655715 985824876 242201514 252609383 82623357 734036393 459637306 298174391 188258122 89133415 177910930 191247073 728670831 566214349 199009267 788710719 309719525 113699811 817491744 211282779 749293036 850206838 40730797 763547126 509759466 955136045 890897207 571544736 404275946 838328297 689531288 296523762 990070511 613345920 418743229 394516067 340634456 73382756 178702049 191000763 280974302 272475900 505451867 936881539 705225472 843626003 707025131 832605225 230262823 863364267 355826827 633586332 723622807 927463332 65114874 102464391 326192385 739469291 792939709 449057907 147118059 970274872 328731658 629152755 25456189 440183663 50640078 400787490 908664010 996973472 521147669 298293922 819827179 716543878 832713310 455896610 914189989 887107070 165702623 458564510 297210347 631468731 818335707 484813818 307270922 844018470 26867906 650589780 396394465 477169085 69718464 694721343 533594974 874108815 994832084 839177518 666299650 226719574 74678979 634085056 720620411 787365335 49390723 761046406 320857993 332806408 259571718 816660573 2483243 43974379 421164642 975554108 876258218 664684180 110790681 715700291 81564785 128435733 190143358 856720817 941203814 879425510 20724910 40189721 515991099 619092529 78357643 363946142 993330383 636609324 891739569 643974205 125634632 870522739 615136068 36856019 258367262 527953865 863091909 27100078 985391514 160564561 755252145 577973395 782069173 968624228 644135473 152319232 554343868 459004431 582223205 460953671 351311966 412491113 498066001 663082924 379724623 393593745 268452786 118129887 604665216 801313921 636938768 782946415 737052066 210822139 425458749 726588173 929270590 464606255 816540905 700821382 923524047 427053994 731853392 734937882 866119251 186491787 939473892 214715713 62609997 967213117 254001670 936988101 359888638 216585111 848603064 790786037 733945336 889086826 208477527 820236480 788057344 523349193 567870338 779289048 527312754 947012773 387187940 571072032 29300068 315238749 555616018 190026912 51633569 797842199 80835816 932069573 50624504 556678075 329668833 111952118 239153876 65622764 230735904 558752994 189229571 342868354 308115515 522052199 544746508 739443178 826817009 505201438 409307543 633887595 952749531 808974070 626003506 177614102 40816067 168966007 121336072 713569938 131023598 908926241 391673015 431394864 589489197 323389879 787127683 915214368 864165641 127143289 143819502 614126166 674796755 525171651 632911798 539743376 148982540 649637802 363610385 422004031 492418324 860241307 288949132 67869874 942138955 551678489 269192197 540039694 827030544 875754203 110923359 612137163 933804776 212666661 256792215 356207749 35177787 476193617 8383603 963773378 388620482 577239096 374943237 353562228 685663146 155516663 228137296 698165644 951769660 382748550 183351675 446499490 524127438 166202258 509144682 404670362 230053996 260772002 179718867 615074061 214693194 406552733 123117023 505677272 419989482 701491371 363919602 494283373 266543222 495043721 350819234 877435332 651788330 885271645 575851054 717027170 830915839 187489539 473676984 298648862 532303446 363872938 844561552 298518401 531947132 36666790 588588333 817585237 372446824 394935461 637505527 41359487 213316880 185964688 35039003 706365401 110202157 67364283 44288703 507844080 782207355 804486953 356969138 116334572 771180098 631594464 953217484 122630331 875634856 542244905 938083472 918147676 519164403 524697497 9643155 405591764 135732780 333546659 551446485 62320213 427567026 852288789 545001256 616915693 956721729 712049631 602080097 173611270 466227877 208018416 232637210 67636939 307619316 747709196 626811216 132552974 449752361 262834433 81420519 567291380 61935665 213935348 911506363 535987825 612426290 965548041 213902465 133415852 749774246 384889142 685149720 754916755 983216797 798441561 960968559 180451168 233526407 387210271 560933608 523354088 506701803 206117558 219564505 829819733 582460841 64080657 543906800 327977388 195896587 768251674 632375873 883577687 122185918 197588240 622310285 843275853 482274699 298147879 425513476 859747012 30662793 485801352 777898063 632796560 778208963 291943193 404844138 471853949 158301704 564899533 903751442 247719786 852760185 189217461 921756283 560728913 633720852 713655728 463273747 985592553 830434858 725622923 545605864 695951129 11900912 566989512 837972195 296716511 389311230 583227307 258387150 981751307 543275084 577577613 368109242 769997824 145244216 768165892 262282516 409200175 600785201 363595512 903012216 48375224 174572494 312441681 15218472 202736232 107280756 8791731 693120694 983939573 338037239 541327903 297443274 860036721 193462842 943338487 699477806 586647729 141793749 107460130 919588299 403274318 178366226 900097569 672644464 522360498 779054406 485696644 423442461 132520754 678004825 871720867 323869635 185998985 30950948 452680166 63054536 117070080 525913029 241085831 54426960 565516883 83117576 134151278 888872545 725622648 772285598 976359382 765316742 999051158 815162238 319721898 676037520 809123312 147768982 845555113 900637124 494800085 802721473 460314520 695060492 186132178 14761837 901678988 566901749 591321027 967957628 358504082 858488044 696698034 278220991 98792034 77664772 394824456 654448142 225799842 710239916 834868971 9102619 466092809 205246797 453350047 102640610 221314056 364804003 865906927 557999344 576249600 113237129 42071527 508164763 620092149 680027757 646037944 978323466 257985073 252646711 651717533 208515120 218185697 743461918 301358418 310763486 766153563 650605222 813625443 953747695 829042851 560110050 918502711 295592216 984825261 276359463 503799258 815765973 901795707 42359326 651206944 673060861 891264023 857266025 448690967 761761257 879621250 576392507 601895948 741124580 103689195 488235299 129477687 118296234 727624170 553226203 652998836 708163856 326240360 445489420 782009483 667234058 605918689 383363177 40353591 742947686 771255152 955116507 850513895 473286223 147251507 144568215 786832485 1041991 246219020 611488127 287594493 581726173 269481985 630664327 275080184 542668179 374454191 1082963 642135301 694523586 520192877 615467203 766934978 8707573 810334586 692950311 499139690 40007449 740780661 227718378 776499328 636933818 427188705 470964509 604293229 319528812 841019586 62613305 620911989 881074510 851739229 923198225 743250177 7343692 911534679 528484836 246694043 862341640 728320801 443731475 720715654 63394469 338966656 223139593 890635960 905740737 915798656 299564960 580236902 139730761 808423229 54041072 575980698 34021201 698769245 934468306 344268521 129207076 167570651 361183925 169526510 329182608 737649510 210553979 824461328 271293085 317379276 114698150 213625521 238484958 363473599 832198423 569136634 562931960 459122277 422671604 308068275 624032163 892204737 351979350 422935200 545753140 307134516 420582438 609548229 810239844 454814195 916857370 179494998 845691989 678880703 701676284 226502028 238549840 49033353 250478659 172677250 680692587 731028018 847846483 869810328 227417360 174322684 471113084 548039136 267876868 933977360 180560247 752769807 571019498 4436361 915237504 31579558 974654599 476353526 93552692 510100514 158401543 423517539 689764316 923266508 516201348 561127050 892634254 39033563 206482416 305305244 706788357 179176227 964174547 253905687 952250057 344369642 353884187 422110185 673829672 16262262 280455165 110506299 503977451 195764217 17545561 848494520 719554539 390714410 355977545 320503756 377594657 39829911 327968711 766264939 991843015 770991191 82016747 234850532 811083142 929484846 745652342 337135001 421413666 109665713 176457068 668805580 757869954 871885427 744625793 52636457 661985628 468697140 160719306 37162741 54850198 673536857 534126297 441333498 250911771 221455475 81517813 231426118 754094254 942312341 281506416 174516260 9564246 413333467 668650593 734512179 189717833 800406143 749042531 891845286 464111870 16910362 889390829 790984912 503841939 399196655 312848950 523977431 47329881 58094869 167833554 384242459 239113119 869146711 813616317 582775666 416019658 856592997 854089979 764077824 636855356 258454853 733251854 627519952 417634791 922859531 298494076 763010500 316720356 600437507 267500981 614683136 889124068 37996968 928952794 850822166 698438214 821088968 145327985 571394722 736942266 673669873 107926218 725782797 525086355 681658408 273475946 497970468 135933812 38359050 69598380 65263748 578854733 590714657 591401275 256345036 528067435 289752192 560106388 582668410 809483159 342055865 48030722 398579916 365080459 11960377 106562269 262195774 177125471 493402510 467730513 559403561 278068297 26674322 740788596 43330338 679436746 732021048 747703505 483331490 385601099 783091809 488520442 974741492 461528746 59147485 986264720 283935636 614776295 909039489 700234734 747637603 486677838 353843223 759392977 605127265 242777592 375285128 803142262 66860782 930159568 304123858 142310222 888221991 817827451 231300357 475097019 236154466 43334299 237809583 97264008 501576929 898120643 613498766 405281109 293913988 253625667 482164021 559614728 9086600 921990039 751391990 393111088 491151568 841314067 200062582 237205104 168387116 23908291 293129174 858787681 388144341 957703421 367373884 860982098 258292970 580347107 893357112 614770725 621978393 598240045 773834127 764415680 370593559 88330106 738825930 192742556 582969936 251012019 895799440 994887129 199797743 324653597 383286622 900838906 899135156 200466156 896211549 861001514 883245067 271844996 225218886 502385678 408596662 788572081 933299491 698986598 935011760 286332523 813519877 886706998 654957271 150042119 386604333 675601955 753127259 118977306 757171870 946176757 638573327 684827972 460809681 291935276 842250183 990254793 39923851 934575867 186085032 68058511 824370451 989401474 574001689 10933913 207652689 982509816 739700926 325410673 767418860 772537709 600212449 556829252 812659944 459001788 975081359 653541389 685317911 602076950 233782571 480706252 457575894 553725758 349016973 880901548 222390202 68611389 158855264 162272438 211654924 113088673 369781263 358843723 352194022 18791081 974843415 566242217 449033261 907602835 777670644 427195631 190198221 148064346 598047516 169195057 581651545 636013396 487212549 244361674 40153844 708791353 228504488 423565720 287105554 303257928 779809140 345785059 160306609 983542624 227020363 261152437 480684533 670491119 420438360 744338926 705224449 905270710 165467029 414988401 468810320 889055759 209432307 906997981 82366118 328763207 363461073 154954498 730486365 894739514 900903037 646587550 633841700 292312959 31637358 907251324 737655824 576241627 214004991 696378403 426603348 642821142 622305282 469342585 973849789 311235679 685647218 84820319 825522930 990374435 144198917 114100167 330987964 780514 340638900 413044875 886818999 67967272 998250620 524964642 638379548 358686029 297182174 364593547 539256723 407850402 612004693 858816524 234224186 23527619 890066474 199122657 841319704 32945765 778687364 292751266 861413235 952719324 210979010 797191549 304410019 502093215 219683708 608927972 551516130 893395826 236280914 44141113 738010583 203225561 71123267 634473739 747324973 836236713 376564418 714900296 643317415 272348919 234586653 770134787 709669113 55978508 460213481 378092476 151187589 661907475 808549046 576998278 156394146 461641061 20293732 68328146 75019730 850696742 593591160 241853084 239266642 764048610 295798282 275324543 957385740 176198073 709053083 224646983 163075599 569976541 389517198 631025542 248258209 744967325 378663671 679719277 642431272 269579990 973869663 333552495 120347195 111732069 57847194 265819006 941777163 87129595 269342655 430466024 786877851 392367694 564971387 992303314 238340172 208606281 354875470 704776769 582160214 976094507 951749821 781329495 998009707 654755015 519052203 423945403 914046000 22897885 782262566 682547841 321059296 73485110 665635336 446610898 526859734 651568494 889653934 420618385 243482809 240661627 638358431 362710984 554009666 114965035 998744816 83090289 188676900 263570984 237314967 431228604 35900452 527798751 983708972 568320255 265714605 5845846 935992141 853094895 264911989 104706272 680890509 440245696 889227549 169075454 17033602 691963423 749154992 308432988 39486284 863703509 205939872 623784255 923317755 762006297 639035891 435294578 982084045 237551351 528201624 282721512 821408596 924773026 677547320 654882077 545053190 510596141 648888869 59996633 640471717 127094529 486735170 434515196 746482445 318435157 821840676 809590778 147812323 400586184 11712447 545585791 330760913 338507336 870268469 686646530 249823880 570623461 470657225 13269021 575443581 558583277 266145346 678292136 460952604 522193985 276270293 188738117 814029664 293615716 366524354 939414885 842236789 986102692 356875245 855347665 864051412 22263045 882920616 569583893 980360568 820464537 987149227 182594661 942778801 14136407 64553316 237912683 501960288 27402459 407487096 674586816 464489108 80934801 258666276 900837129 677142039 815364504 513420956 75313018 790282185 603095185 665455017 672568233 120860977 937520122 338832654 575373611 230279811 793163689 425453764 745235660 352053823 8285333 39593322 849086190 866917205 129728959 204289865 466896475 591210407 25745356 642592195 198477929 643975786 913334930 463108250 33744897 958204291 389709926 667010323 684278586 868865272 714449912 992375830 75731521 29849799 298941180 239834546 411389536 197542722 373323123 953525114 240126967 411022687 877685150 687287080 294467406 401956976 478833252 896018007 764825014 556371342 311055465 604617500 964511447 689084052 685547326 257721814 482495299 593712746 862104959 455107096 565748232 846897408 860151718 739444825 990260139 969682762 635533167 65199225 108611235 713606222 993566039 156060869 980709953 980402058 884624601 192187491 617257752 957065484 835612056 216884651 308809549 812483128 827284070 160134440 213328160 27159393 782172190 697849221 356889967 938831874 414979918 279827501 968428199 195521340 316887765 639552887 705528535 874300472 937339384 224657764 790131612 327629216 807428947 371655124 89011296 483246676 456567638 119770076 633423139 541367735 953868431 509535808 46107777 81200777 300528412 69817102 9214609 104888694 893965315 395470098 357787407 548488393 903409818 479042546 77657271 750599571 442864010 98694250 84010373 215586854 319050433 754097090 786822696 855948297 428149696 775070278 892565711 924691311 317401030 279997708 212154447 976876594 526123790 546345881 466329253 590082275 644812938 81051820 396037029 540050329 149829158 580378423 809771078 682988670 342859154 275404824 334838609 566521227 545998907 210187812 790122562 258403171 50277317 311403983 596060300 606102796 808245631 375437719 458736157 705042025 704319820 471007329 397067927 362690192 717007851 324174294 791539063 431614918 65133986 185007182 468984234 976274942 988072856 995739447 439761074 895142020 86389811 756713477 227977029 787289735 420783942 721586410 831108704 336241457 742143902 358682799 712127555 637219372 76494945 444508233 551530773 830180262 808784726 774238132 708195221 148770362 778248028 333327303 821591117 374581576 663535312 388736791 745699289 455639745 259900942 876872429 389370851 39109742 282548859 237961605 454651110 452499312 261359376 579240356 848481968 975805149 615001200 129424004 574379497 470268951 764489906 194129506 57551702 298295195 845774902 436022381 163706068 300193833 56421437 969872421 766060145 796708817 723814162 171600739 669307334 256262978 566151822 857663114 610551259 78514096 651712196 355142909 835884013 485492981 4663603 391114176 444605302 72123084 842861336 204877764 435023522 208725835 190225796 90158007 597228967 732463898 258473801 622280731 90273690 194328992 349051428 610386756 344525741 122490425 892894923 648593926 973633179 561658566 825103190 621321559 282743965 627225031 798265700 271062846 375967452 229002591 891224542 461209717 740548327 92147099 224942659 673407984 128934537 560239025 184659996 531437462 863663951 514006334 502005846 66967074 204818234 140584479 872980290 488551808 765995482 649999408 690705187 796149807 740381723 905153064 7590905 285805366 396969265 635505980 803673474 880716513 554294665 209899572 891633987 962332888 195651525 433563749 143988500 644081544 152337396 949880113 576282590 311305594 920846180 654295333 755731618 446798349 300051780 738841086 136706256 327593964 958731436 322798077 705724220 761002369 242194256 814818845 142225947 126601049 749202495 716560428 767252375 110551824 955899022 476796064 339166798 956179296 153949222 337535490 50237339 260133775 380592668 774242457 867807762 420983462 373077387 531601266 762059574 840314255 394503929 371836067 538846849 579859233 427659734 999939139 322288308 865606958 683562940 604631509 312839531 759448865 55389956 484831173 498121981 188430821 390934210 770822959 421688237 500183161 117612062 655755088 159982636 848373959 135784871 748791651 632361885 810226095 280301506 773969296 731149953 744629461 343820025 509987048 793379425 712823489 881751327 789311114 827169071 726077656 755143307 936159187 718506527 77932152 488203575 911775702 208374007 824055360 136344483 371690797 1892041 863978491 153364687 290644887 345897401 133239566 152802054 486776629 63911994 752176687 933726563 62796565 634795062 925897044 938396902 900699203 263086981 124809860 918508128 203152328 408386357 18994534 159152862 394948242 48962793 678274829 822681110 447724968 833709680 609579982 493723270 193722139 250723774 228347210 552388718 702964281 619935680 570242004 38733733 167196727 2562981 249618288 336848899 603709409 300626785 526245965 896501210 700870726 794500406 134977364 745730620 752813865 495885376 346720204 578549941 282013957 376961552 652187581 859250128 482134539 316267696 298999086 324835435 940758670 427041392 304349566 607979778 336333393 705401829 547112216 337803135 942813832 483100990 913536177 917653867 997437639 76685624 64614848 248441210 178870627 541829369 723289130 73265676 193674274 490716869 58807991 955772409 978713462 625159947 624399520 581846325 385191889 829023416 64154341 748521863 723105819 825088614 68939284 101029051 636206435 777084317 13526812 223712711 626319473 709096091 725908631 608352885 467610147 888754444 716432304 833796098 783407879 831097818 943617457 358786833 718691852 206016016 999621012 413438648 453745419 642018915 944050167 700632646 608270639 334471495 121641622 143736585 977689433 203592807 494165578 591456665 770711885 254912814 675190860 1218765 695966088 790678827 445143642 417205623 306667629 184915956 351057018 160691337 781815827 51052921 794715208 527506616 86704979 129844313 557898519 479807654 607766714 751843807 726672597 339772956 573397081 367201623 259669712 614576723 421739783 994941054 392454223 308664288 520111163 771314564 691764055 857089657 743388322 260634302 135709269 7361271 416399476 263182133 354116840 367773801 684485801 546321954 910331612 521709002 5855125 616163837 897780614 188977925 477386545 705176077 111803889 82438287 814948642 724270095 663742907 498570622 945745131 151220297 164203601 825663448 858847585 726138746 489490967 83960441 849639112 287132366 634346598 681698141 11911940 725902654 677030805 167893619 609197515 615558953 322838066 217234827 385664304 199630746 310865134 427710983 616971466 201286462 665207810 232685472 600871792 883871569 278809216 486463471 74523191 303776566 274730489 360190807 168055512 734687961 252411311 755199596 742020054 138443404 708637728 902487563 113233406 120117193 147413008 5569205 591213170 455159697 736258772 494560983 711833688 159282412 467655883 821380959 420386657 234244943 576531604 277209914 259437405 844737917 148811656 539725769 557667397 559052093 66670385 789543708 638371742 15185474 295900290 360576960 548495532 758401068 523749549 896960603 988548881 11758151 575040164 80283965 445641418 718381214 942240549 156746032 793195931 383409526 126035448 558612580 526211104 253936294 235856472 160194114 781812625 138457798 490398537 113029609 515722529 820014034 281283980 540182803 909479302 206961974 578269658 189732402 475240439 402129529 766269526 844682174 410015788 908655827 199657988 449162977 244525930 998803915 379081740 828039735 407896144 138846654 922661625 157907672 78864423 515123735 697403635 628229389 437153454 767497324 772366988 817154544 856077952 551148448 220577727 117704640 603834487 684631690 661890920 480174747 537602781 975932356 501769933 936631706 975700120 97722941 170356295 330740241 360611307 560376763 258254130 769699763 366463789 906722488 342531259 251254638 383852050 897163150 114633797 816954218 820440108 795764474 731672317 950260259 618015829 418985338 789016135 946031292 613074399 6280752 714026904 608973975 982575178 726152175 256927942 675375594 958107623 254700480 477825827 374332161 897510720 352999438 501335301 957487698 200429817 102333586 826220434 511996777 424943893 223123615 470546448 228670511 470475655 682915667 553424123 583211694 819962349 418733168 306817137 764000977 914001959 249308331 350393856 407060335 361102686 190731451 976564588 298837735 400748578 543190576 928334808 93864164 418723573 302217041 541576824 604746201 981491355 131115848 581258842 440300458 523579523 239665004 188687840 7710562 652349717 169502580 412872085 425487879 427913332 888245777 764575695 210729023 631919378 40688674 674865365 126718384 148951242 894834470 710290954 113638612 892327358 62621130 620404618 730694284 910754320 452606032 901219006 900282471 409102297 881098042 286806582 552987426 715151488 65397624 734001492 935146562 597304144 114466339 468904269 410732693 400497519 987234702 597778879 787827793 700080219 690115402 541641692 957350076 576771147 6218376 746737794 464335682 827363771 258905740 540160311 673552150 325084861 830763616 965541515 727708061 6061476 308263371 606925115 127312182 159719474 535848608 301809444 335395149 494952081 177277787 135940249 22813779 841771605 441956117 833708150 360016700 360766741 614041657 397348613 52077274 331546318 843390480 879410884 231164466 665490617 456426888 679732380 672390490 601093450 922699839 810320019 875714856 983118247 133159634 806452944 635586111 819269491 135948096 569060681 105279659 273198792 287265342 840359082 236214292 781228279 726208301 39371554 347959875 908610497 596136521 267321778 346377204 554046832 538663882 626896810 835667355 59953173 456816934 78342296 553196712 98842476 928269450 209531361 977342440 977847979 675260620 960026701 176637750 477468560 875955495 617893596 761094093 413893031 366311254 42094378 177773424 185422747 756004401 439577039 891115631 892225421 708804875 229508576 154320234 496421655 87549207 941755144 675124052 796775134 237193589 386239893 666354418 938952415 800885597 306487874 346888707 474266619 661390040 244594715 192342528 752152476 383085731 532198609 779400562 530674325 92302666 921859383 542255638 688912872 688080050 801772561 880019684 650493901 721028421 200468740 524970314 208201293 874974389 290125600 181167985 650241626 300409769 379923404 969224159 970502588 581833694 89392334 938661710 723086939 294362461 535938814 389865154 982251792 946944172 780741602 846036086 571106114 442591823 52925074 5320568 233179727 44630252 45189648 603550132 415562613 727780564 2607699 478305932 123481081 379305125 105696714 464561936 4760638 916541135 390470422 93799852 593929935 68140338 312019525 771952343 990797418 959393242 578120697 326660545 93106528 612317601 515296296 155925034 568103535 212287180 582617384 232921341 416062906 802320845 974732364 57466274 925579336 453960335 328323695 665665232 936968473 435644460 796615635 530434874 37567142 162353640 557708431 374155035 214759736 157049851 505984603 887820470 362633742 715963797 636809544 679715583 305865607 648402579 968578679 694775925 668589867 981614291 51374184 874121356 249918375 833984837 895857755 701032005 804349859 619876025 62712195 690127455 563545270 146167367 82261013 21188551 206303714 790726399 340341789 894993358 969388107 712091995 555562395 319562489 705444684 382637014 893833173 718513695 601796328 15606378 656348382 133867980 494733595 564385776 147359704 582180543 69371175 632366760 534926796 812584352 275946727 653634664 44184205 27681745 309179348 949905385 544984668 382239549 929255991 19734666 998943227 501830411 696495431 35591966 729680711 262732206 842139409 369020613 117487109 463870778 495384874 206883287 27987899 967143160 50542838 847744508 325907456 662099675 470389338 966645379 740156150 992780174 509623209 823138289 479536473 356451528 370048486 869549780 911548265 686519087 231059791 945765208 360408312 215238553 697711882 994923382 839799828 348066987 646157347 827684857 434226680 496169006 536097229 84312898 156129623 359917356 705999628 412989599 956389352 107084211 343831816 143411822 369579089 25460919 277375023 477450126 995874978 910006282 625018260 321241409 299996468 155827411 190435570 777743553 8114392 838572225 987012475 82708970 628061993 485475093 662287574 436988980 539435444 692479954 481016456 96393622 13461240 906631755 264427586 476450592 55583539 521101627 317601547 474252611 709983665 37834573 755701399 732856975 432956474 669534775 993202152 321894166 950047514 379271321 765122819 205793984 855867699 617249819 217520436 516347616 373037481 122573512 17350874 460735531 162835905 834194267 593246318 672797055 476169768 711472769 100997638 497195481 238878866 246931877 24321704 550716495 646042805 181208382 209421584 934050893 487340501 32598959 561977870 977526280 598114579 532968679 244495467 108668370 659127589 763681005 979945585 498867489 659827311 186101946 439156454 190020485 208829402 13505717 703801205 826242010 166901010 934851572 444725615 83697820 817499809 430712304 665691303 356679624 764326664 688452041 325028981 151488460 87058441 424738381 523192441 342857353 201445801 989552107 653503343 11478764 743261438 25438068 837019032 449372167 548095933 615624371 174246202 960151873 630563440 426711302 641552334 676556402 548651809 68980071 124946728 94701194 329461414 59299511 440451922 106823648 204647149 771092042 557361666 188441941 540703432 296601380 180112405 346952081 119955206 520469818 436874303 179426794 245715398 59618813 975434787 758564157 516200133 208203969 460146269 426082461 212321531 984648764 323098489 459451886 976170560 989740540 422159964 865605668 229885152 292053849 525095893 137776964 217902813 647142599 994328096 497192964 752432079 396097754 331083712 608104074 507091770 251359652 686185484 604600383 972017196 129176122 447891268 612970192 624889272 959782549 466589585 430305542 95281503 506682235 4230015 562460686 67644394 741690438 510033718 625471078 64843198 182202661 823314598 183584274 201754215 572045768 60010884 278889542 185633161 600911226 104809926 277120988 759624824 844660207 674795941 775477855 810687401 8061411 223643278 960415397 577973 837933552 2651485 289232029 632148385 966474232 137296998 862271328 217541275 321345551 113255635 426147795 904398823 746219545 807895438 739913974 865142433 417178027 80355961 741427929 549293800 680641415 486419540 713715849 474246160 988646361 130599921 395924200 603355940 392435761 784389850 482880065 794544082 332272041 882625646 698538808 684873889 247375473 101113289 251513312 393154189 703134645 986653894 796193690 931064322 198756974 195265582 164987460 19471865 108568551 429595581 229184680 705579810 295726139 381436417 349533257 121082887 30839116 150813212 73708239 716308351 623833676 331990603 828397751 104029041 679524558 169584363 323726293 414211529 31871847 680739125 928921860 891277277 259449741 233440393 978707441 412197500 123811184 798407516 137251943 336969785 124889588 960176543 166585806 121094374 190858685 764434289 339292491 710215846 842647496 451131927 890107830 3114366 158874525 173584633 448732630 526722180 456622950 333542462 490133479 543046282 968902621 854607499 502397674 593095804 460183234 694653243 493436077 387353011 690218892 894393761 773334291 69488352 19787697 909261196 378007064 879596216 549172584 951933474 818001240 768465092 270503611 53092776 878349904 458434452 489420567 687145965 808482047 465411421 960424289 266664363 409536246 305386654 512266862 677076051 141204750 170443609 999003074 465905659 618615185 467958044 16250827 564517009 598540533 783345341 191617704 916808376 319369336 54642499 216186991 327419315 367903163 961879286 486252369 828615685 89209198 65299582 112694487 24779231 623374766 47235100 890236368 511379603 16797835 207163283 679674838 587077856 55265450 975985207 170605968 409607435 323512487 369015242 744047185 436886829 529560328 39822080 160624281 230921206 744716439 112347934 160944641 430933651 70125997 285165319 997646304 174604854 741780744 368046676 91259239 603204682 124926992 377265791 558729615 700225262 866488480 902445574 723786872 247913474 138986213 36944728 582679281 258968120 649175827 498135679 733056747 873094440 118950146 481839861 860490779 44363292 723165982 81024611 700003237 15416279 797866529 322263209 578093429 222260755 313001728 472950850 828658603 126495154 907294486 540462963 910758572 269488548 642766664 78602754 427673258 128290970 785569840 202083881 665654268 534435456 952725741 469066584 378016469 916255766 613477165 654904750 887657001 658346303 573880577 139243011 450812722 547231737 292903583 646659934 5265074 468079986 405840524 393565312 28575910 375589482 553397079 774068192 906180977 217839670 340542620 515266496 687047394 767332617 438121638 405407025 691659194 602476593 127715961 889953646 196711371 711302433 16065443 876312607 18708336 666597408 509649895 506315571 324500543 303054757 743016307 996768050 761614786 721723598 652550234 989565316 120980162 621287472 360663184 184064814 750966884 331160235 878022354 142568935 492036678 882730413 348242370 115509689 596863407 188886416 463636395 759335805 417375016 876098677 772996389 128290960 767086447 325191109 646531549 247999783 165515943 775298271 348747420 432171728 99040717 718574121 809663015 357589609 397103832 885694634 228565879 458188969 761578550 805479120 684393554 522972107 87164072 296313036 699981574 396313773 358849556 846327410 996604795 586901509 122261705 132403321 500064986 284217024 663158833 943918207 463827923 73892388 561906668 437896543 194336610 823245186 371048361 15278732 896811198 836729270 817974949 757377812 9891704 989884976 383425177 495788915 195273221 564697431 171105851 108315636 797218268 139072593 434040693 489699826 627900776 898008024 334513412 842482627 574857441 72704738 533542864 698722093 72906849 902795694 411144706 390117707 645734429 23994022 20133550 190113012 858938098 774444180 926728238 472729925 120166023 857528900 88907464 258821567 702359895 324975099 185049566 687791964 648434396 357240011 847929094 999704960 69678437 683838202 494622342 536093507 515344059 365617977 896555105 89745562 265444090 614965022 165891813 435216716 156291394 506185679 15776675 908775452 232986078 701878380 525684447 599850806 285789199 555672901 171847442 255483809 61836551 819374635 814844333 586832767 9734708 564884494 239875074 446585441 76521868 633453734 927275684 93446263 787976985 8105931 804694969 31716188 111419808 472876236 826835061 33402452 343738456 428879131 80207633 908287609 304575791 832507837 159794407 258460600 353289970 983212301 62572476 101340335 152503461 976388475 661026786 279300159 900060725 829607236 629436879 925539733 329473502 930226862 903145968 859308958 834010531 840495648 218690342 974178121 894877074 831215607 337339198 218767842 460083555 111564991 378928508 323659344 318686242 571767187 81507414 25865444 781292200 259683352 236737435 398598124 26020016 92575283 771252079 61448199 378795822 931856752 818595054 171634723 472703721 352607343 808483352 754105976 365163451 160340490 959768964 758475805 933576785 471991823 843131335 329220548 535947351 729400104 99141227 537346803 816558388 962410660 34260204 703391750 101272545 762843694 268271158 385953343 425200922 663951024 174688648 267555600 534435544 442649480 387601436 989608984 229077886 86220836 946156644 662912943 999955165 626690482 552975479 120750561 486746033 46940621 776511864 148650710 362977057 827519634 385115167 296046696 377850327 369615777 904336318 805462659 948407887 676383666 172277992 946092527 440187371 469519713 586985001 775079441 932793085 138899693 634077779 270123243 612917876 457792371 397320285 748568406 578215478 213432502 248165645 506582809 756450008 770716857 173685631 626583729 121175105 408193344 448623621 513017622 510236348 928118393 507143024 159933343 836384821 282735692 305029563 347451337 979858157 409373781 151437454 48498773 925105018 976294270 660920758 431712089 956659518 310803230 491648033 7492515 559948036 280005630 633580841 541630111 315260633 2565118 690282459 357971234 431825480 809741700 243982752 514495816 486500143 140531194 988855711 663758094 298626929 741657950 794364407 970764217 782102682 945865948 228555505 221559987 72869236 77387019 36611440 638670559 213632376 644258707 225026071 621900047 168270413 525519004 948187707 708361709 496389576 955394282 823956159 108758742 308803446 226186571 268022354 728490654 246348552 916527725 112000480 768524449 654896867 981136893 924823457 243928028 293156124 226516242 966747168 46250839 795889386 118356555 847217608 619974298 288234340 529527702 854480608 88555503 980938609 29146430 275980577 293506747 952667787 431859975 546071837 28104207 334413401 338701563 643975981 826201914 147839281 584054965 842730191 304243792 186660379 349594940 336308575 107693694 304351230 307109075 829236432 531478877 187760185 915407004 818160285 462001454 810117921 186302590 855531226 517965846 298216220 391108940 554000314 285279505 664741107 249822628 700332592 860976401 69092999 436972488 864703167 922175174 738821467 206342257 250924686 686695406 937623048 70464178 882617526 385494161 737393371 609032103 420077716 437909330 619427497 808590751 364685000 972268881 705782243 480599189 816360709 43336714 865765813 952917361 406551334 643032245 405374242 686686898 282920595 594704856 917072477 140488755 352572080 788632800 538951082 166946984 284531849 970653873 351547558 981009571 379541888 4982767 799442346 952345308 883488006 976881167 299059412 904102755 318690101 130021764 63103926 489333451 335666172 486090169 655563546 628901705 689382337 444661594 627132955 976384481 709474154 985764051 588576684 533621747 299990127 329046072 620308044 794521255 488186353 464745885 873762599 936033076 504500153 769346992 700993525 877874329 414918623 927155781 353547068 271160643 16324151 370917898 159511698 181580445 409094934 364327314 757977115 90457352 377376841 316331563 93186530 635808213 578754091 643142991 216273323 585626205 809050335 357823920 224914411 77122696 606455347 600231267 879752579 593741103 771596176 88395475 184630685 231063260 108934587 860989010 225344059 27517752 441830355 343029375 353317259 889469370 548736772 279019968 911688082 746246225 52137418 679250407 985895281 720451354 831252598 657635283 365861787 743896016 310732287 484300184 382428770 626570693 379911314 404785325 927130120 360078130 835973856 300825381 722829495 85270298 847959846 435129988 363586574 150138274 888200540 93302770 865186287 384378563 315643267 694913647 721257390 224879175 546823444 607454641 813550985 297946282 72352612 274991076 480016643 963587007 443719783 823260417 109430891 826897757 753182473 869380663 316348718 523678374 11562132 241695032 590081044 194423717 321874514 702494184 642748175 969994204 260206591 111231819 181769417 379935643 628851906 513026489 432352412 583074216 666892077 144665780 924166073 467907319 171443205 82485297 730451414 354915537 547175954 681552179 807006358 924511333 510585143 278128671 511747798 636290928 106077146 59710590 285862829 443416703 157052475 356901747 313764312 785919330 773400044 930011875 715742528 796006698 779518690 444584395 952739920 593717180 650920355 202452333 844143810 774752198 803325185 223389580 988476235 172497917 526071812 809976741 46900917 784931427 321725255 245132799 105673173 324977289 257876398 156533756 985784649 292011860 122815250 431486142 237890291 349810394 39278211 51912896 632760917 369262183 950029834 781537359 228617445 682431154 821750619 433785692 650297136 436966003 28103777 57640873 540754260 404595573 627555820 523634949 311832505 866750431 679811827 403890446 947613684 770252302 555178499 143932086 598493420 281339036 279731868 890947618 92191787 605061934 551707514 141930298 624385776 698500031 556677409 279724950 536664671 649650692 87119205 364882523 1364003 930621944 226272705 329223153 244909333 601028626 641320883 929017354 949784152 229603615 218540178 496569167 145502611 593850279 412652697 982295648 391058533 700549108 34361756 21816649 657775668 494358044 873272474 376693768 779585643 73490081 996536564 870341138 371034699 19118267 640902354 11955493 711782536 88746825 13255923 361966379 396983602 92676231 284194721 232219497 840295917 498599763 817122281 915346810 652632693 927100940 618753116 633112020 603855271 574259175 10090960 737269632 409061870 964823352 869381337 360627122 265180757 674000128 116443028 545426065 505866342 679737236 274705343 142992426 108477386 968669010 587531382 444425455 40895610 325422982 514027068 587033036 47028749 881001811 372608886 912510364 402107121 205767199 58855718 264069465 119565373 14160161 213905789 247553322 128353888 439278295 984481913 444997748 397891380 344977320 583447812 760553065 27006517 579560912 664982843 347801937 381289878 731099666 572889105 308778218 331260287 646319407 741325204 224717467 457541407 831016198 937885458 735366416 110079038 816490249 621791543 809534885 162683517 290680574 263952344 282126430 883028115 148977784 349518943 100297984 100455015 607789504 566444914 160588540 802118407 319717160 630515239 720844189 435959550 514870422 342157605 213152373 465568933 869952488 481262609 232200644 111936334 89007132 177222719 792846727 917820910 897217951 62653391 667672701 954852955 154403235 3320159 825587820 287480269 934305030 796502044 670779199 834847346 855317572 672987707 918704146 447804094 222094232 767662715 370363154 81116780 583791367 607713633 748939290 14934974 574754604 17540147 225603637 905360148 275816865 155418916 83693848 149512261 505621682 827707165 955198153 242568230 728007744 307854211 161043600 991803506 590337924 94966167 290697097 484614993 981223920 602899988 757788718 75927563 491763206 748097534 589775758 734383920 970231650 269458970 641998087 778514657 748931045 829377095 484239280 221353758 171026348 385226314 962268968 591334303 785987983 628696963 732998795 528249312 696971322 418678081 135316019 776705388 688389627 949630903 966275473 590050285 835122966 490206454 509908347 424165806 609606113 261224685 866826853 27599447 224094988 975764361 431367989 123622322 98570330 508435116 594278326 213757636 62026750 224032135 400595057 900406533 228500465 94716959 374578047 68956396 424896515 605129096 285987705 74547663 73031288 398640694 346807104 446226382 204148939 263226193 559736666 595071234 616686993 548666420 397284960 124475742 442640839 150115636 531500772 803341480 286454551 79906373 107813432 132008350 834861720 475370260 910449952 155993731 337596030 596668306 599493492 45878860 134824437 272730168 713869050 98038524 646232196 377459295 881006886 90056549 951606943 724160753 793227914 135296441 507246479 814378412 127286390 300449572 815201175 859762936 36106190 452495876 175611301 111263378 521905488 726624268 56144990 801601198 584773246 486988706 490267221 256695769 29159132 418158416 9845158 103885872 637249985 23886964 105823413 853238092 926553959 883061458 393292299 33282285 168723964 333200529 433682259 782951275 468667344 359719619 30755516 548024779 104932808 113143129 60927975 844536650 118077700 918357434 741968535 668611327 6083807 80310846 529118657 429344704 683722412 483593782 520665998 129605319 580969011 32264566 314881906 391998295 64932438 716029879 451915749 896366650 627463061 46535748 599805315 638264253 484294032 723516766 340734823 220443780 579852200 564583218 737495331 446640643 64167862 61519001 539003724 548931834 268797079 982654199 101823571 5848785 915218975 184904062 720905001 666891288 7492495 741672686 861250378 338496628 266421624 889459997 712160961 67745517 545386903 222886089 149291937 410528093 190539553 8946227 859219952 171331021 70632038 49654727 604690964 920904897 201705620 906582442 403253695 103562635 693576697 50438229 981265510 407148550 811339235 339250913 794702321 977511998 936769153 511007756 201975376 329807092 365688468 428489883 527017232 817836054 737840371 190129576 525130644 825467965 877343457 691138614 282070915 196151999 689879586 137849780 442310486 8680526 412529361 776361303 995118965 588818345 907296812 255206345 349028205 565441866 373514092 695554787 978322797 616335718 214278206 362254069 648191294 385838562 220821156 791359926 979267577 403734886 632120597 289577138 884877999 272796127 684743562 721993964 425285222 937900209 121830140 292664581 305446775 757481025 817133454 611931785 839065141 438674022 704858763 731207681 693145123 556893085 681069781 404040521 356970891 876669583 924470571 528163506 394229482 612687329 77165750 522566683 858545396 535248525 904322357 826089297 297730139 921710508 749599540 502739925 913317618 59357792 429138866 648740664 866706124 192770693 383477052 197759314 643246591 290213413 267974978 970998089 889862817 809911923 111518002 575504936 402297272 607054387 738442409 256030175 877233304 398343117 41121648 416967737 524335678 363714409 485670255 238531936 529551074 886443445 226427300 254549125 67351479 650428792 115590209 237881888 941514774 739057513 677219619 818456019 770916362 201884504 207759648 381514866 435760330 397859990 432991586 473527791 881354419 752566475 712657070 788287021 360026735 334924848 249688004 94455574 335763403 211706439 21695122 925858977 562979924 844284534 601049499 303721817 48973439 970322634 771981794 566472700 914055276 228512141 706128143 364677455 107989367 613655873 931598834 822689035 845314628 111488160 22000843 597122351 400417263 645916236 636342187 752237616 655213766 711573530 989437667 262260172 556218855 435395381 708445061 713604711 154733470 120833473 578905107 828576186 410098646 559033257 161054566 325198521 526390002 111175932 759398481 659567824 606890990 203468565 21316414 429957547 341410940 782577246 598892856 622548605 195852845 851195170 169724580 354918132 396809042 309856476 286506304 696553868 288902473 321905044 732004039 498493940 829358468 823945221 282212770 168522770 946239484 952086071 366190972 65603289 12256713 355622761 700624874 174241773 326731805 313458258 456302073 856349255 391165571 642565083 488509336 685550774 328331207 784543081 271569967 297876585 599313975 699605214 173971470 326162418 579135419 581942740 961499995 43105671 271180223 489413824 327002052 376285032 938001432 809725642 576924974 279116361 354949267 724754426 739946509 669334007 313532318 789977931 913905259 221867079 230439904 447826399 931373497 49078296 723401085 780259403 331264388 844381473 39498063 773685663 713775569 413971535 42450652 829575978 724243295 52701243 672988845 508988374 481894096 31338678 997642556 675821858 59693530 443786271 758902450 348948152 152181280 331334559 519484004 846376409 621500540 100112185 583980706 156397006 650724584 16701615 71991734 118160670 383332951 72055892 978782350 860712426 299631113 446471924 536884891 850758299 441856026 987220757 637562988 834893095 722216155 830142038 150257570 693908833 964304904 895059774 833013665 206555690 319701074 631748705 852431569 237917376 196628169 221332757 59058230 605212301 877571124 621627372 266601888 356661224 779953511 245344086 298039357 979744135 172050703 515830277 373387870 564553683 450338429 21734626 192725349 565203610 655116778 219278217 563818071 531047597 957283815 114729487 291177518 535856442 438459768 841953520 888330871 464819809 283194236 169467382 148439141 989288771 649911971 631417527 355434 644197356 680993539 898249199 466494517 812570305 303626857 23439611 646230057 560722648 3179818 681572980 581683423 505449973 922514778 925969394 172784665 368984884 392268126 627303955 516477133 240203667 149927848 267931720 455935266 652583645 357266872 476356156 808327716 961334544 604622302 202804324 373502550 706078057 909073853 755459304 536079306 549562428 716903113 448990160 370073590 913964276 26998522 238475425 726108074 747263241 32276878 398368380 544468893 816325397 764633234 818259323 900992462 59738016 37836633 266749850 970894740 457776890 918856087 642703113 203431774 784286903 910200549 282826910 131398228 731392449 271949647 225916193 864772590 240589328 287509206 852220302 242756935 17586200 241878292 409298558 141580981 723232553 746175137 255380769 547528737 440868556 568097409 387626455 264350589 651440610 209312395 563117283 399554634 61286241 98742892 686124813 437409712 836900876 692539183 208014485 935313280 104490904 128235710 997253745 734036125 264728966 546148327 435603325 693584536 549023337 525384736 270343024 320367477 528539588 543430731 338582175 504158490 422024968 205228480 830743909 978144047 33921905 486997691 330245524 564498841 628659897 87537180 15116322 809638558 101707842 852398552 867652410 177088006 352174348 833120475 528896922 240816996 343168830 917633091 448273716 569594339 640567165 457217773 513117469 871430998 757695721 168027763 325116689 950047998 434758459 650727079 130220613 179091181 421032877 93952414 946681809 496545336 543917159 942235207 770005272 10502775 502713287 708462295 807216496 976597200 906515227 759682546 553143795 768604009 870592177 146846300 959979027 649183424 453303721 817104860 715383718 836606106 383668250 716838076 442640383 837480528 528665066 845034442 468916943 232979325 680056112 490882004 582121855 20030501 785987398 848346065 99783359 195060396 8443922 508394289 867273994 957303495 486509424 316866186 887215493 268746221 59739543 604445608 893003767 924873668 755396787 305012126 187067102 748608203 148803138 309439927 433797346 86987221 789502135 224595391 701690597 516066657 80999995 83984884 972929901 526332169 619127578 495930911 589287733 416676774 499749960 696223312 359514310 332462536 315166652 47410476 716556492 202444120 895280893 360575978 92518910 665255573 78383892 325239216 993605597 945812737 354358797 417425598 915043140 538514628 590026857 306030499 422869710 813015259 467564130 727888406 45615818 890573717 591397041 184638816 74161259 242573058 237610912 687522578 899251698 208962703 268552234 151999587 739772091 682853300 409549918 274814761 750974045 771446286 880873884 610216381 563926422 883049473 20893459 496093524 591200069 170346903 664335517 638495421 314837336 364011061 344872270 360660790 447099521 258283988 265779304 591684041 532998126 2124111 732958847 479606857 78336037 697942060 509030974 850966911 681077563 916860223 994822074 693704407 542456959 954675301 956564580 80945456 388960379 60835422 13008089 410813676 148527106 896542933 920044991 860071240 933409276 960665112 21502307 573989904 7686122 100896139 757740541 842306674 948104733 765022095 414778617 769843122 212308706 902255372 747203728 448940217 996354935 849139740 215745755 420926129 231848787 167911435 613045987 381473076 35359039 469672852 352391246 46605190 889465916 77501270 861421017 309213956 331992379 176032753 795267316 262532124 666855230 546800203 777391326 78147723 783699995 687111008 672912487 266273323 727841345 834762816 491360315 859561322 418003886 286730748 358869504 540678333 560282031 304917448 573801906 988026780 31815717 84748624 53617831 208684280 86717568 256615547 665141038 221939069 542167193 655027336 550347454 844935323 349349124 78429688 72027819 632348589 630515520 44428122 286845811 836598738 574563040 111834232 26881849 438592199 908847553 441775301 540628981 611337761 803743778 936326170 838440911 221664664 427395254 179885862 842137213 7795286 430454856 306335881 265979101 425324 625365677 379132858 601833627 711567555 210632952 795096276 445856120 238417550 601937380 425985451 534310968 147227439 818014259 813891133 685735193 645116549 785767203 983605653 335052186 986101955 508165767 23215590 553117450 430258036 378205137 83009923 578247643 917742173 75371986 435642168 45879419 342773907 674829216 731098367 703080276 139573951 771450772 11309385 956657670 22888039 937861432 772544208 186072728 105766445 810286857 665144091 602822111 788962605 474284851 257359738 693754778 144320821 931813394 875243213 761845228 957323181 504476208 623198103 433769704 781312003 61723341 400284145 696966520 883610336 628893627 907734048 663621132 279897532 42515505 510563378 350965991 944294085 106437087 159222122 605193224 314422713 706279872 763662359 852389094 960765919 717539905 535150575 588068751 46981352 682918963 444380065 56580648 975129349 118101689 373880622 758579104 957893519 856632674 738078698 444060006 41684976 497462874 46235219 928059504 6101757 884791393 510400561 907502830 930630405 734220848 108242062 743173080 806148741 297876781 953183239 843059680 729948684 680320464 416279753 308333216 730716246 295595187 590613232 903961695 686737834 408807446 50600014 655904643 737349307 767159941 982505742 514286961 182656693 260740005 796710799 18796646 987297850 224802287 281149428 389736349 185122185 37369940 298283898 340554364 619986594 943512399 279301709 715082743 611039470 349176736 93336007 677516242 903198187 663948659 839305435 27342624 677132521 196004332 288257647 556771668 432194969 435568522 685340695 398284153 583500091 463130295 59839184 704726095 43791433 327493027 926875151 668968092 367523651 606082468 803758488 839568848 466492732 981662450 721904866 411027581 229346199 928049855 167108970 445241333 387733125 33396445 629501380 298710722 84879217 996480768 50499345 61646196 722933566 670929468 341494772 791694356 337691517 823757693 20596191 438691672 519436757 527853339 68394949 80481678 240715161 669938456 764606890 239553830 228761281 543445075 380198422 892807311 75298948 320154552 56669981 315426644 127417121 564511649 239230158 72446466 489255921 266567561 452196689 490727647 474802505 875243286 26198861 454969424 989560014 5399510 167128395 238293358 542846740 957555529 312356131 699223056 668379887 521201533 234703209 35232643 438264374 674096323 55414243 940346332 837656618 886285905 705935984 615925669 965623134 356781092 639332682 93954577 469346266 132640643 134385882 693255680 429822937 454823458 204477035 883567213 712827596 256192115 580395816 333068024 53698300 757575578 340376178 619688827 439229148 529185450 852150911 230143387 315989206 684854199 489979807 215027928 18036439 883689896 97744209 114594251 348988596 828792792 689933632 837333908 240095828 1549919 877317901 769451842 876982345 130260162 275657999 650102254 872695291 650492050 311129917 491066942 82362266 880764915 372093982 348344724 454780672 907126271 47853954 653759047 603406512 160394976 732674068 733453481 870276001 987952915 456844225 732093774 906076270 112126344 391768602 544393618 908335895 784513337 54241895 76649244 105284776 848152864 292661499 41082998 566645946 874521227 831617417 647171249 904441912 947542424 539977789 301683800 36409034 942374407 262440630 473247568 725999714 858201976 478120895 200368874 737568176 290368959 196641415 659680476 305873194 181137445 51151067 266113422 709656169 173047663 716549258 102470118 127781209 900804310 748096023 240907355 453837902 823046709 820194826 270471166 846956243 69836349 418939245 709876778 650548422 126036087 613384502 207959642 810067709 761562160 704546507 153076734 638255357 900510346 63604565 756226147 728908607 905907681 267316142 718912792 956394957 248715889 543343771 791977653 336999971 760490645 319877461 737575969 252263780 668306227 300017797 391845428 132720735 906793741 574656981 655960299 736019474 530506913 184116155 114264314 799607403 241023797 949973363 103677931 485514482 716194493 766927778 620732421 378490783 60142682 510473913 135081479 300599056 537389842 434961988 113917765 478735875 950782652 738509744 400878632 458971541 819011457 224472120 286446980 441454120 640771975 178002697 57831976 178123204 885375420 849932836 552591627 54759506 581194434 934484103 838591570 811322861 315493540 861729473 845496298 578249589 463309091 401345501 828434511 971723965 465977958 155764232 167251724 350381910 151289126 143277070 379718073 952190981 629906431 218171385 457251417 921580120 794955597 375804503 122918727 952818842 185958197 112911573 161189706 113228262 341665364 809273216 801911099 590662288 165700268 587220174 474802135 669283726 481019895 382545263 971634823 465977033 37744833 470863492 85209280 15550140 453033270 29256105 481129459 919892078 20842965 719773995 189937083 225044661 861243463 918551296 351242717 647607009 61801957 299835131 292972169 111600081 900841972 401067832 843157533 296504891 430815544 878495965 286437851 261561642 289326989 996806595 820412742 876118565 327105212 51026956 722646527 423815063 356523593 968411330 795639073 698367731 267065098 296276136 686101228 750503445 266772804 714574884 275296956 595224493 872129554 986577834 946445875 447001777 508340672 198402922 448799190 800710205 1511117 998817784 462601514 894640141 768835241 189987512 474295715 404565157 998031810 244600929 775637181 256793210 438366873 423499963 806576827 79632822 400273327 957919873 832438281 782044189 985842811 191512978 333323286 343100027 283494318 132097244 476643039 324890042 44990077 789785164 755056332 368824119 328505915 757561107 432343659 748030020 181734201 12174626 605500232 23976390 24496538 289603416 463818871 514228377 992966787 542781925 933893157 441015183 778565439 162432646 528793933 936416735 981443093 614775071 598998649 710863296 937541036 974603488 283717027 197942494 763424731 9282941 81104713 436123346 887082757 851341608 409845601 979260708 600000878 603976998 346542147 646492624 246960 309995553 482668313 602085316 302217008 959542749 974735868 240479233 896620042 890169921 130187367 819360589 14374762 515540940 516863252 976135318 687013971 677290556 83615410 583650900 810137257 34907271 323108869 897795684 899098665 454981815 367222953 764097600 837397468 445854912 639452726 562230371 996259758 421858872 334729725 562677431 267464302 727759386 590507596 85654089 458571101 550499349 75675984 148008507 478153151 201819696 667257375 683545446 2476971 400326663 945925899 139942116 783499817 147920354 441246504 49636591 679908222 276656412 208215195 681858237 178263907 923401728 984148236 292344068 447631530 157762856 627170525 147871381 861671773 703481993 300015439 857240108 217675139 115852361 92255814 663243668 118999686 89901960 30734595 317803366 898243802 917935119 630540025 252832384 237751477 372784774 561809930 334362233 52886382 826999529 60653460 484539749 602067349 170367233 994749726 44555166 194819351 57841077 558821688 755217562 303177327 74527067 938283141 926249622 945562830 288954766 379178519 785287341 467142591 118994242 952069714 461112667 698586466 228570775 216362349 372451856 417578280 285173862 354090056 997576732 119105325 781781698 910439917 255281166 967406464 15704340 203098612 19867334 806253961 717395159 803872662 63021981 336687731 667347551 53574258 722218609 924152280 36775560 761334973 480125423 581221713 336043834 842048512 674268662 337291464 130060400 305777145 721086270 684138340 346515336 642324861 712798222 29672764 19326320 958215167 299674396 272929641 219696170 58248775 973430465 99732501 419820997 158006961 660665661 670483076 65304234 88372452 513971968 923043207 433249832 426456092 393436240 581800369 558445290 232606309 979782620 245125606 10717371 804200870 776938132 814947658 480580028 133240955 567337036 483901212 995940728 80909886 936220002 376111003 354194493 80883880 196960752 838222244 764831618 230458781 581003061 889152011 614402653 767141190 749756379 517970903 389510254 888375419 855206226 171776706 206842918 899046107 492212932 862864802 252774713 536526448 49748638 279732968 34560921 571184434 858089545 733792257 362649871 915063942 627859471 926931066 318279588 464945817 102205715 884164437 671099942 723238134 50660814 811734293 23529 156218032 308991309 450345790 905554104 646226059 190849424 847401388 317685800 338701371 628430497 49922468 443955034 519704107 747751964 723762951 698778542 532877659 338134257 867316824 570419868 561837600 71339788 199684928 776235333 167752050 913276147 762132562 404635537 37849561 465289295 221855894 675323556 882740242 948461975 290375846 419385560 377682605 490212127 835039540 750353775 919116905 336146043 243297826 145062175 710811826 49289216 646110849 502685624 571343405 985209840 329217699 483154911 843223414 382403930 399370692 293344597 615752938 162742257 852719503 995589956 390822092 607665621 368202918 753310299 148479920 277812720 69487697 944041110 155579314 841755179 366463041 657285192 643510100 605280795 696496198 812433202 791514475 275526663 17885413 887827382 718901453 415668111 291843284 366009054 964185066 617512774 196729207 257395227 491965769 817092272 419702466 714662562 283373859 18219739 649790669 474479168 327311259 234863821 683889328 639175104 343534475 207660913 117779330 661526725 532694568 83525782 717099333 75097909 957887732 858814332 430193567 284307942 693339952 670759477 129371327 91019600 919741668 800398113 940815338 96687577 906125238 304067103 790784356 974133825 467411747 56341982 949638258 544581723 192150129 391508602 617653968 590133456 878814237 618497959 98504887 284967864 355606931 381008279 794162338 507451248 688198997 316169573 678904025 578917804 734589561 391920344 282200672 556817094 279120789 38840262 420430585 421115238 367576382 464473029 960143351 841554310 864919196 650663481 632405988 75391247 211909540 879202476 118048093 356475592 543270816 364575094 977956590 661299944 92660038 378682873 134070789 225316764 935227852 10528064 60985196 69271181 441572655 663606921 859583245 592162393 942929070 519763731 847403258 927929248 64471240 54116210 552122798 105696239 987089768 102095461 523214458 309499644 743789644 161392769 277505511 964319839 983661573 795181260 250239380 32174430 635067386 850293635 744287383 185313342 921874424 227969489 542106864 725801565 592629589 619036579 932252626 947423933 31205944 290114773 75339689 529120145 73913597 466618535 916265580 826204252 149216926 55090441 950302106 443790057 576326934 835595497 8872408 782254877 665104143 809020881 388052205 103601188 83526441 522708888 606711905 193303513 681571606 780570430 611412827 31328988 880564739 995384085 49396790 492640409 493187317 905376987 16481964 675293305 774718431 99557246 928886265 251156781 461633041 335667002 748775061 325933773 652976184 651592028 262891046 350183629 392452788 273498352 563033566 504741907 341456189 308524330 66643284 477244274 117647677 706793487 106745730 375880151 277816496 152462395 973235236 837734393 718487554 336371075 778344536 507813822 420917928 983760354 317063342 987676625 756743073 856742470 180849513 598769263 571681981 481052486 726063729 707768311 92631167 125975691 993273649 169769956 902783309 267864264 53109383 569052357 698739949 939933349 244229489 567227728 677231957 90124990 306714406 974415984 682947397 785916425 837703946 321132131 481343723 128279601 313269976 501089379 292249105 150349991 253472293 579539089 202362848 17179893 523698855 494644954 992582103 459445310 550813451 866137072 117122157 101390544 112589106 790250660 676649610 79531343 759977959 100109464 566621658 656791414 188458971 407800954 284163668 66427501 194665849 663333461 11454960 238550661 933842803 513015638 909326697 557095447 640910159 694619207 571703547 538294409 533763323 686288297 596975318 458076280 144757329 758285896 358359885 936810413 504202132 331522036 526719780 269256359 685329542 325809084 942920968 724392397 194779563 147462721 145899822 169199393 161470663 199308391 546017725 143933032 401376664 963272158 434253306 205176000 973974429 608640045 805254524 959944721 840087376 101141267 613284242 919010421 584318870 690178265 849533922 617189616 10552112 668496766 956526275 470492404 595260874 256638659 799780377 983160180 707770036 424800518 398584064 289910183 17430905 555147949 35146277 882196108 571203641 693256161 625753929 468573017 642410070 720139129 223582115 281837749 205782841 409083847 943453098 557345337 351764715 487863178 36154319 188628852 729896389 72373927 956786754 146829861 670557231 502002 695155508 356714267 695426257 865362365 22832732 954281855 20791736 393171823 673939563 85454767 100309028 141732815 740774794 69080966 34623182 802738328 947477753 404904382 123823007 602705155 295578025 211461585 528850262 928504980 126784761 292625873 31137937 178385060 46886871 56532161 959868853 87152643 353875949 355282130 825133371 130487411 139213178 393889753 798465504 483920055 602153184 638704468 262516894 251653122 951979877 932003118 392974 63987930 934845024 806122497 579897279 979181020 88826014 92162541 597301105 396421369 108819539 67339788 179138140 982295487 900337461 424438721 806220287 106984309 315936723 606899843 675997124 415459296 420635352 207745128 617970633 833787987 640857758 315992420 98851459 381141718 855637324 655535099 33485357 373768525 529383499 558017453 332847335 998718326 580258318 303752834 272233603 226559526 393833595 99029535 219722485 631110409 76238686 480904929 114804516 747170279 833443058 602567524 982156197 763623562 55231887 890639615 260819539 658452702 989791104 108312482 969574214 978259525 710439641 827546270 693098021 634156630 727334427 234902190 645296414 850301245 141309993 399100675 601194572 690551048 155856706 21066041 209458236 463421993 151928461 125163686 310130018 622510803 606124473 390131765 66074303 528121079 419418395 902270661 949196922 975647881 40819652 816943381 905434696 854300585 34159342 952724352 314599769 122838312 346833192 568152179 916015947 913272389 331915641 708057625 505542134 420509099 809815806 191173957 223871498 224687541 689738814 87807302 957602596 900217868 831211954 747713926 570679479 33617693 505661646 546175930 293055096 105999596 265485433 567770892 222815231 451537905 595599724 38214875 520578141 112248683 71842016 824156335 129131306 669987965 201217236 316560637 66229062 360614551 823075176 865367902 476656785 25193606 975415636 354288219 482380296 388048211 863849532 671491250 415215454 63620221 536619704 672334674 635393799 541817180 840588692 221477844 662340100 998711488 410147969 705878973 990457919 968773801 389304311 107358808 474245972 997762631 705741177 818848603 132489635 750956 412362155 981915185 493947123 188352262 378190341 692483858 606203741 539794750 886946545 505838224 563543967 770420085 940205443 47154870 578453712 595263276 496923235 406885635 378028934 385308544 471766765 165999430 774687514 694915813 277456880 595041755 391501169 547124199 842940421 373062191 903946489 775852407 212102009 373093324 916781819 265322340 135393126 799762703 720818084 54360005 612522885 518354278 177174345 420445777 59143136 943413353 306888022 344928388 731613346 222680300 576443628 520502683 880877627 270481976 10472146 881409510 107329709 223012255 122767247 694055455 202811379 828466596 399926163 438474662 566786222 223228339 401998999 484726026 266490760 65976141 827540651 723611441 964601580 97523023 357576546 55933922 776097560 170399845 159873951 748246643 384546480 816271529 479761244 612433009 149456906 606303509 709273552 647683171 579643722 391276361 333538377 816197887 705135708 345721562 86726640 533362689 416644421 489012312 808016031 540334372 328946783 532397225 297759903 163051672 481387704 937209250 927969801 664127684 150464335 229034401 661126442 286543212 946790325 787252862 218441012 372091723 620377138 737111249 94849815 795710162 747220398 286382675 288035675 660315532 815433591 693027863 989806176 169176576 979795259 26312139 695704444 666091025 301870017 109586069 733551322 486932655 704093201 603668874 132355733 145695203 987442079 925880991 123215190 467030062 133017214 921946106 769603980 830297535 429789208 168805547 762637927 97422776 591739698 114282764 446013163 713744165 958611729 180248942 258427479 586140408 346859175 258650652 467014231 998951021 490252546 686004672 983259987 424846819 198278606 590240794 239428585 211895149 893740329 995037245 99224394 60989044 440915126 160158703 831919460 640061195 326597660 716279819 484685193 437591826 425227392 470103513 186215014 889919668 836292697 254971691 794511848 197278003 580060642 319324002 484079642 875914181 311100508 421954254 538535552 997074169 270294397 830872983 176902991 427085283 136252231 720571245 223537841 506241449 681902537 880241887 17418676 463382223 36452245 821182840 92640849 646682248 219210692 875728312 318874939 769671424 715173940 488922535 617013993 577332528 157884000 564551900 669086823 253318040 728670718 995148582 356146430 820983463 518504974 362275794 570599831 434020675 930099340 745121353 407185969 235595391 16741337 439569516 443197187 264865470 555568862 182532576 657555917 921923942 516957053 107442592 475429104 438788599 860121625 82080615 682597842 376853223 823389420 278163604 858049525 308963039 507092700 754773043 676454472 308763658 573263786 618909255 594842549 776415989 595774130 110997724 315080862 441662135 438820690 917476579 267955033 197782559 453930528 47828899 398781366 608611205 125443108 471071975 956237017 170758765 505190549 195782633 614211434 554679463 895320928 88403892 110145882 184472241 921421326 231306365 955517450 283832209 867608022 27704546 70346726 824943087 609873863 249471223 147410059 533366087 583061103 898698988 277295731 612131408 949072940 907587250 463437754 174748013 802500026 97142421 379707745 803858075 337355149 311892154 445033824 949916186 631225965 46278813 322253289 496660036 728587840 526960413 451657240 594005973 404824047 98185115 574506104 724137863 900126969 607657527 604046081 843625669 412809623 538770649 30911478 567438401 722689657 831725941 600921696 968074221 408542520 6005748 360101844 19262637 514148640 696631728 493012435 833635407 215929955 54627078 39819360 556858063 874585672 343491423 896080899 746762227 886879170 680161479 84768879 316209599 207323012 569886178 541103657 247929204 632913150 160166214 155122520 764467911 875263270 843451998 4229894 762042543 541532790 773737609 990263415 536527606 93278816 331200279 95764683 639391527 849045983 592411811 858062214 765233080 620585875 195736409 210471974 297716448 562703389 581757722 578050705 696740751 969677053 737766949 528573610 30537740 59826450 980081655 292973553 72428885 829836469 42798026 767465538 678908874 843307160 952590592 791352075 454110043 297453827 749705080 752335502 211535793 265379384 351041714 92177101 640916831 53385680 263626057 259403255 671030765 985803152 993238417 36374061 41097702 257745995 854447782 407643747 172404322 296206052 405054498 142929376 730106632 591424116 368312336 266456713 842902711 446461743 821722536 518667029 864607439 86782466 525874371 324424708 585938924 664918894 380577585 578520988 854422880 970271249 876368098 44283358 697959518 837021858 349278807 629723968 545124052 325307449 10346395 434241612 707399476 784332341 697230770 522791924 98407049 363315435 601615477 712669020 572763647 810119514 88614036 435441504 280362437 147560003 499933629 254665955 580999920 921263061 896799441 722364248 79921960 757173323 620736463 154002125 817507339 553707708 242588131 106046702 758356466 158448936 908830977 411532752 125774134 679104164 549644422 689290865 642662721 461543609 131900691 574482959 91370056 457110955 797102609 484254985 48234218 623998632 121946144 15299690 466223496 43114455 63280102 648137302 788569211 74698967 362951341 660441936 688617593 900042933 867631332 523542929 506354045 873600533 707344092 208745112 117228567 958909295 65284438 191336626 395893714 479374959 786161556 374241128 910805775 487343592 486173498 67319058 86674378 812180049 578785281 12496879 869237811 624645988 788143582 212958769 768838780 257659660 199246714 429056725 160885293 494823024 294484786 540650331 567492271 314225497 743639337 716528825 552005567 358035633 359118363 342571709 666063541 641034302 288492465 941556353 35942396 904823630 818500456 427895078 590080068 259417115 12949306 219586238 718724660 825350859 110892924 302994161 551662861 76640203 14004382 23558501 255833840 938000802 36677319 217330686 851969605 190536396 741410027 730927371 255656705 967098967 659369789 549156815 830548877 647301386 290888245 892847223 889003334 131687950 601206395 504494833 69705723 285157739 116166484 426374980 385373395 422294642 580729502 352439332 994019572 977563721 264907468 858441952 497192552 602802399 530438224 102207770 745415821 991310950 832931256 123653582 880437034 941228839 971590095 871575058 191192254 124780958 976181940 310865077 312730950 983107616 332650000 278554368 457119428 72418568 967950916 755277038 574275271 747536256 979002991 510940483 757888042 853356743 690462553 988436759 961130684 651343449 517627079 461700458 98098714 543197253 540125605 342600578 212424028 101569417 153619478 447164488 261872372 661617944 153577029 217090535 901183773 343184188 712257088 880262080 833001463 636093522 792161070 819176283 161036032 220233801 193465924 491442787 935185184 165294973 486947764 881999987 88852439 519528016 531440171 620564913 173986980 868021647 995904877 677565367 369495373 451817504 875770737 445347211 371744524 525742450 387229494 91870572 129335410 550077740 68241917 327199729 791101266 340032146 940995083 396828458 217620296 562219648 699556749 863921964 679032698 928465304 163737043 519379605 544721765 274529896 805447601 941087237 65895276 295232842 891905978 695172868 163864119 981570653 473663164 189958320 427303926 776799659 422118246 556596283 190886880 177444714 637313796 514274858 814149835 434119609 699681171 769855259 982005389 695890521 400513460 549115318 282273015 367403399 481306695 361773163 984099070 555423478 132906461 41151608 827247898 495863188 571309982 321341861 815115862 336790055 59842334 909791955 541215106 465918988 452582043 801270065 379056248 5681897 981865270 840656318 391234197 8233957 905236627 527398162 773265519 639338136 822340727 608819829 635394801 539447340 326704084 546690370 684609152 400247043 770016042 176661795 536986437 928344716 156030169 939070581 335823185 686205559 164612127 45431996 390033360 825036324 257720694 373884116 278064345 97650539 492789963 885844289 543915692 111176222 715322222 741430740 793808316 294281660 934110961 19549855 171207876 983331115 503181070 131908716 350381734 146966582 964567068 682702482 181040109 253618291 494319545 461466080 722169570 663998676 161202664 295257820 446832716 727450862 827036792 440969635 232030693 616796713 776329401 961431396 939107330 846947384 334739362 424933753 914565101 556216843 274711178 685228740 687704912 869755276 940051351 564265748 961213946 167611542 382241901 773233356 704700647 200919470 304399631 149911161 741695304 932552054 140557498 846899588 722904619 764734445 997089241 482448614 736190980 179228634 381459773 174567058 352931689 452534764 761491408 899072198 787622583 929087271 924916283 166033449 806445409 560266924 221317490 531581321 40156245 4911212 630356429 365997342 282404150 162551817 237873725 143812958 354260686 238887993 629959670 918512352 643147467 597319574 600818597 524458714 18595398 828628448 611321809 14797896 556506183 224042320 296552579 76610162 861387048 427076012 302034284 314599090 642138634 593131464 127054100 54259128 727957100 969410794 895347048 596028545 525387052 610193614 675259474 617752562 947858596 162635381 917185622 600575364 473855934 112428258 645939354 257369632 53942543 554389825 520305670 448764989 584116571 644038335 934515193 955872149 562338105 434958644 994912579 228227404 324416268 527591826 408816082 912523637 768130688 206283961 370920544 493234428 90754812 200032896 32421114 428190082 935677049 267715075 311338697 727112204 972240459 653583285 599509541 910928419 271628974 476753842 843879286 913876529 924485534 929488075 465858936 447439948 550087326 724511805 828161166 743596356 411925651 174500700 52466202 75753481 154436519 753759087 686239305 984846902 968421431 452988187 475134098 331558178 687048905 402102158 719451796 992616438 612164258 453739943 537253513 669159321 723029180 864879475 697715627 534460723 411384640 61201813 9011737 520876289 624967824 920903090 907132635 935960821 426863416 800789234 383750779 332483677 118972037 877358005 422180592 362184363 636880389 37009358 247200965 545575230 417773084 179202324 785791999 701396879 326531657 459731212 441330964 717978177 809131369 434549089 929062663 412586061 589104193 389655993 552781255 994931591 48850048 15632910 986781559 28149697 648562624 40664407 29672297 941368406 654688812 379747120 544400238 623772825 642175000 773665357 102809228 12205991 314753424 306568493 979213825 964723385 591159847 455760454 547986340 686018821 465341838 748473920 566283545 332363010 674370146 433214678 864521919 904016229 875924887 294247329 969009355 227584194 402399496 946527810 184489139 748947155 432395380 473584522 353174084 963524033 456124252 316341105 228767963 772104872 20312964 406795736 430563894 61302322 968423593 353629457 547286221 683049294 679652854 849907422 198952239 645036430 456804054 762238677 929836206 657857295 339414383 974679179 255747844 713803587 172443883 747281715 984834694 272170101 839889647 500879708 818792119 551371532 812032560 803321497 70991720 170292427 824883656 390545298 914264586 45945803 762877459 303829170 514183393 803786671 338684158 781817547 477781071 803980569 494722564 655556602 636859970 67946319 663148277 624792423 947377246 784806289 467504495 997786833 698715198 594405498 411526155 625056916 281052893 438520582 930455868 651521647 129467869 987067400 421945120 905057709 153975625 36340361 190109124 213660719 640126714 958787209 847593471 14470436 246276035 292413533 890483917 337526451 269280771 988841373 871697290 365724430 155930323 635243762 53312087 575109255 911673596 733048802 629617200 465210750 37063871 995887026 789414026 359621002 888608965 736285575 113257426 800971188 698088603 275517674 140177604 757807220 167871898 875361702 811245102 29617503 455795409 350310796 379400740 626571816 69422790 498711948 462244913 816745488 747770066 203252686 438421021 930102322 113092915 706080465 485054497 805954502 50789579 361525825 717922448 498391555 6256091 275484998 643650271 705602625 912642178 24947831 116000876 634950903 415334359 984961939 920239069 797241561 830758788 722746670 970337180 859977903 538963243 819190068 597571868 474548289 642159351 800632598 527166422 141494354 71323600 646101547 104678611 746240961 710086096 983315795 671421517 311566751 16061745 510655909 84224863 896398444 39682698 634383762 916759287 19525647 808483753 865005053 656209144 88518790 987699440 265723436 847683648 291099059 176749665 922419040 864654142 161819807 236363673 563341539 695903109 751796348 123501471 161811021 378306090 871452898 802150294 699151458 269504945 684006587 257470555 273125755 156117040 794840999 797037840 603662796 350011461 638755065 751183444 480914412 943307857 973750043 169886748 9836505 269528759 336756282 194303091 44324787 70571633 229056835 685428700 704434161 275752127 207094068 31420241 679308488 967761923 622001254 331860221 807777535 329081070 376870042 53771186 664816389 930066911 247091011 194947078 998155360 759168105 194073864 286698754 636361470 524089244 281935226 829912841 874624415 326088700 254019028 199491377 924430557 790702174 541134809 600803430 693253530 71615110 183549776 631562009 29229549 469866077 592534902 105799412 697142610 850554924 260124310 706716042 394866883 907254457 251917484 686177344 796946505 548408655 635375571 439773518 717107664 633735151 473387168 933056260 379626504 688731398 557923081 8018466 887099940 964651821 527453765 557051558 245387847 455341934 615375018 607393788 71172424 653714520 199693475 516421196 830295821 772385380 129071299 735131104 211437714 197163436 243722860 793096431 451755651 195674440 428381652 245399986 492046648 205953470 859172468 659957118 371633183 499910874 450931882 480356332 773503782 445159120 740807726 381247454 416561623 740968336 884991143 252913093 303420011 915307336 654005462 869706745 501706456 9340199 494130737 330547583 469372581 927256998 940373727 449117761 628639844 797300258 989737972 85884099 121905698 449322484 819388316 540812501 425574289 194746060 300586643 348997514 794594124 67259043 559174110 49192909 980186097 248668969 674003288 899237858 321135805 982801268 764630381 843887292 709215674 625686282 861313608 123364791 532500668 42839947 466051681 130322623 889600572 715992400 514046452 979354780 983665367 637211095 665557350 344479626 809454414 831304048 684575042 748090124 870725286 923479301 771905524 591164302 292594847 790224134 38128410 404064796 860929470 693096842 190707017 200358459 501118962 339080167 231427882 964894112 858231724 328451713 519201177 170007979 117977201 346860614 114303455 691362613 432531635 205286949 520725766 685297944 794748671 452832195 124891477 713240321 704459261 426219622 98769654 429015501 193300909 374861761 95579725 701446399 293226810 263814343 569794772 623636053 848479008 331181291 144252475 713411044 411294068 358128771 102927562 66477381 224117043 753361434 680082799 458094148 919250152 648782121 473912744 438605886 394243133 901685157 806264021 849743678 436381636 613301355 867280652 399706882 513648568 17727878 812814420 595418457 619910709 116042748 225610320 867440299 621838632 508439973 737297216 453545062 65370879 805532029 130527940 902135626 137845227 886371869 612313562 744337313 639758264 849292856 649888688 6138298 524762463 388158975 657206191 63604088 329942339 381494565 565127817 359743820 1776183 73942336 69882573 685045641 582488885 523313964 981030180 689363760 142980147 280259086 102085989 579176560 597754378 652360737 916546136 946707420 999876296 363437265 893938055 203402417 767391584 110871974 801514893 515709046 728236987 712018921 186885025 488680263 696964094 889927121 817091495 915860232 220487108 493062895 672519389 418137080 132770115 463108916 771384807 102627276 665474003 914294343 320200451 546220753 983407059 311697352 802080244 245594866 465255497 703270017 192506000 899049472 454157237 375214579 108915875 337107306 522755248 998352789 314184573 6527427 563689084 465166119 294200518 547409190 265232613 339363124 502168597 217403413 677170699 699133282 344359074 818237074 859311915 5794530 138582110 265890595 554937153 900338169 778166583 934479278 309751396 698240740 491143965 652528678 555748999 129226005 361356807 969515981 701953155 919306858 743669539 973457468 388154175 580196063 952090620 336989078 359174127 763667378 776424274 971760638 418603759 625774714 21976794 293917034 75095010 199583993 81664615 140893796 876089486 415942157 916581217 164876136 449253419 848712608 962587743 603250629 833579309 591892586 111616520 413185140 855801210 555711065 205822378 405570887 946939646 247970833 948032715 387900897 371678426 852006169 881304758 712201260 411755613 567210080 275914422 88200179 979021237 927137611 392827080 151544200 211731554 102130405 252818619 776562768 561710854 559262556 716163492 300106446 656719481 280623368 390374101 793443426 641969625 906543517 562739129 514016021 306796107 486886676 728282654 730591737 782561104 763949027 474236580 419144454 891867114 997149393 730767747 954829870 992835055 501006637 6945400 985199001 16356028 779775428 348866527 502809702 693933106 864505042 771742506 250358518 116176127 48420168 445363865 157160596 761599532 923022354 979884488 153139286 456197836 739763963 790537325 967163762 155581052 731076072 295648894 629205679 201962417 544591480 309773541 204429883 211377570 120509309 602441878 669834717 495689126 107137388 914379253 475533178 351435254 273546404 678706116 69060307 739240918 78268491 339071484 774174713 380971553 51893936 992170753 162694466 506648448 817640471 276939612 962708967 152090122 595866347 868568792 439579634 415408518 435268082 78438409 577140236 473099584 220299584 177216544 878753252 921322160 134772141 526106442 249076908 922705918 351838659 821560315 284601073 454209114 721663088 751256271 1314512 915896077 615735772 242421487 562888840 903251207 375638582 439932409 755631058 799171423 241707417 824268350 530350408 213729717 444528185 947384369 888591366 923854706 369762593 114694436 588344983 826575941 847364457 885759808 668305726 94904673 482796090 494234188 70579385 934427067 113786967 259670247 279654702 194594591 470064734 486377147 716360326 711977125 772697128 40669680 215534259 588711261 275032534 329670546 88693639 681951752 793609131 30864137 210155796 345784679 972001625 549687643 990675103 252210815 761312331 915518947 25988224 289229400 509240221 874852836 428214750 257044294 369301133 278454875 456076271 98548980 664218841 811732300 560649894 282305679 120600377 778878375 446044343 394451659 533512048 843978496 31524136 690769695 63577082 298433203 867044309 424567245 89762392 734076646 829488462 403364916 96630693 230914239 270297188 721121205 91100182 677155287 571803833 823236774 9550580 415282648 627303659 9097009 195163619 957063472 978472515 282679131 249358462 889753055 798387612 191777018 372050743 513389718 924663812 996853069 600155057 716843818 916703681 168532778 303817476 459309473 938283581 381792696 296990548 164256004 249884381 124186638 194767973 955514253 2683337 909163729 3648947 323164441 868790733 992004606 490785049 35099720 446174808 97693331 395583003 645430805 727084492 162300604 381994718 390752968 318545902 726778329 725891230 592209877 359075947 535498352 706218780 384182686 152879654 157698237 276082188 324017144 806905510 152423023 918099777 419630717 69337061 157525932 320014854 333697190 575446539 958682593 51425580 841657614 151861029 165903888 743401145 636269026 720211081 467357876 509489625 13273886 867774916 648398509 517528441 626643503 749299841 176336426 878908192 452632809 102646366 331784179 341766621 2769336 80944896 173231689 741153922 372229930 31479719 89261151 738040205 703354400 135340174 130926867 277855553 385975717 894723934 57614953 363744256 301762576 786335835 365708314 432215972 623720701 428884154 208707343 724254624 732630293 565019768 108508697 223526536 866904161 697104183 919123343 967694099 135979063 582369705 601480521 532272103 195611224 861499766 267854794 595078219 863722485 300668270 424863275 461964606 854144805 626405319 190674381 973910434 774224529 148256854 66904976 577193108 36040640 208504071 503887878 422192483 234126332 824871244 994916775 286887991 349080306 151865967 832163490 283615674 184516304 280845939 945677456 178681182 998197603 108989356 640816722 228532347 741954749 285406949 903048260 123129638 416609809 603377331 351236993 330896321 189730323 374625200 700595501 434414208 373263979 14581585 314735620 752016783 205352507 83274278 756578011 781976132 990764100 717378972 461979602 20101714 785985064 354472546 990636961 284772290 527816991 776884001 295918084 754493012 669841577 579646591 63044698 654050067 281591488 526388991 182745049 72892307 618075359 499536279 867266241 404558851 528306495 684168196 172747096 72530245 249358250 102372708 753367853 649804061 752111217 442593917 333934031 808600846 549505117 945836925 839599225 549646464 371116513 581887560 1526893 47063774 306874008 928417507 797893208 857001696 107928857 479870605 397283351 128419673 112383591 241236558 348806885 656701912 796761711 420767701 541136542 739448963 332889569 481918447 977433973 99512633 192598922 303927046 651741901 259885079 221095440 155519458 950104023 657115769 527680249 540262390 809210123 329285549 999735332 130732332 7860467 288965449 178144265 923351280 578095986 220995463 740751429 460720367 520621703 193497258 730688288 628482707 750373478 720524169 480427269 102228840 220319839 254522843 377914573 578201470 909283334 978580801 885192275 798471432 247824155 43483502 107334333 186736766 84237763 794632949 968045432 835675348 586959860 545762522 727681283 169571831 810076328 349231956 837127331 510723580 352989841 164809917 10233838 700141893 349911932 965690424 203336075 644838674 238528545 618379765 78243014 813083280 212745069 60285692 335022446 547892650 136551177 820926733 478901587 947561475 407379547 881987297 415230746 341707319 407911904 708476774 932718514 210035228 676882229 63323058 42149698 83150272 556674833 624243524 884649097 859690830 615000518 141779228 933203004 613046819 974663316 83778555 288494617 849492846 24459926 947762826 362801332 59260777 205562788 698564546 873052093 599716330 506924865 580252013 524614856 446585995 178894208 993049721 66526011 216483590 79241756 35469340 783259531 320805718 684285279 146619426 333961177 846508541 28541693 271651043 841494478 60423331 866493833 443169420 924921931 462829770 540757613 268985129 118933768 131262302 956433331 362284573 702242383 437169537 433166406 176909833 874782761 546864633 604301454 508134500 459340468 761528570 290246878 397568686 864005318 365875216 215638689 646581318 186643878 39660528 772112117 367140494 405086753 955838951 728283588 669559018 613656003 387457319 996952417 519516101 703764257 64123884 740790093 278887510 699426875 377744020 300882498 986604750 222809206 765688484 878297379 800263242 895334492 997326574 794678067 461244012 786694039 170225675 626962350 293335194 322310304 968910682 412126462 926543258 176596456 596859315 339327409 54813518 306820361 555084055 130061921 548348254 814966550 633917662 468151864 895982940 75064466 381186710 460107525 377126219 8057269 853811797 611260565 172488310 950769771 900789339 250634108 361434674 902008023 205768341 217587145 928786988 893186655 800179519 256970551 805196883 94893534 185400450 816009859 373043428 760183266 121759367 523394199 529934135 165743337 794553787 720905433 606643593 514110130 528192780 629204655 564444346 668979302 71839780 616690869 334397257 579281401 707833697 281061803 676030679 743974257 943077010 13622042 852978794 856024403 708304296 171350863 348355139 878132321 668988887 98784020 947188295 82665455 29752106 12874778 673815257 713098091 618823736 519286440 862918750 330908938 533115485 61250499 48852026 150914212 607291732 310675501 871056420 511540195 410595453 15696491 301205558 496151213 6671922 275713584 968814462 273749647 376671179 958313877 988747357 661650612 110657491 446451990 278422846 306439891 199489819 193440680 88261203 462328990 831455620 849649955 238109503 497267011 399694512 392344614 966864024 95543412 744141592 967496179 54903952 81289867 664299100 468295613 437214234 25829127 236448213 498574179 735706628 124030676 134581442 625833671 34745275 695847790 333684299 51241019 466577669 720107429 518796243 706567987 860973900 790564238 894213229 532493234 833601717 808509654 245404759 608268505 536628776 690819507 15861856 69240054 548930926 959950130 733291858 326961393 823715251 306802056 487676570 891205510 296552900 493086118 409665106 399014476 487230382 458294155 437798312 884966360 861748969 104220131 292883001 735120110 775550480 784803914 453381546 630474688 431421178 125505686 315246997 691025997 584923244 761218868 414027625 590766428 412997592 920059001 76579604 862349218 488952307 696978682 779392106 225740309 169909010 354952806 817083140 736963584 317733772 672829635 514301149 415470024 833257640 376368309 643966053 891531885 627707556 354810575 793679424 829203234 697296687 192223055 755778711 985560299 818693991 996063551 527218795 683726408 505296744 908409184 509376634 142994128 154294670 421910906 144547996 925294327 231834802 903534338 701953289 282165732 486834233 226164182 66711617 868643067 885723479 406465997 34427634 55754063 144359801 51166598 544466669 513488164 529479140 101970753 359949310 585302916 804975106 698940007 652924509 457277774 871469986 185647142 830008770 611390869 734002173 666762178 638487967 784536200 898727069 760556325 857512400 781872722 528250073 737296122 396503696 76672409 534244851 653981365 654330917 357928624 494366312 680078585 574893580 478717836 385372249 121416586 972808294 379346087 569486265 586465226 60713769 241218489 382782478 648975436 214784153 645868444 526136537 50310003 319334444 575373912 877363601 714733665 710931872 951251277 995357346 935930693 898493470 342811032 734917359 122515916 455328662 872204351 378764085 887410070 339195393 807944773 371105467 765868430 554604855 298498695 240574799 583034779 4886508 275269321 581198533 219307553 681957066 99876756 320704906 998160898 230212192 446325237 519353491 219908445 490008932 425997473 19004300 353904165 763386086 308444497 931259669 223303654 425676446 667147275 588553674 29190454 110038198 678440482 931111154 789551124 330769937 190483698 384721935 415379078 526748330 337956031 700035863 257663214 615966812 26745894 400720056 250044150 921190060 53010386 959807531 953491663 165898538 891964997 885006152 435516701 631397485 796434001 99966917 214500295 320001163 371357269 779098601 151050879 361180484 865543973 381252456 43488071 197078625 281672695 239384786 504382803 63721331 666431824 804504308 384953060 329488630 888249773 647357111 222375040 620937909 949284232 283403213 535478643 575486553 213589067 768330911 162210565 810361197 991697652 931725974 273129441 658661234 751185955 602176601 849105407 495235365 120608737 262861004 162905939 449895650 318061208 659559733 813892157 656008952 446513693 796184655 72507860 94678134 11751013 343208630 577945958 560621312 957459261 761332606 356468140 965510791 773222791 569647610 943619879 764850854 451783973 978494313 302363378 55628598 500265684 565855919 541579443 475632364 781050130 659151905 406877362 756445585 744764489 902309685 781531747 751223159 86655088 988885633 619097773 729957054 867235920 529772981 954412443 739191319 658219094 169348498 233740786 221861713 996352179 237618559 848117424 537928652 219811606 50549210 584879188 445343132 402625675 599861733 747496100 764738818 390623887 272338677 308779997 943775241 363468636 446294553 371733932 784022879 814058919 790544135 634875557 66382641 509612531 649126185 280517494 351663175 85550614 322778098 102904094 536807285 816365686 124189911 433587836 152238271 148994683 504565309 651527139 926123324 164434115 264102796 166744434 840427032 72935873 626029501 730031711 537910817 686051830 579052679 536897970 780877044 608235598 807485616 650884490 152974889 930890937 961846162 914754319 638415187 771858935 595959628 95660350 593845377 300258008 254596208 930625005 704430171 627819149 763068227 865320723 178277712 529946247 847427593 924734216 411456028 366756714 175148155 445746450 664726252 397084515 810783432 175270756 593268720 324149839 908014990 794094526 208730484 756504882 660945792 724164129 602378605 28644092 278800905 983116923 304211158 670564373 56368554 919981063 599721887 306486536 618152410 175006790 248288446 484091699 684713366 354325985 637081104 275240018 421853672 246858634 731743473 522348936 616657995 553019922 912257423 359304515 708105837 109035 941643618 864786871 974700138 622522787 996706324 54188603 909592443 828081441 463447041 52421236 969453946 477230310 781279826 694312808 680479318 116624435 521198088 102693622 115277385 256769476 372100774 919455678 927492165 885752308 656751084 255321380 72558607 347502236 819953359 435568467 482155110 497751399 954774647 293769317 322614453 320180987 429295982 142691808 206357892 900523047 369286851 941249613 638883770 811551889 969576581 195700331 803228043 833335643 185405493 80003748 147799991 377544836 500212201 888360363 45789581 946665849 950204796 969535905 317746174 473667035 551508459 962637313 725644667 364215111 422657841 65439234 756137967 588306610 145720307 559567147 264234900 833681807 645737088 899201495 877281294 2442662 353996357 851475455 985543785 65272710 970217017 112227948 346947268 229566570 392470107 193184099 130142323 213853892 384697622 320679651 530779422 942087759 727273874 960057515 998305437 667376752 374993166 451771615 750176529 591943835 638676701 470787308 748736628 451704342 282823401 713255388 97803350 523035968 615685333 902555849 653490556 831900312 85341011 30431299 998356884 673268945 854526968 496846113 81585060 459596438 522719584 897653850 266017937 668711625 557533511 957439484 987568540 536854228 71027167 67508383 406775353 829617799 774544059 772911684 759302734 856827739 698973628 75743440 599234197 47876934 662099056 413561462 975564370 385460789 116624354 940159544 55820304 269944941 478114026 926219804 471461855 494451591 471610528 7828186 730410833 95627877 541302327 83448810 137067300 334027768 877734051 962395004 617780011 60302168 435888795 745473515 135212737 545655718 14705279 98094851 444976930 769391588 363466792 830508740 486906504 88089576 87211500 521334551 17368862 178524177 906577670 545639942 970235562 899634813 121638834 614561254 136227644 637567387 948371457 644347255 33702817 81119477 699332278 790845699 348222868 499202233 992586025 588706500 192919470 148320902 749625371 939283096 983176481 564181093 556068880 8635980 289731459 165169036 439707384 412181817 937562361 6467798 718576722 377790483 244827001 817364554 318109586 564392460 322921178 644922525 354208551 701586687 668438453 977981022 602213705 446391864 261408851 239894810 694244851 852290673 741591256 559908179 995789381 192397490 372815618 193775256 407939149 691548309 418293716 726340973 878478870 834300042 528993148 672745100 373362103 41160177 351851119 682019396 41082307 871270544 117701514 879102396 950251701 938174478 763242513 162427878 463900798 162882813 689219503 142550340 413347564 53595341 807434691 972671070 591095385 996496313 142859314 677957660 661358957 70778552 676628127 689329732 251298566 727988141 599809056 296179194 24970029 875440211 377967920 222704838 323152357 667386 756103519 73348568 832804197 321311364 755806910 588411172 800466060 5499599 780954454 989339836 948624756 906880803 465977449 195264048 255124956 907754411 854681446 211244698 718914236 212013606 817183261 878426058 924838762 271783682 869115800 870744762 848726468 463964412 396140818 865600700 985026259 772926025 409730227 937278157 393236107 844856584 991297953 195353056 546346894 676984722 389891910 715741643 365902045 112659421 859248266 631902972 53275402 791934721 6183978 161043447 143928457 496698123 896741372 372378036 503928630 452298411 134387086 786588085 455037402 955412395 831694272 966574094 870144998 334346962 841302591 103865149 920622287 129622401 500135649 622762109 689467188 452117866 967802759 670223121 507407753 998389585 488734104 905441484 820270973 713766923 759086527 377494398 451467402 602933284 928667978 174295009 416280548 151339315 818308926 473403575 254920676 177810533 236671926 518207432 952030376 697617535 461107886 616796830 560256131 446762004 879246169 217796167 13235233 799652652 680344583 495422504 521039390 956283178 501869389 901148453 704143482 506376309 230807765 987148038 236215912 349901770 619411084 310052807 418253878 386067863 276712378 454647799 720206929 699281642 798839729 905103864 11660683 158720931 472559883 120416420 578311514 663062943 723726162 911031008 236474912 994326565 975363964 110778094 580833512 437193552 766834796 490582144 790923491 800071627 946036059 294673496 766551330 102798695 808592209 517681700 340807315 306393841 629339239 90738772 729817461 710926364 178827598 730057176 602737328 168147661 42498273 398220709 299060354 852871361 361197239 747333457 598958124 922148526 778894102 358339805 31978836 478308644 687221070 559954043 253675426 837315296 636057742 988571493 88294989 325039326 561681800 613475343 529101224 988860924 653052911 586376941 167742184 566150069 691471788 258082071 977289654 972733707 767141729 476157110 657962225 877120878 471600508 837571188 440936720 419234701 756207803 188865216 143106999 353620078 989910135 215390125 151403698 699559180 407075156 9664904 856187452 746252565 610457519 989644711 6369951 605390842 583831421 232355612 871913417 406475856 543745494 932705928 981191546 532838160 771936357 763783725 817494522 989632797 29175560 2470283 743430389 194008359 477388581 223061418 306135859 443159548 724719892 233701904 985619459 131068003 562297169 999643422 608697183 773433470 8520786 738761503 429060649 708299478 364073961 203539541 634128095 871151126 535412348 753948038 972560692 749764064 62920449 250813930 892547535 235323224 989631140 947249771 867639864 743435226 962295090 363746684 964615639 208669915 731643018 850387790 690769885 919556351 119692865 426712920 2884052 436955448 892504513 809840417 749033565 268226764 510855598 544943456 558429547 630903258 671822664 363900247 480680232 265915477 49429294 883130694 560211207 151789634 193384688 656206892 979721671 459149174 174239626 263037795 632024437 627000547 669757888 319065771 148049640 193270634 173161105 467461742 743522726 414978553 764712484 715551371 82635999 236478091 555025967 362388806 774396471 882060478 441617044 768760340 273402406 969828638 149985689 652808160 54905226 257489568 886619637 876119887 10398618 703298033 519566430 142118520 612119264 86079352 511037750 91293611 748264042 844918262 608286820 285520421 419722904 635188416 901131390 40442756 711166136 326594124 6414928 727329412 304718724 56668648 443911838 960640224 904908157 264803564 152454485 986403817 172065108 222317803 280213181 52157011 940993200 779625097 586434680 998805658 255534224 239349531 586057807 264342957 369324321 17094025 898818010 767137066 618721485 460357555 985174541 544232283 173790509 581853649 346988518 616664904 34779010 235217004 874285386 949683154 629812019 417188438 759275874 919880899 838208015 421655574 115353876 719902087 829022334 283385096 698733020 286020762 80271508 749322644 284640709 814816721 897718812 946907121 365887263 9560537 861628070 685055624 473378558 343717095 751611018 11585213 596619108 73086386 12105885 4022313 31342039 373855393 919434743 560944816 630093869 670488701 599618285 146782010 31574481 797031103 750455922 651130145 100155574 584355304 723696719 442828928 554026695 437608118 392080290 208355078 766526039 969606318 391281286 502218914 593222582 38530197 534354985 271535859 25364782 718410007 837050570 218157535 669580050 246210640 607128480 1719198 997315779 582905302 884437426 479633829 585572844 666876042 190555172 774715547 838607384 225418096 307336467 322802438 267275956 700582561 667400578 606406346 885866558 243199886 58149877 942344992 918358024 316677699 539805004 335130324 609024796 777543479 832357456 251470632 595865701 115304659 771181385 231873879 56233783 555479584 385364963 669781166 510929700 668476364 833413383 758247739 326337404 383596779 177082698 815117575 573995180 882871158 974676676 164379217 700972936 6268419 830292527 194460433 469209071 801847612 644911795 338152905 288710886 648434784 402898192 504873334 630206475 16439561 875770572 703147009 700308929 182444793 393197661 279133995 153401392 479443372 565120990 966532799 898946605 459424135 484876505 908234840 32908508 22151961 141254508 476098177 416456108 838130439 406019158 945078151 605146732 992660924 199526371 857808775 650931307 573422974 919843088 34547410 643956041 268889366 263159066 756826955 845542694 118802936 278826349 675428767 873516222 558753646 655304286 160682621 544324948 684346955 949552960 863284506 315354188 31087681 524022564 92130889 99278985 213742927 538813669 992694092 252141866 376880583 504040096 166849197 276650165 929418921 764474360 595881384 627546005 72995909 587197582 148469602 105078940 930481936 861649351 367033292 770282077 72190057 223797476 180256777 56420076 530672584 433402373 191161045 76470912 67973022 386956304 682233875 261650041 340395788 751098918 19885364 521282864 546943025 389581196 485932391 145785481 867455953 311658259 526129843 434776775 990585565 832826583 254473830 689952076 458588001 63734347 558558021 299010165 166830526 921679187 829290609 9013687 143023545 592116040 727145274 711812939 950357497 588234867 327526382 122230877 875096533 513382037 75496679 879308850 672946359 676136473 29971841 241314639 223299511 812223320 81854462 391492934 346837187 168859666 832038351 489779407 988432684 537992499 687339434 944796435 588291614 850727148 801142431 618756625 904853000 956933187 43366011 96473926 671755620 361567467 773671949 475798201 679826213 926022548 27664586 448142412 746262086 832956109 575368991 443620702 66548667 890320685 106337064 765539974 727067154 274883093 60963789 768299910 510428496 303719700 541493007 61892132 430424556 127752060 914883970 310402924 202160428 689980282 930293872 704953097 62089014 647795547 611376037 190797792 298510658 739659817 37554527 445791917 499813522 564342832 684015761 863528942 590190315 440521330 446029086 772529084 435065186 480211619 531111882 177896154 691673550 682102572 500931016 394812086 219620116 310633708 754446653 763797604 662812432 585021841 330675590 775232837 535657724 825549617 242162309 462233091 241160690 347160397 959427132 486781361 37577274 658323259 910983648 356514939 798065034 120552071 195813556 610056198 132693807 705038876 392693647 388223939 326707648 820075971 276281181 766417952 43189423 888892936 58182038 68889271 934754927 624235814 934347577 459036890 32282188 803340101 198958624 623222501 426581648 452677600 372619785 58104669 711724692 34036281 24658442 870476887 2488753 60575691 290327823 260099098 867402174 220292472 939279683 478580058 597212347 706230786 787230959 407766746 369938806 717618484 605939105 444166966 514998884 802811775 47119544 140716481 96303336 819935591 288217429 266690076 438315121 719690383 611503871 396618979 743841555 601477203 674103984 93125629 913122808 623599870 950134709 263932510 700032082 2720101 285575773 610332181 185847540 883334788 258024213 525590930 22135326 811841027 709791710 125397801 982322077 796547857 964047807 187026490 692686743 623867729 848319612 738174952 673671485 770805883 607214764 242404474 964869694 733989985 767119963 940475566 226743231 362034737 7323081 477310560 308355015 32361607 378447881 843893159 687408895 775673396 426006545 965886300 752204174 310269118 917569939 483848889 801834009 680445560 10322306 710048260 856349083 982162953 841400266 498533127 267559120 747355806 640410499 699884470 577027649 730122438 412951129 713025152 873630239 661649147 920004278 646961520 883172820 505226746 77430610 26777647 403374761 274792700 68655287 199576684 249000622 920132814 280075065 515585961 701545913 341341208 612923877 321603309 776632529 764028320 70050048 47730440 157025379 150910411 767561875 261372358 904525211 48566865 82818576 334164869 643914763 589530529 665122223 440406032 994654118 902805331 84126172 978802506 301942973 752908389 151938584 240046395 998339523 234016704 941151016 381283977 598190732 869468523 155938552 412894792 251835207 247967338 689825563 472509696 212207913 797726936 515106540 927871131 191455710 589053106 605772434 301061840 211196916 18529407 473546483 794065634 2855300 360573869 347339894 247234399 876080007 755478818 817330892 454582531 761954746 910577581 235548183 201660576 610191690 447961849 707122304 647932646 644608535 834071250 124855042 109799804 90981163 164641609 677341858 648998742 908407992 784506061 192811491 73552630 223406388 23428479 919829825 485338931 74196616 16413068 95220170 647226332 581018668 226010960 583478258 325425512 578278565 748726765 252180059 946588684 448708861 317311161 711115724 945131233 672330909 888924931 190656696 992230224 938114849 77351197 883417791 296151243 939380049 378928285 576410139 229038169 844072962 977851424 496276946 482861601 178189521 843390476 568090974 41898974 605005415 166825312 548152686 847543695 800310707 885491918 283414320 768432791 835459156 368405960 927048297 387426117 517589259 253245272 9484842 592912892 450341956 366372699 76561242 337163288 32782884 521587202 894131446 349841565 955296951 79303521 7001134 906164201 698210296 661226007 147557395 676844894 690585222 823091653 193101007 7881161 82686020 271301073 539879304 716579186 846633850 873172917 609587172 127949128 183503312 38616096 384171941 239575522 743436714 801233150 342816108 308716337 663815224 305867840 381153925 916255102 10926126 234350672 724569687 726349156 730972129 285220261 317628801 563713796 961455789 577850897 13945975 147706867 350200282 964517560 188536488 713033615 167101545 687481952 957030979 755038945 247641743 301522837 656478124 118678728 433020131 708534870 262215908 996226973 178405972 227803227 154238923 988086751 132535422 655751563 404961126 990698436 585737798 685176968 739253080 840292583 609282796 738236432 739932829 822897671 795229574 728969680 428297652 312358037 104460968 302896833 780206295 196790537 383539978 35776231 569359252 29804206 428288039 244307762 171896384 51799665 963731068 269338934 747629022 360310048 651872134 494121799 397478979 627145321 416927675 963479060 729800047 691084748 510779153 281623511 996684109 831659195 383265726 777442077 767635765 989706152 635671455 548019640 685416438 112886571 124889711 171571172 66911761 117632595 930724250 762755649 121758805 593074590 531176019 851573258 633342246 310583213 651372315 884960371 692648459 214832418 954818850 105701275 224070651 207836345 444194892 50718665 704040696 531644449 928913521 625255278 344632647 709745282 695176440 274942936 473343819 697308797 287654707 638080112 518346315 963872517 927705898 385706241 392685544 581268764 925945797 705717027 629137347 808678108 609633386 893455048 425052803 831313010 365131892 241428171 617062032 998957682 457780693 449324213 492467091 379779140 118392048 499493731 356485696 445526563 892495145 863725245 632168925 227711415 394263554 522688862 875717877 661934732 787112891 130744079 429598463 980403982 569842955 793538805 161280445 551032193 296078511 725032279 41756013 269596578 985440363 178121387 880294826 725999951 960713849 686204547 557535654 490193623 721048331 72507005 782657331 105577520 495606213 933191258 150237433 448550506 224792151 279308059 398942951 498435981 362074212 966753805 951726700 170283351 267239531 913387132 707317596 165291871 439019366 728749609 769221401 380001107 558067207 664287160 729234106 69738472 719834926 289679428 166694458 864860101 485602510 2128349 781768962 203080364 76527104 330041297 551390266 970060387 683397209 320588595 559737032 768088110 871145679 802854582 402384104 789643433 27121340 175143021 38440993 958290824 71270433 877155403 372429792 252969630 836055087 125339181 101537215 545237971 744742262 766861978 641481240 371216930 294603025 159992172 408344867 650381759 560130763 752562124 400482475 729686373 266109065 207607667 409157180 358528267 786669830 974331310 195499755 707421073 809706518 774860371 906487644 309693207 70860204 773128750 525113256 436719224 874854104 457245967 53941805 50744932 28070779 802443431 311197737 808974994 942625505 340341464 888158107 693713503 223598364 174671835 826636222 43178245 985627710 860876957 205294926 330012348 294099024 618007063 205233821 440169329 803446160 351928419 375949600 546744989 399467007 752411029 8434852 868500917 110325040 759673215 909706884 789838184 178202177 152555682 109764931 531219517 444393553 838653947 41353263 546897377 826944816 157582632 237436356 296703248 971060645 762713963 36964421 941319686 272957576 786513167 512986820 899258158 846972302 319573978 863170724 985962654 554632170 383238362 613497673 613676289 894504745 195779782 402788766 21325202 867297951 912963803 851477258 804997131 802043036 332540354 588980767 636900249 575374070 31940839 280717862 912962780 766038193 825033843 949374649 816496943 695531870 981981126 836059330 257843117 932384548 450498399 643109750 777539513 126132158 607154406 480819817 999847576 109205707 336228796 798034000 325175119 254900799 685475487 220162267 63361971 91905829 989364199 844970652 696407974 239562659 172564278 636921913 569785068 495854708 865636070 192451939 208772836 307863780 497294805 555470329 537815994 505137503 178526027 836940501 224687428 972133435 647264920 839265047 994315277 601281007 160731943 302967340 352712132 849488126 878213260 856223069 856136067 802377486 368036098 682491257 115320313 425558318 671434730 22070532 224784382 620477848 373423584 452786349 774387072 128317275 66977534 917090887 929798947 686851554 498350218 438387064 281019700 716031316 796929241 83154521 967256631 225397156 281468658 543779266 587917912 607529182 114282578 466589188 45767454 195643913 156983963 291177908 949151486 737842705 720925592 698146111 95182321 763626034 586804326 955064644 644869146 714611850 991098918 490379790 639739894 379625044 114210208 201980142 616706851 247512511 948705579 905154590 788460538 6545962 266599705 892249900 517972961 822698799 700958448 916962498 983512300 697922281 149822846 56590522 18462671 538822289 537499835 367828130 347690089 671940479 468432807 915490915 884370179 708715914 943309638 47100701 541508691 453120107 990442177 681016808 607830596 820286686 809037737 793056577 528252090 334941147 721467858 223338934 304777774 549329414 9699927 802057775 390737821 240755555 672249219 69932409 826005570 882880314 534712519 853774785 760123882 501175819 61053313 712261137 706774794 745381925 504064946 710728660 440277942 204975958 410917808 159354272 73201308 173692513 52674120 187849073 522440542 811816138 608537964 993835836 176641100 649480908 295636121 950163723 89900306 299892526 130436498 677258047 781603327 398251181 935964014 899738668 60101625 444375378 379474422 495713814 900462100 976228276 220040415 577849989 593415204 460552352 615997728 973600492 291002077 879738199 804560925 941967156 33128393 193875454 616139428 184190007 826078178 830617020 613363987 529504355 546294528 231750914 408797759 580220739 592863358 65456385 108834782 725645567 975131947 623843483 108766147 405063437 360822527 371429205 993336431 68341256 171191575 944283442 310324139 432383995 835418927 349145283 173609553 706257200 877437755 302930961 594417436 422967001 861370483 776237819 679883801 887490592 514064205 152512502 430833283 63395052 259854216 744641544 624527856 407799524 27221097 845496972 178572073 900222085 609652914 339532535 373006268 234200636 839390059 68908207 891629055 241782710 369249489 461541978 98119843 166789724 898132555 872170202 315215676 995371655 190508843 126749885 114621060 592118360 145075210 840478502 274501305 510224383 966015149 564775925 488742050 511024905 840719470 561760063 435127093 580085005 78180884 998257045 890869231 932789321 35623972 329268498 87093607 8172747 351104298 12579426 243699465 72611897 261943266 494152481 476281857 259912473 744076121 792673510 337075648 557730525 328766246 910728343 796886263 495886123 21913514 984459546 957290194 980504642 436600513 106578124 923811720 846560960 531426238 965042157 688409662 461025857 982590397 564761916 256489786 356950113 347322295 684395517 330368835 269994400 702320307 744334718 848336981 467192956 167120477 713711511 324227748 940902655 881766782 341960018 366130668 446320838 737573406 72098889 100240499 61518336 47118148 229833662 362188522 268897570 248341375 246701756 744044972 715212938 129255505 702779834 963837065 370089670 229944742 985736833 550603065 903162984 74923232 753434008 113704821 102570284 676277040 546246828 288568271 977712044 777569921 33937202 513662925 582388888 419719091 493602231 128485212 742542848 148202793 782682815 855393044 267257738 91265939 106765197 655169305 684315608 953258077 948376846 503075547 380721232 924962987 525505674 442774057 460830423 657678344 321596225 212131751 663004175 973289622 183180240 840396207 83505372 550151790 218482835 694075845 167135309 181819991 322912040 70090930 3518630 946244286 87952219 671527140 817463468 662929894 542797843 761269827 986907174 317950336 739891470 454087945 828482301 773475906 296917520 261884662 289507622 606338827 353759035 439806446 713150911 262205973 265486890 588937824 636986891 548229281 484672340 635720726 56798770 604208761 153665684 290994263 710132895 16459015 164756437 335453240 514250207 781073563 497244688 674664636 776353584 986614286 514495798 278602663 658516011 894499956 723002790 504754508 191256407 381325837 437685702 987894677 866264947 32873534 389299813 398961495 447097623 174579630 384099762 689856788 9665698 851470835 57660965 535546478 821150680 197263756 719452284 75238625 150736386 115432019 438508013 847475310 213319214 30654041 970988911 769557569 142511538 385682954 263804468 555518259 690246283 345938060 136235057 712980931 706845567 502774989 125513880 376175938 758775411 468241798 734032250 502298329 843510321 455742658 648050669 405135439 271585847 910039760 548643305 20738036 318247681 194517304 424289529 247537806 422929147 477379221 809508327 49299147 311542476 890118949 704048893 611492524 770448056 405343736 439413842 816162501 371829709 785215554 384881364 431653350 18896272 557009698 157869000 932574522 151429500 710090971 58838564 160874914 847795413 652768312 680687771 116198201 207922229 603383445 277711398 744207993 752952907 442269597 436303121 654574404 30560529 285824056 259399258 687639696 136186053 781784852 713296972 883020603 406370102 800560240 889125012 479515061 548852708 236043485 68543770 735972683 99016007 908213569 473521282 631328913 832087388 688444957 891404618 476850086 851302687 735346128 117457616 569423059 197186673 631271286 613373653 745592989 18580277 767067546 639298944 630655450 591504364 88053551 261171168 23316215 434321833 845490700 108412381 285852353 747678057 68195263 465712857 205899172 947758563 147396754 110554886 157931756 913794474 62264435 121267724 520423879 835230541 197837643 920790169 371648882 460304807 434700940 602167354 885892564 944471046 930658189 862460090 848369639 471814679 294058226 938521739 401116028 567456620 510636069 619268558 618628696 263414009 413391103 422436908 384234290 527535178 791255196 40238444 197532740 890544697 744024686 339204221 631848478 414872601 606490144 224321067 97422821 184209010 291922316 712150497 50698450 702310448 691145138 560089008 934877261 886512566 462615006 53177282 975404485 70031040 805774423 603484872 91923345 704339509 274636498 734689699 352881341 440905699 995639826 709735511 321138886 740315819 407422575 711602878 396753218 454429635 425769026 536230998 59006523 768903072 655536664 83772476 495697965 839231757 148413869 803826371 107450777 925420483 696334411 138553934 371154168 675727512 473138527 552794080 221560829 822129238 306346712 139319937 307492357 764002074 438034360 739773358 596658248 717007325 695419021 781315423 268972879 84408948 681133127 714962849 608362707 411003713 811752758 709112295 132808646 640268822 20452914 133759839 92632025 348237574 891631361 807733154 213662094 516568032 935794344 542389316 928280533 478955797 546824846 213599430 426738424 552042015 713400157 843070700 863620256 904404542 925251378 654135279 497920886 394640887 39073709 466207061 992694522 350071958 288212742 367121831 569835289 23666445 310187392 932873066 201964054 751898081 555892155 457501905 137387192 77119916 522316463 482756446 29217966 467485005 892777029 231969632 234567144 650668646 131421337 641187088 342121671 78544764 779489274 823199 558989937 232229809 817375830 835712502 992642359 45406179 476453001 535023023 805199554 851678718 332797812 214169554 830901601 733084895 778004857 584425624 516709299 946539042 401352140 958443234 670584991 284856351 905352574 762888779 46824941 545962088 414244926 605886451 934381397 724621932 873500068 765220719 798323554 146864460 839429072 811540093 89458936 377288484 657078896 597610901 72492493 736162657 971930730 98482470 297728408 524655832 532317350 130415004 225820310 963041303 255185012 505353424 777536364 313968579 235522694 21776709 170766954 622290029 470486207 356270224 837296603 553872209 910970286 640198936 560077581 945714010 337100183 940409862 746765873 221726273 378820981 7948547 922706940 687573710 464844742 207042053 420962987 42604021 42277076 484095734 627223270 913485753 254953878 609531341 678122735 65409521 213770645 832155169 222739303 306652151 146673237 322212896 5143589 457126945 615999063 690871517 445725788 495749413 735076835 540470341 625764338 2121508 306692941 584928893 893585881 636513225 749429498 34418282 973260549 302082504 191472111 209577376 590280749 214954764 825297505 980648214 182604561 815894863 26345890 158227287 914408526 357976855 379097086 985843030 863449387 259757747 506735560 967872139 996991756 417370636 528993168 695358221 763135810 865505031 753944134 42160485 51040627 38324786 827622968 225027106 481185722 858830017 588202670 977948570 262676212 654618229 520295870 962659969 638796245 106208887 381366581 471120430 1121268 539254833 432204268 875018331 743586724 340961604 738446508 532610388 301523339 71331482 493271545 162120714 443443808 816528941 846685559 3596613 999479005 398284796 687071297 588947304 350856598 267092815 178885862 647621008 287654999 785414417 333349022 818041500 913781950 417751318 414762961 769767308 253293887 321407433 227373716 295471603 852828329 168827112 444706232 328576423 130967092 824565274 936405146 822568469 524641659 127831339 306047050 888697973 994549310 389051680 760073857 40940737 492228227 850594886 300403584 223513586 138364098 395967962 336858882 756971475 468428536 544685112 628247277 680610336 165393839 131145633 452088254 733842345 870506000 353586202 10999525 590502413 598419643 678334442 962322748 941715169 366711145 482657720 413362226 844606537 27507356 705748959 494554863 313823462 365600778 455918490 514423094 456251862 700859831 893503347 171210155 58900527 131245795 174592650 557255765 911652511 309247612 503909853 266949197 364673324 366129223 179682090 316528723 19283854 643244150 654148971 897669727 798915370 104023054 214573234 315295806 370583786 965848570 297702996 167199313 943461974 297954521 511059474 544116634 578367940 304611707 957807007 585591024 621675481 146933633 76906324 214498995 333935594 845837761 79250738 757731703 56023187 110757950 188704618 557846401 411776750 467870836 717704351 34949176 476022541 610952098 347845348 862315911 688702906 30029062 697857416 527071672 744683549 832309300 81728051 97258085 525330207 359541324 160927075 263857917 484046366 794305242 873085326 547307111 280841166 121283725 249345524 252257329 82869171 560299665 344096108 321591488 526779505 69506584 868332107 285001329 511232749 467138401 898221578 506664012 382586926 36502776 319509648 175887492 997175076 721209328 926062800 666021259 746625815 249852889 548171143 185466650 601324401 789476192 34711639 85079096 563064034 630506789 139840424 718308373 544425764 560067423 405188563 108763425 13135751 812958478 791575129 265546105 241111971 198723211 399009402 144676489 979582273 882769606 759526154 144013834 983141448 747610366 123099420 13875218 337723313 600660390 593315866 752407300 849057653 184071682 133709523 497870498 594439870 199067657 29234847 530767665 805580894 94121240 117485567 706441060 121378606 136465867 897717668 661855978 939329092 347754093 294468290 105018560 455710324 443417423 775118433 913442561 18710394 86965003 506843440 427222050 987692772 566310645 199599858 19513201 956368140 508381770 298200288 833389359 976929736 272351933 673346893 334639963 833662481 140346422 767410757 806630965 935695179 92402576 325486091 964070587 543594470 287762192 473207535 863273380 264574945 574170471 118957666 240433045 60897567 112397318 975930307 932946016 888626318 107431186 923380021 45381379 760197748 753741433 697796926 614722676 636028687 406013389 971472975 892669067 807171860 328823933 842295807 17067164 232996245 745200394 37934986 440248575 147443223 811568433 487417819 707238597 563990788 711632142 898312208 82375726 436339404 102042098 684758349 126027138 387297861 758573828 201069317 977475660 311044296 511410079 475630962 63117667 565700186 225977521 835761797 173031261 869787910 365823786 231877138 638226041 640363819 88852058 731487630 394038161 473336414 2140899 420487802 579088080 911445534 557022006 539879936 762735999 159617341 653244694 125550356 800219770 919419892 973492356 386240203 561650216 312816669 242284361 794838249 405408962 798591362 195491578 255497049 385168695 765442607 340625588 255533770 289836625 93351828 383737454 268268739 960983108 672017796 329681121 191971917 39432325 144398705 726269647 825421663 498938119 489315110 337633873 139850992 6601118 720662427 400013571 56474889 391606413 528159129 740671519 394895420 323184796 336722656 195050444 294391718 275689144 188407688 696026189 412556327 706018573 33476903 379470624 785971880 212372320 741888619 531232631 626557843 265323632 748936138 391898638 656077347 304353129 489192043 788849490 915391728 945961458 458357530 257451458 838148106 28081431 18865515 199936321 487959695 235322702 120413749 610451778 764328053 603185844 446009342 873542860 652634096 532597898 232208345 782293619 577241340 899034636 804972736 178099490 648306737 207725960 32279084 848577785 698571778 803090846 831347002 44306458 234068870 286464964 652355850 367401538 362659191 743439740 149229161 240624007 737796984 298146113 550497294 967109554 798080078 794724071 990596890 208510198 668509758 224646021 667838768 80797737 88688978 977765080 600865930 218981253 436251647 600588327 317658381 97747695 333422842 684076519 817054402 110358558 4563354 489413918 360123762 9695457 368646329 341519056 314110760 964043335 88184518 880050676 770690290 478050635 12485540 537273102 920823110 213828445 881568661 472393730 669449692 432748859 499936424 233720779 341118763 353970593 618163417 604202939 294242912 454339497 307899012 306488050 2036290 493066850 769637386 233272075 798736673 11895577 109501757 61043730 101925477 967265240 817981202 202020217 559515502 882787576 613297266 601081898 976293787 749040733 989464022 48851735 8839358 487678370 684636569 788201729 647337366 158692014 945611820 835037598 863090208 60549655 614080364 579956253 35522616 627192781 65803476 262858378 102283531 903941148 688415937 444409169 371175900 804207902 673881564 284848242 656840572 824424279 728482923 797604439 171454008 941491438 156282620 688334861 502386158 842068402 895148588 579416159 52087108 283322201 311556617 665976943 626048159 974604796 644033018 343501782 311260291 851432050 778512675 904998082 552460053 256335522 472055631 484185630 312263744 753384544 296036734 321114858 633570432 74940284 304104701 45160911 738093630 146726597 776133849 999972222 81443446 597240431 25911980 444384163 291050317 394919830 435058817 336911576 133377846 536553663 985470073 742349521 70370512 69976899 396703444 483155606 540683378 421467021 950208717 985024999 866486727 814983130 184174773 293003475 480878696 675044559 815273747 564359633 661231118 636235580 700843285 375106113 958052758 134762490 411880858 735169324 4641260 48503597 409359510 311314080 226089926 119456237 680526338 19645287 501746838 519387261 939959532 599173534 193569269 969068616 252763121 894325347 395195764 294925441 869483992 981763750 116421403 918888524 149305758 333485829 751688233 121656573 969689675 720299656 138813884 547789648 848696713 570932941 945453254 548507800 133218568 386133320 47088771 149304906 213710554 83488994 727837166 799018790 588066990 329440661 791499723 253938285 575897549 369861509 345486305 789207250 328563108 535317736 993782972 209500459 409040942 525504699 631146867 786382937 591436437 408696951 294935744 564939713 749529916 268871159 958952757 37441757 88216896 513180159 778644831 217414790 304457218 25225624 862557910 902653310 590356329 689156777 862120943 191184129 583037365 305998040 18315422 473114706 682043573 704920957 395498453 581270211 366539692 36260752 854029706 473897570 22133632 759643232 714685671 651035746 701344465 451105406 501088070 371209680 600545100 183533650 563009257 365751719 86854261 537899254 611250663 792093254 270765531 444510114 966214749 533970902 429871373 31158555 323876460 637857461 86141811 89491562 736177460 428225325 770470486 586233153 409924313 388626257 869676206 268194797 421796689 340803916 722198144 266821028 941860885 196652643 815066627 159611477 235345169 701933889 860451851 893009502 761213225 199752062 215047887 230112520 171370605 770802764 206083124 368648809 79205038 149627682 613359160 597938957 72079909 838548040 749832217 875242915 555511574 906600506 533686443 57512618 832936141 973151285 674223459 868556181 400543532 864826090 400900496 816197668 476365279 44807876 614198033 861801197 222118907 590990347 928359235 340186646 619903012 408464096 366274291 698865744 147876630 229531468 263483865 737497065 793378494 658900900 280692247 136492922 355832747 191342145 25872920 668280457 750947738 89352011 542451819 977173398 454944125 75275694 985419001 45046299 582790937 670616005 780668666 183925486 821126767 430567573 43869320 98405183 963206180 454739946 938652596 61170744 691554160 214999722 585711965 633441964 791393405 110903776 199732010 678277487 359091830 953790197 932345418 982279983 250525891 416475347 866692516 418630239 320772124 41446621 936957208 691001810 194837063 694031311 201318761 545057790 949270030 497185845 518360997 109943325 623758878 778249283 432145626 129384372 800588081 5430872 660081302 292137316 184913601 704338712 323070998 827139818 775780294 672551538 590105605 471277238 778184236 619289289 476546424 492103335 610892462 442257293 400637278 808559007 48317268 110319647 106925755 31015896 548247120 840067504 39944741 964264290 795816456 501205135 638856188 96705214 716574528 800407206 70013975 44421727 862678818 191876743 347093183 434584036 689779544 210387521 727830953 392122688 849839702 815406333 926146689 854959745 229926196 606798361 485296150 666557816 498222036 726103417 962190201 116047070 578539302 805692334 596350788 901666286 966506226 711516778 564987645 408933525 709798215 743664226 117365022 809481190 394001288 470450500 997481282 496657446 144230040 77850916 784667618 567813065 29261609 568889153 278271462 770307031 590312976 855936031 284275796 381886314 652328576 643857788 490438065 421851120 268355069 712231242 287227543 567864574 299797627 950240306 181921639 107409265 923792267 176916027 905538659 997614403 929233646 750482464 336507014 891621447 405544032 224560239 262757602 880382282 473482971 958479154 177215990 307337334 953294465 239782096 718020574 551084776 221955376 843999986 849248467 385847062 291373212 194692214 685538047 265627049 660086339 796391456 971649795 959708431 934978059 830318380 828259525 575774073 428644982 921035218 913513754 157900913 598431038 14319423 652047489 513977252 162170418 791382865 304778434 275923681 437799126 628982423 214645908 941633056 652893723 439066878 43807970 457820275 74332067 856449409 382683058 522115413 878118425 420602190 355636133 363889557 549133624 405837122 168421114 59186506 875541090 843153138 845260666 269902898 161445550 323962771 715258010 423225925 709610597 998869431 473342773 3428455 791371473 529490490 490573162 317053714 204358235 432040144 791376945 920558528 313355312 506582123 95107213 792205632 319581543 74282582 169404087 451631983 900377063 301718765 841021552 625665016 126630817 939995983 375209471 925627769 21595166 745909076 409294686 546257774 947766140 790644129 933420664 2283498 978766910 227347154 600368701 283739316 376083692 71917011 248955568 776919392 896772910 983734708 152910930 633093380 250989156 412355373 506456165 12970260 677973219 332131094 198185912 834428398 133877893 588909057 92596138 617314207 29790559 330754007 991306430 442498828 924266825 517503643 703616483 746931809 623896396 1495966 923327656 768071779 166610591 740664113 108076100 326961972 572386412 702069273 801919312 133278857 819931527 854888777 98157257 167423753 555119918 568558566 322017233 16321521 30463186 540866701 300236275 824410592 412579113 433698327 603094235 117622055 254666290 933586178 363444747 145182419 659394111 285015775 986001640 364885587 575324743 779351727 925825316 19667521 782946085 200928909 4945478 499724150 546435765 447594664 22053108 763510817 612106831 50958696 803084329 605351724 613077735 8743616 586412247 220539553 533162019 404957312 129501117 941952483 546535370 518429334 794807441 791174179 561526227 833643027 420519663 261574977 759658278 857285943 8218179 775497032 527000984 281603925 400238540 467293392 430142475 624441499 96990376 140627227 748221763 508605873 31146398 464758955 834412538 723447996 483164928 510332310 310081152 257979622 951504156 864582958 179651503 206085197 540884136 722095054 969777974 780312402 600517854 536965862 670247078 57682639 413296712 900562490 697287513 823164464 304351661 356971599 375514366 447079469 47635206 281409338 903073461 659240715 42587779 458023393 434349200 204402313 971206616 536880561 537133255 200346395 202809757 613516474 282770119 861128401 296487800 916446903 604440486 155429793 255739539 997796634 804112805 786903330 872199270 658669735 205233837 819126954 834409411 475077637 956967513 206100119 135164456 293076090 768448003 689989043 361833243 526552873 206811671 944762200 127512358 9889653 637189538 892160661 477031082 10527843 933684435 275561831 665544382 730356197 788763551 250184634 99808003 439597254 821119777 149945881 165557369 725582609 71107346 869981360 452246824 850182836 162237565 75885213 725766608 838652042 907459607 13499134 211778083 291815488 676168948 787419683 964065476 346959851 774478074 212722668 622390505 555661699 504569474 342298921 571082008 585619647 276107232 183098109 336766996 399701843 165192996 954462301 186162888 297425844 189516625 574323997 981988969 572169859 182653844 21443618 797716645 106276362 776230108 121041806 861295721 834587334 967939030 346992551 284860654 2077125 787467245 848824703 601990748 696312841 340901625 609227098 210490113 655225893 486687392 537373059 287672460 231576977 783862188 189226521 31332991 692839687 311983947 127591888 716600066 593249567 596774787 112620940 527349736 28131443 664607988 346732266 821070019 903053850 776474491 764452744 684085571 850610094 580904325 288068790 70050971 428115577 164188851 263413121 959756473 5331381 759067047 982723746 235485178 287024001 762920070 474253742 202481299 296736873 184375007 287131653 885154218 645865155 387894836 356899624 298969782 309840227 478574333 551064381 436854185 35102413 680095079 35780542 505792708 54337405 203660659 40284916 527518082 273004598 436562539 997666059 225303572 867103515 661925342 727108220 639198302 662949773 543928066 188288714 964111049 938065890 932334578 827304847 207423166 91077169 7025118 591546549 182498139 743776522 801325171 10645295 164471571 471520721 132247520 459683472 177148852 320227925 540254110 367294310 411846151 557786114 522486394 703303043 157431013 37174403 539776980 881393922 933232957 671004188 980937631 993052786 304237392 435398579 344002650 577026305 948665939 412162932 575029882 930367697 344210525 891462658 297220632 234722694 441073033 547285265 986388056 44487681 635360611 323282744 848851954 739544421 564196276 481526471 625159400 257691710 349206441 325116330 835697459 738532590 905332395 552415398 234492753 579853468 449787496 174855717 353618669 834487967 963600901 63096193 396152533 1905183 971107063 835026218 543351094 516922039 470999831 996996031 448114251 143509546 758841916 279483097 167760802 909067524 508530678 477837299 168430719 65453728 505187538 724586886 120816641 789923180 246745745 743844436 703042928 791611285 987268291 756925731 488059950 274683164 283554299 395729614 118765940 497100776 734323251 355799014 287583160 789617976 944399103 978762311 615950175 355046038 849802715 728640509 635439847 529926952 24674103 181585274 590017072 431381492 163922166 161395424 509403054 436511838 461997492 691850617 624308834 992467442 632351548 580159682 916746262 70840306 138963311 866648697 824539629 313512781 285355562 223037281 619819207 441200638 366839999 538817425 556682781 592003929 541116186 505524826 303392681 180874242 378836726 772918501 712845593 398039254 181239275 994111284 179976660 789720047 852499306 191649 939793957 826855042 518032431 841395102 495232746 591282819 840457580 119986958 143656243 464449741 174612305 527694436 816050004 814388190 603018284 528148660 975730039 479051633 677624240 478864360 965265011 640611779 70179772 104447785 539600590 523383160 928898275 645888696 957143788 690609329 615187257 370601733 856173506 572416798 369950151 313851585 140722877 234552736 78473811 678267230 369124400 930951039 653301914 834009428 839451588 937593796 732134576 136267267 446450916 106728447 610280167 91578402 687652872 328263820 203792157 247331969 835377954 524880811 455417285 182977767 322210837 560478760 784013911 79147439 804591433 289059973 827809815 793804148 302985890 266913678 950267688 712728132 220226753 531836868 505086608 791602941 119131618 31566883 33597164 704441997 345025582 813048320 914804945 292895261 388704364 448463796 495758963 484987801 204776687 975267653 916318417 763713399 842511789 731781485 509561080 592179264 747239610 263257977 820387462 44348262 781838400 829446966 287117533 685736191 251715940 866501035 541957464 770637100 130437166 769055018 690521259 299002887 925106038 18989499 299047122 409739795 172153972 131386556 23347303 728719434 232587106 412321339 268476231 550817906 193603784 619909131 337274432 355820893 241621866 339480714 769181701 849432425 784159714 766360121 478630998 707217405 117348243 871266501 790557141 392167666 865666180 47713981 254724666 757702005 380275734 805868404 42962574 595405085 824290048 335416698 594546950 893546630 46725767 309259030 165706447 300435127 451979661 398830183 620715893 169354654 579553240 741358347 865806512 956774154 509719006 859528023 836379788 302056914 56221456 493161814 872261478 722715435 437499235 51593241 982424531 569319367 992394731 736333542 175547096 898022736 507853665 4670143 760065163 327583598 438432816 274349915 119960250 395813730 115720770 877591213 196394456 396297828 240868292 664309745 616200640 417203957 291728029 233198597 367229771 271846176 330918051 958749319 694484348 52271011 411324079 29422207 76034277 359220266 586532000 527537798 279468343 539141218 961912040 761356119 42247101 846719951 790283490 177075704 229217242 735596041 101681580 83021542 779388048 651010511 676724229 32947605 835016444 963683165 219954179 260552604 557673469 559938483 693462597 947469433 756844750 91322014 520246964 162317946 362685776 992528906 829899031 950527886 860342154 479486314 338060088 944208827 272464437 773717854 675150167 656382292 807296776 514868090 63653854 311266469 61888827 76574652 350486324 529119562 364790296 277053159 29203976 945708235 766173090 518902397 215506009 980045311 811426915 29122875 878394523 394450025 461214166 974375811 505238796 481416453 83098013 967661593 190502346 341300950 606871190 476692711 382275142 778353022 127950587 169450469 832792558 256856817 741072703 584761706 180948101 517899615 648052289 131816118 916624364 805211947 562341022 812542647 824657867 141075434 273312414 276479524 606359014 623660085 848180954 644011565 230305130 816376158 132354975 388885238 321725788 565335619 956289672 355215597 487326220 601995170 636509086 7783821 32085746 312805130 310585147 774910625 596992294 821653768 581421049 497028406 491015156 383210739 30230986 737050937 231972002 166511295 798909052 896811594 788687400 729457908 346865752 442558059 842089626 533397216 261422439 876679441 716642723 468543460 353832254 16535863 279476718 767203985 258044024 980927146 567638458 243089722 783069510 79114919 330729802 939807982 778976313 276944015 551160987 198039861 740813679 705861347 933958742 965723310 589741038 526941146 251038196 160941988 364500775 99539982 506764904 852327316 193693094 139898999 481375942 854495524 252337376 893536025 723193596 169785693 483119181 574306784 796696554 673660680 980463150 512012433 979203514 197394358 338321022 679781691 581488165 815970788 274247402 658109108 825731793 746533300 12763368 757883028 923003693 47916023 762746214 418689168 943487273 686013499 880421336 510913627 75232454 180644592 227369510 194988370 794227263 634457783 973048553 188649968 897758031 496625121 209132719 832383126 19078140 306411871 693943959 481316046 686289900 665798895 150870312 881375135 60781908 561954883 953511272 789098493 848761667 726483462 598537469 597853927 278674638 886747147 527852159 654414544 752704640 488327580 325783197 102323087 696532802 50696637 425548992 841461249 781963556 305954065 410538720 778657961 24841746 932331457 421273602 442624193 863471202 367350788 228345385 148955636 747538234 579606666 574558395 401383850 682390662 143764831 449342597 178062439 58115966 994003938 55173372 917744993 802151193 946736110 903807807 314555757 865404594 773507507 87119831 783866565 230915851 219575838 147517935 104513272 71086461 780070546 850145072 577344429 523801655 262906126 831036924 876784806 660037898 122427655 236926470 389771900 958958007 637909310 298261517 839601996 207873223 375336194 462628267 798886298 100788008 625939709 630565601 187690130 847622649 710140931 704437305 488584143 527179927 187502640 28678958 716995276 898437433 324086196 775670655 681784437 59995480 108162407 561547923 350313267 861560415 225904500 922587299 775521640 902880328 352019906 266471629 620645797 648328783 161871631 429488552 543061831 479554161 157120399 357858096 638994895 105806573 16592769 950260774 738631650 450311302 746360955 766593242 819343484 58286491 76857287 345946716 227617163 142542957 161849286 790683029 801649399 659369237 984864784 882126103 647259180 706682402 940204681 965004494 305810646 49620464 856218901 341823390 867756436 357790076 70469681 551643070 229710448 344173241 727902400 353004619 445287917 716917763 684718889 759186433 748648037 254732109 370714278 739876649 369049579 781381363 997148722 49618124 344166572 669544981 160541314 460865201 300850423 101776859 905409134 228125987 866072035 159713990 507294409 634698597 550421429 405002391 418807048 234547290 840141222 528660299 675461289 742854265 271274743 812018616 599595629 66683152 440963587 929012554 505640744 965748242 63951066 819304980 393008307 39921012 416423763 421036711 307653481 208162067 10396076 971681401 450437426 430611113 57812765 818880479 482901211 276732588 272571467 595417556 732440895 986974943 738845737 38475805 387417456 836979895 333426572 462201552 846533128 819355841 144618505 42670599 475026501 448797030 748102628 341439593 925969937 733513111 332892826 41116847 182262090 352353118 38127708 887251913 994449385 266286831 662352661 539900497 795814518 606228238 936651662 336317560 740437914 804889073 323119756 855480318 532787666 434077371 294453031 495315150 523728533 440221855 366636125 213725563 136993699 721705888 37752230 281185787 514320590 781915570 103173961 389107597 162956277 591491022 814309808 825664923 150053151 93052961 257801504 263499441 301799381 615029915 664178390 10247204 955712107 955320153 566178566 368434443 526901663 258162688 708676804 656021134 121422430 548423728 664937216 166084710 757137556 175129603 916169389 275246254 116851322 404616993 49293280 53856346 678203394 47099497 813030872 498163336 760127314 697244105 486898937 134812128 582823570 199841615 64405617 148089313 519433149 799656858 881120616 843874770 344363986 366002715 332791663 498119465 529265565 888778927 492393900 999366767 926087099 770980045 948936209 645046876 86195012 908041943 143897179 17878841 410444391 494434717 524674405 939191706 113011354 208153783 643094051 33480922 843644364 908477862 647953313 730293623 199484411 892055544 401257441 410368507 837893080 184025834 306982971 272082416 17878715 882879054 541325940 850062412 546061675 816784558 727470683 849448768 728104636 881390573 84569491 732647911 958620213 906255815 385070667 961434199 867840664 883348367 729627847 53275212 529062755 77411900 894253688 806454753 184666127 254623073 578054938 489411471 371228816 863499339 503870001 485959818 813724848 366934465 830026906 175705818 140176550 241771720 253408340 832269500 864013369 901981503 484436611 981384967 858049433 384320330 897736817 169612179 450456262 396573850 10738727 139526326 652908240 433198953 576011329 498172143 711609601 38249987 356499729 825013436 986162206 639156787 286680929 968470219 809625163 961871962 887379738 668270013 321423925 801583050 768044416 387368708 77712157 369662151 106659935 56697000 519427260 273839556 635427113 672047143 941894926 923199694 951191442 435423747 856999432 766531549 384990276 603534555 884391013 311472449 564981527 357362604 783640123 863744556 485597535 676888014 105299521 528496995 655915756 237292220 451193953 643905834 949583111 107089344 443086235 994374599 198815325 71861223 77111561 88695844 388772507 344293985 565790120 571229680 513999345 891649690 280607447 892973939 173260587 862964269 117382418 787947162 791090709 254545541 478032960 375655941 520980985 816944236 132864106 22252781 194022909 622090572 33775101 572880302 204672444 501504692 465648847 198278435 161460993 164324943 964491582 382331659 624389172 451275394 92729945 709428368 311151154 29319906 231884663 248403598 685567102 141083740 621991812 556249985 952383453 867593145 161223708 89978421 832620446 36636602 325615485 146272318 289359994 54564604 494471363 424068676 889354038 436863833 276052301 28984784 554089844 272123528 373491351 541051681 307256484 264525088 917181875 751797596 635173688 919258089 86650864 295888349 826532838 399741238 270273920 924243778 12032887 644484941 614703532 325999918 156398168 408600045 861817216 918342020 133080915 963980624 418192979 653293651 116526402 469578867 584998672 658046247 499539207 557025658 107619873 895808715 164531314 680110938 979995770 104977502 115595423 447287956 567487714 23132593 683703712 365475936 906842328 960760227 92992288 845537168 31939949 855527763 849255415 398594268 632962695 241450132 173756980 402255529 491570674 772276974 628572649 108198543 92417752 575690594 158061133 779126841 158293582 254298250 39121149 203097903 169790701 880597965 551410378 950068307 434104035 64019856 455841356 574262456 1162347 820446336 779353402 899882874 324437380 484932011 145608310 468477340 74823601 559506165 347875972 403889130 287064536 863131831 81732380 612274844 515592586 332985492 630197808 978704136 355302897 29920018 569795666 677212138 473292374 977666366 707138609 288360986 112055021 946069718 549122649 321109961 328101255 906649776 29120967 188072991 369644574 446444411 951044725 610748729 447189844 814707353 627998078 59030993 385524554 806455863 860702975 330194989 968220480 607976413 997311891 699655024 856179143 957138877 856943164 907905642 382399880 543377595 140935448 672253347 158069733 36914693 130929623 750228034 212820645 6777241 905075850 935826445 937641170 217849903 305644427 442117180 224072570 636331058 988027117 66803298 676628420 451321361 737749100 417969770 464105083 432799130 884026279 997271090 292290475 421232708 139992208 145137866 501566125 265232300 818494951 787224944 214113799 890196815 28994914 125400278 443790750 150611413 176846468 762044868 85354833 606608411 69872385 138311055 116601474 967890274 928148739 130119600 261922120 679373044 477143742 381543500 41575750 540101031 826852638 700625184 958998139 871112995 874655196 67980251 333457326 902451324 540993220 160761013 19494562 394339293 383568832 841087040 237640714 932038548 53768005 85122553 589133426 932731554 118811462 554239461 203430021 163796125 210620117 64166863 199969856 418122452 26559453 963441609 690969285 23471877 779558825 201088554 863927345 509066755 204065356 93345485 181678435 220619017 816714152 943702901 90528923 217958902 522191316 556252761 163402698 819216572 696217499 445888056 299768380 771040781 871239172 598860009 487706866 525074894 545564486 245195826 663816395 4532389 866787606 518078790 7036704 415037907 969351024 581101043 577817303 467417509 236505889 691854806 927708113 115383945 792730229 944355051 997356809 848645172 890113801 66551953 551404035 711537535 235224642 60249793 514157262 558949346 461119699 918896471 264341180 986063987 397366130 293040309 193923676 589274006 801386335 992203913 9915819 952849278 417596470 517487962 55253288 756488736 74371948 617142848 996961091 84409320 563085021 37199195 130801592 712560624 819923341 139583289 988401032 549588013 664928755 779790038 439853406 122766191 663214651 206164460 297987691 711562846 507187228 321186659 379325878 766214314 993801973 82492418 175783047 605003828 154572608 57523428 213656403 860736466 894376312 994881983 326144883 606686831 940023828 594392347 491157680 747511863 34630271 419320347 82947481 444167288 799716057 968358321 45409968 301196649 812927032 665123845 819160968 444166400 206210650 487987193 146888992 959421404 740500746 78391152 876731432 775932485 763978378 747629936 378366087 746485471 322204436 201696447 286430923 550546997 59724818 949156995 49798710 947505999 103830940 40196160 91218961 681119105 167077385 747966666 598302896 607436511 288454485 151873879 960512199 586614067 201318929 722127711 179152632 482020475 710563880 306652363 145864954 571097367 80633487 984528235 379285253 366739824 492632196 302762746 402165670 93281235 262694747 588523916 341930555 532646428 557985997 883389302 365525127 234539409 324785989 672126783 523930769 953389406 446846740 607738846 85431563 230685007 598739771 706211003 127844497 710517598 189094703 992260037 447656923 422873739 877739494 955194631 51551197 37836727 396479567 385019709 978422937 199509887 944472093 662572094 238771660 681865152 323960173 179347312 340489204 357634505 626804928 374761353 457778438 396237638 845993156 505146442 591444450 540567591 673908499 34169297 740078608 667534043 523374621 941621681 649224784 189183428 811894210 965203724 105092254 730913533 647030811 88923709 572310708 234430078 133524300 440720659 653182798 958941775 19419023 571736368 419807986 622527410 814190499 596379581 263965909 710142439 413057313 513238925 609627324 72516891 106131437 158808670 815167321 237075271 562833557 555985557 256282374 144664462 4395767 249111482 568808656 632141575 924674259 238896803 603127504 40702792 862068925 50078505 607654082 391674238 875905822 707143447 275064084 211833799 53218961 910100150 197286269 711270992 871451401 202651751 603062605 550361445 913948699 919079604 433515368 969486718 702433340 825091956 933899843 961780739 64928819 240218283 703790253 558638297 657567931 458991230 734354611 562819428 404145628 568199919 342060907 478975263 181955768 946014032 681206987 942667757 357857782 153098145 100052648 61462706 677501641 615190986 565681492 95610652 47779615 648373832 707955728 202633154 510275394 344003435 996296033 823681558 488853677 263869618 379121083 191167 403838982 504663277 511405575 645420563 425011264 98057446 316138472 879140256 215368265 959271172 989128951 139071083 163506986 424553913 783147143 833000898 755836492 720005138 592232306 383401294 735060470 557398041 394323472 459072750 621918699 307826496 237711543 822182823 433871280 710549394 946821779 618165096 767756704 732797516 193093362 635690300 462019413 824267425 380454143 470997705 256033940 692123089 310945815 89764602 124866904 918203203 746127687 123797103 602612060 186959551 227081533 323693844 67027670 162200023 296620267 665635411 254945405 645038011 211747743 688734017 427392580 321906569 629424349 990375478 877558920 843528818 494366508 794741609 921241672 19977332 584629508 797184859 517819114 962698037 128106480 795712710 176924162 887583201 316622257 878244557 99127358 93347355 709751458 782823401 520425120 780688873 240393531 436268289 880331689 356201234 790740221 868667793 407417684 734530634 860270394 514163688 865649560 15055859 484523405 544619215 297349974 612338812 62718408 609878213 507985804 476852702 813700712 692686605 631822821 597741677 603767149 27227445 391536927 570485172 255322334 129534801 107742373 887951783 594347736 891956807 942049917 389296314 749577765 513991950 550173357 983073753 389213035 921823035 885709344 777497914 783342489 355484232 943245770 501125749 824437824 514919515 689809599 215960222 950721805 207101909 67260139 429226098 431884828 83461413 921603565 413570199 449576760 138438320 17533553 341381217 321955682 373184340 939017304 65108302 202847832 273687824 201710663 155831428 102262463 176406867 685456738 258365570 275087304 359075702 665576228 85729910 785196193 252815319 24732453 726472749 413319247 233813608 70682532 452736587 303994425 985582994 341504076 486942504 585575509 263150977 150317886 585289408 614751994 531218217 865910988 885951373 570995767 64375371 68488169 564562900 546424249 12194781 617386712 386733210 763516638 83880191 207552735 506995316 486017428 769127774 996747828 646931251 244501070 273031012 93718623 345334793 607181023 331391900 677250519 759048976 622020781 251708128 273993214 722578027 938096082 244138794 931365049 658388033 321481377 868637593 779097196 582196968 477374063 547124711 145114236 553681195 663539580 472018320 672635198 577309785 828186959 19109359 72833594 76253101 654843225 467741379 839032423 681147871 991976228 18913834 662389857 730321927 134812501 147198566 995459890 961948832 790104474 593874403 637175604 831939658 953024071 35049171 494745063 913343603 622297988 439113246 538046565 26920523 955997706 344600973 122903391 652288047 577629013 324424411 203459681 821202948 727307381 917016194 878751459 90213684 480114079 419537057 893117568 776438225 219681552 84728230 20485136 516474802 347227570 586459442 863110757 824804629 852043378 131060432 22377247 867628683 99453172 67569946 43519690 567747928 66903154 932865095 329141166 361115638 461582006 733751479 529494168 864118117 516720091 225035967 374279851 558328014 935548573 301991054 691299853 643470744 77322905 808062377 747489743 208924544 723830803 644988932 719132688 315749014 612837691 884559366 19046570 424371018 619210342 458735242 198898308 670221639 345902578 186407225 353807927 951506214 370235329 146308267 362552848 795654250 281460079 743537124 725977136 275709675 163693358 900625428 420538932 648334897 602837521 687289141 765901257 110595111 615186173 6703973 913728962 722275332 310648294 81993316 41692995 839429618 626382582 998905572 634982459 337876657 826774420 983883065 360939569 665557869 396082108 60094995 827904010 430660368 625520198 25170584 404908216 297202163 486051642 486497925 713530718 271168358 941249402 390313722 858437868 121102528 314137946 220539075 197569972 565240030 995539063 499979325 330644878 307653531 986355454 249160502 937992065 588323918 632877935 52442095 663957802 26673216 708193746 879252411 134364528 717953838 766524341 588508216 506981455 493565693 342112121 853087176 465013196 739335520 346362776 100871918 607553493 201396082 633260268 1108018 662107158 506916260 511265844 3778332 472258935 710127412 542596598 642204360 522245081 168062678 386914970 686896360 711471172 553712754 718975231 704272363 637041506 135585794 267046378 981539941 960274046 425379218 389822952 202402364 402210004 290947378 366995684 285890540 588190975 939373399 813551387 174789378 368172626 371861555 155467898 71355443 834551677 117700753 579603088 593011305 553572200 913594343 188935478 291756176 557504531 833215592 61529108 53829689 707829767 617518126 966655361 699718787 877621998 882545073 307352529 743496589 792380162 949193870 363313393 870065592 93014048 996918146 743134895 174687214 429899114 202414958 232957788 37498140 66528468 909062681 281640393 942492953 404968559 17296363 739494487 369383213 974443068 673284900 946456970 994173011 170310516 686044501 960896779 818095612 391299067 727935478 939535226 453948078 630606746 34012674 130149192 904875413 650527134 797209720 819507845 429836122 304808676 727347256 176338087 312093709 10255822 381849633 694421896 128260915 267888316 14717206 714420538 319080113 306499920 999483432 926940166 860647593 410889318 319270393 755773200 499775331 14235238 217227132 2635374 700666454 865567298 842095541 540527666 252849173 727504374 789650885 141183272 369472916 803974233 332673782 945687509 367980381 98945267 411404674 693062960 769016710 421118806 415897338 983170157 523843947 377501298 930609116 412142225 939272129 132498754 578530834 34064234 774115769 790314638 322216853 311890224 994748808 962970588 595801442 551475656 759362867 951623822 541423792 164573882 300274131 519040745 420511929 551318880 186308903 620836764 367097268 220421059 260110663 345042664 247043433 727536550 71829827 64804760 960778385 140949182 197246122 132351466 796121340 769793987 201276782 91658979 559039515 512572575 367359885 122445959 183123083 765351256 615100985 720097562 274216496 100679828 839216473 170605003 516449818 304769266 168426477 950810407 604155404 596732519 182291347 761541669 230247576 325070050 394915808 141560099 119648102 190793489 500676177 414213063 358605784 231074527 470438438 645415819 303222738 690605102 21828624 631112757 481312983 272160774 463731486 533827073 435890539 530185771 169164212 691651322 506487672 214994198 108046952 971726035 964619284 782007755 946964796 913565898 385561770 938065690 147930308 192809850 266179195 7020250 998325434 947616337 885615587 965907286 400138608 402560201 731002772 212389633 461794763 600267557 981775662 69391341 281468516 677645031 16045550 127512499 298412896 883693537 600250669 671099195 967053215 749136124 179209830 744195071 919916965 527930418 860050640 53928086 299774820 287633769 504388636 538751108 466212702 586922161 684830429 546998281 287378054 834251292 8035804 711467320 149082729 439533619 374500190 393198929 283091025 416570837 71016325 580350347 305405313 417386076 241957681 308483108 726335803 276819577 185688886 263608328 971349698 905017741 328790622 349566190 823122625 548917053 416445010 421683311 383671750 249711543 566199561 895513264 743591286 966730133 496434583 91034540 578270041 332549910 875157800 8392591 20667615 359339579 440526687 46750967 605699575 769663126 981386921 630573833 418565391 165056075 367831265 151612551 216596938 276714277 605384796 878181984 200051487 13827229 438991749 956271821 604690995 509129320 493305360 429676217 489716219 897625828 579231806 59970762 597791531 908729172 868774206 460251239 283484260 227379968 51902739 180529998 678818165 613131348 997553753 532860372 570573787 333995330 186103175 353462305 878926888 631560883 773636994 386785664 646214746 464084599 105846671 646249610 635795818 273785336 840982445 697859780 148443720 862424600 582674540 741800125 955611432 696195563 62666765 182954371 623494259 77016076 169247167 754357727 39096063 470601989 647534380 229935138 961564338 321875093 333850567 492829933 26024572 142777394 299648485 403418973 408019667 349740623 469258997 698790653 765608460 301555863 452529612 972677906 96099877 461433135 76822830 832683188 383897003 76013821 981179844 152306928 524501570 888285437 324067130 639713022 178694102 942114415 397630486 671842834 113113363 852357244 662125995 884692078 989607865 855538656 322976042 704484921 392582261 134939346 689869037 318224457 203871302 992882770 581827204 183644539 466984361 928385225 354287563 842506127 189931762 452171150 384592745 948059826 715529824 830764282 658955525 341580570 503483558 18780964 449216592 310016270 390505727 656825177 151140569 994749958 474282063 165410682 722854414 371312919 828832034 956677446 149189386 462286406 975511476 612021404 308171055 376399947 865777792 737414860 219068674 480695482 918414899 387525353 964878991 430544395 932543339 25472955 185438605 836626039 179839452 275905956 911887200 858898936 522976723 334330664 944505317 636061844 276554465 180422874 250836312 483169196 369035085 668220028 68156326 857980651 524761229 535964937 494183794 480720733 991488082 643549032 371404068 768815970 181475677 804471119 385541913 832936653 898490454 601529858 15955417 985310609 770040005 494412951 685459831 878916048 228520886 873981690 722093595 92906838 612458703 264198902 247622009 891177119 616377459 294330160 5201072 565146458 669213293 384888280 698159524 808636926 212351156 249420753 354093224 53017085 300530354 332045487 945322589 436521763 381275555 274889552 972661234 384302607 248362527 509048558 671525721 324136127 904529275 906573169 366596793 830194886 338776714 527986404 968510951 222602435 929428108 19518867 858462234 575369964 408953608 898589852 157771734 180377308 729287720 406806862 150475264 793191413 599039211 678393110 801312626 137956209 829883169 260708763 417193926 71865463 603779209 879321884 115972153 996602785 17523965 503596102 215473526 645141669 810516333 627131180 347009305 822297731 238188921 608601511 711548387 670567733 354584836 612979148 6750841 642520893 563189458 505574727 144384818 737442588 783500904 933043677 630844738 74827553 414075395 492289389 623655825 827550763 858012634 70394554 847620831 294681141 244036118 681072076 280026848 209512403 202763383 957769556 529024824 132013234 696418330 943554785 800750852 428620836 589774545 457601887 255790964 415075049 993028557 626742880 513538835 138797493 665973468 837785603 317308404 604390704 644807301 525479929 45687899 620211605 463792982 235980651 360597585 912590155 395049912 534667333 293319446 263117379 970460110 673996982 421727057 232797808 238536213 435255117 804045448 681366734 395672258 502250188 468460482 893604992 945554690 495347358 967020194 445634214 374382151 615010007 788175104 296329296 459580657 517964342 89568753 929484861 115652345 306713902 252827002 527186398 336384419 130943466 917637956 347452331 997852542 677763695 69182538 369832552 23862687 324721294 567580210 314183714 914038049 518120954 816964789 125804252 663613827 494617591 446566891 268104479 411352533 333624665 729195609 577862633 536878665 499770588 238081454 748424888 897386320 418061317 68982316 475302755 726887244 37879909 611953900 105306643 487583561 191912558 563096131 832134284 106372151 617077549 834249412 247829567 525041928 199675408 511247627 179493974 186679018 796665166 724920305 433905579 701855175 343774016 918881621 227856092 942558644 142413335 620717601 265814551 718900244 366754063 885094613 410178204 544462220 907726830 164959497 955947985 961649136 721492453 300936928 340531456 292789629 841427512 578263392 783954933 353383616 22415245 21826249 154617901 676636936 835675113 367044893 184407951 249197540 458607617 153900838 594421096 355590575 362231326 740748652 151947362 159048794 984642518 893328473 672611363 753285559 894106523 184838420 733019330 316887571 91931382 688311785 610047434 117708095 122181960 299312680 821309453 988505829 323517865 500638195 709127734 15076809 747236958 663565571 420122575 534020862 659967855 356335599 866915487 959842377 943202890 733291867 605366105 224262547 1019843 106670274 978025764 341445976 966731330 175941625 711249327 911266296 469235224 570231362 374174853 278126331 96523641 83858472 879268666 143353857 624534480 434143245 353978415 265873718 220731874 622350037 822804540 682524044 330213600 157624954 119674096 256228311 798217487 769783174 973813128 536429599 66342104 987777107 166892508 78295321 27075460 943290372 612907706 373832798 53574307 160673309 825621519 138064875 761180174 99185946 657766544 603158100 895293504 614907757 223625045 621877279 12257070 906766363 773515158 62541410 35281358 985019877 491314439 984179511 760055204 486475826 63249936 775146 432028746 323931528 986503001 333239677 890870126 956658074 180063950 230616251 209948130 684192536 804233235 639404299 775977873 55664923 717637014 387641200 97814658 32995506 179626340 697868367 428679738 830495448 226689735 507039721 453176225 363096471 767377420 343981755 182575540 933360977 694566448 391843945 851422991 189211878 982637210 900601099 670681226 291174245 2814752 497191913 542990861 432798980 407032498 954559623 491226371 707494908 558090819 997409429 131026293 907976241 981093429 556450362 270381005 615965648 235531444 798496554 411044307 824684962 662712346 925557780 670684404 946670120 725439445 498793171 764728354 725557875 256729623 22314613 10827040 847229217 311451378 125499337 900888905 8902865 987934983 425608977 984537430 93287624 853280274 741991818 23156349 246306085 837875145 800783399 766500020 215269149 43207864 625281540 301179918 106995758 424828759 25263978 280086516 412226067 136102764 575238974 493507082 694570184 870549879 522151040 714154119 720899740 117801036 773473386 861093555 277772200 615320588 909535665 728306566 614902092 444177303 287397727 385215145 146651209 756400978 807413056 932276221 353482362 299522423 938665424 850529394 807455127 523059486 831380590 425772990 172506116 482429205 410499395 751455788 961905001 399611082 514228665 927195112 382106343 149127804 104198038 261040248 408624604 468807394 259412247 554047451 170455892 639868517 738102202 743207241 876046163 665242393 897072359 496359515 27205700 296752464 834038223 316171950 311843906 943074757 439112803 512941083 403040674 903194177 414032027 941667188 674351898 998617575 989865273 149605876 556099058 999110399 694645924 769866143 983124253 782779077 662574449 764624443 307501375 437148618 888633024 548574838 373000493 332952158 362290861 143976412 331360403 690104453 603143655 5813093 497989349 740051916 889780369 912080101 316856852 27770026 122962068 929652119 491743082 55275554 392955579 393134290 726725122 384085185 441120990 515421759 940804621 97295767 916752504 505511902 140228558 125810374 426247134 693252653 180743203 209007504 703058999 782778736 273714918 818752687 316624799 733271766 362912221 271558009 897534327 617929249 111317200 841853979 684578501 848846781 112863405 823606551 36842913 854633645 60342256 866711293 34963136 696598754 92454494 123964436 543126646 972248714 398173681 302566847 251180586 852561909 563422817 679667568 72506777 572000585 531820162 137913422 40773732 226672195 8462648 356554577 894574694 582780052 417458773 91352439 749565810 727473645 633745301 79571105 36484218 515694238 73314308 693160467 347782107 994652457 624965271 614041195 38156886 928299344 799825334 953450113 754797423 374521355 2681222 314969342 892815746 889993961 342878272 993793848 515548783 143023426 964218397 566669070 103907096 436212197 690920441 226167699 959789257 422181804 310144004 158533103 451031638 780379826 60978257 254027498 995305796 873719715 622213034 4443342 20143414 634520273 505694054 220214428 979456037 270218215 689380976 327477442 299901245 203562386 261554737 164911678 448131061 411532615 239211584 875711876 283114200 698795081 258056320 897120319 910656203 339015957 429612040 628765492 266376731 418122342 605381125 431534160 237968195 46595505 853363519 28230030 852053335 315999840 799719712 67949929 365972183 565875561 407660769 45486233 399089458 314751321 658808751 113184454 658261909 351546205 838751141 893146398 383370252 701861437 111261546 303843678 118999367 49754780 134938409 249457474 950944949 882237029 203388671 686188417 228035979 580029286 435162465 148342342 411510664 505953205 219492131 390459252 129934907 312813076 133179016 861442870 147331803 941927518 778691235 998857693 182223104 386917301 160169833 62235961 57743019 922271795 359295566 69587191 1637396 114871983 273760938 510469165 655718430 474110206 714580556 268657165 874275802 632576766 73032815 332102255 148762652 605275337 121911267 202135084 674127416 386572087 607866866 80835783 905775971 789319632 670350806 632524607 986855308 502616159 632666936 588713747 651622015 693858311 402796457 607382586 29523240 331609608 390067989 522048458 262955270 66651238 294363127 353225517 985946321 364974456 158104014 637804751 688899998 693219486 130534538 107933737 161808171 955671285 975974645 616173677 463514142 996305145 898119175 957395956 120940911 915863656 462140176 894704450 27030279 625470133 922437324 892786774 339011626 352489939 317891237 469327568 515302429 286679286 570873189 211299707 450718285 33125701 263741087 577828056 126845811 613286916 845188300 606744030 544232825 321403866 975795493 155045554 623485862 819569918 443863451 872384201 994031386 882667899 77630865 241872162 986473049 787191465 976207389 515144798 363852045 626519407 31438852 199753875 845871086 439774190 551990091 63124483 788142522 57054681 145182099 955710678 975052118 726438903 4848267 870367081 508551972 200197198 857846547 675801050 748038607 693111365 495155113 23602805 584068507 428325998 172607726 316647623 388475760 932595134 467209563 233882279 584881855 282665371 831702209 992022028 614217734 232055439 437282499 524828031 205831160 478418229 250771328 162810794 485178354 417584861 280687593 51880709 945471386 741426375 67407820 262482808 716991038 300077797 651753187 697024028 474341865 205943087 742395213 302060856 14927582 256929128 436048620 396213656 735295557 223317490 895251847 766862680 295135230 679591787 140793364 883055464 953586823 659724515 211141065 937790359 752084310 926137788 933638226 427917453 162765269 510242099 326546619 990591139 304375309 990441906 223466930 385613501 425802327 167370144 698269044 168328506 484257890 615245099 196382969 76958819 14668342 288922683 918863686 336394514 522740517 727139482 453865333 677366777 816552799 462033648 309235241 324662530 306333662 476238647 734059258 494978178 462595073 379916937 307189384 205884591 948009496 102074407 946001939 18727728 422115254 354549240 863019123 485276792 248863386 683453915 549004724 761776579 818045680 170559662 916864916 222032702 218943078 286783396 470262283 57962592 357324707 936450054 387867086 185594723 801754908 10235986 915913445 829129241 694884260 382547713 27733221 698737962 909259091 489684004 230867007 226639976 163156163 229671451 436497138 268653560 690763245 938458417 611426510 337608342 616543945 740440835 424857855 808762379 222522706 244903797 546568990 632911506 554907310 44560145 973771847 130533648 263098672 831030478 516492248 372202543 788895438 204920318 904963506 425619083 852985978 462404582 714309367 762901711 571755431 179217193 815785370 975562224 955837630 532754948 211079365 512490181 422754307 220629164 650772768 500071290 298435414 784028196 273483098 157514608 860848778 877250110 399266198 942255702 717750032 211645279 400197007 344088438 821932958 934587259 482666659 134780984 108427967 778323368 561958824 412627981 140259015 255612114 627176823 516626317 139696611 407701513 467947782 734489144 674949236 543794428 916127798 565994266 784968478 917074814 663351903 214911219 651130124 831742095 157382919 774906632 152311021 161057665 482653057 44153388 386972346 629689167 128134769 950880738 919989407 506203030 188315053 36498789 521673705 112042361 571892131 371092772 973006289 275543006 32515161 847195714 614024602 799851632 842423731 326956180 511564287 589613015 197486920 546608071 583762281 704373931 273599456 724231343 549209738 839792381 309354362 739974290 955530671 874105823 181324031 414885815 634707236 156208682 490454155 221282043 780730568 54551256 280193339 126441378 996040772 251107565 201587491 948044512 327023198 948653575 500771963 773143036 742104527 636480630 701002163 682313663 475475249 741056189 242610042 602685521 737886020 265948139 722261481 524816600 82965925 412563527 830474713 625976217 44767534 513374051 195660912 263468165 454377150 434513882 860216412 307520203 920497631 401668489 963008497 63369006 665336152 826542784 939958197 963064813 710934699 659442986 598299117 85449410 783550406 189802607 629553611 276896767 47285042 930410069 240984960 670839818 723271869 157605802 712260068 746651515 49752598 294488995 144465603 195519030 433001952 148035054 746972486 213874654 794740037 600018054 678924671 855840346 694579699 461715645 52714367 432210894 132760877 6012536 920105600 98443282 313511100 110816339 735990695 652218428 593689843 345804217 765980742 411276077 477573702 600828697 541736617 898881825 971287144 797802603 156410083 339481964 706030991 915857051 260608898 712463690 645934265 565462473 458585553 208186297 388185228 461252411 459459831 918767432 398017385 777336280 835063633 510107738 549948729 676954122 926798635 178185445 982798342 50960550 104112651 63393155 832849134 256636116 15365369 147213301 326892220 346352628 363552793 272003853 575039611 268309834 461373773 52929759 327303259 334603291 444850210 889596952 285782509 843627857 584787330 856182150 361319881 833233723 266821210 654030144 86274320 640639348 6851979 292034892 816468885 759248064 784184341 916546204 559224719 964414958 754454649 412459867 165482284 22960804 911013274 835076666 843326579 772653136 189719832 279044882 452946357 939303919 551833559 617252925 715018094 673925390 405331398 840873129 765074533 664522657 987534308 870369696 27540291 214623360 567970753 867423509 311081785 581707023 306004968 228084865 336804172 287269702 119213149 190350264 318013428 47809446 382104936 145825875 384850908 89439237 394242789 128104855 279879821 289030095 824757062 135872633 703242703 921920024 72215141 816005062 730727259 174472326 98359751 293948079 924142558 649054829 130776648 986535404 841241575 336452952 216682665 88620031 321156193 974572246 412597377 859911462 457747489 961074510 129043503 376575635 77414707 631122990 42143885 685565192 27100048 716650421 782233560 570133521 992369879 822760068 178132882 718853041 432778447 810155575 183672807 396652364 826224873 785139234 708034855 206035325 21221893 395347643 495741864 153999686 401068873 320345364 452120837 361372156 690357204 727383211 823860763 770393077 99342802 685310275 609851665 354100925 133521865 858489499 210486861 238484177 346926472 840198667 871109014 232009583 973414933 477633066 505244438 561053448 863965 277046558 437622088 419896107 11039354 22163687 796969647 402013003 894579975 492664491 371042190 1652599 589984519 515526394 320996752 643132680 593600638 989974524 427050161 493328179 653051169 746747346 408693563 502750341 569614559 688106563 921278876 40666549 11820850 91839488 983046248 674581383 215960312 670204960 350674007 706050435 348871435 700437400 636479104 667809308 458547733 894537434 718992769 592527418 504361996 964978650 900213641 403910481 352297403 797310641 632260161 629329296 214822876 300577314 37010911 475955456 993069915 404700025 192424662 818756245 73494172 389348439 117274348 704114433 845803960 908435175 616954829 679043323 944735977 806882350 650733419 576226762 312921752 458006305 426642430 462395652 167319971 636399377 835279944 256814632 37805831 525261146 515532202 915082596 358933618 988041104 503565341 116852633 49241607 511008523 471353132 270029124 952046376 622952467 343622046 633169723 134135557 828252960 130616598 321850109 915959897 758946082 114344398 531820428 886703080 442615866 186485617 484834212 504376297 784900912 168994913 232311246 231132601 370947145 827529151 280477160 560069623 23612046 474220377 988785475 678812183 636495341 726886848 98188472 101624497 702872784 102270818 981894441 319422893 769234584 591966691 699503212 364733015 471022560 771164741 111231551 821577623 357943754 489869321 642434360 884019063 515378712 531938522 65080333 403504893 32147622 512846011 930116894 855790418 730302713 822626917 231654896 142212352 510687791 580691780 388122796 292053341 676251474 668096288 788915894 310791267 945116694 953928996 69658738 505489578 609298112 990986554 539727822 711909295 206299326 726441146 367156616 843318576 878310697 545277671 715680810 548639364 707622435 487435131 43470931 31037749 669733796 860115 501031268 520191944 89507150 285533234 802088575 768181963 623179226 226232684 165115536 961169291 167392608 953023034 935117292 651128962 514668298 658182675 8104325 805644309 790375827 289733213 403665724 779930497 883711543 843049141 867026329 419907910 484691104 989800083 346156901 779835764 721390959 435197931 155029302 54592460 551327201 512530044 998848353 773923580 73403619 707028801 714413822 625249765 519591679 360175087 167735823 932150303 134544746 375379993 703945811 983210959 920146697 343154244 953722498 929142954 999515471 701645433 438732553 14482828 826044287 477365194 253439213 103863890 86762196 729216055 36442325 933282526 113853286 748103096 873759676 820690269 915345998 210875500 938462396 999033662 299191940 207696439 272297478 863221428 114055974 91768236 290543214 168744536 367584788 185757316 903726974 771887676 322334534 628226113 665797771 969385811 422326549 477984055 991255774 90074173 437142228 526543481 971089465 578725993 44913893 549849419 700325172 757910227 276606548 814896375 939131864 744351397 186213756 361340670 37567978 963459643 698140130 625097367 877909810 453310412 641625524 761294594 334762752 674738653 952465170 206201555 548860078 178511838 742820778 643610310 191256892 272258234 479026092 194703155 120203773 370979381 197186311 789812462 660341202 217152995 781782525 266560288 274233317 480178660 92634035 761024779 67869575 956542979 915191271 128840329 367428636 816833724 387185499 323472772 635393402 67677235 34349197 48296077 132882387 445331831 861634435 33191968 107044765 822592351 229136722 482443982 377150078 84055539 434135978 894030987 947457057 570352266 105842423 806549766 412639983 546105380 421596245 675358884 119049830 46151157 222738934 860543800 637250443 411374801 617628847 290424088 779153687 652036 937153399 473339042 14991710 345230323 535032602 543157263 647126573 68871177 669281123 944598855 937871299 2415242 754266344 248647307 648237666 299785932 874630318 190286503 711259309 411913077 48787084 807844322 424459803 553304856 803199125 341718952 454613864 838669124 479579696 653711302 829499608 234865175 557820465 705368334 854967539 214648291 354420550 151242590 330349732 504634855 74943389 589704004 734206379 169292793 845795466 870922945 366692079 895744859 690050111 369115275 206606246 17943592 224719524 402467063 241217878 245993326 587701840 306776256 507262472 783368969 174671448 402735482 759085434 807290867 901455375 125524904 995272355 210720740 713832796 643680892 323400498 850445550 91715093 888741164 286088121 367663435 597860111 995970027 173550894 734331518 245200285 872010568 878090701 595764311 77087137 95536276 706605871 346541368 656450981 688369316 522993355 467331698 653228873 801443955 119013607 787170061 376877677 15187585 884252949 17772424 639315318 258208123 133735259 675949381 384858994 650905976 656586173 837861939 178720753 718419597 508280347 329998272 382015131 249719830 611064031 60370197 411749872 287010866 750414414 257192491 400202804 669754641 680094495 341667100 842092508 525462328 604025288 932707810 730056765 447409261 386979361 904352696 356285185 429870798 437916663 649909483 917690935 462673997 938831438 603590032 571434600 342315908 995043464 67039571 973922194 631662097 634136521 512307588 224357005 116849183 509641426 417701477 164669045 847032820 890029876 365259633 399106878 949209658 856933075 368672405 709231789 374451209 899120788 7755999 171339389 299171035 255233484 316248948 151465168 352928940 492787612 579692727 445935464 243844250 990884230 538828898 299660138 672012047 804421804 674463440 310054643 753807506 171183495 724260738 15598884 908329228 610301629 527095074 239736776 748148245 109769493 372059069 796433778 217298869 623883550 869936092 494332772 986750601 693485715 817246933 3433342 129827967 898467945 562300339 952986266 898593135 819282725 853889161 953343658 646710535 872202615 211807287 300236367 431051416 26437185 333997594 367412930 35381170 165013341 228151281 618737111 48467477 931264551 672329198 390623526 582708954 128520 621384718 952567361 67888260 996719923 448982406 516272920 597421857 658473793 552699200 969176904 531303487 119695824 295394030 405170543 136400639 183057828 873496040 724229245 821529023 410578111 519468373 469957037 885013756 443578284 419117193 445691515 156247155 457641289 76555744 135817720 205122392 600108496 796902224 253128473 220378716 882065084 407841036 897858260 547722744 803588005 641241933 720294832 750415534 340982241 338170682 811889573 799432936 278531077 76107824 494817184 591178793 363639493 33180382 109545996 600711473 270852212 883858190 37267467 332197310 485020779 576605564 305166978 345519622 588341413 191560146 713101849 433020611 148109049 54551915 260074208 332673420 534624575 635994063 957511001 366108184 462830081 867323966 159648380 170125423 270333741 63883269 854301368 696425696 421196007 892944699 273175596 798898803 523137170 697554880 247706563 103212420 696119543 252612285 871791236 408312140 121581842 32837361 388646785 384203134 421875827 233262989 824169760 853595834 202204546 225075264 399211824 5870952 296845060 217736634 284067252 18997305 970319091 276469872 12726821 7936675 457349665 863379452 175440940 44129815 720736918 743928260 520613608 540226055 904194571 76783181 71146623 165400006 663742198 974859891 644948195 762807887 66882426 829795481 243872292 125457195 363658237 356429543 310544257 102048721 939137283 274381097 609322088 886610587 369229575 114356667 272756138 497568529 700549585 899861790 34435332 714390187 327368296 154738606 982787316 391388221 981025223 449604810 28900675 626323962 508139183 797605437 946156356 185464629 291545316 936216920 952831586 293658881 202293141 816679033 301459746 585746157 693469452 881511656 393242979 167176491 523556368 581930686 525020607 438921213 278977487 929012414 817935667 208576778 692843616 174897753 916448267 620513853 350067012 992952263 122541949 280948392 977001202 801396337 310168943 196977528 860355693 814241254 356921676 641718748 999812885 131110326 578545714 669477911 201858946 788921004 706895961 347164797 532601273 459892363 109820388 229959202 768356312 13926471 454139612 616072410 548658184 207494418 995221126 134604269 402322560 622808108 766208675 875225345 9016861 769754474 327875365 655672403 710494005 990347231 560584681 316266173 296089055 156719312 134177339 625885130 839374319 602846361 200172510 862961484 265169935 879927988 315655067 836480282 750888164 582198293 956973093 276196909 729138899 477767474 409033875 314964392 989399337 956734068 189842775 690555135 88928686 852033053 502439199 751965538 221082389 380816004 958139286 845773701 597817189 301679032 704901519 867678392 956422087 547037434 582301718 787890893 57715550 257697756 758286153 101421134 252100155 777345265 403379336 719856957 243923648 260187507 402376456 714513300 219628479 973570033 86763985 232133175 38204787 844776564 333993198 502684328 569879605 809803098 730138626 800611253 901431645 534756199 971931581 485732877 468245675 55924069 830495186 721166776 984307283 287220289 410090771 678229304 134841209 712876728 79132042 267557966 225345369 918528075 649895540 955580871 362355498 803349320 323706865 197027054 531744642 457674034 991992416 567625292 460634173 945257340 176719689 287298705 777353553 976354204 481962453 824976915 285752981 52374522 868234357 383307637 363910068 754299706 501280028 471007216 906049022 557408730 365405986 15889306 699861512 205479681 61439091 454590997 655048282 999748855 910901319 782827338 339341733 64147158 349143746 956082409 745714226 550111833 799905573 659054922 779512463 516101807 376870781 662929900 165605313 853315202 921000347 888109655 696585842 480448401 996635068 78365819 254130109 688903109 379467217 174354643 44005281 400467350 585471010 23138173 586180252 575998862 380003065 63752274 311795310 596749511 148800003 528027535 248670660 108056625 905151698 923463259 423954334 958239806 419923771 738630458 449140615 89259713 750144288 772876829 175330071 683042179 247269634 997080075 734137416 92915353 289644693 293477235 385991720 893897292 42557060 644856988 424370427 208073445 3116449 615805721 298426792 591650996 508514845 793507252 843490005 688433807 990191026 702105794 847739884 160779051 646900986 64453254 853143756 894901472 478023747 494124445 576332510 860545684 610873772 789459882 769333813 496719138 902906666 612551653 554738731 440887880 11213812 102423187 677395635 925704925 663254253 963617652 581705590 374472278 547276106 785939666 9262535 669650504 763722524 736865718 690044688 224466153 432566183 534622246 907523569 351770355 890275778 124005086 510832753 778505436 558047299 228938265 959415955 271709365 483976612 416527000 619143892 158165400 259054644 819419635 897741050 692097236 731318612 744574808 904412855 292588313 724664221 634307747 772199394 90802351 137916216 875093197 974148468 64459648 695579793 367626512 953387078 676257883 165006191 524111377 613750734 502473471 716787245 777997517 570317053 336895719 651932108 359553671 316228899 177402173 957004301 204744213 971868573 439715300 753730105 621966240 217222517 468568073 575931782 26178359 782633120 820651791 882548459 958552750 24042075 946886928 598955551 777456290 771734936 324276386 34346968 436258439 921864897 456208176 858144482 360932779 572758211 621214411 435400247 88194116 799431045 625218234 677484277 570458866 723079736 692409142 793379084 781016114 255700175 32598603 923898732 362513849 868510911 430417254 987752890 700335320 40917508 806503272 35179462 877530895 952310091 176229983 787504812 603951324 529425750 344169396 634455578 591739078 418930379 330961110 51613577 279430414 950840345 684432346 190550444 970339595 197238213 337485801 227851449 8695170 330690226 369098085 897155932 442895394 188408503 513852309 590475152 599763280 685930297 747465030 100766090 544484420 672814995 704578402 832745868 116767902 791658538 592587925 279584087 711789128 104477184 567132363 572163500 191176470 539929273 536555716 210438902 993029172 664136407 849261720 420965779 122107348 592662700 588811711 197923187 868716438 561648278 667080878 200940339 849948684 687222252 497227647 648547810 311301076 378623636 140270191 543595337 76035868 133114751 427123249 644409795 786495510 783288033 272589985 909843295 42369999 563087812 621460545 85986442 815719959 669942000 351325862 614824581 569206241 981476920 242955414 193942561 944180471 330620300 251806747 406760196 382094136 176878261 863623636 668249530 459123049 440832425 958687857 898485828 893488601 592166558 327863668 826964534 509489864 532834015 862196225 13128985 425672307 421439606 571014917 909244453 110555776 179937026 946313293 725762310 797923405 410621827 920384094 799595027 488963213 515962617 706948012 370382807 377195321 930331073 322287986 359647620 451120815 250388029 156623306 729864109 475281027 304459548 363389968 118860592 981857359 925771513 327704609 497761864 104530425 621314296 372174730 989750996 25504298 317412995 122352767 590910397 367311845 62443377 735089265 766203160 676494061 570271779 54656416 348183689 439866102 434011714 953539898 266804028 642932372 650296087 611851442 725570 487112405 436363392 611836778 628107418 34973757 441298743 505296973 64225626 876738077 55932116 458377753 280270031 295001983 599710606 178269688 997827221 659834670 866515722 626153977 92219977 700881006 906675151 922894254 605013830 37684259 764849047 569694610 217333519 309035374 878345050 246377758 436750184 530868415 186507602 33270992 477657766 509264533 482970167 997818062 885865207 758488511 622082731 211927852 203590330 143807475 3527364 670284670 151296544 6891691 322173530 836121689 809321346 641074925 542526449 962011334 445539189 308308465 233070533 75531604 967382404 15950557 860987309 769394344 953868048 320447238 851611758 209439806 103445918 823162371 910457404 628152609 325474445 838300733 788695812 709725382 358707556 22783854 743285573 407734617 584636961 168842503 903925797 753644442 865191004 169948041 56841759 764094941 48719621 819110892 949142878 748021253 487557882 907496010 67433611 718121187 554942965 905077923 704264126 773219225 672988259 631076210 43040755 185948057 422602398 138432495 899954479 265915707 545897250 837339041 548906292 621700219 204118566 129556849 474363847 472676716 865165924 743834206 914649329 175954760 921685039 748551149 641422956 42962665 533823406 52919527 718931751 197395038 558532651 778205236 204285831 94460009 605776671 6003785 999278044 969202858 873547933 247383494 34280456 635572165 329450683 868123253 400075247 730685267 847327080 367443730 886727122 334504976 48372289 740019676 344473919 793345014 681599335 374266254 98126932 440814814 483603138 516400071 389736140 659013115 171145339 402059420 761168292 143597788 839047407 752949761 977680965 358464316 680765443 744435669 787441464 393135247 299605059 585591042 933802176 264100237 745901922 576571256 311684216 586215808 646942805 175059997 413614451 752240869 44396619 135163426 794895534 307724933 746731048 738369876 655572507 179530381 917663583 542694882 422151057 3900318 848413529 275364584 390754755 44831870 310520909 685158589 322885182 103120603 150554861 798131848 719728860 283962449 320838498 427959303 776045242 319630674 264177022 181501669 573532687 548814555 950578676 803755569 651642765 616169198 171020542 575996322 771548883 707592933 280324693 846819763 6348097 346190845 271350953 709235945 731146490 678253162 207887200 880704383 841345470 994503808 413382511 790470655 17857245 162469594 574209029 160936263 517795721 316225336 545725863 400299170 883991184 478592207 703109355 610574292 633536414 147283355 832297859 738615612 723629263 433083044 807559430 401312296 841438301 250495344 699173740 991423922 854422259 198956176 77374078 255590022 690073084 304769348 26622226 550941411 324785661 284403983 432530984 84887744 948720434 54503835 442965369 763320170 711244298 33609284 975511312 603788426 416826638 650593975 77604742 471876927 21133246 932478688 670060745 316462518 25145403 255351959 943463609 306888914 948619835 932563112 538719251 777659053 401053807 756151448 121463653 544095056 16014562 487882911 666879311 38079770 3064028 858962545 497831863 104977637 84395785 64976044 105531202 388857236 92839115 828421109 591939049 323307702 909551364 42935214 86697832 610852174 935157273 999617321 919530158 650681952 546325932 974839353 211954378 600650954 26595899 497345290 681525177 428846569 62804308 320899542 231752706 44063695 609598920 80030819 522227014 315192333 928913322 236028206 835007991 697845413 397079537 874695624 485040670 965869305 696958791 190038175 337939767 438891466 890895700 636643267 774682473 756832701 392437689 300796428 590114645 890638596 618583702 129640387 493380779 869611783 774957604 775744084 497640848 385148185 961913976 483156233 534714052 479290259 264453461 143673111 455069058 752471166 322311182 116611568 257716112 362185307 866963392 289115783 287358375 653894894 101458904 310410072 867466765 70065941 419464485 88042944 794662872 832430611 639879832 858820020 104569355 791825532 937569229 288528627 153864364 748434800 539027976 597178577 861406531 992833255 386794429 139215536 396950348 119959382 201531391 222086235 958420811 684255673 437249569 29296189 289210227 733647731 241444134 960306897 244250255 252493568 49871152 707609576 163302681 32387092 636178960 688098579 369609414 488503006 357744065 903544933 286473890 74428222 108444443 563897284 186072380 6313602 278703913 758056374 494171531 533740904 87580291 86235582 832603631 286409309 839021093 307929265 374196925 363520475 729163974 280631704 316712150 330241038 160371941 846527793 980983873 721300519 555199633 72534265 142017893 81447883 85999223 401357183 612053256 664765854 928205199 706441346 10688564 242820493 292033142 135202650 118679205 216483580 421223538 378337510 680826498 202076444 948144138 297643471 576672992 844572353 351861691 495416534 964902626 954402436 625929259 454475777 440625353 624732941 341053850 845964390 751342521 472990212 742028406 702025118 32387110 663345858 819861530 939548615 127229720 887219126 972701913 287344164 940450673 263878174 689484107 835616792 796923146 37494465 242745416 47770777 328508832 214474530 583147043 355382179 783299509 110097514 437930123 136401298 16335954 67062486 600913875 989965053 683321767 212753964 719528979 231007636 285390150 58250415 693793043 700592145 538836897 505092689 268587417 131899625 895894966 569384068 818317626 287744486 843186627 60691065 780534656 501972513 867044649 603978436 105527571 943986325 742807385 593798675 935610428 449440009 65381913 900904446 613687324 476633820 372857038 680999263 69569696 782216767 848526223 856053225 87453145 555571993 711461204 274426045 765897929 592028346 728191178 131996779 976278009 386124759 926891540 894983866 513263601 337692707 459283271 406660727 927653899 482569342 277317232 561950104 915992519 844901538 943520459 714860239 32976121 811980665 710783745 346128114 213771042 274161817 879375851 175677482 779014089 97235588 522319591 471390449 862818918 263348836 528073553 613335357 438635095 179017903 286489795 799298810 855615767 867481761 800115173 895388103 746686018 114688935 499683749 47540955 893214756 886948412 257119996 60702634 318269308 840406350 458073037 447613808 409903992 470225383 452760545 396973389 511544312 849624854 135441944 544878295 50235728 622728753 787026698 854290879 982284027 551572833 433344999 999907712 98021489 940912687 378220363 31134606 72588953 268034195 240128337 52103248 431130890 529255197 872798897 912863354 94045790 318241892 336411126 324356792 705150774 684500216 730064282 131913199 343739854 81114157 535334192 251526931 912308652 178132988 395560494 468646308 548775478 237098855 445964179 102013756 586829071 275125600 803840501 737606105 403272074 382075207 450505327 614861513 232367333 457166654 713489248 980978058 374805084 575728503 548132664 913039584 93702140 49781833 833547644 356206162 345290187 98832450 156320898 7174651 517203526 593431603 500833421 129757118 845561765 182248172 286760146 339918940 893605886 28497893 956105324 904590455 179865546 217083325 755906607 676426244 778075076 434550079 260119224 785856070 101821835 247747779 179195149 606978498 745957854 452733120 539129118 514484280 79439384 428208966 449884761 12484114 874500122 205292012 173329323 836818935 411511061 267065213 176200005 544392725 728748856 55521617 729404065 67677999 260687339 746917141 227035606 58417016 330809274 888895098 475076243 288526983 406193637 90818199 274043806 522189965 967236799 758370178 430935814 376757652 303608948 351538060 499300308 337099208 476832864 40972354 779024434 521046752 168181803 204373389 245615697 300088071 866157831 663871978 153832868 157660633 256927788 664533543 74825202 514665292 371571103 765471548 997373302 829155161 232215581 208957753 589798965 15335903 547003892 502601845 143259186 746346253 379560499 976303016 835513479 353639822 824091896 100332384 56365689 497262572 133007671 12563827 403948386 929852902 555103087 310342541 26020321 96704730 546097833 371511977 81061218 87064482 546089165 772127373 437647841 345296784 578630181 54934532 719197988 214508068 678402400 796583854 200433156 35866228 126774533 386451561 607379134 959926333 420337184 324156181 255578989 563005627 845992935 854012879 620924057 581110932 213755392 790080518 70775616 449742765 874453959 318667115 154172665 14666862 813084154 742607302 886158583 439281151 429405721 955907694 793490481 84631207 429893048 682558343 38822845 217664158 123936900 300759307 816670912 763652274 58743752 865053853 561898188 285070186 164031500 714625442 185789 419425858 775810921 603665507 408894652 191064197 640981800 315165315 891759280 723755373 51860188 964429641 372944372 72805127 505138999 164302622 264240985 122737618 995990139 610541293 77148202 772064237 873021446 948406570 886142517 145048023 555000323 343022605 792601295 406829681 304604073 175136017 429537577 77185567 900047830 70000210 538307346 263712613 938813173 322376138 835574056 153607439 613205838 965403064 448679044 471469777 242268664 151907375 906791288 107181778 458664642 943659303 757160125 571183851 852846127 865933163 164740110 401232914 412592089 891719971 347316131 184973180 524113205 273080520 479828425 751883060 363427473 472636760 297975530 112264298 694076351 180952420 300693082 622905185 805963228 334220999 191208937 703432372 715848874 762248969 683583943 416294486 757963424 502246201 890759148 224075304 277161121 814614842 647972001 569414392 895591450 287302248 160946489 737940445 199401648 341883139 59759582 843448753 248267399 73519844 429645690 224864358 863028228 968998724 152234001 747160061 515727886 695013276 282060852 925513794 24757472 92709360 856334367 343160539 667216667 891945028 257361618 93020092 167134086 745650367 388240407 626132160 136650134 694844549 66943685 588442757 553909417 813489904 134134482 731337632 636368842 451400420 622725446 332306366 702442811 399574536 834015206 570411524 970344716 725131576 615747746 705524427 208362229 185298971 950343796 282430189 123023341 843955677 767409942 177820345 315833789 800881640 812654244 433381799 306212281 627053067 891991401 954634189 398248151 317511385 238575738 474302027 648655784 374772625 80902175 791670790 677163613 594315382 546211218 52310890 731780546 261914335 580241072 16116652 839911676 615259210 16095184 479893846 445903562 198370858 439348938 406368539 207780375 5537414 577964545 399604717 921832323 66666031 767221230 215880839 748592355 708289478 297105230 529038014 303079282 766756454 759082882 38090255 534963155 322874347 275319934 819936812 758553218 490794090 531427893 395864463 887387970 299972648 68231881 80903712 826558706 201508173 833760133 387252028 928921805 161628192 163152474 625025017 396866757 101688731 707473275 703390825 375726869 649724290 960448391 155850599 849986924 434998684 586604703 636260943 300694890 425252111 475237472 576103948 379763498 194718881 839437416 833128945 144461223 966077408 227555648 280119762 621997070 396124914 25996231 806662497 723559541 789196816 796114402 340914025 36363103 446785677 753589540 594871104 599785460 183053475 642210524 480515629 354966252 281356962 237734841 744031705 939142590 882176249 681318380 91358334 760208019 570639405 1445464 445317776 890155170 306597960 415185010 392632305 881617613 597716811 269158896 713511209 738891574 147591289 183645248 369246272 267570369 798721036 383850364 567542324 555982554 548951112 964263667 690316282 692288413 235463591 759060520 678525819 934923550 438710160 231321292 805050964 609955730 191768020 362450807 422051244 841324307 995785205 797415461 398164853 958913430 320267164 997136829 897977005 707298776 989098422 118035175 36427095 781556155 297224530 620509733 162544328 745708914 462996855 579096949 542985313 393547197 408131425 470684455 698676703 853820798 582125892 295528435 185365122 891310524 169703040 973046328 871054137 807310593 832101686 998631999 723721547 939258930 386441543 141619665 396195443 787449787 454063375 893456469 505347560 130479241 463394666 642076643 394633415 952231372 87818727 576249881 301336959 883605184 328612646 42079451 459294240 494733674 347291581 248095640 974065282 325970548 966989898 498325673 994994418 78436138 879890957 534664652 581951698 940067069 372813031 148170070 687550880 855200588 266573184 147870265 387696469 709513771 849137261 5203084 858264413 795737427 750657587 250079169 637501556 830947625 847929113 564412583 472391213 1354548 911632744 613347619 873495789 902419479 368938486 270958531 438261723 342934625 101839029 281802008 746107125 352722459 952366288 783992538 287640818 366615349 943268811 284656845 135898146 614562904 845311094 972253870 84034677 832289128 633157466 770856686 757548022 807709947 982776865 534295457 853069677 676454170 649932427 464978191 408985551 652484565 842502118 221549261 338901820 583537552 476795311 100393893 711280535 961018955 658840040 234522941 859943744 854565035 435225303 163629714 507692493 888546803 400310587 941738887 335626439 96659824 660787787 915691796 466901215 918163006 840832023 946786522 516739578 842343608 346944155 361085476 523650664 941810016 6021548 488314313 185281576 881519333 938459277 939615782 383723763 30866936 138067162 859721760 70125881 334987746 666811921 807043406 744340672 136612444 220698671 18367209 682305253 132044030 343215188 616081702 76212639 896816966 904805841 350768331 897521073 617202703 336874139 235150456 349350503 813510209 39103001 832638388 730439507 239517107 87771608 578247862 668754672 782163441 84439155 666948106 467635553 91213221 145927337 406281004 229297648 670358453 943478286 44647155 247739337 481632917 249033027 737879371 507779951 479635070 914913784 805269240 290328647 907474266 765079235 321814038 53455508 275637100 317351505 590871002 969424508 12757233 636812441 943764914 769923582 942805867 394935558 714282053 90473797 567418900 287817638 255884060 126289038 163196095 223012393 229533586 344316853 813276778 187414816 425517246 227316352 959247112 861655818 325313971 788161864 796939640 179148368 532575213 748239501 558801408 350618921 46423729 515464330 814907245 14970190 631126869 299236974 137190175 783733334 818844543 365747175 734041485 284453869 931562202 168503795 951335377 149623302 7096057 795950384 357915619 360076586 374343825 154656471 768849677 688204607 168449174 270150309 671912262 336533183 298515489 436465897 126247528 236247585 917044041 175240541 81859987 128480790 283613225 484397837 198693905 720025756 434178818 323493962 592422097 783658534 429999674 891409023 14354783 439316656 578648891 169084701 110487388 143117489 131628142 973334946 37669919 878577329 977764123 548147224 445031937 119035132 36170480 986957825 665514512 584564316 996861234 961482870 536211895 669094358 416894097 380209924 705768070 91078703 351856716 248182170 498258928 675020352 766950408 96221588 260906942 67836327 999804062 116222058 468922457 586199340 711400817 757409529 80588053 305820113 208850856 15972272 375995696 938961000 451207602 367769529 249535950 110954630 817737083 53114043 344916183 160096898 85897702 925322773 243965319 850772048 414069438 28152178 845155286 397398796 420256446 699555748 125022638 28339546 519269848 930592368 76419049 277754103 779602920 857190642 119874227 41541592 262733718 496593869 994400348 887935013 618871031 203034269 324919698 852989722 14592393 83527056 259593823 893942778 227765647 270549164 463695646 902394183 417672975 370797569 710130458 362393388 158949083 506375867 435365791 964991450 604391448 815719934 962169001 763260735 441014011 219051347 306418156 232000971 703638063 637589795 894995566 373975486 796749087 890174485 188256958 798816738 192912197 849607354 259026614 550502940 355548043 510180687 650082396 876069362 211645998 120103270 178434539 376691347 387421414 694972074 554065422 27254805 188066183 152935435 42930003 313680784 860289635 924516948 771536559 194654204 589804590 579682606 566884180 856624057 478303336 110415188 273331353 309719482 814503915 546930389 531354924 68017927 261522100 65325719 931926380 170665998 947046955 869901181 775264374 81451914 550838531 177493118 244920751 731813436 326906178 747848713 298140483 427522457 307058737 940171331 734622297 344245830 493335384 630040245 827124212 212864661 128041791 896587856 365678120 40258356 594465398 427176081 579917406 978937716 239428769 823750039 157403432 623114046 686143272 261884557 474661344 25886370 282601447 37158181 285199969 524083089 925028333 220997332 65615293 30971779 208930891 296660369 789212163 28238404 828421578 704202564 523339032 513016823 847716079 436378826 649052262 382667427 89861254 189088741 728235330 484886603 682681188 308241446 597452231 364672025 267359033 299649787 693215689 231537428 80677477 958696459 852230124 8003127 955902278 972757541 346431268 340967024 897479534 60763654 617287638 670883794 591174890 857719677 836930488 924342872 341828047 767108089 89516675 331270562 83484250 215088965 844063522 839493630 257837141 321176378 171594628 422232421 559095227 87174696 162338031 84634177 513562406 694628091 739557132 797717216 685083683 114048880 463713857 817295947 637470394 581849389 398288348 275526298 858082488 331219304 217938873 42535982 694373744 448490781 561972351 963654787 948094177 31563587 148150512 48560632 602197318 880207324 356789222 582823980 359218598 322911585 973168648 1007051 99714183 506328461 976490899 566382073 127104167 72042101 781471920 361066420 607303314 941303718 317279726 809091425 523629000 207825900 264110280 240490465 205655877 440726598 210174623 388419898 31690763 9179658 617411771 453072598 88009863 810643920 914272618 460935041 597303007 364180769 770194674 669447921 414420272 711107800 567362252 362870064 697856794 923131721 634408983 123720461 94738903 134933467 100812247 744317477 412552509 728969612 900351831 12751035 951370784 263020324 19971432 630730070 336295617 594531786 346610370 54461554 809538872 350328891 347919316 508461490 798638271 39238110 231936227 83580929 200367882 299844326 364834262 161485016 728345608 693577624 25889835 486014322 186021972 987065808 575820301 1518116 804489671 88059476 129280927 942828574 509822103 321836477 372837841 462831609 543780076 213625861 496605942 885986681 472024772 153728235 79552598 54059978 751012991 991015398 917582254 628137863 420568760 503390637 605560683 950879564 740852870 716530273 449760675 909838224 960884063 30274458 35765988 330710765 765774107 617141823 174169764 169331046 693437423 384686866 333166366 963220794 751830215 597128256 912320087 704596873 666936790 950839082 945343567 498338339 135735207 114908094 277578668 503615910 32358971 49401835 960749787 91655392 382940454 745074915 448608839 378158388 745462191 877901083 44220601 85442619 447640564 524184387 489955544 126883767 971675510 689502450 998430525 816869963 146805794 232746724 155632383 310831889 416484598 709836028 689033434 25696316 771948715 893773026 819419067 359530363 714957729 76636851 342477421 672236335 465575238 593989149 492405166 416697177 95631398 101111900 288374233 676642332 154794442 935086314 693956023 33422923 177985505 755242447 456253979 76569306 235271697 233264075 707425171 123977720 35155536 176213617 503906809 466908395 889615363 309614966 891517809 450666544 720178833 50001476 712418627 809044260 321145452 325381454 327945341 557204649 999675492 851691145 445702076 892315415 455592168 347960579 213237177 320201797 710573945 837046326 879792244 947708432 444917763 161510826 750309168 349293361 572775423 853316445 221799711 208625605 355167302 583266384 925169864 55214319 733259270 42367017 705152300 526160435 246320396 775196176 831943991 587159774 629391989 671346196 423475358 381980589 733525300 736162229 215033609 964058903 824239628 667804201 537202596 492816547 109129271 502191246 485894225 79941722 12555527 86034174 543920486 807681597 769527573 938868990 173257643 121469510 41487676 780358662 742888434 642889150 486524576 496481810 80055866 48803047 872028034 442751630 528302968 312698046 463666037 754751623 620110690 751706576 937497380 599810764 116234578 792185032 144588575 972269157 131058424 703805966 474270829 453336711 91161575 887484955 210356113 821371327 774815917 436196035 826812326 36424755 755003711 724309816 135892809 545805080 102712618 181285251 194027507 793693232 693503133 678033121 912372760 436952953 926708136 43979569 941458069 846870216 480322298 154906302 863496138 791522887 796484256 190633839 262316864 421981525 677806326 670426065 821981796 576517775 834253968 191910930 177266594 472556063 364955251 546376667 591199738 650147257 535884062 285428050 341659918 243064367 396808891 422541367 916889732 731359897 855566197 707669653 842855838 781500969 34179421 669025090 598001293 334542531 61810084 251990856 78026135 152977905 293606916 923453532 112363498 942109659 814939198 854368639 940788439 264538600 569822683 333585717 480901037 447129331 511436286 206077487 47984589 603019339 228478342 76068645 665273113 867920318 791810399 676462062 113496221 56942110 579367365 971180173 122575212 13764513 292042629 703781485 153731578 789243588 475875864 233644279 804901010 94724722 647971228 100404568 919204791 291461039 850310955 715111064 614305696 612758837 827002469 173275850 440548516 863761706 570658828 331415463 103442951 851870991 475011122 292921022 643406138 275738686 650063594 213251880 259719281 715029090 736053115 13189090 67281263 534289936 177808864 420158810 82728745 173623049 979721042 706122739 892130537 554778847 702544211 235611674 184237580 415836196 996948753 456429323 247945766 803422485 637007440 759313795 217843405 144218938 161750584 153706081 118766830 378498503 184957744 736071043 314903166 882136177 174961104 607707801 739618282 93631719 847480126 645497812 187273790 961780163 354250277 776268192 555323374 731453768 126750553 981491759 371377247 970511869 983596615 287602535 640542855 346269219 640092673 974033491 606178803 423744787 90197007 488609516 681807709 388319332 664849419 916751034 56764425 671827110 67545687 861538056 727119920 289750429 305099484 631723642 837524270 402010829 443618211 688061468 172753244 316041613 581437453 255931192 701838278 146770269 601606857 213756495 544717989 657109265 876523651 51097201 306828473 509307684 614935058 877122258 337080668 560905979 588406892 827061885 806941772 518817304 930834632 28652359 869777611 519444606 336296406 890503909 310419574 516650192 526999698 228018995 424630829 400318261 378847112 527444357 538030629 364566988 94955529 446014349 548792987 216808710 422747901 91515221 598776404 844319879 401073284 840448184 695213617 739679444 747863349 556146758 930215887 581819255 371360554 947698306 121256602 8901921 778319918 316639093 373913472 376881623 664896425 154802329 852297518 415395514 474929739 121797965 622902309 565840293 254797700 643359512 75535062 448908485 747624656 551750362 459034937 988442115 333950744 244000021 34894266 103169031 506030610 364764136 671443237 927111668 764387716 333295631 277957613 496350240 962680437 63945604 86552772 526712840 29681578 576607865 116351504 657530254 442946062 607314480 100773860 52250467 165318368 880001868 896439337 674228832 160926939 280562543 858894112 973874099 36643925 827977897 319107619 319424704 833751024 770864405 318107401 457650030 407937425 988544673 570368003 250177239 780240245 842406347 738169768 812617207 111110516 187243714 850954961 656506269 463768870 973950471 841548977 594076295 392367423 503933353 399922367 49794633 625412452 491209609 854279369 240623110 554866867 750278853 589049960 68462837 55937866 658594036 898209847 341208325 812864740 890825536 477782643 873647406 884872833 783427821 514674397 261034877 778130247 639717738 716938327 521012238 497821167 887524352 414600910 147342471 680825526 534021758 592097356 379848110 706863910 955530809 754128798 691591456 252077979 483947676 183700632 940821633 568069293 331861252 792112309 68555726 366108846 495290158 255595096 785824544 864278609 92653522 415313911 222502113 264166288 849978380 656455040 995539045 157463683 465984120 309721323 789940741 333686611 735273908 977076182 846571292 825714988 645707538 790617963 502423117 355489631 731008128 358227506 293992356 407531837 615492177 99038541 271974272 678807863 440765277 111243149 548284722 89079841 966648588 674514419 685430533 912946511 963111176 63887144 233329867 872449795 288825172 315873081 545365905 752500506 169260473 324297465 240386114 872102476 961304446 582532336 628614841 640604341 360666361 519904269 809683730 195420546 228942791 573955903 284275131 719039315 284826858 190671683 32435571 335807969 786967318 810331722 545694518 146685055 262627103 201300246 49867253 871135281 704150282 135671919 370320288 273583807 3897987 518090955 109059698 694927037 925972882 762532158 24529801 447435365 668982457 428748488 290311191 558065701 153278672 197306008 328116354 662977804 120493182 874952095 778126664 413308779 775804087 62022359 706300693 518094554 640267532 462225137 721394670 582299365 804781853 490812513 7636928 26836327 547823689 556175780 548482869 224327253 255234946 706230033 553280744 130098443 18520101 835028629 440699833 937904689 120090632 335230987 603726475 365486836 558165401 142351647 523641315 91694587 668315201 862091236 157906091 271043923 565162228 776979142 278525792 15825990 788039571 401685233 227136148 194993652 185935858 898475668 753128447 580425835 51426501 150084954 678612399 930680908 75350555 358083007 628848460 48613572 480686596 883648105 503005651 789055330 537731694 682744232 498606515 412329098 274004246 251253994 615753939 279760696 47636058 736053405 752202677 563737842 615927025 294135395 831154027 365208350 998896399 582637929 549278675 401682258 833396658 342661821 349414964 117308788 83585583 932696129 895354726 41782648 824695113 527290569 788874825 768856664 561776451 918292743 781058262 449438897 273852736 655251245 557342047 834636252 637362450 15825125 252931953 669294809 514630405 421333322 236979659 936039504 468889687 212448610 275329365 149707096 78248302 695588689 555850099 286446306 722268585 215226019 196856237 634406364 377435111 477621421 733733423 348096919 967984852 955420528 634893551 394546143 278169213 930730960 560382085 451192552 435465358 564722434 637752672 160840672 496193023 633525442 383844954 643742923 278395281 25889484 717629521 532116082 482765186 390477145 460070457 959268739 48110373 671115856 972924819 892903260 245427295 285832732 454727772 637761423 533949199 463830210 674579675 978233970 360627803 887188575 397767356 597086010 878450410 183221634 663346588 537535889 473892097 529664605 330215877 528355360 297980606 619714129 404562994 800826675 330449652 796340926 259616803 238528339 181284820 201494211 147454268 116647143 38302762 935288202 839203432 512361582 165571988 69119629 478974287 315190438 408908757 513055387 912789305 943851228 911938882 667030935 540292380 66104325 135072097 749783068 524319842 935569421 289533044 639072577 495794360 768799096 976900965 477401041 639306013 392730737 767005702 212211111 190519286 653876130 210106109 395751827 500296708 617502410 941268920 234551609 225924804 428737748 516609057 233975662 665882223 303340962 5067382 162267778 235744101 557796224 950170274 602610807 83144434 738928751 349493932 411052436 390399708 60580808 302371635 278521525 643647674 613718045 64567438 836588194 747500231 946398871 188385077 750391366 311218865 903243065 365145853 370791977 947586502 737605126 963982161 951369738 61304911 27180466 744277876 776030080 338324202 585067818 781504074 692193395 768026524 63353972 771553395 396235668 629615710 863373093 50738500 809699715 690722964 754689636 809754858 349978984 918127956 262016499 311225148 570628262 564950556 371372171 710071749 70941104 754399813 214269600 375124266 320863437 288048269 682278555 309973696 961075320 373206391 523969786 778951992 52808219 618798019 837779504 326089293 940360997 659237529 904109696 490326054 961045940 528841214 319510882 135530114 778894431 261920239 467587630 440628731 766874724 465775716 176706289 175561612 707895906 811643296 258490094 629841046 720200100 867379101 509354906 37874098 16707322 413674256 224774660 933425274 578542072 354361252 576193240 576913253 733357529 884779982 99656979 597347652 211263834 612676029 85110126 789727694 252821309 554825015 254592210 779342938 967894672 662753627 354165125 871786932 809707910 444888819 939456294 222926393 827863004 204915928 946323066 116076304 399501166 132335629 240216187 39096355 929968499 957454620 349686198 611510990 719484976 824334818 482909651 7220602 990067747 737421939 262307307 418136200 210609039 679043663 24210338 457232723 650213355 837505169 821718936 58166561 933803867 641230976 238973546 567556218 252043762 86775696 175679823 715860604 734357913 605603358 293224325 307713092 215380993 726360552 330573255 3980886 898603516 607688194 458310941 280029564 348568330 73786919 300556348 247457106 409921879 957238134 309568809 961333956 465041998 658244425 71312530 235857815 560975624 889332074 179542813 654262811 754162456 426051583 103859919 584546326 410854220 368610638 99149593 959720845 174310296 529664429 734055753 192376532 805393459 498695620 773759243 384062580 243623492 308580210 789956679 552844818 410002638 828107582 656765145 828609253 966412239 345779987 420013569 833676532 751827491 472428924 179120838 52927487 735412983 197765899 776423554 465365219 667798197 219294182 659456270 421877012 231980109 347002573 791349107 118346049 993478365 350230923 764424071 310776512 11868535 120496786 727383155 318961312 23240923 770160089 269932877 590761619 183818483 142439116 956647848 779842651 674506510 6899843 879775281 987496257 119864699 489370392 24896084 987193733 647135625 546779309 933183765 840608780 195919637 479468574 833089264 969368241 91402083 316920150 139029803 120881676 395617055 161145760 544608521 656754715 880951764 762423499 503527838 559461843 338167097 628306906 265009150 501349100 377834377 291857549 54916998 517137086 547848057 200799046 855908393 617623588 679793218 198763402 977511516 594532759 452832357 294734508 202635549 237634245 343101505 273062456 333147220 638491355 240449319 362161834 500870746 946343870 183300835 682042368 471788829 654868589 545960763 553961589 227057594 422852513 366574577 666142360 321111359 448314582 439146180 86990893 324653882 866245816 364521569 578633416 154305922 560480881 274913568 541713098 326951401 525325834 615483514 326624151 891238709 149790243 456059717 135748589 507972772 721789062 83942119 154603441 385233875 860224616 566865008 545873198 141818946 897791570 775924781 356542773 909345239 673906416 229513147 3800138 755003801 677593139 707222974 163554060 885942455 968746541 179914977 197054737 338079266 535617975 736043240 160770630 960534891 837010325 313475733 913602639 296595910 65983303 254095813 952444863 432333590 555931920 625221517 515914923 657061820 450129796 498976831 452905220 276575913 600972855 979391000 836658967 989366159 933104340 683558636 230796120 606213703 201203024 735860975 23902268 413932117 364454478 895548497 162385480 558078175 323469672 657770730 706581148 270191936 774574744 168896803 145948295 50839585 570928284 972178913 770450085 111720272 727509518 293193938 458963838 531068247 548165127 485215714 875748384 247987408 214077931 505222634 877188087 964946537 127319932 306657543 321049424 85288576 545750697 728506867 710963908 553286489 927153735 837085407 853422565 648037599 910834290 288932465 153050681 554240689 180411831 111834440 728217443 352242044 955961363 782675441 907386419 905689240 637693316 675327422 140185279 834572852 641798466 248379997 114638791 860016779 950712038 462826218 925622652 101937628 724441545 700246712 110764027 298724833 427190057 567520393 191075405 248775069 904151477 971616117 607225006 549961398 578865046 469998581 185537709 257912290 632489668 590763672 589906751 707830790 871751145 666817739 391747032 958014459 752818704 18899967 804604753 542176249 455581164 650267403 327032059 162768298 579830867 3674950 754854651 695011387 491692512 190456128 963279197 762902559 961725403 840771791 947195004 476286785 102148610 87627471 786717961 709974460 815874197 252834957 957401524 777142471 564219405 788652907 515170099 29988184 738597184 324424486 195147442 867912752 19298913 712203748 905350720 550626424 565465083 851831283 939641778 494398224 874235074 726181779 258292199 720109250 781816232 665201097 629663276 262615457 213825210 349795104 739037633 771301912 388040014 204525805 179872480 684849151 611460403 550765668 372733724 357630701 381338945 581203451 513219352 132737704 937835298 900609473 515958584 13997104 497075670 490696672 217742266 42810460 860561977 527677111 151801739 50395746 143555284 760806615 157639913 979515916 960965132 538417391 316946633 944276553 897021844 941275819 735855696 99908010 698026571 573654824 474072353 502091902 228582575 228907875 472059422 447846856 637915817 536615097 598129124 875725445 351591819 527751276 820474768 872676489 651461506 443653265 239592342 72866150 941548795 653873435 704716360 602416356 152296450 221125269 6262590 889769418 362522794 625354678 473715465 80516404 745826164 424375586 905579448 79819660 581054708 161697337 793334413 530256119 488551009 589549010 198202101 50764182 654762908 842681455 51903499 459369352 905934728 361143119 204456904 389648970 400545350 878408899 323921533 508986255 314131419 791411193 479631114 858553492 748850311 456019938 765315096 325432970 31871665 850615979 649887115 902104820 258804288 460963938 283944433 309672541 873984125 257351558 682254315 856852547 925234635 93776073 573199247 750624469 263088120 447851706 417144578 762402560 382132961 606837136 724890454 640316648 818614344 338352506 37228344 68972121 710706548 330269838 713090567 673673898 464103066 179488862 697552296 94624345 373945545 516975996 19136712 827328871 588790007 204953589 375244930 65914119 599801899 293986540 125297481 142730347 407867807 452146921 123343080 944971250 575833448 229907451 333718451 771529848 113918666 718757735 713121619 973099589 117978497 9725367 573436196 555562662 233824084 75319598 238549081 885715846 133148906 637341907 303545138 723719515 347581931 792736125 470955266 285872231 14218747 641268231 989654244 734177922 678294594 773484919 331719550 439362965 586207632 906690976 355046396 855954778 962501767 979669242 442814643 703993283 999804796 141605056 652257678 983139404 421707810 671798186 242545243 925708814 776063231 100624235 775420451 966132491 588292615 503950825 770831069 558266044 245348748 299037074 830683269 539866840 815982794 573525963 798003586 176005810 937517903 916311587 436169974 167608576 560380194 177615331 12902166 715694679 855348257 176391736 713370251 993357069 197861984 390059072 405437710 272837229 887894132 571887912 599952490 6918772 704627681 587248009 300751650 810402298 924993920 155538449 736123478 844536308 433689132 28456239 536234246 920921197 669708092 124069142 259042574 316852000 515191614 293826138 194974898 643351559 216244346 838256734 926242230 195652239 510187064 361335881 3162439 224433347 527054296 726004539 608026805 195776829 365241629 965007750 37788823 696453244 97283775 866921419 642890271 337032249 233303926 166875966 791594429 607660963 493177372 911606108 313991254 244103378 504884659 184262930 776425239 103315662 788850379 489741688 5986847 563618152 613951846 598487439 83856110 60893312 50052388 896914956 33108768 659946838 473616686 824799930 606644513 162147974 518456301 648729594 186948907 22858157 983791348 450282439 483553471 33046779 733235954 625078117 330702366 14405726 8133394 488459403 54244956 220153436 476115383 661179809 308910713 443869325 857475468 147073027 43051155 157456088 96119364 586122652 491775996 609356405 101664550 213167115 936367181 307997619 291943914 521864545 688512050 656930984 26597619 431383052 741062241 818016802 57058625 191745725 629353313 661631479 993555485 449265685 769102251 328934231 531677032 393731650 872179594 873232720 453560920 305850282 819511455 597301436 150376213 483818569 98042323 558488802 176454739 77488765 226924283 569348893 290604709 480361298 435277008 941747286 931191743 573308993 807238074 432250969 552891142 107411809 380507770 411568516 682442545 756265589 519244368 920683407 241197100 542047286 994277410 832939007 807234247 973631749 75331213 238715507 8154047 220537842 111592866 643671757 160422220 28412271 351446978 885425405 407555865 162791776 700193225 148325397 373549661 967770787 509709535 515069387 635631355 96834820 650532050 126130734 157773339 20938572 646092220 69125447 6613180 441327544 70059721 840324916 795677469 523301563 517771115 981195231 464878788 984045196 780574106 558603749 15343085 434008538 471228378 264883604 413487012 128183893 139302925 516362789 59304728 468632040 901427725 214449273 771687644 949993522 658164071 487350845 847843184 241384101 229022543 814197143 324597144 20281528 328064223 411683001 653383382 377524412 920013698 12890712 140092257 389878835 113148586 294984051 279714916 192680521 929794881 758019660 703294087 658199647 977452101 294902157 883655038 250084869 125627308 550502755 569803355 404006186 390811540 977508022 536297675 882957200 807118370 638378355 824358911 647109746 250578611 591958058 883656719 620745872 103568982 699279584 721101487 756097783 436128749 105903798 651876758 494103664 188288997 324711827 372389600 586776839 519113585 559590851 848897541 344291176 682692483 889636613 507295583 322871830 565439581 928334838 28343674 43882520 966487843 414647147 973630890 938568072 159600185 144218203 619059641 170250971 751727708 234608670 199583952 607422230 689270531 231443370 164810971 89635849 938795086 279535093 930521603 910274443 539048005 900353878 862262916 817207991 180845312 118210657 629515944 597193045 885541359 45090260 235858753 28945787 413345419 772974358 742233539 49068931 778935879 860347655 460915218 29134101 729410109 232286362 676226656 120504014 598171523 355121746 656150176 874524009 434304351 962596513 564663427 245915247 72362478 766823838 571581073 96575032 203848742 886235007 60870121 600863052 139609424 7992392 238377078 91336499 649860350 75128031 872423624 884189880 961226794 898514638 569138909 650035136 607400575 598478626 270152835 820592702 907020055 56873466 625625168 139585447 361540810 612183893 212898830 217070707 164726300 539527256 736383975 124718470 891120646 177023942 955173620 106944006 35464417 416358024 468235311 628052314 197674021 322218968 870135576 2722407 771906144 699822687 592853062 64307981 654649034 603730598 419962466 653792086 563799409 173873965 922589276 863641420 334415214 557413601 291547087 93054320 752889543 935238599 344734260 684527413 65490429 26780342 463137120 176775866 909964681 893785132 545073343 215866954 655160154 422076447 254064282 528159459 173204871 761381415 555029896 931839290 368306664 913297745 498340245 93782297 205347740 682380005 753118373 501142195 728288425 254760246 639098874 122759539 811272228 659950807 776213073 151090757 278927784 513871929 167048649 537849864 964941105 344114645 444297952 198100988 135118560 520245657 877048303 286826547 823013513 817404693 462320815 367071752 26624153 8502667 124049220 703578334 110557565 743086329 530839431 411540865 319435973 676383057 963641749 252954767 754713089 712593605 740863810 176021042 489757820 392601534 447670253 317808368 723619082 187855781 92275093 412615944 118170701 518299055 992064626 61875601 388735543 248658147 895285614 811207281 950067808 834663375 814282836 473735216 158060901 452006325 718403167 215217524 420290039 676269687 957751727 953087135 74691447 180967235 468288575 962546389 434665813 31834067 831244640 318331467 227594020 218384699 418965176 540940720 767932300 430644021 633091479 864904260 771425338 866593910 399414806 180140269 281800825 460061642 371369414 712102028 331489506 650739392 443147321 160024342 290986080 4450281 342122795 849580440 401034737 523179245 54141021 933825427 864919453 453018234 337217723 480567173 759319176 578634867 541137227 809348007 45981748 548133897 428638426 515250077 172829539 335832906 389558208 471696815 118342990 577293505 295208574 222054006 761639677 620934039 786342610 402629419 627019686 131149634 880044672 10666037 998985441 988257587 68072031 214544797 505682156 79401623 575231320 487207911 211235582 151156316 489944299 353683946 204078730 823812918 180847951 815749511 976706105 519789386 949447695 505824300 121895898 179499712 948471646 891182849 34103348 73695273 325827313 269429785 949994647 841789036 869790595 805570367 939783248 77293460 422686808 628572818 521858852 420667298 880359227 835909923 746331033 595216687 525901594 262502354 507291629 401906125 849651939 569651642 913168242 68608032 128888686 593539703 922225107 385873300 61960545 277899193 491413462 724307101 374108114 172763466 88356461 263578617 601852870 803773339 915424844 115262865 630808150 204111455 608117283 652946997 265163629 680362094 700376083 313681700 986455964 935617329 413575151 742651427 111570097 663154244 562133167 99351658 11804389 445051381 317505527 836549384 545321246 345265832 467844612 897609858 508129744 109941963 363577606 644177822 976649148 128050136 115192823 85553234 659423155 325748100 642496955 177132066 674442292 193302817 663038001 763268159 128797628 105290208 934178549 192679400 675799637 624867498 892238184 747188940 413338845 135939846 890896897 408951668 341721745 156459724 855650730 177923114 590760827 769968530 441531944 410531870 380221984 849330695 501155052 181629941 948514381 950827971 255550042 39619700 62356827 634111584 664177453 294515949 3082686 306538631 614399057 922782374 147418149 780091091 470830209 795420577 519893339 478947407 882261278 768547502 468795846 240344383 311521723 807448129 473787701 112230468 682937546 696609426 269485564 321874202 459973757 565083612 953093081 238443801 713993798 521362428 766772005 659858742 836168004 253952511 937412764 868557888 271252750 536286959 47162428 769083806 655720589 487287667 861460847 983089771 45411409 343214169 618512226 780128759 756839451 146780955 989115540 741869933 742053679 316699130 802736479 399209611 174598992 4132922 837530292 804000130 513548530 476850048 548336528 933128918 940103720 957398389 122911393 193698016 805614457 835633729 500401834 61708282 663804479 577743283 969842541 692075691 200680919 73782257 696670538 811549138 758586167 380408503 21138431 83983235 338800872 259342061 390570859 107065126 264244095 458240044 643995005 402447195 880348025 888151152 912703829 951492806 944354541 156618624 964845267 631299558 179915861 512696382 685830961 42290675 429534626 784321494 230117844 780038021 210506538 880787344 257805834 942252697 973368498 447379086 962496440 574804673 203663649 418979146 556064727 598910051 355574908 800121020 671211372 413572007 697685113 241943190 648665628 981182716 572621546 833972099 562483806 422980130 24181422 853142973 578155910 216691108 623782385 359438869 706987435 640096715 897011488 256451406 507927618 399771450 358042973 699442739 333159995 829376289 63815672 208050926 986780986 222925984 508745065 871471071 60536122 397563475 714819053 29234626 857735621 275492282 482512461 967594884 775406174 938577957 150879628 174702415 480025607 530437031 511637818 413723751 956448813 927498705 905716956 407144802 408347241 7522516 202977931 443850057 135503160 631529914 312649616 379408326 695840541 694826322 903049299 456380030 236988159 372487 584259788 812540064 36950583 99977298 648314467 924544486 332710785 610815282 833241782 138272879 920547871 698281346 168677409 425659128 734272258 615433726 394854372 961395402 646541987 249727412 416990506 773053735 993796032 126635972 463252371 32097967 425138610 436428405 163086028 117930376 475421036 808530582 308449688 711923011 565127985 317025061 939119086 98644254 94509464 648949050 472155224 519386520 73188394 412583503 631856917 668721869 296854524 35643450 663296690 658394331 536062491 32845360 509012176 18270216 9882473 540284800 183963124 184435516 168329444 421007255 191305315 506821527 439243313 668711514 538619479 127179912 511532479 458214330 761267498 545128249 961971172 869697588 910221183 198588481 671083861 77039431 209248174 101757376 970592950 967121474 915606291 707015680 56666257 296373896 75549265 717715665 799894758 403584789 568540007 717955790 255190922 924112219 368070717 688817037 676406512 206585011 964559504 375190815 718739366 783701541 93341107 397711471 676328138 170230797 977722496 19887591 217076041 116674638 511177834 855852143 757176371 878933947 268429406 273576532 75123544 217129866 973194270 592324372 670865939 186791138 60951619 617639484 268279838 153638463 240954338 510866059 252512571 371453765 960098361 363170255 907786412 554581458 789147001 567956327 332084302 950641926 827547219 349689811 580118612 102897183 18952687 292975716 589625419 194895461 115079799 584335475 473209569 27096586 675012867 926699278 828285554 951810116 391497043 616859707 914156104 928465392 179443888 610043029 957619135 218122782 266192059 100055560 650976442 337851750 629858307 730766954 566868365 10128381 674720005 817531048 171156820 26302881 547504587 98657572 754480476 32151289 232214930 736760515 690041520 644659286 725581352 122217383 771626927 11226352 530367693 758319369 186655141 785701855 47833691 680260587 283144397 329473857 145271131 967328272 836387955 796475424 267710429 529208163 129722577 239430334 696327052 547355221 336828887 197944952 732189103 178525118 685328060 498524506 182210082 456564279 441653220 287658254 526280413 920775039 175938459 341546566 807225781 896802854 489117725 801331924 158660204 5669756 53310293 106611965 87484066 516396487 683914342 873958937 464636876 474560879 510906189 131455398 451404610 700271652 694391560 201856081 306661007 521993326 64081654 873913633 152137463 340603861 870549878 990858404 931994003 842010375 651994592 662004330 283680234 79521721 610904525 142874357 694720976 448327495 514440538 881000994 837891980 945073395 108563569 921014718 651854977 512877074 109283818 123597195 211748310 137189985 39820570 489155633 88272939 333761676 241482052 650995388 735430297 191190448 386494901 187972994 830556286 188437625 810904928 602091240 129294804 527739211 323108103 811737904 181113618 274254492 663923762 414851584 58294428 401361117 379530958 844237080 192270972 744517742 846303616 374335586 857369693 404216737 495465068 944837671 446591844 687425218 23993265 581246220 174000937 366763578 928295459 861476781 352654602 767947722 47346445 194610836 128582393 612668769 757759678 482313331 685775997 51281769 237180867 323298057 968942532 182909256 806895040 285635655 578598681 588735043 775039300 482115230 17019974 74252844 97722156 412387064 99259827 927507924 616315884 284262539 136068466 35326325 107052171 717184917 718152364 653025013 53806410 596541717 84090761 585366437 430403015 334072256 293839520 753848621 253769968 237816709 752167293 44415251 279753069 392920603 31764881 233034011 809709102 895693261 466244557 214091716 233566316 198586661 663151095 294781095 491025508 524077116 707807233 20524781 64062608 463743902 719026732 157272432 774001525 561739389 728899027 380075434 816949011 588382313 204373351 413939317 197997422 992138139 973173423 351004803 787688429 124376097 261773475 139191414 792897652 219567269 968174136 210907987 278964835 817942409 678040490 685121611 427427075 321040148 91497629 685362319 754082008 247844047 478611637 152578558 839533150 219748660 255914483 208488999 885320259 585609497 331532202 125163964 527643724 41793696 76068862 2356912 382282283 649334256 290474807 585291344 209384138 616874242 235182908 301991726 133627659 694130982 718469639 625559268 86596498 440089582 555272862 997588300 945638400 954158058 50068408 528424296 6198542 382630471 309162844 374064494 580730653 127646095 221519451 544483507 208466396 569552120 106669401 83837461 428660282 50297086 791094126 663421317 357572313 764546853 89681736 601667948 746739073 987593371 628571935 655206620 174236160 673968866 557797280 940980371 760751463 825378249 252648597 76358128 243603300 117772926 776977066 575625772 874607715 78884209 866755491 487838211 939662976 951775372 827823703 82414091 344491228 53921723 913237208 313330421 557499899 115558312 382475521 511563653 861671521 630702977 626274528 269744293 785524871 395966735 74888989 360557097 580112598 632476858 647735720 136817219 1152598 944323847 851537984 879425892 407798079 225254227 565784326 948475604 841434512 43545555 699276590 500953713 246514169 971171833 865145087 533570550 823084413 46591524 571808573 948375982 301805821 183325378 822426648 658534861 95726257 424105569 23350546 498467035 784743844 809384425 541703145 789197125 503684858 18674289 529902330 323487139 552088805 671811445 673459080 260974153 128508096 79699390 944899342 996869244 923088155 969032676 318454646 721559705 440348164 624506503 827590974 263282372 250193330 286138127 596827271 691998428 712756481 472549190 454632009 498175906 228623219 201743418 852079825 843185790 62398885 788909399 271206338 765347707 155452088 118636622 628458153 390407593 516378081 295100792 579704938 462444177 690641000 208411054 289049176 656298667 682197574 210159010 386648431 887754378 172599141 828522569 588367804 451883687 24510816 803383542 455991052 718930975 324697401 294168581 685084714 933187761 530154189 857154161 202271545 807798222 217957506 740116886 200189908 306458974 821792810 22831560 150854433 627015677 134224877 922286097 89058354 367926863 575413696 470418757 165299910 327829295 434755575 900065051 646710127 387135449 403988128 656747802 738335804 795125231 731725327 341304341 475324557 671941284 68349179 126559838 172272948 780394462 701326277 521316646 961968894 874528555 911336668 887968574 840776262 954410527 889762947 831139277 433015405 744700487 966064353 178854924 261937766 380959026 716089321 232244377 916197145 285926140 157669103 587187508 78286791 82611446 184318947 161756936 620300210 355848161 816544887 330628642 264244602 563135225 34312589 871631654 406972412 225077888 700853866 833310963 92555090 65693831 699175401 790610806 709489072 738898515 366445093 706938116 489836098 31532518 11195145 407168655 351661442 140365660 744813740 7724527 747572836 169271317 942176914 134986694 434203030 614091948 298230698 964387529 3093937 499829996 244999564 106924413 692611804 133967900 205998934 257977317 893038982 696679763 465908876 934448298 852900077 243092174 149831815 266461111 598781194 154509039 282167785 612369006 336026626 795719166 445305558 724714351 623000724 821894096 234292271 242243542 428428491 320139944 982116753 5258235 567499029 487691690 170792122 465728292 362543813 253767574 459692579 250526917 55090212 569220269 562538240 416314801 499039729 955998186 319038690 334807711 894577411 64957980 674528430 953503132 495360923 901379760 508682322 434633540 746582435 82874203 740329623 557721985 644393601 322968963 483448800 394471791 89340756 1343027 889109666 610696635 837950590 733271536 237169717 887901727 389784631 395457153 210955289 9953681 902437552 346725250 754439086 723664469 665512044 651555785 362063477 652793194 522028929 776902428 9721954 110089119 556978798 215892514 342811075 375301644 676013398 491791136 808354656 838744257 523087489 318315446 786716438 656433171 984914549 949585044 7946443 428310086 42810362 897085125 604601594 361419393 297191237 421687380 155694980 553682296 365481361 411666679 51981302 87346705 937372891 759300014 817174115 171169063 257704793 767674638 514155169 287744691 624988286 147348731 800441321 553236419 479589955 848304394 700917233 445334488 586726590 83033821 494265094 482027718 65251098 257514182 642755939 468597276 325873207 977059067 227590008 50712126 504895244 874358390 385223907 187817130 374091006 272058091 471485402 724706858 614134491 839767726 122196584 379003930 442521784 324058330 492682294 612846014 686169323 201077299 342577979 919943285 826962155 904821128 59776464 508246401 697498741 425272391 957722681 510601078 550565988 391672529 108454414 698768223 638236112 69277972 473478301 23885571 758436098 973519005 868534572 812626586 8280210 62373561 513883684 776722064 379176591 672540182 752923720 105138885 447561651 503965830 600759972 479894778 828975987 914904935 230222299 848595604 954115439 599206002 643645936 494837462 743881429 887900793 703533378 669106371 743242224 130688130 559438000 864198997 238186033 85203308 823545935 386980352 133552614 263663427 221517338 92540975 396980477 342807261 130450061 423377885 23354824 284969367 53877426 63742766 595560489 826189879 749282447 240245257 492239425 901409585 552571485 770153340 922484499 245524213 580336792 125839966 672366641 916660436 789847318 253823548 204935417 4567500 563212610 153008645 451045152 821996992 421129097 876703576 587504321 138596252 228211473 3802457 198774034 350988385 339481515 452367336 568763725 111726224 889703455 81329421 425586341 946749693 232780386 188048033 551148785 974767879 928503252 125043897 336471456 748951041 282445473 242002809 231806306 931382913 837348199 212212940 717539087 542985786 115847649 488324652 409704779 283419200 918698179 677640472 988925923 528901841 408676140 358101658 502525980 261541519 125551894 631085174 178706037 7093566 529959213 596497642 77063754 177293751 958399091 126855970 263576775 89308311 391251267 426744369 265869277 742257885 780153028 788872182 275572064 389524170 334075191 706343750 466623834 790336988 318074516 546748031 743110982 603220377 435281423 733412975 247664541 848567533 595327166 564264830 573609749 537213742 943722844 168573734 754947544 51936569 398692522 33350128 929745341 9554395 816275022 11283598 579780203 900270862 394199629 682717057 77963030 901412454 303726590 941369278 351953049 117904751 880911043 698275792 872385120 425793831 479658424 996050974 578843308 473943464 3009362 686277987 641247219 528764267 210984935 250127719 652012298 336370128 356596896 135589398 672678045 765714838 30178518 945956518 889665743 512876517 30566364 142600502 771492506 164251083 237278575 968197339 900743780 227054473 464027441 740152565 486106275 658931872 326811393 1323194 705299809 131782934 478650093 27528300 351432100 829340546 313093340 565254217 933968911 735459197 182312485 646769685 366085872 822982550 847861063 211607859 347605482 293884811 712458400 600563685 510136719 8978935 308671252 518540098 977151817 583533090 224175712 879985801 467572833 597139776 210639606 97975676 362142772 980794590 96656223 554750191 624027189 999961037 17130196 920598481 960135506 143748898 912727079 441388913 570745975 279088028 211740856 104688781 490077325 525620978 213584970 67135299 802010326 124314748 673831899 456943536 759755478 137074721 500752254 349102391 113581467 594142219 341728516 241262123 563286139 247571711 146405543 571740557 808823324 514412124 183650209 810669455 855403740 515568704 712941843 434726429 155180898 448330332 818246826 895118394 295325168 166724859 705655681 304397287 31636734 467335186 19316087 925359480 566161091 563283922 32380593 328427138 558559055 153200820 785377080 158692683 801569697 741975622 766548843 876297955 892982581 691081455 159384223 328925784 268616305 696181004 798639753 421003596 554185330 217064354 315289188 69285343 251793783 367163665 471806840 822862402 481959129 611771519 125908257 458280194 569697114 540632080 868320913 250562467 966916901 95483770 912654040 182506481 657829182 246534850 770648421 270967688 975636323 963964841 278781518 424863794 677670921 173928988 975816516 177493455 403672439 728013601 519239181 367165036 596810515 73959458 227714903 584795997 809735069 360868661 826586764 443275316 178140885 536121607 563153139 419572097 781436134 252458073 851443360 438717120 773808224 104718012 684007035 814739305 549320729 664292019 51544519 432972026 871373107 424994615 838575975 250253209 844515672 347584977 979687872 231502743 773098872 361682099 239786974 330638037 890212214 960066390 116370963 131087059 593426959 996724989 37900896 236214164 348544356 442880235 707415333 529696064 444992515 174903183 290710533 559064270 404372949 191064088 877596760 553701961 200466664 128597406 55939544 257974285 188992558 803634962 500897145 795686318 313426488 992655969 522376870 714649989 275860427 216604747 603605854 313508174 309474349 40120592 401673690 473063156 257388484 923490290 955893514 131670591 421317550 420817106 687170736 47342408 275304322 716901263 511155333 799758631 676252221 718126015 14091143 896337777 511006159 736018708 772299971 670702443 240613059 112942682 59251019 203254902 512356792 312032361 984238767 196741489 255872475 706967811 612025350 470379387 572488918 434032678 3834869 815063627 792785104 147701822 732312524 886700530 292290342 715865708 163096320 38273870 351915924 393961895 874038172 681290370 605525809 335299332 815394048 984156896 760732279 289422495 719294199 119167801 485616796 225134159 111974251 310025596 354819659 915866749 754296545 871591669 318378273 16688044 138009655 991032073 701300299 665273831 711519379 98619921 386456233 818650325 583669429 424745687 977000413 313997608 723153132 937344048 87894443 984265886 548061065 408118805 340652449 669292983 801758744 195650741 517985038 624040375 417412926 307671433 615052985 558148937 776475903 521652272 736102454 69793276 381821079 843869085 673192360 315525770 805621221 203632920 910163149 54601534 172196677 488902808 798279331 631592936 567708114 467184724 855171008 17269254 177008638 964248935 707745609 690122150 355989553 408870613 473930255 479040761 109451850 778151734 121643161 889158009 775745064 419566916 370426790 890622828 576468874 775943354 895417639 530495511 450200710 826464712 259929867 586330924 523577850 217268989 926347013 531945873 794003741 30105274 123436367 701083130 725424338 203803450 442510987 517769125 485322721 749782880 82356322 928486923 165769537 823298156 368926613 710670094 657583163 720700056 328954263 122590246 803553375 844664008 149504094 253501804 131048283 672940939 713392644 334463341 670833634 406226230 281853598 61978911 493606253 32970399 730258419 373917471 362156236 107591800 508632583 9251706 456076368 556685791 455944931 28099062 535201741 701103261 658811596 463392833 501397936 12435458 633741569 861150253 707477429 465337944 873794333 845729545 291936274 454120684 599700201 451472681 75966143 100855930 703847274 287617999 100600693 558585109 307471204 207318239 178049451 727553512 115094795 70488949 75005465 324610280 282204000 312913931 813586158 606681122 789738289 91423051 274390467 912807476 696958707 252914285 626212857 913310418 797520385 54728732 897161463 796165186 406857184 859896551 328107191 487734756 80548247 867564655 67574942 968644257 976215129 260941406 137981575 995084664 716293031 198531210 237958408 560339461 489741629 296226912 5116293 555602045 418768086 560250627 66540244 748378331 296905089 101903801 526100413 988038078 286028439 523186306 137271048 45629301 984767344 275603401 376501644 10749192 206189484 430023717 219758354 953196113 769578410 935459395 901580004 304294417 141455444 493405896 842810941 193218490 190850169 724366807 413616271 642088261 21236760 372477397 58526006 312720410 256949866 43983400 793553606 780195465 656258738 695149133 535519104 341039855 256296542 999926690 343964356 685541720 363499594 151401487 963065881 836558878 973501080 920710255 524730519 969961871 434572079 192669452 894594258 889236215 135188506 395369553 805364045 170714274 21690689 753888488 776618725 681653197 147458800 459270218 68754811 796867703 167892143 551712292 533704224 852600994 553784169 605960061 995591211 177909456 934624639 77325576 533157993 516074311 28269469 508582900 809668465 386899075 982011528 893461699 715557956 612565208 275320943 698859941 565524806 781238719 568302832 279161978 774783841 462697029 565645918 351111940 373585956 977946607 93846764 543884685 47767059 79335511 915785076 273793229 977178133 559020195 223335771 61163252 936514019 866079610 896664727 297171457 185163150 405349439 504754351 218579672 794478423 773268465 667988901 332832128 331419527 353873053 575621456 48134055 112860616 961744491 17848101 533162681 949983282 618928626 998169829 356987354 901223373 182614834 79909212 208547073 139129196 660951314 571318119 134596118 663697102 358090604 31937664 749257657 121115752 77233833 841573684 626109302 624840243 433685547 964275109 181655329 291818281 196883280 630385903 824384651 900930003 308502231 403579664 536407368 634985727 570811430 259683915 22303134 93321408 66930044 31816950 635152425 495146910 627382103 529555745 890251237 303383346 830713009 544774390 626870545 807091444 293933157 875116626 442849403 747465033 845189540 107474814 951471163 839062110 749552195 34300289 823352936 513999448 317892598 47833857 399342354 467997124 116058442 664584784 76236957 680282341 156960569 745434443 267129059 871856980 101928327 225607971 379146002 130197364 594782661 151239489 800394856 658052945 614711323 379640268 41494269 110931101 340063758 800824559 721620051 439129268 248599772 77927582 874860361 264175512 694177780 990012765 363263505 405257663 927289183 616643120 862021533 386713628 837686054 224993166 440418520 667808386 821284847 106632486 286294175 503500777 658449872 687228505 111054422 959001727 446302307 915381538 887931487 897575509 692012849 175561510 774742023 473870795 112786605 20280093 282458288 693930030 334943729 203731485 566116932 484044956 655205571 500794839 135191106 557032904 855186164 711171760 396483332 500555296 607284456 500474926 491807580 32956009 795753195 269298277 955167563 906687585 372301078 94309607 775084455 259589196 996733214 535223464 74708084 278321415 758171676 323516016 342120477 467930199 659747286 488847611 677596768 874248492 917106722 226541715 790879798 60722475 759019324 634472634 578776808 174309659 987182333 968406577 662169486 105382785 317942731 781240581 612617109 228074760 990089758 965483779 171373179 979306463 413339105 764412058 323609454 238305493 813431872 650697564 415373268 118208739 6272676 574286020 733015671 516307907 39745249 944434516 200283749 7946094 639862340 978504234 2547350 419334101 360486796 569146953 660113265 373368587 160550530 975319766 857667861 191521070 455324454 529018748 847204578 747391915 112007661 157802318 448101300 80587215 774588325 812312121 40983764 858639485 164058800 616405822 42733173 126262099 862526853 298019305 779418078 366740830 237038850 875280935 683973917 121321174 475771573 896580464 558874235 766560051 860048446 511393534 129049763 941836166 881106692 205435206 782185377 474688921 277330314 811692048 280939688 170848716 598743144 244602469 42282532 869145957 161429285 394260930 187107033 306427469 578864139 115144905 994932865 732684299 814734282 433481884 397451815 464011344 457668412 637628649 499911086 552389009 102960074 998172016 224928976 363576793 852239769 300591556 69236347 570536956 984903047 630370763 8962866 195794205 230368020 501631185 624686354 948288501 786431310 352058422 179591838 13431601 149137738 344043312 839611024 942508615 275156902 910547050 422644915 7978501 60828844 255406607 222152681 516181721 715251917 259448512 993353981 810016633 109030125 421276186 811985459 387303055 205795700 308022606 445359094 463087749 253867751 978400387 114491915 941026267 520701732 852703274 71342337 383923953 264726591 272362578 279265449 759432986 858529046 49399873 789815728 315814042 892619919 357892744 348095320 330454886 939713859 370107762 170135376 857761832 346447130 708750751 997869086 953189916 198015124 775615216 46802658 675228556 674697006 308910900 218974802 874709326 418276575 82417050 229931887 585391513 29153919 900543550 464692305 714548298 231776298 631776099 806703044 370328115 302223581 673056141 846092407 202020796 685631885 582814887 916773006 744556889 32126641 324254748 142570291 192558503 810802064 52776272 150171852 868255132 632519798 529019913 27009984 218501653 700093677 117532889 907848984 970635616 196560605 306103093 979889277 685248162 212374026 777517976 649233974 710049892 621187957 437353258 326521601 735553729 275694685 936643482 994936427 122232640 904537611 896756993 814979131 319268911 278317246 735037031 285336509 537422793 954062316 106536353 818363324 25478907 343970251 972461686 328341675 264947505 816903789 658313877 608942568 584318802 312645747 553061733 780900261 378324654 297856124 878169205 152589555 824594903 617681885 84625508 603434900 914551754 58384558 569086981 568575402 447507775 936500336 632104731 788918877 299251725 229815388 641572653 918035957 72432790 109907027 53332836 323077244 181666526 498119965 614157973 84833315 970466145 727388477 189198679 562103242 818096904 200227079 221582238 931386340 118972446 791050076 477732852 861737954 792533941 141930226 867918334 481397267 687740815 218131044 223402119 182406613 566635018 131539950 178878208 86648431 521291406 147278743 872441348 223891032 292452585 141153970 688437867 530598710 431613332 708859314 940978186 68998548 521190625 691138076 969547265 120617624 212000764 858273403 711396691 766383193 389376377 505471821 748612592 130807495 259542220 354570869 109503266 756758016 825420747 315098949 608537506 665925897 731719758 111949637 816118041 999004304 486078267 393737648 59866297 791970717 982127659 26058406 817833496 232166123 359029032 37743321 921674984 61343540 277970204 790232140 212133618 370202139 749834823 941201589 772395751 576294484 564158221 267388638 645667254 261634801 255525258 987727002 114712241 625856857 743416447 922158186 84905966 281380018 492380431 294695690 354500595 116530456 972874325 340933742 305754623 107139050 961953640 963889889 387840314 771522203 272958372 960819953 949656397 480248525 905757027 277866333 971159860 864158703 904087166 517724195 951665195 722360171 226221579 475576736 59558748 86129921 862030803 652294860 97609812 85414378 996559663 625861528 22628891 636032317 66005172 141141338 262236066 821013310 224158820 263066988 834744063 361025946 245835056 222900384 671182682 732779062 481013992 646990220 387368669 701429029 757244894 533873744 892786362 312678118 310223836 928684116 95207075 497395958 618298681 724167527 665109225 603783089 842071953 205944 279308563 769696109 744596136 621009467 323387257 214308093 522805498 728345412 225119174 287239723 883155615 167461156 556484949 266846594 228623471 485590874 344518314 285296661 971291783 279552565 957064481 935663478 37136747 305721695 484028940 510179215 481337327 224108841 541669039 214837948 958151775 952002857 191017848 136086712 121426772 213148978 198251602 74696039 729013038 343811041 485074933 63359642 384457727 20244712 634991677 565652205 840213253 400403466 713227173 751954882 392871607 363764687 622027804 650640046 334716857 411206783 407422728 6645 557128439 237480383 207001388 94206560 914388851 93508531 941288741 190168189 299506846 320599130 146436590 862632840 318522619 906907735 10326358 606243699 469776702 424626037 140176065 602232556 645503382 39906477 625986543 741425572 354334705 819931294 183933592 54036097 770489477 930187910 176837214 443617403 614795449 965427025 413998822 304143300 975011826 730106867 51674029 534590164 712973679 311273250 23726270 511007322 883032366 557985358 682749477 808372046 800437522 66109552 602355370 205368070 64831023 253242292 299649349 897492073 980101015 265082208 634029484 442620296 214102798 303946225 402969476 993823428 301893526 517838048 339238136 560642431 952282501 558845189 863177771 481127348 50573439 270927830 76710890 536610852 344562345 568498409 693905387 344509967 785431038 718935743 652503041 973894889 237788940 871399568 547903151 398388682 77622962 534418767 188847044 940024839 597957978 173710006 726331924 260375740 35785058 72287725 46466874 367009228 152112724 720516568 968373599 749335551 658115590 939252680 279331220 28578306 681473061 29843479 872210703 792466993 856919241 200957157 335221676 763275483 969632924 332101637 938010192 126371956 803495528 980218938 511320012 965624514 827767700 728417048 273522997 82135138 470036904 573355186 559823576 806824907 886877657 38281141 843294392 449379170 648245870 691763033 475316440 792919425 222606367 882326886 351813563 237259393 464282123 513638389 190989183 432640075 33714163 877119039 302075348 821100551 647600509 123079943 742065456 527187210 116651678 529831660 713926048 54804808 6686487 576827960 637903492 998823060 753350806 628392089 443004009 897284608 246281782 762293396 206461242 614466107 968898882 127431290 27241087 749687195 377376286 100614333 499367103 901691081 920307136 253475196 366410977 597957762 487408889 410718665 464294759 372408411 624698496 46180815 309894847 385351894 317207946 729439613 954846212 160522748 567436350 307645715 421544502 891589369 879924754 420109747 874153076 147030746 223568150 770155960 793035736 172871288 716016863 214715579 509572059 625063667 156306100 981525938 219289370 760841855 768757769 784964117 351331825 543549432 135749731 629311426 790401605 5732744 696085852 126281971 696028773 161421389 468921902 809566821 868375821 974374268 96916266 114154945 837008060 211315302 185907017 444480908 315981730 774770851 379054021 5768354 367112976 279246552 335583847 893844344 896312618 156926305 655862497 472696696 841142482 61256175 106011343 238312117 173695712 58292925 949425528 955581261 301977273 804334925 168276546 57221341 40293691 635638272 621165575 206603131 678007120 775864774 401415692 761521224 85309839 141632932 150582798 489891131 653542202 687892260 144266374 921692671 756948318 816720762 717601413 991824952 90684217 734628959 688416633 485091974 707919647 913196627 290454596 600137349 814720297 920354422 552528950 22486459 845987893 330276143 428927890 443905199 658013397 871654196 709504302 978601022 75555631 367210850 481173526 924849790 706641857 5936675 669178488 403740536 503130916 385374603 136501287 386925510 615660065 826610020 898840599 525263010 705275645 992153489 189134131 127659276 197266208 938193212 241722409 160735497 558232193 184963094 295617327 954996088 210276046 940238753 803632915 889288020 632273239 476910587 16361882 267165843 470740352 934730322 217644919 793343015 282879052 650107490 488004603 367429283 912525573 522029639 350463654 743686757 311476612 530185493 362220162 479216470 311113220 779967519 596312974 952171191 934555842 815173248 89726618 377845419 714809161 85156750 305434650 293972937 242748876 229270152 545510501 311836998 390517494 578420905 775862282 473268623 797186153 620714397 71284707 956147797 403084239 576473305 962197286 183456484 813425574 443263132 348720057 604973884 464089124 885012450 315159246 8487530 309145797 69087351 956790613 252214103 129833418 793261502 639478756 341323409 576385216 432458277 152420272 309071011 362256059 624651938 206437887 80054922 918156796 572817776 253560475 609118885 569689902 123088447 394651226 49325615 822042238 885742213 621319301 147334361 952864936 612610434 619783475 80963715 398410613 173700715 838493165 79060240 663514873 700728612 303663960 635243848 800648955 294879414 319135566 284684747 698366478 637726432 882328153 87019559 50849885 794192787 264530322 961599598 165071083 36028619 960686579 640647871 309101857 522749338 269567574 933717659 285327274 637236586 805315518 765757944 84791116 42699372 162024432 425690959 832853720 103060769 239239766 490307473 734342326 108347383 39612863 709801072 595404770 401675336 833375111 84344471 484440019 627717969 947129704 483156198 563088922 149709813 687740899 942191518 748835955 775456350 300641284 769541720 631340111 850134602 621989214 963425802 938820234 760005042 16657951 679807899 668324288 419731471 621920760 790168062 905158311 892347250 235709112 853481999 831616986 771278233 226369368 423472970 307427040 376333420 914662411 44806774 661711180 102521821 841050783 972442384 700118251 133935879 903079142 883783162 544848124 522418355 864292504 916067150 994803404 260169016 733461123 534412679 739933434 934675732 75651715 904223531 672631957 922888547 921368633 702668066 303092636 870299006 324617421 195189869 156902532 348766377 325378774 982657789 736623507 627647988 586810835 669497674 215699976 106370648 796630146 462990628 25095952 65878852 444386576 654953913 140383530 230387628 886880204 425729295 265370104 96031292 177831403 265690493 102293857 71247034 784386487 108927959 16103350 17940478 997558720 957388212 278321136 223325397 49675544 369117082 623336478 668291602 909031853 23858455 562487290 515168933 859213850 456426361 197245765 268561665 899817076 42861351 419996333 179789064 494991958 294284615 843621652 406720970 177596941 574997718 186851637 770299484 289556367 971383475 928667031 712128746 695344575 881164671 519518570 520569524 778078991 834162670 63400274 300495795 616349121 704941435 18048574 404215565 587748719 879257447 482078464 574881352 872484389 360867316 868312230 957273865 115060551 136718494 721495344 815605688 106919878 789017452 6281065 748895614 788118164 899575581 523333155 219434380 278059483 263217421 467415710 542178114 622558004 354834668 933469473 39595333 26617550 242159834 769948960 490815708 857662364 554734953 369134938 340973734 412682571 634445787 671285352 668113240 106723966 924729191 328199828 203516693 624022986 797695818 26346222 979661890 819356223 497470661 25220515 753106029 116532796 85709125 718433974 309677228 348316596 48409495 368416931 400076848 697524636 304588629 421634196 184797770 2241499 724355971 795104265 606372565 916379225 346850876 406504412 685619869 387131969 664554878 889383393 814510000 985374067 861094548 707919732 889144021 961699593 533735946 615335904 989499314 566693131 753450673 607164930 93279091 862840254 856163994 893944329 718038532 599814570 55394429 106165308 685687736 169682300 215196697 969984339 645221971 993502332 658189530 106877427 728492354 9500707 381030903 685325757 128748305 83568335 789007896 732125958 820512242 662448642 883910738 727739811 94411936 953884232 4496667 563018104 809936692 475352126 481446030 375590206 725974036 408168861 757711353 57099923 635928601 767158103 662141141 562136096 870399156 17097343 575679848 685938827 220416693 301248445 835959557 863848150 734881138 619747145 375927756 732605086 506073955 484790763 816775855 990471426 589415967 857674122 291412783 414338353 784654553 545335488 872373942 423805624 60757942 232445423 859046631 649180558 432594576 8835282 169303206 592228865 563885724 573493854 406216105 278516948 419140375 514548844 765659735 825831122 227756512 387032288 409750200 386993578 998846349 669226992 915664538 210798714 916044270 473295550 81684200 519050491 625529748 912055380 763333618 133233565 161910907 315244780 883310024 558324679 469115183 442437568 844551690 320141178 270332834 78132794 131262512 300195048 524606794 102337962 611339588 165145450 918151506 284270591 421241963 824682916 942692654 929688904 354519567 973686517 416981394 226547814 103281262 461996597 431489186 865365447 36276589 18652023 849750645 173954761 992731278 114859957 447673212 498914125 197962827 438379621 916308587 125828156 592493758 265654851 199884601 436269763 542919082 374695907 512110379 481324670 713239479 663103482 727074453 294776926 469966171 137150389 641670915 440608467 304666135 849076541 255854982 793458682 595302532 266753317 299128490 7313533 70927399 97832669 317352276 245790842 878997662 440178282 801617712 917591180 346444099 737210202 243717463 198100498 519788102 953122670 831332986 867368085 921466629 98584469 186395695 107779288 759573988 426563085 161242898 589286368 41750137 833986912 302221053 289962396 569157566 296032055 222167597 345655627 214569687 791369611 169253327 115854960 439177091 72148061 315568483 682144559 768524304 131385366 800466760 796520713 690624193 753219258 403170344 555246182 188845557 224374174 225822768 320134645 355755454 948473995 303717291 720419207 778710497 338578854 664548712 454459298 199557693 313675428 12934025 657399888 723556183 129688898 789790871 806888963 469181855 514179281 815368802 177346384 672398896 743352571 320674118 624356750 178928882 184980709 561324128 404517280 990124064 817327642 886883873 577694545 297576739 468789909 926955697 890598195 754932831 85870614 23523176 956175874 586959865 532078149 741114632 353479933 5221499 510446897 245200241 590634299 277280867 475179124 106653760 747102704 188802313 220520924 40328626 922266993 619967308 336160129 724357033 632900068 576922112 318090809 537314345 424709769 62585697 980041022 683935139 22230014 625914355 552065973 766146149 887132220 149672051 947566516 859642783 795551607 655265312 230921674 529780932 232935688 561993004 845265698 622155547 659075013 953153245 692177034 901997952 886834904 602619886 509236395 141252556 910540606 919506690 982862611 321790483 860335914 335639300 728946189 727518653 670141429 152224065 808463099 64978942 979473743 399860524 323173878 93389144 296490994 304184224 174148340 755483895 309983194 323246581 842074342 497973559 662992588 970595575 80856588 907534042 739658909 453137899 562787928 306356493 967512307 655434824 892608905 635815410 423611210 914352997 311806351 809431868 5538909 653456021 447817944 315921050 548931057 262521965 975950788 284654082 718270827 222585284 794550226 66254368 152713865 384402069 98838402 291814045 470608239 939842932 252449173 996347457 544348289 810047291 187555972 378567413 125225521 499942173 261527121 229107055 827398753 151578374 96740936 175164771 700738582 61527454 860096250 248332643 929881304 148871148 350030817 51032564 430989308 805003362 239389822 638750859 584496998 94613610 45319601 130268757 327938696 843948534 837118866 335224996 266262612 695628113 90227035 524966055 33837516 506171257 284473678 368078072 318350165 350685425 355560998 502336976 395359216 213182826 445954334 591937109 999301174 370417822 770658631 375498812 857401015 114175249 691097977 730392898 517295776 40979202 428191694 951895726 71801729 250386864 551587516 449024524 286242938 78855416 816805132 822387959 949115315 782319481 927755093 271064463 248149768 99700062 866147903 857684546 102412444 359493241 147472556 69734671 164457265 198422862 34531923 557356138 482656285 351834683 597409305 114610322 142827777 148918275 619584207 121574889 942223232 785059650 672261710 536593393 891289163 670866362 45102873 360320608 679088603 67947620 189837763 650198627 707480633 485633459 78477594 78080244 472162133 309209502 900414788 564640605 194377390 398872650 219880372 128797575 397164642 53447138 798689892 925108170 191681023 881512669 486275090 812035986 96179854 439661652 671502239 306170394 489390087 709316416 160638240 59463695 880838676 633764449 447087893 899808135 528302969 375745104 635383354 499788739 191211685 834472707 737948450 763173263 924088083 582329865 408002523 812623436 892004342 248931365 433227800 642484756 116549510 775498343 294899019 267690035 505860623 506162371 256419586 901701661 111298000 736862598 267127987 664667542 931742527 177845758 955621291 844568878 643425422 226114403 275318683 261376628 772642240 458099468 961337941 823148665 122798869 603824114 468775580 764007948 160738688 557593071 168723994 163601778 927008297 507410889 189047785 966947177 253603686 348663879 674570961 120473231 785465314 237891828 199293913 202316213 633054093 190459892 777246805 300249220 860297632 553746252 145204310 982405539 32553788 370508874 680873015 283696081 169413893 803214886 80779084 655551609 731647516 490282640 363386556 82048962 297986609 488336583 222989245 70435821 138138760 703097662 544069753 920329118 342751436 734794056 30838823 506967564 206474743 972546500 747208132 991127875 25366516 838927328 526444423 819675794 167491645 332697766 789756846 945247730 738548353 871618279 932290609 512835437 893963102 833208060 405694617 531841207 277914363 450789969 785047132 312505598 258595748 336123076 654676015 323283534 609636837 992455856 953050038 226998650 650331745 731583710 973743839 683080449 260406142 324887219 441093785 920477457 837947294 480168622 265146755 775700026 702938123 470083928 887054862 245147602 467241592 190046576 941562739 268054813 831424107 831146761 25386987 31027108 474236103 9764424 673250113 760997602 794123727 952264003 994388796 843974342 588944753 684782434 167196564 593155741 504657745 670590190 553026899 159203543 845226018 286532661 570290063 413091733 659920964 999353008 113031738 368940253 194045365 530467755 196033468 482561924 382369243 626954905 258794826 105403567 194210586 256484423 250258047 543981605 891033653 101617446 509961757 757432045 10115452 881985860 687959250 483459375 635657104 593137832 798231009 116296553 133552428 116455655 81859392 437175673 470151208 649278339 377253202 835964502 680988497 48296941 580725695 664508377 649252062 273860660 308426546 828297158 893909591 860820844 77781139 884692563 99020609 350181768 163003796 939577813 8957522 902139339 726178791 432978295 777695483 405307957 647307149 457991728 62692701 819236863 789223083 277125910 171204624 315959691 727702430 150812182 495992099 383157655 372709152 396599188 812691664 113775525 961680964 837250521 246668822 99064280 220128663 418661592 990945479 439641200 371298061 587902053 663743758 403635676 950167739 719019251 298948686 32820388 846836246 903909231 992361172 775021534 578689036 665783595 357737545 39421211 767123438 253612584 192111748 17162870 105474347 23457832 424257776 982143568 809943659 872376609 413525441 904175409 953199031 8412723 403786074 901247618 489817349 413180003 505229329 35557167 522730571 663459442 85399405 3273122 36098237 888662658 283895063 621728637 512994016 577044931 25036233 618643429 207189356 604101516 904079464 397178262 117045174 268114082 417912039 680150530 539148210 856290991 775205022 816916214 148806626 490814279 13417078 30458303 9644324 656835554 488227178 168679627 892499676 577564028 933806941 167491905 831864070 26342713 882191970 680234483 136900970 852705364 203880518 572220043 561169585 612717065 60538105 324610894 179756650 763487954 441443228 252222568 374846372 963532761 939856598 989056581 877439167 170515832 202574369 827046802 53106167 474866241 308580517 587360562 200661062 133017455 235630782 642744831 384377036 248443187 61779496 985443431 761881653 680527430 161634936 446596267 166447031 634646178 946575468 402693815 981589283 821107617 699476945 737462169 361887003 388965092 593320821 54825187 149039207 18470106 159836683 689837172 744003556 805467788 386666768 84646608 587189403 865643411 659430462 828931224 740013893 670455281 684738048 394477650 545672738 651137681 137480478 665005502 205701351 534089956 799099378 948495812 861609739 18482114 59873094 371679349 16936170 331959842 826767159 983203393 541709469 54661956 593844656 925247931 400743234 617931942 83359026 671599708 624984175 257982352 820004476 956708285 407593425 965186451 682770308 638059983 862461688 841301802 467422308 827423874 981621883 211969288 696330203 139969645 633401942 358965162 148181358 925766214 592394915 459960911 742492270 400943340 691149527 722531489 909267706 317641882 567809605 463463252 715112853 962073903 934407852 428270500 820404842 783477264 966535990 59604874 70854981 990781365 762616976 226246433 64476681 191636666 751555553 904985913 185105661 420180280 110337781 709182271 24744435 877152176 757307107 22651255 933402745 121424291 678002652 239051519 855017872 72559076 221048192 636418303 242117638 679728556 45260594 219866773 963672955 402405252 288895939 443758230 521092342 805494435 79947619 219565643 140378655 396672733 492881238 331348694 937250275 647761051 193640120 559703242 766984922 41469983 265070688 855821540 83664275 446187371 268857606 497242299 192597784 721081069 986819357 461539174 899254619 514703358 20216211 872984489 360735055 957494655 678502928 909048323 484208121 932306204 605704719 794194570 954689354 240865562 928916145 339152716 93452078 116756788 976828147 626083400 460926867 616820982 236493587 20735246 514369861 398049168 21285943 861743422 567312254 888939696 906794374 370297507 990618412 668564732 185459823 732273494 550561533 214558083 390298043 505728551 930265552 503675086 722507914 631906978 395943128 478714848 861833246 901716502 698763215 488607303 261488267 176581672 844266586 485321873 79920954 88819628 450399241 746138944 875938593 768659009 683769370 475829060 733139503 171976991 967477974 687016208 962751250 368845880 543000286 737297155 329495278 585092892 479939400 446305034 812401291 213158774 629767286 131526846 322835882 858336696 876283489 373087213 624236496 750392637 633609423 135528077 290973320 354724523 638077025 246068872 350074693 289764492 394527497 117424057 546220909 914720354 827853756 367353033 163101130 445328326 990479272 856538579 264556533 841952909 200107360 72503458 16966216 753349455 610241020 645723824 961996092 155308257 99634461 888566546 824448844 541223063 704302659 31627934 921097554 225999964 687820043 503928781 451550834 886284493 425594444 958942341 805017422 241519389 530337780 995123591 135222646 646016967 313727408 131662668 364112434 539106238 306784084 907295552 774684765 971840420 545670387 433781404 697168127 986349843 683195437 785474805 829823761 385412720 586999309 342349373 520538354 875185711 104479408 678781198 49013208 454758290 299491323 881952836 29554970 812370587 903842336 366492769 605278155 111117915 678034868 301432019 244401979 816685248 116143507 178529927 846876792 493942705 857185578 748686030 324782529 572491490 533830173 945878690 237776468 64044146 511498262 368692606 91188478 541331649 462403365 260223486 995458178 164316733 951065359 358262264 860506679 860149960 976433739 956078197 84842234 306840579 780210816 614544246 734512686 428809273 98043220 776529640 660194711 554800855 451645240 533306745 586650992 395036133 752825296 18333655 776099713 858526842 365676161 615008537 351742964 164506017 300711336 366397574 968236415 60988060 208453780 583617117 678237637 583297286 817693413 646935840 70937935 204360480 754321229 509398153 389990778 179162180 35694532 259008249 992711420 306745713 643313045 680067433 671958473 254881096 359429746 980760977 15045960 775152207 903252782 135358034 266231106 280581479 892803462 568308148 171302035 609121290 399129298 471748075 710794934 20585142 838549965 164639132 765100576 358463047 328759799 727203528 993659116 388090658 683215255 894351517 474954880 914371899 360226013 616094373 453224511 934784239 548287444 33516005 950095474 270705899 645822488 140636085 418802790 694277466 7982325 996561303 99814 89796226 804505698 829492541 913621773 763018918 332701886 766553254 190542977 908792093 533401800 356916827 915309747 920945832 610273544 988099976 581751392 942021609 89716447 684848732 401236281 701088340 252806372 94883882 262176503 356932463 137734443 84349044 1388060 726359065 884640981 68416852 115342131 917985360 48424932 677544516 70207241 813990366 137473963 723882000 261342005 849076223 63840348 959779338 67446661 323901342 249152649 990291139 133141258 971811542 314271760 894589845 257812138 185371940 563566931 100920684 311325719 683534856 202665350 268567904 746924321 830086609 141657361 916254719 843289210 967741252 800574235 550052800 363603143 452456190 253209871 132252295 136376042 933881763 64105057 303736138 507918344 505296400 19353427 268851537 985792521 605397006 69367671 305798565 552658620 243521381 135184048 977018443 961871094 113182479 660925949 363976567 470906385 225803289 752549622 895693651 218734152 874918399 517603638 414125014 450150195 137504605 614458683 507148435 803759236 704596039 933894123 692864583 449380925 113273074 879457288 225129338 680451215 723088871 85650451 976677999 631880313 791096301 341599376 612412779 749575758 477053979 648708546 472118079 582534621 79143615 926812936 739818489 450809598 285523037 945432141 954724541 423112949 259237775 808509302 395859063 888999804 553780938 255673150 550953426 946027194 593801517 593277567 697518805 366443764 357838116 889225657 284169324 259518500 505136833 164633317 948526127 342291038 786294391 898324493 455487222 378441939 534730976 745431323 156437628 326908519 879322979 475750561 242267509 831113330 361112051 962547604 966508030 130402910 457233580 756399614 895181000 158160456 557074044 692010378 498634142 651287511 752564607 706281508 960041612 979114197 675071157 485767629 16622512 701822138 940658094 219816067 638126864 343979663 852495823 536192994 99511204 105709058 783454119 609226775 969145609 311253410 878285100 533203522 765404014 293111899 502288335 103922874 704715870 823179392 594349478 461482024 138204421 760645814 526983333 850432474 509008307 873745186 433123503 913035475 733425010 747620125 708767052 604425023 771816524 530535254 195302285 676128983 402352624 447499997 398110443 760661150 436801676 952577128 534815052 487052464 373300660 868471688 416713942 599527654 103461333 344637333 934404790 710370807 307677599 432498349 573133985 277346353 76811146 873488723 177754146 712774891 95832613 237159037 83691121 28057432 2123789 743587803 482377524 134367307 765147462 308912959 399252527 891773972 313098890 992466580 419086001 663103894 208926914 245715288 909781578 222703738 599868273 148847211 203274296 345919288 255959418 601744163 168937266 878390647 84969567 165199597 567405683 138368384 140119605 181005730 986182438 11418217 841211574 178039726 16332494 568548106 341852812 833979964 944149650 807318980 792409574 775463427 230517661 828131081 68206789 182219730 277558452 667918896 65487569 330317732 480357775 742043058 166450181 688451804 547869977 223168241 216693042 505431521 906559547 718548900 5634046 201063612 397980593 302748136 504703085 814572996 78951637 398014443 825069085 478923769 679025244 591197575 495715002 517493324 910991875 384107749 23283649 788124902 799016290 120721975 167615483 591764414 168429258 203146928 464294503 540756429 937988552 136235964 381759227 136697584 231770099 841308738 869238741 460610024 970390453 989129141 108954446 891576826 842792999 403932930 293921215 350135907 488708996 162249305 297825889 273088657 986877097 406513072 467947757 30058915 333545040 394414393 788358349 854183690 327135582 878517450 543181858 651976044 753549703 502303913 32147906 851445231 568080985 93473337 609740234 655265610 81380025 217072717 500869749 604027516 532775800 807523493 632053037 505918135 844204753 32773668 973944110 804833612 189750618 309955004 49667242 135812028 848484826 593064897 807222485 417015964 559275975 416661436 464648661 982690664 631696429 850792491 426650821 138862917 584534584 514079673 714820958 960150089 468521068 993399569 339680759 994057864 702843884 899119025 871096081 577171031 495722697 761924058 398262797 328404514 357484540 273302486 592317336 158886471 54598238 868315961 112703193 402145021 213299354 534653494 769852787 21930352 772009129 764876776 217435047 57605302 427404579 841048320 663306561 543551026 641066258 746799785 900163822 655839599 361568075 860626936 436479896 139790582 212684904 701982563 758184650 787703401 340809441 501933554 739035309 907084933 412869291 141649345 27912690 871179405 489268264 23298958 826538820 353972161 618105809 917217989 422458458 383568379 261139012 543612058 456791639 143531740 613547052 935187310 982576338 343874051 564438342 493236708 201520314 715998539 449798034 79466542 136718144 137352801 910884678 864723950 39601080 638425109 942329356 723830248 992622978 412293810 119322720 854006234 930144983 986954937 933106218 458294792 762848700 37951592 732611979 664859154 147009722 46864701 287355346 900983725 412146461 618491473 785935802 502343525 126579446 285937235 793035636 504154935 78401274 143448753 29906660 966361433 171026079 153939336 741520303 15999952 363610858 180299252 914556096 167029955 701815924 638587826 367311762 201885219 359786757 185841250 898469117 27014254 893197504 839101266 419830067 635049971 772545249 557602739 681787869 547525898 590607240 45757125 537024501 6146341 813930394 637686548 887481939 174804222 907742626 585647485 235556760 79411851 582980253 165316143 306822996 427905790 538789350 452138960 379644649 633169713 458201242 773791531 573652716 105519650 261254856 950837803 753454907 336040027 848679633 493175658 771801776 994991972 304264455 22735426 342266922 506769584 440254108 411112418 314992689 283859741 871593433 666849285 51250562 768339882 682472842 434427634 719550585 964803094 271293050 848465198 233816937 671512641 27007672 78418667 625051840 936384535 8527193 253122452 148628741 50185530 887020025 180976976 724222679 313409962 694181809 173444556 858303149 821723458 593098018 684842947 414519019 857214641 892975847 609468475 529472351 303507475 892517692 340435120 435424708 50752705 265061431 828006813 226189160 669283247 118647228 169510047 167622551 999761508 607632392 189785404 62847039 899278720 424773295 868816623 886261586 728407807 631926277 598443864 18997442 763063187 14787171 718595306 153170118 262740192 450992580 18396688 304450810 590122449 622145368 676034754 427920951 973224204 758812674 748286273 442354836 54679584 683127861 750890173 144249270 31021782 314390040 805747961 466816190 139079684 58619576 142388374 837335230 525791245 834084397 702343609 990916945 787594472 521213379 178008232 230055260 704548378 299319150 343847036 775701050 460171414 48659799 118179638 556987244 708633668 598275494 91244977 352379495 566814225 416244132 752537872 355785801 381836318 977010159 373307925 320476107 972730540 405526025 436893366 849121508 736080198 769793511 216788681 383680858 32549824 354353010 556672052 559720856 718723441 293245055 940459872 513704991 98120988 952830559 342308430 151215376 34219588 769166568 976700508 479898558 824690115 234725873 317874798 235198724 593051784 99883504 508983056 464770559 300984916 273495647 310549396 281691502 803347606 831748345 739789731 973608542 189868738 885691677 86006178 72001505 550317065 378473351 680226669 153954450 185330136 293276466 624999792 849183304 76069241 716400120 540294665 767580889 624227101 971162003 402612425 12614253 946263106 103687624 347107118 637863823 279410500 283963470 995749293 304382227 801640305 188767063 136617711 861075411 868992000 221450231 843836496 299154350 933768696 480319031 967796794 157224024 816249650 787061512 190092819 418904285 827188494 331528880 374971201 861052357 848742769 790504930 200208708 424491327 672728596 211933419 517444420 658835604 545464527 252263090 577092496 7033441 417170362 179177797 555209063 133616505 238521637 608897216 193560632 75202182 504882904 436666064 569943868 863439416 870845247 145132562 854945154 254191203 380162859 720837019 324241219 716794232 967835078 634414872 643894138 952289885 407243305 530517288 559827138 443230453 271596301 362345676 746925889 3477064 518667290 503204115 927669321 546161640 637417357 183758153 72571062 227471421 264757268 847102177 412873324 670849428 899440030 889311249 247071383 160678583 459153005 837199733 530428915 445975216 835057861 156972690 612396502 864611579 238280361 491759063 146802520 544416174 167460556 963409844 272739977 436476678 488279288 421011809 524820443 888262341 805668915 280419335 886329413 391744899 633861724 853111963 227324055 901967749 338559713 5102028 7837660 716719507 531775029 242585989 953251387 705642045 342473032 411971556 62065479 77337678 769053188 275105337 931746223 257286947 213622128 244015616 265090599 87578224 907133479 822374159 618533916 91280621 740168807 951846621 464746085 128206910 636622432 269555464 356961045 902158425 233877814 275219479 301275583 624238580 877647579 295426245 40474194 406955834 693834518 950325372 509324319 202225213 524993982 25736278 1823712 510957657 684571787 653807147 884336683 980057554 833014346 803449692 688322710 319312753 23170968 528500871 137307492 862194653 14325088 811641881 967503806 253490313 176586296 880438169 715367998 451140943 11374660 23506764 376471631 226290180 403542370 967667901 694084362 661186824 720666119 409390176 988337079 95998573 580383 414711544 809004597 332976806 507019131 161191912 316286198 284013675 434792010 47477375 123802633 811897357 165416924 914563950 194113653 713935000 304615600 939866280 754710031 517156592 131035137 691957271 769093888 689707002 208680758 703009840 301462844 830575717 623004895 623796326 513943214 305058729 195765917 965025877 313087563 947597035 835642347 775113164 733133532 758112969 437153239 845357033 479336250 99062126 458925540 284248454 877800074 534602686 573793045 863288953 770995715 854051704 39120523 130394810 300219724 452812924 188709172 662947055 734268225 623409456 556296626 582165044 218736649 253275263 133188757 927426839 926195941 895334209 810283125 281691234 666746309 776579455 545295364 621962097 89123489 663866630 860183656 214781605 4818424 582114475 612594128 169200420 801210804 623972571 841969063 160192597 300125792 986071005 77822823 622367879 579181983 724730157 634509180 47233655 466429204 220223432 983444250 251195607 353165417 489967852 586139739 92458160 367265031 852596538 375524460 489099282 752370597 355632120 845620240 823488031 29404599 74007084 585517161 44218579 613849144 534342659 539082008 170710911 219601605 83739274 499145940 12584104 726504480 957602829 171614640 427932699 384664052 600566199 34555211 630903840 421136549 771440486 749325993 49298632 993138538 638952001 89641984 437208596 543436522 804801742 889064652 816035695 990292335 263946096 621289163 502798435 444067186 977298612 665686981 701068297 161207868 220647230 962302993 787854295 176649658 511252419 427487501 194065059 339875157 889514220 475122948 131164714 524831927 936027932 990966494 826586422 109435532 415418128 124214034 121270985 921788738 302534649 341046956 545524583 122758329 160624352 144845997 980127197 411155827 296248534 184614835 502929750 38009189 292684043 505845403 326837581 24061466 224943937 323332081 657511684 750737038 49527632 253077290 789375644 366917651 77642904 210866348 570613432 444845567 645498754 378160657 917524394 829165820 479803173 312247309 431333983 714411617 936011121 163508769 522949612 322158303 283675424 481619455 766272176 473845001 314546882 753106073 402997945 866412659 692931238 454898125 404852323 959420801 418742782 226421417 205927287 870626947 591938275 821593680 157277064 254518123 311281677 242482107 791816464 904254551 563756715 959460274 515576118 140093051 744351629 375794919 183216301 987912464 231409732 441917046 277014192 476112651 690909060 122667265 688471047 979687732 681356739 52646163 261258641 347469485 554789793 497607006 191744700 199768286 449019555 192186175 726968630 384150074 233463889 947888902 17050331 33016014 489683395 798938644 970343065 541396047 212669299 190129105 67277679 988559129 129774554 899271852 171537214 864983770 451881166 916247570 66183018 659927752 608560017 870216011 68350116 806966638 995264399 621807092 474056036 453778252 8551382 886055666 35349801 334787462 100725236 410102460 850899919 709735356 640195479 925237792 34485478 873072186 214240889 176846878 675858282 562602332 217389905 492931562 497493475 177831670 548340215 835749153 211953698 154719234 236898501 109220305 136555318 846716924 811430720 601300953 371160017 82583182 611213881 581776190 792884057 675083530 582548882 772533958 214419928 651686483 924695991 595168418 890196942 962505298 358648094 443818676 907663378 329477546 325445877 726227849 862540281 911528226 665062793 975761583 291829547 968464611 247637091 51693138 511101883 488480278 594361809 733253995 134352895 758620353 130467591 694093245 38300911 623459571 824269221 730136443 193171814 626181510 287402106 581242665 924866227 906205489 254621512 240096546 600850802 108691121 851677211 807710691 965948018 686883990 146612856 545277965 991087941 524008458 817642622 485847101 372026629 829969918 917822745 478966005 950445084 383851907 998678682 458144400 201911501 115513651 391469580 645523448 643384075 553053916 19279478 352445366 267210093 101091630 926296755 767629044 768910750 549749783 114472575 494091828 686863800 283190623 140173696 947776127 702970138 564057331 189264218 647261691 473579515 112120102 455486314 445316671 862290347 986960723 659606171 899500272 691480306 859346792 828286452 532783037 785364014 454758999 505022192 167736346 960779740 965856247 235632032 170058503 117457022 851916058 815112165 550583256 225001613 244809480 356809042 293289899 954916148 340246714 482913198 669693679 493404700 644906486 877184162 371110373 775246309 647300365 641805925 367677205 2274712 55761728 514704855 479819779 875818908 659183382 264766792 951409821 53250818 37220456 135861261 233090926 230234866 39657375 710045459 672220601 766748968 92135747 691614141 28473227 465318683 770922192 725377317 651648409 119559554 248057646 601327916 167712639 497997190 723905266 194363106 7608321 765192287 72097547 937076906 217812531 390145270 810858234 57454804 114938198 402217427 525796088 159022133 125030351 778932036 346601179 207073789 667620469 116154478 406627888 150641800 156817639 713964512 385470239 452116279 426401553 966152270 962489466 273534916 444483953 250953209 496431929 660677657 429163578 429463686 886671837 68026400 850314919 407391197 82630368 240014761 242429479 906972200 247820813 40471302 565321688 770347090 939785435 577426029 190618122 33553097 823957698 286953117 288474397 197732704 203067270 983498755 130219440 68202491 472047157 256559931 922483604 509989837 681187205 614698328 252095768 611090392 824353502 339843961 230843092 991679474 164262914 277729126 815515751 508416049 13061566 251520470 352437347 477845067 926159223 611831481 5924201 372553659 320172659 872363734 283976471 906065743 969529297 340814440 254284564 912662552 341648550 62825103 510050990 898986028 353229040 877230359 367812594 309808982 248443677 77160489 283870361 432075138 480807021 777038553 82932845 920448923 345690097 196229545 31604469 289022578 893170835 538786388 121841381 458468670 474931128 240647375 816016921 965169934 57970955 117349401 61782928 821718624 113786906 346931235 534507328 226060206 383877496 767783572 249126230 903432532 565753553 597957043 321652764 571047116 392268441 515878500 754770315 311833523 728549068 499965440 235291152 299976088 800402718 728351190 321244919 276126276 400019773 294197505 66523891 50032071 690808145 354971105 81369054 460958607 592840959 124838026 244375913 912370479 147765799 534429555 916137386 480798403 351287128 769269470 795634259 765025423 813181279 611601390 509798512 486889757 529255419 37619858 314658928 933004266 921194973 753267306 610458447 911973751 520181968 56408260 677753830 749319146 433624313 882850895 700307547 231386840 496322551 836079743 410712381 405878746 388044324 785161768 718188849 881029771 816902259 800713457 555721414 760648460 461221085 862008562 295420270 431140090 233246643 75760170 931496253 986571600 122872877 565437614 668871507 242460110 704873077 371864202 162515171 341552317 762778019 5342248 508379027 184992559 16259494 201096749 803079794 875531548 279775157 8348155 741473142 298712480 531049422 499851355 117627410 336402287 635127365 167811643 129124840 821096528 753527147 811673278 853068036 118207279 898372511 376943569 699920395 375975631 196807002 340044802 523680370 419336881 14482877 963579789 492717443 713374596 426235685 547796811 801953549 381317252 683699345 918800524 756212180 219031213 510928016 352946896 11474488 311128945 270267747 602337759 231435170 455250999 123613588 831166866 148387400 353254250 333057059 528468864 803375608 360365565 217017446 186885819 69099395 464016430 346512337 314237893 177188122 800953226 441078256 772799393 19969007 44063482 338816892 154982233 666379666 597172591 279080214 571397142 150261949 619640035 536447551 96051052 49832463 395970636 577914407 388570344 287514679 364061498 345078713 263533693 412175379 424943784 557538210 552676532 495158197 332050187 246404850 591914582 326813186 763524374 418221111 355500782 321932791 778126373 409494490 733820298 647848781 778659907 528534898 753552411 374902471 849961463 736256239 262856597 598150480 160300986 557313831 904265202 343982702 809285542 923073247 784090028 689580353 884987127 107128596 910521013 216303752 897130363 548044572 315865537 164920869 204018377 892993302 794881741 35439491 472149042 602590612 918751861 908794900 114190124 279978678 115354512 51362489 535964336 838179304 564066942 145075760 520682525 152541215 204050536 838245026 71519470 847678006 435411899 947017900 70441460 426435703 500659137 141166925 719785570 715476789 559989808 104631864 47306050 433028919 305182941 971709522 99150084 441955273 884333758 73831181 359094957 737626480 87183253 284975838 914011631 256459461 479824702 892934567 174260679 84415273 632892275 368717111 441345895 910373199 875825938 368063342 58803310 972087902 716421442 395668661 252386004 186044087 926219227 386600016 120281138 611318103 627071534 225503814 410469936 106775182 186316340 795787467 283038367 309677989 719464209 463939618 833298184 108151085 174726350 362952287 301116995 504541637 13761517 674439622 270362316 670362318 988428710 881594444 117693880 680441245 126592141 213546569 325987029 865909335 697812070 689516795 989153856 318345416 289906278 573628958 935059040 431402941 971877134 570651189 429001478 231604563 87057284 421513668 652785415 536743432 875471493 921053410 132101203 318997696 814122233 924321141 671035239 819468562 359933172 291374738 368192927 153369351 584802073 474454667 540752947 139615615 581162651 785940999 300120616 179165950 695507224 773435771 748770472 548981833 89665354 771943494 932350049 695471454 214629522 704920850 545841262 979039157 627479402 321195553 290788664 925766344 866254524 450204472 704130004 819450338 796423581 421800159 686802289 295988512 943493837 942676850 667614469 682761486 14638913 36091196 589451371 134209910 623955218 558994943 51330231 850387858 681274789 184204576 208427782 703520192 840509138 818692929 262882964 440835580 258401092 884066292 912924013 937529203 893936763 265125578 314205430 704667186 887218855 854342706 266007619 809929532 749698744 289362923 322925447 104381464 434013650 701580309 381666019 511765857 513593312 492140367 258727825 218685909 712162708 185305297 131405680 459205656 739441228 281418173 905674971 617252167 334102649 332445141 62811308 510447886 878446151 759840624 371969112 157906016 16232058 34470570 594263212 610139339 535865897 454559975 590660825 983143704 823700965 751612175 106961978 714484448 763515786 985433380 914304137 277390869 782054484 938492579 676549694 425159835 81007214 540332947 875629051 341516720 185729670 896622379 556359045 377718187 924367289 577491710 460950945 920631561 197495992 973769628 690050165 689024227 917536387 239603876 587686945 713536724 702676309 42914934 631232442 983671402 934235409 644326730 84966367 856201540 440231906 593337595 123199473 772966747 935508286 669288839 98390315 623614189 838679635 495156728 247442518 629357756 630880497 236318615 410548064 689291204 797826054 73500886 269173874 72558818 679257067 865915610 27431513 866089269 466344521 36559627 971836363 120249746 195364049 510822998 1523922 544193677 808989375 511382635 729802599 434919274 766459058 474811561 34016658 192150170 260886549 556352339 956958373 819373776 378647923 693407277 14167285 361259283 181573301 482692950 934576404 658463313 106378299 83550497 172179644 683236495 14143151 820459387 448826843 345728499 341639316 676215992 433066809 927339498 882722574 518081866 394619881 872470686 847534082 433904347 707411162 289756685 161892566 744090494 998056433 774056169 14975377 520496540 634180643 936011513 755378058 286134335 613085228 976282552 486774115 43669089 649409896 320067110 485510070 912146773 268769112 499106554 956488293 792524343 245002497 658572026 783393343 839030510 412106958 46303497 746482538 43780156 537258766 561297555 674250247 196372664 652766313 531739367 710356613 481633043 51195497 285273789 405381065 455052307 839802530 359821186 798230727 453165383 243733046 925001068 913290235 494114909 700738400 151447256 854626762 945569616 683358169 383867441 246198094 238936262 922480665 273847019 242230787 425770840 729880486 174705826 289692346 289024503 212144316 683982915 753058323 218702183 849618153 663740594 428900712 269592789 881442276 160357524 377906049 248274359 687727410 532619918 690594874 491799115 937742690 460695680 469945709 294834769 759449868 997927025 912371774 388753173 426975461 975225571 564445587 325391484 941609633 93378154 965074641 456873812 940205477 478409129 542488947 55528394 384964408 401381587 427707228 336386821 470591227 945804189 784942771 82856823 447995032 137208953 922204940 956989549 750530077 39468302 411315945 682172693 24101086 262880670 575073760 647500151 309483212 551405844 145585759 89526507 959000615 279792077 356214822 213654698 154730067 647433457 289370655 560737782 859740462 694377188 534344800 328802677 49687265 747828247 988824736 927988753 470082709 422824065 483361283 969566433 862564368 873288086 169785983 208279599 745163759 649696293 380561912 875952956 522833911 978659551 811534305 649435297 939790929 558022431 319439281 826225210 888031797 451236936 673569643 325401629 185507147 934735064 248105820 901677362 894420107 455901388 540101270 518378589 939941443 940781013 482998219 930709128 898271047 347343798 40150351 96325178 118891552 210337548 858964575 352020046 470150329 297600856 791177015 133373541 967428609 947305651 617042733 675039382 486425532 111778237 801904902 804835209 850540905 599660303 459350160 752378400 657501401 473010303 647868089 948678489 477986783 700303583 481357717 86301142 407214697 520053448 601027291 82568986 772144335 951630513 815487863 963431553 733974148 928297939 291757382 917448771 522909730 903894037 622978418 944514954 731227710 521840285 577493731 583168346 410038275 992483368 563690608 575559437 578866457 678581449 134692631 467227362 77087701 529175119 821350785 384397513 464984234 526226824 975972513 530745395 12692306 54880942 709476655 695893000 639647949 498177645 244802569 322409715 878743788 563399322 673945950 168277991 118546917 201673635 75145958 637396909 336139063 683907346 899465238 304181162 69735869 500548588 752467439 846535048 577171609 896713937 612960680 448133485 268577808 200482297 496750555 486455175 543964574 39772632 858279355 774122889 6258691 124110750 107197857 686924932 464995685 460377438 640744339 948967048 558822774 341051037 12394809 775807625 421755063 244915749 171208054 441348735 406310902 416087823 136627147 579178578 472863797 137955989 598463246 996801435 868075588 999247427 632659079 962613895 863115566 13165799 907123172 795864526 726083146 858510879 657388269 752684207 594383704 666257718 496478667 880683648 65124805 981207994 899606147 454723279 458444666 42305353 302459035 473856753 119204476 501017045 540666507 980911915 307816241 40939869 624645709 532198389 890581450 855361370 155473952 761867737 967288292 970335025 337110561 692830816 360193794 372872961 21384487 49770159 846780350 221560158 581486890 770538617 361312572 531204904 635977640 516082831 661437528 75074269 196393847 900694438 578744072 754465694 874462736 882352786 277080332 908858583 949370113 915775189 388731148 55923824 870868952 838843894 365694067 6695999 722886254 270622011 119189256 527997965 546192269 351736860 5393154 365887314 723867836 154989464 29560611 461705146 884753024 616272267 35444424 983833318 783853773 819492732 628623912 76768161 461702016 623338242 572738818 352089484 772860189 318747302 375833024 460848102 439514968 208998493 293743068 659524157 695679785 270663686 408150416 858358593 98843892 27591942 725174467 421736572 398789550 135733877 947242419 169266992 4733516 300815452 676514850 824288148 345272844 447703406 132213583 833309226 518708250 508176429 655264530 297346772 994187873 836270171 739630004 95293086 672915520 531191039 309996011 591143820 392311615 71273786 133693077 500488145 587393899 302050038 330554688 546173687 451993787 335858307 404884091 785801106 810621776 494154011 440170285 378019238 17723733 205361974 925767555 596832482 167880740 155785616 696329517 195535600 640753173 186130425 687184146 618116697 10496129 338377352 592519184 20724344 247570789 584786179 154355509 894659796 988909588 918762535 97856381 105822447 752182017 433888378 968025409 752022944 179900863 905929274 235283231 516936597 703307721 542714186 946986247 86435211 266098276 234918982 650307545 869416318 384781275 113076166 528682528 774670834 395374618 990990029 634766137 138448782 830919522 790901203 261636587 848279843 668845318 252340725 675463053 638259281 371890585 151032766 118036176 691243493 939962204 965475240 93870109 507566580 297915666 757636536 128955704 824538906 226833194 581985232 396617160 306828778 682702490 156620706 909154313 94858241 806443514 10065782 300337125 439245031 929686741 83338852 318728473 884187922 858638512 44563860 871403100 33892553 984048115 301392734 727866122 110857469 883220126 928969894 485453075 99526306 366830515 234223645 436456304 430005565 729071674 93408946 33418913 472441898 796666570 196204220 765768168 897104517 689937756 883555356 313764300 726737106 318019825 404849223 710609348 546748142 164685414 13319245 739305236 404355936 926888066 771947837 394401108 377275041 104250819 248798425 709409788 4951747 439852753 829750194 963833733 330789661 762122318 352769251 604369186 403317684 386557796 374114284 315260908 90254925 205139844 420066080 822211511 845842728 886139803 74283916 494920610 845302223 154034710 436067457 953380649 629621161 839056362 717963046 197198826 621461374 187779210 118272340 179131206 89120444 879247843 153499321 379276877 816111276 590289727 268080947 56052062 258792374 486498844 146712858 291061712 196410455 979411309 279040537 18847508 5204334 977654399 637966903 108547861 177169055 467294015 700817462 592602952 357179403 991543623 474850836 922595738 665366096 908232854 256675803 98882341 853095970 30258606 981226733 357426852 202991334 766440624 982228317 357083516 550421673 64398285 651009478 225648337 979513431 510536227 366976880 230060673 513588259 20070738 67720215 634483791 738207501 285802856 215868655 552504371 145513275 407069796 367711563 865367833 475552596 660236328 666735845 826251296 90426649 483101955 963956567 287887945 780293429 955839367 709071069 753629900 332278885 793981447 332105869 209434478 778249034 541788565 342004558 930600601 935149844 924016878 743740612 784969323 779224633 495294418 251706731 28455394 739027916 324680347 510753514 961040098 933670495 513630495 269882702 541341894 608802777 126557094 171467647 364458104 580692735 372472451 862872305 582203642 450435307 818585951 797701929 212128061 329920365 841644573 994715770 726740950 784103386 285228390 926385413 157366351 144931125 442699689 72222801 136722379 345207229 112267845 172930625 547751177 224977736 44161422 592775986 831203859 10265058 588040787 241614467 608186476 907613636 821621418 440869931 816170995 540394561 371580974 564489804 186098377 921063118 477321322 385902132 138855874 978358374 368779614 775647469 753277124 693594780 494414759 952804857 164053768 592493755 828187773 147513656 608484011 122785960 3124493 348679251 395076938 654459427 283805648 979058262 691986816 635245967 677356165 530962546 888015856 614388276 86622187 414409114 220607077 43346933 4137847 453155990 371207324 113025746 408299692 753087340 253847482 664428103 627168746 838094058 880298002 283137714 231876336 414814548 124596128 865499585 335861427 349798104 769653438 783926586 589747153 514338747 232885279 503676010 812969802 299343904 475727519 848893541 125264610 886661563 870370435 273522755 191737998 33976293 995201358 863593699 301860664 490647312 368504911 435195197 881996891 598711969 463635719 636093298 363550303 69083291 77686216 741012225 567080578 331932304 653794319 679935458 317312313 619486891 485167587 505738360 475274307 143264770 906484414 814236654 300557505 177809790 337319981 867128763 448709091 916092081 580204474 452317478 528197698 160180227 999301278 188942324 155785858 181497496 639952157 650603912 611468469 767139084 569052879 306655287 277342707 663410779 969865160 362566032 887801338 768114017 893891529 759470762 942585760 575029235 93150049 68117323 136207384 663020801 917858675 583398593 952136412 374200252 453156790 848072508 60402764 843629047 72111892 253851255 380599057 746038518 736256010 407393482 297324399 100643211 772504078 769593993 369318226 672934415 69310834 605425701 217208981 27656562 381450287 844198456 920437788 307528889 647656204 621359691 154236811 504895417 781995136 546848372 384687762 11365369 191213218 309457206 430299308 16200746 327776548 760571152 201336538 727973010 440256899 464573911 794902516 840256736 828790274 50089271 877799945 899052157 599290452 118785281 15041077 485874937 416182930 951589509 839813402 347157812 235837390 820634549 618093905 759602175 189442930 883792561 401761258 849830569 420123850 768639016 464641222 931496960 223250234 118135792 351784367 118662199 268706185 305777448 266243353 689786861 915710231 819314814 483224371 625746593 218065747 709226690 202781124 951846465 774682350 442278407 753341085 191810607 85503095 912965970 20619254 946196507 497086794 846928415 606635823 733059698 102472401 812309678 428060813 465696662 64244903 230752277 856648239 118346019 217283612 599832320 223280759 574060412 205999417 417817313 43754371 636844042 28344999 720499346 862554993 436285341 745070887 916192070 784343369 551154980 771036026 886125618 770335767 426042235 865446679 952320851 950364451 542695775 440377326 906056771 789293863 826956338 699509597 181550719 40823045 445195255 755235761 310297721 616350384 167346341 479599423 216773764 138360234 189697037 695578076 933638082 86785962 829622386 898062007 7582804 314448198 33739387 906860468 650052852 16499321 13600805 105417534 987454558 624075683 72076241 205520136 254180508 508988284 745946076 448032270 972594297 25245745 557105002 85032477 700352371 203336222 209111564 98989909 606271295 380066017 279352434 581096386 731642638 626124264 110115591 807889604 614051692 100806461 65159658 503321937 375491431 304359540 724708631 506149401 435893424 91371070 807885715 361147228 310549014 329607220 614848405 787099469 56416359 958280196 310892220 897413726 196902954 11730341 615832499 355610139 870106008 504184211 797003117 901788930 541522505 751914975 197005996 751548126 447107944 320836396 424517712 352847005 116377788 815601527 879757512 566758137 171592948 468889459 355315238 410998663 672405949 107706234 675186205 619423066 477535087 923198084 62792183 242438605 564291599 88591068 294723351 193502363 830309558 271603983 612424381 146587381 390129644 310260514 27898100 846885997 630396638 133379933 943177698 841304662 134286140 982786010 674981042 150217670 381139151 503387743 690860882 988929544 909410148 429587762 907613572 493079060 1549230 182651517 510506987 342339352 570828289 89983110 562997506 470544675 615065394 805394170 780557542 819480040 584831929 885249990 516250195 652346137 97064419 481440139 387475800 91692316 168515398 214507492 829362872 590174796 885880182 803975543 680555102 510140603 85513159 96593375 89614090 677067056 214579689 514146936 767244818 336328304 802122440 351481438 167865875 326848200 149103478 35187708 64255500 865703369 181245080 483224990 81229484 542289564 979844607 345459822 880962493 538243171 327230132 829014558 98409475 226829417 721735602 865770551 529862277 824817293 221594067 335619997 606830377 764254090 676934971 643633723 824182363 364002232 483022762 26068592 58357684 528691401 422484305 285636046 454796153 776179396 424000473 541921489 47286860 21558846 261173118 597188693 637166924 682157842 175484890 688745264 782437763 77513491 485951869 931488115 183539498 476722794 270114536 827514126 644095195 24132839 24293685 31994782 720363545 704212897 870813514 528471575 665847881 866080453 835984866 484838832 837384492 83041292 35443387 111538250 998101620 538368221 3183758 94343124 230594506 396672328 258172557 964865710 747505047 687672754 506778968 771620727 670110611 427757389 530242486 186742173 3515731 784635006 830708886 780531289 331241965 810031105 474194733 552254058 286143277 574554131 234322331 353085332 149406873 780675186 3241878 752175682 982760863 10866386 563499822 767289696 255241557 168849003 129180955 816668401 150007279 823131773 997748108 91466872 981271443 475290389 946350050 740590733 954598465 311774073 431441059 105589234 601589965 172009683 736405379 672926579 626560901 687590707 340793148 766579503 62887532 698946367 148050119 700667726 572919376 597936255 782386548 331757404 559825567 196157608 257119116 62585466 778590144 831321858 546513411 115736378 77318830 561826222 807775937 183763674 215639 542603926 669663937 77995412 94110476 300862245 239053616 640137403 800050276 634471034 518733899 828030920 475357896 131164133 88764321 715632371 22311078 804227651 698126636 958123669 744254491 873875674 291947866 312726371 128645093 742120538 938299566 586514212 303998583 626382858 283368574 199782460 144283306 566018298 118104825 909498579 677541787 843506876 913186309 803376083 142150294 839515214 923718893 430390666 590581206 132440893 708913384 836122277 867407116 21220874 339252655 365671333 748490653 117946890 132346593 602712450 83791461 498874128 986871386 525313029 764305552 583398115 125640537 559687562 422932397 644475475 894145715 563054998 360264804 912344343 692575357 54674193 722176533 862131230 417103162 298026077 44373422 382143963 85967531 111220930 872978122 2174737 605620771 532152161 88341059 333797467 678318694 520047636 577029038 838243532 466657578 98627199 502689700 220676869 379183180 613126048 409970650 884758277 401074145 851074821 885227188 119964900 195330334 185998129 525031835 113877965 355103820 451150973 813321860 501487201 338817682 382079940 75956187 171064131 105987451 101276773 708926293 702978434 573890396 579385778 328883608 533271871 376176033 84593732 298595898 990292926 950071344 493137352 574103684 386265781 427179336 60178606 40478074 358995724 212950927 963042745 778009956 140138409 92757646 591441586 76330778 603735282 539947022 747723965 92953001 275795618 776619454 859523610 35386347 499070014 595837403 322083921 435689086 962567542 868822135 585245278 515249941 765162137 785575493 247659071 523936121 771696253 40112077 327658480 827944771 914127300 398332613 336763914 737026393 478098097 421997886 995038489 94911395 59792805 50250229 749431835 550287714 10425018 639204506 222095112 715575862 110782149 580402394 121861602 67838844 460624369 964813046 928815882 895740100 15999846 963854866 276163176 306583757 796859443 22280191 759616268 226982028 29107922 166482959 214004019 276109671 14150829 439574221 670360009 765567293 232007819 194520809 659032577 886977007 477374511 292621619 423662253 443901214 358995841 399870488 789496908 120552259 685280444 145517054 95610401 121728575 93852107 803905468 416406424 342686873 845172129 201862783 648547474 907664437 760086403 887683918 360266172 807630217 114497835 53998075 649821018 431182392 477475338 778654515 83637937 989227433 78832365 515256646 46376154 197618298 358936856 804449738 97608999 708169503 65264203 243790607 831587858 492687142 224069566 458094264 135090341 789707670 752267823 173451064 68843450 653389816 49598624 217779809 50676174 912494345 422293346 647244704 343764141 303180564 200155168 737349180 633385267 503468945 165055483 222481614 236585662 526014756 822816808 899805798 38233360 92016296 235170875 967151488 96884215 320567022 79050650 395993174 3362523 466904693 742946928 270723643 919156020 211926934 292053754 814007742 183844329 236471448 944945965 970140482 192225628 569238531 83119158 792414112 51313169 874401384 84547012 349178853 43756104 831868369 107909399 445883500 15436819 715786531 962828967 816233625 912235248 778657019 913501925 998445725 403080895 326618855 158361774 755513125 492406172 649871129 824581723 251344123 541732031 300680271 922298349 284705320 398961350 301381528 277382270 188449511 738123422 893928513 243457095 576892903 425683130 824475232 308806481 529977859 567639133 642003359 750703592 215166911 267413437 490845595 698295016 820300673 490682211 90632961 775498453 309408532 723819385 162470924 60373552 394710514 795503855 864443628 55071049 163366841 933661674 65646044 978375703 292523094 408330440 509865981 813344626 136914711 730128728 56780006 729872745 116544764 438366664 390567916 424330588 950996240 906672909 172589846 559700967 783680623 23881863 493617765 76450667 139403496 299434850 920912302 709372230 430250705 962653449 937410721 777916697 423875903 2413695 624734681 23476009 439936788 573257589 571004452 986533809 282206812 282562730 925495401 159399590 282687495 827257512 506373849 733128124 582531142 297892971 880077349 597789286 599479004 973200329 859420935 322709691 706563449 387251359 445689240 900971581 356150673 779906413 215159748 729382507 554016740 834397130 582003800 86812493 907581687 378853823 177353738 380451884 161244511 487841640 797788810 860246293 815686022 920559611 988500070 359341350 757973512 70168884 754542498 227622463 210803838 218035245 698834155 962386937 155319806 636428939 443166336 38007379 567574040 950704295 962273818 276876474 690716150 942920702 891717061 370473562 264525074 21330688 545097424 962087455 466982969 912175115 106902661 613997008 438228238 960289304 641118573 713629141 340841675 856367983 99624728 552242893 734902226 811115425 288244803 823215053 879585876 81265384 269595902 687868407 189560459 319815595 862532989 239524996 228523415 846000204 634196724 566627938 384418833 774896067 207627654 899683665 10649184 922792532 503009050 617303390 846277227 461049850 863418931 398241961 962776841 786521633 14312495 263346689 593086231 73668835 560668871 553593311 963235785 495041443 851226539 136483211 930926450 937719585 996494093 602730992 399467705 332621237 807605697 267367556 604766655 845805752 636524788 968595448 299242710 466795425 147974284 348777260 804340879 500037100 434432296 952006607 260028981 336380752 970258026 106678291 249877119 741444237 386779676 809290015 128601981 620541648 298011111 881296993 363928237 794861044 133110735 664382821 604176625 571325895 940018284 292314488 708301753 989330226 207723211 328067272 358741026 906624847 411747292 714486277 181043810 680498835 831605509 871152877 698596331 186821255 578648220 443673572 342684906 547343000 200955594 511471988 979503009 231586645 265652946 58827434 398823561 921222945 150732636 914893577 657835637 587716441 247482080 399230148 575066014 485349295 298026322 518497789 687929944 869831136 748962274 570557159 640644112 362755936 466288158 700047097 6678948 522667308 561494927 499397823 840004948 409005874 605119861 315181678 563580195 863152974 159365254 226719822 737293829 233916443 67552197 711933235 458427741 443809904 51337012 313709130 754914889 430753972 595904520 535947118 174965364 128857245 746591683 255986420 43236966 244296557 784582010 424647782 378257113 466615677 651164185 10924443 295803445 470285795 754054979 165392178 750052117 337540018 503270939 291227186 390393419 990996053 898563537 265477361 673184360 472232010 549689019 20508980 96814684 649392981 882741026 683544489 318938921 793470233 953837711 692968605 725180041 195151227 740136748 877253250 800871645 404006102 963584402 350960552 3111305 141374096 589155742 197102292 124279822 306895362 324683063 643297832 907512091 234816170 112299739 795854352 526526435 579252735 474392623 782116743 521690302 689090873 675478162 969127260 996774643 864485724 622235639 553184564 799845181 577973985 408088804 163564266 27390838 617716572 838409211 448157772 289317243 105025374 50561947 205845559 33225340 160206585 320046150 892130748 833085396 303757895 701583326 321699929 630947429 205791405 803661503 291377417 516769817 315863150 266930611 721830785 17262728 378498436 999674131 404619304 116221976 236365042 631909448 359036380 373927655 776720278 734575649 829940388 968567289 513878066 692116559 89882326 348288257 605817836 913897225 952423157 451733388 556089359 760248478 631215359 105247014 28966448 868867418 158534274 567297605 344874047 932436505 591474652 438133299 148903046 730904423 191209483 414600521 633385215 284199826 497710273 272066979 111217462 617275841 521274370 550750444 132332766 367072603 224929231 863062335 604670928 208758577 908743938 756784609 158415420 177995325 968770036 191957429 59424996 541553420 580223727 421340446 171543413 475728671 497116853 117318543 319083388 818837938 920463213 98132989 590590969 364552019 944246501 545936038 339373443 915313535 668078368 733533566 108712354 788327124 784094624 984337 889049074 717018327 980738538 916730958 823779032 486579366 42117822 602166447 208528813 178614580 703211246 928250749 667590817 998920770 771493773 124968281 81951255 185140194 336648707 807468196 148384337 384015804 301089759 748628678 401256952 644770866 211666565 53348118 430716895 952031039 375339294 18617481 4593258 848874821 160220637 224909032 326061092 217523390 716479706 460556274 56263978 160668161 141543763 519415966 985983093 237276168 131332391 579017654 308756001 516556368 235686292 365004989 800620348 99352083 448596583 21875596 11336479 967845661 388060957 643472001 55421101 306440942 384092034 299177664 172026021 992445645 425360701 736239565 524010359 248948884 312981106 582652697 450019080 577754192 159352873 318861233 152440422 90228674 79380247 761767941 428812339 289104420 619360604 103003395 612521849 820747269 632265082 389090271 26566218 27218056 505036916 748790483 360680096 393849733 41039337 416883610 660407177 577575366 458656377 538481269 82523822 767828236 975460420 420788534 841478340 830878791 754018168 423242808 851119820 390270396 805552860 189695907 244971403 979420980 685771929 433466075 826704939 174369238 327864090 663041723 859239322 812112103 698712422 608814375 825697055 406467013 59922913 948310108 639755518 927417491 735538941 534535174 967341975 869770079 64395002 531973370 329685428 744808595 326641751 786189503 698653860 939236501 758031001 138973819 406816584 117778614 400304936 706630125 438384256 369542938 861746379 743606670 151033374 808118829 951682336 166346735 654523283 166748926 353292908 225379077 516288321 785440780 219617764 391652997 938569503 333344446 906896964 693707452 972245146 611543572 623741687 671704351 981516769 686309810 674695855 612116672 969275317 308822724 421549895 898452736 15528190 327984555 97316183 707739366 124084303 914295994 566593070 979799312 32913626 737056329 362765185 342270334 913400023 610370709 141099864 951839926 569232678 134488869 713394813 503808796 407034361 888649858 340364690 396670344 864185168 238247710 70920507 122201938 504046794 1287088 349808419 485396906 48892117 553240148 40763786 990869150 103586890 513584006 168436092 903111673 290711115 724377647 263164469 837018145 592318023 525676916 109191618 240759289 72054246 25639931 31843806 118456260 576730673 710953825 560379099 251402530 731832135 805559143 313060323 78413461 796130556 839934377 485528961 177667059 790405046 514777295 588815117 285165488 455717253 135122789 3663834 204810507 208209683 647707405 586777665 975914576 975011457 871897744 43832696 362803036 49866745 943872517 585179694 582397088 562964980 424758920 841407554 499812770 887578347 392480290 518765753 367576805 381102804 219757398 743121013 462288800 845568673 565673624 287697475 741620228 392698390 707748330 409308289 821321758 473677172 747461333 911359795 789137619 955252487 135378862 740335683 234616343 310450528 830476735 913939687 704450521 960220581 256985124 466113276 849491445 884142797 296989432 141032909 582882492 276004936 937129500 242910964 818321888 561669515 411693662 979244309 879968882 937353340 474575785 529271937 94172884 938913990 45656801 772767466 470667339 891334228 212298192 952963708 658379140 404271578 868378944 990990302 173223118 269167301 334344413 653394595 17110257 682021922 344708122 48710181 191700473 60754186 916154552 98675866 72181036 679658515 678676785 229409538 314681372 867231860 669065587 916549342 797578913 485816104 150982699 370822422 423342596 370876245 34054161 861334187 472857283 450043158 678952638 904891010 976415132 380523814 921209473 929867426 814672315 711759253 633914402 569003578 343718532 152248319 278058477 666969969 394261829 329129855 461609409 513386120 573283544 577646993 565912280 330710506 988724038 793568784 691987336 882732820 10033804 26818970 503550758 189651862 94631648 22162690 293321267 454718527 105616937 601601976 794200140 523505453 662070511 783910514 722070905 110168494 133203013 611002936 77850932 686753021 319151979 57986607 264099174 151291845 843748485 786377301 48740286 764027398 68587602 100631318 982512669 53028844 659793679 713964388 612322242 829865392 353224747 649340175 675640038 691773537 430293985 664977013 741691791 668815442 641239480 2287462 64613960 62372508 694790091 623146619 360660973 239836900 604673221 565799838 704048104 900573654 576462904 526223976 268244284 461918267 604387824 91072947 410512631 298138278 346021856 881144157 91900803 298347482 560615746 908252929 555447608 587163143 250487203 134085795 853099061 28582967 976391385 460808180 850366009 758097172 956024398 630866667 606096032 91177430 424885608 360527985 395950021 757745254 354205025 129176617 627599153 607282241 587872587 545303280 388649680 675153216 512038773 170707970 473500895 472842989 342332518 955948935 140913805 424374257 734441141 351395504 989868265 270289 936511080 438650374 411584445 862472982 987791920 700164204 873870329 447553543 47156180 529350955 497349961 52250105 34780443 47353385 253808423 602464313 254428323 791383617 13299338 547357235 797846906 534455815 334127402 809866633 705557334 769336730 992715076 233062644 499856131 839012800 842321030 549638782 951721155 182272730 540493665 435701596 902503990 324683375 567754546 267313294 381666568 366722164 582451280 500289234 391032074 579607907 731588338 22727503 29517850 275475729 754039296 590052534 976562393 10363420 180184604 897335995 82956146 302932916 594705465 428873190 362516913 657699135 175706961 348265905 474238551 687143734 938500809 407049308 266255173 814835897 409926127 327089619 353506611 513303493 158412245 767585370 623923847 142221829 910795986 437790046 95747215 753330661 381829433 77668232 795631171 738006999 532756121 573707639 247078402 327011688 23681501 945334690 926473736 552906831 288033716 779056830 470242873 592620360 437175724 325216345 114928310 725886704 139453299 865728531 396086636 991808423 966613208 576068790 467196915 286687395 239071232 222004442 760903991 546276430 620448069 913924965 171903234 436542930 637170061 6975790 861393587 494766986 435767812 905732050 559878504 300250069 877951233 540685984 454393789 116249883 671744111 438968290 80701088 991238122 782013510 241279942 845212504 543575437 120687945 90945815 266671116 102077785 477071115 222794024 455487926 106129401 441605028 678921763 544838555 291346931 75598457 445395490 139962303 252451380 409549465 102733680 111373226 80172281 230056532 831068836 679214964 713749031 134576855 988423150 462899603 725941523 655128458 272205932 99498560 600159406 920196223 600388069 473368413 621205317 919073562 188611933 205445284 724752297 294425178 18675186 474966879 969525948 225569001 624746521 966879014 603132945 226936716 872258812 361630337 658869399 235985236 590257132 315620653 995725108 227451832 931103273 571221381 883840262 837689361 884883211 969409037 121362786 554150358 47521819 700135616 224091460 153174381 122620453 616491912 150295550 735307889 23621560 931910038 282750292 333430259 589016018 976923445 424082038 761022677 180420983 548682926 552352147 564585032 929506061 777345901 566788032 69060907 380548921 502625490 831065767 5304087 346234042 777697686 541573108 96344537 558926530 468706359 503552094 294368294 257520093 702617390 735226910 17122828 127343687 992802593 133218793 845486434 321802998 239421938 307013460 125016978 611497247 383001056 242271684 393968708 675647281 650747814 699344924 585338024 328495540 83055331 938802786 328565671 840664385 21489689 845590698 52392840 42701988 379738338 443926484 975891358 514722054 37662699 719570819 83161874 393551561 288595276 665209242 819378995 419443287 46213949 815104212 352438863 87280416 385131816 540093801 364093267 782707809 416399421 498767094 988127547 655260796 439722140 76343779 35017881 191932335 144327038 220489684 773024282 411702876 777093530 872024165 617378287 500854627 58407170 586180553 872972452 528399296 744397195 703976367 922712081 170335890 27947842 543617902 680489278 122252526 199433103 934369821 754327879 753927319 491723480 313588779 564249147 982567004 603346005 329313233 17094771 403061671 967630591 975111005 861241895 354810436 780183124 928641247 704607327 391820881 422468781 88499466 374685460 105307479 985307412 670132043 374706940 591416905 551279048 859481751 254601825 521842159 358660880 366031509 539696259 835171779 465859133 488451585 785194362 893312087 260675176 873549704 39236 829488717 467336884 723304679 70224272 544141567 543641506 19405798 169089251 751733952 908327546 658877303 443460348 557638423 261581824 749429361 577220743 57781271 519265796 944184530 217111416 90010892 153103638 799443472 429034436 315070102 886977049 437560359 582112128 953593299 889727556 839941720 217438068 987163499 416631054 61860282 427871930 385551742 388374211 972001307 482324953 502530585 604751634 773210438 529431614 488742812 361902919 932557022 846029227 22066037 437907835 887744038 121716204 930551675 102140903 193669083 685789144 870746083 65975598 208159370 585046017 19565420 132761258 757243042 172921174 365713944 589135048 392789766 916672704 890806140 585850159 2850793 449721945 54925793 119638560 515056937 343326806 46487280 926232315 137019691 280376371 203141514 717572785 6158789 302069748 171845901 445670896 218957883 827452904 319145449 246530546 512383229 930289858 591746095 704064180 693742840 979755984 238428480 71949682 642662198 964119092 267060638 314001431 77448667 425643300 882860293 161124370 622271670 973114480 48047984 27167179 792608635 75594827 197577820 188790113 630064619 548543786 860216230 241463045 432104051 350794378 830924265 346079047 993476511 158687845 63442698 834429042 976405377 269204475 289602722 3719687 777407066 288337665 292116598 449335019 920860549 241543602 498821907 331109332 195116532 984138793 935928450 156047232 251991479 463534300 137394238 455043507 760079187 977808066 2981893 617583592 664143158 789039559 842296962 545026464 882184777 147879405 72641921 433212227 927111410 750631797 846926587 649551856 189626243 511625452 727393800 845650086 225921906 547333616 630545107 651885562 641220408 488380106 245138788 667034260 350777197 543801448 48319556 380048558 197236090 958168185 525164029 996903971 629046855 926914420 548599442 210543180 854906671 965921833 870206631 121748254 977147550 549090128 840726633 498840447 999181700 255842198 643106027 300048358 118938104 94677081 29848258 838377971 964268566 351292257 388453286 19402770 308648951 967702366 802897107 328721416 922504378 180059729 513306983 810769910 272509635 369646899 103351367 937959392 771353620 147768137 578100937 730561980 106171794 459794599 353466541 265854039 374051424 276226374 192977196 5707289 126325932 483353303 926604575 557226198 769478836 291329826 991820649 816389194 677368452 152361327 853444531 901224712 370136154 243858793 46889549 152831035 589543766 624711818 975810145 844819588 622402381 25163453 291456164 195389207 172481637 677647559 892636556 30853622 537486659 411060229 474613470 453774314 186903113 984305446 253531906 967488857 810192827 134708689 944785321 678316622 930712219 688545988 214481951 467511417 587547725 982876802 932039399 413734594 238359527 746835996 353913831 300975816 402382642 145335536 334838342 221923194 557158994 541416867 965103897 983957169 306807323 690755046 711478851 232593915 400310671 87710322 787901891 861296761 299620445 215097873 89715463 291649821 56617120 464101226 242783820 830045397 705247591 967183049 860223382 97245724 536902937 193390487 723501134 687036006 727257883 764800188 966884077 800926263 293525601 923694691 539535709 376752408 743975025 525458626 482850534 257020882 160387555 561327067 572698997 937570237 176129360 210280775 65525498 995774413 857618762 165976272 656584603 87494481 504560548 73218412 285842520 232837658 971262350 122730461 130908978 384567620 982611225 275732857 940148775 271623150 843587943 707709816 567724751 763545164 654320695 6074246 33412112 867427579 102697833 547749850 798040206 692847431 846994078 890098693 107884227 464689749 527722140 92647193 416681270 720256308 882457672 55925560 310098172 851354359 907462949 435151509 655741109 291205852 41299343 516868212 898694325 716896962 937210784 60397349 805181850 700424182 971511472 545018225 370044803 572180994 152815231 895643204 308585529 617669608 228626735 256497214 929329678 17110505 148072538 156757057 857286611 49430681 198407675 923819110 323871069 397236914 815425142 991757417 628944696 900773812 276242094 645128025 551127908 417248145 849438072 856196106 737042205 238683787 362372774 326599581 617752108 588829407 478629676 276273104 838452243 618737073 374742304 143894153 449814109 604867304 665706240 690657893 516737483 262208601 420004610 53895973 68660707 523044917 551357959 731935369 441976006 442196468 216959230 470093392 899122642 632233232 426938864 946869609 413818266 548552089 197914000 534691077 176444625 445311519 769244474 619334905 741437926 776339162 561506320 703902454 929447838 550109854 804446106 737578331 466194056 872164214 941770343 653771956 134134847 480741654 768194596 423692497 775436739 936263291 939182615 296521521 396610401 321320309 54462334 139896852 436351140 794686382 618498313 737319872 386365749 441547372 232816157 278358178 82035022 479840046 420611138 201081097 203039273 85148818 751342163 376697569 46907708 63524558 608519404 946010164 429148766 904924061 676710894 516806276 554649398 296350995 86997880 616575721 64683568 872409797 935875596 479617853 491097668 617204081 470460754 740563782 636168662 813729191 276310839 366343578 848901715 98498852 321027987 746556423 56004611 176833130 20200545 653706478 824869844 536474914 215705898 689457230 426798374 636694464 103278257 87331660 138357299 839342649 564643266 533961430 123330816 33911985 143578702 583357091 110997334 791051891 925509455 584130241 839961221 507861458 845948175 527333846 707963956 460532472 230054401 734452779 319166452 565074359 577000824 854527703 394642591 542805041 554628773 315174162 120476901 761966857 278726057 540920840 223815761 140691298 18404548 318561442 250260908 183634515 784482159 456346243 372946557 847016973 76491468 301751149 229788155 220712416 669147631 122456782 486698793 154781539 79524097 726542673 918520850 466817728 411347419 992238472 130789244 564773426 275672592 515875530 716658560 794122833 964545977 90568414 339781347 374723437 684936083 724961077 713299415 856924832 245852748 834147400 853683895 423465006 346338611 612677685 233813442 983736780 478063693 265539743 589003532 32217672 950249921 840036950 105424501 260934754 959202589 772920822 354265885 228641429 536749331 623708500 771428637 275816801 286379495 261767592 528837434 625034579 44932651 878063114 599482852 543948944 992201554 654596576 127047090 605921346 354154579 316205407 105389270 994773381 757801425 459786544 634815545 702306985 97166674 857389885 189281241 570812948 924562936 453486695 49559965 668771585 813358832 483995753 385651909 689538299 214131010 61086905 847091510 454922343 796205752 843848265 889129156 159438286 89267586 378086900 656215419 980609240 714604182 151075170 954137530 292826639 621199354 258404465 902558522 81153647 967249632 190871968 963524482 955957994 680809437 810803645 588138366 130436313 830319362 646153262 604744339 913920192 644882349 186193273 966499791 995307682 267656206 421448715 944882349 584068090 327709293 262147171 631372630 578267037 964624087 291091861 893299001 950675495 953853666 730953682 648907935 920196569 181668789 198015631 180704688 822142086 838272540 36267280 887750275 546473640 25507835 874884965 208458995 202778714 858593803 191457680 75047198 699904303 487226069 514235552 514536482 564739047 243030089 490452059 980204029 36600071 146569556 109971820 545643027 51338397 369443503 770329821 911587448 557544430 885477592 469146912 80962893 199547564 862292080 457768952 820133438 335106127 564099080 410111818 3698697 629877284 876076073 370612590 119217837 413562516 939202707 146394914 602108564 640237002 161217351 634785159 182274310 689304115 539984418 329930784 207341592 415376201 403003255 895697531 325794723 508569904 406183419 4489810 390043175 244616629 203640060 348938134 842928225 925369414 648826163 367241025 250869158 369950254 296826617 313455245 780321738 935011755 669988131 431790967 593236449 327416115 199654504 215753886 237808343 606564599 564389765 292838002 300403925 322010248 803870475 575990348 384293534 741815439 88850982 7921068 854489365 64497323 936584597 817340970 539189128 16648047 680334130 704599985 897684602 827814216 854823986 319894312 34609354 207582003 791222156 193345462 850121407 49905217 818551983 987867661 68368157 941993582 710098055 881986033 751303619 667422610 289307660 254948387 108865909 10763198 849538490 38099360 994440274 248993706 916369300 55595587 575735763 821343932 950016811 243159014 830016705 520381831 621019989 570547813 70289041 242019165 631087119 527038525 48622654 699566687 860630898 461511837 520469874 468904392 816475188 355270916 741419224 807493868 598363944 42477709 359882433 618432983 256994077 614405672 356873551 948256111 229601889 689789984 12814405 632460274 543992545 223783623 473253119 792529967 501557385 231168532 377151446 97497827 911325108 995695276 754434747 634562167 778077320 561731528 1023340 73239106 90065429 161375584 520438383 125623629 844829931 585395694 388770615 856490953 478047754 345304355 919248973 304429089 713141944 835552194 811346245 947807970 806783987 395355175 503052924 512832147 645498053 107355575 376139491 617225162 662048619 182225796 60921592 809420127 800203667 710582944 695955940 730080924 505994445 793034743 372528028 936395903 148096223 201365680 814016006 845852231 221121277 744803606 553108007 750747471 258202973 572942718 543048904 366785776 542380105 297198604 334709094 973372259 310742743 373112149 446363456 479216140 955964219 794431506 178574094 228179270 298232285 463596072 770244285 464324920 404949280 739238635 441700577 138413005 758707116 993884741 737230552 306809124 1824073 269449994 452669016 68131169 156730921 41700273 603322638 559936264 879371053 353877785 287956425 54722242 609731927 434293753 680214400 721332111 415065464 739438286 121693904 625540077 349978651 38550322 390126642 858914687 685928204 847921265 623957962 731220992 590075425 449198126 435249290 191555384 941875899 666176169 718690590 797137996 802310269 100921585 492475265 887265188 329761309 842963603 693117004 435954167 896605952 358126387 884407465 924036417 49821050 421415224 605866561 114657679 909126221 603364473 547075713 293735226 297539687 227757492 614070456 965434235 141451974 527643449 745670760 137017808 615801572 288585152 76427784 18284619 424031092 57956221 434678413 106163434 327991301 907631391 191842441 55959410 220757844 162576111 474390881 947000367 420246727 361197109 392880684 803325959 483633859 210914629 773169612 392563829 763162585 944199686 597650398 449478635 770090303 266269137 749351665 382516247 873941983 184269223 428665782 804023562 766291686 722756409 238713038 778599649 851027675 274581144 397442133 538044264 815919854 357926895 660072408 675110811 41336270 361398538 845837455 981287807 352732505 446063228 106456915 779819554 175083919 697306305 327649734 324719377 39870955 83070208 758428390 383511987 278379062 125700654 463312155 273429823 872026659 693745631 299531188 215481 116076560 424273202 326231614 481187356 233767006 988098174 346796878 153169025 445448308 626546730 11051174 531950003 982832 494244800 69389266 747217694 754784716 539742373 372223837 881906367 897839465 178114255 593387252 415376614 47089890 64899422 576859423 899982800 613208141 708289326 982664891 667298446 996918791 581193953 466463018 138166940 577663050 167012489 109992895 998373286 934001982 751195968 884397459 36661833 332131426 443242752 942052269 899841410 574344056 125475065 573660345 598426815 290350644 679100488 746573171 771367009 467535856 825517744 921387093 490159733 377030083 379455834 431654897 739960985 640018852 528011636 857523415 988493034 49690348 391335093 745636332 192267317 694927198 989826818 139491765 183894150 493901240 99634243 464627543 117452624 567455157 456988107 266797780 267863215 151287882 995361761 309408893 200093374 70170038 940090408 922570190 999487752 599683616 942395027 559567440 107936767 10105181 718272475 576539232 681698858 79027528 366256091 396688576 190977839 498994241 584787321 178516714 59290835 699809587 107579847 785880504 8170893 392067501 313032616 975955128 860371864 702242390 926046032 631039460 180871542 770995237 328069584 631770267 575706927 49711052 398757615 488374067 348534181 711413605 45695615 115140462 958107909 585495162 644766603 65015532 111831711 851342495 597967051 141695422 397814362 220597157 774183458 282580877 50782041 537279192 415262222 27172026 582554632 355001753 892281664 24084432 821680656 812075403 765303906 790929174 509210746 364211184 1446049 993100442 517350911 327340105 606608760 2882113 205271383 755818354 144908449 458574523 783656460 537639993 958967219 292939653 994143205 295956960 640498061 891491938 422829845 136403359 693525523 410827346 173330666 683915591 586452186 132912315 929950523 432939284 720474487 70557197 59883611 340575030 823199301 793510983 211362714 183341154 486200787 168968398 692234446 930482951 211136887 394533144 76249437 295521026 889313948 3004696 591253269 403288020 158974514 127405443 861079999 103217799 829903931 646990917 157352526 671878562 769322315 903441513 964972868 563764464 332854060 137328829 234727952 312993987 692694762 412441096 644401472 750482944 340603753 887721367 725119559 308360576 978070858 199079466 383413638 379275254 413454484 293142508 210686662 315724339 197964793 954298876 309969696 184076004 991843198 190811551 945835523 90103396 492955301 271034957 54049880 773258403 3003819 228644517 143384320 77597600 232199197 68076350 982424485 746955162 880986877 818919926 608289372 273038044 956080663 488240213 426145036 545377944 916938592 410943375 685946030 69856869 213710416 867561936 673937784 763198703 527267540 136649932 545489009 622177956 231156205 281886086 24937893 163675531 418978049 881956952 533893856 780716129 632490527 309994607 219522528 836162460 598289873 307434165 194529277 969275258 117397368 956521232 474273043 316120371 777935076 580164996 467229414 493434714 265659026 466055473 393239762 228635222 211338168 831834243 361224422 812949657 261949524 444309280 770381384 877162540 562054475 704044514 274869932 570324605 739044769 292753183 8455058 22542680 17206150 451927338 365647106 799656465 331814327 721208909 713626583 101453987 909733160 837813245 338770707 328588114 935920687 7434381 66175235 706273964 789937940 360836300 871496677 861479082 205400392 582411643 159587612 985561534 4579349 34037801 11397603 571288241 544292337 705156060 549591080 921887369 997052803 630628919 105433080 145623042 547584916 645738286 925364657 968956633 697250686 873338976 55578864 688589608 622099638 321563220 651844812 42588386 302645635 419521307 826463022 629112621 772576569 683727681 215590026 305689290 416327370 129938873 729745896 249193521 764656716 705562517 118108352 810296581 74194562 598360835 388854534 504940866 967657282 613290798 448271039 219482299 280747415 180946104 913767127 430790230 831112114 550576844 976617646 765177340 842970386 523029324 589457860 830260166 673185464 306782643 965844720 40530349 363567435 840128172 863910357 301959619 858482826 704323739 755517123 639643242 658841489 69707555 206723331 404961433 459233093 553276080 691245762 672555640 647905669 387894008 504165267 26725546 169492554 88103067 24495449 548100431 803785990 701838829 308309609 585874383 346494371 478842339 767087901 488261476 288038802 400028119 495160308 653706543 546304361 732085283 497144766 282727440 675408643 368958912 328352655 820346687 58153650 762560890 370857394 379758015 897923083 372439493 716271956 104513385 176242749 573133401 755871367 141246419 200943159 15056348 860388621 594089736 72775872 70396683 246529186 428350416 6694413 831495405 905029484 824052369 401494808 950513193 994796849 214073826 940785909 987846778 409732875 388420215 418570732 683134055 285477022 22360093 218081779 569903342 968001325 621624904 488176772 610490856 24135698 20084917 683181312 166451269 779188451 821817201 300170756 735814637 730757302 25818405 533776014 373502311 580752040 195215803 668726620 671176479 281743692 344441512 87067945 691316802 275643279 665808801 597256854 804408362 251978139 983747149 849889478 689441019 882414106 822152925 545825572 945096876 987400112 845891758 950269320 277102803 526537599 765104385 465863505 98213354 57835675 578858233 62815662 819841603 600319893 52672562 256775959 115028751 609586169 618360041 278268780 928801348 534284935 720247680 499948544 262946356 79511482 940233436 429622678 110355498 471242260 484112109 765022672 878016490 597352027 243076821 329396263 249596596 328055848 479186099 777785040 626399306 388664210 718252710 588858091 883637861 854201731 408158094 781851731 225902994 12677543 945725156 95652641 910561270 795876229 336063554 208003233 755028324 355621154 382750240 717191131 503711446 630853741 95850781 476569265 170515143 190571951 845311368 444490254 672804927 201106426 393502117 454914119 968792776 12808224 864213511 818484311 726170467 721426946 836750500 367204288 608238989 844777951 482590189 540006550 891182554 783515245 773128697 661990051 389792 834393769 101072828 603791391 177286167 113119748 270760026 14715261 191375789 307452901 920979750 356377614 364138351 422985713 879690120 561265015 973273631 427879400 955090086 517131967 403966517 634145855 737116335 713972306 222423415 80003189 457248182 245701607 343072783 638162971 357502397 546049001 380823807 879419972 727287021 537240098 753384194 470780611 545017830 299199093 94189130 948707467 142835214 100166928 682827601 967999680 149315107 64891849 670950470 854749621 855723785 196836781 747159732 174647933 320520461 988066785 92527194 233236396 97886746 430908081 174564643 390614036 997075076 495243815 296106250 299354260 725434475 222291778 576095494 461870134 825613468 587945497 196847979 547644386 895812881 926225964 359051485 39032212 42042823 535714214 869237695 165852945 759088456 732714847 637595677 624458254 568800849 38489742 747162943 788391048 599325878 547374207 66792289 592927943 212274400 471584981 283059727 228827547 553516226 645948789 545803893 324089062 932611620 299084599 133791149 478366562 499097759 845452003 106639590 895859502 669162866 436385477 642315494 325298877 491171637 26458829 912568320 93419256 517815332 992177958 998631464 909729942 648216331 941732916 897084561 480430738 100996426 391790238 163255780 412588722 96362009 822499001 134277539 916642691 435283419 23958239 890721742 949810249 749744073 122852702 387144732 97322 797838232 586470989 537048748 645401804 610367008 147183543 115022227 622446276 449613282 379951877 353340609 392565759 281893264 677301650 719596984 789506092 464454294 294953336 149652827 274378061 105056659 215496577 968948279 860233691 746486370 641418955 749769229 423459568 492830998 510978994 871244711 631631150 587837769 555621866 736316632 393715689 82472602 725430130 245507163 54935065 10020111 787825424 973153315 250447601 603676599 779108546 512831853 142800689 984790468 17486619 84830181 228392401 457110771 716795335 517261400 960134012 738978777 431630190 146536946 703147833 205052102 651591673 614175588 792077287 738274165 453402554 546163309 958342153 421288513 730937767 281224219 454761959 502438272 287055026 750789022 326949663 3441743 581994707 870114967 551343402 181602065 262943891 406142403 725392856 757969892 220126428 586478463 184194107 275400349 706117228 772055084 322107407 75011574 911584922 374865498 346864407 236448203 712922658 12678269 188926754 285361046 980798116 21081643 291899324 360278547 708701438 951129861 802981808 413416963 353406703 972368571 19286322 166789723 302803194 23451369 701086555 778306291 497431167 961744598 419271382 732893631 722688515 894721482 503843748 444562506 199107033 993289222 418126806 685584790 992579358 415661310 379896144 486738213 582125905 632104214 503344290 407610957 813471083 623443212 477194880 992924989 792859141 743009851 964375047 145916914 722638119 378630354 60325133 82227989 490391988 230639004 902089206 647007485 471856534 13497609 557775126 72118772 60054237 216985802 271956186 360087872 692973629 651297333 77463002 332132316 887321012 356168056 944347561 834651729 270490387 913564961 19898563 965714113 554748936 400220743 856926353 509526173 403935154 264902100 426530544 882119320 553895041 652141953 436463777 80660854 664329738 717078660 172031087 71487604 89520940 533860822 498385590 773561883 554222974 130526300 212226926 122946016 480994445 172931179 863545652 176180943 266132358 887328579 822497031 495311073 903393132 324157962 67061476 871882323 84698689 796883527 96303083 241782689 583253759 704682067 567030625 862901173 608585997 210915686 841780660 868670979 33757837 17568886 782015395 725668210 158263019 336768226 926589910 163057101 698046062 895213705 818520700 338650990 656193961 911512008 122933414 909062594 879791143 536980295 315732770 487649305 919242414 233704886 384162513 468570637 41820294 691225074 672007544 545604599 331288827 344749309 894656903 560467037 628308289 718230484 266015769 800590076 995742261 260808765 341765214 221330217 908662972 982667089 527292 583801846 78729481 957312533 502479554 372374972 509765119 176037477 20098097 59729004 181669384 933374926 771864262 253014026 778578130 175172269 407459784 893070642 453897466 219343044 431141812 360059178 291421924 35665271 663777502 223509809 958040175 237174378 388869009 202143606 270396434 596983598 102621987 432341238 389584758 342455721 993744103 859982988 188861398 338031068 49429476 291649706 476789573 912920314 666630606 815084838 749904279 897702014 869732199 308586934 188084381 472928460 61899249 217686858 99145249 171157396 620753493 300037649 266149348 26553081 816318302 569337235 793107169 606943220 431178389 377884181 889054749 122558091 313101168 979917883 483366823 699372086 759460266 691278557 63068336 56178778 467735288 769645022 954811950 838155602 207133750 889106650 482436125 601056218 641642020 510339100 491025068 67322448 960242610 40582147 125394289 47476101 121257664 118643190 410506652 968388490 494288737 693186111 14728999 895480349 938151018 742319344 732320278 490989130 308198970 537228275 837220257 228313027 206257737 870398890 775614764 565243951 663641776 176628917 207795265 203529605 913294874 630729781 128048396 276326725 570135941 157289766 795593381 354956985 993191313 875518250 200727091 842264810 829965820 213612399 576031101 514149056 940485255 350354343 320166675 497519612 484187933 344025287 805303183 141590895 927987195 636591124 736613008 199803307 399930444 917734702 426593358 277079669 403924562 365674031 292819921 669600582 734814038 151247956 721690539 980551465 656268250 123627163 36245715 754051978 916374335 949978309 503918042 700394443 130808861 38217136 340512213 820174654 901209925 645072568 364071928 118044721 875448857 921061015 195909704 182619879 157413213 288161428 938366097 865297552 97762181 324351535 860737849 194154713 43830149 179920216 880648627 8090191 893950182 17156787 940026635 963600186 788293177 567681433 140539693 830461588 378057668 606488560 526588408 734957557 7821965 192828665 137213107 945656994 392448032 37526969 233551533 605280121 804485169 635364071 187941857 804535766 328100800 962835063 245872834 122531273 414721531 935393293 514882996 178333725 164266051 514313384 566857163 775815612 956050666 122380732 335187751 160876629 55351099 97560168 764486183 514686855 598925376 972781232 941157457 998396414 601966484 662936118 700840205 507568140 19705231 854500563 400311297 450336869 945717978 502028857 238301157 553601270 389639912 647087868 473343743 214817839 799258919 565155875 271075907 618024011 45699697 77411986 321992505 797937775 163476438 601035078 240366122 529212689 228757894 497104893 780785569 399883260 365451745 115803055 13177783 677126693 519285766 120413659 832006020 431140784 658925019 775905287 32814532 405444141 763160380 118725575 313724328 870991632 939173493 165072160 767675817 252575240 310743453 167947346 407677545 120039439 971644906 885778261 126718391 192033111 156156712 881900023 598841653 421028232 528158363 310869668 346863734 619804443 997098876 604086611 833494562 25167075 86192942 202051529 861089522 524701665 166408195 790491995 647116542 490081656 964599286 334181604 540377590 556389099 946060697 145965231 705250902 568481800 325018721 69312673 730724462 719135436 529141469 999632155 756056414 943203087 590349452 616320795 949340254 594032696 27583428 355773436 536957843 798370079 371821731 279445024 142790008 638603525 810870597 379489428 658488732 60075448 74347493 471909929 855574649 890422518 560159076 112114085 776753261 351646614 269068371 161715117 437065504 808586054 816943046 46717063 944753654 362989388 805275999 871554869 990903489 264697904 949753616 750791703 65972481 262572959 749885338 975242579 837011463 901547544 617366764 784690727 413620180 644194803 793435842 857919335 998504554 703328468 618773954 276729907 420510074 823973920 297962224 343125463 144372735 308062884 957810254 620130942 352011767 987948261 561271645 579889340 787754799 938145573 768441353 353954918 14188841 50189609 52727842 557703318 117254154 165427419 496148496 552242602 18139756 375507374 531622957 770927462 718335722 302831903 344455504 676826218 908326996 529558837 268214793 333350861 467685252 741499195 148482593 28200880 160492716 7837627 997943768 753065206 266900134 707978531 502686332 152327939 536836699 981114338 428067460 139214511 642585028 52017294 30945479 705771844 253312966 942439813 160814241 90948528 523134642 378545326 516199580 170554008 488157931 378664427 476958435 863394693 941367061 173840457 123686092 293402985 480624087 952028120 451748349 615553793 657382262 294958893 442502286 105485928 913801356 659291966 468442197 468556969 419334529 271991395 406628712 351588490 289490291 296899348 856379092 625148402 209035215 300620584 398798770 461508743 889096938 898961350 239573263 715424796 922542147 598742608 131473002 978577330 424737598 287782112 9455691 848224326 994999165 541064158 84222279 590370364 594117811 482344647 824947314 45020265 32817090 602439736 41105032 363561919 245447214 449909051 781999603 878321272 879199020 931258896 499034357 462549114 265848770 536116784 723230766 173978590 658954262 624785290 147946642 824100147 984531025 416901827 931010525 839491376 720713191 646699237 973515894 802238695 560375829 845849267 635243061 771961714 276946023 656288115 516849834 495673956 623425066 666122383 603898220 990995730 149860213 613340265 874823450 283727615 802436896 362555923 693029719 785665919 670110615 56153892 373812768 634303797 759172455 154127542 2391608 283500761 815226199 213160886 373842387 403537418 254137720 199204094 436889785 979101894 115800349 390139628 341950261 914689677 443469716 854311079 911593542 894318206 541183557 840708566 484059095 81968573 992757450 365908735 739419244 515157261 824548635 721313503 440713317 748037147 380195092 229513506 585687602 544320281 791768282 58229171 941306952 357440103 285876163 611376866 271003854 492286417 127652097 286189874 277345019 676329206 618202915 146624420 44177080 468497711 386014724 559932885 748749620 950685214 392068241 746709061 606567498 454306920 468578794 952136823 524853435 806478860 402054378 789860712 370853512 440143717 669865367 736556778 142111929 328667123 174770175 58745916 162918484 126883002 992311735 908835188 967985429 184628724 918364174 62422115 134354906 802906725 127578453 901778606 930795468 675636258 542229469 59238598 850718856 4523323 630613514 520998525 64021194 114817535 97255504 732801854 671022622 14256675 661888146 786755455 910365722 810259319 398230910 503524691 477590709 262003978 76360049 968487219 176385558 850258730 652698045 90431766 523098222 449976226 453813488 47039937 99095947 754486459 894123133 488754534 58862600 213771635 943119247 732181407 823741398 979074170 600245093 327409176 575313719 19159341 651837791 713721772 766596513 724927884 522531002 736999937 203375033 375189155 462942929 614747254 785277683 44271484 489563338 207481772 155101653 492505598 517605218 568052209 435429813 410436802 524744309 645499912 758770104 165218791 743862918 404365529 612345329 193480520 251633820 358383453 28548790 565367828 610602501 878232594 779233755 817788358 547941416 125774447 740692603 16971461 142702300 716036774 992330971 580861307 657103028 881991028 22815119 366643669 866847060 753914845 968481267 313865538 668307521 992265453 785463434 156114419 676933246 985888424 70834027 884315001 431906072 773227369 187054757 1328048 89855256 786922873 220773373 865189336 600965516 370112372 286089944 559686190 315231073 833435895 756509016 904782214 908413728 359526586 53700262 336192193 641349141 556413194 356918882 333512095 274955612 560447556 356711220 977510655 143056167 319059945 814353921 396532810 716693165 192969971 375848198 722538270 649120660 584023478 642697555 268193097 707750712 464028631 649595622 878837065 774090466 126938371 313615666 642789076 313994185 878807796 395113927 127581926 15153968 306296945 935832209 728765440 671321456 996394692 324705514 146204686 275643474 260907603 260853532 235087958 514404034 795218241 204169172 672208882 550027270 234821461 325382860 318502929 341482316 583098078 952226144 89645851 583759030 289474373 449064213 306511591 620891060 959956504 949774288 639470032 528820030 519037546 752246837 477344157 313226863 266688968 40392341 925910404 145909390 102728724 168844000 30886979 309103120 700073744 941295402 702612729 280135452 182252943 268565832 259355138 685211154 856753480 499718483 199911434 367637834 956340333 195536963 579946067 968678087 944356192 519028579 87809947 285142070 702625257 498126422 523889104 647212161 434344243 171390128 832812700 508021459 944720077 815370779 669731241 752855645 95968903 124643025 423112903 828595323 641385879 379998334 9003405 579947386 181181741 389051510 817388688 192475961 259357611 986360193 91460336 179556291 484862777 534218049 25638541 394408465 713436970 512783550 648092095 410504680 494593461 236547736 502745704 936163607 903954759 637562278 147239915 488631280 340905157 302624840 75682970 811295023 427233293 44629957 768572612 362683050 557656996 58034221 475106600 941630606 691711821 921525429 117858358 676422111 241411295 66849984 263956955 639777713 690836240 19592783 196480900 190059087 588880908 595128052 609677028 237322604 213635702 832247688 85466210 508599455 741498936 207151957 297998816 800268532 787379093 124796243 179603825 578911803 768714915 30885529 922992768 211262934 621178543 321557845 111493891 709527746 993992931 972748640 63400341 496327096 665438172 538770232 490890101 676856730 989185825 551673267 860758038 976341079 301535074 181273346 457390939 45255362 352288431 585616327 116745181 844630042 445018517 163612639 89241714 826008267 154571787 450658680 46558551 666390664 412554576 260380999 94904649 303094925 457839617 998713394 846744440 737929439 822993429 467229212 663308450 559273809 439548910 875644009 379513395 263265317 331642301 376907006 158775452 961498306 180179348 888370510 967813079 890744595 339159129 491476011 249836975 608271802 60589119 27323004 995214923 192364583 559500096 990121444 297256874 752349928 710422655 952798408 578021433 872400517 10633425 696024356 604054902 693912159 387203272 471305931 454912547 766240103 884881451 660756490 102714297 927999557 444749913 472992291 631702535 903365895 99613774 605789910 439556083 600762063 676811744 451970815 563751539 126387956 147106670 683904586 563815416 900318506 863219991 155599899 931186802 895891477 618881512 901223515 268692185 129716472 302727654 808755177 206105887 327104469 999685253 575021989 610303894 545278150 878590687 147152543 409759696 564148008 336558720 699042009 212421347 623810473 397070675 978221620 263462086 879105515 348270286 278655967 689296090 800431450 956880184 471594011 704534443 706589040 490277790 941680254 643956524 594206603 6100393 342939055 388321316 893416738 726243343 129819545 567151167 270146222 237792697 12545742 519943829 376821791 204808183 721089125 789297591 433207840 279627499 370690816 126588950 239659526 911910579 814060021 825153765 222081166 693054059 889731796 734965903 437031760 275901144 624227444 5038616 168127673 654397018 793832692 124281728 997096085 743837843 985495001 738922630 609812492 232972993 710144880 510695811 642883203 302084204 491953305 744382817 679486377 776077799 332997054 955768432 249064091 321961736 834773989 392279615 815341004 843321248 240343201 656808861 168924692 190597548 325724075 404884923 817837215 134724414 842033611 538305644 484690407 349586128 21530421 60229493 266219136 154317867 10088062 609880639 973429893 899063371 343123612 252255792 317297155 636137620 532684524 657887068 608177380 814450708 483568968 655322986 855132834 797940031 170543252 847791717 864774857 682377215 218483065 688759590 964181550 121806958 260291925 598114885 585148538 288247942 253554376 385736307 889662150 752447168 945564247 224366659 591478628 550144112 557500073 798268538 769813895 45479776 412869066 505039452 759077928 938350904 751454887 522995111 620664681 407202846 743606693 292759266 765201072 272858416 893709080 642206779 967845968 669331920 689732848 570975098 589875961 156340699 911225415 116928791 167021200 673560925 37661781 597657078 8478643 810050540 179805822 826760863 967391870 195065017 739351356 92729435 549746831 319516783 74575874 230279302 640225690 202869660 599842811 279946100 127559335 888344827 714872834 253082227 731786993 754119266 962535840 559962866 983791225 173616523 865861767 953113 504778208 921835470 977123715 188270708 239944716 942429871 976566905 286222494 413287512 339885168 489784519 655383216 446564352 463730353 998689327 373608167 922038721 615647753 965595799 563163164 768469428 340816359 179736967 456386759 552770803 294511338 858477624 739467317 585224004 853805098 684188386 777665308 122634234 52877152 225375239 715568296 211992936 352906983 973431115 336576030 690240751 880984572 448521782 305973321 508028772 779349858 492248607 826396571 941173016 285449632 227367824 951652686 505255927 162483138 949288842 906988711 423933557 551737361 646897711 269708536 909808584 223504434 705623307 99605941 479804603 474755654 158404910 89707847 357299488 712701435 719498870 341397022 446853311 164906091 622913263 588623700 664286323 397586023 876049633 831418070 797384540 749354787 707370814 327134742 462986512 664694987 246561507 99203224 869394770 100345815 777405428 264933173 860340812 557891262 872992267 834841054 919682751 956794692 28772988 720214616 881096931 402403218 613008157 350642472 708295511 362549731 913168537 970997461 171884432 274335821 69526857 288638856 127695180 475061757 416579356 913646273 88857265 459052108 266108731 131712583 266767850 841245781 264878152 876101533 4211033 668783711 291838731 988985827 77610676 894408828 15344030 235314116 775811542 526684983 235660208 427060610 435647012 797854761 472432644 194148097 429708217 841200892 327167791 165702289 409776391 244815328 343792476 839319768 638379440 708698631 490216228 226687083 601527492 312808656 814447127 630608443 591936587 29918445 571087931 262777560 102562359 378417952 712397260 36318356 650510139 114353014 47934034 84430991 911077380 785299296 346627620 336283454 343758028 148125501 609146263 243686746 105780060 276226590 915545425 839693136 810402492 365905781 519441381 700532283 818366444 410811938 551954891 334725607 279697409 706753321 802006708 165538450 282303855 68862925 170529192 726845506 528128482 863630340 778297269 968525167 595030107 752198009 244294412 127226327 388127088 178278914 983809810 296787801 183367478 454574713 211276910 769608414 981992922 891168723 526221571 240102954 469657669 499198439 553526653 444755431 496507001 299083263 906070792 633846548 424404818 965405008 816781174 39434140 795938114 398193871 344958134 520699693 839776896 298950979 381649886 299541093 62819946 892042750 238760666 90350477 22289984 767396629 234878154 177989258 358333882 394505269 164622221 235225095 880870721 721818012 998520497 80389688 156654616 558662364 4253045 959423496 69609319 230851235 428297909 262740294 230604634 875106776 859681542 426942972 438901102 593667227 567606786 967045447 700175192 595676263 538507299 400404437 588445468 222108174 27510943 844301869 410729549 420237625 47295050 546538518 253384881 826726055 645827451 847651791 776529070 692410529 257056237 734997609 494599656 898577816 783423739 588847530 335650447 951516771 227016416 977978175 455464875 261448466 477614316 988217682 610068377 220308714 277583071 186497346 644246461 422638736 522619678 707104248 811110375 183869038 987871365 94663483 537104744 286290412 103899754 384214763 57664148 222234311 636705672 95764314 785424278 359279088 752671927 100242527 632274973 593581093 908942891 935692753 626086140 421949912 545854279 113919272 185024079 222537714 471921467 775064045 358037933 256618767 599681080 626732912 820087701 804938452 658370950 948903918 69305779 369542384 117257671 785426431 230833210 900970676 212592276 399309165 613658664 477211795 554903785 359271978 786151641 977564615 369088681 650606982 305139801 616123058 225521898 787120353 727203125 549470990 114588019 612161447 504973034 921462087 840120448 64643527 513026402 328684763 423712593 635508194 952508304 833777751 969707677 100020231 750453085 694136735 480642481 651481759 808990719 732341568 461093363 114648180 192490142 644391501 769624376 61936401 496641248 379550403 343407478 240365000 280713059 80583527 737937014 717821668 654380474 592001513 740680761 262152378 589268144 939705200 544314998 290473664 113560955 306477105 312245050 309969645 33428249 122395366 407332539 308971852 765343001 464954044 151058518 895706239 918027546 333063719 795968147 209602877 895679003 121999318 571174711 360191878 348850922 838295832 866027311 460867825 883368029 74552513 465551323 656114815 164277174 350201504 410733013 116302493 69016712 430107425 810292653 63451562 72935230 199374531 422014158 198018709 752324144 825429832 224827455 424590731 219128938 580964545 756078151 231591571 808498096 367570057 912873726 646221662 171673565 763441777 873661750 17167643 9047241 222662415 35515766 315240179 386806901 719686514 309404956 62034603 338882974 621619650 450404912 639031469 609334719 905363663 608765208 772765871 815338686 486848767 513876538 855883450 82849745 754336210 842045832 370044390 994463725 983192050 491994312 433431545 686415792 734232409 895202242 108094108 95703201 619857874 870848776 506211893 978840204 581936146 7736062 76188348 836220412 211090721 979484482 17198475 798999287 421169817 16227601 592185597 791483052 477434777 84098791 512050170 909770468 764332919 892668378 536171900 397968069 144494940 791765295 677090197 588409566 987958914 471669531 278197311 691439888 565547125 377499974 401051878 656522258 238398478 12125141 70527823 854310876 714136134 913179918 484101653 996383964 514677895 961157101 741726321 785921478 239370283 308098409 361834484 902899475 719691211 421813720 706771601 123423152 470322967 798817782 901215424 430357896 456122973 407190698 502607654 608783366 948541602 25316087 413172444 387581515 926504353 100343935 675598928 592822315 796091248 311129331 164130617 501021248 667253063 274660546 64053186 789888012 773950196 222189743 223526991 288622087 689357328 5307697 129375602 749437328 25795450 735743504 223248321 369101357 322103935 953428148 601409025 105896880 654950667 334032438 104663492 67853828 239504599 133402450 363581283 969927181 111626508 315349961 724801132 953819398 983945310 291252665 68610115 940419979 411376143 721828152 739352975 84081782 9324505 317538518 514007125 899923580 72398593 882127463 52499843 52655263 653534265 554266519 657350950 141030776 12141412 646184857 706898652 298868140 189636286 544699067 943625786 206857684 117783438 194321726 47432821 533426977 330856786 322908585 1019710 599074864 112035171 177040303 124393884 860046258 58314909 859693608 792314005 59887856 482223712 956373854 868214751 368651562 880732575 69249094 26139279 254351027 865148576 726332845 518495738 908201746 392787984 281348908 222637960 324144115 645755074 759847980 440883870 765130972 884086537 654383375 654672382 917348571 820635909 291102070 437823551 773413932 338830821 270010800 924068786 365142617 906215434 240024064 545019500 195175662 270122206 669861242 864246797 456164575 64106270 157415142 68770454 804859690 404181915 438284134 932072150 953558124 346223156 609997629 965990377 800356769 562201657 812482906 637974054 457719398 591608322 306466991 378475169 26761599 134641181 670973773 208388878 471136206 393660864 350040158 617869307 688905080 575657039 775495116 59569366 503153368 430384051 725236410 597008564 495254252 373434420 55667697 383781993 186994741 976378666 45263102 888664258 366459044 444085303 995410182 882034545 644536236 979946121 854461147 85984465 28237956 664070689 535939116 878006683 418031433 293563593 752050469 612466255 359265626 939277368 645256426 619088107 92646068 534644126 191083326 911622849 632966206 238621127 762391655 878921065 851985476 429919692 881991568 25062423 517486270 552424222 178436959 248853240 919101587 129072421 342777236 718536608 276117394 436246648 615417724 617316972 174366994 708607370 809264587 170407615 699752378 736746864 406631209 497834857 231139755 275925115 190141990 224887178 909112781 155189444 242091082 722088049 117423398 278390186 982012516 562584008 156899528 797542384 368235905 906726494 694437433 385225302 501590311 742847797 796857386 278780737 560507541 77422868 480317788 642621530 365350239 676022831 933633056 280390457 318501118 812195374 422394750 536582715 655187309 725788147 115145940 452135117 73783371 966642294 860446859 700593546 854917979 317958491 907372960 996798137 871109826 195329636 45133410 373751890 991856265 478833264 232990417 762815179 366704438 192548012 790693896 323048790 719174812 722110666 338844699 543307858 458200695 633072518 189592331 619260043 289708499 711375439 846114428 939462161 873775509 9597859 577423542 700936814 201519546 626485438 442585055 305271649 362564985 789473707 680244557 239955332 463712972 626848201 536379870 708526040 184524204 163323385 608932677 686474476 362749424 822975811 305022061 201686537 802458481 997737950 497171270 726542692 365154226 115185756 88873437 872380619 463375087 764648748 863928640 164771697 322453748 626519884 566107129 770508040 630803661 189513895 699638108 893948573 673757012 152290186 374102075 486915704 55696162 474861264 459793995 679357978 810602017 414042714 368701510 119654951 112353841 174023038 221980195 952810984 867839750 343416222 791577638 491412821 315061394 86846399 242082225 505691710 75616694 582939649 233168683 828045664 251669045 966885695 207889721 511045552 882988924 239741590 661056232 834211241 699081361 818634035 32634842 336191046 376661449 596223597 145497798 140233923 740316252 711215097 151650893 507906458 480584975 70194418 898609462 750543208 534662675 288844895 33315511 244840452 580429283 979668899 433918271 257314757 32764867 201385316 253943483 106339957 7182696 530040968 794467359 664562292 288921652 241736935 82796248 109895076 89995488 374727338 718368097 44462077 80693064 1520202 785699618 724565217 473824446 87668389 872214215 432415166 190112426 33435986 315347297 808140916 304499140 761504673 368558628 403151298 722220868 757868247 341019361 274485808 636488958 547349986 48500382 741456175 956777071 791672415 981903186 618058334 865731521 150418195 456840622 888328443 163035443 375236966 777785231 804875304 849199962 669759896 687158781 487141306 611495126 634455270 286009943 317420779 502203048 798168369 531418793 336546708 501238947 973611845 704189579 76372878 332911050 146975708 790768624 224196121 411912449 909280778 491962106 741614140 868976264 965412922 985769427 643317234 192632768 664100942 970255567 798198408 664254718 322082100 915019174 462467346 646890892 562620608 453721269 163016761 379719521 821156941 651384657 114086774 85386015 353142780 691487717 838574350 541858784 14072610 359627069 892629505 33747847 805634228 359847012 84329059 28078542 699783208 821898343 981415538 48146082 990411639 891167145 838689083 880763658 302842021 301559334 789042770 153700484 244629713 836649220 640782175 753552983 927317507 525350436 745224054 462172098 355872844 924518412 864370620 967867885 454155302 689286613 852378061 813740560 377764295 965833118 104538844 309518474 527933604 909087577 734715449 150777247 965229869 311019939 467423503 506757248 578020292 608599710 804258369 612106739 799905021 975384304 266047139 838848511 643392948 305533854 556327079 540105107 963457508 388448591 220946425 221119724 950603449 41022193 352009581 775851569 511996455 971207822 138820050 127130999 1413125 105995384 290027562 993058122 437140473 460344346 581643781 493488277 669671434 141679691 642928917 24472403 546953666 219366581 441726048 166763678 490474669 150237609 950875806 155088739 402081477 994686414 543906059 348120416 293820315 856927064 300004301 456215519 349105800 87640364 49406532 370703182 847839702 453805384 702278821 191491564 517204060 800501213 558785473 389150014 808846719 524672627 652698495 936536526 515402298 574025215 690057058 235956664 763800943 858092468 117999774 298455839 436032658 352154624 747833773 727881392 806532800 133018692 941938104 795286539 431502001 146308101 344681547 983082218 400528966 372430909 296314086 422564693 195903639 600616289 321569725 14650002 594900705 581330966 265084787 662398896 881685838 138100617 824647219 147177307 144396794 839684986 949804596 600166825 841947142 555922010 513326260 985592829 146965938 352390164 647477739 957166541 359959383 933172223 732510114 550182368 77094117 565369666 562004407 826660582 716679406 140598424 508828662 86332726 227702569 185632074 656692669 786534967 143287344 209291226 106896727 785723580 687665771 571949846 782963636 587337657 26814613 380591167 170948934 378006889 123833966 914914177 443564320 42176724 89677262 493223410 309065310 596795311 455808939 789594730 291203072 288093082 955108776 933485449 961289929 245159015 869879868 871330259 860168175 868654770 751100678 323004765 409066931 687588961 486902141 915045451 937084565 680826067 745305610 298423844 653652491 624420285 149236586 215508695 861192292 771721123 215464947 506025 874884410 800898646 785572379 185456189 542950727 812672515 850161799 30198869 484538337 17975263 2732394 452583478 724896845 299807249 838279268 908553265 718990641 454903229 428875759 941627107 754346365 78661977 37034327 360660857 605827998 388823699 530763307 785211922 101412164 563701357 160606114 593804766 847824488 566337618 838675562 951071309 556702065 582283959 595252346 944718887 523598790 341722915 855007290 545305211 712842761 959755730 764166367 473566198 378505186 563129489 434834821 66858606 740165953 727420357 53026325 13410986 432305395 930774991 841555549 956383705 61417052 508846737 196166321 337812738 168304081 442120233 156943393 801326999 698775926 110350158 696523299 754543159 711833572 426283011 222914397 785788543 137798216 485111677 751000136 240826533 335230779 86834492 417257354 653848150 165440403 730857039 529875313 712876062 978465987 91939793 153103049 830868926 264634379 697853186 932700007 442652514 744657602 342602688 92832359 5684877 307500976 748751601 50264277 458089774 542720589 995415214 200123024 569551501 40359623 133772523 459701825 982513626 771034640 35983253 349884592 193010468 104330198 534729534 440589390 574316233 736058673 433317310 937753118 567176206 846966723 495650401 290418199 444669512 276787324 766911177 600881596 486087961 423278015 431845422 9582407 846402937 137622173 249835440 860998979 984221959 230543325 773263417 270955158 161632485 593204251 150800113 539075397 743925022 841365975 722258484 497095410 265930309 699330771 349019141 753883171 723235156 380825570 279402205 359289930 358707700 994222611 420708879 502757653 203430936 869285586 960336448 277800449 581737918 435524688 931462298 854997136 170668006 118210595 606393893 578853765 337863360 332933203 745872347 760388960 822803453 747738810 534692985 874717019 238791077 310426890 473873978 950162276 329400873 897683232 801630342 690067481 152908418 978480737 232936968 163971778 997564977 103130754 35560749 146489135 88168816 692293474 461977116 92453570 810939267 508005299 880978570 34245549 229948658 145992197 678410965 984667654 283243628 669003418 77322670 273775396 866543801 142992005 341284551 379392901 263081129 347564972 107098569 793772324 296342008 433495115 185102676 735203743 541544924 968595707 273637810 463380742 605048994 202294679 134612898 108983912 132891193 450154527 697935236 221816879 809921591 754289090 456193625 283873200 822179048 161952137 800459813 497653262 836487547 422041300 771397206 663478280 451860428 781107123 353931656 672072266 331392731 857662302 694291504 812917919 718938964 522968365 702104279 10910948 588065898 776185626 757507793 629818548 131367295 497779893 947888008 553710827 435675287 974367122 733897356 68432754 709327771 461366903 64170903 899845102 113302825 880304799 417187306 986469641 962402496 142015744 779963354 916789755 664813269 45004115 934446542 875944302 669709270 640943293 78376278 414471023 589029369 219053764 437241982 134409878 782802004 621377255 109462076 300291497 105840013 859611294 611348273 803556958 965242960 687525862 391503970 528525641 485340816 995351521 123769977 916701650 498147223 619330630 864329126 548719857 36351586 136850482 665534372 606666164 125533425 869413684 713083026 179445047 793591170 678303143 561448542 837097028 175930977 904690162 435922877 680244774 7555391 501544160 819801765 306533640 932526812 992943517 106685563 101804247 562439710 851834261 196346934 280221868 675989666 935450601 474531267 216640028 829193450 211860626 611652414 755479080 606127898 674347732 178516370 631885070 277842592 712157708 931550622 605978710 159187192 176200358 479111046 391497697 885856191 246635606 270447288 152333408 32251685 797066576 641484119 535980540 368840277 562565810 565466932 924138634 907763166 861903615 46127779 591801680 302400446 95758914 420218559 810912048 498893851 270547582 232291973 139474158 765511498 733788889 815968245 507972629 863779652 741768684 157242446 650809111 866375767 919469523 238821376 329424567 806760474 981487456 122799853 265367138 1476460 850337869 587375282 426246620 72656798 391177487 85618083 347238431 818236526 750817667 474156095 64686685 323614100 107445933 194096123 209901972 309143774 59552725 139228306 637350208 508737553 296816477 533950286 863319821 339386858 306720066 793192232 48860587 484093195 573402850 119318087 226800086 454814370 724723049 571549131 479990698 98654297 436075631 815500298 297735248 97789560 945346417 96294059 339802601 171937069 949917454 363226536 355824207 695168110 372485057 340329138 814491121 776446680 895754269 598706644 6961057 450334395 184723931 363392561 538176494 876878614 631255368 194921676 537865055 48371017 718709742 140975540 77945134 151268368 671750055 202926802 118389251 999454984 899326042 621798803 856483007 492380119 821916889 317609826 710874605 104894408 853372755 782166433 48619565 312176247 774371257 347232562 653758430 975857333 797787103 640126747 912314838 703289700 777771236 216386837 880669981 908095991 824897476 298338385 663206114 257185498 371300551 662894254 742953497 759705409 114598491 576297044 388946954 561659876 221287852 764580082 247566299 802561531 539382329 597095152 769866014 296694017 276213544 606818685 675502944 565198834 700669668 161300380 656364876 582118755 150402893 988387352 680884742 315087831 583821287 225032651 328471080 766632108 773872665 864567864 112650216 792199342 77257775 356689114 1813537 940710731 428897370 804906275 638421675 777175789 382470536 515991700 732045119 289035202 503441821 22805255 878845926 450226871 49083349 302450330 390387415 206360833 209472893 269133972 640491359 762149617 138581280 67050073 706697074 436137161 304676095 757098606 365398511 7067365 339711730 914158571 235450720 896919583 2411393 383880505 843183006 526104951 416149393 305987300 655644295 77520749 418735130 318501975 905659212 241332104 90160155 256926374 679723188 737019049 141536687 542602016 935104322 72379775 618771451 806127918 903029887 135599841 457885488 165643939 853135152 571565070 116453080 772382034 960457053 393087795 334135562 553984002 2706725 3881961 919105252 100935563 358754092 286639936 75780042 69948832 595774680 752031006 582137142 769599346 452691092 773395553 981112310 189562026 424928481 352527513 594867966 243589136 929347700 534697715 424129422 842582599 272264180 458225312 182746681 154813443 889319204 288750607 746342277 683612097 483312380 356931259 613160263 486534886 878982274 69310612 175469621 307413871 875835325 532583647 956541184 206590143 423256784 817515166 418442791 900258988 710814792 933306234 789150479 441879967 311894317 267842096 580684164 590309652 568989372 405200187 110574070 455121134 750517804 904758976 846185449 560398338 405043684 75343532 445813847 258951991 537177023 764260910 20900587 929585873 769448120 550347101 818439671 409438655 626488394 702506643 599441536 812221596 998850672 779896806 699665473 595291010 39738369 924976112 507900590 515496664 376911774 833879101 18245511 172751349 751174090 711678137 246329278 397320697 995712310 694471366 214958694 816413263 903175680 603681089 759198093 608385053 472934555 933244261 450034445 507981273 319708968 452537407 433187866 198485515 474359305 156418344 640025304 423928883 831623034 924699886 531153049 632492506 776912403 110057755 212895386 308145147 780511788 321241993 331375242 246772533 886696152 112373511 58090383 656145284 430937786 646182272 644918148 834174420 49682976 682459668 901961742 134970368 105386402 483102589 690712066 48380247 476932718 470801182 655691833 861333279 730932518 68276714 229953046 505736746 885912074 130848831 671360863 846997347 205461533 152607983 666793551 499405734 540447479 399949372 390630666 903934830 805743839 244411342 604561906 162226887 160480398 741672206 624756295 165037430 904839358 346012115 497004921 113189802 19196334 580601155 62021054 193663451 315663770 148852133 675553856 821864800 18786479 256739077 6860687 453967491 70874437 549433376 209612455 386133217 403566046 365042589 428921740 860891133 88070178 513758360 573870552 252168888 213366445 495803912 235226177 427123596 848004462 176957729 743688743 513573166 346934178 666901876 635985559 173544949 823370468 131886522 177766345 235959636 91104321 27348329 360295947 740350364 307894860 726697046 972232214 707745814 771624919 139321465 530831064 32017892 894606687 231591853 448636532 314369021 384035740 633889414 969307034 991766965 336265072 520094574 716999967 344546703 663455202 129615758 541391034 408892028 912467646 629263252 97898728 291024092 594691389 325961087 735967777 472281054 175081109 159150842 525079364 286878760 569394449 944324791 142773453 764500422 14832198 954983789 93194350 533469384 335184001 31734476 733791456 337105631 44362085 449924624 364590063 517904997 420932978 801133898 679447163 784170096 214447933 741625306 760512619 456754624 356143133 452699127 50382700 876057391 519555823 136552542 56723404 620439717 120088211 485349156 628718869 115184973 187272437 269212048 826713767 143412873 241887669 998100016 615791929 290734931 5845541 513558899 179273422 583090348 986414765 180835486 440376094 74060463 774998828 498467533 115870034 408929195 958466672 933776513 43482919 590486469 624998112 131714012 665600251 401902414 283478821 577160289 25367795 273816144 523202115 402613572 544927990 191634578 645250663 510768781 105815528 220774877 308948256 881520048 602070223 534161802 381055626 983389729 64354983 418861659 491500065 757214135 640893819 910883890 59041716 740203773 790036993 5035927 401970882 200110709 665658099 442337889 754629881 361671769 332737737 857731901 200348911 297066829 909578042 227809889 232205884 997839522 703119245 808530802 162721557 431134122 106416690 653349271 441209977 660390997 832158058 191413822 361498503 425198204 904836051 214219939 348937505 724598275 623345213 301024759 821897040 860009942 11548159 152534720 879611637 750536609 814815608 319505830 93317616 544916737 863627947 531611998 676780433 128925082 419989494 453883796 981326176 156180649 291175953 176373245 698455797 467597569 824598110 167648122 926410130 940935351 749671453 513592319 721718488 827332703 770006797 310062895 904722824 196186836 57497275 255326271 818662664 89017439 701118602 170621582 816750017 407442010 452288653 913554832 746008545 241636213 914805335 888039288 202613001 141077780 274356439 783100172 42117755 459238056 507860213 767244095 457427610 1340098 832115052 240800820 7673845 836045773 831757813 910034070 955681015 967778262 375097346 741227396 611299806 124647106 575866872 502091825 104977998 382443673 874069015 589391970 640118646 232323056 81407016 691257634 234673314 461634455 19695774 277613169 219771125 550909843 216765195 253199405 566802284 356733390 298913755 107149757 250019426 785245423 785321816 736817590 481281277 772077668 767748647 419552554 718768608 770915768 485357680 313626532 66357998 403636348 937717367 719347138 758627369 212563563 122282916 412364717 538991026 714235745 335468256 649197610 325982542 935488728 788513896 167327212 610110115 10292096 304308461 498182894 384210316 464761161 892752857 335539463 450521958 128011038 784996542 581370574 996194471 209896439 115984454 223145520 531288280 737437674 929406820 669342598 630135438 985022247 691179941 54944496 373747972 909048178 606325407 596686574 355052787 335250693 760298461 911117580 479985217 301300095 736943083 112323353 54797469 465375617 327873645 243659214 288916265 490709387 336048045 791648041 854291346 263362729 573344682 802352982 504648395 240515956 31511386 158709580 891222861 787123234 999904844 363899393 627472726 860723865 247846187 821073805 558800491 825506831 381432560 461333126 38535954 463676484 482578862 432870572 858680728 56704302 976522900 581728377 390128080 484850349 91636846 775457056 888268438 215800003 50908797 204186363 955230356 468542856 763840288 409630640 955319275 829387424 474651777 246028923 865890682 522969669 609678302 857551036 965304715 324137867 712944934 926240395 524483080 755203684 957034874 131958533 807149178 579993992 484416910 705392767 399581908 924998885 255669219 738702540 244330852 267937918 800980551 70179732 559001935 435806307 785993574 629886580 112483531 303798923 623025550 203398874 561296891 522098287 463813067 786877877 629248732 949342397 828595426 145500614 273558805 755047019 149322382 341944924 716117838 879877955 581751003 299703705 182572470 512243890 721565905 486385083 17837114 271922566 365566671 980820777 706488912 205995586 635241821 5757490 861176058 965434284 270418420 191735959 586052153 654855430 48018067 531103833 210078872 445759504 55464124 209730886 252362816 334790771 747297243 688192769 616476717 453537205 973124732 281918153 794490068 138064232 47428902 675345765 575275996 206336711 501468468 284812382 145720158 943117555 660114022 542538461 972773216 225087940 431275701 972371632 715573583 442076817 975666567 759855963 912863398 655414260 502908665 979230483 687577961 543242802 717187062 651530958 359428851 177987743 798854540 407379075 511320177 914787716 201477645 935144662 139716711 262811234 364379643 103292045 996668404 205996194 701185683 405308421 18665180 988455534 986392796 621389897 915403422 340245982 997010286 417546464 595728394 774969406 852771976 746930976 663001512 529793672 108276628 13569105 546056701 178161963 417250461 724446206 890906216 343876096 146970997 763651928 484464126 198135558 952091923 699171515 335349363 393907794 333310605 317360221 46045973 687266753 894587503 757247710 420806256 678936615 552679917 261585600 755986014 632017023 740678725 899791945 51802771 259573453 294536440 366043919 750762535 347407817 118045152 446098587 624887705 398568218 220841473 319765942 522684030 809196715 658019677 362105344 216363288 511231229 158616473 195160102 470386636 805024278 607023955 225083547 929344922 267483967 959290105 506845706 180380857 345396206 413375495 482660122 310432960 181477085 321430290 677997208 946032700 735447193 652976671 447379844 584860560 917402238 333559528 212592184 581824816 928324410 991653317 339913825 834462480 968895839 35032645 409619219 714545694 718880252 660953558 542632421 516432644 410634087 34424083 832435141 993244199 910853917 586586545 338053522 166041890 475055301 738041637 253974950 46117263 415532660 329657641 968173558 778539678 485994344 698712350 652921150 476619293 900497727 351454601 521964205 534303633 719746976 840845302 711208520 355946505 59611328 596818615 484316702 39141579 698855900 671420424 993480226 15357881 980591232 758702267 648755329 944593678 974725673 616951332 315250323 816607473 734710256 336071820 251068086 3241 511995306 127555308 471155906 942521682 70864998 221226269 213536979 393943165 507539136 690606274 509947462 159232041 662089641 107522244 58320927 627710697 93413366 295437896 316113164 585267018 706945050 467336524 887383112 951438739 401885260 764239609 391054413 766770661 950599870 744732151 792372915 336106379 249467081 748055500 47636936 327197941 384514105 951091320 247278829 575487315 568889297 38573741 908145834 356973730 666747717 443502958 80889700 473056835 877548984 806595297 955687913 795808603 711085213 762187273 428411982 624117307 410793910 829649459 558975150 933736288 369103124 677024865 484381239 776490731 335714741 648800319 936206775 416305916 799668999 620325891 685516510 157552770 105632104 503384123 497281259 857029221 907488395 737980860 737252953 182685572 585573003 732924238 136085745 164519298 982389302 27764874 199778637 883881067 280553550 388666669 856890074 469750353 970902401 66140433 82278097 442677062 928473730 112095813 362491252 186664819 672203107 518038408 212873665 307156337 296340871 213536119 202606221 23950874 161280985 337654154 416913976 394081916 39390658 735540987 718805966 547555590 728619752 725814031 562230628 920438330 757501131 527487444 756821615 605052396 3172089 253801202 545058517 332117792 288997217 893192708 130930484 111373360 956249647 271525770 964166431 353059804 759360992 120725800 599622158 99230758 486343266 453355658 199239700 372337468 291766370 569055563 884543629 748448808 172402385 968705043 11678022 911061205 971785508 814423235 22278223 993627361 666965504 967477899 206245018 158316366 686652014 862875342 881757890 140490191 821300362 886673101 662588150 40933688 378890225 930275463 301499400 244610616 287828336 58064650 79988000 239319839 325396093 717449673 231569693 305876475 817100320 158645594 14352687 380818203 364988148 72177449 210252321 430591929 292071426 910627053 252233725 889648789 426960379 714848341 861045783 636111367 165808385 514645946 457286604 994193916 53016929 859525729 222306691 505239246 558347004 22570211 568845492 350354382 582051096 420289535 563484274 164100070 468769033 327070716 190113246 769683352 513266458 406345764 574332747 180564817 721753608 413085402 308630335 402943304 830764882 838309445 144121244 169354326 221040556 852934259 687406686 301882088 64286238 824609236 91528819 303910426 198253386 546459889 977806236 40862842 994974242 101525533 742067350 529904553 291986570 751584752 169152044 95970923 332111672 217453503 794820790 275205628 134730612 575500252 851921274 875451786 555059048 598229304 495244629 593009982 788240771 106155952 354630566 877378560 743873307 400659477 438130759 737782741 727300067 128794661 967300989 844614352 873849153 375193126 707028644 524400991 906050655 557711063 736582283 747129704 125851215 89615334 408456609 998071207 976654379 99269441 71474774 950357011 448939714 8013752 296816991 801281726 416167042 68950032 781762521 615467507 934805671 275731562 50105051 823380313 27800894 437560703 414662138 605476818 15540562 880247024 478759675 375447264 512630659 96438511 977267944 909078694 630347547 296035172 979886415 580563536 866033803 212096940 708420710 556269089 89153987 410978281 318968294 159722542 168436203 248929701 70283638 967639032 791051616 527445286 618567198 749720438 557272117 366523660 763219019 353837302 319801226 786931931 514769703 44003681 726111366 20266380 748006917 610128833 270978726 353771580 933437871 125152518 963585848 346960920 292302951 29150116 418589854 212295476 391916232 711775075 865958048 323510834 295357545 934558534 39717024 624105389 563719512 889694615 568426225 285233881 686192133 5130629 777134973 213548824 476416971 23845344 116513609 288972248 890710355 802591898 494769378 665116157 328093442 715841463 972809310 815931 872561589 287410050 371553652 666304190 112047376 548469236 972132760 778776460 941086925 319080159 598923142 698994475 646864550 335040656 824846589 341877199 150688162 954403491 245731604 949202644 124584012 638784142 745587258 914051056 925629771 177263587 290589099 644467786 140320423 184810047 167686714 416418399 913463098 438387116 420922742 291920931 903157421 969582863 567058954 498236086 756787119 652357474 488697103 584594273 489225643 870771554 917453481 473564592 758650034 200111415 179542405 639992719 453311143 676859245 844739563 879350096 211639449 265002265 598629713 957528367 280913169 155519403 536033210 6274211 274428166 677518976 762654678 99242244 19164692 511078879 557506074 272978025 930964 218326925 495338038 84645792 575854497 452103168 62083317 18757193 528279824 264875911 943032458 652445116 118047022 812368934 159246539 269918009 391482706 666165037 643750605 765244369 901668804 665983022 51935643 30219096 237030941 838153656 993429934 142962253 175152370 752146984 636743749 41191044 421843350 600143337 492476019 773300625 165073962 809839342 64321813 639083618 719943926 33247260 522766232 940523625 996467160 452565563 146710300 307613570 641435168 426118298 957389721 521528443 400079849 757460769 214611340 37290935 399813447 189693672 737395717 109746843 572838772 396979343 155027692 745703141 902906172 407061222 894918629 694353437 451141456 127456648 680244496 907553616 712526801 644771418 463240481 625985784 799368959 580655911 443576490 598092217 890742537 896594550 170005532 400706914 837261720 248780151 890647107 477720586 118581214 593473543 492401669 427259985 363185870 176316002 123461158 173379016 506763506 23460219 682375484 859798224 271463768 939426264 582117514 393203554 799267002 436137244 976118397 3081383 879262756 679399108 651825002 902903793 276787623 318963798 49499380 952953660 878703128 23273117 197786890 429909590 679552966 726805481 253652021 350876305 463385495 561390241 893061961 586433307 661609409 705784887 386816039 283510548 627862623 448078629 55625940 128789092 558633909 929532386 947063366 260700264 496046329 424460243 169144177 2633367 200042252 732157553 134016065 440136187 259068474 141952479 380061694 686788128 747525845 335173115 465441393 552033742 831400643 825298314 518590492 575820662 487171162 106216258 466710821 957119620 951538139 887828528 961195333 901509562 930784983 481421750 8558101 880774619 650607016 985729947 849994436 386745659 462389286 603907439 3346729 775805310 765737555 128229242 204560108 845175199 19532170 562746133 64898485 120071254 678086555 879298333 889462908 520027791 63548067 887408417 154602225 684254211 617614181 927680716 138668124 22369576 930885166 6307770 738440044 131026375 210387999 94828830 626893023 268471486 950166283 709125883 656073156 559266602 993908919 276321513 18006493 876137847 588777557 917219530 737194050 869526356 487245147 80857885 802953906 59288817 255534951 144980195 281833776 956393513 51923097 408491287 768096949 17019577 816856436 675714828 404411042 879910126 585748623 711132749 650076917 764752760 292586115 886293364 51906266 481478729 149856883 354817455 986425604 572964240 319291326 900708209 328873636 908765699 294560237 113359758 702390941 447693882 310268913 812905917 817616943 534268022 577001110 375307992 663079856 567744143 907657516 656859708 323840617 672597901 405207527 921030262 393883019 959779045 440519199 959250805 471436881 780273147 940022135 701080899 649539587 836124698 69859328 931038105 32933546 401854670 168656685 295508657 813965708 800812067 251123039 588745469 309091546 687700598 283946984 440285668 693709021 955799959 664045229 201623325 724337648 247161357 284525783 270205515 93419394 321715830 648527820 74419888 206286657 455855032 746476130 920844234 758712970 821012124 742395031 439233265 524291060 787071400 256954522 208660347 489405688 849824299 355510236 44207708 312310389 9884788 873764734 234375280 420760068 424305168 517712465 626148787 84754546 205317310 197770723 397106543 750361217 280214160 464050278 271758887 352423195 130427419 218598372 349131277 861110168 646462515 62478910 714072698 325297290 177080081 416410252 634200779 471376684 669451449 78150827 730271274 223109478 626956909 853284131 873388201 801963825 169109445 476976383 357428707 522562925 649140332 268916125 619689336 272334088 616564574 466255624 694944192 14422354 181730227 741953632 415931704 670065734 73686897 810425015 526921820 59531804 523513302 234085282 410826319 116264555 255555850 709461164 892639823 597763769 683450087 502865569 654239175 688359597 61538961 108407757 552299283 7117892 375829350 561980217 28142949 574641434 475315673 58753474 776284260 305704842 683495896 385750668 321374361 875397316 22192421 75648209 261694328 710920032 121973742 566830191 117899970 478922653 982146200 938648417 602071835 410605646 174212960 443750140 671050935 477012922 538412357 134763039 740142573 202393672 104705752 470944638 34497235 139357002 908784951 446454769 920625362 343231639 87489205 51521368 266672940 753049229 280845240 243407888 392125899 627657495 162043539 210386960 481127612 370802018 497496096 3940749 343430611 610490138 584536018 70786651 10180560 562240619 11360016 707173564 865191105 166963524 313253895 665598800 911503488 855831212 171438858 119593443 238411039 246366390 390378506 75867857 384731013 664979606 65241719 73709642 239592837 912690006 588519329 241914384 257603674 134129008 203506252 198137022 210264329 271428315 573638167 345999837 752153747 330621702 818466007 406684335 887297501 577087742 906532447 399699581 993615014 451884283 41549113 189084990 187787635 901281269 138121989 57881255 699984593 102151957 696086858 424596275 302690900 321452092 469961803 621903626 11122880 668426467 229639440 66082880 302064812 625479924 328462160 268079656 310815997 126782735 712021996 720713197 859627613 39212746 492773544 540248228 463644966 62096377 404425771 773725097 480994725 956652065 182924864 688088055 322209439 822147933 769024403 535936924 559095909 893297574 32844802 765313820 396865218 48734306 376520717 360695468 414097187 570771978 781319228 959639310 552930240 737766143 644067467 574782965 454010155 673976857 970973749 352600714 657168927 552963099 528315177 350714225 483593589 417630901 932373359 539057530 768746356 81864008 300359511 483482135 811281397 48606236 485955648 907599777 980110523 902259447 461937316 687155131 642393696 705792636 454168391 288432869 319085734 46412367 997333425 254334640 215892903 357520553 953693703 552329447 295959335 689504111 69337214 873581552 616536355 367819203 790645647 616656821 432138561 797373964 716668803 634732983 671179234 723567917 474833566 107606933 85464289 240667464 971354356 949090628 769986804 369174253 13952117 206966043 141576099 656488410 287609191 624855363 895874468 574217638 794981349 406609077 457714402 962484355 931177029 134089948 32508072 648839071 128945529 672851802 692963484 363552859 432124624 673734488 827209360 23813968 539048032 275164061 396139552 911571213 299608565 927986931 612041140 386577555 190259084 811967794 298926630 995995073 96701421 337246027 617118858 381797846 535984936 341302156 919990366 708648846 995466007 157722380 600021811 295603475 732061304 921708256 951222581 37573532 870781482 839613887 40357050 173252432 785588349 738070156 521743958 496868065 468929302 687856968 373994465 93405115 638519665 850044390 564588213 728015112 375511506 742486722 342633924 56226411 377674085 369725174 16237931 162537941 509945893 86119455 282692268 859871567 392136844 500191760 294874390 467774527 589532959 54086366 707116911 534225026 792873446 218828788 235393649 659188506 179627518 92659261 10950940 37552303 942872851 882468166 885029970 885387320 804647801 543273803 760777336 152764154 770135171 181095495 237074331 417021248 331801833 188326478 716676989 913019144 588428274 32994435 676155891 204510958 43605997 149874987 44565054 894360240 683235931 138510281 290665693 954678830 424726550 55038019 666049518 519214985 554494680 998748219 450759748 160628816 55326384 267307305 827673642 560869058 15716719 412870936 52533807 659651325 723927983 253640908 511830963 516248788 14696918 276327099 943333362 709948958 714962550 697700881 980425719 943747332 515899831 380560415 285084997 386675680 117740847 109188541 464879965 453899298 637255015 233598142 185629325 710590531 214593906 803420780 424893524 236717694 783827192 440776631 685992629 651632366 702998671 502490747 807063424 637313513 926139487 622445727 989399578 189510449 881649068 912376941 39763680 689564874 833709760 605410054 586610302 682268334 402230705 677029155 523269872 308460221 562277299 103948056 776826512 266646701 285363342 713500572 793373979 954108981 145048695 38852399 969103827 242746553 577264568 294993478 472014709 193511026 876444675 521631556 57772764 754880322 284620439 373365650 434462388 302500821 721980316 774129149 741061497 992747545 658555156 764251095 215019068 402039953 893396909 641697866 121803609 64213779 794109351 510972469 672299292 606791324 114782235 60895386 659879115 880889656 988367953 185390762 735986261 695034078 430953289 939713988 384935871 586438686 353681996 651638296 366768472 146753287 303235553 838768056 472523662 971028537 289424892 969393926 807589703 622541596 218157296 220270966 725347674 913103615 647036265 72501565 293572609 762417573 487121372 814347875 963582789 10279302 387036727 441235606 109657962 312123559 645955551 279745555 897447456 831640561 437590263 432388494 182425953 804591011 907815578 3414957 357745359 124406637 806125794 485332293 690357256 431898380 143968521 40292256 854940830 54300869 509706088 845298644 347309634 499820695 517935116 871874259 715209025 518173968 224338461 532043987 755666730 960376132 23449888 522609432 154666819 332748915 83419742 938030776 827032649 63895491 137539090 8241023 819823158 491997729 850968603 468253408 465944689 126361251 320755245 176219749 382540239 596167168 483619907 848712752 781845586 379253094 814399588 992855621 467529506 337111315 408336962 707709875 270731939 696247905 398260587 593845734 537504486 242714795 51652486 367148945 120288429 364954896 572897328 25688417 757951829 347802310 177708547 682310485 167419976 944352322 9770908 547751310 59088164 950835443 573577311 883123447 368464716 779082700 119388929 219822015 705402046 186218130 128298827 764988737 290197773 995374912 543274367 226163023 899241458 9260210 933461209 288624412 813301196 920193436 687496074 179961148 207387876 321162154 387875843 958165836 76987651 767448797 212705944 498044971 650047580 970040485 44497922 554802160 408048684 114734276 545880343 51873124 5531480 258569480 885147157 327424858 935218118 978270795 329433531 705586967 920261891 557853762 672686019 94415498 222503405 274303445 239934637 139809408 802975360 261907310 450863804 846024521 850614130 84137502 925344215 700200725 798192248 100576880 140494835 302914355 874972933 54374074 524151295 929843542 704770670 620956862 897491606 64253107 935750417 364388933 991377792 777326882 969601590 901140834 416054041 20507521 649341370 975166222 698711193 868239139 802824010 398727053 163103691 53345768 678672002 95552788 459327228 613877169 764775347 368915455 179794996 831831515 316969487 133030004 661197325 256070945 223843770 529700842 188965588 886895174 691772093 527608729 72108129 60691425 116929502 632253447 828008811 300720961 536566509 392843716 171181938 546438050 75344566 862556302 507391535 125064100 209154398 544977575 565922629 603843869 371777917 768371919 836824016 622143875 797248988 140526808 457255862 434930523 329870862 585005465 911771025 62374857 620368112 437419780 231584837 994973291 38685865 305056414 297708396 625269069 740069991 611795734 462327660 558192156 869129072 937239664 423543365 378907865 186944909 278893702 13311021 598442904 427736169 106111053 880901007 598916886 781441215 860129139 787413541 115784738 13284109 896458393 949701398 761967593 264832744 102991156 935699192 945168879 557893078 333601066 9976249 644213390 999070586 280038458 337360575 806566600 456602233 121894150 313806846 656246763 752145696 608919405 651424375 391943965 746558494 711471147 437266119 932968035 263041339 868227821 571147348 650577554 223515999 92558400 148457594 990103858 144884670 182570760 551469380 33011454 860010035 587880840 401176116 845192424 615364127 242459154 730413424 433066217 793057017 581184827 861930194 853050347 998471715 475930468 650729888 735145789 785108485 811097668 353472647 205405572 441732224 244792780 243685304 666129384 705152637 265561970 415197126 11447371 653619145 934246319 152255936 366721661 533825899 426852150 299337715 221403155 905308057 939044216 422310126 428313827 265902194 423890545 256683331 436840709 63938816 515092881 331217312 371413811 648495808 353820114 996216532 37544092 548402432 868411789 438695081 869613218 701467333 190935079 559245670 439101654 415499900 888147985 967531919 335296933 597356938 101042023 309599299 738277422 269134207 759817783 344843002 332056286 968847443 652370631 727513736 118331612 383449056 295827243 195121367 157718059 102607947 876537913 334446474 747767611 113947864 382938849 112963958 67275364 774177201 765956187 373571291 676881189 748532175 637114343 455970239 641574335 27895610 435813419 540448289 944100286 988086027 392047248 978030152 751154797 735196385 954067045 548736119 559325354 982710771 454043824 307607664 31049445 92660179 409825882 188129844 692579980 6928838 714116416 542259043 327764750 699988416 974321188 909707975 916110337 736894514 338729337 736056995 324088708 2821347 72235731 77180338 463795129 481716071 855525441 857648615 702586412 526543923 81200077 6089389 996355371 230843717 183417624 36715339 89763706 670945286 21020276 450052277 492201454 816442983 547113395 953659944 216836636 930120129 340093462 589044882 824638445 227540900 935572298 178724680 524795714 511472697 466190881 46221487 224912081 476044363 286149590 23512134 457126942 989486443 817602999 351030358 733467042 439853914 357645962 773740454 307375541 828375519 86655959 978477154 91218683 901792502 242391104 727111637 943596998 436006132 100318839 107543339 330681484 441084540 716553888 734973691 893993681 567977853 645288171 521639468 835211542 800101613 474357812 617917093 794000091 698685499 449191654 956580285 877552969 19898102 997532900 937587692 560909444 807350474 517084655 914157534 724901522 188805199 397797715 933137325 298062400 535382662 306421695 973071318 886271386 817028546 294612714 607361930 513556221 782016018 955529076 66982410 248945467 408728187 588182496 837555027 125447798 767258147 24375112 841655160 698257719 738420280 157199895 737480811 157153403 761966303 883027022 587356363 983879088 920034781 572196903 619434321 216039293 777570246 244484896 832153004 560741259 441640439 406109712 185485230 662518006 558221509 9109470 487936692 920206296 30770832 512705326 800149508 102887268 280861446 328058948 695920431 359072475 419612979 83049824 673708951 511732476 293838980 686245437 411272557 875202699 736124824 727254910 498348767 845865245 577920988 170333239 505620576 364947249 736187618 972515597 762271241 287162957 395044205 764121031 703275115 997342184 13458540 865789114 967374692 672544400 908120788 124223759 94846986 435730983 405838778 28559178 780954597 212017686 640326315 716482515 805109728 944228308 324932458 759298660 188905138 89682148 910227264 642887165 780253833 45625232 834369884 120854412 379568561 665662050 379006896 935199851 571402045 148212804 524605896 776342765 522568578 741956349 477887038 107564070 621133209 979716529 104136951 482170740 237128741 76786715 406262739 650416678 389059985 647000880 670750060 626478423 891963751 609954017 306946664 476408488 825124333 432690194 911729240 821280150 934035743 882879507 189030347 671838240 220663865 528085482 543318063 294215896 980036564 262104021 102196218 958223012 369069156 345845977 909213105 600225842 328372903 445590946 136498499 751792329 578009809 847468823 44999600 692885502 232915748 957376355 701644383 796320699 909031029 107312330 880229406 183181956 741645867 643217387 614394057 931790171 843716553 879629851 126805811 123372966 44359961 439739838 287879999 44494249 508036535 664318528 418528362 945696942 323509732 449274683 854377407 552548958 644907989 417961783 337726415 962232414 121343736 151842539 834680741 90599553 202435300 145745718 184172504 200348298 857293790 31777307 372946498 411160733 466278886 177132897 837645094 177136006 620787686 501377856 560618986 457225041 432986763 599381700 252568237 456298686 966981201 729965056 532652701 690494701 98429200 323984891 309578691 428273315 138838823 962128231 37046457 630707895 692960767 549338070 419874694 75485989 186572468 219656572 276551565 499989068 187933618 935041175 258298049 113811067 185020793 420990530 888944374 155673842 562467488 766195400 647913145 907493050 716463015 390106144 106617279 616736250 493644080 399025811 133943504 14202774 213962218 620662574 699964002 176351747 178820958 467713140 774512928 797203370 648168350 251973156 998571768 820002767 521791062 806052953 677957655 470260881 836360072 55074004 438488654 599987793 132819304 794547163 997297391 945029426 420849773 142722803 635692627 111503362 164061612 384976497 13225661 650748858 551227450 88842260 358721823 482631965 859780507 899512769 732837703 209608980 550913520 421672772 810301809 799006140 345347892 921656618 788861830 786942786 531656688 528022515 902369057 943449490 949331042 82703278 531289029 906665823 426446708 632546048 4976755 604772529 795292043 818843529 974639902 352428993 720534958 234784837 850977351 838825370 389359527 275320070 781713990 253321098 278967259 121572135 610544128 361409169 676759766 137306973 398433206 16194647 592827557 915054974 477154236 627125303 191767297 753738542 534856770 637267650 516155606 951588817 294276104 477986329 26712883 287645710 665770899 901460526 283576846 149027608 140761038 388053883 719350511 839505797 695218046 52184507 387886969 286828299 736690267 614146198 975227497 404645371 774133762 375349864 430851063 801706297 844357737 213779231 999420533 298788068 815765648 912774627 745425476 836765399 194306129 883752216 790973713 113130090 432970587 328997868 618153427 320352713 818475581 333923468 350624545 26408523 772926931 283407332 822960875 208963139 942021983 316336504 865311385 574721415 407884172 976202036 360520387 902135547 992416015 110178037 336697881 830829605 170857847 498709028 667668088 657336067 24327754 267400753 249840751 684470726 250229829 901932811 799685056 417372370 338919032 389081343 240532323 527534922 481290570 668349434 142775164 428931610 498220999 374111772 635952790 606628888 610829927 870960954 75666995 10820558 524827509 236976 824567472 208155501 684014917 766562049 281124630 929870180 889125540 650074370 578214438 70934141 824575685 693425778 625968751 157045192 149178791 100914752 356671938 685787199 249214755 908920090 461976958 158044666 237409768 343799469 502854632 487186657 694232113 58308528 991008852 12855438 38218271 3358808 798033971 839759265 193408301 688138872 700672930 382561037 637573952 574348308 61308229 20202102 855556318 732940342 329116735 672375884 587928988 267570389 940783180 168384791 792699163 896318714 473171072 720158576 806205869 392673008 623321799 909738436 653976786 111804148 491095396 179455003 810657956 925447214 684045502 716584182 367692128 977014656 898936144 641623469 878495715 13637597 337787567 734955021 263307553 32110461 848863933 303661062 392590707 653679271 793796013 60282992 238510398 418803606 253583493 943040240 839164391 153797496 483753321 512646681 473012406 173740521 91454267 523021758 522947539 10234058 13543947 877282463 110469139 221272365 825796390 377505262 86068447 56564194 613540875 175167207 461304028 599059086 239663092 203915451 278872447 580330469 814946027 263288927 367131630 343144821 111560683 367101999 695306596 858120444 702342616 153545332 983694651 348558724 96254404 689603957 435581604 627694275 263889940 280655219 981121987 927478847 57335141 819978233 996719386 495149864 154673746 947830455 174676377 917200527 632539569 494193127 15550232 787781138 724678245 549007455 660818616 360581379 31878997 446243549 488504067 357391787 343865076 741540295 136640572 242252800 214932504 910319517 873674782 652285780 85876898 995522436 347393769 447312136 689103508 698579809 985646593 418175263 595706610 770488505 426287741 726011678 107585029 195956700 788855901 730817547 558172886 871079389 498085413 996762640 237198555 41123329 847262272 485468050 951839195 48260174 600922507 456429778 719393670 418830314 436064155 110183600 348069099 462745255 605576204 684389120 21934884 275450717 604011647 192543647 423771321 554550206 648277425 213247161 537128252 182718488 887269790 719145541 568126208 26997354 299502027 736846539 538806865 634820300 856388351 195605391 48452044 738894880 375094235 946264570 254504659 642290684 532654347 570653418 621406544 270719238 24254089 455505161 741355690 903518240 572993468 237523173 497832854 182822521 65342068 337009972 794577137 738924473 109818605 596419760 962505550 247057866 656213813 160530788 181136907 740797085 373503844 767908063 666152736 299871841 674140842 966023905 111824672 81423381 589914041 805429567 239690629 431513490 288232982 867091337 151237878 571774647 591551802 495454237 781681176 54076589 677670823 313267865 763206575 132460795 717193021 96835006 267493287 937111563 292992070 476067846 427179348 632121867 526617070 657615719 815110897 435147381 365112776 863190474 259908623 214279620 814281262 478222268 258164287 834778282 720042810 493887724 755694847 549507302 756685202 298923715 120784167 474028573 764017066 868981331 479773392 182728323 241891084 354522275 532006528 39250339 774740781 80909959 139052402 660174053 934104224 654692550 95279348 589041583 60508393 330781486 950553367 351285076 935154260 631112828 859127459 925329418 616851021 59526711 931570305 102854694 245409566 160531678 420486176 825680384 642374725 977391204 845809776 911617538 853218359 972341650 397760913 789763993 409049934 39943659 426289183 660832384 277972229 596933752 302655266 314215399 226681162 376985106 720752022 223109113 252366069 190713054 604481366 369797583 968277140 942969662 256573435 872411007 156598987 309083968 243274544 886033469 511884186 559416283 896951321 625488871 961074428 608833800 52755528 546059230 400164292 772496606 339917262 302189755 602613157 602490526 642998730 347946299 476949374 449216977 346172809 766724494 756956055 81274132 918997773 570492684 881335917 902515998 835252427 263771538 237579425 837375137 17456202 218181950 194546457 230394704 392186631 908652379 785744444 292354938 579304368 252075461 616089563 713193940 529585880 566650843 742964795 700847656 894492703 262345491 194271171 15673631 244277728 425798079 639673955 99305881 304200856 27628479 44424498 978284844 727787051 458252557 226621043 611870481 736474747 507714903 987464427 579884469 673561664 930849589 532724885 335057978 62134734 411304646 829319760 957303781 248248682 745617317 32227138 873847671 148753402 63109001 364261136 548750705 589290226 376340425 979171246 621697825 416372221 703729335 470591706 96328103 962224860 563537144 302684425 791315379 985626331 587363954 882615088 915511019 732213212 286468114 423079389 839881631 411023303 837991949 712636384 773529598 518132535 671035649 606275133 650719556 714072918 27436512 58131306 474371640 635112542 341816308 320032595 454312456 432884687 994703525 11138846 952867490 264121271 879668510 205640562 434116065 841536006 118788422 664867454 925618105 881915381 547129913 192142470 279272024 135793767 365316381 7054802 551373532 875157894 898168336 494293480 2662797 100684989 273628835 334172363 123312123 750968811 951382460 426074972 954190667 596879309 910104917 618592784 581617273 704870771 386588011 312682082 705862751 814861925 471723991 870129207 553226821 135477828 289653356 517717883 461716468 141160924 496750226 393681519 193810258 313150380 895859611 727943902 704341569 781566398 562614236 748737319 400536742 946738441 326228886 561675667 171842708 41190795 354308166 914977561 285411842 643118345 913709006 492639567 380245276 132726422 972765929 468013479 994111522 610721980 842106101 414075520 518640695 837317746 102804680 582351814 100021075 210493582 235578398 868410652 697647285 679297922 766377452 915200142 900033610 558959715 636997754 962528843 266552396 513337923 679944669 442425186 103062717 208046968 829776309 186060352 44772906 968055206 823658963 794141674 64212676 450797493 648325480 780946728 215282361 347894155 309931299 394259877 952133965 319132176 513531727 46649230 385685154 827100564 244124469 711994632 484204988 268504903 422762862 769808361 524653713 141808775 695061785 674361435 720047733 456870606 419622343 949096565 213633376 296676830 418085763 529721403 843381894 357170249 166213811 729299756 121124982 6504670 165683609 508858599 628021927 55566934 814385203 377362654 154713002 930164196 575276794 254732798 219115839 462742904 553113077 26061237 215674485 765320536 68788223 683263024 43912298 665286114 132542368 614393540 678310828 983044379 332131095 940603890 238602250 379400327 419007643 673311164 598173600 852532886 809052047 888204666 871582896 361757350 912523024 760170475 811676256 177918001 895850843 267543253 196815962 840158339 646173619 222912453 679810765 28626056 137536663 531040415 746810631 886340306 561408025 997389251 13431016 973641508 11935827 894903712 744030292 219006146 181311528 604841219 233226044 488069619 950973876 494889445 71480919 822435656 817472917 996509445 645834280 268647111 997198996 20010559 939935113 371591010 340837167 8070212 721387951 416190596 341731698 732947537 822699808 671724781 614414107 146950283 362878487 640419574 726276113 611532839 700054518 899191641 14127214 68630793 902638816 114932663 183661757 271437117 615566929 457472310 606149043 228141702 463545720 170672842 600525011 48138402 427200180 611409943 981832556 712124475 750200848 632749551 498068756 762243503 195166980 342369582 440386730 731202251 884501398 713016056 749648976 267620253 200775464 627138023 421956063 853671907 903877127 119093155 684797415 272232091 72228986 997593883 625725302 620499601 932014553 551615790 644462186 931323655 170231547 376075711 256161991 189764351 727152262 252349658 839559050 267417477 97318154 763085731 503265896 540504559 885565073 458148889 270267130 585343141 208778419 396364894 553064413 116832912 769447172 635002308 557763243 888186434 103054501 961284250 277410719 146257441 191250975 715435750 259603408 805314881 620764324 21391877 29602757 273796819 372434846 493226688 145909068 628548341 158940431 618203276 711807922 922425736 926745259 116826616 864843976 382183444 193044357 964925280 197167596 141604193 102505530 9331897 235159148 145374225 1571634 771716798 449535927 722327963 617048282 600506485 633370328 568971774 540091565 455867425 800159636 285320675 678347398 822051280 782628223 343862544 397379558 916806496 805814222 242313369 639011934 777919550 667451512 656261632 349621590 775433601 733330541 903268641 489874999 762103275 811126248 570244606 101141803 52366110 995515569 72707477 909306111 641654631 266535387 352591844 903722970 455088745 347458745 243151025 243969776 530019474 374765229 850453821 793065496 890750220 804109437 339032355 450217257 980104649 315250443 320699073 728226206 158255815 623382241 433268618 986439110 315123055 272153730 119284643 83388351 33598559 98004659 834003936 892175389 624763769 703973468 391266090 776587131 369405835 544706839 346326227 42083190 839857025 363566513 679756655 499395554 441074865 244906731 314696824 56686822 541861466 68694624 710129455 18273372 660376774 552249328 363533295 32390715 569721340 136426098 352160849 442350172 452862218 270301971 39982667 46590041 77824284 149508700 690953337 639168008 534786122 495643142 883049816 647928218 978217035 726631021 168863008 756895377 384244678 580479573 600620100 500027589 354441816 647715369 402070413 110850027 676065743 766718034 345157931 777934843 637128826 72917831 358042236 350262477 278830041 645134227 586266853 821655907 612587104 436570152 419151664 219988775 603256861 256276844 832410635 288036438 981458669 519604467 538168529 135997720 543567213 414374891 603177645 493582865 365122688 273834718 771708373 604865493 860938530 624168876 4573517 338673914 938676865 160144554 605147068 140290302 702851198 133944715 191622826 748321173 485577148 417665093 735267152 371483624 530444694 623036652 116133765 938375412 58932515 198998066 38149399 421990490 528261721 461994815 90043501 908251587 95036369 366301256 741553862 785596456 183007406 180899652 599583170 701787142 586768064 232069456 575761825 786724070 214138602 860562077 106751835 201980884 591219112 966268981 324373222 374553951 721593143 644660488 813001661 53450829 91245937 630850312 500774324 234371417 109222529 237690190 294752045 346554349 335475822 221135240 486536473 837747738 53399747 497653688 109766975 23413565 885885875 368208735 204462615 921179732 757841091 737150071 21622454 794966893 444000978 886637395 104428807 241689809 630308528 295826489 706023626 383998033 428784092 398808290 914315089 761709472 716268794 30392336 720725184 482659441 544718797 354798453 611691829 468883350 806591169 487593173 455921358 866676382 430807300 591001429 65108 940682402 449185411 480696367 448761048 310092340 221246278 699505994 452664468 300783527 216338635 291999775 63740363 809017523 472921146 691666249 6072436 419551501 821684458 546922287 550448030 261252119 775247623 426357365 94708304 716345054 159230852 158096719 392479915 735389348 982997741 567254599 701670926 225569129 477478111 782907010 456226389 51396752 290843189 828003244 617076050 911881835 498861051 60888105 85359 223794236 882163658 917644007 127986956 902623608 190171773 333743692 62207679 265475548 820813654 531236366 392455283 732548498 694542179 350336533 795166686 352321587 687750408 162060654 268250505 309165574 609793365 944043463 900654269 78758813 624718935 73803240 269660864 23712433 981088407 811839275 439215094 80063061 474352161 955206052 644901731 106041395 253727994 523456048 253777960 806236721 871991189 797145218 926241010 138407692 338110044 374984794 630044295 274763784 690052819 840186741 978924670 408271310 691076115 593585166 739161532 624922078 837801665 681327456 194033620 570680968 139951184 332350962 412803575 588962875 402450650 27783766 294391383 535490176 62128724 356577340 235912320 55285827 187814656 841115812 926566356 960246644 213101866 799177393 186435093 256712132 305594710 181119061 384445796 463469873 773645540 584148299 51222426 633664563 380010386 791861800 164190838 547520412 932860676 30323693 594502005 57320803 409439153 803713756 719948070 451671701 286684220 809657333 990111597 531364615 803776240 225499448 767879750 486626819 973477234 572452990 229603039 510210985 928668728 91937276 979780305 103096451 231751271 523683102 5840605 956498879 400536559 291249240 109396006 994031886 785329544 513169368 681566639 897954181 942915648 297387209 454965039 403479901 645131545 512620317 824624039 577016620 499396057 695120924 653890431 69388408 530516283 218428375 232566542 675249028 110747662 403694083 460731048 837594013 506216723 805057471 898982256 219393621 879001974 65467752 170939491 446232576 322588754 342320743 110776365 96956930 228100882 172289394 333132134 284299649 676660663 345928486 245291385 600574157 226163218 778018419 851831524 66469113 499185533 912664159 76154271 327529253 993286989 201390458 760145936 10694570 945787530 350974275 583449922 101015389 420248881 152625589 449845374 142033674 811074486 861295421 809140794 846066108 439758092 227537696 93758472 564787855 893364823 769242938 36512945 569591424 85563630 664616412 473960951 25490335 544018627 95840520 820608617 870274409 200859228 575362438 144326891 323558903 902798943 375509524 729650475 602296121 320506124 891134161 915351806 431926491 449883218 970630419 556902483 504046117 96145567 886229001 583626860 340210635 901173635 196050447 103403385 178757032 138846942 358291720 125265515 553816424 17675464 15952367 659006863 642500524 373366809 357792835 591562823 841158523 283888063 531418377 147141535 273207855 55495183 922019341 407971535 522132875 812938149 247526525 697955072 243163951 345250756 413157712 38107548 562233846 506108907 748043778 493026185 18768807 384619610 583790006 498409950 46213851 662702690 221155255 728621245 999215672 494332605 42017606 10383764 325662325 388026446 28393359 196694559 379754607 421640242 803031242 908354719 504165381 368323170 52141372 721483103 941941022 557290872 365355508 982786136 753058804 713971371 720745928 948104029 718408625 630022510 82734019 669598108 175947710 433741505 552263533 431025622 278158110 438799938 965665550 516639439 411650618 835609758 155769 527271788 693060731 919573287 288138609 430350214 742218867 998075879 479308537 92651556 693858597 872039733 291218916 192408539 961951701 185818483 118001018 649292863 713756302 607298246 947860359 219265137 63308381 833343243 828190472 389223969 473151396 835185735 689745415 768573215 504943532 144195183 587358236 343094118 436900792 865405242 665373925 143929513 293226461 613215146 755201615 453042415 855081535 29414993 84078568 913800786 429782275 158534742 74947297 769256461 153447790 695281301 681544394 718390524 913734037 515837057 332140955 688779921 764624727 681982724 825321298 67087387 90492533 737682021 217114599 270354556 907285668 415804162 252892158 384469710 835578989 653866055 568127567 940272847 681981514 797763834 279873580 980805036 835049857 186095249 287291353 867232678 842538648 215291782 595342785 543554302 593022348 819394246 385044784 74384261 859043806 649961939 720473289 980712415 708984280 803446319 125367162 71722877 936702588 931998049 94367529 39737983 373797355 431426133 878603570 392883563 734975603 632176676 414022797 542965045 709960049 862796638 869493090 314483148 672358702 689619447 459954979 851340786 540947625 679444446 472031051 93595740 827594601 539455190 780403692 818417820 934160994 513868545 918381047 331344752 781915528 847129626 161548164 307690802 204521343 209758994 101348090 667780119 597999749 921634734 944867815 336822879 189032498 654063522 70410533 596585434 174341291 368179130 847611598 284177800 308426734 125445081 101427797 474839236 633624472 721638067 674540065 844890973 169367033 277026710 554579025 108428940 182556771 875831975 170320614 508765344 294494998 481997419 216586889 365432003 680986581 941784300 694426878 788317371 697916772 634890723 648272418 994454024 199104366 145288198 167190200 560372079 573215208 396082868 63298648 43746132 836593740 569704351 252092491 118427280 382004642 138329267 594942905 760230887 614332224 389909938 910898660 221001786 756746728 454645332 579623454 338437340 896759506 330031921 668299637 761122298 161827802 615201642 826814186 155366853 728338136 340245538 552298101 787023455 363662359 251718231 843866554 622572102 550918797 69932768 809068639 496916995 302724621 235951148 583083455 718160078 483395006 988865216 754108739 170645264 107484813 983587352 551937207 564139743 700783605 983509435 127518689 440090514 266086991 414264869 197092064 457313430 918121900 284551919 770510437 945430557 713607618 473612062 706886607 71128093 885249508 392943019 991350122 261580388 253182098 157247390 545145414 590687382 968348094 945483957 109557807 721581651 784061077 526971134 782290070 809310016 717470028 831264039 571814311 485738892 483509104 560539514 300648121 925956262 596918441 84523060 916591223 97715741 622214426 257325490 776178095 876288002 643818869 784417413 963074863 798208787 594759990 831404217 196720803 47386051 394816730 35156507 179350059 780015877 797262536 138198200 410980800 933157718 583843025 770281622 96085207 353629792 439726708 750767612 301791907 104606066 142773105 535212125 578325992 373547136 818769135 92528956 293266694 933974179 593500516 145574394 124941041 321465874 844033623 878047674 718226752 277662787 834160022 665050357 63818616 777106488 383156665 733172219 379360382 997822919 250619050 414464565 290599545 553509742 770349020 346734396 689839602 329893092 851279064 365256159 666526487 783629271 614557846 892174760 118600484 884259361 334620333 455510095 267013161 156487212 521055643 69965293 591375530 841428285 880587401 980349302 638704208 588551815 265267430 439357786 678755551 502498814 932494232 585336571 960086350 709796830 871156097 733563100 952096500 90781404 30876871 946170140 275455782 533719827 458897122 234914566 264933686 163832237 16243125 34849882 597366825 804767465 516700193 362553367 759286920 870610506 7931994 401465887 687292034 974283266 139280424 785361622 406182061 145246848 19564354 873659059 76228230 514805428 661549368 593685170 967919841 552706824 683285124 456487272 488863260 456622996 231559929 31581376 554918169 58292413 373070775 381153638 265420963 331424639 491172941 453411482 798107218 52843619 314980775 759707682 74934157 586699057 966167126 498231121 36733953 917585044 331438444 400046937 998813222 732236454 121603871 491227308 908324347 880223545 579687233 880985248 869610451 459514923 555019286 624914224 579138916 666929289 359888039 700002939 994507073 138032355 150275919 849810927 937743701 197451586 238429634 530364017 952840890 259104387 31598093 592691954 91301081 574587806 551975828 331766431 759128363 980365489 33305600 822602232 602158025 414133100 795529161 594380121 756270857 595232494 365808035 876481888 989957456 947438603 285928038 991953355 547525266 186182016 131648798 863638822 962266795 965315826 137742195 803685248 751766869 346103788 178184660 958531441 759628904 841204646 399371200 982002250 985484749 365815832 939935810 387701397 300948476 514018712 15853735 443393541 314122439 395817040 254286772 515262908 630693004 835157397 331329449 700945911 414721148 492584853 249356005 789339601 504633624 772588857 831029190 283113623 787625840 957525073 641414174 220441690 326206303 420523684 376865384 17426770 642318894 140432743 941761430 507894433 72827172 856982145 753890329 193560773 102105636 326327618 336763216 494701142 557958480 282856716 152973802 247586790 586783623 839346728 340292296 85831005 952227084 405132478 419761940 803886945 611119128 280255307 808844401 626047854 600817800 429817072 254020617 190834673 982590507 258434764 757806946 123321704 612250444 897000919 897379270 990115979 787390552 994406511 927827433 736274955 595831702 913330563 126670279 474880350 448263158 636483366 343088787 664677054 348516888 270515391 203967649 377291555 935382699 846362766 963020176 854425569 797732108 724056766 878995049 162720278 776833698 86305662 309329375 235786096 197706520 275385112 93402140 221684740 872283433 691538218 715484419 670824949 899856796 450311554 68111495 173582397 266200974 399621529 174583245 847921692 798332414 136196864 626322550 931163994 361636459 53116774 518145108 767512732 633385636 989167011 982945119 798221881 431957448 142048626 63104964 688657205 410774406 60611037 893676410 628010307 141983584 233601986 312335146 835216986 645875480 370203906 566117879 779760008 700650211 981743183 508527641 275188101 317605755 863496074 593879557 796859260 915453193 196673521 539232458 31976861 894164280 470776981 9785405 935983733 861234287 788741358 423181747 889995189 278014114 338810760 159741748 174730823 837834916 476815122 21340449 876916767 453421890 615427407 345943176 546218639 267306025 88164937 348461814 270357684 357421104 644943129 643297825 296202417 548392289 919689250 220121048 90842244 539197172 395355158 459996303 379778750 435700846 873865671 840275956 622814698 943276105 505463005 580123712 961180550 953776725 699931941 723753027 420826979 308550549 3991158 777886405 738691952 155276319 737677714 541735863 347780859 845060267 652674064 250050128 695954752 804789160 119252862 143412134 846903809 236311256 741620546 932138522 853544263 373170233 610085221 264763399 924424438 49731460 895532909 97906714 340178812 585396826 472777337 93472247 543534466 989442562 662463160 990165957 63281721 806970306 660707099 110078051 830424195 234477041 430316576 697183046 90089260 392257566 731534473 837032126 279824732 43720347 160146208 161929773 235001321 242942361 310150846 15683891 626310417 49017088 332445219 511216143 362677484 172079030 726950008 578394491 961204623 934517085 225458907 515198768 611500663 822649871 667248352 153277220 723458531 922308736 472617851 846299602 370294975 90152473 79238943 785272647 995241732 258386457 868602910 582831413 891436683 275577462 26032199 380452800 667373152 575998970 321397905 895481954 840484049 123065512 960729791 152599572 826527101 663100135 769284139 220598136 731336229 211292981 405032603 94728126 86526880 149796094 814512037 229944596 174100857 811340631 996468362 610182378 414009375 911815291 352872134 933128062 123954040 769883209 513494856 698889899 911542765 453408437 881806480 686989995 493466177 796408366 669855767 108294200 869152077 297894533 896791683 947725229 757134243 154062643 378074049 358555269 503118302 507208749 174353457 257891300 953391875 62301243 756194002 256791625 631659032 81297854 70320426 295055016 155684002 172867252 233499321 646197841 673151864 395084652 592616899 324691278 275354031 572977525 956304991 593259714 54614971 253771088 916918173 732565907 383751447 974013468 360646753 184392029 866813323 311648482 947470167 303486268 562026106 344269302 263887584 537961793 878042754 382769672 185957538 29231805 59972785 671133803 378587621 830955091 59488500 854406787 373829903 851916522 75783593 102799517 537777949 686314245 809998194 418756939 620738928 784164402 935935917 7788403 572216438 132620651 696689131 369157109 209144140 225621645 386782478 982025868 85151203 845636685 127955922 276814912 494838920 654780012 313744013 718911689 199515999 671466300 37114220 613900331 692492262 620022432 657574213 948853773 230444726 589384057 234647134 852791898 606383408 504789221 707723602 711464832 647366567 37242963 44954707 247906174 195337921 257636367 548887244 528889798 668048195 587746200 112819406 578891876 954448744 524928624 441871255 352205103 728607737 71569661 990753980 33304351 664212249 80415283 143263963 97985236 274792150 968806925 897382827 151017359 208971504 211786803 15546118 327059509 6490752 841960165 716154399 911317184 175333153 137100891 446457467 591452997 965230489 464513935 783774402 630771902 663288347 421641465 924409176 956941132 862825501 230340917 157436532 936545446 789696718 373875690 757466202 167462732 561959815 917338717 630913386 781155271 344843512 191776301 667204647 393792285 891160276 6075085 842431633 358240566 283905231 293863112 948863348 979058753 61026873 529366832 504031862 873907712 351385641 217304913 313721656 772683324 865018237 933644891 693487586 243555858 249507323 857006626 425808576 161078891 559811139 370409205 719457337 122755461 315492085 389099111 612373137 413354424 492927610 551945667 328689880 890552262 31743391 2492805 685429022 226606770 43267358 422189714 717320290 244325516 683938400 380048458 82717199 892888740 584505447 613590894 73555337 2003625 828464411 553516420 569263281 426808451 663278633 604168825 856754355 208240063 275602167 318276826 570144665 208730969 924365087 79428432 991959448 764121921 297323003 4397841 309835399 949645909 980845911 398176840 35053938 5479720 602968907 127668211 74511542 113961520 158070179 184817267 165345473 996308808 35204905 101570460 828788268 47350317 768153868 429988374 285056827 413159241 510985563 974433116 288418834 844134616 679330792 990384072 503588475 231538879 155370992 523777482 779726581 568238128 761989729 884398804 30175715 796423716 159358737 841693740 31077127 988877710 897669046 743588478 230272168 214524756 388080140 494602144 564281798 630482533 689629893 668098452 48072170 945278927 524373403 92384151 588399293 730186759 192598562 536305018 348173984 427831977 335828425 839119914 53710045 341221170 463696744 656732594 864842288 575413690 560126206 411913655 883330765 775547971 954366871 982660121 853243138 248949365 970326830 25978325 210805900 594447020 327370466 53252729 602455926 145158436 741734184 351053868 435630415 836690228 688740092 911771023 652244499 334098197 61361452 944096779 591612222 578210025 246479247 452036127 256107864 467366274 729422802 371543206 957794208 993370206 113736555 590715000 23006820 220162251 770713112 559791431 130896092 372873922 30135822 371848814 47580526 603746583 364976447 747247242 432812299 430160641 575628575 591572503 565859318 261746479 44160123 261060958 22531051 576058209 393889835 926626218 77650533 822775900 998702248 661174029 196574795 159594191 562308717 906005888 815254757 480898116 903032518 583638359 250654705 527355301 955723965 46850093 927660638 470681830 950655427 828611275 144061460 734478719 823447595 843486599 659788244 116727282 828668877 816279030 7638227 893061162 421251650 107747420 116442462 277990956 317639551 933764682 194651258 609053649 506981215 52932115 212177725 355807727 488053631 323764529 900251336 96236285 308165389 353127293 908220868 762689074 706516208 564970252 362844463 813172852 431695765 652228773 790387497 768919992 100646006 107170976 628166389 431077312 740957588 858826530 684528479 812853762 274618224 448275853 550883103 506652621 67816336 634036158 630233513 391169071 38968298 88112063 206701406 978917297 296163331 60192476 573342789 856052431 140201170 451234074 520232142 185860679 676200245 601108451 823519865 53086999 753778095 377961612 517085901 564876986 318028112 388101707 178650011 300163505 64722627 316424025 239038783 484673071 42316012 476853803 972013122 20667166 695941327 153376579 393623904 34669163 210016345 161545099 330274934 860077376 841456808 503527810 780148754 53784733 668956601 603885651 184531888 19659503 130921842 681041906 603208319 37557792 943989341 616819748 996788697 883268724 458913669 423899183 311140850 97484636 782898574 218987450 35565554 22317206 565388336 631343807 158516316 337879585 718505260 663813365 208079403 195331780 987443061 93207862 166794978 326920984 825689601 991857243 776243614 358549247 921915513 28273865 195186476 558277391 604427974 26531631 681829086 115708624 615353904 12305501 672358831 74676123 135257256 812914839 535340372 252615095 989574740 201818169 122228833 688355317 574862912 85009493 878422499 196402997 567976146 151501460 638826934 525685367 157184167 894989415 896227884 146958560 330080961 659409612 592192598 722100909 952326115 144595225 811106997 723674481 167742020 634576843 145386733 219691637 641177982 63928723 653120454 928738623 184083411 143381046 58751799 391993462 263724506 954918813 498823650 481232093 519863366 865376102 573720640 80630519 634215260 869503433 791537430 947307726 910045862 621483572 432055784 507491823 748846448 600987638 462678394 407536447 189376751 310580717 583005855 158370994 192879878 30405952 939630561 715174768 781725798 272159987 549424937 955264325 621949585 277729229 177972437 204137004 836609902 45719710 874322879 670961510 3858110 920976116 208777229 358889117 580809367 796455908 748564892 71830330 81520795 522972299 772297427 285751821 107858662 21027615 302224396 178861578 251979190 713449583 771451093 607005860 967597383 839855575 499995421 27661900 581073947 425625088 543382976 557853788 129322463 188047588 487728251 701191645 626510832 31068322 696589196 73861088 508875274 452645193 677321414 80003800 819793473 194170730 379734072 106520090 271478852 583169762 436666866 989155165 578403962 250708615 992352923 886084376 917752779 32842895 719289217 635557493 115203739 360060052 311178129 728209308 350047862 579303005 535230330 796947288 961246981 369041460 609163531 301558864 697298035 627123954 941021027 188303040 625620736 327023036 742974489 401793846 638772834 427953683 19973825 866392122 162062345 405908358 453403643 86161696 560186316 490214871 771585325 624333933 462997671 86282594 79108057 469140562 557419410 454508818 384285624 923237976 220623485 962520229 164883195 142566377 460076086 405627827 633763969 2775528 826443695 521135260 919106359 605071177 954839916 852689008 860508212 478258258 832972670 484924931 77540047 1616853 752405368 445739436 26118547 250500937 138799985 341518319 368908126 792238727 416015172 537476849 816985101 666712922 34039850 506015310 833290011 751520658 774829123 347781974 538979261 333676763 370443390 200914201 693980891 694704420 252787129 643921388 401125830 655785317 607513286 659824716 73985532 543808125 494931803 888031301 137980373 916507411 403384726 649444426 172334063 480345778 606767428 538814854 309278905 60120049 64200724 99382301 661147066 110000463 730450833 279445605 684300155 433221650 891770863 781024644 996401295 754065923 163257462 476772238 221788315 272280079 991013261 574154743 82715771 174732656 61359219 34334521 31619671 934929135 145001653 178042825 663617543 810571169 925066861 748802940 289556891 710588102 453971267 699479020 25662392 83790941 290937056 455342081 860650222 585104297 732562959 963311474 854477193 362051409 822799632 431649970 783287439 625334310 867587664 978046923 356141915 591016618 98132846 60194741 963790520 915019006 153726047 398527621 127168373 961428822 155574746 640173949 345161204 458944825 342162232 582187924 348676489 483127767 192050709 340644944 55610532 478521540 432923343 610532872 319190168 944816195 585597269 101987466 601076609 356236486 98445502 20946992 562567611 169045564 498324164 51463849 11087310 874049255 148332537 915505852 437129261 82684543 47164363 436285887 536038943 763866160 898360997 476497915 528899474 435221273 317809513 88839769 549508322 422369332 990627010 731964949 818619945 153187594 848467851 667936954 72975240 787963758 555489769 331421975 631285934 891330187 73979057 193240453 994244331 248655336 572966623 49344296 466279687 325434739 836191892 353334186 727585853 492438850 492106347 90438200 558757263 53722743 987788290 828229165 842451781 658482580 111748482 18709085 365393836 295498845 401040377 844154054 325329538 133911344 693351355 513184625 32364153 914045448 882270985 354284156 668191160 861104933 528832615 308738116 17135342 254019293 526137820 745562828 437826901 285208653 230853019 985907383 434567362 923731267 519989267 87221704 664474294 790668549 483571043 935478507 41623280 482569764 672002239 454452012 312091590 443379872 476756494 876809619 312889441 751415174 102991888 139224256 671987199 274750771 822113764 350698418 957882546 236698746 212779431 945135319 795176650 33772763 183371490 953985302 933860425 798220075 789033684 912180689 727865006 728646389 179179352 253175966 577643873 870202690 494404666 633988847 459080935 544259453 84861449 268285233 931581750 64350975 414303908 138622001 358053829 266671048 330277231 530496299 115931549 377205256 758970377 17733575 291102978 3510032 329920668 697419397 911127446 679319586 916717166 926519387 723973294 820828332 902440653 220451954 163300678 25475787 114510322 87627553 106254687 318491455 624381908 71894224 518728268 859030906 892770836 461628883 764069121 724094324 223111479 978360832 883375055 571534073 887883459 642482243 445589009 317592367 519044177 909425454 67405851 904512789 262703251 73813241 146434851 979813949 491316292 148263026 945756845 453890371 669323057 584828500 912345509 958713102 331770778 805717547 1902114 319875178 661079888 959619728 94749550 340082690 151945824 750110262 150992958 352860988 300397959 843231251 398908423 748674098 496322613 489173473 680500527 69969224 695418826 78663113 563987640 705007272 181709371 959631413 226755929 313894903 61809259 198444862 310111024 283250715 523940692 383257963 938149260 124255741 76652651 359016601 629790482 911908334 9781526 475347378 461706354 208012360 271486246 984564081 330739717 595616735 149651808 7657367 438101961 816299485 460498646 930596984 485588752 547623560 4319293 598450304 569692272 338193207 201806861 923176497 947076735 932756112 303339702 459042644 785260216 176534574 902903700 3780397 918733893 381824850 82743178 154782454 449794783 440312401 834030013 313512337 258558915 120657472 440286420 21922016 486474656 591384121 902469828 580074488 948193653 396964917 627194009 357094224 400318965 91291460 542445353 554355779 999020812 706304155 358897058 784841430 850249416 676436229 43058418 796393211 122667023 200735126 192174034 93054619 934990378 574575544 201747302 346116515 367325402 292066144 577655030 314745784 31390903 263875122 955183603 125363998 483615083 439184985 228011037 671403860 385643901 540524360 352396632 583027171 197551448 104448024 965556455 154221752 778110239 944172894 772863215 185008414 879572664 958364452 473512503 134075638 125109848 281825347 159521549 847011167 321080810 169672372 616269328 436211868 822125845 124475547 628625095 196584028 154942221 203250843 461144195 616569980 731525982 366434553 379878877 359180995 57612742 957774181 17355172 464625778 943646114 915292534 6638702 17695296 616648697 37392839 269988779 343575051 338889009 186457808 328266149 492669594 493320094 425259221 20087707 315684880 667254057 380982277 453678695 884226851 712343660 729466457 438631369 729464834 746013285 336813363 891068032 604628079 134986424 924243043 239761027 811157943 231852680 375713413 428511084 77976150 159242510 858994354 898018595 754619623 587380009 113668905 606287604 19829722 735644508 126662161 938871183 738816838 391571192 863545354 585079231 681403153 739004475 971416744 275891969 459822834 507509076 424338104 969397382 678751450 398990356 565523093 267033351 344648972 685848882 648923618 748640136 811565742 474794279 49519585 638598373 846532431 112441995 650097282 385783074 566380946 671611616 731941658 247879920 596017960 766649161 745374829 517588616 975826288 89751152 878917679 581222091 49660603 349140431 79420483 244887524 452284310 809745474 605070687 532747991 802360285 884489771 213570240 809635859 155861537 338108828 268293009 472600472 913070897 639655334 248704351 633312035 258575561 17497636 952905604 878430479 758989602 268388933 303374309 76643384 525255788 782732563 234213135 364275193 505200962 367111997 970023369 965178670 228927935 169003679 313715969 450507096 771890387 109417144 51066176 815389467 787322352 5781545 530156426 315048133 388354406 977081620 497582926 872444618 960032753 249666714 897393182 254288158 208386192 351359834 486755992 168461318 436309439 172861814 138395188 534824460 230579896 760091447 225400412 226132417 257830736 520357870 354755936 477473690 551808794 309810133 911501264 940243805 361087078 217558829 490811273 767697329 396881525 202232187 314852527 234101661 712093995 607827481 998167065 253395924 973161284 681587274 52949642 491015533 443660256 274822096 804679794 677523523 703891735 207647694 801157117 954902356 484798325 776762525 531428222 562313941 539406514 612829588 349849028 850171224 775224417 754329351 21171675 510895541 320185683 313221975 801343614 99442006 614171108 244547291 219376892 717539285 828209301 127871906 56777097 508603667 878510607 54461422 61670710 130445194 563581823 92361040 600946598 633392864 345342075 449818307 400991967 20490290 473504030 222269373 562369657 55231191 800316790 325192673 106362925 833758144 124708920 706843401 945451832 453528380 682792816 532815857 998447999 662122469 197437927 265354343 46195158 620076463 520283081 204926703 679857305 759650926 38503275 434993266 134564597 610656534 95941967 510002223 622802090 701973713 116090277 768664627 621080539 350915318 419168535 811756443 44698363 471023770 133939317 26458611 92874571 471762497 243687211 692327727 222949044 421137334 81435952 508434707 514625427 99778856 892874350 237983763 618750843 236591422 918395639 17743592 815219712 693292949 537421108 853935776 408054984 322409717 538933986 341318532 947047292 181366774 751150436 877595921 511827585 680802211 857940766 898623970 288598979 558189496 914487641 892882605 648266798 700222359 674033565 446020357 442858871 298027679 587884290 791998019 407860518 206268940 144101417 590246045 310352805 391605297 90354561 381933228 759689397 250022638 905423141 45641378 929441622 572249356 806513437 53412925 937301154 896577391 121544848 329381418 632781308 214231464 830516425 870261181 109837567 317162456 867343008 59913459 118312285 180934371 578732901 621164194 186370013 275436094 49353947 861645783 983925375 911026427 701852048 672128735 377400100 974346717 14763506 718626724 912368021 546181592 399235701 913158190 561775819 772756585 819644904 532820750 186610346 272755389 24307509 98781402 84628921 416031354 345401829 219192938 900172687 375844104 743674191 884841721 811285725 924806944 185166641 437942446 194647462 886399586 803023110 548335386 195118470 642015136 895648088 902404417 344401600 237994474 744262340 183193330 760251090 98148542 876814469 51935207 617501853 993058879 808246648 353215739 636140302 950227036 291136160 968281746 296229645 485442225 556794559 863838291 512268268 458379705 24472449 741394308 95587181 347646001 272936990 215993913 315050962 746186825 30540123 844838800 476985379 717769618 292273392 517084485 968626579 295774447 610835077 318480627 279354190 103565750 742476269 649996623 680326253 492696264 377815513 687270132 21574430 861828107 22019578 677200898 62813389 405542625 552498648 379583233 922351586 631221959 646520682 683423375 825247960 845170730 193644294 618603536 191468596 768034253 855058488 713668010 402829792 720177804 430486253 577315382 524550447 128646883 828181087 342004492 42939964 794715077 925661773 259825185 727517986 955801306 582461235 997621177 308161125 374154050 349110626 129985870 135422407 115923849 405846028 82163374 803260107 58661809 451680695 430814010 825463164 150283356 243687328 491231975 161346839 987723898 825236000 229109400 310373928 846809957 654944850 271788972 123389292 153315780 384520273 234797212 512736892 187350286 672805321 342734119 910635871 812467972 282631847 904330179 146676417 603841050 177693676 516207775 931423297 430829119 601780120 249893934 774017377 658218130 293848948 301260321 158327879 449426362 905755197 15071179 21814815 663095350 49879680 799092458 512323360 348955812 816003201 897762755 717787279 15569999 483134742 366699667 384379373 526809273 30692452 754694231 88078945 463167106 642228923 293813450 569326394 505182248 44511662 87897228 51339923 344717627 708388286 908935558 440635419 215697388 261201631 243151781 995512914 422085376 212564257 494594634 562181044 977340959 422511894 376334235 623585087 267269635 558651903 718293 16768650 483263523 481558704 436757284 43137388 828362222 693456733 173586897 943222931 183889161 640330761 700372611 257576044 396966679 633134698 541509061 267470367 470128950 316892899 426774571 985642028 873506325 853028443 681251594 131136775 952352381 715997877 172236934 716704109 182744151 90893879 432876403 404464841 990138111 125754206 968501766 890620484 18134177 105024783 643273203 475646046 661112987 367236454 271717476 542498149 763617097 728070479 13285365 953188428 39959180 556308088 171577869 679626787 454913828 125298818 257668037 730613915 736671691 858198578 960945238 609198726 397719835 944222970 782691747 432197026 812775085 306492856 488319497 175928493 306782702 72098310 961357661 67695402 880370011 467047711 908351544 897579939 340130786 963878430 898049725 42452852 112273075 245951586 628814941 687909636 764896782 5749605 553140811 41881032 67311588 46015072 428114198 609667352 744152032 919638647 85879764 136833634 745182842 386542826 665647678 795204685 571830601 77813834 257013992 265596771 686460533 546666630 934194328 126948274 936149886 709513378 764060769 364279968 467124568 951374774 156711324 491590163 284636931 199109176 448754795 393836385 356310391 472414762 245163981 91477056 799688933 204191844 70698045 532305540 307622547 915502802 939982899 900871273 441056397 893237807 813921351 953246940 428936924 626047608 468710981 176460105 268443041 825795762 126271888 895631524 950754814 341643276 643245814 935295563 437963009 306030089 392395958 35930363 842388764 636958008 210089791 279335671 955796181 583452473 424192314 668074029 72628972 326307622 856881313 65498966 479057950 588784932 246722650 150339673 487015227 843601507 439763963 942269970 224549203 654402894 992817292 479958639 257987602 466398953 630293397 992227200 483149851 686052935 400059575 378605061 16975219 324723611 173179758 32317105 544344977 855597968 463002918 346296295 254264950 681711862 963122401 799001911 893504419 554522868 845617229 441708684 415752839 31607758 224485129 113373035 833240267 31128075 516445722 16811961 807628369 466161176 120970567 935442788 780562511 628746093 133492603 328133305 242355625 549043413 675334611 536352778 226233709 289497028 547576754 627613020 950636373 336581352 222547387 428317408 502179622 420563420 813578628 151489098 164344798 35784822 184784513 255628636 894318996 692614623 347495113 256820228 87444608 649323740 807095261 986916066 772313903 676200970 740859719 405052203 43256964 453508096 111708051 983044661 659498027 59163610 557982716 477146630 354641886 4688831 430955879 328185860 208745459 232716415 673761497 662183181 183755111 824254411 849446880 314576433 537061788 413058427 61436061 999732385 49833712 954912262 482344432 137317047 442368204 510361624 422772448 960066917 470352314 573810682 361768096 443029637 308638412 608960182 714269106 756438230 995534653 832139346 210793154 377488495 655226899 941207245 769786119 14152576 120814160 589022931 229843998 401853147 701124655 711374679 601869709 671728942 306998204 558110469 863140673 608529406 400677766 166966864 149904842 147106598 338939851 413797151 172825206 385279722 903829770 362707519 739721844 448980962 962412721 657883379 651770649 144221279 70377243 842144009 95825332 346059758 856909530 669434538 443945005 780823973 699323843 856724247 42006134 571822752 688258075 792931260 910290385 761333745 926945974 485873269 871276507 231139726 354834967 660668351 526391127 600040408 238738493 220944760 554368340 969759648 739693396 889554294 854900043 331110935 985053018 247254380 817861001 471562712 180865759 607505728 224756284 677390805 58785080 729813779 790720661 11308946 939650996 641440299 246320083 343597895 15310793 104841140 845405975 808399688 767042673 62726323 785510029 565567905 390428496 12026883 31281384 706258257 601886795 729249403 871733960 543230851 445093068 734973564 530032491 760847854 659122397 576946448 871768659 901412649 781159643 945801206 499212279 66741563 883358264 228849451 585385202 415075352 907928851 804882696 517459497 436289528 463588997 973474827 853722673 83468622 541518826 755978235 921628223 770492512 96818667 584820411 334132063 440102557 331989443 299472456 593343265 16258713 230677075 814946933 427976955 255202305 558309784 859565804 841167757 169022790 923979730 28363806 52776690 859656609 934393780 445051301 65055203 10769688 459710 229789766 202099010 951539979 961374662 191417772 513663553 979199713 296607675 264443839 74470859 378657582 878177311 433991667 814106308 998134855 237214392 647326790 591250647 356558737 385276574 815681063 251179458 606720706 452328560 996521591 362045007 513177488 927322308 55311981 404936738 867009259 398554463 2362449 166086156 583557901 439994595 160389465 81347054 495687906 214706039 976258447 528602747 463892125 67391667 433490077 886756329 845380826 232280900 182781295 512991096 692071235 844097623 708574277 131122553 616552985 997564107 146908941 321316563 320915320 253858600 623982883 11429760 481426470 370337966 989418831 127888800 510519651 663342467 588943488 150236113 122789790 177314550 274808761 963941996 156416315 21859248 28907124 520300657 964951008 264587212 552919378 448336134 559025873 705884972 644453508 372546057 880207231 115081945 390765024 34792299 301145494 628267490 596298452 798918666 985439857 556575845 579939454 703834283 206814915 118451967 928414027 714378805 133897829 583373975 665935204 480552314 945369579 942764709 251526312 576918709 447801787 209150775 389819748 860650501 318496130 285325249 54097889 744624888 15924783 100349191 80271768 319193333 494759964 79544996 640117973 467346446 50751009 380167963 254483512 699181464 332224701 555325304 759105896 622429888 740513672 999197518 224063071 344759495 497656827 188021029 876535906 59294413 601673668 466409821 711435579 397929477 846958705 446037647 109460661 409887633 141872319 537040014 96171636 530749827 818470413 133085585 100920736 781326660 621142952 181184341 370729357 981420936 967857253 937642891 695755745 665041811 821350166 655595460 88053427 649939194 925837756 456464777 398988515 312213474 349094258 797163253 173486946 604543652 133662035 264056763 972905319 132866289 729012098 813226449 630280141 851148183 859225148 88328238 878076382 639879227 408586589 255845282 40664097 809050457 387235731 504690523 859035485 655364661 665724490 332320639 4308076 139746913 204995744 4778863 945116536 878906774 552181038 130096901 818438148 81929931 393007391 100670375 507876178 953345547 328427941 718894459 824201261 63381801 61137818 4717634 646345016 925805055 859745465 444360072 664418079 681482310 864208696 713293406 365322389 175207735 461765528 700857561 982144882 560839586 516327573 492265876 358553084 509585827 175350440 332938552 176179284 998044387 114279947 714485322 267315694 594148032 347287581 118806492 861723531 867787976 481623954 164576028 780975048 23109986 672048851 112406934 839050909 862607460 667529677 711977133 679027089 704373210 540961191 477761062 95279019 569211206 83419236 242832461 800116153 46290115 107461637 52385723 413578456 158633167 497978594 224755059 592610719 178541686 412507158 170681741 719145545 195010501 838008765 54402805 210047756 14333667 91027503 939278681 69578761 143816466 736038683 585772570 889465883 753753967 800818264 430535920 703496649 507492730 315934692 224058636 966353991 793919839 43927231 827295114 880707232 351942763 435576331 583579287 714701476 739038457 887896626 275023938 135352184 961135935 468956580 252832920 765951049 483598892 580404296 151477055 334083729 35236093 655244689 421292550 294573891 525037450 210398885 340947017 370918834 270873678 276223342 575697555 32322405 136387703 726640647 214358853 671588468 797238628 720596876 590591094 896038237 993277515 267096872 539204034 801785627 583493884 629113954 111066377 889997191 135925056 747810876 166697430 747405432 930335021 841724445 180798943 384817973 322459596 419644868 689545451 709429251 21934829 527347053 887240919 401156471 682274359 275167213 661435503 818888014 691695236 640565133 814256718 19654921 674936378 891115483 627090846 785115660 219419755 199120098 355850840 529600493 464951550 114124164 483546102 296162697 238036042 240804893 15252679 684795316 318273228 479580397 633490910 781970009 266348020 525701203 270886614 387241048 941196300 693523955 193727759 734377435 127456557 343113271 71838 2741460 84692850 650510644 586592669 537089133 399512067 699045948 624720914 160989239 347989033 436663293 186380325 564252520 341330903 77823642 669128522 517648128 154591657 624178089 650144065 105117911 736816266 366409749 749258505 784374736 198993515 434083169 997929441 187377150 849229245 370783739 180141658 796632331 389480244 168347462 831910641 625856774 135514413 970937163 691028305 444875437 528546217 448924112 755004285 254083865 672672504 705814473 162363632 222079305 603479777 992996264 16460294 922865770 734213293 864578140 6837201 400435285 841600679 107218032 749905156 954320869 925316255 469499646 134953618 249539552 172151207 300799966 17740769 300216331 431220336 220546682 532589272 179232248 227240404 648701504 449549429 575990287 38597143 104635623 341658825 30104100 922294788 354088268 817983563 257774506 813655400 996125027 71755256 322567934 383472991 494367799 382174740 91380802 826233942 182350571 130006333 779067989 794108970 627586582 569142716 324272865 193297911 987514998 836556579 793562279 254002071 199042400 389208036 796739994 346923216 762642141 865838740 522509249 133498089 26440386 169993113 430715540 136002380 901913593 409273990 514367389 921395897 592739519 434458589 64004780 778402464 66962345 176656337 992165090 373878295 271899538 674904910 993121659 982133625 343432215 937040669 463017969 14910863 513917652 108793831 966184846 912338448 133763948 423984928 499981827 762119910 35510625 380596517 916738777 301789202 36375925 551830303 108328662 385735909 266936451 191167854 905191180 787131688 579698029 290699723 116909450 604542761 194053998 276096077 371781955 543294220 20178659 556044636 599667543 541288731 162463357 937866764 432207702 409068922 671476390 997964777 127795344 516360009 358673870 361042190 260654912 615597341 163892334 148392421 742253938 552605203 930110130 243568639 590849024 655422078 107656152 155324335 319649099 576192397 742934275 715639831 386132434 424637782 509036595 267548352 973217482 174504624 951316875 628509302 285260010 729314645 206881009 167939891 743400562 381993153 52559689 630337321 675368504 199977016 801894190 46984535 535680595 762329218 133547276 433181040 544990787 875114761 793195201 331574719 289804206 256948034 821486002 669501748 288232096 36608546 488645660 529837788 931572427 338789237 749655330 986176323 530804773 42854741 97140856 839931016 795273779 576758660 300022428 552863548 385390888 928889674 336288512 339710573 943755945 604885653 973769892 804657768 96544327 292850880 77970167 956122943 549875114 755398612 262718174 728227333 42203495 443211349 671059559 933760079 923231064 975416277 336434372 238650400 677821960 238011011 793584152 879987669 157994121 492782132 89096678 695278633 282274409 467996635 252167231 47066121 284371386 86513915 436988869 746419576 682270734 431821647 828503246 170340028 734303488 552244955 515902980 658034811 225304369 311134148 774106832 641772896 905226325 594744153 558348609 949496256 41784211 266689072 713064728 77550879 35384482 204373407 61392762 763469063 298275778 877036971 982590019 219945834 884436801 737535634 458644745 924154960 54849451 442438725 853214223 65348754 930987488 839062532 876432012 965812392 311972025 477740293 349008815 460480228 799116382 41639688 281920673 22286094 733880628 769732518 98221565 150974551 862848561 404213755 230260023 257872451 115662197 668520903 155276164 751926551 407111772 729099989 560689411 619819673 690543165 669641565 312533474 643163591 503252109 262944770 219078943 112187324 519510552 191859889 677887461 606433960 487212595 204344173 721037531 656382277 605362868 736963019 310429353 223361289 257533764 638735834 417782360 692653479 629266672 414758273 456278226 776401587 604711378 920753588 631434586 108951147 781327601 234753164 5408799 79511388 616474243 337651273 820609330 766580231 271939991 182101606 91752379 436000629 84680727 755539757 633470591 295840643 949311479 227080409 417523809 829208953 152989402 986129918 394380486 897676864 214179328 988778697 312746328 311157216 690936570 979233096 659162375 181414923 541916336 55724072 114187325 191676184 721386363 817803888 108203070 528049435 923272647 337192848 698862423 539017569 524843988 831867392 957983145 685808254 252176688 70260365 349791120 337813973 443254707 596044672 580535712 125073627 742015241 811438814 8600432 595113290 300238722 954358246 798555892 595494947 975099393 268467592 108964340 440703772 612057161 562807531 485463363 726188060 95082379 873120531 562414924 60414688 629340476 192789158 405440779 683665298 814856781 753144855 856080737 641292110 45383409 322845636 12942975 816744547 401633958 927339425 444885224 897565292 190747580 636687660 963622501 274816640 935501213 600235113 533029787 949709389 577907161 672335517 892851161 707097183 700415029 273064063 684519249 16953415 172350556 387016054 792099751 790974874 766069015 963208058 830004646 24161738 928889895 255356059 39214368 353520176 626242298 540519791 822825932 713556034 113043553 96547365 509043203 524214034 490915948 305861532 564739159 815810043 450815715 313334122 168165438 274012378 724321472 565662958 800595907 192369782 254557450 155447082 410387351 79261270 468337723 369116796 892604371 316728864 514897392 596685080 59568937 45348484 564152632 34010935 473593629 925198247 271704006 14982008 591003519 228092381 794797163 403315680 498600315 427330349 400427812 267766703 207238108 282840792 923257547 594363376 143862804 41394778 227409834 515391971 116309422 48590736 774207099 112502772 918514011 962266360 147638172 685442867 471601555 54902877 431850917 486290021 28933025 626721990 109422717 198471015 670149262 767593238 867774833 554650099 881693721 783139197 70980447 420378631 667974009 539574549 531168374 829014043 606178894 332839802 325197871 242834663 512218330 3952544 510367643 367700040 457135384 585167981 551470905 979810946 546239106 61866240 695661852 666901566 208630522 53294146 23430211 622708678 832824295 820855357 613769837 261230278 736764711 568753264 709291746 64449667 767658287 968724124 503777286 335296378 171691484 194348059 42368007 734391928 476677483 559801535 444544676 117813479 632234268 774079690 751839545 97088352 510501980 439377693 51736396 94536592 945462895 196284510 908203624 449449850 23911878 727269717 418761523 518100530 542317496 428179833 762898234 818494571 964727581 196470652 938530727 880075797 118632327 59673603 902688363 855584042 259946180 474009170 359621767 574814536 314257503 458949066 629865185 453749820 909766692 565335777 442841357 141362071 946975537 122171821 490287490 827822212 191361294 77590626 358993589 74586218 498892190 687728937 596444700 219284406 97022900 981936556 53659703 774668965 975966132 935761355 172896506 988737464 498654704 117116676 665712212 962440765 769622070 426177282 536653501 149371491 623802636 974849927 791249897 580463858 463142671 473448618 182781017 816659739 688115878 313668960 922197145 64113558 894608801 426100015 348428423 893155656 279017628 743580331 880173911 9207565 593341986 372592291 671046071 581862138 366164166 563120332 56515584 215362848 454325112 636038511 813799689 2721475 574934149 606322617 28912308 586965268 997369473 215612684 523940889 730175303 504128875 828567530 44216619 962545296 752898175 338416583 138740310 357015118 957334854 502153069 157749822 519425834 567708151 797319086 904427560 997320329 256949830 153229285 957238718 724235719 693009502 740828473 451688441 438658862 585393466 383992799 889164627 714598601 799176105 509219897 662210067 256013453 19750482 762960371 319414232 680753406 921115638 433619248 548302670 823205694 65647631 652178801 533420054 625873806 79600333 956660284 685742950 378275492 419877671 478640933 716508439 290540571 249921302 992832974 523641026 993864205 899854382 716526397 851706610 736341199 402390949 810767419 512695869 702565098 236278031 315708852 759218468 907761938 538174554 256407495 772455418 369576376 99138609 299432985 900711217 576572861 673488752 371812324 992231229 204573671 96536950 922106431 263494764 328813479 424610869 697565343 878980333 568328167 33951933 101739091 434213675 70074426 324878114 388912475 966904531 799180883 338797471 610246243 891825619 886917838 474819675 711996503 711325294 326386479 334358489 409567042 413474173 705135169 179790823 285812634 847863014 441702892 17603591 628253764 163903360 525793822 989344270 758320010 646432450 634284987 901038684 725302364 107206541 217539966 502402691 813104021 596490026 259254777 410513224 573013755 666576630 793907639 936324988 111967453 73794177 334801690 538204594 218765477 211433826 540450504 887629247 729296841 372911456 93623493 498044211 507039518 365543369 617706570 734319944 317222468 501963425 910188108 690315578 659325048 686419263 883188790 374495854 211717113 786782346 569184776 199697904 826895661 161473390 975508042 253416397 623437858 445630788 87703405 838617346 561261719 311247296 723868765 913297575 241803002 497958382 456311345 882782925 502510614 691648985 911853962 382226439 900064481 486648096 569959704 231683976 648715576 757364746 898671075 432447671 646060270 840564946 400335766 383707223 227854875 39370570 593515570 997845903 357164345 446626433 700523848 89632649 479147976 660470528 438324428 527826333 872475015 471964950 641627674 788991052 271790060 241824086 609017073 835295504 861254825 40518726 315472096 415864614 973039005 286989883 397455427 646735445 327635894 147475745 993051336 553580421 850412892 136829348 704235289 964070267 256797416 971859613 201966109 998156115 461812954 352385868 802326079 328015302 520253663 81796723 608122284 185092497 244347319 768096229 412671974 993082326 289891126 115038077 989010669 129202666 837033284 540098426 174151142 405354377 528261647 289954484 304261945 708804930 884760035 997499305 668150609 798728307 417958647 11558873 91108310 45243146 516026367 661696991 389719279 614137777 787379866 242512931 6046522 607746417 763213907 383995030 780043244 137684298 575903604 135595423 168551245 790230042 643640482 666959594 916312796 852572340 170346424 225009541 999230154 546791976 121540381 219757216 254219015 50128848 986076076 221526217 900395077 402897682 750003052 989455567 68417040 964269109 568272115 159917919 910767826 444143722 201077957 819357597 707836166 859835726 635313128 607986824 274614447 99370796 472554077 817170182 340468180 42756418 182649306 704596982 821277677 569209932 515629856 445679710 954395060 214696708 547357023 758130485 622783713 595419971 433228502 134285847 354735519 316897296 604771217 166346625 671320026 651509319 477814709 277890989 808704199 125976891 484794046 233291822 184994049 161752094 880763418 380266388 798950210 938312758 555655032 681525679 805816409 698160511 870808686 719132383 725466668 370334897 418448814 666679451 968738596 554103138 829200550 332890938 403695605 549619711 987296427 230435631 405442377 104396244 710076077 859909378 925082343 324449439 962462034 833613175 647338162 229311097 476842543 676355373 811432363 727051111 106243947 672992921 137672245 9301977 419847054 43132652 704806721 423411844 184676477 17208284 948782542 488276854 411015056 213014104 885373816 897841070 932841529 134389607 173189948 390320374 12386548 718245077 303461177 978398509 403447033 545931404 702015362 630098050 253985755 871032286 974673275 908511115 34372950 915358885 483963360 841047070 1323946 959641948 234835224 742949412 997053926 349773367 750233096 693276810 379305689 196636622 927150342 500034021 358095350 647519704 866845858 965315209 736512038 656433121 26451793 497709073 385603374 301869609 426732016 642785388 840832251 49741267 573514336 138944292 232689616 607530685 6699091 914736074 671160504 61252003 115293256 140116832 120425150 582130983 946202391 639747789 921270996 312612979 66112850 407914036 678178468 567456231 584437867 379595743 376551450 268000491 565352246 234530310 778869928 515529153 586081421 759179579 895296292 653505123 743440639 336735599 975188051 815717207 552341977 905402571 695664734 938817710 83256186 167136368 345824341 256287728 300750270 282100535 240181359 320379559 923927516 546680060 895555063 612773782 342898815 59205065 201253505 152780643 494482138 173336374 696149246 283228326 633858610 100077437 795415896 101010921 819152303 855538027 756850673 603816760 172049097 74456207 832060245 478509064 914677813 519168427 218257402 311692946 754266579 608456780 477403725 953227908 791796482 451685195 940521663 597458144 436878371 655521104 803766210 719262044 177036342 414117303 180128278 33564493 540899011 450090765 580368092 903074952 516688933 124868084 891638878 641482217 960532689 749399715 704987170 990168170 123152939 504399141 519434067 879030407 943474153 671610212 740909868 4926290 571692600 95117445 551575319 981793029 887268045 562532473 316391344 344539749 737191378 468501898 299531794 174453021 893387599 248675895 337128324 497191896 191577237 914365969 140777530 949353130 75404135 578930639 225003970 806929098 864933246 435685781 385948828 186365372 79034510 776691351 782441973 59756406 168537467 293151757 12245473 330305362 100996994 979956555 31508863 318748880 580623849 464052093 152974416 811353127 706752913 433066034 548422726 666563052 675006312 347952118 178473167 721056935 308066244 271609765 624601657 875434478 841807437 530211651 416512561 487748221 395185423 385309903 218933054 113252232 780372296 229033015 5138197 986918719 977311216 109599673 997621534 120194756 13053142 230764543 380584167 959284025 698126602 765551088 237760588 113543932 618888772 115018279 798047130 828013464 665486623 491607168 860618801 158117509 130716026 703055646 409243666 993255820 723304524 906182525 437615021 45680794 429119029 362683333 952012480 614921827 484533261 691767200 669376207 71805908 36222766 233062762 105766559 265337552 236770289 271715867 359420617 115832350 678708685 347052375 55674761 460451390 329382557 673484233 234877805 950179698 243750128 170834545 783005588 101309596 974459744 531533673 221155463 252089500 839237086 361050407 737381476 334552860 219074337 796029131 550111683 11382940 955412630 418933099 94292030 865292951 95746356 32181197 620610056 189288590 938892121 490881464 261663312 902922654 471898010 534269207 788790697 333245663 589102567 967848812 557803941 382879854 39903104 437039372 170682246 515234154 505949735 683037080 393208835 826440229 270535150 361381352 718839222 561057500 824526579 528612449 864829616 220497317 751344679 102192030 925667724 722355483 972003662 83895294 415148956 860634962 90626331 106397113 927940446 354571983 477521805 572429632 18824966 558073260 749750974 761106274 260520637 717677814 267842900 595251908 533495811 220929319 793574385 73713692 253637824 608979725 90635161 258315632 899789096 356065925 730978064 999523946 249765104 973433060 826406804 56099192 92510955 594762455 790290454 934803172 214393301 159971934 542350363 213134525 350205067 138943087 105005413 391872119 308378121 197505590 303234359 380414191 896501844 124755643 110596517 797085492 901555674 350009464 542689600 105666542 864454190 278856947 879822644 557471149 956753798 647119632 882037926 228801127 40313577 163065981 557044812 198901560 227387898 742373750 692652437 406842041 311232598 759638509 194897193 411629922 670313558 624638491 107173265 289499007 784383104 79245875 229988326 101604733 358612013 625365788 48744909 261919065 660394055 442983859 844169506 938884485 448078743 984401239 149719528 526167273 942580528 803934124 929266407 300032765 456308194 109545671 851060010 516724160 173024443 417105887 527317035 141943450 419484146 749663888 21132787 4535170 116164312 873954574 965527484 24889931 188167098 234425776 14890370 979932724 969451163 856138812 423182125 556173568 163836807 166537635 991194537 199277768 976006766 521493519 300205896 928358759 533525102 870394136 624895093 766349692 524271456 152137950 426472959 10380066 684715024 414760903 932921141 236778596 270841432 765322579 916888048 482620533 330069977 482744122 886426310 992651660 402883571 221015266 108829628 373971174 957978048 606713328 384193006 944170939 855142259 51767029 701356140 155308678 70497443 359921759 159644644 289559638 115761813 342568175 260951137 60147512 631362462 230024664 574516170 786891337 663644732 544670748 222959180 14548190 173900247 845212826 905354065 482035876 613582030 233423372 138122058 886230655 39008566 651357640 833587269 837943808 754370658 676681421 51609759 439673407 416430951 837805719 192138494 656520801 260681786 602451313 617714160 287503962 889445623 772173279 621164090 982656812 773075700 989369598 822741644 290947827 924006679 533998346 416297933 536697042 724900270 53802282 373706131 789890058 224592925 475524421 749730139 909852290 66175148 478354690 675978898 735884978 560648780 657269581 73080224 636770196 50494518 52959545 629665015 818506270 12483413 213604978 346301416 568472073 345159519 78251314 359535993 947291799 518786959 488531878 905188265 194503529 438973843 940749821 528298085 753998089 913608011 935857069 599189318 107117109 17957115 271630102 923867032 716231470 281632877 493072035 821150553 324565184 47388054 594239676 700321227 314907753 397333047 311749594 332317545 241376843 254270853 482117323 463176299 965369032 532685429 634970610 740060366 155045131 630969236 174295901 130349724 982497848 849565596 421182199 107695184 872688737 713813838 570143437 600983728 474430137 914848066 516697389 190021574 467748364 578359787 267170824 785546148 935744885 760697473 275358878 969345019 499280893 784064540 161385154 618783669 198392693 440770992 387444854 525949899 313483534 403884047 381853562 666759005 60564012 347141993 349187768 921516494 92985524 700766959 277472090 929194682 288775902 858680761 372290505 638987349 914148885 886788183 201494020 83935403 249838476 633907201 687434726 285299344 164202856 403883093 197917332 546489947 832236377 837155186 273022936 861134389 523616882 216647863 306053542 209300114 899139992 997008351 574807878 925483601 189713452 421340748 575307173 484315280 794354630 459791377 982541248 164272523 818692564 565802254 632611319 436279675 550575082 982592289 173553152 960882284 865471981 948256404 388066630 30351221 713945155 251622684 80367281 822043581 435092837 726513077 683234433 351867948 64871665 521131019 957230437 273951308 126584157 345006009 526587601 282246622 253902190 422836722 158384233 323079453 462337385 660692864 919939910 119094719 718911653 657939227 156858660 25319800 926421711 884586072 368719080 629883657 957278082 212658537 652857132 920501773 897587754 931584546 576020442 993763422 164864067 176387539 272908028 718277196 51088485 489727036 983869915 286489896 985805405 934115815 669449604 984649087 35530190 538811366 882007911 972081792 511200024 207350501 320486891 877747790 803744006 993451151 30067235 63941578 399537334 63713461 330084639 540696639 586512915 186122699 378085085 880630375 198861269 420223532 20250354 815710042 838861628 648205016 460080700 779479568 586716168 225415716 766719953 828628741 22099612 980272728 383977238 921688203 686747447 744599846 933823529 463041566 36375343 871376252 13859508 586816539 376500630 687272787 62858422 796486424 583468930 620452814 823539591 613921053 809234804 428775868 531444016 327316686 428090658 42689429 377668424 78153935 239308097 752114848 426000257 906272951 681745648 337358757 84724604 91146993 969318395 236146334 269725050 930296856 121398742 422486250 296579101 210650431 836176963 285042179 277692920 311040785 694820902 510330059 813812072 638269676 742148470 291645167 588382497 151384590 604773682 97112427 918712830 923203758 162359922 926479147 614550658 38881995 779579341 997890394 559198598 364689775 312455564 792493825 901312474 651222268 187293664 709726620 593212044 416699298 63633493 735735676 59751414 758998673 953112774 630558977 735022165 723001162 840403492 374591582 773673928 164717241 583438610 585497647 750925191 447529261 450023700 7402930 35538059 496305485 767872741 65912536 307292327 913084596 370786814 672074871 61898585 466334683 355241080 588060036 224378798 587523217 42867295 506437911 757300597 443687002 931014349 672602639 964552205 429442190 247785096 698566803 526161271 488518688 670944199 286238627 712635403 500019447 514046920 55366633 444560322 543749051 718500777 297190636 130661366 466515719 270459084 584686557 734875459 189404502 718434020 472601073 159144554 179611560 194711047 775407883 893852095 100021153 725244307 329699490 846434100 150147798 742279796 602930034 491585535 21896523 945789645 457139755 873508131 168513966 248281427 715982174 171271626 696789326 746542264 249483684 673794825 266956392 467308744 757177763 905346029 81822915 598778745 563919474 186267040 984926515 129013723 664275511 407298409 600144823 377130352 605111552 876148887 163931262 885454443 722659284 907799205 605465955 651140860 816790983 834455415 312003100 747332831 1117434 856042367 38229677 192521237 793877073 698355084 363940016 627090844 338121315 32813967 648073387 146592162 565268426 851646811 387574213 204670745 676021732 888895623 417892077 542020986 216863061 724685840 973408893 546888318 348215759 689785773 912835453 674983223 56829661 394951728 602806419 882745681 407686110 414166016 181208458 357454068 899724004 439928135 632806514 966737967 651604530 614752797 432529841 815624052 632412218 791628875 826497698 63724349 475055080 355528562 108051133 760144955 873654492 571194764 220890318 985785209 546858718 49889685 324982941 604598248 955730942 440812129 442966451 171247998 281172565 366083279 845855143 642992244 69355871 167980766 273194866 828536247 310868915 280088357 371321409 583740108 820735926 671878125 895907795 246010537 271335210 763626821 284273572 560679784 874667986 79351107 798889681 813990160 921042997 659072700 198355515 226269187 735246179 105686915 745972737 48484983 777735172 91998229 577606532 542767671 244665300 990416676 543161755 81289009 13398605 512197326 896167332 333525565 584121588 773509087 35493611 234551599 832181145 765084047 295342283 638785665 115976327 92609559 144503148 698270653 876936074 819203879 871830532 304599070 433018360 174629847 913231400 476937439 929064296 170309267 493225828 223512099 425718882 916119740 437685986 388229465 658959769 379877006 924178747 997829124 638605320 680023979 430541935 335374058 2380936 383457169 85997427 762482023 353949586 589920839 674944475 435775210 106551879 316042658 519724718 328420247 625574882 550562649 173787637 809715416 315285161 931341184 991787555 669086252 866755731 481028611 318286063 813113338 897286890 521504700 257310137 772206515 93884158 551279844 370589850 832287859 498298304 756295611 458006582 598737845 478818138 566949153 236413173 687237694 814798011 846374564 231674067 597595152 715560292 943186089 503136760 814709771 128699695 6786372 211168843 104842797 987519013 895889864 947259983 404365264 497595894 653595376 338142476 104434922 475296584 975430858 513854173 603110476 778629151 85653102 687442035 22117954 137189129 977410028 209666465 358085734 265418145 223719718 663431034 906499270 938441089 560658250 920510397 736785467 241904058 32176711 325027804 200979864 727765891 629025779 59235052 220302151 850186061 191970671 19073210 572111175 145373322 165590213 474606354 231864364 960201891 42622502 548510459 227677198 58102831 918669121 120687086 894331702 929414457 298050441 420156377 190825383 43254932 962091316 367264923 844535271 90354794 599431716 23037158 824459962 341206642 47691624 269326327 529132927 349828419 500870236 76544419 607965726 416144504 445949968 767751902 399064103 825854138 773083483 343581579 879084680 710049377 579462625 138674282 149228353 858686163 448376875 184432029 238081013 291798053 602560822 32724835 209152817 125290310 879841913 169312774 723490475 286871769 906002718 665063264 224447773 629015580 609531323 575005902 865136143 383252308 826812555 430234064 183637820 191718496 202900450 310546587 278726577 826943697 857557109 846139815 193773145 704358989 173791185 517548614 678877703 170227571 637201845 994883314 780409439 803596006 440329060 434976564 733238193 400320778 52280952 518297748 349579167 398988206 679580949 248773102 790765042 810376095 835787383 250196652 522266680 673346099 838750412 1401739 213336806 519392977 305632500 112053650 124333191 733443783 5845684 281822720 632770620 689633285 333470537 5602009 702082476 730603324 224468351 727505001 569102784 270334568 435698793 592162672 2140064 698832055 857563101 280329536 698707056 175118537 394861718 754086352 81895934 356082665 780210098 499699614 765345645 115825111 634908284 669398547 801454502 75535298 129573043 494705179 648105712 765790121 253672800 150685667 48287251 245003167 580564647 78174816 988259596 963392753 550848647 434864794 843588565 666937742 100671978 593941969 475289969 152298516 233712642 791900183 939657340 212155653 391519499 820712884 5467466 569876457 743549036 301121890 840344522 212578109 44993456 171412358 505016104 31579655 791361970 962758766 655029880 194235204 774750388 72849120 673876714 694494648 53992350 546409657 899020389 579709302 897183907 681637209 487489260 110792627 229786051 174366922 271614602 227453901 913427729 108467065 85126456 435361190 466126449 774787166 61471381 598893663 182360899 13737496 86317022 711962016 852456966 320028577 512130609 715874424 934527722 228323360 608367056 779394469 127190214 762746555 466693781 4546633 231806948 868135471 320827051 689261525 626263337 433467184 428910043 912098560 350640099 286023109 628786929 784111857 820697780 381141050 117758483 981526362 361835865 343022600 112154589 164351736 980663700 136503051 492671481 192710916 149196545 33166521 608743971 172997427 102861078 739877426 952506155 445723679 985699561 692744682 156991667 21715262 750253202 438460090 314835203 361611258 883104737 157289427 84680615 299228160 310580550 355507391 506782922 267364295 99137433 540766390 695570803 761915829 131629872 565949007 82051572 926633825 18289222 400167889 43912435 769814244 148732489 52129251 258880971 441988809 853119082 504755825 643357894 244100015 552189915 281342595 94828630 415115930 986914380 416583140 475258665 635968172 297322719 115936436 252765293 808848751 794946884 827447654 756381591 765068859 31063737 279848274 41719742 507247964 507981348 610729811 47524020 591789413 803815671 898643854 895263551 150237959 135388904 866970688 582014381 802565216 436373601 153931800 221685059 579475682 689393901 857224807 285586556 643242524 60780623 895218528 259024957 891065858 220399313 885279682 276045182 793866965 123018175 951929173 175866927 55133321 428765652 148533863 388115544 949178512 786675652 506119128 676118836 14574209 325087132 912816756 183186040 103760444 122326598 622730074 348847542 267696562 616962009 26307410 817676437 176712027 848815307 291362364 925422967 135131476 827495823 154146796 384979345 304845422 224801756 630529406 625523125 6616901 231589503 161925248 369593041 218702789 986834425 823580136 980892923 456454211 365811526 925304022 863600633 422901782 108825343 999641591 422137178 299529289 525969944 11308980 880347154 686065750 682039902 218125801 995551755 593693384 486003609 846600011 370025371 540109645 701192437 167754639 247514132 896412483 433340649 430943221 281619541 280922899 924715050 744757463 511827104 330086181 296586911 832734959 825635928 550822350 15858011 279936137 219747850 845292957 772467504 441280184 281501101 295903786 916746556 549638272 937196162 97370693 734510359 82309047 780653978 38912886 149121420 874897494 991208292 655073529 930780533 588231470 972735881 682120540 376273693 925277450 263720203 585205146 65820115 765106983 961045339 364199735 190240755 229005067 276284118 319863083 849646117 612128812 889799695 783957114 249128035 305304715 455775422 251687091 764084781 249076273 766419017 361278788 687878603 619010873 667499080 142082858 992242442 12590114 983967939 102276993 913180220 531792787 416020529 470582969 66017002 17066322 735128439 747921452 538685952 732320429 779031219 501719935 193533166 759298797 256014243 574070697 955192457 74647122 832390480 341308695 40198404 1878195 455564814 569053927 739681637 91834968 234719405 286532815 219534954 315115149 559499717 453803847 605257296 239017529 53520756 174014417 109933858 140161446 889866639 986267722 929371777 523154079 25532502 282109080 91268956 580715096 30117910 871325474 823200055 298334604 560300110 854512240 432966225 20348696 484894895 721394614 927022972 460367810 829178632 651066319 794659388 311317203 782407121 176536517 655923059 482490184 203652860 220128977 544342673 84676662 677475350 638498023 263318600 868274900 267757777 420826658 234368522 546680017 745464471 260091555 96152761 603560728 702759346 641411142 585892812 223722454 899714659 547862561 694140799 981851603 869180856 602334276 906687540 89053716 642035709 409107521 13121253 887403976 83024490 42347911 555922229 29285280 514821728 114476808 36001632 881673731 836213043 211675044 656299979 207771458 257233630 129526742 175025264 314145560 847960582 204660266 15930674 607572611 735428917 470385501 375729966 563282634 936698830 547992907 83323106 248942964 312901541 483824770 345648076 399105209 713875464 938185112 628617421 678073563 160248829 591352207 963035711 334175309 970067972 117572511 982228427 454615258 231063112 333124930 406612874 764518501 61955673 444333609 789340549 778508594 573300140 560719288 974223557 18589361 4486326 498578568 328341859 70998735 95631321 118953454 6104931 395565409 352574034 917768519 295287790 9383070 718087911 374787079 917636844 237265774 391096805 95226845 487271673 306161993 998130893 790482721 647827942 576398759 864968051 859979809 281527995 956998417 121226169 656219298 408364736 831407157 796521476 32425546 194421704 968405035 853818152 631446329 373023277 731709243 702840051 973640280 886482668 637224969 343192758 832057131 921862890 989846584 369195117 327356497 263687026 813023590 13274795 968654077 2373057 608773585 816405505 9654069 314417902 341299703 183774924 775973556 72092797 906214078 7093085 890202371 569585846 616935487 751973049 53375063 423055930 326304449 446331759 38491391 170483735 591351712 902192239 722815429 986460617 157742361 861739408 375400794 402084299 114908561 795539028 253007882 450714310 677300959 777597101 121850720 537190646 779726180 115908210 788036033 170101238 124970263 721646731 126108807 511201226 433855020 83051246 492857110 945540858 622204248 419437208 462118286 33091081 546274263 743620685 755927623 804823893 300154332 884230069 495835835 469107765 532822470 601697588 654237788 906974928 624676797 462563250 674852441 418844872 371970857 939024885 693259582 12544222 797399854 756436218 495199774 503311957 896183363 172630722 496491047 417302909 128171512 228108003 821938510 649914351 939109873 909779246 655591772 353207960 91943230 326969108 943638033 862166440 83858905 988195293 62923541 657670899 360218823 10183730 295596607 458243360 956385321 804607536 934021086 341218027 555025547 732355435 728707300 833605709 38476937 317703660 451713666 65343256 629682791 298413764 447118454 809798320 760916241 846840252 336798447 478540713 646800988 576101119 81516110 393980389 271891219 812159222 900074321 420676107 634613074 727324250 414745435 912754268 991247550 576370324 695334872 555180495 170258874 295095252 340255356 893098972 676615753 66571905 529752384 875434363 270183317 672750165 217048724 963544945 281434568 96834031 983467858 932775154 628475966 829013445 925534930 151516866 708954548 23100764 153107757 550255595 813183589 750148934 933358880 837114771 567344419 751419285 508191705 207321279 837649534 409560779 597785428 318135444 482631951 323967749 670379661 998236959 706726268 937799935 839200960 952204916 489831478 345998999 862204236 349922298 214396408 459368642 934880822 584057440 987945637 349383730 632086443 200916169 314310364 801111727 727814392 689609887 577581465 702389588 873650752 863221451 792309265 418073840 333254748 997234631 264596240 83053561 758026220 788009955 809640694 512927580 288571052 833227367 403682169 873126041 501332761 360320136 773075945 660253241 710357612 421447413 890038294 429013576 313208672 550404825 123406312 991454221 759167655 998857897 626513207 279658560 101008547 394894508 305089274 757169391 925090569 893864269 626633125 725596047 677792575 341307546 584621396 159715628 389174638 733982271 799003555 243087064 540236846 883718891 150444605 719158842 10786827 449565279 327622097 175263718 26298769 325165358 505576744 999368844 747288286 424455079 281881162 91171762 466687347 105561050 3008665 835975022 860017820 743411633 561301847 780595451 862453179 814148463 630491225 288147014 653670481 541164817 168009026 125907046 608066432 270861727 586682342 700378607 279981653 577581890 324709075 275826667 880232117 544069912 324752043 895167417 106296864 752086390 837919982 649408430 167526492 883904465 682590128 972861514 824921734 101949186 947377993 95840188 584801690 968710663 756855384 129566560 923656777 675955668 916948129 983545125 10421217 672907295 38157621 990901826 786909661 373784491 207844962 148834675 438018712 996268844 53384130 49860599 872380285 954011088 140404865 702869315 895457854 294928271 510239526 513166812 646899107 350022664 710240943 451759419 654883816 812457489 992134258 452836397 652619320 785464718 226960891 803816581 704538649 289094785 406409371 220290073 722625508 810023642 737623493 392362659 784581445 897872694 139608915 955169498 575328885 117152136 231757617 966518360 792771220 347895398 135541305 920334174 727810661 591764136 437415569 854136457 543256901 722422842 53078300 579998514 347678696 492232599 520975191 107772238 800780496 572322848 143857513 726996551 261231226 217154770 652347191 834544031 469315402 822575995 658988089 503920229 382976008 159900679 136661578 921103056 41883313 942674230 144912542 442500528 43212987 244734431 462179388 678472484 914833012 818875724 435070382 547796544 344686013 676590550 178166274 380066335 457402112 143129495 296307527 648494777 347575606 789130006 293785329 25745694 239691806 772830855 351026513 478038263 903328946 656713795 41590592 581436449 638988926 613478521 180213530 750980555 643917672 496822873 448259252 738630172 210343804 217719935 24768862 705782787 272424630 9950238 79653621 840945058 219634831 85912684 879701217 933814826 205598919 76204638 739575730 156617519 76784444 317992920 836774994 995003093 175070473 102896480 15149878 435797364 552928737 331786171 924686533 189951575 985226029 795274828 977253167 695341767 995997080 751609311 709342621 841908039 682930648 692736823 526973719 785097113 196190914 984629422 46825969 515219296 917388332 379310414 273872755 809606883 628149131 911683065 936048185 34502444 501224046 900661359 681298262 708673391 191439647 670150491 527031790 236224921 858235284 870109961 992101245 521610267 646975752 586121661 200567009 289603776 635862494 957149162 993818598 745941711 116307478 674548464 404777494 782218703 142035480 853283488 757245224 767548239 727133978 825691636 301883499 47343217 187446798 398324788 372061465 780288064 281319042 899936832 72007182 909929326 732972181 294802672 744928581 723033530 451297218 126937208 907510144 158084560 642333749 372871583 743773124 75622223 411521778 545539852 398016036 764881567 621644046 141389596 425129070 439104363 31321749 937072343 40071942 316736915 788835356 371248279 547242123 167266736 33743350 781676255 768304523 760938814 659239594 691716235 673506634 356330228 753512264 358093046 489404411 847191508 129626364 458312175 318664709 675143438 944440615 413498720 976852848 80434245 279363536 58997319 369308562 884325130 198148090 578333950 961121982 511045180 848107089 479487005 810935852 831789405 378344218 510836795 204834375 329100214 567231622 407002891 321880889 219956208 387804594 841750481 28720089 654802529 426220793 3962218 380102187 409606587 871858569 771267172 303898623 422130038 941341509 422121240 571811180 639472854 416017703 335974968 33807289 613502761 965342835 735961566 780710519 128528220 50228574 914304704 552841365 57201834 665401222 369534126 863914750 215048477 839878751 493265699 331543437 565764444 492763505 672196038 249195260 543541183 603740280 154884226 936025229 228668669 720337576 911571041 340842952 439104524 472019383 801667321 396332087 914202017 669976771 53231977 360337684 465721153 431018891 436893066 718320379 259139810 782964393 853665896 582635795 431932980 604405064 611336979 505417025 243164024 209540777 556903068 3491888 724438699 745340749 660139704 947032321 652353730 804259527 743567472 898433298 854423057 697341038 393320284 33999602 130832114 453115128 40161850 458751817 195574784 585990804 555630636 591997780 556248355 224341230 480015410 750505794 568581056 978328709 957962411 373180340 767972036 313035447 91320824 744525890 802038592 282157212 608587483 517175415 250291709 532157086 108383596 917706302 861661972 876298082 294326591 357780390 720175162 177192139 80024866 676918238 508069654 372640225 690984681 132076442 242270527 358613790 245485900 572816746 997634033 492796468 513677788 601882308 571305660 192560294 639716145 237267375 714601707 350465057 646559478 21494145 148091590 130317424 16554629 94331291 807450992 17020390 699758584 275314484 954491063 100585941 770816993 219306360 606629770 357475221 395368076 738856274 585475273 498974949 850383676 466424650 897099986 243013547 714885107 104835797 449115213 284399011 277087581 630268070 562502473 658284735 286113281 138145004 924757622 336658118 58293296 285820219 263280784 74001074 343250079 19681322 525817619 269845837 780178319 627850230 620614054 911264945 40195765 829100507 232203418 55451877 883518466 534693623 501193492 83755379 301689614 804432874 166540671 513481588 927726764 834770018 411750753 488957556 770873860 352446449 995367013 84475527 242630720 111457352 965740121 730259345 875759939 369258942 637388981 332063372 610066383 55284011 832615112 366185832 402732828 841140714 468242837 250035872 382963191 135181458 81958429 559076277 474680553 13631335 112599456 588790521 49624659 827860279 896694600 229539976 657246437 24782027 104331881 63168449 220002840 199810577 496974897 929821825 453642383 293368877 387484620 137839683 746717355 41709162 982850039 514202106 721636318 760626143 405547656 721632184 88321437 245897807 679455724 603665507 851361855 829981586 636147820 921118746 988492064 257298362 97636707 427301190 423206137 128667424 332438740 482033807 556221141 551545218 563638529 772033120 133323656 756498861 928447916 847481670 838816327 369493322 487013720 908129154 437807366 580223505 324460594 749637164 996179833 197037171 475127716 272042753 374177492 847976629 162433465 645164593 921785527 817352420 29428827 203245031 737429454 219393096 146465708 654339221 91892984 163212857 722293211 142711412 101151724 46607977 25710150 803424003 23650049 887865245 608352696 168253758 643481077 300192173 727213408 870756459 130800105 65472899 540865810 514381942 60184311 330744928 432120870 843471946 747756469 786379528 223441813 167192118 631356030 855403467 56756494 94091377 656685844 599911345 813690417 904954526 551992407 679757528 591070525 883913588 71458318 140857959 494934804 931587932 571198748 926758143 154932006 587118578 989249827 968604652 833026568 137793344 152627088 746651420 66945842 420118330 65643963 40215771 926119280 815945768 204791875 110743926 111254528 498734926 38233436 63042534 269264944 684964992 761140849 238979276 206872517 749576385 195301823 533237818 683770908 13902532 167025982 689708267 235646860 612809839 170263225 428260240 642915386 527339204 512327317 944197242 230384419 370102559 895123903 797179974 377844757 686873258 981107166 909975628 259022373 367995156 693796051 178206111 932457378 748013959 398921088 187154954 489717812 662901609 429159059 788155328 812707207 984127292 998423366 976722472 367973926 260276554 711854458 415453340 543058753 633257162 719168097 302815492 609068300 380155377 434657098 405502548 816092971 141652942 427883909 900565221 927350503 769945800 38721886 788568323 979608416 107878871 835110949 359694474 555150267 316475265 56981697 165668329 77490955 343489256 344194967 50995375 440316729 437004469 842521564 561151935 899179661 722221687 450796622 267642455 231740143 901584128 414052219 532293627 141599146 555439908 258036281 581266126 977185819 342288358 711983477 461454468 633035584 204095404 322404240 803326293 515739995 44258241 528366545 773721751 246117863 684095562 417813036 10299806 897147219 566229036 750062749 41543111 979663983 490103617 64940285 319802617 276068708 13218115 327132149 373233718 360694801 43359171 975181126 351256775 408045613 648832019 987330309 422029096 387790266 678644697 373691055 232104387 401275563 959159176 628721163 587728885 20415728 973972350 315197635 460570914 305738984 12406724 52776337 473202561 647318575 436765819 306072300 275339175 422857938 899616299 600304107 569286269 465630202 21547843 254077977 297100001 949669891 985162828 503671987 415654018 896072360 683769308 433736624 50174533 165852472 707234703 914135025 935807062 629467237 103521178 390476307 164575735 418360941 770811219 725343517 209836366 475465036 324118920 431876500 538319351 813962760 136250120 687347602 106249008 479670667 638909217 279718774 733005261 560652100 222206102 724910209 930903970 66522469 186414175 9551220 221830405 424671206 909747890 961683705 8541050 682768635 360652830 685130331 110232766 96922207 375210130 26354252 415922901 839074583 167135449 443387905 538338393 960702551 843156011 247963597 109489522 348773357 706700088 104602154 491556554 624553380 928788043 654320678 656701629 964351884 670217177 360788274 663337587 705989960 168065552 438480594 779636386 247645151 550864531 710743727 228311594 995736143 568822929 904584634 740871380 564216217 797155204 57058219 421546529 813203649 247904451 13509269 36878859 623542015 277169653 941493173 864479519 306846874 688264602 437944981 322600995 499723798 935625843 329241153 669345372 991377647 268672310 914467989 226807898 486313815 333519299 140108449 583414460 442401989 775612976 247571642 977026801 710806272 636373924 587707560 172589883 965219506 771560625 366116888 859130571 702898964 472032211 123684423 996336814 289846220 124557682 633605815 993084450 78047317 984846581 921259188 528421487 877671120 927842072 322951281 132338293 337193662 495851554 677999059 911257363 44150922 725806591 420847344 11790366 715512987 583458571 871404482 836457029 867198320 657463660 914361296 947582680 249334209 586476634 97522464 715338811 692313947 770707213 582268197 937150322 606918870 520699577 695807526 751153860 751998297 769190796 200766090 53401950 905528797 374273624 250069724 442510 155700241 1522045 515719135 210238932 86787977 296473159 680165595 566843957 436265279 414474759 702552236 188724462 385765472 96346032 242566211 991977174 523133567 841636215 972991039 483663181 261689685 164251576 434868394 907587932 342356893 189569800 858908996 755667943 778485754 729850432 605616850 857018608 405759571 361988859 476551790 957979514 342825586 641020274 782889636 986481775 736714881 985791587 548642060 172961391 239962584 416364858 573369647 127832914 276449302 948131268 933109710 981798010 310040622 183791870 968516107 407172986 432248028 880566140 60713352 295435296 72201611 281109873 42458560 216505342 21498145 962410150 574879323 12025361 944750043 48542706 142063095 913446640 724663052 956766322 804188331 199878048 568969023 910853713 252105020 87977233 720207799 282518911 461960734 217794110 972257446 344407205 732800540 31050462 247584365 457914934 991574898 534683460 260603833 359828529 418012391 632505129 439866938 481958452 17161004 705672768 617032888 644855454 928301285 56327187 128280303 548870016 871536192 319664323 637411505 811339479 291794306 136751334 970882556 120938703 634769650 126295563 770617135 168267457 315133706 560913128 388065041 579181032 155816686 818488869 480394068 579415892 884973054 428379410 397903782 353486885 218735090 825553571 282112060 494542070 841724846 655616261 166732697 72445956 653225943 976581150 691448618 143096309 35331256 508224419 36542245 555823823 116336491 954947012 585511523 792958086 449878290 988423870 537987386 302722409 877253086 891654061 922490411 651210734 958422988 941583924 629829738 51441689 120533836 126379537 917829930 480674560 573973119 786542985 649227398 886674883 932295386 452130857 382445453 45506551 625998966 600438644 835498766 831800038 105074840 572986383 203446139 496367273 88556043 641079187 812742083 275663881 585776236 49767759 670024670 991040603 183995687 943627312 371137553 731392910 176103426 781443683 332643048 701104096 617639966 324503544 221897366 90778676 98090591 416523308 838256885 52347002 964784342 790452857 785183286 844295153 810419541 930914004 945859211 9292432 252180095 877330815 226709569 686852120 433864353 960454381 437325892 518044576 687996777 247899808 640003750 931350686 532786523 562082208 522604991 612862363 971626093 842029857 745921749 727410939 284132543 619908460 656200934 603531052 895763710 101001165 132139220 29657615 934851296 75457779 147762418 233623676 372689195 497217579 570290546 947567407 459790979 412190836 659503406 982709817 270056148 700727526 444776800 487274709 478600343 69432833 171735325 640316355 28491186 864918234 215906326 43416265 321516340 56301445 140082717 477066897 375104855 371338108 689824877 88966895 208577772 229680066 393853455 960437389 656295161 775046855 937376758 549794323 971401116 422668953 455915348 129984525 348998613 230524824 950168863 705925393 483552909 436814252 368707097 726356285 94794921 739051542 884935201 341894066 195551781 375072561 89652892 560506246 765163127 616285166 485763684 776657103 973528720 557094860 619475676 18769655 694081126 627737164 88560280 125644713 263633647 197765631 522834691 136288268 613028268 761360316 594750985 539785192 200595590 602301806 817009396 409992853 53322706 106353886 737295648 707075262 21008088 946105914 385413046 339306897 579235954 983152367 862979269 434521975 656485937 717705370 119163063 989972219 99136154 594588819 204050300 498289416 683434366 33989661 107506112 715684747 398968738 630336217 472194160 94164950 28826053 838889898 285679561 653789322 515043187 115833978 599968152 308866282 926215783 976285093 614814553 180253811 639094732 679037737 540201935 741965174 102616245 861791711 186916661 27715153 421687133 355278291 676137382 219296621 844331702 7957103 960119874 674807226 593147195 168050265 789560419 677961709 697747132 774784015 853439964 834284812 611476604 826186734 202119807 231759541 780089499 661355018 494353968 488102512 875098554 759261695 850410360 614200793 259835608 308507148 45092540 675958066 92043248 795679812 986379915 912413418 816563359 485602760 110796717 530032930 499104854 74443896 653435991 110026023 548179682 448658345 575806284 507831530 26636471 821496199 638143522 565010038 149558018 592414169 845881731 759779101 17862136 80079429 887082689 159703673 355812501 750299417 320665698 23882457 503259842 454631129 575504176 230838847 216210190 449664577 659713972 207051328 887534939 127175329 910482741 83015746 969408936 543458341 874785826 543319101 663632944 827086420 99200492 374330100 689145214 972324969 67840424 34143277 771876916 477757421 366283316 864901223 520209349 597522737 341894478 105283531 582545807 880039234 457914632 40979085 945679144 842203681 954096177 178594149 876416590 181739182 666023012 34519004 24208078 553733096 381087545 725913310 668800130 279433453 899148629 480780425 882567995 717024677 584273998 865640540 300100421 240215222 306798977 719174984 253574116 502131234 571207368 773263385 24632169 569663903 173444842 766827463 235494901 407809343 223726495 373501745 842587396 537688197 411436948 910598702 229122470 546428458 332244826 972338614 47155215 262130387 106485175 336410958 767699304 401907290 558851216 77116009 571735531 711955070 760326596 420317234 459835671 618915801 722930419 634171045 442555182 171360494 412233991 929190203 311735976 321407674 503983438 278540250 884176993 652588935 209418973 861459774 201254158 430358209 623559877 135809875 726962623 635763356 400884110 521884081 303887124 445100544 61632224 111488159 690143061 346670200 262143479 75609008 204003151 851717754 42244154 878661050 625761746 143946923 493230258 802756558 448509519 434016307 405192248 5526084 122110100 589246619 539021568 264747075 262120570 536744693 571605668 783236031 834931435 708470288 669821367 457078611 44891679 118087610 717472100 137257928 119970582 255162605 487176043 390381165 694222509 543676273 710724199 709612663 964720690 744130393 289673850 605535975 261635240 953007525 729542012 351867734 485618793 390319102 833778896 426657061 169269359 868350633 188930316 707568968 683410162 842502078 974028085 86275033 912663457 572417290 449576242 126803330 588912017 546040054 89901010 158500089 408496548 231887082 732506236 628475264 874109958 378985148 634213411 243803871 824450014 899587473 833984700 872681356 63024547 789514497 999361085 19539451 497756582 438801333 728537183 543031717 44626592 495414480 241038368 189980543 308468299 508256503 64205956 363865928 46040573 924994995 299097088 12434831 347759483 392090064 999521347 578258913 74820839 896056412 143615583 403674920 950771208 15360079 393940576 589057673 629528200 760933194 257197767 32996923 447531624 228444580 867168853 577748932 226207159 594166090 452294475 567908222 106480549 726578255 857003224 232811722 47398518 247717397 514384832 632901564 155202984 48942188 837136529 287512893 976825298 403601719 954828840 989579610 59152528 133102941 612626345 16309287 738368655 196346663 718643408 379008232 937033833 778564534 112507808 227022227 201757833 421670772 189931436 692351870 643755815 576641165 387783134 109355707 22816458 731299415 4472959 791534762 645848485 345828117 118584643 11434607 574693840 486193392 757344585 150111847 781429584 998525603 982043480 942886550 757732598 70036616 467015041 990975883 570651494 541946373 443550880 873100495 89541086 252267763 421336612 808534707 599535345 727625778 71140842 829267273 331488021 798212080 499243133 905977699 679518417 144026810 671616081 362400880 728630964 312932440 255989955 427585193 96174204 777429602 55839216 599705798 800365044 576216322 974979072 838657072 60059606 123850885 257895471 971505645 516872945 551322155 419634076 723511786 318731059 459275330 518569626 390213816 645129325 92971144 78587177 282164340 401269806 237605398 296909805 281871201 5539359 469758515 914804076 69178047 790409149 554247526 897186461 633021954 88383253 152507865 634808903 718246019 749932735 707278778 988099606 506616010 385484674 950116809 291084348 974044545 352065055 808011198 56608951 355714242 473031862 921010684 194506322 529187535 455912734 704861032 103441132 433386067 308532051 334196117 718788303 940177135 996788253 771140387 776176642 980247860 186295073 977889860 40909662 12991895 943223854 408697260 321645286 127199743 386951695 150480477 283595703 66879543 127617996 770738280 557943635 572066578 95542809 333383609 417580260 581674149 985738531 118254789 391685756 875836392 564527321 957723055 422732400 6722025 746743334 640718887 466391730 605875421 295779375 481769497 168574342 151943308 332073101 491911221 639941826 116512075 758134133 823996729 603755079 105203251 263471795 402642575 915408087 918905509 892382842 369099990 877692981 450198096 637999120 417968776 989828639 642425590 922894185 625983313 600440914 263801200 100540044 94719655 226078973 694801737 625604159 516215027 890632436 366488871 466300693 209393131 779876949 758106489 619926041 370199487 673547766 704555305 971740113 965370810 103289929 586224220 669446802 584341720 163571411 468168091 528197300 594346959 261568030 524010879 775442373 879588492 391873801 790467062 565210442 251218380 988360913 280686631 893589818 167923605 666984821 749838352 248834289 23944311 280605350 270570349 508426064 649975199 960160011 435671718 118213011 55727345 731972606 726753944 532186232 527945484 544602816 186144372 610627166 464313870 63404726 638940382 53469861 767084874 671009319 869587779 587666848 266176135 359557042 996917052 195278262 66896518 537922539 55578912 504862840 100107005 676072568 201042874 204175868 486540189 631077883 816161708 220065440 186917920 185125362 886944011 582742662 348157624 378450847 169685786 283445202 695084016 212704724 876557099 890355516 211109217 593902509 772812177 184494909 553759692 85057978 902526340 147618604 624025225 90331247 633908252 14558028 561159395 642653316 779725730 612098996 510427710 165747843 208411318 519728462 687643027 702736851 938202295 151629201 772246059 449445947 83544144 466435164 627593586 248298882 89913700 199489130 530561073 848303248 802300228 267413011 186183412 396525203 261050753 682997347 881606749 558600564 639269543 407549555 142516939 803303978 315815699 292357764 910503453 290706563 852716439 906443870 290752052 103846106 385212054 122073206 630742900 441211595 356174039 522434718 462175394 264861008 898185570 38156539 158536076 630401382 11527570 985071544 743175453 827913169 15617550 170145171 48965944 463153042 480255949 778009967 958817744 636246675 24117193 492652775 86806326 936427160 695183068 469056856 780283286 920805984 462118216 174029724 913914907 481159878 470266331 269684303 661959332 377373150 539089757 217721560 244739286 273762696 248245062 743570687 204748558 356930298 757697936 381046518 103264190 614287699 634208033 983940131 213356006 657760772 333189098 476885601 727748434 280494663 806312288 627488909 450354575 119142119 308311368 924234406 228738288 90815396 830600236 224413102 231856417 818288490 224563165 275718424 321742520 20549119 408102890 176547946 34424351 507804274 367104251 616615122 619978821 938040505 80048830 525654639 65862224 567142369 627126819 764368345 713998367 968478175 952843156 353289435 178394025 138117166 885566397 784593259 7111191 892320030 172829422 323854060 318344575 759220640 662079598 974186358 392573115 944367882 446054553 723342880 560368941 786856899 553576328 18046486 626680333 829339142 571030577 899949819 187421587 293077353 713736660 297519306 646315907 43133876 586764780 594385961 907969882 506593947 700356070 625256944 472542405 361363010 876436472 215242664 105521197 915080546 688856298 680746388 672981003 302709309 409467889 154678502 167446910 792937282 911035762 909402102 59438312 683936151 910745299 991122852 356563022 745796985 781202817 122222838 462574341 924427980 72779090 822742349 871064735 54151418 679951329 127116719 238651598 532909614 420368118 262518442 668471831 212407382 845199963 921189564 546007605 141768242 519228091 770015735 174751567 892788637 496376267 398057313 968910527 4370566 398578558 676681193 678317606 188428804 141811832 395095012 238680961 525598243 638472828 713636133 184057572 821737189 891649679 588991150 483775996 506250178 880412121 784082604 124862454 690376032 86431267 638122607 252454080 793429282 686521594 148954798 575036105 883397106 251401634 725810115 331941342 539467909 36884986 135484555 666347650 679313008 357756624 139972279 81086722 48373625 234784721 462365159 409784966 893396304 463939226 64423897 426742759 21695879 143042895 287031504 847335234 798890365 485127252 743994992 125194577 664673621 703908532 822831616 299383835 222539247 451371674 941634489 407551577 755009974 877330250 516065244 909190371 387340941 616374492 567747205 573275159 777129988 282580063 476925977 995566679 202371019 674917815 479919293 92334577 667166483 946766433 879438117 178495851 56779642 970024676 647560937 814276983 571531760 735904121 948464060 591566413 834700238 670924020 659147426 915463073 880650675 670393047 657238058 930423608 422580196 546961481 73445942 661225353 26414935 926617534 347837795 650782765 461292269 101588297 32095942 328896049 394197702 725036187 321772835 25132294 32214157 697006300 292421530 294949714 845594107 675471955 296043087 10606164 315471763 171527391 123598092 718836458 571836690 357534717 891439330 869442067 681736366 722918314 137999202 764372696 723727469 626714681 148878919 201656863 283653658 590515598 701741909 287692523 203191526 281060338 587124552 446999427 20786400 191166999 362862711 395500834 749935220 436271555 141178729 937449668 298406785 218986735 819930170 238700699 134858485 896532799 17930916 258988892 353286533 219410091 32871727 471076264 814838883 986557599 783044299 648254687 5959077 168712968 614665807 276228389 540070130 662097979 96254755 956921808 912651563 981535331 735025807 825157436 384648175 647066896 925250608 502192768 768918484 370512044 32514399 539036931 161342466 578384388 34142261 977075813 273847778 476991245 940364534 393809205 838021369 500145222 15893742 112828644 677272141 117350479 785054261 413519016 872425435 47662437 176696476 618709113 585681561 815972324 706214021 381987202 402187707 368344180 383322544 46971408 346236855 261215062 332850145 986700430 975828739 747177441 953680401 291045851 638210465 667578790 981713699 964395331 574179705 318542793 836917792 521769908 424910067 968504874 568216462 173890740 283096064 31944144 661154225 457093928 804731555 798153040 938429999 422017163 482545990 650679469 481978075 617158426 133477167 841896271 322351355 69519382 423413737 933143440 602833505 386487341 181839187 921606692 461428747 913101315 47356434 695568749 494473949 350689896 447136575 453772648 286378850 878730425 627142493 864334769 82417990 357855921 384065425 803156328 30075744 280415853 11251067 81064880 8211355 780067525 283248197 380656411 573037391 796208339 603470058 122716651 966334956 800226021 413256256 24709126 435319869 672149281 217989511 557306467 117857686 685145115 886545775 114011940 765562666 91691542 575651607 898722964 700951282 262556133 80671068 913518629 158603578 136192470 233991664 392349535 710183568 1981142 185270624 728765912 293828740 410550632 52266149 777195519 476882328 83584109 150880257 674685144 157570582 575942239 192086681 167310204 341087079 520169425 129441255 187240005 390612248 443659248 482162094 280471848 37729550 414576634 258649790 9964366 366421737 741908901 654957235 800974969 343565926 586756559 165075598 527686393 764872218 939560150 253280626 83711205 191672197 318806035 513420286 341348646 139549591 363604856 255273568 153907670 466420148 590551308 384963413 764410651 62539568 47380412 319614170 871917110 429301016 156675891 369138323 747616111 781850996 6789034 215605335 788192924 765123818 401266712 270027239 23053802 407814777 84825692 523265595 956078988 594881079 430250750 311563470 248888645 396664506 182385540 188304315 7697460 470716298 943927683 203156266 340996697 438936952 293866193 839834559 626707708 700433058 487101951 155869612 372442913 548724700 698852934 958355399 927388764 128971372 230371170 732618500 86599026 482833029 697040328 621868706 897581347 158627681 55620372 584772499 726540802 3860737 662047626 73386204 85495776 922355383 402501518 212549554 858388127 177340953 787365244 693181107 254396641 526465263 17967976 895691655 494528082 381965303 146435977 60260635 934050626 557909651 628113352 178786533 899701500 643831314 775475994 881284867 859042498 872441828 972502371 305629152 837782610 452231207 988098281 107514903 130799148 316835996 777841368 508793 122504295 860453950 499391102 556830459 347633921 85788263 181091617 336488376 763442590 867387233 181375438 797898558 456805194 994002992 902224800 2067298 444122020 334889575 216819580 70669299 122656985 958037432 503877543 942001973 304262498 269175511 331077945 965714306 49853269 736534152 69420387 139077025 396324585 349724143 745033089 816188490 62198447 176306332 247373489 489287395 384137223 672994447 987882886 957406113 220832726 335632328 138145575 234599496 108948775 5987740 227202948 637779223 495123398 121668414 887492322 330521334 210569574 366287314 483738160 965574320 268171977 108768011 11137851 710707559 382128961 585337483 955978035 445031439 976922402 263187317 334456087 356932121 587940481 816117525 50828723 977138948 166228199 210159421 129555776 491955878 860474642 368369115 371039577 372289444 932705571 169421701 607905470 288518223 124341498 622145852 191013558 27615506 387120802 486443990 381132656 540873629 484646112 384941446 716174218 589938661 446285549 342523861 975000131 753877065 449318302 864488054 995733847 75105131 880894893 496356007 680638978 692330058 232273969 23707565 366354876 872827293 725858219 529369505 39382117 158624246 453274936 592108812 869221561 197239860 122779744 13121710 199742023 579636993 705604306 832394305 311609291 378525191 750350056 969662854 764593497 691806027 552614654 342656536 328407635 529737881 197631208 895168525 866849977 9599724 444773170 426626562 530538362 691977531 116143705 525382013 305570 285981191 358451795 71686336 747111098 210831668 984196756 507641179 501517893 748156586 473933383 603788407 154810115 809669242 955532138 406319876 457807402 652740828 998956131 220386385 234236594 277680787 59820803 444049463 789236841 526593707 211477147 789274129 814848894 962770827 524134900 999373336 839284740 700962560 371035265 180424059 597800670 857080857 622136437 89950324 85793595 269436 190882620 288411276 615442227 743494897 863063878 604935735 664396333 428509468 195689005 67178211 485453724 326277495 24141165 183911324 293924693 81054700 362770968 826243659 863834544 521258142 197785077 407485234 86356905 230668644 886676196 298254612 143300284 855427673 459270104 192073837 364908035 242498661 75990681 156894446 441634164 951791164 638347137 499299788 109221905 176819430 249843143 521902880 695858042 99421716 896573501 491056091 563022759 481258212 568260217 270939193 490433869 59927420 335441507 232279575 335562712 457353795 863104607 190996349 918616172 174078809 226972489 702011301 632812717 562321286 425238956 940671223 969107301 141919533 153122662 219386969 922615975 199044196 982359342 77471583 805169211 961255972 580430688 274381362 175558632 464365388 101786343 328861577 442724055 287933029 330954119 867271458 842353856 44382743 79083848 913620555 162879688 798070982 534080034 829188487 598816967 87575908 575442706 545212675 345296533 813217450 633143339 861054776 994171959 804938 459153779 222236844 865216963 277799593 415354400 213730886 785736346 361695042 601605374 542388943 342387475 335176902 738072794 618995117 698450051 709518318 304122837 141829234 264506592 795761320 472895310 598605273 318927209 211136989 829884657 924994112 790651968 411499719 382576161 251884953 910847421 710532129 923986377 903647974 552778997 866823655 300866170 278260539 464485828 758672051 840789821 958967194 375855815 716672690 353144276 48475277 626119333 154907181 334124257 152026228 744796007 830460553 254532589 212970763 81871390 628619668 142590953 590227514 726328535 806256087 321151799 400114834 504750385 533091186 129543531 196939325 425684647 948654636 140257418 428814799 939079119 782316844 416848224 428501950 603902951 546653823 170733557 351074968 990635193 828188137 376152608 700123491 951620612 776783960 444215529 151699013 456065581 41559416 813315363 947995808 495690705 676255651 918140479 314099468 672903267 279198495 453334232 734356159 858984979 780139022 633932052 615521133 860972136 370746801 417516270 556699155 161669139 820795726 690402960 962691604 930354628 290202294 450384981 560047059 814642366 424051613 456222065 649356253 738177410 287686582 873302928 534777852 104464878 927953897 642250276 295997929 307370796 605532681 836392202 790433010 581251353 233617894 964416275 371245281 953265347 552044900 432977233 530386297 689807934 874768497 668021062 802133357 867308462 619308372 542733163 382323016 368879641 783542287 377429496 403272847 387894765 37734193 849508003 719621788 809565540 853015444 40045254 543497980 750283557 625680533 709311555 783876612 299267697 185590557 647084369 476211711 660023904 25563484 518968129 908578327 506302096 745788390 479262222 775929042 296114535 217648200 425654879 691610814 179952088 492864783 777934063 476847302 883692526 528270330 654478628 623427982 838049571 840155494 758425273 792632715 583367627 117787695 212179439 588998468 321237936 678851923 779789615 117628651 437054124 782132811 800684549 943404898 924675203 946205209 50491904 77011704 741732417 306944939 949843033 808813777 379003676 383151051 299405109 347983767 625772512 301281204 962477883 873809096 10230150 768731235 265262475 895881470 191491629 122189360 359428054 920935710 242564832 160640464 453460298 827658982 188805189 929755099 8712811 226234118 652657941 813107610 294917391 458406211 145122633 784942046 446217648 483327149 100186475 855645387 281050752 338185386 184790803 240745296 916340254 356873964 543800419 376292207 996846980 184608145 63877724 366856029 456127547 156543404 117229769 567735417 313478490 573158435 298945903 838464167 605620050 307768834 618364554 84136101 727341213 594694644 717482632 651255684 883652181 625950293 216268995 810828701 247224917 471240824 131814155 233396311 556673083 307376307 9226337 229941013 208437599 100132860 481437231 152374406 480687905 857250156 877912138 545356861 354251511 417967086 278428971 562726660 864990312 633681281 202784955 601212054 443091981 181700058 248186236 785418751 145508197 229808534 973546937 890831798 521736305 77792728 505867423 53723988 108235200 158524520 202659452 274859839 692775107 689354144 238291772 210067284 174060870 121001836 789558975 450198465 83990941 867376301 592493099 15694470 276908742 723604318 147371844 740149941 52693287 724274162 306623602 665481812 3890152 506371771 376917361 359875242 112304949 306932352 113318530 743688674 369537955 635349022 558995563 193904796 222034521 466946675 506743839 235877899 844513824 908091502 882105321 961863161 925970456 644223507 108556914 868990197 428369220 90513159 866943253 417621529 791127127 645388664 459605789 329857791 671690190 675501126 355260236 735081793 799610286 480617554 812208806 5147916 271951881 573947456 989364730 898376415 917873464 157073646 585638600 681859779 58942427 317074252 93136241 802447518 943981349 669524978 614683185 223801509 634314885 644421710 787846470 886764364 512856705 116106207 590066841 431884583 450858338 313830895 152074568 516336130 918614432 679515096 674353389 556637997 89273350 417486254 606046198 809791954 253028805 567474950 324594782 205401368 909382612 975080974 138357701 142272967 41377901 909873101 650587729 473770202 246774821 162205534 287145956 582583642 209905365 677521258 724049362 817256576 84686143 788545731 995842319 930827745 994322899 759499535 889775517 119427728 256622569 43693982 19032570 421571241 919110685 477721390 699752838 729229228 70886507 213911173 114234004 827237422 1996445 945298091 20354780 602523827 79215886 250684602 327527719 833659996 264939247 465597724 153222727 107766100 640050683 426337891 779375938 46856360 951755853 54487548 472350321 646808446 329715144 50667880 679958425 807418354 888602175 139012827 281413618 126702033 480572744 927464596 938852769 411753301 649046875 119696439 625242771 816104607 949409793 720232676 229943322 29906011 690395132 81093619 292294838 910470977 594726356 756774536 913008701 779303507 928918098 546247243 982167346 504093403 26610631 393434445 106177151 532627524 503204643 990390479 258904900 584529226 976922754 35174667 341856662 935675425 711756243 404671173 961433817 480593181 308981013 462845467 108317654 22187243 793550409 770746841 821892207 612318674 224504047 259406261 891975115 635941138 473308864 36699864 627838797 505746499 320000676 31963578 474533575 535652062 328824733 613336064 55984697 237532165 23500608 901261782 396205763 505907782 914214559 476033724 294455893 609427404 239601721 457768061 923407992 368156788 626636651 590829685 658879746 16067936 922387542 34243383 267541197 407702749 509005298 241952876 589276464 808728117 673784980 926580146 862825060 772579280 183173668 740835644 763598786 996002718 158125420 7701031 339320803 946861562 24741628 107481258 51242913 193825411 632778652 371081207 981614108 745073450 591768703 590154602 395583694 947275919 247897573 817601207 142195190 342492948 219721349 764708231 597040630 304271482 658724159 369256894 380944252 978189606 815562692 191287373 257590662 802733429 357909134 392596823 440179710 356510974 275153192 768790125 441426814 130200098 141576807 884252325 743932000 449363891 41012817 253822578 641670711 673915145 602722022 384381778 106127190 9156139 873820367 455011868 554128633 735102987 566153120 844048108 14803967 311920465 301257409 891027946 415704428 685342444 119773144 395613580 289062769 199300169 522181544 625461456 416902341 967493558 3921159 355389202 642948332 546322304 75631760 837489329 764934263 398185830 2818822 820560559 560446138 59255998 199844779 776426818 622230547 829030946 369553163 433786925 396564656 885396190 855413405 786870601 475143283 509640359 641539862 155036886 979111395 750517655 510484638 642995540 579451509 723301374 51147247 564906063 580859739 284937301 183543235 18042218 469200775 438560955 608360019 230461944 352314133 482433073 14306966 140505506 470859231 254913894 494565641 28589371 452015034 587494371 172524272 203897875 437268008 805866009 137638971 435852191 209690268 310324147 211266835 319113939 370013195 910510158 637323726 977454577 18320659 879444380 774848396 100125411 361813503 313641555 643731306 832551544 581200348 558890953 357348959 899098453 978774000 897436189 386443739 997388281 895966091 164882417 41958665 558025927 555874274 326458798 137714346 633553942 620546858 163386534 838601936 25824188 664228311 510876661 254248340 646440726 169440883 342395014 480639931 360033335 984005278 631003020 908765147 425400696 87696260 944544764 477067323 681328500 915769762 246055194 107050824 212261076 124095019 495901168 465929875 855407051 68065508 927657029 836625411 555199845 877396300 720880382 736491287 904052025 508838713 79678447 142988212 64505770 519669251 615110531 532032015 663290299 565586537 356156755 932925902 356178839 891236792 691341211 279744410 341607194 311277119 202847455 869671646 642335122 249274170 395954095 227661591 552906962 921530062 897864417 518526969 837184835 302392461 951496445 395278662 259027094 863862930 312508234 516304816 573504053 438412330 514631825 646940912 90767893 104329300 246718252 379385986 435811712 49602801 605998983 638870199 503992095 437773885 400566261 331542537 806971989 960530313 317281933 693394132 119231252 275672281 833625838 910506620 785502313 346627614 534980450 240988732 199736579 273663659 603878324 775962794 331027610 21974770 762938673 348888894 150767771 184516255 370850984 261381724 83705656 480665839 946228043 359832672 746913031 817006429 599291574 519125917 452163114 793685133 913658211 393251816 165352491 333087232 37322421 411156287 528497878 736236658 935989992 744042757 459409438 344330589 36360071 714375090 638349463 87361533 471393608 340171719 111948917 588981710 750085488 21972840 305830964 287815902 478539352 115741607 749979939 671741141 498654988 859107936 504702391 384420668 298028416 14459473 699526115 666720678 517405873 328656149 619577021 559945600 370394343 534843270 955741654 889235838 597177747 174899017 361244276 477201969 193490127 668537861 605765625 425030613 772989913 509313330 106893537 358986924 670338490 683054647 955540805 243316261 442455142 492659055 510164979 407156059 28478782 384179450 631872815 999627096 802749339 551966138 357274965 25897778 316350217 946434716 663217205 500191536 892205960 469286727 18219981 780931553 911252945 920455955 592473421 386346536 742076187 669508172 295302061 705641851 142791978 395113070 288038209 654493531 259084781 805758818 882033412 751262435 131513950 537889050 198794883 42843839 222897296 638823622 594608631 399523909 663858272 724829362 187603090 439415413 714264996 480699997 376828480 199703294 517215763 423587206 63223276 907567774 974285816 575731798 103753745 579370234 672448145 217808229 416469066 481566307 729440965 917402480 69040136 573622345 885285077 924220487 533480588 562081188 329597883 298549551 601026525 41603620 228122148 932851102 173111722 233760718 419665195 877806590 291154642 184510662 344660702 592479218 550295003 975122078 882215962 509447978 986356125 317585027 654320199 460206362 589989845 710068042 11624222 426599665 943327577 651196050 163067833 918138938 123678194 127495559 899045916 919109860 449574630 912363662 885455970 193025751 117828419 703347265 515057713 47011999 313697679 244450236 52711076 809976144 835323074 570075082 283680436 449462785 17248445 436864703 257382539 841284370 897594632 345830236 237351884 398925062 953822859 455026195 737290262 652188604 987027539 784595674 776800547 901351604 603521999 767969645 782692297 895635176 231180431 742252679 634395546 725414254 434610922 900900128 936936061 323824144 134467686 873454611 759217251 275577358 251388906 989241344 959827560 561658660 379189787 83210371 516338705 219323763 811973182 796196554 717039913 639825408 721975691 347497464 690629349 548724079 219592151 517336844 373385705 944764224 107215142 306904121 831405965 501837391 286770351 556957361 708300094 476880416 134485159 571880799 800765481 691004857 53232406 134839056 254134428 441239793 80536800 663969127 575153037 342200945 79959118 836392220 966282902 351369574 878430331 217650897 455592646 56663010 747536766 345114932 594875639 540089859 840642954 461492229 230603638 955417523 441357238 187635034 927097148 591109573 302027693 306437458 704718487 3902786 264709671 47789000 77072434 128466547 280360863 541120053 467327876 345084616 303624668 371504742 405581880 123529373 82370021 502724996 769896485 486216111 688497844 575957375 48623723 513387555 510722432 740811826 701210832 520670222 581723427 794897593 428529734 125551973 462757666 676791973 450799183 63983511 337104387 689987261 519174462 434074023 270344659 776416993 18000511 503206960 112868975 621817990 369655384 81672459 193035249 856058137 286608350 513229329 666011246 35841203 610911085 191709922 22693415 862097414 101145597 660388886 86123017 623302523 409462903 548896999 137560042 739421879 770075422 16687829 638531533 921722296 646656443 600940837 758905776 125669858 597096537 654966393 506619579 681071721 859668492 654392584 644937809 895533684 293081668 128784357 109874917 773011677 292883690 492869052 140932684 845472639 921002526 385265099 522825870 652628907 194929987 737769384 964940240 436214807 344888771 351737416 724940368 137217173 955453052 490657707 571276357 646628275 59270287 702203622 910724429 528905009 352181318 227528042 196917101 139193196 993507331 980761032 901354553 461135478 356746619 759051177 296947766 669521612 99789264 589241303 127383263 336015969 643263041 858690737 820686830 497547471 670301417 192678712 963628924 112616046 437982248 324460211 400400474 940345864 527286086 445859750 822378801 969303862 166926370 86158204 446648845 767819066 570311650 183358532 532773758 810035425 269899817 983295353 386241334 762861916 399248560 843970855 683174878 224018849 599474312 534754846 352577848 246945749 415004239 475652461 67097500 91919918 526963182 215841096 51350275 685180523 693866994 968290900 921893804 326247861 459448898 800168633 154563190 852197631 968714855 867443224 498491972 120709739 214702053 453929402 565268538 558552077 220299544 5022406 757028921 467711528 413700972 336502526 735558276 438824679 455549785 859729158 315861064 506478474 286979899 371662214 642162217 543872317 746375495 30334434 36930598 22055649 358156672 968516388 906022423 95980213 916845019 946794369 517027606 886867056 956829230 995319926 720233648 214757854 116994622 54389178 624785471 294850001 985843885 734962619 658287807 61446456 87003378 323508729 688901122 63229560 589256146 334183197 566590939 50145288 774913467 896896297 12983725 200479968 536281508 164655284 413905340 591399188 427251850 494958623 368700126 831746942 859200514 631478163 589177885 467390956 416858797 293470597 940261843 408386037 640071665 795668199 647498579 749513641 829567736 768635149 802948753 380583521 529653710 621734464 461116408 990419464 265585618 706688658 43285616 131961663 363581490 687478801 939623667 791899516 413991618 173567509 754684348 642518373 280596577 890467621 334774045 429596792 676015921 287921119 380280318 310882499 758490424 421467630 157032396 902945549 216505026 34031678 930265411 588903460 166531648 583460347 778800544 712872562 629834651 123088528 234450013 273584360 849913278 600604664 741007396 204369335 593426008 346285771 792122531 384403491 328769227 65522952 253152932 598830478 650699116 621518817 176556048 846401258 442933075 916158613 993842205 514832739 320222168 375279773 446646291 956075659 291622533 682478688 78878541 666165155 177334370 355741463 422184517 157952453 651703037 77035678 831455834 942940266 46783861 305940493 697747543 607274295 887507043 887632258 354567749 31756607 913489456 143550531 628118174 844214577 850554080 245839055 752853158 223117057 52287734 902092273 447819569 350353671 233002417 395726946 129826314 827927649 175135538 240614754 898317045 390268218 301955868 426372820 193719188 514869527 903772513 583881691 307552259 500805191 257153017 86084290 563809659 385993835 140402383 793593071 252616903 661850172 312119621 742945774 881229986 92710197 558059951 132691833 177036208 565712114 610085008 601204846 345521050 376536276 437938907 209597101 321871094 167871972 374154194 752356613 804790668 524957909 854284136 798548396 650409875 831563518 233039365 42396653 826219855 954677569 696201055 253943138 250528468 635911188 471821372 287316727 376936484 566576831 307540108 846893413 360720229 132044471 385747442 888853597 352821247 969542065 59008188 314724184 664895999 107882507 75847604 694122739 905349745 688096121 639029296 703074285 275626454 403430993 718441101 111997547 214016203 403109505 945214559 405032468 241026083 622674699 818480534 846006116 88021051 29624735 112306975 165255559 301256978 611987007 693017045 303038291 837866204 388154497 691760032 254610637 47182153 257739945 659877700 18376814 376332534 495048292 275797447 169148924 83054807 69172388 587057214 128866697 477067110 757109812 42914557 781106515 315197998 893273902 785924993 821997070 101398682 636589596 851096065 929575300 33425185 835625974 236731313 523819004 242463607 490207874 655914329 460753565 800459618 9090837 985700547 228403850 668405074 185096450 798872125 976608892 769416885 370839883 869778521 879650682 67289851 74155316 154178576 53817544 800049683 388519998 700257674 523594172 213910974 89864727 392257684 940370275 891812832 412425471 580694556 799766643 989553009 198311698 862202544 591965785 501048050 351061846 462087251 401975387 634206095 658920097 359696623 548399637 340142664 532180304 999316713 780702367 298101572 765160179 446957196 354250901 24947725 589359978 671719807 183629406 427960020 942435118 157947949 584602939 318840103 102740603 185822659 470002096 301995337 473714860 217394542 330245683 988206857 593078542 811440060 782442435 161524073 56542760 92299897 393560523 741838073 199907960 917131348 592788143 551122953 95688595 730591478 684942921 631491491 547111070 91950834 978376478 358588081 122969479 219030405 44409517 187701195 722201336 353714555 399825570 546464752 509117960 673421745 946250019 472712242 751296560 695263384 405209858 491110857 385126550 590186382 149473038 575053863 182144845 658437967 35760149 214772101 250312104 757451545 959871285 17503122 304870218 705291249 668842425 567896512 394843785 870726563 392962671 296784075 925194567 265600763 656028721 657685033 178233592 737857031 579134468 233695699 632327152 396114810 749096019 440445538 321261623 974333163 292305126 443591296 168641601 650068732 514681292 390378335 28498672 960870197 396280804 178300887 259180663 327105644 130970800 583467038 910328122 400121414 627072213 409036427 421890254 792480688 141120924 309296822 395074930 257749982 545510794 436783192 159670108 141239029 191953148 157866661 36594131 484406644 326417604 957551600 395625990 69979524 305582307 446779280 579474093 461572264 789237335 318265353 368072210 961205032 171822583 120880396 905936755 925750511 921379923 365626974 503300635 771654727 561359336 658547485 346994577 804463229 319486163 435646047 606948089 360053448 613596025 159362993 331702340 680243375 44637035 586007712 754862245 653075723 782077610 582148274 97890894 803768534 923901611 894307178 513856852 30207323 782839629 907761287 153410695 953103046 484722226 940282819 231605383 19553222 309787601 141423541 414580667 433224146 748679464 825750178 714604670 237386967 554300868 121297259 377058012 42619027 851276045 413988266 619900044 580649908 767337027 942253146 506978027 492121 648060497 577178872 397364988 953949197 699987380 584058658 153332142 679188612 304610688 38968972 407371062 896893797 907697745 772880949 272683075 494653070 199804209 686194262 359963062 783980272 792239886 197365472 327140467 298272150 564513193 982986021 769852848 960871928 26413731 716754136 34839958 816676000 762193851 127663009 734749097 145131686 483630072 251129119 625072025 930925870 180682832 725046827 391794919 379824421 147977316 259614166 216679290 658606110 996774586 500217094 131982527 51311262 744991119 868233462 903699007 984072724 144646356 444729799 894525559 314052177 916490806 331009899 434977178 895877416 788392861 74548822 647643029 597297795 90004444 40739140 199102654 811221491 268066433 802864629 362478545 183869651 850667431 395800046 39265431 707043497 758090300 302865050 15524328 639222894 95047144 193370783 409248245 166498314 12173606 238462522 118132045 969278829 46665889 612562773 10819211 837346283 831858950 724910692 471478874 557295264 663157301 820097980 313719724 168420613 196541047 695776138 638767200 554054960 670330103 860852978 845204026 844470545 6891722 81711388 161694141 690659756 58873415 304217651 820653698 306194343 985165145 956779685 941746652 11672832 588711760 518789502 954986066 842148880 121604230 922874818 767863823 120018927 880745580 787435688 814368894 404166154 106284667 334600730 398967984 978945034 295958351 662175787 525808626 540076467 268208663 69188594 307237133 241063628 385836902 378731895 406898959 762411417 756154276 228063032 478928710 118405165 259824866 152778410 452838005 600552131 988090153 517149528 151697000 553400191 957989157 594272686 579240665 637876689 71467454 751901537 725578730 600888611 276185182 299560757 807673944 556782844 390363505 279178577 870804745 337327182 104904680 47182066 61450658 827723371 220398747 252942060 167848996 309115602 937494252 779120700 395403810 588118316 732186316 288078308 62619826 720266281 536238459 135216644 209209327 939066575 390252917 439594217 764573447 531509695 399983804 940445137 936929480 555814470 424403771 201857180 708566260 620023488 450824929 449878868 276021702 170076584 907414555 210948462 930401066 115795177 577087358 680844299 713704171 958882008 430799216 717276097 673831424 196855068 678595698 139896171 379379287 470086467 804130827 768799243 586124003 8742698 288999356 59046128 372183786 847174479 665030247 215234803 781064559 521799482 352846115 859316860 427883847 944431918 990429931 258228423 295030966 529855780 49438904 792775584 942488999 845006933 180157235 61733703 554406083 78232873 94612246 717011556 832656866 546820603 211450646 365296669 945102092 484321319 968177578 941983060 277067922 263466332 566421873 381080360 932946548 899451913 362296585 616123173 418888981 274991118 589279685 762806389 388539955 453909120 655144517 474595342 305308876 580993081 815703177 497059256 419000480 324360566 493719268 482979252 908587210 849413238 665573609 132623195 824059524 227312248 867247890 908763715 42637561 441015729 953745073 225746504 569884456 286531954 681577938 233574436 537289511 615407572 993658961 776203741 288494093 873656126 514128668 598446909 319684438 743655548 434263181 380522155 333992465 825136678 906652809 441311995 743021287 610955552 191051881 267487176 212271776 828636786 397980446 527133026 992863617 691193600 346627150 701377386 757663543 95278500 576110375 384383036 211862786 914437137 631801188 23856943 922346028 189398506 359176654 799758143 254712432 756250406 711967601 586645615 14431860 583059656 641583364 666895371 172407340 563445949 56369973 23053485 319718907 959963924 253518736 929898909 994737669 100875709 783404459 275122992 117419933 943289467 888377293 811759362 460907857 867924512 437122961 864980381 64251446 916298678 854541135 231396920 608692730 125101238 125746730 273179470 670184715 472643002 715366903 113440473 150822896 346975495 68938412 589551934 630133817 648931318 418954071 563995638 255170729 300899963 858800944 49406825 423944219 853324903 12571069 232929692 552331821 453349191 725484080 904446996 684622902 251812871 791140520 281336438 322218932 674790881 227483524 582086914 315150009 26099500 921052096 60679318 964082860 41033036 830014196 120140549 827892095 637251552 698857246 820931707 304208992 576811982 142141053 579014167 23132986 80138462 716633177 61273568 416803708 894151212 218945635 586753277 873297920 926124661 203950865 220652197 677026489 384118380 418040211 874556229 524265005 924295045 976999676 189015338 460639391 688974963 227014080 703705064 162807704 338215809 397068539 542857368 340306639 532225381 392948890 266133629 556270696 186988496 528916449 50682672 556025244 205243255 882796507 655310741 889628722 809855634 98654476 527472415 483860346 63452630 141068196 995916991 5762672 400495599 877775177 702939235 996906911 680962414 479176149 606819313 34598110 302599597 940343839 215496946 393808855 589576040 947821379 653917090 611136471 487608680 746528816 249090786 52774721 289111166 877093344 475209033 404882047 44536180 294295395 224856811 732940110 106840203 159076633 643003433 744415988 793968984 581626322 417446583 629488192 639904584 370441268 56671101 439431675 13463086 529128581 773664106 89008393 59309340 432244831 612013471 214325314 83900021 434771470 753008557 127947771 638224911 501921685 486749254 18295513 962901201 841318906 448124215 404139835 383108086 975849522 138680155 191772492 23700816 853186677 443493787 422982030 446525752 937160003 156374927 57587224 396375501 760495668 905820043 65773543 402632074 191525324 847049271 476557116 71804527 718367527 370159289 495015664 602130928 262507589 583174513 861335785 20392568 290614539 976124086 630127695 949917104 111038997 209180513 637163189 39658222 257048873 746733589 861936670 148983768 388869675 898352132 387564138 463919068 538483861 101175315 221749666 72853799 869168697 990565016 52668690 46253804 946370603 544471355 506693778 985459389 436139083 792334410 720835932 273122714 818333078 975212599 32033141 453117046 390467111 617963179 905113680 708581228 814806918 9914517 685832393 26717857 673244664 601514471 9466118 355578500 237001737 902365219 719244202 482737663 415866591 657206764 90394404 75085804 751987437 532051803 581400509 569966580 573265047 735429251 69508492 343364573 651190140 568978216 138628174 906768727 636387558 120571939 340842597 77482450 11817421 456439767 401125672 797004995 395185425 755442540 940366274 677994654 697210925 876487719 713750570 85615828 509510901 960444041 949427494 381684436 832732874 850637510 788440132 571299147 268591798 640655638 397397210 931671865 412589188 384822067 544438885 413223858 12366508 542071526 504692538 396266990 87933882 321510717 947761161 638525515 229671523 596118527 387451352 600282395 907682142 266937439 970748782 506848939 612561012 49639961 595498289 86912743 696776011 463611582 465335772 548634505 354509261 157664740 526818616 927065902 733545859 202987904 550397759 220785892 276021173 786249601 974237866 54325943 464166908 261053009 156540292 460732736 770003389 228899680 902895961 176008015 713577985 211381334 553571941 760684002 59604721 82075187 78784836 825001583 870586510 192567251 562931848 429096553 45144452 412612914 552280757 670508829 52299532 171768434 43119838 880530217 799933495 935928487 372418346 746316273 336841595 818345116 208301691 867260451 470870781 679182111 445606143 714273457 897533227 867634955 911894394 377261197 705316716 287868714 651898120 324400831 711217173 751343583 285167076 523841755 951717335 291470453 755364975 419991843 280323962 224548286 174350628 590886834 644804498 515167887 333742228 144961096 373974581 440844695 942145577 371578085 677289823 453869438 678700778 219134068 815298219 683122571 356139700 650182146 327743511 189125432 613392112 118095999 827571020 725463879 29146217 184435838 916360912 521862865 828759602 877979032 347490920 118808075 172936040 247861890 410133771 805688266 881244314 358940751 357285904 789409786 930622555 598148956 580508606 884141220 316755127 17608923 203690826 323897004 347753601 834439174 319814703 322992530 357392813 861583316 365122390 284657517 522337166 384382146 885441446 41737687 322834078 220736610 455054113 648201800 823632908 261341255 181738056 760513440 333058225 392384610 689031183 316149424 990968382 418038965 403263625 278058606 899794836 789219104 536012524 816741742 160523843 921977820 77379307 895496842 104209838 80146126 702675073 815237277 491089133 728415900 32787797 797854975 380445618 170649524 230148136 448225897 111522840 449706542 879366190 577106681 838606795 352247093 918865829 685923980 381636146 425866046 333566539 343119592 933464160 359148474 100544593 198468726 938529784 149544710 316962299 313673763 998149756 460353943 662347162 266902555 167794853 666655479 507013234 72391524 822614896 556733481 110952443 956517294 550794489 399840815 952957095 645027418 963071763 70307312 646209301 406076288 378065632 638200901 663810951 550231925 712510250 475908263 686639799 633210821 668955773 716884646 632447224 963230645 952773892 489187908 453108217 917368169 948620657 86205270 506310249 229983328 102429738 284637923 969337522 637496016 616870047 764325949 796145498 398693253 719431739 173034327 721094220 168965606 48947877 399419374 463894981 585874236 530311400 775277501 18441168 904427319 65296126 803374174 807126729 496879819 743532073 681707798 760479170 412200963 715626517 176565711 902274026 361478577 849383788 774619818 131888697 442510049 403629510 450805417 722459411 77546531 805590228 145039187 347363107 789910348 238399231 669529343 851036646 89882668 735832285 577261046 400318835 348555557 408960969 666515651 548522518 841519683 759268338 794075371 8263066 85316605 479275100 855525210 232551587 597325522 489241345 333295577 450692290 603811588 570122420 634374556 850658736 676569227 738211934 159268801 154037574 1743815 979018524 149931370 320741902 810332474 86747957 644458682 405785891 108040514 91487690 373231701 812989628 405855847 781881709 799926417 392158896 624723537 652269800 347922822 759919684 523674262 718637403 963182385 729889395 41889156 203476508 298154227 498042022 446497875 644970012 826266550 381278109 101770304 861712951 48373490 796696304 51324298 405456974 212609595 694839509 449226852 554185352 926987126 792526718 986390791 638118287 373782531 119986180 808462509 753725135 794702384 129033072 410241895 880105411 273782172 574673670 6040159 867366211 397505587 129174246 798545908 738752241 457638820 2393511 261442800 312795018 25432801 43063993 971355514 924671011 833093042 795993641 698791808 155777881 939732648 95015308 24349792 742340152 71056182 346842159 836489077 99238679 785807752 400781157 437589283 222643826 829338603 97332503 635620784 6296053 40916440 42896693 159575112 118419424 169382558 871721525 1558268 523620660 387998211 225261144 587845989 517935580 947605733 577624591 254046358 983016157 875366461 713220737 573087719 890839948 789594724 457555749 187521116 358151728 96811457 370175424 140205924 103438304 564146932 271171617 140641401 637472087 402098930 707493427 540403397 456412278 503578050 956154311 799968954 641037537 656032400 669279995 34237532 500246503 58826587 468760922 548251938 259607235 569740095 404827444 939525051 795618547 969973602 744673058 497730942 911524709 342704741 574654573 864740613 407238700 211754148 967020589 258549514 620930988 905595221 360394317 899145209 467293444 245620876 807614383 118536225 72233585 79661579 626577141 572027658 499463890 833856735 249541809 518438025 180843331 497104506 283906116 339845284 392389115 317485085 274434085 391237249 547984657 650208498 34840821 570687061 150097852 781780116 295020153 391048386 226655831 818801228 610571055 765305964 77391979 273491281 996060124 500791419 445860332 971132360 708216567 684807562 48996433 425205924 492312558 282736927 626262246 235592847 433194671 418945530 584710748 349180894 952215310 674203655 135452887 365221715 51187411 913271098 69784710 829077314 988889055 462809174 955868034 830366655 338676260 652610994 993956643 998082758 978915946 568129165 448954022 792973311 9981780 401789814 212555522 394626000 26579744 876379256 390845645 437821615 805737192 122095187 502247011 687837054 123405488 899281904 364192844 15389654 174550491 673610597 449178019 874179275 384547775 84577804 94883572 697044071 880740998 537618854 815286184 667083606 7479783 644311154 936406355 545496627 570804443 260844879 192313618 715494425 437668344 665842376 439979736 544194428 884587681 918924282 696403245 388921657 91112643 422528751 466671840 698596936 390794703 384230992 167440641 880179005 399784649 510258990 59965362 477824549 132265295 774575528 141604994 615928193 959146544 790548709 151477560 876959230 14548917 750014830 539668539 79634605 701656484 123532089 469156650 277473817 422609715 74044101 958755308 969364960 976281559 438588444 932197488 790427853 60364798 87963783 674435871 940891087 6834852 419480281 818754227 956021537 489869083 22938572 934790663 188381612 154305266 549938762 443710802 482110590 376571945 594039779 59959373 250457995 485365547 169303027 901869896 208268408 163519554 529182702 308446005 820079993 50935095 523731996 105740147 194622227 102075992 712866 516545750 267964406 997539033 884047210 148075221 183233942 219612008 773372116 310346023 134091661 515440937 235623460 914822892 931837014 924820478 42141938 911301713 13556535 666298441 402940597 23774558 401951422 469269334 545152752 926909136 411287416 679716308 47264293 237008402 976446709 146752221 97061310 576579357 772151297 526122361 459234096 102565190 928068914 303542783 5511193 923648657 667490315 669451547 605015009 829321337 731944092 422740284 547612542 492652345 58972179 418667891 8874473 833560895 647744170 628932376 638265285 29034766 8651779 889810950 978606708 45740406 528277951 607121381 635677350 721118263 252472095 311456688 867479443 563144058 477625432 913281552 474513268 330467376 490493826 110062116 491281432 121353811 741307675 717115303 173636775 616244611 722454471 854169863 767894854 215669124 743082146 228930266 612581402 322220094 565601487 283560749 25281055 243073311 322312895 929182504 59752007 413366362 843653558 357632891 469741630 976867914 372214231 341535277 396059014 968285920 181215540 922330953 81342364 671675563 707823934 684962911 979574651 890550692 308393043 800735834 688564207 482289045 672876234 890152722 647813394 942145568 475831120 288825033 693984385 648332579 146943785 512360319 674045908 770642254 837053218 45719528 797531926 172367632 491725068 162406700 987732882 101657230 921094735 689550566 949127984 271141195 999268805 64860518 913862213 210359076 692314640 149076158 425456038 41151711 845567564 783482456 159991291 579670935 356263004 374169695 321993058 657516384 238028201 47052239 319061444 923748820 494424007 241557031 794201364 156404848 776342378 424759627 205383398 615852263 866708884 372673187 2529011 334056732 59183636 523823940 201126867 880102167 233460642 945156259 759008102 64375276 945935157 653103855 798413981 812613 940122381 773211949 67771916 909115638 703612583 659081699 913975084 890830378 704539041 59781594 627213096 651250100 193214841 67193166 654999512 123982322 127190892 41325995 14780267 249703197 838786261 644189957 530258646 695218368 308142424 698292485 485238403 333496648 285061328 130743687 707887404 997533706 101315768 724317128 396918279 787096993 191197746 248012795 224238057 226424393 578185474 300517699 106437511 404788673 148814493 597133501 680464230 489911670 766488381 333012988 867018649 616587310 20111419 619881264 309859106 28624754 887574536 172300364 796298810 591488253 855764862 525665150 279286345 560686471 918122716 362109227 268278549 857570885 893195857 880547839 223225555 22454776 682248547 630077372 244191094 998804376 518733548 475119817 217652176 40721578 979482266 15893169 415078041 479081102 171791077 550261766 330121322 979877436 121709310 87134828 772987023 141177195 170529416 764311485 200398876 84015213 842754828 328257083 406238490 534095339 815028894 2254145 343140748 539949976 694131734 76123459 268639504 297781566 736427836 835311794 570030133 805035152 905727680 273950290 293077222 205329231 36937892 249159195 1323941 850608518 603548036 610789703 713918452 990569116 918635415 879540464 285533220 774806959 721142317 556821765 579769786 384324795 991116266 62189659 19502460 34038695 691428876 422823001 805207141 197709269 290668477 221696340 418591436 45656332 713367326 798783280 920042869 759726161 677406071 549115178 601068875 709258661 167089512 2606269 446160563 8628725 673906021 943385113 81662448 271322543 991215714 92587506 769690462 81719616 852169535 257205669 404987402 237885778 459557845 645781407 652383119 276968111 759507282 402696310 682912562 705259742 855050170 375988779 127658108 308376077 697325428 127449249 48425284 205027214 83400768 260843542 743687550 321721535 157041922 810084040 617678861 544707294 575921095 324348312 788650194 802500577 354673706 683339267 251353963 217219251 885740745 350027005 416585834 739355356 144728168 47226022 544258322 484323533 403744086 278586360 594748145 607875883 896520818 6842637 609602853 361515311 972642279 354145485 90837224 378917380 101129180 727652885 313942020 11453496 216587625 527503040 846632680 103530251 431008035 649485439 375325254 428403120 987544613 996479229 685903095 115376353 775700839 703179923 401343256 713842005 28478749 660406381 315464863 30091112 669559601 926236237 736414309 855458296 538817100 996271325 679295975 543207158 682064081 742344175 448979564 767162769 281694468 530683620 883446804 144627660 368477489 949752797 734137778 202604949 465510485 579541763 215485253 994121667 343663044 24043331 222863336 133476625 693893691 483462424 329296474 542529323 928186418 715476056 484203307 604004895 845357030 297695543 801077432 967867390 939383988 497331110 54375516 264936148 270644802 127515362 103021338 3367073 562169085 274805890 782718719 749673388 149671036 106900169 864484688 829016097 700611649 438172141 470517624 506897155 373350397 267960990 20983087 681216603 181315183 312111385 425081082 912608904 921466413 411723628 311163835 569068891 458425011 683036124 267621654 47260643 149624567 523060093 799203129 379728558 728367330 711327448 447716484 554969198 255521872 649993957 498505791 439611058 924411325 29135545 226581378 291830552 794839379 628896490 509529047 860732940 291932046 373174251 300686585 884925005 139180421 768420072 429527808 554665441 699693818 871760774 433521730 109985784 810209633 294166400 151481835 553585101 994639814 845403691 286893739 445696453 738938947 491425818 567821633 298966656 329560835 806457831 202104660 389419945 636781436 413099901 492329034 606092190 229396388 197208951 953194486 489372445 863727265 275268944 275693966 84098940 92963081 152094742 367757008 178147194 309895493 160145400 34283534 77307968 139812340 841900583 941652824 863328050 73684279 433809894 232704237 827855742 207392234 933066350 201500229 940025341 854049214 943110343 963098146 956469525 155516705 885305040 661148284 266920478 716717585 110984012 322773180 407349887 573871683 279665695 472409043 230975838 515736024 599522790 261904970 189527943 574556739 396115561 673355090 20105516 920995293 93012797 560476177 262025000 432002287 248283689 811851091 340194784 228895645 983678617 928618870 563686987 944022808 166370667 656982784 365072062 908265097 126076720 860523300 498644838 847173353 319427605 27317777 198234759 359389277 860965790 625852295 49905630 167377704 264954622 284334767 614751248 214367266 16231702 277977690 491142058 600163331 359216798 636323654 895949632 172079987 667290496 841260451 596649540 147774792 379228176 626931781 23814585 731835327 793846412 818584183 813419703 706537790 296234480 185082497 609036129 768716889 709592112 839908092 392112754 750785024 630014641 74431185 83746401 482761386 151131150 249618814 65737207 997648112 97953406 663745758 603163682 930372094 751377231 900763849 111472567 33874094 38436993 55917946 840358382 625746767 607316042 268547514 297222744 496200785 927277695 682674194 523474888 910868368 118434506 159828563 370459893 829876926 592056920 320467137 444457006 356859937 162095844 797871703 759665794 203592896 917841068 777271235 237120000 551788811 986079611 488263159 980206952 336587038 473153106 533051683 185479296 903080656 14621919 301559590 611575720 134951141 204761673 440768859 4990206 608698881 865512025 279413383 384735451 172788509 327702807 208712669 778129987 676673871 940465469 774546109 416427235 100213390 770071094 351440045 626181471 850450777 764008500 864164723 749487545 236265656 585288332 175333587 354977785 852102038 173682489 862884720 377326344 700690712 419575784 212355356 20368673 949284926 19299597 957754960 29473874 573394895 610128053 633715127 429020026 41230311 736656202 135999461 975461242 54764243 833623561 365053605 216638403 717376178 299647364 473576925 760251854 775831183 1927973 567191029 780766077 63086538 254078824 366102487 83235952 818562171 449710104 680067165 745339250 790632224 319854898 639658639 669759416 575396666 741740905 583825225 491882825 235933196 327822021 594695662 917429102 585273783 796750817 824742710 669808378 459458957 873286827 542095251 526497264 585185415 674422509 989140893 754811478 195208323 232941552 305907540 662661204 413426451 737764498 788038826 899795435 897146720 556576747 10957077 322668566 776950457 56132881 511441384 688822316 395659098 405353625 310710 401777377 104447960 187524178 249353495 745671439 247876403 978246383 404139134 396918376 860228146 678620644 183218628 898333050 259851912 28334001 261759249 347580246 947965408 492474510 93115204 701615996 809805307 880661753 306405778 483169812 908337789 829248698 798986997 529616820 130653662 755940686 376356471 563460902 868227195 62191190 472066136 611788718 955317055 887802453 197837713 67098494 114498534 722078749 611210046 726706276 198324520 716393243 116990344 430494231 95755460 232672309 806290869 704487991 696121404 344593684 183988042 475583365 218925721 129270255 795771319 537510747 332525390 886235342 380616581 263389312 427882073 864193515 629271699 960027392 597120865 359588820 160601076 277019284 997655701 339108197 855190437 183918337 331175864 512575123 232880856 308452943 413741696 322131826 842635636 655617596 390352776 337182494 993838170 994581634 227602299 331591314 857453283 986965100 197908309 193541218 45419414 673796994 664462680 265682481 439431640 732069552 633688255 756322954 949043285 202252213 538429406 424522327 486047683 113548822 524645651 838264452 511754749 57758475 654628704 413504469 798479850 492427098 378665738 690088619 536740986 604609582 636163451 140985940 710614118 4944579 735267211 369686827 808131388 782481095 222838084 17485114 537275537 732714058 207136819 868152291 413783159 792680642 170708278 343866559 438100608 216093169 183864894 6783574 238835064 973791088 997811124 229558650 434550921 969822096 262695847 858301943 793110373 735810242 144515046 914913127 105056596 354009487 495270312 315540697 636692029 29079941 406421038 412121540 364995113 159379117 783799205 901755835 636796474 425922501 820183661 203527005 392996556 301413226 398694455 34150576 250365377 757416724 6864066 438595914 990715713 908625792 919331265 148962363 434407229 815095986 154433693 439687946 519193212 222994875 266731326 776841297 110967472 74023675 343066952 272154166 159354479 876135499 86082154 527638489 618736 239261414 27175196 444022070 20897292 438788505 878151762 495124222 296156989 162648244 153561547 604075331 192491664 850009719 630694590 891644173 238249960 109123437 147921023 981829388 550463736 672061564 587945563 141711993 896987140 581166395 524462579 956329074 521615681 408622997 764694943 333754430 255609125 996489575 704153827 594624960 799156062 592223456 405979703 654188856 139564855 463052636 976002250 387537970 401169871 901906976 802511059 898920408 475573589 660968717 361464040 873452148 725282808 894487033 960646352 964065497 587990338 366258492 973859283 119839037 457712442 831513407 77784820 571120213 480800512 522933553 412263428 519881913 140768228 821175565 286722660 111043361 384768936 640271863 114664538 378224294 141789786 130312319 593091109 499839495 729612948 810524020 824332973 562223042 587581161 352578430 8266110 686204201 166675346 176068565 336297717 991503524 216560716 273630100 222857900 372475965 576134452 146562884 260763939 498352937 869400040 63737339 304975379 35555364 940079764 282495621 850475262 912394879 151539290 209576937 941642564 600903760 851781445 211562381 805547471 983400851 962397829 640933915 850667686 206716889 286486973 986809416 738270317 760894007 926299409 947794983 417378774 935888548 658762063 49095836 606195051 390391251 631030714 520594582 42014803 964476775 610800433 694064271 758251056 733623219 466002225 316830111 74572037 740845313 507637462 551989381 623838475 869803559 471792116 970312291 808350052 393325083 597232826 808741910 577188916 80664356 40772935 69265284 64114030 755364162 935885178 601988953 915518396 523643498 654976768 645697447 340468930 825932011 868972077 865042364 951586139 131250710 209539778 923404383 155868151 851887256 295285896 960726069 643473322 265813493 888443372 733072164 603186631 152571797 619173951 707475293 11086595 794141831 528058487 19299843 712804118 312815203 942119801 34869209 43442731 577006382 850080983 591102247 141044921 186428834 959035263 383542493 54320319 757836865 515844645 400983570 443910794 152031127 360375269 122036702 401107744 442176531 543622140 432368884 997163591 672979230 451031048 830757084 807746795 662797379 296835846 298333347 643001689 744721653 128633034 815388646 705756770 977249567 646358475 407065068 897187145 421789978 708277808 749820192 839006325 227043173 977406190 926228234 881815581 348541152 97672940 750420288 262936028 951417007 568059409 91363645 119641569 626845878 848665167 859686003 561317539 727893690 872095490 512171616 116825900 243754959 622296370 597248972 908567275 461435396 16328948 516288204 5218704 345327643 158824171 567209564 683377150 89834400 18153623 839617988 704443466 736127163 472456104 938071157 205117469 774559250 775228641 450627531 101852920 60467117 38373095 522342965 559514782 824170299 167797877 415863026 568514616 763612876 807616703 348459749 40615554 228505666 153803404 276452479 159645470 158250371 20225158 980990461 418734200 202457785 935028588 665799134 761231821 289299839 505291991 849768253 804301153 274118746 299053270 636387145 351705828 568290256 717565561 255655986 31765897 501239572 443618236 737314621 1307757 711336917 34131484 862940628 213462984 56360263 682382130 105167915 509647302 789604784 125532062 993368892 50176671 173912790 892019266 286711101 435668412 561220887 141271752 486888408 604933067 365342696 334689664 181356044 162209922 196095607 748037561 303923314 588123821 135063467 512192039 501255981 792261720 567554941 5165855 63066992 136756282 877512076 133998510 217375180 842837338 570885690 925153011 534345205 593299735 107370047 815661650 421977270 859784089 107726098 804664544 550182264 727663078 392116989 254086384 271330945 42564957 838512250 103559539 497813751 26191277 633818799 304076035 605507981 535652332 460162391 353223416 331960720 294430428 819323009 839730220 3848293 44638103 212689729 432234256 999495750 785070415 142470276 202978310 901808784 720436371 439599637 210446529 426608076 994754914 463004880 902264400 419299632 913430227 651360829 866064262 473440506 772988734 841219698 973527501 219063348 250896199 345695396 153606804 525624787 684420096 740066778 896812946 866556279 542509556 830992723 114300322 491540703 11404264 879509175 105524738 178244902 971551243 650535632 556396045 528637412 559196416 251293114 136266075 70351445 298596296 416519761 48386748 20641496 568805101 699476243 13694344 989934534 743199703 810148362 378848852 368072861 213250862 127669353 470717667 932116597 57611023 615393559 865254880 34928444 785223739 242362592 488849137 98810832 981239005 814850150 974235440 681073245 205377836 112589243 139189648 818694982 452032587 73477200 166188179 51426725 199757030 909363833 55403132 662391174 922490771 219798134 469792984 770806922 673606400 804800040 717805056 14914078 637923996 24349269 370784348 678206886 81517940 234540147 685501578 664094791 307595946 290468177 63690888 367315189 545137865 392193794 486890032 678872649 884886117 456292524 564623168 63157483 284821188 61749178 801888254 370432705 314191997 231828275 92133127 137344189 210060661 412687533 82523077 962204950 423442064 911549283 30889551 912537747 304447882 637979823 624301824 927391072 13378914 617833064 213333435 650277037 635492919 325155091 615074775 494658251 58187434 31485900 884482731 826211714 389486685 472297701 508934563 482009229 857687147 346073695 991590781 562619466 494368402 352573100 190603273 512906179 539379065 801754831 372710383 606045857 671336218 951983111 777224221 772128596 376121046 836993598 676518452 176643523 614009034 346692805 74045833 4380505 994083180 148071245 14709189 584174166 615177055 576394364 141980849 361992527 949600335 595557828 534857546 716210340 338271869 966713677 297767152 872951827 765780712 14219006 274510815 155213252 970962321 571530225 800917157 673231823 937294435 430952957 354006954 85049877 146096573 259501109 529027970 312163547 914510214 247368368 310251973 996234644 388433871 967958026 427827458 270289043 321657222 814859249 394775540 573957170 129531454 111336036 178376768 727761979 652072848 380271120 359240302 294535341 490568004 866005730 890015325 940377626 131468534 599469308 513314989 472096677 596741274 751148969 669592636 81370079 956438352 570209096 803443708 386618229 293840816 911393504 58796691 402762551 77012589 69200849 174756734 736188064 124200661 965118378 58819264 824435654 985963029 291081847 18413381 835989920 652133858 128189028 721400243 648083013 929224099 693618384 615420341 881740013 600668858 623238717 735922031 351373903 630099052 608540147 394735914 884710788 959643502 270177658 509857814 494136480 795532541 893218749 486678813 403021114 264423634 746889154 63734276 305798032 953223750 929672498 264962627 529519704 596887578 587118541 655482446 419042154 316687501 315048086 667420085 671333712 558384396 298043957 109346420 992090540 236884975 25229238 997694366 28486765 53773575 371469066 797558998 226151113 300180 984495165 263039894 11793162 632391878 931411822 905806296 510290822 156810457 693215456 128760082 93127190 898085225 171784955 314510245 429727961 960333601 131071273 273871680 566527595 93190024 793701150 142344095 791543339 388441703 367885643 314931604 379408840 302098222 377294507 472620843 774710001 778346391 723299207 84639566 150176170 6854798 967716741 725592178 327599505 615852981 595503475 532690391 53550086 223510205 358723040 103790071 684592801 711774993 906159752 125339651 533808073 634921208 516514303 401801911 161981086 266102700 414753299 428235256 49155587 986212866 158788725 224577423 346170500 473901658 221734816 876163486 857226859 686330967 998971068 301836292 366253603 176093081 451910662 828795414 88536516 823772517 166931585 396919518 762367455 60034054 941332322 151810793 241801652 822392841 604528093 890421381 49079986 817272134 291255275 66847685 885764537 266483830 411493832 548858795 710472139 725251990 365718719 769484298 891660724 221526744 196286955 472869707 757840063 265075942 660317617 616673408 735347249 348767371 797013173 189594523 544854192 791936870 789886369 545786800 959245444 434275725 101616909 396968250 285577321 380890447 211148295 94626222 277274099 882563547 375937522 88614764 213760695 601337359 511442595 401858403 897818024 625444295 876408246 868917007 644937573 369286675 904327787 245441562 250847168 82796870 783003804 772723220 587745096 497479514 601330285 909795611 44039160 896755245 844901669 723605043 363196970 68271595 289221440 40125449 478878674 567044017 846224237 226092068 509959056 831784648 800167315 936048612 972488280 677431927 198371750 572798920 262699264 792530350 314608668 712724028 727864177 358234562 966992459 702939288 910583526 129188878 676472911 513406614 76626322 887031063 14003625 274802760 72034363 37868642 535328114 446497783 691227308 448548376 165933872 384716008 794013243 508479633 199284634 881635262 211412100 176694210 851730339 413880166 417068767 982002222 181533120 72010252 654064366 27569781 386331331 568727083 701131629 145134 647121026 38622993 988492632 434853 764765528 193589376 348910923 42663753 836174655 973410768 902690034 265669670 738641508 445716361 297466868 831742120 82179880 15695963 143681272 214330973 499647768 625686778 573147976 887064728 649754093 760139462 174283752 208743714 74954394 667724653 837187671 879183679 682215926 614521637 942172219 973167704 861491194 186097548 296589199 691102838 36975731 807331347 670828138 100657685 792374130 473599040 723995026 106235439 975649142 164524049 531477337 932577923 760844844 199256636 265018593 349686394 933178085 537333014 942388222 734541183 825026305 30897432 113076637 574559365 912009189 7554094 76134558 878695989 3996842 994050995 346184001 261865783 9399767 520540300 698114769 868512820 108243801 568401503 252366399 397439080 419687122 259572536 216728623 772542036 105997571 376964991 26548214 736161284 109272453 606503050 824341323 178337900 769362005 703823738 283076457 611094826 158641142 680568128 331198138 294527554 537833726 410677582 873419045 269592531 682129615 296473379 768491288 905083429 733200501 5363592 323304771 932582260 357183810 607766486 325615179 820334623 622694128 371360217 149342362 952912012 947281866 852341448 50737670 772996923 729697797 509044541 259810399 889368112 211204724 806589449 347616062 102767354 699170467 874671328 525224213 46602610 364352678 396054898 9580391 184286242 577698479 995654975 288098102 340863298 692076708 721862014 414160302 905345533 705650751 163263089 966585209 988427256 548756436 69207020 151396357 788310045 847123584 216804662 446470298 588949545 296683165 798424116 429565868 622261781 531764191 881693642 741066169 988970128 103427720 687760379 614088510 50151923 117736616 556576281 954802340 383835099 271968467 534507668 839287714 997130537 640625523 372025038 633833683 522097355 382653103 91176036 746859338 922511017 84809909 306506448 216305114 567130495 779554054 973000097 325780176 312827344 716504017 928369969 242539795 219483111 368794790 185843302 373096881 947393380 727684878 805420665 340659252 891475727 30120243 310089485 315157778 596651660 553825464 49034129 409595626 911140651 481881499 300712427 616125331 242333911 442119197 710319469 972422430 182380931 62089257 993951151 983844012 481386171 698911420 396640714 668635245 68883455 586906390 286636185 473239549 373754391 713268603 341063840 238348790 503064576 727217524 230696904 826544541 662105498 702455371 249052840 128338459 825595331 18770706 345418966 172453025 632385239 87649040 364512968 19172950 705820360 661228029 784713800 350592398 411786083 986023710 359260807 33028833 214268184 613270611 505410229 735859041 602698297 857880183 618162904 355999217 961914077 388267191 81430580 993356021 573582841 957081442 175516641 705842223 140970330 745086721 541030814 863137512 397684883 72324198 852677466 185870597 161592350 406908337 686167604 332465372 533670853 345837852 377934054 816186599 861780937 707989466 981092527 730788250 577405069 862856066 939880288 319019496 539992520 757606764 350883195 270648707 473865325 842893420 984397911 665640923 728381582 919769044 252956067 21942628 134792747 458509596 121172552 620522647 908816235 225076039 701639626 17017741 814721033 873158137 723060353 846392381 323213006 770363441 895074007 568316048 280446819 813384701 643428655 883725006 297538857 291653055 571637807 395801036 975691466 120234670 293437963 990254936 337356422 675352604 480629868 613808610 132933611 667966359 934894383 458623569 261513457 310484936 695417438 587044271 446327852 793560725 60823039 448719483 554813641 593917983 135065188 77159307 850783699 440363613 621569496 50592656 746355571 874357349 100614250 206027596 130098806 853547893 930404339 830548824 529105925 367937408 423209231 398549624 58672113 654928228 239856988 574995685 881254682 245499307 86690176 441970307 742953214 503089437 954949523 23235649 508062555 157435191 752558061 412207686 962231158 101038914 633299898 378796743 415849227 193469518 536731776 318327385 928509153 306922691 25612788 825341300 320402085 878773095 262160416 611917156 620246707 279720589 16026041 900670197 344108970 261795336 508962916 186783702 31441716 210022195 1341692 316638209 583768173 483339770 448976767 125102838 335674668 748753595 202934417 359067495 145184605 947335361 977233177 300349223 607548486 670985826 859788071 950430631 400131060 249614190 217405645 229469110 39261463 664338589 416012822 489555980 778944237 978342701 173108433 695651645 444054475 230281347 406578908 399808846 787754758 385980390 948914381 740010709 144888569 471279693 254475377 511009818 615888367 850689614 184524692 279095541 985265565 94924777 321932495 198231369 455229460 656074198 857157428 499978707 877898482 494229391 363465001 40927652 485385460 150033834 127900547 661706156 288260673 48673046 631686293 721081660 902996841 50302608 837373819 907889985 190827907 315834922 621073433 391739356 761730373 874951619 115602932 348511151 5824902 433659435 80247055 825141081 130406857 302795478 33348725 181289633 731659023 716318622 386843753 577571972 377368622 921002944 314963423 343674037 614426481 875397701 954584002 664192996 353273252 415325817 139445712 282190214 515255144 269068223 693130679 252161189 779145845 451569864 452842166 737694885 728770266 804259558 120990127 406364032 13253336 470492456 387422142 18482833 392212744 980130286 769477850 322535492 776335483 123303160 149545811 445046639 808496981 316887472 123163102 276797331 188826004 562540051 139120968 102028465 652638667 56102214 107020103 178606320 855386155 797059164 77854150 239317966 119050999 474777261 382694975 439382888 854544596 915991631 614131896 956273017 400821576 626537267 927531319 283074481 360659286 522132765 550071993 183582483 267950052 391678723 151560420 910978043 902365370 881391912 128673937 273578047 673879011 881795915 580434046 306093214 567006402 669054246 221520464 468082477 307228183 583338617 175053950 941161286 110734996 78102211 516972872 866539503 537267420 376423144 333724779 803344448 396529144 480643291 558941809 831274161 684375760 905139947 897578493 217350018 359917952 633845636 273891284 684682391 387224772 838778962 253831088 922303964 732951050 219518870 402578841 232828287 407853758 740663444 583794406 35556517 267315902 284056886 684340636 848347381 625353700 526773263 37858870 340746376 122089053 242451926 889134581 116312976 101029675 384827623 973913495 537736786 499719729 371363517 197151289 55960754 126178379 245165095 808452837 386288448 381021481 872212831 308624869 974364201 250363209 800348249 328880194 413314905 742593072 148226916 985808537 799270474 662467800 264872459 143686270 439465818 776215234 458425792 175429825 715001145 588163903 228672631 695584358 413021221 254157822 646129611 287366769 96916833 183351889 136655496 611263691 488301449 879352190 789654878 779402157 211055886 299019423 701818597 165950021 815911208 153023533 710354957 57499678 509592883 185702412 860226725 842049314 172338456 161711668 864263743 113025918 587146718 14221998 614605885 23874930 959405164 186706760 837618956 310177143 553159960 653493780 911583424 53842744 709950248 376175662 690369773 784210243 410598374 588078882 863463844 646989254 693195047 989569348 36492278 722779624 641539810 132446221 676218679 517691986 488458586 556076445 798433205 285735545 432309329 366475017 702931976 758278039 208710205 544504702 435058086 201182619 213349538 575946032 848132752 239035198 52825514 970650375 602958600 876077296 677241140 800080441 119451572 815434750 23884176 845567964 671912710 555394086 209432528 285671769 816408702 910660189 173991451 294339103 987449690 945429539 342487374 35098507 161458160 9188948 112816786 625854485 999543971 781018510 50675843 786932067 67128497 567621339 327012659 948205857 230564691 47945716 984673500 95060663 471519415 616779981 132607396 127238721 975140372 940371515 444991368 850676795 333493552 560922199 904563206 925578702 530852824 635214520 337440710 613476554 671808166 743135694 423144231 548544339 69495905 245289953 347156481 22989366 49268432 658493963 151868503 808053955 547164587 215866920 146902469 823550285 301123027 39271588 109758538 46629860 773975161 421680086 25028841 950266714 186308445 842251329 618512576 725380243 590387490 926388006 916630190 615635406 919682975 176604056 267013076 569284766 512329269 23553060 261443713 954905640 567292518 95774498 205779508 853975506 200391236 281723432 392530077 489746382 65015007 291720670 568752504 481089793 164970173 961975285 15923762 684440298 255828905 181406629 467071097 45356255 424272119 221011741 552490099 788254820 859336177 705219086 132913061 113836214 947434020 665027591 818680804 624697684 463371454 569114719 189604586 608297867 430469902 278777860 362440130 761768189 424369699 571499620 626696447 994167552 825442744 145173153 573883023 758935005 260335755 89689374 750423767 189227519 879371465 551850230 791788573 505878662 336042309 931784221 871239180 11874082 324101346 288072487 629061417 770870540 658223232 98497674 66030163 731399713 293641604 707483523 489225963 470085313 851115537 140548552 644897191 144647551 751563021 968219284 38704013 748454321 457652985 838194125 711101743 380730483 383433431 484774502 628670016 628406291 969225072 890301447 527131430 537128918 410986692 145693031 111427345 148663588 531568667 653927176 151635681 817957302 778112000 364557564 78428749 324997918 762535120 273436627 126868007 149638264 941910626 276394863 477106451 665183154 748349604 209937884 568146940 524785174 802230984 933346828 811991218 461291469 153298400 992660634 998063481 313582192 228886960 156744873 929170363 902718294 550743447 212025467 772982262 583171379 713196368 766604214 601210412 309254559 549733186 951878717 674414242 182115256 870987599 219403188 247481218 203045963 310406098 457789124 476151699 11406791 301226925 60902015 466195240 873902655 548559191 630022187 241986865 424533588 802856334 326428222 27116438 455414004 733767011 179896234 871313630 550177684 479626955 162138300 52335772 524226804 485676294 727582703 775990244 444984889 382095990 928648487 369198609 812656814 488256591 123055871 389700874 803359666 918043948 619339217 27991581 262916931 239382964 77425245 827758068 828585764 638810812 277252374 169360292 804625685 233519921 44867444 743671860 72519930 359318811 786455049 989016709 124310114 235296078 262547284 589513121 843233605 530662097 429537826 724399260 600487341 171477519 681205976 542725018 809601240 580214379 245731147 462352015 957316579 933137495 543097026 554243321 204287146 238894980 554091385 30397662 283205519 5075138 458841716 846220609 211689457 605268866 767312601 71374188 103810658 740203446 713375790 993460445 177034782 957193081 222483179 233713593 898893368 25645606 190409770 667106816 233975436 335712740 670882948 565728719 738509901 6845111 350776627 331475797 902377092 271469032 346897988 438805995 791134179 282373032 631864680 444131507 739996571 608369187 87179691 46699782 713486105 541295521 769007676 453223858 347747248 694823449 391913937 674778290 995947890 583336548 813057034 731907998 86400287 76141120 766315263 319468328 740906749 135909045 85256490 633722431 482495108 702507139 389558294 212135152 652729527 559650873 459127906 114204809 636387474 230228179 363281803 474588628 262524365 312049250 890537035 896025421 638427730 524708977 255663675 169376729 425884202 118893013 452671206 241315568 803101643 362206040 642817975 80612880 617171307 554081894 834664698 434409503 935675863 680528659 724133154 785256658 752731857 529507525 895370221 853906240 600383092 174912825 302282886 381315456 424319751 821890830 709522977 576390830 5498976 20039223 216014443 907411018 733303688 384601832 418131586 257463837 808438009 472683139 789701613 682925877 406884536 382217425 540287311 118380323 670622141 553665662 953359372 359996602 358877416 783067170 835850311 869493854 285844706 353315372 760760054 485909796 647520251 524831360 89896582 969503578 913147118 424438878 462541841 204964105 357578945 352470733 250960157 36477701 138046834 273418276 96124240 349886531 768506666 996333466 546147322 44589988 473349317 718875636 85719937 306647677 794688706 462678704 43016702 335501462 549663350 108628234 923398968 148607848 401139193 567439372 225978840 340953326 954896722 273728901 317920824 879797196 233626710 476326483 365852993 432018337 920638617 954967091 154557102 494712302 242697352 509664893 662004893 673817227 462991046 474261005 274338295 275643408 681731135 971594998 494268115 426575289 53346863 880741153 496157125 682705758 229697035 904870608 755697401 247285252 380024590 634481849 380982042 888744428 495912811 959634993 704651257 73207448 820820678 438809257 667035798 708212527 362623978 678646808 443305633 883047768 843510332 787014704 944574953 908509027 681819427 887258720 554712486 245235233 197518080 459476916 956781719 251461081 501019436 195880648 224476281 276347736 307478238 238271206 297690865 74226369 324654722 970945611 884618750 833828022 850953802 289771878 159192592 76624102 972664681 602561729 545741686 545730056 184374863 682053341 927774459 930436426 594525295 596067432 639214132 816325489 404793828 47699483 943147818 343646026 513893038 204593712 594432045 13821578 12101792 743252015 463825050 295957105 908386030 265731606 331445434 591824614 381826700 237205958 566567012 31002795 89109448 244689540 311060003 268196596 360073229 699830025 486820505 213852659 578576087 595227950 472294323 605006719 113115600 155402605 676892236 465783050 510892368 912145637 150684261 80773474 146828689 387335321 851854422 515771981 179929142 696248047 25184587 174548637 577595216 135541323 534978447 360006193 94375783 879964417 216786024 415366462 746706200 588716918 573404901 531595987 437216181 845877997 448982519 931243297 184166862 724981441 718163287 892911009 773261631 869620282 412829241 686039120 565927664 596034116 933610292 756334183 26021434 622042994 128470388 592316030 270068886 896721859 907909884 107369339 279323856 778059171 987202236 111673593 870365512 804009369 411198163 995754990 852373647 619880376 537159354 624829953 763066102 397468579 851039243 595441011 368012085 684270235 44304521 112749084 711061873 178491350 594227302 568092684 504021169 503629620 28038447 905505369 113577940 440639039 899848210 918950369 319058555 479309088 840639166 785622244 617914349 22286938 58345444 787072659 836170014 916853783 877638850 957437247 309243726 30717296 28252751 306491786 475213636 753058334 821759278 210051209 126243453 818284826 396728437 243654583 573312161 11192789 858585383 560660261 622200506 136765193 220405445 700998537 61462455 50889359 318188813 994665744 626330339 152265722 235611593 880106930 367844539 280529141 47365216 381290580 531590353 396148121 457305490 433932974 743365744 401093333 693772822 929487275 390814260 59149689 238821128 722495582 467238043 470058484 982338881 318852003 541969748 924082186 892447673 499458130 20978629 667406716 30390381 782134685 181329107 354258384 433273657 286170057 793167710 20914126 612538763 47347029 408160375 680738988 442378292 924372004 438985554 489713336 871914126 572218754 24139782 369002585 206953360 471086929 130728091 419998539 169482647 21793224 421036069 70991046 575024128 85907198 131479498 30163551 926461079 642201279 600282647 377571797 384063097 961126357 65624937 402184340 666371557 254337723 875398866 873187725 953294469 891938379 995765910 399933519 1359553 315372506 487389439 588877493 234539239 577537038 646296588 998487552 174230591 85940080 858248593 826660822 896032073 100707567 744835081 992619230 633707797 491764695 755650406 334171008 101795102 550628147 836113599 956593216 66321550 843234737 155241756 367395599 80101684 31888225 25411075 319722834 337594715 875453872 708127711 475557247 436397139 606367473 403374147 577464528 412905432 356580582 612085992 609742161 445454240 533258320 171642837 813150440 322928348 882505491 251264976 936433275 247317365 737929840 942609575 918876483 827323544 418329567 242275673 338903826 27529096 490148759 148040079 553557847 333729201 168202808 731385728 63666729 253824957 327060947 277116903 19105303 125252859 355183681 582231476 709215280 383266238 729091349 509440893 63695336 329649254 919800649 209830680 206432735 544861969 57306740 341610627 757513660 70415996 422559985 591038207 985521663 893443988 819042833 734599170 569344270 826054035 653115681 706631631 819271378 542293492 892467010 642659191 85912182 355958909 513640869 352396401 190491043 910772071 364335276 475823827 21137796 272281084 899144036 427810962 556280495 340187480 568098752 588180308 956904515 118477451 790882153 412927441 234409747 185807218 735608278 938858489 437842082 601613028 170848495 173768450 621690281 70640899 793983202 648767779 775149315 531072654 362704228 913621483 124509422 993993991 836358764 43368295 16974461 940389775 798776095 215551162 352412868 698388851 288473238 594016935 918455643 126539545 161148880 141300525 416698181 662028998 843362685 226701606 495691218 176194500 640194347 35366371 63080591 357834932 319130213 432191302 132714493 561525468 559212772 810237732 372151678 836960034 865562867 606457725 782571958 910860738 159305433 846901005 218858148 492908112 3983793 705851669 632159282 64427002 929603123 123951904 454795351 826626874 253179468 545484937 249750325 839458441 423291256 871075464 744954680 625871290 504335587 883112722 738985417 301928902 909718506 765262829 719601268 168515244 723589953 303201502 926527715 691104902 669890525 722146949 967681482 584399163 186683508 404226277 409015002 842984338 601243575 32971878 648424494 653261760 963925464 35509117 231728430 702739826 608554004 966006258 934807065 644382422 797394377 800030057 269602366 550046385 992918237 352478459 236124575 549035652 257497075 408296905 467307064 501471562 544888143 295954111 515328808 988807925 73051809 534743862 994718720 965276237 822945284 291184129 371360572 982990842 617944585 16140062 831614832 78651264 955967034 275686210 164802872 208476290 462588611 596163105 980823967 7263973 30429623 581757349 766849126 379647638 519215630 759882229 182408611 729431269 748398118 671129326 466771298 667750535 509667167 869222797 92917005 909738796 368042163 662610000 519442994 469434675 84765483 421746054 622827065 248090278 9901914 816807450 326440771 319241898 172982939 116837612 649688640 339244425 454895365 175320856 470271986 543669261 447723682 4701409 661663978 988254454 413620756 383106384 521937254 561595672 3513958 856881779 384718112 468968765 692711968 340497325 771598711 628337343 871200443 568235663 940576134 701427123 675652041 933160532 391424556 334232946 564932641 131397938 954241187 2006915 531062173 212836739 552169735 670681630 15949128 513655251 169815284 415043056 563632316 895150379 774739980 531824788 464176569 184176931 735106989 142142860 784197265 16097834 400658324 679635033 189478617 405960783 902005808 314102017 299286523 857346819 746348443 185323069 944394549 494491859 519919174 698025478 744495403 408921035 263845776 355255354 294877231 904482205 282649920 251850097 137557236 338819126 319822354 774371729 442122638 459342595 617143734 639239610 573703498 817098425 746667561 156333355 198369372 480270855 452063660 728099151 749225431 917153877 523115328 214478337 805420167 937777170 659845621 459782888 789709045 821667350 237642106 717149491 216865306 263868158 763006040 138521339 300572193 371329343 794215849 862165966 80393079 701402861 935717237 992586418 785791215 74462961 513774288 781109681 902663444 328787446 352072175 502735573 608632904 94100402 243578302 735974662 988904488 992502097 616113099 547048 59944109 517379557 410348696 692761734 340499888 144380302 937696056 671085525 622213441 427093687 15310013 792965314 968032084 109178961 221112884 917410004 37422469 276879119 727585823 801200253 598699940 807053297 968791320 27256705 299759570 882905905 279021193 959254605 257858599 660025230 192056800 41583191 759034667 271602322 652625324 176305654 754393843 347032854 433983044 529720387 863839863 652361435 448057824 927899685 208585867 265422255 196724002 838495341 292696842 136175936 796906023 746081382 337703145 214732883 150134195 470597711 820887119 858629256 639851816 405806566 896771057 905778524 199937349 424016329 699891437 963338422 585992346 286581847 451257899 735517265 743109734 707536979 990673736 664729837 431718846 914852648 671749400 894876321 311106266 764510719 930575940 751362069 156529538 650559125 312715228 420397688 547688989 801828031 897991514 837880742 174587070 543677700 675802052 853370817 371634319 99270729 886749157 898954471 274106141 859612577 393406770 162390287 856098648 599497909 165920318 529646025 159800132 313947835 885860344 512907045 969951260 352667308 491083212 47319440 855730912 382848059 798618702 315030186 285350978 728034065 524519581 528360619 714960856 247925341 400450721 242977918 214052185 561852600 18137487 55317593 325655794 602818465 765048894 397123038 222434122 244963127 145428622 563520081 947188051 508692496 707459807 180382161 494862265 614844480 235821927 142057434 895630124 106129159 191937748 637346245 953083798 77505573 126889490 972334961 298103386 694689048 176348449 683326018 932906719 865912121 942509825 266465739 708432448 203458129 504289215 647570035 603807954 129823771 844581370 380589561 431544631 699846876 667360167 236011576 955220608 643965125 907662163 619220473 928908262 318728559 501671395 645346537 550096331 775696700 13053288 32907414 624831877 840507548 185432125 382404093 868787891 71302689 230123636 881164350 484180261 899122511 762885656 539460992 64773300 623695172 306470337 715260602 360650292 169243401 348964012 789414278 981333566 792598096 474270853 295510848 385833168 829475201 312941505 709908346 927741337 614460883 284404124 203069389 896607310 429981628 510825339 48035989 122833488 836622023 246489363 107369221 505264692 406567009 4020443 420889268 575752409 938993834 329456139 659975667 208379378 610535721 163973814 633197959 952262412 569842477 928614406 844287621 160645470 729014145 924790568 771885036 274585675 495194912 268334602 817878976 653583375 245788658 562566686 110428252 767176054 532570165 516483488 50796756 197781448 593167769 18629374 408458074 289039099 524893667 132382418 875833570 260792917 279395160 911327835 270418463 533054709 876862353 797534319 761274993 805230939 136668575 602866459 465450749 823384206 114219113 60676175 801149823 597929714 366459932 868762915 513267380 129618777 408798050 171068579 974277922 348140173 97541351 417171102 548499117 828730527 700872199 866683099 643470270 156379098 761468305 983971157 162890046 582982441 36810080 485871703 336945043 595010730 550316981 770841587 76081250 537944736 998123591 665648548 503599705 278971914 696915383 766459133 570332816 394255363 503826520 249518662 320369930 453669501 32041690 462556204 261606443 174826893 391190278 584138708 857655837 196626645 100589833 722670808 261637026 987862706 836512231 992268522 153127735 563164932 646585244 446949522 787896046 221147822 705034925 912286680 877518592 973473625 899609988 324234299 106284351 964766278 851855098 558121431 44401525 840199532 945080092 502491309 868540441 470736851 611585099 122474343 374446263 290890513 917684119 190574484 437677546 437040830 686604013 689828801 548429864 714764964 931577341 508583019 534032978 286882299 945258080 805431576 862961174 910230557 218205850 779898889 358826018 198694195 477012487 797776273 474022644 987674253 262120332 96091320 919479375 534266941 951717620 928294972 644827129 220735534 210770804 883809549 615575096 819797091 580187129 805021076 555830238 928362032 136476151 297660947 928808610 489074320 545111778 545582111 771805556 221310726 328970340 950519051 246991677 260745707 114374241 820993207 706901916 787457160 713687953 154606346 176405919 333709170 743042765 909686198 243935481 639887146 48156967 125302464 270035352 602898034 48394594 909709243 239719560 907130272 75444520 885561310 50968984 232539338 261490712 326314142 775404089 27928181 319302773 846577679 122853709 196666326 572019866 891422149 772353182 649915687 696214879 520833623 162083215 511918549 171150149 468248334 511235064 92947824 366224031 987129915 271964881 599238623 244058068 14713174 216409935 383840679 602073010 132459138 304601210 720310008 374630633 678520851 118824228 794205798 691597100 949106145 53389812 669899209 817688984 778929375 604683282 992628426 442576037 603518137 404627383 97751372 115764382 794313897 921478432 4826766 239075008 76122968 285295649 370123865 372466282 205417166 987589213 991391783 221667606 360396577 704019143 399701505 676160710 415690981 723585763 807388951 5436590 701422811 656563496 7242622 645203547 355099140 970372590 777965605 159213224 37952889 387243015 821244054 4899207 170634549 683472385 578825192 615088481 136983837 810751946 781406621 796388685 794216185 850640506 288232759 673317014 823866324 309242393 959270072 775135208 817806202 662339881 914783873 462336028 405663520 758526284 121556538 906785877 47966728 276858296 685842210 642184591 508479738 807097967 24319256 617457840 797222179 926059372 841375451 526743234 983707483 223986546 560738610 691998750 626161508 178547089 22596859 704650883 2003321 444357419 793941340 797843420 539080383 997027086 611092826 108825260 922123631 242112343 438048449 702337462 773653359 224666414 860697662 255336528 942046811 154523807 759513388 423119772 447280284 708892551 291394600 517196788 351017195 96741902 457278642 268399181 832351087 615091901 994259448 31964592 280957211 850102651 700909861 319216600 406910486 472455453 511284438 564883722 956419132 355024100 672944104 765296689 76945886 328570186 813783706 631322613 423538176 757226361 308918794 298560637 103372603 759493134 757985194 141794207 612648934 478889169 148032352 494419757 327068110 2237752 65900143 121707591 853589214 844008957 525619318 657177612 264333105 941280755 486138196 611814186 825532065 630852744 464880677 151661729 112956461 524163350 46767223 335077544 19729805 186144740 307077795 224092478 639885218 630470358 895143439 310764207 918694888 963391204 908696586 623015275 132619652 150222265 123597880 373420131 821890854 453759182 892797476 832783930 698375609 567969512 312876333 406447800 47901640 276438680 112028806 783809368 465775965 281375143 873014314 217601407 312465240 893024669 445385866 935389459 730212343 271736980 139637803 756872074 838121254 416001916 170620465 785918918 203361502 814390322 824778712 694691478 723166400 297350237 27471443 745490483 713521546 764972093 339551477 210790147 887774229 528786766 287571582 13376396 823960536 911472312 635220166 463317444 871291185 194578291 351659250 472205493 300104871 521917812 830104380 948820069 102191929 592834645 945249299 675493159 549213394 879465479 377414167 219136013 881386926 680759394 932889194 238789283 604721938 740497378 649375908 664543524 679064413 643628309 483642206 795739171 217065142 973330614 280932739 598018020 65462979 406182131 763241198 691457350 210395899 391048243 564005472 34909769 791977364 622479072 531482507 647807539 558577122 667509270 180945164 704037048 694547206 697986744 957265605 184727086 538952670 709046569 68591970 838555242 746235873 65626040 736377159 208022528 454945323 379699016 564131059 435387197 958889791 429368381 286328240 623722264 738162276 39276098 103271646 728715879 691783374 644183194 751677264 889793931 923223230 297331846 540361 223894446 553186717 178476580 46468150 756234119 878420629 238285953 806761321 126838227 897865529 928539143 929249214 732511335 440119626 16694047 126527413 938883556 158366323 278605609 511448513 396681857 663065370 637847125 623700681 560311726 430932480 430208311 16349014 151164724 101853690 162955075 977571487 972830021 702710674 861432985 252737256 302070573 180253047 568835155 662241176 272852154 484958438 222492592 849465887 317218336 41624439 60483631 123980153 526665492 633981959 752798792 162314432 238278166 155766574 339295727 953787089 842752627 557062399 643151739 315906815 447459305 411333759 332003158 784578823 733755053 56287762 808983204 426373913 340960607 675722709 447330452 830583083 230769816 60539251 622865896 774206806 734885252 940741671 109362576 931344064 355177560 918330639 884694023 535796360 962294816 663583453 404342317 319471503 821920486 455927699 511433202 976541132 283759743 377544667 701807541 112138301 828915338 964888142 342275149 152474562 740836542 892123174 49932887 536715524 257786048 206435790 889813384 382470054 471539891 922957983 76689887 830503679 533649533 125883387 776498280 610709552 487736987 655070793 624061582 25658833 182394425 931600080 782484211 714470179 330638379 211386672 145048784 995424310 736815080 51946926 254082641 534220456 51805348 883360889 558239898 817361797 622798684 240247493 95340929 133367471 755212247 540731186 828117376 858577847 169370563 139200764 208788868 871695654 467474877 74299048 639186605 660360070 509684229 382904418 878226758 53701317 16308757 282190211 245251266 3023478 10894628 203685193 196520158 317074736 894480160 903164421 520121344 407331520 385354311 694696666 151427078 261123566 911718510 543787730 455453485 710426509 441161561 622311000 942752863 324969091 201292304 30336140 87940474 111175810 114639662 858771802 645894564 669696817 846687967 718205939 149241776 505688354 57568228 955810227 889239704 668024236 268838148 273247234 636738565 914033315 56150304 916275257 371867279 944668632 791076226 278650774 595337277 718632915 834047607 351854518 114665140 511272113 785533652 726727915 765876015 418396422 964216129 351358152 841987144 774719510 401020488 709826293 250331173 615143525 891265850 522487299 672270819 721819932 780762288 527257543 96800559 217449500 265946360 213269000 904341468 934896925 849013523 899198968 247567369 907872075 547825104 710276417 970918959 483104646 466889814 418665565 208785397 223785535 457799454 499603653 89548276 901085579 74476835 957906843 418506202 37764941 99343790 693401248 682443352 20798762 591567568 880492712 244038055 259007252 490963515 549125276 767848506 866147928 180474006 431255426 522317787 153607417 768656391 997330517 509779241 363323468 637130679 490466834 618144738 268350160 992403753 993322073 548146986 567892287 390159957 30372311 746105299 591361488 546706635 816645423 882530180 360750294 457815436 46329460 124383670 99375124 280003619 668555382 527349108 137792181 957768245 152404817 673086192 661754935 155159019 625406081 941142999 316512073 732632298 677853979 830058690 92971163 485080178 383319141 460295191 742100780 881334585 981824813 406555463 882089281 523852233 172959553 678730931 757310758 647256055 544579866 695941171 668690111 149563147 488784676 102223056 695673885 270931227 381520918 232972315 988127139 695453653 978872989 139375086 383319935 302157102 587035673 390004969 157537753 200585092 290217107 555777255 446874804 54316924 841127418 676860329 467473164 921650364 593312160 814721034 998625790 901974070 741842993 362982621 883749491 322544029 814317749 394610819 70331699 255509614 552502952 759338640 802603561 642863314 236042882 420528102 68098660 249514482 279083149 955930944 951179252 469301755 637444570 971509123 82228197 164267276 735528023 618796821 434374769 326941344 902044900 442856823 454816648 241981513 818431733 943678856 856600995 326185179 345599625 18095691 602982437 355579458 326562757 842851531 40497547 375868275 1908962 352934770 456645606 194133728 62519503 681400037 693790406 856932995 422641293 679906338 785258166 763923742 380198722 363624912 429876446 690846201 715514343 282022804 197541576 262743456 994033051 297347584 989033015 702621939 517062322 653387075 30775873 770742687 364500676 929348721 255029973 849092314 104497712 751279258 234033262 133135184 235632692 365707211 991324055 178013140 477014482 660455595 48682747 944665670 34144290 871756411 857820333 514166591 963035252 478877603 385753587 944903923 19025828 15610667 179338605 640455321 965642901 678436015 251645656 756264214 464480101 476411755 198725118 662254224 78733155 592929926 678509022 563883696 127641115 744378504 87151885 764953785 116223255 583419926 102847864 829147632 95084515 964374655 266758798 258608338 144517227 346205533 369905032 532418237 470387354 454661342 750130590 317477587 362099596 50715259 45605027 735475011 742968657 124290203 606646934 119938775 613963446 893976238 854094466 910773542 398293245 972018443 651754244 877899579 234677904 895698936 771064703 260785850 678618436 754553743 560975662 905703294 709513818 712219420 202904617 700650171 315697687 466199184 651544488 45523121 679561369 438257916 329419710 713208754 94151514 982418836 958783980 721398263 755873235 715034344 322508345 446214673 364031459 16278029 289095384 922792801 35720078 221327538 829628291 4962816 122198805 853605832 406839901 558717548 211150703 927489629 780598098 189522472 76991790 481070903 371197299 745175147 235604407 152708235 852585105 177051619 424838615 166198221 189544400 537782253 367016358 511383083 753998040 684370185 905961780 815981346 264691476 54485500 236376957 553058295 733216440 705828695 997694586 663650696 889648965 423307601 905955466 696765934 49339647 147976893 86322355 86300700 445343850 819721232 100494982 971753434 854832590 502416486 229132658 741214434 589644810 600449274 402638573 2122683 187547636 685144526 990045798 425731083 609014463 782607993 513266033 618935436 638150821 273273139 572495863 693351143 931355683 739709896 813823362 581167640 893853634 55492045 41009222 165266097 208002786 900246226 731518875 733953856 746400644 304562727 808508745 245832644 726145146 889551066 870800141 823267332 632064382 61504587 650889930 168017859 642815788 588452048 203683980 512164461 350298662 894672368 163184170 759799714 842804988 1528593 583718299 550943240 822068434 61055141 858099256 265788730 979647761 278794189 527619485 399787390 280481191 440228662 423017762 201652294 689671257 57032118 670034698 53364234 487886101 218287172 781363973 512977948 19131272 401553544 211863190 684520887 921694255 943760548 714275943 192203342 539414558 84319800 685018148 416401960 753785129 215017709 481970415 323616681 749499122 803979944 938373103 146992083 820895188 995157584 180565146 170329 582453571 737967209 175051257 362837304 144380493 941134359 509843394 834996419 726839973 699302110 322851571 41455250 508379750 881604596 81621126 329303733 711965973 634826992 298293837 209579083 296580209 510203623 724457742 236257458 987223192 739658823 225153046 225715062 115552030 210995402 109550404 663697607 373336389 949387159 869881702 610183180 562671989 512807910 823713691 954303513 754263199 913374556 951936921 607248796 845249277 969028568 289728836 416941820 948624887 483993734 849868235 874820026 655338464 133735321 502591536 474858060 904326962 361324626 1716729 495388361 901612777 110042934 811282445 357308470 88026274 860820897 13727991 349882272 968414665 247345615 142138857 160846596 75235279 741274294 612675449 471845665 9993009 425858245 576280824 433254534 628085866 707402751 711177474 653403832 61557846 184477867 81471835 196938644 772218349 553806528 192582949 454087373 983865464 861088293 613104558 281672193 519544173 184219167 639739526 433584483 681151526 877269733 669970766 364222633 752907418 654935201 611912706 543875820 504352171 876083288 479329176 542252142 368421792 745201655 138945050 190497185 497317733 711146056 435142454 846254656 110675746 867382317 310026603 217982544 762466175 938377324 724741454 783174956 540674362 383541417 249074273 253054532 510827882 483219310 603431797 594591777 594537901 570047766 731616766 839946801 496064319 481493571 702396533 229474452 348929960 250655445 215990912 495044666 347661306 392891301 87227316 569962072 492513626 551966335 917656404 429836492 655319154 169302858 835077703 775419517 233187060 273364725 196816784 583644894 74457336 158328210 324155031 302160644 3930710 623803835 534619435 640469804 90468499 809498233 584585568 901179403 876048908 921808116 852819267 888569473 842205056 363563852 762343110 71613108 220379872 22340418 738428761 600919870 51757015 247102229 643710127 276443212 402092066 672905321 320842856 140438300 97007260 103889751 242860239 610642215 337416436 179903288 475157659 772314189 834323645 394885747 222017402 149120921 73632716 140147562 989951896 928372856 87024071 453409557 922669311 162870969 266338573 393648497 54344806 451373864 717861993 622075466 386886778 809382306 463675766 635294389 407989827 213008880 775319111 236733329 558212870 765916517 623123265 600525026 943477366 935968082 567015570 177719838 53386857 248584520 983353461 659904926 180692747 387363846 215146744 239523061 936895410 151505748 282988230 78453816 369197118 143992936 912675652 713396959 838629868 52953042 224546135 718753572 307774371 313317148 325318135 900856339 18949471 468507192 516381166 381669730 464638406 340258930 557452939 21784978 997900480 968322903 423797332 269490209 145480771 670636867 48458047 184287188 226823986 139042398 115308429 947275326 910351341 391733598 188848980 700762921 410042172 207542322 375606725 738156415 111886134 814289603 74675083 958958162 643874710 977651383 925825249 768275355 114719234 890532534 13902018 313600791 124097772 852120337 466092384 902311504 814868118 72909101 267823968 833616601 160574960 978971633 220764329 210372816 397784482 264019338 886133790 727070891 716060033 72864278 522294 846240662 2332404 240657491 206986544 238662619 31587738 541646968 149820304 921078688 212914635 842210452 813748519 824492993 978460246 26613190 77913624 33409364 388914093 628704055 438328930 629926667 690008445 981898189 226730418 488238972 939496539 551898028 111830766 435984185 26427046 395276266 137565236 867159398 204298666 797610274 803115437 815979005 304751481 603505521 356934665 639662928 802257468 14052609 215494434 597479510 997523552 91064395 646153902 250498035 853303953 145772975 510647534 319509942 255826738 441525999 927613649 358302910 2104709 54033741 617158653 617379537 644006610 499826701 633056226 22253053 279799900 638842696 499362164 664783678 585326100 614543731 32914353 280243102 343148500 934157689 528336343 764414341 351361182 771668533 25998024 456320574 217751980 944112448 136977102 136477529 869154834 257996810 132532489 532596438 570053731 386776614 798550371 565969578 401160629 39645278 275676383 674210983 686821571 73837408 947820988 924307711 568795437 829190725 393291423 73340464 504431767 444927606 338483004 149923298 693392650 270090799 93908636 545466764 162755439 664121462 248860131 548019669 64563966 214558797 930486111 517136812 264984955 316543855 498393780 138108275 429114115 264941538 275340196 724791755 648335515 58538801 43152135 401871511 978479675 432354559 870076214 903366466 12813337 852455376 484888839 854927001 393084798 200601278 791168497 130502558 732256750 619045934 768443427 591030934 927163495 8200985 589170106 671641423 115420927 251760597 232222913 568186731 401675669 467659843 656092517 258865618 321858461 451615785 60272312 422530796 375123570 742331984 293734215 936034174 632704243 179336838 539252554 610405060 371449051 106526052 111589699 63729705 211610282 711343339 40537124 528306341 511937189 954282637 404595768 622273993 229527640 490449227 247201871 379383414 723505606 638283256 440216993 869724644 401700804 744005655 218607325 968555712 922705378 242527727 619626859 352967101 111766423 764461824 890761843 448772515 666662760 811428209 985487480 961438488 466079410 553164434 581586258 572291753 434475892 29687249 627780652 565560153 697002234 719465705 70020091 634149151 563871717 242489246 533397882 263914006 654517122 152007354 603101947 670195502 341922347 271182220 211813745 720300311 17294143 931061035 282022001 397968544 886498260 162733574 737323636 922093252 406482784 95954538 423463643 404239127 383416018 650627581 861578918 226661794 891931016 846779693 408605402 889632951 22879015 740995556 977633217 227314705 537788278 32554218 901403224 734436867 869720909 295305386 342314650 493735572 268108338 94332642 116946393 146367936 358936403 268887272 127608366 230713746 18712071 593870052 375163101 675700265 860358012 535053092 116747818 291095354 137514848 106560244 113380392 155385823 456632250 837731772 950922059 834241955 259667856 645823626 836706417 161411681 175822790 350308334 918782889 671118674 438094497 199807198 430500324 995407389 656569319 702103858 586076920 844320940 280265919 211618964 341603806 521193925 911540456 207936494 354481102 915219442 58333741 667605854 998159582 767998633 955209674 750316747 928695938 670508520 317951531 403915192 440894811 844366763 358660794 503837729 428718257 139495923 14447633 469144737 987690238 435753345 50280243 482919446 391687190 271839487 388675574 597982259 51386952 520999450 899187261 827206171 962085916 380611969 188919894 254560198 184625147 674170461 375494540 373857833 772462367 777574752 433513066 778473894 187041991 670786704 685202767 438404525 279111455 674308364 661970925 962627609 146001954 230789758 168234437 883253214 860769604 609233474 30996819 435037196 551114129 346860881 712474494 332012766 813589596 508375189 147003641 4525236 804964111 956112631 865005286 500122334 813524990 558952455 260588054 441308307 85248822 814182592 935279082 541706807 518176356 906635218 630587647 622088048 148219479 725369379 891029774 844856758 505574551 168738847 507394739 193002175 142905506 50053329 984553118 567552282 134431577 743053335 246754802 273673190 527907190 614155168 398547071 171114710 41676539 696164393 722786605 214781501 567539156 275970425 439031367 608326697 971197340 164481261 227496396 975313700 167450242 196450598 147941578 708023445 883718911 669303476 140440605 762824629 843578769 976976333 178624891 505783143 215820932 588130589 335627731 776925177 124958568 793859978 182473887 342212006 445635490 172869112 419444030 883559995 316206953 749283671 896413702 161536415 878410367 617669430 104691751 758550329 925888977 698609558 224237372 307602454 433917687 697760392 789982461 233990620 109187427 438924853 172726987 87160039 817642288 378042233 646231275 475522637 673084405 392893727 703146374 701848817 579050993 836992400 402542354 708405689 570559080 230296829 357253131 923419545 429896895 204814625 774715606 947790816 642200933 377830119 315699401 137907144 536381440 694408281 724964150 88503173 19465303 978547081 404848363 469445701 693544415 361561786 812895922 378266565 189632119 863041942 666613162 657515282 960304618 497056864 332726746 348995871 271056653 328840079 288898073 972596608 625436295 994138809 318857493 310444326 610583471 25755032 924861712 785237805 128278735 143167071 173278795 284634468 900594736 74250540 98094359 884674974 545776101 584347223 623429117 395101881 762392729 686278405 264049852 23306963 112332064 12522457 846743989 48342451 431981906 449596509 240399619 458961369 645459415 965588605 741420596 440384130 331600210 3336218 175480373 698922495 558317994 484513304 507993714 419501689 653535784 833252938 771698397 838131962 172624744 128725811 220756048 60158672 683809981 463726577 815240922 627357598 993914960 652190310 516872576 654772157 303093938 188577845 185378206 587064494 672000127 909474289 615069131 432986501 884459090 443945474 164642112 142958073 476393594 255993928 658565303 186064032 222750088 680221050 220092160 726337225 409440963 858616419 74033604 73951178 291490026 215140749 683789919 866356914 566537724 495060344 392750622 729471988 61257983 857824148 620550669 668460618 677342780 329169022 203929529 34968337 420595933 164716630 244338643 989543277 344593832 175770284 954239691 410141333 961082627 271113286 196368659 349852892 590339021 198041532 150789570 663209090 498826611 979974453 741374421 506888965 897771942 834873290 651867954 233229150 663454407 400234010 250000713 25314387 585681763 903669501 906428655 680292608 955830758 196371646 627358414 938875674 458432489 465799159 806246036 858844524 365134458 172334023 365583410 198537866 161864018 668098169 710054640 702651185 525429150 19747910 629327170 351477997 821937505 324564395 283312545 274149402 577730705 216425361 132850615 741920335 819585690 127243816 186673229 123641854 929476809 784115487 292548731 398917203 707376428 906923329 245742328 566385495 527734834 101305669 92785165 678168880 197823796 368226806 609429038 578876379 285707422 793535187 463183320 493470286 813899406 927369686 916611312 58196289 417754517 366346560 779052844 334058683 253356196 336570535 789502693 862363502 276237337 545922175 475936762 259639383 790542680 350591101 337122823 348207933 787379338 47263519 324341581 276521361 692933693 924945000 378159875 57827712 296689644 305066848 336402631 940858015 39231244 986306647 425927737 779136333 41059543 241491430 132104073 912359970 322852901 112753572 205433011 169353106 185323284 222702043 501533631 572306188 505183673 486489366 199497079 564867418 839401902 717803005 388652006 785299338 194430821 881770267 935578072 488780650 213437796 408160914 65306584 127457629 173906277 850477822 402702087 540882369 689126704 353547658 61373316 404817458 699769533 319168661 849203466 317243433 331266897 57809300 453798213 683332506 813656995 961381276 846550451 822430338 250545676 336160472 671254684 131453721 723250906 181153055 879151524 228073629 395657218 606451527 454358336 7992078 57296470 430073730 386555394 695699046 344249049 654297273 305646178 843262498 63735727 7877252 178565549 250954166 179134133 449883834 471669525 325446392 798932037 305711930 316155191 291167942 760956300 763146822 328408904 79788463 72821974 787678877 999901185 588309469 853156231 374333835 136249302 596972992 475689687 11827171 841196082 24830455 321158277 230000438 161914999 423229576 338702440 129736553 164854804 432452828 394344987 39309917 2727581 879178958 944974176 885559000 909103080 458637726 350789542 295746680 93681546 868170142 247193713 580512651 762703670 467821642 564925860 507322999 97407757 663674368 740818819 958167319 415277578 985164014 358972349 431510805 511289532 272447566 330223247 123095166 288560107 590672635 139149990 459680578 279557238 251967240 63684208 485392262 394180672 424736577 775868014 925739040 177697007 446412814 134154479 260731697 828585229 807307045 129683383 283038620 465206367 668832563 558259280 296859236 217106583 651733595 648609043 780218877 521891618 720005730 247960887 416755638 770512203 280721899 488121784 692288684 742775888 514326165 700298016 126682059 3287119 539933950 873869138 835477073 811165833 671235555 61663470 43408093 733215521 241031691 423540418 458763355 633276372 673878926 592199534 566067823 513817632 121954202 367990416 877443184 978297756 5345329 240159711 478235089 218544044 700637174 224551722 760596664 872915226 638446976 146352071 425905497 197499123 665171515 931530102 447200305 533782377 259228593 638628748 226686758 751421583 680953076 345595654 816940143 929535858 634028830 657749589 957021302 853345241 662506521 60697694 49873453 430278237 69742478 614306273 341911286 275051053 930227392 71385982 754286830 264849142 493752140 586146572 423176005 485169105 894539344 631245636 477343938 86987640 570344361 57930938 599191120 864807079 694879019 425700385 826171415 438623945 298451278 385434857 416779295 141915379 748298131 466881139 921792903 769910436 173110705 919108734 537355545 46703249 751642787 24376704 214913982 416949051 875706780 761731224 901019848 861757617 544764303 789760561 959941192 154138105 955461786 731051546 525985879 542110385 638603484 190992886 139801132 1469384 795764175 709651612 755935027 99108173 210008753 30418976 945754187 301630755 528352691 18863103 915727649 372357586 844286995 746694390 906578186 617699414 150361021 567346560 773221059 731680731 218979086 411436869 587315503 37940889 109321128 428030548 928603421 441742548 896540618 416225576 310513068 37879006 41374752 42843076 678981836 336631733 230398209 221780343 204543270 39022203 574779947 526648217 934871982 427998493 10058520 982645321 205089315 394363209 351521220 408201535 586361854 191198863 619026352 620310176 197419821 697524182 29532989 336819394 862015727 387059418 748052472 159471255 364795922 492414430 28565580 470109544 766074254 560814695 672074813 400309224 32663252 193773969 443826526 342953331 443215039 851434603 900211466 644775137 305651159 821714082 736787021 951942397 464524632 497635646 663337628 598719410 843088 45245997 82387488 672765267 660637188 67911087 640067154 145833648 8202420 291957929 703297545 515636854 271739781 23940750 245515053 856362238 493104946 859654756 728791889 631429797 468421177 99087409 965088479 44944630 358749072 335930740 540012634 771682347 536544461 994105605 538190847 846119330 893073870 236488874 766330678 161743605 737647535 263301053 315737754 157802712 341956045 770353965 793800403 648930998 610127665 690413320 37942444 659371412 444885272 281006072 846845564 686384361 399133330 197811644 909596438 388554504 534812000 318384278 481137459 564783983 506462130 330758497 502568854 425448807 153987693 954879601 303907854 519690671 221508440 940414035 853184956 924140153 450840871 36174840 353456258 742185618 846268066 446415515 511575113 485032874 794427756 53336967 110990698 69575619 168008733 613034606 16618161 329730997 453472431 212807126 303636865 185895100 559240367 918747507 325714555 192668909 892013370 822701755 750144985 908164359 418451461 792974224 31754386 821836602 455792187 426869820 337416950 493347527 921498834 560517971 205932563 712607023 243817740 173307892 983357719 310076042 386081808 390196186 726263171 674254808 393267636 766368274 702798668 396451901 431286748 57562260 561692877 666113072 447896971 719898676 502963488 812066109 633360836 470908939 23209339 852285546 745568040 460846198 343670009 575956388 681057147 356992351 913467775 330449272 847002203 236778787 794457590 358367577 476675172 742903549 761893792 310230 123996141 880703374 355381334 4785298 381060317 968945748 643414538 593252826 620969845 273054148 696874112 909813237 417039977 775882450 957078994 879163132 641003934 288118704 155143304 910884198 454549538 84425353 462620965 9875654 11350107 907423416 626949934 492912117 813945873 519267889 957374137 329845338 264816224 631378525 615404653 88621507 57662445 37139767 945416323 55285058 278535115 359980300 692177720 279806441 769072324 67696099 776429097 986142478 492662443 376598081 964788499 518625846 648392624 622024420 424268599 724252750 92274617 279250535 747359800 587660819 982473313 133217832 151433805 617640428 718698780 286581992 874497046 263579680 13872295 193434328 385588723 929345492 263858456 580422407 977170518 79598486 18007682 473175150 695436976 572078242 75203309 286859171 103855911 43325633 517905418 182436810 311117182 536294096 666976719 907171859 907582528 2319549 726889262 443076522 636846667 528009716 420376102 928709624 985208924 915642671 231251513 514949250 564354011 551784806 877248941 72510831 880100292 392836073 842419969 396456921 629182591 396681343 402087838 117771899 528645695 69151651 236108402 815826785 973390986 527360165 573847551 345714925 345732988 695330968 916384804 321700988 656648513 308311718 549633437 748320966 553528513 222947026 278761499 433491976 880745523 312938899 295923725 953007095 808531114 951225224 158829343 453583517 210266599 778403182 16715543 879970972 815720959 650820685 85331383 162063440 67355807 881268297 664717662 181696236 842402552 250907909 385558605 672036958 367725354 459299708 515966264 403305830 846484800 110448856 257564456 245436477 845820900 238054901 672341385 8787281 191479176 57267704 836792960 144055936 294646928 201579681 691869807 471375424 594730756 365226344 832902407 175500799 591798869 593125351 404300928 485777693 455776328 620260205 960561376 37204730 777143580 976357212 22492663 776872542 716725831 886622510 454151474 7186693 755551324 25346382 311323117 375488241 470201758 59168067 797566657 387178628 728504732 374513823 195064494 536279483 394760519 122929334 249824954 20553749 457960661 177132450 691114952 458980829 331450215 863564805 385638082 224955606 112641345 501814214 786360621 244583041 736781269 807761577 590678344 657554668 51311275 671636961 261930793 403635158 792342396 134890364 629270419 931744235 395608431 261420049 113416537 171015073 709895280 737945149 724460521 896551938 48996476 55969102 348923180 794835378 135074194 865085342 553188637 400761847 525479377 577769300 147633000 504955420 78463359 477875467 66655278 695417382 46110122 66812651 317918201 588066706 21272797 586597930 662974798 899779471 862470813 686429882 26120986 91049188 39197186 524349532 972536739 94132200 319481555 512219964 223361165 257698847 964571753 250947214 932948799 692891905 472844372 991003596 991023825 115626 916555491 943869081 216976557 555162623 36450290 220559549 426864486 358894358 597821594 430320373 309680955 100888496 46626415 465302510 531960303 671563784 626439943 180436318 744405158 195936051 215211418 288914121 749433969 515972660 899579316 759447731 643036368 179743627 479130769 569908957 39769770 363455212 275966545 364903648 809663369 41173727 724377815 255916834 909018959 863494578 611073538 19406059 469916603 187775857 473827981 59842516 877593574 203079636 590543874 818827796 404784761 833020079 385674962 676054484 882631159 733294455 372199670 329298296 998276950 222159720 93175209 658175883 637362747 103860574 20571447 576266986 507719864 583358769 41610446 153634432 714734793 88303912 363569168 495350466 776472220 908806414 610435140 999706385 424415423 888206089 792302890 83491451 132508023 79695554 353382306 911494988 853796833 813629108 910404703 764482536 302356698 430643908 554900486 730827124 160836601 551113990 192074320 608054024 867321713 967055723 230579894 447813374 44917011 619348549 687707827 793685996 374837792 940859150 407415194 827241514 619848156 72813016 23773760 390378262 942383127 679164277 51741489 276046962 290869336 713973405 466371608 816170561 785428206 596331379 405361045 37677747 929714425 715383053 136272685 77061913 66823630 367525897 473693697 929590747 52992054 136318367 431677946 579284573 548942494 388002073 561997596 709699688 323788215 540288581 540599379 25917948 810922108 102771746 306322292 911097388 634463793 243612911 574758536 202912510 870442526 83141518 158436085 111826939 228685862 661778964 277498711 779704504 345839270 937951860 344321946 805663548 999796301 185642599 494261069 68365485 397500230 242558460 774735705 792135048 214171634 946169027 679791868 276718548 172551469 261618005 192506688 250417494 293360978 567093664 621526299 923967850 971907153 789556461 210904682 598228633 851991783 776181321 786979216 280557243 193668594 946775869 759098326 80019472 664796687 185595112 845810466 291746063 468530712 551665059 78831372 779980617 402866807 244370941 897758288 752754503 999949243 19569909 131993334 617020860 240662934 972863666 855918016 252951332 555551901 687925963 79878693 163876894 52643709 182463218 690924046 233752479 635384288 59217328 917193689 99591146 707002519 47429925 75310327 430991762 320318301 103549627 625285392 504744512 713220201 620056292 611406723 897379532 806632207 752115923 47435135 156711190 511560779 519508301 631028039 174065720 235200996 129334765 376963126 669462802 475789800 332320285 171463080 422681511 721388113 305721410 679565328 568973133 739991616 270513712 505228709 495423821 527269697 849857793 187636721 171088536 674384547 667336950 191845041 722693623 750229960 147145889 848334325 658017267 479614867 496485439 835371264 684800527 629859455 872298248 583982929 944497866 14324306 595227671 45786025 622339855 373161446 506408677 503794046 711712845 916503927 842538951 206976956 585134451 275721246 711794735 690537043 145657991 182979293 129599605 488049167 52620363 501144860 742119631 97147322 172125254 551754704 578276039 506179783 773257983 323067657 84635333 723443811 234689660 921902743 629298526 774433922 861237472 221141135 76176368 899825838 496557062 907678366 310771282 881667530 964143480 956241572 290149322 505190395 655321220 167877235 228959437 366263321 32924144 216972811 250014407 60900088 813419063 843830196 368918168 557581812 799080412 61049057 972416505 202092607 941229530 130731390 267613989 678374820 51932130 514914074 575315419 947107466 381557949 502449805 679016182 390042260 369139048 629358369 767560461 301037074 348125943 310415736 294665843 420510501 486472138 856889978 780571420 662123720 259466464 729063281 791396342 699583625 669670432 578550479 536365334 283094988 363838308 821499949 472679532 565457261 474190868 808461941 757240375 364819998 634440599 531272000 150046018 722777867 138196044 129230393 321885454 786103504 971135185 855628279 53684571 619106476 918721301 581284289 29548951 975758981 565678070 403785391 874630140 612147195 220564012 932747864 607243494 104433516 30095940 22450963 605922582 307948952 796974555 76796435 550239624 68058732 184055022 324537931 234082043 96109234 57821944 736394503 479183508 426726370 117514010 223421773 339453650 624523562 395140813 587221231 407670321 6268705 258226060 137921794 515126951 119043296 944315528 563317629 698709111 679023823 514943636 211936930 261680119 304809487 562970066 597854193 634899002 142557393 137030765 941210432 8701445 426287314 929221617 393480838 790726270 620972141 541084372 394739918 166437356 377711046 598707391 708375409 255434305 659875121 341116735 840360146 773860740 269061088 330567433 468139092 980386291 223014403 641679517 285329217 494489941 826248601 734931067 677930166 261823223 372706765 325224693 770427174 703244389 538361230 520636515 607910386 886124348 935396619 425688291 782717493 930672477 251696365 796350827 433934250 605858744 678426818 320632415 76878957 554788123 960859239 582879714 732130004 779102874 148084098 262666428 714207545 363751667 923429302 235630731 115306184 409458689 204260028 525623899 277053329 467350377 669578457 739157162 667019394 916549433 492761744 214489945 462522313 353805180 489232793 117752702 950640392 401786283 405333311 580560793 981510123 696213399 789252465 76005655 636572774 624097244 120968410 472628214 428886766 581733775 47672812 500830402 439613870 76283115 115941802 758486079 207062924 631408675 640408495 907857051 61032489 882040817 385846235 389407914 699663829 453806874 495342525 153059354 118090979 952842690 439109081 727784388 907808935 293216263 234252847 165464095 446971236 742697222 406091058 717489438 290821704 441789195 159859833 537940385 22332089 758713927 723117949 218907249 753679850 109274167 527250914 659508996 266563446 677780910 164389539 32401904 982397144 5529065 605004230 627124443 312972525 881193817 516172887 596487048 215027615 918615387 893853403 805859974 872273871 876408285 934171373 373261352 540501406 772615326 355169757 903333944 268826010 978587314 150815293 529577265 844811921 180806364 467189939 930031139 615669368 115399194 806285925 339040719 67922693 815457098 214961017 511399029 400804966 619638965 760396855 697880415 399366535 862723051 282686244 62001785 358004728 31505814 92291272 506882720 655080324 244473097 743593971 39527781 185022780 597507240 692711539 506694282 664376130 656581427 380604792 825521855 149598213 687220031 621066694 969501781 36464747 496969195 703815948 365039822 230080063 133404012 870064088 392734480 137666953 307676788 661013913 94650076 872213511 861222378 932507551 327066708 982041080 789339279 770797172 44228345 204270512 820769076 476245893 187626651 55424843 447826599 557399274 748151100 147075651 800862502 696113022 621563062 499940068 155271130 320728069 334626191 834495506 512231726 640273464 314629564 23096388 202190250 372055847 7079057 56642531 162549480 134467338 606841746 497779203 682260494 643009455 301938123 168739374 23848338 353434468 772482345 486611517 949167403 774866403 866787167 519494151 984529048 262007144 463907860 401294998 638180860 864793147 5946741 186259076 263635082 190154481 630611040 815764801 412697099 536774725 337154036 233047979 81984397 802059620 934073614 1022622 521762077 398787597 288083828 561372964 647921818 506515086 425524591 505589644 938928642 304450679 646440885 190169219 977315927 946692192 219265468 656325626 452207234 255113444 914756384 354021343 570084234 977638213 398138955 808857453 780020078 303876085 180208801 625225691 468140428 657794404 751839039 279645251 708578037 343547389 671083448 568538445 175627579 192964598 628121617 766636180 390686151 45741176 434643451 153923391 89775089 122885890 33192448 882223438 946366948 99103482 508720079 148079108 9551075 949887452 970946639 217411862 536180611 55296122 763251601 732465308 270140845 35667016 416783392 919946761 253711219 907585520 249645085 458646737 884239915 203991299 731422423 577632652 791474178 822468553 735206475 140836349 367722634 513743735 247369576 587447301 32009501 164553710 765062654 958377354 706232036 932815574 676934659 409138689 248525863 671931202 713374368 409080591 755413118 905647959 676625099 466756452 873580019 840127162 419779411 971010211 581900393 604035507 438563426 997497769 835616499 807320320 76451419 821279930 833417845 692647972 512713930 725102250 915569081 35849288 446265803 998801461 924330656 752493076 719058528 679655979 31830686 226563524 834218372 267279041 888406136 343942871 156831560 561116756 336002526 153271721 823339771 703779111 383884470 478945168 905712502 350410878 582828800 534254848 640466711 403550265 392402171 387320192 664632258 684055115 125652554 877408441 251671996 182080222 255797543 242009683 53077669 476173658 614112464 532707389 294256297 29290776 83970508 56220935 610663981 767676037 106276695 205961462 822961195 922161939 301240862 591796092 218167086 443787808 763374744 189489810 498848427 848709943 100803625 246908210 80193979 572687154 151979180 221579785 314216059 541525389 61476718 638506420 536266093 175124809 546924522 600525371 502215008 123900795 12849126 191267534 67320392 988913534 966679616 493458523 423728120 336481829 494716604 715358363 624718255 752586936 717567616 618044284 271382813 689877288 273177879 764824392 889087779 784145032 267618270 479404498 610916034 689444155 572496289 468728183 232666092 790445803 802514242 650351198 802264261 969824077 596711274 394147045 497529294 602276308 371217221 360626006 425630239 803804220 343057385 697164837 81678546 61305373 995641099 39855812 744139287 533356689 546005134 988319310 643678955 374485572 757183941 790818610 652149581 546864320 176205501 280497027 57164573 567826023 947920243 770364509 722258660 756146404 333922281 844822086 797794952 604685442 435076134 255835709 354730096 639150213 36879718 688246488 48238723 94393332 591091133 367083838 48648143 606031688 386985189 835306570 171136951 446981506 300897276 470795111 673607369 823606003 905787137 54398412 185464385 375551258 492448072 915231485 104022306 624707262 359345438 271586312 165956751 217989496 844217193 69022345 904839252 119132934 42643236 132966712 866352651 886766166 676712072 814360121 981236777 25706932 194628046 429900121 794803553 689226238 703656341 701990659 181616878 332697679 181762704 751442732 526191294 680982176 40009059 61798026 11726633 120270819 603360066 920960201 895065400 945006411 717886569 462630212 542673938 373078536 616704759 175902468 260882954 27022280 319655207 687859951 963873710 284166093 524120618 588391606 778609710 170469192 429638224 108098246 34833105 642582956 872859104 790964254 244981607 65582550 897236056 620538389 167582184 467668839 585616983 117425801 300414779 240035491 886169068 61234408 724817616 46959822 504477527 63812299 537158575 436293882 607522094 310682914 992782310 798749487 392465225 968370213 903257131 345025640 516836822 113152301 668241217 333062982 78568851 889576616 493827383 731901549 230260424 940957508 651322844 821344047 811667927 351759482 775502110 591990781 975903035 542036030 303925786 397999397 466514487 858378848 557968597 451402989 324261786 230873116 628613698 58119099 916726051 833468745 800975019 494118291 718990472 147527767 156685032 794573848 900906020 461839642 361159776 638892547 155953312 760165107 663026484 280810691 888647034 663864702 778034781 854021375 709803869 731233926 187479568 843306671 683944620 12638320 792753885 165973479 449522749 287941131 617668679 28758646 235643025 843551808 23333257 585460339 584283372 448864017 92577869 704679901 99701190 795715654 819009911 420099112 20172756 990720057 512836997 866612536 191122187 24398161 152946346 794352544 981427517 796411456 927515254 61399170 837207160 724053664 272520262 296070620 415703951 798523776 389356809 960782908 728730332 128086146 823781626 157810734 601513600 986373961 500856665 417554436 267443792 156895247 957633012 229527738 730105244 623088218 27506308 426894425 750552693 509674593 481833106 71561336 59946528 124968754 121516355 880739050 285186865 245129703 658614299 406980957 211393591 717049057 367786506 309430229 312905236 89924955 611583906 33948890 919540665 207482343 201108046 289017554 405921899 512709841 595106566 571120424 551921591 45577994 952855314 827096768 671739603 77888480 894485748 780343071 247247524 402420443 410070535 204002825 689893035 519611396 162240940 114094829 870865933 550124666 206403277 736934922 314260398 33892476 213765296 60106802 28176889 507083358 121432609 832279128 397976523 800846326 152431008 964414988 625460900 996946740 70099527 336432077 866248625 720629125 706711016 766458280 534239735 248998595 50558704 860327574 733252557 954798101 365878633 247646013 572290995 939829637 397960706 241475408 260425987 584917405 900363572 739859701 798917562 744969585 543169078 986249769 686687508 847104290 333984721 171027825 15514440 88288673 603827954 567931570 680853784 702482406 431356783 492718783 166811191 948379149 26068742 275739313 8841678 75825457 895746901 449668268 835760689 680423440 852189433 641838402 455590969 965251437 113162322 230542423 553869121 955962863 691272490 525078157 458081650 978433909 345957769 29352540 263680236 734794274 39013808 851392428 396380495 259932905 862690607 193288781 572991593 267947181 371848359 494474840 81531346 959557469 18151101 504900046 488158460 809501757 273396966 718345530 312916322 107037359 802619881 131586880 9531601 600883998 834080857 647101585 844022872 126310342 628751488 619142291 340631201 220720810 898927673 906522715 513098249 405651962 149971460 955450806 382426 635869555 979381413 153550117 241094461 359401685 840899645 949138340 105717941 901033016 589974048 276593225 69016436 864055390 428230235 140674040 38699345 160268480 357779341 818973761 675551905 141548489 114860014 298718566 588949356 727629020 186939421 571494440 894612798 850782906 240942421 323726769 166159704 441298352 268581599 83997407 674245597 675188290 248840973 538104678 562442163 96665073 982253745 686624921 999797867 451980751 592903535 468914324 254998371 886303348 816218772 400498124 408185096 423743873 910820936 640632963 139239208 597774315 859731942 644911387 41678661 593030645 859218699 360548800 585320327 525486925 417477421 485574959 311281407 600401884 523994556 292682449 913185808 252530076 442525674 300033822 693955403 341384434 443425664 263469265 341328888 177065103 560274926 823851060 359915128 6785305 870404663 582789787 458200625 607581859 890553916 133270136 691202148 692105196 530061072 595081736 896019670 184483785 410449077 114913346 949926498 198081135 329662085 984831882 588773232 799607910 419996911 96316008 827634823 477201244 493643855 230038138 830442586 335707821 920137459 558661381 532408997 914700405 820320605 197468040 80017251 441351838 585181376 244396688 611272320 677388353 449312345 377729706 959839308 833729912 586501008 983325916 131530218 937860850 961580729 635428764 797145016 498650820 875936318 200696711 573194442 900769700 235124212 589457348 34725522 636928487 440787966 868623385 564953978 877574166 286138738 666172396 549124857 915532016 575895176 974077125 600114059 483848174 807299522 338539217 808139034 156182934 283687366 699048571 580164294 856111089 814377932 992030545 642856385 332830602 337383536 441460268 582238378 902225244 629544538 583988186 274851792 484621320 378103889 609792747 588010666 22646675 143171832 258528582 439639065 928674273 194239964 957129416 845468723 708875498 814251192 609136469 641080391 463260958 850122622 481251043 923908426 543164934 376004454 98564851 720103134 980203816 742020024 818049842 130682222 404218839 994150420 174596460 683467699 239590138 925863273 756792208 443745776 599451980 753696522 615115071 141261382 743882800 856446192 206253110 67255464 95313943 66601199 942979281 122992509 761342139 258713408 182770503 252793022 87310560 506896100 936535896 153348310 488795994 783192110 86287695 62992060 285429738 232061483 206957398 358085100 323687560 936448663 436013103 98669575 661729054 989794490 31081905 848628435 77253707 399862246 129559374 228500147 203494803 594812247 988677013 702429976 376467054 121465648 977202198 787822042 29023794 237989916 333996599 116858119 748546077 629199964 425646938 870286091 434171469 962863902 847819367 443614108 906209892 665540771 823699946 258982303 80807717 467022801 188855316 442428167 246550252 690235910 797553611 619624806 421451695 975308728 129280031 959548332 769790384 463022884 559175252 844959384 168158608 288681439 289932447 465461531 842359050 421202077 777916769 554445422 314025520 929410926 426484346 811323056 534446286 795249750 644135512 989652038 673995975 239821420 823639 705682201 237654890 941706554 736957760 148633475 673125673 945558986 279094801 6570176 924999153 837360473 813987536 54950318 175364767 816405160 823988618 775312089 518660176 74209866 347902626 553227548 678403137 792593385 943672441 120805960 375994889 251233006 733820791 857101108 954440822 703927461 477673724 397155643 336932925 435171877 657613567 563358473 8306459 785042497 640268620 977893794 271904609 530655483 299131729 761882239 29740669 954266857 307938307 519581048 852020117 36263516 921947374 763839122 647911271 99327040 342717903 701172203 291573494 539930303 56397497 260154709 411770540 599364499 959849925 877789327 426396118 514135071 981096273 602820341 18111296 449962090 574353934 161701761 562429365 401024431 546152892 994167341 226104059 147735284 866842521 829387739 587967157 462322871 868203918 265051102 900487939 84726542 236451640 827930655 792119691 18387603 76850029 53151875 945036344 345473722 131332947 774806528 444712401 404417760 623387709 19877058 616224703 415018920 263683457 51568053 966693437 509065018 661618918 577725588 225917870 903792866 827685391 810186308 406505634 109260325 334760049 795565421 199197289 776615052 53276404 401434457 297718164 877604747 698867701 883700674 245337829 424983334 363380771 730967127 107031043 784830235 852939689 544919403 94869721 477951479 924250972 172232414 352993718 714761860 45205040 410736460 275747273 84408747 810388873 836877360 132820018 267570913 78765257 371343341 122864576 534434410 303533213 307788607 258498966 264109994 779327492 485377316 887104730 593456471 341410890 124466638 275888836 439934227 647060988 765438351 253582557 290859503 482918184 977146219 777065370 482437456 149440397 299335380 779777570 145610635 522475377 257124695 263220897 709139198 557598903 382019116 739363623 819515809 711792375 547712487 298820974 701761692 255828973 975666535 887863403 182579717 756406100 5631703 519727808 142130558 965080795 150741509 346262971 437782688 162064746 185910342 650555601 47500149 680609835 324784460 185490566 76669500 380763237 113205254 990232318 720308548 223984041 71586280 105140791 942478567 366704090 4895277 938686640 264924319 693056341 476266011 604462849 467399074 420602826 33241076 189679153 411157682 945364299 589473504 371506754 441459614 553322458 673979387 51031443 745661906 453089267 261275670 664022385 37252343 951860325 162338749 99958047 768680031 489710771 121055689 382199586 79110674 325423555 971433447 237811315 438791812 587121119 206216305 406466755 534555007 912777063 291517788 721862654 262754874 249380587 157993478 298509424 999390922 217478135 379054151 265452338 7439032 531951367 893178855 622965638 739089922 51133558 645656956 653458287 188239569 643459507 479563867 135217050 452449366 875738326 850199105 157324540 889597745 885897190 959866328 538873213 701321536 664881125 755145866 90692967 591361152 785480802 379472843 65288410 871927448 891623320 442563741 517701679 119627739 163487821 102952508 284654095 771706878 298921097 998250139 891756100 880343714 189547882 194439700 556721095 492082676 776852359 940115263 965856931 686883404 782644279 765934963 654300383 811153497 897608273 944183996 353029501 264571775 688344064 550216432 251202036 554433225 737303884 288993115 433951979 293665545 264244002 291862558 17298222 813104205 220858988 842488672 415228063 733534769 689397682 125660921 169594395 72026952 555893979 269538576 567718892 907861899 539438320 686311044 813429740 648658003 748292779 165707493 430445664 60676229 80585813 836564770 197063064 662537182 644731876 399551500 85937029 368425045 663061888 284813317 944873658 529371261 594167031 636848429 769593142 668566736 902229111 750943901 311112400 788975377 167884537 493941728 804085149 691652439 447176776 82170400 27036823 729409065 915873640 604586546 988896912 21870331 198970841 329171670 566613037 370905321 131435410 451235598 781752331 350982187 183672742 324852679 281804403 773194405 397504689 224538535 907432399 135672856 965758858 719838090 628878063 179619850 408906611 294824451 1872575 147092486 473812107 129445656 94564921 843019193 814183165 472364107 244140797 554334937 811890188 792052442 318695124 954205793 684760463 501412238 755104461 815375462 219636399 822360572 975741628 544748816 488928936 234407084 18087 901951608 699871709 350464910 882094872 306646060 893989273 788824309 139107201 164481215 386198888 207808261 743530493 168841580 758908202 791499778 517607321 927075934 838775804 431190064 903091502 491134846 645847080 189380012 129060310 463517798 904305569 178537419 437604203 407649596 493988769 442117407 335052759 681965665 725846469 154647434 599286731 843334397 502799491 507130465 222433104 460240013 635452913 414703162 54460340 253726088 467974280 666572077 111185792 426969432 19640992 168534290 160626063 115901361 878811523 559880559 916419288 614507977 480049121 308030806 957711443 644821306 843871394 157957605 637584484 829716086 283252669 705525809 573746182 236263343 89631620 399238424 451302275 262433751 948764122 510899886 169969988 653494587 280468959 324381141 640624662 254340272 162360399 306465634 326132878 16523497 290179569 718407485 566198930 493594830 996698351 15125766 644172076 813005514 808096618 711377082 261265134 991255596 858334043 714020317 94902208 13428297 457762030 225422057 140569898 965875981 965508071 1905863 938872667 564131419 873270072 732835222 486752418 673276878 617133421 385008863 29700961 553630594 761642715 608882902 636212093 956816861 875543542 258478691 454651312 202680752 741827748 605587464 269208852 993358874 368457613 563615190 620674105 45556709 467588158 145902025 141993011 260760032 506177990 208044763 860210239 270282212 513547456 176580298 463446018 349716905 391015751 371427776 638221611 367843155 888561332 581620858 736172213 620520576 968498746 473514658 228528869 226260851 840988769 412450340 136347206 341989230 478906813 658403430 900873335 522699741 52403346 895239900 677012223 156239047 353964147 795825001 829522692 418212065 379068268 481637560 648537751 711192371 211051811 93936676 914789824 672977165 574580134 456374171 418809923 898228753 89239144 282009300 114863549 257675834 555220696 426754160 749401511 202962182 457506155 737245993 360395853 317132725 853398653 216799265 965191631 572838373 359591503 980507963 735508954 862949339 209174705 238524251 614085170 177456918 717399166 110781144 457874576 260310114 884517315 573089397 618434670 263014401 268449948 448556433 752381055 191592907 837054954 709990188 627084500 220457669 287625374 650242133 567668263 786962645 718263842 905919664 136309927 296946238 425125217 76612780 626081399 704524229 419651456 119908980 816567506 667696919 384342554 205122786 526247494 635889417 414915100 503842720 620608381 894312823 177518924 535603251 484687473 501431651 903666134 515316086 202882220 638114298 788037337 547596633 876319082 282993096 175335822 546124534 745926186 843254912 661547197 557866161 140506670 624376802 554345527 492942048 353335448 373242293 341048969 346678853 591663559 25398958 728285533 561682170 381871627 631611605 22831558 995855352 674844358 239872876 769495332 603016298 541066797 715583997 494073162 849863201 488147132 172153861 906970579 677903067 964850045 336828971 371587563 14457774 955170852 743353386 504459110 406427068 274467597 627160652 446357869 229144136 293306591 460047917 329465865 505310299 245568908 286932316 445478365 7910790 164444507 801357460 827156225 893897614 666584868 90303096 795912409 255576586 136781669 809637329 590239187 400784928 241425087 981700273 546833149 590664022 509819082 107609042 420817595 327729908 616292610 361563997 410138714 322877995 440921360 532901615 674555957 290723258 534089730 361173531 899822362 876025894 865316049 407250671 165128047 261091827 485326149 395136798 970139981 456696641 147854141 587761289 496926145 555562669 269934018 297436240 653673126 125765494 264072532 157559627 528261441 78351927 898144453 550407990 647722383 114880740 732291169 306503139 762147640 783143733 811035644 399223591 418208024 213692674 573390068 80800728 591096933 450602591 299356623 483127777 947871064 324049473 970028938 64047667 582734237 350221097 717676613 481858399 693675498 435601903 315716039 860393607 835833346 116249465 401366551 207246010 385104753 915043358 527840398 769032599 701370769 463142416 421810158 912337974 597383987 519170390 611569344 235734109 481813518 679705210 234182604 818499246 283361190 546697151 281788745 353380297 583652271 630799261 52671944 932962563 501850999 265725045 131984932 475366695 429889504 389778679 76942163 821650811 719242055 20999083 36236267 405477141 367617339 657744515 729888196 277199523 579034899 43508268 230411930 366939088 247576932 66334169 157724591 266382835 716000024 667876067 957751492 170934258 729567727 911808979 167882699 495649808 280311346 144018513 228029862 665971013 140674976 53497606 36756075 366675108 241120132 355375788 527203057 623928142 915885854 855354404 489112996 423403607 114049732 744020250 100762705 158035892 859170728 831122922 805195767 948261390 443495788 55423518 432722103 749286819 583538531 325823974 644386474 259079923 967875272 672895571 695594206 70207457 833748197 534082654 397812713 323519539 458423182 453167209 272303255 948641890 406332742 378477468 656976390 624457039 865601757 419950770 553630759 811405685 612540202 441534947 129384326 149128114 26918005 203753189 827666596 989895329 755988193 821518888 64936930 854304673 272816223 798232513 87790167 831349752 12152738 523425003 318914379 315333782 400833868 349797523 946794397 210376435 700352583 113831152 556045068 388044277 41408366 696992505 318747923 816406716 696189374 609877094 575201589 650066815 942782126 948907320 587396522 214760749 157454786 290186137 174521188 694094437 740111582 956784897 381802169 297070364 222177038 535628853 231613517 486495031 71733971 509933928 294612269 509380230 445424676 154129409 324007537 441954403 758147989 653923565 802353754 167219730 794959889 945502755 770519730 237383543 603985905 623105569 797451759 749691321 476643812 348772953 727018939 559018568 953385324 647870915 932278474 489673123 367309066 654088959 63563235 193776337 852230576 255137222 760578756 730008604 886987180 451171974 84392022 810563539 462307014 154088370 42748476 572307415 640625375 382308409 119578334 55159781 97038207 198268364 6112339 360335681 871981935 864879561 342417626 853249111 742998002 919393332 393650391 198345436 622253189 294126286 204883639 935052885 436968380 853493399 675457313 931517063 972107467 269950312 527661032 899066348 124828287 167385725 147687455 756716062 375251872 827286084 41371480 709126800 988044547 368482364 670144730 124274189 845893255 261953196 182633379 433051707 542850304 351825750 923004279 410918992 663976623 117451531 340911221 737420543 248350503 511111053 882414470 619199627 581361611 344442723 289717977 960029381 221844907 135771449 319654583 24457125 684421171 40532715 718505151 724282388 113570282 629394139 314511441 622056265 519364946 708187926 430394911 401161713 485902597 24219366 490156399 573598125 366795515 602900093 425519427 816703586 967162493 492206429 519847383 811092771 591248281 63964608 730562564 226618994 962353825 855610474 29529748 33467579 59454301 604453396 321373491 465666660 830955076 970115464 28020768 694719726 490222572 74304209 457042200 430911546 718556145 176059181 290142201 683379092 746039 797559673 878669266 51210056 872643154 888242663 711126090 945839480 595650987 716278048 899765305 789376421 704882909 124311579 5831192 854278824 509180066 285205117 516929645 431030961 911719576 180424380 709192515 380380824 286693131 592285270 998669686 357250305 559112813 551460247 526150206 481125764 466345802 52687870 896065624 373896331 187117173 116354788 892907567 220628136 401142380 695965094 190689063 769477333 878522662 148851354 997078810 712395401 363448955 748249402 704477962 424781371 331947129 623883559 111130362 738175015 373893737 637756930 746284965 129949205 105268817 44784267 101843404 808591709 931442795 926272499 736717667 255748995 281912115 433451996 449640549 265452773 571684504 166969989 415898638 32667832 654095181 816318260 229992297 486168725 236702703 379176430 525832106 233674554 198224375 928025805 976443943 420995343 550276280 3595813 914598308 498106432 441434237 408958585 90486794 898321300 751047304 347129643 39497080 779826212 42873212 39230662 593666201 101862771 64361706 660714172 295476888 816775103 144503010 961134988 523222216 19714793 432160123 401230549 43142517 293027855 559250167 200844141 427042574 824147955 925739317 564343303 223711596 290280383 638164905 335827294 43121809 547233721 697054664 990817422 99567484 478218634 301350996 972362445 694081203 835585405 370121716 914992695 232548854 454396921 83049242 746848732 340410955 89733288 628056438 367754501 973424769 999320553 117925531 759925060 148052184 512416060 835023887 650026226 190759408 24653848 265830295 345040187 526792095 817897469 370699492 372907608 698926706 789919552 766209114 459379021 944312291 682207414 517422464 719037821 159227457 112938296 528888908 234438616 641759523 99295910 669809808 415472316 435259659 557829475 973208691 627767745 291475748 350770849 753250979 210279470 407064619 566943681 50024126 468050853 453286676 245621177 257212677 122064296 421309453 266079007 451963269 563345273 860211251 323470740 209138475 404322646 509102916 214974718 315621141 380688977 138780015 434072733 490244628 278121414 844055768 234683653 62300577 130609428 935545393 373143388 413749616 65247402 739783711 426889714 992063254 908731778 370099103 290620456 84718777 845417822 211460351 804814070 142529701 849459277 111668918 544584777 845291985 536426069 790701095 305855608 152193128 135680728 299354716 858871184 842828227 836060069 146081124 787652131 478966535 481713855 785284601 6591237 748745314 638237287 399049210 11041164 29263052 361859303 792859010 436420113 942317518 218885974 499483615 176103913 747137862 529590230 470154956 485279099 409526220 882848545 573437185 543642540 290299120 878122484 579317568 329371623 987097302 243424536 758448993 737930862 726542656 579276207 856921351 671582612 65973515 961420620 962824642 940376890 710126291 924725455 205349676 617208408 316257875 21704804 370341051 808630958 372275252 835096016 34100677 875931553 70414481 881797658 737167585 940457326 490077869 224532620 377223405 364926792 837416359 201950036 69921358 858644254 952567678 492490961 697172599 604486029 677814193 73653730 139594942 64190051 407827925 7364707 826797886 847783868 820615601 860911757 829342900 61092723 452616371 666730193 678750997 516605270 151068969 613690407 978415969 709875630 872547779 891048447 99955864 465184525 841785248 105657594 285151746 383737817 840122403 466375483 710532686 173676715 117373942 851703642 876979297 554358139 88390451 887225829 390086283 166525346 802267367 957842463 945186634 239272074 119621482 2411644 77322898 922184572 800912741 485327415 66043866 695102974 611071202 673970031 647052957 765665841 698346053 292043136 809726664 511537448 369342514 218340961 46330893 378156084 179833389 232598463 295491915 525215157 349125168 672530478 451903073 533598899 793103447 651021853 812407634 619791453 573722063 980925781 740338148 78478490 726806646 481979901 306643875 114376276 513807749 53266399 23401993 79269102 486235695 828580882 649108335 291664175 132666823 722362331 455695253 187382118 397359417 194427784 246955471 26363958 405042161 852530293 611578209 699112099 984488280 604016816 597563729 719763892 509449005 228201547 679475740 584539758 787517464 22235108 823622223 840288748 802761835 654211960 500603078 216674346 71304734 981787011 320429390 717518191 605576083 176094409 448289998 160600090 23502442 147690063 848752587 581801635 478003983 414384061 729153221 53790483 360856172 130381431 807637939 648476786 553997345 850814112 392256113 151393179 606622263 244111612 415865762 83036327 969396331 711046491 318591639 437429217 636514252 371273030 111157953 648589727 724804028 696839849 294417548 507030122 788154564 881323387 889804518 945432720 948895960 438870752 735620738 187278327 145103290 38366154 64983776 806787090 721217516 174434355 395306753 988021969 872954349 894248172 450923448 196179325 859424853 893741473 276878342 721248997 802526445 255123538 522792398 567881654 223888204 906557844 494460089 41745280 25759302 329869806 464471488 453978349 113194069 980809438 945028229 265023011 208014183 952843089 481352480 205688869 955579246 159806371 182818997 387456944 615484273 655124004 568989679 808961663 671281619 868685809 719493484 793199772 750201802 780178563 519645078 876433309 946530410 964460787 766855972 792058769 514309104 698191143 672357019 638434503 154202464 657190846 606690527 169698310 758642637 356744154 637881266 186649959 254222679 464467397 84263221 794480117 432726333 821181158 46909391 245458700 395740516 205476503 742026593 819899994 268975594 373834248 344489516 69266597 781972830 704595068 516977656 718577089 756978939 264198707 531730834 274321548 962921396 534855054 550011608 246966529 812208766 969708836 136568726 413450000 824394345 251145520 782990368 850620004 15485391 797426358 500727343 344967796 709928929 789260450 832466323 934310938 20155021 117692136 780438428 594874223 255007992 133830987 160513309 696308388 438443724 944519353 631648809 166306766 612404645 262577567 444503453 942072926 265810378 342028874 574497801 532212998 553250888 322363099 225219390 878308603 565144040 571665708 44042411 597327877 916499127 62096250 76502922 156896072 193255048 444362499 975093176 647037747 71904577 328456086 952900685 129679361 822899739 204234046 488555635 686222251 558214741 464324016 218792186 672692509 751399952 924909342 911236585 210533649 693872688 679891500 513161494 113718543 258752032 841496373 166833931 40727705 301822125 211911730 422936116 772516344 982546131 157340320 363632539 63267177 13353241 927543496 976370933 471650550 917708267 89403777 258393899 963352102 838505950 827437770 924513781 667296966 186837900 707489017 617713676 796543366 935164587 953896797 937548657 471777533 966698305 553434245 515668272 259175226 516937865 297772814 970765237 728693664 584671571 201159502 528918994 917752992 475951927 637910746 92876189 829968778 7297120 737721059 606848473 171757350 115401857 859980840 948790853 489335278 353731878 749989247 941046058 637689946 201580275 673504808 374755011 641828736 736417329 94741804 470445469 207835456 18168449 236694573 105840544 451051198 129262740 562681335 528750737 845919936 517163296 833853881 43348069 381675790 959783494 373204085 358323669 418539359 376922824 648281864 453078015 65943887 56776655 596140915 650174366 356821532 657965903 35241746 259394594 400590882 482084134 139102510 768471088 415708002 254628760 941118120 416987498 116148529 45132951 107579143 378643480 796551014 709406389 998278114 275208860 675583610 27215584 850504484 506457103 123909746 543217624 717567083 263204095 342623140 88722330 505805024 307059920 672015497 128032386 569483558 912089948 677368234 19152562 405852088 972437300 755357409 871473996 682018841 732581814 553199115 465783320 959078017 24048228 896264548 218986077 671553683 161577810 660749966 71226571 886573572 287921033 110655851 865854466 797747781 174554179 671186531 478841123 557644146 510422003 941967698 352282659 830867053 175555598 366849745 487704428 512371069 716360944 861113999 656123704 915166521 587668665 317454975 904525340 975867487 354407117 599249346 425536871 581305542 889493320 378170897 663393369 412273145 524670630 36949591 930744016 606534995 267984352 759378172 896255657 674601219 691072205 462494680 193086751 281211504 411133892 929447644 357069601 408414081 993099244 364033890 549676615 157753936 739127823 649455776 776555585 420978721 960061358 696600282 971036301 215525087 949458702 365572332 217739492 375635453 586788738 442777870 443990466 66575613 535500548 872316883 583623366 7603682 188173623 789371329 442189390 499109294 441139133 438862492 120549455 147936252 863461965 178653297 744966112 946228355 507169223 815890712 384950362 730755128 849031025 966051300 379346534 829031556 157888558 580127089 22071436 374897410 434008990 687030138 642795738 6716897 277836192 943600039 179153575 462218963 640477776 445547940 862302166 588291080 852083345 505909806 315390560 558600153 204892173 694904791 79677829 912380467 769002436 474627974 503470918 237481428 790775297 499805431 499634112 395699029 37161491 58173953 301486693 356186310 686929874 755153460 567457776 941430042 624232726 603077803 935219588 977256689 657255135 454590098 790794709 318405003 135047577 85367827 341788766 270718151 654688851 903245607 358568430 908100166 587786252 991744575 440402284 502913517 149672063 190548834 720052137 64849442 833549745 328053175 496756679 362529625 354750002 512853408 110058815 44250316 562704012 530395978 153364090 275375441 991714169 114108143 925205160 383023502 267650228 650199096 440804087 912473325 192955707 369373491 126617204 967672390 270340915 316323973 628181394 346470794 467549456 654432113 198144318 859720724 516937892 942941573 362969664 952252260 606320441 531848462 578150048 996052177 492309018 875396519 853011962 668494664 899076493 404329970 68936054 735718363 910502186 697988147 773426431 691031998 221693788 831312593 887077798 687302430 76466098 484955026 77043066 89602283 935574836 952547612 783817452 443672604 918984631 243061689 743296033 642033668 630449303 913130274 885455318 545462596 905973515 405798815 609597530 955487547 222357101 684858803 616816607 718202483 81658925 537276253 562372438 492631500 483870990 606037210 789882612 522837723 859426773 752132226 515516749 854937270 518351822 848512657 434139787 353809735 334159708 574184389 824415951 148284552 536474228 431070288 424296893 212989059 418014562 228297537 334885813 66622851 809373658 676479002 177412390 729163600 877724544 362242515 340306558 814795879 290265203 240949788 826496216 199046680 975213791 574963739 977179593 895044219 75593640 513748342 806735923 150912262 43759862 847990966 436074413 244704785 791249554 612783656 116033230 684789976 61703332 702387733 953946436 246925973 179230709 409674364 279731265 140281779 674746330 948289663 704959994 634224345 426565795 942034582 532383004 541194411 686679223 6689351 83166017 982776715 360443856 233137714 873113187 555786723 54131707 279771932 564325209 913242604 435203924 132696395 437231605 504771919 327395367 929924397 495605409 651518835 277524886 739751480 906237610 746335493 974168557 949249489 11968871 49951795 885971781 674157754 460082507 854071374 313571703 698878429 881513997 339819689 685250366 66756026 771796689 786309944 586503809 388969945 578214318 980318243 945279230 215278282 733124136 275613280 27821315 496090628 259060096 338671841 211085464 587232403 667668766 962018220 423774323 933998643 579651902 11838246 92699517 232861870 294236795 580252106 207718602 658792490 243801947 448279799 241278208 201685412 204565093 368173514 273336027 238618459 704729110 494488946 762852747 625346747 929388945 854428887 541325795 250302632 373901035 519732206 703648938 766063804 488155994 298192309 937858659 589587593 758617379 915573243 424049316 966534720 270660896 260783728 839087222 978261421 259401145 988210516 685055746 877700444 506487630 647972652 364262455 367076007 363308764 369442582 749880336 900180496 193526749 241602108 498245580 765348044 799035560 843462064 840322740 337524687 111808616 664618127 382226421 604664552 941350395 280955995 400341723 913908114 798591336 57704140 479769123 684887577 987621400 925052262 1545896 928407628 109470893 412704650 78351405 817448459 150289947 158465174 671682134 147080562 938036275 508317936 750453220 344329076 312788982 304506424 528108157 67180597 113685908 519970542 587957071 762919312 246703166 796167418 620503166 748729884 446986241 939853290 571010541 907971414 101336395 550849867 318478511 661122302 459029909 893045651 393251933 51027085 452587610 232001681 964756875 895773810 20985511 106107127 494821435 864267919 230892844 135367797 497973730 120690823 242548546 503330315 447767851 444105400 329979607 609796766 147741259 977468330 872952515 870704322 667001933 335983527 812147231 574026902 126678315 492377378 878657227 867346668 773532917 378438892 589662842 704611109 252633805 841001613 445951016 229787045 548701301 826000890 742537654 881258473 847463829 254793524 862907253 1597745 490155358 488039767 847287514 10001064 731721584 716783350 356107571 95187172 473196125 472447177 565387427 295001125 967284440 773064927 946016136 738737786 867146610 682067087 773389553 815898 557447296 744079682 318217078 112896811 7474698 244596474 587971527 170912655 828295280 120207675 309843101 709562691 154445709 283670144 804822829 503525517 132811872 576371071 380769981 980850607 107233091 378938163 796435691 762709729 96547639 50995268 320412264 397845289 834468117 413119652 165271972 806132624 868596615 372988710 898205119 703863938 82151529 348535496 338036505 119544354 756938672 188358851 150979657 727583590 21346709 497996330 256441371 637466067 39009854 233633345 789288286 419998594 332662778 260457945 111210892 321903162 262679479 158624662 446787330 660244540 696694342 648626487 350434393 758854507 738057406 619680887 83089652 502759107 469859918 222218281 662642646 202654822 233094319 789145060 185168821 943271766 174093656 781728015 878072805 262916867 90451051 912261902 941708624 242729522 420381695 846806217 555327483 690186565 352228170 741571472 311585283 729110407 706985115 936227429 147122181 295219009 872125662 475170153 740661459 489779006 458383643 310998871 983580378 718168014 462656849 911915791 662726485 414553653 475827965 419405829 843422836 342660656 88061966 308163112 472176777 541115451 688184896 130576175 189233797 551061932 73528347 532946559 742459150 158436853 8393422 100715080 321311546 177714490 651396723 868504053 64332019 163968060 574000561 691686409 948679626 572170184 515614123 940881765 226944187 917456199 152659321 594800089 632774380 101893877 728514837 650500368 382071371 589707711 395687003 52051916 908358474 45136961 557713197 651543560 123561954 553009993 535932409 57703852 34947299 720566941 121653671 272159084 961977363 236786549 542104101 39979046 917135161 366936527 861493317 771492512 436310050 836399211 389280412 423030178 463383207 905138632 422583636 110827285 231024583 932093761 601459285 782653155 541020964 665970797 344639463 164782164 728088507 181016318 668988151 136021304 895135519 241284919 771187691 721231644 422934124 944003361 424854570 478568024 458336682 575285510 477909385 985399131 929750247 253858413 141881170 782741382 596450224 118984612 178178040 327472321 618755994 710601657 443628141 585181593 784642196 206604811 515684027 807397524 503022177 124711622 55408790 671377579 316933035 724165771 523571329 675375233 411069825 748139106 311688165 898432808 368846119 986907454 485276914 739181981 896190374 47892966 35853500 582551261 355477367 251497276 929862317 390729873 717127780 628391587 449141976 9067427 623393956 919088775 936318778 409997355 806682611 868849542 13413434 62982936 765181627 130695196 521836044 800191426 60628817 659025337 838044930 322174267 402084894 978500175 297902383 653345248 353078555 180722827 820298059 965501746 68575153 412458658 587338268 931694155 207400111 294204997 830926923 799315697 895455984 925067274 643698366 927810112 39932620 472503762 494440712 510081854 70299427 291948145 62250150 2971506 392626709 482772303 899022366 993716010 761741397 45996327 340665107 219926817 892031322 999666784 227244059 928832615 530953620 608065017 952675811 655892881 692832462 452181876 609852183 262486058 647958966 374913393 306313486 159756117 285678990 300636264 69665473 123290172 679726418 638126548 248194902 944035666 601717039 332007408 483242643 900407127 193099331 146169622 341834254 994724762 828681418 618455833 671572954 254395194 650815652 993553099 73887059 632545147 198524292 931972322 13164340 945783335 233962152 808241333 433854771 246442560 548459625 115927939 735219625 407463142 371482373 561159710 617594049 560831901 401709247 926724998 438322606 282261248 530511602 187749883 474990839 13780138 199745031 376149242 208252436 642442570 241656276 361358763 476755042 262785833 630955368 982523563 601901763 49800531 271039955 475571271 356065236 685897113 869603031 114239310 490996392 566427332 204491425 754733704 218620720 925744895 144840416 428714961 267808278 336844971 144329542 622726457 434970073 449221981 200232195 34653079 342382679 732563157 907798211 231710525 524098638 676521912 622940602 895732381 108635863 400939603 534698860 38369389 972330268 434849338 410551250 992551236 453878198 944582388 427739143 424561719 97608108 551138836 578420203 202235211 681952548 75655762 426490210 461823628 433277116 914573031 852163915 922803500 451736983 689626803 626129146 381713743 551227530 428600026 524724906 492968108 933636948 714076045 38070076 883925180 740712334 904696634 639949053 812305054 834236739 68849398 34545368 718704662 508703237 53282193 865692381 951136269 705941950 470367884 6205130 615451859 144040370 491970387 151119562 997901349 154070123 524711372 579608821 566982398 682679152 139520484 148899995 872438018 763560386 939531871 108539102 337473756 866388139 908932720 698458161 791103720 453012083 466327213 861167963 581380059 648910157 425894190 839649307 335463468 459464738 707409358 686578498 214820916 690399072 608938727 233202567 544230538 588086869 509311753 403013579 815392628 54896703 126796628 651164898 347743172 189071726 735072761 178217358 184625130 339778590 738159684 775852907 665267885 9630675 883668698 590918292 792019502 476376961 254210487 259403877 989830083 264698778 232189119 188479937 357155568 247878253 363952315 326271635 878033450 770304315 436417992 678340624 780089030 902434292 364796039 763399809 159868821 982470317 46527765 111858120 727785361 137091016 855500734 827598878 691955009 231680400 736265185 212518322 411647797 26139370 539525747 929581837 252136732 130094706 815807238 798742035 927656105 172504056 487081607 450100579 597550711 901181991 32316642 873385842 358256607 311185498 2549998 990670187 358297164 240340364 276532547 331220693 237908518 883135240 949875122 164086981 403277819 77768288 300718228 291245779 869577478 702687706 873180806 359884943 227852178 586905421 781464817 371078981 509328360 330149001 608498299 56424124 819462587 161928667 974834641 479542917 568662752 499817691 426623178 47678800 715850370 934113486 810216580 294708781 730606909 930803414 647512095 156568191 763200181 9053927 697970788 591703290 497610768 39183503 648181280 128713502 332254459 905448452 465788637 827275623 182247943 839650375 846837842 315885171 354700893 133381251 993801189 875187514 937895242 222418792 474958800 676186597 137748685 179845709 575447558 805847620 306463291 322544712 218266992 513761158 362833207 655018303 161437546 571788271 36086905 312637240 943246572 467000022 15567124 628097498 709920809 553763658 870713853 661931286 848961656 777757142 573758028 29815199 90290597 711064667 477352949 472781974 649421334 118120323 805829115 111587031 712031125 301833962 855166524 876010309 855196089 300503183 65769470 976008453 691624751 184862250 648120389 988110234 620429626 473644706 294801581 303027488 673491164 452354169 613203051 631130257 727637007 58397298 405946334 146277163 290320458 497164891 975342788 324744616 906546467 709980374 118651828 759900621 788265515 718534671 955944515 705580766 271585326 68502925 83550494 846005741 368027557 231326310 708173627 280163967 339684315 713688824 464477578 333439587 73235590 363791163 724737356 695125175 64127124 466261103 35362176 144853482 491156781 310490145 469049939 167269511 669406405 399767754 575213676 854071840 458262836 784245042 359901414 455090608 951265861 770165498 940678522 949902085 916519490 529855678 607086597 415146402 225443767 32128783 368780409 497400946 213766117 347464465 737500533 358053491 287950661 540612767 324418571 530925826 997370334 545269437 337879385 992680374 943581312 592843401 513203263 621861333 346672290 520281757 101257180 205153857 628745769 3877307 942836710 422488130 93877967 685708555 325218036 774485010 525934115 478614373 553367962 154276599 832886416 307880315 235206192 714579427 120598894 703010159 9676761 166896072 508258661 763765431 379893274 4640057 29066111 758737416 136887742 36539534 776246294 155846115 762674941 921374111 905470139 496550827 365775600 919931033 49424000 95887775 20947815 663399863 473273110 837968488 676114426 606465370 379427940 889551654 729681426 19807813 454802306 806821493 722826005 12248107 354033654 728728796 789778948 754545637 988923206 837328518 438048663 520585462 19602280 446084864 889096063 187887495 683526705 199235783 491061008 547335277 542959922 430659850 72295656 376096578 4732269 606207791 391259296 21101101 768095297 705310904 928436386 10020299 481447812 445730071 337171347 769331561 542006233 525245410 387591625 706219054 915618261 287966010 85495231 902374110 806533725 127399908 502730544 878857040 75281891 844948206 592943134 681455051 641136597 595907138 569998052 510462571 18589220 741282664 49862438 496088715 622496334 287116107 813509708 592416149 964305367 215971334 854446662 431405187 328845387 383409262 390381807 328731131 33411127 961093629 281519500 102781125 814289386 515981819 210323970 273026621 69488596 726181555 843017751 222023786 738953507 788504278 909346366 12179852 130333600 686789396 726612434 459474183 107242025 369590438 929120143 714370458 106370640 17311821 796809773 16944459 989231855 693569547 494555033 640386373 489461054 386661032 969206258 796309786 380000765 507994254 762808653 948687247 40105635 664460587 644022847 710104285 741421833 975972067 599898584 28210341 156893626 829602371 293189074 580321358 572462750 978841871 893664216 883081906 608071531 725642035 438954590 274784181 990161781 427530965 852541847 651957449 247843634 470114716 855803485 276597248 627209215 13452430 690678068 94484764 790047991 649996332 761583017 768656277 618573398 889611428 943153033 114209736 131932250 11927979 958045545 133309039 717721601 865721646 181500817 974328971 732854786 470732935 966425467 551736047 985560851 145580623 69398664 272126228 144506228 729805253 29483672 564532328 522603806 697886612 553443508 687712438 434470911 440734288 572092849 785098789 348337197 519929206 309195964 266027622 146813364 553786048 889966540 350600785 450865345 243432502 972783642 914918125 708451066 732147824 415833783 728199372 492294987 105361908 975789999 944586423 441944476 435492785 572087816 133375070 204409018 248246600 767528619 814602511 206200924 929931146 348565901 211476280 622457922 850987375 230036017 243454791 341286284 223594823 253664349 833650505 976300001 263196627 674591502 775117243 397410210 894561375 122970190 442094372 489133364 856096048 528852644 287604426 150909230 920795904 332058903 833669186 359548136 872716769 132393923 845570004 390760709 902759586 453323997 598027001 894276340 353323215 783318536 723741748 199822491 139645407 866913623 771871833 215675238 939112782 453173352 181598832 239915585 716727162 691511548 145518424 376316064 226740810 745439965 368325566 202940458 280269990 926211565 449136732 88505381 963337049 145866537 199023077 384301673 700033580 640859362 105799772 576946101 802381731 612412744 750902012 509695220 530816244 894080410 129020073 282111579 946245095 254391013 868375296 972657025 20472997 417715136 394857458 768089902 648419922 598818128 54855010 296319069 790882422 473511806 571514603 256104906 63588665 606140703 917434990 188637786 584530769 833615235 134144375 335280035 531817861 738241323 757400711 576378021 797381809 318070564 586535518 500587196 949302957 161903625 712165755 564815157 944186034 724744966 96282592 31535013 511882702 679185307 948308396 137285924 90987938 61580763 257978192 293639310 154899210 276810982 431094871 750912114 152055211 503407661 140690191 200712724 912309698 464177735 276800971 1155902 95150985 50714564 94638862 961445618 670085033 41173973 9110982 458555368 439771500 77528731 141115070 246283680 962257285 308804923 804602792 6960446 716248100 69664672 233308677 477870795 341337187 518473385 946436567 897893298 292810076 645864411 327282029 326700220 805400428 508197071 869045614 941302294 796477333 200467592 220433700 400405762 308392581 425640758 649807144 692333531 462289276 177083702 662108973 862868710 697861117 327005951 822181095 852882162 917666377 801127797 810431768 557719430 354463120 289743898 359902149 967442348 993046833 298462868 68703039 753154773 280804110 962876590 912018467 868460924 352615857 60676756 98389867 254641031 662474056 198783156 59679156 284683357 838087436 952163731 659426103 759446233 289619857 59208734 22283979 547001870 908298839 240669759 524522787 162433202 482383314 268010450 27965442 644311341 782490628 748041299 85562361 757742673 920330587 615473169 739031980 221700590 681162180 268301488 622199442 11897471 6034712 40280023 921637608 740241638 872000300 234334110 639119389 725191276 217406101 459131516 476362435 949328431 129928905 199728987 106614973 593575429 851015953 489282920 984558587 735027537 504037883 733960809 644773681 26238236 732995150 42438082 228750953 406337108 188049208 746389285 33013418 583122685 145259247 109156459 62788342 69670433 579329460 643025061 209178444 989698766 887168021 418878697 616848124 749949925 664785474 661714966 918101104 877423383 6042840 850456495 973193696 878330824 589256665 47391084 225293851 211304982 965432277 95983764 308631467 40493634 725313267 216085947 246515024 794089228 827883258 935847069 450821777 369039242 880666470 538901932 134009527 602906671 837050344 747432904 582499491 882781060 313466834 552002497 29478411 965002612 355336117 191502861 975383704 274381572 581139641 670169031 168357222 797587166 897553556 920628077 40867206 166484699 996777250 373569685 531974899 430911208 749361829 954170164 493671540 408450830 955892513 29589020 418923940 858165527 840380975 554101014 805813087 38343556 817087526 210837866 655703624 267192437 961799127 289209203 104485271 966143151 779944067 462606495 888415368 514435826 695522861 920451841 395551813 485648272 95699081 343009278 814902262 115486086 698672031 158178176 336710252 295858681 947679180 955620727 760148121 977387184 197357009 184908134 256024813 429925637 172285360 727476772 345732957 839664424 912437420 839334737 143726405 995860252 566071385 185634681 105187531 981278666 443897542 530675411 839239667 266779732 581607151 275500817 129516279 690427398 58969914 302503604 70223009 872839766 60301150 552585375 217533964 226120862 727929452 548299127 566963255 90151887 310416253 144915758 115593023 770476929 636374044 393562820 954876259 385549676 905102670 824041046 786621578 318869859 589020069 456998516 652393806 645041301 31285008 707749108 807864821 693747886 671710980 486249750 846084369 321641006 232745471 158497257 875028237 191865453 947178888 570211091 444196226 579346722 318912880 429821058 209993629 875179354 819237135 944894105 319940906 551503749 712108465 519548088 734867409 42745291 660521340 840090192 53145007 541694241 838105638 300367883 255090135 321476310 306260263 337995246 615468138 138565592 501181162 72203745 127603636 186891802 536164140 662928369 792004707 220438600 698987061 603289443 843736799 942275127 461999449 577933367 856860676 23482634 556564599 79443915 266599433 377854945 756933141 526032561 520428445 610374613 716495709 221621820 87206723 284928808 881746945 503788675 641464087 438112220 798048429 762741601 7467229 834453476 102008529 369010329 86513754 304085125 973506334 757114323 624410793 727291057 174675854 681410237 569156537 703554213 23149726 783986634 16417378 901239827 105117880 800705525 126026291 257096943 632256261 401924636 33779265 170446409 242760773 386410462 766439325 471219540 998144808 391496364 872606366 392029001 141827629 172783675 2932479 681932095 424426743 690568210 549650677 1397324 729547869 876748216 987556711 525088818 558905715 888019588 500306817 777390031 577930040 14149261 965020067 927601919 700315206 962963501 820878167 523817924 412356605 125837945 234436132 421670774 502714809 894111426 593256883 461881100 798492273 947310945 975524884 708542003 274219602 393422784 679746476 125019869 405695637 765571399 482816187 337273119 744277636 902048643 686814925 940824534 317437664 895377434 545954475 839514272 379877462 207662888 742299073 610120972 484703904 399052854 266549761 52000629 793982808 99348303 842863351 511631518 625180328 27836679 286041774 602934165 164483055 210312858 823987856 120542382 24067068 931822868 407958337 951650043 727539336 902371020 900648070 174988675 95915830 125069921 862444671 652375455 284962361 791352366 129576289 835864178 881169561 628172492 555602704 78958475 266087429 939823292 460427238 259118505 617832860 30503726 33803309 270807274 248474050 849530625 837434423 401245254 551052511 760046761 939149561 528709990 282776198 125038545 386060061 420237348 560685644 211115804 265796369 848949515 868014617 77873101 912272799 399009581 84871921 234552318 393971035 436519163 938723659 745485089 871616516 812106752 960911563 828308941 685996139 953034850 428899772 357937427 74045902 242633229 390680382 716430930 216053917 278070163 151030556 450830736 112076944 518205716 341029574 506670660 992185069 637105320 844955063 293453785 609289853 282369598 182136079 467780092 153956738 961751543 738276728 688138316 848618959 251937270 991762601 585548626 862037189 457252881 764101088 1691065 655461321 894618377 256546509 4687296 89322818 167272433 865090749 228274178 714410174 352240629 904924582 117953667 832115120 390065288 304813386 166762081 383835207 156141061 810019643 462886433 889001206 253503051 931001204 477401010 215142795 910570175 986006041 904485825 886696627 486908024 755662045 216273318 315158539 239342921 788107614 878665784 946180778 778962181 694269781 266334309 215893655 61818544 475459241 984496733 421626407 170199696 442277829 777948377 643947991 484207205 918303747 917478469 241903675 669680755 206176644 678081224 363158222 852520212 578073033 304150243 250948894 986909875 964634833 217468059 348102288 962826328 683901010 343037516 587173471 529226864 297091797 287244921 554849434 949612323 694885154 428949129 306766249 459516012 961424081 215632180 81652546 573428103 926005401 765487783 832263300 286306337 222470950 144226162 69012170 782482247 59680545 1186268 874923014 527600758 311248330 356242164 182872264 800345610 335201188 889993318 193232864 96572162 963807644 752050893 548533455 921957004 532935862 681309630 189682537 479721127 923101480 709733305 343997630 76530483 557078855 706686323 108857844 967411201 293812730 700129689 339894183 53557150 373399876 163160784 944601384 475593664 403991273 441969616 692906670 66295585 968601203 206695935 79002823 796294999 987907836 564563580 299276616 163048258 478926933 704405406 277228222 535729559 513834403 753360706 71034561 266137081 725786824 626617641 337088951 19085408 125926238 373502543 457415204 658395848 105467816 637146739 794314896 944624375 617597892 299331054 122427257 123843708 126540519 630486004 256040160 370613107 756720986 638680074 725437426 71838346 829466719 539308830 446821287 913677439 860274955 551903299 331674791 650667555 489954189 773667614 517547047 416267953 161917287 901285677 190825718 519479272 571218930 554045153 861809778 560796191 907011372 355910157 436063373 593846717 480870586 808217739 211524135 639998281 571210899 955352995 185850387 161806513 594473579 562183448 952919839 175726997 931256203 250406440 758295090 183687893 914736769 190533145 696332772 496386545 307202682 326700204 946386433 211365723 836838966 726359303 618381161 969295143 818369193 775554036 469220580 607557078 1683794 356457133 359409152 477343688 966252530 232941318 235439892 940602869 521652480 417828057 808766956 744557621 946777200 270396811 69877276 174406534 302033383 451158485 474675456 74274297 71874939 894313086 728752117 908645450 55996656 624708915 873858399 30788276 961466907 564087917 329829578 147154823 708294651 370740132 518219003 828203787 767003960 696899314 767204332 506870194 221662422 65164617 548129923 399928422 534152519 753500884 163278342 109894616 349366071 500755091 616823589 626689400 961266745 184845373 115767843 42256546 336128046 457690576 536675265 721232795 753817111 587704580 403885106 625042235 190770998 105105859 212870823 515390634 934152930 695162345 875729058 272880243 462632496 729818004 895765914 282743151 72838563 59360167 82029290 63169291 244270655 478481586 634229487 246508599 635501495 100621043 155806101 30416079 682757867 658963077 198519474 415059350 465189418 707930951 35594421 636792944 185186144 389000852 198934831 215752414 145203453 33551431 461832424 823112525 301795500 100384463 98763773 468115987 231802899 214490311 401629668 200695746 229187630 333446041 915544889 501747397 161232526 322798758 999664351 693589471 294981142 135974027 28203385 619487226 99572459 398239876 472687777 848228836 946281328 782227240 407441028 146608053 616246928 718305978 133073866 245275590 455129369 813381970 740319765 8068752 712660430 382235589 522507488 903235105 603676429 122222698 13138917 308983757 285122485 582342040 56663053 785190062 640003854 431632229 527130020 879299558 296812472 483565568 344030925 554458709 375682612 94373605 109765592 788080120 200147459 644604462 339419663 143341574 296760594 257234940 83162390 552025952 337893859 629900131 144850899 566960288 996031759 843840544 669163880 892190634 906522227 653543276 132002330 314060961 619770698 693012237 132019307 414987526 509268619 276726863 222411812 543120501 727534649 743828213 782563664 129720257 773469985 911290308 132568151 120205694 652090725 524212141 453424684 907463216 613810220 162500174 513227208 45722760 704493578 253276607 441188096 886268806 673236478 32574217 612776041 671525382 527218798 924695405 314857978 934686816 349035182 963413025 569737845 26022378 855883096 390670944 441040851 715168400 568656948 303900619 396755506 873724010 69720737 747190869 143269123 246471075 185978342 280151821 547118694 341672978 187057470 612004865 861657894 623170520 137394837 974548151 209757721 696130513 53121120 32366468 756107730 415027660 123120411 848775450 170588368 504182840 421961931 888996850 318011279 734498703 597636022 729118508 666783962 656703156 515557145 187148694 322238025 583286321 292524954 100707786 47673716 959165018 80300876 560680468 167876361 298993465 949167789 636502804 836873165 801061573 287738406 910338198 904738358 883494594 994881997 498045708 574359875 873361807 526888071 265255183 977327471 431917177 912385238 832320679 920797930 283371472 612043221 646653803 196538657 752177654 129689641 936483891 502915192 7911971 912548970 944117091 637747308 750676821 858475009 356591574 724847545 150923685 340599063 70904762 899744100 565019977 125849957 146246218 251052144 664435084 931070177 274076001 627512478 960513335 458381450 584872490 195452593 183075711 568989169 54462612 265229028 426631976 412269747 597105673 755720129 575703824 5536341 845666878 871716051 852672401 161151654 668290890 294235951 870976951 898023910 813365669 803755105 438521 503599883 29044719 478960324 347108824 4875447 200751973 90746757 834759016 306926674 191626747 146810233 349933272 59345303 445140377 543807047 123806971 756032938 505771562 116939638 465055076 571477025 760811109 886495769 186830548 714280531 292976826 951397992 611012303 224999277 285331252 170925416 720373842 538530477 762473870 560680786 733760821 994631514 776025629 190712331 800675569 977042380 1638128 385975585 152498764 902887528 191216698 725754178 324180563 907426217 294275999 884833495 268714594 390336091 628639891 638733498 678494120 426906533 655541506 626174717 719612828 84943839 313696540 31519308 351029516 226254343 408391994 52803095 535106353 148887020 700048813 328223369 583590463 308964531 443742713 698428503 330279829 209689178 721409600 616443333 979607353 220999262 455024523 456594910 232354081 978848342 178620900 169249826 387227718 343870177 404728561 245714356 889498262 804203894 239893229 703575336 149452194 970136489 991822752 736111034 178016922 563551349 589725914 698511996 908595755 989753528 690599514 905142130 647052041 468241740 61436040 972228195 536763762 686167842 884667334 177345576 150632462 602216600 319652817 988213937 491806032 73546135 257391015 777781005 18347972 537820996 633518676 344831714 252432663 687351104 469446776 476332710 585232638 979009223 50495001 517116738 331301841 82619678 241525305 600264780 584888360 586558801 805750993 48554493 536775558 371112006 8124044 459716612 222664238 317359871 656828266 860860455 217537610 950329487 146379937 970003 454538503 908378419 419389347 659040022 232324653 796586806 577877286 521982063 15207086 645759074 403935435 332211460 629638934 401877693 734648134 854509325 237273657 710506935 806724103 864947718 757741592 507000068 192785665 16959637 250251212 281404278 735552687 612199148 790162972 378457597 60964394 599290054 511363937 669488103 625660602 291851546 174119978 966801056 587736788 761844200 579159062 993315405 69415909 555416349 974920144 395731705 451277415 541444156 182352550 881206695 712553914 744156899 99381001 131778604 667128684 507668799 14215924 144215784 102988327 139688791 660772919 916452100 394516457 377658102 917430242 183840962 561402035 612676965 73122479 258087130 575705793 99184372 129808365 197011671 783745023 422240388 271571489 233358722 793594080 177160563 584786028 500037788 22890885 141743898 364972487 581458862 279187582 618328134 226742386 341129463 80527160 186237103 693035764 392434789 415897350 937622132 896976010 904645726 308718917 871757302 6552965 150589 693876240 33366092 853438536 66629011 876614883 512263518 239465060 560709632 418502571 162175945 424431037 876967625 257920794 863532813 677384951 816816671 288586280 159069393 518088564 467543188 469653963 351291110 738081530 984353449 148116574 934326448 269659733 188790715 118321399 303075965 60324188 628009783 766468026 952919280 295118090 281455831 29821608 829509939 375988979 213003873 12199139 327920751 262843254 309451160 762231400 516034103 224712187 210605926 951284717 129681005 558019015 515825261 114245213 451184469 321835680 911208436 659125832 177403911 861888270 219834549 206216505 688081420 790655569 468877036 241452601 258342413 212570415 897331563 374824784 770670674 65366053 483812510 42917524 379267042 597409261 869714222 833164824 802759185 805198823 77927572 812964018 89587047 957072049 925201421 356203451 912128438 255393861 946719612 392199415 102464044 382910010 438173213 600900720 762013389 605092683 613421478 430739953 737464830 539179612 717340419 68709409 733996105 497846184 70299045 795748487 214071732 383596759 787476099 190369861 259373251 693203430 142433711 867413261 514898768 696166596 768979907 371226538 12589217 103537963 942217051 919502851 436534790 268453832 467419486 55318089 605616707 192557083 963653292 220132708 760385325 38546790 770122690 504836486 683260483 703706739 212567801 107262751 704722430 701099407 74174421 734946087 106733454 941424164 711524780 538466976 129893505 482060616 888566946 131536058 369000002 896834651 190517506 788797975 130827639 655532573 843847058 443934390 871785169 997007215 899552534 393388149 767540594 140589524 490775875 247441441 420166532 919575647 164267910 323299575 777769386 257564821 381982963 249017165 861028627 553741656 874774428 835154090 121057785 569432537 222466464 560691372 159398736 590535141 443944490 242239662 552981006 312755914 671904539 308929334 691024017 247030468 687261971 879156587 685138737 805724263 544158620 23698267 39425421 256929898 925745600 786773078 492272758 780007471 544601322 71252695 350336899 135737886 547587863 665360641 321678483 375899416 94385237 572657695 72015728 136678206 686194853 170272584 416881198 125056017 450056961 104962431 500685455 342114407 21575206 503642694 336691059 962454905 491933325 934553439 25586911 714263461 693689934 175830831 401841726 12809434 46799656 309497089 603177530 843059968 982323835 209467852 862354894 185927852 4183055 298618822 819982207 693787518 690543732 298365648 942635856 344288725 676705638 842534431 900533015 907579172 58908988 533954044 771674848 198674781 782260594 882419186 776328322 711068200 587302342 506838694 143443242 721717160 773290826 302753508 905656544 648582465 546179341 268090768 999260301 364624249 995898746 377441870 656519622 300542891 546188082 726574942 671645972 400843499 809774665 411233769 344270909 199745258 547267077 730295986 571883509 464679641 42241289 949893658 900355662 471138322 794170448 977539403 865098297 546174926 790689385 155968857 710998763 847269240 928575835 915380344 317444468 343087902 972215599 480485771 49980654 623126964 537651278 85130058 925642699 682256946 182622 768501535 379085575 905091623 313879162 577132576 686644841 637464524 931624154 528396850 821592780 809878197 558631359 376518176 82952282 766337401 536991788 260447931 588411811 423240937 290335769 906863530 724258221 577328667 340217412 355210074 484942287 782586947 275727547 959339176 22245841 817253073 377337839 88695229 165756230 641441210 880148136 774911050 276727795 952647978 533840234 748846309 519471233 25731638 80983970 497672558 930365226 534829079 983237813 844329596 400416795 917865385 776400515 124049421 6998133 553211934 126153011 625155147 429876557 638206498 738812520 423952671 201242436 486553811 660672103 846455184 697733483 75816647 16423314 217121409 514300131 864492364 472740201 227036055 151154345 589989084 913412110 606442153 863359358 323942991 877997110 111452858 426735513 736116419 710613705 841164330 363562032 912737378 523936400 580450456 831095074 111598357 156962647 203819857 96371997 876685146 41884496 933842234 31696302 783429631 826619007 931168810 814098710 956283914 307975635 338426738 357125385 829574234 850585552 828394726 321561762 709332556 972484991 787713147 307052221 873300551 319692876 85499484 586002069 28915812 736023655 291120796 29420631 522198683 548118352 441449286 393077464 22617230 470472281 19491968 815268229 995763995 399511495 749180546 84246617 305067337 407066196 963505606 921059019 44322794 765799891 931475257 906739706 269364955 77052226 508380632 387352252 64377186 176707355 591052403 353183393 625302085 372197958 410544778 479254186 502980948 348930314 185851303 958873714 206150192 674534559 25731773 175502679 511591832 544835504 62802281 952345465 801276010 620933986 908936849 701792439 963815206 317277436 616543929 702647782 492894208 93072914 529171909 933710555 738748986 6146745 475489855 525683711 616182019 958859674 947622263 117270339 366348454 4686640 995459357 344550199 257485210 549645480 747541007 116743399 648976812 268636868 782924173 400648138 182711372 783771499 419439811 256584192 263615292 409157693 854113545 828892342 718741039 206829780 49625500 48002559 197680631 278575178 912344211 12630867 492266098 127260158 92470825 701544291 71506414 148153442 399089758 681503995 520277674 2973337 331051354 530377533 292680068 34845032 405887775 552935913 486470857 43149124 878408594 685792030 330440368 799883167 117484295 669589728 789515470 58221215 16173480 955816053 918425279 130107421 777220842 896283031 374897646 776015450 184228780 722462439 371143448 43388751 74880938 602575521 474501348 493179979 779455251 926362422 795134491 160173505 856035215 233492015 488143070 977208762 532080469 499130695 995156305 232942816 298238661 609182408 245827612 835991488 728216302 171676347 99001160 993080191 956055398 828342795 398771076 987654640 310152725 276660976 441783245 385072621 515389326 598785941 77234924 446002108 20947686 754379854 153265071 966975538 840311938 44295608 730802313 540008691 630186281 417935166 136856715 812389301 217490588 511135797 571009463 449095492 302183992 578178289 278936726 369238441 859468839 160854321 149661585 554948980 449828657 592393549 669365019 893922336 274240863 423725413 386790962 142437530 371117698 968487774 542631453 438812142 492403532 557165393 156556178 351898219 557130757 65819384 771026294 569419713 715411472 695265419 224006249 388265459 118708919 727207912 474195818 723788168 598731855 453037509 988609089 769093975 225652116 281243493 209771071 27371108 791841870 145845281 226684541 626508869 931194901 9771821 933956563 172154316 99655337 953284709 299579083 22026310 956373998 127078379 739315249 487965768 651453222 687558398 24497369 626205289 663560395 104085207 335921713 731408888 823970850 577281368 409663099 866760682 964522049 694323655 502456692 938936852 812653762 17054074 99645034 651942678 478958145 744918636 652761951 609201381 426517140 894977944 261187648 436261519 215333355 656822110 447068277 84353476 19963641 61372599 473741270 69415259 956152599 744321478 367074271 830359895 492252329 694066168 449309606 952758213 218153692 997695699 88998714 46666762 283031963 316831069 43212160 574534874 450193844 176975156 539977794 57428501 753012429 572844189 808552974 837144283 280039460 201531068 633797160 855964963 128194747 874499392 293395979 549355740 961677511 676640292 490064512 747213137 669474094 886757052 991596996 675904797 139994575 699128161 550181420 343854111 64488555 593837180 606356311 910723734 208349646 886114819 96792160 499196522 656384023 285696175 540257980 800014110 774490467 843865451 735767442 643241833 440999433 944598274 464844448 18218810 142608563 484641673 35689862 679861881 99168720 121351099 950736156 85545941 120894030 83641451 358539958 288777458 79165808 608266533 741094796 919067288 311119286 854722003 462436733 495798705 872583521 76215146 124719213 498229253 555378457 403068045 544028765 349851761 581831303 690714556 937361743 462267522 404288650 962695819 340364858 325270633 655590624 693738051 543603698 869153160 34769424 127916358 993086274 887153094 779355814 885318374 263436874 351912742 281304152 601118029 567285677 6347179 479025356 250557970 269028345 697115005 932226047 779254014 880964951 305204452 737456807 510751962 682126705 750157837 434253818 274096119 481156791 429889857 511955515 305727294 490460425 635693262 669507765 508751054 136223274 29366472 923777588 589490645 315978474 899048750 556242740 349151163 994223876 555274252 720171292 710042252 953580656 793510712 967366566 581351715 317186646 799997504 416343010 48654587 557718799 28496593 56487476 435768717 200478179 832993613 425866427 983482020 923077708 901107524 795728390 13220596 737908031 124538269 718025845 224207265 320269774 951235853 345881638 421183486 369537426 731147552 639657478 723633330 724907887 919551633 78305184 899026883 39342631 36093984 882261741 451763810 922557203 945107546 490534012 842965544 753063468 887493984 373484755 339310151 801586638 574669346 333979170 472344824 538194171 48072193 706875380 923063302 561529309 704973371 347802363 986369859 656965494 896339213 245363910 126418350 638955885 492094888 918292391 221838414 629724395 814872445 85907549 762885751 803746243 798560775 706877437 942518858 242679285 699945919 187876613 251644512 636736808 611814790 514360861 414108341 724570716 79183823 14549868 64248712 568785069 333600527 340687608 140236113 839743357 668787164 340767689 624552297 846975754 664504980 833946879 957954617 933710319 361715958 916004610 264946609 843533775 282589379 451254527 627740342 896890414 775752528 346231034 578010635 14807208 326581274 746652918 746892217 852423955 823214468 828483626 194948935 461469535 825032400 796289983 413453791 692105788 363471468 915202915 90826177 711131636 647168389 406774716 585839165 772262105 85553270 861059272 244771379 466547815 410073927 821581281 205967030 637330307 785294152 329913039 376316517 430439637 195853914 850309530 724121561 887997360 950286657 431633992 124037165 349778659 142369066 501646368 320527197 875512157 281970302 842581379 796752406 549630431 34576644 768454608 945900582 601155073 289850919 746643342 255533133 797867686 393071204 783741358 671207528 916378848 549415182 183624779 674371295 540031837 469256511 895858727 10583418 875422869 392949932 524648008 855306485 754699893 823567703 226146649 905376476 744038658 225140541 283505783 149695205 116467657 132719707 956357704 547651778 89527673 310610031 81583596 165564007 429674014 950362737 898918153 837797298 887479146 776497259 898778030 365537006 684747551 853704433 739919583 114757979 441895804 940576004 229876881 460500456 388488770 951960070 296417222 192979249 761940186 563877306 17349973 455042696 321693820 85259467 100882998 255580362 233865775 840399814 776824629 593774358 871803477 739704444 676668771 390100747 190389832 721165082 238289785 255542028 770460848 342468610 670220721 667683800 487954854 941823652 150914627 285034220 228958367 86726026 763007004 784308501 515458096 388900486 773406702 76134956 348826557 981252683 887719768 968456794 799084854 453650457 942898985 834516029 469358559 433992574 263556681 656427437 352471079 709795710 218816282 735697575 441864521 533423357 447811587 905547510 986431298 219981882 325631598 354441966 465786470 544267090 683780096 882083166 688029007 552435549 182364204 22228733 322084089 605283299 698942715 957818047 19913292 981499872 939101072 18291212 628095694 804912351 219274108 999710029 545176414 120442450 474645104 611603045 14489100 414228473 735827008 284926441 370136007 532677058 388802986 477736258 458091182 24252779 628680204 983438637 607263081 232917926 941203693 848076510 216151719 740740545 501314866 617388253 29601031 672736916 902683070 889445036 150479916 516821392 97151184 872822049 439593339 21704368 246400099 726395139 780051042 816873597 83844747 150918027 368565569 450537467 795077801 749013772 476652786 386054431 684859435 320184991 810905399 554723866 740936170 685354346 351696691 229742399 854012071 173295395 657839758 925125615 825624957 317185135 280857083 937604409 845129475 848899517 525882724 122790398 528195079 59390200 105395368 620610083 63669005 282137841 598490640 201127644 579036478 892892790 922742844 72858195 99683736 531140834 756216448 26071126 794407036 955536872 630490707 770866087 881700237 587675566 530019394 870657290 519097912 966928673 370756602 315521116 147100217 526296802 435248809 19595554 37064196 648191685 529336801 811156475 785747473 318604027 307461517 361667480 679277236 874862380 116401548 474203790 48177009 795289997 153849602 943344638 976731056 277960249 779089127 929201720 310961449 262796914 820669087 13258022 621791998 92683403 556266215 888470891 890408002 605900188 911581097 511997670 797806286 950379783 825193758 639144452 927941750 609352266 620805066 145746771 860909332 263801314 201374376 528935224 497609324 286717321 353693539 609206269 705494796 904623794 318171200 123611453 885125394 66498893 688134192 959806852 266088086 432777908 729894241 659748725 225303946 638051993 68991105 277918644 926045927 908259216 343493398 134415426 532862887 879468119 945868655 364345758 751214933 586893447 467861906 88560108 723289629 880128734 889322853 303110266 30582671 700147042 788669467 148414476 415136706 373188931 681401339 216890801 590309440 725149803 433831082 613138514 270850227 770308609 861549555 898512843 561486886 223634176 773134858 900548395 33504439 916440774 591177059 758384973 780384828 828776787 908230283 403223877 296801760 628583951 609835100 905042644 415535764 552376382 597881472 124470062 587462826 438662977 188012691 855258781 907124941 43322406 624560309 89279237 585004211 50132904 442142369 633652663 764347173 456577838 730418291 535045852 612659204 613388733 424915925 313823173 770967073 335019725 168993036 125485020 275694154 215197251 268277687 429812434 576829231 263035259 45697584 68773198 475374109 196636947 80997350 797913591 49594806 800809774 781595877 180758867 957450322 457759460 834089459 627709330 846719617 458891523 651880046 890168308 857934849 639377469 772578466 419622842 976324884 122060893 864307891 805183265 574584762 303075249 73482403 262122262 723108082 963735712 737620358 653969697 242110118 870101901 387575197 227689629 514732701 179108284 39112419 102661145 732361893 790387844 601889743 423866182 353184928 25049788 398245584 67232902 125261317 145628642 447884556 573406652 542554507 973323237 951122859 532354562 277742071 101974170 399931784 473707209 76226652 307484104 221247162 503418438 122102450 130014061 188000079 106152863 118021236 484253590 444676677 151032887 420968041 926452556 453729562 267709135 255924940 970640843 626858719 317969431 369212884 786879057 514005424 380417787 726547644 969572421 895372934 228398726 662379237 407571 552181565 702721394 112692746 521382812 926125691 995453070 535391249 313264176 933959083 386825990 9533013 457815417 457494973 348323853 677967141 801904449 972014604 221436451 776512139 791694130 37955441 174662203 786373895 675608069 847652016 90606666 791818885 363337257 597158516 380283444 84929876 827166980 988894021 832559467 41305949 702947783 807031411 479186931 168073648 224247136 528918801 311176229 693748407 374113618 562228816 950928127 208536066 478599858 594495804 644356300 232980139 792114881 153194991 475717305 633142118 486725959 983153596 828561940 972498226 517742354 214954906 921367119 925597802 192678643 816612551 497633176 549039681 462631374 407319766 783894141 535366382 704204681 484776469 733409858 591662884 524063047 956148157 645554573 316395295 13385644 17005630 706515598 231167166 567907113 250975970 201230189 823307237 23775074 317051500 232875133 715682159 15256661 760285054 657562051 896501315 994762674 764133496 996908453 758831401 227467404 65561239 868868890 790391980 926878642 974079391 777045490 810117337 920433992 934456095 355913099 314686284 118377051 378923921 489617784 497341258 978383501 273934500 498929408 463778986 102683615 879904948 477250371 411039486 138280722 928525935 499612806 66784919 582624004 532760575 111926764 828759235 962462913 593413190 699781840 952228484 620094274 503891367 757328515 268368539 947856751 833307275 880472109 467391202 145834225 573982459 559721894 72689524 552597976 463534772 565162621 638189590 996782489 307166090 899123300 553976171 160823512 362255937 249971117 91018159 641525552 855231582 665445794 73245858 817143231 301598590 193741327 182489442 113502185 131109793 598953629 861618937 595240012 169098561 65619951 486376921 28349728 58148629 972315208 746009907 395995117 95137039 956279189 551215304 272266337 810530382 357125576 449272019 192899252 570503035 984368245 140960914 836618823 487114939 516552159 887255517 645327978 319569307 741492804 233976526 153041855 232481077 216971399 999370614 961823959 305839169 927609474 332678557 613687021 452296580 604347107 643613821 811337496 513046012 943446617 827516534 657190087 532341759 898907390 594406449 761741584 15889152 776050576 978024452 206560290 444218475 22250041 964195793 164627245 151265733 607117429 403160344 137636594 807246729 327946153 34131728 105686138 773487032 923513734 560866046 442875474 998888561 36231995 866308296 447347567 191412640 470667199 345691921 531262845 139959980 461664944 261565946 479154712 449443991 832671364 180110879 289320211 667494779 104230828 654628682 885768997 379033142 240760228 492246812 578559906 708267636 28611930 851448994 816125611 881108173 333620827 43147346 2334578 49580115 237871914 191306081 777070320 379688423 933585414 650105691 741399654 908861736 842338541 112618374 289992829 792184322 171738300 846610650 132220216 438289597 378671469 880201467 93328165 837930083 310943089 667793616 631519961 316278073 907060522 360057707 555746745 74055143 355241523 731670066 970877558 928793459 59974289 950988686 259494095 24593612 330712213 81503623 477011608 272196133 473722175 975781977 649304729 877534041 516392651 885587542 13464485 484289480 949481004 454197045 566598075 472625378 54910111 826984816 467868574 970354845 189707566 331230513 627644584 527750932 461880141 17736245 259173786 499640696 712536327 718467900 133958983 274001434 679571867 924079764 199919036 250149306 683379030 714437063 632682919 313109569 713815036 184434487 992621056 547545963 339472392 867667897 410302170 21974420 384857657 51503275 238926590 874238637 109903890 99105682 556528024 756066592 384763101 47008446 235063812 706134961 704744460 479676352 645927511 860612832 688641009 309141335 429620770 904235826 609624772 380745585 579841448 760111616 637941198 571377517 50569330 385918 542804782 366518959 675795456 468117073 903973050 151584864 222350010 852540465 187479635 657946216 556755904 704775750 778293081 151452550 361284165 567566816 850710735 139370386 22942259 302377933 768633074 587274462 337365414 199536295 199157177 349869961 952639794 529498427 754487226 709286563 939708774 661332164 603900012 293127830 651688040 205145520 822613178 261559566 147043860 998177385 568611176 59272419 730132203 314102878 116658093 432875270 861118715 133881162 105781056 640725132 426583367 331106236 792795835 481308179 676002350 910418559 914367927 285391339 848833954 879093306 669633685 58868004 57585521 546406602 429413450 357518129 118278217 510249091 930661885 138545360 957680906 444075845 258588970 847321525 459167130 542957259 95202248 484766074 353318073 901481617 538334229 920839920 771004922 308984516 38537173 881546657 445363985 818958467 280558317 328801152 918783635 132473346 629827794 891332248 435635323 262234812 526353919 430115858 629770480 372688803 790559738 988095818 707092260 192173440 446274938 517306806 319722679 514811698 605308477 913162495 418447768 1201537 590556008 451664117 506516228 434244215 632556911 338491470 40570467 431168331 66182671 515512669 920665609 621883534 955348082 173008744 288379882 182238213 298602594 900938844 11775545 819423214 642843326 84807195 524052179 377948098 879370149 670728884 68725612 14809882 399396918 26495845 69912410 411263936 787381544 166993242 627090693 936081944 513427685 616825512 362447004 625735986 347548162 722165589 777176463 592418345 99271124 666106494 842123769 980526616 927183043 626468164 950516725 518258215 30481391 625409426 875194870 465821667 781326858 110510643 291398427 218816616 753470757 594982628 478343739 322972017 579737450 649935774 84494583 648102162 248304389 633693429 494686506 602834426 344786830 432974724 159136563 363923057 647886967 838506468 146968702 53316648 89930585 379922069 618624841 3044218 265699411 771614211 842044128 113999999 333164132 281321241 987714783 545915711 332116546 849958238 689839289 616875261 530501877 144614792 285871110 409859322 233552143 822994051 168979611 149630720 492543791 247921386 999652641 407190592 667534078 293898694 777469222 901728601 92417104 421409340 845009630 870697428 247130358 479322278 300059857 873135951 210431972 158988910 879371940 472008151 10369884 26448915 775926209 466583687 157494997 224974582 320695380 168045730 417395585 265341022 993778909 446198335 565009517 900520809 516432768 176528850 861766294 884456474 849519843 530040178 120793892 16502087 165688806 174998312 531010475 712080006 90602278 52371557 771058683 642343110 355994393 780013121 836563855 264644743 69584196 411888347 138006523 503394729 296360505 492090114 17418258 921852724 110172448 251883926 610357914 74601704 59711984 731108209 238880980 916480937 88057081 647487828 946582919 682552820 97282667 962189592 180717417 180525658 535286439 966688110 420005941 401853480 138595579 102827507 490986921 41870736 732777080 251796047 827937702 61154300 442813097 398670831 662314663 941248593 310108566 925866825 269675724 556464593 896559720 55946632 278550221 676992234 69595454 573184561 141358641 563174728 237522032 116955098 450536132 131373182 774214596 311382491 458680715 650132675 892375368 34518688 81586484 22496530 459238273 774424136 389261072 449530079 259923654 763220453 789472367 763233029 895901377 205998743 782826636 430002507 132881810 26031777 250112664 555932541 607202760 125346425 354868384 248478781 691392865 677451385 629328457 961188735 255713975 395797784 807753545 752333812 826117596 290346949 872097330 206193418 882942913 571235820 177109715 368428924 305259895 231536620 987128346 476824968 984508270 655362291 167785673 371555803 558158043 151847978 26591328 997084887 599342285 502289105 156061138 319424297 872289070 615288908 761916027 672779642 192317820 579942963 58921940 157610891 676653025 931668943 38714755 931516172 905068377 681357958 588705670 788749786 294751410 970441631 173039089 8954546 206995766 814965414 522018894 627595457 394639368 877824737 422433380 406797317 62941234 771623835 286486919 990107861 397592254 795479710 120376217 10166633 709713321 516728024 299260004 35229075 988003862 256944856 939443169 217298002 737494905 294493260 880445591 86869054 68775713 70501754 991282020 12538557 926481056 14356336 303629882 635610534 273400018 506777995 358145177 621697770 991685001 878787788 751610492 31383205 738348274 410140726 215975554 1653677 340988084 804103373 429426464 508779099 365775927 522415113 350007531 79168692 446562052 342905937 440303142 887334204 27303374 122228768 712379197 942733390 564078415 49862751 520793408 228804299 503075996 430892688 408787964 346748679 947351867 279356297 952305014 946984271 435133191 363172301 62698743 639044086 311237393 218445829 233975939 850290391 886921207 479687867 586772803 278736404 526573469 749879292 558022009 739261271 112664401 220775968 946666596 750344085 699495867 742590983 625069623 843824443 151890041 76584355 282620475 103708471 987149286 87000308 918522575 197913109 649378011 206460042 955419696 858551854 718488154 598049556 468079999 911404657 953353707 390292885 434266990 760836418 558218002 738118117 208625329 175734766 587389978 246742103 110125127 407112880 683531941 384173421 455048781 155151474 928110588 578958075 36791152 221123693 354253309 271243846 614601228 957490098 668344780 160564330 191196865 431144231 467827380 146939801 778561042 456106359 196150358 933565724 438973128 361729492 521735702 301316049 619395511 807375100 295236698 300789662 521773279 858765896 33707887 498371882 636227904 506465887 610929760 198685453 527264186 656126821 291059326 635861112 915767133 603914383 290295602 367258487 985026449 688580398 976154412 957206109 214378171 279298343 557096284 796106048 945947604 211539664 93938445 662430047 31396125 120044989 438911220 49744107 687258416 60190311 727547505 199678716 121232667 806010802 70483563 276157647 918033608 544516000 461006692 907055483 26113766 920505750 783312 830234173 53228939 816784453 670217108 522648337 112701520 976938859 262704100 447416527 22005144 549414310 682301183 960813021 514523466 975728704 377012445 305004548 935917450 141158022 933893937 913768180 515746634 964520840 98147176 251264185 73678545 462826551 113653243 621720366 185449861 217144244 566035640 772129270 843234685 128711198 934932230 487700995 867961102 800223369 664737237 306854578 394025306 20706776 82210291 216659046 533812468 847747874 3211611 883262166 654562759 302912163 428424624 903532364 109589348 340428845 764560042 175816540 69263346 566908496 688039029 650287012 629427283 309545103 503770050 753755695 524924700 489539562 809592376 652127191 50385670 702382727 608692837 362528779 10646437 405698831 898773726 842732198 331291365 897468088 649676434 984307263 151657281 808927669 239169340 232250742 280195612 348997896 656710243 511141689 693035723 123038402 85456589 894237699 550542405 625191787 403198577 883250167 426099084 683412746 973524564 988882160 29988875 95117052 436604850 684966304 599677838 514506641 667097558 310670482 829209138 700922517 418628322 282378723 48681268 204308569 819819991 524211088 694928749 124521259 87439519 881951687 793694183 246646677 486765189 48717129 403117645 767403399 781854701 900899143 108984186 123254582 405676345 135084733 746752743 630353469 776665830 961427989 278244830 323271768 311329731 215314183 649945401 764903367 537057271 3541568 23932834 327204059 286650608 835386854 851145274 129880127 764810498 372587535 942592318 371628945 15086609 229840181 116162224 530011286 595687605 604381936 26420061 562762124 476257766 220150392 277684863 668239828 748965991 400672366 709512051 494556107 44981844 646121042 836164291 687819479 145828718 895615779 366591328 788826418 38631444 14758047 387746063 947398501 260484840 691560195 265533243 679787681 296626149 51506454 44152970 218546816 767062195 366706925 317999720 890634442 646964473 527920333 189653687 822024893 722406577 8840386 526344101 450650985 210522766 168102416 540222891 886643257 170050089 643500150 90322005 356442879 486662000 598519772 745533489 162515398 765303914 8502529 72710702 13603488 160697703 237773199 388000825 96594317 992008733 738504414 693501571 269192199 537805138 859147042 350016037 304038610 659328282 164635460 861166230 496088588 659435657 294242358 151679570 15236380 593114818 976882543 924841784 373256054 699229980 291923349 997754094 257872840 91877254 424552438 898429527 217523524 743239340 606212657 381952154 416431518 16617660 508151406 57189334 501728081 337680479 358172744 83875178 615135667 559965535 222989238 420839070 850276412 645495257 17030002 154562919 846936882 916827694 829739224 32163857 982916336 449355660 308210774 497148913 145140489 6364202 471359313 735848585 129323314 992033794 537788609 172166145 952034602 607413919 334015975 445634998 401631700 452273135 993134144 800949647 182612379 769405677 410314482 566794459 415960379 286503514 876621171 881310101 286486286 663251806 613314056 883515876 107124501 921023845 998125847 152598112 12423454 480822125 687686941 25280907 389468562 416823046 846599091 411375709 141317920 876878959 21437009 659814713 553269263 6154719 510320231 291066946 967239153 216561101 837846778 712332371 991506998 687491286 631881831 811455327 524360717 553525510 466233500 105921763 103781395 179847796 356867716 29334332 109521408 189467695 902085985 319544640 226517603 728707677 759545764 621194925 207823495 232415503 276198499 999584073 989407375 632650268 241978616 304652174 742126706 732597231 764429041 233314982 257154728 163458658 158887337 888544802 120594180 292774067 417077595 12519184 511509305 665543055 142548607 736738370 426655797 69620020 814689786 100947732 407780033 405597729 392077744 707466277 558725411 281620306 241849232 41276538 268499498 69072584 629238118 665192111 532119679 224375717 622660704 499142167 877686434 558451889 885840386 678727228 910269696 67879097 489823191 532511787 309655237 406893988 853892093 475162586 536259197 222089631 692465105 747058148 47265018 597525383 587020616 669528330 457304516 345201929 507324254 164273559 966743983 402118993 498338067 416956744 769145980 397397211 655243014 269807295 777894379 733931529 183241390 368364080 882620100 978141642 472010019 618765384 802054334 972263488 951040603 270050416 662496700 733468719 836011448 915542507 161393049 924032199 63431206 892506454 358491357 899994815 452685830 713749968 125897213 387945313 43800725 264797950 42886021 314645600 83495950 462529811 783755428 650931678 432680606 328723624 721107435 228264006 803408106 299080556 612326628 145123983 917530831 301211932 102403150 324251270 100757978 361928829 535971592 518305122 203008612 554596354 131452118 85926610 257498242 825065618 651366343 389780886 638508343 193975364 651429042 609156174 306710298 559138925 720216250 379600499 637846398 638289088 162072356 540391418 598939922 662355736 982403800 990562842 415646327 907095998 580158615 13617961 25575013 866286108 952003622 389933094 825043798 14253760 655406348 768567600 160372507 266125242 497346712 20021225 566018576 497204875 813589986 899545865 260255251 69116754 612890083 421249539 65722543 615029126 543404943 876156136 485136798 856282614 129031447 683902429 316011498 943653633 492088706 465985578 196965010 733567890 750860022 604250322 982493532 608158067 663112693 661887529 165104724 770341284 114609327 693271898 183582449 118728954 624205516 454655789 472270191 591254334 329262459 80800462 993715253 605665317 438661598 240897266 687774343 716982266 496776335 985388040 840303214 583124385 128553948 544911998 51360174 498589531 644125971 872589518 135812856 388798091 296452276 673934342 737960990 731644240 553311558 751620160 85931647 8014684 148621533 754977741 820678333 220884508 268656845 418382960 571036551 98525600 354449578 627974574 323577530 947614211 377322785 616733156 509924001 47486384 75328088 897928269 297983877 942128639 5693731 523278422 582411757 657873495 899361918 45453315 584868424 339064082 92828458 682400333 815554414 919252234 27000922 580066277 854233947 760841049 84233211 717321754 864746417 929219806 142065227 839355060 299267371 941107410 152609020 600042223 755973843 914198055 408555545 649244099 725425356 325069794 33008436 402012406 825862058 842735047 583281952 296315898 104953088 554166830 136005848 910969113 964883053 500324543 108179072 692506486 774385797 838165068 500054607 274168461 527881937 531315032 379412666 542081884 166071895 889255942 897113916 285932099 390880160 743978170 528620568 843649755 651769450 571193546 325510709 209144140 373479413 134251326 655606314 854574751 728229767 26421769 9553278 468524746 400939734 929744360 224709034 617111856 557775430 413196475 10036128 87608295 725112329 356917742 355073401 881375401 1947757 490252668 103098121 547642738 182500030 982072301 906066565 443371425 654094216 528038594 268575926 175605679 351881561 64111379 788271548 245879675 887112188 172629255 399757854 99505602 352456169 174415526 237976630 943715498 159929227 382624102 520363163 308747597 973293436 910076346 152856853 890340672 384809186 199715452 914184557 165658403 21705326 294605575 52308376 191347818 935964669 70564389 721395922 126269365 173949083 329585390 470816637 353746431 660420722 172530479 576314438 957900033 818787735 414928653 268603417 784409996 394283476 832379795 97035446 514090473 833313959 69799454 77872091 27440839 876599334 818051126 583769999 162112754 228005732 505946403 417612989 720767498 866485130 503241945 228272947 931740930 105974135 939944394 799224701 616682241 262994000 372003825 814212798 352534037 560221119 31491095 699201705 770198195 644039437 567162445 403573381 746167806 706244060 960542834 87960053 783806795 18636076 286053083 696687402 517302169 139714186 564546399 904293841 434075233 57652300 57354532 691397389 75459190 144631035 570240048 950705753 447003940 587814390 885295832 348905925 344732062 280535627 49740773 54968027 179921864 602668357 911054890 503161255 390768035 782400084 862837971 20075503 686067235 792964498 704527953 112823751 593766240 475209445 408423500 692194991 304127503 505669167 820384686 820269707 514385985 246619354 573073323 38453065 162477399 465774232 900194945 368316594 296115484 239322417 31271065 781421607 315500314 344265422 596196243 582925248 33765247 35691939 811400909 284957530 423280702 182637440 166646660 951568437 205230616 962506667 791578867 511765066 842732365 397898623 832837591 38702347 11999229 123389031 19628928 55444705 743673 948651568 352811875 736661113 568081681 525577997 732459280 865824791 768358076 848320173 862052368 749236389 387108965 723277919 219780620 942459920 833739694 629430771 104787244 733785522 514430718 480760663 612355439 639640436 209311952 420641634 472183146 728088815 326783167 703307597 320366903 626803408 898684574 267929075 608527591 514586800 199195651 468334096 305022297 712939155 233621880 128836414 676857096 672513959 761150000 793731478 334031114 328336027 505605680 318431586 602041732 878814956 276518808 873454757 895288860 647972125 680766696 58560424 167842193 307378616 593743361 561204177 28855905 121396113 34580312 582966966 320547293 739725085 515944304 152285600 660637845 873969374 429526050 995134652 113466638 253251710 757428012 559370096 755618370 350903794 294697310 100072196 775602033 874626560 248410485 443394885 8102769 818367509 14778204 371665124 477885997 368168524 839137717 681127234 373016017 449735689 23602204 497551950 352585477 328557166 836403784 750422721 464780210 521916120 100958877 742087357 662144644 787451201 127066700 447559440 476811866 701888994 387486572 760235136 930337154 919709717 227934246 321072498 475715654 739715875 670365811 520147886 24046611 540671924 726149463 758612490 335308566 23431286 562396684 570346842 590849984 455765632 265827169 321080073 815108691 955965143 971273920 78117541 786887079 347098270 53189625 240928777 994053727 622039103 146989460 207429607 799069305 440102429 898680137 118445910 746174318 706143786 404878910 679077121 478654222 213331429 982542018 757956202 697822676 446712622 57191947 427341624 594485839 10466008 816017482 927734274 72933997 205754264 740270490 919687546 994664440 570986827 657636860 398093256 617653462 475581242 942467543 814607853 61119276 204702843 392657726 792230440 818133312 298258588 75692518 203148928 859605551 439549403 600776589 906741832 917397409 132245068 136235316 904236655 895632491 959273278 626406797 176442021 572301705 962848036 406924298 891540832 27217523 360320862 715671305 308442083 415230534 473189163 714341413 169101120 394369786 230678950 198593854 595132632 216685018 237210995 157639381 568675554 883134714 293136314 23387524 801751224 867184202 60587022 30450430 855465200 124491536 115668190 512424847 174527245 631850832 151952405 943087054 126397236 653311779 273183738 286881629 801345645 131998511 319194827 418888758 520941468 248991931 113591346 72053671 460900086 56224142 86582691 703872895 709608394 919491051 880731927 503693095 803571622 916455502 814836847 837802246 674283770 364187288 852638184 145082820 325525108 525022581 952879603 451701957 909189310 429879419 970910776 349753418 45811416 590475302 396046943 121944623 322526288 380323460 889223119 473306491 681779038 429220328 244791594 237358681 230183977 426949731 401503700 691545061 130544591 651212472 529397376 668476295 630943570 234590493 970095991 21774878 855423095 46993873 82259238 983490194 918687855 277414364 554865340 848958966 341395926 556256630 844748505 767917979 518308865 719582696 363578107 466182696 469813616 952089621 178568272 801669789 496947817 846758699 134376125 609094370 776942564 450764580 673046819 703303976 447457906 727790656 102036386 299866469 617946706 375005245 463270891 356853661 983159632 881236218 965801607 177606813 383013377 698149276 759388812 785181801 953269659 45589745 824933188 961562972 430055106 244097700 571606885 804083291 632520264 612799199 110903818 741921268 964260599 155539976 810345820 938669093 914147257 469012287 330246594 940356530 98950054 786011455 602113270 187806670 550143123 743919899 568869110 652131787 826064313 448594716 779671724 295740983 523880988 864611793 355561912 864519135 678212513 399778698 984167526 977103661 903114804 599358613 323569552 599422931 226370148 832057366 16449143 234985685 30620331 538896863 591852883 728750185 592614169 137930752 878550483 176083675 201785333 352348776 617095536 36520209 759626171 637420913 172549199 966116484 144306170 665688001 369134524 705326361 966093289 411166782 41304510 144908691 412923907 769445272 543664938 518172937 854913338 503934525 922993602 607256295 16312018 99125323 800769547 634522931 40341613 945192364 689816388 133819210 593980433 951616474 293720370 4753472 834947761 337442864 819034260 35090146 750285775 593500199 304582998 640314952 122324513 931978684 65625277 740920216 971203078 163730457 188760982 822005512 872899436 227714042 289218589 62805045 378111221 617787964 302751291 642586117 983621884 358123718 392914064 659953343 605039970 367331718 990594860 398334005 958506760 264796952 898509397 122539814 723824922 489114138 413970488 661354434 536433068 398399520 869587041 585347774 548677099 324601412 189922429 139968284 24141552 292743205 146591504 640803903 758023757 95255247 95357751 240208732 531961341 519653051 78725801 641527925 845781129 854356792 704178574 685415222 818715592 567566327 600223009 584752344 869539890 93608479 413080924 339613082 638410125 47754731 262565723 634872779 497954765 115781453 567547886 668381005 962016754 111078763 970943057 570863231 223403916 43311982 317543363 921424099 785736123 915833653 627538321 878483453 570464739 114911865 157136821 117909046 272605080 462605408 897719515 378280472 516042599 356720711 741151354 745786079 440223575 160979746 341529481 85816975 375914668 302627373 725281749 876432019 542425998 986702325 548403758 207182386 249065851 374474107 424939431 900406992 372612995 738783707 229108306 189028850 662357174 237821023 83173679 764011613 635455156 321776954 797399633 115873232 269259634 316960524 80938333 913813477 452009931 689875011 976368599 666163734 499704170 872985451 741727180 822720518 715655100 130984239 623470868 773559895 89545107 998514774 993303040 853862264 509074635 845730677 386260187 66987871 409728394 427957204 823967692 214557976 335068931 875033889 304578756 164444157 479816628 40720409 780240855 422880420 680904850 620434330 545542634 525346223 670186606 537695155 307187601 221613110 860321786 268890163 96422520 147656585 866861433 935065790 162572013 310478711 854495139 361198916 927041439 446042622 251839471 333751991 893638527 934671636 191542554 564743320 646939438 821338946 696329074 348169398 861812963 486863541 944918812 316073759 587217951 258988711 436229819 985449716 874671646 513371896 936544254 931604937 849920325 377925946 390741279 372240018 79854286 976016884 433702768 187406686 798254378 359436443 422052759 442585637 677852624 858976008 647324414 714882436 99828571 693152947 865333884 647591364 770104462 658133048 246457222 375319023 340471455 458554071 230337090 763733096 652891218 115099936 687054611 379517296 107983845 383006989 198852291 159990562 533428988 169425529 581678556 611698306 588272805 926143975 567200891 954769271 931563682 653085060 229309710 481947027 947551699 629115454 495997577 773195693 801616114 702440772 579043881 196205749 660932686 533087797 271421101 972073139 902687320 739734645 504392689 745045126 171228421 809893806 129368898 720909802 401519603 313166540 968433650 240694979 334036950 734535571 105886025 579528867 231331667 395193223 302104385 423585016 349483658 577512439 178339925 434823849 388804977 477459232 117061348 711769876 233201924 572031264 242382872 626061561 220766031 575514303 338508928 81087354 672855973 478846509 249523935 347285366 563902059 229702927 638978468 648030139 170735178 119891648 390211892 755945274 2773521 472084036 860150508 152799982 613575306 242059909 221215466 58805475 423487210 375180420 289376270 332367524 399957879 159980909 946557266 368075761 337462401 915368914 942909124 314003701 367836706 585348302 930435231 265396341 729070405 394384136 562884569 261481890 770623307 428752835 263929070 621601583 780522889 322732380 259916769 725358390 534259859 159857201 445686998 781746356 878053768 661048606 801575975 45204022 773825282 139317696 152860149 188702772 785942417 493872915 145633978 397602169 205637916 614723749 60990856 162364114 787404086 639879456 398945149 298367840 418436710 563129691 110779423 616154254 276279250 924111716 848569735 787993914 347323372 700745404 430996171 89430175 434526410 325166155 377136072 809184448 785780762 408343840 519160955 272294160 380057540 528462254 305173650 274129307 33118709 55621313 766124261 864498437 729277751 642610506 733583381 780270476 540614356 452554537 289936752 415294545 304952791 322336263 713236057 867718522 814995771 312427289 910961110 896903445 132426919 744114502 475672112 53883945 504280574 224844991 56474618 451566319 883395967 93614676 59148363 979019181 403395332 942648631 498832541 473239085 431814197 686585068 132831289 75712596 475504742 144431810 468540244 389163191 979557371 914482157 466435328 500573201 307237777 753001837 545555691 497916727 732838501 121736855 561488772 232397093 918615345 288560994 118736639 372660311 857898962 952277341 666112328 610356839 425708478 305675980 304023511 514742257 308507798 115601409 253374226 737677718 500509029 919673478 93686212 677320104 79857908 179233920 487040983 131762824 569386829 489959003 436080561 594025410 300732789 879834585 775669253 434153180 110606040 66197729 32523490 313871544 354152246 163132635 41082046 540880069 124591169 441876452 388169910 765664509 430724101 929645913 256518923 124585219 469262947 285189166 693722291 42402133 303026829 469629450 603048746 496442570 208679501 377782544 1911551 795156454 842201793 877479202 553467419 193271314 670795833 290341937 746187178 360000080 47872044 932199299 93934751 990408248 671007132 719096511 273114610 193510593 418795958 319685523 569475396 241018834 567961904 935622260 130461912 555995847 903084497 578363848 598556792 796598457 125166666 809025865 117344050 108605996 674237927 295685796 677250738 454124995 363473072 21935727 480814090 806677405 84401631 909692453 417610757 870237215 565695854 23445600 886637959 549581598 459522350 438868826 723217458 751675232 226768508 320327927 29596129 988404439 895476374 227974739 630114237 775955045 351390229 903494043 512128994 957784421 924137261 39910663 963576955 896561273 256644985 480726972 249588770 222920752 46913395 411244843 775896570 159718708 96868451 938672426 159022157 298774426 173735864 937664817 939666411 78860388 631542465 59012166 556231180 717960928 954467600 957478737 20808581 479792384 418396016 10495234 424532656 997856517 616819368 780723113 492613816 8316558 134575362 125462723 192650745 147528293 644467918 380367048 223455886 165598349 23295011 498133904 975592799 454856386 333402067 940042890 932066158 374997254 449170359 621427541 364585282 443413676 455797922 390150645 895211728 106639584 719834793 14324259 240588142 376221746 290206143 734300549 328789381 188291412 743387968 827143083 229796253 866527209 294386768 588122842 883109862 625885467 746048406 644126595 400003827 616531902 446670551 447235413 317753664 99880835 504758894 350363747 116839092 488240378 629946733 558794789 47092402 658599577 60372905 421439675 340857507 463527742 787194471 693391638 80403707 252504017 987592373 12922114 56655134 193776572 61610277 665545518 888660539 251964800 234616153 653567480 224911680 106190172 894333782 111497919 7611080 204272977 600634224 598140499 220217468 384360780 853820458 818067526 65254027 224014118 812319470 259317177 420398030 184337022 800496892 879382093 273535464 276798807 702822398 696692255 906982024 764717683 298443137 232380868 508530577 734317796 553768468 200370997 130755865 173682097 66367172 976943085 520902745 710450867 626684109 889502831 228654759 548026305 614404217 617204060 879442609 214802333 864146442 191372160 143833476 554030433 245753533 182541091 174880432 772056443 130690590 997823499 643848597 838919746 185703368 799519209 506308484 135335956 881240090 121716650 414203363 840818988 175149394 512367151 581006862 806190500 283754122 639724219 760081878 438001388 298380715 246350829 247977836 383659195 391274933 878186461 791564198 233346973 510670594 238073382 437063216 676144819 440895078 678953588 350302929 480817889 137493154 673992807 85657796 69134881 800147898 131720873 194959027 779530169 646742379 11375819 863947539 230608519 234666456 518817214 669001004 64407313 344364769 194595414 474008404 189162282 958181542 509496068 355903864 185805116 126858944 644171749 420440506 882314633 605347384 893493274 490639291 744132784 372522694 922733830 340685583 257887529 724320588 231769279 903685038 963641045 195054655 414708033 557391846 375147414 359252249 409170484 626795326 656860448 998169961 570851973 974202060 876681004 35676055 533645829 608658615 575286331 136991520 538448018 406675519 867225974 331817697 424504887 936275040 138554405 633749727 295485477 67547801 874810218 375224039 147778069 53551278 614823750 153155707 214953111 658277350 179402078 468125773 274429837 947743119 565466243 823989166 548035187 253679656 719322122 315470359 863251925 837831475 442899463 434748646 711454790 983135050 23746927 46691689 606858412 412969613 875704382 583768692 872286538 631598366 81877745 311788552 242749023 880277490 618849139 618640802 271176442 75384400 957678631 925012486 579404176 199686209 237916825 29842532 367637363 86525446 306308391 563911129 526880835 584754183 130253323 344322224 448843799 748152966 930946701 7135906 769026857 433402691 682819280 265991249 796736084 633340339 294687244 430617988 996102385 668419318 20511285 303440849 705798098 368510133 747135036 914635259 493337124 275528605 186711468 551121330 705850786 585330391 108806766 344459383 80742460 495046085 170198976 232010566 321400474 183154882 960525544 78870790 981380207 786009969 152913018 751232955 853212827 507064519 405159153 773121133 656809485 155826269 806815185 783209112 175606258 639717733 6352758 537265865 491648995 455024378 257394479 868685072 54520098 193172116 278017058 392729535 196014149 843192817 7767393 360958562 570232376 948667494 362781639 952255480 898542019 181007456 185198456 850006633 468365909 729723099 264351359 953775162 966179637 132208314 440911921 700829367 517991299 359168120 331315772 2425836 593903410 287055460 113243701 53319749 77209934 10107744 285964603 596103833 626484821 704628491 390455124 228315191 253784560 203302213 474541487 615189663 845872883 62250667 724017849 808968855 338744691 7509609 698329488 677907662 412907238 965917056 81653063 462487339 949589414 930110450 418987292 639711763 747888254 284968620 398955814 593926064 170075251 492080184 136673391 588010832 732292427 376014035 137153879 831653804 101129655 855708540 132760908 718097940 245088916 327668476 950851920 287020759 503009163 615847426 710993 664651362 525468675 413724895 622608129 162645649 309397316 808425014 942814549 473813157 551987751 344663684 633435509 809053338 577772894 503947028 680710621 406940677 281339298 912688150 414110738 528903063 544832809 373367658 603670786 756945938 466759642 654444687 981638663 679022472 66240445 739864332 674541458 967492345 702825413 119634925 979805266 940992461 518553932 579608600 381054795 484244139 518302895 786110667 642204253 782057589 358163575 99041503 489706459 653508188 733635162 954884765 723230782 221801152 822332143 999350934 715164377 349230624 806526375 764208929 129714598 400350499 488082665 349196679 624023086 993171112 450543796 721864631 842382915 777170254 224695161 174171963 501242692 274252219 821448973 728597462 534781726 557201712 724526421 770903830 960953219 334332701 630798881 880384650 286979134 401605105 142567849 286696787 647443746 316303590 102886779 708164762 315023245 646928444 918600782 528762661 219466898 725562184 35015992 136577284 844294175 107506061 752318018 384826430 441318366 573584292 869027796 948771399 22152715 415852867 28297738 299054745 92338161 762795365 521991590 699924594 972831683 108377954 95317618 364584592 557063656 370641615 697270284 366344047 404445446 214237531 578237558 179938566 700857125 428499439 891458316 653647274 11994466 601831650 927613678 889931683 297521347 939891908 953012725 362391685 547904659 461894031 773293696 850505641 870744134 18026270 660860199 687062145 343726787 812204707 314646526 629247791 424710520 801708647 126688106 363894870 433878991 686325260 208194469 5637593 390440856 332395406 353295450 544575739 957562909 350284393 80028117 608804490 305651286 753060477 276847019 104265376 355241017 74567594 932927782 361658076 375862789 594049561 494780234 641875698 139966195 155706306 178079913 501130772 940471005 105278055 971581615 140099607 611223509 112020874 737230921 526014167 658716475 213239934 844516916 156112694 259283345 530798848 840059607 435157104 370895470 176266246 310762611 847253852 806976339 614783296 284378820 682040355 515989265 630226522 668987043 711798870 138743470 184512404 596872299 717919482 240281450 515545262 923454957 309858440 875053900 930208082 913876528 337985900 206892465 185687010 2678790 706224233 809713751 272179632 85030024 389322292 13550450 981969636 625448427 131232130 243122512 803903356 702795109 295998601 893760050 239528170 299125718 187638107 357053153 565760435 442301131 301423987 258452245 972588525 203229672 958576167 487990328 585515335 387172315 910078944 85677723 222240090 854203530 315327134 653060917 275958063 666988240 907627217 950225799 278381916 329855087 461989620 495699258 458361050 571767965 835779319 376491945 13934206 145727795 924581195 45544470 441003284 826642522 361324352 666584879 362267568 721577789 637540913 298448511 419242551 445753561 891467836 689140552 409215832 927634652 253693977 631580327 890933829 512711136 583949660 533938485 719751760 642534239 589118504 383797338 314634370 289741708 441047911 462567162 1299955 662753891 192284926 854987279 15592302 190629379 324132855 915369209 264860453 305807446 562326482 879820995 816687989 610076464 130633546 579227800 549490618 100141637 65138387 52868450 737772594 969792964 960421662 507825556 974621024 16006567 325541175 611716594 293479424 37245465 938439928 590096881 559042508 311204635 928200337 764766707 738736022 692231315 210685261 754765347 277655847 828635266 351008873 292480021 112669651 522415928 723303892 150089323 937434149 275378389 825284520 480967343 490206984 666673286 62787059 819701286 281442277 109293464 982445356 113347034 762398348 206520263 240383427 285174980 712063359 473108879 623241652 493308817 14359845 892593295 992145424 205123290 925727443 453942379 756727211 446027916 284323723 411970292 807007542 178372452 613087370 49124865 975770363 223594142 519412320 891343875 373272840 863672433 647239058 878719642 937039474 984733434 835727592 195152432 178959067 226649641 352592947 443930316 425352165 127743311 693573654 990026271 248966221 445456883 791515035 590530047 652925822 561683601 605132397 670605814 921677916 34567830 359144095 318982467 401397611 173114006 837320093 314933118 495684546 530299433 658305083 461272202 296473433 506694124 635648927 379564601 750170438 560300333 145127262 838748071 896808622 541785706 598760732 839893885 296643942 902258288 800465340 380833897 594335608 249186158 24092542 493030776 488830688 926508822 265112652 906036835 6982095 7230005 570737114 801130995 12670743 989817230 950011037 43772209 506033324 241723544 575156967 680121990 951188315 176681938 669183960 217376233 674288491 379189068 198841492 654529134 688030693 434719598 467628089 167245647 921539977 764011183 140146678 712646032 196162022 261541118 810633555 229353294 305709789 399864463 925661821 99870378 529926901 980532396 381320701 967401206 79988593 575828381 500035571 808226249 355328211 45698218 973262742 228030086 171957288 303291187 724880965 588236593 24839811 214814094 687644777 590470285 928143655 611581824 850842798 108591285 713448514 805861378 82487870 850658137 181391772 431858644 967354790 385503553 719649961 631652567 171726816 51241856 883771203 104389193 811775486 260454208 987954857 588853488 533019431 843793388 360196959 968890228 549440220 452803462 958084976 771155108 158381779 946392366 192965074 69491196 398990200 192238192 551000141 651079186 223730557 708678189 167934323 476998033 274812612 872075786 264857386 24195138 338714613 637625549 990314319 451113196 472455155 787460698 349277649 627762282 630806227 712036984 924368375 867464384 848735332 447386101 830705485 20970502 311665093 988663691 14373991 392230455 131274991 85267891 501202944 829650078 224639657 656763976 467625995 559794125 514919772 942015031 735979096 751805574 999641179 669164794 577346730 224804552 978667179 866703878 329386932 44693695 350494735 323623352 883427688 841080588 429740855 891389987 148330180 567996057 475732004 774365170 414960234 829831395 655548457 926067131 489661593 296648222 553724498 633898407 81959589 906932910 677082387 673480712 517360875 181289327 293548092 95291534 384157408 273785374 99686001 876708960 805449753 715790129 360592309 161648069 735642301 934711644 908322447 402685137 810842342 51672614 736037057 906689374 603957362 534069649 89579253 323647681 567669569 466232203 398618259 274745985 56406498 816656941 821660846 540149738 842505167 986930877 434457027 680859806 706320177 244249967 350351482 402368551 517181143 593669414 564839213 472890858 580573163 345899058 782512787 711976831 446903156 883788690 85876226 844214995 760849498 597020399 142890160 205486642 487257333 406060971 178545719 585671816 850816237 85451696 241202582 44318423 305380546 360384785 108220714 958234207 273006133 175782040 684195979 906635130 641461886 341480111 647643736 925158767 906469598 289641606 491294995 209289127 481782589 582739610 248884056 14567542 278575020 297834648 923873384 376506758 951194823 950012516 664297764 882701425 244809753 73465494 470616910 161057273 41260508 36730554 446429134 140740964 620514536 583340309 503425963 735497529 844247924 165316856 63593046 821237103 80036429 647039928 555411099 835398256 648007334 66964013 540680758 836262615 89500439 279514535 487190451 244139359 108079390 816748499 740856207 666329068 751343512 777780746 271117 587182789 965097141 851274458 948368638 982228767 45359266 840434965 736403971 351954017 504566799 332847267 964689642 141681509 759715029 637077030 500842498 576619176 588733106 609085991 798164727 63351489 5666163 80032103 210136003 706719639 878967293 233445729 637626971 835395195 816461801 192550067 472478012 856420991 502514297 213827195 344536905 166794526 311586656 914405041 773966469 106411902 725267548 369904421 147443681 72689815 338477114 593028798 365579261 316648726 298221654 184080487 933732159 77098554 233708826 126692951 673679471 475570309 707397896 813897284 875907130 912412578 278764217 139790373 480865314 282593588 968906800 136153444 587585878 938633105 146417490 15253417 142034926 160482587 277554270 15652918 1994783 641819878 625064300 262002318 412901914 803813989 444772303 640046198 609636357 727979149 480479875 399325735 573054327 743261671 525543920 659475020 966472637 657796229 173341263 350209284 605516943 314745369 399769282 756468305 791623057 816260538 153545696 755648291 670276739 520058570 242986605 344445906 718293053 122113990 405211594 604315951 471613499 95051357 737157069 935488340 789423238 50321780 85590710 74923803 770915014 729119947 698386457 487466395 214186562 814833553 256950748 142604117 52123759 423761201 393572081 811294555 853508792 472807698 550624857 593831270 976123828 124141678 364756386 859685688 703968398 563980557 448706350 537758955 970674989 314318495 663735760 717769882 938382315 21306521 985414220 568634503 89687657 932835176 498787787 159962513 411536146 504696834 229178906 328664500 979046479 998877110 222662961 922904294 487321239 856798791 313436327 844025607 236006375 345587198 93559786 68409919 340164913 474552008 276765750 624037236 975862066 937434817 616125231 363917506 341104898 550802034 743150646 682326226 577767537 592791856 114399000 511109628 611188536 336091543 513184027 615948615 646853944 393768885 258019683 337373761 986699553 768995418 985180911 106217674 463149305 268296050 213288985 314843833 885777256 666916287 270425680 995571058 630303581 350382872 938134503 446468245 723614654 623589469 258546879 620832816 389623792 811938336 119716492 793890200 694695986 520180068 899256279 576916580 471015957 970272780 906267146 22211274 591620184 518170754 934951274 549306688 764078963 778995243 923031630 485104009 273412117 837787706 385744280 793079443 603970439 403352344 697034855 890166004 403943211 728779942 143719289 3670330 117164967 559480016 290598880 557660115 804426240 798775040 667601400 471804483 746272180 926446948 655480110 18651208 815878089 310408521 686628611 597485212 965280805 678073672 378563656 997190890 409686934 817554019 788652361 507791140 393295029 948884236 951657667 871218703 187541382 762092110 931190715 216711615 274436256 621263493 852820185 752205868 464290384 957277047 556546931 864078010 888849051 286678047 619810340 844600036 335981924 403371311 20663851 420685842 40966522 765236346 455816249 565341213 928167764 976174753 217371971 990819941 788893729 145247448 587431657 173777578 697650172 701348035 217780583 599675047 637011497 52194790 652920019 780764518 421229327 137399986 936001581 40040558 490419326 970856098 404964526 812735076 721117862 648334584 232365720 146946349 795534038 716897911 298348813 857474461 388149040 397121181 21239867 698552511 298834670 404090366 689317427 523429592 539559048 313053069 700126173 850619625 454958048 748785114 806163096 149750885 498580735 697013245 382998159 592751648 66664922 42289034 246279363 777313947 794985933 710044798 95444226 928795785 120046784 868194611 586611556 154156477 776205847 110598800 249985202 518810933 691838535 75893120 658907231 692633490 479603165 892267893 491088775 464017442 875276624 478143944 549796891 973702814 237461685 976906586 232492634 717829815 448910169 394181848 357099381 78578033 212783729 157264546 209498012 226639855 229067196 809619313 263230924 637354819 272299522 689012640 308082650 911421328 232832618 83426718 404318385 42547236 986550350 823925386 920940474 247076508 997967543 255629118 635969617 683405867 109744921 749970544 170632426 818328120 590670670 891540766 924514456 578668074 850538489 151494279 416423936 82227308 636059182 1735371 21759167 661243683 157123060 132704791 96183925 45528474 213117756 568908893 356608497 270051050 297740217 477185672 25331469 486303869 744812601 938111499 333508003 573806546 290123005 134127389 258158278 520069657 918486750 194103287 322225516 704746664 71105353 515966271 812804296 392855909 306272568 882258152 79772742 306326779 704370511 693154759 945024302 312587171 475189851 227372350 336846898 652981033 402759193 500602294 712868066 940718359 942247912 480305753 303736636 507078641 884466257 74523637 167706043 437980006 323178978 942878993 252073783 204646673 913391435 761009027 663011091 404693872 136001717 979255967 428573128 341661805 461131268 474230757 736206044 307960375 106059262 777126337 79107054 953146947 500524023 540808940 568545823 760274104 22075923 379503141 672766606 181818227 415575338 25512617 361524790 362636978 872225046 410498543 268579809 42856844 964207046 967557888 772999748 733273805 91759787 413935293 832288407 964945460 518266198 397219754 389034194 456087913 30317147 415394640 152389342 820211604 213136949 165376949 267981672 174373542 45348738 647120944 484602477 631334051 152788295 216458680 104785723 24687368 54464535 514601936 284723589 933269750 156408355 513236839 681267751 956530358 446138910 290650863 174301123 239119351 847360625 309485165 562811577 689164838 240266332 854884289 44852797 771381908 46579894 488475179 394373426 28278086 448838740 300605535 127877166 421178030 708277974 567006374 962715528 519114066 24290284 771289224 686200718 91606342 247693825 423702184 595049608 600243375 2008312 91171589 891310247 831287463 725684742 428431764 839956759 440978227 671545990 371213490 347235085 24608886 826877829 971352089 672960782 893785103 622073612 564104686 780946709 983608360 517257504 932765833 970277672 144956081 695244892 820780021 757928184 451819 209607240 214941304 577291098 748296172 376373344 708431051 561134843 475369179 583686179 534299781 545943851 514186647 621104184 861711206 995822524 452494855 735577655 784665550 489435441 120858639 718172085 229819778 663400267 492466986 720711497 135738709 821821325 236043547 779331554 140132587 494645882 282718239 189075629 63945254 956178058 227885033 978958592 872311043 677018678 792394853 953042253 104850945 966144309 847467196 721476772 111768834 116506264 406093852 831958693 462740777 313201783 957463116 166011711 148274288 175064883 358613852 177900648 872895093 288088008 40781153 353162468 108341342 533893376 424243188 718738058 975297535 707710902 407183849 832297490 493196153 233964945 693281830 849645109 952948523 325764871 181658491 439344690 27499541 74652654 762373758 223705796 516956714 155833080 294102250 102057441 271827260 308143029 635457083 79011067 514551364 80120842 412925659 297820130 812752991 52188570 94984717 390113152 497675718 978652574 795993233 610844521 588604597 847127866 332791145 283634897 798434326 984705280 53114797 471435502 196419199 809226374 578110205 983465214 410016312 628380636 104130594 938313584 689686416 235583008 46019046 55422567 308139255 27065709 72149048 63429211 328520039 978390342 579315611 660394148 897749957 966377073 373782707 422092437 777114322 430722392 46271481 11504576 314528813 56398805 580413751 524366569 577392734 500935740 540869862 849710341 309027889 567998927 256706890 212401357 968439732 701886278 574926367 7452877 948387634 868861761 539164171 817792128 853595944 965962192 718376794 568763731 412484566 140706249 216699967 336481353 389643417 340023180 364124140 637614510 19480919 453790535 93492120 275858857 537893735 199154939 969960771 709429389 171934616 387892817 725986365 481398155 572845643 660443383 653745528 832996005 485698899 795727645 705114819 491229928 278272016 352479536 94402864 618440024 664000274 338734729 333591796 81150556 435940582 779749489 623252015 7347059 792611388 801050358 209990246 845561327 639313843 27274642 148616434 388903293 990092312 942848225 7870046 394750108 916735644 830397118 16844237 439031421 687587802 305080195 342340538 389550932 679911842 826707277 414526421 960445294 362629639 459573587 427661339 620915535 37316713 264479700 984997067 481137803 330446368 454689052 373394537 515105507 772021379 442820179 133533623 807080301 348045348 679576517 757783712 180845490 755910271 16114270 528069494 738313802 805925396 996652372 456062261 85615437 325343523 971159542 771200745 230243089 481465395 903671388 10984111 266337211 400035392 15498833 659898281 823339210 546893278 858613885 877020449 669294803 824832135 336192071 307374109 677231055 885961429 417795220 720717237 771244958 57357169 81087355 265900763 857848504 979604383 524319997 420935633 814640330 694349070 414398740 730918570 694945731 85901651 555190883 868058904 230401306 257789801 709270103 772106808 637280149 767618282 884491198 586433162 808656047 772529637 154291503 887656868 11695290 610708057 300853660 681221286 809531119 153358019 949068822 701848220 520232926 188641547 651307039 210576566 371092234 315615539 769863823 442979585 958252647 120834984 995873385 31046096 117968892 59834219 128840843 518050585 812011859 94341381 215737874 225477675 36924154 698433325 209608368 148977823 75817556 47895401 833323779 251517862 131614885 774816272 471998380 800043605 848137740 653853525 238650975 173265609 881487519 326306167 928149391 613689335 843538265 565759634 13600798 505624469 346850477 722783090 41375028 653048341 688859214 94738198 278450940 858139968 189491459 377357215 100206687 910094125 223997382 92863820 498056980 596871497 862932688 45452503 486840389 925424699 28156296 798304467 378843977 384804648 328983046 315577278 833070183 742702803 759816518 303346778 898117324 996648142 344258299 694793472 157028996 423344474 595060207 501405980 159104566 335883966 987201506 411204792 150886907 456233708 792309815 645677926 440802669 38473903 137986696 217247070 122247292 156289448 113251668 697010924 837211727 169527579 437393091 226302300 416447033 362105205 438713321 388699416 692782400 299386592 425084614 351097398 865960947 547300996 71032804 920235867 33138704 123466209 924937995 867607246 719482508 668937108 18391888 977433609 763324356 115076662 561562368 900698008 571094951 968482563 895589119 314423672 164128617 315495406 183918825 355492583 746523828 569044685 54114305 488720127 380547424 177803400 46358399 558897955 276805757 789204351 78547401 135363437 74572064 433883234 540075062 565134545 791373503 492941262 59678562 908815423 302716217 191928099 490893524 905714337 532668406 990351510 667255586 705681169 918965896 68237906 391371113 522009727 982216697 90538773 620912406 252981362 346272282 365459051 735361047 331327698 468326617 540693955 805222827 63063795 911679881 793713773 707022918 815920692 838004497 598469102 489557642 201214971 922511761 768042437 346314542 176499789 554311113 393733840 402876033 916858160 433260813 634794732 425719483 831136311 117360243 30929029 418426341 329250444 706514446 365813627 183200091 221751925 223772238 388203891 780544872 38711102 588108186 871474679 968590488 572142853 52521057 59371269 331706134 571245592 106166873 872034958 516447676 616738894 396235821 105710317 769247624 518935666 135249110 578424215 344343881 299026893 45219064 586476592 909911588 418067280 363075336 999961644 901048891 211175854 647724550 751176804 563310707 445560403 435163072 1429344 927930463 683563253 796220109 93044488 25440327 793339722 859716414 832901759 869477178 687518016 965521438 846677235 926410791 703406964 878544432 426269125 778779222 709411887 47350797 496907749 974022350 98057191 119601430 617161439 650721916 951778443 692623049 815101527 675825363 326760719 790499388 308978835 772501888 250578372 569518320 785563511 52209305 480025219 986283616 260807334 362584279 174905142 707566920 226307824 97707790 503769507 501150043 698145004 436324945 26579286 219885724 512625773 372307462 516541141 781241083 305959592 407552095 86398519 822053072 639759901 394756761 781494390 315513005 354211244 447050778 290371700 115258226 100246395 753979742 909084243 877184785 699567746 155218064 446589735 487276923 648134251 638385954 747399881 250222510 944865501 82791886 528248549 576871960 482140327 280817000 351870618 850993395 224780199 877051835 728133695 810239914 449189812 757123032 882651432 769538346 935336947 925041161 849291460 262811048 353558512 139718309 490994079 547102385 407871388 747842542 717678891 395843526 231740188 49943565 301853089 528147762 46131190 595402502 591104124 78750441 614323662 206584265 792149455 715802443 151282927 281275366 173250670 191458561 358726212 957747942 878993834 251603220 968723375 857465290 614620173 280766241 940264251 758719381 857644011 919871220 256697275 232382427 642174937 751863067 717077737 626215729 715467235 146531090 743009242 532737367 180905693 344269470 520452658 125985080 663467163 941704816 183264335 761261351 730451021 407498917 344579075 903339723 155893654 804744325 516200922 263769044 780937281 318911986 752125151 82031501 650294415 23142820 314235790 639968930 343239810 58805164 934747088 124164072 948603622 109935066 843865275 898785883 686055234 819977363 983093529 645570905 383559847 401637980 780822545 91747471 949791328 352562908 858602569 839525105 411132125 480994407 154583273 663881515 458826076 953677443 192504031 86928680 323324154 464306447 556861661 143232671 299780961 846140077 275026135 831858150 337094770 518746841 970412892 377549223 615546990 84559849 953018223 767913400 904505286 351203607 895694326 406475289 459205921 715496245 307248499 516453604 992912287 91612480 371904156 882994177 587475441 927157420 985967723 501487499 49204686 330637910 386110361 667620779 685670470 189399968 133234921 276986579 680456093 93298618 469161002 5290291 274594915 718644020 531664511 135306128 394728029 742376093 120037087 70845511 555602961 30147228 851440858 279290324 30072256 456110607 40493980 581103163 615025093 290722053 406072373 647399241 822443965 10855596 912626048 941190414 839064484 436950691 994027454 792660608 863852834 450296370 30475813 946637912 667490256 865175454 363120094 419832151 135769062 79591675 827779762 616742587 122602044 942738270 960092521 554572235 750621204 857904151 457472192 434305221 233717361 555800308 62220839 17800823 905256404 700037627 207454363 283961298 632874908 353745313 310861767 292298809 261318657 254942546 943536156 388715388 577096894 407685192 955218086 981925529 470290093 656584921 71234623 924470662 916732122 460507883 665404127 534026415 531203540 231763945 5448397 140187284 17440615 207296073 15977948 128368272 571402391 586212881 712045113 117646728 597496408 150290248 213986549 22829073 890576855 565047043 416888204 605925885 705160681 110605818 52335806 736763074 219691196 443663109 590953533 433225877 739263261 937912851 623003778 719108374 623601739 983573653 642917202 959196602 231639551 966384372 145231631 555479188 715604369 82010904 842845361 2037370 661893847 4591997 479890257 572903822 22680573 643622826 418615396 39507293 86320897 112173033 376903059 85437757 992933540 168599350 872978387 138647356 866100009 590195287 768942143 356749957 634831510 979220111 121537828 85155285 586999817 644699778 507152398 720082376 629491033 530002248 926060808 662140341 121573309 789691076 93195538 226831675 212796667 434971133 515257497 225949565 179544508 746777786 985491876 374968499 641546296 276507563 915594823 227557526 195834945 603263805 742203093 624572871 525009489 857563367 724114678 916774803 989589589 415071423 683682862 833436740 601882045 979378928 812441417 147532970 864827876 272420451 903853338 95605584 608644345 294586176 423013906 576454347 582346149 741476096 783084121 176344690 331101521 344446672 612825897 380995723 557723371 133164013 61237089 424851749 670751359 997111626 803155512 718433475 492362579 9442085 285413324 613045751 380443831 492656237 265969539 356848015 918767619 735517747 152684775 444123292 919275920 814799204 30705858 998341388 202823715 315536865 116501069 676409886 798470977 839058632 87344048 859737447 977090548 465421777 879778041 835028289 473255538 660428693 711978972 711188281 11918079 778874320 276430955 857122357 962669640 838701003 234658002 732044652 297995679 509917725 941929711 710864520 455314195 553176333 604903486 787748524 781324317 331022046 678647326 935209528 469912206 858141411 669394317 6621148 254930161 290841780 809984481 612984418 791001960 938755716 282835321 949613990 794320028 73454369 625436830 371851470 69501191 299109419 137670461 527814236 509550097 597163063 988802237 620525816 543076114 199819827 64966137 521569025 405231809 603495021 192472911 535587332 439782276 537144935 550757838 656667552 193351905 880181273 261486828 311550969 719409586 222318607 690104119 743179806 806977079 877954268 697622604 463842878 179370505 896048510 646574417 638688437 957771467 546564664 90338524 935303544 386403774 780412813 743986288 183160905 812759954 611128500 889122417 768789526 585567164 650479830 79620404 379699859 991780434 71145600 983303142 944957682 66661385 738009313 665885513 51119752 821282562 447987240 604761148 706706243 35372490 471730568 109066612 32407534 992498049 838576338 819789721 241495468 896846227 641327491 562100600 389576531 229192873 360569186 218144147 393558532 440906734 337339896 135310841 291999304 682057963 258992060 68218752 307935086 436411677 650519075 108565444 749687535 529936627 468641544 474730790 487946985 407314197 216867749 510207073 179902342 653225908 11479554 310926718 598435976 906079265 772756045 226580239 992727103 625597064 135756780 866419083 303682012 319364993 651912945 974660818 938307102 629062494 773171083 252864518 942696810 825000151 94707795 725389576 190404530 399377674 236760087 334846894 261449670 730060120 352746115 792026557 533855812 290674820 474167906 211507506 551610569 256206128 106259093 109256557 450080197 937581296 320479425 799435561 816635307 672471121 596996885 20130904 851736321 766556089 921217255 840615755 576550223 240306231 448296209 279897768 846142280 594304868 567208659 635373352 143585119 408901980 395642101 641289283 769267187 868058138 733761841 3810976 259588423 903445881 959691124 241249087 59638365 939441481 383589951 178877837 158011684 792531147 127932394 38733809 548060432 4331981 459479904 240708892 147847064 217879749 87070694 293739589 873947362 507132913 938007372 421469397 360034960 296812320 397336887 500924181 467025515 191578623 557091995 536179446 518565588 239531250 917062169 694737934 439239930 592869473 988267764 678944593 232423639 231002632 432039985 915674105 244777813 644554254 298014072 45890051 345371397 819990253 537059120 411184946 332770810 373592455 20116588 538757089 389214905 171156733 172639130 483976847 769545254 786764029 971245454 254712302 834266597 129220400 378628125 228786109 677935956 418008981 890552048 10998372 497295615 155731098 549105645 14891451 925360301 591736208 5094435 525120022 982322257 407092758 94064016 543960121 864214268 965447419 122161512 634589275 88772032 733248283 688635640 648217898 235997039 761306967 919610088 928486848 39627237 212851906 779450842 229795403 33305723 249339122 279867817 713381600 851788933 424651567 766280705 702760677 869591704 409784041 273165871 401027361 985212508 260962728 641318689 703256678 220937866 432988062 965097550 544275920 854370888 208455567 461742988 623383664 685775698 423725355 215839798 216293269 187168154 807108982 794880681 508847672 911166598 950842171 155599510 960254481 878794986 616268199 889646149 900301173 833866793 888085586 15915884 840420984 217123025 495007571 738413420 612177706 16860239 575545544 308389073 448946453 102773342 998962902 332851548 422516978 887949989 317810912 781590448 886691607 992928169 539508091 337844999 75823232 112760064 490216061 706570245 10852382 30266478 407385089 16135115 847240447 221772047 587851790 678728824 25356246 973765397 858896701 796916796 838975212 771554800 111625064 438974562 322632249 291271271 534761373 514578113 44815454 241645539 764341787 167570232 246134715 441476363 266484615 108587548 141954411 951612685 6568684 331083290 998537826 34311760 634667135 857616442 231322502 546337614 994620361 272749431 135446821 378335508 195052774 485211078 358830711 837665408 206700118 493443131 967726915 972614361 757327260 111449564 995003246 510480033 564648622 144778519 323627313 25444971 864404567 211754858 78511952 774836021 741946516 337465385 416935267 88408111 328655594 22575001 773599128 352859310 568757171 774602570 123283028 724773104 89698909 266834658 603654491 532454555 621440546 187265468 83410199 240235839 339979427 749775130 745521359 895547165 947989010 855382053 550946404 119405178 238289526 57686502 492261497 703965837 663079552 288499734 723210229 134255645 202387554 41098169 421303974 96358127 472406465 823077356 512093546 439409072 375793701 200336923 790988421 866108512 293378821 917244562 721905469 858340822 816985846 32356638 322354845 993969817 820124222 983763786 141564352 997354951 86923571 812886431 773587063 347778487 706228365 179303318 487354550 448277363 516635117 413224261 674355604 11199126 240655504 541125204 283721579 176673139 160004290 657125131 569597020 427994306 263672554 99813284 574977536 653206534 698715302 962781401 253326278 383548316 549257288 86297852 644575742 39299347 75470517 328317276 597882703 20461002 596780324 955400353 161549222 96755351 258894108 60207319 14564276 452033856 528246208 86624204 375024869 536799798 895929177 790154073 510817562 488257379 376765388 530908518 809259602 156784053 904478727 676874662 214218073 431196831 46832487 954334994 25925847 551212154 610709026 299267329 50071993 474850520 863517923 73276284 552377188 122885822 25291952 847811688 816629280 408766619 342785919 997653217 480513266 395279857 795175093 340825137 942849511 742534159 615529978 257124169 229854757 737538980 833323936 16074033 299109313 350853835 233856312 349202788 68695452 194226765 482364161 169541538 644869993 309239487 529204993 202749716 205886310 557596135 462569161 44496561 29121336 227778564 222523062 284465727 753114001 725258498 800022 605837508 4824296 546480980 810469011 326531319 653967469 239495798 467500559 53666835 765721086 310412674 589070529 282063704 750067358 318248702 550762263 492653671 858314506 358883128 640195373 826143605 917894857 129318574 250115008 511407444 905402288 913878207 901313320 667908093 878977935 584508912 149564261 454191939 514555809 677435622 338999586 848695200 370463007 746866271 954172756 352402625 394648555 294149437 834836218 856606451 687827037 343728522 995060230 409183991 836138131 924984962 640408306 367267434 831437363 956854788 640291169 838303664 145284776 277817035 169616104 524123631 101039468 570878075 933398780 787180937 377881931 10267412 489849838 700953878 315764620 392248620 662180339 176325723 118560751 483394644 710464124 180173145 13996574 185483251 683148863 67689805 589881823 517077892 586284560 261369620 598993195 767544971 221290936 514249264 887811953 52893544 328980116 855604390 969787583 323678412 428452017 739688249 438666402 930401413 22010583 717023593 629696509 111842938 974270813 920063106 60848489 396237352 706260899 202419247 771392936 674960206 373444189 738793686 977653763 512657251 519975484 249800750 875435487 197033445 363141670 70851568 560827489 682597538 70522601 977143296 142475319 766631721 782184358 867661682 641519789 197479630 484642984 859696153 944981713 794201600 267454228 270201196 42893622 464898158 56823411 588649245 594044960 432311218 494695366 486529787 224956090 680833682 585671495 91544698 710507794 248418293 734441862 854749452 701014309 701543472 232763201 158396368 191734253 281778666 712000047 909341875 1065279 923119234 601897935 662548050 863552280 95546783 876086000 500905624 152166168 334160447 800191171 698606376 12895319 438079862 549338967 843920372 525355410 954187931 518674349 128103409 779853354 462935369 984852187 147471286 937985722 88999614 832853756 460692315 83282611 268935731 774730328 87693310 804430563 331915909 868956844 33729123 714841028 281658614 444028447 418593703 167864762 722888184 539106166 64885699 612247542 542140805 174159383 998970775 734128670 289618417 136189483 23110626 382931516 257778667 961964874 932246520 669204172 506511881 894517185 457106514 399673098 203220024 936745227 901413381 992318684 17337257 791125723 296583670 566430587 463536896 56336101 443740014 468137727 702007948 54058507 663256902 559832041 446715957 966165282 668764770 769102394 449531842 816591781 897083590 967131050 903776400 992117944 521684858 730142851 723562083 833128441 248700150 526409487 81519501 335409526 553272443 102005137 779758258 772620315 951249469 123658347 90932879 656839639 364084707 499632317 508068035 688078138 210672419 555964150 969913367 641281986 409517766 56888846 835886757 395812367 355590344 922605172 43349536 76707782 239790716 958899427 971792152 5936853 956458477 948037641 102484747 785298565 603498593 823679609 81260159 459108736 294025909 5774616 911308993 834746346 148090439 259710527 5109899 175694247 132013768 298085354 84930303 589634975 824815197 481074338 600967695 158763777 223665801 106246632 194571276 5571311 443309597 673021894 472312521 814732050 912558769 696689192 268541032 581573871 914620372 288730633 363450482 109409096 523356982 161474531 432979453 738537126 187827555 36478828 713430754 146576622 572867540 716083551 544060922 826374065 622153771 380104884 115697091 721491560 610545215 584783325 543704306 111763438 830060759 680414051 960774024 90244880 490605098 572597528 944087539 592814735 681062363 310625584 346646239 118927334 760446604 241533163 505816084 877813046 520344434 683531324 18440089 106105910 210911860 520873149 465683202 40433834 485724500 270588263 181346738 970401570 478088232 102362522 659518327 700302819 211068512 364609622 269185273 595604085 593178601 236533535 843150932 43590143 674712237 360481083 465736612 71116562 605185228 950446897 911153939 120335879 864896276 382380679 833388372 820377537 417001292 976591649 28096088 66919101 192627635 742929997 28579338 98953308 399193770 208461305 502875335 313129044 602735146 616794479 242474931 934796219 787361114 931317423 720165475 768664827 61732983 987109434 920094437 632823986 429469368 452290913 545664166 419861982 619191357 153889215 15350070 592607256 439838624 958888620 222629686 490099467 376868688 78581955 249069726 452442680 730368422 605600713 23312622 651728069 88335915 712216660 593861225 659151281 365615128 802126793 280185812 250615181 109214842 650163010 913485555 342347949 842683901 139771100 411353076 846456808 498733101 391568070 492329387 777868162 390125278 484294171 602868094 231473338 607562177 176072211 554789218 720938368 745874100 331022208 589248678 152844317 762462309 148923666 31569859 647943345 338678558 877933653 741378451 26974669 439903649 477259565 903614789 258957604 342212524 423248439 936841548 404323173 601230310 603434479 852322567 792571553 818930654 703522614 270049365 209345862 637500209 923725960 296123735 934272870 870979758 206467313 331591463 486701816 385816035 770245307 982289232 88633114 457649307 261432010 894616603 639825653 100363842 98137825 188860346 66300904 127037270 722676278 397928596 50922192 537981901 465354027 954449941 724011454 25578910 948596799 986165326 352690083 338590191 417417307 500140678 398116109 650885418 642802904 955255939 940652732 511725348 272865082 375660347 274652796 690215499 384780984 190752371 641767920 990889073 351149070 964502414 238821409 68463313 942446754 333611712 975686082 325273684 869583454 829101656 916021968 90455707 329793847 307005356 706605369 449511597 74620596 307072776 597978249 154750390 576425981 241381074 477831168 930652839 454207787 47640420 46282034 822036239 453693564 392273760 517082279 282953566 905227730 945554710 913407990 562582567 881843944 156761710 125442539 182757320 909132090 113603813 857661873 688619853 421905360 868125519 271926381 912979572 860438140 355763806 681538415 156606305 231957098 625314912 196387816 290429675 36099204 871633421 760866022 816714076 967954710 433762046 936634729 95149994 87192600 728732155 634200976 906188415 88359633 776009804 824741717 116961591 490731585 414653574 999124387 588281668 499610519 468177887 77457938 809618330 619672733 519502324 947298514 739954055 803353158 857449093 465676438 925137636 461811208 658270204 599215620 91520359 859422115 83484976 611600353 189341504 529733875 224444945 111981347 751747995 969516818 440694349 7846305 40015999 214360756 14062442 807972492 197201052 230050995 37701507 936018569 976650978 242863129 824665262 800498070 421289904 787659553 452339078 611279792 699203426 645957809 61972045 415845013 600335772 319396503 966971921 170790178 826047987 912769037 803003411 63702007 450390893 615847829 386237788 49582578 265912383 989769518 630331363 286750729 118636759 442806544 453253897 631207983 531081636 758559838 276262354 889099595 593251765 87010754 292325516 383481438 204297932 685574313 342739359 446697201 850648509 450475135 797402551 55964524 846725540 608332874 933896422 981153427 149986055 317026440 404407154 709870303 543456626 827568071 896544118 706435633 884167761 154046642 662075340 755453940 639798199 963557980 437530727 433600073 649866787 941953968 316890954 245431114 383931947 228773235 814307289 925639881 919661860 482855301 524007504 337045457 469924376 116625898 111255653 323715757 145474757 171957911 378766455 934281908 419208859 193610484 136478117 584348908 879134692 198912398 396440177 227155146 266436791 249043503 249949341 910934443 105422962 538421830 248882566 192112139 832630341 686417952 555192794 286874606 250713444 71567212 772008576 800312158 628103926 484886427 473766308 152030205 460056359 926798248 334054835 135646077 83497380 731817880 627710966 713511628 452704355 437847530 481677778 676357358 117730675 850134792 49037914 402692736 909767481 377988790 278891945 483056210 102069737 772856929 192244335 813757506 291734797 245103316 290178279 956592814 961052312 559491727 630778285 261674830 573406075 948103351 916799970 522400358 629394957 764176571 879824208 523809967 910331179 40573767 874675478 341400356 353415542 270219442 539188900 661179733 55279472 996730358 672317448 765323278 40610098 416177154 333600001 227857233 853390694 296113354 687790361 314667769 672845131 667248794 146786543 371944809 459667114 904300393 686539714 721465549 486483826 797092830 120402160 480010609 557325688 626681095 539418049 591605084 351754179 572736719 475347854 198782648 344971672 786108455 545705808 335019402 786769217 883442182 473598677 175649846 278915934 790537782 196128417 530087024 493123149 936143340 918533187 567871627 980405571 703659984 341057954 619445857 74383944 323633928 526904097 279884579 19088267 323200027 480382234 835764996 867338036 280131264 866682078 674257552 592669390 753867427 63495418 131059270 320406738 988671275 376532428 799070586 343075308 849128875 865847966 50270015 275169303 554650008 445402382 7956043 626000653 844326967 609052943 861236064 684547449 967485660 492670547 585656444 93642768 191871161 54146259 761375903 281608840 784686205 214866715 280006585 969431246 126151434 494217654 726365083 352434004 456844694 600947555 617223893 637315667 415181088 174967481 440715774 614739317 35142642 171479584 517526251 476596482 519464634 219097471 584016880 978391055 551653133 964941729 319184714 77334078 970323195 444203587 488829473 35637751 782184665 607329587 228983102 484818242 177033343 603687980 697625828 494647531 341924349 44685069 905864952 344940385 887296078 983625850 400296470 122645911 186305212 759197856 103513283 376028232 431178555 326985676 306076208 52693000 86019067 545440152 630611285 528401285 238907998 83024394 427067214 45851883 244799195 367204351 838100170 147237229 408913851 899208141 545165525 517600164 929396773 707110726 901071394 314271273 724268335 473788481 963722204 924081316 822268968 794458231 196775158 2295621 180328777 938878882 373312366 296535215 762571296 491947870 801428481 146963169 718079731 509454726 300704724 315526462 217463126 254256831 323814717 640861346 269378253 508088505 582372072 381246293 65558940 232848273 752801742 890863709 132976744 922765888 853784228 456776044 783498507 741612729 945314822 571953869 203883160 592282784 956521244 739385419 107197168 29711593 36752461 253565982 479595432 920101667 221794520 672397051 707469129 130976911 823910590 429485311 861125382 786447913 545399684 746407354 843587487 508492880 321391595 765721795 492264727 887176883 554088456 717659569 171572594 382546318 476794983 233368660 660806112 244984631 173640059 578545777 727668895 222569924 881173252 637328074 658548929 663645562 425320368 201072931 410895368 829477984 808034478 300422251 892854039 608504158 146313456 701585976 133015391 70213982 896241109 867029920 719940291 73279251 670638409 777741470 679863815 352559570 579845722 673236529 733260630 587444935 610788698 822597364 472503795 684768844 674243877 740335912 494798542 441047903 813260234 813554806 705989225 4246056 668799645 43226728 7788574 701523957 880566001 872592406 289957504 592435221 424949986 839748462 849152875 99083499 212335028 986282929 126601993 246934111 939348671 192036096 419334694 842141032 155612433 192148267 621453826 699520724 418429088 809100610 568411386 890093224 191727150 868894840 934841871 962783412 80166233 740788835 310644648 287530876 381870114 879855539 557539043 537210307 126700900 112836628 130318664 98736887 942803678 280969580 63765780 624616546 949177215 105855423 336378170 382382931 150454895 307768099 477291016 61387881 612853912 127640780 970707432 275107421 578395319 935806809 226675263 360186825 152824994 547831004 476855342 680117694 957647346 83885909 278590564 553324543 158840068 295970483 611042993 112239215 159088378 98595082 690209162 928426049 332165947 397312428 391375750 229923579 187928326 509555887 455529736 267273981 988029745 516565981 740948795 221563997 603682654 379064438 65225736 329656172 547713152 179299251 81901372 834733910 240874176 654658817 475039059 951523427 403260957 961302176 675710009 738175499 943118276 465028635 110345262 524109657 87452907 790662582 941858449 170682119 689242552 718124352 985009351 239163667 396325151 354720297 280990262 665618838 194321894 839156969 685445206 76091145 506924199 329567785 884906423 973314918 843874269 162102674 762369446 238282735 804458612 575159549 898900991 479682731 651275285 90202224 489775614 305721977 700189833 104490333 762459053 449237422 806970091 108421761 504158019 870513849 134050186 168753813 951086770 632258914 571874112 300528349 691083252 387662003 616111627 948486140 584640509 318424832 478638665 891646550 18286080 460996610 868553737 178212114 574613113 977370144 26648700 895281150 829621843 841382194 951142671 8439976 480154526 973881034 406818711 368817198 230399356 969661524 516089065 328404820 552267362 727354 507256577 470754000 314045558 669657419 754004026 553422526 395210887 277325535 288512440 299628786 823148781 359251548 70345975 310808013 269024412 38660595 289288258 110601522 75088540 454951781 859010462 80106759 624990515 741425571 21394501 267142690 609091340 736014612 924287570 533203519 251446348 389791283 154211508 424664211 144664303 301231252 438763577 759785928 738195370 227100483 111809267 893793168 955682945 503849272 102846787 290913310 106522144 227729055 980115648 134586500 656757316 648191384 898604861 380164700 304357367 416914376 438073971 500835214 170624798 625430366 331885798 910587191 780894979 816328638 653584303 180923537 459704731 748366260 619540426 104579006 180028275 493015801 152703183 344428149 34953099 685987528 848332242 245192862 209589873 609831972 868584444 677333680 886242185 851017016 64123125 685205691 1343796 328301928 357789773 782010667 551005410 514052673 551925642 159388799 788153277 579979283 178942173 682234070 653725693 54552398 381061582 521602372 395629377 611100369 466573011 826003114 545503243 798008310 171059329 754305498 798826741 847086843 830655581 967558580 514273439 339483807 30404261 711182045 535116576 733444408 464202730 390977060 598113405 43481733 554346070 558592268 75299150 375004051 518190083 185802048 730934681 626415937 107502417 718975105 511042550 361341138 147141833 531365140 957261991 6389196 823061429 858038024 351263202 417432171 863944028 848081673 852308312 63900947 614053610 49850543 494456101 14069839 867865699 334028562 753730870 511146889 252206070 133283036 993789265 686522338 154042702 435818247 803511191 17369095 251492267 219110408 756592040 890552534 235383253 70153113 495198458 210380396 847567639 271555316 592496962 305432027 167164201 411082005 145296738 718441765 73862170 680232324 501698287 64833685 254673296 552870628 498973232 631833669 204936276 27882694 911524362 705098905 271177975 929019004 835928614 576924120 415385811 550121306 780832725 445282006 603878074 487334878 787108608 381134373 794880324 652022919 80153626 551574834 129797476 167757621 549576336 109953557 902774447 142465716 48086712 880222242 164529654 63106188 267773952 764505103 631770405 587268264 544511353 940660368 841576601 855881797 209195161 542847318 281410143 389453330 379865044 616643171 595441188 645139734 491068284 108394622 408177102 143013522 43466553 725605340 612198100 715239567 972542178 309414377 705986730 551288400 187873717 71947946 978177228 806972 294894612 721425375 432419214 646697614 560333079 739963088 233546869 872281456 262995906 330213288 705522493 857501899 952397540 3191591 630565461 341813117 166925431 852085835 506489243 922428544 841881647 607713666 254893527 505109016 626391827 153710271 799580653 87729438 75685813 219904648 588401205 849200131 618113697 464509317 683826070 902644748 680192221 637192332 361473204 235507072 607657346 75598902 696479744 387498509 442355505 802303504 293960689 560480975 427551681 861221548 378852863 651348756 404965766 100343704 883342424 944102089 336092706 288646217 619483433 930190464 42433851 596972210 357770673 577409076 208280372 498265738 586298621 767889182 349892231 401564228 442691676 194267066 637907741 35792597 693311434 134143264 995005245 566396984 967633140 180961106 730163854 26579720 569622837 886814874 494597334 641671583 895853017 401381076 315850746 926889155 942906165 183268954 147012679 499433785 706251622 726756204 137363844 533989968 89969678 729415471 376422523 59519537 855881151 145185608 501388695 798733485 371522841 942601812 201470460 84639273 620340126 421050377 826527075 762026454 336945350 96607974 275171523 964143239 477571874 874489832 506917131 93291553 876870479 172165747 513235171 586993085 796896514 785602014 522117324 261901801 534943147 1842835 639201129 559555054 998774447 856082334 973609434 192477174 881590596 765466544 773457187 293008666 463719023 318839970 713863904 967148815 429954803 618322745 400208441 266619666 593229816 989073421 994060318 565360775 986143732 902936077 85812808 613227654 736688999 677623717 854685161 819305852 614630961 726473935 808665183 222294407 501575058 985836975 562010871 22842627 104582334 725623708 965689136 419628397 732114993 593189824 881103545 301200792 24893590 223723543 547467351 342764040 708002715 363495416 467970315 775539326 922734594 904095243 786993299 340680567 797679771 973582410 751787860 598396227 907627541 395176052 748031976 805605109 637093128 52146639 937638121 797536833 508837163 127044089 320353615 575429165 351359839 519133775 710973730 131932184 795828178 970948941 830947559 21708809 287749412 309199088 374758445 105597626 584986498 40437628 186043830 250018460 764205245 791877235 223969916 686024561 881834507 307532992 983949626 124477820 492171619 765588962 421521426 277567504 52612209 874238441 37541487 77702527 270739399 110391969 941808399 496608963 624582232 957662798 837243932 303782519 202647005 260843101 103529433 336662206 724417629 856188442 88596756 249722706 353166109 415503301 743772542 957431881 675483214 712150064 634642696 512740013 971701774 530688865 670025892 211318891 985630886 337005677 842359525 826594928 620719434 34046443 210949428 753245248 693629269 474324713 27156552 347260113 305792565 73554307 804631756 564346424 641563395 676411731 97244165 304460180 543692294 684490422 559560325 82650351 543282726 176220741 617463603 931245007 757104069 492860424 6845414 259779827 661114012 247555706 550221505 119181770 827083508 722641420 133435508 339073858 279167567 613460587 99450148 446558800 215254322 913341797 635853526 512276292 254527136 293776443 810318778 240258926 180724150 26654728 317194809 245671508 581897165 464036700 698617214 104722222 911527243 161239861 833565659 400652462 515806059 714100478 449566180 700073148 153262585 686325175 838690261 315232764 396435160 531382671 500989671 682868138 53040388 707275445 429789372 710717517 433843944 75611929 870837042 500193717 106014521 802921832 725353936 517782078 978584105 244636451 776600058 338203657 492056473 338838669 61062400 736088502 100601967 100278148 227461597 837780260 904158444 733088856 79416923 49204465 849154964 255603215 858658281 843872397 253442571 198719759 518277583 904631704 289925067 920115994 963221341 165440774 358722826 132127982 499904131 901689285 906447249 794746931 148982702 954095036 166778865 192748926 443115101 179460512 275013176 146973643 468204509 631707520 366644287 8240282 929778819 894174797 204003045 557232747 51712291 140558380 646061763 698284523 21912848 377845941 358829661 138625141 619530567 760772580 231411587 794303883 881074191 868479238 363107394 364229813 84103728 544993244 980687581 508466154 887752199 803508804 413021271 314133600 94158673 717092249 799977707 19121261 51258928 320042681 7928719 791459341 288629209 205935098 428996376 240622051 480797528 4484398 356283022 722045527 179823275 466950849 578496366 778728261 603209669 175558563 899047662 917165665 3139731 773293959 214713314 273121089 756730291 226478102 528968303 373302297 981365271 290255992 612556817 495517988 218182786 402201149 348685629 364408816 26425449 422100125 938408653 494888410 680309672 313968465 891872244 480424647 231971898 234218068 995872372 718414686 289623342 657608616 42973998 155372579 326922447 515977035 700338463 265146437 446440348 32675742 274529949 152105820 308992851 336679741 839778956 482351095 224953681 313806129 896519484 134669820 108334100 506772368 24154174 336721022 909807988 878702661 23699679 589236975 991591800 174702395 681566013 647207065 423669553 113542303 372335978 456564246 222569122 435168406 553447000 400318426 353904884 336859699 636071654 370781483 299819171 588230957 59260759 272221715 177163200 507685646 119942029 789453509 346366105 885145685 600561498 603251759 468605880 66666528 126391823 504307046 650073020 366816824 606562573 161628905 928409531 498758292 754713443 984779903 865999456 906339407 541364543 866712134 381203260 864592447 358058276 712460629 380986612 895185946 208086662 455037435 705927998 15261611 521245693 121611427 105606724 802659592 458728672 885862130 950316230 122667538 720601834 308239132 369287766 947993122 298139156 430578793 717608544 282710228 734252043 354229714 391085406 690435407 650615984 705653881 51024612 960933187 266216554 726053782 501701099 157822253 110384139 737461794 499789856 824094898 999309439 986006378 657885887 120234850 487871155 545813122 226453604 80267397 280608650 684420037 272722455 363837377 839296991 728844770 535930785 778903099 723983082 171285892 444521074 288921060 74613184 748873775 224101701 596253588 284120457 39360236 907954378 208704333 174536694 6751916 531972861 793451609 125183389 702866841 335494109 872294586 868366676 301951721 955004001 942119935 75536183 698389764 252812316 56628260 249270367 624632231 600464284 272341224 98374196 496499705 180334216 70323817 522398351 459208091 772260966 32406312 240305934 946474305 442539727 768051938 121359839 475623048 532353668 835155588 793017382 640064077 990366170 456618783 460843387 902860187 50726767 257293172 88515990 498016100 130755328 307811266 137247155 5178044 849649116 756025532 369053262 471659043 317856837 430929322 447705583 677044862 206518758 787346678 847602358 402209978 917823778 871191665 702801112 81534843 862379259 58165866 745622413 593845052 585767729 787355627 472224816 284343611 671786472 886939680 553135994 113734253 807549914 247431258 124104164 767888568 197895246 899989298 320146197 824985932 841552770 498033702 202262117 569171398 785668434 266422789 633783209 359166849 559256711 241165634 172891704 959106337 254986167 615926268 20901540 820430242 139124314 472657157 958990817 198449746 304524508 708866555 419378155 515435733 943389376 424685779 590432393 491731991 93755881 255180496 850878708 391924103 617519603 150794262 632727559 521836820 485294786 940236222 921325561 166143324 528698631 937428785 383973903 413522620 407638848 720557830 532327394 702350732 672990055 549899367 241722182 765107180 438191957 804639129 693309902 785562084 378629251 998968996 150655070 60739975 260549142 949217492 354153369 838592682 834657792 647953623 534999968 64243123 962661481 396675464 737754854 746213837 584281548 418411747 785771956 24866078 566379675 895060456 214879259 124699535 294305268 698373555 443469995 363447103 220281898 915328706 489461053 972603513 777352057 821653460 811818641 596074633 797036887 84143933 948893124 711842885 959756755 985391342 520266886 439113467 494992412 900317319 934907771 285523030 875948625 978250315 517513820 595026260 95153706 204951652 312278233 997622482 625585293 610712472 532694869 808121717 300579837 633126495 752436203 942656371 852683519 244005727 402920494 190596100 171410121 888583046 708365975 245759769 35344423 961868014 7577581 424145416 241400732 516426404 100951322 151211333 977769887 183355384 484269737 644119511 759254354 480467889 394735552 873538924 342732368 547443775 810766164 502064374 542864059 38317991 862552688 398658771 877759170 673628217 735317509 808633991 381010159 715519714 80500179 418248175 202285518 160653882 271368729 355763338 530583199 448334473 557299722 558524279 573394928 911590052 692090858 958087570 151689891 917351455 235714603 995268186 289386292 865516058 28129418 296090024 430041631 319631928 284162400 953126116 223353075 65108089 262949660 390196592 721874839 540444197 963531207 127785939 504267255 13786585 889595719 300162238 249426000 361290478 754617754 8071201 663874982 51855286 381965047 726704518 877371780 663195923 409774228 412044387 251323610 779082531 339354496 325662708 575630584 575030665 107566719 370566257 902352135 314245530 278984263 919665383 122977739 260862827 602646404 545980631 272763182 75741944 951189619 349061457 83872324 733778477 77250966 412936874 799753191 307695088 91973564 872770309 162555472 358951625 826160550 585007608 981257610 104756809 370127457 122282281 907240139 972896182 816113732 617612143 411904357 878743013 588687697 538250045 234213982 265236733 224317391 581811287 876003626 704136599 246593405 710259900 137888107 751716252 904861048 180346397 808897066 499926136 888324074 229870222 833254362 737563079 450669884 162854707 396788304 857726110 179023799 390014267 767992111 466538575 158159684 325847650 907457411 805336104 532615240 707200941 937043187 169505858 709506715 749716440 501850602 498321853 437046389 195048612 921561221 830654334 128257304 207982535 670840259 500473852 300783342 18728604 793632844 478892957 527452129 390670487 277417716 935180574 53445061 793642244 849789768 439733200 531851455 525326035 308875427 775037186 714441404 178007335 869741180 181295388 33319389 587215222 942236026 951074837 501140922 790432342 656463748 127426589 307551241 58234889 89390344 770845004 210601908 183300230 532134871 776862027 425126003 375614874 519083998 858780122 979191308 186956449 841179243 516298414 900836389 613718413 823285698 666389959 757227510 857518287 731649333 204583621 236062972 772864321 137726022 342707329 590741721 423404593 173669207 505071843 194301574 495638820 80146411 385002720 679000245 995482851 936507383 946755246 9409868 990003639 331428877 217434749 726023610 762827128 682048630 642039486 807904348 915737470 968117971 917182051 131315267 952799425 482077853 66718073 923988261 27081730 928410207 212027656 386078774 765132917 540827370 92460428 845996106 260912394 544780141 979838892 237991508 369324489 651427579 750139828 505886165 937232480 495522254 957564810 239958809 184539215 674919529 224060705 131313629 293126 566150737 483896897 746084326 391858510 954783402 375023000 937061020 186511322 61476229 391703857 758990889 763463670 314591750 542638935 386171589 74829340 249448315 779001640 35002491 891963176 867079080 405641594 445351694 502449102 536500787 4796855 508096066 88693011 493863632 528758875 508356262 480274776 962872539 258592119 428526835 132994943 525576713 64404147 103206964 213300006 495584325 211613087 145132366 172822076 779729796 153375521 805848930 693173314 513947392 225268526 259401427 215431707 501731927 129470819 919929585 819046605 562314528 131263658 797427785 926051994 614269482 23883033 723645662 157839783 59048101 96571030 85826339 219693651 52401075 259752585 269901248 803346204 244385134 950302733 457372883 659194252 357958969 22260502 314106151 130450614 742874552 222493852 640653180 96105747 574354601 24547258 356529467 727867665 72533393 74020800 132554807 949379574 336623609 819708374 972764124 804095493 209986183 303226954 875672806 529444983 282708587 821842328 168847985 644335188 453581537 58253585 852486774 44655160 618285003 237952393 969254765 55648010 275018072 543746718 465495449 167807527 514508093 298650498 452503179 605474657 920129235 452647691 141339889 618019691 440299217 868841998 476143300 923691904 172523844 611393046 852184300 622748293 643075995 523901826 71877037 797742962 523265828 439514995 101730374 467003838 173409509 310195860 314554361 751907972 860317500 572404075 776283326 523856651 694870398 430177644 782456200 550969610 566797651 667325545 412199685 19715733 934395132 833944624 420657070 450618251 853384491 55311814 792271067 831662776 670794959 521535828 933086100 196257999 372923433 538655024 150758234 794997106 412885376 198292398 165772780 651626833 294438183 676654913 931076948 812818492 829535117 509847072 997494395 779867109 49845350 413625538 465158322 359673118 236640463 90899003 920640710 37647164 938735358 728383133 995717807 350051733 996958876 350831657 577414013 860576937 838334525 511430908 727121843 106881978 867515533 911342152 331048182 495763422 402837547 369202256 319449137 272700295 794095305 216564359 427422849 977226760 504851235 62850848 275170426 496735259 466118957 37406378 137140174 430873136 543815078 370382455 736913672 993204847 226372257 615271006 798165345 845195279 46924259 85701263 47960463 327278475 452827504 580801067 591332158 889286348 310220251 109872170 358351784 25086958 299798844 518402807 480238757 30322115 129260806 445733443 764529476 415057432 143093317 321581287 307750341 83317888 134204105 833951310 859879393 459415108 665279517 222063008 823032127 857524709 677957526 830890487 858411453 702457938 498829265 980676181 679438648 893228009 122162883 331192041 39464451 998705218 956881197 356851925 467541364 481950349 160048119 364525182 155224350 293645841 9019437 739345367 516326942 647974195 845664552 310383729 235000535 562254954 593335927 815423350 425613157 736622229 414596842 996051131 950698263 806028524 744659734 890626008 678830049 892416286 44682849 67729226 926987106 718173263 644759214 260873741 816541305 480334804 587311138 287910757 284651302 904950111 23998665 10089317 817169863 557427973 743516142 944548279 935656525 976844600 838669495 404225901 318929499 206939020 954900444 401549853 987713396 563248657 726039455 820961802 556811890 316942130 169958417 885431326 134961706 287817842 8112465 154900987 748532686 243661476 519499301 530924451 204883217 421740374 785524610 93504863 713677791 638980675 180881316 48928049 504926374 680624153 709137290 919925993 916187438 235234244 188853129 187661141 119954390 944599842 257628099 558769135 14133791 637109986 762391027 845182903 732364924 792957893 196400345 772031048 255099290 471326006 564370821 290082942 376509351 278962405 598798802 119485102 744520224 975780432 554211409 128676437 959493958 642389503 365529460 81818744 189835916 382985170 420750212 357177266 906531799 500191258 153904456 167984456 303630142 681338808 831036067 316741668 804348301 132354351 747522546 677994306 299752221 444508124 945822114 837558067 357262037 129675587 516555830 742732484 106627636 208633532 401028723 144042309 553583594 679337833 671150112 837007527 207942804 549589258 747267634 552832428 754164284 546973094 613159236 782253377 305869239 785117684 567185132 976002306 126300375 400883096 889791087 464555551 516191483 148341763 22079077 773934605 639983551 528016813 160894128 194751019 931600711 50345994 923788969 860765702 52739549 816176647 561106228 478786263 609502812 780705809 43647259 749839351 98617232 504701647 195586351 630252942 268918622 588744880 18883117 257555410 716411161 425853879 789942659 402999381 753934256 40626692 286899464 213914384 624524773 105720928 69626004 996937670 807385635 455329833 314267182 88636244 63036821 20424722 217686693 832396021 564811918 206862702 623119471 854931374 712094951 150967214 553434488 444094353 291705134 995972142 388534705 709793531 230614024 189119641 310172190 412196217 698594366 496646349 461632719 465088188 649725139 546995760 588710324 959464372 341069966 305171764 947245947 859938533 949893759 392671636 485673699 250383166 402812206 490266694 64639060 932733525 831648179 606747603 559693763 785560927 983084484 506625709 446063252 316846750 659479569 27926778 540696052 232724191 955556582 822591050 951442798 555834799 238541360 792024836 554423753 887652515 294528036 854124038 440324968 755448907 880678155 347681786 852744553 531710926 855422844 588712588 741432942 892673896 744312738 270119633 11072167 659396812 15941908 703363184 91414756 852747017 960917003 731091821 468846035 398479103 556435693 779772836 356625477 720909362 756839050 391722736 603608384 780282564 304963140 467634286 947383144 201260904 310764969 613112518 371973535 633557869 885167352 81044959 88477790 211670900 15801752 31526426 960998470 557431489 559372844 677142888 273731059 333474659 168222877 400979430 805593308 416200602 760921033 602095683 601920092 166810005 298936360 618895123 545393328 393237658 361799280 924536840 950405801 549823741 39461026 286545943 765774257 543301509 667320211 235400300 853264356 420750523 133196482 186786338 243136809 224551046 705586152 772836903 52817823 355743616 875474807 552587271 864416191 695013926 681377711 607195419 873519835 818341808 148964920 433723905 677030001 374807954 188061984 847159948 817008453 363312558 181664649 499015224 142528411 579185888 480877497 690700653 692221852 507729670 437583575 680945941 896557630 811237311 331841725 293716851 26674619 395210894 705525642 140951584 509228810 534387008 821998510 179533139 735771390 238086828 482262734 112427255 735721167 638596620 413926035 311592129 5712579 485674512 864238495 589346518 142962054 974985994 472089512 535246662 913600354 110491580 574978340 619140885 847574822 31282812 217924692 941963736 916803233 881231363 621728093 205806867 441149542 970084750 36809104 608462047 897331267 981092223 836864644 668572477 591607116 622858852 351213026 409530231 805673426 767189842 246601262 285707355 425595518 207999815 199405176 654792804 746837181 311783265 392552742 489870101 557144302 42876431 24374810 574267382 660755904 962029240 639990026 782890063 23044205 580325188 492965765 615590264 874148817 180215373 393568260 431891021 823644043 226333939 956554661 870021645 971879998 180468252 126060356 103265381 366806225 779558931 513480071 776867265 516581685 232740011 557154988 320646317 466391597 180169500 252108419 218760975 855616768 404003206 625477149 599581759 32142569 438519898 593285625 954477752 20316574 403303206 848785378 300368704 507035080 315282773 278220207 457760167 592763627 48790285 6101154 428400096 399784070 711844317 677808151 457069218 632187787 363395070 128678802 623600205 508556786 806081389 213499677 647834 243453252 607224789 201218124 135377329 782259915 979541005 796264036 246321463 164073876 508799146 326427439 320983729 772704670 856269934 400632307 3599181 936415374 460184414 413435669 727850571 718541776 902359131 976238916 368000575 487039111 837662181 435190796 951968713 880723864 876894432 617990245 50628749 838772114 850720136 128236020 965130480 413903285 201165047 270214691 800081759 555182442 311841361 365396057 277301114 21224586 886037290 338845600 733649229 236234692 85496506 509883542 542496582 451790264 922926495 609376058 373919818 883658460 653662056 919346978 498273733 377013816 874361922 474090698 421297844 891568293 656363119 571984031 52803748 518153709 538206036 256855486 733774034 829167359 214253867 949935631 795963882 202577041 122417298 250735641 620791903 818451340 194869005 168970685 932350831 546494574 389534009 450262900 981355527 463307078 227176623 965236452 734552451 453279494 244214606 216781174 142652385 410991877 616947884 388621307 202806744 448526364 700548832 755913144 548332491 650592421 122372052 188780527 396079338 318262007 47867046 350183387 730682840 949386275 146995927 591384810 366105185 327376134 265559367 970969508 477230306 622684886 463181358 177038833 809211241 603399057 825339962 328612225 78992442 699906543 496326179 340791990 809366806 962020196 252381837 167600656 294519284 220269936 913301427 606623640 141868610 503240267 680530948 895057258 963985919 239284469 10267021 401137634 214870165 499135570 500694969 393718423 941647855 256350189 165384403 876680121 979803974 981754572 887512786 567871548 95734683 534941461 731244359 690766498 73437038 78600944 549015390 573350967 461724942 689748070 808865740 934756623 487244372 532812409 727453498 846678978 594649928 51069752 418216667 328848384 783998996 161923251 47499791 978518933 228000418 328764458 654238789 869662354 75141456 82822760 146106217 15014106 684827176 246708974 895378888 12655922 451604707 960016720 191879312 767060040 722769456 29828477 821786430 258159459 168785846 269961100 362554124 970069544 815549498 726113021 395975844 963058586 479767785 569133251 964985092 996569789 410245623 446563487 1917785 419586899 505686785 961044187 449553677 144495039 205425360 622332179 644450659 50547323 268202594 35975407 66701325 960453660 175393734 728107280 325035388 911556011 555157786 864023246 403065775 592334857 346715925 50173233 258149210 350853325 474076327 617787313 599956385 662400997 964502283 266292515 575336025 193254874 521812175 338803919 664692787 434243775 987520230 231480517 221322882 357018839 75027125 83306469 560105355 196763984 131597742 681514076 899613351 793932102 115766299 863120673 557745467 529148363 129532530 968605575 196881067 632480528 302594506 572353391 423428900 312634331 832382664 195645196 373867257 679937485 388074737 432044599 858663044 854548828 418922639 480058332 392235897 737030915 657990578 393088782 891553887 375648636 337891562 281048003 795306118 383357684 805824885 923965026 49121623 144973254 780372654 492569820 585721565 471250962 952711387 89304498 101850926 796493707 809065236 607862384 182160896 556056112 948361726 311236775 94146203 375838401 933838981 255270941 24393090 455194682 694936731 213616176 834931894 765291545 633390284 948938893 29492167 448053779 875241146 726195838 214516080 777759554 2974462 876136069 300732335 125908232 610129361 210869268 322332075 446537010 636658519 368726039 269182623 461024354 326892264 80437235 940554696 742647964 350165940 378397936 186659886 819420384 668883381 417395653 735876253 353391187 367671870 865312883 494984402 850370899 254719790 364759022 969757721 439327034 819682666 927030783 765349615 710355287 773696623 173537601 24038261 104762307 661148056 87885517 160814519 156242909 375696237 491689556 190107545 438488792 183937211 278366667 252476726 260589996 731762962 609216197 467134167 959234541 81786022 377606197 570506657 416443789 483056918 607542983 471020822 202399661 166304680 190052309 615979621 582566847 718785699 888590155 15290276 982722053 218365598 867450620 742063631 1471249 731586192 235606135 978661633 611998633 533361405 260966481 160404240 607442976 433151156 106254943 727447098 175513005 205324675 162895469 285079711 196103774 773839837 960514053 187423086 204324549 774006674 492670922 966471398 729020734 585735025 934354632 265653898 852037005 212192771 639556192 272361968 559127686 52487492 741822300 912904157 307279552 702827201 807092832 33286616 318005656 975545682 724035666 140479499 933237125 872233212 883548784 737514547 547338149 450859699 209470783 641876572 360007196 67377321 279509199 163258639 749604021 64449516 48890082 75956741 314108939 732432491 612786205 868898703 439822988 110762965 200724560 316032823 517159008 457882341 278234033 407005164 135724441 323849185 133130475 344141291 725172011 95409110 932152551 685721828 892400151 37322944 938648520 403263162 487745897 445442987 994393890 359273319 589466875 383762948 887636066 547898534 505763489 729994591 415111637 99410612 363274484 504113588 863796623 717731159 99321331 692931533 134482380 896588760 70386317 621616492 996796951 711106194 832904554 484318002 560861349 834016720 587440862 494189198 705364910 225271859 185520933 14583123 985291362 958614151 592680175 222593440 16100122 268052125 687230445 947263581 110740414 572406269 587814907 751747560 609711415 855664863 327241691 631932945 451793423 997619551 719234759 87791435 836367318 217165453 404840643 236777160 756535968 424019831 655556378 280720575 529213222 712922899 940838863 575357790 419330185 563208835 678830677 398732288 219652265 557922716 238398509 751030366 37593696 898156329 881369651 91357228 835391721 858586779 913604132 329359468 270948025 113598789 105317311 862062910 115493496 60578167 301491178 650447794 489250902 878124506 906805571 994739253 190444999 651007508 667476748 492777003 184153782 380624182 180088290 582580766 865048701 246949784 391899315 672065703 702538921 798434486 795791911 622340573 793894419 681020259 491508626 5571843 643190923 642291362 652665676 435474210 777874248 332935910 339468165 233571159 392308149 801669832 575331910 538753802 750944909 855767492 223642369 244603677 398739841 187704559 994597095 688128415 505830500 845361257 555990364 304095535 359435718 699716236 772255375 687649982 941436640 561612602 793380906 725473580 152557519 873258886 239373078 237288382 321857818 496454256 271827673 954213586 659036747 249724094 487317584 379803014 276544736 26752979 650245809 182626803 335496910 389223415 308903026 954783499 217876591 120587781 951508177 224348260 606634937 193419235 823112073 64244759 937531071 679041712 15754602 239752496 32232128 333803708 56414551 549684919 261930171 468004589 86455274 907365257 639274144 564934481 463169742 533396658 849157910 184546095 904608068 719863296 358975390 816377840 723268038 966986385 805563423 406966368 897640668 960405202 590385354 210597899 812365028 186299759 99002894 349748912 51723667 504052809 905071196 143433397 415747943 454432566 974454268 692758971 57534791 377078785 557299482 215461031 973947118 293956305 197635351 857091083 335367158 785060826 533031283 219037062 776319365 688563313 171443520 440608153 958162685 796774217 446955340 393021609 470340426 933866282 921409878 34569007 438932156 489511085 744391125 4560070 954476942 860614172 649502452 602648778 366545017 357702991 187581196 58451717 560445644 668354928 219627844 48937671 822199776 98556690 481003593 930360890 82309301 151063852 475834033 829529918 869761800 493609743 454751406 334486846 853290982 744180643 970183758 20847440 9348816 672852812 878302013 395370005 318501543 653960569 237923060 164068800 579479668 4239211 412471867 242764256 549733963 276713082 980879851 59017220 902606674 964654821 987201846 388106032 172493394 320561993 825459402 5128719 806865491 198084005 72360653 392109789 863613155 812585446 946755300 372111538 469034122 155198020 936141537 312498315 526781004 295100062 903286247 653544921 721403586 481164760 131133460 452614496 358282270 600685654 448492696 605169185 542291986 284637069 906696324 456631654 980300407 83228665 129962467 311864430 30032188 565873241 681724940 778509707 967693252 759364020 349432567 719208614 490256344 381134467 403401998 773620782 775778534 533633116 564691669 44955537 589941018 132967789 81546534 74855398 73300114 503357803 172813018 216146444 571999124 703942240 969332898 672298922 471760441 727382518 285083144 537327169 231458487 482250977 443778191 104602882 144562857 691851040 352359134 593600078 122383072 914929203 128559689 527360031 521440704 622013165 642850544 268262901 203520567 519736361 397295767 816616699 271119820 552838492 163288160 724583213 817754009 927267157 868203796 984857383 823596246 789509390 934663659 79671829 779708739 367527413 781794087 731130607 808987098 339021539 984852443 662738327 416665777 707155423 129451968 25044534 623017174 773796671 762522427 279224248 539311827 70138373 730195938 644585060 282330815 801671645 236717974 928350804 343332313 914564077 133316001 691051997 694197533 476535904 430693699 243311891 599904552 966007035 260502753 144376459 246936688 298682272 594595418 143457577 529017002 103479000 582091839 42104670 463895501 637578364 26422336 920930423 496330543 900765849 727769445 526463178 942819706 190280524 250318117 80779527 252865781 358538783 128730135 787303594 618676352 800809690 97615171 630161741 385327389 204830044 927923364 939599214 679386032 684529505 804736546 497403355 776533226 151632596 132171473 585437848 273765202 505009022 192974935 235973968 315681555 457822997 873541092 240310798 107162795 14906181 446701113 308097710 863814176 833212285 941277257 540292659 900497994 210821571 299415506 364138412 740121207 135074239 688431861 168309395 904057389 417079671 355456056 90094837 409282288 581712568 13760363 229143313 20728103 103374905 359566210 928968299 541029795 75440397 225103647 949185780 386980942 719154611 181033594 676660887 851568065 504661301 428526975 726773436 677753901 488239192 514944645 966328938 442356867 377213318 199404209 469470866 143167152 417536531 281311921 54439620 513312135 566908343 734940906 831954612 747317105 300561340 942155681 382141102 960411919 299955785 327707050 353739976 615667067 372244423 618713267 689733475 169020607 735998461 732493619 536668753 570325017 996102452 292685505 291583531 165149074 200727412 356269625 49598225 644435547 138677666 908400578 275925560 838192571 343748972 509619118 452971768 459187627 595834441 729847366 564562792 401029511 516928046 215315482 221554003 804613317 597422830 132394251 244462412 988988292 369567917 993911093 771782771 191665115 46811764 808366688 709402812 378191443 416628841 402264689 796045888 595535958 553158222 535300161 243542964 994267834 859323312 150542105 785046976 938013413 159003785 957309118 79678646 149015935 250861845 328784042 838293619 356668650 672239203 440095857 303694359 677134195 822048397 123297193 442441485 905073772 110960501 494575591 550657963 719730499 534918365 297116401 900229907 828858507 114056423 526710187 328550816 373094252 397777933 865184565 19253266 269723350 220141556 475901705 914058617 82212973 828697336 399231843 898470234 270313812 287620487 576497094 191254357 98473935 453699428 996212633 88863418 757945937 621596839 567521896 259222204 923143123 878748557 130795690 985267194 67538739 790100747 504267059 697306547 382620304 303751115 52152736 784688052 697230342 633050759 528330588 390227855 197859310 865677196 239442592 171829827 480842741 379343672 322414434 251717815 827900193 823820306 531147853 136504157 569086888 886956655 679099502 220916017 381602918 492078640 506477738 716585244 142058567 391656080 506507285 745569246 187189712 350951332 671308429 825844560 16950859 367645850 252568367 670660410 933436022 259574271 424138764 101719849 390632277 395572796 969290440 632864988 626758347 34720393 576141831 516150964 173771960 880140090 169186930 233720848 193307920 873317954 423420889 995426210 971334553 601386984 569605274 370679640 814549654 274754609 744293795 368667253 182553319 166010781 617171380 578177107 936069064 644198682 740540278 119440921 39662179 226133670 369303671 673333559 91397897 234439564 570930101 126649823 201635173 131650514 371879390 411906088 247088945 970928912 15842752 573049941 740874101 139022836 517330269 374681854 263454968 319451622 39275752 72143316 820232542 118964668 314069996 728897362 67450743 793769420 370198671 676363181 231960504 281985823 817524808 463210856 77149987 485834734 423351633 41762564 84067344 993619086 698079775 689175732 280045682 383321593 524761895 496310833 272814065 783767518 408348563 924962396 285732461 448916784 693430911 991445309 497254322 50438798 588217804 115894638 380928690 750156184 327986192 427140450 34170260 663551734 753599764 278316423 55733215 296385936 256083429 465666039 916692962 56559144 111686480 560094714 488163824 637029290 448257870 612405762 195149526 459925084 703314754 880732262 823390583 449388314 929665712 879171371 903423099 433649123 707711462 949106577 317120212 224642401 690006503 642647438 339034600 192944729 885991198 19107892 550840097 127289608 612042606 356919326 11715266 332776590 578710412 858878159 880489440 191683566 506076904 955558733 873440847 677735376 394144611 376822116 941139749 808338087 888602549 901220521 497139520 913997456 374648657 190127553 110550884 725396771 290719469 85147086 950192003 742752936 476399606 305126742 161989079 990435228 743283318 394667273 909954463 796879455 808781954 81773268 280398013 618356523 538057345 933558704 680374592 29135640 79163608 624826387 662955077 750585832 30314094 827289352 717190394 306337529 946179870 377979112 97766085 597574892 734844920 371976790 181938418 302016982 748873225 336557288 924075746 794207930 269214292 516306045 709685823 262825374 442908514 776488168 267497660 282503788 461984644 211534536 336388495 80622720 197392237 304633207 983995033 572656724 788467226 268258071 946571068 266300485 512438995 252668372 602902325 400856584 68091837 469959258 575866170 154812351 144991838 493390631 631276171 780376044 1427736 652695862 162096600 695929165 795283503 848174159 605554749 853084694 324736713 1315760 629737844 421077350 928122597 480377852 522594768 504269557 758145525 191600747 725229328 61331086 632115472 170051111 468364628 622203559 117455999 277663400 265133842 847038469 499317399 169044158 425668209 627055000 165373964 677929350 722903529 116372363 92330249 617562764 12200481 171487086 677548383 861736289 706234042 979540010 237779667 847462070 712133253 343498871 54038673 649343716 76156436 596210424 243355274 938840272 900909666 171897189 250350807 603909021 427414199 735135706 396739016 397353261 918357845 941795505 609172073 778923785 210900728 218239668 497866538 371570219 355479890 242426039 850281392 357999854 464807365 464931004 499016630 882228289 223868137 247124374 845406103 110115688 667493709 114518015 271121146 205759920 865169725 469584937 287502422 955560723 251631101 840457264 206200618 388802237 204109603 20427590 737334759 432608228 88393539 177938531 744272709 731856922 453525486 328861653 604478585 531196946 222887976 854623855 74131249 288475629 909983764 16623361 108600323 424052400 768640976 230509659 679644336 21590867 166760300 282160857 863900941 477005017 407477742 563579395 811617004 339196986 960748480 514951174 62352955 597318970 705315345 155331125 776091084 679835007 506430351 397424112 922090067 762759359 464897586 89529340 31650601 928783112 832956557 176836737 267685143 562045690 755890343 707944472 989867841 928558459 450569058 778343570 888550793 297554730 103605203 485942451 853989093 657965118 535460092 733169875 221643596 390616782 83637814 819814880 396775599 606644460 326969572 483418438 653195253 162350705 457566336 909088585 551895282 893947433 296199565 284784596 982240680 781508465 399590556 452043167 234017306 807762027 957738204 850396672 615956963 349966614 85452558 220813321 110936347 88979172 84631157 112627056 31892968 293133828 801342021 52361012 435680822 219790335 983931402 420295240 244312201 512601932 120731765 19231713 194042400 905107015 234641020 757320018 30527466 656380100 363196849 356946315 142137893 238152080 368798609 372460006 545708482 428359923 51061944 839180528 10057039 879015752 740755443 877395863 967786629 113450430 268222300 73383407 680580997 385399982 624193042 928730549 80242416 211966505 105387280 920096536 678886206 234796965 788670316 367681669 862807087 504792586 798573721 984310382 438940879 590034017 339852514 484017020 836289765 880460702 921568108 831392190 497511031 986269394 843172891 423053828 405026244 341203354 227330080 443973803 615177154 744027315 669660067 106295892 244692130 215686014 311641315 245172797 852747419 491496782 266764390 843711801 910248372 387383481 674820022 826821714 517145096 531983003 690643863 465897390 646915669 645891896 258069622 580448563 75396497 6084125 783883764 193424675 402577525 116517247 100347997 547033507 659465317 891996859 343904532 128081513 456988363 672240582 370911604 498955851 209925398 305750809 715089386 375712130 611578649 120127254 77364115 144925224 788350329 486798826 754303829 168220317 779376289 867776726 335175539 330785062 121192902 210859740 485149912 927194756 26431489 98777010 699690143 866731104 395972553 298362822 76111586 377438475 596204195 213902132 276055168 892627885 739073552 32212491 595438586 641833362 965728812 807721197 313805308 68864681 195851650 529662534 89970865 526727301 651066118 543275527 521750867 255871297 893515531 200006444 520791831 864790686 388871261 432776511 130255765 426152132 105436396 72482635 240412018 874472413 797988842 207431381 234148983 671632520 461066309 984706949 711276287 237620020 64897019 383563860 103872997 873010142 221352514 853770793 176884840 31698273 951783020 652368774 165660913 523312243 513730415 818111051 635355328 560902939 71930009 368640130 867815395 300683408 177451807 485941356 610956430 907819964 181876257 858048533 876832833 182540908 421879410 35161740 437288869 273158588 166019138 437765330 954648366 13270242 302183606 750747810 479661079 653272572 354311615 422312834 292300098 138922715 788017057 209741814 474834502 489817975 746684292 422758355 917298536 631327371 790204021 644521939 892912497 586055605 791483201 616952559 362652146 773825251 978765828 141798245 669503654 689412123 558082328 294992589 921799075 322378277 861501233 204262150 266057172 975542245 876817672 390155291 587418457 321295245 413589668 681956157 237050664 787007484 298929331 767997727 408861493 329462168 79844739 503581350 643551690 675658437 267323671 311133534 102736722 715596480 439274028 624499523 884046454 969282589 249822738 963076035 98888461 181688950 187259106 558448996 178132858 482468993 628612694 959910685 93655106 880796122 276364595 207098108 888270054 70975436 652633223 619262582 195254149 583414998 959326505 634763229 861120045 769701245 473537598 303787411 254264427 618895388 945658231 574790212 841877461 623324965 82739020 448684878 145192123 857587659 92885016 961425698 511642649 348166242 537358542 909318235 349171395 263392380 403789433 371495994 563891611 117572398 345509697 399680068 334468122 153039632 621712130 381915680 812736211 678751801 9137291 111755773 897508018 836938431 685149547 511230191 287061284 623489777 219589963 433797196 140527726 882485957 609588336 339517270 85741780 924548339 882075512 21075098 981045292 136877629 595075893 815164940 991596740 88533522 951296959 52866927 591694819 538659545 664263263 560257315 306989979 816278431 339151491 363038806 945981430 943478107 565462268 191940191 285856853 220223601 211941084 554858105 72856434 29985360 463924351 672134506 70845471 215657993 592521290 587430895 343576636 731228142 25946921 858197854 129576817 252308501 676633623 470932056 956168623 179924269 150200930 498045008 926949613 476080171 44764993 882305177 843784767 927904788 857830248 356438434 513764298 878778041 404969412 149204611 425448719 160592953 988861142 495171943 752438385 820332755 680974395 265060929 463943349 929033985 728292105 804411793 428016367 541904861 154051279 107988847 982281199 482205313 568589814 154222340 373965893 559967165 118021190 93230127 819875290 43069320 960988322 542243873 37388649 313887750 979280749 363049147 127591834 217889846 655119016 251141303 689824556 634652613 231365312 541584228 134343786 26310243 54574176 225030566 373931449 243698642 460285815 544628604 759420704 920870042 250216936 605924021 172635069 380634521 526468979 658222495 441708791 960633060 423771589 543065221 783151405 613395531 102285339 682962624 705741999 441259712 27007136 310409975 967274527 645453470 726915946 675848215 717671562 625918676 513131348 346362598 254226551 744602173 99805837 766325298 141396287 937563356 445413773 895575775 208320100 142507474 735085812 594832988 116201751 157647704 891922581 369507733 615763931 101874478 208135808 614301694 302138745 668856825 184987490 483072728 558940196 586307198 13972177 496445664 310408321 633269748 310031974 300282560 801322612 909297271 547094413 581467731 311674647 539983877 504197174 177353168 858681746 939947253 336512631 902857558 941257050 647301889 753985737 447165300 2122181 643399216 741741254 611453569 393943261 721966591 239562157 418605332 630375082 972817582 825614304 678127638 312763761 169634762 330753800 272246890 118988428 50085207 318396474 462492294 155557123 188279421 759037656 694254219 980227744 743779631 446097074 842570786 579264069 946789421 694166266 463600988 366803006 939506091 348765245 268479912 811645310 547314629 571929588 179254463 989489126 480475158 573645293 960661181 993082963 419779596 569795669 233869900 7713516 468158871 497351987 424700640 929688641 294868223 867727216 944218318 456344500 38986468 707725261 112108252 511506347 802616721 815277449 635309577 817874378 462586273 829702878 384409862 38233391 830007203 605531199 416246781 170138636 254450886 26826749 838479022 523894529 64885954 812360444 193824099 73594111 787958679 147698520 422101346 872293613 381706924 184438144 914050651 659236406 772000963 680466545 584896825 207091561 752129243 494976501 512870236 824108494 703285524 253947958 328691230 887298454 853262384 103090738 721650897 134387989 438110511 601608969 860846256 383012340 807210705 30721351 32694005 655115185 113814557 486225863 832265246 340919302 700682405 164285610 691312628 510714909 117407235 738205757 481993926 91234876 927741963 937773895 118757446 310461744 430326133 363761150 314539467 601042480 400909252 570631925 639395209 241788059 163239127 395106759 83670461 183056415 671703759 921344890 16807355 375896674 354777471 706171258 573924727 576880294 279571023 562719531 194947001 889963624 73943268 218896457 373300259 221086107 445210079 952530995 991136151 787364423 843219015 219837926 329074591 694724693 658149852 514780911 228156592 787171071 197823366 739055689 970161169 542846565 845861473 916990307 679167327 661979600 984133838 726224990 971522278 795157891 503672865 13860239 560558893 743613514 920464620 190702504 574108025 281358962 359046549 802040108 430934781 880798557 773348108 959608507 976430361 13798081 559079686 542784207 266466090 70886681 649165387 950292096 741487924 324641303 462989918 648317161 3341121 317568215 936013641 44246407 194252157 272684499 331230807 743720085 110599009 795415726 661912943 52772380 992783226 359036233 173924203 207563954 634568445 742637981 454994094 402624069 519156019 368140310 437807434 20187779 454595696 733639599 739664293 712435049 910771114 820841554 866595656 408703815 209476705 410875239 477184509 525204229 301567101 272254288 109243188 286427795 408340551 325136471 383989682 724237383 638721008 473721011 841764492 971240660 490267022 287676649 267682808 893469212 76511798 441699414 410922409 801423663 484198153 792681620 549749500 960505008 904688673 922466930 99543295 406431230 429378292 508433360 451565335 847869305 212850451 197636496 240451106 295033723 940340323 198428191 601045521 879145552 681895321 250385920 783988617 415104622 445785676 590498839 545785009 987243105 498507768 566138393 466219539 724474997 782888577 838187674 988821267 126342487 220875950 348856133 233919404 56284098 334824060 91504871 866086429 733651470 527254429 231050246 426280096 501457153 419611946 949962914 925120893 739954311 240827107 356626577 390369600 889568760 804863445 458907794 836325645 798598748 597008091 393727585 541285744 111903271 853317722 942328063 748158095 306216707 493834716 597696338 570377459 893904722 653180010 878999514 463539292 964184121 422438189 978451734 99371816 729633462 63354734 113150428 678410781 802947620 912687791 897964309 545946867 831091725 483777887 97927511 279763430 508952290 14061652 247510485 144825554 403328402 262194291 149613156 798860572 170062097 585958084 266079910 541244694 639619505 283944575 180725011 770769338 371460351 977356123 568675826 963182072 586118596 502615098 543053490 840486018 775938508 335185989 516036411 420641355 498953606 932024345 442779519 130613997 682380310 116166742 533499289 274177361 140480796 588347187 653096903 462254376 739640732 387803903 506449796 101466860 453511612 989751785 596012257 616951388 802120436 715313825 13564088 464133669 961029604 853583737 756360163 98043922 82711731 880165209 822254199 47931482 777221604 976500633 867155449 4895227 272453812 833799193 695461133 142977701 115759126 123644660 179222011 912389212 727972340 185092714 985918246 843937576 524041907 866617846 371235526 526984088 795802512 276365894 222527393 925562870 81580263 289833836 604506106 518219632 478138322 156305284 194848293 898130797 149758920 67933362 128736878 502776793 270258209 491195927 426195832 621064729 128144263 952837054 805410832 500804009 596038445 64226184 823498979 28150006 346923495 368556913 688118595 829421981 286478741 494680918 902953298 305815821 193600544 10003440 482188290 868391983 254517075 693777243 447677210 542225927 831931757 776136263 406009994 176868988 640446804 116201688 156531425 719812540 212159735 799778766 924566355 539769112 378951755 416787774 195096821 960747773 497917629 589783322 334915502 707535630 154261919 185951337 239723750 154896681 517532616 380704650 150677998 690339162 66231825 961131683 331107623 640404288 919205423 394552848 102515004 752066790 424616267 754574274 730976920 459647564 786885492 621614403 587012309 911374942 211812816 618624660 459575613 367474371 238181386 330308325 551976902 560125052 372475567 822870804 970060431 346718374 602601939 190471458 544793046 431156321 836630079 899471316 653629178 661368143 606518676 723551477 689459359 351360939 63755942 641159543 440792306 569636781 340993309 27348514 979822571 512234570 552193679 828019294 522213169 716233785 839706704 77456809 460128899 964504288 9037401 686613884 672055743 652522141 741723669 83576350 495670038 698263321 78064688 526953338 651449980 887615374 955698052 927275228 441161867 794693234 711806531 937041864 900994257 723029261 105971501 68025253 14809100 258515960 249666097 365743330 236201593 402732597 418811965 81775465 562396822 215881599 71280372 559222731 887547397 333232626 527127338 404655649 756491161 249311647 3398031 207730721 922401570 805268557 756469243 293595402 605588703 322932912 410243965 220800012 869247935 963272021 769639149 515370189 156851148 588401228 658380203 435511031 714288554 371902877 106239926 710660620 527334405 818816039 236770203 151105784 629646861 802835338 661285026 308452958 115387373 466537240 758906057 851120984 429009636 810568251 917176928 79587938 924381978 790940604 648756771 538570273 311072244 840994676 594508126 905095120 810407265 38699419 300308349 98408651 625075099 176310666 148858190 317022865 621933082 29306451 34543718 341155656 45411368 169320823 58848292 617854942 226637994 575521941 645354882 980738483 162617842 468060313 889059395 495664447 200441478 103236885 512526901 212053932 694678757 367010959 4183867 1431710 796259619 939155876 99515293 696924628 469071784 491889019 577071141 775278149 876386138 389357719 286034845 399442154 185497522 597994780 324704898 283996734 991008221 920048216 388289505 415150959 450859655 505433459 640494548 458073599 270698509 470129573 929955299 71419239 874421160 537605502 677098097 367094662 198701178 97363324 224821571 771259592 262564497 534950990 628406282 772670371 383984170 418604550 396919315 924140482 367936686 159548977 358984264 281704952 211038187 348330820 640399370 148859994 213134456 3045888 632183185 625608798 555145557 485061069 271481738 632030944 507518190 794869256 970509365 859706332 994931296 265027322 954252748 343777444 800155450 246564257 510260545 818492140 224939150 545530486 650815502 270388074 438134801 37436186 744925277 18881828 664939512 635344390 56259064 809888082 691462209 786960450 154571232 190599312 503830536 732116063 173850782 404218954 449740644 409198202 862830213 288348612 764304913 676512475 710435400 45368972 231320048 698518328 872718705 711586494 527003019 509117242 246415456 354986478 501883834 611621613 150829898 167459016 236747636 784097208 20662162 179882550 393486566 326708872 137844138 816773775 313588890 321322599 195653591 87705697 183589192 740629728 984599425 603980587 570086349 907141691 175227496 414261017 466835575 568266176 995920001 74845061 57479142 692548288 60788621 425787677 259424005 222350327 932259543 832715599 299366487 111352660 647349063 838469616 43557948 988042625 75415731 511485340 411061508 960456068 935572304 364040829 62503376 929412880 652334159 86737407 718359353 271136306 170750435 657277617 948694844 63189745 950343670 562996152 441583975 401856380 984128727 415351341 653860111 977094876 201197240 568691118 887316963 478476817 632224060 153463636 718615611 404125652 737655347 996762772 519462470 40199453 678355895 367414695 535502716 685845451 966487361 168906100 572016879 189302997 848070824 310658260 47708958 973597542 298836031 324261930 308673908 392309963 559547073 581654520 716959703 547824118 147216670 979944650 868588230 462440260 998770185 412334905 869325078 149367554 310971150 706011639 611354442 902061266 167424739 327696642 105333555 641637404 633374439 951941552 819294763 644971052 494207382 162843217 287890611 741597909 554580848 294525807 549238507 730141433 99197106 920499215 981858634 969442530 615607579 66122867 119727681 341182557 466244439 318374308 277656800 5062199 627899574 619866770 247250884 101949020 266639715 11121341 193281554 40099578 434376311 750993412 582887490 863287245 810013819 182412738 406979564 582401055 382211910 756377672 754882502 673408722 602324218 345059742 765824617 321865015 723596440 408028110 423928544 86954207 999420388 652571640 350534912 633805988 174123781 93398820 178395282 446844193 224257925 590789836 11904093 479180944 935925764 233640509 416701238 331889331 441198455 8540687 379649287 423767971 236885828 235953406 214285299 421856749 399692014 737613896 173287128 48105494 458031356 476463682 995467581 73899637 792767085 276429413 385955549 373015377 745836974 691555088 868720636 394847153 41065076 387726557 449777681 278547975 217626129 338234990 847427759 611456567 893376860 731695029 564198964 401181489 244261477 805000529 472829303 408700166 988427758 296905799 563595032 292442994 958120456 54503389 846600693 730085468 182197231 13876247 756591168 751189719 642502256 23960712 735384662 599215633 485933152 782450208 552565356 926629026 92318541 116050229 652685653 715841804 231257924 85517328 48622498 930940758 389771391 489624928 335763468 748476352 15275137 58922174 718503129 54243642 715346917 27750378 977587464 531097054 818883809 925231847 209603469 318255923 898438209 626519721 548103934 12517203 277893157 864172844 535951398 514074049 460322816 511135252 325399296 187798178 555453643 294324050 333658179 572921274 582208108 117660902 867932351 743075629 471370177 840545897 137634765 249991142 748131866 803738467 860609193 376140817 926130405 75307371 526649325 51783031 742367446 927893009 602746249 525268795 767239814 556807158 591403332 167349555 786676697 181326824 51021861 844056070 29602460 27200794 481430441 702487910 703004890 813282245 119520475 982641755 787841548 705782174 134393829 745126769 580942678 888097026 645153447 678144592 48550797 352608687 846957239 892338365 704488172 681497010 146221297 293014835 316552179 350890528 250978150 117122605 569274379 771427325 342775284 205263864 493529431 186667991 664909847 439356394 596240227 515670894 929215007 801737808 531960841 600921416 9758467 982237224 293169224 534627285 713444676 534085107 456214939 908586098 997855635 916487234 888762422 177830668 933281832 517903799 221387951 72701701 726830163 632450897 599328708 854216457 860010553 421678042 379173278 168119523 27874732 291096046 407370943 541461122 735646251 806211813 777219496 306876608 340592898 491209668 699464194 641736284 342643279 608455426 842117681 986958568 807458277 935455315 869957940 147326611 722713447 789317345 424939224 447709994 508224057 580573452 749111222 780362117 349057070 933620765 296386832 924488124 251023923 246053518 727003946 337124596 554467726 23866737 15482800 421131568 73047428 455845445 107003230 710563345 240990278 721789893 215917523 981600279 6596951 929371662 116487992 436489303 182444501 997354582 380035188 366235627 556408382 824033022 452408192 983588505 258614884 778828398 837576253 794298861 325485831 606401234 571036325 90509828 216696904 509883295 828202152 898415780 582311668 481543859 762322545 436449894 163947085 705317772 210656625 744169228 443299526 737047239 427657460 828986277 972772034 105973203 524042680 264450887 384681106 326332569 404569431 192650042 616247360 323807293 782151960 509104516 567678646 816147936 50431381 249802163 678204581 597153646 902318944 592832734 256877391 182856669 919663653 657841501 316646827 350644341 190558885 225873255 794330309 201122910 33317207 972460406 701431291 796336725 770902534 376514647 398479574 238069843 134130317 448723639 570120309 901349285 690715224 538924519 89302059 616592141 86545949 536239848 643346846 704819731 18265202 279959907 39513134 49010037 178436577 482262287 505889979 290896711 806590660 549418373 952737348 710069062 194527946 810079373 71076912 626907342 753732540 538101074 203328666 887207343 984267517 603150809 331417946 796511198 853276606 754918908 481276361 905652421 359288436 407421123 334727558 622533587 892188462 492895997 806005786 861465094 443064214 840903199 231069406 401497567 720941195 419207298 984584665 298733434 698753334 319153470 112436492 41504440 148952496 105596902 938605455 743159263 690433042 37327725 885287104 131877727 348331252 743034792 86450971 166643947 421234297 465667777 506933248 932890550 118987131 970251760 310723691 347159417 283483334 298457303 176521116 631095840 222636048 926168605 261195387 863127762 138628499 979456654 8587835 908549898 452417535 68778910 695300996 948408087 532006258 90291516 802311538 670008704 886760065 837591400 720877491 689132818 866640853 571102689 863971255 749317213 130322158 65779743 291743195 174458457 612686514 413628420 78978407 144106612 787781758 196220291 841606901 3346376 817342392 275442260 849279146 833011297 56796809 827979526 129589242 135616037 854211901 594924440 760939117 952374096 990523901 170579225 523375754 345579148 12305928 733742028 459099118 809573049 951032584 513310192 498193563 977660744 759957220 482024109 564108940 521704073 246902514 907196644 300234832 472739077 179855405 179104168 552259640 299390763 333159535 392220198 30581488 111110548 839829605 384426227 454649721 411702808 216389438 23411413 496014265 46065570 551687020 217517756 842566330 791182330 443958484 362375943 911515265 616631405 972736001 788482318 114935403 28999563 612067916 112344092 465632902 626282047 267429645 15142126 757492577 773622463 140316202 114399828 152800302 487397922 962503031 499391923 821853293 290467098 22085683 222980031 303887614 592655744 682905543 698982764 293934419 106893496 466912828 536491050 573440128 669058174 241800039 105655855 245699360 625746207 54249463 73129349 596343056 892704547 160237131 365477776 532780842 121838627 820212163 663044713 901066775 892895949 275577524 263604258 478262444 933289025 377358386 80827377 836082212 244583842 942604520 964848804 196928451 783865386 360069457 636024152 143649851 651689695 830444898 68561967 526492660 712873589 888019254 994972897 740506997 910100251 220583599 103824378 552743033 431874130 16576597 370962565 405437014 118737139 490436402 309382258 971789084 50554158 205603816 193836034 789097637 380167119 894436416 461106013 751091939 294593709 628786923 469486230 329911493 146484511 424408388 291465631 603463495 563851449 41946517 101006579 781735277 123570919 651697591 618429289 662327984 942827090 768062539 309720079 467557167 485133841 710796334 794367550 566973209 369736552 869462820 54626147 992990471 258300908 276818373 780040477 499225747 241131032 863912633 111571366 273559957 596051431 916246307 849277306 325139142 259235208 695336867 123383591 241289513 931265396 47653487 449864065 462404792 911940449 733894856 427768727 595878783 172364658 962105895 927460062 264719714 878706025 593288248 579647535 8994246 604511651 253909137 383432258 375865632 699322328 818925781 626524762 607454302 728842660 607779505 158859421 38300608 522269918 420901611 675354392 986260388 448626546 674192769 603292363 666322060 456019382 822006310 587023715 360970022 651774989 173619453 739843529 94598487 586916392 772740968 572987883 414458397 796624863 301029686 978518079 944626153 905479192 60057179 909201701 208966041 955145678 271542273 10543525 308258277 557928074 19344098 348321469 181869193 624207418 458037176 622132444 293925396 181680920 159631886 625003976 280924184 831613909 412818650 246239886 153177884 761900882 364360111 160677983 875444069 745782558 881308771 732286132 13907082 128439880 413046361 631740486 155891856 822917119 410332581 831066077 824681907 222046738 800633557 109326944 58643837 184988195 419576426 108847377 747826518 611722836 120408139 951460463 267023440 803176100 389566852 402784365 978288177 233964390 417062299 811382437 361418451 843017991 605882548 795673875 992067677 139745015 173141453 226539932 619038781 568958913 306866477 552088294 814260197 853178771 718885781 910282557 344462696 765998574 896830654 372544769 707466595 915358841 356060138 607812291 57436443 848398526 90993 663965363 486160924 526791476 933728714 826956539 862610546 668636163 481034887 629902244 610138232 369666033 400440232 929201893 177526936 334164218 514814324 747625321 922204315 930677503 335950847 781738233 549646606 784194361 922149816 112716512 931798813 812226652 659409319 534253740 689200854 125357729 258214642 279043488 611599556 604094961 836828156 965430023 533839892 334749748 908892691 306820047 876467359 449449236 415226296 679225610 794265037 897022988 158860809 472403754 683532607 60868589 593707793 272969745 82754037 229716209 295776889 501690898 277289835 341758246 213485360 577367505 410516024 545137472 552995805 282470209 489539048 314800225 585065039 199688782 184384576 738425873 440232828 632795411 733563209 59708970 14134625 403840566 26346247 829027981 203537543 878806519 677003687 492848774 53981813 714720572 286235514 411556395 497579340 932563188 469745937 478663917 534994301 667216768 457977405 465939873 215324021 171167187 987283577 543636822 129950962 175039923 414073229 908247318 131701397 799693965 841521733 765720098 959643190 334565270 479850302 380875272 126420073 88639315 629326990 200864550 455181922 920985590 667300478 905551364 208470134 54081524 374466284 901475093 410342195 939141134 59115457 101954364 933426778 725478627 966994779 273626608 942681558 239748746 971219980 622861842 693457283 7950630 37288411 354822470 444518395 594012141 163654596 764319231 765670562 284625648 502821624 390752812 42337558 412167616 276186681 455494690 45128970 394654526 489286546 970583920 462122169 925298624 668064227 602106757 645832603 463140269 937558281 291870504 99930465 836711558 812342124 258370368 442404114 359870847 438594670 906414479 746001449 842346097 608652404 494961151 715973364 315189508 2199560 198941750 5255224 857169169 816111724 592621314 956590098 283141878 319560282 408124573 863694331 112849153 877410219 722463285 928999232 315689195 226347271 818951049 156603206 543327037 342922936 254037269 717205989 913147982 4467974 670608124 760811843 291183373 380373365 892002830 70189157 354139314 465659782 30205939 860578205 30233138 172182056 474510235 651836481 227421863 958206341 391890759 630305175 243611747 301125424 44484027 882423440 552064860 875028132 834641960 961490684 841779955 70722759 837663100 612681495 755941591 391323060 798641189 916816078 676959398 852303684 618922953 347355772 668482545 789508453 753541391 225227778 535646036 294815905 292650985 408451428 161016840 480998645 737341759 690009666 758852319 469309230 276482181 258473665 560639053 955128592 859797482 152516884 637277027 704416215 296643080 865509308 560933357 652342896 986954590 14242029 988869020 517301309 135758214 737358347 790316897 265036140 610214101 874271421 452831291 952656091 886529190 866029029 145145691 756675188 960351704 107616251 164499229 329907457 498936318 922990079 388783681 137814722 488801632 384410631 664257202 297012795 79927454 690155808 189220321 102140907 273459847 17249373 869452999 285955564 688034852 71351875 803673508 28076593 632533677 635067708 1169512 869958893 671595215 151849622 519432581 153246317 534509007 240551673 895558354 235889206 525146170 420207704 305416159 788927899 33562763 336053501 785676120 826617473 899662639 734705314 171339079 180548796 508603839 165333011 298603861 4789006 387710535 538705527 526064841 751322693 957169638 460287370 349125037 648601163 191894041 37953983 264191582 872809053 492425049 793438134 38047418 160191370 381529038 137553950 610481692 688920804 343778215 653817206 243664441 419574080 424040084 798047639 642360295 629149433 370741241 714337677 40837527 686158042 983007036 246547229 426937956 497588277 988558737 421146811 605001183 394507777 67518116 617316667 708041375 943564479 351772161 573111172 243431592 725740843 756852231 801179928 987781533 534520018 177985888 36022684 850232907 844297842 47525499 247687335 935606194 245128117 984375430 343319060 909275355 875729933 426422465 716318263 548841473 434618253 654892474 294819024 952446477 102076569 886652546 600161894 547026247 3363445 873486992 652789351 814729001 225858824 303770784 674237641 143001635 333408976 718378426 552865781 176469156 598709507 268813442 878549676 889255832 393894033 861345731 117656488 356719878 668815905 958221960 780844588 856873507 183262386 4103771 147186351 540480767 615610696 106252809 184842316 377893162 770303558 647459982 942522667 97171561 569360905 684882598 576572621 104298315 839198324 961908932 976772152 312615706 307236864 890815970 658639433 846457019 557371647 739888339 462938751 30692875 18702002 9121300 731608815 863413491 762617484 742016456 393749436 477100484 710281845 707835493 343881638 458603844 11176590 873999812 29903818 144576673 627253084 110592129 169420126 908934942 449304953 610514208 358110715 336650790 208614235 626851756 234061943 478933485 202165715 583472838 307100598 13111343 582653729 390681968 520378124 902864666 547582114 23308438 918579452 927203313 95005066 557109398 420361545 823196716 545984643 133080190 876862923 573569888 978610822 608263890 140535362 219463305 371737398 741382639 862596903 593353405 726125275 32769289 283396129 367180377 287690780 723341499 432939561 24275156 803972328 175821523 774901436 864716532 232224362 913051044 902685793 761598033 413529941 514090164 289626851 585379802 117233621 865830612 623221634 871705314 658381054 553636941 44735468 937649873 773861444 166134430 484866812 604659143 799577033 370652939 914008118 629528928 204188688 141545430 783038378 902280718 864225804 740173715 921882548 315065854 276986418 150290541 290611815 243485244 651885175 681465758 663164163 642260562 131849120 569307839 306577352 549044724 724000198 239230183 306424221 309117251 341082749 63630899 725657549 167923886 855437574 497860921 599931035 36289042 629466904 958413193 394725300 511566278 647232935 808869715 331929780 861887345 691305768 28973251 604602733 757950829 187109353 975201983 199705644 820820316 413484079 418500960 639050378 920196410 76051989 958789728 93583325 523058075 79303339 259724061 481768320 945048753 50757779 365880044 645246781 626730952 784013426 134006869 799024241 955438306 793746203 624955121 319631032 453690163 373423296 937340056 618921701 912811272 272441832 562501854 126665087 349107521 746596506 491335711 890722624 271840267 344555251 328768259 835953033 245304674 901148999 116953323 796653858 293160547 564985789 509565962 402334685 979816019 971678344 723496231 599560246 968215946 111849995 381251741 421415183 645390368 40719928 679456295 706933540 192414716 832683060 450200195 192543348 274403284 97459570 676827752 82292678 277818429 341703225 872548121 318080907 558469673 726486051 43517100 621345946 416203847 408232667 330195372 693146090 733279026 981230525 899336101 921464114 797134118 721877704 371276215 103468018 566053052 442978306 8493407 796714731 748226483 183150536 243424653 298513761 790813074 65024517 357806044 903004078 931187757 645763450 817983916 54707194 125665857 546832086 580973449 839215884 103748916 465719866 644397402 232728852 410419465 6853301 889539523 583348261 105102650 64518285 738331068 279475314 975381668 842098206 516602188 462450685 875796982 194739154 644951700 123867756 540196497 623236688 149454247 67532240 921923278 204893570 781012976 36170016 443693559 344244816 761861803 485420734 717375648 741837425 849420205 83328373 455370346 153879380 459550798 697646377 107324832 124951951 352495640 452711585 177746232 199597521 815853375 528206575 196589242 628818780 466437378 520508626 875006182 243759813 675622773 121740198 57291474 425723865 259420157 344451052 622421366 785057050 462010097 735951996 684919511 481249597 579654286 273814932 822001938 190857046 814829258 126902131 147675758 392518367 629293126 960184547 772314444 221859725 717617721 606494092 599635153 531167883 149804753 966529085 811792966 829366821 814166345 315421930 977913029 537836304 214326941 27539771 242495853 369721791 192460700 716704800 728445915 562746365 819588392 302596901 395524583 465475555 394943724 87743033 848167405 955246152 870060884 257366618 901264388 880134009 441539259 448430113 145568338 671123171 387535856 490298253 302779802 213412560 551905836 706590025 789553698 460017257 487123214 751588758 654069130 481625165 644102147 658941109 683134652 455240109 995749468 596510770 594704155 506164237 672715288 928930660 533266327 6927609 278309110 422663623 619101307 138445343 645581724 149811098 483981662 717048102 109526692 256786693 205282987 210738776 780617244 306399713 159476078 176533067 917001865 212912155 683151070 470383960 643114108 154492996 455703544 422031010 180070840 753214239 17539208 752852135 307495264 31441640 507257447 681094014 187275416 193110758 540404063 335918952 752823020 664004648 41386263 945663289 341096011 89767093 978113197 323584183 41356645 14919918 695620189 346556395 266865426 288138275 210058321 104587334 496633785 129189654 210305625 261480822 85081647 833834187 949267533 873985892 211623285 153288855 120135269 223079076 608147075 943844646 619954986 864067440 107702967 140782817 54725813 804750884 742847203 494179086 936326179 815524512 575590486 621871196 315943645 354661717 591034131 420148175 744763717 608971334 323572294 898427494 419501432 783995525 878095404 944105992 762552272 642310625 943027651 277722884 142179429 525350621 890040781 507852304 826549049 788296845 622347405 627179518 640069359 750081961 515503540 282814032 284868676 344764969 918015995 141247593 230430194 567892385 112176271 445956982 114076075 132918886 514033987 87538283 775574868 538133323 862728638 686577962 181370853 995840888 327645520 86608373 210924895 793216953 20652087 286709738 729721385 782525095 201554839 402805013 376597283 892405463 267627428 976904616 65014035 872926194 208903790 714810815 671786118 721983322 713409028 373584621 152223863 993842179 407188149 526229941 409543141 460269147 696570582 831956346 517474727 679191087 786250919 857863487 424104447 543583441 477858202 692364433 569828165 690940316 646437819 628090059 918491385 84690455 292894026 155384452 133148613 178853752 653609353 416672120 479150008 802809243 895695604 3235240 822897888 619642186 210225451 967392322 125369007 179392453 760005469 747034722 507501760 604020874 601233357 799807765 651362006 629113858 64326291 830255826 733161171 908353556 787936372 747999417 167174208 150558571 882804699 697061352 714712611 524293914 975079910 736148761 909362604 864545443 649108310 870260524 524288464 87619656 122575388 637670264 936913949 650624738 930719935 244541708 419540443 658853381 310646327 757821992 440030644 937060106 688430289 923628249 729763143 286367426 577147523 160464861 76395951 979833521 473453757 510506510 498691362 570828551 173087349 624919495 224777502 335837058 231799589 989462796 500855990 871516526 187925887 80871402 325706127 201672575 410391328 265293236 704380001 601959998 956787282 898443618 642834800 608234821 179089412 380947659 751981150 519888683 831986912 994423108 741048554 282319559 386888805 906736625 70146214 951307524 85237488 404536452 721359071 73492759 635412857 544297789 797636832 435208563 923992462 288578650 501008787 103917387 827498156 122615656 508906827 963063535 578671904 572262796 841168027 304255431 537675986 347439020 958281498 809486678 234529154 555447399 79760921 379253490 956707336 563936939 164203092 814066101 52394700 437870466 884561034 75235938 820090576 556945754 267681086 273562991 389002743 3017926 924096564 317634987 549363707 595920117 294851188 445595493 336664037 568479541 838911340 293315395 309008595 194349640 894776600 920057654 188944446 570165017 324114539 608489565 919213726 14056830 908866235 371819101 518659619 468252117 426007813 715784739 42470561 884949418 951839174 682881668 33528488 941570771 202876093 480312183 564655848 379882479 557631514 546675177 307188252 705099965 520144726 643201600 88208386 651066662 119652486 789687125 889372470 17773935 169028859 199030363 4796417 78247058 228558493 162115712 403455463 595892971 755052739 905111503 450160749 155411171 114894421 3051330 487309053 232228692 151120686 55866199 695481733 520842272 62828614 895651534 994713717 751976727 304589745 490852658 547765435 145295255 601773953 393075834 166641875 843510362 127227619 898828121 142032882 64989312 571489968 281786949 59169070 90323536 423894900 813561514 185263339 616565011 220148217 348069383 292815544 232987391 694483183 683608964 497730048 401341156 471012292 351506556 518932281 722956898 608018950 640379766 57813619 140512118 689584710 700989319 281298826 719229892 858770928 893854168 187921477 812261962 375498720 674040728 458058412 922847023 319458416 421126936 122794894 269241691 231993416 36017262 578708512 362584310 863123561 261099112 214836999 690108401 514574411 844848809 416464486 793877390 149049659 95768425 651845809 273642761 681606528 801856980 944269680 544424233 428102886 700363681 78163110 361860 995564434 79782722 480959362 1960225 297419112 516963359 885873913 456061712 107041912 102525519 94762651 563289927 809561904 950932399 887440412 800770596 70946368 229378182 399878403 19815336 193925832 189045879 693929357 107349689 86789156 149393206 307480152 453127408 11149841 752274864 503714919 909929700 293885303 264332506 469893555 852030169 549172879 224479130 752675955 113212878 83152757 73380169 222084655 102211981 318896705 147493889 919875831 546961238 664261489 407972171 513999340 818081096 795461158 103393933 686846710 70583378 445603232 120472629 641193104 18911772 798592623 726043734 8024699 184924168 864385549 529585407 300597346 861338899 615765970 185859956 120698610 81797385 677354839 261571918 524239145 417934191 69931670 994123656 474794955 5754207 216198685 753432320 949643077 369737165 372889685 117194413 911174070 558354900 905617596 136187695 707433586 117189359 542868388 339436024 257343666 772685554 920115912 967761584 739510072 742199105 716303467 666881225 477325061 460962352 13103450 241017052 428002244 753060204 3455024 413099925 71408233 229103942 225959011 995361229 313626040 748758466 725103770 564069398 798528980 952513769 962395918 508884781 846882888 868120360 588414727 943099034 301442409 284023379 336611422 636495250 408188475 549802032 386127226 952911776 115666511 192224238 912242096 758487744 926681476 737145569 407996789 544734944 177119243 308642590 245273781 631286143 466319050 756032014 953719970 965643359 888954701 360994322 58699337 117663843 483239191 308916510 548429734 119516037 549927805 399240245 914539481 591662276 743432737 627026329 906989589 249110658 415162568 148673193 586390479 400108437 717220387 131643657 793450296 853080871 10449802 282483437 82008276 973802104 912888965 965286002 390276056 491132057 656967569 127391599 898882685 449436014 933173685 78299256 523194114 729193012 552256617 834578696 797088036 672422652 916217829 785310236 189925648 648762332 722770186 300160948 948897888 752871971 365520307 38117347 388392679 31155087 63845382 169987267 251573301 401798235 772276422 788471166 477452610 785221515 680789180 399310158 925026815 948800393 713207895 932116469 196479617 259423469 666699681 480964507 341009540 163953473 786162446 536379566 715685989 734661776 469667447 752832878 459548099 926818928 383353456 289076401 370543198 811950604 448753835 857248012 665658528 299437300 486220807 970191012 920788021 140690330 569230612 809838142 45865048 879232253 531321095 298646647 604680679 526268786 327642008 15854972 33883759 587809291 252288418 641826249 667322261 553360872 726159317 238102054 324001132 766783491 591125296 480529777 534271219 492273312 679349202 2086988 571586390 611288992 278960153 285506066 208235177 363380656 852449502 554137596 124258703 588998361 962322391 540789525 665314615 802069361 836291776 168249700 770226657 580093136 863725222 894573026 362991849 486239512 170025572 365796721 730218901 759842516 493973699 742218481 852459991 821912529 173459421 719965186 653216653 165098613 59890070 292816743 623016755 346083066 226268103 938702228 805194695 38628193 401368826 96220037 784541123 625103107 131419671 73285286 653125539 422458064 733740379 254601325 842389192 833966991 23662926 979228549 67166812 398791030 937116361 482142934 41828086 979641137 755775685 141876356 662826136 437474028 356570806 702514105 111879482 88112837 628259609 381753076 415479712 227494101 506261223 53670252 903852309 341352578 855550593 358575748 465399557 296505054 912670136 426530650 817806903 251740365 164523028 598240315 107015947 349313863 64377152 355485049 324138746 41182150 288867166 277667574 492367661 802532857 264705194 821878607 354211990 204053036 973213091 719768159 178776754 719422633 707708234 686661028 858680826 7819851 319840113 361811911 822972505 760285421 996635872 388637703 783514642 770591769 646238528 909670810 129543312 271974372 986068547 125087403 335183477 169610990 739541462 582135936 111402783 746088098 1686171 418978066 674026242 533673740 724372908 696847444 544259144 465171732 694425876 133122195 179083407 546924986 91707681 979535289 946218252 163820658 411795521 565934235 233970042 865950305 26147708 465360701 548593113 435357842 898499836 831171928 787396311 112980015 592470153 717180121 798201748 417432654 488759846 410668965 462473678 801739917 479276656 999120179 30880416 977134784 264940124 349827077 961329295 159817630 328661558 204532124 946007401 668520745 971489177 271956784 379607849 981774870 809717250 172305396 188048827 808476844 798001975 515643838 215837907 264725616 673897160 529303480 431604903 874963073 361266032 147333629 789707142 211647124 229881898 35165657 159020565 666952198 505087749 367688739 215559999 316088655 157345868 105548412 429113203 403040018 322219722 516184883 840281731 563606956 515510588 938579608 689544608 516093888 768115248 756870403 784470115 269291378 127690433 190763708 974771563 221375820 607943018 510375547 619807510 167358693 91212031 743580301 681945185 134876418 397150727 264522506 220290562 248365298 862689443 64242424 378927175 579958638 451362284 382720581 230055500 66623755 853222411 921939600 691910832 313616126 542396860 701394205 489191399 449466202 786318004 647215519 604323516 810724676 483688386 991934939 592580142 614393236 80476863 536308141 782854459 493215320 565178314 709573480 715406037 705813858 140441598 882355589 653024997 722016739 275702471 484758154 616233716 379047551 237385739 852550288 28547993 428126179 70337322 525447365 621883718 343177987 53107386 919227137 127358308 275143423 850334147 167596662 763338672 153768005 788773062 849285892 915046937 682846546 398188434 360669420 110100156 62295084 937795324 912127596 870384681 792552220 54465722 532708684 449056177 674693575 968159140 557086792 234260228 602923299 306278496 256760866 331760190 425104078 788398388 561567611 702460596 14355324 86351990 431047431 893420731 716910434 14386710 652222777 300469501 868387354 108132264 504243233 511451787 904008672 67674669 280017710 88312689 475566491 146932159 995453314 320795628 166141320 631374096 365671582 484704103 847995422 173928702 109807500 753197391 614777850 207531967 860883186 379102252 794724867 414468084 12792062 962040275 218496678 11964061 226926921 547171347 845747766 233968398 388987906 342779780 912689681 506664368 865009703 173054844 70135881 931504596 564538386 970354209 210156911 108791259 114987373 303223345 289723678 427255950 574436906 226933149 134186459 319172456 159765039 27154083 583360917 547215655 95230547 175238688 356635999 807739614 406220535 636149354 311069757 565688074 548103334 987107139 352539906 601777446 562451062 229259500 353442246 499201271 616875062 176395240 811763787 620653444 278973062 916216033 147841186 600873906 284319908 919916180 729597295 365955046 615999952 302260706 58529046 827276375 737094921 390816475 843756774 403065480 922225856 111597060 921354199 812220467 409730282 58901925 954662633 194123935 830182830 663426166 546350827 62221724 739591542 231347104 993935399 108459655 976141772 273624124 687025537 334750739 138709819 541196224 849979816 406457711 808703406 872086041 214470511 673769659 31547738 543862918 850624852 141945245 547109026 340322357 291933728 54618936 566719547 726270525 813769511 722399285 234701453 765450291 189167237 399873018 32191142 177528561 414818688 856667838 815471520 60287354 105685190 415462582 792957567 857598079 902732919 193375977 272356045 792028937 170467054 941605690 369143148 378685056 539265529 368007745 530819980 104675409 209950207 811099519 463135792 286527259 445796805 550034360 483212246 985189136 409552194 624856967 172501302 298495925 988566649 588106785 823306427 347719949 909338001 432176281 369560951 620157378 627232078 255785445 575450336 453765827 949329555 884415267 3275417 417982512 416800630 98790910 209412199 765711742 134401095 853290793 9541291 310222738 804841381 963714908 667707098 610365421 411461309 21337990 122794837 858378375 794401282 886630161 660014705 117617302 987336495 43877261 398099590 921062636 118325804 940693076 764903248 32776121 779159624 230657770 737710160 756810843 605287711 288783948 313023523 852521678 337194318 906051913 976346819 584387523 532747122 262430914 8779773 491590553 499562171 598843612 634936617 336082774 531578773 832505993 438025193 971498031 811943273 701157249 351385946 547356357 390424009 443173372 782085962 870579064 741782124 262317773 940978020 252126211 882147889 154620686 546342491 396508747 191546617 188857269 463389861 576420611 981544117 157846856 675884553 977043418 937990 400531947 832849316 51284785 499291384 264351171 537440332 522841780 489366934 608826366 842728301 570809924 53749790 778540923 647273352 856012274 988679613 517943100 156038145 71213429 52368749 582535457 64571112 624434085 867574561 621161379 588608357 447410711 584436968 648585627 415551527 390171555 375114088 622915836 418060358 867060546 422728615 460619170 800710635 511829010 452924024 428141803 173648418 794971766 507198120 336282856 797542614 999048285 736710873 153152288 745955872 111483888 238257203 493750274 998801055 130630176 313185702 948453727 78456365 855325888 256589575 947972821 248517319 149806214 187300671 529167524 70130341 701870915 885106568 457294934 505157958 89922859 871383150 643578809 311121902 651886967 254950547 144234395 115124830 982906621 461663341 303400622 989433102 701822237 196012231 998610347 391640461 954667251 667146227 717372409 185868585 782792131 21785255 24368773 374081011 351628047 522026573 125191116 135297896 546484674 289087663 40031695 849225231 674461515 304630280 762772781 642021738 502283785 119032419 289846019 885834186 945831609 917824755 245148478 728014651 570579696 710495502 373750151 967920110 716829912 674195120 143688391 352966706 975883727 128627082 17746476 493752299 586378600 158903211 217702705 415571983 509017787 977424950 607805051 40353909 212885029 737898144 88884518 259216340 961484661 810389136 709332956 412827266 460092328 859238164 74624494 206650202 194227204 299472082 430132400 110181767 769039358 105411795 617936581 100526144 302997497 818689831 542274632 69185017 69151035 241087628 829322530 222003941 505974447 126035421 697309447 230662747 735548766 91935750 220308112 202521349 937394375 428104789 384214653 375046674 546214480 700778027 438762964 777438780 497122322 515339986 219316533 387326616 826912318 254813102 80242294 909168226 239823131 181566190 92704950 300230336 179441370 934527041 243790995 36394366 326739604 648172294 211209079 278309333 479963852 305433765 963799919 574062781 775914586 811778534 307502135 853693800 61130010 726338996 918543307 153649247 112611071 328434007 314875368 981704023 170609771 650026165 582153622 227753144 768196646 947784740 241762089 137147958 479139810 91444527 627910584 127697243 384154531 59559965 99265369 427778435 53350160 490659550 320437200 91356467 998487444 235070201 844324484 313979103 603526049 466926884 590073844 287745408 643430923 543862904 717844162 254484799 513610577 21458271 967385015 457477700 573466816 400314877 225883602 893426052 948208428 127856110 468021760 162921146 177451753 950185362 127406248 150797582 385596220 680421861 355329136 901393415 480150181 672513891 387079276 509073576 68993561 1074357 742579484 849015447 299978155 774379216 330533861 68530192 864337988 615592836 297589664 975368818 553568046 666337953 819775323 331022962 274139222 930759061 483813467 77009825 302671524 569802701 813967773 957131458 412980363 114280330 555805705 402918403 933565763 526307690 897486902 379506012 890742125 815028721 267334581 109985615 53727783 697005946 599246142 21243243 33204057 650882067 920645731 696914566 288930623 771328916 772906721 652039838 476043697 244371857 133383065 218535235 302642825 169844721 827234498 705264760 58306708 903096018 297025804 263095703 113707496 953012498 82681767 986455050 221575310 298932494 918561317 660010692 602341380 932959394 642144405 834984627 714486211 969689853 688398541 661108069 61071787 537076115 472452223 650514507 866015811 35547282 158521633 814975075 982548676 146637979 147327645 386278433 698466596 767828198 257584002 623438937 243182172 137977466 637169998 397400016 775126278 452757602 314117580 193179292 53501123 971789924 851752853 752931362 890475979 531793255 619969143 68793448 779296568 409717366 996726107 592477440 402285529 239956382 814323959 237988426 413365018 278335229 79982863 717405467 231497846 771830808 358654377 829536052 653926738 642271458 585073711 323315208 18044733 530980971 330799076 385346326 733739612 190384403 849286102 253560278 807298393 334936482 160320321 2098882 290541768 15977683 323790042 110932163 884859592 209522928 255827585 228881508 214377419 698652979 137332832 887942497 900434540 149104951 522166710 618885613 619997505 857703701 519500959 645492417 192278358 607245802 897507160 140468769 121415813 145745518 436266089 298572635 831988098 698435070 832035228 366589365 757266498 483004687 146705911 116119638 689841371 762408211 410851785 901593997 904637082 321098894 173094819 811627690 344045963 161545912 389521753 802868109 687933878 870462508 334642790 821184820 961866578 445704722 203747679 186609107 226711255 963278908 933047526 849651850 120877449 661215063 25296957 285165229 404395028 387428842 847669324 899278424 107814582 779089637 250277782 184039000 17966274 928018017 131533618 844327855 577526864 63289578 133359788 424415699 708608732 206902375 846397335 726509815 762270185 965659002 985763554 638428200 716606283 279804872 371004958 267687488 468962740 147163394 383081666 402702802 969734280 50116739 997757689 664208105 721326825 429813607 299859009 264920576 343466092 903657083 707167512 506871507 42787000 286040092 140616644 792121194 588987023 605114388 409769282 451490826 466667258 562248665 883284305 574570733 514092734 813167049 982859241 788986199 484788761 269300439 655393852 665849321 843611020 171503433 897362896 132257483 638569119 531139761 443075920 936286549 971488426 164417651 699583041 623111687 764543318 399272790 432674293 341775602 292731769 679350326 42685977 369783958 768429662 708250638 206692325 393372749 297078371 320652656 509648037 291574996 371357932 700873548 332887744 938309005 402266513 151040614 642629612 96760131 887610891 721026395 687163753 294021051 825175356 798525139 738136748 825454981 263506893 360586309 215631486 210640419 341932879 198142131 571274388 483185062 818427847 254723864 981133503 454747698 246851406 741657129 500770617 282834093 33689979 166581324 313678756 62150282 617748187 496780725 286628544 195670807 733188252 88521651 4717186 322496743 699105904 878727791 519534874 835282335 10671252 137435556 942419751 338442079 66312674 808267748 167770168 292959512 346140156 383841784 736445890 808669145 760213282 480795550 506394562 260083909 818267849 517095869 785775845 701677455 81485330 324291548 602569343 176988154 288404519 40087559 339998330 131394353 285150632 208933462 662681630 532177972 942803108 660808144 602941906 203549307 121531744 519322466 861295137 258527929 306810170 268974359 171509675 645211382 523594039 261623155 12060216 772692725 513333092 585272594 236565854 418000475 110453615 235497708 821675930 55046260 111243569 187575101 411120005 776666166 610253375 452511844 79686174 396166799 366485901 85488682 978194080 431452943 266660276 55565015 825914976 574177229 272519686 957611573 778863656 326637220 699909788 292211100 983926803 352340448 123247922 566340885 104522653 184243433 492748254 166279489 417381834 942084550 350805532 608410581 668759338 241281779 683911922 495442857 230041577 573326976 255987723 719740439 403605186 729835267 953089242 333224148 10304903 160858273 469600861 768921318 347169671 58327048 290841188 131056596 918687562 890562006 669760225 198473552 995363037 443659431 977134073 83566631 59832059 270022122 699707788 633096634 426218621 955079071 333215927 505665872 508809657 745179510 480745674 637001641 972556104 156232434 940978062 697789400 547902348 290100477 266105985 709140154 750145705 191488018 619152030 435614171 95295623 534697772 765768897 715373854 248183174 930544522 469376337 196153338 917486334 400956498 54614855 834847130 323940519 835836679 708080494 718926381 982545899 386694483 472660202 580637401 991956165 806380085 246302392 310794241 815737053 437344507 856459150 873406894 268852345 165602248 298923905 249908567 26422440 152943433 386934063 839819104 453009188 193891175 329176506 733641429 139495537 608449740 721491844 488712379 788834638 476983669 394768547 101738701 993608276 991393965 203957109 193548815 910831010 183101816 796125523 343799458 381465768 746067073 30400345 673412756 833991340 703490505 811849597 540866483 8498150 4291928 194382610 837700141 442753947 428184234 636576390 419028846 615227009 725835336 642909620 811248665 633821077 688518206 530075326 97734626 469547466 879640906 217549548 33281240 773356005 686829086 333182775 950362887 290788248 628670013 888375242 316558660 964965597 221801354 491858004 615627699 588567459 359534037 385428191 282591599 216165329 483585503 801738248 611705687 964523701 319874781 967263496 830761417 429841041 102542688 938555238 710067952 139117161 372908470 396884548 799740735 53469081 812824023 355135076 847519231 89220965 131606693 835043875 104181204 255384619 438381615 375909744 36408410 528491213 850282893 695249866 962242725 823159738 415649361 905545925 946254411 470532892 889727093 136011682 283328907 30493254 665257922 306001888 191301061 282067787 305997602 525216118 969890157 613562895 385865926 121805318 356752051 440988203 428614202 639886727 463535203 914672797 40984278 62007652 618391176 413743695 875978175 348051475 42792894 13242021 515799673 335931952 134447844 310259119 441429266 144871409 271539110 162962520 53868358 474425137 769511609 529021919 628559721 28100727 311913590 133653128 768091918 23074666 876567923 877112596 465303236 851359112 426043633 867166764 604865241 964159139 749961083 926304254 119957482 410156753 965204247 317296607 287481532 90171036 408209724 391942563 811798226 642926695 47441836 841468888 37167369 806954574 662160502 504925649 460892742 556860981 572031873 167925943 305942589 898971471 511752967 503352799 984363554 731545007 977911147 751827979 566158546 841231123 611283061 375749831 94860542 950006172 923856330 50903995 709810684 277523240 912052095 788514127 857342176 606536017 343940507 773251456 668333042 78159844 562205406 683019988 299444304 484013748 622030774 823464598 529452169 823790659 44181171 457173185 994206594 25471136 474316233 35848780 134365708 725315397 576711828 574970556 936852529 193741992 717976567 140512126 632375928 280731950 64799182 587358504 500492095 272623792 816657769 419317425 954575327 890730019 186240811 407277302 953367276 446925826 637990452 408135991 215568558 561799891 282629739 796976992 597276552 658406701 63709279 850193180 432840905 363005404 511969466 833347817 521459988 365475329 100520316 769359612 958658486 442821388 940725268 717273407 718120528 264620966 941833525 180062343 735917178 360896455 157818248 261185603 611385520 971247083 459124025 516615253 507353882 876199931 416544945 288290696 93419822 314175924 593224623 302122905 755793243 473658585 836211231 708715539 891534848 18836024 651393773 5262812 507631598 790136285 60679603 144267942 280902599 55793890 720364600 979895134 277193836 238370399 517183861 937717691 912016357 416323284 526835262 121968410 343790802 453721564 117541400 165713344 416309221 643373937 692734581 729765422 320774742 630789252 682961108 110856592 594285992 64833477 74712043 796488009 444143923 595483572 809585552 136253644 826240222 180569269 759046076 802665695 69080330 881288848 556030316 991068293 44733784 690840857 348666437 530929264 290872870 492700116 49082553 713392872 855122256 734834863 956552085 630737893 359184478 647129913 945697352 932604340 154105136 853512825 315473797 150448131 258844764 481015957 814924269 140772817 574411736 914075897 804064298 971383022 324103595 55588260 33555401 601079410 115713441 955350425 88174592 530374946 122170996 850165732 423203801 283787941 504451409 865644329 666839697 112780940 417720272 287098940 751158654 524007122 286082901 39094495 967269867 1208157 575226542 408530558 449288565 799645723 474152720 894081262 608036790 586803974 696816746 737916125 930266560 386271145 948953094 207555590 758745542 138173631 229165613 157748543 223824891 308082439 334891890 165738691 230776546 353276785 169215568 271863588 934774528 93227244 794368394 843122475 960759345 503687471 529751854 819138766 344879950 822708311 663741454 909297769 449093485 545158417 623077466 272870664 670492207 369753836 554316744 435162385 753875555 211006406 379144484 678479695 926965870 256699285 881647571 222986841 430060398 719903224 556823865 247918309 240570087 733688982 516503697 525940809 174801599 738486692 24857275 600808155 100679531 26220890 401128640 316024438 314527854 683928053 595639109 532289691 50324585 658173509 678302161 174262630 571025416 201666099 99318443 66583816 687580481 574467219 215781000 940270964 234916761 82840698 624589353 268068712 79643828 813584974 399332161 524538732 375802086 494811131 842941351 162129806 576267360 718919910 63119929 974302293 962814378 329462479 403493584 848371089 957253641 704893237 704323828 626730323 796606327 758774224 968664562 905942011 646276410 314478682 936380655 407156621 644964534 905426837 876852677 178716521 647118590 261502073 806406758 645902413 190831670 616338871 376167783 375303962 131513385 972289972 712718823 93260938 403313345 807759863 605678336 140917267 753420376 117374273 111183616 698891910 771453676 529607780 593358893 691557178 967883207 986270594 351762760 202348509 770656456 167752271 667632655 751688738 26374884 513101956 483337694 840655720 869623456 927938607 850369962 398626106 973301497 842196158 918136532 308442835 812480395 371630334 149764538 125127879 902012460 415487266 341764925 79790383 277405336 811915383 110060693 731715712 218712905 111182460 873036186 148225098 352104985 785213412 427460227 493095531 536254547 899861187 707512979 291315480 840530541 123272974 607282148 73033004 51362150 911509940 307130811 680271040 889916707 830042728 252324020 492876392 894646528 819039556 877731339 895164990 946554710 430372012 788228193 736569499 182750101 652573129 41424541 701492406 439904705 338781038 694477580 896919249 111448616 344005344 865044572 289863615 760001754 277229745 590977821 396416932 665347026 463713994 377654096 842161483 350627192 145345291 923247962 916779278 818308980 563178213 596711887 759725034 928976442 804765407 99414364 832930682 365209576 689820697 894056360 865367430 594598820 522224166 87066946 135799428 372248023 589828085 199826789 329429833 477290351 15775233 830350810 657449753 727186054 173165805 547761830 217918496 599143827 261891087 545021368 293008637 908502558 425605671 367810490 91965334 236190910 373944178 300383383 806612400 236462503 233009379 83950240 632158981 731190456 772586671 782719646 221618567 533571751 614431734 705630757 908913839 39593597 462315413 610509926 844971315 772831952 386241521 750499551 23935416 169665025 170732610 547470421 937888897 359103201 550744775 198757120 911968299 935788078 279238009 398526993 688851164 657204238 795389240 785945684 567614759 178122581 93026936 102333253 275405413 264581339 475301473 566589317 179020945 748449251 556384215 137261702 532495921 466529038 841885419 771373868 377600248 526237036 863756129 676710048 860112455 884976291 805661917 88435129 613140234 430150200 238237385 668798169 297355356 520006804 756168885 684030476 744682514 642279789 647646773 353581091 964835137 522018006 440052888 58219466 602797537 77849194 978563640 146546267 678063680 483552943 831808433 555853060 351034399 434089490 168003216 461193950 176261811 562219661 433441252 743164805 575435441 492096097 750086643 202271136 716242029 190693352 134102126 754815146 213616099 813942062 571903030 593580544 362421621 293890742 694662941 272467403 761088490 936314291 263082089 467503999 717123716 378998772 973517191 125844234 437401393 470028212 820008407 933457081 810333343 955562318 548758934 337958920 357378274 838529576 664096895 139646209 232317519 752706400 352440711 681357913 93763643 761135686 886573079 141474784 884190734 889559425 703435239 469330467 39940546 495717671 488097434 468589778 448621809 885312291 431991546 891233487 962234777 57074394 48810841 784606671 674988285 88711764 543939448 474962142 218700094 587869806 699144405 266499292 972911230 618747874 321713987 579121884 895682296 703745348 372659089 378868224 819598282 702204274 931206350 97011748 164355706 684285484 716968915 295534098 793018405 338422765 128017668 828802028 402070654 208485220 702072255 23443940 752001849 54088493 376829676 344373479 272858059 506058825 690626981 359682313 328313881 410564974 111736256 262647351 580385852 946341474 660493055 383938033 101921336 601662508 549844834 960545026 588722955 229759930 872715259 200681538 323677715 844718705 714860560 451243199 740345893 475545844 261760338 943481484 629905951 242139750 732815443 939587634 234891754 667652290 840697457 10186817 837220324 622005528 361794567 344914422 951511140 264978817 627984829 797757407 698337133 799940828 848617698 258255123 290647805 540743798 781626994 365804626 808814512 244669866 247561996 627081877 889835594 481440345 538949966 349267536 168938690 832943994 953785817 403121533 312934807 846655806 695979914 59104606 512371335 401230097 585745612 670521941 949973674 907512402 869201579 719743333 461569954 446664140 454098642 398519293 773198693 167043068 390025984 619632888 101486479 499296385 513193052 467640144 713796519 866897840 958472443 50437977 26604751 267625509 174444258 339318458 883437360 690827407 63674554 481014934 997191976 55374300 380760888 809566425 974880855 478925305 575018912 84918973 355716002 320431049 74196744 637268615 8133670 831746087 23131144 651589927 909117324 61556007 965353804 188561940 849256211 931474440 348783575 706377429 332534656 401268751 792169230 221403948 77852696 24849186 29752601 688022725 210199008 744179253 599336665 906221359 110159886 198306369 950721828 24481658 818741781 755349880 970409130 410903164 48364962 270215540 526871413 716195116 614071890 30138352 773673925 911404647 137718283 541115381 733442523 383391501 25942616 686141948 869131526 996700554 941439362 627848511 877670993 893359684 603300788 758567905 88573575 749664616 610935606 147112863 104908733 518316851 205218353 662445051 31255192 856296162 924453256 609331361 582421926 75259588 841810082 423968916 607541057 34231339 570885733 542754938 797117028 817351133 479667026 66331660 385513825 699700045 907497699 711624563 311738431 96377870 734650380 117464845 660633641 995286942 482691089 674619349 697810140 426154435 221498337 950875636 841074171 205600977 805738968 729313759 13015506 473479207 439590399 554708266 485860674 899023370 307640170 639184235 148470529 455486596 558640353 516744096 85922417 825405023 158067002 161527537 500068610 873173620 153227596 338169025 212158649 475601237 77302877 208512129 1290543 867686073 284885261 235331544 844295176 710548133 676392988 653761388 878940521 762175497 270812587 742716481 507584199 482085204 988745344 134005434 913216041 356351395 796040078 317471415 999535786 188104985 430576980 464063579 884071553 74289658 597491810 108480581 588011115 354862166 426861028 839106730 199428617 667991794 237867026 851686756 460418530 99684479 4228845 756009983 413887664 674370818 650321223 207083603 854131087 706647199 507453096 632137791 296170600 573481877 993572723 136707694 185995964 88714617 207474859 380032849 971425039 553740781 107882505 418314450 524036208 152854130 542570368 778476269 284995226 904828300 937230752 850078770 710685699 36083795 897279691 623192419 162213016 729865002 207537978 944746750 612269859 147678523 115024145 221750370 657425495 31786617 403743163 800490087 203806081 972039194 286691194 422374283 488500094 747414954 308909267 896870799 877326227 982783709 379079978 284629948 888201203 870537461 705628585 267021591 953671859 391583625 314270109 355387351 583179396 759777196 182531264 129237254 162694637 788096393 642796086 517886356 592898869 411829007 426465485 760874808 300379893 762877592 945411430 472932916 388611997 921386634 828852724 697526828 154962769 590773614 840031204 513468484 11049624 176739224 859992109 813407368 213116127 463535540 447130903 342426924 851338999 854999666 1564147 174010520 504337063 898180273 213149211 373292903 221519393 815362608 572027896 860643718 939893879 471487486 469330017 46277092 927756918 695643773 578283391 437943640 13836404 521986746 236036027 64123915 377680513 800706780 385387413 672786612 163416599 331903663 273038517 549655347 308601777 22104423 352520658 345375618 682216922 114116694 493635717 424653454 497894737 112660390 682678494 668477701 862147114 216283817 647344809 149864077 11029621 758659062 809146644 833311831 100794928 248321494 705900619 169885730 460980322 363302469 626743986 117481122 144855886 259932381 607420018 825374270 404418773 989324782 99812722 322213731 282727271 255342409 670593992 715967012 381616647 384819961 697749758 980645180 779131992 61737128 941679829 92178028 389858992 83252928 269828412 825825581 887353331 69554111 396475971 208420509 17950314 666802697 604790682 476640685 815611353 630459926 218812824 411713928 49769305 207417735 585676675 29524291 347623276 11459082 20201976 526320571 481248650 699483927 928924868 141759138 357752130 410074483 473093524 652047475 143309065 127640639 452219322 904139748 582994549 823607805 712731611 487586206 914523196 457133087 360817840 10681446 753915659 611250226 587972846 657957163 603092549 724985026 131226487 52133292 819018465 840690412 816500888 555594402 661197017 351442866 481476468 656713243 756540544 581977248 676689227 461160498 854469798 603600396 851729443 227417164 143303787 468063400 646382021 105606233 930075232 143542814 261815575 192938907 625936437 754416810 45969251 643475555 188629908 32547946 467260110 56280233 961033125 459838391 506456986 230490346 444635524 40421162 417882086 262334300 518821200 228646379 512926597 71070583 149556448 814866567 937306678 399544772 760473078 864662204 509333984 639613253 728925829 341526203 223423796 872533452 886040388 674519626 974142095 52760865 673280070 583788526 630045580 74915545 737167683 127597140 626208408 964442422 813969867 179606807 11763697 674323249 502251970 890208030 487575359 345444404 702094694 209347817 297474250 593433911 977592181 589942245 963699867 774104131 260916317 773266405 851424405 397286794 322026431 35791067 420844208 780266377 656199568 275023669 965121779 516661564 598318254 712068904 643566064 729461065 227419351 907777976 672900740 366549473 275204060 483454181 981037354 744046984 933901179 780581761 469353990 249414486 458631060 756913538 311835890 959122631 682780325 47469548 574747953 490655046 466926132 579986845 818234936 552127505 432016508 550102880 997084301 990131039 521248092 584113339 149074533 563768082 909220707 417316261 7983027 258858686 579966307 364319634 556547251 938141266 504345934 577029557 119171091 334914961 278685309 743451466 145855517 112100328 71881967 292814614 529396498 218660838 834989758 974467778 720570725 776186770 397764984 106029190 639857556 621300558 318783141 493194396 317026068 647344165 909063809 165452133 692668836 761338930 583123348 173868812 157471593 773294400 993464267 499146991 431751275 505892455 921353947 898953934 656716424 688849082 996898440 449624223 733294477 183386493 596480876 714775415 833413160 462208979 319262391 318947987 323908004 721595007 806300595 67126872 575071487 8152291 678073631 451963106 95465837 669223137 605002434 258378736 565392798 335498111 935380636 984759364 741524997 962777209 276268839 786627037 540430653 386766600 529139404 151967869 891199398 905922395 381694227 5028093 682446268 49597512 504673083 43524710 810489485 718903310 491043661 627169725 382847671 356631552 734759067 70998802 254018409 228825206 718969144 142435974 412372544 882370632 50484574 517422887 643862260 634265893 865515264 409677920 860757569 120741029 216142769 41597890 337304082 711857063 630649629 879028362 83470725 40378991 495469649 186997557 516399523 715821448 557936282 759071389 500064983 116143957 200887759 627368872 717834163 686366553 303453149 8687184 327398021 108151054 744709437 584175039 316943998 964060260 291720317 106779168 188282533 944281513 630055178 124512572 832292777 964044448 988220985 22795519 945952087 150031978 965661450 78719146 497967353 227406001 709699103 157580155 317958477 184106184 320659672 221482356 544831433 608213289 830032570 529761663 667120787 887332914 370976355 525265413 980103184 553191761 69728241 253771103 619655461 535278602 798161167 764283695 33997001 714353137 172330169 269634465 900309316 261935556 730215190 627927865 340844959 34842231 931937703 534695332 69331 20403249 814202463 411455248 988845685 653374326 224884345 419360003 777224410 832597747 205195457 265055015 386060306 367760774 772138581 459724605 225355978 849802460 657765050 10907836 802406273 26435419 360562462 326570077 843224164 514710355 411538338 914053471 22498382 729775125 734803962 642659782 736780100 640665702 645106276 336884303 106353426 917108715 431673729 382858261 424431728 557057451 437023570 903061550 727920004 377184744 690967574 615656399 806212042 517387258 910262571 358419581 171973133 710711074 653205219 532347720 382586119 226214184 911548725 20686564 860148273 640703697 613812394 954088458 284576634 122972310 324964662 370932747 61469275 410056743 809395972 544247336 668470357 916716920 952328249 748940202 621651269 934858136 393292877 617135097 616316838 666868692 242457106 579963448 361313659 506932572 280773416 639803150 808198719 940901512 467191591 52637170 184134651 450985072 260555225 295371752 110824546 565762787 752313778 439505768 631449907 214379570 106991886 687169832 317978219 446240823 78187208 770312318 928258780 438155421 51458942 133851320 951529200 998692957 376053900 906033046 237329790 855323057 191801900 366163167 814337480 676168514 489877152 337425268 172743676 75457400 238611105 779606812 189868683 918501776 524000869 534252162 335777329 860553975 781730533 967039992 666715582 127126636 940980652 67159548 113747409 109924976 65246358 590367168 426088096 795270148 294867227 642697481 144494843 99997917 558717837 406448771 2090270 31934161 155290572 251579119 806563113 595507394 110124870 427694282 59908254 513251814 673654771 695518052 983226076 381350073 990413829 466434073 133031774 342869911 784882019 269992481 187565813 197677187 573023857 73789292 185795848 376196652 574490392 102983545 394272951 651565372 186343888 195732458 715862831 453641621 555290449 132719584 240075999 296768477 651685381 922496556 651187932 227316250 859485314 486622499 668271756 882404662 480440061 780131341 454799290 619583322 950354174 148823553 787015813 39279498 246548594 855504775 213733683 548515294 893071981 456250997 489478419 468614627 636664865 686734122 849482862 209922847 28774190 237608647 424598167 70240611 795486108 901222307 315308428 776439134 343196797 516525744 947325561 951817527 35916704 966586945 697993383 556850807 50019239 99793949 908688425 141984564 417475719 362795177 989741196 164567568 115523034 740098475 802195591 918183772 199510221 934389344 764247123 867322068 581614921 294813077 493386304 891412863 121163198 561762520 93947918 443461512 195962885 221035659 238346100 301863713 711810872 979434911 944747424 311271925 973815445 312175312 234542490 902676440 88914542 586262591 732931347 22399771 87280588 430721951 760273750 268067421 808073607 930342548 881065017 681726495 40975556 480837043 857205487 645520974 476141215 160247835 81897466 120522006 486145859 791004163 687177149 787825956 324847311 196414656 86698355 353638387 125919393 565941796 268134079 95547762 933217032 523556490 845256000 559734244 518149652 237181312 609520200 843441456 27942759 8268960 874144013 19260529 706418495 772714412 368576476 913170053 20986571 728339658 783028369 304700876 430354355 490050273 738719478 85834281 545613973 854831149 667240812 224380740 485966140 502913366 506928421 462458812 442120369 654891754 848901629 399165908 453789020 312948918 457077705 930383767 875138412 970841749 630301300 309189605 533885488 255304378 600838020 468152001 882316087 893022579 590808923 864503401 466520106 600989383 292867475 106244113 303177287 819732354 956038896 779150768 280229355 744472390 283344643 342520182 176033247 932914034 94552346 4898586 300636541 72503733 39722569 499967827 333503799 522160363 948843677 588531503 21640736 880590560 568511375 683669274 656633508 91386495 962590172 692094020 861573343 202267228 568379815 693394370 47489304 714101198 226611055 779730900 513958752 188568682 641491201 302956693 469662742 310386483 910837846 640545613 165426276 423537091 944545075 262922260 495975504 658003494 641960659 872637353 856966272 401051062 863013738 73175799 669544089 409864825 845982802 35445047 192998382 110732006 367897701 168222202 113634312 505283339 821518535 17331150 862713778 864783545 813308200 472339388 853206446 420941412 246204551 854960647 258140832 189177181 73727395 105276294 248629267 616155680 686994048 870681573 785408420 136591868 735971897 600761489 625024796 381166520 333254229 752169987 115255855 308507446 725597605 101326925 323053841 199270903 764869599 719684480 516979179 375218326 249022691 53203254 763681642 183020156 891581072 532823716 951850611 415572966 44223086 662116834 923674266 932852932 146920350 501181278 622293478 867254796 548811287 192479768 344505033 943197889 738038271 164512215 13580769 94173525 524334015 654615410 529446166 58587704 266398447 878745883 940539719 728834575 838852015 603256854 510469740 157837734 531327087 168699270 197091349 135517580 266468467 344307991 608428222 597980147 342848302 12560033 383120125 822384085 375858075 346088731 385871227 133598263 392893103 413360813 305640859 863154865 765854728 23702846 987039403 355190999 211862542 172445011 875909854 500703259 44068062 252987793 227796377 45267498 651548371 643659247 763176851 813696477 683971762 836293950 212716785 708171724 654899062 870568116 95385629 737268386 839164105 463832007 301452907 234134933 827049692 781048510 12489433 185034090 706408503 364469411 648651863 572127804 133658825 22220078 332277813 648232958 385728448 247882767 23014944 615603751 427978115 414685052 929349745 608703556 967017594 121813019 948716077 333489950 860797348 50587015 937067136 37938085 557823523 930305866 241046009 984310607 59432508 195684561 717781901 363602718 452161194 65938716 66447055 234157062 911188755 429661915 899395537 41557540 587605253 48847334 236011045 712367676 628637088 168580608 650671116 35548749 761493931 908937390 767891518 510816273 577673295 521038856 681752376 596852493 98266550 629816248 695971522 104174688 27864587 334510862 55249082 666777109 787834381 214732882 403737660 493241666 824874650 500051643 402282860 326797122 496577239 167678009 351756065 990448706 595675119 103824299 404103199 652957320 667993028 110460145 791867005 443122097 261002085 498216544 906354027 612159214 261049510 485112161 342446941 422476491 867624045 245584056 105772010 975547462 107992207 537782423 259830360 167576555 467721016 222531033 911143381 946873398 458944311 532019106 306121660 3810100 318102189 438776336 144708818 221093498 792383187 614064105 971083122 135782619 416018609 572812243 53383134 26990015 368318067 363068866 810687237 154000860 777529500 953135715 805625979 789255069 778068803 976451556 95039964 861432442 913511713 873603273 106305311 376605033 483217998 599227518 725763128 974223020 193991715 402556714 853201804 337253614 900385250 521471462 872321460 71242106 148403215 78981332 960864924 173720592 352604854 340273402 558485 239575586 142604042 603341362 864609313 448353638 999968432 870165554 807606703 982123195 891600588 437007136 127831039 818889195 28077518 345737930 89340027 95373059 933275895 211574896 567993507 485963440 155555879 622760577 581239807 400868798 811859944 6528303 417147330 425834181 638677010 317119872 938494289 695027792 936088169 206125373 871295323 356758984 637290469 766312938 368813176 663125723 692812138 903634770 739908827 101487091 493781957 65796245 513198685 599152671 824896610 626475270 635659632 815102694 626154446 462670171 394318861 393030416 709146966 604434229 844158374 400277270 327538274 700473265 16683406 535525360 309087968 152886135 389925853 569190746 544043542 493124883 499652843 44428170 1628067 714334673 116671310 736141975 651388304 902921242 83072081 962953032 948626875 427168164 841957665 189642603 938829365 43664647 629270274 226829488 384881396 343683989 835980732 433043120 265795724 426711476 798729253 687140289 132938506 882712348 884396201 984587068 51124067 100042003 139383683 441047999 551932352 93649718 456662430 169476261 106856153 516019692 610169368 526350372 864521225 166424489 627629122 771910266 920544584 789937868 329142983 499443359 498347085 61858491 841167521 2537249 943193268 727915187 480002875 654633927 456928120 443448006 301873958 993579257 661584697 783439059 144297833 676327136 602481247 623458733 750535323 976347022 235377250 302266681 188988054 96605431 804132773 193509612 412088416 929708667 860015743 794273118 309694660 350282524 768897335 798748279 631049663 563653164 936990460 376599277 924230489 12392563 718296317 305412196 493041680 70001099 794451445 628671319 960916798 748918811 520852536 398508964 229046266 493905362 814859418 274750945 973870867 957902910 751577355 955594279 406748522 702747965 379786102 852834276 706787039 46609083 786832429 188887809 460353060 533022982 442688340 576897202 885806653 513169049 169604061 300066405 267780400 811894656 936863492 957160198 904982299 340742643 438702200 507686381 684829475 603722390 291240292 602861840 93138843 99781965 982383086 809312654 417469054 1006578 894185494 303994449 845915632 569862454 213418751 775030356 477699254 184176687 203666936 797999142 215736528 336971444 783965184 623240242 376793746 481990828 593013463 523813449 994380894 691321482 7791873 717853681 494358253 442895600 822645538 10120962 896725432 235981391 391076831 653140631 319219938 885845839 17869535 4242743 204555955 311947456 858821193 656382252 688158335 570581522 246477079 683648062 900612170 879438109 41386243 894158944 216883522 568891881 153559058 115544150 372779773 892734817 732956918 131836678 457912012 461971718 522367205 207984363 866376318 714496744 745857821 157115197 702788625 502933461 411773667 692647313 68706405 789001156 473052594 310791769 212352816 192760513 43217139 853647694 107126206 983927178 1273554 926967448 808301401 438709066 663193088 886117234 9496365 216300754 938582166 718738287 204949552 81395083 327456845 556726862 26521970 11220579 855630517 913187209 681743788 312108411 766824779 832154129 924230216 650796784 790915207 478282920 847339423 756739643 139434669 930598777 881112844 566345959 822378607 43686942 407973987 184240453 575801237 165597088 500782472 448743174 542160279 525981849 410239414 255228261 980155127 814454223 237324102 178937312 311295616 20410875 277511602 613765991 608784048 622698560 917308190 803938985 386335640 974883420 941084330 86722816 574664450 376956493 459796859 864224996 275045345 272211941 236404388 369357317 222106187 22875412 176568426 243238101 546056637 658968109 611532479 99293435 912282888 171359901 911766084 607331742 110910807 261448121 548727961 629403689 817305894 617148142 831469014 430617743 318855118 83121215 346158682 679691396 630049134 888205311 683269992 10426528 389258046 438431961 974119984 996069460 103285186 521586776 447054857 232791873 793683407 169057185 673337675 807767804 874090342 871990750 392302754 865870273 524483133 344892171 638403331 783724617 210556219 637709259 726382791 635873418 763314126 400584660 948770805 955434429 881520594 8482031 11696624 562574079 974375228 259744984 870226613 107918517 914275667 153408262 193514196 962439388 85695975 566610316 97294910 963257476 569873880 103087597 878109263 613077533 491526755 794183524 557227523 198878379 861308650 433227408 231996405 236620709 699523606 34314496 952628785 79618325 770956090 825902466 85182281 417591683 693537491 794790433 449529045 982869308 863790773 203551110 648782235 449964565 935508562 1578263 862928807 49587419 716420685 605328859 745659192 508810359 609862960 719606859 769897670 804587697 397182011 300184113 205353452 27581906 988415114 566917199 893841938 324726296 510425662 783909384 181128401 79710841 713518040 614735388 321720510 8722438 551206606 425552025 612479013 598452519 570815101 303639612 180004431 885588946 610564529 338200219 841914333 646985921 624507365 106851101 856061923 893571139 892015791 321172244 338203097 328568283 472962567 665479974 108423676 39491228 466811811 623962707 759388382 410670342 227368718 565103826 647871533 988507669 552561207 483300866 53966228 957835344 575455088 595402329 927572591 286121462 446690076 424578375 388405623 94415307 414419468 116980881 639175033 693831589 614320860 126473944 83147567 619615480 954563706 559782841 562171379 696574771 310901620 742995279 613590587 238479384 89543214 240928439 525362701 267914640 980962536 759012238 452348525 247757557 231037793 753224606 601092300 602962669 520635807 288171867 599118087 318261708 695712848 480959418 251059117 587868304 724990597 769301340 136933372 287053028 406182371 157646511 651340569 706049272 1429854 191678879 313835595 710833391 64641823 135861040 910391159 912720644 722539051 251647991 213418233 93395557 921632392 785333725 146446769 985282373 915989758 594797662 565019243 224517852 798895849 929453710 10767150 495862348 549941239 433857466 447564918 971369623 255725181 459232173 277220408 73022205 722891067 212459629 293075827 310344169 78220297 216837875 717022631 968710298 373356764 351498611 721422208 745504733 555209813 275638462 28269088 44229375 734223071 421328045 336327933 528688740 917348430 378090269 51807959 938445004 987448570 833182456 800107535 499725743 567949878 205655010 891801522 91599604 623947455 643393371 953939966 107114713 205426225 66224378 573349755 68153476 213919412 104814776 974664191 849151532 326215124 679456180 458796270 528732395 715929722 603828870 521254529 404355807 971702392 706155882 176617796 138772629 42843042 189876061 115989899 235114978 190345207 135495530 543128596 142265989 185800590 285894834 61192537 286311134 559741103 736865325 553611975 521814835 21809670 121246155 853119916 429455829 151601481 725215849 876080125 267998925 735855658 637201461 175097433 19094012 492382321 962849236 671318702 766860092 969723115 166757376 677792305 812042416 910084674 306121563 825147118 841174601 156387968 367700431 784662997 497121707 961236538 520220216 709336440 56887719 132199497 735958365 735525460 654343849 701695223 799269440 830062931 672527914 867728550 929183132 584518624 556319488 102562177 486286203 70024932 875525931 246359689 613810103 28150474 20306621 369567069 213290419 376159690 988376748 934925045 664159475 824208311 928324839 238342325 891298340 93863047 595508401 494400272 431395991 964598979 582476202 366603006 707028582 879229806 375734561 301851996 449640425 787733252 210267005 64206671 77300222 770748735 9899381 373705616 805913914 362981223 229323667 742233241 100905721 200162070 948731672 90402077 187344022 956164973 689635903 929337950 45162760 690988757 205972238 704370869 264335247 814381842 171603182 496467435 692840684 714138151 748381019 882884573 737589361 846114853 845793999 459954607 172648846 458391434 281344573 876182232 433526012 361186649 113347332 680054141 687446043 282826563 732743108 565087513 293978708 847514472 398722552 987331500 821391026 214456223 36938650 293906620 715684349 32909301 930982691 106778978 164261983 302433376 296806583 218331842 120302121 729741072 986652846 127298117 47247849 71116529 567590605 8645626 935179239 829118596 737869516 191597780 140524057 714208246 164626582 323482626 468101302 309901224 761908870 720897517 139932834 941681147 84525599 513554101 357140559 474418701 235371310 245282028 69422670 873917808 452173821 671872194 407205439 753344354 321737373 382078497 53109825 404234534 918413298 251177676 609547623 908026347 434166598 698601780 458907861 503485833 501344006 258485762 342612365 61387078 720190522 596688692 44354831 408699706 196479128 547403864 224001557 561198606 722981438 185051765 490274812 684226576 917550770 828902414 610356106 254853556 46895065 359156806 637113062 299926038 651088053 849614859 85347702 562042637 327109505 287604937 67872024 879886939 335117740 373405600 433131950 748698193 896819883 866173716 648170398 38728336 796854719 929675625 984482240 709889035 877185785 593179717 579443014 603706027 29284486 952371711 795711910 66561828 378443488 311667106 572881200 989147351 535159791 701629337 172661047 876329942 290452772 206881602 135521807 748022977 498775460 101463334 142601071 267634813 819289866 937169392 578006873 357909240 521045723 737655669 976224040 903580931 244570583 62030583 406710477 8590279 835982743 381450407 32005801 445678249 510505879 596331016 103915761 233187772 165195419 434631910 734526757 669025716 702224126 538678156 707944146 990283927 764138907 623323115 669305211 235322531 437643388 491495473 561868384 735152637 44950325 220645841 871251782 922201175 615117252 490865868 422377962 609322252 518031104 990191579 152411788 322356291 488472675 362685832 25752816 205947730 162849068 675913638 680792461 916747680 53605377 184901206 416972062 414459113 481783244 799070730 727551265 247294339 544944155 161171430 860510313 582335671 578793338 905421515 294329925 698359870 590898431 278158667 296712163 251094888 72356766 573463644 147140628 744083547 849174673 302681668 267903650 601863763 134284278 18478773 998861484 213064924 481054503 258938951 73493035 353010645 781564772 779940269 175415812 672359109 148416071 828408965 26790020 396877394 492026520 867329652 160853859 138396769 180382551 825918467 594484534 73829006 832080463 754565786 324037213 724503035 623372517 5037941 698214454 865613429 850774288 581248806 387433786 464320584 764354136 492385638 423301251 571832931 121967358 93312981 840417879 335644336 951737825 526680220 274799025 148801801 58910524 316596131 366031952 41158674 487540291 434701385 4289230 588568232 338057270 316519543 890817154 934499626 51098186 285295105 808874269 258286900 271575296 711015504 516728731 728233393 170222230 784345780 252070305 729232229 546590172 509839382 848139392 977979468 833652847 241684162 974031768 222841791 516449018 752479041 558261912 996898618 971327585 134927768 986156641 21459733 585439612 402816094 50324891 34358726 469941646 224450168 196183775 827419032 333067204 513904280 45409364 479035027 823429091 131255679 399925383 257537399 278322035 97721957 112931335 99815554 122296250 931446657 683040580 326512682 185352128 965249821 259922780 877472740 272119085 332857120 912233347 63748282 110102444 212565521 510559922 826486676 436810415 353068757 747727237 248622330 903861673 174607701 912941418 656920312 311760202 751340361 958380687 995090067 119319856 895063337 892032991 206587449 473527821 643443658 315070342 149757191 596490523 756167555 803160409 631632885 744979269 42829716 210549040 952878733 174706687 359470331 992416619 734204130 389824298 175712378 644162003 275488947 568403485 453634198 340966220 96691457 360540375 686724786 919821553 513836039 201188657 309611657 743980143 134809355 221019885 519280842 953183378 110837532 232626420 875905650 327637952 710964208 54748499 82612953 722296780 767892942 770894672 922783366 662305824 543716701 614585492 405939585 636778093 127224443 777715203 602024969 362738009 798934010 824816167 199429773 384279850 874700352 18794708 813844878 833881330 533796545 384130301 997609561 683996674 190479166 662617337 792900226 177210867 673792507 969923368 987732219 530349143 596961515 538505365 978888206 962530835 306266180 158016454 301768376 708162910 102629581 425072799 627955796 515046799 60870830 926716672 154513032 936380973 960567473 518683993 916930982 798314570 226735536 267798326 40760205 418642831 133644344 711397009 981409606 957615182 515745455 710396357 670544346 542858303 508488523 948610145 217107184 522471327 436753432 340910405 399304104 816810249 250910244 622072956 940941479 180751526 907877187 227391886 944040196 266905305 156598686 760644225 817678212 263884748 924838956 456784318 481676366 390575519 289635300 559681970 634868528 309645569 285069423 998011798 449231731 515651978 772648088 134664074 97052348 805906531 930339234 320660182 312062560 255374950 372659040 514566095 495069262 469049413 247186598 199846123 947516515 182230334 658640291 15296170 869926340 11116976 119147345 695909592 418580893 549069237 271999845 378619519 177418873 615646688 891528862 131170537 139627426 254827346 493600002 352123645 70649903 404598071 134113487 226940444 771760633 357249514 446518566 677840262 561410622 884855456 208818384 161710305 641436220 282314085 223345832 733331588 515540354 50665646 802670104 585436705 427461361 422598555 803538587 872682440 374416226 343456015 241057704 632418786 552571298 303943356 453829182 862905944 835231797 775032388 58769341 411577975 38350205 78979663 921506296 175166319 757567283 110417267 111099612 217958186 481237263 380760754 207688092 333003819 952765706 144494259 858735764 950890388 429163141 55491964 224203380 224454410 443700392 392276308 612407866 177773260 620468766 723365321 784698160 95424173 775417170 807965782 783748408 820715089 404500358 496246808 39345893 997897206 209734242 633786975 39784463 972956701 845932670 267465431 824250495 337065753 772160087 698291580 624494464 873192418 124808317 923540307 238161974 867735961 426832642 719925852 848605136 657370720 156318007 871021974 314190654 2280000 839681618 91303633 511128023 277363458 162327516 990526877 885564403 381468477 931838103 301917031 937641033 202251529 271512888 721668398 529315543 542706603 128044584 585996813 237903131 731286022 226409105 40027196 732783066 386927204 148938971 349817568 310923084 450571640 110671771 800596481 659150583 476924633 631436253 99875903 62563037 558385997 297093730 281494564 662656530 875980994 887301222 142891777 512631131 235502124 279561928 183680398 591355655 258808073 431221942 345230772 132894733 532847352 986518086 760514605 359332102 802812142 125781325 312631418 845268001 789850177 867075904 90221702 987391235 794164426 942298780 545310659 423884564 242287886 446338520 271451953 47803405 879656737 664576079 265339617 348404226 605797427 269430669 301769722 68779308 308203918 125511406 853733714 367411122 565306983 247306765 902008862 541050991 763300665 144252959 484587139 523484710 909581934 431987033 859375734 927641846 668997129 908867166 557023592 209640401 608693901 839269079 480335167 293027119 874643186 533068819 28368093 845663061 140839231 484835185 481988020 79756752 740606901 862358037 639063336 667582016 741735895 698560413 47354453 327949327 400863105 217940996 939365716 368402534 635184648 211427036 96433762 388203435 527109950 339540273 80952911 557020914 518981341 755926512 613990908 800860759 815386576 677197634 78174227 151074834 637242281 184136090 385777149 265451615 926317476 968453399 799727573 46565281 761459064 238374637 215768150 433630165 596435739 970813087 820374284 94589026 845509714 235131177 740214171 992173484 649036238 124631942 69723873 46028581 572226108 971789525 210411435 800148227 581456397 534633825 635362214 150575096 601931867 357411890 447404336 602816057 496721648 475061271 705025924 441359171 905567772 555726029 707466412 61657805 697231440 66208262 786271140 303894713 161692955 269507872 94206196 898177530 805369390 568998235 611148791 174642166 967387887 422727835 73721187 241361249 562196039 307596266 375818834 738542098 437636860 875727147 800428714 877347025 457947202 470617902 246265660 204652682 577499251 699561833 54809755 345863770 200845959 897245622 554702278 52041724 532227962 231936966 584857251 159316218 752454434 890597757 605059380 848946017 913232433 252003810 215189047 472181469 281681781 574562501 406290755 852401011 450084636 918367184 492457681 527165631 711928060 865772272 295229413 959465931 401391150 942841279 560033878 913876295 607876321 997869684 999422927 72753112 34135726 323355883 924173011 224101100 911410350 920525778 897728197 459935430 548772658 728416347 383731793 961018171 253681042 475070879 661742533 159554618 636758472 761831172 898613453 776041046 836823392 555082476 232607638 80967533 547145088 397744944 551398989 36568276 795039138 109271844 165696330 840078660 319632371 269000236 335374439 556330311 766303506 309776168 977662908 525767251 522904699 489150916 672387467 493990729 83078575 79137148 139337477 603414345 333756374 461098808 177480311 69437588 776737863 703341411 292967210 80561330 763054415 868414990 988402432 319127189 12672537 940824786 109276241 860518450 764449823 231727529 718383329 977357042 708427727 452856828 192835965 793430889 429164962 325879817 436424307 13617329 939295263 694137235 772272821 758395088 695787008 54297460 724630250 549431443 755060278 600592100 537808940 598061306 616348218 947693028 431774514 872457392 600914418 337803818 577057275 179204873 672550892 887645279 800244536 943942943 915650847 724018896 570211531 644595453 775718058 27162695 312461506 694258520 890723153 303338937 253490584 93382401 892291121 138306132 974072321 65969642 780191222 639971538 898599131 348827736 110296485 928280871 811451661 919318974 342285742 462794312 959070215 389237459 748108157 611243056 364861070 675592188 460495357 653444636 646512824 100795548 271707631 224527904 278769688 234337035 377140134 738149926 736695170 821663217 734849146 148554515 866447033 839521338 746056226 306063624 603678026 659021894 159060104 382274970 811437018 352575028 933775619 702399977 924701167 361015196 305585397 704287751 229240793 961058842 327378088 683141037 464524657 465533061 516304674 632763593 827181092 704621276 208448771 434386145 64627582 541384229 184326987 608864171 266141933 100977976 230351568 709304386 9436360 394346772 950894627 878814085 942151543 926125921 557117583 619209959 540925497 715862874 577128837 982295018 946186402 249846889 341346122 865979677 421537079 90464418 914148361 606924786 850050049 888405994 768467263 361817494 818274718 218960758 841207484 919415179 822818945 910659184 109351240 195684073 53171209 246779282 82731448 232323039 787734719 801940762 864683994 132421168 526476243 613646677 296067629 968705841 342882383 471401504 517909586 137696760 893721612 843198622 124622241 200646545 16922713 679523245 210724243 639360483 980075415 522616861 291517527 767369845 328470003 141086340 516379972 287131704 809151992 379849542 718503603 483869341 293454371 945194086 22292550 129076974 136949724 488759897 493432194 293053213 214689208 404330086 790708184 925051036 220565454 225184370 869121480 405836846 602084516 260404731 156203577 830687249 109940744 596871766 446537170 788835421 273357929 299690785 495539944 968328329 704845980 986173640 569193601 410409574 373229646 641412358 989654110 818550967 683092294 441447740 10774175 83781871 177950672 272980173 650893058 572274670 539351110 730433174 458597668 369615364 458718627 131472996 898164763 587478193 457066069 427316037 162168785 233734631 585667348 919668664 51451199 965085504 292166767 455523002 125085234 249475626 743993836 570497860 618092043 534081126 895351222 849298784 709364859 912907175 855928061 510285253 481328138 247249793 963415886 251044412 582813194 994389388 417139439 83123833 299428606 306932096 303504584 662681983 243215188 257445648 405290373 940511765 635637811 913603349 234566848 891642270 740651458 602869776 130422846 935728343 758930190 939809276 516864431 287002657 718283841 307126808 784809088 451381258 112534142 669279855 264336014 78581402 640107309 253851027 404324281 265270151 518294621 534305655 841159395 360596824 916297189 160118033 44360354 115620638 193984419 579102510 825132261 876926967 2603630 114272492 254166543 929011903 165518260 420110235 883056515 135071897 374881284 731456314 775846675 841400534 469458949 284019994 73931708 184518038 529866570 707756192 550881874 695891083 762487257 382901648 415245264 998076905 202716352 679034677 874873384 225931115 428508708 416459034 666866995 498777851 824886941 12438091 831884913 269728777 989457003 516964683 440594531 61442509 531406746 884189062 922598854 105772927 856227959 819404499 580886884 105401364 218581012 408951818 43653593 767452122 949678473 674904644 702719795 655244726 243504921 927785013 61974752 107585860 444658313 697894501 417777168 707618639 762366555 213879969 201631052 712888759 307353259 542704428 449193393 445385352 248606534 561105505 189366407 855344239 870905436 434618118 86953626 287914963 418999087 941104314 541509363 944623467 403769431 876906172 812604874 848604636 71737403 449057939 834732772 416901231 345618031 544618290 750781292 772102298 293642961 877185264 354164824 463674506 747517408 139291592 829866684 449991456 622676245 554480288 615409236 617911899 132617634 716929531 729887782 925034154 694801191 999378906 586084697 623453637 828178164 900003904 386683944 187781724 899570352 787168348 331906726 510343410 533757913 539885719 825094024 904630672 271397993 143739624 196558759 829481529 981132449 995964156 716489681 975577826 348492972 652295182 306387139 834057287 293749408 522000721 490901806 450332201 755435843 702084404 793824617 90757788 257527791 341669127 649311690 873428877 526283784 461917643 523430246 566264897 653370384 91215057 550222188 707552572 222862945 572268388 898140659 939601127 322741385 164160120 577494521 606358696 310346607 64538061 798648641 808501300 677532217 226611385 790034594 515599783 895185602 325186776 294810209 139038638 415006004 209288378 416558840 730764641 477540514 329806721 999705367 319682766 574464192 191361533 7875297 907433770 350092352 150498925 687065052 921200229 376486472 415006790 627027142 399252667 311845937 837990100 311296969 240823588 989927524 733627241 862044560 736619481 982626593 835138766 903292292 270059499 724297471 726449006 850155635 809958536 237055933 761901932 337621976 255874980 803898101 510379248 307217650 180058289 87210109 357156684 632625754 698891104 398618796 704510911 19383292 597865491 879082301 19464323 409715456 322248268 318581383 979756506 326280272 830171591 392090364 260408755 879108025 230016047 411628138 79511623 114575376 547789889 233627510 968424804 102286369 819366545 548621617 107828304 232463985 666422714 812671779 94822480 243463606 139462501 148455877 902157294 551873378 707219027 899342915 755989836 128620233 718808184 921469044 48518248 846279153 936827004 506671939 66561017 473137412 618889862 310284472 20353008 891724005 196867232 415953965 799910339 739834388 19918608 718583623 27053203 508778519 855062285 176394733 183480182 519062464 154218122 527023444 881590648 510050846 751852020 44826204 744842078 255033040 770874894 81254948 191627146 149036572 182545736 52294368 49342549 275842808 790857790 874493904 68392827 975316069 958729159 306979075 723514702 763991340 104447053 731653317 535413329 381337947 814168620 528558287 322657948 439629630 158665302 421561384 567132985 744395855 601886029 264080851 97407943 140477628 441235718 100982653 158454430 629705213 109004531 223988801 640136529 311999420 61086146 568122711 605906456 779373709 941035409 858733990 19529664 166726383 356477983 272046491 575431392 594679612 139156499 584783843 769420204 977525856 68559923 297963785 610455738 742437122 851338840 400605549 762866428 350298704 594997609 168201518 448563949 477655472 726071317 408029336 978454424 280960018 674347364 638875910 129003997 94676319 80487420 631788978 337997724 715280866 779362247 293529857 956064083 621558588 332034149 775744481 211332740 970159039 534210821 484526693 562536689 748787711 768083067 364308687 452730952 431559989 945639414 72776762 513937848 312165273 478719064 953113139 959367864 324845724 631804653 426644964 223557552 393863925 670531148 412460164 569971922 134710403 771129495 70475431 946769398 689616363 132625202 543612478 897395326 655970086 611454197 460078185 104646826 490932937 13543912 579772829 677863007 843352769 470122923 169259136 906606985 275772033 2612843 274026118 47635988 262846988 817300330 497315054 77506223 591817485 286951734 254775085 876753066 990209843 427128912 903289214 567329020 392770406 113623967 323070456 816708811 550514249 655752721 914001492 52326396 260696642 62260830 465590361 970153603 958318423 929125566 397155004 829714748 496999211 9360245 923891251 605716096 960293046 404216396 451092359 444255580 69182410 74475754 83351855 156897832 719286544 743475867 899407962 107747672 905181652 906856468 512623224 707654437 805623213 189272421 457107731 150198316 121582066 853034578 135654108 744038093 468375883 110911411 355391514 258103754 841274245 260234864 96832395 600440319 346440612 839608899 282540269 99219441 666924288 367253779 879572520 662046296 673984380 564385636 86520026 398371703 234577185 375690250 298141095 603102221 771214004 163091634 381099109 895754129 600699947 519956432 63802178 408477488 892077649 461742413 483843879 582423667 849085511 667130591 796555584 97277566 369833478 989462268 572663896 584834560 291369702 694323691 267392838 318422575 773535349 84324502 848957479 487555602 889138447 445430311 941464330 708081288 903451074 967608280 777745066 202437618 466948022 762259377 444187847 367589509 306410370 553009630 475806894 17026875 136819330 198307455 639453527 872902239 21028433 162459185 371930278 55673974 141313398 857544593 878822601 3360958 833585518 180219601 271683605 231688042 492678443 5079018 457388894 92253927 612784112 539622685 336036062 423933150 643600677 89474573 364690833 98685371 968784836 240716856 912901226 540890436 275890688 318530282 544723575 142090113 709737459 261057703 741077188 955308329 624634198 603593754 754473962 845371935 100570384 332010951 197436495 12714596 919668683 963105805 424254319 778952878 372444693 168231541 336818361 112119469 537467804 809714429 174106499 153972530 6641018 142454508 737931669 774968227 79726546 577922563 144963872 265064563 145803365 713945999 194852228 873513192 931836847 909727178 494804133 231587127 955087171 716997303 428350772 133588543 698387276 795915660 382279196 177570622 96452054 729958107 609830293 241349574 311100903 314574492 614845814 295520398 616859376 903604721 75828443 996128154 817033464 717919914 815538209 916478563 161030429 539915806 886312459 696933309 376506439 902995714 970586743 412450527 891525810 7695408 784404764 286142315 466600055 656738797 243467499 382528110 783245221 659876498 348375336 211964474 46509809 166239126 223751233 921527498 459524460 62400285 565836330 103339961 399331065 518721438 699570595 282869526 749708839 199509614 718264362 301540492 115110821 562718156 487188813 339301820 724252016 942562466 757361623 937473397 300837643 155617679 754494183 645207281 661462429 894828371 560356509 661616745 985036095 647949959 990983871 584652381 524835277 560016430 671024538 72529687 651283349 995382010 117680710 387455725 703891849 158439461 791511662 667845973 484763991 62979746 237040862 178925763 854398828 811187351 745264688 978637272 94465307 958698814 818665228 558217536 95566315 568277400 797826475 481637284 522058325 203426463 736139624 536955155 502589845 439163839 272923318 861338654 667792077 856563069 882915505 105550960 1690883 99728864 291947132 205520113 596669115 616519811 612652595 715844799 308721633 381330212 485498049 931132291 433991826 687139116 910919277 41704067 742361766 444109502 169057237 836447817 688045725 924704929 368368928 56675362 434523440 184530986 500155370 836926749 290047292 587047720 568081095 623684440 433410624 84488696 483397201 967904967 721129572 32284390 618261152 876913274 411411495 146353987 480119487 10656997 873232768 442167721 717018957 211738617 853123730 838016407 444966319 798446555 393751212 133153675 822498817 584380411 785359850 274777391 422283124 627392089 876428274 896481469 191180714 464173223 827892150 427287159 536452505 247752052 142527954 418974243 526046190 4132788 776295504 668072465 309207154 747812841 876928109 587168499 529579161 368915823 90864184 261097232 198371682 945425702 403661442 309554723 728932950 759401796 370629766 827067786 185526357 374459440 713566099 74249065 27203590 631986474 904954409 715642929 778031515 710439273 18191768 701728182 558674922 106632425 285823376 812472098 709841247 418395987 476735526 249512772 349128405 161170570 643203143 917937300 786146684 236443399 376865648 834471212 82915570 144227704 876423595 169193978 779393923 525943482 597452299 873316416 830858486 49848686 348901693 949127125 355737274 749208672 424387052 811788692 466713621 860525606 654319606 713755816 216227823 425157794 180359065 195001832 587488683 928635715 676458065 582499966 255704485 518272856 158286935 743688500 652210949 139484272 721519813 922468930 233677044 359676226 825607636 697231300 985311660 918002553 8957834 365596837 49548639 205782917 564745701 566238435 248037742 245804304 423077119 749782987 123096593 577046116 897221231 207933614 342330524 643676393 766905812 976589255 548355644 543160068 273380627 919083620 909312740 128150852 607090546 614099138 125196623 282246975 553137454 380097188 896754168 53876894 993399816 466369209 54282514 128869249 465870665 946845289 488816664 25345924 812282807 702573058 371532537 325195180 431562790 655045058 582089475 564858562 699370833 2894075 688331531 166116804 560081990 208559092 976050613 320446938 601741930 794715559 736384774 922286997 980499041 185428367 332024045 786510736 996639651 335456 768235908 201966169 241483764 950746065 15141983 841731585 193734851 98400229 220761541 369827235 577598281 677752388 651904372 122509781 14352868 600783761 194523793 631645310 662839725 146974883 318901146 598942519 554547302 195826121 4711746 644231458 951493364 493196531 258028270 694751588 772016268 951792121 195564413 145182458 924097583 692332804 569026913 504541869 384101254 200939105 344974024 108670849 976860429 564552579 88122868 450569891 845891078 993507602 48696838 798145269 35726466 979908517 396300837 134452177 255121293 791970166 580895320 256272985 303674027 44201711 145292287 343972116 41522912 357967528 756896097 326715721 12179872 346606450 342739591 480980750 873714391 973693213 489348467 414528854 352580971 52513243 179905834 747031593 232283146 585968107 820784093 246315498 587142241 177778716 55336817 530059224 414222218 902402228 501823464 48479539 914221797 724916402 856989860 774085572 372229812 819535091 157141097 436430017 371805027 625653725 135624722 493273226 39341536 141397881 195774132 231814679 203510743 507385888 476871915 366129495 685282994 230446912 679966344 973740481 916170853 468961048 165962437 553813081 601028264 563506643 904893237 986663013 497215079 580122638 24891114 740045949 335810563 149104096 428447366 512726498 610189815 388219964 147074075 462780585 932592167 759947840 635313212 170951364 729631691 414079926 655094146 463971490 947237585 4600723 634378751 983711277 100805058 517804005 114621618 73952173 361554414 950658965 128596345 661906692 882623001 277895781 992127380 588118972 354456477 189625701 429326099 359721843 747006832 869760084 270757709 510700472 33693660 337666726 415554283 229603185 115074825 880025942 928454719 364430344 93951039 978297274 35629007 793938012 15315822 135480590 420160321 446247873 182794531 150603202 771857552 758169337 571681840 249921897 845697449 380310371 497061384 770828307 558885537 113000526 360799805 522143956 253681063 937641630 831493289 112406987 573484252 570968941 905806682 335204821 699610805 499562139 729224247 249667663 940165339 418324692 396232705 957272355 153352491 796465467 94280014 395181849 183242235 463216599 511912677 229663892 997227747 725347410 34677029 104100470 724582266 400886372 504814880 413811908 531143029 341016583 671575731 557905999 750868878 2822736 147337307 399609973 932534333 415980239 171508793 570097537 704344185 556733026 565754972 941224919 711807170 911441802 656230684 13567901 47703280 878620260 451231445 739299139 592201054 160042395 638832471 655384484 852564082 713425170 163252274 219165017 381050024 169870012 716796782 176131596 300619155 564697087 975118866 805688295 803957076 685924109 671209909 773045613 262725393 989572032 97961176 368914272 631162803 854384586 39101489 557218377 954124935 78817807 529323641 85478095 84228547 149534667 764764099 512305264 753007906 857893552 922181838 861796720 930382918 719993236 691182493 305640131 761941946 318540088 432467217 876200865 203559661 116425455 207698514 546803037 51186129 562760724 400647277 281975000 133681430 816780829 666342160 132337217 76169563 767211131 823199594 225220500 906243305 827118124 314349899 257749995 410281331 39213321 427552305 611333621 431091786 461793334 952061040 211489732 41639501 986927024 796905956 100084489 344706386 535717673 480056581 969039665 485203080 354305108 176673988 674419072 91767758 58588621 754182320 466442623 471292786 883645229 233158176 20443648 387633295 269919080 757661499 630657473 659985392 6390432 557738509 236121716 564071145 928572871 403324640 813735266 779671725 664812683 97198751 652915300 148035192 665011557 493532588 96195498 550505931 62211721 53988147 636335239 588710809 978107146 373516714 299828621 300088329 316493047 950914245 615983495 672633848 915681440 524420152 225156460 962092609 685967880 433663543 326972461 23033117 287519678 94375024 138265110 883707645 301049577 762264708 76668343 369105195 88498366 366520158 632834518 590366153 870918586 557952746 789750957 179351954 453957174 382276974 577139923 842377416 793428437 69672108 894790183 572202259 383832913 403857512 926929893 647818509 438202271 801984339 271688520 892530332 721652498 704251926 916043147 257073418 959777793 882561087 772929555 571708611 372055658 70454726 411409955 284066489 365760722 247021789 889118048 799568112 838716596 689954693 325435529 75058897 168840512 643021322 769659607 447197891 822737882 159976500 300304837 812431670 959927694 558455537 160483318 114513823 534308982 47659408 720057052 948278155 689399274 4073650 233681077 77751495 167982547 228498298 174122364 594620419 307389466 627161910 506527510 522618835 215438537 872566226 526397654 86296248 173865010 752775638 107182005 948067964 954715070 903851993 15416010 33334009 61534269 833384960 23720938 586937394 585177267 175300771 185977819 941154975 91545953 305539161 438575221 212453348 211487757 307853921 229617702 782193894 900472926 525664344 902612224 549115285 185013935 315533951 323029439 660380234 329161731 798276341 715824600 922913080 886579425 774472782 673391002 389665764 3531432 665780684 189097286 76933598 319778497 177532529 338044132 355461792 379838883 869841888 522802390 26506651 981408785 179087266 110415524 610889031 809798956 162922671 220565264 877282822 300331679 714389005 500775047 359198828 411557844 584448429 668616544 69496301 158948110 687064937 653186536 943102708 371803816 941582810 494929699 52089994 294687843 686181265 569487887 742693533 828206819 191540190 680098594 285622855 774142463 174451465 210789606 289587304 612634282 234687097 939825196 345858363 737268693 376165716 192426790 77201957 534461758 577646956 343580749 909610813 53560342 672304831 263786712 579645135 45637032 130714996 312035827 282742057 701195839 187309963 274956140 530631242 701810201 573382052 841569802 262574130 252751694 200146367 343152056 955632934 395476119 288271653 276460806 816912981 617729948 408197646 366340168 672252358 932420748 637595831 931854319 919482991 176014148 993942830 495524781 947048794 702635523 293802124 984845614 63833106 860773838 516853559 792358650 562700274 433366010 420112158 380670518 109774104 189751550 802862204 71745299 79418943 705268301 879970036 231121296 542511441 554535119 107116055 873154625 360897481 677976070 418756078 915967646 365821169 861553194 984172098 782095884 301764085 766627450 532387828 167721258 439587 671528536 345077845 253448417 445429862 909441704 177286824 473167749 886869890 777309947 381748427 829117786 971825141 151477497 101799424 356701429 407104095 875207528 849956233 188107258 452379180 655117712 747225387 321365649 907341106 248157644 877017201 459107251 442815564 879953166 714927351 457227193 102327300 346273948 735210946 703998659 746405611 842312449 679891709 322112242 319537198 528525983 296667717 673535476 412411658 129148684 395607964 370798432 163185042 73417616 400247668 222415554 77141923 870171840 231634479 765145612 580055280 608088963 7145775 607311290 390165723 858487600 400267964 285811062 361494235 383258637 549126121 375620969 137699758 460470553 912501975 175616913 197176193 342120725 663750440 248905602 205497923 998288579 520843565 30555464 614456089 830814915 18852633 286620989 575162664 199870135 67110055 442059702 584218471 342957497 648722716 177453431 767767838 821796094 621818751 756240973 954572402 308129507 65821813 482685941 331795860 751295037 50047995 878415198 166159015 965753512 868875532 840159817 864118523 866689686 530407416 655955146 764958459 553114347 9363505 664586552 714130991 872608687 374078884 785818037 148564168 121904725 192735834 412026166 233373984 812891664 417958481 891754026 900887423 656153873 493246604 327744198 298847573 354788376 938503462 374116956 883251471 345340610 212125698 731920745 896839975 558019646 483649387 141185989 677701194 290605736 604995435 6981795 938172563 297229879 393495125 655441654 874093309 703475467 499666777 449701283 945547174 462094061 803885796 22426104 432212005 970753535 242114058 199681150 745372820 585771659 863903252 130823446 968941692 216492733 852558463 609611714 266345021 243637555 268531426 59453065 28934912 481977135 727801859 655526204 824534840 572681559 360342937 619660215 314567748 575920621 403467212 803610334 854573481 251021758 177470895 549896764 17668462 45364011 43785760 81475913 630961792 91694395 416648813 303113009 626709530 225985401 341160272 530250774 19465064 530021925 770085999 247990902 25734579 284208360 147715717 72434704 147952511 766587833 761157977 835990194 883420673 544667008 142038746 200665442 629679450 327520111 328859683 395099831 407669517 798003040 845096457 213997537 321997169 959400548 716498985 960131480 919737250 363254183 731264040 945638485 130068016 871322380 608194902 214742927 277527244 203918978 505319842 175859541 639851579 975334411 323205380 381314923 82304892 728142053 311431345 287372679 508516327 735493570 741699020 161477968 844313861 102978171 252242677 631416268 239885331 258314842 676500531 296815376 166304208 758782075 105756543 933512368 209086294 682027501 93501643 261203317 280952523 59637481 847988540 734908249 600874956 172413777 731339464 994762914 701290738 118621075 30304228 323783691 153823405 67167961 842808135 770468413 527301845 522775713 827020390 916617984 13202718 629557240 570793043 740317719 897798235 608936234 154917471 534686353 591887319 209417100 961698125 867296245 900401450 54754960 221100941 445042670 465942235 402688084 633255681 108839005 22807941 658148814 357255916 221448766 206135410 677197397 427206972 799000594 261685972 464004948 320499250 141074791 763719854 124528796 917520750 930113039 780122734 63736773 119010038 373450908 882545001 271489855 242773455 17197147 388825893 852074255 502577788 945308257 40083772 410209372 963299836 896533531 307239644 69900279 1011652 131670397 903921366 647806854 927357001 80883764 704025294 28590184 9584946 853871799 806127932 57257445 22125501 407034355 944791024 27415321 796126741 961318475 921647086 386549376 638920003 549194636 303764153 925615723 607621349 945899551 722257410 541997771 260883422 972644389 848987404 369004568 130478346 844436739 416905268 520340788 725539586 340698982 357796322 87271948 893836344 208734664 712442609 835456168 496729 803051691 754657436 651686114 578233945 899948652 283816010 920219486 315373259 906187790 373892689 113541425 11793907 780051417 431652491 648996436 273565664 907805468 526362467 412188840 699960163 812759913 113600721 567172040 63331869 169827333 949184670 300418751 650997873 979998845 238633906 262192053 596043362 407381800 112905997 89991673 420922916 420824807 519049284 522953031 69864295 759746867 635160453 775275450 652383636 197696087 511167393 476485502 508846529 410849151 509642029 376602862 886529067 517276391 216124992 334374486 31743313 604651684 793849385 630184343 466120521 693242457 480418014 251810368 837721719 932137483 905351555 558036848 850239847 72064222 947899587 977273205 563765058 835907425 233050730 139855775 658583901 579103538 570323797 546189978 999823143 486080400 79030655 370674680 965369048 62704281 561182680 913779492 459384429 701120641 66126936 234630593 239673762 723387467 948672673 156151203 283638494 291468663 771383368 676119781 279513229 944132027 241078091 467733032 923102793 963743408 478595105 652390948 207536276 990658346 175657277 200669855 745824762 450875503 628858993 682822480 83316652 427695936 770095264 824777527 129567928 549036395 562994392 276304125 982658000 692967758 865211631 419393478 690696331 348452870 530120884 641230700 598084823 724989218 672880264 380273916 770119187 151518277 634009554 767346673 951289137 948549696 544641006 349427653 903811984 821007867 347374596 473881104 793049969 767903238 669214880 469624413 142352614 396873623 671670197 18171721 417928166 24163776 728439488 421176481 467671685 101416051 331956639 540746438 17456227 990451159 916237205 103816828 111126525 331203303 697593024 57272821 661689326 29934389 437426834 104543483 196981292 824387228 616817995 246849362 284865382 462460244 632028496 195387166 746146994 547262017 691223095 269465497 892645564 398902769 215646881 30236087 189015472 646465710 715564170 399515301 806025710 672483905 18566308 530927643 742649135 103223142 156531864 901065277 632022206 472687153 116754186 375902055 826251186 116363883 269617757 552490612 359667408 369640703 108790482 352179274 957321467 67659889 868639608 727715006 974190630 717526786 331421536 83071096 223094277 799899175 994411101 441229469 297365193 404330692 258844107 988082989 597346096 754073850 979563510 651083531 418454427 852157221 766674443 298043191 734331452 133335577 387210136 170788590 996460612 817882020 774229203 47127970 504906379 124912934 131827025 121210689 131334957 378586822 836531039 631285687 783669303 382684693 985335185 204254141 196912662 346916977 251283863 452538911 495569003 996324023 829397048 673410986 927973598 421851173 967813553 90552682 822324019 683662282 673962137 518646547 75764089 470909319 286156716 845602662 826319941 542345473 873195320 103515175 628160186 962975701 471791318 949906383 959356648 847942316 910248469 376129155 863193306 74444150 781555460 428928352 390170201 723399686 810181872 53132313 928107539 611571956 979689437 733746569 887861048 460934847 996638794 194223941 562851951 203159902 360896438 106219224 663965048 480845425 911994946 666508810 425514741 614216949 3178405 471462448 488613616 638772848 97969400 554792207 945877326 706525535 813182344 343093298 832979348 4761187 861717950 391246056 540136188 737933819 580518350 354058644 966361175 223507326 590879470 767677770 805852253 611460321 567937653 116521868 201524425 862971142 213692297 631503999 166554196 966828201 838684701 536883999 95106177 439536486 313480150 328601481 694699969 433326375 593122915 457980888 819109068 531175157 4525285 877055496 627198752 488627813 323777096 583479450 848276322 612353590 576320652 613947044 718533632 886155822 542239967 594994808 365237733 52224046 61345461 848054903 900784107 824661468 930929300 336943162 711432682 943484350 469213774 231377196 56914449 440691407 737831835 502781016 419385407 543727658 543554558 209847368 229961776 950404828 39777321 104677337 596490550 898461687 254261309 664638209 363004856 411305659 16951049 362702416 973289352 449671562 349437103 257751706 408499244 637648582 3953435 631317334 999824043 498522964 384455420 543564057 749635523 526535281 537334643 882616157 958576999 942441181 239485042 726822380 487477452 526073551 970829010 749523200 675767157 555667345 932201330 452865744 407039024 296683669 204646471 428759115 144679762 526051217 936083230 652831586 600929452 108109717 747586236 900609247 779554210 999274778 765711922 225576308 368879874 147977157 953235242 212283977 56133084 316441813 422411808 900132564 148741988 786325187 583516663 458121576 735753611 619640565 390098973 129562821 941719503 723811787 89302397 801242114 15267598 799648021 637435047 604781315 500729825 611833192 399159871 815517639 590587688 193867018 99639555 71152482 454764833 828294703 443905999 924034126 742968757 485203578 192206797 496575930 180902523 751562999 473123177 117871403 216126531 606438139 467948928 857492009 420110802 579290593 74587364 583445872 896718365 852252824 548123679 283517361 410721343 984894356 605460361 318946226 932765422 650642419 92897075 49333665 302655182 776352948 907200415 780143243 820300428 92346624 304058041 90827641 789880822 703483542 670032338 101474368 461151436 614692029 74746354 980400467 574548820 706580156 184807106 144878801 154794682 168300807 699218050 37680288 838715304 420785033 513115194 799017282 380878525 732404325 945142607 572019564 822489947 334926402 616418819 184101165 402321647 625141580 909581430 250037905 435225129 240665131 946116335 252204803 20199571 802216634 698858813 156141121 383569664 581833686 847205257 321638085 338861691 230375353 665848943 111229012 638677403 683713535 352433723 91507178 484130516 664972364 228493195 691590373 938078957 887339855 310199776 214219815 648767822 72736587 611316243 442503058 924347525 605039665 644989925 10932680 499228987 556512256 226514544 830262881 941046187 653721398 969907538 496886642 821548051 815671001 725749204 578301284 588772708 708028610 307305079 156024756 350460971 989100756 209995372 590296750 865189642 249360781 147739010 508309422 677726110 301602311 485301462 426346792 296020166 973614618 876615651 687961264 421907763 519587230 678179331 960310355 114925050 347101149 172778798 295680285 165951041 994643217 131077676 114485706 847552966 593585123 787908252 152024064 397458221 825123197 214886042 180942226 795435202 94376672 799980292 731784882 560813023 70875957 309809953 535282578 232842253 853042610 836357368 419178445 640898365 586636509 296017566 222247507 757238052 941139976 787900447 493084598 638896317 653829223 784104158 652478766 13640848 809471940 878227076 483178937 403560559 844024474 190544725 281470282 482503668 114675799 654296836 236834960 258813038 367046616 981017649 11888263 18073131 994867054 231562751 986143588 974561563 68764857 215150951 706904480 379011035 985527143 443468843 758988725 213597301 924636083 757307295 295956803 72290556 802090148 474976046 629324645 17627045 926686971 255712120 898710571 557488006 777575553 906984750 909463474 295706798 623066379 506570192 248093172 726534562 517460262 953838908 730285966 589040514 375502565 424883837 594925427 215725328 966996612 60292431 609631953 892954659 401048742 808625770 445087833 949597615 694723498 701222178 159027340 24198379 314355308 952082827 10351924 929212947 131009457 391667563 653229409 345081338 873421771 988489804 318983963 963520501 603954190 405012853 630622635 991411925 945656960 330060690 966815733 299302159 678156381 65716104 318560785 281097238 716265806 461606853 575817255 550282869 548664401 355697993 78526953 88535848 173513722 58885924 320662055 573088473 511410001 731070581 424856284 4135190 535407191 54358130 348458783 196947257 669569011 89624824 640381963 659409521 317469973 867046598 657754638 980501196 453879542 594334739 995419903 666958738 358013227 704790443 872750361 120604255 49501046 430737269 129704283 769980031 869620066 568967342 930457539 453135730 177762994 203619481 656681914 514309290 949171219 62336874 39286986 953274667 984239013 627048391 128085985 301774398 832334918 828678751 328896435 612828772 222934648 173061294 390258555 126041035 336855078 630718226 775320004 935821451 954403781 859165209 466650527 985800649 641941658 885246877 123207422 297330912 591733417 990372444 109015960 31553565 846941748 570951723 88320869 789264622 803651816 877900728 698490635 811720090 928768801 483077023 120553261 334874201 383781806 15812177 957925878 383169414 493103 633084598 402250594 430080645 983099649 64025616 892104389 477269999 65761287 357164912 943155546 950952487 881444733 283006778 216340007 234096895 506853458 247674905 273297468 421790034 277987651 547401905 945915278 512857738 12544658 645183335 597264146 458534370 743628686 168070445 402986895 343110331 402409818 822623591 660820764 480159632 273720375 783340861 77228627 61074716 247750435 899529298 975052882 717386273 819655576 462002496 212988536 249230105 8339034 133023671 836680590 448885226 150230741 736550537 692432687 693811740 318406927 887986733 289692675 357044237 745864640 234974648 896312312 201476676 246326983 361442860 85082664 286015351 252881150 842142048 355514962 942629765 693446294 847267075 337596334 797920565 779196114 643039984 685396567 108078871 58339718 513297213 114582877 815434694 866969686 226388625 981529794 5663180 695956077 741682200 789673389 501593224 773817388 53454686 265326040 78573257 217271138 211357845 682833525 920038269 289220973 754481778 545299820 864369658 562069871 631753027 943281551 655683 176615097 469257156 941076489 118638398 204927323 128939027 482828877 381114931 623583388 825123040 575239664 824993512 577175655 857107247 464926032 774463580 805064306 139134995 936051258 242365713 165265759 539935505 977816572 113019708 835775679 843124740 960581028 524464358 593061332 462643924 226292184 121405137 72686535 282257789 186238114 17227531 68544899 253149131 74157779 723087651 202542404 959990526 465594059 46306918 338246107 771981548 529643399 841871968 996993089 526563945 348111122 393426684 62519996 143738271 315665807 786397451 878241601 829936830 262025513 770892630 459863445 5880939 609908847 902396700 174549270 933273842 628623548 378552848 249057981 585807223 566276953 63964173 452461457 711363082 803419180 148565754 592002765 239670394 933653574 744309134 415395344 750570506 427154393 564488553 852854892 405386813 705855083 59071165 854736398 495855286 192510200 691466687 721253783 302351752 52201565 176509397 983640687 423715215 965255144 151935539 614335518 443723379 192516819 190085622 735272326 550093215 631889322 820684949 562780598 482785348 300344270 744851453 435785087 162321902 888663432 229635106 630161882 864754763 588147871 387247130 314295963 674503309 249950675 659179801 225329327 686065536 290779629 734979128 233256203 527147176 473501921 323907443 720384363 805199811 338085878 815162894 267930227 930093737 879747597 145909673 894588137 270171905 919984557 618763858 615073764 738647535 294048714 843022193 8610082 670947711 25717343 869144448 680091932 746124156 141169369 419632599 880392494 503829449 809187589 751957329 198189475 387913921 505968992 607742812 803769717 658330621 837862080 263571394 676038230 640018353 730064468 766229266 321501395 161056209 338195067 423592488 371561948 200804051 982520860 599808330 483108225 530377775 388800452 986584019 722358609 98546416 97893538 493142834 805244198 393321994 162070668 556997128 463558797 601234416 612195405 973912679 375831852 31942531 788710441 52375714 968160886 219397001 670966947 155922459 200235135 84062265 665999264 937173062 955050990 334392282 955232363 640979473 296370406 748198401 910294498 64335267 893722598 636960542 275773788 89274016 887662964 798348635 627398970 571735942 769244579 27893769 570738539 308899295 417268102 163615859 603669651 695386699 716970094 320296121 61254975 749117664 274011352 428020345 409371065 534199954 168296577 549190270 648394365 167428339 197409276 975535943 598879139 80968032 162871867 359900469 19593570 954586423 88070828 242589167 844378820 910418828 453642218 964309632 471323212 616143808 335203328 22419380 779560511 438612268 96426962 987173674 611972188 872178 548281471 765420796 379172889 585453350 196707279 773008381 2570157 6928754 233972741 220090531 903407194 91886500 569393711 135293388 113977440 833685881 783998935 820511089 699382284 321643863 618543308 326513027 167552268 37104871 683475457 606383944 263029638 601123442 988517297 60924279 63040757 351396811 62369080 69676364 120433250 99478891 146662833 251321991 42868564 543021764 443664563 80148273 553338798 735597396 437606810 194933200 626691002 418122569 411778778 281161800 114088263 440455251 725289470 558472552 820719837 855806356 644790266 97783667 614662375 971311881 168794047 225971841 959761455 367937709 770707433 576733914 821856778 173271287 736818827 172471338 649804076 392907984 743878600 528023368 880416519 291041783 285361225 692171516 381297221 535976616 768538231 438127372 508084373 995287046 727562541 852711396 257124795 322493258 916875090 603777975 199794675 445359968 803038337 58880164 418982661 571539785 338701797 644517714 538067692 849306457 158881951 145768994 149961263 580091370 959013292 746142177 512661130 756573803 240776573 236452565 164018801 450477927 547216249 977585844 685505056 542309827 609030114 350419932 202822707 578460929 568119486 366368305 423269353 390605274 211295825 231212623 35822768 956036118 349079602 720115782 338464459 371224808 79204813 336919697 238554548 456892185 237005235 356766037 278768482 642059632 334072372 986150512 747591031 272453693 755629192 342442736 355876133 946363954 745042741 401224841 503803536 755404821 767782710 212941310 239597621 434709140 13855725 733675360 530629327 415954187 558123162 655804941 41855473 322215052 361131836 506475419 721802366 909698707 453077295 599172955 860035602 211164915 476274665 933564107 98164683 87231273 831530904 15438820 271154634 472253826 72915044 284321047 587701969 752609838 254158405 205821298 946459735 244906024 582144021 806292452 746317377 702287690 456914454 757318658 909973970 146591555 454425617 916298447 466834421 908612874 185986796 207920239 309736117 870938789 645503860 830643450 750221358 428426610 279101329 361544560 973118442 101193022 13396195 771927672 428719830 576544414 477478955 994717465 590929374 286306470 464497346 880523555 650070476 644206288 313317675 645532062 745732501 144137072 332998467 210256539 817348228 606884616 503570853 974716926 343550115 308488803 9792622 580190129 129617205 601308708 913307490 46210365 382061133 626842718 414480173 39565244 341570530 576063742 674285626 485544422 876424211 522838338 178122120 325482281 905008757 755110835 766172539 974548504 193824675 250407120 821771049 791392765 862666315 273899894 385554739 588109842 384252161 16780632 508071095 703238822 933331202 830966697 38486055 677251404 180131337 360237338 269309091 388983622 306032366 410246487 662675141 70408571 922324221 546501807 676406027 110833911 532551893 438979081 718329879 79199439 947206719 698888664 63076488 444312088 543681340 916379555 596681073 146189758 396490276 969696336 874480621 863200217 207840767 674565305 387374549 323337007 58297709 669982695 668520388 844014616 177494970 841239706 203218310 836129271 744544017 163929119 593851618 660359466 44822889 401028546 447555535 272640106 503447091 253101725 892832413 441035124 364787650 871652616 260931104 560313824 200412761 667737298 651005376 831167951 398509064 150636850 771915347 290354907 213166483 350615261 742098223 324055529 212983143 128809593 312292302 537380552 879638400 91532217 744537579 782909558 109657686 716075530 705011100 561067045 765234734 386029392 853042818 853147207 802073188 468782117 724519409 154759294 462889213 341007030 131639032 409818160 244456003 602021696 130579754 667235644 363667664 858754432 547713537 380439911 675311501 337238172 868804836 475707479 420459685 650388753 981432255 85037567 328983447 516433336 814268060 941508308 230733042 361379728 157923131 416494251 373470231 775439149 128629680 68592770 423913888 751575973 478439858 426046365 305403651 444081225 964015904 927868225 813465963 45044725 592050921 399599062 876389590 349284228 162890859 645579828 860943893 829800291 498749712 850984213 648709705 212771577 147625513 796641027 890576409 40109316 255666908 153458561 53291235 903841185 989787927 522999766 518354664 164379297 296781375 306249396 327131369 712349516 46654795 415990526 591950051 957812051 369823822 859245545 525326280 276144114 469117483 369675335 307995171 253639871 434495773 622627277 462126695 216818349 204313884 769302052 125426783 488487220 567901047 566920855 702845454 153063760 687674294 304532661 676316322 550365835 717648261 983369083 59356566 157968835 372135855 956668865 51864861 798566959 14666168 775547949 171245588 776253055 983043050 55168132 873434908 755137369 470698187 211909435 548096477 163817484 605392832 430636410 526399210 481777750 80748220 357739257 199810362 430556341 947286624 658996194 395747830 56536922 835646303 207316217 232373010 424800176 63342471 747582581 993527966 1824897 945242185 543372234 68014022 105743238 420559936 948219079 573155943 642553885 127380060 542005965 107664718 710190659 456094576 636454365 344022205 284474033 459747276 602077625 361650929 686351545 380568472 868751160 99018156 175363089 16516810 617154502 39059902 889298855 743044214 239426219 528619200 365228238 473834053 159113287 635635161 717316383 630788036 970780473 541805627 97579845 163808954 116820482 393614908 120550963 316171573 295718959 914131075 338327693 216825057 127516810 180539906 437471106 3966894 869761606 820941256 201437517 342033433 176864441 438327535 290512033 330831528 677146030 178759613 378365072 41095359 413969336 55777676 255911540 148939195 910201387 17324101 129286395 691968179 30620648 357436410 581198697 719310172 59875634 781254545 923286434 47394953 235562823 19445972 799366517 939472510 133443332 957829815 511885806 167272623 164822363 228382976 772763058 268074499 780881886 64249860 301054481 542388766 499003473 398412776 635813769 189811728 827085542 428105881 588944540 91642963 552855095 880909767 9753393 942602541 251107361 426465282 989457379 140633828 367135785 981679340 796049413 532128231 978243947 127874527 52079554 138320454 465661804 392733366 107213619 31845812 719571774 54164518 101301583 464621765 286107896 455862566 84716173 804689064 453568746 34354711 695974286 812502804 197515559 581459612 783180770 585399707 828842143 873405816 984729318 392382504 420496271 325309500 361196004 176144253 114529826 195162144 986103186 214294201 156198221 164804403 538532499 120435503 631361093 103527864 750136530 225286871 667128802 829359452 831026690 582525032 546700980 563518807 622222286 350946083 845116201 237070741 3335807 382630274 114753407 438345751 840503963 248223775 136656270 451867466 535057591 189510477 345506448 317707934 779872103 920219534 309789044 72494899 258809357 405074629 200536678 281686425 692264533 605494299 885561877 367313943 606634699 954153280 425788248 636174324 816484954 977969639 832051569 492175820 842450841 759959875 835194064 736430115 217506611 190991197 142827962 12194966 985769303 698687794 951967518 699564623 608454196 94243909 313302229 881496573 904424449 981788905 829725365 645277914 13062516 936342336 185066935 54191025 813868569 141457917 718771101 89682009 561301465 740360466 306273649 472966857 10987611 403005361 449432941 461484623 368947731 880873490 61734510 576132931 828133103 889747606 164605516 220788236 360117360 34074696 920737953 620245921 154270804 112169535 21329445 184770928 839633354 795831792 704780850 911398304 643915894 663205650 139398219 976792250 470775663 313424310 254613839 596684464 758425266 182247671 189046640 730454919 161762986 253014517 57954849 906648435 658205894 583054518 506899992 425313209 685364110 286318251 719772313 228102898 417790603 331641981 435905495 134781431 155126442 172088542 318129079 727781425 605942294 673954326 975979848 367403135 816288394 121814880 69013652 383980017 871007994 334842126 896816559 754369693 58268514 885117338 504975798 270344097 328273254 5553688 170492404 516896290 994978527 208306333 415101269 153436943 480211706 27454373 331829272 251067144 430488691 33407924 537939727 428367946 880828437 780286392 792498932 286740067 224614154 469006507 10021134 619816648 719396211 330506794 271810498 876765754 978554911 413409225 761454163 494661493 757142390 32495353 431606914 269227441 710550355 9101465 221806747 431855173 258090131 953397270 650591106 674760461 49474598 138007917 675289296 801263822 189273892 273348975 371285385 525310414 322171093 143733317 936575617 473736288 185774259 463162452 312701548 100028075 214598128 964011345 505513822 911620089 553314530 637743975 597551254 156736577 389822039 514792925 842704037 387183525 871041508 154898221 680412744 415757569 307156653 505462880 599928993 206142989 792497241 191540930 600092750 395333145 372865405 182980383 775260565 575809317 676121121 700797002 180887334 240475733 952787831 820580679 643273607 193210188 928233038 675726403 377950646 592412175 118008940 160149865 619062905 325594630 272360795 914032615 347584910 252262451 253849295 634720712 723673623 478618233 588731975 123590742 518175587 40643474 675429872 490314613 760806210 471433204 266912714 424672512 286263798 252854702 586921996 84816347 911982638 377707128 626647745 353973999 755908758 105409235 628910248 349515575 589828907 605209597 914348294 238576822 951220183 955798830 908119993 469872175 644063065 422010915 501915426 497458600 546118573 751401154 137630371 459850159 708183667 17238914 366988217 15418839 185208696 687079714 501223716 478270430 851052882 143331054 394930136 69801839 837338166 240299096 276726514 359768371 755075786 585601751 599025977 493758468 170980934 703291798 708374126 79891670 338095133 953600419 926520711 536483168 872635862 776184422 222083131 178774007 530330178 327972468 756261665 80912152 433570340 906428041 324415938 211302784 996676037 143587289 835679220 334207200 924934302 401524361 831059378 750283642 508543201 839518282 462042357 951925488 432777217 15715339 830971927 883977203 663017903 538320638 975488703 941651506 188619530 725519251 297573448 217403278 790491963 371416360 152689002 138209239 64697969 369259824 403093945 312116230 519416989 673873496 585341687 563764139 702196490 5433324 697109345 925339026 649258808 123192277 664412495 826635951 115460580 163733623 264119061 979212887 844535550 421932741 713564232 908244598 892813731 588230669 99355273 658747403 666231771 508147575 727885848 720375895 395290254 856869874 379238588 324955895 577576172 134414495 471791890 775090618 600149016 580607180 919619461 792279574 328142295 265982102 695660261 682301682 388656222 471200667 131534512 923957049 508585983 835784664 917143281 133153219 347963830 841529568 734726653 278456152 633034978 542618722 495077661 995728741 775691699 141860801 367585145 205797593 931362946 788856708 896153337 137238555 63414904 857478311 139658307 192270245 714286799 358457481 532361389 905715643 329400078 185818766 381134398 422989269 52034359 275677403 954170725 942143697 663854599 367771031 152006436 732722802 154537282 699561749 644598377 44100352 232541119 583686687 305861562 36007228 741437928 122609731 956700485 431723300 592792925 61789653 769262876 911660118 107936080 794998016 8544872 11195531 192608343 919173501 59994679 910895156 734252600 422521174 525098898 891303621 116422562 976333960 884443696 124975485 963677952 829625440 25094762 454868668 573582738 465907792 19939552 159228242 612279495 16993647 117654587 87914319 315420721 110937065 950034200 631114886 560174099 896383886 14669498 231233110 404541300 116126241 427324080 597520857 94859566 79902866 251633714 206793432 956339530 41626102 537845224 348369350 22182231 12839639 680815694 924639082 53252826 74317187 183342829 489391822 71998740 424273511 641564196 650199303 972144724 873279276 327352935 952001949 426637167 64402494 254663749 859698984 66913242 561831171 790972788 349776207 555393062 244872720 666912421 693703896 958707130 296125360 375581475 500639924 889732132 659805033 338339732 374955447 722674996 171861633 324324750 247878650 607171713 880957382 99196784 750164360 954032560 199683669 83167605 251638915 662514016 778868149 223320599 765525497 154548447 521231180 256948789 57016215 849969734 311424943 626520371 72266578 435374314 473253718 209600919 144329193 46160351 95274492 188020651 930573968 827038990 780809408 78294091 92304341 714568990 680526308 414541082 522529105 320184428 143837665 602550029 485942277 902902527 569359711 934270804 712515805 6866475 508175748 152288377 857938782 155557596 119769850 88351348 288383829 287041926 134810607 452651309 33872252 547068886 378940386 890876084 710859136 899825362 117431136 524359118 607484150 258772907 853018500 364942843 853046587 194467588 988459286 287755395 458725548 980790638 796129490 734831715 313670161 212392963 422150870 689891451 153299986 868656848 864642971 904048163 210160060 899128588 596444776 984937639 965745489 850310683 23906607 222276997 748278743 419906322 594910458 234784687 527454667 748858771 147620839 110115980 720217858 272988437 535094390 374049115 429899610 406959970 346602985 863293980 867033828 248588480 978551448 166679680 491886896 38499306 656263289 557728433 978792086 358162767 860307846 875522882 344949487 698514551 496483574 588241271 388433678 724024178 524348233 948336049 980583721 649165613 80991993 221174637 40081020 366126640 630431075 910390386 927711727 452162682 285611734 31892448 295532066 457050194 639776587 199292822 817135913 67377339 803959802 974092844 811461243 560346533 660126364 461959575 924956205 27434720 132239516 683800763 718227938 373106316 557141946 192441089 393180724 542834458 859415963 804721739 660758111 709457868 318681802 838801035 518175022 400599237 808934125 234325693 101931178 38293606 693713078 910929461 911348056 61791898 966448563 593592144 568842498 966599642 268846465 107634708 405051605 8404417 291815384 523518123 133224284 851188169 684811126 334651545 926387312 403082931 352444529 247189893 759256707 58948438 816917992 821130281 27599749 857638991 89348402 168015502 211352757 793835527 517804354 924311884 5084297 492656475 149792343 44274874 152324895 251696848 524668010 861648670 704232055 935660853 392941160 701961195 233824542 455329628 115217740 5298097 747028007 221528594 52594730 972660073 490427596 696372454 629397431 525373510 514830167 176932569 904941227 556864972 892912221 582671779 9693678 897162726 605652701 839493259 371949503 682590417 577821384 268478343 881108135 829570671 525068563 804321823 537765101 383772509 846888735 370908559 227473246 28684483 376668187 298959253 840013152 896102234 24256383 235400402 82956941 792619363 552701334 569655939 711435750 577879552 919591282 96451444 590015687 585258035 686698198 856877234 837410231 445827437 521054172 481531661 140222358 836991704 973480901 900566177 720417857 348370223 338583961 753838913 79843607 899204368 979149841 451336566 4433081 433749560 311228990 800823324 213637623 338115128 598269893 822523630 341337665 858753817 754374016 735047028 737218049 796952560 705948646 998942099 822926419 823064634 389379218 434368567 903812853 819200014 95799843 366027359 677027557 979428184 317643886 230211430 915405240 185558106 492225808 675978822 544182520 660930772 581242356 820151125 203194912 490735831 401270954 704957636 112898941 404666340 901772951 483609401 603297566 994384152 602970057 934694088 168431213 513021101 797476601 932593840 660171686 325452255 652806361 138570613 644561117 597560450 625910268 187636869 332502652 936558181 883652261 1078022 604088481 250345568 386535953 417747963 40173085 750872165 992031377 882088757 689426754 618117776 678429031 490993021 786972457 895951933 944452514 480579755 387140767 840920095 90022774 282096528 460931482 151950318 497286329 820221985 994248469 855075493 10780050 976219735 189631987 100200846 725485405 686246877 741663009 330268038 199128762 465173392 788345609 538135119 143780289 678500216 189258117 449937159 808604661 129837605 378898341 848074873 416985896 236736077 410895471 109206545 200472384 333109775 997637792 588196019 78026731 753151516 918983340 134455726 84999427 736137204 808944063 987443007 366128856 162334704 307170238 268947215 69123361 577419129 342385474 359990087 597537809 17813291 252677528 816300988 74989544 601525268 86855630 263645801 910130485 259697902 692366465 570181333 911377544 733258481 32980613 243852291 932512655 653680639 938037236 576206174 238116972 734142869 783068841 565829146 611456298 445993612 691250796 294583132 600907905 195229855 395580870 275149518 273950769 182026435 387867442 6470981 760247619 970338004 812549040 383477533 891160287 906287028 829222370 63407315 990657897 59949691 397458274 397213723 27271130 356610380 298858158 174744836 719085566 153689880 686657085 277080886 836970216 514090432 985536139 728584043 839271465 834011599 363505436 204090226 603402176 164283713 506529759 896979041 596708966 108920495 899731580 707035230 720747759 540275455 474273545 769572589 20984018 997135253 565956606 732906390 166689023 732325754 900553788 321149162 800182921 290242465 388579821 366251814 211720244 222655992 70047527 372843559 115654635 176834917 605493558 376198896 848679345 944885193 984417431 981985487 185362850 481004954 837874730 485171923 751788992 55956440 46010392 192465397 110630177 323811206 726875225 406399708 321363812 849345906 228068961 813830580 709028456 794522407 451661485 140383407 960279221 32109187 916301814 567528534 280538887 80511152 185537603 225496721 215523192 835780398 861785105 24407888 546666980 201051083 883481639 264723840 391919570 641311841 705507683 86653804 74981712 152318964 563707548 212553302 802543490 463698265 424209649 351807110 60268657 259813028 367544553 794295934 218111621 122949159 223199786 839941013 77019765 700599284 381115228 202959277 551164436 951311212 131626094 899758612 182218295 589847226 931919581 58278439 226865314 864012363 268082732 681757098 252628708 436185872 809141415 92533976 666403570 209226285 582929434 495872201 854844121 293632281 418671795 352764182 620229658 421568487 310946522 885820327 887837830 897118201 79073107 132186823 97093100 179324673 180803390 296445566 697260902 635163434 186455599 573713751 50401771 232097340 933128115 980706551 746374728 188572882 912761113 423681887 316738896 23816653 265843010 7091725 103776969 758400114 334206336 558011146 419600744 98613752 199162640 250657911 611755652 692406108 814186598 596617631 62974792 994181834 631671763 94853428 78664203 807368011 619433365 696074492 520521643 523754538 350719364 461677038 644192248 371235605 382437442 241900224 407255720 796181122 303941746 196404804 546528560 810135393 841713050 666779061 659372537 819309096 87235865 880663561 248591132 997413742 983148157 536741035 216667081 748749061 198997509 567150243 892307536 694298441 97664638 990516536 958092286 899187133 690684648 289469975 798520509 143701881 150365452 542303486 326120674 280845020 26633055 281840195 686387742 566889901 716748924 17208985 972622196 971750911 58866628 863703260 550240868 96873730 533295117 787333624 135935182 420205263 88067616 526589453 343621509 28510732 107831160 602995161 825418793 744482389 591932187 400647481 422457209 755720822 80262301 785989595 614861720 471959142 79201437 673936168 322104224 213155198 938781448 790261355 707848830 957728669 588265103 664452243 39802932 187859837 986885542 103839819 725133375 145689643 815119619 34810868 688007244 523968406 835119289 622437450 575256933 613596084 933491400 801724086 896134459 152655524 683045588 905342229 119796147 509246945 622256669 889947962 990389230 450595526 88385846 254005738 471996476 163419484 977049851 841380194 900380097 211392315 859485229 415376527 57681404 374568273 279985715 50913065 281915139 420652115 349652124 484630636 174128230 541467739 103372132 628598184 891992993 534561535 716545227 190245616 685035702 244151271 836658576 811705002 661011556 475030245 918524124 718146480 681239235 780634665 130291763 379538222 881905356 203352914 946079979 539251865 139252984 261770271 957995792 720452910 436871195 243641014 517356087 205555769 183502728 517199924 409469176 102647489 748032923 599236310 398629632 950580866 34938945 950405864 838117034 912176222 590159975 755991252 819565691 987035165 304327521 732495008 691137781 701305427 654533469 515774837 869790544 923235932 24806116 474218447 285839493 949478225 100968323 377670120 805998855 315496435 885920621 386717690 757247999 624690892 564368990 862391895 76442623 267795646 993496682 837296259 635009773 554684022 278834524 438156643 329614480 259462079 442536779 367147760 204142160 393478189 881968040 7443748 315049017 263729670 483747987 384180170 661080098 190647262 983088464 352684157 397740369 421468535 690168600 503445309 268051507 326699792 458809639 119315936 420609337 53067316 50539030 817014364 181729477 6490797 934384874 35402380 881648704 649659653 770428626 356850284 682366717 525437592 493804016 169388502 550021495 420728718 629997653 73004384 692727093 45340766 781981865 833971482 948911556 939977528 348365306 47268568 275081712 895388374 31744610 573908350 447072494 825156268 130509542 199850562 241363163 262507196 935838563 425998246 862043614 776424505 268557859 361486736 765986086 852787801 700561718 367633194 499675345 491843530 257800000 332928143 756007717 324801278 351271260 856143296 929909785 210195250 990437835 663367690 183173025 883282757 943606774 205349153 476415617 289761525 557395146 44728839 137256252 301361854 703854375 815443483 241714761 759053472 549483220 188490700 371959457 738935823 171081287 143217767 272918043 429068765 137783033 52926410 176331069 74902239 427590592 570213361 157498978 507671296 866968526 111995074 280550614 508182947 178801150 683139495 370859812 671107047 709949922 290364918 892821748 100734220 636001174 46086371 976256538 121771617 789895886 521156138 447760783 782805776 605597952 377256168 776133982 277022633 866996272 552573413 263886497 560800405 614001733 32729453 253440061 99313375 576164047 704321967 85042488 942729406 245559109 229113748 382917316 803706915 147252139 5095774 196055843 918224831 582996955 231723968 414290611 482288320 1946199 558448318 170054696 511649472 208929389 378570726 615916436 548753492 230208752 142016585 788447461 852930990 889931751 678279310 915532143 951565367 760586536 468262526 851511942 103566605 413109165 95836575 839154081 239931927 462597360 536431805 968971370 117419335 760152614 84043082 260443889 390688587 606722361 901447231 407581501 160079008 384568588 882398111 379607188 140202266 102386956 560187743 828832118 848924920 111670253 865341367 68639867 163169115 155805330 892143190 458049399 713937683 215378211 80910780 715945056 843403669 213279023 761328056 65764654 823045569 743806187 148366471 501853538 296055733 203102070 222942899 843468378 714020969 252467455 68274054 888984105 736116689 358577792 203048382 803266277 311650805 604643068 284341291 110719361 299071954 409880165 209125183 962722359 503348959 690929043 663047044 990612988 124909736 574199917 430121405 629162687 122642031 798018531 981022687 712083565 248635369 619166297 906481811 349005980 617209428 852072997 502719687 25984536 28940122 160727617 644917219 849040599 102429653 282532645 845197320 166826905 245349540 547033024 631419760 144477550 366076262 676966029 427274748 30050136 383528745 495396768 947186213 395994236 417668912 93914965 532219258 412812164 935065935 413234237 203730291 660219016 362847913 801408288 713903617 286205974 254675276 878661274 835160612 676265681 935358948 135820348 434261247 172880561 472835048 333282562 516837492 442102116 652087321 238872565 977162558 617625235 200629945 431022256 476285968 447882974 388437243 790708169 834593073 399658190 297660944 272543331 376275699 78035261 326658215 608409332 328212562 448953275 692131494 691548744 688182913 91259264 165799035 337760853 636028691 892038065 85056680 884506463 621588686 453103438 913684136 816469909 476950780 587561946 664028362 232389502 622775391 119299217 709299961 951753306 511664348 663985499 53952571 367093776 985803071 987197699 49658056 220064592 701811351 143853185 635043042 91803956 648560894 393530027 545642155 430889178 708688976 314834903 690777805 405267661 457746406 973983945 823815310 645757025 633775941 235242594 364442095 248683140 573891118 138181369 866779350 962662578 866450778 521909634 522856325 20361894 340750320 382973939 37125505 911929673 346370834 298524550 97544095 122674969 219811598 433443499 244665861 562030793 35356233 686989949 545669178 733410619 707220095 434556093 693840346 633848958 629607397 139029801 670877546 481916272 14203708 731447174 231183806 663916871 568356983 725923999 914297469 395008312 326306081 656019439 569341591 371133284 906320766 785418792 223626483 681615813 522717901 490832330 741588909 522241615 165757067 116929602 785610184 546438426 103201111 653534509 424774543 221327288 754780034 754997988 840788491 436400307 430478901 214110074 850461026 740442 54241 590970289 330944855 709924466 731925481 763822275 598365916 529706249 229877543 48458898 799454830 951383550 715521658 663071316 88749545 23800640 328883401 811130222 221194493 972484925 241359430 304448004 178201153 700573327 673665301 898272212 566050762 561067237 179917936 822799394 849998117 46403109 45584339 508050282 5690324 9378412 148617164 481051361 26051990 161348605 213829305 898112204 867286914 295147696 466938224 333366480 106091288 221150243 272797614 353636606 397714893 347034463 445464756 320863049 71703379 117511428 465621446 662351959 702408060 781315357 341674107 440673740 847855568 245798634 554038383 796028489 917596822 583410562 725997582 248379374 5786553 172717490 989395925 793086387 91816300 779252512 987161302 901765959 456796679 867673507 230240239 152671945 260687851 214963257 115435840 615859383 50940125 423613412 85818318 854792596 743129891 330706877 818457247 246034897 417647527 829675608 654531078 192254155 824915544 147054511 773688100 597745831 847861941 308117806 408241428 827524351 50347646 873845619 513322144 157321879 915817158 857857940 603664235 108516060 849174748 372948159 114573651 130598924 911599805 969617981 277826999 307668217 553262735 928452659 51325930 162034521 764971238 192647098 378397362 815993004 863516096 431498439 298210187 596691737 853537252 742757500 169544578 195522633 9889473 832124734 318576993 744056494 717098328 611408897 693315867 540945170 224803241 217223388 296318727 993904421 183143200 311413338 418481748 15357240 472787786 446707594 608254448 145264144 762912776 638844367 411382009 295716851 202021665 189214197 930203985 386280146 265019174 585544847 290398963 461412957 142006855 145125910 770782488 938670076 251169673 78004502 97365294 441393632 553818953 921855436 656492350 321181349 893040411 917251671 836673216 333920809 267098347 335535907 508977511 968865287 161794296 102857007 149341872 768943144 590507317 940914763 970000553 498761517 320794989 70972577 276946169 916264598 392256283 140605872 911021350 231347401 849930007 664375894 911074907 548975020 733443983 4109341 531415651 57022272 375581241 437448019 20430291 540077121 931642297 793019226 944461486 815108056 445174648 552495043 71261795 477397986 263106067 672855165 416766568 552439276 683220275 520131306 670543962 121825974 582158659 859286208 200209165 767618508 10748161 954318618 44698307 736216646 776874185 371634812 460224940 417836624 47846473 227245451 447634003 825027958 190162714 931943684 813046204 203278522 605517211 253235653 461894417 554672029 906749384 440735232 741690270 962191806 636192526 910724532 998006786 673157346 75315227 997034229 123814225 214480133 453314241 459127102 360406995 623711473 888878400 956346625 520659876 299 325626295 799358454 544962914 584660468 495231740 848425600 860682590 83194554 795698245 888028126 171130190 897258482 680377309 347664936 542172940 988542970 589670662 837700942 615886294 647120938 354085680 175772754 867868136 803561344 883119538 14134908 304578966 535657318 649186918 956528343 272173283 89109852 3336444 231336305 871982985 243477732 643291232 908286748 729929005 720819768 235676721 1353337 732046439 274718967 316605450 403798274 921961312 814622560 510029347 596997773 975458430 721895779 999445854 192890361 789449745 457992058 611417424 141453714 193468637 523435677 303281060 834018444 924225741 725087633 216237412 154459500 97950187 313717648 768398303 809978289 111723207 207076011 741394189 752134211 586258319 964407973 205741336 521403065 389941408 741188770 709412089 78155206 641474076 197457348 963604036 196923750 729824373 754145993 69511296 724807160 780700134 956018264 152473863 764728174 606035952 148479936 32431538 190372897 598538577 179197172 332472575 958465722 757379178 610734370 730336907 540830759 728678410 774296388 509047329 899933181 535319727 911671305 59505338 35908908 439831772 824039165 892662156 361539384 713858338 234274161 44725339 307267572 925487111 854451861 951697742 732742100 98754736 755899649 602566047 560703170 636196538 356585336 492137425 695047186 257377474 30638834 622298462 612630873 70342670 567994097 637926857 918904573 835135193 922290478 261532830 129135094 195400991 278238918 257080711 572021933 116804794 628177714 467529947 152144142 797957626 592246420 721280587 779024560 703333328 419926927 530505623 930404682 107542335 104432733 589927527 799368210 209575138 928915765 356127516 73041482 5232992 471419969 89773541 767332715 380078474 135572660 932768749 926066631 185392767 24902195 903622643 503878380 421350992 241039929 947207087 835851638 853383075 927189092 911379287 144660070 545714766 145871660 636044764 776500134 565074491 970515796 39162586 673848514 221023906 714991536 319397290 748499608 406057140 936026445 843854959 589115861 323835646 142885022 226683854 604146207 695851990 590818007 962406398 593088625 700733698 366271950 802687113 522854802 729083743 52988811 228067139 679541779 320216509 339963289 85106460 650162443 501552481 976893758 677896999 402321201 421912215 976416306 585443116 496217393 699576469 856725558 117794086 753233113 407351974 4234339 520865398 13284071 713503859 576948514 7664816 431371531 428573952 489856943 870793723 876540126 661920797 533954521 811376681 564330187 633982974 371413694 317176580 220751765 198988550 940269180 449818447 61644826 754135152 302123461 438925084 347862798 209996114 147463081 410315831 442450658 789902882 155127498 298378184 933634592 985483065 625098905 912024658 351985719 622238275 10371593 392791972 126689087 590702134 748929877 660254634 791451790 931236324 67817665 885356170 619138743 709152250 180164093 775896787 740987557 425290829 786039622 240330577 48887291 852703377 972564419 471395361 755228099 419083591 280575981 97645927 278071838 444139830 164473801 618832828 267749185 189865466 543203078 234873115 693079652 307742442 403990321 192133734 409030671 123798353 297185760 987372757 964231679 645027879 625136002 341991046 609323273 55066029 22682256 672491112 91370460 697852311 129634888 757396988 516943440 991357069 895926910 337665085 541600701 428424887 688064382 852520559 321170453 815251197 165614629 445593237 288257991 998522125 243366664 311972054 69769383 678652701 528805799 884005884 288573900 304908421 851945406 127355154 14605670 632757379 624203750 367725212 242166778 227911799 783744199 888667260 584246462 360975467 493032491 864392146 94257823 749355537 606890547 663669616 923488750 307261366 807010842 731801035 683939854 421158634 217206922 166627773 278376484 181813565 850151226 966945941 686750424 670902855 592460919 824391483 876469868 611025387 346176576 670861124 349032978 220241624 716002106 522743651 263870002 907137073 692012767 863248964 213828251 820134507 528002924 762613604 997120365 897401385 548428438 325130605 958482552 149977912 776456914 161460888 209804816 843001309 242791611 791515172 357491614 580911103 988439714 45438521 39346532 652236922 371849623 91441811 121101240 108661245 798415577 93521168 955845609 625413402 1187274 262304226 144706887 717394099 889597792 287364165 471276014 291218235 732144116 861819988 185026051 98155556 709840232 736764355 709036013 947749267 425811150 897405596 450925646 563727738 940669465 494819605 208600303 435258127 725464715 612721930 392993094 152436510 582481942 256927257 672465659 495282327 124378532 632395130 552504132 414192420 650137398 550831494 842112402 354910043 130895000 736121852 51732919 197339915 461875051 936078294 432620292 796483848 226468041 498329462 588973958 433981312 489746217 285257038 131585999 962932786 767736087 386727152 497807230 856170620 995241388 687142108 209622303 815403891 106834923 652195368 309572080 989363066 349246171 194982046 854739025 632405638 933587260 792123725 15990536 332195510 311564124 417024687 582020589 689241476 829039682 67887278 454417955 961326387 699581654 685452078 78867011 424434068 969131155 38582044 491998958 143958779 207997603 541302397 602611084 731803513 440819734 332279941 98388901 444870663 403423053 665845906 611502532 120974114 518462120 861836656 855482929 418516253 274283812 753577033 660033989 733726214 415416604 152687437 939999861 917798630 665289538 273329533 99327046 48926316 840061879 409464196 132659180 563991805 926836823 393094501 550787496 440932591 474830419 650484888 139632816 147040245 142937375 801363549 229836189 59390630 472430261 110024958 332679036 449183023 161640774 128878244 731803071 627383235 783724652 716079911 346888654 752513029 659685637 651516257 307283642 337273364 740652825 18263219 894370485 744116746 615200283 974498830 192352522 729025245 404065569 708062644 191831188 257138109 895557483 284148563 688572865 80933074 846155747 771704901 250694283 917257410 24996664 488119504 622456469 678636478 641819492 237551433 793242472 206432391 111699202 519052750 802011818 826227791 955717679 717128459 204929897 356847478 70609754 63892680 39595315 575235575 496989260 465402218 395787356 173221364 18355816 209200655 12702836 860863080 271463404 585986055 548637364 19017572 341238542 867507706 916842514 199108932 754466399 778198617 387303858 979023084 880715676 463604087 98590803 704531039 968754628 44915280 490775828 900378797 404766180 546244280 350162668 402419568 286121512 237086864 541268916 692258540 712765625 868958077 494787161 624614074 85726583 473500237 413279704 46250101 276295840 747575674 54781957 970722579 844999720 372037612 644801563 447211363 667509352 977721513 919156609 704423880 799938750 364305098 679276946 266189670 750386598 911680165 357142780 646443641 867056971 4433624 235745946 120686780 962983182 912965425 76052685 564259921 163806277 827903980 617972045 457530956 235587014 551776634 98783806 539158064 580383339 14703852 643575437 851781881 689469583 522064537 297437605 424883682 1772439 918135271 551950900 699618572 581903420 78421362 807805000 689184810 237060904 150382972 79933681 924768391 220083289 194025101 198607179 134167210 965651634 245822507 691095989 664587497 6283982 706250563 805888576 190279042 99277469 899226520 444132038 103066255 197050316 126910411 513080546 987556418 44929869 300970358 942047218 715517943 822026810 619797057 153810967 165882812 450513397 134764443 374088419 977896270 849178692 285436751 236342366 155819819 931558782 495750752 123947104 680353992 343182542 226033431 844627376 529579540 89728406 526440191 794440873 299094614 46334751 735355842 91772627 928298664 364755733 585220855 124187854 706995478 924751004 256710377 558916949 545154301 373008962 450779630 848035763 451207688 446510595 429652775 58820936 188297291 984399340 862046034 819182824 705833709 314234180 502195654 151415865 706536546 999870932 867264192 702918935 651735657 523075789 20457548 366035649 417629894 140175955 419984449 593854209 628139469 210163988 612207185 482234037 588771567 11747473 222811857 162829650 63408961 234808916 151656829 861036453 317524987 83244473 367849297 430269621 4040497 879227273 199995386 793979235 930668018 586316980 947109210 655595438 601019626 269801664 68537186 341532665 603109845 315189355 165536835 949180421 748904067 614526206 160620891 435364623 642237137 303048446 991403283 209238376 126083833 737477475 476759502 409521934 853584748 987836480 711485653 481940446 305874788 878440917 528767205 340339713 419912078 868795380 73199992 930015401 738426607 4016048 57377903 349759080 726467194 928659636 285799383 263736140 48953442 978294941 864040837 150648509 82606080 454807013 717654940 109816355 495091772 312875873 936859500 393471147 361687127 53274638 949689134 921066067 456891339 792904225 908970429 393221146 261619202 554221362 653370701 483831399 943474803 939434531 611424687 878935729 773342488 395447708 140086877 809566961 489446000 500583106 614348600 774378099 778500497 270524994 421251736 908695291 787002028 934265953 620483404 532775633 106610302 959201433 976222751 463733671 508750037 220103575 235414876 960227537 113505317 134238479 392076999 467521217 499413343 288037921 916659932 25258506 604015731 667482844 571787479 42435833 877600787 825140863 534162978 509206941 282674263 956677053 623997013 10105429 943114257 310592862 853621606 880209338 882937327 14127754 826739268 344760426 572857500 226007424 843297008 165259466 463507501 802015950 520603140 111329961 60062539 706233709 724049796 229434732 607694163 82832962 13968969 157930296 985762321 943015597 765325357 418345101 255229293 154488910 429048584 582425679 758533836 769593826 20382436 744109680 995208106 52599129 607877387 708638646 824489488 180583055 844321687 21297562 63690465 504426553 726891745 401453804 165309873 263699570 425431395 362782722 360889701 810821868 933918776 989198462 28287779 169599090 343449050 839261159 153967783 991691753 361936248 966809842 775509361 646476757 85696860 339279875 512748774 816619923 754953036 262633218 883870370 50710618 704004331 663411978 791578604 227045786 989687446 625149599 634979274 483746165 299818289 69910124 613878155 434452782 208627244 475168621 861335632 373203156 912511371 74064478 203196649 562434625 701144050 833068569 587457648 692175208 662885658 762312878 506281070 185191282 760496246 486565685 725393239 343952227 658865688 429613362 511913047 797420827 108692454 445339806 54707409 989182008 464533815 620826949 54714493 378954312 504088503 549348790 799096147 210912025 116143101 817090045 820751178 646340339 909852204 421945213 3824850 742757727 34553960 950032459 894825026 880748838 214851788 949111868 981859885 165860257 241775997 414506783 499681832 479085938 862058284 980672831 465913949 262161593 791565510 492352041 485969047 94929349 913477480 420586390 330154805 592203600 107643083 304264819 695983856 257528339 961618544 280387569 40337524 738809830 340074650 259522967 195680311 111259334 201665996 920987280 844889070 793415086 102774627 888422491 652282557 324693489 618362433 186661635 509929626 217025097 440903733 872167870 957243044 820541211 560825803 913583873 287871630 985699665 783561208 180571770 849138384 505215737 751641835 937267866 36068976 505938061 81977372 81428483 433513125 185012887 651665950 419131093 969606353 87639890 298181470 692865849 66146283 597865234 956707658 102162695 986478372 704581826 51417084 252560493 594368544 454229121 870443620 607777596 438231379 378459761 504454115 254600941 411151119 103225975 54724068 627953558 770067461 805930578 876823740 360919666 781446280 905380901 760585991 418240376 726676306 759094554 480109531 784743318 519235231 101767859 990944488 915260094 634655095 111416155 934495468 180901184 246398367 126826490 636497155 972155734 38209066 59468243 316349492 418089622 75283211 317137652 112028454 167088870 428225678 136938207 803308327 296019166 72619987 991018535 808455155 742476795 389247666 440874809 605655389 298508984 465304713 297035417 342781778 198048514 10123365 275664798 499161226 449915419 346931264 687758939 983958295 552087379 338037277 561451262 585204081 564695171 69527623 997965458 945315841 778692995 51351640 925534985 16975802 960345665 825964336 86714355 213423340 929123935 793551004 878605345 674465659 214763578 781193005 218935288 284275672 405650926 572099452 683357587 190838773 957642133 75470102 857678749 259309760 228208354 886955834 514256283 499563600 905540400 524720534 550429227 844070946 937917308 457603139 169031251 221834291 340861716 630036471 715141639 297411035 101559938 766675296 514690015 886344681 819924366 914105198 670817951 21607096 338513375 52726822 697423947 953723074 690153912 577330981 159199605 366410883 734942040 265810861 932220918 126531625 905564672 779780501 288599144 688930905 754772991 461751326 641107605 64504537 935300706 833789410 537061058 572688034 429353417 357122242 373473053 915944816 600080300 930774399 688079666 767542904 497957133 892458740 435348025 754999145 867575016 569993468 394156032 883602231 315188717 437188035 64833354 222318954 442358953 353488105 433101806 963938716 446259767 93563428 496865738 196602366 81708552 704875159 321198051 335685159 213020872 236042344 737021141 158944010 795680846 956017155 232285865 465110664 615419900 625144132 846379005 352776390 562193501 876462429 915345222 988914454 387152328 511118028 737525401 6733281 48170069 912146120 728478244 292422370 800574441 34434883 626454161 29100535 530580417 639885576 412139267 391387074 425928295 195669197 211596267 639450814 280378679 111010891 969369480 106844073 125067276 227970257 219560899 379751890 954523108 748114329 977040049 224524964 970012653 670302144 18788827 620629479 709536794 34651120 138548348 241923119 592698946 565451825 23746948 527576818 913167658 394428178 49705318 145632097 397458962 441572572 818823679 373735606 537087519 237668854 234164714 329282462 913950771 947342777 412653712 273418577 359040833 507467543 516983171 984070746 890053539 248438913 820013306 575942061 64491176 984316128 161033442 938290237 140154371 846694506 165999359 539858108 339750354 188249860 618755413 925634002 110998652 372018149 840189305 678814164 185657794 310129024 683439539 371745710 977546565 341746164 813185125 935569239 445196048 258921247 333779176 539154561 190335596 274199265 619624961 16112285 576473328 516947488 841801390 906497399 832908809 352291231 613840335 346296784 83523514 805713989 796865620 981023102 846915034 963979965 402897884 996543529 306469103 448314701 233237699 876006992 707848574 433978050 626338417 369583877 817719809 136140 773900025 718823537 77637208 419091941 985601453 308978769 220541134 897490066 435712050 904010409 424003749 695809908 164062369 710416128 562132820 109036041 143485176 344455858 232491368 303969460 74908905 286608605 167561248 89389964 989066176 309102763 470032967 533629381 591879147 966921934 390096395 21934781 3066081 331064168 122786861 760529242 82053438 349145404 730042054 164424859 564989722 257683746 821421559 268372282 780512535 225281510 538233759 199759375 489508697 666134063 83082023 919085200 336262318 908534605 321211381 982922487 697198694 923010376 639133408 765623475 365815743 993644149 946662362 290495649 855136519 639755202 273486038 30783031 527641574 123014988 390074038 640199826 11138823 648890285 28826114 611003631 894927352 937036811 355327319 166109599 738951269 783187234 337145694 233567459 962547156 738834121 256841770 126402829 431534403 67119444 544158570 67238613 882885325 150279394 994744696 679464288 984889384 976759861 610494772 749241846 649370602 665569561 766470497 176719639 335210752 243753873 821643589 28071278 333087694 57683189 483651777 188319657 531640972 87251486 920047427 826009334 945589032 810574029 135298382 94020193 270272306 74724631 959056158 756174506 42179562 574521934 868721396 916871839 686379625 232852879 455510379 41890336 672754511 922462411 862307301 889648499 352035076 687931040 28941171 369354833 718099582 136017725 340707060 112773131 953093567 514982463 536690902 576797930 321250930 981397552 721457243 558532046 83873425 131100671 711294820 874565498 987697600 908582161 563936116 890859848 707942370 233165948 163833236 749495660 422492316 442324564 499382904 417547615 660361566 127377857 779418660 958835843 236265251 103187868 20749042 464272232 371930099 990061406 424283164 486157029 279896639 27191741 165248382 103506581 378944015 976858349 157131070 36196798 623539522 181598849 800429 598037811 61051013 864755615 664206688 795088128 302386880 58668474 348666422 335901119 702968295 435761483 633611944 799095796 983072357 42951553 633091610 373853506 290781168 422424327 813534923 687302511 387261853 396013806 55505472 665620406 47001089 376870449 634212084 165960933 662509635 959554169 732404359 255223229 384310007 132910995 860674939 327028460 616930140 208559167 42429943 479235871 612877884 471352287 111060456 353683044 165733335 403193122 841350129 610497397 245711018 443695966 652966419 847990872 49956057 375090432 485737358 111225681 975904024 877220230 231580643 47309727 665572885 516208599 623473498 31294736 583350681 336070968 807650964 338648401 998197203 875064350 793073343 996550322 776133918 583388845 418142408 32255496 967187272 332563357 418362564 294060323 579894175 393378486 914753426 416218746 835735938 860324359 633521518 886641137 772488544 261860145 499527594 994678156 467419392 882447400 291114690 984014368 961777403 880382385 609443944 901523260 86620121 746682976 206815102 256796314 408762197 372497964 790946641 425667024 463294816 554467691 958092652 724451194 868234442 410086148 279004536 302384786 388525311 348909376 753571558 784793754 136675825 14812351 65441671 170706892 930618109 264643041 556072006 162018529 601452057 347487759 614693335 489120141 56645348 243500646 964692743 952273101 988150256 674764953 914025231 281434891 703587640 856176732 157351395 536598123 788405138 267045213 137317548 565659508 959100320 889458238 323160622 82274675 561693818 125835961 379840566 910902625 258823234 333905518 703739234 50271179 880127353 425904429 191118084 941122654 775046302 662570782 556208372 22717799 911724168 320383812 579467346 657763131 588801127 179664184 562804877 544599522 798026774 507589515 553835097 451606721 546097674 252523490 988359086 763131741 90177937 310742950 201638175 985000506 493043750 371375365 63375315 52860102 937816063 802137213 785313976 753725409 335271925 730438542 568083638 911398249 133834563 539715815 659985186 656726558 932007504 976384384 946998581 871292849 973009040 585253919 857282239 213441975 981373971 989993154 349731854 885456862 213069879 878317285 243629217 707033698 267837889 465401164 549891503 752314958 269131283 392196243 442740283 555203397 504653687 174892772 757087555 796324998 267523211 75409609 26358470 569721559 203367332 773723919 34445743 159272422 40024099 788134748 431325384 305456885 14751875 266604971 61003191 161767800 600861911 308143860 21403957 128372028 337263688 93815587 877140012 61667 38351352 409441353 322228667 656746900 188721785 631218819 858892015 805837767 484072081 822584815 119354603 863784991 769727635 734663780 452302366 414057636 44658986 841597130 230146492 534314163 752344094 996135479 439924363 377298597 752536420 108160589 932240050 489019895 59268818 918155489 254478549 209010227 991485692 593257286 654869636 624870173 525671497 878027821 796006067 87273229 13643170 984247924 260081576 392183790 304081804 184579460 902763637 730934075 744740290 642168850 223002957 197855280 451590851 518902540 810917557 608233999 868856190 316801543 419909691 228599733 371719087 882424830 508640086 223744237 969118606 240120834 873201573 891666147 907473364 481505576 136958767 277613797 541935415 163329063 803351115 579343339 917315140 696198382 588523757 279333520 433515101 611317931 624092495 471578240 923646078 43491644 674547456 167909731 977798611 971831779 70345106 717378621 110330595 702012 801533493 202285620 9227676 372438818 194620949 126453467 595323206 596927850 189882393 159959445 425440190 799771004 137396013 506998690 782373225 224775619 169424675 480185873 558121280 329899467 196400792 362018305 858100834 8358870 822645858 930391423 720675958 745861827 84753592 629840046 215954499 421129217 672276445 92536144 28902808 137832095 513255362 639063274 608271101 838575545 293763302 469436294 309079549 142656575 910715753 884800079 917649342 817887324 445877590 667631700 619637776 795463830 294820796 550638100 833445588 703011019 188356845 187533022 98887237 435999566 820686689 442386669 778500977 429181845 180780734 682743801 79613371 690502661 237779712 540269701 633434338 328863717 480124050 923469989 149842344 97832539 974594316 774915958 774401164 924540182 799659802 351824611 455056610 703071207 885710975 180257599 953316627 801260189 518728461 971602625 133245466 521416249 740107593 146344680 744677652 457376364 970344180 82757445 523170756 292624713 169232377 258445729 146691082 384983084 621574244 150404261 390085418 486714760 203939224 324241576 677729052 517357635 835330701 707252747 234828193 485546351 743657471 52445714 754570999 643171511 671720236 627543564 880220 266972658 606515471 988216806 444616699 615896732 749823736 825776563 343798877 903568636 853430558 60045186 782049330 859376350 442415647 519478250 765582240 304898622 489021411 457151474 951842774 341611579 350862562 908490791 159044663 879727940 65518074 330088478 966140270 314819392 33034902 842337683 427977742 823021285 97337523 604661183 377503178 160437303 644504669 559584587 897935882 720391978 435082237 260416660 82725978 743741986 284441641 674741196 473351018 419365411 23741970 749294915 259494382 567264167 697732921 570761745 954445789 132286990 151395693 7424417 363472254 187572943 374265684 678261166 106180766 901221034 684925068 746208168 963274896 414210175 648482141 223987908 331730350 106764719 348835217 48685613 458229761 737514422 767222288 471878830 957976676 729350204 542901183 583450238 709487976 625636671 383223050 675053796 137979417 883481702 881509978 420779345 725471202 258794028 70083029 129386973 620175710 516694258 536822964 332905350 235243191 762598597 653279960 821069007 595855244 479343687 13445239 242286159 305507396 781225566 792097853 281735730 392506393 812559987 408672266 615667868 526654215 710042872 500173613 521999808 720996028 204736288 458857940 861608488 527367529 485670169 344848417 270520167 487980353 769955352 41221878 71077120 328382142 402915648 703791018 480399388 338117356 600344303 143236896 722125299 559420393 873578853 7306674 450257167 650890634 72989614 769037572 474352638 106544156 679742579 651998831 589858276 222082561 751219538 840745975 457995548 371350014 556169669 184805339 152795223 320834591 906448962 616566692 86403460 87792113 373239199 669294345 866764359 5254178 920029067 62095768 697401789 433222693 893065178 12750856 14452335 82242484 939866495 680596954 847983489 131760508 561639883 460423125 9846808 747234186 728716783 723246070 516850974 352722922 877114544 495692930 675381782 935067732 963737910 737645891 817926429 774110135 346229288 721185099 992063457 630340259 376030048 348780421 850043045 772825321 858777273 750181939 539671656 967739129 815218922 693493038 862903104 22927950 104710752 357454931 228532336 442074315 498710857 951271253 622234357 272329079 12820008 610719818 897300636 662401656 531508853 496780277 282359415 769130742 227966006 853281188 105061696 167454549 975290850 610244193 622088628 596349500 131027775 331208803 829795582 794896234 919981226 494195397 832946933 516968770 922230678 908989853 162515778 927508320 182924309 441506162 411024286 473750537 376553205 974679817 973095458 301321645 920385885 610654107 393313515 346265760 11704887 896730610 278929803 82511570 666243933 457073667 655752130 465467696 787727916 994455053 791087032 490784023 628162074 551005747 298399364 292113034 894421549 787562755 171801112 836643099 840752663 666881187 296864929 972369246 879494674 266951985 700998122 275813375 918596710 467083656 267634403 521421557 910797936 596019526 441592099 655162970 904060251 892033804 586124668 899048602 892448936 189997057 718301189 893272021 823156745 936258403 449136153 377983996 33900033 413207884 744704366 420211467 521441448 668657361 570756242 143177555 781242513 407066277 372002553 727783755 880011892 102384013 70862870 673100083 707703719 756784637 704796985 568927300 765679048 375505787 948907419 853323054 848044439 126491786 543179716 18813801 667204019 480239964 754081275 543313331 640680322 677881367 658365832 878308171 50134197 203695628 110244869 777190226 938854820 701711357 872656198 841771586 270257 500089061 169002273 533611266 822082176 779461896 303478090 222911991 887931956 600070375 546832016 494822046 97704389 849444058 477480720 968527151 610137712 348875292 98187937 76247130 147098182 61111096 576862659 331435346 689509983 820772209 614277520 560333551 588872384 241532702 975712153 134403834 789432050 124471467 768292296 49138607 889659645 329349081 903028301 241457432 57088623 821747894 951163156 85573218 889048228 828267760 943766420 347535351 915779121 4803300 717110237 349011997 449981361 805318276 256720826 368895734 864550287 542023233 438057726 632492010 857612654 116586917 638650176 329243648 11356710 441277448 386301870 513300082 973995008 756449591 553054378 85453503 437415381 213786864 154044173 644647847 767138117 604186645 115479356 595710571 696395722 304438177 31100674 96678257 327416646 86821503 733714231 45313286 79557687 59299748 315498409 220862980 352196815 311632528 772071413 292621588 727453345 910568738 629582569 380590042 92113270 225913079 630526364 553582782 614073313 750076834 467614805 164519815 9157256 837633753 796876150 361592508 906982872 10712733 662599067 286944006 518561765 407529868 246402618 587369278 842156132 100777364 147030744 147987472 835610243 821757368 245226438 684740691 774697202 591941695 477429290 726797679 299497496 590262 935883930 19273882 155346829 840929191 827280239 697430515 538238670 764191312 941127203 522861180 305631912 71885515 638928926 397440895 196085114 305360315 919012133 142281500 781851261 151385939 529719567 253250246 521573372 790448885 453569938 904267398 227678120 719219568 429632711 733609179 8235115 372085558 24006605 811120904 4412723 371239332 845877891 716837698 69603975 171086534 908434654 396993462 622061109 116911464 419008051 838936586 120977321 774227259 88864894 667908562 108145451 353786827 541508906 926564621 100998450 553597471 94529415 486928609 946913590 113624483 102661204 92483455 850106316 191796847 513202818 548717646 308272449 474538042 79576923 583411112 117726554 346394815 835283514 514511057 429822606 166378811 713761346 598267013 673171941 660388063 596251216 760772879 747256860 459986549 670586044 832721741 940707137 724356537 384753303 269643441 452632302 27759845 701854708 354060515 432414059 188299001 402523373 980189942 725861877 186314011 299136061 829363286 572244696 744153819 74077874 956392793 596714593 785691092 374939728 689896803 102030439 959774867 20036784 858300727 757121632 272380236 824510074 531900838 871943153 473304528 661589182 192891095 894899682 701190698 118558859 318853873 514122994 483883052 915687464 220612099 699683753 474765783 53847214 244872859 508474839 888452580 428337105 886997610 759454825 753768264 825225639 448372621 491679648 644469784 241459878 964458061 421009271 950061216 509919753 452097671 987305246 317621929 900568168 123459949 700544539 710230601 882646499 697442435 676413907 952499934 941421302 416445814 422249734 16683100 327999966 888011805 695699326 971863095 490793883 444724366 917962658 704250491 389134681 606911105 207150440 86980626 343187900 430606297 123983056 671832551 388757581 809678245 580613373 895907097 750801847 616633363 625346177 776917156 694331430 324100111 681562667 694706709 518449186 283355341 601391959 352129390 393406809 177533204 394109718 497379682 471667656 928194441 66661207 460212029 533473712 949472356 675949365 795730563 799392027 225995897 202518088 389655728 876689900 413574996 799174654 913453656 913049173 345907522 919824985 948987922 716926769 862441327 187143373 841998370 81921922 595387412 662221299 783624370 648978715 240259033 630272558 564254423 780363458 670696863 254816240 268946501 629982394 596671697 722378371 834183700 475912750 611916138 983548519 734030096 948345101 336854430 51105639 329607576 515716340 308117285 163400705 858296183 679206448 683593828 520028134 408043094 857856864 58425071 206947427 154469632 107740717 280254050 967106427 247393038 584023766 890539951 308721647 803450672 975699983 910987412 603183118 771707482 887341937 364066192 451830130 600990194 461847919 544921149 603122391 209426452 198342966 40492936 533716201 124988878 920871837 888221924 844145341 796711171 362615921 965658955 780374442 882419934 610297486 741426552 761233327 535283458 228163563 101123730 377603404 594258745 714947293 318147154 93046017 857996844 391766452 525028609 980993799 950140963 292993208 815351152 287354707 276160219 633625529 357650862 585921868 819910501 685807353 667197902 63417096 286509257 480714835 491961122 318305028 242115445 763865747 513388461 838280908 790516522 90753073 32173283 513223336 925751730 693549581 857315489 362653025 129950651 526264151 419233311 25331877 441567370 274361318 990545090 480917920 570990514 126738006 49268907 725587800 957484661 572857521 115202977 386975833 610296798 523471991 229405888 269669477 170069775 597834460 713325156 954053976 825777457 676084243 556489263 780560844 958270897 738903144 619681443 194148497 416880713 908280916 814979038 53572865 945400997 69266652 879949436 366959728 991449868 504031191 694938808 27283325 7799169 216909941 587970785 834638044 474643990 658825131 745282549 523212528 789978429 150705815 931847223 6886218 661645164 514839663 685555168 624559564 862544050 136313445 495891074 949540745 973850474 330392308 162347524 123062032 823677732 286647940 325492173 812430876 73576444 179292595 463720949 521441489 636901543 40575494 293682266 366334835 572096932 803570967 336656132 973261251 125550669 221137705 816747014 789697921 399310766 128208912 596762840 986388782 216304086 727605285 666597914 51314344 560932598 73831757 610804543 909741819 78556897 371161359 419839285 507995069 154578604 902366385 549277326 199687228 642702687 860624957 858683143 773707489 556551107 245981534 827986289 745154502 820227660 393684875 378507336 748964411 175344191 296294895 313494935 444623123 436989777 478820212 742065153 517251594 572535806 99546667 661001318 134417519 378287045 13479805 99385405 913796602 113528578 122779419 796069520 594037828 688529769 770036693 385267938 599686655 521063528 161745921 704590889 268736392 41567480 330131137 273434142 859499410 275102369 820409993 745079590 626647397 714343575 952265231 444862401 884172573 671492284 483155153 671996914 457264402 718205243 424431708 553876163 137311127 807664957 917790776 895822556 99887592 102527082 66359812 733756729 761253497 952625403 676446343 255243378 142432603 636759784 304543588 418157393 197346008 566132916 5141681 54943861 825062549 355433685 62061249 390016046 128446071 976149357 843034963 441361169 269880715 711855623 439514233 922512156 748794872 898045621 637532579 968298071 633971659 353345714 213666216 105313326 296516093 309342182 429450090 890565019 626898370 637315460 496685668 266980103 771697716 412361775 803607167 759448054 731796652 325159583 786595495 553079460 485607057 927773552 738889929 927237713 545170856 90745136 675485961 63053519 253785231 628597937 20287167 374976552 620885382 62797554 879386686 394981792 302760936 220722403 330463011 967186079 113125220 374984428 262926923 243497090 312830974 857299126 566960918 168540815 343343913 225265387 594853448 279421393 769690035 577683736 235905682 831743032 357158064 7755874 727531303 158929776 39349857 533029932 706040602 423165634 563795555 611048496 61471094 536050201 168057825 865473956 29963778 627902575 655770875 164774724 675607405 66479720 13392569 459665378 149774867 528020926 229113296 959074499 475854974 956333769 551922847 742068143 245524165 789881689 422753447 98215292 550127389 761627040 801106551 93688755 453448366 676256895 524345291 331383790 843323528 950099887 539458199 969506645 734107078 986331330 775449763 14132774 351002575 912357668 171740310 32063041 319406315 781678462 132285999 84089286 369158894 657442403 661363117 123505802 661293220 666977141 83172007 323134144 153282219 358747540 570906142 863344217 990066373 582035427 564375456 562428617 503668961 894441292 563198142 728084600 753366267 968772252 100159872 446276415 299867199 690459854 2039213 894794103 375643599 170411845 851291107 400476185 135684268 699874462 655103445 527003819 870665278 439802464 974375017 204157173 710081988 39725187 939302196 913787660 712591818 586323983 931757842 299049309 893338265 689871644 959250309 455499942 824660059 902187864 515967571 212018860 750138503 687788263 398869803 16886561 876781657 348641867 296860166 457366084 13912588 582675352 362616269 645074677 756917443 994957779 112754859 971195752 68616317 638793969 186524378 10165280 547633088 570259112 937717297 44965497 750630803 378611221 433066523 898187680 833763565 846429193 944859123 866710394 99247805 350893379 998052792 724968463 465308786 19812003 338395192 694469645 770692680 585214381 213886693 370877137 453447425 595987287 884415480 984589983 118632629 260336801 435182890 821036156 912126933 585790607 344057875 961491914 489574655 651935815 793145774 412769663 858771737 304589691 930017273 285813877 745691506 793049929 827338465 409567029 188233163 405042673 543106276 207942896 957979719 584180756 944894484 225816698 312115010 788550477 948257709 475674079 587093080 130883462 316884407 820271587 751909451 991155984 757147167 331046207 224364477 291528019 303224256 382723471 553133671 723943196 99510761 229451468 578622456 528464227 37697521 792016375 73699108 501303131 464071443 531382696 530654493 33289384 965511341 463837704 208073640 407149221 266408540 619725836 694506030 534094719 951704826 788876801 389022803 571061288 253661714 732167042 384570285 707687971 761194543 545815931 640969578 511483667 957193704 851588564 831507134 121748782 372439956 973955951 236584841 290490289 19947113 324389427 495784732 424725702 302824631 563205401 933384249 708542442 727577513 713631686 197124095 546915868 396136736 156074440 338771429 544644123 273907606 847467464 688110581 322437075 900780160 812033011 532503522 632822318 906990196 563309826 85419541 966141244 508337427 135540467 237815572 437918407 583145296 4647129 514392066 39572252 343116554 893080890 671749386 282159360 337817441 691761591 163559184 368989883 104306506 72045813 180730517 877927736 669530508 100844984 434193475 282964354 931795196 904976629 903156612 531786487 961211360 460202127 905518467 721981115 996639884 793263334 417054865 43166747 726725334 597605652 773878073 693938138 747489084 820115379 490908037 532992048 45439490 959129612 980449944 132870457 878230566 108273030 529125540 230197329 415630681 185533921 332337452 11712652 552800791 18418072 981594565 112739115 234029637 622160747 634833030 411956414 692673935 336541300 517866077 42843209 744015191 505908653 303737148 193310971 793703775 517917267 606040685 688024208 696367608 580717564 745111414 55599158 449192035 903852457 135671922 548103998 118383565 841661319 849570726 523481160 889544839 396670850 297581811 291307028 801960835 859345947 555144418 965602229 690764242 405293243 742700036 329851173 204315385 728561557 962073152 783035436 424209577 13101613 282006052 146912399 38766639 298088983 147001159 894389357 504411983 817069675 969882923 8368094 159041586 949683093 312863697 157203979 366403968 644945694 783932737 951278831 437778634 282215276 222414585 182088314 594201988 311134017 559884543 198486886 957015835 913654124 97382608 483626297 269862773 302262987 768449712 105283611 834292595 645956560 264050230 542478703 241970018 80686567 345920560 138545594 561026051 786080601 859912809 565186410 923367534 339868889 475755087 81633412 851836095 580079854 444611081 32018917 65351142 565019531 726652605 526485321 795722729 363219603 807570091 707123015 838139475 142878651 24433839 254976106 448718463 75609861 788625136 153496671 546746454 446458734 95008410 302522710 982761676 985417631 782298179 785057551 786393793 715192325 267700942 95504836 286027412 377914005 439574119 679477991 247174259 18796681 854368020 638323152 711687489 166739277 226926353 129676885 702201491 132154760 781243928 144829930 621060814 582710451 834831022 408256757 572372205 408342047 273404242 90672981 760301923 850490062 330066205 42488678 858802425 487767919 397399749 62443213 360390231 824205435 414002453 163254864 84841244 951954397 166052190 200866665 911124293 519591011 903738485 38751963 30649775 224819317 902248235 420138014 908779629 578923053 707175799 280117082 798504017 954289872 654831084 904723739 377677887 957593960 314539226 594266040 698773007 268955370 510964786 142233968 986895558 278396977 815014716 849827299 622364533 552981045 383772764 524852645 230189038 790917056 419101606 122595060 201861316 23386729 425695723 669326503 931374275 337925918 174517219 474160062 629633503 344709854 641733828 887829506 49583407 230700786 88478973 683147415 306845644 904930321 903133102 529201946 884502697 903635280 150492144 747127607 152908278 463187461 424150929 896167968 224613746 992397900 375243432 152637356 308791397 228655811 955148831 556772124 603256659 105505811 664510882 253552780 988794496 582566109 187409620 602301383 437528720 427605104 634812825 841300551 315593096 748692810 711829747 507877447 511075402 320603100 608826638 714046509 935098521 156225669 472898475 758232764 172555459 868074948 430274043 984835518 125107189 397920074 758865533 30432085 790400801 928200460 401991338 213429704 339152154 475073038 20468305 230776075 122286425 112502876 955542809 806746281 604327494 264897059 688528458 949283685 839222983 906862340 525155401 672938029 412945368 726878613 192671513 66350774 849078130 295454490 718328667 126816700 280392681 189857992 694814702 11181505 872998979 531180288 628593043 71150753 158139059 90638979 245041842 423913278 324531386 495716620 968259227 713858947 113244834 184335039 172294053 986844853 258733703 295730031 533362744 483923848 860004850 502113976 548122988 449340823 643354676 832921354 728955674 884037538 94238072 167810647 933515313 836943132 381128730 137511473 342366602 333487848 662665637 923020122 274606510 971480242 448040252 501824960 413565063 234685811 968784708 680765256 296686265 773360630 227630241 300343977 268550410 698532181 418910538 304957336 832736857 909858777 721178599 997699311 948751299 981244258 268241246 572199612 150212385 805544316 988450581 451112453 275707081 107715133 689514304 420134334 181634272 720777230 977556179 514049823 100411662 962930687 118864666 886122644 61129661 239457153 494905598 534488915 482608412 226669685 203275346 652550057 701007617 483769407 788405949 276132743 216276613 637835482 688777813 12583526 77091058 635944701 913711696 258281510 637349146 114903581 2779428 342018193 193466520 491819641 49936952 595567672 231512998 533560504 849912504 644252441 164355079 884086839 16442076 555037779 829491543 771972385 495794075 898123024 39123661 923643671 250746508 252836506 68681215 143803696 420940997 874266108 69776551 499824465 477294253 913876824 65184641 314539167 252525457 439748571 290038000 400831888 636245653 780299234 112486940 974198580 385896841 924775489 241505092 747716464 64852616 150481889 728230707 351470242 331178536 690227524 349734172 593556132 64490844 310246977 195492951 718548929 676667838 799436331 126407103 409798925 531250638 611123692 71750880 670411245 284641096 260783500 140459312 738442858 689324630 932806989 798805480 239814570 135308576 405520287 59999138 174028617 435813272 444726657 363075518 535363684 941453803 772445379 54081871 31830010 517043629 789295709 630544251 765705075 191881358 866021193 208642328 732349854 871221351 889779683 307043846 161051565 277557093 804310727 67904905 796622131 695114691 119356065 75069250 189732400 224194504 213574531 573813275 480629728 379457020 495215484 671253515 304067523 979477061 490256361 572628892 842616922 126496375 873539730 668000710 937154826 856829013 680009577 410061026 352895655 872388266 468336442 96428749 347977601 701408282 839424114 776471995 953831349 24534746 371870719 938822473 228486752 358590296 636093973 824954671 922358823 928184451 803168306 162041122 198788026 485454117 39112493 77276695 263288450 338510866 370932255 311457623 773133964 590517648 505906002 799451699 343681304 495210909 361811467 776658615 760227736 513807104 984788078 506587417 770287351 878950112 251390259 943564880 737405670 655875518 486626211 187809812 28510142 333930301 39940854 419989882 828792934 220023930 12177000 981210990 674822640 723709165 720223662 534404589 579591241 691393925 414032033 917304903 788281696 714780396 673844208 774008744 461648257 94095116 974182730 119946809 520142835 411607048 436784879 273100385 138466025 646857544 726549497 807958101 630752028 907322035 382862526 363632914 857825129 187549991 863063787 364638069 867282122 509602019 66208537 298000946 466148500 871539425 117143793 448173551 300464888 411250988 619783621 896360250 106633123 145734280 987458285 705900653 82821989 707885046 675555507 935685624 266659549 230666392 418919436 119071540 251859665 120408685 928798936 733786522 204347233 937663402 67025980 376441930 618274374 134112069 133242426 804533184 327118812 513162487 47170719 786298643 842726897 393535776 203825330 143453609 972656363 573028140 828179426 212442718 494238779 608431354 381758485 462229718 862084754 431076991 547543675 639192491 537425005 365157949 408937032 661880120 500649004 107703877 519834362 508048221 220460158 545072765 877338610 388112340 356327908 163729197 819336339 684640793 673155666 64677771 186031245 243876388 419823356 209473471 953369038 904152843 730611423 234513335 852897408 789273875 32362630 155109382 882195773 383379378 508325972 202393804 415801008 442061197 930978793 534218345 228577144 787609386 268408896 865467718 901206828 8302785 285941837 170527041 530935804 31446568 848966374 870630509 171178351 916785269 252841108 532879755 656232770 40841049 817233097 473918090 933873765 269033918 160519492 885242320 377180445 183396629 132928869 885917220 447598830 863571319 451314490 329892802 513710300 981826718 866181744 111144399 334485747 75755072 30831861 143422891 2725637 360561071 474291049 846121285 212577635 532978098 494572161 656634300 152684208 682723625 712133593 328856478 813723431 209224588 974741947 661198902 303420823 136793206 281240002 73784999 951813685 852721772 887088567 674635702 857037669 183920005 765955214 219684255 229359364 715651014 597106810 49751778 655752590 183499958 637845284 272009466 957836988 402634770 181612840 794202740 792780652 864886181 542359292 417393840 59857055 575934808 232432949 756651803 418003723 604211540 802819649 336081024 940564111 934083838 926386281 941414756 140647794 723909466 975977583 589023542 55592084 811714377 954588950 304733967 175278897 922041921 319405607 116731296 377156320 558826365 542499104 540456810 916185307 916157081 585815111 643938087 675504203 478939600 500233355 367251013 488507333 480917765 409009369 200232114 171921206 734815364 378892386 372124495 101798976 674767521 728301197 791565885 999831882 123282068 515612457 515489813 395814261 583719065 425116746 54949539 982037622 496571664 773529516 697311697 240382776 518573057 450643117 570265329 405577937 706857476 449391234 824171663 55480062 747387727 157255615 872866902 857235550 336011507 78562945 833214234 801462139 950717275 341840889 18428448 421911623 918267266 107115521 773533686 400849261 678288095 86692264 642246976 256253863 851207685 562493065 672927414 274126593 641434420 877012361 918138275 512514608 895706913 232792306 53038374 275009376 858666454 815564818 681299199 7039592 465489954 496933818 370377495 521156954 711263037 461738966 221869827 191419730 424255627 711372393 764782380 166106128 46265374 662772327 807654893 699415424 394203545 57686322 466009923 336177331 956514954 375011950 160873122 882793042 105218859 453164738 588289568 660012775 809825096 33492611 327581081 129197545 552097572 146338 833786302 148306444 156314260 524959971 581863431 992486478 968263839 722921752 74683083 737408721 620549333 574588300 449283283 345634365 922497582 317058710 292034188 483607564 607479827 113678243 906982693 266019461 926134970 868983186 603084632 702770157 758288726 538733825 253744642 603869217 146665144 232350892 757939941 444714704 623087086 921595868 418871528 748651615 606607171 449125488 83519353 16251511 994115410 816237663 756484698 922406327 773144142 92398012 698033457 789812108 213993575 676148963 332828800 139009119 917828766 607080028 81768148 856160262 782686143 419567038 363869631 896840530 104582401 811332878 532118719 773363862 206617310 486940636 271904390 912811796 465886955 967075723 998512061 558122452 965792184 464173383 342103668 792790971 902228420 632185205 275022573 464121340 310020493 778843427 764689830 603954505 624603289 603538476 299632825 598998156 990043873 338907387 474377036 475063980 71152134 475009389 280452028 543289079 247774585 422911702 388540181 731438907 171794076 629001749 867099311 817445687 201496909 379436001 109881986 373651517 404851737 112080008 9947124 609867058 304598336 978213773 776472977 599358349 661852422 312458958 564485111 972926566 67742776 306627058 71856842 440834878 737280880 814416245 577004214 661361373 358038050 214312116 37396840 992559376 674318842 390720185 134532651 439258284 7884181 713561225 223754574 673011555 494175345 161487201 559989377 857100005 924046271 15317910 962432509 938533543 797337565 814000690 725600706 72708026 303142098 458084986 520190578 848039867 371768709 279727950 918167724 735772139 521239276 164346242 758573569 678300494 699608061 146257025 569753787 692630280 920235949 508457153 636940515 19282003 414237537 645547746 469957402 170169927 928825028 852489775 28844155 420135785 215295753 838689573 405859695 420393854 22272228 98094814 703887933 32698338 351022918 736003585 887930360 710052267 211302612 230299498 294253598 32681908 665759202 98486788 218171135 68694952 210908665 203491171 559951074 563708895 551520672 823916457 648120688 704199490 905501422 593675465 534451124 205903609 951873873 606335063 987261257 852090989 363085991 999997747 87690349 516950857 998075054 502667576 949126654 137233024 915728076 13267099 489865324 312956567 185615953 927298830 625604206 86534567 699805960 759003899 645761857 445805943 158671852 127794119 50411484 453220514 558773655 357200228 244649369 802304902 882555922 644875534 943569082 451350585 566238207 757425244 833440533 636057004 989858894 628371445 237534922 769955059 427219858 400859694 912422844 759376061 690207478 633707462 728646697 664808749 356730757 15561541 893419153 935374943 269858116 47382906 295169040 445474282 569700702 858232636 533275799 773505859 208940257 509007155 815599666 474534064 40727098 166334696 347686684 962135705 717844740 319746350 194148790 731953886 469908308 930014620 406053550 703847328 320702704 530259625 834881529 873648553 801169532 497241354 567562454 532464094 758552605 441351782 385982440 113436539 822034861 482195945 61551936 959060636 323302488 188172534 533658073 511383586 840770678 28407376 565611874 155449280 360161382 922432318 903681643 790694292 27153721 160143271 239411840 974416371 43802444 497340637 739104960 259220992 485973977 373461628 307930837 89694097 236320926 195708975 958078610 88591010 137108742 479797796 806307164 110484377 432171745 254046037 715665299 210747784 334927490 5297965 831292664 484517618 958186237 729922779 82996489 899492417 926453765 423756632 856498997 956881019 694039879 859095134 784072345 147904727 753878776 433047085 400480006 667931130 810660478 937232083 804432275 919201340 158303187 448851699 132567242 334805937 930998383 212110753 123331571 447956858 136784271 640954902 220984444 875315842 162669002 224075294 150030074 765343145 921898391 195208781 529514277 899081401 15289468 672508756 90443162 809832293 600800068 659950832 199853672 756606996 343964599 671399278 552864437 263702413 778412427 742916262 449585747 470184325 320484148 599070049 273040771 575295594 223351229 923933554 640056611 272618564 953845188 368611507 307770786 25059114 636647616 205321145 599865130 995699360 456161608 648700113 895982702 518034749 645207673 248983983 610656024 658675211 588903711 105444185 78832320 967668925 113270280 187908202 176130524 952042449 149035540 204087345 423497349 277409912 368258004 200331938 602989375 243793839 874981635 176682354 254119810 183771380 47665976 604746012 97184585 916036083 298231950 305604103 915149128 847850307 41645801 695059711 479318569 127348481 103055554 622369439 44220635 593153105 598988175 96623828 616357244 61458056 913130575 591923087 243500322 299188191 644172608 70228944 497583159 425855614 728612355 471726161 599266 356848744 551575311 551530353 921889343 64174231 925681692 2112124 423742685 407502773 959734930 760210586 49671064 180237748 61376943 191232427 298407556 431612860 8091292 472133841 116170666 11402828 134999737 665456965 378955825 12115136 425721855 640447924 219601452 150358661 254479376 855122728 719801589 658911715 611093096 895792048 507053702 352015685 835352575 993786349 185757765 203805669 440176685 445186433 963840153 323800905 713681536 554244037 139213477 42296064 939815135 868225490 948994989 237300191 750988333 527861411 913742780 310441811 258120244 995836868 21592748 495417796 363302028 939861112 116343393 434668206 676893992 213682432 118002375 451501986 643126261 484079249 300290123 465257186 808825578 928994887 9260655 255013185 835713105 937733017 969031592 842332657 945326850 645064773 182256371 194527360 860293762 448838715 544980426 542102077 5891904 537239206 259113863 495744743 927814188 59239516 27908040 299666144 634134966 454403932 531904748 344058121 606255831 319882417 528772009 955972094 624794465 205014693 442590727 377855881 906318508 958153216 518792382 802778736 658864537 136973897 607381887 810000706 854293620 303726990 22081444 139141659 295173757 622572231 324239458 896827280 513688671 159661911 264438752 106378242 571802164 253943087 883808503 664412379 10723125 852221046 48028061 106433030 928403630 459341729 199339761 986898105 791489791 783853651 672921235 504304668 286032282 51341077 265664293 628723574 810236342 526226772 151375053 370171681 465413566 477294668 991884291 316419830 84696807 986594115 419122196 299487369 295286876 131488199 168465943 290029266 428199230 176352511 523158376 950392645 352620132 136175347 908733253 933564371 379628377 308458681 301463754 706641404 486003757 533447553 90118494 136554948 23233338 902612549 540836662 762065403 179872375 217228972 58568548 81377799 58193198 554375994 736618816 529060341 983188606 775980873 637231327 962237919 801916875 558950919 215920117 222503591 602533357 505482259 557674950 67306843 273700629 999556580 170077804 29229627 790435228 916265369 197872266 108722254 457304770 145892412 974674268 87882618 816630261 803451770 395874631 30982655 986504127 29699020 266717549 581344905 371132272 629242751 526420599 930578991 680035498 288301117 30773809 903325875 705835218 872552565 817908436 970439843 596913717 961003716 367778173 252982696 42004439 534624238 549256234 368789815 472073262 719875553 153981676 75022397 585368347 775990321 593968620 666288682 937781171 680246795 379818828 83433084 641951128 531526808 221489504 292444979 431119795 572105368 53453100 598784999 282101310 172558498 893823111 443738717 144303405 95528397 375064667 922663497 563826249 644397280 999632329 892167393 601247416 992531463 719107116 302348805 155736158 667125789 751396677 34538118 287855302 412655998 785239218 682468943 423153418 911131221 28095199 621954211 977016257 558785799 44343003 582384349 92536954 581595720 661503045 424837488 891264204 906194052 905490660 756113396 740448427 36112074 121348755 287955804 230154098 347827452 50946101 410824858 439508373 629492573 15081933 423210344 677719941 250460746 163583344 310184438 198846181 831472496 230145477 432927453 699824926 45198971 636954376 241708559 400205869 681939482 628421922 693959233 979485496 961309847 640539690 936516566 522356521 358863736 872185706 998480372 29453569 630846771 339688679 12012875 259763872 756912132 513034024 864510059 981060485 103612624 494429634 335343231 52290411 48065207 442907459 39564403 509981804 916122461 261407454 840195422 162511948 300002113 241946580 322582122 400345071 258972305 223182717 804257684 19564002 49849168 790398177 269649037 302417951 267827162 954140013 343414519 380399176 451194322 706385252 589740783 875303874 433355944 934729232 471210426 826437639 224488670 376028198 38941919 326432025 341892436 351231229 297743206 28689012 193140937 74292316 245656591 370243137 86537224 214090084 241159345 199606514 125005596 221321701 32384029 340748326 958191703 807653617 797548300 818070585 918540402 699184564 993824568 642761112 423633822 287469689 495349153 942764787 192122619 872882454 109166639 773735266 364252712 106987728 875192503 461935729 398661301 990079353 677804757 872121808 915861939 580956525 410619171 166046660 241607260 797859479 896442310 73190131 373971049 330579976 855511840 47832220 61246985 917495686 46755569 501403443 14694062 477457113 943255030 782923404 271421171 478155025 887844719 614614534 731744455 998068363 923176659 984642988 389829936 113829636 170252817 512615121 948581010 427615399 519844777 9735644 469235160 252298719 516053861 485287666 639053975 271909664 579149178 681613589 123072113 342750555 367298920 635130147 360059612 637583455 152276421 724150840 539043861 876202781 635540399 799939475 910696036 961084402 621133174 849829899 793025288 746077194 366195076 451095563 930916931 468583457 664372417 895288876 878266107 580683857 922048499 175296126 586916328 20191873 304687613 175931223 848336682 798346670 76324178 231478553 513189252 475336506 987127329 450919617 502259014 290001471 696555033 708612078 62103258 236250930 937990830 73437354 274910117 472815007 136248537 219792831 567933951 72912588 553948122 583733797 55509409 396790036 904954932 866790608 796565842 330902276 456702783 885347601 965283575 454870241 417091121 547424210 366020498 872004188 754669569 610006560 335008838 240240070 26344847 534846442 15795342 428255283 384643298 185652129 380693944 357165301 916308235 333901193 974077545 980253665 149842001 793524280 649033953 409688260 951059561 492343302 549787332 426241761 410446919 379242131 761574423 789033972 872397226 426691033 98277710 437815270 68353256 636396092 651849157 523527725 453333447 879035771 578183381 993490202 975595369 619972964 146417549 258751894 550159294 43453688 313445308 689623512 96933526 742122311 742905891 911193582 49617603 347621847 83874536 661169650 882783338 945389645 474008939 14449280 828220387 302856251 633239773 648314859 177823294 682059251 261716853 829927809 36924734 732422015 59077703 178441108 741415792 722808451 559673453 306295701 803041128 321818216 13785667 296621248 981460901 49237495 155465246 443440340 686740809 300508146 61112090 817164857 489170410 900236170 382853978 598483996 941459498 417015614 265813800 143189045 790032506 256408748 37135618 98156916 161468577 665997350 867446308 143545352 784657972 801697331 189019131 496235161 460644347 480419857 216181754 592138917 784158716 33633299 729961889 469128152 185266458 472381336 201235280 431264616 877696519 582300631 812859634 972124790 823917969 119179199 409751443 178789453 46284687 576913904 376423250 319285676 531932380 689581497 134471023 772754681 750641813 106730256 84299778 84819705 779079180 732551053 622713171 901853224 590230311 701283984 120506177 635749263 643898150 711905767 495466070 48614207 210245139 875604131 594293196 14773589 454563825 567569773 204964165 400425145 295785114 812845273 128387633 316539132 531026366 943122313 434006126 821490675 255421048 663134816 846172013 617924581 357471406 138305643 492837665 558249085 210986113 820828632 727149443 103894954 621707081 692583713 442429436 535699837 31977275 842450072 567037364 728379518 388163666 24131799 449482449 699832826 635371377 72391162 710917609 418199736 307986342 201028831 297592725 890148072 551825046 649319707 202518278 640966103 21878143 212655757 682320964 151426156 488780524 846205956 721649089 871083570 842298705 860179104 450392325 506682115 144707778 933350558 550305866 98867735 723783825 930273108 733789867 396930862 923763722 38138921 278689687 656300191 575406758 279689845 216843228 698271930 630648878 775888915 38963378 861040098 181077428 30504301 829721095 425899923 495513612 65244789 232728795 48083887 436689781 752804430 41508408 511534434 527367229 598348239 899974338 676785742 148602852 938845207 845611683 954020343 326659696 716955797 339635819 581446708 310928304 158943787 937984452 965371036 556771279 942034780 920356023 64535485 299552881 585413944 566872927 250796368 393622675 673310488 751550543 83021859 389373064 109618714 318252464 30357099 210655430 37397336 459726404 304259609 518876356 657587125 981692833 229635248 912324128 119258729 206247591 200765330 735410439 787902646 321609047 291431747 827948841 708618282 861601695 883345051 50897974 734459843 622230373 868784179 306207788 154971999 402693590 220830109 30365587 892201086 78223894 750216951 982315676 629612183 755955471 954527085 570763159 665081545 805780128 964745588 45283959 353498722 989237400 952111332 623545953 167877884 39160076 413977282 731074713 194905737 210006542 471144832 207698578 985027441 508018561 795338344 128175789 310001551 926329801 552682060 309815115 962186086 833390948 519395712 94622273 55247587 193946499 967805973 631496846 628619677 855440627 857388525 547833541 974736741 228183278 140209745 639577758 710729949 288980236 515533636 220954128 995549643 942832960 150800250 274660795 594752356 174278729 132811440 891677656 356790457 197148145 709780065 747657735 577524351 833490976 763981501 808157707 54270766 558720757 295822693 652710539 948970671 585257560 868417259 309895979 41095024 840003477 85982395 785440975 984595714 638735277 510800929 169912672 527159660 392453398 836491312 709053092 216088344 801736808 310911059 343116209 11398944 301790372 605929761 665455717 549739551 397416543 666138051 551475210 135710754 855493955 993291956 270759100 428432853 394580052 696854280 816966343 987543991 755401045 676602731 97941386 929520736 743004766 418983111 625711919 666982612 763083884 916932037 669080248 333808316 336847138 338160160 887892347 336240405 100112747 645538149 162994905 121177416 681795456 299135948 901310311 997129086 327337884 911919020 42186019 865188860 872149150 875921488 358957663 884909448 828577674 588951121 325028872 920036953 787247625 875578990 105933037 867532520 372036929 386370898 652593588 803313558 333639862 476804649 246302150 784097534 867069449 756960730 33853655 96224495 839596079 531800582 912448523 858019068 755577828 847489380 354104972 9749625 872335362 600432443 403551024 603722952 329629117 818793606 238121443 759882664 845983168 457218673 940383400 850756604 472889621 123531772 425566234 232218142 863066443 73441265 537703569 294111606 836600263 983450949 527218387 515750558 586701858 317933102 834665358 264037360 468895724 357155447 412742330 635423551 60946625 1828608 259055091 859848679 17558181 684294081 327894578 505368694 178387819 305581916 44230260 708812965 279897238 610084319 715214270 135298504 117906003 481149916 165346382 861975495 453987456 766139824 105040947 96877657 883629490 883332662 561860471 917771468 700799472 782806775 85020144 708118748 699449440 285757595 967769829 334367684 900760060 722783694 337660215 313247410 295218087 803292815 578984338 595803332 1565164 373154823 169954357 161565742 134934700 445675138 803305979 323507250 377146978 181190348 72630642 980401647 432647074 363668330 507329002 239028115 88116429 470569751 82973454 594950438 103433023 49722567 903969002 710953555 721837506 125135962 946622881 840673819 955863070 947092949 613677355 837550255 322867528 174255938 656858187 505696964 9712966 987528725 439995440 875703852 9592905 330241043 60447561 889274 867600456 885033049 489793054 902288808 488674273 940057052 322237677 265097220 189893156 768039516 216819667 145636692 724062087 552727109 322313532 871839993 492969520 725336436 138767091 106465303 99206255 762144236 798989040 757393066 820540520 638052876 200990855 115920146 651003007 971142540 122619158 380836269 850874873 544161549 984757056 318171916 62958645 61715218 262224039 407878044 223189164 730111914 273816830 593000717 702214006 820169911 974952132 631666763 985329435 454088908 460514180 235886572 734942328 378210606 243795026 494107615 31567387 87348407 716413647 416488890 747858801 820971875 397140150 322132 186244165 744838272 355571261 138188879 293045085 980862682 960747197 660341013 885163053 557569545 715648180 666211045 184963448 932808263 784083294 907671762 462499165 623654729 507508790 87899312 792211669 993267960 122347760 885791565 914723355 302174587 432107654 817831325 390223543 529597821 962926683 246846990 300126738 137213572 545354634 836153787 50710133 379080452 40847919 648734215 286475576 923928243 456295564 618998212 466345751 225396324 806484877 278832631 405810162 49005402 910353953 810127126 601640667 17331742 311396543 136301963 150103887 580286894 61716337 317416884 253325447 638895442 924587454 622045071 727903634 124156191 432697115 772811404 557844544 699522181 854505442 15085220 181255886 552094165 203836181 771382298 612327278 935368965 118799768 967513101 365590601 150584663 458935895 492696555 186211762 940202351 564384103 717115671 906327246 841174617 662920586 569723253 986224472 876730267 628220893 750010023 494364712 714100080 280451748 736831163 994153840 207044689 155754867 2508352 306651061 82982118 962186961 27798376 606757313 929584346 941557769 767446747 533330576 994060722 646340160 625762795 775742034 371345877 24608158 665750467 918658434 774327231 322678041 482997821 448056979 469295068 207450553 478916953 709748660 13313317 940857591 432043507 224153181 111087002 39771641 899409192 105317731 494121842 167142276 586000226 493152041 675698687 345053981 96493621 343799702 457497121 751181737 361911204 68037392 601943788 343658288 637069546 879581395 297087093 66562739 176353741 706958801 77067771 474109669 578976294 624588601 374914330 845917067 601108345 824766297 34309681 433428675 821606980 246192287 719863775 267577242 321606801 441536038 135008618 260156202 496079215 504058649 358853585 525667872 156120768 108526219 267342667 930112740 662279385 157972839 988485449 653150007 552187963 413130300 476783023 47200693 790746575 435655074 397919933 713041753 397244742 156549370 436014367 78674780 257889319 603518934 94384074 272996623 84986174 242694251 885821563 753186228 477917088 438418103 541677709 54687836 678226206 683643746 998620039 797836844 539775627 667571286 606150556 999243340 495481747 698399359 861826352 774118343 24214259 433563073 133316990 921868107 568956692 919337353 813917541 843549483 788282167 785886390 513307428 836654021 867697908 583184059 265668965 720759748 53218753 173768084 130976867 322252087 958173887 20473622 71047942 207154621 343529433 477010490 950853650 15031383 479196448 356619722 370936247 291221407 612623235 59241062 425698407 71788641 636152765 506332774 871966354 440967123 411660594 90073436 17893893 411361425 949236304 71508076 652099145 438654710 143118637 141002778 972495621 784637768 906889926 715169837 616195419 418624403 214445697 961185087 235484342 377335435 729457665 813553658 147873068 285730680 926311003 892461210 148393211 230278573 629266969 570529826 83465877 505400666 50943767 299741995 214859966 9580509 736751878 955507828 100182406 761373143 469785259 425877640 832630004 620376410 612630500 961569897 837537626 488525189 1763526 978656067 134564423 484041009 523618114 529034455 748497188 97082899 775539628 244991443 985636111 418344634 812656529 214136271 851676539 43316671 297286271 403674515 644312090 43636438 151762980 285070888 468868981 402393850 701585740 644391535 420993033 520320318 33492494 107894358 802572922 894444960 920757691 124192013 151034747 454242606 72161447 474271921 598856218 834994864 552468399 923642648 475364401 142466349 959839501 407602182 178938990 773708499 306204200 672208655 983443380 940614875 287329673 366626509 80195098 70004575 776179287 346218658 35816492 315521303 789571604 702871986 500221789 483236125 851823903 317251703 81624605 714481946 489046535 417791881 129157585 679083190 983957203 48603633 832746492 627397554 750698169 578729836 853863677 186030234 829696616 379346684 704025790 845596087 2875784 354008012 48095199 549154433 143840690 849018671 93925272 297202349 698513698 205292780 797056475 557962498 210608657 395226850 752696760 761161847 45528338 152283958 377474962 228375725 97167687 879329955 422609206 569265463 336835652 598237646 561816362 897857665 368158325 725136264 535663726 887785098 477418029 572936383 206385528 561721961 709771292 715278914 240011122 915637736 533886375 808810025 724166254 241164642 916818986 300318472 274426513 841513525 577243215 200149649 546858335 973196353 808675403 183350344 745580760 877318049 95291047 376753529 392733770 59447198 380344144 850445253 81932226 756908950 185813694 268882750 806361176 76428925 596962374 259387482 124380507 906796214 805510795 756757082 427627756 524300611 138557638 806806085 592243192 692948199 570693401 778641666 518241912 783236516 418234576 283526121 857515278 107835337 281550980 390261719 109653003 985817461 54367327 963810556 592945923 680470839 726750341 817146702 586378928 654646726 370047926 183319887 639131005 632738595 242953294 460228277 61812122 699666016 812258328 540048512 381665494 680025528 945958348 798253631 241700242 859441495 262755025 755773052 679310011 295051838 173671348 410604536 603201254 185413245 724035479 436887260 401419300 73118319 512837273 933353287 12110292 555530194 914737298 959481433 266974562 892502847 302967160 613409358 515931507 250307829 233538120 966979926 47739381 782701801 143929192 217896552 239991378 221366478 87808303 858748145 381843547 28425242 635233332 898692508 338289065 282858861 843966382 757710844 155380549 829971626 839366016 198243524 734476217 255806575 595146921 991194462 651718823 554955190 390424339 94404146 19146512 677869771 346538534 929854240 670978996 122217160 872729196 672519915 789096496 821770205 905609970 468469102 262385732 809442293 351973381 633535255 138368650 383652403 951898166 472174228 273086367 595720730 441367339 391530635 537820016 786966804 791689472 904965592 491367624 647877664 555004716 573136694 528958749 848602091 889389974 736078447 762459112 701913301 650263664 640817908 653850096 470625320 125647668 742801273 224953790 169511011 61240512 957221425 210641620 285237046 872602660 696765523 736210975 463309332 778690856 238483594 864514427 312039825 339097146 554483769 192225243 747780608 552127634 993258678 629127807 368143623 914161377 469328445 327384812 748309101 749807135 420742534 508218049 283573918 645071646 696813105 725157804 658026512 148911753 287525939 127275250 590357713 195513626 192141088 59990940 352354467 352516172 164023119 79579276 635140319 154454570 82302622 732969342 239011152 941523741 55816565 884346929 489474668 746173031 589563416 279222712 836496747 159128612 309741286 166671836 288758389 961377788 814630538 553439505 421391629 156480585 828533644 910552740 588028620 33699738 608881014 635818234 677189738 996208434 513806114 352323019 919112571 737843144 227997631 934172740 837755851 237384740 608285682 591075486 1926276 758996496 10069692 692095180 534455931 744403173 453493843 723934693 548049819 878268347 220462153 551439041 394783544 512470564 343734665 406691726 179607217 106584354 845151379 101219002 966817231 381526033 275963993 672705927 393339724 142927783 874211648 430113335 27055961 295217515 120095727 987331429 524314039 303954715 865147138 943113831 217622921 426960951 490715845 800396097 42754432 632121209 590871437 560569863 212011040 87876198 769685533 659801278 112604052 854948332 543449831 690793391 807276217 254672549 474979761 575223184 896404814 484642804 257581092 43051488 161283949 979518541 119627483 779393943 991668837 850958067 576556092 504516562 522420916 2469255 249201515 47619369 203709983 197234110 580335051 132980511 903916520 172018472 544508007 189957650 172047849 474834567 238881945 800655992 251104064 734721163 437292021 406334201 84395784 101417020 946090388 538940265 372141604 934401823 582527514 602834994 178677533 507858054 880512778 978834333 16571736 533067921 149270236 550563082 11260336 583609719 998625742 716343916 864383351 155579708 357439544 649930320 289265081 457857162 144765137 739452993 602324648 25942015 726187536 909392957 191278467 19713259 427246810 13066728 345619630 638275894 648879012 301369731 370280573 734258524 558190868 930839142 466718602 900026199 258062393 873852780 281279742 792253365 884424993 490034876 79538057 83675739 965134356 507454229 74845079 995348568 242217826 353725060 911403416 670749411 339409418 758676010 173643189 619058634 382829943 444567372 241542927 882138160 432389914 867811597 71511087 264059149 570080223 548736815 17271930 843846812 10221505 392583180 958619886 366783430 691928108 497769684 735111691 772475219 472577326 860422712 703766504 52399245 963133840 488493013 675257079 535746314 517602390 985813678 257745266 57725931 576299896 656393136 831554655 363742906 913797954 958704287 209765031 660027175 738933842 894547012 303096049 472448138 878013796 813945468 217708523 818891736 689726635 905649671 679274912 712223398 203929162 883466990 304187749 394897256 522282110 609473891 869482992 515615639 256576690 397138793 889802095 565058135 571059714 111990939 608274480 628631807 973018719 850158562 688536617 721189472 448905919 115612052 457588469 982816559 537742684 494112205 402147304 900755045 671227771 78898980 506589300 117838762 339471908 246127778 801682359 979682220 365195932 438925001 452601674 833013 818817666 673147876 843070510 545880241 634259436 463384886 825300765 647198475 332973745 824752673 581128084 873464827 225986328 553011809 432438883 311251589 116519111 754395647 310249663 760638766 399968484 571344911 875057239 254654955 338545495 385589825 57765019 103546837 913637794 826695073 633920186 762185466 635889117 228630652 759178012 141613554 387756213 603026223 802415792 369352350 757180100 787896551 598527920 292176703 125422861 438855083 574114550 211733960 658604999 744337085 362393765 890580648 553511539 182025347 691559669 558791339 459281823 689184183 354663952 2909497 828849510 287929081 811673599 498453710 117353173 672618575 433929656 529101885 785537341 288183044 810881587 940630304 487140036 87073138 535104298 589350109 980142732 773232999 931360118 678323154 113051496 394607293 828748900 249595088 44342704 867440916 288149306 180571338 452129587 585744020 234643648 491919489 261955640 451548583 989745391 782016727 874556710 701148111 316213723 557322151 752760574 338352622 506131488 383379768 861549225 763070475 954239194 286437299 134290602 223438284 501355697 88561478 871853641 517700605 182806822 294672452 652466425 741247910 536876806 307099419 602995189 580717938 299397099 79726600 939139405 228241112 495441027 26445191 688035464 370188224 325173902 932294725 264366183 489379504 409012580 544416643 490721806 656349837 19568565 385608008 311745713 424788434 739938756 94462775 773073941 157398410 630688139 683423526 462423360 135460686 284349805 103527458 839148216 666132672 304629329 543144765 433881297 553236255 283011202 131906701 124839654 55916367 990138754 560360524 883531715 719343599 917455474 509081248 42346214 901262278 830939377 764229123 37564443 217942177 322476913 236226338 804362042 497729322 762616555 6049409 463094240 250395715 801695621 582324593 482955110 33175052 429879119 339783052 234686003 797457770 400538128 236013187 374882746 17528507 703706921 669884102 442885157 162256089 204140409 936896716 810813442 412966861 777121350 702358516 863986585 553303677 609881883 580114621 925490430 743327083 762274449 687605719 806503433 286281277 922908500 299048906 950146637 254168302 325860771 640493422 656712775 636810679 236772651 629160118 310127942 812948374 298560060 272203203 421251164 910101600 579203796 179836449 235276618 518502300 754805140 982444532 547461615 603249107 554126883 86362520 61231004 678402214 582730338 316797453 427557814 429649859 235472839 437348759 88118182 213189323 134701970 831807005 424989637 655361073 876374494 17851183 656698663 768254865 671052628 872931896 306996524 324599645 582154574 13871114 620649410 45256297 584263848 339401038 421195778 26278436 119719519 144032918 890803318 932211665 572610500 395604209 544318792 133952270 443748148 149484951 14389914 915347979 110704036 473735567 110191809 48927595 36076804 422232616 229744491 820027699 211008529 128787251 533373170 413689594 442783567 604381361 591430740 21423359 458843166 582136700 465836472 710825944 937167043 24633153 396467590 247902061 876776441 380241036 949081877 803301152 666595029 274795021 919459622 239322681 252484307 970625332 891607149 547847967 915778521 58693278 575936086 687408831 593509227 845815791 828155245 388222187 7806516 97971800 961274003 78027998 64457038 318212314 549862867 207567512 342937185 403639284 15253245 516061003 100187968 551524140 207902757 475901142 636136529 940861811 659794508 528633839 589556229 334237844 881047398 220042048 318590689 773215479 318388787 771919911 61328759 161332781 694805814 559485872 326271576 319321644 432118493 474788661 953441663 213456015 83079597 748596577 841389046 451266073 63258995 340330152 908156409 42733388 711690026 304868212 166065954 605985320 652571880 649708166 560162511 445705716 53723731 748808654 746527938 993647426 529314868 338389911 513903087 512771512 87863664 222542010 882311146 665681236 285699359 186798997 335899760 459308691 710405264 236248443 377613615 659777853 480296040 324399721 882884885 865346897 932429792 893853850 893385755 287979096 28904299 421775914 180220022 474632337 462554266 177826424 293105603 900779651 18388473 214744436 299375785 565487219 275839751 516339616 528547613 731302630 279023445 242414506 38553179 12026887 750208883 479989772 846861783 771223062 100251475 343547708 169085237 533615482 721285661 878414681 543854099 682487527 359404590 81743389 21105629 382054484 792655038 970890987 339278294 153435808 853454911 872135903 197951684 807120543 557659157 714117561 303353230 11394252 878292963 783816457 190160970 374319005 863650704 741369661 446443021 935986180 2696871 8310558 280020930 815481527 265186387 95794587 566562488 278973302 407593990 98860999 895346331 766465219 170220510 959392562 188333074 83636373 114907095 885321755 937119586 239156163 523572136 23172371 663836438 988842059 929531234 392022062 910395853 799964303 597613818 458762850 32094451 866768147 801561461 640502478 98914050 582645001 648067588 290520215 351296248 833161907 455841496 409774638 685518405 494973059 989736463 724758190 882526561 993310684 107067031 322972926 253713566 433353135 339178432 426848644 19562194 804890360 894248637 390593664 231493694 522817210 749075457 863308527 93236938 350399238 401085292 481169311 389381214 889335875 947860198 663293318 397710269 317093846 331255838 996592617 693035523 470495708 228268045 704228924 200076749 399759148 813912110 271359690 746764995 935546448 364056316 234404997 637634899 184098161 955079382 111514320 445011895 122456619 271304128 811106315 331795941 478054892 501969806 84579970 25438006 27240316 88220520 153183273 199930794 183886026 884476621 515787864 807865843 343741939 130241636 175458561 125618997 412321355 108245831 885675193 2707541 792422215 386267314 218027938 938370473 447669993 63658373 959139736 974173378 846492015 596824199 765042611 43403092 914842291 423302878 627090261 799791941 844280752 855923504 109342057 212596920 25803305 773872171 4512935 162937532 701952881 358937638 946840095 259439335 585869105 444858406 380899123 319265362 989831983 337155002 588451738 991451331 349581465 457858516 356858608 504749003 885911915 409361144 585381176 505119220 756533729 631217283 535926670 509056971 995640034 952015190 788856011 337091837 438846268 305227090 337514241 541019174 866546531 814572617 185480758 811226031 275856924 595629309 944452506 695742016 282712397 374958797 414079725 867600363 864780786 596308177 588709698 76872485 250653338 564871400 178048422 711232654 700777366 789172148 731750330 586464401 208684976 592847020 152288364 937550970 212535671 564607321 707540755 732511738 58563420 16778891 465178167 41658590 44574938 526372883 569722272 920874603 189180882 858647055 430820946 264335660 465117917 128021061 519614684 886820577 901499753 624117221 697409211 656099526 473413774 687472250 552094479 661650888 718650362 218188219 739358570 481512689 355606684 954889322 8107265 91117979 623649576 814933424 998984993 61858508 605667688 809581701 486648897 913114694 195889642 764069099 227924985 944186635 998994992 581026126 714125370 825055043 641508743 208236962 730760332 639404086 680355695 619021126 80728458 409858790 343272877 558728354 603088889 347959138 433167623 71914977 765743493 735593580 19542226 364128541 989446579 481376475 921520416 195912924 761865695 803433675 8835094 678759128 771212776 421292771 141987394 131798337 435341406 895954417 305297594 558260394 290306815 467570206 856041539 870366581 222565455 252400837 281652245 329256853 100554979 961584420 38788556 911190652 581192193 121692868 16490691 854734113 363265652 801879731 825550441 486228602 736126317 197806148 998787565 350214341 256339186 291157586 604637935 557363444 782478885 95682512 166322600 137406237 901430571 4267163 265100170 452737569 612589381 228244724 334646399 992074639 496720452 230032320 914784479 91362710 759317662 19773196 621902705 177709995 976327691 886057683 293606025 24214899 935596338 272708200 489410199 27243074 711505159 719808838 876952672 290540826 338208085 208851373 56318979 837343868 652448786 895744113 437362664 311060769 680092575 962948775 829702262 87530051 420923062 247550901 88671653 316300478 534209539 655353545 535029225 403208742 531013904 222236720 429711495 825493144 542464644 569936283 716383087 535666585 14301899 647185211 517788172 235265560 946699553 94598766 984223265 662794746 447346928 610126333 941245215 393692081 357593033 294056072 371800441 142759520 137774519 656360339 856836980 13810169 941784357 253624571 509770803 502841436 127590495 145298431 999622851 994262220 105116202 513460476 967470925 549924949 343394069 998540027 500247312 417355699 597564013 376553116 777172532 132845325 530290650 893020546 505131626 458717023 265222782 23875488 342193477 858437628 634406468 248914077 802681381 534458496 586704046 959697110 102070072 843309301 600636766 340021278 147557521 172775474 353305894 730900752 867032876 302539270 340987449 876028041 814773541 480385736 35859696 653075938 214342676 15834672 544119644 910002572 369497739 398781093 786158593 982973194 296210396 829982308 434382938 745576313 442795348 949922426 93455888 55301734 753571818 666159719 300618063 396813464 691782350 242411971 791237149 82259344 795858845 826798522 381396374 274497999 418181916 724304079 724322490 646831357 722521786 529677055 812349266 153603189 29094330 999262652 809534628 327108063 430950664 753321457 238753599 368543461 512836089 525907922 812094371 615800062 509495036 616941024 813133323 683500547 771443456 36306579 723712887 196999015 428707754 574648603 241123583 940698794 828518069 388780464 723675757 308679283 464652640 438612369 337553017 344018213 396658908 409818975 980426690 458754752 897816986 236604818 121823272 338000867 313984253 854375385 652944691 161918065 600981638 938055635 259250469 115499325 594842350 620689174 239420736 240040420 857607385 223844848 180173272 349633954 34835109 156335180 85649608 280505583 437675425 572140930 349014444 122617880 102498921 897187322 506632567 316924926 141946558 528370233 233052333 795333791 687088523 638551664 33374589 61095914 591655470 370634755 980666676 825792464 829348825 884547357 803085165 180805668 11283529 987628300 5212949 369080727 196311992 8750886 970056269 456198105 825902986 356757520 83031300 271453999 868539398 515527397 980022704 710718940 352780320 24325916 878502004 824800681 790147507 705601317 502897865 288063826 515931004 697762616 69584276 294327863 445505965 44962487 860784334 360458143 404494542 828107227 540983216 215858550 167343512 251103169 894476947 412487332 589033835 173548719 158504487 785967249 644158226 362775537 782782799 498611726 904842439 855967340 415138309 821266366 226117575 997868776 870886882 64078378 967812547 132040449 878963411 372532919 195254436 258781188 932405557 358892274 678133525 485515624 652837583 267737173 651076407 322860116 830143390 105037900 62543653 415362794 821187256 175273642 462286658 737185623 277043473 440973991 28614922 515042632 886602632 494172655 724743694 999418190 744649274 452098799 822995495 878047937 86126737 303457920 901666284 366053159 413931631 866434100 626446747 702555364 818400465 313859566 698060994 363066535 332507608 375588127 416386964 431323435 780811847 145648467 358809470 301035286 624343831 110667626 209829426 155097165 202820373 817232583 328648850 7116066 319088427 514288999 732546449 277002314 716540198 981953736 987942173 614239471 771951652 179101031 71553653 846830819 924758142 425084722 315016607 919961315 452653017 637621170 8023650 436092202 199455667 867756514 599882570 768273335 649327581 175472674 265529695 759146150 105504074 926785185 466899412 862216856 277407828 315438944 677627246 179705832 731198029 677056005 431810600 493672205 763214249 30293335 112064060 213104896 768356865 226218964 254271616 586003509 116754834 167830689 659362597 553997999 503485781 106914290 34018615 494950235 886640804 592441986 254714149 525980479 262334977 797991761 560639905 872111261 503827657 680100534 140627645 463971231 549868859 108454179 282250508 316640304 643957825 750399310 628449858 773194735 106803821 392949777 592872454 256711371 819605421 663543721 333374388 4958495 913435438 613935953 455878419 261165427 562805458 243318889 291404074 391082869 842647726 581238006 234592597 146861733 632112041 107699291 81769256 500113996 518057805 510756905 484413955 547296925 5383741 68143588 678753689 425971390 729886910 205845445 858598379 781401961 981054222 226030964 144218638 621462476 819666830 636567497 43172058 495773301 796966660 865138510 494562898 450968951 199882375 814371227 167064638 627997168 157184077 115814359 995719777 870699607 524173173 465033328 37897235 480252588 486063173 823440546 600761368 366727749 369265371 533338990 202304075 329787381 589527044 161440020 675907956 64652909 908725756 629381622 608831116 663358133 49987512 308158187 998098426 284852563 215731516 483517161 405467848 817305581 715588896 817414601 945853584 108092737 275243806 335691949 326402455 151336840 471633242 113784327 375038757 307315749 514183578 397023792 278620246 187903482 872940660 282022703 339379052 387265245 148010239 971969845 530065513 17795481 630912893 445872423 530380779 858550919 893294754 881239285 703712596 484269100 490076563 552740926 830888337 308116658 852318755 883399350 178047609 151403315 2859440 951891687 799549112 251182628 357423065 81730931 96166702 442710689 167473793 171048594 999177297 927226350 723851760 165823432 353664899 666567524 729243018 916038589 965903607 421812237 211988819 128416545 98677500 289669873 888323075 413383907 5347737 51878445 780234667 234889438 422745858 425449047 630656799 617414015 651623674 452278465 970845951 704166089 638811148 752580312 769885476 768122484 24768887 746719951 226151957 230626445 55001648 780342574 992280176 762420652 892364217 926951785 995608821 892936548 539265577 805746905 266790937 440135184 562511112 260846934 47393759 108156086 96769867 693025734 104886710 821792724 614497157 311611573 224344452 247645849 909575869 419286018 378017327 495670202 485352931 608400131 1070223 439140210 803604665 797456299 220355723 505139574 887727463 249991499 219073112 5505304 991636463 439996370 64775496 225749539 551313958 771257757 781161647 347997954 832535929 858623972 252818161 284872121 764220234 996685659 54660403 234566708 933946508 490970673 380416005 140510232 237275162 334324774 299044529 273981543 437760659 541966443 670131149 324080327 120998047 884360336 588389400 534219842 87169996 387414930 391686157 40061676 992613814 879721722 123421797 371178193 358005522 961369467 999198546 204788064 308538166 958229134 856397465 77690669 460600443 395795904 731953772 287477067 146935715 925280606 459078232 628669351 988348764 904917847 981270989 653775532 418155608 546646935 556172641 648699298 511267329 681070255 718756383 363203877 276696859 107434662 462825949 466207785 588767659 396244503 797963461 719136637 479521225 707667240 471931011 174553883 653041293 53918868 66517229 216006077 910109585 450873973 529654428 631772097 963873069 739227997 219963384 831943600 816815551 919452148 471196337 697318489 151424589 5284068 485405780 275831852 560105565 533394610 663077691 129319227 556075816 908260320 490805013 628532974 805272238 55351555 43019149 884618392 665904923 352370808 384803543 374921347 695289423 405566803 705191437 756598900 12029518 705116092 869204914 405264659 87690869 237493421 438950547 506134627 444280027 985160719 40960321 728805662 628750138 635290480 937803914 946788320 536386402 64447434 168840946 609165601 307153180 501780521 695780040 969734199 780806475 683260087 73630325 800984532 17346773 856045112 14212048 182545474 767553999 677708420 589039335 751989058 714639855 92541019 620762494 711255742 238178125 846075006 872301317 437414397 693124079 476089691 995593338 20885245 639764269 35965614 818602478 556236342 621832951 434117023 1368854 725647690 116006232 6800805 65068731 707882975 182175336 296299181 166671017 980994427 202868189 742008472 303058107 952843407 292356738 467466820 920335532 686046037 98512656 727166790 960595842 937856499 598038581 860809883 626952964 802202283 7812987 774470493 150947190 518021861 688577968 866895520 137915647 749516210 227626577 371581168 962819367 990382025 167760299 244951633 941487675 584833735 314271900 808237682 637159671 571207251 407343730 951644762 156613957 77256939 529945437 664729993 167431610 910875195 284396672 375285087 313144622 926950858 949218776 50758835 866511379 117150078 987900631 429913250 112780014 274033023 62686137 858516945 200830728 746797871 4651664 667232952 963470886 397721283 173971768 375437505 6767446 328429610 534748814 699194295 172704083 206905564 259086034 124723911 986989873 933615729 984233971 155995815 428144997 628785471 112383201 249566614 704341387 178678904 351349181 323816900 647335947 714650004 252557025 317063348 194137301 162353378 435149548 893226557 994616415 662217448 218929878 154968011 795744122 328813302 451028894 824620210 956337919 684452723 337205648 4243609 958179905 571353384 11009351 137842416 220740898 851903144 409297330 392219672 167920871 732476225 153720459 159788924 141519193 397325602 385330414 999248538 396431381 871779255 174635635 564757596 724967917 199226093 613800667 536534 302477430 898804138 785189435 62079598 596521226 639405285 384767130 965043564 612297653 88588792 334115379 701231679 393944538 194274081 548546227 191455070 483944323 917505015 798263208 455778218 801196941 268724256 30076179 66923562 623889156 673676265 326794433 385402701 460370865 485340517 173367260 21960003 15093511 261038895 413754374 254816811 207507690 567929515 63423378 682630811 947117979 131998682 598200671 562631756 285645075 627190844 150029179 75900841 140759353 180280189 754256677 977175620 338825254 41681122 772382066 273385547 921991331 411435170 718652311 106707228 201124035 987828338 61333047 916738547 180692850 992447752 847596159 743254892 425614925 278989783 107648884 723211282 550261081 760059120 517070582 910482812 864638766 396937241 333742237 913020527 948033667 877609373 479373836 386839813 142985572 542723959 689094173 847967118 634211996 160032267 480984191 783034909 121145156 575507750 144118822 581743562 467608311 639032953 713189648 711536690 615992130 379030645 42053681 757239891 388879305 42058796 437673463 528599345 736979114 714517789 562776892 791489566 688367495 51650345 586691814 797989647 988353974 562193183 967992921 120004805 912527239 616616114 133691283 951642171 439526591 279083588 544761904 4269147 123470834 241999807 955613603 173584389 589837340 310717720 409887573 278700193 936331336 972575118 137116856 556939952 491976975 356836174 898623856 643570567 800358942 113805770 265145696 240714169 621484750 573991992 974134976 132184638 534478856 906045161 276611435 174669058 953084659 254944135 913702473 826506899 618407495 446067299 794887745 545620740 818986014 697983288 197942436 89074766 306902729 142099966 662263562 890497798 628211504 251701603 365697310 564571552 299546800 164200917 319207568 155169211 210636381 256447875 427746255 61145793 594936557 726372058 970452530 784339687 174839641 662407938 99155034 473826879 667829725 562234980 163628256 979811318 95876539 954468327 482851664 480038541 726200565 341966901 819855107 458796373 210625608 73478982 863066572 585234055 749764445 668542910 922250755 963963591 580176549 565279901 457612984 856306678 612608694 993887601 503258395 922150426 646458454 287161910 549274770 210285898 344542351 779859840 90660847 470300104 609038783 428657504 164778441 466462397 293206550 915051645 72872853 341172533 911286159 710074638 642368738 857149211 309184904 344603481 938013220 370528440 784694587 446929483 674727310 44103868 303719078 738356119 543015646 105321733 972507832 584031851 478053791 172303576 92702072 870214076 111207980 904367808 982440292 697040582 380630841 129714478 553289528 773812996 526649570 460278087 218796576 739405558 316789210 81977667 299573040 664052030 665663007 505972936 732280362 89628553 425159538 761880878 390751652 506007420 396642446 519511844 721585317 332148707 166577927 695968758 112058146 784460348 869736195 702440624 265671067 944396625 162385316 942888326 437169830 954276225 774988902 526023862 707698686 622420069 305523561 669205971 183521894 281942106 836822267 236723791 606462822 954591688 121066296 166339397 103876551 145006023 749479599 115153225 803724029 842612007 706009039 657687337 609904042 532496032 395580510 579146883 77876961 241095099 915934673 526177546 794906443 108148112 561494970 989040433 384713987 318715008 542869544 75061162 784812022 10428601 890116727 809216020 563522483 83879440 895469540 587190816 529219860 876052223 594440634 628198531 635387725 146315016 247591074 795432424 519736110 450951501 831318537 829283915 124162956 448989883 813160261 710323489 30273294 316769707 819779271 610441983 484453322 447944094 236746801 523220673 565129336 845919088 936358161 594092171 21627442 845314076 400539205 795930495 581508559 134403886 189082140 647824690 22502627 571915548 248822356 583355062 929280201 836321222 120829323 252153932 515028172 4191383 466587242 232708165 647805740 598383428 730937425 964306869 724599024 297786577 113516917 32590846 185830459 524611394 725952071 531614227 659357940 824361711 584631817 948538337 850748222 203289736 820175940 608259681 951312042 188819539 546995401 413820670 217268163 875222333 65371730 177671524 852874054 187132434 273486105 120935199 315398690 943527757 343055598 692183293 694421454 376699544 775497290 755539559 673014715 497054854 106390744 671263401 682939795 806367651 227654149 311833877 586129219 302750257 979136058 822402259 23471547 983217937 836898808 988486241 438424340 475719403 150683159 577876703 371710411 183553483 196170355 713349393 407266549 636172415 840002853 630934986 259903348 446349573 42155371 129382622 920526057 20627786 575347325 195018885 31883961 661698655 283457690 519926191 809690634 415734171 623300053 389703884 268658425 783895506 963214140 383564366 866835970 920603364 582824776 258972919 75947171 47431016 802987887 98052417 160731159 137240761 951057585 604821026 349181313 198507063 730461072 926808486 297070054 825074417 956215970 413518128 912407083 902251304 543300196 200448515 586459497 918164808 976190632 144977002 270971457 282097448 667509806 555543694 316018845 951889709 835501362 712358753 785316384 546217112 561123591 704149364 277924520 947220878 847851452 505613770 434626780 31995754 969064556 773188581 181699555 172906222 831738164 930673259 561539 21202448 84531039 186227951 985836474 930161384 947627295 125816436 44691669 877581604 169359558 454875930 607957692 469159451 337958846 520365528 13198446 982039157 181154144 262092068 528664277 783885554 148652333 186996042 907211724 620277829 240682295 46611026 540692644 962253215 575523661 639078008 574884905 908458989 796739074 103741193 876847256 307595731 935919248 874091475 892843004 539550286 303955939 984437868 576786390 665091802 82372705 968792242 987932965 939654294 481801725 777951959 220341546 909724531 923624506 246307 886826705 858555602 187252370 210182295 29325360 98168309 29781280 914370460 809128517 353005996 914582311 12591472 800767251 818292153 399607607 376495218 598112336 335950253 650601808 680102339 865271913 898053958 643696010 385171205 910485494 212611546 854800095 567045479 133382541 351422664 141146500 687721981 650692006 117445799 945080794 193481795 140709931 366068278 603139608 235119593 418029879 984171582 950071750 965001706 82253712 342314440 687517326 211804364 503888642 750401251 110089722 399979826 811952450 239655229 129624585 258910532 935627213 983106216 918281806 306187126 527431082 476385467 901114798 158960831 578020168 619683650 615306099 681864135 884941387 463288919 299365695 223633496 203768440 895116592 346694815 164045008 221460385 248289102 962690180 358579374 357374772 863621458 756620918 371063175 218831841 448423808 656045445 560816234 286226111 128327184 234198174 456661090 506081225 412365466 719064551 768382887 352450257 91607467 267033437 951469804 19238902 981708325 811523927 601214034 620344714 718588221 733541900 214715881 644795241 846471862 948981300 888849816 523183854 799306643 700311298 255151113 784746199 649029861 699933879 868935963 151823877 466375819 911247940 36090290 377379724 51303500 28163953 732631455 695641169 348811706 35005427 378669117 486270696 505248247 954474970 446804856 982592332 15591346 635300908 778569474 480625209 143619468 911355472 85789645 520270136 904862387 955580500 525178997 110113047 909582667 745074644 882038878 724081952 884673428 67872433 454738720 515543273 729544265 520743573 775887791 439803306 153837420 162124011 590454496 730114232 323045614 528169171 748712871 696890569 899442781 669466334 26604504 197417887 478785656 65868088 308685102 987680369 597858124 5026592 872613294 591214669 80494964 668366082 381273469 991179124 781233730 623000274 24117586 28633629 674240052 898111109 810613580 434428847 583232058 436095595 826423654 228372084 125591779 585783883 760543874 225121252 332497329 640883401 153689104 749766443 280611044 124166845 540403404 252739540 644136195 820672344 547149254 259299834 95278240 695153347 153458677 164799946 217608443 409773119 619852508 115054217 328799865 563812431 497115917 862687919 147494505 158062120 656324267 509844539 540174538 96386481 784313671 807973978 247340853 711534100 867853139 174281172 170989867 696668940 723466162 939003272 100661573 753605000 607011138 29924743 963865925 973662206 706415693 552795605 285071427 13898333 534228986 655674177 359279940 422903122 37546588 523179288 965709575 221682149 276039939 49663970 63909061 183993239 166000282 318717613 424397227 874577155 862935026 300877006 42149743 871428744 384211207 919914620 563185315 739251053 825565705 838544112 172930593 228205154 591326718 666642282 8431484 328307308 104013362 127383008 869444214 275112905 711962570 235357630 368775664 827726872 617968375 222999813 904995632 640969280 140073887 505179884 103284857 780642216 217774087 998531975 269798453 133084758 810428885 5851036 696404654 846233987 264624990 988220445 22746743 110929880 416222777 698533044 614352116 218106311 666880583 587396707 696466130 699102467 156655290 193837752 909138281 750396900 826932967 372016615 329180778 147845256 855472558 781568954 344675971 101987328 768412192 99690228 476330876 186111662 633813467 73962766 680808781 812521581 577091335 783929703 520405503 119808564 216094635 761296416 17138148 680395167 618580752 600222107 437306857 350736115 670445579 492107077 49785620 926843651 113726052 425409139 858485067 745674709 650036712 505804823 5014738 736260303 398044317 830994005 426079895 838009005 739278684 477085655 539557090 101675310 497586169 303336717 403967008 24742269 768627560 562164310 214192076 581536045 22643104 982067395 639654451 958939441 524143904 94290148 654069987 102254634 170682554 969357593 395890 297395122 737729179 409814753 400165094 673293758 375467151 581370109 590393475 688792476 135131912 661308279 561778226 409413395 959834552 577262274 826068404 315471354 163147839 994033888 562322714 999898456 676262342 905023776 888950433 81540279 113690738 979026046 866098272 111972127 841532613 534268885 531195279 352172833 995039922 328887858 188725728 464725206 970039337 909006505 750210457 441589373 312908286 252245789 871031508 258385037 145555425 228422471 436318796 469053472 322579816 733498942 61080194 866892409 786256074 363017239 200143804 117063094 216600166 771576667 620254306 730745918 475404922 345494988 93774127 564953324 27972685 249769531 422156787 398922400 275709588 614151804 324540948 947770450 215429118 865459946 224601588 20731601 706738565 88559992 27655243 545905868 259507599 542621851 528777469 845889042 671418241 293527177 60956915 317711220 246770244 440939294 476466889 425812611 269150751 267200653 834082019 306919887 738860193 734492176 120740208 331764359 823758903 226262971 706106149 983015418 160260685 713839789 666088841 307919769 254539064 891927404 642978710 775322937 822405873 481294051 36876920 185984496 859991841 47456780 862054112 75281498 934572482 837276364 261529821 248939126 789423082 862094509 898316993 834377530 339996096 935201421 493746874 576367642 1636254 351508344 425953571 420926647 99657323 812477510 284210311 655399557 605930505 273804928 148631708 373727863 101254610 393330233 573504708 497953950 484424466 776627080 963950567 832660834 20824453 820400881 713022426 774868635 762851077 94853330 393893805 5369683 283471618 752675324 550402966 57656595 376373219 750691092 474954180 405945764 94366796 361875533 543164851 242119558 284567940 824224184 785710003 722772283 721168890 245053444 518784447 227449477 518407004 10893612 524660129 22891630 550321980 612194185 452805020 872104146 331807465 309887445 779464749 576535398 601707489 609308392 549391234 143821739 469608463 233131301 171876926 141231941 32116713 920529013 411942212 417689002 299229285 88732316 534449869 501051145 354088256 389279053 841588516 225820195 115887401 891011409 887658386 742216083 781622482 933473599 139945133 251116276 317092745 528402528 788482179 610208909 613004047 127346804 905503908 503992906 246997250 891681319 566035019 402642941 906794409 803006524 188376619 245014955 29028867 166343818 507794498 281137262 507845965 993100253 603551234 475024437 18852791 201698363 506884608 369779423 940352744 414564801 445768845 219188478 572528955 682186358 722625330 517490226 4338223 716543013 959128707 876373563 37978733 335460507 369869685 921724709 868944359 909795772 605077059 517202925 79307279 732162946 254449304 789642873 867787680 726007093 175304625 688098446 668677277 578002384 842148149 729181024 528380446 709350085 237660263 93849697 783828291 949694032 416765187 970513172 809450004 457233704 715769615 601851153 380386803 570644856 530371990 850114110 771409842 163094494 247304972 185884477 816388627 494433765 589560153 377357173 500914437 809907973 410913028 960244781 961431178 801300962 769463359 828892027 977285751 135617638 983436501 689613035 391563297 496186244 607149025 377642834 662320043 464302159 322370851 557846827 970639263 22740112 328285179 132469598 689585755 120847292 38924929 789369352 705711250 790853771 54939801 656243729 24031708 982299705 391844537 771551638 741920779 134632704 15114017 349255090 705044883 24039322 307952003 249400290 327069490 238930997 153804258 228291094 949981975 329346378 2538543 506763485 352677479 391784857 423375587 742724982 374979614 502122099 293343955 414103962 242540757 137423510 408267643 999163065 640062065 427367211 725247996 52423337 692147045 646642417 573656097 708712501 688695803 270917212 71354799 550122933 374332718 97863754 435501603 312598455 378579388 595510113 400163936 377906177 834521945 442486363 716427452 863289509 779484996 168417475 678357046 467669686 845849006 460545178 521909670 605464560 832831168 712824589 710436793 426261531 11869102 679106597 699049790 816753916 847427346 649100991 995672061 806257928 375234280 645500722 398024093 199909726 974559012 527917322 858934555 318174773 369956254 208815976 390086884 603842842 935917767 154569943 32609915 468514970 690371540 597911586 610536759 933699074 519248440 905895975 263438975 267527841 642405332 817889789 974303953 886455592 765886287 199480482 74426254 156027205 505694062 260026554 205942949 510410644 906151776 381007483 372987300 464802408 784014792 825203026 803017710 686853820 250221914 87898460 245421902 867988981 400467771 482303445 516171072 431846744 525378313 641150406 460158301 859911364 99155924 137785306 650020618 642898180 471163919 587546148 787944434 126227435 364113593 48792903 578612782 415769101 652982299 951829646 141131567 206886748 243000429 388455224 858103930 656537484 862962897 886673316 718836338 722127280 18749993 661461079 837979949 449551420 995794380 496172298 658419026 946319250 289782168 591380842 16407054 108744136 575223565 504103369 585831968 478573462 278301043 185682752 814252358 323849765 801160706 118265813 771190755 229808376 827294301 576802371 845128553 385997237 128115659 819993500 272128387 607269522 13641674 454260501 409682786 825921100 285819463 958431573 697550771 825216930 249622523 500958830 324175898 166950195 535607590 525785582 419985326 47553307 370770351 62560163 757765935 430187829 408158535 76256774 924657777 896288381 715565628 816699436 860466126 346556884 487818932 181738901 409293019 535710441 45183817 987311421 827356590 752883602 630869472 194187395 499723759 336065581 368112759 678435898 884813801 192824778 458517732 370895693 876684971 728413808 426395254 706737496 163389387 449619329 794871097 831668978 865924679 894639849 63151287 758837174 659502195 9553009 238788104 350593022 802326951 597040986 95751655 720624432 683806424 139310011 964572436 321670986 377171102 946285946 912447695 841149847 554627098 288535549 738864175 75373039 151256491 881222914 888419443 362877686 845299161 246974601 776416203 432025896 126546199 723295135 682497796 540051001 834461461 828402758 904408718 110284348 75930647 404517924 729520229 57453625 557185561 321217503 256037691 365525341 964198967 60886709 211301753 936746210 866529488 570090666 450498962 535673041 499074357 979310004 309593202 352415541 854155886 474981491 817886564 173155707 440330689 153327693 855141926 767707443 605891378 324336840 108533829 935990372 81771363 644063790 118407375 546648022 625979478 147926815 151396775 548616361 359496892 87982823 144568602 626850857 27946429 111057564 752189 660704898 889042780 465909791 64248557 217427438 429976588 877758178 391398231 856720424 712815435 64973867 615925349 143662102 704577259 984854158 132174882 270057353 76025720 358580476 239847721 825636808 46865660 672251160 983800928 773471788 82050478 646077753 627576271 195694904 790662703 49374890 966519034 429059948 765455266 500740674 525331376 841608501 840477171 346625077 433722031 584308249 153254007 84428141 328358840 134329799 738419090 505486042 93532814 55850107 212320539 237458383 258035915 569780966 121863839 267410452 174293258 528720751 643917936 563678257 501418558 287619324 246914023 987648852 210035669 833680800 480359673 744922774 781343493 64889010 978199427 634629416 292690636 370828830 545625246 31917070 885586575 969064839 797092280 777462543 919954437 55347617 467537661 600103514 619243663 232555291 719793261 956327852 702630139 995592484 573989470 79946379 809301905 402493879 907869113 766236844 814284178 635353859 61537870 356668366 650196329 465054695 552641301 426666080 631055416 507527542 984336688 518014993 577323016 721797402 162597168 431313277 918883754 618559687 949303208 24402523 15911002 59529662 762462036 995223979 201355936 698928334 990332559 769187382 108624491 427434580 444981244 794549397 282135970 116236656 590231334 634408160 416377263 633676370 295797113 487553148 94163079 232677703 677999276 475462025 223898581 210715482 329114243 634063757 54288795 579773715 442492505 472463531 686866937 181692002 688166239 880496428 331877138 442134216 941964134 54138936 205944183 918334905 700694594 646115147 391041832 535628078 655696655 401082352 10483894 812660724 688951864 26171750 224707903 210453002 430026327 549200449 222471905 58191603 223038122 255701263 405521997 610875070 413086650 312386701 939450654 515085141 878229223 209262006 830651276 33469403 868793144 183110477 141343725 912824049 199029894 952383773 270847360 736559536 694221650 304584259 468627076 764593219 873610261 440015541 849288495 292347758 447930077 803403469 808973822 748718511 766946726 186024980 104682571 569575467 301421853 627396942 89372611 341668688 514110220 90030792 470763591 57794245 882237801 382706218 987004462 905841285 529140987 310711585 74497755 727046065 876055220 794156483 209442049 585107370 571829599 222003514 771940100 912074735 523157675 136203661 158417654 509041252 99857676 763338291 689620881 751331869 360379466 1960013 893436624 730003272 155361048 601099388 26199526 249737939 742110578 899501646 990418668 259023193 295729251 990199533 207683866 18919157 428995163 620616809 669557072 521407062 309744153 853171596 229721556 758661953 184137900 156372693 748322099 627029977 925638407 432538619 721596353 810181409 683963787 95163160 465929451 784308740 170149960 946144985 224979837 668678746 528779099 51597641 432675946 117628163 5271714 723325189 417166785 745394295 527017824 625180256 56966239 573285939 584653532 280463394 28955572 571871752 44868815 228323849 644962604 901630056 425488474 126886528 562002174 727080117 324250889 651399110 850260187 167362304 42386795 928800622 308284619 892394202 812800097 358551074 137464869 61279390 565596326 490037637 536660197 464866905 623508224 144228784 145370637 748105949 362873965 261773700 361443358 296343164 615324431 192163479 784019316 442886195 48294910 754599847 367880358 840469915 414900612 143944090 940068994 359584266 937554674 131987881 297795929 245143301 634578159 158934687 420575054 342739474 595494157 857200832 540285263 749644271 578305145 23447751 297245104 940191069 141537227 296036440 390914505 869671149 747577523 388156431 509162224 287833764 96475786 383717574 196241102 50249477 120092280 231864183 249344950 344112569 724561089 568380969 766372072 27438317 570632861 924719770 144553277 274175836 274537639 688072211 47285860 837637800 325686439 803187714 304901419 517248381 604190120 21737665 141378091 521567221 828081499 778546838 443236705 642250377 497317513 2080678 376317161 218862071 607186313 545517543 139624701 55643692 189223517 113396968 572289803 918211742 55756856 735620991 544500635 169438291 794646169 349027227 9358343 881238501 560403521 691335436 648472558 743809978 57259258 268535228 996354644 854191819 92147089 417206192 949445013 162243474 634633926 122650380 907242583 678166410 681706442 819907012 60675500 756747585 755474788 525052524 690988526 599497193 205062796 584274406 983288090 202878068 801074300 27014165 917387704 691298691 55431965 370690112 673307024 695826106 183863865 818801750 357908421 985300147 396408139 240133180 461112329 362404321 818546012 467198993 254872544 956835977 941388622 955730707 477521241 461718973 68159347 192664875 738421018 401199418 126770432 536493856 201673196 578153410 242837066 52365231 243908507 653478689 806148555 583519655 983787049 776059273 103111570 11849049 907228263 722401458 224960232 523174398 410447332 161641485 455873930 22431657 60937624 385657658 426625474 84448316 947718452 903883660 43238952 422362917 178733824 444385174 244854206 139463720 936598211 85091251 711699071 120973249 722115297 915794135 676015760 315890204 261941301 634114449 548210519 243001628 183574398 465074523 875286295 510501804 695955680 845135972 8817767 605129598 548165165 264120435 378412971 946324512 95891731 866506827 18694251 457394830 171586251 361810009 224208748 683259297 886338547 713285438 505584902 91075195 511715860 523544558 826457821 688398070 164570967 384256020 490171907 734135625 890474338 602327333 275896911 655420639 816658545 747339421 451636552 526615395 786933581 238784898 229526254 657424882 137525853 717099610 210082286 989145613 433733975 493271139 734500408 33857860 928587164 526910953 897661709 439485494 38461615 561926946 897050352 267257550 881561664 214758187 518407801 404435204 219024911 42214388 442166803 478654840 729273814 305328012 871604636 105107703 436010358 927284478 683794975 224630673 365211647 207353164 532591450 450453750 537073012 879385064 297382619 498912324 361859839 664045308 289674462 633690375 576731875 366124854 640991386 229316442 428049040 718413572 650506641 408106135 104741303 172940038 96833239 586215243 403186507 144568465 258289604 841004414 784052236 652585948 369710984 223579669 68164175 489140703 467626718 573863659 166034698 335116398 716756159 269525517 796707888 501452664 591606347 652093416 323560734 815664654 100232672 39583867 803331317 192083875 605048091 421748189 728005872 831340750 784296214 116234477 94335413 464241355 19058371 174215857 865336598 676802182 93817700 27263901 899830777 170399627 130369385 371903982 163211931 408385645 496712022 690273298 335909832 619599537 339583492 448463567 547777607 791403257 981996420 851923718 572563289 890475565 72928100 302431917 881486818 138073632 544020060 440810816 970922723 677779921 254600823 460923061 385210637 11125388 60188988 52058943 128743917 312484649 546289861 710141441 395014391 328915849 307800137 107548373 645747152 45612333 673193719 88317356 332212529 198113911 922503026 203247648 598721448 731224149 931974180 919357349 621735358 423029580 124087134 280739524 942470840 167804086 179227748 454944424 13029769 224972564 102016156 164420212 571283316 942093517 301266617 317056951 239591690 288184490 141383846 368821910 626691270 982125360 53180083 693701422 986217089 230726799 330476446 135260620 738095208 653715816 576640113 228458997 598029693 402414117 859120147 187453147 881782524 864010316 229307370 422819154 791382077 460205607 316400673 810626111 121269707 463497327 612883061 905487790 786441440 334323388 243686853 69007561 488140261 104542416 600829664 671025540 878959332 624044819 978653850 179686622 787409392 267713978 742907442 373797812 469699256 531893407 666807242 195540424 277978548 726113924 28589656 773817802 614649042 30010328 274950023 708695425 50757616 449808443 209843478 209874223 534135165 407525439 877002592 853905601 38743398 267536407 821920777 113120488 7539490 215155905 371755663 577998957 859774494 592428818 978791553 384418424 993855205 939063581 968881680 437593858 79975049 109198131 838069050 390484952 266248625 818879270 938293285 672202689 955595983 87217350 186559347 76463145 816439325 181224781 579210039 822671381 285082743 437663367 167421631 953875606 62545512 63236113 276915678 783678138 535298406 254985265 896572716 508718741 749580725 827097210 380859272 23616738 321165340 271687888 457279839 777266127 718562070 916463482 737470154 906327283 950785746 316510139 369717084 495955536 941793769 904046022 44916581 897670727 255752019 148604164 743060181 216838505 700762924 599594902 958267802 515643701 34176848 822190795 77739790 857797031 473756651 743728589 433833823 359048452 354565252 651127435 33626029 601885645 995023643 85068113 466317790 223537777 349258420 885428102 221241422 754990835 296204701 161288521 237303596 912680077 399594138 926621008 135061982 481066451 321433449 879891488 282839389 962748529 308487040 993306377 106126806 488539893 349901928 330938310 4765244 381394761 395670753 624378209 614286512 976891377 454526975 392181447 772796726 619246374 578724425 124846993 10512060 224497519 255940489 746392043 888646467 369918406 741790504 874190391 244940704 843596474 164583894 470232166 845471618 322712968 268629244 787554640 267491822 844146334 848417125 900403348 590381240 218157835 106755965 130783323 68325776 607654961 383461360 626273491 437745967 165909863 628098378 51166952 657928268 460057445 513444256 844768511 699379090 857482663 364599260 62751643 217906093 115507120 37156236 582490925 447518633 48305305 120492704 952749432 825178319 265812265 683540823 884927382 252453062 287899720 106656028 896537920 54668399 551997491 73785548 733745009 334052228 294004967 494122430 137620422 189471874 36026753 641659437 344809484 640928033 467772104 231446797 375270842 443143979 708789487 178660185 712870762 446554218 87929742 752387514 882443237 534967653 347977364 609503373 926855484 704974856 908532892 123059179 478503320 642245813 861388118 323923842 124555844 43226287 160586216 656021613 372498580 432591659 58967512 54714792 91613383 62645964 711293650 670072858 408309751 691342221 550063265 308271509 360254880 737147939 187427787 954506432 191411265 652641594 757648742 479776791 483943847 737232818 13008504 654577955 787724452 531529850 138969236 573972670 567753114 556307041 736718779 611564919 844188836 677123115 654351704 124437675 948074942 406663179 584130029 395483971 919364115 200980537 472389986 370161935 335714540 467237519 453216869 290244689 592817537 473818055 477086332 828755131 444153963 578414156 575496820 789351330 503202469 52139947 995875818 693532257 824377531 49962888 898398574 971275773 375855680 610411724 763065718 876626334 438323817 293978497 474383280 712204861 688004382 13520304 559863623 843144321 216334595 365635020 431086173 757644117 776606586 94240116 116652198 264976271 62436820 837324226 194830662 848364990 479031124 435779005 526698382 670646608 881713725 295101767 130050776 117229311 392666516 845237507 850373985 847925669 20992602 372869913 264265375 32950833 522444671 652660576 590636797 314126577 866802881 212297007 397461328 227296263 729211035 481072362 971668388 678498993 645762305 211520333 363815491 422658667 394382744 503852467 673308796 762773779 957489579 715628770 38010198 59446693 811635135 516767901 21500421 416846759 48202094 947586744 658411680 689226360 705828015 944066188 433311963 58855209 67132606 120239798 276867972 235502956 951226139 920192549 85935097 583308815 895865274 979060400 502580419 336775359 141791592 386336427 210280084 388049789 801511682 265163099 404068146 584656778 417848202 625237930 161405195 886155153 310741635 772634074 459645651 713931024 449400023 856649229 881156326 108335106 437410641 583389970 520361558 805999021 456625838 663435790 281302081 137260858 685702905 708401964 542057800 372223755 749357557 87701120 634480709 920632853 572643470 943921120 428264175 413544884 110191343 850053830 610094785 354295419 73628385 175570512 869260266 566708155 11420149 974850111 904632439 397172899 893467476 181429908 578495092 625298033 965362842 265680084 573776565 818082874 838779836 174780835 426218493 695183275 866587686 833109278 684936343 828263598 774723873 393259981 169126839 693966031 932896699 121824875 164894392 857671231 688694613 764973284 830956426 264576075 529250605 587642750 272852184 205445884 822531121 583932463 209138278 491740846 681669529 286741868 266104411 161089916 335865519 77321927 173901578 144404972 509113990 730256633 596498641 846805530 277993187 361268242 202748821 789054484 7906461 992899610 449458538 341206110 238812972 293536125 700901470 772741015 818340856 390914639 744429191 599111680 127407151 471014214 17769027 151543650 37113891 303446083 817699853 489808006 643099902 280540245 462653301 843106113 35209336 340702084 306675196 716367917 967270941 994669106 893206720 193227617 1844402 262227356 610658193 60807526 223304505 988663180 193074994 138888032 501314904 742009121 349451338 670612271 105061432 518956050 695880441 418053905 294046776 646527991 933504358 95247946 421370272 64253249 268594178 858351162 909144499 732309941 323613873 701351082 71122444 451163767 995075173 504659557 80404449 536708355 176480080 744083887 880923444 143348452 745625343 692537443 439482875 136396914 979856857 316460082 916177680 886140887 531324578 832026450 793731453 815818776 948437160 440612278 835214258 826391759 668265740 941050250 359425687 948545627 750962496 324745091 396497143 153439111 356237808 713803398 662303010 519630467 455882202 329656883 56831365 372486878 515058150 96113948 967795481 937396426 56093134 419577610 789759834 154371391 30355862 177031986 600036243 584954259 28493443 792564635 371992991 676866256 125935033 917507966 146328124 809375068 72337740 485035412 381029182 812802674 896190157 792241419 973561358 824937536 638710522 992601183 181026969 978167632 779576378 10768815 517899492 513344323 207900343 661768136 607378191 213400927 110562439 68328602 365601816 9282408 880037934 893271321 104383885 82007631 458224343 178540466 143792 209467109 542443637 125881822 223132483 58929274 181547001 58315446 476907619 437574660 267709402 217322550 768158265 513090908 278064264 640483483 144471273 774967433 586010350 864055616 303294858 214514559 840168322 131302801 793735524 920215092 363793446 644599798 449232508 309253127 258753705 6468289 321724614 67796434 325159134 127867394 200149482 151611788 616969266 80581647 391022366 428273895 768316989 531938190 138491804 967365800 953547760 101966576 817935712 215695980 180058684 221386313 361039493 68053510 720721988 273848905 453954309 171395753 795526663 565049240 683784345 501638015 326301374 180411204 857983254 49022815 934723471 775930782 56251659 946356588 770184280 701433218 173066869 713405707 377454498 39816809 58660165 982247793 86081475 946881713 98729427 528742950 23236692 370176783 738157937 466975927 787861475 9039458 920127610 745881773 209324908 272205818 371648095 628499788 608489113 428128852 654877323 124699098 86357406 630411483 849170441 836904965 233423092 239905139 833447103 720772167 113799934 915281875 74491567 684077972 736837346 984000482 306016251 857437342 179064485 865454092 119862076 202098542 308927064 478239623 590997997 665633749 295825011 189197134 559086482 211991398 134201417 620964929 513015685 397382976 111975825 374618707 103614572 601189263 632472751 309300423 785626017 812871118 87996201 878206058 705657447 440114841 580263894 86798201 323187973 365007890 585026094 177992988 549862617 391234910 851487358 694298955 849229675 473585236 715626836 446536449 607529395 566965117 63634194 13444048 630962801 95190239 222244615 235536119 2466333 823615628 993229884 888748440 859872123 453328508 296170429 252478830 482565592 39686014 397733057 912078633 155836363 399641203 936140070 929202788 724218247 853639790 51523083 283883578 860027038 602294105 37986194 402904962 219835254 926277401 999379758 872898197 330288090 551231783 198135673 784805208 472788266 629112673 287578613 938280545 266551940 825983616 261512530 442123447 67621013 556844576 669295843 332549115 42548020 964327622 78949821 218402842 927139949 434041074 839542406 248751929 828876979 162164386 552108872 89339129 686131784 805195121 853149037 185112517 480696067 186536443 517160761 738397859 783769109 436802408 198439865 221025574 703772142 870657202 887325084 40885107 822452262 226503073 521249759 853291826 495325808 282096890 372347516 482178109 188029313 392157330 317260606 190914375 152773461 806208695 490855790 339035346 879544023 246835433 626346245 316761634 780382019 705366288 480380150 790692002 930431808 844273309 389863856 497995754 53156281 907451077 509226198 704969998 704453187 92186186 172010125 950466824 80079855 621222256 386200440 707026534 675832958 158580052 397468227 670114521 418651885 245162200 6071180 746365434 104654190 700792099 510193128 779755028 338438363 151117353 480285645 626332383 409025487 300152367 553081652 496519000 619762374 58571862 498264798 678397892 269541455 6320899 668327111 379465717 191487741 361590359 953681566 994234483 433980570 555477863 758142477 364968979 388426266 390416013 905008941 186638202 16299830 523860681 414438185 737713028 232073012 402784382 743224499 450754187 201426446 806974517 269138617 992790515 331107288 574664651 551544840 454687608 187182957 227362270 362951757 457984133 113632109 68167610 871915774 775693245 607378072 534438110 265794216 939543525 5153480 759937859 776427911 107366069 153458851 485215984 941394720 821944336 933041189 523306291 236318990 225385114 582811518 32010930 569396678 777472013 563096751 439732716 482596351 534969323 260677847 886880451 756422495 692664207 434301993 895677930 12261184 431320860 79773117 881797083 104507932 41557767 256627923 757162605 250964062 881109395 826871589 727075272 937081602 958244032 542927680 272692323 73935245 817298714 72721671 708901841 880921838 104788146 979361333 240839829 795039678 995719299 185318744 708651684 307208828 330420038 947941255 668822522 801371576 22230104 637091275 332782014 491902578 41458428 410805725 349993867 418551389 570307054 758290791 923457797 384914160 918060386 401970067 640248750 794176707 13392618 578800044 606077945 590945275 585145754 143539999 398790543 556188086 466112737 264917501 892245765 750468841 363260353 565726661 98103952 14336696 929100019 649651909 355015496 246984204 49912685 24501917 797000177 14979977 303152568 642973668 346529773 18905957 112302757 176029851 534153633 919001046 882576361 715098781 788943462 984413286 155376114 469974560 960077578 619602204 239451226 616467151 808771545 549694038 845018962 762592538 142643552 285433301 680299751 985742542 479161298 605334465 349082158 707915006 95838700 304318805 871402612 357068269 370693463 704387224 638319408 629931294 967961395 83935597 166667647 705562226 18496969 90431707 787513901 63726856 84212954 412945961 725498648 467184715 297240278 235577314 443187624 865125071 572704855 269301526 964623918 96915299 797168693 34246399 682352415 98939013 137266026 218013621 889867796 687492495 532627749 918439071 225120284 617553676 323138009 177967283 253576109 243050625 278509936 605096844 977726612 880088558 356593632 469458455 770570500 647660457 235160326 917098715 487471852 916771336 335552771 457114874 764970007 961716518 109845104 861622599 513359631 935798150 148364245 760606459 238664720 54024393 666797510 151924382 729682545 256588683 530827315 987095057 196527180 43415758 809414249 768330607 855518505 373080832 279593527 901141106 962418339 67143324 479482024 188099853 772293883 192999426 544335385 198784985 930635797 101817878 366137198 60243671 676386232 761963623 924407934 98029322 192668741 443229281 408537196 469131173 374811469 424527371 484812185 690937114 201315580 216786351 668372020 208025577 689402822 121966081 504745187 665688510 805115505 774035641 850029732 195387342 65820289 201163051 681958333 752578055 774688500 319137255 197613173 474354361 656068136 982873465 910271756 490305177 454068585 792596922 175995684 995402960 538520552 843630864 139545572 898341366 157143900 891578502 477544058 312867104 509652598 529487435 526125814 127759034 348904877 581045709 636719036 342725922 246925799 166875326 492633233 739582460 569651112 825101768 547277636 79738068 196548237 358331464 298120186 391326518 982396840 609480665 746321916 254812079 113380320 715727952 977803418 97797729 467850343 145438161 322193650 448828262 235354174 393048116 690275655 222996511 245584717 648480517 668192931 618494889 986242733 650498406 652570647 293735784 834331458 122059891 641708780 685656932 877559887 621295866 169511653 5569544 461764901 453263350 44053180 896302000 328747099 410104449 851335909 336565517 221132217 462544771 756862883 910777694 331400989 616832848 913080906 499321138 456275025 670649191 603877123 808744190 271718493 447032214 936730303 915789074 904577390 173426294 382382897 520269151 134418420 224862491 443250537 42561113 80346010 713777875 743340958 100345430 232913710 894369018 495673448 449934483 27636987 773018562 349131006 316825436 18792236 990536642 171591347 571224430 846652034 130181824 590231562 783265826 879606451 199921279 620704084 448385014 417614243 50547017 359065920 989428636 817862104 64062190 942259559 235961988 702173004 788144284 28471292 168641458 726767376 633551291 723761276 663973043 42257994 491356431 369205217 311963864 26483420 632603656 574598030 373635571 84458028 967879325 932216845 947593856 876303027 969806759 463506681 606076463 564796086 812471419 768081596 557410329 673203436 391845210 82308882 271446177 333731740 239682310 248203327 621678759 405070506 188504957 585042537 995247421 917342499 856001779 575459950 112460562 28465310 129624724 268293550 108513547 267032418 758378009 522396771 203357262 538370062 855852530 242147986 344934784 517874031 597838312 516359878 619852012 163730700 347534116 640845485 913266683 145067866 36505226 320456884 696330230 115712930 279452481 641736087 320152025 49676640 129775760 112029671 685284712 181073146 186000273 789661879 870131778 113909842 585415863 624675393 615858449 548775146 923096546 611458354 249494870 935223681 886285742 82783001 911529268 55136873 134893019 978068105 752406591 98001049 691514735 166075902 355813919 8301336 563394764 833356398 484285292 306751643 874989057 999694102 869061972 304297995 529530567 109598738 534759143 343708424 276824493 577142937 946613447 346181552 553300026 141929495 24569118 32310028 473090573 442887844 995808723 395372869 921614025 418327256 654393472 513836390 564934237 833335541 358097236 297735788 169799288 632184463 878300302 567816323 119717377 63809318 614159943 332375675 490581421 853485893 339196783 495084078 7544523 992849185 984816412 333670336 80086986 115826918 826920756 81367204 345493448 461493553 240790224 945739354 931345843 665344085 893045288 839760506 74451253 511967208 498515660 521926680 72343654 669643584 646734378 285536973 16124778 287192519 807840951 925543417 25368657 683912970 573437742 342408885 230364479 828893144 290142611 138695584 484728345 192823796 831489062 990885292 967210333 333224583 595233535 191997795 644274311 912243779 215966589 345320648 170644565 365722158 334551997 432513678 964718178 128281900 850442549 498766746 429505735 513184988 242224927 946514846 194733572 686763760 181361037 579850057 853963712 177165255 802977532 100606210 407221396 117658287 573572224 621284542 851980417 862759170 546122367 741557841 659985896 20148500 14359402 969828097 394322837 1061032 582979854 517168066 848793013 787917780 80455305 18550014 809499341 457440028 960124806 301972358 741335314 733469734 855454325 813240428 901463681 626663568 602755025 451186254 911085239 416483661 191437309 56543488 840154512 490010773 858470716 191878416 199384559 919028321 252589220 589737820 407218381 546806081 626361348 354465493 690013750 677892272 675671836 74258977 507113693 555799684 289785357 887542443 170910614 473747323 24130439 606267045 112643630 998784104 542913991 244360160 676116314 313047330 876009308 9770791 258451133 838774990 768986321 548076042 8420299 64219292 121215215 196641424 209822534 181854445 527858085 344316517 949979529 986094566 294495533 653783948 141518317 765548810 23270535 421149349 125189871 910469719 319257604 206036094 85095193 51939947 683099665 824223066 832103371 789788719 80846361 323607260 545858161 706562788 772073247 857847934 1007846 107088429 432730758 237171784 989246710 139805516 621492604 44500107 109696290 227279820 682322535 348967004 383780187 390048502 749362150 843575662 9361222 680082345 629447456 635604315 595418802 83486869 639195395 800389007 166206186 70130590 730669853 989536184 978005861 903118990 319713312 313588768 818516596 595019444 657453001 686022469 816347501 455261394 448406360 754249063 27930246 244972207 363897559 93979792 959995066 467124637 878294125 350136225 82042037 389371335 274616387 855063019 305675349 919519247 145442323 872380997 653283000 179651283 9591974 821448456 973968687 76156043 409609899 997363280 317892498 118996179 306222589 910100514 267251449 50140880 707777636 895888827 366631747 457642001 673938413 201300546 235315396 719482315 164892511 47138221 318041555 238624787 996759717 542188018 254043832 464365283 160368160 261689478 354770460 421579877 101258627 302568380 707138830 333856828 292016657 807909233 535693007 235481569 330792438 841878206 7714761 464393986 633104093 592903669 693781807 240663738 930297508 527989258 530098689 508671097 335399623 259735792 527103307 130022603 500969080 671659275 936974392 882299999 334297603 887926284 561522531 925756083 622414040 658046317 317365320 120917979 357786411 783259466 226805733 915475827 121346046 474364635 415516705 437681587 588974656 634961402 715815139 884491517 516356150 394391631 891875708 921269550 497813507 554802138 278765301 554989631 387057156 825944414 707086437 149504922 245101079 46687859 154115089 815112474 300273772 646110481 242190587 351561860 480087484 486163416 736427398 234461496 256842301 10518593 444158515 113499662 332905096 97682007 460927752 762943314 473847329 638565668 838590991 674424121 278260586 845977942 482843125 67334091 507501522 204338005 554372678 169367143 628542626 722948815 883846743 391349961 713601350 42358106 475880800 932478135 757867834 204149581 174114094 395687585 597664755 323095081 699787615 446947879 969166573 784325436 837710689 572077542 508069185 688674926 937020327 403391468 653186042 378776983 704520760 529116357 248752585 484413540 137542484 738812756 193305260 64891482 968061359 293675658 10063553 885925271 476197105 366312373 941605983 572460444 740221465 156667826 329444995 283772363 312347260 200684050 544316972 620341880 757710719 644868559 326641182 864174674 193057498 541448044 695475453 216437046 301647615 444322370 489436598 236310241 675367691 919984493 357782701 395600765 163875989 754978771 796086677 684204608 535125776 985162499 76788341 586565901 70061885 826462592 589219620 423314801 146334730 65980998 42689108 639822698 437846062 101911688 91736207 629423841 795646794 589161270 864907562 800090203 506450339 591686219 755308977 961125486 314955123 838415033 859250696 916819791 104174666 625053693 378402754 134368937 349392000 873364102 208484832 841352769 213519566 902212004 72342057 960422655 439824849 856900851 314682403 805934598 968817505 122867619 560525262 650689607 574568435 827280645 798802760 875140781 93935373 357658578 68918861 319351805 433568092 54692873 710803400 210004429 789074769 498921620 452728123 505594316 966725127 136968871 162376685 126587008 775184047 534114524 245664940 777757276 285604063 409640805 243155985 399514401 384358619 886526054 292573262 802157269 550977757 146544724 760039736 175786528 932979197 57555647 607518367 549924106 551792686 37951087 773296290 523738585 161788535 390843635 849395726 991344252 705343460 942876132 585510950 942719566 111181234 479484353 264705770 449448903 558237212 237111494 56797627 972977988 325051590 42366320 392927540 677206425 126603180 922492296 581322225 625914774 81536338 12580865 383764377 739879788 112880349 158576817 227003596 687604756 262631011 355438117 401149414 621048742 133624393 608686690 579251304 58480566 552675416 736987056 92298833 94730044 611636671 804436262 109163359 475603704 625249413 158368246 164288631 638042609 763036030 931879421 577213711 337391061 84486935 135580704 985436460 636049368 106349733 70696327 31799596 542856243 330207636 42177211 178908334 800014620 628641723 81106444 182553420 37241119 2568648 216403336 82306923 722201371 766364567 791424121 280596548 915792770 808280490 971073447 205061571 428055893 318716701 722027918 869519793 714366203 736782404 9618103 156202198 996445337 299026407 944942676 67146574 36579992 512571913 304608545 299426008 577321766 685935186 926364194 424405224 925037202 345214201 785184532 399269161 981463857 888627752 577379475 840959984 52659146 379126493 952785786 900229044 338982042 179227526 801663083 200835736 319532489 375762675 115246865 870530774 233147561 2363769 76710385 657045129 923215917 790614359 469022996 729478693 977359718 326098020 693965445 241146814 19645244 559722990 96407333 5444842 331103849 314834390 8531212 858398300 214689623 233255519 560248486 368617462 656545271 885793453 764160641 177070648 527544784 319366133 563658662 558877697 311114703 18212297 829262863 178424174 441422639 533347581 729777817 695522789 136055785 291119140 934999775 268635112 480678169 902417884 387538046 437311535 106965805 269818892 348177814 438353740 373537726 741665897 750770440 563434980 721626943 748141469 107421156 506860805 37903978 920508726 696107075 102644400 882357261 83098208 669935869 82597696 770140845 337264326 664290550 918231607 846460832 498235730 907201714 208046620 7692385 40556814 703696250 218181453 593002523 521639585 428625900 611649350 608587620 214273302 463696061 248563081 404032686 359090254 29993281 199677773 395400247 110202920 172265411 82940981 63218898 635088067 832267520 880521919 890935887 812106921 460704198 498964916 544734536 473312512 457685878 72339207 58516941 215529870 457799398 133723446 118206171 795576254 774618965 864942344 701288209 324729982 494750778 334028271 974310388 404746933 387880794 376121932 228229642 124419523 275989570 45396398 6132180 199275677 240763194 51245724 844913144 181301730 305882661 945087962 386922903 958492790 1654235 947396236 491021536 705903764 359847009 145991679 98294393 685863851 756799383 274975760 403448861 36502091 977604518 579558901 682324174 838793556 636143077 225872099 57074583 172562242 799179431 232677418 436774369 531021789 521597005 749873357 247639005 557932760 238421304 242665322 694035359 242867447 204685601 629634030 402978544 78156239 895749242 278212489 525076828 763907688 350472453 97888479 509962402 848586410 493452673 365277806 702644801 154621884 845493217 190098665 874816991 935696654 354709117 979724392 62421392 793061103 229558704 911321888 656542121 46619203 47351886 332143312 74931489 305299769 22234203 931543689 897758501 462297720 452728374 792717622 757604686 369847863 511088493 324639328 733517858 776631618 245584913 953035424 827834877 364643278 280134315 605695439 633059588 452650190 653287745 459456321 874902878 119727701 442307603 80649492 930749607 686750524 334899385 867191101 617376097 540966515 540151105 695041472 174348598 59403473 362063230 57365774 635919401 646345457 169926387 576885908 883647960 877644343 57592193 702204067 604817536 158828989 814905728 153887229 259911672 188194807 56600496 374510903 301134200 53493792 30138491 220325108 543072548 871089903 523029799 331512229 10780508 686929434 319040323 77379270 313941571 235032125 25384537 925237112 699475115 657209387 459396466 521162230 189291305 763671012 770048847 749690257 390857961 421776785 258892552 257320689 195981924 683259331 914850029 691702876 972728721 765545968 652429999 836982810 329454657 60551055 952891083 606740567 425796510 465180748 364348334 195276726 286833552 362640221 865464153 421253117 198971112 328567047 695980515 850368674 26819291 504636765 732243036 264629903 681786806 539575490 316343310 308418770 898253673 591909268 712157273 308250720 664916500 567563496 838292832 595824957 229168410 737952963 882586902 198559256 986014001 69912575 628569033 486627462 33712944 191324610 181547308 396303497 673840458 13073027 209430199 520682195 840581124 311721220 976597503 556612265 768401587 955893277 323269428 687239138 357830409 30492013 728803494 924684980 506042477 678306079 939125442 164376987 138830565 747319525 55711090 728060913 797135792 601912420 706313422 381178780 184903739 220575058 642998598 549354009 632314601 90404049 975382773 62938626 306000082 172748105 396040074 550951594 129374535 894482454 714558194 245522501 644734223 670753235 651098776 754001482 822460365 76898550 777510701 438785109 64564506 426004566 419933139 70482893 570037853 435044949 692224441 723393224 509900243 956894049 642753979 359528953 567967315 172044572 702464019 350671928 268275864 235016643 590986779 184518079 423662030 340400951 762860428 177255742 133241328 710070459 43007345 54654209 598619728 886298841 744993542 468126197 17596853 57873357 34395321 165287754 5768681 2911274 428308183 974431787 159831404 551868658 501966722 453496921 480402353 441670944 400913950 831470578 912857476 770526978 386094178 519472143 508008671 799215339 627006908 889917671 262983587 480598033 714397397 462470233 908066110 699886719 464699820 246917402 393010078 173090108 628919591 238400367 505558254 465174216 112156344 413685611 448075515 860441054 660817187 105614625 249453889 328776 87367022 897076761 796234197 504393505 39922797 373014187 619056419 182963517 526652272 923996681 273371057 240609104 524979812 566679473 421528547 913181941 145462680 963796099 402813837 218277290 976787688 564624105 280918701 685712319 417557269 481367454 813987103 467020899 2213687 553613345 7321321 37559916 590572334 673938014 122740952 700492101 839054528 593789094 635110359 186263106 950174466 548917402 196192489 844949864 742637811 771941611 759814485 918146224 922651268 767558442 154368799 17975630 884390066 901060179 593199832 1651321 264450142 277276193 653907669 901772894 553393706 426398443 80629434 766976586 298029202 505688740 597753222 733471395 642252277 471382035 898546746 69683420 861275235 63021538 433330953 309195454 790784717 250414620 412948936 502831540 364976310 969737314 912492386 864197549 803345005 933572430 765204716 665551576 468039200 956263134 594583771 813975979 798305576 328228437 634711727 48770570 195544845 651942975 706013737 258925088 299331757 144302978 42665608 906928230 28907725 785425937 769876551 113110699 687133629 356046531 579600858 977766466 199551301 13796923 553412836 460073228 930669742 25824505 595607943 88172256 71004830 715485365 798250582 527040430 440064043 692844199 795673923 293243154 356309301 900129576 334469086 396136528 510566545 581653170 212769452 265218945 559564663 749212377 395438460 40203057 362080390 55805664 434824209 905239844 679192201 164178865 681444810 943496994 78241847 1296130 693205611 343090511 283507493 555679602 307942567 531892184 114522934 625944774 749449106 202456530 725933082 612776848 807851804 427699417 677235340 546200621 47127959 255615651 444805189 937470993 156117779 569287753 535133746 678023480 834127975 400442845 850669151 470148901 90573313 468778455 424022551 541900641 145757258 228165443 691765941 398055167 231646291 12621270 199372755 418768626 363305152 921374656 108241700 90028268 436131265 507292117 14839633 80292180 802352566 95201311 674129319 252066914 612013838 842908314 689990495 212937151 627105453 672461994 773897679 565814589 68715157 485500425 96460482 660775634 819219536 732860251 980724014 929474058 735485641 958827709 325199521 573670083 136539900 916414847 914289669 549804248 374794988 276626052 463021425 656157544 930562634 780184123 114940193 815343181 750970273 435361666 222645740 776858468 83561932 815044469 348640058 248060863 269484286 903595328 198777885 228916874 936788073 9686305 802622053 322737287 159277528 653646580 547628971 229990429 473903420 586903127 777307386 967373929 651561389 655608159 883566503 55422945 24809688 219018101 97989145 700726548 212824993 103051774 152515887 473988914 870684586 857074573 644336365 698741806 986621783 682884136 424992856 680816286 24550087 313551258 108536579 385592632 107451799 428620977 15633331 671852922 60899967 701632800 948574788 344967961 66021327 451243598 856988932 457647146 718494766 504009263 452781460 973167794 110073900 92738758 944399959 37197153 239346815 270384449 898840174 997534259 251985822 243669093 309389571 176039153 911943029 518990115 610398616 25158212 143440259 725542488 828318627 371312146 338777444 524954685 213697931 378737583 375247231 250631313 301273922 357269689 595498598 104057344 501315025 766426357 994093068 520019447 828141255 653793043 508997654 809001885 187478260 507758593 382414655 698195573 726760744 97544329 886207405 870884318 229776884 860794420 647311533 847580674 474837910 167947019 870429992 9800877 466442733 509016083 527532056 300889446 550382142 55393129 261025992 137399637 47640353 747920831 973715646 536254827 443640202 861524959 326115605 367281533 253043602 186567589 202884591 494017549 739576295 701120388 564094740 592453315 842211899 621255316 527304018 531985131 761010773 98967638 779633465 823503876 565868240 989974528 355708347 550631631 288646295 64117096 803209113 38828631 168430193 724807298 594299658 826627523 145599146 384903860 761560784 402996610 284238384 970584309 384493241 915301722 234294972 536811649 890858030 841779350 86665464 844066537 497051600 166819091 39100746 540627403 118109974 252234081 565348844 450218512 293636831 277866098 105907236 703888797 645116812 650313636 42856441 363139013 48737417 38234580 275727728 154189737 123233789 830331114 55140672 164655240 145459158 392727400 533935107 610651315 764514664 894743209 844899031 422681390 668986842 486079979 20848412 697491574 236376860 898794720 266321937 940004410 16226606 909344915 356549399 25031803 269762944 70112206 567526128 272301181 568056645 689349637 694532606 642977918 560990508 517119199 619738301 404560417 471534358 107055227 289353831 507898296 77014152 174747364 455738809 443243382 356252136 328365559 61008513 293868237 773832429 293711404 882832792 869743354 871123955 298086193 791884782 729855674 327572415 272297163 327402851 711029624 951338449 10628363 873471505 995686938 392123879 174803314 890713367 196414136 307710363 695423662 321959126 720675101 403091906 213666971 414744304 620518298 281432290 969498507 752200400 220740647 437615284 674131445 912854828 834839027 496279422 798541145 400659401 209522780 826692707 969995296 982313497 146081929 139776203 773588155 934600915 397959264 137657751 821270191 822640545 923097972 945832203 444210909 423491368 477915992 955835117 951803879 411071896 845219996 113528416 448323727 647497395 106937426 115688235 983206034 410422019 367593390 279090318 31626731 365733369 264494531 735226738 958759735 351473992 261823615 863760674 209665893 422348155 969128791 836743230 173303835 193096429 55239697 170469034 973380386 400738640 60581694 68849901 964528514 224670623 798210778 684784885 592583720 619321591 329642326 625712329 807387306 48515773 543158013 787536864 387577751 543196765 186287107 230453616 39893636 901199593 465539676 62086920 905281578 455143631 288933755 302697898 401698085 450687814 526223925 428873629 143742208 684254258 625961258 396226696 836637174 915901959 661146065 197642974 763462942 274105928 277368499 516844012 224256662 798776597 641168462 996547227 933801190 71555089 379795920 286096318 67909871 561487912 414308989 400945558 761466399 244393206 629088368 170049340 672563059 559979063 473283756 874646535 175516695 612134520 551449974 108292068 9595699 420071387 855693611 751894487 800982636 535323577 994662175 542778230 833915859 302166197 885827347 908418837 109149677 408889940 891691118 490456269 857799611 10846596 346091422 851425332 615046383 334823079 88582940 893642194 723390828 860405959 693225057 220814049 989740102 569303190 880053843 357800899 118717604 106723798 241371520 68781037 896299853 69384912 325328275 625384791 740631817 650929073 713696092 896488611 279789795 536070561 491781018 121353177 983167162 931184631 315727958 602506816 36893653 847823460 378797757 316596001 353798105 766604135 541931508 710958218 397272737 222985408 899299848 865328895 551440591 744811639 949047206 52399958 198752570 396013420 710715442 291774064 593712525 685449565 304567318 383272422 555464824 539256651 505753962 729956796 408567482 577212798 933262306 385896632 23812585 996866219 769142177 709989948 848530515 533323861 388992614 84970127 75141420 432223361 26507432 714808057 722168229 753567554 535559433 712070112 93147748 559140779 415968060 51817036 734413637 825349092 880480102 503363402 697177802 327593640 889013939 797709105 996819906 700101668 447579005 57835562 542164730 269308162 680460521 910776715 385532600 668176955 544935456 77151611 547397372 42004145 92482033 211061228 193269990 352087070 221244153 836050842 657469587 359527151 721166366 411192603 446641807 391468910 943137179 121229831 519133735 272925093 366893076 567691048 418279394 994205253 461260982 225302674 277962697 924925342 281459249 811637427 715078013 640434425 252717973 469949530 204715990 654108144 456598084 365837012 764199756 440634646 806726979 602194412 68445176 824210666 391637075 709130916 529902915 746521654 722273350 784306979 322908761 330876126 80498133 104844878 259188282 50123387 613294166 370670921 105153527 539752262 328635531 833536984 112340652 48592647 888918412 972076074 285011012 532174788 178811553 111543933 224725864 751524549 424848348 185165948 976938021 838944297 275452546 628848718 246952584 406468625 692689712 967663913 270636764 272057252 378156133 487043561 378740650 745293492 341687612 138816167 410484983 449953229 712523263 121812222 137048131 263951694 372780887 662227455 51908217 53324222 42175308 997886368 177381661 332033267 259951240 102237790 721020276 578305436 805321027 619782470 427159874 432096306 252861239 493419566 114147500 5322599 333827221 819714763 245294552 628079422 217318306 535666522 252750574 314157080 699890014 824731759 94250850 130638641 581887028 865174909 88409164 98194870 421779549 871095751 366358200 992268625 294931910 657103857 394014448 272311307 947434315 856976450 7525792 218493663 877715986 307616739 929598443 908951199 347509223 496713827 762189701 48468218 161347918 539282478 546730378 59864386 183375046 919030261 719257164 41283976 874496795 150456869 568880830 570171806 105212549 486478675 653440093 331471605 906616801 198832808 114315895 992770428 396302124 432036971 985075961 746134787 37571084 439762171 195988626 808423382 349459864 627872841 161129055 119854920 49766452 859652561 57770850 158584711 284783892 709340312 271448063 222409006 698234917 860573096 100497108 328097936 571089109 349802967 57766143 603806374 974877653 915641733 87969191 512530785 232550169 351745804 364680059 414631313 410440168 599466297 212648335 523231642 512178640 66904525 717384769 303922984 848503260 187908204 363395978 948887116 424795274 866942966 285238332 651153530 431940943 466601161 766800604 469386922 345447063 68297073 176004951 556856694 951232574 385398779 394085148 582376403 399136550 807919424 656767362 796087359 377605979 177340123 230424476 380921104 886855359 874456446 56987726 439601841 554788764 724927957 319927845 165348434 692789011 899231291 3461731 841119475 803251979 766838485 465495302 199999261 367151198 166795611 174777052 608263271 91183016 616785678 801999748 553306045 749651090 71382237 585195848 621420421 552147277 855649627 337694096 581623012 541735280 544580158 12444363 816530387 715909938 950975590 415984325 489613185 820997485 421018745 463760459 496156588 173283350 500223906 264677693 393794349 331123452 349955811 253699398 191348300 326958298 686216401 901884233 400835422 321119251 212732942 805305161 21232107 760523372 437574581 587300845 678848238 998796769 200912541 162866400 982449410 55442504 996561482 634326104 104609252 350466584 108005019 935496554 68990201 300636763 600826427 475526770 393666246 49243107 25956698 524643473 441707664 792177552 606370440 33202662 405592630 810124913 183969960 484873284 740342314 479716777 345951242 318724236 805373357 221383670 326803318 723021559 926576402 681637340 856892883 167843469 953195442 554115081 744395109 141632937 906211749 727690395 137709170 255828509 601721577 440452523 274994377 524655063 507696515 252739539 510801828 446744838 426509429 7246667 70748843 615932412 419985191 487837040 699039648 14211740 822120755 2925673 777467997 136849127 651423296 49261029 809235788 510905325 398966543 35819966 561506765 249376603 306793956 992758439 236516804 372370329 857300921 434427724 882244189 259655408 765509740 250633574 848222123 325480836 225541649 751343301 73332736 297596096 637122498 168468084 663298921 892016527 514914013 398083762 423961356 706335003 707077353 890013079 779449133 342665505 341330513 278890351 235628241 816963350 870515943 940109505 251310036 230292844 842849407 18897829 353918573 57911206 437273825 130877957 47158523 713090130 520391946 916272097 988863817 872822594 284167769 756384887 615797159 86387760 225451357 868289615 177510755 607437740 561320372 609676047 333824977 415260149 461632398 258963804 980848701 711177342 809572814 720289632 739377571 235062204 887969105 920509657 284015460 949407833 574618315 835795952 63864931 147768066 795120754 473524736 34975974 340796663 915743705 236978012 651571127 589565979 499254099 470365407 836948684 25519435 491219436 781068868 924707701 734651075 790508036 77117872 505500837 254593802 440466263 143427108 464411214 648628195 364914506 369233679 216216356 294375275 386856271 479819205 878653767 742623669 711597886 925757615 259510671 45825643 708341603 806099053 416241622 717449213 683464516 627899496 357876284 373871937 87242968 276769199 615241282 396425528 266408858 554603881 503899494 479276790 753582157 734782417 452228223 821007045 984847265 201270551 762954528 254908798 559554655 702577937 941006493 457347545 361359294 333976786 191939090 645227692 226191183 381121581 158061557 550652877 996530122 450125840 442004950 228664497 617052092 708251837 301389700 427168884 297530541 877620102 891635242 416030176 272312894 3658721 392294337 278276906 936700073 362866008 735385355 310233777 46189244 814557295 411852604 77713512 693007364 438301668 914859425 158142914 315335152 922930354 756835794 370074533 445910285 107386430 768238903 472713742 610037546 6962932 154181808 486877006 176207763 422985053 831189825 187093552 632833764 913795444 579233795 609014371 523133744 40804003 787031282 352459760 339894643 911891016 418501089 459961060 662878749 129645633 504422430 446010790 794665050 892864112 181395466 56697744 715160936 571538556 784551591 201644636 676748607 472005857 524752814 790810293 395867625 634952344 188087604 945800128 3723604 866940963 189301223 709168831 886607228 749267140 547655880 637131288 295323409 626571104 1991114 312610385 519439472 677611228 672030767 671546579 960527938 484689562 164300742 854613523 121599725 232556073 600277843 757258250 227818144 578247569 301162180 199306201 644262929 680780257 84681094 124611505 531328605 309975583 656647304 726167167 899920718 483135105 288664683 927388676 107058542 123876642 658409443 247981132 903398785 635874482 503843590 763301413 975680298 945719628 415498124 719408335 613506482 433897326 665341635 641515835 583886912 678409942 211861196 494006358 440623292 274398794 649255100 733562152 845406833 350011855 18486730 920327903 30902881 85010237 317515262 322248003 521081482 676553178 993458745 955602248 333767668 259025550 116850641 822471113 64787688 229461466 593188032 447415753 164952434 178296736 473999022 85622240 244213130 462984563 871199512 796451305 812138581 705986452 423304667 824141016 504439285 343561610 567487238 590388787 295599180 575558277 476815366 657182950 324510250 273705158 820123585 399625393 245300754 817169780 286249550 194224193 779664247 243236940 452808152 73324827 786310252 536398445 941011290 94050706 850817409 491084190 469414560 743830086 497561059 347655368 179180787 38746989 99169085 239950721 653758393 983985726 557941505 419498135 892373166 383806336 153225333 769475468 577641486 186160087 884756401 175018280 708388579 528866166 841435914 392939179 307017593 8114115 5216439 46793889 215109 786926465 549518364 883262078 15775658 682756502 81593448 62635422 738567497 656031597 680247496 885066350 375032569 829562074 744207684 466521289 233211940 724634607 947223637 174958445 777016287 15557682 964042172 728631370 169241629 115966441 202358977 965273055 521758009 589844073 855207027 548551790 292953108 329774109 98051846 690260629 417474353 925465133 234096698 706151487 963246699 245164936 49078140 598253440 502610578 701504176 368694634 936940097 711767793 78558611 615236681 677021226 975257888 743905985 779440345 195548449 553562825 714096951 648264505 767943722 785194931 405710344 508172221 270343602 370642129 850634762 444573515 212972067 253803007 522182233 565164337 433405088 78936677 691931424 693973413 651815163 92118571 255720109 55287303 939114049 258892013 79502743 600344161 911049364 21825616 842204453 586744008 421074184 727021803 101442448 582849047 993222331 882935633 750844060 58908243 949726433 53413621 784625142 724059155 556297656 366120765 273536048 28696822 235483476 35494469 564693671 420509848 753459470 360084839 224253070 296837015 662969031 907202512 699428114 674963409 329783208 647625776 72083010 437575732 77279119 725372238 782957638 245387154 27364923 184278981 75353026 233140535 842832895 791677110 13617355 764463872 33804318 972356986 812411890 349543376 123852133 973091539 979609744 214588917 356909320 65348883 497824007 704447269 901116807 949963206 541069309 701219766 478487429 629669200 417198214 737106782 336541944 910310080 657491431 33856838 194251400 502203203 13433891 915120299 991050068 573703914 912793475 396642900 393165669 220307213 749832801 745576819 503032377 899254425 350386801 379268329 819327950 2462438 794977875 54000210 398853064 908150791 305936739 858503715 94878805 221367382 673721865 104430965 486846233 992481894 99258387 748495855 162819435 70009096 369389533 76233884 385842903 113011916 204122126 412671704 589719334 323598079 2558011 231731893 428007269 678332932 367460237 674762581 231156617 869384087 15687188 67297489 948552534 844441070 927871223 855325358 230755530 107300714 787029045 605618500 687621779 500251231 599170726 777449277 754871664 367751064 511403807 535900015 201341138 164624895 196994745 568317054 739535250 38941039 497869832 747666478 55446110 906765018 514109159 431757626 146871704 687968179 344869185 6248853 582057033 540432518 116016580 151463474 899002155 895946987 272603887 418383130 103275623 141371386 664933806 753959988 445882564 721679733 440048360 988139603 604612147 727849357 658199876 353353073 642759681 449484790 927454645 66220172 115878356 725816553 374688394 598011219 259031014 749182309 612295687 868769815 769739618 136205354 463783407 702390807 290803959 474719540 949884010 720612179 862967900 719377775 547135516 497118504 250997600 174685370 865821363 541023023 622656531 468727853 258131615 622147890 565073405 619989261 59049501 930648076 333034915 489916061 26091605 238730614 150217964 956757099 674663016 364514028 126614904 633967676 325959052 35024332 367929016 633114362 120659847 905568664 380754101 775013419 352784660 397032473 145950136 291559437 406280491 938596744 349190490 12170343 933820048 500855393 251582561 533684610 362417479 248624034 841011476 180362787 62421327 662719022 71117061 846912057 727033630 274378312 929810791 283561431 847848414 512625573 900358026 245097610 48508511 12691566 895243961 629671313 455543682 634944049 286302480 182038932 723173269 763649071 911995290 220350541 803026282 245320508 473691835 79179338 364460719 61609664 900623157 961905231 833584613 675392916 486930944 41391288 708902763 812757346 221801277 569351043 103363631 895888993 265658781 855939357 515533452 411060890 908260453 619543483 486458922 252333115 490225774 947759686 661356503 230863229 129015022 537139753 926149309 324662610 752026449 903928093 708742634 848677476 741897492 951451214 773850396 320469491 289370762 391376863 541454697 635833740 337356615 397034068 744875616 424184220 522900713 309142522 745806789 425507116 609460967 687403111 2542509 611134209 239739713 948232596 239096493 58288287 634512300 185912587 993734191 111744024 8041444 269885939 765493163 831738682 691122190 479992433 514763550 331166851 345480479 28046231 672102762 850856410 773805972 461163742 890780365 343255699 330724600 735554938 803655528 990730091 7469858 754066801 352637049 22758342 445775376 796978553 549893311 995517628 213288183 621404061 438051523 214770512 23332649 463035399 596064212 598263529 121488821 172438266 45732377 597131520 387521311 791151605 472928109 33798436 68390418 457938502 351257781 154192154 480609753 177835926 221371818 216525205 36109322 102734412 544211624 318427966 604349326 267765871 918409032 24045914 763426174 907243575 760368654 352287904 533494685 289153075 474533026 655092811 667165994 879711005 28262379 829279840 598657591 416563663 221932970 999493789 239184449 977388112 568964659 418456003 564464340 398299311 440345490 395663823 944356714 928977561 394907942 475587226 81120878 589534374 96971021 176120018 3410317 285577644 697490296 317466450 726759731 897125189 418549045 967675392 447472661 784298092 68531532 456063981 290245591 485886248 344762342 563465438 284473220 973826141 498632322 757776951 815843466 909845691 336805967 924834714 569790743 149247475 714133776 158916517 608118564 506280049 313265545 247062527 465483546 359093000 585807176 204706774 259567073 752013325 224447279 958444130 906633429 728015955 700357078 159801085 772660776 388931470 418789731 849568907 870691471 244170207 188440492 837474703 989527194 974414250 903027815 451447318 187813105 292816941 249732604 225593935 563724493 230817239 172575164 898782221 965876336 616739868 883365623 573452225 813828896 495388597 31840299 410776881 296693167 897406081 796439540 362720234 543927222 297795143 538549528 645324937 863767578 416859898 782182068 683620953 750739884 622228458 414536848 511056292 994092225 100337444 170307223 807414900 147918196 972029659 346061104 830527608 567172837 839470546 941476231 435109134 410822901 297971110 830334771 656462425 73133266 246670964 753121232 793978599 871531875 457216610 439757287 181246367 269585556 174642931 307757590 961313609 131589712 364204303 594125408 606692338 584215860 780871632 317040824 65829965 852106092 851743408 766881004 275173469 238876434 513899773 759905666 964377723 633449609 126596055 406874014 987237861 77515561 229673690 102755365 351544555 639289930 325800389 759373158 769632229 811188198 644273876 855764429 747361734 933536613 289996891 806065736 628970399 588086771 639407127 431149832 901175115 192822666 347733963 834990613 231790088 701731935 646980459 701973540 161754524 105238512 407246048 130881408 971549240 871378569 957708127 981557164 266737043 414009076 894040560 358730569 263055799 522752455 185122639 330300729 148068736 541541277 303760879 400715720 494487583 995056235 105590893 630152137 147751730 558325821 933512522 928636761 965682615 310246540 577387787 801151790 193895234 203326763 435138877 112631617 368500297 190669957 637455366 504297016 359629262 62134883 98944316 642999504 192284702 497949833 635365435 282942104 658126504 372728468 687889440 334319329 184772449 314151387 587599775 405145462 785629965 494703558 178816875 751079745 17507416 6460125 36953542 760810602 171960631 467714822 225091252 640687147 801733970 291669695 609886159 920278051 307598488 810638883 733995653 665856329 580194369 328952637 131869596 67181234 844203452 638272644 792304720 436558079 783149522 445068521 364559509 159087839 248546748 436725758 903177082 239358513 26101365 248847585 612728808 812509886 600919006 695928952 459831985 554790683 970041015 412871002 614998139 457923147 83592617 107086465 284667125 612735540 645837631 469101385 904326542 819605818 133803193 245321990 665291523 938314443 709867567 499194616 239452934 335217241 234943644 953452802 285570418 494229829 600417074 84535882 826912325 385590050 937810760 805167087 624182777 290026997 102121433 298545532 658900630 965706758 466318303 520143726 259456198 471492811 558196176 37375194 932123864 26722085 748466288 468067031 692386025 923424621 449542563 399867490 111158268 723234962 52043581 765948148 102808289 253121992 819915716 961083170 406619908 739885586 585463465 981395771 251327085 409053657 997494643 274213884 711970482 676893946 501414997 882618633 851718677 696039909 157325013 536226925 301155353 232255916 199583972 783275517 308210595 295530944 547680693 900139591 44995930 803705780 522690201 786826833 645432967 340635564 333584908 641547208 62970309 811385254 872246858 567518454 988101749 335050443 679480278 262826931 111687728 321072510 409175164 364288467 574222851 349799150 596672916 661620399 287095563 380600071 72300587 457395828 700182585 456310648 530946199 128963875 35993329 70661749 559531034 591778758 549549077 957914265 267929106 457655253 586179721 708607692 733450639 423414145 28867644 435570834 798538502 509830040 597237282 452190326 684848225 953002581 81325835 763302084 250895886 721632736 693344264 638427651 349707000 173977602 727771664 702473747 151569223 451610860 260115268 212389298 150746180 52786994 705944881 189090037 62714418 181417407 139241315 408987913 758839650 751317221 87695940 815119716 643630534 757125261 251366671 822528786 655875929 412123558 885845426 90022396 196233072 196463928 848411091 402282851 403636609 325192522 763748632 741793461 35562717 69874060 586746411 130811880 444864908 971273542 264544233 824565696 499489744 985398131 823438355 466454188 336294965 652700620 798216538 483471241 224115962 423691129 325606449 640225211 594460425 456071398 177455480 470017175 686523270 524531245 190350819 350922011 367066555 501995257 68454716 909349290 726709567 568605848 11759922 274665913 864208929 154896585 838054957 255435797 24321649 62035518 207766613 243877885 876343745 644623633 329172953 369568776 609926084 266341975 621977818 645167737 996593006 760261361 383790645 461858109 421208488 601008355 318181130 760224827 241100127 720723270 720654634 92227486 479820329 761866626 61629070 649349120 982564380 493638966 76274856 513411610 858054791 357700729 205959590 420699662 712448399 42313032 932794722 582287110 677564970 330859190 18698880 413807610 53880581 996313027 163499461 316492528 766818809 237450658 142253838 972026574 6719422 524119302 789370010 312150945 643489021 190790849 249265114 252083716 82368200 664035462 736793719 492978583 73593113 953015682 750685953 305709323 825458192 103223777 119074748 753975843 203758663 587261373 382993497 327266190 23432083 742813854 901361625 434601368 443351684 555660040 373536665 468092375 593874836 250204445 939663053 96279733 611693811 147534010 169480891 567139127 891939516 259885330 201598470 557543827 678966063 556238141 185416377 977379350 528309132 170002608 152082952 104737952 746698090 57681637 954791374 809851533 520956502 36017627 55728941 145194353 385047135 174719861 987566485 895377300 588394788 417320158 478317662 785467198 58228419 494827968 741841059 490437071 549322612 618545240 714950166 623229893 940423610 749382520 180618914 372727704 268866611 807332297 744662351 88783043 26921086 245228125 225680286 642116061 885352724 513646103 82371864 910736972 197842177 26464840 400954970 454309543 20634327 899659934 777059557 687709169 821757533 399569842 87295978 162090100 803958821 109666076 584491698 896887621 399612140 403362701 845894572 373818133 149737455 938963885 155784497 577061414 481528585 317741765 562584517 541416626 505708327 216079713 980235240 717968293 40542637 347656945 476010319 417291908 410277412 839566129 691719542 836002871 514689086 640552605 123828403 927181157 666509349 73482971 844993826 489308069 416610125 508734325 892847494 187518425 160370440 999852503 218163519 814317077 857045656 210943599 329042960 505342619 991983026 164021455 412087436 504823135 846997500 399763921 383870753 265385438 323980633 331330699 384082455 853615800 778331340 680451365 161503789 124254059 138130858 256122613 795366047 69607269 353753763 61974051 881167575 4497339 612120018 73881693 398812189 824313783 351735897 986720058 366167523 791720348 234771038 169192195 674123062 505829790 103177029 309974658 799821581 620756798 744465101 389947086 332040994 243666659 893463563 54388223 366107817 870585345 530863817 570206105 608022555 914100395 917712497 512950497 21737613 681407909 810457521 895090410 405358668 725450546 380590432 647541954 274960332 716572065 364694242 20689044 577221263 45221203 526992996 803011126 441309089 119297163 226415444 197883042 705653819 797392036 428449469 686088763 924984881 403430102 432043626 998738700 63886208 420437889 189116391 108608881 940135759 196420778 77892557 787149994 554299254 33405210 366428199 28459284 740606700 343387602 40651936 994754446 581691301 376146450 999700870 963797086 815385898 867642150 743492550 441400596 500840603 108838886 859777682 746333438 95193641 466739221 641093221 997454052 94177724 804082219 174882373 962972928 87830932 51187477 673437077 385499401 69346191 120382711 231072769 170047816 999878248 508581343 850473672 530414773 366013222 89795191 697971587 977552492 146503256 451277382 234343441 343675041 131474694 747574718 290157442 877017189 705181982 283043208 381570409 938788652 203133129 374695457 278410572 792542734 74209643 52858177 717153853 285883642 706874874 844969354 534974985 288529851 753079137 69650709 117625350 598900280 166542837 533923225 1203631 832964309 645803765 419565709 114687357 121931239 869094793 117183384 67593078 738664039 707236492 379384634 774552773 795625373 878232065 665597881 940704625 731091168 801448827 726734472 390230964 219089028 440013582 417403977 734406878 173085251 9050973 511143222 919154685 690268178 731565239 209674503 499438853 680837506 610445461 27533293 453092931 244160625 887786097 236219095 40653553 608347144 835902910 545862926 532478748 206470609 377810799 383768035 15979736 559336860 539642716 768612555 362067661 964941409 388952181 902297510 637987540 303591255 815935456 26249830 305662055 134242714 694922775 296463323 563509235 256039260 81868434 203756460 614103386 489461638 705769659 928456126 492554436 800675105 444218868 276726367 944427598 926945919 884062321 585152115 363181344 107742448 652635895 240699275 154909520 117481992 505435386 117046010 896485713 19968888 690011694 600624680 712629736 506560445 48427034 273859492 429474558 72622879 931836447 97285649 325757475 7610083 186365609 585823177 627886724 494234270 4002044 526826540 657644680 99806888 835674417 831789357 677733467 631906821 549401735 149220223 203262018 411313767 512411875 885827892 714021369 379956814 648700457 642859243 264747561 510510557 308460219 346726276 353840544 12551744 43916249 793748789 252882699 531556797 80814626 408238284 567813787 734535172 530530718 413235847 690779377 970138254 139335398 879877938 921642093 858972512 952944485 437194333 977639087 770886145 398781150 817196998 112432177 90779587 887057258 582940687 6803592 160963322 459509034 993671383 63954140 805731019 587644830 739354049 967840252 484233660 328826699 473988601 695003133 308767772 15858880 541974895 886589070 79442477 15339152 514402971 997915249 348167859 668096680 417777227 825552078 776101548 984120457 376371360 190730774 526583262 808987340 167376924 502709998 325190508 789069249 30992004 256179657 211650924 830362727 639666353 23947669 550620497 843011071 780132798 995107788 937857526 648786545 125443188 219974247 378745877 182474615 583928393 724325251 473907347 253743969 746475293 688175509 894447129 962492857 874807720 213284589 170141524 579119202 459233279 116834210 507968132 758331644 899947087 797421150 748345995 444950902 825693858 974889533 311624992 848058320 165643013 433219033 91579899 805180157 541084865 485868258 558224247 979547045 872252451 591534748 450265951 840250820 272777299 229454497 704524680 471673487 777186843 365637999 698254512 277031826 362708342 30869115 904501110 745146788 439108277 199256971 589936783 402959049 396359149 134298681 272120520 240132324 367480238 972923131 980525389 442712747 939324698 652345067 36367283 781284425 383333323 746042726 553232967 865272826 404468454 465183629 833670975 458780169 58058765 80788769 65954493 547553346 481803660 132867318 9091239 959082729 777871370 717456970 796644669 108890299 798631652 624821249 159914939 888588359 394947776 767080236 987394174 639610417 975403004 457605623 772119268 495115581 976674144 617734052 867591410 270302574 863006457 244951294 700948855 555325792 102640030 714077475 62413702 386442126 884857805 775203637 77547823 244354201 915850934 671390470 703306341 793887316 484168171 19969336 82373269 782160345 217786546 584890508 294148841 962429071 286087675 672610167 672549495 261793327 963914703 522209969 175992148 476116417 406753326 347078353 431663084 971207812 818265653 563084661 818579792 99562391 58809726 711162637 643864628 939147260 112742994 722700671 4275585 217251895 456844075 430906122 281797466 892476781 457532048 468243715 971893010 808958924 311806820 903945315 228922506 66783419 87291928 939061015 431923213 145177781 822728262 472323446 881856913 955353372 475509729 735387538 571301106 988446693 66786070 198452430 25505803 103940683 546110977 847830724 243091890 151050905 256648800 809304041 369277321 669921601 626632640 939181973 278256268 608081949 224211139 172593710 121015209 344880045 400822784 852842059 633433088 428392180 981992427 645455306 514119698 891603024 299810746 175868969 991987738 795798036 445753116 498175677 997338892 788225746 829347839 742323344 917475160 882024345 554631409 796930209 549812981 593192331 458959806 240824381 832348649 989909486 918606678 743642567 170584251 564083060 338858845 954333230 371472190 140132356 999684381 850578333 871447573 834285573 708352 34922996 37959124 253112209 264536731 758008673 372889749 482226291 846546399 195775263 972930787 910078156 600761157 354851917 206056962 783359750 480914103 539705745 741117201 757118178 946927109 598721890 121251761 322061785 613872096 445810388 211484590 750720621 1871327 491527735 105603107 369996757 570210779 563557905 651201167 970624299 642279902 729836482 306434494 377006299 321222501 209644066 83937324 593319938 531335966 851169702 123638111 143570020 66472793 659855544 984436912 253896661 686296096 584897415 120397566 679324957 74745877 400351823 969311547 480139582 297666564 987479547 469466891 264358762 50070257 179627978 492475417 55448830 135279855 570922148 312354605 197481053 300706279 902190927 201530868 987793915 631029241 292332030 731046152 293266302 387341287 252277554 686281846 231847686 580480448 442055602 509683115 129050226 542537860 924400585 368203317 904142020 670824776 389811893 680301040 234413191 612600464 490107063 213518451 966525773 940217052 459494084 724053323 310826816 470896819 174867986 339349817 516405664 715293202 189406080 561154235 729109752 10532887 35125125 491590353 274411415 818854470 983318871 631235481 848942709 496929605 708944030 725967360 287704295 425927599 312906446 930974969 565749161 515210961 852955652 830683954 854853841 187726426 240453859 574843343 590408238 10384484 95127148 551887984 612044470 79867930 784573575 930094610 588307614 139351554 942920681 919566687 564461237 639303025 91914433 159175884 392246146 710357293 732996983 270500528 326297807 567312978 628209255 273193781 228432631 706149949 292851083 117814209 571096438 388633519 82406338 214355913 768150692 922749160 512305258 425843710 241653661 694825732 338699514 604122672 501696708 944235843 678051709 839595153 851919589 718878476 31823786 246984963 176601834 427000814 393110388 786934479 994429413 705103202 843972836 422920817 345206069 843110014 746334013 424022519 895467269 732708953 113082000 590572700 267498713 458993910 74679049 900138548 402265051 65450089 479066284 215100909 193316109 389600589 581521614 890961626 916510656 86751714 320775472 457219821 113268424 591552693 219786336 260204021 554152591 377009813 428827078 169647232 119559703 610980653 121322105 303310212 899068076 45926877 718503763 841945238 767143431 973137054 304214148 158343430 705124437 967250529 388574555 984865597 347492917 633649500 795921900 402975155 474290849 989141105 516246872 984163091 726123401 773222686 613433016 438666403 246830937 359583176 656915385 395321135 594123554 544895816 596641746 765723860 812938960 740340789 955623998 786973271 32011030 517747204 573574371 107226679 710272243 355611035 115017501 599195786 711191651 763629024 295187743 418838041 692968546 648063661 879887665 848985886 809842066 285525899 661615394 899147989 958734890 631398297 581991207 639436878 200446646 957431874 115643612 9652810 192263691 862860088 933809343 226258452 811044802 965076802 899265557 79455668 505670399 862927925 40923225 596656337 114538017 923387018 59632975 863695414 34143968 819336708 850969255 232120348 136219134 780420077 557226810 965537927 898092645 357273191 688962508 833948454 204215850 641778923 632569497 768333530 971789807 778795985 430301057 369221205 461030188 999249677 767165701 562759711 49839710 119069875 10974715 659901714 632238781 480124903 14220148 959116623 573007095 712377995 215478057 483070354 860889006 276575742 849908911 849200481 829920650 571468881 164494496 200020044 723592335 883700425 352750960 900890047 445646409 579657436 301461890 551836535 802588968 14433006 645791736 752989693 215929746 845545669 270767828 374682729 425068938 125202451 570576292 227930073 135956376 972744270 29827327 65258356 490400113 455693233 969400551 790679276 2542235 305982776 998288735 256332283 106191134 458613472 403972124 216636427 441454378 593855566 32574660 270137404 843354022 155172526 302893697 442622054 351749064 367034025 170246127 405435199 406020974 866560184 340946438 726523704 698482364 163822023 133846318 652492888 840126183 541965417 378724124 198448908 446079881 777159715 41583723 283179690 466191993 983447747 90266931 253579770 995715193 784086154 289201618 879932920 327270733 893643193 53816565 497705770 417513671 157157961 879336140 613123731 155513070 926252649 664500286 563116432 892054144 264314976 206893107 70128054 64713039 787349668 409527989 652034493 839840370 706647054 812577875 999124138 868975721 973606684 940280632 321438106 84848177 487068424 498967880 575679906 359598671 36092001 398555171 160262909 827418480 362391459 332993412 695885900 247031468 149970856 871991629 233737345 940242488 18507548 27341030 257453999 923888477 165880510 696869892 716617241 588570733 485383293 566958086 924466135 313725814 748817266 94498792 107676636 658561554 40285022 50832523 871336377 580762260 653429763 445596048 575985810 274050983 167297687 907079427 780041779 181646107 470143223 369634169 296598570 504650391 566571087 950543609 630700795 211254735 143147429 17570386 90896686 906090833 793244559 622738673 940445661 522978056 841772542 786386899 977415670 211871439 316611616 450162963 51421092 823229186 642208196 146582469 997153724 564181722 145579028 166140076 175593398 224742077 746476122 581132751 621958236 57720530 865256379 639080631 498036206 819905905 508342935 44675242 184563213 688971646 315664939 931387469 204990295 128556535 551936152 533517198 84672598 354331851 575965747 709947968 555896243 214243074 201452457 275662614 266349322 365713449 828568436 392015214 104090699 512536322 259005981 249390026 357743558 843183127 631278981 43414080 439441297 161332764 624520998 620395551 867031064 66966138 645468280 942326892 708224382 155698978 884105404 948327656 545212265 178160562 180566706 432699102 314758273 547015965 430981448 18370856 670429856 50009077 536729953 900057703 835274851 362173328 473086535 145885992 965082370 635847082 414502261 99303857 926787297 888947276 903904882 978349990 70508465 190200002 464297924 178350929 548999504 180019410 68693228 732353763 942202337 410364204 750181718 514573647 25812519 395246107 165142791 378431564 145036173 798284029 179530376 605144060 803604556 5507972 111309452 174565508 702071118 933565492 847663807 810540854 649122757 876265299 503092996 5168415 870005623 5586120 676994399 427326130 991380092 413024410 888616042 557963484 768264150 446504009 156609555 983062156 847873801 775300623 956252163 957719546 954186403 710495964 994995740 517291998 633054276 311573282 938945345 397068596 138389945 790520553 206815024 495230071 52874351 628683243 44030794 926268661 40213452 478190788 500156849 294509962 429971248 422605613 179028548 767184676 619397101 397994740 480794711 324141982 706885760 133184284 820156336 909104943 85387410 834241032 715131281 893080098 676380099 509903315 568665715 111258664 964204551 733948676 815386778 979406662 550205316 909587966 768683288 634256926 656451304 714021585 50957246 950918126 317116473 208016399 251830967 610115363 975381508 191671272 869180562 857715962 144245700 215075355 628618520 727800878 842680471 324042709 206820400 654648103 160019183 301540520 887603183 989526666 189156934 149209481 974485991 391111636 618035922 341168156 374268287 743188351 20820827 525050850 266604691 306606876 232687666 633055796 914311804 937250481 711090728 324960339 167469803 363392590 266658322 839293318 336129570 740918846 972851770 160582781 379568521 17942220 116605627 480505937 719222537 850753129 107801529 63881703 55718683 514891402 752687408 154004683 521747537 698471177 878942787 3737930 84685141 318197276 933545060 242621293 34733344 93679118 856714546 727568821 19787981 428088469 595171642 414313170 608720935 735610118 201209374 78340529 675357377 499241149 803063649 278819476 915974458 170187883 470015341 813957012 972103240 946439723 124702239 911945121 772562237 915066085 478708118 476636656 874160129 456096588 526599492 323421666 178391898 616849633 83074331 3982409 102580697 945243797 123546948 395784089 852878544 579754504 697636772 225655403 53351632 656643623 962233699 367298310 843775153 393356197 604571728 830531974 109549396 419516191 686069972 219092665 822249390 59477947 682106597 857606962 980392271 658658717 272731376 665515573 819503553 138321052 761433511 258525857 503937418 3146163 510152114 98315654 809856945 375983678 228524642 690251599 770760002 208863418 959071476 873159246 908129694 841685728 561777751 897664007 351316377 759277866 313415028 807058410 982350824 237637930 554553117 152423866 400159936 866558585 106201088 636306506 509421601 206898915 223733672 72697916 645327551 89997625 412797641 392947216 536504603 938894512 942227024 617195287 771875271 753859321 549444037 36482933 338279339 900932890 417437880 780016316 402722446 494701471 140764708 59997602 199861258 404492564 531753848 541751946 396808406 82390755 68712481 795984561 755498009 414445725 383526636 792135322 637064148 387771543 605792970 67106234 168713985 485266709 827195647 151523488 989352183 554167628 59537899 91078053 436411019 9110328 533394060 633494332 196506756 572417860 355719707 468590267 168076727 624181054 584126027 779470433 482557678 964175087 955996896 590817751 694858992 974694018 588008686 102401977 267361770 509733483 446934117 128598345 831130921 268558610 877654754 759667087 691206233 926621356 206361681 918073878 763265139 69028745 961285385 633745284 532709405 483303630 783379273 262308437 197202319 231238305 469758603 221028311 183694701 182014293 809548790 474628121 266160553 492559699 60544685 909262396 550044021 989493895 572974862 740660041 575926953 49869880 305250813 601001931 847574756 679902694 770439631 97355222 343587285 280896866 205083088 171711395 442072318 962173868 683429431 730149825 538446341 962097020 597072207 797104201 637295289 809688933 975638802 10748803 374958820 471118691 731640424 788685619 941740949 311834142 335296725 311310063 144510513 208020813 347110861 386707580 179409392 481046246 116380077 304578058 141096163 624156815 917748942 434930556 161425035 785631202 956676814 909284730 765492664 966202649 642699119 89273973 690068221 865552035 453527534 554708212 608462206 438155198 101358266 487496254 286911704 860368690 590908721 91835650 108495027 11156546 295199995 761408676 183686527 745142413 471228536 915944159 668689097 906925984 895389969 26636613 936052672 224618575 702685611 103041631 944329849 425083725 364699331 871562752 491010782 262781080 405786080 174663974 35697849 656142951 789151095 708805931 884519597 349138950 371542018 771297050 517504152 979955403 655668092 298221474 813368589 216614870 339841804 144350395 364832376 619207548 496769669 57110873 245112313 681527417 707464312 656861054 701085707 260958925 268559077 75541274 544295006 41868954 681507769 96192176 166909026 256046607 42400337 617571563 297864710 916191639 259274440 866713263 427565133 132347958 133923904 188443358 225028140 506923656 983492348 427725801 600669500 924545044 117309361 511570400 629436471 520039060 712458281 74312910 807498259 207684915 736565309 451670438 382854448 114862707 230997424 332971872 670441310 838549926 536145413 164664266 331601909 939143062 12154892 327496874 299393061 68462276 190248136 716074045 134239810 195636727 41748764 916928499 914621340 554176075 68785960 970267833 573253040 869597737 111215659 759421843 485123761 190517498 978431836 176755177 586223886 212324487 428710195 808268996 193626728 714866621 649283629 274212462 816295550 454951308 504171451 321077268 142714497 483813869 520738622 569698096 433494485 551902790 368823973 53275495 32672185 154709125 437896971 887789052 659760818 9029357 886196733 781114162 870804145 924158544 664325636 762853498 720413677 183972797 973185596 170241975 828461627 898332141 288929082 216169737 265206656 371036148 310791238 571561954 656476087 680461208 636261561 682693553 352417246 754955920 660740498 501976892 629283905 162023635 4319269 654432840 445937926 37295601 919089377 411769611 967252881 62001461 443446210 634578776 920158893 416707636 595915344 503249859 908810358 330424931 34371973 931084426 701506255 463385369 867273451 893570715 929844722 586469679 874640907 381054556 842003471 816586966 757322885 816823460 943400960 822552672 137393816 980772219 413611015 687376707 56425249 889591454 61944244 589502066 434786195 901572588 178932175 483789444 605743070 939829009 104673978 280058866 385627507 950900299 684423102 9144008 58743947 884980242 257688931 197541285 740247661 183601249 117505534 401050 326920179 138891468 604738702 361832169 162011633 36438947 392460017 612455339 785336245 185357092 675548598 376862576 767837501 511859856 671126827 692395052 762182351 443533216 247615116 237120896 508166705 247707823 97785447 655672307 41828027 913241597 21652487 21017079 714004383 467459926 696742634 677074562 694546947 748180530 988722931 813828145 29486506 279127667 73880184 893757816 463603602 76336575 417135279 21888689 449993106 949540829 555156309 96981318 810470691 199165793 724229325 525005900 89440030 768069856 156035034 467595140 630583768 726848788 908970204 509902184 373937605 329687009 934049442 34226837 73162192 274270853 219699458 732261957 357012072 52114578 29247855 524357293 638659673 446137302 805998964 270429939 549787850 474569597 762680133 449999454 130006363 592060144 470121970 645870605 239519939 97996763 837016312 499166017 763644823 164272870 84100976 676897196 526552767 902766353 758919192 554715310 613055404 302177654 431688200 993063852 148815606 538792248 878721394 516057086 942848204 518671699 721015643 228851223 990238927 519120354 173869431 601784659 173441143 647748075 57922577 816451465 204674580 905013983 891502433 78000606 584544485 345431274 104970979 304590567 902247820 755329327 845299211 661887738 858589809 964788445 100291430 886656822 412442558 569952375 155867078 543746011 576426958 522862438 528165909 654242463 78340293 409763868 225248754 901286576 72377205 223433371 598811260 843002301 78129799 142650609 217677210 280041608 819221030 416426390 349709954 58029608 326191168 915549864 444391412 66105397 795461814 783059096 609119393 297739049 600746132 460324304 192606918 124854739 804638832 423915610 752574955 369151112 268487038 30183739 749188800 816685346 695367734 221834686 849320760 854831786 473381823 111366497 551274408 505586645 940300690 492461568 398058042 253537279 37790126 390942566 658147781 672526343 867076653 286440228 958354131 55976918 713320638 314443115 302983412 923182573 931205012 106379566 19581969 830766014 856973977 235579579 646404573 838743616 489917293 453035129 686386399 360613773 969047438 674532911 282349485 884673045 354776944 727930276 104202771 650888710 618711412 725489159 171496700 615233079 105949194 50908160 768902509 165673552 483663273 667629357 388289402 282861965 355627565 680311905 617149520 79833217 689884609 326182159 87332180 668107422 491221907 899514081 812333016 670353466 571143589 562039390 200887496 754402649 268900022 953995428 631188277 893155918 446968095 101758751 555979462 4114396 9727843 755539279 847579298 604630318 642594871 76696026 590205228 142053183 682149833 921268871 180102537 354007333 879326875 246851688 579814686 418882680 537964390 805650804 99577804 911514547 316018141 262602621 56353183 688729530 425008073 851092046 724590766 703320426 23826110 401165857 825092240 442151382 357081760 849542629 689101791 219961380 137816761 19230792 273018241 55372265 903782043 917163064 246848834 156565496 517287843 392033846 777466194 923897082 715107351 702983426 361374439 644317641 356863236 509426655 13011050 767093895 27409368 594005798 978596024 596241689 170743527 938022282 788085483 38865141 288987373 651462516 328668946 522899662 801153303 938719194 703899143 695851431 222706830 840574116 836292709 119762209 313196776 94452009 393315393 475277290 759609146 989507288 428296288 684273966 444608896 63904553 877621077 347241357 114793917 126243043 839627804 650987864 726266463 897449950 883254062 696807276 230112971 591534856 903122306 276874972 212678584 90302994 607565927 437623338 212400489 48766341 501909076 477968575 451046657 29289910 938727251 333354011 101960899 782911236 703948948 437112862 353043913 951215140 793128969 449863066 371348339 744252176 44085614 782951860 121412343 917599152 497626164 517723386 433713464 195007959 511060205 678061194 980605732 585844854 799162944 748968943 430223243 914132195 73370209 724670060 807875986 524266949 742746790 726845149 803016047 648937372 617571308 432464501 422597699 929256152 733366656 383545596 255117278 210755613 273589905 917679656 2474329 592670882 804333265 991865450 132470902 679806710 775797094 762611695 210547644 653284935 242335792 918988834 572788240 608740674 386029284 824237983 472077072 677188232 80850021 175024323 818667664 449705920 594291408 563530855 256463618 548532049 461963072 64294983 204431728 547197618 215333811 590870354 724562867 892511747 358332445 324058090 659478749 966100317 14247129 601909570 360153146 177278672 106124714 120835118 848795575 863696863 53411210 671750719 719562067 135244846 277412974 798827922 484966030 908381873 426767542 186582178 148728478 886292847 566209348 109758090 614185988 957827330 203973806 147331707 834539337 808523417 81761869 213886773 955859066 146643899 229433924 424706100 353183380 717142498 798548292 389721518 869818201 916055258 383513760 306542648 744517182 216320133 936260802 35132457 687180149 4235879 943099948 966462761 834028285 417150880 504927811 243851509 996878850 162784053 547992474 869051844 41821660 259992129 62873042 807655188 322184345 586936662 455648446 874833388 321338160 659489754 782488599 335251608 566050678 177536815 536456968 425406735 986448674 626167312 331176956 420811630 352808299 817316869 787878686 446482416 387045520 111765985 240620933 788076788 375815908 645906534 97631815 578276577 820841463 477025350 52370378 14445803 932392377 2075869 741580042 165759031 503891190 922948130 35873991 655722000 870632793 608805195 493388266 411632794 713388766 649936904 168408882 421408812 25298381 770271224 100124185 154057470 631854290 6006327 614890733 980126897 23325080 129125612 361560945 737181693 193179734 368435835 92798692 178900701 419078143 777720714 991588751 829820705 355458776 464881006 879149580 180550969 255064170 46365219 841995365 538326976 294546312 604213339 243172620 323448324 790136204 311868971 438465869 828363193 687205840 676966252 678044393 954859658 734796431 886010541 279572448 541984391 995600942 801865325 540095288 176221123 637181710 73224335 736493239 564475460 808954129 51580771 363178000 567367234 918651959 210679850 930394064 125820386 150842215 708753239 599840130 554454501 567662799 218048682 26773861 228962428 990523219 991970002 761853258 855195590 575893153 814815820 134292302 153321205 523556880 727981411 893126135 662026837 828447491 515895342 159479904 609020796 749087203 818973186 729971789 926472876 261600239 343756223 196134156 6503120 25887460 938715449 117472432 362367549 384062391 927982507 555890232 606387399 474555641 743664413 187639811 743544358 572883247 202002243 552544788 677330356 157535534 179525765 546501905 721187475 306328164 86633100 232710981 406446209 714638064 217080826 382829888 731228825 870804593 623971371 270397826 97022002 676662225 969597355 609530556 56887134 851839763 732711607 947425070 223876624 475648365 606599723 216887292 682694434 201026162 315332459 133672878 880657849 387685200 683675519 458159286 271260456 760458374 362361934 581020963 125590290 340632675 602653366 84773589 58559524 953368831 126130466 766283929 691459756 396729217 93249267 957230025 133216908 574600477 92922279 989995793 590083134 265061287 584107321 669864502 403494910 1957474 835319093 626949450 250623471 398623805 812880808 178255748 840968428 384190634 767249099 570570596 964166413 434726408 290729504 75536827 823185129 510481931 224554749 200057952 180631838 345080968 583367921 480306196 8034854 573395885 225062551 422148134 796341552 584223121 596467023 541046698 243997433 21393151 867148038 234111549 453733707 211119465 551354541 385356754 393285232 282690157 603795921 594362145 275406169 844417585 400205947 40340691 53341057 729849677 270707798 165236950 464827434 973351751 749675468 33798407 215435543 663381501 859866192 667363065 307150360 857144580 436883020 17032426 808659991 868235329 57233767 930053768 882893566 756402947 471565191 295682901 647900530 426484118 435695466 934250404 515592995 77405596 442166873 261720906 675339885 349779096 171275675 1173544 912780489 709118333 627721557 467183111 824162328 406022641 34354550 320560828 668595627 388535274 417712838 6904957 113375781 92569600 939122340 342967951 822514308 746168552 826419915 135056675 706822243 7049409 545068856 111241287 446430201 843648963 526882593 813832128 220678112 735776354 687778647 776339123 7421127 580460434 372004109 258673071 999284914 571809223 473118481 969246158 81476891 488759028 272166281 196568538 137683692 544344336 610070003 365125807 295564723 530796148 45977682 285405132 950623840 627483706 672777545 113807627 455985487 959474779 208498894 492242212 340689642 928493211 422814425 905766369 39162111 516175400 388436125 753918066 267799182 806773789 912838003 48053425 729292286 319384289 572856808 123189243 879179686 242571443 13433792 120869756 745095232 621624339 543600309 27234599 39993192 293624327 714561654 917767288 397474645 340296040 856150585 319343398 905509435 866920696 274919251 440127702 451148627 533092324 614085304 640375863 737183387 548681429 943224062 73290029 930764052 721494594 824845352 897568756 929631888 301426066 43579548 70056655 927173257 338512587 13103839 604203160 931020281 619350698 626427342 666171804 45907877 882345180 788147695 841790337 365127989 260094257 505766424 584194707 699259711 173186911 196698799 310744038 409499252 447325721 688890579 434363359 302799839 768537546 722367966 758111870 157142366 663051954 252054641 888847924 849622505 815960052 217438630 928552278 312819913 131726495 305030532 285190648 539155999 333241859 217437837 308967110 594283359 56434901 642360210 293835893 376479804 39213673 779213831 140899765 915026290 343312313 499507392 549221940 264308781 679718503 448444533 149607702 576629122 353086732 212285332 202048500 729725693 684606103 988034496 74129324 78891583 496303828 520196473 314418315 397360255 124945049 161811525 572515924 75187370 135258480 714585458 243088409 538207191 212513501 843670015 729828109 185349293 935205076 16662598 726338755 598742048 454179760 434104385 47397846 585404558 921136151 343606420 33089740 715834025 614058722 430974010 363677891 578434787 458641056 93021714 281702990 962963130 972695928 389843046 946446884 49822278 107628568 182133064 86031874 904463536 85875748 902971123 355683015 350325032 598446818 801105139 731974402 802184446 160552195 960578874 558781641 856825628 29697912 212217844 371467013 855513594 28328698 542898959 191590959 637878526 246157873 86010265 260242538 619329830 618030613 965673318 519242593 874948559 197497191 958080122 292437649 604475520 769702198 405715056 638913057 958095226 846991914 810123146 982122160 140097317 543170143 313395433 101203983 644406916 854850229 121225586 981961629 935597293 237982270 667613698 872171524 435367386 619584517 832486732 538989431 223516385 744168105 109221252 9311234 815856016 611664005 125988258 670735257 603684638 973874620 109986510 966422299 129685310 552656420 37032131 163432766 313352232 869429879 477873218 837183803 151489455 361331538 997406238 904132945 866205694 320099302 20947296 585486711 820364676 949697766 985428332 364022343 440265087 563348871 495417140 281274942 763808446 659879228 151972675 493119722 774098436 881370250 963198364 565573366 881102314 21167116 564340332 152630533 644674649 929856662 844351025 327385831 674783783 678807304 946816807 130624522 556761426 237955218 631151486 126380713 88217619 567830420 736679711 387884014 108301650 910781 103750523 220752509 119184129 287706651 429723040 479877443 592531652 931126990 230029637 425856198 728242505 378086561 488398868 63813719 274979946 78636470 813899593 90589662 870487949 282357745 132125252 616153539 818120630 74914391 234829860 185276143 635167652 488727960 512987158 580288667 432510204 107361483 505103424 83999964 119860653 512234503 680730592 994620712 480823947 213585601 580688609 647198316 578315355 180439709 341427011 422231638 21683831 19373822 836851236 717814196 607097717 77995173 762355527 575801307 964720879 902332228 24031371 149328280 175645542 119576442 673242572 679891543 637834685 689324626 577889441 733656949 394973610 181767945 135366953 209102236 268785996 418462120 919225321 884907983 494230785 333749718 906127860 636940124 244018748 530852329 649050882 367604228 542426767 882918634 814529799 590018476 227780128 935222566 660847017 80929249 503104367 887410702 566437900 543562237 790844099 217744452 986845672 461268620 231839372 784083292 96997743 327143646 338695605 810644393 826717087 753263712 569168439 62181243 542889640 77182033 572340114 571729920 771115527 225193824 712516816 533865370 537171091 139879832 857743126 905124770 384999799 325433002 598697659 816728780 477264215 513457404 704055748 773240048 95527226 971274090 411806535 750307682 129489219 201273224 196635151 426002831 265348753 245482765 761798852 137719190 693444557 323613334 697964243 86140058 896296310 29065983 136584356 897104247 571223474 759029313 822937667 425772232 909374809 138769706 462678348 397718459 10282198 490172058 833942961 52671555 930795607 227706676 95834438 352154479 198117760 263373444 159785141 83274869 103466033 756736042 64092173 858104520 479754899 421980055 184678290 378098485 642011342 344421680 690485499 275147811 715647837 533485870 728164728 953545334 363501517 269622759 528787766 73060923 342250431 375134551 591216302 474497965 178633363 641254802 356697209 113474501 874212393 547811027 73132103 260678279 839397792 866073586 875825405 551071808 873279251 192312879 967064662 293967661 55611543 821339074 855106336 555584305 372166424 984122603 403422167 272529651 169936307 673862637 914423287 882452439 383696283 966214797 881614247 756911688 661086294 821166877 209785423 362429350 147954860 937463150 599872662 558561877 468860187 723223915 998292607 573913052 85086562 458739832 582680465 756048466 291974352 192499711 66417041 413849775 389974098 936244127 380988316 749934478 276996575 808053186 814043842 77734386 677481571 660461705 293048261 270867930 971809405 486331677 900168811 942639040 765065278 384990357 70911577 679689686 669523551 587216319 336534208 948402178 991195822 166866797 547866667 418160353 362172216 956913831 291554964 354243938 344681117 848731045 313922702 549325120 494981802 822027599 701604998 500562949 781349085 547314731 639023960 514558297 46742737 461654754 459492743 322516265 152320136 484330619 750555719 354888442 582846948 647230418 780101805 466675507 669668416 209779179 648614176 19667160 826119134 420014302 322702251 773648360 425635306 733704706 741621896 154339126 971770923 293638387 543052319 428064531 144008560 355614095 900833451 142576107 642061321 585035922 967331164 136941062 332553889 577747420 461966538 199328074 363600960 237174172 33610738 138327378 354717318 305892215 564513954 742960253 887465682 932884179 913759832 209543678 780117071 246740151 349471506 161274707 432566393 82846481 548515732 312492596 719825305 525809783 541000031 87561529 47421913 952152952 449529187 258893288 3792940 509227302 163979828 339413191 434805566 708187629 877460293 676132019 166585093 171867123 244233538 588108365 361056406 69278932 57262579 586123975 236730122 536235156 907186647 561050356 378457364 733647407 174375403 785583254 792801875 137245716 945575568 816323374 124906055 362826946 659123141 388656985 82446839 67791323 58638437 180437358 447863353 919637549 234469088 216989603 226054258 434768044 905143829 810319742 931235632 383441933 107242601 779278167 244651920 417991078 264472192 263049637 38879612 339644429 780598863 169479693 819368179 831526890 285555905 528100441 707914557 58872324 974227760 96054599 291245270 575028917 994518522 95015278 623228028 719866499 287707825 727658118 992744438 152285508 136200443 53713828 942879990 354464223 4084954 171045607 740282254 487569708 249004653 444804514 942707223 782634229 553672320 883406041 806388196 686418288 797015504 673929122 356779445 468338766 478333500 893637292 848691649 732855830 51019330 196913440 892869345 878319898 451534238 46959665 203166511 895199672 661082282 389965433 178960990 282153620 760868233 679736792 784642803 825306044 893722932 755470781 516813560 15841264 861240878 166446209 929638311 421622130 356296380 890915757 102476380 627256659 296656417 887344827 358948893 514867742 973901915 488432638 818602054 944039308 685848200 964370226 745248250 55404872 224643993 51442312 38121563 170877146 942320789 149043567 411320273 580846378 211373324 579624488 808054843 996436775 378710584 463951072 586868911 803614043 120713878 237233375 849323758 778388706 356729049 490232146 297310503 624939794 926137528 162939705 556974272 659379979 540175641 149527184 84118706 97663874 298222008 555181413 340107321 261878197 372586381 305254311 302597747 686570019 40057276 960096217 377073027 160713012 984910712 933076503 334314819 184161591 156528202 382220482 562553155 628012904 723138339 406238948 545439487 859249051 342900802 374048181 665397926 289610151 169443909 58896551 344179965 868159415 965723056 662183817 835766326 427475492 258582128 57316904 958797642 809218420 342825701 473251881 50886779 464439751 749443999 925381106 793124087 952611582 609611965 849480972 622899983 591764786 731329592 76190432 248751171 785006778 912681074 527966589 726293055 672202047 698843718 169937815 873880205 873742280 157266775 307908891 450643407 772780754 267848097 662256947 375006467 67951040 96891613 823995705 86246120 30762209 657466755 767832693 817624493 21707581 280764228 228778085 107105616 575007275 237058342 315496750 85036609 389130400 523088492 679310384 123349718 169482736 573223249 582119396 27356953 134777712 312294413 382950234 583674339 554003803 219843278 790189666 130259344 879555937 140646984 303890505 981274995 426240345 283268083 994351134 357298286 16360089 353960848 515649540 791446130 931801427 576556396 94847903 791370640 238862708 175509529 205064290 508182113 730560171 208752183 124319013 27901267 706763811 848528100 313507509 34458753 567961914 924761057 609967781 437334023 337622853 221549687 123464394 605848534 213375916 255339649 962033362 381838252 177529380 495555728 520589895 595329780 103987873 54416879 938867259 925473109 860159063 896172282 120599898 856615834 37676975 557896413 275646081 714464966 152773521 61910457 496571222 3307435 605222428 165699256 858643964 609708469 548043018 471501208 911101400 605151019 893459154 464690313 421274186 971992706 259481470 78668906 180427264 828640923 665746786 470468509 689396558 586574540 802174634 875689313 752777976 409902825 833371224 813992780 261411023 615946233 641144093 348590271 658404165 359268539 122878747 19139288 521760089 344144066 79904619 80554398 259765689 557018686 985070494 239161775 690597584 736891839 375183105 397127773 580279027 868121537 743082103 268861271 955890153 74568395 184778044 662613806 878083737 15251945 230726079 922798652 614147747 781504939 59260286 107192341 188645510 567607133 299331907 160909414 586873941 13169966 264995122 604486156 661229467 124957192 37504090 271558353 631786265 308784165 34274923 950853214 970700730 883008661 841962432 970941955 4701855 931875061 425055686 842503030 17683003 639661610 844638775 28621033 723210107 644313389 481566323 342861143 105470161 379351707 848732712 506622377 229461304 270305381 967116544 49607117 790752967 547419506 903863126 410226689 547364366 180260506 445299476 308591865 187241932 492914052 394923576 610350595 960852557 63280344 46100141 498584857 304292998 549210047 407006682 979172353 548624804 374828066 453651866 652245209 86875121 513438443 308513727 861906475 404770262 503834242 186578835 447235753 309379988 715580742 360971054 75261195 909225973 111475070 468307853 918704944 2443650 185753079 597020735 574135243 20296369 611180034 941357753 678612686 258844470 915362530 506151645 195512138 33546310 670998252 669288404 401912535 505174011 797183107 539879068 401992612 246091604 380047847 511160831 425414721 780120974 549062925 741395059 438327916 951962597 159412018 618860490 689880831 401635371 164727080 811324447 702851337 328764152 95372512 618521545 480719973 571520398 934326638 251342938 481507176 831253458 471525331 725451789 984232422 434323382 157298365 689898182 39699281 430991176 463615805 502891235 93679524 979773562 26757636 232867031 38523264 464154425 922195659 786310273 708609546 62615249 981505478 690627229 580228492 983881782 988172321 644102383 856163776 973254776 461109261 614829662 892074954 377060996 853857178 407230020 639859148 439889421 653676064 909810221 256635925 433396086 476346472 38054331 586487492 937767361 189800133 462821225 480866325 393614497 519986399 882455513 352457286 703683112 236074718 259682257 416037031 892986862 521126317 904592327 912546358 468982847 272360243 563634468 953291142 577543361 179064467 788506042 57597485 927800406 511584752 673808357 137570845 272344612 616728636 957022504 458974016 261845982 766275817 967066635 794337552 840741574 392105312 694249345 301408052 815201898 298026002 308777822 401406197 453572047 67365867 448948101 994028554 638191589 491655217 713109244 411349012 217445372 839816320 58932882 241616802 703487169 334044655 97719378 69478591 99180792 227641822 969835380 756163604 99438252 405077174 531447758 881157920 965934706 951892014 558081509 879143839 40675649 80622697 762789774 913654893 742664526 316683939 76629955 966843780 587830854 486463587 536737669 501975200 279514825 292556685 355749319 20670468 577796995 425547705 697432493 96167653 19712290 569953434 88217719 6698660 851729724 334624852 335429974 292779846 153923225 807066144 881388550 406185053 517273979 509790269 920627344 263182854 933210754 720107472 903784376 17987675 766396976 608482400 93884996 976467358 313733377 878901957 516199415 896064859 313651491 334736229 647577203 503141964 91367088 382210071 700746310 627500802 53492419 89206993 872979659 845151622 428477893 493270557 216088338 686364447 179036453 106128592 842087231 810690662 282604228 457966529 15691733 754806848 955810065 203197726 91315379 946051358 110842027 396628559 142676760 523294767 581297733 822256756 676519465 819692948 229497893 962882986 525656494 176897822 474541200 5713210 63087708 412270689 200795145 47583789 321545569 171027309 220475993 309095240 100344911 892998873 972577140 810976669 685269154 922738626 330127321 270596067 230332474 120370234 413391640 432193492 77752236 440658887 708819720 445706627 998634453 205646277 813614241 295049848 952382064 874109411 179157029 83103850 172688508 723998597 670405941 365850316 828118459 335909980 159600980 898225724 768755410 751339949 382454585 376447309 780984332 507345140 413848057 573636674 96700407 170584727 809120483 854871806 919634033 743982621 465681680 850955519 300334448 60271160 310740709 477804644 590508519 5184764 355834266 731791093 430727077 98477049 216261643 426266978 352463318 978431416 725593480 628203354 306674710 156156178 356261541 886320515 419897745 210712453 669690809 768410805 486983373 371502107 457942201 663248634 218893101 759143406 440217438 366806488 665323671 543552897 309217389 929284138 574316074 391047820 70923920 397221005 776769175 576355118 841108052 580227054 756211780 970526481 416689611 670785981 132022164 785591435 307776992 279498021 627812055 648553972 65857806 683028539 220282529 164064110 261461817 930827122 270660472 793014593 866502356 57707080 742668754 531042357 492091653 147019614 540918457 191413769 60223360 996005042 464044845 726015160 389985318 692147827 27252553 54273024 84033528 535091427 13403636 575788942 552631655 547791427 870221850 482096531 884975753 775551805 463737027 535814765 243664559 549427935 24827383 675683124 623845939 185024635 699868345 76323581 291260254 503126149 299139501 175715408 820435640 204378298 282126907 728826054 716864261 876466620 634589362 894515613 789117500 459398440 404165710 172664926 603855163 650880121 557479712 963127111 568873945 295056693 446019146 144551298 197683759 351215836 741701280 217785364 240210957 554780135 585087219 352265483 6059499 705330638 528288403 482324985 911807659 362648867 615156196 593774182 127774032 525460028 887893096 296114441 752344413 764209685 765094275 775997711 670421228 291729172 678347498 941744488 985513819 768410803 425734947 733244132 715942855 922292365 460096325 838921030 747520857 736810136 899999163 75101824 945862647 500967790 159952804 555111668 960419071 663591353 228479573 105559995 359280690 520538347 41424342 965584554 22469153 408941888 65432000 941060013 322871754 647400662 984343573 190153004 683775883 636031894 606207995 142095886 936203035 172889076 386270729 463825144 193176846 354554283 110074881 515331645 296643425 870270332 862603946 590497689 804352318 869148382 817253653 273060884 831352912 449476082 124027280 852520200 724830481 754210262 440337672 979471485 44012544 818394961 544798272 296923744 337448029 125029765 138409293 807397893 211170201 459321737 710907868 554039685 837999522 375134432 394184849 595145798 668313434 175272739 228004488 296302542 421554863 86752727 321011788 803368490 969722031 782953878 117404199 941319202 325332278 109906831 283564721 993519995 3372900 872691789 89168927 739923680 938588488 940865944 44328398 99126369 821286575 372676519 882643575 229965562 286534562 744827244 650449557 441911001 854833719 829780698 835076987 461660591 788745374 140866625 884437016 865891113 603847757 580070073 454787178 217082229 424605221 974904922 117753820 718769849 569257472 86127209 752307459 617895190 47466883 317872649 597814283 265666944 106627585 10227719 767339087 463682406 411906864 657995316 557125396 814504070 799681577 269924247 78784463 489691736 990291320 867463326 834744548 896863987 130886043 979157114 64830465 160492317 312447747 497242358 455111295 374814556 264247910 627050836 281358616 460175281 357218206 682030760 760464468 385233198 703822509 864859940 961387712 762949088 824625327 15693989 304492779 913284403 147353069 56378486 679197585 936743510 929342412 562964270 557792618 725117944 199238507 492150997 710911310 203892573 245816616 805846475 201717824 134194301 918679324 718906835 647528795 45534190 235222478 733780319 393030485 414036536 973985231 867321329 254779346 193211547 846099885 900064883 734220848 36430837 378836203 155063554 983950533 683791920 798258574 827685621 460063996 105302012 551461002 100369736 435841879 395125663 362928950 120737249 740367774 799993020 275080169 457679640 199654259 416402725 255746508 671931900 752230405 162033613 617200660 983116135 372263180 792247611 608079508 812964029 47971649 588390677 632012397 37122256 987564897 792314587 428601378 308949018 277208832 497678335 448561610 76831114 521128635 351225393 697264024 95131260 547331153 376605539 664427513 188868316 571464589 827882780 191251360 955348847 184604246 596911324 840412273 841231587 415952434 836555519 806697660 683907341 678022090 569416832 953966826 587646604 908600352 37410296 345379816 772126734 531303404 330708097 862215239 351357824 329057408 828085082 291964372 438923134 485586487 861525106 574051006 23489977 325508412 714317248 964259856 964267536 214291606 225786928 909557220 36095374 227662114 122356677 835177952 661458331 317085724 100051204 189651547 875612190 263792265 729993409 435713120 213173259 300477714 686203593 344020144 64405529 473498425 246565979 226980736 55778783 356514420 819893592 34631869 586353760 241888752 597044617 29309331 277436737 631770206 917026405 832497452 266717423 410532268 622254701 963365297 89034403 123704996 373883149 534208633 129444139 133727480 357794846 986898482 948749005 592714050 907907214 298091524 930940058 689468915 199560677 845944818 630157704 701385994 741456207 725616201 706776781 661007216 543090621 640542386 505211946 421716356 841219204 556552427 400363131 872789546 543472050 964017770 932279809 305581579 363654663 374080979 944165151 975537266 808293201 379056664 175515602 525147013 272077087 757438887 85070075 670567001 606629386 593446048 610058779 499028643 172908303 783830733 842022941 812700769 900968958 990903167 540965905 530676318 537286036 739617047 129614113 659999900 575606693 300810805 8684686 982369959 783631478 89872104 957426840 274400078 171551570 133038837 826676713 424976009 942136771 704868435 268096646 662631663 837805404 153219892 985905144 145455633 256050136 983343648 235961836 882945153 464427054 511935797 831006984 486791194 558615829 73684489 40656974 184226566 107282219 345478192 699874654 467483432 211674784 578937025 293493028 942915564 806242501 272466785 341214092 78099900 12806631 937257940 968400387 860610429 374773103 587857465 142544621 913878572 684505998 114589884 901114089 238238388 595085830 542305673 594809771 607259559 615979780 277169017 114243941 779658886 903622973 122737902 253264605 962804982 920498618 97493130 162217683 218332657 563499019 826950327 517623192 976628161 620813525 411607659 129008771 858853152 70742434 457644891 867235845 850686061 100061169 464593859 330607433 832378224 463132665 975285621 592840296 658738202 75542718 620063309 948759912 813773619 431374379 656546663 699877796 781025507 471304262 386041900 428721332 327780231 876110266 879103856 544574973 673995015 373166192 262114774 421618518 591843894 513433005 479433277 137537585 132930456 359377275 614899596 111689503 953477427 710469888 880675214 60728512 137485613 260420408 92937224 379906222 957839953 439496004 840658500 695009474 867019146 172183904 671046885 78685002 469868518 778545684 321681110 404750469 352203463 410570895 931840993 290388068 999249507 391452367 672170202 873848823 693503341 203663578 36699397 382892450 349449752 480340740 275172174 470274844 219597932 247610765 582471262 473002791 490706753 338542347 739572311 456043144 370008090 28563062 615278570 553475578 407060526 862448865 259288556 754376425 164431416 545782104 176659959 530976407 33653937 364991004 950748899 451268166 649552726 582918007 890935595 913304035 757126993 964014456 209529925 158790886 906176124 774062587 678192714 197642599 194966862 404372925 353564878 537680723 459874315 103945395 703146186 637772571 194516122 743794172 350757489 61468983 673501846 923428777 796715956 213416718 119142577 145696807 69984590 187100804 111110923 76510872 890759813 754835404 880670824 374096259 745241832 276855210 565939805 582623589 30812136 569838139 423799536 44302582 774932469 259779498 527372159 556445519 943204268 965380217 72033080 875016565 976256806 31135684 352451752 904861285 128877701 340994919 376248374 834774052 342707570 70169566 863449129 496738226 209425337 740566402 595852005 694705426 92865885 579837207 599726016 727849055 923837926 632119386 584845868 663962112 926413426 384601998 951382046 712863680 330330133 517230292 275640020 892809187 242384511 495238239 389786830 814554435 738848609 478694503 574671870 853505165 885123065 112850125 9024498 468286937 285092382 334453383 922447591 639837124 301279804 198556754 515380662 307014959 489740239 868102692 297360846 40101731 581405814 348413270 641484998 808812799 623240328 876047247 848712935 504261316 465567788 575014830 902252504 918331970 924528693 551790751 501669987 932874701 668863847 724349201 312578567 657676378 143389698 583234722 642168345 422361565 77502745 780695442 395637025 742889083 165307220 427371914 815592218 94350946 135698956 913416162 854905263 504267118 360334666 803194462 290929274 92921061 321384699 502464013 341495394 292148177 559964983 343661066 519191964 315340027 613519270 526143766 229306451 256172601 289349616 608916641 595571563 693375746 12122598 192244223 25106982 862959007 776456013 115275123 252877423 193113201 527649232 130195095 64730102 261439486 949943830 564677321 115003605 352425255 393916718 54718630 736719144 468742579 204355880 142380582 3570113 275519835 908471520 961367413 719929635 167053152 335200874 581040751 932054450 34394937 513795093 698140933 161949690 277690897 914431815 919523147 918876265 533039819 561624130 134196248 903988240 112767492 636560750 945927018 258690360 908379102 292637109 328152632 596494712 26595646 21136599 745286210 916560742 281103898 34308206 476289284 966722385 148662412 508735589 783152752 631633641 289938713 67554109 924976580 457368280 448635698 368185175 945840068 845777364 207952956 414858840 922195831 580372114 81086196 684190863 504928771 586000263 765547555 613898916 530197210 782506540 122413214 627444060 200926740 771478566 988655867 22256146 683604836 502158053 795864371 649388272 724973137 760433292 632382376 77919327 318114944 720362398 170635772 23850840 844741978 483339164 687027720 568088279 387157872 441717157 855589673 445472250 677390680 700371698 488773957 431159392 954245948 284277323 521497978 28129075 64069718 578186924 577422774 446361952 822774624 113274987 629680382 308973742 334295659 248403566 269695282 520309303 900862121 671123424 184202308 35226372 64420529 375249940 8426092 551371580 236860308 553066861 223954559 548866076 923235060 69323146 122283397 369783626 148613529 268256907 547452417 924558585 763967315 815226625 785544505 497100105 166534947 808673950 75222379 987898836 535167581 356227419 627413171 307446191 973703702 847103873 91604052 743579049 313989109 48903172 341568067 353645946 535839037 54825576 372958618 754145570 879544992 542594355 773845203 425550672 386090086 708664979 915395969 402126065 290951505 564374824 135339326 956051643 661096504 349751571 84178952 385135076 285988884 48526883 677501375 478430559 755816750 306710130 983379540 666209708 53885114 321300981 888794374 641377921 147373901 616506145 801453393 506941983 610536117 753025057 682784361 910792305 42450550 354970942 414400309 407588458 467580508 410032868 766871049 710398347 907710679 648938615 931366877 776913541 2134756 527859012 879920811 233692866 824025960 532314578 594503435 636497742 193391061 339811625 656664412 146682575 469001210 764186614 602469267 510141451 942386170 374105666 367930506 223467521 432969658 74736845 447297182 481349860 837673066 744251577 269467052 3918519 820920970 4565531 827092523 788426067 976126109 530866807 309983161 333609423 347190346 331025222 534891441 90945078 162310309 48964604 65344737 376841650 239983804 144917775 150352904 42517321 770423326 65105704 368179283 290000277 622996106 80172503 254258119 819187355 374362072 159423808 687252381 1211672 191070661 248297379 111064583 608237609 210971870 639976262 266596180 438029310 376150282 156382473 398544225 871056001 30898090 684915243 791533154 63103830 942595279 585373319 732266550 200871537 239925295 608691482 143823046 379248582 769401546 374219843 102480882 484663300 852803776 678005681 299081199 597309381 58006605 549933416 402449699 738585572 217118844 312458539 377307808 738348926 783262824 215178141 579298765 19412667 832610373 440988344 751113057 63292400 281111224 9912204 835661983 261221126 698279349 475270741 329825406 104494815 801282667 979404214 861689638 753311532 622808106 486681491 513857210 626055930 519666475 369458670 908812399 424539637 354560093 30986841 549357324 109125582 105331 246277522 2481193 293753692 48132112 377204405 794089562 432791340 101358095 251944609 377508621 687908685 814076463 234049715 421768104 591581237 316394680 516351342 202613790 958422032 408788202 250190449 713561613 604887554 461185229 235572185 458584005 855361823 10524484 293272082 493222494 885642597 272961247 866772831 80669619 666928571 491564810 287910156 580470216 75636050 144253775 666970929 688252497 48642098 961564607 995831040 704505773 593624767 590801568 984547552 972467244 871689933 192972446 174536466 987699353 211017553 505469255 791259383 219345760 624026166 679722818 636408287 82557041 938335551 511675706 210310393 31918533 648619543 599876690 481531798 567325969 355686564 8160261 533742837 719685382 97937959 313048165 995238849 577582364 504733967 641722611 312891590 335428250 957244437 51601753 250148829 965916664 570043269 168202061 129046997 679211141 131513446 98608889 510272478 579459723 448998816 846731925 409704849 949144553 42318009 904135173 684232287 485806585 72197136 144519460 418398153 944330247 334850821 334235617 885713046 770596170 999104030 411718986 269381328 511061732 229072404 128176167 390496329 513765948 778712783 925720335 107482391 270557535 518225965 305784671 134507561 706006295 186903973 836114205 341289221 473361471 858562743 289988816 153320240 159724065 321495257 638533874 848982824 921754915 589443257 871821970 224367860 581839207 817099933 327154732 881048151 290403027 686822605 321082259 919553389 420297004 610209341 381585335 355623171 58346235 732725207 705277343 852850260 769528149 133324256 839827667 488187651 144958976 317565061 351964836 918983126 362718249 388729346 443274014 172659381 527470301 581671163 471917565 890560729 541726316 261959832 220064705 222255375 529947139 682456612 8985807 490920685 559949768 851365502 562866709 52592714 186236769 310342480 57160135 857311803 875206339 660578935 193671131 489627268 379721750 294103085 132189765 425222030 66047478 500329763 583393778 255689625 983978618 396182923 172405686 903437814 202983010 402626684 548528952 547629593 371889929 61332588 286208833 285479605 72282805 909953747 384043988 610104734 853433724 148118122 947120617 117144801 625274019 787350283 19320470 752258539 574746450 915245567 282636086 942724602 625661336 480762790 753414354 189639760 679593722 832114014 255049847 706107521 696630186 382005333 425590118 974083051 344592885 953027723 856705567 152736955 338003904 762308283 360690798 804852747 885150625 884679237 643051458 700889785 299196380 730136956 23927407 797902158 727777038 944763142 742537421 451329117 575207778 872184607 819415701 361260631 832616535 946551437 760374201 732589530 883888656 130483285 836572165 700771783 799259958 464392580 493964131 929930325 958067323 727784461 57626205 514132677 561407 368266478 910505516 178949153 668743704 330934273 350970913 815818741 505125296 147327893 87813056 257585367 221067154 760053133 200366054 780160192 934734128 881853761 849174803 980773503 568190454 152497078 70050880 362403058 394731851 562457942 844139064 403165943 242761550 471709412 29446725 203244540 871341362 620603042 316509730 864320550 573613899 299778373 945041437 559579971 664445814 107006195 497496025 499488026 970361797 770910054 223160361 471001656 967351286 61908758 800455805 422103262 790966536 441510898 483144553 589537463 409252051 583733714 760605929 848280551 403560560 683241987 603245225 588283144 429073957 628997869 451515955 423053255 633074679 147224767 424155820 930759711 909802142 62435548 420559103 263709080 283143004 354888300 439428406 240961282 510415362 812389751 981349482 41024921 220730693 333545554 19798538 90691230 48499245 694776969 560881175 789443766 518598223 689417634 739871930 330953067 927773154 676547096 415827265 706625660 217052318 372928173 306589356 260942957 287838764 961773763 492298391 627073280 346076450 308662417 188217424 733553538 244464950 98189611 405721641 772794026 601489759 849797566 412606555 529774515 256769977 170295356 744855321 164387514 243235879 468260228 54754426 957804444 767985252 686465931 664953785 193913708 113776773 528914943 9409268 188039303 773320575 3279050 293576091 621129922 725976788 21497017 650500710 501106831 350975544 611910998 532071389 134552793 754705140 152020028 664973023 648720127 669244047 166673261 408613626 259558440 501630219 925308037 342973948 43074018 405428153 34139505 630182443 554345415 533268689 462768367 641624146 4453226 925020747 711393626 447718998 442324269 43043877 485472719 951836847 395015006 860844049 742846067 935838015 99072597 326167225 344904145 877430062 417507407 892783265 450247741 276661614 625039887 605666590 533038261 158336645 721401509 931285206 129874118 144256266 828355350 244185903 611709097 228161502 705605132 361390828 560661229 708850083 947322496 501600108 361346622 364608663 385799592 45546237 838782813 336270275 258883834 1783076 778321971 651079526 315078606 503209692 560913502 233669606 952976210 534649594 798268508 916629827 869936575 9096333 597509656 164819681 875391295 601319424 576252756 869166672 931773158 823334396 86120637 552565201 634454778 737298452 449096713 619350023 180064187 671614931 824352066 370161662 85139299 502587250 90308392 780837409 611285806 839886208 387268705 334320857 841750168 629055141 3084211 184887606 415485409 92898713 942923159 372700600 855066951 154280633 547791892 827457177 410316287 342730247 335772431 357009666 10103429 126443266 700309423 602648738 742954425 809865406 435266933 710931664 285990582 942369271 654053272 882850891 256955684 357476731 442950085 721448340 850499756 303610453 347139032 947083005 340479381 443958432 253619498 346697006 506246738 676170204 309863130 873861969 789373001 6720562 221856580 50938978 343455998 112844449 601973561 656533734 69758019 799240515 865099054 927482533 319500568 491778839 221649737 549284268 260527642 845987684 919692928 584384874 567616281 911837879 686640437 218908868 50580418 603402585 884514661 437521903 911946889 685442702 535331267 889137482 349539110 831272698 547745251 901447028 271720417 766449879 616294796 907139323 975037646 543567228 573953100 116455491 179512231 726630077 861073250 987262051 827148071 880421063 621611121 316363774 2835896 611218480 265964960 881388605 625805661 137794843 17044698 526140933 291155938 91105711 99204136 866752373 761427782 330318234 366666843 431321693 828928058 524956882 947346420 228479517 308410109 758430325 188161022 20935322 150891452 792049820 990534391 799384627 291902028 680011133 989172864 542703080 995009905 30452124 704979524 155905804 871357841 670130204 440395078 503689707 669114875 75059725 485320332 678215858 467883945 891663244 645830377 839001264 657227048 541816931 901698457 885200828 785597293 400894048 143295844 129452419 213496250 361683018 577878306 223280598 22938273 683078134 700676698 43871482 542139753 853476338 459364565 156070689 492419899 607132899 468215353 667204986 508427167 462376834 690578067 35423352 897780096 955225117 309110472 124989678 247903118 99148605 612402712 46910765 467741747 16341835 916582781 726818544 753705914 570546262 786814093 159518636 141249455 106698536 539757837 779519177 603576433 635223853 83972372 816437780 66725655 787174563 328877426 62826226 42000808 662877985 816447851 74328609 433077354 595409785 214414202 967548246 23286098 449241423 258995737 222622120 782496342 356833745 576683830 548093849 950561926 999870481 636424343 279414826 450350426 984650214 112240854 538535244 257822952 398844726 712306467 42730897 694618543 913476066 925230324 877689727 760377768 27052180 922194546 99547934 886914922 142793964 970643703 937878280 697278759 734292769 932306097 587140536 4558490 729539063 125012766 863218437 237160148 82400139 319371483 366220102 466653374 775686687 688223175 877013955 948968272 35704152 241203926 258009414 456308158 627126952 264128950 28262406 270390006 245269651 30223019 462299663 334790545 999440501 641384574 46849710 942618095 603607840 983867491 192889011 692543958 301769295 609853128 529185680 53826866 823417161 924763665 333504900 899669702 134108598 708794809 89775678 507088688 171938764 687248184 289409863 326549243 646008646 445207943 269988382 724190512 692422198 523912022 625396672 503662338 672694355 585026865 146818610 776899077 471135710 238352909 675809953 834934098 735795925 128604305 808064199 375207715 633498905 313705803 278749523 790427080 439233401 960366019 936704532 736304220 939648755 337825212 537068577 470846453 6813652 558210726 326218216 992235053 178819045 699366185 568077312 640953634 858916332 756562553 604561004 725733211 31804330 568468896 677343458 487390359 286840374 868833360 6065600 12406116 134395609 345568614 454590241 202620739 609829507 149817419 732454280 931455363 154420631 752958710 928221138 455546548 546289974 471321080 917523791 297864758 101651772 932802005 830301471 663353708 670006854 43687147 353405455 760198085 340320716 870067421 664230689 6377281 600225823 508277457 557337876 30422655 588029515 529929642 987677018 934925144 268057269 653946777 929249304 968313993 79657470 745460186 389075181 205177318 981159051 758596165 567366251 877155134 185522060 250599070 810655439 816083182 328373662 139917610 50028634 997814287 915451197 308227936 636711062 556985084 524989054 11260350 253896037 905183206 581247468 420733156 422954629 245301088 858687833 658884976 626918498 655286132 16049254 142372030 796248623 75717688 499312655 971561624 935981949 273970810 4492127 691710581 886240196 756549536 978227159 65688567 102194464 906135775 379119948 52418599 88453609 846865318 45395641 783502717 970033944 448593242 121702009 719562817 424458880 348271095 538027382 847650853 575961349 858912201 154247239 928633996 583624468 118653849 829640010 660791351 351265383 716818736 215007219 519864606 982981832 596122488 157274042 349006970 325923319 740720648 374284967 532075168 544929476 734231553 188693179 918254133 185910915 596201644 998834815 666940115 604403151 551400699 491449044 443965188 481075813 886809723 590370280 703298138 364021078 134850106 437010186 741748939 226914461 724033392 62616203 814791607 439913582 951835479 657911564 335454821 380441420 907480507 784707382 505476338 359263263 590655513 711512758 691582243 464166854 861800615 137684812 645822293 477315275 139555221 709848853 408980048 317851359 746209350 538187716 931309264 160090191 304441900 400877404 975935264 411449608 714730950 941099699 260760669 617554584 851640585 91386423 916976688 989229631 297899285 646479863 85097933 747960500 851417178 830022550 502530276 518942550 621968694 269429914 886132561 933997117 504768093 14349205 338061866 691907648 244901048 299452569 287125500 830095451 110828425 121605569 849360106 542021215 668944264 659022456 305417260 858617609 384360707 157734347 701448588 351526612 731244915 330102764 638308598 118633022 992541052 414234263 278653126 85731617 288284425 916890014 914460800 10503471 590146965 851443134 194200800 143932384 779724365 173196887 274050 916999813 225858818 500970913 743542358 615769768 686974074 507848033 464405667 23724022 856817328 1181608 11639061 659103264 83748492 94749078 712569086 594215759 247072482 740911313 24822092 917895391 280011572 669389233 438597677 281912003 673356694 833524386 126849038 630989433 371880397 943816065 967585415 135835375 244795932 105959835 545465133 227932534 157957255 486491383 810093161 377220755 77007286 248783671 674243707 951509552 579545416 545446247 452865824 166667290 726228908 61489619 997811196 748203629 582884609 198589022 135100584 149611280 861922926 645093717 626532981 809302423 126813793 618665034 162631434 559060911 956006478 123148812 864725292 781893934 384316811 73038689 527387753 790884547 265600892 525267151 310320712 729464458 424727442 2304868 842294373 496872830 314324980 316476996 459858556 381643061 679343121 641122851 625523650 43772440 484878821 716081777 661131174 991656563 937262120 155763241 481776526 666719988 702397892 462807723 409979189 243093616 111085309 980838099 52579651 966407055 633318147 58689183 521368107 695331098 370066050 525404179 979491812 190933872 289839967 474416857 257166456 711552111 235475716 496415834 495833291 834358004 439960672 285083934 121800347 845218909 178837634 444178573 365843615 998360816 167678240 339558641 940142757 642042988 208167332 274106945 549624267 137388996 914750875 284231826 178601449 824697055 733262475 945653591 505629380 208357641 341388723 645052531 337290788 668222756 113734724 616092769 533648915 864203744 181761132 305614538 462677702 38187088 722655397 425416477 254553702 481270356 769300831 898342193 343884994 52583442 725050683 978421916 411690693 842989503 114082412 383478352 703561296 277406175 945162220 237704560 809439314 430818429 457714302 561314777 825164278 407365727 649806496 18805006 533672045 218930191 819978147 506223921 409787269 800969424 332299416 490477118 289050929 565630693 935166002 186973463 745750429 666913457 724513108 366515263 385915457 796922371 811329214 356752562 136300300 186219478 217804489 584136831 131185568 360349576 124979646 75603726 386256784 982058001 121410875 645588473 11122564 736951571 456234548 759900037 817403368 365738452 414424035 552465820 167304748 578485841 126469995 781785487 203623059 539912044 982991249 226421865 250659381 85289978 49395895 184053688 616185686 665485677 440689223 90741997 886978458 613248860 125929419 599066734 585014958 585427947 105165447 400627134 410555535 63318612 753443544 297695848 202926481 316055080 859841671 72727516 830095794 839654527 670816137 210812449 856044318 420945634 653774390 446229681 208625784 94540845 237447304 426765323 66191820 489967051 188163418 737257747 222938705 787382630 479233613 765005447 19311953 272539294 495359078 147873826 157443413 26945425 418145827 378823309 60386699 11637253 450265246 782563394 303223218 236109147 530858587 824321466 263765442 593175332 926665265 549687139 917014001 247202559 699327836 161951856 726297300 258422582 393721675 534384215 105587019 782363947 193640707 232350744 6855452 749322584 550969603 726158677 753567512 328280996 709807473 494029117 882870408 353518654 29975191 806795846 879357549 668131612 755916622 248704285 805695724 927707108 770881754 584333671 119416256 302477110 423041451 828234008 147424071 237190080 297444582 805281216 924714509 4434023 847353807 156739712 459351780 338204976 822553899 94361038 429110440 381937559 226551913 567452829 255257976 400952291 676878021 636142953 235067237 120612189 286283565 930010452 576801156 473355130 770655988 809929916 758383820 736292400 897486554 519104180 914096879 197212662 817106461 268425500 855642454 808007656 469589352 699711063 672380549 574753161 485023574 394472982 62289952 663462682 38808480 973640560 298388472 37717138 132644678 151001591 115944418 387249657 858888553 689118028 554553605 900858420 104795686 481367930 917718334 704256422 394916529 372717410 74350619 317072283 779522500 285895793 356468600 15148420 572725904 122469410 403541813 852334219 209350532 392766771 220408997 413291203 545442200 22538171 688780389 184077941 753433610 76822462 447746351 353390006 641768929 898405523 125933489 265809451 596354318 671213165 385399585 845215172 813128252 617410154 667864074 937238283 573540698 131898884 407513114 783112548 344650934 510824449 800958906 50680951 801420533 504122026 245595311 507520748 476281229 65758299 891320829 249257103 291024936 983028927 470638673 794360922 943159748 120803154 368223442 141818107 261596603 790354677 504596363 429615772 428219646 859190881 964325214 207992909 113754904 569547663 438406445 727242702 421067044 890661218 700753848 261621237 653672870 409259723 232151849 815482684 600599455 740508063 504487101 375972753 936071849 379393096 862834448 585775624 25983990 978118356 626239388 853954105 692407372 28626179 349093677 512885630 966121082 871597807 875282882 585206376 240936888 274418129 640204349 727422647 798755816 945873423 155641440 178467039 9392567 823104625 287653685 314027539 803915699 955370506 931298659 194149578 401440566 231084953 252778700 991721257 939422490 119555561 687613488 195011787 480552646 760854893 440425469 884722828 183658147 79149010 174449252 718888738 902478241 512992539 117090581 962077916 723437104 350323125 861720274 732611379 3600463 958867058 568652915 571804009 652053180 273135909 523089236 138572173 651255952 844617843 94592478 66817211 472672916 573588477 538092792 481392285 641328818 312849691 526596107 906321798 178211379 620509166 914496827 830495664 280958928 742277581 725877324 17829130 542030285 703194234 631284458 126641342 203479167 104502950 539125804 845423169 735769100 376725779 169013692 207698409 60955889 117268526 331233962 33285094 588248740 764228496 876359917 227274198 686972824 988484389 452439575 202556647 16894506 299662645 198682915 611153802 92074024 339734645 418416722 808606143 342221648 667725393 970088824 77011347 119315929 280943807 705941511 748259762 422137696 756914837 569289649 820520686 122913453 467719322 837443218 378866863 149105770 811366691 318563063 615544269 699934565 593029929 750111405 585403947 601736422 913195352 586670760 551707678 247265845 558088139 809796713 613544245 935727256 842808384 151246346 327794773 323761449 408482140 133380548 907570734 678283214 45360294 579307235 314739762 793354000 951883395 167753431 300438462 860987950 411527174 461532529 985853188 491561068 679055174 68028111 890171273 454990174 879572044 715111026 42131307 268875881 345852762 572047895 349827542 885383649 196733584 165523184 861797702 707795603 870975539 995553334 664257881 374621489 12123665 34632038 646433526 105487415 373392093 663127099 867981318 259269664 391544664 543399428 396998624 663044105 542567753 674009342 469768212 990532755 962040301 569294165 303808606 302386921 713764079 703281569 764352679 837374073 218816238 463653115 353352237 962440777 640492871 592283365 350489730 182165586 811004530 755316135 928468170 825318035 438537581 511257511 836848198 568810038 574878844 471586244 538345096 139283290 742272355 490062356 223241705 372012302 236527360 300438346 603618212 826236635 7238628 985951818 683190646 520474106 197389682 964911124 965136310 277142671 44397805 93202593 175910394 626085344 281733265 105537624 366628604 503977812 348829750 147315179 731090872 748109352 186347798 627356417 944279034 84462973 452901437 315077205 553062284 550125878 257551975 762774045 643554800 342248524 597126514 80327240 330802626 802393878 844601383 981962275 967036404 699968543 611580728 797400817 941695202 693055583 382425647 684162140 293495607 120863731 108975894 485339012 247731742 82183154 685680416 325778794 578086989 269877626 178750866 555071570 855469058 187829905 676500840 904730739 29279947 883715790 333043088 100140354 219529011 711943711 96090503 264837951 954548093 830427603 992995956 743270438 517268091 83236857 258140355 321357226 539234917 574195409 388576137 112663363 469902102 814167852 905513939 294220695 403722938 896111578 523028118 906642930 138528203 904276651 197138551 971712437 602435529 914776770 478655797 309039993 17910117 287916465 127581019 468077840 559099418 319716517 280197271 717989045 39569063 803131563 316050155 349252991 490961338 536315756 16011950 845965130 601083642 859786965 528489644 537688332 288816161 424147826 241568614 546282871 346772478 346190107 955398034 449577731 469682555 950112776 347053847 616186845 355057665 106112927 473355205 414948399 344580495 592727970 122094002 407073649 292443712 506393940 671810084 743868862 56721482 666115514 835808516 916693520 355237848 206863976 863270049 320019246 523407909 560703685 401552158 260098752 663150856 714976382 191884913 295486723 376381240 534436992 714881616 346636870 859433363 661083631 90675391 380408860 262939573 156485103 90901866 751924611 647234790 950093335 443427914 582882186 929279509 379770574 18657710 180018693 308028814 838706015 207669041 847395320 692355466 433746121 473554733 494558790 615669917 620073104 435785141 114547911 387690238 817211717 808373314 435805683 118713783 68096438 988418616 435622847 556475441 15512812 340208022 455588046 57936824 467760172 534020175 901060273 755327258 110258619 754068099 196036374 130817620 391300560 870161111 42676870 615710391 238516737 811937792 818499043 427028968 52535882 697329642 667564485 463291810 85901144 194271638 125017448 86837984 450182319 88795779 945263888 381966752 765490153 6424236 393039761 606036284 112113908 742097155 73344253 710562487 823968478 127009612 222853295 972138365 56105901 37703628 404654605 613729965 85374170 963914720 803866811 53434271 14798419 588780921 528715186 425423930 743418154 64127211 273214575 583254437 866128730 692665756 344876358 936833179 768658943 276578115 208676893 779370881 766907582 332743381 486879413 968379511 58180525 736685044 878692280 345047875 58370986 768896074 110268129 349127558 917537675 690718432 59859860 968595009 724131547 829166868 171024035 32835290 221033149 184915054 648316378 91996632 314994424 92565265 309371256 382915171 169780662 177011929 862229212 243076741 180598747 935603458 415379808 756981987 394882093 99050532 880766639 47050037 763722183 510600342 621403631 655597730 508702766 403765545 341009317 491808127 726293216 152703549 684454386 587205773 55353742 799262502 935714418 867481547 937241421 518573666 577142933 644897391 9865667 842927732 455727911 290294619 20939476 855375719 906727003 217303514 832115290 866557031 293144801 718916137 90146417 493643292 599658266 412936323 943586827 313863943 616181129 814494344 760067795 89577107 702511615 63712077 123888389 355429490 713262143 856564677 986553048 558959885 570497846 702818530 252185254 143534197 578652149 202266827 207068205 956017764 780092052 798158503 570168705 178189113 539775751 526157034 660379928 641145346 28396123 152405513 678237392 602849369 555815663 162732456 550157812 855473407 705970511 897709067 681090301 815530907 231120313 236188284 470707213 440640200 411553329 103270765 783548495 360600636 256548217 743863696 636846980 719677850 858092460 983107633 344768631 292127954 594398967 552301619 651179921 180835225 303214299 303867051 638600624 482048210 795433595 311482482 303580855 512911794 460755510 773830271 451073923 381822842 752765037 676362229 678099590 607768080 327928510 116045399 185079360 247916709 740448560 177184996 425553830 930200507 428377037 93609819 276535568 653427359 250542705 344748086 399563709 355631433 857636591 862563372 299090418 426156504 4569810 243759874 885324199 210715539 10179864 828456699 741672139 153291839 59859543 90872663 528882174 701294519 972462707 482203643 243134542 939542587 224045923 689879934 405604045 437937244 79657687 115102381 671810427 57908577 929554214 137463564 651393929 944633622 110560830 756551968 895451254 459860994 1387015 471456734 825333890 77250743 842058415 812683956 426087268 901232520 899086556 157222370 186458084 391272416 641047721 128555036 494544649 374094027 479661430 862744092 66891169 941690110 630025850 503999719 720306151 947128214 197420761 865484675 260043016 976735400 793574532 285444619 799269146 698717999 854699342 97551652 253387003 201978652 161465416 264067770 961730171 635997076 678022712 986167746 447680553 523425622 547915744 679266706 202266834 181484595 588536363 395105392 295054856 433003690 545416181 968877741 458967982 199956052 831444430 7317529 296951764 576104343 944011977 171416695 995792132 360091629 444365647 832725950 649594413 657481357 885493018 173241652 319723013 576047040 635429056 448333261 780552192 116792338 558317520 59477232 950510821 891028005 196132138 190919608 587555680 844605581 189893195 728795970 336256589 763271754 243772384 818970508 449146395 935480440 662854801 872997642 529983079 651099639 941464275 50315844 376011842 382515147 876473599 502560550 266983630 416819540 767532515 495623590 701801416 597674015 736407163 502270848 221221142 520146142 468159208 388731135 108482740 83659883 397530902 940697891 357505460 747486445 23393437 81091143 442679548 425503986 363666772 905665589 225176201 349457258 689708401 476986182 407700181 152365887 139237222 742938953 361968406 879395283 617143218 225756653 707228539 420220715 45119563 301805987 871791881 384613247 937043341 501052759 454873364 948943041 243014225 404213134 742641556 905975138 598126300 144321874 602375868 985748635 220851419 218804234 596141415 353575496 30938765 992576050 90725220 84172793 93766727 937484304 337288235 977775823 959025007 870406505 537578874 279010443 671665570 86862646 367299221 340111462 218663599 221351568 514488496 206731774 219207498 829785431 969606508 505629421 403920642 556992320 578436933 5877901 453050710 696973888 241487834 764248806 723849660 116876002 30936460 419724745 355315603 808161793 620580461 730660115 589593536 677923297 153133753 270563740 680271762 374105300 371866730 482937872 97993734 769516390 597520519 6548873 515660813 74617046 290199378 535569921 198358237 931841330 28504476 707674587 972392475 567317809 346569271 147640129 227352356 778865396 919222562 729468215 373916681 746212052 856539878 877627489 600640489 458326819 725136184 947790760 537278496 14211751 68299394 983209286 57509373 218206124 952705980 29901540 652522370 502270061 358773970 602894780 540478875 347346087 366066819 399202415 74413825 552033475 620855352 90432096 277457275 525315256 281982123 269259973 806956141 347787920 24669170 792692812 118341523 346566745 866142007 348533169 58563821 204368869 368729131 956814916 198082126 483901893 748326448 606831976 589181936 196310532 236411157 730767482 188791617 478535599 14627805 68395445 884766008 831842541 383111191 49454368 114650085 835943757 878566888 95606002 645222930 410691957 60729026 782459181 659014329 711383440 327151352 991774225 714199799 729524906 853452762 286389581 991405147 448424953 445952531 366870640 10284260 486673657 505007661 152023330 459661705 557808732 615679953 253806569 255253401 550509256 888269715 88766643 653436877 897717858 699646126 733087440 468837905 962141764 285806471 494932362 351370608 696497824 266052266 881460117 62032565 577988320 807503078 102594075 717518590 234541634 626686543 901090360 904173585 967763608 673603724 38153692 246965419 465726378 35880533 773483335 849509143 541419226 14160530 247450440 550212422 604502866 88688427 272169347 81197943 190528215 834786061 130822631 458405823 623985835 360043093 686907980 632922975 754669279 414701116 197308765 551133846 224631494 169162161 526360529 497425476 776903642 922892322 961924010 70875934 334411561 37636588 428077790 882138662 237537984 171519919 355209503 116597632 221708365 775244645 306059588 987995843 672889761 970151642 908494188 875009219 200600817 82100302 165053085 592068539 122100448 737146729 65526213 94967908 958500614 609559533 590682871 874878276 906105073 142153668 275413150 573789357 181505772 409276617 842422529 349555700 237640395 949300952 67932336 977650555 631688210 539888 282260510 457149996 398512534 978272297 408832506 614835027 447932288 981923437 742259711 551366608 921848999 76353464 396362312 133920827 702937246 438128668 582041110 409410464 414569204 764287313 895713971 961766397 934854479 20144519 998086849 86536970 797963696 249517282 712935048 809173949 300531835 268940495 5981406 525354470 168582042 460309083 884307467 592362531 272024590 795845074 842836942 486022677 54112116 878389603 782918361 929196427 443389175 902920628 185607971 928959210 222812916 860828426 862190148 589532703 56469671 646371488 576853872 67304919 771116213 30693167 755025867 574524239 803756071 44357306 532901506 181555466 13287290 888334831 519089376 983011142 98286671 197768675 356676857 335341379 761527335 635244698 358812948 933009630 993229277 685913188 616563840 663450226 308116421 769846202 764168253 877142573 833099746 25240825 610821378 959726516 137529990 565423812 774021063 831105670 312016717 295618478 927154923 989402094 541122383 656334740 745684232 619221572 988319302 451002141 120920598 613089391 594701318 921508231 582668901 754229363 885926729 882736059 123693039 734690753 213945572 896445937 147091101 220684564 492783613 400398663 475370069 345974593 549767880 153180186 778015792 926666689 327252046 522372304 336462377 49057175 110210599 229045416 226976630 252529229 571240794 207358289 46923932 748677743 932456066 189397582 371687018 488146078 340879353 85588666 855239252 367920958 765583435 362812182 800031332 611291175 823429711 673063893 712459981 691419163 913979119 664518179 467676394 611222307 681323403 418525356 69377951 428582197 781656410 811650869 840772129 963817336 969649479 962503047 528094710 586214817 232635278 273490132 650340949 528244093 407147558 36746594 408491657 917312547 522870503 816833760 733162926 286057459 176734855 695404843 258387535 472736353 211469658 835163995 986761038 630302844 408188236 873994084 745775982 317546153 679479754 1903612 92480027 542642766 478694891 806957792 206024078 293862864 55791441 227014143 867622671 840316858 36273021 815309419 210194706 655067834 238412442 735882477 727192883 36760968 188641321 38798369 387104798 979568064 811491327 837268299 946173910 988840724 408447526 398579191 580177990 916936546 616686395 805155566 856567423 103772247 471425053 222173377 440393357 727006777 786685856 512481557 471057336 103874405 290311863 134548774 479605376 836521344 297201078 439960225 836662664 893805879 285455556 54937643 344238698 815944794 793364342 76890351 997630907 315106342 919515805 28804994 598702920 711854230 518164191 177028547 547212679 786262711 808417086 545469629 385719284 364831653 885050311 653843181 58411913 379464160 188552446 343844891 764200875 739757107 7298464 257302402 585251738 870424998 890532549 855648615 930476908 381658921 729670777 486231883 34082866 492852587 958525464 331355290 747802949 285099585 858833748 857767355 994820330 939138535 549428267 451430609 238399881 727989199 697604403 989088433 907890396 676669618 422286996 575409194 375612683 769828537 267532785 883053178 821713969 600453911 102687126 279084208 349846675 499995495 135301388 567618523 291986924 163880677 122151778 749443495 601211282 353694917 830183928 799550754 426200516 631974853 890454344 861000061 943190720 773157388 850847876 415957096 376738649 143504564 208743152 560704766 573299295 844535532 193656208 257106121 881486933 763204626 486910876 255243120 337132257 907302004 239901967 472848174 146124468 30972184 774644212 145796006 548969734 170861098 949464693 951097689 315969000 942782065 483814118 224119164 82787063 940373793 70805637 642667189 626223465 432426703 723056695 50535615 851796290 47132358 829033806 580562811 731330128 888551439 577011318 222119268 929462668 550142032 929489944 57434683 613338153 964661587 817901013 520086750 672464832 487178543 64665693 897620855 375270931 241935551 351047652 187904942 236378618 94115556 923348888 791651917 572115907 968446858 29219521 301866259 624605794 964756360 543922766 189219971 945047046 405105811 84004799 857191382 979877597 435260431 99851636 158622152 752362843 771222476 397813145 737110218 761563775 207172374 805407657 980234072 173319209 18676708 814679726 197131309 288347882 335526533 522857215 596212813 602597871 117489877 664151944 16055960 362471170 565039962 613293541 487048347 100250390 613285776 822362049 691643976 641263455 232449916 339525502 357140418 213189881 483279859 75051559 166995735 236600694 620637146 42512067 772362205 63428443 387829947 44855919 540738388 495887441 684340941 696164546 858849579 585022355 407614816 856076640 41100212 102738143 973559568 542579026 641621220 136984672 738246045 410405584 894288796 996786924 196121921 531335807 351802612 964902201 194360385 897589764 235027170 928494169 339388102 494518263 77056458 255328470 876302728 741766935 996404703 316368093 330356949 43783976 93086853 727397344 798248648 179252523 58073165 58553250 994095931 226227329 605190509 867529249 387056456 800376027 694503580 710872382 353900586 708888789 998347804 677467097 314121332 41165744 925400348 586734237 276622175 627249598 296615347 811562984 517956707 944210591 905233117 801208336 327115147 828263414 11591672 557047641 665054740 443388646 338707918 367963490 853330189 653341652 334884033 530749987 74446585 433788005 408100881 185947409 48662370 429783422 50862263 796224861 953969132 209279391 155582483 827804054 97306110 632432742 559127294 792526149 733592208 39602848 412456484 52407305 300789526 438807156 536594583 870138092 191104864 136392251 943120568 936828776 988457113 20055601 672640533 70170274 173272613 55818846 580144426 574239251 297677832 53964064 713461130 728398105 89446934 660303702 820294718 323611197 264007193 600154209 548924891 956206962 296346056 106707525 484300977 605984680 267409820 722100683 824537945 876904392 896467159 842334769 982500376 292603637 208006680 190559579 6112396 403573929 601005465 478408102 817648905 952449952 372754937 999344575 285632386 370457769 532746237 933864790 493646270 20813406 68325329 807219013 393110600 587832375 860037396 666604782 590069268 472687891 947237889 627921525 777970917 412848780 610730097 680805873 346455790 286442639 766677102 943934740 57537359 139328534 4327890 819375073 205596717 246134186 300568829 240276424 958726724 373544388 954086106 51062439 802651525 104310871 564303317 211213880 868488868 308891769 168860263 483629174 554450546 5727841 42812022 988021909 864264795 739693736 70157927 240055793 854136306 71169822 747563691 468505157 165796117 93191747 115458044 356879629 803371961 621451444 841107690 593301523 265981974 695661646 21066786 23058526 256413080 777437577 148290715 854190226 324423516 667406490 482140502 597584589 15175787 603115333 113047575 140562959 333296551 129218148 635505034 180906888 694767950 329201620 57268824 55542218 547241214 603034252 44050386 801549398 357314277 346867590 546415674 359769858 849181356 894555528 782546195 212195583 812868955 77790784 626203954 58828293 615405333 501767782 82521769 850623932 363509770 92760723 783524383 828014744 326127645 760576104 78164527 519701793 454541616 553847083 956676385 654591996 619915664 602979093 543788459 735438604 142036194 170663083 420710465 45030605 702190929 335669194 802468987 956583299 659100320 995375496 108540406 420384210 635774275 282958333 801633172 322522052 97301015 809355885 318564365 995666575 719183259 356201481 96659345 198485076 800070566 830806794 819051033 613845267 654862069 482890917 608534648 865353778 716597601 686144794 379293500 938635823 799094439 541028687 65781824 977587316 731667048 265844589 659760040 603062271 178605577 328633541 77911773 812111321 534907779 615649030 947883777 669063643 232550520 585185988 754530044 544731542 996687447 317602847 952286376 390697070 833853259 755642324 245011903 54648712 201183969 231476370 903718653 23227246 438694322 639814320 255862481 832873477 557130893 613897993 391811897 216705151 476389402 926601997 605564053 876541878 848810565 783060831 567396848 869630333 740234278 140103027 372789973 776429266 215193717 840556050 729998036 822742204 225122196 575947049 903933273 428006365 810349993 468646858 570008513 703612462 528170563 330272403 125679075 922182900 334045243 10863751 759680196 388715479 336525556 918647999 659900902 655482582 297596436 427247472 559089102 524834994 492124685 825253576 604008404 303152839 607465702 73062739 269618954 817387256 293496933 902660379 103584522 768112002 838270247 792353755 17948353 27763288 376906453 220528975 891674693 214741311 141633004 402756172 213704625 190438176 31853631 455178748 669075837 874263922 29929517 451680773 782729486 103619420 539486773 908393612 985884270 931661382 605761214 39403503 652402262 981399705 863083687 906074250 121726847 404660263 146848924 104882405 482684293 102058146 424172346 179620191 856192095 634748737 177199991 978526278 941275990 761158556 362352926 659150096 180403249 217361493 680780500 383582320 232839431 421834190 129721910 886609197 422965064 67533897 670644122 428057837 170728524 730802799 626737607 545125255 617434370 175635363 795014788 606187121 443955603 592800864 628190270 480233431 465972547 121916969 3130049 130727154 460802650 592601307 50568826 645438965 39835452 819554528 724694784 222157208 290525381 559758400 147694214 450339349 239718517 505248842 787488485 20881977 991812906 623740938 41399589 903260938 901684643 342700036 595081861 613191031 653332783 353017401 371532847 52127227 529718501 438695209 614328156 184365295 528912158 28412930 429588352 720610468 863234971 753475952 21888882 543211506 350200769 174795770 949752927 51460308 95575273 418200805 135792043 119243862 394104437 664204541 492329132 262202200 143903499 722738275 822207995 270984552 499672687 886131978 613539081 843995211 68446102 756409001 363124616 414409383 865750354 770012887 856932204 288585254 957772768 162403923 754520126 372833731 998583578 979534301 333120200 625141533 540797572 203847148 591000874 656176222 836416041 492729759 102186751 164307687 36737689 47694760 707756901 286311888 790068555 389058825 539245101 782237289 281661140 240908357 296320624 261259377 714922190 231057309 27050945 875116626 842899148 170456391 690027009 992235565 191769495 683820600 58496086 909500536 944542292 301387563 110499514 88069568 837766277 647893173 753172410 439421570 825533455 470048026 556598418 822442878 301932545 549638548 45427623 599563349 529906621 126623700 188901265 919513377 427580870 669058677 195618467 511007891 191844472 229806128 322519003 541724572 961492325 918840169 434683538 43818247 170091438 157233603 874292104 674417086 797293491 431001726 896037488 689939678 735333429 254826351 709663856 122052002 56122704 383960396 727201218 17618347 492989353 436090636 312438958 292189283 566500156 873065974 616741353 197762435 772645582 939532006 912337439 94108056 594186550 523365833 482465214 53653463 77973792 810600487 194081559 584638195 887435844 808134890 381072800 582877708 211360136 822071618 479273827 483785482 991894263 263548494 396881220 893612120 862707727 165832007 546316039 460821336 265381224 979640724 751336190 171497200 74922180 604099789 232892856 797812171 135488107 502529645 137335681 746752485 729682954 637513469 754106853 852024007 828915848 570870103 515327163 398247751 701145458 723399780 984047890 906683104 336811351 503318172 249452034 811171473 906166203 977387253 592914684 619356863 536694580 666205393 911132786 59518754 697203684 412651753 478307555 313842872 338664897 620162652 210376262 704128880 154801955 921721351 582027028 812527095 929118707 454398013 266480570 538723998 149406839 449535937 536441101 560608392 277986934 276226234 125217076 185691348 11569677 699742498 287985394 585465697 164387951 376759972 198432848 594491368 33027946 320141608 692915898 536550554 640975128 315033248 749329633 777902799 533184490 680070153 795109314 692836812 950665608 442695506 342335942 653564094 767617769 270977188 559325770 852862721 374188246 419798952 294960924 807387245 390569555 847305306 812009179 117338506 683274776 302627083 79108921 668237004 396328513 956945661 210727727 882166417 782787477 152870931 259138682 550580869 240461086 538952375 977856535 826345868 774421696 44728139 637826176 686657262 987074052 729924304 505586185 121130968 64064833 863441501 200654063 457807556 185925823 986830783 852469969 366673552 680750998 531193440 164955782 217810401 421281345 944904528 729774135 525105370 650473010 165115259 694840633 79454092 830798411 100490200 956850302 720117357 17212530 123533810 456594536 399880555 289251669 723656143 678724588 51922683 385755109 658465364 464371652 375571367 524079404 601184154 349980744 884860083 322405174 214746423 674701083 321789752 268086848 778401904 772213382 472641143 682798719 168018259 637854995 485926546 653832793 122891658 936923157 467456241 431018336 361151532 620223925 185471151 350843007 16869140 654971994 260915363 354708955 767460497 7184489 18290686 301849890 388187974 718284310 81509056 861227667 360250362 322117711 97722306 859597123 260701595 164084425 119496694 794226622 167271972 136422118 414976467 979241895 672290487 81149995 851720567 257882522 657903665 317032655 13079846 493413251 526513796 511557470 115793837 829116135 96856238 968208662 787146675 59147115 617828352 960296746 376244231 941777641 553278466 563856961 425767751 115419267 762170114 798540605 761551854 708056835 908504469 567140307 257308978 606930439 606610676 236903583 587698444 451811474 180111570 830103796 156061816 514362080 820300406 231845291 420711404 452871496 931680399 475160098 240216755 147711457 417113178 252087314 365127624 846499747 510564829 587969600 495404731 89640139 397371179 217909325 811912536 918685602 430232205 19012320 446918779 572114416 63166166 178155136 747589984 999411673 652945534 443013519 20389759 579043626 499018580 282607670 617626801 171440513 404033850 538701396 439100693 335787538 888202078 705341083 6414729 206174815 546290312 723400926 794954230 638884363 982378860 80737521 742867321 210488607 881264369 176548865 22748255 339749959 381473287 657979452 225944928 131438752 853276507 545214887 517717307 586835922 135677111 261711512 919215976 414181247 557487760 981752081 428502263 47436304 351043110 73074215 82049456 409091949 80284660 996393998 554843697 871367816 691352060 11613044 276348064 397769367 774196358 46599501 508493959 8873187 511534298 996464266 619078681 738388592 137504276 202783547 105524537 421872353 11445582 230285784 279261786 425463675 99191052 702716176 507310779 356146776 321611203 40399440 487911922 17561237 448097778 305043273 706563117 310217522 240846260 317163337 801802939 252604037 379666630 556473264 844322708 342141112 219132176 788794895 991788191 355191973 666373128 886635355 68279794 343222891 72955292 578395453 632669692 632909794 125047013 821068074 841074930 456740272 801520318 521621724 500989390 834616288 649168060 725949655 805962317 277815077 811838623 226421848 735272361 810942688 287160048 763819931 482439397 487476406 220453750 524825326 712643215 176770895 912891657 142861159 607805904 924586452 24017584 490239159 857099789 252265309 827015210 164101778 726456042 431140919 729174538 31590326 512877305 721324109 607016102 916696950 352104120 562788966 727438592 949157851 190441094 253113019 602699724 849362925 526229832 327427014 580494117 475416396 492735750 865708631 149159526 681268983 390389532 326245295 77801222 190413325 824755544 267328464 688431261 358778777 424349832 447091742 52550299 651702034 803865928 960268591 157259702 119300934 15526325 723535198 965998229 563755207 882701062 652398300 415433480 226316827 269121870 151920828 674622875 848022117 632268044 56409500 369473406 596329300 307062700 100405090 218392609 804956465 812164734 958890740 176097888 913794919 303974886 175708811 785117979 835644389 212456307 830966084 149334275 437652143 320203816 500823899 138163718 614147357 78118788 917702441 462166704 411070672 746470851 412856603 929728502 921134895 150152984 998701521 553745783 75985999 949286796 99054901 240955069 759386636 401522863 48366631 972860639 499947641 362903393 983740706 637931304 282792586 274291558 152744086 80292547 783093363 392702373 188455141 809788234 689603510 808029953 762423802 370506005 437828540 700066822 565115534 665480257 901537375 692399472 175480076 77986185 597889497 527890043 649211687 634385444 472612469 908370412 670973658 449320011 598025280 264755456 283494943 194434094 393098536 131471714 146716129 34895092 193357568 67330015 923455241 109099439 31199635 660544331 804162256 457180307 261129451 790970797 221814656 768379815 173984005 502624976 52046857 857346535 298885864 901983123 388940622 830548581 105187211 285435085 114132052 295281823 813300694 250630548 12079994 62725720 401955061 670636717 320662561 293159566 417064034 650380613 892582584 696608042 787540919 258801613 551706190 746399280 721845642 923254633 246375492 854325655 193142781 19869052 486845135 972098132 70097129 808320100 975900864 760235643 121807953 320023319 273109992 483664481 311908870 277345985 147464622 313968456 28912313 684590094 934364344 287371039 82464314 623431797 306195311 308533980 366141492 415085438 499761808 345901082 80277713 476622071 331588882 915495315 777941549 317435766 740624429 799504529 662168035 959219169 724171099 974219523 816517117 143029785 662492645 623712947 40943994 779618193 212251352 213581947 621646449 222593814 542527553 785476494 135538674 163217995 30654973 437023055 445913822 475841900 717625754 325629356 364730049 664990056 400239287 819387075 774029991 552324432 758969792 845650485 865400622 443636987 577089117 344682762 67125226 766828475 37872717 401129037 931253722 81820658 894672176 491330746 34039783 398042426 587839438 621144219 929565765 698218956 933366892 24196021 292145178 958646257 161239862 798627879 931551182 806586282 66948504 177630308 60595851 466993034 561967036 213854558 368771040 255183452 900276665 274701579 661574434 726883463 750484123 930165993 993061296 339476948 775400568 877464804 193882988 226591090 442663191 179854939 362833479 727605081 961211959 996353819 263270467 712135442 783520955 486835289 330590062 263963556 755739010 678085303 946430765 869083254 570311296 377891211 793171688 12588583 820926606 553581093 534952110 600191386 727004556 965772681 282425070 882651910 58606868 422320162 648697053 709522285 706657178 578763157 718846653 480669551 648244842 548535487 760642920 853693172 62537547 947781603 530824526 295124772 714462431 984447931 849006983 717512673 487685328 720556308 860416909 666842449 262070044 858448920 765164818 328419119 357583287 905413010 127516161 834302412 726788746 590521146 199661895 56208578 444498540 837105558 529524113 773842476 157721685 78833032 6489318 437089450 754942922 783123794 261267271 402027143 673437109 861855244 259398948 578717939 100957637 398034279 741581337 766452115 568404658 961055530 627795826 560558099 227013911 789798236 845487300 826845566 7953812 210707053 254069076 567274227 23011338 806617856 628165140 409692629 143686426 312971856 729075408 663842969 931129998 963857454 302004185 56426300 162061 10157385 854955559 644847800 3584730 510586884 676998721 422635799 772855087 31920849 394508056 218504830 223351263 633939504 86419569 775811595 156239148 148698132 603627975 449776642 438407183 303286963 235709118 964995083 415344302 486788540 300595989 694046160 320891640 489108047 327111776 919836937 780122682 138672101 195280094 640810171 47645026 940364212 622300219 891139009 839056733 524198672 849507555 320445611 4581381 205155058 81774761 668690278 437640218 169799219 289759037 608213163 178132068 991096100 176523499 370684477 349412926 175073784 711360591 559546242 959566445 532422776 969850122 380179139 779599716 996021172 608848295 918479635 388301012 366164615 730588740 846843684 248689628 532494084 183142923 206456459 6203390 758175378 443058224 81962632 169427512 303154008 765878653 334757493 715726018 816788629 299511698 754999567 8757160 499191862 407007414 405866209 411390290 260097402 626525137 61489103 191059675 875483450 941269216 734902093 448179470 954318014 144958524 960466286 709828411 872449285 166657304 651556560 615621352 201572927 110613735 687376166 328747118 464133730 714858440 48452462 619942867 410850222 296333645 778715400 852019231 89579102 898839672 231473887 165532467 659524972 128224330 96338276 436172781 812856056 240484300 730708161 607085077 655432060 490775751 90446136 639549080 877473266 750773574 11234611 579382613 152956554 657251660 575916428 800100239 408013932 31871832 65154338 873462940 850414107 179703707 158750936 950594160 665501547 934220111 179582735 674055760 707713265 120286082 588714635 703349116 19622060 850484329 43292203 959393203 502188136 529435576 95113978 524559372 521712924 2904366 628850292 660006633 340635258 731317448 151732089 739838640 227006814 118976690 31769449 484247944 80450277 436556165 506510310 186917804 776260816 951372953 800822168 838149384 238167187 583670598 428134413 241896761 830648746 557303039 200471341 687973283 632642532 867919769 813002752 908999146 320508711 7316189 783070648 805160735 894999462 893946312 277412476 38985830 324182618 70797479 319474636 497276600 622259366 375511987 984946344 491239760 577191869 661485052 663070677 854897248 357850232 595386606 344858660 918683968 840617998 984473149 937227452 171263533 163925712 125135834 382284852 73613034 313948884 521007937 200262632 605851162 675581362 641091173 481533476 718085118 542109848 832491807 998302360 650417196 203535852 496026343 412390815 632752016 918740017 753005467 862789740 677627829 921007585 453344244 530767439 426113452 312018321 764019987 553463924 932123927 242457012 269778630 882940495 763335120 509858469 507812249 822563940 524847633 294686297 502439803 287560803 755614789 647518628 307587706 48371453 8639409 149022855 597272281 390238180 303252211 545820999 999575325 102188355 44825466 386006136 534386354 571973621 167037274 509029895 33164421 378965787 359050598 90932755 165344066 146398675 874948438 599836484 122297217 495277976 745336126 347735089 722270215 407209423 476420663 239784954 138327563 359509961 725720459 354672568 325194989 487084003 464071150 372513089 627513381 713606691 780457218 715549126 366958594 986695027 606606916 643945189 920042705 488951041 877130223 343647659 541305890 29880793 112618326 774056177 644247801 76789564 100795273 840720535 101719848 581244514 785992052 595160021 44374456 975696271 216378854 297973804 741980509 915169315 275843533 526008217 43417466 920286271 385173806 695478357 723924139 286580046 913340360 579138515 648971019 113128052 841935492 176624035 721417082 77093023 124441975 768673296 529723430 51859850 732002985 405040250 160621269 259063800 433655408 305989462 902589197 480909271 979323300 796500780 935987258 815330339 921575789 561021452 831053172 262645289 809396114 30145424 242544595 682464893 301424161 921216006 602536593 944649845 422852625 792439474 859393039 860905960 513072382 211063124 227969137 620314931 408631113 90410796 492633279 558370627 129033764 682300975 567782104 221527979 549692274 752101022 369285236 319584246 537007693 257128618 477891150 129904413 5766775 373279262 793461674 209137868 596370386 929859537 466730177 218502366 535166505 478996656 24448423 983490455 502730816 372118872 644367412 344043058 248766123 722421054 918734180 141559328 182762753 408063601 97501303 541054403 546812329 667495461 697474495 739349871 991881009 393521413 747675257 568597957 505823381 237558298 100247484 525910778 821047898 512233738 985637179 869174741 797806336 507620651 598834392 379917509 25723467 763723615 151396444 353256089 928068020 840999900 582555880 76789101 725114210 372549170 307177429 536859194 115175948 612010009 943906049 125086350 445391649 560439597 246815434 546935818 738477012 718170178 196770669 271347818 777439530 507856694 737829319 388590762 789679693 461074502 339917596 223326695 474326541 209655866 573342015 791623430 805939848 243862457 964937532 50049504 427999584 477793011 230528990 337888308 755615403 247220628 729880702 360765452 25972302 123919721 487795284 930911003 919514917 327995975 546321434 505136386 291039845 65302492 768976020 381876856 390952437 671266706 90751997 173309154 4473290 378667259 684961508 913207641 584932805 790181811 801081394 598897453 520804084 539619549 440140630 529756628 152082248 93412474 822185980 357464884 915979182 329743967 182670903 859755870 657757193 349963948 982363583 161303164 727751222 381576586 30013930 144431622 375975940 355997015 807256213 868605370 539680548 224619138 411232962 192091448 862742386 942832429 513721340 757669514 630694589 185373062 497219121 353040467 391091438 726114799 513145359 761314695 830878133 96819181 770912302 782701555 679854034 241741644 955252399 293926577 203284000 167246669 534770075 771633213 501212800 991122669 302349585 593005011 2217314 703435537 810402902 259113781 709016247 91151834 791144584 983270102 825056627 66338500 784399607 571257921 154504065 89406014 829716351 646090618 983979059 719944095 851160809 450164995 695520876 411980622 151912328 86488129 32684063 100824755 470189031 713094756 397773270 33591323 622007313 253998698 208864907 855237398 743336404 758440718 959152130 19120369 368951999 49889958 598068072 795915995 911963938 923533901 821018538 878755024 763128475 597978834 495232428 154691225 840943346 331217136 785544938 758652790 166534310 74255867 408536068 185150898 842572101 527717043 805525380 359335793 234731705 905319914 148893197 729027956 657343505 829039782 676209371 294198936 819837575 766182630 710648361 763506698 470820762 785672240 144415222 164634833 178014772 668647360 985041505 165426017 930971527 880108864 784473251 661723538 363823483 268215871 505671009 345997236 509069470 923557438 183132439 919364264 818258030 199486763 740569285 270605884 445082235 648388656 698171198 373487381 128492114 786082795 771579307 171747800 190482304 287097965 394831175 298743697 596276250 194026993 941965005 841335098 712221010 794192809 345624964 487032032 678257603 872366761 468623231 543118335 826005885 481373711 453610182 855920244 778387570 594202231 87652024 230111479 90280967 31410573 514614272 787822726 523547927 742734500 842516532 211325500 889383262 649152096 379400652 311943519 826507611 484450249 390332174 697384757 852801960 795639389 391172570 887346515 709891111 605609474 317425928 803014603 985976756 576582653 593243019 138769622 807158649 627921344 34555357 352726410 740107149 525398854 253341364 427547087 912996522 501903936 712787889 522716036 440100576 25315512 226523363 631923775 393123767 639861750 529374092 721840224 609699667 593755459 839327893 946468684 447353187 547664703 505717987 747991207 296557308 511701840 108427032 126596058 6474947 137050624 201734498 644385720 539746668 207476990 725255492 806486972 407170945 903954474 189555145 677753120 521441521 438068003 852675206 166585378 319029899 546046347 441549488 447557953 257982950 593305439 298156746 679438835 901256050 821772925 515846319 266451938 830411804 480216828 436241993 751500225 92019161 127499732 204307040 374650828 576905156 908402373 174889951 890607095 373605422 189467302 883273933 271404267 713325545 704599682 285839463 584432077 951120344 52141795 526403839 280752811 605804813 912649222 940184363 165021223 61359725 471379069 192340794 272546196 9617231 734796738 908850264 756043587 785110110 967350646 726696188 76992424 788253231 912889373 485350378 810890931 454823597 678846324 635913998 227648732 273719321 42781001 122743539 240113110 571786481 58029105 979350901 782770125 987722584 847920469 628314877 799488088 412993372 695625911 976792122 451561010 346915354 35948697 662017207 656327984 635694020 825538336 449319138 784602303 632568928 534716247 885457894 908474559 100967289 189241063 719499847 742058250 789815318 989006136 158603232 57678822 824440158 400824694 252681943 597594054 507318494 547711765 558602477 850334467 23598370 293885795 625385758 627405580 242273858 753938181 518843371 522525090 882095060 512561639 7491448 635612081 931169650 572415306 72267464 986323751 182503397 449402049 460568210 988258045 561363593 22279306 180308915 894228488 26669490 281437494 843874318 717539323 402240951 441034401 590133386 911375305 667486212 727226567 647681958 491170205 555609684 557785088 987809129 573474714 564021556 513510091 307240386 152533986 70189255 508645831 898758052 567277875 568912568 162136657 73305475 904577788 578507658 809688295 480914681 471275503 372643473 898576007 598559598 551928331 835808215 492874765 33781385 832467860 524943673 113289769 184039607 517077385 94663817 729580371 9873827 638136094 18110489 141321684 167808345 551764190 925276931 10149268 634688445 471537397 972466386 886882393 221200174 16800633 901564532 892428002 473296184 454118333 949369419 748290954 575836413 240013818 825901568 360096986 734101195 426362930 343018593 675653355 694377187 40521498 167016270 926113244 45264458 428525932 625653759 441496983 428216870 59126864 769377644 710713398 592634047 133951053 526679833 20351864 926590694 508246266 511241948 46092327 406393936 128052336 686903158 823129288 995673970 575002543 722656811 689540439 369894814 635025707 547209242 681721963 47673621 683588680 653066250 616157258 36418579 419751289 350308263 160584503 219863477 966882695 275415559 999141615 137497497 690012306 28546337 993214917 807111957 859179370 744753828 417547723 622756210 44387266 299838912 809664567 442159632 911562710 778113436 459040225 513733777 31347899 509568121 234642941 233899928 692251525 688751644 269089225 718043253 999717400 610852294 493476321 51072384 679807059 154886728 396698440 897594867 91805372 275000234 232050418 701622154 472838599 243141379 200258392 105969262 825245449 205207955 227535131 670035244 652971084 706422376 536823470 302477830 709935664 241090770 467652761 328216862 41411437 446983013 13089461 847346176 21925056 980392123 192307625 422514492 587654670 912993383 161749833 939910650 993420924 562422673 225557031 733445526 599042928 854827133 471493742 720759740 926948782 708317784 694601027 47443025 712038156 123416069 836235752 584442816 417594936 583447278 102689473 275010076 305181476 297211392 560813265 272868004 799282847 392603334 176082544 237662645 504948811 300880264 906913359 839921136 799438704 8845136 686736032 232902122 914462146 845036726 410838401 283488960 480644828 896302181 992851756 126050888 631832758 44659714 497138236 665251911 887335709 262260067 660156274 749848927 858259510 334217508 174188644 370352398 768271500 150221227 927262080 703432456 507041071 626603382 744384125 844633669 134595739 487334470 500681030 788503174 33075130 220091647 713232969 693358279 107771620 842059845 737486455 603508265 192105721 849870077 839622522 831845952 785699489 96341535 330502217 914383147 914961181 373672624 810552858 147241168 841955814 702750648 361235173 486045369 315289879 197620454 100753376 513397272 868763565 900159506 304749057 284401132 560512014 435509404 916376243 442614519 601656785 601338541 884710530 411960195 386838862 690142087 222980534 420673878 267425605 907463594 509596339 851466087 994318652 335342917 654677594 296962720 651120196 472853239 314774287 210578264 775789035 519200327 892241591 138849845 12469438 695387707 816597242 93666389 399891917 319151222 237769231 736911738 946073788 256314821 309673187 480769520 152607824 172679167 539347708 549732889 434130585 923598767 813914054 885427090 460254836 847534572 25867022 390157884 945007354 848495211 479207742 815006751 182545324 330267096 606536219 230765428 382990474 94840719 728496052 369261568 806105506 45196910 616231836 366109156 47864269 542434260 726332722 403599253 201058935 999631778 660550540 648287413 360915275 85568495 206565508 262512608 764398979 660623913 673932461 54463548 113669490 227728313 80673123 721281341 20227773 852130855 395419681 33956487 481502344 719040204 957634790 892044442 653942073 810120729 888577819 195124864 135641753 371951326 151935675 493947830 658966539 376134121 391829721 408709482 869783145 528012581 185877964 97607397 731117297 942037319 507235677 810655751 347806021 646511458 334261778 575353439 725614306 908017239 148778513 543446146 522362545 201494275 466536292 943185882 490858975 903082703 307532748 245057698 43116041 431070980 607922117 967245933 621551419 943826934 414248276 982920093 469860833 522817712 270895556 916794837 173844889 499843950 801206490 527214045 390869983 11328887 559227063 205779223 115954562 104547361 369370060 166684050 752522617 619128412 377987500 195040634 973080972 880387990 458778582 986642309 233248470 917847825 808484083 112520379 811966331 226553945 339701408 620593413 305856808 113125155 240261748 856810965 687109701 40624641 959994059 513742865 385607656 776667313 258726022 588586591 311046305 31485507 175991925 571637034 851141407 374645746 231640831 542720321 137170042 640991404 180814613 629860147 669697458 944245920 481309335 109213116 183846652 956328527 433432527 107659048 871976394 65715295 439406339 729237253 994211574 831561628 928414967 129627490 423375137 784532874 66172121 2580995 736213765 67239518 343229480 725135451 376340322 440851662 965862089 602046100 446738196 981751503 226058085 156772299 811402409 506889859 918741547 128670602 714181517 277813720 500955455 200361641 255962715 232659819 735202784 718289682 602533753 695013001 430051871 402711869 979277494 837801406 397001486 393905642 645062617 391741391 613521054 472252159 8024195 773983262 377250953 673359537 828492295 604972151 663836938 173702135 784468773 462158931 554787261 646881645 998926489 772718966 730350221 513773207 26261753 910598992 294645234 746445143 381142031 399330327 348010773 633213272 690522564 898561868 747426518 350468715 618220609 97915004 642015403 240046151 662811942 635762474 434479795 673806968 272470902 959042909 288737237 877405121 82534467 953024568 241763386 951432624 502416782 63157030 563382400 380373272 197212972 349414460 548803744 8181521 765757262 365730979 57862150 372760617 275357389 233134439 944217219 265557182 586438331 227078158 476122891 959425727 31521267 35488053 971186441 57016599 498814083 394590796 167027257 661395055 649093032 591264917 718832636 329507814 259459127 474246158 236030404 438594211 594703546 103277900 548772971 333869849 302651654 329007401 746250875 292040906 980463229 473415190 93358077 241666743 708198927 400411423 371233000 211362991 846650441 234727287 38082990 420022653 101681756 477935675 679122133 820801609 588756622 379892759 207226542 292201079 830467721 114342447 10893844 505157273 40480619 581446161 276838605 510230040 97469677 96592119 576647111 294937081 757273228 513711787 789250072 255245228 509855923 440805076 884362004 34570874 822003957 612592731 952267238 169459745 868598325 700159891 559720414 406878487 564141252 512896979 837538413 210490257 129044616 395866953 29845268 653554684 951420231 331049408 894409682 261722047 503890771 187088151 736941912 196533850 212359183 116100086 444914149 311953441 121953943 492597516 978032068 788556430 567695738 464913038 416371822 857940771 200330984 977596305 274400387 883455418 674689534 973325253 609252663 548589862 67755602 14967394 392132948 964896331 582262520 367010236 444681389 549124144 876162010 567891929 195574935 196640056 581984293 389886026 509665597 594676272 772835293 411096017 102970784 132241671 813175306 749268250 876159157 953425537 52046106 663568765 767059052 383650693 611060234 747741025 131558545 514055904 665175585 830748253 534247982 977391142 978347716 140137536 772288455 653240947 83381327 155806329 681023663 388522106 64465817 560040880 691191543 151505398 7276533 885335767 596693394 944928054 367574323 290623860 301705956 157487183 155283519 458576225 41775835 538616869 94263772 962894756 559560120 289903245 832125269 526814508 315963731 868203282 566674287 137427571 519932893 268044552 682028617 653900370 119159161 770564626 893591901 403535425 235868364 217118322 389016485 673515093 213529143 293862858 926318507 696270399 926611577 558975349 339645330 603409526 562728088 345685051 563409362 695478138 308942819 378239945 771883561 837834400 388847681 921525046 519270701 362812086 232173127 854828886 467152868 674830743 132058572 755463552 835299230 219617471 550912921 994569295 224670672 897585140 235906483 185976284 53069723 545238211 121173932 518739218 740733374 519071859 548159391 254840277 608879290 980469892 840873042 192435766 96007956 194530322 19353653 49088377 135421478 522029908 39997458 402045882 440335886 913896183 954675590 165929006 504290235 32670672 14289019 822139610 66935726 589258431 848875417 838084289 501423125 492643425 629348310 126753318 241260887 624643491 257211675 675399355 431054427 431429009 78058348 926606154 616163688 867291827 25668014 928826834 989063382 987653643 120613276 287798848 873501855 962983197 857148917 650740185 550402972 368039644 643749479 365843767 925303450 230089975 349041329 139254025 251442752 116446580 838034202 284147512 488005375 554523809 693281244 809847326 603398227 882393088 720029534 126965686 487865856 531084158 186546963 557260379 880487541 974385895 218022374 486138505 637961527 8313931 471622077 152994503 946254212 570551313 803492327 906473606 374268881 615352168 153648665 833278533 519120308 659984377 46018392 523316628 308740811 984638191 902159757 696696111 50133642 315998285 24655250 34391156 407536713 785459730 216076928 692049493 655990518 518763663 212634273 301167194 763539247 460992651 384989826 821654718 542019076 558841869 110365585 853681605 927837629 212219057 538607915 576237805 969371209 368000519 172232446 361122144 346145855 438931837 310051755 163695480 951762934 767013629 377580514 142679335 609167317 408273735 547806493 476261567 61979242 357890373 109293365 922925585 547055982 521983267 480333061 431943335 906108018 144376529 427901652 609118776 464576838 679147088 440601025 793522749 856208205 421814350 357207451 489861669 320665820 671152812 933685795 69335825 924803146 449367538 600434714 946253484 103125933 453650605 287631677 954464960 802305359 508727775 628504811 777128386 932315812 137011553 452713195 435943157 541962054 61166712 636081559 9340917 258584833 616646957 884855720 500329954 92472583 479775815 805477698 996174300 333266028 373680578 23925147 958529043 706399560 628332996 888705950 214159725 347895713 105130287 697056126 721666433 247668100 424568340 384601137 339070172 712589575 857645316 33222105 474871019 410608599 781175392 75964166 264106652 500146354 485589498 709923316 430215888 761723225 649736983 654729048 869510800 307961908 251568118 209708490 564132854 511601237 99682135 660240604 885441999 738426189 652219667 424065838 686835516 977709152 951523385 361681141 5409946 39216741 904040348 319581004 515238770 548532594 831519776 957685642 576839978 905142494 281171726 37126745 89770688 375132445 884718616 702262436 417503560 666135096 321426049 626818296 443712905 803735017 426914610 842396258 620418902 673587499 581600588 15229767 867289531 645722100 302403732 672703329 608138833 393764505 981133782 420487350 236930957 551599616 323859669 246097758 489641740 702753801 792332492 579964840 338651839 109849710 955307422 157722894 233479905 652127578 309545502 303351119 835087797 75433281 845136285 969359040 429210704 101144536 756790523 97825910 67705784 927999472 102941460 18277917 615945506 885698276 246270290 47873478 365743214 5098190 275343449 184140516 542620608 4433429 997810992 557909694 640701098 858543135 121603934 104360952 303807 67563683 441560507 241220653 800042611 423336706 678342500 51661875 50863437 865023698 980145540 829387924 397432527 704493045 410306490 8175307 603109323 666211426 947191728 360657276 844573102 910581251 92607582 737687394 136764536 380579035 814564919 969883155 516489846 271208103 119645789 658128037 486635083 249789571 477272491 758637654 119095712 386897903 850076408 697017406 463635077 476105604 430979113 307847676 70922457 336196765 915377828 689057054 260838911 578079938 31296289 57258778 151702734 755744266 258473638 924067009 160366025 532014509 24122987 580914093 275132693 87045255 190834311 803173362 255544847 118948515 270872995 866197746 310252941 20492927 623520124 774519015 115583475 274558980 348180561 121648638 426205448 864140398 596423568 712685225 660963722 600078956 914638054 969239597 891943871 352712736 441264689 464803367 698170950 899760004 955691453 99741774 868241782 221492855 910421237 607787669 562077527 345653910 541081058 475914845 484901773 970466056 142176522 377591182 316707103 417170510 265215010 929603515 327606175 89719026 518209629 541448923 71703455 784431424 452361409 395520247 58347973 373568457 124967793 18657844 597317676 797345471 5243676 598308252 636355585 993077222 535580887 138245426 40879530 632630760 85734342 382104060 362185942 351044997 265295802 541675438 101024350 704073531 106174518 362148372 809627058 598920736 117919203 68503374 313064983 521187417 374897482 538756943 924586985 515591551 327487031 152168653 770456539 455165518 352271324 959672602 944192082 406312770 949928560 804967048 836151375 585468273 524361365 917367045 889425594 21060144 30684562 743626317 136127965 582896576 423611483 961885700 468359679 135407995 801452178 185869254 932578110 844229358 325140359 544970864 257241202 906998187 199819446 541975831 957237178 633961309 799058365 161070009 657175588 772638341 539331160 427430348 826041503 952256860 942307930 699722196 534942550 61910790 400661236 69202062 657749868 804959561 741049414 470232426 883913503 658811010 474094945 966328249 685343529 751750181 572188708 38256668 768080564 202374927 752693947 619137606 44821431 480979929 314449033 187548175 535003789 342068871 975278323 884920508 846998572 800090390 523797815 848947530 175252540 610492640 117007646 369029610 134338550 7978821 780736938 311916713 658153254 879722832 368491801 840246961 606967797 560302439 524826765 933645935 149425363 201536667 362671597 738631127 737427824 455550961 604396914 895945448 206732206 747035210 237639643 412411355 864630716 624286165 972415522 775816641 845939931 780612323 292622837 352157693 247918207 584621153 106478858 129292803 565437956 613924836 81687084 896652951 365073590 840468579 267557152 799603926 774213808 260612014 992988252 479134628 156791149 504215186 217531650 61312818 13075532 853455565 642165586 740662401 71308404 717230718 859667763 329378244 264474669 264041729 574697744 785008288 902968291 838316210 26236160 303413375 941114161 372826579 138002029 406385628 408156460 817631884 943804872 727196569 758401868 881345044 772631707 461713656 62205218 359872531 600969054 141227427 342142293 819832864 363353243 483239370 865707609 254156581 200967225 667016356 426399643 973666281 741626211 674715297 681817545 41986640 485991604 910474477 856016484 532931401 954650921 954894353 355587823 510493828 809379280 490740023 754642876 606382353 662348359 174085780 3972146 578855542 249299501 80907431 15357972 144948645 680336321 81696798 638341383 62991898 356766850 836120019 876764380 201184290 898551776 226088753 610239192 196922414 814623330 503321100 590786688 855666047 688367674 196861077 974320730 700983991 594810643 834334246 377569920 325886856 224232343 509538501 506316840 460746100 956648990 967042963 421648790 32121180 615103614 410342919 931985006 599946994 586074956 701699858 672400577 941797685 915881365 252190259 778608309 643163902 865582803 713749933 98497593 862265469 530826472 725781355 890137074 103648940 695085413 936563995 545716853 828225891 557517891 4407866 50029307 469603860 270655983 640289253 393838826 504201231 516122945 839632727 829680336 162374652 660095412 251944077 966437784 224147651 478373443 703210565 503804636 639159718 352916527 388997993 461770488 559682012 811033559 27447272 499041674 744344720 585962002 715672699 566026425 601572662 11519294 469146727 570246293 683241501 32688720 153685450 140096676 430495855 42551445 935796157 351389866 408631765 84518499 127832960 677976674 784346666 425543442 772942046 251383024 421806666 74949352 435347316 857524730 787301639 869305709 701898285 365197001 706076876 147323423 278622337 283497166 467054633 740133649 593107906 600817407 598669292 226486480 192208391 212926958 866221973 493855784 762668303 968404005 944938035 767712062 855069733 556323295 653172533 870841179 269526865 979475830 921781668 368278944 505417649 476818322 171408312 997151985 887344577 65386731 526662933 104952412 29053581 214706201 861672420 680624621 699290033 867093921 337491433 102171993 735554531 635031375 55556616 745860985 672491119 401351450 971821320 232521204 596596370 380386138 812530019 664113347 156686639 369068882 640620332 569934177 193465431 909947866 10936825 168474823 23734903 698469016 184290417 910033687 822121728 774878610 298898568 691815429 51559059 292552667 77124317 901586489 381216104 418116535 620114199 190561812 467356663 954040058 245414917 220517279 319295016 206985192 897992196 218196450 492528312 771202755 471926540 520431407 212916521 51087204 207381734 530161301 471002682 630371188 254323214 455060494 12696507 427100394 270220272 791621333 38035409 605428441 139601393 243275088 382769903 935839112 871223561 147255971 814863246 691449567 85615384 381258680 853046832 252851582 852072474 6421608 464871615 571852054 32483403 135400056 232322304 419733016 845517001 98777185 450434139 678359581 301421649 474511321 982548610 760032666 490597271 237771376 919059175 293376900 391573615 297585145 551094054 28423772 286997817 426795290 146407912 717773839 978689733 803045092 370644477 160130444 868288592 814371353 218618439 568606939 856291133 701291269 711149487 607763665 603048177 807022945 131190810 673528772 696465052 559201521 951614599 619288551 7608070 29144336 100787886 581624464 773854141 946031547 951411663 914307467 759133578 280712675 619602301 13461949 230181663 837308271 778356334 746799899 226802168 534155999 513994379 699686685 733404213 602418338 181608370 27034025 750842161 323916472 67819584 767399224 64269520 11192836 861782377 683257047 940709613 369899920 805748853 907295441 932609805 147403520 489777858 902486180 455045834 757593311 24283116 137798855 98053154 236061719 273231414 901409520 784185458 551352843 824835609 548046656 585163337 917666116 819065227 844087062 580697311 155910960 620886126 101161156 538992125 101922891 804331688 81537173 360329456 212314578 666157705 502982798 267308296 353177623 712287606 242674870 679353091 262482781 400981495 461809145 607233137 197222906 473192387 767597361 739925090 355379820 973485810 557147009 269647010 879038082 730707439 535376160 207954857 654315647 950261374 947219210 212948901 236209701 807381729 63882437 782506121 224164563 713306505 888806163 474910490 784652939 912697576 260117171 537304960 781665547 588151255 515848516 788146623 150809752 455728122 300933400 454411980 156702237 916223234 932594484 187828408 938762919 907915402 63776272 497331462 769739967 280749050 382190182 388114234 118641055 538007462 327105722 18813264 737190041 206456863 495016772 423244477 747378037 468838860 457137100 3531514 738257854 147366875 659261752 137731520 196365263 328645332 696630398 773632763 924871482 524957650 206244604 586817027 441064651 700208989 917454627 22709841 26218114 369984478 948384403 757291543 349582990 544375973 105954652 788822569 560656897 346940465 92733816 297633938 254299565 267097702 507942906 70300913 824858673 35663496 166078797 447560839 717196670 839037233 615016095 532079548 908588444 397506110 90994702 409271021 231247977 98443455 884822577 912017668 634012830 801897976 751543353 813089908 313602094 732468797 586120291 53526241 553248284 165053027 262719681 143060215 340162093 749987395 766298580 586135058 20129603 542682617 903247989 761021788 242283561 169381336 753269317 728991440 8903288 387968594 520572455 953763852 612260909 39843042 306256894 242011575 976885160 303669672 102063217 66478964 158328333 319048083 817524010 151864721 861866435 826915184 594199 635719557 495716315 20152707 804077014 783647043 590913270 686243370 147348425 933541975 50905731 39707576 377866673 529544521 844058460 399116210 359671847 751223281 27453206 655703912 496241227 154514038 281327383 448426986 873147437 870184949 16017909 498895966 669020157 856975802 578355172 559873187 273412870 438522499 817576558 77638564 722131809 237941359 172543412 135539840 167386891 894308453 390595933 313493330 198785089 327180812 688408959 541926138 870543222 711132033 418214448 525163595 754966854 960998506 797428663 206424786 192364482 382103146 53231449 560700684 128156094 898070103 671618756 444782744 89587880 828130862 964823711 780158285 772640677 8244638 465626368 623475573 324861634 552435322 353809275 963319068 219105647 54893564 421886428 930440551 167221352 939403976 441372291 463414793 615288632 665040111 539214288 812241491 509004672 389027820 495621508 202070439 606618696 489665317 704100636 774853048 438999747 422568983 558795166 324259777 456835561 608615907 172867600 819148885 247136422 602613894 599980396 344364991 691168104 838635374 461585867 639445942 502789850 680657832 765113781 882293507 190117202 51199015 715449744 6213081 581007390 681993313 547907890 80249982 750472060 340561588 926177345 582580113 93759012 902659085 271077036 411159365 692739197 845459200 392369756 283031555 320803705 512809025 961705556 17783986 318738713 838634047 541978698 460321876 259019282 649983717 343640619 594328592 65546486 919169590 472282774 174392442 707345831 460250690 931347996 347420581 413645818 510355864 606967072 38198122 843815004 127265915 956153596 960686014 82724499 405357630 437686368 716616395 318486321 380104601 397872735 790107615 365319894 680389603 719179938 563282618 239273630 17113057 40870503 804958449 360331774 856539557 904429385 590056867 761986466 751937540 397960051 582716520 408251510 452198664 232573047 236252781 481612495 39752555 4775707 428908955 937335615 772612780 37460587 109396952 335692423 914032178 125472192 735908021 911298185 564595345 291058720 785265139 857944003 697666006 752272534 271799839 163229996 966760696 357871135 235660234 154800952 469873129 286364443 321290658 112378386 791010013 693846969 775656313 182526326 5466115 429333264 750289473 438164982 710402901 593596300 494699567 976134023 169128630 926096954 708685571 986259860 24904884 168401559 134231150 732343023 964055334 256366775 126274348 794213258 819355278 275698584 831087285 344790050 447088884 559622355 488454119 474916247 696970502 324020263 860979764 804806493 690199432 997680890 761128482 9040356 612524693 5553409 914545782 803770791 719426401 809232294 275127490 673133793 373320009 671542001 278404041 387015061 742612408 884214177 399499421 711010970 467282802 993398005 390455886 972176698 491088050 461779105 534831814 566511344 196445598 408205163 695435459 438379575 882347327 431559361 63115607 568871875 271681519 348507518 937513242 601562841 302186383 982861682 999208158 949966630 695795774 813182469 989798972 157193363 711142706 582303589 375053651 177798774 131906853 940899292 87509612 31814760 907241138 163622228 150676434 668441614 403248112 821087329 328496906 462446176 713959914 422901398 754831682 974876989 365217269 826601634 729227925 299188155 298231831 139286646 127418962 890615885 407449833 672269122 684973327 75601256 60967400 430760818 818911488 308089365 862182713 448475359 314013101 889372920 875731413 574729853 860179976 11811349 497438440 318411667 953765821 441986565 914012463 464692281 806168132 86209274 711944597 547933115 525297124 458089602 374170173 213103479 584505583 560315600 928071959 345081179 831724111 569889179 531726650 439249381 486567200 347169569 376607807 40977971 23102935 459769642 938659161 930096757 969378760 149812386 927464483 666462431 13668350 547561985 626567666 122622386 158945272 6646126 868139457 45449164 566961755 623393795 484075932 333725863 84542481 752365686 824107222 668549984 84763361 650586827 320437859 411187423 161213156 828494292 947482785 376101337 154881671 608629727 268621394 552116758 357080722 387829198 144691504 109044936 471274732 177574072 475843737 286113240 635776428 716616058 310915380 987962896 459522473 288066696 849914361 184380122 831514351 424085461 541955683 648939807 465391927 143588355 180565179 336308273 30997704 650872162 908021302 452755258 507435268 176110746 223057926 50685259 184008907 778390990 227149038 164820054 914480528 77897331 923617977 237723932 178023484 370495191 246676641 321905902 483466210 927411652 278825767 158015926 147533025 529865353 925377672 152149976 890801682 142855163 19288155 434034610 633128472 856714743 189824913 811552906 231645733 244641600 11749296 955713044 678697400 34965397 326966317 146197224 471111238 502041295 590543798 439743081 259770553 438441081 192108980 849832040 471552634 71800379 491411971 729127690 517732397 72470120 37888742 153543646 761262546 891046739 839754526 736253077 563497214 970322180 689958683 12883683 582053329 861328249 270722023 628149866 507338869 370662876 228719951 739865820 244365280 71578913 67723628 464207676 667670642 381835366 77869687 6396637 929790174 66844802 540508953 533185836 216751367 629229897 239127579 585631042 789393406 152407063 758120517 709476647 853066677 643920845 239169819 448674198 627344346 492340352 734276776 337017654 104645876 621729473 916785313 715902141 582634979 107160255 111663177 251548979 657884005 616574285 306734400 634905289 94247971 469736418 124562293 639176647 707405645 224822629 636473502 770044522 875257492 222672933 522585426 972609637 695809583 893652997 208133915 63212930 83897 220299159 28190659 980911889 419147040 839639769 664121714 188698130 4846635 213333856 302420384 432902437 254598928 22018001 861429483 610907750 995878694 976245726 261376178 418061196 453631058 30890482 399444902 172984537 749803481 371913377 269504043 694461538 291292975 919022751 16807500 69754539 596479575 235515143 470234624 462082359 356772033 343989632 491444850 973298417 549292228 683760076 290726604 558667534 636823355 915329089 868422025 471845587 653628372 690144666 220142892 341066687 919421595 62559175 409845605 692702022 491618530 340789788 179892105 473895029 867144723 694033491 696251752 344777604 178515710 753560944 188853296 53230925 648481139 366604402 278578824 654862074 241580084 192882573 389994842 750671504 890453969 801637893 875809491 589249052 701928347 795705618 86838465 315166195 443031856 890361291 303734 283703349 963068887 189258077 989707914 821643632 518776173 272866825 293809490 73144791 656117013 502336332 985950172 175892475 990958786 6164075 379730260 23201432 63744219 126177935 730826250 354525083 882025542 764828721 267300969 459682697 580987684 56371371 215802297 779983617 445167546 635703955 434617999 324817403 504667184 979384820 746092555 686279111 173783699 968947840 723467014 930208282 126987024 809665206 680027860 243108451 568690961 932648099 108123419 955367990 956423910 207929408 564040399 362063282 106211278 972757806 889339947 383704279 355145835 946028785 888904213 457630950 924285493 186144372 640006816 518617519 654723425 845678712 740906770 697911605 494421321 846071895 722880569 40082016 475389064 485443033 951091766 929531169 672069948 857363412 963953754 392065052 29999486 764683523 629755799 578617177 631735496 19109495 49803480 160048783 422168025 377063409 678589316 508269201 390919629 446279446 562804055 285379274 949155152 490972739 615916965 981489995 611004746 250434274 611739245 960241425 293585059 140060741 646676055 102355944 703850927 35467592 519622262 848283275 802642095 602480832 974919000 568617469 504268047 705345276 659004073 296488010 98094419 309700988 631409308 626827573 774772344 381009203 664239183 30943503 400331837 353907405 710062509 553323837 638459279 448294788 857616482 760497713 161898144 742095342 867348679 57062992 602477364 247441902 991542224 990715208 864425744 450365892 727740791 806694973 959984260 960478220 233643255 426214342 777593944 593263797 566799354 78824227 223675576 697451585 286500293 644174753 790905186 143143746 888572564 327008487 736107060 374817165 193459822 51836192 331319304 202084983 356371196 137527788 729767968 934537715 210361450 565248671 66816928 878629093 813160506 138741965 618509721 244595086 553560874 821559070 610053149 168642063 787818711 437467834 834706441 872485993 615140869 994970243 976885071 741494434 540559584 405731294 259733873 531073228 371921526 782221339 571095675 369596810 581334563 998653162 562986349 39610512 231855873 811576108 555559511 166555643 524622089 18936723 750085341 746000839 945167676 109107910 396891218 655363494 715031581 500758132 439277172 139520443 628514462 255326396 108001164 179083800 839187639 435088913 328421462 786844784 229190079 153524640 941451681 48387365 690640940 135860739 662886451 508673245 428800394 235819271 392164974 204289191 592095206 222363793 736922863 870287368 762617687 428115099 816748098 751303214 968318677 355560214 261040105 995632909 980273635 587711620 457951671 475367073 862825576 118774377 738345317 602350694 95483977 960001758 138891714 610544473 984444808 852984279 792614143 866039999 81048706 639450946 32670636 226214291 570127109 244630806 450170524 423962965 743185779 21835536 647926383 243460216 190540716 590556207 944274 686797954 498694083 994095575 36414866 149265464 564330372 198905392 904191000 935451490 528784253 279355028 687110890 205917908 81785660 504075365 460953399 594976282 57059678 433608904 440394072 340217726 287267258 779325670 345929267 590068223 6295687 399101540 455370782 551168522 312097395 328984264 457070563 53552223 686977419 191303710 258427415 313329090 546813412 154497229 602911923 896040376 814362705 547975643 319193453 383117877 98960653 605053207 418019161 7486458 227993959 434122583 979583821 370933235 946746618 24809278 260268425 846767677 101075748 858783454 183325613 510318731 683203935 14540944 885631997 788009765 752053835 245215572 263621546 799814689 351445903 878200850 741198986 654884046 387375411 788397674 453501113 271700858 950100099 155477822 626084327 69475930 107195620 894343260 537673863 325060884 922159930 983701967 798447194 773949490 443256281 829992460 758539051 630538611 893678132 656151379 719091331 747130978 701738566 600491624 332440909 665190796 695245809 335477779 852438432 255355737 763369298 761750918 152706703 129923424 978870372 996527687 350749961 687983163 235297354 737238131 112299371 956511109 208933962 519672449 78344618 210721434 887797523 761284798 278309785 410038734 364157048 640078333 116016426 575476225 315785664 960013645 926092400 418371366 557513319 658964050 388061888 455168342 58368140 57275046 344847248 371091296 409945252 900082004 572195214 728785412 265456114 446833155 696763421 271852966 423961231 665726107 8875031 723416169 659675446 680906701 350826835 142863900 546200513 689189808 826732512 330557591 925205839 850541689 599747009 601638455 432353476 171704936 699301346 251473751 795412136 828711536 43081435 677732608 791438490 564781435 179661608 792741034 442508550 528899645 635292564 986498406 26556540 576423776 803876634 214803669 327012435 975494255 640756251 854249405 278803538 404820251 245614599 843884959 784998420 995575586 311484853 268499214 585635368 387946224 826253198 369516310 402682519 412628322 105962160 913172876 8525319 135090923 488227517 42416958 200617865 542243270 493187822 669557933 575383206 915511622 684139841 126175344 825386838 64160411 842536452 382791344 399649395 626140261 976511420 601560158 843804303 800441169 175120082 841236617 771810269 27006505 292119554 344027619 585277155 37835273 630670642 267721691 812504151 752041078 721426796 26664750 353334373 888015797 59164591 347043018 672439207 727788604 79808930 713236342 397695332 551281729 540992133 860852861 846254836 459082002 975907035 554409092 945089896 157027269 643973584 675692552 393386108 339411647 269084050 916856438 398226623 433878838 176928621 616732778 272489653 731150645 386896270 382254670 832231796 60099387 7806108 426026428 437761424 870033414 535972789 981022161 567481451 790537991 288378867 858290870 49765758 272223750 414180791 205561931 6324814 397328078 774413955 261222019 125793858 964052134 940148472 275207356 187819099 287098307 115115342 644160032 933675197 99550424 802107718 641250424 381050990 878982914 363252381 288638129 141821142 63693413 254997770 569390754 127556811 911268427 779797505 649708844 929509927 262458542 974424772 571797118 205223811 548822978 233057877 464555177 950278947 617406836 139061746 72342842 654740955 994992605 471234015 303278446 534715812 133163388 172282735 856545745 479216925 732986437 218973968 779598549 740552608 121181656 373879644 624306222 383480151 827918571 862900914 797908304 160038315 461379807 474892456 41316867 200446106 839320299 687257230 494273832 658173518 306410675 205402718 438132835 413754771 759219687 836511651 537235604 589687700 973992777 130792299 755771325 834500592 191458087 180194596 86580791 436705664 998049858 546647858 196366153 30503378 561044528 61451217 396939756 297922728 22408991 320282237 30830782 374327195 41606945 381337940 77644243 606839208 295606821 70708312 673531181 859074058 223448445 922658688 125673940 780916756 653148009 774416300 88624211 166899779 374951500 668138388 72957739 872807373 655387441 961713885 500894435 167390627 891082653 189816376 891447486 963743672 147618304 852176925 921444206 743454143 482935020 776123059 548047753 844082875 363736247 594039470 122890555 884738832 305168982 677172374 631716537 679443225 980358421 501007193 737382231 7974047 272845798 203808943 167279993 350896139 42719258 580348420 493147203 8924582 289695038 178851756 878924118 832284519 315884 109893643 18872621 730261829 710121412 651652500 114248331 98752556 607818702 903823508 963718257 310772621 68979385 133331055 35331851 603545535 659215827 114439847 616495375 811679624 331455329 163580143 732148894 997304881 478365928 544962427 103998838 814538318 921108081 993047691 50013104 209950732 866571255 509436316 621591685 196127353 791697508 962384415 868730650 707271925 244422045 426112123 393103475 820843151 511677716 663354248 121271049 53705951 427823888 583672825 182592950 975895009 247842792 864075618 781034615 88610065 989006364 721531954 730146389 533792249 303570438 487245383 989561379 674930923 733382950 578078442 191645711 167650574 191903189 538381856 114338252 928843628 803719525 167568635 528095673 105887112 386467150 700454788 867687522 747501007 487262317 140746317 610555297 880746484 593902667 983033132 446083551 195004895 438862573 497701021 987435610 492029 313074038 898383749 42564090 186491765 108025905 673897021 605879996 585360497 799461608 440303005 584946021 579364482 183260510 244534006 916364329 352086267 768874945 101064334 950839986 65694641 214396744 343100927 951688789 612814051 994941270 846734997 213790931 74091905 414592768 886406719 676670150 778608561 998211249 21182348 696856445 440144677 189683601 936925318 826477312 188325677 186670047 191747275 337973029 632287330 244581535 428221156 303937425 643974630 360563264 390063372 799469414 521409514 808894642 526272207 506053695 817884018 848343124 994261921 925857328 909725098 231851682 264498 68577396 121946245 925793203 750275238 31991578 54388560 603237712 530854489 175898250 334656647 42458214 548050502 615166173 879823381 376489842 418054089 11227846 546437645 838838918 625040967 837720925 684274046 507130788 751635835 819493980 207861208 20419834 232075067 450304633 554967535 812250423 511450788 428185142 109077947 95751341 148967990 529893320 32609832 674105632 70902230 805223141 950672758 357732751 292481583 905272041 826133619 496189463 767656602 415687165 811376089 547615340 288779366 969910590 159485061 943584440 914501655 390526954 676586422 557906631 977103257 806022600 448767951 614724693 937329248 796244545 212851780 180592963 945476518 958000944 67660008 848053250 535782130 601041995 790048435 981177783 312441045 895802194 350695463 480449240 232264534 513051112 51666213 622987201 180505584 159684812 274609910 438475139 915500341 987780427 878735505 692551668 540544635 574421226 506970574 559190188 399538030 698550707 657238382 859138789 390236849 481299745 915482992 533747304 265735313 7418481 348069845 796801480 707918183 320779167 654774592 300466811 772479849 410838521 569533400 494461074 467745392 252167577 614574295 235939748 769628963 347132612 769674110 397023344 858962362 361495480 396403503 498813120 836584424 544240740 228360699 336646786 343686353 671564551 183050238 987596604 357421842 108340638 65839381 656897882 991328009 762559452 640926000 581785345 449300479 708054606 194302836 560858115 760844958 675093860 954963964 79984348 928101958 396322707 614442695 590903818 204153857 476565009 420535520 8410419 225274646 514741233 223336177 974051128 981919114 169998403 103626188 91907112 38767076 297631728 119286287 454287853 603288519 678687120 753373719 216801122 195718340 570046667 167792293 675496458 478776656 38925596 971931123 167732696 856141095 955975115 842782937 525672598 47522597 891678355 73928108 723106006 416964076 289228764 21230073 968508341 405046667 482835465 501693625 309375596 819553294 908021037 13965195 188998703 687305031 328360364 937575011 543533769 285139398 411831353 124430954 593547839 859620072 760656197 856637721 472524192 765864102 949947628 62148502 658737038 520985987 219789591 304065871 871830401 408125514 866189169 789393762 489235395 685176570 356127142 544144677 228738623 569662424 32289165 754604627 311501399 943673068 4547222 334825554 245775764 500947854 844176840 782097055 83757559 716235515 721366758 852269347 147760363 794205192 324613733 370419706 229409900 969212943 326461089 232910320 587269991 628528858 644866667 65189548 265916931 99513260 380158572 672153822 966368078 839298845 244363936 741169127 926100533 77614158 77621115 804525480 817994494 967698789 527628539 379329246 158115671 142292106 381688336 275747223 733663276 245543846 812042997 41796700 884864645 261571507 682348351 131877415 992888729 86535932 308806203 504677352 13572773 121012450 292263015 848403017 871540652 870171763 478486596 462603825 966980576 657344958 998924685 269985083 564657931 461023319 280473847 455034398 117814308 54052230 814893332 361759458 442851495 725500474 928791269 616558725 63499192 262963457 381115250 496967709 737037198 94305998 531510571 922187810 14731728 411987250 968323439 107277838 860297622 29286739 788366174 769301188 567657050 438538610 346850529 377056452 103025148 23023145 192238311 660074007 394933407 205430863 352945172 161229714 861784917 817127178 350402656 763085292 224005721 669611883 746237380 719412591 706220410 564342582 792301283 432755373 352184603 708229870 259637297 76599631 731307867 400254771 382537539 582765245 762546327 263278683 394276810 327421687 616179410 637041016 757854969 58746738 497742795 366025016 550224561 696985713 374627736 36704154 549222644 355008119 520055007 26665062 528954127 290625585 355058554 239406874 214532124 791166385 947512164 70140798 457814793 53164430 97415242 708386532 579204374 412810030 677534976 563417794 999989970 810326628 995724666 649955273 629460188 145601803 587819955 351945833 283633392 713067033 776276621 196124685 627605610 530643248 834247663 82003223 751652354 948603521 877399502 466993923 709723172 831396122 851501856 305555422 923606542 502726719 918012322 210007333 326639384 910384174 320000921 428269306 150147255 293059954 979668796 142317979 945079821 531534982 535295964 781572345 808238773 185571133 446167542 159570264 511219 201017733 878845919 169411365 917819056 60426939 161008567 348449880 45282224 951244096 629934778 138859980 254567000 733248707 693193747 653851884 410255908 188480582 673834594 116277575 324403319 979975055 261065634 293727063 250744586 668034016 51287438 119903566 647536739 407030875 661773151 612860808 866766766 997532201 62832257 58486631 735076506 418826649 39680932 458707912 111896977 104175298 272702967 92574587 377959224 176525681 800488633 821518171 334407846 562178914 657991746 613439209 351560966 922028949 530285397 603137655 489626935 558085607 181609000 93718130 595432414 437445499 338534882 684740933 541075039 38135179 905888287 737498248 616985641 496663439 796299807 868276102 345455445 658323891 23961429 669913064 906542415 547572947 260655819 394354672 548974265 888355551 22528414 339926446 469056271 10402793 746528173 214467803 968028203 922172692 281549088 200949669 783780476 789662940 757890721 856988775 264289225 985203868 111208752 29359449 162521501 976907599 876893608 626851921 930648599 87685035 917535763 936444938 389336213 552203256 78580659 330335477 30558619 956988938 292023644 130114183 44701988 157963991 30879810 716413843 444975568 584365382 905597964 703522580 532596305 209704531 547983329 160808479 693015708 926429855 43655841 260765016 656019803 98994829 168965803 215176943 770537381 673115130 75322749 244001874 985232795 135068367 867366520 972297341 210990379 953865220 159569397 886425520 171580642 21036924 136395028 425556507 808952075 789432944 715279846 517697210 834356065 59592601 838508609 497889295 762104395 325048698 379730792 354539807 280925490 678314077 398879744 291153282 62159058 424162105 853726902 352517777 748828274 431681860 948076321 12707673 223622624 39122537 283464490 831932680 516313765 996002257 196363723 77562567 97348268 335818865 972001169 828773083 841971928 322573742 792368990 867454265 338564156 678554463 19460326 578259621 685152971 327375447 20607675 679379218 931811717 451318604 806348188 290553478 101915434 989111896 932439931 53434176 632490620 796479698 495698694 590878346 996815605 719344924 962848255 321234781 982336533 634645654 819301626 835479941 148360540 977277426 99842335 267248814 256943679 901313090 149266139 793014952 977471950 549760646 246967888 661672685 292800256 152041097 484987435 502576746 638214539 907248594 405888357 130221913 785876612 477627032 64840571 387952742 688182491 784872208 307570187 322306829 160424112 913641578 898734898 736841187 595851493 203325870 967900155 547965680 99973385 922740350 232556536 85594827 437921963 806037100 912352663 24155501 11796258 224730655 966644474 950716560 539653552 847350172 246303889 888925196 10455424 883449530 158346755 757833086 186545954 960480297 792854789 227098997 493596133 702683799 872696266 969852765 200098190 169824858 282242209 629258805 930787244 432871220 678874786 381946518 140103025 242991437 794604844 764484714 130889995 731938285 743977559 518852998 830708753 663595006 405022002 484317313 496301866 502588464 53857547 69796832 738158175 118739024 317423966 390848356 177641032 771551412 631224428 399627213 180780400 55099476 653777563 372495874 801064397 556465155 94666539 107166032 453119360 766181577 182374731 906215335 66491061 491745517 997558256 82265307 773645866 919170937 151889016 775131431 696713660 979187047 444315048 865134069 437842894 280824069 901205468 423908727 172007020 948350372 819334097 521380564 844806859 705717755 435484255 214855570 297228256 145164567 417412896 675716706 854013694 641811954 432371036 994912790 870699117 910244492 789043547 496691311 394463846 692862602 264845872 368023203 29182570 575227136 843873884 284171367 607156454 381479167 720965374 65344429 656233714 255048919 16889788 687925813 742673226 244963254 378157009 633406136 780049451 420019153 646904368 227391992 792095303 874114822 643918223 539279387 896333826 317030493 472521891 714297759 492162216 927524699 455297543 910279778 487553688 771362982 177293005 667447016 351764583 636163384 67394187 913037714 274891872 871120162 757659565 117096199 943547815 382291076 648143384 557242782 261005328 76564613 512050710 909626983 944555488 409928310 672958583 36353829 389504290 666050905 343986694 894183651 209004585 570575111 170626085 848144756 788493498 44574855 457180973 704978137 98282827 146187342 481103993 27807757 505608678 969166224 632705684 650856484 447602623 317290389 276295968 840941797 226880075 991511957 568642358 863193957 337461237 173104131 711236409 26538426 314240611 286080551 187667752 842857780 287689642 673571173 369455580 768962432 774262383 514007272 902136432 211761156 487794956 130402589 160992095 487870407 831712534 673102591 39051537 307097798 210614335 84455438 532980554 736077009 318634436 507969770 148807567 454409186 677932778 110391771 634818471 754021305 980152429 434355354 317172068 151961254 445213391 256803016 42907215 82790516 321671812 964201983 635979096 557336879 361293578 796983877 159327055 342311370 921237417 696140823 65282144 292456034 350023410 365736992 30167368 870804027 324102712 839840163 320788866 888600775 743539244 329881676 229583618 980746627 206998000 646409436 515926924 888308121 325731593 925712129 2293628 811948658 75724130 199595374 779566603 729800006 979064078 687571777 728608141 357742 508674316 355584202 611680103 431996778 769780785 451501918 859890689 265462009 86417859 682421610 428898728 221665772 254054119 306775668 447011166 952562817 93443338 462406164 432452360 143008052 604486721 962455457 606907674 891649469 165042950 556362974 711320401 613508578 521469516 383390007 455183229 217845621 939246825 307010847 351826965 150999694 962191690 843564380 780492663 221319864 964956040 765744257 238750804 189248896 17315705 909355356 695700889 183639288 382269886 829728891 71329211 877933274 721314287 736899602 484767837 449735204 434859815 776833267 343502793 837796672 563278943 930185024 915041438 360415950 112505436 833420799 790966425 515759126 568719623 316586908 385280676 842089014 908874481 969387746 569607130 571591209 281488753 440834117 314404889 29517456 228331483 84087351 422935953 572492384 609642328 58618441 817904462 110907528 613279809 147522964 679592917 598211341 626340110 91333639 87644814 545688713 53685608 292445883 218541426 309212473 638105664 616268492 285444204 947654451 334635068 569669640 840809666 119200422 786026221 773141427 409230964 982419885 375932166 746125100 44811404 65568651 544735204 618285698 204493891 436150323 757002865 237683705 525905915 558553596 546343353 687470099 137134857 432638038 369361732 395936532 325119505 40209080 495087305 990340722 265192388 555853218 551827732 549497200 818394303 643582814 502536028 457101028 60491 474280672 89045986 445929150 91366178 683757938 528523853 240243343 738241802 325546014 222664148 292225677 30303836 275016217 406452455 324276397 907617623 270002838 381178693 50272248 548588062 110397297 511221316 558359769 860552846 140290445 433478739 423969169 123263647 901582360 970457179 891264363 811077728 466464788 700986723 11140580 798715907 792063160 968461510 410486424 709722166 980786326 754419582 652499466 660877080 4938628 584718532 636259934 426146899 861736260 273525284 599651753 361457887 540668931 610383670 241132451 372357586 677966725 172026796 667306760 667785150 1779068 483346801 340575635 481431052 904373769 377200531 843610377 526831309 11163426 886537090 380536881 621086864 268901042 973571177 446846133 829827026 776227544 636702591 304207853 789515258 703787968 195590947 588177923 98382798 704075526 423905571 588060187 112950846 927691564 974909328 107362465 377167986 317100635 17146338 942751901 253367825 17620908 530114199 835926765 291461298 552782229 745329165 505476881 228386593 18750994 848698908 420591187 842479672 610811237 365953098 99171062 601595357 851377686 35295186 738982438 679307458 850513328 997589246 72230112 574659442 337032567 268350562 447936806 861147264 149184207 688468453 91938878 751027516 657482907 524667454 600865391 326627888 241495144 547962480 998295736 633916545 815217508 606307581 383692332 63430483 238659761 586275626 228110074 363405297 640854244 998062748 515966870 227123937 676434791 181397326 601770362 90309256 750950617 43666314 10379810 865307807 155901527 69500980 658499082 595545591 92061046 231493669 147937554 309290726 837247999 564621259 961334245 735975943 583378846 928497672 863322667 800988788 22169535 435633680 70291520 299519547 246595518 354006507 150550408 511246766 13411198 556860846 168122137 673214963 2485413 438731749 185678129 748532742 977937730 128028336 700898952 748233572 924751540 473993685 694644692 224276757 194463587 554898454 523712965 641004227 763926560 451890563 972967781 254333827 881693179 984140626 891231172 730738963 628743687 782183514 896492217 258908809 962978414 84623336 427004300 927907269 984033634 179554590 754341471 786799750 914793760 421140650 13654251 756342892 815892957 817358894 225316571 125428095 281818860 90092893 430945109 113030195 960585113 137880977 538273345 928386844 904394284 911130254 446666790 2159917 12621822 554503944 555928168 894351968 293318030 40148682 199487316 876982098 268192774 917117501 842345129 166751161 462626786 951041324 824593168 68287459 281353307 320759124 323182270 5909232 771237331 568198288 708109623 609474479 225938062 222418983 352729939 972212302 659482815 286912562 540458371 588396572 195055773 214373661 379783056 559184266 327726966 934131063 757752831 936141963 567723717 465760127 79588359 810143660 930497472 390927370 647142625 543567996 387409238 15170714 665490351 182222640 155150465 633084715 674752395 530750974 15015122 190615492 107719428 881203746 755473611 942617876 296388065 626956916 536877977 611597305 429790615 591093572 914157752 444367824 606614927 371379692 805375947 872811253 289834378 623818288 685667682 839883048 764280631 697630071 796729767 555548867 631640147 803948575 87667513 296822474 48339974 574063737 260434082 544938865 251101191 217850253 620350623 372529992 783146653 664409770 339344786 753379755 21893438 144855104 894653882 169047495 718276960 101515133 917905433 928750024 650947682 766665418 990449752 595975573 874488372 879615346 687448767 883277919 328254218 99450205 218936333 881349558 699102147 206523266 776964783 751097034 449465669 355611944 224796987 776176599 684870574 753634424 782839353 373978685 819069477 326663170 722695179 604939046 161634976 501425790 358456856 250848056 916189109 707300621 704040281 755885448 762426599 342292666 480170961 819692032 994212774 521180854 932913501 541829679 567486571 754676469 296058462 775533092 249818434 766276946 191842280 912493798 47698337 941621010 475744370 871300608 241574810 173247749 355276653 608993899 156888622 962146759 449880757 509928851 430374220 405277760 644233696 825947865 180314597 66934369 314915815 958742414 810217636 627535421 547327136 640508913 251599817 955569490 962612941 902633162 277811903 622580297 91123897 374701523 469184703 453270482 268501796 513706930 393667524 86585697 962467789 314589137 663367374 955666710 565262217 472725923 858482316 837716772 706648162 839695044 449043951 958385901 189630203 42739216 445224768 577433544 62381392 954807282 843747142 402952842 12894584 767723494 926239330 697908164 27576147 154944241 414712556 728776733 420801801 240263103 183132113 637596367 965590394 335641945 107630253 122747260 742106489 572128783 159618817 423790834 130791415 287455141 338972177 673272593 827676174 257592591 589812642 560205375 50217388 148167728 333289065 914839826 815765100 803198433 419038762 946205439 229344563 165586150 544041458 625146444 562559136 741698131 446030689 911188653 650387623 708712847 541766160 879612160 713847660 776198660 299851191 856448053 687441233 723528920 650402677 462926256 502990439 465237828 272418930 676347962 898514838 705119652 260040768 19325945 27500432 814954281 641936486 490115257 764748732 591251354 499820636 702471454 943201494 990128197 82292571 415112244 16207347 736181444 824606271 215469748 168482880 368248492 136198435 343736029 89829740 130430141 581433466 495842070 371415179 982313711 132849516 251337611 492873497 212525563 130246971 593249633 990522443 377553113 607722866 288490303 333186431 787201352 455042186 185852923 556743955 578799723 158947510 631191759 970631957 25429301 919163216 545087267 729450842 698949743 805360308 604829528 132170047 468001244 291439479 418468285 21847612 257244813 579301439 260639755 980544390 535790047 254250641 435437225 198017075 65664501 830598394 725205507 588793793 697953929 99153135 239585774 661873095 775640395 543875491 767776815 453233820 494003617 694024716 708253186 594724941 217165941 944692983 920015320 243911718 169004634 48742026 939842285 199426001 383663537 397564326 261630035 54812146 749933095 872630478 443791772 361007920 37921173 255310176 549753560 669297334 727112283 22314526 145368984 747266620 310327027 976340548 604131445 194983452 221420609 825730291 346303685 975090229 691285119 504198561 905037659 206635967 685386739 625692236 697112883 640816450 346529857 696639776 851701270 408990178 403752710 655179171 200376211 356411812 416746704 589530867 426227484 837793872 812683603 364125573 889607017 644299231 515474040 962999525 713499061 616106696 236202713 233140451 703657778 200091962 953841306 362676794 712724830 289127877 684498638 988157717 562814034 306714959 709622295 110301855 489588968 565192493 455371823 190915701 460800034 194871229 749541597 66121618 681321836 86908546 280065981 746647899 239837937 7221883 266341814 94380619 59055246 772520999 972435317 457088850 551821529 461865531 897290615 594516887 70843603 197047087 838793046 598150123 675956883 521731822 557862428 271393546 329659343 754562125 243823607 206663040 196527087 640812135 749071094 718768071 439600548 297723806 525942214 843963463 288877840 323003598 517593502 519069097 153045771 626475271 626148649 173565346 593327189 492918880 922843242 149122431 548062418 235210976 246908486 864800746 845265252 837120055 760130196 436825609 637266821 369162942 759975847 365694542 999673108 393219131 154295532 821219380 60092756 383134924 799593803 947119008 712419607 614126781 725892399 439941982 102533058 439225387 340437718 27025731 150895135 881539468 614454687 781181913 517955768 8226157 634414277 727465473 423446275 113494346 563231731 537728042 815457179 713843135 114681943 55571641 576612305 519405146 422652721 954520529 256600562 758022636 50227340 713001238 287074419 504334866 127940324 341139519 476799158 41101272 898675322 294057140 689405691 841345960 445364331 810803329 414536582 973449045 667504584 454577688 923831312 790211311 115300824 540716676 519036227 441749587 62110911 346909986 913644407 275232132 933085362 497818743 400723709 584926861 908775287 316427848 772858055 68983261 874467723 755051547 189254814 799006102 242897250 631671046 834705910 676466885 254357849 840601153 503791374 731613831 134986061 524744071 284676251 195893945 328717952 638369916 507428071 818036471 535719107 656527031 646969275 530476027 238958395 598117502 990306864 334834330 832890119 852975768 969327692 881270724 623296947 803621765 554227258 435291802 437312162 118601659 135848415 200626105 73518734 192195218 864199112 193369743 444988669 966000296 489472910 298615490 1443559 427134731 265510030 291870666 215723377 779787634 251574185 893944810 140189144 257492639 28846645 258818176 599080781 504698400 771706292 398197006 26118054 709487565 38819914 592882966 569779143 32729944 175748640 994558688 869511938 962963765 380283674 289326564 166644566 729937505 351607622 502550846 582587230 966875869 300457760 591457446 794804133 873031248 964206297 757502511 796245723 428098819 600807963 616906419 361571539 344372584 860502550 558109355 710070284 14197451 337436358 28322758 50347924 810221352 957939408 326213985 394761855 285418814 307022107 905885865 859689582 295920045 57689454 274787469 960160675 299133862 641513593 951569148 219144004 866945992 347704297 564391515 26690978 447423562 748796071 199411107 792136683 858621653 377750382 541215421 142030000 719949351 5042776 791498478 798023024 404775719 600012955 819118301 948898605 791265241 246840233 633377141 594436151 418201779 4909678 487033806 265308442 220369143 435672767 887577302 747125646 769438697 995410606 968312 58522579 723837385 815021444 426577837 55331406 803768260 839478189 915638011 155358165 581094017 444039575 307290070 743462851 593611725 715931612 168693590 227144904 520943353 74688942 60917801 296483866 249239418 568464091 173244268 380847721 223389861 97397237 383761585 978916103 703334625 493415010 513303473 882453235 968274474 432396673 179006817 906616643 957621508 603509280 75010136 532468011 727209440 662376890 402702533 5379671 250451120 878885116 76914465 493828696 792946570 158483883 229454684 104279577 445410977 269561310 144975368 140477343 205022186 380041845 161209554 470937336 866925587 355651905 813215968 754415776 203139905 959554159 395130585 986984812 186335517 502992042 776273515 499237055 992192373 970305085 877224209 827324062 140057731 322199499 812712638 732926002 351126396 738422353 72507574 325728775 723435994 91994622 155768896 972351649 438335580 298279192 889374472 714732691 455630180 127923421 890466172 274598894 497686112 137395109 954921278 287067200 214256197 830067014 81109749 177529621 83189952 995289036 206890486 933812392 739266620 264337336 991197565 124258433 375792897 151538598 475989485 815121279 940235183 976419914 895083517 418672315 973182020 46253075 710400182 711744666 603277711 967012432 697938849 766416686 60188432 426679977 355454029 993353403 876013082 925033964 790867185 279353077 283688772 923699137 997624056 72163037 929211138 77571373 504820583 448554290 828081782 190016991 47861631 502330079 612690869 66050653 682720640 808398124 661058458 598601650 125932344 353743638 554622472 691403602 94228022 437788517 820121772 261659670 992120364 326276651 473703930 498016454 777083859 495626860 903011276 544906683 105637475 453572065 418251628 764092807 16085662 132652823 62038020 618566599 36756712 542838645 465086046 847630302 735711737 876183443 577187048 917254346 80627255 888888242 783596988 29183473 753762141 515148175 319006489 404742377 53358878 808326085 317030032 796898502 520284925 347549836 800771751 976018197 295057754 679259436 774855830 80346654 70563698 938996764 150622175 145551558 956730092 563696023 2788200 8127363 560041895 526564532 561494114 707670245 72671511 149694485 544738725 761048695 405053262 614823071 194223875 749571378 722612483 758226716 411441934 820686413 627438324 89591584 902788847 734104168 810150601 276392924 45003763 686987522 802983761 733817659 983403393 747873028 741992495 604570593 393433668 195958434 711972289 900840891 305825295 945980799 569878602 438015345 376485402 873033049 183930995 226361677 593169836 429585268 276778280 517578639 528350162 459171264 876193994 272708917 767728129 293105250 970716451 269571005 259227191 242505756 193821875 739444408 25461346 224936575 500607568 450660660 164207530 231732989 403304693 438082291 200618688 163692295 920798143 945842084 817267881 490000534 238308993 338825939 815753085 762747877 391104471 504489774 73669121 108945917 901027806 143543901 695230783 896274317 246544171 510190408 101179527 984867333 978619669 714766477 406655499 983788231 168822502 147977619 321854838 970098374 510504181 661213856 356002998 111896145 502168301 988173270 702455225 679970969 297497140 162680976 576818505 126820254 606042160 203708685 966357944 321180002 547825904 580877999 889139171 861855079 824144993 289590298 415997678 345256140 609975603 387818265 297945480 615954971 443897433 478637419 362600435 63180307 960344837 163068683 388200732 132141972 899257462 803741787 681142518 818977756 232556693 704889888 810966913 584497622 378997450 924253878 440959458 136671872 622392282 478272528 718186965 47507362 101731774 259822676 632993401 104669060 642627363 406858183 311312142 869833029 256442751 977039455 909551431 733340612 418884246 401638209 768198900 460671075 691540303 787059679 675682774 863730007 67676362 914734372 685807082 865983285 578805977 572741308 910050144 644665191 502317651 508991485 788415 804185171 441795003 396422235 354042250 526555791 247597131 136901534 985403973 516280680 636129569 119787783 917694944 32493380 62330978 235332058 73077460 207541701 309965875 180548736 756756868 152398693 370172543 248157474 646976152 812624320 578417340 438899373 697885648 416273154 135853434 971862488 206375000 282681850 541134686 466634469 82281339 704350467 877721780 770212340 368676315 177797986 168296439 688684062 372674078 671985850 412291033 958068244 139714780 483914381 535079129 718635853 918481772 362041768 136073670 880295979 864408751 653878927 814328173 283548127 469652086 279495613 432484393 810892239 556638811 176474114 751091753 618182949 165058628 579872840 523722722 309275871 978927468 503784672 44301705 804806030 280795516 482694058 823949456 538859869 885696169 941891516 30184521 856104951 245080517 885773391 447139889 828074107 43823246 851803871 335223931 868358485 739453395 76879244 389461851 857350430 728583464 121997945 19479548 323203252 4474599 836456504 21442206 837412655 286914604 984471709 446608251 550997289 133689069 978732450 93882313 635549343 585181209 26608282 457971887 346008863 96942559 136365496 796111288 901190481 384404135 630036825 485252701 63816010 171322181 863538244 715829182 638559316 56513740 58676076 18041282 885672846 425925039 185816074 286634424 923827864 271104736 688412792 543503033 799371684 138338351 207338809 603031270 531370225 378470327 677231143 969946490 515379797 455425124 153330781 550442516 239345207 747771833 169164584 388205625 90733874 381445631 370621568 229954177 648534459 6223779 845864709 953542691 796309679 184410742 45616298 957044659 138096926 642595941 139295336 787457424 920714976 802263050 67333218 553973702 571682649 526671115 957369408 390809137 485260510 806418974 456756778 42556753 571600350 227638591 994119716 194032222 177324271 201362699 70136023 498851691 866145083 409839959 174782510 731796245 604183147 375578370 370603456 384986169 182901307 622957976 745237333 131692496 189946533 84396683 625309162 600917382 340368114 554235249 11188458 616665045 151063664 20771784 251998934 639818201 29069737 154096240 253664809 774996232 853015817 991564840 841679158 560775735 788876998 730034836 549364021 275879273 96477020 741716330 858332580 436759308 951397089 205654910 237485918 746420632 197820761 98046609 98480064 967151881 120493277 234843237 144875856 316363264 367214204 704815175 360169257 550034499 933416788 201017825 574715179 721411784 913103195 158260304 458125324 615191790 594845512 740103067 919946956 809675672 830495170 532449359 255518869 903102004 404709514 775607881 161292266 656024764 579996182 131002543 515745145 106026617 980314734 971307235 45258909 835891213 930868113 753619058 482838672 7736009 475489771 890351553 713413683 878159347 333605709 266689715 438332266 922736984 157703330 947893168 829035766 31255840 760854631 15372063 247456887 828223815 309332573 968414710 88943003 309505918 500134503 133863885 58744234 736389992 179201776 766199019 265661128 162344647 802389447 977659536 410466336 817315592 229772766 530402113 613257562 662139020 168119166 993992195 252114348 947406540 485692457 538391788 951685290 204074936 565345050 661093395 405501085 554078709 76107089 622339336 345131638 908588044 637570334 556897366 717560312 769405722 938518015 102015918 87133467 202548248 987912820 929261019 138759928 310443186 886838317 619608296 267350639 322818108 140948106 732270269 808418276 250204975 426439781 370114584 405441177 869311161 655064581 21255995 600654130 742612551 938104386 166544903 523211455 715113045 617980718 591567596 3303200 227034185 687465635 244082739 638563477 544837070 47974274 912236092 627228000 111221866 709502423 130813527 667233277 477125461 522731526 985383561 729312294 912200081 813705813 826300233 908354932 912481990 378950015 231050019 157949662 472818631 840779731 505026859 205669551 522224761 669281925 768890236 676888719 190752295 620958488 216725767 953314481 717313662 426592227 255185097 384410491 334911256 13787936 354993995 400343909 143015367 495310755 550636597 721931307 98922312 25660597 579819540 908781959 301184458 571945268 568728743 945394206 40342060 758115305 186230346 272458978 566614761 299105075 744956242 809910829 605008236 229541440 101093328 535668742 601123482 587462356 812254110 315152185 45726091 286397967 756582714 142179395 945121713 567649464 461265830 987039466 811675839 33818220 860857497 888561927 545018155 259889129 666766920 36860297 285327715 381361533 136323365 664512144 672394167 448655960 177794624 754584140 935210280 995897858 933381535 530112470 63851457 938929228 214160532 14876938 792157348 266470901 803212302 860962683 53400530 825606986 672811687 755687715 367542368 543883557 256077419 533093335 950029178 683182335 871576266 652918196 677608700 948977011 992976623 114188824 615910366 145683961 375221282 485038141 422258787 840135238 106710958 945182583 174361513 969712266 624042799 758306629 120469908 60149160 13588458 550163467 957028970 996998740 762831323 287679363 473488213 243964528 184042399 259144106 117069945 529352705 760246783 231099807 32470837 791835606 518482330 595971608 977785195 732314549 428473458 670648327 222681242 501340388 980663596 730336913 692839999 812801763 740179225 434316922 830935368 686307735 859545009 560561386 694522849 166243152 180509708 308808228 295014162 839056739 870759023 474062654 341929694 549020406 624391696 632643438 915156865 757686121 589351084 820553386 420144885 289044113 496289386 150363202 572268580 918703797 823238518 776545757 367183814 101962754 755519888 966876260 603026160 754687383 809138812 698748438 766105947 887012402 246811491 948151557 242589528 40485315 967855246 916751613 213759260 667900597 401798715 949709307 307014394 212673370 866685094 365784165 178424352 36680067 995776118 928485370 66598578 673869189 826628092 596100844 288585946 14305273 771625523 499992910 857660009 125847407 266954899 167839329 738787873 221481491 428732417 354166470 612457385 636737704 521453734 738253816 71740900 227101262 870648214 833252063 40982513 670527848 781561090 209279588 153857613 409215909 200341073 115752375 191798820 383643709 800560179 627004375 98345073 385304557 689803235 427506308 183789748 214711189 652670681 955665064 828379698 915709030 866219398 353279328 166340216 76174199 172589041 481119363 879416098 439650541 737490812 633012309 801400582 26119059 835630605 452639330 820149053 432169262 917261458 878980151 173765667 467133069 111668282 380011581 340174134 128395607 9471418 298025918 497957713 226753506 505537100 593330524 633971491 205698830 963934818 610200558 997734495 600889891 646522739 702443481 664954616 620937236 140438457 766389 623107836 371009707 488925271 854105578 245474599 578974219 17401384 278368914 412537072 818725439 671608129 772463111 295194210 71111050 300949811 502394677 847676458 29860277 883653697 998401147 129993231 921195369 348268149 759017792 236503382 383230309 490442940 172687431 437509753 805527686 489417261 338329488 286444355 224262685 790374326 499392402 526205182 836551147 588393391 339293309 700660529 246804802 101276299 785721405 330358745 443733944 286168413 468717408 931335480 881695316 664289108 899334780 554051293 916179894 813582732 466357215 559464492 925143156 634595071 954432283 264219287 723630674 176304732 990541170 749581489 477723127 258454724 10498135 529139234 670013421 438488716 600084340 630648505 125131830 660418765 742403980 655294051 218139939 67089085 179503194 943924879 453682831 71690817 472180617 464324486 975093974 47819839 362141067 393351451 126199403 43572689 46955249 208546843 985966270 998251490 885349169 648791358 43149563 451657402 250541857 375812668 473481429 110675716 752692347 858984923 871572143 351355412 129846836 489685557 153342910 70697955 729355672 407917243 835203192 175534757 279171720 272416928 906717049 12332044 960895839 894156006 586292235 283999382 974756744 380104283 296077889 23498919 158053894 601966168 229853956 46346635 936594762 563440587 810573658 938679230 957504868 184771122 2670648 125706934 95908653 166180148 160700523 16213578 714994511 387599097 48673054 819268217 332859074 423425638 785622079 491631512 482572419 65491206 742886912 289620190 347263499 787549964 273952903 951421112 189711572 725538553 41972991 976222861 666791655 67430361 637542633 281638003 734593325 941267429 635718466 77284334 374742392 354102510 491561577 294054319 474511785 69016922 985819480 549004513 354480600 177458246 493075495 236590264 709832732 753790280 401566222 674533236 755996454 103890373 915666951 614924318 833649567 334119547 103220380 82712800 909939536 389396751 390675362 796093460 667863752 851901277 771299979 319200347 767524979 982052321 526147477 254350093 531517593 548166274 538053997 469619816 877924949 628063794 774518287 382424923 875003421 390999455 156829234 302019170 816311422 263040941 117562729 593167181 476992404 708837464 130511130 137752795 162961012 605486938 96791023 724964771 212718036 247677966 876402628 788872437 697016315 124154877 198838618 825982206 419750443 740454364 56523009 533565216 629604234 37911640 16635619 505824772 588483891 336398071 889746440 337899809 403678602 307296094 439270813 557557800 607093021 627647128 149398465 915202022 568316016 318678165 725415327 16852226 424100635 885071472 318411820 495951563 46946598 617758136 53443 346825456 142458950 477278545 728354921 783061735 144621784 415888847 684077338 266719571 777029162 411163225 595757368 883830312 137061390 97387848 8552395 30702540 195037354 698149478 343282027 530055753 416366060 898132643 175734494 938857799 629274626 798153763 693516205 883755213 103525196 73279205 642105761 495089081 700648302 469781670 136059247 604121043 662847132 143955774 46634450 509173524 582564583 816281685 132944877 502390051 370848754 58788381 84456311 148303801 403577198 956474661 705049809 942092190 310292189 26993264 926873453 445845735 467739760 965873152 676646113 234368900 115222170 783765126 149575735 57393673 51428348 784788714 284511841 867340558 480225128 337254192 633207392 865098537 553171756 931618308 509317974 359526412 131546051 238153584 283806408 4078069 363895982 59030203 433842824 138107723 829148634 398592179 908476415 96401789 750225512 141842339 294220620 189355265 323860265 411742874 766625659 544312147 572026445 981989987 431850267 210814452 643699394 542750888 89510527 378294274 271439931 665173107 180818446 773311889 207908359 115955974 778170724 409327807 170124881 702704823 750814119 200219305 420120775 219379602 774337249 460966144 838325671 754008154 817131538 544886547 619486017 92902365 771749043 178566554 840241154 755365614 196133412 916787457 322975984 505457967 698380771 751697618 490758390 296669306 182338887 942689908 163215327 522884402 343220310 363678803 268053554 299156513 721613584 647440425 452674075 496868222 564225082 963401039 631818947 575802811 797091392 402273142 884913483 448723458 144088072 403681514 518765281 810474983 654660863 115869042 656286452 704772454 271629275 424911157 881824419 413939997 865721708 643376683 337944127 653924758 322235781 558990864 387662156 719600073 93500195 567398682 179906767 880970771 845140587 459987603 406745050 945827057 415023628 65830149 390211942 543583041 231008448 783376093 947135628 350646932 928579734 620252926 167131254 900853903 701027338 359849240 723724946 443872770 146938538 75933241 714981755 16901064 557649984 588080177 519129440 606432300 198106351 649198825 394361416 673553735 622546356 500080562 636260742 893275257 993588724 549888224 449526980 526828196 66938362 640617505 609808704 547379610 224398172 582816049 22979755 116616849 888555522 139479546 255798213 757441589 909309111 224421091 577601193 65340928 556983470 903520333 777812456 539634937 207967221 731991828 129689205 163724006 819079664 125605156 996071169 508174868 916980226 279338226 836404903 223855812 897690464 269248483 246137412 819534624 738315787 58327261 718491653 257133247 105130938 471925935 311734538 625719973 355484090 743363983 81196355 822062842 333030144 321349172 824544204 600276132 757143583 392640543 812298552 302159391 167069557 157968933 548661204 108435520 851757894 76876250 81077015 578978510 213349818 740953554 577546233 478065049 846283561 545293465 44906539 544337465 139626525 571236862 45770388 705909740 396282366 273064235 540266377 287968079 186720031 348154596 944081084 127242480 901681202 941244321 899183643 288781802 482234753 206252239 478638856 665480478 193989926 979645645 443897187 177662415 281994087 107590101 254700554 619162659 179702598 69656702 574717499 494281526 955998977 772621468 287824713 891840686 508660072 494371426 663625278 287026058 958013878 346906157 719314389 848683419 735754299 44669999 637673450 240886944 343264815 371772473 262979304 815179878 208428635 633877448 44725979 7167873 448494598 435332695 840396101 427724272 936916615 577914036 674140367 320829427 874984343 980120920 57890230 293064328 1940780 592238649 249022540 287150299 740728788 17469719 154388322 18611423 852972864 943415937 366366376 363442704 756273271 411534289 673368458 645387836 301873657 843401926 428697635 324422822 354560274 441264070 798074292 848833459 301793179 397940220 91641155 576824641 342314178 138462085 90355044 687941638 273263012 38514177 22116077 685420068 595213528 200016564 569583763 431586615 322004858 984778307 126968436 329295662 124055941 749514472 520913476 445489611 583237556 60977261 162835811 107833461 932532439 113890801 94658964 994760392 835291397 202238757 667936965 209015833 134310338 512410964 840600943 654820408 942556677 579222606 415042102 555597628 763948379 273286563 292685888 538516661 261844644 738033369 401771133 899796684 388245604 852813491 519927599 203774073 436772105 620956439 527540213 952762217 777703101 168652994 298890214 157429481 935838637 897593412 613151323 783190588 843159330 190156938 388626433 173243451 248817524 902616419 559948463 922026787 76749805 632911089 180606242 761015310 993918290 651137130 702274025 453052904 743598569 395950967 46233468 750404446 932819667 762134573 143439509 19528490 16205466 677710030 734169832 378438217 927073398 939847773 580868514 815790893 741336321 818551936 912338731 868154963 49923909 876214356 56420606 859287346 41415345 709050615 699644852 264955338 774420032 936474904 201864641 451002735 378044940 54844474 587683261 374276794 326000891 951753271 312551919 518719083 228630453 919646004 959166206 840622005 386821404 11489198 394262227 793470974 757622893 543995745 928616922 708048923 293919039 42576030 127357043 819795169 733826484 482942774 800831949 910444772 129175911 288596065 242599616 873781045 23898057 722705085 614735156 713437238 485013430 753078773 839963149 974366385 61975923 47783440 31067657 602394549 633896787 760345761 369231041 445085080 601901575 494870133 37134036 805542916 727609385 876557665 195483171 523688024 364450834 799284502 54990546 317373325 10943163 402951479 469398304 297359382 173946276 724469161 400494287 889413449 573206944 524660099 99578940 365480640 122343131 724504047 369748584 151238738 169052881 405627946 648685612 405454714 700431468 834601074 645148034 81801938 602314591 496876714 199828455 820001375 223015953 911009419 202970185 130017876 119752819 18323231 704477007 189356707 274873559 622152435 571234417 566770304 216010300 60108705 940736102 32745014 153011574 562697994 267781678 933814472 511962693 34641015 329964195 781685584 890279932 919555775 576195218 683730937 498313879 368404736 157691893 659051613 486274532 998993230 984200492 80959498 505058625 656303982 206084430 345567404 373832916 808030104 347709946 848418037 797949898 777748738 678826018 942159476 486736762 467922779 835726188 656306442 902585613 699955304 674124413 146197967 803719852 746807815 261220462 532917407 526006045 820644455 174726531 515277453 387610003 752238577 460060022 325896291 982217095 150040653 628765926 997399634 983191504 91094879 768795922 200199986 187384002 594938074 552707103 840145923 644301446 32552020 801864359 452376956 541284721 948265112 196806973 159601750 313840432 182892481 254484410 677962197 426429572 268987301 44354303 254938758 271166970 418574585 551325736 404392232 191477296 500323572 173864044 310421781 645562834 111284995 401165900 941491488 977335058 987281816 368359415 141186376 294538257 106986922 965451062 275960920 663913967 131559826 713343318 823897620 880045634 5032526 928233436 45625423 149804579 547939798 810270453 346960239 820410761 768157980 669930151 868639291 475458960 514122076 379901227 941781692 244185357 99799807 355275652 658510314 344633009 658098257 614297476 507976237 24082676 968149209 920488236 918714184 436066642 23458239 248280803 704300421 238717142 936607033 76063667 855722345 829913100 748309205 670085042 915821950 227461538 165629678 333041362 460858996 715349637 54372033 111594449 167427738 555947514 324418585 919354595 331746790 350145182 565908418 489327949 280173983 13491189 929958828 920367829 304876397 782040763 998521209 899915381 550588961 694709939 942786358 917098535 429695267 916756272 983265278 257891153 589472705 305493236 264102265 407088078 746981766 435714363 245019297 625401113 708061807 706679104 844190488 343437912 529111770 876156451 941129485 189360570 186068556 506694147 592876149 530690690 164419147 597967760 497829242 152387266 922751351 774519627 232104392 570160624 75417848 90443569 969128571 683075334 898347776 220928027 509626997 835893882 930288335 242607472 753601556 436991769 622357054 275361795 554748479 109769915 641861522 768590344 668365865 306224612 834307255 149506077 407886678 158175208 45181992 235218837 518362063 38970983 557433856 94470856 923526520 99679004 215636230 981394102 372877055 720038573 469261332 702114971 352999902 990280820 873939680 134019807 215320339 611282794 121017253 701262997 583642549 258570286 969971156 94076891 654392093 10176880 842045312 587644460 514249298 336974915 508349940 375634334 121399072 165265488 798237928 794439965 385466928 510204100 476314005 924811835 74035586 650381157 629766030 398489931 465045689 833432257 350579039 249576025 779070635 461339181 415470940 318553817 310380984 545932988 637186624 853527207 693789115 650396017 296787565 401918967 396493969 852203863 295340947 734517700 417588559 588436215 96023959 152343731 7608115 781299834 33514939 141427032 700745563 861705914 976476691 203965987 261296546 210871097 345229344 658409846 459594902 198203051 557649453 579199086 280822555 777727877 355201571 537325219 758757354 112939318 72427954 953110537 760950970 508426730 138736694 213874098 134658458 565831143 743062265 862091059 548479241 652052076 241029015 111115238 295242838 602494362 380335009 821965415 627453531 727615652 986585856 630751005 468268910 648860527 70260556 277514692 760328150 42714939 650948558 152259586 370664220 418971390 745770600 451570197 786269980 217417032 602537804 356748193 796573020 520733656 142589642 410053411 763858649 242508292 113678738 745341203 7351025 189293924 19081458 657709057 365588332 969217547 717917601 25685782 399100889 481702047 535236732 778122476 528596892 304704567 541263061 470605453 947887313 890550000 634100583 641677723 561936030 979725022 749245050 749172757 704434347 372260647 846583566 448721041 183192736 840717493 616935720 987710917 882416406 960027814 910910661 690732208 268267070 923295737 660491381 957025357 939806261 500290908 756418198 237162897 831157897 171467336 776431740 671997713 891163311 343407092 677560270 490302853 355464314 876126351 159443945 70799256 708665375 703544065 396722717 308544499 592597331 925627992 204636220 133476764 250722596 810779656 11109290 570792880 905478691 874196325 334072672 863625898 529952162 345835710 69320370 584445899 525274892 494952546 593497765 744983885 497847855 254060719 828530565 500031955 228304595 513446372 966628539 275028880 239101565 520772819 466441059 274464453 734359830 249533652 590971135 485916412 449581095 459404070 691467377 300937417 55532409 152496996 682512213 7432166 928361133 107092971 721082161 610685012 918078456 825265713 725762371 834429625 975764661 572516287 407614613 458603265 326641114 898324001 861581824 482983753 125751391 906868679 458061751 695331209 634783429 804463852 879773343 211344288 866923983 72686520 848329236 363202970 751804468 879801613 4802085 192346003 209967885 387623041 815031780 976154690 485041371 562359450 306652411 343211438 225766063 560547411 733019979 692752406 337683903 488743464 286843323 738130796 434331232 934143170 837830922 260298409 194980513 718151502 474117742 328285077 608820491 649785890 95451633 313359681 958245039 726175772 171732138 716610326 188124381 195756526 470317441 368962986 115785110 365852251 599183134 752738269 892332396 785837335 970051619 790459034 611760343 832414370 104874202 542189329 586187354 579745046 182111956 844271413 701900036 108564535 282423918 998692606 795747006 726598782 831265315 203018309 923847540 112345771 647379448 481806459 111867228 702449600 332566208 468466294 376034217 848899715 315855770 733756416 649653570 844932316 791680198 130458536 514679924 898552825 6771926 430604712 733509901 19279368 106363529 848034161 939784615 788055793 888712850 414641010 480355237 357267503 369775813 63971730 26769644 3063907 612974033 762317966 686997747 346492315 247546401 771361278 925626679 795478933 731168518 834249742 300269044 36211230 465338961 121793316 304414321 256734125 987386881 356902672 522437807 308680467 376984384 976369565 957963558 21483327 714880360 472666074 669881217 589379134 231563596 247632498 988605371 836203354 564239034 396201096 396106051 231460060 467162426 720221199 591741678 217211297 429412381 283428694 73924109 799687156 607676672 297047004 164457243 960750759 108364802 312284250 548742544 943466937 445849052 288157565 467170678 749428324 962707460 661158067 625025895 528994763 656891466 701762213 969938058 705278611 23061455 813265749 109319786 314663282 674875 751635864 73547061 921916951 149258876 464432345 755463360 974498192 609228993 5143249 582541694 621622612 57595953 762401694 404404547 788409965 187839813 458016430 328176516 494714785 601078511 837052768 442518863 406846305 901565025 977310301 711551042 358426689 802411800 419884709 748770157 17220118 771747205 797309823 907822234 677323399 224026755 431617338 976969331 358892777 112562961 615467405 352905277 175195089 918776379 986245984 432666605 314264113 979448058 889865098 94901803 800693685 464083894 23007488 721866531 201433623 41465729 164105811 816890278 859229864 37473727 797382122 181945352 43107743 573402399 517379488 628865738 737007576 694085103 881788023 593952736 450344607 331060628 260061420 91498546 679480483 252158725 881604346 219164908 71794787 244824587 328547590 851176396 10798160 218081180 635705858 352849939 783352372 476396723 225563048 490474597 122558617 136135955 161272855 874563404 727578499 118307538 801343937 750254758 92067919 569503812 888937157 516549355 110707508 14474327 402138160 705859787 446005454 470519795 601086821 140638348 897141100 420385058 47900361 867121315 338246764 813060852 559560276 286098981 119104049 819788680 335487962 341039805 762512973 591686906 140979013 230794248 30775198 377699604 845149462 912935225 636718426 650654899 353773369 435920384 870264760 233495363 222814959 631868042 400585202 694749811 388339140 616026028 422925219 818581836 796433349 530606266 604000096 348141494 315159125 983010716 703784931 729754588 255221118 851162178 764596546 212517339 309995326 755160516 438567402 213364857 743700943 479109043 952328307 440455668 97812348 739820466 76711917 387608810 369125793 896180509 90137582 545395230 531704467 741473487 314917077 565499870 996007857 285466750 95463440 216113746 2089188 520610859 334272885 240733858 31109736 177472304 644353476 539758871 507291516 127359157 51279111 133841180 599307462 225275873 995898372 234479324 615986483 757839421 511278264 248653956 20916378 783130121 646032030 498377536 977942778 166448405 492964260 490322518 842372744 270071594 380515161 679870169 940297133 751520767 495553952 383420552 830734996 300699724 166573285 792058918 777032703 415472896 49980733 452455954 634021561 554085606 950589321 661927987 895347092 321362364 536532285 906164802 305225536 914385329 955361481 401861049 330971491 371207214 846098716 82326922 739895202 686407161 286091804 405609282 983047827 288341626 223446357 378953618 15872664 815430972 149712420 881562196 563325774 820497372 336143480 801400343 737627653 472490880 55110282 499220867 742286942 469072053 275374020 762378135 889378656 311992000 911165393 992713928 69328082 427498911 574951260 573681568 420984237 596318587 108271835 294987577 276631468 866191314 47884896 88564252 243213274 362126182 866041226 311432863 144182928 44980327 976272918 419841805 37583910 771605812 647974371 531346819 274074598 836379286 979578308 490962860 11394220 220219986 146065628 641441210 958495689 664973005 483197218 207802517 129626091 265735122 272674200 719382645 708500599 745162171 647366596 157140702 629893714 449947681 426787907 401562107 146146032 848393582 656107832 459188861 826036361 407685778 664950579 267029760 721195008 499211448 928413937 200739946 778188160 386278643 445410827 273021739 425618986 472096050 897116293 926296360 198598275 741545586 593737977 309670484 281879062 335473090 377563529 802063276 669787489 798507237 586704670 106603487 487461436 440018786 931880879 505554721 995012335 83619184 726401901 532427964 350480951 444840716 82686512 124110150 960610118 569249053 876078764 620326464 445151708 730978672 997043540 547935703 915415709 559517032 464030537 435766603 890783128 266897107 655882159 736693840 831662243 593741610 493714055 548842434 793989061 13940616 265181963 323415884 287967276 696859572 602353672 543884917 69164395 863105536 313008842 525104182 26737966 145695697 890873173 62760921 949241186 514432142 938609850 54761459 30691859 659652037 610451787 231017222 98990460 774628392 233386571 198611018 364829309 444877912 745636865 449635970 383753276 755122104 133839154 263865319 410288602 620362523 373595850 744903938 286846935 760938392 819191682 387236062 277166384 437652218 42892872 19451533 248789529 994460003 379841115 427796062 572338505 447568973 58607928 571187581 335500496 744230636 352100602 952202375 196607830 767406873 136884637 216162198 422512210 364173326 92541667 702809486 738538644 800076685 2515004 396194208 985098309 488580489 112732170 979970097 734760412 250153267 685142643 680792481 9803009 144049030 874354965 911545188 281498938 422229844 153061126 501404500 492601400 868865008 801169054 839764182 880461513 156443668 840947807 156431120 421226596 93240828 929220919 67422285 844302402 897757450 225096884 122835088 618898850 648785461 42617162 375058374 448915379 506059888 954562893 942551393 598393661 67593998 59243284 224965583 548055427 800450706 670181933 298526527 634485583 888257534 307656426 332122291 11362745 714793140 994870997 267548683 739204894 902054657 262013175 458103336 863101200 56313193 638409386 155412467 400199424 426370387 257650565 570105520 824182307 347032469 862283329 895810623 819481205 126731111 759702492 978655824 451860873 153932701 653010822 401796376 726311735 335327284 289062605 415666862 58961841 200660446 545934557 823120904 769158478 507525794 777251522 431080598 39534613 949819445 39299210 562815104 134081576 422900738 475317897 803550715 249266512 831340480 143757345 725881478 347798644 146171039 80570426 770861225 535874595 668433099 298370359 849798994 619360223 465529388 613234564 948556487 668793818 861560332 217806838 216960451 689699118 632812813 388906339 614078660 386175217 734510778 465002857 381478034 409377215 498223309 779141376 495033401 343866064 313617545 585013290 555008848 284769720 280039506 899944869 491767294 285593796 56516416 65768771 661042670 106382181 836337534 653916793 739091496 987799129 651433703 443918678 507834387 38115407 317543337 66728227 703950394 53441503 122805504 974931989 712197834 830466974 100492245 315081379 415013373 602300386 404755342 944448656 40316309 450942444 395688432 51592086 614906171 306366649 879136969 808037496 860261828 378167339 683544511 874528759 833562050 54360759 588259720 201069076 469798612 205221121 955099238 861789519 694816903 134178746 14237637 460533075 697675695 692158766 891348291 382898803 664143317 387758967 401061297 653075259 548926072 82461651 938698129 485479614 696144019 847059462 619822449 131307324 57984427 34501907 780099071 70953726 884249216 414337725 778407317 453743165 562464122 975165605 223433772 607473807 209017127 145601515 775050585 927759595 112912318 683610434 103909732 262881766 757993448 216926856 800053584 455147474 26756038 201533954 961860960 49716617 944515844 32594353 482392001 773644271 68204705 932027223 169512176 962296061 502192211 9101283 421890816 493069816 922749928 393417442 225252722 51693770 436992567 901686557 995239604 937796838 894287577 571913651 998160163 397149048 93102323 207907742 392158578 342314798 737216872 536610447 822649211 608405330 191675261 38626442 522451246 937070785 864381845 106911245 984840424 310889721 671809552 858170618 6842568 613691821 863196787 928311022 817350522 366817527 76863490 510174030 568102068 199301245 961675782 476048597 483727553 633508823 793107775 238782571 74214558 306049032 505510336 416265660 156412239 446637732 558917277 227266499 822877744 758976902 823020144 983831705 424356864 110791554 134838043 726805497 74234898 328884590 964425848 37436856 813428140 218130856 412905495 217744726 501512265 522218697 394359949 519235431 696117429 515963868 156546898 283055270 652869039 404729310 290446750 696962807 839119288 860087624 556790381 170219142 715379114 352318598 392943138 678225732 448466590 51173572 691616745 216660775 211480422 429954861 96635277 596726853 478275719 715032719 157905149 540202763 258950132 481529744 78382131 991883325 649052044 129787503 306653200 105667830 182801047 792543847 782546981 768087352 133152939 546272508 945056926 151857830 979248156 138832625 490348741 677882314 935409443 7617394 615495419 265609347 960901451 775753377 58361250 932105944 606854729 849639746 42159760 593197873 743044360 164129548 911055885 78675999 339102452 908465826 609672577 8419454 666366994 398592588 250020955 138472569 958704629 386987071 781334567 417610596 78325678 224221940 189933907 145799158 672705980 754017369 295967665 458382018 443287947 642032866 20519099 71692271 908941140 326008834 279805359 320155028 401003166 528261978 8127047 593813742 299682009 370109194 231053105 380649226 851846673 33535796 114424957 640498700 378504796 371510868 712630202 136845011 868399133 781260436 291047304 980980509 663023735 360510579 246196322 878036331 656756840 6258808 941462001 226544871 497469656 417612152 88273971 121498117 517502502 671477421 963446650 135504886 458673401 403231009 416817774 401394268 997266535 662848722 350179934 72777000 815911463 749315599 326222356 251133416 382065907 140731264 621957525 964106060 861368841 700777060 310233998 997103350 550691878 931379498 61849309 146337695 306267062 69027158 412240519 12721341 194568081 864500718 926970400 233671817 55274395 547751180 730610971 393979021 835095112 330592311 759220149 406971081 532777393 641890609 834964001 26990149 450839547 654592970 608311690 714383074 349071264 669779718 263067812 529650130 281710256 188668160 730080593 90480175 179556196 897491716 626715719 63242394 547544735 216562212 827945400 192891915 868749748 748703656 41252372 215327899 597179522 657202783 373824290 841764394 834938465 731259716 9101816 767216928 423034209 745322903 465858224 430659957 563189353 126920140 374453711 263584461 159066228 916785011 695948086 622713974 560115103 778634607 846197709 405013730 211249625 701435352 865245787 207324564 262503168 30195689 370857575 641149465 796309003 361073351 763386859 417322454 781975244 263135872 59167398 825967037 825604579 467883281 245524265 254564212 993274620 803819216 188744515 718521129 462703533 206816716 210957191 319979066 987338841 98128941 65269550 245318989 929063268 52046496 51391689 710674257 679964474 220347704 534549262 848123075 511132822 230621239 500679971 985994235 726186037 426927194 738404696 736403074 954177343 901532984 814643656 491821870 701211616 435027446 486690627 188025219 877323663 77755145 134892891 389399892 119346718 190863658 971329676 996379510 744648161 643510315 899350240 516565348 269751831 968276602 413444923 781208320 171978826 959477902 841621095 635671934 198995629 344299033 502195702 328800889 818668230 864153788 222639974 463550747 260730890 415579928 971970219 598372950 797610918 856659036 362883656 485296368 868075384 569839203 334971691 520398785 441377233 840497396 435694684 757339348 165973624 536945224 242046760 305682192 847658551 925699098 86872529 470812677 413741346 32630982 801910700 417609058 57375908 464208812 261406415 100405964 518467621 516322210 463583199 108332535 591226546 886623824 459538118 534784677 815465302 803083889 903456701 9483751 698343960 38578669 469880338 681767960 883130742 725836683 965952295 159763914 29567721 514911341 98614909 889290409 706904059 847491865 868308679 875009232 987815506 720619436 708256902 529171540 372052275 700606593 760169483 464950650 30799626 408830076 627236448 810031288 204647281 397154267 863530205 980436339 716047637 893263780 670711312 919912771 336052938 722497512 56658579 712114280 599821374 657870235 499936583 445526135 843629213 204518679 444766185 197940754 149760262 802893934 407550689 645893856 340130790 234420760 616429187 396444069 628213184 909044692 673454390 853281257 595739569 712111587 93103191 750160514 934190592 500897002 749067797 310292077 797953281 730482946 260781168 324328261 446023676 575199550 248490907 559818920 399928108 673717271 644199787 232346639 58651341 156776678 972084649 323726274 310068429 201238322 360426535 951309272 301012120 558130618 876671655 590740816 281280875 563708752 860255529 15820370 188878448 265638199 509201016 515568098 89996474 572192087 762576150 666315785 695268333 244603568 332922330 380081323 882256045 691460983 127846498 429534135 595392789 635506968 811828537 720442618 876011062 686712603 942266767 294083775 904053751 568724526 979257106 142090444 386770601 869334536 224596737 673390380 878296914 598492372 18604466 766869239 736882581 81897820 453800208 890512170 665733756 532740244 178740808 215233532 671824428 650085452 814386418 853340335 659438165 930661376 686001915 564327570 963783202 197611609 461418100 156572465 472268135 854736339 727598917 814921929 550179107 173026866 751120342 513760459 920918829 717653810 583305243 526622155 240899593 423510455 557876107 725047285 810602038 509643993 348772130 307043388 626333124 475304906 227019361 657628076 877275940 653633045 439209002 890856045 504864035 184958391 248391499 781855965 859573395 472374913 737469639 922627206 987432789 182132645 862757236 41501961 317195929 696307190 117662628 572956930 614718356 964643017 375506846 417957684 36171560 83068553 286368849 34037158 381414891 170434665 1583579 10771371 360639647 247318162 86577581 203692649 993659244 613883498 817971011 368801617 881428886 372514994 206273232 483239110 513023460 536420763 810670196 457276805 592870865 821768740 383995792 203410418 706898891 888966476 414393867 511469226 716758881 636060852 742764337 482272489 600321985 43377163 829431838 473016680 233403561 287079162 78988330 22127325 812463429 457598555 245114163 571923061 161072652 152237619 66468543 116007154 461473111 388003178 818187339 449778063 444145222 149868496 22023819 694545867 702188692 17000994 424952898 849931600 96622967 246230610 154595691 611432282 59094851 360364573 603400871 279984989 91714387 131241133 415524681 517656744 551962040 992633237 933413322 700494573 720233251 544348471 712949410 179812887 643227937 32211630 111428728 61660016 842983087 884007012 553293670 261405653 118478092 1287728 680048484 794677709 953016510 657163287 909101955 242704452 428363495 757947840 276156018 466020246 283927677 357099499 921440036 986217054 749899388 127541106 504443676 676208219 278393093 309536106 506143287 63837293 696236793 352615869 372221369 162270243 737007635 229623666 768906935 46427468 254111514 630426427 140970541 556031182 128126874 400431714 875209944 59442133 29574505 654425641 516733730 487694213 553732787 856540975 256616219 929550328 505578918 765084878 368284215 198727877 632073527 296210820 441109529 460365436 706599062 699930069 462312018 381398257 372623825 594925968 747570756 942033452 850352445 490793583 776849262 480203426 820403270 575696187 887812092 496122235 413422419 739337208 965004908 968731091 285276897 384501431 739942979 285432982 572926234 518856025 480755483 791255543 966689477 893992355 663044159 497447081 402926353 207323762 475454402 930527325 577934993 854068648 413857621 179405515 552475507 899253658 63943344 2630999 971550257 160667618 173870880 928706092 840012713 48744977 261971051 771227796 472333784 802771951 104531356 702049960 186791097 823530531 330967567 557949268 643727535 968199479 2882386 310504565 740282925 223855422 988098420 577711717 871704832 424561715 597134341 986534607 387940543 563307900 787860343 750330340 175116766 263648423 523814009 345767513 41148380 191027869 853080484 528063300 474465436 457072625 877119689 513599649 438152135 696481958 493684433 661895082 945129972 619803330 187986832 72634622 985420731 282034635 508346639 788564480 724955639 72281123 311084379 658775705 62808389 852313902 627437029 129914994 594785548 220039073 413905826 149857071 586689826 199933755 824327441 619231582 350458906 340553036 719369084 637072899 232159531 273893412 221873256 705147641 85715875 163390577 177753621 760282357 226177980 314796623 568463616 881511331 402751819 848541247 888437399 918711605 101423143 578369227 851858836 662610810 47682838 283234593 602123165 939785574 97764507 666595299 419466383 88554185 534827929 535292276 94820825 7018208 310417495 932089517 542970415 553481058 743644633 857111572 78407008 651285971 351188300 540258733 815975385 326293502 197527040 118468178 975195420 671640797 850715537 167926240 477504225 678532225 626814988 877528684 532830365 626472911 730934677 962090244 269007981 711051447 206320267 527879079 646093080 954836290 531235027 693381382 336989666 545820514 216788342 785605583 67143949 124204227 542705451 843759853 924485929 244739301 101802340 62241478 105586807 892590578 587666327 299088825 3069101 240193890 835930090 936510895 338243871 840422141 921183598 185427676 802653741 77646887 921597785 986624691 826754915 288012547 167284936 451604347 419081231 112179008 784858537 815102962 217467914 782833992 378495990 365161688 104119734 649900068 428730432 999533777 396385860 805666600 801762352 415323895 645757458 199540247 144025197 427940276 743535685 688283013 483989860 218058070 161455466 121025250 742370715 445885487 624435653 776593478 776340584 908297525 971680160 886830057 264542103 62309933 475199509 476866124 682654177 903481204 276520253 639903714 615267637 654280271 785216666 733940054 636963864 183791901 244849779 201286781 374390365 140915679 671453318 838701625 952898440 612093567 956807321 614132308 327097604 68661153 800182169 894482104 766822355 528942095 325728544 277346199 770467785 217673076 515637414 963960184 800329839 608080817 828043059 606263664 986241832 615444327 513870414 42505671 86144033 440466568 81788118 169849265 343635909 506865550 42485194 133599991 360014833 977160768 943877993 573683788 391703147 513118712 771237587 467042788 411763388 221640513 421557625 305522152 343459762 496498405 726671678 968197932 898706017 69136699 288318180 692984081 690517860 322110785 164362795 712754687 9238582 680432799 55514076 911449225 466660438 812219260 691574845 840275341 85128211 471112174 927055931 492292459 700608704 193087874 401374600 351984361 497833043 848211404 311172932 897735281 498362448 918076354 882645968 287276489 61810992 297092298 393892520 672693466 779247867 961360927 796521846 257672792 831724147 647570232 113426801 694174433 286464711 494919083 784039628 161489200 492995421 555544541 237696439 88214148 838970044 73486972 834882925 694552863 257298740 1310258 511378767 854387012 286394072 831646298 585244701 147526066 198709182 50402120 842238497 566332162 808269386 876946228 104904334 821505567 252499261 772381534 862056375 593164022 8286987 126258908 454527588 827069156 92466128 984992347 345684900 561312305 159505829 744979570 946013159 323442840 25842836 926620631 135013517 255009824 605854483 271775884 275193766 601507428 799848020 190882331 654025601 711275383 859209642 814064443 782601709 133914497 381999118 424744862 975836008 448747837 174029476 294570524 793025173 148897133 292441012 956690338 581683417 546875474 831562625 569376746 252881052 660564313 23273626 850134471 979027196 591994488 564835402 516523168 306657641 909196524 762850490 757888385 357860785 82428659 185873952 482796917 261931176 138704896 720814324 234451069 378827697 878439533 503721086 17086324 505685627 846401381 907698906 576587384 883623314 395230262 413394142 40853192 850817126 143730838 472068809 457323436 588081578 645431065 844104574 653171820 40174978 153124905 870694361 522057045 316411147 16815684 883256876 8304959 639541867 87460240 575916025 769002878 320526273 351100132 703097716 818330823 952080447 54341397 769731472 629456069 188631480 415293451 419982950 946309854 221387147 782595155 197500738 938704061 580055005 836243630 210237436 328202212 287008747 292627348 972231642 234788359 904854612 550169146 510930184 289206173 152365118 451338487 720692849 681701903 646265338 358314594 817444043 542749333 391714260 885004017 913352503 551154169 221050129 96815703 122093938 228286495 967956015 147983685 407035233 363364165 638785439 228459443 999611457 821137398 834975896 98275634 768713724 57355494 18034097 483037306 87056873 775202637 203701845 64120214 117250470 104418358 742904050 681643857 785394983 758504131 810737128 561783227 141471698 851619244 45717419 268216796 16567818 578706790 150406590 214049291 288266518 967960162 579561238 393430537 874153251 822192428 962938885 195929350 336493511 113755493 83313452 40681384 924358852 612846558 803137376 139361266 701201382 69508665 522690122 84018951 660348400 558539199 366765125 822726067 522868396 860829017 80534061 769696674 326825671 836107586 128086027 405145047 922928178 460087115 15868279 895856584 598837244 360393034 656586568 483687581 845877848 33476244 299905204 460136422 586973530 963329140 970291980 551260493 984805790 780352878 46370010 734874977 414288622 307627644 373530175 691774879 66918892 758597797 94841923 456824643 241582058 59771245 854572662 388838427 890447688 773361958 271678861 309169032 636932027 16576170 425562955 563144575 596557698 60800952 812442994 512221925 753301493 536754575 218534965 972838864 827228638 92455430 710399258 355094182 293180219 102563078 694345566 357384560 245354834 274770447 929723346 14385015 788215815 320749627 29616990 487193751 99814988 800311713 65009043 855262085 918163643 466215131 894798631 112562278 920133151 931447124 634742251 280199030 817834821 696805364 98211495 487338446 533544406 664329045 452850071 723112186 971740623 963205139 392478962 892991893 127707499 913729178 515773681 282139417 310345738 377187351 538293589 856843913 599106147 62984848 493754143 240321232 333513791 267539292 221314952 584424651 653037281 752551614 102032318 355436622 596186427 958371 582331121 460573829 352739191 291972675 873185076 41648095 859015755 639703968 400214769 509459295 406360320 265859785 8698081 478409896 243235090 881994227 277339652 656761525 479083424 231341648 481528218 979279699 479223265 899324671 418195503 678843776 488818149 21126829 653588474 449875828 705273770 599198893 804778891 934904875 131716088 829992740 438081181 856232666 366494864 338292842 137312237 898204011 11552000 612775568 373945800 878256379 260860815 27982857 575589222 396022728 303697206 429688872 538649952 985599264 268464272 35306669 931378751 221588759 566319970 390073378 586740078 38204398 678823033 743965297 984422241 50373262 807784183 903098688 743511199 368667617 768136577 885344384 637030062 634776872 766326717 233859543 945218501 631504485 579939632 68205749 952092497 329116930 66887035 956749620 899978618 667059682 950928757 561964018 743699581 37657494 226179270 798743307 749707144 321209001 226157594 20050475 840659088 815433078 724309034 673637880 220845843 522172751 7615194 991133743 523339935 770969374 54036418 748813850 283907560 315413981 625663930 362855359 663181099 736511926 657938253 360602626 794638727 748657881 57904042 874649755 887508779 130601847 812837713 812979628 354709684 864011587 449849685 719148088 252853950 845182500 57100439 934671857 367090899 246832653 931602122 940726417 783222147 178886841 253210800 414126471 390118949 575591929 239109273 693395015 613570440 280912066 886068412 383380076 617664272 319561841 217334182 741787887 68819662 706655550 78446173 804952031 163813747 473265610 280383687 884003111 457598579 767968223 226626640 332905552 370114971 923507429 611722938 414080331 917223644 266287226 113252286 38150465 104202142 603832657 987973027 880247928 597078322 499883844 186684230 4254198 275407378 605576040 648574048 723618899 561732637 519520893 345582238 920849611 678702949 53928130 630487852 186385137 691273530 874602167 406168547 374371066 39871338 367638439 680517671 279752630 563620377 415050441 30247781 644844706 799588234 212099949 845178167 795139139 353311962 340426545 40195729 169949395 792908776 128346177 490080681 278821922 750932629 432575841 992604884 763393596 77448397 873011884 400521691 816159096 581897251 203042249 686823143 548042074 464683906 668075291 819408306 634109121 238273715 711961151 930304664 371474018 133456324 812785918 768071726 799803510 135384186 662744585 383982826 456794732 926026753 559587432 264358427 438139772 669896195 374549490 847202718 877836453 153832553 71426235 322091195 903591665 790058475 207953207 830297967 248967090 393499321 891510746 646825139 180137614 371751148 64199034 88524299 684161882 103326327 331825905 80884139 285549515 45229800 312191127 353382130 450225111 679369894 180630222 917583870 203241940 988038684 480666527 375224367 492151675 56433974 77893090 33007387 125256431 389275640 156304517 37638438 973401563 906439410 83497640 319488774 897328351 51675040 28134962 688634349 510896483 863896258 279706128 639923419 926780110 242121152 214432305 982155193 734648275 881022882 839097621 169050268 218794045 994986153 821830812 71306033 580802419 450777773 623718330 919905110 881446255 984989564 136719273 654925068 483195937 633913585 261483155 810601483 832518589 258273129 570605688 27996159 102983776 769617317 412833821 159545158 692639320 18185140 52770236 11253315 215766293 896771834 162986848 2858345 123159712 299039668 286218221 648961679 586291032 715014712 923241484 413923534 83722087 527383430 707768005 493781669 939908837 323404878 995634298 949575120 392686278 872100220 323088001 451589513 615220129 99034389 401033870 462245361 723548305 166857504 965919250 931556881 159417626 38041892 478898801 136906440 173487719 519636932 166269467 304046687 77084185 340053538 427994408 230333537 799685698 301726260 121186115 265002409 806711575 881679065 704884911 303405138 57810693 731037536 853117949 467208315 385158934 740448744 612578435 458602353 867361252 785982380 958341603 226219897 808028487 913548490 516972300 168241817 757151326 395328720 21918622 651932354 173382320 969430714 614851681 656672080 108143694 972969096 881607889 286585385 893032149 551607920 862974577 28329814 384493792 785150854 781620713 884959177 20949250 380443660 641397043 508591076 199679715 641986443 470967269 878697162 84677658 210706446 145321247 278593105 754591417 14452804 477837163 320592398 602506663 169136616 169786386 530077720 193852532 626340813 39476130 680226935 606811788 158143221 112197621 76785788 577170135 875305480 670795336 32934421 999699890 656131864 581423719 626551569 200878228 925878507 495349504 803038717 73596027 61018216 138231816 913065056 382963334 491040019 455653294 40078833 399579903 312962003 658027573 662175604 738970420 180295170 55008977 890361356 801648273 573527172 858778045 433969527 136630149 409434047 567303572 498433789 339678941 113163414 118250960 979077585 596654282 829179794 112848044 787473590 899967796 492060679 770167467 603160120 856325187 292616691 332013979 21312692 371157209 233328167 118116404 825943252 402919161 640091179 657707647 74407513 342766850 71498927 812250966 835154927 595239357 639921811 736758518 7956561 81629027 971550619 262883585 428778646 477598072 539517673 423322483 771261591 883642423 684887150 970940378 122902587 951523717 333544301 475723685 745714443 60345521 56250961 683461521 567916122 762216350 128667766 897454777 394295742 357218546 31246443 247863344 42471198 148393650 787102279 647747042 789871560 114987535 848248828 76136305 336132349 636492063 755405213 363157088 851962464 877248995 504725753 320448533 626490094 166901304 215515301 144003697 906676348 989102918 337004000 191680090 602419015 219450884 345876591 729750110 705501936 20502686 96807692 536311073 793336578 280634844 828160008 180350549 631521656 901085234 270471701 638045724 882111064 912415713 831294298 629870258 564401988 425806938 373639260 899241234 504445619 764201294 106209415 634153951 260682929 430609003 384443313 273952472 728560703 980163891 421300119 25539691 597761092 394340705 257750539 11733148 288853525 859471429 130821486 476449039 458618253 794493042 962680101 450714560 823414349 275569908 265955298 334072981 456653473 220246108 98467802 812953904 377263027 326849821 722966860 466575858 755934227 502778768 999141723 147116759 656779251 184059694 279884500 297838720 44448311 42879614 611657735 483119851 684382218 7562252 604585249 327133172 705619043 850505902 74291100 49447756 475299305 205733772 791448384 218647588 677459230 939391643 689187183 605241066 598739966 518218144 254138817 439829180 595492716 386374465 578371749 607412040 43816192 617303084 790304265 498453831 576589466 971261640 465975706 45814444 960365721 671159544 463485934 381866279 73818513 953559779 537959336 919579881 984660044 116490248 665715947 982025864 319907713 579403228 44085690 659111485 124901599 539364395 692417505 864895579 996381889 646941838 339767384 829183817 499667949 519136603 297561486 818014305 622784889 902196640 498441868 728285081 308191176 807383560 285242362 3406138 486061026 320367825 621341834 989575088 380536090 992262265 776388972 257821416 795655124 562752384 655912414 683031235 492956805 927312658 319999605 381566198 571871853 910796043 173088253 482249760 313572629 131535796 617596800 84617584 895519795 84488812 145630329 298104503 652347255 572704735 333184815 730118507 728653614 737198102 731170970 875585318 595011509 689291559 741394454 848175254 335991544 474841773 780679458 987981434 922961199 814602829 697331206 524512933 255457820 755830995 657101563 859630951 529652067 976331021 724074388 828964930 603574656 750680188 247683237 896432925 88874292 747698108 904079552 666239803 408352198 121253566 353328194 227931556 478171223 773316847 484371968 575939988 231121775 657475315 26451062 562879815 340780895 819004570 227721156 619398757 65383256 943645859 225311959 644277760 949558268 500189416 626221493 833637674 178315008 64362597 639164420 899325493 217254415 710408814 95499498 452433793 330980819 980073508 96398607 560003225 98696249 503916701 145398051 109226262 277892351 492979872 790204720 854014354 582197825 193154187 27984342 848213177 568943693 175640712 472340983 132291767 441468807 142757982 681435551 641768280 685887558 29294032 378922542 925172232 39946511 793358399 345383818 951681458 557400082 140980843 846571296 339123427 496774007 809547057 686521475 837633812 848526698 313113230 848956863 24954855 282731137 275405403 94202146 25115467 636826123 469984427 478104222 523865873 829338375 308470263 150409227 198795099 471869331 309966312 205005895 127878867 154120174 259082461 814677446 819026592 879741744 613614868 167019642 916584156 460824150 155007552 622231058 919513722 333703890 935905197 638200954 81713337 27015851 51181669 188748671 559857877 118092010 808423142 300312377 957779184 125806657 503601372 238948535 222246150 707517057 444139060 442748083 645007141 541652259 728248249 49587635 940140287 469432227 920174788 78656545 286533414 804259226 939406948 829063909 3693068 510695361 199508802 297833878 109674623 375814333 552556674 312213311 422117590 931629116 675171467 667756274 765941614 18216139 631917900 781368807 722443840 718622003 175127424 164649244 726461187 981217768 662361440 749334022 922878586 16955129 958063499 363787523 524951363 280521521 805389567 659635462 872383487 528087121 709352313 706867848 367090936 509387308 122251220 930033629 395799204 963643697 370655815 735095103 995584467 104992470 366074762 284429335 383798838 820230281 27601896 760254071 830080146 629295026 686128293 429509332 843403806 21199530 757746071 295194170 362874073 829461894 2300192 378980697 564945309 615862532 939119022 350147057 703491756 103823028 830470082 229107916 250422263 459092382 119753691 804851451 885008983 520204735 570552522 847537863 243853618 721064245 593155726 181636342 606902405 449573507 603738886 715085575 181043703 727416725 287308194 350306327 949017349 419775270 646026274 481576310 298199029 638563892 7950747 171371581 654799609 547794514 698656698 88469736 590198696 290151134 567940533 401128766 861662611 856176842 70145773 42739991 281698352 154047485 95292964 755789484 666676428 727383324 746013469 733903554 36935980 86555466 136854460 16925128 172296654 27592354 942349028 488865440 544603877 857948840 580965783 206178799 513740588 171777652 172037855 827376448 131883689 568946993 422595086 59565231 976015303 934088686 237669464 16231918 211851991 188771551 79223756 211364881 73608912 634143755 543134065 11404408 596339416 794303095 791015122 459151189 224884875 903866771 149204261 537122989 472771991 716334289 544513143 576116677 801598657 253777343 750980445 787519228 1796404 575877613 474957579 923830097 270654185 92542164 968230342 632486419 463758532 266193505 13439026 477161295 959006495 358228340 228842384 227533951 719005446 46741181 939851998 180533631 723532448 401598324 227905570 201353143 823163436 700311374 947900245 736021416 870110368 221373289 113202439 380791144 506194595 174654179 26109746 91020165 569851491 369588855 119547037 304301000 487120668 697168623 981308979 952912597 698563205 825899300 101489380 341260733 690766147 306424488 455170932 354157007 376525761 829840307 999118488 143917386 91550666 943981780 662868341 455609350 20690401 193519430 38559346 15276244 46540587 19875752 328065140 780835270 530216209 762662334 48022545 26283598 24721079 565719290 644841147 244431072 447371685 644918971 842748823 261051642 53435562 433041731 682326654 444035604 841826049 291091591 416912726 472450134 396188897 804499865 130439919 679870615 585909933 367767040 883842181 329734132 521331698 185490007 669381038 196921755 847384954 818739907 217284006 930575086 176968850 490711163 392599398 512753375 628067395 361073296 449849388 292581330 115700290 798064287 122028297 812539156 142349654 616170577 993628105 956411287 488223913 149791402 70520557 100688730 802220581 147598284 862974375 550458749 467039911 937398163 2299058 674926803 663169239 734184332 828914628 161559294 386253954 870273520 942642009 307400398 288213651 681767631 298632796 102992362 767892438 523299528 799877129 33112505 166832647 331485767 84881059 557836542 342724726 27314856 813925730 230101679 204874492 321118133 422040252 786128005 897512380 394143583 946759542 674543483 289352837 690771963 530740802 632256812 871615597 957015679 811922469 991852951 570237009 286605482 75802405 999014390 745710881 39428341 733667641 644743955 158651753 815619503 694914926 301661650 696468615 833132574 876808235 369005512 508741971 773626206 352729538 70078885 887316625 946940724 800616939 547036356 794654660 551737824 919411766 120779131 820487732 964080457 261634843 284129494 392812511 417206121 180266770 280855273 18835241 115100082 148844831 645690907 367143380 404098203 170946203 485178756 842814318 392637909 543323377 887949290 394228360 938834411 328964677 97551957 245179867 237762370 761759255 524425279 306785849 373544772 845104933 764792351 404135762 56929294 766530830 357350869 780696640 576512438 640871568 998541984 947037829 194354135 32142375 715796630 205842749 389946389 892790940 787611393 466169141 707654432 707708345 103889572 289466341 675545698 58182589 947255566 41798716 320204114 200272409 279294723 426555616 414624579 165400093 907396638 79513633 338528998 624250366 905638450 20356620 551371572 330406707 562028557 590983164 213812648 837762234 748878768 911856565 465196499 887192027 793803726 365050389 253103113 900298756 692788698 999747615 195821206 330155273 661655141 906942382 239232076 143621020 877009784 965745823 360370141 61207201 30827336 560720877 572989473 988173188 926851499 988973096 630353927 118879194 906072267 305834596 172847756 185994042 379320876 174459463 904974127 589645356 629398558 498256909 47519617 355296082 543264638 874979717 726936894 407290766 792632336 97815311 142278070 350660037 705808941 700388378 11056662 708309855 692093325 275315025 776238627 808233978 962838132 853578812 961879237 151053559 350314844 930668904 578158398 56628884 539902488 457593456 49127526 523392368 989293867 46623068 220593158 423992296 234669414 395598610 63180233 769062461 135674209 533830693 946377649 280534928 152707309 988712624 888194114 298463312 814232178 18056057 512156912 763292076 551352564 23603590 222458727 262238620 293823386 934020388 275081704 690707877 339734921 5318090 226371927 874379410 223461747 177240539 622293004 114649120 584391595 820972524 727541071 344335066 82269074 797257741 465040832 606926346 877218366 742409703 765744748 20078265 86142911 435436217 71356914 1314479 9097160 178088963 225272721 61167761 373731860 384722250 866981263 754263668 145118433 265806380 863265320 297502445 463170335 922009850 144225407 40492915 505642270 123382706 982299497 642028422 652757606 536931243 997732317 740106906 417319813 234261301 724467269 222742669 147079165 129485315 733455734 343540629 187279590 789257578 629920659 543484963 514057947 123615560 259563080 459834059 904591517 449586767 623447975 515392325 373001288 516041955 15543570 737831551 579417280 837460448 13734452 102358699 756264988 970082305 934142696 371906645 52857850 897330723 74592913 968444567 942106126 81800998 579749983 252468647 630847146 920356592 556424852 134633337 953406523 382620296 735352752 248854370 306293622 220327569 527808144 146970504 718890837 296328110 99686811 173593191 171421206 675866609 1784673 153240489 753025907 419817258 522013070 231783462 846441591 956823689 972159031 785418164 614476672 147897144 688356760 547254959 459484224 216942617 447142510 233740265 110945242 333061175 877894977 905796712 960231796 522941505 720214898 164160139 817401561 872687819 101335743 435280842 577471507 893375169 179343783 55010786 852551004 222027776 743277263 304272402 447136248 235113226 49190863 633478812 51624710 83559192 15328329 440535413 136743693 332274973 53271249 587716334 119438686 792126440 136338837 873238525 643124571 378628652 839575980 633793127 26819565 331733087 543418713 353558167 260817075 853101699 283452571 927786511 632860209 918773801 60257183 269208469 355337661 444862995 906578012 970412625 753600402 1599853 301453293 330617183 810117044 392834791 898226275 814889299 575504093 743697894 641999186 710620341 520591750 697443335 769434840 960880877 810536108 272511949 557274373 985851061 843916629 60340665 957619007 432920785 824773259 259758959 698455621 200722022 212260440 234394370 782098940 255141572 569903371 518256870 412817710 704449301 60486419 473077444 500990353 829275877 879594528 102214671 999748887 414453676 766057505 424499105 489866793 179984758 344540709 720805817 848217235 860374855 703987808 876874071 173546070 460112533 268815662 425360766 596525262 805946915 904723526 216359752 170439427 954590247 965182868 157743931 379143597 222522013 930385332 212266769 305578383 557565709 610903984 93937492 577645387 563430970 49938774 250461194 782430893 476479645 791296212 802165324 121550119 932282675 42212764 512551208 857089383 738859242 298109272 387867292 151880459 66548796 700043695 625137715 734752270 418289855 762036949 774537499 477692473 162761468 489301762 429285522 250031878 325880916 161679357 236050478 936431976 478343270 149458003 991265307 805641628 477246797 877970487 815637531 254816957 581570642 673427087 770863245 17810863 139235351 533965116 678190245 905841760 176049110 989447734 887704185 117357328 351896818 721169002 488188785 495508848 690839731 891402843 799574681 77491737 241495977 58001505 631796634 459246788 854509943 362148247 208574983 667583502 61906679 520662234 116762610 648465410 458224186 821610075 70298025 948507928 397644425 871239429 72865600 644648228 517075302 496965380 349123319 157008043 658733905 880102480 120951847 685235859 962695229 500799202 929414016 695614872 98433849 713560272 151730553 365890368 971840636 644459815 151597389 715317699 841442880 915693037 767190833 6398654 766416160 881974048 492052926 826480822 792595683 369754612 444396233 588831043 381846280 25529526 399314635 934142627 39974196 280715434 396651219 403446976 770968543 931198361 345835025 175259839 638914402 644855110 620655768 356132107 420194439 357710810 112756469 660375990 430643665 589005888 740291953 220333565 141308363 657203242 65886211 885894767 598458519 772861506 727612189 430875808 477900113 737026115 201304379 696968053 338788652 119590622 566506912 914856645 966541964 572687637 69148379 847799924 198329214 426691756 888489054 631459781 752142478 923860762 532026559 504313929 111417171 26162282 978703147 85998065 903446671 952097822 837815232 139546 217527114 206611448 989288308 216556038 437223511 882230642 44980574 100817504 117382352 283024153 4187920 291212480 312093267 527703428 596425823 288718875 526676725 253921882 112224665 576981858 837093309 222756584 15512807 112645769 719332333 470415261 450216303 735319039 555265860 307045718 696874834 807615770 28725039 80927457 285681542 142495355 248020159 822149 720368167 811883929 671049846 713497827 519900392 364164109 813459284 592094168 333383087 622749987 937839008 276059571 933865997 502269358 972689589 4956271 638622931 939526113 734852531 847517232 231474939 713544002 568149519 975446609 849796478 714855027 439739273 292539044 990324950 314735814 841970813 65842184 730967710 106106067 220041788 419482584 995711624 779249946 154082884 239253645 313843868 40357563 23467459 69563415 396376338 678683841 218334902 131812101 900035215 718761478 686036197 76993959 529162963 374500857 587974349 77631821 659928008 54585950 478296891 376792662 829160937 393217098 265915837 759985304 847657941 495785879 341433093 805074005 810882228 713984401 482000801 295292631 963913776 439561818 535561606 658820466 40067556 411592452 184674054 381005056 68383447 20172637 29589864 962168803 116328471 789178765 696504239 46789077 47606253 717993662 88980788 257682035 833586655 106306997 849775538 520421528 286943934 565375574 453333655 194411855 112652218 91125870 419799616 570880554 495733070 992651570 701706762 877991711 723066394 642213590 25771505 921707311 889325090 66537673 622981465 186315651 788220236 745670410 908313961 977685295 221720762 245319072 543619007 84656281 296366839 988173334 813989675 7541184 85989142 285529983 518621896 621837064 326108084 481800444 233514920 631193050 141449773 339423596 891975141 490215581 716580845 229882703 61998789 219337379 590209148 581998465 965172376 382926027 92794128 963592158 960163301 244890316 532237477 876841838 640709798 293789810 186401208 281283965 119878248 964777202 478366128 391913387 233967100 447003988 638832918 536789506 267433984 142237643 751316906 951373776 960772147 203036991 187813917 441258958 207357756 982899564 367289696 658085060 693225200 713357062 852793366 915947862 313034901 414737954 492340394 220680781 219645801 354483890 263685424 768240259 13316932 719663758 562529295 800991749 607733273 34863913 18226441 397993884 777375276 277326333 717149476 944493290 290012250 38434615 104607672 533210882 231179000 258174301 79359111 689517052 516685815 866270951 221205348 971585040 492422168 983154296 486159300 858537529 316387008 296519814 102139991 538627868 333038274 138907806 120459744 143667279 845467850 586858714 532445547 604879246 588332701 195621745 998620219 780231897 658089339 674316456 238346284 213760054 843809492 702190395 779652903 189899376 160287047 95195904 714054647 173414851 53273885 413994476 197815951 223957969 67213656 993671980 87957824 974388692 573169515 790590077 863216303 492589102 576960978 542201250 236970344 178137398 307723298 800788235 546035792 524640522 120278468 975214400 637404406 526798834 968770903 288983217 936940889 357275285 448127603 777064980 100604547 965634871 178894591 719544629 783742481 772344165 756184542 200201592 958619322 150974779 444012416 673188036 725583810 869968149 603623730 208215799 833604711 656051407 311796198 398458848 70082637 18526949 944992811 591324131 230491770 779176187 480908399 778685460 90073818 463730793 492745723 726743392 596488797 298662457 249122318 96895710 709088778 168965947 874255670 768833190 386916869 642077304 425604098 445786107 689602750 65886168 371728484 996674569 772800579 678261848 19311744 781232651 750358546 295013268 152730848 95108510 91705521 623166318 758493793 60527499 383648606 254310602 93780345 280850115 494334900 736725645 678463851 58288139 282408731 59792031 201318964 910101997 938312440 457846641 873800742 414261516 598169247 938783341 250692423 633846591 597534391 450249117 431464534 434473087 29565362 490596162 934366771 738680989 30024996 865445932 686884349 744536912 991341481 982879178 835929954 790282989 33485795 268916598 972584465 590442700 108975527 156595017 149047735 683281392 382286458 924568289 425711318 262132108 445179996 478623044 561476883 491049292 109767830 59922300 804631390 935251473 79390946 794762295 259789688 288966941 203756195 178126304 679527493 381084205 501873540 818555853 168800384 239944781 186894234 788679895 268194504 561753011 459958185 578000510 409314740 86477154 387151064 402092024 553713621 345528660 372241852 377278475 709085288 83769113 47524288 411536791 762939111 105072600 194572547 527341037 744563104 301975196 845511986 328311205 562496549 38394884 25587717 55780437 916439384 267099083 711750791 118071620 586402396 259112139 523754393 831163529 954767947 735520363 682710955 574344426 741638922 87560181 894802132 735025636 547228233 549191425 599167910 692947956 4955064 927656204 474281380 808352496 123998567 79165998 741596598 314370151 810845112 914212576 597041761 855191551 395154255 473620982 755101997 660267534 379761244 265536763 494437183 853404904 528790393 323383556 293461403 478894462 917042773 209064352 635633613 448523459 351083166 336741541 528777886 633043911 880547229 38494727 800168019 290767617 818784409 763749947 72442489 619698931 202116969 940620594 102632364 927484001 883002296 362104716 318729238 71395279 648947689 336240467 991654966 537186693 619179038 395015878 167528294 842954309 262759254 268218314 734023066 953687297 249056344 427427967 305970968 923610804 548699938 114452610 468912485 9884437 589077948 141688936 52930969 615612303 822693893 655456111 690724104 422738197 999781836 703908060 127715128 364238315 601867459 144502302 239815876 241741040 951284589 777078415 660990592 757646810 347540022 418658398 224595650 647536144 32760603 893662160 549660284 370747886 812664710 377179677 960664535 954830163 808082814 154585953 296758259 773928989 580753955 734224395 845558069 223594399 102526186 195978510 105486922 526805010 402188332 370912727 255137500 255093679 909942929 853275049 77188358 384450420 805761200 659551143 951960381 597283078 181075947 576497948 927191878 524850126 362270089 769187780 643579354 204078981 5614738 119990965 577383742 246408030 806943917 589070788 905839649 380950037 959635779 366955138 486028117 467737933 307674042 479079133 264952815 644141029 559207484 292979653 638223300 199443959 838236997 341089830 54760123 709105662 569051051 397079667 322962555 753876901 616708272 107409315 942402996 396687031 397650167 974134093 768124937 989951464 751233045 982487634 628650239 597162792 549858114 788067461 771818043 624267372 315024402 14001897 508159438 694638075 422895009 836246394 251040396 289221317 164732142 7902686 912035333 368021156 727727130 782139185 819958233 247972401 538456191 584729040 70705817 947458283 273317918 751347093 732354259 774912094 9851873 513666931 345731688 394706453 756528272 567580936 521586516 50015459 525708235 248163805 253589198 822817627 979606748 755103147 970090250 563279053 514983531 617071628 778373699 550625619 918570057 873149278 413417919 707380609 240653901 254556068 577390682 808159388 906740231 310073702 219930681 192960918 742454592 631004609 22218773 913622869 831050978 150786272 291956521 986520442 607666492 110170563 364903185 453861779 679265704 818029110 380982385 133635323 435189908 956617428 22441025 423888270 342032637 142733586 889302041 289957770 278115889 290644973 678444678 82073955 41687869 875475474 930474242 72324100 494604729 823193506 238913521 298790687 845268703 348189374 30178101 606792253 304052038 492914133 559923078 674656460 838319024 624909812 364008594 190728753 7481733 232955975 48164916 306755057 557431389 736141462 382839610 865801831 196357265 563854731 756554176 308386695 932320250 72109988 305015064 774944579 304677132 375794624 160505758 14986881 508772193 258850402 55316369 432072494 285269822 969297252 177903214 481914806 94006619 372704650 365863088 308930568 658421425 8440534 626436705 256778884 22044520 933297809 277026103 206532846 439462442 4523570 893968697 968892801 660574998 408718835 99091608 23355345 296877478 527483732 656970031 736374393 127069973 149892796 500038645 28451098 930716338 301558163 213770384 610218788 830071391 300931285 900755122 239740444 72392280 916736936 639753954 670229991 280821737 957810599 750109335 261112285 652058609 507374531 663387049 426079460 470336562 673106187 225028307 389982563 97784869 640151811 373356400 29095909 259056604 995432338 374460983 13368612 207788860 858047511 555576054 712504961 541472855 29353224 423935783 448984349 467932425 605646089 6730864 646113162 452727411 803865745 331638254 376174202 428903924 531619515 94984562 552498031 128547141 935510058 282262084 551082382 149619702 820889448 119944206 113150864 536005255 909145056 290581271 259282145 399658267 415285024 23171230 243285609 648237333 234809237 908036739 584946281 752073451 900385246 28945811 759068100 291178792 673601768 160655221 73685042 807011265 985077457 962371899 64088992 20135834 849179580 931290214 775371353 115349157 425479428 360006745 558369275 81173214 196039728 943152625 618191900 71564916 717193479 606120958 839854602 382960755 442949253 434064559 949978776 574726319 690196513 2072697 256312959 512807654 862807744 310856713 382270728 270142703 451808410 225243758 850058329 353213712 711745491 538117972 293967501 268978885 732096784 347379166 620457930 876103369 418123129 15107442 774693107 9731754 288535413 516204833 999826886 640028050 350413339 824055333 402035702 963258080 574360161 891260245 956637654 753219072 199773799 389710224 868758908 477221259 984085681 780061674 9618619 795026653 625453654 980875060 424380501 194591957 349620701 612778768 52070932 550609513 973664717 191177622 483330332 159853677 889645785 319809935 723320343 152527489 725063628 761754828 601634468 117749424 625050130 225536613 808762393 236450542 603837709 812657463 729254838 680641972 968976093 188363639 442142428 878392790 441318050 757248757 187178521 411899753 407614647 7723690 417266605 284219904 43328293 118637828 489561184 123652111 9527713 557823705 902695350 508676589 136501634 692288995 733273688 542342489 567141192 967923580 899587125 225003985 414036164 358541201 759587978 418665033 412012958 73043350 781418439 934959252 483661512 344758973 138771747 558234820 938820633 564815938 745700698 287170226 614219998 740488127 200468326 985440811 239273954 705512910 76677558 905275096 841290358 26851466 973842202 10383158 196238890 496736690 911299634 402693683 420553840 612141795 491742609 116475123 765015898 218380046 412177994 159042817 711790701 579251111 388685634 40817089 942309279 966287877 513352123 491205692 368028866 20303292 215461035 24137434 686462610 959267932 402860659 583173842 493623583 287828646 8372031 938045656 935147227 566623205 370332688 684903375 830035953 650075427 419721051 578190440 925066418 722444752 96906978 411305652 54030384 581232429 762988776 843749279 379000298 453476252 215825612 950239511 582314368 133554258 620039297 117558180 555567479 194027700 324361126 973573736 560846550 521396417 506058267 489241057 877393504 538215993 733368858 407368000 305932931 383812060 10014975 239691102 418334929 944937062 817483160 723858828 36720467 821335386 750364957 379129305 939427999 763080600 433714027 554128111 508637365 13060731 922861296 700941362 542230081 569294452 296312431 2119032 837429573 14594501 725895333 939690355 461325955 132443680 357537145 990571987 483753211 687334701 251080395 50832566 53848555 512200268 258482135 679200273 69288348 183716694 892977584 256630191 230745866 561734397 28522627 17444990 278063253 487144984 206447093 187604978 37698717 582293613 59206057 600199285 750444586 662634583 810430405 349607267 418299128 301804896 134782690 511640476 608727344 598234453 520954080 108430558 611087440 999212942 933759577 234805663 893205429 999280700 813373140 216733579 714167876 148551114 202957473 197053234 636619974 726687545 908589887 760077035 198660969 443840244 406030687 167445921 500446657 582879586 234369724 480686823 349330632 861049287 543713538 854201511 485294702 25165761 181849022 477366977 29082165 148800803 610399388 81044063 290886371 372439297 968270681 65998979 266190619 143395313 211375213 463331773 333165390 991267879 766609866 481874888 548580769 611209970 579528489 496045359 132755764 423687591 707761880 317759362 57544956 469092285 215120168 614479789 274450483 132231860 782519115 626937200 991359375 592945589 747696985 723117227 256218537 813649011 830371001 15928560 453509189 119186853 377457424 769807907 787060849 37835934 691044567 29961091 185620701 969721435 20866171 743646169 579369568 192041068 436859267 189185136 110611648 6057994 289035220 999255493 817450694 794362513 140131769 399638473 639706558 496592446 587714158 676323603 930374203 797459971 636932135 394313733 773835385 239668985 339483777 715590583 430023202 861512478 755658216 962076699 321403373 682553401 607360874 303758522 883955632 912710110 909710747 663594141 823250073 77131460 478606380 418445410 532415902 748133416 837569746 15973300 789029700 800238553 869214380 88226881 234615059 820456868 50014790 671008298 504698647 466670372 118585438 807661986 516242095 529903656 409512246 736081841 291391455 745842740 10629209 468062132 209754919 684316680 268082498 451286451 511264626 825095943 168821685 143264944 768083958 529173797 57800786 471807502 824395548 75493370 345406827 146248566 464889945 121663781 522151067 295547995 535480916 925617076 495954503 303421842 500902107 314599534 133112473 517893178 180800138 840555477 911571797 359564696 787832907 615314584 381688359 401170081 606780804 906775833 800442599 483321511 872243146 288251447 613414356 661832875 474460218 557705649 457661472 725239993 671215952 872887262 713623708 736168713 21709271 87274254 311795655 776698553 904954120 803157773 483211485 421366666 255820734 915511780 15060681 538792325 823385405 14529716 930093622 975581723 584525245 199151350 738684607 173093639 126340641 738661718 112930348 332887215 49267331 506021719 814344626 835213022 311027286 679894140 262847225 928446022 250376339 552154220 901880553 555151666 310476242 940462625 499460906 911570024 235435267 785679283 628337164 165960870 708666376 682797038 334527639 193946963 224501515 440255534 933314323 476712781 891069541 360507954 469258588 903556141 871453306 163506626 61225745 737384326 580492698 423967650 474589804 970223228 122916420 166415503 625551980 538595214 464597127 866671183 645856698 336578212 938383693 253655336 457168716 175253411 352476683 227669598 867670795 793173390 218545415 500486814 399832589 278762305 828378708 554975967 59692161 953122433 19351916 997492948 278952481 606605733 244313831 362561645 364549615 559691623 262869096 494410084 600073382 944881591 878243543 859786227 749930213 347630680 875474978 609565051 761828996 541924975 136700108 181346953 413383738 979170299 993236771 524138561 528286585 45977520 708372945 563551932 441466214 788065323 351098118 375584163 93416765 928830265 635830237 243113501 789024238 236238169 515726063 951515949 439342418 824158800 772429774 349020375 50177560 815553976 922852475 44902860 478248233 150773794 65296595 188046715 649444882 362905342 606526742 836114297 75423050 39969735 961277771 340451461 863369571 989126728 935650803 503478859 761738084 758228184 958521956 740472140 907528934 864268973 772439265 409662106 360294363 954218330 222106704 483834152 439902787 246583387 446308586 601874336 714082001 711474429 997119240 530210229 919624054 350165015 157056571 391759637 371646856 173935187 248177599 279491600 227500594 996806761 695019053 406513743 656711130 959728544 334438927 156194565 261429749 60490642 731973127 857420867 468490139 573811468 979644712 635641721 568715981 241097825 398066962 227435659 638462932 128426839 596957312 852796603 101999403 847106397 856734000 438983364 488478243 635701650 879286815 747064604 765528590 222123028 944280479 56728848 588481592 660544480 526116936 244701028 601772481 8012089 587979858 310601120 476722742 98887498 653886848 590031375 266827639 357510770 274986246 149107557 894986206 405522160 100935770 313994881 592899145 555816807 818390258 756193347 574460635 784862085 333958710 912832806 912242817 712247225 717278579 514281931 601118061 390539279 532948223 93500149 145442646 475870411 232835455 725379561 865489423 497827299 846849312 79331991 404235856 861167454 791359267 576744147 299088270 302588492 474362554 124885779 882702336 497353678 869442303 631034836 903848047 113843372 641766578 565746152 19562061 115249250 735618352 641513925 554600893 262445448 595065813 966227078 246079475 85258176 782296872 118650446 212212367 751847515 749338605 455223623 641672913 785443003 629763944 389778785 944415535 731349558 267087449 396020949 837744325 649145094 391137691 53828284 919030674 143172080 276826063 931333986 253518429 396336115 992805866 161538842 488216191 784862532 195439663 808282465 82314386 365197180 140480541 262099750 826509116 79950982 842542270 889954186 240417444 761705310 134835219 686516867 600181781 339928362 867074348 98295197 606196343 63940173 157998670 166765618 579028167 431146356 321602304 304651059 233634486 447223448 773500016 7298203 850852788 165201947 66850565 32510164 259095834 273308889 664280769 459702771 829720736 871156688 12128361 631088522 986493363 365881785 287072843 220240656 717439754 659253334 784074908 181339776 400339547 157352619 969446075 285689003 125002862 361393461 321433532 514883387 870990116 601271212 297055511 805604958 776679863 344905451 126109339 984672967 941374045 503939935 889747424 883460979 213349054 148057655 25214638 24044626 659706352 877957672 259377604 709766469 71058294 846851533 606914630 606003447 97949997 574941753 859620615 402960372 783453506 117406352 577424227 314131820 951749574 259791857 591436413 343264695 598748938 310599085 324970194 531006580 279619023 835615266 753430034 704137105 439221977 689687048 600540523 672886942 541187518 758240843 459848907 13768968 394341394 190221881 968216880 571684936 984799177 687892404 394349555 106500376 336514763 597781238 508643885 214701130 70213045 150052771 757399822 259385041 78630351 345742066 550899459 381135109 559681610 590606841 875468166 701596401 974684079 865501825 80414097 867311735 634335764 417646441 481894215 301663689 437433912 953126269 978661906 194945830 787865391 170476984 383216498 753471183 231709501 139863998 812728744 378916653 567899911 749997814 763435916 71199578 11523107 315159176 687424020 31100713 308388355 409340881 112784148 557578885 247501953 479871938 858068979 323194932 47150279 162376365 588351007 889766418 196291342 911205310 78526758 535145437 912703662 860449270 667890042 22528663 528254787 498566260 399429598 782102397 428144954 950807796 332124363 863100152 367137664 228683963 774618842 847641446 75976586 833399528 197694004 511001864 646969014 55669627 741529830 218955778 736266172 100540516 839772322 215038091 904983311 54535624 993329416 92102131 637146578 203045076 424566835 91264858 921325851 404678150 934299271 84264026 835892617 798382858 428116318 606590390 188927875 562222705 390500549 803794772 636042438 860169060 856129311 207982834 132166294 694023627 850389314 654584137 534316596 978920207 518145761 93148580 932645225 358608204 509860905 888886198 914085264 247078138 303512018 724160905 781307584 490092076 951054219 535975201 354569101 991673565 328077216 513302255 87242108 855960556 909403398 640485382 225047712 202199308 789166592 676295420 336389026 358708986 670148135 280854833 109329100 7108991 943447550 629612573 785387805 910386081 321163264 770814190 273595650 250240216 898073535 681339084 400070403 421128281 930911646 225309996 788119048 873102711 787971457 687566303 387748456 323206307 476689980 158391549 494706848 151631244 383046376 709874470 179061101 792708965 421260880 303338502 881537109 115159408 772899606 1510910 930043444 630417651 513690614 917041090 50483843 901020579 580196581 615116727 480723210 55096408 12078702 937546168 622517653 261916026 171596522 294840354 606111429 445462187 761935754 595233826 343702698 88840090 2080219 239315732 309144831 933196528 455979931 679487342 875674920 279277886 163110123 673778061 31488490 938338090 793611436 763586530 230789109 871304866 158910885 214850035 4813329 364563129 905571415 132136547 827227917 271781046 853271705 869005158 730244246 278911714 980607086 151493379 537822956 604978926 904260873 874135109 483055056 306847929 628221938 261585675 264287126 227026793 914652191 36865958 476927903 482647903 39217437 790229732 486873105 832366145 109300866 807655430 402662509 353412529 378468420 97121656 287444771 28358120 379204585 311511728 534440992 453702205 443567939 663777084 66461159 91423742 726694231 965320029 328746841 976832168 602738608 995715519 795291811 58080612 323097026 115614275 796516038 420980189 215030135 686667290 257397839 667728884 343124355 175030787 53440395 43412603 469558827 234100102 310909245 545723154 152352309 904514027 614947183 781950857 103827581 994908402 534054869 3337930 726838513 959587535 962826593 279239158 470056325 208633153 613171956 416912350 965524177 203686994 48019440 499066170 112077685 439553442 236198038 863728833 178639138 167902198 665819390 563822055 778173676 13712 732996164 782518066 419127564 206185177 488880062 421281753 608388435 63865233 77373116 224491826 396716622 843814340 708775218 407104207 758203394 749323532 841042459 970908330 313298077 619914527 448912746 227841763 957698588 468702859 169173977 308473475 212716583 6069938 319523867 632780373 545378098 319697052 700044363 680781711 442289199 82536205 912876598 846042189 341083002 418958261 878863732 932216772 806906732 436027227 974875518 53979743 527776769 563935835 664086600 323751885 767050916 991960846 176386734 133382843 531719127 472108965 732218927 386731488 832789188 762472288 548571116 819000115 298984850 130119479 340472925 725754492 603882799 880749894 265409108 418520066 417232765 941590102 895757414 359200103 376222767 338635635 218802588 679791543 164874874 167035384 271933974 535009695 328626736 225763298 495938030 433022053 403092361 196785872 854178274 776580418 697594740 684507211 604901616 461840833 189323854 140543363 218850604 327114927 972213282 747546302 319040971 223562955 163097922 351077965 204015379 322356069 484623425 387677769 539149223 821115240 441484455 583718602 988037720 82048077 768240825 896559663 400868032 464532597 982741958 339199230 197622405 95393450 806913908 610704835 946939156 358127998 451262378 585618942 352325066 954429979 139828315 477310946 445920014 709951306 803580144 481801404 935715325 673249485 403188645 140528913 438735080 843437816 833095494 688719923 250226062 364707842 597784844 512631319 527116651 997758276 673949663 538117483 712202189 471265512 245725398 332795474 165854670 607228796 785792798 865423144 446218585 797013711 742320903 9539156 967649241 358281433 410796763 246460242 389891664 422296075 215212931 144416132 882409415 337708105 891467175 50474431 302920180 686535558 210807503 990515207 404420729 381243090 125170909 74485947 988255457 129506728 955151460 970695199 732471279 422435281 177577039 458318129 793613971 464324591 113509364 815184732 584023468 965502226 722080742 570385379 796066126 650289770 821136532 953216570 653321118 984882345 257290003 257730467 510503661 529529090 444311556 642249940 400127257 524335305 372060072 787625572 825252450 3624120 540736041 87190243 225789120 844602310 548428359 158448387 488976856 133380604 108788431 337408059 105055761 690867834 7808733 745492942 356595218 677940950 645112842 446692070 379655065 678341842 756348272 314251801 197670646 624514959 95385012 244133652 630110241 322580615 564678024 970756234 337198245 467872308 962671453 904934668 453495083 361884194 136579550 630850369 960668020 580939570 156354568 526191964 674475172 576033993 139301623 193890802 609774724 771109128 850110127 21759494 188473737 150123952 869166212 770791960 39071169 991214051 131637722 950336857 687191355 395405040 150949968 398365888 385051861 661390296 275058991 988460182 35868342 358062867 200814476 999921135 130978162 853370330 42075618 13801911 202080166 693110627 213860845 67099892 143805923 640945466 548013261 811417580 490531131 837583630 519541942 124641491 7275561 711512126 567190523 95175569 694559994 401793239 265041228 864008309 747147281 970605300 653861615 562736427 414552177 463746346 227960894 814212366 791891863 190328442 124969236 459680101 909771380 113162159 406277853 944912345 299838210 564796356 880594927 495741317 462127947 809869011 6706903 867595980 63590853 508757608 827127113 262938969 387414385 154147723 436767511 362040703 352139276 112526947 884376853 880742062 643895428 500078067 94135195 620986705 792791369 303209487 473075183 968585690 802764066 324701597 865027255 812907704 336188966 411383285 630658976 236089281 181667784 850071356 521199712 272067836 94008661 682894354 606580194 864018524 70280768 478286041 506610137 508163613 415176646 723470761 658086514 540504140 382795497 710696692 878592269 246401656 864371786 670306690 976673335 893316462 460308631 984307736 898695618 452016465 251229807 59292685 580196658 794674521 933267558 676014716 328243227 153205421 162113841 521553215 735205773 504431830 853972874 903555372 992851287 390599433 654745990 972510078 915876186 807394138 811848581 751172517 863264078 110269404 447671365 869704043 659301850 793410012 189398842 633072795 765208911 626290177 583183855 250436846 354098756 962754024 996389260 12356689 802897862 508859540 912885729 765494878 312199264 275464907 416664563 61136557 666863126 499236866 572994920 9503595 522607507 130025339 287953785 904892226 381860808 101629298 994969946 437600539 675279285 55971222 823320394 345202067 3282887 937618703 94366205 235913517 172622851 734304598 814636668 20967288 198143863 804145855 389104562 90613703 155868801 365076397 822158911 247056819 598339937 851875026 447576997 355626772 475041365 727288503 958106190 484063451 404079877 93177143 397530697 32710589 91690186 397035545 689844090 16411401 478380929 72836955 579087426 223124295 400502780 931058320 582696561 604584187 626550142 436421163 214088627 561736335 334565613 151936924 813834667 557175682 850420756 518892721 1335974 525242223 602987177 959367848 647931007 878280047 765306609 412934744 325556808 492339498 375963893 189996969 825972867 290552662 500066784 509814915 746379479 228142257 984840692 762008874 471425856 723149994 360112779 45997316 922719180 921481057 993044187 74386418 823552654 882534388 101796124 623055763 773376398 398505214 534298483 863861943 413521770 768747475 284616192 469968071 171410010 452507834 196303309 542835667 10636040 668344310 119594138 139891683 109978192 100625654 460867129 138236873 269748404 902797801 384989283 628536018 291187176 391921068 239720376 964928272 466508085 443645569 856855910 732878151 235946262 863682132 812414868 313185315 269556656 640053747 543571348 567085005 682516648 158266695 836495341 273837957 826017157 947868052 795826376 512206366 414884366 161348379 192459420 52113952 901791988 357802154 946792847 791871093 319558410 361453591 685609042 394569748 414554229 65818671 686681486 451039976 124769694 909804177 700012097 379305024 38549661 556315149 395704637 554257918 427760285 881850509 754960480 519798187 559856947 642180485 747213012 831704581 738035175 616617293 262891132 636389585 876899544 400540601 925052997 454213739 757045884 513017800 600217714 475014180 883670442 458188010 621976699 516464948 696728061 395026369 356246055 496337062 187773081 928266207 836656605 629252692 58327608 92889841 850631105 326116637 896757268 249781663 886270713 14966243 104501408 974771261 932026462 912118019 526252159 328991312 249894432 139324749 950849378 254504942 589600473 213081694 9789640 399260103 713532435 370041420 661878840 233143323 559963323 590394767 484496733 961225688 369629080 38599799 972576589 508006201 793718606 469819727 453477063 227712191 89840231 621854322 81926373 988255940 823950247 337192634 532127665 173382635 142922441 188530544 56839980 94168382 599040518 623354929 227384926 258116959 940712439 209720177 678438610 116837018 212175746 723004964 910718914 652912296 336703585 775784774 356824785 476352920 603165752 494029664 561763594 337577428 152524680 795542295 726735518 47905206 204764510 389942168 343629431 554976112 711542042 789814008 772780 117034595 345203364 561102787 226152525 435150194 517553548 511977682 981147098 671190784 946166441 48514641 491542221 896681670 186866757 381813388 797074526 381762039 733499574 213013263 89066412 834601982 241717139 275358799 200435567 598266266 390945418 343199038 248631628 688531525 313182486 87389561 499196988 661940419 998456619 375615806 287628155 662343670 60878033 80881888 548073228 110376360 692795166 157822556 97534252 738450398 887100627 967852330 960795798 200665260 937929275 758190370 330149968 710571840 241424775 925487165 423623547 442964705 684329476 637807145 577714675 552813014 903941462 526822181 947611559 687628061 389602715 866419222 387987206 642416232 723023743 471466375 676565832 942477013 592141570 298729806 665744953 799685390 464682100 659510023 834796858 914867335 141773626 352361177 574159561 117944771 554562270 74342499 535877104 223673525 858095420 954978888 455164440 346153390 634291915 889230419 364637129 581367947 26674834 223968657 695047824 819456232 545688115 226898419 549619716 750431527 670639176 352613397 966103254 136174418 835493915 723200176 718305322 924608771 504742208 140216516 401047869 513351333 513587354 976943977 625230128 166780308 54774007 784127267 987880898 460203107 932011303 769807820 803698272 803123277 841450451 714369689 183451279 808060094 220618046 704011083 50901413 274169696 965784600 666354567 37741848 209912986 599803363 620494942 273964888 399052911 745061217 105915580 60211856 438353747 403006722 312860441 913556709 906191935 98029127 700868024 2938188 207290781 816847232 478450807 272863313 715916327 873869026 614550838 520467585 625225366 538492715 160291589 637942894 173066071 515123942 535763895 561351827 989412899 846339487 228280 40031306 216313174 553983517 619000453 789991051 96221007 34563326 480936805 335607094 745671287 946167714 212823960 795933314 257686200 266929162 360875240 351240615 45841287 874734964 653827106 709493761 489205624 406615266 902403047 907747994 909095404 849643620 208995968 593170350 709782252 778263217 918260173 356856974 526811415 378601620 723691673 941289752 529839034 759795744 118533019 680916208 260630277 755006946 41609850 78139078 25526511 961057669 682185477 65762288 218296641 675966437 848084029 77893484 64296338 641609513 177143188 982959544 741984667 362125593 824826622 253599364 853016390 576077896 829658082 820403025 72724512 578977526 988006387 644000801 642581750 71218384 658964169 937916738 173113792 446934569 361616118 112638323 572289908 182447355 783941902 812576487 319531122 420251705 355363776 293304947 125963487 449489897 918524621 360937498 131540458 540560021 290732423 247918687 338666850 211096905 225177194 696602515 639896585 23516444 718108904 183521457 288601927 687892321 431856214 818325692 681114838 184824941 31721266 79082896 671986898 206136755 318631248 734043776 741277722 355531377 715134409 634642862 5475546 569387106 248894603 546538768 140708339 945682449 623336811 691271998 894752495 960293800 482778052 943331986 393231938 707813051 157856521 333086165 812594228 82965697 799379284 822995935 957725885 581092651 757199367 380518664 125083593 929612233 231729399 752588593 401083579 589590485 96669526 491049754 51288316 480161050 155767317 101086244 671013116 591219770 340356249 335565590 744721000 901966454 503638711 253691411 722311949 515279590 747572591 487858426 376080533 252629696 321647726 420850540 915868404 273191024 500498918 359619602 257006183 874735759 390322177 833473424 540691271 733580546 622732733 286400767 230278243 279474720 29074241 559078920 833338156 906687415 245290593 180338891 692022917 411761188 94209632 917919941 783181034 311430757 174873887 946089614 581100146 372879979 737802197 61878681 32591441 599903177 206764453 46941972 8552435 842346159 233497218 237272045 713318376 506437378 729490389 401513991 827951649 33966240 241451087 33741370 568481120 711353948 459904814 247369674 686687003 838000433 313929806 224683317 663386357 49330105 597602852 335839586 27262879 6970009 863764882 620063708 132971252 115799366 571938462 44801222 87777218 351503859 983836800 574052634 826211748 203160200 811811202 995646824 219594071 175592933 380920418 112931499 369682420 779797281 171599264 435864361 740985513 258591835 498550743 880257634 424574201 243064722 695921656 34594108 127672760 896584068 860672077 887882207 168403281 595115386 246445548 870661827 98709683 447596419 933989369 265125901 920593723 925651686 140535628 588955622 559335062 520658725 528979234 36971650 670559258 71923586 126904940 367588820 780164015 746320708 742499036 197459176 303458144 153827352 875791422 29617423 207710533 548347346 219900002 803528232 514949048 578644563 306308053 241392931 987264464 502506695 188270944 351238053 625891940 984022381 359972251 560288795 178610749 798993454 828113365 304654078 638592008 369204283 211886310 543621897 989038731 264931350 994846189 950292616 533541066 119969963 353729355 99199832 925413354 286268496 837285223 597624770 120599331 589250754 685478458 406004067 7926141 561394125 156900032 137022263 633600358 870388376 680595554 376633079 705229444 549246222 397523006 249410405 266241566 952270942 640934843 692548076 825242565 524242517 607206862 868517512 162722586 897161031 423557734 681301975 709547526 729564973 450013281 261493690 364090789 576851532 349161101 138253405 889989535 918522190 355434066 317807312 944688464 923980033 983609346 767377611 24799988 760736123 627717199 198834797 561878763 542445115 982629516 513263970 5405028 604056367 661399281 569087775 961836971 111789238 942869803 758913073 861148994 721223466 414721315 955517093 244743174 500262120 383964074 583353234 497947238 217744634 481824385 929277158 88347318 410450192 365941035 838106380 852850394 17549849 189276854 495381081 659534253 917424559 901564066 875579868 960974952 508786986 51414273 541620372 470252580 640464020 250652755 402419966 563947399 778091231 664852215 622228415 874895005 483869321 931941133 163240504 340991244 917343342 444138642 556430493 157723385 845300094 559003775 290399430 327105634 627418493 887865950 101645064 961317061 444204144 76959749 806733701 30792157 358671987 930317472 83591263 948746111 79147772 531619069 579712085 610165398 833858850 268224827 489409689 896364455 888708449 79984057 579872923 509799955 603144853 585774024 111861157 418801934 102042978 40941120 312352988 553825622 422801862 491095173 353583800 826750330 40701992 229267733 139596091 642603517 969914141 404108814 452788427 158901372 820354140 892625265 58666016 947686613 535762864 322981133 80849809 64144628 242185295 886347396 831680778 109559330 137379578 938801892 570913713 45053351 708630082 836896314 99837177 750799377 94588442 638527442 446847967 529842707 742026524 475742250 88524838 671186498 665865053 295659683 256773759 691490529 609378484 377982831 777022644 78052897 258703716 557870335 622368468 836596160 624314700 367432088 160935105 573323565 36802891 610450140 989409679 399209048 835726693 522804619 782392825 21628328 192855751 738448968 720391813 22431265 167030500 100865206 798111934 826774569 34263242 201607097 739437886 268975145 320998276 348927498 67782264 927904319 830469170 5546275 920357482 751533269 539693899 126617798 908748690 75997523 206037745 979286299 468077420 983636738 404376898 940691957 239577436 975304562 801775071 886222921 402320479 616432415 366489814 791284527 955157589 209417253 914306664 669991454 123748548 597969363 615937578 331504555 197613925 903080494 604004168 655602971 990057078 367088761 732438730 215785372 831531570 487931259 857115357 548679918 336179533 726378292 964827744 590971077 14241727 392929216 541802791 711861021 368692716 888027338 977157689 789097993 510837848 553363716 520621217 382659850 960957993 966453573 848352372 267440982 398806892 584736338 416133047 314308226 627490043 480530506 830720579 455874306 982202454 612900000 231730986 110378181 730712714 46554661 247562180 592167903 681148718 986080985 388687223 510761289 521774009 387804113 463603055 812530307 986383450 636302674 66845418 257229808 399091092 65832309 868475119 89838570 635976993 551233552 487483330 746797259 788066478 41092348 470138694 182032558 796822389 268482918 599556521 2201608 899091024 159002198 349953953 78237411 612785693 429349147 572624085 997813409 377904293 451256229 980574934 592356181 624547646 831848848 825995519 7320840 894931098 275931501 391962791 766570699 572578757 589926551 472737765 869926058 886405418 404263988 639169697 777689661 576729727 670854528 488133208 850917237 737408777 812003751 95930508 432389562 485629 842373738 294094775 647482311 461820846 999218446 166882145 353829050 336604392 815530523 116321788 648230034 837658847 377685521 571366139 477938057 619318510 985532547 599664344 10726385 937865481 57354688 527629377 34553494 723129449 995519031 453829842 888634831 475943170 682990243 328062452 580578543 514518924 161606594 761348422 588390888 434248946 435064419 158841768 931293874 998667057 414602045 350424409 480887232 671469860 207607861 70608415 293443522 696440025 898276271 434541037 9751223 998896481 15464842 991032920 113488687 880310787 816996487 881195663 748059673 784909622 700104030 833297665 713227241 676901718 686286060 676652899 475556628 632356550 488500605 33321198 151519921 735953386 693173738 45642687 983924064 191007819 334721533 115149439 812154837 509156872 693002534 438137048 869001228 772624834 791910597 604429066 28640551 15065464 985038432 457515277 194462048 728049385 235601397 495809055 570974843 12189185 438003169 537679737 953572646 678535108 353098413 341370345 630214300 929200318 780309759 658251578 892343694 538784266 255625212 814038456 587085981 994232414 740338528 969537777 916903507 560243125 523997979 876405522 984827543 861804792 908787570 66006024 126687753 574032847 509640264 200276782 334577853 475753991 198252821 85618243 726684578 886298112 952795715 880947134 162391197 827776259 590711300 156451982 132535464 384800103 452712664 974650806 980925078 886470458 980765573 694003052 55106990 566170809 748299891 387287074 357844405 726363439 516614206 777099429 421444485 177399064 261005170 785399471 775498314 482430504 359222955 316716878 852699956 196506851 871931754 876927218 951088476 857978853 786599414 936516844 891853545 517879648 933190762 571371880 973607663 735512684 655102016 838383699 879538201 329631164 182098971 515449649 511788911 501734407 328616646 745023147 899335546 424988964 733823407 383711506 113824083 154913713 629323904 927700538 836576714 264099685 197779380 393870846 132635114 409403794 111980000 612162727 670776051 726357397 672456465 243762202 858402067 683547902 539927434 703294792 737620527 964782395 471833149 249503017 532415435 122849709 87343024 160186736 697991580 102708160 368524798 43230407 492376499 966665068 756911227 555617620 823755827 298213011 717507652 126161819 870039221 144740406 859353670 310409306 757295865 636099656 526060116 109060845 704929116 104015031 706305457 232990887 264732908 234993866 536518121 76405471 56226222 817586441 620956866 676487340 67475227 467571560 140415124 144331953 487859649 445180748 982232802 654797559 535488699 635603747 299655868 390068017 174528852 202023210 566259517 688470959 675513496 828848110 705956893 246921137 655030150 210855208 824422346 671724823 830141422 35841785 910462 619808094 712980119 60026458 78444900 636790843 415028177 722044199 576516239 359569628 337166436 81483113 549456364 409087815 359769007 574597545 912436555 832700245 650848362 790531729 864117589 781248432 616333146 677773595 642263955 400655201 224693151 505073512 341696114 283763950 470682441 77010966 907780098 752324601 146849302 206203743 328525831 288319601 680915778 214115828 907304110 787211840 531498945 342924518 432111753 347084401 166324063 631080222 15889683 137192646 274060164 380714498 403310582 778327312 349175854 647703501 786851762 550853606 576860627 421768435 115887862 432765811 99787108 76578988 929805881 811742693 151382793 72430583 688696588 255971717 449852163 275646217 977249281 270588234 182649893 828674702 813362447 823099731 184548134 800181265 289103105 704972685 509860422 537580485 557844589 394310815 373439494 781174437 336971749 148186830 223797482 207858386 699206730 598347734 17797327 590362842 945349120 618263652 220344961 847994234 451576397 344619040 685062668 984851965 71571156 80332608 5606623 386774555 774681042 391204992 124341783 333028143 378249228 691356277 666399198 551489933 253385038 948535395 461786724 792529137 214256959 113491253 920774685 124008201 964669929 200510952 899687805 110491374 460847227 287323940 360494998 654724013 335432609 554872609 307956580 262527075 671039930 881976883 175212890 523929112 396952611 505603621 345664779 396753139 236412285 318899904 581648720 961061894 881305612 831250532 34361528 481758508 618420565 65233051 869912141 716497701 775139693 89027340 997715981 105856051 591438259 374538117 519095427 670171166 313020995 72215714 453809299 281467855 448615011 719471547 880140094 732450797 856170450 308393986 393951593 678359170 961075702 384972679 191642667 199928615 873185115 690278292 35008783 340645098 2105724 963028336 685035337 409906673 407284370 907810630 735964618 346010374 787809096 660139021 842218686 382069722 367512302 460294772 50974055 941260333 854225481 467194013 616115046 653005094 245109396 145512848 856203389 108217950 760760146 441910362 934637724 410074826 795012666 207272299 724499165 682701189 607232366 279308977 893468648 887925277 914753206 561820323 540232504 837862538 535958354 507180594 34953916 908706497 477349 628131059 867365208 234359134 54648825 628558456 297161440 412478646 479419489 304837580 584882740 454727139 990116894 957823774 507309760 389397661 960015177 597582380 819545965 146109620 850912130 979097447 46338564 738275486 799839403 119327817 90496428 750110732 155865939 991377365 829373005 573359196 749049226 967467857 373082791 530852269 730569206 645326675 319006938 686061495 633290360 662890107 14569286 956027008 532116597 550460945 44170109 521847668 366296520 387731302 328631709 872490545 229556081 574953300 427721901 312898307 550587915 485892106 294336374 223235257 478050413 909732848 32791320 340359762 139233086 801771332 419197682 678884981 783816896 710394699 818464397 112422762 848820427 604818056 968365102 362573015 446717411 692679846 237845659 119061726 771974118 442137208 388902160 307754138 885051108 131649133 550811444 105526722 78648026 705067326 320458092 533759365 251608797 725446429 271723415 628197008 462327193 367722590 289251410 208914928 653817697 989576163 490594054 824139648 488076448 349107235 638679212 33932977 564128388 913276979 317543058 801499135 353716075 574337124 51643522 411358237 263771256 436889571 461313876 752072289 923243714 774964691 439124521 52258106 102441633 671011512 375829144 204392559 322411050 460459924 858345098 294270630 818589921 26668552 281810394 548938066 160154645 515555626 623622560 493774011 514571547 993396702 848266446 524223441 906973219 57510199 596391324 100150386 482791789 310861665 308639893 971826180 669553885 395249061 426731256 455162466 238409526 256399874 507681530 343858436 622517677 372024924 978300516 450793482 757388557 376285542 816658815 555279178 164765284 417196852 259120879 46495967 923459590 25080242 956439252 728753443 936079892 374518170 584905852 731579222 666019087 232904916 348139771 162902275 522437196 337210319 367254388 354499252 755757730 14195563 969008945 396520197 141996547 640464959 124190306 127981170 776652373 439715217 849053958 957560450 228616487 641919667 194516247 415579079 754826607 971314156 76488383 602246851 523029776 503282252 634209985 496187648 205636372 250024456 789933433 525187521 997178647 881752307 446452339 728819557 36362522 320644984 895606998 481394546 718658239 679740008 91298288 108680263 595167076 142629519 653286 288394507 956546228 678479970 450958444 594567157 299195890 976861797 863242182 16492851 824728111 493958439 431975407 446522547 278376715 80303817 87986401 256745139 759481431 311202458 17648885 883742281 458626638 183533924 235557209 315223141 302408404 192517680 330680306 63337160 849048585 687013077 981476424 57732488 663735063 494720812 243396966 73810628 924428275 377290385 833964586 374848407 255470719 529205566 397060192 32377491 539452804 629791688 372653039 232856339 453897813 352048415 885471550 848174985 679032520 172146259 85322981 12617743 523157293 61548944 20439490 602471993 226808740 250482708 589323067 10741273 266537108 552744865 907455058 14685017 364120703 13470871 892098420 276817362 798048815 556725947 908140675 459497682 914144372 361270595 399544573 268714079 510353205 777470443 697105052 990111472 449834287 189740673 628260182 463476023 118238517 692071612 199170390 131912941 295830439 705724672 793584508 574809788 172438741 58389012 447960568 972372666 692838670 251062574 912827746 608598264 528215977 478548076 129355635 373025583 740281930 251904944 299681959 944768930 158006966 33826533 142985580 132801357 448468753 488418259 353839136 549897134 26599840 432671030 353909633 700395473 481090232 954512101 33069604 796495211 869023660 743269498 933093593 612680456 892985596 480715049 596000077 548726466 897835202 777465283 791598453 629017178 735167836 172615195 374904441 248360680 227718220 563663579 750238909 220291205 422605444 259124704 779389439 290855560 138226437 214668740 980003902 513606279 412322634 411230913 247715193 341596801 941745511 858343324 713254591 17588716 397646550 401560692 616919260 739589077 487437229 81863598 959362269 870681604 62957132 134059200 974058205 204162744 272816397 809190931 263241007 33073797 557927936 607356160 834627650 938675627 571095977 938041034 435854119 810099378 408972435 363264703 498975661 930224854 345611007 905881061 956319508 358454694 591291241 612126336 971101211 521671147 425801033 656668646 844312317 441518648 553589280 568989791 40241655 427453662 768501402 321839246 427276052 635303418 241045525 600455756 24600753 483445820 868622952 13416407 446370373 500531828 740510128 924387185 370209150 614709944 164814621 803307185 415186282 681239650 43509881 261022682 127375597 256678740 406215756 600913204 495654062 772510466 314813087 516458340 976931282 556557042 937213556 228514758 177998365 616123597 213686775 871697332 959823641 885924164 144943830 473105491 373545076 425467617 586264782 331087828 948139071 796122458 329815603 512296780 186872408 139866379 495053353 336263265 745703447 406599414 169685914 5783347 148394404 252406329 674538060 165690918 665237999 29432850 95180045 198227373 115064639 333050363 121065060 688955200 321333501 751729 805996831 384679717 302148840 581502517 821159248 270539370 383795457 435923436 685573367 730479843 764486074 922926457 376739941 138291282 990598769 724171500 750868257 417693518 940540432 710724604 553143760 65138092 17506842 463955198 879101198 166241839 996803456 740196789 411009252 137612334 581579959 903504898 252877508 304329826 86473248 501871979 627031768 131245140 667536117 220916355 95094493 579134899 345482537 532837779 356141265 563788615 361338164 533720245 671359296 297545412 189905963 17882617 536696350 145795682 337890439 285948848 803509014 575937191 328663635 740231525 580509213 344893001 923305008 988139777 571395938 653493047 840165682 982619532 143500875 692215978 224533684 39288169 841573828 714307078 448321390 18584867 750965660 382684593 654969852 257614345 16288574 673118057 788804733 989494808 401783607 193743070 861803056 356744318 854535688 966968056 602871802 938543110 434544825 573928706 916200188 135627292 373744333 971291969 359623860 989777633 111325831 775971685 707797488 172783363 59245739 432689225 514702607 668561277 223279786 507825635 502452114 130565312 563232177 664668315 463306655 986114586 804255226 840846011 249897496 744710116 650918702 793927599 197551382 748242457 762949130 253126492 803065668 748728299 906842869 293098486 583037571 389556356 467989388 688970595 519048402 568739888 404930838 863231811 678128124 619903655 198852128 463985561 57338719 460227867 313285725 662481186 400985951 201455208 967213404 588486143 121955558 33478170 390960771 255007065 776835747 757818665 659267689 523648818 801942717 686938664 796175376 133128026 490806843 212589774 349456594 365299802 860214406 397156845 634650986 361709990 435175156 783203919 770680500 848242551 304328865 102868620 72181524 594482282 253571809 910012887 248788972 547787193 593464990 546993418 61121999 981217762 591927216 607928806 483519885 140913115 823451763 883292523 368503536 321962506 462391714 206743618 309753260 791655470 503958555 797667076 275804518 149415619 850669886 134945883 369279495 368721642 55411588 12470513 872590817 773801910 694806715 37866652 509682944 770557855 838045412 371535180 549126487 418941049 309677144 495935286 688463985 887218240 832061985 945154832 271009321 420272342 778523692 860760657 558457612 644324585 51542634 442270026 962947832 288120844 701170577 899428277 171092202 788309497 743679495 644815668 108708274 644621886 221887595 177778233 343879118 110422983 107253649 716238111 61286444 775333391 837863442 587600052 686807851 391100525 724796351 994248025 580734306 407837954 906809997 331472912 783875196 966980132 840927668 571016786 352133662 325015053 11552016 285272279 624502144 525208297 997971391 326272945 292701806 566134661 231796028 470586794 378821787 943033482 982253396 922791507 265440481 645356090 678736489 463983055 328685903 150036005 755895791 108235451 502085913 878762856 101166911 687088008 161144152 228453217 75576144 936820259 674560143 223716530 334552058 871675076 767502619 169901163 585765485 680815674 176488467 575036001 384563455 665001524 980861329 759957463 373967272 342269601 332019356 567481148 557392611 447439608 916358684 18578063 363608679 990859940 910159333 689582424 772529143 875581709 430964617 884984027 410231666 46135786 314067509 421219338 180326246 160697495 14837535 17679525 705070476 839300995 840910462 88486509 728388969 744468228 716624213 93594682 412014049 680588175 565076645 682285019 533720866 598602776 756642447 582254918 523146377 92062254 539247011 728497450 458532066 379307518 758396430 155756228 124493980 476980075 160300776 941602906 11229111 858007659 111012734 880691435 473130100 478232763 562355015 755097526 456719149 198537820 499539375 905736024 871936352 378815030 100249055 648973393 58114862 548401215 994187497 912869757 674331585 3986138 398567422 688926361 601868746 406695150 678162858 378111206 57100358 983377496 22682031 556859920 306622747 181973371 363653723 817001981 600392845 404920415 769191386 835823426 661936741 799984306 523495323 947291348 46366663 481218158 633336324 86036169 592307283 9167984 341448618 135326418 204060273 318763836 695755716 77432944 722997987 312634228 401177919 666212399 768718428 321076073 224225871 463289866 865087431 421876730 94598040 477487678 582729363 711556056 651345384 183240958 55196196 12399103 691729111 721849763 864658509 85164604 764208108 850840135 149955328 400477471 283935152 462077247 100035877 225368201 446735575 16618232 832570372 982598502 976148373 763838932 135419534 849312376 827338049 549357201 559820168 478158606 925120502 961687444 996328028 672928843 537637089 361206099 475710956 625689472 942160698 397926445 537528124 736088930 812583349 842868267 254141277 404384356 158235879 953741699 807919570 543303293 288688218 210763153 108520026 540860152 916228811 762601256 319911642 101355032 21521378 36989854 480878243 19146913 455298052 807425750 279396074 787155868 486978204 319708616 939973337 936522289 125529350 545212192 459149001 667297540 736462685 973215537 443320169 482657891 449235048 254139945 891333098 858694605 541147365 47444638 583312694 254788763 994389490 805087117 192542314 837298649 240333895 556278406 484767733 524309650 908784847 854117675 467746079 923453122 636432776 221405843 370913508 129097677 642492072 513643765 226942798 941155935 523149906 320153282 988688514 781949419 635628062 849632505 66295450 885378695 211798344 669572473 590224036 419719081 719388772 57248439 632394990 612829851 630702754 79616381 845187273 713262338 269529642 733129423 245562204 648343562 872904693 389237810 867221172 115682428 74424791 162199379 390802723 414308836 586248380 673743446 998937269 7344845 415134905 930365845 175382929 346945737 22523806 808162081 915365795 15254284 956354556 497102233 270886177 677296085 968578602 663096689 659072711 335884246 632892804 696195064 381854988 343807704 687273692 571317419 630901112 476283117 315084855 122996333 915845353 270579239 122815279 149232665 610272403 97562195 486515228 359719654 896565023 521151832 987739241 933256745 843911297 945531962 140582255 307191914 594081433 972012726 229201682 334225957 723681128 986298216 349273388 207733505 503846952 347729368 121410751 987931038 817667173 565717357 147484927 658109845 507345773 131934010 298983286 813633452 25787015 413455521 904831199 131371039 415100322 29827103 764787190 484080678 725584021 197813621 277701062 615839155 947673277 686418156 594816279 914557696 157213120 278245007 15292254 898380137 368920614 327854057 246659937 363372776 689938488 124729842 626731814 175595305 815749958 953539184 76704628 527432865 387094663 668780583 249798467 830560668 941511027 63481563 120445116 99602405 340333181 582824249 297429281 888367016 523465904 404491966 885182310 653582088 351119980 675156938 142408906 720604965 775092266 962901332 159867194 224551976 853703813 510325421 623359836 504429380 103205934 350660109 268305793 881834141 621627785 60983267 527514323 785644067 821389626 552685472 883175194 661711562 269706119 521173226 221322862 86917377 375461255 115541122 228260990 938896828 405646369 327975692 816327846 132678077 433609258 999365694 871387787 262854675 348447210 374108188 867295330 416703731 363155577 507884289 780276146 820492656 602152355 893097057 760316358 221244918 284240406 165319698 475325250 219409412 446857485 878759476 836994635 224641735 730654001 861937180 454916741 440646951 481792084 128801238 364478365 198032170 317885125 428401169 188706618 740154835 250888444 861882958 420000456 180982688 799067539 933331774 431807626 649087273 453958648 626338766 895206680 885252911 399457040 103197968 367175017 426530780 72679991 917979296 736733376 824406376 102436773 22351254 419722080 24839425 915480664 212546960 437112732 201060598 984748720 933333719 246148117 400231438 374186441 425223498 258972217 768340168 749373759 524240665 464434937 251256943 326198386 42831687 836645909 109684710 163175318 850648081 497911555 237032369 574108477 111524002 803037010 623224679 78002571 643232014 847237476 666684328 594468158 567131068 992353696 247358373 689874031 33224157 483828443 867852552 554455153 322492836 422824105 33695318 538892827 506776157 334522185 354034675 425927640 768274961 257492028 789350331 613591724 845594050 356134159 947297997 873885597 838240618 392329526 379883878 746732172 489972277 628887540 401513784 533969582 779687963 485833040 13229738 719223588 435769866 779385992 579938351 289495426 207787514 349293354 345985123 855709716 432230807 42545951 253273169 583643360 241357230 264570460 593249235 388889490 192367643 378600389 668104919 430621343 290511881 292551444 90619491 726385450 629281804 598041806 5809027 546600450 82207878 462114592 520963096 230431191 768802141 829110877 198598334 524245303 11284389 730809477 399665838 985171276 209154997 365972071 518360402 205140862 781225808 290420042 551699708 319515830 545382452 396389552 973290608 419607581 275828871 438077019 630049931 476323785 787299617 999415745 271296483 761721648 40034494 464627865 490705173 901657132 382783690 685502063 215061065 641096700 676716682 372773828 842464436 713242430 873023907 554394155 915996379 613819045 526853755 372565853 337832359 129251755 309756167 43420152 294649390 986846830 453381686 254937073 31488727 580705989 374446275 565440059 282743471 449577813 492129691 478803506 320538060 811913591 151541524 488962185 821208385 934587807 796765095 527841687 818647441 835517283 859812655 423001966 647434471 590455834 20066422 873727523 585879278 726554036 864573847 672898862 957983008 385352240 422936913 307093967 645636645 178638741 855759200 482406996 88687798 68969433 522741087 477874599 579973133 974779189 200259286 170957471 807406334 511592542 310565696 715684295 26852662 674611634 268485823 853304114 716706921 444848365 182020010 327955712 496465690 543244583 589089877 876635504 430264496 921017564 141219714 211921294 931092961 974974773 646061299 114551988 202727479 561383371 128114607 777059269 131257812 12546340 350920880 388049811 321640991 361882589 621030066 940110403 516304035 383697250 305438392 809904891 577667991 599746417 214429807 232297761 238659421 776316195 238207534 731746509 313155803 502185562 323009225 617316874 873018845 607766066 856962146 832894599 681955130 422868672 692185514 413386254 345238871 971320163 724651938 909729026 620541715 287267827 177272319 108097712 757697003 755906369 512893785 809771294 912084865 951981279 815359840 726714068 858994464 422213541 327716269 751917033 453881566 808328432 603717202 840343856 982379925 656419711 333423076 14211148 204403237 420804878 283348201 296933317 385355158 991371441 284386837 488163688 981382620 432863394 734855665 421975899 994002726 179330114 689300324 787942709 926742622 406314041 731132941 540511398 598499687 985390337 790652483 380211172 619855806 547515246 937759766 852061824 147083144 858677524 237214028 800788882 316898675 173653292 214524366 278287225 212081578 958686931 483451817 274095369 124788096 591161846 553491486 177611251 670001829 848023815 340762150 682794765 798759441 822899931 391715301 500482755 110380300 95246256 996248547 75407013 575752974 27186624 624310214 477114966 162917001 514595830 641169673 229064493 237430525 30281172 791589906 569562118 500789832 903506224 636500092 658125455 893752805 639040925 114273082 916722664 470922260 685130602 115089380 440915965 728996335 168284173 494390320 580948334 441001893 139342076 91458993 508875755 100069161 597808580 767259477 201931407 397365393 148770578 628011075 618890459 180630066 337686734 206171725 646485987 4051239 570857911 107768422 227562649 660500851 900823105 612846429 142448711 199690464 224587175 22131628 738385904 240490289 126601281 276642272 162846168 380795915 703296033 62449594 612220182 739107727 708294504 904873487 702629154 285973162 844033245 629263603 983007159 990631978 165808714 843760295 577840171 985074984 64598850 869409082 567307809 666579302 996642835 228168853 829403665 60578189 186688298 689852648 737599253 437831235 991570536 934874223 503038605 612177950 659923695 190425783 868347071 928491636 423742360 229619329 218889120 675353883 508426409 300665210 388817776 446298383 573157808 288400985 783388871 593421946 489495740 800324613 854598708 609630133 345178663 587606887 418579705 526192643 486049236 868052550 946691810 696800014 42455119 469994913 153411258 902126282 79613028 76858436 546874881 329316497 696982035 873430822 891135574 771532230 591188980 789438621 748245425 975053216 832809563 867529695 260430938 124552624 699668617 189137422 618577610 553266076 421533838 512316697 182760556 51106346 766417535 218319887 787829708 404775551 201584630 637821713 173806873 106375950 706640729 266429798 291627532 947010384 411315412 310664821 942336405 765605685 897234428 622903716 274970372 66365049 407186652 999792263 738477845 240966699 16634984 801686268 73107488 509561071 809353462 265540391 890254743 93668113 26456519 188917034 741643996 206218208 131612429 820349162 702796014 291467556 505278504 225503619 542746761 58382694 632874645 291801494 399705439 310626340 641777408 185026445 194331762 966490568 176443240 728955424 683618752 412287171 875156743 121581412 584782949 886104724 203029010 61003117 457119623 1764608 875563029 144695536 90667022 34885790 894478093 857143627 368817780 155711101 637772829 80655949 627555158 564593173 521667435 390309668 257093367 230506599 525766353 876616080 655714446 611219904 233961832 476343340 643620688 224586480 32145582 709497554 948992183 867806182 891568881 472086289 64014106 138787288 764491818 785620585 973526257 65327685 651673215 285941145 537665642 841130491 55115002 176542957 505173567 253043265 679174286 424562848 234583176 42028119 165603239 579462252 355363915 755664329 531194143 364628222 194876723 786164376 846556729 924145489 995379319 991918812 907789662 334985106 494506495 72383471 611096032 26295626 760595060 759441401 893547151 49853405 250729996 63732162 589686665 704729156 360565735 184770467 617240104 852717068 557440117 482155971 45225581 287280544 146874376 729026165 658536667 658595317 485681450 492462484 782554139 528734344 79622364 740503548 186135921 665266299 737932998 386300199 96762101 108403329 449084187 27277035 694060609 169272721 277459052 385848911 316049434 691713006 989478370 307713750 180871452 325256913 304029717 191994406 98009011 323867826 78611362 104576928 418916777 579246088 514281026 42312449 912582339 707649043 662248979 824308236 30342626 942675587 449603929 509490411 416253309 967473249 495121056 346433037 587762008 243825591 982144382 687938109 421160961 7188785 848689103 377978992 136830173 320732364 481502506 290109058 600122129 402366302 391546696 540807935 113615901 336484989 199997483 287931087 876457742 62051501 167360554 678561049 374010215 93180403 308657904 963471164 735970719 624910187 697728939 752418101 770718176 88559049 714279763 577463046 778587071 943262912 947870623 968806149 172387890 403502748 148643307 860607380 853098037 674371736 942372673 441844462 488222535 262274887 405848757 55336734 271594690 11064074 924496914 778349570 512914771 364747764 878916320 875158872 939679743 785773918 308830717 421887735 468898287 798431799 877268901 707942137 80300649 250893432 634052605 903342378 883241122 658834971 643996077 192871750 796323408 208174465 859896786 932183385 500823679 82298507 496941218 580838879 234645642 645658429 735387104 346392554 98402913 95463522 555423885 355648252 27042917 567121896 123559662 230071671 832782808 672959469 327712761 336491462 836974379 230546512 566480625 803277288 137873921 100919881 487754436 260166124 983251027 773862537 104440114 401252735 654599698 429067116 949250380 327653479 185173646 7189948 705499477 688051591 542182316 89276397 442648979 396512844 891781201 592550399 873593225 970706100 918533357 437799925 540593751 945942179 513441909 53735483 947095261 870314862 496653918 593567986 838062164 879195845 619266113 749037867 671433289 429541862 982623084 136365861 862571430 143436146 28117384 462013417 935874002 841732359 945781399 967180573 156717154 983518423 93883135 960850970 31483660 3726484 712030902 245892617 44050783 852315743 694511195 648252629 943531673 482239179 452892690 272611627 36118729 424331888 980821942 509864403 641977593 772388381 31073120 330108802 32186656 793244267 339657498 447919389 850654260 972192273 733274858 819025735 712452155 651654344 443976563 888446691 861567313 262544845 749550631 152957283 870898512 125932877 616939717 654276989 356178229 924645099 416732461 63807308 331718688 991390469 167967013 753703319 574806754 521560387 80832045 566940708 724603205 703413598 683271342 975113165 714648445 441586383 68093086 930847873 241336843 803932543 552875311 908966293 577926867 843846357 413786447 112275437 103703062 250316032 601412900 913057537 773612904 143409621 795553388 160269402 616848576 49260408 254109658 11420883 21588646 579090211 245241904 250317099 471054767 796537666 107155530 223086917 510910338 133107412 767454733 482696955 424996748 425432080 192916347 308170143 810677124 983524484 71315100 380764184 315211238 722420758 542223256 742177265 674435882 556448127 76526630 285112142 892327701 672092789 513465049 718316891 179112710 562869203 542307125 145843854 824462988 507985673 641883333 755632897 13616807 911300931 819859865 406877529 559572875 240287398 566428326 508951784 634739023 615560090 398781169 671432792 422463966 276725978 589558142 315966858 396883665 815567909 536143564 883479525 219185161 609240594 677815963 436920072 70649402 57602203 560468972 198508123 256705800 91738754 535069356 687841884 650856308 375256084 484643162 194286251 84320203 570124842 680672619 39780963 110154215 323467714 280520285 48364574 141253297 515482263 710942326 722494771 569621940 938598014 822777072 840815122 89672201 836452409 800031550 835965917 428079428 519354882 121219124 497938319 306536136 806755525 861945 794959159 398818002 572281060 664945944 466687641 298085060 407716480 559691109 608349664 578649396 501557698 912828259 827925263 267822254 990112152 849598503 457300542 488666181 174721129 525437446 501535234 537884469 406813921 421383437 613337515 562144128 944426163 321330112 182100413 949838468 659413776 280715857 301512389 935542178 12122776 844128424 947540224 873079109 182954589 379515353 475434242 457786222 851495482 546136719 366646241 828550330 297582040 482401224 320172324 718909452 609322827 163105739 393394933 454353261 585846467 982857057 994157519 433358836 733173280 579319005 516763851 995418730 650847987 213831833 912001948 81685831 402950083 75019346 880268495 90005745 223401620 837539968 495526933 686532209 973117323 299272372 169150906 375140385 647255268 68678384 739044167 102710084 826658865 229454186 98400125 86813857 327768437 531269946 358342432 971941672 789819956 929035268 609023740 756367880 339001355 320359326 206472860 829924458 935934818 459252981 242280737 365481618 297054851 267519290 56919957 425994685 682093632 236713945 473071759 757356137 992100316 491356607 793468780 45592595 595811756 673535690 261326882 807974057 436308326 464410653 155260589 999417630 187668172 544314652 65016012 616780384 375973553 962987551 96235206 971496627 491048695 866711398 351986548 89810959 67256368 959128751 204374916 533477371 898313931 807698182 551260996 576654845 708575893 759978454 186911630 405497932 597081488 337476354 256769690 543886983 560083582 644031230 215575364 607233666 459543303 557616812 487517393 774489192 544802279 909810471 100596218 986231691 969630906 364607896 447374249 669298356 891888659 946176247 987672155 649591225 873995131 545306193 537179856 11732096 519282362 84521118 35599995 428495869 341498625 974715465 525976182 314724667 486532348 132528415 449659306 926215395 873461437 84309844 153196081 410537848 461388142 981394432 161591842 203919523 958796423 510741004 756930128 571963655 109962934 904029442 422120535 903086029 526349449 746101936 614036970 319742418 868143412 706320521 990713036 93139254 648459637 241735361 716902286 988673986 559269924 854633212 59228797 140041722 619335880 753684607 799788708 692196111 887797155 222707781 282635951 446599480 221200505 331656511 613052575 725056601 991878263 611677052 818965267 643982006 26650776 547554030 544326453 892841165 305344810 460481986 778441249 789656162 350640089 495633942 739146643 345359716 831139647 656958853 41911352 181268714 989352502 756760586 120928462 702351803 147374502 970093003 684035223 497073049 101382921 996711101 333913848 620281174 329182103 657648556 610577635 660527043 869160657 757458149 978685733 368354346 277245868 876797068 703285467 191973488 34968406 453686304 422428077 373769962 496902305 801401811 112807022 826120925 119064987 5690505 468117927 109474406 932629420 865257464 218779113 181215927 996163264 408002910 371046706 944734501 200033676 476159396 457329225 880041027 236827561 666289677 201617878 739746981 526919561 661911980 760940430 943872213 691985970 870015492 736003774 581284148 83071354 158709880 404327788 976587045 381234038 224179337 49473301 267971870 363399565 710002763 664560582 157838606 735713312 614289708 207736648 676556546 100462867 970266602 712450425 457474408 594442030 892338593 201926315 582390561 127467373 561972059 479893437 761461139 146181410 874367776 827765663 575613814 788386778 342082510 885646577 625815377 271480907 658164550 301791468 494786569 961739187 864302618 614705510 87445785 999849987 688685237 627796725 601497222 685449238 861201353 378516607 646873198 739244334 570738795 311559376 474624797 928861355 902328278 907864583 220738707 982686324 656104736 268246861 284787876 780372023 527174531 871075061 308994321 136127749 672865661 895286224 522347288 74050268 423086616 355638708 594324286 936212345 737925999 349412472 622270837 468931222 379525631 767739882 740480058 421125920 934621294 905629535 98171686 745094673 801705302 664670303 879416523 519694291 900184957 650012457 325125817 103395745 884010468 876123094 25283700 324902624 994374863 283608605 317129899 450491893 113767723 787414471 124884732 956871796 37359883 907720780 556392925 679857313 654236071 572910021 845441358 694056581 232954854 959136395 608013908 391005487 900199786 500768316 703788246 991971943 178454541 288422670 680404431 693217440 364797493 681870100 433098623 866049022 661623050 727587998 584763167 604948888 25384237 281484083 712665612 326783576 211253351 789790023 878935996 772272875 780680296 312309072 389792337 873493897 963867396 801029441 729149587 308741301 262195729 698775745 381339562 940838878 836919299 644572627 736621429 774840382 224423712 443286696 335265977 531849251 508082073 924428943 729494127 952279426 824461080 749817851 79685047 570180962 854290723 844899205 969258719 166575297 41980975 128169200 984907001 43599711 483361280 414528746 193785249 545748683 998283224 715105117 101616281 23105665 321114891 291295787 102756446 215299349 416173921 413140786 149614845 817636082 902117787 551646823 457279878 79465474 774249976 230570372 744282882 179378271 462391762 4046408 868101382 493280790 684907394 622613430 281680164 720629934 237139526 578665833 464150843 760343571 229806835 180589970 576799362 180118157 727499440 191126655 306235711 405187496 325189563 626288204 840786085 968535117 232940717 227205253 521524659 587381911 255071630 887289908 109694976 818654147 392536304 959422895 932536032 267062974 773134221 504481524 334945332 480278764 642244587 8112046 732522626 225620509 249222456 30283655 838546994 139164030 522914904 303886732 780735913 508959317 574388676 436511005 396474784 85512360 562588084 822315160 43682521 171665616 740901522 47926015 648268211 296366531 868915660 917746044 153184829 689356442 815692402 693822771 703821520 230995393 921943018 252453264 687799231 376938557 26869558 952987601 7577042 136884681 972161151 419189431 396350263 437061285 672671439 267552590 460184409 176572385 282448138 912110320 30141958 236806 365802438 150224011 605551909 691184769 178366489 890458970 896548684 201121043 689869802 97193446 761508916 694407692 93834476 914015684 770036532 929122700 8817855 267872800 460742160 819350686 468863531 308012588 440141666 47516512 640880770 116232173 972449779 301700073 308759672 357358137 673753950 113486981 591852205 45513021 986321647 922145396 945987908 532802087 975778179 500433950 287984323 311778229 586521245 680214782 248852048 330855565 262961038 276247597 79081226 94005612 168943949 467695875 132510177 708740886 356668081 578281499 143188908 670456647 968768021 322771492 852865736 266071766 556428768 903094916 647927639 23370668 360844 119476351 137920136 997880417 233387620 19644245 391693440 331223879 198271338 900237284 407338948 988163911 530436330 311441459 777274800 791616689 868012048 289349352 175758790 178283898 160036365 690969202 635416072 680487980 994651744 397042536 880724991 26566302 591006539 141528955 743706232 582424528 626079064 829148662 589165956 585848375 738123670 69708344 52424473 514012304 122554896 958111299 85192534 386398456 201928902 693243276 638749455 478301927 479996766 866882763 370962107 176837334 776417795 687381320 354476644 996494607 673883440 100520441 944511033 728233210 866813294 856457732 212696855 910913221 728160038 205436746 498809195 471695084 893413236 406498290 161116927 16782043 715127498 590893631 768162223 664069629 694709830 815560438 922787330 589822126 487926625 275760676 784924014 338452908 553789639 259528982 723204142 973676398 631146057 66519335 222371570 889968489 47717773 800245072 22733746 891179901 60381546 914079584 814140786 837758098 652164539 901592682 988324752 134786331 495900658 921312900 972029187 792235063 277478449 758447083 160629915 793164893 644392601 386912708 100185982 671429604 161597929 310683309 682321645 466427671 439224264 702480556 649588070 835273142 657771842 405282990 9361309 275267311 307188225 881510355 428460239 425695345 526769190 551687120 795421349 603853756 479565958 419173506 241951577 61313524 644610380 761202819 920116100 303548893 41340909 994932176 246524512 464293573 801258587 661353441 336377098 989113579 297441350 162983265 205610018 744914360 489417111 551912533 944135959 65606890 627621516 904607079 881423466 937160475 377346351 478739557 68276233 580874029 665371336 488167291 58123306 241707726 107848152 995632295 241980671 671181366 344794203 129163339 642412276 860977052 818052866 558324446 562168709 486343876 661096900 552411340 39886724 188358299 890328010 783554493 849156661 213320914 3621630 590157789 351172986 301697645 578160141 872371193 317862795 190229130 336198587 922141791 32876336 101950441 276828959 140435024 506027801 890342196 5913225 62733865 551883366 853018540 903804441 355646566 310886277 236103216 929570464 595160680 753694103 625386473 567109830 852306581 294579146 755989481 210829237 291759529 763356036 350585704 922306845 506378091 874336293 279506159 954500999 763194068 794137647 130046834 555018546 450751832 966822090 937039329 25233736 346173112 949792878 173569222 577107774 172517695 624387390 89129715 856886801 196470404 717574602 535722620 424493961 910303829 37372226 418310690 643018832 488004745 194714740 618375460 429435486 44794589 303365786 642900944 908488228 981037088 954163689 196717344 224004608 256702540 71893038 482859889 528112243 250899379 340861939 206061417 385157134 927197378 739092717 51294620 690943984 337112661 211538092 264498903 968630938 853113712 924945535 201154344 142488345 905439529 709560852 472604221 877977039 372759717 656091967 685053960 128439511 383491209 759270462 454625662 933048007 218094821 867799222 79400486 371299506 719927293 57551361 194749040 302150146 950976020 954664173 955496260 777401038 293713249 997829361 732963611 951821828 300074203 107837382 887190658 399695823 802450568 30907413 376394331 218336087 22055748 700419765 897662402 963689879 405762445 633981667 704545263 338516604 421028875 111969788 182951335 66774690 985846201 160559659 476178371 196984393 439453915 603281671 590587366 3987471 743910202 227403645 427662355 654634113 757538905 580169913 634090580 123003552 59954689 392174099 356471115 455180497 490848121 57291727 524209219 391885791 399219460 625465154 105351503 746614287 798472137 385649897 399881884 858163044 384452920 207792758 529785274 278827075 963502741 555612592 144028708 851254869 50584558 197711917 921196243 77822774 62452981 369680900 721158272 599489107 546784141 486253239 186129927 535704422 567397769 988925826 432340412 769533968 760341251 686909106 252895081 143699620 208734409 846568154 394487046 360198707 766262132 346465889 180176864 707494700 322072120 893751262 709708917 746746299 463401418 932539813 914618084 949115449 826208728 550692825 510714780 655499918 215857408 550387138 625025175 947141740 317050165 284947756 185326067 4754445 571985803 800382018 618013673 371485293 896971001 904358972 828849023 981500265 405072114 292996860 248794827 164936669 701351726 611629116 715777813 933063951 515518389 184477440 990869906 965272391 766651420 386273665 232056805 384364929 785518483 411738848 563302269 44038976 42938549 544567931 267129390 344478742 568958695 89901345 387769201 720637756 981936788 462538724 426061005 410164298 287134912 230315548 236190613 251942102 926296044 22095142 602808837 889917662 291205844 901235580 99957168 878171116 535697838 499676517 852683466 600163926 282807636 940720558 313079309 128074896 452964198 501568220 913120856 415676557 875496733 892616303 499386308 535333426 595086799 273356180 979470624 77677006 197350745 55587377 961558240 995586468 519964329 163940801 229198039 220076277 133937294 396487134 213482142 528229628 604745195 439813344 346835890 97467031 265663917 225186113 320955400 911277359 775019036 323273068 884559493 45013498 457531288 455648905 700753164 448867165 838027607 503536314 673725233 734317779 984749624 994975938 181085962 556222305 6397549 35275729 12165607 733703606 666552686 653579352 850266433 379651834 44352327 728488802 122308655 79824753 451711974 291377174 881046135 91950314 214506914 580266717 100106783 446340762 333409243 566017769 933982044 22967969 248723438 833645753 949506579 287032855 94415834 174219238 823859355 525548662 979247420 969704015 360797178 32853479 18780627 516679550 598833699 154126288 994589859 227938982 470900062 56200414 879448286 32426215 351743804 801643384 907393863 990787836 457103776 917739611 198257405 854197449 51007232 579551542 389056506 532710500 673601828 575380442 251087924 237120233 151068131 482325782 159059031 678525573 426299997 674605889 817434271 906154561 685492237 152224025 304932074 505372333 139276043 489535193 865902414 206413051 428220516 947476833 319317501 80870582 473362797 995968170 90204641 81031132 904126141 745462324 209918974 686693079 566648356 634308136 190105325 936269524 890573162 509132350 445692157 849597344 687319937 779746373 866422442 961327777 967379023 794306182 856403663 945315460 687315220 653018782 206614375 679518445 266998817 834327711 627070470 565845821 798191995 484587376 788204126 635171865 933254595 826602433 252970769 856451312 675622351 712570942 809413166 193254345 431746024 420660500 64996098 65877772 355368195 821382966 668301202 538737088 537756664 933072337 96268075 792731429 858463046 210636724 320913833 630035587 634519859 837832348 678567197 596030755 254797529 613363094 56338787 57917190 619776337 108532116 99888185 841302583 398510414 435520403 111803224 59415741 890010360 101180205 573330729 617522333 876746748 907690867 933747219 272829424 804565713 692238326 634153599 378896291 805695950 528656269 628339846 638445270 925789591 804829984 452146145 310134562 660438001 439426913 97379759 807673061 178244794 137582668 377529429 773221457 337365355 361645309 447524674 753032441 160727763 143480248 978129562 717158437 275417850 213536100 103742330 341633935 704595162 449150430 345219893 245139842 557744355 5968365 385938716 294752063 602814975 619912105 820486737 407194190 293759298 296194915 871545004 370931105 470780763 663313067 889276833 46025343 401061552 620376438 889392443 382464282 948817586 450717696 974084025 82113920 833887282 674164851 834587604 708893684 549599687 444272607 605463932 123695285 805755776 814470153 966713678 917424757 697943566 153274528 868425437 484361345 909828573 833970277 781328243 82641358 247498974 913172826 332931720 329840931 724146052 874263830 247971240 880140188 959330428 844835933 895636773 392311402 141074227 952679992 247684263 829022639 310614643 723199980 482573129 140069069 364820518 317877659 69462503 453802235 622157906 632060101 722380708 532394820 732806640 971940829 835215629 131628769 457503111 774021945 897409956 717729757 940782845 798753667 516523346 964176303 418609568 493449185 216789866 808600593 907278298 167632409 416826793 239906060 632736604 860407826 573414024 686287222 727942616 127623761 451223936 421764848 92336796 446922373 897127800 515030718 331626740 47294030 439056352 308723785 789933551 222616630 277982995 630668439 58519767 14959003 503952893 415011104 440352899 731266918 30069372 187280413 898167847 333069533 110315800 680724659 802002604 912105745 669014271 409442806 642877728 514973871 845715837 991515369 930376678 332305407 76376115 173034412 488506917 930622646 128393155 283611557 504890484 300996480 155879380 498003812 958413262 301966954 886036447 943050858 906119898 244318483 215627278 379926153 227866346 659478885 116090592 183550556 952369389 570157923 640701968 211397274 87525873 3985741 787512107 39376328 585581388 414223988 681002402 625862730 329831325 375181523 910989552 178890450 502244800 8190151 683138663 890437213 794141162 509892665 699244699 680083774 783383328 634904971 363886600 609286470 566740155 36151573 101852330 401947487 766133772 344519783 695413824 416613630 470984482 617601450 339284581 381993753 136847451 72562585 837515726 510835431 423180774 558620382 192072416 777258117 87555064 544081517 293740922 237294951 554436568 277235400 382910792 39151536 706243159 270905875 128152035 882043654 373154349 856143013 469457568 154800893 590093144 89787438 80863881 98049997 837874739 830020035 512888794 434734040 582465303 197336529 368690521 338642654 158445775 265313349 341120590 903157419 822529869 179018180 229869478 874286642 619515479 377220902 1822053 178617589 267811019 390980721 926871968 616975038 74383333 681394927 914033947 908436243 860869934 694669362 246104552 521204145 892582869 353105461 547691479 761033303 670945175 240788851 675806079 255395741 685729333 936263012 215670425 81076555 709738822 119712214 895797015 522264321 799641155 353617946 341430978 861869189 853943322 881063412 716012135 813887066 152239751 722683989 707942423 351550957 483984243 324745835 130595550 3579788 867956923 37675692 555401959 517704399 433481566 372018790 393904571 774078897 618927982 879571994 848351512 80040552 150366334 279135135 146757256 106049092 817171469 530119058 19270650 64195377 70289799 285807272 174416534 979768085 7500374 578280782 11542729 211241979 843209072 113683384 746895973 107323529 371493606 238414441 942446077 792260300 58786962 742555381 973176312 157875893 833923775 214478727 463732795 543013056 687124433 947343645 15686323 755457948 70636247 511985031 56719083 948808099 829298398 832268832 260682301 453086413 546321488 235701243 477155421 735145493 718134610 153442923 918546676 550750370 447355004 969690231 851038646 951710181 229999980 128274701 960636351 128965005 209276745 331041181 284260048 211114527 403052973 189480866 667969281 669449294 320840427 698964188 643263971 150285607 285254885 952516092 690194397 171724047 552349821 958669893 667264079 777551693 27399700 708324313 60782144 321382723 610338156 169216679 448264450 64285358 389546606 694071457 746648715 298728531 95849225 831451771 994900675 919378001 478568151 496685042 477237815 379153525 451404132 58453030 390997453 528109333 651893568 549061050 973727752 390386567 129602735 221952771 396393718 326126580 998563751 824551258 143043430 722368081 955508331 487872411 883561610 310317917 801229196 337346355 666269289 962440137 181930152 386887196 686548369 807383481 23484143 369736054 125429786 101217353 807593204 639808956 242627457 155992185 736430436 595013108 980480005 429270461 704333408 745511553 230924868 55371682 278215854 89706744 541144120 711626796 47696246 202701912 605682465 652876992 176223240 422164032 917048118 504494363 854559480 425105087 151681413 192968551 911247276 424217275 727919178 289580402 797331850 451523899 232542844 763247350 403954048 66511993 820447610 360569611 965872758 527868589 993131539 745671601 906605064 326402043 401843774 159278904 35806448 419798524 958109215 788392246 866983949 564698835 140480545 209490130 206764958 824184387 768189559 80370884 721572204 305025646 609580166 956705200 615211765 509065174 752429568 481585448 469753801 787880457 298164426 993112221 773996553 844406418 529089446 667613404 761701789 58699667 413632461 134279224 144996019 294190385 839069629 867552049 449973177 447433608 531800083 554359059 999253795 354562790 477871010 487071755 527791949 183742328 189958263 554540102 807774971 995036424 165445369 375787905 533613924 995937921 890243235 934242673 922126595 442407772 513582035 443992398 318425999 148112913 319320313 278362902 237177016 929834511 651127110 961163167 957555366 804026325 443425741 384431717 224827356 119453993 273241347 739353905 28783353 705636528 703613131 298841974 997407011 460274665 366396407 473987030 240477649 47408085 495265882 491660880 703215886 573532383 973992272 850850997 431291 142826563 67682168 191652308 666671037 573334649 41118563 457837261 203672565 606123582 329443944 482316433 898695930 79709375 790977033 476963795 531995989 42451444 880230887 702623696 879157058 422148770 790976770 726256505 281623166 117272497 349530486 898172990 32930704 354158492 249499546 6796974 770290880 92791090 579446205 612282170 29064811 483810972 884489683 834573456 990379061 182980137 537756256 278629023 616293764 115927462 330684211 708974751 567405979 272963139 32542400 559275538 175863149 716191186 484191895 428050452 571236454 410074822 708662580 578949981 274690828 726207404 180315361 440733504 710643436 989557236 90801120 656927254 872110934 666694653 862030244 251013044 19043368 961824528 428057452 762974871 276495962 571104031 566499443 824277823 70011389 259660252 968504291 883784436 454392423 497026066 869676430 68280863 668593928 839863368 188648984 139986545 81949836 695020436 313286279 941073756 117165610 175027254 128883205 830259183 685926931 116241037 757331337 347434170 578750608 797345484 519465938 606217814 10241184 848737626 82523213 471141930 55521350 331586386 717806315 794776568 738042860 72916088 190280948 365555401 606271463 756095413 272287603 537587591 564441597 117590142 423973566 673176797 378285781 444013871 247219267 645893008 181918887 425848657 583392020 350191241 287759720 217465331 621176225 671489049 271322351 409382025 940323543 632632000 796166899 197377936 411941715 497802018 183238864 806482137 624548021 992590125 102199397 738977076 557355754 564152918 692007314 621203214 72723344 249872866 887876675 65855368 644427280 283475585 630310442 986592449 566256649 808649675 297815046 909551144 100024773 856390875 286652216 437271871 720336024 450201632 687618381 197655233 854556322 770218577 719325790 431902197 579214085 253671654 571873404 789180910 71557736 42556269 765052245 722279698 88177669 314084051 608368178 715920660 343793534 675789142 418230035 357811908 988031507 657896183 306482260 974989948 68698725 931014857 37778290 305331932 192102453 489970113 763570199 342676174 928198085 649431674 982448340 603130925 24491248 867365811 972772549 402623618 596201312 364566251 53732734 764523473 456597040 815826836 43501894 434511709 49376378 216196853 19060416 237506806 216909955 234562942 87312842 981168661 629300920 884575672 374654694 474545671 323319325 248879373 236556888 273476654 942752018 398237142 157513328 74827232 737309540 93402645 567009143 669837820 988828914 119541478 984222664 448271783 349404689 654959033 391846956 347599408 980875366 545633667 789001819 49787842 593792481 41342450 433325747 162606103 323649928 451082148 920624649 278033734 582552160 449799617 253545724 747501814 109329103 652325702 554871652 31141644 722464272 370456027 8367285 510192462 15693837 224404390 178208431 758379726 355534930 702835146 48550977 504762675 448098224 136770574 885081266 996976839 695293264 99058016 175245471 622108377 167567279 155915592 436400451 845825946 560845606 816084049 797159397 153787846 476078139 428000284 518666834 383280382 445935758 645900676 199396781 203988258 624090898 442978936 572013613 196172514 640855661 773560096 872704320 785851627 221263225 949914931 701814048 32216706 761436710 837178449 882229855 223713873 317344200 194085379 825984055 78960978 564628380 82472969 689606572 115658602 216469177 645174476 489977384 440106590 879929229 862888325 442562694 172627504 639063570 783174391 342360812 243705734 493794697 302363645 521508635 555331520 657553190 219934484 349853225 928414971 291225635 376463660 725125524 870336634 703248129 726457798 834046267 373021476 821855921 645502155 946987626 15604740 391827283 870983175 347691358 890020382 832323858 815827556 660413554 265216826 265479559 66489627 280522026 633033336 54560109 978070187 879893707 67205219 884523485 137533 553372619 918289418 51921743 903595808 950507878 214946173 702960911 287917796 809436820 159117161 845199549 591092969 192019390 440559187 320044461 477483424 946846069 35226682 181901090 621799996 596765435 1002162 249573374 798582003 83201717 307570629 895161109 457319229 891634868 286434215 663942936 479429651 169093762 569658101 132014818 729155112 894600148 130874623 609932155 915856876 656520820 928905003 378727572 674092487 914543604 953141510 32015641 470675745 480386481 117344799 320860388 949560305 882743153 905384904 783751200 817048916 715969032 245246865 180931791 868752125 923418219 698225784 466370377 311196693 254892114 827433403 774291239 742110324 515385241 954400009 675678001 364218226 110692726 297757646 970243556 461131211 14084007 435340070 683956067 830854487 135142621 891095882 141370821 915307691 368358532 803227399 644327365 10677968 528685565 442439784 158572108 651886088 371375261 583399947 274834311 410383226 316661572 130170029 635763067 2196929 359314560 140360103 568737991 33767979 756915412 990611715 740661264 917364917 514338685 911825272 925203241 554706452 792803715 289861659 585599198 30829026 81364305 766762078 521842945 141913237 457567646 194369118 512189648 260129368 468632099 503593614 780409827 456017799 147020284 612365939 476549266 288007593 362766673 60940994 831657962 668803346 148094310 440155259 951386544 885095933 603572856 181291095 736515126 828580500 586918045 370607210 970430714 800602230 410179734 140864001 482821342 164236182 803875736 411620283 864539835 448043801 966044257 650787769 540859102 284369515 558205555 447148544 813332250 837949687 522444499 50270520 659265913 125019611 490038327 321433435 590242047 57703014 842868431 557827680 454964035 901963539 528148191 418599895 313388960 864658092 574544686 199815619 746626563 235187076 103136667 675492007 344957469 17096421 803875322 752305794 543419288 230601217 148017079 142991559 595861527 967398303 873997083 10540729 728794363 600417943 97326459 362210861 871849465 132500328 696096382 564394747 820044579 513861023 307144774 603357449 802352830 549814450 936871750 599736990 652107324 210028729 422724925 293230275 669587446 563216345 886712230 943399017 64498934 652846417 486910750 792511425 284354500 553833524 385978598 808993940 901623918 233873620 897250607 291120627 260264949 402528703 938969217 990521348 464923651 394864540 416257605 923819915 682258385 15536290 959244547 669729946 531604053 774278325 18912861 607612786 861084208 964991134 914987318 640660584 586704168 695180247 374937073 623636506 401123245 471471842 678094503 211196911 60181161 37335279 903650161 355669071 960741926 290540834 269582646 68029582 40564422 252282655 133191949 115402953 913459906 574798811 914586720 917192229 130320744 953671264 113689203 971751562 473540890 730305675 806383265 157774111 46958804 522442088 152167598 756610098 21296700 9999849 504739322 571879907 261849268 616814818 237790583 29056747 546719173 43266584 92403647 997078905 992577470 293392087 887605668 612009339 488751655 521743683 931061829 29202137 599007571 293120985 15077370 619320073 300725485 232027354 320560129 865492499 460513179 817582878 598661354 266583649 712596734 133776154 62383620 319368293 769438159 323942224 277734770 212944053 437281190 885284805 378393796 790720287 810038685 791877593 152726746 414649542 338857951 196788161 490405648 362192089 974007736 901462487 153621685 171792842 62004896 724980297 792157489 278273695 228926698 992506274 198671162 643357676 35219473 586579095 630868061 16195745 274959611 186708576 55327136 985503345 482994711 389081753 289006053 939283601 617252614 474345654 294273975 41154016 243223648 902515223 713997552 416881427 562013080 347152797 759250245 316422068 672954834 922562398 990927125 160727486 2900842 437559521 292723620 99129127 300936149 206604497 462054079 529401646 984201423 515357038 297447814 292068918 477168111 509367774 855990454 19815029 119797895 611071662 149990977 162409900 449060313 338310796 677719826 481958597 563503842 326851388 773561894 518238693 919906106 349775857 440444459 203060000 924406095 834839010 720323388 565447367 740341788 979671851 151886963 885756499 363103590 722020289 999888678 85796823 197564540 442742407 574167366 591067446 901724848 429484583 418035188 600056184 109553732 925062489 655257167 65388507 383480764 617642044 235447977 53080407 47862942 892103881 65517423 605562001 297567096 998912451 128074312 428279904 284517728 651574164 516707341 503693065 20923822 212170230 54752 797198701 414661682 55978387 916357289 530592669 60356448 132423130 988446404 657084103 676054179 24897514 220204778 236787458 859674578 458005488 997875229 857854629 977662155 884809112 320871900 972153940 531042069 358363598 773167803 216961460 937109216 446819792 162594205 828206432 454334429 907355410 471696710 490399167 931634282 988104584 10708944 185748823 660642209 806778189 268571387 941940192 68216872 645219154 212250716 892946392 442474823 147454956 24760790 827307820 493263967 932526321 15049402 112256805 556989021 499632082 354003258 536978686 368295297 334612380 873905946 760718264 138655093 163603293 171922971 828925876 383764694 634025965 988945023 311011253 538002651 481554703 357975579 587336619 239945874 220450149 28687183 406785604 796432425 93266695 695477935 582845234 591116636 410954908 826332628 24340170 616007065 188635291 37091647 144755581 645904779 201764579 622322705 24769711 572345541 164438499 124254959 749458484 838862053 318454333 599372281 878798000 791494667 164367442 553103516 605265518 409512233 687991488 247593993 930233319 918112009 230609152 282436919 916351537 729856929 240719243 47220719 245675593 559471235 712521179 980471647 796072784 383898677 730296682 873197410 559179784 680507517 4924870 927051069 500503569 971843310 445537746 335213168 677729670 428086831 156664519 948897081 336346525 227226585 47987504 892305447 45809819 812392557 199552212 734504482 186134528 265502384 360637392 567328924 357164185 146365895 167694978 777212882 98180478 621968450 929524282 757223542 238076716 207438809 741140983 287940251 111664170 231354926 232587209 316665737 238600507 69929448 88561912 365287481 135254303 56556355 725809230 546136927 769947 494712546 100939648 932422960 823637050 596145573 22293453 877613527 615608120 197461237 602342750 809138608 209890783 904912720 263672052 94931603 980536 870613437 761592400 286621980 534851377 177336585 396193273 62940977 776311996 107914817 183267030 581309219 746295155 87289977 743468236 103571887 205415470 757310045 777274631 616696618 885040956 416329928 98512147 488993507 79119627 411974301 871226237 839371429 916971957 720006394 795104715 437027101 397130368 307777825 338655707 919402391 755059848 43490029 651620512 299612960 173952631 571314595 812762836 751423282 114051824 35888341 400061175 50529070 549189236 844525392 681690753 386300842 578858766 709052305 160407417 569690404 521158061 905903029 494388396 288634982 706548175 250650702 816151612 666841326 862225016 882082229 566482018 992036762 644644777 114085072 83306157 909129748 9641059 899884390 140198496 357385968 169349665 603055399 865057962 622009074 211077915 42255993 628492349 148804006 421711400 68194475 719940825 613443101 881268516 902049687 526484326 704762325 120201879 322879382 643610065 696483096 348161650 534287080 860108874 653879557 843650168 848971632 676328426 585212974 250328705 144176184 617141683 45124303 134407689 938920258 290681607 516693053 727523871 962572649 935785628 913258282 911017275 518949089 714144035 122236572 117603442 265125257 770999799 910783174 722169570 592207739 558402297 618403070 462195111 825807790 475226480 25531973 386035173 817296203 664023679 35275252 420624744 109540198 81253521 491572262 965118465 789912489 782833502 516202187 520321506 79009848 580922312 95388718 651275329 107590976 523103294 244794012 538722499 251087597 737772482 631529639 979441138 75835696 278907258 293326391 200367715 272007574 881160565 705112344 872630520 649910924 578895156 952525316 33868951 782413539 911893166 434397056 17126609 285143188 522976106 842005071 878016691 840320505 989647697 921399255 540183874 419818217 981131804 394448608 507043431 4611412 509088215 582226091 488663917 102852466 44583241 900957139 558808723 501992577 939354417 280238365 987475693 926208815 105061414 252855112 867497763 661571126 137232587 24695700 604076019 957649625 226714011 736729668 640749319 613370547 963021105 391717973 163791841 797185253 689485135 207184431 259125329 527268246 874360616 559411310 692985032 180790715 803824008 988485870 625545907 467941445 408067796 977262449 524159686 170179443 614536255 485389458 246588943 610492378 274969406 721243894 214103048 66796666 634224861 82930705 786134989 399284737 796181704 924244387 854003204 554761384 703413809 713119809 807944689 410841187 815202522 730940404 307455304 21930691 695865530 423520052 673168081 324256244 937941115 463047746 94957362 418707551 829543077 434793564 40278151 381283696 464219765 615587749 293951234 868622713 436813185 982132621 727936851 546544560 206382676 114433994 245945512 929315527 471778433 291369176 382398291 312600422 774397366 188257976 130865230 551727968 224135307 878616749 217294786 688180341 414904553 176991085 171652241 664332883 388244325 617288179 706123928 236740574 522593138 744575775 561390241 523464828 947087548 766987426 615056824 752569048 200037428 68840109 12099466 975587087 661039044 324486868 112009989 535013554 521530177 11974375 777389646 766514586 763226006 954291772 484916314 926663018 849534342 784713550 165039938 691107503 808628463 672211795 150384931 961590650 681171863 683521969 458124200 584311787 434989330 88955042 245143753 721289404 516879772 589572976 996384223 496826829 389674335 668232185 929239872 32377453 202746830 204568413 813505310 836440921 227788245 106808674 576971677 880896078 930848446 500034863 258159994 556097490 298181362 325146689 78098598 844538691 645030598 369210073 986820470 698903094 454176019 157156105 50746744 632662298 270511781 218488755 775311839 121401690 765391874 582237205 766581083 817530794 19820193 867949400 24611364 202385515 275125268 64605628 616601642 233002313 999404860 752207842 235420747 238060519 749756900 68462894 308407401 177382993 82816246 735961295 450235429 283310050 818952542 350096149 159515586 848036892 797648313 524186510 738985655 472650013 123593847 662491206 28475999 804950047 40553565 154354563 789572530 557648142 440634888 225818274 850404201 178954629 80868128 529104708 602102577 178864054 178056969 417955469 167165360 875308438 923161481 900942278 236983493 332095888 560066808 76202746 465044932 168056474 422342951 477092779 509271813 236830394 89472974 823011687 25292891 57394967 383805180 177796028 541800647 172297190 782342706 470274382 868683537 180832533 754511386 14892307 355585491 646655049 335605121 964475184 36562204 199439313 405068000 855405128 880494689 820799996 451348879 605931666 410194619 637861411 209547471 400875499 542517362 827832414 139000282 223450356 81873662 158458169 345429133 682451142 937351098 496084794 514994159 823825595 173333268 277300736 142738454 112291619 791877487 34313653 534228110 946687158 902088130 538863872 424272352 819053818 142019512 739651189 36275404 744527666 409021901 991982920 870405293 407462879 83483243 526648834 959533432 386566444 250704068 821767377 655345335 134158207 54047299 328658135 733331649 73154823 566323708 602527197 769684957 979472166 927584647 567041592 455990825 118630363 739332419 407584945 504848525 689833421 360778277 328955011 849403829 100775237 261982907 11381518 394801706 498801830 887827335 268160147 816995622 213763955 24834815 955767855 350914588 647829572 149291487 385380046 103376652 805103191 585351580 229325689 945569257 94679413 188594312 566244253 634138037 628507759 260230231 126332487 380125510 747748677 80016960 570547560 185963785 881731389 264321241 837803565 126827999 729920480 953969506 118983890 50200183 307740006 976338123 46139795 167609466 181343439 312572056 534548105 85488620 866185701 893809680 225260722 476802188 899352549 703588277 815480288 933291572 545541504 330059514 243122994 787857814 99363882 157483324 974515251 675968055 360845030 475341918 400451604 96067481 606789193 919901926 926306267 486010819 336962377 231540126 923510690 78789494 332972222 421080444 971076215 465018313 687144984 779785361 87067700 895420796 556085633 767626807 435561214 603202583 14813132 99877544 922983090 66847016 743691225 471871347 190406316 246174488 384012705 754114764 49268567 768604007 565312781 682851827 607996944 877038883 263893322 746241974 989027148 633147111 2907567 187624792 268621929 940302102 757055347 991039034 165200725 600715675 385048630 70404951 619267057 80611631 690476166 297321059 903979944 926001960 857179800 320400602 62440759 765397063 542249556 285929246 106252193 788836117 994143491 35199563 929326016 688392992 350466579 761794414 554038731 841697902 387765328 929725153 999961426 395151907 379928374 235659630 434478360 132497923 179984051 520107972 491239312 302954190 380417 756564287 188073770 990744302 86761540 525728120 260690464 810270269 641824331 499844527 262476219 954839755 586477788 213924147 183138394 664768246 900853105 500944549 549079526 644325552 913524959 435629991 414424298 608620288 543678226 683705830 405771158 579874316 848032435 691831944 691843028 849752583 562818106 672549208 28912855 474665700 342338716 392017586 327410351 367420708 127282935 681028549 479626792 90032919 394146364 525522336 491064515 354969047 919172973 559336345 7512311 842032421 455775084 209310176 998356976 150992525 176559291 575829956 756034079 703510502 206485123 92014473 579829578 829545879 41257869 774497047 180734400 409442305 357575202 423098164 965006940 875307935 255204561 272920029 400055164 70218400 157659811 151562942 174134596 951928104 964407114 209803043 76067501 771000865 923983570 536070996 104015340 567629607 364341563 278693547 795782448 70925528 501935764 50182981 635748748 121766712 611864487 331806022 238436932 438714113 862219875 977615841 348907442 871517222 144478420 785148877 548600308 652153295 925512859 410125406 251558959 812779203 428324378 176692443 93704205 919025874 44831490 160285625 684350801 343900804 778947693 188691126 768519501 534481336 529941909 70682420 717711111 561107352 985720802 276328551 753433761 89743728 515213180 811870874 492007142 294526613 214239339 957857691 787907996 777653282 843643679 601867401 507132447 632648292 237401338 68624706 143858929 796052439 635465040 122784760 275768536 71716831 564438653 487154042 681730650 754584906 769692123 315914996 816209078 509684434 337575496 637196852 190566163 222966829 482430 79680578 989767609 131230156 842050001 948632768 905649525 958193856 360909653 711409484 869769597 761530925 184819441 419973057 149784132 389526165 765913522 999393405 179383298 209346661 862734406 797087985 119200481 985076198 832631366 287934203 890473550 137254995 920517575 582890693 332134137 779741539 221574878 486810893 319255167 893218737 485762768 972697648 527840224 836512225 357560353 288485193 583614110 604635279 372706126 362129756 510440333 686537148 349678698 658977874 715177360 748219191 268205089 178518800 770192900 573775501 192880013 28108217 490884190 643672713 909660450 702213982 558224709 749083055 475340402 280018266 830929592 884318539 368977040 338209654 38545869 572433244 831309736 463722554 714528628 252901461 901336301 354833643 671020749 172373823 443673200 436871075 788020731 415247229 388325749 243238631 958240350 124178031 772804192 149655651 942332593 353022638 581321060 350564459 796985794 41572956 738371059 746555345 487667071 666299210 824215890 637099904 233051840 671648837 565997539 607768171 594683939 920737330 703935721 69300764 623487397 37059233 91126415 679584332 928617438 948827742 55821940 961219571 365777313 982938661 557677918 645316125 466756014 666445636 880092617 406343237 628980079 683868094 865453492 361264819 531949299 942123516 635331675 597276330 591068039 735119919 877685379 104536210 610348091 791490777 930912935 766188478 280975805 311449134 941143717 569132945 308516800 156053800 167510573 839106603 199701814 671430470 605123364 252056843 860239265 387475531 499787779 759728212 871679551 252343977 570415670 8615457 968608024 866098437 105219485 401078662 874731 78588798 540074006 784520551 715478883 345230095 59540177 836210678 822713090 623070664 937935512 714263607 100868843 869739458 485027964 140857569 388247878 34638462 510541555 494857257 775142497 325025443 206725261 992113823 258542757 19427491 504518770 983274065 451795262 214780199 738903862 969564598 452251353 964505732 118108486 501691354 32446691 448838085 794323611 367699072 692212282 354162653 416699622 629069117 163368833 58193009 741216890 510705638 72662936 237433275 609385515 632845072 942572567 200786791 509454142 6357722 986053776 102233084 433408464 434146867 589731444 313470657 763431411 236256915 739067067 916582403 604466344 31660576 896589816 322602477 391713581 960980540 845337325 438528639 759779282 673543996 940708810 995836659 544081202 797739303 756472812 575022250 730959427 729403694 296210651 394829173 778949999 356974117 5319252 518826455 204396249 140384307 208919146 907352570 584849127 84692170 907157985 441998557 331332040 688622204 715894058 204742492 38428814 675987264 177389767 68307533 850596384 270995603 408012384 494077375 550415888 951804968 185742924 157937427 902671177 935267061 621673100 922353325 135331801 317661197 885273343 656710681 824870271 467302910 899728198 738340440 192984080 575003308 268695773 706971527 632186317 398982862 54936429 102367928 560733142 894075809 991013534 363378204 492473147 325364236 985865867 20978505 484802475 314488084 318869954 250111019 133000822 83979509 512674881 894220801 610258309 872392454 408093429 914079645 583121978 289039660 409624523 670700596 1865484 363599951 428493195 902960034 542365370 559831111 752831321 57264406 164195370 364471469 368333010 309384481 694648823 866421891 653294365 185319828 264136432 912979394 458445865 415558975 774710327 706393100 748949501 351204706 924356525 486574254 613722328 159095441 320670946 340645101 230784134 165906855 143344478 838732658 733317791 440796128 550713379 571705792 873770029 482528898 581045683 720645046 243068069 55920000 369401613 640652403 811457622 868048468 624991579 534878427 419629624 688571702 474509231 291460909 391923926 440617346 716430684 81165666 767974954 830818060 410077429 902096362 708383227 419073874 504918261 591987006 904162653 396331789 214992892 485606217 295377482 303630083 570146785 831517006 903142186 964265612 809139562 934098259 775720594 945999528 675352397 265499246 632960395 738521705 592712232 51514279 171353491 431550400 755255979 17968642 779506238 319830535 638085415 552102918 936939693 956064038 63074185 894845921 18620232 347194125 472897896 48435362 64161083 94471061 752265979 790752017 117258794 29102010 287851058 96339207 487644991 46674756 913119002 72744428 944164275 718598012 545607253 823926660 686669435 874188979 131243290 43747432 73398137 683346165 851217277 114731029 911882896 324196472 654886388 84877404 39508044 833993656 717325418 683470182 506134316 942686227 73335588 217590730 215205292 975348871 949956722 673469137 34782507 516030418 619975855 725592291 267265482 940830170 542484729 46425922 480505825 771942915 548754715 981227535 343270081 260029235 718883263 565080001 207860781 389311706 902527627 117636480 988931539 881321530 683315537 688407119 434045381 600865842 80402428 673805269 429490128 466492004 299226591 503521660 784994578 882373005 22125688 539066092 639186926 689634243 809795601 811858979 130599197 723976059 472675599 607198666 183061129 423174708 697280275 827758353 572813456 98739544 447974234 756081766 315119817 366845617 97332953 742411194 409636122 430789293 215459836 518152965 540987694 801727083 739515901 219829062 615272854 743694999 258674237 411582344 925039760 806745793 36018783 923149478 973038069 139872153 309417548 679730203 854753072 968092184 885239023 240494674 428805352 730466222 125404862 508547699 902285958 126370166 339541472 183496557 626142504 46621366 41630460 477682162 801273946 675877476 434825618 732215799 912119646 364153574 323392989 903182375 3593573 465521818 989458626 818444837 133344973 725761692 582873296 784128602 555928676 180787848 426331345 402464196 141806733 398101747 151961115 539234550 721072311 491974833 764711110 781036823 585246472 641450903 629240538 742034007 297629627 798229369 782629693 539490524 553314552 946853138 367492091 564855797 490666159 333626699 906849245 189444639 123670647 195028150 375561595 92034884 139529906 908093235 90815681 696424166 21871175 655301023 100790985 293292883 321271833 872443553 279714368 318131445 126692944 195519475 468605368 428450187 609385797 168666251 995144368 925378035 661853328 263914300 741014147 173263215 886763880 914648736 910366805 54208298 30503627 39274839 134364476 633383328 305983661 735604655 707054576 613145814 71472479 432545216 812126839 693759310 271420028 525000851 232825947 923138246 466337340 872886099 156823471 864589866 993199550 111094967 951528397 843249941 700179556 751015789 275226234 350948886 859182989 204831530 576090605 999107120 249506879 395981952 766712722 300215224 693191098 642108832 275577646 709442920 712673370 438834754 703412824 319476940 25946498 185903899 359339592 603487857 696764740 353544775 682973249 422922795 822196535 931713571 857256060 522983872 672964740 748736100 880377058 80455651 216095231 387836889 896666639 494108675 419966104 601704506 164253683 159308541 359740705 136868802 489739842 255012520 809484002 787705107 330388500 401582480 508148497 462345493 900058995 134819043 119677880 645201342 383489031 833506326 984541138 866685674 99059705 74430609 14011314 256442411 786494134 779654262 55709118 515161427 370696482 309945978 184496179 472300769 6921827 636843597 51679219 574762058 92129672 763517257 694936422 428471720 277643725 41965730 405441562 902192641 912418663 628426982 410300446 289328879 779383046 485666924 970494285 331585418 938572568 881213142 250324062 129979280 822605354 25543684 927513672 230731118 63900261 411205033 966977250 658167441 193375565 190382266 850373256 565059932 855245725 106631037 53879214 216389828 874151307 166090113 721734220 855840660 555108744 835532047 874529619 543287924 699443430 650110016 747422216 916350130 774421288 128229074 512171021 428350505 912416776 288779038 538728864 535460079 624969110 820670076 930899825 40929694 229816588 134034335 861610445 539040477 730410428 329516317 181791306 721314179 640218387 736307265 89617660 917269114 766921596 151048924 136438826 726617975 994928801 744655964 7160510 355638799 825037118 159562741 120514368 433927179 783865869 365091438 418843400 507977153 132107704 413631808 224328539 473448628 764728419 967689306 239444402 130154822 747696443 567010109 340415539 857996939 957720701 644745782 475173064 267250168 779833160 816370141 550639365 289850797 461693434 985612929 611064279 631905620 336867672 705233634 396235255 883782687 279433508 49992163 498219958 548841880 995934229 283106792 754925196 589666657 348245571 828261430 42178636 641368142 464858631 901624039 36781456 323314543 304308179 15385170 304471881 31717310 417961473 206998525 83388964 858480481 772904342 174402298 904913576 427194261 195152853 609090344 846760040 928704893 701970869 848918515 745016327 201648329 209144124 816437578 494579732 770120215 21315907 528905705 285350506 874043348 302608762 290756105 556569332 520337301 453411418 908793243 761810187 469690124 380597228 885929847 993724622 482128466 311522413 302253819 322171915 445934847 637084712 733727521 87415399 946255470 77056839 82609150 112614812 295697256 423469097 635263921 45715011 25912261 359867383 790204081 631513982 594960702 962387387 740764582 186508405 155766418 570988097 798584824 157495279 960223268 72549170 985826670 243795614 449380864 515282951 641020166 752530917 934888576 557680939 949817153 972785528 316549142 334331533 285197283 415788869 767512642 463989287 428888339 493823789 448117181 559613256 409787104 16357377 652429096 187503620 834891436 959219715 942405184 238149273 925322128 800879695 95829662 587483138 793997196 462541628 905102948 862299583 150062711 911111671 424921168 382013804 634622587 55971882 640111917 637127339 648217732 33446951 778527141 404204285 873361352 934706817 705798784 166489683 241348343 863145775 519839403 670551226 777742131 553474849 527364423 789764321 517998737 12169729 882114531 984673724 240882790 89805932 770678258 254560278 603573801 70426986 548453198 403099844 653332421 929612042 424066928 980614437 650444573 613707572 364602156 25916436 128119743 387367689 965729554 608018182 538428242 77868956 125356111 127929344 527961822 610807155 677547693 334686488 26830165 411289499 393367208 168747824 543487169 441426446 249341599 980098742 92146099 70419475 800697475 47047573 455749454 509677606 798901413 336705666 438610656 811174 586079608 178359543 930481809 782285202 588236307 403730169 718742265 54690696 221265723 268522620 438000520 780018717 234236091 196211424 597447305 397017420 409627444 633883802 869155254 695766645 699828166 953566487 721592054 95123201 330140124 931375386 737458230 33110916 541901760 485625235 142276350 146105987 811763111 941616569 820946639 794279378 406703126 770371285 856356054 850594996 985414882 972626330 177346806 214689242 160814961 119598707 34273317 103857732 263451681 263543427 547106942 323446566 579380255 848207595 615827088 587328710 646729240 688395449 390251111 466591798 819214975 70912565 497903427 991363000 165391930 689144165 421836325 222291495 824107370 182420968 94924685 448160703 877607981 508981254 139062340 250794947 289775988 931932338 16159863 185179999 563793043 106803327 544519220 989237642 818380666 885823836 810475383 655649496 816698618 830743897 480293093 572683641 355206000 528097546 656716770 353172412 858765457 855469209 835876051 310397508 335361298 513748349 608969911 166402713 184690881 258439452 770023818 954435850 907231766 700123212 774102098 316354588 265384227 768426790 314049692 449735482 44992461 799911762 248185454 756222355 608821969 964194137 471554309 850973317 78694795 291607838 115599151 188015034 223485301 872014543 505562630 261796290 589637294 407226479 822184250 859094619 691218308 998534353 297918273 556674647 520168732 697436303 353642841 420777470 632067793 996831065 498372195 519099048 924485994 784588411 892219975 938634708 612034827 382905060 71522924 620940802 255701504 12417729 815987622 393191607 329412141 535059536 39446255 20724870 896639332 789059582 125613389 163299603 365776607 530095674 965071129 651793066 919808783 82713915 706665332 36512016 93217832 130299256 703585939 882545132 877777749 187294569 272616468 957373464 553642299 311686728 503054214 714416280 825589613 342671453 385887485 750724794 492712447 330543820 633749695 400399751 732697930 203627689 176801051 790956312 604667895 631877208 346826252 898525902 69918450 293689875 509273761 805150934 620943905 557670917 776355117 639454790 36797054 517124413 435621801 630204912 65780551 367224745 227911115 282200090 900385669 875401167 749975307 338704694 841887349 608057177 530558753 665961883 880044757 494426534 348115993 397530338 957703422 759541831 574019603 521324182 940632125 19463061 93784044 882226845 637216336 596042166 519293460 285514375 555911052 362892075 494808087 755401766 761776607 877690912 148406155 43576074 831889216 806674253 155808090 493061076 570491637 833846347 925257002 42176373 409001440 522416516 929494510 702120970 595509816 339876095 191642383 453057180 232772141 462843870 465583785 171779687 670195391 956222170 936844868 51056602 807806352 822566138 192742170 127226698 25988924 141411725 680101220 685460329 964392638 951114019 50121679 596395747 383480607 763284896 739631567 944278946 559934188 440625660 863441168 839605943 602280735 398878806 975215552 718227019 222332255 930966965 482294492 600482229 622291073 652996477 944379601 945541152 911656334 589562224 339099330 828143278 410365963 235231597 710498482 457682455 184994356 260996367 629749712 93776436 265925980 471836605 152918038 815017245 810061011 784253700 759077034 392882243 633882084 511393239 116774586 747053580 89713886 212579493 176190066 123345672 948235471 927175326 37873122 829915851 608850499 356716733 611395299 701316992 229777224 785773442 115773032 888538129 448528207 593198921 250969796 54413829 365007802 319728181 21316357 683016782 585275995 752943029 279276679 889168173 613982188 192452702 976655218 907255276 592964070 894237907 272509837 210974109 311647059 925327752 512337781 772642599 616242692 963735970 678409642 566844758 99584819 515818304 305861469 709275307 636118754 761986784 98783561 798773917 418726252 453176457 462865336 712608128 912022465 476075102 639295037 988422663 233436827 284095529 696076341 28078923 822404993 658927112 628456235 568133438 603071759 716446559 753265432 511055672 967692431 669911747 247025 782359718 483772488 429530442 629517199 1450292 11151188 331086280 496395686 505726497 610505109 370336561 256847630 166654107 331208357 455071041 703183698 146816364 982609409 803475782 258705953 667019610 72713085 74183810 193382448 29081730 593360783 234063338 798207577 245183855 712604687 731031754 410147243 759349985 909579449 18410043 466251506 454545172 59288258 667456465 672213847 682035832 432677414 615264166 838892871 926016361 569501056 126916170 345684285 618505236 949078641 304177709 519274045 208003109 773352459 299755529 500596721 44963372 933225055 750936854 131740013 475817821 532798287 577030714 716317336 92024387 279570044 518193907 763969830 119758950 751374238 484013679 98295860 25020222 200894789 756351412 454870401 854165069 698311743 516445594 188604064 293739978 871282195 67793086 571634581 601352785 240502144 460322705 744594286 518473573 891624684 562118389 974841420 369386570 205622783 778630249 282857520 32117995 883089418 406979702 951621345 284570309 453989924 549541366 846332844 587126021 784076646 886213184 461915043 259768806 336025302 870502772 749660703 974922450 147045946 462956486 819392536 529874225 481991420 338970884 725134572 267321170 279698850 208818750 945244 51487633 635820556 337650218 587795432 701639312 433690260 725336695 147767917 539803871 471430158 977494525 844020730 412060510 144880900 683367895 814365548 885434498 478088048 253886823 707474157 239005839 567853579 430241457 724066460 844304618 802870026 846794635 789929852 915932956 618908464 44145324 821924194 109397823 232016403 979954616 352570917 956989978 242427519 241674801 454925382 750431652 261221409 884504937 483930845 772059589 526595370 17838385 681184812 784918485 452376962 252504259 165798374 214214989 315915877 767986308 892721283 787419349 361408906 443404017 413933948 882187882 760284431 438735641 707235405 670658028 750414708 78927507 17979000 441106185 513968662 927018199 528950152 62936532 411477941 164125000 588992259 161471666 885863727 147437481 535600011 306596445 146016905 518248810 498577212 771249505 146111462 228576496 823640249 841902515 457814841 276745111 834763964 533007775 131477359 142851577 234671197 315499730 779357549 135877624 946754233 382658021 956945081 271425074 505622027 126942897 678502968 336027586 403174472 698080640 842858342 97696336 269348689 476029589 542257654 791812911 352323289 869269502 566809787 161855284 702776416 18959325 218527427 293223599 512202672 999612273 342296555 151401433 572156982 574469800 822862305 812021499 772394504 711015613 129028380 959231989 836838952 818525894 917394097 540063951 247431701 115724714 357407796 882152214 769324394 489485373 22784917 822240633 830576089 403361185 599742209 868791881 637561647 535396672 676595455 483466641 474176773 110332718 436368330 252666966 200767304 171064223 665957166 648548246 17385876 277936529 65859587 860604505 171430521 89179752 794076645 567141786 595458001 835830577 667647783 785096408 97459207 598494796 842955793 553778437 470871269 48289222 956665594 202113126 892673605 370581396 412445674 162821853 53586895 105288567 268860371 857762863 518383560 132978617 473816456 607268770 756432190 197051490 123276675 885883335 599583664 558161375 985678170 168319300 322351195 847207082 979704167 318800818 560733997 897346786 812252890 687930837 556664589 227620896 769777447 128081255 506770248 170080368 380681682 410501461 168790524 127769273 932392352 225534783 110035035 731827361 716568397 266316508 604293512 291657787 332468125 33435810 860440093 278034634 363392317 761415196 301642365 542698953 905446163 694658705 727669945 603734214 612822909 224307054 464945342 780910207 997782267 642352619 264303721 307927490 519886810 856430571 173903438 410558068 627274023 872441542 660988360 534256142 54759521 335977457 471855640 897603037 569543926 171538580 453577454 96099220 696153898 294551047 198781092 670855794 649147006 843643614 297125445 604401556 839620275 421171012 363855070 396310547 305595706 864726773 131373538 983178583 632153271 892821300 108967339 419774201 613976913 308356883 280570372 881247793 853644788 107877529 652446900 8915174 582809216 905100578 188251560 756095070 283136181 398009459 16395184 223712346 814441050 338827157 656021209 724994027 942005762 500129933 806338913 217241854 636618587 734793410 438800716 436174772 393024120 11704801 650732931 195624499 271119724 131577376 750552738 96160178 541917819 295269432 341182094 17978434 967057589 216905492 632638549 704103159 695650497 122754435 49478830 88406279 153718978 166854814 34070397 704794809 937699962 516123329 103838150 254843221 147297110 432456254 447597670 163455449 520519557 39174828 383341688 1568842 490361200 414031981 25367602 100540032 90606474 991253603 711731241 706016260 295699684 765666230 749543525 458210745 26464423 759533793 482526226 334493825 337512338 488258116 268951963 256285560 399368374 889233424 559913600 527444479 518791802 848636604 756382323 388435989 268391116 499816689 888787659 753245582 618172515 362975340 450218134 219399085 230897878 756011935 994226130 970337692 509523888 790616222 458965533 509268858 182013512 50583550 931749455 190921841 996310318 941585085 93388781 251411097 956627979 964037534 498427527 331725939 665248335 565121932 239882703 661368305 423279126 251831176 575349194 82166928 263300218 449622725 328362334 602087384 485865691 582136765 428578263 801710474 510416751 874761784 164622648 40141469 594436106 656898377 127182895 31451114 427171938 678342471 706087532 300610974 86094646 437302520 772592526 389059569 177609380 350863619 237443575 405402326 392205093 322593888 267578880 171701945 457650213 920738523 313387252 357436627 312521314 757152574 660545493 480055863 834109118 539589474 703605332 813508350 988918645 250749447 558683024 668027331 435211409 666143081 970818180 453444053 242397310 498438527 519808829 565733980 257120403 66754570 596588768 364069211 806960558 676420020 386732889 891107 986933793 70950343 967809122 589884399 132161039 646497045 575741394 95457131 317679693 897354164 579637742 63033763 130636724 257563485 654132664 703490930 385854191 925761355 300064862 768779097 177648764 464211690 326616379 410103918 46488229 57518891 807516363 861059613 235047899 234858715 318159131 912831705 3149581 466431401 995286489 279751282 392388760 746274989 715174313 93528912 42982078 618867847 967396791 238483196 645292891 996234755 765519951 26123695 661601046 338709048 901514878 388105822 937581316 521171916 429895750 446938445 711870245 796635438 928067955 375237921 73610279 104191999 335628161 646174154 951679215 40377170 911800238 32917176 374321261 830431623 167590096 499340515 209985907 728842804 137652136 150175653 311164140 492122144 120493681 797735339 909254486 448907911 216985577 396592599 735989434 604019423 506589456 92235662 397422085 59555350 512833501 395295913 468654372 803738348 188688346 583734365 226606069 324816805 212082457 310025639 766994699 757277705 30147953 337877031 315535216 344371449 46464825 938771668 346766741 455656784 191012745 198861325 535898841 433016724 746426698 373547877 312596286 164459916 561991461 770029742 293414563 601822341 20220840 967709498 275127833 177976024 605807552 506829542 685888515 440565671 80959883 704443530 67085299 583196219 830869079 855906317 242346229 222474332 584573859 875074816 386544630 136677509 483014550 127795221 216940015 889798823 671714441 303412466 97582769 500839963 947384696 533394923 174649982 102166024 462727726 82074940 578621267 428969592 664471433 801376596 77288858 143038427 839773077 75463291 803879693 779185616 398585600 954985715 21591440 425093956 390636741 141416561 375862283 969873549 88693806 792483895 84999245 55151811 351212153 44997105 999668048 828476177 920508009 318087014 866308112 255150318 147418802 321654278 296563826 620716227 362061336 619333613 274544034 375904566 335915311 396548193 996921947 954355748 74930407 381738206 394151987 568223479 848021518 347876373 252703846 311709940 861334048 760084079 107889964 552860622 309937296 721997377 222032689 23275975 769032804 857255566 835337902 921614653 631084628 113329022 232774822 972265333 973995267 451835856 229482138 727613466 897651379 644930868 859613758 908004267 448208851 471476554 317815135 754638691 932207615 872554409 733841769 537983713 77672138 222153790 169825146 813208732 679898537 818935307 347749668 672288963 481619510 31277958 793497686 649480681 561934292 300860652 118722816 508827908 58277411 516013152 104859202 96680558 65510413 163615943 897596445 410043842 299402440 311223968 496078116 934274662 806753585 376810737 365450338 54723115 12580582 350459397 327947694 966934622 993672788 287462284 650792640 753851822 929060525 532006645 403885027 7159741 808323776 763902551 490795380 51299203 888565647 307417861 212862610 650368340 471850543 917993790 63322453 343223393 80990927 194660102 762092060 465195377 378914848 591055269 602957148 202836640 618122395 899864908 774517858 609590109 565773960 382878782 291516429 713170732 533560844 518298125 13117372 919883328 892137962 334359512 450896939 654384280 905167365 167381274 51470798 174336155 710190161 767259725 809959719 316309479 380626858 680557153 779869958 52997461 719446237 935758445 394600459 579883743 428023499 383042255 982027109 684416056 954146070 806698180 671606220 646359089 558604535 786053474 740454373 341989327 871024645 854588422 326322896 535533441 487143236 875459173 314018499 93386120 455862978 729473927 659360556 580071323 653106296 199373585 671438555 367683929 676757386 115545909 713717181 339582032 521998514 724134011 762577575 537181731 952333131 837883476 481028361 501981014 306399468 400214894 952315700 402663525 626680629 411645449 682571492 488779915 976329036 565701299 809525226 778638465 651756136 702584186 821737915 835835285 255504357 707212413 784098075 322543647 149269750 890767996 973900022 529608877 123814886 508794181 347705315 560605554 473591851 131281123 608405635 702275784 122039985 750817474 821690068 136657689 573505779 882523843 200538581 12630914 303030001 281947206 946029032 263137053 851091441 755421833 658552424 692783415 648156540 438191537 136507878 530417370 847563908 796937942 928237202 379769600 235524939 991213908 565467307 745620289 739247968 816533997 652090593 327026049 315257939 692976769 306652359 563575244 919612727 769066991 166036719 827914614 119685984 574127398 717904602 494650438 806461362 89675890 792983361 601926203 769933150 434544036 236548494 395592496 534539473 397284839 509035075 255713512 21279171 347299197 315061570 847337548 75730883 782409511 140556858 436004493 769412817 930575131 987274176 958596974 212230024 66203131 142916256 479988050 499466886 880416633 966929763 426770446 418190185 40916413 586944162 864751231 144733742 637091966 715375993 673893785 358611658 273395782 763228302 161469785 991360671 629687905 272427807 703423796 525885071 311112114 338462438 767093516 538355110 913289709 216691861 155958126 457954934 25205175 793710263 908372366 267599133 925487143 135726026 411572921 278805897 401633778 948130698 75592015 347580744 817363688 429104995 672141037 751791219 355347302 922906965 675654902 401162469 491636905 483675648 667432372 722694345 290073799 834008514 994063995 355146377 30087738 933133854 390490160 879043474 253961459 248089579 383564155 319635603 901825273 604193878 375064338 703835299 444126941 32623113 637712377 444534051 5193804 340718541 900673889 177647670 677742605 230241642 778577762 103406069 91041466 405958924 851793479 908737721 302014738 110745588 984575159 675853221 760420300 395202717 688057476 514780378 725648842 180388756 686798304 88176923 927953136 677522215 695592016 12884928 40134331 334973620 659666993 736534216 812443578 473382350 443601045 277705947 634925679 297456449 764808217 382109271 664383396 564015079 341077412 21274073 990269638 345781833 681441404 172772688 878416751 497128503 214046698 527463172 285417108 42937806 777482351 645728222 937514005 326651823 732751235 960999148 212657184 330893209 327942171 601822502 795638947 737891724 88921844 748488652 995312051 427239276 44499618 546914233 208979779 428936022 775573937 782198704 950857573 768710932 412857972 981954307 83118389 443107921 816262366 800910620 834087542 842514807 807453577 145994077 709101749 235980621 507228106 230780337 216398985 621573153 659683857 134676105 784070206 114163405 590874780 358693195 552473956 648230806 240869061 477427816 27797381 729443237 864570134 774395231 35901036 136744777 618460452 343982403 855612617 8895298 426430861 695966072 873713025 384808694 724874698 167721866 685509439 629918684 301539394 180725085 338092394 40259765 2005409 212670239 234393779 940215877 834136536 937054233 996627143 139846986 406308808 373023032 434601129 30264666 151699436 554613691 514456313 221088161 68101804 515997138 428024165 315265477 541704102 911192644 726468103 313253472 259272690 996903584 216394618 322246234 707200372 201546602 790811054 312311407 589134223 629957082 76616254 235284889 417111237 137330896 596283056 72137311 341227862 299889533 518044016 876005742 398748174 346997523 8176840 674645166 769534447 252249175 224427088 124031137 952205894 981379392 71531934 424048264 706263408 296007448 831038419 182020201 504585461 28883149 197122610 876316072 158078857 491178972 660560248 908096907 433279314 108345574 603128763 767470341 579443429 549361279 842839675 218743359 205220342 908170255 822428118 597864567 321854136 402733678 21113696 806391565 994114031 231814210 208837054 594458128 235729973 846833015 906759878 118501978 408246788 265070686 906535777 909312159 468078952 227396864 363168840 161307350 153422918 92232792 701825416 999664906 166232232 570704834 798047199 63434780 986159579 931774691 183677949 244727454 955470373 875825622 954578373 769019082 810627471 819801933 249519482 857167824 330379622 209326383 32544100 972932109 355220762 922089619 380283765 312391559 705151104 358443400 74046855 593394671 180040582 913316327 723040161 971966868 423120451 121749873 386486703 604678624 764368027 683445701 674696549 785718006 592893644 456013935 693138190 784203892 602661348 12030247 703525187 415626557 49273722 977424280 948820517 468038074 194962644 617948494 140565758 615012511 842338610 631916339 956582249 4388402 14630378 196970617 357722447 501522985 370792211 872751204 903892903 464337111 467494257 991730934 408370110 229994264 126096118 999014407 258319949 767276386 589667617 818362810 431130342 885802764 642922341 143135849 641826414 123499234 36976751 986353549 557594607 908354876 248810874 1286256 883179436 44078898 241866585 467601973 238293034 909310563 482171736 527236254 220503953 218438552 264891735 379361 801311246 549022887 116269103 464367088 657473638 610043199 471520945 679897079 366424809 508628273 319651162 837822577 953454997 922890598 198306695 579514607 192763380 465646251 329249486 826993609 354975604 274535933 765902550 539928286 191480445 639891195 130035767 458425536 660675726 580777484 809909363 529751174 391104523 106512125 719094717 894273998 795631751 230493232 486925378 356438169 267527394 900959153 90045775 119798448 146684617 254579681 164410751 474859538 53668278 679614633 820851782 107819198 839803264 325370116 791799505 854897267 248126168 193521921 574510402 174071069 601600950 636135184 183714311 679574153 489118347 877994994 766903635 981794471 933978091 899314627 271951309 353683379 854203570 809052210 577137309 118280391 490060785 690854033 505601204 171923086 202970226 292812397 135878332 849133257 107118236 359560006 949618045 943018675 951181569 849957320 205919350 89156657 745911857 629237576 988316788 557213102 387501525 26175479 500775757 185866631 361886067 843842302 413541220 432844672 687917520 476897886 579150633 524425740 663900727 691500915 953981412 413342485 607158020 188790744 188845695 686268283 558468025 497987350 51777197 619622618 823807905 746026679 417013502 928103425 397162467 444728696 154586125 226936269 384428509 334403697 101395660 584940861 983350971 285686336 386823404 892707423 717270660 810925250 569148019 849638985 564079452 267008526 805218713 858485393 702699991 528420442 740052899 817469054 228992499 205437615 976633511 162163104 13369518 436362593 37684323 938104819 76171980 20332165 941077195 678789908 667656903 280204858 748675281 760337144 910859732 50580524 14840537 258019879 4695632 451206864 864676773 450667429 776548796 463884504 955405440 323859351 277932832 450549134 676661390 416050051 982478124 923366934 547593703 796606131 858697802 416929639 952185283 945784797 913939917 163095430 298812525 919447290 473738889 190810249 793237605 414918086 238982783 516536395 620765649 714133434 648962144 328760177 461253837 899973861 820801162 54253174 545706054 166384337 615683083 916024932 785074982 703729612 6947366 500853716 834389598 693746687 908870305 517341246 631052144 274742934 513121163 103972419 703784011 39857437 566284700 536904247 949684989 372607478 439351938 986133347 72548406 393292485 153451681 847136898 456346819 271304345 873334061 10817149 889118196 803468704 779205489 183865472 306220204 423226562 482232384 616132598 106199671 3279474 640222589 827359414 111045199 982993763 150383495 143358489 699612968 291138885 965898003 127146396 617844564 880652495 396950690 457184914 802598937 928536807 668161364 654942496 790926820 443783958 765098111 515350196 504649353 964580613 431248255 170452186 820076867 829076300 389688058 889684382 688024293 51780468 64830170 667492127 335663418 789245935 388338879 50912 274749068 713379804 215906843 801095272 835287453 196082774 810780130 734588926 661878193 138473183 494558149 719266219 972042356 75190494 600648457 548118690 739510682 221519800 307547962 575893676 262461314 845980770 493131946 71615174 144375330 505275375 519988294 323713450 293793341 294162479 685832793 194817977 366339686 280209582 248788613 601162425 955056693 609287797 292965943 193346389 420475626 415480764 278533907 247681101 355049481 964008522 397741232 682454312 248141968 164162944 845024351 367989703 397661505 383911025 719407440 582230529 495446909 566155941 264633559 963515060 100625705 353388917 418151554 659958390 148244357 360180921 258461440 86880046 426496107 274316936 965957719 411692896 904724210 914237231 303034968 542796240 35848069 753639343 345730352 121573759 168486007 91979482 733345717 650176631 499857439 828220892 286608990 215647912 992203797 478643866 532679187 90502473 592914373 566786808 440320544 761577613 851528853 315694813 269790319 409789355 537426262 550862875 804045250 914028451 842493259 400526407 459376848 269530369 590569719 351577620 217287810 845024939 263034062 562470404 883710879 868753244 910009090 930398024 356254865 150370653 859626174 424868913 550027345 377592603 962582789 163569134 768472067 221775207 377366610 115454742 669489950 39852685 725153041 337914934 477827718 720046856 23641380 704404583 742041136 423762073 589665339 110066870 88861433 170577952 411119292 805474611 605554477 311077382 794004275 359494388 413227149 985304832 796111647 185581264 828950192 970823121 137950061 795250572 718386600 290372384 613128110 907671317 896868571 813897346 109303611 422071118 427042840 521407444 931105751 756945383 581306927 908246259 633312941 489232098 600485483 390339760 884694025 479049349 215221457 897257729 183602211 440328079 568029600 885636495 963906824 729100897 489819031 491697982 722190721 105725037 336930734 713170052 683480008 156003906 94956570 496102702 966216441 991997083 467779051 989366170 923778360 377309797 236932185 158124194 767344020 386783859 723513316 616989710 384520914 481828624 139174226 362914083 257861133 969246113 278778832 669383896 937060758 391588629 700551054 848789882 463431048 513120210 649290400 400381974 172484794 514333102 704027057 352510351 18380560 879114684 605989803 34837966 417848779 489071847 886939387 864425941 33963969 205403729 509494313 824661927 435162321 873997576 418629410 510815734 549927088 807342997 455472197 989604731 848899922 549908532 131703018 799006745 163655741 660289963 162304897 256890077 224497508 811730115 560550822 47816505 789373227 999160305 680252008 829679266 934667439 251317760 236002922 311365616 477106232 21946391 218224295 240888343 105929348 701584762 191359297 399571120 593102672 558698830 119683103 661110910 345336961 984874281 694706913 836803482 384927229 221663720 459298437 163084580 666621381 804841359 492716623 135921793 322774959 378873155 275506057 486924712 983154973 813016147 62240763 264834491 462676823 336473608 780213177 246674189 799267628 515730068 299601612 735649875 812136543 833977330 725326696 629061901 228500226 985578017 858647694 625014649 582838234 888771373 723375893 763862791 117436493 572895517 608341673 527343417 83190251 565355778 420106421 942326776 213198743 393988544 952573192 715056226 517972578 927184649 317909317 882551362 634834159 235851032 909226259 621794241 870058329 523814967 745865953 265147583 55315616 793104035 169250523 191162644 888604749 646268733 41414311 657072288 337966183 228670142 959548721 265364295 489726921 253101514 22208297 918151147 682779059 127938536 669421539 536856051 407791819 515292311 811807068 919736872 6342789 775999337 679897313 68590580 788121635 140507438 348847832 615466133 314664104 83902696 668048755 121848638 849189858 518395351 817776607 156035694 991473613 393314147 463738159 440242869 233406431 353424180 765394867 352745614 812174239 545461871 13840500 75716313 685899889 866629846 54508582 721782103 581687895 350866530 833861162 323311071 882812480 524061527 252840694 132172769 344636769 905079024 969280488 906914941 347356215 811700254 499474989 28946713 959564908 5698510 145604042 890026940 539560132 361110474 967704619 951136485 115507727 983245334 806791657 797666992 889322584 469485725 390368650 955811984 48625952 897314252 24913342 902482583 123855838 755617574 73565498 967161901 114934617 887351816 248619597 529684321 883595228 180990227 544287611 586666361 737390927 994601643 48698059 794152586 818782982 596382295 348492250 964275704 596774709 109954022 85470922 466962099 342144074 341094821 366616359 113727268 721700492 580461281 427179971 598246271 858798707 686865021 199893705 200149445 841565231 530627618 769932133 243012035 862697880 64793994 858933568 319009575 672315406 967625374 603620590 777654319 621056463 982637518 930125885 804708836 942224991 719640545 574701943 336432078 863141876 142090551 848289967 158689892 454128141 838586114 291977795 864321386 366035653 307356733 299018437 733413899 901405548 671570391 218868731 240755433 548596804 235625500 87389127 247160100 723162565 450609050 330985863 352829746 461953138 834975149 544185497 725799921 266303543 404972811 62955016 391415080 584012033 649009660 107787413 694105932 530948407 187605778 212362960 581554489 323762173 628700521 804034497 378490945 346842325 694621204 534566290 167759816 829294572 599360542 19012323 82419241 573484284 292538322 417205534 983919740 659933676 520680581 203107245 282680987 583812178 61376870 77051301 77800122 589135732 241410291 987954827 707430801 645001644 840770176 863637644 450271428 533852515 876730566 65554078 213403016 616343249 743842260 470801882 75336476 913253123 374188102 873596411 65782657 634156710 410975576 525411048 735602702 819416477 867053253 799705782 669685058 750412336 790826007 405340067 861190704 494335520 827890126 998665968 56679220 542532269 30651664 653284680 306512 619164217 398090895 256229705 924252572 141439538 325789172 128918455 792298302 602783931 399708809 533174189 293384615 81455047 794131579 642169238 70957255 962589712 623653466 707027219 980492040 729627030 242032391 857565029 68305889 988827808 665049614 27153171 755787334 133509098 994772221 41663513 185553633 915820414 247547539 244420796 882402330 909107666 520125131 50998566 237349551 874006376 9400698 346934748 773080105 118362086 351006825 300641939 744682852 674580653 917302894 873064352 232226933 982311101 700768338 295330709 163037261 948130223 520126880 126867169 934752036 380333041 33053030 257868581 7597778 98138788 832957041 89818534 422335703 484870487 60716677 564667035 198876708 249755870 440075164 910736442 884053285 204280155 494196797 900865705 648567195 164049661 863051519 288391448 948321597 17462404 327312078 885253036 158326005 753918367 277625337 783777825 149835483 815205516 236456855 363569010 615832619 779305233 361591123 570634250 554411125 542774644 682848250 948182069 339330423 242499173 380138149 454189197 559617891 708685132 6695087 62489924 561401982 268811963 940754194 866946649 531277668 990378690 238096850 258894028 988655928 9352742 379393137 579421782 110264964 512767125 26590846 484329066 417828369 36807506 360590856 778918666 351206851 926378546 749179752 913470398 174582880 470796641 768061693 302891574 971211160 292160858 62599852 622485814 601952499 587858250 23442322 761808381 936300359 935760194 22429079 497150072 570394438 952629873 892786234 341431951 737547146 780223403 447394809 928246492 44011673 91357903 303058524 769533422 617692686 323677454 540597366 824356812 548339875 241168230 344995192 892358968 214304939 536523060 367188130 578375229 997857832 783040376 546765281 461662815 299913283 123226219 492867253 207726965 241188594 327230895 750879488 867502188 316968285 432628797 67539112 785788990 719945188 630927077 351104539 199671023 720051285 655549370 654168606 331747838 737023335 427186274 753878872 47259855 87880633 387735731 938568719 374056652 695256466 656774389 436297067 451539987 356876849 411504780 573655578 818354531 585039940 48192083 870069166 181336543 698372282 366445726 744067441 531686715 216699747 871183320 640396115 710975986 250994426 18925877 285065332 709886005 489981404 343934496 434989001 969809815 992080683 553402372 123891132 713662313 832182641 928252209 977744116 696715283 734718486 125660971 48352746 788881075 442520594 778044861 500268948 263834029 10551067 614446638 532259288 713232893 337870683 382392059 617933281 33862549 465413047 14315297 947619531 409070812 890206755 730501975 965224647 576932027 835158427 52022353 121992612 898065005 924225666 226586020 909425755 294775081 243801995 745171295 908810494 86856944 830952277 854607070 293862040 874911419 635610967 312577532 6091130 507199009 434475975 981841046 656931505 756597552 911997100 975792985 714323790 767033024 423529095 119507497 138558439 170607641 419609421 630108408 215659886 267515038 78424883 947072284 553988527 865401829 545764919 906967789 422307560 175417448 462535648 826107539 813164067 462467823 123535218 956838574 157131546 34808090 665334417 676365221 621038835 654063550 499923810 599880135 835876645 476400041 326842862 705076250 981391388 452698303 681989844 14870639 397853735 691218448 994906416 105620162 977008397 774056014 61724622 440596605 601951482 787295082 590061251 290606782 404132836 828391103 254346108 132093437 566854991 881268762 712465542 206176639 685854758 726664290 769915051 613492077 411529161 761182743 181348167 9883893 806074205 811953277 835288529 343626434 467732709 187409221 280705370 470652300 164196501 47761935 430102024 664757080 439133812 229269445 650579240 957723542 507873372 402601851 23143898 435404478 819382018 689154704 261408425 455171000 51284510 946528702 851553985 484750367 169521855 326981675 866017353 47555632 994565748 862320997 550950142 589326344 357316803 636703535 787389827 386494712 191007096 837712598 725282638 25779759 205155517 496426004 829678857 210628767 984629060 801530256 782326016 679413766 724828051 451013747 739786781 235057800 156273537 985029091 224814876 117720004 40578036 843606254 399416465 619471877 195712761 199903535 685479659 858329089 318260347 793460951 665893688 506906049 65962203 902754242 964053048 960141685 822012801 870479969 525136627 104225596 775155480 632282873 97407249 968919041 131861592 590404780 97367594 624561429 704974281 283604697 893102358 252483127 203028376 1560063 553028296 427713111 856021425 185335176 999347681 729685125 974923719 114628550 742555375 475842217 709475086 744395329 571908184 860038491 243754144 880440443 598288518 112180490 196471264 585014533 283366709 111357587 325226362 189502408 734766761 643059085 511743123 71826272 735356260 645862695 879041676 94956794 128789021 740877830 719886258 337284847 285885199 881849479 480693573 208043228 248503510 915202657 678515411 238529973 81387509 488419459 926856012 748336164 583586241 85299707 976005406 621976066 908578982 835928102 691894591 673129894 232369406 846960643 104339221 820866122 554293028 198328187 752023620 644231166 951890422 70709310 315642716 213587519 397170642 246629385 452861097 936217961 990226058 964482009 517069458 109794807 633771974 699665926 172109484 553177514 895482213 629433175 8587224 414535131 841970028 690315834 538879013 907388709 139251140 636456481 456751790 146277446 457933822 785615314 704681 669969218 850326162 800273801 897515403 695357324 138250737 87551208 27838225 897518114 83541642 861345738 120171189 11249645 513327137 770480704 202313653 361224915 921172289 353959375 149261651 242416507 817250961 223392035 333982042 304169883 437604523 403695848 861226685 72455112 346915030 314236503 424182923 108213305 674406283 365541585 465767708 458569024 369194234 22961999 471139038 122975250 513636599 752150604 651901860 146910662 455442634 305796332 439652494 794318443 44308621 296689933 86599796 786616172 588722890 542103182 368288034 835262663 382146848 801853468 335787251 833305610 133541892 698855246 239783790 111305055 152148209 579346002 556060952 595139163 528190765 292167273 800178119 504882821 358120648 629487662 257350582 863072169 765839645 397491012 220260188 638737200 752253295 667440444 55713153 400878307 890354989 44145218 415252084 897993353 115327483 808181501 574007697 969172371 557007277 929325565 187303040 376056699 892518134 767755319 112197541 570102419 554525039 120652711 300361734 32521505 461132339 133917746 241638233 513972879 386543975 847588147 515216354 666961115 22103988 124157368 203128401 177826176 363651760 868838831 38874824 615208896 746360790 816018869 626973497 313095407 398158944 161885635 771856516 970940067 395756011 941165820 326073390 126359229 44264443 744940137 561552889 40827317 784424634 519321614 521421900 957196788 893318641 608977961 129815723 399752739 158997805 175080991 409827379 843019590 562294290 765833909 729745490 2297955 196315379 78089598 760124276 536563444 126375206 237980939 965475821 627562726 999958665 866004261 721748052 113416680 75059930 918859001 469040032 808087697 466185444 546258638 608918221 57766034 903572593 40508864 188217623 42526657 418857295 44701742 32402569 461640749 87265094 486713399 260877341 674701305 652873358 805980630 597625993 111366501 257189454 623651719 703334418 87082541 948605696 297144276 993996113 918674417 239419001 300507140 799155721 121867298 227700977 42126637 213870517 844675767 217965628 637326531 190202279 594744928 380487719 456082966 732757867 80817271 259026960 332169514 160138774 864717421 668593039 964395043 508312566 74622782 634055076 815836176 498726399 874838699 913624113 780656043 871798876 904693161 263467905 495635894 608690350 930584679 921639556 950963267 361406747 90397265 606760434 192430049 966182746 430239163 185429454 588381540 526859215 387607322 640817079 156744702 986582647 12021286 116837686 844088088 378638697 99782011 128461572 844395109 384580852 461895047 481215461 886337233 728752493 553912850 230560216 119514169 490435750 54016204 454584367 528126607 420957607 315042133 357540217 162887459 978341407 58835567 939059914 567490571 489985792 222095254 759128948 706321061 390953667 193341816 986056336 642549352 956306120 581007552 570778529 123065260 38582929 982581783 547522705 546717331 612990647 389593250 736321330 790148148 793982860 956192101 182130643 768776203 411998242 89463068 303250405 351520645 515966349 887962473 367268942 312376547 945709858 69033238 5727603 608139425 348600175 944083913 475782807 491694158 192901924 476977896 846509420 222430538 804361668 372557594 288088027 670394603 877010898 402955088 312966167 584141424 890768029 108778336 822402935 382456630 578266442 988962601 327236132 902555031 288997122 211068467 714154927 98191495 976436191 664779332 954592640 574692674 748819984 952094628 479601060 118642271 198895194 979536779 871863388 557617542 551454373 811875755 896725213 390597297 515193209 494824441 756143732 667919961 689674005 16690826 291292212 631224911 844182556 73371891 864560524 280146582 342931192 876271098 488649140 872606127 668960343 678462409 844658041 93835553 600481074 552220825 332119081 381432653 726454814 435664489 980622096 372291254 935367834 981418534 681235259 447522735 494515070 585018140 380124978 227847199 99112392 20263790 400061274 925408606 155813010 437248314 347783979 130006423 808372733 387927523 352440591 171299222 139396807 756256373 507786238 303134408 384573525 843960999 227889695 782372946 583326492 817089457 282349184 931142851 516599215 946881399 622130184 123568403 751339058 22616372 626160122 499484389 519737142 198626879 29884053 945091275 136180021 77194705 576080735 458689143 54896622 8394166 607403445 244486003 750165642 856834417 785425060 477705027 193788277 308408925 367220076 491754986 11804361 793638073 630443919 551599582 847729261 671416445 452019891 437025546 941142483 722651495 950635609 721072830 323084563 351153569 109244793 508323419 141980592 936695547 402172225 444764889 848038873 483681252 561228397 316432104 945225714 530564963 622055993 17498480 71308589 734755316 129509972 937910570 549058679 165821253 265509979 569316180 255047511 953916031 133389814 703138646 206712692 327264446 298493349 908745148 417945678 786833850 981047830 201263023 945760480 312490618 103805629 53048960 918983150 450505385 495074718 842175738 300592377 800896232 629069971 132883806 96019273 617329409 179992835 135952233 61983353 884542459 787863074 244537379 281712978 512657608 573577796 126499397 400112504 93743354 970260745 572158878 359852573 9220972 786982785 897934999 906700068 230207206 408317245 412967682 507774798 641460375 714752345 767404140 852765917 47791664 550713401 540404916 306565400 599402909 106616538 304724142 517577740 101269320 78616599 499580020 452530507 18582168 455311227 170708080 757983092 926687919 843695217 896167736 177940703 476838107 33059772 337729687 766486867 233604466 313399113 255567329 207018943 389341346 497527226 53882104 756717217 269998891 497860423 74560910 868554372 567156527 59718184 210175945 540161269 328874593 915837736 902863804 852712273 560321532 727994869 193895061 735285764 336336137 316514274 486377878 835726060 125436913 450844831 220599253 850433900 941876435 932116083 382812760 526986103 318162308 537479318 705226073 7420045 804066732 716182763 406165036 83157175 975976112 762587069 836264519 22319179 829452557 688828704 903370963 131801060 65208895 479321613 108785129 828856039 500181912 95852624 974455499 764816411 527660910 807785511 216210151 742543682 815480605 282457096 753137770 635973200 622504807 1098139 943837476 778482710 415882850 356512691 273091576 905515809 410055018 682976876 44789432 985170111 935980759 846730873 68558703 947524254 924602748 781508986 937786 403715271 885694048 44849062 636543962 859798785 504239906 569974252 16169102 589664538 592178501 666369838 307412765 832813578 302366769 741864372 885067899 597804091 79861142 844887974 840696852 148793832 482386692 93661252 270842493 906765735 201842669 407257795 875932604 805316655 840217314 675077593 165690214 244649290 123978049 939198902 18624517 551540955 496751831 396764226 816777617 473441008 69201168 216447976 182303839 820421979 53505357 356061392 594277368 597515538 678209494 279759480 87911018 840440883 335551666 872770555 583256410 8625636 954685751 536873733 298698359 773287497 648478056 359042359 153268665 426220410 507146092 728208511 860297887 279490582 324120444 38632506 516190100 443422069 679716390 328289953 519121250 35174586 147630582 381925357 682489173 806186164 812819109 672516628 570773411 723159519 354071189 466441327 384184373 972111946 874465894 29551808 495321151 886803745 706511438 820773784 905526282 985060680 258172143 256238988 356040679 333667293 89791493 527583925 827077733 476569951 103777595 61393109 402382233 156713573 443298564 784627209 924529977 108870161 845787543 39560544 655097735 911743334 739046532 733454826 897599060 30408422 510002950 752191932 837084597 271019910 436645213 328043415 5847157 204986320 238426374 544719897 379184517 518726637 782808648 182918846 696399445 475860989 235694344 617941314 134068861 329910702 191509643 270700782 953080812 390014768 704197485 257163728 519712384 655667691 194258972 533999903 266427378 732697840 449622553 401821749 632337597 458304118 107525764 802383802 568993792 922770666 758934395 850626733 653511192 74931196 427849068 105150084 948531251 963146700 874047221 230711858 291457879 465816640 113447649 117398099 973904875 638771735 632129641 725391978 326760702 533860622 868841161 486064817 367841664 928049593 1053625 871730295 548982229 310280695 240799382 962017294 551381662 744412306 246130558 68986236 866542804 486457602 719265077 85503693 504422707 897890767 185124512 501518243 83719007 780884231 886400410 891052619 964727764 589565683 400515221 499633211 581369772 787058070 181115340 321785782 981498835 778795000 200406414 221680361 855015347 299704373 559437071 171607703 800333693 463481069 903408803 510236522 977307115 386821302 145881062 560144886 515604352 150446340 787524458 411761690 497367931 920653963 896392849 793117075 75273529 473167522 445557212 886563839 676554094 123778831 107654152 699298819 681814242 568165324 380407850 721546370 973035594 773954571 401083890 729357023 589767805 589490861 377261069 53145494 158323168 652087186 725068076 229023395 639990626 390905725 624540469 136668626 144394225 513379118 76252601 700004885 311994992 759952595 227765218 17394663 611732988 478323517 510305818 971156524 355363809 871918765 35810334 461978992 147827667 242222440 531486267 983231992 443284838 642230216 51958330 965061008 334472932 430426292 137030848 46575187 128890348 174251510 818493270 607866414 481498846 412899280 490117422 271329168 553599508 529353549 666418676 942659641 557028399 741546056 965043915 354770436 78510136 180786194 197345437 361034277 412427404 366373288 457002148 276314848 844458872 431086149 976023706 129497044 59841971 911899131 625752341 489746702 836805773 976881514 956622336 227610697 494283097 265377682 97379036 712003356 590194155 21711656 43438789 958451185 123709778 300724080 257984189 238228174 779902409 787302060 857083549 974290163 523081560 340568258 663285371 553197056 707184881 865836401 10765392 395669097 400581203 860120008 936174501 369915878 18733489 338700598 842224007 46761693 775661437 309775715 614927588 185279573 871828931 308150378 100303981 919307417 818107215 135671700 273624415 195642066 145184770 246182118 391037094 955594081 796323814 15507257 643345695 667890075 288520447 913741194 623362609 24952963 344432000 452605282 443529408 880817183 598853180 136460925 461116287 361950528 617192021 270699206 242106798 207293389 840309784 78277495 123267155 301115835 313514287 456323347 748142334 457965896 845350465 107055201 668193306 965226996 619601431 529297757 853176455 626437290 180884763 78520191 158451503 852964063 937384416 747808509 916603369 345347293 665308368 308419912 231546987 21945809 978814027 206782023 698870485 824876861 765056067 84856330 315848448 998312196 812156433 196041117 803665347 578270816 99227680 110950239 618355735 442786130 739626345 851876063 257891182 225220428 465390106 946724315 151974695 841247246 108633584 114637050 481719668 327156154 203577880 766541002 695155607 418567396 166283907 648955130 209279517 793223460 175818573 302122229 445244161 637836841 288506263 463111962 280983419 568909118 157164004 858303640 227268114 272854645 615611770 242930461 576643493 15658321 960726378 478019048 16429359 342536342 330514713 640871685 225762438 588306867 523335293 912640827 606533141 508301878 728518360 404270585 170613366 487114615 514325552 12284352 580201315 590176948 70521183 81482111 15547788 467699185 27416952 293229126 751510971 308135727 623035888 569589685 307892402 612510204 198599112 698540559 57755284 643673010 152578064 697964041 331716759 967585478 245492425 7221830 366521682 170014660 900464015 343232026 539824619 227744684 110557072 865140070 788400422 210695411 189782434 768887863 498647179 355959347 111920766 964016048 764888182 793451088 528782656 44486042 860222140 436668177 708033087 31086759 729343646 859549386 642139319 297827397 374924671 533156500 339428378 600256670 652546862 953411631 718293512 557500158 106066515 234839557 6874442 309594838 138741487 697261888 764765040 658896283 350292659 289403582 769287631 362807100 116114401 329563391 342282637 828814823 105955745 728867372 585753286 61259811 244198093 633702445 994421219 76366315 705742093 349355151 535820768 839785204 347625509 774349390 893360035 674917537 789597762 369930089 215179588 452763002 441538437 357059332 336816921 607145421 387402023 175169634 884761842 140330723 798196717 193244276 388289215 652070035 551793898 765062569 150063401 944003738 151874310 793465836 185949347 858420068 341493911 734837283 565122059 24309150 84590327 861358372 994631272 721459536 283245735 576314868 799775153 204089005 718927365 6202120 277648842 938580161 594888797 62594039 912150829 825295749 127471830 776120908 680395954 18215489 64378236 290277812 798489735 270815744 180810180 489241903 659838747 390821191 408432653 786705927 726370544 941181621 231295807 888745246 468127030 315135061 128610157 462323824 948135515 171770538 23929905 530956400 586651588 722934760 84339331 986103661 901865584 104759488 364510904 267437943 484353638 73644375 707012355 6152018 504890422 897800541 822540560 852951798 134329198 602633848 7527766 164430106 147089745 800411720 576095073 888937969 212116151 390433252 896156009 837953154 173393021 972089054 878619902 348929690 619071825 49504647 925585619 255822726 257434260 872190444 611459739 57977895 429995137 90206750 261183465 976594952 664846404 168337623 158988699 792904502 419748489 738977332 837452666 21479435 670454077 209901279 516891590 298295897 457493527 732106742 648842432 572782273 933592418 845840942 667667366 482876007 860777488 592443823 501055729 12000385 482110835 701189714 759067789 990227011 574685794 395470840 113350697 743600874 188035697 905926044 492146438 453002826 793053575 585114382 802490041 284041827 121945751 521851846 494929930 829561282 77703749 979289639 636262779 430327686 626587592 655858877 278266349 989949030 437457443 733719546 706745208 840367970 544329160 659987841 668592598 405183437 45567926 918107329 301990215 933547099 437542482 18946974 396447180 404449398 160338967 647156585 839642796 187494454 272153958 198181543 986717942 722189739 101687988 760358934 579008049 551690430 274403712 26751536 979858235 14364806 536910352 28317074 549011678 109629704 748799715 546093417 491932581 815872238 744074251 668550132 171226247 626038842 780835639 145539404 562361930 7926737 904555842 173462940 420674105 87098861 651824 222400319 882808025 207923542 374162510 949197016 979121205 191017787 898807192 234329220 979567356 863219353 513609333 744582749 435717282 915660433 1282918 797092063 425155487 338094187 194007457 379921554 152910173 180322395 557579591 459668334 519508967 651359256 81600590 540270040 841791014 317720292 905776796 102408855 889371353 520105942 241396890 377461300 455437196 544715396 527211620 405498467 87039712 70628098 748469982 442187684 905567178 753205396 466791902 309193882 413416165 629494156 125126414 408687232 307432371 872836071 987819451 36977725 475566902 544983462 179698590 676147993 68620844 13393864 379507828 806917618 655217768 863327491 316185375 475073131 891196426 338691261 688660736 173483243 660882264 290642906 584294536 918994598 477365085 528393476 446266725 823731255 498146799 100935810 486941390 918880815 569255595 760160779 634892686 450432374 668285286 421789612 613874279 559976694 517594533 362218140 427628811 825950899 793107034 848432672 953486288 975070518 280628302 519135359 844943766 330333347 458015976 987764194 499490347 545102358 476532992 389518577 313684410 654506569 593051861 716931883 989076175 208247121 491315636 176862546 300623803 436084281 563052887 939404807 179786563 620474762 184477296 9963139 335591429 783316398 340571018 804277102 323447740 757963198 624718603 418922426 538493231 819271980 230190978 630508512 638689912 853201726 720665068 696572679 563338460 269035257 157507955 907430955 623243209 827304214 654723973 827870522 807818318 181343772 94872540 68989618 983346107 181794851 828253488 548882733 430685764 561454666 956746677 579636244 175441058 484216125 839029875 247828120 639408566 204489756 897650414 333299260 337983655 468686984 351891561 406323463 978216334 205810184 482456544 700315121 719515853 182063989 574810413 927962761 600468263 773780190 452246188 474352179 945912193 12233352 803929531 488129286 519816595 718817881 860410953 567900715 518018945 96671257 191667266 472940955 577649761 268473721 842500670 607662392 730666164 157815040 72451254 588246375 597493304 515457478 976203117 885730960 961982816 672646278 822046068 806845435 324243727 35621846 892137978 732359719 425407 219621958 101481746 651580069 556872022 538640176 343985229 652395762 671670241 617687899 223522705 888614924 759859226 359036291 304938478 944953459 269875010 25049805 840383289 936886283 818934915 50247456 525748587 313952893 733117287 830478413 558481882 19440778 827933334 718352138 906263209 677095460 339826698 115781621 464936643 350154002 734848 748965146 752346062 872722287 723681358 599921495 159573097 655405391 375228036 385693166 48552136 767171719 679477898 109406728 350167661 947262344 511856913 110946586 156404171 324905535 200804811 274319163 714531337 970913769 168816168 510320442 842354949 732591874 166552116 236119488 599864518 437368662 35786844 568040316 897325283 447999465 298704027 428484813 426146121 575064298 759322098 336904399 598086038 184037682 702377240 709518223 734771217 682572291 4781609 680509494 75148572 721497695 980691033 797644008 374722421 872186376 318439480 174176242 337975810 72522131 91200016 675811762 640041235 209532057 491181897 491382503 459925188 374090208 368826241 871169372 794868401 281338209 424808509 8659089 615096448 517480504 324459877 469175633 686273117 683547351 745904896 813645962 740821194 345963127 126700339 665422521 742812916 404109469 727381408 940617109 962864693 204646631 584012294 569630374 319959713 708245971 556265925 108616 974872127 736757144 102147482 997846995 221405577 461193490 415078477 715664097 252381009 835842011 594780313 12264680 897918327 125941499 449661742 480134671 412209486 762359578 745578171 681135250 714423296 767381542 54416355 664047812 2932607 836871806 759312372 350764588 477543577 697980661 784322202 190184044 505582214 614191407 416577717 940941334 471893156 853036740 163038458 89094708 983147873 559422457 909380558 849814337 568517467 946383669 481647215 234641834 244710957 655115990 434972058 513670208 259843479 62552752 152197892 623775656 562307064 291533225 408231498 869594513 604622865 446920439 201096929 17311014 768431067 105151077 499685785 920809629 501405596 954969274 994374618 940890117 226313922 917047373 73287608 474244887 267544949 713929609 854063232 499003961 365101152 119044028 373349673 320846804 282618339 58854017 459552625 694291448 839208195 225247339 248502106 970106568 942389573 70873732 449311444 894845321 319742210 999145083 386939892 281394406 774890576 809705809 787133699 630344040 47077102 624909015 917945930 864215303 573044753 488880819 627999332 161835081 277962905 494104257 59703301 54079426 537567993 822374979 588105035 708472959 957095118 765267173 927901838 243444096 765275281 948099178 22433735 367505359 128774304 266449199 935617928 73046133 410468355 988689025 498129470 794340682 933316857 822955361 418699965 846486560 331374792 822293172 112529086 651743529 730753182 767944866 100838748 839196945 854842156 46297572 710609568 187078038 454201517 364727337 956591271 576839691 141885449 600793981 32282040 705959186 49415354 587975107 441997316 547986674 431653424 615187357 510542616 435392416 590185672 326641235 385830696 969195263 996244720 786977641 96268881 998188430 924573054 195471161 730549684 534432455 29414357 437782960 656948212 12898419 552903739 847611846 717145154 519439961 439952633 562934155 530902791 409461419 805553193 175977594 432696810 954116384 678363956 72026563 740236467 4107072 662035222 515123853 542464302 455331417 347039348 299904506 494490560 874847409 315921898 795021038 14437990 624644988 316034274 470915653 706200872 824714200 421469989 564142160 754314110 599992276 637646091 113142814 328111277 5855099 981244189 147041644 267017396 792750674 573141724 606275860 426363497 546886881 500667411 779099200 257889805 12710966 778974138 509851119 644061537 205938189 343832789 951671058 394157949 275187116 451537218 295685499 448254013 549882295 586001190 597143052 197447941 25561707 162592409 175669938 168665594 440263951 859212958 969524561 795677937 282376776 790935491 980603343 858517982 456461585 723189038 629897476 407196464 35187603 323133273 609744795 894167645 647393454 628016480 120280660 356134374 672361201 261062946 392563720 459682791 958522919 659112332 667656457 330392285 573158311 631555573 242572801 414622933 425948141 860655709 111183132 436900239 535361153 477906903 118842422 216401994 249101822 142469760 483276472 70510468 243904613 867266294 289707 921999487 903908848 922011914 459930496 110742955 220186690 514865100 12837734 160482408 93079958 495766049 731665173 493048146 179908437 799659631 690725280 847120875 604579513 823398443 66296309 377307025 49280372 85232456 144574335 576711645 788277776 29087434 122181038 791907905 589502284 787635053 69641407 74630486 402669179 198260631 319417766 177932225 131204838 458219140 712049235 554178302 320171987 838106857 857257153 671404376 227891343 355847780 130154410 476639909 787690861 503090659 945596040 567069103 618453090 935691491 267804839 757028605 194125906 966075915 840804032 901405279 425483388 942566694 500914509 649271788 637577426 95328996 334510991 264442833 920713380 992879709 100378149 674909893 495728534 335494703 291288058 568798703 963262217 762650984 433205150 280862076 637033652 732776451 269424150 226758464 704341642 546064018 104276518 560441682 630590809 741061402 476120404 532890366 537242028 87449698 597983619 10094524 817092909 50455903 990609471 572580606 651056430 851778241 24785722 562694240 263181031 616904090 40748636 187993423 737099153 749461408 467563488 121686699 541951411 1658734 170100964 110382066 474785849 494944813 113327356 307621137 915802785 31440217 666057357 699888950 749310736 65206674 264146377 653038207 4927143 292780913 268271595 7566736 191436932 301935243 137397177 702932078 670564255 369178660 46237064 43712743 235555409 892269529 246942661 758161799 858298390 183942525 86184700 286405176 2844290 596206534 75788687 648614275 243282867 656867854 475797494 678457668 569448021 489740996 13386260 324890699 515233787 397393571 861171255 288467660 90062473 97301875 883435884 479049416 866576824 890160071 96717331 843139427 552551338 288687922 956929767 406339389 705494763 642277367 185716156 458700875 40060831 521864346 421735444 327776155 762264387 632746329 153111619 985771684 528851140 38433689 895510769 365480174 834816576 556689747 155080097 318086449 53879758 588459679 377022034 285945495 849630334 373139379 87929889 388659224 395184145 359349633 540209145 673850606 207796335 636452559 736020619 908052023 378531759 336379598 565445229 467160365 630067474 185184015 125772495 632793504 179772269 495325059 539610270 849714821 165908683 289687005 150294470 400840862 806806346 308512778 708411983 252806428 146012739 10774261 304591668 445622912 936936608 502207139 918660026 343479749 786414543 293471293 655522681 598200935 60949463 550810403 977712858 950842855 824751403 613261272 491105849 498114140 164730731 944891763 876259768 582206946 858363737 974009973 83830948 220895244 29599226 78422008 512811857 86048032 106293268 381245494 629318432 269837748 826797426 822952786 811468112 621896042 833710780 616198172 529646761 357558316 444471892 147424390 489506665 468564399 930729823 859590106 546483349 153012905 186050418 410664150 674761178 79382293 910148876 633657039 510974524 554832807 4115103 347552494 819363031 459194679 357677543 845324846 150547195 500609095 501933004 403797554 78370932 988239250 476240135 253679277 976421494 400706523 931411364 686204342 581876261 40734931 818138816 572749642 499032858 659110061 703784597 640103948 200680868 263065211 121711374 615103260 471501867 241912256 951123265 721612498 948064456 502770462 172839568 579731846 745850869 423330638 291084147 346325952 592039861 120013323 706476633 692101167 617680154 452391932 313669101 32595801 557105539 303794226 513356574 104146431 729995481 485894561 416547372 541185416 517187276 649507434 175481292 383013527 632799913 617939756 427608973 434518102 169250141 402136105 628959402 683918672 410373487 304927699 295050295 435921803 898956215 218617947 721465975 892195109 794137726 985433304 648081335 143688613 234202265 689910489 692102854 516056662 480434292 739125790 138079728 207726297 928969110 818432058 173320090 703935430 571074157 659580588 735245771 53867173 934840998 917377630 117533900 128681297 588184781 149763596 207833918 522679415 66810327 388297860 685523744 970941356 418140476 952761135 515861555 501232423 874370616 849217210 437590195 987634806 70387326 678697428 723705554 667461215 982116181 289434695 962930139 968913801 928331193 494356085 400958453 409622155 939725699 273273125 659495825 975458736 161198426 494877094 493316553 543136536 649327503 584351944 966035871 569368783 816405580 481592628 87775050 411082684 254897559 64065366 301514792 849939870 945381078 199456028 125097845 884049331 546924176 780173417 358367344 948637044 67395129 627446610 921582162 385224372 798004458 563438374 177486432 549047058 492594903 574251319 445767673 63301507 101294152 843759256 525031764 761075928 427725616 754760091 387194478 578516988 795689927 41561807 876910641 909299801 460124742 639372645 890725527 876645914 455025892 319121441 448103620 226674233 113129457 686638647 240227100 669850371 805582695 321570026 743012824 542955852 335190118 914820463 426678069 780580162 204709635 582629330 602381198 367015966 725271767 892952973 442308801 420779927 570268052 140487419 71927751 418864626 932414960 347351403 355430622 340193104 919294299 504746922 261936120 504120992 45838840 614568888 577356192 479969451 112786956 595010094 667522869 111349402 279424980 968149208 844515550 124644344 200486875 329964393 965015187 447733210 503134922 869984227 83582721 675421598 415784139 30330929 834611402 155346056 530092718 141142223 250103395 466018469 298040895 69278677 829791616 648308825 677112497 570524645 745835989 844577859 102376927 152351604 566836132 279525474 72110930 40183586 823255526 91463718 776599452 187540746 948325823 81594291 497921722 214037092 347272305 54779298 911001130 338708649 865457056 783279321 290644557 963982182 448013271 366070610 862079256 693878211 325635441 505734777 492908413 796745680 794265089 365056070 67198245 8973392 243072417 311046841 200181931 907598439 86656915 269842054 30356580 255899004 817802463 657137472 913845704 557815099 77145584 273105944 581871601 492770515 220788841 304683545 425213506 720976759 570200159 291433728 994307333 388895262 833387670 108200209 533224199 776341756 850212176 518682227 260499907 898216806 534797095 975032989 242531356 827900324 7415465 249814672 609336606 110928313 893343489 173207418 401201250 612276913 91788972 607463535 966440386 543914975 101179594 700961230 419257185 370461858 148587181 352216311 255034077 564030245 542892988 95305959 345893960 459616873 293312745 358035602 200670746 248317253 926993715 202979218 635279123 325693403 414046138 905568758 692651470 883905892 946367802 850263638 894526350 882215833 169140099 795711157 603882940 386978543 33700492 340967817 804291784 97619956 646582746 1684719 554962680 216462001 568187050 300067690 783460389 274745698 673462039 189583701 837801380 552706658 895035393 82797721 948019576 873876172 528140490 717962241 665384037 385313025 781596577 721162537 438261211 920443751 263575463 782702820 838540758 343316546 739667243 498424294 275064126 7058228 87575243 319083262 361932985 306984060 489890698 352400375 740627915 354735302 159646970 655344896 588302077 604818711 236195473 200699902 342690251 232266624 342318771 32497321 779903219 243768781 535695393 450490355 397639409 32010050 333901138 598490060 193433450 563428186 410408660 491114947 147169573 339595529 655087406 915608061 763592456 437414421 925695011 982393127 617339598 100024200 255098285 888111565 251342878 536284326 703367874 856916517 963219631 742539637 514860394 628188473 299234352 168245194 892219015 891857770 705148254 216632298 766262095 325016817 12395710 723965783 585110432 798379283 546990563 668585725 323937689 860206196 307548764 199841106 865665892 163796082 662739384 871805446 268138739 171491907 752733052 548876359 649766958 989076277 587652460 591515760 984719425 466713478 419615873 831741211 457731027 366509789 966565440 109642580 950452401 662436747 42570268 311819644 771753602 891570848 784318100 960544831 608858317 692735098 851865675 579669911 877955597 540314311 606224792 160251240 644271072 234353065 717615043 130313305 657619810 261388240 703589404 800678686 454869742 966717706 827750816 388685931 955605647 305562214 70112105 124643713 664104344 103722827 253593096 352981957 183463539 753286752 776459642 458115633 44591711 863815421 28543307 839348416 932598368 67296146 909291800 57497837 992040874 553006176 903139317 863550724 954180206 429024042 623927017 591492601 446958877 482764874 272910208 463713194 495754782 751465892 92084169 142472469 165296203 446282920 869279643 419160508 852686855 139634284 535939422 32463734 779101370 325506800 785910450 368237485 434543526 824019109 393955893 368311934 267627626 945215574 936845141 865403936 22490071 516299316 560608034 876039625 878984420 891427119 694071207 887075730 785091033 644138896 599603568 56543542 192737562 223873757 131451009 136326280 635814200 882064347 935966373 187802705 303892545 784988129 605061421 22589309 847762399 640962139 987107395 963225510 664222798 22262933 275238444 555389669 919812806 900091461 362615003 965027269 113079576 731237415 745005870 635467398 698872705 677577157 355680619 801787948 655150597 546205072 100865938 550303911 219209377 224319245 865149025 139689002 682150114 930448320 94464983 175074999 828187016 182171689 225341377 709899064 538510504 325879898 787522227 150041499 204550793 730121012 371022947 30983392 536270319 846851590 851994044 776789472 630698582 16774845 735975078 325209161 793049926 184195015 425384209 47264559 191732866 639021625 976157525 191845411 679164537 569524010 699538999 73041573 909097196 460129754 344806551 846466400 760388085 275802571 958886144 667440089 559550588 458009659 738086501 364456203 402720838 265791817 331670176 242357102 624487424 374408116 667084510 740157696 324510920 947895854 536080360 247376161 200211570 612373605 880551467 115373522 281013914 32868729 127219172 907328820 307410661 589295188 448389228 605264577 276697388 468349193 973894026 561703397 69926950 465810805 493275354 608718777 168599503 147293448 272821188 470647420 606467872 919861339 446208172 126685371 215796499 492429837 111889158 440424401 514092375 31621885 117043605 608587108 584427659 725804429 51624793 553423061 880176242 479367891 939401050 635952691 678553094 313456650 67415185 654682467 998872774 612956073 497187998 487495938 205974879 260529000 436711177 936650601 792396823 884190641 465022254 932227107 869132855 822438517 51153625 337625248 434951231 258369230 230697675 609820351 668881157 999511255 273121706 840563642 338144927 794853616 905562896 227881030 505691244 875034602 872854717 419174204 57737561 439954016 746040433 799794694 526932094 868699247 845326032 684323958 255868109 816988046 77861295 508646815 337386251 573916463 916534946 582478103 586673990 25828128 45547293 796548525 703167196 489121466 983206125 856324214 194979802 776551574 767248092 880276628 555993917 516937027 952561312 244020156 70098792 351728966 139376683 789336054 760156777 35928529 210459319 555752644 683533439 392083095 960069801 826285578 174451349 419241904 973754905 529776056 53362641 421634594 303505607 82770987 131350042 911691745 824297959 259072098 191103877 476158670 992454927 88005918 43098680 826650377 537154732 881573917 420736955 648063464 487848761 714123411 452893527 871024153 49002197 40711141 595985706 152597664 378562155 543592310 886417970 985473179 235204229 19973131 614838420 989796586 63531619 420859403 193368742 731606209 231430531 312735905 834178355 207214675 28827373 719149321 869426702 660253226 896386038 728260425 32639721 458791573 489057524 415053386 619702196 391750518 650022459 192163855 104961166 648554682 821395008 249923413 819352910 309451844 522380362 199625172 16146697 400880438 221203477 779381224 652990125 576391202 72537932 110666516 95273115 986013550 461305204 198960007 244807281 677424404 223456246 960488557 20282766 164162312 571955882 410039502 171243771 556892774 182201559 815946594 785136396 55534880 320830686 529706102 793079826 630436336 679822182 161416912 484868820 629138973 346614002 265998466 216950756 811706888 340233866 820415124 699209855 560250351 817375507 792871484 535826750 945149943 200539860 366018361 665462158 460757090 596118381 137382857 957519676 742115255 23085460 702338290 232506389 345238117 866689606 353452215 545606220 644987429 808345417 239431476 203742341 831132753 146557030 856375543 735380695 215247987 265734586 567097016 476401152 491460184 97269042 961235859 193567734 218827182 685371185 624080569 739346304 490527194 476735777 333512331 416862174 382645208 642123466 375142190 564922385 551949148 563350969 349770379 466242251 865643872 525131111 29924233 108616702 319643710 436095726 48965544 90967949 101054326 682354648 199890281 611673343 727562295 345965868 883982382 714276128 878401466 9900845 705451915 237517687 314334549 562785829 312519848 403945909 95440641 795324440 966820069 785168744 641662636 405972801 340579490 864965856 309627607 391156878 493358752 874679584 448482583 41664409 715830313 893377387 351397279 273666764 222691755 346927853 978062809 741112091 352859482 982294827 758343521 150755090 936601537 454578228 796554165 782761280 45147921 981147471 128891130 655130603 595343812 811275413 695111650 389970123 371247984 756050909 525828103 52883199 135085674 38599608 903368445 81849846 340756933 618593799 538377096 212009956 883454465 962391498 177925015 899538237 165428553 652593273 639693487 303313534 102693989 219124674 617488861 666761895 246387117 550734023 230111131 793339695 448336843 92241911 108376779 204451408 2730388 938163614 666751682 755151100 103375973 138195769 226004445 394755537 510815972 601813868 721584973 347430934 482014719 841863941 348571992 810447397 402463871 725470468 901737257 413191171 545943409 474195731 324068987 722805294 707486429 50450116 587426364 156284259 310869485 569343240 391676166 664787784 885238433 767657984 882345168 257365248 803438892 146141410 293459620 574578818 124376066 409731949 895704288 282808660 812653847 771428722 777243682 570837753 572433020 16191905 13750656 906607178 431185674 478106550 266796509 567445512 915742474 343276823 726203310 995207127 625910955 3663656 257474541 58782757 119526557 642357111 83382897 36115950 646254187 561895363 591065495 40574154 376473861 82385132 913973483 443049697 173541588 613881399 331928996 552328805 958971986 904871892 763119098 456102603 558339821 726504887 652608068 485112663 161875821 275599628 168834211 911691267 107235552 430998122 600246179 19677330 933117688 833357872 506723016 19756620 916996987 802988887 53403236 293403669 643172078 258131162 36779020 471528693 912960942 18020025 852331552 882098953 265912993 536860628 253378020 766611930 63611201 116306718 75159275 410248232 691188683 742896310 812976972 291971101 990785231 298818870 417998467 11033913 917233091 161099587 686451948 974482591 549501514 599804351 439583723 847821652 736546465 644431572 567021279 566116152 130642496 51402216 639068916 280503426 146687537 894689370 332074001 57707272 864796626 115624205 100404822 331504761 381476405 121888750 523911440 521825566 798763042 643214647 350495549 372174130 675230595 552090755 517706091 871119146 982774898 78730212 331274248 183008353 485002406 361254271 678292297 155788710 687299045 970284100 775180688 235326039 753001541 955616755 538742021 599436620 992951820 343532362 405098518 921271547 776420193 854161630 266873115 17654671 558317024 588266431 710774913 240972610 666612799 426129187 181218470 515216766 332499678 603050246 912138093 417947168 266433855 261270237 713335924 700172877 303538485 281929090 360143375 314716447 825230588 578416967 843571391 2421837 395314587 280226129 790529606 609527526 168041310 763459116 403422811 286309852 811620472 785348135 229969690 892505928 141796965 777207893 22370385 365622691 327987598 534769608 478825936 743208162 330018898 34523424 185530051 25030434 145648308 794134997 146514351 768857272 85030361 508130637 945073098 250351238 941878713 664254562 644589127 616682753 577295331 739111602 992047976 127883274 629934164 394561688 511869351 389717787 650689550 287323216 546314038 532836374 666872232 948631787 176455304 79505303 955417530 191457876 702590849 533773823 443215435 100752245 793085028 309595816 695496845 119604166 735050848 47599477 536422438 548000103 633729529 612280253 459741554 184047215 403776388 496873718 594537215 666082747 319710437 611208473 742098356 135623878 764312296 194232225 334322713 106801763 855747700 275452208 495633798 954813931 693544734 545709592 681859972 680257758 370422205 45518061 210202602 888394361 927715106 458689405 292791324 125595020 405572735 426151213 152805563 600360589 798810776 779238185 403646823 167948944 917992893 543737260 14126469 383844075 566441085 172586026 894894914 855033963 386542307 980722191 677627540 928847779 7590366 212074361 24816400 60908239 716597177 417909640 918388621 122030983 635906573 128709664 830141835 261897081 880737752 391900031 233458762 285894290 823517396 224647107 976889687 207158619 860120126 172373196 648723911 794272937 377665974 950763773 309842719 420392928 168940371 526896506 872192069 163145941 376167232 224443522 609299610 196718979 395736671 807265826 82823753 254716594 388183930 381712909 923511769 202742752 114828484 558882542 539072063 103213107 3190391 682159293 279671110 484219749 407747692 972321288 250145597 796873142 101571373 303460996 392934543 586262234 874208330 446668984 871812325 12125768 405601772 443644344 231285397 466230335 11806517 847789903 640926791 915028672 324175563 758115675 820115683 293299879 706407629 90027815 624487132 65500964 658919441 293712502 832036066 124053794 8095606 739815657 776995225 567589761 772309092 362995552 215832391 820586130 456550541 962539411 301115796 402662184 357463801 85387228 999208032 427532590 897896369 496307964 841519117 985778417 521373532 691387257 916616456 404791085 607894658 84861856 494454833 62235413 254425908 894000229 24418706 31915805 623540402 451770040 733981918 394510912 862749527 91668428 289004026 90168977 485317249 552850106 821797296 211284590 580016864 503571853 119903687 704477053 86149095 804497875 345209137 140759509 212879445 93168879 924595797 275192902 366310363 115201257 2204002 880845625 76506585 881765589 62548296 726893316 98825345 741764213 632545871 562815519 363512542 876233437 186478989 351422666 898583195 103937967 857727075 665752316 747967587 321524404 538708604 775696981 418797401 203531197 561892206 37649164 27687845 756185235 315559364 872631435 758495180 767107579 156936789 392274687 998191182 52603326 793651501 488359459 914257106 435844168 254302539 423780940 725317403 465614283 718038693 553131853 76403198 543746304 943753453 847483404 884741729 86089208 17487064 483518985 771261556 825968957 831605971 493730805 29385318 149985330 294335726 611283705 347350446 633287037 319907884 282319333 221119356 829065651 471413851 899312396 365788384 728201585 420674504 241434183 627302248 700412449 641393391 549128354 195730058 991084524 875913144 430542016 819504452 519273046 581332695 749939393 834584636 62586262 88896374 286529922 972099900 343267460 360191983 407155864 172107987 593925474 914346235 107631325 262628590 796411511 413877837 671303809 438484315 985539305 536782692 822796421 981490571 220781197 318055771 781284431 841085535 956076167 740136648 134936560 96723740 857731631 841378171 215974554 886999422 759519467 244767202 370077204 816385693 279392142 325340174 967793445 787636100 993619864 142805375 833830272 226464450 67998784 108138244 65561230 326841094 969201951 974784784 856386860 507435095 644009283 71170723 109365723 85494310 467160070 745741925 502903055 279179190 670441750 805383300 155010324 835376568 670360658 416782228 601821458 800070063 97637356 924851826 401824128 51983889 310467078 676739932 663433176 905518926 344171546 795781204 502247836 955965154 384210503 559096120 639315477 246468378 680886172 659270962 718470411 275078119 207072872 520392917 707749904 206188207 89769709 689496529 218732232 622086602 999460181 563526460 720417766 98228 626067633 686098218 637042322 190537871 462545860 117596165 940433334 833798645 247510133 732559320 554631061 858045451 280365133 796695 260657975 651340959 221281002 38180749 208891784 705870565 402247479 845671161 685308461 379362323 316408577 134919300 514974468 724386589 582871413 373742695 513521547 277700544 654519062 178694030 706639744 738544029 389350834 285896995 351688659 764355390 472146885 991685324 934522243 982419831 582943959 72362821 908443690 525082060 849758901 749996705 261872711 817058865 93980196 58429962 151702272 421195070 549726877 966767707 742975133 106521819 631173363 405676630 742488294 185210149 218356934 731279806 947704270 411119705 414234372 541951414 724225733 582409848 341536028 887670206 750004943 463542985 925353799 199886494 522475001 264467451 829918274 933555170 548720411 842419666 277113856 697340740 65772507 505804121 929202948 270177425 18807819 870274797 608164967 891084219 616886549 168186610 252426744 497527138 358975966 770449879 44978806 405173731 191269049 201084144 873934594 413910906 638289879 51871293 848380257 231644753 90896247 584096835 383683944 372009769 229528448 165465865 757512001 721152507 372575571 688295013 290580786 734662486 518528274 317226290 932435924 884258808 986620775 260178176 650703420 407670755 532661798 221251134 508369014 848255585 319937133 178848092 881260668 503474733 971688795 639075226 560166960 27125579 863381803 850469443 413216730 209755222 875415836 116036755 318318780 936271239 331669178 929815139 165410943 982130413 630615659 28052572 557329975 666849754 665378872 314917840 71791893 902744361 250931263 444592804 905524961 34019528 222173996 28286048 957303394 666031390 979207633 578377583 638097084 454122333 391234267 518838574 202599896 911085177 653347640 29761523 877746819 285821108 714471309 703595503 933946919 554936530 332832263 112949179 308126139 14067214 378514307 931231465 939218035 921033883 560524308 44505165 779079295 918573511 601617489 338874676 685811732 364316200 631308423 276340107 656621810 597910165 648596537 150251493 2676657 901219544 265236296 981261083 851561656 533367904 231397405 840797706 380806813 868902082 850247009 520647549 11230465 417367670 16336480 101204017 26975925 724904442 621993274 947478683 243764863 657573327 747642109 957151480 881898218 975593241 502956501 780551721 848064432 542554555 618368121 573136533 930407611 444182956 945434050 225177911 965755764 413223502 722365934 831619288 466984057 521889985 44191332 529550621 716501565 670608543 903873683 698684494 855358624 825920394 577067152 843746124 57772812 786318108 565999931 984451683 769806919 201660446 21864072 67015897 489325512 699583032 644911847 222497477 41170274 492394181 799160646 71008973 976361536 83115655 980546010 266721656 446318219 940661029 414090617 364310602 893064142 169642920 217786964 699872938 201131527 210727656 234736298 632456653 789284968 159669382 307737652 998599099 485015976 355945943 273462860 650373119 209585437 333775449 262587462 170498528 649880783 192161894 448326934 979194546 109517351 194073042 579751955 667491330 594402638 339568234 557051576 403454469 383407331 907838397 666222036 933391117 236886201 262113772 539396821 927598680 980536408 894588560 649400872 407020412 42643356 762877385 678998105 255595659 563095275 363919792 735212608 737947712 658810901 258798018 457774349 164845472 984291834 925754599 23651865 42199018 711752403 89075365 732532886 848700861 702373570 140269122 186005262 532215428 426387540 887649591 712755281 727080643 732564036 968384654 939060897 888187282 20099032 463962243 672213672 341340998 194392816 796321741 320395313 587450395 275916406 485516709 135101855 389224703 209359845 289968802 384408874 94693325 573499716 982672437 308584157 377352554 161531365 16299526 32761400 900163151 615031769 686392822 845302519 434519324 859637807 69079880 121170879 547491144 967837925 960119841 79792124 948503658 59766270 194995989 155497511 108739230 285046020 644885079 812840 604669502 436559270 371427591 150716569 21409880 476002751 211280104 396168894 60913471 992663588 239512693 103002887 214848301 830111796 289378698 683908782 896413399 311073121 296766302 348342258 818271061 73712758 718690107 518197642 171765470 171329343 669397305 403317061 869673925 971093252 491035607 311191512 820161985 620822696 454140338 518836867 969907156 19901843 542858888 470596959 569713594 201337143 898344212 979769967 707628012 39862001 98947956 653928139 888022292 56402302 510994138 851964825 469666897 490980326 378565996 525052688 500184103 959561117 330205317 893159824 795197127 876896459 518468161 712765943 967640584 924688537 821972877 40082157 514001381 771062356 367170330 543131077 93047640 630132504 900540865 677342356 762901402 548828009 321747018 201254768 218654667 939193152 829711956 908799138 445742567 480396555 285573986 738684759 936841736 197807311 149533428 760910603 131094328 880520454 36548087 715457568 823885066 101661960 689131380 521129009 854492699 569442929 839617502 276298912 323626932 168789106 925928412 947910468 74740692 933237299 711825178 511156512 755136454 628190884 693145492 274424441 559257953 924935921 817745344 201231414 150428710 351588681 712794465 748099793 851333197 283079764 895977332 432784833 780218080 65319827 329059586 634083807 760115658 523600260 598354433 510375421 704601500 385450062 241320652 673688502 998168753 156537729 899381951 555026451 170978835 622552343 777418778 796722924 961052451 511573849 633957943 782002631 792077294 431277256 442316588 626577052 447642386 182471280 720178472 23412042 548828871 270621876 631883531 217965628 703380034 40525906 730156865 388518694 714254337 178665602 396211297 644486914 580692366 878580382 749156368 561732600 420816836 116649474 537984803 168962004 232960997 887925144 779631024 686527697 856567125 454993979 41864757 121335702 605859707 621466060 861297567 641619593 15880821 398333502 720245356 846705351 617927526 696682841 293804752 519915754 937684711 372180986 524060707 879185682 97354000 779806208 334975699 970078189 339178367 143111208 509676118 183309757 23340354 333409741 512775429 558545967 270300688 920536473 51083446 91755937 626835819 138745112 521938810 708797409 555002852 711239477 943586833 318321371 908594841 87126819 375860421 911251572 498111526 445456313 563900835 51880161 583824230 513675749 52430484 230683056 427038323 582566200 227783272 802629638 266269187 714050521 193666069 192678176 939296430 868422422 956282290 67470633 480261538 237965857 147459821 267592815 338747296 108281795 555615803 856189295 739079117 148594831 624815750 123467465 180937137 78871200 338330641 701765199 131086696 649071037 648413730 327346419 776182072 589015634 553555080 932315563 409993301 41639874 451217542 49056602 175326554 436125482 864143907 544348247 628522935 775976282 428409101 737606036 356389931 440376369 106596979 542784782 256439709 510330273 78064542 758478118 14051962 164168883 613048770 325235922 191891517 298611161 91117416 615931544 812002746 282369628 482511335 650130132 667657836 323146934 969128444 635136319 191126852 880294219 191649675 673620888 911540146 587839376 844415703 589232334 162927749 250599988 486641543 165708407 387294003 556502651 164271181 980945732 991771581 495947423 754437473 306626417 27485994 730129389 10736769 54259228 27414726 928666910 654878522 432622881 591079386 939815164 640182036 109101956 733807466 379806942 658701040 261709872 586405904 878126471 638916469 882201701 897174236 760053277 558431231 663939636 643688617 554304003 372665423 24922020 861656469 498717666 164645440 762945607 726155593 145568370 315818485 842275583 425883495 142505483 326750526 904276478 757282165 640160463 164130676 579742146 880261895 183066355 844296548 823995370 724002965 728872739 780553928 429848901 143944671 152380837 532531713 512938903 940559716 98285759 15633062 129942792 897186670 83077042 338715664 87745090 260104419 585867578 714148551 599906921 867312822 597418958 836737542 526202791 285689036 601788900 908942980 686504649 923354453 916822237 571845152 636738972 572505345 822312214 924353420 261227881 397515254 284177753 890560201 641339985 638210185 554689442 92552411 218572655 5577205 47807910 806392381 912191428 153215567 261545567 360794078 962437514 874495327 401387259 409627575 366933988 798349524 673172109 869890248 188894740 36317713 755317556 41703424 602975442 695192475 206415727 998396262 718070202 188405288 812149936 789608187 177495572 800274368 436708807 383255380 520401931 589710677 883669813 922827760 235322201 104138349 680641536 846689532 875715921 28569707 346356183 939740831 947092745 954234088 261978268 694693047 123587663 953571487 227503018 468126316 919905669 396418269 752092323 448429189 151000566 710234386 709580316 144044637 822295683 771929748 672805967 147861456 126458053 227701204 452170817 607314626 354811103 109160948 72097394 459706709 322140012 814207637 255097590 978293987 135828344 918636779 798068026 66611987 673799186 20970481 146920039 988555394 361863761 441372146 867625535 715183467 167055003 783918148 896371886 499796680 239179375 341243233 262970155 668035 879214088 91706552 961756580 47273089 191373900 895037929 2832527 917278729 971667985 304440864 469290410 186891658 346374730 968389657 637157745 676911368 232112293 651630220 706452124 214379148 906397980 237549739 269907385 688838264 991134467 530332443 426395507 399768523 70163680 408018484 418099022 890878392 607503647 818050706 360730102 2967226 71651751 581548779 600896453 464179144 923600460 656896333 237262409 57943462 20087053 917671703 684377492 28001889 734746525 866876538 392593760 475788568 759234170 463548898 574906956 591473357 563986057 121751575 578119007 374259785 357521158 381448700 266632351 370300894 78108967 795825673 459586168 40107787 303096309 185747533 622417590 399790756 734141422 733087025 611095331 301222302 19220503 580881964 414053445 323229709 820563806 495079215 178555593 101896921 794590616 234871893 558424820 693383703 818018229 172044373 965229012 403283148 782629606 939262908 346087749 602851859 623688780 823824433 423087342 523228210 719843865 846466080 401106842 150170673 595104665 263454415 873751476 893090879 895445584 548357266 883706154 498332175 995292714 508737276 480372196 447667799 681082968 275685523 953567791 848081262 398346006 799215100 178115453 420762764 876594269 43832697 996640015 541721355 868228730 439748853 149462330 519388765 367845123 344948072 183675630 626612038 968532849 891125882 280886236 815752785 671609960 69971867 75529045 425458306 735946989 684423049 893882010 780659113 61769609 899263332 41775682 305928113 375363915 770041499 323775484 184892181 409630716 906141976 202919828 147720519 430466578 899103298 741927422 706696085 125730877 560738377 630644874 902776732 654530013 250696925 990523976 821796614 819465720 835847191 308526365 778223921 264575306 793755591 225219358 714737054 872254697 120910674 738288028 372658535 408140397 788323504 717773604 708817857 255698158 729649117 130651386 242876357 746061155 248035399 567424667 476505780 983959167 481413665 335187494 268284210 490531838 383199218 173798027 577569407 390820649 486113753 542485752 884522814 341114870 263068954 923234205 299335304 689644728 473711195 52941970 981305174 426679535 925414205 431336800 904894860 935317901 843824307 375785881 488542185 554811157 341180536 926581983 343085544 674260695 334906167 234489256 415800917 941831259 969302311 619909502 660225627 723900239 603965696 240561903 539304525 948472093 705951710 66451165 558871436 79792755 132536055 211725690 937698556 580802875 306263702 147455003 464907592 159890692 486986459 926134178 449953292 519279564 495701686 236366872 909502980 907618151 117728925 266574718 345740114 590178211 417019690 513336324 418043998 717629770 381673456 950164522 901393325 871642434 267474510 864874021 83916588 457724981 869132982 543508979 953631243 449335893 11297603 128786790 947055043 571254254 604697222 929047796 186803740 107373162 630699941 990555336 96469764 308277734 367525042 157294771 128514832 632087311 987113046 17275075 669319245 119068320 202006603 852124130 437614363 737605007 598120656 561804499 810799254 446594659 475930066 886605321 253181663 734419361 67210684 506871334 928451453 390706717 182417187 782986598 526255185 245716119 690989559 396466729 302638178 805566145 901247393 942853092 727649746 979723067 381784647 23604150 143830299 294756264 529433803 367981003 636594703 823889958 810290572 222844551 928040414 354343861 126534417 757304932 745968561 156797263 487124158 895959768 380659883 712590782 860156998 836692493 872219052 225551901 188443633 254950765 202187141 904023311 954254886 292242133 205456830 889099964 700147257 233098527 815330023 967894138 766497521 767035760 164702578 907479124 988195949 864229684 654286239 674769635 831906646 133586398 971737202 113820707 206836919 851084653 567473006 537158439 513582591 587117608 439419754 652511046 810429239 211215356 561217698 323954080 968310987 596477417 794385715 787527568 49302392 91116357 505291644 888376766 30945817 98004712 190520702 547201155 202363437 912323638 985640821 600766697 497509689 604551629 329411540 324818254 836623798 286554202 241847615 603603999 136316099 188659883 735552162 532615653 182369886 459507953 77240839 427080356 515371519 237051886 773697946 158646887 845942150 161189729 540264145 893826771 987326887 733780577 587546834 980452520 81811724 122517890 390577418 894175582 616960373 965737222 703701121 161648783 692736326 158253387 618651225 556546275 818465427 143970788 301353474 651968793 257668017 386013262 910263438 491113377 558344442 346876679 361688947 695632115 583734713 265605394 14418274 114535140 484814748 115444009 59986989 203372553 396122247 223209324 830226884 789332560 371964757 464854204 45138059 898900463 717089212 141892333 555341819 773515543 727878676 920954901 393210243 961200488 990076738 552587157 525129108 379354625 452724054 208800153 926333218 876464842 449254926 684463441 171157815 483945444 251467540 423364712 591640373 646866649 813389344 516963102 385644131 750320114 365910826 55404890 598671260 821201195 377833816 45222717 481660018 906114304 818917169 249280210 485360367 177965505 277241696 252502632 646945731 756317237 502015338 9266318 66091673 252152173 658582193 895239442 653230448 633172040 374748575 594340462 650849313 337158517 498436391 320171255 976346627 671166402 659058204 168649721 294061694 951210235 960013405 729417834 564937670 952137081 93017363 856273659 938788341 715314673 884373800 515709488 861365254 496559736 98324697 818774779 795128243 565129221 821822596 951216611 688891311 332517669 836444224 212406173 648701265 393809436 812583799 561728314 976222722 542402255 414283761 940431886 359625236 883731580 946852233 222190650 604037041 125652158 113640819 859606494 28038899 527693246 260651373 796896708 573632869 815836843 258172879 694822246 482921627 964414485 50907148 570788672 730838000 254666118 860948588 728191028 791487789 133249335 752189706 818058662 455322871 2858274 236254412 295048912 501624351 936288691 291171624 902328771 656294881 31421658 496712038 267210932 322915381 903693428 37828876 634106745 651443729 547331574 53586244 492740244 770920039 964181247 483572458 802092340 671864072 70802340 359528392 666495493 41236887 293144459 319945197 448887639 477933222 231047294 107844777 512301956 336748652 291224006 68993338 815223014 189802999 370844994 527776320 387712403 239102984 458427855 932923487 80795717 573263236 409605448 976598999 832151602 455927441 197239022 759159920 257504469 411678182 380088078 464396574 541693305 341066804 224988072 159882685 603191931 768551399 327279978 848815421 149508383 114512504 153751573 78192665 699314154 753383170 738078206 509342084 355580440 55385741 422664177 228648448 708965301 47995716 224551395 280084209 878459943 961602339 558635498 972555161 117384233 61419635 456412857 994812191 308544144 870726548 129748738 126259844 78249964 941980921 45176331 939482432 948575836 262397452 523397830 237737045 334284206 811506335 388623084 159720995 564112633 65015297 677657750 46274644 536353919 558991577 535560855 998791552 399549176 486258374 299008274 490060771 321813582 221751716 272089309 933023195 288598689 425106670 345684087 473570704 358156073 92210769 475255990 99846792 175527327 189419974 532164287 746201959 70666985 355301765 596031095 266060855 399234448 415782881 79810982 539002401 563341327 44216276 957730242 560941524 953599590 573247490 581296693 950881467 280162754 108234422 633707968 603656477 325605707 938276062 679314029 148876944 234489291 325139217 967959229 864886006 964915188 481919026 696360981 200947995 595778077 761589192 947556098 36189159 978342584 857928007 34801880 276973442 948191257 407355781 807926387 443331953 557930974 552368007 411221898 251496252 807076448 174112027 167886077 394532353 16516649 288196366 164754792 408242657 883098976 577860504 758601561 496139079 116442117 412010487 944834720 601989566 4955202 205752400 41616114 813548404 609443993 60799224 451309117 842932625 967052768 130874121 144293193 600317672 997289678 111284331 499630314 160008832 155563023 34392487 914604547 106491591 486094649 16632164 467518763 584565246 453686833 746073196 385009051 214334503 398794503 645635615 690450455 282124621 115092975 377283254 293016817 816875776 393847789 880640520 846123217 719425740 521101698 137071301 494324049 335163916 732416454 933017644 618932700 231878446 113583559 211634540 615387191 872465704 769879438 757761156 156475207 596069276 859511007 531625247 169905721 968131552 668036393 113588143 890131225 634352435 498950848 571935150 231978402 878845751 661912225 56266173 933708681 47121960 599574715 586827209 263964040 16738102 485708079 779307231 877175828 362178702 117565134 881181246 214351953 983189312 217434233 800785586 978284584 199406441 948303246 640278551 2784223 352603800 866686515 617392504 817984269 838025722 864273196 507735436 744262528 419950258 220168597 414865038 831656263 574206227 88221318 250207358 652081899 48696704 980786444 223444888 931370574 923528337 590747648 168823291 136954167 591907161 782694662 810880631 393257110 960276747 401092834 44894014 857948994 513231141 231692263 246961621 370085381 19777809 135366587 875207929 4330786 372681212 989445993 903437866 419461289 255855244 525190053 295661858 97268529 179932624 836032467 401955710 462288445 396583556 855462034 657028197 684711498 175462723 931340080 130421551 238469944 62653985 265038804 619779332 247521618 869201843 198811300 307805728 528908745 21589785 437209595 365664522 748173870 340048887 694824415 631406447 450976693 257696571 206908681 315446083 917835095 129872133 629894869 529853345 511721953 635325017 257086267 366591282 945505756 357947816 211403024 499562758 113561762 43869064 559614669 55497100 837637713 577361072 201934645 340500777 471774682 812995247 469543154 408777379 740165924 284341764 703288686 797010189 550228976 522265930 304115776 236004081 76959341 487752289 268410980 86492190 987193262 97833886 832773237 777422349 39767178 622828241 406640604 272836555 729649876 907815318 40732115 241736092 336617883 861118599 803652188 242921398 273088544 226119656 217487781 666583488 365223276 424745840 17000520 438662756 402355919 243768764 705649302 837841622 850811443 472451092 725808575 218842254 588781785 200817938 977951239 832165496 575185958 862648200 562016476 425593234 705590620 746625296 266647623 131061487 639493093 256991209 66255369 573595751 631418150 11436309 525051459 463741738 106501627 349315456 879159291 172161334 941960423 465159028 945137095 724296045 67826232 288459393 307680992 788652670 291364756 612965219 542499459 12735700 375600787 195901556 190843750 925208387 390458642 864401766 501525447 879651233 421538238 120884077 490592923 442301139 667366753 80774206 591834047 260022793 648122097 544984333 256338910 153990023 310862616 573750622 780125600 755528809 245631656 244960912 122716773 773390532 533385949 334634797 937183038 85861617 365313091 44787550 457511169 491120980 333931807 173085854 278010878 328024029 67994273 904675542 212755767 36406430 557050210 268445944 833244762 917251723 811455449 537555144 827356284 108424573 309368573 988023844 686960713 701709084 901666755 392651839 730843413 866871654 5628470 778752238 55598847 162814915 518557169 299505326 908516534 646361252 263218478 197375021 244440089 544158468 243060360 86500165 226583226 919869081 26120306 401808341 677847765 413801867 506166064 374432773 140359380 382918785 776771967 786499067 123524212 304527248 149535076 615595388 994853971 234715035 26078731 807747910 351825017 876487186 65305397 788865845 52578584 801733028 690947345 588231051 881960082 975126265 170199451 295142741 604034197 303397804 495892961 323671678 560392272 203047683 290917769 780879163 265282314 783722637 583566445 642466409 931250238 657941197 149003696 998018793 446648069 266291086 240355108 399741136 601211338 690265411 423354423 812226011 38859601 65384971 149480332 392048894 329703643 733170642 736858490 948835344 468435044 910523345 419382928 812464453 558351203 206895703 497075883 882121700 21856310 826355804 516314779 243291090 681876823 646350686 43269906 440141604 12103230 890852461 624540923 467906454 799365877 689479077 524582034 578426315 349930530 744509141 728185923 121103845 721152371 546628900 685186976 224601075 678995221 854585277 507899736 282846704 569523058 611361621 398287371 6380920 738806922 105756061 955347691 968353778 486591118 809721335 737944641 986820501 139647234 114577749 996358306 683293069 521927150 998934878 278491597 430243062 559783 189401293 351546187 984193940 676646125 419907950 203157154 446059878 83845729 609828342 264469843 226239150 288874375 658148637 116056308 954964722 587582269 193858190 906607671 642339119 186680014 784836955 395327570 525069366 905243780 831193638 642023963 993285430 237866931 543038348 396370029 180542271 288633508 972028771 3891850 90755459 949955431 801902170 423029823 230112708 151357445 366024366 914692557 703789504 961985404 606248498 804907515 932100737 693116383 381955089 848179008 47680954 5227921 775532307 788832596 427642929 797815898 643824018 444976616 621214408 75017599 47620637 764490163 620937096 980225870 82333287 498642548 540271181 22939015 583388580 256380410 628561263 268174934 41130693 218162373 455509482 983540165 67058798 331777320 25247465 795339820 949292138 351024134 864485793 422316956 684156514 884054408 345915910 84040105 929258048 902286649 478144109 271316674 175639958 453087693 433197373 951403716 616739714 918824094 491403429 334259 582083249 45090850 345986248 271467450 373559315 541699969 288317219 351958754 422849065 124726609 766244707 456060476 380869050 240919176 935440167 119213999 45020353 952751224 944269077 449302658 577170978 154058720 716023173 347498931 717987453 290527212 260219396 8793897 730487978 933820498 321470237 43643659 7504016 242199650 997893873 279051469 509444009 402792309 725061059 614349983 196969678 478709394 653872450 581882820 706008561 920386286 562194989 223045592 853373862 284719290 9609050 616655046 7724879 921355996 421246971 764237916 326423814 203175525 204795067 760935016 730748918 534445275 204009176 481782317 367907957 812701108 632764091 647746281 446975326 454815963 350682091 615665150 17918215 486159828 167981026 564651255 472305836 631983804 967834855 201942461 527940723 454630058 475710252 866414757 674696715 285324648 781879874 790376604 613396575 128702157 672922608 155373769 95865790 538364307 746989996 182961356 139961666 532101695 699738881 560053911 62569601 836922196 852028211 443614611 586497069 63243480 443773263 946965887 826562899 245606228 360962926 629316587 681957783 963514314 246323266 948021383 5549422 997034112 582122045 501624595 451226496 395105660 542703203 941538083 474644135 423817619 605351430 812116947 900359844 810854085 891919650 18577061 973259958 469154 420035810 409576759 539132140 590842173 901118065 425218345 974336143 226296073 68848875 971172067 19366807 266364735 884990108 207172670 360131578 170092795 272464312 998489444 225729068 720121510 836491443 870441108 940388939 119168800 483373164 22705366 795729581 846803475 188350968 800644412 461293386 579425381 545678265 964831994 306496247 955529151 832081020 51637189 657429965 384186260 339127091 801698184 174006071 30408883 220764100 966237913 470454562 596761543 120134203 362921353 12633134 777757256 67421398 671380905 478324374 732444652 905239303 324267626 236996420 616069302 461662282 20667883 750268618 612767970 789485593 291081917 505611249 314804260 997889263 393459197 58859155 148357778 697832581 597549172 627375504 910780662 399528328 389557257 537083014 647108014 673018669 46071312 51623878 743023415 892630672 155552616 345407987 565804072 457746840 973108322 175168544 325710586 603890719 770337886 858528483 978648101 616066093 466674466 332721745 349644702 452298651 115813267 371911960 209942379 311391294 450357474 480484725 327172256 624186753 267138135 638502506 843134132 215857511 856986818 521491974 863413303 384227376 909744477 587151643 121486380 610403516 562694931 90839980 153190130 573029182 685953481 695354614 557920296 203430476 200926235 591165263 616297574 191060642 422015331 963685152 520870704 897395425 899098442 178349003 365194781 999205782 566040551 798953136 417572375 971351146 135050292 572501068 135738372 340165303 704560042 182059986 868566663 698826202 328598534 56981480 359337766 820605459 769709953 116840211 893115750 688848838 106629079 158306164 319698687 814423941 478510211 694786505 77048220 378277509 203163871 267410386 650990518 768207612 550982667 468657072 454196507 88267477 121705329 904665582 667435332 835589103 752041147 642317064 37168086 838261944 683188477 965681373 909679461 833389997 353441692 207689433 928369662 871782505 630333038 515312112 992771048 322537027 895465131 943758081 908790387 888774563 882932982 94067064 79020089 28465144 113543576 167383109 397176591 643471235 300018575 725841499 978572769 628560206 182746570 814999354 859346349 491630531 112111632 298987791 372604461 972827276 814843844 939372550 608995523 402380662 822013771 383327365 893705461 565226622 749986871 238626960 959648209 159128754 523867070 14240887 117355755 895936430 924882248 902463496 485751081 720953626 681505795 314588402 381429354 535131720 996851485 881155964 693630925 65091146 829895570 692492154 567208953 538982530 899245048 83226474 309589633 547316665 264201413 566821671 109748091 949517709 776899179 372394146 758354008 667656330 694284574 226365204 220378380 902969096 678451628 861457954 633353036 670079444 645455734 783626650 505105043 282203823 850506166 575768363 964349675 761646418 657486282 107159701 355182815 394293655 36448864 102792433 364715653 223326816 72722266 813652307 77331187 69551164 636462300 88497784 456383571 667792941 903718900 990795621 654791825 573779450 520744496 49967747 953935942 909445992 348177551 243345725 173347223 45264747 350971470 783734173 535659172 415238161 558812601 588547234 747218863 656192437 983059356 794846083 749299508 799723802 992116355 956597986 745659180 897767464 887020061 531240315 226031668 219228749 322558806 313687268 367680536 199047220 835467887 348995145 898795649 984761756 310510015 767949789 87250982 678574203 240643570 410923301 591939170 951906072 644208146 385341539 970549053 284735070 161034791 925729936 969624539 586747659 755636258 615247537 774126817 419886895 331271881 605253 858167989 494354288 772838271 819073777 187471628 105207383 556820885 223937107 507059033 806788553 117738446 795975046 498542356 685555216 601044016 167880742 277823300 411498276 8173221 784045800 599043222 970605559 179671213 82982631 833133203 214435602 140712078 669041908 808073444 603743323 659249745 798162584 836439481 477726616 735595177 741022538 811394339 137328384 87704446 474475540 460883478 775324848 850213057 782550514 978679880 251652558 414526006 607201491 825205678 967630924 987335885 605508344 108987257 377351328 8061301 368595582 362938227 734573478 326585122 179080719 327706936 87469380 68630459 905756660 169751344 197438709 729816984 204391060 343827958 510759293 707291227 981234483 400725644 905301083 445116475 12760406 43084319 907966066 151703724 56696931 651049753 791507998 7989422 664388904 48971848 590582591 508518103 263018510 178778837 867761365 57162302 45397119 300053091 521365843 506861912 73703982 647201003 465623997 365518621 877239597 9246402 855435324 250316043 164191618 558511827 26886814 294004082 950504526 139339205 223386866 960329411 581492547 168254307 66335751 656954641 378465332 875758841 108388621 256720693 384041541 869718983 539320153 538574543 972405925 594331400 431407732 448617052 710529481 120190413 602532648 346069495 259518976 512968648 789570229 980180545 114192844 821357426 561063692 878905980 910649997 983542257 591059553 203621532 796688809 586162853 81828753 417365071 829618773 285282946 105608985 291877637 953766966 359192448 316309856 693191298 636740325 892554924 142893400 641783662 977937691 101955240 182763016 668563219 43686920 540079426 684870997 583988978 259427862 452319813 712628883 214877052 308600215 757288865 791765086 437105280 362073914 33995745 447834677 813017525 52951729 505808414 567405679 107187251 503103994 646607946 857122804 101815112 887247570 880156697 995185314 848881809 518223792 516620260 342730202 253160083 330101047 176599758 677043685 491533438 800887352 551992476 832763817 70185734 473774915 601157116 812880940 538844049 986131405 497976589 963280512 672666243 738048465 172781114 885583733 935291460 58118779 272607628 130240132 97186020 272907363 218255936 816835744 489240332 67552214 155491569 846615684 266621640 100854646 766340391 510426438 326128800 621398747 751539526 211604940 476016095 50940966 769126164 628747626 687528232 429808195 908414892 623920566 963385907 911913823 621461204 929624187 363517664 215599798 128101719 172192536 238978820 153355472 395386797 71600152 925843772 433644120 975120660 391557642 973689024 807674069 808250575 731055530 435508816 854496005 626680245 812403214 338722813 916021066 696956776 639901480 851766977 501027313 38945420 849101252 751114657 99606020 833538529 956759307 276207627 87883333 375371258 663601322 67953015 219613060 444700144 569747096 489476395 932727517 147397793 958154195 331182756 521361459 353903337 884483518 801115381 243177017 936801199 691344629 445873053 170401262 874396024 929482993 702547502 511366827 672648996 829776087 859897712 154509685 429496130 55821787 697843709 99418375 840757792 23113302 102171647 832015289 851368808 923141882 986618589 382553184 758347203 9397866 747982610 984323591 97421408 548961623 874026550 531347026 846203523 888559328 929048596 748834509 380384831 84243380 246206916 322822612 947781696 287996797 440347745 222024098 515535813 736372360 569174571 104457773 635969973 160921006 122015292 653989755 992041950 595718889 482316014 839597847 425384609 924968586 36849311 310972518 843694909 93439495 157105426 994029230 656203880 494425469 865622552 57595249 334210147 614567652 92414876 311759161 990351021 154788354 156668507 14838461 792601103 954645026 87901799 130657064 215260750 622498739 151064697 203557380 873713571 572797078 249491465 499721477 252300814 530082366 464501613 917219341 462519782 796301595 438654719 596439817 542197081 972829287 516673551 707623643 405042060 395764965 699423826 673843653 208824038 165801299 491288155 204795730 410481355 166889111 371105404 196520504 743130781 181803954 543501377 678533615 668583718 241866266 79053662 87744954 735494128 256479026 454910924 558544042 308928383 689167735 738171734 984481439 754101463 617558328 358452850 686265082 181993360 478650033 880097986 262692513 542281706 545277804 163000525 314983126 296204773 864252488 410783067 35811527 238743567 457913244 11340015 938262239 658348991 13614627 942646706 541811247 883012592 558869314 845690341 502578870 985295357 818932351 158484169 907390449 7112137 613684414 67205952 969990631 192950184 647451347 904705427 810740114 580365820 570491717 622938726 664772168 917008746 470288838 565935587 491615917 577061965 232222327 219959930 396978821 978444991 19727946 411048129 150045031 238660906 698601264 643356857 458174300 489867761 731262761 390685985 103037125 987696227 497418669 295744624 737580206 140649396 676968880 931361039 778383838 906806352 449433473 522382158 81900856 254644552 318958976 820454149 961736098 313916573 47273923 906162536 399354015 152831521 219042958 167989759 755055272 792893131 710823240 648384250 718035185 985806254 310704248 41785859 741614527 164836982 260901456 448208096 197481271 570474857 739274347 509075291 366350413 267753631 681507978 484346151 152458140 12916819 509443671 643215691 430601014 675845804 535168801 669618017 555320982 339331934 824873965 102631249 932344095 366327419 347441141 391112702 398814449 129866460 401024665 174679516 606634539 482249601 27502227 967203454 492522559 827994132 432802742 595382771 114533528 637698932 544287232 852638793 811203415 771729114 865252953 946120474 460931978 701417556 525666873 999657776 868591956 402634634 778613723 464323128 314429210 847981661 343350886 387759528 833473374 320509647 931620925 654438914 644920775 532998404 517900498 862263021 552884683 315690507 160616047 695586589 643150696 653612613 27099207 492449029 461234000 436649366 604154075 361058172 203121198 600838198 168186632 178562854 696837188 75861293 897617561 528846273 121554611 745078225 144788177 84769412 603871479 334671595 737502381 810954079 369083058 255757251 38500005 502756178 759971975 171797371 167062688 805859603 304124125 749229650 241734481 639742252 484504440 687342224 110728632 301739177 613218138 222993075 535733068 721938972 983363863 791689498 485743045 390606850 385300009 890433879 282496838 242621114 964472152 988814707 83161413 38215675 840912156 567042413 624656540 415038293 474694866 419231441 750080388 167060471 113074114 765257562 479001786 183041280 370581460 148130939 622390003 574811721 869444074 661574829 17070791 380872671 479313301 276646298 207125295 167709478 961160246 376685438 358967671 649912220 556648923 563430399 95093956 675018820 278283781 642071452 748880374 939735886 620751420 747760665 988332656 504495709 397039310 250941636 2398123 624683880 264313788 498641910 72635667 162908307 117771819 738827609 357709464 108863205 322641636 433399105 284442019 197374324 418449305 747283018 460533675 560761050 664539912 858634799 810940292 145577803 562807040 570570077 343669082 595850660 445609634 174450699 925787366 829960946 427686476 435212992 497705404 564049948 172739695 601263063 109653653 950602228 331802998 464227995 685974989 813641363 326900204 803900410 344686890 106005526 477197375 124739184 26339571 952208107 604729818 120200134 229850407 273618365 586215730 104479317 304045516 893850480 382629258 792166279 583252577 872176479 724113564 114578561 731319860 162434721 850890387 698502990 346094334 718353478 854392560 455403338 503687229 499385264 672413082 178814783 897764866 259836946 434102744 943815413 544607493 203872774 179230740 564336005 190048316 258196286 170450933 41432849 742686879 728782879 972226891 686157066 862573169 205696528 855989581 553126936 299146596 102746096 490048464 887098334 759896245 906483272 120328859 68678288 453100907 738537028 417878900 526686743 395863320 504718762 984625806 406036416 879119594 899629605 868342790 605421070 685011085 903072622 771633616 923389714 725008358 713900295 660687935 323812589 878340107 988306565 327569188 386090462 182495204 20078204 633734043 63297271 102936090 580621033 886861732 94507478 400114661 516744314 504213696 50546619 338064602 6522371 240335701 742271201 59097415 347487620 678426228 11363383 546381483 776263688 177349847 710180685 227659938 576072261 681394408 136589564 164798851 426479591 793307412 901268099 917159876 405566396 129434420 350436737 376324512 998660066 843000742 279867677 471493997 648499085 971790968 87128817 211038336 969819674 52417529 184443091 156360204 570331254 738232062 879398434 342076627 853487443 932942754 140558151 853230063 980178172 265751673 913745642 345143471 526124638 159445692 962322455 659635663 162400081 18729377 23440012 378431828 158606052 436193720 430368808 940531965 199909468 905182054 488110089 97158954 142858846 977771578 153581575 45418133 275164450 429089771 891208980 829610704 412180641 370547301 900333342 615910606 427331781 351886611 726498436 761348121 573132270 748573107 534814511 568099596 281683710 303495088 119822909 997935907 969933604 627465486 702597920 861422931 675753270 968104504 744097016 91184112 794209516 946385173 17872714 171399977 433961573 491722741 725128750 765485591 412588530 498285817 475294929 846636721 615266645 284936657 702127957 342894966 812079127 302360331 283102751 975196584 341464390 45695454 581012472 411913448 462188770 497324681 580373283 883222711 552480337 690721022 19295580 779706609 726025272 4234294 712866111 195540046 444959140 606526285 927079116 811424401 373646962 68566537 673879379 308629318 360898893 311023739 472728140 411920853 208152233 653250671 75784745 29061877 130870144 494797161 505651483 54200197 872608213 402005192 271388038 546341077 678160111 891903061 76386962 762795824 391749159 901784283 806995136 362666376 979163760 259958606 535300550 80590623 914076472 379191770 145831709 298450431 474243758 558720181 301484307 969242455 512697670 502152191 486929929 661095073 615138751 437178950 192097693 378806036 610757449 484006461 192467213 153091729 138928597 943560604 96626304 748296378 239364812 520727275 657173731 178813803 798442042 27919240 15116508 93618840 570084281 858462038 723757337 158388916 697619673 822314505 319156226 719677251 373973386 601364038 47800124 926915572 290731638 350046855 485857709 890714051 633392333 10990036 159056980 421726996 287279400 519441146 478796248 859216539 804985372 465083170 504689827 356245037 103690706 994477102 352409773 403309335 38762776 576065784 900197229 295138298 15869985 803465795 300777314 272912670 200575163 418882392 509913785 136537362 539103046 974157611 94775928 293995449 289387956 529109955 843660304 752437778 412830588 841353453 254738417 222766736 380178030 705202134 464621925 16657056 220287153 180074865 29645559 738309396 443921706 54810977 130400732 316805278 278555137 855700120 435963054 726542346 852432179 711554462 257411659 99655943 915464943 44070638 281838165 234070196 523119198 78942585 912489342 99807915 759264697 200262640 902761027 47053397 579575995 399951790 968482514 362293761 569181918 277239227 284443552 315755769 786839189 460630009 859480665 737853545 546270466 228422085 430520200 443390040 90558797 519210000 705964476 376067873 115755183 919463608 70719835 688059305 599729067 764899840 261544046 474968061 393466030 409159479 905858866 953604545 927449319 814320252 937137570 999783217 141568801 477169189 212227073 408665836 93380672 358030083 250603932 776561179 510040582 693851378 663349676 995742450 944351712 921586310 172264863 544097670 29194878 486302120 588786773 192049826 947729365 131529765 68088972 377007798 28769849 174313570 378082745 51840727 717806188 785180007 915115885 527132489 455189574 190141796 231087653 8273613 246363728 619526206 400082878 536574719 958588690 361258190 328758708 457324915 307885921 841134524 473367065 427752898 390829420 250224031 7968100 284102522 77423543 786951888 470867493 927846278 649081689 240840701 870318795 748477123 621985099 822962273 649132199 328599129 497674430 317892189 310011740 435167828 752463550 818392067 348743104 42497302 421500223 500818611 935428273 767308655 951365775 730956892 981043588 577807934 984334833 210146528 986439389 437545456 829917244 216432057 924453374 777417861 974799619 254159100 406972899 829346399 567171769 908989667 116046 136256682 554652022 208877281 126228242 734462741 238795585 962467601 72388440 966791534 504680587 996235875 580624057 781857672 368849627 537121988 443892045 43460833 195954427 708736627 728787745 10086308 784774224 398838166 118677481 729437415 27175942 942494849 722812580 690937700 986212394 63371876 172535935 554662578 226873996 358399893 850427636 854905881 66525717 725701575 312276633 519901749 804305690 384782726 466366250 914279948 89576689 676691664 311993952 295048025 538625520 198143677 235955507 782565146 220280740 461175878 389631691 739329580 553679856 133618482 718961041 212275333 910879230 667974531 195085730 424184627 987631450 796679532 248922572 191470141 857095803 94613285 979087536 386862726 716010208 445022729 290631624 773490872 597587275 843976324 633194263 483552869 641378878 373784606 920034202 480914025 608757636 931634509 774596815 413478525 263816277 686364998 528007490 744759958 847910423 696764868 771202223 724497916 970188324 723959276 721338668 523978252 545529764 696192825 153732862 455398843 363855232 195637130 760456528 371463823 22151913 841119504 621526768 173961039 136593410 440591542 865754812 590524667 71228632 743130994 850361790 143843105 720444758 164171693 782195227 77475590 576631100 768036174 15743535 937223311 55053148 799925312 701481954 196987736 263569091 780556523 572553282 752066370 498347538 227242987 249166318 432301155 487340310 165862998 911481688 516300565 387459233 441134554 111080805 123888810 779996780 914708303 128736439 49407288 999281975 975149768 258039929 647350376 362851372 544701356 776915023 89626060 221220757 137718610 342487168 569312163 167248392 325440671 674372722 195296839 993003251 752126521 849535415 204286948 680884066 372419217 790622772 356763686 553911564 850998347 863665729 268845258 829475916 61733421 405404231 750045831 535611952 995990753 589699820 652093991 766979812 98467530 40906564 407316194 895496387 94860612 475684923 568635967 971572703 270022086 125253871 957025268 618242334 360114584 567166815 883305289 267240785 646684924 971123523 534177790 709204546 697805654 619185146 133393673 141445556 153762694 187600458 589169638 759110050 930344678 76542349 696258058 266049555 928760832 403255972 101355867 327387935 957696764 853598987 2615908 675727646 828772523 477794698 711052645 846432151 115974981 932890302 377147198 793924022 272906767 200234915 87743315 602265076 502860137 862714483 230002870 11610361 416931787 169357381 972405077 417354042 697915689 17345749 917957717 791200765 687968885 623504013 778285215 598483121 579483266 609450934 307483034 486216775 624840963 717664741 215586222 343798203 653954374 373182055 182833032 759636770 590770343 439294585 467542982 195405032 199948555 781329969 455667397 43472915 714855921 384137952 276485221 807887568 358984827 113309079 197309443 746070726 50611052 28298586 893258127 146909132 126050365 962743577 580048712 917931661 110055810 329659410 929394103 3297458 561412034 353642019 427401666 613879723 43516531 739042007 291285214 62169911 440056231 424472126 345058897 45270804 783440199 33556631 354561319 369306379 52071233 91076159 500567335 972601841 926771142 89969629 326939563 683753368 613345986 774232450 738221026 565628358 691788460 464371482 338414490 965600258 408430102 281509311 394656663 173743471 239274354 748585608 728551424 521639986 792230533 38388324 124960777 19669577 951481662 702119616 554008827 30363546 883867353 651432331 904282037 380119536 383102307 909881260 82219587 174106342 451983465 388769519 635879212 808987390 425481210 524317536 752700841 435729649 830184723 187258244 733446791 25667191 142853720 232389951 2087361 115678557 575829609 112716948 131577650 503180013 12143140 73247710 610972097 674031205 10480051 932477087 248707053 804192225 681471970 672625555 397811572 514604113 691353675 484073298 997246685 127284073 339039112 367644642 812849353 150477793 171170129 534868120 526825342 160318087 545469198 574044066 429282852 552874072 837617252 702278348 34931155 621448763 516215251 736777273 610573826 62175660 179310031 579578887 124279381 302681180 364919389 91599129 173962100 973202550 11712982 111978573 210421937 836973547 890505330 603192854 191814051 947559777 934393893 807753870 566514034 531341311 971217528 735646267 178760307 521090843 654888089 658804082 328662438 973464247 468879190 782090559 995749193 140256297 435511684 162910523 64503280 682589351 305636103 26795960 168126363 688531297 214130902 264245208 198990184 850580470 293360133 860731901 503941183 914009556 239211102 381508566 512293381 463134577 639130945 510246383 927622200 904721448 876692141 245299585 452154049 478465325 176166683 242302794 135245111 166700862 531099089 771632049 899035767 566038781 934257687 756555611 793604585 628579396 251419003 930394697 401265540 880058650 931818158 162511768 371514450 375288688 52472585 268435525 380239856 791215984 914326242 392516654 412963886 913005673 781769461 939202571 795558134 733182301 49866794 230315101 404362271 419193263 313737459 999293852 396630509 712696548 893593161 281901866 889700732 924646838 90276767 545420321 480438389 595586786 947890757 421575727 898924551 745955978 339239141 717599316 862784924 446108325 676900044 8610194 557669962 142870103 422129697 950936610 949911244 172618432 255156359 209182921 542744684 86284059 233845670 919728816 384269520 91414892 743476719 149658287 93820294 756223098 943896605 844387163 346288557 807363861 838877046 180824905 113932941 880667723 656851627 828412203 576972827 599002279 418508420 39779485 620146731 816921976 187462952 625967645 994417856 706518498 332480499 407630133 219179024 104865082 276000805 34155941 822362663 616674363 737860367 812530580 99213052 652530739 396144930 765217768 2003787 950219811 993183882 215068691 899857561 640946247 982981835 80301453 227529096 684379742 853502087 365892689 274063839 945540237 419486729 496608855 892490314 7359362 587788175 158943731 90241321 740841431 46953345 36444536 85383280 867532821 189983592 682875965 357663351 705807908 3922490 409385379 580807536 315983593 474346120 425919435 219512588 488877967 697454449 292330030 807860031 834145130 171786563 606666021 962720120 325190297 473911335 42189847 837644140 955223388 345527504 573266601 692268158 315509894 676538443 6424401 393307212 455894826 426072676 953422768 445296258 944968839 173714219 990775137 807930401 936876103 803259708 542930101 404009700 82687901 408341943 729014425 893281543 617335734 978366665 466887204 611202983 840450187 641334080 635306809 345122269 187245953 636865361 884244843 507784862 248260572 383084581 515691766 514238720 408261858 939346566 788889241 520377740 680351786 724269866 184426858 359493636 916341772 585702930 332840300 41989729 631945445 460386707 407203023 281425635 722455561 720987012 382739908 340435980 137580470 4032073 442828035 563432463 639481221 598308948 211252479 867237724 243686477 528660976 60515993 228139777 159240152 915313514 39416075 458370029 712333331 98522752 313567029 848703489 294706663 15963722 78272281 411513487 538995284 797958466 410959416 791514321 970133959 595638021 364300136 643412617 869716422 831951455 494614196 270012432 85502570 855236446 53962159 734249356 869761739 494431766 280744449 391475886 835266789 255049819 389022639 168137637 383279215 177331174 154039929 789420445 733557593 360157140 632002736 43983357 528259362 683797334 675742359 210632129 975356830 340545954 898645458 958149458 404012649 826620440 979888829 684263086 512510078 793704787 23597135 156906420 146991968 42028709 374864890 520618893 113034038 252861529 360779149 366711988 662127432 379750172 456662013 194344316 674603589 668927867 202666861 224489342 250104415 305455476 902820048 915227691 845082656 900971418 542644074 171738541 183250957 202199346 920082349 617378851 241795525 49574866 222700456 579610619 542352501 281074097 622824198 114676816 621906716 671492638 456003673 884873831 109853177 136780225 164583368 609094922 260411095 932811533 62090371 700850119 898102731 285799839 363388983 667688288 86493436 942048521 707426900 873683412 689553075 305295268 532916584 29800994 956117889 13059871 656725801 558559418 8349622 191578408 893932094 734165327 393322896 634691598 9602119 986853644 672247004 893310602 316953875 507664723 853674995 361286295 411292434 568858417 514346195 96991277 877069582 783088167 256695126 498007167 76118232 774209206 873105393 616686757 884002039 550463196 418498312 486672766 199262045 111953441 184966720 816332760 447538442 520263020 993724888 857793294 309626221 790417442 112791815 330289608 299270963 873923248 405783152 57213321 415380011 451599928 991101689 232054801 819529234 879108268 137729974 803553893 106216414 540873305 288578706 551016965 340980590 931045036 806249657 121892911 356981082 136079660 589959440 373942765 63341083 666824544 135585004 407405312 684851428 89798286 597262531 876155234 175883920 765667856 497059960 405526429 124563045 91569016 589139776 983116903 193099129 269407793 496966367 2500424 258052616 930170216 571365536 230535797 552405548 322922071 72981290 948466861 39545606 193819439 240522583 548149867 864029645 58712218 509074995 300233491 368418617 576182008 400250816 478374257 80930044 727953844 112371737 768438370 286479342 629169414 297253625 686241435 123530269 160248381 829662141 413628937 884598578 519017908 230086027 133482697 801733481 83260506 5850388 205977855 680010975 385287740 307056596 377246520 92656984 913703488 593052058 941253839 345414072 837808825 797941929 37452592 170511595 601432676 994565190 353925605 1521679 61697602 230415028 69208256 2380495 386159254 331360994 669453772 2367761 788362097 475626756 325813697 164079835 152035292 753723324 125863759 182992756 372792890 137205528 284064478 401200304 401473984 956675154 901521751 340533814 978302583 232409775 547106534 929866057 168146439 64946827 9125537 918706418 877464207 79870495 988212502 283878870 751701324 116478307 674304115 915685225 482196459 632916768 780859069 343002199 987675768 387735268 601340076 761577397 388550011 19777341 154569159 413362309 944146329 661276907 553750128 824862915 726961949 655444283 619134432 49224794 811270845 345782182 677638429 461360701 924155757 198810051 830369851 768797473 801887142 376122318 53026787 725202145 413241680 831521064 485462023 491223236 586049381 250488696 985988350 905840555 623552283 625509613 382700839 285147341 335529739 441090370 348304424 406256940 929486668 70434667 207689549 580251955 447392962 68321283 758723039 651104874 592385779 971339145 576713068 346323112 740087996 404661429 56234984 890022750 714840286 853402847 551886441 696004342 809385625 133283530 459355135 880428846 998392083 364006325 522905013 167052948 848352355 908925942 72241877 216601827 805222058 491557717 313399299 413527560 314031573 953220243 84357708 713884498 459626152 174587941 906348870 917960466 165345241 901975605 357753121 429376726 901736699 745311937 895268716 43598820 67953248 153183547 735699234 970160104 691721401 51866408 298207361 173481778 551457305 251494040 595926401 877712500 43187113 632034079 268609914 234388271 996486388 672266002 173788762 8639464 448290793 5824946 421769816 275100738 698128339 382462568 906423234 747816087 349438834 561317113 965501413 22989173 365070250 753795610 788742256 684475309 80903355 332109895 289861993 400900651 562870853 508478110 493625950 819372852 75738206 55367434 19547818 392472094 944901651 440994328 491768180 738871305 373192376 73004327 445909666 900287696 640263285 58675151 231907457 36059996 434057727 755534665 426719761 729995038 233988053 519893240 716968630 308667260 423794231 8072901 290768635 591649189 193505375 145345929 7487410 372806662 373708111 254007698 931342051 728800990 108229267 445461982 709889799 728838450 321657087 941637900 658216845 672536632 715451321 244703851 991494316 413413212 12589157 73768962 555526606 879500314 597439199 495294895 981129384 167145877 299235786 410492169 181905945 854991947 921745870 788240665 236355694 555234125 566769148 174114877 527199882 631765851 250798501 634817708 578913932 849577297 408811794 653654927 823869732 925044581 259137097 555183282 871079124 718738407 547019694 164468139 190050072 397491240 917115170 511417734 258044692 987147220 431945299 706635430 176417400 808631057 407949305 479673230 894351405 873412271 65033956 401619272 296894927 520941578 418915042 448061415 274743011 4430802 246155559 166707580 303228901 161909661 180408269 351811229 108762315 651619876 851397091 287017203 940323355 233764774 676431235 79043884 605334568 766342632 525392806 833025241 113839773 334729760 974824085 769816845 268179094 219451049 587541643 310104021 34586581 668134662 746038137 726767903 178780609 890309832 840034611 903647411 660923982 205442090 691848813 956390082 754619163 691573787 666529171 555879572 817522675 890646723 353261283 568048626 243471002 903807905 290728952 45024839 175592976 801060807 77619338 694803591 437998929 641002694 113510552 691446222 166715188 547418634 823469851 490546094 484484265 974324883 168648419 50222928 9873088 799778705 985947881 872233442 190999892 492778571 547470295 354984965 710300310 899093931 892399681 934034987 53454564 448594249 769196784 323384172 318805113 78916900 725119554 114840961 339595678 298091110 183208111 38470615 782520295 631183028 82664507 128339194 21568752 211874109 366750601 309210454 378004564 868146282 452464366 444717415 679966243 823416750 233209452 179056796 334907726 814560150 957847843 836609311 680359303 733959782 377082543 797417204 173588266 250190574 198872312 279381395 475843097 974479016 353436938 420070290 828328339 662302086 234263055 829176626 438713703 264853829 895914360 941615375 671569088 215040466 49715933 865309821 310154630 630620698 466403527 472459715 289658985 513212106 174157376 670738086 516364172 807898009 553780094 760281946 618485348 74703653 894450286 517633098 711669644 483935867 290905426 2701075 558135412 867990626 24729175 562626650 230826034 924609039 649087548 530713289 947650534 706471604 468471488 261305573 506205807 48109793 948148425 122677338 704398901 885246986 583403494 213608602 690617604 845384693 52896426 421890540 261210033 511191825 665743283 118926944 495909962 325796796 520576328 843455033 793872986 398799021 933527935 648906332 129300060 779298553 824992423 609894760 152353415 341417501 241994189 13467258 643159809 129507070 548560177 629326675 521429689 627404051 978757526 722076376 662470900 480735424 30651846 811914351 550414549 635430483 479126638 399641904 434761365 816332322 545701574 561354514 347266710 394185054 835812264 76987326 886196720 502176051 246082864 123647225 571988557 601077014 938520739 808841017 674788042 908608185 658840261 490138840 184400440 6858475 767036702 232352211 852877983 642274 278328949 136515701 413137653 78228158 168921103 540353569 680769442 303674225 761670476 428979516 863597305 637623237 938757255 146564493 901361815 321397046 603193884 848485017 48500925 537651352 693307318 380224096 576640149 488702012 137572550 661252066 916108223 412189327 416886382 261261557 799990146 642275344 702556574 765303336 771343614 87976266 494792335 3030391 744181019 524083870 563033248 447839875 914562602 289043817 687163598 752199194 290799701 112303819 251797494 319042076 533370294 41405123 331841079 935249808 371040140 932578045 85689176 470836740 642330804 541423003 639269939 190360873 589276936 900320533 38804482 288168432 440168577 590860892 93647235 12757107 774356285 112282020 994075400 551307349 84571488 195998232 909010038 206183808 117725513 784832058 996247535 792218060 922027246 268518510 474124300 106780617 407278873 197604835 443369749 726917949 920521031 724496866 856831192 701154920 223520366 759838599 516938078 647421722 237058878 362555019 293729428 761964838 11166311 351713488 952954668 11988169 569064810 882483264 48882119 926716359 223011698 802055775 882427483 584109927 992725988 853896680 956759137 131457102 727104209 467112952 855367991 635719911 907368764 590723981 520626674 67896993 951307463 645323639 397078454 708530469 375091077 483135201 501239283 72762969 344240487 386624057 208232661 475452030 879663418 585452275 459129069 253943068 285326321 168046832 635315702 14875273 569976911 472391845 671968499 448798945 318021735 190034129 294461936 402878881 922277369 28654468 557445120 418078741 625458706 771226849 514587040 976847350 533160218 2293141 144846743 111816818 579843834 675472319 25983562 122212690 304434585 518551202 158577153 437798145 163946054 507125011 885307514 89609896 477684218 965370436 431941053 448994024 192935277 258156867 835770681 343290301 569133525 993504681 79097425 279255892 219220459 989273099 919125988 888132719 430853239 306296662 847001123 8450287 161753300 369859141 473951576 3905123 888900712 567154741 801980248 425550789 58067329 681893827 518291504 107179865 629563813 748908341 822436380 36443684 681050673 904800753 14350985 910841526 280356688 802418540 153767026 750536756 540168695 791174887 839604247 139361917 277022168 543651243 110052141 529529437 182964190 314337267 480090804 483285006 401991308 503956805 666735038 540792236 668885113 942881626 878081556 705441547 218634167 148232891 558912831 475242892 632146213 290801914 40343574 671871297 240315887 54675661 822463630 155543511 542753287 691922090 618146965 356642649 441512181 783914753 690839748 606148497 966348084 749301390 868928396 42344697 803645715 761081625 8183500 756024471 256510913 141522823 384088069 801064648 858247972 76498057 816067861 898861772 974321892 84387413 795624481 705539024 303984484 101905139 41014587 986691542 419467049 563321043 132992247 338343714 552501907 605370681 424089845 137425033 904403283 267733694 52989635 82810283 648897215 358477139 971991001 152985174 584941405 76906286 228667051 70655348 533178699 22346553 323499297 990954842 907357033 293602734 760520080 208757653 698909769 975576779 14223321 938406858 203598806 984654939 203120632 239683579 865292798 586102639 484286764 229995672 514877422 537891625 198671409 889165649 395730812 748596503 924438 858135587 735067786 76785608 419006668 585801849 925962313 348369284 677225925 737259325 823053578 848648759 356308205 119225327 774778291 762095478 298557773 490021494 211013757 331519737 739755799 842839342 444404299 560868022 415854282 944092423 986391763 24270768 997857095 365113570 3825222 873429601 124228359 937367356 699528126 631475469 510397470 397485208 143841003 358215589 972297848 236154190 447998110 960712005 954192806 51423498 807875786 373216435 358468411 61966674 471606040 207807203 393099229 666570199 485200912 873166820 452429622 255445836 581711529 446407722 290368154 900103222 474318157 828934367 942459216 396700363 310723151 561003088 674413264 995525198 719447904 146322605 59006780 32739630 250827686 632234827 146827240 233496661 884331926 328194540 799948753 138177404 163147606 38050792 556092763 306795658 899296112 841622794 895495954 321412544 825030860 378700597 653412075 910292241 838680391 108084362 400221582 583911794 66414299 668154043 584562368 218133370 499050403 858882865 861814903 990944233 244045129 339058012 744625798 661052461 679678628 945242559 854962642 811541597 319605644 40664003 47821724 734851012 686978429 472217786 21360815 914545771 898823058 613155845 676997762 5042774 490644009 617609351 807685705 869493100 332582399 130546368 193112818 223409304 490928124 535172052 512985300 461088257 144656806 552568973 75140734 786023349 921100416 864772297 62246943 902522957 954779410 685255721 946469224 445228942 727726287 163369944 975255031 858605194 376206364 620350910 677042731 395904875 324007875 3227546 245667169 259582832 695438214 274477539 628151529 811045131 287864594 905770263 89020825 626762041 999282056 75164040 266441798 1948933 69834303 914706764 85180486 715381453 324168233 924304251 642788378 78637495 364183027 414768445 496319855 200086233 469313527 607246722 600277133 781109931 878525828 730585024 242034650 712310803 369259020 694740628 258467894 758630278 998577049 797768675 955778412 137501202 671279915 779815411 932109369 428707745 336907246 744679776 511184497 685873556 397479497 432915231 316710177 910629119 629932659 370151 9637503 661840870 295322078 81402767 964897351 676937572 364715483 102760471 243147539 130305517 461561061 457575705 620379751 966986530 706235867 102401415 276761108 999212300 270116512 916742085 174966151 114163246 732680788 191405192 548460733 570992324 69883536 269499436 146144031 423235994 762192502 937021399 987981892 69725361 799951243 847321064 838829107 724773366 949465547 503622786 334876296 197419215 153816732 61915169 641079839 187175168 399089417 292360134 275473937 76027005 909045563 187693228 582199202 499020208 374657016 851177134 366893596 890953649 325964801 904752112 90563096 891225965 255526737 232239740 489275208 295837974 364303371 566068519 825864377 426392474 199057780 384769945 710785044 685364187 98686439 609844437 917953124 688883677 370316252 6409120 593994823 393386242 925246233 287653866 754375087 926573794 431724568 474304824 567498216 849661723 553639837 91402169 67820533 424162981 819844862 76866129 783390957 744050269 362315833 989866781 413056011 945842382 220661971 363472249 972467983 158291305 16722979 847731172 263140668 344230807 706900045 426021087 670841523 600485428 238903555 798684198 680183558 710451146 687361288 909173811 258782660 55161412 580359274 868130826 400617074 920945937 544083775 24095732 586713809 90690069 476608592 475599214 441734696 308272599 110651115 897655478 832234742 480194568 895698782 194927046 235023595 357804918 902019262 983740037 654546901 516433228 910593249 929076246 474996058 140068785 456279052 975214643 949382592 290540838 570603858 731869916 52495936 719128571 259201163 377391466 744353763 194530320 306922861 228604569 854272108 163839813 329424414 814005908 917326084 354002139 368471349 997561957 912884980 334924317 779479861 297186258 101172833 907836591 627764620 53369244 213588684 866478029 354707208 119680990 173212949 234303072 379313108 567394839 366049336 197612005 147705590 993327739 972562681 326995405 777720082 549695781 755436266 438386080 564932309 244968617 305086111 39191096 674512419 136516769 367558782 201983041 583609852 97502903 603514212 731817147 523667553 927691453 465339742 974130512 378097600 567917705 79458320 902123188 701711992 433734477 747247896 810752761 190904559 444878543 174471914 817551242 666809733 65737919 346715674 328785608 119914185 611511316 899401146 755820262 363189468 789189967 162003694 345772230 36213409 310413798 3860569 908258464 249394861 602260091 627675248 128559465 891241238 858238994 359846245 343417798 492569469 458550096 366948538 969829016 30071416 635608256 303651826 564560227 319526220 277571500 196631741 204591756 194606581 904239068 327495428 845070047 777567606 180819881 501897671 686942133 706117195 50953586 147405760 859939976 749085507 722466006 501784245 44598495 561087121 765557390 927115112 736680308 548359862 53289687 374829076 501645400 309810066 302450013 101488582 422680736 312357159 423657339 490551573 395122805 301845347 567776331 140196053 982582012 988330243 887203380 193950490 76381595 438726664 941764424 719880571 75674184 888825041 703553150 352945152 781228465 362229078 39453285 34951169 660929835 546240383 139571682 147972012 553800935 377862407 93107839 463226236 462723825 9483178 439626584 763545410 710691530 858726621 23818278 643576174 809783523 359015486 466627215 810020810 301314183 863264807 852338809 203553787 512430098 692527877 20267725 111171827 509324443 806098905 380135358 733278176 410789043 325891609 523584897 621371152 822329186 380016011 903088374 287544218 285300993 757950403 344583905 757825361 184907080 169371790 255241989 827285434 490388682 340143414 960507419 620328988 17503675 885489866 720097447 322212222 623990150 192673245 567539929 346584387 886768210 297153630 126091550 345220975 383505067 297162579 669362007 537136815 168576075 961016684 476144350 478938056 288765996 917260074 166217022 361303981 455909143 72713846 760256145 816847822 60847755 476808097 901492087 9965743 4586466 291277535 627098449 547108630 460772545 100562239 674545806 899554235 735851015 751061038 357768271 189756357 911579779 933205292 979840528 477560309 916207388 933620255 256990209 370884698 70045209 701254033 248752222 707578241 691512993 257787175 505862314 757288506 458126519 272672547 706545303 128454544 940996996 568857895 931844233 476300333 529335931 163490203 512717049 53669636 803275144 565746081 203972619 684971392 295546000 343509050 471832727 556492038 695572457 427685528 771947532 108996440 471640336 173499306 425013934 844209263 333904848 341916292 744609349 460503150 365735905 552488212 935857438 844151832 995899340 35231714 320169485 994877351 772765976 17278237 279521470 494161619 220793089 501042801 534796844 224038626 75190590 31347192 186410124 612739604 485593409 524017114 295194084 409957432 363235928 621380390 394079181 594461842 872417887 609741156 175537786 907636785 334066974 167111446 289444912 394052106 772251444 449762925 724163221 444018024 605663155 374760713 377341398 747922138 469811658 902055285 808308449 212280830 679740794 135321086 995003804 354792929 526838630 727755604 393135501 961055096 770561070 914338085 916107250 305309718 569534356 543585125 813822191 725860981 662755766 163183118 423458927 527824838 52505547 101928462 43937714 963468698 511191809 910586370 650160083 140640973 443696446 377394093 280887960 904024140 56021138 304871031 785918125 821135247 99811382 248701744 23385681 467927220 372860780 190056215 195999085 425127729 563844397 925361445 531015599 931875333 215455754 696906419 563548811 572712800 759564860 849767474 815497050 975129224 417034352 284994110 602661861 985010121 68660611 289780048 249833817 759298616 395264967 299670653 460112646 884565933 679611955 263399118 265247073 748874740 511983255 977363613 269611737 132598369 263090099 886330877 229065607 342306646 266441981 585072907 318849182 335793723 768002819 986306126 122169157 658478903 307803874 862173738 323667173 196365480 79180300 513329950 90851877 584068298 696338626 140250265 481622908 647145450 425432707 38606850 879267815 99014514 614445841 986764235 235606853 806687840 274372134 192302577 654995863 671544813 227520666 389988492 293920054 192053310 604010062 468035653 809417379 764742829 782863855 215650219 72546202 740294761 109966971 215580705 958648493 524447287 668532734 699858441 248084811 738472150 669041103 685281163 192518465 997816321 436012144 416860954 902717136 955436353 639229955 89692585 92397379 320967845 82598795 442554830 99278207 189571345 43756157 653795886 800513816 56407168 584016976 679515604 545734049 24068552 886118208 32866768 313882794 144325775 765127723 923138386 97851657 237655009 792703860 261882007 950697591 136672213 901673371 836359813 295085329 92278875 116752855 192245772 650547695 697101425 934256843 352527929 624900334 547136780 932758703 714847999 341279792 197067264 56133734 336226811 98101109 948735707 826713562 4842765 668821780 937293743 899382868 241040043 852696230 869673428 695983862 484026274 710142200 718099445 585088005 292883891 267213974 746709232 336033477 793157020 28082255 85321015 540502354 266004249 228411574 355703326 47552556 464062458 51318215 212587697 13889714 49233793 189902426 942356865 713435141 172719992 17543310 917538966 161803541 145159982 332797678 183828674 781947655 927300902 73746979 904009789 292026488 832699671 436634953 928592216 93936881 514517566 921312863 997465415 86027276 356707564 785497428 511213316 205341359 490635410 617573185 506609669 653013017 916365210 439740398 382950675 686063692 315531872 740704373 203664443 607384225 582666971 159857865 790619165 904424527 698844161 748819376 91953320 454998033 727598931 742338642 232571814 453666809 175626006 423807121 133368694 723005205 16324380 210958817 644041922 817740305 435239038 316370889 67920572 700688455 49813564 221125771 248227222 958852670 741844157 129777788 739386614 384661353 871074287 342192166 84746504 504183944 163492068 354723653 452240903 487784064 732575425 468456178 516636254 24112351 349972696 577664896 353576658 575751151 468229262 432102477 159755194 92178101 939817613 882437415 2515785 373058965 776775079 900105844 31850328 565970460 245805916 680922705 200796770 478128024 971314840 517496765 875779251 581916919 66837244 953303620 838560713 483083396 161435294 785410416 31492599 768503884 371131825 233083612 157175771 829594698 731141370 532385321 964282008 55369768 971514560 179916171 638264133 848845494 937539311 632135695 207023295 527067944 626384309 586658572 57360036 207931371 690064217 430960086 323259697 478948976 292372400 650460749 820261319 898340774 144433211 914776468 510081563 205218088 526208446 869853378 774722146 89214831 664630846 811394749 646488540 793508279 732330966 510226727 342239434 530854310 566968302 821930032 36112269 208030212 162761461 144206006 476135554 142037073 71688441 367124882 773962847 348642056 440561410 177800709 874396457 669150051 51495735 717052340 591134052 16086051 615327995 506781802 30602284 96593715 500689307 91244071 268551703 924837282 557895279 339265676 64173169 237441350 836429284 996638804 186663471 330863229 157351828 123090268 805553210 581239266 210356965 879983732 825422854 798885918 848048581 101125899 826714612 82557814 848679971 477530363 226710307 935316251 635636438 485237712 121095722 713861245 683575949 431310280 146335882 331840354 458121689 386689746 623523032 275393378 864140588 332074859 857522675 121096275 568366644 805031957 810032229 653879885 737258342 826469741 882315913 929262400 297801193 434149413 412690375 846680248 79303282 716231173 237371723 430524814 600062914 87995915 713099059 674608545 772165182 468342272 876723159 171468409 804481210 102883600 47162786 797094859 936630683 914183055 135396044 942988865 793907990 374807493 113499372 725208500 586418263 866306442 289575232 290022472 548029047 870279020 18088569 111161454 812099661 811078169 870939041 9587704 641994029 22733032 861657486 616090675 941698198 978677670 766975348 23699751 481032853 887182420 775654408 618499813 727230102 942101552 59446295 724676392 740399393 471532075 280523091 395731434 143246857 999792706 413245641 130862652 304353423 871541954 141725842 474940520 803682987 338663445 774746316 920021805 8916628 902265939 917657430 185823339 561925543 213138626 131752260 584755529 815192981 894773996 925241683 157140726 191288758 289788243 969993272 61230893 279849995 329184582 967278590 196053946 350116415 887326799 419623201 774096917 884554889 384079668 496722000 202146084 29217234 695154165 59712407 965128443 143724164 195963949 750923916 372583846 120787074 447871045 767736879 916793949 824373341 389537427 333179707 580412849 804331429 655154784 874518372 363729436 195922646 320620649 117657144 224865290 550113123 794408904 745013794 107692691 513446736 478082951 276056039 983728600 968103696 989692762 304016785 242556569 89127309 310621357 543825972 527718717 322483854 619657770 104856731 279245107 1963896 408627003 883513531 562358232 354690298 285267491 467963466 810669618 147551640 790696336 406830061 541817922 679648574 661738923 122401652 36845030 857753246 689451419 979378374 552087323 469790271 850533017 196926483 381589255 230770376 236440821 548539117 872018656 717255444 832107633 498335107 514789279 142557352 563709595 584313282 416468534 107047536 953810783 779732248 527384349 335280843 78823250 21824612 280789656 788861240 814246009 950331482 444208045 165779101 732736368 782468992 97874300 501138387 149547835 995013585 466482606 612340746 180921723 219085292 839218996 17627761 631216782 897119403 458391764 26830117 707950181 972560543 74729880 828531588 98668600 290673199 186107789 585671356 497165344 216167687 64159724 671145617 505857401 825109444 787948369 271018976 836775224 144930388 386652639 820017595 803648683 67832190 412959131 259697651 323988519 256255111 488388751 331419338 152794681 384598495 593090090 721460592 791230034 644446313 849379142 52879312 467063718 109221906 254370863 775233213 30234074 883408925 284005897 189864541 45590464 228964145 201087533 820568724 688910773 5655581 718050570 900336961 142258429 208814044 373270105 625305483 937006825 669930506 747802867 454554989 881458448 153673653 297767467 30202181 932641651 527735800 740081389 125033237 402059637 714219532 360151616 643179650 498674971 452294643 804861308 411159216 948778211 12325738 152169202 62015228 443880555 785941669 546508079 959552706 642331420 691555188 517970857 856674671 715167384 38408040 184682749 84207945 205954386 795093651 13328773 933116307 143403486 476158248 604707561 33162110 615320462 284109337 149711167 807382440 506729273 878181859 299726045 568387909 449017355 391470119 1285408 735551748 354551562 992408644 692198176 501792192 296269034 419791977 340074132 615989250 759378968 172949508 525602195 82093057 146105337 18227442 304753989 782086007 75814903 436025827 408583530 146271178 196789687 846619987 719770563 9869613 881584486 147605373 770688133 354091526 778174114 46886616 632718901 417861711 120733724 171341924 501139531 900004058 361464587 605660365 134249962 717024616 960635944 470286384 826551788 600403560 346786730 591671943 750255404 450101190 872517445 912084054 803077640 118489478 373406819 12997953 415326934 933319184 381922191 498838684 146606026 813090578 228206827 145391800 602852485 812858496 655997322 813441067 23893280 197072272 231833356 287254176 769314900 645775195 956151286 169924783 276613253 594297019 423863456 408040545 279921689 274011453 309025574 475657837 480532936 262218459 702257282 242357690 605756634 412514577 678921876 597028839 259631125 876678071 679547513 868802824 784724236 875543364 764374342 34960929 484059020 384257131 910757812 468488898 494397116 922662014 890536883 294209208 39131625 281624968 362667233 965013746 624151815 810994241 73987395 381257460 472616216 735839046 871446924 307781663 790380169 908752908 480786040 662530363 418558596 747140292 38411809 749937942 954974480 124219059 32255420 545264591 664390317 373598529 874988180 459007221 568178214 91887450 498139077 977994545 651472397 890627980 541863597 88529914 91495175 927985776 989796615 325594127 440532286 644162327 948514503 120580046 700289781 779606549 483834928 236740358 562935762 245053502 529213228 131289349 768443894 657697442 914302331 817683648 251896031 263965978 325496364 165260385 440665076 435003729 903495165 774073160 43930416 13704506 891151367 204533222 360099613 911100939 417201111 942809362 30483072 734268804 125512580 555566362 788310446 800827657 675840471 212035185 746738998 810077834 651366347 604425410 383781296 980345744 882416791 512611214 555575188 119775892 813085330 916554140 426153261 552423343 728932778 607754829 505173795 710080277 407929594 325718683 967116770 93603629 685723109 675480945 318323536 913065985 523438044 816591927 414382142 236777369 831255958 315968640 631871965 211934034 744133639 331680942 931381378 405248810 67371484 189788460 569445929 710515811 71232955 702840773 841005899 443723467 658235366 134600234 187281466 383779387 406594622 913088171 694959369 665444795 937027962 392290845 590097858 199389107 561979704 607791244 575446698 415165665 416306576 69237327 676462243 482596073 793420073 894645269 296977892 732871808 230567866 957109280 591755011 335891463 60658827 433322622 368665457 745298271 290154504 729930443 717143354 690231537 731288599 496568629 996410945 441326598 118200514 418465898 814619362 421811673 341109754 117437566 435038489 250186384 641358259 985512559 335048496 841697868 574152008 39571444 151330726 905906750 779091461 13425012 101891221 525942289 951713083 452693076 129317229 21884052 564036896 272891379 994865416 150557856 489736758 696305331 194245260 938049522 861617899 890631045 6999227 544802440 346936170 934106349 635134974 122332400 559274205 14042212 685402894 983560561 316082787 652457616 40084566 930751499 63493371 202212516 614853884 399595909 946952187 140073312 174774414 280096381 563112575 530764971 405524713 364543281 493632284 930517102 541706746 477319013 550314651 430847404 795600491 617529010 238275606 39087002 816457376 183587312 285384872 87217839 101478663 700170322 446952014 570309621 503097461 922787559 227412223 533252735 749416742 406961639 538127813 349101741 345425918 113942798 384080662 375249532 631606102 9105591 133355152 70282404 621920736 688447793 899616228 376761728 747355224 911575208 496007111 756558791 210889170 370424547 522711000 583594946 210115091 144899748 598627241 972123786 418994113 631572974 908137004 230910387 314469058 356031001 489609865 823517693 315880403 697627355 872059237 184734000 319149694 514681587 473514181 986491258 757247825 852926743 448753544 897557541 576892963 674329058 702839550 53736694 965052195 945990911 299792181 707203653 889992347 590126458 687761047 933641058 286746854 965864907 618971663 935464781 601303619 350964520 882222207 718729399 359409969 352252306 839702931 858815196 585723929 972534864 138223530 179345996 380621735 777236550 225794549 605263175 651248248 523662620 109397685 698049960 269353329 32115645 286218613 473496609 482302910 12807139 15817314 741972178 679889148 54989411 553614434 466313553 382359849 879683837 496163083 839826900 41434037 855233777 738481622 225977213 935804782 729140291 330788004 355113236 528306302 104907891 874946263 944010168 167105394 471857945 818376352 917721190 68513867 773297435 497595273 606811512 307643510 55124248 766845855 744372207 280546019 774806615 796872539 716328857 831705287 274828342 66831616 209623392 764425424 601794051 923534213 81792548 201382088 747653549 697556691 711586477 6078732 992111173 709300126 644925677 537403601 299723930 143276910 462898099 587410677 874115619 192928469 122459624 622056055 862019462 172311486 184997866 281557021 241811863 839590544 990440805 774625326 452185784 982827392 939966788 121580605 352521620 171688652 386322955 738142439 532245748 482080458 258737837 651406896 114054583 467934434 91795350 458001356 308654400 760432367 404331590 604120570 519346191 966949675 719686278 890485213 711557651 714352111 978492698 94356018 963278740 942821750 977754409 841504056 157503064 771340781 204467965 270372960 594666690 517552538 515111013 943694182 773124069 945974087 60097382 584764583 476723837 652758744 553977353 706136601 357655849 664183552 955600509 853667940 597235174 343551173 87262353 201015325 557520604 615415281 611912190 194175372 861710142 29162292 105897427 280635110 372956491 674014624 222571758 447449998 708408237 956364677 623414025 114705453 242788319 131714389 639503518 487914371 648510484 942063710 220752513 768258677 469471657 36900338 732603483 269116438 673504986 597228580 81880011 416476559 760143669 468693666 466938418 281286400 11714102 902841560 730494862 879483684 227888241 39962062 842392404 556722804 790044738 586787523 333244354 771966275 591832657 302620316 259649314 36606270 34637005 365997626 49454261 903376973 775774927 168809710 856889254 456433161 309526471 316951689 185184975 550171032 960707915 93993243 465641029 326290118 161816827 74764217 380207802 281161201 461011298 982947333 508733799 806374549 222562169 858519077 533407199 88412284 740353249 50974401 965875095 819341123 69662771 986040556 297818769 136047634 780120097 863523677 81359064 685392746 714978412 81589755 609440109 473548099 554189515 27221951 237940464 813466557 817306162 935800426 836978404 999916943 10238776 986557459 62144553 806700695 498123952 10257753 210172272 518618312 335612627 315983396 849584217 678810430 135978270 266825716 703607321 320625597 103467899 185185079 127318864 96353124 566856265 787995225 68717634 21584779 93854338 611871472 393103103 33669990 657510893 352696264 61676705 280253644 638574968 765993105 142708509 732288517 733130925 483399898 476173393 270760205 804416244 419876593 524414474 767944186 436391432 696419287 56458273 613777199 188367736 751857412 782360151 657980017 87070940 358785816 195551742 151541590 336100199 610097779 672908963 669723240 596893752 990859508 38076171 658525440 79149918 521084196 406094858 691133513 656321598 264024879 245073776 377378247 998122522 899357990 834113717 529404248 788751127 189008631 56950336 860510239 15472813 464588619 691369071 931303781 369764272 282259153 602047622 78158796 15535326 201013258 987922581 780526225 876124346 282278094 662037188 774685856 745528284 178713911 98785332 240020239 584117424 549862165 95449400 684634031 307521489 681533859 176655826 356095135 856766618 394422103 956255923 840805420 182895155 22455915 597312692 930638502 687311664 206064490 15538908 404297639 781595349 172815056 519694175 224926408 228234734 128746592 542456137 47310284 884608299 498041544 564133038 282302842 712996128 638871828 135318717 230083535 993798194 269415906 922246959 395591313 150394695 61553351 71801282 812748903 477307844 384834210 81745453 723903509 197069817 445681992 318158639 826162713 101504599 808881873 617019487 58891056 726975324 987493067 401924663 141014061 496376368 976025631 198475813 220084213 459592862 223018062 92427923 523647840 738236956 87223202 698862385 99886631 636998351 742781705 691967577 67992572 765579238 411114331 919454560 912838087 837186666 402767860 941666050 62436779 384711342 570386678 742203728 705383982 858170107 227960591 245178947 128972497 806319708 833306845 883018278 582243001 288365356 190413835 815474818 422418094 675393561 96535881 905530748 775674115 52117825 438580268 344665259 319196790 428162201 945126055 470101838 899786708 109860607 845896469 682712201 826891976 693695434 227095895 827289266 509726930 721127143 500106770 218355059 55333242 286642209 118975539 749706120 216166101 470115762 93540124 218333251 837927204 201207819 867455706 75522048 611736296 614147866 198339419 831394060 491050494 443840510 973648256 462610891 158969579 172257747 24427105 7566414 121002213 1105780 375962305 780207951 761757091 284821726 808233011 75688282 881052943 916438388 442091825 910755368 179611246 205383663 702990356 740305317 991017706 791227837 442569924 781867749 776268407 710710367 758829166 43942228 974425590 58664958 28714541 86520924 390991309 97200975 810093137 876184552 124462239 653919071 640333385 711874311 510841696 509306049 504621382 935785688 995587164 45882511 262421802 853458242 607907628 233124842 763340863 533920877 619284430 180077985 235648376 239879139 37697745 626178439 749423704 477014434 405401910 243370991 149774800 332485923 682753214 16600668 650136750 650057595 108528728 296108394 681423133 707294710 530022067 613495331 401977968 948938946 869308423 965863072 861705764 593164631 70836303 339581667 299415156 324227043 419234565 853943080 580920833 447881924 941515117 119396695 358235987 897295008 395672080 159561473 409332254 628240605 738874556 700677111 824626598 41230936 868092741 506686336 726237742 485741690 941590110 192429979 487731976 58078089 859858097 553905779 530276417 74595168 403041944 59519789 716674181 978761126 571309483 515209239 173511586 204919345 268726448 414489734 410422315 581530940 535120632 838205263 592091114 126903572 577282412 398220248 166591939 405746785 478001806 931479453 932041241 723705719 606881414 233038577 780748601 993471173 446836539 879584448 623852899 247103419 683463857 314735450 387329174 9894995 82635635 822002206 797539434 13614804 742962939 128416870 178303257 115558656 753107334 392324700 724020715 368757111 379468337 812571339 455241233 584215196 44046641 573435194 273238923 890322851 326004846 215871949 504569487 916460312 926910030 941938377 998157408 99398954 707001999 458275672 206528951 906465725 433727538 20209472 679253091 315756474 685237557 999533229 204885367 775772804 711984709 346462924 824886081 442798931 915170472 671217652 692177134 580006578 202439667 792857984 455412542 27284635 46011745 905558459 122024066 844726327 79646882 582154963 550263619 572222949 919967432 142946443 676701495 686639843 764259493 992610524 815115421 79843283 786196690 234057825 650889494 712492496 625105774 309059382 826227895 673618267 292013269 225942571 31451199 192235775 390124557 291219754 78543702 120266500 646231557 332190363 786237701 607568628 994155580 481395643 237380922 674222112 898685955 714798722 569078012 84830562 661573954 609010848 992491139 71424828 750894687 37418230 385047603 966078895 665591050 947805867 765898741 801198267 232238573 748148527 177975548 357351395 132747235 457602386 566692182 688088001 569599611 730742510 63402383 232932081 285632358 561830873 541397740 724980107 217296098 97841437 937875343 446674559 979565253 885001213 380010080 681705359 463024845 877997829 831585341 289849403 833512591 320272027 861151667 111266908 893466023 108400837 910357236 947828131 786268290 328498904 962087409 436077613 225997167 356234762 301545830 705747993 880113513 218371894 474842202 561292840 637422409 532216144 723140977 846177465 413493078 812868045 65540744 735061979 913956580 342844492 447137481 856877722 886344769 670881367 341912999 916304619 32433031 691696187 106079447 148991811 183503512 247380483 861095979 429833929 636844584 859355174 512547617 517707075 921302032 920099437 624471831 450115862 572129702 551883641 717968184 627295799 138435121 778915331 411825733 687348404 902358388 110976728 719082465 988568571 550189212 926104783 965254752 29880226 487229356 899752185 527712796 397463731 513782805 868055177 634567512 562003981 538155080 449905600 832398047 898413997 404928511 194914422 212683925 861426452 501478071 3707584 13126479 69539550 335497555 586934311 213528166 878711300 604966034 281372117 403066850 561478474 461799214 560009996 76653746 7426671 517666170 69818338 357438072 719756144 739942252 821411568 234398156 52000173 262422032 535308067 93265412 553003235 233958058 841564640 108094708 477066449 596710547 379940907 929084684 73489412 140379757 592272487 418867664 979821004 542526361 781220967 406502768 263028261 145790366 754108709 634761095 418536233 60156490 48221968 49926248 475765042 330715742 223617437 849758606 441164028 266918337 987498250 805903229 49203104 664045290 684251311 663040502 99259054 672545954 929080112 841130370 496694298 20054846 125538392 461187724 848898915 224336153 819333315 52322529 358034942 649621244 271393421 125225709 328920369 973198812 586530163 265506987 373877453 190688962 526367028 644814422 513325339 222041376 891188734 976268447 332044732 36747459 691091793 608829562 590310295 333556678 636093194 446047555 396421048 191536593 356029532 383328503 943106110 161106903 514150924 359425414 895206936 237924990 779598180 639375445 980022964 828557102 405721104 611104080 139370766 675003786 704038500 662118758 286987513 958056847 893070948 756982981 696784668 787003243 471514567 532411054 298535960 691369731 896897626 911893746 150100081 238354407 548961289 439059099 652536088 843611533 458985501 979133633 299008547 761135024 153145266 398307361 789309267 672581440 197207074 996284639 189725070 76378533 267925138 16315466 9995418 338808761 8854366 665613560 441171944 992605739 376466980 754204225 66324115 246270459 995866222 591757758 890555657 27104555 805400402 155649299 559981487 161045403 784686229 215501501 675303555 139645155 88058306 639457790 511172451 440954008 950021828 680305140 727190442 782546815 164708287 353016697 92002075 196644178 279993298 572441411 931135214 6696323 79854419 929662186 789186212 208428491 671089337 599690548 975923413 531270948 394114243 549508211 14610646 394650029 249201473 577659365 218970391 456920495 268518056 505438916 934732226 472769852 309225123 301302727 365066207 971366255 148041759 18780758 639795931 354424579 122494314 829786433 884481008 378935710 175620922 208569930 141640728 577542950 369776603 827512899 901748379 111981965 688123578 101153950 373439288 659560393 550933371 909424994 951427822 381783897 440251582 833289346 107618633 662867489 356111960 227886081 981826238 144285332 226162538 843521422 837651126 744044728 376101651 114396553 958605419 780956418 343931268 735623221 992455575 194957578 51663715 135288470 969885105 67422171 513623277 151503631 509417152 590259672 293240128 23399256 755554267 246121983 227296419 328813154 101689997 771970318 321189051 380248471 500877457 124380488 352334321 462254136 387202234 515893258 346060426 797412684 396335542 344675669 964465934 986280349 548842598 58493078 708236363 658848278 655848569 255207825 162419791 395002143 605951406 483340001 634806690 277967757 647158850 207495529 893028985 396477110 369125954 973438667 774137043 363742007 482965425 817201891 750653470 192312213 646394725 642268423 738505067 92366678 921164103 576934179 225828411 756550966 581155726 825711794 629617269 282001394 340439766 928683188 362643801 700116722 424635861 983475975 670777917 997646998 978497078 636630631 866683542 595006235 189974299 237463368 69665116 665907571 422958904 774303752 766575147 86875168 161491120 369032006 146970128 81923037 932428406 187688242 699811787 72747940 679809860 776619261 434499325 169342368 855852725 932815783 982927528 463590374 406801831 139211437 565134939 379655849 988327599 806185474 331519582 216093508 661628076 125632195 218667281 48839650 934688811 789743892 611035996 402780076 648501071 972378066 383153087 18357668 41579034 509526662 710045269 52095861 914315793 146060180 444832648 614040821 139464382 1994781 83399054 106054520 627577218 720283221 839388931 900822346 328523479 935504852 775574703 995065381 574404689 176020938 81530145 503772438 333698668 450900137 311701468 416978505 788615153 238330480 516027828 201149055 303934385 372197401 489432366 485601188 841983995 880555332 537164254 735105290 716504464 610184872 430750589 872667125 633765474 470591451 28910461 201738965 720349273 872196402 111383062 817614238 298864053 223653961 944835235 785402093 459555219 416122941 83402925 331661130 52855131 756303032 19484051 997450191 485674058 790671033 355703994 526632087 543345130 183419694 979509704 539306108 21841972 62434805 26388227 311990818 665492485 174795874 689393589 379478244 9450746 592633300 379989698 736625231 926439904 367805813 661433423 470786619 687623550 444929565 321665534 526081747 569052297 701528671 239527430 783388383 412718080 263236898 674689055 955231461 560684940 111873706 475158609 856809972 245199899 465491728 8296572 374013189 109247992 689434841 945204458 630801478 667565098 451760287 80859086 436051784 573233038 127274924 940482084 961479673 271821748 980813246 241460875 577124851 795547185 582156679 81290747 78726160 941303866 181736605 302714918 981123179 479058743 725180424 824453534 515384643 332994579 749024712 216302893 75554830 28616437 855245229 546114553 5333877 618487770 299611673 271412669 325507219 336790171 438410942 699702121 748202303 396246144 889287819 478144755 633027924 196493762 317788166 313625291 931232044 872706059 276400802 174338429 840816622 967733932 779391618 5106438 56710304 843985205 551999836 739245589 495739972 133466394 334205161 285550331 86585849 792461393 100460721 367820508 532063806 445368513 630189138 114069256 86558576 442229223 917519093 473967233 669655407 270426468 708262097 562748296 470559733 465833225 808227046 18270284 32498668 348571275 605462147 29360424 865599652 687543585 543102209 714334548 701939386 748774573 466890944 201216203 554563491 829954387 640003830 533612556 72402824 777574823 449029032 702770040 557330969 108706762 516562699 586719229 702093994 134945786 410260957 635818126 629550195 920309563 497742270 251534831 362516196 891378195 773255480 727779876 193372503 750425625 815231137 276038143 607942829 79207827 619940242 813882801 204681671 941774310 395271734 741666427 983033431 847931884 340505454 643939795 923636880 914449604 593728678 471476043 384021887 791180743 717385080 46486606 36853315 790622690 400762263 161946010 477221397 517373108 11839540 725686375 30556494 17978300 473956937 940910485 87515985 751210352 577883565 704390502 918689334 229305657 424804154 842876519 713401857 765972225 217502835 720222690 805298 325194096 667359161 186934066 335855333 878558995 44444286 790985442 44134203 628387755 895728487 165202184 2388561 62070266 34741949 762123545 2617220 903511962 51399511 989711191 352151340 104884550 94206760 881133423 73153020 414712902 177948144 752162424 769500417 880835133 883037672 869102418 941031129 680265253 24303446 341321677 119761954 44055380 90134321 192604520 372730199 960429379 854190809 679149265 568350811 69173770 324109257 468106221 152702760 205196810 689302124 288530578 591874143 964531073 497314155 330426768 99772 512115734 886998586 375759006 16113990 940919169 324687903 41261593 221780303 414310828 593949954 358212920 836203448 844024238 923543877 303026834 194844327 342559447 929149261 585753276 706785541 176079844 671959604 518945595 782777358 103938052 788200382 218994738 973947509 320450016 719177069 781931230 937022239 470891261 939424404 507525052 83437295 881619783 33905622 62550065 913396669 486524058 68064025 708500177 137963665 663656700 193676348 785345978 13109634 638022107 626007872 820206388 672296112 89105873 42038365 791136717 302206571 557073871 786377326 720937314 648369528 873246891 109807515 368514211 363533611 62906026 381063469 812725682 821487027 658223365 864555852 796157431 306352352 718440683 350930271 133500780 511991166 665454612 13508610 423327421 337050112 537989684 930144725 74969313 875959168 624955309 698892731 784964185 295393406 352678904 147365978 452237363 942670153 504878830 865338172 21346124 842597200 134168070 260164384 309953708 618660168 998849387 725058842 57403135 313849739 496988598 973636605 605338466 478251141 171509029 938165066 371395094 325905660 175480945 542602833 323139593 790705587 172939453 69967449 738912978 744513366 483048933 222111508 798461182 192593689 635934054 772365355 89660891 112236805 437571046 80604819 123079743 55139113 655994529 577915117 645998591 284066785 900265190 894836025 19157790 760629241 397179565 1284370 493181065 687584665 916702860 608687678 883895907 849485837 886323254 239381233 932090169 233106320 527474315 861162068 927155895 925662006 115785440 292247353 669679442 498649589 329743980 655995901 572342775 287249387 945069887 255524621 148392033 747243498 91565250 763506656 532449526 853637305 530836413 849549637 974094469 687672513 303105439 865428651 69444941 788823224 835145188 289705225 113824202 159658383 499681039 652096009 153833371 700715124 696841564 903119247 218864946 279706642 996851010 428125334 196820992 754814394 697098875 750126155 787113615 495339995 343174352 91124951 544290716 44164860 141181625 692633574 742706248 562045298 413144157 85691543 437383206 222380356 821660296 419922115 401305591 630539831 345767327 637585827 424645985 682858914 84666782 133737536 766643080 243703929 69370524 42086039 337568134 169334611 771454658 85464891 145197199 965992010 490403099 803571097 949240263 817659051 1637798 355049093 516133019 896602507 311662116 431288828 34297189 230950028 385453854 317461251 338254060 705143098 709214398 529280908 527445594 622965696 417343055 899794515 167426672 215398496 553970436 902580638 305132383 442638485 381984567 725716965 854822992 566520202 158256789 391346020 35150277 481692456 11719189 137406681 72681351 760756622 797468642 266749206 14173243 601350228 887751801 135851522 966551957 914989736 3801026 194091075 46363638 241669267 133756210 940135854 427819199 876398514 881524646 832912014 859597134 782024172 880741155 596846862 728132923 23884405 942430002 551346914 545604275 401210876 610932547 26872946 14240019 712035754 521767033 523310290 810482263 330734712 312131183 24323413 563120397 298507583 426170300 664826484 146017873 511500097 651633537 451451354 278013431 547982075 451176591 940961556 191772126 732012896 268688805 101682511 491379630 329416047 702376718 655992881 237049993 614402264 935648612 858568510 964310363 934505484 10295753 252995673 945895630 144745722 213751644 814880187 750465280 505970232 13794856 700302924 846710249 455594019 803975698 111878283 884543904 963094289 844130164 563405240 924382337 763550747 871030916 608961098 659395185 751651750 706142148 27477361 127196435 658594260 800049584 878018005 930529427 158776255 811307033 715469082 451044926 266389536 941156770 5015899 137900496 423923112 407413240 188261371 713201614 233832324 805015858 813615003 299713159 448697674 690905899 548667876 226734140 70648653 187553595 431653851 747152622 893044146 806927499 75754195 989817630 984564516 797573246 589166241 277828942 118661834 491344506 661594941 855640576 287046759 577103975 535869789 560193281 642021968 563889015 307933558 405035788 439799201 460745428 954463260 470848242 293404359 107552810 394427056 379122066 590103082 986298051 783629291 614855320 270625633 672999596 991895498 450346995 382044019 906049547 474469569 144225966 316704880 81783755 185169006 830121001 201050 503989634 604903244 574938095 361109019 607661431 316124509 91045407 580192584 278390039 24382254 403438347 332369948 334192488 490660347 466337062 392103644 609556979 529696423 488568714 255620193 759696102 550894327 157292921 30770161 431462214 255340896 373660611 895150086 574679064 971991562 68563662 640293970 259836429 214221746 533753416 434810208 170536525 973529637 46483132 630609444 617755427 116043305 975429615 239547107 231535876 208607541 916719415 478003319 10376239 987875863 331689062 738209266 267083572 529265466 632029288 638258534 564556523 845205043 446682847 199469723 165748990 935107669 501664635 56169344 399198177 444936175 908552896 968635935 663646498 685688381 825943115 524548810 711904062 701154902 824055396 815449088 840981267 649492635 719407600 745155200 529721085 645183257 715822908 445959799 969005222 260524882 408732880 945921601 559725754 543192410 844431558 219323066 534387467 524593947 880404983 900871872 459487927 448451892 568412411 603464494 854581807 208089425 825997227 502947888 697875242 90582693 184676995 962481211 6460475 751265276 893326947 736506234 105542262 878238416 210646143 913897851 311908089 833250684 959708159 563972317 797614886 34209683 94598664 874811090 562379510 23230149 934467229 287387726 948122167 9156305 116266166 820543987 923540633 998867280 224978052 878427075 350265715 495783269 732991064 646425118 941690681 572033240 400371387 173421016 954092231 718328177 43491979 390696865 862108483 379999433 629849885 393943285 300334646 465887558 264531266 832581633 338203723 866611688 262813863 133977082 713958221 308054505 829624923 817987744 861485704 873750914 890866397 978328295 881482013 252765996 85081386 338180806 651467935 98639985 979056363 550903313 336979369 350173691 127075281 472279630 530459016 306096910 63253446 605961059 17124083 752960060 11190909 912340939 476023781 227142416 774590807 358380882 56773465 886102139 973195746 162569516 117589040 848777658 75641190 533663454 35733098 197305012 37068831 720862723 276991859 248220847 273261010 315894994 555117422 917212815 794954113 291635456 995315803 5600781 146415488 287639438 935890531 943356743 537985360 257688616 630175184 313768568 891699708 488199640 318410351 558362125 318946542 685138532 614204488 401434240 743602354 746129106 576817048 799906521 451512723 116807884 621328354 166387655 287947255 990038415 927283102 142658875 255720814 826590178 446810768 879073609 575646301 591509950 780347457 924858013 489196167 119741532 627437373 361503803 61881292 168789958 582474005 539969719 426026169 851620121 123601281 135176385 155342026 501352283 273777023 938367173 875819537 298132663 665439673 172980049 181449852 81101351 405716172 246608960 748593783 135293870 714721824 691329720 144575757 164828967 799122557 926700684 526410553 231864622 857310941 994278961 497986282 365477451 455300688 300191263 442093015 297832364 641450069 450260378 682496535 447136938 873123640 29314684 674304616 457798270 862673473 429531639 236246851 461777034 955453921 187775813 39437150 835474405 319022371 490190825 623458032 526780992 9253847 730988709 482606930 733779384 182427714 940479551 424176437 339555500 183579174 963471510 982814061 306243199 831977356 77317938 755730254 162096320 77861759 319991119 119794815 155168521 337724708 738841344 515400620 180961382 785618644 294403496 536157125 520464195 459500301 594428517 497373278 722089547 394615382 803797901 549456731 67026215 691330223 516770384 635415269 671746074 988997045 93801613 839837181 780007928 86036620 928237919 683674967 444615852 757710148 814187834 681460099 323025988 925187155 730284716 218466819 300364489 265008898 599817483 390754285 937920571 161750902 511468819 375955802 921485473 879845196 309048067 755702651 654354548 53308585 986493386 53132828 945554494 309214190 665365965 509607568 143700342 674133312 479415827 319872677 598187168 434682821 726656401 724403921 727794942 383918255 453008008 337013226 857658445 293894751 949614056 324454667 339936642 831972692 859312986 518866836 187625546 757408177 830540724 657777190 198376304 367963814 939257254 122582750 738806212 589535630 179765229 493267724 292609699 215197182 570249772 234860757 329306629 28459885 709113717 167430912 73688385 488328399 740949275 64017835 781992828 272804145 111824007 559950007 417088494 416011529 389572629 337363965 766835289 881360518 999938461 127112246 581127772 997733032 413068034 151888598 709694379 569706139 961059015 572287819 282053629 114398348 276735034 619860163 566866984 131935111 736557049 717436062 208496217 455266529 543647597 415738766 83097539 468931007 842580874 539786485 664992818 669418545 282331199 145195161 514740262 318199391 818187560 661747584 650247855 704297022 405027302 49910242 983756195 17209835 331596549 558526756 306137074 650904133 687322193 26210861 1151827 86252244 714086512 648691522 133718379 788130274 51412559 44494949 724316332 5504294 792783035 102603187 729727428 742758470 625462481 931500724 271665164 350552322 286361707 638065513 867892932 305276109 510698863 888836592 371822318 597726404 30488264 509808570 937872521 971812472 727725295 247388237 208255030 719979349 153831243 80732588 224620685 738780751 926732996 452147389 723631109 539827617 788979725 101713307 729006297 999056458 678720364 297951005 176725246 178583963 733512333 546112007 281186812 492800983 556087258 123740207 941048015 566565123 52270960 130777401 591478523 923208398 200078024 638990312 641567557 861949066 598692515 294627632 515206462 968464112 856491027 264000308 290573834 690474225 540542244 2768254 381042391 218819116 228733081 382801640 462940974 269440382 940652858 567729734 503424071 735884528 997634807 763186322 790049852 84910513 109715762 654077519 82262778 892193864 78792231 263037134 131869972 379987781 350678286 21117455 782262961 625134069 121608589 612998307 946023417 811855589 292768431 512457359 815561929 87085291 174927816 26137602 221678959 721404399 718361620 131802591 886060012 518839642 88123600 900911993 391872312 56862737 571290806 534694462 844959325 172011697 202857693 641726239 712952969 731404699 927545403 993332460 218529314 778332617 242479185 816607081 356341106 390870013 909457276 794442369 997910745 826272907 827860380 483117546 374581996 778024481 653873433 457205810 514353170 192508452 396270921 362055481 493512914 115276930 222189511 309966299 813936230 787327086 237891341 663847416 906864269 230641748 732796317 39008712 967205665 260627480 150539939 319354048 747698679 494918327 587713015 721404283 119008325 799182153 629512568 964364228 913399548 46058240 585599880 789935736 519643022 535821675 21892776 326660815 895011555 144226564 855025952 802235971 868833958 79893519 150244817 916054178 395899492 678926837 345293740 861574761 634202555 546349221 935072157 284003197 885938433 949230893 946554397 280256598 878502228 100073675 864948050 745027533 650192461 827838351 776072043 549420339 337198179 896308899 171218432 500386261 552932400 780257883 33124724 191683036 471316103 705800531 539988982 818686678 198402926 500607182 476451472 666786163 300778186 203499951 610666198 826563827 106508798 53043800 600587050 302740956 271439712 139030968 212400275 261576046 934006051 871638877 799719970 475791092 176156980 834840664 889954747 139824261 611198284 931300161 142204678 743005766 302122337 78058635 852638631 409084933 546259233 435706127 956924876 92975797 795468109 390675427 552720151 651228442 94843568 475112105 815861825 706771987 890597323 417492805 927757317 457084777 591691370 600859347 527995292 952939088 860096399 447046783 811117283 205040824 625890819 730131769 362585081 153293306 108879465 984578542 338427972 236171229 341859357 512539611 209872861 331297149 850763878 996687560 69955264 208900126 217064067 47954922 935976128 647986948 825008737 634627369 541907633 260339766 884431968 1698819 842055830 612874717 542158635 200144729 586529007 265329231 166171656 47762907 515514228 150001776 818123294 199743389 351011900 832100855 669303259 428459 317623852 780770065 463622955 257454019 400864307 745430547 705721106 521219741 565072546 650711079 188546952 327188094 141894682 437834637 544393787 240041802 703645127 516916105 882094560 935176043 724571778 817579287 436766181 771455515 45733184 941874798 116383924 6318982 210346996 596784056 390540178 540101511 813298933 652321822 659291929 757821860 978519636 73325456 828433877 522545709 956460710 11711731 613839384 976232248 867598149 391055418 854440609 206550332 1961256 284607617 937193999 298436898 323205542 438514981 938908414 170928984 592508571 603940684 961882663 79598519 784012315 293445549 876452682 735024784 851305916 472227014 636377762 865192983 726870790 356055773 422832046 191427408 657242452 299162349 949477986 868890470 712910628 542291579 535770799 837737642 548459983 892211055 870404051 851224002 545435039 143564876 174914812 944943251 620467732 159211543 391367890 525309200 230503472 718180421 729802473 319372250 633892217 811446145 570563279 1767803 365341041 527243227 588058998 639274775 740126397 420019440 271691320 868772697 89734517 225503531 223113778 695172979 297819820 914753978 659334636 719702131 375730122 733185296 874720702 631902038 626640034 35788484 626738630 666128671 924039303 121688595 825271691 661419648 64615108 586740324 256409968 859911213 852388535 274500703 662445316 417321554 39645606 310466528 773584206 925519095 196258558 598170946 140632407 378119833 24016175 500143595 428444564 142385773 386419957 275762052 156655532 85962538 52707294 539586247 181374277 809765926 104476200 330438718 507393509 650311305 6546034 657878774 854418884 524504787 735463242 474226457 262271699 110491494 618103617 366336742 267299440 500284657 824750118 180007919 90368308 993432824 338047714 129177110 6318666 222832868 973441148 477831169 319271933 362323255 889259239 327341693 960282097 193363746 813259300 425362727 922324584 123010125 814519415 669511322 818956302 624023290 402229315 675780215 743888075 222670521 965234862 643070383 937798131 21247519 776260208 124070272 595160337 342968659 570911810 986103629 754761402 167362658 753273106 178239723 451608510 857251539 324673431 56206341 649079832 2779539 643097546 214756130 161353298 425916277 879238394 612270830 57925572 219861946 535239425 495085785 851088507 502838078 409012676 550370302 860965328 601867079 992581495 22059377 738128301 226228557 857534244 49796907 705658181 110536571 897392232 168340595 923261257 480570611 814194559 526037938 430089977 888817320 374216041 502533049 121170468 247501547 100471331 989754694 885606879 444085351 379189349 427766742 180698474 799548574 85704891 822551723 501422053 123301511 476119775 362306153 418561528 986985352 316955784 759784342 872448403 585740048 811197932 927248106 20329160 500350897 475115913 366530611 953796544 20807323 205326148 886777610 125027583 917723862 398953223 3143625 351182700 573265538 964113785 244060914 850412742 525260018 689786042 187991661 192497351 176658753 481703257 941030208 985557620 847362358 935287830 625214943 987701755 746379653 269237248 303437859 122415865 803216350 620909662 208705319 134953170 52830929 992233569 138925531 710059223 995898370 407846629 249873081 347104752 332734563 835507641 391000961 410648722 206368936 721237112 756750267 262806434 816331340 533520284 114480460 727064144 952370364 944601533 431138068 248124636 753373621 132407184 268532982 509286762 246703384 982954866 572535419 465755346 776219214 685387188 529128238 186791415 56453666 621545369 438717435 488716848 208497937 722083882 597032699 903936427 697084514 174637711 164813943 839029926 620559701 322826596 238275357 434513465 11867032 826348744 118864455 655991877 672724433 4095552 560830343 613087222 204738501 170602177 771154338 981700541 637176113 944312854 648350031 290849281 546637093 208267227 810875152 424067639 837694749 241543810 403332656 682540571 396794222 197785053 374850423 901556794 540364718 941025415 633069994 658271092 690620108 58830090 878652198 155799795 154835444 168507045 241605512 5003620 821772171 560828912 500355111 410887595 193989177 516774216 440542106 320263664 164425910 285014848 998595276 278693403 76606627 541383113 157066066 615924742 973572253 535687327 251211384 735939608 63580260 547646867 834112007 541516374 460208123 584235487 531197112 206849343 200700430 447838573 285092004 586896857 774303477 679826158 158284122 17285201 765172392 247571283 981821174 963345926 373289759 337393714 793272594 883094153 295903671 14036410 90320287 192499091 711803128 344669218 567088229 855655332 87287609 779912008 504310565 234308980 693627327 300524533 79621367 103450650 687749761 452076178 778868093 750740632 592561142 714448399 149517531 304201862 495591958 553473114 101679995 422199248 259497738 519703723 289485358 220947641 888303433 90899034 159681933 568493522 767448328 586640960 932966263 716303440 940890858 638317400 825243925 691174054 749849279 175769234 668776330 108963952 937047287 110289770 265401337 856677733 319723335 755528766 904450417 918863401 846041591 725620004 861106463 258711664 679143162 328389258 270510347 944122999 785725734 406681765 657259300 491666851 362130477 916113491 658884996 894547731 884478331 402219514 982709010 179218702 221951078 452345962 928224743 309513800 300998240 913049941 416466837 828239082 551645721 314045120 338200235 185417637 602786229 867803222 697222088 564079012 516259158 882818031 981555248 947224873 778842214 129880104 749278527 989926236 383232110 40467463 368324900 70793926 170262307 683083139 411895077 9413068 353112074 449263067 337693001 465183288 313232557 854875108 467016942 625707183 472665042 676977342 300839556 521461846 462790589 14209080 602871270 346407226 189116896 295742486 110705973 457508533 170212768 114341718 176761001 958404127 514615784 105585480 73551422 343066096 872278358 968763263 293882543 883370124 371999977 733879697 457943420 855692349 433109074 711876087 337167467 45738294 249287852 170104179 453571292 769577498 512844327 942346506 307656734 199920339 375446776 191388331 212411621 831628790 174795186 131076994 106612093 63670259 270627780 842680767 53665560 481520101 328093342 334483735 21938013 733653119 828557046 598268088 214950056 227255221 563219923 233764739 946967918 896310280 314496173 891295513 841562882 95528940 671372430 169502720 535808541 421127049 257918857 570400250 454324739 268077028 379655580 67039805 432083663 991292474 73580475 771120836 229626616 656268865 867811945 120685454 751184837 658166296 24520171 574030640 714875166 409210359 799715328 195105640 524042901 752588340 786464983 944485954 772058048 67515057 568959707 930110042 882942219 30249608 554160693 101367022 762460702 428411589 701477382 286048243 990116054 875069453 23652947 971931932 551246292 469068949 963930902 952555556 222765650 822558638 176197213 186090245 310565162 36514931 220045357 319106536 664771136 143537537 421569198 287412148 865748368 196531876 710749345 440492506 171569515 950931374 833274917 278834697 367384333 294270819 451659513 982036520 383201986 280128677 303487065 137877825 15965038 633343428 840410129 641254114 995730632 495091520 768700 247441202 661398586 612642034 746958490 451086925 53483359 956293328 603090916 179525305 185911962 81745469 917266570 113191624 847819336 109418976 703919173 979588775 213710682 645695742 138565147 717711273 549291035 260701074 896108497 388155049 735726907 890211283 762833863 728896151 405620788 15376202 352141694 590290736 74050789 802837454 878252932 681245358 648111537 23539874 422584966 81097668 347081017 674084172 854557647 965680419 209474454 138246722 623507068 275250987 833822677 639196405 76549885 698699569 826774442 800313438 884504551 171724273 605688046 306947991 809539123 820472863 454119945 870817005 845870313 865224051 490546820 318495944 532480226 871491076 149789749 579874623 931088331 734575261 953976047 246328692 393277344 516427482 11554079 236486664 23128929 145398830 106700053 762199204 147069179 726524799 516123225 700202896 406788646 303230188 248751065 320059907 541100574 624229098 295883032 320059157 213105197 896416700 332231239 309672512 67982710 160379582 340477163 717159703 33359659 434307396 751788672 905104758 61977258 375694298 263987706 737207944 131761009 566845850 695048477 690505041 218824429 490169196 750160418 70375817 447470576 271806722 79454197 69090661 896020959 888992284 706898569 704295233 496297847 708382119 841377020 879276582 63250253 976042180 336940192 849949747 60723276 144590676 678732106 133781144 800347403 912858206 856483135 256748859 628912318 149244949 168515684 982562246 465047356 28632323 64667194 928124939 379694519 439967167 584609545 696697892 328166043 517390783 975322558 859839583 126823137 257256847 699042133 535255268 645390264 209178927 398700031 827870909 742707299 780708877 668363960 55023642 246373073 800397181 944402588 964452558 517304283 580004789 700653182 370648681 145918313 59224181 971190004 13551950 730239364 176708019 395154695 581931502 35465824 447754942 619184114 511466136 825635960 986260520 405006834 167115910 339777481 303786177 175405452 660719470 478781874 411534708 664377937 836981771 589871211 714242836 416089356 598225461 150366447 546647107 974438852 362171591 446136333 94918614 448926102 305458575 456549924 560611348 853707415 34231921 724871921 999991222 205878606 303633840 824697686 410648821 496793930 696492526 784225702 728727571 272504313 86466547 599453985 594222611 743483371 288115450 422296969 456140410 807590315 232955508 825836164 239267421 177798902 215374926 832298833 456680708 673615079 616241968 493917363 398596591 441989390 517933538 196647499 907431171 884521743 490051380 621647751 231770661 913122413 595311494 183474337 893258621 575769895 72331222 282484954 533667947 757409561 705989072 804348308 582483235 965461950 950818767 880848704 415975602 253697664 790542144 913277460 372391953 166599300 36598803 191194500 192074497 506161144 158181066 379193107 522518526 34270838 18920628 982990955 681292676 460367814 399190743 1177469 182537218 304308218 711929461 252123263 781024750 58402581 229352265 195395863 895454837 196387324 658751140 765930951 531902744 731351937 203682803 877957138 657999741 150943803 814531121 167841341 881276912 838029940 594574699 53441021 501182613 652560636 514814983 436502634 946467405 410743205 220911333 67854388 44999378 630911168 65538418 516976591 791541122 919810768 493033184 495964717 214753664 946094241 847434263 58013400 57667984 88024585 723427926 56835176 320822630 734828647 896009922 627114678 390608642 17292044 45248152 720142275 615665217 835011017 449403433 158303102 841098126 813050227 482928238 51423628 454065774 227227848 641602998 856315120 400797686 625708721 387136440 864826814 149444285 966121089 497164360 174061096 249179381 276111573 180075537 362867289 58070601 351697846 984189052 915079681 789356881 53421230 161666370 957497692 400014071 813436279 873974069 258072533 782874762 55747720 937186997 474538159 849224972 722836482 332496017 501672163 301802383 934377066 286601952 635133666 281218862 685739340 673101171 661484190 558301623 475957825 659341139 307005676 251542538 680204081 131702242 13061864 250600766 632275560 523450727 368802470 790074823 317051260 208047089 361598600 389821705 89646033 924108247 353671392 232592317 908028848 748242764 722051570 277226838 968674044 205910779 599680830 743571516 36136756 656437232 387841715 92473390 929448434 334609686 696669342 868731680 757279377 189585098 842236401 717006540 28965330 121500296 450952640 536067061 564961224 999981621 146126580 946139836 603463401 894011358 45691921 505515377 350861053 714188508 327570076 277843727 164392984 415077820 561059300 608323029 40880028 44933443 1594241 941148193 114261997 58458805 316623036 464710770 828174317 929752612 174150787 34201157 316511739 55114317 569781719 913672449 764338236 250455384 306152729 415314309 87716775 595030672 382047712 101177031 317875245 935269540 213477448 52483123 405026274 739830110 986421313 19647802 39602586 499639502 948754644 471580578 323914183 196260141 83341399 639972123 289928079 559866710 611265244 188692293 303619184 875426099 681622269 835652629 856744951 535045955 37126989 518565916 912812002 971121254 263371731 328662072 483407823 860315475 790651504 41352438 953468531 886840464 938450472 462643848 549732887 950000069 210304309 522108413 981212986 969089652 812721137 6430578 923676013 628819407 469966631 854760998 754482819 467744837 540212266 825270549 924193697 85662693 765921563 185640288 557601749 895741968 597643508 284901837 352005542 877738974 467112590 993661817 708090453 28482607 433840071 313146999 34856441 765941130 252124375 980930093 427648208 174474266 236818682 523188224 969818729 957674605 798099522 686845480 333197878 526983707 498718224 96448574 78872550 852621755 965811566 117801941 291748155 587262039 236702927 554267193 393772102 326119460 918434942 28866564 854170557 897506114 875673067 159828154 99081491 640862309 785467116 732703957 986534160 952486036 676317477 56613726 228264746 837940930 242293929 217378917 290838657 629018127 384931662 164827986 241752825 764700169 615761958 621618645 240995277 646839507 646133542 638162774 121048240 132609912 617495879 819023613 393971694 623054131 600371530 531270905 738030929 677614502 911034968 315549553 412360538 548548727 471999834 843292663 179329840 819866706 844498139 276198821 864294212 453116708 999192843 727469146 199560554 922770210 405675424 227323504 141053360 418128828 955192927 379523373 957582595 951485178 83138949 826890719 963918456 62710689 641385346 283742804 689315168 65523966 56547499 890243121 921643842 649403017 984528553 878631757 385808509 803673572 81745296 694848040 335954206 630934537 539892088 699023298 917157943 170641960 194701153 41382464 594897429 884131252 448233551 658259370 728249187 590612450 242708303 952124135 263131722 210814704 267310521 374840371 365262472 923797480 284697370 499026711 675754096 108543614 812981000 438910396 710078125 116923893 769929748 419806595 120208780 940559785 204053027 800046759 827053329 648468999 807265309 204996831 969122434 290832978 446295728 835667135 509098792 867698297 524181474 204119010 8292088 453842991 705906707 952436903 862269164 342023194 832764850 901366787 337730490 121913973 290695450 377417667 431454464 247116544 894243575 149966855 911203221 993924744 294476146 865683866 244289172 929953775 402472280 333187706 839382025 903498881 764848200 315580094 397358025 880780071 418625676 267217102 144267855 639509783 270206101 983581657 929729363 159480695 904428674 110338207 940375525 592229313 526168695 296001399 952463977 353418522 271058100 710092619 621546859 719735050 248362388 633238009 925435246 980102670 764238501 448595670 79513753 62883564 56294632 581823040 872088420 218427055 978539318 278334240 248357077 387964485 161404584 870873494 434009015 185059837 654603503 641977184 521957417 894238505 113191307 537832270 201701435 732995750 815614050 697766190 801373525 727129083 319425053 658924809 878383789 205062106 658976184 46239686 112629569 129474318 917550608 72465682 567341064 488667806 908071736 877038133 795159954 57494211 762764387 559763718 956845634 695994788 924171019 211381807 520308282 304441736 695546028 815260975 590639579 504419895 100219010 486050867 560373143 742899265 542269448 639582058 503777133 774727403 228814031 892266489 264741389 879940832 259601166 180165215 264156069 870752044 567526272 370590417 882936950 323846985 738689324 528939794 595891077 887907884 126857934 244881108 371107120 683127307 197866047 826904872 477662476 592298936 342969533 610413928 683403505 333087154 542654075 841441329 790479249 742259408 537092005 574112610 589313040 28957329 580640318 729752110 974836541 693760076 138163243 354118597 567266020 127552577 274937728 481788899 424146646 365809140 987184785 715402195 369485284 875315001 890456507 674706476 264427608 215089585 527341243 570010139 824621527 2722099 976889655 433219049 950575528 625637471 299128938 775326083 819358720 204235334 710024368 997875840 253324538 924144861 522125447 49631972 571772251 762610312 824034213 921952183 295439985 311043865 382360219 623440847 79352676 970438807 773834312 909999970 122157167 713349574 103214386 860050794 783002193 229741074 384275783 290804776 807229772 344329236 554321742 418554585 679610471 131898759 458259446 181746825 988488624 121982794 88723626 693311101 351202345 782437094 442380733 219834494 843072964 824609333 202085805 685274043 881642151 677215915 783623060 509265160 552907135 36429519 786047423 87511789 182204651 367353763 957269211 182578538 354061242 642605150 922206109 241589118 384143570 755224965 599968964 447861116 242905983 321096266 742493758 696416018 404300985 321674750 183352290 840249757 968170601 773512895 881735514 857607535 685170173 877175256 493102680 318472691 520185438 672668444 322266223 780308528 820991264 526380192 770196305 797763623 365166452 544865283 562554840 622099699 476855104 422100822 274950359 684469544 954938956 176126396 392347552 481207604 929782433 831434489 192626811 704210250 145464439 546986523 601337928 358039310 204479485 52570096 683381227 781453534 680542689 224534287 447634154 374820551 64603912 45123924 567353011 303370605 811093841 293684934 303334874 803702189 179102590 803052118 565376318 29206386 92107638 824477000 501311691 789316609 164841111 384335159 153883560 171878055 964260865 734793860 246765412 228619455 538399286 787991089 439806977 911676525 265259387 494641757 581248268 756855866 200852530 759623072 270164342 511116157 318096512 533708977 27801412 291373044 272685728 717588986 197799081 501082226 961757540 958006203 472603693 204792111 467922088 822691450 549056675 530522047 687329500 448714693 117512811 380909259 9385637 999304726 633304023 893970870 13972091 853396034 371904209 354144946 638085054 765949199 877949097 960596112 612571583 645259790 127702119 932442208 175524756 994910256 261762968 538092888 829113805 15508096 35833609 495344021 8619469 578244869 404475437 888932067 180808923 697844263 460693248 417488446 670662373 420944724 783541340 550963846 478493863 29331045 14711776 702123257 170621480 527132229 902467613 762640947 503062814 722762908 39096263 647613815 195174764 776990020 945704402 927317496 99520786 18954645 165501440 979640817 613361093 414446787 425301000 332613063 529504214 869580946 324390114 266540780 749536445 326055111 555236958 715431806 387573340 754324759 105241490 611191248 557829644 32800297 828648436 150079699 830914844 618039450 969551573 192274310 43610769 945863524 108394558 106977060 628701683 904951473 205222314 167726734 583481778 37224356 284309474 457179178 57739259 288944295 195939034 315009059 532216549 660389192 517488787 221780111 376817828 844295454 801178767 561255232 307749139 357988904 512829796 578293681 894540344 744590040 304115233 703373822 300911079 146850599 495667791 953731887 884513060 824155774 121412548 840493062 943978513 693772873 231723154 79542215 745215792 347099619 907652884 516811346 195266313 869236627 470494147 834723122 836073964 689283054 745313699 184007621 714026421 436021705 549711260 841374337 436170567 101195852 713591071 849168190 809679674 619239834 848440082 233715391 410258472 268880557 898809186 313687049 784984602 408569122 140218813 388135253 565265229 46818832 894052498 9631190 933755679 987811630 173519291 582490790 838849414 98553543 119773203 998168574 167801572 973951462 818642383 7029916 993458255 317660499 983211622 935767816 303446520 630607801 155082425 423169699 992060236 988506042 384649467 720074965 600581802 631041353 465328354 366041803 342155762 414576175 774911978 427283943 485445526 158519098 65222953 594084922 581809875 975097198 567537255 25113057 8345236 794766405 243590251 761384641 405148845 214771672 712484568 197100966 138623439 584039941 505991641 548438666 583282690 411556602 505443429 619287804 354705198 544972435 789430432 257842479 789932221 274652544 263768658 601128381 810391087 203862807 998246454 86605533 46312842 31888702 896294693 646750329 98891246 623221395 624851075 403910534 827699437 109515021 807617887 45727848 330905308 731242914 450947278 465750378 187044031 561432692 340488090 590580910 194610815 924727142 647841801 598430931 206811091 325263878 762042324 547201484 367374604 916253126 630872054 266287069 834421979 374976110 234497466 218172065 887536310 439466911 848381878 344964284 628499178 831924463 275333617 367759776 770552030 888911692 488943229 846217403 502065197 773622846 886370831 157775831 514335913 77508364 967254632 234459803 75174355 306976566 912937447 476003713 745468785 849928611 249532487 139537845 286701997 32621434 67850573 69690227 863261614 385613458 854969812 762846508 474601997 475465731 697480100 165592284 680695144 871157054 767993498 761596794 40615398 54960209 357995878 842204908 832892568 214876380 149718398 926600090 220971811 992952693 60959196 368067490 429650502 634730085 177293051 298204089 687685658 783076885 885226665 637049146 331558768 881646511 403946922 160594189 771861326 813131634 990974963 781285217 463813364 163689698 915388658 317930297 407407015 686818632 375665501 624629348 840786300 365698655 392598000 862677166 124293349 581100924 434761050 780754513 594302764 266871140 170896293 363632445 942577399 983391583 67556345 915481701 734642747 517007416 350021466 898168687 226478532 667074542 969963174 890930592 973932435 860322095 554751654 771914062 595745154 720534823 812922676 564350123 490705283 815293699 89953472 327264474 983884604 653039060 126661551 430184378 819228199 180158485 404873305 941759971 891862252 801277996 551854415 700779902 644302493 884769881 281179633 315101093 134733829 903114827 787275565 500085303 472884072 547258821 370175211 606482205 95232528 451751282 671408979 225004021 473431409 654370904 381344621 513710533 776653391 899223814 31871807 751352277 368553914 61987971 869522837 253567288 287069214 318863316 356536618 138697313 364565968 301526180 968897830 223412795 346455670 827488979 202019780 939420818 605210772 24513741 241537565 475224639 996627750 733713090 482834857 386301985 926168885 342528758 130572490 895516874 649755820 130223852 240985767 185599488 291433700 137469828 274241699 66265122 759600621 713151374 945370720 824506593 394431341 595411511 140435121 40510924 1332566 630379118 498508890 587565996 640636853 497744018 794920257 613432035 872748565 835641684 355688561 146875827 209265431 986103700 936741519 657578857 394369434 898770234 10331237 777773056 377305591 920367657 236311325 119114635 475624978 310978151 652843670 543105787 701883778 223307744 383294107 528403649 329926530 605269079 6516533 398607542 232418403 26822366 328439618 502212118 611381319 815946477 497028610 385717853 182868903 959146571 395499839 432692544 664848954 739867784 185095835 358418407 663666874 729454754 773740928 837691557 106048985 361590557 365336997 45457314 168708140 538957119 984014632 437325169 229686703 909626758 317720172 628969728 664009174 858464897 458627179 688375308 525478979 758421585 279469376 635716265 192976481 594597444 230439228 289731316 781933344 367780997 225638227 990073606 420595302 791755594 803802606 564236595 218710273 143354 49186246 885916917 988056629 57518310 162691401 827881650 727326711 109378817 894810256 952247951 900253300 448914678 134655645 91423814 166397395 408417754 60365579 505359831 4005785 585578017 147902421 501134484 561268997 678660353 602769338 396073737 622394162 526734411 680606941 292603794 281983158 479736720 809969397 685766749 404041008 772722376 195343373 846174500 775834516 815882119 471046804 940272679 532709413 399320929 193110867 581064764 799921570 476192097 323857201 488640278 326364460 56212791 844853947 648039744 441548388 277546830 303434565 977866440 735923084 703372525 763155042 364394896 187597011 454793832 404109321 218980966 877537409 797434629 398727124 326655852 185369054 339505915 150419495 241278724 262614750 768200878 165858210 785091882 567008002 176489441 70038594 819121306 88810908 611213182 965932861 923421409 276709341 709310519 470127573 10770425 36347868 563809880 638052065 716046804 980005636 697583037 492836230 177990651 724656281 630664439 669561113 246351425 910572708 133087382 203788804 283959619 476117083 643195406 95760843 719593339 886527279 419484474 823838834 811238954 208381752 510690467 689237454 332494038 519807325 948242191 606687163 631952181 824922637 706994359 644222482 605739862 625237612 925777555 652903583 77356676 302522150 351425214 272492123 9093128 808262398 974798182 36341421 844988280 705611334 942120813 508070420 732661534 676434824 891191575 894740734 879345842 531722989 282144214 879157609 136214479 214837331 376873866 830078588 919189173 670901343 513821419 38968209 671628303 257948625 232261016 45042696 777370498 128492636 982252939 175203334 907976724 689352291 520255354 71716739 194792715 895347716 917082804 963536579 830175625 36002768 946511567 937022215 420198877 459090112 628375019 752976645 660421358 967990862 11335450 387488734 113529383 740043521 28617284 873448548 867304213 607739605 237945390 997399931 700301137 159438694 420072893 51985615 957561871 640371146 278315575 177998828 19953932 29706807 591850236 705497736 466358052 899382990 263559914 592761992 257963870 508990601 646589191 129365471 156439802 767005322 455258339 699314530 105471960 636381011 918795173 42563821 998369446 185636960 316665143 566962320 149075286 856403676 129311218 591171269 436856348 373111319 99720136 709249264 918366412 295517638 752760178 643473481 148798776 609764926 886518947 747380052 379211585 598058144 126014020 894574186 948059802 699055573 663746281 721005192 701830500 492858779 774089181 861059223 730352848 279062245 384735324 757689853 611096039 165639434 833353983 3672231 908923717 417142031 221703923 430685384 940987209 182337215 381668130 807831842 94058862 304779345 285185131 996683859 746958996 523022716 988416711 3547972 971517751 296920252 889863789 637617010 85455511 111926605 879317546 882160585 788066032 695917062 71792490 724715462 549897278 42451402 259302107 787032132 666935137 606837279 780446099 111837664 956433702 709558245 653155414 392296447 328387504 361107314 114310024 344837827 390020492 554354908 404203935 954485666 497639691 122679414 555242740 862342377 760493605 729676579 156092683 711164936 34189172 587340792 497012926 560534820 50411795 590586050 233733517 912559960 629371102 930372886 727114769 124048326 21123792 883365578 132519654 620405427 754753368 354193116 536048287 792183712 452031148 850807754 519608862 756612348 363262319 869467029 682802337 69495375 562464458 785619272 570558412 34156108 15374244 832023806 54099581 343865609 620875296 237015104 441842105 206287192 901910040 468074156 960909715 111023778 347159573 538142711 594233888 316030040 803801870 115323729 315934118 653743698 143583030 453781871 790385772 700345887 184738341 819945666 87657511 164999337 888420663 964305356 540999266 26021530 320306352 954314945 985246367 954441196 738805037 723669943 896969184 372449775 231010795 562497017 371526177 491578556 419653839 123642865 269693102 84835731 391963361 386213678 294849952 17899582 453138762 759885786 589318980 333711430 720257531 508167018 971938600 299795972 725651410 902150231 400657091 109586507 132521059 965691489 517331491 408868283 256239660 58256234 66545467 352371110 305302800 411397300 169449377 432921877 422941269 302080575 548103066 520878455 164790737 96158791 866722443 702658474 816855126 612178976 269040436 110008964 519402145 842683852 306417742 426651235 482186630 528105117 552247426 442240899 341276102 970298240 539272337 857665743 524719273 244360459 199882940 621645547 358175137 336267157 690742669 913510864 374628910 586793599 943020040 666296950 55396397 266096821 927719631 833645203 688161599 806127048 508024131 548151996 504051501 439261006 622981187 108743987 858630248 632367820 452757905 990495056 232367873 613321854 520178635 598707118 15880075 815125385 284261891 385748409 238783902 144545961 326428446 766155962 292978379 273933192 197061230 197861714 778337604 920139940 189841141 723544599 417437972 836949579 12092366 741062506 552875375 683634726 412661824 728771453 952701166 198742456 364771179 744114260 932364790 109470841 323285911 696082806 656843842 19581694 624459493 963209130 367769419 185239182 479172554 549614144 217287852 94237546 989024599 437601597 900654593 575908699 534400433 386120191 224414326 873896185 44551174 815670599 614894062 531332062 710918939 643526374 684231072 550250218 721140600 941355671 55040799 143234985 615591158 574986140 813703138 953625745 433039458 416698367 593199403 162160758 672496546 416261535 452867332 307581868 180688170 973688803 638957186 102416342 998159126 317189017 332208689 849077180 343120289 459723608 412204635 870841024 886437507 963561451 921155231 810710479 816337488 278692296 990669817 767823555 333124836 948974730 880758800 487947405 843938718 903357310 641936430 291651841 542502152 688422652 762274743 950231454 58069758 277869732 465140252 222559503 587738006 449035674 682984656 277008304 760033875 153487814 794205623 626238855 238307222 170609395 10683641 707566238 537629207 237804364 433943555 527433099 549845320 64865297 927104940 981297087 722326261 517740961 412566549 251367111 919878842 499563754 589112662 818443931 926788002 214388960 353190153 474050728 600354740 817498721 396282140 852091022 208783508 467280811 318960658 413296198 52040051 783830922 353634861 657808092 822923371 270299256 234412977 213434363 724925673 257053050 755684448 737100351 486366043 902948441 295934473 982385585 448960332 819285355 905715760 155557069 146590819 818394938 629320619 105418129 985968322 559417520 154760734 999382035 778168304 648178332 416266792 337459622 399221347 732266095 635852318 10456169 211148326 646345625 458354037 75417980 949192698 665649522 678472437 213752362 863227885 852255663 789684977 145720318 562503038 513292442 235739299 681566891 892243276 914397822 83017360 369519083 664768991 477801719 766525646 713264744 72196269 42161579 948868532 394069417 996416466 185354735 451948220 270000392 102400268 811755463 257312445 266284244 277386867 325256975 294410817 368153740 146910886 428231534 737099089 357419393 403779307 367969801 772081600 934737753 395416369 900727212 761175477 798348272 736492001 153603774 79074542 787425011 930260425 560802325 419857535 254118761 889512113 68794709 227899004 247032305 185519879 176049198 380115329 479517192 874676189 805099055 553287134 18656670 566633673 292835697 864797761 571723357 879982010 152147510 300101439 5755640 5193072 430082051 946790503 374472784 327385255 128130783 383893475 667202241 130679941 445548441 143906082 831434393 496619654 246890013 141020312 418966024 510345872 546308286 550330504 150327082 235153943 800372649 356659281 291974806 883313554 321597205 488747979 344831614 331126223 824104252 846306557 952369359 595809988 580238544 623345778 13801288 621127977 768278539 162360814 415366129 249283289 225794232 47830332 606851312 866793693 351572250 793087478 937844816 963166141 32880670 899670083 482874961 145104465 718428148 285304920 474431408 203763620 895605454 565796445 321113935 587836892 41530104 244016171 785878509 350277894 883377122 86730254 349630613 600859426 868122634 215626884 843069105 681706309 336574938 95674571 14269208 334489843 24245116 719595070 727280296 30628778 109732520 33452641 651182368 789777688 62310742 391021734 999291794 525698096 64719932 981409508 98076516 218939577 201511868 747195773 149463766 421842758 684764557 710201136 259675572 551276509 361952597 758656307 234731286 218998233 489282941 364522256 888249646 393762796 220425283 939958104 769453039 202020764 931867087 284960758 455794432 987735743 184520279 476067544 185222423 200908894 632988272 468385723 503937774 608307845 959467984 332824566 713692658 445010723 522881587 881027326 646340963 551139616 978866252 540069987 336014297 665099946 388195033 881839030 352019038 357857402 271388406 883823786 462235613 854232752 126778357 798433417 169354016 81698470 149771970 319775100 116189138 606035608 640282807 698285283 701334488 777848250 569091214 650144310 45542674 844671897 920424515 448453067 210941746 79494808 530146241 421190329 857822129 921061973 490811633 461628848 622368483 841494233 478790697 883655847 754737653 669752702 452975568 541344431 559150529 287495059 376038712 767663367 426050908 885669213 903101500 722114434 336763531 334367147 895996527 970026702 481650265 656704250 294493850 487884858 945539307 500950884 326136388 546352488 527635551 878143563 241542999 22317938 64039098 66489512 799217369 741155683 111565636 317700202 916680187 87320398 198572869 880808053 66241412 312656565 529967034 352168348 301606593 799628580 411354134 383554863 496969845 644843285 974960515 462831268 147351981 706053539 678398782 189915321 972560600 912018043 566241247 355954580 284439356 165555334 864183595 716161700 380687731 511142456 232616380 176200454 887664202 479073315 139430405 907726440 445457120 543531332 772268667 7961900 478689737 623191199 860151261 718900507 379778486 875649060 560719608 163613423 440726215 414771316 432978379 984330398 19191261 954280740 65492790 844036361 835921121 97037401 620143133 944526504 798490627 806445255 233663908 250815318 255399632 330685831 155591382 36626271 280717841 407977557 261470451 710795704 403611959 816047952 538394721 769346819 222423667 543776404 381613593 991334565 595603348 681979963 785027141 770634651 109714586 791771258 434175825 980958519 162483241 976173012 843368733 111172662 884458930 691797693 277207138 79290874 212024591 265321050 589789700 756589503 149381151 464714081 498111512 132282174 845415064 208652636 704804028 692366689 663187967 3776204 752626925 175711433 218090027 746682087 909777577 374266897 207810979 40138791 900021227 849334687 410816614 33768386 375748876 77205796 678391769 463530015 501577932 570077825 945422331 869940140 877815061 187283921 61893362 97793203 905103862 423567307 145787966 276354313 73865524 271263480 718565405 384631024 183859533 498273365 94000724 289127263 119107287 381351351 897190485 63774616 17341841 645951516 492958317 813625496 346477211 528692790 402955740 871742833 97974788 367143157 432046704 166211232 852919097 795629486 90451043 996903069 567521262 752635505 189965830 875932169 261776669 52384647 611425311 363214031 279305038 1219442 133066057 694660986 669642127 726112274 425308463 751140411 223835714 601778389 99663659 807996094 78073592 541485403 20975299 761762351 169974593 99018373 69953352 290604634 279579722 162598898 443580513 760412972 873512524 262623595 260862460 855175335 549990104 53129267 478655046 279817964 770962444 383348137 414002048 502220856 153004192 318267472 296781467 928581090 442889134 580142170 66416306 689519212 562938013 825474658 77962501 152835754 184325032 29313769 602628969 222780477 895131821 41383805 527802851 570293103 439746240 578724659 600624319 624155363 933379520 753002008 354581768 664926359 238540276 939774590 320160935 474514311 972443912 922501144 655785120 280886924 502250376 388928409 349358510 176871655 446169237 210530641 514706602 990024270 733721054 549442907 672381508 863992299 244057267 666672634 152016431 866059528 117877495 575885921 765290660 816252464 203381565 853914660 748108872 328361056 178990958 654119818 130334738 439534624 930693021 367594410 405699150 445217771 102179707 110348091 577673675 685605578 154682450 477690315 47986997 107719745 604524327 738662884 977719101 158791964 745229639 88119127 205607233 477551392 507350527 686611962 84246188 531665696 808830084 340554901 197132808 690275263 575516348 515906680 966464379 560347676 746206146 496830400 996310113 236831892 260026905 938942417 347784889 304862271 788887226 124974736 427267020 745621390 499715252 789364652 336478488 180247739 142478430 197102589 773553741 263943908 357134508 264216078 218534216 10166456 69751037 846126663 84205680 396579369 923678214 660618218 358801263 537078824 908426693 93383304 204104592 824797035 104200072 299868327 297143806 290647506 559707451 395217503 95772852 188751961 611016719 605932012 468539957 604168154 674748133 159903080 897145317 418954786 449711145 61478850 619362393 850892791 131211642 789287314 852701513 299773281 813316201 313642115 594032666 917077618 890997716 91591003 396818678 791779980 218488934 361980171 968208896 977760137 838678826 821054909 112129484 956463642 387626229 55186934 998751376 175837462 39388288 405728292 127675111 895190713 494126844 347070947 230027410 811166658 24029023 986943181 643323794 825389441 378430578 551507057 618711935 731595058 41935695 786931722 419803808 460989919 620060416 415463037 364659335 883964273 784372282 580036032 925216511 54668183 665795266 25538108 263920500 930307047 106124456 644389230 884565424 693019793 855991517 217484885 43072488 629172417 526420611 310316538 217243377 689622196 535320500 841684064 928542266 858753199 816389796 98239438 608076142 288925502 145196970 319576182 535365908 150093858 18953362 555830418 81087484 492485814 546842051 121339421 516609624 787317045 797755031 590062714 294356390 129404370 305598117 124816740 309386359 437863001 112543395 613015900 277147386 993452274 286694951 646690053 800887093 377628425 816798805 956225040 656279773 58884965 59776965 248502537 202201523 477106871 457982408 45318428 735323604 661909901 992109794 308801892 350443314 940482364 222495995 61434498 561442793 904105513 833919650 139392681 921749215 272294396 77052405 633127929 96739952 378087211 572929862 955233291 737346361 488487992 923015646 313507278 895845081 509286154 727811415 479879735 469671578 762552863 50994216 735636494 4739387 474348775 237859550 78448740 779851121 598897178 385208729 188918258 662930549 492581849 966479852 550801203 659380348 354161278 195538667 873776956 763859473 476215276 626023534 764437773 289435048 388754696 799051706 776629770 828091230 651573522 20392594 341600008 324183874 141477778 661843735 525853523 861792145 661211252 420347143 561315774 737730204 856460319 723970108 763165416 999353506 946421929 374478887 561579889 666387421 687231309 185056645 617569871 773006115 362120181 351683857 74924991 701290923 502831340 980800897 126503899 161501840 268441129 459268261 241698039 694638023 379431151 865124432 644480635 927671342 213011588 740511009 764405657 886834092 512887534 230366082 32611320 441998080 729526123 631413966 526202283 679784688 574278093 896522990 911463332 779003400 942959179 804982559 768512891 129516458 861471997 501779984 411616480 644196798 301669885 773396606 711507608 164024331 934838630 126009503 864801014 845538098 673098834 29707978 444843478 459122675 713462116 960692762 25312028 691589205 51940141 207003681 288029021 644467240 794220697 139251618 778447259 941678278 552467373 975019200 101189303 427537753 954859067 251404927 482536426 172716565 692937050 535666874 473740173 782370797 927532152 386586211 49785019 408298602 589315822 968517124 249756801 462707520 278017352 516047732 743625565 720562631 946091096 866291704 750721925 513231145 986655354 590908422 270694941 46310638 660286312 944085212 546886178 815739674 212036016 243649965 415214627 197887324 557541120 558728727 793243585 23661757 141893224 717624379 192362235 690699104 633976074 45763862 26494644 758012657 319914834 818938086 245707659 248519202 540749293 333952943 407570235 715953496 706063291 58863502 772596815 443819201 168767318 505277703 311923371 334413978 617601897 216145800 980139564 987284670 979071057 189793298 583332732 685520447 506984418 555513164 168620707 793764725 349018184 483008527 465081539 428128681 510750511 451455905 694982265 848953638 938454781 232150644 348722874 231460583 49724527 32305912 505266977 985574475 575871855 12343575 608761741 114936312 803658846 809819950 40004283 794415924 187143398 26698352 712628737 227643685 286090756 323859044 452236038 462185757 137783468 907434113 430710682 245407495 734073112 390019623 246491173 992130517 738458702 259135630 114896019 703108948 722266769 437046845 740334078 409019499 883390597 860619147 472988766 742886690 367844921 451137426 356762442 790272025 194158853 628078951 413539177 769265973 113170043 960263484 584281876 621564333 221955720 166842757 980935894 728941307 272603155 483535552 174552923 787157164 296717053 894333439 561774044 266178807 126383075 178212598 810200235 787109570 543631192 454820288 364418245 995541165 117293416 509753109 11710906 205087226 507851630 540158291 213978762 373801400 828900714 313934907 456302703 488249223 124249672 299064958 662493555 983016931 804004244 882917610 872392427 912717397 923322696 907134695 637589286 979708326 878426722 727907402 493424146 628082409 975282318 995502336 29570354 236353604 242325278 472133312 705841139 573631592 921834518 151487008 869743272 921003611 337432831 98119956 677958331 446791281 549193800 539442363 211799863 131062452 691196083 378545134 674014665 688602120 445015224 605382286 86353947 920596732 937397400 114342069 508227888 390250243 53943868 172671460 858290734 669774088 247065008 351748864 416438748 465909166 230957856 621862900 709194314 995501143 38579515 866360318 830359566 28924425 773039501 588478026 479144288 774838407 846193059 236462246 827095122 929802901 306010667 508314977 323876677 234916881 544955003 956233226 660914050 865971558 585637698 208344878 969703169 294506094 632873482 596011466 92646094 525234796 698013156 751263002 502039981 358879879 80567871 852020158 420757676 769852784 786878157 560445000 977695750 95936047 35692551 551625655 713642429 187869213 44163976 950766328 416410070 847135430 190294447 280592082 655431005 696409522 590273007 891465700 27708201 596929229 448044540 656092233 485353966 839303477 234392557 772618355 651971904 747922256 101483800 649737692 815499404 412857521 739141688 594182604 80214553 878171640 690382039 975066311 410585845 989835721 440436496 346824663 102794841 479542443 98373006 842808396 744129603 100494426 347302574 473089714 464452318 353043998 567420358 280248625 761504855 617205080 763278082 731254388 140651835 939234282 620608982 721488370 991304259 427172799 40634930 857046421 990708225 742427010 267910142 423109022 488627215 886248427 807639802 663540311 14260027 464022512 97694376 213129117 253797131 29626771 699823056 944085766 467543350 835049673 920307199 285181910 141024153 1855429 102539877 626107144 817222619 793355644 991461310 68885230 12979298 877250030 495822006 798344333 815345874 175380617 58275131 853311737 915181716 790468689 657807693 617703639 933858796 741106735 250243443 253423108 994070612 68709912 989641822 920544425 28592515 146628464 805418596 286661714 150121921 492878180 503385082 468438679 869009051 580211146 181776013 71866685 44230307 432551619 83865281 948969464 985856288 647338362 697148121 97511780 461497113 465388706 546130426 858285208 142694801 738268952 446255339 865837019 559623039 675061725 779756680 194401081 160712819 475467368 821801469 294154062 492776589 607150442 243643764 941177882 164399204 66753093 750904948 3798888 989906244 181055110 26439278 798719563 225844345 339645392 373976605 796851261 529037098 254669635 546628201 2652362 831810085 142623132 792552955 971045232 651652196 235624492 425706126 230695081 479340323 181497692 346090884 15408396 309480752 938770693 698852024 529106956 551469604 88316302 305709934 982837541 226369481 177095581 417312682 677254804 851213201 914418794 449006660 795395683 691793368 403919922 800519144 461030350 947007505 798920616 231899542 208603524 358715114 750271021 181938361 251845225 572301221 416815476 198763047 61439974 679677919 757832053 576198354 785196430 163082052 500174661 742889117 517699373 506253985 243075045 306917535 409076520 310689874 812351274 287205597 322095879 588746881 234955075 373353515 812626164 359047050 200243235 117063535 36284521 598984451 209109815 355146610 167205152 614479013 798814544 724952425 102638696 515353034 591375795 830948724 641115204 976988053 85587203 78174029 23818891 302143866 387487730 433526797 648851915 799181158 617315379 471590183 262003416 54331720 226334916 87840915 309794985 998607843 269444669 297339168 805198292 992846546 78746972 802495200 570260790 989327321 660052883 419057257 371468337 277881568 191080872 311528835 461056899 207404265 822948454 477790968 803554304 21621266 233771191 901952991 933075076 628163109 721789094 840397070 856905878 109191017 402771520 130276153 251222842 509445460 598030172 36553929 778418857 924294480 26635674 132149909 72908807 719189345 332535209 792060646 191527948 609114272 142806297 226585045 776892670 90531481 74131795 782713359 883328043 592457944 727306692 71694703 263617353 665317397 107433128 239842942 136100407 360151588 911188443 607159843 999027586 162275190 811108346 511686895 888800772 912199401 450328027 511536544 935800290 193480156 475208013 722698780 388554092 212877546 710989362 719122770 499588236 273206148 139083098 168662124 290430414 986355511 415039183 39992950 991709670 265045361 273540325 359202834 366614155 781077018 1872972 845124607 965186955 573862719 182670240 704852317 548608591 149814992 562914599 71890690 518285466 797889649 304320759 622573190 518832416 692600696 400925466 885515599 513009453 611665302 294723491 52181126 541888748 323816719 669048504 303547586 927491583 131290680 369717010 845101916 133659160 879480173 385492190 525872857 922545903 191239968 249354663 489580537 843596814 90238818 51185006 163085532 644579764 984109243 198885907 909171863 274628433 614114639 903463330 397654505 680007192 215463711 851149241 731500496 709172036 245648194 131214685 917317484 518711641 820085366 655948263 73552459 174676787 718664714 884411412 882879514 508514893 659376831 554422614 493721589 300743580 950732336 694109282 770845453 294065270 353360785 180944897 221604537 974961073 9443140 314076272 529222659 864587024 415222683 654910803 276177889 417335819 491045855 71246472 404865739 241841722 524473748 952681788 777046953 141697951 203911566 651226295 18748752 199523952 384017524 945687159 261750722 916915736 807273263 211965170 653658628 534239307 377457730 661903840 657527050 54737180 64298730 813223510 775317187 963700277 491818816 775951260 9659469 425219805 75363559 739132266 246387411 740287924 390198892 755481677 126939342 573329618 321306563 429269788 900782305 910710872 306156787 870105864 681525445 324913367 783815256 594603207 354072058 478104232 289088966 247425540 953457907 784853644 23897643 954626451 771423009 55660151 546869019 245207362 246190758 166374760 377612498 456080928 991526566 860263923 357187936 106712161 665261343 211040719 585177172 997802350 789030241 794270606 309906501 487151411 295248451 996402309 905133424 535597520 837514799 901636136 123454967 631339910 701796203 781614918 323806942 90293099 970715690 493577685 594145891 953078299 917056425 630806705 901665786 550812570 960244710 699796301 97089764 690596427 191643626 797363177 271421830 253324475 529264018 981093912 87385725 887895700 81818634 490745992 835888333 685561466 257285601 496293250 358753355 203923779 294680596 51316553 656236837 538003271 97367792 474473336 859137076 325154060 985821915 292141769 165857877 973247562 219082906 26401244 257382739 509525161 633443191 292804345 842272271 624728622 244692713 593075499 934679878 215331904 269684592 804190859 332755694 579520627 479217145 117039611 901944687 769671116 428989645 280233366 270298266 781622111 776495716 761896763 722867106 506383116 352913292 972877504 417066999 853349026 49255382 52153894 654227974 265244661 741954068 158806797 584549003 910486734 237585871 495189826 150422192 767549392 27878134 527045816 954503742 11524709 518597186 928404965 86479013 119358021 301420950 574522862 837872121 378177957 610692167 647671179 527797426 574408346 10231043 392022422 544876232 494273372 719522152 169853225 460150427 471359258 150977008 350606248 326941842 555197897 299187414 576374058 160280179 683571968 241231696 818316858 448281199 671244065 610702526 115098960 600545358 851797827 158906881 256357884 735954191 784196390 788192209 509964168 903020524 14678064 448367348 917001577 197510250 377606297 456288139 76318423 910019143 861941214 224482599 886393805 826708140 946793398 907391434 841251187 503833436 964657812 495278974 128268761 257713395 900228174 2140257 339969517 679934803 503515431 940592606 801892498 451160808 935713144 19898923 497387355 241691377 568718636 791672197 964428754 923218531 397478653 199372079 310143837 848063219 103831965 591743173 447368284 197664621 848044367 724397800 213667823 834053131 99902630 996710307 210157841 885596946 867291996 42073214 833879237 15557436 296697177 471759006 801961703 399126505 960974835 485886635 226748607 233747442 951356260 818504244 572844690 11304954 587348922 441360531 971319835 996307823 777976752 749736386 441886666 284349102 581307064 776514844 871962979 154030027 576683908 968251799 863277626 964199514 786582079 544196968 652950162 174970642 982737548 771699663 707556999 806489987 738134138 979594880 475923469 457063069 755893445 235898884 693132508 753860343 52377967 314077710 574980612 632614219 61985137 183819628 247200321 690518681 584447632 510996501 854247191 833726939 282739488 930080163 892782320 956181086 580482297 63956043 597568037 623274779 769551157 204991353 681060483 33811924 306722267 252065572 891360088 494553390 894034782 97757290 877486579 746213816 295066049 499035908 727622863 508688416 231232146 345924275 773697893 349201825 488390135 611858761 851382624 709308243 559031148 776642492 710389374 190755438 924927906 156315323 141454059 379933088 961131625 465886002 533562587 50558103 450750178 203803492 137228331 452826935 179113368 326836852 926902520 860234542 886790849 883326612 59349234 194728508 809313735 512214695 473661205 924890845 589503560 771528753 620892534 467959555 877406715 217720537 30017264 709508098 353117232 865993332 638643284 791094676 462996913 891041911 186137596 891714378 701024595 688107907 968629580 723592291 711148922 720820751 426044599 984027232 594477216 458244276 547992636 154197603 425387396 342418629 612747399 645404705 363929659 931733145 404632997 156122148 531014684 667531558 728803177 551852564 472868903 148281460 669454588 578619177 106749900 182888652 285753829 602039886 710853393 74388397 545824637 387575605 980575302 531501294 964578893 384900535 627867135 507235516 492282855 596237425 899782788 421635441 616481577 742798334 796981866 377650209 977240180 298948708 595406068 887565566 137514074 249470436 235578656 488700588 114654582 125571297 430274671 579228878 359949044 428449899 44313913 944615213 832278077 306195912 764973403 40448970 874702791 975525636 957139591 22431220 33396673 515877360 75167656 311474094 21749482 939278732 270537888 612612726 234100782 377245004 509694239 389516346 113399307 628006986 268316938 684779783 728591895 109201256 344007768 351944338 460836367 962769358 902663887 36891700 340576222 62287354 398136762 425869907 615085139 388878070 999407440 874120322 235685683 503962332 550371012 339078375 383667307 250143591 190242476 566022595 571276848 632317189 202636556 463615880 786412605 639382091 305813527 787984028 785192111 543211356 673121372 537951849 128377131 228582548 965608956 403689394 611029598 841790284 636186773 403982392 104926115 965664022 849656284 924334463 636252401 824045921 275216149 827725978 80296586 69949748 778828497 794696477 282188763 569587112 802212234 112936342 663307166 616507388 129134283 450668456 502193152 99990345 293402716 920691450 561031854 319258623 865339197 581270814 473673329 909778899 1520078 442081285 436650538 87486987 757384343 396520585 85771352 876605323 790685346 937212173 413861769 411078957 669863091 759649067 831756737 788627020 998831247 738805748 8926905 653478503 615781820 724275909 361960094 404022771 121201712 918000791 615670572 41786144 285833325 175558689 832468964 187716039 617908472 213873821 543356139 416417281 629671582 990653596 634165151 237178353 145044078 596997390 420188405 307723707 34221061 756150758 947028311 241079770 424966756 39550696 148848678 387354474 686154408 323901646 315771724 780353955 26864552 297023959 769520581 189758418 119689691 144876145 564578145 888173618 8267828 657107526 734361632 558772216 262624257 824409264 32348928 911510396 125167984 277308480 837034042 635626157 656541086 67585563 981346883 553799222 533071590 743483292 447299143 873539861 142293406 950920636 827506912 66265274 481314439 768300593 221165004 825062888 260192949 288654842 652204218 438808417 749693723 793955615 703528946 678576498 771408737 536296635 125316891 694372082 671812186 657154999 397136952 234367184 64392965 172244701 214818450 810600250 628763536 580809297 22562397 632747717 965514120 260028136 454763126 258724152 515614569 88718924 76698525 361276712 607244783 603567756 567083827 525109005 45645018 295338165 720947477 438238486 553558647 811631002 576221147 771947041 902124866 716390383 211717580 349154855 59470176 795137775 167524770 78666614 133723093 692998382 948656171 286702799 714040119 945009508 71136760 795771156 156284937 400030122 788271874 829139004 798331245 706893271 860573348 905231161 329012020 320680462 96353580 736351905 212761016 741371539 996654900 504226350 988456081 44619309 872347496 428056938 777121339 787765627 744361175 581552525 383584526 928397893 919780751 938559758 615283886 292243151 201448450 485344236 943535741 432560996 346796443 584417381 631843205 333150689 644038626 210951523 519173336 891279280 713450574 381197418 903396238 904741515 133537110 29248783 58444882 136568612 981371881 334996470 692218992 12685637 935067076 300908474 454734444 541125243 116720326 457935574 523940525 684688110 544147721 166559631 143070985 177200448 668488097 97966022 810982865 434756229 770216592 29542397 724431664 148674798 658274350 272646389 279755934 967161572 334381350 138932785 990187581 927628168 21979760 817828127 23610954 942901967 778049628 547726976 654081441 452244286 468307861 354007068 5811633 643326379 896053050 880498705 20199806 343491380 538707250 144046797 73728056 162748372 458972211 610268548 313929587 31643908 526222099 167674360 729252220 558417641 341258376 438849248 690595424 189935803 35299354 843905456 183391121 828570002 833505893 269070886 701107001 507364583 543284499 267332943 280595789 849300853 8782917 345715620 480327037 77740735 92737404 883525684 205269307 360644240 935236170 667091637 697929726 193692563 802139479 882412827 47110796 349849124 706900066 371274984 589299724 509515706 983823979 713539368 764710957 203118899 923162353 198935982 531076556 540752749 569713414 837053916 549669021 29821749 515616879 861271755 639276950 231690149 436753564 501441717 537419182 422167162 908998437 967680934 110429906 466485734 670775524 102212616 557048501 425499562 928143127 431932283 526578670 797102226 37289305 992517781 243211523 186935194 410562322 318442292 415471934 96572612 643012103 924981278 373011820 740884910 130389710 1387618 384730241 877840678 722047359 286003458 759206446 211486336 487351203 716757485 117831546 201943680 951055941 285243580 816533188 316971778 522025221 176442512 463777050 143498393 586748541 177300852 819140610 218380132 542416976 673962260 892496140 82842574 555715734 350441516 365070362 698826354 616520637 791139046 515880316 264973164 486972111 340058835 443101559 159870161 647575056 836135334 461378158 899995245 595680392 282692156 596398105 16016275 591524631 126325807 271192539 517108989 349069526 301877526 586951633 382335150 483372905 517221400 409578219 152592252 864165911 350268070 43338117 356754165 139378132 79217294 549251296 483824441 183849500 690343880 952022438 168480769 666947177 158669472 15290114 533635511 441066816 897500740 382025480 519337900 290773023 45611251 350000485 806539328 823299887 59164970 871611757 771696888 175014872 776164326 232156259 211544624 452862790 186744376 18703278 525744967 472269840 961063392 591614211 535331161 764331997 624645642 349883967 636976330 165939239 761200267 742582856 949556446 500495954 690573953 256429746 261999433 471506027 50256858 77926325 871917540 853625569 566936171 286775013 564567597 374323828 321681295 219077962 261317170 915694766 4697015 550445480 596281280 804614457 688527243 658943312 220049747 400304470 329858628 618580771 147852125 493713905 700971162 494977000 829658991 67941343 788180569 809076925 787076148 310758091 643822282 345064197 996086770 677726044 861733096 603207572 915095385 192559732 821400284 725979530 977894041 604232143 610024399 113864695 210428205 481285648 183756489 86242817 106872501 745021738 410590334 57086997 150286914 862751042 355822952 521315077 465305042 376055781 473020142 426918046 88130940 47280076 960593703 752114325 627743863 414001639 579396979 682757939 381073720 273047565 438867076 7961027 931057352 749949467 828518411 705644150 529044991 225899267 921729769 297428856 765943533 985856794 187929524 737926070 92136995 900952289 389862764 661359737 926426799 848625843 399706195 757280262 252959228 527593218 83146421 837908030 813023271 422131116 26755883 597064715 28801382 109648824 175618271 281753924 606002242 686935744 189584862 83713231 889352097 249287197 282412568 723870476 838997742 150677779 581192371 702971326 745607822 460625800 97641796 458205847 862902347 617774307 526276314 263582983 307951957 258167557 600511094 925740458 688251331 898962681 202537270 704927657 213666566 966898607 648869260 549946811 847134685 560487290 324556014 618314249 534992466 471860437 230416792 978072208 778373227 587692478 336819225 603531289 844703126 419631418 958177198 890090353 703351505 523778895 190766929 82759017 264393628 121220006 835819257 908966855 882930569 769615849 40661183 259030264 533137447 566026274 434364237 246992881 264324823 814941113 319011750 648050766 121321896 848440709 924654499 889656499 662076169 266773742 422527388 292324623 948037850 901912579 672589125 441493386 490535563 955866494 871710780 99331100 552151926 683827502 9400137 315355371 351820081 380240005 201202446 437571452 99921597 211006595 395196753 958100865 456890453 859180664 141457190 131722907 676500109 67290942 975017265 220210860 719442058 558366907 795554048 776172198 24454414 654093098 260961675 972536820 130783875 832573028 886390816 814410490 824635260 246620503 683033126 712458954 816386211 78829048 785294177 411420610 778329394 345870827 668907931 854151159 952963702 564756454 92215011 88963203 400251428 940483593 322120456 403465562 475239197 710815272 229517616 307750949 361565860 335532948 24144439 559817004 407544356 639183128 936925159 708593788 125932926 402201808 280208853 544998400 100700070 769335000 778203487 475416606 605573235 449949588 805450909 95836811 777671703 640804090 555693038 323728306 443000620 198262089 916046432 186913211 9955250 223468667 109436617 955056983 891975954 449157895 720358784 278474306 686622572 565770913 947749095 448186444 895499145 358356225 858318372 319718704 581562613 189176208 218541411 514582007 1441779 893194729 132486656 50316462 405594241 404049079 273193934 530088580 763319373 8828666 665911015 82876859 390702620 124320640 566404389 227413250 581103412 347273852 321183963 738724249 716461477 83171272 401676983 125939392 862985299 782104421 725644923 229277070 824051120 645179822 387049583 311203507 98619586 864312825 669435583 821987309 503015338 494128535 227343437 228115698 887239159 119844019 465465461 131134045 282561260 416756657 988790561 702515762 132773264 856549826 647068077 196523000 124068560 641313876 504871104 413681430 86264616 21808083 346557997 806262594 671579291 259943527 468609578 819451446 135293051 71531581 673468593 177380424 426899351 239442090 722749283 69392563 537883421 451074122 990562734 701144372 129448706 499463110 720181635 720211027 54048212 469457207 690742951 341023193 514954013 284456156 86414444 742180059 576042160 145461792 930724234 165154415 246902677 597579395 679948435 80393196 863183521 823271394 410921315 299687251 879511200 341877127 667834028 718758598 422187335 946505392 831333828 884427878 466760501 526734805 263235382 974358764 312563692 324826350 666289445 819282829 945257355 231913643 890798511 536757066 445564891 963827207 169027947 76226389 695809230 191564815 776358902 196361905 82137003 299416691 947579392 641835086 662562739 123797909 96478106 433301015 985415649 517573602 403638319 978399233 903359156 416449427 708820702 698579524 91737839 765395641 360127617 496147650 176612059 607039364 256349264 692607017 395655417 921870140 570473911 600337866 409061856 906392867 624469417 536444903 156524229 653070637 331993070 20566321 874841067 954233971 610764651 160468548 783010195 953674580 13562769 553943742 729266254 798623482 346383702 854046824 566747618 7450849 637249391 283500393 904371809 229224264 855233328 465162725 958400381 845531615 320983715 742287614 601893797 275898250 911748502 54477484 866767535 69946154 468841348 799939623 562795518 444291051 214131896 745501549 933062924 566949128 936069696 651648427 16805986 222902622 635797559 110086245 674738960 13806306 621957153 277568296 792319560 382061750 467848417 620746917 382586348 466106822 235783851 497264208 839007613 34797572 515219052 351985865 948487751 695952176 150534635 417967514 900478153 652758178 498444187 765598057 882908580 162838266 490142610 920916635 890485111 677860447 930844436 416127427 144001427 554888953 812530949 513343981 302823858 825455313 532901724 105770927 257317591 450541412 339066039 887468580 911002098 258184495 545707509 753320853 206779522 213869782 971290288 656382432 625641072 52517188 160725985 382525090 83547622 61203253 710990834 564886791 437534770 54549708 916452295 469787913 586472346 850415223 564166577 529472864 466775448 433236467 254908264 241840436 888743922 548978670 22385177 890536759 653184564 394072244 918837415 335748097 564820442 371914895 833911894 758642322 193461878 659591314 147073171 31014347 117031047 80136173 304720842 720072817 981456006 712540435 381282394 842033359 735392490 278962315 128013160 802518638 233105872 473572268 787614039 917998104 452496813 528140921 242944601 397660091 601055168 37472764 208185691 704068996 126974968 685722283 793637953 950731060 45234812 271643175 348612128 891049131 372037944 931327514 743269189 705761187 115304858 17883647 567457380 627799235 1282669 950984751 961871626 593067140 924616714 936844599 98097615 669757804 549081285 263475924 380940110 37732890 895570788 131244680 270938617 197927781 807248429 112030513 583421023 232804184 544418106 990278643 458493253 94335507 399472714 646086700 802593357 444454082 776804390 83695990 630752630 42181548 908214454 491280712 12003730 972764258 435408883 858795398 250731434 150025857 181453545 162674933 517225945 357330995 664196945 872749070 618937927 569025208 763678573 301170071 343416025 778179659 318370760 172914678 245226382 663186668 332010484 961610978 196086889 556785998 969527956 587064769 668212898 236296889 50403733 768603392 27812630 433277127 288371407 518672002 289219425 902570941 612651957 899920293 879097293 649040394 320632962 745911299 552934029 804490633 254604989 322706679 972412481 806657126 375011423 271535930 565547848 297513836 977954201 415617849 381741034 485462924 39955470 289827501 284555430 290031482 292162608 617217229 715730685 979902059 883813632 451174594 398863372 684891697 869346690 596068322 979076508 412447655 701915423 949428688 761018172 992627676 903628096 560902058 949516015 217381813 761451897 537743283 123259880 459703079 625051622 232691473 75031690 901679685 646686542 742660420 699648199 606428249 952794443 366687288 796489183 60365900 101924858 435410211 972316348 474558964 382293006 901377145 352039811 118132947 882739388 514444948 842747961 791280225 262190779 21134898 422439077 562951476 422976224 290957311 510032739 580324960 927757276 610714271 704915844 563512986 123429149 190196133 687568757 630975452 746124692 566865168 855958314 819621424 13007373 724837558 374022260 184584483 524238922 407609539 80287028 164634454 349091343 133808246 494303071 240451283 453205695 864645470 74878440 416959866 573813049 430062714 936125679 571442852 936941701 905054204 527900090 176504145 558694809 675289491 341152359 886209111 527261539 685207196 759744646 884280957 209292905 838331542 878767581 997814219 447811883 846679698 192819341 314445676 380812115 322434895 615313469 92914409 576670412 263804948 932053254 992909082 88189824 793433597 381506277 861807599 937665526 8356931 639709645 879061360 463277005 880228764 969290710 586649473 474990301 799654243 343377271 148944131 714919274 746224160 715504287 795782269 491320809 599030820 837728178 776869640 360014856 97951563 611480226 250083225 521827250 417942518 991392314 457338704 61207628 927371149 579999942 330899455 453534649 441886831 443994066 195594491 899470104 957015241 253864653 184558549 471655049 970396786 54032716 608131960 654401009 204073801 213172970 206216981 586810201 302600522 210295979 286497290 457817761 909533628 190314553 262047085 226500756 401090656 175151732 60598000 407282305 937047417 112292374 537757376 913237384 768287082 616463464 228453854 185468585 622810767 229861106 327189095 535730307 282443966 447839068 674381553 644598746 912255797 915181575 439457734 694062822 16490964 767382630 192580612 872982757 702137916 876921483 220372470 82556153 655497964 264573902 148720726 351595242 585724331 70020138 926522663 593223069 778959271 728848496 834887796 980570007 794772856 160716102 259293628 309841029 484555654 835609791 199891000 567727835 692033321 732911991 649182084 321416797 237838417 953295250 873293570 717172016 141879975 399355123 563101840 854416064 28038476 687155735 494022910 319638229 59428793 962647365 877326274 295983561 754183037 508112678 936599953 318028089 567496759 398115952 957676123 702594391 9634057 827387661 474434505 789413489 453223376 817046245 94632987 139291051 740128831 514883503 400577491 319142839 408879308 912269170 54662607 796378356 368493225 138195503 177400806 232575011 512657780 606511503 952851067 922691386 961036520 931373888 477662215 739829581 124802267 796487384 243171674 701708703 942000639 269495571 185158271 887238555 733458369 489900221 209182691 842093421 727629379 534662701 377842206 457720595 504684205 585926004 410678390 474242245 584594894 806111747 596882938 684347229 4767906 992127200 547421067 575823016 112941186 583721360 376611842 877803169 601173746 629259478 41584247 373750321 465968137 398807257 631006124 898524085 861540433 788633732 355364325 144812733 733465689 716454940 172611862 894967377 799579914 285385583 254154079 663526521 611829348 145741416 868500595 772657911 140547626 212914919 609421717 753760064 41653871 355266203 46361040 211273743 716952408 70846437 647469413 934865173 159363718 208994831 262192996 659702901 80514194 54266600 1553705 357652855 847296427 427568669 111844115 838733247 985721104 858129798 648995491 892390719 892415230 85138846 984453187 858910815 584710515 522831669 218506692 151743576 680412925 505305489 918399519 134148155 692274845 423886990 609866441 954477931 955667231 348059467 86314725 68670155 760202768 443442445 947418232 274103472 284874388 139648764 559488796 498615962 14905462 463375884 429160668 58898989 116941429 195676265 739177185 60648694 95045660 383181454 531274674 801628551 213551905 34254215 847615450 968927787 411247183 342896024 626353293 984743186 518353591 821045853 480175035 279434475 458730886 16950506 348949628 986638194 745389823 107565614 190476611 731340312 946509436 535384018 440639033 770297765 906032108 865736559 396540917 801943029 501121958 333878402 276218156 5474021 100282574 223112626 631757530 306114510 83137993 782305411 486159362 782257376 644719150 931170321 999374155 168284291 793382507 422977974 546534835 308974318 856231646 540306440 77363465 362957858 632073833 870063022 629747876 114331779 427454621 311814973 867083812 80828480 19167323 83390322 830861026 512638174 244463457 433151976 729848907 752930315 776360903 50939970 487329728 761319220 688409910 334049646 124149067 417288002 114826711 882894185 584043493 286168833 94972487 786058239 21612352 70707020 319929067 679907190 169058546 11436405 491910018 848034401 589561856 583027101 107854243 896255713 26724726 282625369 696622237 904774090 426757225 514929540 952907638 835162209 22323950 726238553 14468894 43972176 161702925 857944725 941022008 66260559 951242888 133775378 377722813 86414649 123239296 384396076 335440828 555292999 813190673 358227263 132906308 141138483 893848465 271299131 441694138 565449548 156631603 660686919 114923060 462879224 284855624 121753575 217344722 343238570 999934000 311037930 717792212 301831195 484750212 103535088 976756810 890003191 114011985 140814449 285046507 960676561 523944642 768052348 179939282 918157463 424591544 654765434 242633208 6019214 531648024 192863026 51577945 581383314 908797805 700063804 744305472 340095017 909276479 434599891 848982115 915166131 323779888 963108385 286585313 355869587 643088215 375223250 247576354 15194444 966977750 9678751 159131342 865273834 717801518 837005762 667041028 68545617 280490189 695960344 237586099 772524720 747598307 669450618 426829073 187126860 984902350 882494768 924369989 262111528 180431975 194696 658001406 118767469 506017965 858417194 562393087 372769082 18897645 229787149 287577649 275413906 461850333 127492547 148847706 652966372 606817570 625757254 833570419 852776802 703729645 714375424 620858256 12575382 792530041 12246942 531824933 46933194 232612534 623429779 74224746 162171936 891618856 198873789 120393818 591849063 328029502 667332423 188324411 395699547 553090373 854836544 960954323 822607355 479637093 402910057 620488995 504740518 735286751 198260345 516866962 969343795 164030958 921237618 770031043 375710842 241923132 646254096 111945038 552120215 460219614 191999978 772031731 153735364 769840972 775975545 120368597 936740495 754222730 274791506 795204279 676561136 423691544 473468185 394279188 197295074 972216723 310804716 207929041 652358803 815955545 261491770 418114412 328711448 585401386 973665868 925350876 95775972 226251435 365342505 985432365 286992741 633798772 50183398 592060530 783055603 431418879 11456610 250921881 131079103 786030016 486239553 394662747 968645074 782895115 333572339 127625488 377439779 800106984 74285406 710134570 47130602 566880734 406845507 761559570 798254292 408445081 308810192 553299036 455591831 796538075 871086890 109130632 539606248 751560828 433127820 576388149 110790675 898816251 189898115 378485817 103494334 86245602 170126627 500990247 920199674 49132770 217499835 451482916 205773555 901756921 76719904 621372299 22668332 466153429 791627934 188313795 470348046 931187222 684208969 371584758 986878682 699209010 540613195 604107111 680635680 879202490 279031769 572780292 198572070 613262065 368287465 42623472 491209189 657933898 92977579 153064560 134505938 658042434 997062498 436001896 925241724 706476821 699049788 401018415 916361199 963714367 772314766 822531561 200192489 939057069 399577551 474067238 70224148 963316002 60659722 943198648 467592501 650005957 436615702 551901801 92911844 455160282 151880246 642665780 27919277 454209465 182200996 784537618 199741844 21638528 817305752 179735542 37189339 970286415 893301351 169155327 736443507 768273693 360259774 356874843 604180960 218300876 973303654 348315197 286094735 93631173 639059702 294881256 280046807 939890501 683278253 468924708 548157621 440455531 111347853 75350701 377730465 560721163 963686855 679423209 91416272 222346948 989231021 720158483 464227832 989165312 149663223 22114372 433701844 353930009 283710786 336539855 347911699 896447318 474267073 780839815 501378406 250042905 206769557 911849823 793670286 898287841 789951513 346833902 946581788 785804535 102904424 772950610 365416483 357329927 837490148 468836626 480128812 251636007 553966095 334579743 859720420 42597278 173408128 479665133 122572650 2572208 170343505 25942480 921541612 598495099 216325831 792199970 691364944 8188039 958670751 512710523 393927973 437495105 860653320 633683751 851498026 199212533 408979697 564182233 624874615 192417700 351178573 597656675 316643811 100433897 812857827 525252537 840775444 215783339 408611097 454376078 719480475 564467546 516618998 139930352 264805017 950367155 440355320 609151849 606278391 261905062 477746629 396514546 542452417 770131876 128602947 662212899 538448272 772606789 282295335 139663918 867681147 833144531 463886126 382518295 192378417 67617118 60004251 950552934 630309481 698870909 977591462 367283604 610534343 942110641 315130566 662210662 339159838 254503632 877287617 838830628 22170463 389195620 683240406 411111066 63304645 464614345 675509169 395015023 681185567 887473097 327743040 480315214 28020917 890411361 194751075 520876375 176080189 461750294 239590676 702846704 90352333 268745530 711824129 835698171 115660227 109587109 420465865 247964452 73256242 433960211 491712427 420912724 1554522 556132595 34191899 912148568 90978239 682641171 334054633 427329454 979799408 482126254 901118490 803093753 752438843 143369634 943494168 403603229 689669949 304420395 136647041 512681688 97953803 325735462 686058073 361345375 30138420 295482806 946906334 843784631 254549861 264381281 52825271 686799669 631328901 781455828 790452371 964176064 877673321 537420443 403198015 512685672 936142056 794030752 668715182 633175750 766278182 722834226 555415484 992426724 184103569 892568359 520212199 127084967 948677336 981523943 133576179 561620082 37425658 254771275 24511006 589525938 189148494 857926292 848446563 105190467 410217315 710673103 850667582 901024844 143337367 893861810 334445056 732281983 368992616 427062882 789440454 985306837 589225461 421623228 469320893 75404588 287444530 765716938 646453450 496448382 412665359 283214205 444600212 342936571 820105378 278056130 215489781 994145919 149245596 672628311 998566055 511594148 362752221 264824161 986282954 190823855 831161538 931012789 869072045 522273875 679742942 208919303 273458917 844497893 163927611 894285769 32830590 443427379 252336169 676928977 444064216 124495678 461410691 641598448 940444666 267874863 896924218 240914880 58397688 704356585 27008443 691645834 160881739 114153574 264919285 735616586 257075989 253110635 474863429 912393747 645609324 866987866 6491630 282107429 884600733 317244745 521933742 918911116 822442123 819800476 475755168 221217662 143039779 363584736 335449730 693531175 550318747 948534049 204225363 201302876 217763901 309386777 715722719 271557407 222074695 532389188 209319436 128895510 975443490 75828753 711346732 810513680 683938550 27903065 778267626 489940568 272101474 826995800 753638578 433057282 578434716 15323526 831391610 261908703 475472631 917152482 241501663 327661371 878633057 258558069 350787719 234058775 217277283 446272739 449870188 337616135 484276355 501977861 26728116 4082631 756218066 506152687 70851364 34051328 662569148 230384686 549243857 874619601 277352573 604858781 960467038 903096945 336467741 133943815 118554491 987693840 332164370 42246434 47325311 622133669 304191229 912983543 773815323 301978874 994904676 791591284 119601854 829216255 758955993 586336040 939217676 61310309 68950589 816516033 726209847 812618576 554948957 871633723 859201413 646868782 435125005 597546246 49625066 871474334 686252737 394307993 73729372 925518827 585538584 500171512 41334085 881219858 507716312 373553950 879629538 706481640 196930217 741335088 518932470 22702833 433125190 495159186 182383963 79076231 752813199 102502447 461733897 713744445 52094474 318490839 688860237 626711620 842154919 860122493 737979078 916195100 376808919 822042889 582818382 99828632 224637959 835402176 682317956 482780323 506261560 151322439 269229668 296376887 705453271 858811721 661817921 307805691 630605158 610532264 995405930 76184429 111345152 840586352 444004410 554461175 667399130 480356729 820490974 70201636 548753209 705323333 885391449 612809706 795249716 614719558 418024967 81320207 865480986 186881006 618951497 43395374 198823077 785646673 667208387 424584249 146461006 15664343 154075433 708091334 202704854 894087504 249871541 272600452 275490390 537133937 913567338 251958074 138200831 236175608 461625926 520588191 685803093 348391180 548341485 454472611 43977203 793007217 7483104 289571333 430863427 214623440 129109204 388831857 111072701 980649944 614707675 146279036 187064254 682889388 652912368 796446674 313390774 675880787 680016054 489944641 744915614 739641457 981144283 694846996 830952044 510279188 694932581 807175583 875300658 909910649 264809491 901489016 391153058 514722830 524849445 790315554 954000830 506730598 142813168 714805751 748734404 400034918 905462008 663245096 276338920 138920030 132546411 244236507 497359730 552484892 348529395 336413848 249566753 865047941 341432477 508340253 579476451 101728741 573858618 225591438 324074187 476879428 316309007 521335897 732342118 33312551 530952938 390509859 326736073 786547162 834337139 975075901 602150335 467849482 181542158 648368371 939378476 984732377 274734509 932532245 211921487 629247967 490576861 306405664 96428704 496525028 924302461 632332098 638110317 958445223 161114160 992688936 878670179 707719795 74238578 259865985 84850931 612874618 91066023 378402491 976257217 355239519 371637850 961772703 921033619 427755945 424044488 715093198 966556504 761322281 212482789 28970120 51868609 692288869 719206319 679338741 758514920 506979692 273463965 876312843 805487604 58196191 677002493 106057349 255791212 516576958 946500733 984391199 653210449 23600186 770866362 391399452 452228186 260888995 670620157 119230758 502089476 670298826 463823572 368433219 792221219 9745760 129805899 162006503 932179539 960648523 151989009 813732259 377575635 823240951 661287263 635408623 342026844 536708439 728694527 378312429 826595990 74231170 921397172 563490938 108902667 210489975 886914887 63524382 734077852 21655084 190220201 712609136 476447046 689415771 810689863 126371425 372500722 309755295 639620012 493858849 11668168 12285403 254969042 275580145 217695111 167944811 68551382 85251227 799854617 784788623 739495243 338442361 931549125 470466792 967294457 585596043 874890397 824958391 231273103 585915139 594337741 895904494 721172268 452932516 757377869 493689906 114266011 941262243 43329654 869789403 826628067 155377303 812700073 965635296 936690150 891398714 771778737 755234367 78823515 337969441 183233502 13612422 154685134 279249191 289540549 163314308 705342700 929039745 296458829 394176800 755155320 781115494 697094839 177478772 762171345 484018312 916607247 402901772 660718063 433099269 426511485 377577261 644975373 215151910 217230433 246284761 66398453 336788771 553462747 25417095 403298174 308422773 5671000 515013799 444749449 661527517 448558622 939490938 98501022 730546463 424841893 123096927 243640485 792650454 369658185 311988665 88724647 559962179 640843810 267665218 300760656 745026818 250980744 143568271 541442932 330821315 795572642 552226762 825932717 100331547 646204938 932463273 11285932 503300882 720281959 730998011 129654615 404224620 302406679 271386038 454928927 38211685 667266784 61758221 47419903 373267644 541445146 980901513 81480787 472644187 538556343 349073076 455705625 75267568 104386558 57287568 334308748 294415481 534374213 71831256 504789780 818346479 621881445 16560361 534772644 561278207 837354829 997241759 90069626 797180938 869636820 308034459 145289432 40619063 305440684 224248702 330312527 18165914 268417720 491099869 626493566 575923632 657404766 204193826 441342 586943937 506107436 854781040 102004580 194454525 259858655 578356548 373311853 564431671 928238968 622447671 526947957 50157648 353733202 284146277 926890532 59125871 643016561 279210888 531965921 428816410 760772724 730821177 601732444 535702311 258012595 138891438 304450502 389197315 917566160 89101807 291205876 700594689 53591665 316495651 732921363 584609234 824384661 188170572 159149490 938377540 307307105 529425303 248125718 573988555 492675923 92524542 480552834 31656756 21315595 40774972 497467101 823131054 736685628 589975215 747925106 153381792 299561801 392975104 41080039 686684718 861541136 936129301 429244236 891648513 595865756 929826159 235928921 59408336 517269880 965430726 619656985 910982040 362881837 65876492 397589437 360247460 477212833 224193943 984515415 795490961 460034130 680741177 286978010 475269865 786025306 790180326 159309023 781010100 302793953 295026673 959609601 571896648 962871661 998100843 691132711 984752560 45466929 265047764 963587265 111620907 796536869 181472448 505689420 391828165 404997644 161507333 117170625 27652166 571219317 136155270 665881495 136410386 634892626 131393900 710291298 253022997 461986106 438365593 259010011 774844711 794026161 295756799 696303566 556027898 686894486 580346245 391825727 113889548 860151151 936943226 369261858 151998633 404127212 132053540 546053214 637610600 563970316 530927958 22159585 61131498 449034202 702551259 854893909 722332388 453395656 705445919 263495408 899249027 367588886 148609987 575113429 702237363 189377846 110739147 13150102 798313762 279935296 341854018 511687028 520518869 200599297 187280712 485286762 920501956 441451385 417671529 304126284 589282664 56983400 680462894 895828450 349489531 56464475 910602652 129012937 582655825 561674497 323446767 710583199 687240589 261720585 573287241 278895818 759146460 414768725 447823366 741197097 913543700 368923391 460083106 843480082 224705723 341243641 843328391 40377931 343790246 172199440 707180449 777378171 31378549 480352441 131262360 385550372 973534300 290299743 190893193 662793394 927261844 768561455 13796446 422996599 522724386 317405304 88702561 315067112 1191618 321363568 972203519 180099939 766641815 81732644 558128506 328241357 795328421 708270745 896187756 953194229 712694585 230543799 285220925 552307741 53959828 807588104 862449470 606956476 811757909 877807244 656520590 157350824 669310051 338015176 289216148 213276389 936906755 831354971 298993022 6781679 854380315 802671339 987236250 913895721 730241463 747280288 982384284 759099518 687625043 354314579 577372571 617399545 915429673 153420463 233049316 143265452 754257309 784709339 679372205 512713453 870425417 74967272 697717475 467408876 57248678 191447682 239070769 105243651 821080461 24940567 321526252 74713317 929214106 181528372 559752404 958455796 731123231 430283400 986794532 602742872 502902717 241802278 595506856 890484650 308854549 299847960 698858377 715573854 705274844 808310618 546643580 364427171 846524045 831691786 592682235 588237882 208575494 202096117 440879896 954789810 578808074 353999981 350555908 363691042 770358107 852195682 623457752 586010826 640357328 641646716 499244536 83232316 988401287 136825647 383964650 996362643 445677892 594486542 804393319 351437261 258126295 519981966 993953506 390574159 83773246 288596798 661510954 345477337 516350022 662895997 859680649 287074952 152662453 816125440 512665861 661142782 819938871 723604845 187925005 845709339 786868552 910685514 171790203 66329678 163526803 549202957 520118646 109290266 418835221 644188726 515460854 729134909 750171405 159602785 303037696 222363655 768418455 699717726 791634296 206459489 609281258 278821957 612329698 784673054 737108602 866475507 700565435 644051980 953060424 239405272 711572718 803108176 488718031 803274960 592514533 691247812 740006923 160152968 580054469 811213641 546452573 540036842 816294068 893306322 524766478 849668183 850046997 90957842 685985254 422083674 993057169 496321821 21419171 549186456 772164871 521065316 224762652 103959743 988810873 894345469 90878191 626344109 98496827 430707691 603507738 42404567 219880244 145509867 81754974 858611298 421967276 669571483 979349509 496046884 816045401 767443952 909767259 288643274 213180390 315522749 887645306 918108030 349066668 690057697 782798060 930056047 129639517 701410958 796646574 707087550 972372071 369895896 43965519 405812538 51082458 308771022 498547085 944215964 549113281 52311848 589597106 738206208 246725840 368415093 257551034 783432939 168826081 571418558 198572652 77363850 575083508 930609681 330777363 544147017 984882652 523280581 448837804 791346374 778814737 626362700 468569664 242483900 917624288 334367823 392350931 213168085 89119250 163107287 699071781 377757864 428326380 767387582 471553031 290160369 692561711 613710347 630083363 437365100 53310226 551462059 559861609 254590655 619698123 486214027 736988631 818889929 30872486 745009888 122555889 796484895 849860910 282884965 994900565 636193667 303545023 900384621 27530784 129625031 702169290 218035294 275188785 830854457 482725387 384296928 984778057 238287830 887260734 448887400 876753775 637578893 506936570 573338693 846995214 94362065 365199790 226637579 455485147 744043 925082314 689224343 959093653 84169516 990580439 870367295 966362955 762352987 434664971 368527441 548794353 121801368 251598559 275765903 997083023 955344199 736813244 41632027 539514272 122548517 114108102 811861764 259698494 800078146 932787298 663867307 507452797 487086476 260025492 615140459 708472139 932962362 205010684 791888974 436591447 838382897 120369812 925559843 156861041 840764291 243333123 953421087 995308222 894804292 944416807 182173524 898835958 750548828 822667311 296269848 538779606 703625059 709934559 693611014 410637265 817961199 40644719 897097518 801778884 673371663 761995468 831419116 833422899 402504049 676201253 698497670 913917983 144216965 144736626 368550197 641675885 394359090 42147302 738064906 937871043 913687281 427320467 678878901 755866567 85808846 604266819 572788237 474086107 567701846 491592371 349028563 356566662 638314220 273473278 528732618 42621379 863794814 798844080 601218810 880773781 809747002 494852474 955893360 27188233 235356510 607932399 636874149 599742321 761024736 786834161 569649583 515387371 490261948 753131427 395806747 769076881 757930408 797593973 617694462 792243608 797073948 418743652 210016753 474029447 37207095 592862003 481687725 158204939 785826589 527966230 201412951 235913794 789444695 222940062 780935819 834630750 576489628 438354408 925886361 688464484 435605462 801007270 836792114 109075813 516146397 815375555 668125946 105648387 707155065 999912610 208292143 404997552 185096049 488865469 515606200 183723518 281569250 252982384 328839761 87185327 266199715 609638409 766070720 528612832 442483526 329883170 343288126 942270395 238625725 798765513 594754158 826613543 70108827 891062395 546540166 407728835 359727345 526656255 539955565 744638928 249481595 197023611 380472587 968019953 413458517 108578606 722587212 254522530 40207618 257256559 661496956 445926307 152006423 983062268 659202876 498546296 250542726 122671772 328256541 304383900 834124712 772903761 4348195 896913200 994803680 375071978 317790194 685534234 584515554 579186649 274001728 70141285 672100966 78825228 681225270 895370486 608355895 679719402 122878156 488560004 686954340 421227673 998918119 899933341 219593320 39974154 630386491 597443917 534484481 687039063 40109393 643245134 881311778 283307597 402064180 100826059 233516065 506412604 747811525 3559077 697133880 844092624 593084252 756481664 226457392 52624053 627176757 527755961 903266556 563067541 677353933 828020101 843379281 349843385 197864414 649081912 375002087 787127407 523682471 910586621 953758127 947028857 155594807 914980489 646237481 878484349 788779463 354727362 511317700 698726116 91839223 143295932 859209884 400148842 85681142 690022846 743248400 922822697 730696657 282358769 420103004 805466554 879667086 184527462 437402011 357356412 380033467 324356533 968741322 897653319 191912195 640017765 947528200 500734455 404691759 380387414 635603765 909182676 68669938 636456488 417536478 50332724 834490554 76516239 838671295 7735203 70893956 639640882 943616378 920318167 262355384 385551454 445975341 750580221 118649305 430310588 704786783 370929398 461441352 431209519 763239636 834132324 49800004 218824708 686045768 877990784 439787667 747937327 309658306 216277069 384003298 972926226 128902947 142481566 5350258 598509757 880360915 743093788 79330877 815562563 363379418 489693602 344013798 857841170 14335460 853808781 487965636 916684736 968032145 63198668 126278548 977692877 17791418 618484394 95371255 4709001 922006517 141479996 642951069 896057591 304352994 130176798 514158798 164015334 594263805 453389500 664518973 900595394 757565882 330696757 941398469 157383289 457342989 870456881 839281729 37095738 528877254 127191460 24426433 347685403 762772391 632943553 299756293 866289346 905715185 694037529 956135507 195178861 183182817 719753556 691394932 600771740 429181671 403584746 264969041 276365183 22740650 16632549 968519929 728577929 888278984 967980767 32168144 205633297 473818290 79703283 674172642 989613345 246912926 219380556 756624118 643590471 769671642 703412086 980377050 254712849 946762141 939882722 643242269 141091266 150103522 743123583 693138649 346016861 823879483 467792962 738799900 654378623 313600791 486283293 469551866 612082302 316526534 502695278 327819333 935187166 29372904 543581461 524034925 332922892 831056974 408063703 542267064 706130423 733821292 809451070 549715679 882372670 93361591 781099160 683340420 458531020 624925312 796604143 975121497 701475314 965246424 635061003 770550396 110649771 250340294 869257120 805608762 473133604 554519308 778101859 988223393 869955171 68305419 316760899 703161669 934588063 983625796 599503960 498487343 508580638 167456879 613139382 674787280 5180039 160389930 263369153 292622433 55598229 994840391 252890184 744243003 475868705 762718717 43128259 654528317 24686595 154378272 219093505 104070041 67041451 87630164 121435589 813617193 613139792 661501932 275928052 496827608 694901523 543835529 897928987 76707023 685317767 331827942 347565642 522523646 313788286 46893705 846827067 766207980 361512836 373723905 862461999 611918653 892450459 162059684 613542703 299506364 68978825 797022387 404560633 688763344 770720883 825176248 251057775 594858388 819922229 311221611 385079803 989485523 911682555 457058206 358914878 49217338 586699873 45050808 942893876 563699658 327176795 915055629 160944049 516178787 339446439 203682862 222113834 713166186 314319630 463046887 343596919 269443030 911009197 260951332 331052688 896108156 882689025 213788433 103980184 434832207 187011702 115394168 526577008 304226934 785521369 775539357 453097454 539430067 338691590 368842904 329755148 385849818 196058098 108368529 448798982 194643173 422731364 929461331 98331731 160581335 543486558 51294620 183677641 645659 965059383 397380537 846437461 909812843 162548784 157488701 590509418 925976649 149478414 644325148 190446469 960130506 573544820 89166278 435359236 157576322 809276515 172321601 294522146 957414510 764971361 160744675 425331737 775872615 669399883 796564959 11688121 27048510 691325885 8393801 11756694 228803848 853961632 246354548 465322328 703432022 383645589 405209344 65672057 2133595 570020069 202213933 530825019 38816894 331229123 478168019 31616717 105194308 886774080 330810278 828376882 881021543 386106929 718975699 316971520 659401637 734090516 532281637 862913370 435574156 717914256 852265976 481275674 531283747 70754352 594343383 841098352 189971482 605043188 199978575 375820256 659533592 683481434 468919135 662116238 800602812 600611848 569546258 507145210 302869672 378488299 145506300 965584760 738820123 923097872 674783903 108730372 532335622 106189461 233484586 807218265 473441854 454750377 958935837 978990267 553376630 614961408 456041981 470647228 385117129 830267321 956278876 497806236 408265327 836569787 976716721 583125104 673440217 792342344 523369659 120578863 194853639 469549274 601472372 269034666 250796405 942431869 719756945 944097054 162863076 73827563 508478290 830717486 469570599 958933919 784102141 350583433 225037055 900415820 746810495 167278016 217799405 370728120 751541157 869697068 178363762 867606132 247829197 708123839 543715775 550321976 628966827 336369093 496161358 582128425 102116442 782873664 411091689 500719876 12579038 627011707 141614076 479748350 602666547 325403685 920381293 409439002 197967536 975389269 342625809 837447561 615247714 474031488 307275103 982275230 933642530 800535023 923751485 156391666 386783688 904993108 502748600 887682988 579519225 598185813 608106792 800363096 540638648 130541183 757552374 631371316 542128497 331987876 75967693 258832151 900685454 858974216 827848135 889362166 954903293 36310117 142194104 192894139 484686322 88847871 192796098 961530068 938013166 372099678 269892567 884961861 843356062 980960069 387036315 765474600 197099884 156704977 935229702 977221528 659440979 721755806 766662393 266175880 331598145 628369549 652085227 263148588 422314993 533818624 776766825 9705049 643377924 522571225 172459019 535242577 290917366 525911048 843026384 125898385 657055352 507430959 772141460 150905102 284310457 3253770 39955631 915949555 551628391 715215861 214208385 535667351 874532226 482992230 43184443 119354068 547165140 219744683 314468005 151823362 863871916 990127695 996417171 829531199 543990021 71761660 856842379 672849999 533306978 686061405 248406069 99234470 291411256 722267646 723467313 586919145 930103370 479718949 688041355 199207806 642218481 367919253 376485056 536279256 909962768 214274081 186518450 383180741 871281099 544736785 360011860 582100162 351323811 240668061 255540711 839370310 348143612 412861589 833214812 659352914 306310030 216651793 857922992 475392573 917625436 809510950 935320822 489154680 780369889 895043706 110353627 439024809 885226588 702276336 627742676 755395165 733755326 146940406 808889970 729660093 364374162 403347027 887888334 527147347 38714258 157000816 630558766 883705691 401442489 461798000 456103150 173942412 150688462 494205957 129518176 258333097 806687593 795002044 998056083 532160254 29828372 364316677 732320746 123672488 712549661 963616076 263781017 783052617 715415448 731112179 246041039 565831799 632163039 995384073 563515615 182659406 606532256 487617281 537756651 94709565 788941523 139712345 928772690 55331086 48936763 419880282 131570407 913372933 84744578 439322168 956072794 68022992 915143862 358213089 710775117 90115231 476217796 559161938 583469992 357345257 729361519 107803297 158019622 210439464 924708888 250992101 674590042 508133989 943777016 399950005 715295117 753730479 609985174 422130849 326960442 3415646 923529047 218634120 205152193 412619272 955700873 269906607 295767535 269132774 459940886 583263162 642083649 769612089 206347916 90734563 901572536 361275040 375199055 280122866 805081373 851356296 712482407 325455131 647766279 251460132 153307434 970146632 490082301 904288383 132350439 910969005 772648504 535989981 83769500 203338604 696624553 347366705 625164044 132239044 241942380 303160881 163908015 585863578 67897088 12935049 254837508 577733202 306390564 262458436 655361186 328399218 428062689 279557820 68888833 311161464 875738171 12387294 362299036 595065492 773899832 916048551 846127581 424074414 540337669 525282579 342406848 946151551 29162712 635989632 177516529 641527931 974398147 450978013 678285298 181719574 763585797 262568616 946040437 895351400 294125218 522663252 499284575 933126857 572652659 127251474 887065341 702398559 308090628 620884148 830327756 754811695 81237173 205338220 684703695 997660802 727052334 671445288 881681918 829019053 635508581 634039809 224585997 108242629 696278044 17178636 329361765 27929419 621682959 286384288 916457708 761652160 89759078 943866554 696878759 886887960 498033007 984338584 303510846 708136008 79506677 949594823 851281792 676399093 452881833 966798418 202063521 428107893 218837044 85141995 665451975 497194468 749481187 309247317 47512415 838045546 827124064 994784933 921542762 466879432 644219024 557853060 350927417 581240685 197627343 831365484 706050059 399278331 430474676 691294480 909850366 848198998 179654969 207203363 313549381 365221706 316948598 782200991 60561839 484832336 798989380 428043877 290539407 5591593 35429754 698853324 315117184 254236507 91178690 897716092 676687549 231246051 946010682 44520259 702258032 514980397 709497476 604461309 955395353 997116466 88143240 110996193 448782460 915197632 263637437 688233332 757929414 459156698 427728124 880459359 259560604 80682554 265467887 171940061 416783307 869792247 10689121 466419186 98937648 500874581 771234609 517679361 636379746 804424526 967214002 395692375 57235477 663857418 269209905 696049056 597010228 763376145 581603150 162166072 904922882 267614047 905527247 545272726 526997645 727560679 944617160 937672928 883153921 272740099 758538178 668682146 699269758 917215192 4272729 526408852 766310678 926893706 173745420 536825596 518548081 531739921 138663627 202664382 950819467 495583689 200504503 268240432 223379867 263944041 165116688 570768171 713433219 211627763 581519853 227045470 922940172 201260782 263561509 960705368 409233966 894955813 621425019 929927546 885527767 155384481 660423430 797129233 978652024 368418976 340924774 725570313 999811532 728119388 688475057 657988132 497968855 58614512 634065729 803886655 889006738 849701487 471728300 821038425 353915499 278461350 962434787 709219278 605010551 801452487 419796872 416978118 71490092 995974141 50185931 884309589 593083648 620225491 989481432 976369006 654649702 274656302 301937335 700636749 684783943 922991142 319514535 579165899 418902053 235299324 596424593 29506353 703490507 884794365 941752151 877722789 1863522 854911558 638701275 83673361 386077493 308508169 635944580 797450395 835698161 442576063 572096288 404647447 547584085 559017689 885934253 730858602 145318583 998622427 940832234 454361714 206727469 878739067 632791573 221443055 977775109 898337950 523008446 101271782 770774558 392933566 833765608 172488084 64036697 231497647 702536436 745382423 247703630 760436871 683975381 814792766 347865307 859522961 136542794 681484277 687845154 11062792 922405659 778130862 914227817 869819753 538129426 149276588 873207595 676942159 314306053 750860835 516723894 861205802 383759542 801568457 880752655 224021749 182303359 219036822 156232099 55250946 159621222 65991238 644777604 503271544 995010807 678526298 952097163 757108162 753860267 809852511 296384673 873105678 894507976 162258127 173573489 737003384 667663838 399830944 565538757 736631857 442233303 610804924 443916730 412294672 493931141 792046560 504275702 999346334 542320899 706653029 186150837 236427158 794245171 129123562 778888360 726728313 522812741 264529945 392930240 309983081 684841291 286094825 905172824 314693218 867467495 900896021 493601496 552778631 125679213 942381903 846218179 598231644 555426775 511720325 506912541 153671362 206052464 325866716 399899677 733047929 171978685 207973749 704923096 182543334 388110860 494466838 264686924 150142481 441375432 245982764 381441595 745798251 788298959 347880637 505181013 418273397 926433121 117076427 753886158 424788315 800090313 257483085 989284773 190489724 718917964 79989536 988354137 503587165 457353618 264063393 370107160 537186594 229793656 234261496 69284513 589203197 416457899 258185771 963915236 470990891 472139009 135032838 852640374 622990975 957264098 799968336 518788444 363762408 336656343 238713827 651885852 156672749 444024893 53093947 89468070 426709203 359687462 404433652 448048871 407466226 794598738 681985620 317843872 206534987 2656932 484226634 78130066 491412523 701850176 113209041 151892883 214517734 703459892 62856756 330283863 227863254 134121915 831222311 128537512 359383024 694759391 529808155 145662657 421954854 79473699 69147167 909433576 254335330 458372635 273755841 726661111 332947143 787730776 799988032 323324739 150965669 380745949 793643202 53379717 280626605 551924113 659160520 727851903 996497262 607186603 938609816 953142231 747934063 996154578 385765281 946409865 669852839 73098569 663073239 486018206 571911186 490047269 878960326 714020772 302775869 241333628 573356397 63195198 479581296 761415321 748033884 28332915 162967572 683836991 356737919 875572880 820278086 629798479 147129012 199072734 677769147 552333250 712881449 384704979 470564893 476949507 3664360 24788519 413910150 343889911 407632320 271399494 612865617 909387875 976015540 22582525 221095385 933542733 900127307 741227703 830079692 46805105 539903475 944202545 142805829 611636014 415334730 675799051 619979272 24488648 781703146 399326136 402396332 857568139 26559741 334432383 671913162 272350217 405221448 669353776 715521400 783970498 227747735 754341749 358320768 227731604 646852762 132006670 159644371 97561875 967666921 798677058 41494431 470766995 575228708 481004536 13327611 779873804 526713284 878443887 314474916 420175399 246873877 705195597 627029747 456114527 92447247 973312028 155372934 294872270 640578192 362471187 869241608 141963837 991008828 420360220 368436160 266034838 629289801 361042859 457640524 809056230 369530657 720025395 72954285 234667606 204705703 788181195 420837651 564658044 325125920 552875913 112167022 937056185 386474729 386529425 777649835 748698941 79060690 842201220 880559268 892316796 270805395 685435 590581459 729799757 570416999 482379032 225515888 400203383 365335923 776474903 567733247 665074057 666814933 166269273 803202717 444697201 991011923 883918181 310935119 265884776 631782083 168730541 899310351 563652916 521685434 935985598 894327863 510748314 36681216 885785042 796461098 695259996 833341633 978886479 845406064 49452434 218538181 827232830 806555296 613457175 456765198 246047181 130116995 27314201 321153632 629545331 621663210 297865118 847183346 898685387 856533016 286030028 449558665 956607602 291460320 917139517 600175302 628039859 599181206 351764029 716229585 944039583 825242117 734503233 634725288 28434876 868307730 455666414 842018632 451582727 365004774 209922406 92285063 455567338 185705396 597479205 369887504 335517363 422409476 575913524 93622886 80356650 840507219 118403885 150891715 97788441 354814462 298704487 953260491 772191437 831634619 962711313 58412540 932859805 950249319 247037947 223256360 882497628 437080083 555270268 263689569 747603373 176407039 245431826 380031106 388129124 280685280 973378421 707051587 89249185 639337113 60305554 934627540 843546180 770138878 444115966 700127299 928651879 8654954 304428394 834914048 173036972 875106310 128728240 58702490 175385229 966889338 745133118 607497423 588667061 749110960 427747195 675005320 245832211 976391644 169985929 130389339 495060711 226924171 341550198 677485267 250321060 718149224 295919681 775506023 17032555 163168063 11710635 793552558 846727978 286942725 973551096 570221958 899949784 885268125 443054290 804697707 459117702 759605549 759706218 759628668 523297658 371299151 838044203 508221947 444444503 329352426 503085170 920043299 14136359 55306389 815674348 328829160 429910756 256345279 23492386 181594715 394220857 746277836 843343793 416880785 631274825 922833808 324341845 935049579 417528111 854330034 754365708 130030308 64557277 639103663 472888904 997624102 60035512 666929968 736712249 860689033 62843862 37717761 390717162 405138195 524208422 210549194 330097514 159557217 161703268 531213143 553125281 595280962 392911570 258043466 382187830 269771546 484088446 581319798 330911709 400285354 941330825 811475680 419592955 291411763 122879452 128084248 225128790 315802777 366133747 690402715 421528162 428252786 320307208 156300946 329154302 807373423 33335677 821965805 755103197 327815441 612674229 754355388 951578803 602827762 532626276 497879888 543945050 339495694 916766473 299792598 101027699 398228535 648380895 144872410 830857039 940089611 413007865 324474394 790856193 968333866 472263268 579368234 813980589 965278139 402674512 35074807 735097027 672377455 566133830 354396787 986244517 625619649 41384752 228205867 545039178 392554633 418028361 474313831 519727600 478237956 633083736 530869942 65433647 943788778 777145114 20357624 367412532 947499400 495090493 488267768 683129544 905652991 491585444 375922342 357476646 743233546 333218456 528418413 764408041 426394007 187509268 5472050 653471728 811528170 837589254 432086383 660101303 424390407 450572531 219723475 439688751 372867845 473023777 81960983 330265366 305030959 866509475 533142131 205340472 460419949 394575028 257754988 436611992 276656259 231026667 123856061 536573989 758496792 602354366 395631381 594769693 652127643 234506955 370105718 249829889 805474020 266105387 940441694 604946486 103541934 266706218 67944594 957164355 377546449 2217548 868748228 448812402 956606306 427658358 985499531 432241817 759910423 454041557 242089452 635741947 69000128 206412183 570407469 997989113 872507263 707329916 350039802 780920883 3874248 663253794 165635902 414092704 490936777 562744526 233772265 672844427 118307272 566899315 738316422 71178655 193494908 846580149 237599238 489238044 689155462 521122678 750852524 964108074 660615913 909324211 291559514 131038640 618903552 352014814 681161242 451824139 77072668 813833324 672745931 51257906 841140667 467267235 814255852 397502713 801936580 488716946 233219245 177436780 869806569 423212293 201621359 403030701 709429863 637352276 734680679 617569909 687645194 617040317 259720445 328575236 261382672 317348700 323346066 232371924 903325537 583704859 961278183 150127002 636296364 880444681 9986014 481065433 207453808 152100711 712751505 780786705 605112169 789992736 557338544 445069504 230100855 712078936 924722604 664879757 308775807 791290199 851628158 739259054 330891667 421609690 780073115 396775888 401967697 775755862 297778401 630292860 709116750 316985056 732553524 72261055 237405574 29558869 750856712 564209690 48287265 589789791 175947474 292483598 563216105 597614452 706808399 897373880 735131828 351810695 598811847 84687496 166427207 66704359 236590208 996875400 758084006 476716922 574071094 987601735 60829236 647478802 74586255 421202151 30431249 697843439 776971736 652647451 656144496 446516905 772200537 564174661 847078338 132761337 74797815 699673221 333958309 32559458 255934604 243196594 966244478 198555527 121365164 375075448 610834837 994605784 679360405 176778558 477300321 768877209 243914518 660241522 377249393 692000486 613765991 7320399 164475521 342482102 45123991 658615183 840482337 253061734 44022320 418284820 134096731 285160369 236247261 775892392 321175158 408445366 274741003 931841422 752042430 737492473 893121381 104205056 798258153 1049629 450688835 958798160 650375337 864289711 256521255 585777513 349228288 979027211 800170121 560483551 467127393 568493635 718701806 115474144 176799411 716659804 132697521 295498843 49476997 453793530 145028670 184417886 367286743 126115349 800234169 309878209 352615744 137264862 426803158 173227798 910026589 145790269 899227173 59959792 943176522 747521608 574636319 879636415 253648746 85928919 917054586 561847796 535654194 834531661 464491650 153899737 689123413 936126856 505781079 982335631 415189976 812713705 407448490 604426252 949898970 264735741 548311483 146305623 511926477 64509503 232624939 54639679 60253617 251689227 234292099 296640790 683952058 811775293 598137331 601983657 31326409 588500345 850671926 770205078 923379853 115256955 497765350 451954542 504570512 906546722 20893241 144104303 911241127 318360502 424340668 108837256 950653686 742624222 199143312 998992377 420141325 509447853 539024639 473245596 290124310 902129791 575858847 308017788 288637486 917433119 213279018 880746063 695225687 620491784 383414625 877296949 58182703 903598908 193136564 371179623 330206916 804539621 139654419 324129784 121187028 196870207 945467359 152945617 167948699 492186310 664666278 443557098 241795933 484341855 300018802 527033382 98123556 800767183 946065452 946733868 236648326 852764622 923057610 413060806 611284788 410090828 242458125 86553098 120522476 226933752 341704329 111397679 829203968 315475728 393490334 867124167 60235549 436556110 517026564 589560087 336737950 866543207 37692569 243043209 808778176 859885526 482968113 327856794 15378623 583863493 546883625 284660130 236015988 520782116 245769103 825957646 150312457 634734205 507652473 438182131 472466935 188087645 267683292 433476610 251767512 706270196 365738614 60905048 193017329 101166928 730635056 997570956 841855446 923159073 423501093 187014845 671628400 143330701 564254425 361531670 745619698 979402140 995545777 6608223 377253168 561355108 509230773 467755887 467572239 898465011 105779475 607163213 972897281 508750190 643413750 507447494 92379681 317378179 928115794 83287743 508029580 652463356 67349877 898257771 830251369 851815871 153129678 498759126 808822327 513199401 499597723 356136485 332923185 165476625 536089346 811037551 683111866 438751743 36151501 855794885 962260043 388206148 589842371 993702096 388353089 845855623 570372119 973043424 676502774 444711777 53368467 573247538 414389371 502216146 401159945 475433014 544617075 475670971 81691289 296917192 744070778 520200185 442665648 971984895 926210283 310688203 177742781 539825140 550025050 447152036 592121744 215969896 488818118 923639001 941750694 569158879 675720344 468684630 9501099 235396337 53260705 235625080 702156529 926965888 445981708 163648371 925317211 734133953 890582443 9556025 465739381 866006017 563263136 374389609 710316731 562735436 15448052 719528991 345619937 933211554 746356361 456984474 487794633 864964075 955365363 533652171 798504805 891517046 624348553 238511990 424622583 982751195 161312143 617139868 417158524 426986905 873410173 873724643 467032963 236574611 340021262 982423476 985565206 497900865 29700433 234110310 697129618 763362858 127477287 621368628 639395347 364224515 418655865 843857332 49562287 832245232 935681625 850882813 645272569 643228402 556345091 517324223 374729089 382920869 863256435 133301141 109989348 943160245 215960144 730338525 683457628 419631036 820699782 211815120 339310337 300268493 238206967 777142121 990183866 836645940 826143431 858394890 75486646 762068136 616144091 319170291 873281794 383821165 392640762 383740035 560459603 8786966 347386795 154856958 118281152 883466117 704950676 983652092 608043243 631143035 573786752 470479135 399041800 508008288 811427591 693747245 169883441 321271633 510778110 71179144 824599185 789542151 621390695 237731578 33792840 394430771 899736023 326940111 661053136 11562235 692091209 640432675 221177648 409155734 49510275 210338067 198752535 608934335 757653152 487129671 366918971 867094705 28082706 419461002 929918269 331653182 623323255 833744288 765168885 692482198 654729492 848614222 662534585 319637088 984239692 274612823 668540049 887888604 460469843 893850140 104522214 955986122 149677775 131319091 120991420 37725481 363046085 773445411 824412465 625815000 352263892 607853542 769858917 553700645 209511568 67759167 507442423 294461508 320371480 177261311 440801013 959768489 85314115 69518295 303117547 173142988 97616501 224364182 289636668 989818926 81921943 694150356 348053312 695238803 220185756 778925559 186079214 424585432 705588643 729057723 261936664 818987715 601937594 350621913 181523988 50088501 384254953 343668412 743692221 251926388 345008777 759026355 653133381 125371985 847341765 529767400 490497266 946133639 743270784 697221077 776092310 82137006 448257811 662643339 927828628 782675643 616088702 449404069 377851461 282598494 115017519 712794715 485807770 114881112 676093473 268234639 453572802 636611878 774867621 834245125 837134075 277078379 681309597 440356588 886610179 66560747 972411233 566399576 509185008 914419941 993144246 443479880 862717717 922856563 767094552 197084303 24508484 995605365 45204299 416579321 615555735 249475678 422748824 800716492 500624519 322554323 968476460 500770698 440797794 172549627 738197464 215305549 177488064 725265260 814488534 185344569 234676402 769538145 921297743 925605272 673324912 775994750 747988457 533823702 820160480 662203587 557185862 876565602 27146385 460407777 943701094 818718669 746248486 463809358 782908253 487682343 942294462 698144403 64867160 295511417 377218521 669909391 185239911 604789375 654033616 415106480 126569833 195092398 629264629 603353615 376806590 555674547 120433308 438501842 696129668 765837053 932423164 431673524 584048081 744454540 997664221 443315715 560370154 72965740 182312669 377647824 384380045 861702252 825056879 356499290 980818728 704537866 99704078 644492382 291612126 515682155 625114206 418369245 447917866 32060944 576717357 124108287 30376028 348254082 908706692 506811412 983919521 644306082 718490991 527021587 630121398 471542593 390446183 472423152 227944553 667610237 645350596 724652790 986325920 934122204 663069646 938369380 49446901 165254385 751406163 814205453 239354028 613908701 94163955 25760452 178722836 694909677 572782770 550264724 612153650 720909684 540039334 229141715 419650169 395840758 971266621 313523307 546687248 505306654 363418344 968334528 917601534 528762999 498296102 868894227 221982679 73568161 853387605 894735449 958657053 104463478 767728001 531649758 294825169 247490091 840200058 772287303 756541126 404396627 30431728 900273397 706878298 864297085 453209352 13566368 858150014 227852281 895666891 284771957 718467852 473470793 846732256 269399608 767365346 162619973 91840980 45024002 471359378 625860949 58078276 700183788 659271285 454899821 619867858 301422231 715669483 982865717 347394137 94670294 586798578 630303453 76512086 439865956 140158127 436418543 448641683 422092572 373467940 114043200 810762440 530073911 204525150 535292894 256541106 950453820 326183580 485392647 477160580 896367963 631707882 584456029 55883162 730622027 22582498 849999493 73326332 202120473 172757107 222601066 139853636 176831174 610670109 926091826 556687712 807864717 551446339 975416460 903861027 733743104 543277788 465027128 372115981 412780925 917745732 716432742 80537568 178334138 323859556 508488973 538835045 663389111 304240133 206887980 16818858 874478939 592704905 731449710 767467006 657696023 233456105 95679303 43671728 597340700 161185384 472239871 907506339 944395200 874000321 311342255 946537651 938599414 597791166 640498380 594459753 694844592 854232140 195825358 791607290 852637954 258053005 711684802 668792634 403092090 432037842 229615534 260574838 598775213 2305852 453032798 671062590 132082989 124007851 736147930 405999984 335583677 489643589 910811977 82520496 60036158 35411490 805339425 59007657 237486623 391011249 911898650 312238581 609116057 511298112 767500556 706797703 954885549 624902329 164970210 34902699 868905127 801710266 327661514 356896240 361201630 364775850 412482250 867928057 27613432 897444340 95786141 234693283 414854822 407997042 227263891 906471963 857282621 554581466 570678662 555320835 489719636 747463639 324786 829282993 912928028 472999232 797999975 628454870 364009323 842777960 748513050 238481107 324180369 718715660 139282763 33737306 847493076 316737933 534355955 659478374 494010724 126431728 146787057 458646121 308892185 293872965 982889642 67303589 99361614 22558532 882351353 71898225 125967510 641335334 412697950 581394206 838837551 296577784 262892905 959682904 529198133 964630396 623484765 845469670 28184418 319633255 732549170 676434804 666978142 514331371 510113724 6675526 206264368 429191554 865844221 403689261 57247955 573705530 696505982 523256210 170254136 589789260 446644694 694276397 962468092 445849977 99710013 665379167 789596973 634871703 747954215 130134628 702086238 11293786 323432715 205720214 424353015 634267659 45826576 577663127 729409740 847178595 992329975 458885554 962245184 491897531 828803641 100735623 660578798 104460562 649422816 865878602 8946885 458316095 354463873 530417324 324668386 667021671 786277415 817626343 551049777 273606977 795300638 611889021 577523992 991408785 809581762 450356052 628305209 226338390 590781051 738935163 594053795 100948375 341969802 503568888 159330544 66099502 914266752 238164971 420225012 966723690 756374416 79520358 277811255 522242915 366203079 89667487 20209363 758182110 521982229 685938397 200914445 876193808 95165604 348349494 551443436 394169269 261579160 50785394 991946994 515775461 635910008 186661645 451180414 408134637 31206412 996659340 782590392 299742533 587920554 54302995 59255835 998940086 262971154 774835419 916749836 467870946 10725461 957792288 789225126 254593526 237291304 770433886 130553957 873474789 661131284 131318715 720186923 601338937 680619875 486231169 443329028 508833399 152671579 360705526 544012413 47875322 42494178 991140478 170481103 62131987 746874181 909817937 907941638 111144233 606955069 30900351 241405133 356070125 336589779 147154641 337640753 608035139 147637329 348633682 554696906 5439183 562248231 411554371 402193762 942510557 405498824 421656157 657393488 920134716 456890703 435354725 253922124 230798160 148482015 988006159 204387845 573706562 985124215 101816240 442152517 600409532 398779865 812745974 108714985 950329908 613806499 454056580 493063794 96601153 250530680 875271997 62696555 103973650 927222642 863363795 607333399 823560782 652222791 227420160 777266876 130199694 890561179 139757647 572318037 941405113 837387090 235596141 530372492 961849138 495040636 282204566 343164218 377598460 153236744 776164081 976228465 634724963 745719327 259783830 955234531 460931361 829953780 151812417 653793416 726688305 721523461 751209275 57437986 796406725 392885689 179021399 374634369 512701454 589316358 719344660 211799005 1740565 134756623 349948724 250724435 744037692 202002744 859210742 232966577 336238004 689700516 176609878 191259509 685963872 816438615 65861348 272445645 998286465 113284147 419696016 363509158 29027847 925972540 218557461 744389016 475984849 51635264 529054161 78820724 7928785 774048193 498934318 608325257 422625474 180987747 153860214 443054892 595309896 597347539 214830286 433192459 209818160 733257215 230442688 906768689 612064853 258589115 410868635 61195625 666163796 930053563 99898987 512984216 796896081 107179592 942698274 293408844 776743593 875600023 519139540 897850585 665069030 805311033 786779213 941807624 900319921 946282099 829054141 148237198 446368260 468950762 831084467 839454914 502292105 383819067 80428122 396632863 619918179 74967063 822675432 290787451 951309335 820741991 786254236 886127036 849925858 718625802 29945460 679885053 285242507 248355701 676112314 656800199 150244541 618439736 104019159 261682140 474042859 318511999 520989948 585125970 467911416 268033929 42652084 590758322 916554406 688814097 381899751 376412996 878323497 197408040 8625958 298639877 876425706 387066842 240323614 747986769 512413406 739843797 630105098 403937176 40543178 724402704 181928046 123370264 780746731 47837268 239519799 506333784 293831914 208601114 401738094 363790172 698467292 584440285 595433313 464467807 237546924 131999644 930048371 676935285 933808598 399910634 329336629 912289276 814845178 270789352 131123780 171070380 317098988 982619533 641951181 965099452 42053171 148778337 931741140 656368956 630531778 543126261 880835136 568151073 585984895 240131712 729394911 689350200 238880120 869216997 199483388 678315818 4477954 377925365 377263766 911102189 362871913 560106550 819213721 692519634 464913565 518165436 128195276 444087775 112956725 812824970 208178178 194669098 336731518 916773533 545837296 181350043 102584265 520660292 950654144 341067256 389521238 132056140 620054043 7969783 772077243 408474060 569049798 932692267 438009727 114424565 90154740 609876042 581000043 312648012 417918154 749836336 214526576 354117455 752842013 458992811 448292061 228585053 516224979 393503485 384529142 727768933 49655763 92413789 888471845 839909224 95220180 136002791 24148359 962612068 571035321 674875050 202362688 794223731 25777518 565127357 121967057 275731903 966611803 57675786 389470919 639683727 938444379 901620692 107950415 587055080 156769669 452688343 718366392 487314221 990734175 620645522 259600860 62394447 364087498 164632464 509103 976632970 377658001 124338694 326909555 352599955 441684215 516534831 985056882 712659720 86486628 372350408 255102717 602474921 464483960 683114636 155080666 796823356 540523053 901867868 43340022 294125415 660036534 990065609 595430371 253630883 994372990 114120353 541618489 459089972 188524858 988815551 269834453 47997972 118808393 761074320 154121390 25184667 907505941 929511916 550487354 789985196 764365488 547200393 696967674 24629602 231783281 759573825 666098174 932409379 786687400 132967797 879172216 431250179 911937876 923216464 402409987 272991467 353369836 713859590 540482025 130796192 196588969 688416249 763160405 344684818 592293343 604362216 600691843 506926034 270882147 800616780 259340787 610913347 573845568 303484403 237725954 12048967 206849662 989462065 908287784 668526959 197214056 697492863 162050261 102347045 666140998 405712725 181234445 916376046 138171892 710273813 29217563 404443791 927374008 373452597 918900576 143112220 961647171 712106791 269952424 943347581 406674844 319050898 877074969 563129107 938944919 317349342 899662324 938219425 720415564 937518264 808051214 186555505 750718240 426226229 569858360 987500785 997926639 299825915 407011496 162556998 663829977 988494397 385573578 326345544 622243744 734973775 44357759 265330823 622124192 714199546 148606134 756244161 600574405 791156500 321604652 344855730 237680213 23782106 731979997 142034851 815551387 184995482 714831949 899422907 321571805 661824281 997050558 333180838 422716221 948865024 868811064 556159685 777232776 253191728 359676582 284949025 392044477 840149974 195281609 38809542 210832506 668730268 206043728 241580428 444406606 248295287 573127475 718191282 642646247 742891295 812161461 630604431 890925640 688667154 131708075 43640239 234791378 356427321 40685939 585479515 46153609 48728763 718128236 580780514 295749127 903702779 874126002 448790707 202608066 574692548 819641583 558152397 293938727 704928817 250872290 520690562 391234183 8237025 731845167 814614385 969846294 301063129 641446629 913086885 596578031 783687471 294492428 775191081 466963690 443657808 772399767 305669514 356958620 184054796 731638656 993164543 559997689 651199358 935603270 635924445 655971568 932701334 172533812 60614662 509980068 586290129 21755014 847817336 109414983 180350377 910778835 96354330 793304954 300355409 489661237 111737034 993620349 41672050 683528904 378210566 931237565 888829047 993445547 378877927 786928888 297445949 152808314 356301409 108314557 398794611 180946022 433322247 803850587 523884761 413241759 963707065 470514640 500803220 612703376 608832913 932332696 626152156 773474888 257196236 658782553 637929496 465370631 325140532 203269194 608099052 51547816 766816746 878374189 533918857 296558990 215254408 178868343 415276566 878919744 908963016 34692369 100368858 898006130 60833289 386282408 191071204 645437368 457798981 977161389 806739725 648061905 807197047 624223101 590666396 628635569 439426967 346097582 641718690 510227535 418140902 543983419 894372074 395573518 801423281 123519344 281122888 188818206 21574377 419199979 408279504 235580293 119278484 245900349 940177790 35347285 378478657 115693043 177866719 918337705 655213839 694793990 20713903 13683495 437517355 929038528 161047265 769175641 140473308 127093702 976165339 974036722 928698931 964997087 48017604 230555424 343525503 181292118 677348421 910611270 512895016 935122488 463203253 640232665 469584995 697894757 581495394 221667933 961452827 907356711 669370557 227578602 60115427 987800308 69672340 275568691 340637606 578592314 985583974 125171253 767872850 25989406 176585185 248059180 658585650 805287190 482064748 152982336 194569802 930755212 614124870 702988224 836179693 686852977 493913787 492600615 462528701 825329718 479608165 491662447 433577033 75073697 177568026 471746387 669511709 835688734 251969488 49024071 836115492 528162379 243131169 779286485 171479268 360315725 586800275 766883653 264397472 594782427 491683942 540028987 696471270 403149866 888845498 853746079 614585987 954078081 765538319 499494973 700538128 3147989 361729781 10077727 343935843 21389138 578476700 949873976 990298502 91809214 662760146 338351416 449130400 465414540 850682765 114676994 665501958 903963814 655266242 343656389 580880716 686640320 485017153 984750826 122035123 357954602 508249025 478205007 140209885 872270295 886038479 976606487 148444583 368163303 633927497 727519165 510013652 417389122 632977056 141790513 323914439 710850049 719090874 480558038 941520382 533817915 427908180 265545488 939759518 574818286 86983017 340052735 990885614 53085592 51857657 146606944 499530746 581844081 31983728 69265500 515825169 414620272 552436177 584332632 367754264 167241009 517415065 728141313 684090520 755067967 33646649 854687311 971098720 74833609 294602423 62468180 524651862 950522125 249071480 537967945 261358982 747458475 701135994 988746065 654984335 658414436 620478577 531943065 32138316 991816945 369798938 484020165 21403933 929501408 647353870 375055998 774294155 805596141 415383228 721706197 259662393 129790321 210798811 271443088 148178982 427185301 469602543 654625510 41149845 416001590 890184535 29890335 889186807 301093604 635102133 695706537 893587590 595964386 759517118 719166865 881635227 518843887 551654316 696934523 122704457 218143998 865344056 994847866 29715536 281178905 154050893 455662075 167010742 642614597 417764923 349838384 630024487 678121374 521489316 231020026 72338325 410451159 393942423 1062867 26880754 906937478 947273893 944499945 583438242 45424107 599454649 527902516 296471455 343918325 395479302 58018211 611749017 552465361 69490323 587151909 526868393 730727836 487635768 629118418 577970858 139433923 363782252 191550012 450738788 484649605 637490841 34198910 612837209 716178177 764645797 750465084 70085881 779310831 614032886 484132110 270172526 18675643 842522522 593684747 945803207 661668980 570235438 8881314 44306757 780922044 710040462 367380854 406639378 986794844 217249333 243875869 773823912 588387758 699628058 429348469 272494009 832219859 287418415 222895305 163413908 571479145 599426983 355286383 872071390 594379906 386039084 134439537 616129128 193800399 775563442 683196458 625690143 193216514 677876351 717045106 788779408 36113916 6455383 753517060 45055392 298457646 717523877 203722768 218663721 402737422 761015072 45352113 510027610 131712792 877789925 705484346 971658882 81242224 988332545 395189231 531439879 350084643 33214443 674068726 662591484 226322754 658166427 436450682 714340523 790252651 143242666 428536295 979620137 123579661 922848597 553115248 174965160 720730600 670200543 542390868 759580468 80239340 438968038 876149943 8638431 731025055 965119446 699984673 671338290 817843793 461474061 145313771 30114173 381365516 24640219 676368228 35813124 762201550 961818126 467840998 372336066 590782367 249744988 28545343 250740524 201815488 286628827 498497245 208358085 102329185 964505215 200760678 580027566 550487154 217031978 939182926 724757466 368413020 368925364 546410550 256238303 772478501 712884513 302347058 72017092 48959610 903576634 95150703 94556135 226951948 440226135 229556453 100802306 450138085 23910155 434045665 566083106 166109247 109729838 601993229 707379687 860475784 531686925 973971303 554407628 860414316 181357438 246648290 688120928 60370599 455775391 283208370 317192693 283645221 939545853 7568351 646855741 611732234 117003606 755671026 236834598 883491855 444990893 174265273 307706323 395629893 225387553 256116361 592746876 562664136 725310292 363492010 934810557 889335671 456235764 588614323 427857584 410387307 710623179 990753514 253364965 134674513 207654764 276523876 102979235 808325208 513102514 14707953 568963562 173706801 336404858 774459610 538791637 143574507 611163116 564355587 394593769 514589436 313975381 244161891 732021474 611129737 813046775 939474373 691513976 725079875 308460062 240135867 339038625 834271523 103790279 261374957 779473667 760398669 941289693 380429184 129640365 159098198 703071984 234904637 638909683 998396219 408595309 138486372 5192475 845737689 247596058 279840859 545797271 109660488 174197147 131795044 935677583 128613918 631879289 526238729 72426228 517688190 125213915 555835247 900729900 419006475 403396894 570119860 648731561 360705243 486280768 763042647 734406046 50361299 683873947 733400593 467134478 969207667 830667143 405678574 82630124 953452626 270414323 574364680 181861616 689311419 606236937 371924223 230993798 716596281 538079838 862513044 338455704 385257260 419293766 480999254 124339914 493011520 899586966 8214264 490295245 83161910 929406982 961917182 600165748 651458906 773373250 262930343 581989167 203736409 224315434 546817062 650405895 845780344 939180467 887657884 172040513 921530546 948754486 289281403 708653999 82230388 737464729 129431445 770561492 962285546 751852716 121438884 773448054 948041090 691243528 607720611 637231142 154020456 860548941 308690826 644361634 164369239 838141334 615497163 171960718 106647408 787478149 46538995 126706213 923036948 258630632 770285626 140863678 353426201 637929285 494129442 993299092 910440913 538263873 398517413 555334214 291799756 471756800 702645604 338603406 185407139 639761131 734935302 690911935 846489615 96650532 207510063 15960155 483152635 659686293 147678118 501091270 871513999 347892691 587718400 949636637 892443093 794678689 229730232 931101611 25431697 927618402 804030232 162398579 937045894 520276943 163780434 259085113 491890621 616085342 760647198 987481154 589736763 52157392 676926737 8981593 614522377 871750084 479479881 71542950 477790627 29265460 5586738 394229272 640157469 805928202 506462943 781150229 319751179 714121419 186385921 356699809 895027154 884773808 960408689 50462059 173883718 746539634 860574791 818579802 49581775 102875688 730280314 967131136 789590633 110469556 561841798 782925007 721174613 695955099 168294767 780892813 431488047 332347828 407103836 85736591 239437775 108425663 419537797 711464356 645321867 881382765 35304098 515826611 830371901 805892453 483745399 195854721 93398494 121015560 796176427 210688852 238292988 857863674 346808190 805074447 598125251 159960334 13089801 254089086 519800292 219021670 484249041 556597457 451358632 809013618 285665749 137933555 753037232 307043314 488201524 589941196 372578352 42993431 183249203 900633135 858563322 552442522 967908928 787864409 303360038 134342322 366630015 480052354 582165726 771828984 65185381 386073099 450908718 219564768 316088388 811307011 785905483 443016543 894573045 809821499 223931900 3690742 128106211 339483736 376723692 57794288 900093376 393852521 678055791 597347398 327527689 66745401 884247205 120942901 319118701 620640387 898816975 632790283 508596627 580637011 495690589 12727437 505775720 224260164 688960371 807184466 395828415 23609009 881667322 878238614 880275810 951962161 641945939 328524490 400335819 51358428 651567350 962191891 484926036 243420537 864978874 715438806 918321308 573634770 833549596 569644040 717117576 174990332 961558309 330252512 941078830 274673889 673639837 589385447 914489355 905824013 549205083 219457594 113742142 338549112 950692899 477048116 640463851 548112301 730506868 96356270 728527064 740716706 891327249 734972803 745496582 892337093 814688345 569557208 578812760 359964434 279772595 842265681 893119339 519735570 863599293 447747996 785442296 805969676 458019518 839480307 688735740 329763948 296934746 531422652 599259475 786518334 481320037 362256387 688175396 630368688 396288753 89131580 128198238 26297197 663281858 794418625 303932198 493992070 575973479 799709443 762039582 399612491 847756928 341999361 416707957 376625411 812942104 433203690 261375148 685942381 291431892 778663003 611945422 257587302 413953864 902738624 120495215 756373590 827908040 847052004 800436264 819806291 285160026 166053086 45371312 721393321 925104148 490839765 290950496 659975985 32087477 437794319 944649636 289691027 22957573 885122208 959007668 753267528 535854491 353399668 842348562 370335627 560802645 40930101 494032137 59151559 281611141 720908714 938645399 314873141 493449237 724450890 447722654 29643784 823407687 995773266 632803482 262829670 639346342 899554877 30994027 381778353 610352683 298846411 989757622 802573086 986734145 483529238 347345293 67745778 428199850 374201575 241148589 743907905 670528883 807248751 245589264 676438365 269142618 162305187 551388397 957209362 695369282 674312200 248313435 741534614 636046752 821649674 26022957 641990754 282704865 378413000 201616701 39894688 987099093 180936779 430429813 607928861 780177801 730469884 523597860 991206729 186888131 34428168 682846282 568588186 568210692 619585571 855494947 710350690 761054616 741566387 783689759 427101003 590934357 451117354 694395386 802824513 729660827 877377681 610802518 153556584 995536955 196269302 647050451 367095460 870376274 253542795 903406204 617680335 220959932 69136902 29021617 64569873 601155214 79587403 621317558 106077069 348093595 829200515 438672744 470424332 720923987 852531381 290483196 154423451 648861943 931464375 851853954 840927338 574141003 361816724 880082569 324683286 631763937 388633253 456350846 937337267 491929879 161040482 971909269 404370172 693166883 814659722 754524295 875740420 797649717 81564320 899031924 570148045 610996532 262941219 463159237 863281563 523350274 17962354 257991810 650468726 339995913 563402486 987635575 837697125 844904263 943501604 154763478 645356287 569423086 493551137 682158817 315087814 205094989 509997592 62778191 693179804 746670321 381220697 450275724 154263783 333540631 603741681 678927606 138611509 488967742 810708258 94154927 81697394 621865826 532924954 581275894 10279257 552819063 427732683 160919456 148927207 966115884 370692800 176823280 431918418 299734128 13777555 747688216 664483079 80356515 598379642 377195022 72012933 296847990 950007071 861673656 888643284 920935931 213098208 522104970 99889331 890827858 436793301 521495570 70685073 717897017 759171082 978831175 802919466 301600232 35491657 519612798 959310060 24382948 908812846 635011431 953203050 222108540 499427474 488950725 21666616 984435363 299727672 763585059 280800296 956552357 354072497 380719045 275158912 660370122 522598639 755560351 242885335 872679397 152033842 486117955 557411 453446601 526484180 613268012 633242697 896613953 252791488 452671930 524760324 725286167 679271148 570782539 888261075 445783848 972836345 773065661 110840612 393262014 26773918 169902597 464075164 305841673 375228554 143815206 630738259 934069656 40597620 618752253 965387752 844356031 488364827 10617343 198563318 756147814 180941464 901126323 106794132 652343339 357803820 715080900 955403801 366488032 88556209 82978472 253475518 981077191 995956786 755342987 347154756 453755304 247635987 100778405 904625802 637541730 261551855 249707093 375333469 526554630 570316411 980150496 852463551 693632261 105976474 1874596 4143734 729654306 983756419 785303708 804880942 814538420 765015798 291587995 78861527 409613576 403508502 966594254 559596945 336898552 402429000 685576278 292983575 595694737 18687247 428497140 688436334 119060138 1986716 851174603 995954603 123378724 729907623 594360240 269683198 135344683 172035380 147024630 111114450 385332044 106671399 558061889 580764154 447000926 966296955 296510664 861359632 98629433 251295108 531929032 43856649 277266146 859284926 52938645 722582934 13765640 732173261 962138437 742334304 773501013 697305195 220177203 781902175 262642135 818155850 786828191 520637313 304917652 385468254 721552874 192143536 397784252 893568147 337266776 844589947 687341367 570126726 610971662 383817665 464494464 740842801 443710304 244352735 838987797 280615533 785635106 795513249 38339727 465957374 414111014 714020434 207008885 769042114 237912830 285184979 793168279 655288273 151034578 566335299 955939357 429304481 487804871 437479355 654052960 808525064 552371801 182046785 786816865 217444246 431339357 370574878 873841826 839483103 436428199 214193923 365326279 622380930 755719552 616498213 274156716 167376846 511397147 865040582 724887421 47320534 523450366 602085990 64497322 921926638 685096178 44013882 727818700 681775995 905623416 290816826 563827952 547491828 223933598 455029886 897816391 364812793 365018595 389170647 17259281 571185747 929736374 995098534 940406309 991384958 737494870 320412200 916951306 678116493 624638483 329176613 21005673 596486200 887036006 807758216 215363924 916429178 13741160 620659586 61035011 430320755 13486081 882526579 519448728 776983479 263673328 233040149 590435333 510920096 300860877 946238584 994079784 155861557 299380297 254276645 619811308 372582583 879817279 282509499 783005976 425104491 517770728 17187899 641944713 935854323 169157792 296829071 596099474 63287640 193523963 730265602 449306332 148396578 935610936 860316979 952477866 822913879 21979581 61785641 356472895 469188111 173737247 83070007 24807238 858923715 700328440 272028109 775416300 579564336 850721789 428866326 430399519 934816031 439994797 512124957 271396285 978910496 261540663 995386703 960460652 400871680 52518215 254172561 913197991 500421228 407092892 326832568 484020688 756691430 248652715 338536209 559266755 586833680 796205568 198699603 346639265 212112101 307281565 907618171 513015102 83508294 245370688 757144542 530378002 700276044 575663490 882172364 413251360 672628992 970738934 238827308 876359602 420145040 228022428 719508764 657434539 135764711 491947437 71966988 267930167 161472730 975763101 823556461 376382832 206452743 175255248 338758152 496875261 265063024 274778950 727267869 995123076 360991046 339687421 562825670 431846386 140694592 154156194 558822874 575834242 99041492 352432565 4531305 218492568 941023529 838640855 51319564 672913336 683368863 972354939 553283050 765829122 348572388 487109897 670549491 222421316 203109907 255877627 224878873 398633997 952783605 690690038 908154391 546537275 134712160 716112045 697436566 775341258 192312217 986765229 697256846 667711559 435530567 261882816 772067240 318128535 965093257 846587394 214849330 337306837 149684171 136674132 776320971 472948010 805962788 953811582 146129931 760912780 795693958 99208213 542635247 164390757 746955918 131733651 155986738 324216338 919684931 4292375 89233804 541157052 952046160 141101173 402463232 277824604 753149729 423375043 885904618 140327304 213159506 886110497 327293234 965310835 875854096 772386335 935575342 229144282 675162999 231840812 990697032 797009358 889648970 12839902 906888763 755599033 691404472 563202819 573674996 553721047 457837714 865602680 127361608 828711692 954072592 483900302 715294266 38941319 847019217 730119319 533170342 561695981 928098452 330730977 497929905 318020580 908614480 214898465 286527035 883979121 207423720 717426614 197148984 88223269 42174759 780616400 896277559 375402231 719473078 739149454 994715754 269384464 314112055 694042765 97163514 213942459 350607665 144859700 816951616 684597610 233689311 338973817 126102711 614730051 858076351 161460913 894004889 633623575 125248288 967782032 234856166 133861186 813139201 941634923 181990021 642227141 810357170 385148308 802739524 805933123 511826441 677562336 756435561 332384532 374151546 197453313 894940940 402837609 822466897 390915914 283403456 444624536 736094232 980959619 908784494 129916555 802011512 597734655 190020008 528522155 700070692 746047382 175876357 898676327 971220150 511031386 476187956 117198448 234858993 921021913 353128729 795967689 498595222 272561575 649965469 436137846 656452573 256172469 707314793 538954792 936746620 844604986 829778458 861779960 60601055 486836306 227821312 481402145 611792003 958050224 940489741 147574830 465353826 599095276 286823403 697288113 174526891 504101883 602795321 357897814 743445399 99913914 805922373 142095862 143456463 431635674 384212335 647451115 7906650 641458371 582106767 812342620 155502676 361591134 578399295 737910338 285141197 583087292 505005493 777005737 924231123 395391584 414791763 342526206 398518927 239170685 847448414 191069535 924076915 556051853 764626138 769678339 337302290 896282829 206770140 945652738 313650079 949029324 27745836 326117490 895621974 256729768 639512399 339679854 101828885 335999153 10991161 515120646 790350714 763403640 257965835 404411062 60751892 267325109 745607983 677551712 385684319 316380345 784516564 474047767 28161527 62915973 289908350 187555322 18861869 719985655 827484444 252939960 843076097 595961972 327573685 827744447 106390607 604316907 479530321 668747253 530576335 979985072 26362729 866662154 179212320 571279570 626943862 311473781 81289073 185399051 672017691 951661811 284972745 460314602 447343170 56279762 478312270 580581779 555449684 789750009 524750957 247763339 789812946 11661063 849604122 464955549 904091606 719299982 777943772 226128686 819175791 800438048 503391720 689980808 585230062 16359207 739344238 214642909 295826550 466686724 662506753 608403880 808179982 268704891 844865480 492202978 808716325 835971613 21599555 469020018 319396901 834696445 173815423 267130823 717369834 987773718 672392255 197703577 83976466 999127117 532110897 250070734 418690104 555991310 116175803 647505525 195044879 75561673 298435991 942623229 743874006 347704541 581298741 81219184 382378257 385583448 762857707 814373282 518782632 120025192 182292776 142876043 960447130 912257821 39209804 909626210 548766656 340830816 478116732 207955975 944985456 359663358 561612532 272126368 660347623 328743568 450139273 434044985 52058103 669740843 139729010 377662772 58537936 386492084 530525326 210422187 729127911 773136908 783685430 266523643 711600885 724152698 431043125 909797361 509133461 277830940 260928668 573968183 367121420 903466092 460649580 148281615 50504637 368498609 590428513 826467819 653554287 226454012 514507374 567162214 81001482 980863259 675163671 781811244 737201179 337912746 143546575 867963709 792478554 97847667 38938590 110031370 444299822 34686431 303218417 388481289 259330426 855685381 844691159 568549911 348036880 950463893 482759479 472079939 964793118 533474298 770766240 8849143 838968482 132392908 721763624 693557075 899093583 770048408 591672180 654520527 736533073 468507828 703557303 325861779 503985696 226797553 983901784 441444585 225080615 927800108 643937972 981361260 494338653 620095839 844437613 658927885 729455561 903693318 147757774 319156442 720318892 710341093 465730662 70798249 931757067 762576850 219684463 67762676 468686044 748846857 671552163 622641114 369200711 499345042 490981910 36403539 300748445 667281329 435349336 836308943 336984724 59889971 234637498 174962627 597566626 909565287 43683063 698218094 215524228 374012665 677880999 209091815 565023376 96029011 353576802 742140878 770177943 521647713 415139868 370787025 351374152 110735333 987505179 958867938 146555401 562054817 637180512 862889144 121093229 610089614 5641106 473156485 23628762 518920480 201879418 739823373 391811222 698485200 540768956 160615718 652871816 277188390 670220712 99606484 733344465 199596421 94983198 71262811 874660660 430646635 552304674 674650244 392444621 251676968 226616132 306331075 974025596 602151694 921465566 984497374 937611396 452019970 372153465 418796817 970697925 503302893 587436211 507213692 779121171 621620909 536293817 509228998 657453338 794133207 502782429 247441442 689565217 243538606 145682410 355011724 76266340 103123269 115416799 6170108 120993739 448198988 822110488 32262066 932221590 276895788 735171308 106251139 652038736 601183978 466694830 327776562 376195785 275468539 505852521 682400496 707535352 35232162 378605373 275358327 562332273 68820254 531355745 669653405 247195937 209212406 917293861 68585698 418316137 806959157 844562316 605542699 744810788 81391964 92082730 333705860 71207851 55366338 759677947 251194668 202259264 408095929 538785858 160417333 365594173 437790071 666767602 241247918 791103056 846685419 987635106 253215886 847242883 344043372 418497601 783983566 730224632 744806987 42738311 922118019 872652115 468480616 492794624 596812187 17568787 210961560 785948595 624431971 537874686 325691151 188310056 446986566 739302837 547098858 92360028 497071139 760986590 745455818 680150294 573332256 232207493 26088584 109541002 683028741 879988779 513883310 116347621 874098596 278616850 532565679 223831614 405464326 349465214 290204825 170946606 471833645 744778672 882059288 628428336 943585878 873821201 110690352 936228707 170564674 526068064 311103064 692137839 296807269 899763502 528339754 581944539 690358324 866264541 287334010 28823467 843462147 34775946 171495310 972170346 672460900 857690027 566316247 884523373 630200170 418790437 436897321 455984052 404415649 142836077 915279476 229051053 811387748 831759117 538784544 948807954 95160727 787850752 767945794 567801871 660642813 935900935 263672372 223047436 960330265 954227134 414868448 284831499 328510485 731161010 190911142 55786353 505958796 999499337 861822415 91645652 245346783 316949311 795140776 164097333 676608112 281874374 573962409 990538351 257107896 535213732 159594148 930675069 942498027 77621520 77044896 271646575 330805386 105133620 17240940 57090743 336946829 389067468 128429918 560406217 978509951 538710184 896037089 440412512 943918369 56515969 96648911 478014086 583861993 80585595 145450026 234560073 135838416 200860872 374052176 972682670 980210636 4339205 303190017 425952894 581349799 561140077 140197338 272901734 594713924 856239895 746258746 87009827 955502682 247905605 479622449 532844624 211149332 885977324 399862900 678086521 434255433 427745157 995663077 90659920 298440877 636247101 297678014 197006886 329596583 400542497 569881058 733242544 367141227 184511679 279661738 139780776 20459955 898718230 379341772 337690715 501351503 798270098 847039707 999743360 407931767 665381001 640764628 603965056 895120711 847093040 552232708 73324864 770898160 774597593 110361083 969517149 824029299 23285813 136475238 12583765 916613812 913367974 301338592 414876342 101450218 439902107 136658810 161772891 996242575 440066936 325819044 308061272 877313889 427350669 303717210 238950992 123357032 978575149 283576785 645476315 144111275 389262374 631949229 757431300 785816472 878074538 980580234 836863075 465827072 47130341 262743776 382260940 75350719 547480715 721260970 634618562 899196979 997823742 489300804 659419770 399396982 846682878 251274984 3098449 44116052 155634148 439834920 662067577 952412215 925558336 36794612 830759019 108029647 890550656 445381433 504857051 634833568 452988254 656850312 136404015 255997140 598112952 271677317 884705891 666552748 404294737 400834039 505440176 695110057 414096116 515342352 508123187 647663391 650454626 130212277 80812793 130965546 428872689 990113320 799376950 270689301 899720017 681654929 930449131 393585093 20181526 864560080 481765025 891974960 489247560 473261724 47210041 589885955 314881115 119450359 269203402 396364669 354372925 152035306 160604321 366124126 107682289 301808733 686517539 2124384 480341851 106158360 638349102 258823300 630222429 75622111 346632665 246276375 645034286 647025078 313387012 104861815 161091883 235356283 654389181 77415514 303501147 175835663 729799986 374688960 798203504 958107542 216583420 879215397 874197628 369273706 722894339 535593936 272256839 898965535 444975728 552406248 462884016 63779764 689685649 401055478 410140359 30575181 566977706 734588026 962677249 835870024 594524208 439485110 958872460 206287851 436017561 943359820 352910563 61138122 852430928 897414839 67407493 744298194 605692781 684693091 415315011 785241838 539817449 763733333 174791368 873318209 254168537 546912414 887826591 7044933 772141450 448904434 422460859 304697447 653815834 665971271 492170341 115056722 988768450 242321010 844017886 824125660 813287868 98305729 4195954 56647809 393103201 595945102 531710238 862989215 895319710 168324097 261208539 690517614 338066936 827499969 11544592 597784022 954151671 339831186 711998476 141727392 777467289 434691495 769326999 743116470 664452922 217406756 284800003 750224544 579396255 764133148 987113665 52274684 943629528 109474742 405014965 206358373 74258115 249585791 196432976 395200284 651493883 68837137 95978471 565728054 565639799 337899867 967060948 508854425 347866944 733878830 196828389 834346666 346958526 912377816 816368167 42310537 14895029 649924496 900910495 2804600 56056456 388042538 442481085 864711403 864687327 33262207 24590528 688450371 636209319 79833803 611310255 200263873 271727373 316444554 716377731 468974516 240384718 363082686 294229477 817591090 398776770 383232184 794560077 839152185 126093685 926725008 583411724 389614499 150440192 774504161 911117945 147350263 59945630 569018475 825378541 923537762 293579801 834468856 912458375 130367999 108649975 845768031 779973849 579515712 309586561 304594129 566260570 339793968 694026684 81205031 188101369 42503214 835227590 118514487 302480948 292747581 168655648 715377129 274239077 725659590 215688992 573553371 635284585 710607701 541299062 105570625 483224827 132193422 182665351 93097758 292734132 583371164 88138552 674829716 727795980 948624286 658676229 447447748 535096421 410950820 683991168 342368679 634152229 857037433 43701393 750506351 326249554 818763993 264873082 519240745 27475758 348121231 985710716 945109629 649125979 676992420 885840587 499349682 340384431 810032968 333204745 65673746 801399591 367213588 20742838 981820292 763427350 686654738 80162026 593070791 709095265 774355929 645844785 71915590 376093375 561887394 475340405 424985380 605286070 908484649 575189136 707896700 646766935 138127108 106183436 112826955 521976024 474871011 688709720 861230539 82314086 650426062 778875406 389681742 953787395 178310162 631171038 165495771 990572345 818963859 716104609 272828116 118399847 422753485 193217610 37443202 205265050 152769440 31793803 633822016 739600116 204794386 780130413 631075395 746418745 901912378 683747720 229103513 389860991 153795877 398956317 476367827 90824530 619674044 275302049 696433686 104503688 481835533 776095432 539815882 387569943 523561028 162759943 855059641 40131695 766410399 245106550 948223784 77117296 360294010 505536679 96292479 264430018 590139124 446300928 421088469 906605648 147092768 322988408 516663401 391711342 742768822 310652399 250474662 905907528 986710540 556289983 881532578 638525515 606592668 440303449 486172861 630230913 401104925 747078405 827742432 104642214 701007604 134190244 846239032 227893013 93943316 396840081 222719605 990723093 785871229 211354101 162099733 745658093 941531899 647848462 966844025 220187757 263610502 702467709 826681153 194001638 344803356 676586790 898460298 560430582 650986858 656716898 422322277 511635505 629570459 276801323 930286105 24842476 721791217 497719705 415613233 136271887 824467471 990298634 416843958 736617303 585777919 16086574 521605348 864588958 691077825 375110852 964168944 119240310 299841489 7561905 975621529 691672962 972283781 314515699 945088213 320209654 357064922 238073712 652072549 93397164 619751879 78845672 400374090 316941283 969420590 509393319 555936186 708544988 646767841 326698407 177362712 548952859 660125925 624655109 968020393 730433558 939896280 221332709 909261400 848850129 956623506 930491127 274844473 408466359 552974603 668784229 352611571 641721333 219261687 969506603 661864282 387381013 792260401 618905969 69839671 171027015 870883345 420254224 358244438 602787062 490615967 925921691 969904223 502772519 954514944 231654880 68919426 434003361 827555399 281857875 314167179 969561233 144519639 549034518 734598310 513368237 761473950 490020579 712425224 911680215 237345474 116713711 266777226 387813362 564086590 348095267 259425019 263540958 888799818 391548145 40740430 960893155 177858694 314565022 67786800 851814256 954456761 359719827 353226726 682196562 836908330 832118546 526264946 986817842 168011062 100075427 327524717 831448769 818143198 772472846 744594201 482663976 164408919 543235782 57585337 103217066 982782248 321872886 904071175 548135562 264263484 86281607 297259704 966204152 524160793 991936917 104835294 339710773 976021278 466897992 357921445 458135319 221742815 513811163 230714867 277335435 96940319 858965584 427698206 735520950 622118930 275747148 398761809 676127195 679141467 669226337 937942869 895209163 627330182 370702605 37538456 388338224 807168745 108368486 554331973 301540937 399262030 664513240 609796861 172967368 440570694 19383803 315976121 832420628 991269660 953139769 196991463 419420484 293293681 874819632 408230895 992059680 189274339 558679178 187451370 852398242 786136613 197700907 641596589 198677969 439256106 984316452 462707699 204160540 532424440 10866491 218723472 567020570 781954195 785838310 61388785 635686525 71831759 974804987 418975537 923852057 704806022 223057913 548143009 829753540 330899600 720287505 590920432 890125184 40881478 541907145 64420607 12854353 981640767 741738701 548994332 802185732 299229120 287936668 740794794 926267755 161548018 288596915 674082213 161536902 328861847 914684395 854889128 181208804 882687303 473230205 376175512 309068320 143346255 465298775 218643981 288398177 15025686 177277608 668570949 466328935 256733035 590098822 123347815 666804353 204523572 186287237 241717101 463143570 91027001 405286737 456868339 619837324 723048811 532983252 283159929 875182914 204665548 923032234 115792030 760867016 958899579 622823041 508222570 227153091 467134281 525210989 655996195 717394376 821492882 230341234 838068329 97038542 575361075 783638343 686191773 122869924 92630046 676830162 558593996 32425074 735238442 993762299 714798125 86786667 559024993 968951605 853614938 401875632 87585748 305230408 53371421 345146432 489228181 351658137 79991265 464113540 773239209 639135173 187324644 212980012 938433500 510897640 911608145 816261191 390627002 525215004 770012173 860122803 724998855 996156724 219620076 248698156 882785349 395374618 507039432 357664995 624174911 143585266 818455863 123971242 203237107 263132315 840220595 675974176 461173848 451598868 659729436 489536367 758517088 54505186 305942446 354095219 191398175 384251550 274622021 752650904 595130690 192583847 143224052 896638323 974873643 148980125 251411748 149093136 278476761 786080030 4598134 220666941 701273073 248777331 609829824 393673653 420478257 549460911 210089735 820726631 132566810 919149123 880693054 892825231 909845173 254067642 811311385 861077203 151467345 758963654 413214906 68971841 704680953 397728467 516013397 869133922 918799806 884884342 730729889 641340434 962398809 123861843 315099833 402022100 879294020 712568294 214812106 894765415 293157682 973863862 266274923 713196425 819086763 372814493 191702957 239291116 41988818 647211812 657382455 601863450 604389873 594969258 324154973 293110978 436914887 331307333 540964800 664318548 154200367 155102712 818897794 853486836 915422916 483316728 418880921 650625710 310395067 40128465 898715438 789899946 440517189 170988787 428965453 825713298 84817982 146546174 170586558 101891731 600521875 756287212 359861600 327895108 110531576 341849143 513301445 472033179 696129247 780789363 99353204 773860668 770794227 961974981 924934570 588653564 620899820 711471744 406568907 136005375 526137431 973563350 389858787 55068425 965662938 14067577 291176631 7585833 657041907 990023540 395886232 22556565 453910972 656029237 660033183 689906800 641935555 163320547 860650861 24400771 22449955 69874457 142678564 602033134 318819241 748071650 43252376 923154640 131065963 677501478 997094150 823040006 848400867 921543093 205368657 593017924 225935644 357572296 595460770 313556136 910832737 987384830 60557142 902979855 131318287 415710708 390144573 43086888 214156450 523323178 345907989 875747664 236186658 538065672 520982963 429860508 629189527 637331604 482045186 186376692 866412515 984302977 83215325 709143712 630694145 471919278 582061593 397921410 971472960 794864893 709521356 654581951 624352342 783360124 689456160 637566874 628109965 449231359 273381396 481239305 149071043 834497972 870325770 252382992 900369919 871718395 234268683 394540357 425304064 400669861 817383365 553997191 728303324 435467509 851582601 997118363 179018677 76179940 522971393 655371128 83665913 334166150 876755586 116295825 779339022 430836404 17311048 766558720 786472405 462485936 745244562 949615517 25324238 898923870 869347500 807750 395937374 265861372 770738381 482776597 219635403 13526563 410009990 959879459 723049196 63440240 161628831 978960546 495030336 327417798 594036707 363023711 209524562 118302181 595017052 918999196 271932883 61669908 745142785 714024280 317471616 359191300 866969779 751120867 331659264 453113412 477124752 288019949 545748965 831902842 396210558 173169034 533752352 371701333 825554126 613197065 676153893 174398437 323190783 217650669 924100929 509964163 620814852 662874083 478195822 570416336 502899950 485094646 997738199 733056594 409862835 944885311 692732281 163096421 934512371 779767305 836492801 952591998 390719721 566171893 454533679 744437842 843005561 725279172 20229170 251712930 442947381 27053766 25801605 263516729 320953192 962554714 577593260 545141622 216796866 541559517 143529871 255572031 498754061 246882081 632450184 628357715 631255637 243643414 113981787 57532016 807736704 869734450 719932766 789886726 236545436 679174520 907969100 211350815 546592064 596829981 750249528 87661328 588041108 838802333 411947192 187649092 392493864 158552167 141924602 15789933 200460321 372292577 957035380 823955010 869614036 988836719 472926956 568409136 186275031 243826427 513909874 685409141 129120501 764093363 391849018 940153004 783009202 190478334 541309818 623042686 619300537 156704243 216643434 664946736 4925315 234662415 226100298 533367744 163263306 669602397 436415352 592234827 77211600 44644975 564252854 357002101 604089308 89886448 416296722 328845931 715132251 559804174 854394442 88351547 394675985 293229883 647657430 371959331 280826733 688125123 682258761 582425233 954035720 691556473 383834608 955553565 765299259 957848607 203075389 762461299 487963218 250563016 854590513 650618465 280862269 320898907 995806813 198805746 928354733 58814033 880790393 929183204 932610616 305077037 915837749 12078588 446705069 986968288 182032153 197195337 326568478 116874564 98018413 221119092 775869184 217277616 611156751 81005296 177297841 810681130 354938197 254847952 639694120 450798550 582670049 970971624 622442323 229426766 492737758 966465791 121214886 387708613 724260528 662800932 752097483 174206002 488900825 677193149 22124132 624275130 193420252 619306358 243759343 90977332 669190715 250127820 471945035 291048879 397281560 902943154 111775533 259702409 58393003 236271408 530063609 266415303 67480253 808316724 3829624 908209870 974664241 543717315 314029554 34833821 36871913 991280704 421684110 268754028 810284799 740996994 145564975 907896368 721415353 844225692 449944168 497810829 969727448 813186930 331368670 386551671 24409936 892802120 254976801 514320115 778350373 625488022 51457036 538943963 369633628 688264910 727272090 559923079 649281115 854085473 273986605 717914406 292466441 731555240 506073938 388018719 432066836 924195458 982613748 443831755 316635836 244640703 971474313 445144342 527907183 441380011 554740373 803421869 109041403 716112532 847447685 7610280 80883050 570962870 81193781 108384459 764287240 173174972 130517815 394441255 62713701 408258612 138909727 767194318 34840266 932821525 761794343 61146051 698160589 140093030 662904568 941588888 445186824 634673278 141390276 447425439 948943175 600593970 980752178 82377519 649002535 14658509 575267441 333346047 438135417 939355987 725607377 921944400 467041564 838661425 101117132 853137826 878023010 960989368 704563766 790167587 263015272 816371337 630291511 967535006 94538460 46377834 108779455 738132628 144067687 922051865 800237898 669343954 334939775 78026696 193620961 223370780 622717185 123104276 372540246 974893481 597369949 504639009 57354279 209342872 31536826 907376104 445387807 753173384 831795324 21662480 810504074 722700721 808428220 571801636 915999572 54509437 712700630 440374026 993813694 278371244 937499447 742027528 50918135 321077482 439046959 359867998 331984141 425184708 364872240 843795023 536056122 798359717 138352778 721283143 568481430 949800063 3781931 159982488 739763675 826115842 33500927 511138965 105789621 346697515 130251176 858926 772416014 875399992 766579268 948585554 813986507 677957153 925165884 671144297 591052217 36280586 48549065 802876979 844278068 54641465 538380316 912525404 76807543 167359090 791960325 949419643 377251101 376771947 172646803 630197223 922745524 742650525 2975431 592886984 194039860 872881017 998151163 701890636 858793794 159022463 857263153 460567658 332237960 631124030 522318281 972930827 712530697 853871712 801402115 273350177 757504333 973109620 751754385 700034285 286448505 532222020 908602814 954089870 498618980 639666567 537596792 995609646 317451954 571829650 752133508 590030414 211634958 829332430 26708336 695072095 208371929 970969159 439493048 647534854 558490515 653302649 677409865 224600450 62037800 101462856 356924341 698175215 735588151 387182666 305688725 820920750 557048377 477739645 986249268 671279512 863484158 431922628 692690086 629348246 779990110 794991681 400193367 600751514 340381425 5724171 570324873 72987424 107196555 215239077 495799689 143225486 468493917 150856562 601129377 311109209 7427635 349398459 398651843 168603289 975079193 266429120 567228791 445949007 89989174 796884575 773233135 354036316 689880891 961607992 974988771 418087651 231030577 534239885 552997801 809863198 622253745 178827861 796595938 304767493 981653506 660780390 574833703 155521025 782245959 394091580 913031543 610317904 655255338 545745308 690786385 531879932 881678179 849888573 107792960 937656805 376280389 829856870 254185911 430121473 721695643 39432443 972134629 78284033 530506892 762483583 357770823 922664611 399080561 353022542 746411199 659546340 503780758 590967046 561985604 509185020 953052803 836708516 147339342 963774614 179850429 224042870 645988404 607906800 117966108 765026202 82333084 302321553 650904107 593148650 118680245 279306172 990538596 358138068 658100134 666247817 405868763 295148091 407124771 75236108 224612465 388479556 444781703 620399358 709473629 401091180 425207138 679841797 387533850 559743573 805610453 576650590 558547445 448661006 343680470 641705376 102103838 932492624 701795681 393846675 298986623 324311472 337358399 537357695 285045519 700324877 631196702 134605630 590805481 394354451 759036617 633803590 401677111 255641458 592150463 98235017 179632478 249510161 394383352 195468138 371545549 239138992 502468637 988354382 563386172 854148783 367436900 202359025 235173200 538444126 448872014 43371123 143892242 568127586 185200394 642384733 829071426 462586123 992839894 241481029 860152305 513905094 519445795 887061410 236672998 262802 856130924 889451742 970656992 824157859 124799793 120770375 119692558 738066294 217412213 640993504 989974066 823683534 1272452 138286796 228179727 837978099 570550985 892212305 542064055 692059629 302879069 254263618 28879560 332864433 755325565 241129193 774592967 848697592 51109568 851963878 484754550 232940609 461868505 198542180 442416087 455366688 907390245 533440822 259447433 93564528 274675510 346311013 820387381 254918940 924905751 545576765 557686026 402116283 619337811 543785139 510215851 923759827 861706005 696111743 853499620 298254639 78731612 411629683 372081724 625915900 780930738 490151572 479462412 63431677 453787631 870169999 372531282 34030904 532257921 704141968 806883407 865140842 211077393 208599055 278416587 469371369 975588277 521121455 476168943 312690266 68646488 76300188 458990831 367266534 280580420 651860126 587249813 999778977 250153812 198690691 202352198 725750842 503247477 946918801 917980426 812831332 252981836 45377995 751657371 937793337 320461600 259539712 982352878 680901757 376869174 203096265 57802205 399048555 701084171 78520672 615051692 786732473 663726341 676383119 846462251 90276552 136822423 606655906 306742379 921619706 282541939 240103699 219881736 269527909 568828549 197246371 22503910 711848934 878364494 574820653 599901543 681046565 826992565 805026224 840921546 751770998 353150970 393314522 758018203 517665452 924418253 533400184 343082148 308820342 74409311 621416231 729858503 206989619 207678841 887623136 358140998 120219482 393276637 584878250 534750608 391793874 980968304 784730573 521957520 586096488 777967828 58224989 925725509 545845216 853117324 793010064 6515974 769216343 39228807 278130613 235526084 477268799 709141627 175466542 23216524 972863958 178031117 186774311 29210633 701080246 965687331 79005173 218711319 542700383 224586425 909727584 705458537 659647824 571846636 599134863 399994317 529836807 224337158 675849672 379347972 347653120 322514893 606224193 35783809 967658801 384331677 861798444 735158117 800826562 797920251 937143363 940504198 869834215 541061509 712550809 839563058 488661866 998517378 343950027 46728083 177211496 915054832 776034405 863196010 498859189 481107619 211069601 814195059 596087947 949118806 342264043 484595982 465318615 78804466 524506853 345849362 790194079 387355304 974846443 665829401 11430412 705602035 766456701 516804507 539765712 2528549 970997269 602241346 387646877 129201780 20839522 513735299 565271499 476116536 24705440 193387840 194949852 10683982 510666086 99684002 104783197 265598993 526518348 269393127 501450335 968067690 514700115 792603154 942938260 382886735 733636920 931952944 367561484 743103261 416440586 585560537 222733195 300769117 637008139 970094865 190922008 722599325 795961466 713022121 359196702 362065294 744005512 611864615 660675164 825488526 166388833 111580732 101175217 607269989 485692170 844505208 416555582 263175861 750046953 858642825 675325250 351438118 297517394 230588397 658683534 177878859 976076747 758600979 40839909 252457741 217933178 55719596 909178251 645355260 154205559 490240040 714668826 159431398 683406624 882790653 372225916 854698126 481444169 525814726 845449943 966579420 473523607 616195931 207474387 260410882 273130234 468414847 496650065 111787112 363029851 638451399 551941302 911170257 273092900 876409411 92154403 607719684 829887943 297787321 71372703 991801475 834066647 241613976 997242626 951619785 922875402 435922285 805060903 740886597 536781171 909387020 106015505 621159826 782091069 425229691 690535116 385424942 737788468 617234157 385725086 639461009 935857791 10978584 81204534 212058690 274130499 81776356 330298459 584457172 131334544 576083205 878007955 725058821 246015013 536878310 560816683 329295074 421171111 64694202 391243272 960795011 845310723 544482954 124844326 171951512 51586378 961778285 290837824 858621024 722837835 70363780 500551484 70281462 220035296 768001708 428128298 831520761 8221582 672533185 875700639 750888601 72778373 892233124 145202103 133292243 997088373 555415023 214593066 900885300 302421799 80353447 479650948 733378841 313363341 662670051 972843964 743509149 104376191 506638446 520989817 812499343 699008628 1835164 368714198 861128240 497404602 864739778 180015840 130877232 704936349 763545115 787988664 497645875 597388379 380651368 35312242 227240338 962234216 29943316 123006904 548823905 640402071 368118136 697822062 290876078 429511279 63897243 740734694 764469892 487625426 707307087 514918791 295737182 613425717 796554855 796907082 150974252 232844283 620136066 389991205 939243595 359312668 636274310 26556518 206701301 195232047 267355766 111504758 287094666 937834144 611211158 936553962 13743957 185823288 513732333 989405294 797644656 146427309 357374005 81000533 273729532 920637939 961255877 482972722 296992985 246506651 19236998 756554874 115163665 134173791 799819343 390448882 443203210 176917968 294531067 407672468 941071061 969460515 851550139 886800285 320862754 757738087 531812409 760586138 427707355 784569825 698630654 790113044 953149942 482825764 674544835 87044721 877771542 293336037 662674834 94837345 753307859 668526993 648199733 615742624 947407654 745681423 897956436 289923523 947737278 673837443 641463787 343580843 111363507 148677568 642463474 188885163 482011561 283735886 582683428 389954710 103962672 764889431 660497895 799293860 819397174 480050449 815643380 93088470 218922691 730369319 911513624 304826300 846902781 901061502 430360091 898485228 549575591 568706066 256678036 728709601 865386960 768660052 761885106 77267539 515408403 177138143 372473558 33588844 175764379 346986958 969539442 833863166 562717696 840513483 808440691 484590502 881513021 681201755 568496231 390128019 668554171 571681103 611032724 16124716 351121218 341865751 737019460 850223705 129057531 979407002 764187614 413052879 395516628 439963207 398170506 12642375 898780345 246676678 734684120 408301902 524909656 512820128 555226729 273627663 318894374 372777726 294035195 606137698 444102635 942903603 479898445 716306765 263328084 454587764 208006602 650843942 634242872 250709667 494116460 362717198 979555936 91381700 864893875 738365324 377301834 773410100 477689347 880822397 364365406 314229706 560178667 150600102 219401409 830684515 326489717 880987093 23733844 963935424 854366854 406262620 169108855 14828802 824030122 722454366 968323857 142475317 705348070 346453271 876455912 553708690 210775632 518718080 351397339 798771080 214539744 270976528 386210379 837967895 159126077 383963152 981642604 930902151 116317877 403246378 593476249 471170608 811208644 493981677 629287459 131378807 537254719 58762950 546546561 669477747 930054892 626936021 160334469 765560695 716603837 318099913 776983759 632386061 263288699 829401430 560025393 835062641 908414679 683598350 102147117 531201561 39918968 331845373 495984745 430147915 62133570 838969937 648891894 871940136 306170933 298272818 41448233 366938041 234810310 499634676 534072153 558528046 716832355 230115301 259531838 862877619 476223514 976817276 735234690 938114349 110333851 249552074 164592480 333102515 53785560 608743212 92104375 729202814 81828942 269094838 109778743 466663264 520860787 539998529 418126126 463601446 372181017 880775520 436910230 613240378 263412964 462281899 310436274 673756759 234562518 182987730 397993762 865464612 419668805 576699971 44668087 80037886 112809015 103972383 855239652 193585665 866461847 359196264 295598202 583990859 291514607 108776578 613964928 393828742 996898270 66230344 829210645 841929604 994921529 67306520 638052466 567436035 151869056 900475097 566155865 691719667 218611452 493719124 274572355 302360789 374330507 790850796 340034413 216882726 666795360 5746803 604307495 865409462 926225397 809295188 131524874 364221441 15159601 852628053 171812279 759165487 625334649 200769423 283662538 339375985 420293660 626644001 591035949 468598822 847449038 445724832 841002270 100090931 630112431 573365179 407707482 296004489 941583353 80802012 323560094 656799010 404324422 623965607 636985028 119512444 894376262 53028477 405787283 954067902 664976688 796027548 847115652 635392518 240230732 36840750 361268136 571017540 915255379 224167744 10105013 265980691 113929292 493100514 927590480 38366423 139892134 590580241 662726892 134918360 200675678 838011339 626511985 718571046 196021863 455806844 785018784 953895935 127597768 728685619 756577022 359510119 199692417 582518888 682788989 176087752 768503664 979836521 344753402 697474758 670614793 159181089 746135977 331172823 159621345 935100425 967236585 683139029 57961002 101434588 489887256 524414459 161787108 245919404 289832059 327808695 838069991 331827045 113096187 767286844 942441850 675238739 809622004 588282094 2168044 325091313 348532656 441566388 586078057 116881027 177940516 995502373 950147308 811281628 553512661 644155385 835790162 227019440 902810765 818485247 506374302 150485995 841444802 350471777 1719607 96823893 509349170 916879811 532580039 563911750 743919579 713075688 257782594 998273822 381374938 269513817 938722133 407625180 431860342 746636929 943076196 724360334 968686529 134565107 301005333 887029712 75600692 37755635 806193821 81150762 61712835 260046696 641703170 814187584 350795322 411477645 851356847 637053819 119441041 361114090 873903391 231330639 419604662 840514189 386212447 808420075 49364756 470731490 240082494 715163688 149264333 520136358 366306476 284318940 390939239 458407349 769572043 823810561 173342400 90530466 640672633 664758834 709736685 278934645 420703049 353410046 588570995 813248031 603539686 81354721 240634658 322823227 771520235 144317055 95737942 113891654 54117600 364488943 553780180 498361543 241057037 462756497 380385761 567094629 123040675 152495794 778629309 69067471 32919807 546133980 504545402 858908069 272284000 718038492 536539206 739935609 388669482 143777988 129028422 266420883 21519544 211978820 510831250 557890061 647515480 437234520 189506978 129805802 452045476 294727947 180839241 636956584 761882488 867629738 891359718 479938932 545441256 311531929 699043880 393482579 969539377 907312826 893417536 861377082 705646349 579126277 655147605 896371668 939730244 289292588 287496612 709217118 185304312 852932791 998791367 273936624 831363403 925610285 194347407 410627745 54784816 978983486 226074901 565985265 466977431 404218049 40917721 242453242 813372113 612335267 660175184 141279177 462272580 126509395 842784092 442713679 798135592 363099326 272508520 897614908 569553262 495438098 267636623 97639871 443040177 483435703 276066547 699894988 513143752 309449952 19874845 897353513 253213178 649346749 78118738 250360341 168204779 673142026 304423306 462465544 884816143 345077280 864860038 499286324 203153319 246539449 621743639 322381643 855301418 148485549 909675380 320449450 155091964 48744221 639394477 670654528 102940065 649728967 573947595 273194741 413936736 544564936 176965975 684964010 627578578 400716641 341542093 626104009 801112440 499752710 596551301 519877251 723338338 754063955 978192924 978710172 176699473 27487 786946575 455479894 39939008 249473510 34716062 557206542 49346821 542902599 65163730 144152413 921992094 389195761 892159788 589591401 938050675 413712925 521101516 65475486 794520343 319488491 466793508 568846939 681458816 746748139 726851739 472391802 439721785 165939034 481512209 569109736 899896520 391199282 486361419 555564064 980624726 302805247 11866270 388880290 547535859 738137713 106287774 135561911 432458781 337905876 930283833 704072666 180162625 926726880 205181035 575600120 765413056 994589611 160453976 45581891 43073125 326814116 558413836 649516467 541105275 454476256 494938198 653959432 155520399 151022125 878944248 248478256 407159178 280928659 885856038 932458854 22881113 601034018 185688415 402999625 866748539 787221093 519629470 311013934 767284934 353621678 434261609 668656951 218033294 551616884 31463828 881626115 469935062 419980468 876708488 245400598 391484965 501548033 282357065 65911298 715439348 780954667 441990392 228876855 36983746 531392840 218968118 95709149 663782765 114645501 181235855 775262848 69796510 521214110 199963709 957086117 41819481 142226146 161488980 838972692 7433822 291066508 165126041 803278115 233478622 849638839 873188513 372199216 671004093 230060721 646984186 360678106 781287982 774490794 267570326 515341401 234676376 796897198 54221085 948268879 736265482 423104974 515527376 442219480 592885906 991666032 702168945 227196584 687148477 185401837 185547231 66430205 9598605 375186629 205065042 204714349 442167888 465275971 980593585 342046879 423785523 269988446 259489098 400832366 737633463 217725411 292883905 980993012 986728829 288345982 931553362 913869070 111807292 892757611 788868002 393447202 958381325 550291262 710144349 875930194 954841136 239081346 22820825 812326860 142468529 839694551 547736754 531348406 423773779 506278148 413006533 165526182 348606700 569960400 473232058 525371313 105077524 56383593 385074538 938343116 436112079 168142872 44812940 110467230 867063017 488646176 334514557 402622785 258609414 713616671 419684083 926572416 362720587 163792457 264932870 971718978 723862545 754099535 501447627 982526867 659104034 805488361 196745321 127644108 884558153 625663547 500029768 150045184 873002738 11214874 13077129 32600413 980198891 821242511 588404781 17749266 961511035 535495234 861922488 204004837 505733162 392784937 859611232 931698954 890525192 728210100 773717017 603417929 891463671 157595765 271592147 649213266 864981475 294488691 692196547 305399437 601758113 649814617 46604587 932162781 968516121 218413935 31072443 318781662 233914775 194517661 901659289 45851284 599607592 17446004 781241400 509215319 651301533 472803633 168398024 205244392 335409981 608130086 330802382 13957533 262619854 770648672 486299235 138238907 947647811 208669574 637377851 290607116 889779798 118046105 731765694 252378861 256096675 357207404 344411804 241948961 926724307 893388165 241551640 980876906 183647794 834974286 135066104 288641240 953596510 219560984 775997203 916896411 946882414 148370096 583683575 396186255 955548356 830988618 798121821 513327466 851553323 405453633 789547043 584594220 775102604 315966119 633167821 975124749 466762303 737830494 750901282 598861095 771357036 770220639 165996014 832361660 305824435 991621044 404518879 742232397 265148164 482921520 533885926 994316555 687073374 660818739 918653742 250626748 239590521 408720467 416192583 915697442 322949778 646555715 254298310 918033723 449280628 285521497 514227254 594262151 547694961 938628410 938362852 479829028 308403592 620851485 272999200 903754557 107341115 69220630 694613039 745823802 257092851 386558298 925926235 418542175 688910919 496239152 183711693 58013803 941373469 824240754 271950028 852963201 39988374 824508825 444743300 453081999 574302037 310389114 458120002 482164816 108458121 211637538 742543937 46333278 219883280 290849021 561728871 556534798 679582723 352712335 315526351 857259986 553901656 505936028 952822301 638625911 811234576 774879054 850756626 529662236 585928363 396923081 674868027 216271876 898917688 491549559 233749518 811460262 167840599 965259054 357309219 977798556 148437050 125356916 199950059 817773531 130253125 506337127 247328754 694922518 524747449 842066865 916268739 967176093 751775771 520547090 95753636 926824689 68436634 940667057 720302678 865675396 526133331 278862620 149489692 712704679 587875704 143404310 244597554 98098500 897902053 13999003 735861570 954660010 244315562 42429416 895154628 204772277 300521840 533608645 151486197 147037779 564906487 998799468 582585560 173460188 738870608 806838502 881015850 971717286 726402248 335155505 236274577 973524116 426012709 600508142 854625943 11639593 664036459 852476058 726777828 271486562 962029494 771853058 925435200 530764089 63793577 86628379 166454010 584130429 355457483 774676193 58015481 830717945 817189062 924174584 605404963 495968740 341112871 822084617 879784294 520400138 341756141 411109878 982677362 934989722 576313949 204985069 269557850 170795839 384828538 826374638 726788102 957346357 445295057 763901129 718895559 655369425 244006019 553379196 491363147 853802446 827904162 319988341 483103430 445859849 403786006 491167686 56833197 15762159 833661191 941237681 198994036 774438634 953881243 494338261 701961989 173726607 993450604 743436575 228270945 608786362 402710467 610044907 442589648 835707716 609736729 866637841 689936877 450274300 520915716 9032688 157338931 304241704 761268864 825630422 545615124 961738298 228246896 228957519 592463094 63390258 169661230 440089222 293460987 384795259 199193035 102503404 216249079 424447070 218376367 972704639 899585285 931532657 49932700 936489000 788682530 389439067 663555702 762219577 888654847 351254761 30540650 277964784 136656564 270128081 196907089 66355486 680763355 893531170 419974089 655689105 230652711 161693548 284834126 260826605 908182675 453670603 757370572 988660364 363180871 730195667 592685853 813470780 105345116 454162520 78163447 952091575 386194089 849092727 9574618 609091719 209335174 572379144 226299121 137819360 500002111 218304955 683480355 971132143 919794267 499723090 65447426 60524353 496719571 449033681 928557753 467233781 59925249 859854071 697975464 471503299 513005108 909377353 455818965 397542913 925006509 97705331 629488999 397842393 891565379 230252815 836542441 354588826 280027293 11226092 244840382 112644533 428247399 636754681 392666110 513293858 17669015 431156163 829645958 449214327 27016617 576053754 765355883 217886588 76930461 339109554 224760154 385283528 273936453 836102653 429246818 698581423 323134685 921474528 134111560 881534159 833092673 610864227 374289734 93077289 442520275 370828094 81870094 625573156 282174247 346030049 280385506 401698715 654507690 397228877 133424159 31968374 324345810 665109666 250712718 565851383 419597536 144523853 87234021 128267198 619836034 383300060 649690032 373608321 740369552 980480324 358974631 799818271 578375743 577236361 866753941 732103289 94599195 102643168 808624323 840288313 751399697 165858073 824860718 721026592 88775189 986901622 845149346 714789072 33755980 926139075 374166255 496994711 874754978 791536405 244436949 560344352 197096377 814021296 511630190 872311435 900603498 226081393 918973119 47152773 353882910 859031473 503073732 363636940 257247718 599570669 602430505 467646265 470571196 692132022 905217097 256475668 604161562 492863125 661273629 227576091 499078035 719084360 270498447 499880002 456616723 757409999 331656488 631213108 356989593 391873712 904726876 56413057 923428877 601910281 944875261 225040325 463765394 516186281 394397691 20750160 388227546 275182595 570974035 869254605 207188352 484913946 878088921 510661824 556158947 568443672 183436803 391621928 463030642 417314369 597298993 17451133 673677585 791424100 16289586 892951336 173851556 638003331 734222702 761520557 518296402 97469400 399936525 143866412 465558768 590515978 880789101 762925813 756075418 961335607 526961775 394655980 937630052 358702436 657701634 63584173 457516675 656461376 956137738 760930055 129174200 869048409 542903326 46674728 540988411 109920719 113817478 87669488 310377910 106230717 491744775 713146924 325523959 677925223 821474818 689301142 774230226 832258090 787953117 193396370 435057206 267396044 813855111 685651998 932716911 274824356 906548214 70659727 67018634 595809762 251702179 756418302 154349572 685616812 236233284 508187085 375518667 456767571 374744010 771002032 308688038 15862654 42329047 17808849 921897309 521345147 806810542 197410663 213807556 208005008 231900448 669781794 938956426 431252998 822138854 736325329 376031460 158155027 680596145 864755369 744446752 6429987 888151639 414289739 516336852 565786832 385470973 476513103 849808529 431713062 858649405 35911971 392839192 64649719 355695027 976709489 284158746 687347260 731165109 23722404 171276006 56984917 456637029 338768701 822323547 845795588 166254536 779397405 607860752 178157837 603685166 66669845 225064654 103212998 13877817 84214549 732033592 666932024 29794641 790597529 973140441 58946418 587146076 955830683 843265767 567761586 277664262 562852181 812274080 614128538 823629866 920311103 408081871 990815767 612430790 961749688 330406148 661864348 965711012 149664348 26910975 813013430 578432180 340075526 795264707 804053584 316235994 321018220 347727137 169464813 498012167 265033583 564539483 526495222 198077702 177097419 697269197 577907250 243051353 460582654 266764527 563096928 475024844 476299409 869658849 320276786 456595145 540998986 839179698 723847122 275267847 796041746 95406672 81528534 814146120 970112929 765924664 200148488 884434334 293577721 961953993 715406023 961040818 245285131 715334673 215680633 305686721 3244189 114943386 97509265 159378102 742091219 767590896 461835071 991963679 193203045 878955654 417629556 919149505 411314162 394059798 339100487 586301201 372214729 981655452 376735300 844597064 537820311 710888763 446007581 186448323 415680247 992709957 757986184 777125848 594317929 221753197 182052865 390734624 612515924 942423907 443754204 137649711 255603825 881640871 67474328 603179422 150917917 333024060 774183231 137205489 786185290 469566977 511367363 773694922 264737169 327670531 964725249 882401017 228668290 571641643 737866158 473237517 596138824 426122692 368284441 689879330 524557098 636074096 535764660 487146431 731286002 985954555 138656407 839715935 616951333 68762014 832409551 63250659 89371827 787510619 981418066 867403145 948015928 798096327 560497357 378271140 559561234 281380774 708785647 317362344 357781136 937399349 471573964 38513054 98646843 692504175 284264779 48189303 843544988 941422324 80963734 129509439 290575176 435653683 406408012 150533187 233531422 21426947 530059388 175708186 925450145 654250004 792258869 539044662 793725285 584606196 739941310 607226284 200200694 772780958 621030046 454872818 417545049 490052127 893602598 900686122 422213040 590836426 106853213 187899481 97678464 737269860 501155239 555124956 49430656 952682228 518067016 957308220 13157759 986292935 209273231 12134679 383455782 295497754 522102705 443697087 735063272 769956322 61875415 664996103 992287486 764265024 833089728 324766581 329807736 152547168 935236139 779733931 712625150 351318585 853931619 400963296 433813938 27258949 19640144 807343792 176662309 312784842 601688137 880863362 430102031 940265120 268366725 780469356 627091917 516858493 360899735 659982701 368651455 205165386 733773914 114628787 941158447 233169424 853694049 510123841 636377038 42895930 89664771 803390397 433741004 170420878 604393492 675754315 30156567 37095472 918744636 285053347 859017215 926279688 643044900 8949859 384117160 312932292 578092116 426991747 352726357 216793827 109071886 709891900 772493900 299777644 925818398 676122329 337637205 823955545 388699497 989781583 887126318 275559546 198734054 213912408 574942971 145548414 357139516 110907887 567931007 718123267 270399353 459299801 564300941 631724736 959426251 875047293 880529475 542550649 102875022 535216509 702838547 977023086 883931057 628292199 366705306 321137051 831380070 586869614 902914317 298055847 80328850 622289396 339162980 628174813 589352691 956926649 945045061 491657412 364088942 172501402 742436698 140961584 437358563 436268635 676930941 856378844 930013430 884298882 85767862 688083837 484134631 157308885 336740842 883784969 829022565 327091473 554398743 40736074 767942825 240041415 607434382 24388713 235072007 961539657 82922198 931550761 627155184 70851667 393866008 339194962 753798717 540524517 675839853 3189500 940200815 374243503 651961014 976319243 986649435 46896183 136594838 362113686 902973313 658934840 724791689 461107042 977969969 198909827 285869025 586277238 896631803 568587474 961079860 410265895 241692404 501585879 648510524 451574683 113635040 727122695 749378348 408855931 884556107 381118434 93281419 870623578 677319548 551452456 878809780 232765212 494116106 340097307 766270242 304757973 148587529 695649136 406779104 242971642 411196586 423135415 868416353 832545161 244197991 522502680 743056064 721821291 346070814 612628604 325327288 138560959 634453164 679926106 377329377 647206094 519853116 924196160 555441442 84365077 252404665 124140635 427581957 793111605 257560205 954483546 220026625 845308084 670938322 510434879 128754842 172311373 168979686 678671938 729893841 182038730 426307760 841157298 559105127 662375385 313473550 214793671 482942851 481377753 107343713 306304855 128534982 291095197 581485512 809112878 562571438 460113826 237518298 430129313 335557210 575865785 976175273 825471790 48724671 154176489 133633814 299110167 895401117 520137877 938122932 653126447 60965614 957789495 753624917 663874288 191270944 835563407 69245546 677456808 673321944 758360878 210690458 522971059 157379367 472294236 96901724 54284569 618169520 311836235 989940294 972156710 360568810 881486734 185958369 473671778 745120569 116021514 880298034 979583308 216641927 792529193 25478511 50195328 115472036 817278130 168909158 177917806 357710962 769349708 81674352 138898390 165361585 968072459 449793699 403695986 342958836 35298509 319538682 329705213 98428208 509056852 851364325 830119341 773653099 226731673 252788998 351884391 154663337 693878911 83795196 111660060 992325443 855509118 10469609 169445408 572574765 66519561 743315388 58174888 371347061 580691957 613131 184817357 833996663 344910145 526576803 72087104 913011271 998527694 717803522 175284324 824663006 415448178 925181257 704971443 370809622 995059226 795105250 946708972 423423449 80816493 66821973 593931147 19678839 712486207 202118260 734024128 966768096 816373904 21211852 796812987 646433919 745968618 307802325 859310755 301598762 659124376 713602703 200818118 287977515 374351588 421812645 125423382 962125849 987200119 515525649 15655011 721839438 530930563 383711900 218177596 856231168 237689026 600965742 683539475 347329479 431278342 530246965 161375533 975873439 622534670 928712673 121084691 247985702 225463261 994530208 646871258 434074554 985053514 391613529 386575040 802945707 99041653 971799250 319100839 56864006 579784879 144884279 314687127 188327304 586582332 64780683 478151548 558557286 612330149 797660908 337127084 873053002 776672734 562843368 299579697 384169736 36451053 668559232 119640764 714319843 406899068 58210527 329372291 270108084 419557904 389750370 35547842 541900996 719616053 526371617 904958433 374557169 738672891 56836840 501638241 394529942 81254168 489841793 619980338 848925811 634398322 65136760 184378647 879074044 304302298 176332333 957487412 264763690 380934289 593887475 790168914 862723419 949178977 610402073 584131284 784433228 296255555 482296118 811195030 10509840 524427740 440680678 84536068 55053253 574366547 84253427 602704958 132040705 226583677 85990937 345006926 613858208 910795437 470223047 556689511 450860095 940347252 788405148 313847999 825506563 312557319 989954410 419262132 869897571 443579215 544827180 20701809 22817910 388777802 90528800 645776411 629980947 487509618 836312451 440277590 960107646 478950928 413461379 625724630 567579379 747619767 46615867 664428885 663969196 947819260 926819648 870430835 275396471 754031802 778206248 42886580 738252569 380847531 50125049 776007440 377898473 984827895 759985443 139716500 66326464 965592909 185512426 29437950 958044766 567242679 949485317 297460100 645869684 81088409 751108673 283136516 23892466 504239468 478044601 111200110 588973411 215933383 819364321 136945271 990941019 940314871 245358735 715815490 632776906 479853314 96306811 496260963 969669030 58477441 756753410 347608894 933552225 731032349 828808328 944461636 325841880 749215293 951956221 972286266 674771470 392448732 249171000 702595404 783075711 856126006 560430916 482348633 643500780 732477632 951702539 450144910 29794344 408805646 832875819 226309116 732631547 344626428 362878463 657979884 773642059 751371066 526327833 104898133 147115012 746988220 458209906 45544227 457626827 507584004 899882280 922989795 335789022 533926725 804380533 519638434 74774264 920094041 482979289 173831812 58660023 620077130 138674894 675365469 118452788 488095275 772438476 567673204 126537242 108462549 441811315 621628358 209193222 22695026 657270217 38165460 6870110 839563767 928237792 795527376 221769352 972056478 396543976 410607251 719194801 455525315 535241727 652356025 110198854 118731085 361495691 61160117 209711394 886919627 540130434 253179816 408371265 942589137 93443302 45764057 167156981 673772317 307764520 122312535 539251632 52579901 129925984 814919935 950855467 182184777 133198043 40181065 825318358 760495863 470933679 726880575 465531996 553505319 232303959 747103704 863166946 622152818 495722995 611806977 67727294 616005536 267779226 442051100 902377440 484937047 557086608 571962887 761235346 764266891 358444123 771266528 696134429 240167701 765647472 221183822 395700232 715412356 661479506 745416483 35248016 110824889 895709673 998411784 730506173 902383129 499912279 822342068 118959816 28336458 422559338 191273507 591483387 274637810 186607085 320363783 915001780 153440202 620379089 337602722 210403250 667895807 197739667 902659898 519189344 92847681 999407456 473086725 316336199 804365374 221170923 841200035 642282364 308266203 261413787 568127997 560588878 311414668 957124053 765132559 101472323 65899250 564783708 573794570 641267098 575392527 25019460 470818352 800770066 578475921 473857930 675019379 416722193 300113308 539428615 895327856 309677112 423537105 53596871 446512444 869338586 925016742 624765484 270681929 230037665 586904425 426483505 170622172 884495199 698406441 843572489 156926565 616447712 689766288 720301552 33034638 184057838 432679149 901295181 410018816 472003782 34072787 686647628 23655302 233962779 799031655 665692207 127645639 459250280 899574406 835411212 172153880 564638878 94733737 114398709 722633853 527584801 476324698 360896452 521770819 347129355 479865579 206872294 298184571 99893835 576118553 866123365 79802115 609868729 820508017 124339303 503548447 667620128 233630165 99682890 391822421 648791046 340708824 380646057 452166872 367752279 790249791 275620340 801171797 347729659 589838350 388088548 229353229 774947120 420323336 789822692 347227123 260500161 184020989 606599150 171867370 817252968 726024749 962444382 505292092 382533765 852526491 818635689 15181349 218559631 527739906 356481055 652079785 887749645 408124433 772283697 707974908 76176554 58222281 964723349 537529917 232228805 599471943 23802675 231786956 485354663 717099567 336396284 69292608 503608265 89562655 674398817 864350693 609056670 149213148 589225154 880735804 589050848 822564584 493780499 631450720 979574111 796559844 892719673 955357056 74808907 653548936 863190344 271689910 73781633 50041325 859117201 469537091 975413451 359730927 799780682 126132376 194539255 623558578 437044029 117989723 457047271 260954784 14952319 808562460 698106892 171630537 63936324 662324579 478542142 627690138 489162128 650847824 583347794 218951390 463099295 141437470 681078559 289416643 747545344 702865196 611316137 642326323 79112804 142736811 115746578 145199017 772895674 33966147 21048300 250003306 547663741 480211821 215334773 33229621 341813561 821625156 239074120 478190969 977853578 374863828 467274012 485258187 478079184 434505900 807605647 634669675 775150597 245274025 708011435 11564351 786371508 248978304 137843790 562010577 420590476 331484121 239719310 307672033 635807246 125263851 589416318 771581874 634711615 783939950 967336811 551381531 146087235 149254355 825080122 338424404 379849895 982907735 63373285 671344171 906492256 510622988 778080851 214465776 348759153 94841108 200519131 240987039 215730192 376925220 217163640 570664398 35015948 519913674 379116302 341891569 731200320 276253332 641492125 567369827 955392588 280770104 432236080 646011723 131398244 635651806 262030307 624683294 427739632 394904134 959970117 492498913 926717755 746471740 221435867 225217848 825595990 423510455 635245849 812664438 928534494 391691458 21232202 729336126 365298350 779771160 476174055 408478108 380301337 135434251 116786780 248244909 813395201 86255815 115433183 741632828 311980769 13865175 52810043 214676065 543684465 739757784 73415059 427025296 734261514 754554145 803056563 932370822 326014387 103602055 640774153 60406723 865101994 188302274 729765284 364942980 512645146 207420746 673902622 374957264 373375213 238575194 376618775 535542750 747947807 26219521 265845552 86327768 923949824 800862011 421141079 463260075 520480173 730204617 484920342 972081663 220722954 969124315 891176726 872184801 448293520 488246910 632269197 254624150 44073556 221071998 740890353 127767923 477950093 568734470 753889953 735457111 197898245 945363798 506443036 212555185 370950868 390756943 31441461 609721044 332682695 179761250 328351635 384078837 432719024 157469551 272261058 690239880 434655441 186173957 958941502 667854582 800143440 126999888 915418628 552833261 790670409 82192295 128599744 38532799 617525234 611186072 845096290 268602062 212367544 158372455 293958934 440087986 746145105 256423850 663068053 946773345 898597096 448381148 643858245 772455205 933759274 534011774 980099422 862617410 5363999 829733711 544379189 506323280 880922184 32309378 57112108 226427281 284101456 169860696 220817545 985619765 94574645 819730343 139747932 987284749 901035477 814908446 747958961 378169680 398559624 980105417 36664033 234493192 940800943 840284051 104112665 690683459 937049140 862958595 413977582 796848188 792513876 112645866 515462459 223955362 951884365 531173689 98363202 478320763 197392562 549090340 598803546 964836408 947972545 887229194 973991519 738143310 26417746 504778955 580807462 867331 600666315 7998568 603981003 89849863 254834174 418268420 153795740 69672775 419488086 553622631 188565717 235546800 258831993 320775890 801227393 231277990 894803422 753633696 428651506 160496344 961652070 196658547 649934529 366368583 224257598 367796299 985362323 430223842 382268423 382813259 315177853 667244384 777238416 156564342 346638877 601622303 200195213 427600941 356731514 32046204 26359806 646584569 631137204 53044427 259817976 609766583 655104462 322418897 582541961 618859300 936904015 125606052 805386123 908552341 820153218 446661525 646146046 157099302 885442399 943737253 302138278 786507984 290693089 975158081 243009229 764831413 759760320 356239719 783008579 614486412 508588703 113535641 909008692 51472858 682488050 28813581 174009691 958274014 684930815 281165229 586598350 29793421 554990029 179743437 425586287 343060395 806204971 349117873 302945171 182498487 451347127 456718987 179542540 766529327 728797406 936175872 16305018 499546979 765936864 205729748 38631307 858211598 28533133 986581314 815479588 294615768 544955351 613596211 372005840 621074088 21669128 766830120 641646584 267474323 284931793 13370390 58593150 998372349 705914471 356846586 993875932 239045116 452118219 552467159 428324000 583102497 270928667 695790396 870082482 988554144 298313640 816436777 390877341 72903581 650566822 612914255 405596043 410568644 417029429 48801200 963733398 744591531 410218753 48118890 230280302 901329698 503972356 30721817 977756510 897237939 493736385 399631207 839190095 747526624 756344000 585414030 744585333 275591790 997604636 123807040 331690382 175337387 895097171 89639020 702699834 182954150 694440469 825995095 209408907 685953859 724667620 955712339 539869876 813695335 448374338 425629125 376937680 489813958 72385799 151265432 652856027 262518897 39447695 57665859 560373961 670468610 11888794 666560003 963648341 150288055 910444524 703518716 748461748 715315108 529335710 185558674 996297029 123784205 467134146 587604889 164535990 441154091 684321906 630035624 995490256 552656604 376142034 333019600 656311021 51574811 310593147 174809358 648453963 84870804 67977930 337590473 397507086 430563487 576198328 932589161 142546017 946920735 298559862 782920786 859584109 405689575 532440662 826532876 28758141 534182013 211449104 581699930 323074288 123136879 607972982 571957019 789998313 424922652 537917414 111035084 413173837 322805252 666852609 419009974 902378488 583488815 58418183 52801940 235745803 776244178 255353563 248329270 859179145 35633462 769865869 632396042 77668979 524136263 278045653 287283195 236744285 579224097 39954000 379419638 355698439 607908785 691650495 24614693 855364704 175773974 399152051 581725294 702154710 466805707 630633421 986612766 134191836 70860512 520278940 867390862 9725902 767015676 72134804 962199709 130642989 327436846 666053944 547798278 919543474 556629320 296129108 916847674 932950244 466300872 711847723 595614035 406500453 385949698 812956854 681987548 469195936 435804945 949813747 575818024 638099486 276737682 834925605 354877642 656511399 608731104 254196578 116491169 706941163 737999974 620901829 556817818 41080057 624050575 406354137 523901401 440680768 272863739 290614208 947206432 642206440 668276150 24354077 259060186 491618491 697840310 444473218 875278611 30471590 527239815 737092916 226521499 982148485 31811732 145006234 780088826 541095351 270963881 417924133 684290577 472449624 549240901 807936148 306472157 95192016 844661877 999347396 550886170 954008754 555690038 751394949 638058453 401003534 317844568 700981098 771291 689203820 669773666 634152247 651425513 977608187 559799710 699167748 32876611 402745364 765973805 316442730 917936792 158225824 168822969 183527118 646970691 946063316 710202390 310454796 259643125 689603542 345552336 511283116 27995908 975979573 496959516 559167449 262156435 340762934 76500346 293592028 345647833 181707953 557078545 677200353 69499956 259487864 371114597 140875689 466089843 826051226 782617617 225551140 705764775 810041345 855998567 467315578 975465764 432603543 865616827 578163926 605812974 249389274 692301662 551839476 112277221 460999274 179403937 356957486 652978534 849096533 36859700 249448092 262754827 723597667 906128917 852204418 290764674 358581678 992949090 108692179 673307006 427294739 894151409 210740289 291910859 805614067 536795889 855386909 590204082 418140321 386206583 564317186 113779521 381258673 343750320 924987443 75042149 540075620 264432462 356426618 916726738 975644382 48393416 459519407 877358877 528813558 547054412 717587377 343585503 256661044 971530169 152112267 505626766 792229082 255787349 231053586 77492482 153296261 42213044 733203555 345357369 67725683 394333125 296407208 647135855 719001596 167106018 287900466 43571841 856545301 137563206 299600353 983835241 97338647 784020494 395953177 915164874 35543972 333833832 549471955 626698667 789007814 768724397 648792837 132388991 614163222 746042073 346833223 539346665 26957046 852262071 455702547 732604926 613259241 220900203 321954404 381029636 550919624 701704048 379106686 336776301 409973180 914485056 680620242 958031064 547169913 488793119 855985749 545261319 133630728 272949096 221986210 197469359 733701836 472107571 931748688 98906883 526468586 946587617 942357008 732938067 101013867 494497721 222041940 397554704 170681714 501450541 980529645 576606421 762578469 218405541 988573772 554593405 606252858 544746536 98988850 239304740 620197254 845015860 141710480 873198853 752916123 899203759 284654509 942014096 747272425 182774755 515337478 211298564 230549120 19274584 602287596 350299790 844621554 33761366 495043883 770854939 444431864 473381773 783983896 273685650 290320223 549903719 787664108 593581735 779309982 820358511 931566839 662154193 752378349 702782554 425595614 55257447 869335874 694787786 282670582 301683604 767793600 200558968 512958469 111759096 484805007 43567177 109968771 278387425 162531314 569607211 918214571 653892888 995513534 447309722 460938291 625837682 599544158 491029391 855864794 404919871 928706674 230630429 575222649 418217861 246811803 925213942 34259644 355588829 578298985 145157665 181074462 102747703 50533214 396153859 328756840 219752352 714892576 891096151 714951323 410748367 864960517 519094833 30629528 312055084 252870870 676185872 536585820 685875550 219561901 236664790 722823177 562434581 86288823 554490699 567619403 936830725 393653449 865380382 265291039 247357152 540276757 110277742 752505120 225188343 819276543 205561628 203269999 693237596 437440933 542444130 41418242 477184788 581171713 32134912 23430562 521192337 366951821 894192878 185095272 541633720 487450038 549765249 437808197 94878804 272159689 746069082 203007999 94646496 261527874 581168712 93012026 442994039 957984994 723754547 226938885 602382876 47262448 841640043 728216542 714768127 758398460 845689331 366368737 150300984 285677853 393983533 515759659 923178145 634995388 989760098 835409239 513645154 284394124 701323842 465277641 527910207 254461043 658232274 336622827 560132049 969807019 527442262 632340508 174735020 59189191 904958632 280471234 253942499 447038713 722738545 441401236 463430194 297696591 295027464 142774941 215934099 238175071 509983067 346911592 11756219 873519719 123560901 898056370 681424774 436174864 945563966 34025592 665490209 632050368 471214065 567404655 72756075 886146518 483374372 472067196 468310158 771946058 404347396 741506367 238596859 655406567 229212777 880955949 665984245 716777777 859215829 296357437 127987005 860352708 150284787 717112612 224947803 641342816 785791984 564305478 32399245 268361126 814970880 763817324 136784917 125737013 961955207 422166877 994678996 669016311 730570522 230878297 265661409 537278672 266873595 882705518 468379994 884321055 879075305 521085018 805038066 207428291 23588792 250856930 793923313 635328501 454310741 565105875 46345951 361060036 565697155 615066691 22450449 406302481 119356987 269586874 574873724 261934798 783182721 237899856 204808143 447952748 996239466 572190331 795107204 44259754 143483167 433559459 874395212 955431346 588647605 999207972 814422662 229739405 524083328 386544623 429518726 613472071 828271677 945779204 83058995 959608601 308818200 413635979 592831212 259052344 742302363 620523843 349331290 861417434 948805758 391715715 496194544 366095883 555273242 219773463 715056584 606777625 123923030 347995500 257868846 251953456 46673126 155925549 215085356 385163552 290785874 398248686 344109566 314005099 191617497 109482401 901335675 672741273 852405860 928112263 872334506 522468034 765119089 797699085 337979459 26050490 409311643 615348170 631263738 38281170 645750192 431580362 568816935 597872063 918303200 383311589 585265608 309274658 123629420 185008751 718374176 943532702 966653744 27840101 29546707 771692778 880914894 424918087 414514334 813843433 76264470 70098612 750561157 492571331 738270607 771972257 93777495 560277895 879413565 563237449 846465592 985849429 841455794 403815853 181788502 700681014 846765313 405643041 129393673 421103842 417661366 695493291 897573897 651037505 68082232 461762541 708916794 627901787 166066853 830265676 639122076 690820 331374978 2415162 127471793 653677036 916473835 693619197 851305944 873626556 673756944 607658288 645988854 671733466 132895933 377886689 200316447 489055957 386310197 202197673 960905435 192622635 980090021 27694409 947400336 479609669 193788283 387916683 333597199 73187528 868532193 587015038 25867951 995007576 254015992 134833610 876629681 809320195 201143296 523720904 754877613 576979616 885866194 707903477 719072293 797036970 809031264 124471082 260677470 46557869 519501552 150262804 509941323 724693003 548002894 190070685 466983715 628683700 676524860 645006749 124697245 877725396 613343793 388377370 4888751 285679986 365220181 23997 646089536 776467748 983868060 849403670 852409982 446968986 278663018 723782018 711987474 54691152 911673076 255301572 78157916 647367708 188063603 385979402 527776354 773957253 897031651 683113114 887342959 942637261 830630031 100645663 223598687 57344708 555735514 633813759 175582764 134016362 105130549 814217090 83615113 350003779 47866872 100117765 729113883 709960659 895381367 124645549 476027800 652722403 681390101 439728252 74563209 778543481 580221460 293438945 429088368 140365684 705122894 593984046 698065175 312020760 471727401 784360401 845042761 689101443 66150375 434003237 719415152 915835321 452390821 526717774 389604485 984549005 251684467 283266447 4449242 120666884 334595816 411194455 908275546 937277974 592868399 343225359 35492633 792544653 985935106 920190919 206456994 604432494 41300185 530479293 739279366 306762531 553359718 661548839 558315649 597954145 999960776 208592904 704962916 701030535 69340653 839413760 512666597 711743853 474565829 55763838 596502972 126171961 608896701 830653153 515847480 878327843 327130090 936071352 189438048 871929794 114413639 591632714 707309854 884399403 316809971 545061806 837535010 698057046 569762027 286165688 928092116 226642459 881254 579707646 798511015 297409228 268395935 435870997 840191777 133386057 627648494 907731226 136473970 333312441 9224897 936993766 360787306 860747570 667398362 590433823 883213452 348020800 399296467 69475303 382727159 6209172 694874116 964521301 104819285 379828298 709119328 573410231 866640548 293806280 678215834 38763509 818370352 335856833 462090686 5508167 225911103 78265602 166082104 65120801 386355844 527722785 255319716 699128489 607519116 887087006 830980886 763589243 781540156 238278253 638880187 758303781 836691921 316846889 426396311 989871439 928231154 807840448 422670907 998708329 994308602 172670144 647204750 916418474 939345667 432054749 655869541 660340250 169936688 338807366 335251593 554793925 930678084 810247674 536253954 789051659 56419672 327484322 789325062 406244179 667590262 538642969 344111088 419966719 421869629 451186795 187705416 585042768 778903064 768695504 361991831 719037670 122369710 655233023 11625911 523898282 180007989 946167132 222724714 357187303 382620081 506857834 173938875 948129096 384018157 915266098 566037528 539481652 231314609 936887736 362868335 720500444 692472028 597831903 875904166 320584733 52967509 360127664 333777787 125207143 313868519 290166472 387502049 293159167 959984858 294788125 409763121 540302174 85329676 869586294 905150030 849075178 562352483 646139653 320533345 490340256 124687170 903423719 187050629 407341603 29400276 477625103 390289317 407323518 826376356 416495295 683681506 281615550 980564729 137103986 95056517 942318309 594877426 772342590 319811083 494974715 960465031 16646499 526758158 196113718 246956675 905934851 67199135 347155845 701558497 727601847 159187111 203660932 792273211 725668519 843996751 193113467 944978186 984802621 649320887 720877445 241409243 417205749 152607099 835522241 176841506 733276560 457691741 456081304 734652977 391035003 616226085 463031171 733990126 499428753 102734824 752488396 379880708 857183130 624235006 741519923 524953088 447542298 125506690 324151578 554548983 888357516 145241166 883409804 616340322 977420031 307937465 704883282 954415828 385760736 36208906 217920562 154057201 990732108 118192587 206478873 867512082 965392400 782219241 682063565 487945699 147471137 115022098 858829170 247371354 890060399 961048556 276195633 845657156 428161362 439248672 280061718 708438349 908822543 736372783 679618817 669298351 284908184 948479847 47862390 471667178 88847229 363050588 606502641 94234388 21124391 857542439 599371385 801792405 431216616 279780088 486000288 536436837 562072490 557402011 573148286 669036350 22492447 487497497 693909884 367733072 525523987 150115050 561001526 324437992 33386746 420378540 498419147 716337259 768625963 795540191 17270870 973207263 971549931 101145119 822222876 771803587 908044427 793780205 453532695 937815333 512841447 754152629 42169864 215507803 480298503 558293905 26254982 129496564 636857582 700247241 976811419 581740091 883762557 695234113 386464780 719389173 524892172 525973072 504585695 57475191 641833490 211278460 908155350 86706600 208017479 941339816 673449911 842482215 925801497 958509703 751207736 418383366 941227401 587658387 794412554 425889846 761899796 595650298 212816380 523747686 105069711 678976346 398633628 590546329 289304090 750402829 36993020 368728380 629567231 680209518 494311641 87500636 208902917 580724203 794580520 783630470 500205572 85275834 596647125 309745737 897074718 329316024 346182245 240512164 135796767 630445168 966229680 882344714 655597754 653322822 377484218 278783726 588369412 921611598 986730640 295857567 649430695 219145241 681418010 484687838 262625788 725056485 134288069 241437592 672307880 759672820 233524019 641049133 357468554 588885831 749257497 867029260 401357863 234037682 279588896 288449965 959920375 354227216 960775707 637390364 613346678 452405550 457534314 924547340 602694152 192300803 418278488 206129259 729875139 578330721 939155304 931488000 614388056 128712763 786077586 478286077 52485906 721208096 722689782 164892692 606806044 976229340 319451695 645774922 24005588 135882855 135393066 599468473 401344976 824253969 495639341 465419820 815488828 445111627 441813096 121240171 773068379 44240143 825171994 4443597 879273554 309596172 219234878 127053871 921673471 597478984 386296597 700620044 111624964 875098693 771960338 907220155 750661373 934673242 745542401 184542916 311348367 940682047 111853463 587787637 120276779 508752127 338791913 994356869 584742167 515261351 986692009 808530123 575573760 256007885 586377399 900215284 305227598 773203490 415993251 27245458 366544292 982311354 653611033 956796431 944681003 47169437 299680424 249786151 804864962 241369193 215059474 536385250 165131128 217407162 93103682 693730395 860443975 615325314 739265967 804114391 181723326 62214274 671295733 644089586 524001199 187269929 765327006 123520943 742948489 325301324 27047619 923810156 671760963 530080374 336744560 898870980 680753895 334710808 10262370 155909959 135469295 67979177 69960638 170086152 160062178 811824437 263974699 38413335 426056505 446333786 596147067 913899571 257437251 653453554 919849199 418550169 745764312 44602576 487849084 764879464 190632361 286841708 874685822 866243865 73224030 332859565 326436265 659317308 548474520 320638277 444474288 256624481 421038139 104907403 564713624 137780274 146066004 838421745 222659224 403863381 765314941 654182877 460190655 179085066 289787744 37748233 851626131 452136081 199421339 716850672 764669873 682574608 846372701 107246444 286533214 966957912 183362232 846998275 521581822 725686638 346174106 404497419 321505660 640003892 179620388 748019978 965920531 634825538 822272366 500917925 243452189 523038011 108815670 284784474 183368434 286318836 638195153 458385708 95949050 96654210 933140855 45280744 708337225 418208797 538636193 557192996 548796675 791227250 189692608 226261633 730069578 312272229 521099938 682071192 650891529 326551684 627984012 686876837 707823632 355649331 659043449 648651905 400906396 214603263 928818076 906234454 41292284 359280244 248960922 716121360 941820197 94138753 507409920 340202899 989968861 493582909 97170793 22516422 9957815 416923372 494938462 311505315 401774212 533717890 578925450 986968915 819220174 177209315 568042836 219901612 985691638 941187718 586122808 852947584 256715466 312709788 94614713 750853242 181901274 922249050 11704491 554894906 930299399 679582554 980776718 321013665 431603297 3474568 707834086 161325609 827531764 936025762 897425758 672011886 766076979 139416331 876911189 861177715 173575457 676704954 624521652 53570980 573566561 218973713 937488542 836340032 776118999 956653514 991273152 993408949 453508704 731391026 286466952 502838755 681782782 904441946 63932946 986026312 344980371 225685469 680873560 211994488 118687302 221497609 245842651 382213646 19766917 102545259 985678602 10195393 63315885 778521561 391274326 23414510 767690172 393419494 861013144 844247862 418715679 548210616 293576337 310545147 43753401 642862244 538775664 664766775 131961719 321522090 339269299 172157536 329900576 555579950 652301918 942147032 292914184 134249507 655660358 36590484 168216405 400177549 592052240 282063853 122141582 483887207 297206692 272125684 627479285 229904242 951704338 843754027 165756785 917996246 299544203 529074275 718745409 435824000 496550318 634507873 72590256 592399737 356715475 169490640 727363664 823361692 523780181 256334263 561244122 699021178 721671066 418690276 525620798 693899435 551249281 880250017 107108772 41084995 760642532 112179248 339479684 745578017 357413865 423703165 164706650 489208040 695052728 137942237 324488679 511461547 154850631 813479139 609407284 493157241 966330810 221053666 246275696 919651435 380565774 338361653 253807810 627661340 68044740 480048180 325776271 502247375 96543956 449306553 57007623 795505292 548494095 951562927 693189140 157928915 808559541 386034086 198044574 180214732 586049218 911470545 287454792 518770091 871565115 437644984 73339636 936048789 973462483 800151513 176172205 758792456 586332353 346296622 882640669 99426597 573012592 696020046 148672154 881418150 75407894 378900277 548724024 931777381 123200314 527221893 762699652 514024038 183496665 270731896 795063001 972135859 670499186 365415349 749520609 895565580 661261752 778117694 592465588 352353649 117874819 224418305 920609183 539941049 219730100 425930840 296947662 684821563 789993477 413827774 179812816 272138254 828878760 463140168 647416171 40974453 467830220 921311761 360320749 624776324 591393766 877359210 291418285 89777760 676273824 715550219 668110896 131492116 124486403 151067772 116381403 583502748 281581188 532784831 492872204 669871499 633105410 953338761 52901123 854098327 141435147 884312235 968271241 917820342 37839372 682275925 20514391 56152792 762071666 459705528 776312940 515546518 797678652 217640106 912665212 724778123 322782891 410791045 441135419 581670296 505598098 302004912 693063392 11217005 192277329 104168631 667529106 179103512 766328882 790117018 700836200 884261921 840390398 61319851 746466460 389262792 206329170 209927761 557016418 351524539 628036435 349998560 447441702 209470053 260836738 998388548 395115882 42555138 72947197 214921883 769238250 52906764 220848193 746781063 577900100 101164348 325126031 170395308 164455202 650175755 789419423 832095839 410580290 228760576 295502646 957331977 774240462 824663703 823839368 576291291 944452482 674684377 825705254 758157841 829282794 704236619 3751617 563126848 388085928 347490058 491745275 296274471 228925910 446005115 363227257 238634893 967732873 58587516 5793371 212918409 849545379 959934708 213072920 493742251 778125850 863756120 701882095 253290366 970472452 739788951 681548897 335596518 213167606 785197152 500463645 556269204 681183516 388553559 251460076 914832420 701280504 543940106 465572644 809326885 614663549 204442403 217058851 431266173 837704770 193721032 604982355 172832759 716670319 142381708 133073515 749720137 172849389 276189481 943018281 392413492 345308699 858510532 173528681 398586790 118508577 573708739 930412604 123119734 608266267 722049787 135086296 387920177 274731542 821083284 39334222 97527926 74736006 717015533 1738614 50316374 829668572 106020294 136387503 381294626 105071570 869098423 318575489 256103500 451441138 470757461 662731244 272446618 576197419 760740210 739387332 568385990 27635210 60653126 782192241 534727042 704465385 399782299 220228044 827340223 341681271 89430923 296311064 764790239 545139406 132613821 251503715 876540860 410735414 420542583 517220211 789703946 465143726 97153211 394748847 919358934 269142835 771223352 764051035 209782778 858680115 134662349 997295253 701640560 702111040 355552835 380050104 692089581 651605351 817111892 44439543 759723686 107117672 727826928 199486887 922928149 858256959 874946676 244293129 854454842 967151612 895793066 531489369 335862375 355981888 212531936 671984119 969492113 536457164 771387033 702528868 777101284 799354423 310734945 324000009 915390127 759150944 481968301 786464008 798012530 944967261 355956006 153989835 65234102 48275482 223163239 691944837 425330649 763161222 835406248 602132329 391823022 24837384 293874769 700132757 591173909 850043517 916282395 187088476 581191810 288463688 595313020 356010641 49749907 392358616 997122538 614424289 428636007 846565368 751534657 892516045 137960604 712122247 214420653 80608724 476156610 318213638 130236854 439972657 52555669 858983239 323012983 176908137 244336628 114634161 691931764 738109086 145310663 934590649 110360232 11457519 546446041 650417663 873768090 466579293 915529197 536105060 548182505 848183486 798537472 588370061 631412927 167805783 780907259 246056993 607923436 815870202 836985091 713613585 403263177 148489158 751629867 983994080 291595319 396648266 375619544 528497072 298739639 139628377 3176700 742890945 213885987 305893943 771997919 382960318 370821042 157317649 8298205 689594078 544582168 936680156 555824346 448331684 922121560 933726484 960898281 23621350 163117545 400747936 749914376 508694039 590970201 40263553 320453567 410485286 425294460 878522770 617825730 845795233 420081101 458874614 786121104 852260933 789561205 140088138 483224663 530057440 60433344 819807457 26344788 272709630 73145686 274010602 196740532 950411909 507154306 742171570 246549872 49926214 417451005 532038624 723340498 407982960 815216174 325179803 446381339 650689619 135025783 269334798 383183065 762387202 149477623 244796505 451707836 220801708 219480819 342154869 338885707 706656012 254454737 572117212 949349120 842114992 438633099 708405520 139061792 464259239 996117943 268100576 138030239 383535365 629965958 352641023 508101396 295823234 879576831 363577495 990937814 695388339 5818139 532458614 576298900 548880418 205683052 355122178 981175100 181782447 645540991 183030024 655673396 515881217 326344762 322902462 996048243 539311435 889430278 965626225 978785842 861571830 396400300 464675492 3568089 105154653 302143113 295756513 408357747 588587825 910176106 372085248 87382203 67302658 545296987 511700138 252534077 648094539 820581115 539461037 917577927 228421449 389178882 421483637 19449929 39450398 533911601 286289403 750728916 318287961 94043350 470539410 744592879 495626888 512251249 858095345 581809695 986202742 362603481 483214911 600730318 105008439 587427214 378542964 92267708 550494280 939430861 608901023 603863742 126345427 560317940 470969639 813842924 283132208 115892454 167504177 345952692 453260811 710808978 725733448 113322147 561668843 765909418 380241799 640794517 532683367 878342988 607704204 560398378 908925599 371125355 345861912 290918954 956640984 803344460 128029212 108291350 950692636 652785739 749991198 602208854 254077139 218515721 80640036 134713068 381399046 451437203 779386743 470229755 597101977 905529226 963335270 551407175 974716517 515135152 534266778 380002602 963415591 212139035 578447711 251663806 624213404 425716724 98719732 10410749 626139495 539732600 198976692 791097405 332278024 198773497 84587021 840146380 951185709 97020583 620472123 871723566 975255790 975769830 872480082 345647416 738590610 353379216 412118490 641214029 872711625 914550573 703751520 497772716 18043860 782197743 18184370 319991981 817249232 586731801 108835016 212124082 70929881 62757646 485296433 121945821 282551937 739510460 949773762 800503883 456757152 104744769 728547470 958759048 947782249 319425714 188405263 574083634 371844984 729058044 679065287 593972648 977378304 435085107 191822836 545251187 929396645 912336799 141296938 551561344 313026499 339090621 246137993 24221947 327251550 435664629 923917826 539227119 26446916 554161893 29671125 783195450 92131521 538676575 852843587 799086474 289357428 468378834 570852288 100066762 276252184 541272510 277414495 988783255 556029691 464760718 647754627 934962342 610408130 71059347 222030446 769041372 4197266 237723742 482613474 354231505 403148204 331460100 517817231 93636338 554440634 426525131 811671791 149297646 171380327 660350675 304514557 555887510 211950411 729615939 343216828 422885026 143634138 473084447 628480422 13461131 693925031 926516529 650997842 271942198 608335465 67293552 516290756 311170225 939164721 663776086 81056011 307516862 785010099 368967840 577150825 509041103 545725926 289126135 616733745 517829384 110809465 554956194 289178752 214577756 736221365 686603211 940660525 775914228 333825162 606536196 256767449 285527716 451728975 64805724 450600760 679687758 156557988 604360632 821348664 472376220 249465892 253316147 124200777 579332791 393048668 964700779 622823874 175379976 730951549 168560341 801020079 224234225 763753926 766206449 913927352 263539227 517054958 549650214 802437659 375061602 168886071 729407552 104717778 458131149 14818812 498944194 15626927 768355722 446159652 384281168 594751169 88207295 569993170 357723943 726030201 476764481 555478971 107216462 406767515 290199309 580866378 621850044 173584220 443239410 467350248 480475723 659970623 618737798 617640845 176607632 555863557 368320039 733362976 50557860 819929128 13776952 409903111 518421936 555897655 674089888 663121003 779114472 65715916 434511225 302985759 292955910 95357861 951361985 994867811 918227897 190303855 26576070 641041718 937860386 688325359 526541363 848903918 246818916 757843560 67573883 166643940 130914504 511501675 397816191 26364918 540954940 378768336 697534674 565697701 260986954 519898596 602352686 611827234 105771552 784458304 867116558 992348657 927200481 415733760 814949500 100489250 227273292 491798564 934879470 106977118 830948466 189145911 206056454 536722453 213949825 892187998 14953649 770390204 692824470 570831093 634502091 870400311 48168242 524120365 842369173 762164043 372211890 16931540 724277791 274891719 585125718 482744707 24469623 280893934 29520105 91366054 321230472 736120582 16832201 221773961 605144501 149547429 272883087 589187803 890521551 585779785 897137906 696638982 154372195 994240767 309103970 236425044 722941794 244633900 775719548 533464332 245972625 165886859 854412413 142280434 654182076 15088244 855630549 802185199 735805669 695870151 377654371 570776895 781709483 957730529 910354086 93698962 453267532 949776671 643393761 316792582 751425970 984256272 359277643 929175504 434621615 640374638 730380657 374529445 589262034 118971502 906156319 940418459 429726777 939259149 892891947 78988382 355693530 266856263 722595523 420407294 392812882 563154592 219130580 939877795 436648309 769733727 966298597 432695461 572164656 365073924 181099016 778129521 587021939 400588116 516477004 652057618 800236638 179556553 941592218 265659213 551362237 69530986 766101646 821021360 721313804 331976533 15594126 247291450 39727887 519121724 569963424 614500212 546076620 812164513 607392180 33572503 956956279 940837934 442419382 298071063 896771995 962629830 517384084 149796085 889148294 716558089 204703155 707999303 426748963 330511804 649623805 728165959 657834427 989272711 868677196 874961517 62378514 844788521 495293821 725458061 922180858 31600602 176059491 137710888 79641813 515428700 235316616 866314000 977622740 535957587 599078475 94683353 218026514 264164698 763594850 736209497 569705491 404694925 253933069 364441464 546218898 775904596 373655612 324868023 823241256 18350718 57530890 525730324 555744511 435873607 359351659 434219113 133576887 133924954 311376756 310517981 789719141 681005952 733405134 350821802 411315759 716959017 604565507 982599483 969067491 366039428 257678229 661800306 585906757 611430314 320603524 449276807 78881077 770523808 99742921 368629371 965639301 518448268 434602660 631098326 129857078 111231317 772855474 885450151 163793656 308801496 693215201 13232219 603546638 21083591 734974561 292168455 418252101 868925713 225502383 901954260 788973018 493520237 379076217 588818200 523190620 103594972 331556923 91761945 715556445 212368927 839465982 845632859 557787195 320907641 947949787 35592458 560621559 469536921 448579547 252414371 861613445 717847649 312794367 71918495 643085314 171365556 960054245 980480247 83501538 189927122 172365408 932771901 234411499 684255981 81324092 887510623 821395324 994745222 447851257 444425537 698211377 129931040 107125604 647721017 371392007 938282277 445746363 863277131 77186161 507133254 633896241 494338273 707578168 490312463 697745494 348615166 543421969 517425150 625046102 214579673 226083593 58381626 143461353 328011111 335934434 133740139 493449477 926522903 859973799 407571147 500192543 700478861 150002097 643720639 34175424 651899994 684035560 451475353 93130558 880299528 995447059 468649758 902139159 621447630 406789378 485226156 886620844 264914981 643541666 219758460 453393896 732621849 12296570 391131029 406968607 510669341 38826259 276766849 874660937 659984002 398632643 982190764 798328160 454046854 157442002 836236778 76576860 647209477 742188639 610671410 310269217 664001985 353024844 183970945 514638754 279675663 827049795 932760344 838543136 377000729 71827547 233400089 344724340 505249296 54777995 304911946 504079681 29805029 476120353 646655463 973035815 583841814 996445160 732549789 305112497 169440643 345482227 700733329 853246760 224090111 608071082 436940311 292249627 486458369 301105774 670647036 793079586 571016979 420308393 614822386 67695520 967069877 500422548 627646869 853835889 70527098 330881957 499518716 509893644 42942902 430489103 20202898 463552101 163436453 187223741 623004663 455535583 428579941 363200435 958520040 802802811 183628075 991771751 100502217 550603259 637618550 509641986 548914276 555132014 162964203 710839531 367973420 864685431 320186275 854119735 616064814 770722590 102159605 984712930 812001284 928050159 473313121 815843846 579292205 373389391 952119348 283156300 892425139 511708043 549167913 63332726 775589401 733629077 882559822 448255300 666824740 263166708 485732414 619515750 863954379 755611378 606878623 230228080 495419479 505915727 554849780 837751909 465760077 787272925 788107303 644136283 214244780 745839468 328651126 90159318 772223786 651669427 56980063 105672243 116419982 932014040 884399483 395558856 711717737 774310687 404071777 257877074 768870138 453618486 289814784 470666858 746503160 652661138 384851521 240039893 432005585 110568158 870154628 578003357 498055310 688527676 24629367 130274145 776895596 213169370 345420145 414469007 308002027 489271637 906755288 787001089 77174784 786771444 894822531 456135964 361850385 215626914 885424160 749182858 771942573 370374327 769635805 132989511 517805003 907352516 937813714 558150829 380704083 483810028 627312012 3216233 754097904 675757989 415390163 687875937 86106402 23291695 267190894 735828844 393782246 66836299 209132671 401267384 312911381 337750463 512201358 118090741 924906771 280130211 213138419 906980809 252945504 244413759 216507869 705309281 182669865 688916774 867872509 967423324 195211829 112326851 748171064 155495205 152601998 176273286 245854746 536130003 182350885 970175851 605530800 922540380 657273864 94614913 653089290 446285539 987898747 349024916 917924971 211796745 413915919 537715032 389883074 158816604 121191210 526419240 331853468 655752094 890082129 560072490 105111638 487823085 863138590 327966477 761312412 68076555 64443588 915819668 307817209 105950071 492435051 623133025 587886342 577107886 132625245 345610207 251439789 222397766 469271499 120952607 312831735 128505507 706778581 690633124 117016434 738125536 623402675 163210328 28609289 822466614 303541805 705249724 728753653 551320722 850648373 57990389 551366626 476883446 70643696 913592874 619101248 497461173 660072497 837107140 852688692 763097323 413120523 714807361 196975350 611166608 535740206 786068736 126597008 628181220 357906440 725628862 252482564 470306259 882894401 747955584 851063038 945667011 713195098 497278653 860044387 511273454 388105157 914588432 664103200 161242550 947954584 811726662 148120419 849020828 30941908 123212885 338467396 314516899 579546113 225453891 314761753 555514065 614923387 605720666 113505389 598817718 426632078 508379453 516048909 975612734 153010248 409039696 470965491 905844401 889032665 5869016 415406045 826627319 714206751 969082162 734428028 734600363 509312732 147841215 658790286 703844688 148892786 791363113 904467830 574695222 819466535 348410064 220326446 703029915 949757109 813986789 231397964 385676138 895741302 980646496 334876511 29843631 307083457 994987037 861411844 100084115 917759312 703360563 619881053 196613186 77182642 508699245 376396934 303762710 7050598 974073785 871436534 887930497 512531253 324216502 271124872 496042310 295443004 583252313 799825178 309748692 599389012 84296717 77529956 714569710 64651686 111768988 252804773 924287113 558568924 358087279 889082091 306514835 768320868 84771002 5856451 539205564 418581243 831371868 124919380 49891473 36374246 675389824 56836693 799223162 545004968 669249246 968203022 88879267 316765118 581757940 723908117 495887279 377486134 708708080 984804405 992536997 903544229 84307337 353606520 234630293 939196399 88265928 478824661 371567125 470976975 672693102 496267632 727452114 148123304 110294787 257057857 625300890 47198568 625870521 283409943 546761291 756458469 146434716 636873648 285158485 541866206 83434502 639335209 809229705 919751894 160977132 341517762 384803615 99080516 732307607 638118358 826399918 237286100 497137331 404044064 199103477 707405614 461784794 703984100 313198281 216607494 660288327 304454194 686467948 738554678 578260403 286642715 272995902 711952576 488110947 663006412 853557211 583059426 527591585 848699436 660862351 763933114 934729417 71971696 121536240 586513767 905038900 229006378 123786266 906192618 779347998 446967194 151668175 956785977 856356671 60643340 181090132 130865616 700448435 735075384 254622416 689618463 212233733 596496958 435126620 377203038 844539393 803807579 132190821 798167252 823384930 395921239 128300496 396430101 214185615 472786431 275873355 286559572 174838560 298348661 708903384 814121941 73170120 579727072 363248123 775604636 7943887 417151240 260682476 985590968 700725585 522211796 384598502 115180189 401356712 287533516 814448706 694641531 883808591 158790060 442445802 897450971 795749319 27361285 388636556 566741281 458103558 849299531 140536194 273093554 722194903 419448478 491797733 460095631 372055251 812615132 431938426 372204055 908242410 754550426 189691570 655139584 244423399 62755340 577738301 684326270 955930609 162902103 583956065 560063175 84231527 954361040 169592805 575474335 450876622 277539350 224633972 101347248 446005811 102836278 30829706 631691346 991783513 468650779 345209035 925656213 83076065 434776933 265943245 846962501 579490345 685915565 915028401 783949933 351932693 443699708 384094521 502242408 386333575 776561297 53414616 415501732 262612060 257615890 38602164 265372312 173828146 951132908 724827115 500648616 9288683 945949834 963376287 121923191 224483987 760561988 988047469 84970398 911942232 395298548 366770653 593162832 384987388 354648921 970228253 494125970 498876058 272329370 399370246 665593874 441677018 295831386 375027455 528909754 863339273 692172572 374262457 610460378 873718121 212899224 319011708 519050608 888632527 342685405 974934060 120926216 251203405 313771687 715364109 36928125 361319724 144177918 258634720 715804074 942543569 623068136 74112091 869093035 198323056 261126725 898145899 742704161 892800661 991995611 235879753 700243392 947783046 498180061 510310412 215565827 903879736 880914551 920306566 673401888 61084719 821470250 789750496 125805505 477681469 144078797 971120733 975267347 249490742 481356523 378530513 180818775 387834754 954370562 586532476 664628924 466668201 488815797 292118485 285373482 660940555 406499382 158740594 20980627 841510537 645335757 720418637 238270454 987660553 756147351 25336872 380395001 160533649 782152302 15664725 929606062 21370879 52278753 597748914 512403128 990103310 672025974 472772286 265442738 898989019 765073942 41931305 792825436 858320321 527578876 888909464 274632674 871663519 421386845 417103780 681967014 7898386 669068684 697624693 213469918 339460279 786387688 797172796 59296677 31036616 834467079 949411417 367541487 396117226 397802852 149517324 938090044 980774182 507439426 648002465 838807146 59376622 404488998 618621775 706393737 202532511 585294943 826680253 579794223 760283620 438604847 525333528 970437255 795473677 798173316 660978887 561514546 405209884 846317775 632948222 255374097 640682142 58423071 652292799 665227552 238018892 59535635 358626295 832680969 767079479 578997701 678378837 4021695 12992408 625116651 85663960 750189133 282484739 346040069 896367082 636247694 487018133 900768440 975493647 174023111 28640748 924249847 725666885 283726951 112073624 245194192 733317774 695458290 479391377 658254300 423862200 294763435 151655286 248341854 165025882 103460253 548478580 720291063 206455754 249268910 832407494 926993030 812540997 981163863 336794076 864764834 113613442 366680638 521370222 845718204 612062836 351277020 900419253 207893307 979016739 853855585 130170454 778703825 738474344 531469316 878590118 577598300 627237525 563754567 151022767 528743803 521111171 736070320 261134062 754890427 569697528 208837369 926661535 256218529 636252463 563938790 488668731 312104465 317172226 823270897 444561812 205049403 152761088 167206791 813804140 158781813 429405475 25962987 414692221 867640559 685180428 307036247 589432860 267928899 50470565 117094042 936928580 291211215 490493923 129028172 751648293 307202186 266493812 135591907 697045575 638948592 163688726 807564269 450471567 57113341 729324465 7594371 135600651 636034827 267953939 968833993 203455665 277819038 936327778 337037820 567429448 909507264 114560857 703685412 449968327 77614222 335083161 522038091 12914460 910109222 209144757 382642487 153736165 130427934 989606201 898322968 754593085 715962371 860358572 804990464 325510572 766661513 977839574 331756976 469568606 442262726 42883633 110001783 706009449 438078017 733770038 646621539 241441197 231927075 580417047 492252144 127689721 603933587 320986374 701124451 599933096 403726318 943730627 701831178 166402803 233240571 457490181 80430113 692146586 364934872 447915518 785744021 640455803 667478275 77746464 555280429 704394 327147076 628803259 157692316 852969471 250255998 844776016 693489619 994915445 29676085 205556945 131501341 839493805 439737496 114527816 290501039 289989301 492563340 648721345 714124893 575795627 463147105 424523135 604319347 340927561 7374107 833286758 887817126 205985512 811102801 462682941 183656722 521350577 633412060 160260536 313509322 752494375 98781588 342491544 138257551 33323265 778352226 728823874 347925298 88354634 942401063 461339144 358809045 665716220 263011321 242240261 189586846 149093663 831478308 241594133 736986715 650218164 245951706 519415391 773711673 1843832 168464155 140785640 38637770 650357453 432801044 311199279 19735660 415410148 401091105 195821477 551739148 529062403 745069703 158749435 964424841 983967270 526062769 419531065 894241264 356533713 546202146 276583618 792820427 718042364 976177257 626826855 74839924 657192732 806401480 114158023 213762349 445772992 270022861 449991165 955703562 887189023 705921490 72732359 926005848 528534439 559346652 960199810 464706654 975954360 801905135 12714448 811022508 860736649 591531071 715477870 101944457 458176001 919447575 986789688 639793605 685594083 938174601 614945713 491106342 749072824 732319337 933835137 609629561 900227823 711381584 951912070 495288775 852424149 705137107 2578959 938760547 890714968 637089393 539217607 763159172 143216126 43957672 381806304 208870439 460844321 249038375 991757585 88415542 45329990 806029891 334230364 72044341 952297611 37746978 252023680 982251962 568200510 801342796 209692756 686453676 794091770 715086363 83754705 394830355 628472800 460872430 557438665 673811895 646901511 532232966 998948673 593941192 612969246 998432609 978331023 625041397 711472281 267316205 711490858 449423604 345895556 234560696 697300255 672030693 992446906 585255524 729184213 44523502 326624652 453007048 405755274 637909608 6488639 624692932 814305260 802476874 181254043 227628145 750554166 183349698 564378813 10450850 53762049 841394133 434190313 41556373 503532614 498740679 663970547 389063639 784641707 788181877 645920874 335122654 652175233 530941227 960999742 312030 320465159 815388718 194757152 330053126 155441825 660170454 897495030 136332096 762603540 800161221 26383271 184291040 889979055 252293045 240794983 164594014 279706432 515168801 474723047 264648212 593555521 920718438 766788102 222338275 189105683 105629574 961057846 55595448 619078707 205534025 183376913 519635274 284236113 617507242 302302619 184162443 994362167 384919288 852368397 48397706 284809331 974163636 338716834 880210068 282613241 37219443 167935651 428350799 495810364 500953561 242281075 201196019 747097253 8256143 886513656 375914945 109900633 806006150 615399391 60750851 215877764 33699754 314139574 170817529 169704078 95542371 45299426 592048621 560472997 914290793 378959823 321239492 821378779 95383830 551610622 683245055 673082321 248810310 226666454 853332129 456432871 866184066 430857656 87068833 589662996 969813653 999482792 487888212 999978710 87412847 365822021 618083034 813560221 830761744 538680186 811089277 729050419 510349747 609328172 388932850 185250181 761916066 454579516 884741530 258734286 916720883 18691526 859557541 193640407 992732336 232125490 567241645 342499890 464247701 245812314 328626020 642250840 369086757 940837660 662660099 777716485 197349090 579990872 324252042 119118723 822004068 163601704 822265842 620075855 233455060 34888773 455361368 304281713 986473752 532899786 721064222 873029441 926372434 898026457 393127148 113276941 644842739 911073857 776405224 275365647 11748866 285503080 654589468 89530745 164549318 393859329 957302101 971838563 43465009 881386963 984161061 95058158 464073506 600122506 631576109 444072571 664858961 669021802 504915884 698827481 195140553 818156465 139017932 580552800 453873007 530473933 31554650 387275606 814698224 812455012 639519074 242876353 225067295 910182381 771162632 510217494 418585721 791329267 404874677 731068201 123192684 775178287 327955171 734463453 879403003 565969367 461084806 998982940 936343512 657382211 941563634 571591501 475003819 990706208 716983090 62547307 399953947 271492366 475820297 620545424 300286223 542904927 413361340 683219105 57712334 374853382 573053255 51226523 530620842 852746214 800894898 688238264 644880676 388646569 43072871 991603505 413564224 192253549 857396751 453052044 360350392 958104905 608455662 660544610 174147280 172078754 209478901 841812880 86259839 416655445 601294455 961574200 939942658 842589289 921968386 335335627 594677992 898692228 162501091 664848765 725897207 795261360 741574709 597797938 98919749 702348162 98577457 840376130 391964434 808818127 246561292 201632191 479652464 501715067 883469669 146306441 661942517 463346656 332759780 458352386 115455925 895038386 654894686 240789685 133628314 588407236 409545972 52894994 615251971 12760588 919714988 336646540 687855054 922842527 325087567 798050053 194709604 8632621 246859210 599565806 735591474 256466401 77609272 369139501 60571538 81629099 178249876 789549422 441898176 926888146 202273537 693998511 161181377 10737936 58451396 91340424 938302417 688390516 533478321 733112169 967855156 267310056 563426601 27925594 249609132 347721679 351730039 42220281 520429962 840965198 759365656 45496607 961479964 32112041 585279519 217261612 602456262 544550497 169223983 106069290 440234804 398866260 628072111 332438506 267199537 815119257 149130747 387607905 776407818 208291215 826013284 603049011 77602165 956595398 976434990 429044095 169301594 359606016 890840965 531138454 163184632 443713417 907107481 906097071 436498242 255445492 256911633 436192549 773446756 612578364 774064785 6724924 437276197 642652330 305604819 808463094 228942207 834623910 307344745 638927023 569625280 157435731 153342353 293684315 167660842 257916380 10509020 593434421 224431096 155929767 598279015 274405485 821602483 621464808 894103906 162536287 968582985 587624199 125295605 752855468 382980270 621778267 890306738 780052992 426257940 950155694 51299287 752290243 548683693 954102568 419863536 632219423 909573215 340280632 754339493 578607057 709740842 725972149 762418399 741884334 443320074 78349566 678214893 452472324 490017390 579080309 99703322 602568432 810080708 229091071 55860190 123118619 176714914 382999789 795748676 270473851 945842930 847125138 656873606 595503274 871401755 478356219 478608998 728396903 437427875 10225603 243657799 588315550 886358410 241388067 857963321 411366246 916613585 523984275 758618992 76849711 267397036 195420580 952936029 859382028 235507096 438506063 522167475 280501041 423658779 192068053 693063023 788014812 953199825 256402560 529263884 454292218 561213949 383580674 744697069 788846011 389236028 776997743 300727635 846610114 286822333 510041190 694333234 620221319 929899811 955263573 528413523 406819784 958940543 9375491 880556477 29502026 436390935 988161483 176990233 43287881 139262600 568376564 482687464 815578970 982352602 532767843 422626311 636871875 119807380 612380866 96109009 825956441 860202241 60599163 551939308 784381958 77363171 788637943 960601102 597223057 130095663 327366362 918244654 890408054 120387173 649958697 644663896 568324365 426650526 321173379 73702236 873828641 762828604 984970004 606414561 685990339 399925483 935136884 500680875 322516358 347888174 305136700 872131130 545922242 122322704 58026751 542138875 296799943 840876844 707976094 176013519 969079768 377020456 747535061 882528680 996378164 704093023 716274596 995957122 436091853 777074447 140917881 82315067 267222307 817332939 641338982 160820054 290778674 247175063 434030809 124546557 971521164 167188267 262108387 305763197 14315701 673772143 890994689 795421179 241065158 516413576 882031537 346692027 607729043 549897024 990002655 868681331 38959353 826042099 140742008 560272328 569197063 603787859 250234698 123661486 880731100 851364356 157278681 610910286 247501364 223222014 555064218 954703741 964435307 268517738 678602033 983376907 793970281 922270311 317659992 920910382 202697070 403604707 352553353 88406075 823998983 912110471 994278448 839892708 183215563 372072557 504718738 170776119 797113055 906214072 833745239 412617142 150421800 191323223 412947687 465769426 271101766 933414813 432803901 729921830 276514519 424201789 753500426 43243293 956568186 49722833 592861303 485234302 791968455 206598882 899764793 544100295 56750039 796042669 766785810 360227231 466402689 547440421 865215833 824339900 339034489 22673076 120586849 688866650 286916623 802485726 680132867 510148170 518800752 277348245 120483445 135659077 616002305 640958824 525653862 29343078 672205030 102723883 79934392 581127543 549518588 637943930 400831122 197832374 23902361 195969811 616381604 230828525 651704816 722119737 952156026 652380700 90206097 130004563 796882641 66347571 78579232 908583116 388584960 924252258 142849740 662144321 103857287 415329776 692737263 824972853 908585752 835224495 784191618 828129092 82165275 145405147 479347159 95551641 655100100 638805382 240927624 143704141 423621086 761295728 572877650 664833608 968725941 659603397 343936940 846421710 281391581 261237350 958934255 400048703 904259451 282711660 832610579 370887127 487574959 331098070 114540076 419205805 18572380 970214614 316727483 336810674 714665132 358601514 659000981 924343909 663733324 977163998 545128252 226532669 164484008 825996139 535091509 273056706 347678002 32458566 60516604 601069931 682777404 582762433 660071619 866638194 724905081 82939041 431810221 2313936 263173878 802719740 272916460 692515875 85699243 814904561 564546752 59784107 400459089 971028171 989535267 190307671 576091126 805157962 351161800 438992749 281953043 837249080 459951788 496368550 305674565 975408302 377997167 664902812 330790928 898482317 123628375 868385309 899832248 372278487 886661339 120851411 98677858 124347125 851377624 693292794 918878924 950118846 600222190 369267278 404401801 842179334 126407847 874479632 807292800 296939612 183375318 614914018 372682929 690115236 273673677 892691033 114739478 311918729 303675836 779695352 256978996 585377922 138293646 801686795 406930340 905911451 548332005 167448527 520638292 984330975 239079218 702950058 68957966 337723339 691496510 633155797 172405140 735437636 46828961 524348720 34224272 603713101 539075833 368024712 57041686 679723830 929280513 692017174 367337247 395013941 161794310 237328110 696426624 605476621 725448854 805406142 29789964 55968905 692738124 344767005 969779351 286955453 954524554 662191767 920460754 520891266 142518486 749051594 977859307 47267536 682830292 88969868 619557615 310966342 288964114 540162561 501551032 979782480 453538525 937514548 513470284 18497548 378429220 689631606 638279350 198293 298465728 332752266 391887702 813265685 634177162 111550500 133883121 276796767 264596156 893407541 631364147 385238855 707685944 919214559 817777810 473915979 19602850 70367089 912624680 862836250 955090720 659933280 818027613 356299270 198972904 532576421 895511490 102161630 519043092 724894206 601117961 157572171 382011300 705303307 396449999 121338810 33991532 671715639 298257142 516249243 91417552 417279445 197841431 231355210 109065489 319044458 678394148 228027620 908025318 724760680 895480255 485168139 474254041 707222196 862980311 149332934 744588508 631326694 382672048 941123601 685792746 224478950 974721441 499993624 50511880 831193593 781778078 461587566 487046857 881116859 806554645 335686851 154204671 284739490 604710865 271783644 810575659 438245190 256619727 441716980 149652412 318373837 487581628 268763811 833744063 738457074 443715317 830148161 434036217 754101056 498042001 242710475 196905030 66110473 704047994 891874156 901130842 765913315 350966522 128483151 229904009 512525891 166600150 70407094 82216626 741782011 489014369 487864286 13286382 208529169 552712526 898736126 734684696 241127191 155129037 588623813 882651723 619681234 622965284 207231121 724657427 186490597 925352128 819608885 196690643 921876165 866411171 385899436 591217117 660214593 472728311 288857766 407234281 556793501 541533138 76416110 694724791 846618492 261790892 417980373 815796099 687642241 355135282 599888677 61383412 748477911 631889702 510613231 729408225 91160213 403902437 497359755 994432305 754551190 611999071 966928188 934712694 560516518 857986948 147301025 91687570 664193576 437616786 783049537 857043141 777848540 19861374 942129247 955945384 38769264 47545599 196039468 710691934 875565656 64557666 274908586 387043417 127079856 334625521 816871290 677358580 96452299 384312961 143034981 98832733 268950611 314580423 440983950 470724136 868657517 523138154 909740248 664083745 358325420 1455313 288478063 82114389 245640120 46574794 762216619 275489681 358209625 263614859 833672160 366846913 3031658 599013894 846359070 500702663 605896988 222763585 442925633 210493749 323987250 537630688 288022046 995882360 442203451 198352133 429514184 850274086 762925726 3313476 948467898 234051484 652690969 613526787 649561385 992639502 567501616 955471650 161278906 440759834 79664802 927247702 635267857 622763664 475378730 175318309 281927159 23346037 384211817 270807560 61427357 191140079 956082712 115511733 578355997 687180867 469715728 98200448 812266577 130544857 604985514 576372091 902896594 186183024 232854306 504330257 466089678 475855744 908848887 395541142 668019014 777886522 677468124 315913791 88041103 168928266 809023015 968445009 193925295 734550572 537717919 524261858 692556076 432530889 907856132 336285054 444966349 752161519 375251357 779522300 67366528 956883134 11054318 148440050 387687086 188703138 346731422 157648589 436044093 545829130 206975947 30321371 958415677 602066275 656880694 526473341 258652639 914072657 586805712 576322441 597030227 520907887 477477014 803182796 206700949 899909002 326675349 244259630 156307178 54712556 410292177 827550728 939612004 119177584 130858188 891706578 401183482 310636354 44182488 934692355 647890423 650285394 205400974 305102543 725264930 879230510 699367394 289567250 508414891 657077417 713070264 446373603 351977423 727094819 100024741 918638018 751672329 570652709 597576123 317226680 923602229 625337203 397379769 270148850 440811435 590006336 95913356 985301285 926094505 183296903 383086247 536811441 176970269 181002754 688129932 709444982 964129466 303602542 338619629 775153487 490269733 599758606 47291268 846593906 318117836 358524637 587855312 602605230 427017215 197139906 162976906 96199524 945869358 13756618 585421660 773802622 415253206 730259848 891683655 937314470 940585024 826131755 325351480 813252706 134515503 674337143 785960512 823309860 837055702 669447942 841638807 750451955 743130564 306199275 474156606 887837330 849735838 46470559 202930301 388840071 889387987 240809987 618617814 348353272 866281136 414024656 516944900 1886359 946542272 843533493 732044280 620779337 263909798 245608271 367178557 635880457 345650878 423610772 635531708 187601410 578185305 802214385 740826077 779076121 384176558 350973622 944817503 966338887 445114760 769173715 690159337 658172722 506733656 681683562 12493358 583811159 598426988 251556594 870923706 265528849 172540532 966025249 923948374 704254402 438194760 311540000 576132526 9398520 800980115 764907423 189064700 259561322 169793745 523806211 523443387 122872890 529413257 953398302 699980872 783069869 500913269 489414284 242294787 972070719 887478377 895529122 948653948 6211964 679649652 995310166 24872960 567430197 601517234 722139477 163869700 872578075 821414455 750234377 610330805 54886092 938084881 554168975 695118100 285936809 47565166 129349822 757348200 505769624 434155215 734975481 540810923 723508418 524751381 410653305 577816094 62375629 569871238 88923565 882975606 407207048 838579306 644412403 340964334 182308906 337640274 314012128 200492665 147200754 75895441 503820585 982953569 442138163 136081754 605503952 927869624 617810330 62050696 766751222 189405745 139418959 632844818 871124555 617507844 162344453 603552431 801868216 680532890 971919894 434467183 840355500 39850554 705420409 297798306 692764090 430783949 234414037 892638544 746315038 458382710 234551763 754177300 503862001 243763246 925348295 361834945 113864510 375688167 850774496 372361912 727872684 147554537 916698956 231083816 959799033 927928707 925476464 965434076 199159723 998584269 351510790 342135372 931566718 267139735 664620359 973443878 139512431 964350886 448767812 337435917 524932729 705449004 104760866 543112846 121902520 445454112 748172775 827387044 578174171 972337744 185652322 989704315 633285503 531255927 118749594 665095358 142920035 423150378 379075421 271550734 537468094 130770088 118185810 901102388 547960298 910588671 755835753 170080599 816263128 444138032 878370223 287911239 946086383 561986874 200575572 456231058 68424447 207737670 646093232 493729040 119884078 730880110 615741099 285246949 633101449 751124111 694543422 352609755 472740531 322030648 257679576 592588399 514685325 139439739 295069722 937142212 979491032 761168319 708895723 122421116 5131175 619372434 325992732 548401188 112261785 245457780 28836555 679098197 630083870 78519374 221029770 87942805 562962476 694768539 944977872 228019880 821518160 692692756 158389213 539054184 487894323 945613001 844237816 929532035 322709378 616730740 406374086 845898595 414268807 301345276 65645837 238325439 283354587 121800386 825235294 626198655 651306246 384442635 870595035 325474455 623793492 357040617 606994506 580330525 641219432 383208795 734270092 464403827 107850608 960072804 565118209 773318900 145640676 50442357 552498764 514977950 327484003 676690361 996721473 825656985 655687218 956443389 565743402 595235878 798477926 532184475 501477967 335858548 816156088 774414334 398082388 585946094 995635222 907256972 372843426 557587412 622746685 844389213 435605995 711005982 301834563 435828852 698720094 665057354 833365172 762515430 636273284 434773165 278446072 209838706 130224025 299888823 822434609 214706698 599727201 279404918 556560643 52913116 358004155 324457732 354659614 710580403 395368479 967222339 113652580 140407524 238929770 915951183 93727301 556843636 223904437 559829647 454193731 619361010 995739161 127235760 368267705 933039649 243251944 110641648 490690878 800918687 981593257 270569501 442274793 304987916 954875030 509318006 144710951 543015555 833313999 664636190 119365072 963117376 981190802 504420472 389091564 739463806 92225327 42415270 609576965 945311898 169126071 683144189 901977047 33448816 532540517 627550634 588385104 598638997 621252593 487482102 488545876 58096166 784819419 909314617 811417664 820095710 696962665 933795786 235073450 449949601 464772476 585474034 787460394 578770926 843878078 636960981 804802088 804397003 757057478 966816766 397526798 676485486 847867098 746587342 277961449 865131686 889076626 439799602 751788379 45720503 886263883 4669808 947476624 932199813 669885618 680182765 872052292 820585912 278728579 729662305 79248827 185226081 451039694 41191360 296275503 439638733 81729544 178142258 749368911 977330891 547177737 446714651 60044053 589394613 754956532 818914557 126574941 844859124 715258898 707402426 817083544 43272307 348755849 197095542 955842363 25379662 326906475 91041558 557355071 204084731 771028475 989697652 168904647 91760037 464133947 991450974 257559621 352305734 830212277 550051954 812831106 306098076 613493838 397558801 745250124 486561179 321302765 640352364 94098344 515794413 538387478 165600545 208625034 675750905 879950905 978740941 8261760 239628617 913467321 85618097 39060177 536075586 643388802 219117882 540750623 885259709 222405550 620569075 494832706 436030852 393295963 876585240 460549643 165712740 837264075 59885657 430750786 558056667 449493992 206387620 585178394 249605051 945287693 84563775 472296255 904949853 541640444 591957498 158920152 542608411 811418063 475418683 396806743 856411762 695031104 946368564 165183372 220088900 287120092 374626904 850447959 696012783 988813386 935634858 687041931 579943166 871996704 445772576 350517696 193559441 776632331 684217014 455455484 220957876 928604608 87413326 974801789 622667769 49726323 220985556 157540675 854187472 809685347 69078453 450056065 580855388 503707663 965997611 451422512 369032837 556635985 893684392 755390914 158520621 523044815 598474198 913560868 607286353 432652790 617550301 447469146 373540931 323346702 134533160 130792420 642274810 192678029 439076805 882640968 813568392 732486337 377186785 510687678 383411670 878198754 443700164 878453089 470253436 70476866 296228350 819293965 286796843 638392544 954355664 510599224 456971059 369095969 277586441 912584063 927311798 795035851 541393061 813597687 616978999 390022302 782217923 306199187 108140438 552087793 721561724 785818381 895484391 793381852 41230077 954154771 100786028 598773792 323104916 305365671 363185695 297148087 837805011 912361959 452973725 653057316 843342608 220223754 527754708 351743237 198004510 600301504 35456826 840051916 838688791 201847601 81690608 635359426 580414719 69293078 293909032 690838828 663736688 216745141 521696494 520384710 910018442 487090408 980898685 83819641 295929734 252644591 164282534 405222018 826773176 901052224 295431119 964199759 195100627 588799617 297000229 368725667 848497150 259856926 899373039 1470661 455419671 939781923 30099430 858542283 658182868 98712492 490234535 353402747 87433003 310176620 181438164 959616928 606722764 897311805 866499924 266338749 827206709 372903687 247107034 267296036 220614620 443991680 722910880 162911404 220798628 299427793 578793117 612114891 47282796 961468881 296947671 60883531 755080756 135699212 489505738 354756866 76306587 969196831 658397306 827900133 316854795 439390513 468350515 711189409 692111850 942098322 168194793 964724476 130036500 941876658 762387162 361995448 169116347 963697066 786327847 129783827 367714156 613956952 157391218 113673520 612376146 855194827 197310885 141332786 669910522 492946598 245325035 828664229 790950828 655683860 520388719 220959865 774315274 597782232 542698941 697585048 654071947 593363356 450555898 293861643 713391982 664322170 761496835 575752518 785847720 577989527 848076703 762448968 64557472 636070093 194847054 357959253 804003897 341228455 317805362 340217127 262910996 401040814 643758739 473208472 162553988 102154138 387089795 96224949 311166236 290892664 625670625 283509887 411614986 617190776 786764252 153517340 342274534 96129819 285093196 319899395 408626437 9116914 209910882 764326485 490951873 691836347 582624879 93986350 875260730 184045526 518508110 616367974 776736380 741372688 791404693 115918998 517183563 624197713 152969245 807462648 931462542 714759984 464160387 38981475 781952101 662280483 979135415 135711599 950248927 271863593 35171535 797467246 975015490 1814234 370788226 659080947 46517724 647055450 345568964 510081467 945717857 39213553 311523797 590886702 828763990 568439642 929990390 970036008 471596906 615671939 993042974 493431177 84169766 811493446 968226522 674412799 186846415 972920598 452267378 982177825 112530014 606594594 169409585 916541238 140080962 31116466 122263105 283383362 133867208 429384177 549512163 687933062 731851168 216829683 388824622 468246365 457268018 64957113 619385763 350097959 637274724 808748074 893341813 193343025 693966383 121812184 326748315 550276349 887705085 468494900 983073683 365656481 210865432 96958591 495796488 554869580 83431238 299013852 741724169 672211171 923817745 332397210 560426392 666107532 560469690 319453497 904685749 995451623 525824077 675757292 899638101 555663697 837782100 549022386 839855903 885281403 254090758 497652357 72605785 278081895 910118202 992636753 645022738 656449845 621813875 782928236 889863225 81065391 326823340 484718405 192866006 631916131 446872652 313769107 228268421 195977297 941302019 176778626 54183733 767543902 779270035 752541477 52077124 167337977 70923108 258633067 184826069 523777230 839485410 798678084 337711476 637150423 110795739 986080708 415278881 2982521 250374090 658720054 665193696 737650971 902581383 695135012 899818406 358921790 386759678 309342330 617341487 755597876 880955537 168460592 87199033 972569648 202165428 393460683 240226965 870048246 29490539 776385428 797046110 107090383 301967187 209230635 241088249 314242419 685342408 200314369 539058839 923603758 818432740 642060681 250807013 410053007 332606652 232429837 468344112 869088879 924465887 20639859 125402001 946626511 307632701 440597675 911328117 694787835 46318943 195629417 803441348 978434854 669476834 338404167 472645498 278809331 846872488 305749583 151836084 875444916 229044071 409854941 473622076 364055194 767976860 995227405 997070785 393933074 569653028 790076425 143354178 70066378 841209205 959949134 986887430 430733860 10553019 921928988 653040479 330596534 827777249 561919350 151644527 526798316 434476630 227099578 420499063 226175393 886890672 688587423 686675952 508040981 399234037 34283869 651442095 364082258 683888619 127450690 533410780 162698472 589478443 151268899 470056436 182818935 461202599 9366255 308772273 211430451 677946832 660437295 630158929 354115052 204704469 279519041 510985425 199853907 206983069 288228306 685959093 601402300 764375950 453407098 701829530 974237518 266979371 569323769 446572842 201845953 841210051 524517796 256324408 846834830 56576453 824313458 659635437 130298997 433512646 479350655 486190323 883643978 265719898 761350147 849692957 780781687 417052125 311960966 958713103 239625088 489041276 512206469 952662343 495000551 979082015 479158565 954052399 937932845 174963936 221905297 80408469 947270320 727716416 555819665 172123213 415235820 486981315 906215395 912686523 920504962 936108592 691392241 596239997 650221504 700884730 134274575 521107758 921230016 274566027 182554048 819169393 619512982 683466164 486096876 733557405 868425942 35671818 423661913 636562195 207615748 399874586 756095236 375314122 869087794 723873293 989690114 283365159 79406351 156488172 74752563 161561289 760634177 479148031 277753717 285703857 666212419 917255208 25760350 135871751 497127751 717109818 9025052 822680783 498355370 912849137 571495184 45170646 371484400 662417713 339538450 795178763 759460588 255378584 74018900 421694791 892716340 488624449 587508070 870293711 606299123 890783136 23415292 668189162 271433674 194790519 545824785 39323052 448026428 703569555 864644658 769073292 183058843 152391029 602360346 550716921 228954211 994678072 607327829 724010884 806817440 712135616 650737499 991204416 648490948 637685990 998769291 233948748 915281086 352697134 652180330 277567136 924987417 985350987 47298563 890588657 126969395 544033143 814368960 36454445 709528704 324067403 649980252 821668446 505927524 580895696 912580113 552317989 509616358 829954489 852621026 677395386 262354129 160990479 455522854 833066894 340783531 741707214 478118312 810435460 885649035 734074552 334558977 82383578 182619123 229084062 249817776 647609053 562054012 865802086 533796395 297495931 720902537 2750181 188981571 399119488 652895782 630955370 822720378 501827947 279768198 951508759 157253441 18191177 816182584 647323010 88132273 381448125 243703076 838844395 50949035 873190862 15252485 479584800 796668519 2732542 71421687 942721711 871111453 265610453 393954857 674276626 108553689 984671001 248786677 148402164 49453697 802910883 606586659 8697291 938652560 541533970 320785876 390795589 352845289 979197776 346018638 949478001 251793092 521860496 323409762 388610242 100105585 730241146 525827940 813950754 875800458 911056435 669251378 279333571 4472181 60358296 660135091 582804672 994028566 828343332 717172420 358531248 953901100 852350263 794000456 548712568 31417477 741816097 789819163 342800479 346361079 126066776 271456448 800387533 894996081 918938548 362132470 59515809 254937168 448987126 360200827 587334640 193078514 650329644 20831111 30248370 487681739 5292451 69318620 103893769 353088930 15398916 525856965 522309277 938057442 638024791 541226425 705876160 899376113 429100306 738374487 22792357 693075916 161131753 48016904 443045725 99638905 81800404 338000662 260255214 360283031 810839490 86789339 48605138 776926753 918252042 636977552 141648543 94704287 712856504 879855581 750432763 603553334 508379452 83536027 8401689 476281423 142081834 451484492 891803775 534023301 733909775 140532479 81486687 754564802 262928603 899079338 268685400 38795042 82218925 422596728 808768452 327336833 311758684 50258138 606137983 982888930 448790831 259987493 895071363 225205194 941613873 862640441 897687177 954865600 938624013 658910375 666968448 632904147 623982850 281518502 891836043 645233803 353793384 885798390 214587518 542208795 269421791 132877948 947563729 892497638 552760980 505144754 989035866 383764353 390001678 899995691 872387844 713132866 404176371 857040189 427777681 536152512 497451460 510581871 582123008 433438395 389303972 938924963 105483196 599663264 51797171 973073793 774443060 668315840 393272848 522911332 118665889 869233208 188854060 595599055 341915510 240449062 43074445 327161154 979690151 850092587 72475049 932756742 552148599 110451347 378611843 373239852 563795163 885539296 374739588 397003061 960758931 904961966 980227712 514102129 254578942 240308008 796839858 154208028 738202672 987871652 902737944 510431512 756488985 479077460 543277928 735444741 720354564 289091639 908570935 596906472 60460188 634741608 485356742 788119019 447176501 490296915 267514402 166054424 23553091 706262527 227397113 765726824 983281902 262523380 615319426 173206431 604886206 161093605 792704632 546850541 129893655 191853247 386336083 498379182 233221480 977821107 429158814 496238288 265063566 536619743 837938161 414558867 965550814 106101439 17645841 241643848 422177684 747668676 147990038 927297564 595809197 857797947 722910688 344439682 973467149 380819158 656737573 190642009 225950737 935113665 555495016 895904344 571153837 348934656 953065266 697426641 249871247 595134436 543998863 729637037 818455988 245394671 102332820 534421322 770280420 35699377 666187421 458136365 947445719 57179472 932740645 233053195 532261346 816088966 123200128 268058718 5952573 83137897 794080394 349470485 420774133 340174966 9676013 647815708 892429830 975015025 921485410 920988700 741449166 71190691 478743622 540804661 806698398 714352397 61238500 477478363 430003596 579447637 732963698 291795172 504412534 879578165 531411769 121066088 507588770 229284950 243360248 155023217 815499727 566162043 307589981 749326622 802415195 674149606 496858102 357119558 749618968 562416542 99097885 596063081 775453553 529885129 630531090 345005761 597508199 958383815 487066215 199624002 819552213 43487152 161484314 122200317 93277979 221807284 815629992 461072386 565174200 973588323 9228969 556031228 881525666 577494032 855749146 905976136 368027497 669591043 43680649 847936919 376333372 477958615 675159661 410867600 711088806 724398579 281868785 291293092 353431090 413890365 581093761 69819568 727486767 277821828 224361794 567663830 179947090 498561297 277020870 46285208 398504402 312675145 514603491 922479191 852939669 212258966 820289786 72401749 337277341 316076385 8345068 451684241 512107357 970016981 956659542 728944618 182281285 502781861 405873876 35090841 258274538 487787150 338312113 789058107 160409527 779173764 585382170 192810873 579119673 113440193 899654927 500884421 347685886 975558021 793006861 142269535 252091178 152316481 924764087 404684112 380363780 874190242 589439543 862971583 210724021 265087138 23394791 876300494 326767584 252225061 80340157 283309200 438397799 365331905 952338402 44837958 34476436 837182653 925787129 173770847 86268103 99698892 824297143 681046879 627744040 711696071 576775023 677509173 486334005 393738038 401231364 197212096 520331662 540678660 233407075 376545779 119263358 905790895 507055083 986353761 15482168 143323554 239732320 914739502 388791188 724921930 718227361 372506843 254051583 895438208 938426371 109981245 971876486 583916303 695012128 548550547 70159829 26900973 931871710 974066653 940278284 9692788 231007969 409766170 242900143 878607803 760200750 286817926 186506263 650628276 67471656 509571940 423489783 418764135 686486621 938703056 675145223 86640909 637383199 43841631 640847458 138155895 971088073 897112821 197834258 42623511 457515585 731623631 299098942 590978519 85832012 44264091 756563466 240978762 106791847 431756968 890512678 826036750 392850400 124237004 657578383 59084744 454784551 808341305 563663236 446973889 333398581 264397393 222074358 224209368 287903332 274808887 519086797 112532665 641240098 100582774 862428178 524493799 465800314 839811641 986660647 462816956 717551654 429195904 831342737 802775887 847917530 258096211 549027890 709196562 628843733 800253560 692568663 916421821 983425505 485697230 255949751 861133636 685178195 873251504 416537804 733791382 653930664 184026277 838346511 434108901 231614977 110648752 905152761 843216204 682308806 173154799 587378956 966699635 222493450 493466172 230201013 315442622 6450351 536097559 948170177 788379773 47840859 472234287 146710924 213481959 933977931 136839741 169844864 606334750 566362110 371840955 522706056 907499902 314043966 98560933 964603041 390179763 559639302 925883287 217044207 788305271 776488710 263727074 286403156 246628997 125175226 442644952 4183957 954938825 896991364 737915947 864695765 395450098 900113679 92582945 906706878 811375368 89198533 405563030 793137784 393971193 224731044 854630157 349921765 684153071 797709507 996497814 67904637 242055755 228368131 430820612 456103397 369162838 197690808 792066810 744992540 385398234 808743043 899400374 937447039 929435510 777804006 346797297 504013492 315119803 958671843 863520388 172126533 687087710 567712401 978239903 111011624 385032942 49304444 791630589 897578221 631694114 966413074 649603991 28416863 269920892 710263253 526266258 963251019 671526008 245209798 790400859 638341377 777058009 90395771 884607806 84277911 886128477 519131889 815914115 651896837 798628828 124761090 389800510 282694740 874769292 172199646 637494846 387702043 362199268 723621500 562465811 679225829 614842797 813885621 802385359 982022335 929135960 258535892 470274013 249837604 816800808 926343849 3925940 958067280 36138865 331202230 78033961 299049928 848872905 813313332 513315768 533258221 52032313 172493462 286901803 883603602 9463359 566484869 282669079 646162332 524597482 394499854 761809265 195285360 732142470 19338302 612134626 721557260 413759347 671495479 826423964 296663813 218854064 897449784 817240506 309586511 696951452 266159124 273033930 959175282 445759995 880626931 908502505 622159431 182277445 864070522 433806358 499495140 82430894 134224033 659887365 102336430 605477958 771830865 803508312 475885879 721434289 768770246 102670469 276133016 519937276 553845330 620844110 203074431 827168194 61245295 447606162 476895568 751035092 218888014 696554112 764929605 325438319 603982509 113358652 393312678 120395749 596097156 19527072 452189007 285115057 195269680 591946439 604229616 111481229 962449500 718951714 339683190 530874860 248502860 816308834 302274934 825054745 358556603 696100156 271238291 868404443 609422016 547098393 669907688 990005653 951335951 896716774 779395817 919838161 893491917 24575250 62985810 848111129 796718777 455917947 199637893 291030543 177886833 45987612 79660837 567265648 121654085 955223440 71156743 570997705 215165767 170540208 607334301 555679812 999827946 696311442 913087128 213126235 446059715 388073267 952608086 392421176 213658883 226364016 955247670 221275648 937079425 305408093 66003860 610254946 597788093 767554435 69263235 483709517 809019299 294219337 554779459 889985815 577637219 87126593 485694243 452308915 352791283 361765779 912828045 809558723 320816470 813642746 816978550 563087881 391684122 198189810 941085177 173782479 964338507 802786563 494066378 436941017 450501940 631558750 779849728 493308187 960609414 10401489 12155330 31303413 11198521 489406275 449840806 350905162 512977324 523440094 300487284 710710993 624688046 944465008 307410363 164470633 674467787 452951215 595912238 707741598 426595297 994574828 591805296 198058039 978771246 24800235 882669400 829920050 927075661 39882871 917902389 578283049 905716325 970505566 896836257 921682446 531451060 951581422 482260736 525950365 628221493 99550135 384478673 18632755 120162719 10794405 866422646 465761588 493482861 896904596 638884418 424041524 849625142 965822702 235279089 730115766 685372488 410399608 398193285 782336998 535068964 655697359 359563847 591669316 844646709 766727064 901044499 381208786 910228296 562632454 781425761 436107625 401980587 208953700 430408382 40587488 276424057 264152757 308026189 968709909 205174463 424428140 691122619 948152087 789015193 640367513 103642619 717992696 248073030 304217577 755608159 835464269 628952778 534676596 879960666 39230799 572754153 110945031 636422597 707641844 590997049 135680441 346599721 752702407 496839311 295418307 635697956 329731872 191371294 510217583 688514113 353393163 538869945 961015837 755828028 107319815 425259600 488814776 983111156 509885146 661637627 732936580 646692394 267238167 574812672 415859706 237669028 489527968 968229687 843876883 770460099 935717170 777544027 872622637 292788929 144519244 632166671 32832220 49237632 316547436 232984701 329723550 368028381 590163918 795785310 195206360 758020316 581791455 390062299 939061884 233272519 392421707 777027309 734091954 483011004 13001021 587963635 453725791 892551120 221635064 794420895 412409411 554571914 403674447 359620689 333499649 454854688 186213648 76729127 458786997 861007434 706461717 25537082 421633989 417726298 515907770 104718773 196352632 710607246 374479156 527829646 842357528 542764901 829759866 79286445 948466275 538696806 787749098 47141398 660211253 273589218 545118009 523517002 956423447 198059139 708504430 65787088 552786606 260556046 211934892 84233290 857136508 345527696 242595325 930535782 177671836 308831632 660415970 910288637 456361132 917098862 750870235 535865240 101278500 52939918 867670169 715110496 16733947 665065154 946305438 783292582 875384944 844945716 304059923 902347471 791261024 260503270 728138673 537742424 129799227 619717426 121293403 383870928 755042446 584669685 273511164 49291521 426292490 400372898 95367441 878263141 49194641 642615091 760877298 880845534 499731781 382880517 269316066 708683876 455924751 827453671 562032279 468798570 647480545 660885511 601888088 151372584 532360307 772984348 985674233 352105643 637727109 379513730 4608338 645271887 757862447 196910172 922894321 614518747 166964722 986930969 375804471 844661388 1455067 441253712 958937041 887348996 275414183 614838809 803225970 304778585 949098546 942795119 946080945 62141547 355200213 943972663 407665059 824354607 446659310 504244084 389604835 49624190 988182012 545300806 237214814 754062071 927253208 829426106 3238350 254257345 180368532 573823209 33431892 858433753 455658112 266055920 640539506 230132977 31457014 67485716 475546145 755121902 140949768 592075925 178153046 880789128 500811082 421335890 247551611 419408074 449721389 937853893 573963446 720350908 675958478 714700387 105562105 760524085 607281120 304774992 645410012 837882484 816042933 240957754 556293775 159236152 774662817 761844507 433881660 344706736 742963423 806437276 685178513 964749547 483742113 788686665 307954562 910007088 304392858 580093886 858833654 35988948 402539440 899565320 260080349 104880302 243327607 464060642 949123699 458787750 916952028 85201394 990963207 31303489 923532292 439947285 530061596 859352942 368585046 588060096 57835700 865047937 805790280 22446502 11241209 999118175 895504453 559907092 166786254 445595002 500555950 501033173 711146680 471560002 765100808 932218066 750189099 864737040 81209588 812105904 688420717 673281985 291092571 465523 209741645 594275124 223206333 713098431 596652153 670070472 985087808 197336792 439198283 373046195 138532932 147143442 30661881 93258670 300882127 607029275 240554627 379334115 700286585 145907289 692504498 900522061 283240551 306616479 557330691 591926121 408088711 418875372 5773131 990731306 974671106 529294821 765314457 61048796 908381429 539267706 901528399 880926813 622634977 657832286 890374479 218633813 325941787 391246595 721451092 347046990 339022723 269258932 561143471 330754780 869283619 207529518 688848384 15501986 589122871 995521792 244235905 98016840 646539353 53392490 459587365 707118874 772755118 411283295 752231880 471073653 163403571 953383709 274119935 27132079 577057264 466854468 505234937 984124665 1079722 493486794 848570696 736411228 13820150 638838208 688115098 387276565 371929220 83742515 53593998 196372572 583325444 579387106 759739219 648996926 216033637 668014711 9673595 125429126 364197404 560179405 180484365 393732516 578135317 5239729 846986508 891810870 538723771 666354058 481316973 550083484 677693413 94319903 282275453 354548506 292911320 896991445 830851015 68246760 277502714 88621150 7222327 486915136 900908053 250133344 216458346 872066622 251884984 811942106 771395893 131191596 835124810 858990695 47268279 375129589 784081619 71596874 758054506 67788316 233327379 35182046 630364055 50525061 111822395 367374188 452888607 566638009 23655668 502833013 737475530 119768268 318929042 805369976 894593827 85049771 187921665 689883133 588739725 91312665 106016103 694190701 677800230 335549526 526177861 610660004 610950442 531387940 25806546 417849404 521620180 708370171 122394524 72843290 207371127 891346322 909312661 983867699 769979169 837527017 3177104 867263056 262605955 214817401 465218782 638991979 931986549 841683845 51795698 957341074 478499658 928585655 85835054 918624517 734292847 95621467 175849841 29605920 972820608 492175767 630879514 940432034 31440434 520389002 982969793 286854620 868370097 219572558 707173376 5287532 605068892 940906951 61550605 725812878 639084769 695921077 840955505 239025506 907934195 841412028 846133045 73220125 767999549 622550062 720336667 875803238 241793371 277867750 63260434 225083038 683729370 235726397 698036633 202809528 993994473 626523368 236156894 132281175 955937587 682114931 698611568 433080971 88539120 624543818 529265787 646547584 48502337 585781805 171888650 852871610 966274904 788674129 892483407 767934400 777377864 488369631 370804970 582654606 455796389 744350195 73038554 640938263 253393974 34768580 643266586 262720083 824844956 988515303 831605332 868278952 514001442 971387950 77304757 787348364 305381957 738330482 577555256 441370303 409187431 294258925 53165286 598302860 27121841 446930504 822558493 19228938 252970819 12842129 813496369 771820853 140300155 95861753 980948847 103058585 549086222 353287997 938897446 140921044 249798126 811033779 574633160 890821409 830989635 362447582 761949614 16336077 506723081 161604208 27908796 368311183 692122237 525925813 804939707 577084763 497729033 445388244 616335035 95804747 915374389 36139148 214070182 14934833 334444114 137874317 207317120 554488249 153222587 163491902 686787579 311476157 289860354 107382035 961584054 345972949 819254524 580003364 357214610 40422674 317662931 480803027 839681045 142626175 567213518 723801032 498849691 701429462 292094947 237129208 486101836 119878553 686400213 453498377 405199551 619968687 558821711 662753173 463932728 824779162 579213920 952903546 977896159 949654667 943800895 67618326 63041834 910862170 951027103 712648389 241290280 95755639 650741880 124574718 353514891 927961638 654198630 168381046 406986146 826744225 180624279 243356723 638127483 401560758 230892848 973303814 69375727 582316114 413967980 51358021 662300013 474249690 666132623 993487189 507298313 411742254 232019631 937928753 393397374 251033399 8326143 43041526 122478369 774366117 180658308 225926461 754785586 35868028 267561193 469882925 603670911 916217713 508962149 957634284 763292142 714015577 198328842 403467506 33634423 417266951 409163622 357154595 829071259 864826367 44601498 649498259 618384966 70988376 956001451 35644097 859541538 855045173 9851921 41520751 554519333 888716349 288582083 231616640 621004732 728055048 991963806 871669112 258355827 639801585 836060618 707715781 325136856 226121499 681686621 252565414 343699770 126716189 207582055 134484252 5723618 370188491 903056427 830970823 254138273 5320787 9614989 182128804 98355204 17602157 154746261 421708595 150527260 311463638 618579374 891415562 835096646 78612536 884450886 774687253 691406716 671941096 405062863 341903774 224694269 920048818 934351117 568914795 145397841 216778172 561320230 602277441 655684283 117323926 574725970 261544663 976904702 189073590 273639000 826187335 823936010 593435603 958059202 159904472 701214075 582050098 192283994 470957 342556608 499706543 201318585 764605618 847103937 946732663 805004065 784409350 337840124 588177289 729122203 130949287 591890754 507696684 40039166 43107473 977389055 901494409 212575616 855108654 761418602 805320075 423382047 681242310 841553868 332311984 355329562 320013125 199571908 330568408 702292957 190997796 345341359 588143527 532673711 70440698 110003367 563679115 714401999 531218944 663191019 471796853 894959438 233086085 707109845 546043185 605495920 481403754 611723267 952480871 61197406 982951411 400422525 706556966 270157919 214550174 156005544 537275847 117373774 664300649 191888034 722678439 260864716 166561498 564988239 478321265 458015583 738226122 722825012 61644936 608483307 46426933 962075394 358682621 45066871 447590257 409250965 301390967 982747392 686509277 583817980 211935838 120355194 33760184 489112364 946755940 282362608 493437019 233803965 538508203 164314520 615873827 213850999 481872629 812938427 231101072 266693466 91979892 707116335 520904524 359326724 80877844 276442758 508396926 524767713 149182729 534192519 698100637 556256205 458917793 233042983 893896148 699367658 539853697 664493238 335267434 918243558 840220508 202270140 363369798 444668317 372475714 787706168 786818877 706423494 399382456 987824837 795971141 219197814 553482878 361568366 453132481 616805866 796520448 657248344 384793981 585619391 456985131 720460358 852224405 170015966 110984579 947690581 200738332 366414654 361034798 591364909 777686871 739505361 664271817 809719821 871063899 81133532 579587132 598486422 461266800 722374508 928327839 192603953 13161843 651520781 138347991 523165454 974874375 883766145 212821300 617062436 236080872 827579279 526766221 548991548 839648262 948107837 122779351 285643167 18287121 144923616 653329135 700103635 112769420 817503678 200433104 771687053 483483808 585915499 690374233 826436025 870340232 287370501 226346799 610759344 923014915 376308545 202745625 998657653 410145942 433395729 317918011 29286526 399172696 246138113 731126187 667493186 918684824 158763499 892138012 980128734 976860232 10046317 769840097 389064489 12620862 670496550 70917118 640555427 211833531 850070196 356289189 724497342 903868128 193690166 836423252 961059060 642329776 462061042 506916985 889895173 354731182 512886574 58810792 36486666 746467531 945643475 951131138 36670421 255656778 360364243 982675537 647870668 705477262 738845048 619403670 812293463 126774640 509017724 166561682 567063795 450289734 975962785 10749653 387305745 762881945 40400256 709837851 330673693 532596960 136206285 522413146 597429891 899379021 814721968 368626728 869546120 796709903 442418220 461280155 471521341 168172057 314333162 171130418 964435535 168621050 203739872 274014930 706090849 505172889 385159097 903405049 817035486 228422403 99199833 49236967 294702065 757772376 863455704 598261877 615757572 8510389 602890075 286446349 102409738 556436669 962251329 243091945 690163183 975624259 205985748 766650245 734710736 305190003 173873429 504523456 34902301 932077476 292471301 834186661 985690519 70322476 635118807 81575816 562167750 910850460 735935897 318045449 507576744 744079849 545814628 508247753 798363300 443533786 945445536 171773924 436587798 232983047 177479835 62046540 763340504 16033638 994053225 418346165 778467345 867585899 497706853 793679540 853648135 800324441 263453617 354620607 780339609 671797590 527942285 891463344 352199084 103196063 206919786 457767940 712436442 337499347 169920399 816103974 434661669 576486015 383155473 816156918 60180992 65711664 143474853 580969506 177325365 477193673 211883918 19825772 242637294 564065659 649438960 150974087 350997367 365183858 837705194 56089042 97726277 839586989 718074780 779803975 453218399 727062080 394576847 647235970 762415371 753971154 591402097 939353601 654273975 844979054 617941981 782972303 913888149 322645331 749534108 771191190 591604651 989503227 243690413 407887983 6106039 212844230 402364680 17008511 875248795 346985935 141093336 920870637 845266098 923854793 726588539 674068712 437331672 265290812 281951873 521786959 408721665 11840271 70012729 734953100 869507236 841237231 808122453 684458820 596828073 162465269 754972067 498082854 748350745 814001106 275735635 355314994 501215648 361935621 401097709 993692489 669366007 661118743 676064859 190657017 346914710 944810287 772375560 657635622 681082746 371550212 457764978 754730946 471750011 219520325 640476755 322244227 166282763 58497387 901512013 927192964 291444694 603193349 360020359 475590760 443136315 278051701 703460365 338663110 733641229 402164659 254113461 864036121 729085965 990490273 478587967 755203158 794896252 596552083 3676728 399887507 268013753 838527593 296151040 2051622 966162653 201848591 310575961 845099381 772532636 291798394 991965718 428058904 755481335 176872561 741853621 177930806 737482467 920451855 682644062 273128207 756287363 21014252 989262611 449358369 112902453 422550626 741318950 954739843 237589853 813122 452926983 366694579 522307677 34699168 947525711 859305463 675372131 746140608 46473570 713584730 160674546 616582510 708452165 983634262 481232091 699866546 70106646 924898439 332837514 997355009 690871581 769061842 88670948 615499052 746864250 285325991 760166856 109836353 546776740 256286250 391264167 768307525 528949221 851546835 330606671 594926174 654069674 397349099 330116665 313919388 608475663 390654905 506264489 255956256 80116108 844911925 375198889 538464195 799866622 118224968 983966295 801018883 589205229 869357126 471123531 503332984 166124714 502588031 793131716 775677891 575811903 875702454 224889058 261018251 863629025 643743091 317229916 660243630 222057865 523242633 858655651 583296137 199834734 603842746 661282913 738499590 152450141 34838359 193516121 67228850 267918208 84033673 129956579 252149689 919376855 190623184 503659639 270448239 560550321 686247069 963979840 240852509 734817285 495679718 874446791 710169904 510578735 992897747 673976769 69908494 709481206 574744217 860907619 835021785 765081706 184611243 569275355 619825192 967035330 731315475 416891716 253038508 529438152 344507078 230268235 942003372 136513301 297220031 140626248 905329675 787910567 183534886 962313322 118426238 419333492 965136937 87156260 944964984 82025111 426728575 800332362 422954209 902550781 415224092 717773589 900409247 932969709 875477097 440966140 929104510 981316567 409413392 15282827 520415335 442282698 44063037 361225857 590929004 847461870 82100350 834369110 89037927 816637788 427383157 448367921 100301873 916997883 97829206 966463373 298238226 975178914 761432696 837060266 727614011 755471757 727456794 89610379 80154205 68993971 194332632 914676141 697489843 335328025 854640036 567215493 249825970 531944695 497567382 859011315 334887764 249115326 857691679 860995447 263730157 99368935 164041735 307197455 691184497 427494207 49342556 639495680 561726864 256800919 725461199 957827130 749835318 506221978 940346249 368407599 604180834 737925356 893428306 95728868 728409082 163546015 31879816 213398132 56768360 761810388 113260260 225396313 875532785 511852424 524829348 109620397 63917346 936221498 865435227 958930181 68760891 60161382 218202610 309895366 44760077 371079739 152817416 74278768 227531675 967292957 139432627 899188659 225446937 691559374 918675997 478795008 654979275 523382020 756549220 35873899 724621126 446996304 194312290 585672643 839760383 970653509 112604133 172030584 74249632 431806662 24985679 324577302 324900528 915641563 659364508 814968710 457858678 471801903 113466493 25807905 658316903 33826753 293366010 583241557 716767585 502432257 341708779 40754248 597081301 307450769 266996838 116243191 436304184 123891789 266560215 72494675 404311089 920553141 925989844 163054894 48252255 719997532 367972910 424506028 460548480 187503157 297355789 78843305 303758665 625168655 666863032 748749446 552141411 586733972 696279805 134955964 184024742 958112179 196161051 941186132 138443956 922659348 265339643 756044176 273403128 447367678 664240986 912143237 110911787 144184342 224656779 27983439 97333385 498517298 586616548 69748566 541879421 934566814 863773727 669087392 362049812 567610544 325250708 340120757 539727037 809165384 784843653 599709557 403158179 592934111 40326163 431924598 93503121 592753558 572557919 884469090 63859755 648684684 269961664 736116181 707167657 159583159 812446475 141307402 948178093 226218305 430773713 411139987 389517337 647126500 778833765 53004320 455507457 669587616 79490401 881815710 113488935 680914939 813334167 476472283 492870329 955688675 9844672 158381269 825349266 974318401 539438506 207173316 855607461 575436962 547159060 724517394 120943825 57056244 183997653 887827768 80948167 576385018 862813755 873765472 91996303 623486093 617987422 392138190 760539112 275589559 761268033 606536947 546180514 948776015 513658380 237431325 154361608 821767650 857312098 822130432 719840967 731856625 216364487 451464446 788095329 2206153 179176697 264559352 701542574 591020444 688780590 823995507 718474353 446436303 598041332 37707631 468940300 390458055 378682209 163383961 36754688 203468105 681315684 232958018 457014443 545621775 410255520 897510131 842484887 453545396 205674577 992049086 27879576 978621943 233507048 494930541 748550512 615239751 856774205 503542066 626768547 572530299 518601172 901265840 157058263 174174265 49442067 26469832 990585938 130939906 626320429 889356380 721341898 711311375 823146322 275879244 922318030 242158022 239574268 829212181 737636423 281939688 503554949 884211113 906936813 43294085 168397683 257286937 697129526 369486222 780917962 883596172 573590937 758809527 565143436 373922629 348041176 555166792 524649065 247186721 68203677 105749094 830481816 962712360 854316394 783009740 210915795 895002860 333517127 804787657 975289144 90261073 283737402 769708238 677354482 381593374 798307091 375537252 923452278 378117249 208526875 163426165 132487932 664297902 242868289 827253987 766917792 455996435 604541410 610170454 278336903 771970301 160079820 360112655 337345117 346601555 151054676 579347725 230292885 570052609 669810237 259493277 549786224 868595748 333058176 381593555 541388293 834969014 619023405 934158100 839729560 349012200 13844589 850694217 509987484 261458787 644379602 47290373 44147798 24876330 462530963 449651842 523949652 921902982 821957451 335553268 132150210 346086763 401037140 22395787 886155540 480870512 37596968 85581560 852012259 914105300 765520319 638516640 804218859 39515809 622914759 128646803 685447270 558724949 762106233 186428069 549613380 351036576 558381431 630129329 334211868 799462101 463523801 511908401 136077256 197390981 268706377 486910410 706536348 843906720 187482380 337666842 471080428 146254842 710378474 252951965 533572957 799856732 291847389 414103482 952754386 330123708 135835842 485111456 891897805 5711879 618071581 740663989 634052780 937015700 246246796 482031316 293332622 597039352 791626358 396524598 385737094 97373828 634388426 220753328 85860892 850616038 998972750 470288506 108424544 353615508 801169594 216296097 943712272 664406805 482250091 852635117 66780769 974044293 511557898 871558854 21360406 337869235 534786723 911883910 904712894 34927957 169292000 940604819 105530640 351129035 36642988 418784285 374588444 105301837 26844664 949287630 984027414 661962335 524225724 242982696 604773775 83448442 849173222 566338346 15583687 147762311 632457302 978397542 996283185 193181874 123611568 241844732 883893690 202619010 9973048 248263156 801326448 286078242 338920329 736478640 889324801 954178491 828040928 229705692 706759057 985313961 752433331 34153275 579833244 238286477 374577500 85979231 961685200 599208215 297981167 479739310 388770397 832715336 461100629 544299652 569757574 271209443 687633646 595621683 681056918 983847432 226053773 55150592 595819419 815208975 634646561 674636793 540276250 353937973 379511722 380132619 750545105 571382738 380453343 61963335 508312377 160689242 749808915 350661629 595908504 861974426 72076344 236953318 9444462 196471809 199500964 331033662 405944504 922501622 350501232 568120107 694194515 169797014 123031351 410565242 78299866 624108049 7337785 623853058 745889579 402681761 459035915 882822013 955226337 850989928 539132563 402510611 539926179 351301952 745247535 468146226 842424901 314974193 115217149 430256074 237681272 736856969 104433142 505378659 208129364 866810700 562660232 425785153 721673574 295663045 788351725 401130854 133591664 52023133 284625322 292972888 592033232 167464997 862455669 908416167 885662914 246678351 121530501 79939950 54340888 377109771 808510851 15231845 65304981 774536739 235019111 323098091 147316622 478258094 852963914 778012192 561908875 402242441 22923555 586416228 976092621 730816943 615981742 808760018 908689094 113170233 513805447 57627250 167368531 532667883 785371121 502932001 300029938 282491363 226774910 769046719 896067629 264177494 160512685 55312503 35637770 420625027 662529845 154871713 909006426 154843338 867956141 222368006 746915761 115028786 885955603 965650355 569572583 559293208 334039587 281857187 764712778 695901622 261286609 327715850 274027370 97749286 954760338 91199691 356612423 796197338 974832193 617519598 940285294 611446040 881365635 432743417 357469979 691195181 675179468 63919871 430732694 585212897 441212770 494770798 382305237 654002038 823680343 606918714 691600261 989009021 788902965 703995493 755193741 13230263 512113816 570602347 256054854 594887255 802438694 892771544 782650172 774805577 836296530 745561205 177601470 820229477 170775622 97493584 572089589 832077936 625413621 861094497 593953832 193507199 977001860 4537888 147431937 590481624 169572221 165503986 241294622 500393454 878987332 789721654 439817834 599260536 987614992 565345578 71105053 471652757 369593090 335418301 509027246 834743737 161462322 310711639 931146237 215662039 14766833 539965235 524430648 733394388 487397467 874875699 740481584 750243021 828309729 515128348 954650844 654727407 995726693 622882594 200997469 546246539 451511406 219878352 967337422 464996559 894549202 583405537 871156444 879829928 321335407 445733602 603592324 17438114 969788198 560088189 975022208 354380789 180735344 708828668 564084855 664016952 576347070 856480823 724377161 754399328 631421804 638027672 556697184 164307319 317942888 188165634 403473696 477659481 998211130 286160179 900772499 652304062 179446614 493182345 307860217 869774268 728199805 977353005 933092066 973604258 393024757 828314039 990344849 794038272 362292877 678704795 472817472 466801817 32868013 299848337 702104057 721955185 886923031 670620269 748234571 135186427 841480826 282801852 392318261 889480753 267815737 813091831 114885888 645230608 127681462 664942995 376639937 289681289 46104620 708880817 165332318 313462192 836421361 5696754 464827542 530036087 439817254 582994237 315268658 497176009 642364351 908440665 471639120 201417067 819564053 797785797 878949552 331427808 202192872 662781921 290434792 669589009 284259341 297731076 128104213 312070918 897455924 899137569 287018855 641152035 312947945 829939985 646254154 751559721 685022838 756943353 545274695 494795841 905352667 959645434 604605287 850252018 168205840 10731053 460988707 363029617 399421750 227648346 7631196 592888313 141233970 834256510 316992382 982895827 111870459 581961019 98178968 471882912 507784592 665999996 924206832 508747837 184661730 602685854 308574524 242685797 366055403 440852264 471249506 112486929 132257861 137484313 545525690 878424343 99245476 371241249 388555273 336748467 772330475 224638240 3757864 182442238 71968869 786344254 430191284 46224951 161805697 496948510 889545970 191719616 26487280 561738153 603214836 595260834 614443602 513909793 308849322 592877480 581999817 199981849 183490817 330737484 680023548 205684148 325169297 347837318 789011019 454066688 288143508 281847880 620562412 28812838 659856193 489055246 160189377 362373982 200818732 71184029 805746189 373028802 508420946 293263682 379454174 884986812 959492902 566077236 1210937 735598273 194044108 349625254 607348990 931559678 9705930 274960166 566053506 530168271 457240980 903126418 851283047 226690584 736357020 694931085 507031383 767795263 621695262 740983611 357185397 786178118 299785846 487527083 860841061 901994406 979016577 444221620 811201126 801200105 814845677 2380659 989406211 566987255 788221836 967176324 913520822 400023773 993822627 999374859 604226042 615243369 954647536 274496679 764697724 64130278 68542081 322169770 128469900 31805067 846701202 347360891 158894156 924791848 740590933 660813873 32854656 765161982 751674807 143311262 755249037 474989642 385419473 203579430 298836838 888251943 416719520 327012226 236008715 110960384 912616773 574231851 949985550 728517689 801836764 940746884 615063833 962138947 955731472 5491965 251959626 34676204 387431934 188061887 878848366 987840861 276566675 784648372 129275104 325312281 288966331 400114996 467419083 460280281 265049336 9231317 940822244 86283990 57350987 752060729 455291045 748822914 53934801 450594826 29501348 209829879 356784242 98847362 329946130 571646575 333372894 63672773 381233357 758844960 764004805 77725187 204677675 872771637 406915357 271265055 177917770 758903530 181933933 492638671 470335415 219669125 537104664 609351882 904687574 647583586 776158040 591923586 966230742 726205309 841255249 841242710 994645162 178126944 581987056 771373558 959963197 754796880 619365299 224160084 968992701 573270458 864587197 527288251 151169131 769523248 148405143 410746055 874677160 761388370 266436017 341351899 377050672 349791593 473038694 181908685 412401112 269126448 572316473 598093163 588874059 293422546 608369704 968116441 446747316 822002192 395919637 483031882 637755400 809143479 543845314 852698281 397163743 128287414 633969028 379315781 50478111 392690698 26739253 809730214 20891770 612489926 77104723 407583411 44769494 295661217 34101915 598462783 112041119 37448091 55239355 367893579 338856720 143291439 661824400 763833417 501233015 296965150 569483860 799987430 709075785 939863611 434547734 236485705 332490701 472344188 793374643 316664595 309641268 543149565 996444635 555966430 294595373 131237152 349317630 215766501 851442951 143429119 59832719 884581623 714370712 845491716 914283023 134497297 2933907 546309943 48497807 836841693 287664067 446507894 899915555 600923471 748910731 411292875 260450380 525550052 604182142 558925001 821144314 50859393 254296811 480099805 980767434 295446055 215948270 286990427 95071471 354673705 314907054 896333439 386344509 439904059 141046430 989314921 723559061 766206592 440935795 939321679 170506807 858955417 510971157 240443825 46758629 43745129 639496742 496206787 523164099 836991211 561596315 159746927 652241939 746873881 326465189 81058737 764289212 277529222 922981331 348111458 148947436 706762460 200895495 629880090 965802132 704397772 325876180 269639561 17698905 195990816 289584411 122995926 23772321 880795004 100058170 370547110 305948717 328322026 704312897 834335226 697474698 608844546 731865963 921545259 796791581 894409121 507674891 428629288 126765907 157426262 582178514 390901357 998452942 996837871 544233996 125342503 603443252 721620349 249792035 605722154 84933250 525808943 623790020 366171300 497628551 759529133 928419962 36450009 453656513 571697810 73246976 445646315 516510134 407613248 508953067 877322796 373334841 665895447 678584855 894106083 296304244 479736633 607805271 203282233 74105173 529093987 216466937 938948671 597888664 234009032 61510422 19632537 448728157 591375246 401710999 941113671 495248636 158375721 743021881 181940234 734005903 211804733 264405064 611145665 158411966 709466130 560851723 342372854 577741147 347367730 546257018 608057672 851231525 895040066 334606201 832170537 782183782 577651032 330601682 645962514 454586608 58879727 175934528 161179144 784753093 555189961 285680905 174912739 350432622 26415946 881851584 900371964 956014940 358956236 342125734 779080386 48614011 935650004 78891680 481908848 736443075 891529667 128196238 716168363 847646467 603741639 864894071 147529906 202428889 365622705 77173844 36774601 24292894 164660573 401789353 269056129 922089457 585534538 437016586 635696778 808596530 824471235 146869669 619725200 209374951 270974752 875268966 188913977 843251176 156891849 495024412 120054539 513449502 961609767 821155291 211413286 254958201 718078627 477476042 322745386 800932447 144718616 636683738 519479116 692376234 375842613 116683659 861181830 31610385 594826728 571355290 405724436 545328670 340407153 515690097 156162484 307562944 731294676 554248998 656659842 919517000 166603126 92888295 470555886 675405501 498704777 624701487 834944899 845676914 525390100 323200496 177966175 498640302 657623089 18113653 491142221 95639000 770284117 589577446 985618076 197949681 194149028 747635512 598202675 440103156 230524860 435658108 742567534 166360267 938317383 55751736 244666548 559904941 690479983 54102533 603670236 146980724 676500007 414003255 103801155 666779314 848155157 495250260 517108855 604198016 538570359 538578798 123951272 25225742 196028986 963551470 896841349 210414534 465034832 750987393 873785678 998716233 264714209 690873331 369740899 659193249 754095208 659375265 655167133 925748745 346798025 427951498 7785715 67801013 720258085 123288628 539072029 386914087 22227911 797099601 81592679 11437689 419479672 761563762 12314113 910087068 504302795 876027902 6888897 983580706 543790337 440448804 902353295 644871884 658188160 20049161 871105406 35649843 291832859 717025426 717335069 821935402 269569774 379305940 877172329 59591161 988537113 46698053 153780728 871997685 478901850 643862841 331257527 156417418 132183977 278168665 210131365 581784121 44629761 287047758 680462921 727917510 685777486 191785978 695068550 751105115 194306404 242408855 589844898 840354612 588532839 9839643 365394596 411129278 170272110 513923622 722534662 524767755 801369762 772074022 430400755 856275684 646510039 511921658 304675448 918577181 369816993 117259913 655675793 160345882 691467478 241286326 591302535 780886013 748619777 903003471 69675718 76855087 625133578 400711065 402113473 909160507 64466155 49466103 293209861 825632794 825760838 964082050 560425463 479900192 703762353 926802241 462898759 210354908 64947844 439764009 909044920 342926542 116578323 662150143 985706015 295118575 207405639 77552418 828821293 842709104 913452335 909965689 275533676 503572743 460147550 599092258 316293958 868912392 242133590 890486562 639878017 628819118 822820090 198747488 508702376 44887548 94630924 803052559 517907540 181676475 630199377 235622422 909717299 562667953 947563650 326683611 257471580 757052133 408532663 835734140 25100907 979958670 833798457 119348330 595866105 334252965 484736715 54134586 785806001 355727848 552590521 553293926 810004474 662223078 292029614 343398693 332149520 747861552 595659676 407869835 848049872 281388279 509651419 34697469 81033957 524794127 891776530 673174739 574654870 563251884 649163387 670593928 144275231 183224562 182536844 365901949 586257032 903043199 598188425 743394151 174996786 523869533 630759498 93681631 332950040 820872385 864154391 657715061 989127209 60874457 61297995 861850973 321506007 523715080 257917611 406676792 38758373 264269846 852053530 117091929 294793147 721352415 264128334 774382267 337990056 597669528 15646311 242886970 610416673 686539097 147352640 256902302 690993521 643822239 894456817 246882896 563979742 912165026 192938466 715410965 749209389 201327732 323629017 888199996 29052248 316139931 437741000 994629792 19974153 8845837 297964409 333903481 317169072 80590430 417763791 345000352 949918614 105381589 405774743 45916292 407382294 666413626 391951887 994321246 978173925 92495649 520678897 751730676 55497088 256568482 615835804 662837684 558979753 773147397 56896790 970136941 429873963 910989271 957694663 256399237 109339681 980720342 416732776 378202472 162831405 253162848 128837195 863752959 438712127 14364891 461205314 468188993 974906531 107417645 285530388 955736942 545210926 924521682 348845494 198930055 663152214 399752676 149931321 549403724 254802674 120107782 726508780 333992803 791375060 223265363 373305389 268749336 479498897 881801321 656696693 7805241 521113793 237452824 590240025 236716620 165027876 488793880 704038974 895447711 454358587 877547116 455378628 406111771 341610734 483944913 647976331 564559844 476083650 183764059 820094194 830727525 596953257 641433715 170078093 77145993 348523425 284673013 84407939 937940446 295006811 184181362 727602500 697729328 189536114 92888368 472723137 675200078 797727495 777572625 338903936 998249331 366764566 689055305 101696752 239875785 710168118 169581178 955265436 367988305 880374756 341247622 878380424 118413940 356569051 42705521 440505704 186322978 601109016 361102645 183746575 729747012 266299602 697745499 350604751 221145189 16190007 732823783 945902262 153029901 431310500 518406656 531783827 678341553 49700527 51728513 694563388 547609262 761491677 715774802 150259907 774693374 155229824 990020323 463294081 902416462 871763605 823216982 933926325 373833516 11290404 64975612 752179003 979469250 701542101 395460426 311617160 715110160 231039641 677961888 902181021 270305889 263700181 331930202 199828631 531368756 992402778 136034768 315943624 680470011 506930998 299572515 301651594 366431165 67921099 496739384 424054558 607082751 671545713 983809512 353019754 722009489 839110137 413456548 170146229 187409485 646979127 617601090 738691260 702667023 74119811 857235746 185481712 18394389 314956343 159080626 84498422 533567883 503500324 113436215 400410331 458857667 841563716 200533735 771147661 372507303 445490256 457720188 503584830 655400521 600155766 541566942 390002294 343975899 727304060 373570218 604828466 24760950 567303088 2721919 860933555 564507568 100627980 514420988 461871315 364058603 792187136 20973851 227066425 470735129 569717604 541259053 189497167 540591640 252162872 310063914 117996193 119249369 243316878 444313569 689813046 577365438 521214166 2381531 858940354 713326533 775135469 652406187 407206292 762752784 508453476 126373021 260627060 54530018 906947532 990765773 170676591 399742653 124057718 908448682 752135559 561278293 148170111 288032928 784139542 558056809 954603251 205096492 473766820 237924081 249182343 667010079 485118750 547570298 253742125 810071269 296101336 709377325 314041612 267662272 468846464 147603803 834645393 513481051 905624637 662936662 866822309 540306697 8691604 987457864 475794715 947271209 949473018 246497192 779524064 42763590 783598710 209689368 73969926 61833476 353100604 513513261 830678758 535511999 595538544 501473330 897398264 52305474 404800064 194833382 612508807 576553235 813040287 267088337 234061060 476823309 792581718 779079990 87472569 313026585 303787036 22838728 591142890 990573858 369980396 495958583 121643770 767357555 977723170 559989078 569123515 631391405 715900726 612323287 107143171 224764042 777385237 74519416 94380826 121606261 183022905 415871527 779152622 573247394 796980446 125042039 855048801 291584101 295365116 223415999 285689815 688565239 303478261 356135538 589657065 421198890 200214021 809277062 631357891 105780534 416790089 900936204 228890320 462108446 923672488 283654503 838262156 378084843 940307300 715627884 81777683 445036696 130689155 278780172 306037792 758840291 975943784 933346966 309859675 493558086 738962637 498081946 334130024 559639347 192292228 224493881 373024823 394296938 601625089 386596252 32886576 637909936 942337929 571676657 794220035 300650822 863024899 700596890 341235432 311505205 967414095 525341247 880825996 824726974 938391903 859370621 756632471 298920552 914938284 431620183 931667595 746728585 177349791 548172399 661003206 7691141 451639176 463075139 652520053 805518304 982148797 420876475 466687448 173625682 815916877 836397293 945701671 95860388 582987188 836929779 576127855 527438838 981449191 396742266 905455808 2033971 437594781 311878732 737106986 878710242 996970859 386072743 487220003 522547428 244134946 666277870 13264013 296095646 669033791 134414758 131322545 721385021 20049927 447709471 867541769 165564110 746759564 487602641 529865549 302869036 873473329 90011677 382616787 114004236 507778176 94338674 821159814 327859733 426714962 174370567 193688139 31346466 202641538 110220041 426644715 884533534 845582072 282953509 281540056 585946370 4347229 78880163 843095317 186640017 158556682 398571719 435162075 157564630 96018962 202607505 612669548 806158342 824556913 75146103 828528092 840550030 926105345 453480761 559347077 495467783 28756133 254781335 61046831 885099985 421706361 119805580 634651254 947377293 853280632 217125589 394602202 193235888 515073350 600151306 918589985 179965263 910858897 7052107 412052602 895651228 956085531 817475318 938941058 843136556 792042727 919866477 334779718 530850111 917563298 866713421 532134027 782237293 426027107 402477075 796163735 601493884 566643828 395380549 866092920 549982481 888004934 645997866 984284590 36176155 858824093 721144834 404145241 940173545 104402153 830362578 349213888 90587829 841294798 729907167 738322024 7607465 90849685 337287506 618234132 157398120 227528637 881385471 147375032 562748661 775378450 69726936 823550448 441221853 375819080 252262627 444183805 362920980 385765386 224883708 142360505 579953724 504619476 62852993 337291342 955821274 51948155 258995895 268497918 44325258 921145059 60301839 369645309 338224834 539510687 96670365 311290502 461729002 624651687 443795059 865473601 754893384 669656833 744324395 658217026 606449683 977258322 355280704 189434678 829022145 305723843 732192818 437659200 63788377 683567774 329936656 143927098 703273915 590461312 183330308 115468330 604303451 734062831 281288090 254120221 107782725 75156488 286851046 218877369 259232088 728025312 165808577 866508306 291483476 802214411 366149805 801115003 478222522 266496451 918227081 724869083 844917472 562371603 796099627 182957823 68344748 193482506 534565841 928999602 345567629 578908564 896131124 778309231 519059112 290901809 684730657 490293492 329969807 26108963 809285291 504894191 877966964 275506336 877940632 149787802 583154417 974297453 429187248 932449132 271598658 546021063 601290689 378973164 73235244 466921911 671520735 270230658 832399395 72643152 32447585 422578033 420225515 61819480 86955324 168164199 916757865 515600656 168459920 967068376 280913272 610652454 63677032 223708823 466253270 786631984 993387041 988603723 674528274 528782139 298762219 726233487 953813106 789572719 752918888 404001691 602581363 462369418 38955680 565852375 777308582 567414745 703744493 444338713 345106734 689900171 514031925 351054463 355201753 427534411 298965748 559969413 708211618 386180153 419214624 842987174 229951258 924129568 777097970 357572379 678274058 733820839 981793477 592427076 720947612 739907006 601566149 700029053 250463103 455376208 636076859 428142420 45435510 279629541 758380177 284727656 384141911 762714400 382739839 360988501 261520108 767271091 877999972 621262724 231643006 754234192 214978143 161607411 207689096 927797128 985918652 296681082 506176517 147146748 918732952 661620130 486980955 683228541 337100934 764108361 639424546 512239148 783482369 17563059 578505082 806660865 805439134 792903759 719362027 350558641 811302225 194436196 90622443 690233786 329265166 965425330 847677579 29593559 632974641 57814326 846412899 726419282 579737056 757097846 900276701 949381989 865194451 355069110 747587463 120888573 926190157 983045366 918287244 592850558 312995172 944891571 726770693 927323785 741747848 396066133 491171216 795995478 287736824 312365410 55910073 324684340 776777846 154389035 874024932 761033018 822476920 781181053 933851653 808738543 816897605 649841696 526707476 83179125 932989513 587535000 835780077 939843363 672774713 280044507 821422934 981521018 834533880 14450948 102573209 375630880 708275556 784315371 41364673 830925689 958246399 284932227 435746067 985027325 199795882 999778320 857529099 95292433 429794625 556475105 941259279 73921447 590868742 384536994 506692821 192711781 80646786 800802905 315911171 461290533 280333205 546430105 824422898 931470508 490083856 742672284 662193308 149093284 394910585 268367188 396617390 739377321 413202803 37828753 177406336 417233288 856032714 801321617 179942447 885730948 382824149 461116340 74547778 476336704 940510883 349590628 137182871 924139258 573268869 74601420 949172724 614326514 316834757 804967343 442390004 474116229 545650482 742751278 856323189 614515356 715231492 342850609 426820107 804721073 672452099 153622393 576502453 800791991 208025170 97928493 165854682 228572036 718536699 207044575 841634550 425111026 3694397 53890495 85106019 570324039 236840423 417849583 665490960 213141659 840954114 744233778 82052843 352107848 667378702 517035855 799143837 883490952 49881217 886416618 969876634 984485880 699404116 134176038 602276372 618897232 295579989 519475688 117150650 216535784 861950168 965193770 791538857 441884580 294762410 367066480 587821585 878858137 828260043 359140843 78041472 946216736 150247417 477828920 703051397 884397611 994274487 277853883 420055143 301147263 253881367 334454744 907576829 774623327 790975688 867667268 960525862 801025610 169640624 300064146 43281875 426274706 381865883 864858025 664912592 572039689 643600404 155795422 695221276 774335437 870614050 340102037 477484606 402924052 565800192 308071012 166423482 572267842 162897974 176941029 17306151 538281342 645131355 940950742 686918927 593330731 338392352 182416264 869673067 943244880 554706784 439991185 739125160 301572268 743942821 263498080 73612582 209954556 953891335 187839512 420037653 406056456 902983663 426036119 411132107 83402243 388463776 38059570 876222005 285241833 605832382 103561724 108166257 377897263 727964984 974072030 960241234 454697865 777585198 422913502 142506672 296090577 649389828 221382672 428317883 812742434 780511342 242605325 325206388 667311593 403754320 250249664 399085109 940686960 135651791 344528580 557414314 693332433 821198633 242011313 927793102 150399526 358090980 8680174 797186186 270113494 508532192 12933814 842533639 554299641 142985607 93767626 668262376 962158648 69894852 200405591 891367714 483153496 744709431 738578378 684754500 63793417 583238446 900805344 394496845 931009228 705036918 186527347 364734647 27585347 540122271 585452861 380608596 347342162 381871622 885440012 417712998 501154949 722234603 767005437 69981942 264790899 900345406 780599339 868699988 792173287 745846425 512191663 527915048 113903429 397077550 971656578 506085737 150303765 23522751 146891897 925174150 376952841 170092859 411526330 947679748 24950719 327163408 48087521 504835179 648875593 493145713 416910024 716123760 87026110 955029874 153658559 37437643 126991571 994869050 665931750 979543408 338705577 905869525 702996602 509684137 708564115 736010634 312138844 540338473 995343899 446964783 277419567 580295267 276215077 398075933 544789912 255448187 990737394 789736224 204790066 700923471 128905914 702771719 266696848 960367937 611718038 633849649 245253302 882037430 662762264 248206622 742679301 193467187 484673181 235207605 444737066 320629268 140211864 400052389 783191880 922887148 268259817 183755396 123064930 511659510 296166990 310497371 720000334 979921218 800023115 67662565 955035896 173388542 644278457 576329011 510870410 847032897 626190568 521603828 518169642 254739939 914458315 695854000 433729400 774752934 407597104 406140730 256793411 882636197 953083394 771353985 547835537 621769764 644643414 435182956 691256939 403545868 773043258 6974840 835399084 704303786 537017811 922504433 378622592 516845012 284980125 96499279 562964920 997497009 569250421 385224481 169814230 21333573 873286021 672254766 147526457 549286616 820714277 633799612 253760201 36805193 187339221 543309986 563707355 852208472 228747985 747405910 759704941 556228237 461423114 346833829 504854668 814276688 733927639 253738553 33978520 306982888 904259949 623082348 822107094 706285528 632891275 242030413 983005339 141241568 169560780 743102242 442623433 141737433 501423457 664446731 532365577 668970612 107200248 237778031 813422258 480250311 870486173 506785529 277813271 852648577 129070769 270426945 987158570 126469156 826601657 650128718 857523967 305335770 814849368 768874963 533985446 632043526 950424676 96532845 969685791 787124815 641824833 356590289 163039003 649135985 545957040 913758465 892050447 37156817 400682247 820827282 933378757 907638701 534584818 952134528 142777365 523312381 802502614 642822263 684876616 777844326 998328123 916494786 612619743 520562160 962746494 93336785 365365947 287183873 918401505 697049445 384602030 60640892 72998546 159096653 818675295 151991804 473668777 358441026 500623798 202499692 520644391 583643461 747719749 954980690 513067055 740917026 595082304 392287178 249916097 296398339 186852790 583765284 956784777 507417826 134544858 476208467 64953177 10555166 113684415 720650082 627950757 431472794 356799060 433049031 742384603 175318109 140257122 278030789 271880381 947938522 502532039 317153420 775073480 891359997 496035495 876683151 531520784 940996779 272039166 705104648 201768789 78467589 225140125 404486515 833887192 66228539 109260557 14693675 917313767 199642131 367527911 84325646 266738405 576817177 696639858 406193490 119725002 887339335 997193864 958365092 379112462 937454436 181978906 546317791 119592162 613207809 22722773 612068144 854551486 633531771 19005248 591634999 830029757 862507585 24676204 742393212 771833474 897155936 799408523 145877796 857483991 632878256 292319790 557209770 70001200 732101258 843110310 86873058 259600854 383982108 166459834 209038007 503246033 394643893 876082795 988051480 356740659 555287310 304783827 597667982 405151398 102240654 128263600 566703704 365409946 548929685 814621832 862917271 652822425 767350651 399544629 553638000 185764736 585571119 985032567 876339274 698404345 649814288 384932497 417367557 797480280 557544990 437690567 200009841 902481286 262177821 485668450 451874076 941732049 284131632 156278692 469714157 625508811 752084635 820208459 754026548 862222291 912814543 722206080 789598161 640579625 99728326 951049782 823735540 341969354 38886453 506404412 65753298 198253000 615753003 317528931 276774218 331531934 710607036 377149836 810417126 7438990 638978631 103407302 199389014 691534885 327177692 249884232 377690457 288770180 168124206 878617660 227707539 944492473 603740934 506283268 96742406 819651321 357449297 396273999 221285354 732143782 435636726 145114949 750216063 460638441 260444074 106894025 556259856 368027554 936779484 608688857 542809044 354733980 523183685 188218673 917255056 937657035 294560138 791377709 115020761 970214647 768048001 531159359 54508722 387762062 784799801 83711511 29615534 676459532 681247842 46125731 188624568 999030330 701204525 442042284 744940028 942239603 220901811 235675951 344257783 679635619 35313222 113622799 908170501 70212245 407651719 333544102 847750368 756734256 857441047 312804244 403775077 603440956 907162843 25466314 510079198 733263292 166321936 750479953 942414670 660504989 251455293 894861761 928279411 73291703 19462006 101987412 172756967 474174447 983862473 959262072 31036693 286046402 149307041 769880986 388087407 42192648 349223305 553393684 563863964 649440295 159986793 941745249 12260916 593522839 227564576 129775315 579147731 519959641 431075796 509172760 728649734 877667368 806487644 681727255 234575846 584663163 928464875 487502720 699692203 869928251 225749843 832089515 658145501 314312131 564722785 637949162 409827913 619468410 796887824 416855862 348339835 809786388 772794797 420618300 659289362 249630747 317434835 66841900 960058497 585988570 409197747 530705998 530282112 763991974 946367903 93790910 775358363 273062768 846933771 724000784 444482115 881607138 725886804 166816914 980586655 403409597 488300364 49902755 692094675 121836091 257667182 892607758 908309293 18530401 919461349 911295151 508207020 520159663 937135913 316555001 349764507 728883336 228213781 273390763 221181074 574853435 838323433 440859 693922330 335086595 340835138 644467598 266646127 765505177 882063182 874585802 811751557 796834746 512012956 159338659 803439938 597377035 49316600 356616632 918448600 71847163 881913231 472068313 256270825 685892609 258579674 162619227 951180448 701166884 606858507 444895554 151132714 832536138 262617620 532013532 204194647 956469541 39232723 896012861 639243082 395782967 993823110 769404366 796284786 775234433 966757969 378268735 430714815 372727833 803484840 294990465 573486025 37140052 807954699 171048669 492029547 250386706 779179209 613395980 811151043 905431733 724888815 318734459 770456327 427145194 811882190 337906995 819312529 590963672 993955434 875774692 288462707 911143119 799116927 813559019 158125470 588682927 400660498 869963494 247107748 442989483 134246222 805541825 768410503 385371232 852979441 341960576 456557468 186073961 144255705 527821732 692050232 574909923 476173695 9590150 699549917 453471979 562383276 405355129 478720870 336335815 440189383 581757583 452300935 211852430 203509613 949727502 863541008 609697494 173231988 958425188 282408779 861102808 322095170 700487687 986822357 999185972 376656279 435879884 430183247 321925293 774758257 769430386 589749116 173895891 943286397 41687563 61424150 60015030 802096474 336384361 262746282 77992024 856164660 916297847 981473846 338028015 757933533 403896882 352082937 456649761 707267304 187737962 324036145 455419363 747517812 179309481 391035284 135975176 230077404 80241398 357047641 100636397 939824327 235196343 963360329 504086225 716255019 266951859 107723521 197705935 447869441 229112703 438630566 716993171 2625642 404727881 700442797 57590777 830493529 747926019 35709583 81768697 130648629 560086216 98076812 99645059 736463159 476304881 584566344 930857568 788906323 975352348 534372680 831697973 837907278 317779392 79842297 148130275 45877201 356784652 359644374 397498640 886166240 555704508 795820858 337995787 518435373 162038445 701328196 42738113 173757505 420485155 640612552 725559816 620222596 676877182 99705590 622175002 232496783 229498262 2994511 549062761 812320374 131911092 217676269 656672764 682972430 97082703 304817634 455404944 732244592 89741467 768691936 950402411 338369470 434184022 728690498 333768875 379818386 905354057 307182040 816400157 510463122 719924690 306846521 212851787 229636594 162005422 576775182 80474864 30764240 12105056 854448239 119133752 904478547 521109848 680467049 473862902 904809337 498364285 211728707 836143032 11367623 600403460 474928148 142281453 506089932 679772872 529873678 76475733 906491586 811733203 701116942 704218637 971743355 125046057 676737366 406157030 672163255 507863814 516306141 138582746 433293943 347327818 963460496 890070091 634691328 110731919 41912883 337805800 371212865 634791045 667734270 799516273 20111292 199525450 733993893 624209083 705345635 197086355 562849800 38266051 349677628 5635415 612233958 842435538 83473601 273065626 336785116 315619831 376013390 584951585 654458920 548770920 291399250 780564245 974794485 531628382 706452207 515179257 369587617 500138457 602186921 918596443 287363299 301221211 763483590 13537556 754750906 547165046 476326615 881799293 919338306 480062543 860870132 587330968 547925886 890933677 215136543 665079191 96292253 944079626 779461494 982530893 722485803 665907879 930585218 27522596 998871965 765480333 384611855 274591989 546630485 95954647 699112461 353812984 744595163 388370658 765824363 514009381 866562651 322442973 697400249 647577351 988238181 42016782 978984782 920327214 701030006 31305985 262791147 788422580 768466013 521347931 445423297 798179942 294833021 520232980 425984619 897505696 47672365 491774200 820185863 392650605 826567118 656222899 94520256 795993970 518212829 842164119 838632340 729693655 280274774 286039023 728679293 151621194 650497946 977023016 480840007 447729261 930843282 710499147 773607249 923319787 24191229 443721279 177389695 518793850 509702993 709782763 56408042 11163351 743737288 232498174 680602207 995077591 622193198 433800588 557775637 965262110 209553759 676910348 419944754 560444337 959345598 205050193 698269364 138070155 964325631 185774195 572797108 250015508 922998390 344917682 429736208 994113048 523259140 302221875 877309855 979406449 493225002 732535825 779581872 61997561 568415862 212706837 48345903 994932527 305414916 871320905 514993400 350361437 274820962 146854880 250759853 811705203 653153689 920890193 931272360 853706037 52099301 958141046 963310933 843101014 945513472 611559157 253874481 259092308 673960328 12511194 138954660 585514338 158942301 356608998 641774308 9609207 913944243 26047191 784711338 645648282 172684765 474213744 892474357 536323067 386724189 175601742 220982436 572843226 766958642 423457626 685300415 960976791 660437075 855536644 273397431 689464515 228472429 65165684 515132359 189389148 132519455 794599577 928476243 537620901 257003889 752250891 728230011 875658282 327209838 664824539 506613440 798640973 459542497 432130002 66161027 589646071 775836263 957652153 649661152 2965436 981992737 75396127 750817600 988134933 657433139 169071512 537117543 816816248 862652193 319706379 833221445 350617135 989846297 193113969 493043701 704416852 784472233 987590571 910608537 741974389 145874174 911648402 82777128 243200028 432369320 294366706 707448234 388177837 199418854 88487424 254460396 812326445 354641997 366562483 249516381 280170954 510320442 513033360 29025902 950595094 797235123 305987232 879499946 828411858 905735014 304053686 515965987 205546844 22701758 513211509 443555185 16854790 861887993 890621447 655386110 815550810 687437038 316555986 172154497 174937289 876679131 254091589 367617958 180368996 111423247 761514580 731867383 243200323 762777308 642654178 273597693 726833153 709277365 203228207 291094147 982097674 558817888 203612411 343841774 683131913 857248637 144455001 275921291 710607960 399815185 537049986 132282678 864216106 350111495 360641011 445358563 689806521 913865539 703467506 783133125 887136338 153445569 45804539 149049902 271195743 864293558 933792368 984246160 193876757 463145877 839514254 169080349 71131630 319429795 681431102 914873840 354934457 677190987 474647847 185533084 145026308 335233630 265304340 731765778 984817813 652837537 720770904 23294389 138404088 45611660 52143642 193129996 435220319 540889 920354507 168746720 645947966 175092854 689631191 183593360 630029501 561657508 186727800 28916388 504553114 755466787 927180124 715189181 833886859 835503290 65934245 554993890 885101232 938975076 599922737 100423288 97268072 799870905 542474492 556308202 530445556 188721009 842176026 735448628 67626438 33659162 870591247 763810930 606004068 463352339 587424317 622705678 512350719 985127403 405264604 900694823 680854886 397186608 304609438 528630691 900309532 559670946 986451077 119715026 456025026 191616613 2924911 708151917 15378303 310799078 211925434 97171498 657758348 279687230 146761505 68702504 709304225 112270830 210938872 451113530 323660375 284764636 579386950 141015351 663512794 74525395 867073794 532072070 181627227 113168628 21059690 303989443 100521832 197473194 843098451 571508407 900087315 543120595 865024690 23032100 942031853 631014970 597738855 903482082 723227097 564619978 155806297 485673608 798242950 580066382 844412280 213296959 44278067 867235177 341103586 224042420 928334426 213596937 316431084 65514482 117960580 368148618 490524719 425344849 887125514 790016353 103120891 906048002 85308351 946543740 508300067 417571782 104885345 917049190 896806172 334862735 252186124 682326435 859507032 706870417 178099882 23372968 184967286 69262201 478143528 729987539 530174394 710262432 156852332 590951668 927774470 390728715 572352009 58491773 139233371 768459466 25026024 440434582 642984991 856435974 348778963 672612824 568130806 118963557 940345075 893543429 259244967 383201696 140600277 619347414 392156288 211521897 844675331 221602840 662759046 700735515 481382226 394583708 852109055 174459107 935461931 581317988 988812506 265759159 372308882 26213278 118697927 788596264 107996726 965248934 250629208 640616368 506546703 822935856 148097817 411886559 200550398 517109216 688016931 369047197 644090688 145408739 732253386 168523470 749863856 755422477 739439457 886272978 213921966 675874240 655033951 295994638 542552743 364580290 327163149 878193782 199615785 949185872 641165998 424285097 986127542 31183989 637412178 7878399 216254092 846570483 640710836 205195466 288645321 298270578 160322548 403662634 652474771 87962753 430905201 891300964 174888769 117599219 624733275 977916285 362917239 936632295 809952645 525010263 659542160 634488779 860658779 379352096 196369271 828712050 746155618 145699975 682771647 360133064 283215243 689240103 575979019 852726099 777246071 991024484 499583083 700350687 304895104 614502267 836191673 714552513 166078429 178804358 633047648 418795544 719193501 303841549 238738321 382780434 134580941 86735861 368352569 374328623 582643833 967442940 334073888 50777456 872117606 354673621 248895628 506248173 957913654 363239464 476579538 204900887 987901909 919673043 562753022 423886512 333838957 56845637 520264640 678366924 372564506 25981448 309500280 474343251 160078639 579052948 150608246 577706438 754087080 805963159 71352102 225371136 65432132 147881161 809487344 330142830 475612006 981712703 206116488 90484828 638093110 967018534 268383946 825974839 400623253 223800854 530122940 622377337 924235739 968826535 427807457 936255400 860988860 761145964 533364110 813512751 997201239 181262199 464791551 879594251 150063026 378815196 195428430 527253308 716725612 314116724 520805308 690578061 212428072 729572793 869065131 918176108 75315377 68813103 419389177 194978241 327912990 261891624 400626123 348183760 821417457 593227169 395000881 60638122 693179292 36595202 621953196 732415268 501433424 814288233 970187080 296406267 562464459 485467488 981228967 657110061 300462434 774434549 911166436 361016501 959647808 302873319 705611069 316865484 545215581 697778293 967840122 210853328 1949102 750157771 345445987 865107988 262270504 749267426 886168255 717995215 959658399 856365719 80914558 369401867 719515947 618009437 158296684 656710163 981292807 579702975 509516982 427285867 575762517 100239066 392114833 151096135 199506582 850372839 630198523 676910765 793764221 151002774 942601573 540104961 493518469 367726002 785903756 907105179 502134528 488368299 831672643 976549530 897709997 81829059 563779234 174604480 98544950 137316294 61050840 942546428 263428337 159038183 800968816 773165534 23646070 91710128 514999718 276649458 923347160 613294490 987239934 435402951 166225520 762617070 264918685 538026640 44470896 150223793 23363506 302831139 727120141 548694492 513093146 312298860 612745778 116698586 467146348 983922408 140891631 433898050 711185886 987685646 644191102 133482481 179240857 638246503 879234957 844064365 995493940 753688064 328184654 634593216 42489101 713908897 400319001 714150859 281007205 690207892 773372526 161597668 612308663 151872132 667681714 808040161 387694499 607895501 993713293 159362820 463702982 707239348 935999937 814465756 443113431 942975410 704580863 181861355 755763877 823659292 171278986 331525720 145876205 106575257 321023849 417976685 897706096 944455413 578022197 511928222 456587063 669514946 731664147 820350093 214759798 500537263 454436391 37093710 988545046 435597732 684081702 121190603 114316839 896354724 488637737 800626220 734910629 856064853 876820981 615319230 569148801 79108213 122821094 254739471 877227712 264696692 973889153 239599315 6420117 569351307 403549521 431027117 840258868 979592880 575019178 180610625 359987287 161824857 721781674 4716301 756544051 377697885 887386035 391001496 291991132 734862492 745979868 801002338 719498586 171626046 960710404 865088764 689297529 407495230 113142431 441091882 940896021 994996134 518207352 122574606 922615057 299742641 700973559 689963400 433355192 697730903 184076410 530197165 551246006 467615237 687230216 330277948 173546695 375647872 47788485 153613734 855651027 18125253 163362691 705331407 453572700 117285633 170012762 917248910 953539337 963447272 810867904 975071212 779929682 342479146 922993049 148742309 728184304 922311784 417579576 371587860 927234607 967486823 485498658 276952754 21308950 848715237 748219848 151431446 441905136 800988960 649223597 331599723 396294680 837356092 438722015 250133774 530397687 794376942 68610912 615657372 92704318 583852056 41408015 573856225 341719295 641012935 298851285 928818768 679743013 712497015 447230669 496848958 7584641 998500572 124407595 576536295 81818322 783736883 235972542 500272361 869348583 408556646 45398686 711299522 760267473 346445027 599047066 465454472 697614745 740328767 930207697 769391382 895599042 254690291 928177257 310149022 662299289 828248994 662494566 154551814 251498344 526287461 710363769 227627046 228924920 469725075 824129449 631864787 675546701 888381676 472764301 410408322 617746382 199977500 93506258 229481638 359821118 315332110 448858415 126169585 333448405 338269147 575432356 213394247 309838778 562325682 62877410 308878560 137436882 529654676 687354727 635532984 511525587 94617344 748898596 477451325 919402353 396640618 96802611 953089882 442877854 332711059 11511392 701295778 461272666 278142405 92145681 493243531 620389009 245593949 237298270 268540800 211911152 385465247 136780036 679305201 384610836 371087800 278224749 394400304 380620974 452235417 512431720 522679228 749335978 692897242 583270595 165067540 344015118 10319770 913178385 907069481 936210084 279398616 99297075 263433290 120592002 755102209 380248846 382321803 960933809 18871069 227068907 156826435 528225599 528419303 112905704 130004188 352909076 936564405 67156706 263388365 140622057 696538107 445141505 247065741 519040317 744392363 834931911 855562320 465422182 879170267 813678901 809007776 179778513 606175099 78150718 685327731 736236455 826266278 813790237 727313761 619184428 576349922 185460172 261875627 238225697 500372803 421243992 108126829 771454171 74156306 193452741 424673743 192510950 402866643 144270201 668612990 156913543 622587425 757404069 923114130 461850421 142862210 157932721 725786368 721679652 984398824 808487617 583204043 131843401 967461038 736604582 987996073 417081790 911030208 42997790 296948646 511227581 184017536 775658332 364329901 574994767 559965565 435568574 768583703 808111201 330870541 937949599 481723399 55877165 695674881 67018292 859426849 352840469 860400986 650753297 518639726 390929062 362502524 394225021 358476613 557392196 78394468 487498335 222132086 275768286 739879317 371980897 509084513 360808834 480136897 117547608 931585755 749356975 158107789 999292543 211629379 123728778 779552175 980617077 902698993 170197363 474244389 496409148 137862021 108889474 270471233 26773064 941963474 101304007 746789185 394903032 835954905 799637420 937112552 681554823 710256653 336782480 593567692 967630064 330665052 89215272 438198589 12554820 275156566 762664635 647233299 78305576 937862494 91387624 391000405 964249885 344706288 128749100 840551828 316832250 131999233 803676729 555127837 648077807 964592385 749521737 110094064 866073519 266499969 716621532 847849122 118452499 285557276 955352818 423957362 570912081 539457126 916349402 793712848 442218019 955555331 880236336 570968315 929392391 583040189 76851828 416025591 765996814 519923549 775716267 689583633 123417602 179161093 352418751 293923174 947579168 628561497 934203823 678321454 898986296 880803453 625328888 995105660 535703493 777567034 118351935 750889510 176575678 859961196 600885582 77082017 591233554 92867756 660673350 635040467 391502898 829165916 356862961 744673617 410119942 214585442 197080357 957753453 892902053 386234806 342912936 394724099 227220336 795878245 231585424 792205296 460490837 109665637 94146639 131356157 952958103 703334094 25228161 497773620 850295556 436776377 477468861 993138919 52206527 776904356 870998656 623025510 304358149 462790470 162734629 253420610 11580987 664409835 956637703 913501040 788873239 68941237 220238987 197937037 961782540 493984993 263016155 361085244 884577914 722308277 474708874 9343230 25912304 24877323 639450890 252039691 610865534 463536128 572612319 763188922 898227749 458842122 883705585 527811679 919161997 882244569 218290226 126285954 161251581 832714782 392359830 212430154 957518067 2365234 304364804 2081915 522290012 226031560 981830185 663069937 870169338 327820846 884722922 279051106 641355946 275982161 92986700 247077457 104739908 319182941 527618757 156177937 80536512 845349061 633525798 279951945 784013770 326953164 620721747 572644204 536982842 37340496 352748239 476392039 405930404 185418471 709657673 270353404 986776462 407186532 129808031 998140976 110261380 217040950 34059536 617987499 358122108 279988637 637355874 497250817 697426807 118292148 883349785 811594705 932742772 496339119 211784681 93314527 902455999 162808576 848842146 858407135 803348597 405973620 282109575 513976963 886145072 976503413 194160617 310569819 462998459 658342487 984173038 576653518 821624019 619753858 358015670 416501313 65306907 80891506 165830444 631572359 374022713 453520273 5976952 929743438 380702551 877420467 42444346 405848735 800263866 6407361 499031558 304050904 742977592 687798986 513346683 642792491 817972790 932024471 919647940 768514461 279972404 698252369 970580756 689255268 660457470 209598105 603932331 570211447 465478222 323604041 93071962 131075576 394735298 361149346 949735750 533947557 217008578 469450931 455203514 463533993 80541586 835550074 684759590 625761718 919102102 976365876 40936593 610087365 169055963 775610803 823517772 529757975 465048942 817869187 635428846 151834498 181830708 314440710 724818749 38307684 441594082 406545921 348265478 239844722 617790945 106592065 854498375 213671907 543157178 91854550 897017795 754087048 841134866 253807680 354953895 927325416 147688227 524541574 48436988 551242462 62225786 250535917 490327883 90159878 224010367 209955734 315717846 222614366 512639890 385545504 909847261 525457868 82674200 738038719 655525945 193400262 880649222 446430240 867537248 192731556 589484262 838555523 542399721 576133683 244095589 798653350 149933353 790901771 593836337 946286128 352950936 356786489 287907187 392294476 251759759 524770292 144834888 50768636 48531323 637393530 128711677 386843395 414152149 455746923 980908256 662552281 431985090 18048709 47127793 501962854 342391571 596688570 173660741 457849542 279007267 393325383 305526026 147224921 119296739 565133745 307656015 677684843 247625587 222278234 84265817 398547886 539541284 416393367 444467885 921281925 317144228 995060719 188180420 343579631 730987347 465045393 536306274 671429725 705986110 142568060 167142527 431169270 747580069 431905339 583200133 688659612 197813440 240433431 919041156 882876398 640319331 578722240 705356123 965886394 887634951 904326395 440105391 590002824 755326435 251177585 295544321 993387436 800699155 112356131 112695628 417771564 990286924 200094385 945627237 216249170 495871912 127313448 296336312 904472587 755624004 883482962 780619158 122499099 941182413 724464378 594251795 250633682 410521298 339523474 166211037 306586089 908438406 266626390 631433082 709976355 142382064 790348199 744484370 768812116 249513013 287356858 294400432 254283240 638739923 319969066 257815837 842742579 993532676 238980395 693906708 737050809 152961005 788403478 148495230 687119549 242798282 608398187 977900158 998493281 796915510 89651764 722278973 506427366 316151422 466135988 937016991 101264872 106116510 362605229 169415837 314855073 309783901 987445165 714795060 981921566 882194993 263667244 384271787 194252377 770685227 884301185 333463484 84858688 753485915 383700903 492944884 295791011 268566527 433014277 389398098 642795011 760330956 489612074 473585468 445449259 644922700 919631793 148192425 701177906 257278801 598619439 883078506 208961652 51353902 828613889 791415043 501759541 182747426 257164253 914002156 112803504 126789781 117332130 853804803 287618615 449029135 431231012 501486624 486843654 683137373 980290936 499007023 133632507 285455650 795687907 284363048 112238607 868156725 154446146 679180339 294820304 282166234 592822699 719061560 231994373 207834516 653618831 885724895 708033238 197861950 453068357 984117679 568977947 758249488 896258973 129276509 549833683 732977955 630152260 639677421 516581561 921231106 36928865 744135685 720519218 724917672 62337462 565078535 665248174 737474387 490482250 428321370 190465849 861110054 721352856 431316480 896002608 634727475 452683463 435002730 132678949 622807930 314225343 423771775 769057294 693536121 39324563 441138820 774894405 752923670 140503709 75039600 550183306 233458046 226204027 605830616 741262807 899971136 186845237 604814721 648754424 837554020 832355924 185780459 50822720 628460904 122659311 285263185 111642292 666916934 522551279 86112456 655997873 513353559 722893949 770379472 445045092 261217825 673904531 39754102 988900584 102860057 630487743 735088266 298286476 907479005 793385900 827710774 287342178 641627820 503068965 30095517 572508625 431610023 568035829 738411555 594475756 753572059 98954952 742999532 235448730 590410207 492170271 828274451 377088138 288746343 376719047 41821819 103924065 275180953 660999136 501941676 88336738 721677986 405872738 657502278 960336999 466894233 630436233 246852119 36260873 156072050 953175659 503484413 571889249 638622270 528276621 925070047 413954063 883412186 235860184 196487308 585114196 157742363 680613426 399307483 631942234 6928492 84720370 861637206 478349324 691106764 845933828 791862733 408118501 662269353 104212808 577646371 674442304 157122743 600955046 150013088 349237070 509341307 697857821 904760055 793939314 351763102 551500702 951638405 102296409 363788254 111301301 759505064 745450243 58138603 419102103 766657499 867149525 28521012 546313980 445437660 98727823 355521274 876835723 560771788 976877605 649766663 208109974 57517060 305984267 256139664 791982265 384492849 97321620 862434461 903340046 870033560 225247130 352145132 211964610 395589501 564975403 471857267 744396850 284351900 480566765 229134104 168733870 274521489 307769258 637192986 501392583 55626083 55429223 902208771 38207424 158039221 786788540 655801263 677405929 117048201 770509088 171141621 386529554 787952142 455429079 502550077 959052988 161852637 521493798 913205626 915483112 707941812 323345276 268560265 872350131 820204802 35007094 770277957 65779694 488658995 653426277 857488031 579389853 73575747 37442112 308455075 923051324 564148042 194600296 664079044 375667390 786764534 823218157 871179757 104259892 507641313 579756152 43558860 15773615 194288628 252060032 376961432 676408251 217606893 705307636 37945133 959729688 333611989 748774499 722421547 521323190 641550274 398975334 375715267 917361813 568753836 420108045 656194642 450145704 708844068 490252269 797731173 468889061 879943281 782861725 556420108 131066473 579736412 948651241 635569506 197186874 297988282 161938256 610922487 621145071 691337159 459022022 582381888 135654260 884064261 354994519 351914444 982200752 254888403 853315349 178192347 134429446 273615318 360952847 857966051 966478165 991099691 258214092 322925768 605745652 918735261 975905398 77372971 791730460 18099855 516797759 535482466 233488140 986674367 974546260 618558528 713249456 138856461 527190627 600332127 993783127 16360041 963832157 309786653 322803467 97973974 489546530 740082098 923780771 808209725 501998925 843547947 525120748 897602608 304543666 332635439 868590530 588873085 122269720 292542435 744589997 131380973 563973270 959866204 90102240 52146232 784206629 495220363 596573721 793551275 932649995 437654458 380487503 479344396 487772643 265461057 259309224 546234459 213164851 631637104 785859955 187060459 337879743 332280323 365246407 527286299 152498846 865433769 275182802 280276734 638075063 891687333 45128920 84889408 421676452 191767200 182390856 364364602 872385181 366814644 87323599 191887735 886347490 874657190 647417923 448288678 735768144 741690954 371222239 469738405 812254036 769795900 94175726 33929715 387801233 125561513 700304137 653534612 611132993 429171087 448502300 667140962 450463298 226222806 947307427 921468247 238535987 162584606 916329605 365344514 121086056 728694795 444634847 760167957 417091202 997575764 722577013 646406722 920841480 201460377 523551225 594652030 559216316 742737559 491150520 615751220 568854151 306306761 569960938 703173152 743894678 399323808 558897110 983874968 366069245 983359200 359280120 224161138 918975265 978152733 274554822 457742901 150380359 883775553 665135175 863929346 441838289 900510491 323882335 388696590 314637807 951485219 402299122 969834130 338012073 715274975 74211260 199785041 544624287 666397147 320022489 997489895 605963978 799819182 699416280 461769484 374972 346285985 623713164 49422961 375725037 700382778 525442161 865892525 419122822 177351035 524824847 837423851 952447759 351830191 401717880 558830777 511782405 796230133 786480546 854836650 728406243 186134664 125888206 23814851 925058012 154405358 1478673 172082083 763350453 378903437 767724943 659342047 13828090 967569021 979242096 981819199 775771207 414414115 943145050 346911320 901173522 264972964 114096213 420926361 533894470 371448544 975867674 180273918 553203113 133888349 685050328 415336677 703763795 905661303 155712533 347491343 644742335 843055933 464678279 398081521 379842611 226316166 993862941 174493559 324468588 479571682 882715472 4219480 26490696 883857010 743799549 557012007 389813433 588194628 355918929 437972952 675967818 735576219 21327104 664711777 69539488 504334101 254030821 263122765 262841735 25500796 970515423 600879167 764628622 702529481 995994414 627957840 410087791 819335403 586729020 278426911 412466864 468062444 664943787 915186945 164237749 157124928 722354176 720886892 474614470 659538819 569839131 570220816 859791676 661682780 677893543 30789020 97198465 698926448 420272260 404803509 837801923 728266296 673842975 310892733 465028936 230831878 423482912 848080299 424376140 639177248 921517867 361133084 724856343 733259046 410105398 329707784 45703669 458472577 221615841 46201625 158318527 497391271 257611733 156809909 514503965 533898052 115119807 708139431 690206795 611498827 971207491 135835473 697765641 622438088 254699620 986373175 299438167 178867732 866131770 877916258 3086613 621305724 952629922 854207096 28779405 787959823 911864507 773087399 612057506 891371166 267959238 558085201 809997412 923651892 77752893 805559885 779295523 411794697 759349176 225563812 808735839 644050433 491641960 612751437 656493096 645572610 813190657 83025985 479170 538383658 358071305 844306133 30884126 63227234 267662044 712220721 597747385 480595239 156958412 804971009 616920818 837396875 502839083 133191892 532693771 285454128 567781534 837057794 667292819 323288510 186887260 364689276 328686498 681026689 572376210 111084514 568106988 998383201 578582136 806678817 514742961 822859461 178665901 352051535 476964025 261668004 566802821 185169945 584563767 830061735 28408507 418020087 892805645 472643196 910928987 172803012 122655039 996843518 745313177 613376796 214428532 656363633 4831614 205574531 130909747 572378165 759355366 748843238 763426187 281361395 157619579 159426304 948015329 421384836 487147330 85456984 264642956 734980567 288312373 487327596 931569697 197148697 581686410 997952842 150915709 302838835 955937906 236424401 959036832 778964175 561908563 974247514 112826649 237600450 677799522 137422900 816292391 207312766 579640101 495062562 239381639 576979913 688881585 950149062 750416633 11825793 440056294 478110885 785896288 341209333 654339253 722952674 100011675 76155291 668639929 133932371 523877789 792303332 149165885 10481254 368943487 60855241 291157028 877475406 857138078 670601497 191715051 262074582 125079146 970448127 966967007 370983556 861656939 736483974 789159640 867325699 9901158 868842242 572435364 978492382 978012641 803276122 398108200 524974070 244372930 422986729 398476840 673735501 550042392 562898109 549152365 211524073 124073094 450545879 67866932 518493801 626590625 468969572 19833893 12302635 897185244 561787556 245259434 256506803 256722476 952463720 319805614 818259302 415730090 991591600 986811082 706087138 32512078 448541995 615924327 653672952 877705679 238030367 335737706 54470839 43117467 663020362 970108099 21360676 954303419 754757963 105460344 571325998 859078313 938981453 670094092 473671452 44445561 161121142 800028269 66152556 45913991 872973744 206141946 591307604 65689098 474836847 850988845 491806346 861577323 673300257 605055795 826505515 559818430 211210478 911773854 181724591 139328223 334088602 375354720 713881801 342233827 606303446 920376178 258420318 74946575 454075478 793552761 718489026 146575314 614407027 732456866 113746796 250729552 759278229 405987808 982929202 492814868 446794816 788294264 402109448 628185007 601600998 976425423 665405480 889160271 333142823 949469355 508660083 935482973 784070760 913467781 912553370 415259708 131086235 646622488 922313617 733874704 456316741 870551248 347022023 810521896 357632369 466940079 841344654 962425854 504093321 164447998 160099694 234682858 111318321 552108899 513409439 786820137 978152972 969645375 29762573 423800301 420623828 726456347 364805436 28075792 49890453 153464376 650856545 759250951 672291387 962790227 689344903 479750977 637747944 290378465 200360584 505681862 948377467 277198424 484179146 660022204 843718416 503539619 390575158 760530578 688593328 525832298 364261172 212491473 336933812 976766662 248000311 544123457 428341511 996396662 56140263 6937180 705200440 984397231 862871399 657121099 967315474 704158596 540766847 429204909 943714721 905440105 437415993 663726826 191130216 923248321 74909695 686934592 674307058 302515812 66137937 241868357 966250309 419397915 853837042 671883198 459763503 715189795 591907624 272502143 644226121 552445341 770158850 864558158 213455474 862261043 959418600 36623684 954700442 94610148 473912773 822699390 779718307 55652563 793223293 269911676 851480442 806167112 122336763 568175997 235674387 605703746 36354216 729088323 413183285 953301045 635384181 527143532 597017750 236445446 932550231 669338742 401040618 156676850 443146935 777370693 28268187 428057745 204062409 474895435 140515688 330927664 874578821 41663590 86658483 187502072 343014749 436136003 269025428 854668503 620978982 478723320 121988252 947355173 73724274 755816939 317184448 990713382 622754545 73332018 511430051 670387167 710564109 621277840 910055 574004047 601796195 343030487 955664801 658216072 247944256 518722747 23074816 497310535 663174149 222547161 980488666 273361242 542946055 968428339 905995692 259440381 793731656 115395341 51436659 270093034 824852610 104503799 449335871 132901716 985797249 254350656 568404339 515730445 470829858 381322329 652305155 124216992 230142013 641944479 424893886 796169604 683177948 988627401 743538656 125223715 765941566 478451656 262526281 982013184 956667638 56722538 561187771 760686250 74891229 785360815 35622281 402879209 545040373 853742169 824012295 183750 253697997 84737938 458066749 755922355 999194182 820444131 142792133 162767015 499607763 833093336 597458647 882945116 403973860 344205763 890006352 911854824 477116813 544663225 704041454 565409707 966874490 304866832 764851606 752256870 685289946 117707635 983585843 605531865 797418016 913616588 212500022 532341334 522987185 78151675 410340277 439477909 148864822 362916923 747651261 171752636 168316389 551372332 452742078 516681353 707122284 674633846 298598202 821273332 900257802 134811701 659184956 968865028 572516127 359030356 601595166 402879951 874785867 572254959 939001644 204615579 497124156 192189117 107467450 102275914 246845425 995374568 381191886 547300996 661267336 407647947 406100713 277915509 32343397 155712867 707563801 581178163 716650190 179891672 132188972 942979352 352054728 614405313 857277773 682090050 748451311 185735230 538046117 228911147 950540836 567652637 623610115 391327546 629344016 748216847 299664931 925872122 969801910 666412684 709091744 879801195 651989444 197155405 551192337 657302483 961860841 608093375 468180473 262956931 961077184 182478164 945697176 224371548 772607825 871907142 404682030 65901280 668399050 939829512 234761443 57251066 102390971 685771899 871019369 90935702 760849915 463437434 249842483 899590111 314134813 524434042 114417751 487858773 23152458 535775580 448049957 613859598 846380545 959519293 201275637 507575036 780659304 406798396 788243085 108443731 595814452 202842865 915646471 650983616 916765260 255986576 953639225 952085379 233169230 838881910 731132489 491987462 919200859 849997265 324178932 756657516 306930926 295816509 471563992 587686380 418081740 673261646 302268902 539305462 419802080 298836553 693130235 733743880 64602278 749429068 409711411 782215904 643154737 867811570 151990580 23232168 538860492 462687181 324013398 860147041 460047854 314928885 710036562 469313631 809799168 909860891 503211678 892504934 764839978 995243374 938721080 321605393 574832113 12118570 940292436 641858472 418128268 749927105 200083064 472710076 666685958 628696478 253079453 530877228 693272741 499193154 141156466 669105217 874747626 683437342 691100766 881237792 577955549 288837958 35476279 400675434 511136391 409121319 512820263 575047056 800178716 886597705 111297309 790109072 222238021 25201533 463829182 998254974 661047028 197896988 284510378 219556062 994226385 300982817 51258476 634281078 68572743 588978804 118304215 529786083 997805675 715686286 87427714 49459725 865780233 306708232 408162074 849485722 113980107 558713462 895695593 182613239 723860154 3319828 809146082 55324823 636678968 607433900 554228665 508104076 416424267 428715863 552366998 615502770 946465797 85528825 831567223 392426571 573264208 997144699 480739657 483038061 600591786 211055389 454625213 430801759 325234597 831097423 242970116 353496412 695561431 47479648 848024527 530558161 568389060 847969807 607574252 589377907 137586253 926927793 23943533 622948207 525526214 439616174 373674660 713188876 685092359 174242894 449628277 146174774 797306419 485000711 527634486 174893582 822863786 515077840 423071082 533249574 578472179 915789310 599296886 345236089 228987421 747742818 264178519 221697252 790725007 332330692 970582445 550834675 708400056 853992714 621099188 820188377 164222053 454148131 196836376 532283778 550289659 831090341 283287646 323842879 542545876 4172574 43519823 728870438 286234266 832804030 595960994 643978772 4138542 110656419 937501273 925796113 963276611 21921324 142455863 585930111 583308524 207729484 406213874 761621326 756931238 452622638 37035925 511450352 846925832 669877081 498091166 497471831 562870310 839668487 926616837 582567778 383172943 980728352 748274225 25022564 678880333 107585910 105314446 644690002 254903304 804648913 181598151 289207184 417682404 929131571 545314118 364652182 858943322 91767147 378223919 383186694 406030001 720482296 156308681 896600942 405430318 976842754 105000327 736828532 913943858 887377873 376162232 409050631 945928096 12875292 883908008 930364786 992880311 29291481 268696444 826021624 448799653 905287051 294294088 370323527 491908349 258671465 424338737 758818593 797543617 930791912 461735453 705902933 718386522 906197894 623463551 89880831 127691792 553951964 751389441 371829808 569663954 313352705 729289481 644611003 723794367 561043510 995932286 922609026 63967940 412614241 732015954 114524491 769570946 126124433 886257948 652708327 325181793 399150301 96286685 683631481 691073601 924644124 726415488 842955463 140482664 782010509 167671387 231121112 638724654 153688585 391303606 905171349 997818129 371909462 639345200 822757202 967332021 738477030 199428834 354662383 718924384 936101414 134757092 12349229 204170155 613220592 875128964 999519237 773177515 313751482 586940487 120272455 8683082 260688555 146906143 834903891 461447051 986588335 806864851 137891265 60488296 448770586 550996914 146483601 240644372 874825251 254563577 717345672 623600341 459292146 942816566 5802796 245596308 292991947 317287025 530610896 530805928 306392117 619013344 536335493 81899013 970492023 401463686 360601492 447267209 778359889 132779066 981255937 239140647 196597729 745073589 84915767 758858417 125287212 560092491 562295286 5348933 287373414 185814061 186782025 16696003 874048071 350067677 818982329 82613208 654453816 60508201 189265833 24622853 978836105 973140169 429134272 14144774 668076449 257351841 662692932 65571501 406308739 59524163 205591290 101291240 961952528 318047901 643511188 140528885 452345251 837505631 855979564 212730045 787873135 736351613 270717055 640271230 438505074 507206660 80469605 436022055 989716500 866468951 347108149 85474645 951772206 945939470 659331754 822485940 881745853 256661637 139331373 855994588 152353862 388622158 734200415 386160721 549624041 228704230 266869808 255998829 21474698 997254275 434081717 419807407 199765454 308217115 708814158 221781003 534382387 257055081 300899056 546366730 184065701 260843770 720463525 694871561 478296190 226316370 467007880 451631044 309266294 238028049 791281713 122244882 430736908 985531132 405879584 10134383 370759183 480819329 219902867 253847441 446711962 353702251 639123331 473415788 168571139 613678124 789460982 288268754 911766858 913486941 692605590 291160541 846049715 603343694 932397161 768905815 547347147 64554167 74773549 573793730 22042741 997660408 521456562 431796196 325464060 430929413 514070872 991115634 176225684 724177429 117681233 66482143 296363941 136819663 148588884 622715803 509651892 459098839 872329153 483945921 418712966 133857929 939326362 878885024 679745441 717002420 492152548 681211576 150106830 511145200 299369326 30276998 508790652 941547771 167184507 18863776 712004504 888883921 329650697 335271297 108650269 579143068 97769023 778180152 723891259 846830894 141348697 822560214 730622183 190256684 408366225 381143074 98571456 12814042 771844605 433415295 44339689 47286494 642817651 785253078 187128023 496087048 57719606 204564395 505890802 386842423 583071713 543920311 811371187 925351271 505589630 969942523 759589936 758027625 152019766 311403112 360287648 178505664 141643028 595517712 43495896 741016767 976630953 633467530 913625076 400074113 530917440 881202676 82175564 130344593 876356105 70697093 833521138 470843626 878193619 768978941 218376285 912476423 998599672 987548514 622313682 635732607 368917515 160200321 107370544 625161450 391829454 534631888 950101241 455050456 776554854 485960360 886767148 359019113 997386784 669132232 424418231 305594724 93211193 697665315 784215286 232573078 210490356 701577426 475661403 998269991 822050062 528561322 686255034 50273558 104337567 571551295 246994682 11858633 928890320 422303364 973971592 37662956 166025289 57805902 545496096 30570388 964853588 954683214 631208826 759071954 162500485 410717838 238883071 961687270 885254360 720157256 841304164 571537830 131038761 813193933 23105458 9261010 510993236 655396934 137062996 283507172 21692524 678576115 499596171 245870824 270920388 90980520 315107530 578083703 156539545 186753813 837788040 865831004 567849231 687671661 846472218 837583775 767572610 564358585 122249386 453520923 275700807 343808446 155293906 465278649 544774220 739616271 567884977 179746022 672605874 43781949 788301907 824309644 528731586 295887862 964655800 914956832 561327495 395541791 733368287 848448088 192066141 576712944 58576686 266668788 416759320 155857622 382200723 258946696 229116369 808469986 379739514 811685494 62759990 488210971 682905496 126246096 596653853 402465043 362101187 445485431 867134904 758599815 725346021 566549134 260291020 96690616 33796398 482357511 421367694 99367801 529425992 810015179 124939235 887455501 850074916 72064889 999347850 371366843 763336557 995880305 218596197 2622993 775742293 534525442 408253669 831541586 711012410 80709465 161464451 113561986 933688270 464780530 975652744 687177669 189347603 653722379 717861702 951345388 381087816 680174439 725379976 674486416 66953786 990949726 66108069 513359727 413808925 957301354 852918494 605018157 415616411 921564576 221274575 261098427 477530662 636833762 941877041 77141121 221780567 14874942 665263301 315212418 601105646 731132255 256283329 220897442 96020695 88827782 433612396 71937107 119390187 293243330 653540922 737836546 668756660 111136277 133222505 90708105 798955579 446542751 688217194 274496506 889675422 945512010 656335744 546748993 536315638 70828674 124165290 40433011 170125025 357660960 399861678 552522411 364829845 558461591 698314306 835173624 597548037 638499068 948649198 650375623 143488620 688181368 437916183 776325991 463044641 228972974 36408070 62590004 17870452 998006444 130861927 287946884 671972435 766724904 843517507 789042419 700077954 264249916 962949013 613429020 565116445 123461651 498205289 925067673 989279509 222608084 263206339 556758739 642861384 897408030 525532073 569738696 282674025 497776801 286203416 996799510 299642531 920117367 732679423 98953485 629808105 328758496 942999935 567041145 51569487 254346318 649105014 593948399 16507379 448967044 88287872 135667307 975796956 61428144 53996431 865277422 677118440 421549806 296449679 920055279 951833355 669107927 90156954 456113797 658565151 942798460 148642101 408926659 43173500 500263751 985491683 571746358 746133329 896588047 692301871 837006222 489670945 306290881 153444269 503006285 626004062 450416451 358731738 713177515 298190626 67351576 694888342 532019420 181120249 956381399 123758909 154453268 6972486 318908797 309433650 501997405 760033029 741764431 607267966 36943659 564809935 849825294 132120520 333359015 663232460 901373669 469868072 631181301 585653747 716807511 286393420 105955491 326459894 323069350 886670698 529615935 233256300 877449424 554146939 56465658 558879160 676131028 789534939 26672351 328133893 292189684 455484523 999918355 169545610 202109013 359294595 685360192 436864923 63769311 451148771 475206423 368931712 628578617 156775248 335653400 658689270 476407237 215194780 835401841 795923578 45233371 61465065 156045930 625884285 87332452 174883839 377865759 472216022 510170736 565636052 655261026 619803841 151711688 295440678 104768619 552596327 69429960 606852384 722890619 134090707 82479064 345653479 796576440 476466391 602873798 493451875 550833190 182158551 247940049 904882909 571114751 413877966 784419689 672991623 734443239 843909920 568652440 534053713 171887490 508580706 637310628 962696127 368240234 18034716 65034722 194094398 227464669 330567191 778867081 459283009 538762458 96731941 355024678 961619769 909879768 53367193 576183172 435007374 673037408 286528643 620955539 158120789 934531912 897282996 193044349 707585890 209619154 676454393 82189298 702871454 980733420 574547823 735961935 83217302 249159273 221006736 73682676 270564604 571148821 331725420 175100287 140667629 502024818 393900747 499748528 180907808 532532249 18956332 938484576 805604888 886262762 371773786 447597428 670332830 763210584 438629127 571100433 128381917 54621994 168399781 587287952 554281395 442947831 281315024 16466612 473150146 676188285 31972084 237096851 549381444 998141470 96321623 962815611 957274765 235525939 383026097 864160136 485516916 269810701 72110521 564812146 555868045 92853529 648970151 821744790 937642888 282464694 974269634 614261723 832369036 589119051 248317507 605184727 193671230 435110414 607614242 967919451 640991689 943176585 961551208 117589669 681916136 626142703 585254535 164606274 55236574 893967147 683193696 989912307 331046910 434539676 571953811 764120251 806890662 435988173 43551448 644770686 387675206 730820786 18987643 481019173 665875273 108765809 82305237 391193320 267500866 877178634 523318823 210219615 524800213 385925652 336595191 140278075 575916844 749895314 87157968 784724829 433213033 247254266 245506159 367292446 403078181 814414585 870416877 509737085 503742039 214472587 519697995 503203206 440828807 921880540 989932433 184407525 3259724 966430182 365986178 5397088 700640548 816133151 911522316 86761688 643893168 778315448 837432220 721260214 792022387 396814776 320442738 510795284 729201421 882654004 529964722 974169909 425538916 830264 245372830 671990949 894869801 795515101 920553774 402709013 728372640 288161238 145438530 242753468 381827840 714073223 314041417 633105392 828578169 454665309 92414897 188148221 948176703 877570615 371270632 393364345 975004900 191639850 617981215 190588545 530766059 931346836 390477984 564265345 150085175 214225138 500099905 112667914 764060667 445554483 325670902 210579650 232105088 769605746 33661876 421257109 489619494 473535237 24688631 874183076 510504229 172702491 322736587 738299669 268252111 814446082 417250981 294937519 778279123 916582460 714374488 925016354 779972971 154536645 510120343 876148816 265411462 652636374 775061550 925889786 217058789 325698544 615269617 864930466 321942567 191033222 425331650 805805360 137698994 270489276 140851042 10695964 257658144 212223187 389345765 822205019 214752340 750317335 922999457 59965687 683759796 792587484 230323517 121183247 850331496 132569565 537735109 392680550 202393174 245691894 868934761 726157537 756805538 882162372 87476590 67693608 146469121 184095041 167893085 553167950 748414183 882475730 313423513 924839827 407942558 358079174 137574427 198050385 929840178 80203579 135375515 269266230 929670389 169079263 539523322 460850261 837384819 853501444 483979331 469631880 57786076 270086845 911403342 866065566 678446931 495183512 589578588 537654213 170252078 932301701 532340372 647648447 717593533 950265555 807774394 429745461 892843589 195418288 814095383 470710596 613542094 328149586 329600759 142984007 657732477 439439586 770835103 903062335 820539678 825764092 619881535 438736747 818243464 659734624 431824984 280361676 453565881 515099292 238564979 541207859 175936662 511959264 4857034 182207843 993876715 910722380 476995271 620448833 992493075 700004741 11744739 345856091 861132437 183367573 723199755 869195209 568454075 699525904 679874050 937932685 823463370 292895170 258507837 91150412 723405015 299808747 225496512 795534910 752330363 594841406 408460764 188332267 917411079 200464974 639723610 751321719 411139927 865465978 859943084 583560050 571600857 347620539 644400482 752088852 758425515 488077436 590479721 191593007 134997521 234724634 438549131 54952454 934599169 84394455 149319816 835072693 220697942 468088156 687152436 958878098 566850265 108777873 186775643 759109870 909824359 887234047 681563956 716348018 868478382 200570877 555670436 108428250 846957334 5605256 186442709 426755901 702722647 376868456 303168053 758645444 589613248 723022856 923109449 715505297 285809147 945670100 836319593 959304503 649272001 967058706 757927583 267484278 268830461 225801544 355739286 53280158 996472250 876101390 985587290 362879791 575503751 252010788 845704987 654061475 837962454 892610680 867035729 302143834 29707264 120063049 36945045 211309968 459552951 83946861 436222222 647881393 906552863 747416719 708324496 78636526 905202980 563414004 259435194 758205785 348144844 305169936 797667783 755468162 446421144 373683120 721095885 52160105 476499146 185455321 23288931 564172970 920593765 399388134 753071890 278237628 485673573 938495897 937649580 438092788 332984552 390631675 419487199 480823670 723357519 202643675 915098306 169279919 974670742 82738260 70280677 654677256 332670282 106434460 853010194 126405759 464697878 999747692 871788115 306227646 858632050 209231625 788985478 912307680 774901514 764455721 23269794 985484542 382350632 995366045 774357904 122039780 437436927 76880909 329823553 634727143 494470965 488611879 332793621 571372923 603516219 897335342 781729790 550449505 877496937 468517414 520708843 338962175 445757430 150992481 688657170 241515473 786646992 358733848 338552786 4649794 119898170 44305205 518253896 865780589 973692520 641065734 925072105 832677392 359717745 272433059 883121062 974582368 234634281 619332158 59285763 521274475 362175972 160120784 337557265 452684518 77963305 253544929 672500819 117693989 164631831 606740937 524569581 883561526 630901553 116784420 301328913 639454601 800852108 231774359 791203175 35628407 796449660 42942851 540077945 586114511 460778431 687488323 860879782 806834244 782885041 182029071 424069830 730761755 769953780 642916977 903993422 815934006 108869272 195208375 259466129 240731657 349289807 516318144 528609592 391108767 505994630 453601260 581406625 252237150 219394404 739629579 458872899 533590610 549395940 806247728 829494352 364417717 141820739 359293914 88455034 979793041 289574311 833196399 826063782 348202160 256236570 900633547 981610084 142902439 141650008 379020072 688774879 971378394 839092686 25674902 228163629 273717080 102799243 741886965 695244644 267404445 406497216 372947152 497846155 101852458 131692789 312781762 205284314 633022310 446277521 893111395 516160283 428529057 197279149 31436689 303826018 794668108 743670644 661944580 650106195 783678623 245328791 190554126 892813488 534022430 146756117 251214345 663292578 475303805 10951184 307513300 593644047 931474007 311642958 37651426 191238850 79762130 146110337 919499828 227394436 700825587 438182016 54957056 742357812 652985796 996353792 24628525 346779985 423078406 209645338 390154929 267976456 524402959 34076622 13746363 3172688 513229530 81562052 76013811 1801848 632563549 636458218 535796555 840734959 373764848 6582818 398098381 487458577 620925847 249387184 526467144 297595241 548922743 347870952 341981176 318010803 716558427 195617953 283906411 257555145 55224086 370710250 395752519 242582245 255881909 433912734 831062852 146481746 308705844 872783293 102864081 303093881 370167427 694978405 438831067 451357368 276184104 370368531 364061365 306617495 142597559 612530725 326387310 904240411 926150302 782807458 636406829 64258488 796950482 502774005 513491901 383843303 694107758 992088665 940957460 185392269 306476283 81039072 66233452 284278752 414619893 45970468 445276744 868126752 805543006 78857669 72777499 910720313 525031342 847490388 866032190 639450067 564958117 390017254 466382420 723004907 855450840 549552133 581713690 551704269 153515833 999800343 89321009 318238172 419646896 418893964 956172854 799502048 653836277 508649176 668377917 563683266 955623563 711250593 541897778 568719992 233699112 853366863 787788000 405842573 832661973 308031108 743910689 465220928 85577275 499878704 864954233 94169010 695618125 8414798 367984697 817111082 92577634 188300636 804241791 712392459 852244961 763054697 801680353 80375106 235714166 508538673 1173975 916631001 766758843 915650744 246505990 782241685 955098714 712021312 778452281 207900928 279055146 754108827 897041922 316992395 808114031 517091146 510676824 623408883 32943910 591778636 10719853 960512692 422894449 439016964 146947284 901778946 760287935 440234584 570158883 712870950 483284419 934484915 660537199 82912680 979778811 768681886 330534013 969259440 693610262 440034075 549212219 472967902 147866888 236540263 20271970 781591844 26259130 230393919 388624109 159930817 876643501 329866884 827674356 161761917 629097064 380271635 427768114 329767681 867477959 869561383 929001492 213499327 804618705 914934315 802361959 337615952 505451307 557740293 552020618 349080577 728989359 61471554 592162698 69737163 931593550 3719448 570636289 281079944 66370008 108166531 509639728 347159408 213216394 123600129 278713377 792679085 656693403 696899399 330428260 542710279 454187088 251385493 914258439 759349754 709773620 391855424 594189662 570675698 695660442 609208384 530019770 381249297 243120502 705844825 782278832 130969609 673757001 532151851 174860897 87843931 586433463 495170775 808357828 550311809 491890639 30132651 384779928 24429831 561677920 391576989 861219348 590546708 995060522 23824792 560405367 471583307 196184436 388285640 781625000 277484787 575287736 149643197 211421421 954326960 899390324 282777789 31651471 835793364 220084219 613036290 181623707 420033817 716181242 883181831 279687805 887996567 234559532 717049589 833695170 306271183 612595635 578934182 30928105 403997248 673374563 605878378 294032669 833878029 764185814 867810151 238419482 99045797 211334658 446362180 160271338 73991039 831028436 426872086 75304595 393670335 307490468 419161050 487491725 402371321 368782344 674015296 235769598 334378933 731061950 816877842 673679278 234659707 916426232 344975171 655753164 710613881 727194740 9499210 371295142 227856267 202093541 609241583 12801751 156865994 899987064 781362017 769968602 455262944 266326841 189542155 249528221 921346081 249829264 341024005 12828172 252647546 72452082 684100778 378890520 221601303 874857875 957853294 460950556 149085258 161182031 323934099 493414104 544429817 188715589 181300816 355391919 327827700 881883144 112635919 272240283 962010075 650246131 50763326 416417764 379021942 819227276 809801350 571198006 681005553 7370201 366352304 172117346 941709781 779741723 989305718 786488071 154968462 649349719 836126815 868322324 463109876 969895464 904434095 785959428 804151914 955748756 208194658 295102736 478913272 940039878 478273384 994845585 177338158 192874411 700860260 246314301 346897739 533034903 72718036 901245266 348684470 172843776 110304899 731820678 962122697 2430537 832087772 60836335 60474385 789853424 213384237 137135897 888131773 255488978 544779958 838149318 754626257 204780970 366435598 275076831 367892004 623542345 927357835 140431941 794254947 508792071 484674217 769887352 615771138 130763202 339769568 272566478 266977435 523527121 412079006 609840821 142664888 276623207 69429631 208352577 946263245 40355373 351980945 554420188 530091887 553597666 269612968 847000953 871778363 400410341 900411436 746184065 622297357 974024927 963061673 295536757 429738032 582173354 370490151 505982602 502070290 124596232 271658812 50596208 469856504 119712352 666260871 154202987 753038217 541896250 158313514 12571274 901375052 949383253 359560263 389527220 424720716 156528144 518547376 109959012 628090465 14240917 177295720 97949026 879537844 975574062 596135942 621489586 112983780 29208938 983812175 252027213 426820653 472440666 69521861 623825199 416181567 38385827 122034589 288824713 526099281 379715730 201173425 744213711 184235082 710268470 183263831 618353912 491275809 529640893 689041820 392647762 798218035 19518434 605637004 640236671 416377476 470295146 554779734 419381823 516041563 309369417 750225250 696332871 65733563 329647171 953737931 196729499 832555547 253067481 259593211 343430648 849735568 76021100 187229709 243189568 945513691 556989051 410262580 990147318 566859745 152295169 560244019 383968224 418471335 893740563 272289043 805993755 957348724 84955934 783498512 373016878 853040430 536564072 359770468 181595233 466907293 866857277 717919092 690151196 906863803 639472528 877337880 689375017 263529567 640037756 579777905 113669896 89316128 862525895 211847400 444450811 55343626 151273428 308841264 844907817 752349668 637159433 254505423 975237028 265652284 473005784 535701461 6125379 16739776 791533476 401938091 704856205 329348578 752405539 397512666 826672583 675724041 313850935 248229417 737339923 925173366 39674975 628027103 122677117 943475951 556582558 322294097 727964250 276291051 583917173 895504587 185843239 788043903 615756170 753929116 90514201 589905982 417436342 281306507 279100738 723448636 27609016 558555731 83013816 366790412 652027851 626188331 311338060 344977371 834213499 866229123 269364456 695265098 448634972 715351771 615092054 85737288 490102326 987104233 610223556 77998706 422700654 317753179 641278516 654040381 207752485 135689624 448854355 661266402 578442037 789623192 118626959 413782665 451836983 203430493 61974478 597491785 600669722 969954475 378061735 683922327 965690327 863175972 935061232 790065169 796377995 932546657 139363196 854800264 913503344 42691943 963398757 700829908 35618500 640555827 157641582 934588109 286120818 160324553 512925283 510799171 701366132 501842598 200004177 685337075 942463885 959647924 932937056 301610216 514352578 113999078 547227704 735801347 692207767 488366837 585924661 942862997 897153980 77322088 823071860 611718961 137304450 822143366 456239445 549276394 958454577 735618071 418021264 150521220 160517532 852363610 470418946 533749270 320568302 61921978 475852984 3462568 711771243 394487633 433097822 905428650 798368687 132933850 557117350 790637247 858131719 848291627 744746228 113142228 47689908 704359386 428936043 614781763 688399199 31294234 415188178 860123932 860310298 695660353 724116936 863111138 56567942 497062163 240757094 649510689 566138084 555807401 17200545 217572243 645835719 672131712 983626430 681474572 702316782 715956844 34542978 324340311 779514564 866761475 301109265 421356631 971238076 149164592 326074477 957620975 874961283 857229851 374906483 872094558 282250290 194385926 636132102 842411795 591147831 548743631 164331996 357717198 728429618 698259254 585186490 137104058 199024526 344692324 769282543 67365560 95375551 944328509 689057094 542717929 833727110 391792221 329081765 846460525 426405801 569792161 291858709 936878108 843828136 593992902 372621472 493225693 599970382 173317581 452404096 115324758 444307085 839440951 812539723 683833761 961063053 725488018 953125347 546977452 95280331 365359817 831246591 712186779 738289630 354214938 213818566 212556857 417133783 781009469 408905793 858840264 552878515 673389516 795255431 725521478 127355770 759771571 314379932 194272794 107127884 307874595 813593961 666051993 137704646 773988556 282978013 472039684 139027979 417960470 255437848 475153050 322009811 454898923 421792328 768881834 197008957 215663171 894898020 210294195 578041680 616072341 104718944 283994965 290111363 899500260 94486699 308816827 417111472 46242520 175683521 226973868 130614193 845318483 340751983 732271844 712664856 937366041 480452067 386072372 855887587 746834764 107332877 999446351 352721977 622609644 382883004 824437626 457564434 178100060 665737340 106148432 347115249 956493526 504963825 384550255 817423759 675784164 641444271 827979002 386481860 622402736 3471981 948312789 536196909 432767411 340286239 580670006 771010917 747022156 336496276 821713955 984359084 537927812 241125595 449123308 343210807 423340563 256691173 341662129 667265535 702647444 893088027 783341660 368794271 616556001 134187095 243007315 958369351 975545836 548891109 677137017 832136525 330859412 144353745 746269522 140889151 342968756 809035679 584512377 403764014 968164270 410951810 767455808 704067807 400692659 410662253 528528992 489361902 763058724 891216459 873287929 84565155 287271196 692348617 449357996 171731961 793243289 514400648 869012121 945670097 392476550 438799838 26633960 363415539 587211796 663191513 283701648 288277545 477370336 982997640 942946051 458155020 376592134 948456757 885815172 14384375 794856 798046304 871915530 550803521 503676797 518158914 181675602 886147226 877877354 423704323 50219165 90888645 403359770 305213563 358592370 541793638 974366354 791985753 30037291 336839402 250645937 417917121 703918671 833642910 736636234 88219888 764384816 487430216 454535811 494318172 886656294 3878979 809207267 602466769 795714215 479193396 870530542 532744293 616138742 269072831 448707061 84867298 748481734 52259214 86622922 543134165 238068667 880434937 964289016 94544814 161991722 298045330 540310195 439969930 161804597 532413195 397606620 998143821 94194828 739087205 117262911 947046266 679033056 861405954 234568668 465638560 916634546 587391913 472774143 166396983 428195167 706760390 874354382 585797337 501900125 148018390 21461371 926358721 627209900 260527725 527143641 949734162 271750522 463912395 156279227 787102399 669030509 818576671 491239745 421630102 994257695 337435345 157930586 631983934 856047926 119944173 838407278 175084806 717090324 1295496 959224396 216921250 19400432 301123765 861107184 695803759 474469135 448423680 31390738 877910467 891925862 116861340 546739274 130543056 52180685 101754623 690387107 224901287 945712389 207881033 260018696 666495189 257426204 520475911 872709022 616206013 319856792 697093753 575285266 468995872 349567779 11674838 523589827 683050248 288329905 874397690 103681891 36525632 906102460 989544046 105866857 263640337 512220345 438772156 775781956 446084552 597504329 514941606 543852523 424054329 721340591 179515694 233753912 451234844 953515221 730144003 360598405 113416301 896964975 995435438 608175925 991500865 422665191 247373708 614131116 910308829 818922769 237503460 383793070 983422490 456099372 298445527 578643164 489087325 970939071 968282685 943848461 394967918 791012553 399631845 666070719 83022207 114211998 390352526 280751754 376296721 675927792 176285161 202572496 213763151 841915888 714027438 387341484 777712536 840901577 777664719 146832954 285117429 500104288 952967880 848581056 182315107 370382779 556373709 587342155 705904798 247512602 799731338 573540726 652333062 866961763 838821713 455307283 625327095 660320902 346715356 18940451 771939287 998114292 589368217 173970815 638952178 580247664 383228411 225679325 332881432 681087418 827511863 986552930 196416290 609103724 979026593 960996619 243398762 821770347 839770970 838644627 675121343 777295841 705626332 243271804 547067849 171725849 537615195 178593898 323271280 954376039 81024214 285902215 51168077 795108746 820124544 738256381 332417752 334371886 816949195 510514580 421438945 899822637 336099094 709332051 551364296 656496054 344027750 252300949 173214350 187266220 974434515 533000321 504810198 47168348 978576798 398488414 263001187 449493803 904279722 131657621 103907639 859736925 767107927 984768002 787989121 751142985 671874067 874160180 374897191 938009954 739922005 738027862 843974784 354979176 885950515 148839118 511171250 988448453 816592579 226090944 242874540 399249749 865356438 114200067 725322348 312419849 815762284 573891636 133108093 709460782 184158870 766661219 691516377 991483246 636333985 305627856 619661096 400904621 362769935 529851086 377413834 905716593 432403564 954635625 373352475 536070610 516151812 105406256 723830955 462291633 664180223 136942782 466804300 38803444 207141882 10564184 5232260 424911522 199969008 673227412 975904108 369412454 496829471 434865990 399254918 256972785 551734001 6049875 282178003 946721872 585275567 48883143 448322160 304783550 934281112 809541788 407503478 342810468 785201257 749038441 252949793 946298091 936304916 255743656 292048829 906053269 348972455 696185775 125574659 854066660 231816574 429598324 953815466 394457126 446954893 954526846 238916437 501603488 829567768 878691128 390792858 797492818 124148926 839992177 398131251 979630268 314061065 186494428 496780001 438256823 250078871 682704180 799939706 886317441 440439590 935028835 435617687 263607485 409959905 98591889 235759769 597410715 13839147 58787243 858358933 886761740 220425515 141245868 951007423 696591025 905567418 712873108 654855337 389958116 813294287 569645483 704311579 496512121 51688639 907769271 975702462 422248062 364783268 968564880 220079923 792361263 363502662 352099590 144993097 143947360 800830623 53431727 921308296 574969290 308785981 126600256 171683556 911999506 846926491 902150887 652885594 940135454 377665696 156643117 884104674 444365704 692776367 6001654 787034108 931748925 841984262 686936182 769011482 150955709 529033346 791196398 286631883 21653578 320704030 960866470 588933386 44219399 550562315 566240568 823042547 415294373 334229629 977173674 27283166 816958375 127691676 919735012 655561439 624570046 831520270 885083435 57777464 25526175 925802532 147129316 564659422 123543298 818757367 806125690 34297913 241836542 406917021 867354722 783642545 812824318 459195499 997489882 222564783 591972074 12574268 950884808 799314828 568647990 752782414 907176817 372995291 95041483 416573890 878957995 903715751 784561827 977806823 865698346 938686260 281589705 344817850 368255049 884994959 637592903 41706169 535445187 503291176 528760482 852201419 42202679 974454548 611092325 146267681 640225057 689159973 815689533 532245429 850867046 185497136 896901775 464813869 67862572 448630845 723727662 128438294 656049544 153212192 544242141 754427427 607155091 447543158 916257454 82650687 728027287 357945695 810484438 891940099 952941685 478514266 439646557 567642595 198305625 507160455 298204967 184944546 496619234 3505254 460460294 854579866 13362758 827914553 554733892 831253632 577458633 795102644 986247776 65217364 540591169 979620343 227873524 17600407 454368170 71403596 197097708 902404548 631160112 662172897 385566050 479730025 753636434 30792765 726977227 539143296 875123840 655165257 881738852 284516957 273856577 658772115 462835104 995310639 82090256 348919030 40430900 34818985 528177764 667147065 145652160 249476895 137006556 662897103 423088884 777430928 755306035 182962108 17196490 692863073 760423966 799923432 797835923 2957134 52672747 48789546 876641663 421920300 440124739 847418228 916707709 5225556 144432073 142083671 947902157 592155489 354327930 891016368 989317041 700854109 817835487 958850715 452967465 13091280 192108365 196661762 931973884 125496926 535636149 468146492 589953125 928626504 912925693 730565570 811742094 362497094 34457671 253043851 1392294 271014090 301914551 177693391 123020298 179317683 270884647 314882486 655154605 644868860 805224421 971309047 601257446 211268089 690380670 586481625 856198014 278622773 68213088 11979313 466992923 157761087 58473655 295659182 51476908 608494842 12904282 295838763 995889885 11236418 646727005 203891708 661080156 667416488 994461550 277267404 548828861 987741392 844114770 396109951 798855309 797604659 649643565 671557733 28499829 484551945 751824758 735924594 735350264 986016709 875667405 868535107 22227488 614494451 264785625 875097251 537509960 220618930 975280592 785296300 734875702 525183468 213285292 320110985 621721491 552409423 656162301 740352032 506286673 328534221 765464217 866619575 745910785 723843290 343172263 831580346 878779634 693802361 193606264 871009585 183881143 645312140 154844543 574038882 810382324 662314615 828484831 875150709 21535553 535255245 305136572 32329528 317378096 721674131 624586754 516798639 982961983 109342509 967779059 554256358 243855778 489978592 346284245 959646593 253499142 580873 989261522 95580793 639353961 573045231 35064812 5507830 626603677 745047046 594476654 224040597 541865747 289715006 249927501 644316628 878906112 822466991 143983975 258070580 704216803 278779977 657703306 261740500 727211852 113790494 603982528 63789690 240077651 466431051 119852834 261909999 518595070 470924909 44600772 350510472 786758716 146298093 600065973 186260649 483375804 721249634 621496820 292050107 139507607 210824055 715072624 366969076 842037864 847448045 650756019 453469638 669685799 795914148 49452029 312753587 29170185 990790150 994820614 182286357 839777206 153148738 787048808 24232116 211334154 686834809 109279590 177028784 131980197 149979717 139189701 487658446 249800535 418055252 343148166 966148773 464922074 754276212 996073213 725185428 171891462 649886679 477731131 593784064 96843879 913835797 461733835 280078361 305553128 223783630 525470799 906615081 811276196 669207141 698366644 143992162 940566947 524641044 128962939 139535612 347983049 997631376 363315671 615712811 116247966 773804985 668152011 610572620 814752511 350890881 405835135 118411337 543237263 12399168 854025187 193920234 565863432 883039304 288754304 186035187 924298420 679875477 290946686 245076959 728810645 354101443 841065566 730558928 284623057 419967440 808623137 933325056 835514857 776810444 870105195 266525413 199494964 990473771 751354154 199068410 634664096 335914420 647119384 256994006 307134965 934024280 297200617 569794524 55628028 419640852 570746723 795495454 688637666 111636950 764056950 106551546 673380437 334837052 640330092 172230272 267557151 443133201 335813820 66117288 794754146 1996899 854812130 270351672 319060135 947644689 264256002 114694332 850121236 440111809 894802008 900421781 49874937 40511119 486733591 868880889 368874696 254666517 254670874 817612271 296032317 831614367 804716214 175894756 330823125 825244010 944979143 877026751 622149368 636994064 805887597 949461813 610002773 662692532 145696387 459004892 570923761 913306347 749005943 180784565 239811987 286182484 853108243 326920190 288232335 887115429 946818298 39727048 118124226 389493725 558687500 698377057 98903325 941740301 231937279 846749283 809027133 869318449 338939238 688037336 587982350 601894493 710213181 577384972 988633190 289826839 705008162 410953803 445326751 406077669 531326870 756911870 706197185 66930852 634422617 699005958 180813363 314635006 394724987 533978448 504670293 652418245 975691403 690372884 174878071 358869063 674926305 866239155 15807210 35930516 252112629 233098612 464448067 801531253 927619473 610136457 381351862 459276104 415855080 617439867 581678512 247862691 281137955 841016471 883535855 881513788 802044641 178380270 642264478 461163998 553913950 445037402 680248575 631915203 717399391 518332530 108748131 262819343 498935686 485741316 266561276 110774260 597516064 948639567 730797025 424931804 655977289 290669326 55084949 413723907 678586548 289639640 632521140 679096987 192025398 850143031 7024277 526424915 59477798 108263302 745135686 161824655 657401005 247193138 387699905 912938941 860482000 496942142 747830193 544665688 286535383 233253175 862437890 921444312 769214243 635598585 135707927 786449900 710836778 391695015 440748700 966862 680704320 171977912 725573874 417503714 39357707 877602387 65082288 732266925 242676373 55641067 539940479 532314163 355965830 368858443 914215738 990033201 650570794 933090175 34150629 790648322 960592585 506016613 354828999 217171728 523945053 161158854 284714347 541164340 886376741 335903570 155436206 287712352 890275806 917280805 625289191 100671030 746389832 95811331 739856341 616512655 324301625 411421391 176989993 918005157 392054624 629104415 532387677 828787526 8029526 542623291 43547356 6228601 451290417 172568576 371692046 918252778 204407741 548800268 760917089 745348155 59711844 179677007 893936943 225538823 897890910 390214165 295246678 881489562 790615881 869438484 220803976 751291368 224175054 984735464 794608807 737020510 887701284 842671745 260567858 661111600 433644135 449383745 955897623 7460106 367401083 78733773 480868354 750709732 938331710 547398638 266292960 117196175 280774046 309261224 80200511 653190395 305643408 955289270 275837192 220008045 280947917 681710270 755011401 404382916 731720529 45061328 222816970 403304102 123969435 974599236 516059484 175423643 52774755 824583028 662266430 63279167 398806786 443285144 457662812 292527811 887972278 90974633 747405544 232896175 879936399 281521241 619124472 519045768 139494058 792339342 711837575 280547634 968629551 317881475 121410361 865569262 938487595 67227337 990176864 418555726 913560683 905342342 822168594 579294406 82793836 246619179 178833919 556587199 141326953 147305652 924798503 846804348 56902664 192573502 546366568 82926181 37874062 314427877 516155427 551298990 371015055 388998093 513021957 85371204 115407178 48983610 716153243 147189868 513069991 814975694 799932710 497044682 982861402 330583 752573307 572851215 503455205 696804948 163687118 434780649 126276798 868560332 957567216 199923838 412780053 428757939 3147263 763141504 598188077 152755248 558709193 251747027 946631982 811961340 995995317 842633303 474811538 684513276 19996102 360143016 592432316 649034317 244424516 882932670 840678374 859084421 766157765 371237632 120647145 168286353 508197486 350680740 82006184 458625407 301561794 277760871 328093556 87804695 630546503 739144465 271081944 560159938 922508386 701080613 456452363 188716780 350518260 592323697 926437937 374655244 471125942 45011822 294017556 700324518 569262176 541912569 693077704 548588655 219969703 917516532 233544216 527004228 838380547 958775780 623335896 494211460 965641769 439306920 103334366 642242241 694061430 482577866 464818357 651629829 299988073 40948901 168763558 97119286 439983008 165126455 602553060 501801715 966153097 191622861 833503979 17430833 104913402 996527347 493851876 528204695 939604497 12074590 265380276 24078095 202106330 970117412 191981773 183277421 125381153 72382285 978521622 787326182 330937184 986113850 726549593 952524906 255937000 597697521 997691626 372146828 303648534 887961403 949544477 11183955 24969833 907676578 386757087 390080801 339983009 221007423 939343842 794078583 897435613 560669659 421505044 408453547 466860442 458573258 578473760 784202872 744844023 321965226 987089660 245752785 37290308 405594152 863362107 203914878 568959087 444786145 286863152 636209099 97751062 536762439 246401638 247908667 601607082 183731809 517423817 370364747 27509691 296106234 843368128 819366785 539174241 225010498 129428243 664445354 785104022 154981625 580145028 922130401 650469048 168507448 497665976 371729592 541564789 99892435 211864777 22137019 164672104 812211044 338398722 453437461 202660748 436368560 216828065 189358380 919974298 2695600 443805852 265318451 689990741 816209801 329796966 118168191 127828457 449103119 250963073 717437987 353607710 553647348 47379929 896268103 244300622 669320000 481995313 126643677 606132468 238227218 827548289 675553732 578779311 724084980 634031732 528471150 888503205 914225734 109010702 728099743 131433665 485802712 93571609 679557499 312517263 49330924 486236675 680204668 577484572 484592317 146369327 291437374 877051960 313268926 942311278 83763241 270983632 152450778 318959653 240507573 104860559 871304315 636074374 829985288 107577441 371769728 141960138 992697344 206017009 147898043 830918313 640514291 220165445 637457366 378045708 873416356 100109507 742728348 135411910 674643026 768276911 685173036 412963707 228656695 976365483 40146838 545481522 647130868 799917929 658756870 395417994 62469059 587473251 379042861 457796043 537876685 872114298 573685242 366166787 451610862 958712380 754539599 374726148 390519075 759514202 979635416 796635346 615634927 218504565 369112016 418501375 467271219 687002779 26997803 869445442 104907231 71449424 842676382 250088743 213385937 596798216 62778515 623141537 83335016 65159802 911636197 459060585 783307266 879572335 358175536 921278455 466374676 572451087 397569031 209290991 964905233 910407815 102410759 58885625 648726131 591872430 346002183 710054467 999243926 325076755 504529270 238803917 62251161 487393772 52294647 623781328 593197290 523311555 93362942 536755792 350863812 555087607 854243361 195338987 280257362 285129054 649285466 384871797 78351268 706702935 116347703 868838722 147207357 831369699 660419730 254674174 70936203 662615940 56247317 363774845 111096732 607917025 560623300 440254623 39621680 4351813 81407738 272990628 331464719 990839938 380453425 125516842 515312568 714845158 850816993 861260436 641541351 363262131 753940868 657392772 256488783 519794812 198751426 528341448 754292495 308763333 222776555 81796217 809448312 230420016 77339293 10693240 244903124 684609537 925192044 598981227 638158216 185662355 860640669 820369877 528875036 429182671 180123949 301861908 573385899 952947253 95524959 781641994 633747353 342234577 683485424 420931735 843693378 700564770 394353447 859101756 382694508 823302574 187948077 625094714 90621429 485063645 624590431 294673253 972164151 987798482 79275510 612859831 508077507 651282716 651201242 325664994 581215421 366755286 907654380 138358749 465931864 680596134 278861890 492617114 410658372 389024329 715253144 100629843 567285073 699000487 530476269 728593998 112550972 532841035 845969253 155424240 918760546 890620004 875358718 341391933 645740660 469622400 109675713 756574738 285907042 284459795 255813936 88989432 319895129 907339379 892140460 987379866 128268646 729085170 675240189 945753037 677185591 901977651 47429627 478799321 67536066 149994211 854322509 919653170 979560746 385260254 930973895 735830988 215464709 332763508 858221934 532939600 544893902 601939884 30766802 944622806 243757753 441710556 456366942 655337645 913889283 386248517 665118336 367333969 986023784 942896185 547850751 79628777 416725734 185021371 541051462 658173451 209385341 8608414 559007538 665142649 856348664 230015044 187123188 524070604 750700667 618861018 240199877 115431065 125376046 906130155 184497424 358400681 181511835 763841912 946192111 573627101 713084517 826409246 929708337 574821985 427489778 962137630 557967590 367464680 720680936 992488330 510519763 971809436 383334319 144659380 726925257 60063340 725555851 116027101 517989131 927920413 312897460 179094620 441832083 775859210 164294320 333915779 490655930 32794873 316510223 366497279 468987550 658991878 986138836 1285382 83611006 295254271 346126747 485310116 351117757 375430559 178984741 214609087 742886179 611728932 341827478 86636400 862745947 326656278 19787577 291405643 784314244 367715082 53496668 770213261 995041006 449968617 951931165 604290007 939833048 829472967 937519866 171835401 547753998 306457631 738884928 802272042 965763824 291087736 344874633 588668524 890467502 174932169 632493014 803960031 396624640 981830042 634893117 778845296 769142765 757727819 605039039 98647973 304630892 5627900 21575542 110228998 810367372 336287042 403696849 589794978 830784471 319806262 536405006 639102602 443429974 850435025 284631613 922022872 160862584 783846471 680988268 261910170 967050369 339610964 443097588 11695857 394751019 527540071 978497697 224583310 758098101 268796706 115662972 220089854 987759919 748880939 609893493 139429038 922262930 650809314 436527759 306668659 252654879 822424691 233045129 259296466 812724491 915629502 954283085 394332106 501533939 596172126 656410902 148895726 599956222 390914624 50877420 214553244 521022047 499598346 63633037 351772532 894166321 244777067 97366790 799707539 36908948 584236714 714770664 574045971 981604393 956469633 308880948 403895977 390461445 646937754 963426676 804343809 263453066 686730733 455231946 95356755 808159040 116656668 607455197 928588989 3125492 265583616 809140678 394560289 349797802 298966806 14206341 646636246 232061230 886061588 686100905 782344743 480809409 588836328 317561983 373838058 950999740 802358019 318307096 509728254 334712641 355069148 933644537 145833534 809787832 876575835 896482559 828346971 60666467 328948420 965375515 324653656 788861223 115531134 911011010 7564560 850029536 568214814 419016585 730712933 243064630 959769974 905022878 721138470 4896343 345577766 559934389 656837185 826589218 536475904 505444625 57907448 807867745 422560784 839094992 965505308 268865848 520411743 801783632 477407254 862519964 597627995 472236852 489945155 966032032 521045612 587275813 478547071 340813708 242916260 992155575 163029342 323883774 744447377 856227738 999194007 544080111 741910888 535930091 287033282 892288100 468798232 644685979 960439196 466260662 379745478 51049622 840551134 544967879 127569092 827927201 165553020 433293126 333751487 644534430 754098051 945198785 922004605 861040184 824653294 501745517 477140550 474956388 796765415 178895926 353562868 992059835 250364255 48643588 909043338 116240761 161399655 770430913 990040194 286970399 276293913 937619928 790531555 819500119 606308006 156243582 630195851 651927402 68157744 516942545 813971956 117610756 57874528 957654822 452306670 639024539 723180443 469324212 533331710 334102537 447950314 464989609 476096664 483736566 921205520 405270431 881375648 946198332 592061101 656873428 468172953 169745262 799589822 766258925 806886327 757313983 644854942 140076743 263053923 827608301 624211815 783067963 570321348 29962581 870696465 938310667 210577217 145811507 143391673 622844106 532296933 649985748 600822008 916668794 963245146 284079661 146679286 171407888 889481360 726743629 892339192 564606698 151025281 494005376 454767440 365649990 707140946 203365624 540735115 320565677 703697766 978473680 464200121 485161845 970865950 665949396 260606793 66752098 208895822 198305830 574917561 184346366 173907320 950099905 470487385 943943983 518751503 131308113 889316358 769311698 292638731 574017782 89733325 646676163 541586044 29102268 135764690 121454539 606389743 557128909 761261359 843456018 185672873 635272827 549939200 307695956 49185371 473080299 944076975 73900584 895403969 247011176 208979879 716104950 636645042 656137969 253882420 594118278 799640533 462434671 718083467 324197445 192060880 341823241 63685643 285688497 541942571 470010476 434919273 157206484 720186479 185484846 186069399 180275519 672189518 150064369 983854104 451740440 350219162 743134809 809468998 828396146 186358037 535606167 286110264 646988995 677062514 216210695 248069227 155333771 537638393 607078980 682076011 785391557 406109190 363446857 660608492 171766344 270902083 636368462 419857720 140894753 774842617 800951200 62372840 735576267 776342425 290833538 452469348 960375317 739177544 717053779 859666479 323776010 336214423 346824464 493682290 633350995 96899763 674851779 752029778 775530506 928367164 800532047 943483999 875905714 401771882 103817530 34082904 879523003 947439143 777839706 305006933 991964983 560291266 489925620 190002379 937881368 720827029 177152307 803265339 272816947 346830282 330446006 588286888 714022510 251674330 296391148 480031957 439601456 603410160 341014340 777212843 560976770 857283617 911868843 7004091 96756300 246681694 426383385 356093038 347518502 776250444 644589814 284958675 884790105 676655530 594558721 227001186 66498852 884306305 756326594 473320235 422884666 849169031 966282844 39570904 184322076 808231227 815088872 633834630 647773075 421641612 934370846 926728148 25486834 465524960 736624096 415526453 159620621 965673626 51843760 309445925 162096232 419337937 638557279 606991288 821117027 139153312 568469519 591226528 890783214 46009311 56354709 723181744 359906857 566499554 132561270 748288468 942835859 872017099 644308634 802231277 47496355 472725783 564528956 327033243 252856033 936695653 260026742 924049784 973016370 102362085 141585355 157679296 212060939 761134967 479499834 30750132 727837875 697689052 159052315 846072178 108910490 360425849 731456589 356854413 127062988 913562235 689008500 215460671 53546588 941446707 714419253 481510319 421211251 869004928 813572086 895203142 792036182 610509518 355796090 116435899 198718663 845984855 647798397 239534275 410139961 761929138 135449211 297530384 495141315 524170291 855182607 592446438 82832388 819337681 218366854 245900625 721128909 198617528 995564495 987488836 301758461 6077472 229351404 343181278 523478592 936885905 647231734 692826457 572661743 406468836 789739299 708078292 264907644 181466617 558101089 977320092 336279213 347175113 758141674 228921147 459393023 276758773 525361934 524179813 953003693 662908197 881452700 825775883 171927950 265575071 765451937 676139492 242334663 391666160 970468944 364368541 357152202 49343240 718587634 57059418 895320819 535643832 981138273 321959556 37302172 257219228 713675265 374082414 436641060 120912775 713171531 867458511 757848905 376079858 545010050 51952418 355197077 979067175 822878014 272544140 466355939 129197472 269193860 58970804 256716140 336597005 775311487 736534343 697067275 660619597 437742432 165109500 617836024 685246292 788132705 332755485 408652322 25338527 763522894 337863041 445741676 135165235 572608192 375747859 920626901 516505997 339570272 92447632 963159158 242157883 461816032 218653571 775874503 671146323 802310570 504976952 163135361 355019175 76502678 951040978 283388123 904332379 993247478 17530376 712725963 376181685 962450176 445644802 33472137 465570746 670379335 706600805 45218768 849739469 508899702 226561300 935896242 621720527 196822994 358921523 389187543 417272868 771774577 62257482 584919336 634782646 827121693 142086735 344775028 702622808 5705712 768950901 965564723 290540857 32994186 750949448 399134527 865845687 87278677 471884480 325046366 710779124 535339963 296414321 379970975 630973106 814777371 492123785 100377548 458297205 443644672 288153496 967609520 24566879 568025276 758017808 341129121 33551374 683067570 354571074 181712213 352421515 184102328 885579803 408325292 262190494 20850061 941319659 289163699 356318153 227419381 830073150 591762011 544641932 239407975 99085272 184988392 654691630 41967741 829149483 827949223 254195493 820629158 842876828 776823861 771946428 257662918 279447471 11088046 522962279 891314212 409784544 164175318 353523794 372450242 806910766 965073944 401425957 831294570 65727691 867436466 489861606 886111546 566752162 102749293 795696371 738797050 713275154 744806126 151778821 533250294 356685233 790583080 601443649 315259926 443439349 998872601 434300958 988199470 203523981 612900100 238719429 836854099 432983887 725227673 32751612 887583314 70095081 491485707 628546580 336866898 767180328 770116610 868714904 858805460 54125852 203350313 71539305 730558045 490825503 197839778 263204617 897413596 119359606 458327977 869355915 980858233 638763898 171813539 529566207 148562495 818237992 803291316 955927195 277523101 473882875 317160249 7014611 309738148 735476651 981539165 497908144 830513484 62033333 812040207 710563926 446678160 576706178 33825258 72067510 454698088 599657027 296087726 799084948 466428283 783530682 90485277 785622789 993685610 380287911 449686022 946757764 891151486 789533488 289759442 708628301 790127472 78771833 735303049 437296988 972819113 394697083 985687608 18864756 564299256 507927640 914987622 852888075 198384353 122026487 81356468 392993154 551212195 650738169 191673833 341699074 167814972 211388093 641032847 570049724 243136733 943864523 658877936 467226610 377292537 355442053 823948543 83529930 505439552 882745740 121621073 569735635 46801569 188219944 276702831 487154537 599708984 326716191 720570596 492586885 305210350 304072494 747085727 829508715 18748011 385560547 363501367 524489292 793726084 171665517 406829952 467837540 828820382 102901350 586448396 442413335 557748430 267305563 685657223 690002541 736603756 512944319 998657060 622115094 906857627 798720437 199358341 787355128 202152264 989291757 70606178 150191201 507449830 603568275 131512173 865526626 218689007 931710496 675967445 158070604 13551495 996366069 534050173 609446065 192961536 460682311 416489248 363020009 797296892 778383390 72393741 437875007 818255176 584127495 957804759 162142656 857165055 440542653 621761880 408674804 218668087 170390057 224106093 81669315 61881345 38663223 418423311 83035306 254737379 914960925 578215615 872392165 896058121 542906957 646955432 988746433 994952682 687860346 470570124 271920540 921204037 239450025 831116881 70810156 913991594 970173690 359424516 636475374 698799591 573994752 186071653 340396404 105990133 250360244 807707094 566122498 115580359 209013274 913736844 621092712 669595392 657105805 289068701 667606507 416184599 310245616 888086471 801771136 772172629 183840808 499499308 21905148 558274982 766909292 667631846 844166791 482122560 726747773 360225789 915007277 285268886 967487919 743491062 980389775 118755077 584697318 58240124 840799881 791078638 998311548 16867049 612598957 540129372 493764555 766031413 494456996 300902182 862423152 742471628 285554740 35327590 484543671 597884125 537252147 444835688 918856487 653745985 208134356 151690643 706649104 350792577 811340074 829545696 150059223 880751111 404008140 147552099 94656880 796343858 527144723 874501999 855134182 957451365 973849323 233042081 805127024 280413646 985106351 794720843 663276770 363224513 361583353 76951579 367501143 46617052 478039533 599277798 516194955 432670060 858363506 354155016 801805455 83290754 505869082 763925545 741698410 54151691 772762408 394091335 798604445 358687844 847388012 448301838 41042127 930639423 515250042 315279712 858599531 141171013 650204809 680642580 665210309 173947982 985631378 592971850 761702176 737381329 635217639 723033509 242475264 738951684 411815990 552434062 751287914 484824450 872846236 252550780 836053287 16898305 440824915 731526182 1106572 901269528 696715596 895439147 492429190 392649409 396132760 96961109 503491072 936659219 680480751 902351062 391790147 392815544 658600263 923142107 292628244 902381365 511684974 623103660 570845240 660279671 351551106 268042049 355172937 890298128 458915949 576123364 554755498 937246935 89100968 916143432 435897547 457274766 998820446 18047940 63494880 563450138 131647320 899078420 421093126 733479399 707897058 886632774 580709760 27035725 310392386 605550845 529544118 987179452 886629951 45460974 232956244 542373661 392812488 827983778 228381460 381730438 825672737 235538234 446228605 81824903 898377292 951996923 401213748 689294512 98391298 219620857 638462469 328591185 123650265 392712132 166436836 423058478 142240110 911513524 61729850 502595491 654033726 387192135 156932373 717273008 965557755 842982602 430416294 106832406 863383142 851659656 201610300 297619027 25721801 985925667 358635130 900164872 297209444 129132430 290089156 411635180 485694102 136941860 593260438 469986011 769045053 69748210 331423690 333710438 895271604 106363815 552658537 362455255 256705756 605811665 641726541 360200009 132185943 732933227 922184352 68831970 792115386 753558782 573260974 940423755 113037382 362110278 905881378 994640654 622529966 495187270 894862633 769795426 152629782 572858405 830704151 798885168 809356784 216617158 892720763 132117070 350431128 939263814 906353140 446856488 765247655 491528099 522683749 707272586 815861796 695874687 972816165 65644203 60864231 712691624 713519283 444266934 241847180 894754719 766272723 501750649 618068913 149766414 498960679 619337191 468901275 640074133 353006101 990299011 288216670 682835070 314076420 221452459 359696267 687086573 396281458 643219579 570030967 73922923 200915743 938103474 983001740 273819016 340964453 88006203 652760959 742017731 954044703 133618248 751637955 172694967 369569914 786380664 738487526 956583764 364644689 789271399 495285029 732004355 103805216 602056362 686274725 491844510 524693522 553755463 918437700 805878063 894340769 289607601 250892587 916065720 851905937 555754675 528913302 947262925 886359376 328889751 999153143 405036659 95666079 851296313 151786511 57012267 564394894 884288468 947531983 873824057 632000217 76694249 541453544 320264543 287461928 194469240 852964620 42143897 78418198 711785764 795035351 449843588 436457084 877202411 502436241 786818663 369727619 23434128 823942553 8075002 627527155 358835746 12946492 186300482 44430734 50004636 700518912 277158583 944523155 321943757 153557540 504142194 550592185 248968571 335563342 450994942 340031659 719616297 301859250 236256448 834820966 758518769 240389991 501091641 298818785 62381867 418257977 517993055 137592463 450380328 688101837 71881006 510991350 28699356 841347401 725839131 294096768 56248938 292795888 287434807 153712093 719628540 526732983 486737143 717899463 357310947 983638395 165218796 413544026 533286882 417693886 704821303 610282130 706702250 68139115 634025027 159186231 508631848 247708624 438640740 739649301 435807327 340093059 29768423 610340061 418562735 305091675 131339100 440418656 226533219 609770036 353977867 28159986 176843504 630684482 650860525 780915843 99542259 414825269 503192031 458482301 530146150 963327850 250696272 983153491 635033936 494162358 686925087 798961865 365437323 884953531 90320202 465990275 845217769 476386839 740199700 523268739 573677394 466054409 786296283 667837733 937862569 17923178 962160181 881251237 119415829 770432352 11711692 835955299 906524145 502036821 810353000 88720480 21781953 280674236 105021563 912882776 343935812 785541944 410053505 613758212 265890630 196095989 732385392 555746177 845068898 926909579 673284530 251172359 168027056 654164900 652902074 842289516 816207079 996158142 935925307 910043780 887579454 182353482 610733443 742689683 166976755 576617727 501661284 738843185 541046391 742536137 771271593 78133072 377349726 666135974 80471413 746127893 164683303 738404677 648354905 357917312 528943093 664680919 868545073 394570975 222796295 437007878 596095661 831771066 829702400 980488427 68223528 924217962 468420220 742905604 344512222 55230703 102168222 356112876 652257027 456755524 854166043 757688224 489130413 319830853 948620118 359760764 822340272 756224947 90989904 203429933 950261984 998495871 412146547 111209707 266138097 983999786 616832242 671957464 579020069 80232979 739321750 903065959 145566627 42355702 19077629 772660048 317350803 25421531 924939422 642845551 152657083 528694774 223759218 890332007 638876376 538680147 277829880 977034775 529951983 704670259 297674361 496928673 213347144 63401904 361368094 341826140 546785512 941910914 398389752 700197025 788947675 328764202 464475526 734925164 714590674 965785166 768702530 42007772 312682182 28313484 876085009 85053742 541233531 472742331 611015329 689502193 832148364 579113023 210455240 622672364 257901022 976869190 882246751 446789083 73849209 668228259 706663338 994187100 816389523 79289736 876529555 933111991 854972690 160945897 289132140 487440554 402205939 856114172 757020904 340662313 382999299 868198318 3693644 334529686 748048629 327816816 381742348 954227204 341336174 84065458 811755292 54169947 722500338 620692675 157673954 797268319 591412412 321499471 452869491 153955438 162788132 753813340 565168248 297449604 223665244 127058697 57416347 186994833 20882475 759249443 274164436 534879167 849031453 386404732 400293192 371469466 426537305 994669118 740629176 578889421 354297333 843209235 946922674 980667866 358613124 915812822 603482256 795202485 770481876 408064237 464227646 67120137 562167867 535182672 157647588 354488020 717113480 852743803 491729519 128729882 867667524 261558401 7532331 722537870 741219762 383810462 370202005 828247864 565721422 473642178 40830557 951966161 328599217 75050277 336273978 158668413 65951965 683152745 699974628 218125288 720379630 86859242 818145491 728388331 750969737 136854946 431744601 35993596 597353212 854588168 863052294 254076053 895411032 157798316 995518279 368822019 887475687 232205515 665160186 906129272 237636040 48971861 832946958 158035867 69950569 875492054 363732748 293356949 665661391 102985331 776200872 237070803 960234716 685831228 198163756 683926546 404526944 891212790 97784586 941310436 119202925 953036102 290879993 812512590 8349394 381065559 975378055 795575270 603179654 810750888 705266259 238332085 278677004 887075329 395473179 917595965 221938196 331979224 772052929 381987231 675585429 444490493 622379489 606949472 971748532 85100922 476894569 735088206 510385352 823784702 228433175 930253459 635207159 594469760 868465638 310604124 715047327 193213400 214201554 942306378 688334453 94267424 691547154 459956014 618685028 647911005 357086924 681733019 44044607 6103098 348997608 472098992 593638673 107212984 13931260 930182681 401845294 74517413 449044302 5809616 237667735 977413855 764713140 764740027 347885212 945999021 101059876 402061927 112717167 632361391 469731959 636980149 108523477 110283834 308739345 705890257 697989062 12199116 491003885 659392491 760414656 640157659 542078447 414739755 83791164 340764495 148659178 848766209 730671650 628010886 12562427 759370537 805811061 780828571 786217431 626474540 348785607 700446413 610459964 584793352 589686638 978971804 43670478 515008532 903810225 853850977 471363034 533319959 340000311 769324531 632257803 482197552 994692585 614290640 377983486 779985261 359609397 232808923 415984942 104274308 554607014 511816623 792955964 451964274 543765128 925224086 999928572 948269022 87624851 411744881 332985498 381786234 250712777 506105207 7855425 798280266 300078714 53296316 152913241 541591918 374363840 143518077 262976151 171247806 805770504 153743211 60094630 639884192 371914892 527337289 342501205 494269982 317891702 189459840 923053271 696914109 718686385 327562523 6758002 39905366 128945647 750723067 563671849 865634911 326919147 507114404 326207757 198332697 757046045 855418999 993026624 448310817 958993240 523597708 817421373 614766475 480785427 622018151 921208997 438668682 794205374 131730306 19758025 86639763 223476585 328544457 286595605 803082221 511094759 645244525 746983371 706074086 216480354 356785784 166366817 602451804 178987296 702967916 346076339 564515624 642797016 211762329 526931418 577109903 197631859 328159747 230944100 886159723 108621441 69938781 106298467 573278895 635110521 264984699 369384782 795183915 458995043 386509625 192281392 264145564 605072417 312077236 99038163 406744033 355984194 665196493 644308737 250274984 182947969 658159916 229268187 513162985 596650255 994654075 310040138 250127214 493489364 990339608 416187904 600185616 223475726 734355739 348379219 995022220 812247779 210930507 624792289 275013095 218190645 195961714 762405387 624618914 475062713 989787530 583462479 582458548 512421532 451352750 806067109 573040704 974941169 154474325 804905611 507983895 344894943 697665635 347199471 53034499 24077754 381351565 398606517 682620788 690513177 479741028 4163132 938349169 569771988 373821173 843403138 134937641 774962559 561606603 880781102 552441901 413943740 26142532 481056029 554561197 844613664 954700609 980179646 494098791 341439920 497165612 394569134 323343095 999774861 511029351 440512197 85423044 324084387 659247654 637625835 259280753 552310096 74716402 347959329 543195115 729849512 659128981 914146647 112429232 680884409 217772534 741438433 476538973 960246437 215620505 104318909 695278967 748973657 457856382 625935921 832011532 662153620 323774651 241961605 888304836 192698720 821375376 130014731 719380138 642150466 207868896 635163291 514418655 997156640 864662046 527463928 514315667 659849954 246974419 471916270 87222490 190669301 379247703 965697839 191286798 455278691 198220245 368977941 359739205 871285804 543485518 98530189 648560886 87828019 900688932 388489071 894121647 764518771 496952703 91973526 211305390 967997770 14228771 661508600 401685707 951177115 885896516 641441618 495418034 374196542 35241886 742783516 216387159 388613755 65108984 169873305 814632110 927063294 455750296 377863985 593969607 88797324 72804424 17399053 662994080 6560083 188932656 743840896 971355557 69944446 53187825 72384120 89702749 950657827 668287206 65712698 946560832 816367246 665034668 382274982 692573421 217266194 726876501 570630672 259117598 773394235 384262015 243942537 213728999 1067732 952258436 59478448 715290740 900526000 464523268 62520448 666807586 947908748 594167093 7363099 910077850 515329637 307145764 946060004 405088723 800990781 744239347 997346017 524873389 197479681 307898061 628166342 206756972 607077916 834201819 682699198 523748776 633292818 692396648 617255890 605230 693703815 690389717 406820241 632453897 345652027 566170370 504512120 315814467 989852722 116126837 240165165 4053919 443193418 880467404 430541256 743558642 114489404 283902015 462883840 622328153 579661605 629790841 171794072 672556795 296780951 991089412 911739629 911049089 902256980 880895900 581953701 245358401 299292734 548395597 347506221 93871124 316995284 311444492 537737015 274165641 475243787 7277119 389534225 633747574 613609222 100685634 206154361 624331021 483292105 554264731 885842235 431441193 436989957 888726468 919200282 729735173 652963250 78088275 53243516 14159687 13090471 395691659 285264393 10923063 938601051 698171953 974578286 935465074 232035521 798232641 321824393 786671626 246178678 85827042 473280479 575879770 499879954 91864594 634790545 944604960 280598495 396844681 153259349 876402812 278129232 553577831 537900474 561759138 41042978 494751937 176154984 41557080 783380274 408792763 103846895 244916197 64745088 99942953 487791711 151730764 830421608 836985974 691172899 347856178 964373623 310673690 10420152 132608361 670959571 805847053 329525483 569892261 559477273 335559285 807154509 112836 174020829 215022238 737618426 623993744 390400736 627643864 56359922 479159181 200917196 174042316 734545827 80746010 621179099 477821376 902866759 775577359 87485499 118325639 823330101 760613845 831733188 396512735 196572033 683782707 291730901 963235339 291015891 262191973 543212700 217963832 423683062 157440794 281230512 300739812 133707488 609164354 309376166 515405127 847284513 70600227 953623347 508180230 963353924 354462777 219337806 522017551 91042475 342001397 659979407 747986752 646786874 470227038 551350414 69138025 615263879 304458369 790770060 844358384 870098494 102488677 514633381 679895925 428088421 661885602 940353921 481598425 111865948 7755405 551970867 710937642 913207974 219582117 632206690 472986324 219655108 641420012 595298487 713512095 3442618 462323549 802816371 22873517 187901150 837100434 483425037 941476354 934164859 290663566 956322084 855212768 380397069 555365865 929463365 759558189 465113610 661125503 226200990 354795616 5044460 630595350 191568339 300943277 607145384 246006822 642019665 222340223 308311011 496365178 565600288 958303699 583223693 756860970 748988832 463841896 960679074 749399617 178570560 512746308 255078468 185448102 107767743 620310619 209360356 84389710 779024001 702432597 309261726 836026291 38130045 460414402 292235733 606592122 56236614 243915803 835804317 996224284 109209800 393941117 242677938 913366128 268105356 854470539 332485920 323119027 352366692 733546580 73975047 768822340 247894232 706843825 551424968 874479985 427469691 251707722 486467410 640230452 800695013 695848985 541540423 105507314 832450192 240426914 716368750 228451899 198352477 295975889 839575024 612818199 956977005 929600793 29039227 673863019 861774172 949854849 183995319 438451601 891141997 711194435 600984387 202307277 324323597 106775091 539149064 212765377 653656846 205889141 80793535 973358505 967382808 137280814 411690581 543931216 332499893 326132226 827647035 151430726 12227517 467490373 637416862 328291873 988942232 861885280 410208667 768355550 127691674 645418992 580319073 509788689 549777204 319299675 275606768 132322664 191597699 254685617 444146280 879437109 601232784 734678166 999889467 814509620 512070159 551689708 63079003 713508560 245837261 273390471 260553862 123296716 571499907 905561100 589200016 899351775 405722427 423467549 310112985 498924072 791196788 94519236 278125796 705716989 142326319 554218620 546022573 919577893 28846852 995130487 21592349 941212001 892769809 330041035 777407045 347256259 429905891 851197490 636389377 128579648 26403932 332033767 417725377 483089560 697926964 230999235 792039062 70980836 845705083 336934679 779019468 784551951 735879352 97328313 428530696 837077779 815995879 417576920 193056524 914904625 104957765 298649778 215279346 196253091 372593746 813604061 85160299 865247350 377682477 620233627 14347181 171225148 771770938 742312163 614059125 721342147 878528588 4746624 299837776 296384357 811727394 484191323 241780237 619825865 694735703 492370608 557429767 176426825 508318093 573963858 449849046 370324847 47825364 894644351 220095725 936511006 270843550 744468345 930270297 30379209 262553429 62393713 471773068 579094835 858465856 641133998 345896629 94339047 629146647 390373422 731318340 407286319 886548129 298569571 994226331 239237987 134111353 527299059 501045761 875096160 754676360 51160679 175910776 70369446 229818837 720012803 812842081 760872565 826244766 926585159 86429023 297087934 892642978 588175967 960619331 877498776 566246749 213971167 651426051 866079785 547379311 517396245 681652448 5865808 899223566 329575962 728928001 971009153 751643996 656532879 401491381 237827935 926661065 280547643 578217720 195752024 281243404 695349410 22882562 264718626 921963121 410339633 466587823 329115426 277660301 289925923 428519653 203192145 289599951 772337032 368378099 341691696 851537149 384154690 928190680 996250185 132412428 950704892 113397421 608067986 163195613 266138983 992846744 744773637 544732657 501171580 540072567 911050188 229950988 185795533 752871123 823351824 330924205 969777072 191167441 156795513 986480515 869568876 590034230 922445603 607901404 31963414 903525542 417992672 216294574 540968053 151043727 600910435 22033033 899491255 776863040 105991081 6272236 463397129 726451346 391405324 750499001 974645787 772043915 596325026 790669119 298609034 601670161 129812416 751095602 639974818 177718592 280405342 8987000 557382348 270945495 124094720 701786731 762493764 388269622 313411633 75312015 304224805 766638026 484731749 796262897 359605092 410189291 279248304 847991726 835464162 932583176 327594036 816278783 988307241 599297610 657319469 958844369 533332689 296632657 141916527 448261944 330905578 41028844 391538997 202067897 24238433 749399825 333346732 972981295 637519327 326517535 812563432 51669639 505379300 162543695 165588986 688051146 73410328 874859682 732312735 127856668 581256097 123335854 137088415 32194596 843554242 810365251 172636832 556441798 132975442 277350270 628716 866031245 291907372 990606716 587739314 538504488 679827229 549307320 969824768 97501732 831890102 163293159 203781249 597058458 253841753 178185142 34821101 782859757 376891873 69809475 116713780 139869574 349609795 921558497 551631643 185744314 126146618 39936110 19930618 676670927 436559563 747687302 503663944 78816540 535006257 406180180 243812995 142054523 735196804 825075461 89190553 694784103 437782564 561435048 885820761 108647223 285881655 765466101 599656095 352541381 418629584 506936245 999247643 696302897 328411139 58720596 107832302 104728787 37287757 241343642 41536255 552011970 420896916 675012686 905672369 250586392 787462193 17064954 436901283 220408187 178357161 347112295 980150430 745250738 292679778 740908606 915179812 287044869 333062672 568751995 817778632 70460244 683092957 201188589 187514411 71724211 946200242 633263052 990517595 524375707 263488902 946018268 311975481 193198837 197728905 274974269 68459486 760362446 76153770 762571800 393698359 339876823 744521216 711346878 910407743 459065840 239922905 161425479 28593370 19442921 805876070 23296877 992479324 298579109 375051705 33648019 172503842 477091727 482137908 354406608 783027693 503307665 668416367 501689840 450753702 869038081 235696025 677914737 629121538 157200024 258037307 213379294 841270608 62074763 213471566 379755261 570641058 815488528 502018315 562007418 491825867 241182680 81977142 819914079 572713467 897118766 357647768 557473004 168117827 481453540 856859371 140913596 102244674 413601390 886604019 368458269 655924386 348264971 324863038 742841155 547672520 473675308 927162848 307273304 924010176 525266853 399896917 400377037 704095698 361245897 479317941 40925253 347971613 696381238 795563263 909560057 400914496 859294219 311712771 743652475 940921625 123754505 226386973 405261941 956610746 770845703 434545145 853180498 958865152 683368181 944015117 599115965 127424241 240631523 637373347 878009653 73923638 177889289 913061565 686553285 579377614 480348073 446360814 508490955 962620249 112763538 723039851 979995116 810509723 256674181 950741775 818388839 842552706 107289816 756804161 475077515 589491256 203136768 758423922 882832090 299179204 419186791 233577670 546924218 936233955 256216420 166128286 409572937 259210332 623133954 960178676 680790316 11909943 989666812 443076338 575925171 332948178 290491322 420427675 915928280 427299096 946675826 425947934 109404724 311015149 686661242 723579204 586392949 847854304 430249659 333140404 400711623 702318284 55676106 699812532 785961053 566912044 355300360 381909441 340618216 251171672 869255256 695720705 828381546 412172115 30753905 442267704 29658845 261373421 87442945 375287873 240693261 39243882 498282418 560583351 177685311 944019143 32122441 817606227 552323653 812301325 74983912 766350321 189741388 721969487 806112619 409001672 883440816 684960553 657502867 166443031 126025480 123859051 79706978 378717553 894951678 980250480 546065112 142038721 582120643 266694954 679428761 621980935 64919028 256459333 195914769 192805156 591577172 290847390 459547493 112927077 713698505 559869912 830104364 848273811 16210862 249826446 507535984 830038107 165343119 409729460 477720836 205866582 370605489 568787024 917116007 517036794 98179176 678547641 72747607 614766066 729235274 627099518 849862008 389559980 80862604 957122042 610285600 970604982 329366676 680242394 81595814 896257216 61628748 407479813 372308958 89835126 399173932 492179024 585917212 33119047 523481686 981772217 2093281 543954443 367250511 433362301 893383792 817111147 974444151 905645954 220207419 757832298 656176249 723820986 893143024 315369681 164286178 380730449 483696264 34670042 318753866 190374621 612932944 785759972 479029932 787517731 661173392 967607247 912566385 817858076 198762625 237411246 695579323 81117029 810841637 573197181 599441985 982407619 306094191 377683904 195508391 932751851 480781056 691415667 268539785 706139330 514474212 321287452 837225069 140242704 946708964 39278975 713605105 687886262 936849337 235056043 404788097 722445010 991658276 246685497 898880928 144990813 975270859 855512867 249176381 770714935 421918596 473249956 22628708 367613103 76558154 896270477 864410440 43720640 198568007 948343985 630230710 527976116 60517648 546537095 329496733 88079563 972185688 948900873 426400400 985438911 223997088 64698150 417399302 791597110 366645174 826903192 210606674 936211317 352976518 822248075 109210850 585590174 412024092 945936595 19709745 301871677 496192638 814305467 493256216 79351831 962052087 916282279 232882469 191733403 170685260 938972468 659619911 238018426 344091777 78158868 507249694 264996883 286138500 153678028 430182508 228957876 652506841 42254107 511423887 881972311 18572756 919385312 647087446 751601098 687847050 850143831 577847556 905405403 23632105 518952640 413353282 872422120 416691225 765499737 542817622 877711082 699399939 243799672 389385208 83178407 42601704 425465761 881821838 799629558 14577290 441513129 513724587 167763257 434226510 876229197 862037750 664689058 421361728 464261463 552036855 325181327 351459518 96162477 155627729 334859004 486283409 122714674 628204127 724076448 822716583 404350549 793708635 526554180 372244184 352608800 506026686 632948359 497454410 627486880 8141347 585876771 25865315 269420588 822855030 88884992 589069068 117864781 787171576 277948462 804589849 426405721 692673176 328729520 73732344 655671165 130014302 129704005 772402023 10574096 268332650 56087782 747917530 110058160 978493161 484255884 456591522 815864562 512603322 913265496 605514104 507799848 170181266 404923178 988240426 360762117 744629577 519238033 79214620 924632256 399789039 930071997 914695943 85821116 901202310 721640630 784997755 17718193 474211242 982129179 351113953 72723981 252027315 197132203 764961478 555427702 247318803 278670999 123745207 782793277 316474021 864916144 377922196 320993533 385742424 825684078 810807521 707104696 419954187 361188937 232710761 401103886 639770172 886385612 409252236 986220913 770752776 440736707 89747539 317645091 755332401 455980623 942569868 2607721 220603973 365562183 665447115 178673093 666521605 965706122 204701824 565839007 750411673 66199033 354898414 285019352 934095671 519086113 351274433 703391597 994553210 843718631 648912501 764682498 744921992 428484876 355860990 791497731 65923677 971873675 412445777 270713685 106785132 77243264 221293029 96267964 179595791 831536099 699657976 289223247 861846012 891111907 755005376 821367574 5849123 446134865 918785770 249691505 234158405 721600991 102220200 221951715 521941022 470967693 764856986 540732721 488032832 49407341 796965827 912223386 604941368 645152118 696264625 572424000 689963325 130282968 242141391 178509005 727530902 613188749 779275649 391782975 669335830 703155406 930898175 179671044 538892986 416595250 482187418 725148846 337305161 104425744 332501235 827369634 575336454 271859632 723304827 924244275 631044418 807461835 919211251 653672582 329652364 474429852 887890379 669174934 997740617 914211826 959909741 759636339 208239439 411926823 323713571 527354483 100305204 123918862 448962433 842715531 914602443 581290561 339128172 293135352 521038441 701024078 559186236 163021365 309108773 882268315 632236555 739015670 29674160 573444031 80411062 344747549 565132945 461117616 707491361 512862434 160964491 402527526 559444712 734281036 508253121 151168143 298462249 565160746 458750637 439960303 429729945 340751886 86513524 554479236 76930930 631554567 515880177 322219115 886237901 57412409 195972384 728629290 921125569 720560872 595097382 326785975 470003350 885520889 707676563 46335516 441435499 665799608 70982473 350868693 668462039 294221261 911350235 250345524 530892574 153701476 82866340 591757761 781486647 136815551 720528538 111365757 755111148 121950193 125965459 261475947 516535639 734668551 634565735 680227017 358176850 269535556 807424184 203548322 443119528 617162627 615831731 859939516 543518384 826772817 520812228 885192680 277244899 389916685 741258350 615978298 718017592 290444864 942148781 742812071 632740485 163012883 707846599 447099090 869070063 720952347 999780115 701684563 897249894 872368975 41276427 107536189 271592778 236452392 95171506 521189379 494563547 3952230 942100904 372305299 78417182 266374218 269352765 716717640 443389485 10512717 541063288 562026357 219563595 433331503 389118502 93273349 564652393 477886025 392027122 5751869 202951087 490944555 505687923 291929472 50808158 987128178 827303508 266719114 886605703 273483365 978148925 476648507 139877870 759110783 153431001 137591174 256462825 452056170 617329044 359350529 661751679 621394396 969883579 470643413 174237879 989648934 718586879 774108186 622097855 993234382 347259929 585413015 804093538 570081816 768219765 375862540 219812327 78155926 328444673 965131468 293576949 179221542 506329910 983231267 354391965 822752982 630820029 922276215 773874500 252512764 549782947 868919568 928956213 387877984 365539245 534248749 264595166 472047322 738209354 652771715 827597447 623592186 360075960 318817165 754577671 433360986 67459373 162665329 591698491 787593712 94903703 983146500 804833314 91945710 689911375 996280264 434293608 276832702 780688197 699033316 894124689 260601748 815838801 137989542 230977974 219215834 944314209 986496212 836952074 413147166 72449690 9280713 386119079 696474775 188027465 865730000 874242780 406771678 999748357 763737989 36950139 707621954 653188697 862809272 153585657 963778127 742013307 4471798 903186934 109485020 545624909 175687507 412537717 651339880 530307480 234392183 649443702 738238790 382729496 19209680 883551166 482036820 469569007 56111016 307784931 987884211 4985665 214169309 539356292 353656062 585760881 261696650 989997142 127917077 143889175 770049058 901630025 388857486 500840545 144539564 457593486 23409975 109576901 890047670 405097218 945425839 783348166 762605076 320834653 365462982 716391342 276794358 478645489 828617823 504050035 204738908 640419020 646984716 816944256 646333698 327348074 165003959 750871867 766992059 20677347 438324082 610545960 561445411 879177758 107549143 32177884 575288261 27912648 325600949 45839339 124932978 473251695 542386937 341466614 478679528 860422294 814242103 70443439 735551155 917693583 875724771 357182950 647369101 334184318 779683455 463308364 282379483 324040366 737376608 750723760 203736641 709021519 689954893 923541555 373037551 854517082 35070296 882463202 855042135 700241039 654065029 595558358 762597766 109944273 142093117 2357447 311452565 66638318 718765794 517414223 78796243 799443056 291032079 652116976 696723487 669553031 175794080 257704170 490211555 817945394 432885508 706497132 299051658 445120223 902958237 802619121 169822526 4489944 448735530 125684427 731690783 225978374 909288298 422416354 833435810 654457018 519617213 388477267 498384248 975118850 606781456 508965975 29214182 647869139 618077833 758160085 960762014 117222974 262565444 150559346 929770399 246030287 426217881 794916394 298492323 23167109 524988102 146381994 404776774 826663714 410324445 536668757 72517637 902153279 834667528 525692984 27038840 602799887 260533741 371217978 9600976 570074206 291183721 268887580 750038304 372902510 172068904 222066944 263006454 916237758 674399227 772112139 804413109 725836701 173615026 486200576 549735417 667987202 466830894 6576911 113358202 542129922 569166418 889166531 311581777 477006294 557299887 741223276 941300586 385132265 539267023 326450217 824128831 956735937 735970943 921727685 785228608 990587815 600009279 735751912 694101655 57859206 456769323 310554962 747256124 111058305 246031537 71891632 624796765 868561757 470860450 914074761 217326544 264390943 546947337 83350055 789403749 622691279 132971201 280090952 22869656 800111789 874462454 162700316 126820280 101857812 720471759 12224169 119586729 708490915 156725502 613223916 358155631 300934987 248824403 683152993 164049456 171255942 782572539 692365362 673402470 10187226 551755771 280587909 618799411 806869948 861276581 130824497 478779972 841019053 887246763 839044740 441510756 188518881 675319598 301895945 93540675 619788487 631553923 595780318 155665703 475557117 445428687 93630733 421214051 851439335 833138875 525251183 20412384 587241255 401945833 373805216 109295449 479870560 401569204 909120509 420398090 840212344 248457950 516384242 204573598 727728220 814228329 271037150 14684025 768315988 781297348 32285606 832275620 995730901 322365391 881282628 855362852 416972495 142299658 11072733 498228766 411091629 411104818 137121382 923347983 972730938 506241161 848451466 147978149 740694518 387595038 50818613 962768633 602899375 146021690 765151269 873738080 492787661 88728385 810046825 762078180 554691957 619313710 798361865 306882922 478964026 72261129 790436674 639707377 656085749 231280042 889217609 898295532 778143584 742342281 989085909 543276430 26255774 4194692 174012186 103271845 243841345 805376532 896759947 50509235 550150105 861268557 245287052 948606407 763028639 87730238 951539479 714541863 998576040 98565662 412119574 84580323 912509212 366530672 451501949 803869115 909020904 439337577 30572660 720612818 585760210 162915 360831610 936526040 904939614 149783333 756198497 305171910 608814671 129951204 200339802 484513375 976221058 893944310 827348916 566848582 951925722 583777246 328887961 266091722 657854465 421080694 772171625 554044516 399955544 746678920 697406213 613295587 547378713 951865942 24523081 901041135 209531609 915016193 110893011 209466476 966530250 528371647 898515359 485307301 330836729 558335575 145573464 785339791 856313524 627028879 206469410 386167782 501141847 438127375 585157264 242110505 542271795 771427188 543607866 820025245 298259343 553347039 660040499 457916745 846415653 780337503 578329711 426107052 703860115 517445629 169676876 204501450 529865648 266086708 33993976 295231533 613408071 455916086 168712665 672813710 986458046 39745771 13884504 632948860 178594165 449080245 827308565 323367549 560836990 541046559 828510237 670184577 247820432 369234660 666806461 517121453 853277816 459755408 585914350 2618465 679024714 243368581 617425352 198064516 887138376 607013007 998231800 861796820 758584743 210972144 200912384 739513941 91297373 262718528 38136602 131069586 21455446 64360593 252149435 716234959 777905159 908489750 315831166 240542565 543821831 156400128 356346071 11102894 449587601 577217549 270167153 840527906 667001152 130262131 758066431 258213515 334685746 53652313 489756440 142136323 162621067 546456160 437201717 954753893 153809081 692639812 977146809 442596116 156948123 912218961 236506856 820937214 102103323 302158544 313108521 586008310 182231844 143180493 708150005 817821782 65032569 962372372 122103293 319966059 260160443 953244310 616526637 501366391 64971552 408408672 531024881 404917771 716602051 900834801 61918723 36303181 652670605 958284714 36978014 102232769 952881555 138244438 14117543 701943824 819399614 399407103 178702258 849589104 584502552 977874928 447563658 408888501 714744543 317937528 369915016 569010055 125506302 733397258 28009548 902635748 954636191 205319705 895277018 626336236 687835816 579167479 316518999 54613984 896995949 88078104 176885998 367223927 962398009 174386939 903719036 294433796 90657683 838443893 632411599 993552449 210522504 452847226 2029312 971810944 617328643 373356595 831584257 471140994 717811159 518012243 648053909 421077893 888495768 743814016 328223262 367292270 907772550 815293225 375117591 199726140 78779139 334557744 858182215 128108549 449710095 888276677 106631871 588078186 393332802 36232991 10389436 9461921 935181459 796443417 932014110 718168607 308402524 685385759 876290521 416367741 906432525 951476185 56421683 722597305 294699575 320990639 307806074 472905991 367475653 126053178 284579454 229256982 935208761 269874868 338657153 207194883 615075254 907072183 566883401 826137798 761926703 335074477 235458097 640952299 823788154 198378838 850953875 157944063 564603165 146491673 151707725 810204086 44519220 359831935 177370240 331666495 204763449 819407647 244701678 768577895 792919329 624569049 8833871 319244349 602164557 242176219 197524009 678647243 396497821 277567701 55627115 874640976 130702104 129232585 377286036 505710538 964562628 229898706 876875943 998179967 280054497 314574982 366129186 643213327 274556601 785361808 422724135 872964634 22727933 418160439 911565865 169640804 685372279 498663346 828439522 963269417 151087435 674782862 793928006 382938873 44430129 183218282 858877563 882579479 335434848 846657387 228273786 517408978 314061017 681631613 434087597 71935703 577324086 252830819 297505500 183408395 23303998 286810034 311070311 696146978 563700920 717284575 935765849 941010135 476918202 321632119 143460408 420331610 741394705 203002458 957654411 889258389 725456625 311861103 658621453 156483987 34192374 869698910 576292198 365466167 60283537 414510430 805153014 312537453 76298142 591824802 727008103 603587326 899037332 874205701 128478007 828345384 357916289 958476561 491166588 509140939 427565182 789412550 388404050 44618631 322827005 546979905 605818899 86587065 696822860 13630901 591677982 42300245 87902020 164058775 500851890 957485796 417571495 859414278 357801857 425419643 488842575 815633986 297536735 891843801 97728999 390738651 471403938 892868970 262617926 612362027 385650656 802198955 16164044 8776426 97029537 190453628 968624790 891505347 746948826 824337532 124084300 886055908 21073236 231203669 79603497 610539868 752084235 659767514 454709611 898225989 224761194 405707833 867916303 875990573 20673524 972140434 222848148 200372465 984043443 560408217 909891039 845631321 633189386 16251659 784945846 529581114 307921637 539128279 267526519 600020134 207238276 341255241 730480474 715112087 511097498 470996310 511162789 642592856 525355463 601116505 454468181 699631643 649932978 184232625 150284953 225608549 252845250 72657508 103465968 789840761 121269898 541922546 500926337 420061033 809676540 935367415 945034271 607564913 778939460 118362462 788801821 809106982 761911814 543667791 168481236 725484134 917796617 611659102 783456971 486287602 661982184 466934490 660422868 311762048 371006394 354654039 492588950 504605549 945388608 833407881 677534638 537311400 975041584 929055783 879660317 152363947 868739184 464023922 336127795 891479438 436044499 447996722 603154187 954562186 515669436 194520208 775584708 655563691 587653158 292976873 810441525 788089424 363426429 447541581 436541273 501057620 686099032 640296392 168859164 887544481 615418916 494274620 118492551 919209099 141267941 699621575 436812518 19571684 179180122 176146909 686486682 197668349 605309025 955393010 693039183 85430637 612795753 69040891 823922384 760123142 511287233 550765564 740805560 722563700 719533201 112964239 898263020 186564115 720442714 956100234 628701461 565692534 911444865 843580404 301680541 586085625 883438022 717608021 338650597 400678573 124518117 509960818 894960334 652018800 341324180 787422182 771108985 67454729 597793800 407478312 721303623 899374797 17830475 846841727 500683358 361422730 137854740 459482295 950432139 566467382 834925229 876939233 665057903 6732843 385889156 592687809 280476572 513316241 764002577 622529515 294487367 215941344 980630097 867927876 983836804 854711641 246171642 821519746 837504609 464021025 176648932 972535047 937406458 848977505 987649393 606734244 333775115 467888183 960967639 70488596 678195965 804676167 904977614 307794948 540804123 589954283 621115249 602002024 337049168 188246469 408841196 421839924 288424039 980959011 314201417 119356934 819488085 21167868 677822782 458427895 890406354 931878220 244690805 43349286 232225357 143349177 934208263 873471559 959200693 939530989 298457058 722916031 860966051 316936113 105194336 246042650 17527634 138081597 737935516 690166842 161882210 589775644 513916045 984588836 860811129 652521608 424427534 860913955 182727631 192895568 420817185 630026406 574734556 254346749 977910499 385412873 670509974 503922520 332461436 935254463 888914131 607402609 193214254 544702208 704159295 9885248 498753760 82205165 602985343 200764352 701509667 914408719 71261755 249592636 68433654 233762629 550767396 800153935 161264934 614726622 706525933 323685080 866582716 716324311 808805122 929250392 53770105 376645147 552674270 774442104 291143512 967677134 462826623 954894455 489057070 450561460 598962561 414089805 921896059 165874614 560397197 164432179 724678330 685636455 537194725 199352441 707638770 281375701 724080171 890780935 504575807 626476212 288154525 410141293 32561265 797465451 231613935 268215509 978239465 805756551 69199731 49949220 81521777 779856078 459239124 332515941 922910718 946032215 412065055 936181052 184832133 313542911 175632504 227713873 713123885 739009585 810020706 506108895 212620766 71587239 984247972 16837391 541912264 890184931 579338526 398452926 935340395 157345311 478740083 623956436 138159557 679894697 601024892 484834757 950877891 500762255 401563829 36071811 816800739 606067008 697619874 540976832 17725884 169587980 607446418 279581433 908685111 842042093 303784423 854411904 988155665 964229611 205495454 560105997 1158845 829957945 718644864 688988341 258811235 280857278 913778654 870788576 126023428 572066670 16834640 823584108 492364847 535872254 436775869 738660619 363395113 584808051 506958165 335746093 824192514 757855166 432248927 939007205 722805451 387316402 887720395 87993159 670806749 158203571 217972421 807402804 812590359 716218044 359857301 600237167 731047153 221896781 845386094 940125071 888525113 322405122 933059828 337522349 784849292 319250948 115134480 974149755 381692473 563130957 775117674 65752267 434020238 228692545 469447589 240885730 872961448 38352828 179436306 920427687 822669542 437794939 780354719 652515343 244333701 699511294 696418795 24825905 229968847 53630230 206156556 570361464 94795514 197536233 439578527 791528021 646126827 982336636 670254259 157321808 28908679 242664182 846325630 933512138 690380835 959025712 479175683 809574142 662488518 805492411 969802320 796748866 13125785 58026800 736185887 118567283 771491807 425846256 291429284 960549247 932451058 388571234 149399922 847172092 759156302 215802129 837620587 525483883 293331523 789694087 407560668 553388957 901180456 757212265 146999131 576804571 136853234 131917110 360424278 539504961 869026620 186803091 533082628 779490575 75180345 774008114 596893792 601095547 762894999 413680333 148292164 750141322 727360190 481189929 335742394 629435469 394171843 298989336 1205300 428233564 664519212 972860131 178186023 368042299 615350594 874829507 767246480 846269645 527658084 346401326 824439149 511528049 900575971 823094485 343579762 739288192 824855578 980525452 816500427 545322350 429750261 851926132 126925073 189558696 579502394 846155982 388833308 864505509 127229470 436389793 386557417 33185817 977609033 948954988 758898206 111839 826255033 271509972 423420646 452129084 809422561 114331878 845057798 11746099 407124476 251409448 401835803 25697819 692574214 163987759 383919840 403758431 262577136 602067123 910146427 417878510 360201092 642400688 384618189 371759936 422386613 691037473 694204016 157304111 884098621 569626563 695498779 624023686 4317480 892904482 197440822 350450781 815126161 814566623 512842413 173662868 66783372 394846185 691085288 145012456 327302123 612771593 409167562 338378205 530006529 499023043 668592955 307964370 595763372 872533809 656895339 427128491 686479638 407077135 769666590 462062526 991508390 909035632 703022470 588525099 139521962 838744213 126326078 705542151 924109443 95657538 279105215 12258599 804335116 210390954 891859103 257585892 435326034 865647057 173436306 709913743 888067877 517089242 162212579 774056973 42587831 535624550 946834993 671633124 178249448 759658127 601915338 376773445 604513823 36427991 125226673 936413023 226624307 85815745 919952678 480371697 69867999 925566231 568327955 52321679 353871518 39246999 665412830 881524437 125608365 189429886 181813751 309356824 320423637 580247544 948792611 256732982 597650337 375339127 36954464 823633028 199458994 320571963 200030431 265906574 745309938 645338547 189151349 488460377 492973465 932980126 353667532 701702353 487048747 356558750 369276224 681500732 194304189 37770468 730715534 625934975 227331764 970799863 591863785 943619625 590882904 668527682 735056704 833269386 336436000 707687795 838005625 960946551 188753241 240385589 240060034 776692343 733634273 645024564 626127087 117636262 194633225 518958672 411319359 772478601 705946169 194299842 133764970 491922260 813678654 781627783 456996372 121498742 889876932 107467633 53366824 121950437 165799596 157692720 586707597 883208771 754990459 63441303 953031843 681332881 350427443 620146048 198398787 702358857 923496745 767857353 492238139 752508285 297881284 96123871 847568380 133675618 380526981 289518644 975465715 326310966 181288462 202203002 107740260 569108540 85413074 177218047 456400320 681921345 611188036 761568807 191072570 406630319 220155532 432211215 318437837 772128384 646566007 723115781 994430948 10596738 909700609 591509665 747149673 186639731 400434413 303426023 964727843 718945062 141173644 856321669 272555304 459452701 816539278 61511744 62097281 764296556 121900579 609515986 903595844 150185277 13496118 296630203 888491021 150192488 659066541 755509258 154201015 567147063 922247830 494957725 741328259 930460457 145023744 104774868 86038350 667493163 431815477 434837884 99357066 259260034 765883830 539066210 390114443 339848594 618189085 164351837 705207918 801134140 882451751 338882065 928613357 1893558 547857466 703868319 935673456 367456879 18763571 895743355 956757242 426880942 873803878 363093247 121359613 63666705 328632784 515169329 694930665 648693491 493203569 27581505 990233873 361445992 183044868 567634987 719785630 462446789 661798860 790343427 210439743 387570531 126208703 170245833 237285096 352583240 189674004 224985530 564288565 317636178 137936364 545620803 314851084 715490542 458575164 136342781 857422046 464916371 360566898 553638927 41995856 89884768 112682466 989257263 222901183 248881044 180127851 128758810 206390766 11011351 946725737 979497826 176980735 992575274 308291221 642933438 248839046 682957967 348317736 464541004 81068927 545357948 84816580 326673918 609603495 255068647 911812724 905024505 501679743 140318144 913895285 748956757 566710094 907178494 757679617 197264346 20386214 903417592 875614292 142678672 794691337 945501853 947887057 146897261 522836799 159738159 778881977 51307024 820755857 231801834 787254804 805735665 6070989 246332940 325226238 190614130 372880395 162021276 865625789 73300779 508487076 579812717 200930697 462089975 829483152 465516304 938493960 331325943 876516460 919083816 482966804 651642486 367234751 264528675 455372824 968885175 288947475 401490154 658792292 328778127 57793699 510049936 568781979 330280164 83101059 784317906 876508015 678985733 994725369 874842523 201241410 484596054 535754945 894971446 487380007 633948787 443509217 738854683 897398245 234217654 153081063 731123566 475031544 998076316 145972143 203310608 899543379 973423665 343243326 598344101 190589468 967415991 205090852 123970618 151107948 64198190 626195270 431340120 646254945 328499685 265046415 454698387 461138366 498562964 102175419 666128090 940164621 374717565 696017677 646162310 208772300 468980215 586086199 852124004 691275887 311315219 522465003 840006195 771586147 588412381 508052019 698447679 996790261 688808703 193206121 717434820 47293074 843763115 30955784 211147541 844816027 506146634 469109821 500336851 515449270 23367948 613925965 777234681 243715016 763142154 310400265 96362069 487255100 912388521 260246685 975481785 78740689 764915875 602548701 115001024 33911594 306056266 852149197 12003945 913195835 139520445 890453681 261987424 963653794 46112856 157958090 306647447 749885212 686659572 377976288 462678199 918311271 916213576 724264337 371036673 490130474 246076608 625207250 607255494 726582394 455651939 673930852 437859806 392946704 487009986 580652879 583643780 436990616 287879134 368625415 390453923 429388545 319434674 673514794 181570954 887505116 189967822 668323506 995623292 398501921 430360994 265043175 740701174 993775808 52437507 899291933 540844871 428994331 521094903 854469392 89559166 658476022 482399893 622218840 283235354 932084651 530591880 769733305 184780055 953472107 683363795 679885521 66639691 322964558 502211354 815242 697125406 422735582 459053505 38454831 54260318 75146982 863959932 385157686 258194365 26730754 948151952 563975881 375887202 45962282 815477304 886549941 556392435 974369044 74291575 466975113 694549762 577285538 198152210 104811516 476609505 311591669 451369586 4952602 313317442 871773816 86903398 931127378 929546438 897232343 142642414 17224564 306545433 543198981 680976600 400425335 369580504 184607901 718374558 924192218 581492988 624287635 104306925 420706902 827051383 224527213 302500763 177150877 945489294 950236757 488080269 49059926 384317526 615304617 347989977 199662514 474950538 895865545 940021943 518806258 573647836 486590880 685793924 984532376 555639792 373946474 940848938 867779470 677478590 376112112 611337946 133749648 348994870 792496764 247212676 226531292 228112431 53546659 339690802 204838327 686738499 363285504 541950366 957158599 246989969 53265440 531099090 420517003 519070207 368113569 999611004 543800405 303564069 104083582 706968435 504482743 940601406 87800857 172121945 576372673 696564595 308748103 239504061 140774284 142882323 148994647 293082271 426236761 30038185 920512174 849207919 103244255 43534300 85017167 977165015 642309651 973920008 572053648 258033437 154751517 612830693 798236707 52361978 88832976 780025323 905203709 568511417 990218540 255503611 388337883 620914954 814042288 82997436 105155078 462428062 810384443 471270710 479686750 371306936 604813468 968975486 597633850 322701870 871637261 599307894 487749553 496075444 613333864 68826268 767138083 483649017 106733112 700607535 460478246 244137737 904980487 511943924 493647070 875488704 527438496 601968544 550776291 443606213 919346834 810223918 818949126 999667492 235316293 267003047 231366590 605355190 13809265 989111545 432188244 759728587 456369330 698021850 227720124 769563242 447021579 999798644 881000964 918477527 545667199 316776124 126225479 527259878 642025059 927489676 252614588 896918133 451227107 209555132 166936701 53234892 202740431 6463959 400973582 547697598 244296087 677798514 781483554 911795820 517496654 19939876 390173067 18767513 963172213 168340022 352973917 609857583 709781801 162438866 811699783 474117063 836368484 138278160 520075819 878106772 926860396 501583128 923952986 930370929 605758027 91885937 152853349 318629159 787827313 22379250 116574273 987001065 869642931 346997759 454510347 956181298 735911539 736383554 709754969 467002202 715672013 453991632 610140097 542660815 221854608 315549622 953374535 738399460 294482213 406231784 731179738 324294124 641457555 770508489 492927414 341001411 471138290 566539433 157107270 602891100 62106133 821630310 413897838 433130308 532079257 352469714 258157118 514422399 91302772 717483386 288775214 170636930 83726025 660668218 963617608 811987861 815188922 147356259 160437903 324535574 92298382 282713626 918023084 425133020 113804167 860010708 935746457 381141475 488497604 751213321 754659818 298377181 807646668 28242554 28702136 858749861 192101463 518797729 399747287 403459406 218117719 445881269 185813311 223659442 464142891 905261641 353645582 55182813 256036908 477011062 660159511 606472287 12348805 203515849 861074572 334435072 422552638 789886357 491587421 364763594 555348014 239547699 155470234 208489342 648399574 222169172 501430449 585240726 934459796 208263336 93907602 586281600 617190851 849842903 342036861 44935834 262568535 154293140 443039468 510322569 237901457 721920331 680959323 510768343 481352688 69113492 576305549 541746349 774575811 53087055 89048706 801131533 915318804 730398375 924734644 706392605 459792476 126858136 402720201 947544442 30402465 975176765 183723962 677243450 664200904 33075487 883184087 644468570 427342764 911540938 839988255 897698473 528659358 391964458 442998456 19542166 558894412 438976159 468655680 141426101 286533342 645067936 653967682 147999377 39515091 466504626 236450586 106105071 327346074 503939117 224484572 471904659 907080165 934327535 189235097 944134068 722864370 552898426 418291169 730317114 575969856 700212123 789460931 503388978 985119313 220839645 522310863 469201177 257695814 817564678 895137463 924734073 205335713 420258697 424432371 281875943 642556696 333857609 51947212 959901412 815344205 237309109 568976700 938959055 960151849 339879704 365081196 276359700 776549079 65611061 1300591 343114503 711737858 384242830 530956923 339634208 329410279 502285752 625373993 566070663 485486333 149184458 942256387 759365434 418592899 924355301 32848877 371148452 267597050 788144337 477942219 930709259 441860214 82525217 445533126 331388343 298528949 928822597 932566634 320743118 558502734 796825833 768386154 270657301 640851522 991989427 388395094 70523310 288590005 699638803 94063528 23623154 14637738 76160316 703967089 168613699 967616450 465273859 308353237 648485637 80808890 852424811 754728721 534041774 890218586 389950375 678169601 217259165 394699115 430483510 482929146 412900040 839267605 552073874 64356923 853045626 726480740 930834667 114715592 134204841 492201383 695980530 444018118 105919701 112937847 700574436 233359456 504467739 891570790 954264319 405330889 445587041 947218061 585011230 254147803 609105500 469969224 387758440 272437514 321336601 719942877 709805769 14813951 698430226 134512971 100650786 679268807 683864860 45035560 435173008 513437825 75362952 763632958 958630687 55129292 909910799 370920435 243333851 763466104 348495648 819615655 682076244 95793441 518791550 417179229 213618355 121935983 457921834 595112704 761203720 720369293 931152034 535378806 166361382 938207642 722427041 20049485 377996942 288406458 862988245 634594123 33585067 367275154 646141971 736902395 349275037 664942608 217011796 912560458 500159279 589590424 499124557 694430905 516110653 798138388 866771873 853641120 517441643 577183453 855894559 42091029 33755428 211208461 800757641 782730819 980222488 57835693 563033273 688380127 843121264 147119408 905475525 41960744 796354618 6162992 22227339 866396422 815742740 291382279 706494740 607403280 83994644 896595909 37788808 388245089 23710820 38533165 173127922 89311757 598235759 508579658 28914554 866077725 306370172 979342297 102801337 393758939 671597439 868869379 94399521 96408842 239973218 117730744 791732161 186144127 695767625 645191630 444560902 186741304 34498242 150330121 726213521 344478855 113246670 338242914 900109637 306468218 762408011 435663881 452535976 791784567 243483788 449644444 404426168 183228411 192321191 426638784 925033035 376792148 730868905 480090931 888800485 342969602 933927320 417037702 386226672 130318611 523721661 257710628 313933235 417499332 552190775 593670459 668645270 907569741 565678923 375269594 613744988 876973889 490484009 272594986 252355411 551657059 589949572 26514970 938154070 785071768 884285189 479175932 843461152 456388088 856931902 922895171 256682892 602026965 701987424 147693735 520405377 800528002 657579590 980648781 342708517 490221384 602517288 133022666 473210125 277762253 852788531 167293900 314325423 246761265 337346205 271037685 584670859 975716312 62056816 396022526 35560667 296544759 983037218 183282202 351101101 331808106 139398621 391615224 70110141 459226309 516148551 591572529 492624808 117260538 719810412 483032005 284878246 813246253 711991901 894425882 298099545 675754488 758323811 81189866 582319373 579261055 138906763 101759050 478292314 378845376 451310805 873343789 806506521 352050528 301688974 120736814 694292571 569494582 368088720 926187959 677955138 496871518 403820984 752355532 481128841 974867399 253135823 62934969 566065967 387830650 755531767 339568710 965125979 194011049 365943636 803796333 879805314 1614024 176454435 280680022 633714467 229722588 677861447 417348512 439319975 842097666 868384283 641366494 734082680 344714321 474633441 689516647 253955152 565074436 934101791 878899950 193863902 761060282 396065800 281947647 532836032 824440627 192197906 861184399 264666683 378679511 602091864 658515616 314231464 19533806 473107058 746316286 143511110 572337059 551172803 310845260 935372235 61241900 135838060 683774719 490719547 209849451 645122774 231359953 685319234 464039374 556423043 309357855 483760402 940135432 65612128 716772351 531740643 364251031 528116351 821043836 281029592 156262036 29776233 405258781 457692088 853773692 972354708 59766925 751046790 18065362 939025746 562449385 910787025 263665370 572216356 646379976 830660795 544349666 898503517 912794926 796359563 76917508 682640443 740882205 302642318 108174779 873781506 597030432 818597882 128932761 730951861 609713297 38392565 435631251 698184234 87015373 843033670 128428891 632768420 352288367 531747473 757427094 994449069 397614307 282745126 168073910 607991715 951775081 486676767 692578669 180274120 936437694 94312109 473631024 111970437 733396425 963218879 595342119 151184026 112481630 503467895 838134040 459998716 843983784 883240197 733793453 159593395 269220294 742142764 814258157 843399874 682600409 400631352 525039304 609990553 432226723 203603816 403924653 63476875 529267771 936764158 304404 920149623 892127462 382109220 752790904 893404862 24629815 497884080 555397726 471207345 279361081 689379338 888111711 686332173 13860198 391285505 692528153 46319753 668445564 58435235 319978174 599368005 768714542 818428888 131491090 537600505 22979731 406975162 553376036 579486925 29652072 333828491 828223256 604790202 34466536 742443966 531102067 356722812 239168057 915366040 163661963 777057581 201858005 311280762 208775820 209140420 609409757 724787365 502764048 997576885 894758935 585087929 982943 525836985 911427234 519927481 140174888 862526891 508365247 189881232 809030104 524276157 933185446 859707241 579153809 442446 494587346 422851796 91797046 551536775 933063753 991908750 232129570 368096223 987403616 778452114 126168748 182401070 150957978 753505535 919840158 426832428 443050274 987613373 436682834 33132601 859151355 596423293 124021319 51581961 505673737 665063673 192564770 741235591 964342386 150665384 28922618 77137614 216051659 333929286 519004567 5308576 539529463 817259515 964771489 42125797 889989325 233780663 225268920 647087382 606375011 942217594 590733500 617742165 799714873 754481671 124410502 362950261 491486680 48284916 396623791 81322236 294821413 20343716 271481833 102006615 235534739 834051283 381255124 626240720 893885776 614138930 833862093 354136889 468779452 340902411 300622124 608139191 58665927 191619121 162700490 512095546 781618357 691732300 145958989 634697303 348298797 554046903 603508674 214272853 108365930 620130976 596478348 901381373 430085913 495895050 273162513 756390126 736066402 243803538 312663798 960802320 677707886 826179237 321694858 277547722 590774948 217399080 948807505 375229434 480487657 2417930 755403962 488044292 902150429 496383525 725248424 903997618 909257135 107221547 103606151 540537988 351739208 478888788 464462081 527627832 654550550 354429915 136783689 166847172 661096647 330940986 927585381 961381035 317904269 213077664 140046405 769635253 300695502 191828904 561511004 140562514 645370326 316218747 995106958 933001033 950005496 267947887 859663696 117509547 580695767 52671389 255435068 916245873 511073405 132426802 290906212 334178834 56566642 464341365 774675877 916482807 77862782 428399390 538229235 627666805 269368300 203507607 795734123 91685262 164291298 432001479 952782667 334277506 450291830 380645059 835687227 808666806 833405004 550311876 329692841 977981143 530588605 862311221 157650495 893865536 188400769 274766393 77293320 884726629 107892370 253789563 567124326 667830387 383601516 287231747 190288512 656642448 668205063 96765699 736595746 499012148 975146876 94249603 660537796 54760778 872822862 863718781 230082681 567408544 563396132 444209052 895206537 975086220 298601450 605262622 956264782 60421568 157405257 389709472 512670931 572876941 950666481 283862907 258016869 775731031 825422750 488721505 410783619 77413761 449005494 743103076 505908867 965993336 505627806 281164478 54802525 140761682 595076959 925670844 332605097 744639508 240654582 151336159 511890032 568510755 749605775 799875135 754175902 541306937 422912403 586156216 107817410 701857766 104445695 946972507 26076531 389042055 992116464 911662675 389471285 165150226 53828745 208279979 49142416 363201417 636233385 781882005 989348549 119500895 86633435 303601044 806575683 685196461 269765185 234311610 693785405 306284564 625226008 924228192 310710577 712717586 54301347 250905799 762772550 51870901 168061495 436783954 318662199 849941629 628109464 755354003 840361535 333637139 798131128 481269137 99113245 735604294 191408064 648251466 494529879 220374010 865106076 82505878 933947555 248208206 247473652 201389692 319323937 648883654 244323909 343291425 999712309 279953231 873673687 995616477 607531386 419575452 458856116 341639253 484634032 902608201 341980869 516350287 578191848 616222196 305473847 458360343 716419550 265741365 490431266 654066707 456221297 63765110 989355672 237300917 81344396 990072845 947112907 164136167 529192475 964141474 527085945 477888242 398282828 378181813 23014366 761560892 573732470 173316518 471554355 228853618 23039592 715682338 442348764 198916364 948747823 93295881 167386635 883483365 180151559 488593460 565305333 629974738 612551715 379677997 398863505 113058936 584693779 39182964 574814812 300984084 198088502 297513407 776051021 524434722 431349323 65129036 908479219 499734494 317601322 460318670 751448101 560613626 96466737 278805066 525276873 978469214 129098283 529610547 648373399 896645597 590524895 285241505 33297586 480104174 428470545 499904567 157674130 130008632 655419087 184936694 251473163 867877369 86925152 124674213 866274814 570430912 46105312 175113148 877851567 91837739 119317162 805621468 972491704 839033701 100885265 13013466 966923188 902361368 370769762 378222489 845779943 83092743 917969664 778245237 614074991 967797628 144917070 602182982 610592209 37587966 228322294 845881478 901818026 444637425 875441089 272861325 621079413 671672071 364620301 564196391 632189784 134207839 817997407 936714193 512943629 787612088 94548302 289902206 331976303 812966116 722813990 278105726 224535959 169334910 60530651 324365121 881332654 173119561 513477484 103199146 562950119 845229307 908246511 92003011 427443521 399963626 857813262 649460215 282397740 185122509 993618713 80903205 70642535 94493745 580075365 882527975 105297347 862188983 703965371 555668572 774729276 263583176 465628558 452174158 205593305 262093588 135857511 421884622 956517119 997866094 881981565 79911372 471066065 693557066 882411001 193381960 687955081 818468964 736982895 865254030 354412148 25052697 49817853 364039770 617735134 968969565 996145173 679032145 39440170 552807324 152372472 714692791 743044069 906830136 140084391 42334436 560479835 277177872 886861653 801794357 61964851 401009628 168042007 345660584 291946800 900771372 244613454 804437693 262430006 438000531 739726720 691142190 266704748 730978660 454492056 101578920 55601796 839254856 152055598 446406949 996087489 569139808 309087320 15201305 960663431 588552976 758943235 850831235 489713496 217145343 576932812 709512963 310446425 22154189 372124564 517134496 140385632 311112887 818928012 73967300 821848494 319894895 877105028 243607570 514177579 727431577 584110418 404662028 686373381 664514496 551003467 191441532 189755071 559194506 558337627 12354171 320717664 487943614 684511279 690198781 31137502 854019970 463239545 316588784 457280046 646497532 542940448 790408439 661820796 338352005 64910698 680243406 308850169 738281114 193699099 261128328 634724679 235282186 825312634 203097044 643210963 805233533 458350726 363435994 41611205 763203464 940297122 585003344 612938471 995742339 466491359 800415827 261605742 809507297 16794860 639572406 577538250 19879024 154933952 436756393 424530975 628970636 933476509 721500078 711908711 397715544 913007271 48482053 388214647 970791766 444100203 569714292 224624794 534232771 301633272 539825037 772218490 910554962 771992552 15180083 727867701 10276865 920495869 384025316 215262049 124964715 687660321 872998291 665493998 761986501 735382042 822378981 555963085 589635431 731913855 911757245 877131873 158187435 339814462 282301321 733628980 537333241 347980567 201686487 467926187 841715605 45501210 651540004 651914903 105443470 25574081 583464782 974584730 733101476 648145366 485158642 727782108 190259072 573038257 530696440 948989916 766228520 969287603 221609959 89727892 101124961 637184338 118916733 394963876 734670937 535332809 743244203 71211377 422345348 437792735 326922993 854119717 108714809 112924319 25060970 251400574 922925753 54893353 29611064 163589905 543780136 860598846 361774872 379597229 611554306 195478909 629168917 159044724 550629234 431855150 15591871 698429041 327314839 58252634 657312626 743630412 471549 695137636 295383227 240398400 340905505 321910401 776898096 567648627 785349965 753880176 160308346 605830484 160752172 452720171 73031991 356420662 45691058 662868501 234646764 110473701 237264201 597139433 654759940 647323641 214347675 18974817 666983543 621059535 358056604 617561416 188806610 103287044 255850794 878220425 911952665 550401081 736278125 492030746 131696119 752753462 892518383 918984206 551111495 866567728 269015580 148190415 16262791 586180287 901889625 607752936 227395650 88525976 350178310 834018893 890655764 314833338 74376592 50129809 241479037 303247283 786703300 337577297 610867566 967892438 655429594 664973542 159510098 50645631 496660412 528039399 786427110 447959232 526618738 431541997 398002382 910408792 537562115 279832257 914248834 382249814 501712538 942913473 557827763 760541254 210782698 783566878 908858598 240029770 478049456 952848135 21170121 699708026 86746414 366322887 429360254 348929282 73807058 973643946 765737299 465568875 978984057 752940931 661325030 721473805 909565655 730458665 193758399 653215126 28333074 495616071 568073517 622556120 886439064 257881461 638858321 562554267 970008417 728135685 41411948 576101010 167182880 796904626 166149570 18938373 375939589 770118339 135331248 322217160 144602828 60451604 562021334 649704791 813163853 860711177 12950042 804165668 497092925 650289836 637426398 845274341 734361462 867670048 539028911 243283925 67283219 888191032 307501067 114291247 265577333 435078132 750812230 174871979 981185270 848177353 417850227 910824418 365925206 503091643 163719611 687936139 789261599 457534517 652554456 873618187 921493992 816310958 786970784 84370685 742419147 237228362 213545383 760951028 978830423 953291133 140093322 161199926 58888231 936036182 292486952 342392912 755753021 878886882 608511761 877998739 786535942 808335933 992715339 795110446 131578856 447379602 690298195 104146889 499636956 807841487 599423480 784704985 552721960 131919920 192323058 250721172 934092274 702315648 832574383 595436686 83509611 796197671 208778868 962613338 208922587 22309402 879740893 874049082 892665780 500045812 224985048 318539122 551546351 448818355 68334800 537661993 323660292 251755607 29762894 54208867 257119525 488958969 749774083 547427095 321638557 940359969 154908758 441292793 106125195 359163995 506112363 452577443 423420760 984706261 539247588 253997928 683433042 881711618 117269170 85036084 587616953 403240593 67836117 841555868 902318292 202573578 645945730 116283130 387118745 476304044 616942972 419010920 11832002 231608104 581838363 660800294 668093369 599412337 915017286 521778876 437594623 647305668 985863554 273800415 620062153 868316073 238985747 741962427 226661740 484108493 177954689 45180996 687625903 638856705 665597038 278835589 552934635 459418531 578595225 56675048 318738165 24748137 427676294 205194318 798607556 263156694 316214488 421160729 419934924 294837519 150694018 931342168 699679439 810836614 998991293 893793500 179389082 500198756 668496250 923347700 377029684 509415438 721081065 842877895 609937891 231125101 443589947 982597366 714690173 343219852 496251785 676648450 630031485 840661234 534409654 424372114 285984927 554889048 641173707 757162269 690017147 611321751 521803483 617514985 811380829 705693294 208762130 100062960 276232565 567364985 527938110 449634328 369428479 580209937 576329317 72687042 307215496 665294166 694486810 446873636 782618811 586880391 247932581 820941703 768745250 648852747 477257927 239426209 745643771 614668169 79335713 551735856 500863122 697506318 904302580 506408236 844270569 565628477 352460666 8730643 302576818 129504610 29951203 920460393 638950895 986253007 278760097 433170254 632390382 691438567 171885410 738098115 237709373 1044193 249987888 492561462 704611910 143784588 620242191 481901497 25547784 649246294 704823153 144125660 488251173 920674168 269745996 141959236 78801667 26776721 882343218 570458025 664313412 390919159 107503538 304218162 248576603 750847356 647604816 930936684 665432866 19445317 998049018 369467199 63180808 390955034 66867808 275394118 511853710 872654529 257842908 510337884 661668539 431774455 593195201 822977673 201501571 937909159 805451371 823221745 595193639 51250346 616058572 23479962 587795329 79223980 984542798 191012809 298514037 755899828 907797111 980444415 893401257 179041086 135217939 11247540 479040737 195407613 155527748 887313533 672785562 647553188 740829747 465419294 978961232 568036619 973377945 9177238 251850912 953520218 965044136 71641517 47350929 395132248 515448333 227539176 108252038 896350243 582089851 864284496 36426940 930250401 922749922 904512719 452231017 801067459 206842482 756506410 512176409 664626295 102146654 860353538 297809167 622719746 187338794 578306133 403903492 596916774 849735794 898060343 887666232 628168999 68261353 96010713 741111385 407895116 535688211 55018205 579955038 867857418 202905064 681706693 69998493 488135828 927706138 365482677 911433837 420415131 276677621 885556286 899016855 616915233 156472114 662126319 831806547 320796091 637119381 316052239 233086223 340990162 323193399 332248416 892381300 879303035 364740977 719955885 771089997 634981396 246347895 425187311 859851209 544067771 797088978 605899786 150029073 443347905 551906338 364033168 843033407 775024287 413005207 465721720 557364074 177101091 795014349 864950973 260378335 82372165 301503416 812868333 790674832 178391650 436509925 360627669 336209101 373018341 145680834 255662989 787099372 170332150 836244221 138152298 277875199 546586246 784264556 266805722 191747768 69006937 313076475 159346174 233712168 101395872 930573117 130742754 362170095 708409055 800895117 63127947 648333421 966138097 707521419 189382205 554339024 358034916 218787978 236271883 831767580 902555775 136858444 655540454 634187470 603668539 209665439 533588160 270018704 917198619 238841151 983678398 111527236 535549456 242494698 729446062 595660572 292331181 15928299 328819091 720601528 520865803 65468129 544773537 114272994 146262035 569067705 944973235 341210377 143062035 514502408 119438449 311023461 710218452 48043683 942981337 951442055 359326067 649985174 610846662 307407116 886891498 885277697 403817471 377261689 814250920 207695899 159479336 919094338 606172290 354538401 221113579 219640817 544002398 823112733 449696382 954238558 841790251 617825190 171265031 850044567 976423109 354821750 63504859 329096355 987499641 964085507 307936221 158014181 740208651 129633129 706977180 667314606 453044535 161364078 784388064 10221876 784669091 783727604 737057067 782242726 854839771 599532753 96280382 711153024 605882483 4583471 81358231 639502623 847321017 901034165 109354920 484588553 951598264 815409141 676956124 157208525 635683789 164523366 259145431 766785218 666610242 488112718 742709738 324141930 974294480 273154393 129970324 558887120 33287672 221088908 607364254 775220296 603718516 703449748 58029417 939379839 113025558 685167926 982625036 696535250 518885857 274855959 168692407 252185453 538588099 853231092 33655238 480916643 604949907 417848802 390066362 409648550 721249104 500353406 821304418 934694402 446511772 134851693 748453224 368550631 672628798 141273238 608715995 623291188 794168622 438955627 489110389 34410454 822499063 88890167 603728487 705938423 345686348 149923021 411944404 970471169 587702341 389905696 563044153 710524495 255823213 172009202 250739528 679260628 589270563 888651275 505532965 451141152 202570987 442592579 536223197 734789833 545463131 334560304 789888278 189120807 516027984 509329080 561027129 730159103 773626992 125727265 549939676 996648449 250165587 817032405 276322928 845300140 481055964 695332098 217220385 122157399 906683972 231815394 479586301 165133313 168489966 639470611 101388047 670382277 790060128 933197038 437903560 585122709 114537752 897200791 784811341 113219553 137782514 970007160 640571845 167289794 258692723 942350507 641248324 896482998 147073656 270366247 354290330 172793402 423858611 385621772 51299022 152052559 463339784 382629255 168259843 729433677 660851269 295226348 677729139 923777569 505315336 850749905 15656889 301571369 564393563 531064088 661488194 149396815 485758137 596511725 931768783 143082161 8550120 482856555 300010539 407113453 32368198 716776100 955212493 739415373 310268503 937535871 583361608 256680424 230375853 120227580 659290320 88641561 450680197 926673951 568301988 919164732 563297391 330218795 60654016 87035975 347119068 678744348 108853297 960846086 928644448 191437133 933394484 294211744 671594000 478172959 871778005 616663054 571627620 644021095 157920768 989584134 454226936 432232357 411984876 532320733 383044446 969351101 25876949 578307425 977753926 921241737 412770075 154199049 335520102 447656854 79993994 699421900 785266984 8011760 885058801 331200938 937609507 842957111 785041378 626010930 887177054 551901870 689690250 217610750 183372541 959358546 49893711 721258509 765173760 811500481 49012281 830369404 868367721 575538772 694370347 179182808 487813664 160287683 570085906 462459109 535672050 170070915 868894887 309730253 256426299 496655917 937168171 336490923 259137106 697626779 894724246 281384747 305345280 882588259 570708034 521569246 816406520 697112958 304880570 910856116 897787444 223012893 295048957 499682405 605120892 138904638 743831535 269480658 184737082 624754661 818367937 796315 115855607 358635941 940305054 66023350 976917906 193664201 762759809 762656519 662827086 745838125 935582483 562423995 390379963 215409186 779914271 915279851 208496592 805215726 910123296 904730697 259112891 701903269 715276987 764577529 916149017 287442446 107791340 778874547 926651022 450558545 704465610 152551928 638519559 991604562 923342785 739082097 327946030 606636677 926993567 94475323 688242061 114287122 352702081 295522414 991458255 828384121 257110448 443939719 271671090 150455905 559893070 35455840 226711640 25809233 703221929 846338633 851688943 365325347 874066386 41115248 135366620 709369088 416552491 816427624 424335572 8502960 394038044 968357052 931933595 892118452 42927830 720481143 546910859 915977742 543173752 687720647 243470537 480681496 957321865 877853474 298319450 811391466 109242594 721704590 986158901 326003133 18341088 24941829 360080641 434849221 313696772 443045054 145652560 378974521 272348519 224708048 617537203 89045668 167779608 970124317 972580601 240332983 349605406 635669874 160961245 298166355 444131812 654972834 22504716 221751857 697585496 721370518 329591681 827987155 928212378 288192269 487560423 89392624 240499388 194538715 658183189 110360584 540841563 32222024 3309722 946941598 287816691 869174548 778723684 369866245 226502199 746938741 28342267 599664715 571002860 272739948 436787806 211258122 773754510 466506668 927963884 954503642 3310147 80827832 108757456 12905914 997540687 275888788 39650489 201655118 504292673 609641373 83333956 14592291 18796606 816188763 528649682 745786124 802415585 611628640 136869127 729034993 958797686 544966944 332804716 690665361 663828274 576914103 28539184 821303189 786820492 534207326 857716643 229032648 585616189 776855280 900211965 727069114 31046215 775468613 439955670 369980813 388599869 563922454 362888251 333307220 500628267 589704619 696214714 592974563 83630077 652937884 409868315 813929232 802216863 537408050 75655441 531070235 236492534 571546035 129596868 269586701 637731517 973224385 597261696 710645314 340892541 358691701 320730663 693490683 118439870 297054659 543301134 778439335 564502783 206456406 235724560 38855677 457317141 533358905 729402371 407300465 696948082 411083274 8034707 188080567 319535864 252595433 762676806 625252931 784184527 121403498 433699728 333526343 894864355 568971366 922759122 307868760 993069864 586138336 298864587 317523378 570840098 138385731 509279975 818325829 511891011 896305674 530643689 265214748 22769134 380929313 350741500 508899269 915634521 935113395 527832487 341454577 166370302 748373229 93879911 128151286 183231397 918849743 916419599 528886442 728399435 195773191 75777435 870903891 600903209 166832397 880178982 39902283 561948523 218127163 766046878 658534112 817203345 975991973 296404212 3743078 614405114 466472173 628758015 606847908 45690035 434492539 652992819 666657367 819119948 9718299 214292093 60519619 351481035 825258242 292745713 119974498 747076979 134486539 514860412 414932365 145730843 448997234 311822176 452211446 230877758 238987061 110841050 769380176 621937723 194814285 73807772 535605429 582916788 145213506 600657431 456840505 379432498 310564133 408997646 417913212 757563469 786146766 403836791 782343926 574604615 214021230 366880400 786250371 149285119 856759016 981218930 835933922 641347909 498698153 731547458 767298034 99100029 554320652 480017091 722894577 327776128 367022910 637372119 226008299 842979893 385964149 60120766 20932685 96315359 516933354 83760993 368616555 757211380 750747046 889133906 654212090 430735929 279226711 833855483 728828511 221653153 243441026 407549922 120147177 345139604 796380985 737924022 499235612 843440414 835483862 266058127 434589927 580376843 803246398 144756167 397590992 736921544 886363875 949013418 311060857 478339650 958101881 149997928 23934773 202644522 440119005 492697450 110724307 288873384 126024037 980349924 245214921 510256114 237683745 805037660 356762774 84611023 922380674 783653249 100428887 163929125 424809628 614318776 820011178 645711309 292901826 277404534 196335691 201566203 56721835 456078381 70256442 73743233 726799722 670790983 218143598 155235272 346086423 771408155 814442888 642297528 462317835 156975177 127193441 262242169 913564236 457823531 766544494 273434664 877940496 61427548 661477767 821206497 225678217 958682659 114148874 637897382 902336745 587661113 93320884 954173994 140434647 992336501 710621164 103170526 794315439 901520881 548012668 732349456 248262221 985223556 288327689 59904528 6120520 270224818 900305831 128024644 228025852 419618683 318783216 418119091 535076640 878095813 542280044 668977832 23925465 534037915 114539121 103847376 308254784 625675647 684478026 684893042 216692760 398229796 347051024 115005207 79038209 601791603 821911168 417544536 652678015 710739417 766808722 506995443 493517049 864208778 434468552 410194617 192879732 375744160 659121417 809393897 732327537 951443016 870109082 42852979 362451888 108099286 919733268 86685474 135998593 706633704 527624537 775608975 662177801 843409183 649720617 558730398 392728123 771091221 776600152 763764088 537862200 215244915 819111138 617721179 861913727 821046918 773608436 696683145 216036842 413342906 284134333 88840111 564155284 922483339 826352082 918116588 84695992 41052815 993723142 30760566 36311761 422606868 515448869 747903834 953867909 412995105 386174065 471669191 182088398 228320952 895459629 269848386 743436388 544084940 858979569 852695667 847960409 479461691 331492845 378361963 708189351 821013056 348971150 300869509 486275990 275579328 815017986 169161164 693180784 804072708 836975016 344983214 379587502 10478206 340422564 916639089 112461293 58889800 459557599 983650975 427605605 428797186 299923709 946014339 508698886 44158553 677680038 119462000 329795376 890809512 103451887 644795932 180895895 746023797 903744786 371893501 941427961 960036943 397046985 31363411 962697869 868921263 453294612 776995675 934137103 238360110 296039026 821076850 518741420 426045661 807684185 511713319 297175230 335791433 742155157 167124650 231217856 838648941 610742077 361358910 213980875 862280865 980942665 896751764 885504642 54694927 99535889 39027226 947311262 569366417 320239369 418410743 68421096 842978277 725548022 374638592 80488747 479067745 632472395 194816212 223725341 892563246 268483003 138962187 618680353 713648853 557316760 821090875 357730927 230463542 871536808 714534607 371432604 173556939 840369328 285702322 710637647 978265855 976658200 618712164 48965756 897790298 67430760 724357852 824764270 544313788 895663893 322465725 363925593 506989823 95753993 155448165 721053589 401560709 397372363 484595757 163903764 378028110 432061516 759530240 744350988 243893490 115739503 819151341 200636260 833745355 755140055 279753440 482736996 153005243 85877853 646187372 94218778 789382387 61983172 691374039 20332050 937180420 825529573 861690683 236686066 406901447 243979853 759983446 882954587 472477920 226554030 845520171 241467323 848664838 610523793 641074073 627913471 540962066 749933464 38893747 652824245 616536792 665013925 174185635 871458890 117763782 661516112 332715046 182503703 520699260 538048349 766973799 32552331 984300647 616727231 98117448 371071884 377534729 794132123 755303506 165787693 348208890 188121988 318655751 419863076 14171764 510414960 476116246 698729578 851630122 649885819 128251517 518240873 493879461 148954657 685500212 653705287 665220908 658739835 947263620 350692579 431044806 655697685 558568616 685072162 403836273 474261119 524768963 319688811 787398692 869825420 619112345 676758193 342570541 921561903 421936947 780403993 408723424 6396682 966352054 790306421 21476270 698442072 381514494 568688017 63477911 337787235 987481243 862902291 592054038 268598095 844800551 184932926 932729405 422458647 715421478 141963450 938246894 928167031 216982974 960064163 53089669 485120636 845187984 775688005 745070652 353489196 428956277 659788271 796483147 222623046 756968965 881540617 83939594 630051384 488041046 304102968 344597861 288005669 592683243 277426066 44814050 226261101 418659825 796895942 782135975 478077124 814564337 703879487 298607158 433249175 790502426 239300670 977274156 74869537 921329853 321929260 555593110 885715993 63559434 20725669 285218894 732992253 138196991 640449388 710531049 605903491 190158520 846292483 113902544 689115008 270052684 264785237 712618501 565031309 562991817 104724000 211666190 730850915 932650327 273403627 889712893 641381319 898444152 242243274 861181499 59292305 788426491 616696723 336182506 592476130 673699285 957119646 545963187 777987251 644212992 52251910 983978438 935951051 464879900 783592065 564663206 933398370 453702964 74122838 953202802 783149916 311824672 16485253 373650760 879082644 682347676 120508789 314038878 967865438 562957027 795003674 747514054 699844026 233678384 492353611 55004642 954943958 846043202 227764655 66891016 961374563 988490408 97713442 146207243 239245199 922291581 544569893 91990144 705779074 867112437 177966538 371367605 278799558 310713570 458283055 294434751 406502730 760001277 706304713 17436272 824890184 89251511 931403153 639753567 971561370 337951254 971761592 619955057 585712043 188242021 307338584 396349010 944084903 413662852 851265713 825098958 502961634 379255824 117491193 859656338 244622193 645396417 374307358 224258657 65343802 225942047 339991529 710112475 917457835 521053754 674702906 377638034 982828177 512862317 442779693 421738520 75718171 671147631 31131000 974546992 78133533 295027205 776915757 256859789 835908048 330766270 169553796 91941794 460152260 476808956 747062195 341824458 371137677 206902264 36669899 464808789 177997854 767405066 243695398 654268641 880180304 219316870 684837399 249783669 155138884 607708027 967205584 568301991 838535813 285134011 997998796 714963159 418457182 200343833 121250738 79950831 436753986 667856034 621515296 322819601 890305015 969494748 852860977 749704465 711830919 377759171 256472600 344682731 675521824 108725139 770475853 421856651 406696519 917438544 953263436 511715222 843713833 341322765 980180106 764397966 978328635 267387042 398049048 453359042 176948464 582872492 705401105 443493597 1927789 881736796 209255598 24151934 534114817 649691712 431012817 968119436 127399084 109995661 391654729 641796944 561757839 266191151 55358906 437388766 63004444 800675341 719096025 874343042 536224412 209643056 327521883 544492104 316606835 143778896 997163521 384799451 71427097 155822926 896201696 50495824 516479487 245034073 541601061 751273330 500816994 458417922 101926316 33251234 887627733 438835321 795131526 667569929 68216560 512336871 20548485 561647275 724286270 643697183 582314735 319294112 502533829 623564004 442428080 950016565 442227248 405614704 219252591 649353510 271673568 636219108 977690938 846012955 251310453 308310846 850551693 135616626 438862136 759769646 613270876 403877869 723836360 162522877 428387300 279186012 230202950 194526693 823361390 352672046 174479020 250567678 122004661 959831897 655384213 554936637 881296972 481780909 610470161 78905683 274650368 327883034 811445989 904045746 83952152 186193 789852687 607224485 890344 260817332 401668540 369159943 78619515 444849575 784046342 769781452 921660613 675506021 891649568 248058133 502170353 681128281 650150427 662514504 296303622 861770671 365052328 962692329 325362649 8336345 98776324 309953519 226882165 8486882 662170898 157897336 421343427 430624207 92396538 237162964 577032069 922685926 958782078 458581427 939190504 497520414 924516917 485407724 123117582 932387357 209464020 147056422 406280921 862012593 199573533 69454286 592767963 20358529 883505702 269327799 733567443 560680406 982236653 50324730 824772087 853601452 384124182 635334883 729264973 827969306 39067854 843601810 535609503 628591369 517596414 916686934 414527489 654238262 231217606 226062842 812849149 341338016 433229068 207165193 585264666 699857112 374336443 18837122 720420429 593735650 280188583 854469935 179780016 935285235 576733971 253853420 702833327 762989377 716487850 634377371 525398840 263846523 732986577 902653879 895100154 517313307 594720466 108912048 547591906 74624827 770254856 450582781 800378538 596591347 514433449 673262927 496354154 799529882 438109258 991059080 988029227 161768187 577636181 751454218 660068838 135605453 768957995 634458361 259370566 269597362 164970210 907692475 361663440 558338762 951016575 987834117 703857577 864076820 599658124 620929946 759227022 488358307 32605575 124774711 295482269 626975895 755724005 343021836 91359755 660609686 329947282 57959781 669792129 864661619 890106920 509729530 697061102 767774108 262502408 230064438 243111132 915155878 330242041 10808660 186112845 529122519 322176200 774986904 26852967 594414238 142629758 953731572 157276136 968344671 718878457 66668775 489684439 286507184 739202109 103125182 752431560 9317981 965544889 877373522 936786234 302857455 798913998 139870504 652959986 143919200 370299990 264519369 791795219 78384792 648819741 898264498 856542941 18056611 943177198 658476192 518809011 299291768 717727688 627925155 437957362 248936784 350368148 145147661 613473637 602609947 946714721 438087996 685792938 422686734 177209493 661268361 152478903 912922849 130333724 539188015 972359173 549416783 847736840 878375148 877343511 453577589 478011669 133915058 863729198 644932713 255060760 734439684 369877030 629119762 890661532 436769771 1765853 31673362 670297399 763844880 322526547 613443937 37493847 593007298 965951216 740315274 685587818 73994545 448192569 113196875 746851408 400451532 909970917 581746827 778694468 451951213 111931052 529752146 897216290 953275785 62280928 986463461 629474779 57079154 340273889 347713408 20467875 591018735 426348169 641000150 563499372 375035280 106951770 648329655 750024531 87443810 753636304 378524390 45306782 192851059 27403905 190542123 331771373 342373029 439956145 543823095 721603285 858218787 172118362 440136326 264635393 213843772 740793609 243837083 801985995 486113369 610969212 419812029 752087829 569857685 969871004 755061758 473854985 307509651 787697877 577258188 561336949 707289771 106790768 674939365 459808189 479447051 65109966 899093081 904085908 443273277 681164639 938882307 754595360 438390348 348380830 453180246 807937035 526907721 833033327 263345061 320503578 162512170 303326576 821749075 361082494 958634937 374141288 532879127 758253100 426667913 560671076 314080021 769136036 722662272 327176745 230530584 536429990 3468857 834745383 769158477 768797247 861963878 289901950 67849097 979840633 485709795 785466485 328028807 754527705 107330799 843165364 823219852 769283026 150058596 110245376 579947431 126729934 98757033 176966082 717455647 708952979 831493581 546289934 453680687 985224474 149769309 611381983 401833284 849797931 727363940 55306209 74937556 831698049 57548149 393666345 707181045 416747458 912100709 478736263 314353179 530982023 67763581 59513374 808319720 312423648 963545293 80965384 506117075 342742548 430470907 554820849 243393386 136946604 117855152 549871779 331021310 830952842 425074076 493869098 361369480 909662586 982635136 464463381 995022879 558810113 384252828 149355260 394661572 835962368 50691318 271998285 257233484 64721121 944064611 433998199 666650446 804225659 45208117 973958945 185269780 468618371 759435239 990271032 339052976 778282037 758641028 655807034 998259133 931710573 753518565 498470088 487043795 932498527 476130339 445290897 208160431 66889806 389118096 545635512 101938956 172448882 929873789 465642957 881210710 94944657 917184578 796265486 943136959 907480306 272663507 583160521 807465434 650631390 924720079 647608786 692800601 46401640 457770053 186596183 152035934 271734070 673491855 360620044 332472309 1177112 136906237 747663357 91749341 78744063 241716419 222030713 80113299 296614761 352428373 924202388 635122240 459092743 513831022 789115179 761731699 823298752 903122169 960153484 936423290 895127071 590534123 636639179 784394764 238227054 449669337 445762350 83215209 973955390 233975325 398051085 626924743 175295287 501467566 545269902 954775923 443727689 19127036 295255879 822120865 431018471 186493883 510781615 755971117 375640227 192488386 858882160 785139001 783248736 244605386 274295688 64083868 380743429 983205506 887931171 853634900 868238093 584559974 645226921 104642656 611547018 101663024 540497852 158798967 180081274 310406422 59614182 254796873 945153981 961143436 573046905 979829060 217629867 692973493 216627895 624377032 481302423 607908811 149889312 105863277 479763576 594259231 576198292 400822201 783851838 902212989 437554024 350238774 913166754 520481902 907079159 204880458 465845682 519475562 605499489 941180653 622067757 649851614 969960467 894004573 80877707 857430740 72777030 864425566 323481264 148945329 500143338 150301701 646714798 287377683 777627779 996819702 303331185 763600583 423584336 400472505 770646465 309251915 33571683 988714488 3125533 328065381 633278412 113789134 46064467 152029185 24908429 592281924 801344193 941144350 106659162 513122884 256929559 566377753 699401289 837747420 770270726 372765228 213790082 380778432 897371455 803039806 677910335 484853471 984533187 140636792 293245182 882478745 595537282 155208965 605312373 455410088 232681058 727397424 115451267 724454633 144082703 718220538 628336265 99181440 916263447 490029439 718199737 782337629 282100920 572532246 732368439 662605399 803321713 70761523 654525099 504529166 776745361 957020687 564813287 770891689 267162121 485664592 998204337 422541147 976767313 834758638 745678987 194296974 564180537 300038451 530060827 93723879 836411177 390993435 296833808 137001488 230584010 990282400 958566384 920838154 789525616 497094443 831186577 229807413 103689540 747754304 716804375 870864490 404459097 633920596 392113772 748551381 875701162 729606773 18275713 604808752 543738170 379972518 380403495 997817814 259554699 400130633 29985190 186890870 731382496 156722971 650120355 278594136 201203807 880699878 567916715 276963484 238805626 882289385 751348480 139380290 695725073 212038280 468776232 677962137 895831929 766581168 495712860 868107982 779613221 211815544 690852457 626589558 484629613 429476303 401417780 95394040 416305357 311363005 207658377 864659936 687298743 703661102 216738863 309362235 694566333 284404688 206793173 905003691 334896974 558754599 727039976 673840519 734848794 349179209 639690823 530297988 68534892 372516681 635048190 805368075 914452570 256896911 49065504 996273821 879069632 943824160 932390630 177841319 93266892 471543299 361743846 882973653 430953495 512394438 862424909 747660581 375417842 918845840 251832077 568193864 508994293 352995064 304085976 317796601 342216879 142972196 495217402 431440175 45571687 290010315 342365985 151341943 632661314 290251594 782542686 560589912 87089603 167024118 226322394 162027331 650934523 875668894 571786128 685476670 538724360 425168545 192180792 872589378 616848911 590430435 465330132 767394734 194459129 19036813 317990265 236832103 377073254 516978734 722299941 313669069 96208984 648161039 185239493 662432768 333740522 756522946 829302558 641210478 334697050 492762387 423731272 41298355 873062310 640369127 520275058 463989409 85396215 411025920 624220199 832057854 211151880 919117060 135351688 186602588 381496414 615182690 962497910 77868093 524431899 324666502 739344567 252058663 16482999 382009706 73557246 302964740 571509065 257158435 386484818 84240996 467061631 187148349 189925329 128685286 452012972 184229123 243972082 496871694 270644920 419185203 712415877 483094715 828455238 555910866 573686939 562462263 706389534 827388828 857859224 703983409 843921020 189204391 849014641 729980477 95701797 252596948 477502859 455839556 898269542 732032591 159110640 804419677 646235422 670843666 197352633 592606130 69785542 488742036 571944243 212261796 781299949 200128060 519093757 99772058 307658947 237272686 836994292 717347357 790005834 308106417 586448941 167224253 364106861 262408711 582589420 469226638 183235366 496585720 289609699 721962909 78971988 375922493 835043839 116616105 941607658 188862046 378496075 780732543 816625348 315164007 63622475 591031214 705488144 509810211 720993419 969497031 900013733 248091330 708650805 285474315 878327501 774720911 749648528 546747233 85783371 702707729 799708404 52981650 499564718 58953409 95508896 227417411 228105146 555752277 684580392 946262236 53438551 81643701 340544025 254253162 552986600 656616846 115832044 517382897 64780991 364767985 588269691 816699857 466975749 269552492 683760692 73215829 410873966 373302061 831999864 540579179 366170289 555918128 367449726 465527208 274160965 198668829 927288643 646793613 601674226 286338220 567453183 752414707 204753449 785606294 200785853 748527743 899195610 728652116 982912383 942612359 747522557 296722859 24435304 657255647 338399842 511886149 769606901 390201851 43984881 632578133 526521375 379079192 949699840 512549553 705867555 783440505 482680585 587974747 231068186 360959304 708344401 95237775 265422778 249737962 589344160 218279897 721251293 662513061 239555135 997011594 668005005 896271770 567039376 182186266 459030213 507893279 271127179 598831697 570690554 569639608 313891042 126061808 70241418 548792278 737681721 248568220 385966978 115332519 522301943 21944837 428907060 547081817 165441523 226364701 735917070 683348025 764125542 933288395 964085523 159827082 586371393 923729529 723907483 407883945 158363117 255859749 572053863 723258061 588414719 158233502 355047348 476432691 286375787 758909971 462079771 914045956 27515933 571584584 373950596 497931221 624013508 10801825 848018920 898560037 733016028 478184869 495304471 304879884 835821927 225994295 13184468 731035080 227939268 604209846 380598038 646632988 412027339 608396412 223703325 262740154 693441027 214207755 845231758 268864348 521537645 307074261 205128625 92549864 481685643 526892523 349493201 859479417 456648373 943671114 578894506 174479446 331965548 152999084 147171085 445528791 723438668 505303708 450822135 838658456 14071430 554686441 70961461 279704882 57598392 308505452 218044304 487725873 222576181 491068514 260878181 375297851 398299762 508708943 741377188 324211015 139150193 4186623 320116208 982299863 910968180 954649609 263723785 605330253 869115811 586955856 302774925 224335408 99531137 991946814 86801830 931524824 103457733 471004939 353139896 103469093 333670175 759064019 832615425 884731800 848388139 872857863 662538067 22114966 598355670 781070270 534352770 544445894 777820802 850767885 148613346 69188884 280397853 861819356 805214818 523422010 866595212 121721454 240874148 629520108 300745151 279744901 482838973 973274939 909540273 156110872 173208891 36913898 487721226 717475153 357214494 850353282 903297465 633886424 839909875 815741643 268977095 891140535 808984749 898147323 780342615 619233907 927309230 188013739 567819463 200523079 720080721 939992680 625093109 668282324 291441386 784726826 595336184 949952345 783392644 40234643 237368464 485764710 237612071 839321366 10294734 715708319 671036889 585734522 272580694 993641460 48315614 494541872 159071397 133979938 441408002 482017553 992612414 135354659 553491683 563820988 152111016 58269545 123693797 938948257 620285829 274737407 790016114 70389729 508379326 620853922 935979490 991650226 649238810 762542500 555215169 808453424 310313067 628480557 235876586 666341353 201852232 209250913 742543550 838449749 906732452 448880014 706820493 276464043 854149450 386003419 317413275 556405629 692939846 979712388 861809703 892381864 540567638 283972057 441978542 605417374 327543121 88796931 472321550 144249253 235442920 676279439 620632944 631983754 401892547 413250135 515656896 385551049 786781959 57553489 627318045 75472607 934697632 819353726 523149667 742295230 975791363 140035718 881328787 445636931 349848871 530583499 7969058 932996274 877874941 262075503 657667605 177285309 205715502 44899418 713152608 593435332 264532034 791932630 586600640 467525325 866165263 968564265 440072441 246674505 983733251 850960095 661846808 90280486 862384253 230219219 388851089 286378418 21305786 948860011 870984186 318663435 826473172 230615541 540190674 748021537 677999881 478354791 335550713 252373460 983495364 726491515 758383208 242986063 804048767 479525818 850603520 33378538 558492876 16706233 628749817 279926668 747760355 392502615 948113154 150274701 822160519 115219491 724738316 266824004 34229977 611780105 804401061 340360773 297230688 223869287 681838478 805767238 165121706 21625750 969807955 186082247 942283905 809832954 581920050 52168301 242182813 958186292 790791314 786023337 712833311 760073674 1736166 196236947 247570802 886656521 121659965 744539738 758298303 451596598 241053396 790503643 28562100 849452435 339018744 189637682 901246710 448853070 480831508 168131633 479646019 154497941 937745816 659591113 382873188 888639561 666996990 80875026 465781773 555453742 378688270 963073090 113105169 87467257 789421623 458144727 249845718 122151756 4488213 932775562 269120626 804898502 671712018 523749604 803071738 621083546 283922840 118902457 890357646 273325170 946928732 406519329 301132591 373481647 916736761 274579322 54461114 493617188 892144957 831486929 739402222 22752156 487887650 356235514 242003173 950292780 526914520 194888855 328157074 209609290 429946810 130297731 106531689 383936763 737634536 935379585 635752327 279016143 204220790 391269341 74767892 103025261 902936631 353331381 515504086 917703020 490745397 394001064 393205967 344627460 396450636 778911116 525667947 615239787 159658109 320798300 888884786 715785502 370285808 532822315 730228988 831062507 300476036 640501589 393396653 555494933 799186572 138387947 80212870 123507733 825773697 64262954 247254412 114983504 127132226 687531775 700908879 382526642 109141106 793323959 823574119 583776871 307839237 344132625 554863055 524833824 202935373 799339212 693801406 87019004 535427571 227377882 448207961 480222297 263302844 737847851 796255812 664637073 542902332 6586276 638651383 344976417 816463223 778637160 935441176 539780368 416512159 245166861 280848988 813562886 560883711 607719821 224264497 810263588 609061682 129426857 562215847 956142898 784349169 895703949 753600524 999965023 248495942 203182061 764814229 65408677 9989300 88986015 564111087 778341755 740862782 112996348 734287045 779968920 983393575 990804218 291716163 763282735 374724364 498698176 220548658 121457840 235807084 524283893 534163360 601760217 986262528 662570914 8842167 678574088 41398926 393608958 517770202 224377586 889360481 16483981 753984851 501986715 91766965 894418012 887235307 814923650 8011163 752690974 671337543 189650710 351585997 311214815 768398582 379388595 198576097 119137548 905635501 454715584 4981757 753241401 557936396 105952932 809919442 640493907 476749212 935715525 541839424 971342436 937788221 862425166 421764202 523626433 392434565 561777520 211491659 476730584 436366466 205034229 402037882 121619679 668915623 303163810 740897944 354233110 898210918 351682422 146382697 937643758 452686844 977164056 680378338 949675137 175687672 243905975 312972544 379184911 265518536 627780894 173549990 470472036 167772556 433457579 493535898 819509742 655432834 27841644 649501051 725478766 770268169 873595335 456670610 983596378 160330833 20897536 355006436 897620913 145170437 984217728 549231403 155834493 213802639 597083892 780252968 972947369 597054247 2299630 361870136 430931133 8818270 709299157 16599358 561812958 441539928 169496883 706549180 300510098 372782377 566000428 521653555 230733486 908162164 787517743 93360895 23447675 332722292 536871650 78140351 573721744 349157993 430944880 287495980 167811425 369270486 687349947 380087363 433240547 174097473 44961260 161284108 865780998 33907682 21292163 778690964 269279686 63941993 480702804 148649229 531726841 493595541 839344675 164357147 901681590 631219914 170212340 490417241 764378738 599668193 865363251 197275346 61064517 184647542 941795107 680052944 446060925 783485909 181953245 332809500 509882075 49015404 86609639 553432478 786740074 85287335 503301415 43969522 431080021 117223997 705658562 150756814 932615820 35020279 164408518 970544990 405507169 768482563 525261993 473675891 705703893 258318581 72287060 302660408 906592155 740049887 762510857 731682937 860664957 229306268 618903629 680630576 218565094 222330901 141719399 172349920 473553772 683627870 721294935 514970809 785348855 469503555 952448797 701686743 644574591 49274231 793465757 470858134 670912153 418939791 92101867 943724967 487448453 112530770 754756907 356776901 857349327 789802054 757996486 510720899 365407794 183443591 494705372 700426820 416367072 775996579 806902238 119448256 763239221 577956641 861832686 363982598 417348094 450895108 713697630 548942796 49466207 343973505 981045454 723871028 667196795 363400670 87857903 402903008 198370669 810968951 114398858 104825515 978271659 804003466 700723163 629571328 434925049 556882513 175295384 488195631 597638524 385898124 814259473 331572072 360669851 945942025 148068367 85019267 650083924 974780267 22322859 643122873 320604447 237952432 97273040 235368729 915265985 817670739 49971303 249618226 194084172 77553292 618166379 200756073 591164923 964106427 552887992 778471284 446808328 305720096 344903077 330512065 596151645 390794680 941117881 164229664 648442960 190060241 449353371 761825435 431024151 998746703 537707381 202511475 375926727 732570790 506004055 237788286 807994536 732114845 32974293 597488542 643857947 196259589 685906679 678747650 253680526 440328022 369537936 392959271 432260152 589260815 217226705 159542452 801164924 570332689 676970764 547432498 323106313 618801389 67157011 181256330 396864706 341103132 290737737 642279364 201731942 529483615 334015265 26432426 366960524 601696842 276852642 271070103 59066373 701139839 722365440 690370820 633771381 88956408 145552061 301569935 704544798 893961925 244770251 143413523 132006231 591090092 246298170 112514172 175353464 391074785 619784260 279452950 863313833 216286091 160379496 714864157 355788163 965599552 602934902 139265058 252630760 17558142 176755022 264303295 164624708 291354985 624169765 98423721 129783350 675027636 978165702 252425390 582922198 893574433 624746000 372658007 450251058 801954063 125302986 568531296 864278017 179682707 405161875 634822311 758442027 432590941 672212183 595505638 520667337 602616174 135647473 948470850 385513973 816929910 504868451 159641672 904806907 702095602 923304212 807623287 769859524 212284128 613271476 656166330 84291496 392996305 726028922 63896947 695489104 870551479 772378183 356468594 52616473 885144510 5572085 293709688 842036260 195553216 600974567 954122809 612567630 716539354 195135987 710675292 366473487 962807142 298920926 411654561 168615628 625483488 859150685 149006681 329151382 54191388 888984715 129381425 952842570 870507245 372361092 196030409 309217125 27412227 669362009 671384690 818130487 859332837 645512239 929417452 37666589 4011965 656754644 529187398 673050160 978003408 753989264 544427385 594979838 579811671 396448019 209677283 166526107 445360520 420251087 217977407 183691359 232815095 527363268 7697725 671221313 546468504 817837122 295045100 514833663 869038741 702579588 527561394 900672425 1209942 133870133 838048226 197717276 109981406 767921250 694136400 618866252 23737839 713758414 157620182 207899823 960963631 863943872 586148170 11840286 438928763 691888629 64571048 149074516 892924924 142226232 912082842 993542444 320308897 435822838 424044929 889252503 617523405 466436736 608767090 50729313 275868730 865576909 979859396 376749392 966776823 540616428 480812648 317955693 810412164 206933422 180302874 957100755 526136649 885478209 276070232 97422496 328562979 872857236 999126925 292767630 795663468 993861088 989392225 96207571 63561692 974865343 937817278 625282384 866211518 967613680 493442756 276652935 834183068 188427431 375557569 773551330 516185927 663729835 79201332 322576026 808710734 177699022 255259513 420956165 344981029 831784351 150362175 538224025 133520413 500965106 714460962 959022764 871810657 379269858 952145730 66304157 814387105 373573496 804454169 666555373 794995653 421646042 704077119 691164715 684054627 970181790 251597737 144266317 992856423 316674621 383167677 967318946 847813087 861887939 563356026 319127649 98916227 904187620 669779338 163229686 508942774 575356835 62563130 795413449 73235544 355701788 19825661 667308259 649532924 310234367 399128304 761260869 545917087 451450848 357320786 321424223 835933877 240564756 126120011 632554877 555467467 456200758 680604579 805426880 971091988 181605925 860250369 54525585 196778945 932980625 660973237 323559869 939176317 67414667 180448824 938316311 857631665 492262253 610527051 39060204 593168905 735903526 641737601 392889738 560294701 872438438 160414248 482541825 347640733 894993474 775235001 121470564 203169576 198343022 388414693 888448125 658527646 954045223 37192623 69789085 715379318 3062843 280802409 139988616 872701352 533135380 492933330 495568656 232278900 216817997 214273355 604644025 333030880 11441840 400248170 909482708 222157409 709176020 166673377 493442095 5857389 65400524 743313373 505599741 190154389 924061248 390923841 756738870 362482014 811629746 486146987 717789552 602234313 252998862 935854244 469934820 264875211 308630566 49074563 896797414 674923403 701189965 552924362 665060639 100848214 388111531 181943068 216589175 634660988 776611 6007270 497050739 269835523 167193160 984749177 846933907 28185770 378518580 745520230 486306997 133502733 483687354 379723959 682100796 920367625 300430916 42748920 657078855 556916236 507706124 579921172 19026635 152955770 686521047 106247493 127496588 778795039 487186742 153441713 540903170 810210781 416672549 465193134 460490686 207656472 2816002 870219541 546646906 739445051 978566618 330590057 18942386 644571407 542979846 313851020 407800932 43444594 206733834 811581505 738269673 113539860 131669087 150365414 146014370 807386807 510975757 579671347 110938112 32631668 765445177 630645317 562749652 74038035 778521587 108249625 616391148 612886120 851765662 295574584 894367407 341060666 302424550 374957290 864688927 200188328 941353528 439267850 260117998 275342336 548794543 534409672 786890985 784132346 571488189 372006901 800144157 967292620 268003134 482585138 66047622 553114946 5908737 547411982 543287315 56357605 670102268 791209294 348705097 373734429 978777658 614793055 976277517 279381268 947993254 696475133 979873770 813013952 359771002 631421626 421437630 318630677 115518927 445856706 247968314 245033463 432193373 605339153 692161666 226455162 569775725 196483358 40718814 605863192 102488473 108048539 592781696 231445652 449735284 575845095 250050324 571719792 173263757 593637227 764643472 648534436 127441879 895072504 628180017 356622650 6476434 364566109 92898627 118426459 952202976 200549598 442656656 784214402 885668789 63677639 526154979 228953831 222521569 125437255 11878980 836022360 483316668 626457624 959991483 141813304 29037973 173749094 507666306 175777523 272139841 585829037 721454838 225625391 420256887 133819901 366262996 199280866 269105810 690537641 182794832 44395216 997148495 627531074 458816444 636628344 540237411 706956938 298759739 686020530 98037589 533022929 386132337 430637050 630905776 568113463 177550843 270441470 332530565 5705732 455826931 265575572 305178810 636846910 99286577 400221772 990255336 220008549 969945459 522706392 503100530 738433478 63085501 834122836 294258564 273742419 868854804 637266551 726443417 3819388 980591995 615140212 931047763 631875741 771544677 773497777 228551870 957128740 220171345 414489109 441290783 305012375 126871003 553796164 481818792 122055798 653325093 190886483 375146790 106967707 805190691 603565422 426982792 435903513 312490749 571874794 398894448 628668344 958226534 541367351 757682656 781944689 176205728 557506364 670491039 762980271 264410530 322208477 223103460 955915050 496845246 781067980 115898297 229402882 358050219 660734814 645872609 763604283 591574094 266195179 372231844 867264281 459219924 314423698 902298827 905895043 489913620 22584467 465714462 49042930 750990246 754070919 466239478 579354365 846469600 632918925 319726714 334174598 940041055 505450339 811731073 513940939 148387325 442493128 332516503 794360281 890314044 955452318 458538298 810574946 232301313 512199735 602872576 900824791 366786193 874153580 864144149 787046218 628166974 662213161 116783703 590209507 812776282 510665117 88171375 170891323 180203609 31808579 402950229 833946702 518703342 549608101 151963010 930945967 748037963 113283690 489101589 941816341 294213820 167302339 434741956 908315207 359643058 848416618 576475380 470730079 292556759 261045039 293474396 107912676 532821268 88124863 662900424 22410834 21262221 806367375 672882206 176640201 792366894 573673588 537314495 876251862 805001391 856548858 91515123 42914697 618719894 502301914 180018686 137958819 640812897 879114915 463133536 955260935 115448663 395149489 720455556 75214416 130794607 564027475 17505014 625052377 606567443 853263145 607870706 459487072 67052462 193847785 793596007 782736755 166236733 87375903 550618596 577920576 381244740 916112022 884976955 502111404 410935368 808453207 425126747 852332409 206513441 252909926 546755705 272389992 119023903 555167681 856732276 968795019 160251318 519989209 540719479 109298026 299593397 133673756 259703136 528451073 863864942 263967996 130214544 826038851 477474745 803431064 724965038 952420216 710561418 694798883 862644259 289821126 431236664 437392755 234973931 540534658 792322316 316931547 953304856 560151490 636063801 549465415 39145496 871139325 714939936 560842868 552772397 787948106 722122091 695861997 655028872 60800909 772237379 237930570 896435109 949535003 501656988 31817535 64702547 367649167 588052891 183234054 604443220 381502278 133894793 279322512 367709500 640659816 343736304 447705332 528174598 836430272 4570915 105303783 872871490 201314973 174057514 526046445 654645704 353288379 946294273 593420611 671550566 229836737 316637460 98722742 641735587 511122194 341231325 181193525 810620376 557852564 767717051 659241404 700001883 222498132 722436610 450873980 628134088 12456079 767213207 124153686 69863081 731762237 889089076 12497073 675952918 6291830 310386032 323490072 420002856 734074050 692564256 571003974 204552909 229087689 833979346 422512019 239957386 191764639 239053516 238728484 523727128 990106818 945595982 855219959 377670883 82977889 55930440 838394789 57006664 976557992 606290622 869158632 173115749 276612605 742894462 375872874 376045516 957969302 71163717 710319897 533217549 71498831 43674192 111562963 452674668 686792926 513932012 227435605 655437157 327609545 798589206 461899288 493258526 473230871 605344998 619745019 717493961 424087442 458449201 983782522 859471414 727317205 322200137 611422287 432369068 447717400 85618606 760833027 643982182 525802549 951773729 690270828 768752770 773758231 357763954 53669518 174113192 207827937 221200247 190438078 501458741 502380563 577078311 29556463 7483648 581493984 38039937 843308444 859975551 777091412 390465565 960979285 649973044 37733813 779641650 350801681 931372961 950772529 679555533 748641447 995853211 329718813 432878792 73333107 212410030 640051456 918524351 577457912 265557992 866094769 759010384 999535277 212893865 872590161 353830136 382532974 686502260 411970192 932093757 656051764 949908278 186742671 629759681 982168908 337326770 287375867 864872535 357758725 637011630 847768287 555762340 895842622 916605711 875255546 884462438 72932218 784201844 169007117 639867801 971827358 811914714 967199833 819870802 640765369 111590856 730158557 178154309 512382012 747340312 492665865 13947017 713718693 579471118 905501113 329708832 22974160 303709986 374356163 430280425 10844291 822267885 127670954 510656177 744003572 734571705 540230503 366396996 347070314 870372052 627464813 10731914 980289611 640131593 484886071 189519270 39661495 379453635 892266669 339170399 155123238 369534717 370570252 263600978 947462106 165420700 964346939 426246343 551502086 59057391 456120284 315711558 842036140 106912496 884475467 921657618 307860503 892947588 806444094 601918399 80929370 3773266 217789551 257748847 216310031 823665384 203545987 773342816 18939560 469544113 668619219 270072017 205747690 153800835 477039733 787593402 989456385 722413463 947406618 772739548 706421927 157273230 779257865 954688365 471280334 233096754 987320255 835487075 540179939 941634922 510577336 877534089 430936793 253979639 69429093 108150320 689569567 417579155 605036007 113330732 603351018 754501348 714691691 538303376 101816218 857330401 465214125 516945234 569487185 144423014 155699213 614244083 809150912 983153907 158383041 575735121 309662193 202068389 770271837 145663813 332472102 871245698 454394393 619484737 591011153 415625609 428617349 679598386 255575932 591846899 794469872 899425264 763720992 529434704 75045024 283299045 792508597 966630549 638354444 537588018 741746995 920394715 981972396 43893967 423473051 557557496 252061290 867983627 832199998 277779053 652960009 647385175 607525920 341930164 438059336 115108891 37510101 832995244 447464833 732113363 852047741 56105550 1905528 828987767 381218902 387250660 533606417 534907089 361214902 484793108 304857170 513368188 130276970 792845884 243568388 529292400 952407691 561030406 76315191 437777790 745093707 801060127 984279876 837070065 689064688 269106959 572115841 919702670 398400256 364192375 780892818 216226559 873273396 676141306 822470275 231601468 742875135 500464148 443576299 411438041 36996455 414563135 863224267 583403828 743319544 551281595 74230486 453550419 548125855 336511475 641605331 203377477 570025164 132091515 514560020 712091947 885120803 597618521 612738895 687543979 267813662 928517541 596776481 755433804 128300504 903822843 876145600 800608080 644333934 308390528 804544164 222296777 19867633 725474746 924953063 175151522 589544854 697910072 303356993 34416244 267037034 102923005 256730831 991009415 823107299 571499553 954607060 364783865 635871589 184199799 942951289 629535743 390617267 595353240 80433507 131165692 106490945 333553616 509605544 608281516 323487369 873582565 309898973 389532678 600908328 299266756 893070611 424132927 810883878 132132811 559683466 501627944 175719354 593559808 747043893 84574388 544427743 159625107 325577166 45826239 62907754 589765032 620895974 595929076 329358251 162063768 28405071 349343848 294395176 604882269 677195806 901271166 496495924 162706829 769398747 368978269 7823419 755920765 759327128 167426092 462889729 917288543 95760796 106248636 854053030 137794216 19714841 664938669 215584319 651432769 127413613 168137067 899188690 651872098 873133101 105220636 722701624 795331314 438339713 119792805 865484878 801369557 322854698 870586850 215274762 228274004 981137545 525378249 477943973 894868935 688546673 216848339 489379899 628834693 675151543 725822720 339591437 160716947 632443358 464104845 669972238 901007443 918474939 843483395 222272055 774998484 7016775 47436997 618585531 559697176 46182262 255117000 48626122 779306906 554662949 607015854 88355345 642937678 399851564 413815310 356641047 554558454 20722106 489181860 102957830 548101588 363926959 722569795 407154793 284011622 410216151 471245379 945145617 660205267 197866498 897588691 214385752 862745285 120942349 547479216 645275862 530866567 718290064 178673389 518790316 732604049 261469928 480188604 81649005 418066667 154684315 744896223 329554006 782003930 529445501 83962809 394465860 250341231 578917690 936116403 225290372 344817143 554944130 434458720 769149420 578217967 177614535 366043967 149438181 137657153 626922341 538944840 620313991 613322906 81587442 189096102 509485933 510797690 221794700 756295324 485988578 144076975 385392730 264316459 233063746 353269145 845900841 622575731 319415722 66319452 983723600 102225294 834069036 129431482 288230088 207063620 832630124 505504904 345636762 840105052 568243332 119259887 775446589 905384588 315017133 663426962 980560600 171373578 293569978 545239582 998995842 758110891 376081636 44740877 904771272 63269546 61312033 51532051 8341497 729068042 507484621 817712578 142605829 357657440 40733900 995823920 726784788 162059067 693116576 995546438 92415914 553448410 805058022 152619818 294381221 252916785 426593366 420700389 777907371 32919636 596162702 64245699 188962493 645194062 754710683 312551975 722968611 695835706 279022706 1160134 121626715 603345667 902513722 687643182 978701121 314441503 279662193 822302914 402623846 374117283 988282560 923048609 178140660 768633499 831447586 89449234 569944616 739560383 904401940 488737998 746103792 794786403 897230311 834327918 514075187 424505672 390294230 733496848 460558755 210374002 156380467 242458633 468472584 649429542 658571399 834110197 919720776 251200428 69081765 43917641 969763504 338234964 251453806 826290562 671608691 269602754 842451228 690463427 296226512 418935405 400268047 727881685 334640877 967621373 327731471 832671680 412322100 951777208 905095222 937741143 72394588 738237769 578496179 992237070 380984988 465247119 966806915 687658216 262236905 867664629 794895860 158585202 316989587 970044419 742308836 461461761 380379190 943035748 984138456 713729684 749407050 306905200 392928335 360673722 80175454 194640514 30190424 687227197 121497529 740760416 919015281 379375193 90680974 299059325 59039820 79249075 820477993 149037210 337438088 753548811 163336788 18727821 368207821 658910686 807854227 668279933 647623476 571822275 165283288 631775046 136580409 637889928 671355346 515610779 693182401 536004121 979592265 513747633 801406965 651651160 44231250 96253676 747481651 800239223 170106818 85891638 953007777 487127559 598177232 955981393 390479560 990989230 163593627 632541646 107650607 436161756 128824262 843252830 994792649 812782852 992223819 471300237 611402189 279885609 743377402 21740472 905608475 586894233 710846625 879093884 44635234 270801749 684755383 924110707 252987597 460322312 575417392 126381266 188488392 584550885 319334039 951243272 66242725 426147104 563110463 885256130 552280303 302100380 883027589 469411585 3557249 814327396 438279379 461324371 783612770 243305734 772283458 391434144 161662623 817189943 501767678 33406920 625057885 783305662 324403500 643326844 304637555 845334324 750282417 266167346 217860590 772998127 62207140 259459978 838816768 505685217 343640574 189145362 266380595 487754981 457054510 325241785 628739179 328256503 818780535 508806727 393487810 260314266 781995181 82917960 310652080 460872642 804112498 85400358 458659652 159519251 792482601 811700364 538715728 322164151 250144473 553124819 496841501 576737086 168971707 296450690 573916236 928347561 157108596 208393627 566954458 190541297 253588251 747490160 947707457 443340382 134441491 22209514 184656556 15894145 225364838 252102383 675706076 379254628 642432540 505763456 390980645 548685403 79691094 219314725 892586745 368612788 628378425 58021863 336222290 681302126 379126931 500444746 15518078 508499375 670037271 650687826 415014125 4989441 330400830 562915691 532257302 553032344 290508437 740418098 227056161 17377131 868165860 743951288 92735102 578524651 913104645 700605621 337053081 649623675 964713393 505666520 425514484 216659054 380320311 387903245 313891487 845595098 48928435 929690416 147587399 715460975 497721409 559104392 78420450 351334571 471125760 702989980 428653181 515320132 161797332 330078244 109533368 864223392 166487218 256840464 568011324 446610563 758120009 704389290 843098286 910096882 671601486 243282672 655630563 305472538 606085060 454230597 35592638 258506687 748013891 347902577 898237827 517094275 142428882 590445533 144152618 329929448 102444671 331250385 405789879 849974980 384211427 945287607 254514815 316636376 770454862 193639151 646242637 453822064 680005131 576300133 615669763 779195201 509912525 201567951 393194623 737387802 427073879 361744079 765872043 849723231 96635565 364698662 588436491 856118052 265672229 138088984 816545968 279806506 860595459 483803061 197117751 576717886 845503755 359761651 656526062 166280303 558840773 794936294 468100387 358696315 205761681 557399397 481220647 455420819 55237980 421410874 273149309 22707045 927053165 846312818 836800392 735008544 977593107 882165538 722241245 125948144 967195852 494850053 709181293 173953986 111493486 782995152 727508116 662774315 710618758 548823134 725098554 933736999 958167750 393034234 529620977 464364748 274406599 901511837 138768806 77838936 261757055 348852780 370225308 998360987 237068222 818099877 727851509 383542128 454669621 817130853 572260226 383793257 75179306 195045700 967995904 34168123 412656351 253041655 97540966 98963306 781307726 396345076 465473054 963084578 970449721 727508839 630589190 139179521 710303096 783868257 124770916 849622511 556136505 993491500 203475783 903495707 498479491 931434596 33408441 503477052 865889773 843950174 328065701 830368916 24464123 916101298 563596878 283180601 585254493 346891324 813548758 833423486 69783308 879589958 527951725 85744346 388073057 609881711 201849816 689191134 624637054 350694650 337089450 330236858 226018852 918134390 170181743 798307817 431709458 803880511 846499433 669512953 420253402 92672445 330592812 928812134 32912712 492324362 85922418 507701960 38317922 620668242 948232943 965465858 534699396 739425196 610929662 671830393 855203836 398474450 61346848 84211730 370862860 532602972 358043500 910434395 266794685 992152458 799270200 11417335 982762845 38376358 55826028 202064525 833656566 139069473 551095782 82310883 582011633 395184808 65146296 757855483 745102250 341410870 718430370 298667519 784432414 324287210 317708843 631169888 98706424 61430407 302054489 295683345 466641405 178729827 149989157 377479703 792581494 839779611 988556510 346965847 662751792 489595809 886667464 988692744 441420797 947510618 276193702 624800546 812872035 665612068 360750921 129934672 197266692 788741454 429477432 609516013 670529829 740826231 514921540 720347676 565540028 587488704 904361740 481331616 213003218 852576484 705109804 752813079 506050074 944766960 125179363 134345079 673913692 9219096 297835705 617809445 7637087 981298137 651934696 564208828 768356320 328715362 854337734 847304589 875198348 302590767 184235443 243933476 296424634 362497695 236194399 865160683 563251508 598971556 520457405 46347653 877843237 858060563 997353983 627856659 310705886 751045764 403206713 796348442 924636402 997216210 373077428 582680790 27604166 131518435 485387017 795894925 842185048 958754771 369849466 974516440 574120602 393117580 904264948 691378771 889438572 534886616 231311118 341302676 790020069 997945741 636947515 135494032 192949313 639753142 681606507 969781036 594191176 749018752 507824193 478282222 48442021 47472970 521870119 263902203 596658715 550592258 460775432 641341473 670736180 965443722 643627723 912524827 843730490 703846789 167652539 935282075 632350447 319110224 527189899 12832255 677069778 311003629 566348891 150447995 16934536 975621523 492794779 207429122 208509590 859323978 181041312 647436306 284381847 188945924 324747484 409871560 77916417 576817121 21480921 581880658 944728119 537388708 321375931 224847640 532012220 246970217 601272995 101693182 122374735 948660478 175224940 440916826 416475788 784847582 378442650 614679652 769390238 706240000 115929305 417117941 516366959 112971037 968923997 669654146 646933199 402470931 933906462 96266617 906511262 609170398 435132912 479006321 951276816 30880065 12928759 330435551 306811306 139555718 490128272 855865059 550839633 236021733 122169019 768718661 610027066 218166609 448060097 106410459 339119811 185756316 483141141 289876866 537485878 812506556 800020956 222838366 404184727 624695230 370483024 15851873 609728145 9929413 333720984 515100819 696003225 520064341 617700803 943674657 974090565 576586818 945134247 331829839 825336866 784722843 491878771 141285574 779520263 55560631 933862936 781386202 745905741 169348816 831040865 456597024 381802165 453965420 433923935 525610154 651744877 139051193 587147582 351609368 656616093 938049420 816441691 716384875 316126273 347932153 479970076 952104915 329000955 689014556 554657489 767642611 45137525 251689552 554932255 92911958 653469716 603825132 737193893 336818259 102645672 386144850 917439269 190590019 243779977 978617682 37174678 767327875 999219616 53857448 335948830 715161037 954417471 359719369 380789855 155647851 205831318 947561753 754171461 20076603 771075820 540618673 585339016 200858057 175115738 184714403 205071474 876577961 365930962 876648274 453973658 510869109 834851120 885311366 73196248 307666451 284273893 590781388 409182343 111782627 36227144 465570971 54478338 592187009 301374391 971943526 365382108 883669241 980358501 196341021 244815705 53668172 996573260 855817073 545377879 676857717 568113643 231698820 777107035 406782489 998653487 866241049 4584198 320510162 176625342 614204190 310927228 574013479 593855970 474903237 390740989 609636546 587623898 87090384 763971504 812202226 472807039 299869616 546899374 987693519 487696070 108465727 868278099 559058144 243404703 562805694 800798928 835879622 732836993 741500223 389203274 461477707 622515953 332377679 847122119 572440112 276107088 167747537 28202831 20920219 299120519 915899589 201047692 119685439 184551497 311316720 968782534 937709662 82702367 648228394 611932111 250528912 163898527 733395195 539771114 888431742 511688124 144931978 594866135 822507179 347543773 482714481 28926384 655651413 816511704 137994626 316026663 253330780 274449705 974618207 922966065 615842233 709803610 178863594 55820615 332404257 566549429 65234406 250565500 489427814 190707076 185988916 402448448 527186610 271468078 201906819 587547698 993429142 833786793 628664958 59852985 56726761 79611881 120258019 373088575 947362974 505901597 740687447 844332284 944348928 343615287 570196602 95341273 69707915 556759740 989616528 990908280 62187373 880836126 995678473 20040835 326902983 355674931 743082331 44316575 764477246 753297266 572148545 685662381 192469162 1628782 46712991 486061355 324999775 368894665 351986323 378424660 426292631 1536039 368872738 204597465 544193360 426560286 696365149 204647581 956248345 591614850 14215059 329585624 434508048 466002170 497561323 984758924 432408068 211578282 550997394 964255902 499849228 483954883 52154630 146227816 685324023 246802240 756916846 401039468 888012480 657764711 507220181 410661149 181134740 903684223 546096251 922856616 909486149 953030733 335802264 110606979 920714397 420344800 932429698 898558650 396701958 999295610 950640715 554854760 18263058 2441563 887082140 644017965 733936212 267567363 484440556 133333119 599871100 816136733 301468289 952452989 145252136 879417564 393366410 361267208 865177458 508557975 822587291 709773486 987895580 97903589 597004696 707667796 568158896 956156192 159815857 31844694 727200614 74330877 900732490 933311803 368353089 579670465 486451321 571336175 48865937 542514380 552815181 593054623 8238198 159487315 510034018 165329996 317913829 210021417 224266879 560564463 216548645 820328154 991880144 990619511 294930169 398447836 608559513 638834184 489529887 370290378 581311496 791081 829220128 702634993 491529697 409826308 318612153 882213824 648693950 697310385 279793456 234472804 438440525 59699237 709841843 40830886 833364824 389437125 116028327 150696225 378578550 596421403 602980722 641027283 472898428 777435959 361967457 975789142 39502904 727957821 907509658 159738102 849152685 519646877 776912013 148356446 733636161 224097743 332490307 593453494 944125916 270425902 761931824 78085170 487845471 693109119 940375308 260446545 501502035 701827322 158920261 453992121 156870012 80209015 288827508 602981469 751789942 748258878 709545878 704250078 410153507 959177583 439102746 453143842 222702330 761743112 299330884 685742460 838373046 371778770 803256415 175738249 930797206 786259306 732577260 167235592 328969358 862078984 47428841 632767790 781934685 962874572 756921781 258722501 189536874 269548092 971711158 214358359 181914239 309613131 38856529 965789325 688577355 849388415 356989067 692558813 910725661 781004508 885608804 357776264 393302873 665376162 607904958 461784709 604630846 493143472 35394715 232846695 918101479 462055591 938924107 875012575 281801279 712061482 718318111 391899893 847240644 850964240 139187035 253403170 555514573 287799302 659100662 689371438 451178857 365292097 23053061 720394192 649336559 529144059 874768897 828073315 479329288 52251903 148532913 52235109 895169433 656692257 571616666 292259960 308519049 704354907 973216441 338694050 337796733 813650250 588617089 661509886 886351789 358066835 206115465 940793971 579065929 835261670 337416063 375590070 648058387 971361835 387125116 998292215 858978512 756348699 378600065 831150746 268638901 781433149 276689571 818430775 570625962 598070066 759225886 537467117 759113561 398521609 180516938 461924017 157019025 71924711 918524362 840577942 192922742 667316725 170287267 780878777 903108934 294044697 567334720 951317768 118135455 738781021 40163211 793944227 912218090 886757046 497244949 624979604 888221392 347469411 156578243 472007001 728319918 750491863 276856474 106210187 223808058 346150880 529845577 935738473 558213927 811163677 355881831 798414402 476267867 82569026 714718081 632202729 102987292 142647623 996710777 106063937 544578213 718372210 939694253 450644654 600691662 923105649 41680782 283037777 217947964 21099419 318265621 977726723 795450448 938715538 576235981 566379498 213082892 22841713 856312792 340524200 996116562 266415519 648135618 722006126 784295262 189942030 270007397 756021475 455854326 450832675 509735572 284652416 963810308 139707341 931962474 834245257 506146950 673807372 809076417 634173067 518998010 699720550 943252471 583743269 451141650 677927922 568474076 819688106 263158294 243474868 951749368 16659382 339859866 679782246 896809861 705095236 917921115 339904757 514942111 549295865 436779771 37610025 266178205 274157133 737140075 193099974 986986987 699962958 351288133 844862920 930228702 426562585 880947836 246094377 466435877 724921626 160961078 604509938 366976203 106245318 461035383 823753316 66156455 443830723 433806529 50283835 146087221 413343365 758814545 692095738 247293626 781978960 565368520 887043343 641800174 585766148 657072082 821141392 600231916 861080591 874193505 394952376 896188108 413337533 190882711 969786632 65740530 40550695 453787330 388654570 205671813 476526891 559037939 763236403 990478497 981843986 375866434 759911868 761451728 797384553 649759145 161941262 65877948 383402795 629345529 593557572 360672517 36335478 893524997 872494282 129484206 901027113 341057041 431117632 163824648 929218879 878608194 925430276 775055508 494324702 180909707 833224355 889835235 347445238 221896119 84466702 140938093 811373290 959034460 434574879 677649165 31300092 375001996 745753530 378634877 402491360 726488946 368400089 630834249 638768814 33348980 901718807 574135724 951614918 220611540 482535391 672064854 589322551 752967817 281097714 594123540 619471873 887145764 602563835 799746919 932813495 444770027 503538882 827250264 370377117 714914287 479255382 55255524 506237324 454230809 805342197 514642140 877177388 112408497 280615213 804277978 355496179 781646262 655551638 41987764 689525960 401841065 718896600 905863257 532708860 550161882 950183045 657247351 668036286 681679130 188425400 747473282 260424117 191212385 112696722 106641262 506023420 48989385 764413688 850898840 194992649 455456502 671178544 118499998 297704100 661410838 584885245 874485475 957869791 553718519 749559164 297973590 745690543 617063219 259721567 369019694 342439348 701717679 19987704 867448750 862777482 938381272 830300744 89560343 715222907 870170295 828620868 914360663 225319554 847510507 30929848 514527685 943150918 590134962 917219413 732543802 776768247 269848866 590299680 907734799 42116819 225198734 680595947 959554251 707883786 511640468 193649226 218860978 998779597 261870531 177553630 997623642 94387880 751516423 32625341 349661757 981957351 724261523 190633440 199564588 298215091 816540660 775885924 728795641 793307253 301883928 951748520 96684648 146912782 902835247 599564476 413188541 716359884 668256997 874367548 676569320 336118332 463790068 923841240 692397349 624453091 72769180 29917768 742710854 734332818 715227180 683758739 397653254 192199084 953929673 559397558 282018876 463976799 870763200 179417755 653105566 38586893 810014800 984910702 188286102 616625647 466955533 641798323 76288176 739275599 537475830 813557987 882196710 605573891 671268192 404358331 816047621 62523695 493145753 161626258 973395406 188964278 973946401 703412875 178947072 44080057 466560943 507569158 305204431 525812936 5916597 995295747 722374524 26798682 366613643 930879029 345036379 730371644 777200177 949509451 460951703 159853042 251623005 250414081 166798628 222852951 544012322 857285079 132027119 163868040 959432160 12915271 754287129 993790946 721772815 487492196 722344752 21580861 942904273 748569689 282504307 173252538 616703474 451735188 332293311 824390843 498449543 913002356 772666520 629858454 939270189 186197111 748893915 30646779 610252290 432183864 285050648 207759845 74615378 816864874 100137392 775823625 855166619 757452523 963139722 281684802 373358619 759816243 273837356 403099811 188896978 194416382 767432533 746942559 579546745 453328459 508399035 434420103 293309914 31899442 194963958 382793100 553215190 514497442 848477803 280937053 685456095 987380914 426268095 473117834 390987919 634642610 298692978 983514520 917878224 477102910 481649414 700853763 757396449 780869435 459850170 266190113 950280089 400976212 322346591 691798741 513950795 941524456 355820341 395167026 652610055 86690600 462118323 784330551 330310597 909818389 935754973 622546123 544896123 514529775 503237424 715012471 15984563 216931531 700076512 230750478 321232256 295441861 739512024 644722142 336708224 996080622 973173591 979941805 423537663 688222576 398761332 324621017 558982194 342108732 654037252 969780817 360354836 272039922 949209041 484548217 786877211 855530812 764847153 906055730 453129129 607906031 708280332 632181859 967707980 455939607 647008103 356016712 685198620 348049212 265188557 53035018 264723520 411698282 954661722 372002411 187360695 135980128 331537619 483349137 3428637 192104785 250110094 501184007 411148087 947977378 730465873 999484990 125148973 738302217 119439717 564808688 98203396 33539876 971251637 144274994 787818806 372193260 531646553 28978207 378669562 199067295 377014726 853502732 24284099 535566832 527575641 567208768 195930066 53858977 240541076 556079575 447649090 236307870 476021091 263566423 104746996 197134562 922493111 314492858 491194864 374661551 798691895 400354694 552029233 431334054 443629284 292290206 29322659 431972904 183813858 641441890 157285083 927785587 826754103 420373166 929679114 823419233 19761788 365460047 135958419 262492561 753884268 610330052 294638323 319281822 942421426 442239484 974232868 864694194 134927190 674979136 438256614 577284778 132882678 278195656 67502767 444394061 141686331 458796888 40679648 384708316 922913417 519588710 963887701 23615767 146003672 687889727 271261163 16146997 609534349 532108566 455347629 579472284 316326730 223645072 215194293 724269187 295972841 209906670 966619080 94814722 301750338 950971626 443152743 347368606 907922041 927132486 919507222 650749152 306068179 279325309 116564348 310049452 923165379 849295127 553132628 798390435 442400730 792581579 288789524 849021752 568564119 702515230 484973161 466528031 125179672 531960183 341319541 498775782 529992771 219770542 838712615 243867656 221614983 289723844 450010299 420617657 356551895 585903804 680465848 366953482 158838520 70925449 735647985 328737214 57740029 278435337 957686655 509548935 70732061 414413729 744169891 295639639 734361277 878748552 38313286 787798008 172181866 195357708 230867552 943903845 937989050 295271158 528123018 380970555 949876599 459712171 57099307 961587843 233374334 365805186 188191052 771046631 755118238 414160426 932174455 936386515 366215947 30518813 787752677 889404583 536971165 703973597 108397280 197652495 331666659 573023735 846698457 379373564 408900246 487917557 918356453 792030402 322109214 913674027 875321290 34804988 586448297 88310233 290104198 295323804 900071396 850688598 698257684 965068705 532969721 896213821 564735560 884485549 726518532 599530369 816643037 696787147 900078784 701069550 156615632 317570600 15715927 30032363 521516532 147824365 229023509 252676031 914681748 981503713 576450449 950846953 55780517 339624594 17684580 436599457 910106470 671296946 984362214 324115550 478281278 562663966 444098128 715859272 3700804 673864585 812576452 741194249 504665394 877388774 256668698 886438133 535298555 667190373 930807564 130927376 561141485 562437571 132720162 17494346 643911880 401591701 627130613 91716447 117369645 277948115 269613782 696385235 219360464 825624418 896759089 97787032 262200538 641269390 369967871 554691073 447444248 227159227 333390980 934938422 914574774 140429521 564268479 590059033 745761580 450559962 290593747 700412735 414444693 614194027 324829801 388005206 296277173 764626399 872945759 626735808 726493388 939111047 855386528 1931857 831328551 741163934 715391120 427465239 266238543 955720743 186033343 839076790 151056315 115461154 1467509 924064216 101018389 560794316 381203708 180603926 927889304 343031295 818760313 810795157 322129101 484219262 462852131 672949568 688809942 237037716 930352241 267669797 110414665 708109173 58624778 651400541 219818102 477963758 998630162 506021237 562407025 175984455 14269257 884957141 105385539 264363670 274517515 588473231 652633756 757018946 948308117 534823901 119743020 398084006 224020268 741560911 860134563 795263984 167570847 693562454 967241413 286376891 504530842 166002310 443568671 40313274 36563492 129968235 386353215 410009587 820100236 439592851 866067926 20718784 624733371 96209813 618585547 738655564 771999554 188839622 694782809 825080583 45850900 995068402 15168418 553850300 760740170 843077706 725358874 907546888 832423420 758997867 896418000 104443372 388415475 580123199 150201678 430295971 813531961 716021574 216788356 78318943 856070617 48409847 628922809 451907613 482559974 339930165 57261359 329358558 450166425 349240787 897324551 713503128 570329283 268124870 681344691 758313606 663585557 995511806 879880359 402848258 380161341 718044486 426507542 971943896 179298967 808274504 623862620 317659537 707599228 641678161 270157865 295203379 839938601 841787940 726530156 171117536 671687826 335441787 741824219 181512036 758146726 472839916 973980059 553543480 132684349 965890726 634609666 413970928 849803844 312867341 557145937 231020217 754910991 292247094 793561729 540175697 237149931 186563020 194424828 931233647 309045206 7225505 990753735 992366629 862479558 789989863 670467035 646950660 729188011 140629463 475666200 346493132 319448408 235659021 596264431 725030031 524151585 421181305 91591134 650084433 804165771 252550044 395585214 409664568 173526186 432298771 733451100 487214509 588801112 224207043 245476827 344542073 669495614 338818737 601185516 267472527 937420784 709531951 734083820 865243855 707769527 985051932 489312135 999070167 259657670 649451945 473329590 751502070 539203990 687354644 662815681 644887490 161708966 716768119 952259837 557771733 792450775 317629471 503434566 754429869 799880079 275737501 239158879 661427842 970980158 811841763 499469878 294249914 119293376 799068320 871704335 899752491 864376984 396131869 585489153 600388118 424021054 802325000 145597512 3076275 376506969 420269873 208416316 197146417 947714002 280997667 328048669 90214992 341286521 295619141 515134825 521381864 873385147 670082710 610032490 554614247 804575873 400249553 321580345 614587138 472736458 37995307 789144098 649555683 293188760 622122648 996688607 628825920 604964147 364213158 44699142 361177598 677372954 127972619 550590120 571558948 36196586 213913891 864357417 708379018 514086319 459327312 640119246 453717422 774485472 996412516 32572669 762193722 695875105 227320374 357110458 394535713 603877987 634950484 707290575 720507926 449231180 918553032 942206692 35511343 990005341 817625072 230009316 5724648 979722869 790941638 61996588 670070722 936983496 594480324 276198779 256599608 662747841 488543895 258969865 354067387 748441343 766386137 287716376 880231425 556857064 652093229 634783606 883788425 264363641 517156578 24518725 201141745 646926721 652854780 364268618 38272349 491327037 168185133 107817445 523082205 510057902 695610034 634042363 912064388 514295187 805467216 797858012 305028238 1178515 78672664 536156392 436328477 158728960 704405883 523187953 310275673 316617325 237964032 999934219 508895029 66950958 294977066 190131485 73731487 434496975 701401305 189492546 901687940 391466677 615213867 542669849 871884643 996409787 485091884 646084066 300164894 298788101 54762891 287637410 339669418 696340592 335134258 760000540 173317910 157783519 390019214 911503626 192673895 323514348 247734871 469792023 364887147 676563683 675103723 515929809 732796165 207051359 1024735 381155388 427966627 227406197 578727659 81977103 495052545 314909191 104115745 16138021 564989821 203066355 643153687 462620235 170094974 997960586 872734579 482223592 925670697 861628471 229713711 128026394 725712912 518183293 187299244 514706474 230225018 764599878 483148680 64120964 719084605 813719201 868109233 51749648 704372538 118630879 656590337 933646891 881434209 31757268 164219231 34409249 866492906 821458126 850670862 43550531 192811730 630648790 908917250 799453212 854461967 559598055 411574956 832009422 54010270 415981402 261910202 372657586 464236245 629526482 500394228 712690546 340420703 98799008 107096377 336957281 288192962 715149126 231702035 165975435 88647643 629625786 589593209 748440332 154683050 83976000 556886569 429893793 660072468 151933493 717067699 992481619 88779119 722309557 236412833 944234109 2780215 101852503 499819828 943643356 908482593 532120638 139993688 887721761 12725896 576117113 389964120 501244954 384740937 222588473 308360452 618753848 833032477 713369991 421932078 530305672 512240676 823987707 513099018 818679128 132251342 341189854 42107699 831394729 500968256 282807118 181627775 533780800 164421346 320890863 159814562 206181487 52230009 761010191 219301030 63235690 433653358 627584853 391823011 959199648 580422925 494688225 17498484 360186609 323818086 57820764 76415438 216822013 125380909 312465448 152188259 587099995 762110921 408896172 947607591 331238290 585107620 522639253 469743429 38564708 903966201 118880575 59663330 171892601 855253078 247553534 210848631 200838150 265226774 560181435 998279091 892112804 902381590 274400285 537573136 932158524 528910647 515263572 98516630 671215951 604824739 741853067 627458913 729056193 164747038 770118225 720984729 633722270 193094398 695403575 434184524 965814925 274945311 43825218 736196500 425516067 891575993 116223957 312836032 922872030 607610975 450251563 432194843 357117978 760446937 211225510 580726932 38052227 110733427 921294127 317517776 173604076 553346863 749185152 269128748 154441421 27011759 749391337 203573790 712028128 408761690 236197710 750524811 560651180 631613703 888692338 439899986 123051895 622485249 844204234 148165363 139254229 662860264 361725248 222527421 300076556 130554313 101652097 490950260 343719403 461470870 869042898 303983900 50083693 511004187 907161834 488717215 927661779 298264149 758466536 907809344 453211046 207648535 3300328 181085605 10056122 16602308 12488870 168449812 851314438 841086257 504024650 773834760 496315555 530977191 257827297 149133775 629183567 315512543 628210696 834713694 733202274 958081827 325709128 9472712 160571257 800735039 371345088 216380395 325619310 560448745 933616634 758788154 824150467 982217202 347817482 488656405 750718699 342257342 994687617 384512557 253327679 7836721 259381603 869221036 913335152 879249228 62574997 455125897 568847005 653601680 679945401 752796437 7216073 673198501 415047148 41974156 763012019 255403670 894135928 332109307 518376253 588737869 435109524 853112322 410794017 114347606 209318751 804574333 90032931 62101973 100264847 522829972 746275119 54705063 306614281 220263433 149823775 987255208 155122896 375291435 168442240 910673272 364876921 957390574 693951684 418551232 572565664 913587821 944475696 632165287 674061493 342622913 375711314 431464978 654945550 590151279 854466160 143258641 682728697 20051634 92099018 684414538 853353403 65544193 379267528 350290197 733110811 950658379 530031735 393777476 475875843 430892109 218059077 890183818 426297274 842823935 233437892 172674701 809850878 545116479 818349157 298411778 505892600 59753723 825173083 393494517 650054796 423721210 848796906 877914181 77619937 423764107 858347940 697891922 689295572 671736141 864702812 159096526 738863688 861455301 931915545 253559410 312168618 724940320 376087270 572020305 269518480 596438919 314473255 138541206 338562730 854383849 402013327 795443436 649829065 83051012 694684420 349151551 398904361 877871992 180767814 240111164 69322550 677925037 749371263 334301767 391472589 71649892 987295456 842844043 554061181 533836831 283241723 475487253 610754180 868036764 619212868 904365415 401660576 843352904 923818757 531739076 241787760 409426253 729296286 443432979 423268817 32804654 123498836 594082509 894081543 938817035 610661835 388148566 871882435 343315043 853297433 790690236 279056868 44608913 64676729 239389259 222632879 837464038 853159745 795799620 598816058 39085315 223919953 244002573 158264627 981296583 713686590 866006776 14529122 916547198 956145407 941312121 696489490 411228395 665635514 201736268 422623701 171879908 891872788 762572935 538065285 142577862 56258153 874846257 138904346 18088884 163405055 339601420 935126795 712072424 495684099 537237434 540209702 370844205 365405362 240001727 156936561 116879437 295621735 352600726 450310223 790138569 575512958 760763168 383540594 139042643 374198098 845521694 24342111 270889125 974579741 801740878 644758137 851100822 234266148 610033558 844745363 44992364 860693134 328791392 320743531 27566505 719199649 767989246 889501628 547270370 541674347 586574629 857511719 621927778 44323842 609153455 144148737 804573021 267106188 384274352 817861092 713026597 563952402 520574189 708054076 486997226 905890774 839755075 799448421 333547727 261227201 277378411 981876113 514042000 228247120 192875223 952301664 869799712 526124282 498684262 937452500 226156868 570592473 859981272 451493367 165476149 544123844 691764817 175853750 756440121 706841350 478920273 960477662 268913612 721689157 919742444 865229821 816341706 910229804 141948541 845613906 228794973 280808185 943441604 595645065 778338998 571606855 963413756 365826591 133374893 967547080 147485221 784041832 365683541 780185530 291123465 848614438 844216861 133084228 548228988 51101008 631793791 260733366 912191218 965645405 693507244 625578768 697410630 619828689 630869321 592616383 154634118 124458073 637873157 535486709 431720038 275766487 670267214 464387336 822778539 634021557 334421139 742480974 639046615 640135135 160794944 855081558 546740609 509547047 297439351 861920395 478865508 6117970 321970396 44056723 185445821 69573005 76696924 299115652 675243109 438089610 347114213 131864365 131289629 774610865 29588971 37799509 907949838 831621269 979449515 825551104 779151649 164691871 778721238 957945408 307854836 316318211 172220477 724490190 311736004 914796401 750939610 947132800 600526674 732077683 459687353 693693789 691953114 266515809 500128526 53014772 625950018 254237880 787521364 411366096 196056808 223312158 196362488 134468537 744613458 295590149 636131069 381622407 412748461 685999587 907629371 984307383 675374506 361482330 76386285 608099683 261305209 2493007 918800266 521894883 439478723 27023326 802241439 483620547 109161104 302016273 969476680 470944831 199407043 983330788 818455276 730334181 658387333 542896557 413708917 815714353 817712840 816184515 824206753 470277992 595694785 248520708 954342175 841422233 768129386 885432110 599688269 453661949 42512883 522526926 226411061 762390637 604569025 601381073 4934908 131500496 347211500 832639614 636773190 566876375 927431079 877850542 883747272 191814150 926093279 191841551 446088881 177994417 181640384 558144128 26710605 56000399 901458249 59726048 224749019 17970877 344359979 490558562 618330294 721614385 170908480 487720101 920711024 346558448 184715468 207996325 614226536 221471295 275865531 984382791 138976241 696522799 741915811 646579854 235245138 999471743 775723432 873433532 193764908 45570595 173491571 821253986 355959787 385862482 947946684 53340725 19066137 979689006 701369406 527668522 172158967 371144635 396760926 707809885 628756871 148164735 391270463 76018750 889022506 199552666 204988830 695324559 465424250 820457231 702596854 736497816 907663995 685200285 411889762 625214706 112191084 48729160 466322902 15404195 603033973 799709732 563693720 896100207 662982515 58775000 745190973 982664636 333686938 155529796 431920015 313415513 714170074 248304900 74283870 869202163 251709976 647653701 864320649 264903093 693389717 507210684 996660857 853425975 325886701 820188228 393915766 645339398 999261818 953326752 152658684 811780905 656036026 746888021 875535948 876182863 629311048 18311254 161462487 623077817 128671573 47444460 911595464 997240408 267971481 453612627 349888143 754855716 753377861 798058772 409393398 746213935 751791445 288552963 305417729 697377938 78566793 372158886 95325189 231898592 815669392 743196309 940316634 946271664 943274804 897619127 470014021 148455024 364250527 660436458 894908348 49486738 321033213 927015675 641842569 896284245 891131637 667046879 107433433 62687056 254557818 533405599 374454818 41864230 858821546 789020470 891358207 849205961 527318311 745239497 3199101 320511350 61676130 426169628 869447097 427948130 374462707 67337464 313194683 956216598 1133616 481079269 444500161 662039852 567785668 435025822 376494598 991210420 962987967 289354535 292564228 18201185 433293236 571453058 71732215 161762088 662061094 947860511 860177024 777225164 965739548 809541086 657522416 649627635 190533995 849413476 285102357 527875231 548608846 291357035 576882135 361516046 290914867 140348126 229826204 637900046 761471955 854145572 193258954 153465241 156068630 468805719 263872117 584331707 338887892 785205124 31852134 131586039 519050629 345663817 481499546 504054094 375229951 252317490 92227412 304016663 671455267 984017481 69979960 211906124 566429331 601002940 953045512 791045501 764834288 799315369 42601639 384494586 964450311 540291080 802716747 120655606 983344099 36789027 980793484 813111485 41376105 279998132 750325368 826493245 131710094 997624252 223353364 935689529 40013647 284142241 476429587 495793336 672310366 29242991 848125148 819857516 948138811 668028964 962507029 407972635 233457242 833755557 884715137 911122188 789109312 576174868 687452776 772193206 967715564 433718803 433850799 94993674 690128393 841687201 83174307 484941124 217400395 298578264 136818530 325639033 553491020 834814201 871391756 300603159 141075939 630929365 473178875 221527021 15149366 1202472 108653605 603677172 738453761 113816354 551013275 403945354 23484725 137597551 172924334 143981854 523824632 620385084 738520806 245234865 833150089 485788206 690536502 203697564 557668618 648403556 56991656 129888915 769764832 134533532 477114869 499720225 853319424 720078060 267120029 510188894 327099445 876437021 837708063 559719105 345833312 633527547 938906588 931172977 704556651 157222380 693876790 87242743 47941420 168209718 307892002 237780063 404220670 813645023 182608288 139655939 540994481 654678439 909069476 836912871 717903524 843362087 371019226 230483871 688396172 749737190 166985740 899871341 125344334 854773872 260093823 228076666 855349367 245876248 677861414 962661176 722869614 575888334 955887653 847057400 699043916 404408346 653694004 264411912 271068226 129354922 148832514 190869818 237639778 540227396 932110197 711856878 164401267 950468001 725221419 161551620 900154189 525306304 609462211 713805950 835729520 645997580 327336780 455720032 255703742 395959736 956538708 908630750 960478646 319407113 878581783 332266734 911179244 830187347 591167621 27310995 923213325 448382789 376332313 210772070 624703463 586466546 706907501 235827978 928343005 114093834 198872829 587197472 3621929 138034964 335323432 324857836 781673690 428468103 906545949 570949585 477516377 221580492 801611860 287024662 452652481 17874225 720161149 507112293 48245725 798346419 631746395 333517112 903458120 738803962 274981072 992629196 384128968 67784560 286177662 560471153 763075387 246285333 660579446 121751407 389377893 107119814 173707043 139223742 624246430 875251347 54316775 293787628 478225303 727854252 568006824 229789260 911005235 543788639 20518582 519439647 45482898 107822329 771117940 143314333 331603395 729936828 285089096 36412900 693832084 513954679 737072137 498378270 24586037 139868776 344230847 504530972 722880718 791952483 140526660 925339878 681188695 148538485 843117775 506533775 672547696 179947212 891209015 272863135 739932935 296819871 566613748 865409733 610119622 586165800 860440217 260867152 652317104 953404560 865937880 234373310 38962979 448410010 150685806 290575636 168827622 483513707 44064777 410327948 163858158 682631245 531814880 344161637 349873752 533395410 19294690 177493117 828498610 335187174 411679653 652107469 345929097 827500956 705648982 362383917 305967151 556828014 810995710 73107124 227975449 332576346 415794962 290163225 881694165 174670834 392522886 461721344 576175543 420553092 341148374 418727358 947374424 767661391 912728885 218652090 832063454 568208122 41263784 288999289 634776182 957136698 69646314 766782411 115841767 509020737 80244607 483780211 560281403 579449657 505541492 740458043 133510469 414562933 966274334 179266240 643057455 170757550 306018857 997191453 424050583 425535683 990525478 641666753 454410413 526712809 861452169 417229902 497473667 143918919 364534730 897479629 829940024 199962778 304252439 728838878 665880573 765969626 308832368 972347695 843159181 404437962 441586161 452467815 64344461 936262579 172806596 283509285 896034301 37618207 914573442 967526066 318520202 913732796 939793634 733957315 215624763 123686550 191032270 379013134 622944711 750979068 21067210 737029832 582214871 369286025 646782273 111856905 71175623 633726441 652082250 834733179 458563513 692343286 924154085 974859631 343470430 337981976 501135834 317059954 301516199 892637913 437804072 752615828 764150929 157466246 185248124 197393819 948561904 374091755 751161536 102702159 392195637 937717649 87871559 913435305 733020236 534371024 786343517 945246512 87552514 806950117 651472189 931608287 571985462 561408720 938025893 297730512 98118963 723520542 76816022 241751488 421216969 334617337 757158808 834814625 362442875 126708838 398230938 98944 827154599 784584699 608305563 557861471 981128146 539638859 221562097 726509486 537108387 843513781 143943319 763055922 4927653 410881423 629980787 8189441 940730891 965352957 358743587 540656808 862772289 947489436 893816154 431969303 493825107 327865078 370702531 132663753 810980672 89401 442553532 835001174 255712212 284373691 904761543 360406965 134586772 256335184 975839112 546186002 318504691 607059759 872427765 409192676 862600758 843027574 370630971 455505464 945563276 261501565 529662266 301004267 311962724 319232107 792121893 879998849 669868267 953989764 631161213 422285155 494694304 317410334 818533686 932654808 872717891 851504887 421984437 601573756 998463749 503072471 619411259 919637219 398610495 641122746 804876192 634374245 25199822 831530732 873896662 322088260 529916415 336983272 88022430 390553845 97755787 322949014 773082267 744346972 204083375 121587682 676412317 634679065 288740166 306401479 101556618 490840823 16355035 817055279 469337565 9658127 22337143 433110068 971602993 857577581 944023208 789162954 440517291 738749340 999073460 940991169 257578378 771908328 513294624 43015390 614359905 591615183 209978155 946196300 304096487 25168917 839474391 596863865 742878539 725088761 649726589 933015872 572130380 932331229 402926624 367618148 312178007 700245330 112097034 307214004 729212250 668832372 444249604 343149370 909521995 48170856 83721255 427514152 971679246 715849419 632380943 355727026 992264389 731922737 992314282 679925459 44639488 897582488 761594329 87611062 872966067 798156627 198239444 660435803 506556695 294078766 225452930 988322069 432967170 25048991 295001233 326876639 671864333 292399512 465847002 40909708 6941227 400378944 779084297 240015921 126139964 899067773 654998485 897078582 27286359 595838510 6259746 795609219 999095947 231165266 329292235 481727019 774585505 955627713 928582551 49090081 95290868 760400456 155970219 177005559 960388448 609868747 517659893 873905958 342152346 523284103 288030893 229129977 932276527 47553345 853701968 30053841 1976779 664106632 987863731 366496570 690141374 201945321 685323215 255228890 682508841 197517283 477886816 754648829 409311183 14645291 495172184 347907651 562332718 231997161 618641075 918127353 542298450 694597513 72666049 887396929 841453448 292834262 572868310 306609347 825915423 142812644 26287680 37913786 722198647 390377274 274720422 241556819 921348779 177472465 555585048 31689961 915707631 43968699 111099242 605391181 145319415 514916477 104655905 540354190 781599334 736674479 715018168 629699694 93275470 332415401 544816877 112123641 101163975 507073019 605366220 403170351 412691330 650018111 856889301 647308224 46579080 529666427 946034526 903943601 956136905 683637378 483526033 900512008 955721032 905800594 20313269 217096067 429983455 970361135 89402784 727938050 60339853 635920280 76145007 513459689 888289565 85726928 100959258 2941593 154933986 848317324 828535546 336016699 871920413 827841678 832747716 941281501 303989883 800806175 128405969 137073479 65039834 536940123 184314168 904393353 878850941 158557507 240867613 710636198 979105493 989848776 842983388 447510598 118625114 268257860 412175453 115045442 97580729 172685640 498694934 607949496 139606911 810702873 977688781 633712574 237600256 210773057 990345055 144923318 629457187 800598316 434125320 203437923 85779977 144149424 967014583 665756302 848476786 236972159 278892847 433167871 216313832 303112067 603754956 93278450 754842528 856519066 585040355 192201221 914154734 550397794 533942761 41454150 784373685 923605375 294066205 521646685 84507969 599849551 246876909 671230770 793014670 914642629 157908029 207395561 387920825 574620530 991132933 225646634 677669426 523598848 582694455 969624119 861815266 986320371 873430835 97018688 179674969 953453520 395265561 924069954 910624029 823752059 623890818 517104014 417532774 531110283 434765174 510545465 108964961 607787629 686328549 399991077 137475708 113516923 802509757 175202356 525218619 336051931 130143026 230400413 903399555 253482228 163653319 613720197 528059561 110486335 216204698 864027618 540664985 158031789 630581668 328694722 716161836 901712579 548794450 576239901 537427393 923107789 104524210 482914192 961122265 371962218 570781028 818493711 35320123 781538381 646311866 114951186 3865647 148660733 510185054 625450446 422923478 73725672 722287062 129403296 972863282 803185633 923356343 254779286 815309734 374291374 963904748 99338170 998334114 79924660 428895893 376749501 53965192 881702701 548576830 578406234 888390592 124172514 758476072 778472555 376512725 278626891 930452518 327956199 90035209 727205426 791255941 127861659 752406277 670812839 253866678 385374612 793395370 6179170 483265508 851438413 236924192 158675916 631843009 523425001 418519952 475503175 559022796 116902399 614462296 94071954 934202098 855561315 210170514 522045254 603937676 197532490 840451023 149019320 87125048 783106538 352154492 542904790 208127551 134579831 157430568 898692075 727392760 158320984 165909218 501954862 407212873 767576249 417593467 559963587 862627181 691027902 22546297 849662586 190688868 806916963 410634906 475099707 661488892 989794146 424196245 276899441 288446640 719810637 130670078 113266941 263196034 360804624 726096935 556993053 546653963 706961609 810221975 527120241 883667502 737114225 204011178 569186147 484081289 970390344 644226905 719243167 330025642 307330404 862488465 217606332 442624257 125098247 24219479 616043580 881332119 180101111 171477452 861125811 178009383 9557699 668950810 702924656 963536676 978334679 423449399 163291658 250893947 475265894 362980428 468582087 886417317 320908743 941761187 986664106 75112757 37937379 868716955 866001185 210025981 150473047 428282357 661514220 350088961 670441762 183733424 988111752 931295462 512451261 327756870 222534179 81190428 210445028 132987402 664585136 38306727 113883037 118433123 591254481 868979487 395358183 721702683 406225474 896584530 920440960 515206027 222007526 261228450 963020252 666327056 117618767 353227976 380454668 674001724 682260692 57349795 180885664 297644392 529493197 940359761 445024242 258302080 518216275 676766292 497081431 277167946 965735211 238365129 861361389 484650419 689254315 319285365 577013540 697036505 225926703 408182894 131380622 409603205 894046790 915790514 577671052 503992665 206200211 147895005 264214660 243025507 608271015 605541837 879161704 90133339 307525964 553519468 360604447 228361116 161225922 327771951 622734979 665720067 865155661 956049889 406428147 801970516 535961983 165357053 900826627 853974023 364544311 409694609 644024405 366144758 920069195 330840501 474983392 852268512 492573349 695323949 749748587 126966656 79439344 456964984 816034831 684725452 707934609 545005089 45414032 472028440 949366998 477280878 94454185 727032568 754198717 624888306 259491221 725290648 802623288 829617145 142016894 343514250 568076806 23110024 737758066 589862593 869511882 320174339 522579727 512896423 713861703 40349831 147084813 473124197 111562069 743801527 207002223 146596943 721163242 396331976 812162050 937489311 698020093 285107905 465268626 814853772 181999677 752307331 649109350 61838019 994826359 684291667 108579649 44267064 388312996 206997986 27115898 462827126 679248134 846020968 891182208 977729706 137720005 583150838 723931189 430620890 157711133 508932792 740959750 663094375 726376629 844780413 657544154 351828818 398704067 47969719 997981969 434964343 157657036 533107389 214496323 290741442 40623128 779993527 142259246 92007354 891619685 138685003 877466472 694342691 946523575 652034254 688326363 992656217 735788321 790626295 850259126 460102427 96913419 88445613 766734326 247651178 96713080 196589071 448561853 103080920 990731432 679995736 475853415 356372355 749887197 782217030 406337896 345786765 680810054 724568230 194137784 503227793 872569317 613052180 835544202 323989177 156354760 889748001 585393539 890609030 533939701 650623127 87723879 132102850 934827979 376169120 439328036 914912839 973707085 768450124 888775041 750281076 256089276 541077822 500506939 434004681 142261805 618894612 863966261 179999534 466492795 689840247 137164064 206112895 737583792 621174125 166934004 784610322 431371605 156262515 391551811 653778352 836994513 79173850 650938110 397840433 557842018 687194570 853782613 472116620 423038169 57325853 177354769 186834769 10376219 692497029 966771699 837463142 19095104 400517354 715340273 136562374 922269249 877404974 183073298 677828101 962041289 840913069 231433152 289759544 449758028 849365574 775620098 213574416 420011212 140081123 403075714 298493168 479793374 773795644 239133997 878212476 251580796 341202395 983320185 83677900 406171990 220886552 407901788 446621578 888916787 907870858 268502894 60563237 470277777 364028607 500740832 314873200 8317297 860841957 138635646 921499291 382077436 308028014 513876568 336791784 917709312 853041583 173137806 787657115 776882725 850311015 525456714 745877728 50647950 493234665 892307426 377597308 856383536 411300690 899221813 641096327 932457029 602478737 181072378 652174731 731703961 787121860 864551136 918351130 552540802 137053004 628365123 217863755 596764450 323604822 370299647 437364445 706796990 674333373 511791094 446212458 980797525 113966643 952901691 188073149 566643060 667796938 259173355 837828800 210396308 625525025 572915266 297296297 296252898 978616469 71501027 116690537 788564354 252724341 978171287 267928054 215470553 893254128 312852931 159237510 352949204 697757102 765147894 667622871 45164498 613267282 146813193 373528819 635908249 288138474 652711209 479826317 224834115 439863780 439187705 696958916 674288195 615936494 186598216 452063416 967535818 764174650 916926560 324113043 276919974 535036976 573709912 778999991 786433631 342005661 173960444 945303508 218601874 924682483 299329730 472788774 37668948 140083049 738807774 353553271 849972411 554371969 656420585 257335105 955285197 796956738 988032391 514030404 875042887 697774882 775040330 145380334 756488235 336600807 361749305 269455623 16721631 739862051 242176098 376327342 568499579 155243357 894344551 417658409 5110660 23172445 414084103 74090285 186963022 951225891 730485094 958829592 878359220 602620204 932116822 818295938 484886555 743381163 184262174 50039246 387128817 439793662 676125242 245333731 271285193 64070298 807328471 131504653 582627463 43217005 161830505 458009601 132274690 593943521 188707504 6950499 819917398 342724849 863921340 153776098 505665194 926341102 992393766 124344738 288302919 866611765 738235123 14662942 268477037 608362612 926394960 705315655 646315926 913084589 440081718 849671987 491595214 341402235 72791294 312327804 310477920 139139520 611760843 621708172 351527059 647894108 259075822 882408834 183009401 371191163 957347639 707437783 780265478 270737923 483261744 842288713 338532086 622023806 747649199 866421793 676694332 156010665 843824165 261999019 635011949 168853739 627551422 84098621 61977780 845163730 428948879 750943324 895945357 521981722 522645557 872814533 984154769 608160132 234454930 958628284 119566484 627129818 825012377 649166566 530595575 506834160 268614487 165606369 461094782 951599424 946023478 359959691 88932240 957684284 547084681 364789768 735747345 940869006 700315585 825645683 145949654 901549554 626228460 284457687 721599087 544546627 652552279 450623255 904228474 859953419 299936679 103238609 634375065 283059436 741397002 892882594 509786313 182923998 871198718 90338336 122582951 554080387 118630602 745431312 892468225 186281665 28447975 701803052 505139355 312684803 504772188 558149665 916883227 634684594 800739893 629604393 423594050 69426159 293912716 853947180 264658369 471707062 741100801 641060720 594078871 952093504 172909278 963873564 769433612 995875369 630106523 457598054 12316551 276170827 945184539 53133494 139302524 552310488 291754846 545730801 520147374 385957204 990678729 660146485 456313783 545120327 223517389 458435956 750709906 364614388 135822820 588519968 328861256 820024388 540667609 636370030 600598587 205982391 899870315 374262197 574298560 29018551 368043204 497801116 332707729 384970549 595248735 311379257 93235767 329225880 844555486 904892869 238045245 733319861 703166386 391385181 431230550 282597602 572636008 5092763 253760376 183000806 167582235 680180288 298936079 146250533 922112297 635339131 275012274 339481166 725280294 822001447 745906998 889986561 71652188 613011869 922968401 937525698 479036251 330772338 595289147 398447715 212564908 887860552 391784384 951034018 764041761 883026922 52463037 860463526 148626178 408750122 366740235 309161590 978204270 793914069 262465399 96167474 516948620 437239402 543170207 269379115 494911789 707006417 134003735 487992301 516549259 336450379 957958279 435448003 752181238 388379279 175698901 812972843 254974132 364385470 123966217 985193480 189565908 570378275 4859224 544726191 713594254 838406029 919498641 992470742 913161950 523710471 407836916 784115015 493843303 635465312 484346187 549041276 260700163 153044614 721439814 354975284 873452635 920585929 508935858 313537187 40985839 514833671 360405866 853232471 315399093 220451485 943006504 399250495 33551924 442289569 516611717 28355624 197329250 926300499 891892244 117201921 534545754 565502215 74513944 337624409 194546052 388314275 863370101 339285702 698513398 734081478 436216188 241209692 198892631 200848102 801470647 392239900 393547328 32560426 302522930 252517011 493820488 428154356 572031785 882483831 779939112 912674582 68567900 722620722 585158784 518088442 346086813 846705651 15166325 919310629 660907124 33540564 933203565 529427842 925360342 255609834 522388678 830102761 866269857 340015491 478464242 714686987 36786617 737824541 834496233 631843719 82236248 493490990 751524608 711695032 322937871 875313972 524721444 424459859 872130164 963899689 605449017 214245441 930720288 941119692 769396250 249046800 918707936 713900148 294275216 2580711 52522379 331445209 882892800 205050103 971499956 134856889 631068046 422142653 71995019 23994332 238789461 975135600 190689665 827797836 52270488 571156884 953254464 121663147 113627231 315472971 663133601 603881192 997479394 108538909 759590492 318055689 886841727 278977515 156841995 803362089 159372351 377874630 852609965 839557570 475405319 309238557 905914339 360717804 474125226 560874359 632121765 505326372 826559811 810102233 980426849 935431206 598591810 988033330 934800837 592856265 235359659 857820598 564801922 413335583 890105940 302813200 90051609 684408421 672022293 354126834 2933488 586164454 621986944 354356302 60863704 829002397 997224965 999647810 496378490 898270145 602650195 976018722 219087603 304222399 925585257 493133407 507204720 46431642 127647492 381786616 587082341 915783507 595013180 519488309 177527544 373514840 991109202 653630580 214986199 113675670 449116164 483228244 989748260 355123840 123986978 120382368 167024079 473628122 64944502 213867402 448555405 96176007 107279096 298867123 204864619 831378997 812197885 749128836 844995174 326021157 381097709 896653748 353728131 457619751 458850354 178785122 357360527 189874979 392611749 203393507 561259401 992959556 546603286 498900306 13936885 247767409 711858805 980676115 218633921 262522866 303318994 820746127 367284256 679919982 540387996 424951887 229086913 659134952 611354334 919880883 754527750 585632013 521041737 705148468 888321957 398744990 896590114 866584321 960133357 366882858 379202934 668529965 638952435 700513588 695105650 709769101 129558877 303100759 106711029 755122589 858086731 478992075 622329096 615885385 205925125 106411252 637066612 768894429 25292729 2429841 551271356 76884977 244813447 117167996 379330055 373447328 744669659 228760796 989664120 470726511 146148277 173351207 34238989 660050884 714133989 73567709 859325818 558400133 47328781 298956668 933532759 44944669 831606233 148216500 296032187 931697356 196784828 235742374 328840714 160602583 642938320 160238799 935639800 660493778 769001718 592313745 467566072 577040777 957479254 104483025 605823907 178826319 823179203 194650620 14449443 783338053 350400822 57018028 421681383 269497555 477148953 75371551 434260681 694967080 399475215 862454786 373058359 190544998 863929741 679671408 276378272 917594624 114455642 743387742 690852047 168474588 273502634 834999644 834123785 136236550 519118497 779663042 788034935 486862293 538792519 327638496 434892160 220365074 643023570 164576597 10585464 924145345 614099833 658360145 243535446 85389462 944069278 766313782 290407202 74485932 307187298 602740753 752165907 838162890 793695656 935076482 793595464 877142401 101751247 987640392 409118452 817488014 693700212 926728401 801349859 85897407 813558206 181476571 839615800 659100133 20857284 140704913 542541412 63372808 132011434 504258986 448593270 999551184 912636779 816342408 470247494 138311911 7574965 676340135 150410062 206541503 648556894 91482983 886594693 671136644 131336868 9944937 833259794 996073480 953479789 542179716 850826429 579876363 883411036 819560374 899398826 708917446 230440911 860624460 858268987 448671506 890435357 438842246 565856079 160937668 219938235 6325098 60353873 978565985 789564906 896557399 779844011 115864186 240002879 530633580 677107091 333044924 823544953 864441292 221196373 432405770 738498669 995579944 578081776 677430573 815669848 415636303 946807720 185126673 488934968 524678361 973898004 607919744 699503308 838865094 78540593 237349738 122176260 444992249 574673363 651405946 206592691 769182834 183399986 943562799 977577264 698017134 343584575 143919236 241419512 788460556 477974308 814181652 806348551 919632488 288708729 785381980 489305342 493458233 956246398 17042303 592264933 175369334 888842861 491245437 390072588 188499152 254267257 394143634 416140758 961712304 870115480 649419353 764826458 175656575 745857841 851934735 643696419 917088344 813304286 48446710 573662735 609493790 428859611 443150202 354635111 648690606 692347272 134151082 901117579 670936164 709090847 643658848 257647596 722818284 800345020 489484384 399978994 701566807 661751715 332813018 566422038 437337712 416809911 112305643 98058674 308141115 805565031 623443629 962528867 786260399 990499514 701459974 621045891 747086246 67472665 459272136 881664154 853104927 179294008 519761528 838976384 551484566 515837535 577073281 204663846 697847553 202173119 229594837 167060972 106028198 127980532 635385410 779852053 96032158 240116283 477994589 356477479 655526762 284418456 905218406 315263259 791691250 154960449 748159391 988853166 548773900 155326085 246098364 807460907 664584318 784098908 724339691 621799096 589925049 289588891 945099156 958240562 410322319 38572400 468696121 32912562 377015307 449790470 401126993 570824223 440646351 913049479 710597387 557677989 816943242 89800803 342391165 85308532 477176439 492152038 998503278 47468226 431720345 865588429 987345161 896908829 880866367 49588380 818161157 123231719 315804774 652727825 765080364 577190803 266754519 880308815 575455354 514836176 581007618 345243987 891777635 346147891 449700779 558286585 722314997 973871267 510686209 516123776 297806064 184786896 699438941 849331206 807918 560246669 220219085 413716155 744012921 705603453 191789207 127316140 479107776 444871183 964393720 683840896 712431160 317690062 666610798 691560325 979478860 285371621 729115346 259812372 153361778 614354254 481794072 201854130 986451052 693648121 395950576 107930888 892455640 505772092 199512502 272676413 84788679 29313069 402489953 617964081 117207441 109686807 386833 63263976 741336687 218697440 590384779 583545006 864292720 31324335 285820041 286665575 22114893 303557807 28831370 496534259 898466496 161002645 851720391 869099543 630750287 518578064 116679002 897067463 547428400 60938986 588460882 238578788 684198371 602176513 430712712 224055405 864993461 684049065 252790251 22935746 935982646 773768200 728379899 713910731 428830500 166142310 694482083 80973590 472014884 694517350 563076518 16713962 157960299 977851433 761383485 28742757 480461507 485153392 463672742 305197506 740223553 788350579 298127438 831476435 939423810 283067224 127766522 367022545 23019931 981371451 713582625 159019365 283090823 150466638 283045047 492969188 23693539 522310749 97705178 320004669 226269490 197215562 852381080 945012698 184348563 532639280 333947279 729465831 624299141 763364460 984720063 21327886 531697521 97560441 545193931 85370456 197419706 91234123 737750839 680802671 989946198 891370596 899374308 730324816 655516437 571112261 200261856 115145142 714280862 340746931 333643296 476973939 307292978 416761724 661302066 997592768 966566327 144957530 968264934 474760504 77859981 930506127 393551602 956054723 247331318 362409387 392558436 672328932 51585591 105593156 701846044 245790998 105862503 277477907 372799567 363221167 898277903 936657621 174405487 350181524 57467200 930268763 547762473 661546625 696837666 197525839 591134996 464475376 438349184 258239702 885058026 345324731 136419590 191844471 994719059 530204763 507880864 307828487 855732987 802846831 599207402 146452608 767351522 684506085 521231916 775013985 98292950 959604877 507302291 754095148 672629042 875225831 59067203 460922865 256213831 410086338 460512952 285572080 205443643 535148001 712023773 825491037 26849231 308253297 705367140 823242411 63316522 851076205 751292407 860356172 850299726 313456270 128427610 345311179 742942974 212967302 297988870 911511563 762282991 283632670 413553207 101558744 481013278 775393857 713725113 247645362 810822654 392205414 380812597 331140299 652915443 60974370 411608953 429597026 304445277 659988126 71345904 39146301 93758424 106280587 693348265 84396790 500701790 942860006 99648644 872814582 884609724 39087375 539337770 79799333 374977192 982105981 425625620 73222008 509420352 793062949 107278548 105793512 860515189 970374269 850484455 164467529 89046889 338168551 333156099 601026285 165952499 432310578 737954894 154027101 965201736 911444785 828165399 928165447 12578958 246172834 220378736 615448937 784819316 643631185 157458103 997428320 482706820 647504315 394276401 975758712 619487687 376422170 380808175 851613008 592697005 594406553 624294762 589670347 926530542 59415161 973893941 386927198 863735807 747297055 798050661 673709262 672283121 531760711 486438442 297040876 409474262 815750602 621982234 333279738 556147303 789558108 616604009 131620321 717815646 643823135 167219666 37784945 642485448 303396364 68364079 904947476 441098534 422310797 637247991 415228977 293184238 56336310 292543409 982259959 162353301 938736320 741100508 187502943 412492410 298934380 99523370 329346563 205424705 471201724 955759476 32361544 632332039 342572961 672643253 727193190 539492877 751086312 89233442 332148859 943850718 633620596 991714605 313511569 733986820 393423976 714629677 923021671 756197612 963892842 187269239 577782206 133047087 16045142 196320835 982460750 811452844 950373690 661910560 700681438 334551033 159212211 99609423 388697985 915402421 817482723 150120747 456454043 899327618 11243681 637759733 706646256 312808223 506401501 942582478 582057829 388483521 422092318 518834905 235047155 26967652 673453833 514085654 797878074 514727661 549904862 129009435 495241788 350690549 837635376 995035832 987983443 279044377 585609927 214631950 796110929 211668914 693862491 659921738 264433411 923103281 563357119 276837787 774720251 395457187 242665911 194388219 555006688 653239490 90903106 192299283 813055240 953795125 653006680 718667716 36862380 79145202 532970432 465091286 997225893 342654658 317743933 601878431 434391851 444580848 538588467 602892742 495413424 17130609 183895376 409895330 260889008 872203017 233242965 176711200 745007519 951286051 882779880 946055991 910462912 361173342 43550496 249974267 122316675 881057923 782612657 786181395 306884311 291605983 253689037 760857853 322836835 114107884 288197917 176578778 610186389 642252798 764264091 726363796 551338144 265846989 744864904 843806202 573830191 173879582 705006871 934316419 351406569 194407574 352636208 335727027 38729125 579531887 690205386 828568654 798000500 532121748 498617566 84648882 805147331 795997305 495453472 316671315 3298732 17835526 306902240 471874135 384613290 756634236 862473014 525952150 659606861 406478216 213988621 460913844 834741067 749380024 666833876 132673807 656369577 817286012 330125022 824981648 581228884 416365648 394353083 952831331 766271297 750587449 121268405 166694602 989546738 152474220 795295130 329217162 447831566 726792729 41779416 366221659 269468479 600960509 926519420 598245815 718638852 865907536 864966030 316264589 738138036 574736063 262464218 444695573 230410700 883394571 596090973 141973550 592245299 360983471 108762762 476299908 335412800 390796477 769858040 854493738 120196279 751870120 778545321 276161909 738532028 202796466 728153206 799164410 693246661 385748744 334594779 219772559 138836990 506633197 904600840 45113207 115326091 161271882 790198365 284588701 189669703 32524521 438427432 998630429 814897718 287951202 941178250 261818142 145612323 618934395 398322591 717331081 763143886 153485485 891946123 749302580 8653839 153639358 926726633 245344237 94895139 415131512 255304599 435127255 598998676 76870786 838671177 755380757 179799162 12817066 510105796 228287970 554666368 359713916 961729975 964108791 483977578 464641981 525596717 938907947 352871009 274185488 583656736 893632102 689468688 128305851 407978890 74696160 116588365 935515262 369794368 642835089 974275307 83181769 893812651 9564577 109899556 165195369 52652733 868840371 292039832 208628219 202053243 306847015 813404751 424374843 33309284 810602783 996384288 250890397 97104067 271597807 554792914 611077272 955910160 240840276 93750009 10544348 355002215 524524137 657319471 824201302 305894203 189956638 71869785 14147975 913517774 381713704 233703957 551267569 273689797 745376301 244761446 404209094 23786638 224656429 518162253 956322119 224997659 371527212 234188612 46976999 173085251 132761698 268524173 731515771 426242149 35923154 744425184 955356162 574395164 374441047 999142596 458951532 864204672 820660193 183070834 483151095 914089473 9967880 227024592 598440362 237500254 803719566 45148965 956081118 429677888 318953398 258145281 307775308 378346738 21301480 316270970 460750460 949264881 225328717 512567307 744119740 912462560 208442183 492131188 798416163 430744297 98700899 700900342 661253843 270099465 909506198 430521058 22532715 592241877 966207160 326850489 370115039 250968577 704901158 537601403 896934122 824425329 567696305 448101300 782227360 727175 180559171 604206238 893160802 241524125 635448110 136296226 55484523 118398076 184724052 34503352 682468732 884478793 967839187 163323076 936767722 579371579 543854357 168459157 130329153 56359175 185226880 75448353 663080455 145725252 814142813 295361328 760389979 568226896 705904080 337943641 421836097 363822747 857541553 103977245 129355875 661143843 320189412 203866458 492150222 515179667 976521388 919169499 346781074 82269027 11330846 303419040 101063122 952887296 703410293 765251249 70225363 496066627 551655915 530317880 816361831 179887227 145573973 325108243 850935129 626639835 512396529 272480797 905731981 426042772 247942835 220422110 558087343 838700416 12921518 880265647 458791864 625922952 595953218 842125033 280449314 106365064 349642891 63204938 842009939 901256732 282605771 849203763 297957921 352062962 160456000 238959262 281411286 234472050 11995012 367480062 97101282 959712853 276150003 575454806 881740900 682689534 627025339 245523141 152220128 61355515 917376417 17889031 394490056 782886290 371113593 852288931 183788036 400681592 818239816 226091387 234819376 785533277 566810126 404260072 528617664 545122987 660683863 970522846 156149924 434865638 74527646 988028028 545522811 571962722 250079072 321754491 866234838 126975567 332992306 249298720 295319579 568587833 474719469 132896881 186863336 436320661 176610223 191540208 351168192 944780212 626954044 944227139 567849003 577908060 501167050 927514775 860472353 96463666 740878357 604758565 846190983 748242291 705610308 565659440 853051522 195176229 167199027 36005738 775101912 50952997 241788789 12924049 55949131 183414485 90958245 460005623 657881797 523144061 307371500 479219340 855203597 184744709 407329831 627471084 769241201 630603310 966492294 636897089 725163035 814126161 365655529 33070928 626488031 214711978 241482279 474078022 926332063 597310016 589185540 619660819 31786809 388730808 446718771 252580944 342754973 506190835 425602411 488684147 35417976 12797229 646249042 158299538 491970260 468676019 383720154 389451104 46071674 335668602 586568382 475653321 3060328 727655172 221397191 426608878 766656109 685075410 118843816 176861288 894787507 702319669 944325161 136141393 851054781 62334389 901759232 925174238 162556444 562811106 292268401 750795585 429314501 661812326 676151846 956023901 731422374 428597756 871829954 215698744 28686597 240031695 93720119 601549843 266933472 834052311 568887664 352132969 905639472 502091953 738305435 467323309 137054503 928297918 344107720 464650007 49718416 386281102 843783683 227641889 594282660 494644228 763724092 49324335 582167845 34918560 805712570 667485537 386318432 234425757 238912351 390732396 740160092 813163146 90670359 915193240 413402036 794608804 372406658 633583216 474824511 627945628 438151555 277057358 522369474 790610539 31955217 630023386 473009129 912906052 828515471 553306715 682645844 334355657 897767068 904721511 797736359 50631398 212052338 13037735 839610452 365997162 470355396 762171073 82072829 655880525 318044871 7874077 752496630 718099628 302356499 115346147 846141821 994124081 58537437 882165642 534634698 930077208 964274189 634453426 624243314 162055698 305128119 651901966 27384582 853231916 996574189 373279995 528162198 377252099 473450439 837932294 320485252 3311801 576956648 338267076 749680620 786317987 324266623 925280916 143196001 7290143 885398996 826347857 323545889 300026042 774343315 535324257 57268334 312685339 531681921 286205758 919550583 151801195 403114119 520156397 309503380 193928727 641635591 721265998 476511692 698639223 990087444 641705983 191264103 216135221 428563837 88895339 792641806 381000966 988066419 602747560 541463986 426799997 14020529 300062541 421432430 699805909 872408206 543581763 611251360 354247803 498251845 129145657 449484709 269042572 759405868 945791027 629505900 941743044 958509682 500308743 379115560 342449255 122836515 813677516 940831634 512484138 552734423 726333032 767295425 377399623 401334671 541555359 410865385 978579059 603846201 291425168 997474552 86900300 958955829 322459381 900584105 208995923 52070900 500782855 975793635 445931582 955329515 874637831 391870030 590363453 321632242 103821793 733712554 462866382 193665544 82311668 806429375 712356875 500451579 419825150 308424465 525027023 407313861 23530933 530480384 826979864 542589621 725137629 556178514 648997563 332335618 318629530 500141348 439635191 351867994 180755370 375634221 766836772 307383913 46749476 332221309 390101176 59824470 32331932 720421807 427758857 687918281 16943129 557701880 707181755 829292394 286320227 59180757 833183136 277116925 72034897 762560635 388122212 947258001 17033399 275223900 944526071 887702465 662668177 682295086 38304247 478816211 565797833 478275541 649975604 414516817 390180114 625814565 372070047 724036149 643911982 286446683 530364093 821352621 340273088 604780489 249014386 60468134 403863380 330728569 677237340 265243301 166950041 151419404 804923758 792638858 630553392 574814646 713333855 90535546 186054853 74569756 729212225 2469486 772006874 225787790 983438500 105096534 627872223 968837547 636935219 588104668 496474403 328607065 849132414 342145089 802057987 974840341 188225089 592842525 359527692 607620895 896744559 267400235 674217619 321720391 145126169 806316988 655238781 730345667 359554783 675926209 70774989 840168239 780417125 776770613 337841830 295135504 484699875 531622708 755115652 509046721 501928827 544041599 91482400 313773291 447114256 208816092 224559493 230971402 725115131 334429953 258450227 5288689 333343608 287176775 972937044 421354983 845440928 911155087 753370035 235875891 82252262 775670136 889488017 849532615 652013638 902905810 270976699 406994515 480828065 406728889 563985343 701072591 693516089 962710763 243995630 166812210 329861566 226928942 150142585 769702807 248197504 608408684 3145759 846713010 873896653 930286891 236379568 452616912 690755145 527547449 241439604 238635803 309797522 22096166 244202541 700189077 646466385 424665471 925228498 525903616 48194677 559101342 223703590 702218494 788645109 521026099 177006307 704168554 67041805 661100764 30747063 667323173 44216459 355768733 849547111 544667257 117861389 840707991 651770485 47139754 631464139 314435916 185230327 249208698 445639196 85593843 928443000 677933600 859209672 966698863 468915083 212274493 869057959 213639218 414796705 332398966 892806685 554131420 30068135 660559717 672457287 908102650 280929033 83216386 838363566 12604880 22261480 957759961 937084874 786687028 597579333 833907538 110982724 698481470 429396633 331674064 949610791 897698674 127364507 390858709 576975175 424839074 723747607 835761613 337429358 120616646 853537821 465558119 533989091 760460462 246196977 630044278 212027867 202061610 679323907 978541722 380583807 579803952 434468 661888537 614374043 657500069 285004291 733265477 482882783 826000115 638948913 207897200 825240576 87836935 98293298 391304069 994378958 538534195 272927725 208796845 369291065 576529696 775081083 259562341 599700249 910855476 225347388 967417968 723774646 730964957 970886910 583279476 420034387 563156438 467936388 785870997 835923453 727483902 471385483 380441743 983389218 185206957 332433166 941237436 563136321 16182264 989298780 998111887 404759913 599992293 722020131 469811954 566809112 191366518 426653654 869947855 714424407 404716483 269680455 271976228 238173264 823630405 353335150 163701327 916538599 443434351 477534376 588270712 956387315 652761294 163653045 91240575 357005943 855120917 88483509 384985580 594098453 293373910 822981963 728010190 343902492 178987597 358803460 67056657 998260687 863585621 817177606 390060973 276700219 985573617 617489260 78225252 47280633 172378851 478762666 745728284 640857443 972967976 188080374 932580530 541510175 604463802 983852226 719151216 923028325 318283352 848006141 635098957 606463323 612932471 281519978 532955377 116714072 115949539 369451041 673788583 239458356 536139786 240598743 220154012 928823070 156692876 348264148 489639238 207801425 501210936 372713843 57096275 65117652 504294062 46046398 584900082 227006493 791424339 898877047 194039743 452785341 369161058 178002539 550129698 351352114 36723441 974046673 302569533 751659477 25041112 876528486 29941647 517595153 27679135 75398701 397655789 730058173 759255392 702615682 261392325 370409020 62840593 597596274 886211901 851331822 660878925 861119966 613255382 854365115 389837125 660615360 415821724 293769663 555219002 27632320 584581998 775632759 297862013 34841141 57525681 564476486 23849592 366577061 279392361 251112776 654735648 895388042 536245242 369617293 325114347 6716245 553956751 782247700 969657067 29427051 709672237 408259897 231802755 798708460 851883509 534049372 450283365 471643723 481471816 854495356 599788653 815178224 66565066 306336312 235052342 808166555 170700563 755117418 963862208 538436962 113608014 423368229 842630539 139505989 382031231 759854229 146634569 661692147 583154011 635929233 436793561 818670856 781118980 702251695 661310724 687788499 375644421 454282771 909787804 825777072 840229311 830006575 871058308 954979073 503127832 908263705 164002459 771309393 893313399 807696111 209036050 773379771 775308894 62035792 697796521 823569224 588667322 58281328 813416303 287340975 897354626 526109362 157454747 514681628 784274488 683070271 652921786 773060794 186400082 420896676 554861634 119102733 178688578 623130232 123399108 964695314 808199882 934394212 583190457 87057429 393262991 690686239 80046890 302628586 297002967 732286859 750485102 682787300 342050171 874994720 143267699 5131963 66707860 544507156 666542108 373316343 805502045 239680330 215237144 497761093 182531337 444526838 6923667 417345062 788126482 608629612 453595810 287914194 936260311 97630981 178975077 244365543 49738003 9062086 389914380 466068894 103670392 731021547 67641392 829348882 335897267 6305461 132756702 115345116 561992765 104341783 93091620 751075681 923368430 667782790 737333885 501246212 735796249 258170608 216115503 635531777 767512638 937826125 765164058 523576630 459170451 180946094 960903597 395607952 876682285 895528975 898683031 576257051 859491657 719294858 283759902 903244632 933302575 313745825 754618202 981878656 307131730 810197846 18789688 469222875 631775777 86726591 253749373 538648673 198760960 503459040 906991840 589426254 383760665 810115601 822635470 574777785 393512922 610250027 247650716 465580752 446126055 728784334 817142549 168692202 647845995 507083035 378740601 372657794 102204328 432908975 400817164 885391892 661801915 412733754 175683814 717640765 841919388 500735019 962726301 649213178 877059673 235205773 728674495 340958916 602051994 736886941 646482940 629451016 260634146 948534737 504202434 144081387 467726660 164913955 819773857 627051564 25344776 894427825 171569215 305360124 847396082 325700930 349714265 425466703 587134278 501982444 714874294 231677948 67709644 739310516 85780144 888379892 135650201 552040470 124186832 610376000 693538460 485500800 498375250 504826931 242348006 995174033 906456240 922988373 553911787 147378347 805972026 761258956 361051155 242615282 111338513 717050483 84660928 552305568 709738407 834474102 889192092 468396624 100713743 371249008 937607733 884700989 394970570 394089934 264307227 295868091 594432541 994739062 959204401 747205198 985088934 813926571 903377462 629539261 92618047 813411129 415193562 369286600 244456299 392116346 746165950 612080800 591330321 958949652 200317790 600816491 415585629 506036480 639706124 881998308 415564538 676924914 694734283 298053813 941151455 789731500 579295899 183310564 409377216 607382217 642011951 196750429 613407093 778720174 843178561 196778863 148295374 50779439 121089762 171590589 122543092 410828642 76214497 971143581 462266845 387895155 725100830 692426491 240999841 187574183 888066237 509112938 820696588 49290447 342132292 19836204 891517143 553527181 570576906 80524779 748874969 146054364 882950952 72523309 349836119 695807078 742851144 982597285 346511130 599423630 810220080 412500863 758359806 336394699 963450322 239235370 749112859 68574930 379298050 108175359 395797989 110129084 841151028 544845588 163270312 178014683 836818818 659774814 330459382 8946556 64201607 361383043 151635931 284012570 89299197 464089293 497544674 975104604 872245143 999312814 157316749 736060514 343551053 664152029 157366623 199965726 577386968 756412841 445448764 840351019 882924278 786825923 672800404 171545894 777991988 147650370 173356941 197019811 147287007 926095393 146757437 481488518 781631770 755935753 73205815 424623962 667822100 202588362 898638896 191263158 873805093 674327795 873383454 38856421 746500076 743074498 545482643 947925954 421463740 716832211 592258690 971209001 561440684 287295098 561273383 77706517 653450904 718678235 590485818 805754517 139420562 851076912 484681213 38802790 268771079 903982985 724816736 576518312 224773340 66529986 382380467 499031944 693194422 614662228 952812396 406275602 822140229 290740306 623779241 411242909 683419234 165019408 486781125 541409636 861817817 762016923 756616856 279697103 790237921 534360737 602247843 131920012 166590243 174953157 797323549 262262717 709584262 939490733 440938139 365311909 60628101 390515964 128430771 534278348 69337565 431563948 386548054 936481577 214240645 310858807 448643995 92394842 536433323 504031887 717141785 681610596 146023509 944862900 989292670 826468668 188282819 475815728 17390523 927465355 117635589 105954578 740314493 35917186 565445134 94546674 402814461 74892213 833630441 546798109 505230985 805241602 27739767 350186824 552772648 686532874 850882845 229127212 366122647 890196385 154021005 837461035 428757551 240324521 794621838 700879899 279427417 33984490 464701639 243925453 664275360 666010601 898965664 523066662 684217949 618029 900272689 67828106 229648574 302008826 171880495 232855907 821384220 710292308 495048343 209965389 700319189 667357681 305854225 734587308 296543529 196331388 208266004 251072113 298114857 720192120 755783343 79585753 317890479 937435719 804743689 549315828 558220572 489274289 937877597 84577934 994327567 217821243 744416359 960867944 264145636 541854525 568177086 925536756 809266062 930781426 84256225 68351551 426057745 809690811 676843537 285926648 675916431 757776044 777662367 807263151 12814342 550510042 186816338 670351065 194246805 178873112 936956412 659544577 880956461 788014866 944945234 307125897 221927332 171374111 955393365 584756964 362331906 72205010 472630132 972972640 194552875 401942420 458289200 893693360 84627685 516157127 366762712 607445207 692134618 784505720 65568024 555368884 545990345 657199369 777588360 511769854 147059170 444540108 711594423 99468604 766687415 664050677 133821423 409797902 73573528 323908341 81061735 485666634 786719781 479055802 207787071 608592612 162224810 118531081 22710647 450643795 50050967 408025801 851751690 958975655 676818793 493338050 148774706 737664268 422552410 9658467 259170317 674940643 526753738 137670035 771749459 685004175 506085779 93547970 846951327 74106739 247042667 378879268 38827120 19178981 451162212 56755286 368325552 64598763 397873716 901210835 849061307 963557148 288683916 320643262 372723456 643058198 602463371 129887908 650291948 554196524 20645340 950704980 362061954 362005275 288138489 585837768 828636589 356942830 94821292 112302708 454297082 168000468 817071794 33743567 522575647 511612949 142060259 516699174 871624616 710634165 947191820 829357016 583435738 38074685 141291029 661041622 454576715 133804399 570204089 560896058 308645114 231351776 55823694 172860497 329835299 910049467 902676965 134264087 856240609 813871921 54012308 996191148 63760688 385904036 429828092 131466329 932336732 325205700 12663123 450046577 56902445 484655571 140743523 222167650 98702739 569178582 312008798 6297684 113291824 280547598 245161242 646754584 274555779 938759467 864783951 139179392 885658374 267986978 201270347 215640154 999235973 966961433 771382004 30282203 304685395 960589533 241620105 360845541 32662520 595326625 696557861 974091420 84175858 359485663 725282222 386317694 230643059 115139343 32251488 918174735 265218184 196913121 482340762 446300322 430232773 367865860 288217999 61906067 214329184 320684129 721229892 381028533 208745438 313161628 345581103 706719019 696796440 828602450 247260202 854407652 335184220 594176990 242049754 389651877 425338193 987645827 376570247 145797924 423449993 206648334 527701339 87506428 975827110 567504458 105929401 601929142 755639070 411451689 863280345 869409212 34537717 887172969 11657534 968756170 199892849 793393452 366350491 56204062 340301463 480561306 314260826 109728567 636818384 962135068 148330761 931345040 160693420 498133638 150622289 632950665 440394123 504029802 345738467 530248008 89451480 814076382 304164842 798753755 6210938 760068251 354723763 299622258 324643449 312238627 767526188 241284168 520874065 626474530 972621694 193110802 163885647 819742162 614737562 24570243 36660669 171372096 880769877 655649523 46691935 556189962 526097156 845914328 447495879 947176698 348383696 873755037 994755149 453607206 364449233 832604904 249534663 69294959 557364018 124331598 653863553 442374151 126910254 706709931 512085037 237877660 139340455 801235727 386604919 869668665 419838637 51084740 614091935 836016123 936843490 830339971 181088450 473881807 11732319 478730604 231062718 169770959 371786505 776654704 85508271 828921034 566604146 27210447 517646483 291471538 920771145 964359511 985366536 527431095 609366438 650077488 587415737 462491054 2173069 321797259 873588911 263929871 780690567 278448257 873603803 39118744 597340693 944922060 374399544 259084198 93673951 362238259 108068602 138486477 228532249 728170625 408597600 459311199 983684397 277698477 913805874 837964137 48528570 124269669 357056758 992608306 300629507 1817173 600363632 442193814 991711597 858509097 656272906 46076939 109000921 953456654 206309544 844681259 516072027 648147675 836514701 954796650 181277961 558902867 948065760 652588981 491581709 732565389 925265378 219251443 612188842 601005698 191981439 631817624 822107377 549273420 163230789 664218815 38713586 352817708 832164440 514177591 305750685 680228918 28979350 628594727 93615026 19237930 837152940 328998696 103139675 338700925 240394861 446218651 625207395 356034918 122237305 359441879 681077202 484493623 980996198 329829291 460041316 632392072 414336957 924465725 336137757 838216284 200465103 672892059 25970003 734619933 59683636 506349217 155908019 679694263 59352012 843478251 589816117 559446625 576907909 781497812 151341160 737986365 5638985 509647948 710708783 676546944 710738687 348375167 870400792 341606480 676132178 719579187 668771382 809645481 119201820 973552500 519407030 947646114 987315901 720351044 727961773 504621407 800514009 219245349 573450987 538902291 466770033 363377175 455458908 820565257 897576434 759284425 225024877 119874556 332853007 966224120 787271434 469634036 182390761 108374435 528715661 615994028 315299309 587351360 879162395 16769486 357789483 709999858 614080920 252430909 260305816 303444092 285723885 14745407 429137096 424893473 467853821 710708353 237270339 762307329 791041879 323324337 901795738 451797766 528670587 231728314 914295080 223818481 371155706 678659474 829028735 188443863 771133969 540391451 736517390 354475640 621953418 892569214 474601577 569045984 802846398 1807341 72920822 503053257 739232149 366423114 215406084 226053437 829885598 660078878 340128542 927696638 284741581 958128581 92273088 928212490 948694472 133944632 874552438 570668080 861904449 161953229 239848675 590370979 994391702 115929895 561556587 444895457 159894849 349011412 315517080 910638458 490779809 438159162 186553204 482336053 43043705 637065337 445508311 721000030 387032326 642621330 339355748 370090049 860686835 294821566 233775702 808328775 603455710 580880347 913902712 509726052 877704778 445797446 153152458 95648895 739093079 785063986 417840943 293154361 141419765 437759766 811922142 381471084 166796712 557469682 965889632 829750147 341201586 581676816 858746317 378567543 754538470 716764426 403021019 373380983 822084898 371811091 198837295 467040600 425748448 950176354 531019195 519128536 658114620 419199874 462370519 155546517 482258027 674078349 912915110 349471264 3151100 209526396 452354437 340988210 590864012 605420459 199850101 205943547 780243458 999375686 306661107 465981430 449593684 713180639 935371685 814773525 589823388 770989208 571158770 435075923 713730531 850808172 203835897 166269935 162400799 208373189 887179114 140464570 639820054 375429759 179332265 792127224 634037196 518118727 944109871 578935830 804306845 420084686 146672686 661138884 184800411 41018379 807854761 440530242 217017527 703114372 446849009 42878769 775688021 967525796 339315392 166098401 150691112 31066121 875791747 3027189 914508974 441511322 464504531 340522236 825085513 772463206 721111784 976677136 282404539 533060971 977453201 295533074 74473577 985788836 784037580 457533774 340762371 478373960 880732911 272648930 358905338 859796633 111311820 542060103 593273857 236590623 897993437 390672331 55463232 76977229 664253069 613654858 778985762 186437530 224873699 585906207 778454048 361044178 492718376 430613876 627401347 836398897 1951965 22106499 489962310 252618125 73182272 481643140 477237000 604470773 809482310 465019709 884158750 223120518 123819 138303934 19694427 958493336 485552413 618119008 581620140 112810540 716847104 79392734 242259710 695206016 485725501 405066353 32853906 721388259 735455486 179267873 216811165 260237430 291431886 808279842 468525039 719243952 123555461 210455124 854856590 736392306 524598697 985763935 215944976 276997656 970073199 440954068 216401524 907670867 179035353 962488800 339590427 443202823 450775802 565854508 949709377 835260399 139698019 539668134 763951577 228590272 296241919 97858574 442363264 584728015 670962373 75278049 530503873 4343187 711401674 924834607 216934072 599104538 483546479 786399341 672002879 539707912 405524287 359985873 704913361 694802368 204823135 252762818 728045745 815373800 457059021 999511679 179008398 341788131 4096886 93147243 517173104 280694978 390705559 101732484 963804187 5418124 381651302 998571862 405850540 718963631 569705061 474124583 346738963 117049950 519016519 206221343 171722044 538738194 351302064 613286798 617808833 63264009 473029402 584977478 884726638 998033271 989352304 952030164 440165279 386127171 50733208 691253625 28133128 267970326 224062787 570536839 191774691 467510940 305595480 596082853 688778163 235941288 832639650 642953408 874424252 515407789 462170833 764076845 771195993 35178876 338708754 370979291 753818578 647629081 382356181 490401891 912166926 50625503 307707113 288912698 469406205 338345761 405274378 639167733 251656003 783507172 400142389 728026671 527927670 375282124 497679206 683209745 454066537 389643298 821534144 807238339 617705399 225583457 967564265 557480708 227125261 660826837 470374913 471761053 430031279 280257898 233891792 266899424 126529085 615261811 320368147 187189762 387114752 735983380 191692711 749469916 532094732 720686182 483895346 826933992 108607244 116008922 450028712 584876006 219530358 602837027 353271575 687735875 100307759 505055457 954682790 664823637 100098673 454128702 144183768 612849922 100572733 290627299 832150197 374920011 585975300 88111247 397023098 182140270 445209564 669553304 92668464 513004403 634703013 299623911 145364797 828703359 602305951 9638974 562775105 651625756 968834916 372232843 613625062 308091156 277164521 322110405 402386608 237546004 442381954 476832151 631003076 706016070 271225651 177433489 686948327 849894885 440340221 728693418 215503098 808526689 554552228 380317709 567360371 638816941 811320688 363851362 43902359 670625579 260900579 695757477 236758995 213193447 387258393 770069132 297951347 831872014 216603871 108481328 53679551 212090635 791547772 109362320 175833286 204362082 232757335 251284505 121035137 646495672 147522374 23825347 204475672 728971567 775748895 817251160 10351657 599921291 250899677 37096267 628855110 644450353 118722287 588637756 24223631 784452594 504519563 423539365 129510185 423064505 118731762 447900861 505776547 692528282 194702882 886389520 845169960 640041377 869074787 239159157 718332376 761191656 58261923 877990138 686505655 663170859 950443826 121460528 941641261 453999956 307050678 773044714 298966593 372252395 259494979 144779599 486452871 220142379 794537416 484911519 349454505 193337278 899602489 357685429 343593516 555745778 159431510 953469184 305680561 85692549 150532296 551114627 34720684 696183883 149073420 159813929 892710187 759414233 123914203 342060106 205003866 106264245 250745221 797914561 87284842 136502091 940280827 17057864 21254857 660068460 537320600 149026947 460916850 468808743 241044026 88639295 836221474 355993056 195085421 577154257 338029620 762099998 460710231 726423606 232913154 175192338 82794032 659958015 496521657 718013118 160315292 516321459 365359510 909383351 515899876 546418769 133340909 455207751 658991278 813695097 83538597 504026148 196172611 445165809 190743593 960526907 44768806 890249681 83461155 750865396 618673582 71621883 802640967 214184918 967091581 872267025 192192236 96736933 443693022 717516491 65051154 563434174 101345614 795436687 310964472 709612986 758221973 687640893 875685507 300528075 694252880 115303461 119957780 452325990 201704199 831340767 248696078 521715824 535481343 82031129 659762701 68629435 806806449 57277956 739857877 576762859 929537821 520815591 108648420 655849392 493627649 149542181 892848413 408457270 588491950 868778386 808175631 270093609 219133280 707594729 351210208 899016873 112238225 843611304 974128436 358806218 846643277 53399009 685910704 552299076 215845753 341077108 141885588 835361284 159839896 43037783 457045318 333531553 390251251 85106907 227789583 226402128 521648599 895205722 289539681 255297357 90638577 580717460 596614106 735678436 935002606 554991602 612351229 898467225 283748040 994265107 875994932 134500688 311060998 755897142 618433133 655609416 9680718 525905977 584084985 985114057 479869618 785986069 15483046 727737438 595250845 479808187 316255881 242955480 514514783 348236695 135773401 834303056 921554379 730013589 118341609 642225545 689185830 991041766 279423423 162405762 225145054 723329989 619817221 988638514 834181896 527111710 489851917 617562289 764591418 903446171 978915817 399095556 572812509 633717541 750774745 796472730 397181856 79927344 490785463 971835314 421576355 624340604 388561743 515757746 188075194 100148660 624891539 624056887 798943027 229771506 880255159 661742793 138368136 487980041 850479803 441805940 927870897 650510282 620021915 977264469 221441735 972432700 475219800 378409836 617562341 212731104 494410236 984048435 262371561 869581957 908197773 268018483 852307133 440011749 72804735 82662743 963235147 820789564 308316389 117031787 658931669 782384577 918533300 86313536 985625752 969312322 912693610 453628442 564102562 453193748 111165971 109430247 187027513 868145929 172578614 318374246 43035598 831786154 680499780 962259913 395940754 451882007 221496180 721538922 710476186 875674716 489704508 198851540 256070223 154528273 975819731 207366994 539711715 798886275 834137580 54157494 256294327 732514667 619193421 105814301 131474713 630272063 444408407 5924061 138564910 597486410 189900991 578970300 147773892 625827941 45274405 818609781 675833549 415524368 739632307 442743898 142883629 534825023 573507962 157989923 561670869 21040967 186439371 844287686 848467417 626970244 916516813 174214979 122039747 187326003 504903720 672434385 550899163 285881658 74125521 767264169 787637252 493395636 904466399 779974402 61092341 406270125 621147374 987201819 589873468 667964551 327754987 167348300 370416215 169335724 231685071 217178171 230451771 233300298 880725957 250891179 519030443 86023993 205054722 925799801 631128543 743121738 541162764 537170190 563297313 170983842 712326495 186969609 641447287 220229753 522898191 991489581 309045442 94939160 466831847 657529084 678277428 237028525 446243918 481089712 501021489 467870379 657247223 494880285 121071252 746552209 402771242 644437252 622375377 959994636 888642852 692470862 338336282 382253463 56066127 997435229 246303597 112362227 797978479 78774757 805743625 492545481 449402391 3590357 716164263 394136694 930638815 948647657 295353488 840066971 412441347 933609159 165185862 606967273 518407604 176755780 238924214 956582632 608674576 159037222 530169861 120745848 254533835 190972177 289193367 876029624 734908114 904477360 143573928 551019940 339872496 356916234 646566615 652399411 69546277 742633898 922449515 292989893 10820586 366125894 465779572 12403427 45805522 961828302 787222179 989730864 743847571 622236300 34401283 83598076 517962629 109331630 735545613 274884393 744828012 488099068 969030206 287009956 684063841 466545727 734423823 184514564 824250612 26500869 911129222 521653446 997139215 841560570 657635335 943545540 507040014 672164912 754627075 746513729 730635121 404488896 522024784 692763855 64811833 323725275 474858504 124683214 336112330 910651222 947439584 794748668 763855965 647723103 648912298 942039083 912298462 550974807 798924108 660335866 861370654 894660686 201960228 140044272 344689953 457833147 32533722 447062020 949419465 849275692 806215970 915808859 383996405 206465943 416470321 643046411 627821786 752590908 335197356 423457993 894832353 123449375 338345250 906942118 241725980 556535429 292301998 483626076 343992756 316287474 939349060 100642593 615744339 560737497 816051468 602636602 875645260 327915356 705745848 680155438 827627521 624382153 442721756 898718636 191016249 193805758 976804214 340524320 200040439 568514592 787853829 332135480 730597574 407713383 396615676 972776934 966443097 430794315 636782692 506063167 285112290 206525722 984471637 430290788 755764431 518244588 87480847 293168884 725903427 125935801 202025596 643265377 992440392 863888425 544474976 553393495 413302535 381023737 28206275 525008787 289460738 988903224 897049284 103266939 255774651 165235546 888283364 851213191 211877842 117339035 395152445 11751478 638678978 367581079 194109439 560139770 254038573 466588116 952520797 253362536 110386334 902747178 164296947 469881479 527836613 783077840 81698052 138040067 905242254 678973365 915447165 903591398 200639136 823302622 224683948 542173284 849826978 921041613 165188111 798243254 176925904 777935785 877277497 228689933 890346492 264383132 328135886 52339059 72035410 240441964 610669322 461577780 711687919 726126011 10495344 86007902 510708912 840991699 885965467 370449602 566098286 747493714 920275034 977498700 11751013 962972236 189332419 136291529 705229473 402349956 164088243 974121310 461606336 314072311 212997961 752404191 869483285 743913753 764638423 144382553 497121975 819579071 760609952 301586829 731981037 771485666 322603006 741081947 871732192 473884495 447270554 43281257 2408996 134338779 231128729 809668314 433149643 36876773 817440831 397443343 439221820 690092553 447431678 94914657 780100615 370730456 346558915 267714575 544623380 187220642 259886739 562451855 616235578 196764115 154985728 447359827 347849152 558856387 448995945 426947276 535354457 120976028 143203522 222685951 193811500 671095579 871561385 13860863 488265413 334873043 25815638 163810763 328308572 946324363 476540810 727420026 675701069 852222679 322731806 246218078 898878692 300939688 704467495 755366138 628477799 354708692 460026308 668685622 857598688 107566356 776200444 649350435 944782557 269538531 808886437 489897592 732130985 939827354 510988577 489041944 248143023 261028137 232230864 36263555 70879880 878032293 359543900 808364378 417393413 493400452 405767478 354051790 591572173 735065676 975981032 851889553 593355476 553375168 123838501 460281421 36458727 780764003 192624066 471684229 462754134 699000820 136612637 262376781 605309575 787984159 359755592 277310159 21784577 891930795 795055030 536855989 830267458 90183785 806727021 718633313 699274060 670352482 411095798 578683737 876732025 453939477 641135641 166580724 615560855 831315720 182766484 266351569 762871614 984779456 164751742 167264189 649841123 617417091 621272080 853379267 154722250 312816479 2933832 731343866 792598115 967648825 911717479 613730492 864882606 410639016 145103800 217222597 968830966 370678011 105121032 101946241 58843126 210672986 644748683 770462740 874265488 769230961 868283682 301069311 320578805 655483836 992646298 451679996 58167704 646809913 514822971 796988946 288142948 985114930 219633507 72915901 650976056 610216366 966537678 116166278 678450961 602729048 425713453 141144016 625713652 746275638 766281443 450987947 190931701 715379035 346586425 750320099 735490536 20039827 337952194 424896142 722114621 94068112 774950701 323901615 402742987 378509990 151535424 762667806 857366002 895212364 568301008 768604019 529132825 414714580 350757943 581058700 739695571 867632352 837480969 636899733 506462266 298263475 993668684 184462632 981177434 58476344 221419340 189819985 181077601 254444958 239756437 511217929 991774299 944922897 247197317 706133765 78839388 695623382 620559256 249152120 291788302 301973141 224319552 986123964 418828345 845758033 709888367 209400467 629151183 122427661 658659111 572944837 390974349 385971491 727831395 415468531 841268205 661004584 287620580 572702312 294406491 814215350 340223244 428483156 856986735 26942229 131944593 371457488 373390419 207511223 223103220 853963379 674720553 595086080 174487475 149042002 540306595 548466867 85450602 708172681 429175789 379330063 811894912 983374714 352704782 987886386 853986832 352641685 216637988 89472977 579190921 383537194 433550407 793927462 985103295 385299470 576893326 958016601 662808522 309162072 193626956 197801348 260708334 156307756 423132495 168498737 618167711 572028078 850061078 325036562 795459967 678410 935388845 596654529 644249130 372161383 386112672 818244507 830896409 638295647 170895554 966489528 745211952 754219477 99425970 865140838 689817365 69090445 405995732 813465898 147612071 426629684 780172926 429985617 70559569 811891256 844186686 151828149 470550858 495083858 959183250 47976048 435278259 972396885 111468208 813797143 578483765 907698507 344757691 904390185 211593858 36502835 228844602 883213336 845379581 665970108 694740771 649973833 810131969 437055026 52634605 645349687 589024629 313686907 472869478 654049181 442729431 845432189 78745344 509426342 880755572 243974151 399933442 891563170 842541476 716395183 462239632 984352549 123551996 310771868 199509827 593980543 230885172 881070940 691175603 660981732 3336535 20567161 131489558 772704908 178487183 45486384 120935339 64282623 48130915 180898007 470866851 273327806 270535093 875460255 35461711 663414215 291247413 197600225 687255652 105767007 526692993 17950292 975972019 227288146 581777595 534928559 111598000 207188706 939750006 515400471 473543661 592137699 696641263 258183254 614915388 743407739 374560639 758512359 978302080 50359664 354676617 431343106 239241162 753774548 695338059 952755759 228709645 220164027 337685997 288002403 302316002 448966797 43476099 647420978 711014585 501009460 939937865 972894898 746257374 675386630 952615513 47413603 194009526 679034156 114673747 701319458 292761595 339039349 233635251 200810512 674750157 322863766 680440445 348309198 416324769 835954084 454252489 959700276 445008133 55932817 681337615 842745230 217746232 277209574 148015283 780185540 268952817 760944769 741041698 571885454 113557380 484546137 583555384 486767782 145269986 844449225 807634846 612710686 575383037 803044593 368623139 612688160 879395963 188721922 226011471 804903768 33969016 599497486 583815274 304164697 331939047 813245350 565943713 619248100 964840317 363584246 52467287 81006995 633123329 101341213 732043572 579015819 556280098 444663459 265164016 907289711 853268479 229807435 945454941 322742284 581003882 129212539 846597449 412438528 883385449 263190122 81986801 705682546 548735699 742995805 24156446 558306738 647686476 161099822 242476243 837039482 139729495 392582134 865852719 408936256 917721045 783038237 515585999 687615696 585629988 627104527 695618637 16097702 55638848 688502952 332548368 791129545 394316536 857109992 201584422 830570006 131950180 228969913 139631210 216325094 253709630 39162858 868575137 26686849 273884163 195171837 263407500 512406587 331849936 266289166 631493640 946000584 394066480 65864809 529536621 104759807 508165085 373073475 453746267 149237362 428818375 870030378 308204930 331527498 602801926 58593808 498273080 339547018 711882253 345505522 843462804 857687098 795033414 732586826 208961731 840461766 979694412 875420040 332522081 942133277 817880637 624824679 822895614 558477144 935361447 971952112 324142786 698992673 342730038 415043288 795274847 407232967 244951675 962563444 300023171 280451859 155509590 581079303 618527763 936791905 90631826 120511110 330072773 154027489 700420692 741603410 965207183 834260563 299839197 347827444 484301988 908709412 578366064 786757882 266261593 441418493 413979796 939155297 509926910 154716388 930241240 528863397 86870467 18117740 38889232 790147575 623737108 926140717 930272675 546132988 171150915 468488829 943718089 663253032 473322972 39520185 915160252 561424008 817838323 117905381 813576872 599179802 452288164 425819127 70599048 335300028 111685716 420146997 483478793 312542203 367079673 256427490 380453677 673645736 270197306 37935423 42969368 323195026 149270439 160807886 962188095 575120060 826043608 498420504 707402111 895814601 626575643 70746768 205707138 555275682 291900518 518280814 472086532 105542189 331085983 636219991 400629801 433323747 179506629 232377094 558243686 822147647 795506099 345381772 90915639 673981611 754229838 685549316 132135458 623374389 796854968 949438146 629962621 928130846 834966428 634364483 475673283 397393430 32267527 158759298 308464210 418831962 84775718 53299200 793108797 297940971 510578355 932063717 258370521 314947423 765729581 755541510 373469867 175977858 928007923 986627862 218307074 655458836 313442209 620300537 558868071 983848861 943063682 65363220 523396685 963782588 18625695 731369919 651848144 401096950 535293115 567383155 14762234 534945254 929706805 296034619 160217882 496008936 65300830 496541104 78405105 262137381 79132782 15826052 749404390 906240077 506935661 817129000 488987330 787270540 853655444 789164768 797229761 263067399 149363293 677600612 509222919 751108391 113677620 915554575 975917938 708310013 132546781 945588941 485067834 67283847 633814190 91539782 382960014 618986350 970603045 251052252 252576122 288591555 782001358 453827209 354131028 444800544 887425293 280028190 483397109 887829250 224215453 726879293 425499865 180517554 227991855 588911657 212983293 508572582 858077351 30882487 977713277 177358715 174931258 895661881 146683700 204858684 690362292 568500065 992244895 683990490 338058746 658583617 303517750 336735751 145219449 960130430 628380036 277236985 778284084 679970054 140651407 445583770 116807278 223789067 85451631 9003765 802974885 890694124 876894553 414190824 207585553 32264508 621779898 445759240 539116312 294638559 593738 226189839 504864708 937966322 803218963 447870424 577012689 779731359 138072572 883277274 634933920 533056268 702795296 23883242 55087321 719067796 664030892 167412845 818162394 225471195 441055790 371796876 813633940 504514059 788828799 385693455 833820884 177380519 879348884 322183936 62392679 352355220 518566729 947726494 386159643 232883415 454657590 316510802 279212370 900531431 322801927 156772525 512746164 313417694 788326349 446383451 29230117 138396839 161652758 4140041 381861459 461470125 806954008 275064743 590970747 286679653 136811786 217142815 912803017 780372613 203460627 42569608 713028759 18098012 41794572 270975871 22894751 444615620 489314064 62074528 438683970 529213139 89542736 917393038 325531898 814597202 809268592 398106224 797823557 954232894 385463193 429605747 756823264 622648492 369967833 60043508 154940604 741783664 470470240 633570266 567948785 832447342 495779372 397246881 768103695 828980244 607384346 836305278 814540542 102964205 328740830 908585512 281404253 102232860 589390225 344339152 892102371 31867904 726554096 26123378 667285946 611570641 141233072 362191351 142544152 120522666 914614561 341948448 120937253 993115734 581417952 393302079 615751566 94367120 191498888 248741751 536603985 118128581 795066353 108572926 475622953 368317571 69152400 798470577 638117117 868822239 622493928 362625339 634130045 551457397 371087664 34210386 215588983 981007606 957291733 484456265 904652189 316358621 178134147 977534115 932949510 186510466 761673144 905800616 701087097 968008940 837733398 228805926 624437268 93415879 808139448 237704853 733058484 415680912 85528291 523004846 240250643 754512829 792525305 823771313 875907335 605873524 429599355 459707350 937883594 546613446 35966330 148734911 294093577 665494818 418573184 565011110 368870466 842746141 999069922 265812373 92650081 607988218 780793538 760190799 897189816 64854929 513910842 655777292 914108676 314820669 151367902 253324324 944017541 445187513 531197093 215393639 794473482 436094343 319272676 544846646 591566297 626287225 144969647 428034703 362835000 251971 384950219 959684762 9145853 909374295 750890011 869320217 29233104 915400202 488584928 232093181 472003846 867808690 271113394 705030990 544822475 383665975 8612563 384066795 805018286 347627657 96614328 885049581 80411323 96152170 785802445 911804755 66145271 580801782 564236569 98640811 883299002 235332324 165526564 343392626 305325633 178409226 204194859 95412271 704314431 593374459 275730168 152271915 564667542 163722182 905901925 978642485 181947289 150988521 622061311 155647694 219687294 244139407 839730520 965435709 571570947 637605244 77374504 791473972 695489121 953973683 734197615 228801642 931721766 55523082 68770231 736099207 122508937 237227023 252069473 835117930 544719103 137942754 160135311 355308866 173958690 148740069 157980819 296103158 211131950 306619688 301831086 457477776 370748036 357486270 470989340 883364339 43056095 40961316 820233660 374787132 462200647 244982361 733964180 243123345 737939194 178174466 203848718 272001205 70900706 843248763 375443237 589324121 782519908 814779873 383765575 20890833 861039150 214938251 900531228 243553215 225359810 632397952 543608628 306817179 638349592 765110990 817022417 601213046 109887788 589565872 946322623 386773884 646768174 379053086 394883752 612758109 742893981 393425453 808272207 821971040 946296481 453510381 555073157 589122833 626962692 403697856 525250675 574852987 164778600 752911251 185397385 503820889 551081018 207829718 673115929 183659940 73581306 370016425 564136432 586241878 138478612 85367627 26572765 589596525 847421946 73720798 501356372 663743106 202551689 797512047 614153262 54503976 212199010 621496547 277170672 881455318 654620938 900524984 223641510 671319238 57796243 441025620 728193396 652682145 502189337 199405976 708285757 960652547 16052231 938682214 662126720 557693531 564856572 767932838 532910406 456983741 977628648 731580092 755310041 982895500 193799146 431574040 956101653 83288718 597783417 330186052 133132196 893786684 881850217 350057859 166900568 215254450 110812889 875177218 299591894 719651086 491381657 946420415 400548138 137225960 645755778 54797427 32407641 341722687 802004289 494268204 21272696 16113556 943573960 409249180 388418141 4560330 388526680 196977928 262674697 374765338 581229149 471066939 697824556 346190580 446020008 397197912 859334580 834302613 654652377 475664825 413267317 840018253 249349695 907704413 55686968 382697166 391365535 227226369 662676066 376591003 708993589 42498041 774119838 936992006 897510219 377747636 839419392 25372148 99296140 242357947 884051491 871001006 559155969 798624121 924576534 268810670 669335192 779142537 985791986 383141169 375412721 29774537 14414640 152903239 136383096 257485744 745442679 491272430 533905912 41701186 377114476 690645375 86539727 437026580 486449736 622368627 55349765 520513068 339336283 833269066 608952989 41526662 516735444 708562793 18483649 393580486 925143712 842065668 131899982 537903238 103661260 812525914 928950174 880576646 165800017 762756179 482579201 203858615 592033189 23626789 81641892 807424892 221833514 197156314 963696882 384736557 940479721 573834413 372726047 894471610 202391400 416500025 898170771 362927407 142358563 542167926 413004947 654989207 200407333 411856951 153463172 921498218 114893498 477815223 355049316 620695275 135877233 393373669 505538568 393544979 373971014 835480347 709693541 244599105 711799199 881487047 706169483 329991755 890282124 661586403 801339579 459799711 672145875 771728984 404976318 662980315 918969430 113843873 304969463 27348106 994812656 633537425 211296819 965095339 808702016 658429683 47919936 201593570 342263175 471716878 810890620 543776791 726083274 710001931 450326863 676937898 891671906 592195546 932951558 371099708 793752299 993506624 287334520 529699125 52317272 350858045 872097021 562414184 949563667 780584423 478420068 897859648 449575989 465981570 104615854 479739794 505006287 772647944 979859788 374735194 802230516 396565084 439355304 196752661 651382738 36045561 147945778 269401709 93525586 156800675 579477800 25902572 922456750 829874168 137491334 474943691 207145931 419656667 470885799 328681610 483219022 490667810 187748207 198027500 934904131 872441221 182494427 589173295 826689885 375073332 579585160 745265733 443291804 226321121 206780554 378413066 869364592 825913965 289642971 226888573 643197231 535063052 902614370 19799193 383071569 677285310 343415570 680255105 916383202 887265552 537702570 870635205 38108378 57324948 746305220 756444916 932836311 154518385 842970952 274932249 644092647 650172026 568183566 963974426 264882281 758830684 580006634 507623959 283423575 260947584 693366548 102577529 547331659 639228745 605934746 672751882 852843372 983902701 124016235 3649316 318182549 721507740 648528849 574618634 322309264 249039231 19237329 346282244 63150659 49957758 828662932 463866704 649953574 312898851 681283624 545204589 815449243 890911823 700774766 74462750 912483265 29127796 965027308 530231203 349998691 756929265 442672385 917647452 870306553 956213180 515828070 482226325 241855061 37849056 957295755 556371887 519969979 777744151 670309359 418427567 823245437 373984781 925712616 367618582 656364257 645854472 653910277 470788894 293420677 119250441 662043208 297909573 842290929 915894965 476130467 904172660 213637260 999165405 78519639 828383029 910729136 599066831 486714580 148781857 599545063 754144372 479443628 766112249 379229148 913579537 148115089 780556850 631288646 453516368 161459808 272783881 861605922 200144381 607815289 731286757 628361102 832290523 142936842 698728166 562603598 142017316 199604490 574538628 343308019 231626293 370384538 234862608 353840692 731119785 234924941 883709647 774450898 145989126 793691191 493389885 838347303 44425182 312359742 374785988 426166250 990918169 249754891 148619475 738051162 531001299 150673482 626807704 119471942 997910026 940191120 432256656 92552159 476983802 364419552 395994550 181615015 79346690 489347473 386283122 127432530 126100779 348068207 962568670 131010046 716206320 393973846 491629774 118847101 926795451 607924811 384343533 413172357 738441600 186226553 332042164 540746152 397745513 611097920 81596303 267653139 167153927 439616903 707488157 458402386 423167058 158767609 387273591 825812977 854177594 565181155 981325001 947763740 235887758 853013729 741593824 439975128 463807802 599581923 116660705 97704119 871005508 912329901 328197191 668706317 802304501 592042395 784199577 162017795 255400568 443083176 696441597 944604384 888952810 342592709 121774522 510174060 447969832 177781007 348414425 598575861 610271457 145749749 291873473 191544944 287246682 291187539 216844919 586068410 75861704 348882681 577160054 276931419 158709583 298736576 30827672 722282829 984639677 858326506 844770564 126279851 538461741 477380672 929061799 793244828 124422086 751467114 245746674 91184286 656163091 972049064 162432531 52012004 258480959 131848588 410743100 751483118 263980993 580870055 793616700 110742414 302649243 152082742 310241035 321106124 505743756 639251889 753919997 823229672 489091335 362594485 909140724 391414615 349646172 81781229 41301248 707073403 592540622 956865771 197939411 877156228 849219288 241012540 80538137 747364467 290239202 517896937 609573139 485930086 404365727 170409383 514931270 665132232 895006541 947171882 389501054 652193757 107818074 946920671 261544195 275057703 647254958 653744079 36243672 435817028 943844961 39029822 290539318 260797017 954821146 923884932 199096339 493224147 39849864 953756924 983773581 972966025 244900833 301942848 452149655 284154161 287592924 471887557 653755927 630998871 995997532 985367695 463968979 44496465 568323441 912083261 904519192 590162785 620133324 382952144 479685260 246993352 800270507 826890352 853934914 856617815 5238479 245998171 228056630 88707223 273539194 78325534 389528212 901480263 25749973 800794254 926836371 313664589 692171874 81869057 77538599 7010861 966882792 327495313 491876730 65280703 231128863 722267292 932338181 6506717 998050318 224308672 492790135 444409882 492839945 539030302 856471633 79145739 400387278 863816461 130222217 194942247 151427555 537236485 519954138 734366162 673466130 76191589 818748391 886796373 710172249 222701772 651298551 239228053 79912873 49577151 625056740 489414514 837467037 785897550 367516539 459123525 399734281 50289749 957063349 717547601 69238809 533061962 487232696 544991167 3436837 856222459 48221712 217578166 229776951 597954983 174301587 624670167 340023077 201643015 322473781 870312843 312966135 393293149 365201697 301462798 256448466 360542452 383078667 120492758 58763265 827881679 936630213 504821536 233470257 484114331 559601834 510948097 726715332 34791524 415948700 701323675 101084890 351664040 354479593 9613314 507552572 150892700 349703651 856643148 353388833 931182664 907990043 11700757 898643761 608299662 656935444 281204238 305424071 440156312 593620572 393305417 53548537 135709780 825499655 791747986 870980545 168289299 307066212 210282027 85760149 275197032 152206237 49773283 145632543 899456974 653733404 732970345 952131697 832092421 921325146 546961690 465714151 33825547 477692554 49514493 604461700 514432816 64342843 376526232 454182139 466449059 680136447 417704182 693038608 56360372 281220884 294223294 595182970 990293379 689684551 162091629 91650070 942421084 834284190 931297933 702025876 341219466 888879389 425042169 644028894 77338184 206896443 697408837 547166635 872671913 127100187 933878648 688297018 715186400 706712747 611534668 388477101 634051314 805953092 235921797 322710063 467284165 236290610 715735245 586048882 83629750 870446582 428770452 497730830 371323067 915480934 464676859 350452707 877122616 366327476 128208924 553802554 742580985 634102121 242990111 820052428 454175630 870777936 566509774 16541405 868121163 778823624 475845420 461138724 483395215 579943757 913112913 836895250 182669551 233365637 542770911 314219617 409506895 455092471 961322493 791761035 711138662 966449495 213163219 793206918 97685751 399111688 789360138 65373840 348693015 746165084 26947112 500580957 414716622 504243765 827122948 320475927 560276550 532064240 258347628 344931415 589449774 622595206 582356553 389756951 242265587 497386936 941456688 988882554 980214852 658780517 387881795 5118475 38888541 989070640 175511682 46628830 475878169 506112209 315793673 417522638 458493935 819302149 100562458 10239431 433371133 498295114 524829273 233829639 678356997 535565126 299349439 88187412 268615195 69387607 644540387 676530578 406572932 392678649 648361407 688339009 395088723 17889915 481974307 409467704 558837767 268282427 637892516 829419614 509278566 271469428 992976331 120280017 455748308 554544837 378973045 274688921 731568185 536266462 787120164 277300576 123151453 730681305 770478077 824984208 97902596 881282435 259893053 923316718 985100920 235347468 722823910 458735615 733176092 906701044 778444656 166888170 249877023 982954727 758744543 417460375 903133148 380942793 696677904 997963453 837188935 18773560 284293917 680727149 693158386 898857925 466065409 988009560 889480370 364433666 925670195 77709894 590841323 181387635 427181827 718520743 750278307 557220297 747067984 362254425 503186225 294678245 375161715 297742298 72541465 212001512 764678321 754364502 970289121 434139329 54963446 628118131 755867142 485734546 829549541 193136144 828848966 320299843 626243214 215413676 614469725 45821962 138151429 455326938 282802634 490728618 522351546 569493611 85513148 907781170 253026476 431322982 229938957 573876397 159601151 769109068 767894495 748819699 421084331 369526095 829439233 801294938 611347742 946014593 998484087 218644308 697779360 259398960 861574229 422364480 551451337 888416403 582795960 190491355 597571448 795636650 631886621 289702346 159341427 969117236 624535875 103963904 355238658 80719679 438415400 815327253 499829321 137566614 420706931 488130692 50709794 657527833 58963558 514068195 65808199 848843008 816078363 435854415 229322383 612319308 4999814 472684362 410259651 127647850 543233465 296609819 128724928 578998978 239348953 903375817 683704234 398718456 740911541 12779450 488807699 545365627 15393140 108003917 892575493 979344211 541626908 260890109 888566908 613939126 193297945 143181064 518468037 860886469 301332179 339356804 821422149 914542610 406969617 479963897 960569391 5909122 9264704 367056078 447686713 42701707 903234962 79226651 207305988 588886353 459616139 801537071 291032582 492124489 146630682 271196083 610260150 910210592 6478837 324717362 14152915 306047099 841445166 15191558 945431639 822154308 648100263 218493294 831408541 86673690 215545639 481565581 834399937 91576951 161913711 593592369 687073128 533017914 827571729 543937294 653616871 467868208 265445738 436272370 902630725 796267089 931372479 930751138 32992177 530717814 178337682 771096003 606123291 606933957 226144085 760424880 313405125 672951175 909324358 624743673 799597520 24838305 396345136 39435107 723231122 516537382 393738652 981538729 816995247 837527704 798975730 18576531 447477375 582875006 755622111 391270992 407889511 95628847 675839781 344900387 358833399 532620547 606715207 416094415 604463990 715189512 548592596 376558729 903086851 248490674 217207208 535107663 705420659 587501718 87344427 97050637 239415464 877656145 990134297 277246658 196417491 109089754 848521249 78805767 903432971 928344000 278374690 403326951 433000405 175906912 540085387 842386786 311084306 36538892 676241912 145981075 663618434 620784201 645337115 480118023 574238635 479685219 374346189 937554935 834509209 64808857 532576128 141725874 21309621 924984022 994895089 729641288 587607316 321944065 478680747 650916468 356383826 26589650 511241097 464439176 841281816 939842792 661830725 521194620 636446254 724652692 315863319 17681762 572089366 929789647 662631192 994033852 160643466 114399594 957288538 918476229 20582824 964980746 386048943 830424267 233346485 872701478 450263301 704044838 543314747 934076987 596521610 602218656 433475429 687674171 962248 455199883 572947555 793999471 426101397 844668912 632743242 775179206 568894355 67378321 961497921 705845594 956612297 984263424 619381193 231560437 867614067 327817226 892665989 144911402 89252351 349115174 13119725 797773391 74305448 170937281 868778683 334030959 761116206 591753538 381452185 245984751 928845767 139499239 452574242 680343150 647189279 683928883 813763230 222380071 511388227 16673470 499679536 20784317 664356110 908413929 18399902 961569020 44554441 512184792 606584375 65810700 148555603 177394984 333640710 291292377 188889524 800055956 791349575 985123712 278775303 613752872 70140084 590757765 699559451 47885946 260632201 154985695 965671995 692455851 888862474 369816916 285248989 572665284 335639556 42353708 627635085 450106548 785211221 700642789 639846254 174111166 823210499 145332117 204355243 826714896 837924917 724590542 320826638 127719190 175731651 313947652 562299768 753002577 97397978 771636922 812729113 209737282 547026450 830717800 619266168 555289100 787239678 674310737 674825961 719513664 940691810 603702328 272078868 8728009 443165380 425556932 793107301 586979304 780355074 602791510 328899086 49412431 778492432 206711732 774561092 112312655 790714494 917230524 622769349 473956374 24232850 467974527 535406054 129680605 803277870 109422053 725372752 996491839 638227495 892900249 411918456 771621041 911277091 677376521 612288648 59023380 584977362 144928366 904354912 545993293 823387263 493239539 987758298 613676468 194203862 529673254 858305816 715069661 480901255 148712401 59358891 994167337 456651994 590441213 498098898 934660189 140073434 712022556 928605386 854270566 508641249 668065133 441838477 966263886 502409006 732913189 427499966 812380597 655474800 408827058 972678510 767742930 440483860 48870585 260740844 216767670 136349339 200078005 164856979 852194805 493876550 58080928 472990686 145136446 527739598 226352044 23528404 501167312 790023990 450202344 920061057 332310552 228380467 485631641 394728996 69430801 763691666 847593432 300804050 785178556 900476408 673951670 619623377 763300461 126162265 742190555 989781396 668537583 612259919 85264204 723481863 83733730 171312440 798056973 133410183 746975683 436861035 198017957 352779710 489610125 102458578 237296573 406109928 205301580 261408530 782054594 829188171 926494182 272115507 220571848 369751676 274669703 365445095 126167687 13721479 456456849 257058524 804909315 478794687 13669439 378247370 123165500 33214469 354293654 839732901 611342308 83107954 628383382 106935655 928639347 691441925 225172643 951232604 220192355 875737270 79331691 386717550 223364527 232852189 640905004 803017384 580588366 162167686 132975608 219305342 570297612 657546004 811682989 277357071 803601731 851397201 258484194 656427590 49522730 617895240 787628824 57846130 295255206 810442985 543446382 611109876 999406691 788928468 873343541 498594574 259919269 267609009 457969776 873497247 751439902 631335781 780355352 320504613 649990123 173238875 545442233 390534924 65166868 409269488 821715361 208037168 470745428 225418228 389316734 212478080 982724453 624201234 562271059 623727969 133062651 711347503 415445188 238159565 226745016 142358535 234721956 249230980 307188447 793406607 652484924 119983182 407278829 580013454 184196219 44231161 917225584 613394093 316174086 56110504 980320300 782869061 582470136 255579410 7659282 91683384 571980088 82406917 536883242 399876739 185241877 177640454 799210123 587228732 784794656 984546422 198313959 404944971 19276492 497339418 427131179 414602663 813990204 69484510 966580580 119865501 912445348 392765310 424061805 543375138 798833030 294035312 561392149 425937300 940622670 865007761 850374892 780010347 44880657 673317233 480622521 525246211 404473274 90574097 152465247 701849210 577576481 127906050 663794592 63388443 605325025 113481075 78809503 502142813 900062780 830688513 710313963 743846813 598662689 192890473 922481616 729144838 811205145 321236094 91121502 414754867 143648955 185115890 647610154 866653756 257527567 607940723 429853091 717932058 597055257 16224169 426888450 32854806 503891384 657617373 816309630 569193587 260209820 487280917 782899563 176906737 469595008 177905596 40708669 596829213 742180820 160039097 220812358 66941621 382813410 54276603 213747152 309891867 471245912 395625163 778225836 14940540 522001702 852077215 340469423 938367899 949672005 169305568 964499167 822849656 179163475 373878888 211577303 772252238 392009450 132616111 756106527 356931760 201934693 809753542 686780886 609192632 275415259 570590699 559215781 44784058 96655469 503358869 287909723 415414217 401175643 415773233 577501526 12249429 684065521 697355569 331525215 69167074 308973799 680844217 304536629 415097545 251960844 244639935 681762775 478868977 660890446 774818467 733912500 586785222 303489185 157193835 305977614 612105659 886419582 900401063 186029811 244694462 811859271 282465360 106824383 826115443 771904812 879273776 996216798 768782476 970153929 516485104 383426270 572146538 998114055 770226928 879712315 45369674 348738335 778650582 867461299 655197475 488848258 992309219 839882802 472490105 199969709 107191030 549565033 866778054 488639156 830406451 417506575 621831588 199895713 850993403 836653283 557066982 916494737 731964950 690597938 779259515 29193862 704612909 253098726 60293523 705852939 969713874 575400366 766689208 699826571 536346637 451631230 526047879 539314105 755466886 552305060 893296002 423173757 136776764 6140662 193899212 284656377 444439356 5024954 334135594 523596097 619500876 98569986 490186026 61753129 994963315 856127893 95998936 472361916 227787769 771655689 718819725 954079447 294788829 502676883 331302294 657986515 91302528 481943151 289687563 189586669 407700077 542325734 383403294 247166722 906004408 456040038 771743575 690145606 655746194 934217688 613957874 518976433 262656029 501828473 227849188 640372722 287899422 972752866 335989265 973384867 773382501 727865215 64327181 315968865 700939004 713169841 877692948 341128088 92102169 584941562 634453319 51365234 699987210 438675751 739485363 919198512 408926670 31228246 294506687 423152530 581373605 191299151 515525680 552962885 647315277 777478276 175648071 927933162 853862152 204495721 577792594 945453891 743800310 983825478 124931643 116107223 297378603 84048446 315139841 349580681 325960869 172339690 725811725 129824531 306350011 692868870 621857049 66854359 338089560 356305120 586478127 688384279 26727724 909617930 979639095 698230759 233390729 982298981 260038851 883688758 735524321 25689387 927747302 662439633 639584029 40759805 691387915 883681864 542686724 311479134 460368256 231984722 561888919 571306128 352145936 554665291 989131596 4846902 136539909 831345071 131754614 625972050 989245448 303591167 580497233 906552878 360511337 385134940 26590447 166397534 351453637 698843253 862721504 244254277 87776013 635304976 316168318 167212499 426718025 186142514 716435118 175184090 246306250 29175786 676511222 266071896 112417334 108297451 725792620 891966460 599269916 305334965 386366362 631011318 643517864 474039899 427281428 690184278 172987021 108594606 143472331 120139653 644080248 137819434 522657395 100677305 745695697 757362265 411551720 928971635 567427896 404960604 945681373 240149158 222552396 404777820 884476753 693190153 219385522 905822837 450971480 720644535 571089497 401011424 568941501 659813485 493244227 355583575 109029817 904818156 629641278 96016468 505358217 322217220 167780211 576982281 68958760 978844959 982423227 880453626 863314034 169451262 736080851 608249642 849760701 163579402 281235722 559271108 638154503 105386224 337654237 578532150 17285433 522287924 659375056 240878524 621552774 248948680 836961491 181625703 395081868 383756313 634070244 159984402 690750649 661481001 714165062 839756996 937029663 53519160 886995099 700603814 589059385 809433033 385907978 892204925 378033174 906557667 62730779 492043162 168864322 599117375 591739432 651951232 247075866 447136172 743504519 117770960 847142452 737427773 371810842 495855742 980385920 437654723 67693773 423068843 971135506 587687226 362501914 99710869 171927910 512501177 283390608 78832186 729661614 131869937 325081815 395992911 168080145 426064659 328004722 398340833 874787071 257772833 834017431 837001191 183767269 945509868 32599366 796959487 661969550 939931441 980374119 280345520 742531010 562938966 874437335 281754017 816751379 912414925 826266036 501408525 866094091 129773552 28627235 345215905 456348457 86565723 690337219 531625511 614732126 286976713 835893011 209073764 493829643 130224076 904757941 134297396 148649680 727031128 613458328 766081535 924843425 884941972 915184028 326996916 368906010 867167632 979640769 118034606 533198259 632381088 988711840 176839889 654596836 727667609 743735987 416471907 92722549 709812200 212474087 848664175 227276548 805097731 140299323 826037870 433918265 534433129 985567294 338233666 220784124 237300541 119169991 235515968 663661043 457922507 917865135 608991466 993967030 827004388 118623029 356705126 808141978 717443093 514369724 526124086 68706132 349511546 357173212 223521678 365614684 935809583 236305588 950144879 318540095 158225154 273602228 82158056 99918847 322219994 225049736 362036903 100026519 971817150 998647004 965062867 332474821 388448424 411176757 55953197 638915526 475637525 744319166 201460354 638369951 957719936 961973545 918659414 210680786 102234745 779523804 940822007 772700881 516974247 462495722 400856486 57510426 519901872 837969387 519835751 691377701 680760419 49409400 783369656 649010122 643368272 392322198 276075717 622211688 625693017 519971564 355368430 751304985 958513919 132537990 492201272 301950634 837174552 759155304 496375289 730886093 142819685 239888538 622202787 182567505 680035676 748514205 935753213 603120882 649087749 204735394 337133378 932735959 934334421 840949936 194271937 895418607 424703187 997450806 220791179 634402746 133555807 600155923 351729458 243003577 998525505 807424606 231303825 643896258 816178027 22357630 147510188 575726744 341207442 275982859 777809420 801656765 547258513 657541676 850228039 423872073 628699325 767548455 967116405 879759291 618236750 402857933 165364320 780458730 142816836 731210241 980796048 881401645 726707153 68891176 379280731 734307749 750431186 799560796 851587099 332976595 137105849 425543995 355536226 785383723 54576638 859205765 944037555 882941897 347453147 474643839 348189096 123708659 567034153 415887055 120752649 798672457 527447665 412363965 760110734 114439399 10737998 761296898 772494014 497064780 247180235 352962026 949283265 898125553 562789903 568630463 533927836 152776534 866078148 636661805 700687856 663009403 446036597 852402688 647000570 159614729 493345951 395307597 495845849 792135267 883439051 314117958 508440143 445798405 602931051 637683540 597353094 622766119 980909512 263098045 854247810 459434565 387146329 268002433 40637656 368425324 582912554 390944731 400973732 850793563 837451299 809587435 402973946 597588773 742606231 942978665 737752848 77205198 854024337 677521820 467543939 861921402 693049303 429056545 41888116 587296600 30779881 831759751 386788673 690919511 804676398 40916682 242628908 773577952 834120759 699829216 406214953 143226225 526159216 509663654 90483816 931799354 548120402 119793746 912998100 284912264 229037847 63331937 612095981 786785082 399239834 869624579 316198795 186561691 689072201 177673960 878273181 235251387 231777544 856125249 470207245 39056552 114869327 198579518 607041181 699674618 628690332 218646845 703141341 945296096 692539750 874584160 884695942 950296432 344227011 181554315 620384577 978070878 838766211 868940888 997807094 660802888 919795171 253291374 69804767 894928945 188587000 351607999 494308665 373324500 857071823 852531304 156032320 539410483 4329086 185503287 481654191 820859298 445204122 782222925 849420171 597993338 813287525 770678579 370952731 10166673 318580199 993691771 671802281 57731406 66301100 61717855 474920682 526791015 948905010 907064719 540896846 950736277 753821798 584954233 898233949 12002424 639559932 303776001 192534021 105799568 875906191 895535111 488387330 826533448 785748645 683963107 580215647 629059282 279009832 610065146 286095872 771766652 890022201 284536683 663502571 756469205 747402104 331295765 880474953 844528755 965981779 122156814 465305472 492324921 511693373 115814189 776833545 279365633 769403549 753988181 613679266 27186214 521026072 402162707 798649126 906276655 234745802 578766073 997039045 792514586 112260008 773524724 835985832 829526923 935313263 211385519 474747476 584797006 922956825 191499705 633152978 676916239 188630732 211795316 585446113 48372310 335029968 747461814 177399546 954311645 507033482 200374169 551769894 15647981 712000141 5100390 112602512 451687572 602387021 514268545 243611580 792984775 105317991 810317708 397055338 614585176 665907331 412000831 492794050 668591628 677228474 154284925 692077988 931818731 393878807 533545268 260907226 767343322 790562224 830395769 436855850 785461394 502029442 453846818 824210064 794427354 192278087 155919770 992351234 298065610 965033472 415461783 209582276 480733001 877013836 667533059 99768435 791437530 725986792 396974863 638521824 762803399 362150698 984348151 204931672 422656046 463888293 814019028 673004279 487875780 4105506 732651326 625410950 602009575 45691902 583787179 449762567 662385414 265408503 759438954 25735075 549655676 998993055 360723448 779338904 140512166 16463950 209000550 409602843 210125498 388923206 429519013 202489677 604309657 660613272 38807181 719387988 891255540 494210813 132701680 437957484 603221111 549393319 516792837 688762246 38006613 313113157 53665032 435072301 311561626 135637088 406492495 53707363 243825142 169156278 473255663 369493102 400204084 297732795 119724408 366692803 85546060 342982745 334601549 235683845 624787945 251302615 260110226 882902014 938035897 682867694 498197705 195321099 552006471 656537078 3873772 226692976 87815636 256366319 768501752 611713646 771914622 938894318 108071615 473997200 190590892 856918325 128648184 647117712 19963600 515775508 429495799 776669853 180009907 912512945 346134486 221948986 668861836 147532400 248924408 75260001 911586890 854257456 152146856 523002495 972901928 235685575 313489428 187143627 904827622 303933217 467679292 654279562 525214491 77210277 350474875 989361393 426978903 682295997 537836283 818437143 44765855 556871420 927783970 618103211 329412115 718211635 474280225 366820066 781276251 673089880 537714249 411640564 514192314 484161833 800042660 866874215 211271119 364704950 176445206 131829630 768211661 431449029 428387521 66135430 87430147 264777522 396860620 282933789 191109536 229064630 20660993 152742956 610302808 520177593 837477870 759515674 678214908 866079538 885900639 814440144 916714502 220826261 757521994 365461961 65171131 781753342 919128512 364685885 716309318 182239120 823466041 824199689 387856452 928145100 491679876 285727650 854216113 192705534 682657720 732552292 218616203 249464685 152306266 864422699 787158328 415187449 895317468 619718219 253682774 158521499 448418888 286726987 168101842 378257799 804639633 301083030 257757947 386869971 765826090 687534034 304976865 903397716 247977189 18645039 991891828 962729535 250522502 696514331 395030991 852562275 633258948 984854424 80193125 462190149 364948595 520989438 964543065 379791683 573897965 566704039 751972554 823546052 624123943 195936021 851528330 956372355 275490690 986947122 686095317 901855605 914927250 693732022 644342937 342595257 786819590 304131403 160308958 786451432 770047546 913834163 873512245 216712533 94260269 15623183 451883605 803924168 280884075 118655622 287410893 342378119 409581780 796888983 12717481 921121658 353933283 469368270 524381990 597011905 523210236 606881560 812342140 618379706 663278101 389548783 94379325 889855010 982688063 936382488 2819998 257727631 999851242 437166855 868872844 279087240 898988933 813955096 688377165 259274259 291104679 633346044 813878510 925896826 656297209 25309986 26995943 635237011 388452253 646977573 36193470 350278622 147394734 32464570 361253887 63748741 404736230 323400845 781820999 139261251 469097494 924808486 996659729 525710962 87714361 442979514 709245536 748920754 113134495 305509809 151740122 33262196 521286974 833708294 277189974 780602280 76390701 360562593 864799602 521835609 115956457 205617777 952288075 62684304 319207561 112027080 364547427 575393908 479560023 516759233 603214528 63182568 621375545 118125543 90510996 3052675 749122169 430745590 243615145 937354581 126041 431281554 669132337 774176639 438795895 159535669 609199975 865976231 851272039 40960822 530509746 792551895 350602152 680509613 889586354 963449426 609017609 858576738 916087795 683799247 739449365 542658218 110107554 579885608 347958898 426961778 998205001 688699431 976366588 535878097 156434355 345097665 230924445 947483450 187693752 250064905 601193787 965436068 79007078 872357623 283893728 628451028 523783233 820792652 637344132 211038181 808072890 477198756 525086071 608376159 636982735 995628751 980234267 990932074 811173098 596373929 296332247 359899308 713521629 2074760 341720747 787628780 311457694 768023840 370747533 148635002 794398334 301200234 313399437 635551957 506613091 659023233 530499434 660972540 641229037 353304727 682602915 508788882 644722038 796005382 558909685 292641561 703758677 974406189 616858991 4766331 339350136 742445166 57247159 517505079 662238718 372113171 52033614 350305032 403486863 266522327 696492761 812318680 512232618 657537736 948839201 342785870 158005397 528456344 956905874 262256117 637335421 563927324 832834846 387135014 324645483 593049668 651287881 802507039 760930328 90014190 193307946 484839762 386416918 263806041 214586845 134219836 692426240 415236042 171480830 231334566 246359303 27020560 983093159 712624859 770729392 864216715 840227789 885588194 159433143 51484411 51092947 925215773 147448691 10824598 279361114 803834803 573351495 984965815 545919580 327414366 579039228 858232321 571947036 183453521 285751868 916266350 275474906 314487252 970312448 512361706 291412550 311077730 110035297 619888247 109590894 43596614 111116386 670399114 299147374 176249546 474249941 84002325 299027473 887974847 755568141 926878761 771825144 647262626 661197549 695778538 141156043 985352949 273975539 324796387 59784791 388188743 676054317 362261188 490138055 585029836 135807464 740970312 985399057 853582250 879079481 208101934 298771317 973982204 779063409 655722147 841072382 887712235 63808649 696855844 390884729 930108193 387607600 295611807 245776417 816252767 445918710 410414679 393372485 599155874 95096085 882526674 366209305 964077214 796207121 780449598 238578109 116836454 623939622 310583060 539339317 611468960 674117771 422423933 27995437 972695570 561183667 631846607 260246037 985394993 168480131 938165614 558518781 903546344 68358724 588623463 736502413 930684268 693500137 120834444 763814920 835353403 251187203 29480733 693822500 761994118 282222028 768187432 335553018 228803302 711262498 191188781 558930530 427066602 443409576 975641430 909350082 432686083 592838232 163465184 397594620 522284591 365344174 420251406 390327312 998436687 122397064 266230453 313028734 59284028 935336475 507188678 136451910 234921102 459882133 23636460 753541043 241983714 452128937 455050476 31257267 783861410 389963942 488636308 659341913 479348638 354406616 582295338 350123621 430697671 969867317 294919223 957663171 442964440 145205572 577087273 712446857 419848820 783010968 203136298 200484928 72110443 101388830 93214616 666335103 232934930 208568562 125544689 667950813 205655021 606446492 222185690 518155386 13493401 858548805 719359753 154255615 302874880 384984739 59289035 163592530 731216759 14135411 150895486 256021339 90438077 305934215 824730683 742163503 923886864 259027942 981179782 275142033 994037908 486370726 36601065 365187858 612738257 465370328 284977943 401071087 190080868 291393468 887161687 648466750 323933257 239612412 874657668 487036271 82483477 786078427 284711184 242341881 168625956 273581030 37272555 189297426 99998698 616502206 810829111 715790362 743042708 49453560 230639117 594325946 373833961 394878731 61361443 857752358 56233252 966607984 998933588 408653209 600660026 15135874 518439834 695157676 515923190 630623212 595990275 576199644 659831909 19817366 485301052 919536322 175715053 156495086 254473273 905842656 611731329 636270958 863126302 763232536 601234471 571663483 408453750 462054902 315695433 496238303 517941925 514104257 574816183 417128181 4154276 723561375 156667894 113295659 439546905 307079292 374744590 627802886 518160296 959066747 962669043 404973484 439420783 704284060 501101015 807597655 477816072 15676186 398079612 335950902 984323229 481167056 4093678 41194660 186867502 432276119 566466217 443535555 854567294 94187970 229727527 623043304 867948388 202767852 843321186 825586586 888741097 189740522 873772668 523479524 156413112 887807881 769411598 666810587 405338538 784854474 902684053 810327443 468888409 573341659 707715559 339735887 404686733 966712334 724067942 347601266 182209814 369159923 728120155 663427871 945200355 905457984 590048723 823773492 320061813 823356881 28382728 910986599 689910312 81135153 261655828 167448894 493851605 58236574 175677993 811955513 434340310 82608707 31408774 327420543 645331269 93376078 37004837 169694826 680585234 581124786 473774637 446592108 968392537 170447191 896128579 706386598 535370691 814289839 586931627 879701166 213302131 226372134 133456706 634791269 392603566 452613095 551828254 35681064 391529711 33254630 878489699 348239080 363119111 552991255 546578429 515717201 770358010 823035922 696891228 100490126 488405148 918466994 268507492 59887322 396644419 667341849 235157747 984301101 252772374 957632085 662426177 792050032 723580197 252088583 378885933 225560283 145319047 301348452 559131059 605711288 304735377 124889849 478042479 206279162 293169855 138580536 128148019 124506606 936583084 553964971 541411398 884636876 801780268 912088031 80144172 300145825 12661294 170646776 214258790 746395943 696893992 423007490 254890530 755455966 515348414 624153625 650938262 500174682 526913515 480671610 24395137 889545963 782938327 264616229 289573716 587244869 348942569 146745904 435032930 58320164 477836798 868310613 702979810 538314394 389553981 932763834 347007246 404652081 135980047 998981669 991450575 372898533 497825231 76923228 820869935 22828246 67238497 33828019 681140587 147844151 30914631 510472860 909044862 439796640 85372942 316254365 253267294 573499654 960801865 974377770 912631307 458201737 33199082 922173900 960971186 550473520 952888302 458086969 803773069 146846151 323771134 132188661 824270491 935638509 303587295 890417431 958919679 919194305 145775492 692815840 174944008 7606373 976623382 109324184 808407306 613270370 752667898 808853612 665858038 111307625 5010787 10211635 361557060 279290131 186351525 246751217 397992881 69030690 237687400 512302028 575632156 397040528 976701601 729279580 526179062 776225144 75043809 833679345 547199007 31999414 820362423 60901572 992695400 209274754 295505419 979999433 333241228 752221113 930047103 68067664 204026173 651116634 523898244 387566984 875681970 122333232 967200564 637381485 588355848 849336759 869449970 144525636 686786547 318659603 184870506 892948768 917610270 922990316 432784497 295967177 55247102 941954206 566916828 183951468 589504477 901752114 819639820 817446233 434936591 374655579 92991137 355639805 16629768 99468122 361395606 617711850 319329647 593736614 366825915 571212502 999233156 250355284 186728437 459301616 131426587 404455793 537851970 529115067 962890490 538963235 519249317 123314262 269872409 48187936 186233370 176863139 59562424 786818811 275558182 113099002 720284948 628559606 207936791 745250216 213762677 475462912 118332060 809480727 918596097 950198858 611437696 119862375 30500796 190801533 109830988 560364559 427095136 293996800 894768738 560580935 566320960 918366153 822557231 685596093 474175444 675333914 268020054 577624604 992557839 957756127 384872572 65650892 115642365 664430148 659699578 599677807 663684255 319277484 909524848 706393153 798767269 169466801 970896831 422790927 575940153 573238956 623445689 735898920 936338696 690896917 218185394 911386177 56441534 963398515 468432890 388848999 697414613 49453549 707734914 365574971 949769573 297825408 534763632 726022006 669642234 767257575 698511970 173282454 322474176 414111992 709279125 153558447 441705464 629930031 772893768 703609059 297085257 977668652 80370615 449344362 432916824 286324170 453496666 723937428 810773392 75108353 117826085 702995979 293362069 819328915 984579689 608663922 863590905 320033073 75648237 363514373 827745789 916428186 954064716 850783751 249675178 777573752 853070670 19599917 58829411 428671377 284144375 634584992 776925443 402717290 285590062 326311428 942770292 653572441 117795009 991026495 935104073 173496581 765633007 114524421 355013398 400299003 466713003 951642779 327068999 455643089 391957996 175659767 178421003 841288720 188114706 357438003 26753294 401544880 585445810 48797112 774446976 409607830 959586623 681087258 923444310 192522500 925365123 788901876 949115164 343164888 798944152 477600141 253811169 280415862 810159995 659102794 5715617 145823709 660412366 361788171 524291139 332692023 397210727 441623773 693032747 747664268 556540675 971840962 873226194 482690770 355759084 115579832 604398648 554802569 221639462 565247603 406791318 716540515 240340803 196454887 984724629 7716859 591072569 466570695 531086525 735209512 234450477 785332557 907057556 638920830 199786220 179787927 599321831 589172556 870153093 679555547 494999555 414373948 229548796 231991135 771301906 621505824 957827179 47709854 557890388 285682746 189670780 575057437 148594640 47108121 534968287 317946099 316640751 135239150 846322083 709707656 314335395 565641218 647564965 906722454 411827993 381932437 374736357 705504473 310099859 301866059 701137860 917032716 74149137 546352581 518817547 326364742 753822938 595083965 775267278 399576739 810517615 789044590 16175029 512922872 799131932 845578912 9095422 254099656 736936117 765022232 645897669 614167506 780260239 377254448 883353028 380342014 376784672 143954063 447195867 257538492 489036703 183578233 542132489 868730376 173124338 382378644 722799105 563487510 118537593 39197584 492946090 713555008 73021313 804705551 769641252 395548001 498708545 432977025 770019725 372645542 564486192 763823923 704492511 596564748 703801559 189877325 482217306 715664683 865296699 447019475 885663043 857171844 703487980 219400283 815910522 492192327 740011839 237766880 789590094 979749837 725010800 718908285 836515282 420873951 208102783 555712213 508138670 383174597 158681744 628155805 636370824 267441413 220911908 813676600 50364308 416190711 867481342 842256893 491825081 639094929 711680187 760309890 628351644 214624695 688679246 837549344 110852961 592533942 480928276 145134066 343495780 742295890 605840855 35244886 905334173 699891875 227442585 835387307 830776430 88201477 236425956 971517779 646436094 757111439 575298455 747281698 425546062 458099411 960467976 926641920 182656634 566846555 972624962 720019969 10896199 92467557 517961016 333448557 11670684 841731699 103298001 227386433 358896651 127858489 348900139 517871178 214302311 525746859 834235373 627261935 66421315 308063296 876922442 193582176 26717411 126417061 53422145 81759022 616104986 818351164 402750446 526567206 712743601 633020362 68066940 155897660 470105972 339342993 158996722 732460870 928132539 895887026 297003495 869908986 952849046 839863298 889125126 776595995 288315115 382797403 991338212 680473527 870136452 581013432 214059275 259631283 715859310 139742955 234484358 80641705 670276969 783264268 622764338 391068328 556206269 552158069 552900093 642099747 37855783 532587113 260139196 790262456 614433009 16908277 976960086 229893498 888001530 385716072 864715311 992472025 791897203 94051602 72009743 973828280 129620157 998310030 510072096 636436693 80966763 444648177 426100431 703463862 851326496 464182840 269882296 814214769 353897678 870948409 762447101 273445447 333622837 82138233 869310994 262516188 183485697 34091307 647432209 931480683 862961003 370720027 945905011 982126560 889450911 421592078 923402289 127784346 449926124 503080311 940621008 228029213 899397287 870577136 47816100 607757797 930371891 326526317 667814611 607447537 637852557 114895385 743006711 511764725 200448159 892315218 202732873 602294991 673178670 907203346 141915312 281322866 404735101 386985018 842554897 604946829 765773254 822689902 20359091 633573905 431219455 537135439 747840757 237439734 478410578 961374504 534873180 739531755 600491625 908081393 601930894 457982754 184542196 105564355 705876876 98352962 509346962 545804518 999864810 388733670 827184479 413704604 235343819 299347824 270929623 594922964 565098824 69987733 98592335 452099973 205383610 396734097 97253943 33725921 557657355 64544448 974128464 452292702 176427171 605116602 868108717 324915854 621443557 76326036 908569098 37928469 503093602 649816149 947124097 238473030 257635041 818686404 581815816 915918119 488681583 789553918 54167311 214690418 813893878 223078483 928290861 244736371 411166985 962371951 617933586 781496286 918513929 388684078 912365210 491066020 415381325 712461019 303326095 200646845 866232736 617130952 223734210 201846033 361224433 851594040 933022881 716200604 488278443 486772798 527619883 525498941 858609025 974751954 667559912 825799205 695093337 555659619 568599008 696053052 727485511 137943054 870893440 876194783 712638626 996553758 2910632 126848699 400998864 523840082 395829834 203995505 954920104 787861238 926003748 443947916 723060208 531011852 879844030 34476435 273566551 58909113 117738130 256430370 683409143 807961505 750856027 448603430 249788322 801833274 635753823 466773782 345394213 578190659 801417957 341095721 878548537 34329801 147586235 455138266 832254096 593923781 885747273 963914266 982141271 183234596 783201955 394996371 495199213 187291900 269717090 543491104 907847464 274500985 788204093 143100960 691325117 975481699 566987148 672783015 464828928 359048286 774231456 222452055 757623231 874190184 717462662 374188199 551286976 283560202 610982862 456101770 71461138 662168928 350076312 369804660 463294199 80141345 814086381 15891143 629640533 152570298 850938530 419193171 251876783 756589521 257321248 66292658 624131235 86231731 230626207 347238107 880636779 763159356 746305296 79307075 845576276 574278776 233308308 591074938 679346982 365168049 32359933 152943788 990875998 255872408 685119307 357538403 735268419 615931525 703842587 390401433 384685520 664392199 755969764 639353305 73453900 943391144 117268899 201346230 909978452 666728543 64503460 593052829 415948542 733936906 329098269 637899087 33080451 297172294 20925741 20411709 94766637 995675133 736801696 96958953 390763887 582775573 466571494 778694941 704561248 958687215 220059636 967856310 491098919 295859468 623091586 511569455 181429693 693870841 154721700 320810622 179274084 288195940 124655087 313632124 468320027 512689262 82412682 246848422 747954013 575721052 239887316 698352774 563468014 942962734 677393318 351699530 253354688 574783458 316876268 641018701 902499176 580446574 214242332 354745666 326926065 913513595 530316757 191337340 152760125 629158112 218389666 240902766 696785815 294501194 27597537 999576492 266164829 348533358 532955545 805971660 127867732 54623412 445943410 233914013 871590470 237452040 27654167 847170386 349972719 244330986 84464652 184795468 486990110 139211235 402692346 34050267 445385336 313665062 565220871 696748403 803591152 805893540 746057932 781822650 987310934 76107179 461053690 991249863 610359075 218931796 702007818 511516917 760691852 955108134 302879363 661993571 354688988 24986943 914039020 846831183 859125885 154134050 447699411 862125798 575973151 152541734 945889633 462773058 992304771 577694691 71397032 780793300 332686883 397638290 685045744 259918479 269457353 311030674 290516474 870067923 815040535 654945720 110213154 550755423 338302970 785495241 272246293 586956091 536630331 83065763 365601630 550582069 446935030 185058689 550447971 121507500 161073141 383924122 941170694 856013703 471960937 178041090 504003758 552468841 301738061 768440269 698231371 993376395 111752710 22427751 585315644 971396293 589146333 947855128 971730301 552031225 261062774 572353940 896077442 621340304 975941468 200584816 761970915 3667588 489425782 493625153 646254618 272335837 98745820 516886614 811475024 900612559 126406190 68536811 9207996 585922453 73945743 488437061 286444194 425891822 787441988 257067883 976041642 644459941 226704058 196614975 753005396 644920430 348181675 731879979 606412652 10337518 709472067 169458631 562972384 79365475 340302428 507698923 871826618 924288838 966698356 372544698 791912566 489265833 9218523 792453838 587275058 108599023 232154827 697056103 227864454 620272951 489888568 752862526 384683424 678437412 978078658 180777296 328858508 244758049 834504108 20304907 544294235 171363969 964784570 410542829 177312432 44036221 467304379 217497807 311438301 741516589 659444793 876855804 71900176 384954972 651911277 382213651 277950236 533696135 434666448 590570158 452392689 521906617 435681622 621201245 947909517 474259097 193240933 658827762 667633334 432349892 891309381 682276657 313305299 161518587 157756652 132485833 605763615 543589976 694874585 684116361 543409459 176439344 651501287 316302803 134090988 588303166 100556876 985838295 607870719 238770085 765121605 512780316 679642201 65940916 462006326 408698414 862738375 817305816 66557213 457233502 652837018 951482582 412665736 621824199 654283278 779052976 973529865 346312193 319933570 509771502 894880098 416603765 660972619 485521839 53142265 206067720 159494889 214351463 637414560 925195087 757068489 597670688 524538738 106455929 433358458 831436760 572133244 517844873 360456637 458646874 530571555 546222582 849340503 608056793 627368195 449916664 457723466 239627458 76493221 481274833 97589991 45517274 671986443 461884377 667059965 838266876 870224362 910634339 498222082 543530577 963010320 427736627 677216648 663193706 32128563 341485461 169784682 947191207 257282685 522100504 79399211 519934710 724200441 551888351 212246915 125000940 149918444 588343611 790518553 766247938 732864615 954214269 13127230 224593448 901681562 407983941 265622044 185026802 447648465 575505803 906496664 658917945 146061732 233272661 538069038 349299521 870550000 970528123 818693394 765905474 102434036 822244625 813923786 867502323 990263329 577441997 201188092 471189178 552786378 326703391 781593133 847801302 856375954 922589149 955475786 135452863 802365273 247379851 671147159 514859522 642658884 282655314 620114515 720339489 639869979 501313659 508408567 485003781 395996313 952901671 579125684 465795919 552705321 860749632 688924513 731843973 468445406 68904366 887387828 504440907 640037586 785553896 316552969 466292365 720040687 807679971 524909151 832352860 704610116 405891654 557779587 146902198 709727747 929740514 509436459 923365183 398043385 414839918 310560446 623175992 899175780 426959772 268989272 35419254 675758678 70866631 305827185 512717069 96870448 755864980 842850869 437030502 741932522 121065606 526288258 677416309 348095726 74801549 680506110 639470478 206111032 104811921 621095791 11173313 843403620 290771680 948428578 368772797 713712010 113973829 777952219 383204988 702690114 844957805 943048403 764853816 749436758 276174934 18340937 377267765 354232819 855074919 490632921 839158169 271598547 234514457 697458294 114297927 695087967 562200795 285798814 52152879 794708398 679279179 321032514 64300516 55529865 529268733 387626248 306863472 806337868 620018690 305502215 696853148 800825099 472486420 438609056 226476848 94652940 288577681 754311182 387551461 878510100 157327410 119389127 11024431 392455077 152232267 568758106 738700869 285539849 106651087 509839810 265485099 984237814 56721038 862571553 51355931 351171965 249166748 862177946 297961254 951690599 600552384 386672341 884858075 146812318 626532543 997217018 646850360 305598337 83619395 776191159 417381546 855803639 539136760 872908727 521598014 194828979 644031835 797546937 887261057 446565225 740773487 325818470 499810946 583599504 335969084 793531209 649844057 738170514 762450577 618604126 221511111 790224856 387744349 344159666 455960696 199056872 630748199 347667461 716122685 492188211 707687562 236566801 801241868 798047430 124100185 122129912 443232686 323186929 19025968 865677832 313123261 886899942 858526663 621925380 985916197 318856832 125397741 917121152 288627878 734954514 121707552 691746352 561252661 549091322 685816049 534781229 840492002 264453807 867662138 15511688 84612256 815290014 320368702 94022074 714944342 216983407 984664975 434672200 381551730 214257534 365489329 484445466 836306973 444777283 924852460 354487441 8974008 201426161 148890253 797820499 663790827 290718445 894681765 863988762 428482429 437478406 943140992 91601658 507096960 190517760 320033234 883066150 34761983 742937559 116826783 327517105 635061109 132961867 175790102 289522762 776349678 203126649 521130812 614007190 489571106 558058670 237513581 386901360 291193387 311932769 576933570 128962831 755998133 244650155 852064635 562242669 839847205 695593729 119337871 134729320 168054038 668984750 357872073 877596114 457661583 289997944 511189607 748765695 681403149 966912520 558789544 223739746 937446699 256936080 266827861 748828528 802613626 268110348 530552398 732114231 963659499 897021242 139065899 891955751 699806011 793001063 870421686 172789732 964742970 768012906 89015316 856395203 138998785 19319966 331861857 36355978 763383551 94179721 264736983 506714383 303880313 527221418 922502425 810554716 595750866 4223697 19375693 962948752 972074910 446811771 659933805 881758454 940247439 965795335 158902176 870273654 869302456 568698174 931679630 293564947 943480877 134061723 860659486 807451139 972195940 414300412 304057025 88279873 10082779 325990850 49273993 251387870 311522167 948555768 149954711 142707363 484101192 861370081 472757709 770332568 536113351 526069391 852770460 11515727 843366179 666568740 975400435 421839860 850184806 664625580 186751901 468456609 779909693 274426026 566897430 641123565 742488489 990957835 182968665 804963192 490082490 417454259 760738765 884892499 195746483 194945602 401031741 738884222 505294877 295591895 275440773 338165964 861275084 110971105 303277183 641677968 647992814 358618109 503659918 750896422 708832762 229711570 96955898 339860195 458021023 449314910 88135195 778375990 172905045 431655247 508565286 466695444 32474767 458350594 537290884 959547647 467836665 812012346 277965736 829583443 25609945 783415636 831577974 220642998 315534293 112434456 769223216 879615067 616791846 761514025 34930550 39557483 177336407 925705058 798938541 840214860 626826809 315172812 23626171 124006327 921779071 15148061 969135834 690417776 495149148 21629005 445520109 565410777 334318610 444255041 189674573 607153929 902733240 893011070 795640614 241947178 188051531 529153971 663570185 69338990 665881867 391123983 292743667 580745200 809144579 234347598 726292712 807395340 199321038 764152085 704077886 770867433 850471584 670326048 790629825 958793991 681551486 378062145 566643696 398083838 568130014 918490336 276904901 784309089 403847716 450074882 743529979 32811611 874597438 344376120 815517824 179410368 778120714 582989935 875091593 995690409 122543279 397307672 72256065 179917665 545564891 636969096 859918825 545482140 831410465 740704534 285239168 970960682 335415769 60570902 686033295 844888522 155256793 770144742 578346839 944440356 998088476 593208068 463494997 207591353 812911759 723433857 138298558 217135368 124301262 612931293 216286751 7250006 931453790 766990279 888858039 915827264 67823105 828622238 148869124 207950277 49440571 334756589 949908912 797112396 161803658 353209590 422495880 129687805 687217959 341403180 283741601 648704927 711005367 94786184 742304913 309560964 76107373 805734152 412979058 322173063 30220192 718688595 264011111 132204813 617118745 361994240 854448049 528524464 212493190 853942323 848181670 429992376 851090299 906842548 913637924 980803674 194095525 977731152 281463968 421998812 435198411 551566502 961478175 799241065 626192770 37358477 512873669 508991577 348968013 816931516 825821339 435373103 198249651 979175720 305836241 531560566 444735250 298797405 56840244 709182712 364947884 667818088 312811301 740422176 702408231 319289341 949045105 277161270 75493807 422534522 236263679 534922976 608471270 525959083 375054901 582486469 339264081 306984213 588044958 464804547 555497041 396449185 389882608 16836648 728245162 369057604 859300355 513863406 870292004 106015949 525575407 295482692 957144182 918228115 27998004 670049967 377580205 200064505 371710602 186990771 252945442 507801693 409443288 713683389 471349731 612055655 550368994 619635868 469292488 936501972 21990615 463943146 560868838 368998379 893730033 644902468 986601836 372537498 597803539 30963875 911510077 167139401 916535244 906837434 892408253 280539152 992188967 861097735 93496741 615409913 340473538 78598429 447423823 357653400 24936574 99157339 278428295 689268542 192833472 308898713 692249728 424731028 685899050 264310095 512236512 482714990 421914901 999918285 264386742 751272686 694623467 164766126 689253923 260693064 220462256 994838533 2166538 357462905 121538333 73728016 417918366 617801666 128855137 990271549 388131018 597869623 738666404 852378651 918554313 655457229 28983250 366856349 48134077 58663164 792051013 425012801 693574873 797973292 279423015 674951596 677366275 304749641 821134566 422616614 244773716 620791749 897061487 154882090 384759019 163240322 569713420 160898136 650542899 901275282 564169558 207457298 684830643 569395920 711198530 110345461 362635244 999783881 725120621 156308600 429117657 554755075 667056234 795159124 547268386 641023326 448703343 840298379 106804575 568796713 371260240 881690646 487009313 715445631 558350081 862025226 925455629 170201651 844039318 173514504 752080431 966930392 584346133 417761917 898180816 307072582 185303581 5461545 194141545 58461471 354200911 485814166 455136192 949507517 400155373 520154494 10563969 170276127 528340399 234564820 254371679 940419758 508647775 258128195 975828912 448214581 709641686 201303740 784000327 987523132 675862928 367984750 495304199 815770013 976584122 211966891 146836278 947796204 87899337 519156552 589914390 116425878 764230646 148358606 47822511 328136965 175594669 713776809 61002922 918916034 913013371 683692706 403004813 786661332 314456918 511664773 548503426 146333671 804955941 204727955 705000473 7353673 745036216 958973956 97858648 788391377 53214629 574313914 544844047 727641934 842015187 853907571 586572939 762485254 761736789 879409933 84286640 209906442 342548814 658222116 171329217 642374171 613277974 635464418 3494157 40964585 548197391 607694618 880238261 678864590 520325580 710608497 243656906 369805255 831236494 722873283 14579818 567499890 66826111 737368649 737213620 197285316 881166769 296709014 368574981 535668417 929254764 181298396 440227585 673632169 575248716 556770139 243316307 838944135 79742758 522089429 43777773 483991036 662446916 209699422 292508293 440729261 498881398 150399822 632347349 959747194 315894973 602249377 75374062 956778804 388941897 846197539 68070620 801514559 585623617 414605036 114227868 634662700 125207822 75681268 585940793 788376997 471068560 352667701 189266992 969994711 994147159 122780397 351314302 526532812 186111633 353924356 201187196 48488979 592839480 126654648 987053910 678010747 368025739 917531766 141217364 165074298 442731268 516228577 653223641 326440743 57135925 600898410 80994532 455528969 401043374 991870444 266823825 12123967 726478681 549819964 684240479 692674956 994551115 1872942 502875042 701465516 253544471 258366270 552807270 750611354 453478427 72297444 514278731 746682343 814248784 805669286 533808497 528543285 762036800 601073285 390558622 171363631 973941543 398448443 339062403 467042989 62179207 213645167 218020820 106659948 195971008 294234457 242600399 540158548 991441154 575142967 843569871 434633669 325184653 948818710 478744235 107252027 34900528 7440530 518509442 555703326 612199455 784339974 48000117 702490364 111852559 458185439 260248319 723691442 932745958 754363333 981136863 314438385 535877690 13068155 283758178 459274636 371328055 145065337 771321896 791050365 705166879 991123286 241620287 266180229 659312830 558549414 640498206 981906415 503720863 478283661 467494067 844918780 972616070 380704517 474037593 279695328 468540519 367658732 267947221 72462894 758415528 246713868 96942195 781839736 410747557 790558969 511540909 376072370 428870959 768340803 373114684 165004850 777042204 454071495 657752753 919135904 833674194 151581953 861662379 268794669 720767839 629459706 513920893 99387428 864354999 756889582 124764408 462572064 152437983 630417485 702983951 991205583 571031387 146117254 242675185 646931965 75698109 807728720 814413572 694089677 920925518 719791138 742357122 160741470 687968388 453312781 97432456 316230566 601078398 419891681 919721678 758505964 645160563 697783528 418806759 227914109 737487571 451764563 248180345 911421929 473519703 326577442 252961641 467403397 887099202 728847621 95194220 283453067 691684608 658207790 961549253 628297524 183496187 949386518 577666822 391334789 267477679 730519716 197713173 661980140 286204136 531415058 450930301 548043773 193208540 648759424 899518312 58083976 310361043 673096319 961191616 368993066 909678508 533678581 294928751 539561990 832432397 52192471 107981756 509772374 278226805 754930836 737494689 89238031 990920598 965043610 125101648 161410206 420556343 419974943 882144995 137361687 811059959 249092478 386479199 442206786 649127926 792670748 481796519 593633803 756492216 229707354 590496007 849489886 645064289 165038127 551980831 191873411 552600402 30752339 884980656 305130585 837142358 948404361 770177075 27634747 324605238 717121664 810946688 976301829 110619517 882957644 701289634 558933214 867722611 299975308 128729222 49623493 747433409 138819200 807494180 385312453 802283739 340782508 285915379 564407359 345379570 126367088 136131730 397010692 294126873 695595424 896567056 879835090 270658176 47479185 278043122 145421873 810715967 941525894 859346760 481977936 361791884 948886650 581245072 126609544 100376635 196543334 634858049 685910823 736702299 166846010 401012284 53021681 62618097 606804338 310841925 418298172 778330874 835192114 583022529 646948118 141780147 978226343 870735930 234005436 418157260 716074979 966397152 596979047 289687248 725588165 532125295 2117743 823205275 723553421 60359632 571035925 849392605 142871212 209003141 3477293 385928045 953366502 356811234 359585522 61246978 785748075 586894746 719057661 466062423 948707631 657843027 328223834 618181121 472520746 403774574 279726924 187518633 311309192 370966479 400590374 214072454 622164470 409718146 725504891 128811491 631406759 2740623 987786162 18212070 692376440 519628908 348311557 418114000 448771086 512329434 61528814 588878123 757963976 937089083 455305787 147191894 934826618 966051729 530022709 539450865 803405962 616961571 27320530 460152035 133802691 452776483 779015544 69190606 451678808 520583060 335569411 796614835 977368675 595196150 176867146 264582929 400496915 316286333 749471475 634729921 987927924 645298042 159150006 933660488 193362159 399588010 5425043 506297802 478785408 942972992 613397023 285164642 642213259 166223514 223874674 178336209 940317251 523864353 157581048 915154428 401284407 900684070 340365854 488114446 87814313 449798244 692782137 273801866 192119187 955576001 761211070 955601108 251139084 610265720 572766587 852322780 66493354 257968275 792092338 864236089 222103233 155090281 709307669 608934407 72781191 301433099 392105734 728488059 782532505 696162699 790895335 735664724 113234919 485703409 118691898 374500140 611233812 346773690 105529046 299932502 34923131 936534712 526443041 367784048 673107927 387458392 128923311 964790673 235519332 937808237 577480238 377138894 272612909 455141956 39574047 710724038 340507976 5994968 614671390 627848991 761426176 160573134 157547004 512334205 28717757 104935861 905217028 104461098 789420139 383014622 642957375 935101950 405106799 686111283 135570573 193269430 64669694 67499624 552452159 94600058 948005822 299303923 364448027 887115443 200126865 880676881 970821967 935807983 95997197 871757165 698846738 540268536 597172682 920619897 416369280 423442677 720043676 717453394 132179792 369401218 876455032 236601522 618433635 396386710 251206640 828463928 775663451 740483858 912727391 348130312 724478239 497013339 141407535 548114275 719651039 402966457 941456404 453455501 679567745 707455943 574464280 523859254 210473679 460945636 754726524 474246366 548430453 698179920 677197751 355032273 917598540 487734644 610368718 361741969 211778043 996298372 841825519 836610663 293528400 345117557 901044607 878143961 210501159 38782051 638758767 274676651 444014659 577385138 635516898 221096174 238361030 505753362 445427257 947505123 421406548 560933881 868678017 297660927 483742114 494913963 76270091 960036241 535682475 916530897 140395886 74368499 719323571 927659633 586998269 679738807 464223758 944563628 728325564 297866768 992030220 961595695 99781329 423438665 979162311 717542383 562863662 423544502 590066500 524215447 142901779 620829595 102361973 349163285 844465958 992975315 678580344 943633046 155041222 549520700 966440284 914166641 767180026 59639038 819035812 850099244 290996596 729721499 246866095 678026433 49273944 659816531 888649844 954972927 870648802 427111200 763083497 948078233 97597120 333897894 198041895 746376764 588200243 980804926 960188330 310668573 84210591 178352081 778244190 443602456 400981937 965159821 855956522 513153567 717839202 766999184 578903048 357540594 500011144 321606215 501197093 638281551 497554449 426010769 208290393 788965032 422914897 995148339 883181871 354414979 37545373 765306473 788426850 56866446 460604203 29907367 502171056 62170886 854184614 417172368 475648879 101437801 278771209 541914398 121664476 911941352 258328829 213964900 940545831 376199539 603416872 48753754 718884790 898588481 848875556 638491135 95307383 244093683 99044989 316423441 190756084 596524034 446132665 106335615 656017781 664032058 819668837 933764163 860958566 613064508 555356047 347746783 700190403 349575566 118481746 478379214 174121507 547205147 657531712 946351877 66017410 389857111 9818886 559773841 32226626 381371634 339416472 302955558 411053164 889677400 918648570 751819717 872548228 673545517 542501460 873132193 381441101 368808776 330719836 784514617 183538704 722277657 687517390 865398636 9108515 348998232 166665210 83246317 266320904 470358580 52255487 77997044 761880991 203065692 70978686 520020899 528516809 221408543 750352321 150930404 777770063 939220172 597701542 69053478 624082311 792333531 616885944 609674576 200962272 355676619 82203158 558506853 865074322 751154710 740338812 288572795 414503981 539267268 459342451 476157260 535121611 366205755 878576612 986496247 965220121 492683618 337812209 271307615 910516179 581538875 946375336 706262510 556223504 506190645 772666845 39729185 63918824 893918343 96420719 519286490 140507869 786736527 456953313 166693907 725232929 53584353 677743034 39076107 265107036 102928866 252850482 184174863 987779330 416064805 722290370 811940911 964162132 712336485 520388136 430553874 974594306 667393931 647500932 673354663 353040586 377947918 751611420 134181577 866809218 871754210 126707743 993423860 328379410 659911104 544659300 768255974 423181833 334395408 449645624 910306142 452540979 493646815 848218024 7385164 796443747 529414054 245602101 396055916 283359850 936898982 951594390 705339491 204040273 25133210 805980779 53760557 791426429 633767790 602656691 872619540 807066847 905752531 758431598 663340777 320053587 399674014 840563915 241275650 303281232 583488602 9075091 436300958 128415752 701134031 754528532 649515480 271709958 699985122 46787221 484631420 562198137 580742745 141688923 50362503 24976606 897505804 144912574 253607478 280684141 636415880 724759946 675385083 227792105 387079063 534113577 303463260 731007804 262074615 95302295 627015370 425825789 483741574 306208230 481775866 556589684 526838387 63158629 433222140 749316096 7705442 952398960 405012258 900737829 65576115 627243932 511387021 488222270 670671882 460415629 916065604 184753707 345311941 775314692 205808621 490456110 935959095 761529389 96767180 30943458 640169807 510741616 434275601 336604292 6247079 568288959 895857974 703329623 669256529 413939083 485482080 550895046 994841823 776644026 533620387 405625052 967768351 343151184 148059680 939777649 132956210 471126056 930801643 505057302 526587689 460230739 235202761 719678051 391751231 207610233 289738001 103165009 174637017 731084367 499822669 145269508 609070963 435158042 299769346 116441047 126831215 844340612 185358664 876420119 520263637 62690956 164705935 128606604 448763588 231496879 33100208 964244112 864448867 66187622 630680734 401711365 670805404 684366997 115076101 903877240 565576918 816645318 646258468 173269962 593908350 822482002 782624395 413993127 192956145 915680980 607057218 498978517 785197014 888417673 369195008 648530916 808359576 512089070 668588290 566979331 559454589 276510805 510038272 648365 540612251 401623744 187332350 509460480 223921903 574596243 309539931 883305387 641091502 518262081 484895094 445813335 855172213 31312227 341180780 233148630 860903565 354829953 161971234 338432118 888252726 804065383 978724746 884895630 856334763 753050264 379857321 400857945 523365991 956020379 867077907 950427929 786118772 151351990 649521650 383023761 269725951 541037568 588165612 277232109 23191353 923165128 336694117 713755298 618618671 238632952 140044730 581898473 405617223 59865145 514634548 607718932 662027739 584736 868711597 761868465 762108883 335617176 221724543 256075359 503424390 879896362 152530866 998629007 415488080 12660858 111499921 872289373 776919365 134733609 928062062 643889163 33070007 541057374 702749172 401153891 725955093 78703548 536040218 213651839 717415584 664680266 174326707 38101315 345463609 237976898 803005738 856727876 50884829 419523175 607836250 51396383 151427808 36229746 857072117 250211096 808371687 530932913 975640417 673896360 694663919 4340042 108736979 187178450 618080069 97885258 540246569 464829916 47155658 420459900 307949474 405586988 306336440 265557878 754087226 939563218 392117321 357096172 574589658 824254934 623203391 507944264 375087541 591691754 849190099 667375042 648821649 96415017 731254822 953377793 2381314 793797988 78558379 915197356 781214609 255120478 680956419 791798477 259888488 47345300 445329486 372192062 424713311 477878262 596609421 370751913 981177404 83682649 139139309 130102753 24264889 861695479 818081193 803906884 249406282 713915098 792809193 8601129 301248758 467569179 646937850 990116576 183655005 914155139 917500503 250412429 312657850 912967794 509108204 185278541 412969055 583326450 393941131 153953296 489926555 674174508 95704322 297580735 954588217 135102233 629286242 175371048 207320242 536187145 329574878 830379417 415482623 254209575 323687518 768493381 139132946 463531584 358856714 517186599 403556 576562540 594713623 359362875 932261863 946438205 167050296 343343508 319019555 661861038 369564405 492890840 312902299 841900988 911659696 399418773 487797725 75768035 625345413 499926225 462635932 719301230 418429687 705386319 977880701 825256183 739406446 242208492 59318543 682855385 490639554 873318142 710772621 756304444 651766329 959938107 490714842 113724913 52630420 473748161 796056930 900197115 650201543 942872491 183983614 133087076 86662527 377389684 779310504 738304589 588573011 443055905 973812802 17998566 908377613 645374713 297493380 716580593 960078538 281498922 415041407 986611563 412285192 160081959 18938768 883879817 612516064 512585884 88144179 5033445 694527786 336371606 820432378 350897389 802795487 204681383 60361014 476741687 318959737 817152033 170294501 494746430 575609921 978599785 903991386 880252054 918515768 245406699 840919741 199045833 626001589 451986000 170971182 250516002 513239378 153479111 101494482 175476472 323076429 487821403 81554764 848560238 162413817 870280044 579637199 197452002 666611535 36171548 449629898 958375458 653766400 627162894 981323132 847040154 347911795 785767062 867012824 118782149 493135669 511295203 740838103 400246353 105968299 794804609 694636818 201722107 836917230 733914880 312450073 561012073 238872081 929754470 828319545 41424600 369125386 76863094 734889138 298511807 377163600 336435142 985483260 745996731 432835757 236121427 233513443 621026021 694065533 318789753 409314363 476470430 198147635 855796414 594560321 806122297 199418757 95914056 461734932 604751999 312070465 745340874 217569337 982889788 964294068 564679417 625346419 789681651 652238056 101622636 979145807 111142676 47249191 23372562 377408298 758755406 432258211 154276740 223870189 514072955 217616064 14641667 386600470 508478219 469190004 91206260 51112941 439265269 16905170 4263353 764258023 604868963 334081902 429844800 434661956 450189911 249497353 697948688 376890516 734410696 470132585 323008104 347528435 97126700 729560304 398805707 461063084 537587052 561694395 552006953 285280890 838933058 84833867 208034304 125516491 887755492 248796979 602217459 358972473 792819633 202489594 224711213 905196508 736931230 896720106 863428054 123688312 678003441 581441649 995019583 458665174 831465263 659733791 984166700 266936455 701157142 276089675 159073343 879370314 682834078 724867327 57200855 832753123 731939262 470135755 704561532 89017694 259882469 513669 802845247 958467434 391834749 789546325 390779186 989352029 639848161 224576172 940924299 103956622 967552979 727884349 479369886 956114549 117753270 957206041 883490233 267585647 41580553 789861297 171701995 190240042 102537471 636317239 783088016 970099644 737269745 517182676 775624531 904953138 389909970 128229195 873074446 447785078 843244394 6871986 320108930 7747524 222957943 97016257 660741540 438375808 663845392 880899563 483818237 922026451 424083260 568915823 619653130 634280211 871798157 706623704 701031506 418317992 31113118 390510620 452595938 604298497 564795174 861511939 930534310 533410288 377417634 629141625 826701649 250240371 32490322 442589361 986715178 327283360 178305446 793573910 69648815 797327472 883882480 888401438 915260171 860632795 677034881 264273950 986114959 856332434 361188045 856005556 620392147 487204213 498202534 572466310 735286521 665813226 571161584 76211473 102521654 295740962 152452236 492239066 55950865 701304645 498927041 540691766 693713068 837125314 633879554 613980707 986993344 973880281 214132995 885731871 300875619 334182265 624830308 529219511 526460840 709965874 201285691 454666329 264859280 981673784 355227811 664885423 619271885 128930670 211141207 127057488 7620512 345884616 507561059 698337237 825826831 223007158 874329038 787922078 810996537 838441673 365408085 41958858 888952320 998290018 97561198 193652074 304125853 882178592 651949556 83039220 458559259 9562967 362711397 799237907 184972622 208947504 750140826 70028490 172055897 611449156 317243628 174931667 656921250 727056272 829689689 240881365 54326074 792589373 809297910 424445907 897654663 519975849 392101985 688231226 540778472 829763863 2385418 680901539 24421569 301076234 130761601 680557181 113774269 122213541 362943358 398056523 919900759 525968041 250493858 911716110 131311809 316242964 331503023 559593838 857395561 477232280 526981685 408286732 704103562 467565678 239223236 104544487 822014863 600873482 199777967 278207114 475520064 922733427 434910676 563618665 244933198 128092923 579428168 721078879 578906010 89889125 764108617 455306318 114475849 578319367 567345375 165476516 762911016 577481071 699323459 804140973 66153013 907078052 864721197 888322721 217652142 460872546 336201574 675316359 389998818 549417421 334413845 74398510 54130262 629303152 492714265 351098144 987848365 165376928 139985210 657068217 784094112 290256899 495220543 43724580 920450490 866901743 964728223 995603555 794605925 395200118 124460113 131643062 986026282 728812790 80943979 614581874 751258066 287095221 544704498 599466640 760650911 488462313 184865133 61989552 132366171 862336888 525837257 256586871 552492510 593271459 388851642 693398136 223608394 412448437 597681126 891896567 204685509 632742243 821143281 367861630 273698968 241294431 367140501 595600121 936981896 887220181 843042691 566314819 575849613 258421431 803559084 770383686 940590563 752049262 395186190 321427317 425522690 49613767 482694757 461292546 124443415 168646423 712682786 665758704 561940297 941453365 559637453 984286086 400168083 841417256 433274720 420414359 968990569 158047181 475379263 371462515 647554428 744750660 530162196 558831719 331113627 891523629 554927893 16638674 231138812 432761729 789746169 613453030 999809067 367664081 405082505 431183840 822264043 76483837 74229704 598674322 237450089 345020970 793020756 8329986 873567452 830491185 195395833 72281940 654660455 549969519 751926950 167153419 156379314 171738566 994912165 857115371 829553196 367400213 693214174 279629221 98465744 991799020 780170737 82309192 878269288 189043498 108646089 520007513 855117098 16978549 695327444 392631038 644342964 446245143 868209184 46248256 88931836 776234600 1724898 159871290 486476873 339338858 16052236 816975433 788602655 437577758 950404366 479175402 938501421 338987730 193685773 971036798 599203945 337175617 479972544 9788823 645648916 798702869 22932282 386708099 522775773 630350775 89601634 164811624 919630975 195345847 991334905 906306082 148788306 684848819 788610627 224193189 144524212 57567320 669764456 618580261 730536697 844173459 719069059 602247694 395121737 369753729 902430118 459828015 16891103 810646850 636511585 898633656 745668402 245029753 830496038 556467221 653653305 282276713 387136664 997099818 967079247 669882736 364256472 104138650 754051410 232159497 494465686 603016069 181792199 608926408 998089373 521581529 407737413 607870352 158976121 781533473 75150816 376662616 50448736 512712071 202734170 778737998 669784265 679447403 566177376 623887123 684145408 566024256 227641837 196936085 511369658 13857958 596418001 412359708 79561494 851413670 692289978 840541690 232378661 799558975 434041168 18067590 332684726 692376670 542363116 452547579 411975373 228608543 748631202 803293540 151409459 105342269 282486744 268700839 611063653 255344858 55667512 86871476 797386985 691816200 581308587 931089219 442071330 55374437 802306331 229649092 190650193 640696792 419773385 560426495 308827600 297248226 64478013 915865351 334439247 384035492 42252092 457991818 608394949 243388126 863004299 465469579 814647411 160776796 997155010 740440869 137899715 20107712 763459853 691345953 953376758 812624461 922401781 684057833 655107785 674630679 538117600 768560104 123548434 188712891 17892469 79969662 89613658 2674646 286612992 727090159 598230412 229866308 496628887 804759622 691998264 239256206 97403419 253186370 817548117 282206319 170790510 797338096 207692087 542982711 983316941 830161206 253749114 413921292 659004705 415140592 979515316 529926755 327258081 274682296 484995539 291419137 694546252 637563335 402243221 426255912 754653557 458204243 271241221 449891365 766317447 978882734 990152065 35858811 123191566 989769646 452408266 38596764 478748689 116946175 170976769 523319238 732375334 783167442 481300706 523664977 856516181 723638532 998167746 397345747 804911047 342174907 414731887 916777773 726083012 627598724 645354661 777827364 231303876 1179374 803078887 532576621 476666169 718980307 278324660 462682346 84493886 466402297 730005368 127526985 708898427 123004678 543271218 980313566 926948996 78219047 345073015 332747927 312515827 211106262 585767597 669154794 535714030 990496604 741984539 900401839 107889290 208644832 890354725 155899270 257552841 92658361 767260430 167946099 357303371 663094690 159520616 263404390 758065265 828218509 17464726 632969275 290097976 302904309 112211992 468932171 105419769 849372106 456769809 224057440 801063158 352501980 616491766 275170959 487783129 916653194 676251981 873623001 748169237 661930146 436191342 304385928 423156918 632646915 113020815 748570952 11566888 671491165 902896670 666980192 714974762 224555617 303444258 5467010 769076765 808130628 620026583 593037959 792615421 597915923 91861913 854877566 848562284 117914873 743646771 793059735 623866375 889037041 217184496 574655459 410606367 341662800 490706609 18248886 45924714 87489328 285156964 725496532 736720171 300175528 541435314 981662891 947625630 374212803 688087057 724540207 272955275 634204801 117067612 685740339 863964890 679522880 122195456 992142902 894993249 112435562 723613591 171082818 597381008 570767806 740029035 99776695 164046420 959618386 271655889 675337750 672678262 152055889 935742954 59973750 210359532 23979451 901332884 798020904 156912267 713715212 420681524 36306663 937716576 768277101 53354265 463323907 63662657 819764075 354195561 377921291 594374565 571224704 366075798 492057561 255393365 948744113 258165043 767148504 193975201 461788577 914577203 604414895 422593732 56251819 37350414 993697892 123025354 728679979 830565825 523241706 478602837 443197260 271408975 989268552 455183737 895453788 897465517 583518433 355850513 916686185 304463996 456006639 257467810 58258721 842984262 544018114 812661897 380193348 357498387 94836015 216215449 106826004 997511301 742484857 879534785 901479956 426643305 978639688 446185190 273460061 606644731 859183221 136643785 587851421 301895128 894540481 529869719 532921496 893591946 469095974 886683547 338909067 33941301 431644422 134368605 212135845 281121796 990316079 576918818 521954672 602152624 308648842 862343470 647209941 411267594 846441198 813400012 130838266 975415309 567928004 395050035 564697384 175449847 466985969 509944085 374457456 737723077 531734759 759570875 310136976 402653215 983514606 581695453 255455358 15432129 273306416 544204530 898088421 348277071 670310224 268574179 323703364 693480362 846162742 12163855 155081828 626830852 391341194 11008908 634823326 720421021 616071855 529256514 344285896 369218697 128739745 198933023 629430069 437736063 261554473 889964604 711069680 898550503 609452056 40376427 261201318 949453663 333651895 198939248 279859585 581332440 689734856 299710579 668578049 780157785 419948351 109253494 710079417 959134428 984982690 748505605 628200087 747105095 573978562 672260390 880061072 70386736 989896271 799999787 553857850 109462512 577283979 790507184 637780544 663283100 304424355 319971236 760522093 216959761 313906153 516533970 235193735 699196834 887930717 552515881 803042987 62498606 377491563 517440433 783073660 202889203 913020897 967984251 520767666 55331412 437257627 574357694 997222001 118605479 751752088 261840973 529712238 475718629 201285272 797336180 430956878 815086100 99706546 249836153 146700083 318620537 137354503 520013309 915826883 969274038 289598762 825968959 213446284 816747536 744160514 756266293 932254123 150233466 523635457 166976297 219928108 947229465 519741666 79885052 447785581 686812325 952545129 231788702 149316323 989206087 560264078 452396883 478947925 129144678 469280444 774393907 515310004 9635561 324076595 820740101 86527958 864229202 572994457 241312614 547601823 952244454 121694766 940061256 873516253 289779074 19330209 24155570 979730932 730242261 602897327 315693419 486164398 776571382 121070823 467594130 927532051 803395215 712450299 308196608 205680561 305319876 930692927 895673914 890678840 990101100 402653804 485590051 909454463 688541193 465455755 333154485 650569269 835767411 161772242 104603224 343869930 168024427 214482034 6657444 392388915 782337351 363069925 784444365 199467395 738246228 304836786 671585873 75668243 216728653 568461663 365444697 484755682 347390818 150400286 856155314 386745167 117178521 968734917 581002992 120653132 410673366 892225468 104233389 334879886 769271767 693366887 4904758 835916767 560325708 161840630 735664598 620549322 372814140 852198452 932638142 594084317 782234543 996037691 534304718 626407774 433304204 198745374 870697304 585033760 27227745 890801643 247057531 129522828 305379794 226505778 469189631 547457390 821079797 464508475 641274309 460990166 468161601 330710717 714380708 831924008 579409612 832971857 486357043 859759409 439362908 352142395 470878011 832935797 465767159 110955616 989496069 883702403 539162669 526541729 883382419 940077008 123783090 62480671 915964827 528351555 95092434 534236648 198397707 927165074 470549957 631083989 339192319 658793449 554959322 641934643 756602267 632833986 495223179 291428658 547342317 791170890 191164516 690177039 203492330 191092319 262349612 446913138 396646078 314320941 519851382 444058530 402691153 977403683 759570626 973132761 466587712 917644910 983061675 616745242 28001337 923078221 996589980 692785664 787874401 175515925 664879508 688185055 260566557 652926542 45994594 510789473 16061164 517602355 14307739 578227036 973364391 232953085 985990126 359233246 568808730 106096104 799687738 900873785 839933181 744201063 232686114 315022429 270366410 455831620 326187626 999427914 312427557 422753566 819742650 27252400 767455997 252466027 423862829 921730434 509480396 926616566 962005997 201840033 550164426 161545146 765219336 487375844 318112889 748361006 569479713 294411552 286564100 635863202 350636116 413471608 213692701 363956026 757341252 771507791 135511616 75396349 804365085 503829286 256091785 918870946 992003450 454427667 983923894 299574059 82097027 500519510 177161901 894711405 359199072 332134272 234460031 70431100 566286082 246038546 143557977 161256692 550897491 959297407 801448397 525443698 974617410 716872782 545834275 46708461 101712357 656170725 598449728 553358145 796140785 52232152 558585675 970705295 865744659 218775068 290108740 635014262 382636768 657973177 694649507 251954238 3906842 165619008 997026607 299648982 315096287 641609098 859830330 446424827 586561730 187948102 950607456 223654158 951386508 784225938 165297592 850815637 98388886 550367202 729384896 454971782 202442642 784464619 266312741 61171500 288987664 990506880 455301945 295584626 748213725 383208157 695297782 424764422 611018574 127623222 877153054 343750059 6628372 568215661 891116120 967582530 449187681 589056249 296689812 853010730 781718124 775781810 673688184 113703749 568762861 221850648 625321347 203435218 210146925 9366147 918305286 465300210 681484666 421952377 314698672 630387476 616260618 182294687 307329887 752220927 424836293 806866014 805976585 592376943 424174128 365850113 730884308 879719032 267427207 417816997 874685254 590099921 116499573 813393424 723047567 593804024 320978777 507399 720735218 448252719 108284165 22592526 700579383 397803316 837179604 831792166 323421355 418707166 525455955 369304398 870375668 128365705 968559941 323962664 466605396 400251061 505940309 684992280 752796511 330782492 762316158 525528174 408639171 533319782 939744602 706172979 919434641 784754988 935328071 994509809 209673077 848795538 615210472 275582730 325003780 314326770 141674001 664418000 272304266 140726450 876342390 236336560 578869185 53721091 201388679 410304419 738965909 104666955 452514904 587645112 274818238 884165637 304000788 925592582 307338049 101398971 920895921 339657821 427161573 478120592 555857713 557054260 233430855 895966671 371463859 772251746 691186932 201984423 844465271 208559003 843095758 580161168 994931297 725166996 18042289 112518189 566930140 87510988 124577265 275072769 29979198 36076764 431763900 992426580 501518742 960213534 772891103 158392778 914883841 938971134 112310566 536426862 456211604 342720521 363639203 377132149 269513511 158539284 916583053 542341053 751827027 349085763 405105998 757942935 474873149 626971098 190069988 143530753 16656593 796450076 189482155 65739824 823318637 836901776 697705455 257904197 684673291 324891891 814316811 515364669 593884135 687656974 340197388 423133893 597640883 749728786 744431729 373853273 78168841 135694370 46912391 758801769 347631111 361138147 590548782 444446169 762108114 248932250 728898290 267462822 218334986 411407398 697821193 593987765 287660404 770168253 648884227 305359193 585567432 219626068 491343343 585826021 297055227 910218265 370973298 188307486 552834821 815011912 740602061 519077714 578690643 833329204 734747956 415162890 608508707 778893205 466568454 851187187 332699115 24197725 68531013 420070001 845339119 791838251 833103501 305776115 243852868 134824484 708631696 487940882 57948994 312514130 868948277 281782414 549840139 604161968 67966293 170734700 835488365 999029078 805395203 711603915 635041766 811483729 691138465 161252174 927948686 749093183 160822198 55791834 232991709 559955317 550438831 511287388 719594067 866258402 919173400 396148455 76928783 882969016 155650674 62011904 112831910 941442424 624228413 904092368 612140370 491225469 915779590 954527996 454810034 435610743 357713334 715232732 585978021 275174126 81374569 851269712 782679620 144956805 191641687 744418984 473758652 484672946 631203576 693321179 510796124 105735710 796475926 108501026 428650199 887597576 237447585 621933431 946315887 414987862 182683255 519705212 243521249 373275202 838040225 140257322 790228748 895430146 131840051 497254535 191398514 763365083 115752029 366969629 959637371 652745736 550323467 258550638 520617561 904243987 16780045 292675695 281028584 758275969 12843184 187090304 170726086 796408783 430992105 490215943 670918325 575808730 474273659 991177422 337323071 764245337 42106375 226354828 817057611 225506429 333213721 916244187 250710134 30605039 889530804 439390169 94701322 447897064 296145066 176641139 600997319 186490815 174882244 873450590 285491578 715568913 839749639 705204049 968431866 235070274 435296605 268045417 471257268 322760791 23781768 3594819 857409593 722553451 925406039 323927588 966682415 907655114 751789233 51769715 340713340 130032747 979921058 853174084 726511648 95259759 654012116 901405862 382766762 892421119 896506689 631588988 307116470 229793928 895428876 525009474 199694828 505873801 793623734 298320352 672689342 408162116 290817430 741875893 427533612 77432905 326751271 92347434 4501905 714624874 127291759 252111956 531363276 977438455 866152223 175552594 442353962 681079332 439929790 438177735 147601191 14715761 69878920 556236592 829617330 594870214 795676225 920672255 455672497 114098464 368715346 967126726 745889711 163287322 579793241 666927221 464831492 179678546 506157821 554556465 718056672 500442794 818119089 570106423 209367283 618446892 154416543 160705230 871358870 146565796 823152754 79792138 745731688 526324741 77534832 650133153 933156099 410323404 548931502 185333616 834435677 360409329 317890917 999725430 535801716 957473973 428594077 677813958 426106563 19430946 812965295 540930059 643087941 273541264 263357201 140754633 686026839 593261562 484629766 55307604 90176761 710486596 454096151 54919704 894974676 484980724 205153691 564330070 574102048 814847141 807300256 796672632 367800553 886411911 931744016 311279389 346002966 416152603 755873107 48643647 325063917 624956639 990168216 894246311 602753347 993954537 705391227 606190593 503289325 412905120 850613345 835350144 575191867 136438712 341932847 89711251 154669175 540056911 30063434 42648119 84987235 331418878 508894218 993914670 776746909 260149600 193486170 306378410 90689054 364328744 844066209 939674883 456696538 128615200 341694895 363720266 293467079 766954663 660826916 782397172 139683380 839363335 818726652 942581174 72394499 294612241 828586921 678607607 842497563 444532617 565675264 700532188 982944445 78099716 347676881 608695100 358126532 476070053 299905298 270353850 308779232 510435668 299744504 589472027 878086294 604524802 532387964 618549021 865580563 117616760 50931859 503755203 98878449 632410779 419722566 392015545 353670977 940230274 902829346 773985795 541455773 767096709 854790551 326402953 214501008 169220136 725538554 955470025 52144277 292356852 972970615 244832273 756785149 329054776 39689562 10635086 469723609 184113104 443535466 324379605 333147795 996820423 59551249 149165324 68122645 784382606 353025913 626034974 675673824 327083514 234816899 50502142 876904541 269947957 62523651 174052290 633679295 470546590 658199013 560288172 487769388 335629680 965755420 233020895 38434393 986354275 948785851 215348316 936254533 857776485 35884530 276831921 333898158 333642489 628054542 120126262 956539277 27026549 968368075 247248926 30711475 21784536 231586251 937103639 96518700 697598163 170091149 345951604 991779299 107156856 56733611 543006504 799256462 685965888 283880183 39077193 47445656 8918461 425997218 240510127 787148092 799409580 880412315 972904749 309220990 736552327 62200223 688804692 403465499 830970214 447002650 876669784 678171320 672114663 741402427 739417190 846384620 108632901 854790758 263421394 25645900 948602048 5498535 870451449 110035152 570080427 980702620 317745888 270927852 784849874 614076030 358471958 819877496 603387136 458053447 148243290 421272024 677501898 234598490 702182965 667721599 196387464 60689376 453219985 130214062 2967700 329311523 344034595 563900259 214003900 233024282 851394217 35973840 274614197 374015280 413895151 608334995 443949830 246739768 901254182 304055748 737012376 454242241 617982096 135873861 597237866 945080431 52748707 928229470 502892809 212432383 134950951 350438727 561036442 179514668 638280830 517660212 113074580 356277554 105628694 164812104 236813363 380805351 612464760 267938944 333217433 223637631 277152711 549937801 221968189 381967136 232219450 297775803 697785984 182488677 578773432 662880281 195792344 80042448 769215399 396786495 822696887 774545611 423767702 170660902 183970463 351779002 510243115 123400985 332264990 13529555 426622161 738177425 124402617 22731914 644260502 878997588 905498135 269855729 545772562 469836434 278801624 97812577 887616826 134203453 594898256 965556086 996369649 397630349 910115411 454681221 480678332 93503932 65061405 704871791 675355854 258794159 488309001 739578697 932642372 259873197 762128442 712483655 738810409 729576050 131496083 934678353 978795644 209192040 241438783 438773593 773010982 301516880 834688615 337683504 905232339 995769180 763424914 259159210 272333978 188958104 201421196 25117571 249092995 247088349 959176357 198914218 316939115 933816075 73134462 74489386 32909069 282767773 745218401 890361366 544727212 89437860 591062311 98821796 365665778 485643632 725248906 845135392 489295664 126988208 874852462 429515717 19837209 346449634 915265600 808934010 480783445 330156864 938960433 460810088 465416126 81109968 921884035 92621521 861943420 90618202 696462169 925758073 977015915 429928078 946581651 61078737 200576623 509982850 754825721 161067356 894890260 419704057 999571703 97399287 84594050 421388509 764353365 487202208 410083496 670738633 261408475 548766404 899476453 472734077 553989018 357469943 89241989 375230615 872982274 579150033 513714712 242322217 380637672 241662653 302080269 94933057 133205748 157797190 900773747 308379561 527594575 74494861 210345484 76349828 76359311 690724422 991121538 815757447 310739782 203096249 214707878 265430428 37057113 237099917 195816440 484292257 857349430 331801610 725133176 688338466 91903986 299184159 419816129 42482761 176364671 523914016 57008680 29023936 381305124 853498705 177636189 867132893 584499747 538053141 576248298 646636332 222030035 606700343 599642339 95996489 768222436 384011065 729776431 219012317 907417875 13382620 141339976 768205174 14915536 19775504 313630766 523998813 327681441 216066853 399065879 756574923 464012955 139453382 665338526 880438651 850706384 646152943 360343906 452668507 308625012 489274767 951350272 998893953 527944335 496950652 637679406 620687225 753484204 777508734 771448399 35321636 550355629 756225363 33476682 150443140 163362035 450476831 346463987 392947803 595819834 308773806 367719854 793442715 742851073 834661382 648600237 765121789 922692933 799072870 277248918 681358688 951188394 502271970 202392141 966161490 848213787 21557047 247397139 583252012 71337032 581608761 607049303 217445880 587478832 377607026 402425125 149348838 710471477 115433255 821084364 334006589 278255294 27373573 782667372 213276925 1054289 668091941 619208601 446624828 765573518 469130669 109963242 885945169 454381424 566251943 648611103 872034800 365636398 933573823 841915784 724267345 832563612 120050661 725657641 251549293 228490771 327565725 469743403 844059692 876858883 268024849 933086179 9293146 668869641 232243348 980952139 979718409 71420020 646667621 538460907 270270223 497793670 807514738 328121136 947695575 219220220 925742107 339783645 722330379 139914230 34521393 688861442 496254870 340686066 708613696 571364939 443216825 634426893 79339419 791488010 853801232 553509699 779424977 292060597 405139617 527491890 967651387 326396261 981712689 608205881 420736353 347280842 104367611 697992325 114315313 119802078 989145048 753617115 321503603 542091746 630229315 536302102 166644061 602787890 98904039 14954207 125249435 925070606 85184742 709449691 616064349 578950827 643703705 913030593 242361640 161365432 441083999 166171211 646544687 848344459 987627706 113008337 672177671 592364486 856096922 956775390 278220851 9023922 573733515 161695193 561915933 842688689 724758087 246310425 185740586 10618243 407309120 608003235 127991746 879157016 868650650 352360592 164697177 787516590 888648339 105422437 20042537 634527865 588439908 721152695 989108192 704955981 158946878 141771728 393219428 142111649 699115199 451870932 557564095 529669482 594448026 929420452 87951412 525724525 237578846 245642678 919593973 413113959 518916145 215610214 828677398 653943548 768655051 502769513 701303368 311065608 622914215 424819197 278543328 954447300 170453008 297324708 140729482 731596619 270324083 399013189 159082951 573762579 896817013 420872864 809992057 467149823 716119310 269032953 869421043 452286627 237348983 608515444 658647000 713290899 189017750 351917750 10030358 153798354 599652129 306189893 395582410 305840436 932007672 413387230 925220583 421134955 936464799 593373674 601447217 192636705 616813899 560169366 656031994 604785348 281587432 45147935 940786072 392469189 584998211 690213364 900429911 363899474 561504964 166427100 274143978 710761111 22749064 304738116 146137061 63389461 949918793 783753468 460689134 680865509 315022472 690324531 768987430 196286649 920040584 480586814 974699224 43716623 437536660 65838107 140825234 267042863 31673125 949196769 371764624 268641348 857441874 927081778 128939703 64563888 602570437 719455681 44559796 462581691 746513788 860508106 974674273 750444031 960737701 313508783 166288169 461585216 718310504 609412302 864794028 562928272 848510192 462588292 292798134 745614708 838735806 573834711 780352617 726619982 679633127 887143955 40163355 317906143 935066410 921960902 627641252 505730655 574836065 979964018 948069605 627496384 619915584 150375812 964481768 429997386 16119515 208408677 348005814 672832305 770876760 823151648 431146270 990747100 328407083 806371386 313618719 831379029 529461133 270432833 866488762 232478800 750332041 251574184 732462624 232235200 2192205 800358100 566067569 566699176 528373052 161446687 666274355 14177206 423720736 882599483 234351277 444706671 14671563 486263371 602007238 868275900 105512237 415878502 150669103 688873480 391952967 590421826 783762372 450282179 156946246 384574145 832947027 500789935 723411637 165757073 731900413 399522377 944355480 71332717 472584241 432398907 808874131 830479301 248096192 204520876 258069742 7926993 70850991 253314479 73083078 743956574 738172234 381646963 64149590 86578650 413197692 613246467 646846305 939413497 363529233 216529083 677187008 459581765 590817292 696707361 99453398 17594556 242459011 173671931 180866582 339423772 929160088 263446306 118588535 275013473 291972104 537446370 148371130 665075590 260965898 651739461 321496062 617438448 273388758 821283695 17133218 884993507 730011682 737498146 303155386 882707131 296303976 652498865 620046636 735319054 326401263 84507335 202823210 958636455 11662393 925311925 792905306 477727637 597989553 696691558 219295562 839382760 521025722 343937899 331294994 546377812 447594248 931398324 435953718 905724537 176865978 41632736 100870950 403871874 256346364 122919310 990148995 938989760 978392263 159286167 956807505 908131703 821251975 425482160 842688365 184439511 617435043 875659843 979646070 459623236 704776531 2750420 46420912 103262326 894291653 466896795 983394187 300256962 482621833 589997184 301478088 525138144 871611076 951978241 789357022 819082672 542831851 79217744 251916662 761953818 943681006 497860775 62409646 13422883 30887601 690366973 584324696 446430244 66343506 565519255 138109678 361319497 856081030 55826654 174681 473175638 112947640 877145734 1548266 262033826 235328153 658493055 721678230 309948211 882690944 92912051 638870288 243600306 748479057 799384639 91595821 684330203 510136172 147384054 381424164 815675501 997198941 694724581 966079723 434959933 946831312 411415180 807543418 522131905 222998905 745656120 215653605 530294932 812954088 414769130 734017845 732450588 714658626 785080347 491629084 387365611 833327583 929064096 870758966 245821866 539913646 406855125 984145688 364422108 66896936 382930973 334616103 304273602 895015128 84734468 471575593 716187234 843809054 540281041 588323608 930069221 698475673 407024082 846799437 828072705 676300883 224678760 602767921 790176733 174795846 643608030 127570701 507875167 536741333 726769187 69144450 544055998 765225441 137388964 988295977 465990400 158305161 380463700 367309867 324174808 32302926 865688984 763711891 229994475 310982596 62388255 727011372 420851647 487798220 52242791 355152838 785859875 159323184 85369691 995172819 687714337 868095215 169455693 453693730 467813046 605138868 288799813 834159655 199296274 647034821 426771594 703550983 588696192 359961162 114209743 989474664 866177026 144253733 873104019 852981106 874281240 114530403 276829012 447079091 960977471 307764687 533428702 650535221 741087983 659064284 66576596 94304726 109907626 392002018 543069792 133085240 457308532 70556652 908607535 907920735 273514119 717583148 213553154 462142787 899847577 441514324 838092773 997264621 818841780 25096801 210606339 942312880 641637120 69460519 842073456 181864571 534399964 577557168 220840136 47037713 51005923 371088167 373102797 25458592 97654951 994049333 716800057 181475116 226871017 389974415 670369375 412665727 528712958 157893754 548190901 929905723 612448277 31543545 472705286 329741547 467010920 288594822 607567867 989973797 272474423 411975159 388015503 218070392 325912117 499452731 126313425 270854646 432038271 145953896 28657061 33519724 140257934 272278553 921056714 498842218 168890380 119059371 948381764 76889247 892005857 541042465 847184285 261435265 401180408 503748821 146252943 173230388 201186934 981973383 675602646 819717047 434975211 238967628 140389784 493440477 514710202 404104432 779345886 950019089 112478406 604221098 775541218 562558214 756659318 196768888 694395532 263212185 463135328 919456644 361330876 687055478 141485806 659921689 756898306 677539291 115871036 700586719 892362076 619522749 601081297 853917727 972897509 371791263 113939716 299233124 36369428 889097036 195099742 518721420 939924466 23749033 427011580 171587646 828363011 564353812 253343857 236242614 429412201 110953465 876993853 845482217 81346410 634578088 885184627 163855027 63170524 709338110 564494950 548028726 352020083 450419283 542170713 78374423 506476273 172721138 112452622 746732329 701971648 21615697 203504364 327596433 567439596 704919278 616796595 938536975 510537657 383765509 919614737 729922183 414043127 244398826 998658530 616859942 698938866 410617259 168197553 109278191 77171793 109603084 143366628 366944124 303153244 765457125 407093397 264024521 734181701 300351012 980644989 972314865 459995736 704854785 32687930 431784580 7733479 925248105 975551454 232391075 241740240 805443862 919711801 24914970 838301951 329440334 601080530 52211792 482712364 956098477 762605521 200187336 245403432 824717915 900843253 841417439 327517405 743412726 795141439 557250969 694866977 973842906 221058530 18168835 428702482 617919629 35241860 759708735 983424736 758259224 703458308 57283084 883807193 492735629 154376393 680073727 858337697 748325571 37033472 178166419 908110505 858431396 741429539 77840218 194209206 296966351 376509717 813219602 72879861 969409178 695061444 631787892 326925221 358534545 842355101 790161370 790783851 794792978 388484331 482033207 925340610 13220399 140573448 751771490 557645093 496217021 720641186 817201003 579585558 464328585 110210738 681198851 798602090 172492146 319384666 264788145 857981189 189617791 404130554 391895389 99950888 575746539 779265186 354449900 271627985 364380608 34571318 582455641 270462852 990997703 18816691 471944725 624278787 458095799 16811664 438391797 964189869 887884229 351748592 902619443 47968973 372462585 118813131 192926758 455164455 151526749 356448722 177961751 536850557 443683713 209602495 455353473 421291555 488881741 894961302 582089584 229987311 432537256 920549888 501515572 800247767 775568325 590156840 469925666 25369806 221233358 924578628 286307792 823485737 930076176 832289029 829340789 256147675 52843747 975473780 443865026 590189421 431691479 163160755 425953944 787323532 677181224 142880790 864847572 502913199 777379405 721606181 187342107 581151764 799827130 821280524 393572612 819404277 247986768 252856589 687224539 412559840 621910761 468209690 619882274 276340203 583321049 612132196 411158192 127256794 920201336 615355620 615102785 399344278 800707156 604300312 152175559 568545608 354492066 836261206 479037099 571209411 106022505 46755007 317505652 526361644 398928113 28336232 204073880 263399247 307100142 152262443 265210050 726244720 427614923 559708395 98735665 704944568 676887386 212327317 187979149 761257268 2999870 621188985 793847796 325724305 87967648 318523716 96719040 972469448 282438416 246024003 570938424 546367044 260978213 436827203 350300849 456712792 249233378 217236237 503146798 647785298 570668015 106642612 67364676 917274347 920832033 486576557 635111986 283155045 451062605 232477440 443398130 454536226 947845220 154817138 434337667 862358798 743177345 335961479 899108942 611225322 426541432 767218238 187546695 555885660 909852174 82710813 831930881 448162364 127504903 540540507 585200098 683122696 363942259 773462476 29288013 482009585 145910134 355488612 933837022 413885636 262037494 996388520 478231443 418711736 127068874 953848961 634484122 224551589 780740572 474561276 542925960 186483281 862659436 792438161 987083887 978424200 269776698 882411165 182909448 152018891 521320885 282044146 252224056 166516391 253996693 138729769 680647371 299461970 711615315 728300960 858196463 681262094 705711212 857574542 511058352 191894668 750019809 8397998 524036499 133575907 8125531 584397154 387246311 385083333 633754456 815484303 538264366 41276865 927681043 109584470 507964525 920787093 362683316 661074373 678696850 730872982 179149063 59819540 698403876 680250924 765855518 381138417 774984186 267208880 792543104 794875588 407127402 1181487 823495945 988139204 559640680 727379416 833384137 96760260 907748006 896118074 298785553 922650216 414287525 324315121 574451065 662786038 974970141 797130724 516635456 693102835 587963815 198902006 543003812 298007175 732053544 977049214 360682684 270580554 988661540 696342100 372457842 321087008 52975119 918482584 318877920 289163996 184681624 401326549 50989014 158692444 281328714 334229767 670003523 350352730 609867104 507058622 516128253 752930668 169832186 338958493 550022822 950880058 398040260 994331571 98966282 520871647 715002104 370396112 666343820 555404207 309679095 385545134 496642656 62524898 234861737 31427127 496753521 452477517 104055141 908277658 200754558 998180758 868392351 539394554 401784959 565585234 772389881 673173218 275293883 573032269 310856391 612779521 212446616 595147717 710384977 873247927 406712606 894982786 206990770 247126712 631406573 416799919 728491905 323708159 282839348 819364229 807714793 651229426 724572860 478662338 91533105 145254477 292512698 425564922 355208736 134129294 584749863 654827436 196471724 544766241 307524232 197138751 236507076 921674919 786445461 13874793 182489620 14623331 958947676 496307445 240124007 21482274 468993377 237805232 346235285 520108469 745693423 484946722 719813895 474969375 582366233 322867654 584777031 981989595 158958515 118391221 716188356 320639620 619092317 67587602 472292187 805703808 265331057 432927489 261544833 195277879 908223647 879331778 385526752 238217661 45016839 910690966 726625898 352837958 209926635 342786079 670190226 745183074 10599057 706071269 151277122 587093802 515956091 150788110 702127144 699579545 441931597 798571868 57563273 966743324 73621289 419187819 710194181 843886693 766943316 939406834 961705624 32316422 735682939 333133222 62675592 620687592 747842561 735593944 829695287 976133273 272746514 600795998 909868332 192858432 444484043 565291779 625872523 933934004 128879991 900714809 641567954 810035855 719261300 935133360 53164612 625718450 220579495 10299319 972464207 890325160 188288341 702422444 647012248 122039057 469447732 113615123 417662530 245800477 230730426 12856012 522968772 902009928 54560377 49966699 397167769 331453839 477635094 618250420 106223819 656026846 975258018 793585354 574036084 780335375 679482961 488528203 825171512 423108710 934115564 901574982 280565829 273334206 780021058 551381568 613349021 456021528 541178968 40843977 528212825 347953432 463513899 107124281 162726714 842506363 694658612 708536166 271347260 182685079 94658612 663837808 566287645 196823332 382046972 254504861 242798505 135214482 288519988 623349875 647761662 200150940 516553681 470664117 599400674 294256392 145551637 495066182 729994241 293238357 806852322 352250372 15183711 198583569 306966416 821981837 499435307 778337878 843761078 513044131 392745737 361670585 88287629 756718695 290379929 469772337 620661647 480144605 375330041 583782612 145393552 106828088 392846620 583468074 637486700 242024491 903546697 808282022 645168097 199917262 740846673 898067374 573053846 42728005 311813215 702267820 868498782 420843012 23267577 704784841 623021850 706032018 173008820 733579162 218323332 655313887 392679093 329561405 789893767 77127961 889193334 444891158 473395573 389068713 955427391 4796144 310362759 469262229 913421800 492070725 971935600 534553588 675397489 739137796 519313911 364439724 395034689 201161167 537434422 515195964 905255591 219501039 141273906 45371956 581366532 855587019 942515887 145214516 764131174 169355022 800705902 816256941 325123778 655938786 185411218 753096812 615327614 324018707 353244149 371173693 157012099 648518795 668538093 123298998 956285176 443681957 497835502 522394460 123568244 755701528 826186538 722780776 275545246 935861034 529306517 123407528 966337193 789005075 516316409 192794548 243160 328565282 904537604 624185175 813119286 555539443 562916135 867157519 157095365 144390617 203210165 663221943 127230674 813545969 148118331 649269645 376735847 166667455 313131857 259001016 63024652 562192223 374060935 153359342 953630 949085476 753613892 774614219 480733333 573004831 370134286 974402566 168717337 526327429 699272050 457126022 724978723 636676867 730236826 748070464 289404836 910940610 163066259 394944369 861461844 554409327 44842934 921345936 462753265 212916303 798699273 550408879 725485214 61754362 321321550 215447295 492463816 623764780 374104369 514762189 150722656 53829284 967678843 40958650 386937909 411386907 127169251 509424650 675333763 718958104 69587813 843556594 782497090 542793982 205010731 14947380 121062005 552592754 189290616 878422293 627825026 849343242 219081985 203897266 456475267 225655692 869665949 430829477 423210901 930915720 867837626 821110691 846766590 224121862 162334391 675723609 729373380 695626928 888469743 935680477 563126085 656221803 514273602 302802415 955396827 803155119 334821182 61318571 294391718 986132648 87646853 989505527 720859238 131900204 701854185 295113982 736944738 797711032 959456642 365042389 264451541 924175036 550063643 284716507 207309123 384424730 783071499 36762327 276902742 303349524 122666202 438731006 459262883 39720444 895913030 527534549 207355566 561797288 826916381 530810128 371508559 620868442 781821742 825737282 588894421 600737579 463660377 22719621 804877432 920696230 863183965 875248324 24315685 380891362 75513433 697100251 614019347 968784443 549271039 141306451 890417993 3880279 852632691 845874248 974829957 629208300 902196685 483989599 5769817 247885263 641431914 775682592 904928248 107434870 300949268 61821775 764536513 167156137 751179988 172053510 860088710 872488315 33461149 884376514 735694439 620471808 863838391 474608806 466397052 418173433 299488990 13118774 648733663 48581540 538260772 624674944 159350710 832375702 594260772 894604453 855527715 657166211 869494541 641614777 717418083 610896901 539617503 854971731 753915336 353210049 739774828 665233453 959419424 925154029 223186692 935737568 2857137 222020991 17912547 578938948 872204835 152676453 967394957 387146970 371372102 524907443 604209906 490809027 22695296 920535266 189656055 157213280 565720416 190593979 227687170 424701091 521332739 258613880 273272103 858184271 849567187 617507711 547873033 157153107 138104833 547088263 965852008 250087340 642557228 762909015 338012041 223488253 534690711 115172300 931362251 598641575 253134274 21510906 940641 545266507 926095156 712485649 766930941 483014134 918286470 219253460 726662458 300390003 640950918 508271831 465233594 490003835 700456477 742714473 797715283 287895939 877690854 338491171 532883699 747240685 659740124 986648508 786504261 543248958 458503899 799776899 456824082 565864642 381335594 418531378 685807393 144612066 99316368 188352280 347576467 199938172 77721167 641764188 268151975 433826419 433558747 36979446 202484427 970157744 486895313 855558872 541171828 121685605 60624592 439645277 421837237 819202914 78880580 795885841 496479376 744902737 217750273 544876765 715233799 290249828 767791223 666233734 273781328 26193372 772174250 628823814 810015657 693341990 648839335 954291863 511492977 271897356 562981279 459485197 687566679 63318610 390927313 532049413 746547446 775405966 209926237 773905555 292575585 997061292 785045903 304637171 487973016 832807747 353845576 715904835 292029808 300776073 77216923 715832885 937531258 908282040 374959095 97362247 678334972 801106107 212015592 602325197 302581061 15567282 986301494 474546853 501424177 208199717 834617910 770953374 255065531 40156007 95770726 58057170 583855007 651138805 538209769 404008416 318490611 883951455 464982608 762318506 197430339 496279132 671982690 833180283 580168072 837082313 386509434 680592903 703568488 760240058 361436469 281356205 81196352 485933594 703619028 609656634 640409871 898418941 860355333 542089404 526674092 179706024 449552572 79713667 78165247 613357125 428243443 399970377 325984757 899382143 454601737 429239791 819276596 29120320 408707507 415244955 633779465 180986518 805060871 789561552 838652260 9007805 204764779 160968066 671052871 443798301 928421854 588791797 441094946 306076039 386689979 963946579 518030724 934191254 929123966 314664108 437219842 91124770 513534896 414131594 901268330 976677403 835492918 929260159 800964639 342697768 998994162 8719739 55374208 489582 103089694 158537919 286194123 861914647 99138805 136071037 404277827 200016760 795995093 939678206 873787854 447904669 936497912 189854268 673567772 538951183 277697854 403510078 93553594 163362206 638718533 180852201 401336176 313844553 218714998 146625659 243486749 369413078 380588013 810232358 810360841 973273587 525928677 777720432 442791906 546138834 817817553 798274768 658173771 278675111 208828742 38270626 317533912 268090984 674329008 112799510 486206087 262702831 307479656 341106780 204036534 865072512 101261184 391589980 246154385 703090083 326605560 337282325 470880017 905402800 586510101 212285886 224703702 872501394 704776788 335414242 246034730 328213902 566420814 807324622 633154369 151707388 523339963 573777653 15244528 255182757 14152046 697484565 642982228 896922606 918914030 320884641 344143433 38232496 236412935 278464685 241534949 579292521 519936047 315503444 191035564 928204462 698186789 578576380 389528416 868612750 749430902 830150175 25639617 194938965 638960460 561808242 543782327 892484865 219445040 754197522 836408583 513033656 497920735 376931151 495898786 355588409 88259189 817871277 588172258 960925550 854434854 757919749 773348121 455841046 508434996 385649115 585635817 90390687 546004233 823112756 28545012 114827027 735829379 699359118 49279435 395685219 507569439 13386104 575979911 403664511 939194188 479622679 778324235 443025538 194153576 381041229 565666862 312307965 903573194 496170549 173358923 998369379 486484515 620070108 864452264 490534122 605153466 279305866 909849544 417465043 748900766 884613986 263087960 300398408 168505270 805432718 852732626 776683889 270641037 809489439 361242208 843095460 636212610 574064629 117296401 380526988 829397995 578423119 234340468 254349791 774547234 149013592 170757301 621821223 189729545 445770403 536437 265404362 103213212 651426936 187188122 824448513 594936111 523520645 517376712 515319729 413072136 631723635 939556425 483461086 71819766 888245447 693563170 400056794 622931113 495620223 465714475 4286374 340793394 136081256 579157634 366437639 407456185 633820805 800980710 66293288 919277312 780971282 662700719 509957943 935888868 792550452 147449988 734764975 934761226 423130987 526372176 489893021 430306654 291892045 628357435 70967895 601336032 357411655 199816768 723656445 976354964 639988738 879447619 933051815 32907998 731732549 899514083 24206144 269163631 226990741 540569689 891552987 578557961 424424391 787834932 976256997 576674271 191968535 752988347 132661499 500466799 790490100 414760804 167566754 232084801 409271232 630141775 936859967 769911643 53050497 776345611 332747415 569694880 905761615 242510036 834856546 329176812 676874224 526077335 327531848 255352785 622100299 135670449 124022883 193736679 547256195 218953416 59257814 155288125 578243159 694983122 918213436 915877748 587151149 256007940 651097542 363994456 435081743 457805716 136415971 480412358 542162709 377782352 90635393 147096224 265935037 509455347 607984786 245798863 299660143 3618492 323123090 935134751 582240345 199688540 167744740 154493974 878641897 121486233 300753238 822064207 950293777 326334459 410356490 677838163 572542642 792853008 885302248 956716740 787350023 211292892 904668389 258353817 557307533 989787685 247281040 826140818 272725614 490908865 459280101 792757899 852082436 967630649 689825843 332613120 99662964 616935686 333903961 328568705 715894556 156735919 828672461 735408469 565841478 197618768 475136561 339407730 636348259 214804953 356047080 898814709 491364873 489715054 343157070 567051881 923583091 916145984 766778623 701595372 933119704 314844355 379778311 726331380 680381802 897489802 332394984 809679945 893925486 782370177 138095343 717170949 6588782 195270777 622256925 947828129 514436460 165195985 188842868 627532526 893167879 73743396 224302985 832058526 910760065 747344944 721888290 322569927 441605651 189233831 21495130 207208554 877402447 550336432 753081651 152559339 48308880 626437218 482545355 603002506 622082479 971080954 893591853 713784794 364134168 988343634 528516466 144206126 201594335 743489846 670190729 291134843 807988842 749004566 499329175 297921212 141082244 231819491 626685301 678464422 812823632 974811997 109067188 359489577 560739788 142361901 514742993 268950400 90004919 328004320 700405609 499015944 531679031 613729245 668053652 552926772 177966773 819326920 731131772 74487819 601222761 605632624 521112112 691194923 93899917 882576855 144619584 538816777 7840598 983193815 722774729 897493675 246467461 803764056 765720195 135047766 67711383 245505566 233500597 687872869 873909016 753603062 561125866 170166344 613715898 461788142 155117909 339053571 277006723 83914754 613293326 816488918 752052909 708315273 769920995 667272297 494540035 289194739 7220327 40046890 887006662 158185595 753762 226800979 526662899 77174327 412918409 914249837 328406081 853561278 647100990 163685856 360580437 846013735 903761243 472335608 488352583 264884818 283460228 167135518 385619321 276660044 616372334 484927424 922703842 197220225 105912143 522998221 568395578 397252693 71821830 823055256 64283415 636362507 116592878 284422248 978628862 873053667 36178605 287999058 19361663 183276651 849959292 58784775 734064413 577304521 852829416 60263498 87465439 487214010 443429869 374891625 689205699 98925724 586562201 233966025 874415319 122488069 238977348 227341736 470687414 874233183 241332775 843146895 243610587 746460279 682354169 351578315 832148128 135525436 960553142 324599551 207905560 955896254 513134506 744366345 356691461 73919403 125579936 638990084 445931671 271872961 75643837 877371786 381616999 966387507 310679987 582428547 305965596 67700472 250618470 683815054 983795522 450173676 755866465 190865375 546385782 552355052 730428283 130018208 255038263 196723734 772625408 17640284 296960321 938008852 252982603 208704670 328537264 96958427 750449199 440888248 324474284 279105278 101593924 555612927 233194099 240649826 877654830 312628554 990079379 998325663 406853074 851996324 399210205 457639088 950279969 414003533 958926058 518140985 592496811 915827802 138927689 414812931 517003106 858875757 860796476 862967128 144697427 688808550 884211930 476524675 819439265 118487471 454144175 366234642 886254064 907081071 271457226 982074825 793307823 501365515 181346309 881236413 974433174 476785079 810255739 29650591 530398696 748020429 204497293 684200147 173994462 205130866 687248603 638185905 194116307 559953668 790744735 951662452 313336540 232849408 672764319 987648272 963738350 730313450 700986545 274039364 931317987 894859148 884965566 374717962 133594384 119168433 107282068 958204017 409866612 938070739 472018876 695216919 831067197 551359333 944930745 913852609 341642204 429540041 329676778 813247044 691066835 957048993 948535775 239330207 765149877 480786723 706822983 843004479 787004163 645179398 803042010 353299329 950765504 117138865 815228763 461285776 413879904 53817633 944810581 675934057 156535130 961745784 398151396 77983319 196516135 231647816 366296395 221451684 323379354 302090630 521500968 8882303 61158147 243571189 209892685 528959589 156284805 326570446 196914110 783446494 632928056 801130622 570029279 769599002 184893446 340449478 457223438 35411849 433038743 411446329 568812873 641668722 833617481 627708041 257715491 289652471 858553245 56184053 664219396 138465801 912515215 242627205 294098027 170196263 547778671 668813495 743610334 65847979 962493158 470385628 43465976 258291989 539958188 97638825 723724874 935904455 873115182 501238160 503812239 259221088 751602861 373431374 702133435 567513294 626862639 627095072 666379162 168616488 525325971 210207738 412818398 830517390 280206782 74421102 94053096 63288074 730946121 73770017 901153162 731457614 144284276 801160904 126940368 839675018 76998785 8545751 334005662 575384922 678167821 452075938 642896393 189321225 862822762 305672011 878169842 530255655 451866629 854691777 853974279 727257204 673363452 913204681 430355684 909695980 140414971 573871159 998397086 884833999 569610806 428339888 481881212 143894397 70852333 200538192 760779590 926365122 758576841 963196293 102391547 84994959 142607039 926590403 671534396 840971216 279719501 466720933 535003664 634964284 759341541 690535795 160141500 279158369 713497283 185984297 4454157 535037344 532241045 738815996 852997331 616587174 491811369 538994916 51755843 100968971 841222682 714174314 588964918 949690423 524332142 553765715 486444494 873535397 764396765 68256784 309136774 896262373 639932919 824092342 515776045 62483188 60120241 471015733 779853040 675451573 12891156 658968310 71829132 64387433 50072954 338643237 587619822 573700577 581907545 371727251 961795245 925699061 955476663 777445702 294287980 769127875 342990404 65766904 466613053 150892022 643377674 652108456 350363518 348139472 473674260 109990987 99871603 808944758 918308218 925747793 673817639 313807279 728865609 592654084 415347584 840416522 415213135 174829068 790470310 786745175 721918896 801251991 272009342 561744392 542194721 115541984 684335488 219996480 755212414 358445437 778115443 572116724 446534286 166831689 255753307 406320233 225131582 47107171 225175488 407035159 817596702 907410113 211495856 615436191 207662942 758828149 241220412 979046468 184517679 600115048 867287269 714834235 878350136 854269937 802339774 345273347 37707125 647294937 958661098 575994353 867163858 69605912 772460637 575563395 387863130 477002923 510497220 636715081 245855380 433020000 593102187 303164609 489263848 976181118 657307266 227335861 183274792 856749174 233534061 869952405 482943689 201174156 575429651 168427935 746622477 922663915 763847632 176365674 363639161 564394741 180910587 272570101 411227498 599242102 740276258 965418649 220833775 953247984 897865070 87583455 502278992 376556987 170213751 872136724 964106965 412009213 742459379 775609271 271621360 174251125 870533854 993920316 354014639 880190290 493408476 234740368 4920243 727013939 757196011 750245197 30952352 492460338 231622328 558036394 864652303 122373072 746090071 867222317 61105831 801234117 791011600 13555361 342768080 545353509 484149067 41035211 446684987 97507215 171646250 129683123 376301975 629596034 472367164 553413585 756796673 501649648 380196956 281785408 925683401 276219960 943953306 491959288 802694732 285334620 804776886 340632105 50516524 992695231 203652877 514559269 565349217 248327309 578243700 695658857 340107348 4129267 679721999 775416548 390818572 253118177 331293389 287229064 486379738 129952913 745103486 769300357 191418756 425921341 566640679 335234131 857073408 52763566 614463200 277218090 67088915 195349853 331826897 746251830 564509088 769778516 520408875 246917972 381495669 488748326 52024163 650188098 762435243 566092435 264831865 268974427 335938341 907701409 81307608 608563123 774523611 799420468 771266445 159765988 960042125 493843692 259599287 891962770 275667243 240647974 486319861 802326873 986845367 682394840 739364877 780279086 180643372 545132119 838156974 437644447 950250069 394446840 862791348 216684408 260523709 514919052 197178851 55853020 106093634 619668876 143823196 180870395 308665935 179632720 643106452 631606602 42048977 220383488 309447673 88698693 224638048 801432260 636709183 441699261 804593950 964494134 530304721 925320525 648320091 734554520 305414821 442548994 105538329 719338067 66983164 876672026 119788679 962130413 171661710 141244634 83675531 541437217 18913381 876359276 166528314 523617590 914056388 834626109 367493272 697120576 348094316 167272545 175208668 941466284 85306129 516739397 726982231 547783378 230968289 197961936 740445275 46716742 335058052 59113181 996712012 609104825 943263053 455967550 200794863 665757430 787797482 370238653 750509920 451753622 389258856 347229360 976873975 247655321 776094583 169136107 232022987 670055399 310794917 282003321 578870581 890688311 260208988 882051825 924994868 515209746 923963653 983085329 88101394 7768498 762436192 806057877 713119254 200154150 350668565 684723632 198755167 787867344 683257231 932960228 127592747 38957438 358114864 550065542 921115836 392758015 636532409 765507161 358423419 135413406 984233650 821907055 964795775 684434975 705981444 784224953 385548573 461820368 472747787 711222588 560742421 445484604 371035195 587625802 967792121 367583492 299759601 981167821 799926734 344105473 286087067 545727270 363924898 643496584 505140479 89738540 493262367 581479016 743650806 895962935 881780759 499836775 940988508 158713282 299563486 113779037 724424845 145412574 609084090 95438859 488327373 811177020 429852055 932798533 281394935 203761955 239383845 532519210 994305593 395723060 343720216 564873323 239659327 463291002 402669716 454130259 213904581 817824985 943045472 957469894 191535125 159985792 557038150 120448534 741478706 521929882 929540273 294695753 711845897 926646125 550172664 829538663 448148166 823275786 129916571 728123087 499216284 373681847 881770341 998425988 672288255 985562971 142485492 525905591 624032776 667611401 692478067 786440146 739314141 721063657 745506502 247140900 515476354 912547047 684537845 426121787 682342183 940636793 621834853 800961999 899070823 64725873 218707535 743148955 632337441 310317230 976110478 891116160 700961318 791172133 792889874 753393147 523599911 599172528 871314070 205329604 897603214 970029789 324239275 392474987 141421626 993573085 682097764 581569792 132751166 93171773 778827536 977684938 718940926 265750582 417316263 775561980 551304364 163931877 596263137 122856787 188914031 216482920 577374181 64423151 978848291 58490362 136820456 96503475 784522437 874253730 882815046 702967848 629770102 147133905 500900715 291575636 726681368 614152282 311482396 144750255 867792394 175467473 805150992 558787259 845458279 935562677 802494744 136717029 329410827 400617483 421231935 315824885 704868588 429251728 944030709 45823258 330580020 367144078 325853223 427259187 29119825 781078344 123607334 995891428 958346765 783733879 503836137 473188181 99599302 525661561 362981182 107402921 81902944 168057550 642375002 609196433 819190265 690854539 780160923 193496744 872529113 202745797 663963140 165042414 988303161 30471785 302334035 695515559 769747221 716037406 485983611 136816164 607158084 126285850 507522719 544620773 464767910 73971354 314796731 318412137 119801024 574071917 529701081 461945302 841196633 643096437 621205249 960717384 888498168 521621706 949557457 137965647 779177166 940227316 31808147 847525622 896182045 413774946 227847974 404101010 983294237 911780236 761552632 453981734 639186811 592082625 547304621 833669347 67466782 2771661 200181432 6257498 831648864 142051713 691067830 653011114 47857063 742992692 964075495 69468696 907189219 144334380 550066293 974057174 621961902 72930533 410441634 932504501 542901722 795595004 224819296 556477362 865266232 275260218 466890495 336880910 266163885 23357690 169029030 121313219 937693608 56493167 505976639 159160372 106787841 839336993 894705935 472876204 898877452 167876017 13237539 775815189 613443743 792236883 543642709 628075563 558088400 317745469 470768539 199472464 813360529 430208002 568718754 938007319 252518462 985480630 256796416 404540070 316985093 273928161 141957488 837252907 877781237 273913780 41306730 461330227 614954678 517156115 720238061 808476234 806257316 14994071 309194441 458144761 685304403 333704677 146878304 262069841 230374472 73264481 809183079 969862114 290716592 606122545 365033703 113553713 991175271 213373757 624296495 383935467 327170204 101780620 946890735 319508661 776730406 956743588 882330285 797067556 176658519 736197045 935109445 138255370 369395698 504196913 196124715 124861057 421769401 264656236 282472730 16289635 252967323 99168359 996889098 84584399 465852976 299843223 416683300 665547070 979953316 313707668 172055148 80629175 991827928 70947108 201027673 318136852 836525843 629803360 614369451 625405518 149900376 450183486 542503105 105697282 775026448 660040325 655418536 757857384 499605591 204582351 433793452 984232968 695578623 537868687 104138752 944783427 869986430 719710304 542276735 67054061 747640147 527263335 189239675 346857756 509671864 914709266 674235981 178559458 874398858 392163730 470514911 94782243 405192601 241867211 633944235 44205502 266519961 609773675 937104676 9974986 65485542 768186193 77069507 983922786 893864277 467460529 171243945 985404494 938122927 832572413 871738886 180826643 244876969 843708018 875860065 904531588 977437496 982296226 884043897 435271978 18523612 75071376 734871455 311810763 981120128 243128381 791833583 314891489 801403404 711262670 166240329 300527710 208261750 407064616 296532118 492920612 295435111 106877749 693883656 771585399 796179679 789197818 913756386 511153062 582607696 764923693 999814110 526336278 203757459 321394587 40894474 527004941 752007375 132647385 831684859 483197296 777572746 900967872 244593099 711295071 996021157 145665602 715845385 991343246 203586027 22140061 268138559 578751102 965370665 660655036 263753111 539636050 431565252 168712873 51632418 862739594 867540104 379825234 128306192 73592516 728257233 299950650 529074946 740460140 637135091 143880524 651566890 139339292 976682998 33696829 484113792 765787715 391965769 547067749 894631835 691380766 548957230 831279650 539994866 834115450 452552546 244159568 504497038 555185637 583469348 955367691 394654294 69031931 90890812 490715202 327162438 693061509 526518484 169296065 83605642 44887969 5184735 412368269 962936897 596008569 420902860 771996934 340156734 196896632 728365988 239188229 135816126 732885911 569931683 5858222 334896881 994211509 929599123 454265245 40472361 695465569 393782415 399324903 251006504 16277573 28405799 530779456 866271730 596515981 775250880 820585854 892517833 33222194 422372479 42251572 220306361 429402234 464369987 229525646 921899458 736488751 828979653 39302412 113904717 516435687 216090652 577337328 20179081 852853107 69422465 392640324 179926381 537522492 857060437 33839510 313673005 182394516 46994815 326007933 258449646 849290615 38913988 266019389 224540963 477829242 512420519 303421054 136174645 818942002 560522223 299106068 480538586 516730564 948456907 490552729 94358889 142893358 93280738 964361601 975785110 641636612 870386426 266321281 532370325 161777339 499362354 41972698 807236246 899031661 335018995 238004632 283201204 144133935 643047367 836019586 346222324 903085287 857079289 819652288 802497544 12924201 588881943 299935061 707697693 422856461 560136274 115534302 485075597 54151587 931684934 602049171 988031895 74154181 291010338 688833675 341456410 312497651 280725833 7851391 24754233 374455696 218240931 237296798 146419860 448035460 774325627 500614929 680314295 414697744 80206184 641410555 959848043 685584376 830140308 552052042 771183674 802972445 528382014 807678286 476980422 424202925 136423570 855715786 693267009 536787144 208291390 33011736 520062649 501750434 205157667 555427194 443083727 751303374 405493632 25849636 243877807 945090047 129180323 434174552 831749171 623914641 38084726 222440799 210794334 671636382 25447057 890818310 938336532 702747755 183318135 916964739 880970830 410853684 157804008 215656659 1610424 208370822 795678236 511225879 324554357 807184780 611139904 242269939 20604330 29829287 692266241 922714203 785498204 907482127 671297805 330780390 812337584 381457743 928804457 445545007 782381149 542637863 313172241 375640264 758392628 1229767 606386074 174565685 608822200 946107741 897659193 414883839 193882176 979742653 809604479 882255716 337142779 413380266 949722488 16652155 426574872 613935775 542795839 584956137 783516000 630684470 833590549 216140545 722526654 729915233 693350295 195621467 458608577 342926159 660812039 26215276 133429368 249387928 6640428 864669138 932791258 334352370 970932967 418079055 759322930 644928750 181998612 287673115 181984967 691906084 213291113 428237094 79426326 961370001 909707835 506647714 324464053 825448418 136803006 589038677 203580756 644324488 997211447 829427786 109543753 465455595 227980827 976752417 99521371 82126128 967457728 712803175 159073511 592927022 366160250 520556799 591594255 370529257 239671437 282002495 207791008 542389704 471525975 674292783 380922506 300346614 675980830 210247471 939292831 18723796 486388136 578093852 894932771 825862502 150432449 2965699 849699574 940694684 556402109 28360029 880729096 931418970 28360580 815362070 882378124 509454135 531283037 526557718 997124466 21855031 24443203 732630021 280599643 972091205 962226356 797537907 695227786 781513469 73752250 201781895 701169683 317472567 143186909 970318118 843847216 607344898 694780465 111714701 503159910 95359557 970879467 789296069 815146757 551211591 561965548 494459885 301305934 378856122 928781987 903562218 77438886 109173343 998273738 857640756 297613892 176792196 878190509 560233731 943396401 586625976 180596084 16111089 564615494 860884333 969038864 538112009 233870064 507802787 967724032 637560457 43792396 943341294 709275987 293887202 553323155 415155176 157383667 598574817 736838657 715424420 722957048 568147880 526058927 596021889 328211642 666178432 836701134 492988618 874060867 385006398 827750310 807744458 728673168 132150646 833227285 478218372 246455118 984443562 319975180 386210415 749558972 185504361 979619091 113213949 907906711 815477313 486842232 483918841 318233421 862461438 901898861 727910167 788791187 22220005 995603658 437447096 992106437 166631250 918937326 167657098 589061595 879429015 625719899 928786463 884066544 307986973 330097662 500359853 116730965 731419888 652249638 666761288 739812683 805600681 600424467 202595275 371026588 120277532 400486546 36029496 809645898 841977443 724125040 511290669 809832854 276421711 827929455 504272708 397212063 949891186 904500607 328247896 762822745 692526805 238938901 552251695 583768123 502645236 780198276 7415019 120744287 538161280 935451852 327184166 746190556 237905059 387504898 586265141 782941034 551072954 248007144 624828668 343825405 449695333 464291677 234423415 904996570 428851239 431025604 41655808 691626609 703631523 681378977 575573565 181409548 506718334 228235600 194692053 95817592 83925295 551812350 333253784 612255739 923448798 749731509 375229551 902885542 453563448 826804426 706983892 767360479 860610769 596433818 430676546 525687714 716476334 802742884 956614205 96259748 793887750 245716721 754753206 601144849 234229853 210099388 492103728 653376138 957694916 839266642 85602135 837694527 497968653 642419980 370356978 897549865 806050491 61803736 102223766 507202682 398791496 792090905 599988525 536151380 121139634 776824920 290579896 959872710 617079904 203113290 286521551 727383178 24465338 759684284 95859613 97407411 831850557 56950937 823368940 209446055 149813769 799065313 862747897 570751790 998468193 207707136 42687172 757114830 44321922 85312542 528671589 800438905 576748308 748615173 268588432 478867190 198437893 118556103 870843568 172019458 550986100 523466874 786832456 750635198 887467534 575142564 988062354 849795229 522840289 220431472 157448676 581830096 556284687 283188618 977004632 128411271 177890219 820718553 537274581 362353859 950263335 738785353 696334836 408814061 455256420 534324723 544806472 51310581 57855096 961027602 87014094 17799287 681047301 199316653 878722837 339870036 917286078 838798808 310293806 699965177 60193354 290156949 383527627 594639494 448089459 724322419 748154434 494286618 56546492 328755956 453505912 734767742 847837267 907273819 565371159 362337309 639584670 769609741 155429349 142701855 343230222 410291500 426487844 130271445 901124553 981325932 585201667 187680070 371972390 273131491 571143388 674757357 308364611 381752898 187384821 258203076 359842696 693374377 599885729 640005906 568398261 862160320 887874162 351468326 91696167 65508612 528668204 254404137 45328624 672192368 40170411 485493728 242027285 51581451 545254548 262589003 620980522 788941992 767338316 994218135 514676773 790511652 66895607 824683921 162789622 873592672 931184322 546482629 452651634 274853989 341738666 699495678 560854540 952029395 392483862 803251417 662574051 230386375 811696743 178557711 765683946 38739946 756260208 332831667 538276420 827063413 250022924 49513011 314913012 355552977 128862168 803137410 535198686 57810860 631159639 291887149 228655530 705276142 999326402 879437320 763062237 242931319 327892714 850720750 984448217 153681948 928036487 471156543 318607402 679633578 701372258 932602397 773384173 713587781 752505309 557993981 321864425 576889561 730131571 498197641 499170067 416192941 252390237 385125926 454066047 343054739 275715177 342713976 105221702 789553833 169528816 757645841 148403638 317536667 130861929 148965490 169835827 818540140 83903326 71408145 751234568 313880228 865745935 734035188 726755529 916643273 969893000 4145011 94213964 693748439 437053530 199863690 296801276 204952978 906469527 370220452 344702752 75116589 770106515 212113621 385480011 2446743 525016133 519534830 914875458 907014004 288538103 694379197 701290092 696804832 259996185 885154302 586616081 23795877 816224247 635320322 939219864 513012387 718588341 46813072 70075376 475991030 762063699 904377498 135995324 175561041 658867942 736922106 14798333 467223724 649371877 906071249 707865891 72424322 519215404 298787955 954844189 273099691 231991603 738390233 824307548 429450699 541917265 63476159 967875998 193427771 849602976 328557045 230577084 295047635 162985272 872587291 938986251 395407129 462530311 108003176 822315600 488118127 826650882 348641721 969848656 50101705 8817723 686922538 416567923 271949159 329985368 632637599 579383400 311072275 760245854 914755211 575877568 381186709 641779901 28446383 42921898 345108026 167426292 588561518 109242987 79458909 393160231 401257247 978083807 694021699 493102097 134580985 351260941 387857042 111587355 356357502 310677890 775779771 336962505 430645336 785441923 828767306 186853990 917268653 684893507 609547214 252755829 501947218 989276257 646060410 579206193 110395355 284044909 448870864 898684333 97523722 578390914 444349515 272547784 559166453 677793467 636615639 57131226 808849205 68729018 830784965 507850634 679594519 174005465 593055297 574961561 583688827 14852674 690752615 611399005 141700101 944099775 6100539 504105494 189597773 748651492 838128209 534458734 806725726 764192667 502629804 231865459 19407752 456814339 354535929 562814370 842404716 857231418 813963380 90444959 123522488 476223932 69095267 325139324 80616703 417070404 801456763 436491954 554655836 574769134 83262519 1916238 391308134 765278129 140709984 962702389 842004080 429483563 110598282 931947350 140615954 161287149 996084556 353669534 428821702 376381897 440669021 533724212 379227038 801458664 532035595 790309283 251698195 725852976 591865719 846007314 635287213 3008189 239426797 632104547 747195660 778028559 995598391 442272325 895178204 837567371 254010411 935768631 516132007 671535203 343710984 170847666 626417535 454628455 885544946 543423069 911878601 614869650 233197841 663611431 290137494 678486515 102693619 419747095 557488260 997942078 319876928 661406187 497780350 407128394 31840815 874287773 525611802 362901036 814608099 777541210 41496263 142934246 710351926 662115263 551890219 835548391 609880642 468156347 64574086 613087999 121563458 819420633 4436274 356867381 445737872 215019816 667728084 779022571 311283744 752416912 107447501 495023427 399641256 133377091 881040044 817450044 896388318 111498952 633731700 716868835 984854687 342913163 377340228 432275266 436619817 326346963 711705200 200861425 773349380 771288291 454087890 66963316 867434405 581486005 425516355 201409722 609602288 47134584 533145471 351457076 933332440 231419984 728523536 475694942 826275155 740955378 136522900 532599779 699614691 244026052 849386332 513425246 566136815 524122935 755329025 746650389 484644960 992531611 792135916 920144889 91936159 452464688 982238360 685722359 351584505 487396274 341744929 46615795 370702175 618599451 785039733 321821327 981021340 553876075 817800569 730387728 160881102 666060369 662683534 354498638 526681869 620293893 884132125 984768966 608463057 633045358 671568373 69863376 103578366 278853819 42362012 872486747 728353781 534426618 739277657 203830707 928846280 484490918 59358709 75594421 494680953 886808316 130380653 137993803 493591268 296011643 554697056 287120140 959681545 619313407 664207654 112827650 841807261 164394394 525482116 247847942 275236978 817797841 157069049 295182475 52674108 784799540 318553754 128326745 168141124 218695182 217001769 411871962 357451762 726197739 906735323 993889208 842396999 921621453 513655462 107959125 782969320 640332314 318924899 160679401 467231896 545411048 497782183 728689600 107877888 397151417 744923946 721641411 70662668 984559293 848335349 822929536 553854620 790096513 518839057 297598704 925313403 322788896 117803179 819916042 364384155 78931452 489186760 630064748 754744847 771019912 617956058 179468985 627558460 850075335 913315869 982280394 283324337 240309147 61279665 762873037 676936734 544623695 328716293 88696742 723341671 854167743 354904708 43528239 364970133 472669323 952379175 977133432 693489779 2780091 127529628 176655337 92931938 497239379 874825665 64542379 759928592 837513042 557998639 397975361 359857037 734327868 958080889 614541635 786705912 984171036 475242394 20309205 134142655 692686785 569769758 772366713 224579627 467091040 837292515 255557874 901030127 772734819 933209596 773640988 9545404 36462727 677152243 565744448 889127255 94291707 492712688 449671196 151862360 282211350 367921458 484569891 290166796 562176285 350423104 127073170 661599526 219476462 116014148 572624177 680313860 861312755 244451787 952491659 406979187 76598244 617574309 559214690 791618130 46862881 56892766 577099494 636365473 891785280 244087512 243736149 718586705 423496897 973309073 5961125 730432420 220088456 398461497 316773961 951308322 680526434 399499499 909687377 687201967 349020019 952410674 482018204 870902272 349819232 896697254 951357149 40824015 391783098 603465933 258503175 817116805 967568777 678949989 291621694 387967792 7716952 664058781 716146732 458215850 432024818 399533106 32788767 660253380 392425154 648901590 601218010 27500831 953149317 93564771 279956288 192987987 891069958 33627808 216511340 696101203 861612282 364500474 731827712 286947423 628724787 534205201 461252610 86954246 382904321 20534681 690496397 463984562 932601978 949439978 530410479 627284669 488321198 421021146 239993426 926912926 413970132 465631422 266491331 192738739 967796903 342335450 89795368 645828415 611085656 114591481 390650894 104803803 615252338 137210753 794173240 309628812 830513876 505740257 738259929 485194492 129844954 103038588 552048109 410771462 911793538 956750935 882197458 591978509 669558314 161425642 50669292 615333505 364729155 741309616 776781634 850670291 114810688 121082193 625907249 620757833 295811281 355838391 115060162 170766103 960562370 274869267 521325912 64192865 947116668 830910064 269729261 991738668 528618946 414850090 731811214 957175569 437354345 417119475 199823444 537525999 601291930 709808198 15455268 986047438 684202762 220613347 511116371 199193213 989325942 765488772 730907734 316009140 764933273 483904698 449266714 727051763 354907231 739227037 462012881 929919249 370509354 577686839 841683430 240177456 881884933 487000998 933405552 124121075 296489277 262320593 768927188 401564460 479311910 479408892 131679511 306716839 652764923 19566198 117799950 707378423 966919761 708407475 90537374 755007087 22405945 360437369 340776627 169426879 540433332 284160981 337031485 421995307 684152732 895901562 901380825 326047498 685822807 921215039 145822803 912694091 439451069 168692442 288331119 281681939 323060550 767509237 799482904 395636895 34367709 816161695 556547633 551594760 675339646 809149995 115791982 664555105 754659854 984561625 961496935 90620210 520810149 864584100 885082042 519464219 104386207 129544787 812929569 47935056 665853385 614109070 383262856 379326306 163448046 37017338 597833857 702755644 906419672 806490378 704074793 686288564 541915871 688741694 101406385 281150411 364115383 222573207 490063260 113956453 903204510 609527459 218621492 732305266 156488372 676363704 885783829 183886623 94749317 771410456 401141957 262019088 751041383 982773755 890854080 802502070 317841158 659388037 301448315 615173256 85379421 294695054 972069701 144340408 487167186 811093812 792563322 452336677 764360782 795206602 571889648 291424112 302108247 831472056 711342666 334138755 846079644 306918145 44667652 646011827 320051943 979767712 953920890 613097260 129741682 270185125 141776103 339007437 724510386 438629539 1045863 8068587 760373705 611638777 548923144 301776259 307392606 19235682 103959934 282181612 655047825 79327777 422611686 510842339 819304209 782325574 375845641 651810774 443906107 942447398 332197133 432982841 900770771 31403813 108830160 10759203 520300876 299782839 128904867 717136211 773217258 704665619 680892942 770772449 97715287 217269921 142397939 521902860 878926792 805381971 68808408 424179208 391652179 985147124 184054243 373938093 526968671 588945392 835581961 286753166 136021751 479123995 181993556 131049772 839168361 28727591 543721444 775389678 57951266 90584851 137966791 184883439 303028269 176643078 233096582 161540731 393782274 545961767 595864972 308904001 238264910 192766650 121379521 220897779 429462596 732676001 309099874 312917692 230936568 384910075 521213006 646277403 786156553 742745899 645511412 981325487 650158406 809103336 697638887 282330798 33678997 66666993 14239975 178401113 1121053 450939968 867505817 435110305 61460054 794083518 579031569 454878002 954238307 72561118 97496912 362281962 961069506 200129143 121123711 377636354 16329730 826524205 825978609 341198515 79883109 128633957 994763109 440713473 942094348 949836883 850960582 117444249 304220314 319417512 914209022 811643275 937760121 841138359 141627094 841812946 533103112 358014531 499055124 776435159 773682960 883492259 583903729 661288144 957991706 881118931 920800439 676714998 706452171 778273454 838353648 900190181 702883178 360999268 977271855 560809248 432400306 826389500 481255071 679079344 603049860 119253090 55748947 579281216 129661045 329203736 620056278 863330294 850090965 429767680 461485112 888832399 716744075 980823990 356970973 561080227 319224972 907301073 652818236 332911719 873038053 296939482 390681098 128826795 916474188 21711483 542372543 792912318 378742994 529571625 486085037 474889836 996860110 429481856 485793052 471099080 866342753 190768188 125491157 498371044 326782448 429817864 721034346 22012685 485453246 749999595 998626229 337570193 482790259 223252856 915320034 138523228 494184082 984091953 455285001 439411095 49552440 600758061 93292120 202395385 18834662 900385716 482286680 104021786 641524613 905069859 174316883 667752358 780644130 897672526 52670043 797156640 759251770 938221101 879538269 162533602 627650407 823975545 713240996 48596440 411507498 453805369 797847923 315623811 332898414 513661872 942483478 321459778 215603720 950981891 556591663 562883612 649316207 216457715 221916860 524461868 405276762 95472142 455463914 397817247 950316261 696630 110855945 562030658 840900247 943407397 82973112 56370671 741062717 364558684 728234290 583901808 664009530 9052273 51055925 66766764 738714622 92634103 998011795 650121365 481971535 885759452 13430567 67395090 484217918 753469531 301493430 780872572 112636147 499356963 911812096 472223927 452944860 589054502 8863287 136579405 609490144 460177483 54052998 855045385 556484118 146912256 279590999 564723137 363753082 334212481 569829438 683519177 865518295 943627242 851736161 8507120 316914115 555011584 996357745 194185843 364861871 392818020 669469102 459842473 750628419 538779233 298089504 417710058 275697302 615466166 662058998 784369380 217276390 200606076 597497 659885637 356486380 612521841 616321798 862986023 360622212 210131296 303280776 965618795 412785757 760038915 979382304 541860118 670202388 552759099 293932398 646950505 455346285 252814230 620472312 846712476 35495787 315709601 292921106 362458460 670828102 435760780 609339972 125140164 825668281 789027928 129180484 388850893 384177492 90073686 189280886 517078360 386076016 178625855 932185631 241334795 978444865 754584366 587803924 438740911 356719739 588351081 62630334 603621986 312926097 797884249 711865116 497708370 662810905 206144425 257182131 69949045 670188500 101547458 626157538 295028928 477607538 545029804 113684155 94211552 727718302 853958702 271355855 402579830 958819700 69378434 735507001 763557316 157572195 494832475 205528622 785453043 632571865 732735807 388774123 908539144 884653559 937975525 48010711 539681963 475612242 793123754 475040485 963906653 309176760 323863784 174878958 74573075 519132618 650348172 205002935 252872122 730578871 425068979 193065873 974707263 675303336 492489834 287556803 814182102 436466180 184079180 77717999 580219138 897215387 230465673 641541938 487368892 596183221 30954286 923029994 543006685 279957788 134308535 393655356 215401914 422575743 530787341 295550111 96355334 423474131 435195400 232915356 611321276 481426260 717918356 597179180 760071459 725805516 186784663 897330241 96956037 347046085 597496076 986851520 802367923 716175892 937343993 40718433 260205651 243960750 515168406 178473450 906299685 118812461 969419896 421467986 149498823 929976986 938617510 313469132 509184486 319858566 343778896 32501018 978299424 36839578 795786234 846790995 431000921 886402072 5614306 577013729 130463708 509642742 727677139 839267425 803371893 172036359 888256446 529307380 131547159 660301631 177960317 73413611 734244837 2033636 477599628 376759082 16884644 569155069 930068851 542300500 512682577 649095574 485298193 645866108 690654609 879007063 914300236 231554982 974691724 164096783 958974843 712510794 935236983 546994401 270889455 810821972 705424058 300563473 647234834 849387029 364369628 227955802 549979629 941331721 69431280 330677002 659288924 972414892 431184564 810127803 765535071 604644796 82433702 655977079 139971493 635014069 656666662 632250004 954284785 875798034 167339494 548517749 538069169 307955304 968844967 552606512 267282924 147575871 516677811 576556574 127950659 499722328 631448264 169706934 169113284 825518654 797843876 679075114 814681328 88051954 60386919 935048799 224285531 119944645 102932489 326155789 530795011 462380645 849777028 79953363 31820542 296833738 641922402 304882518 752641891 922559629 70591124 124449464 260059579 796502879 540736548 702236518 594344259 538600397 488274182 584009443 850646005 268982342 326311253 168830036 368998843 306565922 523111606 474458329 686343089 431468826 858506697 478770666 374795788 591273109 255372505 922763798 595338636 76354185 215679438 735870145 459189823 23398791 899113349 65646453 738867169 547656069 222399173 782280005 916048639 440122986 643737303 618531933 55632232 963866716 177635330 523781011 985235026 549194190 724076632 192146814 403179169 958217323 6622736 16477555 111854968 807658997 658578524 302245348 519138431 667966785 998071856 987988933 782619799 221196160 599714547 573492513 816805290 171609006 790483652 758454154 618084069 691533944 177986585 950801974 962375391 414441666 676480701 337182781 61682611 995038714 833676395 968675941 829327298 491298296 99551492 369347973 523890476 921741663 759468932 91642017 18707470 962141236 122930446 689409292 20206846 582768797 32062959 665284331 856415364 817046784 543383723 905903441 920404354 632169480 721329104 340730944 281133014 498502458 968627540 545285731 337276975 889183738 511796162 406250036 706166432 926234140 672298865 877224186 690488649 85445050 763069401 749641397 632708970 980719986 237605250 614626505 580692328 387159859 67722738 768918155 850375267 78333867 776527763 49539954 894154074 821943701 291356509 370821742 458980414 515407565 450982143 847525000 673762614 942090082 225808327 116864728 830098400 218276233 854569512 88875934 83001405 799409144 426749252 227844890 808952820 160155328 130336943 134184637 419922968 270982211 643576927 338639572 432395645 510559728 791005039 248303705 683349622 428188738 330412588 3574398 457464690 817249717 512804433 81940054 331534908 127448455 154164689 348607964 267939058 22740671 17985990 432138396 485351906 330504947 108074609 333704499 695532925 879316700 518521349 731677429 769652204 555961265 107355280 106094171 729206690 638411439 909818340 195392496 878212600 479936300 185458627 376962398 110159096 946781978 438727733 97952009 103961922 749736158 727501616 878827656 827827715 476795043 80060619 44203664 631952544 777778702 769532285 723356070 782359566 124094006 775392172 6116267 260181998 895302371 944709922 402808379 537780947 533579113 405355374 348036782 458812688 317992564 948978575 881328732 144857191 61303078 200007735 631106542 868903432 625242149 830644699 931541823 206960750 750654280 9206635 100431436 407560831 126454343 10260901 485114265 174540302 316040377 177351515 24660728 104076566 968730041 439225611 382512843 722150825 162089082 538740787 116131810 568844731 130256388 178294510 750908819 690081247 129702733 466802083 742097459 465705441 254224205 771952118 77975427 238001009 874172027 477536612 718636879 143726952 940778756 164877365 21078409 599913978 967950624 364121941 136901437 166610821 644741559 520716259 461173652 719136359 20345566 811875443 825818762 227286274 865168128 524919938 502941583 889787175 506676531 654056073 499011012 782618569 818373197 579988308 359642944 978529006 574560653 711925772 563004712 555462319 597805851 561822643 280828417 150684832 179964128 981772289 546006173 347085947 136134341 740316707 96892192 838051541 196379896 944364693 216159443 815238427 605490044 476899972 759548515 23543459 309799957 201427782 982005621 482657139 908537407 678354929 436508650 732383226 823202163 61455136 868974640 410764103 714514460 482761964 716023797 398266000 568493133 722222606 147447150 919578428 284952873 584716495 425029521 543509460 644749281 621319030 472152860 427001687 112444445 516495465 981479730 472208881 189247209 876150802 881859468 999237894 551738795 713955293 78123769 43525929 939242943 776565545 830384701 658493657 651947998 89342167 449287839 511802789 165187173 164217138 398094274 488804681 775417420 278354029 532587366 954089050 562205155 5923588 656445477 856946956 494949810 811085449 921730177 622166091 706905002 998817662 492065097 348914584 611618522 68381386 792823931 253763072 985496700 142786284 151923158 148495142 249391221 194041112 377890917 774201089 737850000 433213933 443278841 428883875 146667976 720523755 625977450 384238859 649660008 637860487 249571227 588137762 654590629 46700731 122157324 870038398 388394649 733394885 770526152 135700787 216257280 969695172 178233126 279772026 160771130 947249894 500319414 945666026 977119400 761959218 130452381 412702167 778861594 738165061 376321856 404014767 913665515 245770020 536375010 67332394 720889797 478607899 445668216 307688450 938518498 929811502 876090515 501176011 604056987 263617120 209286367 603712203 927374593 217376523 116976058 747069493 17984420 88331756 204173621 448365189 601327888 936595826 326201991 835826381 30432872 993602500 574752294 47213047 11349119 151755153 805530173 983747592 535593326 409565697 378895600 136947928 901135553 860921847 360770988 264722032 444669145 326862131 881152395 29290692 365794982 843774319 800236790 105804471 956028356 450551201 315062041 109378958 582651109 507351768 819871375 863116316 302083180 244659891 838008930 464894773 823340046 321107929 338679727 598398972 837682362 656215598 839868600 631004324 512970601 338704328 206474241 180687630 110533991 924053570 828571066 170780441 840399571 623218292 964584302 25139671 241070121 966433845 158742603 913382245 454222710 371421250 300326368 118665194 696410797 731753568 488242605 588434180 378404379 739217428 199223704 802312736 428435389 69533805 853571087 427481910 218689186 578124108 930901428 723550149 86733084 313816513 816928611 319422311 702367869 360802753 738628294 815215217 322940488 487938616 583994066 251750288 213745238 595187332 66539455 883522484 177016063 394747978 788783578 75244779 989378157 769582853 327909703 767206383 428644615 261755736 864601065 19357774 141917401 70669185 83173914 818081259 395259502 847484892 301317528 817628206 460099966 442196010 803732581 566018956 460412143 241524488 616859537 148654308 413283015 906395228 531530521 151724045 648613640 765267222 928100100 257532361 50301111 831224481 291241966 168339754 302075397 212536435 939567629 673476906 605494863 597524216 250586597 303192273 250509233 157275769 195241772 504371378 134332140 206619476 538310021 901546988 412350933 34681499 627231258 503114897 248056975 666734995 280205396 202261631 233441124 297457605 828424397 338252745 138196625 408109508 983319483 45936347 390493861 99461098 131910277 822656292 671015736 856931475 854524667 979122025 912303554 318783586 956374253 912075107 770298206 768051780 30900081 164101623 640279920 986810128 404610307 747334899 224673798 868941779 116717168 598270233 878376641 777981209 197489382 3472215 216091717 610538255 864546930 966100144 681461494 418788972 618765916 582677965 386387945 635228609 658470057 350357245 296264317 244701475 482473354 127169671 598682067 915791787 595430268 143839460 465159032 513144847 128215699 757990708 999515587 368839995 687347156 3426326 836260516 930385025 71914931 2943319 342391902 93668901 336146527 518981513 361659271 748326592 528883316 550597048 458617473 927529166 983246752 748204095 269561629 475586333 572882045 296739150 598344127 401322721 289976445 390982706 240841372 228163019 343721652 901705469 104965711 97575532 340311674 91578014 932908430 351317281 417576539 145053152 489831185 699004175 373393125 532927088 926212173 303484764 318236475 342591236 974658711 973606262 297662230 911128127 857682466 704548474 691027097 266456313 197356732 405255777 975588470 438702754 682464003 548614241 120504312 136959977 217154264 899401036 839744662 872892543 783331000 397431786 393972071 2372752 597918364 775871018 743981476 223043997 57318503 194802069 845949792 622540330 369388113 896414248 497052533 742642452 181372572 811671043 403480460 569523140 8513742 407693005 583677098 785364373 821699382 584804060 171563780 987952174 256046693 627720488 709344707 322205014 975256260 818446758 500877454 620120023 475649663 154207659 706754366 450742687 298196203 286672103 304297296 104412609 633887136 299847380 393955693 301635461 989637524 539219674 107479843 78067997 231443591 142068127 524394207 936010955 589877460 711427533 701034445 911818578 889887445 387226496 553389564 221644367 387005565 931841722 718769100 277237599 310024606 29422594 649656367 769751718 41104860 826073214 911387438 301231248 609099851 359985501 539050643 719818581 8417727 99391501 639069375 473892710 953241445 988549626 901553081 362430000 591980557 6775553 110970871 988043647 994261593 156519507 846148393 131362482 740368879 470937038 251903966 891846048 550085566 774125407 488265264 692985426 791230439 417565272 455089217 463840835 731735700 980448670 400081264 897702231 26948151 28421768 335643647 380786769 363520088 93792925 778965785 41498209 124943047 225734 591821608 494856697 497433730 654267834 140715769 533872415 106845587 653499920 616765014 75914227 379145013 937221419 332899143 675223263 472547081 367892262 503761499 104981670 317460165 103787824 809976432 568240855 429116138 871679523 831958100 392231528 347335123 409652757 106679213 634647594 121212821 81559399 93078215 446032729 1235692 621010463 15324778 809294175 618880549 588416448 175177712 612381964 262153015 688947063 308721075 433717472 982432861 404242318 991660210 765090718 897729300 277940484 745903491 728850566 944782662 842755506 519144464 26008923 806752395 43747166 419150008 387581385 368819342 27554588 24680933 812852702 820808295 985496131 473335088 189349908 355458501 818345144 444543988 747604603 733832407 596250124 85079496 121325801 688104333 500014239 652712937 328185087 799414756 734398715 368594228 616054179 587134678 637763321 482640927 882352875 101591870 272458394 269140022 332781345 750235108 982534229 324892041 292894091 348913591 386745915 938543539 579243669 759170773 172062603 260819025 613414323 506021436 320311181 601186420 470207842 927963424 409001618 591220554 264584518 544453188 859574537 706991132 120527956 122245819 235578855 209811393 813821902 476389860 383228118 468036934 742651073 473010441 935500249 516587469 152807782 183334561 835326465 370179792 425373530 902812970 143694804 159587651 889517379 376303012 371538344 417831042 845808028 163291689 928037388 602277217 943601052 890571374 414509734 156117846 684084580 164573061 173611858 977622305 941655990 936561901 562008285 944259335 964542988 4482018 398746000 362290803 672575182 273646326 377459851 179335660 182625157 296667932 597423352 969201769 517353088 817295365 982667160 152261659 988228124 839748361 410331791 961460621 407903236 511422507 445733383 52601646 381400164 303307646 250886168 992938696 937789195 398035396 957113258 281932751 170459049 839700311 350952491 848735309 781985912 949290738 592716612 393615723 862725657 543381325 682625560 340583534 397874552 901110887 342687500 677832649 835885002 763853203 2957060 22915266 569135972 735696327 533293623 158521146 428491027 899080921 209479584 137724796 251782036 445960619 37719202 220261427 38222831 584541830 653617101 902355514 220871261 973805716 552176977 321864539 776399127 288918234 642968718 408499558 241978113 476783708 986485892 444580073 368545940 318728581 879723609 595735111 133646200 854200925 144984956 359069710 37351580 467041078 426329114 236558369 85572670 706525049 871257299 262417856 34336055 468251249 565047613 172949992 809173437 683267573 252286220 576492515 33059698 360637277 229949418 134035239 724912924 113250316 471402530 202545505 560074305 783352735 157745889 207654260 997879713 237909075 672684494 442541887 900196840 647620202 888638742 387010918 337520659 546810575 941541723 24626158 588706783 706300778 357448170 727970646 104964691 946143773 315181943 434388845 174769384 266127951 144638885 76023561 43545959 493313888 812233783 760319899 497980063 860425679 599808556 722403953 606475713 831845114 785181055 303463503 573266739 830413884 91035083 186817618 879326949 790906642 993467610 575853123 350234900 452115518 600510304 877327727 938040123 469677330 925784742 97864138 286817672 851014008 916367929 688412270 822295951 949508632 657081997 974030837 719350281 232144490 76280511 737832896 87102976 982124046 549042327 789601412 228199536 831833785 220569736 918215783 768406803 210434525 493715243 514552234 216592896 22546754 898953859 746676293 409590695 282143254 565208142 335248724 932097726 171908841 877837486 981671069 362998123 263035639 380269771 281023141 355846249 195000461 201034514 902170992 822370961 52582523 694023212 644714236 881121262 167239971 20594248 935335436 445071925 196964668 322642355 116358874 281947087 719605928 191255893 311333308 896333699 590346790 72354222 286463426 223835813 210139383 112145328 6024797 206821569 474723881 524762252 53453094 807037088 497154640 469018561 549526514 582377986 61992905 681959094 716847158 590468999 163928555 465820172 197153751 761848277 756187890 923098330 873588415 890854458 328538804 112094759 633507998 942226027 542474162 70712296 58240033 536031350 275896085 852994291 137800039 436390639 838533755 18745120 261376576 106510588 211311372 84362041 106552508 933279452 429906648 593860228 756373801 448881264 883417498 328484405 694609872 57082217 947663634 92309752 970937672 262293002 836538584 218586926 135466184 469360319 991591847 173747906 702560554 653541100 259073618 866929604 805502712 178938369 895016644 839173434 868957256 184001660 8344669 554859747 106458573 433080424 945728556 560824379 284244522 521212168 950015510 269846757 971764369 770156594 862470437 29439369 796109471 614101864 213870217 84853396 473192185 539875778 659606288 607889008 142679137 407950941 961326819 519616748 956721768 886345940 330776155 554201309 118892427 76189143 589980420 839550545 712703675 215220594 984458638 771074004 991937231 603458308 173237552 693535878 105839224 67164025 157220276 330095237 293895820 484111623 985756324 608780612 608888279 345422377 568021361 852127620 301523079 226745285 563544823 284648227 550727058 89935356 35735506 415298242 588598321 246802881 407319189 697010720 226768440 941343963 321411747 836048934 575417804 75348199 580058875 348902081 703680710 390254268 995602751 692124128 322903042 633378496 322418026 476731802 706442281 882756789 639387048 943440390 693684869 353227469 987521176 705713053 924310541 392786081 220556471 612440068 298172203 554032115 861349972 191961969 603234690 474585470 972972535 518717766 677548326 511103913 532385571 975130320 121898988 58563462 586100990 582751460 764834118 577447990 18475011 812568831 411465180 322524772 239710557 229937416 678122222 681468193 105584786 441653372 770207671 222918317 822901577 442224500 26809875 811573593 301567452 297728265 811697017 759602343 390450169 279986661 486531563 448075374 841538221 847077658 923108425 273961699 993927956 989711679 844748546 697969638 528709796 692069136 916772511 844235928 679933728 589686251 203791671 839987693 555483981 909802864 599722070 607976135 254104263 205154254 888499701 749374705 51590570 335422562 918740239 902201629 68160991 245611310 569419565 159433011 860912336 652518461 493103872 122749309 663520691 203027063 348852178 697277647 272890277 584712709 672885417 623257301 227557019 687028965 338497869 779460404 358747884 471234903 727750638 816325717 905720393 560647178 353945143 718949749 60696987 680002833 338512073 913168388 99672566 872552041 258373168 771918451 962110694 189803116 806932753 759752764 464533829 22239193 553988982 650829310 982850335 636108857 990493439 369840247 154206596 658066689 39725397 885844516 249789025 885663840 234665263 913577877 301651966 925703390 836769461 941550788 917068719 456764824 868188122 180083222 760379107 319437829 644527685 445543086 922655683 954785536 471061287 332211045 964509217 511745408 843986391 832026560 283357327 893982773 714943861 398472755 384687400 600017170 840241954 2246074 960454237 47761899 42015150 904149962 207631704 1968707 615944493 323789276 666986456 677445349 622494886 407315240 904489755 779788323 670878865 659471797 948026560 990819732 166597917 556791852 889254787 897372704 432775047 124108950 1265303 687984285 139102557 995867393 826056892 448057924 867046485 862175471 276249597 341701281 512681677 445946954 973923839 848870905 260346410 981330545 434012750 452624678 907598814 86691948 874255747 771651015 426721548 770632653 861699424 72553566 55389342 54394563 151232768 671683878 72957848 78555411 5657421 194523721 610868225 938886357 391386111 23386593 340518289 253862868 459511707 284878686 438959097 521980068 937590494 661500451 150877429 764646604 671157236 889688494 207551453 286045172 903850322 811216768 482241270 211791431 215808100 942814954 770592071 581735946 787395094 509754017 153516812 342265309 289501025 261801781 717004860 964810857 623523352 350441679 82710975 46133514 946415314 999109287 778217444 614099376 731952674 26106763 807561072 239514389 456694091 470243055 267314605 887838404 40929930 589542482 526396572 557224381 40465364 990486575 926795004 425530586 880611411 368922991 476533429 322004102 613510313 766602134 779511404 638774401 665201720 392567338 180964466 444523623 279848348 357079552 254522740 207818924 398570014 152384333 302231759 236416462 214284191 97592521 765187663 664712364 551443335 909112452 337030903 655474794 155467459 325465059 237100728 46242253 766172084 231911405 464224350 728813829 647258558 58430343 844878098 252078872 348271866 333692791 544169281 388640997 851363817 60941274 321833527 486533901 660283131 206105152 599961529 173959192 573460827 310120509 736132967 261745133 913722795 891834266 944207506 129019097 231065486 378499647 838297293 310589526 612961386 936408845 80425168 965022222 865119005 855084525 667373311 157026253 724663972 365688928 939862062 385841430 457338932 78880894 626407122 45938852 110117459 786937413 862272370 712698483 941898654 39393701 946846531 872729342 247577424 274189781 376131745 854568754 427304527 530465429 772973386 63125414 484241692 289839765 374524007 870902435 4860629 655022331 20530526 81207336 699130932 271757026 852629352 235155707 846749964 968420011 806306399 513390306 69057068 757190157 953718401 544327947 63661557 520221253 750246184 722734658 621332306 139866937 454367676 878920990 523291038 28659556 855360374 174465257 284865752 698749669 93122912 854679063 905876534 454624070 996282425 52744477 312992171 105395006 907374475 146665473 664359911 873703143 388688906 792217940 596455524 642801278 533936321 513431222 876240228 949689600 963156683 982404492 465057499 180837689 643893467 75091935 985223472 958903545 502400243 165770225 673681469 547906049 861187518 995528134 291157810 706635912 616367095 288290167 279905870 695293745 28103787 110863481 716690896 644007633 90763513 872259154 444054084 782802482 192536546 115650079 224174969 979819165 792110339 760672037 885794917 600706412 607410756 946494091 570521469 796877308 542262742 644708987 725877068 835136700 655325205 221938716 455894210 224290709 873641866 474406911 847994094 513183022 830282355 997427081 714116683 870170318 241879255 896725025 237091050 304276044 289379838 480263325 654527389 173330426 499257545 747347550 22483863 520428412 219549299 167133536 937700528 578750799 924346314 912350771 33230923 137250997 845243652 613670738 920984506 452845727 802872003 869529336 613633434 477889263 474809986 310721774 585549059 275880055 558506615 439723822 515837667 247809705 962456206 254115729 231516687 522940246 41711700 795450375 787920344 357924672 254409424 372327609 830171546 210290393 627751455 684883783 842351661 575095164 354489370 234885555 163529304 564998696 476430098 905698110 473229463 67528371 347597962 337909187 498437252 486166514 207722517 754040966 954286378 710454555 45981476 491910410 561552523 481629641 59066609 107698977 553572095 623843354 391442512 644861720 938370012 748224884 556475838 373677719 727543891 716988194 370132297 876437614 848550972 741097471 827599296 696895880 922216051 272737922 839538834 459200955 849147128 741353672 749617609 540375596 6497473 505828584 883397380 231878078 224904619 667678981 208249989 604186320 368001358 469425058 849911607 175150669 642625539 105718712 197486196 782347864 121811020 966938906 956132307 848059373 606201166 86392723 18576512 634730917 825897868 336335486 558908856 169484187 459588034 135880694 956057432 75150214 664541475 649961830 215458599 79231582 379677133 135738742 661769352 814198025 800594780 922702880 391446453 435137081 96662264 888023374 648747141 888474341 217813678 871164336 174055297 530380288 317916956 739544735 273895065 888766578 986393581 598598839 852836060 871856355 177043524 527895387 228223906 707895267 875952159 65592394 512155230 12040346 640794863 561464803 114548891 298544811 832658903 733999994 588096300 26245429 342168354 969197983 103969025 66222023 976138911 7076289 678642461 661375541 770472617 479382137 664988589 184603233 304490698 439507064 216544373 880279402 598310893 707634506 465700336 148803493 558195192 621063626 24106596 601807086 616952298 562789635 6105070 522819086 638743789 882813574 110253419 235778068 2043837 594741051 378150042 99276056 805638953 602137805 803723502 328412197 438707292 828577008 642902943 808020844 115475162 776702800 519181581 872149934 619024537 383636196 206046334 840195382 435904208 133943805 760680835 298092041 468843393 680909552 877773331 112729124 528369108 305473905 583961217 431805740 408145798 714723640 59418925 356952157 5947311 387774836 862780391 427023270 560071155 464478179 938149147 637812643 736788221 12857931 428296896 193496301 219821682 463490780 826555269 40362285 15711622 813276841 579958593 345628127 86214850 512088859 757731200 660576307 337371284 965352644 883528895 221579419 836027798 30675680 133717606 348997123 572201744 546922615 823749502 934744617 621067966 324918300 863133318 302873459 275923292 29281558 631327973 874331997 644559658 865300979 715415527 9026298 473345682 297904948 304885632 302027622 774685097 411695045 396667 655564976 794342452 236487289 548698916 666480747 189892420 745177322 728657829 656596440 906442207 844487761 811224481 693300306 51793884 727172297 578113564 163253285 258997955 166816743 317986654 921344764 619895011 970021903 290146718 520154369 415552955 795552045 241511874 222416493 769397691 656982128 172312482 574760359 48002142 2291239 627940963 739431611 468196116 587841516 300129292 634008908 716682977 3005439 579179897 724131088 693917003 825997681 963320654 966482339 699626554 565756382 52080274 81938013 773382281 224197892 821929280 722315617 746567279 283458815 179594780 864921231 736417889 162598209 976597820 250980497 406486755 563233618 564715632 991265500 657043429 270592311 109168691 213015870 596957595 762000407 593724783 221961968 379438283 341342293 783743101 293994189 930640376 474509489 734333963 694045248 889723898 729133909 682883875 806690956 868133736 715791385 59447944 752451025 329976637 938576964 767314281 327579701 123904655 734643994 123067497 693146455 640867950 674535786 314405993 106734094 312018985 992630241 208081662 746707070 93175115 410380821 830997857 169486758 728697211 271106557 499162064 329388202 960849096 64063560 543573062 805745217 870040568 654736393 819270409 236049341 702088434 949627829 567860699 166537575 868874556 475740430 165288124 201169558 390855894 956445503 666147663 919992282 369783621 85631114 795262215 650965249 688760574 575175471 31198581 446956122 668225694 434462654 207498039 948734419 109730017 799022992 852058385 70004612 726135484 303577830 190897466 510853529 363339325 864806531 424778550 227843795 151538457 374770654 733453141 62188576 972124686 655848198 904557963 778593155 603346798 766566233 207856358 336041122 559550418 793971134 703632719 440492553 343170851 386765615 720894396 792188740 490115061 624055482 203816931 750342361 750219334 992691473 508829774 712695750 365810701 675165027 689927142 548984812 316175902 974163509 995095407 58085107 876505607 158881795 8971695 3433479 142121821 225499239 482470980 623559429 755459905 4403131 977105586 132158517 708349634 759372083 991020244 180292191 764674060 892847258 379908694 569454799 256086964 367272303 180979689 714397910 463352689 35084130 69833238 549697684 479543097 119201151 923830741 892851027 253897677 929904085 585453156 318319412 392022883 751404091 392221404 732577907 262685930 632513666 216524105 57650224 956427670 430289344 327745191 187910309 237694544 594538291 853109690 945041234 518906491 183145696 8311259 446612939 206283509 705617375 792143927 125939615 786432052 27234318 550173689 182940511 923480106 742377056 826059370 279318545 930441213 630823701 998922808 481052459 708817253 246485109 632095623 44359846 131992661 565900031 152927965 8833806 425523525 756212244 509384602 495965680 498036870 533336914 100333490 33708853 475314928 377852750 447277844 895855661 596391265 509132225 661132555 932298536 587462652 64440115 907436725 801173662 276652004 259091341 330488020 896982961 83810153 242609541 236245687 343207404 287816406 29105955 360976049 536513893 73530038 894960746 552580290 905981517 974977524 81767021 102074278 842274416 278317650 987934103 562158155 457997186 392295251 825947438 360993066 253297956 537278304 842475 367537459 772489565 931438069 784964871 835326675 6957289 491341514 991983501 383623169 269226773 345979664 169473392 9651220 311865259 275186990 489566779 782646137 579104187 284539872 963759073 713040329 861136898 808717278 546765578 147489267 787579505 17229847 859125753 639097724 5659902 996899811 65782561 443226907 573260517 762495348 539543035 495906157 172134866 569800272 601054381 775710109 146979930 550271888 698813072 282202828 480640365 147341191 229982639 108778029 408436225 553190581 139704162 485712546 253363334 515032933 422332352 149874256 966843345 307205597 107456215 245064592 282482268 392179020 80611927 247542394 316475807 82022961 841169153 697586588 149352541 146812798 769371315 832425682 620109344 586197661 921558630 251626378 408457533 35332669 293960147 941547779 890282101 531925587 44284066 281219736 992600582 465055606 428380539 144346431 77591306 149008615 487568099 107372183 731891260 181225314 312432139 491582255 88062038 967454517 837343654 670070828 960697058 933210405 333115847 857002210 470855256 482851949 64032412 389297291 859680458 488272690 276325926 818037667 60884315 849771501 847270747 799935558 984287353 132211264 976266727 907830148 238780789 215245096 529317016 633082058 648716454 713516968 122856605 405133519 422709195 707617872 536139145 745832387 49779707 831249435 523287406 881491022 249064204 360798377 17514719 734148595 400431560 24586918 783014328 272231903 871888129 554652877 387801364 981920848 875915837 182845513 593949711 758914912 939769114 180855752 822793439 912691694 265850719 383461365 56027936 906377391 629255157 585684566 599697475 808249996 871294745 842175966 142607819 815070467 979138722 294933857 353835397 386440418 77804305 799334475 156395673 121134548 386802092 747361113 924057822 314386410 239981445 22061218 241918434 467655821 613695395 528108088 83534703 818140809 427918491 625029313 496491448 110299104 282670602 885152866 991058843 45825872 279217945 710722710 131988810 134759279 284255361 336433821 759773311 813151286 579883389 92598415 779283481 664497429 793986495 992308348 588287162 34494338 551979379 504235475 472013388 475049437 520081967 475536111 228270975 795131824 68118782 751814537 264092334 35864958 267569805 125912753 72018446 333653014 211234038 618465787 143768415 189123926 769353153 606710288 315902704 937207236 805465012 797148810 222699907 552225991 216981320 200535964 546382163 693840490 434670626 263112639 345119150 532511153 842227673 264934016 364299767 134381959 483190138 136500686 639428980 674220188 973712269 459576560 389265490 368239013 592800903 904939471 470307567 817131478 903610911 988679683 412142696 898610522 866975420 862777793 995126317 316421442 33234294 468035328 846711012 420952578 429123458 317251965 750947 366229704 147063410 219566715 494230997 89363898 990135461 422031882 920862399 208967350 537451199 320246008 954586998 564975510 582419473 516332724 802126043 38766938 112880678 407787540 75416683 620162300 849220103 114208352 664633421 966445288 133817227 717657125 717530699 23365290 728844519 272153868 626637414 110916940 713345913 983551986 557940482 708031300 733493831 663437453 775390573 300615525 645162386 124144955 704683400 244483921 482746654 703042492 848716209 397133764 510578200 196254733 769403670 555932429 549740625 853753816 625559075 923124335 357878645 926236792 161380725 478150848 907009032 367258413 342880034 860631642 153112791 318731143 352461708 827432643 208048440 467486545 526898749 306028056 327192903 178303645 98256909 652778281 642267696 245499599 651950795 185439135 399231264 19089975 186170535 391778682 420241340 337309394 956345909 849583477 299185033 540097928 877344977 213706338 897900714 500228536 613665942 262352617 326558929 364875525 991027678 674549110 280058996 560292042 477114513 773149816 819728629 298942463 937427338 681377819 781284135 965050728 288663056 771597264 781949423 239513050 810287117 961598707 66307655 935265571 840502802 834727684 107450451 428219612 456948493 12782449 173129911 662509090 817702348 983665048 417616987 253354107 132280544 548015529 404962021 425924255 433099002 518230435 16482865 286782970 680381766 791769230 255680083 353163810 448195111 169710052 796161006 982777750 802970111 87838043 54974170 108293287 808448775 411910160 453621209 382189051 216216832 719682913 632623284 892639096 263610233 673644110 438232688 683308264 128549906 330779413 986900620 535487926 314752836 404832452 214455208 490029517 41825063 893672493 257258671 183945331 508540414 360616641 454187719 747634974 408861120 949620403 963016511 454549704 119381425 877794428 116623980 675429517 885032573 787228466 714028597 495754434 564474005 86253041 172322051 219391307 501249437 419386000 960709529 509301164 630965100 50200221 374421707 687938907 540874067 823880266 748107020 100401305 630716172 562291503 917817254 803770446 231452168 978469374 594494174 138671936 226464787 784603085 533959449 915361600 498443197 178973830 686526278 647288225 362470472 62801486 260345272 443201417 915242036 319868940 928561465 19394385 708548172 216389914 678250891 639771469 652429887 581612250 293057043 718357924 327725896 763679898 583789702 734423022 397653752 46619362 747338693 897744181 308479050 14473305 787236505 750889042 329661775 347740459 503719384 152392829 514058227 386062998 818284936 657535336 762038544 559064626 14641688 839790230 224478055 760825688 398391980 390164813 409531444 361761869 61142818 959726436 293228782 913048156 454994697 668783987 216540690 802649254 813636065 23605951 382763794 746952364 832884347 272143544 949288066 554390291 239211518 733992024 94382259 969088933 169919636 466032214 429179415 329756981 428608741 693135068 310906902 503440738 797732811 716633852 991007270 784032573 710787624 834434331 512223160 213045281 624295523 643382132 683495802 160741824 225359987 690947820 899278417 316729915 334943882 665736256 363181621 31287542 366280739 87708027 228923179 324177300 9858441 57496336 880414162 542125463 325648832 835979758 601940300 978834793 675055655 660521083 861996293 397888577 420968181 900168565 418740398 502661687 914618334 607615966 794374727 869919907 488588518 693169669 138212056 920818736 446886983 168353812 422528742 404897462 773134895 400011821 795103027 443371986 788798562 739713379 924135024 348638407 510077465 147490880 252693115 357511091 739781324 705361342 3210304 736841136 569592723 978899066 872888762 882125412 23221362 862320403 600711771 389147053 967864951 639559731 917826970 191988055 842530871 190753606 683110497 223131470 111053200 503966213 224352564 275310557 916993127 954223839 83286962 519012481 232573081 753023 487538874 758912867 803806528 642009639 927697519 793413555 408373962 131102793 722446413 737701456 314623558 991476866 995694070 682833350 573020834 66325069 103260991 451476401 449362197 73530483 29272107 150987717 417458062 687421217 510298944 580067051 414990866 963072621 371569213 345521178 190358621 837043500 453499049 902458923 563150678 560876758 525737018 933336464 102959114 356809639 718472058 252250860 158136412 671018149 281284127 265836223 178494882 889549149 112914149 88550894 14596615 874749677 760174038 705369442 479753940 729587322 511041517 523342823 620438401 159343058 694252840 838051635 78531928 106780581 893749067 269558771 844079422 10652154 864564603 790120542 292964196 487834169 62022920 324694085 62755488 559407657 699458512 920079370 837752730 8051623 526703010 957660050 730033968 35565 482440658 633744320 426577275 832849178 357822610 974324780 113223538 599869190 12601960 234814882 402636875 95700868 456736760 38395498 455802424 980582738 198714411 999776132 102324645 733225118 572738900 854828774 728016753 383833009 884885598 226540557 711883097 154121178 209499477 120461470 184324589 526457707 784627224 755952200 951765178 881361428 633392507 195556460 538742678 644884913 678667279 517530115 677880281 234631538 387661014 864699106 321434367 608272777 615394564 403989320 555273171 559239357 449005121 834944328 715569003 528342694 891869256 890371240 97369182 360355129 769253897 472624566 846229532 203696888 178062136 301412030 323975302 295814020 916439533 276116318 579288109 633730836 97500950 366610277 713875972 710764032 146393384 350679531 864666319 831934940 940272784 967820349 777120963 786253982 895282470 398857591 644681906 272815562 578055051 486159795 875623144 288285200 447188237 490965712 153424277 880122694 524282158 98090422 649284050 778824638 66249610 46299387 707382516 429628553 292649143 471394821 324280749 385396630 283747889 684281166 238700291 491756760 270013286 484900612 229070290 881722041 484829043 954238340 234011810 279665350 23998570 869514973 932426787 117642935 888869103 204713767 772770527 979167680 56004136 439186753 563517590 304608527 235988470 391362208 709676000 156836364 477401369 291476599 715778875 120739607 398703099 388485646 396575342 17820507 538911411 96185396 306259429 6039691 312009406 614602067 24992403 913598285 472234789 67835691 7000866 497761623 126171812 338979740 382786485 716631840 735731760 321688741 183505468 853234022 349197604 670462211 159543420 521395517 698095230 664391686 222276021 988148251 705479434 621967558 464279698 671303867 852025834 827388815 392379575 503503637 19782138 387116548 399686913 839900193 77160216 831670290 486250449 277956801 830088989 601945667 707948208 24275854 68122183 342419625 968637430 13628545 213977661 367438275 621521453 403263199 896689770 266356111 377222523 331048744 688947548 683912369 42103768 33095883 735486340 134482557 348078700 532733818 661511691 781344677 72968263 681438616 553292961 443957352 65255322 550654152 349857060 572363946 198918134 770631914 310965454 865520233 17393637 402451204 445585300 58900225 786049595 444593414 53963015 864306032 862482884 750742298 744041828 30906966 786676879 771489388 85659230 620920034 336622384 686980752 337272829 954069930 136051711 528214804 945539241 781618015 226209941 643319718 193722877 54658865 951973351 698364730 415445961 850921037 857198664 87895793 152229518 259829259 214630168 498606540 780110883 412562187 251670674 383033172 842359532 23485736 930760498 615290741 614329905 515099993 223177886 645221648 858435988 84149577 269550394 316729708 752365750 567037638 686779165 731912640 273131966 118311086 893339509 799429804 197693308 587695242 42779348 902782844 82541693 861051460 902219214 336532166 907058989 777090569 204850994 743604501 625973556 217033533 123414528 272819554 959516970 699499594 210568326 762387794 166724521 190405508 915408220 877026864 990640916 160344895 404483553 973018047 847783786 960123573 425084382 653800142 561379503 150663025 876992991 862877972 470380591 948019019 592674645 293524999 359842650 129767842 368104621 650744908 598644588 436879186 453210113 179489719 606640310 781539007 911300421 347977982 811840433 577919055 683412527 497329984 767383229 367380055 751120216 46769671 45644310 834434854 684050047 275158739 880275553 334285581 416250421 898868575 15021870 632197652 46864317 82029166 50812560 988335385 735759761 825574451 70765605 102614583 765199997 391654953 414762333 338733198 465712581 664739728 528005289 730879945 660043626 942852526 477932452 324777392 366729034 525302043 976035633 337008911 424473734 178164854 170386415 616944152 113819675 938400245 310432764 404978101 338226650 746259137 216682247 748405908 512636490 887017228 950828199 74678432 538540927 529213983 619102109 630477534 646974845 614460062 90035908 730667957 292352002 34397870 30237947 149248118 951174009 168007801 270785858 479540496 767633660 617971394 565734838 748322370 119010467 9418322 133012924 950098052 205563541 460796221 322703928 551558637 85017214 29221422 858669517 405338051 217453731 772286609 409160110 214812712 905124791 397243625 180659540 889399557 844042891 110317111 300094910 703652289 163810164 650204223 967799360 109610478 723927756 332957843 825960640 974721843 467980579 464282462 835056257 98458008 285205435 154443661 474653730 948019704 298718714 513297563 456246296 504977723 805380948 554086251 350006605 222440809 762617302 891110407 789411225 110417093 661793888 561372805 551558386 159582879 640667775 727945609 358911617 650166988 198964701 385909631 832923775 702564221 732604597 732698146 11405382 23774524 298159083 263285735 170686175 702774022 609284373 506456594 978030101 375555299 317078919 569112786 360867292 323050196 324835827 344956060 909612859 259932289 770204164 387312675 702505722 481583673 812642211 594282770 332251266 967358684 224912516 796576446 699462911 823048623 742483468 651324815 11058558 643578471 253926430 401538349 779655681 206357945 669793139 48016918 13272216 650670001 942007359 775355559 463731913 453965054 633599969 672973356 305735217 463313602 315476415 101984645 500139601 828646775 482266344 514947705 366285553 676787686 343012347 837881497 382078570 159210486 868652117 42924922 829524288 677083985 489870936 937873258 667126961 926833649 887480967 525216728 530031430 540960213 831368639 862693322 461287161 761533625 208310413 924468987 579754590 941755511 813708946 296036756 985764554 166153151 336535057 533305163 824449975 126264935 322377949 451216936 684570750 45493820 957446726 922940975 86840008 803686377 319279020 522164969 731485859 221716637 573497663 799269436 771190764 537007205 574711942 740370312 727989608 150026609 8158890 108082440 516981157 957951163 512723239 895315132 468785497 180706835 967990331 404484976 501534364 602248218 758173715 278279408 311070431 442961701 55899192 561751648 471659459 166501392 301079510 631022861 115350918 396606003 142526867 141143429 148420392 144280642 595280163 249214536 707868653 272523603 903165532 97719595 539486966 635347230 703844753 924440010 837931766 709169254 499042969 433303648 124655258 983249963 82888288 661277789 549912379 684291797 124802269 984352462 984343007 927539225 264007890 7808762 190800434 485651012 397187467 544102505 360459440 938852436 153070779 984288041 916172076 754284851 213871724 993022822 521511685 762850178 718619889 146774889 890769725 331539203 810073173 596391494 779722318 754654181 670280713 964472256 682451720 606911774 364358925 35745351 235135577 578669983 120565086 490659833 91872577 388122262 711018142 913837479 449774971 267617441 291188088 213753862 54426536 674100499 903779102 393409269 444212287 55646324 501671900 967834159 517708439 195437555 355503517 551067561 673562209 893072241 620452812 73808351 906146596 140496658 322757119 356951536 285781081 334317754 891074559 653839849 176551143 441520381 866367354 256438047 734878087 710131690 527635777 781727498 278087417 23941871 296510758 709759899 581334421 21252664 770398630 466546992 517420403 963959683 643564028 334171012 271969195 192423940 365841545 486049585 526267960 933997303 102925442 444794604 112370435 539666544 940365203 981767574 128884815 527838042 672491512 383434366 499876276 417156248 578124278 109328615 322611385 890474006 80721821 114642220 746771509 765639362 434254500 752497514 560886210 954297383 668772759 389512211 556575663 259074374 192017910 159923000 522282708 8504332 156355258 862110008 595361036 272501243 659368826 508771131 944789308 409025447 761921122 939090634 290128945 185220076 565355492 567869016 276016658 791567273 177402013 289427199 282621660 658432518 213376425 950363850 851103801 485785726 468020728 18100878 745715587 835311850 130990603 111928723 777787064 667870823 727916196 505292707 404067801 197312324 851313349 55615363 41262401 904336124 731608097 496635532 147366302 564339628 979818759 855297895 192301539 897601819 639157922 396653919 709182309 716161884 511620816 448003738 176319832 944710159 136212489 668634156 393120514 628931415 809233056 322262455 960140178 105594072 139650534 281511548 629534397 130442381 275544630 419781453 373512169 570525865 855233971 367565211 636144630 399103519 500280153 718704582 359205871 825378461 920997358 618471471 495253242 780046393 846390170 672002450 408766368 350781978 509764976 590757126 278343848 476270735 973399621 671836313 420443571 878872273 46617606 375806704 948328292 243452255 711517819 43574245 441097314 469179317 482138593 396752253 60552665 110464686 133303089 455480759 184840927 250711558 3633432 670304781 189490731 603380516 526518127 610718820 685759009 983804081 409086891 658123217 774982519 263092737 554393922 595011763 255376988 503475888 667396711 844155256 848815607 886096877 193498337 227562997 361559835 446936629 143428425 828701404 423915068 305170539 215418613 329544245 831080246 778970509 264074577 300892799 881308455 766972776 509974908 112583454 339648539 494184703 278860808 256973033 98031678 837706505 721291269 259061868 800463599 102732102 131208332 328190932 342686706 553258634 840837020 444278284 263351322 615516228 669779286 345212373 380772361 529192072 675676578 823202039 497334663 389150023 155567064 134780030 59278702 870399085 348050727 907471072 595280178 533090663 671663016 770985154 308962893 260076456 14778314 327548094 65900179 633850648 630955318 105809156 767958838 171716268 696180758 559381659 24712650 415080559 591498685 646640138 698833091 234093516 221379133 45604602 701049260 202422534 21936596 104662379 24719501 673055546 927095047 973623046 363972844 911128207 846544580 648265460 516278685 201658509 691303757 886718672 823172113 241547625 739841350 230020665 7919577 823307348 578896147 210723845 473751205 600862272 111737127 828463156 20063061 447895811 231423519 414194468 24695570 703710161 200563677 518169281 906803922 231136465 608202412 249582324 55560634 940952593 152934172 527214343 359199695 893821497 966018165 249125307 960464154 952639334 78320506 557591675 861586880 52848668 791625574 2262820 575656995 266554493 355380357 496407561 98068668 802833242 420655784 94778518 510119905 4283142 444872906 435288378 733599329 950214301 355002568 912426811 516575774 472244562 875508813 829652458 137937411 243804298 557950497 656975252 434104206 143973101 379022830 884856506 753022507 958508265 658661387 156728632 349925872 392110197 65113945 162568381 210572126 38255022 372487740 259849394 679059209 741006427 4756673 91096520 480164296 913522239 872045191 815195749 418246735 418880560 34396806 58840338 191928548 479917270 56061094 684930688 477198759 443124861 386312158 828281530 847748055 728245609 17205162 193138093 920697214 932485825 30775078 434134302 431617772 792336778 584767788 637175553 752828017 978932837 362215649 611067964 495253587 543378997 16997014 847711227 920626504 279135288 859071989 358549535 394535831 768682782 263622236 4619897 971827190 15184527 336805875 355714610 73765156 886661809 125393100 401469396 272859691 242018897 909972808 654526938 148816776 124680754 939076297 164971427 737643163 726303811 320900348 355705173 953027461 931213375 860076945 458762136 746863203 918801812 220204300 822188603 124942651 521792150 43059735 578084218 32450995 472058742 604889791 770028137 927000839 634111633 700522486 838790398 530604825 396788365 179488459 789283396 720816840 880283003 619770010 269770272 908032059 307850360 58103337 348739824 163655425 518013928 195496135 891905777 939857701 608999953 310061117 616169052 595528310 152934970 282738461 433607312 261479668 591582976 313861271 44826292 964859427 714068885 363846928 864611751 218942042 462212149 451716106 606407056 452419835 959136838 344298210 157799250 467691870 508030268 930311238 48427348 430438810 316768773 37810224 932307342 718977554 396369121 817368436 601538562 88767699 845078881 317882039 559251606 656958647 472557709 833061488 147862480 998946820 221249624 823824784 891289605 994308050 602901920 913012578 156716391 644814765 173006418 320591026 537949306 210605778 865330420 232549430 347759556 865460474 221804833 257643640 91924501 323051525 455735115 582574343 596113049 994119399 602506580 808052056 418994709 667962448 267611871 351292412 914057028 540014873 18910141 856577371 504347102 499566629 14030923 826285922 429040683 151416961 634038995 718131208 770768143 690892901 379946826 632227531 262508130 284330296 113518978 551707948 595334907 243072821 245320263 669072813 113863193 66075387 556813282 878778586 226778661 690975976 595129908 321157013 599652159 296131282 111631125 603594930 760131039 617335324 612318167 958782502 132528291 477510772 119929547 144061488 667505154 986574101 706232278 132343584 62290439 514720674 553292495 152737537 836700594 822081142 446862870 2835971 590968050 133688657 758389708 535123241 592265713 114346495 280669171 817796508 18978170 596674548 719790564 471878946 522320415 969061288 306136412 679872797 82092238 823447671 628669610 700665587 320300735 49978695 601106035 328337641 922807995 218586360 838666635 384333755 946233818 230964468 310496524 759226797 798936297 958795229 291206868 983625546 881397367 34361446 724518822 281518298 993739534 469224962 489442723 992474193 398871923 447276402 844265420 951541958 404384816 215226407 571907194 479011858 96262656 438578893 369690508 91905016 536697347 646451943 717123913 285982340 235211853 876486714 76112841 137306194 247421132 509918197 174060641 785752641 203313368 871977380 776411081 220874001 654326781 213088562 809819573 441543229 188398922 377052473 366660553 58968844 395050110 606501310 255135497 932431736 716388712 496017663 843488127 55357944 839275778 853993001 524130676 781370347 472343189 872614566 967633966 237122601 793456598 775774608 152251675 959563910 814497605 942776502 321206582 926723785 479759965 899743052 650659271 257892870 394944687 398261289 346775924 610682156 924259032 627992940 107050433 687036747 424920138 466624963 636929941 60913532 585471888 147014158 141851038 954537981 807629741 884874985 762117268 615315856 108069140 308814877 149529410 896449412 21501723 593830796 825660206 844281150 834858741 41044264 757986978 782972964 682041634 881565719 404609871 591157130 567782591 724224151 381226376 811024812 490442474 127062596 882265910 885719983 746581122 134480295 328313668 200020180 862053476 735891366 521648793 14593813 126462905 491319409 538582233 875046461 54074797 127118281 418838224 319686795 266422879 443515074 421338836 261337007 432550374 759021826 671725296 683178747 930193920 403242140 417032141 752729919 656429101 365997583 11684137 870980464 615716289 140599630 979081159 490564786 914719425 26128165 712487754 280326282 12906927 104829386 783211484 251645290 641965559 601826678 581731594 748635190 165174871 947534376 172178116 398868169 313653613 677231535 660758161 546252361 112762239 246771749 513745333 345990089 272983518 903689868 846278464 181007613 493715879 183575761 404822110 361117319 169269154 137262237 332122784 440726942 651942585 836913809 734610570 321646462 112564116 947711246 436595997 109694272 749317462 964123693 603812329 796269566 418336 354238462 156743728 891139850 578154738 784490683 842761550 552763545 562784754 48536219 929774613 33756665 929821575 346147891 818513717 772676966 510101820 193797643 536050234 704471676 508060810 668438367 385770945 655067974 566119310 954156038 442655562 56661937 121590210 561037739 733329050 682804463 264600783 781388954 505183159 65038939 750557980 875577133 369308382 317860674 558505612 577958061 60836377 236541194 209780250 368711828 81852820 156682856 682802991 960555527 596313919 176421798 545461647 678141589 872210035 336310980 136960019 204420027 937609090 850960422 708733333 285750985 275773828 61622030 987496193 895883925 44384016 829396790 497619552 708425567 78812610 185396305 517452912 211391995 56954643 91077004 361745857 772057246 611903180 225796702 98837285 642602301 784205870 603385479 331519137 569144502 785945071 148448749 133748531 77882788 685285923 209966424 466118285 559164115 128171430 833079179 248376883 190801780 933166424 85413191 348482060 727178146 440032530 806299727 873959784 172991913 918219438 473704882 281445806 609049466 46959331 745135065 784267987 461490660 561304479 175708583 507079084 194237160 319695775 680413900 147593612 732122229 74815269 16805682 2422954 798480286 292260229 990914897 347915170 801630850 843547188 947801498 625705594 591745772 409592798 478800924 563888111 626246464 723771073 391228913 969687102 726749137 58521827 28374027 305535445 572756217 520536250 847147650 349642152 497385659 512224060 879732654 90295099 76084303 423957686 672760155 141769868 781710958 449283943 455346841 71757290 353236272 447877555 738305003 217736175 704997347 569184571 381291230 175216221 550572956 793999837 722149606 701984094 260805049 743179612 806727890 931318149 164442504 218357333 111819471 266193926 714167991 85081019 114220071 359638843 190438503 30956075 570409871 682213435 10987763 261123962 449004536 163253165 641992799 954357903 190648768 494801599 300831421 310089962 145880230 451025 981621930 519134410 319151798 765157780 638756801 40833178 990722760 243715040 949924246 905942519 699244225 792926183 964394396 231592186 709670556 63207298 451343571 605590749 889125484 265049154 917355203 450886770 809323136 675567210 217972164 957864554 751988250 555961551 286538033 829859927 191193406 718800959 272097181 861006563 387412551 26030055 990761862 838859498 411659045 732545124 82009051 390261412 645309795 245050032 652567708 137494378 777847071 414763832 302359729 419950539 204361382 382417506 331212777 607579701 197286203 455945961 93119762 153781598 170741373 530623182 765654865 881662311 621112821 459260477 23926218 685101435 487475384 731669036 443199789 215244043 363421698 240109015 331150362 663745958 342749828 756905128 855255363 455374243 296517315 331862794 882313968 929392475 602043037 120283837 767346652 5437982 726663508 713820011 147239943 254458273 205590420 646675221 155310061 851554364 437133567 160232242 394607282 379922849 115882495 549715860 340016007 35388245 476257926 5135161 256377537 127184314 112747625 222922153 346392892 920522197 156044815 51633194 719707290 60477428 195547299 647559599 136328014 794557341 952052979 927597177 441881127 439937444 988104443 113556275 308582926 770238671 6841067 78602190 992760267 777090442 463609752 175601890 261888162 421348596 380817937 424978516 423386594 285738282 724984398 44876233 666729369 280880696 894599485 294354893 460223469 870531923 655978295 5348740 226587128 768069589 558945041 17626694 239577579 114882058 347838276 618164772 664723852 75179077 290586827 611003945 20041027 251194000 462308673 817842765 187132946 73791047 284296381 474783979 886710412 506991430 314127409 638789620 54568623 127995140 506468543 299714736 720339796 405161616 319567148 890601630 243624044 223776402 95117700 82504564 570488186 838046820 139056675 88908830 638893340 692723681 504122833 921055268 81225586 791380865 663966502 280031282 981670644 961037886 449385384 278852911 690660339 285615624 199297630 480883079 619968207 91658984 422741729 958956524 716957321 496845427 680020887 995707114 316163301 345679266 940824267 750245163 891468306 841586936 30879985 7626550 429359145 915007062 620985757 87387789 114151082 574190280 982663433 874971705 310038163 480522528 335314537 112302060 341197069 871613731 692901721 813330165 968317636 291097428 94236352 54870103 685765710 41230675 51292819 276281570 535566708 924864562 165915672 992380956 548859367 434273168 495110551 743657723 664362932 883779670 171954019 568987966 61852976 764746082 552298892 66847694 718000927 953427249 930755072 683410968 800095571 198824970 14816356 998493151 57217279 436943528 580052905 681011445 714918230 416571119 136875510 957221970 978824848 148188527 149351010 782033314 223856146 83168424 204588060 728248626 92624434 712817438 756702745 119145290 127825801 484158347 380020938 407209612 138278506 315331840 676001187 835823245 191603412 914268683 984239505 290556999 636040552 659766687 385372501 494100369 732729746 863306865 752346114 376473454 187036008 888245566 906314524 195288028 450475268 631290017 323418576 391410734 169191908 78862302 890809540 988959469 619510129 473906053 620533608 638064334 128544630 71455411 60501290 984380644 845177475 961328903 41733280 766159210 747304913 422487021 561061050 432805290 215593039 869847029 684058087 357664777 473442057 954612885 294535522 916234533 57967144 237841866 660987161 51829002 660644124 834935416 620626654 587710246 149057674 349041264 258897137 991964161 497743525 874235037 709581769 126131945 983546072 354583133 594350340 34163309 794396295 9336549 761503844 393367301 98032896 293536462 499800093 782513168 244974874 158647002 261449260 616248605 671547697 806516590 572187538 426183364 795293089 839268888 233088255 581499070 867147308 320160810 98107324 759878987 295773430 68341049 98056321 725471302 826939394 278239484 80501748 244992201 39312976 397536510 617014883 817084477 634236465 802409157 848021138 354677557 284143308 168719299 920523022 704159769 164174327 811421223 166095590 170813008 776444421 421056830 132740322 986295524 406874752 978182198 354318380 226111448 968919109 678502156 48197237 805511116 893617191 332506968 120936833 606562499 790462801 118790713 888363254 179049627 390839432 374283463 245796883 317924903 514297270 756827577 669427447 170801290 47533991 666608976 457112542 88148043 691433457 27712144 594726374 313502924 893881677 25900852 771854744 204358479 994826949 667906275 957966981 963006387 264384451 801027680 141833184 342874144 165631974 287324226 876519144 393520319 553942312 407705026 603323469 245487682 417518519 810357611 626702329 669778285 511226126 105374547 501379128 302833550 341319062 485281853 893007190 51643927 399964731 212532773 21122653 264672482 786044769 752682762 952652837 779527582 159021422 465722265 798391413 329273086 373808456 37873636 3388715 585724348 676183102 460807465 709093411 911787950 512440695 31574819 944013999 782429220 13624921 36950548 292253653 577358301 276256313 33019753 841648624 432387157 141578621 938890332 182244506 910579342 928950226 886819140 572440583 866008814 16311886 882775586 74697640 521653941 583106506 663643531 487894361 346075191 343595353 684354377 69344875 539620569 103668153 993706501 396426684 16895034 673682121 387909810 918640690 979821589 963967611 630633719 523787225 524000866 470268956 118285408 110594491 947192333 248153564 838546180 405351855 657935947 506414384 131966424 339815571 662577451 941677980 735662212 903787421 227611288 842740357 608089156 994728146 852941915 20031045 123737817 40351353 482092322 540962591 431355793 722382828 974778053 609878248 459163636 956269784 146222947 836999252 592437284 772395543 551822429 107780778 413718461 287008366 481607704 979335815 397100878 388538720 460760343 880313139 105241428 990048511 288856935 265517321 179990213 973268382 580985724 376083039 186086586 515692324 704093279 550068841 542944795 685308438 754472731 264781794 187092725 123893571 745961435 923008909 250943339 269551246 404075834 176330978 3791908 893314562 160521936 578551802 694585145 443376857 233732654 245759165 129753991 654832252 667804495 279500836 467397215 481360203 476220377 330814230 213775266 619860591 139809132 998095092 714660 677447183 863023328 329569653 456556420 731968909 94854270 793646853 745046602 381149423 210966051 442524907 762443958 319625137 311765994 114983153 899813566 111853083 577198234 161481439 284534188 2563957 825608942 706639698 818426798 278201330 204759 531279542 154227406 98435763 210425373 198696296 641421186 592387114 555242216 563817247 456349485 901568257 511564842 662884889 578514029 144228522 642319018 217590595 12381519 250377088 903689994 487884176 686855022 236813547 40309368 374664869 320776327 468951272 446576731 293288707 145461075 112480830 757357875 726966162 383735074 576765704 19720610 807000415 687245681 764997024 110335976 636474288 446895262 787107925 644900813 770363892 835745699 469421607 256225353 456460350 919019095 925515397 269932241 47478956 660832538 790396077 996766232 873726926 225009418 945656875 168572500 76342305 791628469 474959060 70708778 444167909 412717143 235583518 615340028 993823190 392967132 639918763 657826081 539557782 231868101 203703620 702655024 387912365 86262461 479580566 741628855 426861082 509635764 680228127 991294754 901367941 991522004 779120172 346266451 106675739 846485584 779261939 771764056 989232132 875601340 78581238 855555446 849976307 554165584 125315333 64257169 262172539 228178534 799281202 859570571 276859580 774789219 805045855 823465461 821046491 552489847 274438337 429214369 795183214 848698728 226610108 151187310 602134905 118245909 195332549 430476327 133658927 87504739 677001234 184154551 762084916 619963632 140082874 211851837 720819499 276717908 651723313 852106837 573003036 660576761 640457775 561304405 776497110 356690392 120708040 609861684 456788252 321214735 454203351 981543983 831159293 185081644 946943897 26335039 600491895 190972115 964895780 57767009 849601838 95108598 31751818 52341844 443778944 142327842 196465034 97890990 575213711 961246290 281752987 72694490 147326097 636455248 208033092 633058659 117900090 770832004 166696661 677689145 397845740 541590770 702450852 657397073 676733571 464572037 842621007 329088585 758915189 649554434 915069802 97170341 359482813 811205615 76958391 791936640 147364940 802837926 253893024 364851647 581811022 838278501 269173978 995725396 173387348 416950554 862841701 336490988 572411760 261300957 472110736 536979721 114969309 742938644 360466840 622390941 752322382 191743587 690937690 392040848 345925564 536001327 337299694 816365137 653829559 910311769 932986888 334462847 948548252 157157506 716640469 719279649 709383404 614771992 832402985 922850779 115771499 534808611 106352644 727227233 759689054 676327620 367487734 570098980 515819914 231455143 446516620 636636661 668865581 166724957 864441457 378254603 862680315 305846625 994696795 243323503 583167623 860655292 330872102 640285921 422561787 12545692 87099940 435931359 524430702 308558924 765161682 692622455 823945664 282449091 308989444 402436042 13954366 479149631 516725370 995335442 761480693 371252270 809608346 550297808 683103990 138807376 460929902 534113422 86564275 842956083 497517954 258607850 168949844 675290620 928058929 988332776 505292556 715921123 180436823 868005898 995659900 549295159 744664837 594538337 43435861 679316950 271469337 161278890 446038480 85953875 662544431 467736040 923530466 270806610 528919301 26981197 524168997 596507819 74302245 504720791 428779816 66188768 774496336 304681293 375923854 86575053 7170724 834579065 575530378 760427234 740302030 237733671 524782950 697146775 961402099 549911560 753331456 197344871 340040117 618144587 949640971 282983381 970622880 918263372 372280980 979288169 716138643 23938621 996856855 897319587 43672253 981806215 871800885 638135110 102091343 977388282 142659544 725556415 657014092 858320381 245546101 77430340 705646049 496735268 807091409 909276966 367511730 60815601 912636717 26877181 747721507 843067590 257427502 907308342 129389618 187850690 945899148 335558288 254420943 905098930 423133107 530665646 388521131 755590067 303025809 948895066 780866063 908650028 998867702 547371632 263029319 733939942 848842874 459018354 266318504 379967173 97525311 364716408 383585271 439705707 139821835 471892356 416002377 760016659 651886545 158717981 790838859 499231678 668899666 990476834 994491881 604624980 764882543 15807187 317550786 469443412 26634550 564779591 683854208 719533028 767721987 412414231 405883440 941492166 651409632 772605423 733985751 909464460 806739968 333236556 871070759 752663466 933087498 76037072 707540855 529619426 331395457 588076888 399712311 592790304 381968957 373358283 102685495 245950937 573735006 115651360 75385463 883340239 905416367 195049430 940339062 604890517 27323114 364106990 908475273 603941908 658843793 593581305 320846485 740002174 737624461 985212647 11681037 983867903 490943711 781954750 550742356 711865628 10636220 416116441 506368547 639999654 734742258 495147256 477245814 998558568 103033627 197727781 299852208 266867054 398181204 855335305 379388635 226483185 963445713 8907543 311167065 96685664 219921488 894381154 664122628 791464601 680289076 306629044 816769793 615602902 993367744 735747525 706950410 462643279 93459748 70424646 329578385 224539330 580744174 933474529 748917595 616633902 104550107 307208956 250671363 658726264 807555043 235485699 532602140 107911875 111104342 531673611 79120786 225249462 619444602 736033200 942794907 17097686 197365196 711415066 397519999 775371872 862385302 635308272 379357245 750086193 627513857 794496000 781533824 877151686 633950074 288931190 364509993 956115723 397022679 438052650 215418639 289073476 452105786 738628075 741505028 699020271 863749340 92211002 466036748 732432426 749853491 835163822 426979550 818734187 218420457 953989307 311330106 730665735 338531755 117491932 673007711 106860806 995522119 771986063 255717578 167656483 66741722 507873664 938085989 816411500 359244342 958813220 554648956 395150350 546821358 892056644 156180032 676859007 427787684 579437462 867185724 986566340 850417003 649343879 45577723 123008507 797815306 918912544 154318454 626375143 681095909 438494975 346417938 269987251 545891861 117209109 283521094 704765226 974359720 619135791 183698052 710124720 648499377 358460544 494099007 807943592 831487796 763648604 201055256 546212451 684620951 723297817 43161879 741151308 993831915 242237363 379166329 161358648 633654411 313543668 636361867 534783665 388192697 763448036 481791118 599346569 687622388 919680367 130821018 467493814 747707833 848381640 465081627 453083179 833986064 236430032 346856515 358742903 806424181 199800699 274172294 695617375 545961729 71389072 924622363 633084892 800537800 591034641 18025858 551447343 163919259 95918305 788225953 347110146 799563388 961241942 330921888 760937926 15325241 606884524 376713600 802265932 951319678 259257571 990298633 304402462 398139823 754652096 567807542 222367862 390885778 434464525 399723266 45186206 713927556 177866890 608714711 916225810 627245175 382592553 916843006 872248668 44645333 933098195 90039757 214060126 762330939 472071593 469720363 952941249 369562053 371162048 865134765 440611386 127960029 512462884 321625439 703377905 530655910 409810195 141332112 562371889 705178202 772129629 589459834 957100989 367539415 707356633 301392066 968246753 817419857 956592596 752791724 542879122 849408927 846298454 115211999 373365160 977073804 856872871 195906604 258372617 117595856 246025470 316166730 759738283 413665661 169579135 370278142 723412332 493254558 675100158 521060242 251333943 624830104 406267654 630184422 780452125 311310879 546697085 718597242 99876588 83894609 688240128 926601504 284633357 70925185 812751356 572375113 34424676 85040174 941106842 493083606 562605611 727126257 384482335 662912402 174454182 371413207 141454350 432852140 551597946 582129319 590387571 761901621 185209159 506502189 929247793 910578863 788595423 159985277 737391740 68478547 689112927 18758089 768500388 532640571 369149152 11125010 558592775 572033300 572347124 33136120 772134095 2059215 653539794 331829729 570892344 735921668 963049837 489494243 84203235 725541969 239970603 851674899 651092169 923648390 141708473 472903469 347215354 103515416 933301591 347556054 585439918 820845122 324354378 584219199 102272832 907504228 847454872 847343094 970572954 418660965 711755722 996922922 180332004 463160713 987175626 812617877 500055657 157743835 167353852 396135332 450109995 645603701 834665480 17988577 722236065 303633518 632858807 388033662 843715994 266930028 963698704 291654706 92480345 506750232 941140036 675174046 85085307 703838320 780844913 147017108 819570075 983022549 209733615 36235971 481609731 924975487 439699156 131483399 246701563 876516302 902248893 538892045 579975391 160397910 367592241 363921992 12316890 592439603 934074192 129970379 731769298 186806696 819685155 8354758 206783457 367609178 810454753 426013867 961883803 135141263 418663302 608585265 974447453 598837852 497531464 388801527 212199545 854210333 806810207 787891213 292269210 108119430 130529321 306767510 162475294 866983506 479922964 230718156 702319250 108484118 948236652 625689657 481240997 228627812 563738498 617339663 14430849 515527543 231691687 89302677 727542037 852403858 847368886 381782064 991450208 625728360 234246451 948931329 92119331 979703967 711469707 683486925 654263935 501874811 323331949 48737752 714448877 594218578 841706716 896032137 978931904 995962352 768210100 147348366 298477039 94062259 129441595 928322081 346027172 132724259 194072485 204679016 428671578 801879465 999051238 662646450 909921022 137175980 613592872 861319986 999811165 221483765 227336326 739357849 321393440 799166767 360224144 685079722 432198417 43169697 318476321 42915204 166140264 843778397 255935665 137763834 215376258 395903872 437797865 787481601 237164142 420199178 420979370 517554922 452044982 827526283 517353502 10440995 320239270 135992159 866833768 480633432 912776017 637422646 557152624 249213808 438265101 739418718 735760316 717114264 566030822 559548683 859991266 92811036 454348217 270216563 805594296 142156878 670416555 75871763 947593364 573435274 964336848 489249261 143649036 379894720 659770334 459558842 676060587 407438626 157167802 473846674 154415113 262860695 86607747 232367134 790995896 174020648 265707148 518510102 268356020 798512937 984085571 542191162 847406435 474766301 439891483 196818441 207255845 329173604 388806307 295296601 87279561 739960 146344102 983152813 154696039 178154629 967275582 375256650 918507486 713853527 890281675 708037663 538994107 766198607 802509140 414695901 98952113 353435565 785795978 858532918 762333942 962886150 971518435 731975234 816557206 804736133 294082525 794457580 1705387 972549225 339972494 785680930 189312549 702003587 169927636 273910964 389772002 52437541 142509102 998028394 265942031 358300393 912684238 428902133 110572219 538302281 764007075 565685351 861413582 43684635 724741114 25201497 209488319 282096533 384152395 337493145 82141856 717790186 274008925 503604279 250116033 76268550 153615862 949390175 550487800 697725854 211136607 692819433 515954457 520516915 604828426 366214799 563605058 351216145 906139452 395696009 109326682 175331670 745605749 755113247 639970588 134091464 570299308 469250218 884364323 303022804 185555661 928239820 108463510 678294243 996153951 226479763 98126145 337266845 767393356 768674428 334964360 366550856 613326005 427909088 17375704 586400741 862694292 543252217 502960072 488026355 177421106 440595471 956748373 549052084 154960492 557486255 571156030 826878812 9904402 890398436 735750946 807926314 925780043 935094526 175987411 27783290 152296549 397666078 172157365 953440937 282616482 397698229 772012967 47060221 802847286 785037939 101861663 363408222 77284565 694500834 898399505 405716199 739544979 746403369 54926855 732383724 359909177 335512061 505888282 751738949 473372096 119759140 384500332 595163717 30353000 740658089 859080015 594320436 464525380 345669745 154355426 482189472 949630974 85486738 473128162 551469235 945678144 219677809 117943542 97948995 72457967 932824787 20792244 620695429 837835777 3879702 871784630 921879062 6067334 715980527 306912279 542457060 379769000 44467033 247442287 319044762 341135286 553027974 306946336 111867844 15635189 540465948 876092999 535638617 563390864 407257081 517010006 846231543 533949141 250679247 846087692 971704999 492663748 222462310 197760596 542269387 747251208 753210950 407878380 898809436 342076011 327013101 75095122 488566916 68114962 247457281 973787105 936760696 830044201 489735559 422700804 603174964 629632871 850324827 408413049 314150853 26160135 600573984 411481323 384918949 64072368 546468692 338800122 798127872 882115175 782588318 315599037 783690460 37722498 323648625 277913063 260927939 682114457 790273807 717161193 722476540 76149642 247577714 292574195 135897975 141429234 717214712 861727301 562052078 618218536 636190984 23189984 344310764 163531315 487886960 21760117 880307726 75531143 587691042 370373918 694302815 175805442 683003818 393547944 769783055 52237134 242663751 936265789 27392045 97621379 752242976 510245070 314294183 183399284 166998111 147767888 185516657 972764114 754370224 591881799 756258512 490936029 510954559 127151246 266384258 971350112 471295401 527721743 343129223 173857235 961503291 287513839 499044456 689892471 167499017 258707864 83915668 936988961 97079563 213103943 525617384 284657921 248093497 291239668 196909484 451953663 651317900 180201978 175705847 647686035 179286739 239535279 537849534 462339111 396180799 62185902 790320108 742163561 500151776 886728370 793983934 619166310 860525960 183618380 224645747 157783031 247689978 901233564 742110966 555650083 336305937 715562601 578655657 893006551 760644011 583455209 424680300 466911191 548280970 629741302 233065718 933274806 684000069 744644539 39846436 813309993 765278547 69938222 281093831 116569532 691654261 633865355 228602537 183714083 869767272 286736475 180728894 722725235 276494428 520712190 596573506 391782377 714050094 241776436 906542675 282891488 814914790 392649756 723184860 821521935 502368244 804638298 543609437 953877430 156175473 789613599 233446975 78815672 460241575 805986338 986619456 20035031 492619853 77998957 606078558 984336980 719299412 495728670 527026853 675407299 644662990 716204209 146142851 499189048 926054327 185933315 217388666 105890386 94107787 185564842 383984524 650929137 943452881 804287979 84803246 628067485 281503789 525581640 437120987 853420683 718933370 650748792 718166419 620176508 609845455 660290606 924620612 25558712 828578478 651832754 115098707 869767697 529792936 12476017 161119428 295899692 373643354 833540330 284015617 776028455 390458864 62347640 646047908 535006196 493495796 777721708 249810799 209214595 875906144 31375492 29474557 792411241 347286775 482486258 706513124 907904097 136254722 232897853 846353407 447406491 283229749 394916971 514893945 696326220 221441623 170073662 919486515 925756812 731418185 680851151 823502766 348561618 493317510 358970578 991032263 457521887 130406311 520950863 623394052 492875790 557694853 572462424 254390363 554924061 97372731 363768758 125108239 725630670 275811781 433315414 795631555 13453855 788303130 18698485 42699163 534567823 538201673 906401467 248621369 266386132 573072915 766421175 569364710 132531812 882455603 461573476 625887099 143675384 941836102 204553088 195615853 152628139 775401304 37844454 50086738 82202229 658952479 510631965 728124216 538960406 762509941 868785133 787115210 295644252 786535076 121452259 231549315 914275637 679115537 228885397 746566806 560190256 205117309 973845949 565336430 919613899 645108338 177431132 222350284 937981366 430634640 717665898 983677090 551797388 312773642 389979170 529161825 140255226 966151560 683686322 91220599 813816384 628170064 175924465 623529410 87039406 333952953 420902447 640951054 397395362 226418257 827806600 27422055 499217356 85722042 709446402 948465742 153892400 595082935 693846053 213759922 837333200 522454614 405232148 822064372 320085122 103529470 368772545 982466365 614772903 360311819 623059465 399701936 650577453 92004676 912353647 153650519 331648497 881373695 861324019 196224742 454048211 303228223 190057390 219617057 350019550 31680851 35944014 435062548 765412611 589699695 289630395 528093359 215397504 817672394 23717215 233694240 888058914 885279853 959392188 426595195 721549833 634830319 433800793 682005692 940123766 547203097 290520736 345701592 684325058 78822629 68422662 999906122 799430681 121276734 278592923 657330135 137656272 440275338 850758527 681148774 33733355 844603734 602509770 791739664 951311901 76179412 47916526 842177118 316527190 213018023 911656788 462721837 94374260 752525018 320143981 872080348 301374047 57264037 932731452 529645663 656167593 937037624 427297054 512244523 662401683 998056179 947946005 668264852 815606984 709014931 140163222 238450551 716890185 749480861 254210854 508344219 132284761 332754648 636217637 548380545 463029707 697465826 843334708 868560538 357773952 314547494 567461376 433137753 945006194 187975647 390174622 741684058 890591032 575026985 843641507 632973471 452018685 247710541 851166617 596915811 431609373 896772168 328997705 307610406 155707973 929530407 62325402 530628802 153668459 850640375 893932117 88568534 273954739 207265265 864199232 415048339 756757456 88687057 958436874 426726169 927930335 326801684 961721645 470831410 106262242 39531668 774796916 264324863 126870588 380541299 169935001 626419432 286061886 189502293 398506023 732172085 523442036 439728871 188605463 200888379 276904429 286393556 262602372 516719580 144332157 559128475 640681458 675319001 85961547 426180640 21225544 927861453 895516582 994304571 360356403 323361224 113382157 881604697 149428064 656626187 929411962 200853 140810268 5673759 706250603 605065483 958117864 500049181 387138516 982253390 680497465 992983985 708413743 816218721 677546108 430883823 119395645 607521891 910438847 532011579 983560987 414754236 249234009 412547416 429334392 175092217 369706576 24662147 514251467 998755744 263805496 86733889 685399010 925229612 550111283 369378275 167392463 103246875 491369223 921377403 665254718 552406415 859824788 677481711 75929234 984782612 661771058 332674818 746685873 67441592 233564143 943529889 555172248 289165025 689600854 977263934 983760363 936249548 126440959 39448587 550889974 416713493 469942032 817824594 48307299 408891427 835146544 751579376 854434734 29937126 142290717 971986015 913864943 282658720 663519249 685021462 949745149 617398534 980542279 559850762 37632891 320867245 660969200 185921036 95577227 431160216 503384862 99857737 191280573 220591556 904647186 665598087 647770327 45003279 102131854 454472777 592786818 917734385 878449866 561289714 729171963 640114362 531280183 296069739 370836525 26722668 223388908 69176808 656053435 394949210 903890951 107437428 748474817 826823331 623731729 632981720 968138834 195573261 583950243 2600785 988814222 897236544 717002631 167792922 715928520 801839769 574133959 739094059 623282934 256660140 206143766 794939216 550343339 60372826 416866818 574753247 930747613 954805637 159808685 220964071 53165516 503851970 727797898 402505010 661386495 676830078 142234413 349110256 660005096 20776255 355069778 927705887 223837029 174954714 994713116 235922742 91007734 285089669 388765670 428909982 157009921 458425072 28771026 767359316 545835087 76047936 534848746 172074943 631004013 485529255 495072949 257396871 871500116 601343761 901905148 972383982 622370656 912026198 676773911 924914528 508188855 52936743 788295574 967284480 705517308 160762494 624852081 514423878 942363799 550589295 505075803 996293166 632143406 52246429 515458570 965295387 959539591 591827999 217945241 696352721 318316057 886085092 363042715 379680738 975821844 221872780 984914485 151035922 775206610 256884250 209917594 302957248 783277749 771369421 28880351 943184303 190994438 75351173 956669468 262970633 696093767 25646122 347889254 400109760 411134842 810214809 571288883 844509153 382999020 469873041 155823749 765006561 947271558 300964966 991534003 441175627 511724975 183742475 953338748 984867900 315778228 634743778 980972171 473517068 149630503 344604295 533180689 275907291 695297970 373500387 62930054 491221049 493030625 463271047 660726496 943562893 51895263 251963554 255456726 134167640 472359425 645479417 23433717 516643675 808176958 117001746 964668568 168780413 568496750 364777433 868134325 856446292 21998406 203536741 20225269 466003357 941118306 592446284 927305240 581933978 558536216 228151249 561661603 425256600 779649749 993399152 910000687 223781747 754614714 925351669 390967781 111027490 695068444 722555527 42302163 994415451 585693600 372354982 544218137 128173939 222337338 555014468 637758017 939155607 516390696 459841147 496225007 521470244 419309459 410772501 78423786 192892274 514694967 684326361 534038638 442075377 404810376 736457460 320000877 99815395 490108537 527296506 888026983 796608725 891373169 948469402 277506952 816475807 313592592 46368444 579165188 334227151 515799106 347588617 51905293 274406085 636335680 101767219 941958237 185896218 38963825 662438263 22218979 459749456 852778299 213277559 501650290 835095054 603128639 903898269 334080185 47313583 483828632 671041143 155433176 738967264 675059286 965666840 895337744 685149208 638889653 121346532 407003646 832571067 45618238 819274671 809790124 440607175 139876603 974201493 21655835 475945543 607758495 86980743 950947242 252307314 931912607 845211911 354391738 375625707 677423646 972188532 724246351 312914867 234298628 803326719 480415924 913372103 814591531 590588070 367739272 934938652 209205943 523946625 813273996 368718618 773769215 807463173 373850582 909985198 475396665 581711052 992984520 916421877 987334672 156197146 896064195 992155131 341270525 873826359 446062703 220190841 400617127 174069455 199843560 522481614 599538541 186942677 163210596 91599075 32275783 267716346 685356713 561536387 658937238 528818590 740200950 85123593 946806853 893202100 479245779 169102472 257562370 893266189 873566404 790349437 456360826 332516201 403378757 914461417 869839857 870298981 455985310 178808741 951448552 498050544 764954787 609590284 446717787 95974185 135545367 976391878 264394731 100260836 179576387 55274810 488629161 175610459 206442630 505975986 908367724 733490925 187805730 258856674 116496429 676261329 177584160 361571500 902948550 288512756 774244155 424330389 616388193 258383637 788510317 556051988 467877700 686668323 603481465 109614790 486622846 527894149 209824147 317582676 433273305 517023595 208565028 264921529 122888390 777425550 417254765 604039726 948597350 982668589 500587344 375331785 194567901 955703589 947967905 442815802 393155403 867960529 608374763 251574175 225813149 662916720 378381026 532560720 728609545 81271454 778609869 617183433 927663224 757674356 14389401 724082142 530691142 111879834 835074470 29501271 17303337 157514035 666921273 61834054 92791134 190884845 451602135 106101591 246455724 400919917 829686089 150663319 870154084 733600885 764590518 157116983 219909935 415564584 136141531 667594859 887723587 456278550 124417577 222699469 348758076 360957298 547191506 433467850 225208607 31871958 569523389 708641625 394551365 865093247 459149449 36706886 37889117 505166882 213460849 845406749 932917475 812292473 347724365 624741762 420879180 20881851 767967314 400310949 676880743 993668426 27097137 665444445 98664972 980467718 899341080 921910303 774004981 707188145 282433414 152011538 389074506 892414081 148571525 385043059 637004653 252554699 4668749 875370174 159190560 12417169 913980392 823080531 969463936 73656924 499606398 846089948 451384382 925112800 700878635 203025273 174246985 946998182 264389603 60002149 301966305 84049941 170925607 427809944 670149139 425291137 859121873 90649739 37271640 289594661 830497066 783411339 450470157 533247218 701806075 58085429 313582250 903316037 384268464 729756784 721696017 817109747 853718574 914129276 353711552 546174450 189509721 403774604 839208661 921484165 578910406 45934066 642963540 943312124 428377094 773176214 953935787 866639812 532182739 460320331 718483050 79157373 992399983 583749970 955836140 917036140 991295420 131077251 694200030 62609729 14537806 535111357 140380623 763475537 823390742 89234240 174629392 975312966 825709186 101073946 913886718 496247873 805035183 989189712 920397873 897858696 691643187 457502232 971053031 503682288 783759798 542718499 365270114 201473714 772311805 58887641 276199130 344054090 603690547 62744324 300447293 495143141 648168278 460908498 33188730 640973495 689042694 655192496 4703687 266003420 657859126 207571993 386504077 893276204 279416829 18186069 561844850 279158514 933023281 941808187 371871277 730042288 886994835 436052915 408597189 324618547 154172672 893259047 270657293 718368695 307627906 762256247 744563888 401299821 262613635 214607293 696785823 307863046 772319336 978729948 25211364 935620634 668861524 935106221 915251103 215213015 246553406 454298673 829006281 898238555 502386335 866436499 343600946 863168275 295997949 619217884 335455789 274181676 137676734 250319695 695887749 623877043 203377490 667719984 446923694 852159351 715419354 237028896 563002826 235510397 226089060 468690263 957671628 202341070 835650913 317965848 764587362 430531256 282670453 87170983 17032340 994208590 208919859 917046375 579478517 438167307 845617234 839464405 823721070 257622143 150512013 398788073 382656981 791595147 860341528 383297810 258270023 139017553 320584404 849020898 107276006 92506394 591157250 442565111 260338540 307351800 357086415 962145785 864708917 198458085 407386628 286825438 340713604 903888898 482215151 633006828 54195228 252990504 951393998 678660513 91234537 84961368 138911237 211481651 312662064 337061408 46009878 566059721 586440177 385845372 873243506 157862711 37673311 658608317 994012971 859825051 412618050 185458561 719735159 93609297 318207729 526433544 86572342 880961246 519752282 646110731 191303007 461225236 50968086 198988827 269417580 904675243 952777735 722273927 859608470 895889182 606733362 292527482 739258849 70143301 95566103 627920415 348825039 790759478 214855898 801412892 6677526 504404703 416816451 800703099 851833632 661275460 479700984 715765478 537042472 87773831 338523760 978224530 138892774 736317205 488375985 391833389 930355616 401094524 230560256 400805038 939577998 24535765 613253362 371531745 171095078 16602429 290406491 98744569 498050040 540282087 874505782 934759047 372540824 283836814 467236111 433381029 414978351 968980406 90149169 611278041 554654820 739653850 828448896 730345596 902973451 448736313 9959353 532989296 346156806 968310013 176543334 896181829 281768030 666963956 543780227 380704612 41661099 599885380 673200818 151634929 184097761 55448919 22336084 792022409 403572102 816522518 736151746 300015741 272996688 999283822 288319319 89016138 444943050 352295371 456666533 340239895 314276760 906652618 104439749 92060831 852793331 878290895 721937775 589150652 646562157 770454563 77042471 707980230 997125308 896698092 367583963 765201260 788283888 456041644 261829335 928428256 978134894 185386455 366814409 407110427 451502662 313955957 625763929 6290664 669986265 753991986 146751933 496374800 480365072 714324615 543770505 185169604 460958109 614468655 311292162 223569305 271147526 190964156 198891106 131153704 211017382 334208492 748979703 714072328 517922082 131436595 896063792 911431348 295398739 894400500 450627414 315921488 901648534 563135957 621730027 513493314 412310701 50349250 863353724 915805219 526343217 484391731 650545793 528458262 324367869 753161991 371503164 384559511 454795940 677988343 476736130 814763234 358198765 584998569 652288658 531493379 965295572 142675325 788420445 127335676 709131331 974469640 706127571 366056484 903857695 600964629 76906122 370196848 670880388 667990151 960427446 938138257 788954361 438122976 687148245 797505248 286735067 285395633 401038208 231610269 633073802 230129281 998362638 712783100 937716082 977026786 408221678 995037920 569233411 315076563 697974880 696114409 359219981 156771990 43558744 31029246 553436659 984214159 302682977 94139447 40453318 147482763 842213318 841829157 748758609 706910879 278367293 931997578 173104743 270041441 863750106 138318222 90878732 826900947 857301232 370371854 202474994 995154298 196930071 90769654 48061628 222858167 699893690 404744035 649000831 212647043 697028478 847717223 720067383 447911812 571396361 720169341 157893836 625254163 635955669 740123939 880512917 339310317 878659742 483695898 302879794 914714360 905122311 459904940 749559566 273159061 188985040 563438010 779705973 16609885 322182051 102795900 751179648 164935329 671710963 63800862 148954894 664303686 962527135 667541094 43596091 291746753 616654885 506668194 382205284 344350479 353849273 616431790 60349695 322740646 494083490 49031897 262044069 118035006 975396998 220176002 721088723 794158920 298425129 431217048 924773962 540630034 974188877 682373594 657793820 200015506 767623556 541446999 418131601 34384258 589941903 511116170 915890118 818839074 501946508 117350970 815594603 29899501 984725803 556501193 15628565 989339649 894852872 527300903 502020804 898979994 670946266 817021678 418189449 975416426 379830297 771368578 368860159 506333347 704156999 636916000 996809713 915195642 986411532 187269824 868972651 323563576 416568145 187363360 951441363 977053448 316063338 117171555 138778275 70584378 683509533 212037715 13421100 452264017 568510222 130949429 40475589 454161164 4849922 789133509 513386058 612402521 71753544 651158555 286133355 672394730 647572657 485435276 320388142 991744984 630293787 471167065 328684102 38282668 828432631 567957096 886620120 81953981 484705597 137901797 939021378 378558346 737715808 776510789 641290410 218755486 68151693 815050921 42484279 306920370 92449333 859354736 174427235 380289689 432254405 599787179 549048169 684149764 353818491 426395997 818493492 143021133 16979520 846063466 728633616 736257131 452614035 765436734 21889873 863288320 304369516 316986868 802010536 566971697 357707571 379825549 689703758 58050354 456286185 195256851 940644867 617998565 631218511 909986739 209279611 95806138 539715219 731143675 565440255 161463075 590791782 693692679 756081988 893279527 547360251 958148685 636155569 392869013 38057599 640771982 717322420 771815803 458989704 415782982 150329396 81523156 14618219 652163708 363739919 910880483 775939525 645745004 880763173 70853070 144633999 650912828 97628975 995189354 602142304 508870186 601821345 952683242 36076099 562147397 13995249 76606215 452741054 916295771 96568994 63860863 190515575 75224283 540540692 212605908 338871979 655395355 884411695 644348505 270309024 268850163 945151216 228290827 287856131 845886936 248445861 120150790 947651309 53866698 980339895 14830587 152975713 733148598 17123665 391484202 67145994 280782745 19757726 36617201 427242074 897732528 816124923 847981196 513614388 947581991 448658674 227920929 946682045 994038116 30883873 662569534 226849654 901078671 530251183 753808908 486082977 298205036 749430676 471342901 691408579 797165362 434374922 947375023 36768879 936924230 222247402 307716446 10345052 773989304 202885787 127802392 174899468 697068930 773922927 202871278 828594240 764802194 972970273 256912548 866511652 587217202 59320332 163205816 530860458 813844015 721389148 351338002 898307904 485344591 668742446 679705404 89565306 819399267 656890392 658472561 748656430 746958341 537382895 526723358 62744236 393761697 405768494 786615224 856927176 761242456 669464617 439517241 875836367 806070003 992788156 56151321 834105098 83956268 211685696 530414273 829240646 51646477 570322055 885748532 318725474 783495850 776752490 875590730 513208581 428620405 375956723 572865189 374093185 675887118 807603065 710080053 449099251 413766535 141196653 448480914 630147013 434322357 766826977 3488061 664785614 929795608 754166607 610362518 828234288 803916017 923256994 104296557 652122580 333408489 301224113 251846154 100703053 289501822 461556393 528047819 171757550 454795977 842471590 880634478 188053296 783397706 272266489 653849646 69676672 298039225 626754595 431316341 14465022 112226694 52436711 200986238 188408711 41513590 568185892 202435321 521758230 230277678 225653959 958082850 358331286 403659992 631098137 687089129 115990778 688255912 432021305 490300668 426885427 37884350 174206451 293517334 849038772 822783135 195016866 798233487 186960920 228459081 525501817 403917348 582967280 484470709 516674505 713873307 919996517 222022173 623126486 287300863 462944077 925075429 368609048 358649079 39027117 552825883 576688136 976934399 434560675 187764476 481381419 704065265 160346165 65827336 580285911 319854008 666082042 944779725 248319565 671674805 808962803 380035109 585649885 341781849 853624083 204748830 510218152 380677679 858335477 260194591 869997426 379471916 976999285 931923157 922003127 409954723 87186151 551461162 474478415 821674178 330641790 644873985 729224998 72256842 30985588 582553415 64162930 202706959 163187944 254147244 300090177 294073035 299587494 515873265 846061487 956634143 568502522 835967177 333232612 213627613 958033706 231482982 196419320 934896493 352940946 7950558 595337798 741972954 796086184 448224159 131183797 862028824 774959463 526365022 557704135 746555954 836613990 125734273 994989042 972260274 170537145 170290015 114256851 67136643 593482800 375370892 333723120 300387847 861972125 65931815 634541700 103062934 362824428 435541178 374986701 682218030 466269674 144295159 208570860 554469791 706749677 445185987 596586051 124002770 129698586 403757005 971882328 922423236 661161769 74799269 321452261 761146956 487485291 435854105 312746943 237187101 804872490 685654318 795876430 369950029 281345495 981887699 435433398 267205661 171254019 837277421 159515109 56028320 379525804 175702788 233170983 731142179 393746472 952143268 458975342 472072719 844469879 550709054 83550167 20099044 236744477 348267569 219244691 22212267 864090865 332698049 433664534 239005639 548586169 678096947 860812598 968701264 291429325 254909954 157952294 321316541 118754849 188708925 850330572 846969849 976239041 115530056 811520698 278776388 393609760 957772365 843339048 324505545 160665275 398932121 436821544 7001073 167715026 397417173 823422049 782639569 751529455 856392131 315882318 869832649 114687474 236793204 933168564 148564704 284248537 457344709 946577490 477724245 17358182 280319230 380194671 97962275 124887285 550003209 160942762 571531405 767507798 676882981 142225505 327746411 240793458 58824503 24948102 266419268 115210153 503464081 354046047 89876892 880639275 243960289 405353790 831343644 945014789 573542122 956468736 888818792 274686374 268574941 62292309 729017269 921802384 900360609 681624469 325325123 485432808 687187064 562133403 616233319 418753085 417696367 394036717 926063101 649422774 359981191 816532766 20849290 168672964 280717869 576787119 327661643 652922108 145564814 904133620 281892040 250548358 917865896 427566706 572616577 994733879 505658039 440791961 402267023 589250316 582482620 178355851 330464280 814300217 211796018 500786016 913053176 106145680 950254008 213154865 490131046 104754001 357347515 122752365 844459500 369763922 884894396 653838774 15629466 290113848 67694405 380167279 559356414 671123896 399023467 44961436 644657266 998367435 94206516 702572309 484393090 204259174 548972368 186568243 673218859 906913912 577618942 78638583 810028177 710296797 56727523 44066914 590060628 889711204 11051094 292191742 655901040 212398462 27405939 16759944 708201418 976101202 299340468 850505523 919744724 739007902 483199480 778541080 353433963 277762030 847232053 390882331 487567746 33919363 328308909 873448991 642636719 618765886 500431731 384185049 302452660 27659569 455074764 888884408 694347494 375364353 894731939 689791766 190127974 432609484 925489890 765859802 458730011 541394556 308938797 808232599 918297638 383872512 375213808 217290937 783563959 906309726 998058909 958131689 623132753 857019884 852170770 638470629 669029240 700123835 919872957 740901620 63979207 159608582 777762124 979127050 377103049 608916971 50261800 585956348 524645837 711093337 143755432 728005945 715486195 886470719 838043584 642589795 244642534 811489472 519338392 570063499 294621439 461455812 472170181 843775278 190210054 807853172 319288011 257609509 466006913 604314794 183521779 230363105 110702883 433897097 940254353 283246879 478244964 895565694 373657998 692626712 11118517 323126735 233055300 721644227 267431681 626794188 819727812 803411677 972937471 504418230 293204239 151702392 220946172 305701188 980875724 486105730 30316166 555271487 587862488 311782479 615903375 499219152 753521466 53579085 718495051 240175282 165385142 721443883 673249935 815247689 279852421 582248320 880925325 584533492 119662267 52638731 714689262 780484894 209267049 764537229 677301258 96794211 408952874 796833524 542970095 57188864 356685975 228343062 104807094 78070516 257255126 681528543 52671537 407162472 994564247 556677410 988089111 616459852 974402369 149161232 472790097 183772128 568623549 128823140 633777567 474842093 168142050 793775204 169259353 2043180 170512012 200826566 941543605 258346968 523872177 660475038 463824931 473948368 316696852 974070102 452991848 631702463 787432636 119488242 910318330 328228940 476382658 515289021 272151418 413871864 681080319 13867879 459001385 598763137 13734635 933306626 609606911 554801808 86215582 454441468 78900064 914483931 905817128 727599956 141197772 480473627 121318745 133695077 130643641 153797638 712084716 52333719 458683447 901962100 187614555 892102795 814391323 491622042 680664544 106221958 87157907 947601673 101692101 310404007 677353006 923481571 63702080 586780582 53847326 348132635 215372633 259715955 205818419 465779651 511192265 22008510 5896753 676172521 716736303 779196981 15662701 765179622 670919273 532044625 590775514 647065405 491163729 868664420 968125123 272017118 374543628 430702478 47457380 766492055 894225476 357606211 223707303 532411967 416708981 879594517 784410211 394993406 567729571 951438410 928726544 553357987 545126035 851098486 369784168 790938363 776567757 814824377 857948269 87514357 164852841 771043163 407049206 274819179 612595124 556792111 40367401 811513778 448512281 498433359 97513096 866443894 199179533 646510331 805175916 865997979 396708217 434579648 534111159 119273467 436632879 374541020 846963676 73659754 519149450 754943230 13287877 527152966 476969672 131223350 382956228 675910274 354576884 703932999 445527359 367098339 872952329 877395784 924318864 51344587 698855648 400870390 622608171 966352049 18835598 136355470 840676267 717138753 637242766 528566200 331094839 957767989 308649558 246121692 266767341 191226852 542255286 874513674 986944042 205867392 830736664 645249408 685570819 116383268 664138262 829085978 545949863 295682365 117214537 87758478 377360031 712769739 146077059 970900038 336226406 591344618 330921224 945480886 490734786 718300534 671591420 943471364 700218114 664022948 135142101 421068202 987175562 913876874 763999412 352669230 94963832 792727191 378448795 97283153 136814844 761495491 764965957 287729218 331949857 302831071 591563477 759582260 28833784 637636485 227630874 185635538 14045969 878158286 488461030 429862893 227058849 781411764 566942090 674963501 356488447 628572960 72489939 390196708 217845869 527194014 521160914 957960402 707005106 101018643 863374084 182053891 703405190 887440454 901514674 763769677 943608081 99680413 994174416 241083012 415548692 509369242 111543285 478970472 754926664 200317032 679933431 847218231 212156199 350034974 321499350 460306169 524786476 400198020 983640067 12005733 128402046 583073780 10107880 753558359 700018571 861294654 953057210 287906616 905977835 211767873 350154983 623856399 6483288 193856343 675245359 719664542 731388218 999813725 138604419 853436838 591979529 344832937 941712433 280422074 725750134 501540672 92005556 108120851 591056909 10259416 899319708 393539068 425468237 702511327 498830324 492625296 744611635 787291425 585398603 256681279 783075420 795559598 429404533 117542307 282994010 448722899 469060726 790769293 539592237 830079056 313819020 736766408 94381592 628475003 583361762 787354145 107142588 865791674 914712137 373865426 842824758 888182883 156429432 486183612 42002831 529993995 956525733 54870181 304075900 835158434 765348404 311587508 523365381 169548405 349158209 264817002 801610908 57058958 30099129 47096117 797911797 814103910 273030874 36702521 380847303 774961549 501646009 341097976 712212258 981374465 176753630 403398974 672318471 377369789 604393261 552486170 624274101 267911077 816813483 267881274 813105013 68021418 247100394 604183062 1817962 918688606 915353723 667656403 61684534 560786867 231923703 797796181 832666289 862126368 834030982 606785592 603937132 756837337 981713354 829440645 958823208 998531956 392901229 309294673 741006326 194947619 519834333 714252885 798063620 110156677 552917294 803275494 357951595 192383432 510300429 122557201 711356911 824441152 41216861 937126413 688548933 650680864 399673711 851094346 78691153 445562621 691054353 45410987 301336256 8406558 69762047 611086933 936432604 165020008 425606391 892410087 420001634 670549060 174142642 238931525 565804258 185770524 244954671 90153624 953778394 12122720 767321325 634302672 765543858 507378233 176295479 451446890 828764480 509723579 593243951 773912830 344954603 568041507 49125180 231210011 549418768 487767400 734954911 879393583 677521358 789786532 206881385 240889938 488064587 885090451 505078613 461617285 59112276 483545417 284245447 489219216 559410226 978758748 850768449 819168874 948333392 766327180 694057635 359589714 54654353 545536622 717355284 925288018 537744252 961242693 11550445 773618290 886019517 359675473 623824418 149478347 241249433 308360396 967074589 603428944 60327398 810824068 55573534 446235138 468799916 743185604 892680325 460522219 205664866 588826305 40447168 929896984 337750469 42200518 281001214 718706804 444222543 702202404 862935422 145552852 315378360 837557155 977717878 389952312 181451736 794497701 267140802 944435494 5629773 580756309 495104949 182366967 668605299 82401067 687392039 261344024 235110790 924847546 256399305 543425770 243201399 92114892 121865653 714603534 169134454 629295450 224764044 487508869 958841906 494704391 318499639 592801800 829350151 914003726 867760859 656702479 413230859 535924232 848855041 656475542 53059961 564047223 118776363 120404077 669526999 617942592 897414346 382673889 154502024 362214219 328312871 188450899 778023890 938313103 258519235 259147847 131058075 451864877 378474889 52728181 73580267 505601398 278189935 622247937 166181848 153660451 194523748 572527683 94382843 230192030 639502205 89379821 723013266 872311305 377136406 824245223 865106370 474923224 549307364 410474658 329150765 23227674 447646886 102256773 973659177 308134859 837051629 308391162 130230462 913475603 234821995 417895272 794887117 316840442 208930808 845426578 906711768 277975432 543501657 523626658 580704522 778858487 429059559 901817206 664005257 997467280 871314387 113317845 882694741 853618373 441365418 567392404 733126063 709366503 189382762 392454495 697682532 133674612 203135939 964591029 767434350 406149382 829971855 930409434 242281607 251742514 805645576 524567639 634962730 232045053 31645786 635673615 125092919 743808828 531317609 919249356 412850395 895687528 332222509 943318047 227756572 435140966 784011434 259319921 968439198 916188992 502991622 441047343 718644591 902509273 839114362 295645737 161557703 756637612 314583998 796318177 635344032 808843475 6966442 271905106 135633236 741287940 237664238 643005095 858970309 829735327 701809210 724999874 422233302 106269644 85071743 414396731 834799275 570903506 785149469 715353987 107590752 752246903 143356815 858645788 633270173 970346394 594225428 599137254 604972546 629545954 104434813 682724971 396401533 9556805 653678300 285600547 847582618 265583456 611012527 255649147 978231014 90152 600022803 560309081 820749373 411484616 644374827 32048863 259630540 774572820 867927472 877588744 109492700 388475547 429052742 29894070 255897684 947871538 824751864 896737819 838476502 391773077 524682622 138563203 47811699 397623554 811463459 455901286 941382820 191827486 500023549 877809207 137448682 623957610 507491067 149549051 149236692 617206179 581286755 634366711 504431784 99563411 523537221 753749533 338047881 205555485 177891138 67056087 909730812 989244727 899138752 81020711 483762867 624314984 235005440 666893783 750862475 563951456 162130772 81326020 667310175 469864364 796452651 981603310 506780743 145191912 338447660 480233611 39472083 664174121 474039100 788264912 217132409 748580057 47432713 389493295 533282371 730101380 598118609 238082857 460058189 605925089 456602922 961637727 474447704 129700135 950656899 29181625 796566169 528195101 893877967 526405940 277406574 980440902 511348977 759825855 352622946 810676492 282135654 937765046 751428629 158046197 372017720 304414665 67030892 779147778 968725228 198226606 552327519 997752605 957305416 59791980 441365387 965670239 390736577 426437693 314476545 815712901 769927424 60389249 219394284 441727557 116954525 832528130 817244688 512715753 297759846 627847498 786118888 688894090 176199847 561816237 542710174 485091876 168937660 450836606 815667272 722280333 399584186 336819158 57328059 879720816 617101280 815010195 653794258 549027357 817883139 169367824 531883996 730065608 955289154 1888046 80500976 76122993 745505004 345637273 846726127 468604811 826570365 264590109 554490473 931134470 64558202 404061920 197436623 583951354 848127377 74411999 814664302 26732019 231059618 667223096 600620195 359511074 155205175 643930132 872672025 662786441 53915965 328608937 909131675 825777862 280921089 617333751 140124394 492489880 858181050 145777630 59034009 448890651 116081107 418745842 205086513 576650141 331440064 978673125 550044585 229145342 791363911 716256209 250940645 268847630 553533681 962945526 494902021 874225675 2334648 290092407 61187573 507860170 334368074 173396755 502595285 246232834 969210271 146154325 585404108 390645935 385783430 159841425 24727719 811361703 670455477 827864075 460243963 808681037 395650304 344363506 14013407 852888491 548407801 517987594 538496540 683164158 68754214 627168125 462852221 80475328 499142361 251205687 254214096 411857392 788372138 494667244 475497949 608914514 377998858 337861559 960817085 454902725 242771517 336425806 581628000 751374883 505360083 918524097 358776500 379439434 989370830 259124851 506888851 250656843 460154292 127678384 971235313 98407936 174894967 565657723 694366180 547071400 808687369 646367651 60220410 59782598 90803693 513559955 77576746 80946010 799110518 231597420 457208621 120886180 681782070 116799569 982961179 204693509 510159181 309192547 228682397 804414769 419649301 816892129 84280408 46243931 675380976 804001150 405719404 269024155 58529470 277308968 900902584 760161861 848864976 80953348 387201857 229945869 6795109 384394517 706262857 796996437 507098244 120512462 923938088 359817305 775456888 249103366 321287271 968999825 661278949 885113137 462068600 201822413 181982926 306127957 152490806 333337164 407911970 456117456 931856212 806570705 429521855 957704859 21956852 825133701 160071362 494894042 147916738 873748338 151997261 463944785 674368481 85015743 870541325 795438205 639312645 134151513 733127342 814996893 574572695 804004072 675503640 906297396 831739892 78667831 91563707 699788231 353734461 552525237 72349474 474598167 88327084 664993410 709502323 210499899 715125679 164040287 634725756 726036242 403497498 242014118 507853739 484323541 306393813 753524526 574288991 798111220 559335030 414606186 583214394 127053864 316379549 556196297 383646707 935005861 571300318 294266928 797697302 598924669 947776857 773896015 406246699 347520234 621587965 640334860 211882356 478245110 957646329 907393336 265651964 307461567 990784919 372987611 812329987 974668423 517128218 631689759 467467138 752516717 139443413 587253911 755688076 890881643 484730656 99133828 894096660 323940414 933705958 781982813 976994142 246498919 975250197 181457897 398465846 286159031 965121616 963048796 550354719 264283610 357742188 687569322 338493226 813240008 229095088 601653621 407335695 60960576 522621671 15957252 189703039 739450736 351004870 3097938 16532316 40580945 365417930 530932134 329421556 812701100 722303827 84760086 557813621 110395772 316845303 153296487 761632042 13549509 233538472 247595476 7827910 365244080 761543134 677826429 96657514 667321850 414821833 538475331 296889868 944441467 630322347 998881782 141875301 791892882 236803227 629725508 910727430 494028687 508393011 651390368 805580473 628303474 818327036 765506233 106874065 453753879 712579410 211430530 263861285 1194792 927457508 868310910 261080392 760777727 365676400 625225894 388039707 560947336 669911041 527359791 867717860 226780890 46691870 222760875 793665984 21492742 71928019 966283070 937010606 37598541 620609951 906719509 606331250 928654361 960021601 17253728 139106311 301366178 500893289 338797459 284455003 399516996 895168215 239608625 667003832 72746642 279671553 175833674 326715448 118728059 197269550 860858087 820108668 149753548 359621044 48532260 853825241 59335461 38986138 900705290 840419486 397021966 973978687 612446199 628463750 581913415 868533724 88198960 568615293 934197606 689572125 111846764 823769880 141617822 266102851 648718134 559453646 371986697 57730085 212917550 38248520 32955311 130647267 310387925 807503666 368098296 826002124 723468979 856868140 984159851 580642088 557309750 56723593 281220524 211083408 21580420 449029277 899083842 970799927 491463445 762277628 26871801 100920521 48671533 179006846 34266172 988042364 604700945 154293082 720140587 979105824 671547985 502265822 53221991 392777631 317526531 693997145 496579116 669503927 771076053 175540424 590067705 46402605 566767722 785663325 545206288 454558559 132207927 769412927 962576605 206742171 905002156 338613516 913517304 461822928 188746516 162594560 729302150 242810241 799348437 53287551 560487485 494005034 460028362 682427894 542914629 764173267 463143538 519308543 808668537 752142045 148757614 500750815 394588105 848547448 567251942 54357756 421736199 391738477 520167693 239784239 995556324 223747609 723344565 979722169 957620424 548573814 903741804 94223104 397985800 161623893 977005793 472454415 842194395 23177343 139946996 590267575 468793119 942129355 29032360 870049074 518822553 797841684 21353739 321876039 779888014 581918656 429702952 364095251 632811487 466627188 816343842 513105636 771133409 347335639 894547642 173829282 414425005 160991370 768848619 691884307 241320259 895896312 651782008 407902170 171222913 185069947 459443719 131419580 888154136 271526443 682159056 467340771 649568945 269914812 157344812 137267763 293166437 647047475 844085513 159883892 715609794 740882525 814165172 233473617 133502644 350686865 868235883 772960499 373965257 739034097 548887849 311285789 583898457 530246945 535522739 337520469 964319938 20224161 144196773 923334735 477721166 991279622 626944146 479244220 159704905 411585127 744379859 942781603 105209716 391412596 725268484 766293268 532558891 974660719 863666064 249971871 829210231 430262995 885851834 870909324 529542578 529381568 818390826 726810493 25025688 800203331 877174559 107319247 240799331 968556960 912078732 185281753 670992765 367263925 74592656 11656058 270272617 232535386 718510772 283318342 589577599 508263972 721137070 239706988 623466078 710127479 420125879 280584679 595809723 656077847 705789547 930562978 241577765 292631853 854375315 302545310 859914267 196927905 285790692 959269802 580897465 664080573 471206558 484619598 439979988 247833006 516981508 326277064 258534777 353565272 753983481 26119817 228259974 350308792 303869955 673713394 322873629 257475593 441036375 201265425 769608141 80196859 335644929 517709221 637250798 925368412 930140969 276562818 570800199 306604033 107416076 41975509 614033287 908600044 145741703 96935846 827676965 650384662 998503101 299668756 44518971 820676715 788880270 369040609 827483323 780179095 586721930 189504277 392340911 573996261 75387773 77756826 47025340 240302895 862096118 752072054 714347933 684748295 77797639 530472360 909464096 163130604 830429520 907319866 75391273 320828315 608032324 454321480 708588583 130337887 362970804 713996277 263557093 270504698 142685464 775720261 842743687 112326259 184739192 96112603 911147361 988671777 927757365 367328701 373928559 518995171 926014306 671208263 31069056 340118428 414348314 956951851 725317387 729494524 371714133 448519872 694523783 842210429 569582539 790563422 65021710 413781388 975447824 920785804 40764304 640800925 915176053 334349909 298519141 205970945 506090338 716029611 574156120 46427820 576160076 869705548 16295541 409756889 531351638 496527009 899745104 270584677 117193190 879938548 479440336 225121757 580920623 734092260 147432024 243183373 985514535 270435516 761118009 632588286 441761173 906322430 183566549 377300119 861560157 664487759 341900812 643700582 405761886 694194444 292740100 298408473 471996752 211006384 476208571 660455006 776024465 871587456 970750851 385535085 762635757 350371821 448450069 703263162 535791386 944362636 348050512 507879422 590986253 12158507 755890766 412725768 192596866 491907426 238622286 472814258 381617181 506247082 790206922 704656552 908263827 646026881 959586851 85632183 111164469 393262057 865332996 699940496 497087023 688089075 721742841 769794116 799499421 715774098 413248383 35503429 769746569 945082791 355309646 264130177 65921047 112840842 530473034 368284360 719165865 777227316 375862933 586724069 608326380 555607042 77932220 754379874 892937238 562615908 790186161 612706224 894032002 806620740 975010303 902667227 335930402 712261021 678856694 604618355 278851305 179228110 411467347 255291793 49291372 187665820 858823794 656540161 161629887 422118209 275478140 684054320 912554261 798597969 247853134 461049362 691875047 994275465 702220743 701137380 282937972 618187632 981945423 775121436 461929270 468552743 789133171 758239005 590857066 776781073 574806723 317510512 500054056 257202691 840475982 682476017 391106624 338232655 362418118 423882854 646708777 675957853 685576577 381601971 366373973 730668584 390108091 730641706 912290288 261050809 661329542 838620034 610966018 793543100 166306450 903692653 464237205 703782336 770952796 551292045 105051725 822524949 873768161 905424609 611829265 250772478 333161918 655104440 763704024 987211641 135407180 894628687 477387414 734374791 596316721 602643327 761074521 621103881 923346144 400863010 626361615 711256934 941025914 315357333 260211608 741179783 625653348 682717576 572573664 565826150 865371356 887518934 176377610 871907644 913352915 971814349 772139456 904010657 983013875 932975044 512107707 65112012 552326870 7336221 618703300 220319432 864450195 932108244 106168217 870217366 206722627 556536897 204910125 94971041 428469193 900418335 26795236 740950708 575834274 208452759 441490884 990868394 812439560 968985928 612419604 110206574 553440821 597464741 464538490 477253452 373051350 327004082 983941519 180963783 678444080 614657163 585736448 719990493 916676377 455823394 768085947 789329088 296645027 298437360 20220784 826901646 541518959 918694095 717376768 713055556 529560363 44301021 939775411 956285509 592375182 868148598 702258262 541339703 864772179 968696614 449302429 522989403 277647410 834911284 415969893 958417167 783057939 184576251 497955371 905854312 783700904 468820065 817615317 655455817 653803992 176647267 514699931 222022343 946703714 896914140 61675746 757212158 700812441 372602573 979824130 978296863 452262986 741493727 173528325 119137847 779679278 96020871 565395766 316939473 440682313 105280532 149312917 283287851 131681839 820466127 184665962 257663803 123105143 106324226 827142978 155301689 720984161 848187917 121589082 354838554 471818213 394917490 835434298 849027878 339557130 264673562 724615587 629303853 586914289 418480683 764928445 803737152 442776845 608425230 826221858 214260753 742082642 967938643 422532114 504726840 191454590 240334940 257132244 354015343 499971941 204098014 932314332 313306077 993162280 806986910 994169779 52976057 62023842 76625131 74945063 891382533 533967878 198265982 202411177 912497470 888057160 598932394 651911557 923651340 479160830 510553712 842385533 253503620 628539712 867540131 99609514 94794174 585920667 229710595 684596116 783169898 922558755 739627557 657377280 622452218 611342167 860252434 858624919 25835560 852729929 591535844 479323590 598447614 903127776 897176901 291440201 927629572 283789358 592408165 252576034 243462343 613246480 559900692 148139420 555691852 49787419 241552307 726634350 72231977 189747948 53377359 848927051 813603682 134848256 965507325 135328727 935718911 67651964 629842709 121232610 500298998 236385158 353124217 150665595 244586709 834299357 506764450 732370056 910332894 783552930 105238387 229907332 884012931 473559289 619531532 678135837 389171781 58506568 632540615 230363310 346811155 716139532 395018960 691484180 163895074 365918567 56416218 31212030 254004775 83700112 63502079 986605878 784676584 599580753 146758297 105517499 216372842 807978516 914648884 942205242 661357024 36419267 307423943 357694248 123651337 446982325 733134936 411887977 244784428 469291726 618706184 410971441 147213122 326758988 280147497 686921801 132046482 287369794 82169595 869440289 385070026 621236454 626430871 697716587 493929788 615649322 141967353 730356225 46505755 459728255 811819357 297903508 688011319 75951538 498456922 931578990 655548831 452541158 671138498 706579289 428673570 644322851 214972736 983991026 775334463 345557421 523048693 600538176 391998219 135990105 775078006 213209891 349886256 218981163 832737465 498494621 875274578 877480911 434566463 501031550 113977009 727508978 425500336 436213114 385794679 41781332 177049583 54869042 925908349 209074338 494532402 497266878 790934094 376741696 674499301 974993146 301335007 963360639 554040427 36545216 380571124 166543966 761111982 235807449 5915409 472906920 182836578 455791830 441417544 154550122 202077706 816570623 391091454 741304097 825806299 403990061 568424074 970727901 73458554 715994424 915819694 141704492 136938788 652178196 954845506 973636416 343236316 13894601 355797969 275589303 35655550 783547428 539742956 366002709 532992389 309696098 981442575 456185590 931531448 641456971 921354472 690852757 675010779 467565529 330646383 242749857 492000665 469626250 166014381 201131961 408983919 483939857 119594110 465000648 801962544 478041109 241869552 623718264 231183478 892464458 390431013 753953442 977902579 60006867 313069228 922190096 160360223 294316534 29839173 362239435 401394526 297478316 168444795 604311007 468005565 331997062 542971587 269793500 512001460 45724621 670875362 730863641 951289574 768271556 223340092 877701832 158227790 458026866 627560376 835737209 952205839 431272456 303920438 438928436 30700067 480992620 461298633 510799235 513328679 65433345 191563105 379580515 151549796 893689854 17778217 755208158 428647352 60550061 358244723 60011996 429782317 492666246 318858016 97776970 205426664 507422850 979004843 340696978 681408697 336875939 736659038 969276500 93426967 310018962 906623367 526535776 586653971 768460536 972692042 272139850 580083268 257920926 187918095 884138955 834769406 291180743 135620351 363909960 504357534 575502584 8319423 262759134 157763150 7249466 476160839 848446338 683088489 477809535 631502477 716907546 316609329 166258846 616117725 562840496 746311918 557439722 527421115 761924097 962958019 917341316 164534406 276123480 45000327 675552462 689779596 402664450 267228534 279263121 578281635 925959224 729689937 538946922 639981776 19232788 646288724 381051410 728727852 860259242 562674650 260806123 567041503 27609691 729934272 898334143 911035041 965239547 796478492 511348308 262270817 739486476 120297246 295384391 232367663 84241933 918147810 738358372 922012070 766823967 983884876 757786810 362929439 194621939 35089931 568509549 398643776 191041669 759573381 125181394 846379856 609379386 842126485 451680717 895514813 613541506 734891348 17647414 984269274 748989368 900769745 982827838 521734782 455278300 119953278 714254335 714811180 606936679 165671920 73296170 889830868 822950696 833019480 856030437 111998352 511535486 911549979 999539925 774125112 596849460 466229437 36258686 455235987 463706017 917577949 44122306 714721611 504062564 303528251 743506724 916793511 45282926 869651379 281259434 607984738 499737042 340657318 121545527 422875602 507187493 632424151 707211923 451629202 10109555 967828390 930808709 545633579 502364239 239270726 24607715 516830317 289644088 354125513 883135596 994048354 249422552 689434163 627084928 64169633 369009572 245464417 226748050 198112622 289231842 298114986 191893569 761000289 488405982 720010363 869289736 415586446 599774121 878219457 502617756 33061838 247351410 860938997 614751512 652189469 857198266 802284644 864720724 872384878 63675136 969866558 474558165 179572959 587097418 661103241 265190186 267860398 111051174 616014714 564233243 553401193 829800733 259945896 238541358 538872254 501405967 885337771 550700794 311165741 93102274 960351396 829291741 709395598 587199523 222097040 202729508 6991985 669072344 302499108 58126709 327434217 615159190 524337611 552983095 222946003 336249654 632767010 844375307 604689062 22208218 335744988 348777351 724645838 100106067 653088475 576205112 58461382 443697868 113642340 548207734 425927581 561950170 261175560 793925742 611355496 980387644 242478106 947518809 942905684 40808059 663916557 473657049 725786231 589457696 385462066 235109553 487029952 514050359 429008712 576012075 490042115 176475714 659675742 831923251 345639859 303941102 193176713 143784627 655031908 877333974 548842255 970814107 451388305 660640601 902867454 278851802 620749190 962182369 861221797 190696377 524479647 976869302 313864200 135500025 486744548 97280717 559797762 622640969 168433751 855985508 633248845 933657897 214380397 162301115 116755182 315897906 830934633 54045967 466373784 300604237 856725169 635685628 246053079 237545872 879803458 92742039 688032179 112328784 485032645 896207350 486807658 851690369 237615968 227695873 249381944 657446087 716257647 620345724 839647890 181194267 808335257 614335811 231561392 434275618 726901998 788882224 458790441 967120850 946174626 179369364 474673682 469195852 11492752 880608419 874034974 35349855 672090499 792503888 125924400 606650242 690064862 510021272 307015779 811312233 79514591 997066527 593411662 580488899 331246387 820398213 606174476 480940474 400472960 749676918 809569052 283524885 226474253 702941389 1168956 584626910 138510097 928256922 362331342 833661674 813536068 999440713 199704202 867135253 676569941 617176220 489652760 346621216 174555469 413023579 598328268 538899803 756414027 640282936 36460102 479662302 516867105 965118303 612073233 541199845 904577954 834521437 421065580 96937657 925358483 661130054 380358087 681096562 701947661 922294980 250928897 77397999 903546810 36102057 475854340 25565821 362509704 190923396 821018883 151137934 678990572 104498117 950078297 69056457 102961361 9345472 904681054 79349234 462842307 736357803 563955757 785884361 882826241 919106334 446257758 731576021 86047898 723463050 358860367 678699096 977489000 32116558 939290074 801249647 411171872 809577955 188259642 58903499 458863714 901904598 594973110 141351573 564566639 819572743 422339193 292953712 767085248 442362582 27553272 618978545 758732028 247015131 838766993 8261067 66389905 732324460 96670093 370073630 504843900 778962816 111461635 363840560 661334343 446562422 516388752 514203251 628178456 914429144 541585784 558555872 640173637 130047143 539479773 167343686 873061547 833130023 126377481 96645925 41784128 253728469 99097121 647884140 256854862 730829777 948623513 730173498 595583427 451395830 721265239 225185388 363363155 470746803 254879229 209662126 812253352 235130893 404692489 606227465 615931568 832717203 89764869 135869002 558414303 981319341 677668700 514689699 937308784 264770918 790794233 247360426 239400419 43326818 814131953 88152483 126535938 876606089 114920618 823524336 187238905 80188399 279588177 664683512 743642438 161775994 645912872 386927329 127493356 647512555 152471760 723332393 720941681 792471462 600463469 800793552 365159119 264566892 274501304 958458205 99612078 167882619 360712487 240762126 441804979 85883809 671752056 649899206 24122000 884158229 300492975 588365669 891529945 48311819 385451938 948238600 340914673 970698260 657262106 937701514 502006042 183892117 398922418 293350439 549807870 260800554 765107802 925958097 401887553 912947270 170875788 614603573 164462020 214485016 596817017 413765136 969460761 220788925 857773687 686661173 564893731 911089881 768495089 63888089 37073057 414950757 14143199 604674020 594866378 349414977 191680440 570866135 380994391 921119763 181615764 804232449 174228783 66457659 452374459 563626337 305983194 13399720 559948889 40606381 490089408 63727106 600208473 607057726 330406557 428182634 65617233 809582154 429474549 198658466 826105626 887527520 161082963 352905785 281762311 158080884 430391894 712298916 941368269 335275592 977045785 709643759 695072190 488989196 404103321 826868194 1899770 546906350 21951621 851044585 865621056 49196601 396862989 126884091 717396629 591162765 713509453 44073530 866773840 764653121 94303356 470974867 748936142 928439690 454763228 830228986 369437371 162282772 941989735 45332644 119519985 172001290 802816268 54660672 218362195 939377509 722074562 939849717 68843208 650529169 109939632 798026006 745227020 748850991 808348735 457385978 667166364 109071142 667820938 420470448 202809315 799196560 777459064 805158821 176017807 289760035 749079001 245363666 377946145 464693560 479679947 418766323 212780640 191520755 596316816 385155224 945806260 400998988 55719941 139532516 525268414 932292053 313366876 828871317 209039624 844603931 464055694 102968626 897894809 630885265 806679184 465594976 242313400 477819838 483312593 755037303 983702707 990277353 606021567 141966526 22489886 164755035 222140039 232807238 236165754 164796426 498392691 191321692 759245617 152720960 371534555 500554323 512967075 141956166 79267022 556731330 46949516 772490782 395242501 575824341 313373826 183139087 950511917 778324363 453029152 900428480 622384000 510970663 815879936 300683154 861528443 880242754 676221958 89784527 303406314 526329998 793324679 349746581 581081366 940671009 803531771 763175452 784976081 642623372 827866462 256120633 393828321 413838205 169654127 564197917 353723454 909539147 478136252 950812272 589519603 62191516 565685961 126326279 626381057 487588615 118727579 426362343 546849447 104589758 375948742 45968453 128993498 772417154 825575521 265997517 2176574 550526352 1390978 397243839 290849620 2976204 731853258 248289468 270832580 677538384 329902907 855023797 409997373 208662888 982313331 371340117 648723192 431721667 888456355 55126465 291613954 207200242 638580885 528448261 964733990 245466073 807071311 610402193 741954084 977844090 679879460 947359748 563449519 227367648 820465669 843821907 719047997 316938454 735815818 920545012 303997283 120080790 893105330 67276390 605573918 671626141 24502545 492290146 920901434 57394465 842921894 267811212 524009957 738792396 266068995 665422079 218081935 13916262 272347545 834292319 816044536 815570014 83985952 757018509 918956653 461265576 143742097 766081639 373655796 29995156 588989526 546971281 301227921 620792264 427069385 998972760 908582879 592476521 973856264 410910926 7282785 955590333 798948968 400302128 915760212 459356941 597896989 855780685 72080786 624271873 632205075 857594572 500621934 979800050 998860947 724653608 111881766 333579579 861872660 766125743 759238116 410653380 449662291 432897593 790037475 611124411 217306254 966983709 588615709 740500588 536932945 792219302 859461541 237197146 698841383 496802108 775011430 848751954 183397306 943881169 571062945 216626354 202138128 888749429 756695770 702148424 74665262 699645002 850858606 279707177 863980196 647388067 671105739 458727892 340698669 192334635 231566035 344995155 358780984 595911020 684301499 931576704 969619912 776251119 143428547 179605309 340776546 584043077 447703483 112901003 965318989 947157506 798842592 992747028 38564258 328893858 248252493 625281444 581402026 497630038 92293407 249273739 620137457 880461314 208994840 458205307 948027108 543208894 586462965 227085316 865789217 351736800 639438720 818178130 570031536 508390324 612121827 439597650 609077594 800230363 678421691 381759646 379472421 215093101 35505712 870559276 872696812 671131425 808695127 772919027 129723930 640113184 685119401 222661324 328364927 188801108 231840320 771826161 272625264 9269006 491419284 239643581 154762336 752542218 621089999 974696128 765814306 874736343 82657236 205674446 733428415 541700978 156280007 70269922 177176223 651348807 271687938 753699733 415701098 657727395 477725553 475082888 528109303 611116493 803792107 545325053 309037186 969374522 128862929 911593840 670836130 369855103 561949591 618665207 245492714 22181561 652058707 690224790 689965734 997211690 425068078 440694641 185133115 151505631 258267662 848411682 561437608 755681374 793936485 396597839 755509534 682661355 10232011 573452915 552444954 605247682 503648063 691938983 102095734 708424017 168931872 681775232 769945835 878893525 43438241 913761791 331624939 506423373 685341608 666165577 512247539 50101466 214245494 223212008 739891221 812803684 717889575 464958908 17791360 32963462 564062119 317291711 139829919 630106552 397016549 692558290 251875092 654725955 1293080 509168535 912860291 858111979 807203644 287900402 226778806 890852045 669514506 577426220 985318175 535590193 297621117 449371376 750715379 233321925 281305030 622611475 968620678 685809464 790420816 717150384 258248909 448086988 696481485 235588991 821493325 934281891 786699735 764372717 467284503 316792573 209921091 954648922 419259626 155967350 707623695 996709495 929008143 134218229 92367874 149434821 697375950 605456180 186095475 40728957 771168271 738240734 516820583 444971222 976689640 867444123 862687512 603306690 555711437 698086990 93564533 256373099 214224204 134134311 521634935 797217517 979546607 126925902 624100196 466532555 97206292 442144709 965145948 791426678 84159874 751130328 169862761 834400425 68745792 636417413 270668951 756473623 825287885 679981775 657737468 745943066 192736166 310740204 737380386 168162936 290557471 558534849 831333014 797025008 191364717 592047282 635156901 699227973 112590587 787076921 687490227 706046034 1060726 299221806 242174287 495375012 628592156 34419294 808825396 3902093 3694177 728079402 380528948 540518220 507631263 706257099 221116231 291177701 712630655 984494616 141127399 404428563 268577367 554421118 222429688 932677090 115193780 399781141 410189425 818630575 866603697 916242474 709724770 589920412 536874868 937813340 440362024 844953746 270519708 52349665 904117910 586276085 437675450 831226508 551971165 918675438 783486554 316448411 74942470 484360786 701930090 464874159 432274001 346568349 683652417 796799392 71390023 36802819 820994421 400746268 336102348 78683505 228725780 533835947 657149801 515733582 613253101 572015283 985069572 26507515 992792928 225187026 817264042 174839165 642463333 719801511 6347377 261371732 804293571 201740268 160517781 369284465 621479226 309513225 54802033 369208982 943344900 281931232 747033007 519167356 935440374 470011401 724859267 25408983 448453209 618169194 376109135 714146224 992366619 893745362 275840832 305022473 690546482 579591342 407027507 918169919 54319801 351570920 149604826 916129200 474771425 226879730 614596439 512511923 267433813 36831120 630827878 613328894 200687279 997049599 132270556 181170959 706379379 686915762 625941204 620143784 614492614 677473687 549666853 295009721 292361656 278992265 174964959 288768475 289431899 971794001 120862480 385425610 209193174 733104472 963447948 490815247 272186553 971437171 367428914 194843314 11087687 199809837 674152146 700125991 556127114 939604008 34687994 585385429 652175053 177428354 367160940 436268979 991515932 302918256 630148474 454884211 386266772 12557194 252553705 925013020 457166087 948897398 643228345 760624109 394557238 271742653 645023719 785557479 12904817 123133267 210134289 971559035 694803648 389970091 822493475 724487947 365819867 47675339 751001871 285139501 89166390 423495305 593515651 493427260 879016344 736635167 865136325 518904417 656445342 569563020 756205164 922224354 391551987 884706136 293715850 220905209 603968244 307374723 163298347 346416246 354089662 455790645 653773243 529424703 510123785 953232853 768916529 670004305 224879528 241826224 299151109 450325468 265679394 806292704 464645464 403953631 564996043 112337909 28901287 924510663 1771741 919754805 55712653 312169937 939908130 2509704 784976778 281126989 332425771 121480082 402971971 589533236 651421914 786724683 926043640 967718801 701422295 243675101 64164861 649773069 975779495 529232099 293424157 414272049 383590000 931262130 129275934 856215532 819278657 67406298 558800509 788951714 903229537 277514688 728886261 442335537 847439925 613850295 104072767 649671472 752967639 274609788 37514906 441188157 381391311 462143889 707993265 217882791 711572867 952955339 375741119 162906635 192707657 628565022 542731399 80866172 360576528 390062134 560410367 814864796 100947524 844880236 909301649 342921807 963141467 321004464 573786059 505963838 708290028 459192944 621582454 265607785 791786184 602833699 875918993 457532022 715903631 23093504 795848903 7929371 759974840 132793144 83168739 287168682 646340327 83844293 41831460 34487370 959393253 485820236 834028810 824482602 550944380 588900788 725158384 56352054 840296859 185241449 676439834 992511991 830946803 960183506 558782434 855986190 158679816 474038456 38475180 319942211 603147814 191333744 561591573 43097968 29063340 437088383 717233438 284277631 541802168 318124305 897631181 214701563 572129464 32775039 988788265 972088811 936279445 913616139 958313649 738772596 227549975 203121843 25205329 192443685 704742868 251523953 47070849 735929435 264408167 889031689 302809383 587867368 772354250 281727093 803074944 82497147 433192651 705298599 371924758 199763793 735130071 697224723 786875129 923934847 961360614 59981284 919175455 760244101 30965893 913807326 94311297 912346561 428887737 983458785 597604087 735597119 839011997 227379958 711320826 850091966 39716962 185502294 521743705 427902093 447650022 858070293 783347521 552852184 186367367 735507402 463603638 475281780 885327814 974960391 937571759 62897500 127379729 350909681 574334872 790348292 430465654 55315652 940175892 394049474 548673406 41536460 20012585 197046241 190951876 450409799 317010938 32256980 2188343 290450835 739224479 544865311 882344090 494134710 735013836 537471361 783108986 445873772 611680596 565223106 340062617 903616118 867807954 290072022 510919599 386246386 170503443 571516529 361267651 894166068 811588952 201959664 84342151 600742725 472313397 306466704 889136443 193734581 193694480 735629948 42084204 355618174 60463530 582394286 696101229 652960964 619288803 554979742 817976622 28182620 264469467 992150003 677893616 898317425 660320827 208776296 490851049 156167418 55301265 207080487 137119602 338076565 478819476 764038083 715567476 399753641 349833006 201426752 343085801 158274378 254078711 747946156 108795188 352719990 118779287 30051077 854182921 131649934 216651176 892144175 844128220 323949618 505936134 543381962 893015400 996151513 774156206 881747114 798830639 512125607 447574243 700982224 338828367 764556710 128220922 910661243 515991545 597600603 591965678 640391192 802870712 401663478 918768801 362355591 711858222 912551163 42801814 996310882 385194990 542840850 633171229 981571021 311571883 964335713 860033536 892134589 479921153 499272023 726822368 615179862 488923214 818174254 745165943 263451331 823610082 832828555 769666628 871874886 947729699 514027063 189206784 171559486 586716763 49310282 248146540 713232400 822099437 887410479 448060853 423157977 128164792 544085565 887486158 54106058 88964449 414534602 376692244 567708507 947772858 386798367 639702685 353334481 736884105 921706406 162538017 516570523 256146272 977534715 155500392 986683992 6651875 557709797 970933564 199852552 889330350 985599736 56839224 845174601 73342036 997204266 361151674 430580924 994631546 869055914 620422108 16864840 307695015 831176684 15762659 9890509 988679431 703807235 328029503 551852086 962835397 485211268 57758779 480605784 576881245 781613691 294758820 497379132 697704391 138951286 575691579 980119605 113998756 697183127 688501976 313084142 737650183 649169326 242129037 927761611 890405282 363494607 113893375 397565069 69837559 833898273 748363531 33259197 641455261 844994525 124971424 36128116 638873905 259546264 874902840 345256662 76363042 331803962 402553415 216143380 156911300 18238406 810336537 540134108 642930373 377073688 933352656 810329610 803493234 310613421 215144701 17751622 549406916 475564732 798239140 786155144 567289463 902843586 822214226 556128233 926904139 961413730 261596485 743124499 714274043 876872448 15469069 290565632 15911682 133685329 314316032 446594954 720484663 525450499 425798108 423932418 35043897 43587160 312902989 966351363 449316518 960837539 840744141 563175709 182460451 534664709 538734398 999962009 97274578 414167393 338089090 548642639 821634185 559161362 249210257 109360353 69183534 816929308 775517290 25387670 41091404 795338512 579613394 563067604 389185158 489992722 383123928 522635689 426411741 787520603 903717926 899472402 817275669 208170309 264451989 748761502 834187793 292677435 783086596 703771946 663906018 241016873 328388880 512065863 235834126 101464938 235139307 384922402 427151736 760817642 257204128 928840122 642612107 855969777 640303849 130912889 238317446 452734006 664912332 110331495 92717763 941425608 180459458 315268083 622020910 857990538 440930369 219222301 398515991 548695412 78893009 630551352 169612067 866051537 329405782 887279379 437825012 648202864 15508569 120059547 976718834 550092615 350380783 365718381 27950120 752371388 612595714 805883692 778550898 692429116 912693542 606125245 526258001 298526002 511922592 528235919 236200186 286913838 698297730 635184475 714296996 286510893 621308940 425843210 667552258 69015119 167421536 813986934 572534576 235244902 884100458 607733984 843495661 286527842 509632482 646083423 723206551 415988106 717123251 863275952 942287879 147055057 411487686 958196766 369155889 870695055 10113709 537645068 198840000 626480373 277026602 207298380 878948271 642061202 397018160 346163179 375371132 116805741 405153163 481445114 73816527 397666175 394657759 591532053 899456577 549270387 316980120 655752228 663555241 181089432 261009740 951798301 782417973 958208899 236704806 870618050 547241585 498408272 769118636 803386038 434056334 269012794 639903560 933813662 729705748 556591493 903281378 412744853 961132744 319008944 805777306 523077520 52762546 406281881 895383998 324984276 53833301 120808409 178009600 139350085 94203546 740931571 613393715 70161654 191444109 535541627 74997410 860271371 160407229 87711099 337411229 669977491 789845714 784955477 190682836 60888279 860392283 400114656 312931417 686796964 412017435 595356343 769895107 653506935 246381345 119773695 284571892 346002372 67768442 248962063 474737674 661090379 238446103 17614225 611749888 618118372 794720547 857240484 608007725 588782204 135135982 754843516 157136030 841576832 153690056 531857255 615929633 596044146 505071020 356248069 740394909 778566596 530014086 575921845 774280167 552450195 827823550 39796096 671342360 60576657 501773668 561936997 423404740 282344396 861228692 29982857 764878893 249056883 638937213 904360321 14619750 582536495 398672205 529109841 612051819 356325865 931070998 640558316 882990131 355455495 409951900 384647029 462157743 22039405 176694498 567029364 120306375 550414028 967627977 247553712 243285580 158180362 56999853 408857764 663985860 830802131 461992838 393017656 590150593 472755024 281023817 259351466 185485837 629549812 524292468 369209325 610631683 892084022 486237939 439991202 650858483 818781482 880593357 347960508 364673223 183240885 584154247 276636371 583728849 654732995 698681443 127113129 538948757 489663277 933816829 894036181 856890866 778625502 203190449 459117743 310064475 40942009 788829861 667421461 218161862 574870956 44476387 842919436 343216104 400690061 150300392 579308752 224065984 381349310 613118502 297137473 520372144 998347166 879425600 63008875 283401178 873948820 548999405 568335098 134515564 113722854 732148018 489574002 139833711 64889842 517596329 366290050 881651457 217070211 323066083 22593770 43821876 465040485 237129645 183691871 132620529 41572294 663907690 386928795 459537158 251698620 310177065 612828031 206579837 58750924 488009982 146759227 420769827 758158563 94714138 914674660 482057039 726302204 679456619 673249447 113892776 504790983 471017492 714579985 534848897 161816061 491995718 800857625 322982334 61773457 383726149 454410219 814653469 989793686 659477187 935831614 636171902 364857613 394226399 682669095 227137212 34594326 198715945 294925020 670312018 202729863 139558120 252662909 772260775 796636809 927292130 502659970 261494660 833676611 737572264 165305918 202855905 46297928 904616586 379500554 519844459 73207468 813136059 37137846 209128176 109862138 103710517 19648385 338917756 199527061 925535815 988907327 899247342 330788207 11487200 983726711 620124144 142723340 572352641 179074352 977617622 553728755 189838235 757516148 929303324 265074377 644798694 621819197 338286979 396146396 81688505 97651156 378757564 871349803 609101699 265320481 330293517 134798635 641637428 35135721 717799803 715315809 989070846 348741968 612369178 357123679 416332305 982065397 539900688 441490158 747263871 916886125 280404974 723141008 876951039 223848125 665228416 377540878 248719949 162868041 846190078 229742375 694002409 974702331 470506856 738901672 807167308 524996497 349609831 13716582 830867191 114331413 50411111 718068887 565768383 630525006 892678113 176406703 232607992 307990888 402481304 402088456 315812062 471716032 708109632 420159711 617868725 879173633 689376336 607241379 525301090 11579810 666631206 218628424 289940892 541460934 690413326 334548741 173688888 473678621 377987841 163541867 102259918 74232264 700995297 69762936 506487781 979810723 405543549 199016950 253430348 921288212 226358695 419525717 113410310 385362216 652569164 902315762 528139682 722606178 648576014 676755792 365722784 660174653 774299901 471361737 830929088 647616270 211079611 391575427 569213964 595721716 140144152 156783558 118751974 191764677 484492999 713997086 402677702 711001957 128751696 357400839 346858264 531995133 503206053 57973590 512535635 700481645 572950674 330153391 870340834 659265097 973869401 501485280 685039412 473176905 812730996 757476192 759426517 189821412 841947024 595512122 719390804 288503847 341772588 396860782 14924884 610270171 689845345 844586517 406586122 737323514 770376875 343145123 344953453 630455585 384364083 950479567 139056057 874598697 291047755 867951867 332085125 708586380 582171217 433632385 344260891 567579440 487142222 816834860 651842115 914658642 287095474 97078129 990611621 523098930 301580968 881389050 149620406 800130241 323292552 168275304 180947793 861712547 380621714 944424711 377657867 494163494 723987749 303088151 458376246 507083021 49611661 683715440 294515865 140776043 695367724 713721216 851319791 882188781 400154795 589706615 368799432 383395623 892054334 226538231 752687349 947386651 347246228 938460854 854562545 395105267 621834023 224898057 868350994 771875573 637246116 396018113 473387818 509371416 268097752 453342636 317969634 919722026 938950618 435482223 722992725 33043911 402827986 549440325 159742345 101207771 840466965 24317079 486072573 408484482 531690214 466308765 668657116 777665912 371841678 606761900 950756506 744960446 687298807 834198078 118462963 473652958 186699940 561118995 464950794 126597297 929745476 546005375 696485120 470632079 68130310 290238210 421775697 744244249 988710827 283888440 275044956 547893307 531977581 351946423 659950525 351239701 830652827 264917461 937613439 48156595 333526137 978082530 737626261 499610857 981332450 978296880 484572136 335825804 247926776 982240386 458901432 915624030 60967076 180143278 289805428 649460960 454512399 945072064 156214053 577213030 148052002 497374518 677986217 475605910 714221689 121206146 75913603 851211717 46409908 933388398 611270547 642380097 106747380 568524437 796879323 226948008 144944606 168981675 400665281 810456362 339172352 520869411 913204350 385945946 879982774 153364500 367147342 15910935 266311617 270102446 990992363 714973634 880398806 14490900 279363560 698846038 747057391 185762163 399618879 937533263 179842069 586907333 885687993 194720556 101010687 300087879 92960913 19213417 904615009 772909661 457186337 470804163 334389161 465117122 493427904 378808946 918089411 971799769 654160663 935689217 640368373 233323331 649521138 964163856 515931529 42118417 863604264 258264472 989869826 810193372 620923360 258625198 238932796 936207780 852144902 458291700 968259948 359155766 340765497 222603076 247583747 860907449 37452275 660943983 418207318 229637429 856289090 370809912 298255741 558134690 471665619 959092738 647506426 551524983 766917228 609495085 32030383 428784100 510140361 83900042 102184212 850965456 406510650 364612545 700222413 451268257 76649083 957576902 903469952 265889329 206730957 166706943 496964335 977917901 967660990 761231776 811116221 340774411 80747995 973547617 394428274 6476972 75088009 542314946 713826259 587018300 404879215 576279954 669071400 501554990 535405119 120029245 769643053 717527093 561195378 473569423 473768243 336399887 476341532 537924163 172966248 694355336 395628577 842292490 84396848 927965291 895637387 799681833 135145855 297977792 991944591 660808077 379050022 434273986 835362733 785578211 440493598 147751350 920952265 823272625 240679094 667940152 736291452 574996231 697569273 48505232 511742276 888359494 506674686 868094469 185229656 505059950 209783072 752208609 787628711 505499832 884608151 336293569 274556631 316057749 103948125 551801079 476630280 467274963 286130938 695651806 73247048 483853953 40306128 389033617 998560376 400227166 686972089 656294203 815722867 967549005 934378366 888900928 762665827 757668669 128433542 474049060 95579302 196572662 407108882 134404273 18742377 593661746 29284859 823462135 667571530 765672939 586026177 473423475 277124604 776534518 930533392 821069164 795328864 889201920 109269492 527911459 87288083 527018226 747260609 963531787 567968072 504971982 722950910 4930151 937763875 73522538 975150613 992591673 961590028 809117490 706654951 326973338 809614043 530745711 6218531 994356666 62467495 162430309 909174795 824970408 320509242 705311252 197104436 487893708 926527485 135583176 750833300 880863917 982375601 641486208 94071155 334646198 431231783 223561059 190245563 151456439 417855563 390396676 104443630 565073355 330001876 262994484 132159766 147013503 447191537 790709782 6574705 586499880 84729581 513098595 771362747 350342483 158430228 255862342 89793681 557795993 686763985 875063275 490814667 834331797 513856571 605290751 898235346 287035049 959708819 978518434 860091588 53766609 178186336 546259060 47056112 228411828 867216008 361065772 422229087 574552945 293858134 216029319 510926692 408804266 76970247 63338220 667550565 184497451 916583024 915090910 730575275 851859967 939206196 456705029 403996812 996153064 285967490 703218979 819053861 619234843 9318646 610167285 980017751 43675431 870113870 714978970 349253957 941350723 278561436 715455265 413183396 904765021 260398960 899931190 711662922 381668742 794995126 967102533 342424712 504052122 232879915 828325974 118399038 997300931 810146543 847721781 949829823 383637347 134570570 301831095 636646800 334396109 18505592 69557574 130820620 860616614 1101567 788376538 183961009 408480500 770055884 908261228 736654187 93968767 242379515 300391695 396666948 54453860 293358607 872492812 522771637 968968862 264751315 854994907 605934801 585555588 4278291 702636782 588395233 70922450 968698958 558908007 422672208 232200730 316281803 659571137 148780615 154794291 280502366 82477 430736627 848317458 382718666 882557855 783774504 450140143 949688202 632166144 3589234 667020154 253831706 964371049 920380943 324073494 643020382 998036739 887575789 543715124 723007768 466256429 731512987 824137963 403834482 240827086 316040891 661347681 459225797 52239068 563223014 523377060 156460590 200196837 675482296 569003876 494179292 316524446 345134875 906999494 266274500 514346012 241287995 248473026 389805626 290210231 159003858 373666665 910923986 77771758 546345941 260957326 205613281 257945737 318013736 408601144 239251112 527116392 405467426 370987769 992406017 802183299 804960871 139641459 962477650 439779668 611747766 747406582 905415877 181268514 513924525 20706222 105919542 36637732 247740004 204007450 314569387 750449150 884639284 398087946 900986696 749643329 282553158 754046512 732964854 267882180 716874897 117084310 475834643 328327686 894131888 179330936 537830126 604710181 522746180 680032034 311980605 321772636 795145312 273685974 947635075 801857560 243965369 434566670 400879401 499162890 686075180 339509712 65635750 506412211 900494698 913112048 886984865 879694504 567248592 390279459 167499138 649011086 487028662 138705672 420966388 878210656 988810779 557430998 867664012 995684733 354165697 25694190 612694237 595692742 617580750 218528076 742917037 796759256 311525754 344003052 537149211 886166788 292846246 551918495 902822762 234013336 930373614 402110932 630268693 828946169 834532375 507355200 873483033 185585134 237201229 622109077 124511405 840206291 864056678 868016796 884400609 867667844 879524902 353503055 423480325 486428949 567880173 165196007 526918161 161187870 431036399 739268687 29376254 682828218 816762944 681940609 552098982 3171130 734410175 262878703 159573477 279049645 288985458 129098717 104871940 785148748 407742050 941619879 7096940 726101584 498839100 654010959 973891967 13111600 676988034 499579447 133865644 316576946 896546177 419466324 562079056 722645162 840167337 624491014 533110463 717949888 812919143 7347559 808146623 993273141 374119965 703201405 200529444 55091156 467633028 959404317 778610846 88257480 359961183 9673477 165783807 193243475 672092292 375062280 830300303 43652775 905072546 619779862 770775500 646128658 969146329 217138081 614951895 929412207 729606189 206782043 82064173 114952838 47695031 651988031 192204842 535594730 509014036 846933129 582713053 9697997 159144676 617417770 357041591 790688033 239455469 188300608 170358750 861321775 685234063 258260497 914553030 772220085 999791004 169889032 383056741 179497852 811621455 371640014 491020023 732296932 863057217 534512142 858840861 710769663 636077798 316083561 191394677 778861944 321564370 613392472 209032107 874153795 532720294 484018192 480112272 549217432 442525805 418810554 299227268 921799125 672481633 386177001 355746178 478120645 798349134 359088906 853306409 22487646 479854462 817705337 120990877 926755368 475938932 920096016 534058485 1709770 914617890 50946581 140898679 438052865 10949330 957809575 502322403 18052228 789444709 726614747 896752705 737824284 581078981 981748572 194013794 303971050 926125623 286966828 522813791 418333636 860972179 987846333 56611156 824429218 671750583 39857293 443642038 679871865 672316163 153299332 428881735 146562508 891515608 120089120 539699871 674833681 421857392 774261203 713999706 771969259 16329263 101151361 739749001 482184698 631294627 932269219 14846413 226357031 972124514 774524014 703096122 475593362 760871351 986748352 787110254 276434529 107960928 129784453 769622145 244851737 402108677 970041259 20942484 623361520 317816701 299957948 523754089 173970079 812567871 840917935 318385677 342631954 131825500 358989228 793408227 711585436 688858013 187772009 294685822 888199576 478847018 997433471 100834691 626647614 884632632 504771799 470176223 531146847 391509883 16618912 744722637 542106462 218633126 921881843 741511052 782274228 567677318 531819817 64954578 517954636 413779399 950795659 166010067 709897677 773099830 881445610 184590021 170106097 794904286 391913232 497829930 863373513 977039515 674570994 666352769 48233800 231585641 815282509 785457342 198336408 347374055 714577835 233916948 710296157 73064838 669610106 300017401 137912917 572621379 106180011 271556044 247496749 279156918 815885871 582539117 467674425 66348611 598173654 817850283 852011903 527236023 263758526 369586534 699793257 274951315 390480450 740976309 18130956 26256357 798486577 305762002 722573392 767011327 279420902 150744848 30230043 109383118 675230260 871871263 214400849 934111710 11378440 887553134 196309530 753979281 562110101 265625424 425935966 871183682 544189908 128846488 771246811 356927338 261589747 146576186 733697285 162875385 277648957 534073672 861115230 991589869 571766974 225577230 691581149 636715997 858619520 71190091 431307756 733274180 69285054 939688530 572965803 437048769 896221559 710841662 747514329 620181401 613325610 822915774 287457445 373421214 763687765 100314772 415911328 405544289 327965113 144538787 750524041 422599646 947252948 458171499 421893284 447129112 334937580 893789526 837523803 475453365 310280385 232213049 119989010 908232271 127480860 536263656 845196136 722222399 50641848 39387356 512706674 521860875 441659330 239743752 875047965 541190625 203558846 258166435 510329098 631783392 860842404 814004775 539444912 516616791 259920366 482600843 534164914 599335692 62025687 940127407 77108025 975311682 625922270 22045840 98981335 474530300 138929280 231026410 451207976 938049408 753059906 333794746 352416114 933941919 978388767 500743894 189375852 505876207 769475744 628280894 578482133 573886387 511219873 746036802 832672708 802058456 502555364 442823222 59166855 817298365 853115139 45743880 691523693 503055146 81298891 678755869 41331210 931339832 910082193 389543482 711916558 159547657 507563876 473651301 249352412 177215787 14268625 952799250 300268915 654020000 197898901 346339179 216358780 43832444 701222860 548048060 833788699 510205464 388831998 434029370 966904326 139445756 980828725 139105673 114781475 34642740 76798615 521995752 593486667 62978591 893335263 58068392 714023460 985717885 178185709 854713211 277450049 514404819 264086510 821925366 256226122 339483795 102749518 278927136 559289481 428187026 932857970 109994791 277584748 705704825 884997402 97141666 357618918 254298421 293146164 3818920 969114493 856949440 972967678 505934739 938169950 460514051 620570416 573223257 598657988 38778295 978266678 143739851 939790194 176703570 897434110 898991309 239449980 700029659 692561808 26083398 454856618 334833475 37285138 977412723 510389828 958795089 680949200 816767801 694928043 477381318 85566304 153961462 843027836 752453707 499108801 71020963 985349393 251820024 102586288 623101317 895680241 650002354 288505765 451757990 380421045 165413689 474703401 396533964 91530470 502325040 944207063 251498353 919820937 86993284 340343404 267002875 255332150 466060554 352889536 901768710 816787529 154840362 194811995 159319589 270458534 847039946 30590986 953770267 68132468 953502384 47720072 890850289 376357410 304853451 732525126 419688389 360731156 469562449 860220977 255499130 48427481 216956514 806141913 948725992 175997668 724401740 923105439 764015638 820347270 95725619 360653396 425339234 941028978 392564803 623170641 777661099 283865372 345718593 854592572 364839624 111582045 334260780 626490120 429582635 16297473 463789355 231745565 735935248 693894391 234412591 944007700 986624600 157875686 54617368 746048769 144651015 182447057 72671090 201761826 881679317 551718760 575581518 773595522 243406032 533665332 892630486 658334945 523386017 703946430 344290999 618215742 997100028 288924538 990608572 332863139 377968774 586830625 802274872 263649428 104681051 663453042 749324739 520163395 463816701 224681552 653260095 316481921 796926558 669762552 335716790 581335894 783770305 567313056 240111467 390339840 731600655 163130896 716267874 953922022 563539205 99171754 884808894 755158398 191445984 975966924 832137025 156331579 953187673 852061483 676735898 169250623 656670985 493944783 774106901 792701360 333581755 632575437 918862956 526450824 99920843 82546846 7670745 197785322 758985677 944185480 136310385 25954482 689331582 273698132 64349500 902449309 94700266 241112716 39616815 435907568 518493478 701673339 465318716 172700303 256517393 588767455 703220486 226591621 755900364 377465759 330995936 339101974 562792719 252999025 274943684 567134780 37399315 539303811 113839919 883569648 812865141 266094101 366057152 366098124 764641357 985371755 338871331 379310460 965400160 718254651 331606857 403721149 824481613 378723836 524905579 943141978 689024630 151742949 249879179 502817466 701549458 701438734 408955231 443715246 153370519 761288735 524587413 945323609 459440855 622263291 209730072 616024296 137731154 253866405 119355593 769307501 778026294 514123398 843534407 795574024 122156498 389972401 908894950 522947023 566169349 416256203 520349487 173629611 826841789 383505507 338439710 679514715 540143190 270842555 227554352 722674866 200763640 360439644 180508044 144791696 210722687 845507599 740942712 405333526 617282200 352012007 330045080 360591704 495618569 131636373 982891196 49121281 468064362 919235225 263801334 13044006 196747334 869864275 427058339 571552964 805487632 685702917 796401120 814661092 181325883 174103322 552647861 486810625 564901223 588397131 15813119 780728602 982883538 755733685 414357933 724057836 200792071 691676667 262562266 617504577 814743092 146822919 60744995 737720595 737257658 262799189 559334576 27408822 530389127 521321038 847190497 646883225 752761708 355719940 702625468 866187541 663714720 611813442 330030243 446635124 169340289 4068076 929459395 272508279 534938601 134226908 175019268 911459949 440537208 912798452 32298475 528917438 614453960 14369299 316139421 778132382 152613294 294803488 757956594 744908922 875556560 941442186 353746980 352693095 507775555 881426545 29190845 559537215 557347679 944618087 860770553 417601280 675881020 949535277 396943198 294766565 940728379 389618233 710593096 214192462 389578332 29954916 798635976 215648277 168662868 7129806 558395085 948728577 827246123 929610993 284935561 671414012 224435094 549983495 237770444 734240916 295424263 740333066 192322094 948900220 54392415 229327126 752627777 922564395 270612735 542975172 319239660 773906833 170779637 519322136 255755326 7614036 5263259 417524868 483451638 38692493 157399406 6629575 470405620 611568484 116998766 344423787 602048151 291256737 651891341 566201071 861950696 555750906 626055314 784160447 547477355 48695147 631302976 647987564 610275400 235696868 632222799 460157755 598739920 851580378 710233005 327444922 608845540 11202793 7792475 726050856 247945600 910731461 96796823 277800653 447322903 352376243 632775359 945254431 935146895 654781347 804596748 835307747 293048290 380088648 769511613 361535073 226496350 413814670 791705742 468452659 322190182 242944280 748534346 99502025 351575688 547834550 188153015 712064938 797534887 208175891 549026418 510771758 129230332 759869804 840499682 373431338 698704745 734503009 216237163 713456241 76948094 774134686 140906041 884077904 574469291 469302438 584676820 274870510 729265668 850567713 394890761 360414207 693937349 99025464 74353772 388366214 564337476 496689525 910812125 179318407 41414503 766249958 725362909 902207537 365423532 110085969 997451217 321901048 181022448 608496695 508977950 483549794 722174128 959950743 614790690 402249614 249076278 505490840 991966390 886747710 683491898 192712671 626198666 604612266 911721407 8033502 340009550 831428719 120236286 666197452 31935848 352590832 959524141 513310511 521219396 412019914 579064246 302921725 273877307 489106960 814749767 2904529 988006399 1438460 340299936 525872875 34918803 486766839 653795758 447995198 295253504 971093670 460786410 581487423 515101648 102796610 40580064 239576092 482145875 382632342 926431921 339560356 532040565 430874147 316663558 737481495 370764290 481407829 427607937 151113677 537539071 74289383 347305634 795188571 232881664 74157424 389138815 130784237 158422168 914137259 549217711 931648493 245101996 759275136 625840523 738058626 517288707 54166663 452753948 146378463 122263455 537220720 375845397 631628007 832605772 908646732 270206646 182821115 398608484 46620220 785734010 121739953 436420444 308432106 304719463 926955387 303459947 997352404 955247369 683929597 314428739 113572158 836809969 594230965 817514050 977030060 693915168 183105510 422597048 652124436 411148383 932472222 950647091 409442358 318834446 588710648 387957623 335775661 677777416 605248312 655827949 698210967 317830241 974022436 502706507 620920276 825546350 643122274 605080872 398149643 983740222 333918368 510657414 853698151 145704852 980261621 880541810 362981537 719104680 25535078 563694644 971543745 234983055 542530509 403330314 684757983 675433340 633366543 486479214 885018229 145637245 602904436 634055943 595140621 62234497 77526308 518338023 967021270 779847315 955612192 342514947 101081902 151079798 599023979 793449809 330820578 624909299 678338248 133133618 475897770 170141673 490753978 50006203 66089290 980216762 610766368 198380532 898239029 717296869 267393543 143998527 181299144 453483921 458686725 518374026 781036906 845788050 637140520 407823649 737983454 517755347 697752877 162180192 515518752 734003734 838191557 387901966 537503561 585465226 227912308 816916947 573689579 537259835 666068245 494893073 742277339 176827121 631145316 944954519 163162486 500505302 65079383 754131547 761301444 724286984 992068729 703893291 359453972 707478798 398312996 8659184 85584090 372664779 194475484 605183675 646236999 268690961 5793347 254462832 957156313 46027050 86348832 483792210 960255481 62730102 120918328 667570767 629466022 435628024 930820797 589829564 80612197 108443884 26679754 624199548 993599820 198498047 907684830 590982264 875302460 720772617 229604920 298369266 25939227 529097288 95533836 521401227 233500582 531819964 310895036 41454149 618193980 820399425 903737480 887417761 141601499 112609416 854517366 904539966 737489933 217382873 545360043 370174534 295065158 529728607 19262180 573392436 80588816 735595934 701001115 137662291 339814266 669045612 382803985 353509437 785262406 933702501 477566503 148580965 214787372 866406914 563450123 72365362 502876899 807790793 300003479 830801426 62470410 527847362 378695805 23775157 371380545 277367001 30427491 744007252 545561611 785793857 215600262 196522378 220330842 595507588 701182847 361599821 603523245 826147093 26716678 814396028 516411739 174450116 987006486 581913872 939503065 469927222 716320436 613943676 455152969 154984630 420267396 818894943 468290071 217678072 740476497 450323352 882927514 274834407 375376855 709035104 490599706 990296883 252472253 277674256 998328638 780589960 365428458 409583959 759727799 994149399 723771100 753968358 811007271 793824860 603430291 429427386 106539355 10480339 621538852 457982675 214319071 231370428 372024243 10010965 784219010 282294216 869846531 350162352 270801564 354664952 992482992 922560813 693687975 562434100 271176363 845895480 984936107 441226545 550957599 292267946 98039166 339259454 609814102 96138470 980588087 713235216 998483085 227168068 762672248 261205932 157159606 336828117 732592505 359912770 562900409 895700277 859530118 107555596 578254286 7206780 682302095 113888943 243851630 268297197 383377772 23978561 769363330 288649635 310594999 861492576 153563557 773183615 19660328 13688114 682653049 821075769 341232857 397705153 16723276 980422556 306018232 338786420 491713511 441900045 873032574 96668732 301443507 999312596 523191812 434129405 332201643 350395038 925452015 136993055 462838080 159580541 15300436 518729965 37888455 981576494 916565240 850982784 189698563 616629841 75181133 989088442 399448810 386378208 828057360 327790161 685291709 757743991 503975963 635357407 252925428 229203608 152964960 205307535 566203325 589823476 394865128 526715556 940050289 985864248 29421026 594629928 201777790 778687594 382639875 650428625 484661001 109814469 520434745 918385453 198482218 701878311 517723719 395438738 706741265 138163944 882430510 189732893 516213061 327733863 608401629 75345058 744016694 956664567 236298213 759878036 739283985 335937393 347204792 531945 136733411 873363127 457288663 257789975 296413970 63888222 929531894 708025710 878177746 13436301 577495086 117123809 641412400 453363301 256124371 513059049 499719371 2587425 87656394 309300277 329979324 689479076 843123054 717220495 745276661 816371093 130652896 344543517 52642358 57343557 798463451 699646086 489024174 634970665 256218408 8508113 297666401 446776281 738191055 28420863 820322826 907713267 17378985 548386309 932409301 741448953 826410621 44089024 765691082 672193225 798481788 555092328 800061995 608088113 568201179 250936379 14667409 200609747 997361326 810555107 781877108 872561404 859770162 352329304 124577242 524765485 677990462 876686679 841604990 741681455 913718615 921370362 462761755 400862753 521157746 880890550 526240753 789840952 442787177 98856457 153155816 24628573 113681077 275278884 518653589 150965884 60459097 9637764 617843321 614226995 902958439 237693664 845495695 652183148 284008801 442583635 76828521 824864620 235636572 256842266 691731300 60546410 220565501 692029709 644421860 922325875 395887024 981061884 991299474 869097525 966553250 553668227 605744162 885124930 214089810 793787512 307074110 129033276 442722302 339526811 77719734 808741147 378730909 94222288 931184195 454891791 293394935 975388295 451515712 868414991 630542673 210169685 712654837 411361439 85134143 77562414 894229241 208614168 242624003 846131105 710886018 439992334 411173015 372495867 267411862 252343202 488057265 378064322 375434190 145728059 635412537 252838324 210811032 579062203 599087363 738135771 505543578 646724202 760537372 790886710 79804435 206922497 191654680 972631286 652437859 475630700 615955211 923080005 666738619 497212409 837743817 296587532 194215221 895677865 225403700 665583784 633862233 132654511 320979764 936037916 620376078 117232787 747297506 837508257 707093588 409606812 47572048 160906306 731479735 381625720 893550122 54209488 984966790 599958243 216093094 421073208 702133915 311164080 713200634 577459131 859103173 826931037 292815350 294645011 680537361 118790168 970646478 180062942 13971667 912941426 758630992 239264479 277324000 797508674 560734303 906920316 547758472 812842554 605471541 447147443 430421887 309371023 341613051 804647292 800797343 773174261 592232808 910003317 941364376 120962689 993851191 995933868 662320917 895796346 613442398 274352379 514079899 207258617 467148648 262724294 803682869 885864119 203916109 666632217 56506224 876862852 568879648 102973709 886425403 512697753 78077958 38525540 574974656 231135846 433404903 495118772 352953839 568029721 453304685 355691197 922455448 177759750 359165680 486505986 506221731 905777737 962448834 128670329 972344195 247983915 525413556 217405613 103781121 797963113 688984389 576147714 764932309 470796716 714462149 274252442 773090300 270883310 769476894 353535320 775373193 964091918 406524852 821837452 522358802 310210258 668622346 810279856 553593188 884609095 249367417 331233152 577087516 343956474 541224323 423332137 807495553 449754501 510900032 524006748 81712964 570904671 722047371 690895879 231640085 737502896 548469279 814838978 703181785 146400642 340356491 550059030 373509363 220064556 761162392 828805626 850758969 62252660 810502369 392914111 25849191 342855589 802384102 690062670 826194193 518774226 625745987 345278241 850678861 532091776 396487200 203238153 723396786 162078172 973801263 415805068 285457912 284881109 57030867 350583530 69772188 690789058 80045460 970127567 423452352 769710258 881820928 70905409 905981976 455747874 716044575 901361286 315452349 653655434 951534039 154028376 95463702 368530 780862466 128217078 375985174 186934131 886114324 477498133 90796137 855354609 79964017 265835768 143460663 314157429 964653598 892158048 106519921 921651504 646219388 675022424 117477659 505767131 569282395 933528489 597233193 589672167 128344511 835446460 344443499 601827746 590335259 298162465 734818537 116879013 356460777 547171052 401550175 655179960 404274767 568431993 804007579 582927886 738565593 636842810 771773017 207896121 875079243 948535383 856769181 204642165 963425365 366061097 717479557 687175514 926533934 566106695 789243271 19194003 70088784 852647419 244525566 651450493 628462027 330916026 239018510 790936671 590722829 312901959 413526991 411179842 600973274 425015287 722403308 309863939 959429894 734342456 275257747 656273443 631833356 375809216 795518208 266701800 138106400 546839832 525221972 926992579 729028103 475988830 656384886 918331987 739348038 633256669 43686670 302664279 870078037 55470943 596829821 794637241 748818472 824062201 858702258 674290901 543619940 929321506 366666622 680567153 530003612 602214438 817604466 140028598 402437027 129036687 825338151 856627368 620930857 569687415 836057181 172130067 427774672 620575199 905346999 805789764 185171309 37552632 480171295 491720372 986071762 86875417 121096766 544991271 692437771 584122431 943558648 995410478 570467672 897632858 770330545 734980812 5424157 223768190 717615235 948829698 938674057 760896149 499924909 57489350 528734623 714699553 87025397 536679100 778189526 422513495 272606356 163393545 866982901 517158257 999378277 379267808 779029240 439975806 839966164 340178795 642679117 584115371 20752712 536603918 246242100 165905279 196083966 35199093 610453274 989796763 854248868 674009187 708773327 119858053 807068357 192410367 625566734 51134313 438285635 827416765 378767767 516516037 228629956 662431512 970925126 450542798 491112092 251104951 64970601 351146400 384481374 741897919 161977191 604013125 564315409 964563240 959872835 719651816 590361419 764444387 872517174 834309804 354653333 927189037 641206711 647455573 181421103 736301262 846245623 955686315 74194956 971688031 713536282 532636949 919117905 685847568 973524395 647199420 337998211 985570438 692274910 839024867 650273073 325450084 29383768 667852038 910212939 799448043 805144363 445980766 997448271 290345688 630730472 577577512 873097033 49128621 989656946 497341237 286267998 629405681 712349141 170751174 464345255 635603100 292111913 496781182 401770026 994014373 570769306 787148614 357675287 174448758 310519716 574799037 525435412 479528548 884208321 476058818 165673598 742335115 941509479 702791965 282418137 31865835 67571886 674654016 719959726 468852336 458908424 958228000 954673080 355762239 475706100 659876214 839998252 303819143 268996871 135460370 169707782 498468795 686406105 98790675 717215945 32956331 736437928 604198792 119380772 311167180 114366140 403199559 125214682 208659427 671128174 804627500 19172651 231768427 809948419 628697939 666775919 694482219 37701713 114875657 582868191 162231645 929362990 614628359 705546612 760111873 515207431 939474156 622518453 99779012 768462571 531021812 535971458 816076102 435271910 978124077 562076910 49720835 108954637 68512249 416921636 184168163 863150846 250349333 993666549 102986215 231614763 375867031 572313400 922575968 480154424 458989766 379790921 583391927 545029866 525347657 663871343 500930669 207422217 51632975 169892827 17293752 501628737 685439152 20583623 142478872 574294396 944722038 837795905 281823393 122893848 445717344 859178366 363769201 398210902 967830289 931995784 728281593 234171837 349262947 46924318 55581311 938509637 612588203 360456277 428860121 898617632 448169603 382944146 295874756 692016911 859700533 845275581 856270071 739378310 878952461 23719209 273160733 910526641 10347202 147094970 824170412 660075198 992564213 298383545 502141246 67806585 300670469 319107950 99777114 280006298 744512854 48412736 4335773 889547020 777465652 104984312 550698012 444141046 386782250 680000840 963524851 903729622 454707913 742025309 8299090 80319257 152473820 778273600 741184156 466835761 180296507 544873500 617998856 32358120 147953536 782014826 317393630 682906248 178965880 594531002 213191389 162115624 101279416 601991367 552702749 186349422 807075885 918933332 140097437 100185142 336262612 839829769 397923470 522443998 814371445 321659047 646701991 707708173 242723624 949871767 161768653 116197140 937331164 229170518 198037125 739833611 359605222 274550810 727057181 417610584 233486037 944346179 531459319 178703957 238806282 585393646 953423164 127607483 89343449 537971706 695053489 854934941 351677940 263600451 537187747 926033042 672608655 729917448 975040434 741884963 514154261 93922312 147850987 77647881 580062055 50677743 247801845 905861420 661185317 710181080 19754407 929452842 406627891 568313150 23975704 265530667 170525388 638354670 741413234 61139908 404100608 756429809 70061326 354609716 143989690 894807191 279484779 610434271 218920358 601694368 3291196 607169902 848473088 246657862 297251252 214318726 828109797 99622644 518580629 473462543 227189008 780232421 486387630 164069119 145071786 127319602 802908630 755702456 567185575 515963734 231807782 687985344 961953369 42704080 362313414 149479334 595167071 513092760 767687101 743680252 267102475 130587480 917515855 798456273 176135908 426120395 417503145 280486782 53398776 945313707 430171392 347868045 854062404 893729499 980373613 887510423 682364827 341717450 724752610 25235189 746892677 836407514 411948298 447774989 46304725 482785160 252865975 992288784 63688531 246605834 79422787 361360780 905599726 883901324 145578446 394133452 873582521 68100235 920631161 926135540 840922412 93351252 60721455 117565356 711315792 846384276 446236817 179460351 174784695 834800796 309503268 23270498 795555606 166860312 733519221 148841582 853353261 291328566 273758365 357816460 235671346 268304193 890810018 107068032 259690887 186483959 109688109 548859186 725046974 208996424 918124739 632960003 709067039 623789715 760548519 501728631 741154990 216843225 899322149 108483444 566392533 933047201 161007745 128125507 439631689 220677692 651986796 948673331 854697158 917951790 928775817 614169702 205598317 355901202 494632820 38972170 281767764 797948772 65208147 861736769 54259640 117307966 718902609 22219568 429562661 837642494 165350859 198590595 293255833 623610226 687407474 409351765 978560208 294906440 424817055 580907346 804174531 762220120 121844638 581268857 749134581 359215426 597223405 637411575 885248828 388634888 360552152 780808754 760739845 491137164 248060621 539232874 642973366 856298029 427514289 107433225 139818777 872846978 303916380 402125202 785010327 196720918 752429956 563080180 47452048 673121075 757747939 653813437 569952836 381695876 602302911 846588981 571522486 349263455 174433030 666574263 210059300 229649 412892981 629966324 91886340 550047681 324808159 371278318 982394181 711827859 75168408 504943438 446560528 516156152 708924768 894428612 35351899 34149042 390853267 731339332 122237298 454352143 593226426 122545128 136590951 269412273 159366985 711457975 973752996 868789509 231175346 752463716 338363209 522110596 864354720 666158472 484393805 893613338 856176286 184325769 558474876 476319769 540606696 549268373 799659536 557198394 118194309 334957029 869948592 65246154 572330223 362219088 486567748 607031918 933792078 978818938 923846569 43054592 588508403 480276915 567696360 852545956 763866974 600836337 564045734 817159343 578111265 982998187 877810745 990297581 6907160 702850342 523576549 517548187 619118596 654394378 981640627 30814704 291014129 398998042 809483842 694700219 593058120 861564484 556618965 399030251 87748233 543666025 18257478 782702818 99687578 960556490 809038568 503474227 221809423 408630411 928028217 470808245 708569915 498129149 573999652 185801568 684662110 529181047 183792936 991522412 631071426 906505728 305090862 458550968 735756424 367264402 180747112 122417994 281883006 352876797 956449798 31524377 60535738 217401197 715627909 598217673 813007454 69688598 416588587 103892690 462887157 385147008 701058817 927059509 47397578 185238029 774374106 455911967 868952041 348851342 193152103 136811876 363589959 19814808 614928892 578841129 210178292 251031974 840984077 652412939 483432118 398355073 140377515 328162324 853313365 736758012 88960473 262183246 427887808 55826669 335109608 8083385 519492953 572185791 809687434 872843144 512901669 2079772 294644111 431329802 368153050 907458998 195402505 929115138 172369302 876344732 217233502 719557643 899775041 869531263 450462417 209003065 78174469 909674477 754250454 48739683 597410621 72991218 960984806 120877615 384472235 364486056 216389056 762340806 797543013 535762426 27922565 154343180 950872715 889443545 575956431 62280018 36196222 443337532 178240771 671376851 247384281 536946059 39544167 66002322 927459188 133610195 543375758 238079801 261893138 297196151 60111908 355006492 46128526 721026329 971016484 164740463 866175011 609522471 550998772 426869412 257303892 865923682 959289742 300745340 298796389 306157412 851578109 84076517 719844892 69266807 594704409 104133570 506011618 598616031 997726742 621757675 997796977 711935093 973531480 856414138 653598681 518136500 126039433 851068177 14457512 291830352 464506326 667864664 763698185 897910304 720916426 435364915 272239432 391156144 332346654 237894573 718038281 449243542 747542020 470497916 114229393 832920155 543991509 429032545 29912933 24115570 431977510 32289642 142915797 287656518 791871072 560509710 451439792 415860652 350965465 328339152 472799783 732532757 25512769 944759531 132005591 100680462 483610583 303647273 928651003 500461562 824580688 660701592 162664860 18530994 133701346 255630255 188525429 736141225 481805872 495102027 504650397 393433878 338974519 645688991 506227543 892512000 762020650 257724085 112896598 323352261 24369112 591319714 880637326 579672686 25736465 33494177 412712134 796129748 439779458 292940678 49721055 261935179 615756458 606817661 888539207 374163534 969806156 326253375 770370101 789979396 65179897 909257639 765979316 724640017 659247342 438760160 105596793 530090433 24483254 316344739 978443597 210690878 740375305 210248376 665361816 385804158 49176926 907228755 516255096 599585662 476948828 115348050 371383194 367580762 246051152 357071062 954203798 301575873 746578232 592116380 967144508 363033860 231448183 879832586 594643098 879780841 181766887 31047806 555983858 598726939 777949247 926009589 491259716 869790831 565447874 993861266 83449701 336626397 921532803 928987487 200043550 708762776 754357237 683361435 621274234 421105889 901154952 535522230 231043930 386126217 988364918 743317780 128399215 550039809 714778704 772887226 326029579 875332295 109608209 304657058 240301068 369053467 542233303 298812579 495735025 107283209 866320304 846317997 494229346 557751344 300258306 693740793 561009181 681135940 187965692 906387837 344938066 704876196 405289725 868936549 424559264 878543044 176855922 877636171 962144784 688039971 910839754 715183932 715513908 888571319 867643718 171507159 681352538 656596754 218241251 666359153 529941347 624499549 174737724 498440970 718619963 674982659 384515584 535096410 464322865 954845500 659837700 949885559 922657188 884698613 588363467 713743441 647907302 6787631 169440955 357872907 376663702 460926577 681699405 869009377 487906213 128386370 115733266 168381867 853253433 176060206 390294036 194053613 833660873 761795529 563763972 492011584 474232757 821394086 945274875 117691536 46119489 231104396 795136227 983762746 299332755 44975430 627485243 396379544 155089533 848201681 992417068 829385329 500780342 995434019 295286004 847655682 917516733 476466625 219239883 681750112 640581591 667388632 742649040 225565579 188701854 240816410 953929417 288379004 803308360 656584857 289561157 505948017 384600513 620407909 722603845 611630295 645776621 637666648 370800288 420731131 207768742 9159672 61787063 592326496 485408718 315333609 528576097 477262856 87115467 705055078 486246358 437858516 230242420 525852214 288897940 183831615 596017403 872234320 21446535 430883838 136106873 378708229 960228927 819623658 11803008 775978156 108258163 906170872 32258620 49859566 883749546 393972592 220676164 216779358 508943491 132678284 885150166 205500281 623579621 909444965 254598565 52198855 105223562 351293778 329818704 723790859 737926622 466223740 703915520 915380808 508417580 298365909 397420846 87755737 544967261 31400239 960032295 844694346 765410315 407869543 520716731 855546347 935866857 493359699 198461579 267820383 305803640 201296608 729072169 285598286 480167292 784327213 44171221 759396137 641213567 19383417 549523691 686039130 678847115 943027731 968850617 483876287 720019410 924376187 24842705 838606764 793726366 821012608 772453184 219050168 301403928 155178763 487646088 97012493 800774516 496977711 174579413 266955574 352205557 266853118 375397679 997160180 821203087 794072849 680745707 638275491 584556707 279264866 903557541 645371017 79340295 219331631 121436449 557322615 740270724 593185779 879475917 772464997 105976891 459060361 117517880 432516402 350287885 852696230 291791105 635402723 447621901 639797083 235058737 670050488 52120756 465426211 739914756 267712199 265347431 81877519 326645276 679500697 468733009 938000121 905123228 546659748 798404526 345536543 373196064 34594083 213542390 627367848 53069352 475092538 910257773 130849307 339455252 82277962 949624155 570815473 558023442 541647266 16475503 702847892 966068288 750585146 929738707 590990427 73561614 332821992 963159171 372043983 345892084 760946848 75593626 521998010 10745515 261942319 42610903 104947282 958684403 120748758 157059924 879888774 19855787 295043736 946796860 319676636 832090942 770307381 41137779 915489348 252826937 655916551 661918686 678927940 279509880 378465662 594021289 883034766 954079423 680059196 893268475 562266005 472833355 32486433 950262288 464050828 595895969 769770879 529369412 448712310 772259009 292786726 996658220 990375734 158319956 357390077 168276908 803451462 786005843 840964535 822882001 447005637 764403849 263228837 704792322 404507319 736005730 141915923 633060608 338442303 521989562 259467447 577411888 238805631 335894372 946869945 919640917 598680265 900587496 263880723 63179601 985156807 885588751 487222428 303832730 314270187 803455944 793482803 564982181 229494284 856774577 453886714 2946302 730755503 781650028 928674711 360609897 566596462 843752027 336744729 45119736 246696884 749013220 938628601 395186283 240682566 635672546 290668731 740914963 943591692 807747294 462547770 363799541 323610147 208685304 511468427 562081955 353779796 23670845 163599772 256016339 670524337 914795534 995229079 488524940 137668238 288160175 872427199 864448107 112216448 699015703 834068873 728185766 344192009 215977220 745247097 189727582 91545185 919426278 608617427 653469979 16202657 695914344 346179216 948039996 191613844 518176656 325948288 706279121 85400655 183324284 463555372 143268657 230937398 419991895 998994950 414771057 14485259 459610900 356363361 348172455 575490157 133954757 718588254 548601860 882426543 591073169 986556659 83775403 445957118 314382950 282795105 406118457 721312789 205137066 918834176 676256850 381357205 671599895 651453989 861586854 85956355 412062853 41715233 766153872 751120587 607944376 903258920 914912922 684562195 133017813 702244043 132333705 956719311 289936139 666035666 62154143 142431167 637698934 409661018 166079295 75187144 748005609 354464436 73883323 445946683 209373321 201865024 227664411 626810388 171259955 332753458 339617867 64802114 721118688 180429641 139898782 435684480 566312810 819634981 553934894 690268980 630942254 809196836 729603533 795741231 919665778 533885910 861728868 599761326 587033381 220389042 977368502 411676537 208629232 22155618 493082972 241256693 803634475 85022479 452409671 172324162 947477793 571574870 983278482 58206978 376630544 534641940 144577883 18923469 748075946 828238814 923588689 989946097 160548900 465048249 960362882 220099731 75572509 101393433 136168591 85047527 531926853 852692733 718882764 603308165 87721721 398550119 241914907 752436106 857060955 803078481 732058752 479783777 242243203 469419402 243792560 71919748 913684242 624503168 163552966 357814619 471378089 107230295 368374258 485494205 934883597 929222100 830751699 170102117 497655636 41635644 383134354 311669158 646054511 166278619 313198573 346598908 762058423 349955984 642346431 126735919 740494418 716553092 209085281 940480768 526252480 873654956 165753758 444075074 352530355 412338613 480771978 489173733 950035255 336047340 682056970 20431360 504357196 803353937 577533395 32971910 406550711 858136729 662058993 529822495 529856639 616531015 952047477 731062246 253861256 549288316 596593203 215470692 8182660 650516893 428463513 731081782 662535504 417454078 977408490 533942620 61289703 873654516 813071021 29739293 891291153 165581755 137733984 173059840 408914758 264453994 796867097 754731305 52986388 587122697 915141873 610242679 794316510 164669056 476269390 313142019 232624156 956697333 21574521 46970616 69514281 383996910 288115404 535326402 40584736 751821319 826450713 201644930 754413729 724129601 527096209 460672845 527758162 837663980 827478144 275916048 640545432 20391416 615901509 751987954 262756608 525323224 738122439 785539800 838126330 638022656 524466488 737579209 557702133 68256937 783864720 529305885 253554910 825551352 230744327 317857805 503900420 887397846 37902552 226571388 355920843 120339028 966205434 260428899 563682631 839720861 666446579 464354401 790642111 72817969 795800681 982031518 528135728 377967751 514620642 413365772 69406068 283330666 424107502 895325388 326197041 384687449 962138690 196848980 550702988 216051233 672131144 169434496 938114983 445316994 924220343 837559935 108364199 108241791 199219110 563782269 341321816 404867569 833053205 977618089 695160409 713429161 889803953 505681362 92898483 604663222 371640772 584637794 297484095 355894923 76898854 921628732 535876688 387767260 182333680 837258291 345204402 458643530 62375490 547377657 487295333 675569195 334637969 160896154 546456691 391850788 750804689 599075750 144158136 594097408 732111797 281776526 278317734 251349898 759119469 222729043 475658771 327613143 668145357 831625584 475308725 681051064 641072657 114457954 889911938 172802900 341253351 242167980 724276498 409330274 466494312 813077466 583594648 932833225 274969670 64738599 850149679 845958625 300614483 957990677 63736512 807506057 771726240 963006886 950058028 120301091 775832744 850833487 219179249 42379627 878935707 646091288 33670009 721036743 446376735 280099023 748835549 836988904 348647474 611460523 627420956 547562499 564608858 362044109 397698967 211744033 164297964 478991183 314579862 87554002 594355350 251024060 442912803 572675286 151356698 327843045 459297139 233239126 480459554 445310780 286558671 260638761 828084117 636729341 217041390 502997095 568493444 901751600 558098106 308131649 447359735 315215842 194025928 616904395 98302382 911753359 833907751 702898020 276619775 396294133 344951611 321044600 448254589 601044113 693658502 229977919 794118878 796264212 251424302 259132499 206537330 43875158 798907977 330342705 163214290 778326569 335660865 462687621 562254390 112061887 686806171 72758690 523849424 340883890 523912682 671703893 829424256 637298895 723971831 776675501 487116002 320975783 980728992 36923064 715644633 30349955 553901855 661758606 982347737 788419803 887253505 631356093 346687432 497227800 165346195 378992319 80693868 200501494 252435193 563633350 308395934 651269698 328271257 365058878 504309801 602719528 696602082 27459331 936637953 766413171 466016327 974250704 553849625 535283375 485352074 368924892 45547843 656488573 867161818 617092953 269739081 895355199 724940723 128651058 938456559 274542001 395848833 566287987 970209423 109433376 687643882 537991498 540387660 320888445 802686304 93734823 39869824 364364063 176771166 658088632 552549809 513897367 604378776 686196401 138176999 785899073 217694611 970801552 475836525 263981883 301493031 878864337 908883584 307636057 905331000 679654280 763378556 595181949 935219532 442568363 504167676 559200928 204268811 887164004 105390711 877465905 996007592 129031722 31304372 323993044 953881600 224820988 904049833 937573795 78912294 760710808 658201941 823517858 755473845 953295667 493535574 146783109 617794626 475666138 779168900 178826634 168542984 218403581 275791321 244335151 381060472 65469472 384843455 161113353 390804114 98299185 349196340 435986093 250877673 886793937 356284605 69822068 955524555 912132715 951706640 914297930 462102280 503344838 675970784 773335705 453903831 712588944 382003139 992852164 424882487 756009331 450624386 255084936 74839221 949877285 32333944 489512397 144336186 93417004 452785085 469041136 631703947 441505818 206574700 814091896 646524184 58546921 745650686 19124204 546457033 212332522 695286218 667698256 441373772 616923910 96447328 795089287 197120687 238702728 536956829 61168853 59354129 902025756 111203830 530690703 117557345 46031410 902001610 629850785 908461151 523269343 216684901 799178114 851847931 414581845 515489904 802448964 21991570 147665881 359106349 795927325 316188698 940140873 642008934 464422123 208705274 678514025 312878755 483580779 767712873 344605337 888203977 663438236 116082263 414177299 636415769 728543845 767916796 927844996 997827377 866327604 232346451 39083686 692468646 417096803 4122730 807641288 93433005 779476833 680636651 367452515 858118653 117519664 609862365 937009480 252633782 476334266 213294468 239355173 849934127 274991231 452168555 797278214 225313425 405924252 290283327 793817967 169713987 806032863 342831642 954530886 649427897 582071013 389881441 675959017 235911527 716585918 669187885 928445387 85939318 997277630 539090057 851553107 426857853 823594302 940020500 474092498 60422556 891790245 123539595 917241264 499117443 4897742 490978748 44350153 681131163 897038229 860889429 780572619 97232271 867308768 883065566 322246752 497122026 690371813 35175735 5173921 212539058 679373891 802958799 51076789 736848107 794560809 246801259 804863815 193513693 660038515 163027679 600113986 118420795 917656596 918269184 767130198 672581245 716931035 287042041 933340121 976287736 470047855 305402492 526490260 221576500 835987419 18754431 23924356 462350811 167842343 336853074 765517323 854659643 474401922 70906112 625106992 419916287 479767550 25036338 708414890 96697496 91960506 243458600 314236322 966807996 299394574 121497535 746935733 859385134 875748292 219035719 337022418 133964142 497019577 724262099 603321807 200010059 732637146 990104481 435375149 744167727 977349497 747410651 320772688 244882814 756213497 407067928 974877987 459723392 637277528 323744920 997353521 536748805 193973270 543032591 811992692 791939830 318926713 643945109 843164592 43689583 344768859 353664706 400347913 560099332 883055271 742472440 571528964 176874558 405153945 56157277 130167135 603958392 715273551 467626945 646301576 246850293 12162469 454321539 57512442 784152877 784197977 983832859 298730507 541552904 3501803 371049539 171542337 889563478 645531550 80001218 844302155 240557722 716150406 226390171 388360268 785639508 161874888 497395923 467158007 482234309 666563724 540457016 690994687 126848124 338103452 445389870 949681014 692037424 888957207 627356496 573959553 490777377 942463047 432759396 131659706 601832630 632158140 276681238 325915189 510879701 53306076 734526754 966468027 994248019 786507211 396625505 684230490 467334358 291840253 35538311 167277805 973133654 642432149 768608628 537191750 618969570 377932960 887787169 758957354 539526755 595962103 399472372 791444493 260815087 795262551 156139697 684675940 762395578 166469024 336965506 313722164 630537856 935819762 516095867 421400471 641325396 799757686 208499854 29352211 741195508 955250351 410036343 203857623 35075411 487169328 792932345 684740606 282646240 986030340 858927639 996998116 722574151 432175505 795578093 262961210 756741449 743323439 593639237 346459148 236196466 281917873 959246602 453274996 224266010 380313263 886902469 623760322 32230661 406099624 270326459 710828426 585906298 178762079 621027698 629290008 257876510 674327150 7777245 972918082 281962817 775589603 47306372 233000018 28754464 198294868 989824227 106529571 650870331 838010890 302875426 831721100 876810554 386794491 320373467 259678520 478997017 850765826 333523247 278003083 650611606 174409269 291225246 968466542 752054815 282406840 471269836 722306968 646941653 165080780 498061714 856784759 419733809 41978205 992725748 599496643 523842851 981547224 517097253 46404152 915746489 572433327 12609503 529148215 664804900 265175706 211221478 936238962 722384526 618821518 718728157 906062856 768661891 225316740 404332400 57014933 17753334 160757629 18657511 194875981 25455199 464574750 19309584 122454990 665985529 844384473 531083043 684561367 300722853 552129067 89482062 458439943 411461397 230846021 154219114 520577867 705614697 799760459 382854970 615442641 813085387 526187675 332500342 715484918 589262008 297542677 715873718 498050686 887763496 743139231 952546226 959606165 344544083 29322123 737128541 791494703 177490586 724690 757666068 667347339 953378190 454566935 169113274 586163849 774628714 984474821 882899613 529492765 610628269 139993283 827751645 730164303 395067968 90993458 658506553 121384024 114092841 957421627 437834383 814029098 686753038 609760268 65449861 205818365 439772887 443137098 106089458 393126618 792108117 716173342 868615089 971001120 939366214 605127610 473962168 173369535 11456379 699279992 57099660 216657701 790057750 524709421 240776744 622627956 139682983 224540421 847576126 782543173 724771592 674841985 770515570 631140206 335141262 585156587 565027083 655062223 676569091 423111422 44366276 718633836 799067465 182774877 443120117 794614567 328063259 757104128 797861127 171013004 135860606 701951580 118039520 812809048 53197932 919978352 328194191 698382960 269990556 625494141 466038017 432179881 265255861 458543703 703074383 304981948 90191891 373601449 466001692 114265249 67116080 95430002 516668619 50468023 629437289 290623378 335076052 276137990 374056895 354810430 270290691 479878840 384223182 13664306 616669601 12761951 96305058 595285772 734620808 565126595 467540794 364179296 748833211 694836455 357142421 933386597 41069912 541461367 471904502 447000943 512582515 575457645 897697717 230354281 683224055 326966988 203174016 994066518 408075572 376884867 252853225 298527787 560246660 413860531 947642238 351898247 888179581 474775152 894726448 712998441 457814695 956722988 458612814 630613362 309564733 101970282 241653124 408265737 852037056 765656700 434038224 960224255 134742420 686702062 289010041 760949088 506718019 714006757 897727471 799574142 328614175 224756060 801878124 555914005 283649119 408302079 100071006 68619804 248891887 961358268 762255391 143011062 826357083 804511941 578082049 293700259 78880801 879982067 936366248 230829361 386841347 601496750 63445521 936694090 237253513 268657389 429555038 560980046 501092539 8463280 762864870 402971037 147195119 778171407 370194522 928767639 238626084 57587883 275819681 622704723 771338495 819229461 610999223 713475607 104947054 828079212 66924210 368632957 842397781 267685376 681539777 12528573 202429067 201569821 271020606 8896852 271116943 779165939 927679112 730684930 788712658 924181870 269026503 973277200 297064133 897685825 702423342 691920814 747552114 916907246 376342540 93660676 209336510 286120037 520786005 608089343 356942552 436384409 345770302 914257211 148715450 636471734 169474105 918586351 868814430 273615439 566807127 419852412 351728394 126686435 668495346 776691285 8207964 632231486 538970128 17756204 36501335 764662772 790663361 291661289 799593055 682096282 338722236 602623293 994113937 23039033 131908861 199530677 124836059 422501586 698895038 198172778 411531087 324208037 845142043 361050677 740422144 550748628 37721686 28433908 546415530 814786396 901624254 439731227 461317912 122423430 274812368 651077162 10839873 714258167 862669530 594584228 994299945 988783407 516096455 431992560 984978909 912244146 823354131 261748974 978098155 39706943 580318933 339678049 592068719 412530418 289606628 860904222 865809456 194427766 61387229 521909446 407334021 379190230 569114415 194106909 571082390 220766366 271134757 391032566 731067350 342919696 671254001 359567640 405761204 76568974 725270636 54724205 299320136 673366573 670090587 299508334 585969810 178161856 114684031 981541636 528704095 846880711 671683975 345604503 536014035 588373978 172106432 986962545 620686452 710083141 847519823 104922839 578005257 962457638 65212396 958440303 47014272 31110876 750728526 447086871 342270886 124783908 104909660 733957999 783977476 400327247 347148895 898641918 949428572 998621526 604238276 346965472 409914576 919081348 326842997 331597335 960239930 619923522 519372217 633411665 200109439 5141091 248105803 652433191 646616193 718755367 890643588 840778232 236155361 279551764 841200511 860298515 712276619 963780648 369247222 431033018 485514090 432553744 953752847 568406556 53132094 614330109 106904480 996880127 805808383 873298408 362510434 578002187 214303067 218739961 313583414 192458094 292542082 772525809 929237440 274087308 796639283 2921868 331085849 668780730 851684185 844484134 160208229 450482423 223782836 761055382 162939923 110008277 366524821 125693933 254089218 658021778 701320650 63704105 900771220 447959109 129476328 282835945 837045715 736237099 92819299 996517995 970909319 212450861 594839947 852195110 701443850 389635136 655278189 500511368 471263452 150629462 944233840 492498830 648174047 110948512 368133918 410664597 601143520 958734042 695168228 973284746 719304141 62307652 657766330 211779389 336478860 281873568 338577019 769552178 839010712 417687725 504276454 510795569 731430151 383898250 161768016 642118965 469964066 618633189 294458175 209294721 666387066 235829933 321697203 524025894 517336071 727536616 258891409 448261887 96635720 927752232 233822473 727836841 820477749 703167269 895318629 715290997 667186368 837613483 596635434 120260645 536785977 418088485 722265804 254015188 558087751 64770569 899239181 433048534 660843156 192081565 216135018 828613769 406546381 625735685 971535356 935864440 419727290 615243669 532357594 315958705 126271659 911570202 674672305 759120767 903197129 7976389 24908389 144341000 841754674 168926227 860801549 398057551 81194001 501390783 344729185 774501696 885175267 71280573 19447134 431539980 895500670 92297838 22303123 541874892 862825746 851689337 830345989 390881722 579960329 848141292 897850816 35797402 912803163 924609631 73039272 680214949 913428979 718197037 575206975 989274143 806970338 189301425 119639996 709836339 300272295 672826246 917044154 917106702 867513488 978880634 851205964 725628184 931109745 525980033 294655145 191581479 33495298 100117185 411163928 371736692 251801344 829624682 937888572 965085251 644492460 451549234 212182610 292700349 660522146 497495151 542994394 382856745 674306524 58352340 475145376 3221813 318619167 171173693 970080471 934938686 406365635 476518437 245665373 477255757 931778110 915114679 648366525 660562863 613855626 572181588 942129860 84366922 238052210 347103181 442774350 223195025 497382677 693200613 632460878 8013499 340608322 258649881 253537094 595470430 744512989 958535938 846008941 711934844 120005373 326865086 328159087 767967951 910004607 864806771 378471931 114022589 351863931 360812410 327306039 816798458 672139045 372000465 454896475 474087185 625995208 265561130 107350654 344140661 676289002 746603848 153200908 895354787 471512136 215814641 816774802 689621295 470994635 416220842 684990293 565587144 170540581 544038473 558328363 10283885 383936975 301406975 712886592 433279502 356238070 987186518 719724169 804240277 869259382 158194087 962989648 596477437 398767212 395085263 250964628 708702148 733904691 45170500 440778871 646005020 241879949 74915759 17223658 64888070 380915488 356139961 759048351 564780878 184547496 34986326 606087932 222157294 204401351 472577424 574991724 89401005 220528432 272376343 733885591 559548242 74303215 472442633 1508270 938756886 423213321 387072292 526432151 752089069 250187761 668905549 270984535 984872783 440912419 250765273 941887711 720336496 388894163 401146677 681310244 462269142 689866864 172330775 587662002 951984694 774006272 150562454 883251506 774252338 802508761 581533847 729101597 867460482 812264511 210615245 644348667 285340878 693549427 803749838 705967644 539182472 267526729 66962088 812340457 668455821 890183082 54511413 534511620 612931955 711771252 82814112 859579595 696483672 54759732 962104947 935669640 818048819 393921817 200482266 940298981 256884839 314048228 30083550 9324147 569975207 132855924 347323362 946936390 191407232 629978481 425028607 930465742 947478469 308772478 974283183 581776879 64753986 372321192 45305418 891800801 270521391 844483116 972173494 202162675 946561920 320220169 386170940 863845599 765146519 227421084 187751213 278691127 60356215 467864493 12814937 357489999 259977339 447272637 375139505 794993744 656209400 669776558 870272394 312558101 437938009 176632187 574157655 284220062 716662732 554326095 589786171 901213903 98393950 809216782 232141850 501159197 954270090 836794193 904499598 243675030 949930210 811967877 645529939 201810286 978876523 229594768 295322536 944052045 305810495 508026455 573149197 996396298 7333122 380526302 492941756 649076891 249585430 570392983 221613302 737872060 222046196 593588762 21201377 204651065 923939231 303493846 12544215 212894229 881278771 480323408 197069080 857627688 137503695 169474621 156149892 676567479 995361469 237973229 209107267 111865595 939551269 62400938 119086574 384919629 48071847 673794856 866248556 699369931 535909161 293373280 430644281 932277442 283233317 917710862 792360675 984133511 188992420 686042024 115358482 266166241 47161531 721367291 25554019 745069605 450174159 434335634 310239582 268883390 173316003 239874 544065054 709482280 278389440 397114064 819966672 530973845 454122860 733939644 386044138 378329954 737986625 915083938 201395183 592251781 687013743 5752754 651472229 12486225 537771049 874698663 9990862 73325508 548209430 587931344 514140649 964275201 78660363 500977479 448734381 747030670 511124666 977362892 585099541 804296062 462218343 763169016 213387122 467390113 806360885 847726549 22786128 653600185 689631934 982251415 723006722 697902581 274741250 93695306 846118267 787388321 374766588 867715109 73468202 519380213 298893022 172593275 495504777 850487644 724634104 16647524 713142617 473392415 678331566 628744649 564996730 976619571 200418825 982473348 548195603 692832775 613947717 148215759 281805385 895969145 68048274 150578978 319679407 151881238 668086465 712480438 907180683 283617917 455197998 330668119 548643131 335929649 530201387 594301386 860591363 164466983 88365340 615276233 396211323 753817381 934404923 435800775 199102908 601045896 930103137 374301801 527440820 215965317 478336359 250541922 993700338 558089644 883494655 2758042 928964454 321593339 81984392 145812260 631711034 425848482 966414001 107251323 676017108 376129187 374681021 240079755 737785727 150933098 103407230 16640314 537154946 134206227 829465090 441319835 736101556 110739731 769403848 669223536 397536193 487800156 788527804 737677591 582126640 801117738 496797516 894594220 759699337 766498379 463553077 230507507 521385202 943399594 468395721 251795002 256266494 88143719 205928770 722474755 454022742 43399984 890593023 850048070 936453946 965454604 958318007 389797767 669651002 705695382 26579856 829177872 192077353 573869229 178129529 934518537 464940500 159507640 984782120 202527391 117592640 501082837 660849053 19441215 418031302 629567305 555370967 939426575 476149872 633373199 126239955 854548343 838694926 371594404 437549120 247875163 99328443 142367014 215144262 437550026 804295593 697345094 685304844 963290622 94017263 1111108 435913471 808681726 828093736 160102904 432479507 382528515 586758390 577318267 44764365 185444854 294286721 523107840 272162037 8157182 37367395 225795658 489987135 170884837 784430146 314769738 278884671 180392018 751324741 630734904 264373641 307762221 161680548 630873848 176094492 71189871 513875644 657721787 679367421 804996939 458306083 855048852 166545716 470110131 66000130 844027492 697316417 289855229 621257213 70870213 602164469 396987039 140153302 141906824 723363072 174244084 969235525 588081185 863602339 934766263 16224445 583171054 303850533 404732450 406743787 134163894 6862892 574981442 203121621 547309046 627445750 955485740 754554735 304748816 533188537 783454336 335327679 168987433 65515187 723406011 393657810 710869563 542839335 752204125 300834369 994626727 785988770 361379326 641295510 158015387 20754289 741471384 272678760 945479954 170588565 14695492 84902411 611033548 958167814 16307381 297861530 181066711 486815723 469731711 91435831 239348286 731799677 438784146 387093076 313811556 95775883 716319487 90903691 611179605 760876425 216122401 617688345 281577799 829021564 30542678 137685339 562949936 943472107 665120457 719411250 712815790 10092601 564221535 389206538 613273333 721887525 851588038 713768748 577863491 826927007 852836110 932761201 813382446 55122564 554283632 448804954 282749088 624604661 365384571 250602550 60077488 550297810 969618504 709061976 835559306 17281810 868287686 581951852 721234892 110616819 768045144 898588158 748283611 488780658 764274255 677572701 912300068 567727716 280255579 161808424 709265681 654601106 286886773 244411465 279821880 843108952 839527801 2312558 928640826 913398823 378627073 57554456 908330957 331875771 462914268 48371775 404242557 389402572 967502715 905341268 380046241 35384718 235805671 979571442 243994315 775368366 638140105 749577722 208091037 52312162 189947908 231462599 958092471 624408784 175947674 801641460 976505199 112194255 989212139 897415167 292863955 778889776 549046896 754159677 906454047 968587809 524373492 410578317 395163571 251413798 88889123 555015703 66505018 493888515 973082509 98622183 313272421 191098669 220766994 402885273 640554550 585648641 781033964 986171331 314796442 495398297 764090183 890905255 315863238 350314279 863767166 463790217 616994733 450893340 933017770 785802485 543287668 847242255 635442946 812562572 173932302 639076026 765595339 513387729 659765208 149305759 281460233 244012323 267856606 830305091 200199794 65345997 273776036 196628702 653173048 180126754 263873630 579992469 48174816 737905783 695074508 782205924 870567007 704690578 482975881 520004879 395075798 608630126 227424454 917476569 210115420 641171225 522750960 549852994 367202218 459734325 833136765 2887354 203251564 247932879 538701532 388244936 168864976 774969317 276651828 968177730 382697247 423786989 616646530 83216825 333453021 983663963 135953429 650106937 540148307 256025512 215020399 714033186 675163614 306689950 941714759 229513860 545827708 937018803 817027207 551452092 161906123 596172765 434012425 96432309 652889989 755924749 214305868 498334168 447466299 157596149 181657388 661861242 190005457 438143231 390958971 290459257 70736726 490942885 906071251 45191912 258946819 227862245 946271097 445422937 403721564 130963874 773153371 37784203 743101256 869451469 977115009 490820637 920941625 436030272 965556941 99164336 365086440 747110397 437007983 625364482 169287567 919488031 483041383 522719875 241095856 885490251 912885265 605788083 248138341 594023835 979325773 398487419 561480151 630019724 274163594 246499260 621860642 304488160 34801430 958048575 302737609 668133451 275981277 904123103 571930006 752776652 967293856 586725754 232786444 537782768 939708315 577050602 977308719 709938485 286082490 629615787 331047785 776019672 688525696 162329062 606661927 532529873 426390854 87068771 436899316 627639422 549189366 892226496 309380844 430633403 321953424 712948398 649035034 14981134 8498692 443929690 87904956 517323938 248243792 80112211 173056792 849882452 345867498 570647585 846024958 732186667 944408310 9489226 321901925 270283287 96027112 732111431 67560151 773364529 141808408 797748319 646730386 725900869 853630018 495251041 816986570 821768117 44753747 694814847 922038363 458374666 542113168 768010855 939805155 127396198 559644211 334302991 439609183 9127342 475044233 978300262 201209917 381873402 240034564 676259318 13167207 46226765 195372943 598322300 52780655 351286993 411666446 198198198 15441633 743295593 191672421 930340109 595787461 735135616 166855318 401652469 356798270 805311478 304573031 874324295 474097046 155714485 487472697 168371074 15361085 414043105 928476599 995187291 965282442 46434956 365378995 363160365 458552076 520106937 760436696 526652598 731171859 466000175 927617803 145194163 574583534 316548265 83910139 422916407 508081533 773041311 366482797 334789270 383835077 791375690 635700485 469936264 637827388 289168113 462802704 566289055 58263036 97598085 331143084 512734884 185806566 12672579 712160522 878275171 433378001 530203804 945111857 528452987 914679801 388796230 136600683 18095552 178073526 447243586 204546795 28314109 291486944 768958212 586462399 381133510 765695797 394796695 403499353 840512917 933548421 829229318 222880633 787583886 302924734 485737745 509803926 326461580 696265810 539924753 786789661 42260543 387050009 352768513 601494261 511065416 267619353 864425378 693050063 122363215 60116835 977583906 178661586 254615929 309751747 609726900 35864907 12317580 112840686 768375135 441068484 717993172 432770018 314333309 903726867 481927004 49285420 656453698 957121728 656217249 541046235 442600791 122560904 791429172 754347594 492727338 398101444 879283921 156051197 488843229 973063600 259743203 750644466 6080707 476427719 282617147 955633575 933034456 771633110 728688292 355800217 966764892 868402471 137992412 356978170 895614134 451624247 830074648 396992057 69519912 190052500 880505498 701257214 651094952 821448308 400238926 121053758 821346512 820111605 972982575 892858537 474420934 351622542 26862218 562455247 759805994 194125987 927175490 9604653 824840192 51638746 108047092 864094491 279989673 49781356 395860239 344411406 901846020 684256253 824358058 616153499 814898621 15385692 187689555 400059975 930542943 419935135 163826259 552493427 589732590 318676051 366044611 647170611 502994146 127971110 988759371 24170831 732970924 374093578 41637505 279634606 551775671 816321880 830859521 984681536 425066029 428737835 166371014 457225780 104533348 620219696 301622384 437173620 185446207 763524622 854191129 279568316 501812290 625274626 627928923 993557798 196761865 704747922 286052845 651668668 279970092 549168633 637548256 290976548 547225224 125076186 518058026 681813726 42248184 635299934 359203843 178217023 108969208 786091622 906354710 797357788 200085828 866846002 401942310 64717642 872370209 974040415 202329839 728144373 502870461 419118091 402489191 249537063 641947151 931075129 283815987 810843804 25329779 66997432 614004791 954797931 527992820 736923923 454318708 720720263 574668467 953816751 879663090 501855803 155275324 971557497 175778418 677350366 630181877 786474318 198124966 871161141 614223709 399016884 895452529 723003453 295675311 974501842 558375704 747429292 481227933 297346154 569564605 288908817 228873182 466960611 832283310 651140625 107249184 517256680 494742665 151519223 775196958 404351660 24657529 931823565 154920311 384310379 949944906 136758143 452234677 480030846 654836922 978555347 176259490 716167874 142037379 844776263 469626109 141175051 974109901 708111146 512359515 325017179 103897897 757527220 161920134 64319169 899413523 38906839 846094832 911345552 891959860 797877966 93343082 801802389 55752796 630140254 636010560 246653427 824233021 111767126 705439441 764910371 634818798 626069257 871722261 468132459 127138179 948863497 730179267 514605446 176335600 47996524 438715024 366328898 613780856 695177717 748166589 564404517 791052454 552854441 281485147 895145542 661687470 274637622 559615052 683164750 185300441 687832685 978851101 116394252 15250389 95760481 562672386 973436889 793160928 46903157 106302966 22967585 178539593 201427895 445139925 559905603 964586812 693582640 769419369 918092190 170680673 383993834 79046226 217996064 817019967 113393968 65152956 839066995 679065807 294584129 999888790 650709563 877571441 438086374 247414475 606941317 533512085 553154619 430327839 725765470 440616010 888190530 780933189 531253558 755116635 150421845 642669642 122254124 12680121 787225124 687526487 94395625 111876660 571337904 879434805 773449028 285409494 658982504 46267339 65767737 886557129 198993652 462289869 733264340 879681025 670359291 506487691 105067031 407969564 740570384 882452276 480657195 486211507 764683608 984582327 681316988 764501673 555627044 188752464 994059054 133041602 325572878 314491959 400740058 884412971 328475009 390756122 253308347 143796581 610632233 941575342 13272519 52263474 657927638 253731517 859346477 428384808 102686684 378613001 556651018 143398956 629332142 698614315 773697781 168731344 172926213 549186480 913884229 513515182 46994859 463439571 732130892 928033368 829443335 36509850 11844609 5990862 331751713 768429236 112110874 214340090 171205317 890473824 291243088 222471118 648258267 1180526 867259020 748720919 414929120 631094786 940339824 643463518 709645250 856154735 707811952 548993576 307859831 429429763 949097687 407901980 792192432 941844480 411558123 284201326 658527412 641502437 500373149 285229925 769296272 383875831 528687304 946690313 141106595 573217801 696574331 345656380 504914805 410602505 872810209 434874369 593044143 71857856 718502829 749004143 1339310 499363113 454205630 132068158 808322716 567636605 317242123 391254382 119083252 947497724 95365976 330127267 559226682 81943948 979940784 415122791 739702327 385165084 458858362 72779258 176929307 498364023 562513101 109052246 688403685 5129969 697067966 969420324 36682331 457955013 7360711 369218953 953877204 579488744 970491618 39975032 190321227 557775890 400900335 605877119 45959894 617866441 739592429 202036782 591762186 981056329 788039899 369618064 556639272 321029283 22807702 329228807 653128822 604080097 488052152 718992419 829401435 728467027 593649291 97020752 44367015 865570878 718744163 237740491 822635991 782599806 220791647 498172347 99144510 31511421 207440032 895534860 232415653 739458235 348198412 767703556 326707989 417059383 168104788 254183248 394032236 378164994 363507786 157388360 944216625 65216926 874636972 270421548 441328950 146007353 101496358 485686773 484610588 546291618 317742435 187476069 913637453 445768719 250002235 575544152 960862500 232968984 788969774 747720956 485551663 978588358 892253557 238112163 959682741 332058337 208663044 905358467 868640468 984898435 250816301 821980031 562573796 580688447 639303229 303479278 901593118 482712897 756658066 900254973 65309292 790114106 187518634 615042855 281771745 32484181 187656324 513063973 528364460 181814140 60171652 605974746 298717170 538804851 58377426 223901692 585492691 922884526 725069526 189920517 520061203 569217845 394385377 157731973 34748474 913148464 124448916 182642831 985233457 878962654 814204178 604912864 141249844 104523564 502747261 996499492 963274709 312683880 773108632 409522027 298679157 655475997 419054553 928146228 464736669 198713747 3221073 958080058 345220902 583939602 222232482 503419297 124517508 710381258 508788635 957161084 495397574 567858888 564705201 297278781 741933656 744878473 951386950 33313560 141165432 886780131 630931180 934437736 704391390 642943516 38753949 159602172 750372890 125150931 937325449 655320037 310810716 943124566 80780647 683791946 29078336 552865236 775387083 747543809 426709851 777807840 429361530 244586703 737679045 244259296 981677647 557983275 514056709 985124775 114345446 840967556 646649255 944345594 761666961 396569064 366597949 17907740 145349802 840136994 634697778 294028570 546459837 879281931 46697562 944519341 163752454 996815882 863874318 148012926 649496145 302405613 304714588 623629486 888435284 140708544 648910545 727731910 726834545 85794177 439536994 126715172 663138773 869862153 41392925 569366115 243311015 375132137 916649689 701815952 223065738 705977867 788472862 409205877 204442559 238981000 759932901 195126908 228728618 827061882 499144132 918569129 566979107 470871403 415846621 928544881 60417672 106206466 485983852 223875518 679041012 201602041 571198364 793544211 128686793 626227403 958338243 515212824 704510865 768446221 127859829 641919451 747068322 244043372 422636887 137722033 164122126 282269819 26668009 673739390 892451288 453367241 361331608 837687567 406071995 514322893 469117445 251242695 953897782 528270065 846833403 871743770 343368859 256658747 280943988 43369497 646605364 946242707 167174541 934796282 790965461 833302259 255256934 697826876 381657038 621089301 244255786 32032334 284322012 940553305 440057688 487556920 22642365 387663526 135693673 703396582 480185613 463391081 386228380 516046827 397906672 514361325 932881933 330959765 466290640 603219986 669557931 354978782 484248508 260405604 621447157 658837799 194258482 567985254 805904768 312128516 547590279 863039961 60356362 766395097 905014273 387253532 798890160 276810824 101448102 800429927 971035623 99600042 13994998 34767868 266047672 627326170 257521580 911744024 91714235 51745646 417744584 639792354 344796469 671738731 300837859 925586373 311345800 654288651 430850052 939458921 920386259 687382371 409541118 199525407 60872445 237897561 411372347 450691967 123603309 769973057 523810417 230086981 743083328 280590774 745661481 714321872 195158744 311509986 439817940 304424409 937469671 713018705 180462099 875405180 350422358 159286327 299318688 551113888 732156141 529946971 759690022 275092480 197440879 648882586 655392169 198703548 751017857 675729912 345598483 797652228 39437251 858504269 730567852 473941881 244010796 499384881 844742813 650575041 958994198 24773668 321844947 263923670 517740337 77201441 693972463 27470582 977932659 36258910 338035146 790275292 811843474 95924466 306867659 59793646 764008530 715411280 772476923 893400279 396906765 393310342 689596644 994715263 641944510 268076001 25460206 611898 747392650 560841656 455860481 46357187 203654615 789870834 745882145 443044475 261930435 330394608 352460681 903608849 493135710 617902582 904252122 884147674 915272320 325568414 189838770 950450005 637558652 339570936 703190071 453110467 284599475 985827498 197928611 749343970 530050998 356297780 807146157 829658914 513699277 720733823 245698121 299091924 170811641 960839268 360378185 542845947 24415638 980664260 875793180 143073980 954913081 542958884 692996109 452916422 855672991 512922410 466157588 592915173 188981164 162298277 15157290 770762831 253291030 625599925 317049202 663936782 414304029 566063615 480737120 390594844 703906691 588936813 553987887 52979648 355808998 154025205 804952045 710112629 131580170 406317937 117964719 221628832 199818293 597161738 196984684 648522622 422966564 915648040 779620864 252901548 748342392 788423208 420180423 713163861 593177599 226152470 98483403 670933054 965379954 772554147 71867712 155827735 454104497 15917619 133104292 272589376 674030630 4660854 125690274 85127565 463368654 700018832 589145809 15883889 234759744 809300912 524475151 116746653 502457045 889191488 954894451 456062279 642647549 490765807 688214270 776214068 195633790 853231236 517796823 378844045 723199185 226954758 838767795 65491911 767291869 347387867 514304756 857293529 882220529 705166965 552533082 731734898 89294164 158675632 177449400 36533837 714132286 135998487 662957937 749630090 942189876 429084433 431756837 855497308 681362604 82105405 322936438 350073197 490146793 201589236 873899604 958383092 171015744 839015263 166239559 782754584 774099405 952718592 173813479 13977405 396092638 377397038 802269178 573401190 111401638 960219677 509590553 853179601 137949962 363377546 589897539 588520563 323120830 148278300 696156988 590422876 921389961 437879074 481976557 783097507 171542090 714877704 481306826 56040340 435268055 439846769 400743786 480453440 441377819 523338762 426736762 20978045 351682715 153282897 683477981 234189879 881757856 765520608 397533117 665295613 570769138 497311742 146361790 120733796 344244095 385125746 731099176 916808469 302711922 192997347 610593008 65073766 201130209 615494955 302204626 381862124 456780136 694616041 466273173 485392981 523853639 774916624 360754173 839028153 157620852 365385924 862089120 12200041 985782459 376050757 626394665 649680797 133139833 479013756 314503003 694419663 853495283 979070893 879314874 259841814 843072402 447697251 737500405 884489924 313113165 869346491 3963345 867412015 756622850 607291605 68981381 841135944 230780306 819252759 358659705 461273037 457094023 12293707 227581553 826873148 278728114 262888907 19174466 834922211 737357235 960263398 694184095 671412737 587096739 669951783 546754336 196815484 17229019 133053406 793564816 879369325 362583889 186953530 282089303 778084060 924728979 375238463 697162387 398528573 522898153 272323501 126482496 548424286 395554167 441192402 888038483 941825396 206521119 904124082 767320121 714600804 836678168 988866515 390242843 61077541 743830835 134316036 13939033 387358805 343888718 705560825 82476705 677930756 198848533 149208876 462625494 256532158 537458960 554375491 674134724 997397649 27469297 715524773 693129258 221775155 296600006 981604866 189603170 869429733 318045359 499275140 563908117 874667869 112432508 87187218 29339279 834147236 575916317 294526182 938506324 845536651 698667923 578197632 414968170 366595355 703535521 328245610 314051959 422539782 797934273 389243273 561607685 56859298 393705192 154904057 805747419 802304973 997250192 390591279 919917713 907407893 505385448 571080893 296532428 463359986 924764108 37782677 429852872 903435339 819326290 111921254 524607159 410628081 368955085 437792284 501209493 848097594 690923963 152831191 339883606 421050012 304090643 392551997 655663 299660587 457150430 890419198 466473068 859214909 669358906 754289863 681894937 554379660 298699344 537734471 522671483 119176145 251308683 533164657 411503135 234996019 897523610 936962714 99872446 880422843 239228954 454170425 531727061 785428924 471530637 684206966 920633792 433422264 63666544 584206148 83599146 558426058 17590027 759738360 633628647 628045131 770386195 910429224 939076762 538394783 105422293 217604197 363263901 309199930 862179718 865235866 235619228 733727317 388710502 467622592 996052546 367138818 283365990 404771294 954742299 393852929 320570464 280001646 222509909 328499365 50477515 802208638 516361930 274647868 810986927 620661819 573918777 552571765 79905583 938368119 932434422 84755140 144300779 440000788 184455777 215870891 568025823 397687406 651198232 838895583 427829732 73938276 351652027 560583240 533889243 379752622 870867384 18759783 646452870 537771863 802451887 985303280 516585822 928155740 93202899 115331819 764950943 1164260 128999973 568850746 515456135 854184658 33155903 373101868 258341899 879930699 701148672 594782336 961606240 891655674 953469878 817639957 350132965 151792517 475245515 908404596 827741227 298109372 45143987 10780311 90564333 329926763 618335962 233622780 834434486 206550092 806476567 220863561 3869868 668782508 305177120 409147410 791012747 620334520 930656677 26429962 120747715 901812898 99164051 622971042 726612731 973825381 556921195 264842094 131138319 840136690 648320411 870352425 199409498 504295924 794951329 281256626 72005241 313688456 284722184 926178925 536353515 982979184 71791545 188519899 147008682 513116845 788402628 136485372 779753743 139746225 619378313 898775728 395426792 977216708 600547253 930901105 418569142 903461222 733377321 628002825 707672695 462963873 498597064 732290905 843930921 723890519 428235681 218951775 438577855 667193140 844072053 297788165 424026134 663867822 693021363 148824037 958093112 837681683 840692381 256752040 682761740 329538792 426561757 81047353 918001027 321749694 446707958 747051784 578848528 561333430 85529583 811647536 338878468 806003673 715327720 882499869 599000673 957176914 869606578 914373048 693451761 187288822 546187872 982497463 603981699 475749363 800167240 257377504 976845540 569716506 705757960 994736962 943210481 622234540 206060425 669290177 890997211 117116840 847004964 957921382 874953174 895009703 647171547 272131961 344389601 108074978 880290141 488820893 240859749 905958724 944230426 771383022 516873271 998718698 345122555 58009843 568352841 377822463 117631584 565530272 852094215 863792340 845016812 397446774 68577936 41499724 906292595 181729169 737733956 470189393 251854737 692550959 943116048 122217218 515756854 930057741 181066164 692535865 820297410 275496146 740618197 241499299 268092493 605624989 147730835 753962561 578574214 277232831 424520641 63676924 653175692 772359959 428543524 520725113 482225139 251172723 247602070 681391559 650062785 865092624 126708553 345828664 137947315 666808910 89239553 629094929 206508087 233746041 526334552 591820204 630577894 19273780 898344938 397457320 855273056 980919198 541396902 709969804 446728883 617091147 42878542 504648391 821905385 929322803 416253622 30386796 468746656 742317515 275920733 889283519 433375330 882012027 802646853 668572808 31215108 277485638 305878714 883172717 969306921 674899024 356749741 608312087 710941458 646058563 949635036 229769696 940404516 45433533 5698839 942626193 168791017 271838967 329336018 658022138 543257534 834120819 844725735 892478805 523004802 675714528 179409171 618377410 561312984 552128454 270206532 960460239 437771019 373591839 733989893 106826862 23005156 721498797 540696457 759877051 508798368 755690682 510625465 625329071 680385915 822107511 868139751 661149416 278295088 266836771 72419563 196268327 275652096 769646105 318467734 651474290 770547791 13188800 540791426 148866111 185651746 726995778 283023645 675838490 417086112 792307582 243565688 948514821 731250059 197917832 476376761 936928378 483418154 139250115 694276240 983995822 822404759 218679643 210569485 230204150 285825449 928357874 711544138 172328872 739871968 816426936 846389875 142735421 993426037 275798376 995889979 92624339 758253322 686178095 27658470 750326268 853443769 749536858 474225424 149004320 765796166 675696124 822241368 342625786 747140845 834862127 316636171 138238189 368553454 38598924 703872333 21080933 633411170 599846257 722225096 76449363 73786310 617064518 630556033 797872424 471115434 194795948 472610867 198377088 163762590 75628128 534718825 454843140 852965327 791435769 908618036 45981498 181967482 744853597 16053044 961613353 424432694 927603357 429239292 631569954 534506575 911393517 784236287 33835978 13639889 331357925 214448033 513404956 539398669 832598737 885460553 536486971 978681467 589748551 290315918 610937300 546035481 934752062 266003044 170390704 388409788 522370756 648573321 147410309 850316979 299854365 276935281 953331067 928731132 873313898 884933281 484261468 796881257 723091264 112671748 191324368 257047838 315505908 337297673 394175563 952784592 52730629 556281369 419267732 980532381 981155477 652185075 1046215 979757608 698632659 151804965 99481202 264336435 989635362 545273468 498818615 200575207 12741863 189338398 976321747 823965138 508355628 864741421 125654432 647335031 126854287 143056476 565893483 543987800 569806188 899556309 627859371 843715805 129464358 309971438 807276919 579892594 840890093 300662066 46672580 953450018 32917646 546367182 960831474 96969785 799265570 41863715 722706039 270311055 33013133 959775982 723504846 262000548 611233362 117227921 324766776 656069491 429955357 914829447 262705086 197564005 339215823 848792900 910716078 458555514 259121397 408179479 848713534 489896438 493710491 758457556 641144305 150539712 315635046 652268488 299281131 528142221 562364966 443771167 278836040 680555676 703765531 219583754 847294259 469132723 779863633 415920152 220372196 31949224 567506165 953814693 935393698 849939551 942137724 83264181 855306970 406686422 413552051 673946822 410182839 855440059 834915262 879667597 801981226 864803833 742090225 569184920 564365025 260154774 502885054 457489372 947102650 991019027 194555159 881391019 436028784 102666288 460119517 757762186 446025682 325986407 214447980 808808137 514927003 116907519 419659458 828823718 916837022 764342602 349926628 565731098 470109637 911787250 165310295 973767649 402833538 637028454 649993737 488668249 317229108 952643673 419737899 997135932 857584976 984569126 519294662 572360026 745231601 257223378 109506680 453098280 504007211 724499448 836202711 699255726 447254885 645139942 49882197 71171818 98079448 196549010 415606466 718323902 481729447 22405599 247507312 657072225 629456664 226261103 127017063 639568248 605294132 498131587 274854338 323552852 412630542 560369070 703629985 286767947 156263019 888629264 912364031 452908895 422444411 145615667 27940861 302084852 704972357 349163490 360550546 726519813 110345046 784749528 115371955 250463971 615618907 747319637 421958406 183124477 286495753 885667037 857434241 682892458 178753919 909627300 553200176 177636328 928540542 594781583 803337645 477709677 219492710 450043205 251485419 149666000 931529878 611935875 619889461 273692390 882576315 177428907 481121365 34743 63154245 219170469 65840355 776912686 390160027 502590002 888895292 44379424 577493844 339208467 36544589 553769543 41780943 418369528 512527565 640601377 43303331 577385179 340413066 771999554 842460132 375913400 729460692 575156146 878557404 494634185 314525428 36292310 305803516 271892563 354569279 880554979 553648559 928391908 590363139 156106632 913896350 413336208 699309894 496920745 479251124 789180918 796307154 44365743 690168075 395695640 134192056 621894293 765584284 199336618 686520983 784123858 7645022 770033371 882816320 168299700 736196643 535072715 351571969 615478060 823492901 178866889 52624850 138164109 461645481 182874352 659936876 592062168 102513470 158778604 294236027 29079401 143218316 310181936 946803875 890611198 893936845 945071756 320356485 225041285 266206397 638173528 621505930 977560981 13063624 682056514 511489148 878756151 14406032 693232329 273422450 623860650 589326829 304798717 68631923 869069589 712455053 517462534 731425198 953590374 970341272 407877027 228566428 288214247 630408206 563550075 991596459 106487110 510271341 199083200 668612695 254227648 360154520 867171465 6763825 337337640 766231694 64655798 266225980 472530784 824171447 876320670 834288691 516318353 324585589 481917033 427260924 646620554 457509999 168987063 938447051 687990635 665208794 64431210 239117332 592399208 659241653 390892311 230234221 771606517 546801246 746797685 839133798 99026191 481801119 960969444 704909355 143549348 494466872 681616323 604447027 897342484 469926315 901207034 103298393 867618691 879505310 731258131 86087521 938113283 740297174 121108851 445084354 77623049 828483756 563230818 407219290 18219294 766270244 456561371 541983497 844372814 411578462 458947053 139333237 901542342 578646520 628742615 629345340 94327804 179617318 688373131 495531111 690171191 102199550 2806628 311735166 691248202 746334732 205742547 917415552 980478136 849694476 604856898 851282223 708886978 984480978 81559873 744239837 527878116 803464618 824692808 39208690 695266377 76878629 512056222 506787467 733353656 85165900 596561573 338231852 893621949 120325459 772231063 423395881 433454502 606258740 661874218 181678598 388571317 407719349 154602706 882060377 884690058 787144850 961768211 679275737 784184683 229358024 54480937 471103595 213227193 575421065 256020376 649765752 985564391 176938213 823433961 665884250 23934380 18354793 285395953 893973374 933797482 471237599 881148290 784905706 746481395 763734523 340005963 111214919 763717193 542643691 69110469 348786380 147916467 979636794 598795761 557264609 944668622 859614489 2276049 653962540 163769306 475718122 215368674 963979460 414912973 371393335 248747890 525751521 457620321 319571142 522859718 5015535 148814154 962608701 844352780 526778595 221214238 432454846 405011933 290232575 333263969 705325972 67895033 803153742 536915809 824802827 192984878 327087384 364244159 818319458 898132005 744623503 392330233 331451745 937416074 52129466 612798558 151740965 864966209 395551897 796182148 930482377 56658755 167718197 499380315 634903055 125671244 939220937 822746557 697944573 208270622 670895236 61628471 791764603 556304457 349532480 57121652 740905709 352750247 994107229 660844625 581223599 800915370 511098624 389589307 272307158 926051094 94355273 952937844 661996847 941215819 895653389 289452728 338428497 147926258 608872971 589469858 463498222 275358346 323268164 603913382 237269796 275283294 320405392 70713084 932817819 942018108 816338147 59344172 33442965 217264441 812854214 14158848 135210554 432239901 243943303 216932778 817596889 368163902 832378539 236283000 105209844 405955714 629642918 191241598 124653103 439962589 581632436 101572420 534475589 353046510 87028516 216468168 72395078 548311834 613952400 531786203 316250086 861440200 978488948 732218663 806657292 240802939 877736665 291943671 168349998 543757836 23034131 731267231 859400266 524432697 507989266 781206046 212519016 32300159 399800805 704682982 846289019 82877286 257600162 33795538 53600481 386673691 394177893 813701907 977154385 438328226 633314522 510131087 676553384 781631035 698852781 32784537 941336281 742082835 198029088 883006571 232528231 498680708 920052388 724090762 863219453 219646899 212683042 648460439 885842841 415261654 298536120 356351706 919470078 466214131 645641957 595023951 908728018 205239992 32894328 882316886 125210018 129135358 635172902 301096543 584067782 450149457 642801168 197959865 195234729 506279401 275930099 294724149 64969014 216452358 239264920 374541671 763129719 723589455 172383836 541503749 466538680 379587861 387125999 124629943 822908427 588731736 339002927 620247740 585372983 881840312 527060921 705818969 999331881 746333455 74298452 312067544 809129526 19356124 447753 114398008 839024206 26081902 550757739 26737268 259239184 24277787 451154856 729857757 956828944 450038597 327842104 711443750 474761869 78120336 824922556 136392458 56290884 339951771 967872452 138346766 958544659 994965042 644073593 350364187 523501444 563446745 520196363 710598811 556857251 99923605 724784601 598606102 603154330 864620580 24496197 493035768 152990378 400137393 362689214 922493283 386822318 978531317 676735405 455921257 225999778 35862927 874966847 699760307 929847908 526589007 686488197 99191004 219329370 759624083 482604908 766358918 534998579 13883328 941003391 394864497 239150886 400653936 355982023 956929464 801497632 676645723 660397757 394734199 278971418 480921833 111536267 409653967 121856711 359926703 512801545 163236291 745709521 637107577 615072583 346885747 799551268 953177243 120202349 737234841 926427576 70776974 773432237 430296107 867436271 875767839 527073623 531359618 869033390 162442690 425833880 686193271 846883962 628635583 44962846 731202962 922901491 881429619 162049093 760750799 428951465 34828000 906679480 482700567 408768247 992094965 14293822 100562963 268616904 14552814 56414570 183322658 524828602 456564392 719320390 776485882 665183891 88876328 228423000 783618505 998187089 104236065 982407782 807851102 319382673 363578847 15291569 946712086 623511331 856739727 906172304 751308227 701616093 402648332 931522799 827556348 421176891 86390273 785341657 181683177 879635590 619740129 692172643 486803686 199476049 139380116 265311282 668540759 36196853 817267912 816636002 642462378 216569116 227370992 242059953 510589744 513681653 13560596 716999929 232377070 575635764 153798352 751339421 445194212 297471646 590795210 728891537 138846887 421981062 715799134 636336001 456992921 305377310 718279380 545793640 264785646 853573937 568763113 249340910 258480300 191217074 106886076 894835231 741325545 900021906 297223722 447628487 220684731 917812038 791840962 603054996 65852020 848228459 495304886 15181348 418948641 8040248 868137304 867425930 191565845 417031626 550726995 729138954 637601186 467945327 111192256 858224212 282854577 580916458 65646546 429589546 313710679 254108642 380052316 535083179 480641825 222675494 708782587 694188484 534780830 353127053 901277279 499605023 962267549 916031024 144077473 583298462 988069719 828503687 494487601 706405083 616535308 462690001 917549043 605974953 397597633 857286037 244606117 860680283 868613936 103511315 630523294 835718430 261625848 834915537 238074140 939870439 751291948 43245796 227199589 852101266 236711637 243734886 884870451 196616321 665589983 948679338 985843830 357388219 567689684 925559166 979582160 794042876 738757401 673425737 146663605 939966337 709289040 931914249 965285962 472210128 485132780 908311665 329422826 341187278 238166265 236920398 236252818 894410909 815584186 844458556 218114842 149348676 783811149 381906135 911647434 744416550 164663193 234926452 715446392 591794424 778371460 578575039 933410879 429220604 676935264 926049885 37911463 789206992 215972388 372465715 809007962 811222071 908723530 212616736 673889050 497670638 138604694 4953431 232558156 506852763 900784584 119468980 628792038 392290642 220048499 359718558 270580655 943300872 970924470 325440172 932795384 716434098 8390087 812817817 748331129 771793459 35116536 583352639 17729084 753181721 747675317 482347001 774631981 197699554 806338711 53378978 400956613 982780709 530838931 355549788 496224542 83460590 258333284 732876318 60324124 420292542 491607688 269135378 910069411 926329642 794852433 928313206 441062623 211946658 413985838 707624635 502932737 725284086 455267236 423130293 422796257 165332060 744314811 424403529 823497324 19538609 10910298 785536908 138090212 725886303 13258863 78608381 453882113 383146548 117134030 884958671 841369822 885491762 518998147 673742030 862344292 677842858 649995095 793040857 397177993 509542134 7516166 832492719 926573617 422691368 263769451 967616418 731071087 713596168 769581973 855904053 330199336 997358054 734006338 22841079 138707179 473067209 249835072 947284257 40013873 474931430 413925879 730651656 693169854 201441721 532629599 482035846 704751403 943232014 721804785 204604139 880886551 540474782 261876628 781946547 520040929 125819125 497295033 777793569 761350530 989072313 345444485 35002034 139076208 280578059 151339371 340936592 881402466 471341009 993756238 144320995 577338584 463005739 711428894 981603433 337014709 894810343 690531926 51058834 414302551 187301051 97467256 385565822 853918728 681550267 563550761 81376647 718170669 450484370 908430180 45731098 864868407 865558487 703416748 290102160 930646940 833466701 89531516 181404228 514666528 707181145 191091822 902386387 202019625 782528044 871754753 764392022 247296509 408086387 139122235 333657063 985100831 398874130 626379350 36965441 679824566 632853655 330402281 790405765 167278886 37125637 498788195 660532149 664474614 51122079 888317167 775813548 286224463 460434618 59962443 345274568 565301590 271996092 852898369 240368990 621247565 966740537 502709396 733065833 520131055 851989874 660151444 11892801 615976187 838479416 585552596 126407947 909887313 366799398 255592317 763841990 645527286 254643662 477577251 201003729 480098082 406493041 13004207 700385613 922416252 821527880 260949484 508482289 380121568 730881826 266338395 648968287 581100446 710181444 376945777 920587254 57828992 71710047 420791961 623892019 407719951 450101760 273687207 203223949 413339367 301360650 404578369 684934924 462330794 824976095 76706436 899750433 592884780 806466875 832733062 355314166 908422545 619405823 338434142 979469784 600458443 858512968 605349316 517062631 306937714 198539899 40357323 469394245 706898661 914465586 918351550 591299156 309513214 867825837 895388448 350354988 465708383 37375048 624534069 427176313 821267524 859980843 674686472 657948569 232497295 211630359 341132086 787878266 689663761 281032664 84338107 979169710 379832403 782588643 948391263 155799288 515615250 436102332 987514422 705789969 35377920 632972248 913914395 84663861 895692948 324979383 286721323 979129385 522305097 503305498 776946505 555103449 245248003 573092711 651705061 140894237 224382031 530094858 569904242 343509076 380799213 919464860 648110372 175210662 98504392 920297343 45874080 356391988 983033317 511954755 332960188 696195424 740621030 463711964 436535357 931034272 157597175 661215617 646170246 350746158 859974943 441923208 139240686 74852087 484439225 457769505 536134181 17284105 882073001 233035466 97782985 446937954 526835730 893612080 78740596 991594061 734060721 652687456 622826666 574563645 704407689 145272417 760863393 302970656 662393055 114760871 418441600 707154115 900345229 752658759 59536429 857382901 187652459 310353075 155466336 350527721 907191416 484475649 753890110 922171345 618250212 294614084 966627818 788260126 598926656 378506281 518869461 928441735 461694872 570547476 413118513 279439996 619650029 469904070 51963496 233590656 104498314 254727668 599316777 994431892 651003552 944681339 374028868 666835533 448083381 570938910 2860279 484758513 390702122 549913361 558992525 395083235 426409017 896471520 650320924 928210700 187505854 162368469 168170812 784192025 418398993 415661482 658115302 263573178 113173307 613735323 812833137 508609008 579587623 557824550 158200942 360521597 901557186 326649009 758537113 94144837 183081574 148516287 869104627 66585704 100941955 232800820 210724435 562808262 296883782 575432393 505072446 372631543 587564518 365913779 897292828 760611567 318169549 744162586 637307453 37167430 70740645 183199931 353903075 178077074 793662276 316529144 776556667 663555108 492718697 572587537 416164543 41160587 571310239 537595317 432500774 923954504 449544869 657866783 761309729 869444145 231934876 512957361 972020525 792503457 640188677 688409341 542651542 234761407 759565661 186661074 527107626 162701799 760588016 537132550 607185946 197821136 116366437 732571011 224949586 460760390 796015400 856595565 990349779 934770506 793947760 523734571 916792589 202071029 261893032 335985845 375388244 574135295 383819297 643274805 745702591 122481785 877517771 548663163 899561080 873151004 791970789 599553740 406428539 96092726 418440193 453618811 892292358 581563022 803793972 553490421 284564895 984228876 478438318 387925251 311178174 242175214 553824501 366886155 708295345 65125102 325992000 19151580 316375197 410771575 101182671 309277299 672945780 756488555 251902244 396913101 939555904 788014724 622264864 304942273 168595153 543869811 245658135 890877889 585169890 176601412 22551253 421441100 10418327 870664384 18433828 723444092 620543237 126132908 568041282 949414843 594076213 472969168 500851061 17328492 273844822 457991870 443009630 946653800 480810620 213657115 467659140 621800166 451373752 546231759 276988140 518576046 916991650 527650884 754708627 626487637 178917015 109813417 435875111 703793797 697145244 622084456 792708469 86473728 76761386 238133777 86003996 384578252 389241393 950530232 846155360 893467412 673884318 295248653 203656935 388352886 459480098 189069153 284499004 150357983 269156174 492455019 970665184 592029630 850136010 435582719 880103915 352752825 305816370 309480106 849319879 942279833 337194723 170423751 393340750 726026211 881814576 259166333 461865822 129018098 129072928 120697599 534417796 63878947 621941072 829989272 890733326 883451212 430260433 897142286 791259854 371728067 947614522 569727246 316317220 125440636 754765274 674527462 962237881 820891552 114148677 294490811 906260534 677250522 300945604 560586947 392246936 242457663 816095172 406479260 770591567 292767332 54141781 376165299 922095946 303799229 257281160 49460884 360564069 224934449 688043175 593581586 417828216 396375530 46903383 747851163 211042095 336169848 691602418 374039997 187176107 784181772 829979219 872091775 733492855 315054771 15129587 668079244 34393931 55144233 610944167 410515768 998072557 145715838 341147580 532072590 971054230 378766177 177673000 350943931 418988112 491560658 908401546 128464953 691816526 20617942 758128877 474052627 384598561 635416712 992372492 231417523 443934193 14828027 646620800 648300565 521339887 312580468 593333871 752350603 124522559 336323780 853605175 119714395 149666052 614247743 674063939 872002448 906589788 249774861 705173296 494618274 193400079 145658544 347407815 838665906 644489080 316932719 932334887 18208706 736748863 364312483 24213706 72703684 412724090 811374693 19780633 854417961 980367405 308485633 62006081 571715639 438335677 440091109 107302002 781228668 553778067 926256812 266408589 601568506 743769353 349434625 613507198 800736864 808568789 447035588 169499358 655994995 565446934 407522484 153620634 782003771 888696125 936383709 724429732 915293578 835993945 139787648 247885296 145616329 842287767 561273049 423951933 525356951 421705462 139571510 165943890 879698465 545840483 916498889 382227328 964203546 373186978 176162641 755527007 742918638 363585290 952731198 695340748 45973176 139137062 845766359 804644599 782321281 69215324 773834700 128233426 777417957 821990394 28284092 950267624 303864198 118944308 163269129 609798003 352616304 924171527 445959094 749132122 82613508 749037951 204276694 582465500 22642511 296968206 412498772 689841518 307815570 823552656 519716193 193115246 687036448 839075 664881135 209249037 309748574 858660064 549852839 995892480 402980782 867846438 34835857 271834643 955931516 719092655 507032079 601031356 688583721 562236675 943527384 39738172 689839127 28896297 684336878 874464745 685784178 503870371 828095872 392477465 100242612 779397720 239054278 174184165 374262364 383421114 774516694 487223815 136351034 637494201 693687925 623739016 819709201 929869956 118527983 348507043 467026056 237094151 252079469 865867990 593903348 672255585 269247462 930128257 748012112 239792738 142506620 694229262 29838885 455855214 924929416 257588211 681899466 683987642 431328785 548992730 673421734 215672162 231343041 212908208 883482589 141432068 107404961 527751785 426626273 577035839 964667026 396208759 135255901 472228134 129992028 111026571 518808363 236186012 777964146 583510628 288644516 159136418 352910259 732883217 627090608 827096515 25022189 636562510 562906428 696392556 980598880 478573314 344428059 208198530 905932860 185902841 937044187 446762455 523079241 111853963 448088864 521779666 396049732 858430339 52373569 385074444 137165177 341171919 512501033 441915522 759793088 732552024 793364642 391886815 444924005 479270505 260599420 25549082 819376473 70220162 650306461 357574024 520940708 80084451 107527824 875701844 870942250 114936803 905097906 134092515 935963929 123401109 625691692 563282529 558270363 449249750 643368613 190837620 120580063 199910451 9496205 48009787 716679540 332055300 622010622 400253325 648911319 660828556 81533911 480938667 388034301 805873287 16871857 699326956 717194961 394452830 601112806 510208068 464029914 833889454 181894535 130638619 358332347 938414124 376689183 888455601 233079576 65020329 686380922 113247045 707716541 988074688 886260381 937804975 499488215 937927226 773765960 422016840 889565124 238426241 663403129 443720223 109394138 969793755 322938933 781990366 171753139 925598742 398133445 188609328 474061967 282982839 501831396 618731269 634183632 929186320 251425486 858209493 177556279 192265509 488858151 254323483 761603565 490717001 621904008 53016927 633724775 324105645 990803024 900770270 77177952 509066212 999063187 943223587 225297919 695091893 779121130 879897662 300885418 540416762 856133385 492531634 203833496 694648464 693347893 493943684 762531051 547170689 230901727 573772921 463177112 562680839 49937858 56235714 473869837 386405280 446739208 186967137 616664434 234428159 121048918 489777529 816483464 907595516 2352407 307812414 448797528 725197745 478843960 294088164 588986798 520287487 134442756 557217978 683950265 44959397 833650195 19763970 790910316 865177953 487365907 493619971 259942479 377960330 295860639 629250159 352739098 681816939 6237666 68138440 356079647 342499840 748732691 128434685 717561941 821437531 803321665 521443816 774155387 579911260 164695598 799028037 270703449 607886068 718549866 696207385 323033836 575581125 766462034 858699401 335067427 90575123 719697211 825433342 128719154 414989332 152814750 811751927 920711530 305840881 111051563 613784027 849220518 834575424 115719240 396154090 3287928 957347345 56576128 537003923 65897244 188401989 2224024 590083191 465783463 771717672 440412858 211615194 114034473 963838983 541704244 576638731 340389858 148568162 116641382 804010892 125947023 715493147 109517781 328878692 665304214 107524563 171975587 652193855 595681284 928654434 704172320 923007379 636638097 296765478 802610005 214794041 257026523 576323532 499457184 848626326 248342952 500414359 301183358 407573896 679157402 189445747 404461791 851687019 146869604 834528049 944232783 565237008 549586942 514521458 558763943 544425410 505867560 704831840 506275977 510001669 478227709 834450677 272488659 372324827 488056804 249793691 940997090 973305520 78660291 637418214 433218204 815575086 87061425 633438758 628785274 960528993 794606932 904912769 898896729 9511668 806254474 677447391 335280328 934776330 613073942 307848314 17835278 510369141 987405692 446227466 410676352 896920414 889894786 417668419 981544107 302803917 812135391 57364232 776029520 490774384 806569873 388758491 680610420 971189885 233093673 779225302 683393328 903602025 83523531 987032211 268483524 17933468 729662151 875227908 874236940 300966599 595428634 194937642 914811811 430082617 954711479 685907241 686307583 183214852 997645867 658899800 949779360 494119864 347189877 457994289 650970920 121611577 565024590 888977465 816916947 982766068 996125159 966636564 772842187 6829042 117703770 871898760 185147670 374512098 214706040 782474243 876957197 863879097 811015548 223538105 996005660 44497763 624360844 557562317 179049887 404117130 314590341 710261169 306384489 40533206 343570894 116246447 172553850 496400657 168726473 416232823 607512071 761038868 258980323 712288422 660865791 920644029 95402511 160724867 425043006 311933593 730216010 635683387 378767925 989621511 623690878 157721267 925757294 794053209 986167542 749113080 945181766 644003978 352500609 462305863 725413333 705873662 606060920 447088565 134621549 299247927 371161246 225441822 58884369 514575977 878435042 842215608 381892681 860795730 47248771 523229167 62411743 554531515 495447505 954851320 633585990 541577197 487453049 93454147 678712927 281449510 642870809 22545097 377565883 359065985 620161838 277974127 60432694 92555658 649790442 121432969 416658694 455061819 310276642 640234235 606533052 538951284 21576909 991696738 48770613 681457940 909736962 50857779 649550154 416342300 338487819 124957438 198175821 397454721 7881933 582829111 704582246 91419485 339629420 297711349 366308770 734438333 499420504 110583786 893771318 489439617 335215387 751843474 432243925 689646823 17186053 45469743 860223943 592094589 348803870 143517219 300652678 739358974 450324351 4684063 768687264 946209261 604453417 582486017 660539905 432662660 435258725 979331266 569180476 358899218 332043630 147645662 197487771 47565853 427858033 833621686 293966538 380612458 446777607 648102212 672520588 245731318 180866429 26581913 911813711 197377684 834754305 762778075 121004172 151241044 957864989 99980561 775660318 482660431 973426776 943747886 944737434 587825400 370795495 619234641 741200145 126010721 48769608 565730370 950479225 947363136 101227759 969447564 77190149 80174901 44266815 35148843 188159319 714512844 312322080 761440923 330284235 619249696 77467406 672764610 915665474 68720311 243103644 171497682 917703994 192387118 818210955 545848749 576622232 971684358 401955459 15516743 884711876 710230749 970394997 707787433 311098454 58221055 853286197 299665557 30703886 593758986 528571090 107445691 465737774 83886320 235178756 780695653 334028001 322588687 116933639 58081273 250840197 834399354 38569516 173269801 195121122 381946048 203928995 735171357 799068373 861027980 739030930 728220478 146995889 595232960 543888709 766285321 557701971 191352505 52434117 598983743 486569034 785134374 759326197 922646984 441558168 274058357 697154013 693432703 897744721 382981030 264136796 626592512 664061004 553261239 167494110 995034573 48798045 824297967 434604848 640443163 588826675 147050647 255647452 997047791 945153572 841568462 185790705 105497754 776505479 951797737 988890275 471879053 882294748 752764386 280606519 28381191 257809777 319698921 272033481 404084875 256803412 262929573 901847775 872354357 919568870 653459625 830729044 696215517 394384972 422349527 332965058 831294491 164147040 446716330 638746589 244362334 57706769 516998096 607117658 585846745 699338126 398810181 598824382 343904363 965105098 334122421 359539600 582217460 812547028 412007061 492954033 729558376 695495671 788276639 331850142 547750931 765338545 12985770 425747455 361046953 945034287 818496257 940725719 281008261 867867650 554233962 99664578 815661518 17799031 962200472 308111483 524775823 531344995 524489603 159698933 796694292 11888267 348912680 741941886 541761268 166082381 153851499 766424720 391090036 391005924 549805534 389884712 509598480 407323462 366041289 969239588 511050460 783113266 432125729 648016444 138237110 55833776 234970998 245825433 872728780 91630587 727806381 32665805 755578185 536805311 498684836 73440534 120300217 113136214 126212213 93420509 87181256 621658536 49032329 355519618 293566429 730979859 824154221 779055886 313232363 935083029 876828196 865889273 622677872 154207151 306765323 399400484 280345570 916221010 319359833 899300165 495555231 453985710 36024829 906335394 680089620 129570293 501244110 566315101 128718519 417879359 99674528 565816476 305399137 517288543 100006860 896320053 56230940 637061325 232478143 211949902 671393974 391827221 581340411 717039462 234827327 988200666 5523972 40844634 514074329 468564521 332978275 193536102 187214491 72079588 28031125 666822316 473046062 84444108 399846492 267224388 233873515 726323509 163709860 585343542 428667557 487731329 334378509 502507739 51009813 269308511 936323951 426118594 381995653 85379217 805787979 101662644 447861609 605279539 645787824 101955342 792592112 958459683 925070801 972064429 848780684 431119443 218721111 745637315 295161506 877046438 659215080 29735669 200087599 245589724 567693428 480504715 109904241 538484522 86567244 60718644 52182555 46252624 529043905 133259540 468854733 718372863 478883400 100703474 287726303 739016031 672201417 47116348 273052889 902503447 793456199 108449186 380407369 293657359 761965563 411977906 870719379 123017728 508668032 41085693 456969364 725913157 747031200 399731083 923038424 927572088 401841943 717123139 74162836 396329661 926201067 103645509 262217798 591923313 771305668 123364386 854116646 654944146 369108029 649971156 704060584 131634356 620139527 140084592 771724003 747600118 310130303 483973612 172874196 882982735 351976740 885378431 703978843 527065931 711058621 442257946 163221032 331439533 140692233 973336726 774957116 615479511 911191243 789533082 698320621 786772938 664172423 857664982 834519625 284119772 229492420 119556302 189606244 35574630 190008317 446848560 225281676 593672576 294494194 22941654 765522942 480407791 725157891 304183051 839072853 511779736 982646904 774547484 526641963 261653965 569003074 962074085 65037015 576893337 69448754 7411164 867070135 81355143 734376448 199152638 403504409 975311676 900746307 168666979 650611410 375590312 115437685 144058831 223228072 870223045 119837954 930260530 592963334 509843403 385230539 791228313 145235490 972784660 984970961 281689173 811101642 169655174 378656844 436553741 136216929 557354185 342542444 836987928 96709651 210872493 589151114 463376705 94625247 15239415 704757078 74135923 729477560 817363949 31629661 530689294 344174088 682371736 465652035 307701227 940954446 285599861 46443813 638470810 264819765 61917008 236931535 725048841 689313896 361460071 578399134 70525402 875602921 940306222 154597474 24461163 828600438 358614765 770038473 87697874 967484206 476630628 766081512 141977582 33054722 135881190 973371415 570695892 333973164 961793767 196292736 49583164 273860648 972580325 217618542 466426382 892674579 349442296 4180243 573096978 830715107 442855212 51873512 291525191 88536835 451331468 99488811 136899765 378539257 640354756 432623724 891483905 992032554 93485591 706971544 763270778 182528936 470662955 138642358 853836311 465074080 631665941 605293781 264569301 961782970 124993948 374151523 49569 333037535 680139483 66893617 101284997 604467109 822855260 655645553 555121878 968734337 170615356 938654698 454709916 732515301 377794957 484103649 688775653 674035617 217106471 722102787 172342554 550628991 536279528 567436413 946001563 240929099 81477613 721744039 696165612 817628619 377012443 710987453 551787371 404750115 81550466 761563218 354838550 327961177 79921214 176462806 75972233 129196725 644700094 364978534 704593124 736376298 487979318 20224175 809612137 371783156 869106887 143435014 472443225 678212427 542651563 3125031 986680117 199849850 229015606 368386201 400187763 962953521 43670519 302223528 554967838 17896226 449383695 133423571 529079750 205530976 405330750 884197190 414912832 465845887 867488806 862957058 295296311 214791913 960674339 31123745 972607808 998557439 235454186 840179962 910038424 259539301 135759834 895589799 106895207 623862032 406720590 39621223 812889938 916873695 426130066 329529417 765240955 23502395 109347123 502313848 544998900 273660134 347040479 312969337 332627204 552062389 771815583 198149003 363749904 476878267 328295658 170837261 271938661 404628665 794751741 253972200 19205633 635957314 709469358 841190965 993247877 186089965 396608911 337005794 452641529 296007889 398058258 451416557 74819056 557550695 943211197 599909862 691152634 164629740 754989728 159465280 923588782 559336050 67673604 917402827 794047238 624850086 820588365 800223646 3134015 649607797 550092093 629101333 499068751 890212689 853565714 741847576 236313529 247875115 496785027 483804163 602622391 467569373 462786389 509108047 828775805 716655832 521656087 210757131 320994154 142739481 305956737 253672642 589209970 651558005 207123209 630786656 559211921 330478830 16209195 115167865 898972851 665418836 884877489 279581730 860999784 38249899 863478729 830026713 969847358 776738042 554716230 192154017 311049827 37570338 728397622 891431566 778305983 641908848 366606115 825099032 618562584 792085377 467989382 472294987 384449127 568019196 275036550 636229431 781593926 721965052 968178392 586990775 576772038 806166432 146028670 741558705 127045734 202887185 824392150 105881893 426603972 462133846 621742453 755856760 929253961 792636058 298801254 95487857 769532521 26053033 585162133 363050855 679049330 876378610 644939576 918593361 741298835 759596765 161744251 763951280 630935529 412196899 503192795 569381447 338861811 538727924 993070840 629183203 301986485 55431929 434300349 401977054 488905063 327120573 830855471 408901989 269756718 510772451 81158221 266175363 131721115 71396564 808107107 851893078 585161932 371960267 504615584 601280143 254924136 567356105 303035896 67484227 340562567 645471119 501057960 902671900 909497562 377236282 36272473 158288499 834243692 462442211 32937396 561145671 369246315 654034375 998636487 869470003 232702888 529866628 758944408 843124396 211679605 987667737 450864012 810964688 617318152 494267888 233314717 587607511 419418253 741589649 919211946 774149037 961128567 640982741 572843210 63649626 83666723 244773551 407827118 2922531 954882876 198672786 832590912 359595661 877304257 176949439 745007131 201048562 947495911 227932894 555293608 935100770 968002179 221440062 55273978 773866335 720437677 927692150 665562518 386068978 693099737 933854269 461478107 746779257 230159620 776646774 262173708 572748702 494300379 382097271 627477130 132356837 578182892 9679415 666895717 65595953 96401508 26300713 130941648 237309509 813780879 459664115 902932266 255057147 390068271 588405809 694642679 103524001 525613716 42069761 588088514 500784902 232828624 472765628 937462407 943270068 473616282 351991075 460566529 392087024 961736062 26200808 177618845 648240966 781502747 898988923 21296527 29175932 779799874 963727329 243745226 341080483 478206643 617083204 326082617 10834885 9477617 279963602 806105490 599080565 583616281 326574340 805374597 902939836 960825953 714834313 620050459 914080225 149559666 17267469 264227090 664383642 909908440 638503181 527359829 514977684 670694240 335528535 494108486 691303130 884410052 590245515 921386693 672689025 968332124 458894625 405638147 67652426 810590922 766000704 286989441 338024791 745463450 825076434 29930154 399779222 336118991 655738351 345557247 392594230 175583962 501959770 406882055 93556077 844564297 396678749 376059447 502799413 160445411 902625193 459223203 656368033 84033867 757093123 851290650 409958906 65280219 652380451 234296057 417011493 959994717 385221697 374311777 438357692 910088582 875667467 972108598 595492255 884610394 505233639 461126096 981770284 787055756 450248285 943626318 853506018 601421161 117603790 430897635 668060140 754063904 31097117 197113595 251759836 388466377 319504728 112062142 714719842 690853534 451381303 69694785 292570898 213703196 822251623 899588272 818971484 685146538 43594972 293481215 528529398 107122436 920958173 17109010 602866858 111784853 403403264 767033087 511843671 296609955 175886734 673196748 857180973 788764098 145421556 230606614 209754665 75902463 28657794 426306863 95277187 963449896 571580502 389128860 465188223 940595998 668672174 866810809 401999923 55200565 206921141 649911183 769264495 236837220 872723070 972553446 99245861 454039369 88121311 15256108 382273516 799265906 764436068 824168899 898595496 920405343 890083483 627102011 491554283 11298406 192567443 707864772 185357878 746787260 17515385 250416626 205478526 96888696 683351157 609410217 61176829 669493756 221309512 314696527 412117912 789494039 403841034 874763630 967588791 908606293 298918929 241114578 586471686 167251179 358981127 622137176 163981460 529778150 93492658 13065011 430486173 77498741 416771825 906536528 498004872 650536984 905288774 793621771 408527360 436903104 445011669 689517309 388525251 79527390 884897993 976254032 919508161 189798132 166272590 386829161 74384622 2392544 281467006 436307970 384159271 161600970 853303662 320508404 719282410 415974280 869255390 262438412 513617822 508679241 301588926 762887742 772889489 936840531 970644665 673647698 562140572 714481515 226205727 71054622 777833919 250207894 287746301 643107174 128926305 855430626 294569629 216590800 414948129 526359006 804715119 167499816 869984546 640655005 538750404 126156508 371030584 976597330 810008259 304925538 20193256 706456667 998676829 702196147 467698008 542968723 873654492 481097806 218124318 581345252 937046225 838034020 498030225 438849928 36030880 128377927 510867378 915805081 20774142 368586084 835513279 103804811 418305429 163760909 771655486 250396022 704688680 234187539 148040813 97602943 242303426 637290602 390999208 579569344 426570239 224943346 130673345 974076507 843115613 799505103 659992573 956658245 927642113 568605944 617905264 211286423 587393584 400939655 64072399 947418675 317391899 57465954 567095308 879790423 235263431 198271524 446680594 617406016 329216956 376960988 782446066 105859159 325572094 983181222 658654364 3096085 807263831 357518687 367299783 389300627 849854501 582592834 816711498 651824093 277906544 281029559 829436458 857641450 753298450 453837601 287476413 682037256 306710841 572807181 969232569 311382839 301184231 759524101 808661501 666469861 475746405 732462993 667386283 120249740 725771549 381934818 743751084 37435810 905512418 301868924 706719001 821946289 34131968 469858639 655116852 277109538 111606451 25522364 410546801 327886494 607270696 330412163 770132173 916306095 638282158 840163357 702220784 42504640 322418137 619222372 897885853 85288539 527185535 546631920 200140256 875525890 157738804 981562093 501757443 823946337 878162939 788029285 583251477 548774410 771905906 453099812 546021776 980831243 343537055 568597663 573922365 837636660 536777376 281748758 635808080 536341267 53873330 993226994 909625617 115768023 818279663 923753472 787301352 914218959 335102610 776933811 156545668 202432704 865398068 243594258 105331767 227548378 572869283 95591232 490376903 899440966 236389061 275354264 98724504 588168864 159843289 595876889 195086724 725679962 741054157 929546465 500853712 486287376 355274232 577683865 533590619 142477704 116316515 362401044 851862309 758468750 135190936 474158048 458359828 123938503 587596845 607145052 285139799 360997448 108988245 78057935 333060539 194701620 844554680 247259737 973416742 369411984 99170685 609459627 409605592 715663645 106802736 259933970 615266630 851490106 801515492 528621085 177457484 386441759 546055531 600113806 180470143 454065093 966018169 462043838 350480250 432619033 167041344 726503748 926530522 346116352 773325850 75701352 193583960 220907130 878551135 768631941 846906647 624571527 613690570 404323639 608493241 628738959 319552308 558582036 506013854 637533109 785419304 262879347 874755708 883970291 929826458 151719061 570148518 823119723 811370944 513018946 52548396 525820104 290043413 518272043 280908626 16173524 181593055 590019360 957367579 330095762 14132879 34884800 104612590 707324213 230720686 535605236 212412290 78965138 977463587 886778244 173239837 796999113 606033574 733082419 245469724 662221006 104293681 106306583 691302953 59071289 798861990 40161813 821245694 410835862 546014785 196679526 672347685 366941236 247943152 464494503 710856597 681742599 177009044 367330733 307433564 987684689 935499791 682671391 633470628 336713589 454925125 723654293 777810138 804351232 200238808 352179752 492389094 590374268 480651574 968173711 528234178 715792679 753114714 250246926 735210369 519608194 299154899 927561217 293721078 153792943 709962537 584005027 934049682 84552122 8640670 477025787 993615829 619592155 126236360 526610379 890086991 776162298 832396803 29747164 566400463 689552954 647883549 347652973 284016969 944587296 851370416 291415934 769092452 366288326 139613623 421410963 461506023 425512400 386675647 87862771 830638968 300364879 522160329 670646861 840571546 592289281 242767529 914943385 656943206 367455642 58314823 479625904 364236841 240587781 177887326 620285072 271703560 321726020 998853419 506552499 393164733 240196196 863420893 440452769 664773257 280468621 24937823 222579431 267042412 270379530 333868845 514119350 861914896 759431758 303905232 427005566 413510101 572766152 898417016 57717250 164168146 547118841 506378650 897774467 565467277 97387743 522625698 974457703 981316653 380051586 960820951 552570833 514145599 362781167 312356167 25835343 211979133 509618748 935637537 953052784 184640552 857563341 318724655 40823993 975708226 499502110 568241023 125820834 261999513 632337258 529265699 918956524 48367594 62930166 324400894 402332737 706953913 723349205 871416768 450930875 158761575 881533517 830909366 602307371 163735263 738051179 303074010 310986496 810185586 15182064 706729940 434038523 453334609 496993063 414487943 245147144 282399879 149184085 650501526 236165229 753874616 249406468 868504890 131559596 230423101 709969860 841427993 80378690 806094472 211806076 340999504 869078233 89192249 140716791 274834343 547592124 924982634 824031177 893817110 30432788 217115775 589843862 961852737 166762100 392972765 901723506 807277318 875547968 367234774 899974712 930527872 786964459 623729290 379341232 149561020 184748319 403883625 584129268 722452077 712157214 678854037 710925669 906540866 792699778 238186522 573576219 568777041 964183835 845820888 79163192 670905010 679697838 563738983 282337679 908430461 533623693 762642365 401276880 761623795 119432934 612913879 233335627 388526778 184316764 560215980 687546785 700459332 273106155 273611364 256573824 472040012 9439075 536568708 268319483 402386605 823742046 41068779 482001616 285666181 881662098 400676698 713183713 818398164 241778600 312805624 272036077 127864528 702661458 313913688 781194321 719915047 622396251 906739112 76204603 579505859 867736153 6039846 973451481 255747937 858966257 23542024 678783424 451909635 795123462 355650086 405106403 432178001 611949479 504386370 430267431 456794507 650331856 794228272 636151698 510954277 484809408 986478950 465473928 945950974 131564012 742608412 845960297 57866584 229498397 292096228 66394693 984825889 957175512 861523638 726997082 99569977 78947733 138564098 844170117 83189520 436921007 52870462 700796104 543014425 627529666 236080832 326505809 438024552 330377272 83041765 309881325 229053351 599864915 532625451 921932121 445279862 807199648 370567215 96220870 192117779 529591863 65850846 67839724 521101217 461338984 713515109 562709042 727472743 973681757 137767968 37185893 226267782 213520901 440230071 6815410 278019210 32795022 77358463 24461434 113147780 961034728 992256093 755615873 126560568 964233595 937955647 69732511 285254673 661611769 462378774 36806389 839981873 625267673 853363814 757781877 477830310 743215571 709665705 827757815 135114971 332880554 601031282 740336961 419407224 715586417 720676253 118890448 507312289 893766204 510321004 661969255 119592918 158467677 311251589 179699803 968960205 962473457 469717556 566784060 654971328 474633062 725987881 320101537 661485172 94540511 925303686 819603078 359735588 30439586 940114134 746372331 493539232 314007880 356010205 528081953 583862669 710827929 110965387 581358970 386410825 515759697 457506167 318988436 25760198 876295469 669120269 24236978 307489082 153409790 485863578 133166202 14134548 841562825 956490203 618071594 912571281 41569781 383914476 858162998 681623113 632686618 540008094 637105258 336074254 471558421 859246556 762920702 332970990 670723514 806734417 493294826 610381196 564379061 941597605 405871709 10186926 465762273 780573558 820810602 563295477 88790610 189617581 776194888 582179526 398327577 408698572 910758411 873613727 394821296 850037520 975001757 105546883 49668808 466699769 678137501 857606943 248124869 117123914 398858102 492419411 668849943 15124150 996625722 372299591 235486472 101988677 801511051 832466495 812942669 740780453 236436332 409912104 808775143 501850542 755348022 41893709 276319341 953700989 989917734 147149384 446376808 215666168 748529196 300502352 850952416 958841727 427292215 147132782 493294844 138441064 638314770 669436348 10869046 569073239 765696239 92773895 332563920 966939257 282326691 115703988 904754541 943759881 94799165 594253012 425513619 893239208 203995291 962010684 442295355 601975780 547804290 938500923 782707965 962689403 355136870 162747724 509048002 795937569 271715960 408250422 372564608 989853339 233547227 79784002 365134615 924476488 644492266 722006584 849333927 16857833 922391882 21313836 653902843 583107855 578295585 226955868 632290712 413819494 777730972 234474434 402608993 737204633 274452251 965318458 661264076 876342456 400601595 186199485 261473042 675949504 379161300 144484234 70863826 441237808 331297964 967401042 904213514 219536411 299255335 234638480 699326972 557951539 739571174 970987682 535616688 127796377 725556233 931467176 928471515 654663327 756239784 781674954 638351253 286101797 199743836 113481981 686825 304421823 77451417 242140983 898741192 53372424 849422139 892971336 404144776 840690224 472885272 931647413 788007332 98319267 487968461 247086560 340581781 702667492 319815333 862508541 553819977 817844779 530129784 305025860 105619897 239737592 353278992 12862872 87592562 652810530 785080535 230556473 29808641 646388775 786658505 721019510 258109727 57436428 683129180 630698785 147214847 331421552 241254982 493797316 76311845 719308774 334829131 309399289 444612296 376229598 612648089 694881646 516193013 169177585 77358137 222406356 938560379 196809539 523524551 948121026 954738497 1568973 959056711 203474425 702080925 883462011 902597496 565934456 605378086 609791798 29872317 899124605 287802239 444136797 101443880 718886974 766690489 505628360 244990864 226695043 885224895 561219005 813818244 845613071 26374480 660897004 702980021 375578577 505487498 201669697 994953414 596964686 977871317 540126797 602891530 698678447 148813438 867778831 294623059 158488413 582294684 168851482 174438486 798994516 94857104 296604877 888314313 575544392 17685903 819191980 401113630 390733819 21281428 661772403 267527761 347678117 753972254 7015412 827097952 334701987 266168700 789677940 287390889 552517501 547947308 632249081 52429486 45086640 750560322 229348936 286161779 255778028 195480668 669449444 575321597 592095938 678021326 397433477 947178562 466008985 435422866 582936695 906752490 566169372 773935407 498895571 37638670 720646176 764779958 903574256 638172010 860747045 899540909 701255352 384225799 668707549 525904858 823339490 587301919 800169439 143927889 325747452 770861005 74960855 622790760 537726942 9278269 381678322 589640192 641273415 828306893 234920754 196653627 477480455 629248095 387909694 445801748 512943285 141331422 688588699 157729305 562980485 117868565 380273514 516575096 32852905 927664402 472146993 864825207 495905516 281039239 49476020 552847869 263052660 430326098 808137474 80016015 634126342 285924698 25410823 163931344 565796756 438467368 580351830 951954828 531879892 267758378 818011402 897953905 757670147 89196510 593326633 515080989 552802775 934844240 939616199 273943680 370415529 431850088 114027561 973766593 240553951 48789774 608460718 769614711 509056617 255493476 112737606 367135899 128792747 67150664 473020143 941985064 366066698 356812270 232692880 35766175 550889435 485844862 498439558 896742102 681771673 406894777 37427771 865731994 812536708 588968251 47688036 458107369 822612398 883629285 624681119 616404616 670167850 235073256 970395741 560228266 911472083 698314434 41406904 748889874 217478194 14151164 806060971 507456024 455549884 969220980 63422221 71992452 620167271 389644395 891462981 26505981 549509529 896566089 224139591 138719594 564165357 440578692 87439640 987654433 864869835 454912907 366077688 470502096 761139059 546917083 491671644 40586473 767626368 884781958 576224944 734988561 825835256 131642260 56377015 975463172 979035881 377821424 945463405 467846110 195633771 580583003 460403567 519555993 722978621 546386180 54510281 409081736 665571181 111231591 587891461 769823821 987925850 614781980 758054619 662041200 991717022 134051627 766096772 207388763 841260399 401092290 828153445 570339882 533679098 214605970 178861769 592065606 323777827 527182665 300738404 844186318 13411748 390757846 219817893 281687187 541324174 873266925 466714819 275773465 743406416 464877026 567346156 970137343 469886598 566701952 111324557 895644124 786719282 706870816 913305265 719800429 924740000 280139271 426587915 551609424 602191030 556224639 324175220 767010539 207550766 815669595 117828542 289630512 80128646 501531331 581126402 802034524 161142856 296128416 897423788 94606323 650453106 388431053 775974746 440443785 180574620 994626247 183264675 709089436 436544858 829420992 97910665 196377649 87667916 949404461 158840166 667733526 380920891 779268047 376648569 155696819 371892234 721297108 5455591 963304205 933749859 784443010 715301851 516216024 545343113 842845245 137574847 328608115 859073198 204232337 989814044 456399302 939639763 969433048 362537347 130911018 914689587 894753560 158347187 466724014 559476317 250595510 722688129 692176445 825939984 487058741 427148460 884755950 253467125 508443489 700665066 127553879 599187605 888919628 724206730 466157986 484200963 599182422 511901047 621116336 835429347 477548532 921890571 115175922 861642022 48461003 284397175 651885626 632832456 773412855 222924757 85853282 603938099 163853887 977844793 873252907 804734552 114166237 62902198 437259476 107823467 986051342 629230793 457264449 637536081 306128502 418159984 300138695 255290538 821892155 58895469 147771938 924406994 984530511 811291041 150909544 189015682 695313410 104942662 462304580 529110526 89599553 165609387 845570604 766546390 95502857 776419106 472506810 316236302 471357564 273112238 864373552 765792327 641971395 402616425 380312845 476266512 763711485 949022365 659512622 953310057 325875992 323349831 959791051 105876795 930312964 83144998 178682689 605371988 788019428 463405265 473357895 287581113 796105658 70042438 249299790 652032827 49726260 449286759 376054196 450569755 159166811 856411226 999855112 822805004 398454589 326698371 804028039 169780532 927928591 617021007 448925250 221431569 302481950 540944192 649920444 240376588 118956408 439874185 931399198 657089815 697369187 877330787 535936014 723971508 323178282 130579579 481198776 912980603 81283788 142666186 714148946 571860556 676298374 59680586 619252456 916578241 197542300 113958021 454815075 158987093 1131852 706929954 489474044 21257176 719020110 686097327 733541115 809832198 837792766 737968994 405101358 975492921 543653294 495775214 545446755 852047886 789312711 582018492 345110601 232289173 390556452 354509449 874997525 671116288 516943426 646878664 77488616 834859088 572369158 665038022 711803390 300025 628082772 715798592 57303505 3576202 548587994 253015239 237147049 377728155 513384596 723379696 342916254 442154249 189438403 61058493 958564021 194211200 787804523 465221583 944239966 77250334 897033194 638515964 767188214 155115826 781155684 60311695 758717510 274819610 829670350 31387990 146439909 53890117 346909750 824821170 355084750 737913544 17406184 951666599 873317904 195164801 715617509 193759252 39420260 44330091 913720239 117713687 609097464 500758802 720410874 145327788 231433220 71626091 832798453 116309935 689267411 951576508 710424885 992266416 187388 202218913 844292915 29901100 311512330 954855867 196267682 125011391 798568812 232503319 894650144 538398908 927912863 878509609 917377020 897956091 88147993 619118981 938469270 299003749 99730613 793305728 79029477 74171547 369225232 94303102 785569359 780577352 407956333 100912370 358819563 353040517 430693426 141470396 428435128 100904068 987912041 619683793 962763150 62711922 934816324 352721482 184633798 316999728 349208706 586730047 61973697 860562266 854411217 603903928 472815909 660264825 455568459 489217014 340614311 449201514 225991514 700268155 274670895 931338854 424398065 425867125 212901811 17001554 869134005 643891650 207651521 192188649 227651353 557082427 424716254 426015226 96806815 648981146 394720359 873696497 569848166 100282228 556910154 568305283 124397209 740599440 685752261 706897304 412655793 436671102 864504107 410851941 998564162 693603503 295993318 124062891 292697781 854604404 992144734 834304075 50751112 1490622 426649184 360670695 527456295 6872239 88575286 417873 40207470 62177995 943084549 674148383 186595011 227731031 122566823 527771077 760930265 323970115 150733287 308773939 36481674 142279052 315835638 58252037 619800999 831278530 623569667 712560336 272899674 971508909 207471492 255047468 173707735 974119048 792040314 734747902 594342732 182747684 336143155 399748180 584684731 342154879 375674673 506932827 766243732 794554495 677590973 709437465 501810192 729466131 678038670 584145865 715531813 866934210 418271861 654362162 226884317 911997417 569611927 340626974 723516070 850229758 412075770 105908096 198073573 136251855 278773885 343447102 723535716 929890613 409545424 55410628 594840499 541747718 117218610 417044752 459465869 756556268 221076130 883659591 277682699 411532528 723170789 161228579 416474349 117391045 225259176 802670233 995223834 985726745 182783066 244736802 150882759 845459306 151259477 829293761 504262369 950145548 835127330 443910092 870589624 319083025 134533512 744887022 653436939 524098756 878321295 991104233 203202433 716896639 544329707 903734967 286385317 731801644 538867812 262752097 960410539 44009327 588422115 85454284 506919636 662392671 243954160 128861788 176339246 486279357 348087349 3784514 962565542 794192069 912553617 600922520 81091942 573011746 814904423 474632713 897593032 415129544 934224265 714148728 225197227 529023816 875208168 135747764 760618113 735398372 972402524 240817075 127583553 908808957 566474953 829772349 427659080 438588741 417001609 806930932 254006237 544505412 995804058 3120627 529022433 392572071 994658334 741331811 15354394 928986116 479276574 596999525 554684962 859437205 856969056 680575778 139513065 788671137 338312636 188864675 758805723 676838037 885462513 492246989 576949176 321635357 825868708 461422484 394058178 162878020 749562799 395928480 592602513 997122888 601918746 444681213 205522501 866804740 412521303 632775512 284609089 805347871 14145292 663550299 996943714 557875270 897069577 548050586 50298201 325992283 503278359 752270960 645931047 929700387 934064787 225113724 160326073 421316310 90792229 134313704 925135403 384171070 67396648 943865907 352392655 438988966 461534557 749099223 445472325 446824444 738500912 959362706 991441049 143628539 382161330 257149502 613553938 636222458 972124765 687703664 704920379 449069707 991013530 444781629 798186874 470905651 881839983 38156299 400509229 240125843 436803669 898093410 671832908 539291221 532716500 984612213 797410545 647750099 276875328 156136310 997495875 946652994 800231444 643415268 410258695 385107868 995698053 177898904 332823956 235500570 982661503 258669973 423239501 177497117 824745940 432002895 10768624 949619840 890316256 92763156 569691935 250259053 311867608 154790088 582918684 259003811 291359487 918689254 133841624 474855859 469144472 493467123 695939814 3634783 128666472 745960553 331985201 612336352 518792753 66836035 423836004 591328732 44210232 668488349 240952201 171323764 864116001 684149167 427705101 55375578 947562936 369896852 124318137 272164828 206613580 169326057 679352551 989953531 960583738 20584349 502582923 291438463 527245516 537514292 177990120 844900013 686685002 113520223 288753810 942845273 243862989 684497678 799301801 529665381 905007593 90560323 50965069 577355070 109732107 460592541 985597224 587031822 472588838 754124482 87668009 928688406 143568829 212774884 52926651 464845468 489537523 8124943 157695212 734912275 258749815 299070635 270454775 939272634 1484988 437235908 798275830 752717196 874385078 645824625 295832589 571301758 36332959 904576573 674473686 996067583 475164304 362677282 249424390 686006562 176710207 808319790 111470166 623354585 862109326 291289769 847903227 204518789 988355107 888530664 162880018 312087314 332707243 41153019 90627544 410629754 493515003 896229066 628174277 690336335 153873770 28287592 129391245 689652582 260226235 610728935 928594862 744196498 744127892 611362739 523872736 997447508 361566300 227035116 429719381 215982387 672955480 756635622 87628658 941889689 903957647 848808889 804109448 379906384 888511872 693739570 907033912 130986220 654223487 250263873 322491051 219382887 94086186 764168007 348023325 300852952 860249563 306324501 588003291 442347675 592807131 64717850 940335606 26602167 989342711 825934568 975499223 846581811 623793680 650875659 933340150 760349954 621286223 829855514 597467579 341388777 808139484 968974062 745516677 904758864 860860314 527062085 722284400 370450469 204169036 820895459 80917983 143597510 668513349 701792782 17220897 410446741 456721225 1540383 798808304 888051324 554628160 258996907 28624262 359309297 685106916 112862494 178707605 564110993 4488146 51897691 210016699 800667339 171136867 153185726 280576115 929338966 569573322 137162655 106069876 529556183 584383456 885822153 857700980 253859054 70190114 394582248 325087076 864600696 901629658 189569828 823916727 221612391 811713503 321596665 774685789 380754231 659896107 139884976 369060045 116254067 685587884 225218070 833526945 629672680 314862383 175732040 456760314 890173214 655470407 596385186 180269480 158310044 10142963 769939629 392989031 824849324 152349419 223669339 681064572 804753835 853096456 434854360 534902743 436085547 545522903 572045371 53091630 821494050 889003731 335740494 117263985 857266128 135475991 886545348 744472828 200174334 214525312 819367379 791432076 998959596 994949196 39762377 847673205 17140985 689942224 745086891 222441998 249262537 592382572 968648026 651739103 174883521 546889387 931874381 821595529 942733988 139505597 900088536 982926261 198435762 752732727 662787986 317785395 788391317 321075598 948116932 689018196 923373994 133858291 352238931 874900045 747472652 179324378 95703103 497168212 557397277 393419202 483800557 217967901 184026962 420351342 31677155 910440407 890297518 955106233 188991964 496374829 40077180 564572446 797816059 941572958 528081282 314091818 557807680 888603558 555944778 703828984 229318688 397376173 46706186 587010848 216843108 548608407 568877858 268677739 832394269 581646510 436134508 400936256 876579692 291602990 29552616 889274295 945049245 674794368 190994303 15809657 820786538 666188007 711663342 648827405 568871460 877838509 393533568 459691457 517592715 811845000 520792828 259897001 251543373 493465931 29646853 220326565 898920534 85181148 720629588 603855088 481675721 430417853 700477971 240789531 333609818 703795655 410436812 557955904 57405460 203228714 769662403 592696168 286831058 771864333 855817415 266067188 926888770 150236226 812128969 92335467 694733534 152429944 26194147 684652225 698918195 789251289 476799758 323878910 37571594 399072060 492358920 481198995 323491819 908821847 790007887 363413263 664317400 975498090 620903222 155397184 49568592 809151875 418756940 327380589 966640007 281057184 229072602 545573728 474403405 455295009 958906088 814037088 5307387 666711844 591734574 304984772 750345132 519122814 755900256 850184894 39109847 182002358 588159611 592434474 123597943 363280558 471871719 906130006 540099450 664979078 819593045 810147866 237430069 358772940 217910670 346385924 663276678 383952618 93694582 680830153 50873211 902538645 55155089 847164703 572688391 61004298 954054947 722288453 754489187 449804736 19812065 44402119 900898451 172754033 261779426 850375327 999287608 644042095 102248089 875929203 647808025 595011037 598975525 733118671 65681289 284498057 268546449 638807098 460587148 612961608 804248826 343024621 281422003 874135838 875581230 588548988 500220759 519246159 773019273 421628231 847844006 880014060 873508500 831312723 646606288 501265912 100083076 820336848 573757918 808871926 380837488 978824477 193787804 269687319 977943741 307389835 860947111 322496648 474973347 46422616 701957172 107443764 649125538 635383845 953786730 641715920 938790287 328354343 548770464 969306923 884933730 564179193 786483641 86912671 981130757 307894582 334354648 878700422 981417333 812117373 977903718 109491384 767723976 168085359 241544254 35449762 934693566 530238261 166371587 91925240 195567685 993157411 518965304 662776813 205899041 601386108 983131487 390363155 630061603 767558584 964894802 309174901 686247829 935089559 269184992 998754650 458280218 691529596 615463025 681366873 333760125 909913585 739005663 642919264 151496604 876434485 612143626 722509103 831901316 923443032 628582110 226104831 996759309 734859539 557705252 460821685 456221757 40674450 59575848 634688770 27994270 3036569 4847527 574468678 266895377 642481522 560897414 137070879 874059066 525524216 713575972 926665396 191240634 794190804 511313304 894292005 774671451 768196723 802735805 144917058 112093037 585082 401430995 477539289 737557691 375949747 32656229 673048814 164461089 987911515 142649985 386892897 499038601 801646329 162520288 795354232 995965605 782435021 919026035 95193622 713391362 270565023 954158802 869937128 308679713 648912840 982028790 729105147 215939987 775403316 107647856 40177113 215323275 995754486 460052736 540679099 958896081 187438930 889586562 736191847 360130424 25388293 91749167 69751983 803356759 122151349 378862228 206107476 879287481 816105418 248887682 100414017 333030564 790590916 664894293 702871146 615523936 992276650 620456884 619042998 614657172 866041501 40472419 446338529 141085431 963807908 756703720 911438719 136487275 677640121 145790153 571096878 277897577 174565766 564772232 194187843 859104 36903702 785931775 105896872 622929875 16956882 856031788 832989336 351357046 791577747 778114168 648473732 256949740 971192997 244066815 684627097 958763289 125225883 461161002 765268102 661782693 418338592 727493926 346465365 386600696 647462750 498614714 327088052 890974626 200541867 832773519 271859378 232948686 403653612 53905676 173559461 300371468 482604216 756023596 106749268 55389090 761559242 853393268 472320902 385427731 881653121 118612062 260888536 814884597 573080193 105185932 900955231 575933887 433846608 3584862 871618739 692080202 669171718 215244938 470149204 196976681 810431603 110485098 841714203 100333325 984352287 556936602 422058762 390892386 933556745 650745053 145674141 121630045 75886393 185454724 606775879 231563950 899648415 15186125 911245106 602137750 620759463 516897678 913319418 516706270 976895468 634170806 566747254 734051164 239474283 732945513 501303714 159416490 157592472 12542245 302651963 364936344 257268335 310500950 501149612 517079754 169946136 651638741 364337411 150361069 797382952 824981990 268846046 462901296 224423162 146246647 705597009 638556105 217065969 809935604 642335413 28391487 447752732 962274683 85666125 508291970 506870032 555516576 703854722 908777978 662907366 71989193 391781749 496336764 263635869 26339371 266133446 81557120 893534057 533991882 801616555 960220539 340869149 652812884 614197169 280187251 547890874 33230068 928538670 850572492 59489215 49252840 662069768 838234602 632978235 977397366 612442593 416160048 732195779 115821171 895819881 156599804 925383772 749724391 711239246 197859900 94614323 885784132 334969307 925165343 85776392 891694346 324725348 681186217 996568366 326954390 307340745 22001279 4439033 354244036 395747542 489025369 87954964 480858173 373663637 658630021 830859987 866316175 265161306 258202382 438503406 9867779 822206317 433502337 795059023 186448853 301018587 194555163 76208009 345897940 44144296 747050119 594313078 681066840 442635692 257481594 173547533 500534368 380399361 37781942 997900288 531450725 771591218 154823302 430136132 478894755 258256461 370256851 873275207 73304483 434972380 65022848 427167384 653768977 401463700 20806385 636318670 467359936 347274418 795001705 970980912 696155050 662191747 137159429 405172061 480331041 653848849 855987681 472294015 5012707 243128047 23593755 675834171 450013533 896811103 112763236 80831452 754495667 163189451 303082756 157756104 780740857 290590350 921582263 742139330 589579382 553470491 723969331 808725720 181407142 956673332 221395935 240014638 564643342 281415547 86658975 901867782 303918742 728085997 696333709 276018073 553712611 109702213 588452116 586400174 719629372 950781317 477703200 924494547 942639420 86753133 561995391 767128168 376293269 983219599 144524406 910989159 79368687 444255874 303671489 888655518 527603771 345807918 130557165 170791746 547004540 116649178 624835636 246438063 642380592 726763783 961533330 958770615 994925463 791060130 455313986 453394829 75521054 869411235 18445889 826016365 289908643 380939185 591774652 420765549 283265962 928351679 424641180 904038648 675998578 465078176 732369605 972117635 726006324 702727206 490890377 288704552 656838827 631377252 703705003 481204267 68216774 954766184 979491689 897002687 926144888 276809623 225259765 218696333 874325450 365973382 877987908 992819801 333001847 501301290 905650970 735911430 353876064 255577481 105059951 481423440 839380803 249493473 141713141 192082808 517007145 176888921 478292583 494527984 87398657 294463598 732924353 751663110 171296609 996300098 433697452 852861160 558515898 318217312 516683773 718003117 394710407 537161612 784427088 380879089 501277148 33119030 566878414 831565230 164623484 226782234 781535037 860594976 823170469 288786017 535844586 172823 67523943 287903182 427056675 963982618 967107465 165433870 778175956 289176022 159796782 199057586 847112845 127981735 672378016 351172957 212097044 110762214 125147342 366287473 272327706 106666145 783249520 709630751 878932693 820491555 756165325 202330488 780905946 524696864 497064778 378676044 237277947 802145515 308133089 644263549 777128985 143133254 280149886 962155692 105782900 721611348 729918315 153790717 888037096 321111296 658861987 446662719 944853692 230914678 737726317 371664620 409406003 826059481 201430583 635297145 268954814 759246554 376584810 453394594 460399286 923770495 109708943 995018638 62563114 384089383 846623022 707687237 248773640 855906420 343635976 174529681 126439275 74106891 870319757 59189370 806421536 964950448 49870125 377036259 209567053 740737962 891382907 31678914 661850354 582662775 246005671 470286846 971779420 932090089 398386984 313578625 620202197 816572006 736623619 883548349 967726943 499951503 14411745 323278923 482842235 613190479 995898656 583058870 515831419 244677490 319470728 986060732 588539660 298339345 406030264 468010508 590625363 715924555 334471782 681692000 723764695 450690363 914431986 738656160 46213137 419342315 559754885 897729544 718580890 341748999 855293280 836853277 902165377 484326441 545580861 280035996 359250227 512554042 904185662 836106570 917948891 425528161 316543638 677281290 254663483 303192257 991462396 519878611 474001466 106448657 897620915 755828259 525977499 913541585 280793752 572686871 151290145 979278517 124402290 238748661 837493491 35291513 213340655 985570510 93170225 948856077 320065572 584172224 244989570 745978275 762101301 982280877 122811465 223599970 127175057 749067881 484952043 143498149 593417225 631245791 69558826 140679616 29495880 9787571 718322500 844910148 298493244 561149881 115877179 508785628 344598600 33928738 162242350 974669234 768865370 956748861 728113781 11290365 396464623 226968880 153754352 434976999 179780064 141766690 521379332 83856099 364505746 933511930 786440126 409752652 167253615 363755548 959238780 48686527 82431376 186982721 965616998 923361388 939746836 855470615 894588061 411625070 967688326 337091088 882147864 482103331 591133605 273413577 10283273 529255807 579418035 734608273 9456811 405849468 748140433 731430568 404224657 763570395 203797260 536451798 825836419 869312794 785974920 136784087 301734988 529022109 944033630 443699568 173275371 53458283 614639780 594352645 593687771 585000797 167334906 300193215 851244257 904938590 295305907 207052519 97233399 245591017 462458468 417994513 241325327 511100366 758181284 405941437 401101953 835515748 301484298 171342494 158342972 888154638 708452843 660383533 710370113 217173287 684447987 990761350 784254260 284519026 309248573 574263928 297714436 95247400 197077244 245662194 571417289 261803353 631024322 512252900 219097754 632891460 206055104 489167225 332030574 333561832 584563546 963642041 665245042 353780154 157808519 591799607 850676511 693805417 504989674 890255037 587299772 677863296 217779115 65518467 120978481 48565304 521816586 770277902 585422874 685886064 146872975 286511509 808031275 261668841 682724082 77046931 154913256 631435474 677535295 291676714 684827308 102323646 481191265 270060855 122026326 289344337 342923631 182634865 75071648 924677959 664564651 804737896 203977135 886123341 25784595 650957429 160797133 304098183 468342890 227670820 104291741 246410748 941906614 469876268 38180646 682429123 312263786 660650619 247272732 614937819 199965389 128033761 770619906 272972823 818883111 29666283 986835632 259276209 956600682 915439468 466804341 42101415 625811249 517787846 205379547 75705480 544219729 505050353 14824563 533702602 648375123 207638702 722141434 620564591 873881993 983805371 154030773 429546483 268081611 864542397 760705230 618702597 878994008 710321231 413809050 82918352 145027947 957072938 441545715 21297361 781061879 975975069 728839898 280958305 583356514 353337478 113047916 438533494 605817178 35627079 510009876 259112897 109611489 665152426 85857250 839575804 101905059 150014157 606400467 533246266 779984124 110048277 495430736 120032236 691624027 270941799 107557452 328856027 260814290 344276381 811847679 364812635 887020871 324807134 902913388 494982953 73464424 430857370 400531316 318449405 572284268 850081353 301051224 383428133 657572778 34885150 418552222 22625525 67940620 979389374 504498233 377569340 925085973 836581965 664174786 154272239 907645342 216479055 20273271 734936749 516524960 884693517 278748757 577534168 769867091 938428266 291654624 543814863 329132104 36068298 916136667 481681800 528911089 123282965 793902002 701708869 279106382 164491804 291078824 708098175 55131868 912352791 777394476 377086047 830882526 341739245 960044890 65230387 697021737 725762633 931366321 267363078 879620038 983663603 460142548 46028380 337498160 912722140 167112499 537000157 281202304 153651089 478868688 824374848 801812078 395535804 230915926 889395576 873205744 316343544 73337136 403039402 657116978 594082337 333508136 521756006 751278585 502313260 666852871 68914214 163233226 313508892 613683253 76565750 114653657 86077430 426919227 715747641 220417851 575323299 918452305 388180857 824486623 205550025 658251224 24340172 122173005 927749745 641232339 62709342 132946210 191966260 492597604 841194145 314109389 147191241 940918059 186374279 495049524 314886628 192365133 397769690 716326481 18423300 750674078 271466510 370166251 138210274 580346812 889612746 600903843 1463439 169493290 816548428 876729852 923932164 701517881 997315034 447255082 251826852 286857959 524865773 243146342 18789779 396818202 149621330 781307902 562598883 215911514 827692346 996532487 685897935 695398813 946928359 516491005 641426021 270987290 297807579 63424747 143951609 558562624 968582841 315325633 656803833 751388286 653624191 187870945 268632775 928541755 949385909 372800516 674560650 103144349 302561862 851416717 587095209 136305267 738019399 21884390 141219881 264414686 433185212 177704450 581173124 483969887 159747513 214217105 856052776 655639223 408997733 886688410 42789795 200236971 995518179 213968179 164987998 202398638 486038255 700364077 807893021 227478587 463336633 215057068 177701683 210131964 403554925 784446724 165450544 221718947 888308813 918209773 629366540 331198952 144161897 368811031 496994491 98579506 122823916 945757169 460867918 865347468 410631620 112776427 935664364 832883455 773290076 867347861 383446083 400989930 944730518 583308878 759547028 124742664 178350779 450427438 574406042 212693681 216964373 873138420 188293639 370284516 970669852 388948340 983365899 874385597 270808239 478021375 254787870 490360412 223396327 912944369 281113775 691739678 766095380 248044175 497925652 134220969 132020740 658515575 760956415 282968870 641687468 849651205 915179909 889214934 805028977 402120341 884994880 66192637 649984576 539765391 762874083 600970292 750266138 206408528 247656961 129333332 663253723 322789062 460732378 979196302 40706435 315471425 479388484 496057594 947243173 615072601 659014679 738264114 825014819 773468804 330952913 671141641 275680044 143864102 229268143 473071107 394107449 623148294 684832460 727337373 200189132 859788234 704890614 892012614 663276915 453627899 470398021 373081891 126448106 870632966 781299805 189664001 207535346 245131178 469142805 46970214 161581592 831486229 62767754 480466180 832816727 362694313 342233031 491991907 150540174 279266767 31380093 671673665 446689887 243158252 808073523 365629285 261668576 406340672 562479004 443651243 874641099 468186171 568893585 654211960 141157140 364240001 738095574 125918702 642338944 250669898 568627854 131302558 75180294 776886272 589652417 122000179 334485115 354341874 908957173 666385988 408784167 779284466 678106247 501056611 138305527 619753839 298693902 733027058 724075372 141110895 110371016 358875876 757110174 568513518 37783977 89009814 945918002 307340004 309584326 68845673 585161842 386284745 865533656 999237595 345397989 717774661 861357257 289000859 124453844 654547280 254512577 857633622 680839964 30659246 860169550 877275044 605019986 14493329 61616039 249565000 344671153 836519464 904234078 516104352 549661385 325062471 855366062 192427307 387134736 459573036 170202041 619080089 896648204 473985952 364601756 342250388 269298919 796222162 880764263 750839970 951590900 281196468 830032469 751850416 95254857 732374772 83683897 926974183 779810838 386390129 447780740 515614226 376432022 312159600 286181569 500111694 594255985 422653999 317994004 201779796 884261753 979080542 524244861 131981716 158863104 216376927 352139698 548689738 511519340 2091889 331187023 498838177 422585544 413686057 969718338 759797923 543332750 592016780 392102514 29872790 689732237 848155419 492298335 398428862 375859671 247674349 298461156 247659248 536392443 909889297 489328335 282773359 810132397 172348086 479028868 300170038 803584551 488289100 990408175 848909316 929408171 970750348 129891953 926652417 272525888 976180441 325638211 187831660 529988221 363526880 707032749 295118413 936659217 242362287 291486565 927078054 195207477 278581306 432872850 281584745 948217105 700599110 801293488 474908379 990428144 9844399 807948059 897008249 924386010 672833802 692233051 16880626 912392162 53357070 927127660 40967967 807907100 338850783 352088008 435246813 327372102 289731567 747954580 584620370 99500265 771965023 71346061 353708112 319358176 521125232 696682171 930104701 301163522 364432636 448525211 23579986 553929738 349648219 981152886 166402213 46159064 774108350 686627374 162625506 971427929 969158955 905640082 685054542 918230138 636700735 793506079 71474343 536386011 405295526 381533463 217286566 458276658 384247547 9368234 917067568 105753441 197542440 689055972 879416969 194585901 205279245 717434023 23511217 182823658 631815484 432992155 395261239 995611059 408394592 557497644 118031285 79089390 884667645 326275670 862092772 306747683 739405659 318130620 192108698 392722337 935750422 921567043 269079021 421308380 185136954 447296551 342530439 487772355 442725198 510050404 501016451 662288908 143105174 719604524 83553355 250442314 935389942 557801852 782179592 948606175 788805858 39495552 607436657 137741551 891438339 782084715 156686985 71217533 754461225 892505548 496155532 689354664 392599183 454971707 383164523 495073074 975984322 727254926 106356488 865996494 396829983 944522259 588333684 541445234 518496267 288185480 549572477 323260327 102752049 791517269 89563573 60345224 169874258 202483841 268717781 912876673 689635135 426284830 2483259 563681416 791105770 184114834 657342290 438743530 223048939 852056169 327225691 963531911 78140041 170766714 441369549 289800942 901010762 305298518 907590754 989871752 117481021 723368360 219907764 221777807 474269136 337175445 236084701 98277224 792828604 34768773 771615834 968780027 504788474 280565883 788003729 657202090 719969468 846730391 681978912 173705855 931176015 28361450 157003735 771810589 130586226 141078288 527680387 663441052 215745591 392667280 824279120 431129158 229368447 269921661 971192888 51388870 990529595 720046272 851502049 454353632 78526393 833579298 498025271 908772532 892561810 526153933 508382424 101320291 975065380 563366316 563151762 535074404 619823498 748884514 16059150 773685694 728164095 990335347 933961151 543173454 946406954 619461245 193025748 624206807 678211442 37642303 600642463 792015823 538573374 712480122 39648943 551008995 884324427 653406808 936790032 587796031 503281909 846152881 244787969 796112570 374145373 401082802 615263584 745599577 545116068 978996391 666962436 740769629 205480602 672518940 372738728 854678660 193529120 768041437 154663394 470753260 543210068 404312492 596829298 104431286 413944153 890799952 638526799 170221985 663883949 822040424 913966038 158627304 751802750 235982578 343818857 72258460 104291852 527179572 609167916 895917888 825966694 401550970 921292715 487992066 607641247 517062447 462165681 25841236 735537225 602795570 52658006 919423945 16825942 48226485 137680558 568611133 905275053 501181925 164065965 68265137 98393105 263966385 393766832 811320448 151428517 449184435 773877589 854284596 954784851 876714991 313146550 683709873 423586291 785785438 754199775 647531846 438526078 952773113 209392000 557876969 169840061 316107045 205618868 986001460 643898383 733245039 23769398 77079444 764666452 704539439 117586165 560594335 9641910 217250141 209213876 793901904 790185896 24026209 518496143 599792860 390615663 850458292 33776624 145368220 652259747 292283759 639176973 477450344 272339843 893940571 621752517 932644614 170826285 554325078 288811788 234782429 908852447 91017186 464820829 922807626 740500485 782604629 520371131 421942793 748369536 428113228 688107293 85222686 561854594 719402435 642882882 922561895 326826257 722671297 967273023 286414799 943400284 524997555 687303916 593854541 520747202 630303990 386530785 604669443 257640953 305624495 296010003 402155230 896976070 930526130 234890101 751100911 422828359 21724077 360311424 269777586 44485387 651795232 289200008 759304738 466077215 631833928 177004074 840316706 348963158 820522821 173249197 332389230 57286668 956729153 193926413 641193315 870647762 62646878 852240485 271339000 499703975 286453183 608731662 49944120 532393297 336840928 319916155 67507929 502633878 507685273 227202599 528303856 9844663 702981554 984610414 943256984 476422627 622732709 685120270 278467168 215951521 656423151 384414979 26355267 398619850 607938719 920437427 824862814 41428649 973672777 770330730 253330885 202106528 107679277 128378321 538677526 644993333 60609868 462389086 499757529 847330084 619994336 939310445 299556584 104910306 505131199 362905435 69340101 204479293 264403866 435004569 280026521 970246234 749867382 812674632 86538523 786236914 336109283 618092806 424420195 973151378 152268849 313893006 108291196 87348012 859426229 934285058 529192651 770448554 304050951 741297853 494116215 102300979 918192880 686152312 918024560 234034690 213426884 511198952 288975840 57893956 354068237 618835463 718321754 220168212 739064056 567559427 932999488 450430677 887517923 526719645 463673100 711748247 90460191 66012446 700823542 555934703 185149218 32327664 599608070 538021406 983477691 451975033 131673132 728516442 259240154 956420597 852152515 894419294 970528770 876540415 44444821 236114736 428830963 156205657 825119189 897174379 920340734 976917326 637831397 788310060 781033074 345844918 178623346 666669039 803460703 344213550 770783461 797409309 833467787 472589677 992452451 752178162 507810093 215748401 917213098 984305827 801445567 662506260 992722709 466884429 411496643 414218944 844021531 471883716 567211376 601442415 55050425 964137344 205697875 549463891 698176310 592390334 466189962 281291819 771121359 624765229 491942803 613641139 978110014 217138491 688717397 600694483 648883615 113089299 714816120 129690207 606451183 187030516 520323362 505108269 444441690 147849308 457179317 78909942 196036077 286225844 324779964 775483546 689625294 142508323 804391740 528715167 222422163 499723357 702133995 950386750 931933338 234444657 697140230 364163164 999117216 13833753 476058472 604544952 967736261 482587644 572764647 106130691 22714500 691404455 59387991 467275964 419300680 482502959 652672984 502832488 823265980 796560679 208006396 665181614 866702355 155774312 163865163 607601794 958152123 438051672 305680354 752074838 130359856 291859934 664828752 355595882 222020326 473055165 32685747 159791100 137108464 758226139 908171263 840496047 554098964 777235664 799856500 721713715 105694355 36518245 592576570 699597990 489630437 645550449 554412489 423419607 589346642 170214974 861099096 6838332 133295474 821177404 793502671 880863620 4480372 980978773 236702989 642636523 32945741 722754090 764651230 755562029 491981982 758844051 91014287 874284232 543630348 329397545 905719286 299534652 422814854 601214755 471253457 120877974 882440202 508355857 474181869 510207395 273712658 955488860 929223694 458709714 997928798 809489644 769292776 572719314 711572614 419498011 4048806 534523664 278618268 591640620 277240466 705472952 999432416 332660335 352404884 374945264 439378224 753674933 353652976 362068899 740303325 862694551 613764913 420083076 699513865 614520306 496456585 803172916 193027299 595858606 407602448 914555292 735045617 829865372 609794632 868588630 275251572 277498208 773763567 653661309 960334623 285427731 643969651 531112382 893077432 597898223 95916518 378735615 921773535 897765854 816139645 680237822 428104829 495299362 842171157 204175232 8824725 651256681 769021992 911739817 640916678 77525427 99838396 277045777 637883516 783478918 562428409 255050130 430339634 183936850 781620189 82776809 318164833 774619001 911053156 70550020 616763603 760721664 509201243 316665565 640145664 682828077 569959359 212099376 268986782 185775247 810819916 218398306 209037909 98402129 172965523 130775075 745078737 883907386 452699530 149400894 68999745 123965800 397658614 731489838 748012536 976682810 482755575 167563416 399736092 698747480 395779947 89615773 237594839 719797628 952193920 438193074 143059872 822312121 880912273 597634233 795141818 876561600 547164387 644787883 37685085 718012806 683711701 149941343 136634904 374043853 79907984 958726690 187723068 171212843 239370889 410888694 940007927 448963536 63917348 142742169 867435621 715842217 900103719 406772130 906897306 148292895 523730670 503280693 696886890 473543776 394037715 550320134 281666963 87371993 193522994 671874671 997357314 203890371 129477924 310869798 407289665 273513527 196663875 614746284 330296476 753247056 717120826 571356001 690732808 315291052 357041186 806058169 735375369 376323867 266721407 697029407 912171372 222138752 135825649 201697568 653450229 305764888 496939543 558982476 843587443 190101777 818105951 764848536 623875995 69302995 766113622 713085174 951007839 244056536 580811088 57316482 230239300 991142165 461317018 526209734 49050260 685911002 727080327 580832473 412219030 73263044 671582669 778859313 68281774 658115546 854507722 430986898 400746022 915446812 898558082 31380621 385493875 348318863 647071822 152700262 337853244 265002423 671383927 260379071 301566615 944153355 247690515 682395347 266768440 243248733 222670639 614370831 931202475 287531540 820535723 125758883 777484898 369862018 321337127 207885968 311926860 563259139 366218279 857853096 710779214 55639489 639875518 675162486 199727179 703770662 722282463 383295078 613837281 19203052 40303635 387738921 963138496 382065694 594755956 200571473 288199363 789376617 672956469 693785555 730624124 622693128 148699017 693054043 263375310 575831182 969641885 787423754 773759686 445972403 36844464 946478929 413919951 495678487 898505788 493852933 895564533 811742160 90985941 152294769 291767094 105570016 34675869 7280881 620776672 902735750 993014776 153960914 883641919 678335734 1196727 736551737 12428775 24680612 907345848 255263710 528538590 291720709 167548075 37088443 526060364 639872594 877895179 361232777 773743992 57833800 846708445 309092243 145761969 915997853 477205783 522889207 231338386 219298895 289474212 945108249 71870748 253771944 538612187 784305910 766162973 109942437 577274035 209142035 433750835 967284652 825247064 562392908 278244769 940354278 264183367 14510804 491091218 90714693 578323618 865852543 231675074 800231354 280132124 22954709 554088270 139215106 377665539 666661465 7401576 60185989 928024428 634075718 360620718 359300039 646659371 396500527 48378537 854180948 758629522 384701206 940995383 218317802 665121616 717212659 64170988 500480447 801461136 667459039 421756215 786429017 719570899 64554245 913002141 832189512 495016741 53491774 753400620 238422182 957685594 805705772 887836478 759799546 570932998 856594412 613914376 189038982 838842750 229633954 938433541 473461940 43816992 169123645 798725565 564277259 775582048 706502965 724156783 888000415 495679739 94959730 176209468 539449947 781487962 138237782 708000561 411888142 754619096 303387348 810398914 113999617 773622803 749235239 284742293 166531635 932144431 132354995 410537609 482783516 659238087 734135239 787082043 551324740 407600253 609315052 708521732 462368952 190431910 356269291 680831498 123496704 47619291 332763998 282204467 825844606 482297364 561608748 601834475 66563397 860770064 297009110 722545358 288751948 222350217 706124412 160797078 531307477 257992289 417945971 524189536 173738652 246159042 87997268 527240850 617468466 827576552 864948489 786634001 512643680 332617647 351910508 143590889 227055426 121006111 876248797 539989401 476105979 124947282 873789861 342474952 368345201 766436498 661637426 387386566 898513372 481525047 454973382 475566243 295296006 393557991 923184658 551184486 988890285 866358881 135084295 813586461 542509666 439065205 153042954 383558034 908307184 436999164 972681164 1025888 484816763 810707809 232561060 494231688 196030159 122038760 906833370 498091938 872334331 336374178 730413125 688761893 407928147 72892844 817278413 637277656 573855215 625302925 225584615 188657894 477489925 573891419 730191175 471086955 684645589 961968027 902265909 363068664 379732943 683701599 99282068 608805035 472195195 771966040 576964452 584720218 509034370 639497642 165058862 462281568 887215483 123595233 357878406 617443400 378736623 884062314 867440389 559782849 264967656 506152032 241153830 434430841 423969940 812476165 79711481 374396524 436730328 662197688 430205483 378076816 984180287 133670615 581696991 115880963 243681956 47879230 224573075 60846600 425221569 108767721 217780427 578373906 481896309 169089543 809369963 953124018 800766094 973576231 444554223 699621959 287014024 827028044 512358718 498005422 452220300 524196247 461074543 358340433 952758855 207460655 168557560 122286018 352936699 575262149 878523447 91384918 222870614 749782920 923141133 316074579 707198237 219508999 760971197 888489225 395673768 935762413 680669506 770706635 378021427 325064444 879336414 920312122 256008725 176808345 617966773 529465516 54935512 495564989 354391470 223186277 48472150 367985972 846883362 820144882 187256145 842873779 179019176 562355151 457990443 772008181 109786211 698407504 80117728 480369933 475379227 483012828 876536153 555023715 969273873 795341558 682058265 217962541 396991277 175132937 172341336 672372477 552282297 68860844 266596495 47884262 828642891 55729681 148995536 785591844 924530138 528337306 132095439 479099879 809790691 994160364 541088230 508954511 283402465 729486776 566366060 152215757 243220214 342558944 370578884 515315476 390193240 400153364 618037622 715372496 23827642 884344002 626469557 79684573 145353818 849802900 321030711 483255448 831247172 516965689 908375016 106527462 173819891 569896973 603877115 621401173 834667286 255110574 531089691 79092239 77716626 663026444 84866371 347585755 475676126 195837003 705434077 362252421 737727274 847510389 92939126 160595135 255162622 2255435 661606245 302139983 694521438 709491990 31583134 223943072 611941276 667246915 30353757 305101173 6575273 93392633 867644001 740945262 185631513 35382879 331244808 98035636 112353474 451679288 991868573 296482503 424005656 312587926 739975259 293136922 438492904 320591502 710546432 742194483 985921199 313966391 760026977 364983226 967455353 434334782 104249948 138977165 561317220 299857765 85516916 252294156 410930815 726097639 871949764 312308382 495912150 931349397 864815589 368291827 146004857 731523773 739502755 747070066 994453646 26402616 724939108 607517754 935882501 312195480 736966667 720685207 762706294 574014902 619732104 383730305 160801199 910743127 899779919 768145517 442686081 335331182 769001092 225048584 1107753 594707823 585643770 169405659 716418082 82203262 739778785 462746220 900992404 254893975 882511401 154673979 518804977 427380913 141097305 945342449 48630311 299450924 423229198 63774058 763396969 357493032 431789803 224870061 514805191 258779892 399236542 827108305 767545189 745273110 601842288 427786689 828460102 989920223 336466643 186193080 18183023 131785413 914816415 44105228 379944196 737583030 13567212 840021436 394650888 442492493 494723578 990291002 596209027 38557878 738852330 592654727 548921 3690853 979774095 931181815 635175834 955263673 906085535 282803236 741486689 871200370 309045459 710012890 680461230 842070852 999461548 946182975 219349954 819558117 940295400 932743223 612797614 585036679 674315113 927383506 305490264 774703838 105751527 644535686 166958306 336783030 842042288 152299326 535743241 506200624 901702916 341810622 806077238 776317562 252418744 39972401 469684860 653127383 996493451 255841563 138430404 46812016 407815127 547789906 647009349 727036969 281435783 662255141 896545526 705557970 934881516 58812717 2673400 568776300 924384775 990026676 498017543 734096937 600464187 854402440 738538350 133906907 702056239 828829065 928131540 820669333 204164069 904001462 440490356 227925112 104210874 682023013 742981210 465433107 538461276 464089826 124742049 375826147 631709146 635417466 102887739 150590797 690909825 893907788 743461194 609289161 373671207 941721169 342495599 717770600 56276769 659486682 928254824 729359340 895628160 449079202 157645845 869578542 885396877 281592918 428804653 877068662 647863180 387304864 789131986 816411083 154830937 186923578 301299052 485776240 530874274 155359748 352866404 985594648 805096047 259925595 347686485 903170702 423524153 170068876 851489115 356504546 731501138 861048564 146947554 110838959 586395334 134235361 103100283 466896032 438129491 344105134 314481013 660008938 318671856 375247116 130454371 98923737 951036278 899449898 655969333 49652122 415641373 363541942 443829487 791745441 44490875 651435667 90159585 18063394 664830593 276336554 262135 597048247 277562050 245564857 989260976 738347463 75930076 411866090 759353275 604799649 823502941 495621417 901411094 881149713 534818584 944857978 869735141 695763217 513184096 757935297 460575248 255288866 42400145 643718295 647715600 896970519 10584377 647154931 514129365 862373985 103670734 579195550 289510241 734258068 369104877 435164380 534787732 646907695 602131928 289565204 839219263 148397906 889377026 249753243 61907836 227057679 695871436 227641589 108080929 525488951 893555691 876646760 16649338 153277964 321446962 525841451 755018406 585498375 822190796 767906096 836726676 634150489 486834528 412139830 907293236 558301310 330640166 914765241 43756763 41513428 775654257 576052435 197664606 755426406 676823502 181353945 828952007 242157365 158560420 327537159 100221589 491132115 71868443 299197860 257623620 930379011 404251372 714651499 373843720 730157653 783930944 860977236 120976249 719024480 173030888 194016018 960763000 952996093 507247880 820704515 715114063 440800055 72447418 845547342 461760264 596863957 773828119 482519669 297240908 474727944 385080899 487362729 402073249 533811661 191571612 37613180 993106830 711076258 673171976 963742848 626220772 299945491 497390914 689656277 450221416 244508316 597449211 842123034 96669027 760475933 251678464 294666779 662810224 409979808 704633178 649230156 805287269 784264108 329414152 787150380 809881691 515113853 506765734 326156843 907616068 693762532 924249891 657979399 647686462 400089642 724537957 433238930 706679334 666118372 572617095 776039490 360122959 28569542 150879531 275368695 680044520 140889094 492739970 330559870 985047340 177215200 781622364 533794271 462727926 853493935 793076011 656720440 205971099 30617294 102138130 922967401 312761987 648694126 547035629 248707237 657567547 900315633 634308640 814908023 898815235 318177239 528643390 821213895 306806188 709597489 304171423 710291870 479403031 704602148 769934106 580299677 576062859 254947468 973161798 503775022 526133069 519056799 869696104 391435456 275002368 188846879 655967822 264524271 512377949 747375040 367112706 817418146 368320293 165650550 111943244 457051225 905442289 856042975 603450813 743308444 823047210 84922791 377377512 709824807 460535911 606260936 18331067 228177710 93643624 855489754 322514400 431840762 740982865 972605871 751489918 924672073 110859232 810595091 794367704 598709235 778452413 801903463 169256304 261002340 15837438 207539326 512780827 755275116 155010856 193478499 451863763 986205068 294622309 965030442 825355513 474362270 385873929 970540548 446127060 228510366 635668350 714726611 768193932 403316827 431751836 744604479 937959428 519170051 623138613 696833485 670860132 202233719 316148326 334922716 757795744 501751328 14764658 418127331 671219009 963437715 822297902 976763159 823396312 274420841 245459126 506664517 130388795 209390715 640092969 770184236 925476178 860402276 16902479 851357115 38684462 146380546 596419304 286413997 460750099 270073468 639212924 557164941 490407961 592011309 629745299 722217288 828941349 279813619 149142510 68639685 179580370 926026178 919918096 916608926 229406501 648213115 41774702 343816196 764336350 151292391 348334832 413711745 538754405 778685297 793644981 811843377 330858667 64085898 99274326 945234322 418149252 932606632 49906139 608338232 172787118 601335146 555021415 571304459 143206334 238367592 376667820 564584562 907756185 250134625 568722146 878443839 693440774 322193906 591033800 460855282 589803437 768832316 76129108 187884280 16029866 801173972 870221741 299333366 229633911 786865273 995684955 181712862 245211302 369457377 570285592 415050472 96242675 346621657 445581839 121687696 968198523 883139461 452148764 522860494 695813355 46390587 622751580 128784166 102444167 104852630 89653283 270904855 519696928 339891167 934485211 293551832 54412072 182046125 880423774 603780620 494701018 782176009 189887659 461662584 3012737 736555320 131759048 567481674 942669423 788145145 666688630 887285715 84099427 248816354 660615258 219775307 841832121 161139895 782745370 655357940 770790631 577127510 394363631 153175899 529791903 225598125 564118575 607587980 191605829 434863396 731817763 93382563 402859182 17581656 869187074 509887984 45083665 969166118 854574299 713421409 63275832 93202018 724019685 119595607 141619994 231953420 505572598 331505603 948191274 287667939 6937739 749744935 203524571 511120314 354730171 845747507 694307960 310619062 62667026 729483591 13519144 701933890 970054040 894375673 53040733 767478776 953547199 179046664 357495120 665498948 165389619 556714948 758835634 623387350 531996853 41323324 890251091 298736001 269904722 945268418 299463121 410221492 310744858 449731968 265481253 267784373 933227366 380630378 470282786 438000323 389474940 58261918 106724254 152214559 942708619 591602417 125073480 748856537 508091355 915510748 949257171 994358248 888715887 390766477 92651181 745033564 477371047 140132389 88704352 200163644 107403989 190803264 902542298 538969406 571398541 556975343 106742253 293416472 343312844 678957243 467248424 453892511 808967633 307516976 42445506 491867814 787296433 879269614 12834201 578618159 764490322 395494283 26166619 822103724 551314025 680639031 279333016 442699396 607050237 355761825 569089229 384868570 475941118 643219071 698185941 848453047 406263509 320060879 945430218 605722575 528406054 66990568 644009209 179150504 653292261 46421925 127329416 34948011 868851532 216506034 472800608 568215010 371855809 636946654 835130484 326882761 92112328 51563247 454273881 878753152 178249250 799136975 510347854 657927191 611038614 96463722 49132946 39110554 681867135 274035217 148596284 613076598 667353653 910201190 705383092 916919332 668682875 12046049 572373220 670162350 44638503 307856019 495837974 89373107 385459834 29595958 126900112 835088525 398673392 279259565 821321328 483255880 318525068 638495758 689602642 729187368 650068299 141433109 955710115 96970941 566588606 490145411 283996921 632750291 831636613 709379432 887240899 395850847 709112862 872271145 482574997 758109786 622858452 479382250 648404912 644857074 6109514 242550379 300249398 659022736 337046302 841709541 51233623 656475937 373806522 696206690 806472644 801972836 915275934 52918254 98072969 870449312 19026941 595536763 516326596 854326970 35548270 178690731 490258866 404087012 848040882 310399742 6636662 303715665 829273921 536751113 72862363 236231586 657586318 712602357 179666851 246333981 507340646 71116685 370410672 738547939 746794155 920067087 537157997 358715250 398381722 467364725 835139186 638078831 436871616 910438174 325437317 498380667 851455922 908536162 318047065 151355808 51101231 893378493 489585484 387095435 77746943 633488167 998048524 716672459 519135236 502522622 107324454 70782187 305735752 707168351 592893569 263030075 511207741 54241128 804423043 706157899 667894931 711321637 188965337 970920317 750983930 22525328 609828025 856300712 860729758 991881340 802708006 51463846 317057281 862416134 111250479 238024315 621887294 685199826 651850976 536617952 934514453 399733331 442679861 843624569 250723545 74174518 528156034 600907768 283692297 520127436 625376497 987825719 685683835 181150065 385603904 18903200 334153474 71774884 132551406 425787633 545676621 344977153 568210628 390739100 689765903 504822932 805238113 21489516 585631944 796688288 839977508 643219091 542785076 787794329 885364266 488126787 572242166 487762733 565544210 714693087 54063713 422501449 959333357 369285555 900446531 778957000 987226507 780950522 815106987 12755217 781907442 281668068 111708252 573317166 255790451 961582990 65823604 308313447 987279675 641712826 506455545 739570642 535430280 849019403 453140504 27819254 707709220 233640499 447446626 524179987 586067565 154705168 449261820 676804584 894995314 719183592 718690307 907007284 335539073 147142982 978020715 795288172 433603058 849767217 708726247 904434287 26192407 651433324 238350186 241472310 777501717 166532520 359940994 429782913 384925643 256359257 189096334 905886237 769324084 412304754 2153462 816683 446302614 993052964 279899079 68333096 760241187 681179885 478435115 446030569 560934503 186249912 488101928 668040351 167062160 581847911 231140993 24075248 167983094 722593409 609274521 583400161 675119999 829336544 926123439 222412603 131942736 182062336 714896826 653030584 494161616 870378317 634391888 77103347 180641359 338898897 769540648 803721683 303188364 660029189 145720082 664022036 752966380 623014626 1764339 273197872 300256911 507496251 614852244 271986282 257990141 288981068 44195765 964708870 675285244 97646905 666924946 913955634 285917833 470357694 857214536 393313548 449731734 843074467 460013626 325305195 504339080 460135411 818557286 340535309 68387077 623354611 902970083 405212933 460450639 555401978 709224178 655915124 556220667 56491057 804074089 594405915 188723800 788611734 884354605 861741866 153839982 723958248 997017824 621569511 857418429 170818326 508270189 374718488 372436225 242209120 428863045 518310767 698768098 336540530 809429103 74525255 616653688 923584020 37094390 175649066 670699680 117341301 268151436 520018821 313648325 203910848 756251010 655710062 591548766 463202723 364367976 48048935 439918374 8975141 592306093 761797396 713470010 69308936 601908076 277076631 656763456 337703903 802427511 241507977 563695129 436987524 574447155 146480141 840424613 277580113 187079163 937725794 387877445 609817695 812950932 69217056 511979835 173098663 444621688 360129035 22945139 328813434 837004297 344847604 216035647 325872963 641756462 875395641 147891505 11110650 582701317 824813692 741444313 939955316 379989945 884880066 416552092 330962482 446596775 108741005 388316330 390286328 775470733 192350003 472737498 215726857 159381782 74245085 450159618 681581705 663820050 922720418 632894405 385301268 893522335 30172138 593053330 793390909 95927708 952150136 861154819 893228238 123690496 27276677 714611174 92417513 303358156 46417012 903727134 163631220 2096379 906504477 379970548 52839144 87005559 617679164 112709830 721362555 258114483 690644963 772180935 510471198 361329709 491869119 402542284 594974942 440327439 114498776 79203224 461878601 270858086 351235976 374820162 654420644 587195084 921467715 56985071 699033387 563439862 452462029 707240702 57291109 97685365 820611632 967724345 685556841 517022244 685149077 375835767 993282957 45439482 394680270 402844205 543231269 474639624 280168788 275990562 217369677 266405859 605174916 76380642 322081455 822686639 250571641 403939007 21473133 6939199 873674977 295223060 299049561 803380629 241003952 926948077 717269144 535112437 962675939 556120758 739199385 313425378 401324925 700606687 819046666 672728828 732043843 987682260 848990088 944723717 939708126 816830198 967963595 314907559 42965423 700758791 849513778 163366265 486256461 892017750 627382853 36975712 580387149 561539132 744273798 82541247 247694627 275344911 457128177 4769262 427553650 658371073 161838873 382311596 561655682 50820517 128297229 807386064 946665487 470947119 13760953 573265774 997466464 701028181 608839138 882911025 905030645 19602712 290012149 513010521 510048750 955270290 647782643 33062903 510146923 811210715 876942696 30458756 929430470 598187680 566150251 866864158 85234699 266227116 793678015 784044077 932014256 366500310 649099044 564970666 839467492 606413601 952556076 516593626 590518697 60108652 637949701 739623242 71905415 506189524 58066449 874206024 409766791 98693211 917527483 242369829 991560421 699183091 555431566 199145825 846703902 755172785 793348715 449056095 568980814 867119202 412022306 227012469 489365788 125953368 495825110 861159391 565535515 14305377 650461540 753397159 998909721 810887038 521149462 564568192 167852435 821700910 473848818 666502792 53413860 703235290 148785521 488162325 373303882 154115318 34287843 486925798 394473376 351485701 674909685 763617056 397890777 84292037 380770313 706100640 62709317 265664555 646660126 552885502 815304427 317098953 471852174 142575931 520281139 960457983 98462029 481212719 919886132 873708052 810041183 930234461 250369378 604232976 849560842 418685530 694351257 33151356 857525468 599510110 619351663 605491091 640046953 104241370 94171140 242744026 487378611 888619255 754176479 903764195 323193376 889625619 614851869 306229155 936920826 955922599 83546744 372871248 242011133 515513598 758976287 596214889 456533557 63238094 922933064 895982266 549218639 407987805 464426367 884328446 561809168 993052010 750337807 492984698 327033521 379872154 41230039 581334220 82346702 174310145 139525058 234433606 483249560 660390396 715007704 877176828 570050811 793928688 103673751 635754891 912958844 354205901 971947503 104514104 861516709 305305167 581758434 232216145 944991750 586245214 563847483 866134148 725599300 603664213 305763423 611301331 215018284 263708425 623717933 851320026 655973676 317939818 39462578 767131007 423375755 409477977 506979091 147072173 312057522 142041913 179206273 867955089 419177994 404340045 173014630 696122656 50579485 297742877 704251960 895936556 491335847 753268457 8696128 644555385 677329032 417018375 278591813 386388194 438629559 490153221 716700281 255600471 422981153 348592906 282451573 980365149 684788488 188010589 244423069 188677285 67889503 244746671 521570178 700104183 663737930 185682976 304566895 746810236 595672516 507646974 996784882 450981468 858746758 36444436 173393039 12818442 331885033 113969500 454517630 904994060 767356987 275334467 216642792 919835672 711118219 542500406 951072702 468805039 173828794 387991590 789064153 865234503 16538367 713592051 606944389 750226991 316183828 483249552 390496790 186903005 732191072 390621054 8538269 338741093 837172942 892075329 552028136 658940010 879539897 894716727 393531148 837693797 128401756 766304104 784445686 372465788 39752549 33728829 668186040 16547755 125176638 992608943 561420063 600598174 462894120 986843410 209604110 148627156 345567917 34110328 705633227 987302353 19426039 4153682 828793425 527242701 759143223 817518795 970935035 905731964 749108794 311059602 620401760 927504331 397246178 77534823 383167508 713336667 41156746 173178017 243287103 795768220 1048540 567555898 453843693 58035956 151520742 348321350 368641457 281581098 963174854 112314590 432600112 938497763 848987239 622139023 599120087 767963756 478731677 113403004 44567943 467641747 139983067 906171130 283566459 545647561 45882049 519464217 974109800 142423985 557034279 156011344 833043393 704500190 142695413 970625107 299561929 289881208 798448015 241748381 215492382 155853209 16189917 974391078 435245298 943157007 902168988 44758033 536755465 147690329 357798850 564566929 881028735 311113690 667116344 216332564 589470823 720311180 921892170 770789473 264159188 560553090 419236677 163542415 725131030 7062710 532564690 543798230 429946642 947656601 39394739 326958918 13226961 585947040 959283918 432165055 564816396 767269256 605785557 569338470 384208442 68858689 118539262 415130117 20384957 286325530 749626119 974135710 353369081 229439154 132218280 845214283 466300450 584467535 134112169 418725910 897641213 615569419 269718634 336624837 729322806 306620384 249551427 609275266 980136095 457898041 141433036 798899860 878122824 466268852 162314692 176478220 750796177 265098365 154976335 952949551 999296036 52360615 767672774 641605740 80925798 726749387 467292739 237461496 942643093 500860137 728516273 606713531 50526682 753640879 758081443 387880796 855838434 649359041 439930402 933243426 86072798 582753434 5448571 226104784 250017755 899915343 470702403 434789729 818979143 352467802 204137230 154095938 413104866 510022409 111510643 585258297 230196663 368410362 31053004 273006263 989688045 384677158 279082668 884482694 988148840 255775799 482380233 497767151 185182151 313168954 891533162 364597274 977440025 283474211 577449882 85528428 312780936 968880661 92446741 674803079 322568426 728220546 972185724 845198259 389400931 50977537 174790208 790631109 55742621 165951495 246020105 500206439 586396964 703716947 987892806 526591837 308957791 218100219 789227610 346932289 349924163 200779576 27203592 404603544 564259734 720779418 308533266 91056104 13567620 912927718 890644223 168606520 616996080 439452801 587222225 643381667 501142927 131262538 202946401 841614 537247366 369826382 309750453 909897174 170174257 514389838 247019719 315165742 351464053 346427982 756564176 530267803 902594112 506794259 344475471 595030687 530078692 958349966 299992153 736946236 369499288 18602102 631646495 486549851 929023633 811854137 107250544 66182822 139934492 935112197 105381780 77455150 101882772 773533697 239503249 50515152 222011291 984743178 127834731 933380211 19417616 541553570 898287493 512726943 350822436 740878648 120719367 808426598 322691943 425423219 191063786 272734573 573615327 246351259 546040630 485351333 8372617 413374895 293674252 168198690 979401978 762311553 871256231 625909615 882382034 112649109 693535438 740365061 34979641 103802061 719531586 841808056 853387479 213802083 319032872 903804290 443794898 326629259 770239539 962634979 838290883 955222551 488067950 222470187 9544662 387955604 692660743 588351132 562212789 580014634 589159898 961645334 980252168 126106429 601781679 716057675 443201780 636346780 815138146 49562167 277918312 840577656 354302802 923891961 500018750 687280486 3795371 502957083 135819366 398960742 584870370 742913109 668924697 725044981 60436917 440498246 683970212 865394066 30988645 479461222 150351056 463904997 676747969 472328663 529818702 939554842 368247208 530624634 809054555 641891933 713670059 841913284 89922230 135496766 2495142 59639226 359176697 882574214 959763241 452135789 667482558 225876708 349280045 165191133 951754619 281848875 648085853 181294535 947770402 881203629 450669465 703209398 59772104 651667144 323786 188378377 211570381 876937905 553795788 349896262 649832840 446077326 353144518 877138414 80125725 70179396 27158973 585961570 330900274 583007879 752712262 221893020 234852752 513262304 497937934 741681267 558882512 377972141 812877709 415045396 313062775 34463609 430403335 843188556 302810397 701905521 746185684 681383934 689610238 269075611 958172957 577051024 863591587 672400732 696627922 233074205 203890693 177316935 826175581 618458123 530518786 624502945 238804230 110335376 196526267 617780526 786484998 332610036 840701091 182657347 988074911 571930418 585000253 565402831 723183334 630667259 890622183 656620989 930264481 185950055 380039113 616453411 142760801 396860462 171228528 668217575 935508816 414193882 122645827 358371531 935481390 134519315 767913420 133750432 362427275 351779314 402110751 334599796 708516525 837291971 870820183 309928238 178035980 518702900 912405799 574031320 416976499 550252795 948762098 207202980 189699944 637688198 398200433 876233844 875725498 699654066 475012389 573943315 474878741 594930951 149238701 183530971 816358583 935702514 119760768 280342839 224268094 371156602 432343042 287819355 263624148 524741760 947518076 389796160 310673077 228536674 672652217 347674290 583372361 802358063 759628911 429668718 907865009 737934791 404656771 944947132 630377517 244486188 734793578 852482752 308446744 707500349 887386921 467672064 50955781 100368172 769091124 997711033 816815520 543034539 136459231 733648727 307539347 209558008 291338761 939948700 199741360 944277386 761504354 378225192 968624097 630848624 600114462 594061790 69360676 453403072 858243957 431951345 673943588 339476982 702700781 494840675 812928356 755434976 485676301 577636770 194233340 305876455 558647782 596446780 327985680 785982080 901582162 857374612 760418437 554506638 46952089 194822097 162464869 596482417 872607516 497404236 101687830 423548494 210512283 411685232 811971058 69899087 253017961 432322230 486623679 369213667 202134513 553224039 437030058 418411002 510439074 721328675 599686495 283491343 523156565 308719040 208825849 51498144 960392685 872939784 432814977 742184169 767283622 753947871 548623794 977469042 554576461 119264828 53790829 688013715 3926451 943030808 405779488 731649255 220859733 679118500 75245692 425249534 846310626 444484668 48271144 65515911 683479678 549663116 274540549 294761959 713984216 368301764 623454224 941550718 393398268 723868948 596765484 351294449 84793951 114128791 608713419 975379851 401983169 513867518 460319007 104009437 205055914 754348381 614578663 400321670 438730243 950312494 155215005 221941133 202773472 183498507 151009186 793578313 650353717 797785285 559415560 340431410 960247047 354705303 810854170 138169524 902686793 249092219 249911728 717821214 90927915 88941108 493985447 724267898 420461606 101406401 729466733 257018940 294603495 737934188 492148427 997682576 380553331 833691393 858866212 3907930 875448270 703084204 957673440 700484582 160033860 794782674 156641320 915604163 613815622 268979193 658126663 119508732 280943493 92392881 687402414 164205842 770512083 379677749 553576237 522500207 317181334 120215240 634851411 981046472 215959408 883786189 732051750 641930228 488446656 960143939 647960491 207741556 392929691 128412525 317371238 276798662 352361532 840982897 742807301 943173825 729905234 393141821 698709392 206757716 885031540 46644104 538316250 545875619 227066895 624700519 778280036 838092292 473493998 443300011 462308896 411277201 449968674 32823346 608903669 890330790 334964535 359508553 972973078 730198115 735476539 894341790 46339084 813614010 447765430 377276203 371746038 34261863 63627780 60715872 319564964 391843439 157869935 425627245 939440214 724292026 400161084 446774311 318358868 768650414 971121434 68859929 995764503 982628647 133350715 974556273 321545707 865506811 549907789 686685198 228330553 953556697 433964540 210123733 943224062 848941121 440871432 646412966 851379205 86205865 207040184 1086886 755860487 888131116 156785236 878956477 699781698 570441264 849328480 714023561 267275361 799338095 807301976 15155424 133547270 596418361 743072112 76383132 337614345 816535617 793079469 378741138 75348944 166064537 623359006 562361993 775465319 66263248 741507166 30519765 909669245 816040356 942446230 552932421 340450467 458477610 426324663 897203831 670588607 877668690 402403034 571413584 141900407 615099758 469392662 835230345 268422826 689779677 723691520 640951374 449257277 18222903 777321586 475354991 407738083 660039247 387745814 954581827 68257957 475884788 734500454 547311726 289203853 608098955 565545560 918381394 94967918 686711962 399314682 338488467 486166635 722298940 360538390 247878328 121455480 425577948 634068625 83172744 322856350 610224058 810413776 61240481 715763460 650432820 978296534 896275882 886240847 356907944 664581238 489423757 54658434 221326274 712318040 997633227 72087108 233702050 497389704 679241625 593485172 511397822 368116068 460766148 899361923 31590309 713063321 926530305 45680377 257115340 181416569 125520079 189350133 671160053 533689607 607795268 926651332 905090682 314446977 924887501 999440058 458891140 965342359 353995550 375812917 775735191 754750758 421997373 194174570 677341003 224917885 437491565 675569333 909853244 322980402 774713739 642609500 696605238 624021900 965681457 760123831 421123486 649542263 214071774 865998014 297011134 440191065 112749061 140180423 123204324 24666378 475469770 140431586 990221043 383890573 758281518 861169264 974958326 749646500 56414278 779891874 133334401 68327895 44959059 26412513 426468866 236430532 826047410 485767436 716595317 17952385 134953508 558420910 141070783 117782633 420009072 612830780 172979088 614612455 175491552 412921895 723795739 700831300 636174209 34555745 636894887 728107996 136635375 311728416 337626599 68948274 657032433 157270034 359300039 76592382 365458891 114066748 699485823 899435710 888337210 748458030 182797223 299690466 719577414 695054434 62303970 499759191 389258466 585916146 494609651 183639522 746841876 662403800 660093046 792218219 661602510 976310584 440488124 330211179 42922271 119997801 364623132 466884379 885213834 912325221 219992940 152483973 322974196 867481604 767821941 741554593 736987255 311421233 35619720 520827212 674765525 950947481 351999422 87332153 761547638 488319253 966869261 886106011 396762732 682270139 476112131 198100396 611783220 962665627 800409679 143548818 988743344 735564588 314795364 700086714 593283708 477687004 754869853 355760034 537497604 693852656 189308262 899427181 881152160 116111650 102952067 949013281 567916114 976450753 177083735 640581600 684317974 361748290 418832334 13420959 368834761 468589858 326542683 916141119 166501002 179018651 922632834 522344525 952421206 935094832 328076637 581346288 422855828 471848779 543057539 475055826 586332877 913393361 222648876 456516566 74547183 35432651 205048127 83909527 518577672 109038565 972840301 186449855 931157058 155941139 132772167 37368499 104216500 875825784 456996528 723272374 684513908 548357729 298768265 406641849 464979505 247740446 608383042 608068544 77629234 317315488 184260892 736014043 372503226 79754954 751286901 646079670 937420028 654293180 151051514 289625509 248093263 851429783 921420810 168844672 333557206 336601856 432170660 594814837 305366041 795572305 127982813 612967918 991472407 182808587 128684751 336680514 861013580 998365624 396986656 115771442 738160441 673091653 613772771 677370057 95645304 550190202 44104674 229762962 459619198 231817742 588286786 789656505 994763281 508585254 830031002 977915175 798056498 680304803 714892026 890615491 325327314 971886501 17185824 727589062 316040450 563592565 817098500 117145787 335664456 258905513 34145677 264013286 482289309 119280237 944485244 40362594 941900430 347216136 195237656 270487066 367951517 909113255 697076305 389839267 714715041 531760915 879707917 562190303 154386881 571807371 359350059 686202946 17285631 918945652 77977020 3309326 786733062 944542512 982239633 777594576 530367867 825453114 398461956 604643389 288215541 198484763 747481828 542088337 484903519 417793372 158866675 255356588 767740492 912464021 165618234 868070919 871786807 604296053 312066042 931492808 478945275 617403982 155540437 548919513 276305208 893185267 476792833 231761094 332652066 161674829 777500309 702672889 989520884 926301242 198486384 482392725 644788086 667205333 784100042 363662121 977779465 252786835 231454220 230648168 91911190 595346125 449015667 477336863 47042822 205724541 981062157 187477817 880464751 589648188 261314729 189191896 808705044 88588174 42010932 985751987 927294563 442882521 636497616 566165145 636324465 889336157 837463847 710162076 298713235 226739381 547629039 651116417 125330494 674357219 772760383 501996276 359262250 246537060 105962892 777169486 556779772 435438887 423428583 656412439 330302628 83116060 763319837 453273824 304174922 463313011 542411340 320002561 91437211 332013606 113440607 815107033 805149518 483711152 149893805 419993081 635608789 9304964 748514548 953777952 927486811 134099117 610721071 450958798 460116145 791679036 3766557 564250009 928035611 339922685 99819553 66727163 587181273 848322614 925453912 579805957 662919279 894216471 428024945 993279210 938375179 555618122 449747154 634419551 133392179 398623109 184672159 132290438 371726117 288373739 900714842 662947885 706416297 744977500 150557326 705429080 392292615 572276786 983150313 195589438 207429102 566509750 75038385 437875547 332115319 549817930 723944944 738669045 534451596 868145372 494918287 335174612 406073613 156533053 895874524 197039719 383549592 434815206 106516572 737324628 504588992 896797477 505584546 612540603 590192727 124833131 740391221 328628834 945232110 868314195 207459630 582998337 218127468 115435976 864028601 53321129 910428883 555578930 112923000 886445108 681963888 851673271 429517630 294223420 724568214 753818804 169071981 848734695 936033823 633863512 446914516 724443760 807003874 242015633 865467474 213429554 349809730 218863989 316275931 11701003 688837050 605647442 493655576 575779148 218435153 164710122 789404417 516477448 946465089 87831816 983325361 104608411 400402717 147195664 749251514 957478116 832941524 911342431 574698745 235744186 143325439 673896787 979747788 477491121 939369325 469046862 306642713 512779897 265907373 776701459 366646796 823769706 152375801 38012629 801020032 431909441 800008694 877192330 71126015 920181323 653360171 826336713 448107908 332401266 21530523 212841614 545294964 412061935 69356664 808514 277310574 727170216 448429660 508159874 956981545 338576983 788431017 916896029 757203944 311517123 722968030 285458280 569852606 532913496 869264090 28013764 743258251 395034507 577381045 162416846 594220910 13664457 898292623 506770635 781075851 119325735 442162073 996337299 6544302 891300479 172677733 878387737 146289942 984572964 78174587 551589327 578843740 98625640 267058686 885660098 230329488 709834373 23419619 546175851 411614335 711912866 350646242 974597574 562227642 768166880 943947780 984220931 636206751 40604501 838226945 344640987 817983525 438648088 835143653 348437585 619905091 480867253 623335805 311857436 539184844 628584286 60557760 499388369 170899462 959247320 881759549 887182672 513109752 660481024 371223618 509195035 410412719 413261435 136584051 471480721 379603401 322666026 369037207 277599697 839489740 149525692 465537363 975198269 797526719 881265548 904828506 515068847 731626700 882478007 587432944 367242595 113357941 330803094 365967309 446052913 871448140 698744459 389251141 947436226 399398853 789257149 109926587 962906467 817860630 226712678 930660813 325100550 338696899 454586897 641249087 607754984 759681884 197802943 658572451 387960487 777176208 73444145 247052877 570654821 34858212 950388608 154302483 149414694 322804158 448630825 195014545 721298780 642153499 604515502 549595108 871179066 694424500 178525934 580714684 162002502 790566671 864440522 651077867 899614379 204892142 974997376 918881482 512541377 158535576 143586498 637878454 792902221 719212157 54017519 253578147 482673804 527031680 229664285 84206817 5132155 972768563 341967631 10007943 684780766 758656418 713541481 673731574 321487693 537165572 968727932 534324526 288025374 543108587 784336852 7253584 101308971 965060341 77729813 198781422 587628027 100111793 5849070 224595206 253529002 952639409 333451543 838026076 719599323 735840678 333056738 979856071 339456308 561163738 834329894 174077270 576596198 522725673 729871917 164910286 942684332 816949980 130660801 181287853 532164297 872105858 916727083 905690341 959242683 659114528 478476396 214984686 239932001 13811459 150278764 435221275 323244758 480825064 592139781 609366735 44161518 602434150 976020892 812122268 858497453 970692792 501457279 986130442 507229642 129345842 18380614 832577346 705185572 414532068 591354560 659234300 16395545 7245374 497269744 259023017 807088357 364709546 811279640 268998612 645012354 834030812 548139725 844231325 174504285 622952129 405234465 372860936 729166337 120894705 95653443 66799130 232109533 345193907 108438149 716802832 598003859 716621257 11075292 615626592 150771532 155541942 817947431 82590405 839722065 77322651 992053284 267244957 809945006 967175514 208505750 55337759 527615149 841004360 259089496 169111856 883377978 848496311 866421342 702855407 827800314 466600272 108916992 272772223 321282930 355389993 983247834 545839729 805320135 513491174 307273721 107782953 431091690 78721533 928827837 678799270 789810870 856005522 691598147 78748391 535296836 46749520 33692176 631247301 524936998 189696973 117236255 864329980 514440649 999135554 868869471 814161417 842971894 820396866 108284442 995383576 381311192 481737936 202651272 150348534 772639642 75411470 633821813 587462742 240486090 407753325 372811416 386668379 296195717 673729454 773129941 898450552 329162679 350511196 597820939 812062994 71617161 391960906 22842369 356320901 150854138 510039944 821886547 89399941 700535696 332359860 405434269 812405090 88639331 236458642 494478899 479250551 583808891 642425952 232940693 150227055 366250615 739304154 439581050 858029472 211051089 45713774 885592239 444446787 994776677 435384359 760657587 302306089 243932582 964104251 968842646 710454007 562392899 118566818 435252955 937993162 155195045 882274609 249047668 509652040 430307437 152470382 346022300 55289341 367931309 618277712 667675811 828401144 327559268 396581206 628724993 876592991 173340799 436360227 787261263 967937134 355734988 884607536 283279976 707700439 41624608 774792770 556235026 915930478 378588067 122709129 701394788 773687532 710049402 505172729 222758431 977613587 577915768 264559359 288503376 118814974 553169150 323500414 424378125 109457347 65900060 8070936 709440105 622624460 658916804 566608439 23641383 343062690 997342676 666558187 335811323 57190117 330469886 938114627 295558577 768840632 636516623 72586211 81642366 38388185 590663698 288293315 803815381 777047465 862628515 775151300 245436287 912851031 937803363 271109743 814268854 444231897 343995086 415800293 885029080 264668455 995121911 664778116 926341102 193422442 204727617 661584772 135641968 319604170 647969331 779750474 608567327 386580966 35491546 630205767 902234723 338214113 702317070 945070375 411726368 900692159 412909061 303616877 553217814 832362418 287663515 856843739 536902403 781576236 254677463 753997314 215582112 394548477 106257348 28078782 824835245 434320380 104634254 800183645 957666710 984795042 910217874 45505445 428866563 518070583 731117486 791998269 369741729 125501666 1173320 156693182 633700397 563270069 562061759 643937618 74858455 233645065 146199104 676582870 505243759 605357136 242916329 911890168 829848222 345182380 346924543 647840108 232140093 503727829 835256242 632761088 675869622 482277175 291948362 582687549 760055475 200937652 389780578 709485965 184091454 324147193 254006804 32712875 131378612 387868661 977879022 707777738 695280798 270923949 603087185 224142418 734543675 828380258 397105122 740653640 851767564 666703039 967601573 8115052 669947201 526454160 474580236 133302507 802660292 711671460 73334320 797682275 701739352 920693998 588541557 55884746 354248216 414273286 582079350 442789263 165287362 603389829 498049385 141878149 883951198 862451302 417594542 303787309 337927174 864063988 723600413 944829850 429815359 700044220 429457149 885132823 364147746 719654172 76664433 871783044 127124061 882302753 249234854 42319159 814321982 942856737 788796849 152959121 352679941 898616605 509832498 739365797 72792558 109934068 424774401 515326449 385356004 16628550 525592560 895728171 161122978 266963803 608146969 599104937 264894471 215000837 902706 833761947 323161535 121028179 65529255 399174769 801972779 187107250 658013843 575540419 927289647 999224909 463729064 79022828 782329080 983468293 100207099 793088174 257609785 711801565 259007687 874693353 461064176 566458130 759633350 58930137 542803632 700018416 139407866 929431273 523794721 988533831 706907440 591407182 860138735 99226641 919937587 97486349 451762034 170830236 21168180 107174219 367755507 141204491 288855082 313048930 563587786 564425459 329652658 820454215 830985688 538344932 213439173 961387915 265497532 402333872 231975503 209052441 665664483 700457450 149594930 493664455 846433863 112952129 579835595 28622237 49958755 646627939 865846212 209640046 437237217 907817247 165482729 897265245 213698325 794127467 179189308 28206276 183943104 382614042 335105504 252795598 531597036 818846067 990573773 667918179 766356825 634420671 557492804 688085381 76314532 312139554 642119720 441681357 807644531 164429373 399389549 75247323 317443364 192915056 535478947 15545701 999050682 289257259 424823919 827134809 260963134 485875400 163592957 218583400 619031944 16161892 436139378 466932496 156951174 154575052 232674786 167261066 526605387 170401794 934451569 984887809 618297765 895953771 990979793 52231079 752729320 841975274 814071137 750617748 122670034 249655899 914764900 639263692 517730023 589088295 492182615 940286431 23746625 756670147 547964595 144062197 911702657 73044983 383496241 990977809 742782855 271046821 3648075 957332984 53073086 899432736 21231381 403134502 224375471 253653297 57038745 468033636 930560066 74505637 617889271 266073160 285668284 413545627 648564099 340861874 895905251 970494726 142371395 842106760 914052274 190821664 390210358 81656226 77825286 225009745 839674962 684114280 220068932 674717806 714008374 590349915 692665699 726254027 100222277 445246290 657210856 925708692 597797906 916493166 849295829 53823439 324823988 172126791 208909031 617881810 572951042 230348647 402655564 13726354 204044527 36616777 451413721 66317678 648155951 713513890 711798814 704408266 192886405 940634124 819743195 792342892 785601349 457453576 904912344 131692665 72805459 40179862 519217053 279516083 661507451 581429840 746235096 705609936 537535295 748333169 577961023 316929432 782076211 842465606 550075776 772872755 187706375 631282546 58373967 311789724 889935407 634497109 208249582 738294248 985213663 606092259 156301813 115164703 265189629 384501476 598252397 766945842 714788373 2446245 96678492 109021603 270421489 851577588 419156396 33189113 59556804 847827605 108017021 138362091 460208714 397820056 157868701 215163955 532453644 718465774 259141695 822304728 750818434 51398883 920265731 764497959 929055805 425542117 989357722 350677743 346288937 483642289 540017549 739761662 26208972 891714450 368482591 300148333 603078803 850053681 403154728 424185748 146539522 781000789 285846580 965672766 666193444 996791360 152235507 650889457 62454659 422770059 298265717 708441198 194290760 354096238 3541120 347935546 751866069 891236318 223312509 194000709 728121918 68308798 667063035 819409298 309663832 961632449 416096960 246087356 100758596 517458839 136987506 124305496 822728804 462186848 948370941 103968397 505244780 600306389 195378048 423879561 141909741 498111919 354448306 626408829 229673089 437531089 365037704 574600776 557015119 353324510 28656211 395921342 407252244 74386334 737760919 655324457 42493697 790420168 624672254 845969814 442068922 190878547 434338626 643062666 920529089 823425241 534509462 955513266 690167529 790078064 845503880 214585542 87748186 438172497 239762157 152803397 710070969 624275866 573723566 200258363 599805019 269018277 169618051 702129822 857044091 534716298 837003496 888943709 942014023 950350688 430383313 648495648 218732323 306403262 619462358 421725129 685227165 704839473 937061352 59813557 174945284 347324224 626718893 416091476 528072062 225216279 377077039 305374922 193023443 530643090 369985 507257669 553254869 350942118 349258183 164693877 834922028 696346105 632197303 613538240 477070515 148895697 303486870 217729060 561395354 113613259 51415443 635799797 604193707 802094271 183580972 239407660 784976282 548861570 206339187 138191329 985420232 598683232 481442042 212183973 6702589 625367410 39737426 864022108 684562085 726536737 311810145 684662415 326941195 162143738 352576962 852715705 373642090 166572240 651154891 16113875 249226140 801758832 70276632 906613137 460096847 958334531 645604876 799166371 234110253 240002011 741991263 669788544 473614050 673144881 215017177 626874632 360227370 967196565 810222013 780698675 210861485 782229884 881315698 992315998 708279181 862488890 563969476 400561510 745944863 989195999 901089715 54960765 263166673 41548200 328256966 14241605 7179824 642630886 712330046 136614510 741314048 75994018 343930026 166946303 477880955 667582886 679735589 247278291 803468223 310624163 152603150 666941999 527014561 80875074 64660140 354496005 391050831 953652060 838732197 167218318 8808058 428696567 274006151 304954316 75353621 984693059 584196507 54437188 106690385 667467562 995923191 614025709 117500393 562375345 374254006 839153739 669880626 203150284 511164291 740266146 715387546 389524850 211089310 286876655 740747278 634783053 508213318 5074097 264606288 33960754 208461731 814418122 350763253 424456980 751885576 345179137 690520042 494624806 418830659 680413927 391755433 412354529 983822072 20234270 820607310 134087673 397829595 344158449 446876240 971343050 552119601 979982314 596016751 515814207 287187123 912078132 558570986 50213367 421404731 466538951 517186710 776313662 275481195 685152836 764683069 568781343 29650860 319397230 501348293 975563704 647899266 804909683 8127034 333109699 893122661 99674517 292578311 780154944 138436302 366498357 16417361 758868886 576081001 869298439 726986221 728603439 539573341 205254812 151589967 914563468 111814574 153512270 98443185 557004820 563921260 606068792 844989419 780685716 420503347 370836301 34931411 755990364 274117776 58313849 912997243 451487090 1702575 996305306 712873203 851595502 200720316 405709798 374974360 198143879 400631287 773419740 871266237 529869380 159481893 855599976 452897621 916691141 613697718 860114629 348185920 647405127 170148909 159154715 250237498 143166042 442669228 225849937 25338401 757984689 946108883 26216314 194894385 136266707 96325597 931667607 943050567 99641675 152610543 331136812 7113442 945949202 960137330 973131289 943340319 20884419 600903965 601030969 913111630 894213260 956466763 737817048 235683128 469898218 393179004 876040280 633636626 752092101 803403347 253964728 816164477 619161558 99528227 350910511 621259676 771168082 989303624 645005182 112840165 664747503 483431814 742314955 833298824 385288868 29472617 665475225 732933887 736355809 534434796 290172783 598376400 402065927 743701703 120400201 185184085 954947085 148848226 809997796 117079092 989493538 119674300 793797437 136721846 547415740 56797712 372614179 580974232 608168278 603863966 423129513 735468496 874277551 808903683 937851898 790800261 539592957 838111658 92215484 178068816 366688890 356033168 472406204 974493964 53640514 22868933 287145963 991016323 997747938 454003737 637881287 149586074 711945665 132823224 453848328 274456834 316341073 669876576 367955349 687750635 840264472 56741335 28392959 138371843 647929643 244020989 166422493 943390163 453761839 649421215 889105945 952905634 800507178 188615341 540821816 910815384 938071924 479832500 904670161 918165818 988889721 811471676 216696744 919597984 586608573 43655063 799632709 700746120 757995367 572001538 324403598 727594238 280664095 236646572 397486880 158975455 708913921 14607576 114240455 415711534 631817247 202932617 587060962 991983906 935290061 133495434 291631948 43649106 287110511 265942191 307352051 679530310 835696516 36858241 962501627 682492003 516168217 346346312 778982174 204078560 859139168 927939355 147056709 221919121 43332706 328127992 962453343 904853196 187377689 570138965 642800824 54575356 166427224 543365743 302986002 247391779 501584844 105389220 266938729 26288905 337537807 176634887 977009552 655096571 850312832 476765760 929402851 583595677 217901181 954231949 447687477 132782366 847006192 557574177 564208026 984658896 148772941 229285099 45915486 773274508 586828155 918801954 79981186 828212692 772120784 398719787 457754447 493764655 542580926 184063796 788317473 358931569 680366091 365034543 628958199 546397155 42434754 538786634 468150386 465805899 648906626 39487381 299882996 498657695 269857071 666743748 235511103 142452521 578001858 541284298 798333481 841097102 121429265 50174504 52027787 317574702 53908367 139141162 91642448 30783782 35109431 539466762 626441854 764233120 665049431 653443394 267913913 200105460 857060507 487143984 518531914 482737026 229080769 827216772 626167958 692737798 809730456 571192373 673924262 211454992 570826362 436148678 151394875 466890045 746398869 578849688 576506143 990107957 928300150 977931985 432889052 40938427 730683807 396010992 622111156 913456718 572102095 236746470 940331879 393598034 415717109 388168489 171548284 987052426 293486503 637250738 282828027 98356195 37274456 982833619 382542097 933348000 649508402 299853810 343804306 830719998 648687397 620719615 153289752 794076763 314805448 123225702 622870230 824149117 505412053 337080168 75530006 38177085 300722284 321175701 220056057 558534052 177808288 686407059 149851811 53730961 207832072 735244771 811202616 245704625 489111707 242484280 892467825 166498546 923373902 68970975 512230597 926537926 20764820 106300105 559254167 333164579 469196326 149776598 148068048 41516133 151281033 824010575 929537549 417395851 493787127 70347048 370041177 922878740 544930426 119676789 264553294 832134735 27786370 815256255 558808306 387855104 783327044 430080506 139134118 507858646 145896653 761578183 883702202 716870191 595316630 245614531 914696776 852574795 483438301 911161801 349785077 949237741 758776493 412781271 554601358 143809587 787122935 109879753 239980242 694664035 12933184 345078592 282097064 318386171 399452435 501010149 213097239 608467308 721625403 457869380 848453229 688426285 723301189 583767165 40100756 797450194 785932988 509671374 20619765 398618665 432060471 822782103 384699440 378656677 870391535 317604107 993989452 214498188 182060836 694406478 144499808 410798995 429652960 152550669 655112634 72252627 827335317 835202741 570498434 413382762 226289991 939912643 849263139 978625335 429776872 17545857 292709634 724590387 549924022 844064277 826408820 478984427 6131841 789530514 928336981 299167815 28723882 434851892 864769870 446291750 314293118 568165531 537515519 408313592 209711044 19587229 703586854 467518248 715739053 790123137 900493128 340846341 557013873 335931636 462831500 12880363 978242947 864554631 756277771 211964908 758255076 119220816 924214220 729700994 689123821 292858379 392133084 376111279 372866832 677193951 536844347 448021553 802747580 594230925 511011798 254933839 580608660 648799344 817454645 506287858 725223810 159569530 499683455 546402006 265386497 852244282 364725247 743760159 506116045 157312364 206379150 815378310 832425278 864591262 86645387 280944749 605675654 407118561 678805514 87309228 315586958 350667052 501380856 742374087 830185303 625351442 245592555 957578619 540488930 186325080 655194028 594860892 683948519 555533325 940942192 830550814 466913141 783650218 493529794 981318404 902386413 405833147 500721280 538468537 798292656 796550168 257981175 54082426 553794122 286379006 922470238 196744518 612798124 145087678 629767524 641573877 166850238 176387107 80928620 846442137 44163955 87920955 301505912 219695072 662226780 206838696 551249929 44662608 596339029 297111277 83027672 283268559 545394043 899753455 866155613 928541032 431653793 599300335 768481253 161870532 461696002 282571999 968057912 131973054 782873161 51143195 28291029 828052239 734917872 391802718 369903376 611859127 12886567 604403359 871474140 461159322 762675980 200880978 883482970 760044751 626188013 998789250 635073302 63257176 294568535 413035107 177994189 465317070 735024869 281639971 559599520 498315368 28582003 28452265 874457979 911357540 128180214 690233268 542947435 897300630 965497755 720301130 545062570 267023526 329971651 517511745 876547470 614188212 271319305 698780485 355662253 214116891 910295213 482295662 443416479 181779073 935306795 593985895 662263813 813745765 639013958 836130769 267282768 457890888 908768249 531804414 780448613 905759597 595911580 497820949 508509073 129526070 404137986 537389848 75745384 934297611 750799725 650232444 701761006 273154351 23826068 590002404 370006107 430878381 593311086 542688981 649657636 377081097 627799260 978828239 49770342 455523504 679326544 811787321 394390244 177596701 113077792 446135315 209453804 224498291 726226965 644556130 104386017 184324864 300281962 16222609 694361509 202868468 821321688 205625361 733276091 416509458 284268132 864536393 257697949 386152638 364302150 741755493 328524281 827209337 422706286 644849797 403380977 931508927 517283687 276055221 498520261 555800690 560458557 567015238 224869648 984869018 255185500 511302009 312254936 37208121 682738084 605519268 362434516 347632203 117436311 290868091 676265711 815446257 378720937 155898362 530339580 320806144 569386003 790170298 717707341 475473735 801512308 162677561 442854114 590492272 874038619 839348986 217008228 139934068 157955345 751909268 887462202 225456086 980528076 922398920 509353515 97394832 140607567 881307771 28378172 208642508 532156101 937855362 844145891 817045535 940429774 825620104 672051452 556813052 801860908 354139523 381126133 217841903 293444902 305959499 776074680 931507752 512893650 567006827 563317011 532723401 266582553 79150957 42247992 70919760 326063815 494619265 565449073 571346639 95677412 780192242 727079339 356444598 312667094 495661391 409733657 484221211 68393800 37982832 469677258 357561378 160348615 126764684 879677486 340343857 564528850 198748056 239026352 250360611 573731307 246783346 645923332 61718308 896906208 123593138 200147050 967019017 133356239 801546092 482659187 526904 964251131 59987494 731983161 623881805 594385131 683940921 779495300 959420782 275741678 29054914 586026165 885545339 847350265 385415803 693059492 119599544 174336869 641318586 479415227 865755627 818680195 553406640 144345074 759481492 485977012 904063244 754627332 908633793 756524540 161102229 401406651 353232006 64383994 995100096 197329190 977409054 513107144 545620456 419666636 987518142 109990833 306591139 400076805 628329789 707817184 215898888 236068320 520667811 894107687 804340808 499846229 285682698 401046702 215335402 813086829 87727146 362523131 855313534 207848758 515245835 58642520 875381656 222559942 784794118 670917566 738072570 591087383 167790013 233337530 439423873 59430069 678503221 83824617 338372812 788931603 905147667 866766009 500405407 303150306 971605099 361530290 161836931 555949515 780972803 522108792 364927923 714983972 89778719 284282236 958604985 733104808 853545733 179103678 222341017 805560566 988880802 388020993 314091557 202316947 149418942 229368525 188542760 160966102 980670685 681136920 119220705 915957806 981141600 690094138 17871069 269956688 479624752 451561216 505823336 879159333 461062370 281986667 660592821 565547948 936317209 509345125 448567450 508645730 115811544 622494282 814448020 114793049 867896006 355519761 258199377 166897436 792002948 235354441 991235997 428199939 87649131 950772398 411454435 401994734 153963365 566026829 776170599 540027133 858599497 449492521 761156230 888627581 363556456 307799297 47789177 489180351 987017201 174153255 184942876 438136860 941536996 173225008 913836003 799321109 565059947 285484620 758387186 317099751 300071598 818377800 606480817 695386936 653120061 145160444 186109602 442364169 674919570 33638214 896133060 668295565 316076512 391426708 894615794 680424240 193498169 930176660 639702169 696691465 993371834 207475738 912709130 450387957 552254533 803393544 440180575 545935989 70075920 804042782 219853879 566865539 939611540 232783591 2649568 772454879 220207457 782980538 551361137 202127063 258464735 133043614 259746299 20702863 721459521 527928562 630914976 792055794 977980736 209296233 290048616 996243236 525904098 719033558 767054567 319215072 61703947 244349574 55654462 614747086 870887553 653460009 137881181 229964576 763167042 745260127 316556423 645176134 110683194 425864182 792979890 513202794 17725651 353663746 536897707 224304527 490447705 1720272 491931127 200342299 218917616 508992807 528489431 100799639 650858145 383216516 426823789 552665936 533557730 513429433 48837630 578133382 471576806 916086839 925352772 589532143 521335196 203679843 852729134 250773865 729315457 263027876 883508455 456421596 295164577 285868061 651684719 716968776 780559971 740372121 241137894 580165363 528688291 966145614 798165322 456995657 933840809 44918677 646881759 695910940 237093588 23541268 142178408 563842963 918223896 904700323 801157755 512695198 456659777 978529949 923342281 326415232 248103678 697411058 452967561 373660419 714638713 185793979 352822238 769090535 473236489 69601083 353426661 319465781 788128749 887043054 357509440 66527304 1767801 575060511 359537711 147292402 600269680 778844541 364199634 299665883 974195753 216095891 237904561 912459940 832201878 838758130 863911960 95825956 217356192 139280136 167781492 557771174 822460298 126201296 532744066 647654120 561128717 140065345 640893955 623740963 664668018 834300732 133556509 885660 252311051 350729114 750364364 22714883 920974878 685472039 20029291 892869951 945963613 807947078 622668312 823163340 583470851 838668433 104153017 542299373 843832740 524254697 521875866 437784886 382236967 871274334 70792258 347958368 920480784 856205303 782005203 964830558 660504635 504673450 309595440 423168029 889137146 922233758 42287299 793646417 455562178 193630124 963350545 720349678 817970159 777003349 665470782 734386050 740882763 465791010 674071700 54708926 848330885 292255834 462017797 258734931 996505252 226847011 643239075 864679640 986582633 446261843 558168323 457831999 476346057 283443528 406628177 439967623 649492372 622322961 906852569 791055295 122920429 714972546 467849733 331145471 305574193 898872618 915856293 546397779 111577947 555948245 340430066 138302565 316578981 644318495 377565627 401413139 211364913 227637435 46038351 224299609 691516175 230624051 661876599 544501612 338519497 385769989 249871627 15871502 542028719 337000750 465262037 521983598 372459502 946155932 682890108 536559444 243284138 368276533 331582426 932167080 905162225 907122777 52722897 700351927 635124476 273137827 123329043 86779508 198092628 102386267 983786287 472138317 940352024 595774177 658450707 178779978 937121833 308024799 491964083 302985043 210849624 877332222 21548131 234044382 237537704 888620963 621242846 489603098 254135913 567817047 982475550 916650244 898224889 406121329 956562558 303405731 177211075 276983260 658999178 526305181 872313490 697622558 944817843 748069495 352779661 451537568 840208076 648569850 507317037 807008437 312695782 825079634 930265624 257299016 166388239 723155018 228021583 10753013 817790962 258414618 358102924 492297115 339143025 579171660 419288747 119434062 982557554 268610503 125234378 892994687 678354798 797290075 929727768 794328481 120905408 693765503 251933378 386982253 863192993 553452161 190280517 790098907 818456763 768832036 58176694 707561120 406845711 833567887 137677620 547982987 897050610 158733021 731729296 607583642 84531717 459826096 693360953 140004230 153947936 995066684 136229276 418073256 170408587 342441785 734015508 880973009 885898278 888829461 639930425 274515933 303072880 374516007 59382296 750620599 354400049 705124490 120098560 987164826 789175365 45217055 425524422 39473577 58659748 932323146 932973984 223949354 729447223 382145065 603565489 473081293 290477293 727069896 899789380 14249948 174195106 93164331 149787453 144127964 421700098 309872356 11076452 450089373 838160028 728113246 468852946 116591546 756838366 257988541 133942850 807848637 359389103 670670002 392369863 467993937 150751324 227028503 393308077 525541318 716555601 520542565 981389429 413906678 11715837 334227974 951267160 685341813 343204365 955166823 782524820 810132830 544720234 530394962 186110673 271179819 246877964 797440848 471594879 925003287 481766520 420782273 841851892 367014151 593867105 406094589 4128116 442335941 202488728 700537872 469037407 133212211 486125278 66280419 764924075 362758703 457764975 542155657 703168196 977946755 846845964 956220402 448893857 728254331 534893178 711758636 254442819 507242807 215052981 85154514 294800909 87503705 384816190 587588713 128705121 339428907 169465675 651622430 78220847 25736170 421755485 470320154 952980842 521064040 734901434 147298873 634797267 410931628 224331002 702088417 230459006 512338345 714046272 28181914 809788664 980579860 409883213 929702641 496164400 166408596 519769342 365915253 644140571 354183059 143811666 147340629 805563829 877967245 653736812 383987459 708123900 768737194 647331838 118161319 154415224 985116368 241803797 266405975 587985367 897158485 156138367 144200896 341672524 90626137 357865189 103969954 509590935 110839251 122630732 55376087 401843169 855882377 546227254 475372658 532337504 150512947 383050240 348029770 195092372 590275868 106522029 915849087 146844110 640617166 135553192 536940161 623299759 386065706 702471631 992831873 406285114 548652080 425911487 712765554 158271035 442375500 210977182 229198042 516346138 890435266 725837022 24661119 912323045 86896347 566858062 312197478 551745710 837718779 454969455 859013304 391609674 765665777 922899132 66651478 594970561 711584518 271388701 385545457 426785666 35912996 487364470 848780841 824197566 778689120 705355192 810320108 876517290 72455278 612983033 587998659 265260852 230432541 93156588 45490301 339526688 845419270 238472451 321934256 488350600 115059400 111389510 502616628 55521179 699430290 210727275 619051242 708774530 186371907 195810766 534937398 936266744 431277157 895555739 164913479 626126257 260111188 221068458 548131335 928822097 331510857 271487500 117738096 424703599 548033760 210721781 532555785 170511555 294242608 693048423 385624817 573290025 434291069 552915581 546961974 204420232 528268166 568760134 307196735 426741218 783581321 710691272 795326015 134968739 388677127 731733494 962164266 934642418 424966789 594669507 613354497 589948379 76864665 438963634 252618378 526435979 914211558 138907801 773207043 256887489 165575448 161071413 349937824 129543462 127011217 12546053 793402188 8110454 638330617 981152194 391582205 553589712 602593000 558603686 322197298 759503325 885965483 68167544 248698712 310630158 54213042 328159932 162608787 319062706 301430185 732127890 134230844 31485134 177525888 2408054 348931653 24484608 287869829 673318035 627394822 779085822 166570026 83948860 198986903 220001198 807077425 908096524 528560305 463373108 656455315 612174531 125702852 870782293 238650240 604124929 374440273 994518740 379722810 741636579 791314367 496569702 836009026 993385431 20051824 20619449 13667557 306662959 39563400 437701922 965760216 604962221 291815797 104974247 609556750 186988696 573409497 110702094 531526395 690960281 751000067 462226531 918258433 722594037 372780646 509375785 910855923 868674915 771813792 431500576 605418098 495987710 706637486 519568435 143145572 198695621 214623953 369972530 835921277 395426229 106737334 737381368 134847327 197723368 802461309 673949782 153198661 158266812 862032661 128462713 282723098 119205514 318908562 588107445 936710303 385471984 920985277 244230982 394711027 782894916 767126083 329227740 159291623 843917560 41838832 885039255 517546615 966432255 412277855 201973927 128399950 93637677 660547457 495943338 969489948 253373224 299718745 202767186 830915051 19800839 457985797 858198941 387705175 147134673 867824250 281075736 799650978 799209605 921486718 209018607 458591313 418149174 807851432 792772469 952466449 772829939 588575962 472828890 254392344 211053873 407278207 754600627 924315479 219890276 356489216 125408139 229892894 403365917 44458560 591004772 714948060 170288818 822748990 44865110 650952021 169551875 374435571 104855723 11794606 573855113 828895455 365624954 290480317 699098842 947481903 955562177 579519113 650273257 819926393 21778936 37520571 224345260 664215412 26631296 813564459 231197769 234666762 254195743 162075378 963052535 225291571 347125293 422728135 831709571 896364324 668564342 544161259 753639085 244238122 38720375 235789566 388143068 268259438 51182559 69419355 310729959 867482279 711676170 556327079 185367879 128442629 393113235 203762766 253184120 151718735 430129830 50968726 474639931 218782479 587811943 249663614 488160594 452204648 265831498 949392098 394163789 251462081 376628234 64348834 571585714 894964989 192647661 250668048 615808578 259096043 333920774 180263697 209817397 697056822 738564395 959713148 901466199 426935469 860768677 11527588 439043131 987754200 799386019 988179344 451079611 12185144 311830430 508451475 321611476 113629154 781369660 318428497 623644797 78986932 968958097 533206389 874233412 412154399 148299690 612173261 350496462 117436280 726637679 342420824 552478526 777813618 234547118 283054785 148069869 530288935 676830303 561134825 349735819 439186011 680000525 970345781 577726264 258238976 889115704 220662442 30933367 783263035 101706874 107763103 401306541 146526984 481412647 197273936 935157341 166528554 882150220 316855316 315648456 142423660 458429591 547300129 953847377 721576429 138137316 583282613 287861238 845443486 876694837 976078337 593305925 480946044 719877251 610870386 89099761 561626525 297897755 281924018 292637678 841903131 450474167 29794212 341051010 106587650 207628610 541649078 397020458 60702226 164612928 795818157 624658025 757555558 263386382 473534984 496085011 495774813 752962183 319975850 958147588 823273715 904553383 546142922 457406829 805593035 850655385 535489603 785946760 538675976 518301568 356164464 369701277 418512162 267610000 648397993 792631230 705818736 631832392 574022809 930035195 17462699 482185355 407801730 406668812 375237509 496785932 928663066 585420471 383303774 578257959 506972586 675201745 623004472 586323393 489531292 719880312 411403511 653364051 833764130 155292425 911116655 457054499 700671423 128434010 319087882 693023217 588492331 560397319 148470334 60751103 878888283 918774411 200504072 872263629 344863716 225976565 791702972 566369789 198163952 562181131 880875922 271889975 893637036 350382936 534260299 248857128 766148249 48556888 485012281 825529411 117765545 459437442 671334131 384722137 860687858 828659482 918074107 270417980 107139994 331027614 593214219 832812000 789228465 944278066 24898682 780797707 730267694 271773791 929230236 874407365 271620625 309645016 294885436 894584655 803401164 570171957 911448394 678215365 550699795 431126735 648156329 117881703 184532524 39969172 519349007 645898319 535706418 742937336 523162065 769326682 127430834 905885309 388442098 752936890 940332399 152462845 857416511 842899353 66348081 783244193 434689023 213119429 582885462 143378711 560971583 321359405 182280282 229589478 708501225 777662396 543657043 459546994 249564922 227884538 258234102 315191099 473855012 659659836 428834071 388542628 748303861 324481658 523200880 149478396 576321265 498617986 869122504 179404948 421850720 322348150 764635791 6183261 956430802 839501795 694170142 910123926 133498767 944636243 262086799 667753197 898341584 926448681 754716963 273208275 986087128 910445360 242566808 120641029 257594585 57838941 960763873 672858159 845924584 821399512 488395267 396910611 969788509 514584903 243413398 989549307 827606966 853979644 309990419 370436067 457755843 844688473 893393201 32399936 240944232 117429749 253168129 542261939 402417110 76843773 278453341 623595996 865656965 861720418 367511979 217506745 461193454 165086839 882469136 309544076 759178930 44095061 236007812 703358598 720926460 12316449 923102912 762775846 775439922 300543315 726245780 590037690 762161431 669472722 421726160 834166744 248078502 761317453 925175985 614637895 884661266 422825434 233636256 550011552 64256866 164472689 516396800 674490767 229419648 816737203 975996768 236312961 189999561 585124792 49985487 471414053 788237353 58449154 248649271 646600310 429201320 165445054 497705033 461652257 369023381 653617141 5245227 201191421 628368397 547746769 658793349 354675804 930992246 567790902 515310374 665803044 846035105 642376551 123010813 793863196 250442900 162194484 520760074 678881664 383118612 243859254 578277024 545537951 549550391 514685817 945789985 394174561 385593490 743636984 257196273 695964471 599713549 595000003 514893214 653379245 782765811 153064106 594661098 803123953 190195784 568730620 427685112 693345673 644373774 350183904 848844982 127448095 239227625 638757597 49305607 30420634 703130598 482002323 711649200 685954697 101628011 280611990 712786796 889676256 933858648 200754944 912152036 501683888 335559207 197585037 831317651 848825971 301969869 524284331 532648631 308605300 525085414 70031433 812073059 940244554 951112248 379225602 124078587 52061209 537748485 976837333 61199124 233179746 984194633 982030851 76782642 507505263 671114107 728239884 536747032 446592030 202324199 277131871 502271949 826484133 64982311 664643950 630241798 571377361 967263917 287552252 951466187 809060853 659981026 242010842 432352126 236897278 452415147 41850620 585934785 331331689 351165128 59992237 619621588 409317831 387686750 389485795 130164115 403334516 913969197 512671907 848152950 618705977 248791232 637004180 354706117 715413918 763343651 10402090 882380991 551910520 678002849 719163382 994917039 824941437 497678470 752038898 914632330 856107036 364798351 504608126 138607864 375887315 384295676 445991101 325896769 438271775 846922405 372746200 285715618 782345226 50721177 953303202 323203637 566963204 12551181 120795372 881156101 365897778 894252955 314900125 978054390 143373645 569106774 154356094 967237180 778188613 862173807 136281636 805211261 142126108 408215047 288079153 915676849 126439170 316867109 96153446 428238378 826847792 430244267 612650401 57511427 76328415 387913051 933696008 866698868 52691170 842721649 131803420 676679512 575280222 757243987 134220013 443081781 120449380 592254594 677627061 829711484 58491594 410625866 765555299 886656420 911830941 585295979 181256650 867449623 211603076 785377877 621271842 520363487 749815626 187427810 783732974 213038944 728262631 660762815 61824092 336383330 907097481 133404863 946402203 575999049 35231547 228793775 418134684 234066267 432867858 167573470 409930124 618271504 923952568 970830796 240625461 536260335 828604451 437751872 828758582 769372686 502971959 8188364 602488717 497397733 948312383 466049580 743774337 904994595 183399395 111559072 983503807 655383117 491625587 267025290 627309751 722967307 341973749 58721717 608275081 556468080 223582024 821919082 709559900 858842332 880113873 813474882 499267336 802629220 641829287 931481233 147298845 631542451 192358863 734724241 303706099 813230384 348064880 426303929 153383492 652565715 887447808 724813812 201356920 647208880 538378952 301173579 318803150 695019908 580825738 540698068 579312167 730382118 471362968 992407707 221022395 999633180 645486282 91001827 916814246 695520272 693589410 879015342 840571001 481645350 617155574 432757024 63640333 732614709 408837457 122852530 225999420 807221642 135482809 946113637 853132513 614755159 301163325 148768790 61002134 651292495 976974650 152384172 535994001 195940564 486385472 322576592 231866873 971912420 727604884 721563452 677089313 320875352 95781964 729702247 416639126 598670767 392383325 295718264 615518994 473795196 443790002 995341566 408871078 178929524 552208004 901887629 990985690 100880686 170731025 360911079 844773656 734450784 992167761 321480728 43179724 32240248 62873433 424660475 869461577 8040324 253414784 736648958 915245930 279391604 221119227 315515507 42490954 385335608 248433929 480002687 507570255 215443286 903843706 598996825 739327193 330248027 900325798 856443439 706450047 498698390 805768991 659297177 817269901 784937665 2447849 509732117 816764917 954674763 161541853 448164753 122506921 749032360 806788396 963365210 573802311 310179041 103781854 450593940 583417473 776883168 44314932 758686385 286700225 326426542 776349743 372427461 199283815 56250012 97057248 987250053 917943763 514325498 306474485 692428337 393518334 89954275 114975948 192617847 28614031 692084536 152152895 944348855 732297442 328984004 148478550 243360239 766623516 423327538 698438215 183992278 651882815 144954226 827392696 216767493 420245703 905266759 965814039 193565090 387299869 915165752 675030037 412962420 486267013 841087584 352434327 603408917 282163588 589087876 756741089 986711394 276684202 317727199 785917795 984994525 369671394 671791509 510003817 560013599 555123041 507060076 855526976 172613660 665111544 34267832 273224118 218477453 820254636 26966748 487432836 327375159 918165012 475781790 34002449 273282215 735351534 634507523 566230362 992521276 959188872 654833037 37786791 961799904 956501372 520259501 28077941 497493102 861435566 743016179 658724478 954855919 422947323 639029867 555547096 791632014 647838965 135372445 341313461 748070600 527648389 656285986 711091714 392866940 844881942 180664320 834121918 574133548 747278012 993336082 469656108 638249410 312091623 434795089 828776642 204298893 737978565 892189548 888344274 52073321 833453376 429370204 471764900 67738422 675482824 371824130 142347601 358244729 534218235 793944462 907427646 43628654 613334107 112676864 731107438 230931585 396747765 584720509 42126423 922012500 787000073 123716250 318863909 497093529 341214032 859979284 80001611 121005297 783163790 904674414 86659447 514452282 346926723 637602050 130567891 497487495 440693053 978358900 61955999 604945104 101736348 697438112 853115180 823153832 543649067 531788961 410502035 811689713 808004699 525688618 519324628 815126871 686003990 477220880 607968078 231418000 329147833 769893468 250666400 301316696 183534390 800729252 95835425 108888593 886628910 73284929 668499621 998304909 554925312 178038520 441122645 624650171 958637815 961749952 776517592 342100930 210960406 358470417 957776175 941731397 751363302 168376280 786471055 804362760 16789187 717174514 860732446 917786326 980292608 518604843 449692309 486671261 812790811 349456662 230411706 24732859 980459432 729368125 317093055 736540 430751320 108983893 853164738 85362760 779943746 707658364 291637353 741813884 477185205 609804941 817888839 179006076 797528076 262161770 251754385 554409358 219660507 657391962 725277190 317923543 291559720 42931485 28813914 986982426 348813409 772492615 652344033 325025275 868907993 69591317 992728015 992071898 498702019 674438824 844639014 357021242 257145699 747506959 490292590 346181355 783133874 627206704 250139751 255179270 128430319 47957934 592060439 309338930 473249794 872673466 698686780 966353771 531235263 425319858 852007226 45669806 19187835 186262653 386231900 682176034 968239403 154079837 663119965 348695942 423454784 299129368 403902867 289862324 64876114 49053195 606933187 399209868 829187291 119593883 8940485 888769112 442960712 37003553 297549187 963900777 372299167 910141639 205299306 606174335 314561690 47716519 314375239 964137423 965026628 632315412 975890130 437120983 465598525 838690209 65801040 671150640 371606767 398028759 227349607 792318922 586165957 32847232 266649934 535759989 508022939 915494285 219239727 177997765 103903606 558361950 570502501 857339829 983033769 603227487 342180831 990797119 886141633 230615724 921734063 9634976 511758808 991174973 282064526 668287511 881975560 90840343 114145601 947255375 148514221 378928425 368493960 447558663 918753206 599495123 197225828 568639278 834867705 101056852 220821299 609793154 236520760 774235271 349251894 683133124 328434181 949769725 215863301 128607972 319810825 252942512 545801000 479267177 75266031 325598767 708724526 674275370 424301904 881922148 218145660 303192398 637835599 921365570 136498902 260911486 563403155 679875056 399273470 43071660 344958690 56861418 814571826 44166132 691302497 615932210 929028835 500014278 426750216 450639734 206382668 780152438 364561316 895808061 318840084 727077324 389605671 827923919 809270468 928632162 204694046 680471044 434426152 854604891 433984331 766917106 990638404 296528799 227480046 177666719 129971176 343698702 668167866 565156147 825486508 237899622 294448919 262559135 259111886 81911979 239953153 409177901 785711441 625181281 112338110 901084043 13952894 805730978 689687971 755107317 41756586 113037595 950017023 356117366 309206845 886920882 323995897 367511288 323929816 981641888 670300174 150408294 736596894 235618850 247250778 712975923 865941682 682719481 909925642 973969715 710481030 637204757 658726207 393851039 986145868 206749463 25194764 567914778 445471411 241114322 638382532 244881985 147065374 95072835 788012353 174051278 610669103 730026968 82513633 888481614 894988584 572085055 997086457 100406873 107271427 299019395 523391921 155672619 673804841 545892699 403477875 981592052 267896170 660855235 888997251 197257036 580902012 199475108 887942778 233675507 190591067 97528241 149373350 864396432 102080120 797993738 202235357 139107123 181641038 934732514 839732617 311949438 604989618 868875132 445779298 222516967 227344493 886849723 610074445 893789974 290147127 398256454 628195996 841965872 195049171 864088288 950494928 276171390 493595833 406463721 628637119 601730018 755735310 439087531 679416525 415406421 428895792 671644981 777473074 200124995 91848244 507066625 914785820 347758309 755922729 454552600 72096746 296405487 582056298 588549989 410590133 800377548 706345617 452343303 803839396 792907377 879422349 28070400 943238940 746082295 151498891 345846150 492019248 616490052 410499889 397450474 351805065 273878941 661464390 332927611 82066188 405453912 977527526 324008628 939052566 770012390 759491388 88710445 608077041 983128437 813871736 423019710 390879584 730436605 840839735 585465194 340188373 453029176 257390129 180062840 727024840 941031771 832088275 365428415 670614091 960301890 386920898 17679960 94921568 332616123 918567611 30149258 354793406 717915803 380744419 689818706 475321456 319238437 676081925 994354822 696833718 500630464 601569967 166495882 482252236 585332282 345233582 358069073 237362680 598996121 450718206 588349294 838794216 479633760 441196917 900625348 529349916 816879680 3201427 129955731 197145652 795060785 885937672 254782271 984505345 183255919 292858702 261181318 935875105 14841634 197804841 6545627 704792748 18320738 536413589 640924297 429690986 191242573 756136934 827045262 979935348 568035197 778372339 4909721 238153231 356802505 24819248 805559215 334342049 629317689 561844124 628914762 857782386 642518952 420390862 913315132 990296291 403528436 445975153 190459752 419217381 109226322 70937734 963091093 459937570 41766766 315672761 337356769 583829156 333106976 341016093 916823698 18474438 755777527 430832041 202707862 168049608 988647762 631612117 844144818 270481882 869621542 98440473 831488383 732469797 109685671 521030819 477915162 449412081 705766107 14345550 663866575 440196472 561452391 406542316 45705315 152604738 160604293 728788730 80844207 697537714 819170395 302332952 923982370 59956295 851754068 91443805 348965079 358929768 653612471 153329740 927803237 809759523 52829011 119404712 929235876 251682461 18072175 111940105 489222236 619287638 617305670 526053067 650723129 602082038 784973683 333074568 221797396 729091146 738257016 521520997 399744809 64789552 311276215 970730171 135244272 214319102 186057443 622304028 533014315 402281280 234975952 568870102 521060583 149757030 680703410 159700325 965092914 220451963 282054648 491449646 502045353 742640910 238195810 670929197 400819518 840481053 100406288 18235118 42810907 120652907 838882333 589321367 199482468 749556177 197974650 413373181 710122539 752883532 436431654 911509447 401838449 348492231 976332466 381480399 132394277 828838936 146823291 86365472 337019702 955506160 288854688 447051996 362388806 922240675 893138169 201264789 957112600 268596826 966847793 610237197 901525542 169666548 377025864 805236542 917550109 64576044 361404898 488750031 943165550 766828005 90348506 625815768 315313221 239791502 561381147 391518474 830197341 836704309 899236489 189565709 462771023 815605880 69800618 955498467 507716954 62417287 544482150 136211135 522624639 652832773 427619488 393824373 958011672 336108714 328369864 354487994 961364039 834075786 781805004 10153150 143007136 660054803 816673251 909761486 125151960 23861499 949823314 597565053 57533239 380260880 672362310 709757786 926768200 638821073 515674116 165518950 460559676 376426967 11371567 914268021 843093992 176128056 518725620 822739983 94228016 847004188 359047971 383296160 679897720 978540701 765669555 106450855 869038381 977939062 75179618 916741598 191706721 583159140 85070605 861325989 801445623 577167272 563846471 862851738 462630682 35040827 194924531 545251301 563602710 365434425 280364888 134002954 323202695 51366438 552285686 37271181 163679613 178476574 987441018 156990188 411490106 856716330 627014062 828371598 719295262 174878983 987597145 545005712 952999896 946409480 445004860 518379728 16971653 442046827 418062329 636829357 390444779 868636663 717809026 54369294 986292328 934069433 324250308 184330861 99087817 226263122 257150785 522313044 312114325 85621699 610426741 409005557 310581937 788040349 988119218 364189103 452843984 239038035 451223372 155027042 257674323 319159992 790537820 643125566 433758045 344925754 553942533 292955619 821009754 693318288 214945491 343956608 124075931 375014749 656117891 764853342 286511011 112268898 415786368 701698179 652596739 246269390 371786232 140993905 136318213 477537640 577339577 743948112 193138730 988925876 257725209 763181189 967346391 56319860 439652370 382037392 246957782 985008761 899996803 891851288 38567989 986129285 565964718 598846817 18236471 543956963 994218518 843244368 491292333 168643264 410053429 811787454 967894585 376950577 747750679 317106144 635112414 543488423 682660046 672604870 477662475 840553851 628454773 297090283 77467283 978683367 443389802 960429136 623694180 827875122 687134806 889004300 825539947 20438869 295573677 79038231 684100979 344659711 795618212 274543237 648732745 863956433 819549475 107871769 282804938 592203380 404089964 497500149 776486333 927601123 845154893 154765658 183717985 913137544 627002280 914538235 839589546 251993581 584517073 598992578 251503317 257994310 548821163 808217159 780040959 460180654 952631552 820887864 371266757 511239308 145840694 679320506 920907395 617447534 468542278 156937450 220560400 947847555 214213966 312147067 108637235 969395713 372855316 440115127 438915443 478935261 583834592 930541131 737861736 956777905 689185157 244473772 203617608 566624122 308104335 412856338 191622097 80104846 737425512 96216007 58597153 887316809 48881751 358833920 684158842 383448566 593412589 193840831 240924027 88568198 858060728 760432236 268516020 298918540 89621497 822616233 273522724 545984407 312807475 799758754 761355499 390358123 503904184 169673212 335832727 518121074 427132529 166816702 455753949 512834440 241608434 83103494 433339780 711762330 632063771 31741400 292152040 760649168 51125198 381942520 311646127 135703356 676829171 723619056 15266293 183098066 427357422 790874885 461712815 72575821 569530167 217027908 554329385 950717557 872826583 51493705 171874218 445177787 207587560 288244292 409877627 830712794 382215996 716327995 550031747 247697392 992775493 162064086 709275724 429224707 654625890 396230603 707921576 479859112 467080124 432671272 969476974 50941769 693550052 609729652 546768085 670087850 748950142 920122227 101741470 422470038 78321235 813167893 181639403 940845311 490245787 626721565 177011198 966572465 961757848 354823313 637840659 542487660 175100239 234397570 885385991 134060327 298875004 499893006 846208656 614971127 628224758 369256874 78899741 658794333 214459260 896527089 460727731 102977529 636933193 505900446 346790919 279463268 450598741 50500600 57968500 716520433 445032308 629226299 994295718 10316431 2700586 788674966 575464476 104495830 54098970 19140583 497439049 69063972 517584878 893201042 929825737 47316382 480290095 543438996 882111370 234615706 598056015 130584488 649039088 285462050 35392757 638416806 26153938 265649863 510597148 390974923 118490049 780459574 577116666 681053295 480048385 975810880 123588329 772070597 97978126 86683604 130262410 270931673 467438701 14457502 21516532 42418197 947834051 386448820 266787685 492138648 880994922 779982857 354748329 674131397 873912094 970284786 860692957 295483948 212827828 690137011 900583951 318674042 40017889 618808642 998479880 911263710 479131572 911123680 301766731 169713550 634629025 366326164 428001605 762757173 827771682 459710261 692103287 632222202 647034308 405230115 688358134 195311849 53250998 998912361 594379674 870656563 19650166 255619382 72333021 89231576 732463253 533363732 94861702 596927602 30735527 156446604 110369318 837704121 494054042 210141781 577944104 152620526 554803442 600151691 532829142 377106220 928490002 33620587 483915921 141214584 357758988 43629212 541294460 285518130 428506512 154977915 543884894 447152065 66954622 587682217 552261282 62639511 914571990 307206171 200948191 543552183 136256602 928811074 440471805 865274947 688577740 880458896 856440293 324345242 53703377 191088642 424461257 971226415 475732554 329646179 555112313 45851343 582820199 607324827 394589238 557652780 626191703 467453373 231400210 992592586 866549023 231811912 73736490 975139462 467675451 541884296 559908313 409233701 285320018 283380719 244138618 408771531 800305149 42816668 616299507 311919571 169825345 671924912 911862887 159390035 957583731 914821569 317572703 962082649 277938628 381780262 527856920 388919375 195800011 94182675 505505662 883624938 753737570 312732667 285400446 734252141 383032935 305045451 598187606 842999822 999408828 47728919 356997358 36342182 836937405 242051277 481076566 653807893 454779537 639609903 669462529 853305930 823629945 797458341 678321048 471656658 687612324 972036217 755931804 233760868 77811556 917650029 26764168 357968683 40135483 609063566 245587950 129249922 260691816 715421057 799680734 460797870 734581857 402127444 109263826 263316028 731319445 484318257 611710871 997930262 338526650 517805688 264620258 584981663 896342083 103449677 181506705 591314033 691064077 218838320 469795141 67506259 725937862 214208387 384605867 854053092 131364072 17174666 938431539 921501578 878501600 187892933 723983615 47384461 351490804 699873098 110179127 517882750 641616034 257409100 435771577 721775382 599890475 102564339 19312997 485328831 276843396 159756654 63740142 156983626 136720102 431993227 461018571 542824138 63977514 856827592 567932539 284781228 543027459 462983952 145074334 912607969 970831889 72385397 810615757 161299413 592990946 332631634 798990491 661426271 345978902 642834550 853352116 778510553 311971115 410067531 979961502 859569416 124005303 674257439 985386762 394740684 705117710 330084518 128744279 280928550 351415464 434574414 497332581 223742407 795573007 761198583 472299251 797641173 758993870 382300516 708103263 920179536 265234927 886805346 7620597 221448098 791153762 326977559 978224673 97287909 802764832 797451985 248332222 9601341 760140443 592826773 373080434 663415229 767514216 357214220 654840756 378952562 45706879 493265756 674588023 546439313 729116030 158685219 623928936 609553610 855923337 782111096 541804573 751224297 873573343 446978948 680227206 413330009 160421883 382836356 602886478 322095986 748027096 313162627 425903115 569469149 463634584 195304116 702974340 658426809 817967223 9085537 821566009 413312932 681241512 916595499 921748343 790692186 297896786 161463373 697851255 936751190 157453230 300680776 838560023 397115133 749059425 19886180 789143089 709542999 231648322 158762440 987006893 460676992 754484067 404164141 788487940 208426246 888344200 956172604 208024233 903883155 923342258 653303708 852693332 701056165 985847046 349810712 39625848 725696977 389486084 621797116 895203569 604166847 863009370 879266220 225137256 708434890 427005507 952084166 407031846 29751055 294765978 183816644 773336284 753608180 427087653 984623958 649066063 509983774 631514162 461346755 776958836 284214807 324990822 747031607 314989727 903632283 598864421 370506909 906816935 983218775 40113025 81651749 364826177 867046682 175880833 56185457 826650751 641798086 479111419 120448224 505521242 17074573 505186888 913249261 218805766 922963551 491739655 356211426 82784539 375888278 739314594 815617832 952926218 992181326 767389446 810244171 35583535 979585492 116200955 597611486 548136760 79242382 559537967 759948883 971734294 635751525 875950417 869530499 331992597 293767741 229395666 690499603 553259383 111521015 13465667 990962054 966377105 530749125 395376884 484293725 607292703 541553400 285216198 851892620 85841691 483190367 869911400 826367932 47500220 917291915 858025362 83136956 843513207 10131405 193712618 731052239 414173052 754256654 194741199 947669293 683789115 285288239 950427779 857753234 147100141 856552881 433230213 880125966 969995136 440258913 847256442 819788169 497863906 374942274 256400401 139108907 218623912 994459665 876677250 368906080 273618179 189587009 670000243 379515543 454133234 252672623 490141982 80514525 985764555 955371551 307013556 145787251 522271559 25620800 919979547 222108451 661342700 572324065 421102038 654858186 848383224 375629855 891788057 774586620 693712229 275110623 225685063 438263140 495202587 345952000 264857627 885161461 149754202 991006335 625665600 905777963 855704212 499020564 149059263 802812698 16615746 228047287 869114214 975005421 963845607 932893126 801820127 950857510 751697107 458667986 7058002 38879843 28610988 259611390 657775572 212662336 91996212 237509640 7858010 631410975 290728374 437729378 221392896 262013042 434804275 634656693 70450899 103595170 95499174 63122678 566524671 543860310 719041950 65816165 55221748 981119540 235699454 568738643 338518940 998391108 549608316 764660713 707272353 795868909 393319093 734544253 916027197 26902632 111433419 840309451 435697384 832131438 80220013 518500369 813156386 20849309 399186109 122247834 66345750 43707735 940106829 760571490 986561629 836254498 116631039 311277025 311244773 269468481 700963863 47019554 506777121 772913459 147508477 836916842 562793774 704392295 821398754 373012948 783622933 181971570 76641922 418505843 586679118 55646915 893914308 722523672 371753945 851898329 217495918 610348336 112435319 975063354 897622687 634161057 54579719 333322131 662094745 781915101 220693459 106369397 633810915 706509088 497841937 358401322 721052879 673989937 790873286 186832340 628865941 317083992 397943476 292350931 13856299 923886836 588599275 780239289 638781925 59206000 775846543 312460992 619030396 778119926 268897106 136313960 678695768 976351696 82857054 778056757 704814498 725945888 619838648 141485666 248031990 626570752 275907019 187090231 439345819 426016898 753333806 152848159 168062169 381229416 383786048 126485491 627915742 609128567 150388815 234948824 736410376 347539963 902268511 604477942 307329512 768467360 601740383 583562129 720712059 748910221 956242872 630638683 625897467 440341294 160205704 983680964 712347977 740675073 590072661 901258490 721328352 154266432 271329924 989263305 488393355 36363784 979841763 561381287 382268800 684524343 446802556 625735561 306886260 339137920 632103742 897508295 563617275 489794220 966672128 190087389 428225638 865068159 552828818 510744629 706627462 860466241 153708204 706297989 694897135 352082019 149841440 339463079 613436492 963673899 475585029 223462241 420120875 263289620 99609530 426572190 988653272 860435464 515559974 804282876 849465927 908529951 332892360 390456401 459118953 752070606 934584101 555318866 157641282 725820739 111897748 736110173 54647358 576746196 196570096 426777869 632592055 159814097 816305779 263803276 759628520 745187007 217497507 306044268 881317637 897735136 9352542 783154216 886579211 645630418 76349868 107611746 885304567 791008922 159246398 353888544 441036810 49755167 214943311 553055874 305745235 86354091 338504583 248413365 619471230 515887836 89343725 525016096 491177070 228322957 972297569 556276516 219970362 389418856 183563014 907827117 619651506 588508621 105390401 964132137 105943538 965598219 551269373 516196819 934597817 93312217 543048114 232647324 344411376 484314765 612093665 589634868 602362689 815773114 10623308 864721689 857169658 155964383 872156445 748350167 109893207 406222605 310282150 936319938 471513628 776636601 634138204 371542945 204666458 151741133 402404725 807606932 217035965 875727907 908986554 582322741 978129571 166347044 627615723 902563255 674317188 704533029 118579756 556758712 146705782 302833779 495883217 322434698 931905299 826805966 506543084 119389757 853098916 372612442 674585951 746607280 728959975 125164908 991823213 514925063 766345687 328374665 122545844 786503942 461357440 496436324 823620728 601082604 603756272 215510111 49029716 133347760 406690823 189419243 122294409 34480879 341111478 745902363 269087042 189056736 537815496 9022421 97123889 952681848 109809056 584081532 321279577 42743846 584689567 507028093 969031977 933458011 299242294 736756953 200571660 833714400 615276615 412682863 344199683 298063436 30384679 902629520 533362928 948894649 11340402 74740297 135404026 52498146 279290621 119339657 444536351 971053496 442544584 972898688 443446026 154618245 890912437 134492921 517632616 487198338 105366523 432272180 715985262 800495280 553410698 201462485 590461416 220553424 793097176 279281912 634914113 731471967 583311198 518896371 882375030 314788893 984242352 537656233 976959268 335072875 965759427 499039982 880714006 254721556 572727363 364192459 960537087 813284615 915147947 321736333 930074086 86805008 105233923 295197247 842436165 980245221 257609605 391096919 517749902 667824521 672082810 78710116 677063014 674436590 887089649 322610798 889092217 950547195 329686027 416315806 716644288 482133468 689910127 846575043 153119128 274124282 497564917 233262496 766126796 28669013 472279355 858669777 981675918 998908252 219200870 926372723 936105525 891205260 763043031 210108524 642055490 255495299 944216525 454929412 66593854 471721351 962048130 603948419 934251216 27180129 373127455 890174681 732313476 543598723 688665025 31027595 415002813 364303131 602811740 198242192 142060044 241705749 514195877 489623063 901286673 36535368 306799843 866770486 713871435 473175129 734917265 632349889 500214328 800706572 463682294 705670203 181266441 988961919 861998263 632992845 872917900 57090664 509201078 704872998 591807596 979442620 220428180 141295046 907977837 336630765 704066958 463953011 669256677 133636738 353028537 480511272 146625041 980592966 488912061 929967407 95623690 666181840 151783254 396914833 454504668 926453951 562548113 371328912 744762132 626937559 839656486 728738053 805591585 4849919 953924888 482977411 747616975 758653396 37013987 957469550 778810863 960317673 840348715 459742443 356616279 274169231 238513098 523291859 101994324 798201812 983893028 791324759 227145561 505298323 194870868 174707493 840569067 991724667 292202746 997164219 767359801 310227666 668897658 643729160 758469807 160744523 940519985 304218633 208565871 545509390 508645250 446507530 378035383 302846449 762089195 678869881 297676611 110873592 210809105 900091117 174497635 55762293 133358429 242799879 840109316 715044537 714198418 596459922 956642149 812954255 256806371 342883301 331358812 685902061 415574935 127884937 927668663 239562122 182836843 844703866 899133825 293747815 913912295 479487447 305249865 370418397 616737459 562169646 577505324 538390057 418161068 103972046 285467943 326915461 329105653 724863667 505996989 444775728 525508412 296344903 774163258 362762936 566976040 596973194 50550505 948928865 960757253 131795206 399160710 809594060 816759737 48941649 275872218 761072128 4376172 539736853 169449101 57922330 853559555 630180410 78068998 90408437 183474889 179204512 829478200 728965539 324783882 209445985 590613040 754834005 211955393 907057618 192883548 148010059 339608287 836896495 530241472 738973793 681769447 413824423 542674651 413238359 344919399 833550706 181697897 73577803 585554075 952937658 35877687 313582634 131704044 874558488 158767428 36783694 648905585 567360811 702927791 204057935 500665302 280606354 239368489 781742882 232947495 121506762 565303961 188787898 23260467 921769328 335215246 521053335 69248059 471054448 886765343 156620838 531114000 920389728 567884407 6120147 935454491 308955239 930495266 38129527 241132672 424702025 240444259 983719292 659500293 600465969 512745382 217871388 201267227 587190452 802129941 229462853 529070408 100234908 280994743 926410234 382747272 627332394 415241463 110802445 447555570 544739503 105248692 677624099 545101569 502480264 164597584 664273481 869317942 175696100 781969311 631939648 462370934 610626149 309211372 53936140 53731883 693564683 260827076 523297024 492626834 57823231 895442826 653821045 369901924 664483228 479720401 69806335 967617864 75008563 216281138 681074659 915661614 49949034 797494109 323557356 204799765 566118424 490738908 428008260 68091068 632528747 364298389 593707015 635055222 855191556 828771525 244252168 706081973 963707577 534122969 663367683 527817938 60771689 599700660 165977826 50607802 940761900 675286093 876838370 499349650 60753604 738404273 379579694 562585758 546227060 317138844 421722879 999487271 418431073 786209941 563246124 512030032 523008429 830611045 778799298 834492848 34503189 945856451 942007266 409801900 159686924 290020906 33004143 528607741 235442524 200833324 698861059 712377702 441742182 168565456 632725660 300014143 382855638 819034569 783964495 180298121 613668752 717959238 882121889 927875740 636360747 48527150 70464321 311065829 296987674 280856994 12636101 727125004 846948260 390976666 800712723 792795471 341898589 528302995 592024770 869582765 163789506 151203546 360646335 720454494 174480889 554836523 513805290 295977680 886740149 31813624 630996000 582570066 66675543 382273658 604815356 4332437 561538558 710270728 926104552 627016234 316669979 485632266 966807527 710697555 50737093 676279612 627316470 1049407 127305238 887573618 581245193 757842496 259923882 862259169 514668973 276170737 666807933 539632770 361297948 256005684 187666536 114214299 330606542 408298443 32442642 554362252 295111859 837449403 921297248 140918674 79074764 400309561 974840227 963216780 953113513 117798585 654439113 818227686 939701632 449821219 356493148 913699036 136825452 707933404 160416760 963183179 433203037 249633858 662548214 651931762 969377136 956207229 950319691 40389037 58993068 959492148 25796487 60811222 172028777 742312995 410491868 607017237 7059269 113681337 382257992 299260431 842557081 191320053 943407397 333493216 857499476 908991169 577754364 785502122 947388312 963384221 602759053 653802913 879177477 327568340 143239442 68230941 340056967 814953636 475356850 716751099 823072648 466720535 132677160 53504534 158578597 370610429 667191454 723783499 342966323 211046196 241838929 141632191 731757365 384225107 117057819 580908986 96714706 778886928 380548833 785848002 99690801 153839456 137789754 276223505 100277900 273471116 765380408 347437119 623351311 133813903 579798209 908052966 6584582 676676283 716114610 684256180 593631708 653311526 737697390 618932830 67549452 690589431 884221417 793430747 18443783 915722605 126208899 961324156 842819834 126512009 386310013 836549456 688650792 320762122 950323210 249948299 315279070 931546509 772132996 246569979 828828028 5852350 92083450 749923646 769313149 306466849 411671840 698261931 579806326 847792666 932960856 372164173 909040724 146918649 494483141 391634849 273814875 65615117 52438920 294632432 465076763 863184040 940535027 278075568 660408495 909757715 274140240 212775940 115594780 630458648 830387926 328372520 121209133 467959875 809287858 342014361 373761321 873794403 35789467 658872979 875281963 651381911 601650912 774910922 107158408 494448489 438751748 703679883 220727499 635666982 589075487 836170595 137560680 23582609 728820978 738380633 35022753 768640855 747719782 714095142 191349600 553705620 961083614 524013449 205915271 743361647 705247588 528312611 140985654 93668711 834359122 737550320 478612191 235015151 945854543 629212678 270673459 130332916 345220883 103004546 521427127 79018112 719191263 56410771 112688259 163395061 870189351 699827694 277733492 922436870 716213427 803609256 915263551 649986598 730613655 503211007 807341231 290865876 158677156 822924285 337632524 317079966 237799496 121705012 520219717 568307988 280223167 842929736 585920006 193342428 430263127 685692556 211952454 446844330 610574071 644082171 614503849 947878350 389847191 328089597 718565195 420518576 394734097 606866738 501594876 56077898 399311749 37412760 666366088 950284283 90174945 701312307 369231249 315793622 219294388 157450970 328902609 344421332 415443042 421391028 172258369 23083853 73869459 332089466 710325211 523224512 235579900 646505520 768662922 525314547 374789513 994983485 620491626 619376514 206963965 542221858 674273973 364912096 67749254 816962771 802945063 804138768 711594353 679757703 173137239 769264468 630616301 841673477 813680689 223678282 302175399 566275143 699755263 745725865 478094942 440001608 420243942 279910917 575435715 355274728 693434638 558946773 575740059 282527686 652387873 112215096 491598826 419752343 138609250 345102851 583750155 784823805 777213686 413673790 502695674 839681898 764444636 223550699 672581760 996610976 896221185 159956774 775861249 858154433 529546090 117577294 736823624 263553842 349317322 298093666 480640069 169415226 66121051 824324424 468327710 477892107 326077045 899887098 643238468 392792989 765703076 107448138 885814140 743482505 376428220 17648159 393417915 817290844 750474861 998466464 600362371 337809455 413851361 713915713 931347341 666920081 86404452 852920602 734778849 792378637 570612703 895352908 853318319 650040644 406342599 915389074 975046736 766327743 932618319 345599681 435959399 592635837 811246881 84956545 417586803 556279199 659021142 534157728 557769913 592043572 783171338 187378034 919609771 533574466 277667078 522643529 620021650 285654201 502461086 456133603 42035749 231799703 970025299 361545804 670023749 737114146 767012358 63719283 906530209 710869517 666281671 860630408 822891343 45512952 557767842 579688863 383465671 124292705 135688076 330606972 145610792 649722522 221734605 851768791 465401996 917305961 859311093 145362367 338024472 140092141 580386346 398532140 121341583 531089489 987538505 696173162 418875658 914744682 572681318 522465532 614090758 820855135 246525130 596735605 581632410 921164649 93760206 31212568 354026201 798105170 844386316 532027308 39894234 812990944 390508488 749108054 742956489 425353393 323938267 272119483 499147160 195011214 320506403 301498346 881175573 855684097 104747304 486625483 275202184 140212355 157535239 926215099 432835037 915916447 566805883 158352181 42307711 637093014 634239285 551674001 520552088 422053296 410704950 181657195 45990808 46231464 306604708 596132199 815411154 137748671 342435968 238081009 755345440 840729850 820914313 205651927 83759208 421645280 607619842 302946720 475604120 254271393 773997874 653477423 786552775 680157045 527633219 139980423 239715324 272301057 484521571 19935241 804199665 908906044 125326358 205711264 124435788 872901581 473604115 285131281 469995989 592930421 265139446 657431095 202137380 976959057 11791741 36803778 419157075 662991692 657518225 295727354 795962649 707015296 616972424 527964399 615319168 544713234 800367556 383188759 747522495 233535905 647580156 24463925 437240599 769393345 316242998 149587856 392613893 704778346 253081527 442670333 364812650 775410079 258279702 885620734 225741359 672480963 185676489 537653436 559772216 694840865 745525960 988515892 137188342 122641066 972787308 316855999 483549958 316230619 95392426 387444727 933222341 558269084 68567065 550587984 79477934 454147285 642757355 841519141 589633973 282528102 986570003 201708248 871729485 793432109 193189757 813321236 287789464 201497125 919860448 225383589 742691814 484528986 587934666 95694782 820238845 854322516 607629953 436380496 451523712 893190123 740069302 462096240 831178570 215176874 928815719 55549986 69443665 106733797 645888030 250373917 922285646 360092345 197053368 550171773 7595402 854544766 921594522 909206478 969794963 6507911 636487873 886164680 784174538 839501107 55677890 33197968 437220670 415664959 1052961 179399828 122604900 953664924 353221589 209817407 676667623 224897042 237779463 6801813 906129994 569369619 375979761 152587623 889041855 114012765 650078719 598560231 804460409 75668664 321230641 378156 875875357 447517047 48379579 881459095 233631729 184238344 618222094 778090165 180365050 640388092 133380146 16218686 112066549 393230668 526860887 913742055 67880643 33703355 991467040 328535374 95364184 839007982 895170256 399741224 220418390 115773439 357672432 812482986 612162040 437845858 799524634 512827488 529896877 492405156 13650818 728007079 753659126 520687045 128205146 372528041 397826222 502803334 411754866 322472267 949031907 332827650 821478088 576561118 13331973 638243310 714957197 847763562 528754214 212070462 960837357 268593603 401009467 930470198 129927068 435416581 206981791 601106956 154018869 53572379 148923476 17540159 369017907 204933962 659626629 278604738 521142850 320737504 394472508 561877925 552707168 28553125 467051180 192268000 296898314 184662113 183287768 981167362 518480020 854099819 506879723 743695016 571477680 18449863 397170767 149714963 863763723 968485268 421749922 473955741 752938669 385311399 211003317 738231011 726742558 952308169 157309848 346673598 86718054 296790922 423509505 870915389 645126615 646060196 581881468 128572578 135574256 972806277 82032531 232187056 528236097 845566569 530269338 415396850 548283037 981960043 412472387 666290182 856685600 788478313 290276708 676146642 708851743 192487559 134743547 48901115 546280135 148937950 746471959 356314894 165216335 378671572 71055006 464200619 342240321 18142966 577569693 212760007 670605762 577275512 868742524 680459308 737537694 365230518 518197707 572348064 221057229 433762576 647769684 993096584 962040226 788672786 405766448 296731870 665452653 184975552 67896241 852151291 634433989 360115052 855298338 638597625 707601173 840552639 189700997 688878003 195503127 468878647 641711992 638315533 309137256 89695214 419373199 579640441 33878179 129877058 811627246 895016041 597259171 779295231 935841879 15359500 865746710 37431900 777905456 955147391 331255520 250108856 948370406 927783513 147768094 688283960 26291753 886372077 239911635 754075475 853725798 28040247 276092046 586889729 201266734 532825015 237502465 875469956 207596187 234887896 880256473 36757856 864554275 279236259 130299594 454826297 302511140 401461365 796009166 289818283 960312592 822380074 685252658 112860352 409152267 723879056 262588207 878267200 898607138 392739740 640567824 591398862 408654833 186015562 906306221 907640685 783566727 963015745 815876788 28583471 225481290 310561543 877381103 652700133 938274258 574539145 688562175 702588069 902892801 22391463 483288192 629106061 210730575 771326277 659907272 432184683 375435622 249608827 335420984 589672105 316212408 546663927 184958329 99942607 813978339 333530002 530639054 122218984 114023059 670601262 934250532 980996648 173208781 692209288 972101188 609214011 996442177 35697271 309798166 716658855 411718996 347301723 420980192 534196775 668861225 590969874 907438392 155208441 464428798 698434843 96465148 884219174 978905670 48166585 460162852 815786365 713602751 379164051 947819371 866882162 410672850 424587962 308848150 983048808 477639022 450063126 859361790 598282613 705330603 403234219 96992199 687047612 948778869 773107326 471076611 4407001 540477383 688290322 81737511 185714446 697897248 205932932 342222108 142095040 50636403 330912036 549888030 165482789 439681066 134926424 158811421 426729490 151376070 691946863 366163587 87791485 208323211 381564889 779782861 589037268 457417616 37303564 740630219 62841717 601768886 37796190 861585607 164379394 653572467 886260991 456651124 653979838 903498328 750947905 313359594 968622139 524815761 922549976 653047752 108528943 293516435 140282413 130058658 94499075 432692264 62849016 523100283 195612566 930739860 298607352 186932986 656989417 270588483 888257767 497667540 674354731 476155910 229243543 424238836 314674659 11683380 798778298 289169611 836842811 712359798 395642921 910026971 317919961 18467672 992527803 696052363 965839916 299635125 816359712 977748561 547797322 199170004 691572899 653141250 898204644 991762432 236975726 854135515 566481709 541670048 483325927 412141900 934276744 640990674 732737277 969882019 339175928 206234311 491444488 86225896 42049244 62776307 209747934 818783026 319838971 682253781 511878643 719203840 183330113 145578830 999933640 538541988 533001623 320445271 143863158 713219004 586718439 800914203 408263812 179793166 835670426 344554463 609265198 842119962 125915882 867025264 263787033 654680370 315447032 384689401 892099882 893518182 46358724 449532192 130965017 776321971 641005879 291821725 328787872 232567920 621632957 925457337 477804461 987658997 493782582 687891445 877121103 955000628 107675558 656195967 906554028 120183904 786297111 817487728 285600930 609697679 987632060 404175320 320888522 583849144 907505459 294300021 869978845 330345943 542456975 475209631 834143760 97768273 133595692 361889676 447554526 495866446 552390204 664988622 802463860 901358807 295879558 94055927 385351706 634604437 245237397 786923321 689549236 649421657 91897927 413685313 905769572 777473263 745127333 971290382 896391499 823620545 426700079 994516671 269027750 51385363 411395948 457039756 618550616 27823590 439276229 728023136 433959807 290654072 276401065 157347857 955148649 620625677 854006876 879472919 191222981 722089810 587654603 570637684 936735608 541939045 757886625 568370757 756131117 201217938 905530324 159389829 7034130 640741330 155413491 57846993 740632812 167229565 526658033 938998392 367618869 534556441 965340556 722526766 517906238 963879770 415081453 92049779 309509118 502280392 401899959 978575471 752645523 859817243 691179110 763382150 370199685 93009768 440666358 564410687 295474128 328865530 718324098 691609733 561490011 338713733 103604683 372497468 89262734 639271515 777163222 202335626 595847838 314239663 360874729 117077179 452580704 270818701 325773666 31044797 621456627 558655633 213171522 114761838 365926942 543497058 98774059 304787978 359322022 997980600 482505026 357630899 186807477 148974384 845204806 452416801 405078515 982346841 485678045 489203601 173038727 879107778 833268449 15700163 291835413 154553233 749609736 833763526 806490018 456882219 697597724 650864898 812780504 772599998 881911687 868193655 560718110 436857283 862064734 271299660 14822660 448707566 719909885 926237468 848561638 502929290 111813165 606129112 91854270 375413510 5655955 15744542 648006161 164609799 835043172 890506339 616192579 777689845 657113444 484265953 804829877 279679762 432276620 785763178 94118909 394374735 183842201 349393192 852186061 459852459 743751289 463360790 408338904 306663491 597367127 44171182 522379952 629266477 274109491 150756525 616525912 244171483 841247541 97144683 52011797 990267733 560572284 68238552 986484084 317527752 479075671 408018102 834647440 937499897 10327887 605607263 397750511 106057512 569091586 191283369 339294486 626310729 82054329 297946559 525408190 849058170 286395980 682684945 423214039 90024479 659138023 701651531 935927579 746016309 236574049 388682836 554078229 71642050 591664383 730835711 82507710 213530602 575622446 689709679 971157027 388363820 319951970 733040176 155970207 293843324 207687439 875782036 965041506 168031499 375859279 580046022 63649363 344701820 10893095 850602739 878326403 204133104 879998805 502100913 649010091 781101549 107814660 168524682 637578288 864584630 449669034 353429995 744435780 492298828 161153842 360888054 700516764 37021195 155861771 788220637 499072299 876937104 675620444 180356105 733391648 377488589 276888411 169876249 755600426 149315788 260864801 777372522 881874884 997706100 347736779 558583444 143803672 795151319 199793452 295454296 485249809 8506718 460957674 536014523 2773531 55725677 777955947 800483228 277910374 542259762 918605455 247837118 872030047 708322913 941431550 807136273 505444890 2850813 372779379 239122317 414322860 975586295 915867424 203369567 709579876 838524969 913570880 517633635 766641230 653240806 470114764 120667001 616675723 345700562 706633859 835020965 861360899 297004436 918394181 214500643 344542009 706527814 655753154 52815617 762851770 281949597 509903126 790905702 699791586 182953960 663905622 312097984 34236571 220523100 782954681 45386347 370746508 1012732 245580590 711142098 75283117 752387777 589444601 238459779 59113607 477614105 208776535 785429567 477660008 880046778 268991573 851323602 967336232 467090587 461756001 588382771 698681012 4433209 577280937 610814932 524738546 795495743 108896344 605141312 580218036 145237358 37462578 981401603 359216951 227225849 409132172 433242458 429164000 983869100 382164938 5662210 612795305 247907611 683818313 613058994 598357221 735292462 119871757 58533813 32309788 859185578 915389671 41174448 752098966 288601603 993236410 552505551 260081887 649253423 736200708 147278702 638849547 248407815 388017822 779055778 678255148 598570888 677165243 514250420 349368244 98776877 669688785 654697215 872377207 93451538 976427572 538528352 843634182 739737513 529579503 694939873 671303971 907444139 947906585 221466778 687808054 938179677 400029883 252501181 590317160 747402248 43061997 466655389 383073917 373144424 813211107 379235272 355584841 656242565 156723402 337680587 85556961 518427335 15564111 592164369 926343152 832802262 747904574 309300568 969127351 688767288 556941705 771878105 657704600 438713771 205484445 316727544 8772667 815608901 772972279 947323006 778384672 335885593 899915252 357621616 592900720 457511373 886985109 969032320 510168555 112509935 14275076 614211563 976660976 157956273 66021471 118290215 927553802 622478708 921846694 987453305 537389421 32331004 403248218 228587783 725244867 616611328 860379984 398172930 96473729 372255800 458677433 736814620 767162689 37380105 855371478 955061360 178762482 974339193 529294368 567327352 565787225 56853696 787841269 192128303 33717988 275808593 206866102 39311809 564764613 480063987 492164821 85467558 706372295 896878807 658273168 822454200 66198652 844372531 342593469 189058716 79232848 415590433 388283271 802434619 139515414 594950805 701868074 42143585 955696980 647098590 946831869 914579881 225769628 520819697 555653818 520370287 301707686 110141410 33962580 776630804 436262694 604936993 445170799 374557207 383477777 102355557 497313772 150211033 539843052 174496688 194013908 816744493 894514486 101476043 274348051 643225479 344696341 660821330 548054315 699008789 614446692 411813282 462392315 418125825 634213698 179285214 236722430 376897677 655303623 122382364 561271755 91320197 461948989 79640313 638847485 597979589 112286651 816885783 503394236 879135270 248998736 675672848 78453371 541804336 140755326 905820799 8707310 1452391 665000600 120186815 412921058 290696114 28441471 994179930 766144165 600744635 152171857 67141024 926157513 177887521 270849765 919362603 141062593 924939907 607049891 279651467 236232867 334747788 834657731 269575080 500866586 543466017 357687325 42283948 729900335 595829961 195738229 206614618 449344716 576118639 364651831 315975495 280431667 334011498 128422577 827703494 129130512 55540268 162587191 548009950 462284000 992489974 872078055 430978917 649768287 12663891 65266483 815125296 827114802 668164306 619648221 872752442 712339612 966357017 828428035 486993328 459998656 710520535 380207191 451674201 325437420 956158442 445593154 926546313 1708021 794412465 340500533 969607770 472823848 122249848 166204202 819058788 103082623 580780553 31811470 156423175 541991442 367087414 44096149 650622620 396743109 320206353 278043824 624347717 839738627 671740348 834202567 299896288 371638305 796057460 241215694 458588777 100975722 907526007 75567278 389843044 490585528 665818014 625108728 189427385 827932273 127196731 917646110 118661735 936932939 912118946 891420205 265908510 622618528 844373478 28909329 451265837 366450574 19089819 485931782 417239895 99486949 336428917 495775125 704128689 714473298 261637239 805942247 908642586 48217524 932740064 233039012 314375378 584596989 890733586 103979918 760138137 698893483 944726433 295749673 845707323 571442978 245464451 989999844 684442372 223976024 256422768 622902409 754788117 590603526 175545580 658217836 899771339 199278120 154809660 896138429 481620054 589439324 357071359 12606750 177803941 191276378 871005759 282152982 563257808 413128946 872332514 487238681 612288164 202692720 71938978 64061875 670072764 604265183 499386033 543717154 928804564 185939366 565072310 502481466 625769059 846204010 897712704 201990605 223404618 182762892 402456322 405448424 797026043 532607124 688530647 819349038 227449145 157441084 155139401 37028450 941240229 268200913 878548474 474586575 75730802 654305368 750435386 307130487 2092395 532357706 717823073 603176146 717336900 401867507 51715231 326696668 605319822 554289482 369380781 669509569 654140395 656754637 387885780 958281042 66195492 780222583 222392174 792498174 284250002 140869008 464324046 472840585 968264925 299180566 396743972 245491361 47241140 222968448 393768154 754866114 605253954 496147170 209788811 230638771 550392962 953351354 313112180 211114409 361322001 947421054 2632816 408675768 670214301 409415725 411956047 620354164 681758385 196629527 99988277 802762744 520452337 980416575 279901241 955005493 914426886 439366057 495766168 522402235 922767458 584589826 740416504 808425066 64119560 586716191 612784470 277466657 347068269 390724440 468337033 944756717 785174956 240872801 223885351 227692911 43754870 339855492 64605294 576349593 436687738 377308755 716177925 474539880 170763702 988929798 135915085 574469422 94692519 426202813 483732617 700904586 807379539 513874089 567993420 761364037 583160114 280941395 799499086 17102143 671925807 801601876 975476159 924522525 578257375 317396333 547045538 109621081 594123583 298045692 543852629 627304664 980058431 299429920 962745692 165848743 837386927 495775524 329047253 651688387 692269278 295376865 759746216 214444737 541300791 419225025 744888008 143908564 522955308 869700376 915451172 917078974 567368413 140875771 389258852 514935165 8340951 937898618 603865190 628986407 274245014 654279872 851743115 570975033 63633339 124160698 575385406 11868410 96637306 885435036 667462520 114916348 834907536 537519479 43158131 506213555 648456630 814928739 99042440 663376893 165841930 665209845 389028458 280120211 431828515 736767450 594856937 133683196 217049178 842983897 311484831 449916206 354786813 254413625 924304175 12750236 453769780 216759514 179748911 805837401 950628240 767025227 456692603 565550073 86282851 213309643 560814182 649426200 260568802 791038234 749792980 386571256 805386820 672482963 606919505 11906685 229393421 368891878 47235524 896111826 556528233 278258997 220501266 613513828 389681293 158616023 575553025 942661197 111782336 383642947 728644887 822834224 661830360 180222935 304288449 827675402 299630986 816747611 327412302 497004637 93730659 696854607 739505716 6958267 266281115 380253588 221677897 754008884 922362673 122109551 359707895 347315788 472452868 97848576 997548222 485353304 144551868 187722617 292679740 917280584 703297393 859716954 514538672 263667508 561026101 224122217 597784636 608170783 544577614 538319917 306160450 765041556 38014299 630995206 876225181 987837691 683031495 237156504 820920734 445392455 48806441 159737292 941150581 765393602 855347453 448437239 347085883 501614214 632349048 530573570 829736523 468319244 311892966 666680961 125255660 142536593 559061652 812818899 406993861 599655059 350563769 522487766 917733548 653411117 578711709 860052988 889823501 50934934 530250259 681972147 371240347 253937238 866693942 510610148 967758440 69561164 780583197 129137490 357869168 132820278 863806271 624067009 750531370 248336204 201413461 363189790 573796995 338574849 879258737 998486636 266966440 606395356 883771011 977972180 781652843 887243930 993778655 586860596 855114733 672310398 847655501 945899366 622033629 356217174 81610514 152455175 463763279 436363605 142030467 958326884 30063737 964615468 622360650 356332840 351082195 873720186 924512351 793646001 814708694 530686827 969940432 145196149 206462199 840029645 788503377 642549018 974347840 608527273 205703611 872847701 582468600 55285275 617292238 351123774 807388578 444097491 578325624 197544882 539625650 945839226 675256869 740565941 252195488 515978647 623241811 321728413 898755033 487224198 791260472 199707005 713319868 205158066 240255168 398123197 492228281 476753088 365580601 843516245 422796013 6375253 165048166 335539732 261294174 835264020 476135362 865786766 685398088 257824839 509024430 640470615 38223650 751471284 380879039 663177214 121067207 921221206 327143874 391829413 475879696 129635371 971745216 339960275 357070401 881492600 88388704 965207756 28999810 42351523 748272447 134007334 274073372 13160120 285480225 210084198 81529197 859359651 30922027 892329073 276281201 423160515 13614805 381774614 274656642 815529980 934579291 969829544 241879850 121659541 961508845 915831396 388369697 8276125 369414777 972069926 429226253 856439223 327083824 809136127 722058885 867568985 429762912 710402401 287876627 758118164 920027304 905865247 844445161 205426961 887555171 182581784 524031723 903240209 767545349 66275368 92500368 351572757 318251844 671449468 617480558 471227264 229279881 447655142 473824543 433248520 803591269 44181856 130879788 605052879 810490366 859667095 403372276 810837050 639919167 323792389 228908885 714976497 913503379 586613935 158944962 163272233 135934463 441859873 991587351 146455898 801271921 910205839 338045836 116552188 897688564 357069245 200042644 277677923 135222106 341582825 435417292 155465224 623699743 170986906 613081107 108553296 995831001 452225649 594716835 186270265 545347900 250085579 788145538 180607004 807100146 575574479 910670105 113054551 999848610 889466618 719875717 370697223 312912204 943235847 553393582 407286082 734053893 493508688 725001359 128702297 540613258 707794051 434862450 992002299 172839726 586765684 942416621 374026789 404221195 371486885 12194608 737241826 678931337 543896412 399584219 379129028 784659445 286225486 691032830 339804474 191404684 731927416 310832574 837500477 856756330 704187694 994666535 244606727 721655787 185978940 148410633 34449439 806082145 242159538 116501354 126129236 181265218 45262028 719717955 726044215 828161289 350191540 349132996 378810811 84243825 414390356 194468798 48242740 781177471 806487166 203245573 171296181 235752081 888056360 405590223 478123553 838351751 212009232 843147062 845832660 767146897 668973049 559402209 209219930 681150720 34183106 963291299 80208838 315396684 968305124 68832021 108726449 447212421 960516792 442159765 65256879 1108919 380025490 959466328 985935863 282834266 819248356 273766609 477434378 546089496 581882700 733917790 394022061 727833282 323568302 594871841 556872292 845690443 165631165 940240094 127315674 519560332 117688081 579355335 438809844 22679794 260401311 776684738 205022157 419417651 811925723 609073942 783969879 677148162 532206271 685653985 932656965 695400960 572446639 169389236 879758044 58163488 895129566 654050190 242316930 52727280 120649445 961667135 678869349 759778414 205526124 891832775 188703212 812117552 707577359 113986696 358540764 319984687 604950310 21207471 321787556 540311752 930667714 940354867 410736219 410661586 162097082 993251846 362908705 59438550 197571170 628921993 747895403 934492190 319225563 98999457 237960458 541715059 87964638 974068552 638467916 805833420 693571356 593177817 961277963 801423798 209168844 92667742 648204780 967723170 758313420 57888752 775770605 684530673 639065210 996243961 595867119 611906071 20292671 787455574 857049832 690779136 955493727 67017054 202276125 767533005 991610548 316033000 418239064 545185739 822890996 926738041 802289824 157541921 831361572 925494584 491662177 803503654 598908782 394724076 100782759 4110786 111022071 52973574 527099395 470715946 965249360 228216778 962677065 754600054 373562068 362398546 147423200 8446156 112589852 192695431 219653590 227873218 940882225 942068724 943566749 818108090 461480369 251374883 187180602 544596258 611703322 783614511 600301332 286754257 864612539 76428173 150785310 206044024 914541816 303088774 173637728 889367219 723976101 719551193 752977973 653294812 399375922 873498552 896329874 541854995 756285836 11541075 948999292 412493671 28838760 971015711 186008931 387461988 905395632 346105803 185190989 597522419 832140529 793256293 891590467 88063357 570839307 868052815 103982771 441391469 671455526 699450174 691575980 995121302 726419258 2074295 314174073 155158496 826480435 624874461 211467062 380358150 244084097 908128636 17699255 370470587 894291979 949247132 244589769 919702241 300943469 276577142 604901165 15797399 561494703 988462213 147268582 105191545 45141449 472885845 942280296 102935527 692906186 276138893 771835562 104182078 672260480 321019401 381214309 638509349 493005915 963400462 590023452 636890803 438942370 441370527 473898822 511514532 542976872 33586749 144448800 674164915 170549476 72462302 491667879 783450646 559354753 747184379 487803797 446202363 958185836 692074550 606816508 964552793 824459532 595736856 984538994 175256601 24061690 264834451 948226037 135877848 574555260 852735913 17317513 454667413 817827238 254788310 625364137 65506384 622262480 170761072 364333451 983219070 961952200 305955372 858141932 937135455 717304656 200727185 903773400 649768100 731070133 363649616 625185476 154325262 294877174 430364822 373585759 999270626 491751472 892508358 215453896 201746055 817707896 858935026 940900884 93109841 803554302 516657005 11864456 441495567 281893236 822591027 828794449 686639740 646710771 122227481 936733226 450382784 10883493 393592290 362503281 298682355 620473529 659499328 740629787 577373498 915569671 58931543 300467622 624959661 447065085 922688467 643693835 268266210 834770034 819669124 526224197 598734120 664409673 615882367 497386712 601959280 980087132 911329340 994586740 868933409 926244385 743993522 825382263 956005352 45023140 909261311 308952488 610529571 311087329 346124350 548369216 149545181 42603943 97376945 759344241 948586759 640663159 995692977 127364901 15029143 335627396 116962060 786878520 740997633 670437794 259966377 850875999 747874782 319407567 318565318 854443525 72213268 449321201 507172793 872459333 840658040 256082666 956123701 313109814 238941461 859611966 974655353 961459226 294567752 624225527 292957967 363757806 577729667 561695608 407501270 711546701 406528333 752111875 487569467 727227355 5970150 412152914 980994427 711526401 70855771 17645414 594572584 436206816 189955977 227971847 427874090 519416699 367138250 148863488 159048946 112052586 700765926 11369551 806808853 963163310 393015224 154561147 111642072 510749022 349183251 345600261 828677050 158105473 468564635 931588030 783817998 959713943 869066771 393636079 835686490 531061710 503372649 809584287 110931435 131992099 388791051 895297530 176172796 155829133 306305779 874181026 442856128 792274638 167950613 628919669 126235351 484897884 777073818 80948323 178797357 160829051 548829521 138486819 347406802 361049098 782921256 826891645 893117316 210541466 736451493 310445211 926605779 943729614 42357642 905724217 723524911 112595875 73863260 364178133 19907946 410591980 40210062 877256332 506560921 163610517 171525923 483403562 852899562 896680225 128340767 500705975 789235095 516215515 418528389 994359137 781582479 753468336 303814743 81162727 168375581 410764138 614405332 183113367 974049034 43664660 447403441 523307144 42134746 731035046 777042801 929924073 745848598 648633610 278232976 84753596 857197243 75914182 743847148 127826037 593092893 213986612 931248337 220722358 238154994 342793303 558867219 228805717 875316068 984287164 740086036 178981714 766456775 349497540 88360491 475521473 779682259 334110569 202464692 586308748 205358361 57688100 414844004 127534313 418960820 92425157 725927606 290769090 692658773 732355883 715672541 2884026 236539966 329700072 468032558 466906355 353011040 968468753 330225261 667684937 601063518 938305493 580974008 944498454 76607846 928887309 241153841 936817198 973645338 549196624 376441123 626080528 439925678 693803071 286608140 782654495 506348413 574741364 402962474 718025743 355704709 39847020 162484119 797268437 25647487 770049911 890904363 75349654 97255311 589105875 973192154 673210315 572298366 644014146 30439919 11800539 189386297 163494973 135327001 892940844 364705526 380181193 517245773 518189014 247129750 740261446 141054003 241203598 659503785 824563702 132124300 588178761 743740440 973263066 734318573 714033940 838553633 436392403 559390764 572644087 346436739 140904604 769358182 170513801 255332804 391370835 108385362 286707515 607843839 925862985 690921713 684420675 210653022 290761814 156048420 174327728 203989545 740606060 903614847 53880193 40615021 3926938 467172142 465318886 968411450 289219202 691240157 806970063 938205873 354834165 82794894 744253411 404698502 641983667 535209131 138797583 854834790 780532058 107142691 992330797 254756669 553313918 940024332 719234511 500329552 463866266 978695320 234356036 369548252 543145416 726910651 106441353 519204489 602072152 676650748 907840202 324540990 99577844 740897363 578109253 15770733 537595767 9930560 843746563 134070734 855776796 381403017 344199148 641525348 782082192 968429055 506926222 171876039 347200489 720865178 367702240 969908930 802924180 38612077 454062911 267175005 938642432 675831302 596823917 66861150 407062218 384430941 893612487 776356011 33015385 687117421 320805086 529709657 125803010 552262662 109863339 835806294 267378774 128018571 87325897 889023299 811187755 962624577 665678582 678801866 688696390 753734221 311682695 202250626 54286643 989856208 713486637 663489905 909638519 292941884 182114455 373505924 189495374 788180046 402502322 56399915 29513251 364726717 432742986 327790523 13022603 312874926 87407399 796367362 698818721 836740457 675105754 127536486 118815047 999487055 187565366 680110015 906739461 549818475 440548363 934344969 291622798 58301942 988987980 592395515 233195490 475168364 546990924 219157430 673406782 559140377 679173098 304296767 697978578 964658652 52121615 391092263 687739138 103027592 331121420 807048503 306659205 509412905 269990042 635712455 9587533 339360735 574378811 695860811 653030317 283920787 843587251 660086679 708004754 343009412 475521046 106182670 771302880 394276724 346066773 479374926 775950860 468055286 880141248 490549383 709384049 819465512 565457692 25823949 203572468 508613819 376998268 506231411 929145263 222711996 324474876 754575404 694191357 987316409 443364262 582757652 909631282 648922285 627030103 650514919 789159277 728187791 786543455 206018487 104291599 842993350 273802180 747159451 884997258 337641746 417050432 893336203 116690988 454760397 129084721 234844082 898410580 345731927 173761691 466931237 645010521 594092789 220114182 124717333 493016585 393110745 798355070 655349382 682702795 965697999 88642333 6008761 593544813 895113620 350142559 283251824 76072120 179416261 647399630 284940950 437549645 350215009 361876802 696133572 702562636 6643946 752962237 321291195 773971761 924928625 477095818 76975285 107125383 186267927 165565900 986400319 502862961 300599827 461719464 32736153 708438242 320114709 305165609 107641309 563240481 399922793 282013407 270868890 110168016 819960089 620701707 423222601 57181582 711608839 179275028 222881516 456232074 853996779 232587460 964040908 445081728 518921712 756903828 349438437 457363572 126341574 283246813 6064012 801997883 974261657 790085825 635730883 775536930 628159542 143620636 48121832 273790257 448883370 62924461 930884008 220343229 246729445 881671100 901970376 771667242 785424451 752082891 749652416 752102812 184314770 812211901 738321099 241559206 208495379 707688976 350684569 885087097 811688830 528425433 186157461 887858399 687265802 850747273 567311314 690685996 831010656 674585214 325504743 255773884 395143204 118763042 516850029 348331770 458345705 834805606 338970734 811339965 349815707 790857388 374380292 821287532 425403079 336792146 910016341 85307057 915925013 790939495 859673338 860678888 813278283 323459014 134767020 642676575 857269431 782458423 936569005 802153597 377704401 370262133 812739339 497275683 497579020 982220238 460889674 100270614 970193683 307764536 14849135 694494827 775873891 193378407 564622381 654954205 714601108 802185321 264926571 579009372 747607081 744437076 370993822 649032622 365109965 456694385 944291398 24394255 883750282 866551803 318303640 505696323 135826201 125934171 294981468 566095518 281117055 977394157 832555945 801023040 112431507 603073146 917293337 679919805 994223793 570713100 964426564 397534888 991859048 110962381 840884616 651008545 967308576 298915457 290128461 539227070 443998660 317712142 700958218 61492147 705632705 395747933 709560229 824419878 604792625 234444537 363950769 591349512 819404260 833580418 706629774 73738799 903066703 10033923 329537884 342770721 592138075 727410725 563237011 753361131 945581975 138794878 839502252 139621399 968530868 422228945 887278626 196680249 211486034 633502691 859475041 402465482 122825216 609896527 228176647 913867132 113359590 957781644 284059342 482178677 330715575 848419473 743468527 605007788 991567077 355150759 670289340 201744169 844694759 779039050 125066938 430167008 786103480 194824350 81905108 550097959 463291787 871334591 343239927 92972033 301796672 214556066 336078255 228025600 649180884 393980080 304453303 27192174 828239839 863651457 791282044 63621062 638057331 253915790 64695480 345667791 380136868 265587105 589190108 586356241 46806308 971170298 695244051 866400412 954059556 851499994 762804582 713670366 58000423 589472817 609019504 243859852 318822852 564547719 297896933 522708956 373378987 329477372 389434204 75335348 188687823 115873585 401835300 149863245 758424378 681542167 999169361 405981277 496330823 193798196 770210263 679759825 367396341 562490774 60513465 530728237 433401275 467580243 553147361 939250037 132282335 622928918 904382121 440201401 540173193 383803077 262081227 641419173 712257875 887414472 341927163 308132190 594644910 453551494 560078020 546198235 729404943 836532100 558615991 958704911 325803808 275112964 1578344 660858054 897942414 58663867 325894211 525682218 976084046 96907494 993938379 166288513 311164016 440467428 784676962 306160077 729457055 307579697 683406360 72909732 954455339 388021448 89633876 621428780 808742361 638955432 368377602 552971938 216829630 838147935 30621050 146776773 445642197 224905148 489504005 69919537 999677848 833693498 113417969 373320588 579740126 10288620 548161062 512853490 490568224 312039642 436852 879519305 589291534 544148058 207795588 53925192 394335883 318749206 502466408 727062884 486706725 305146760 396420350 410349281 316684357 137578891 656463418 883492312 227796429 776237587 374791503 339291607 318826828 430143645 256175254 570551485 841788319 357741174 855101405 672142324 95478801 438721033 203497697 97169990 481795470 881145631 301938338 448615431 196979504 258187803 804697568 350762307 650430881 972080328 692865874 986244108 743753121 744315635 669713774 408518263 212905762 287173147 175467758 417017683 109288891 512161309 959058708 577463911 325096298 221244078 512219029 634529914 108462283 855477414 937872836 245948440 998860253 98847912 934954897 648052196 890966500 353408707 786695023 154969301 42830982 274328979 762743262 503981954 120139339 712147790 966274440 975129676 270445006 925068014 439974645 677655619 236773508 459031520 804370451 161108171 580247187 416928717 233537211 327509522 18014590 148909834 400364134 378872230 668060474 15029592 52634322 599583853 377977205 156940334 651706087 136838044 191940505 318391478 327612033 607515759 665603693 394721229 297927646 67477774 119931690 56993233 210175122 733972449 658221217 617688758 303669268 753087073 815134786 105835327 281054824 117318015 427852540 949759357 903248649 962991491 498641345 737055013 425412193 556054605 462519222 572095375 944888735 373853295 635362115 812408202 847673809 878468955 262182141 571234765 688576599 252664583 186100486 411413 438357887 761172099 829592099 40406252 685163100 935656151 667560125 812736999 938173294 630121728 110426133 46303174 602364173 666929352 575776517 262992881 897766899 442082018 168012922 66598336 728163251 881881746 267724918 160823903 427947585 686423519 963074408 972506813 889025323 118297850 243741101 372938616 850362458 990879108 421913347 732970882 746173643 967068505 368987409 873754479 475899458 237400402 535084840 439658775 881502428 898954584 570643706 135615004 27284865 890043452 32662450 172586465 196226402 590021315 872023660 232038923 390130998 824039819 851493189 953073553 802107457 486304656 925052405 876971946 956030133 942909432 887528828 809825672 551743296 423508028 384445552 909927593 19708459 500872578 510639668 593247244 851440708 869827002 191247292 969400361 522563839 595541421 33993307 430902424 366279742 189780634 6522669 786742311 472756420 158773770 441576596 439986470 128794074 420904065 936727579 643147710 966666571 192526391 813263846 296199357 937137879 762506082 199544431 417793277 467150529 893612875 791884819 82611478 736451420 936900394 799731714 104218668 911293682 689558641 595614722 311622664 260248503 497432240 713524131 591748346 934374092 728416154 272148653 285754648 947246440 874296624 961200545 71719431 530389841 356313025 89772680 827020460 605199972 642308686 340461182 815408727 714366441 808547449 130221128 831160856 518175100 789994219 16329738 3080081 373980182 109304888 76773490 278093163 351118550 898505867 781946695 88242304 582554777 757642324 46327713 128149788 313170556 252518675 652571826 235760054 411271435 413229583 158740046 846992243 375297275 993049879 542943092 759588525 296882224 282553604 617421250 530296979 995174963 543112964 181101033 228155507 986218922 991434060 689319092 833347626 198517701 549255274 372055177 561862421 806637150 187972313 302630582 886006433 642352645 859008064 314603523 595747771 569865478 525910306 159765960 142696122 163588466 739432486 122867517 425673544 676055757 70767908 485540460 721321086 476624321 740400010 910803372 390700812 496925505 69069097 475787352 164668262 824531958 843247368 852242154 384805483 228894248 141698404 306939982 441328111 391220129 207053503 6868613 894318586 674032602 950771208 699277366 299175357 456350910 629725918 383356291 71742528 687384482 756960575 368143098 342093461 240730691 618123916 280227770 750496638 449973153 240704372 47206287 82914865 574274029 722778223 953982127 913712581 701903147 384014766 614039707 565800021 798286626 885462874 857121007 971518027 923711539 600019428 782098695 367060014 712231098 216826001 269816894 366977827 692140781 700584383 902560697 467619626 474774415 923455972 472684272 136063760 82179774 124862238 780888190 224440189 935424118 42715527 426307695 158332994 743344722 542182845 578601404 936755636 219519196 401400783 130602690 595299696 222435396 472969996 798772967 366323916 795214014 25119595 865482837 505778094 228865207 438855891 887994818 116653002 776089535 1144812 933097919 458843778 156823267 168369006 855614398 961767103 252344747 486292493 933656334 441740153 486914649 650154589 662077213 452387770 596784339 630773698 597047519 580190218 468138510 303773782 961173342 646114239 817243149 793871550 664704878 330297300 938843528 234770940 814478586 621669530 498658768 539104178 591298888 603370355 864014032 728744346 422746847 766766814 216081654 228571920 810374690 16150445 236199192 870469861 804935573 623167849 628110543 634780251 68277613 55742885 544144481 157142450 593379805 547463523 890091139 730439737 672403820 982306837 581466945 26140353 787477147 387183635 392146589 807072613 264402361 358500439 284188613 358553873 690491563 843833066 774035831 416839492 794444732 84520376 744459541 405348864 387964651 679235920 426055022 977350453 36211363 767369899 991436391 371050299 782265073 833866946 959188638 237990317 370957282 552798443 662835849 260560266 493621176 593319738 236211206 802848061 513196540 106261964 765673849 771125171 654172099 78551671 16465887 868503151 332164161 473451856 38809097 158324712 567492777 962548784 791700399 872305993 674565946 609015372 121877963 104446774 54121785 752292051 629171809 357799611 794453542 383245596 798213995 488753824 924198655 361061548 991486269 127202621 124599098 798603322 232056966 329539592 589246873 255703225 907490702 479271110 415488380 668324484 753246728 886378558 296405088 404225596 325426410 919809596 3770404 92021771 162971007 123999552 735669719 663037950 799226648 29603720 855638873 289064854 212804515 232186880 956016227 841747583 276085315 152142602 350905307 988386423 595823526 848886984 499050339 544597767 534205840 487620447 903657147 564714076 840661905 108655020 481700405 108411774 706400962 764744656 72424691 931951479 533843419 366632511 824272750 512768918 925093702 743773882 68365334 583633691 824672692 413623167 390511681 629635655 707205788 563648129 381847554 672791557 890305817 27443533 865147718 988471863 937673868 846535047 299097820 196194351 591783467 819578634 193463095 529292590 867431246 411169848 345830622 899883576 763466531 19604730 22906822 447305695 317295568 761338524 618609286 522595886 588245667 446766682 983495294 587481606 815158778 173461899 29014615 60636856 956504335 184053643 976325160 763958426 282495435 282143673 256052778 161173188 452506254 752095414 388945750 214630351 478104989 447559249 724725205 289141505 2239260 700561806 621808257 628179143 956770471 501051207 20480900 688207850 926920492 326191718 859738658 117240261 136790405 957579542 973618020 219121051 676415461 315635664 575204418 636293735 583740432 510693590 176080521 139734169 337001847 776953466 802332602 949606151 437949055 681817865 122339282 585902593 568781343 568518147 843645552 779801219 110289873 183188775 488656488 397376061 442726308 827542033 74056380 814609267 262977904 136629215 158322420 430917518 610163629 368299924 188325071 805395098 776885771 315144031 787726210 843406047 371161164 840075213 887405911 644877872 112381918 956775407 203348548 233661656 909588279 493246790 899128333 575713820 965458825 920568470 963800677 998764537 914218539 244432010 857127752 142530360 126011512 219610704 995548967 325336612 258494091 597382769 75848402 786017032 145733423 978278710 535794395 793157864 348785011 821331439 489262477 614327868 767354023 271197423 829352860 173140961 707624896 869968711 552463233 567535976 337850575 657265590 621739690 227117131 166041670 141761056 914240457 397947070 683047877 853368657 706954823 170628353 797558110 125302311 498512182 585006710 185688449 82595770 735930593 547432502 742806344 382984683 293180451 72207946 658089784 756955310 159737724 260981506 594878235 454338107 354072010 918008697 561456228 814859478 771879752 779253532 690462383 894486023 647908903 29794343 91096639 281369137 849061951 956880255 917616188 112651355 294603578 794082186 833097241 952463110 365069800 496910386 818762164 836288027 380360804 528126940 220833422 663329245 202975997 526667956 674691309 109345804 844340661 675722636 292773775 505265478 640513790 542108191 44236251 156910602 782680209 855046166 293689477 52850118 695082341 190017722 157370934 350590242 602414217 965049176 89983400 561538492 290894581 313077484 490904577 494960948 277458364 288187562 770231807 971566072 499217999 855308386 814312795 94916573 481641426 574098215 121863887 812764714 311798207 604403493 328979626 740500006 554062164 922733035 203925003 843503648 143338058 897241112 871604428 457441668 82685696 724355904 113676085 588805066 101292741 34047607 14682168 20754914 219941432 180585329 541224920 522385187 816064013 919933618 847409564 650279074 717325300 626664423 271028055 406967574 639210535 868133942 750708598 260330223 737021815 358130840 748396538 915387744 938763564 265709002 491791979 631677940 326351457 830071577 886864552 16420233 311813433 330839154 789727787 758955041 389662645 766217659 884269755 182788828 696629422 115159161 784637294 483968797 513081469 757973342 69063233 218936353 299653132 794599954 922914343 986715015 103079931 200107497 96839190 223941524 84716064 682940638 508688337 453870394 849084619 679423181 746370561 772559352 59590071 24859151 415579751 500484034 333172369 72009582 108853815 562640457 682999572 195858919 338272189 976170977 923669130 556419771 579130041 237472009 377998441 338468171 951886406 907731322 815960236 159910267 972971919 443760201 336065986 341546583 290911553 307112951 947602270 182269509 533772580 819829063 692929503 449079230 356719094 157104829 521623531 190609889 27172516 354915752 553422256 882504408 225977791 6716216 219841342 230262999 657444046 586890710 616162718 912495542 616238058 598574228 352601408 319639146 243892683 382877684 43485682 944053192 704959911 214612131 84605208 208814132 191980216 309123244 900166592 670135374 609420105 287001164 21204056 271102364 639860073 570812259 100388177 980094467 586076612 248128329 74192643 848164494 97553310 953270254 603974263 287658236 418599372 503645799 156684943 660752136 797150733 814920464 845089730 698776667 509841316 690501754 568795838 249161878 584550883 252081385 654561155 114626007 966280594 2809115 509912284 648052143 76208348 65346365 783735404 69400384 458701168 529347323 144394055 966012142 879736827 113989708 519520123 306372327 478707330 439215292 650250689 459566841 847331439 753785597 997216523 655996873 860960915 791928543 861870625 944639624 571841213 248225257 708123665 387101156 706291061 478596197 865357914 730410091 302290802 390027964 467352437 700001259 460577622 235421216 344502823 478837980 584285484 88603717 998687572 174083991 534919898 520643371 462283656 227511008 489695747 133067109 691208927 613183616 240427 343795659 707577463 474357353 496496760 893002882 106686735 12816340 372221354 11634829 673231030 690450304 514952889 142495011 588258517 562447845 69724894 422309002 356216113 5252155 348624745 528227350 377305974 838939937 780751772 472263894 920712077 871251046 621193997 933355628 487045003 586123062 801229800 291055345 800970680 130123697 788143144 916286917 618517920 442312481 448816825 932370935 497326914 779405504 458334087 159869026 807048224 335787551 63753570 508177725 867255920 385597353 414264397 309002882 237481664 18458275 687537140 29917169 222313644 636255174 685845957 903537279 833844372 341025205 634499617 567857270 197721932 147454035 971219817 505826725 573420938 905161557 997004909 443844643 910071893 443735814 743709780 977016991 571714385 534870786 636686367 320132900 880857307 869476161 545970276 198913039 154721746 627078187 873306567 240337689 896133147 267500837 108678972 886667737 802570439 280926310 702856627 389188568 707735857 775931663 708736256 19449464 8843416 702937479 915229349 80320900 209037007 409875304 117577350 656516163 527955528 641271126 596974239 388042932 251239906 718345360 713200644 193427707 766341744 528519617 914928965 175537314 804847363 504585497 363035172 553744666 882337169 386812230 113145709 951547166 757397925 971838931 493548170 946729759 238751980 471925954 793339985 977125784 780797774 492311465 849904837 143978173 159854227 537891580 569259974 68577457 491493303 879047033 442310401 200913421 851121535 419527126 177279916 125727221 885243369 800363664 875020573 308061797 988610465 466009874 687691690 478792786 627923072 1284516 221340504 804459169 614656164 149352168 966804019 923792204 695209567 228482760 809737754 129503056 37407157 793351976 243856270 731594198 243086129 598809341 691248158 378487640 377019510 919472635 504878938 910530473 768879868 411009415 160570061 177760505 389935182 872846538 218030107 730712385 119294804 850845108 280054396 198788012 486837756 966619164 20632942 523275590 106175699 807875830 134856777 100308741 426523536 797050834 808654121 402987894 964385963 596902265 854067156 772446140 830690231 76599459 983903079 309327856 88148229 591894465 109025151 938526862 531031068 159039656 741806625 15922614 111709039 411832297 775137161 712270254 522323373 521455133 288798565 503432674 113167693 563368779 346850321 240227894 341592964 808039510 855880183 975094113 538794887 712769707 246560618 474730779 994149162 205435615 238470648 677846472 256600117 304061778 991733245 293683322 887055056 470007873 910523891 829558098 852179623 283135743 40945718 259931847 387528382 312618346 413556628 919461393 663202371 429897254 179440729 276817276 638360777 660604937 202707628 249889086 389748104 47309018 716939796 761360429 428441933 171181986 401788449 384517806 817915128 727519110 892322052 468184965 791749645 224714592 527583698 562201746 779326827 207785580 529823022 750778378 99943201 908557132 988847468 250534914 257252106 942512592 44234481 918124034 262152051 966505247 231502026 864328641 588182756 760156559 940546924 540320161 108286649 609791397 410105800 265589672 582500542 902492225 700864054 70242154 45263901 224568869 481872903 736242311 344245264 549466813 145520433 735383712 579569617 840566204 563900664 759952523 195118910 796394468 727769689 526503022 981197399 134277145 395868345 643601618 93079644 605651457 195036228 525856899 838108024 535870790 624751543 162442333 424063058 695763903 790637880 912287416 132218137 141164080 296023948 747967151 682854651 414254037 620847281 110652766 216346846 567594708 830444878 409925477 954449179 495521098 585537117 991607225 565466525 977143465 263319472 13345286 578408035 303605979 757137083 741681612 706453048 481749013 276816187 108545888 478646115 899676614 426631855 612817708 268683018 286662543 281686638 634600307 741057723 282652702 91294875 72381774 632178759 963648882 985488856 735503677 857098787 582653006 915971211 623021437 585800454 794031933 640236673 800167093 783966483 989550958 571058498 264756285 450635611 449311829 373997674 942465571 529086036 280134229 339202280 951426509 512483673 343986192 70292253 420237280 606555987 583577284 414634747 586565652 97757162 720682757 199686541 172657631 925195511 3187731 833778043 216441392 898287158 618079619 386725943 62703294 649640547 587064100 755933117 824040607 486717180 677939486 870982273 260003938 166007058 840344062 259897268 635989916 372746950 88816620 254889589 501205453 98232254 74581943 598671409 462019929 800080593 101067014 819036108 654976841 98361420 41581980 125467347 930613058 962298617 865885343 520322553 828944600 307951905 268224104 820157462 885547011 538016084 447484496 73638667 360297687 481566784 585125648 86915489 922424259 246572232 656804903 344828475 252506565 12066786 699812493 243169630 671486217 538217202 213097263 127707602 613812716 574290775 359979825 138733640 136938156 957460126 228776051 232631613 255418540 621391556 581106684 242399487 242795485 2661762 857958139 110353957 893042087 99029899 963454829 104661444 378173920 431244056 330017933 348749276 553992690 113210053 264017681 124327110 121683187 556731460 203182633 378713152 791621064 664599621 591822607 251575710 409123467 374176290 593175817 267107038 827624916 762793736 884260928 375317726 194727441 653063573 363687549 488055799 952110714 528019961 19295779 406664087 317692227 112214075 23371594 804648680 908129000 95821665 422875578 288803627 630653992 460300230 363195344 940543640 619819121 830848674 119548355 497228374 554910562 735279226 516436129 420333827 655070869 719649647 454262970 102381667 371454133 950136245 869084892 99048430 112212779 488415281 436385634 904289961 618746831 950107464 723208519 469278348 225330035 55690626 528882299 226745543 334896704 859956825 484170876 416017268 69559322 785518449 224446907 937266289 41934378 782382024 482118429 332277635 391749077 677623248 25806596 477907932 551609695 432482982 940853949 721054806 826836611 877462952 734642590 103053030 989316890 215586795 550860979 892708724 794175136 76430239 177880716 860774705 297686853 29694103 865026390 795049318 113980768 650407064 845911136 13317904 710220751 105931490 288674513 329403384 747924866 59071267 572550907 525211439 565686629 351136453 438944056 501576205 233691881 130938909 245114733 144061707 287209619 31101208 323454191 418325561 511941625 358861311 524611704 36364698 338526550 568027883 111086910 473109668 225614115 685516320 453871250 457292748 706848644 615751608 371613459 707947852 736303994 73167841 133421122 651002662 638469716 477880616 583081391 897828378 349228238 43798438 738786629 566950416 964818560 773874076 247021857 559031317 331584010 703993314 779030831 194609457 80876535 708942842 301042773 867000631 722962427 557591000 41210170 249921358 699956071 138133887 153889243 533688293 336754230 848019266 558561096 92672366 859454601 932075870 502418207 813528317 918692852 992408518 244597631 289775972 133157893 954110357 978671839 947144900 398633664 206761837 35926251 129027149 218925117 617038467 254141704 360366910 780673799 562558013 66886997 679835648 610729598 160352141 445750183 938008452 68509250 640417903 51905313 263907719 348065997 524689731 658404131 667223345 957675900 174252649 200126871 192740858 665066667 114833307 930067008 705026256 452216422 638263774 695014239 292976243 432337082 94698685 274237163 71665908 59258840 216173604 516457873 303706081 952991115 251882050 492937311 960752280 911871148 901809441 417757932 792222807 935912601 466195337 707750428 726928773 80299754 572516876 98466398 360566873 563314410 463812369 667605355 401362522 190388164 516941531 542705512 221969874 142011668 985747477 739560538 78728675 919645594 291755438 983757831 528093387 615317265 646945867 919891395 657290306 480264409 217710948 942134716 174925060 126416460 279170245 960748552 937674216 696673329 774087260 137394893 342872523 308780738 207093564 869856441 924752628 796527472 317820423 527681170 276664100 402240247 80619260 580288113 819510078 616965476 409000379 602268966 339782313 977828338 2877735 293025578 832373148 904729129 649378686 397658329 26092705 68995798 856021127 905902370 418504687 476440431 558571793 799021724 331099345 598724715 298764853 439756772 350623958 191155410 366492619 5676979 502722150 729978662 940445234 673968379 922188899 100317087 317387822 987335785 407760012 427771765 709396564 917552113 692288301 525477951 878553775 551445791 400460706 442966583 711906033 556006821 765160132 732836795 617272435 352265526 697323975 305907249 408629297 411600173 713064908 294940403 949527147 135552561 787302332 509106359 331046546 407027758 344203148 795599056 114763224 394849437 261470099 520003096 551627484 483068184 922532613 746696390 125080305 189334766 526460291 174851668 590630544 985484519 41443986 655717862 480701355 357348185 646401172 460698344 264678663 999858114 418442804 3603241 788103473 442609232 50906215 645928212 507056180 86121337 247400301 781251416 591230297 138357958 989076532 571221739 621817583 963960627 312244413 495789666 475799537 312225241 365804439 818545038 828692877 525469909 309774237 752885003 998406324 427419354 849637655 87217161 340782295 996284176 774646993 67121498 645297096 472675157 210371818 370785340 230942102 11673762 960858826 957148493 69930441 104633956 443524346 336547684 534746182 397122317 683528507 518607255 891163320 729907359 402314263 293264352 348105012 386974542 351787441 678700936 40548360 312957106 881543707 518100449 183491891 133788531 571986294 431602076 512180959 40339697 814353172 161433178 862035411 377097350 108514650 128230401 918593391 11823507 562593559 9466983 398077869 897815061 80463232 497731188 784010689 844657742 60507036 436700553 543708807 413406803 616478590 647929711 491734512 743735729 678417651 356177313 627809294 652615602 440029538 251561209 25066310 570210421 846122692 787650567 514115926 234007504 577535128 521759547 201113631 103334332 477326485 647635534 859806909 163694153 757000283 570008209 921594800 804417555 942418373 373696008 574788318 382833049 363727876 173908642 779770652 929460470 69365647 176411601 67415263 103578476 493349415 273859958 861331005 883092080 215714908 321595341 312889076 979604694 355891714 591293185 858443044 720897118 243685015 612369756 978573501 242878818 576097386 14069489 349526379 637627948 784586938 745290765 858524519 949760774 724310606 963308953 457837254 612483293 488866249 790610320 305307956 695724263 416784925 903998353 356335276 702981085 75183665 51883537 304512094 778089538 955229073 550022541 897362537 16433525 53623835 521562048 226108620 277836230 800767170 710347608 268068024 892746617 233251142 396432965 474548863 334765221 912494076 137699402 894815426 733322574 554852544 957565615 707157598 263103681 412469331 473783944 692142732 17525854 733887445 314521080 871162858 598096988 328196378 265362718 418602695 698963748 660241819 885565413 868080323 193440717 571617250 883598111 230996661 342313258 971153342 305753765 475956148 437916275 981521398 312115538 315221204 234206964 930641303 950256341 788117484 460211553 45164030 462957576 628107935 445136531 938104826 43613115 624889925 997655335 134601716 587233914 553369825 492716363 605564321 907859161 261074107 771565639 627326498 366619481 205902271 425455775 152256161 139436018 22117892 388149910 340357309 277482172 987246053 670714124 277448372 218014737 706541578 939205435 713634942 5658326 207244279 288098352 85863455 878571424 611510932 488551441 91346482 723016835 146294130 926394432 701750237 475679752 136030163 676089048 729817669 960711706 979590417 303436557 984465787 879351824 888141993 153853957 540853452 214591461 761350442 903008516 98241805 118902173 269042833 254870834 219614834 328785297 569603286 173480927 27071949 973585067 245867095 670731153 139325033 967614544 543053952 785273426 915293027 943649540 378658003 844355880 59873846 525046383 229659861 364758239 130140035 580583368 725047674 639586700 550683802 553399013 234962566 344124840 512364573 452401149 568008294 590893355 718155205 243261637 869143708 931139763 931078192 502128169 617458431 540374733 501728225 796294647 384860427 207050477 20768188 130813458 977712996 744453621 755573726 257722870 449588180 968765359 538571495 391008209 660686914 77704005 567891870 16598937 465985010 932530303 146627758 167668456 224009202 684205777 448171336 925421141 720818367 497972523 861187774 668610829 106697969 448617952 580310416 458163298 652224359 990027503 248339346 300777568 87926737 478719587 179020827 225184103 811124767 956165730 801181653 864375581 195610688 813020160 29989307 115108112 790981892 502743241 871033172 809448042 857032648 526886415 406519134 553665871 952867851 453138063 81067233 189956435 414036046 523335908 793151243 487804809 881045646 235375474 861796237 909266950 842309433 924468554 278825312 671710602 564000536 956378762 413441160 360484400 575921746 89862153 94779282 23090521 793957725 845781804 259531715 964370057 557349153 578135431 120046525 504419126 772303371 706004105 896616522 234884029 437964345 893592030 121919492 497806517 982769491 468014359 382282882 896500558 248680273 702033591 816024909 149192139 82132317 402065052 369197238 735330733 344339602 207702008 103083789 521422914 748399239 926545509 364871122 214750544 29069629 767288582 174730723 158621540 166931587 714115854 957595405 75987064 78872978 394134788 61291194 938877326 786329299 637403000 997931638 683254076 998856291 263246273 93038940 892044409 417644355 307891713 26159479 243074663 363541265 329296926 173529437 115723586 95221176 759478254 60301757 923430159 880794516 532034216 819860959 554149276 833699130 732301141 865628936 132892656 273154561 801919065 236386548 491145343 250350007 251987365 603141071 29588117 118735339 697431790 130250856 977919763 119155946 888119360 249585986 817859251 836294583 416018486 343215243 192431622 415913292 314076972 669928670 813697772 470967244 207415226 661005286 37783122 484120641 947348101 240978991 991980017 351590284 192743134 255900960 980022089 203075019 214839636 106622502 427222802 670347907 600089548 958019590 626077334 442305351 770823006 835404153 401868944 206449462 711029593 917394668 36807528 561159044 46213295 258202656 188704660 471890549 328830553 876920958 261560649 36748238 151451148 859188404 998787492 760279713 696470697 355463570 746267478 949174684 617886326 832236570 176766888 604105503 324271760 365635533 205272255 396713816 816046502 30951008 939779559 318794198 649979429 825550229 556867278 596596019 823340405 672682116 152609133 364937012 358146376 755836477 769880948 577164225 707105658 383949986 168580279 387140083 845335596 468249118 951159623 667136217 635361330 585326108 562248086 981238901 14730925 630773948 550609271 842489390 414968282 53169488 466343909 940639972 247388108 588574978 932315645 593019855 111411580 677178528 894356892 97023696 598768172 592634329 33835010 52780690 772916360 923200376 707844212 411786342 672058361 535828018 810988436 652426250 179808564 848309570 800680577 646760549 392159696 513374156 827619150 442723413 955146589 817905251 507169578 481073296 360166182 4607970 130211328 779573818 434506984 110115136 920343449 236131994 753111453 894358520 221790283 288591617 951786595 990671960 648180834 22923142 825561953 377886923 169890882 146965181 821625276 863403469 184714258 3284616 738175230 191753841 879946550 935495569 973291941 284050085 612743230 482292732 756219477 717079896 582974514 654119896 967594157 393236011 671717879 494973766 271633791 578043336 900995367 36759921 436109269 82936494 455497180 880361487 720974352 466569323 359383029 707811934 197633563 190816778 713953854 616031805 988039764 3769869 580000203 551734053 857934130 309594673 558353421 565278924 694134882 412038762 931623800 419507835 826386941 31410722 747541946 588903262 957009356 642984029 241900636 902944317 435946649 643757622 989241888 705349577 415456828 155236054 564563686 731986605 961726445 606037130 844951641 585669248 105291423 292235895 75950957 337420133 744506689 61322080 457288901 646073107 182738174 387214493 419792909 162554623 960225049 319265601 974491015 533106915 97881201 68776319 126476806 591570000 501671524 438674093 963416685 879305272 532826503 10231146 139096688 843674331 762851856 903427962 901377881 614461719 977168171 728138903 163567824 804176757 356638161 512034031 61017396 164989114 924009996 251273849 538628872 21816029 109375584 140226286 653762546 471485587 19563285 450634528 998884700 673000183 719900760 88525778 101074659 5384061 632882134 577248623 170767390 480844078 46140712 959442393 116506227 735142993 278558323 828121040 499502392 891514455 343198788 589363093 118307768 640193051 239258138 983838118 616737258 972456041 506591271 804829362 936979902 82629928 947031722 777954385 522970557 155415815 785955419 590887009 175949612 41042802 608765087 447665451 987625452 295957108 255584987 714774279 231052448 709076063 439111508 5202745 190998787 837985903 250741002 763250463 642184203 213869858 990322277 264230008 613077488 252655251 445853058 628997303 865335420 209642085 842400259 621463534 519286121 293990849 795949690 307296289 128822439 325960690 489170408 417829983 342514031 515955843 496810571 588156444 481203216 643592851 483548297 35623907 179791060 675381060 584072578 665513464 826048401 403542396 659690346 249022678 297130220 763899898 866459237 438270441 859666434 681376330 901907137 320562534 626244310 104557508 797787763 298521622 688317252 971335874 112759249 961166213 418090317 219673649 990167930 987405774 809406249 162411868 603504896 493060800 81012653 94549667 764124860 153364063 693143539 513966729 996436790 5109550 160061854 215082333 198437976 766504115 60933297 957432545 290288614 63035376 179387272 380621693 998343538 561426547 187282304 566808322 910928484 480756092 279641709 635597003 863349709 198384804 200211236 554809895 591986156 837540097 180386966 34987657 678845587 886482542 817961352 449637002 181808885 472447818 315296891 394139157 242185669 166680151 95406359 596040891 457550879 98175610 704822826 304944314 829506193 287168440 373069703 55877926 471003334 242165520 772862059 385021476 742602469 602815185 780476261 114441220 495297562 116497115 509347683 333107346 623590967 918407904 905183597 899561983 887230308 114113031 104432864 857071120 657582447 692432893 228705573 440492482 20213854 51104265 108946674 406061407 615488349 825752168 61675095 264839469 662161700 277089385 742013199 636929286 840640886 887655863 241419953 111294698 447918939 733151648 609942199 691794224 815112934 357288500 328565944 137313803 284182801 910497429 486666308 330778558 53974380 441327505 681967917 382218485 742307885 802456526 75737667 462220970 198930016 665205534 12309141 973534254 74250029 915436610 477680105 997189803 114906058 451414207 535128834 482562718 393089884 266601093 764669631 819109142 531986569 221665047 352819392 971706154 49101251 329701454 760561390 957137406 750072373 508581197 52399039 169441525 203571921 195095593 807586888 844818925 959762947 496438210 903779697 632591299 875644199 422198862 261328286 801013989 840866065 95000070 306576902 940730610 659398651 183131116 966487480 395809438 758657603 859018187 719971031 474122836 982966308 414563201 437815384 10898064 37185472 888536699 46117039 493376060 581577640 293451148 385611963 544939895 802720207 822939440 77544177 700185789 663663335 77455560 293632662 78121444 258603040 501016056 268602324 585126631 290464871 802885286 38693696 848175580 410635378 627891606 875366145 885535252 809410352 827829110 981676023 270817922 180992903 878838336 15132584 998778191 996833763 358785279 105976782 243076969 129817939 236285196 685859022 800007177 342565129 595173441 520578573 579827873 298915962 900678737 915285027 805067201 415624969 302596949 431567318 557195624 158143129 612267057 241454015 251068766 942132136 357285480 734880696 133035356 846929918 593202631 309837085 87566591 129568287 228173040 328080848 153283618 696159561 805822160 281760167 832424263 646915773 759550504 816460400 651663185 625280339 278914050 913673783 877101023 405954758 731286261 530872955 390722646 106002628 877016071 598324335 45277530 698893813 147593115 719521798 483570894 920725313 363642878 703372020 171935840 476058995 776669496 483328468 433320236 487969046 522499606 312806777 331874055 376295664 787137372 714558685 199902269 519788329 285858404 83733503 395824910 902709513 148638929 560524846 369176368 300526158 106308953 506661473 242449796 590556791 743929012 24097317 551637526 362494394 526975863 333989122 685325667 661316418 92032828 239325727 596822167 804353303 855539595 470518914 283557346 399044097 41596765 457003924 584852689 779651404 732799081 335137093 635896637 188251043 12928591 796240169 855697179 211727622 877659014 762538110 987373207 663199157 84023217 323054289 809488175 144121337 691340323 763276648 366965569 956921931 696892304 672650331 23169696 123759973 898165467 496714768 380698267 477532127 886522997 637361323 636764498 391437 621077027 806744480 704526002 664216096 222195891 547306951 941834072 625780572 786589165 390432660 239930132 307235287 342978263 504735432 669934127 191928073 399995888 823243142 252795348 516371472 163465500 840097223 168566576 594852815 279487125 332001664 671420468 205129065 858390938 205518849 546995041 423528861 697703679 7644549 260520605 155520506 627929758 739736054 747591876 427933191 625671787 655463813 803253257 714053822 483077552 670889166 443426998 841527766 552061555 325205060 268253452 417799211 463803506 265514309 509092252 845706744 337307872 64981662 971883439 531918646 779100672 763963674 41416416 926949063 591763322 362357685 10701805 26556400 510332571 676636033 225839301 92917671 901531393 196847975 859290822 511424870 260195246 131940800 389576424 718793886 754649932 921724040 299179339 793553699 22113945 83709859 730993091 528624568 759069570 836329761 300323707 837938681 852784103 659511557 682789151 176405546 965982756 269372035 618986522 346030628 897179738 616603324 705361311 653260351 457690508 813828137 903449452 315624484 585701812 915342790 535809323 702085367 648994565 685098632 934274479 14862367 494518682 115112718 63941621 919234752 463636403 756336395 356300527 351121081 259910092 493432358 386581661 19915197 294439740 704974130 343291901 449998854 412535407 554380471 953550719 709626566 608116515 829412994 725847074 945486377 375555617 199453998 291604200 198703929 517056208 689826943 320309078 909687235 908172157 889149949 257565038 915572237 72834219 139546983 833470393 610785858 611218903 199340859 711531392 821579465 442491879 317762541 1096286 531914662 785776110 179766426 167347716 821602934 705366395 153876423 443128484 294516982 27659968 23337482 659843699 415639933 358797327 794017083 43508051 819312010 814319189 714141510 946908343 419657096 674641381 367996600 228757642 904674770 609629203 413435524 380959406 747178249 18909747 250972896 739592443 46069827 976041238 844680735 770685405 106213555 397393698 369958531 339457150 236161591 289046538 204961254 29502868 696370957 846413516 231977357 120144607 762096134 879665812 466964477 916868211 289475137 63815486 582348716 979202088 607845731 587509978 536269309 429175756 382711704 789526416 259736384 739569373 825818204 5097375 492216077 130627610 38028592 940158900 722366110 583148146 362623877 421948173 213857358 906906834 796063046 155597755 531353731 411409769 402035405 693809832 768004450 3588832 79345884 320185645 794806905 879511109 676138857 107094110 794309984 515723131 248476714 855506153 251962525 51902435 204335109 438230608 892929529 217135761 363888489 51283333 419399626 200475668 859183362 404995890 624348126 326596726 501367983 864682382 897636643 501164640 235570473 664756367 588812459 934774439 616683373 232537166 847877347 360195850 635978521 200785555 700180700 406088697 922132333 214559733 342319416 741048410 130593868 263356117 484441674 43579542 188301828 63265995 338741724 138177122 942130496 21389359 705363953 498094721 646474922 562912778 548164757 840319825 900223612 249632181 936708767 387510925 596106662 524966813 645915287 478580065 363054849 78231177 126786138 239457302 992830286 327278471 738775007 974962758 385957416 65362030 790189032 894143448 761388412 948616602 586073011 478317759 938055345 887713137 130888479 728440304 745367587 893220220 373440594 734519792 588488940 857851508 259213642 524650281 553635702 459574670 299184131 399411100 787700671 61879743 847524487 579995470 134369910 807896293 505472523 652239027 747056709 178486688 242038329 808566334 175111915 807687309 522667911 476932515 487252814 54383291 84048124 930796612 894593107 538754155 497749764 912839777 919576113 624398294 558119832 957208964 75901803 42175487 237944219 325484077 453101672 32628069 172753254 945588204 9116509 359122025 644752900 113265147 987345883 712574285 238539817 334237724 842312178 867601247 606074700 377081670 252462301 132616116 922368359 836478705 956909140 936975102 404980932 28314807 771050653 969293370 292764021 744552838 223196598 179927197 381647671 367538651 577277039 253631286 381893387 223181546 204381190 921186673 148414135 63810264 194038091 437146280 248360849 615370463 382911131 816118295 141581669 157673149 556888413 524259157 85393764 393196202 636837132 487821215 14502299 883879524 919955071 951200661 954492642 910141242 475156805 101084549 427226637 573259229 180685632 440186080 682409506 400837165 160991474 629572684 221860383 811076119 860393817 145632681 324784268 197477961 65442391 454049700 700217326 530064366 419330686 656674436 797835137 128060271 845617799 19970923 264155372 59806015 766671917 294375824 886577978 38670020 542803969 730469964 807982497 195501662 25140839 619220412 191052669 739769724 377066236 345078127 279331580 738141766 931957264 181492107 169937419 341291021 831582627 513112406 400380119 267870800 96129436 304768011 931864699 766348491 998250264 202703421 625078415 578030392 412433456 239583998 751712895 667752842 122709495 159053930 18559185 425632009 909109789 354542125 510065797 296543749 476840863 915134505 580793790 697280052 892786718 933367861 905764978 691984832 88763310 630229925 136565127 855930584 747615961 789167668 21506327 573212002 481882237 100811675 656199060 397069693 686457413 746542929 619544181 937535867 704835310 599015211 784129282 468427705 580327353 617587468 944348998 401305782 261471886 63209362 743643794 781978255 691884401 766615077 786287366 85164156 531711990 515533454 94771245 53916919 953204080 117209007 883223083 404465297 48324764 467181082 606383353 574237489 602926005 532929812 470086645 404419867 503642340 607615963 704369328 371413877 779593999 536510665 498428254 642400008 7943144 973957589 55279429 412540326 54724098 914390146 325659247 47855030 551257653 125713249 747461727 895149317 141112892 691856638 52043382 899153461 258366392 320327991 907503130 470041761 659578447 656920748 252605143 581694332 584570402 357801680 121285668 742702208 601048554 496189635 228279871 772027832 758745332 343294882 828188268 827039062 135306972 939574838 639305579 778812295 264770190 572221192 742122012 464120573 169816982 537105389 208964813 312594427 787349360 412742268 774752009 115830778 527733488 477774178 716296776 436726279 858207573 535114739 930071568 91256852 270883689 134677089 758437776 133309783 307587503 743412012 916004011 715900169 55645971 426899659 331145120 782404743 572079686 162207039 510176855 380528371 71230797 249410277 820790059 191179465 101123459 590272073 988537912 539096469 572367905 188968503 859505557 734336824 25010131 140496975 730987359 98558886 417553131 223238878 169709398 662286373 117663205 49340356 459337379 439325302 50053404 751353928 245904267 866974907 406206266 20856977 457649734 786699024 462653533 303105419 482446961 736973821 535961967 428840048 436416948 824140414 80215164 593735814 97504401 996810309 145537399 928444586 60671896 266280610 997104821 758270278 42302696 514859573 675878117 587531273 305383566 236527215 925213301 545509 749937893 518940370 601477504 660203005 698727165 790272951 998396133 147614966 554880348 5181053 41579224 860884611 320239727 126894631 157240193 54962274 248326224 710808954 942180098 19928364 196388790 203790973 184594857 667437699 920476142 212236249 304415315 981767983 106694286 587058298 600275040 720436198 503771374 302129504 983019217 699017037 900776390 890041294 954258078 673185836 590028814 67668474 365715649 220447472 720981838 850688120 304114766 180846839 357577835 915819516 106468131 461987169 899296125 332277252 242075395 562165322 409535619 539618760 512371543 461783079 429746575 115314071 907983541 627334616 161718509 544777245 355068399 678952266 722806515 592695829 425866270 300121722 202849531 322305025 547982232 570246360 541933709 148204224 129243832 711320915 312111982 258884560 813582298 890496006 389934520 913919267 220979262 935623343 886854850 204099907 628995911 70962340 571178034 355262374 600598025 839013706 630951675 801259128 248432790 520210396 887024033 653804831 175712529 830402900 905291257 266590057 966136409 305643523 680398055 677470125 749768836 957613651 718010820 421491746 214412733 109039969 570119237 266074065 277364062 509331711 401002390 606252947 327730353 17687318 999332173 566133424 382130574 443138073 615844169 948044730 879849301 348704400 894764345 429174249 708105767 216595326 679272816 3823357 303908030 771286084 776062488 518387691 227215138 712032378 203399743 494961477 776295233 116252179 82835435 759475275 271131632 310368589 315006687 737369562 567021992 414099100 674442978 87456360 37806026 324772830 491221947 159256639 884535145 294337762 47946309 444452741 965462792 278135320 899059838 196118880 681641363 982522086 368404629 930798657 29307003 318913216 182079389 504174076 214498513 206013407 212218285 323631029 540409373 916541188 757991635 609725076 332580075 825530568 788723283 302102002 770656029 593825517 578149993 90280762 741478259 135740265 964474724 475358368 217093983 626757307 940849528 659344835 39830437 755081338 699920517 534546177 604735184 32250202 361469343 280192844 776866561 693126834 58811743 386590349 511133869 898172725 369081151 831727329 663223248 640293476 218359259 44522483 109447104 248680472 972766720 48891334 421327795 645478649 23288308 479137554 699180319 983282339 43172457 300771481 195788156 97178952 573117808 888044451 303681389 432005349 676982305 821903415 451245597 733445174 275239280 735883714 599714086 24178037 682373563 625071901 113183063 9378445 718942310 716138349 53225415 708771127 980868401 54108156 194809578 282438353 576657736 25458062 948478119 172738528 477919879 243420536 889382318 739853872 998153579 56656222 647517092 494999372 155442626 72034171 415632923 101049469 951086416 46337631 54362122 478535626 973652587 62922945 411180509 583605104 327153755 243834762 274566002 721146097 733809256 103813105 953317407 427119109 123751940 901655601 338502877 101890286 775032691 777991249 49745885 914903546 191333467 621233140 648748143 403779982 910257740 243486013 588968119 392513096 247061397 37881898 218911023 307642621 364105789 947494967 214128843 317369974 195375480 630918762 344126516 89137779 5443604 107162284 66776761 255757823 255830336 652067213 296137433 633525227 53652046 275614633 525550622 570120931 126972129 871848533 547639509 479917013 224744664 590649209 675467856 552363452 447683035 598971463 664795619 766349128 849866673 67451521 138174995 618467327 949021132 147067398 157865972 73650772 15080511 10444920 227073696 420237438 204513680 966129825 776344113 349053916 33688310 550290477 962618940 482691991 479323670 332533414 9364794 690170690 119793559 162783969 813850541 875109667 565470390 733921499 43952832 303858919 117564490 155392553 262703137 88332942 988303200 972407532 908073744 278458505 961273073 372752878 338309693 792190138 462077700 627366156 346735629 931216609 329209750 663490292 952626632 338187103 262839491 3949342 928773078 550237563 869028400 493468862 809743772 603079786 526404104 176219592 372638914 97071416 758859298 863243892 44801294 870020840 157574442 482159287 610883830 92539443 807690095 441690699 850405179 131657516 645462877 699546272 875415529 630816159 830490885 328895114 570871785 316659334 943367226 588856005 320799047 232827051 817748834 943139830 287907813 780741791 360526841 97866533 649967277 308843453 482944193 465587956 720541986 446739965 897617208 792303889 435437847 694302766 125462743 506732837 182276790 840658810 358612194 786374718 319678702 368028939 597718441 547098754 967388804 302663221 842169645 480891350 942496715 705748593 425663510 297992382 82338636 400379719 303601681 254469509 223785779 525095098 240855060 216080636 555584353 156155433 722627142 39086292 291527317 956468941 823192698 74819274 329737476 682806976 135511737 94149643 871126513 1095242 787192148 875789024 208953802 279814126 215106703 47237765 563242428 59241950 963598861 879848202 156419627 289131699 333256082 570614217 443915969 891342939 633768002 217693180 732554287 883448696 53866532 159870017 225853989 602162756 977130071 947937797 659280299 789036448 366328337 179321332 914260831 319081237 406659250 178033665 97810961 616828684 948289352 905552602 486962133 785594600 314732064 765772022 207972984 850870049 774968011 744566676 650907898 418077911 672799510 636500562 906435140 359478139 825187168 820857383 856787073 554524042 531318650 770725454 74288452 41682956 496709008 264655706 199229071 656745877 982073596 612431737 903740956 643448972 797746830 573359992 796708868 477891948 30271511 64514104 336733230 178148149 232009216 212943642 658743587 564391826 477063823 450359033 982440031 578976408 12100539 14548850 693354657 998125773 63811183 227126090 954101155 282068880 726034540 529349988 821981475 197366931 817638460 928912627 527381857 403455508 443765885 286016804 321735661 367910429 350633652 899347762 821467630 987671190 462356458 916458423 383068551 117104309 486675784 563883250 147341913 225434481 380018939 829696256 503713788 417911802 161517330 585589091 969642028 666945837 686537118 2579977 450786740 535445875 720607765 374291149 307615328 20685530 919347428 970867765 729252166 116059162 726595610 906318870 680787476 715768109 984208178 65930319 200473425 891843485 765434 346186439 938766137 894495535 969502323 12807901 686437309 801918037 31035796 463975590 453033224 712813786 345621572 603177690 271289498 298027799 849795175 394179546 877332844 137976372 336286765 428080942 867834053 258749923 623773470 528735124 479969284 951735613 681781092 112816835 559064553 466937085 71999284 77487425 156495689 469240620 713568333 646828265 177596082 942732223 770243683 74425480 171798446 567099848 137423432 624941373 921794186 132263284 726181353 926008731 238634975 841279235 743621059 606453756 148179109 62399660 282556100 69125236 111670467 744173233 416770964 523035795 230778083 694700713 392259368 52034778 648278393 801304912 608508544 648828452 600190024 944598289 277472330 889929216 975960975 68997748 934647934 933828607 534598401 46436065 759482037 657838138 569819883 710194706 363618004 882014319 476769353 208773685 294977180 194968228 586236957 157075963 598267664 33027147 721290718 816048468 239226388 515809673 85822330 78921525 187797218 365587836 76104608 650828381 33269042 761993951 228273405 29126042 162733328 496570650 273903896 62552785 484034301 894107258 250012223 41640781 826298428 229141240 20837239 907338905 652946839 141328888 173039466 247824630 496697822 314763402 158442835 669927974 28731435 949613282 640140633 782936129 781009932 145889104 128394268 723185041 226751808 941518763 542117514 600024089 126130475 432508372 697618498 150118446 755780124 617437674 926826834 369183105 807559792 345842383 780986484 838989646 787105013 216140061 370985357 555386040 550389394 594201499 389018236 236991690 439957787 561693257 603269303 884924899 503696837 453909379 873147046 832297391 661375158 145615115 266681818 798409727 756253694 61892822 673053234 145675636 340594597 276098028 913537668 417483341 401993674 939409793 604864205 709812297 60823624 155209086 274585494 778544254 331790354 521937939 433983432 687351851 138340629 640907285 268109317 849431394 138859311 351305080 277759515 94991388 780522777 231562909 152697641 676713393 135656942 183016404 882985288 871372441 460009923 112423359 550696962 127920606 818997424 891316250 873557234 941720531 866295206 642350862 766856055 587318297 571759682 237686896 738365073 250761670 74419044 199182603 518042850 159830338 268716075 711984854 603353545 382622757 175258922 773789007 62640219 347954923 690673692 245935892 241059093 634319798 520761716 414529539 989855627 15172549 200036892 702598433 225262277 183326716 164886933 158603440 547772170 234147052 516390557 888811961 535788541 332974423 686243103 994234129 384613400 987158872 584344199 499256369 790437453 346916329 848773679 181730705 846115545 600332662 268325640 995735429 155201741 890300804 858310779 687970306 810971641 160954890 19050014 234329818 223262852 553502003 518784208 708986638 528462699 818050284 536699567 487751954 161761853 775044585 79352343 988379693 413737289 771078976 166305151 428399389 915473141 193655859 964954148 923852942 601355879 958736166 740389417 663489617 216502556 523562420 508063449 496936147 943415557 666987829 176986581 432631312 428720788 29790106 650434071 171059008 346139370 921306090 846893220 751376879 391859831 488613686 831626653 566541624 676207625 21828435 105994328 701159630 830180317 307850144 150597726 345010266 224575459 406692471 378911703 248650332 466214377 991720519 278972681 966575145 638111888 155318968 517210035 923497441 309230617 658838762 971167750 527683778 977722098 811589659 504939996 693682549 174077047 917045447 746383023 951971132 776187376 876687615 205138926 34499824 445463857 649143920 957920716 129911921 439579456 23953243 798343198 636122386 349345946 802400640 311986017 538772027 110460662 292727188 835173683 62908203 881039973 912167191 152610635 364051160 727535317 554828465 521594056 989595296 868127651 700637702 234648981 65171697 735436210 602565153 287574119 200871234 227430115 170319178 511696212 703408586 290975090 956494037 184326090 135555574 902049501 148340892 27498127 267547395 536807076 784962185 710773351 469450254 678250736 153346301 777455860 171050799 843255079 469878722 681571006 123290206 676863358 801818396 859541717 927876529 689833165 563396077 304514180 253339309 322671392 109201624 119219309 711892020 611541469 825235996 680950651 358718146 287386753 74414886 43540075 834106507 6934461 268952805 760231959 356968451 8040743 857596095 345416156 314996748 251640724 471963312 218295567 730937367 140661317 535575295 373162763 473243015 540237627 88416413 637399143 78262923 837770038 731889024 234486592 77915666 1587185 684047862 541245385 852142749 245575123 891597127 96236400 236767033 122525502 281482465 860429368 431808959 948475855 891091639 157813350 198551603 307541096 274597791 711763006 80872424 857234318 408547113 641824575 565364546 843693602 942889742 790855859 683316564 776080118 967698477 935377319 622881246 452071670 968463703 586813262 57066503 366076988 605584730 734158133 44834294 801019555 605481875 255188570 669255614 12650755 617295468 254100488 292096334 301600577 913833026 51259993 643822820 760220462 675040047 865101646 431863447 130891511 800149053 555411260 183565572 401613425 573872969 972202081 151758540 619995673 890166972 668842681 609956260 780665684 172924701 331738651 270394229 331880830 706992061 705131677 523956939 253674773 528908402 477112359 816460216 620302720 227382186 126799944 49247639 529600108 308220312 75471770 337878093 559846472 462318120 185239706 684106736 746385679 478763773 779628479 239046905 562255539 493238454 220227486 669844051 77015523 750625615 870098314 734385486 59032545 448395434 910160634 496821667 409401339 7211247 64152226 146702553 410866804 115739333 60439757 933403829 768350071 34295316 266076688 432469068 645133258 763191898 695634342 66657245 213582744 890893625 526211425 892890757 756392420 191778545 916297958 737051881 728315961 588729947 109586976 45479398 732572743 480235355 926294160 492003579 258102084 312209033 951296527 493053190 305119033 490342173 728701575 413458246 216522861 921968955 319305077 704419269 554319849 86378956 550197348 464799157 785668674 577971084 379157601 341104358 722060981 117910642 859629319 818526703 446280471 883031440 821991226 598234380 265959958 107161772 285436864 891316867 380504584 478553009 948702168 9235175 419073979 212413601 548412498 577167586 987905470 321851529 71524154 94750122 370139381 336842334 283076898 618711670 820470977 706851185 757163945 41164405 936636535 908492796 746059835 864959919 592655267 911196672 991251831 885731926 40919 691562036 580113946 458920453 701344922 649512992 224567715 307878410 349197142 797822226 243102600 760101399 999467049 81404633 738839330 945058830 334999951 669750152 768071330 227003560 310706628 248100767 264994308 427122055 809293178 328135660 859070300 367732968 230082647 810286619 977407695 713521020 233830679 698062720 693683561 637521638 600735833 267223844 577088166 872086918 539803438 443888716 174752401 417746428 756775263 529292433 58213355 884294470 170091951 894096055 63762370 455973964 246384440 293976636 204274508 776052017 499887537 899586416 123560625 653606084 674669432 871736307 928813799 40622420 174305386 939155358 12445587 104156204 704496749 64949995 228059314 567110950 899621242 736270366 971242917 223027211 551819964 293706807 943371372 910953272 674135969 176068296 382388284 255762659 330547663 81544124 247833623 129435774 329009515 836997932 687239326 699794617 288210800 716248621 246908282 546633892 988913929 805506207 70096298 240309611 923609816 406074774 849013646 822354540 466144986 221849335 781428403 687476351 35468135 533198243 765371323 777167179 578258265 126926257 256597190 900603703 359099495 800979961 200675576 983040572 385600519 143683374 883756369 956460333 739864701 860448295 620752740 585330823 466906086 4438547 211699022 5780018 278803902 440235044 413387100 99285075 834389136 323089224 403602107 625155771 891656359 296930054 926815868 731574339 547231189 505680419 865979450 433241133 434522789 380633264 370471574 978129565 191192945 392065222 969857116 534328570 627150013 309086667 119468936 843409462 20088035 89276779 175867046 18348672 576269393 619651926 525236885 540564879 125137978 821369860 212975991 166318162 279651477 191427578 381775007 833557124 93547848 231201365 871452299 27559693 202510153 339485997 249293614 826296134 329344356 18851570 546473157 666212414 953865921 701123453 963293349 619158254 316877330 58924577 340341268 691050545 145876532 374712521 430956657 923341448 743354655 871836158 737476095 179089489 439787481 53123854 486901039 304211038 681252878 926200049 421543764 892600318 264667900 5633584 265255851 829887397 162446304 889553036 625617273 556659253 758029713 31513606 724434145 109002707 577045115 695478228 99651552 676425243 295179653 956595653 395309801 792196328 153044682 499221051 323823790 765829236 287883709 976848529 701990988 713893163 263244253 62818709 127048644 949069361 201174448 923531304 951842571 608907842 985817750 964336671 197565162 262373780 265891680 815706972 315557136 352621805 830735044 534886425 807780572 466546174 271046989 690412884 6072219 548819301 215929961 761490568 833467701 305760083 275184559 578223109 775724767 598605192 119482129 29036436 199709052 508870844 584055112 293540089 570214239 793340943 405990227 913335995 465049458 496872596 534984483 90559707 141592911 663359124 970081289 839032516 802117467 907003410 178277541 306898442 421374925 758604236 165424442 248877777 493905645 200938264 488545819 521431868 506756580 313991528 833864767 614536942 535547511 387690419 26931059 415733006 966763326 152634206 384368910 699132192 556722466 538947821 736074435 234018319 79378573 940354988 463303198 858534588 612310144 862291653 562417406 235631012 353680831 681457085 319366663 498557615 218801072 516786741 978611463 286649562 807796514 948907974 443956664 915598257 697996512 290254331 779988126 986864932 386301924 581034260 612565447 852975554 547119144 319325193 854018960 83838641 698894030 894403120 644896084 50719051 70404810 836022692 252583935 486101471 462620270 968425191 511617044 54581287 571288063 159849385 683392928 389205750 854697520 297460888 122799838 538774630 325157304 54347388 717083100 503801303 818541863 46457552 31508613 255426706 385739940 434980600 96895298 970340139 574876242 322117187 556284834 951620342 224409919 188713409 3753911 372947226 846353784 22195064 670651756 928969121 208552430 950978332 243696147 666712674 9137794 623429595 283939622 402468109 972745805 215528691 737203126 262477133 437316120 151134144 439069147 726249804 815816674 923007432 656387833 839799115 208421926 413585518 990568166 62919132 795693038 797572351 834245549 234089054 148775173 123412572 757010675 651407958 31221700 866885564 237190017 696508327 960399616 405526406 125003724 763872329 809756213 756807708 82177623 105126475 458309511 240184877 464760692 87673950 728514837 152278076 203407439 475864272 137385470 647202748 205458340 383774383 474205185 21276312 712541861 514350720 675316625 782521846 454187612 337814097 733464567 993182840 637627548 324102571 56477421 292039729 540330300 537950303 457000844 838262279 58447304 893035160 68830760 812460010 822997849 58681257 134992399 468591054 683042637 391386091 561046812 492449553 383932192 599904194 239739805 187212624 977802115 331563613 784706219 609379410 676444832 920787752 842857134 654642371 672754336 501482281 307150639 599871267 234703759 773020910 452033215 286282771 315812289 496436918 512556673 821991008 802590038 465755062 250213 332563357 13992733 187537897 307839525 465644211 534355599 348387627 766684216 883874869 311244509 995338074 148442430 477063005 561064467 43391921 232823341 77745737 330794513 315352747 962796740 893235082 616774524 835978560 340393256 897787804 158200021 556657344 741928927 376131618 944776362 387529387 215103615 716257089 377123815 458834871 509750533 567238508 291464549 125241410 538219838 193751317 387813016 147291429 233904995 160253349 310039163 681404769 326540668 898400317 387206573 238144444 90496538 198350318 307867096 473619631 135393712 663630143 47902299 468789489 943228870 244907392 975995106 625491076 323400426 713676096 734621922 789659940 845362355 292268025 977329515 690619712 30307542 855964765 407154315 433382934 746685213 991828722 164308902 388510858 417476223 283135157 590016465 520358478 575338833 529909434 487636255 426679434 962384752 298873543 372104985 541778159 907453758 225541291 913821036 151317930 950887272 48408911 839432771 454702642 844182760 517804128 631651412 117920012 253152033 250905213 17329153 206284821 712269397 619054750 511420455 857085550 201380295 581254754 165752213 700113315 60261939 156153665 450624023 326041256 770250931 701579272 476184620 200850055 153414365 426106865 297016467 991524566 296280967 471773028 526199705 218749951 353251290 423555900 428599010 773202394 259974612 754644057 450500350 278138308 801852797 135199284 110942475 32099244 116499844 107269737 703415714 723732404 618470478 265625006 631651866 22369377 603654503 298507822 496106728 704345345 376954722 91430055 4396033 901613249 321781908 920446333 658461909 108295406 783029521 893245095 9888871 76853162 994743542 958418046 977790149 43850176 238455515 454538979 972686466 985037238 481007966 138362832 982884597 522326085 168329677 136522546 863489199 578792332 436974204 299964372 218834078 866117739 457941710 333882203 419043605 264885863 253033603 193186114 967141471 346451117 445554029 514536870 791554949 688367008 847662735 307968855 939338812 202182614 719372643 105849834 933377377 297642557 201521308 760443777 422203178 632310320 716606917 244176243 899901572 594978349 442965887 663094430 618541599 281166717 603367873 704247891 552324158 11219946 363801853 208059806 852197710 779483197 38209349 84144412 625531681 739527590 481764651 540299935 118325543 365301766 299102133 21142493 394728230 954266256 945332021 49990832 831493383 687807436 820984623 357547648 788569385 245035289 270685566 952621501 916416130 641004149 100682520 220518112 96629069 462324385 145808867 158582326 907838477 144844869 871662454 113073947 769109561 593128127 150869669 459695192 33789297 514262137 159286634 273405203 365759770 927529951 99286609 330830202 880560068 91267521 695832818 248274813 743034128 506837896 252851594 42591896 285823398 246756583 198672961 755538244 11482670 621977294 397875438 804298302 665100826 94271936 37425806 222411713 328347153 450272159 646933736 38883781 247451505 649483046 722191102 776909586 849407286 202487231 604498754 841857079 370015310 126417770 468702911 540639558 972207765 898950924 739220386 610853317 11915777 281950248 354592328 479182245 334097075 552088037 870903095 778036166 490656394 929450106 196159064 746965023 958503779 423407838 941528179 306003910 955837481 329233042 80856150 802179712 538395745 295952358 985010328 791423722 614567035 268051641 417429689 428224216 313049896 181524629 578001265 61103144 202893920 861366156 346436850 509919664 815851430 775339403 430232982 468453972 548671818 512754583 777573838 970524169 489290897 465825954 114707984 515896939 954915591 741505185 129441357 95910058 327654115 855750080 693958623 233071891 947518932 781769365 915749483 362618631 676729626 528846758 577622143 677316322 956153801 674089071 93378656 204031591 931582657 723097731 384039417 493172694 896426778 92168319 236701313 895122553 509747400 983260022 488131075 7048484 606483056 698119241 911807931 206191229 611549804 523329447 683735983 334341727 588285350 196507928 842730088 978220117 338770196 778997754 973303679 6269631 465681887 608628420 50900129 191353836 904367656 119016645 624606865 774161765 320721479 260216091 291211532 956595065 834091504 190094383 883923491 805110169 587575292 283027197 518549487 757347723 709709841 446310698 76962058 362984015 94688487 84597794 634246725 880168947 186153202 865757981 885238841 467530587 320987283 87295329 896971238 771145078 275183784 442445862 632279545 260458209 898242300 566020840 553596820 738358088 775820861 167345732 263415174 961192090 897544690 642842060 787909879 937794643 380592804 388941725 763083685 122066177 513084713 162781938 213018453 131947861 181096127 379867424 621158307 365591793 677001815 195603177 308712431 492877078 351245868 283588252 80465634 411049955 881672383 983397246 505779808 541124231 44751786 364080178 63836810 527842952 599274347 626998225 518664099 943142507 839402545 920154493 674006339 642032275 975745169 357411948 118317798 107289276 894438204 642835865 980189413 412375342 654361157 430826574 550173133 542922019 430873892 249084135 41191593 549351088 543078004 894705686 572895112 79102758 165446959 161778000 930459155 552745488 714809034 732891114 394245793 255648221 586839132 57404552 354726546 43876271 331491116 26409334 528057597 627243653 62073558 478940212 990074362 52018827 800962785 463890505 344515450 852554689 269885789 373179564 145596454 531446079 637455849 611557521 641625564 583273041 284553370 122341615 372668003 110955871 675522968 63235631 447048934 493923519 557753554 774218774 444840516 361460369 665285208 967849108 282480110 653403003 67456793 925395221 681854362 980879777 529313828 151785745 370424597 484679130 702692382 497701685 519779920 440582995 171899574 626071367 103648707 30766794 451256997 786574697 840122296 886185778 286324312 167069481 511851750 942480604 710099535 356865887 141423048 783202740 804762502 390733268 578683800 960013464 936422005 741774239 493094583 746762720 736442806 906156194 616293454 765704948 125063055 13585920 920418484 529214670 247320744 768698203 478478171 157207515 832874968 605579983 952366444 895193430 545986671 705784711 945966951 28798023 588549334 210244600 807549093 146140572 742211279 317164929 362861921 645515229 976459581 480988684 462878463 56397100 439503856 890317734 652589013 170916307 25198519 62383313 888500048 822410458 199540207 485312691 146786000 626363998 274193945 736327756 825774085 727379040 988680396 692480282 204652658 545613891 833466254 122637508 513594549 21630124 940791154 28692828 288726517 725517576 321485898 658579810 203392117 965464676 772730428 580618623 100150438 156882965 966200599 192088084 264410233 224328879 780318385 241170525 378572118 617562957 717881108 289712464 45076391 229423133 778388284 489357822 942872545 204923386 171408922 414282227 807550608 966813984 18151351 616703946 10906287 5513780 51128987 584091334 138539250 790607998 396365852 258198633 609528332 602869012 485173173 91228979 254170146 996952103 781886568 477367290 717037081 479550353 589149773 149339120 581171866 657545260 256365099 322810076 534318895 570828662 878703052 293408816 166460108 203159248 304382504 292701764 62785236 459651727 170436072 154608085 289445145 266742969 178160566 414215300 704398212 641076741 806472280 79891502 825971458 151483782 960154450 505694517 229208145 79022189 213717225 649036934 309484995 972531922 14600814 608448483 905877810 693099876 964513214 303136371 918571835 823290613 275418250 651207262 617007583 759425551 865790054 982132154 631041481 826671069 406930646 913992310 350777038 482382929 486709569 924371455 173573392 133137988 454682906 352336681 290186181 579008617 75652612 459422602 477330107 814999696 145277968 942475837 353276691 759421938 271292509 155578667 326080162 258974536 947582480 627764643 542123575 282475721 827411905 650653845 391531330 84793840 98848962 460733206 426344971 756135403 719429363 516608400 302723425 428815138 99841143 84032603 173104088 197358217 782274961 928966617 914069237 241461056 74118345 317428036 859797538 193710791 412743005 295360526 903756236 927163107 908211022 863170558 422385736 79904601 655576641 228633461 535811552 296556515 550683659 14982566 514859627 196346197 131363709 72830666 198753377 193636238 877868835 35318523 962760050 902928059 642012451 643590762 647072900 974064421 999492331 245603150 388827599 948526634 293877024 219264365 962702104 192146072 324593110 147604765 483486951 698821084 531964015 12323098 239788977 200334056 213001437 447452119 443886139 85380927 828835181 858843189 287465796 528279930 923967356 636038795 843576538 421786852 859753385 694568815 940293256 283474900 965996922 381961308 126018622 677037051 706990876 952444195 964622313 219650854 588490677 651632295 884396502 369990229 697152654 70395622 125857088 29678007 829988884 988100736 301603766 945878826 396065963 980710699 956499942 252897579 637978959 73406517 491935091 7429069 768230104 884385749 136127684 454257714 468998358 9134883 888213683 134360274 301843450 57971887 60948343 294763745 751795141 416641959 286494392 676098943 770366144 205210564 500716272 938436155 735866229 392173931 472590278 718933266 390055806 773761479 126998817 165781036 809900646 532361416 959319262 391775074 5162841 218672619 172243665 120854741 867460236 242995024 699538132 739579977 664934848 613022593 752535738 793361873 213668455 126274416 579367172 359788203 442948875 511858762 167043285 677576546 30063218 141138907 670397094 904500002 87124212 806587294 756467839 387515434 611909047 65665229 525637246 817980792 66745552 913567493 882592889 663115334 244692006 647613202 661208067 717812948 945549949 877345438 553719744 575537362 883549447 517633813 679896968 664029794 61874854 223795874 557982450 316835629 163803430 33878184 417865309 225776493 691165265 611198614 420586357 864244983 334505096 50432983 352754685 680269013 50192440 841959046 717586559 907599183 301739675 681269249 538769046 881503511 586220859 696174477 726219216 524392374 247087856 412858167 214765267 334951469 824476657 726273534 964428754 384798013 824368120 858359825 748153992 154029871 993069551 410245503 55057753 174512477 701981216 966681104 93544761 400272732 518476620 963187617 228857510 399130690 90968250 135425567 860944908 926897133 826326593 692488421 675758303 811543844 299594674 882509144 441138180 714858178 828469310 160238389 381674846 874522011 124688630 297508902 216581943 129053104 234213397 900685639 967927167 46303381 326111419 741248962 935112946 57184668 487993758 970925048 315983923 706363193 220011866 321714674 803413986 628621882 335394643 564962439 171332088 153320515 599922529 15643997 591555004 476458938 829401971 543256712 923496950 458990257 661061279 25969903 221099700 578881086 973656457 691565542 472583228 305938670 296791839 679141609 630503741 927529794 13116827 750009469 774188976 322055420 76249246 875656849 572124002 808100729 613709903 756128605 92097952 422999845 993566940 315405925 360372043 244231056 532841872 25625239 758344466 550962288 247081971 371922304 209526851 436014490 473593484 753678729 567739537 988433536 115310254 719743629 262496302 93672799 710585323 931927159 97435415 112565203 202272915 504450566 622302422 712475329 623930471 213671563 852654215 302005149 85491402 333745459 307727496 190577552 5186678 25766009 53464378 194146738 226148657 463743737 433749042 834723352 752715057 30360566 304977165 250324494 408137125 458451249 945144852 784265546 853734324 332047003 490871777 426997312 457393971 949475389 722241149 381102303 98481412 412506553 341189584 964309881 176145246 987437285 157646751 213952511 606773831 323824149 806355236 942353275 727499955 838251747 912912705 33878589 523391787 855072918 959388027 461465223 759385083 196460695 151300612 996997441 366176724 586014293 878248728 909881428 978846386 533854110 109292095 431416396 746629660 99200179 868082643 59313496 560948443 42904422 964913954 26924770 882360070 742178740 923807781 418736485 711519083 720214023 696564492 929758394 70590575 86745275 592453146 505673733 502767395 178953437 169031291 236407002 922226182 996875685 280059999 527069253 841783531 606539311 762845407 818503464 439484179 139008916 619937334 58589052 51647525 710558498 704287545 278758716 98990763 685939545 417006500 441936727 304722524 307022870 443299626 23166704 645473668 916535720 175494231 982707412 433605881 32019806 864267567 97063494 787428230 13808432 35690838 949031858 544978991 244261393 688832314 217320797 578757421 529370197 246334141 284988768 706933843 556975447 649171811 770083183 391950697 724797811 381097094 179626516 929561924 555428020 621478911 821430294 112564190 724528476 902332330 364023409 338619087 215965400 793821581 64905503 133860117 234699355 879470063 197953175 998332241 474803473 593152981 505805742 627514373 122571526 101203574 197076369 467849851 59391380 550135063 824303999 648124100 281494965 512953223 29552920 950815792 788260573 44698709 405040919 307725388 792597313 759138385 739186625 448814011 463146786 765942136 956355567 787536139 708346972 54453494 290365037 880402884 417518490 875893224 721711477 118531317 235163465 952256501 250193980 901534359 42853382 759032800 768726940 854358676 887243056 302664846 4364930 735499315 168582246 519067535 984901021 592365823 144783578 717731166 529638678 562387042 998817286 585747557 498563787 159732437 516388446 888014738 625421558 521534276 7515074 983683572 429939614 59889078 833130125 44944140 956195318 406701037 897917677 505582956 311881610 290912674 625423282 991663702 618577123 87884971 662736566 179410343 907328407 110157856 709976498 966613377 579861956 710513959 927720031 557897891 182844547 905470881 382986369 400869509 261556989 601156501 690254179 661694529 248189883 129025084 224865496 670017616 755293019 445244094 14192683 845741744 297452011 634332665 109294735 763915631 719208586 932497220 352374943 242627806 651797682 965742349 779570321 406568263 33449688 909023824 967593379 825297547 524908268 532803137 135845469 284529530 45361426 521014302 417044783 341823871 80454968 500673193 123328687 187994852 256398097 164008857 926872939 178212918 262965570 592018119 851213582 796222088 879551583 735623424 742516145 249090051 365735130 655392619 177011194 618924829 597328457 166993837 802855102 141872818 17426959 561141480 704726549 533839150 771203105 620874652 204476360 275189331 135434387 974089247 683439731 842639992 828271957 659170645 523292065 474983296 938816619 323394739 268608853 145279989 138911976 633781097 350873420 60570763 256110636 437007779 549849265 948755754 756952816 477581024 80144791 28221972 676560630 268390290 394591 22216818 826056100 236373095 39752565 189158056 825355732 327926256 481242342 610758682 42162169 516103880 239369622 100349172 885064663 959533971 701702765 725300049 128826532 443026827 751717815 280109945 450741399 816444343 960602206 785986219 873024870 573620537 841906454 782632493 411639255 876374121 374090503 503317141 113436677 844715248 746734357 508256176 711116699 359633131 370651345 321577719 428400064 902988645 158215433 857354446 22184281 371477087 270165037 162560400 672967674 241532839 705279306 109450743 466980687 507405331 920662742 383170038 838951333 682910612 259884140 887050319 384229094 258277187 294757334 343096505 460807721 601200138 60426172 797443850 601644428 835432729 245708966 610225019 407901937 244124376 772162417 785688788 178497066 125729713 597838789 748322898 574684096 166605684 826861576 41513494 294270734 672289156 533360030 663448659 606463275 252427737 349669211 769938376 561489527 505074771 768443639 582556371 475754567 244813495 791057301 953185685 441578167 662274945 54526737 799705692 87117179 113696550 462169151 716438166 712472223 359521584 831197406 204512696 776350036 196182105 37921182 530623824 29726999 98532962 907540238 328083841 136670451 845222791 94564115 87594306 635049145 817553143 276216726 747689820 96009606 394117498 215579924 759557661 311375426 616050625 249021210 644250385 319647739 644080444 236284074 437158235 447283128 57710737 293881738 560129955 52548924 479974775 575144489 906124200 633246858 792778177 401108718 855624802 272340528 819178511 814137875 713358672 325218346 249954508 847153664 204160980 353100284 238046926 723274318 4565259 400990585 407987319 441681409 476932311 720038612 573817771 517430456 986007408 147746029 605692100 766954605 145859095 476032471 180554419 925366338 734591051 993432984 667793260 927710468 270142389 503453082 630193946 250550109 427271310 775463564 543143794 412186459 407957137 829567167 685744270 891925032 603255765 43184222 649869820 469494068 156893272 921535234 401319305 754841317 883659577 28248365 325628124 996099184 615489214 21159443 108409358 653301091 596576730 363354001 851536369 129009852 678111160 606698803 959793562 416611391 272750159 359770070 782312346 849338616 44426063 23714779 761667375 925011795 317806026 764618 987822725 946196392 576944219 900903215 757984173 994212328 267555849 454358180 960326587 726379244 80171000 869146934 714807572 48452294 421957275 912126502 36965902 97346586 744259601 19998492 584709411 300677311 213420014 501685134 253891841 20249591 949337539 531472524 246578238 815149626 307872359 467541336 844364684 627325851 340116064 260523551 331354814 829404944 688300450 246066495 339943548 872366269 822203952 292132165 706080599 192390961 751915812 923894290 73722336 718988958 667280876 657638391 136403504 750936744 527012361 89996401 549584105 307579885 793159441 728405067 235801312 5673619 897562468 708392973 577755337 265652945 679977212 816374616 217690217 136867055 178472458 720714473 952048894 287108555 679570437 31419389 589507815 77700795 508801685 177171495 902660136 570240067 730788572 371287589 657771754 356969363 945039712 723717017 35850629 895370682 20495351 625051850 698409297 392282348 598815125 906425759 786619864 561573328 542557921 955048844 815601907 758766022 736098179 690703625 191081100 663281362 123852366 583238876 640676893 86773620 482146504 776530808 698890480 130701800 617136423 882012776 328440756 152756142 927460867 729831262 531477176 756096198 77830325 626873837 154863952 301185427 286293175 95132271 410048190 33222900 344378471 139367082 224313297 768717218 953555847 763042703 81760311 406654056 693871566 533233319 588627198 741278584 660673573 857354626 36769787 950842937 313358492 979248054 666040144 257395895 879279840 198520858 988409082 850308172 805963753 48614528 183748429 348043421 69098271 480536977 654891289 14542694 564774623 731558068 291358180 142267708 306179025 9089682 594322275 331169618 959953381 236686956 47032808 631036711 448399163 155088228 559277654 334124907 210784648 960274516 126596935 118896989 215870182 546387693 602488801 113713578 791480879 264790815 174581179 382572580 710276430 855890532 53309154 391248373 590645912 272355795 700525258 479037691 633328278 479731230 678134833 435588361 77308259 608916141 716460184 63644002 802897694 907791993 697180498 332387772 845720024 463703451 203648195 720245357 886097820 208270158 801142530 2808000 731969824 231482515 967292434 822244673 2519731 92496706 750798026 36424222 347725755 312819950 381078146 601479235 159309472 732666514 379701133 548450795 132546367 737986705 584980254 578418652 38786753 832082880 16070640 197907653 939157702 125644996 545709435 331873869 190616332 60591044 782697620 134046096 645492897 455196342 570008519 218255476 878168402 737952948 769682181 462012544 838127537 394385460 646296808 745129514 162625697 925185506 452463209 765999299 496654929 976027654 756120660 349242379 32069637 780456732 909085491 940023572 811139074 982410162 28075314 331236406 347753594 946610109 12988098 13455703 545769057 801199202 702251691 462904339 445318338 17696078 546210801 957955869 993375972 291236440 430395371 214230408 311738530 335653240 980076798 502414808 506258246 231487965 827123414 776166234 334818789 171850685 213739892 890230205 244532851 467981829 785780331 617462268 881985173 470967022 514077112 428873369 826841245 641778861 254754907 150935891 127943963 112085098 902474649 690722006 812367204 996027211 322765123 283662350 414706161 309757119 608918199 759447964 33606453 148591372 944664719 511906075 753429638 891820456 525808130 522186468 505306666 111795690 959604129 638906431 984276482 706336850 164860631 475919018 257617439 864700837 588398926 255122450 152777852 794497115 279510631 808797387 142396062 533275595 501500412 799213731 914665677 434676095 696993314 129378077 806073613 8017250 515995705 738825598 850532750 186768324 135951909 978724271 645359259 992688079 347635596 695505903 819666660 213670580 519745602 621890787 310034248 599200253 896227185 325041845 588475306 755278576 228176257 936915890 131566260 177719079 694280923 65680960 707547780 508622931 787286859 575961221 761672737 452204719 154884132 518870006 476312827 221778935 97364162 777426767 658353926 47820364 138037832 94768258 227846505 674955746 131142474 783991913 697471686 431390366 353878973 107912607 369474215 234360672 254409215 604486313 301996038 179558796 735717814 627911974 939189803 135953671 505432446 929691893 647349439 367625320 180333512 261890975 277095463 700790280 687247815 866549177 696344650 166667287 368807353 606599244 28393882 688815840 917998063 903755690 875019938 749210538 855403242 881630508 742426121 835877825 756937963 715128468 152208932 563527839 614414138 587532536 358434836 785908127 587653294 595742337 296890550 274168064 5019541 965926691 333539990 991519542 809139848 490164050 234411794 283850184 363633542 257948436 528952479 147957762 965005398 753272659 829780076 32867556 234101607 869333483 26955289 935424343 874364655 398708808 920522579 203071404 938488418 823007607 358191009 360459391 389767464 100441551 167621253 253097004 73464621 963138813 684030457 751035420 640458950 383872613 37973233 289528083 160735669 328413121 237334384 612790439 879758024 646405795 713229656 362074550 470811806 639428686 195267418 803414724 711736230 329276201 785283479 580510506 719741827 754925089 936460207 431239499 877000112 244210906 885836307 75770757 553739939 346676739 677057819 64961770 393940608 247276762 403351906 913864377 92314547 641374988 146823969 704058468 377340431 173594171 502910898 997045469 321511091 524548014 371627458 983387557 166989185 684525156 842231154 607428486 697407970 942753535 62721181 227927122 256398268 742542950 491482224 329525459 289303052 264692422 272881105 339885762 506892257 678921744 822130816 644552884 506815608 46955564 395708170 768288273 318127529 136553664 48832971 814184280 229046528 576655978 473722094 824615298 278762053 215235737 147681060 645985998 269729858 724182613 548770303 890368055 98933431 195383107 707921200 491659352 727952302 363091029 507793519 650372065 15127265 559090980 634042474 886271328 939183283 726013056 33176336 737854776 453907159 627899872 907683470 666857643 478724200 548628138 153210859 992832447 360466620 519778758 572550281 645731769 351283131 340356855 260934901 332797451 335497928 809486066 477142256 78781314 47295071 444259903 696314279 846262323 351016638 136878329 811177656 441855756 86799141 295382941 496683089 653075109 133090846 88354450 152345826 971243876 490042918 289176993 447910425 650089583 143587741 923023976 43159979 842127550 29698037 615796490 340621539 445835664 782328629 87180237 520141350 981027220 581851466 307110909 694242776 968178027 165499246 590027892 688557703 425529449 576982252 75665784 551250577 248793522 861533803 323079308 91272322 158899317 60214764 847445696 193484921 996466179 146893439 918645280 660905034 124199817 481345145 398296055 244637568 64177287 984051312 636259983 81371250 837829378 856215110 564507336 404078980 644483595 981861835 959287840 523840175 936912307 995109820 953746871 353549719 656680835 888168826 799427215 647791072 687568284 335324120 458500990 419250310 716447934 199507903 854680556 445279735 975530436 570599432 312728737 661462208 311942442 663879782 371481724 389232667 405564542 425140090 270721460 89231836 93051855 122360402 194772835 72734107 92851643 333860370 298377276 831648542 785423198 930641037 884651382 220703899 434933169 301960037 106429920 726907661 642443493 669714502 117028019 943409370 233167477 876414967 616190353 352162260 731350780 23933126 358740647 561852081 973091582 468381055 577489024 145922335 334240273 451615825 189215658 568726764 307445692 305577759 542045881 596090058 315906550 68544623 622997356 204083036 781609492 992938025 577265706 112125050 908120497 217795953 271172687 637078795 962731010 708337161 1604082 242664141 150011445 43183564 78391773 493957011 724116967 999901265 541626440 250108563 138485577 148791379 1749719 358227270 547802867 528403273 588426231 153732428 650592429 180819853 864958081 480819756 919040431 581383582 587603876 3129932 125148394 908067894 306593350 469300956 786523934 335998029 74121027 90236623 730431931 595655283 870977820 58693259 234791894 183676795 306272585 484655072 472576159 585365678 780917147 818793546 314547409 210610741 183043186 392876772 878081729 221005751 773186681 618770146 550801354 748715077 888563655 212209188 544750235 811470861 687653078 777243122 62113560 638376571 574016926 896990715 491521283 99435912 40819157 631528657 720832876 662415522 549631805 831968979 357977937 212329481 88698856 839760035 244585723 136101458 904835557 710698743 81437649 309291676 816963825 992006013 58517342 156807828 569040797 586798213 19786047 912671289 562751940 756822047 414160476 809380611 859194490 839077095 43143976 918203501 603004321 800013288 568916464 802513597 224777896 476450107 956106903 956061693 291468847 77899455 345811045 92999080 455866471 358278078 545833070 842045282 11723167 420156731 963812726 859395486 776943777 452032926 83811692 274909690 608845388 388178174 560531492 12148338 295497692 849043184 530014828 151501469 473402657 945188223 255133291 947859519 386963876 599208347 587918165 614693473 273579279 394381566 595306045 857769263 639492961 791494427 139411493 168234511 166662455 863711510 48388844 170054726 212800964 711417550 518654070 28095407 724725029 659661067 2862024 90964081 441443731 491707052 663792935 561682955 512853217 562149733 760161358 304795162 322964587 718045775 834961101 493976851 723950929 481581667 168220205 254403206 376199770 424065406 156205762 233778231 404329341 104589735 269068866 990947195 936481315 255668031 801884090 394135856 344026846 34424257 506502525 83031914 419598554 281161037 494135354 668492954 750055226 785932766 156082344 593968540 651344003 121736502 579273392 602531923 570021068 79270528 834165030 237963824 35911754 403079948 509350251 532520826 104413830 472512881 775560043 242880841 71887915 405805246 37659677 40094416 461957481 957820642 814584585 591033344 11572229 193376947 812696852 959981952 357378604 290198508 903178443 597030147 285448647 420488683 740591125 396826110 768503023 760305275 529331449 439314496 718551029 805609817 852567714 170995290 686351719 395145175 51885505 172376175 458229652 476698221 187279057 257688539 507491236 48004911 279385831 829409590 334716148 712005682 756854641 737041855 691408965 523840465 465309825 611708189 924511482 110178123 665768840 535851030 227352669 6992467 621447254 322178378 473926056 823880083 551769796 472659970 38926929 875996219 975132919 6065351 366684475 712377298 191184833 117164424 755239230 595459152 863446699 65261453 703589874 754237645 382144791 717026590 511666392 938558483 833840739 591036114 862209831 517578276 156191674 52055237 176714062 71697891 575504571 490462287 244624558 240515508 653321993 361074798 932091871 4801770 963096950 979010558 250531379 723341740 160995628 191430436 138406018 518447257 363979753 685361192 262948624 935640422 493191114 276425681 591081652 133447933 897778060 193314607 992624435 664520103 248095508 165758393 211378489 391500258 109362510 736523982 18314997 354343496 401490818 228400618 233855028 237204838 96889001 433751998 860905585 942974302 303815704 866303836 646859225 277278584 622269742 57860670 162154923 902630309 906826069 961336345 810788645 689254471 548855722 854984937 748944018 549351199 796028347 653600600 244533331 355719650 365206370 539266970 418901886 979790221 175969505 183512436 904403383 895793007 81008562 755731426 888888208 850648787 328225284 786072545 934939540 865232617 299417120 123677612 566794577 606546344 226217256 222301416 279801594 330143427 501518199 159817082 26155912 419873161 658761558 973071864 282283927 712980936 165325917 51243034 48370959 23423242 348334000 745868288 174186731 408495125 133413180 82059162 368383177 880161381 475883154 948477015 105973122 755651240 213537615 848154957 351539101 754120953 277360753 482000615 347200222 644254619 677253764 426606865 502281157 650773981 663651645 1676674 693585383 950541776 578069057 634784498 851701181 44938806 930074552 627962978 840061517 250284766 244411309 67403320 46089835 517866974 487796792 868056967 708864638 794571335 135902919 114963708 520084966 62579738 327439654 361554081 717539779 15065453 479595213 384890741 970504700 748197559 48191859 162190520 755020814 241228258 991184510 78754340 466304327 137601173 944589476 570912890 168376249 181025488 735576273 78112619 642585643 598929137 579625475 463594582 324325406 592628863 149355713 644567289 638006831 975620318 142843115 512542081 57012462 634075095 874594224 899064147 997174810 784507228 403528885 152956067 188220583 767931906 160215631 85906001 158447713 253699970 332683629 485223789 160992213 69273715 954150527 289675065 253768717 137448712 709802089 718610121 794611883 478639232 752766450 553568657 667671591 948913432 869446322 457912043 211787892 755845388 918451337 659471360 348870500 945312795 145846248 116243066 259332589 882305940 867000418 687777758 324656118 586314782 250855123 351122446 71666853 440163910 731912782 750659490 373338118 42122795 577850112 914066274 869006211 111101917 749101316 786390740 193989679 713517137 94319874 487581712 933109314 471441236 106839157 247825933 144731755 403006994 532077421 15712185 569553250 36760289 168134481 964199481 80054044 249445297 454909433 77594018 196518784 489889698 472477556 324850509 966667847 669150347 166753072 662311556 153488470 394840087 341387815 72908396 935485738 40548261 183682567 759677886 855349182 424726713 655532523 713848565 908655268 802283546 941890106 990915423 28549439 525441194 633002664 437641742 472318976 745585403 476406054 978232841 177054907 154669774 566739054 755035710 912180161 665126119 627396765 784521988 335672044 194020163 802784455 758882949 219131774 179887767 842922425 307221328 915757974 481702897 518494925 325231760 539230018 637124831 42231789 445685777 734713721 757946824 861221859 568027579 728527648 849719724 926212246 35241695 156569900 509257535 962890762 783248089 148480394 402748208 858358304 312845453 787262736 603056004 207869814 435200664 31101294 385284318 81169726 531339615 511113179 245858400 195323356 76807623 981979315 225154908 586930590 984582826 967992115 157662767 201478755 793929804 638753433 707205409 441449221 120481003 382961064 296198830 238930954 606436725 831771584 544248707 384055169 547748911 462125987 361738074 987370402 12178656 907612459 562444470 793198269 80418062 290028212 543008536 55305570 86133001 224641770 399255247 201823032 579911228 97599243 722769730 273824462 427995777 272369745 477158568 782253911 811161786 965775145 754960030 958763143 727844102 195597624 39718700 825420270 273938598 214815823 396592772 679539468 949271433 370118377 989724744 64508184 115542067 937188544 405175097 705694199 495115145 517103536 847221642 329510699 394572740 706771834 872331199 897372267 888952178 881194650 167156966 878255105 736979609 905633890 584238214 842155036 579989308 196971176 658812022 896471490 481926875 81148357 713331979 40550050 850070245 880935367 55329138 42669060 353582354 771537434 454050492 678875362 631677286 251432457 37819645 181029666 915846158 904000195 861595624 899009226 389884787 600442385 807054220 790500141 578522574 537805177 67456678 602541139 916058098 632018920 878232742 115757420 60985979 186007016 902877487 259254064 523734646 151895514 743167362 960993836 583788299 645665932 646691103 358133862 349650950 224454638 295100442 232216628 200101301 159127669 173419290 245580266 594464920 360118217 674445606 731741415 846417068 788268600 272409342 190112123 206973521 210048531 312192540 662709246 553659414 214070111 911685946 454412839 431360862 582343058 167976340 649307358 478175546 695398133 514811383 450552424 985575425 201769040 458320914 747247122 643544356 14966112 203301315 271440828 871370816 667362361 488562387 546136931 730435830 241693919 120830664 861094243 525322333 886146101 677978711 76351778 973556418 454399701 868275178 888208992 238557601 386012640 194281215 822518091 136732739 169625101 25316210 531509510 447159998 765170572 634902561 707402363 784774168 285192752 379263043 493058767 888406688 743112281 949941837 834924931 167351843 270741056 656245803 536747296 235871939 439292992 995263043 856461584 801308133 47891889 248108720 864473476 818564083 396116623 344698716 226781343 801469839 959323161 808397416 637358196 986925448 313253434 341622140 28099948 188470644 621790392 85244575 593957580 454642093 244575768 695739146 885909339 774125189 525392877 150428002 580064180 791202928 432262298 518280498 664450583 158413364 29218017 781261226 783104379 876130495 916809431 235643300 789459032 143299338 808357296 332676478 285056045 290017298 89503522 719992945 366308070 675168222 657982051 676651909 822370632 897332501 916091065 77181500 751425498 479449787 474844562 339946776 487702716 707741317 473212835 160133657 607646368 767423562 208915971 727711274 977471631 946822138 124990742 394194235 549284241 515450537 50309041 368904672 910499991 980525232 800722387 360095830 436088634 423718397 355037832 865681845 367371342 130567451 219315140 185272890 357355773 420514677 221255242 743581323 105421846 725275441 173938174 997437883 723271615 821420565 363858478 138359298 875410435 51553024 204890948 610248367 93019678 150117296 199535779 421310188 108705568 620285559 734630558 664814013 821794230 181698312 663860370 726202630 212733069 892057770 751910337 413916166 890114190 858261496 207262207 665430842 497941722 25403077 862927654 796281088 985480277 831641240 653010758 25680739 761280896 870927387 593232688 359829763 775665618 892830836 918550673 234152413 202719469 351316089 437047950 364406088 887369894 455484254 130718411 304488534 592118242 364890104 233502249 662251303 971867927 486956935 997447161 137502181 244267910 369122671 519241927 555582472 652639511 355612985 185422303 724229269 133322500 275193326 556377210 362997950 223343669 314012526 292950528 978287089 989727627 828583995 252348973 279159106 893467158 877670994 674749681 149888299 614215410 525995502 931858634 551761874 509185532 707550590 654878700 776234578 915056628 757251947 506401059 470335758 311627247 73448039 41388971 374487912 664953235 63812851 224398793 782060348 412218488 96901885 573815194 380288507 864999506 723728197 693683186 71278356 618810863 278702671 132562306 39290205 283178942 781056530 143194883 898648396 106159693 372163418 357974984 552905994 853197305 615124903 79956711 711297100 892167344 83400112 225670156 21368387 767616988 889645884 541886314 261522337 197726059 546177566 430331114 577458542 714500264 429756527 876965018 779099043 949268871 928583517 112022348 710087171 986468801 646062013 36305791 492124907 396166467 580992794 12883564 798903729 879924159 928443044 349233338 408414185 302870482 933359793 66229623 431634252 688049892 125147997 30029221 969130874 274969455 476835982 384304105 829919016 998507245 442639384 594172071 168911929 720950596 120531224 907550459 807048542 391009566 247266803 555335740 831338641 904307281 319671448 200853606 879951656 860564933 476453047 660535784 403862045 125011333 757682824 951913950 396869676 634928948 947304661 796749295 198707243 419312476 306993908 1487798 973133695 335905851 362377972 765035465 270273250 938230990 647891332 716625419 269919033 326099101 539096978 399949352 382742009 577696472 107490869 835475014 222351535 493484519 553089852 21193143 369544292 477111209 260000518 962603272 342773239 58838177 514187684 172428919 194156869 202216654 328780559 90934140 162707090 821475923 250765107 405254681 489881195 351786944 649874132 588658601 721368976 544152396 681797407 216918604 212749556 972224980 681846751 109988268 855828335 150597686 716288244 160672095 457607032 187242347 707004206 831635009 883491463 241010749 977127844 79780550 508390601 981720693 917767732 674800509 914467535 443981974 606399268 733345213 799570519 380720225 556588277 372269125 542519269 211989127 848222575 664850930 769030336 387388726 822507894 56895870 478858037 336541762 213299870 10039850 548200265 264636366 624306073 828379356 82547999 235110568 213090181 812318157 378146637 8503535 125221806 911001573 784433513 91087792 294046654 511816942 510914814 234844935 20205474 226207753 185144054 359843945 955801716 363586279 615208096 544140826 36325228 115039799 777566090 63098826 114515943 330653511 879341695 231904287 918409902 450785964 597792397 273199832 74886341 482012251 667966538 85233473 131775827 898337096 605044081 146900942 818390057 723548030 403412167 235881935 477569868 305541255 397155562 831444180 925793691 216836232 80645415 99125162 10609093 363583395 524249220 56386366 611079629 733090730 744575647 912638894 156971918 532737464 882993458 790662204 59908773 610763975 703010410 433665053 770688741 621517231 34229834 283509163 153348764 858085254 84977020 531461573 529297392 448639673 539978141 344585217 170368206 514575930 500344057 716671115 540419876 783884659 738314648 242572767 86869768 195512901 423989863 27553288 910626081 773144824 866388780 37806758 883479422 991195604 497890885 105142509 505353706 783537863 897086851 729534435 199144804 367917051 284340435 834543285 144703671 523617067 741005995 773910365 882960174 880200280 795391955 390834545 433218150 893537650 519525110 801361786 539075842 101228835 806901327 268381557 325641362 148035812 58901706 689387759 449851149 850669546 46677115 916290295 482396088 372320949 477054196 858116316 637712874 307916682 757705490 576983084 620323046 548166684 652322439 326910057 29104743 432076106 995742693 692972241 194040959 881152145 561275693 976812816 476915205 464073669 775874052 968421074 976697967 316425396 551364172 611192260 571676673 518765103 207640337 949190998 185978257 941716718 386899117 646746796 947057309 724167581 63926912 411098118 26261116 783292729 275251372 188242635 198204828 770870353 396697588 80820139 861021290 750823396 999912276 121945453 441137404 268534821 169631638 449916021 280804410 457211290 582115483 813517673 177595549 489581701 123066229 190055269 102061340 778701809 148578126 749397809 118646146 286245992 741931035 192774856 940545272 131586049 869601692 188446000 289865687 760911939 442364054 633279541 332794798 936208268 812591565 566179703 105359888 972848682 471264873 851167496 516832328 590729579 127986318 806123489 356563752 193785097 30028384 130505926 852696744 412258501 340316423 223160384 831604864 500605648 122677497 220214533 433508058 329185022 838477217 758520460 159872512 914222090 201658770 76453849 950743696 613092610 406294368 11884144 492471506 307536172 694407973 334018536 832386557 991794963 657452273 312681869 421775295 745719054 161224845 253825261 449909182 946668451 376880512 726653503 577166655 809069723 681683611 539632981 860937810 32980720 681309239 759891059 635564742 878795964 611292594 797832258 388727735 898300780 669537428 80122153 17016656 30334833 6738541 26342649 320660998 930863976 45338710 876974941 531379662 228041339 674786215 488352649 710602423 516123034 874261457 612581463 942174065 428481289 934823428 192024167 214794573 692459061 24138825 881163175 399035957 683605694 390702110 310925781 765208103 376555142 874023606 364981882 668963919 784890767 171145894 96353546 776256676 118610271 413851540 240245108 790984685 207264678 483329755 934639690 282457524 589603394 682717237 321177 719849660 612346680 691662779 827594891 503118064 171342233 697774873 297702868 573947326 2278938 284301552 879257437 67234511 836798849 293906900 177784687 928690457 580140591 28228516 742690872 565635314 679305927 348600977 488842208 410185227 862395471 982865549 27815843 237086635 11473730 722538137 987436451 173357486 353015456 186533820 762154119 560468385 890008547 88688793 970570755 219693261 454065210 481391735 619964228 872958137 255143860 945086303 674990581 431227832 365614800 344925738 81409685 303737060 5451037 986264676 52656796 383031404 182418350 175934421 554582665 852231236 678512046 138977190 673087358 437652418 193718776 891418649 652019184 324318610 971722705 506147206 779777127 6196411 129249004 770598329 189076526 475442852 429476927 438313200 708180664 385904281 722464881 266284650 454416547 7379875 418682196 988458525 438358444 873318834 802340107 542479725 939008149 6637008 962659929 315519856 325263723 366715945 19468737 80167359 719288173 196762687 201177199 598166209 591046600 287365866 597088252 662346760 813956089 828924889 326134103 812160698 512909718 422880324 834832263 878048443 713344611 17726592 799489192 727755378 832378518 170745029 221712636 441914730 881901448 484842089 280155569 94282102 898711544 452922939 81208296 441662099 872511445 845937891 491555489 552415184 737057695 735575765 425886530 896111517 872338998 372954737 752779875 899417611 688473390 482291794 954896830 362739965 354276395 149121180 196588873 302978106 141001959 193404119 802248426 148162272 870106310 81766453 715638888 134205292 686324917 53633563 364179671 261330707 399654909 140088040 369005835 426254291 656164171 775606212 970340982 611219236 615809982 363191516 118640464 777135227 498934329 300927065 957252952 533130671 329120601 94487503 100647907 851669974 567584287 520827496 387634803 264200507 748848096 911106802 936774929 460749179 204225069 540946909 595947301 246835768 36950326 56887965 416495455 940233966 963291811 863122233 284849616 153911234 108546260 621099748 202397043 120587625 269883644 452927124 467161059 200943749 607489796 32346238 763665728 65313374 490390187 637270893 548264853 607018390 70574002 266297065 996596314 246175872 725227287 690776520 638487623 284768772 38507216 880988129 823908315 46184701 514468574 163486197 4350678 296697318 294176912 704849421 99606151 421719129 443898314 851238470 310675221 831719772 302242951 23172735 9226107 939866292 129487951 359335950 349878007 116884888 722161685 627695932 617124351 848178569 633427971 215178 862368570 417039918 453318721 284704576 754471278 249512983 300516066 547261233 800270092 24036661 8179660 697118 29107700 828457319 298553237 412433588 373067179 944519763 300498874 343469920 304051182 623964541 43172284 48252278 170213813 450119581 642387097 903047209 188490441 576585851 145603313 956378472 532304568 955043018 624500903 72829426 113968854 46050848 991484557 360441119 70597776 551945843 493043471 801862394 243479355 893364992 399567511 437935713 329012573 400371472 291706298 355405228 723192040 719880154 287215505 751543914 58507337 105925140 471059577 259544532 629180925 397632999 968763730 639660617 313535707 717815317 48677711 926837252 994816535 564069548 239561728 974558581 308404158 471088769 858036311 215873334 226930219 375727571 410404802 358401031 709682841 970843899 939165930 156697709 943518555 217289956 590920826 406026712 681252775 92405971 968030616 207733828 540340257 816688803 873977684 908430683 716611330 388168105 718184911 378126418 297478830 311636661 212921361 826690187 853282710 689053063 336326033 853385724 687798359 215905855 604737045 177478197 175041243 602513942 847369499 636960494 990400783 73048464 519569581 155573064 33059032 205915621 504904056 585062859 892537641 966554798 309215426 52970455 503389722 57324437 142708930 428782264 351876908 136475754 383277682 802554756 540366027 10421294 966089368 792528629 918433004 501752338 880385506 417709228 77633703 374570524 689350978 58517659 729474527 245261590 947678573 656469355 165625899 743406946 753373036 101790358 879257230 219046331 639017572 556514371 176662772 579932669 442267175 138527913 620634555 575757786 943376643 878068123 759312500 118717713 331603999 44319392 68603550 26146966 323909835 175871883 600379193 928998582 724847297 402986422 768052680 874065205 572996396 4785586 403374234 652134858 888088570 194229614 551794267 121557820 985474199 611765696 983291134 446495182 415880569 944062192 101021194 434789289 112434985 491122997 472067711 291760252 985214711 956652626 706950270 877700777 447943033 592619004 21521640 10667844 131912873 611829041 438031251 49379893 674622246 40316746 63122175 132719565 79679962 602381537 92319918 724874526 108368393 744677594 803672272 743687704 886290075 208486143 346421295 784979 364283433 40916122 190354721 751819143 525629689 498240033 248398857 876968444 574263870 473315730 586552162 929310254 679956231 467205622 250643808 575195908 201116428 107187261 673077960 194859092 714155836 802689600 414839580 892844852 714597641 260416624 928748168 27623811 493553434 251205909 226430360 831796912 518666087 882019902 263316335 391963471 746205977 469052490 220817844 577223580 429524338 854173455 811450731 320911025 294266725 63534078 230872087 639173704 964646298 385748898 811494712 81190686 838885796 826027309 251577768 420520217 826502978 385348833 804625411 408586415 619282597 777873102 946913399 918432700 582110910 120348752 367459943 900740441 901053191 304054388 677026040 649527673 261712704 960759291 277985489 556497087 111570410 674476272 618414228 559845419 161551964 975301004 447534261 184210661 398328155 179769341 818734946 83142288 954409859 356476010 863767160 514977024 103281130 562568077 987805120 341833851 103632059 840621188 638373175 82158705 555701223 39639283 579179498 633843436 709026645 906847685 709209247 297806334 654996222 109460711 223416860 82795763 156085955 520993107 540391773 910954185 976600775 157291889 152566219 453610120 205517073 643757392 326526646 191879389 480011715 890135721 751559833 656149307 489313406 52804623 666882787 211973950 174555239 555762301 593553054 996156450 586098841 138621578 948837189 134426111 913451467 470688621 52442196 715782361 945190211 170707420 976368543 498699577 762391236 8947162 928012577 417142546 297621927 975715972 128612129 258179348 720249384 640275306 426455181 853577334 984780645 285734912 950116776 865571626 356631556 244459819 758886164 962084134 867343432 359229359 961006763 85820783 257331795 125579864 607013505 181263762 27825882 373607394 975328744 743435624 141338214 578286665 853764577 143760583 690689347 612922652 908530036 674003973 8914253 540179072 680186363 266495743 433517046 595983664 418614885 740842952 834248551 556365710 943515770 459512611 456340202 673749349 601513867 178400726 562039219 501837183 939265449 474340690 247255161 269183757 833322542 734300431 178326535 811783167 813259583 421703045 522607341 846915562 591123284 560901606 103572532 763677669 645734684 989166564 321854763 583326227 353364439 16132299 694332263 703897976 503116592 798825702 726902423 783280033 971386243 531720338 136559251 324522619 302027943 857400031 180630006 331152746 78352633 265721884 25504728 219282779 209249810 318780504 241277777 237362543 333474813 588001981 206788398 161677216 508894184 366827000 668411344 391150417 319350391 67080107 41654441 969955910 142323619 618737957 399688422 124944399 732034852 373650615 687754194 391067504 261416609 821035204 434577469 212699161 437397737 991015142 732189775 526700677 809357558 782453341 544133334 944501760 882083765 692960059 156783204 150167055 351346653 68324118 118101532 556790249 842282467 525196241 982460368 468484258 233455937 32909914 17666530 69694142 550944093 91675712 175195589 577574115 348317103 694422853 641252764 161002896 302021451 322027210 942246952 479488279 767902985 700364556 564348986 245327665 161112306 59379711 874171419 267034278 429302069 187575086 433684928 459778848 996079925 214897657 729956711 760337682 83158525 892442599 249620595 980086014 80757609 382442318 876696731 32928617 982920674 415901532 548004933 101664689 597089857 818512928 43051679 914885887 478341762 703588985 642748513 706033767 445105938 229618162 382340815 159218452 197116746 139533257 520229217 239202030 522130223 744821691 646568829 535486300 709996827 692484176 358157828 757442773 678101436 61153930 465580780 112922997 335663255 727263180 888865871 526053041 156668903 367506773 73863707 484820761 959760534 897844852 94655277 484298688 53949069 323835935 289675604 636107833 807354448 213666606 508293521 165911210 725401652 917820290 631216405 797126155 648735414 526820198 485425194 148612336 915563102 198070822 553782151 95650357 744821204 47202752 132836313 724395540 507027867 665051339 627628322 934055634 984097026 926364207 802755187 786279970 43752065 575531226 784385399 583662049 857840386 124306024 297953935 175606845 559766794 22653557 880490181 137741666 489393746 159669070 482693674 528400479 114653488 633386444 217639340 238985425 405760686 206093007 20049732 122012081 938170856 180058140 89249323 666995108 298107499 553488089 802516469 191732948 387672870 576270833 331809978 430758054 658551071 249341775 617539189 839272136 183043196 709817061 633197253 490766510 444094257 168430901 4229245 572494614 165769498 295716312 344878045 826826376 873820663 507281721 708786832 910117666 57492594 165864092 807308515 953789333 170251699 922217956 151438686 428392058 180552039 852680763 834093963 129618873 545347752 914259817 845979371 377439270 432873086 543273811 473593430 46456720 215949384 847995007 654558214 580190812 509904896 418679996 308712725 567243175 221041467 916055251 472554468 154655402 274378521 367056614 357830836 532056910 426955811 773212028 900940491 479853060 99913955 158773802 350210866 894844636 22386573 407450027 40020198 643605405 579703289 354957107 519188516 930723963 219952100 929413768 858572710 685513219 146240224 143003851 274051830 430479747 620797416 894233109 490789841 771858152 965254305 781270070 797245710 418082005 289788810 47225143 415736956 991895969 800037605 516810450 792170994 545998962 727681632 985153264 757102488 532835207 743188999 437173341 157673276 269081523 768543424 295584136 615123025 664885553 487796621 410190883 698115118 661904143 173565570 105819842 962488509 525576864 273695103 691114584 681926222 782225281 437806902 874829088 596456731 984285623 655040766 716086849 278460909 443545531 413135565 129623320 783593641 7407316 633321286 109224399 408902815 355155271 63101445 533945195 240754643 811517798 217372873 145213576 589744618 542184343 274447147 706978034 680039439 616760049 278785847 200536283 256561605 591002996 302089857 753370018 762086325 864746978 157250401 949862844 293722668 6137060 847350312 167920236 252579437 375143796 234527871 656001493 563257931 975933613 620959222 441648772 277729994 568666479 478764338 604250890 550524973 861660567 67690204 173452298 329515740 907748934 990734977 45779979 654784230 808534687 303069465 266946273 670916534 93180937 351197886 293671728 834947641 966443950 352472002 518505880 932524903 77171583 158749710 50786204 366951733 680758163 355414955 874760343 144044887 796345476 657906692 460424399 554057941 319152408 537648895 251568639 323684909 387676954 20130945 138657343 164062278 779143009 570478554 888749154 554802216 416760369 44749664 162707139 640572869 404048138 873467886 427685988 666791070 521306817 429439296 563931065 929106609 677911829 973523795 38923020 999909773 464653614 705872592 639121278 325463539 826090496 45659045 309860193 585109980 441711086 297580651 605851278 285714641 831841952 62255224 739167225 825318745 401854798 474933077 190825536 290580182 562354398 459757824 515315770 732763232 738269089 859016431 161563923 44610580 634397215 924300914 976869475 42860613 819064304 752379216 895872554 949641136 586770194 831269658 197468835 784122770 638383236 575222788 641149393 630712 746093394 16917134 435401049 410857754 297102699 648399615 808505377 686681947 19807053 527086951 932831100 530817007 630658052 428844978 667566145 458464399 454016748 452197194 143687766 289185053 615072018 280743529 890782207 84237471 852363353 897442822 613341437 835494083 414505674 917649827 367764333 938830779 399268592 512781917 144309905 730439894 920377849 72519675 741569992 271109557 853539110 227762060 690816913 251537162 222926019 14707511 477100646 824123550 455236490 396021423 861207886 877126662 852410841 322062510 110779296 846239693 279549101 545744828 332594198 564565210 614007046 583118805 783546858 834325005 358407120 509451995 441923359 626113720 207368268 266460924 355762285 903291387 57778330 744383046 347510212 317021000 16622277 4934444 725649417 315746101 187419502 578463872 93898670 23152348 653776903 712083619 476412018 911617481 843889059 800166184 973705466 12643259 712557974 179912713 543152034 100329939 298687729 923391482 995846698 618318559 476569974 738387691 359188962 998899730 582424558 212918655 141124195 153901514 975496300 413413947 209506784 934480504 509848566 937569303 902209931 511703236 768582485 355250679 27095507 635492666 738717532 364223671 262791514 545944544 439417699 380446652 324874773 116609404 900077034 66056053 680099156 317922059 539221812 230500766 983029715 249457649 714636976 674376966 32354464 168260931 295269595 281174961 559023539 278455939 327753343 13610505 550850589 720418779 80343604 522758125 749801844 512543520 712485134 797322810 600123702 10561173 907868479 655007291 878580660 525296125 463924277 789302546 279061980 673755582 893864623 330488384 498184614 370661564 746440811 576042863 367158605 523541756 593921772 863776155 603522280 385961619 417630315 159692375 533448387 921951874 917628637 523789747 273943729 217438914 741654729 56966700 86713401 443192325 123275319 187120595 994081449 412114431 856337291 310368079 378091994 591439655 347994061 21039457 937953341 969996600 855532094 945695798 239876297 11488466 135098155 297735442 319044992 70951068 243829076 400779141 718549214 919083333 973041036 270518110 871787032 421740325 37037169 936739886 834660286 636713030 978669635 630036094 585614973 207961987 340569470 677881503 88308759 245764064 686541333 104295896 473076909 712082055 39959781 739788182 695945723 874471857 880403584 996306809 907460612 341357980 306214748 798689988 585816687 66802181 974347285 488650171 841680067 923519948 86271970 746581066 254232663 499972003 892989214 30274666 519142209 58465185 684764821 955234954 916890298 392119471 740371278 882982922 975980170 635705854 373456551 703549366 722139482 64257255 451188145 882574560 414347673 242696582 32307650 180985569 445109785 62767842 485984273 230773554 141154112 538626561 848129792 520323384 774932100 630172003 461285597 125647782 864936697 525761136 986784101 436035594 388763992 995695038 656431649 949670062 510452106 220266044 357942916 747845220 408589354 328466232 830359121 420874254 484727422 42719263 98438471 70474248 138048561 459071948 894817806 880721056 692786213 947418892 526949751 979652369 253564792 1838162 530187274 706566287 960095186 642963395 853210450 270495226 835481667 392900460 537930437 422646317 953854768 253907341 156453366 414380140 94426726 949982554 242970743 135058589 907801130 282698004 569230494 161858412 543493864 826605344 46072190 886141004 802714219 505716730 605183332 484934169 878366489 746340317 418318419 752574439 413953293 744966401 806556609 992929568 755608700 62202609 517378798 104016707 893465654 219392891 335417639 486632788 666288690 677460063 26593065 321285626 450517766 680818746 747325485 781936365 31594271 308586052 753069832 832312758 173225941 4389546 324632925 252629228 798032568 433918814 604092294 184092952 971497722 158284121 850575468 671416353 254607657 378885708 716810092 485394236 104316246 76849777 781643181 201761743 816570692 69088379 223134086 588375827 4103464 235538772 809704679 855287528 288840664 86121018 439719103 695364214 480743357 806396054 81056215 707702359 501039469 851743984 539929309 868852881 33404058 978662856 202421673 32196395 143472941 656399858 254937202 23944460 767118845 709883553 906323265 879712798 415259307 896203752 401329984 170208238 305481896 843419558 922699406 152691999 997773702 548040724 848003453 577277340 302161004 433814339 26209417 663738798 273316461 878432159 133354140 29080473 372769203 46583980 365440698 428456840 482689367 328586758 26926207 883177806 197107999 40703242 952738305 367125259 106748892 839710802 294411882 747072153 552353876 351011235 103070403 650488002 152875140 211716049 947966105 507868073 442137322 95649358 817439278 651638223 761363580 323783348 130850841 611585406 522429103 471324157 512460912 258748651 817520785 110753719 161998361 661928924 628580053 60912560 700360470 754981919 867866311 183539739 699903944 572246782 587543927 847085491 283588119 58294582 842475685 49301943 662711767 165518079 147613772 103630707 689687275 861328346 576379615 734477449 662254944 92692192 316718378 160549205 842080785 319876830 214575060 307940753 511658731 961040040 507907771 836642440 692094549 117140397 529181594 516287479 369036298 593210605 857788223 544367433 483022978 6842627 391956781 883412651 974985709 651121279 328926764 294006667 521729092 407929385 320204017 190858402 531102770 132740924 601247631 112409706 314120068 448321708 449717473 666942540 864354808 464432795 178532723 86636013 290165481 248593460 621884081 906971423 295039597 733966805 820055343 694210942 72006469 145321641 873041345 59000663 190947870 995591855 339472452 279585427 411501195 172796174 122107579 634866402 507864123 215007998 662378926 215332605 33783912 399811336 136237890 427017565 320692344 83519592 664495172 807348002 650324708 141656217 977621586 40695119 165931745 944639005 731636835 925210718 709088827 56066122 899321912 863447311 175071430 759993989 739849586 153762413 516500053 650403215 530931018 268657648 656389226 308087850 790587005 291283736 828435178 108737191 310768075 87089631 210538952 443177474 789036334 40465947 266026089 175058566 295639832 443484874 457966142 238771854 447482225 157885033 896772037 180692612 714536129 327835065 45567351 903143345 812776268 487754462 622925870 733345524 656064041 712380853 294070249 546574052 469890187 170638175 381838416 293883545 54621819 382688835 285800191 528971421 811246334 418801953 278703749 964705773 634826309 406954392 40878160 78974985 161724913 409232539 473054822 968886218 513837515 312749235 957316617 430723914 529468345 926822325 874842193 777479464 14977979 903077005 184931502 72776399 538943510 524596082 884135125 135703684 809512787 558267755 7860449 735336884 255356789 334992984 536710046 229302257 407850352 30213076 282651327 429149519 668195580 100626973 567861807 934486073 659666646 930658224 2772141 793888108 403936180 883539655 645654606 174493200 183804476 259098030 856317562 599870985 797988720 231720902 871564015 534225842 910830545 155624933 351598689 667827024 979692830 664786215 393732697 12066198 998755283 817721629 720817131 418468109 993138499 131971900 454405964 551092731 553773864 427348039 339707958 240763162 291725733 9627620 595060200 266289867 521424909 2094897 809139977 480360250 416952397 104498400 691235699 383628432 715137431 657546594 107647233 756110535 477502492 441096362 492715385 774265825 399718348 358526251 364636433 327834648 828268419 492494857 376128083 653521376 802359379 638601915 643204351 396161946 423186711 560528681 249032115 650176507 212324188 830949348 748679215 19096333 955971260 745021574 241526913 924282123 845701470 349098853 609746313 124951784 915377168 93540492 467862660 688014621 569661111 180068130 231738899 427615878 759490903 379185755 395290214 481771116 810396620 942951151 175336918 997782854 75798801 977556631 726768287 360783257 947438142 252590730 623587323 402483637 653624957 610425064 594899217 971462173 122292883 2694298 567677913 846923427 521804373 41449974 875617544 170092173 248222013 405523604 267430116 451378237 270676841 749171624 347067558 551885882 868525053 666589085 936047313 395086339 5966132 209359932 282420658 906814770 200067106 550821906 768263077 162025158 613646174 287004412 681454066 198354141 944025041 84649948 417842901 403198033 958681032 416876155 733917018 81124634 346346218 895736487 603666527 482501527 511376494 425144878 446676725 197137642 665277239 122239499 627326457 409565668 910814178 716086451 652246755 735655185 460282646 63528937 726823671 793555602 164679604 158762371 266531550 398172303 892428272 30964262 241027537 119045519 956205497 972307267 789388185 207997462 514574209 608856424 797096814 271009625 674941890 128943305 552589135 721596118 168020413 218839451 513424074 272887368 312601020 75589736 475937952 694836336 246463651 873748669 737257896 873065421 971481959 608259586 632922429 756441654 529658670 90715717 746125395 929864206 267641248 769367411 747647088 561052226 960893164 80580795 210071256 323742799 935949625 251805485 533014573 819938402 937971998 864593863 774417146 207156271 432360493 295547200 253654598 997322843 364381792 189573843 425815757 844265712 768431685 350427360 49451025 944984695 265576667 411387848 625411941 987954017 330897059 18407059 434430280 102927278 750276906 792814094 520587005 423574222 156073479 623249904 212056447 645922365 953685478 731166113 52799427 126907269 550408735 909589988 171625275 121355179 623233037 551893825 332436771 659414689 990379527 898890489 738595021 359041298 715412856 497052948 213839365 828711088 669855042 602630080 29172693 912873933 991702624 1921856 360877860 882598579 776137266 260233457 642635317 84111393 242644903 766193726 450766144 180617449 454403248 427620920 541154929 70670529 686052410 485793049 247892010 191196438 744949230 431033997 120596715 440984860 738728763 679479488 872594070 618767796 166527801 561021882 46593685 263341225 11444539 833904484 194076239 22843370 304407969 35408855 746463942 761388093 114406466 185741562 375961199 293016223 164545128 366502473 2916789 439451699 489486150 384426378 559967224 792068466 367970419 509175675 942158905 485927059 481486399 788468688 341771487 743421728 556396563 132195014 185209196 536976674 502660367 473129374 579269623 314874279 687565131 688862695 305524762 920120699 32787241 714426322 397094874 447844988 725309634 114565870 214390818 716911100 798757459 966663425 224281091 337701948 89933554 760484949 721996278 135655304 598497917 699294000 292567236 999280006 373716249 217623389 825909884 772647757 395138767 253970501 1851436 600647004 369810403 818387318 678328086 351852599 825199997 999414323 153758878 832720719 28950199 100391144 869927716 425007058 704577117 983132098 888312575 958926958 867446287 925497053 308263154 946137860 30790670 486106957 757531501 149851016 236941278 106027926 182690190 213864698 566316265 512969481 439815424 487795605 197127081 766868078 853395238 956261031 162861201 115197875 863210565 299047014 739594924 326118801 479656377 286557959 263640102 614795032 132707159 595739448 77719643 713593732 255808498 168691766 321021016 595815864 905645736 910110272 365323323 713344225 94356038 946666383 374552554 666214823 567395751 877956470 714385095 787481705 160115702 714141595 892691668 642347025 686150021 412719716 623173683 171795811 663764084 907578006 181002023 463212964 843500544 921464815 5987680 709229477 874050478 375602215 253538741 251614046 967619432 372426768 167157048 782809573 806747616 255015662 870609758 895794464 615836275 637646284 837320182 214630626 856138285 814981854 528774176 917963083 435736806 621047320 307275752 99449569 417610609 572591202 576382344 987001250 233319898 133866835 400479682 119585106 838116354 138194233 452656738 364182545 263952741 372895812 868907305 143856957 887771736 443155963 807352249 517629201 682012112 665052676 835461687 401596132 924410431 148608534 195575168 581951500 626386719 759456572 305474927 514785236 839147387 714638687 332824781 809058991 989113183 412503064 559602288 852658959 835674442 175933226 514202724 7750878 223545730 948435110 927201240 764135385 254424955 760612486 22914290 75236188 634104309 418669268 142490352 637115563 397636143 825232946 591938967 428962737 395803490 901948341 940805536 419770075 59711536 977515605 687402343 848798081 589243436 404580567 972989419 463469074 54743408 377760750 961221455 182630498 508640228 973423912 893045204 993617180 947307049 323675589 735167236 535001169 5927613 258641718 621753472 477000118 219556531 721833674 633192303 385809005 28709890 160292880 980789618 988599093 128028425 334836003 65039110 852224181 361096057 585124718 392259978 917140289 82207647 947898330 839650955 899431429 334231455 265229031 56538846 508118812 164638933 718289390 310213220 586748906 567323536 707648103 46246823 550327549 235052877 110940523 858429109 234424741 380590814 930464991 640875646 158315946 463769173 936167580 690823132 561411322 815700431 925352512 574968242 633041041 743916915 956945657 891415523 97346303 130232718 94142210 62923919 265075614 70175970 915892652 778530388 303619781 337693435 305217651 115834539 303434324 568821437 664384681 154495413 80358675 101471193 569303933 43908133 24579879 868525912 209884034 915214992 616006941 839476504 39232221 325698612 175944605 868811913 174356209 733965710 197390418 896121613 656441223 408553912 541028529 519204565 362296913 536953718 602479031 141047745 433077736 269912039 813075261 524000042 209003531 491627451 966904430 703621918 739552270 350618721 930535186 261539547 300544628 385623599 423528670 776663138 803787854 371194443 66981833 969600440 887914300 808708191 681901232 684071682 30614636 565158194 957881877 943700877 328383534 617398448 380140675 242828146 270880112 945832898 571826513 962651837 990300637 858863597 878374553 482698958 733619736 722330605 303772498 270182002 584330167 94036239 969157919 160404322 508968402 20226929 519564151 235374042 957095178 352475044 236502180 488718687 814443005 454477250 295131812 254508801 901384240 36738878 362248164 928685988 719035419 771669328 272918733 255204866 282596331 495595380 471307586 128212898 623291065 475792307 167863784 376027720 988437654 108841100 447646783 572013519 296483176 270419346 803949000 436010745 443012255 465916073 996272396 949166956 794085496 673688670 945278436 121269625 443363571 582621585 866886694 50978718 738114620 62400417 938308443 571282525 908478685 194205792 182807455 36346405 297089695 4396960 163737497 316889439 3099953 353941154 549777160 104764004 154295196 367906157 189034730 387045549 624060417 626827727 603746635 890457195 519699634 65866172 876657779 257925559 801728887 825347025 747093535 437818871 535349498 523203773 795245778 106711525 886354080 993250017 284604152 800713928 256904810 687478105 172669535 250261652 811743698 237876062 484207048 800358847 887893481 826488613 397859210 477747278 589469654 40292534 674249022 987028887 869779325 105326889 810926072 197068126 104313004 509910960 94360248 515751714 175104162 364066746 374108366 985840483 307434959 912492798 56489417 220197368 940431224 83767987 359159715 177243186 814291230 444062784 246651094 957720498 784053836 801863906 183465456 267239271 389379226 265959895 955178775 884297670 526509302 890493710 428592962 173071699 695884422 77739054 739541449 634884310 597220342 893499768 716644937 172682964 498529666 961969576 439183621 407145747 193025424 472086058 419158001 872006863 349987151 324804489 952168066 366269143 247529303 950614641 348934288 255672054 124348578 180312075 803471679 397855715 274164770 803616191 477917168 323813778 308441325 372001948 789568128 890152298 308622568 399719089 883443000 587182753 266569225 85994393 506344349 539059462 228877652 207630403 400999959 173006553 765332189 940124251 756800892 588981414 540129811 196774519 16046024 114640111 86676132 6972972 38148145 646347758 736657510 562224940 406026480 182725374 186619730 267980740 819554488 924159181 636824927 965052177 679464863 466573011 612896682 144887619 801457936 508894573 253733113 201959333 232206153 66340948 408738817 214802825 675507888 342309030 291127790 310273442 534656451 543353434 772498319 285170355 926357742 984198445 218359700 966358066 739878684 377588378 191966691 905793585 230296553 95198795 368634794 311473853 911766411 114307422 334704249 352233275 74437788 226655782 222143613 524272583 872240508 829514331 841567617 931791161 602800521 178173742 208982788 349527233 457285523 610344670 309744767 844122826 226869247 480000034 221474659 705050096 994060260 197142882 163514526 388469395 703068037 137770451 70614777 384215599 50722144 862728527 665451432 179239364 32931052 549847218 452834665 664396446 142069836 888191564 758263629 953199043 581264349 967099084 476390025 934308192 70694624 512099551 190859680 835698895 590955020 787172569 832240734 86472263 183274709 966670610 284752074 252402928 664608916 629860717 661934123 605927463 581753948 50429526 221431168 681685527 892350435 761430114 667770811 771593042 297658877 275817836 195506450 303596838 274308978 457547019 698008943 684915566 571131613 377562371 173433421 101214275 226246402 539781838 655690905 768040097 987204750 66863922 951148544 351520639 659097037 81722615 496236566 982600923 471086672 244784131 844263752 669301919 959815947 186696813 546469078 105444733 784263045 264424079 18621702 828933079 759977036 484010222 761949660 88160956 682222741 346469071 589449912 52788862 528870631 249663528 473390109 319331626 668088607 566361523 132643899 904175231 191555725 469362150 671072430 271679541 697463741 636602395 444142005 966546788 249912814 118174232 545954367 186664014 323504122 373526888 330621942 154347809 927553491 108781789 893251413 23560453 385486472 521537736 711196979 963061465 486206977 242690495 304780032 754253305 1543525 689754582 634542130 694352263 688032096 263820413 551608791 142707715 748652703 927694947 21069641 226548092 189388258 784334296 331180217 320667186 507640553 245521998 773212029 261797600 4262182 560831538 135642885 465775980 592156654 550770780 315530084 355551246 117397790 82523515 213526887 538693778 921088964 223965588 664839265 772895705 514744829 396422333 916383605 175249778 543523589 194520121 699691547 63102593 577632314 809286236 38709773 93211373 241151454 127542127 489447811 218631471 870635249 781400113 458319125 996574946 686710350 341828545 376579257 964292068 540158541 348007657 574872026 792622113 81026315 498315170 452880690 494312136 10798214 798339518 514228282 209443476 619754552 736666425 795278201 882962625 410180789 895089263 210969003 36847965 950175027 377276762 350562021 586256652 120089469 292963114 414579656 263474554 200149975 111719282 555632589 262230506 713197193 470379434 380589064 352828213 57154923 927392490 735331248 744224004 842149007 902319421 893620833 180501055 330946786 694883257 876274182 293843808 780703516 333528938 657190473 302911172 723463893 606558678 664436481 486313525 103604714 480751025 545967076 490140060 216589105 129606955 159442298 428632014 219495774 874052885 335454393 473183746 456785274 663055066 602721134 688452476 267399427 515732740 937272097 533116008 142924341 205023657 42457684 753383131 915533125 753977597 49482496 547606944 8271323 679504869 151096347 89936476 227345114 647639894 638580278 479687015 681304009 669259048 357581650 971814837 39142319 402564918 495911849 549665652 363122980 285198213 285430640 705263545 358768779 46107552 627696388 449866371 927612056 539532063 459100546 41327439 806384193 225384 606057243 691301721 965074114 427135572 52178073 489633634 310731775 310456151 838467733 510716932 412480976 299889071 499269693 821519017 797710758 591003948 952980625 452513144 353336746 560922844 702324756 728976356 119908112 529601293 618720721 75299303 3337895 191645700 801873606 80920468 869531187 780914387 642505284 811671021 174851924 691387871 666304149 849694962 424176044 409364630 598976053 999186685 360046182 631027119 37411009 40589653 4098994 310891189 319969517 229253493 501777816 504734301 665666755 957701582 504844914 106250873 831301125 599627401 676328954 703273205 46708140 647410726 417836966 646902085 682648867 648980501 626358816 466159684 998049554 71447438 827584168 560108654 347600867 555847445 321278096 160082309 685696309 956603544 607918884 288272444 282399703 924419125 833176803 741941334 598959393 761476368 320795026 121777023 758523665 425919901 776800734 333779864 740927883 73187992 98279237 364195835 878864975 902638861 591890063 648983332 40547522 121416105 560387023 322154121 673746830 887759347 930082431 935975777 888613475 735375612 969094166 149467840 388501428 129286455 125045225 370689349 55614700 215459949 64447984 83692881 277947743 25695701 860392721 504728516 822372912 534729833 113808363 306653917 403040426 421726027 661803848 903858941 72423636 472599804 994569769 79132152 773942730 361350989 353320778 84997562 352960212 4873731 82887572 363021107 346533899 747536268 569409229 170723515 911043730 399825046 808954119 978364245 570155592 871120464 262088033 72802733 996859514 515658585 849357928 433327513 56481822 752830627 858499580 103377619 600683752 401566810 386469477 204557208 160717013 12077069 823559994 965927060 126000834 33122936 598654636 554741300 738315437 255878367 493193214 736149030 922743054 4009320 698434497 552000999 20829106 720386772 94247590 737646440 482959189 153772531 23382473 761970713 226846438 714281901 88602037 249146789 155019097 269332489 925635455 14253425 749886409 155697300 136518410 563553584 944851715 369216029 912064809 277846948 607989551 135570586 971806583 781254515 761056596 394524395 896980367 930626756 947340588 477466489 918287779 792988423 114476251 738543198 995469488 602102021 437196659 171811353 504702882 707077415 738922631 880841510 960131677 105477261 600484070 790838162 925645779 877063511 732070223 162422635 566466240 222477231 961239428 33529261 941230172 669351633 927115410 31455831 218818157 536296487 96878283 544718248 205423569 993625518 302033550 572440022 841839176 760648579 960281692 923341122 163716094 2364794 8558450 568377571 142628637 353879835 754502492 193556014 915203499 751291561 715739783 160419942 311284654 822537009 859364634 96091010 431818382 786872132 980374361 876700477 746218075 789643467 568473192 53668303 529179623 972598637 485402162 842684569 179685461 354600793 696593089 28934535 389968181 133185625 346039929 175472862 856303301 83274236 112447174 545923678 648659397 778125131 365792053 286121639 971186603 72090677 959475843 456909918 19230086 678712762 231834694 293801516 984705115 36387867 446377530 51089028 808771522 701515958 535800837 723581131 977099972 95851935 951974252 786796165 788988146 735295268 286422991 590013912 36840065 163799974 694991889 760086575 46327971 4882452 61488407 847254353 953649860 834632145 769145254 853798578 348013629 790438057 350116640 80761852 732286335 928415635 589701604 925458486 976917376 758065034 74486204 607137363 675582292 528726871 552410060 243025549 673997276 292693371 96475905 874622351 636028010 342539740 384395750 167708727 642906923 977219732 745268074 568945963 592981671 878058017 362978914 420464960 239870847 384816732 239257949 383941563 967220036 514033511 817364389 650765413 1319047 517177513 12159065 233570745 32496165 902644435 688472595 265560939 476781468 3074138 663645909 181346890 692596109 468694161 721323015 954526587 926319758 77232471 651279255 751282201 451872841 981332494 234310828 943037507 402702664 381388713 798532028 801467936 688271233 682886040 151397042 618727578 594056640 871470813 79268895 609500283 964267323 52707524 279385474 711002452 145847826 972983089 5005026 907013139 738583108 703956249 425110225 961955334 440830464 181441827 476386563 363771873 600737386 452196142 607512192 101848277 379383705 77014717 50630354 606403502 226236789 385417096 803357173 193351678 792921559 246024690 555878921 44828506 130729257 18265696 523625816 367742249 828768163 163963986 352357139 627319434 243564556 814587517 445014919 565530342 954002433 798080643 251462042 355751248 664540603 169106206 54766844 432904073 212692961 716426489 878994976 853737316 408079072 705465536 212789114 478593344 825967494 815807173 121428982 123507179 827931410 469492231 583832490 438567044 808498321 610031388 848138722 347261216 698457529 651297442 338663423 704504830 652298111 582953601 611221320 657183120 463351064 191037685 663789417 257476685 271668013 538705446 785528255 779697885 492198040 985986968 968312176 495105173 311733807 355858918 233692340 943243450 158627592 211046326 853507181 446362347 271821836 269281416 840912126 840185044 460461084 218121665 427631509 382618942 850574606 240735694 886343146 178942743 830043400 354249377 39890187 917628872 594731815 880352806 839801677 415729077 668513465 48084856 964609226 184379782 7260927 430497280 285088752 512673703 115421881 657962073 924081228 552729322 843937896 156416438 911844272 908961464 502204304 382968528 267388812 162048903 484222878 525979147 301452557 454897527 493588136 799688444 834964284 804915374 995537999 523403475 289046541 509486499 940638314 700507611 703218226 174722720 583648833 860283801 365993316 992738164 911770084 714997677 579688475 607284870 212822741 990108427 453604768 430677467 70561771 250692561 384806871 297908113 343933407 335829625 428059251 399314747 554663459 185700163 127599612 522644862 506341121 568704912 158837648 114295367 470169492 908009649 844997020 220090241 861502772 168792702 483653924 279928284 758663739 113366649 370664250 293915107 613949898 87386705 114339346 859386533 43816022 223150038 223067130 413833195 519764225 52907348 563347422 577161848 661920361 69840100 975225721 144274884 592025109 366475305 350289015 521121203 422336919 754488985 953597910 843486000 562171763 427811399 765046279 286509173 682509475 413119043 169386397 69031956 510105748 609269204 996441933 232115183 2124879 859452646 434409434 664055123 733599885 179439348 576545037 35676377 488176870 638518966 842828231 689226082 663085226 644324397 306809958 747679701 666521562 380383383 833791646 981338889 351946379 273255163 644513685 264422604 955465043 811198959 735789981 399796269 604233925 783078987 682849531 434970266 324179857 591449997 672037498 47084385 614083776 683761458 355573192 195045380 887723321 584318678 35505164 750590350 742041797 72334055 844111612 818716486 234711285 328136468 136562772 253103008 587504250 889305214 910547998 252500831 12477957 847786718 130378254 416073842 487012200 559969523 76985862 98162859 922401742 945682625 509534135 434401730 325311880 917555572 634038432 205870915 808987573 682329983 344094537 845242267 246414916 928154394 755873196 111881514 981542106 675130547 311776178 587437818 985844242 298405830 56550617 993876760 666780595 352466354 317928976 300208068 31288621 755310161 50637351 874577531 868480905 862765654 36607599 988720089 483376523 618061440 780017532 656597368 351235270 327989736 308121633 32842043 44994711 867142728 208868192 375036848 778825462 526669085 467854693 86833659 930269441 565319233 543293049 37954171 391612594 26280051 70523166 649372699 312042423 494353491 859758243 211693797 173112686 560547593 846312134 758135204 184387503 331121916 857419298 683433970 525544359 621584503 393646939 758003867 710477725 205878900 26575460 973025864 955982747 4008525 462421471 745173977 322581730 686575471 126006212 918310030 790434465 379323717 541437227 448345842 180268411 112303571 616452066 827242767 165212879 723594545 198827505 131787040 211908952 869204821 654526911 355860628 492112433 421809913 562547059 360322994 954165477 724568284 857429688 565694222 315913388 884879074 916920237 856483944 976864455 56825276 405445932 808533671 628658783 331631730 544916787 326892772 179278423 928340426 64722640 852711172 881892190 924693352 940387870 767259633 370296984 999365247 740585086 757423939 264028885 814788293 387418025 692964872 1298840 89112848 638329746 472700221 829758969 351641958 822432135 498031806 557754039 770438094 753745579 72472787 856674053 898969670 335931191 590736071 62614951 598484481 857026927 928986668 741563565 856584753 484088500 736600898 496017867 454178058 606328752 243035073 690796177 807464796 661502000 667992736 564412986 724244407 399400584 107995640 479315246 26639640 588911759 349403287 286616999 422949932 551504027 85949406 530207615 903911015 647885347 953246844 432574845 832859161 998914364 730389582 569406250 193147288 629489788 26592954 587069659 313882314 474160302 606557780 742271510 727674348 162563635 534023110 554937050 444241374 463792182 368769703 971850118 347055627 439192588 554567678 370097986 326584495 74737580 13810183 797716643 69804374 496298043 790205912 416271356 618781977 516038091 313775814 274608913 979974919 716167517 600722735 927597187 254803607 409830317 173730540 356366837 495975791 971133855 115703230 233554462 681183762 945800994 770756239 984976508 443754174 785922647 698493920 481598509 195527831 16462567 19034847 99847404 154232619 175624846 563736136 529004198 963566997 592393224 186704094 812981578 732605464 905680556 177120245 748722287 766987052 790811126 191396004 66143016 397904463 383151165 117510998 89549455 69640217 679523950 707898985 884559145 507639403 362340427 56660784 811944601 52571252 935316491 758776048 227040837 80116910 204086627 817005437 367365606 730036160 394444972 368716583 723719246 746159684 153653620 619605312 361302606 453854780 606227609 678669558 800659126 836177031 698535890 60018203 22494327 269297309 475787377 461962805 590765212 891189925 501881127 610798242 982866651 515383931 269944986 85122164 603845574 537053195 874000550 692948110 289446652 362344084 404053680 403593977 468494729 920310634 318005959 739189041 330011757 474273770 944731655 788798542 644833850 599752878 860665594 700662368 604180471 985318653 965814029 183445238 819187146 875537569 475364762 324291735 845068976 127984112 765936106 152039700 750141671 32285231 551856973 735162235 884455530 540100443 697972405 189298078 522620276 602977013 622403058 601238339 395219178 967861527 894327901 926246663 675718099 9384316 913430058 270617496 231696858 642375297 628397074 573319380 206455719 698543855 483089424 114891878 826115350 181229495 26641067 945804276 798961221 357907187 546479136 339469293 910644578 600411466 792868222 968589463 520779027 823612050 240399424 452761426 774584063 853096959 80087670 492881398 662242705 128457316 794684080 339986739 125732260 173873929 867029190 140833316 39664402 125620900 66918484 191944703 488565570 594389810 73020445 176240858 270924984 773642611 283804361 312606276 231742710 13740168 460206946 281462183 412826869 404483348 553006349 859185558 226052313 768958822 659781016 751560422 292025961 704891497 12717496 479422791 590828635 659295807 734263009 519788612 903476675 331468418 438004155 237028169 914378237 637276895 687841355 183341651 644213645 507004432 533349027 539246076 247364662 292455114 616939242 759596915 524878349 288795636 683101320 301120756 779573283 713781876 118487620 605726337 6446343 994456091 700872495 388335459 257062621 141657876 798271603 678073596 294504153 153536810 856336423 700473362 533772727 556238554 444186259 78315408 621750317 669287292 623427371 532915448 356184335 708575218 284125303 77055798 369081289 619747092 447434981 496578375 621627117 296261133 25822590 772583555 400071814 309311696 331797648 535193928 492061541 772743702 804857663 644993065 300187241 226612868 774651388 566205441 467548780 492040392 667188198 460384688 663017701 590807191 31174836 534093148 309180823 910146805 743332988 325796322 238897955 170254331 798329163 622356030 145098628 84543355 553546278 403948659 982387009 764145772 460054928 31579080 184937143 569752213 462404380 515592079 968739734 650372142 138573008 296086047 145959589 666486786 815751546 371872036 385871665 964540831 120554809 148517435 367463766 704466922 569967623 759765161 98608506 324414418 735823797 68109414 295310583 624484416 527117270 772513123 687977786 34994615 959813635 128784047 61741887 961865958 168401502 980825617 423189809 4524338 837467726 438900499 408375185 927392021 813917349 236577659 769035667 601188501 475168998 789865355 791027840 743521812 601297984 392075149 555170428 433128832 965785951 479338175 866362184 33305112 786546081 536888940 667051600 371612807 788155022 654540884 993857091 614401827 932718777 374028353 85667237 154880749 110816736 607212316 500630327 646120540 951421450 942932946 303413468 147719736 615516201 965994847 359357559 261445993 215812520 840055493 810634072 91278321 815147150 866342309 490971474 286789577 341519100 352743133 340777189 758569534 398625039 777805937 258901687 767591942 710291885 64645651 66584455 768765204 769498006 82913579 241577439 72587173 542860254 577473068 337315295 704560031 310012573 921657376 774762860 309360559 596913190 69839196 125672459 300350743 633151890 223463762 256808383 408890698 115372941 969490610 958950847 687207639 524285320 533339323 35804676 457670794 615890032 557802894 995473709 427653675 485321363 51810149 8546691 739772911 60087999 153862950 601596162 924045049 820583315 163373843 774488535 430721607 627322756 864003889 410369563 257702783 431477653 75996714 223282144 41135011 529300632 74427438 427839408 856717606 116955111 817940413 493525978 513165738 646554540 523756601 669891922 653945130 904149179 476211114 609391362 242831240 115801358 578190742 831109743 484053498 253721445 917840001 68300534 697972753 900064272 501656788 281951978 152655769 946966309 263597012 925024245 752389220 997200820 651178994 141201192 977919143 460599330 3149651 830488565 664605049 734914834 299377203 31122678 24272665 374287479 89072122 736931873 298814773 981584876 607060691 796380616 635421251 653955902 70572818 347298730 401275162 461319175 369961404 450205823 873209913 30513785 964324911 147475623 769366334 163423388 775149797 25353770 910797144 802332134 752524162 617615171 776622201 942314537 224329514 731423588 397390169 516376442 370333829 306769514 969480312 362553565 465078636 963567185 667578798 195486054 839999587 702852860 801381193 739427193 356205390 846539173 952355039 796533429 664030756 225982142 679637077 776410679 788168780 245223064 665975753 556089141 575200436 979342264 868315898 854443927 398386601 266172871 765951738 864028025 678295315 870344020 914392899 618757115 258905894 645820079 627300145 295124465 684903538 464701569 225355137 387508155 820213785 927767654 893405633 20403428 590197675 14023634 277852325 128060466 584580244 120096923 542103327 734525322 907693682 278830136 174917308 390033076 837897033 641663590 47156716 372394076 295728227 562402763 778812888 635758300 459753765 836504660 632799704 835962696 939987114 319315937 130264173 431655718 138759824 838775648 376157369 890719078 638378423 461130989 81853419 951841988 200937850 795898016 102596205 977428050 168738043 130185368 362924389 937324856 215533380 366454110 770191181 461923081 864170210 870038631 917010100 676151329 705187372 507618656 983336017 762367527 765349717 833264641 848138822 91637888 9563313 152833925 965450894 709602573 428692216 174349175 903135881 115074968 332052938 495861221 465516209 943071721 555242917 443222260 146725258 987706877 363141535 751041334 691835489 897407851 792200720 289462699 294005008 172503906 856563953 588948711 616053138 473771709 573485755 994871682 95408553 521359781 646003428 965380727 113542493 3257045 421094623 536380968 8630089 415720738 488540849 537584571 170949751 752453679 985664253 33740139 499061154 173012786 501152875 242183460 696723658 86613751 642332844 866045228 272793136 349620682 221707621 539114162 834763888 95069285 140484455 744010920 652250335 722044727 22370480 429752285 85996637 903539258 679176822 634625579 583005507 664230492 292770051 414732818 884132921 684952260 4873803 972180867 578136730 676385636 744436032 620455405 941861801 568066316 523776701 300810748 206530949 862035773 496761926 828127881 235262209 481252379 920130176 399260750 513900472 766887505 446504298 463128099 817222231 542942560 552772832 252074751 982678172 623545751 234932707 713457174 444385128 257689371 112566052 868475606 611313149 549035696 421872499 997068 363022678 867943028 906582126 87504942 455074606 720486094 895398071 935736666 930857036 130639813 977132178 584896382 345814720 557693983 694543659 816743035 597479398 922017755 578471786 714868392 162798412 906845606 93951860 538839813 88865729 589784315 166538036 759351470 416502896 719489860 131597851 384970717 354898468 636570403 530184836 884926907 230725961 192103042 852715864 566406934 332553837 870197707 22384043 598758734 160973239 460140214 469010933 279118809 873765807 856850612 48626501 748121609 973540694 189290949 933914691 854876494 752085303 17030268 500864953 200305144 165987030 835140717 202186061 387270393 36217900 788174256 425787744 521975473 633796054 913655849 791190312 589843819 792166123 954736624 700828651 407865882 140207365 526966604 878597254 154061210 898905768 615499702 664638985 380976914 17452477 773240412 733889531 113079484 993998891 913835566 122939800 770179222 586077245 839517931 740398974 987484936 75409400 51147865 386625032 921559569 367545673 328149955 778797380 948763047 195616520 64685842 445812143 448649808 471531930 874632547 776562853 661544328 119668642 467780352 707742511 864463022 426978991 207480969 754219037 255638601 284588641 949335195 654645723 229716023 985663766 732726481 834009152 254430772 969703739 138132806 830138118 334800435 871558681 977167994 777592014 462453641 96723647 761868987 502623558 706128693 309680726 291608430 324597553 371394468 498874280 983766811 755646330 454193292 597153185 93050115 477521443 47471126 609504328 631241020 349334515 679727320 200793211 591862598 787316529 409045798 762034725 574429540 835631438 600273076 580978316 687647527 197318836 856547897 188738646 620765072 5216136 128829872 698485962 21183776 790402919 700846306 297429230 285208721 798601066 145023649 172265021 335497927 5736671 557804023 690992908 17890412 337698842 925528364 411346958 209267253 848620408 314230166 538553771 594748327 671860181 657941926 23388048 257069473 793835809 762455681 279482229 902765239 446873728 783504872 836039205 263407409 218499110 708297164 52611151 18613152 524919710 859007499 486244615 79470270 34652051 423706031 720625001 303869003 256077899 355832636 831658889 943094964 162412477 796436070 31213582 363055011 579489145 788358915 225642444 307363645 189311891 564533579 563966736 869275549 502363305 53410176 232645456 131532684 6711382 398813622 866996766 658578356 842883690 286657066 190186385 462327479 407960813 138096910 341390706 393877904 433937599 206074342 271890137 620105866 771581226 544947069 276526007 240027131 826275206 535277396 274223843 192505129 795617954 639494305 661437815 890322546 902973071 768380901 441618653 703266701 168332595 97861256 508222997 567187123 512662710 65134342 275518207 125787862 910036954 618777797 615921784 784514122 988285289 92910547 448440419 901237772 648080048 780058531 574856940 970802542 950550539 706871685 234926726 943180369 42864394 637859286 187271448 755409874 603502079 780279781 258112069 390773086 747583440 365193142 54331254 742595583 528133478 894306787 24211146 430238581 84051125 277955851 700414185 877462602 132165722 411248499 181498556 280388594 4810520 406459813 83020237 337476207 49480251 561414592 323885341 639277908 828333253 314139915 84318587 405994231 135378550 184352669 480162078 633984226 60879752 249992425 888190607 660912226 99518693 742397629 62646675 882022184 29012850 762604962 202239056 469986860 727485125 838871171 224650021 190743896 996427491 331359984 112715071 727105774 401279955 904712043 811599591 100366943 837435946 902682387 651017943 486018348 328514139 400768616 453051256 401729390 677767369 26037205 141989360 636781350 447032045 832680471 604752339 168592389 353598653 224184799 976305276 547914061 939482037 244355766 265297445 345480839 641208443 953056986 627499297 83702637 674374322 549758317 562382254 613482768 45543483 666942919 375619321 446716780 714527339 969423888 298390889 350496587 112775713 412707847 722232634 648975411 33448431 471415238 839700616 525158699 930484452 876817995 14590603 1749322 595734203 465417456 349636287 821130035 198150250 935412864 527096018 658900727 74724861 615238746 556044348 268206542 242509121 352474251 956411979 829581281 495825342 285736111 531508035 544490770 853893394 227158322 450705556 549195849 910299811 786719945 289286540 658217692 531012522 840181004 142678251 529320482 328891061 242997484 590169668 487855477 43251688 839774425 755925160 613624933 394453899 505253984 623998201 863675694 230802755 216583863 569331335 746185504 676925370 26758176 693557397 15978952 694842578 531721615 841288403 373725720 884258670 43790674 20750187 899622738 242416245 914446174 507589076 366034501 528811406 10317927 616217041 2793270 641360465 118440392 750748218 336045696 700382743 635409308 650715756 29437030 743075875 168864725 70113868 538584381 520216083 315096607 509650617 191499074 999031048 500662897 999526920 485637166 357839621 858896484 829400353 397876443 78623643 408885325 512798813 902995319 302873433 257829255 473929540 196556937 512967315 408422077 414821627 823085808 512006084 464981260 997044989 684543516 118963682 22156498 417627794 348049160 937796888 416076291 886346380 324257526 901571764 732543073 369640889 447809440 155493425 53696517 577574665 699464572 872377886 698030580 513984724 775066104 487960203 132487257 290305783 247703917 460959937 580283855 704831949 488566005 523142468 405043033 977226669 54502684 292761477 473760033 632762491 294536799 312886819 776253504 98773951 731000856 483306275 866829980 1971810 612023569 475691020 232123700 47370317 329299234 79463385 386226462 881904858 460278960 925834646 704126211 416440239 359940265 489346955 345001850 644902423 881058512 659159284 449917805 249345189 681989896 851924970 830344173 665671126 377280877 650597804 537982451 534037316 103188674 972034965 778838213 277809546 486580919 468492555 800607038 539208609 154054390 832761509 807396055 510802669 874914097 389145766 339463702 536281341 343084313 787558972 282642704 819663070 369334253 885584350 874406719 157580248 41762504 764042800 707081611 480558621 371944404 670116159 223152929 908744617 866266374 779731399 821046758 232588674 56426559 149709760 973641946 676965882 583374736 354690744 798586324 477522684 926298779 1749807 989908939 875829518 47696445 182318468 453156396 228028797 863493483 179562991 67328123 269806961 255318191 434886168 404187856 236655604 646608508 341720101 585192979 275366603 468197938 584477166 821814644 856097082 73438810 179140165 284932380 928302474 304652714 71270225 441963459 401093217 39004789 962370192 144841176 453007477 98021123 47939047 518036780 920503880 526822581 348985604 554023525 601176643 92099343 648214997 439021510 125804147 813352741 29669804 463583178 953517898 27599160 501843512 886667668 910649371 161581380 506253769 977552216 132634848 671898195 573561688 213979808 791563424 818684454 676736088 954105601 784519623 876090379 530393198 114508607 94279224 732517602 79325604 362472045 931206609 767717396 174223713 764200632 243648066 809490091 83976975 13350363 561145048 148412204 480460097 981613993 772131621 579453769 871163503 893777108 933868430 690395479 46163577 72987612 946436010 615511819 810101069 715232775 185692732 980496759 877115064 931618559 522988639 391769301 442407390 609334899 904854897 962728712 192645920 240726566 747230596 468907436 724045373 946202111 972010542 938589426 386797340 545903036 523902304 577164005 273854127 390722833 967281338 271336577 677934634 366961911 753902743 197486976 943624666 199577514 92262733 244062104 869725956 212088549 489935043 784620756 971721871 376815602 589497678 954632550 576808114 513831312 724648363 807882050 933831988 150154947 956644654 153276710 463035687 26415035 980228046 866898009 64354112 422167425 102718421 779732015 253090454 580494995 616039897 653451660 92346596 658278580 986730803 624794893 105660683 702523990 623939419 450531218 81253694 530264894 637425348 779863875 470815711 561693456 523487051 260147550 830750254 364173673 181948409 975240826 29325465 541304555 716145604 996175938 920925822 106665376 656904622 309667342 614010167 167033454 798797255 392156714 742377489 685809346 143283159 58055408 443621048 227252783 89647870 734774587 957802592 274998012 925909182 215146565 957561857 387130271 225263583 251063273 302470752 199043215 972095740 740233754 322595954 596149803 765523953 274832379 757272656 190493376 484816348 420182436 824989026 47346032 105143344 488665299 281794538 570846216 777941990 332418124 981270009 515580537 238387747 133942382 81094008 869993049 20106709 851375836 172959630 179329006 122121910 264484470 173725841 515030134 262327262 614556386 113872774 788150671 932250046 791495821 744422579 362360538 332747193 82287870 313072762 410697272 523909895 623279461 283315031 482325007 234915322 857558394 930043499 93000379 525153077 586408990 858525813 606607360 114167157 827422063 810255014 835154307 828687899 62917277 243444690 493158918 234749552 779932541 943295189 615555673 445426598 614398123 133068154 813401567 962381330 916108494 983369274 918151140 459778452 4398361 895770825 205286783 477191565 238949124 694895215 393814015 760962106 204131650 278940693 342283249 545292678 648948318 70040868 896141278 593627309 261426932 702261959 538689697 496984399 838695413 873136884 634311648 899579655 717583386 898213956 839443169 842548790 415091434 104227488 205594426 983751716 644120843 152829536 215050528 112187124 789360130 114392737 803348077 553607998 347951089 954090817 820258869 604596566 387462409 917011755 633246776 776541913 944087166 797116014 618341110 513419096 276456491 334151719 518907371 648371693 16276802 916793713 921052829 638024573 249808878 248926636 38244003 140796551 193385742 749485044 617455529 974075412 525262062 171044546 667960454 513092332 203484119 757424261 815553725 810310610 238580758 467663558 16022469 632331170 123200659 777961576 756252327 722167387 57585662 516378056 868318043 190078655 88983335 32882097 617603789 644711974 387162767 118395888 373632352 10572709 281313726 165769424 91111299 167836267 291852515 450099152 837320330 299538811 566086022 676507577 306188018 687010475 257298833 525941303 531006645 466850995 567706841 907682640 129780567 692997064 535253347 715940267 111404572 177415265 220386455 139925625 990747264 816632971 23905986 148109538 515865970 204702602 22714674 445714174 767899359 697528266 101433050 887431008 513269597 215033473 713536964 388732103 52882470 54667049 698680289 618638811 594754470 525396076 528204635 404102674 160740419 852781954 959381984 941598540 982208893 574676465 248204124 2911863 762326626 837210973 584883783 231607474 612379238 833541513 218595673 851946210 170337130 640871325 953535403 691594536 165150054 472295385 492906615 493174762 686641412 685022173 674655744 155949706 547432001 485396438 635988985 797124394 717499635 93542098 764475393 326439610 551455463 361142719 226718885 328058929 46694025 924426203 901928800 372794046 919081130 477729470 605084317 809689267 113460646 613611417 527061852 374348073 891021248 177423199 673966810 944476228 288238381 696994968 989269541 702656208 737376149 682594543 868981473 764454419 137976500 293619522 15441634 194973646 444543859 836512715 374091548 507404480 699183701 31137598 763794019 310389326 231463623 267936009 555916918 162893974 107237197 398836588 365618611 954207142 186487157 86113066 199343650 788332878 437901566 5523965 772001194 880198673 548691382 308030642 704123389 798533608 717961833 712315178 568258681 264879240 443551323 602829619 608689465 762615686 653012905 476293847 439723596 843160810 258148887 728292197 581120422 974775199 605925510 589419277 860954352 910693255 525046397 639750958 252918890 685139929 459854392 832343129 696945564 449824987 688530808 997117501 891511528 807226575 214586382 553924715 179474017 47901265 773155201 410740775 33601091 192427583 72194472 461136050 93315268 257472046 918168183 533218180 674887557 268333383 200896863 838959775 863675094 152401347 981247608 234464335 840798073 431453832 287357942 48650733 174781786 802537871 712869918 220594000 295689895 293812893 250058055 273281734 639949998 74542453 675698098 212357444 632310435 595853293 767488597 46614318 299936554 665584335 348336030 440399757 647110890 329926836 454366576 389150960 609517873 747331534 759489948 644292487 484446161 115275951 469880726 825745435 624993072 968785870 976879802 396852210 8094596 477477981 255950985 931888413 140507425 909488439 653876519 945512846 423082176 943784155 313523310 700754699 671763678 585853256 306668584 578782743 780134318 678642352 193405482 15696976 759499402 278815985 438842037 593702873 610416607 626405775 462220634 592715652 167711861 795502920 26113461 643939066 520549280 224505859 933857251 566270688 89194872 879286578 264283551 295511086 384823738 365268980 694785051 553647133 631921104 193667878 653186822 761535637 687806782 82941448 776073897 646036931 781820382 718883074 627051145 331270363 257954597 867235591 294221641 366609729 681210785 875351880 396281773 569581670 868896003 153236451 956734510 625088585 636464808 912051993 717650360 137976262 735118009 190632605 803197587 322938296 610073314 339418816 155735468 25042567 913197867 754071663 446653375 907914243 806621494 881621969 345441570 167433129 718148944 141394526 648769485 687268034 175866828 655403658 865451036 552591899 202686926 878230653 376761232 653578240 376757573 220076632 82576958 128846678 598510806 801901062 410694407 868759683 552091648 875163867 869626271 258826443 954732948 332743212 960642420 30355029 103207139 91361149 239969927 553879416 946449621 536782882 338602076 791956295 749898248 292770383 792856757 993499278 121003118 572895768 246867775 557028281 803129399 752124585 814419732 305958703 998958865 353390007 912740722 253938937 379605414 799562328 142734460 612902811 954055901 40380674 941845406 736034282 519289673 147173927 886819855 602596778 314469842 399084144 94346621 122822263 745656845 231517668 639243758 944251198 354445966 210148281 284685716 416730153 400923118 981254162 344704518 75571260 838948744 979164644 585505140 498489405 558200958 454767822 675698178 822852714 961517337 235816328 846738917 304464899 639960086 142228886 932866887 572526614 186132027 887240181 582417480 42181019 300168201 906216794 51528666 450145488 621385178 821838166 669227524 363551172 956738579 358320690 936714568 117126759 677962894 102137540 51173935 603755325 926532204 542506125 440106705 909855275 121869612 228328751 4892926 135815819 375820684 108414253 793515653 514078825 823125361 840634818 710607766 483326525 626879789 112351032 986292831 826980076 675016796 974709866 138714387 992956650 807901732 250193085 838120791 768305801 601314334 454017594 980901352 706360519 311363406 580389350 275633721 354744445 892212542 792968622 437125257 650053888 596156639 464370454 857789521 927965106 464112085 771744537 236824835 990108494 125865612 782877604 364005215 637161348 79846684 404061965 857825078 333268418 945203468 938174159 447696879 534387264 732461053 616918808 189182421 27651740 130403591 638083838 329886219 343290212 74268756 326304338 982183368 492165654 547409426 866192216 664350769 508094313 808649572 232231775 680426844 437461845 632844523 298730200 232536644 798355388 248165761 722655207 45073636 147932555 232001285 50999167 860324928 446488695 601712026 748677143 973570224 943660406 55793767 811194834 168719237 597113112 18928646 123427707 4398671 47938463 230753518 324028418 118343592 790564091 491861602 989718389 20466688 32182862 926371884 40564181 722489940 670970599 390683842 368176144 16792369 384321184 550613531 63353861 211788392 470831616 795844752 35293867 170256769 575297669 834138220 495695548 644142365 443133417 556739561 312355861 735591593 568637204 519363520 156372847 685110105 641987905 363982448 509761472 894121824 788526870 365422916 882780401 212666091 423305010 333625443 638919379 401750474 178086186 153379556 900806199 930232564 174772987 487782092 296495898 311453114 629617266 376404751 13658881 712140772 583034495 433826110 501342703 754818478 276886108 691613780 350720175 593478758 996913760 185492322 753425036 764427371 437197129 337863817 709862929 990493062 283170912 676543893 520860729 853386463 834143371 302287475 483764571 736744819 114488163 719385981 846739312 110343514 4478681 879672851 333810434 246935533 341003265 783460130 58058077 128971087 245735665 872022449 103270473 647575670 775215157 493106806 577303593 366594496 918947741 730780575 290314280 991303201 850100647 984271740 589577144 457260221 281690210 293347123 251256775 506464394 485013056 122861143 844925731 198427152 802327261 905415824 535527078 97192560 605541652 769743330 662320990 54002864 396734386 14046198 672510148 16743543 74411404 436716018 347335345 438751604 823198634 901297191 810569683 483344724 665000473 160220919 120617967 447367775 213445720 315145487 153601620 283889225 390099126 390670561 985199927 906998197 952916711 392995037 205102356 747728566 310572494 800203452 99522596 407064297 771627884 748286684 589562702 477078906 93066838 583827300 820275270 502152984 782742586 596023514 250898390 217194645 259204754 66353664 68275603 409178818 158117610 479420927 605763839 336395095 402541267 893188033 350297202 564500007 526158544 782436727 266974164 66694552 121594267 609419215 384264365 631662438 537219073 614080323 866172799 936053028 968851942 282736595 58705521 860133880 365901951 898043130 838785929 772114453 51666387 396262069 338228175 455842091 469011737 37072689 710219060 923753263 899458971 62678621 681517121 977555049 407556286 530940366 730033025 112239429 295450701 222710530 181054154 302509341 659237778 999120964 255230502 630385442 384491960 193860470 279915770 900120684 801467352 541361192 478191407 857942689 332885212 876392138 610115857 434543017 679747338 540269282 176717164 234706663 130076927 868421366 564376340 902681517 571898258 527222438 835125494 219361684 854811637 580754238 925731394 86536478 813397730 416883470 533418428 68280616 892929008 671140230 955916826 947984441 457173848 213661079 470488550 703572079 644268008 379419688 754032836 521707987 725273655 676029983 340563606 866417429 615723374 600379435 895130798 206006350 173713632 19810600 138404554 114237786 319191044 145760089 773676033 442059164 748951342 477045648 952436684 70603099 895799977 897297540 503615973 875378501 269281397 174856115 247876223 168325494 720282679 183478690 635683901 445126687 268442701 832583281 550683711 924716744 615878692 877162820 882516107 481273419 922628605 483357827 758307027 229211362 467667977 265581161 956525817 299332177 660301923 671894653 490922260 31594499 974845058 354183392 424773537 216570094 927785702 344766366 751130996 328312498 548630616 337783260 880768164 481028886 108137936 18591554 960748395 658073097 274288664 347996223 532902258 116189517 723567436 97546744 692286525 553366022 163956950 183284612 67066296 978760153 25275100 105798536 693025125 797356801 69862764 422315908 945435512 677972449 712592962 223916360 947815868 886495822 579567173 689848292 399244435 392413670 542130485 684177777 719981454 930148643 287712715 393060882 861041324 931667920 761252577 193739062 288374456 776240231 265755103 474715331 36140203 527212146 557236876 866455493 496988647 301329874 189483634 238294561 471240443 129067086 656199410 288510089 859271169 796002882 911192467 670898720 814206724 516216971 199413704 729848672 756303341 871634612 974335602 262969666 420818517 727343612 896197349 31109912 942973641 53942257 508138491 311657945 206884 141850717 323823940 319490032 995381915 96743666 551390446 980850326 652652903 622811184 733441398 362034397 654408379 250589056 863818082 697225806 160692162 436584416 439935066 616816464 703008126 647829592 812312884 75216963 517271819 585793416 381352464 937466661 990082380 650568061 722570083 501374649 52977291 931546120 708750769 612840167 882235244 882195461 705962838 44494557 705026157 556247278 378339964 544012966 521714234 187229014 885667376 945958374 540621339 247891059 212463447 294246288 755530143 44720955 327505524 678333270 747002511 864119492 219338962 802293797 840201287 256822719 296929620 525251482 951110366 575712289 18032404 758220083 990388845 198484396 441101800 773325291 137348984 431201141 435901664 951505700 924450296 817791444 949511631 878005213 79026877 210019788 233454393 296058605 859440447 750852431 799585150 522842359 621811458 526048069 694794216 271135758 442116261 747633696 841518515 910373941 254374773 940198838 552502203 606057322 455608449 433454693 592865923 335914296 301304719 323510438 119406622 704419285 679242881 956232224 181635181 660080322 312399875 671199248 570245952 797713917 471671092 710490567 548421827 763038956 897416669 260801406 921348917 566008600 463206476 352319238 115247741 994913321 994131571 569621810 530801206 533188443 419656364 628709091 60826828 639204643 788297043 738692601 363081211 987837101 952890006 503617126 499208208 214865244 797433120 152568755 963482008 286245904 246345252 71038327 701123901 68597829 756862982 110266985 936611591 87308638 527288043 691904355 185156070 948982247 24133880 510836726 501340259 514932248 378805767 793358775 993264340 412407158 880803806 773797611 40629484 35544098 875570595 356506853 390734668 725488282 151544723 485519359 135985271 480413982 816767 797516661 96101961 220175394 113849799 465227077 806577502 576876729 616949605 3504605 427379526 726195119 508397736 267645339 771248991 954178891 447165444 874616031 535091636 474024882 159112803 954772764 361296136 575692820 765494693 141376379 502541492 882365936 518757825 411074412 669478787 385421924 5014093 338561456 1076905 404999104 115011326 827552100 996973696 308518350 266569622 341759926 628953312 257740486 891091305 414285003 51403096 722259574 908777531 18055572 417872359 816377694 622693089 839145548 841080182 809474529 485582169 41912719 994697821 120456684 215753388 518151628 703975799 881372136 469832620 294002997 11720689 506034024 778629136 832468569 150458407 320060160 856456040 600780025 648721990 255262042 750270730 561303439 896652411 302295255 229514350 113741466 465479583 283067658 155064937 255438743 421728852 32643186 857978048 855406401 750605215 595625681 787990629 101466588 910815880 586771895 453824526 649232665 763338414 534141559 134303058 321886819 414845630 806435126 365689459 616635866 752134058 49961379 248128129 411690381 397401462 944317630 927995414 595150264 353606734 360729327 98603611 749897683 910874389 515033431 849377509 870690681 952160778 292662215 1928118 505723407 707977191 892999135 553457664 547535385 877874211 469775954 229603153 890634932 870199935 934306179 55480955 832260294 246264893 31358456 250800607 781461673 977644624 22976838 579802093 135383625 71219834 82045112 335533170 85438692 55794853 282835088 851172815 556787139 158909466 100020857 797332336 852511734 800515344 519898585 534673484 714768678 284698030 656125191 412161297 601967536 881273618 497908122 123157308 321562927 380938486 740384047 730689393 210398242 224842431 664359802 285492906 424300936 196319141 472998402 711997304 454298134 214981448 595116675 780861162 714983899 406672333 464059970 660218549 64235369 219124527 196991495 109250347 839417895 437222483 673855281 227530183 553324574 675331477 45507883 579124292 504993874 234952317 969051674 548261374 141662005 228650233 437423091 367373346 663979226 836183871 763694551 855348164 102667809 21407050 547034592 979631128 996982397 703228082 892319170 151918619 648629601 230011716 423648477 711192945 416676638 465656095 697477970 985870280 462791404 766743161 165169937 998579340 357915268 555052568 345924963 234901487 503807079 196626105 650623905 460486158 90884169 174941025 678659586 79843622 818502772 966620012 320578424 462968953 422767771 933207070 398282876 500522610 940456237 106263041 37418810 393041338 461368381 247884565 781452090 15609812 723669989 491256081 386521591 390837565 773914422 929924790 158957628 409531123 587708770 995700508 44958728 582598419 640892025 963702640 622400612 564682244 899191404 409322375 551206974 481931216 729108167 933155539 52328855 23809584 633800163 381003637 266117706 434967924 686050169 947973223 76944468 607790260 199511713 812025075 545366796 145132627 42631709 133858019 839461167 268780815 653556806 984468614 765547639 148252250 547873775 689184876 832524838 932214980 910607738 387944105 760317107 933873135 427879046 163260309 33270058 278766914 57124806 739603004 92450648 81264462 659763841 25716953 952364940 206096383 145131359 129783471 630406930 640867070 811975556 175223500 123776202 972476717 920618863 760463634 952067714 685805402 983736032 760086926 107464724 31422690 940891739 178795 350157700 851705851 990858145 947059783 470249096 41172049 634867866 919319707 42399618 35991957 836860419 847074505 429192879 165864246 280896823 480166354 372197389 467322359 578007557 427528937 864952807 288681085 991119362 536601443 121024079 435311460 778588570 295344697 317458725 315943672 353929838 998877574 324805866 259078031 627721927 760470672 3910729 614139743 431708921 313034161 742037913 233670095 542037470 169684089 665586981 780662888 644463455 519436506 12189487 763510088 391257935 960932003 493603287 750461296 178108485 977469994 972842716 644878442 129475951 399114437 382600516 445951906 405068249 298765150 999968667 900594863 342818273 229847563 773224132 257200189 774169666 783493043 95249996 285523887 724670163 221960455 723881532 780339664 37190376 738536852 132256404 189742697 41067501 689632175 301807946 537522655 282325273 365045313 524055577 375657806 192384567 725140433 773835577 720462379 330776712 792391203 55491570 792106561 335340280 764823103 99047221 959223041 414294968 497152963 562157621 882768510 906988081 27895666 684860678 300764135 630408909 975923249 639556644 990154315 670491520 867756880 474501600 28480169 21582032 542410224 422592692 46542624 577321878 863734758 461449252 507690422 814266538 3705771 379875848 824160213 590080671 585105087 158903383 822415972 349068868 816324498 968150079 666963349 71562630 246403088 530645012 981120061 421499847 786616860 837739484 530925209 706371223 843361290 483229929 849693644 291326233 494978330 799636997 827192989 374031960 49711769 957835144 603229150 190459302 305610203 899111482 498721578 608078427 687597125 867891770 240685414 72073561 762373711 665912965 611438057 939034073 451739080 738605110 623319344 900567760 541346332 641141467 427599248 142483951 148481130 172034076 814958432 152595218 740148579 315544786 444332451 839041881 959586003 749486327 298803788 577937217 154308488 604902486 543963492 268715960 863950061 520401708 826235772 667641237 768480291 860073393 355934290 876762970 438130540 989703822 695576409 782676082 299289267 434347065 733489097 946871197 574572780 535414124 200510560 88239621 857405750 861635643 983886048 996137795 990425229 313588603 806967877 289379044 494077969 315823100 306213437 262458162 108633314 84329436 587529588 881168886 907184102 358116017 177674276 647723182 123532997 173273525 872531329 350269603 757178517 251354725 959354196 171278487 217112536 716612431 912510225 238467109 71598193 364672891 709556951 143274029 269420096 986697942 430945625 174040201 924283761 769189989 428218416 309395904 884049265 435787903 855097389 710962739 945533209 387723970 70255071 795138235 508398079 981669752 400179971 435389895 888241419 976258819 702109866 149831827 435657783 64349979 66058758 788506880 739374548 650049498 810036828 320237903 330695710 727352655 760772033 121644609 130106946 533808876 204253609 399658327 117690533 497335208 501923223 192313526 417276959 525440195 147876663 22098967 207201298 380882917 761559278 83994017 90969639 281062678 459419933 835844857 547736437 903135927 752436155 13276440 694363044 972528714 866743892 602270648 612401510 782185639 547061648 627821313 97259492 104728557 329139296 937221884 643229186 469255016 69065312 107613829 984526153 874119808 100706106 389762610 839543548 436627904 132600787 531712117 423266779 651913861 309920558 232697635 257129095 506561238 975441113 28732571 891173878 607703799 230652932 193813266 193354351 634445367 714302259 248953399 340257006 872799080 232198059 767626043 529859222 558672449 977930707 847919060 631745790 840603664 825326874 216358876 129521628 91427630 566880167 348790780 992366115 773653886 81653362 914398030 937965946 161794770 697148320 726043713 622329576 907849949 210053855 274238566 199279892 110862876 672670580 156958128 35345836 178160576 509182859 260542339 883537650 421885111 747580468 925050492 431236245 994611647 29597761 441453827 635054199 853961525 32040844 295495173 672303977 532225563 823370848 1732532 278467698 345045777 415809439 21978777 346582057 213131860 794343845 15423838 870557894 443554906 179986220 119099789 631826582 386937833 300190029 878880430 915620227 310171980 673352805 85035844 244098549 852164855 148083807 563334701 298478331 30597598 81251210 401712323 751118267 670435677 49819997 974972801 232965388 460148955 101847931 185527819 456932370 176080553 707704953 719543731 742090146 975833312 970187441 722525745 360189365 677927016 179938847 349590963 860962319 902960235 797067455 358580202 10888862 738804142 383519083 494091628 498951484 677829000 791631213 234866134 115733973 421811932 83112208 293438867 344677519 974665253 663667425 600960163 809008627 574271346 828342290 641389994 9231553 23595353 718350994 318868452 37589014 335666006 510423380 278486153 24627917 925918388 810134886 195593481 600777954 190425098 418470679 494761574 511266673 175021209 94703777 437628888 618552150 311099137 943473176 931801300 610619027 143270059 659798726 548853439 401636128 811543335 250997795 924261756 819605270 517243193 758320655 583651000 386643332 224907768 711527975 884367435 860329901 577268955 518054717 81206815 724849981 673569364 964772337 27726034 692063452 639639018 205480544 656132885 936148257 718987769 778987238 179749654 366432195 213761822 407875282 856262063 180348086 73460959 367756836 547699802 937575683 694839602 10282660 177994086 490951213 222539263 999048630 953828528 870495168 206920741 664066434 946911614 214875690 758037577 753846235 643108201 674611142 380557601 741939322 119716021 130761242 26809433 524622401 147566861 805819933 946451837 83702869 161448698 164983837 224729359 470589330 622717615 226185320 361022702 97341491 83134101 186517534 19804191 204440992 127222454 677836068 25680959 884449760 802148963 808314927 28396758 172329168 301275878 912639976 177916906 935507053 554403398 589203761 426483868 471175339 16347434 520387307 138780100 50961094 954299067 21261305 835791330 911805450 406344287 159898045 125906274 343312840 361540178 89343383 316589593 957310614 734186929 700403525 67865157 154336537 265659970 993876986 828624754 814111026 976472415 651207724 460987150 1428532 905542328 538631318 733427395 588150199 445518822 278138437 845601172 675317065 654286951 117236780 73180285 949629534 488308148 533801206 76403848 467636630 475447909 857085294 704726448 802031640 244031502 758133617 662579830 417868018 231205574 888291170 254274263 263128279 700447458 235741758 464635598 288425517 258748659 908875149 427454904 184579192 896778531 183290780 423931802 148608871 607689203 355424863 678192866 712785262 857534060 515648332 300749295 780542417 154066572 510577972 214383130 66837564 849659517 991250550 618222571 463531380 779311071 876611333 707101781 842559588 941078621 514844887 982374748 266793537 170690057 137264205 41574630 403445893 420484041 547140587 381310337 999727897 956870261 774563468 10811802 405336316 76784370 165050325 143753754 94123587 618900002 302119846 804173279 683017316 334351727 991541042 539247649 567339556 63790486 847523703 480229946 152969334 856480715 743023325 227199719 574568559 158192111 914351293 781280461 471105123 835297355 997626303 655210357 277911593 502796535 482354245 799462283 495632089 365516313 46493467 669810028 267329273 375505045 343816898 490442992 618592699 464690938 969461895 727928463 135518179 401297172 128706016 283089771 698107023 168446779 150635222 760055269 931249363 364436988 778550921 861050304 3340626 508037367 268334734 411809461 135730156 418196725 11273003 868457897 739751404 849266222 348533252 599509194 174957818 78628638 515559746 214504345 339404715 103259239 360490363 85036769 957265747 991260157 574368096 188282517 583575033 168835226 444117602 749035434 677999068 682710424 337695886 255426855 872371452 561139946 331132605 72789388 9338821 156696816 786748868 310146075 857793415 252136137 873284722 479406131 681818645 393366567 570016685 781062985 130064028 349670427 51489980 126782411 956284918 287245126 609857695 172286510 796836478 994370409 671873163 581237692 756394099 559659280 749086384 998241844 427127444 593059423 296909750 39870528 732471930 59027092 161790643 296011651 658879756 981503804 543664654 539870694 18723293 61853261 80039024 557009296 962856509 547152800 239067550 447282092 700117342 165810149 304007529 669200569 448771498 380738309 939162566 867468282 69570172 728365108 182042444 371932591 84932606 984601616 505727922 733890883 486287965 722140374 800484238 712626075 25042942 991702104 175579804 866873032 590398333 919670231 643500753 204395351 529670368 53765607 124938687 963139003 723468890 912382543 298986370 71622536 395546644 845313363 336186340 959691519 635557767 743882767 36500064 981857570 654528281 221525036 785452318 451538405 388757699 790589113 420406799 798597845 645676642 332491219 190218444 839080828 270369176 363212688 1382753 559861422 422941588 962876275 700573013 495746244 312766833 565583125 304115464 433453099 513558275 905218552 31977834 532102413 253501480 45923345 636446864 164889243 770490042 814957852 543645568 190249189 69671654 977702356 624159411 788876309 911991524 104384779 882835140 19360097 512334661 793908308 795836033 857375169 836183620 565262888 746965251 966151494 86860908 720387149 925184953 986318414 691578226 462082965 332768399 316316754 615534529 452601448 384198503 801502070 343561610 242267193 827005374 141537212 810016993 693914218 905541861 797605448 966712845 25109171 681281460 504279932 637070672 490292400 709950759 336085920 411486637 617097705 944213649 112284216 711956915 162708010 250411294 648503276 114592917 96149799 537325798 921378683 285518494 879795270 783332711 532395491 118740226 948029605 837384979 935778999 974116089 893003449 773356623 585447476 240088922 750746959 802531324 165310235 224113818 763915292 747313042 106244177 547646822 118493438 895094889 679127276 563523689 620412662 487193745 58748825 496413450 82496394 488038075 817521879 64332688 537467098 569113990 321356870 390794341 988712339 568911981 886390387 229306622 171685854 710856390 558478667 885224568 282146351 664980923 441381761 442813815 976660789 951355080 268397671 564942501 483960581 910285644 412002572 497641285 645518709 748749501 845902325 532016075 220105717 252741761 594826285 888476024 224196254 599861634 374739908 917339921 213378249 377946545 227667679 326848847 231531287 650146009 248270211 725622046 333065033 977211335 333691050 635711059 940697767 488951464 574648243 288026084 491307565 82648077 439723416 81005461 582586795 861008490 903753490 177104483 312335436 26238926 70354032 286488562 700625487 427228953 48229818 981247711 150790904 375706044 510347517 676642638 610194682 761140310 2433284 215937890 746803439 223995130 332539364 293272763 765555583 450137878 135402703 387309221 228642897 160992155 555006334 372557720 192699994 271106508 522604654 913473762 333321079 266363339 306070532 205532709 883250037 811652186 78569425 80427196 84643109 578137003 277564850 585055680 778376187 764987418 532149751 307826497 877418179 59379207 369401967 223102425 64201020 408023739 544785816 600741996 97755196 978422479 920718143 527857937 343576071 916326454 235244091 282713529 77646061 547557108 490440540 808410714 173996980 352817397 275446103 25895459 57432448 259608552 395716946 505803116 90419648 941239832 581840012 706361669 764882169 929230061 412618389 898377839 967838025 534235376 684702495 711623285 605175891 522686122 742809929 14704057 660920885 127251733 146012369 163257649 444790205 281418515 692423192 563895215 690317696 392949948 381286181 737448330 599466468 701273046 547655870 693660421 283700065 958549122 159987614 96173135 912622455 204322195 364165396 500480501 326657559 713134539 185192213 435847061 329625104 552216484 225646029 180163428 235373638 728143229 763422541 397659536 177155170 369668396 810376799 884220067 737131937 2569157 278552932 822925654 552315401 868181557 363703812 607976669 436104433 659151512 430088283 29453437 97238427 749824172 46262445 116872367 781632288 948913797 657181911 7276727 149572068 346325873 863712612 961453044 539895769 374379108 409656022 644453531 973634352 154103356 357334709 33423499 523077233 304374551 1044032 558021854 625440929 539146846 644704868 758620941 936232464 245215136 607819304 661031985 187742816 810405175 571184267 744192186 31350500 455737870 397858444 851518674 768930570 935115577 539816070 452076314 506264634 740210475 699469763 283725945 985238636 240339301 367765380 856105607 324450974 103040138 329840068 442760329 454752340 775917786 980348657 389121189 811074008 64870691 70680756 158736594 771064013 467595699 713501391 795683004 75647770 806350137 745987046 830415485 858217918 505503417 770945339 987427256 943762154 238709866 163881727 985427217 351682860 162603995 543104012 76398461 554657321 280990552 644571474 834428268 61174821 49210781 820256170 834349461 992307612 336995079 71780712 84573069 838025208 36765964 514455544 143418922 122241115 882290697 484930599 809683445 968943388 403051019 184703990 243820693 363031231 438869961 625707407 933767109 744881898 96114161 54489214 628010146 915490227 185626778 111481754 220191784 705185263 690275980 646799051 680107965 55489130 647430396 175377243 245669893 185089940 559755350 435272915 437320861 876656833 541802606 124023856 554719295 76280672 48261532 828567402 9975521 625235907 804134955 25042185 462663888 868451650 81936580 205073060 780111593 188273607 125657351 519214318 563466762 314851184 952653801 817214977 469030233 216203715 935761200 235751544 788753455 636461539 656106599 35738521 850797085 281265621 451309139 626577721 557475455 40491602 124809371 750223565 955101073 116367277 903422960 878866346 196658397 923544737 503033031 184439256 587455908 874805891 77325723 411353267 883209405 425225626 462953953 193644018 637253025 540713149 966682000 555290089 303273480 80592609 184824739 851104361 829037975 921699993 859703056 547622679 701216583 38686093 453343503 279752356 639514140 887078262 306001960 587871339 453618239 935182422 519659535 833521770 287335844 384683194 39114493 477659763 683492615 343762684 418703784 505608147 812404175 984111684 61903428 935657906 951244400 997458880 462128082 726676264 30775442 717755776 304145544 692662216 657196315 480840147 684378871 639008907 189252490 510258143 266732862 266871399 554888690 880368726 954448887 494917693 642652369 240234076 732585483 769733926 958087447 769053669 347430477 901864881 896875007 534436088 210741295 471795794 902284420 639700033 28538322 63013627 733257606 684055618 304424160 973446237 789340774 71155631 75094946 10786037 88838595 322516192 530258354 246357512 785734132 473216349 538732115 184906051 51947153 5143717 255627802 289202782 60040737 194471350 354881374 527043555 518254296 539150776 47592999 752017716 743050087 470137345 96355449 269582590 311584158 248151653 399601842 931917536 792920151 63357757 548898252 230275565 750714460 466979703 659124971 664676488 599592130 931422460 884391053 588777040 939989277 819471769 72691014 275747514 974512688 179479818 459499839 705865345 181729546 299394770 384956526 663684940 732378310 751770391 681954263 375007738 673118088 541052887 749140465 795857844 722491225 237965001 105883040 682474149 717937021 282574829 781403857 918578371 847677560 230654650 590858045 776199867 65929641 342002316 533425974 350105055 594274180 316319218 729985054 483453062 984719349 373359859 171598029 552083234 352003518 385257131 452794192 813293698 667985906 474393563 51386889 304164638 870253901 700505554 188182222 395615867 306169159 539975747 426005124 226904075 747492595 836232974 293526065 722803944 62041581 112934134 133500925 150647508 866384537 532422215 799329940 74974520 935575580 486689505 617784556 81311156 837569001 755643262 546359723 257311331 563346880 580896239 684955697 687306703 989757400 195584661 607749520 575725171 209050219 147338340 530941778 19751349 171951273 919924608 589414391 786888314 746442126 821878892 767493543 373472832 946018751 68292273 780901001 628153241 973771083 808882361 440576446 691615899 39247013 30349230 834070419 724994308 748510863 190857884 899617230 386512524 88655463 499115917 701383709 247986102 492740720 442537362 85110092 300500033 523207711 900769413 246354741 513030921 462913292 851014231 677587945 222980087 886025252 483326922 423760040 209535011 578614728 741403989 601529117 121299917 723287384 966492 885812913 48954695 475251108 762553968 158100661 341939118 881252192 467846636 40864987 525049864 567310536 688568816 81772411 429572035 109455684 576883047 625494616 391487278 554483917 193348879 635596439 46833746 217975436 832838984 402749069 47457384 993132974 99690485 131322955 771724064 427175476 16457115 37889265 227803643 163099807 886134470 693216588 961574276 302194139 730226983 229156359 665630357 512339598 338395785 89718917 994973656 912863251 115367897 729106525 884323550 423728490 910481968 56872002 378922125 965811750 808891831 540320102 747820567 51877926 989982786 464129159 435088859 674800030 779798556 847590283 725125322 706961631 733951631 353735992 796738421 357110233 227220214 227325126 942079494 191772376 26791452 498360492 507794176 871534871 693968833 919631673 532636838 845136966 257834755 495938468 643618114 545059006 668815798 798402461 327164816 413768777 684450454 804283887 220603130 368995380 5252038 900374484 314256793 167171594 507647230 598370292 164258544 57145788 230629297 128220685 484468197 776389892 8970578 211471785 880649369 316666392 105328321 750211800 240987245 371064002 438725187 544622860 395788488 841997518 169663814 499089216 230954461 458643058 71103225 807416235 279539483 270509789 915985677 847072561 413118354 616577587 302517436 402920095 823339688 642448626 873845704 708915179 354675890 736027599 72038868 419546832 494156290 202514870 170326672 188376082 488612852 473718162 786025984 113419406 981059056 600230966 437622511 245227397 365558908 203950151 344775551 900107824 868185337 988404181 322740248 913545682 29079349 468266195 706197896 408036655 625268423 529533261 932282035 538551784 208971316 709166999 616683222 231615561 303974099 986915884 875877850 518494249 436553050 547686750 661521460 309815158 148910936 75198593 241938112 879103534 548442233 289373195 459925978 510826350 953551367 373088714 964097419 708553458 190893509 632190405 598829963 192482000 561170975 764895795 344770945 169408545 884350513 679704215 525468309 822011787 495053235 688877525 941409417 818215444 844153042 362186823 755523780 572909868 836058588 264847006 811832250 854908305 91042349 99615327 992320644 790152050 466364396 969711847 745496601 192630809 137717473 279313178 174207083 41810467 149814009 526988625 980382577 200652408 171752551 866921624 386062370 135901806 369341096 85772187 515813346 573153551 779934553 774314302 734778625 88941639 208109184 670380033 492860299 893547182 979391836 758220627 799375247 833323133 690053996 425065202 177160188 669032438 512976585 12537880 229911011 602636287 210090767 538632930 684970574 478245989 489079069 455751054 502707850 731824756 288901211 813883647 516439423 473306080 127447886 720637711 275618603 213621482 712489564 501389233 927361790 603867055 719626033 974843615 466165426 501846002 421780353 912694623 604058632 263849777 812229559 671990307 918722274 489776567 728816998 596528813 455701747 820622500 801465751 335580211 628710460 823718190 881627844 742923265 852764709 408581205 510643875 763428373 633660903 545164036 792768715 796577080 654803488 456680832 347969542 680918464 192807219 16909344 489512814 878511240 568397366 766560528 247900563 61024837 859735816 16343339 290985472 637531263 285165926 530737927 159538667 688713569 597124908 295902932 619490880 768407042 770585297 768997049 47138214 16566741 640389062 87717998 664691405 288871138 316921150 653731964 137043326 309163506 147390632 868504386 910820368 533806788 30732703 434184392 451363730 360026917 827003039 808091297 326246276 795828486 838248521 475057893 91633047 48397588 363294747 523889710 946497838 722323034 692208239 331608712 754726864 595783741 186935971 708188754 838366758 94333961 916521273 477549290 953795567 129617544 323054648 478215995 98222177 113432611 843433366 930558559 203583187 529282266 339759745 515106224 25180443 184063017 190068971 839920940 516371793 580222801 647220546 519411735 828792174 972677174 206701888 978872424 194721298 421904326 425796872 259914154 763917345 735664398 954772170 919465004 805463978 334163812 589539591 545465393 583646103 784031775 783539833 264948644 489673038 677587901 341984378 673333841 395171981 492824441 988005860 667671777 123400914 363207801 250679300 806114375 391331774 513551626 106862673 145791451 793080821 856573940 743405907 792983170 506434119 151394069 856775705 202529757 515572391 683907674 281299917 503831324 717685142 866223153 69866436 587033328 199778287 758576778 522967205 661216784 59172719 237215313 958120714 823957981 948833752 176697643 657711136 765629922 756987646 926587542 235093194 317571068 176398523 51667287 403193443 719663823 935091515 896216172 924284658 368895701 763067498 59523907 869130180 598260376 894472314 119076444 777301985 784921643 211226212 573229854 539850644 494215347 874407933 770791646 611937356 157934532 477687902 41675314 4199918 118114343 508559339 278770450 85712853 252492204 570512214 404496153 644978021 140200519 142923136 243653026 732960690 73879131 731188681 157379642 598911990 708083288 231301423 654673735 325927030 567320248 875270294 517340973 333492781 785014781 548255711 279080133 112702829 256793882 80149764 509455689 233077282 652903971 180561443 533525136 538959515 970439330 224414038 257238962 911338944 672200780 577021525 297994782 98818008 617114109 216559773 132163421 126552389 873500340 962951150 158122676 770717190 168256685 937910055 301519705 3545142 458315682 653585084 492098138 533335033 63560019 546186802 246288478 886790504 851143291 659861024 977615319 128128385 591995319 50852040 67578985 686061618 701420287 713270611 995961582 943235922 877712862 234775060 62749936 698588863 20385862 830063027 200060296 500352782 222321692 677835182 878218901 305619473 940660523 713586914 481177362 111202407 24928708 136296836 398921356 815622985 174190617 570042860 129948265 217092100 364317409 22787443 987001013 965185526 816942947 360523808 807327512 616872062 831184905 342112640 126677900 914306598 650572031 681111310 410109005 796411924 422775314 979489252 127862808 2379975 950531835 899624943 851734089 288042494 218540710 27674027 558677604 598317657 416492530 456696980 666887443 131718076 790675085 278571880 607653799 955200012 503517095 130474407 586453954 140204333 23564254 718132794 260523143 721001158 223151728 101110443 621747837 970417494 167543864 251642095 610385680 237431446 383547311 794945177 783504870 886912880 160392720 577940767 542369406 649447905 991115622 890130701 443857756 552035444 699597613 764042845 263456226 327151661 911491812 545112420 615059645 822994204 491317819 973047832 858306192 776397406 25668944 984059108 513637311 22564453 415555405 446165049 97146702 588355645 473369656 94907918 788552230 853805316 649025935 793580911 345207588 898229304 456859891 364167599 270281676 164505729 809360319 74944333 334524159 93539584 390107490 598564318 472277106 730943067 218587325 719491465 895555379 332249654 186382307 681017369 996197587 414539798 48783183 880677525 18563534 108353647 571802798 58964289 412097895 286473062 862967126 978804541 70510682 441405154 616724184 265165715 247099672 504303396 555049754 762785026 326407865 164035805 391098420 60246001 175501199 350711851 802621946 538347343 281478034 250657824 513338001 15085370 259242966 566356635 271223668 445814129 40262264 864795866 334184184 334268386 27517046 493599404 28176931 474762420 920368074 646954326 152785964 214213876 811619208 212571089 530883074 882565287 32147185 549719444 755167946 490422615 885647434 2872209 729364759 502882998 842393577 219958548 870793107 12621484 513652703 96149028 525089077 209323235 311882057 43556450 620836264 870959623 76998010 362896755 424477128 957491168 1303332 759796270 46723367 62598089 268999181 580212187 881664969 137011497 191651784 923617164 276151878 523459475 504160271 342503895 722759808 602408881 373525861 440923310 800667162 124455104 39409963 75441835 299401822 51848972 335795345 714092764 340139036 948263664 106473189 96004536 513735291 282875039 681978181 940682184 240440147 275036629 679253620 895015563 958835365 449691224 979151304 388737368 31122416 660590053 272036830 315485553 777610204 159393111 57753901 50786970 180073699 418233910 278600539 778536168 821120496 377205242 188202403 118160937 513154806 387334900 335220529 816790852 137416429 771250875 225851573 557973397 865054247 384177180 912246245 915181856 802074434 529185351 505810372 992552592 736109757 22724673 913530169 679465848 183589924 620610522 701817009 964708093 966612793 827693875 759433757 274330666 667817964 71518706 597788417 479590014 525578755 789459381 476799176 224984088 480119679 122205304 150293940 249121475 261769193 638008282 443491298 933466387 132515227 703208118 641211791 976734316 629322371 123926016 26749558 465231193 156347699 260869138 227201115 461644067 855407858 935928879 938393688 516472431 368189328 595938887 920687355 912493196 607632171 593620376 781453684 329475519 13807919 126567092 942920190 260912289 132171069 375758485 716363381 818389965 356511834 329045103 185186659 468442627 484919798 254018662 954984257 882994314 784401942 852637904 126833358 640785268 262093718 209847465 338171379 181912377 629728316 953906828 874540801 837172368 68035389 560253360 984274502 484064043 166644545 118332712 435781440 830619239 304065458 617309575 192188510 786420688 15623105 282502490 632642479 100160445 847857982 73597215 755297139 730461406 111473970 104259190 781484162 387208383 165210335 708669378 821143428 704459957 160736072 316565592 966759624 386678207 872177829 471582161 98303259 285749607 124888429 925880339 932625097 597724553 196824058 155568425 562822923 209327339 691116521 608944227 240995562 940413172 713733882 426839432 217930239 445299109 365541784 896752306 181761964 581363301 413668581 680212962 761535766 792544615 526209329 270966531 525477077 455172932 823215121 299302600 248162013 888579472 677770033 982910492 155605072 147245347 867710760 408025448 733300564 745080451 942649854 471389256 159674566 590348660 775145990 170775183 375963612 497196268 314028306 682034305 712252031 174183143 8229645 321403942 979780041 199664610 869634922 508397877 283444073 307041043 968458019 987160351 950887820 977329436 63616871 975581262 620496161 761274150 456404702 356478283 771792287 38142830 12909420 986023337 648885694 694896715 521761021 779278197 795540232 171639454 168454890 904228216 87190139 570537741 865185356 361250531 97944844 91771258 710863825 962568326 938081643 242219298 723103244 444142823 648493377 365185187 204385639 156740250 310636852 95320264 697140822 685279205 473829092 552617195 472679274 406053566 158567489 673812706 546864023 345054078 418490993 878196975 17988019 20072337 463960298 384946457 671420927 393811499 120932364 899766118 711806176 449181393 815972266 456272262 737331133 449038080 334786812 705386111 956392276 447417494 22105184 481283357 236158226 523812974 54167075 750937264 424527325 48621992 629080022 997163231 576101390 55801794 102482517 287460441 88976912 406538749 168621327 146103662 998722236 801112117 39493130 823109773 75581692 423214234 406521197 996098387 633490561 775160498 703464273 112292315 357562769 466776565 358474769 739577224 155401246 438779745 737088664 8604940 217477965 442804633 641926429 499757573 237352478 30023462 531009432 907742645 359437053 940799494 475374637 261434827 895456789 354162483 864149778 832200019 872692409 477706718 248533695 5992162 503238232 554279062 162821784 696992324 152076984 644726533 685749350 491273599 678862896 338039902 675004737 224329338 557986270 503773686 505881805 673048656 336260719 302265508 274535421 622811942 201527524 341750943 410332769 469419905 968843758 286703627 325894664 1576986 852172636 460486079 595402619 269266151 714095468 98079503 692586446 769059689 958108682 423813147 407508243 299469106 931847173 232544252 503872411 879387675 8788672 93835607 374175720 730139202 714992856 342376617 519552313 660312460 258270944 560357265 180124433 56045166 933280980 784701274 761423086 883928390 31954324 718430388 376017954 909165462 559729376 376902896 896888795 406661588 384602653 841028342 976185128 961938003 351643485 809071745 432614976 430838564 42476607 591491961 189708730 800415966 558351904 709839350 427506850 292243181 753889407 77940944 962874234 521618903 884967535 620597706 699912556 960947550 65276252 304643788 106467721 760924601 791711353 479451192 733457742 247579202 610466608 581834653 833456985 807329296 688402819 3581162 807163235 629538456 922704926 41835524 639813764 419846484 339080293 168508743 262919485 927822224 41423581 149108927 607808327 508843517 542095307 19211316 586348040 554618893 993154791 344528118 722264298 459832242 867677329 637039139 964577412 602307807 304568364 195336937 158837981 621817511 745887332 275287230 899900618 301515481 987027704 496324905 434563927 478976605 795366327 751421484 235205479 415883204 127797737 900254399 407751056 486795561 449185435 214933646 651067899 564066520 577397386 723500618 200974589 492637741 155949501 412361397 700567685 480035735 665982913 184686392 855617431 462110224 914067024 129783569 248866092 299433411 977221715 281467328 474306391 234705997 301754572 418604743 845508351 861239496 827470590 728863897 305199703 742793096 677458969 415613195 777884848 488670904 426603794 779036475 42394242 422521524 835320668 693010848 843464715 203244092 71836381 717775158 783985741 300708100 872712659 160758449 836440182 847770860 538897358 354147101 422095957 42902618 568577532 646405178 362141240 712064251 223985213 658996805 512985151 538548100 298389025 773799387 117688322 379490745 135583920 279519778 116945518 413269645 515646142 50080037 277987192 717272342 946010140 408726824 547064890 460569427 98237190 667862604 373319928 158119185 58013143 302145027 609672637 357804933 271776854 396266002 3138307 208555151 349566774 17383913 368503972 524896848 793387541 98467680 823416700 83249040 875131484 79976393 319002763 119228658 780191834 320961643 241784245 581875262 912375484 510562965 58492680 833739917 895029144 2141104 231863287 204630355 466261361 24022864 664359414 721175208 742189543 518656486 2811653 671958229 213568017 953637521 448509422 904446729 499853689 127576411 277127620 328280347 579125920 701421317 470181621 971711213 260680568 214628272 288929863 296870888 568613199 663372835 824983705 223723480 951266283 792745793 70656442 548557348 495235081 246778052 440241565 912579405 791432284 255514521 730659653 157753197 761029522 635645764 449363769 88654468 283496476 826210822 108034750 608609933 843028923 52740219 691797751 789636662 216427335 101809617 909081440 297460498 656491632 826487844 428446880 160514807 78781699 321467357 762910541 933487309 566559090 152651448 437226947 202266908 613272876 659070761 591683719 653866971 515508872 777564829 619789142 679460184 824929769 535879340 699025288 591607740 622696486 359991248 918716583 72106135 851015787 271104209 669271892 559260097 334937031 412648191 517879135 885669084 66508844 838583194 253519865 525934171 213483803 614302246 626529444 696793329 234890524 939429004 354176435 494471321 872251508 411630658 261921880 604513623 800205900 453576636 690839708 767239424 688241488 162320355 550057180 734132198 739541852 508482015 497108951 255344102 643729318 910208425 151357489 541391106 126622666 80962044 611693545 834105648 642586182 432229857 853379855 942191859 553165630 845019746 414979504 50779057 662826696 338962855 439225390 995567920 450092550 33128573 672189418 18889246 709379303 372354565 93047992 10442155 165690991 684211156 905192644 621273817 219823900 497268130 954135235 882797386 580007750 549660148 74082305 602283869 252760639 421054069 8396991 221017810 623989648 180272497 405117788 29811137 362829849 80921460 624643028 323225730 360862536 493868544 880487048 411420964 501075727 368068521 669539604 847213119 442079030 78333135 648007410 363292483 469663412 210954406 23895019 961957427 903858387 346748692 577651975 602813500 293162538 896507200 82168355 547190030 493398722 559468682 28666534 597955868 771256283 189768336 15235746 735057023 813601576 413909144 437462891 594212882 177915386 383081534 705493120 514988888 501810048 218803613 13931544 154945910 695726216 490940066 41867712 525561653 498049887 266975138 664299726 791735085 75566697 969611930 831996467 668647575 374469764 239502563 330618024 66847530 476758879 939887043 688505676 658087296 2565160 237034539 725633177 440299162 336219078 564487862 753027999 574425960 808604785 223867671 870906221 900128642 131079263 131906383 408312642 430495425 81392618 804683994 532509719 89969875 71265416 159309416 450664201 609763346 618779168 256600358 545443387 890860152 279997272 193324238 27481512 745007345 687341431 651529318 49876324 465344978 695735517 442515150 509254771 517219894 51758937 656387303 418690571 115796116 432486228 557266499 10130917 952840437 822869915 835487271 893487719 813526405 790605606 428680210 29536895 690324281 44769475 514461835 836090975 634419493 117515999 116497334 723537101 195342485 912474084 434635153 941444316 13658831 80588704 427648308 436783399 365997768 80359347 709101902 16101908 96207443 131323775 730517258 558267680 867843833 232853902 256952685 785607920 965057311 178024716 134335986 150200762 152867320 593375435 611915468 903200557 976410369 948715061 933850353 833839871 801122127 235512107 685857360 714803155 747045998 529090011 489255543 973850647 933456695 572331317 893087984 438251091 917411477 383283699 856042469 165660098 740308839 974315073 363342342 662264056 115525501 839712969 703382276 81240078 859534122 862271585 464121636 999061005 950749349 441119098 506804492 898587216 227322208 923019694 339889295 444012515 428449396 517473704 5337063 603274498 206133890 851637267 290885842 120494083 874005848 608535945 694336490 903254678 896325302 553732532 136484011 543272611 201898237 126160084 153653359 442972704 313073597 10567021 77237935 47923932 630447860 755804022 859092091 224024320 990913621 34404947 149164693 755781919 259736048 46327772 610348503 492484991 438025909 876525359 984349175 596922783 83489373 175843563 383195994 877319946 709678409 648831849 893648733 688126510 729666010 138364049 53228785 716185301 117067857 606789976 873922255 443104692 891169927 37273510 826444431 481754405 493005945 124681180 205188041 988445366 277885330 948140955 312930219 302772891 968939712 395723091 890821806 385718820 62082470 351343661 915702057 537494111 506686223 992533673 113546402 134413206 176840874 243598784 62247446 215924240 141017163 1125371 784902151 758087277 842270680 253913413 585693905 30296737 491108680 337851212 652483629 944668111 492494284 410356261 200483324 836797324 657173302 952478316 278669229 917012887 142045290 206130922 637379410 351535947 261472320 898216782 795801029 240579732 5431480 419505172 137579579 94816986 973409890 341166028 73620801 901455773 578286660 468079807 733682932 182883677 937936317 429333716 656033013 997066412 540782983 183508634 859087458 578955984 857852686 174908123 264915477 87507267 300028695 13167226 412872809 270780602 622437073 207727578 321354650 337240642 102579541 134600875 968277337 399392563 171666809 935628124 72604125 823705422 137780962 565431677 425182853 785324920 356521081 230431509 581926266 615725051 771971592 514896133 735664395 74383967 258656492 949787626 933171287 652620284 616030025 15724777 510822371 188074467 808063813 453081505 489282503 856571003 475698916 476255332 197323983 179286921 626147165 806360642 783555568 33584321 225759053 978013371 634404352 958800780 867833182 535233166 672164876 11082561 808387206 219591339 353063452 778553376 127710398 116705066 631732160 734022485 355267693 56825743 997778498 168041670 351264662 372628438 213599336 826229928 386846587 211752644 821813347 199908205 939507089 940715819 143235191 853103114 998642111 312601333 47721989 772630256 598052723 972474812 299209879 685108889 537784394 346285236 902988106 210793045 378053456 946359413 254651920 119899161 291736051 597225512 186478334 994809256 199059577 547376834 621256703 892111262 196345990 419983816 926220401 514908070 850582544 280085881 767976253 664400679 7154978 16118882 752299365 708079896 709322851 955491006 13686138 814882548 688942206 392350421 974856662 466213065 840356310 180973356 872958409 397115518 492148661 480435500 688164706 2258462 802051195 4716467 449387386 522429413 778294788 361721566 131152717 19611931 707717248 956664752 798191732 607429540 84761786 371941572 474411170 105333974 176017140 295000483 585997648 300984126 299608091 166625269 463232380 849569988 325606800 501624003 345625973 657479523 61681192 907474398 596298374 916142112 519750989 724370700 627898356 686664566 948206002 836041423 241411421 744956781 863828409 405016657 747474171 576318370 451238339 152092657 684850869 344348271 629579032 851861235 976221171 400994578 139580636 711495042 452140913 198398796 701533014 173333485 561418681 353831937 893222530 839738835 816854418 715670679 818996040 424474924 132600191 717597710 112806123 738557320 193786172 43246869 586458276 479326868 444656480 923745064 671466725 247006058 525199310 996133428 883406046 365984598 630573631 675269208 660378783 432183939 25283617 622031715 351888674 709298322 64058653 880269644 688948238 584168742 280978678 401114314 575912588 160570591 447072120 351382650 380140835 328340838 330452753 449574725 150043886 898451266 806663192 278762623 108767167 673051395 293850872 552665900 9896272 839870882 389122510 389002960 851702944 398473805 473595327 932911009 185756777 857546593 657667909 272394402 438488758 675379779 73822566 546121094 307866817 308551829 421995817 972243291 338807362 680917334 386638639 697882152 337446733 972509314 797062748 572297299 974866411 347702617 627342094 578047477 8442487 329540300 864449768 443088228 289432218 230721694 245738736 906135355 43595338 262464813 689011917 657369365 798372834 729816050 307944253 721818041 619262298 545536503 100776823 99500787 567294257 523020696 687505318 598140438 667910378 197911951 59136451 716638683 559055273 483087267 58594204 694314294 263914459 975744466 330198613 197782308 80945542 897082896 668086925 492380271 720963093 605084844 756356247 459194635 996977609 405661393 136562497 725818165 687809239 781042631 467129115 885745774 7668659 241192197 69147158 144427341 726544719 362950370 948721952 829226789 356234928 682190196 387623189 897395356 613206161 171948 984891129 677953672 769485124 205762128 985401635 305044482 460933964 386331345 600542656 631844563 726150327 459161153 701808170 972295610 226545879 409265212 373072776 923868482 251960623 738069055 706379094 81920126 640801162 210625463 714013640 913648200 907034259 971273777 213937127 625003068 399037809 636338155 162391933 284944404 884314034 610559862 152698475 887290741 106600642 173298711 784941029 689474818 568371172 869842991 191302057 608612190 833391867 84226180 71256684 51968530 419724569 59093045 60458273 552156741 785527501 962399477 231752103 892715433 616806318 806376037 536963188 133584331 904794720 383746155 61014567 496265693 106892522 465014773 211315505 488641532 621764943 380825914 768965606 848494137 480778763 214295026 306234856 80636890 139555326 233128961 998061157 797449463 152838739 495290170 483002724 837204856 795231958 269606981 136877838 988782330 835563611 41394835 627440225 409522575 321735249 149622956 621349358 63759060 724263961 108136629 59936196 171663087 131119390 476593959 291964040 274432121 183940460 617900114 713833863 257421411 840978213 74478563 124246332 625205701 488376031 301585542 560239259 671402775 329761350 327521172 898493744 433810035 43123979 154389025 530947450 174798831 761067099 823725636 199719684 321513134 806373675 695898395 112972528 698778553 866440264 715356171 878115349 608846544 309163192 12662605 393604532 683223583 488881005 146239287 160300236 497949557 751042519 517780675 121201369 83850089 808837703 960294259 527816298 986589539 580139376 408937132 232031666 634871938 483244499 739618565 628195435 544718514 201525899 268864587 32429148 968406054 448249058 615053358 859334949 703092891 284508714 444671444 562841361 829676192 94147800 933773424 719430905 17555522 827969096 772947095 320490863 633522893 648160967 283179182 873220405 513520178 859202505 881832024 32174239 927543496 969573204 451510268 19278392 998466869 488495751 981989866 748202586 529911949 128379407 421773575 931508260 123800674 801635880 3060588 391444464 607254468 609377862 159908613 402949183 537787718 478459336 167764330 187012928 532279608 188142222 87708405 876468831 752431066 435325793 288441078 764369138 325869168 109412537 181279940 484715188 397956271 309575313 920302542 729569139 169034107 94954273 962114227 283479703 46119443 313058626 733472251 682903302 49435451 455679062 773993425 155691578 79929886 892187856 434465976 257591587 664731867 546904299 157393905 919718755 563633776 387808094 878619179 100569866 424681282 878995650 783843762 398237109 1812247 809543690 962867915 817039475 278724198 421484826 485159596 834123524 759626173 748431306 259051068 268352143 871726595 443969516 400388119 193211388 670082815 496035962 799121335 238969483 390373099 73146885 638899218 709536415 342108499 202639586 309631736 204670840 163678403 482517174 982044861 928570481 491672732 721850851 71310124 423000489 302962526 256571834 988929466 964581833 380719480 336131614 239213982 253909211 385671299 715644679 320087594 200803852 975911003 990337984 827299758 200450491 771292179 513195662 556162715 394298617 212511405 358650730 627173045 666543942 658843230 768654620 880115758 865116652 744782357 762456034 131216801 875407567 721999637 287786830 256089515 353943592 20484492 13201750 107683163 585450120 751358514 335803780 731516436 766042053 851532338 674160660 364776286 961054351 259798597 881909612 941460721 828769338 945286453 434839184 463172255 883940976 764258405 356452226 450642254 24886832 366479437 607804960 518169920 501871729 68392819 946227016 877403833 929080527 615965406 171876563 983220890 865715849 933348399 131717953 488015203 202561355 177893929 481430921 74201123 420719907 669700363 498826777 568292490 642143925 599053041 618183537 3544923 90558340 478908242 956379422 811871062 626643998 697305014 709868967 825442665 205298786 87759929 741419549 935630384 278916669 896259016 420119778 154267285 231196268 917952154 720520236 749455166 69403432 633202996 868549804 923100707 448355446 403826741 734391311 88584067 706228272 784240650 645869646 711422773 329364759 517860227 786121400 197688832 709025493 5676142 39357504 24006160 946153005 28087398 261556192 174771824 809632435 235637259 251483090 114898487 233506472 598901555 580105909 329828493 293370637 64029772 283965531 503594265 206151595 453877296 85377617 264097695 511467690 900475114 701822807 59937640 263331558 732501373 604641228 806966822 365609211 676508332 857547585 871339627 253533077 838323019 421947235 662875384 466636949 947255905 674361347 737799658 248508866 833591350 946781856 382880958 643687601 544806419 629736222 55620351 47589081 219811966 107332185 783441033 513179675 298129478 341757116 210926262 748116345 568039829 234144545 588878855 600372450 102215596 719073372 597731218 829114442 88004897 388730567 291711525 720101367 720245290 810857575 418410231 993508898 212992229 619933273 420377982 734796595 49176270 61250192 110114123 237085047 418951764 568028340 431298918 434259813 380779483 173001110 211025870 351443564 226749016 191892820 669960683 487825055 317052850 604023167 227712824 518416895 712511755 128441454 506008456 558897774 290538179 221546827 581400374 957994289 470497418 414766630 631084506 585991054 995468828 683950709 106849685 385760533 807280213 815310608 541872062 438148916 338977953 376786132 710560758 28275376 796077897 602346379 477494193 359683235 573146864 764477507 858221754 330818037 256641850 797002496 745869671 29137796 173111121 383576285 594272527 484684289 834368549 541918103 490996918 287443203 294600386 38997080 282685555 975656719 728154173 378136392 688957504 610368965 368163006 632623089 324055705 176182881 828530746 512133523 357258801 790820709 674235376 583249348 869206423 285747757 859301345 834538159 860037138 135193336 406478402 567625188 858685913 383489580 938348248 262222067 383427534 748687913 474208195 564898689 82994557 336313778 635026455 346850311 443587453 616968632 976921815 811940920 41530488 881390751 97663567 25622904 497584239 962071148 755764583 876105262 711828363 546146516 374281633 708184909 719051071 313034456 295799493 457561842 471484040 309492165 360962719 320515900 97907926 317903328 523358940 876969495 270227559 787769294 378755816 673717505 282936623 805734848 290902406 755620698 673937422 577021241 904332510 213422796 347438257 311200678 960372226 315664143 169198148 979923962 526712889 972852651 886778105 92326706 339944517 511823605 94367970 528532449 111196002 91907996 556086726 830182341 516231329 719058372 774199413 97658014 27714579 715437577 956343091 220739151 437674003 886869296 245716307 566669911 952327864 884226720 110462637 688732655 580964735 903172852 914466444 218644771 526183869 896909164 447112883 860469990 531364185 62026670 70586482 157023915 818896532 814542232 108219198 341381929 509140651 508711922 848221747 698059359 324291761 597734930 939363825 395332865 34458408 208777158 662363805 53054276 773562401 737845239 647446319 434354949 148153064 389113154 395839126 211058114 180265209 374374111 400353803 51169588 530003551 557371772 479099488 434267898 824182205 979777258 373161985 402182579 881554424 120953431 759308496 757749369 621761265 939436337 522094932 723199759 418036265 95110986 982802923 648257734 812787612 248050984 796772162 154665460 176994871 317762742 178997128 79658430 133100820 828549394 462204639 649069651 755255767 179377944 150552627 207848613 878655044 846093748 329644055 548282944 716042453 690818608 817229026 537634334 594388056 833907569 653637545 169390590 342718055 915614422 179159330 931800551 605410592 739823631 782335518 46476520 621028886 734027670 102624372 215235930 414361115 494876181 520303734 597766067 868885131 145546909 365846688 546755076 560355659 287620037 129711290 97385749 48402267 611479677 157541225 998176295 731964409 888534320 285630811 434786234 577550167 908138159 423893366 159248646 436966363 942201266 301763433 744899456 198043184 563138802 964843617 588897745 277964437 760430742 327204302 522631041 792187176 915293118 603235031 474877650 364125684 130711361 767184563 695865149 249088419 913533203 434977420 505134442 836685341 39617272 781537668 385119666 70669421 114646135 707504194 129389903 905549806 288740552 965621336 160732036 126930955 405347168 974044780 508390027 424490802 482497273 841072089 549340371 694581481 881635642 830063733 55202486 740537574 211937514 74816816 751988758 959494699 959809881 646329796 719289944 915366454 179515142 874539496 704293256 971043467 538494122 102422120 140681781 29918478 202550177 573746655 571460165 933846346 64984804 729563432 581373633 322351089 6403048 523178641 792208995 377314529 696351848 485582470 417120099 638039960 335408383 879833032 89417430 21034566 263893566 678511131 329863412 888282390 662908258 761593318 551695930 643315421 836789025 460126059 870007434 770250424 244831571 855132875 960137217 746246121 777542254 914702960 791028143 452898541 308013161 552747084 955510709 279389261 173882768 2424100 172401113 733990330 365746263 378879499 209887584 569366166 139595762 841297618 370158027 744354714 939089276 789878026 938057853 845535399 608883968 947721750 907636198 170246200 102662754 809869146 541243626 754374807 767241354 335171344 473056500 511480013 972882221 277368268 935874055 129160403 319396665 547466129 859836499 251095695 707277734 971290121 234464933 818804821 457868286 435277906 769007747 185902064 463593253 773499101 973082035 405737631 384563827 853019682 586605966 924838102 714540769 103668984 579417260 941790011 908449014 376383131 282014415 102591237 566568913 112046705 725741241 922020255 244451155 68278071 869898726 319412669 309692405 40558064 120358578 642141601 266439937 906386421 654376530 323655668 389414212 424650102 261650360 858280467 476357983 118192141 366842510 452446726 577265705 938376533 394018029 287043631 133432350 153989202 620248692 325121776 497971771 689826203 271953347 853771526 773133812 892273023 398010282 695990861 191709929 775686325 569520041 193005012 220728511 978258865 835456911 721511146 68956935 323424036 69513215 880484592 778260064 686438472 475808692 885438902 369212920 435495947 711126508 178990233 339302099 352403635 669434497 825477324 426130155 903227236 15895076 778335128 913017402 127083786 138284822 691176226 899088592 304810514 345979504 211002545 34714802 237441373 995326860 196215223 390059475 242382887 914650617 299958227 60481766 397379139 355311614 92502521 105350477 896671613 15265898 591833805 183818612 917718862 221447856 588304344 113647926 532999902 692922744 356235701 333528783 116451236 712997826 770780731 748566208 347301669 458888514 848407467 329573924 166398188 471973371 316245635 314369895 706037523 680299602 284851188 151542861 110488852 170579942 616738732 711598278 984891178 778436865 590341259 742170207 313383366 735037057 463708231 485993968 626812463 900745333 978816704 399618353 336614335 98813876 784289349 743259652 840311145 692434758 401559876 715627409 168850182 518710665 67162952 445288430 563408806 652629164 731385757 684595522 448374622 337333678 967643588 507982604 478530762 586730560 301662409 117910086 687291647 624053455 202772311 372271820 126491234 995456118 606379112 148305484 597906776 99284728 208632561 105913368 163253858 268231760 490256668 505401246 991348240 121741973 401251831 128598695 99347487 424973797 651481906 723724284 793793014 162146082 406134679 427707406 88247778 289610802 972807207 59308916 557147505 202314691 315235129 572722839 122970270 683539857 824790943 179655893 833947003 55015380 256695190 255192413 212219633 421535901 653419586 176682839 872906287 866101114 783109766 93821839 302603371 403677535 178969169 653820570 74103948 286205331 841905627 762519076 786922457 838383052 174392527 719177607 736318454 809149267 697795314 748891252 713446223 64924570 841086848 289542720 390802546 497590394 43946883 628556607 491419211 953400371 85151626 215499958 876071394 452135426 473858462 75924352 629267855 763049281 160087309 690824784 246994789 460252885 404817680 255907024 571851356 295072997 32404586 835144645 925313499 527017444 996609242 356056599 432246631 471449705 322861560 918704672 473301611 814449551 129833710 3943211 947873254 884868647 113164650 23177061 999266791 430547180 968162346 9881105 343137062 981527874 63470142 937391561 950704695 79473098 626215536 246969221 172340022 28529094 802518388 582121086 823874759 750708445 936822554 216847938 371862110 268460296 225839714 400730345 69273067 421993740 424474544 260322355 61940922 324905915 222586890 408432419 978325579 932052764 774841532 732945960 904477633 537120827 779600049 414007403 444419557 797755670 902623142 387806586 475668566 612797223 551933683 721661448 33584177 659768738 517299016 890956446 768298876 605923806 146092647 842255748 503899780 246225885 438358956 244381344 290612906 998940441 75524368 456472256 907693062 444985362 710428647 860860324 146311685 945565325 755835519 606474780 967168518 839124705 803045136 502196699 34255049 270724825 311634622 483948033 163106443 685681503 723379734 15192611 998863167 204353501 426071544 86673897 953679568 231053195 506294935 796284541 319096730 690907242 848992732 474563431 551457028 615282074 221755177 735418809 90266798 60791302 15746686 126466154 682142769 525037329 223924321 492471788 612887606 901890885 776524178 233292143 80380582 106419952 333705934 891271569 89173911 583983259 10042760 42325253 586675200 977817978 705868528 729155427 506616906 240143773 452476307 267082859 705804509 749033497 826604334 725871373 117718996 72735152 922235287 243293067 507341386 633806997 915379539 872165457 822000675 30934626 421265274 897600625 228128225 544966111 899408901 649507908 950949790 463448169 520749838 536831995 377115093 821033982 349200075 613028492 711935909 632549747 200119433 631354764 295377327 508724311 244085918 49943031 934413421 413243686 559341352 145704157 75588214 408759766 725299408 185589040 214151324 466426988 419797001 335620283 172200244 62883088 179344986 418984277 194395638 335141220 356438168 632036890 192341524 912382736 939534974 369052600 439252188 797315270 375432531 531605137 728158692 823452810 72628173 935130720 689998546 681304901 841955047 839486836 63630497 608229352 499081383 196759789 6138529 767611 209993699 248338743 204445581 944773810 363686587 889860797 678612373 241626840 67103576 854380349 848873630 422204192 389689445 352983206 267596162 893533589 92198356 804827961 730738634 930919757 345891869 216780366 765654362 51117108 423039522 339951316 139694843 642121184 745117817 840693719 930221349 138610087 413219001 195968667 125928509 726584084 527801612 31567427 399083777 288729370 794079958 413353609 330927955 63333334 848673421 397524160 305612437 408217853 135098608 766153646 386318063 277361237 498007447 929855804 652365119 931602151 493148158 118276618 612299519 161076963 462885035 670196472 408254838 50123827 946478458 158663766 329184795 321134817 890416120 16760416 818063316 659443766 855694931 116045025 547527911 143832369 330065068 389425190 401774638 549451368 612972680 852067380 80609195 755844105 489996079 267274984 723059872 92951095 230343130 522347052 312344244 519655319 649988194 994067107 992518189 657409575 214149045 318077773 610941057 659571495 598412040 787838729 763552220 452378420 631409822 814829887 366101051 605285073 526273077 975498980 154229391 447148600 556462996 570935316 571669938 567149901 784378408 13618469 101156252 329404088 959860881 145266677 63055929 191254803 480379468 241761821 223166652 714263397 378771398 248795614 918736280 637210836 557763605 118774722 413486447 422895379 457092099 974825568 839881937 821553241 420601968 85667379 68059172 439982289 313040706 783060629 783647258 43083530 637230183 604979758 534558861 164188320 261768836 993605796 815250495 193913201 236650267 426473994 404522831 331001797 535566434 660658475 116309131 876402051 206185646 464984451 489490140 680488585 648036796 164452351 489689650 228501949 100700527 452961857 810282797 310655860 702018475 614865954 191560222 220982394 437762815 117438441 5001936 945869001 499445784 511867097 842739137 190158202 462006959 205567728 125904270 561670352 989448574 498409553 957724613 822332084 806351682 529519200 998413647 933760734 105205041 895634802 338209367 487840791 80014671 74007712 805466688 216817987 736874834 798781524 471093692 738510634 294982488 667939685 403057596 593838964 618321164 393812830 446679857 680495218 474500904 235720157 835147194 925338657 669340281 73306248 838538054 182373785 97171864 536140706 758361460 48270112 706394149 208743396 567659963 546494797 170025583 466918102 830153142 693565374 576978099 467795229 248897631 8514286 577715127 378109374 77403581 426434307 637019769 441146229 8804847 521226161 887122553 825588283 604809721 703245846 308053859 398810300 628023623 845436945 769833081 61551862 256815840 447566310 570285070 78046763 638340512 410854736 640437887 572449956 442525895 267261551 628834020 687885488 657506756 283633099 468425703 744123159 155818430 525302588 963200911 5681152 593808363 59414824 558570528 774827261 928733758 942253314 118446836 56410995 891044901 892426822 911681673 452755294 196836436 950871510 852770151 621851597 990844869 850334318 192352116 27813786 653530610 501451238 167715767 712038965 191144178 531825852 981689594 996123274 177557586 996049235 877279489 60852821 849052295 54112828 788523690 622388829 184125723 937248126 54088592 645432605 74069889 498126946 760504715 606337680 955883828 55584657 555679889 319975325 454692710 233106904 400813635 275861857 925859952 311291169 125573017 932978689 666087094 657658465 15961000 554019832 36585648 66863466 764687313 889987908 899692175 895461731 961178220 252010962 971667419 983250134 746646496 701276465 759455900 967812334 616671397 168389420 999715573 798987041 631656082 769370736 592372245 446307095 693012542 699559557 380146772 154479481 26160958 581846438 485655948 699398728 522485404 609363418 62855628 10760659 103786042 512854295 960707531 5986567 54718122 897311497 848761985 787826138 148679244 151507678 41831452 259534668 348118608 89151255 99142830 222574439 772217616 486755647 347113906 65059513 815515572 154580693 51473250 421504493 433960881 106739051 285910278 271729988 134669316 895525721 413366829 292733830 404501992 710105430 435325094 462857698 171041788 834594665 9391185 103695545 502076215 969404175 267339792 148139598 229777890 453854175 563516451 937823439 94749969 378316887 88775978 211731551 817490493 754454575 527993123 125848500 498218221 841865482 199953185 896766327 673523966 404538437 374518954 208570838 782211645 892589306 604423087 250193013 772060976 301871155 953899371 597924057 685215525 917090468 442324409 87646272 903378514 839290779 753046265 92450399 561720012 106989807 65923103 439114156 987739273 611256202 988677294 204919488 55874530 323356833 322879555 951137659 292985600 732346036 357711929 823868941 412132877 865506585 880081977 417866679 388695574 952138695 760203728 808753958 523859560 154139532 373536166 60401345 62513549 920469961 697728803 675113833 591660669 259833915 394404401 61842182 201291821 116818665 870701513 585603048 215700405 332687910 597832648 365039611 748110812 855438102 521255349 155170769 762553139 901091646 969196345 898110666 242374754 36821868 399684689 263355575 600602049 85734884 682567096 19590488 538397626 89456953 743907695 878588170 454016184 563596426 349339168 690803162 828204278 541591729 82668405 81097705 180734671 342610281 67764692 227004108 283815784 130962930 263373342 665124789 424951748 389172556 441945546 312759121 430100269 786744748 338232614 939441669 569095629 312398598 750783589 717347199 756160709 603492061 385024081 955947986 943107874 326655228 974635919 628299667 97239787 269055102 644958092 836177591 470176487 763193490 489842219 53624568 413455637 217984139 153555858 541633199 770552875 657156864 226280157 594518181 396357439 147342222 262099592 591835242 176216802 811406824 777647994 371938607 647437748 794031362 125281475 351135242 433997052 968264735 736943634 411232212 826999342 940769052 2676499 241813550 340146782 187430026 33509884 893986695 388246136 90612565 629552448 286295542 231642831 249277563 70239637 869178346 614723434 920355531 680412529 977494577 10349638 275506230 791858706 762618131 280958693 734045392 694515629 120478425 670012754 685342575 644186203 514976608 647305732 587188131 455845775 537288167 104560141 177075035 483033057 142411627 813831512 960095933 988471043 303804960 922470149 218771896 515275300 429035730 543996644 303840274 424847255 987476360 585619801 278443887 79442118 183123818 715096153 524274570 89084108 223334552 303600735 344697197 352902120 268479662 190534634 952056360 851967722 759178852 133339749 502475970 253018487 778502061 712972732 213642910 196344831 772969379 687453745 866033959 604582002 78998102 204235138 960251845 967352242 726606783 408968118 231341801 599424814 797339105 678194215 630633971 269961238 569802316 342145298 972238908 225908757 898416156 876351020 960102750 86761008 402329588 939109961 715807614 433357822 644444875 117945066 38383561 746830805 783945346 874706778 388261389 330758763 111534536 716086831 14884316 880014245 865700413 42052176 770674626 131417451 887484437 473141846 174062422 704634778 830690787 891686735 556900310 808574571 160395231 448965662 163028034 837219402 944890869 742027784 119669678 488198875 767029493 50661916 136500905 134760210 549422361 838149385 607650275 537281459 786107699 567069828 718850696 870265213 477073054 181352565 280121618 207272060 116695653 502336497 585171883 241915235 630003734 677459520 53885255 967050382 484916988 241845595 455834073 301456664 560727219 385447833 740454922 604755921 467495817 619954212 650995785 38417744 133643243 444420573 551839728 601700578 270703604 772545170 347047554 879015639 662733151 84796224 830194497 856898291 106256350 566889604 141179043 603255104 111205175 41042752 143487612 750282218 150551674 97814570 749992745 749467355 36902918 34759825 645260376 960775166 806959203 880410681 794873685 246987843 339128886 848309027 72837793 266660950 97902317 668122690 145704597 986608791 472529116 933995095 533405446 787477261 937812731 674869380 901992770 215658566 30985245 201072807 529221310 669597337 140491274 791661265 385640673 116686992 929654546 952936424 185795549 223351029 337222826 135135015 914935627 299593991 434109843 415754849 566713509 281149849 491519218 566463681 845334970 97343426 201861239 417103203 229210935 213699824 770543556 312633029 376887514 21014693 765929626 741308866 493072137 961273979 321390772 458826531 415988564 767221361 379929169 749591096 968813448 156048695 737244039 955208045 852460968 950395638 638237181 256729626 413160445 93967366 36454690 106044549 943038937 199900977 981672145 550388178 531643647 939935505 526966002 603457507 284484864 91048130 453498028 30575238 37622526 950926978 643552911 749938576 380476529 991381745 797563797 528005934 98939658 206251273 797642012 884718947 278478144 718628040 607636309 965173800 120915710 269459726 340696072 619925000 46166939 465439384 412649421 347014677 307170253 74102355 177209998 511445723 228620791 205688536 553149886 907861281 190147521 82083851 183955408 723393750 525683943 309890599 58589602 890381799 569022547 143141059 267462667 727028708 712934476 344105144 431222946 339657808 840726672 213475724 190947673 556741272 945346501 803933364 438070742 461803011 625111745 29066991 722791499 479952650 907100247 182319221 307952100 440824393 854414126 178288219 593260158 209100844 407975718 906682460 510009764 858275055 3420326 659258005 639341119 117841369 838346381 649989344 315790827 426287130 630341861 544306280 759726576 320104381 101694310 352324591 788056688 213107043 224647593 119271028 421478530 191823618 533438978 113422252 94673360 984639630 417388057 948453774 340998584 549475291 968197793 978332124 338827297 991436468 104217271 477984974 786247157 969591423 916998434 880533651 913369064 980558521 154488825 991394979 705759735 64511327 171533712 508409884 84717984 594863002 897408754 760076127 427730037 348414373 208480435 915257338 148171789 432522322 1364130 724787878 782317829 618487345 985181403 537008275 577874986 368939981 624999854 347965612 875634329 714547662 923766323 366214016 906421964 270532173 17404069 502842898 969195389 204267192 257620601 587121073 207546606 191474112 761916845 880019907 308262204 290856395 324582056 754992958 908802337 590961249 685303920 521188232 934153096 455570522 787542634 227813114 654817542 353998141 778029774 631980265 535272388 421161866 695805202 119314492 829959362 166142051 556245363 527221879 516347816 495672662 647925900 475163772 940641900 724836076 177261594 941290905 402334006 40099771 726393569 746776681 451013333 472550187 616067022 574070092 570781073 690178883 830296854 245911877 282363497 180814821 480464036 604058652 802130196 507970616 429816018 319215547 810687646 450322074 2790711 736237228 500332522 145070470 303722313 64824596 301090765 305108774 986515934 412159816 605338432 601149798 196180034 238770627 170377590 793175784 874941518 391123774 115224349 882556087 520167224 911911404 423942618 826633477 533532826 704031813 18029383 705419951 735716327 641145842 679091333 109482818 983719179 897577490 423025287 279533917 732334693 34992799 18978197 156990176 932897761 4323173 922922578 537631830 289355675 233141281 820381735 692824773 107994872 396239669 846410765 315856429 226397465 976719625 178099247 841473807 402135922 275930283 241373501 873758851 861403688 465839925 689001319 566250178 339119156 51298836 396407011 554513868 807196165 922020801 367314175 847978161 774691587 739442279 786140982 496074553 366036329 76933673 600919023 842360189 55058003 335738587 917824001 11278507 614890433 524735766 386818661 877316364 880007616 211161469 747600270 952467625 818457304 548957123 374465451 518562201 750119423 289614831 604499975 314228617 733057353 892305945 678190931 964445513 651922914 587304607 245375903 766788455 22981398 457515427 764915798 113952313 119095665 956388020 295245444 837105730 29574131 890200878 628155842 248092954 993749430 394628202 307151950 234202537 745391931 401094033 402381537 915927401 82486151 968728551 105482215 275635809 854772789 203456151 657342862 45782495 162366704 190354601 811637953 137683304 74705699 651278585 686167242 520849822 513024715 450696573 82158137 942533386 826854004 885970671 625945705 97017767 544740367 370843627 630801819 875948565 412664099 173519955 776530240 62850678 461492794 585401996 643510950 219071422 819161369 983677992 104602200 272331776 957492192 266419942 793646263 727158215 605580147 209202008 945597645 509962709 897702736 336013453 616656102 681348213 672582872 519924032 17519726 97117905 363709619 382090270 347494899 358772424 164481398 243473608 686522528 298657812 484331529 270057446 180560991 380772009 23021156 135484636 721980121 995986589 122255592 554596137 39208193 937585316 166750570 620244438 882940031 211298922 279812841 437387283 139320006 482339111 203712235 422823411 517237928 196969292 691456989 64525254 191276294 26641051 394830453 500657241 454896695 527666085 93988462 39741999 836258830 256188093 648138985 641767888 167334793 455360328 736755775 158496297 775016575 49100859 382909828 309599840 820995647 340664772 908305225 866675713 25680723 132809348 636545412 31774777 961209583 872353107 87656356 769450512 163432430 966544223 460344438 668550315 618058679 360688541 868542632 185449649 514480197 469497841 532154041 915874003 902360412 939446617 984756882 60443080 66001537 657977810 271075057 424071214 572230733 787655550 538938922 285146227 511361085 361456587 516879868 141395019 223018598 242023553 361096541 795353259 652788232 185389618 320416197 452780642 687822693 425265615 398665932 288233808 40132686 365433636 381893886 450302251 164420891 412614632 324049210 235488965 804987107 528065020 536853570 95185549 107604651 534282078 664695978 464677408 358349992 451507111 442304597 986486672 489532125 846725394 84375711 248777326 696801178 81250642 553446525 972556682 660379839 211240417 100108568 480382751 865680929 442251609 746314493 608927182 94188965 957732178 786529934 209533248 339365172 19007497 742272392 428360971 520631210 432979668 555083874 755318834 805494800 731196313 616964479 214178627 676706784 915088999 755723372 612074896 195193587 40881100 680607654 574407970 667631707 133958636 390653218 235364222 224011393 267861495 843404916 339903437 559143707 399951379 312996914 77165206 936694871 115315934 878429966 758546065 823811416 704089850 750313249 402493842 160261200 688839378 728239507 317832495 526205113 447955013 284074563 928681514 768907290 219320239 176045375 82554900 695244371 33275480 46033159 927473502 356090585 532299499 10784972 490797312 241784085 155191752 723642403 393665931 367706367 118984261 662439382 264102000 104134533 428010043 323189014 79070471 83071869 174604638 397183383 485685353 209425386 977687322 590172347 818103217 207831654 330761040 861948825 324068820 443217637 711550043 200148113 309605436 523455576 430870211 216460447 181197206 728451182 583031350 665923792 818606443 256784518 973283186 804749357 125258426 895012639 938670220 871956544 175587641 178131453 155958194 284271840 207932694 655082943 124361327 582770641 178345145 820204292 674958300 786743792 766266045 282103595 761622038 796631056 383818745 412267967 296814923 937405812 451746898 460922492 44663054 499880252 12022956 499932369 760308550 347741595 33131984 114948997 35935878 266135100 710598857 478530184 456687471 509505728 464983619 494260485 954410201 641781919 866728968 489474329 980153062 606433525 677979519 198859723 833259378 249040440 825970232 641212784 572609052 78095444 276667110 624058042 870981227 687446818 187694609 648978717 445765023 39565999 510976802 600564264 212470691 390170823 276457302 138685068 789871722 164445416 291975492 125232055 287762207 387879934 35273895 944852378 661325769 91428443 509432988 98070439 940897619 82642252 96090992 407839834 994704401 698103513 877122077 984319125 332021668 607821601 210573777 261927977 674206343 716174440 164245158 36686456 80028549 389772566 585412203 636683821 233816605 668986406 278531912 607815360 547610938 736926708 380901798 436149743 17990086 79800357 128712253 958109072 549059735 551398675 319606789 888664241 721723846 972571800 225248808 388488340 484477463 843665477 81860919 305708565 724868014 389408047 640208321 717665270 284807349 805168035 45204047 695085303 396415701 17324283 574410588 127068041 881813114 308916125 288110587 885900001 941168046 883452701 522006944 995571765 97847240 322848892 570253078 286392384 746966373 248314423 193067258 316515637 922044406 853390962 732894943 250461493 725820792 926174301 152843651 329999134 389133547 995052394 215175457 140469238 152831729 855748981 642805419 167712131 92210760 191808659 163092725 519487267 395738300 133963546 307422511 495775217 430389408 769956056 779183028 372639797 935544824 721150324 598630221 210708493 169342340 141376395 229040497 752921708 124924650 974833273 444118152 75655435 277298003 480407526 379495623 907747265 128318124 791012496 581624873 504093033 232722330 171123464 860993407 721190612 321056576 932255918 346784133 205714344 228807870 716244949 172549045 628208714 853283200 735732952 546350288 690375992 679115796 501123371 251837518 113861626 114361680 85289085 728853723 556684040 175873289 512040073 436650451 803709430 988843025 113092826 120424300 193397827 911438938 688699450 439225629 724982238 748792969 406845753 564525760 895361832 548572757 761896169 551683140 817645184 640975735 316173575 8154088 920431838 725525756 941359160 218525477 277575516 427394022 146964578 364027430 536436971 727369184 799448651 786948670 655382561 217145595 574258812 318908623 15881697 746847911 506901393 680677829 854848169 782303489 32579343 800951062 597070711 746345040 750654454 26299538 902291719 827549596 436092148 441147976 779840200 774937615 682483451 699780007 117607289 525779884 520942816 525881641 320842863 6809779 590309433 938050091 941508611 841013697 41094364 989671696 910069959 970323654 186895889 417341418 832704102 870388483 946918597 620110825 274689757 718102190 607142594 777746789 529661648 679580252 914250641 694175455 972096113 661219535 779229840 515857273 398039209 523868057 408657962 906641119 403071238 998412053 546478445 744466751 907606834 589593979 382991129 47533577 361720109 442204500 684641180 766308044 635534954 271645202 343490975 999958745 581237259 398831403 519051761 605405015 938537302 762661252 853454563 80418511 922606170 879019310 988203804 136196249 477025666 656682863 896526872 729577069 755766538 978642719 200374933 727401681 530544215 239084164 897543412 527510180 206381456 478506325 556227308 435780182 934753961 614708472 780360273 945972601 871518148 137790946 939160416 613541591 700769291 953953920 762266182 449895110 431539023 875915159 204503512 69357047 982322794 725342275 728898522 576666236 932440918 761356390 966777182 570034044 399406657 812941854 840956579 601528800 660749327 11763015 547489081 797639010 712530363 443103936 742781447 533880774 444042580 135967880 951976828 839527189 216065960 135995802 686975810 379469557 767646716 339168032 617228007 840364431 269889973 29204733 626340079 692809235 563150105 919028718 872055340 611943105 287706312 553392793 359276862 380197796 462602457 140664931 643006584 882967877 736776101 790260450 642898380 205474439 125666371 996014748 186719024 354718655 222828602 900454103 222244862 936429977 889101560 184946666 691725020 918938810 708385794 200828610 898484160 325189572 43306100 686214647 78194766 923275773 517280858 828431237 619621546 977253688 481731786 668985058 426663750 213611026 174121139 998463844 532310157 121343341 594918101 688811208 448560115 228693910 775920774 843332720 740361749 177651310 737111627 306728877 795550022 357834799 27070296 564911349 217867958 124773870 529504149 441471214 539243684 172592785 380610124 697775831 519516147 392040077 936165996 424308396 640681783 994118765 16459998 660938239 355789327 366648634 371855363 769461718 37205108 138981653 958014456 622784868 195686743 268352622 854106975 811045263 375218054 683260041 132015381 521326542 776305164 392252327 718950481 328846443 709954286 955388139 198468759 198125416 820001175 488738201 859384955 562863399 725041883 944312688 630924956 546111313 859371614 825494010 453690828 920413906 956776778 778536856 990331026 948553285 763068355 494465098 760879384 404787625 874882614 827204243 235819649 452979354 415462663 534565447 465565548 732100943 598870072 13788282 223493458 817182517 866632247 810997691 901726908 421143841 103135951 718849787 553599124 484643333 646903479 834957505 71548967 331054700 619891461 49965161 815495262 471192159 973670081 709028469 141653793 288018227 712309531 981163726 58665921 747732121 528614022 157161529 897637823 779791807 811598263 202585515 10352407 354826264 631576332 871875797 818805664 720370934 638286940 205743597 582654387 510499232 675530850 725307792 594297967 761530561 194430023 554783973 750363880 422072005 800913172 219457619 846972761 364693442 697345156 838015809 678137128 543229588 396246646 933276233 285007488 884207217 607188863 956157912 247589556 325127257 406796345 12550991 301708091 969504870 135609567 621493560 507928585 593610976 288772560 65614813 473362175 538583752 763456674 543337241 710573413 751232936 565443161 821587471 906923326 255691511 271074823 208590539 644506835 758152766 3348311 382223596 201241882 316855329 148460139 96775454 485559431 889479784 156067308 556929769 794313366 93854725 582810576 551070012 776175497 231868189 590596556 614222174 27168452 262831586 114890965 618801667 897691677 955460840 970852244 266465422 429663265 21744782 694075080 259074613 721380117 891422400 968857973 858127390 598513560 298178266 950023755 354360690 948413344 424992276 604663031 675869407 640424250 631900460 426470969 946182095 952372011 809249075 637292319 679203434 812210609 497076114 984674530 420190220 762456077 233175221 419518516 731374015 513551649 929979429 856387484 456562560 415111760 174448311 942800130 160346229 335672423 197992968 603350712 698663093 747947315 229503710 242542639 853754790 367262929 629241765 222069370 900950099 932224140 247300625 63975964 153082908 794558551 248994586 497728213 549357799 740242929 979987791 780810478 691955664 96793184 616736333 863113231 597343053 528075004 312214079 841291568 487836496 645735028 830328723 507359361 65188556 173153991 427196909 24474642 449553106 499249128 729774883 93810940 580559120 40025243 251181853 987389514 299987090 28969392 368440659 86801791 786353771 219641463 688642835 207759071 678177291 390585386 234686875 697203355 106257929 686073094 293110388 362513608 318768775 734634820 167475323 288753779 434526200 380062332 425325859 216197471 200733181 457913999 243247081 141708062 864786786 726281412 914158541 863122898 841029287 958280948 339572214 643415634 806700598 29072838 630135910 733948140 405779073 448054300 328478996 639135799 405034909 365867249 434004539 888272516 662660991 524548101 283708263 819913271 757196928 548588487 873998124 19847271 232861644 401851265 685451573 532820029 387887632 902795854 642798912 698692946 819722305 697037830 417932244 792079227 283930929 773071341 5880977 588506087 509282055 265516315 465694046 643586787 20993015 263620418 951452460 965290540 377330585 675459696 35275742 730934593 276809382 278550356 708262795 421985150 341514079 723183035 928459214 649726946 783091453 308599589 981103797 109330041 901558833 917917520 24358019 28309201 693066525 112640967 836238454 140799500 7312228 640645473 235762586 79657514 894816157 396198892 834880882 311517962 281597578 623181020 67203733 389095709 753215559 4588180 736816143 706462000 721760647 812012760 98844897 940560279 833858606 852535993 280001538 953372619 588082427 91562098 241037495 42530637 627218305 126873299 441036870 728379783 970120300 574660405 732268578 719422536 87860015 578588339 462560053 329017117 432565001 322213852 213898777 793883809 641730965 502145351 558146023 184309908 204147512 972315618 958892560 494301135 494530594 449927050 149322076 990032723 113402771 57516251 751077308 234765260 918454449 713567212 975290802 383908609 455222270 649989274 599821663 286219527 362675426 467241494 258117447 927607447 507091774 903190190 513539774 885875488 761007961 367548737 73530997 763557183 29630482 411914762 325813824 596645234 32835243 847001851 521596715 413867820 947052553 728356337 794047925 484615946 511721972 847461252 458297986 237058593 559142411 167948992 399934112 405910293 330763980 580327279 912015985 173168635 283906601 465945777 619057048 220551529 519617043 891457222 36633386 239570248 286491937 844288291 955020761 39249831 662462323 781484245 273801144 757801531 322130185 219274899 711316688 41171887 710528320 278423457 1707785 876059156 28773152 182237871 196820947 306292995 579642528 379806619 614848963 237017127 845523580 464227478 708057755 12213975 115716198 58168372 825896694 963874088 797978620 795613183 737422484 7816424 995826650 896809403 389159373 629111862 494962754 984339382 737927640 315785334 707809419 707456448 450270165 821991334 8090180 946791217 45139321 932052184 103018902 907100559 744928703 176436773 696716693 128748506 226902176 597016642 865553914 993083808 864823258 553087879 266970095 195534040 446275248 338316453 352414030 362494892 804109452 537363445 270769086 846015077 939487689 84571329 9179709 938225432 385785353 763750937 706782221 554704353 853390783 479086555 869238257 318555613 376386734 251620207 136295105 891057587 214433585 38959626 134106471 820339103 196167655 76948975 547117093 269052830 313195979 585072428 171842388 621088419 808939054 552078414 926027579 903232667 270827811 650630034 489628511 275660797 646880458 1073338 13359905 404496671 922293114 922667107 98512938 432960781 364574979 575107584 359882893 996870233 642232806 78517464 733581628 939788939 586479478 646782582 19648242 675697287 393841113 494621648 73756723 163814429 539588413 222186728 473553612 881846758 977298870 326622731 724415532 866095015 374684377 437711156 252711652 697673044 863151602 692923876 396940763 423948929 727667170 111196304 908699147 644913039 213434528 431825063 925257957 542789341 389821289 38225697 755046367 865405608 752775778 836423293 963307769 455492985 421183337 946467857 155600384 756202248 790519438 751970495 366478539 479575827 345311430 336694547 140805162 54573702 631131545 186127101 429561259 76869448 90670923 605069025 695713242 202329774 686497526 907734069 855827041 237807895 697926317 396741170 181693948 256425187 453503051 143418048 166585373 788672435 105065631 2515207 245476826 789101357 143004312 739590556 10134519 982883564 684637978 762988051 390927038 340327231 701163367 633030911 273888902 8743049 128633658 738365522 676211374 957039711 466979849 207873956 674740022 438594511 850688834 400407636 930019034 870541955 535427496 570010695 967261621 312049520 163698478 819519570 772009686 499172800 799254593 422618225 905966265 897796227 68440069 158765995 188854873 326763258 155435255 884887972 400542708 80011020 987756027 939880078 907398557 579887754 972154907 106087112 417383363 868059793 893616081 565219420 565238813 934617848 32196821 159894618 719371627 827133147 348124176 38427543 778920052 910280693 689806687 667042147 650981050 288621744 708977982 976983144 303094194 468379313 347192001 269809028 124334998 216291749 519427892 966021506 396238211 667088222 622950683 925721162 284795158 446493615 434029789 443208664 378193081 704144382 770750343 505899944 34850469 466644212 700885772 919553848 301590389 525640900 803728053 124497176 255086549 987700742 556974873 6850811 692435531 129983228 444302586 597178763 544333790 413021578 584702570 723385810 936748632 392188045 528061062 944518491 509520019 255204385 926514373 899987519 414955949 25769127 860980488 463235399 265237101 382739171 447714337 303542866 688259690 133471157 776993923 798221488 590322530 784136214 616485431 499901566 12045851 152999715 118713409 679342814 687737789 558482786 690842254 233326633 50380474 475814763 94824322 207026082 839170087 184806380 697468810 612775051 169572976 432388699 933667732 694667652 733022428 30548082 841698116 219267518 885767439 907628179 935243221 625894094 966555080 135951921 577140914 822367934 948944288 217565132 741022975 549493779 470877789 80371340 688906656 542620412 693374922 365686817 772905736 225866208 325538990 997504721 381010585 524182158 43251051 656416277 355707493 109963299 254156424 982031963 452972440 645726952 60701153 750414182 516613252 935566903 201770889 799352044 311482969 908767457 556346438 88577983 45216515 713992963 606873228 712657713 946155084 146274293 201112262 226756345 369125377 22062905 776367798 250020157 56240427 952797347 962420629 399136204 483134339 43996878 448386606 664803051 677355215 212705183 624829176 37854306 12145353 947507752 209776733 186677627 282612208 357226978 481244226 67286166 143373238 383435988 137779436 877137042 359674837 11804245 365818886 680182035 762499008 675151822 155703876 503104187 147066825 606144331 675644742 219727525 665627572 691251646 772197658 619663673 464389847 227332873 908942449 407294998 735639471 306174504 651471059 917797297 209960238 466370608 583526967 829644982 267841769 875007334 490039324 4226382 971662629 309211434 516115704 233872036 361880236 929983682 112164853 876307919 206653868 81540040 971380411 903262458 88403262 956646129 895607856 840293261 801429162 582548255 8339515 412226046 467336228 475490568 439824936 327127822 301633131 582781143 87582016 11550427 565189285 801865953 290810561 985251342 468382616 324721058 691122897 908156566 907464957 618564637 415258751 344430515 787159279 490007364 33265090 640531562 768949642 18999094 361202522 987367904 822696105 833403649 691775371 406395795 266663649 520409497 609469435 674134576 525290369 845259760 587293556 251313803 975550650 975437200 946664102 86415038 215488301 270478083 922023145 434738461 108414161 809306056 130997681 363694314 506404419 304845576 56179192 916411760 381457247 925063914 271434966 658356792 524896264 716330493 364468644 37866430 877472581 626247446 547213834 68630436 393883128 143823050 514489715 738955015 172952952 136506453 37147068 207241043 659552788 171188329 559382900 789478993 413096201 908329665 674786753 636658266 130539400 626327164 833859666 563671267 785063588 386489608 439564635 6946345 47268217 253567883 970060214 211952012 232901129 943129535 71962819 930020183 146863492 757150695 369142501 414626881 631928521 266077430 905635221 640878115 566015667 592846861 709376326 680072397 794411243 834593949 160738722 958940020 208750755 132089108 801800861 910928040 496942545 447622081 348017514 985394034 393936379 67851802 233753065 588755237 500330108 495987818 342346942 692463064 661230058 820923807 872599129 453055792 705975942 973392800 312710919 87554184 312868677 525905927 528934794 707143777 803306494 51030472 577765111 409601757 742690155 59232942 437097731 198147100 784274249 98562950 326382092 217268835 447772457 471927403 405855111 180431304 278702175 284090100 529936190 577717334 253674065 300719202 32998672 908444927 354137153 935679080 717455006 541334664 137035642 166437296 867781459 504302712 194597652 712432455 299610404 427395112 301097117 834395262 241607878 816876555 184916020 693138228 533981301 32450544 340351649 597345652 749526023 796410198 545122956 145239332 918928650 793044788 257315247 636042438 6019370 897502590 952875794 463666969 695398137 412450550 523617340 560874982 785746329 100012060 390147699 742793296 626999732 25767082 633379094 551040738 786289969 665480186 963138660 694301193 865546415 863564669 122999330 204247825 160743656 132944866 130350443 629908225 144877564 876416157 476688590 970041817 345599861 291774842 435134065 494078382 493031258 74962520 871445811 779371239 378565806 126278945 881231705 32429591 390888590 636235406 837279159 101354567 921945100 158864416 677156585 655208848 134594151 124196278 700056830 142278015 950630190 110079890 752512160 772712615 111704171 912853239 824666485 600958907 295635898 758315253 930505798 385343120 748446789 62758162 170758178 300651253 808371024 520950468 793581622 713356323 595794788 879671013 946874671 964197344 237445386 790039620 165111314 580907665 489417273 747003353 783020289 759700936 711206851 252401177 21954309 941032489 62097478 447582933 817713826 467358858 208508568 685549109 322278910 21291998 182600993 108664318 676524987 55801152 974708103 461985683 392978067 341180957 543358420 559502392 584041174 856070128 725722545 586044861 368587488 928703573 372445123 780928527 27242103 798525006 497912013 412980252 178336203 243045705 531713356 529679186 209393503 746001871 569980959 9157191 475310785 77523847 776950843 785385791 178468846 934928481 356147334 522722323 115379340 715471574 64921471 526679997 76721964 25678396 508498899 357181583 534030960 208209938 608034288 639259742 215022832 419979907 612404150 970385136 374198943 303269231 314522633 14133349 934910596 819864340 567905072 425209055 588761485 164161692 394288494 347322399 623982159 318668136 567976501 640858917 741313060 474697403 45969082 129906622 673362287 173018134 959849174 377839260 465694613 756993671 47398123 799845128 925980388 117464676 767080523 504587081 891789722 256497531 601463340 209758565 217773305 657640686 448499164 137538383 297022485 196389602 118424517 4259812 53342276 865410568 190984503 993909683 608440885 295145293 74875898 537789165 944264562 138643272 912070518 74478364 137091855 645676263 829828956 595884750 216460532 592429143 364488170 55772615 837500409 114172502 922280800 284051729 314619427 770208259 444364100 319106055 248184110 200072504 14144787 889873256 328882569 634230820 161144997 286797334 417318426 98904807 430331173 781639207 38463583 975490493 153244360 546339567 541379319 114949424 750916391 550921988 26339072 861898142 698327468 887786971 174584616 426178275 498936309 800529951 615073642 217387680 487565893 673876019 516912290 287380017 615939166 855886709 83130305 86349389 422910453 532149263 142277080 574012423 186258432 129084239 545987836 629185784 509320616 461254070 778563509 161986899 6168956 857540920 600023556 364826855 271503964 464094840 662820396 362476431 342820737 695965372 32501393 970778580 513438439 121185157 6059326 107159425 57482926 976909260 701738270 254325201 179694892 282561467 147549895 962560975 282391252 414422519 1235815 270987814 788343401 412859599 891086926 409245696 235523547 382082890 836172390 238233327 651139666 619201422 71760793 814520571 482818140 514738124 548632391 72765598 475054895 24705183 400421204 889473128 735457541 321627012 874876572 136877385 645292084 9529369 604157642 73723576 419485179 944831477 689855503 619665405 801684326 979208964 97560899 167044437 633456335 717468919 127357626 214443604 982198830 449056236 494530129 446113033 355006673 381617819 114798521 286769845 637089465 233748761 307510790 337251776 745341433 757767116 354658363 29490290 169953806 49446918 894569071 778041307 605998170 244751431 872065790 171035563 404734354 903592465 500388467 462955681 412566163 27830339 881132358 769477639 688126482 344150460 284153685 367915582 549756745 185538821 36257376 757843285 696150141 735560673 3742788 17306867 874945720 513174317 836006120 999197753 621135998 355323928 955697120 586640084 100122644 846469751 384178651 292061337 681038422 369108889 338201592 812044612 910940464 147136736 142401419 526488509 913945755 704795258 70822729 25759578 774978737 965000721 784465409 312734382 424140734 380245130 158984985 512881154 323884664 162265643 498160252 293712649 367897231 264208466 594162550 868589808 774102584 469341212 943815944 364569424 577178687 324625429 505951637 999626053 691378737 100114665 128359897 798296475 963493855 840111393 556881620 31058847 778854410 725424593 948730384 385378231 282477386 577260853 52321876 164967468 193333067 295531977 434460162 714386806 338536981 215569585 160469222 692386674 890586705 893478242 269054884 494933339 220063562 774459912 759959431 78557758 852789576 595867709 799371767 763687187 688654710 726607040 811118862 887987994 362366291 313867190 921774270 18795584 779048912 227719795 238785056 186609502 557982342 164524498 724670041 275912158 249908135 299198267 867755252 601160525 571009609 164639499 775254100 655957645 313010109 277492189 467795104 98174001 986684425 876367450 651125683 34799338 770569967 522655351 430990850 60318665 446524574 85821738 955304534 186413550 878991118 9059566 110689706 555800463 476112734 842617519 128672805 946569447 41790981 516438357 192895509 102280251 764843111 863538502 861573681 470549994 524183098 334751929 628404856 401628667 757373809 692915698 160480445 440484752 318226052 583595111 955967868 218494192 68614496 837618231 549950008 994519326 1667860 210880378 133170408 542129494 497938253 919118553 552584705 670897371 920890860 676083573 379447968 631663142 838074379 135748771 367759342 930913902 521604168 43967354 636699799 125701861 344092286 423526914 424065782 758740158 128290135 335597086 84809112 428504848 720410741 646651646 429161357 68642634 836146220 371455812 176124151 876667699 219957395 446533981 693489968 517244504 193485123 254732038 561454258 228133309 405988054 670516592 428458107 955455154 543941694 726493556 383026083 35415648 947091604 784930333 461420282 484878255 828594190 300241510 199332394 920607050 264976877 375245428 731946592 846677071 101685410 504048666 789968607 834503114 113000797 361407306 248758027 980038516 141832389 28736449 586678328 831165771 476034611 263118056 424309716 219364733 441433840 966706873 29275189 542812152 786173481 393940055 169015637 510706892 718999904 914471429 360995265 298228449 806960617 327795336 301218152 38969308 580199302 456872309 368076146 102772841 284612559 389706254 317074111 460471725 217321645 204720199 307252925 77396412 880491352 709894239 83160389 487298870 176865291 192229713 424815462 311714785 26760536 548840466 50812302 827833300 320149795 390591359 744788378 995793639 509685228 220628689 340331394 142743607 423093511 566370463 620048557 574136444 638322949 705205243 237072516 42450092 934532969 415203524 800102545 162754469 955988382 447501694 857926651 890327326 637167496 95846927 585345353 42660031 711609333 738833904 483169437 95752309 22949127 988472098 490717095 549513598 651140165 763911749 115155667 829378665 429140951 555694357 400835303 545324946 513480830 567002310 769917104 258416179 981853340 228046111 59383009 440118762 481149376 503883938 904698467 195878598 170348395 211263896 56948073 897419403 308381810 557066839 889423428 914162131 991565263 778428206 585740127 356328978 278347181 423953112 483446165 600425676 258861983 448406853 947635734 933558189 559916392 486068628 439534582 712462819 442783647 876154788 389174955 88339372 543110931 313577154 620855047 499476046 428806251 748267836 282673446 650107489 164555275 877375790 462345343 492952046 872385682 800744642 38616950 365213762 280556072 994131840 822382511 666512435 51116572 39589800 954688719 236262067 582334683 501339510 253867756 648514879 868717966 511758427 546696264 257061363 773148804 976110300 559499811 264438005 116281373 281057123 70418854 345628604 186819629 603647848 49649270 912366504 707554081 134869048 262571280 729178205 951068087 281923438 766956590 449004009 306304326 890846808 475457286 445293488 260841844 99538320 661466048 437733555 509684704 213269089 705242869 357470150 84548142 292445605 246686083 851962300 210594915 570648202 795335270 932640906 21524493 987328019 980004489 890663715 388753331 423489037 479192258 116724487 166431396 544827628 971586688 261699926 973923797 351297811 277418501 460843471 516403264 269007618 971505246 322941683 121179975 51447849 157703847 523939198 269515410 884901327 59068803 765953678 645178858 127141101 67822082 792150229 950884959 511253384 897591817 399417571 239935401 318780293 434343010 926309283 6249124 717956748 927876372 573704987 340622194 225191050 16760371 540163056 277066742 840218056 133160785 738744147 79719102 117815251 782680522 98707451 330253403 777764053 777427898 597014875 954240670 390413610 198952885 236674358 75322047 220650706 111349341 409464779 220564686 663649049 987856356 942809742 468033235 86714585 502045999 155816120 890617659 40962125 314701417 946781991 96573676 780626230 286045776 431683505 849213459 31805839 84921061 109652225 925860690 16823495 972204527 706001014 415751595 509181245 324932182 305254601 525058758 531291376 650685795 444758924 54868601 459589396 247070337 9000189 619313958 502466647 912162274 450424252 873806227 590149524 213463898 723261055 193165337 457196725 799394625 196238780 218842780 142133860 944352101 739330273 963559720 757930297 509356930 319781946 870797037 749749651 942438606 83234218 324720480 765747 124483341 219537898 478276279 813492984 432288832 939770628 704417570 943509909 740541797 835169376 100413462 9095441 725877346 754095963 15413840 410752440 92669769 684428287 490053921 878841785 321164509 902692184 227714922 13377301 433228110 667362049 965675532 673560961 741886825 174390124 864284627 7222202 950494934 586778525 943738802 588439866 220248031 51785096 415915289 123922131 41914980 557526275 761438232 70764520 637853744 361484916 404655745 405972628 907042754 66930281 289585078 757996701 577495806 832886838 280189771 354459589 37661057 957825432 116760075 470500077 131908453 597126136 180468661 220397597 194643418 388256066 529787953 978936425 700025632 358871383 200816849 688522524 373277485 885299360 676481255 104045684 230944164 980886362 840096043 682810108 680910708 378847251 906655525 569329884 190427129 492496109 115309504 711437661 176019738 784464999 682734 38926581 825142823 273918541 442237304 426500506 83523402 200515213 993664385 837867152 642624217 38440355 277153290 629741784 335914072 567028021 927194258 493259893 747602353 521192627 212407946 771719915 685793926 660269575 170074371 34096278 996735 289678049 912787122 415381125 314204423 163558733 12978135 776386664 300111702 138418510 222439734 35773842 302403171 225880484 288701113 853974153 894014862 110600126 518388942 667045616 50071524 304004536 864710421 179313170 643890918 954286545 978619833 603818796 606678578 166500473 317558069 367751307 554855139 279840138 83170543 355844725 546770814 147943884 562429393 761804527 182006722 311348532 936793608 208889334 900868454 897733970 813683878 932553194 751848483 324513673 40938315 131765522 459819653 6096536 195856844 140741695 454488281 409422195 131090875 59247989 399325132 170555141 217735823 686864746 819619430 358901848 120656478 528203669 908679257 101766737 20160891 818444044 291325631 293714714 560748232 296665132 618908212 695828205 47822315 182574570 167444746 24939075 424530960 540607013 918579459 423199384 29243398 658222621 692046749 604157779 690471068 476268357 82424617 191415548 37659058 153811671 547766837 709844415 331265339 957431899 378496296 213062915 730474573 554224462 797070395 145260914 93309673 575345062 58657638 415056147 850088629 544358174 267243306 562194318 833024093 327071857 308440361 522866728 904952097 947102506 444994669 761099356 512166826 443912468 598531966 661692950 162212200 421162037 620868433 223026388 30670040 243541471 681511280 830007418 674740819 330481953 998762192 902268953 953903609 985901740 777917612 718408070 113747395 291822353 568203091 820079729 999219496 525971942 497980468 766600978 864492370 354984497 354413595 19595602 87242085 435384174 521133091 121215025 83389736 145420075 7603716 679166840 766531951 154805254 360675405 379018345 870665909 171435240 24128240 1306513 800638879 400673534 520702615 327026089 203360254 651832052 169506380 820629568 592520939 843737962 118003474 942377070 80150206 193926845 40008202 139228793 404542628 861529902 832823675 36906275 1739268 707225879 97172522 997064472 295530411 306482270 289292475 988048744 72101560 146679577 416502535 927135183 146246004 765420135 420990379 943403693 355622553 102486697 833361944 438618969 224562565 704009558 889379744 283405006 272574218 235833327 157324157 796794418 650088258 214284992 198663615 854979160 877411040 980991249 958650529 305464179 869471418 874288590 353005559 143270832 274303919 439928403 690966933 405843514 540679804 971985394 579948724 570834360 692650169 195246680 817924755 865926783 526524594 960042751 34759838 306269479 675309671 332653401 455277073 432424101 895544333 143931731 589355029 830495885 268698339 663453776 92389306 871929280 172623358 24774449 749741040 388538175 923388006 807645272 389415005 46353722 547272379 283102709 482166538 921028158 492576436 902171931 337931988 827446247 470887174 642489768 410180569 873454711 89152934 687853328 112746708 190214766 435299209 137819294 788818724 190747518 552676000 536972032 758920472 189209303 317015732 517440554 362286381 492243559 758772883 956809868 851094848 77265567 948691443 968535785 537056665 345105370 914657373 102392782 250490419 614444020 386887270 978861077 459420176 553041228 347995416 623323048 939427633 739687501 997924219 194672551 282096837 179218194 604878270 491093291 179851161 975362599 11978614 934268541 865788999 651532824 285949263 112069749 876579576 82289259 399293982 392293230 947721573 386911959 299762182 963873399 28355724 251735461 845264566 693366970 303505741 185158194 465743854 475574538 948283991 570946007 142303538 76684157 143685685 148095025 730163471 912767340 554869493 552628195 945321426 143999737 728164315 638734226 795834186 69303808 754675528 211560112 341007634 38403637 498695073 512093917 46183292 388597548 206944041 159145114 259802280 316415913 102383513 920021089 666183281 739171741 134309875 647063747 691035314 963397371 428900962 228789270 368144128 235595625 873568970 802704555 183160737 373669533 897114373 682407687 717441646 629102490 725720054 928613384 829184460 367316775 624685153 358749273 543375638 871395389 93667018 762202346 503726267 404447928 929238383 96440100 855858445 916160248 636366843 81524542 293979368 198725528 122495940 609899642 485388376 573336738 754571591 410674516 627087814 921668454 386500364 648894506 478659574 932500832 794663353 183569510 225332378 435791035 393394 341781843 211575517 780486694 503025423 874723531 26574114 242154508 444963758 505392180 585530971 310536190 891864014 404704129 346316641 355425497 979026231 392424013 745507575 343438847 12481125 388442747 310403998 255475847 601176909 539300651 292364538 564083640 508239328 358288653 924787390 554985257 644331107 5685725 791218401 35455815 431622476 718267565 88699986 247165620 362907401 803557793 514051518 14284405 363315613 424736351 665257318 47621010 168156807 548963884 167237419 572742857 756678513 858908506 235997977 834596670 41466158 358793539 512209740 682861207 92532816 78085933 41776242 586512267 756126405 519136436 726478256 281697340 772339535 153127943 867756340 547967262 458300967 488765128 891234495 32538491 463219748 706989598 645853389 807250324 957994464 464523883 895948784 688860234 810601213 178035081 68900125 756723953 527114529 577416883 740938623 464037046 388249703 827810072 277114690 57485070 374066317 457857168 278186089 813440107 18348433 990434742 344599994 625064494 592142669 784803801 272559805 279441414 712967192 837649724 881721149 348414753 535001300 610980917 59227533 839759695 46222621 401869071 677921976 286639040 913892518 601695211 748465654 164804506 831792086 859596230 901778547 976909499 478402821 459263474 686669824 934830198 603000212 850098702 758287062 199113628 859052384 925933118 469089968 987383380 835004535 79889311 338568045 323385356 379401353 985895484 948683978 583459995 689258276 70967797 800914794 266895237 429036984 600403944 164890556 465992785 676686629 558622712 217741876 42614513 905625689 104955917 965681548 321578046 445674661 731317037 779902943 639884973 35367153 977124673 779305271 215607274 411761001 130695343 702087713 993810266 948580847 214272439 931434551 473997102 829996622 466566802 8299617 192194559 21300634 403285804 573519740 965251789 839583157 602869985 801351352 802241767 962593716 457432602 199295003 665057281 605280270 543920688 821262095 794739849 658662107 588859402 686036018 398115941 28111472 930680532 591235426 17821008 535610930 769987616 606684180 931309995 46369429 488722608 494724122 703924534 759388434 517105112 402204895 591923064 282758721 12759687 896478494 600846096 296818966 653595138 296363818 698103630 258554896 55341102 513335375 40496719 48457590 857635676 80803592 201926594 324276935 898088737 815193585 591217979 185075584 166913319 218679556 264677894 760358144 981810320 502321665 177425159 561093428 349662057 527191876 10961227 631628396 893548780 239926506 709151276 890517311 417107336 815905322 633368908 220479548 544812085 957571491 615880323 856204968 135059773 722916489 894833339 194200106 996996125 749437189 545296000 500759027 121559995 531126017 611579847 454264078 536655261 727115193 115095836 391144904 835130567 471417517 449588019 509940535 199916422 153350168 829742392 777217290 737015851 423117507 133618381 944960470 709515573 22409931 339955272 199851963 778959909 738961352 838653384 133048096 892775164 150365145 493188932 585111806 987149286 600790705 713446823 146848089 358892893 518705108 730758420 373438403 927180686 287815503 113162199 842815546 828230852 153769062 298372267 184073953 206541462 656933862 193278460 50192878 191942640 118786108 17131157 804741884 257870581 569763806 905317490 38736074 294504042 454740793 640289367 469730154 572881104 426910331 481681728 12034967 79302108 466769506 841020691 710975533 531019942 498406796 835513190 950765515 605593023 909934490 216725053 866121787 902439410 425036934 587127452 920611494 472782510 967324464 662043459 595036287 149129483 364064982 413652209 44514264 779467642 557660674 699429135 578828570 173272178 913552326 199381431 314808089 921177914 828587530 172402564 107245947 221655842 712849706 892664712 485340712 235621323 94161273 565173754 809289547 492157187 47021543 371932974 591930772 596125201 554412642 188275138 794875441 686499034 828456408 933578941 180655468 429807139 48697611 273516886 542739177 204572221 43845302 449756948 675312157 118407958 639613108 157402361 221781435 836963347 807908373 455117110 786374014 260088346 877624972 244458533 650959244 885030956 585636222 620698711 413001135 167785245 686125228 347382015 178774427 324769201 973664039 310149264 579615776 223287671 613113198 660941839 645441812 310034509 270106250 472901109 469570692 501527144 405910485 285023114 842362493 842894550 623963062 115464570 731171753 913645868 949859127 628776316 22427500 922995214 688986931 719695807 937295610 591855852 638984772 187192217 849665293 752030299 712646900 850794285 451707077 862642359 305137030 715016906 118275629 928789685 570289667 10808158 454251004 547224846 682024893 472635511 865405897 375839957 188747384 592858780 392097393 685369201 75277303 936853582 52309254 914875519 993671231 362114253 291959280 27185787 261898968 244648558 375344803 972823188 775210365 440837587 947220534 715910615 864174728 412261226 723482204 777609887 212065509 579192545 420607480 488736947 480035330 85158310 325020806 102480405 281322519 879911628 180988838 498220977 864982433 952030955 898491616 881314334 668677042 66830338 439550499 446767674 533431048 968614018 771175496 128637644 200873016 976859746 687057463 609432163 768006798 906902640 204633108 715038205 788180565 928842828 219387767 986280461 140438716 728506547 515091164 724742430 801444870 197853061 533395195 206369407 122206326 462498467 28512768 613821457 615543400 881295725 329120291 974059838 294561011 269584996 464341498 736300072 3543895 492625543 190983490 917933486 569554951 441955972 822782582 173889816 449620524 876384095 190245847 865554679 657927606 470879001 109172255 225621569 267291195 565265123 839243900 129612884 606100771 621564851 89329429 782458146 422290357 117262199 486779347 764160984 130144928 597862836 865074880 618506328 405424341 476910273 394826998 560158754 963599789 748126774 249990933 648793188 592690780 963680195 469055995 945093712 884782277 55846022 505106665 585646441 320727422 392218877 940499741 272244246 82933998 640458721 10997829 725994510 340701833 26073131 235558801 964885480 849901011 425569814 526831764 873292546 83906877 30391092 85490255 146077546 315547785 719124735 587589674 546602275 877227243 265973185 180770468 402334118 803448191 134256807 824660886 776289269 395254136 403850912 274310544 965907229 891019439 600870331 406592982 632503748 296052869 291052279 757058091 966394012 653835814 132006002 618705128 544950771 268146875 541506114 702125302 938653356 506913401 128520914 463197748 801140409 822264739 165744164 432924076 887336560 603184075 746988390 457526136 750758801 717354222 427058335 914735556 887120185 119315802 993189713 837877958 407833179 965405761 539062218 937234572 928976637 416101372 675114195 252103172 586714163 457597312 27843206 213748977 174382306 994767539 824386279 77080619 464090203 887964788 744206405 549132474 397278159 627326284 200730234 928232247 602628831 652697300 909970196 941690322 379835682 802881198 211632988 231859968 723932897 726061783 911620397 763798817 434107519 658667886 963192573 61140496 127030059 114499945 679197104 462991170 488700539 970598456 712959663 969369096 451348722 997783899 790143593 852145240 219082583 277447358 213754298 774989002 821108101 294176680 875492385 402156636 884915988 277812887 180018303 854867492 739904492 91099558 5506349 86672193 348504197 723264374 763062132 731233842 227596051 888984169 434019575 959009414 130324296 382710703 254044277 574567065 205398584 492035238 135906838 841722057 697650500 755064614 410338206 453948713 29685431 695382084 848824655 50906105 672856861 748101689 138177887 427865443 188255977 954929108 577210162 134411302 258381122 99520925 950701810 140163437 826498297 804348612 121619707 412230892 784732085 37371421 120130261 743938247 229464793 946465552 699740022 150074489 577456325 240147829 132951441 351085935 881283831 888956216 863638300 516609757 174015629 7429883 163988223 757603141 303162634 813236818 598272794 470550163 670330234 60846322 193425849 615969438 499711864 391265377 517563878 843034125 359173910 555726554 637091073 6248204 521322085 601241468 787107589 49250891 636475214 909155618 413225573 465897865 806599315 756185790 156905472 18234889 731688156 253615949 664693308 691323801 629542439 438877171 893704562 564605828 244371652 569603364 475514171 281973723 882717873 120328998 176804421 867631012 31065532 943526766 578381823 281404309 371090279 804117253 24313740 393577615 962466450 148144452 507976875 231378679 694424850 513412165 295102229 905819373 607331972 275439516 654209469 226361657 943813970 407920216 641416072 774103242 412282520 921126178 168467137 961309899 44297400 69227700 828864601 293324935 662228988 324355604 438909754 241471531 27494706 420818213 281422226 846526081 653465038 715442650 923313196 337420891 268310046 21619591 971442139 411410934 979876792 368058335 366275424 646630265 581278051 144631494 276673727 316720501 580936135 680059912 326341901 808043534 215217987 169603319 289938532 10880745 788002272 850121317 768878214 623542972 902990929 305946891 97831774 846507191 772361777 879443234 858779663 414912591 857197350 346961139 847225990 99918828 176522709 880248067 51094118 489828150 370112274 853977300 174687315 959517978 893276278 979082805 806563924 961106683 199989326 327447790 103621975 774481236 155945133 229661136 285116933 403827454 401534836 194624962 476251485 946451311 487550425 672017031 541743110 335312265 823959130 633853854 449990047 765139377 409293289 824996956 34416339 868805978 62427504 47336171 656336146 360193756 428374426 774867519 912299481 563941949 938269179 225434949 855066342 59635716 480326151 327232716 7950526 180003784 369282673 3696607 730801198 886181607 600361775 570325943 844958910 456415189 286072332 54326522 498030028 521874633 23805795 956820686 672467263 884402988 788693316 222065278 765086881 304850173 370591176 274037494 945034120 261807830 417854001 950725234 420968145 966483632 599085289 406757242 701870997 367476049 470880087 432580443 623771928 336998735 458587532 571971697 724408240 999090970 437742468 53489893 613881536 925200324 975198333 275744531 861156500 380946421 225612377 32380905 503737830 261733799 543581015 702819254 97333894 236102209 72292467 165716012 821520390 211143296 330298771 448571715 569527440 880841120 946195854 965938695 493252778 135893862 279221876 176243771 963414833 787303438 266186050 152161188 592029031 841436534 741964033 142591851 929621683 170670247 606147299 638301421 23319650 614300562 120524257 213829136 104419763 430971790 540858192 97618227 293996396 790673866 635523080 262548458 507337179 839264909 986409251 345688782 250109349 133651180 272161139 839234548 724574812 970998899 196555505 369588592 26789401 460773021 205039093 158166083 847054284 790195824 489970716 823543076 982190226 658027850 163624277 743857711 783506515 139011173 862157363 480335810 738482225 560626678 34300232 328076425 38473817 69904882 682232054 105052561 402216965 66636080 547301057 744142910 465615340 670117427 745510950 627066864 948853073 250993806 557248274 919783505 651741449 920630776 616139778 724664005 491824075 248007626 838552166 19538596 423932396 13315368 189664587 736668576 705936320 711080189 794045607 675558858 454601767 811472003 617188552 801579643 197479433 536244520 147941920 317174909 593849934 69324153 585410504 992375205 914289292 342811972 321220719 864514350 844589921 272454093 914147666 391501268 805266515 451117326 980673319 432056836 28627695 481470459 823588987 314428014 54253980 71221787 909274972 471547134 540139167 968468256 67328826 408189822 211959285 373202694 276174837 6444373 362884771 264432130 256263750 340775674 107158635 935961673 146303431 402653722 783882668 243892932 700989053 948353248 826163859 134696544 681514366 238656805 472506593 474508519 631678286 739689936 618871340 437360607 943955139 37258725 435036411 148734066 606085230 249275941 312194223 66576157 454768898 950234758 253106838 156815701 646835374 539973805 296771449 623367084 669666579 565797075 824039140 580683314 429235019 23812664 923072690 730110498 278950080 645599414 623557864 629791401 679691474 298362273 955170115 641157125 676896066 457079089 743686380 337569246 290110347 853652912 173620503 487404695 130093108 767345973 913329545 625855993 248169977 653872121 704157930 853686506 76065629 433753615 746646950 528981679 995571672 278891944 923397289 300255102 96917859 312000160 887255177 103533416 457001407 917503674 749122337 762335334 917776851 589125066 922250630 249524805 780131809 126366507 212692160 216137082 252371054 363923913 831904497 919130335 496425233 976881419 355484032 110915320 222169632 980591923 742049371 58114255 757654507 733476451 320518656 25469358 224018009 322542310 700871182 816765681 809839133 352836388 510874352 153880293 108180831 102462068 67181548 239993643 492271583 894048763 384078078 162201686 339343451 906377129 779426928 565165991 147156809 622988817 823382027 150107560 609759745 301682683 848588178 605151376 554808822 630025588 520263928 957706740 781139285 125859235 410150482 948436162 347246945 115752493 102796500 936990298 935781875 138843569 688391951 97504619 754118527 757924078 233197361 349032630 800386811 210048175 138848119 191325380 176137817 62882399 973419012 20628649 793247783 374756740 611535590 791755607 368953100 73339617 529058505 574921738 443599133 669859709 28834446 184368498 659826308 850356250 550311292 125959106 455616600 845094597 249097202 183203808 502106425 126604004 249157429 739193164 817256450 563479311 695046986 804225195 997524658 551195648 229728008 881787160 989822793 218705888 382701007 120675430 188140490 914377868 338094379 740962936 282830888 768354645 258721712 267833590 757101312 820869846 545836666 198666017 713050509 164134726 84605569 907123610 706904053 548403847 125068120 464621302 534557438 963639360 393236483 814622517 201814065 452518765 294844070 747423781 855217406 785613790 986709250 324705166 688802666 896862747 374910161 380653400 254024040 199638881 415066421 157594463 404435614 602219914 177539517 20573500 427551417 862157943 12412405 850764313 723470654 277266096 623766793 88573030 248571579 418769985 524515124 858538755 706415802 370171452 931083621 402901337 80828381 479398314 875461258 340838070 174517953 725204326 347197101 786631601 389032653 853606909 532853843 244236883 656605756 691356708 64907757 319844466 571418217 787915872 190651055 399115143 174749045 681588778 162348598 930966620 833802810 53183933 516878885 879208714 8653813 990575421 931499573 667584732 548298694 135075164 149311045 190961147 668936390 301631826 667161974 672472702 411953455 107770687 6339315 461886333 33543009 791449831 717513244 445476399 49966745 429282047 618745258 131460053 116519168 762720235 17411072 543166189 86300012 222733124 74582308 90980425 264058250 236070976 743512566 638021058 81353836 845174291 720749602 190769869 877238028 891421593 924582874 566400522 622381985 684969475 881983572 315839499 227007668 966896660 58234055 600478391 255610472 899500069 136436296 198916679 121621623 697500811 845893543 195476024 919249913 547337203 596805575 119734528 986913328 272253784 760040387 800239432 170713696 995416221 991944056 15133411 183048427 471665221 53543161 742944684 518697255 466521226 124717754 595615791 237198581 129778259 114256157 340489680 845875206 81948138 653616430 455646558 50289738 305148232 589143551 843746934 146946734 543343920 89444029 307273154 862842876 65631060 249403182 712988585 771951935 105795040 354660180 335258015 852187634 515679806 799084027 464358601 877848877 441253331 793348342 987809666 397129354 874926011 77161734 584846232 896491901 64436718 911394747 654738453 568545831 973551235 101580537 691321324 429581792 746104001 803400980 74605014 118988636 439143644 890539902 19578557 592903561 880361281 985186780 86115857 415543583 282258555 716856279 716627694 913734201 156811706 764294311 33750987 320964853 630246301 945125381 617657423 293400663 50479604 746087810 837944319 178477239 248585193 589510848 511347903 941607924 87450800 689519690 972378992 77031825 454134335 227478607 543847907 537306612 499549501 370549028 723179636 23297570 711143584 439705960 667233965 769706085 702576483 496878129 140698586 468374113 191519829 452990560 233368849 968392787 760985313 726388449 585153470 620541910 710784155 703215662 393638477 211302286 835021561 962844807 730342656 24944443 464990487 745465932 113840832 968083140 933398225 119466911 90516955 701359330 101154973 48260131 327172356 324677481 348352327 354043614 909450066 307860746 616823460 153717747 958013542 184938208 99530898 77917703 584783604 716642243 265988471 819120179 880282233 216268046 22672670 177452577 476242655 668293070 627122918 301348054 469124556 370000139 30178216 489739812 580538153 783925718 375051643 18928483 206636270 629496319 830188687 965368270 684132105 901785138 650687299 944656253 373899497 112877419 434744392 199284003 423451726 990363337 988813232 996957526 249387125 220884169 543124829 524946939 688496739 128719392 858297547 802007492 500482873 932068764 802797475 207998399 985042406 664083044 261127529 284831618 329040540 970790790 538010637 348998806 273288614 833271539 804405991 746612186 514644371 207505277 77303977 942540846 743811128 164405142 970338999 576544622 273258239 596795477 199830695 935714085 582157571 843390569 110837054 673791352 215682120 425410283 866440365 303848043 837833250 62349391 678810237 753669513 52542009 539162410 617680819 219559207 668694848 221011653 752260734 931847019 931361099 175989565 441665052 264669163 818135416 945100484 823702860 733728388 481161810 997485842 320511477 68259044 721584433 197701826 766658189 981411090 931402400 511221417 635608579 940039400 150807182 432646985 422122648 189282497 204831913 805187125 575054106 228686785 472917963 262930017 303866917 926932566 297349756 697639503 400400355 546374389 887656145 380461086 912015506 952328511 927752640 910894324 134560050 204845225 587077401 13096774 506427487 716464171 513197148 891158237 981994042 560829643 782435536 123707369 587493882 551377578 591528891 44145165 987347390 742498350 256159471 358085092 192464196 934322781 202157638 266778012 207160686 850451288 524553833 482973215 679480786 943612400 15811395 506381779 661100979 858971849 93861644 912140320 547248072 902964361 109586907 272265839 603515350 857568160 96752968 16289641 192675437 557986348 122986706 102704708 685670683 315715272 197183296 287916377 905723694 739373382 897434363 362075466 318386263 943598406 570815111 94055772 132288802 839769642 723484690 964617535 915086085 249813654 669724301 493021091 288837330 524058263 322093586 255500834 610186891 299574771 919509310 840518655 208502158 360333199 769506077 141262100 476031135 667995380 948515819 53866554 387727248 525614551 233559853 100491915 479337578 6512955 273702011 383049123 20971099 786795024 324870901 211387016 220316658 513348217 948164337 977958653 479560191 433485551 680055142 379080109 716218632 290822174 476777065 801088890 945482545 630734184 987217393 313971318 931474571 745114471 178768037 302371637 900911810 356682791 65346519 620726520 239410665 530224853 314368235 157735145 349930758 740695485 853951778 197456198 758693857 291787432 588172573 635842637 485610851 303980923 583874107 672608750 803746088 358180371 974495848 851698264 927369970 493040946 60210828 98534778 353552943 456712217 68778231 539291712 862280670 783751295 655227033 79406470 548649547 229012399 203491566 937254032 914946364 641058199 893207729 328393848 995596112 976249551 528833742 965007376 44456783 781807454 381382868 481839952 987929558 618408912 627412007 45099223 573961349 566650299 673575423 709541465 99433963 817631392 68695691 760625570 302280921 749522892 180799813 698981228 603965506 50430968 127180222 456929518 280968538 504083374 843853547 247367745 547871606 794847840 65362629 207798457 326449433 146164336 999743152 550511929 586539633 574385508 83949934 678482101 606529717 620771937 592358912 352943482 740183473 63824080 694357442 73805703 126304795 536298792 992844057 946942118 600536191 58275111 18363353 883615502 73812452 259308711 971112926 765135806 811555108 397295654 668579921 727242058 718621298 754778364 497633037 878428795 496812528 115703984 257464073 222889647 258739354 100133088 517889325 809180990 822805007 31998352 178201833 272011733 152756405 349315212 358104953 172881675 296095590 9369146 428722434 470835255 863742557 808771813 492647607 318255164 170444045 618599893 97892946 640999144 316464508 937946825 590361890 347899408 823268163 646505230 336909893 379363173 890290241 675684211 401283352 42004859 584313255 303164895 600836985 108185455 335345928 116496047 566045936 585494731 357861385 45897782 556982980 858052631 299499131 649850420 843888666 98114405 477101841 95441733 423510651 658505166 362423849 940889088 422352308 831747948 248213360 580391153 387166462 785371810 430717571 166849355 275877319 183735435 554316314 762447917 253241653 835059119 910560308 171354557 434230671 937529463 673453145 293668260 424731010 751333649 660564496 912734450 189331851 391283377 754219015 84924446 387008248 457652675 814040341 408936339 798302854 309739664 765367074 776426504 170954712 411180679 608666707 661421742 843387388 779348403 887188280 885340313 907726857 426993947 50618618 415472190 559017520 164912958 105657296 129479200 136165011 562790543 713389936 606119018 514328545 772171357 797128151 991247974 452971587 666353660 552123787 283540986 811958975 217386354 143989516 805864067 443387545 157294568 673154660 946062878 163392215 59258063 740160383 11856472 543133155 265592466 279655780 690578 536804425 333158540 411109822 66417927 506018447 303966382 291350651 446888803 118251739 332626636 992369014 877086261 266156243 187494882 967143936 969976001 802202776 358610881 306516704 64138116 778552835 348831549 364357675 650888626 575445231 197337272 124264635 401777380 860120507 746244292 954227740 691946164 281434067 839931464 954710182 326300970 53388442 220189965 562703009 195628452 306766798 24114522 301621752 793053143 752779215 570704183 264038548 797163466 568838237 699857773 361522262 798894325 878203701 539321056 102453696 589347245 184643991 635594032 13945502 63047417 158398286 478292471 184639337 598386630 322434475 333580334 307861378 918201352 920764737 549931466 542801225 726004529 898131096 899400148 172753415 453506749 951788477 443892699 81628820 401193138 270329945 853202193 304731932 779995348 646018578 155928567 914928503 568076653 788463683 637305853 483781697 587762406 448643158 911172040 455858172 262612400 957057565 747809853 742667354 30996047 825622884 563666574 297026509 873836016 296550492 20278936 951320859 113446848 212300608 419993983 398170151 715746059 683686976 776415803 414402084 491327333 510087555 748992719 901328908 367413461 39652531 305202068 472547176 491995359 970217096 837451462 637918401 621869083 565708991 450570502 711820931 987374798 190399055 272838275 756011488 282065310 802516688 897778640 770900548 660841915 103712408 348788504 930711171 703317645 199913426 691982754 474094173 879657188 640844927 177435944 326706486 311741906 571235336 350986731 94124114 779319649 104613184 483528263 903294501 934368682 253006301 441177677 492351919 657695147 470115532 498126287 763960416 401007593 388009525 236075239 288836157 353754780 725372106 952357404 622503038 270497571 845100036 93068183 249348392 874918683 276474064 710694434 61575951 414946117 71215902 790185427 905613072 275225163 383763966 432009002 814247764 103993407 885113709 706389658 416187538 418028152 430428067 271058612 732444307 835071979 288303804 720324916 258608160 974725799 669509178 784703399 852358483 408619798 737448547 100841580 994659960 784362597 970219878 90550226 609807430 997224093 416294072 654931310 78984112 176961970 255782279 71920372 273339057 176891998 836629530 967327524 575816226 821258699 641101640 161410002 361558626 150687299 930928389 518457838 276194579 525158985 563689280 61622425 503265632 94567330 741347875 862454187 908406558 812949774 324712099 866795118 122235576 68800772 385257679 328956557 77296679 443914486 768064743 275601215 69468416 675015206 238143209 333718632 230462564 16399077 186293027 996795934 151362370 763897119 817200980 45050049 596380143 302189142 941907096 201231628 268838583 593968781 292177976 147091155 693333668 436424420 348180161 869319029 409082821 582337070 209228633 670744135 727365337 72558664 39718335 823256935 388627460 763564717 362522521 895079772 898041226 548170555 436130081 567066163 123501699 113515012 38905216 51150247 141821195 580587502 967060019 767087875 749928550 441360827 425201119 491561424 137171812 729430141 587680891 556496838 351761597 210989386 417161299 204369141 980397026 244401403 716505172 512447009 687770732 400609502 757490900 40640659 810190985 339553002 811834105 535578214 863247806 341245708 338335217 219572637 31529039 274072209 431296296 294439003 790849770 119888195 314494592 347314388 500458593 328606722 901312584 931654443 411999675 168303654 980353840 403108656 542148046 207508845 323371557 13883889 905019238 413126717 406273624 539840156 845363068 254335447 318553440 493798639 650222189 635378267 714168276 625212112 452788326 562627304 996681488 989960138 535554764 270669447 741435767 221292435 545464928 587527442 715429762 614885096 321155565 505975065 912549295 67445363 859159230 460313116 330943158 555019189 613273007 310806858 688662176 658867284 991933408 269550111 570555480 806219586 194705388 795898264 622033766 884504292 378724306 150445777 592416091 442094859 196722097 342505947 280541355 190851760 988004356 890208918 301640907 660985992 492636154 412036396 933267654 604919602 319882076 982301061 818591763 782028113 281183313 377282260 90178633 17855033 494135399 104082118 243233395 921607895 303433980 164467873 50838951 809728090 708929587 727915349 970037868 483714494 373658598 693214512 648422567 119920971 226163792 62056101 131811793 809551361 254189477 578302874 492792015 269399207 568910476 10119109 801169083 514642644 579522720 294312916 783696663 935047763 643249768 425612740 105606180 604621201 55663984 371514261 109939421 240945651 112668703 636059664 69732147 869587076 349025429 967504139 396288300 828075987 509468351 723164706 24527241 890783193 55675388 876383208 289707928 711224058 100717205 186501964 46425567 250363845 315907439 837277871 319317328 464754133 558104891 11847430 116509262 978335044 640507232 748579549 704502823 334099567 420121972 545514261 717014051 319533383 320982287 331642307 412279945 774453312 846685972 798693224 193061299 144114408 874745073 218130267 837164944 975120672 692966259 335869778 555670591 870298057 998072214 544136961 103596277 538793924 644648357 286177934 278819286 400623833 183318067 259358142 329624921 225827417 997799862 689420522 459243268 861889949 747768522 113523933 68261685 104759772 328059144 208281671 872046264 453148368 137254093 998028952 900854838 706125047 921481938 179068141 84611949 908894611 811183753 942498324 436226439 911221171 447281581 671093061 180379903 925466587 831208455 87913052 906936589 452171272 98730543 243492712 651398129 978200524 806889059 89319361 923241338 132565107 58996008 287853976 362929943 112241222 597194448 227902991 498726177 484215375 464233614 161297196 277091686 717551903 411346977 651667241 658375862 334289436 631479649 264232103 455382700 41953512 542463847 617534889 275672962 530122591 206337658 267218531 766837316 994435710 907126955 427052241 483366789 617929635 80891379 885785876 926210274 744097564 218967267 519615373 582403251 268812800 16117113 241210405 520442399 556190565 825580333 792391271 856412312 763923179 305640020 271864495 821232446 891212746 540981988 84575708 598260656 253158551 722435140 917709359 374252457 70293709 700907768 993819866 628014253 886178149 490102328 469611841 937304101 692777079 461277918 550752100 549962798 788506880 319119283 896157400 575093288 256055540 336795667 339423878 809599369 751480117 539905660 477928078 712489662 991046859 891258617 464364485 920868514 83839888 390855678 684962652 740133270 227160104 497284068 139124676 643165869 147633473 599258575 948369949 659957252 665264358 934025305 480194779 261434270 95946242 611835033 287097657 540682669 132379256 126194019 129573271 792601523 188168262 994823259 892471583 841468388 372564055 924696213 701905562 705591609 862671405 34948443 920246914 642272102 373858325 203302300 961308513 874349275 487887746 160386106 171559294 640315209 123622007 696927904 716164312 528324403 840384680 923404797 140173918 818590950 397509469 65901698 65481129 69367724 965288301 148783038 440561974 536158114 65639973 665192011 451986753 848560726 79724860 263600937 498048213 705215271 320764297 325567082 213564026 155353071 750564539 522126369 818779436 283235469 975824796 915084693 370996049 968623871 82168538 783955694 343917018 637856248 554603807 544414019 157944421 327736538 354113146 853043082 381723795 184768355 789200653 146073043 490807391 137853217 66355620 166358617 21423434 441787863 454903737 354512153 459112309 3422467 711212492 820708944 336417783 902164609 835245575 598224836 490440437 897774507 346326368 744125643 792072509 539012391 738966886 431345688 487521546 595708014 837303144 358963261 506125135 767258888 420591992 620235541 562419303 784293248 196496631 595314086 768391673 1574832 659237405 189790478 767442273 53014339 388985080 108312513 374490221 624297127 736087643 785057227 813137956 486446341 260696148 718779405 538324436 288940397 541747754 961975669 185407863 886687840 193917603 918015620 939911893 724205409 805233741 413105787 960987584 68996617 446415367 828171685 77504886 231500924 663666142 964364700 15508986 528019572 373456895 717685873 663175140 347318069 690524528 301023174 404150047 849293073 132305735 906170381 108295244 111969775 291237925 781485438 964688491 923052757 798911263 738981099 880248396 967791395 623104661 880316991 796754110 478148510 257858065 28723354 926266036 659792437 407886284 969348930 185442539 576369344 184651492 653168104 990733120 587558882 931231474 662457397 558749942 561262311 156269424 735011997 376683111 340517651 281295393 256813348 203975814 521840219 607373306 680823054 61060393 571845037 161002988 299643036 60946001 540546067 296219610 773224229 719936107 201023860 175434184 573204594 287907785 392695957 651029529 683049355 353418401 721909351 70296478 961759047 585485138 622009786 438558993 977545291 38954481 42283791 677823358 712139645 240808877 937770893 918980935 455261648 29399674 962596958 370826171 911354364 607868707 127896637 253643164 573721009 856363653 42788065 430770828 82993251 475227982 760354484 263161205 565336839 446499464 669602761 137274966 888943897 420636918 69582817 824045390 193330315 645743371 496353387 318865411 59514494 163311863 491396865 283228187 421980422 751392096 932042148 175383537 444848469 128916854 148847248 888633580 483501926 520959298 789735457 877323726 820078397 831291853 66704373 736865312 635118161 299189892 854607091 383872421 581528035 236886038 945478658 673008024 902739466 899136623 755554375 510722427 989635917 809577408 994709563 983944255 365795638 24159667 532451360 85344614 903629767 971057012 159327518 770003594 695567534 405557373 201303738 601315843 620708321 782073201 924282480 244653882 754566807 425365054 634423837 539050506 610236982 437524360 497325335 743930482 65337408 980371652 952606097 761786023 586712328 829717658 238091667 620418155 966333289 97052508 924556504 718971638 149801748 948949775 813591381 117375736 146327300 181056182 877729698 986189174 351213874 460311797 608623644 700718007 783888141 572246268 952404246 110783250 84077790 477301453 643221685 226777956 354984260 683371748 888128352 117625436 235110928 357321791 838816307 919365747 20861692 160426238 601979189 131488838 154432458 437881521 71728709 97269707 90145210 583369988 926221079 692062058 382889070 349991760 454256465 342802851 660234999 621553793 378612655 261958780 451617618 859444981 234404028 95008663 643699799 981375778 702458492 685565416 904312373 668338983 244008376 735340127 408098978 700729859 291068730 351518796 200738796 992655471 694486108 343706407 844935823 975587726 952664574 712684543 817586661 407012719 142226429 805330437 819821185 954165831 6083856 369196825 297192944 198575681 772728793 636766851 532843999 935156758 673623758 632480345 500507831 631167477 227664930 616176886 532952043 111837683 661855351 763775089 634458464 744605449 913529459 328951021 573050832 272246629 697218318 28438597 112538033 989156649 447129826 426240970 936364222 197287909 664750237 184760453 53213819 443857135 997643291 721177807 734432270 963759442 304353858 221754629 221148504 561522944 577911736 285010825 248006951 446082649 313053408 688528179 233251428 451707345 876048538 227745631 191141327 626996489 863544703 799275752 306051473 610705579 104294327 522449746 521152925 156292952 980632299 378453832 787719371 908225294 636688253 175869534 616050491 458959883 987118174 879172999 161387631 215888905 285236646 19589439 745036160 932012074 185161741 674985108 101509755 978152922 236163332 23452868 714015356 907727211 415719005 515762910 76006693 352486848 851906976 708840269 712809947 481479851 188184882 543064061 610270628 600230462 825369342 824580070 741510 186550841 872442410 578068920 471140903 654189291 51451199 210225009 29067208 770027690 366286532 219618351 979201258 334513299 640019582 940257143 129575359 566545861 124013939 23087880 67126021 988510326 526509909 790249495 641129925 159557801 410304599 960425072 55475045 935617358 874313869 891355770 401066959 184520867 887883 659552185 566179813 173147733 374017969 843336570 122801092 824489549 415890994 727190556 833000724 269368680 21964384 863649827 517035664 430957047 927412395 805918267 359422794 4763176 933883756 271323620 444249817 225402601 505516711 890340292 14439153 278259007 970316978 373440628 768201510 671642850 176640187 659440620 62113401 550481986 359359869 997602014 433394080 148257665 655906657 310103342 712357378 155290314 657157252 61470081 227584974 926752111 262918798 687833085 787985355 609192638 951243307 680864786 328894227 663197893 849863994 780890283 73832062 504765673 785781195 603961142 921540614 206381097 380463454 205275576 328589025 877311931 502089247 818456346 394961454 474525914 546423552 467992060 729513945 112526649 840771261 800922778 396230102 710898926 968577263 719595878 42971344 99244555 443178043 551670767 438020811 425820039 408344039 839550883 611866351 154419353 477205152 551930174 865920689 551565545 719854623 871797268 681154754 856576005 626257309 341565841 731659442 208494769 483960097 804640716 45335024 295991980 70947693 463442506 754329275 908354566 317501600 791590662 684786759 716895520 204861847 329454873 965338846 353441878 886946310 300664819 855459574 732594432 365447592 811305922 974103805 33089168 528036103 412560046 837679036 531036414 114182133 10458630 537466658 361555492 739093171 90814261 119782027 485880494 844296586 493896543 24818204 808505015 453642095 461891029 570315777 338055535 661406925 668071773 232688779 172791255 252450682 556371225 788409998 677810830 372451775 639987512 376195922 655019036 406506229 983502901 468707557 930164537 455313647 153720587 545072027 212932768 226924134 441383663 110909715 554964782 149221135 14703754 942503769 215589657 993724729 926822324 877083122 994088657 680643985 51702694 669399962 990197945 840202034 783119869 663783893 40174022 128709258 682579596 367764019 359914721 481700576 613527123 434892315 744577097 580182889 290607707 300882386 542742852 543803048 926165880 674148527 650070553 361436724 345969388 369063852 166271631 417646553 749362093 300985354 911182284 30331291 21948498 411895354 871971648 216072489 245207220 691910502 369690370 999221857 432208343 523739618 898776013 857789579 67055798 806666461 181753593 286936065 290660676 683541104 508433979 752050316 878489218 741122254 934725614 147537127 928779349 547787180 213190385 130811705 716603771 695068485 254219054 521091827 9977300 820933553 839090963 911112 265799836 612630701 726217452 741912817 707254915 330517820 3011429 247931586 589655985 176030010 967942426 747691648 651427295 164872865 374537574 127192516 36674106 77367398 70951457 560592287 843493102 414342772 543242342 741963212 701532079 941417977 211309231 965350511 271260661 21209260 387238732 571881953 296374420 129697834 129957764 101183530 476128370 775407587 355877470 951072571 826762501 157518337 385445407 673967614 81573286 366489795 855361104 1382140 131028225 471543553 903901411 373519688 390727776 334690636 383629084 194364942 819891335 864102249 541923124 88117325 806539667 239626959 590108626 493390007 195850069 782316083 123361988 58368758 318944743 667848681 144822522 868895541 810688114 300871657 820747868 768580044 252200645 535249131 692518316 190147545 294591736 278588758 143073576 810895231 506791272 36990907 936496555 624207947 891044513 474663688 289902355 328242514 44246899 184105719 855855481 240387592 212241774 701784466 130189741 420966489 13107274 849379645 178417462 176911088 980703496 264970174 561280674 892893263 712697718 148878981 739920835 241605222 813993285 95293608 967210874 210479675 650718001 955882977 193860775 378453789 78840519 284941532 494349378 807099803 808367671 286277591 827483998 702124277 498590704 36851086 189158123 229289421 395166280 252217122 125143608 592355815 495470169 202222334 15070186 765790774 542641993 540302227 645585972 138086120 514523523 653394336 205394102 266525225 195819683 835114531 497351230 768759829 233577002 310719728 21311231 317950904 61080870 137444400 254987863 925960972 32671446 789736563 658287852 870225377 856752792 629064736 187174441 922266084 489316005 547431845 185408846 223926671 440864751 83644339 194628618 205020445 439764219 700053243 126654680 539502909 245827168 922556738 75599387 993604733 945474077 801352307 513261706 471857282 655029687 550193871 102543687 105971927 796322857 739290945 338686255 561515631 629180243 872670851 95405127 258342070 699270704 562654890 978891962 878178709 188634334 145062273 953948690 390562498 551837715 27459051 766817321 978492848 981907610 197232551 667898113 629804286 453230538 302503737 683538902 830667473 291817613 621549729 951810598 596706127 244179300 489345949 32958655 365854161 774922095 408083391 18563972 457948726 485908169 852103858 465119978 663574848 350738642 501552065 5861868 315301186 722825169 201342169 205605915 94693656 546179172 236715770 785255740 309762629 191304365 59605300 876142486 138960783 904154070 607262816 97114387 74255619 634688542 588050357 585175745 232522405 124970183 263423145 878991513 695430986 953504689 30062840 4155829 394913994 945122965 465541649 662666803 562473642 371014079 286160300 469235315 698837742 749867662 549726559 239996732 360500137 26243635 981786463 725798153 256950829 941363297 347543206 744717627 908852917 367543955 27641997 177426872 885716684 896863530 634256309 84137204 44297951 476905196 556205726 803852450 774479943 537076184 525800061 96675108 257881001 451049130 411667001 619984647 484838325 197408159 378947262 589847756 244661922 329969383 359623782 973627372 598386091 259424393 930422101 588947661 571941235 391394891 736289232 234185965 507190218 52248603 942568516 162327493 632440238 514792106 936888452 548031889 602681070 300368765 974191291 425305057 281282095 811047984 13137615 771420252 372518494 320362750 142087525 259877765 844774735 414705234 779486463 683267384 924852287 391250540 645547984 468258930 850408097 159190270 150813330 568537160 347846571 235896492 592424 974419683 665095927 802664528 131320910 631641438 38617788 829172699 868824401 924897110 738878481 845663148 587126824 780038491 202355814 687364763 777473749 950762869 466850824 91585064 347147710 596174898 428986939 472607104 815096563 89012719 881210803 190438539 337067585 469990567 745058055 43076569 94836056 502933397 13031782 374615901 802846393 770234726 881121408 294437244 107740956 284330357 219061053 988120355 632921606 671022247 784426311 482079902 739603447 794712822 756824519 442151689 578756312 890025002 215755244 765083303 475547275 641388586 107391090 34775744 231858087 275297041 330674103 186731180 11178561 480690417 362227376 336822826 399223801 178373803 33694880 179138784 857115241 218921781 468325204 662409343 693692174 525325361 971883265 195116361 216795570 888579933 713221830 498018985 914610516 749971923 63108708 578353956 939551911 709196259 456065094 33691331 457178711 788499220 865489395 397561704 393312610 557315248 114753079 211633791 988980113 67209808 997548754 429928575 803066761 411779234 608551051 792068801 46214377 500548872 669276766 435519812 485070374 782392458 949071692 13978284 214230785 626899681 131619059 628352063 601194595 346421519 954912387 911442037 330125084 906148918 748261609 641390952 109743754 253836326 894796780 659154820 792981488 390823450 418175255 102729235 281862880 891343872 901199244 208875421 815818726 49138454 428017463 297604811 334220191 907158780 604969012 5793156 714215432 442479202 888393351 380186909 727903224 48572161 457921593 235335872 729648984 627159693 136411687 305832075 235339855 950246966 754270555 375285759 948955601 211456812 849928964 429622558 725983960 163295207 544896259 119576020 235402763 654574402 780442502 407619679 434219890 27560930 537142897 10547186 901029063 936328890 214523459 259004175 121859010 751793248 205067368 68286601 142426339 526475763 891704201 120912738 232961887 677596394 688927688 663477083 476080668 133681303 881984165 574529743 858054270 250193818 87691581 767626535 769904207 682569610 966703727 982477240 771236265 50962286 354879668 293194981 20137710 649621873 575038873 376123922 574733876 180677519 350452890 65216463 555667450 838106124 736578353 781368322 856617621 733126167 763738795 875975117 430349289 263080386 172333812 718865031 93051863 625685784 268476362 736732724 430462965 777482171 730338972 321848769 415339165 930462762 616793705 242255146 597707028 217866408 359110978 456429742 604271878 484161190 944211354 151922726 999764248 170223837 662251204 84045050 978570504 431415941 891951160 911925021 468424568 380391744 798363772 739223300 992385309 662144219 498864334 699394463 497591556 487955321 492457342 97103267 989166571 115038322 591532431 244303327 311509772 489719457 390649024 105305197 936807955 602669206 428644497 136900351 673880101 59062234 464286816 215420826 201078821 54986332 238371091 985655308 928958610 632306151 693055386 466580134 504537117 488344053 9293592 802568638 473750951 419785097 472969142 270583960 998951257 121083388 654801933 334016145 872247741 242210497 35530627 648615861 8512582 42763721 582849542 456192081 497347525 46986901 878833028 487767099 323234684 75857702 241064906 271520031 620560866 370670031 149175884 193419988 736174398 405662364 285548415 850103843 755927308 506219538 860351427 814029420 823652939 217499777 899052297 540706913 560918115 54591815 504546512 725065974 375558690 802062107 994411703 588835926 495719761 482028223 240905699 467758003 43654005 891435724 821917070 948051044 223918960 427084105 442201221 311908608 469320606 464571079 751974968 4603706 723123087 714913194 424378654 543646710 315059373 535361540 53798172 991977786 512716659 916600084 407254758 577773600 534334688 37508494 620401358 773956819 281179704 69501491 13094757 496944662 850327932 43883996 440996460 391854705 517731359 171337888 999205282 544698798 999856141 120421602 99874268 543309745 480207229 534014615 12224048 930750617 988345513 642879411 523847485 931579420 276754502 541742146 561351794 996733174 894729430 757755091 943514888 510686268 820342623 493269587 204329478 366906959 663133159 936749449 738214347 538023646 245921287 672042673 672505196 259527016 460880354 738839573 296025148 459540138 34756849 301386722 50596163 909981163 104932853 216810103 404619536 740096838 137449995 41668319 498064080 376490955 109176445 18814146 323457159 639333318 565538128 688732344 520606456 183934395 574563780 184140260 551731184 410907818 212762708 322003683 930473285 280231803 918509688 865802478 889841225 462004727 257147868 196298727 826471361 140449695 709699201 174880100 292503449 452936681 507083590 354391175 762169873 314072971 112822717 915097303 132136329 79818203 433123943 761308859 303459130 589313237 510324165 220886594 9167617 93633327 699467304 173299228 978512621 87830001 601656328 373257105 296152056 771343009 819340183 958291874 761721840 34539431 58747894 445080740 7515184 149465389 563816191 723212763 547242836 960900266 993773253 715707739 250005361 490139005 248285292 557436713 520119192 29025058 710852347 411538506 14289979 586969500 265603878 698701561 120730990 460836328 727055771 656830986 925713860 426630230 239551479 931940962 343873031 498149061 172913948 427718285 802472372 148953157 119994597 433493732 994536551 545839608 917830993 495796124 574202369 951013210 111549625 554726090 412745083 336863549 184412765 382088384 946679221 38357954 189183417 966932837 776939756 542314695 147227173 580025574 688095593 950348278 469407006 964485573 30575126 490164267 386153870 385691468 446513122 413080161 446408164 837513175 580073586 20706948 72278260 765772009 268939652 547351031 618102513 126956063 150742470 292313929 305982941 634565005 704580157 576250249 270461593 353072109 500246601 176157628 95194300 300401095 674341294 406384831 956588100 897865590 531496449 408338052 670350983 844378752 626910955 155890151 708058107 165480098 231488407 866735190 401786533 22948926 804359279 786595715 41283273 422090505 966037672 182544901 345384571 480372725 956217956 999659548 471188414 658171278 53091009 319968410 541520283 540388905 707389796 81157223 441738661 273865532 363511668 47010765 942998642 673266375 623546089 773611782 273970293 182608412 610148789 479100065 921783593 988640466 984775180 673067122 671721590 745747231 108961982 646571078 945643416 829147427 191204522 368384379 321944232 115159682 383546420 299579251 965883603 129235621 767503794 455470381 842020293 68715238 310197297 490901398 397619138 864018236 996768010 377002815 778433120 136144350 982980849 523053834 426202101 837462193 589577894 574453654 210958698 76298670 230336415 571013387 822127939 776583410 502900359 821778845 95597496 842304177 585981660 706640488 701593878 252731282 662416888 603494066 810198854 804301119 110320858 402182673 694306794 860438265 78149291 447508721 954561103 807167407 385789913 218849062 83968430 28693616 849287626 219166499 313350797 749731844 212221303 10248933 721164758 463178209 787510262 787774825 934290215 600509725 178546819 285171493 815885718 421979479 654205643 512832876 398908502 872339423 384938733 633314018 786815703 958905204 74210621 96811948 813916982 65648573 635510633 458939973 134094244 546999785 955679711 329014804 555246852 238607103 159552084 917588286 810167223 721947374 962585227 392700346 329799878 633805032 612585026 808758818 713477020 745369840 253598648 34376217 377454118 77740000 34512921 959648522 864700679 938110699 843480067 263654164 432322622 216861211 624222636 476345682 858542632 352906289 231034589 899150539 732372638 614644128 128219870 804158027 329354187 863423676 633408378 362999361 60228245 913866570 780112710 280972909 776832689 828771128 989716098 203362878 7656947 558687155 433515360 9254136 272874185 275022044 726821871 141462136 121596694 8231018 117992683 809580583 438556697 221426790 415850902 310667174 158140458 42142769 935721289 291610953 393020941 601941906 611321309 941514521 958145775 513755926 185074831 392298269 409296304 187568130 70853171 414847685 75433163 416444569 822345223 569217428 20754990 655075453 661242177 416562295 742134096 819624810 317352364 67451051 708371881 124447055 656240447 347767604 442936825 660241236 299551016 19755815 981093652 140327364 940632196 927361500 311631817 213940765 653316438 747467680 511298607 474599123 451653454 297081635 56275877 872454474 33081286 183190621 736905827 131106992 649760785 222314313 727832853 632177605 840058330 539685572 892160848 40682853 48224221 477053363 152334769 643274487 722436755 963485098 965048731 810651887 283569176 87484709 890273635 593225278 651483973 246175606 313173641 54358423 928456657 500181493 776605915 575885128 201637267 875526381 616462844 555306420 106350334 976231832 79208498 189989070 794325786 467494070 298348917 322445580 52180699 162496564 683055193 301338541 315605559 782386649 532400725 702182205 484595474 349459311 445102241 532257088 189994785 315700501 516890919 822875150 228539486 324378562 787483219 204949067 640697428 374693157 285389374 890928305 766825500 678783910 929552283 396741479 991652449 877023222 184595415 60125743 445896098 997698460 896916045 264998233 553451832 925924881 737096192 508520587 123839306 856567525 401064858 612954257 624798391 544465341 385034999 651023088 626682517 415683898 536417438 690929927 105480705 625180963 137977557 285821090 977382615 150660531 328856760 90024272 557990370 800364725 49867732 319755729 512126866 663625173 360626038 655048639 270615462 869484800 548157476 852032808 396345877 121470032 405956383 588597266 842609334 197635494 789211813 59436851 408873444 483859366 52475963 44518274 31455830 295217989 948293557 348719643 911306514 321827402 312913917 703062646 732297175 666951647 309817217 94928979 908287301 470305084 823584975 646137795 356771849 479801403 764754585 125684929 639014263 966122442 838975971 957574674 728700891 64652302 83599689 686413644 944053646 470360996 394779641 964641449 857397789 10483948 633080040 323766195 887939567 791727726 350243371 611610501 681225244 702625054 324030097 447032379 312692361 584826320 828141028 134112400 373798464 971354357 175969610 309635248 65691927 728971953 154295766 55471699 105376140 360748188 97158368 470497122 583602174 813520530 222327368 596802333 89533038 932509685 322544198 563987 338498041 853574907 652502625 107115621 493332864 694691220 544777914 842792871 136732633 166237010 387581008 646943665 362135577 504141098 856354764 394834083 851553547 376573581 927387208 589252914 20469525 803730628 138104642 875098404 456911413 992396333 763326576 268993440 840480172 224968288 265342407 405223884 376759933 219406628 961641209 363147113 401456488 839452926 512204880 897206555 72752969 816528722 377968149 422739447 241111168 677605431 488234108 421707921 884474028 202306166 2612126 89643205 313493736 893450472 628552489 93615145 995395477 788352103 215385047 319334105 224740992 958681406 533158971 23076380 509766855 21019356 88664238 307346948 711178766 295595020 821072800 17050686 151132955 973862235 151239597 57112821 163163307 577877232 688893705 62062029 212116004 311116145 854185965 747336379 751755522 331715164 196724393 729614282 888495133 406112192 143778400 638281247 238229543 427403892 913009771 765915846 187795504 935799161 414279955 349449212 584456186 308232812 183019090 121186602 247249073 146906302 921985446 371691849 527221188 184918320 919205791 260576361 38319895 215585073 711087112 414482713 379239964 598606627 42249691 649839874 544098376 944098865 34773341 737592570 819634195 468277580 192165867 574270799 403938544 904126215 976422141 954575507 730089851 598956827 415402344 682693649 987970522 891443198 129980742 671821742 461642128 90307198 578699741 930540598 493695126 848589470 634892117 900760084 766092338 910631713 876040934 404117250 651690990 458250969 977235372 813050695 103121643 92401851 6238688 930239725 476060655 696644371 950887191 495464696 306361226 567547106 603805145 728351501 811981993 698721988 491892851 29041608 76660442 442338010 101820594 51130057 560062398 10899714 27722143 251157413 917816699 215875242 811302379 115755284 43532673 287066036 448547911 790420079 932909988 586995102 637383978 964617194 62828360 455170394 444714693 537405792 471995856 404158959 645243984 608163767 808870422 915549211 273629967 172746840 85501599 410515336 917690153 236921601 987911776 988134396 408365379 739868898 820075545 868679920 755765218 470045915 287038071 924704305 87564602 600335458 232426224 924024252 133674915 759983994 795842157 367574882 585768246 931051053 420416008 807304268 244907605 940472088 750167859 437413725 300228733 446391960 174930483 484646969 435079771 136024127 327829148 70708781 238593573 224581130 865914470 120076059 206866647 168731504 916972380 402593473 783831870 277661933 584939791 2568251 454861207 845108634 975600154 360083715 317801797 934779686 5911536 466490040 809770530 385106848 360537339 329493032 57117005 766612624 326880368 640764568 124492882 648324532 76741172 222292511 689613645 534292578 52676987 607344784 502339881 802416194 847851662 352569845 430402426 117177888 983939578 336922781 340879396 717604741 855527512 77584216 156150996 374818163 232062710 868509907 822164073 335359194 192840554 506528966 883880935 121293123 879935272 388902155 150920414 459901858 111353329 807823978 939906413 297336479 577546924 541549648 435294901 434908578 237806099 960303523 20428511 251558795 501072089 179053580 976520281 2135457 572570342 632907550 369769144 758464188 493196504 684187478 788810535 130869679 648184953 628546429 587287591 176398801 591108057 202894355 686562729 556521419 286141713 624431992 258790106 598325975 688027282 843871592 96756342 474592010 756001421 30627244 640540647 985953843 922386885 865811269 717843417 981954267 729531533 667553950 399459198 747282308 886733216 805261888 121148762 361198692 471812345 886216841 528317888 134743574 574375619 622908749 3340791 863741868 563761810 771618545 158004718 994174297 626431081 835905332 515912222 191453449 599768687 187056668 739318572 8516308 983842253 289865384 231172812 374494993 154788484 628096400 516130382 451265986 367098517 680335744 862788348 427563058 300615837 915587467 324555518 621059964 504700163 162874272 343007992 486271559 194496674 285385187 600759520 801627960 421348788 723990419 409820554 474634572 504122137 616843130 311408647 430311940 95557424 524511658 525618557 181685563 91261054 146109620 330142333 111846285 379708683 980488421 771828688 67348939 473179687 685959548 720627229 142019655 717636717 380404077 543806931 975033528 479613545 707382482 393062857 631860604 642404657 57067737 432679703 224643323 409459632 11343799 569211006 116044726 720745207 628238124 666457712 919509305 135717964 575412766 503130835 837350281 724197828 560770203 66249640 922151629 278192953 630973743 578142826 388081814 566177241 246321285 743743302 503571591 60485252 664387010 464421459 4373722 772346428 92903391 445201546 198609502 572440443 161068353 141300272 483604592 20595675 811420317 771406805 290449484 785622207 186006070 496809365 968367164 744678188 878712881 530323747 492545547 739389202 86526718 836681785 793675097 456769862 81188974 339097381 847182505 123139812 976126847 494312253 915682798 763844416 612834081 668780291 687633422 152615722 754076355 342721062 376864593 131632757 197180554 319150432 310940154 32505725 668228038 776847038 685598034 993094189 148057999 214475121 605181926 659021348 656745724 910836743 849554298 714124833 309744943 289049681 577424358 507164662 839536217 256982679 535677782 890258724 769675988 153927552 166092653 723261897 561860564 927477653 138870284 419165690 34507565 433537283 635126608 718438911 298667805 806575825 372484621 540763202 661764411 712483264 577681345 449868330 368687673 735798900 150046692 242152363 538844428 454367420 842445974 942383420 765671219 450767822 757018203 732453201 707237683 161820561 468028124 579901136 245189123 146642409 445373269 565955704 269425147 575675638 275624307 284690776 905530324 737662675 298774508 68803299 777449564 709557595 472277927 613060330 982447421 16358735 306246497 154953160 386197011 456601069 398969536 299604639 691728665 316319150 890505511 398753393 168836951 84294260 899916583 887569233 371597408 220375066 410277983 820147316 418247877 785749226 134094692 838239276 284577555 383149267 487362398 436912454 843531801 253182609 545048503 439671265 1917296 782207437 558851449 700041832 287330607 529582142 354503249 320417025 280127983 643435529 917991462 720814670 53728419 335748591 604052744 725800472 452764601 504461775 443617562 978457789 316995592 289042031 517436420 111164082 625539000 539133618 657817832 667307279 456895602 600803252 293984425 990730208 830914966 38840401 223409700 961140967 835306247 813990775 848398373 440303243 275400020 392984541 759455646 200421716 879722939 356743820 416556369 700971036 879915718 988929922 258981612 943389891 856178018 735635600 868180490 131868978 624063293 990273097 918092116 951093309 739955032 936568940 475849339 324390980 477049212 966576189 96814566 745873793 335849431 385381422 623792890 557775638 79933112 221077355 14832746 770443490 609483931 956677923 321191638 104361326 965583782 609588665 154910805 167231833 766069896 257010823 296277550 848174936 131531642 81839761 677751213 222929212 186233680 170621644 793276544 370026311 258179726 730932312 377096642 386927255 347560695 440809173 710296528 266140964 414703795 700425114 604528428 367856663 734230550 115828599 134327854 202944051 355914704 119960509 97868183 505978713 863170816 866914861 792362870 512616883 344308220 663934690 758887173 366733158 858370160 446664244 777452359 82293765 732834566 316593196 174242287 21229832 591057595 234794666 318988349 422862803 314958711 769200600 476964187 225716569 226735648 335085293 50165539 974466673 677321439 457768329 287866363 489026574 179219187 880548242 99902158 554489305 206076304 591478516 883385221 410521718 166829281 3361572 788977177 848383469 206856909 914830433 217584074 128286574 391915757 723284212 818453561 577111514 881618033 127386975 946039350 986536034 569010636 815433790 664259881 711908138 35627416 634994953 126628341 778505978 650469353 540586233 986734184 543413659 55948854 607703857 178236375 860577844 43023577 543523708 966156266 416493668 675719834 760214087 729258158 529280851 912141343 287954227 197843305 739726624 544763008 385497351 385338715 200075749 596528014 119455121 975866838 181740463 105573590 497794979 79963265 323382502 45636118 342101905 604127003 699006202 443627273 242958174 388073812 54164158 306881811 48449156 298024864 91167607 387521862 786378886 747487917 241355520 167343877 576548936 179329001 64211565 664422607 275946487 868927171 487461485 120818390 551112455 78352948 815205510 382565890 846049711 125804416 402038324 436201785 526645554 341863565 151042229 853021215 40093496 585190988 950971028 125752185 852670926 740135667 363879023 313239367 767801920 555892895 7687067 469941764 463258277 831680856 801052407 175028143 926298336 3683236 803255017 498303797 925561875 742305582 536215914 336494845 302875393 797604374 124790545 795566113 443980840 575992088 953171860 442983764 901532106 304531541 119505293 60239573 59700155 279718712 847482292 461927458 60999100 156875363 22174456 970894053 148230997 162569236 687897840 9640213 791887856 482460959 573658233 211193991 118193980 928181356 727653952 862036294 249866790 860383834 33315124 490634794 653387719 68408429 620102706 140008596 285182636 719340942 793810489 757027030 387969508 952303991 688414570 651300911 701723148 222579605 125143927 813773660 352506247 360496912 468570830 769589275 215345204 625493455 288750557 452354306 177748191 239001180 461014701 277624631 137844245 9471322 346607848 938739407 484444987 686890601 936795934 42273576 892429385 648443536 638639672 443359670 392411885 782788479 470053341 365958046 950594214 708203907 714897427 162740617 844277029 930844017 228594940 669650052 634730915 227188467 676092841 571687155 428114310 162713354 920250230 346723265 901154476 960649696 286130154 891594061 443568676 676914169 359096514 669806744 40165009 371556710 506167780 536101904 205392883 634336669 212288223 615671234 347561791 874183509 261549046 104808035 238620604 473896396 79089001 944399310 860515674 931679576 600562468 795960663 68541610 770807257 649922263 602122352 224200826 17669410 754790012 414328694 858309719 436378936 664632791 216942962 196362847 22851904 419257088 884415824 984158447 931237596 367913638 437817574 383286425 131087080 197216051 890843292 771805736 547273318 784285620 924566421 174884644 906572994 939531504 805269680 990797382 64860964 957846198 551866545 286753545 280034460 82620897 281093867 259986728 549606896 360607357 606252063 148690003 892796461 923621336 550020250 205923821 330434193 279324954 914955239 227723944 430472770 811438640 471382452 668912030 163161561 251281127 934018832 495050548 194534047 205860566 771875181 433120949 271859315 958398358 978591864 302043472 356882911 218654217 699142764 822539033 80495846 761744903 931976746 441421001 402739414 452753015 925046645 902892601 868737560 6475539 651645851 108283367 47536694 691282926 891333230 501997876 803936319 183222468 71471777 201574501 978654598 92997910 102511688 537462347 418930981 568762339 962861409 956487138 510673053 866659517 720576404 393814570 450618172 889184238 598816003 617885915 528465545 990343764 20282580 126456811 240057630 655422323 205547721 218897031 816641371 599521052 53971718 845695762 289028150 873322294 140895536 326779229 626407931 998115817 968172782 945917531 404998297 180633013 956399877 537184106 483862517 309633802 185076580 454442622 17718151 892421556 650999610 610038957 928372801 38553431 845082892 802776846 2278689 871325969 556973523 918388761 469416468 536818611 844123929 965577176 724716754 68354283 649041808 40777675 233038624 435237675 630163768 358107180 321945364 743957839 521278766 406457010 165503721 802064728 253538529 893270263 199439417 927097900 436356508 254871640 85352723 599298733 401426626 388905000 401861554 629009303 365780150 199518842 816393335 456938881 791693013 345046980 301834588 170865321 378406806 661723398 250548189 690926745 12993045 220634065 838782823 897336908 549813594 316812225 838294910 686541086 386836729 873656982 890419357 168666786 716878680 236488258 662565633 257008798 869162099 27379444 512391907 893087690 977582332 51212079 423019378 251072385 377023398 499558628 427683641 310070944 596285836 881254838 760052913 674472274 23861838 613013664 39064460 199710264 317058773 239276515 65200621 901475732 997089724 921877607 119519366 885200766 539409612 802759739 261574117 323040095 800744023 284846257 535875975 844384631 375625005 191368747 316877233 630215717 504553936 771194414 469243675 543856019 466874054 702044465 672489299 633095765 739298111 980204085 108010834 398092304 741193115 733138317 91762592 283501036 178404173 692935799 960623133 627969180 459330613 745229912 667700424 581953614 759418887 385651487 838256689 881622685 810418235 250884998 110677984 10392750 786556029 900574908 272635140 15313285 992103281 518940035 428727691 377002439 144897928 621045968 356254049 779236404 655368248 408115236 957065841 417763565 159136376 265921043 285964862 804166015 369242062 855475197 960294140 188304158 611788651 708425688 511075479 452288726 339012761 999296184 540612482 638712535 982861018 479799562 475692622 851922703 794853167 533401286 178266127 67519716 584278456 752418804 146065315 536412262 783165206 224012249 215156558 372222137 891584769 996915945 6788957 249404358 160218372 931985755 29553880 667062252 558818504 829524674 633212891 732148463 739543766 315000234 793789324 337944375 916218558 785585386 621771830 542574066 164384070 235863261 421572913 857622446 484077882 558263092 146661740 488543022 535043455 567369949 580271595 977812796 164405811 110744944 436460934 516441366 63567004 140161498 68492516 388648026 711197646 329029216 342387714 355723548 955265252 323123958 65111849 671488953 944771933 462496389 105039208 515071232 960358035 996860339 248806971 827100877 462601180 264194843 368808941 423066704 102412999 436249549 77664801 573137591 322501626 300877995 510312074 275783725 940833273 208685726 283694692 397940019 764412990 78207452 591290432 417260304 490987228 213708700 540610920 613828452 592058548 178664543 373148700 596886886 224915540 818143693 851381159 503707063 12472941 666709795 495236842 765357190 108070196 167042080 744210993 790198110 633822002 305589370 855723079 440450271 915942781 362388413 601904240 118165909 945564763 441699891 986044786 220335015 462796649 246739628 507778590 674074872 454954995 602350022 72635714 470928032 572367413 506191319 742644444 820964665 620232443 561745954 541566878 904193118 335412308 361374006 767188105 439430575 917196130 321940264 137567241 489762166 631207118 222507761 583984656 739885959 41167973 231654508 475590158 106806769 961498533 661774189 825053000 232596846 183368163 942814351 203372163 779342259 381171594 188353273 930927827 30974615 434685795 228877694 966651284 845375858 908120111 52230788 145814881 139865673 551823188 315622480 807337322 364486624 183977352 540482509 4611799 665474166 111567127 375497104 97921130 710215318 130910653 321523121 321424159 634654489 944359109 166902405 337691487 235339863 712036433 361608001 375918754 42448598 873635204 866225943 725998560 798919569 789902113 672766167 814828929 691391478 58104475 259140814 926828038 245808050 745472768 844128080 635111177 256283644 412146685 678856880 162106624 361341987 204406633 11536274 471987098 785679379 301753882 396709837 808135520 412689916 782469106 324086977 120878453 222832505 315108711 888696716 843864664 299942856 400717891 802705083 928299178 670137740 271586278 742875072 644566241 885250197 589246587 906374621 561616259 490842006 303010722 55678889 525926172 232943910 545049066 634648953 915336514 314583097 537395563 510893274 869225691 934207926 223994234 233546889 715508524 264207941 855052800 921678434 856023214 272217086 455756156 638212728 486884553 955930683 709233957 981161257 588983630 499983660 775720669 851336701 99710348 215731946 636897411 813031175 595820391 987338105 217824518 735627017 560412394 427273772 975817589 652736731 724596890 208488581 263296149 225050513 51171175 240864064 840501324 582386630 25795185 974783839 792568817 981694383 968178474 30387442 778866011 898717876 924674509 183254347 597730425 876580804 834394185 322858773 505264011 155456261 288203565 493363382 435708961 154567906 804333872 222634310 941220844 784360970 985979491 907952673 354154222 689554457 843405813 412349953 148089439 211049156 808615074 818724384 172891414 745079057 472806692 118058431 595639129 509687840 453242661 193256929 542991665 304655726 585904835 929745875 89169012 93386199 561199227 195033418 746333825 113874240 480393245 255519444 999071528 393016048 172770609 262544328 557579035 977757048 18650013 304001194 581326600 138376077 528085915 494864817 586839389 491961954 974959229 558418884 732234071 780626225 421250914 461904949 182744539 457495729 698039716 795952754 100795808 929304790 271352191 73712378 760383302 124140500 272327543 969511216 608985393 360908999 353205472 24551552 695224879 122107468 85578263 340129048 430454297 106743644 611424010 371495986 621885950 167554404 399757637 586700727 264125106 806128731 990453418 551698444 315653820 100284712 803497911 67578183 273315976 156221137 588766254 688286294 905752766 138368681 781650183 832824220 817361345 854199656 273244942 241168795 905163040 890251012 806420805 781269871 150338674 50405883 828356682 373738758 673247618 875862011 883471784 834148310 922643853 429244824 547523903 158499474 424383774 341748128 402778395 577749737 115034263 290699549 387907535 240646125 690861337 989635445 276414554 959875387 896919315 197502413 826893888 120853835 65336822 839123121 608293010 313255830 415827001 308141080 79102211 101517718 430612433 252901088 253752999 420844521 888650525 218887843 869095523 482196754 396889600 427336844 492101508 265918822 949038238 492914127 136577677 689729319 598472188 477956227 548066143 300541787 815326791 58375791 716853865 406760366 332544125 221810791 695933531 668495251 139364386 484998099 361991599 379635977 31495892 802896710 650213457 492869519 560900446 375071393 119825349 567474157 474442260 539798551 134324116 682312660 373217360 750333917 833388316 307999938 936814019 456165108 233704336 774460085 221391568 263245274 205043598 194321926 935292397 853272539 611132641 504951872 954334343 162382485 153201408 215819895 54717268 458371485 664127125 377482684 947391508 343664923 510297436 989229851 915043467 779428963 269043542 116443075 613125507 906572830 594738729 994555216 442723314 224045858 760109269 175718025 10708717 352526512 395142019 816527982 554198375 702317145 908747288 682513136 584285932 256850977 628882604 460726226 357944540 269718380 373178120 492227826 640534495 389680326 252498326 769471968 956774443 114714864 560149656 338078900 512417842 890410665 328291707 843934639 505187485 613200321 424904830 216633054 420604348 418935559 345869634 725006195 169128890 167689332 220573791 626982167 418785709 779910492 778747199 929172211 354338724 77419175 973867237 608248196 792682156 340939975 442789377 439535656 189335524 28072111 594671586 843699550 552649142 758266182 116597824 548557953 338079187 721660942 567685590 793766124 882591896 759914547 359812460 964861481 486443815 519321440 895645480 813997324 691660332 4579543 609150108 564866850 82407951 623667664 75487037 907531903 973725388 876796538 489890117 922249710 39398287 472215574 637780899 343659170 418504496 210931890 647201609 756340107 194594378 557367711 696620800 373560997 710900511 101713490 614961644 542643658 881349914 166044811 707319614 449434462 565584115 639065998 33102863 438490958 331029360 817126135 735439186 978663329 962906866 550007123 889823660 805717880 123219723 267927704 227367369 246542453 621692889 339223832 700650948 711027020 939959308 465112271 604143857 75302817 911932645 987562595 184618186 533389983 98864896 676702831 485487970 865234289 218245450 669430311 40393391 721518084 833034290 882549876 863338962 886994427 76582644 962255856 208163442 418425708 103334293 144145235 654061239 220306234 519200739 51305686 64019703 980276127 412015057 837072458 58211736 834084460 8857665 28247908 64076053 689526004 598854751 269793188 282971425 615687531 94189292 620593881 877191682 247553442 716707654 692033070 287068648 499783529 106732684 787837848 669731098 951857690 651475989 580042945 572718907 111387210 650824386 521786477 796250750 39833565 631882719 395367997 553847229 81572338 768723811 71996698 563030866 34333902 836820546 815612387 510214603 729156095 815223430 209994781 830099601 686253977 375493856 238911503 300126435 133264345 75483180 237175378 509818150 389462291 149488268 259363006 32696186 744347445 231339028 890880615 351048449 135934946 910985225 450580961 134309563 926539266 209657588 102581941 348502380 222676528 630811605 616294708 597670299 254817847 843850177 259592186 889707559 343504644 429781394 113132067 380784166 57568977 245839272 245970961 348784036 237255406 158436009 166537294 540647154 477679301 715590987 608004475 193797579 269253630 349293327 264126260 107346244 733452598 991361421 816908520 141684936 538036418 872538712 769658868 619614476 58945985 603759466 342046663 982248284 681230071 626094749 314671190 923444343 890961842 345872069 288973309 155310383 847261565 495116529 297356875 970628212 518901270 559983965 494660371 992611416 490323578 458213195 336347998 445468403 734367069 804641672 565582236 283545573 708344117 681566081 960048187 467425090 99230367 303092544 994680129 175521646 219114384 432128461 315799475 289777456 67337518 727161470 242099880 185233539 729515201 721623321 208826341 636581246 146765401 797147260 794019905 26823001 129620943 463696861 308693787 998168271 731542031 642437535 191600611 594803188 671126685 803256864 833740505 492568208 361214905 730789919 827470104 788739021 339258273 21164908 144500360 698355716 89973685 122783678 210094213 918806946 562372406 774684197 677940835 718088428 473033330 218175131 149741764 171388946 215519276 505061079 356520399 489271294 700074086 53360815 24336222 100077417 898396512 765013597 914953590 562241551 518894198 413684962 150370085 503794366 562485412 118655253 867836904 84840026 970567628 549498041 214091431 530047545 428854755 616780431 849092440 985426390 559872520 161645120 767382847 253904722 998225523 551264146 144957272 846900996 320373685 798289885 199637162 284367639 81545473 494003421 403503881 192764177 478906119 555447372 832676243 985772959 474069438 495531349 758115889 954869936 909785663 767202497 106194503 921445263 964531678 820676239 442445887 846758107 813934146 247359359 636796216 657249728 675471343 316660119 813579542 468276594 934660338 409829128 356345083 640947042 114379769 791136717 973783144 988356105 69171076 446540983 283074052 710443378 806956710 169202127 701208876 732826124 565617570 16864472 963144628 265940214 967797240 239224447 412746269 458565125 281005829 467952402 126059824 429073893 333272075 421959105 307746789 715612652 606580572 658030259 657604603 136840026 231684314 770122048 285850861 803345624 15600762 95168407 152236346 314787002 101047619 829060658 743828837 874408922 667399152 220241704 810760334 500044666 362918620 91464611 908053675 917876222 577634433 707191198 663185461 807154041 443568467 827535633 153148050 569264305 933822963 915954401 693415057 105169399 262017990 215332847 845716062 811676305 400963142 210581617 363527721 360768393 590492802 148514713 878156754 225313931 704554521 701294170 13114822 753490922 200933026 415191890 583772837 54272710 522918602 837516904 667052478 219180437 931223226 629408307 256231173 810305236 84280750 632973729 276721510 789177371 985175844 259429590 867694814 599918733 931655353 607615789 109601979 545362015 897843955 444595184 530378484 572790598 344476094 959625488 448286019 192510002 72111723 661938676 681113212 743172908 164229111 295496551 227454667 97033495 204692572 885054590 43470577 501424617 244994204 737804482 838370608 404396177 327943003 706561836 104291701 810520498 985513823 742210059 116055241 306139398 938510715 125543472 312002458 855285435 770749701 574506465 411272734 918749436 204689885 804374988 505749902 829931753 148985702 375245142 515735275 54755202 640853213 117449211 236343624 969319663 513092671 359495241 342701550 495755719 395747788 195162297 610046866 570037867 427486758 113368978 788383691 909346158 119917888 56253684 928306449 777952325 726461687 837241509 878412216 687921637 846772577 154949736 942822514 74110592 153654044 104444611 487913857 578117999 668843461 518207454 29570586 170151467 860822998 588735267 360670401 852453417 631699733 677879100 83262843 737302833 506610392 339943544 45966242 766909768 584625503 888391467 79442618 920065979 782290413 617157970 702410226 172938465 333137774 560531693 681568579 851064546 976086819 854834931 626545770 53408058 978776159 461744953 481203212 765112080 299454952 61088280 505480157 406176735 959150731 802554346 364320719 774744860 687179523 320038539 456112019 263860481 710858915 714776896 438821940 603272532 535829396 474350810 473943252 12526402 860331770 908836035 799885680 419462158 374725402 180632100 663889414 681432089 761944357 582540547 949684326 592313333 449943230 825385889 719611075 839683631 906763147 395386571 310081521 49833228 434660749 305055659 208844642 479745998 862659400 205292133 603496223 39445965 337317794 860144002 964357524 525362405 738103088 987672494 546990956 728213478 625847137 899805188 660238808 800045440 621566574 973722958 269211515 505867411 373978210 621374465 736789941 866346494 946079955 559677890 204893041 990281283 186805314 454999517 128928153 66558466 913261059 860433930 212111377 232840113 94027426 477974576 772589752 191883741 41637173 668638568 130573497 747147810 642657430 939363087 520155787 736026271 64001674 774077013 671040310 495829914 842177202 122885761 317823296 248065302 723972150 266894416 108875481 9554426 336536935 71278387 618158016 352368237 174210381 250012472 670259604 570096157 920000920 470505989 507536649 986594327 119962641 577087456 784983400 228937562 370488479 707499770 871763806 545449297 617767432 807734366 244114979 196683532 124843637 704075109 302725105 745025455 730948497 955716418 729697041 582601266 979470548 790073826 404026525 120195948 955686419 419765568 321347637 111136084 130183824 260602669 592543188 912192599 997982159 480465323 113317276 219358615 85143130 361761108 424067915 910892122 953218576 419163228 282670066 845377473 362225512 118260106 599388258 44151687 731532916 827538854 724719594 798380893 78230814 611349728 821630199 32933804 482449050 708685852 840665379 179081445 763073242 252696805 644993174 494582283 284262854 156449244 100905702 316611448 588231995 858707355 977492432 949903512 708410039 600655166 477778120 497354610 655060411 584328458 556454606 740021862 337685463 889399877 488569598 736646245 957426861 214299596 167583339 861249038 297711453 580507274 257709381 649716035 481751780 371636095 863897724 560709906 143593171 470408587 216008711 212638605 241050207 979779378 219177605 80765666 996800474 697576410 606894167 278574198 437850496 352328649 44082590 993446861 160762288 306841523 15077820 883523238 337217033 754457309 110387747 897024118 231187474 553141181 105780231 733020751 222934333 407333495 277011459 474716516 42416262 557959066 307149450 63310373 767690576 97704549 99183460 357163005 294081750 724966011 657943280 710310957 536773781 295230528 954317874 253055587 888595835 914062090 186654300 806984413 476861608 505849752 888956196 987601674 880945593 157796735 335161938 275948987 618199524 515365431 124134583 753521810 443253581 285244323 778019545 203343799 541329334 302321613 573534710 691726161 336452573 367771941 197137950 853994290 284974326 788651377 218901790 465227694 317771626 725162388 248044777 714001801 343035510 877348640 636657126 286160222 112016914 534463600 429298824 36035032 450515644 543966779 599803245 269057024 702032716 294025387 732708396 399939392 913152791 119429191 500707686 716661455 32590366 556125127 154750781 652557292 29726660 736270134 577178056 339632384 389819686 369280024 617386665 462578516 943463035 688462822 258401105 453380407 937000340 673481236 261412326 641191853 835545720 722120345 584985949 307343391 713931362 307069954 393139040 203545144 930450889 151537461 463529843 422961536 690371454 925301881 471501824 341484020 428368451 688745332 558245425 821062091 945913724 404690490 291575478 810146504 643518950 90956856 32185256 648979558 419956324 68609084 689444311 854215501 11986622 203601667 821655625 575772140 853137222 800262471 211914258 473226028 271688396 395605312 772739188 105801723 490681727 943627138 854693100 224367719 679979186 892579088 988285425 741526012 166957374 209376265 737635718 56525098 77863041 967044493 582237032 622066295 337606426 134546207 718555069 256707425 825373912 693516991 962788481 433613043 340274479 357890372 20761965 24702450 495203313 470217087 476926572 636048808 494165256 457717657 402602959 712665751 524608323 594023364 764364239 829161089 211642732 906383044 524917241 569728826 63244955 505867764 810822078 264058292 280832683 513535293 918114222 245208140 833813664 830680256 649201383 105571506 176709689 989029411 415232670 898441110 876217843 113866913 788864267 58382531 874777105 820817205 626475417 366124703 229287508 209420404 741066854 648949728 277347190 1388717 171923864 471587950 746517424 213701794 975962506 577199509 447778831 515183432 263519508 301569570 966039971 60281318 884270595 793974590 777736987 831054854 591562621 841200019 209377305 870643920 770009092 568378247 329614797 384076926 691205235 60029114 202376788 744023992 614792115 584442637 239596214 900416788 811365078 974125900 412884711 751862867 933272515 948914205 329338797 434338770 540533969 922081489 986801692 209687753 345245804 168461150 213076700 428419221 885529672 475367394 443463305 55919271 729524625 299926517 875598525 406022946 803001705 235194884 16177817 689935309 716020930 886681973 128641132 700291379 544908025 93791801 379405108 591190206 109454660 859671406 571696953 956972484 376773720 724068957 652635020 731327717 255891408 992936337 549979782 627213672 725582558 197056881 506806307 438693982 786611362 892985296 561533821 244193328 472947342 790074031 624310132 572854510 510114102 858731565 306919421 977873998 935798921 306719179 47820477 778671712 100241109 43989834 602399014 747028363 477729798 762675973 81474315 738225598 791799003 835829967 539996517 460051320 645675171 883348831 150485317 484199317 858321120 997022030 560061994 990319795 379890679 792731601 234510030 19121116 33113605 663458795 411466291 564737326 919236003 250036493 879763861 651212843 564287163 316518188 263823334 174452239 436088643 451338507 132881867 337707865 186683338 451962880 875137990 759503608 152244006 78571048 84214764 172450134 961761739 143998812 146680154 163158685 564867370 909991391 376422572 467198308 180922111 805753107 685725668 516663551 863383208 511556357 748434410 838965451 524550556 319766749 20474930 995777394 954478695 121835656 842983392 569287675 541160417 544092784 851692131 300238252 428824049 416664530 890811077 155934926 639522582 456983598 752939695 73707676 931556992 543667776 430330153 616070102 205691188 60000800 561030332 334924476 623831638 566973325 124018351 715400266 421331062 433520653 392276998 988416637 239986877 413788031 846229520 668054621 553743773 745491312 457326676 267463101 104430714 529711515 443320873 165661813 333668669 346289764 83876089 190439122 236631928 146443589 504941450 42925950 919327962 165787555 589876268 503060404 129160592 552810215 593185847 488573443 328890386 695070672 468689661 393706503 958998402 237426689 412017180 148833070 42825929 278348383 556665168 502487783 560516862 244492528 338357542 254434309 781517923 189447898 187090706 427695736 910635483 854410999 532432817 127397001 683141893 427295078 321411121 259340725 677059552 897965140 676403696 191057097 373833213 916907342 96406420 923560252 340766668 954640418 784349975 336850679 367950271 858054405 983848321 96345936 51172288 107880918 781107107 5364666 93398765 877966461 622767478 36084035 282564641 704273382 893254278 231385984 299630652 713778426 699364414 19795077 779366481 649115858 35999625 231581501 872967046 627862580 825470113 7341005 667866629 797039939 321919644 326371534 595659326 433939693 146116343 664708048 332631286 541579093 776850578 759313702 728454437 676160837 816411903 845098832 509662662 299094619 291328449 740363919 424971393 661904812 38280019 725900469 482662858 802553085 815436597 816977851 203056792 317415466 660461487 242184072 278615641 805274879 70841394 340934275 231500524 442385301 563624954 987068192 428024571 65739955 30489428 24739066 330602768 911690450 977101092 490321913 496572108 833657378 946472502 969309951 378251148 985948833 191596376 857868356 501706072 83834177 676630431 861968658 250256921 594061609 908967201 298525736 272520213 349583987 634629104 707157251 58009798 184832107 16063366 683714592 452280805 224460422 727961425 988229243 943441173 172506513 965098087 9370563 948047812 874729585 95920074 912929246 782741419 810511024 120225612 661948405 172616398 429963710 398426121 763100491 287975668 508053548 231423080 515384835 756509428 82096963 938446221 257441876 104013725 698432790 507037862 212877981 856555075 894962051 447753497 616066525 982130330 112143147 829573211 340677954 153530862 698332607 784146042 23142080 193647407 619112777 91216678 405090212 724561943 244959657 569932615 520893119 827565180 544304547 186483322 327772883 584643177 774979029 743942434 176134019 195387460 416959154 462189558 127604825 889589587 96062189 659150342 445016089 809598200 976673578 962074 292228975 444765286 17064367 954702454 630566367 700072776 19304514 722371508 669050611 604743503 835280655 626447516 388496948 685072042 782487080 866868196 520102022 471473088 230383192 893428393 364455201 240440380 617215385 213073261 48398719 315384669 599156123 80910151 716157251 588416841 33768277 532888278 137724109 950774560 701258419 943907333 472108388 566683455 48837624 589204102 430399589 419400874 895756853 34706058 885527139 685352213 144601293 752882051 678506052 757885522 265527574 116527064 896353494 457117400 865581831 164030905 16788916 291721525 55200107 109360842 376041818 90708873 95287680 765558904 308767118 176883953 795354737 790169380 37838104 408844915 57742947 27186304 152930713 166815427 458075557 674523438 645964058 458101670 698281028 983283280 559730820 134642012 558342352 873022788 200688531 53672810 718596602 446182090 730566130 360470203 901713652 466332877 621566361 880406247 511123045 237809367 606620814 295634072 61944460 949585612 622194424 153759769 552235353 89626448 8942625 107018155 717508582 426992704 924341550 978088958 984404714 627162525 970044312 912206806 451502127 863929720 60806550 928381818 903430695 205260672 668692197 783780180 392510527 215179247 431903166 441252980 135491750 555062316 156314545 261502533 332329424 277486315 34309154 995743659 627692131 736833273 922443977 310639088 985424710 200391566 770489690 940961701 748849080 926430235 42495184 901737200 566737739 885866585 348925956 2239476 995944247 500610930 11211921 799659991 679597816 725838526 474570723 466453552 91283035 181779937 28040696 534108611 977511010 649157253 650136081 24867509 624204530 795449082 457119886 905076667 884137400 65820410 897826702 560553452 2630264 524571360 849258720 441862238 218718387 135970900 814429034 495625343 156843694 547702040 393873382 199452019 24496717 687570171 781113806 880471091 665447557 71466057 595725606 882670127 973751768 819891577 507172265 431632006 375489396 534925913 330527092 481840570 774196113 498359572 965911998 323455005 330255304 592121341 942206674 296960830 492288330 660937614 832109936 153278655 775571111 796484063 497236768 774350516 153674379 827759160 939377592 249903834 534064187 734193195 492287908 172500298 52587551 666959952 637594433 501584255 919910698 117091646 704074160 659399214 937370013 212044762 236780332 350154922 345334280 329567410 784320519 663577173 372081194 650984831 49150340 615837777 431255561 347294820 712412872 940367020 927382691 414279917 758533471 379079392 446602138 753489976 16824664 319884478 11633452 395254173 788961995 855089150 642537613 253096532 207757945 753618623 38971273 774216238 867208059 335818325 846796522 917370308 81102314 703925519 272151114 986503120 275810694 601525202 561208489 616412439 357322049 722112127 873404879 668455080 220704030 251754231 591680497 384681327 689699606 659273699 720246538 58456366 600735412 188051646 647291374 382381247 174094525 918634612 269091947 854862547 577362386 668745684 150202422 896435513 893265174 583376480 745194443 135572239 991499049 488463881 265922126 249223674 605634846 32866155 720643587 881730032 493516174 932256443 290556571 568588842 505458124 558117899 18586021 326835316 254899439 364787992 92149454 893408717 889434543 251157759 854085327 864926564 314651264 967103584 672022967 14633990 302947578 853293840 181042341 961940316 667712370 915355219 241627564 292360036 771372385 666995089 715961875 638750081 506478448 394391050 470391462 399702023 142415565 953641627 399318940 254465405 867626996 870871589 299998329 498478705 630575507 889113981 843035746 473112188 81356857 481030968 756685960 736953423 447234315 967819135 173604476 334999187 273680140 265808344 487762360 908085051 113889883 767087146 407311755 84386054 653099978 740271651 843027533 119279321 699229619 863879742 720189340 137125828 659762940 424727547 834734562 593215213 910715528 424560557 299177148 961662700 715260901 826506276 352626856 389689326 38484418 532866837 493758187 184750802 238252656 323563998 128157530 576671358 282246200 402405626 741781378 266738598 837971671 608799296 81658248 998625041 199526438 773321152 510941680 305451097 913016660 753993928 76641023 702610669 245679072 40670873 596839444 412074526 202161909 561313831 335390560 434760932 24744236 582726515 756022707 227737268 787347023 241698077 364888917 927760711 345442582 369699895 542552827 958670074 251346809 985473296 803659445 601427229 39697898 186956218 925726452 128723169 48754601 186887065 207489706 304804942 55366806 421201489 736226548 407790473 783918393 999901936 854111295 670035183 858399264 991165200 854286135 397734924 419939389 83481625 325307514 246579468 949705548 516596458 841314869 352084070 222409664 544293086 718105972 436473949 470516728 200946010 657021124 17780938 563596324 229937732 735087095 393899483 342862517 802327482 772489832 736693173 895946205 181091386 872374213 257816030 845711173 368435329 343181207 352892228 944601355 471934039 164093667 68022440 442946561 908644578 56782224 565897125 362533454 99719825 608516102 476719768 249206391 765320396 112247791 834894619 941342562 122874053 389059740 765304282 220090564 6158312 690867152 46594066 725261986 835940863 80966862 150563988 560246554 778624379 379283020 906411086 582777839 854968405 424292087 475824063 657432751 18262534 891776226 190287009 33544784 356758066 752770315 21617093 635388432 335282138 506455309 314569160 21065611 945783465 159169775 670367353 8623625 734786328 259770858 438025369 122489970 89766552 28019666 323171440 863382218 178000450 30635431 832982062 928895491 201453414 994220338 384767158 32511383 243073295 968589815 122001978 72491005 249034371 491063686 505272988 760216666 281003302 796674147 589129647 199672690 86220588 159673861 73049414 819024638 887260649 657467339 168047041 409459960 879490320 912749455 520392781 391733527 816253603 787025894 309836156 781850046 873065658 586322955 418504362 683833182 505095037 379530395 555860683 750673428 950278199 792472801 72629843 492788190 808507595 296771796 975610197 518919796 703777847 224728036 987974293 666764001 597729862 492945999 437326257 988250790 52049137 417039759 493201470 826121863 167214514 687024226 855596970 151075068 732617642 115441120 117808065 29406873 382496361 104192871 185128526 762827315 373916572 249082789 183184279 763368315 769554526 713345520 288762340 41048992 865996099 759359988 977929406 19208120 932997382 764265955 608408573 162570481 586493147 339756915 321218393 69708425 70255628 65172870 888422834 748357134 53542477 592143999 99573738 57411278 211393345 278074288 680209474 849175060 313918838 352115394 103767452 203305246 206267225 563679221 413339539 901113708 366381731 300896515 512956313 88841342 278591112 762820918 616064973 356503484 543018549 600046640 160827619 532393316 272595948 41519676 734864778 361992107 557989192 735087421 925110812 738280770 876310352 577101185 638316461 115155055 789957811 77888416 993104936 10606726 106358706 7278067 99106521 410238123 280625829 374152984 529440819 514899747 484124990 898048755 660190990 995955666 606613944 451863834 601115198 310431952 470836944 955154688 17871856 67766314 945401477 588447388 13848636 429816265 495205586 371887669 904858643 576056954 585020486 881717121 532109353 860914709 900302921 103336542 316638559 514304822 250076954 367048299 477843124 959377442 631415841 935017924 641602495 147329734 238731110 499702878 512728863 419704696 271996805 832439804 516897511 99108847 564854556 737207450 898778696 348233229 373370673 410290169 991488544 248446582 322790636 381022619 214978996 800347343 165055681 819515536 880349512 495644605 653611934 667554706 461900392 948819571 101876483 87589161 693146803 311253626 921899502 211270528 194263063 473008737 271942496 882066333 386793334 804876171 524166162 248957046 191362807 344869150 840717803 869243247 742003404 862754720 749323494 497792904 203285087 840458792 101310606 814413847 431933081 618126513 590708824 863451962 49429242 950336580 22851290 91287828 551312898 541172688 939255667 462605829 572642296 870645294 855659997 377326536 149608007 54210413 326591315 735982569 341472219 623025306 183726708 56130820 938596778 252638732 738212155 679942937 248368295 713233000 799739918 671158476 763511470 935733092 255577399 378416827 145755227 222869493 259811610 687136305 583887680 543405787 665702949 448352713 645556887 700470777 876442032 536602621 737967965 532611809 747720237 870675446 400915078 552561777 308913760 3605055 678034873 695883446 218094555 246399735 338103228 891349899 865616519 257789918 628406824 971291295 229911645 860695274 140078040 892137809 423984321 344117304 213513623 105002616 183145354 659559868 974094788 361610313 321555056 224631625 979938961 628575365 636120717 163904514 300863087 714208843 877864916 872464350 426614909 225963103 748582172 996826365 753128981 57835487 848901119 565212403 160856597 165423322 295841994 947352442 780034302 687293349 17524190 22590040 920886049 560571624 911284557 754930523 323719318 920795148 172101193 467828698 498907731 298009795 512153272 254102323 123597737 954485378 93355766 683369590 869638423 641549204 350990883 32110784 594086385 101021207 123022019 3258033 638752564 589947900 24325443 21677137 720460146 350493148 745700771 812754941 300279721 935203084 910211533 397285144 359174043 195666472 542504579 144302558 679212813 771255879 79993241 898699153 279732893 64295197 193465097 55613795 106082785 273494902 369266697 283889852 616957016 56991909 807085317 405382458 104802141 666134803 666855937 117195106 985339691 255523877 825750475 302378502 275975156 693753482 877057807 469291892 529854750 213355751 83875865 503802877 345162682 764959947 814100907 307697210 912900965 254094278 382880714 857318718 764924927 398732726 474253062 946563106 942642740 260367952 813519483 429554336 635251136 182341949 460977149 227384223 864359336 725425927 131476195 600309848 492983775 820596881 467183248 163820003 758546555 308731420 655895874 269030523 566228045 783441500 899489340 663201788 839376453 663747002 599422981 923305088 561726644 525198648 28559519 301332332 817272348 524484589 728512955 621916333 479739156 577113550 641004282 500858277 677757701 846053947 368790049 872906772 748081053 36594359 328259219 895472403 995707137 38895061 624408152 149210875 470071074 579460477 594341883 939019419 245613172 437838667 241627236 884536201 161363907 630502952 829336449 467964586 10056639 504531420 440341335 827074196 714736564 583308935 65371059 381600886 437065693 944661214 894533577 418255174 318471337 62630044 376389378 832855692 671059125 869352151 532634299 681627583 268264730 356614391 44753833 911695852 362867882 97831080 915722074 30321130 270768868 437509123 740896602 313642379 154405273 219496157 956763430 329075421 480351726 57565909 513395940 557599055 313977096 933411463 154565095 865146240 128035143 71681948 423586145 868541210 522758378 854856135 857009060 94600092 453367166 368986312 847951104 842309537 846361536 455636318 223024759 178526938 120843102 245909181 631065743 442533327 278172309 763836058 820775023 721009304 623461913 86143510 43731526 235973284 827598308 901581790 595152866 832567730 80651684 927332411 246910048 9325255 784856301 984324473 578323603 987894714 41768163 565841495 843531731 121363865 292687023 896269088 879253799 221376346 628957884 734673044 628323369 769326132 778036895 429266441 366429360 947621298 109479614 760871993 458810046 150815221 949436843 747238607 139597468 828408011 744767691 654103352 268411387 502272489 72601034 654469061 856293439 104153838 969939661 333794483 87217542 639647682 424186049 155036176 9987999 357884660 120787575 889971725 608102358 827617773 307881233 492111742 461093328 255114997 274130517 763573474 752572234 54093417 10900370 857497409 72585971 9966095 910034906 767749720 473809946 832878486 328348347 858276933 218218326 503848862 479415896 768229187 489088052 658424205 240053100 523610248 100378831 900954456 214375088 370541346 920654130 768029527 72204813 717889134 181060164 628112025 863901746 598549619 76900327 446007046 873043232 80025021 293154039 993189235 97392067 408280530 248882548 844027882 535644108 497957760 628132309 547182583 992663048 643174192 874492952 953080710 789439853 117497590 973855970 585052444 35060926 933175764 604569350 14536898 750514993 173341002 657846799 675954343 909379006 80037206 916706845 128209801 216140126 845341753 947646942 6745480 880104319 199010168 494810770 752103084 438683607 653847940 588022810 571619299 564952521 2948246 241607035 841071907 921501996 286788859 499268514 521621754 380190942 411649863 108320272 451085505 989581835 336288092 344808963 6130065 323377204 784095770 882884971 338545981 291196596 410358079 837660824 632820433 598696502 240594640 631778153 323776340 270170824 574066683 681661501 586730717 851421143 276989805 845380068 106559050 270274333 348095875 909784724 689441623 816801232 24780608 234323613 542472576 530190378 925719872 566593468 310011516 716352614 897147576 368492636 299552341 717155775 49664789 164990653 162517656 587716797 699039059 353945356 329657546 160114487 562374998 829626910 621526639 483031362 925534955 170479434 739301341 783873000 118558884 840121725 280350826 829311544 659610677 742495013 515965990 924991170 91436337 450090975 69487705 349583140 493143126 949396811 710810304 12249108 607863349 862160814 599189548 448188793 131240319 504012309 971692424 634286011 893847752 542826537 943166204 571403168 563750051 597950249 259228597 444804417 845734542 686038364 430637986 400511635 868279377 452509709 50683613 873802168 944930972 679692271 477771373 386593484 924431664 880158727 208897020 703848531 154486673 340156595 651057013 418335549 720907261 972854359 157062884 725523370 200666938 707437158 961840482 65896901 21501704 471126587 655565874 334725988 58579150 193014786 327334703 246485284 494664778 42337390 79052873 365191148 670037873 891156084 312749273 395843132 743688195 88965590 152796009 168199097 948618654 642156201 123392091 354448926 860038956 348103693 715029864 150691486 444421168 377330225 52908025 832798485 953617851 469636985 100560625 673646892 363950019 693727090 753764805 909791073 345131725 838093204 989101304 622771044 266948470 543569212 818137906 477309669 596464229 522737836 311846748 462166941 846166393 49799731 262785130 30809834 425262133 434093985 834741479 79731839 51119585 366740647 341562090 190586591 253131484 318300740 734842079 852487643 617539691 445308448 215464569 461379974 136542322 589304331 303014659 6237384 901427043 23144997 11448664 578230102 681578893 915717365 600822833 640416165 533427295 233524366 775417841 606979063 423026598 67337176 503629938 687399611 602377227 891663565 791828438 674767514 513848873 919516802 288195764 837215747 303623612 215092880 320093916 176181162 843562990 346869407 281312608 447871068 474689964 676624402 585665174 866666976 228696676 683670389 670453563 615860537 397264140 159676245 177383454 850311706 625779678 704595000 428805512 478714873 703621760 911638551 225347976 172019297 395450272 157260609 641534274 50846443 179107777 996301855 183915956 208203009 835448748 102269 782173880 446887114 763573351 245844747 741943745 22023884 870808598 768949341 730023274 973680034 793650852 985233172 430590865 523308724 625289400 984914089 622178983 534251882 968634128 312859387 709555903 537623514 58018591 981703266 673148557 200643920 531415926 545413011 133612023 421980567 40872567 417504086 661935593 763830589 239104098 234115789 312593948 445423137 421677110 658483717 127701375 887594909 531579060 132910364 889229062 997148395 717935737 330072107 711638092 616480063 237425008 784246092 269063117 159215327 767014354 133628548 680455590 779198966 828242798 978557083 930904589 90423171 948573871 998487062 641154551 870509870 691585915 566963382 12707496 508602377 110870793 855167313 137389332 498449884 174422910 766148282 250065833 174791488 737426041 521285653 898657134 989024744 636891096 940233310 337391400 724818812 354979480 927578796 583116987 961634405 161117516 189916496 774479055 159026660 670143287 80118191 658140210 583556509 231621954 932013465 130994541 935335507 743786572 370897950 969728092 807159683 761302108 992769783 523671045 604765601 652352699 638466065 465763536 174867509 770480592 781077459 728637514 693290495 905853262 892717892 437659237 451682103 473447594 821346906 624327543 652583899 314857130 124614429 749581954 354753854 476890676 710479412 806654101 223184985 134061549 18613798 370304904 85963096 484234827 782541270 582831169 579239896 432609650 45974303 109538609 865241714 435588475 836973243 691205542 529125713 826702052 621141429 886726195 99560313 75713316 89283326 652925407 572600562 927359395 248295171 867672410 236602510 71285646 372296587 552404264 415855850 21189901 753433112 309310120 579698235 144599905 236744572 774242919 820062977 592096535 663957268 846249320 866072483 887568287 439358657 427086747 435699058 578354629 344729332 193643485 568104892 9114532 543944397 62958730 749891487 276091413 216870110 771010507 346688458 573150367 465579075 125809531 957950616 960023226 661693979 496221278 486388707 647386733 66367098 422584971 314911344 792399974 241784830 204003250 662239970 67974322 155075213 908824027 266222097 27137862 553062168 662913068 285942407 855532958 49312519 53165235 126292662 360929193 123976736 572635766 915767455 858514798 652608499 147524620 842040245 238450135 510225723 957352309 758529185 24891844 236785803 985498264 197266281 10226306 146670943 314526665 800168960 911744044 61306453 678452294 401007136 304689422 556828244 337711674 977508960 621785623 82620188 110865039 54815021 42656111 937807000 532398746 355186931 824861771 297624505 607892772 910801508 522156682 354879338 136392116 199219558 120100897 481641670 286396032 200815719 186127272 886844561 433539677 427955553 108595433 576552110 950233964 11590453 978883246 145288930 778153935 541034005 787412655 344126155 593235714 450066803 849455667 316322416 282291967 642453333 982197532 420291753 292736698 659331851 678327809 613593662 55639570 781558169 916906980 476018705 718015434 50287919 889373836 402886511 315694259 868848796 505067811 931125067 505209070 157836936 993048355 335759268 232696743 257164830 811458994 748569739 665517482 50999795 799048261 408346972 579084808 340473076 122889785 745688210 929927850 560644048 407058149 732997834 508869405 103020985 958050562 724868117 112669977 198469467 591817552 474575865 905166914 830939234 864342345 816917854 27047092 745228665 429552389 109536175 821853492 356864641 213213699 291329487 904052407 367523544 855617950 849721804 719272451 618769856 934006710 278696538 624014630 444985739 624847267 981809545 40226763 666830428 130782083 149117469 247239299 901853693 179492784 838342999 156985745 685975057 400976384 213761154 514622365 759701225 535856253 912967736 118009404 137222763 316683750 717173517 105237548 373070312 614247333 269549386 48374696 486669460 773033419 203717861 259973788 526159540 239215056 436249845 963511726 275889818 973894527 881060886 39813897 957907237 864477883 380859633 936120568 990383908 568448840 555099461 87876844 977546536 65241345 527613622 837339049 236528192 312313227 522792717 249830234 191698930 281840932 173312338 984786702 678351260 986468689 262243286 310974374 811551193 805368569 928586307 816309160 456462946 782803044 250324731 405768918 741700315 894646559 294964273 984432027 359751555 470052460 29216538 956402843 735369639 840763447 58200334 553738534 912416367 718331779 123341928 142455136 999682601 508518513 796436165 324762979 25910798 143772227 312310433 25280731 873372406 961028212 569296117 252682494 229940490 825562480 214162085 112205466 907548056 628470688 207923370 475974840 822282407 399925389 80050870 858138309 531124766 556940106 81242318 167197670 786661223 35758610 201733790 572046571 201340879 10706120 846187410 28176602 842299669 691405388 782594967 158251722 651595879 953002407 423859466 928916601 17404921 146577976 73104984 507472469 260684194 714952220 340347664 214743755 321031967 663651672 569968165 964529373 579556082 510625209 644400712 634580107 735101215 461177772 947426146 221323198 625521925 540599871 511243414 329339772 260990789 729199212 317824577 478175059 422242697 989600085 797813172 929303105 515635425 359786213 614408546 785804706 470540760 163203513 124002409 703905134 29858970 402681017 765443982 517574586 242684817 846831620 260005042 903979606 743019480 392424993 420337190 734785437 271735254 798913260 893461276 918542607 142855022 171934458 949875280 514665367 179680873 452448928 181366761 112631127 744033800 169441387 616027877 615282838 481550107 564999755 795372165 816696133 86440135 2971700 894975900 754014774 945056661 796498686 419869441 285334745 697087258 692191716 944542897 817630271 271958607 236480607 427566945 474203672 216945480 335664762 729041482 577177382 463430838 81929295 472366191 785255319 887061849 754382591 674739225 532908289 433738300 852319560 317675883 708563736 701772547 2442920 506131184 468141308 552047315 77869867 339631314 728432853 635556634 463151864 127548414 65333732 330789800 947207407 784937483 333204909 418006017 51152487 308943302 37864989 990558120 134160656 143199127 198280489 585889908 12495791 931246154 330219584 746285078 677762711 353861105 808643909 396274539 648016254 217041967 816798888 24957966 869261514 581229071 670764380 928884712 434213260 404684044 151806659 633146489 298069106 51630486 762117378 448388612 547992843 803377822 603346227 725061425 407099443 327164723 968179684 317085163 213660271 540634595 118845393 47822036 788855800 422470863 557559767 424442817 249298687 351007604 853393484 482049253 810046583 172513647 705273946 283015652 824014496 73341059 810623534 133320190 141763408 853924073 331803965 95034000 897751485 828464937 430625320 183337272 189826268 943416105 211679261 699101609 189477145 346997408 965036263 507035339 443479147 346018591 617133421 655359384 119224254 77788841 358023136 500097745 319425008 280090608 543961246 502371953 573693230 422205831 889745163 537592316 627068730 146334157 651817424 8829820 54954181 330664856 10264465 815562585 390240755 83426049 313884373 398850993 607786274 761913402 371860852 218555608 957384644 654811269 572477306 813561987 597029611 713479694 450639755 948140105 689452469 140612544 518089954 404185116 542990960 203443366 491622701 331505827 15514221 754342565 740006047 335876533 156410454 414895699 629623592 59557624 148418581 170253890 326882716 552101270 456278944 104740746 44179415 935802771 822108777 228537617 627673005 491136246 497117157 61185751 442082806 931888927 821407851 939009498 904087854 293614323 264323908 854300870 182201178 819599116 607567684 730517851 787364780 213470123 858208477 686902330 382659309 983020824 307486089 126344678 966243828 776377579 646586113 436694553 397057507 664953749 98544148 466094137 783949672 213926788 585915583 472015600 802205394 4526929 229820914 928448389 693604983 562873724 633036475 821098371 691756386 672725210 280867604 657246575 960486006 196072018 204736321 643064765 766012454 890929702 223749587 418128646 209303193 33993042 905428552 242228555 183489338 623246370 42994290 999342971 941855963 144747064 704507016 409429979 299770386 414124218 544748373 590897610 738977596 212631586 35461521 263959335 747399872 626268622 306361746 754622624 619330368 58686398 316796489 984492336 681566770 160580972 600026424 633403471 93801517 797741466 667888807 504681444 710844227 431504506 689132295 182086582 992684591 312409914 868196591 156204550 249605392 726497947 505727876 771948391 845713478 341712591 351960869 945879808 775926723 340414943 828525022 101578568 731490560 51782297 823523465 97200367 506754292 417539266 173415605 691527307 233693437 717608965 655351627 158048964 381860230 908122677 407229177 442274669 853280425 728568335 513780700 46696524 269696600 688752757 203227320 298434280 62238272 476303734 985494280 353110673 742921164 410190811 623133607 892266473 687790289 130680393 712231666 371332165 686945874 801796079 677113031 433419900 955239394 696828714 811583816 231639495 166471480 957032632 31646529 242948008 556812919 606741318 285413977 217562564 571892346 806452623 552396349 916054261 880011748 684293080 867031958 379451049 917317713 320731301 902698059 661318635 617435379 289305847 991993384 867603541 217686124 998395315 181417605 789871782 183150540 191573 839415334 562379080 210686005 351031509 273865211 13467728 125255053 923742947 46742964 11741637 747647626 774982835 431036047 159974002 170001149 206914999 746830015 541029681 763743897 498086452 748648849 633197313 668457256 136715327 779968264 975219717 768495353 967602653 756267231 66009197 666658212 804019015 586747895 947065233 62840326 268034655 147899878 524671166 687839365 109489162 227088539 723877790 601606076 979610515 471406401 775285565 749707925 112747532 838353106 308396190 550275063 775546128 956431909 246295883 262117207 418727788 791875255 123054596 281182069 990715284 178361659 607114917 717457323 323319193 155598082 305431943 806894489 148660465 379087770 318114201 58835383 645786616 204532462 508556422 591532322 485752871 712354706 547218116 735135590 749280175 714317719 871953805 268443438 396361189 621738683 674459528 194064345 762253287 249727492 494467129 38000138 940481161 165530991 681171235 33142299 177706387 850751027 827338046 374988901 535801652 468933868 257940167 475278903 345081589 633655017 660143926 726748639 87926795 49464301 177590262 615513396 158217414 350805177 98131413 80449416 552103676 753048929 475894516 909236468 491890796 652784882 415469021 543754949 151775089 848319894 415273422 927048129 706557496 986597141 59160951 8960364 727492170 613465347 345981571 28350389 691388904 322706111 979680350 537818206 523011993 948564960 432450637 589403393 825830888 650972767 760042897 770379859 22242712 296827936 157815571 932499543 67573967 254907555 150115625 625198431 835221287 795686272 348229362 197814709 500320986 954544573 816793860 103683267 878827015 399962604 781169687 231218137 753427680 643281439 932454494 504050124 25996487 642035780 164596177 59936868 694657803 931143015 966466765 878196107 430769082 719168878 660034351 792312366 953940032 219828154 696080577 545142001 678684722 569489745 70621205 506019304 791329141 330708564 989003934 675360206 804026609 278985967 473897350 905240252 691182589 122438968 12228827 64424297 313455605 153324297 654639176 38808333 511998999 925383806 945666417 176623269 216122054 462628216 890081039 452534779 100398749 885914508 114875385 82649956 968563593 467555768 545501604 181887653 923125592 563108721 753652744 709435157 69417160 406880096 391847450 317963573 347043499 731202130 95105124 117246149 350858646 620215144 217297750 659957210 867262153 567541549 186028246 919326737 959865182 85525282 365960243 761285039 107558645 772972119 127357385 544798530 983255196 547342461 55649884 351176043 262520649 3521750 418934842 46307220 964931036 877611063 489981933 790420583 270466024 685138455 88234679 139601785 234739488 776016008 629147037 31139389 393582057 219684405 510525385 319920229 799101430 171503626 637765509 925016332 640932345 821199051 158907757 379513033 83012414 165599500 767735882 482000981 498730939 147128126 214335452 826501225 805938074 198313660 158726281 538666440 919271287 495118896 406041230 247637450 477984587 327899712 153003604 841412361 108115992 106104993 801474833 935464406 242864465 568144308 40006594 683548797 451752493 207599806 973947651 461916895 303363879 104509936 123821900 739182824 915445328 969595094 459421316 425557314 126006287 461187595 89556057 126824204 122632116 433752973 142427193 41544350 805836747 577655411 828449997 630239957 435363673 715755394 867607847 614190064 463672788 822963937 281659683 317320647 800719576 442431566 459008838 227045205 870314233 599086054 498352938 449182519 623359665 382743579 524218492 338730360 461990000 233830700 983690776 671393650 209399223 425842700 147275116 65072119 384218355 544312532 32480259 664136760 464050166 795889741 141744414 158483750 432933279 456107736 35736212 525166883 803182404 963947649 916377500 501833796 436574783 416805256 945315605 632375143 340093513 43061736 46261330 492019725 382971538 46955245 342883752 591763670 51761501 100864984 498762173 195790266 405426441 129476911 707590011 918992905 436234340 229764499 561813229 18352923 638438624 876497217 712312225 521678272 897018519 166227217 735602380 172328637 767175159 733250513 247792033 876867834 51262733 821036465 361561597 299469953 752389613 388014018 410170481 14530773 571264682 228223969 340129034 889051656 938311544 580589569 101701634 427377373 663091858 23492642 122184606 440874775 589739768 768909659 560757223 978259454 613426016 882388779 517218839 495020228 447517018 974421559 950099460 997729891 437355510 870219909 68880836 952990745 728376832 500891366 262753735 677900018 698386295 603684448 379902399 786263002 106172102 383020630 969484114 177690587 527505493 511868744 777850949 373183014 578421708 365841338 759028410 72777993 94379277 267255722 883790363 546509790 265945409 780108404 252378367 405055496 490990896 412290390 672976224 309707321 895905556 17556240 13200937 236256330 128537938 342879086 321500089 484544346 490821085 197504128 63246129 273756388 161107990 883591509 552596783 228606596 881392512 617704547 927136421 368702814 984121789 523393578 159337035 930471620 244385903 609832476 997584210 579564689 683673616 537061445 613667368 979154369 49131514 815702956 342737937 780034027 304379611 654095450 645629757 433061565 234202707 2012317 885707807 992219435 16513916 998840288 231123977 524178123 921838117 143267851 83400819 641878589 186659530 876687458 843809802 205091979 775310180 22447940 923265771 166250680 313833037 811098244 932843005 484939363 847587273 394740240 207100668 765354384 840955684 530101153 842911856 967227587 191513287 235976331 378866049 766898249 351909501 27148916 726455448 764566525 369691453 730716870 258599367 141918616 190051208 656121256 39227272 688087707 176115498 637310162 106788854 412147015 770453231 215049597 538878862 558505219 466408248 110873813 221425995 189077629 669611199 668581263 483790315 892282389 84278762 854821313 707989596 862011227 718115421 925043327 517553861 440904925 994114023 488625239 333276971 520857138 993506268 133228650 312532281 295049073 285809879 991517778 391686933 751936451 85905587 487793467 652217193 991788345 948762148 203135835 185127275 145316238 277055139 343161223 762800105 934148619 770972139 658236774 846562279 603403737 36135479 244698065 615106510 761064540 683961110 129995666 241301709 314013397 616353387 538402808 621175267 456861696 762657056 283944093 914299370 759500822 701399082 979668939 184093865 939114809 809081709 373638199 708623537 416376714 36824066 796045221 134213108 652827479 230413563 20375510 292163777 972219033 638679297 230940520 496126396 400075929 751364596 32045241 155113671 782054077 18384949 745103190 376571561 120008657 511455223 129819319 156919850 732542705 120599143 623583935 401555023 113239241 515435184 852670368 665710130 295152229 588206146 220419249 687383176 878812161 608706625 538853935 980963894 460146686 130854885 790211927 94549480 789649564 964487753 772692288 42817820 312704311 819775214 571820656 523328984 854192064 38880063 234963895 722253950 720234131 356253451 888212647 101149741 760488794 219365432 177117345 5911046 413916307 769227552 830618052 15038978 149155014 186744790 527021869 401482571 430831847 179239592 526927291 177482220 752541991 758256717 686376177 465282828 240351374 494326681 449887390 52603486 544436132 227630872 988322368 538002810 230527011 743679439 805762953 301868572 754413240 559035484 322800959 967281567 452441762 541689345 252499243 156788741 618645577 908916158 483109900 12088188 552002148 695270432 171182580 284866292 966740397 737584688 913478418 863857687 898496578 791584131 573779693 518919244 974560990 757471484 576319601 617373441 473950648 954993864 635807491 503657985 78264724 545101100 936127469 894724262 672383464 724717306 433378354 245110380 59593536 721977897 63058064 379164344 566754230 807019897 57240201 431518543 459715462 586695864 345232587 71991468 197395310 805596607 909188045 719555979 636024013 295591184 390379614 349020752 610925292 812308177 400139846 878245328 560301506 450810603 384433051 707610000 777345497 81013929 157536408 128079320 941087809 271786877 195972187 154861884 827687712 606794250 315855386 935951538 330133299 865622127 785189811 261946305 143485523 302039184 597727529 418658706 680294968 434307461 554011431 998332761 445930904 911043107 24896567 887835396 733450623 983223933 502411900 831388424 842859298 758890660 647682299 26813831 137504305 885791572 807892297 552172502 735436344 383940615 904034716 230256911 652350205 536860025 438531155 276494534 701943707 908820974 565718902 247317638 82380194 138781103 231823732 454399645 513341548 181896817 270633126 791057414 786975523 170051372 823495287 571815620 577858484 956569195 441288827 99009889 506130423 2141258 922603656 70538241 553092995 110298401 750814957 389969579 679732648 449241836 942503755 924211448 493047094 549172671 158726466 967310465 769897664 516234028 929208993 564670143 460499507 858498152 558104442 17637638 102351523 118336850 236595911 649801965 499691881 572432263 807077895 860124477 179218943 466401090 891620510 93977256 394270668 967654860 44942202 488825074 336355607 239033708 475342838 272734291 963939908 38017257 79098254 940043464 48760514 713703545 802411076 859030041 339038413 828941649 415580612 625983730 659050522 399821693 959859341 469758036 981845633 72971719 345899555 806678732 557226137 321449131 244805852 861426960 598219193 387546846 922172697 141725083 852899113 675517620 859056286 366926407 361915189 818519464 341247944 215819587 511910574 234739310 782691987 835741201 558429938 504686555 378524025 11350322 543792314 136398923 415583556 595087223 613462234 272107018 573130400 468808184 579080775 187497166 440918997 422583218 492714405 238064174 686034138 149278848 944629310 426936513 590324630 944128922 770449154 426360835 984852013 188899314 982914065 539337828 65530858 651551750 497638756 266464081 735441230 960371829 36607182 703760028 688283638 918346718 790625125 319618884 154681496 749893030 387761546 30510384 81186689 337435036 938428487 689734608 946901491 691030054 949720586 539954171 988555941 413872589 645269031 431432433 643949192 628361414 464141963 815734168 798993744 599774196 950934246 233020686 647595179 59196467 232955343 666257018 167161454 722751724 467286985 943776966 439777568 604621297 114139566 50744526 810901517 846154343 906400807 853647625 857066939 571091380 821944306 406289855 401492477 398877401 289359137 840062300 313705410 657673435 343881904 668216424 757283558 820877807 361765320 647577774 790556700 972996156 823905000 628665646 647658550 494463400 667308650 206050730 198816329 999058638 987550805 623859457 118025012 543258562 507253875 184561596 916868553 18471473 738816518 888929150 722917073 350521526 938863330 679415652 827378313 945926 444419165 514333278 229595733 616873321 639608496 451296358 747907723 207558062 842509471 943052518 630994637 924499644 109108794 283181091 821423800 706073854 400073298 440826541 156057484 192291361 639299678 132658343 595639237 532358465 272711266 681935012 240183123 524193824 940237545 359146995 609296751 478441899 681816510 237184189 855065344 298021032 239284318 939399426 37832417 397073206 892896313 52682738 327641754 830465534 528008767 156800221 810976709 744439313 641390848 328007320 798614678 811334716 853062663 148968008 134315965 354233715 459096314 202128442 83632472 980169285 470302624 795611564 728422560 965217955 779321743 673986095 282103066 47458729 465215141 545498029 601000686 857992842 775528346 641707598 217293462 236292085 610111002 762880169 917612748 829758922 868536076 981270846 387341385 129511773 682005574 180920905 500984180 412185670 169725003 690050150 772510143 171615635 432893081 316778978 845569412 885008867 529258438 111259140 438052017 944397880 240766149 993345532 526501246 21690176 800079306 119782332 905053059 90357614 807212557 643950079 933946002 542719384 174376191 989914568 968173603 353283131 485878666 519415860 259703906 708193595 918629138 403348826 388109903 851524049 19961369 581812199 147953970 480298953 749114614 628936457 840587155 16261722 94561654 134435681 618353839 974803558 540360300 441062230 881439119 938433870 396200028 884634536 456657562 155691662 571109314 428846660 463615085 695372568 776091438 157946575 33146438 235228062 922853654 497000479 766880384 427052506 796237805 896153249 99791969 680977140 391832722 146177058 422875749 131046446 86208960 909435751 748998478 175415166 545285827 97535426 912536398 655269151 518702698 933737144 360689176 715434862 95443401 254707823 450648439 665430283 404686677 163870864 945916080 880589394 482039187 729560096 427909106 471375377 284842884 927874331 433426118 674518910 909371809 899539793 359237616 724976442 110592941 776964844 331008648 139917679 22356971 196436255 893535507 309919973 664381346 350197089 293127380 833467734 879452020 901174288 457896706 214925138 441123930 850675610 899733907 72858456 732638356 319282546 682198536 579997031 583608195 971604714 757405324 873474393 772933475 46374589 342891125 954012215 660589464 265720867 425295127 664126780 985894083 689706778 41379555 126320931 654766196 388133600 919865045 901986793 960082299 933529864 90749228 737899793 528839297 107837325 370805606 345316414 283809582 51896945 766479966 396130485 313549577 683479246 966135055 319275276 570212162 118770456 830703011 489360354 55385434 390237500 467154332 364689569 382493028 68486277 612369649 760242569 99766728 395876050 440393925 141103612 517314948 888843723 581796789 628696899 353348392 16187753 521749659 964879012 183376070 298182985 999190420 421321302 517728705 420383442 164135484 156473909 435521973 487749304 394372960 381748795 72803091 937728192 956552615 197495838 286772534 100098266 894243537 226818242 546018675 512991956 119967051 377890528 829820053 296639610 107346007 151446785 329316937 389988286 341210803 695417772 680406289 424102746 287884652 932648043 540289674 287622816 264132960 811664019 548066489 40608587 991171719 849077276 46857040 956307247 232743220 474240939 138032308 757309586 277671299 931770998 205939421 803237848 659594301 197932819 583153220 660774541 454044300 75512794 317392241 461160471 943546193 406423977 252343387 960645633 678875852 65678496 360583820 728409739 522289015 22154703 166022917 317268646 252236039 452042002 220485280 787088366 116045652 885359476 137254382 427916957 75721151 820045964 348385472 894503141 860338827 575384318 18199884 393423967 824488463 405042229 739108721 45980438 950465704 35384430 812109530 395884163 140226666 147273700 689359796 368030508 534638087 464704661 768904398 846496701 247835563 943700446 344285286 368239730 766113730 102163305 890321669 933865706 587351837 881178676 768865161 387978953 697031856 490730296 488461075 722971719 643906340 560256445 304250635 583663966 483623307 673443420 88587537 102963985 618360277 137492340 716557598 912567801 669758304 296221933 793287636 731151552 455666579 144559003 797763047 986501162 235882696 743261239 51585657 14502985 623429542 833586589 949301940 351383412 120764257 220079742 179454374 251935932 514267678 495934361 323214360 112794288 739122741 185882669 228089237 455560814 204127984 812825290 410622381 738063359 917949203 709893481 835208222 484279650 639657203 638717923 105704306 978491734 925585511 511954011 360647930 712500684 570562920 510991530 927455309 492895033 375932207 629854446 23643300 682889102 28689782 634356678 700377421 449300809 102611600 497849271 147824032 765508546 532324435 59333683 304294088 802673901 192508000 173738721 199801724 538577428 305622572 87863525 24779107 655222348 412905757 249655458 146193485 989855261 646029849 890591285 876675704 62896951 469242104 270706193 493091799 856552078 637138512 808918180 771965873 475452456 320075950 468392955 88398221 606351784 448067755 374499528 681296334 713585768 500873704 452108000 803508418 616948546 137427949 130367864 517924363 981518847 600954716 57416702 795036801 712927328 962600142 721982948 873553917 753083885 920763659 515894009 516158899 375688372 422438700 284222838 985427164 906792453 239983827 655615736 928949539 987691348 889723847 327744516 501238040 962418726 846584107 246334784 446620149 893114459 229730500 748775847 826284596 649499138 761332324 663742600 8849756 702869608 907460971 13440715 649506799 565218624 907900525 166330220 68968124 145814609 438588976 931003375 584257756 265582403 50847900 294431229 593416709 371639482 845384393 74353652 865974271 602569427 45246709 66477168 538452422 860031081 654374374 783867574 234647411 262231042 452592622 654305489 436385909 9244870 250566507 859246777 48148245 384715493 367242566 870610899 974999561 506727599 926480325 141239848 696870540 962269774 103893447 230978603 636291833 638698896 149282101 447593054 610560704 744446126 740720382 392961982 925551265 698708007 263645675 955355639 570230554 216960076 343260931 927379879 636012422 621522044 258055495 34799951 109331904 835585813 6047609 962477260 792157004 119438471 982066338 645901571 623851511 936454057 33219324 459855949 618296217 429587973 812139337 163889555 888911773 231638366 859050903 687232983 509660182 195090839 913930901 873326179 599747897 46656407 93663446 444306033 610697481 168765430 345951759 329894054 42161748 135728268 523086647 261702847 832683735 993959907 46655932 90943789 892673611 477576118 9555910 339050623 71552736 246733760 273127628 930572138 223786252 27169834 330178177 992967695 6288088 177610941 827305603 284728093 751570962 798135184 322405434 131001067 603956487 744701624 864199755 812459694 667384134 802056736 194528961 73750809 609299164 886933944 726319703 798996198 380174310 405217381 114718576 734424297 613104731 830348809 50295083 208485742 532105853 433114282 812281753 245638849 16902058 311528490 623567726 849986269 946726812 961594719 578633889 752286299 951004359 720541555 202468228 150614371 682211593 554667737 218259736 994696061 863559452 101393014 454003451 81006443 526691549 764375672 114247670 70368853 475080065 999132811 173574827 262179408 868423690 461590941 679277854 598746295 568033046 387699897 372187665 657041149 508833212 207891264 399463705 615911810 987798661 402923874 965610535 156447738 156875673 513596406 778963642 48565873 163410026 938431438 879869315 935442785 856047336 322558632 974823248 605653927 677852694 126197917 428569262 372818348 968324752 732321028 101687558 933532184 268483959 978906798 620106887 249627774 318022503 905434922 609343706 464420794 550515915 804219335 698577316 364986398 544875381 905228780 418896727 933164023 332526474 682695194 696192079 794535983 882195167 573787567 718484092 911419021 978314628 660898071 625205471 997805575 778848590 208490438 408590888 294313629 301365452 299795344 552809859 760545871 316916101 206436418 548255769 620239772 134551777 351067030 450947800 571813138 611651371 138133864 97277398 805103978 397010681 750664795 951762696 117150900 374552124 214771816 676957282 601734635 709932693 198932369 362773423 851074736 474370647 839003396 599316348 466726146 566860144 601954306 724573117 713107706 364692154 770741427 238454484 182568520 432602876 740660762 504767844 398797501 574528896 552042632 248674343 413490037 899302547 224504349 210077819 262862930 255367971 450604327 411633153 395956323 215708125 985072771 266923661 575775067 235447388 968879358 914400088 548124945 943941405 826406539 782582215 984357713 662154990 831099268 835111672 140652457 200537980 905371481 469773904 427473185 924860720 9526957 995678306 397633537 962524402 352168882 978059641 249663036 139534184 285353196 851911692 446090755 699475842 877785102 232742929 747835917 729531812 536432536 808727244 742977847 89284139 855658417 70272924 101660750 735666538 519292363 639646935 278842536 867585655 885169874 626591405 932426397 640298798 498604799 237087582 871110784 855421862 698562836 493405785 926176420 10307210 560597189 967716751 589687369 371057196 511761392 799432605 856828391 73013641 642696985 231821286 573531391 621776818 928593071 837424547 210810198 316164743 784563273 476045845 560269555 66768959 46657624 418745331 687549046 869151580 51029690 728385036 158132579 513298872 303219115 408998275 928949306 471260335 625329548 793163898 381656053 245174267 205229325 946529945 394767148 238725456 567643390 785850290 331676786 517589912 681607398 510589929 397185838 193897991 650520726 357687876 909309569 232131385 709558485 152672255 985985055 225724348 68145597 123038966 730789273 810145793 963749015 360467252 557031856 941467766 169390312 742096903 851996084 709866164 900864279 930014456 574066408 413649482 922705449 656628070 794154422 682106425 461263713 181028557 843870033 813008682 383827437 683072651 181738513 142083005 752315198 172762746 815939275 796051299 517991905 679692794 925422825 478690781 304863519 772292830 686001770 827732773 558726406 505699853 951954664 177855154 38903866 136755548 319906238 763471219 991373849 183016103 615038759 801181061 34259189 650110918 578681960 737787277 118534503 440530961 649931251 940130845 970778880 439035613 504334406 287563730 492542848 347420838 783229115 173421132 586473674 415440538 11181654 857177431 924077176 455059734 309416200 974531286 656892979 184695640 939375645 268014732 177076247 454130553 496377619 24917339 796567812 432408530 997042468 358307140 441773206 908555531 463221789 907166479 554098937 202806895 96013868 375389909 202426420 424680009 914105026 643436618 298065387 228649142 317264857 709647872 296579610 922455050 469295852 860308614 43190041 571657150 278074170 167052638 36941186 790723475 470709848 839193932 883309260 520149020 96780466 776566663 543289542 986803849 386369645 596712785 325147738 496908220 428095868 906136155 979128090 220021442 193538588 405168559 488855523 835214232 993494180 936748193 87490001 596049787 862488214 492561153 252601524 898605356 761696409 881244517 176772895 667126005 659650982 893134580 471933041 103535347 918597630 70224693 424102711 47011319 332953851 928793858 512957822 116003546 701789073 816130290 561249797 176524211 389671529 711206911 390119784 496745173 633650468 911334680 62020553 497133891 209878825 693583152 39409527 756158858 867954817 96217430 488238363 155183574 32323469 688394799 155000035 955994157 714752715 282785498 993011149 256317139 483169065 520164020 800488150 743215614 151512930 242401085 547320006 494093886 11957806 148885350 150417294 567928751 5193094 863146628 79655909 31446642 172172094 44316625 385780016 495085493 493814503 112917292 557361734 607467506 766518532 850207568 62234270 333292942 619349078 115187710 752894578 823504555 138549288 387263168 227598563 505335923 247925202 775668354 819663467 34830607 739579734 928871757 986368678 114630476 330503353 63548883 91106882 775945706 446030372 897129804 350122968 664194869 446540474 980494664 958578847 140580642 83359866 998459515 527507595 4894195 441272380 457887491 992838627 495209599 511168267 620317919 368027531 35848550 479062296 787759317 727065980 466467473 718067256 958894007 871115002 201283957 204172846 387048970 518531174 580812437 28916930 14825586 955342841 857251899 6782642 21518465 487629689 18362233 884004580 104563261 29949956 336752400 57425778 829368065 655527137 85288822 194164857 941944646 277351488 78678915 235357310 22619558 349562582 708511828 379876829 14321909 381166698 479728748 136258236 752837753 653922990 28522252 673039506 824135013 601476341 39396942 382222441 347859430 70410345 83178704 257105787 804160867 844892474 174434068 59601084 364497143 952282270 15689300 289386569 258365622 116497358 370854304 119199879 432210736 570203470 261536423 528052430 368379164 787319954 593658823 35678572 123401043 995407270 251499531 463824928 220063100 830520849 65466344 804372902 734837413 156731959 708789231 77790979 125486707 669742018 701709196 659206522 34983277 784452514 504123163 103189745 173505149 832793464 148713398 795825017 497676370 495373083 344756082 58344351 263728585 27879678 189127533 104819395 544136778 181285929 41105137 113109272 895802828 966545962 197883943 581910514 193989597 582100244 295515522 56872190 836264109 291168690 220017863 605607380 956509046 839520710 915577275 187154699 898105047 471268924 534129434 915942232 257539478 627933131 704016606 428631385 485399854 18264556 994857375 459363776 159003570 845193029 278244198 539325614 149078429 50179341 164389581 969950282 707661117 376976086 487814220 445653463 411197853 128019314 610980910 535839116 65004521 938153607 192157202 300848749 204440119 33057448 248530542 896811638 559256483 589561511 482933127 29761063 481123198 23876118 432307610 461263513 141312620 904112108 704044692 176377994 479932670 662458357 249591895 70459761 735453628 631033827 19575711 290592965 639002933 61037597 675693902 871508685 236282649 800009659 172794844 743057962 126671430 468045911 222964302 273771686 715072799 155923386 798503319 463059590 407698031 723902580 530769580 161871787 620672969 664558610 349418091 110174931 947382355 788149707 201189073 67338978 10580813 767905550 922792644 4543292 40377568 453700613 605163462 537451431 37522894 440436019 709611085 484353190 498590114 906405764 918166888 792461512 641622529 978658002 426645411 184983843 445076314 41028176 357242185 392086434 546725640 125248316 831192998 95750893 410925393 934409373 974957574 612216106 503223968 599751822 268506406 384784901 475087677 550888421 416803557 15504033 598637077 871627374 972248509 977310031 325208897 754244177 451067550 251842024 894967763 228163816 191226232 563012368 382032865 736181234 949732743 113728134 590490522 862942881 339605767 574744334 458008170 857289290 999737136 679348920 558896296 537526267 306957529 840291213 299924096 649010399 993286596 648717082 675453415 556532385 487375953 828373080 274056337 196781954 180486444 287969339 176418933 938707017 87631677 739822349 550158557 451467418 953471617 484406078 905818939 589092781 369991713 442781864 197889736 549221197 979831931 536057092 367493111 541466248 566379004 181432676 809546602 169023319 97276721 605998555 285519184 446784571 80847196 80690887 150814444 147994780 317426471 234282117 516687573 25757694 563940203 917067380 330711147 564286828 618710789 783118759 868512205 619631366 271160068 481369757 76619307 635660918 594896491 749953185 939012910 110845570 975041482 298147471 878324228 201994605 74618848 855406628 941636810 383189695 173966872 211990754 644340502 634977158 144624861 12784441 110244001 712542398 976219212 49735973 849756158 629497823 740132384 450432563 754166324 540610400 762040493 906680408 641703099 220413629 808711685 131005959 815704299 21898962 649363617 644224722 379783375 279741653 989053912 342884521 441235507 49158826 814487017 226244671 916519525 309625316 61756407 922526864 894879500 408522378 21219998 994557968 124517528 711323686 40388872 259312405 192830932 79323828 484874913 82887557 176403753 951192798 564698798 699939432 970761179 134626323 544778188 358813955 812753433 421366402 264018093 76141937 721903598 297973044 226396410 339899201 4829918 321428536 318477094 149942926 584176698 406990198 795423833 694853470 982219459 337042170 570147814 715281521 102506480 975212092 68281018 222205536 886264148 318092252 782819436 932109297 327533987 10747892 300202010 49588635 705247838 991521874 211205967 392072660 716534383 165000968 990511963 246929381 448377805 913172917 759337677 633075220 96741626 49279296 366088274 841870055 799434579 85016279 534416707 311608042 538315045 433451923 394630152 942559912 220885907 928204750 828197130 434385664 285446790 238928000 943877884 450295985 150181702 117104351 711976018 318238354 333658844 744390131 925312319 973829984 177893171 593293685 530923387 105316760 33621674 852439132 726845379 226256339 437412734 274039098 656406202 254790253 435535537 518114449 711804472 594906714 43012258 877677006 889528373 125055188 636045433 474898778 877641021 482237232 979859944 403312750 266431829 945604634 87665003 533073997 916725241 360293315 759476004 41835213 646235633 214961597 122619418 24572940 496711699 683090272 952095139 226308978 284780590 937741266 113343895 339816881 786799909 597721051 860754731 301917667 474611736 115738369 900027104 428156758 851022076 547405883 165273703 972538621 348141155 230192814 974165343 920266101 890971150 340644900 582882066 44316777 727829226 709079197 841078991 215736537 721348070 146119541 799576645 947322937 952795538 239833552 871576795 326834930 561545620 847701873 484433231 51065633 657392500 204227625 729523861 388020773 23481138 707955757 844262788 648470082 301189878 158729821 675970869 818966489 724290228 133369805 650183266 558615333 43302772 658986192 452665878 828674956 815670091 19113146 605189579 919085507 880497822 928957783 139461812 842823031 348376810 654960239 965216082 98273437 446910837 521601089 225766785 235201824 925257642 580166806 63327420 783245546 988364933 357200207 800129187 414992024 245475490 737129447 445775837 808203497 639683175 836241686 823127088 81809361 429055114 292386285 538696184 711946707 372891425 125738744 983525359 636815034 373302008 592363582 139208134 479755958 402351242 951376533 706729615 325803022 692345385 946626714 298489202 667156380 470316749 540140126 685313798 919911798 210104479 43634793 157628571 809834589 872535337 364481198 900455123 39170302 845199866 624646848 110390944 521144291 713621474 312852504 113854290 604175530 242619571 77553849 892650702 798521478 234800893 135956222 650439622 387628111 638857906 806422370 696660364 69705729 691212453 714257659 701276885 63277337 772113046 790101352 85270237 429999653 712016336 135645023 893784987 344230193 758061030 483689895 114008220 616478312 5179492 762230902 162878930 278854654 812850142 958092395 111085233 326720234 77485891 31310887 223580668 412462374 538011224 880684335 581765629 830574944 159394385 892530610 583456810 83290117 693925563 846155516 49666229 812129530 36458624 714291274 220558487 105767388 392272059 791339478 207622272 580380420 603374845 691490233 782758373 482645687 676625986 555663303 576785193 561075263 121056521 683871150 712325872 598335244 459005802 729908683 79082395 782840057 131162363 716558073 865527311 763971554 328721446 537617146 352920882 834009882 358806065 571945722 671633460 707177728 675691638 359294256 298860824 588920660 718020427 751203331 854761312 920933377 265596681 852331467 991695116 583815911 234353963 59312661 200654156 990777674 750223244 139113129 875510658 126461317 110739931 259065679 954214236 888236129 131337328 7965642 659025037 567998652 906744727 589376415 853267977 493480996 741134401 33900568 325517037 581856452 631398352 679761892 869493922 788301908 357147462 975387276 851423434 556627465 242766193 47318174 311995113 347896183 419148023 996034484 995707142 45111193 889248968 395146224 566137564 679276139 628253154 737942721 795848232 262335607 133015753 724571555 353362401 13057483 752250467 522397623 729238829 779453877 225648415 680111705 534456959 289659308 198449229 880168510 978202864 527148066 505175817 277431336 592811871 967783993 929072795 510576425 234381802 792330149 525854202 862190949 181837014 290294822 271665333 168174842 818152882 891676070 353527567 430828108 536914050 978157576 171225508 768476421 631035001 951054360 756788340 714310265 733120836 424716818 828201873 733777662 725971145 630065525 75729972 898065245 126407339 209507584 440275968 993013700 991476812 532945952 498637768 234025943 932767270 625403961 888782880 190357673 545513336 150519562 884239089 496800231 433235981 704423228 763249942 69194399 676971103 347129935 762725399 598648314 424078189 351697429 270784583 855112652 346394078 440317255 171032885 139302760 761401141 987448622 386517221 657013871 848363534 331519472 658185338 50716274 716992366 38809249 687912804 286344223 367478291 440146121 188264007 204762063 545029221 73171399 36239661 535245286 749686013 414831848 417399426 46293977 433404479 283857840 686309925 695090445 616174108 870886735 540972507 618949047 234746664 218555796 565804628 576831993 580684519 6053561 342723388 301295677 523349812 30934685 75131093 867892642 472750418 664511845 576074794 527742612 157127633 958384324 802874089 957348539 657943275 122720958 812489449 318371442 619377837 205375677 385820800 79156286 252254157 472334960 701896382 510724116 552034589 4799565 29723499 414077992 457954536 71729886 447550298 109325409 848786296 88876081 889819726 281321371 340557844 411870187 252709911 508428005 797821719 24291000 695925457 975474534 537341678 617721071 103287938 793021755 39078863 729242081 815153399 590029191 183434533 855614884 674208838 648358230 397805562 482662034 164894037 964893250 627911930 388678910 358018001 64396096 139692354 415302555 832250731 474718072 944660265 575885501 441018367 631583818 5185246 14812829 206884332 538196352 910082503 557091553 817473128 757967778 12922881 364582473 920042462 714806266 112435554 310763351 120196100 211809178 375204306 266371537 377040785 598751905 794909029 183063488 956921352 576276268 320277742 288448232 193066466 775117255 696729997 169641404 648711741 321918396 862169130 36733783 299629847 233890045 568080295 144363922 460185762 366680257 952379306 912737900 742482334 333304278 79527390 267751220 510185341 3777592 486761306 746489040 454933881 855973606 557764188 856343252 450380676 105863763 327116062 816752311 736698537 992487008 907986849 195917561 60475312 322024083 471456510 692503902 260403637 582026790 275301504 271758723 138010848 787911918 581532591 963498788 194892777 218121483 323124788 361115781 788301770 281192791 181213502 54834664 632037430 531590400 27282233 3232779 612731271 676840898 473464407 934377232 32017485 253295773 433074389 567146312 594392005 86909308 888442589 865146151 76638463 686021483 349276240 898217022 75131067 775696011 920606534 451322285 927260326 711116840 493508173 907899691 659092556 725114812 808891415 68005308 665803836 948380047 659165863 603881979 255100883 675902264 294941757 57300792 987039403 970354881 470214516 162435038 371135312 609685509 289146987 182087045 138890989 530142581 499919885 632552330 280197602 703253657 473694761 415521449 680455930 615540006 373903702 879950428 754842344 329496652 328254577 266904296 261655712 83901642 755754700 90385106 540861889 93216603 857764181 437109409 572113041 467893712 751810615 886877294 211264011 294159030 192166272 545463598 923891125 212954914 431738403 426579913 850721977 590524331 614769854 692688132 648798510 913637466 572500985 946344070 14542055 418334947 419527745 986288115 36269044 732714292 271729301 281814907 428939690 375613309 978339934 948511301 22807398 791222606 822905340 270249573 315752115 686183481 45607161 388543814 670478457 190711866 447824457 353338365 361574017 548219358 682457067 862794638 293003024 962399981 325217363 89319061 175656562 604656378 309170092 103953228 16133026 143393634 7876599 358511232 820283506 114376972 765677309 90947017 509167567 378931046 103310562 74316866 826807688 859717147 899686041 126762611 921564210 4826281 944583030 694429652 175018525 121448072 678572218 144540806 458993322 66369155 395383268 798692760 814304818 821386372 973471851 866687328 769461639 331091208 458253742 293156706 185549215 442909300 831763906 403867638 878215113 701061410 33683653 584805447 986238073 283936531 185470673 262221611 804793582 621383694 327880903 646811560 725280366 362884511 395925033 35818529 242202441 288161434 220937843 328648328 442018154 909964448 255078612 144593779 390001002 908868031 445732792 527352004 51749341 677263153 170341665 813558570 341907231 437464923 475804817 562185111 468545063 454298446 451485842 635911244 377371210 180372217 74740538 230463223 985756610 176059590 100923767 280337897 776045585 564350376 533322544 941971877 502751000 96544470 99509678 835166446 446324529 659993531 451106248 950851741 308659979 898819734 838837080 566138794 239582930 377723039 223662495 521740562 169257686 906220683 569988566 540232830 870782437 360615919 3227979 591670344 393342315 602371644 884435647 814083893 672126298 54112282 175114936 882085434 792104544 375006351 196989161 80041028 601838786 511914598 77791206 495124500 53149814 944207873 821117151 837926948 316585561 130326610 341074716 478857779 181336877 43828882 809146401 491396470 175562834 151881591 792256560 736224085 844901413 162406497 117319611 363369793 500658038 93614106 906305719 628445861 471210531 953376156 198799883 805204801 917892906 966475942 992873655 698261007 173888150 547937323 699941547 707517397 148354651 225656574 757200960 361739295 364772153 814372254 607234465 241141717 248431450 252517317 998422608 27564782 5814764 522344117 839666647 988869610 659483055 230515279 517468635 777688201 452799451 991975197 901307076 638484004 277960706 498440970 141191102 639491459 541475618 545782035 618581048 787245521 887697872 224624382 61916406 326048951 437910287 686897922 251383632 645501720 303767541 318916165 363531143 640552732 441309037 735773823 710444017 506252210 546345075 875175541 397850138 868875005 73280211 306441686 427668630 551047754 822571153 523862562 880678399 513966639 251186786 928822764 788086158 751898764 413347242 901820404 675593702 350767203 876381846 672586431 639360280 271500208 340955480 15986552 30848356 280202376 265469090 620759752 108556434 807830504 595295914 763310877 700648177 88971956 813652343 123803945 623804566 905754 839254787 510459281 719943300 566853399 412020030 484190946 75069006 109338402 296877503 266539091 91480691 880861421 366663241 863873265 215319896 775853339 414384945 837831242 237412931 447106834 798767416 655027125 459027148 972680072 577467287 225930978 421120870 377938435 776408783 95810304 392312525 898015441 310966018 452367577 346455343 483612540 57083048 674229207 114021326 704138421 966720805 149549719 685616248 80105415 734820095 783498511 49479017 959474163 146291612 977757618 371218160 953026332 681979486 430963600 875055677 125817573 630447585 677888847 690104946 96898586 477586374 723092683 293355636 783918887 787770788 243784664 881881137 776064996 272467851 440279000 18012854 817539747 393060673 764807892 909361296 680189898 873126367 519029420 609365797 450210819 55624567 718274660 532691609 201666448 700425528 4900055 428847388 808702078 687571112 846740481 139367660 19439006 199489077 733255095 496663520 981183914 299667812 171870451 243602692 583845562 501547537 136108900 245013499 675637936 282808088 39269933 821919669 649902472 451940606 351754820 126749910 726956419 570961724 394758136 919097899 302641177 590782570 434399022 691410327 674689074 575767821 582283702 997686638 228163954 410428293 953269520 391542505 470580815 883146761 823140698 612496305 639628951 52962859 530938401 543819333 752139900 129598153 648258180 501734452 324496255 542366484 794804827 177057005 402853013 128306838 672059852 559941554 152099421 836248630 110354088 939359847 852223359 496357832 982656984 315298497 294045087 303762258 192649757 610334090 922142781 317814322 679538780 692006822 220568844 588447056 787004463 253734579 314872838 849955577 675304931 904675751 997752151 407912842 165953182 409820834 109759033 630926667 99758779 922931067 875251002 782968024 240930989 119990812 847817317 19358647 542092258 658960507 863984220 468198619 686446572 195249085 973840610 570471158 996380399 230754612 103038169 993965512 993910040 145337828 976229333 850065512 327459970 88799869 971609006 864609015 125327117 158794910 92540774 73519990 474113461 860655765 422476796 170151982 962133795 604038497 663066104 297143921 712145352 168967926 281780404 433072483 158087614 941062082 60572562 721628935 58651595 800673717 973745107 929887501 855519709 429055804 36357933 736596208 216013048 331348795 814368732 895193327 846462294 746800322 135723156 402528623 531373993 141735562 370081960 342431746 259083260 34096979 664703311 796334636 916493733 468534867 200204299 59631761 374900057 214879215 68555668 813644748 733189081 223828938 704138578 403377366 503310036 362675834 951755236 971529718 389709356 276898930 279188824 981261560 529805479 108032265 259625319 389326030 576005862 63657230 651011743 98461695 759824177 662050638 933206143 914954426 997780026 398783353 72118331 39196077 332897853 596847372 617170489 11862686 576659037 536807579 647397819 736619906 915902883 312800669 752622226 84395543 507425365 902057848 196339495 807845147 26928909 557329400 399153256 299732948 853326574 936340347 537058241 438193730 696769263 435669035 459961993 465237366 519030783 447502542 5965777 753853090 990278868 22525405 15185747 791564406 413486433 642536068 846308709 813456485 316073293 319622824 201229735 316035681 625817657 244654234 40286062 275378718 686718961 180370756 500068332 361491038 783823658 830580828 738492740 673425530 455340503 435351567 453301516 258103724 787042329 462602821 960274209 694352081 597495657 838082586 791436552 356120746 738496208 560132830 500179682 263562456 973382705 44177993 887623792 455121907 799308143 534758008 822841809 641424700 155187615 54412647 414152116 609448049 155245608 837583305 563692368 819794628 159041782 873520506 794465731 567338045 695862031 829319786 583377776 69350929 777454739 762631591 965317199 373614330 450169515 125804368 973992653 742681414 455607393 747296762 766027126 153740532 218992159 643901466 1003940 774457531 34893859 345927486 62848694 496027246 923329436 350255914 375785557 368963836 708988440 977552887 233870076 104083405 981739066 554600139 125450541 102986001 844922730 682654117 52256814 134185673 486648866 281476943 268249657 774325122 598757859 842508188 594797913 299248138 145995129 345032719 184597650 149993247 402660470 100380855 228625608 555603261 418674874 843387472 129736944 621088322 205745987 458001350 892400755 839350218 927815109 233233692 334064154 482797595 122491904 137431132 797172089 676134871 659567233 443256078 305800139 226259725 421426861 922008494 355909132 151306200 15811086 235013411 102696675 870458174 938090694 564362870 687455383 724039068 353418860 523968948 708769233 905487155 578557284 52498951 199819003 799823477 406268767 882950812 179508626 220918888 569957940 84306629 813371548 959317654 832127204 184292966 888344706 200413329 433480107 987531099 233660912 775938019 46529865 526985803 123735263 899354218 448950455 797212791 2085041 230808280 121363674 174140421 24697294 220845385 671573346 490589903 350765445 247241682 128204606 931934607 346706094 382656086 730581649 37616065 575807395 76243492 42085509 999298268 874154844 711633966 708955545 504807073 243267028 213616011 251079238 651511050 360893619 751194763 412827067 576662855 471618387 802252697 329585428 548327936 982504738 243578648 635554919 129931251 852513158 148706839 726962287 584884052 306902696 847931843 703337590 494875652 815453791 706403792 272027534 662326952 130496122 146585037 92921183 894011899 216815457 485859390 115394830 244641328 924849642 573321289 641059213 836528853 97311996 263414422 177159039 25538987 634365150 327472442 393610181 19099067 716099681 994260157 38981359 220169843 792865139 631511498 127596912 994176658 918854418 714475536 128695860 524270766 877913616 134238532 757286592 596988611 499847431 150819108 305282998 910931997 406055865 148082341 161570039 805426769 830959898 347644930 833932768 24234081 101269666 201229766 415961171 944423572 20612295 716749232 574291630 979024926 796084948 948110439 348134623 659706919 211281643 80089501 415539237 5166151 175793498 111833211 394570941 538280488 525653007 673702465 322697168 964932369 48001115 248720862 88571873 314915755 975127356 259442179 378545201 205842012 221816905 226478559 346720254 388320933 65623235 829311366 624382960 697496341 59441444 677479573 337042893 208561812 265635352 330918462 763635143 548645626 90680222 987118102 988701258 548426714 509091082 494958716 834710436 374712964 207287100 912542158 890264552 634326360 123241581 917847374 386414575 561953491 441789829 372993933 768063011 573578725 463868727 606436852 921232472 367010155 514101807 915764240 75485884 125430854 974735041 359945677 430867260 890008081 587554474 402242799 731461896 55741412 840236899 321370940 264705516 29387050 894558418 630564564 554374367 853481868 274155594 503482163 887228371 740270584 734687554 395646062 40144056 483964097 217866610 793229232 401541858 647654597 679850798 746202476 721560221 372006175 733253614 378284977 578798232 505730916 855937352 171684453 672737044 610827064 694864247 756910654 155678770 391698783 884711192 132803689 945572521 570826967 661215914 335936268 358502546 220154761 178470871 990345528 473594335 384614172 500754043 721585934 536808467 635217930 355462618 465523206 696199438 592319619 546829945 347161830 610055591 362071614 200975997 321687308 734620021 47090763 119250181 558770660 227350605 508876074 401469889 627755925 641779744 160505598 810102283 618500643 765850343 168549500 324235442 466599838 900775036 933349893 31607074 19337700 371423848 109924326 881078029 207182821 549957851 381532607 108258729 346880568 504779967 629257911 734529821 232555420 281404835 67703333 880345450 925571413 217599587 647538383 90193155 163283528 925630306 847802477 233408792 551026266 887897435 272861572 490340184 94778403 731314497 520061159 241064752 800638036 872566732 212691487 725490885 55899510 188612969 448424421 549230994 653820723 22628185 327080842 769714939 742613847 465981633 210988255 378199113 408540058 395829469 195372623 446277453 526348987 242892321 24927788 829970399 163119403 514930887 115100297 783317212 810975919 158676892 198332492 579469615 514793318 356278442 94918856 337918144 867314203 823943536 18246025 842964453 95116660 812934092 59642785 542437448 63283452 465718571 591336909 683591822 669427872 612425125 129341124 257517084 938148676 465012607 378774909 703052559 306240980 67884549 248582368 611427453 335905539 522541460 436075635 975108201 409241838 359545650 506536067 351515163 983679311 26874713 441530625 77766035 650568605 998588887 556565858 923779900 60920473 256963962 153235863 628101643 413916365 839386934 953405982 801801617 823087836 781809029 470554102 838048158 57465674 266231365 528959301 108548975 510590215 354923496 62219290 648438823 127719045 346659288 475243253 797561303 332278495 872700849 534159766 214052607 724263040 50060270 188016264 312843544 60938320 256978957 412349461 170067058 725580761 204176815 89672633 704365114 696133976 148800895 659061125 8451698 825745209 568997317 273482152 853098151 820388868 162800211 296953649 344485254 206580824 126683499 755864289 941847204 664912559 848905543 748254268 632216949 377993892 669394923 142468889 900026146 184102193 778904301 87316792 729503237 667524061 182189069 485372100 751058712 75703112 401464166 957287633 850342551 557289312 275474642 765482131 868574884 433019803 989426053 935631006 424475753 861745377 404302944 962329452 449786449 892965822 690581212 280266508 176027129 37070989 797513453 641840116 494058556 795377279 622572712 522552218 633133612 830267508 438762383 339380088 366608913 4673420 520182342 847319106 695617880 63948913 448219593 728420657 114952172 266853310 405459366 400307997 78702095 377034808 241256394 443200819 967102111 81726078 329334771 509125152 783438848 212888582 962135912 83633089 569402295 9965993 510270860 276773868 838632455 993400242 948792071 783571163 89906858 944385885 597181624 768135227 265514767 995383184 138329781 281353080 939292240 260075479 192959345 545523847 105226575 363804152 345977182 664597401 526475664 371313464 568810223 625313305 363050910 3789221 872535127 967168896 800795933 934593810 978080730 678722004 74357665 62869419 390394697 820427143 998161925 116253245 877560244 270900496 715101812 488044326 149632225 371819188 501100747 665099028 761009973 786217659 140111610 107271629 757811351 317783792 541526941 809869143 300298114 787901291 401620818 536119199 275850796 773201065 829557636 630965697 672064177 866048811 144053012 278828718 357563811 331755065 751897332 418712771 627650744 95373465 840839871 372450369 921707745 713568018 49055214 206375232 115819663 187727459 432503992 931808778 351382669 334693164 384528764 898047009 80747923 741801517 295646436 205987321 350770685 303713538 239768877 612638812 40847623 89454900 992000726 595262807 995210508 237517470 224821729 958970384 469318952 92828756 553097749 665185967 345759788 993843238 245487537 735458221 25649581 554394434 3037307 492821094 806538528 201668424 669751107 838980044 382529809 887846135 60365693 190626616 541804950 421972678 632854515 200679862 319669341 8774359 568422957 59117495 537821576 750150156 376237900 866863107 213007164 874177389 130249350 157187295 312891660 399109772 402474450 206094502 92940814 742571714 481323829 766787094 102077059 514430625 976510494 733688539 768276835 147711476 528291784 310255189 441018447 567005716 358253254 912180813 57182735 425239286 155716127 631288970 623863660 228873942 548191252 930459851 455378577 3269433 190803155 241286793 522800208 173454103 171595507 711046497 775436690 945551344 796233817 883945933 353861830 981345209 214167555 879438789 374274811 239511820 669863431 135326528 101141778 249928744 625342794 898178883 990484610 466790688 296200282 117592792 836822439 288973058 88136332 449105382 164032927 846412455 63525874 307014938 102565020 898967419 479075710 574637481 257783528 229358558 723834495 934934131 640167452 982558426 157428033 159256963 672757665 160157704 227959244 299183346 942082901 580225584 251517661 908607439 238130442 852395930 699405090 852880891 662247861 868984420 251088917 509020232 322615522 756443400 216104517 212540699 62858061 479542900 686443602 726288686 560634404 991489634 742178263 884918882 194626868 609114155 727348968 3153018 606728849 922680738 232036356 540471499 405848070 796715952 913652821 479431697 694413503 510955820 440162747 406852850 287123949 821789090 770118892 142425758 705532738 257291046 754764104 808343719 272019390 646280209 702658596 323578413 525028734 505636615 540409012 103158355 688562298 548606430 628055224 272872992 191501018 231728656 271420196 655646572 278180731 546030502 191365789 18299070 525230419 296417935 397117432 727515219 28978746 95166752 209435141 3598514 600644063 787732 58361280 756592058 412797086 119753925 877210023 550664967 351929350 732410107 722195285 939012188 796482215 924753140 109879931 767044637 669571528 765410962 328774139 84343819 994912721 373355998 167003901 330595355 488658053 815194022 584878583 45579477 848265106 822301475 720212835 815358503 281115321 770666114 376927434 475766920 891290140 496995706 817355086 187054419 697770483 514424072 654936577 952129413 492415731 983340129 84303730 347017081 19426303 551796395 785345169 29956327 587395181 158743109 872877008 824202012 501417746 404258335 658960644 153480996 463456547 386587977 640229948 452321338 823902201 127040834 742423194 126654979 158330706 444306267 410081995 3891640 543057064 910991316 238704738 174865399 511819699 726573069 285436031 907097767 897775846 210931535 483238348 282224107 780015335 963082036 424772241 149716251 388959885 408435518 828498163 921551072 267810544 450545609 336939009 920677120 128579085 440641156 602037396 697237113 833913508 645559647 529990929 614249059 661426747 599396156 996168867 967281286 504484087 143797032 156702098 133126717 491527632 127021681 319589901 24453692 513086257 491356043 568072783 851688953 350973717 600887261 925608691 612434465 439726072 434285936 388830861 935737595 994313480 229672390 230618995 202443339 92221102 568127770 834865740 844765683 916629311 81975427 472220759 750472517 11216627 996078185 677446669 143214298 216136036 45696719 264272105 264396171 720720582 716260130 349169018 825701951 943957323 919557357 388334726 512782583 775388371 439945126 592217523 731752848 267899678 375343860 750957972 197963739 594391002 692856201 666804423 644070543 126673657 462420265 867327839 946032243 498640073 485603157 559592470 324326939 322274136 101058268 701711986 871665632 281390203 88038556 971292434 150888332 936339972 505590101 688412312 820612932 713636487 858692852 725162838 118161028 528564522 824250298 261935 843172714 356968454 755265430 333521309 106984762 207240897 787905199 908694279 240576665 42681387 417614520 735035283 556087844 826996392 997441049 445927409 403032670 954785983 360878780 466620025 989089578 676714157 345873859 628913787 831980692 839783093 693607344 713655978 545330700 651548845 142428776 208480936 884375240 898501844 420672032 348419063 429976833 677329840 933129088 478619467 23208384 153724554 751733332 892559471 318543549 392664470 429697477 388345002 429671245 177651703 487827479 776129555 992783929 886703011 986870549 23695160 606297436 331717445 801674648 2949010 996455424 70595837 90214061 130276637 572938568 606646925 856312391 548724043 278697791 895959110 626007879 939881222 613161624 792917244 972741045 451795402 861340608 888834934 585709906 999093104 892942624 777917872 870107045 186869230 282478151 759637927 754458063 944149974 924116178 641328781 206417727 680959268 566926941 310892094 734970650 786355017 889688632 439633318 14209532 812143076 23612221 712460983 796353301 964830733 771865721 991447582 534370206 824724191 632050872 624980985 137361561 482803081 579982984 852533849 113044807 300446836 768429926 416459459 419319173 210198205 37960716 707728285 771219416 588038796 868590527 317965873 4668855 49338489 806999194 837032432 762276543 348583693 277600345 447730763 173877624 596522555 330856311 111494419 653325865 955158400 414870079 27695224 259916880 526222633 44997574 473485527 468080365 680414717 220300099 629480885 47061146 832704947 429797263 413649398 226807444 668717895 748162733 259794929 843613808 236698728 381854451 8328154 318268848 620806466 190078514 541208856 836600859 133360141 39493751 547850755 798372428 897404089 70765630 319132760 83412899 85337117 77498796 764089552 767043810 19708711 719925812 182928212 185682 795420977 195390024 115289485 192325006 211188472 959968193 544936839 894102981 33170922 841329329 637042528 747391766 510344161 225781302 581720324 284098161 559819524 812585983 244075046 806007154 391107718 829406492 653868087 576653880 469540735 627452553 5086615 450991906 540724811 710936321 586729466 121206610 548203222 199128145 934591915 150894582 359570477 179949517 32356889 603954771 375973905 993647595 290218962 266343087 207811491 161231514 664034673 248610926 927249828 169868207 496125563 45838970 392213662 312115262 738763930 732773324 48235671 904279063 734379360 295738620 286827878 58699647 642290509 588754363 201489192 587701069 705942737 269865524 366041479 249222365 333535708 382730300 405942044 104245299 439932648 467718004 552228585 290807137 179172305 453158396 106926887 208696957 439835833 222880531 864401080 131996716 178819796 997428556 483640993 652611675 699643048 552161739 30295976 166172429 915044061 386352435 3610180 562850280 670087156 752041249 145472451 529645384 184041554 88657691 868871141 689167593 608432815 440096757 256355786 466281410 323708947 662022364 293017200 962986377 257107204 26211950 422994608 190016184 772580224 589427866 38576115 109111907 949749908 34205365 609589679 775900331 567060702 741341429 347382933 999906557 885539435 657381953 573389101 580996323 673716355 358719650 952112673 815204146 808790486 575213115 985900122 196495503 330285214 198643697 216719140 107904066 664968426 767782150 750675385 803724553 638618376 832155336 561069743 50929261 451647831 957982658 38252003 117902371 360397436 224164526 17103219 550405706 518554505 774015180 472927011 547501660 434104723 387637347 501506328 798566307 586596329 891996057 737379903 996140469 397657058 565564653 644515870 793116127 168930170 850142108 128641617 292072363 642785717 58265115 288644226 508822725 215687719 98684239 739762061 457702917 107531090 246188484 35189841 6377901 930940363 992523618 166889689 721506704 962677265 450550229 14662003 508963791 5822108 27371939 71191187 385757898 600098986 797058254 483505205 157545707 250416047 497037902 857627526 201413756 546458366 4689353 240805337 654018296 125971205 545939077 116151495 794231682 145548618 175466161 783852288 121284462 450361186 965185369 445301124 472594298 187268474 87319495 598908944 496370963 611263669 449313321 423449277 968694955 142325104 392819746 628057621 105661812 628459051 829546565 55113218 183164761 805164068 584185973 751100380 606536167 61138098 840113061 639109737 161490644 295294838 321045436 646922816 403897750 863158435 293985797 358315303 261949154 477762728 738405295 263268499 20418393 136312611 807348631 642969782 405527780 136801449 63783455 883010705 497971334 60612462 217464744 817676850 304141194 467456001 804398241 36757010 276266262 298416235 201065765 12877191 768204920 541528683 524153299 569235913 577705038 16279374 957484234 267339399 182771469 360360666 417181255 951426115 53549724 614256 219892686 767058050 204677350 602279351 519462709 539873226 713179797 345550820 944616505 793453182 865327225 167050401 186103896 730533237 890002160 466837959 928568421 666032598 769445360 450761027 778338485 725235113 944313429 481249997 738558390 950859693 459126943 350327430 489070078 673113783 244219966 737078251 930324189 83714172 351552441 662161632 41396983 261641772 212007952 622730114 610697227 174944397 641934642 525808869 922659786 852868449 813026642 154126989 926115110 284947081 955364417 458182391 788348258 356955305 442641984 243122194 376709293 458100333 74752190 361677006 796801945 828030897 464710980 329383966 349584642 19505701 153638670 69404249 353763482 185011791 865832770 537466344 64658150 306691063 773718639 111862275 984837242 775343225 566182039 683892551 535704850 444592469 812906188 802959097 206221185 154281666 644299078 420850273 445733985 665212992 867081205 525620034 83909491 894182027 181089017 569904199 29324526 160185839 859771239 626327565 91882534 956769739 261285664 428129623 441331529 917617190 711257848 439563694 397828350 888157402 599891640 18600276 195483775 931575157 675586396 386356470 826282163 539506246 746414070 55331013 29962618 672881140 694084885 264091596 784724072 157857811 901190387 974466758 327518833 346019464 857782871 789624610 830403701 832167674 699962261 893921124 274211512 844892628 489266560 430995429 31112290 102286954 871223315 403401053 976291826 728135967 548196825 913011251 674668444 295523698 292874262 925223171 635238528 145725722 911737090 22327934 981836543 26763732 667158915 677886569 939066181 815253149 911584837 612465588 63429266 415220717 660784266 581163395 270462843 1525259 308404518 309138600 151619365 979419181 722763181 767042337 11164740 506895617 670394748 778274849 344831819 462382531 816771270 630553840 859830776 261786063 665886773 410534461 358970657 764947589 794685522 736379586 866581686 50106869 22150839 837202362 184133152 204697561 768111177 722059257 630514787 511822778 153935040 60404527 147766111 112244934 761646972 899217824 987254299 619459367 48108 161172375 526401445 622812719 380773478 183243664 1791783 587218163 385865541 250287500 511557663 244693281 525791061 340938977 78736327 480199586 342468045 413613539 185167294 401910840 539031599 148883122 455532956 215748245 259774766 673064436 749820727 909749839 96580547 706285112 238658249 112934684 592812894 696442223 12538150 121015270 525990830 783142427 228208513 711749895 128475375 839231951 759114984 671656107 60745311 375958673 85894815 223688027 65502013 869369146 138014935 647627848 64281629 765502754 506318837 536275984 153507164 977212848 853591433 861775721 81336892 642485343 684041941 223028261 654900221 395995649 710647343 864387822 255339461 714170295 229709993 937336787 933219481 25779090 81970358 911977533 628674313 54257816 374169031 309103647 580100082 69744325 368286875 95907633 189782178 517496160 24591009 42357917 911896945 490476492 160896381 556137358 259680416 426667489 592464703 373475833 233970509 829460338 659858783 696806622 54379112 704340794 364755643 238146121 150679398 251427588 35413426 734750847 188141003 126029251 324250487 556680938 779092875 821631836 386504719 255027072 436622040 785164761 926368102 879450118 228944040 757039089 588233144 914927157 969383301 484628556 140666488 30269173 758683949 383539278 484292664 839613820 835774546 19995240 489355585 716339090 870229441 803853982 308458088 752312740 157828240 874333969 904163131 906922285 558029599 418594456 131146678 257584454 453716873 674129198 493249403 654193323 606272265 306693965 816383170 174378449 133372598 677709655 73768329 204409865 544662950 366162756 647131380 528917293 392272321 22795213 109445717 443675590 863019353 402119875 586496835 717911872 272192152 822989937 170998167 363173487 653607003 634472101 60693728 802239229 879291251 989558003 909255686 710930597 343585529 295205884 149476085 497515647 537909784 948675354 629424125 288485711 335636667 651474705 179310777 18960743 111396442 613688199 731764718 556658425 786182337 924101191 500806903 160010141 902893721 890546534 795936871 938300801 928469581 296467684 997624672 540846469 651341834 367624955 685353419 220692103 901395978 570475943 38890279 972478646 741599116 864300038 767848628 345176786 576664635 590932346 216849484 124609533 646639317 565091802 701068162 965380141 752546865 772150872 531346916 290843270 167251872 985783665 91824614 87666523 752155138 581806911 300909085 404535726 16128465 561024717 456960354 270969622 861286028 696673321 663509880 840895085 560382612 565859122 139242708 174256388 691109116 43951177 787704960 979281214 710062701 254339330 978384669 499596616 212551621 747207688 642878951 899447892 374605630 712745613 432447356 563360788 554416801 925898497 351921737 636565269 307078756 425534596 555759343 712944269 754807623 289891677 631353098 734750983 829282073 931192141 365999328 367630045 31986039 369231327 201770367 286457547 428114411 491192771 429888353 916289473 907527913 544420490 491667018 538416528 867186494 534844245 20280948 366690995 399681281 851403440 509870850 684507606 14297951 238116060 724289320 841914319 600309824 80410869 843036522 824215596 236176311 353929069 326863756 972159795 90529353 834496526 109299748 333645944 597790395 700134568 395548174 100482536 516206789 44435364 197212513 606284221 346625985 969099935 288832083 714073441 821219209 161444821 758492126 896443638 676134396 599864971 571803788 955785424 422854170 726939840 906747932 159428122 942166160 824229814 637648445 452725379 107640081 341848739 623056578 242052298 481252552 904248927 938968684 112140535 13201065 402500596 886759376 525032113 903499765 925557076 462909289 836343881 70923997 810441759 87608607 226910154 434817960 144088152 426586677 228442075 678271121 408548393 257261714 512706645 496280320 867493199 497655972 81448865 419164263 410652726 422944360 464068678 22804166 560942422 963031694 107413457 239226153 937456112 510147211 982083796 970461133 500163934 304620065 44312003 773608718 423337491 292478953 44268158 303433270 607429909 178134251 612447419 688365046 256315427 776327759 693899836 293275145 685011939 93497090 71062061 133316609 366706049 320481179 524950494 710019785 274762776 915069402 913686656 715022832 232736818 699392696 3270346 798882641 737855324 492049829 941555077 196948605 598441196 313415639 138177417 243183662 756037987 761215117 622449732 609188468 6275097 212020397 610164399 209302927 48028460 954098956 495827683 237071884 33551605 197353637 471414208 750928164 96984427 287811263 866570142 665558186 345078871 674228229 833800507 928636414 607001831 225441317 540824066 218850822 549295625 433516160 29399246 616787506 306627479 845232221 775605898 800627963 930544042 645081471 611922588 576848047 609962378 870894725 764091127 652038307 607718351 909450732 376858131 463641054 821306914 525788083 353624750 652986931 107931201 771427701 264733114 18985111 275728888 578625848 172794565 719822764 458764208 307654332 567699266 933405470 358858088 851100490 774511280 467541693 716925622 358078386 435501207 889400019 553777880 56605322 42372166 767286303 801497765 374742332 677854441 989915320 820552320 324576678 742859755 565366354 122689383 120113734 690232046 12265535 213376886 576379687 362133483 68570590 10917573 873364940 331156859 169293175 140882809 901971855 125262416 448557092 183497295 838290775 798465245 632905939 399857064 865339710 501644624 871928579 204854228 548961210 580895679 886285580 276833911 472359846 538754560 765881728 632857429 427968703 194032004 910339848 437367503 769329212 776574007 82630228 697221790 556857783 231211065 885018988 178215980 624673203 202424501 698792640 169448278 684357778 707579266 987980010 765577946 173075731 617195672 56866251 10152692 585825943 43316711 118285444 646195625 470830723 362435519 663802746 636425016 663406455 345981401 7487993 812486317 915804806 431979852 852596607 338405721 468259693 604722614 425853052 813967277 52694812 39858600 111757344 811998012 755825061 122671446 129060226 301353567 884546869 195981955 120546435 45428825 121940320 869998365 61417238 340216387 601062191 515843557 322472239 979017644 512700341 8071314 656011400 703473271 630244248 176669322 470345943 775727141 108848171 858837377 548798551 651232454 545043347 810648326 278267820 918978549 483309860 501996485 961329605 401078988 905251453 694462245 938155605 107450023 160711848 875099015 254187571 509224495 677564667 674269015 138683777 53905426 368154065 64905532 637728133 569723114 626436291 902650160 878395492 560184680 140175248 646984015 332904215 183312545 992205357 287170034 342890576 720860625 54894593 982768910 654372380 702154476 587575003 946764719 749556115 228631672 800622746 63615317 84875760 991665605 188569973 829167943 128052839 887040923 642718615 351460254 482562527 939035249 787023008 978065120 154314491 200222810 194980186 536513876 501882796 133481564 216738872 262132792 797952906 80285273 293797174 493339428 145153244 460687680 445236104 345678331 89060951 119942772 54783086 160022430 950184212 146934814 6703489 429700798 314311253 439286340 884658558 427471216 64484608 899322117 766080662 54398974 988295292 943188084 236484070 662323011 86999158 566444139 927740256 305826856 544739289 909684238 781512396 339677361 587320106 884874657 931500115 235551719 70017127 516740409 650274015 695166734 451975167 396881605 747296575 20298655 998552575 840862485 544209142 768866670 780930301 615601200 712711419 941532282 288400271 464002453 810956616 348481167 495288410 457891247 766025778 169015145 395716789 135039371 397334027 641206592 206167262 37444137 187265498 87241944 259034020 423376094 1275036 583849326 381249421 90007427 977773474 902464278 681939999 544640987 142738708 814341591 692914341 113300172 874228149 328794353 309343876 793021346 326906875 364964099 580651136 360030256 393061949 104511767 577103962 849248073 636703845 282435930 12359255 812579685 942304936 110883677 650663371 841668962 682188912 686550691 310575868 497824883 354897044 236294436 232798064 370683442 426257096 886929666 131743049 831743866 211436892 114988065 58799871 899013189 562745795 433772503 126407785 376411593 774690601 46923100 726743951 835885024 220241997 244225086 382839773 7544740 324830553 79981908 758345695 474882724 104496012 557734421 690375839 303503468 880201133 332153827 465207743 595647196 740117186 306893071 484097688 790816987 417017603 455167459 223456870 214214174 961779485 665931776 940026882 61238245 525170459 65662179 158006162 823812000 187225158 58868818 687284861 303225457 263089468 34417815 252073370 379147187 899815569 656173979 643966882 381678827 71430708 69336081 278992501 342283429 300661663 689938174 10171737 665880521 747167451 997839942 947672769 35518643 974242809 63692099 496428864 921201116 488541050 787147357 532324376 590761305 173551700 424507376 807978762 445028249 72948859 711797233 533931092 539326688 564370493 48083256 671595844 730740207 554669584 110353241 708979460 96777207 566760243 564502853 299092029 842654847 181417877 361038007 248377609 640633469 931033729 389779916 825722335 307276964 191803180 361387271 922734618 85171337 819805611 172049069 380219312 922928034 304310544 63584243 116927740 613799561 389821216 288430814 78988923 551543677 964791201 820281137 465147548 779588271 237983539 872972369 222858548 512664525 197091972 74003272 348689330 839229987 310494489 555866281 378735669 386895753 27538359 91693301 336790613 417360054 349284499 852070047 885583392 578347842 70654926 495669077 619475248 679586296 500170180 548256983 654274409 113891084 637955535 462560734 759606482 537263440 670312498 949242094 915802609 602501168 210574341 134304404 431368478 620426258 661466020 975403078 244468669 289950198 23722763 880920893 745508045 364234451 634350630 958422822 384890306 720107957 764867022 799775641 748061376 181609159 846285151 303245488 685220181 423146073 481344009 754940862 971068394 292191907 74928114 608263092 525359859 396183305 368123655 784721270 942183907 728558541 202651354 625204609 135816514 303617996 102978170 899156848 478643305 730860887 59676203 766815047 426222899 320762109 257059744 527210106 77736695 858340980 927437440 293170182 415422330 776680199 119432444 544632500 142819702 177333464 563308915 560539531 121404938 456850155 451323478 565079054 536078870 33167929 488304462 143656464 24891755 178638841 333926092 206347883 65073280 352427980 150962364 355601574 546969735 315310921 952233824 600709503 532902922 478969192 748192225 462021526 735838906 130801702 504161927 105628473 112394096 483468896 234574334 184451076 906483136 205291270 578761993 784437342 457737188 613947618 561783236 752710282 112910777 286643451 243076067 517391982 896344968 871447859 308960231 710163278 901542775 45497960 132957337 113645377 765797625 711471812 203783221 558825797 518574878 84357657 710582844 416224428 820634368 973961688 17127970 226758254 773078909 451839899 905579853 667183350 426109909 668411022 499853089 552270045 198540822 775841131 724678715 460409567 1861975 874878866 41158817 118963866 185550508 278821362 222116362 892058396 312381400 593706702 510502726 996128388 381833054 524592325 209275475 999118390 561394756 555872861 479454585 140314669 63056847 809753062 337985050 461147186 425085198 560086614 954382036 426296552 933214050 153975134 342159376 312909291 346792945 644813256 447654865 174181670 915394906 527575149 753909745 242345565 225869670 998604883 756241570 834008460 859476385 876281220 481183733 725088080 516556198 236534039 726331275 295314153 616408779 438795548 327953505 92234313 706797365 40567749 486381291 213063513 860870249 475149821 985135841 637747701 804224925 137060427 603884960 568209977 234730202 623955086 80600928 786877846 644483811 308278306 808627967 147240954 582830558 960581255 574206785 78795991 327356006 706977899 571455176 667267754 391637001 635733571 96072853 595668516 850551528 963605473 158435168 826301641 801892793 79664084 507932522 154406315 903156054 336677604 410002651 365763429 659673750 301382785 585817466 970284049 967574087 989917154 53971728 521837664 463379715 977581102 895546187 565177149 73553956 164632823 71554745 52881462 264117088 151874378 560798514 917193362 929755918 63625478 874422959 470013406 201341156 610619694 781175203 843156657 758322221 2271382 415992092 738277453 234280352 19526108 347883357 91858371 789222946 438939433 529579517 837688153 309182270 139982377 840851001 391960319 49526843 33530006 769878457 113640868 542857826 49386731 464002049 68945866 693173063 348687940 582983653 524767542 85422949 384328347 596841091 332820501 236582350 818387536 214750892 887778946 400975845 727176860 211215131 1474879 51348763 644467342 288555752 479766299 292545082 268619051 548984866 598421634 591750028 497473367 560652677 982023284 86241543 888641463 185081200 166267911 865858264 377317478 677735243 678021655 488874659 130466983 552280552 628943147 791177562 569858671 802545487 258344655 598100521 788250620 904068051 716205258 649618753 771539449 193449472 740115686 260491424 676035873 49460762 622534496 593544079 37978842 569514789 181161155 134417800 288036615 347531515 517406271 59928870 49941247 755871328 342997492 282757446 847069915 469555560 510672346 65572830 928124816 286067819 193206075 352449566 489350378 292417321 654580405 767202782 248400228 687588043 657731147 302150594 617463422 343448324 964964332 695574197 115532515 724960221 887153779 807515442 100165430 945716901 736050609 643120782 54492844 677332233 390410194 861046545 386300596 714298902 838960634 963522286 308783704 840724188 669409923 780351410 277638498 36562970 377721788 880530051 539172424 105175708 977102224 191982740 619687072 743294941 119370758 185441510 42902025 572367170 147977658 847599485 3483253 99284462 715336776 678522219 311000040 95590919 307417697 296668018 266127629 424069941 367289546 570509081 199237663 509430992 614339993 650420509 265837479 31909419 537929969 278410829 46938802 970609963 810347924 306713105 60486395 956696942 290656412 678029472 538101595 247301461 324050664 260925477 617933314 664375228 874960112 92523529 739222788 892006919 421430449 535345132 543461463 194247215 171368924 389647782 492271279 774167364 81980557 251180403 777050389 942513263 908830513 525295496 932789924 623426417 702862976 551870640 558484113 961837136 660811556 74214926 956586077 150060695 680208067 621856945 578927949 537802752 576129456 456516149 419368193 320505121 711537021 361359325 220524869 463892704 509741038 577227635 504642142 436634282 449250755 99546742 397665927 662788372 34974513 901413728 673750607 835889772 515499097 531815583 909960652 410979321 610634228 913682547 83486086 20993307 211479072 164015517 400805148 181932007 610444759 127294834 271932028 782583442 205511954 679310505 262418991 887281508 795982591 305507576 39540967 925494949 504024040 410402415 658627361 365369777 884899368 979295122 254974060 427146278 854088808 238387320 698973721 601828100 572626061 46821816 987533427 538828215 568470923 70897612 119761643 200131855 960591944 595905759 807746408 451065318 578981565 703218875 627232559 915809105 683794222 363445016 81638982 265930950 833540884 466917354 3214964 423830640 910134871 44557200 451353563 532286396 302989173 636631433 949482080 859610996 535451740 797601704 595859868 528510156 792570626 355227224 413119927 136353788 192570642 721677886 888691529 993118250 379841168 382446245 101301160 548768504 293372717 584144440 418988620 689651362 184091815 35174279 738145660 478228345 891294750 294180635 847465362 457863431 33703678 640618948 6832477 966401012 657882358 316930445 239973831 546599995 138620864 171977179 886853199 170249668 360336782 173244449 588368537 267066207 206404924 874343319 530538160 948975700 715002405 491495824 476471428 305490288 201836918 598977740 903446524 332488208 348804610 632180617 664277466 627830800 875760289 918512507 609568335 196939240 918351684 236104311 748419878 215915066 739219510 231828254 21495940 973703353 528169038 62607494 325534995 470642460 273140779 469485310 855877413 584051624 107807887 450536680 485174906 108316390 609514101 305888477 31676299 524905593 615535247 415058435 451843794 339023663 400532336 212163752 244585337 354358019 789828880 910173841 576736660 496484020 372408310 961793262 66947553 948420601 424759157 683072143 185844312 232688174 632783738 597760532 893694668 967541431 706145613 176840724 609081433 581501812 425391625 289496367 664802915 270057783 481087124 820320743 692208133 54087512 729205783 45252596 21022387 695316529 994900240 463677191 439801739 903828457 115061702 251728667 958790750 818439749 243307676 773774427 50125677 319442455 750101632 848607776 702598986 695203517 40287694 307849230 976982373 676339985 328335415 844618178 402389817 230174469 160262995 487343737 628332801 998943824 627264436 928882182 17242032 543705884 518503769 344531672 136500897 940543851 281768093 27680649 353665649 402400389 712420750 786039623 989648741 270228529 902732448 815962058 312396770 12939516 351055222 866675128 733944227 171921729 471475460 309278215 111552188 238991032 538572155 696437144 755311845 685061063 144789556 859592631 863148164 421854292 40180072 286403857 636325780 63844954 792832969 392452316 723330567 54181180 843508564 448650589 810701287 688609513 496234674 739363046 517722126 633393392 874497247 385675646 96301619 202321865 494511487 188888988 927513133 175783027 660898860 207675293 9141626 40045421 847678072 77010267 299664317 85008828 24533729 214849112 765067569 100051758 131823449 397377135 737156035 959825574 403925618 152048241 259760094 484021288 593735346 530641052 863100577 494770268 427227189 186770136 252081626 165344876 427916438 935360138 893987394 803980727 600751139 282013858 511134490 807131675 495165938 323054573 335706038 632867582 178460118 891847033 637863348 798532398 922440867 862196243 833569410 296909786 367241016 470620886 206650483 941821192 846007914 41242462 122366241 161701142 700137049 29046015 41862946 560823004 763718668 225984466 592470688 974392716 836190067 173003269 562618339 7008693 204736177 307337921 151653956 523910834 852958967 118127385 339781186 869961120 458914930 570484486 257436660 736240595 249305730 777794821 170837975 206883958 433930704 619771644 483775070 776988926 502056584 447946262 663369026 451528941 568075951 359286046 532985560 304973989 850926446 805101329 121312458 181134151 822785201 68629246 55102302 269635973 603933588 719587851 936288348 32170716 814300609 878406426 759458260 391109963 459353928 641430400 487834947 12929523 981146584 525471559 817974461 235651711 271814105 507909269 246176571 520031845 283057649 514292995 61573427 992460399 935584549 524693104 365618493 316121421 131550757 385243783 887218091 379044018 134552056 714100302 433519034 800551227 406569895 761439266 472629590 714373874 966370343 558661129 745561990 994464957 565626983 840971012 136674899 620166647 313854011 736660145 13540139 999412538 546500786 438171345 98493294 499549201 667382128 684570463 134995189 195383895 753278933 401449135 152424487 549012977 941278534 302198707 236389725 658109547 110370287 133990567 507603081 539899732 100023943 109645939 645644807 760320399 634982039 8225679 220931270 620783598 623208227 25601547 248919252 565501163 557754114 187185671 836232784 841898725 789510015 165100504 846282526 901222691 224182528 172557878 870329531 586573338 665153591 621596823 249955327 673004695 40758171 505516794 550859263 547116256 521237606 347897660 80027817 567872137 406126058 894072883 175748322 790066600 620418381 388080618 136982761 339381345 809396437 623711584 242063121 437973210 986303579 905345480 389127034 552923987 371580158 600946739 462619232 402058236 603015 659888862 907575493 837704578 31408315 840396303 916214794 51470788 773187867 915417740 403272586 297006937 849564619 884028841 786701333 696241318 199475763 774258801 87071903 551893007 991382789 571181549 665791749 640746700 910967514 173812251 460276165 808019671 682551908 303050724 829995896 92038020 642183032 803083339 169512222 828635655 529543447 126093690 397283789 338981719 344381995 454048644 169504879 516581157 269276083 438386827 65980729 937580605 535809878 649552851 159821167 228472379 5751526 801153712 464904166 702014884 408629602 415187097 139143446 702308106 571167124 130844711 544263005 935828834 639959081 526433357 929045217 758053238 249627232 552807466 637721182 696465259 82514631 801597886 136171830 958274468 441702659 969342717 241942581 350139498 626904531 964173265 722776229 646853008 480884361 913069528 299792578 888657237 355473964 161962251 491715603 600377499 74278252 426501715 529794716 915853159 527987593 18998890 993077014 849022828 833656068 143873121 710357835 368104504 865862307 887596066 712225730 708242630 941503294 316642125 237724770 523381412 449774859 195709336 953434543 539056834 107292427 347874708 940995604 962657205 70443580 355846228 806424087 530578837 421555167 993452741 28202173 719602183 564394824 211038657 695370963 819415835 514645520 309611631 73142658 172850103 344473200 729575882 39423731 793926704 836993388 813378969 713742505 149787185 835939761 698558426 672029237 862605745 652432203 184804496 997268551 13543421 409667128 454388767 730441666 858959255 715614852 906252448 781327121 274999782 395947239 823319036 334844231 626756995 247515481 391851606 946252115 607577692 185311043 980144019 452351822 765899971 714272541 848644469 807496648 595854973 511241841 110207470 27978308 999197904 876836341 120254827 867105652 753422219 894428185 589090799 377944568 787179896 195611896 947965336 182381148 37256709 784866436 610740246 133708220 457190326 661037146 511054335 102731098 366954537 287946814 541685884 935005546 176604156 767105888 553661469 352757416 731178483 726867768 957031291 934307666 282011297 77780818 131430523 580345750 268315733 722969837 388912695 165953475 960190410 380104627 268624816 444753172 909656327 609866276 86045841 647649755 441591789 566495007 231676685 484492252 96391588 300907275 716081965 951799021 347474118 432509776 469447840 669525954 583838832 734879068 273169266 739591216 999378463 747185381 314277927 306943270 961791992 48383586 249275552 445255111 799810688 916963335 648821572 211213137 81420139 696596918 590713362 912198750 200524270 384483491 540314104 96723447 845962442 126362235 655970362 323326069 14559293 235192504 322753777 827230800 495831747 175505765 22219063 220526798 435951134 955579589 529677303 91084365 414060766 275605626 524324653 929489739 518397532 745549862 320891657 122791014 273953114 689844812 462055530 651959182 881829091 465389556 94182191 743584412 697437183 714335171 82008981 508333807 769531393 283329922 461959670 325531182 402707482 472631556 806605680 743088211 726083216 157003894 821583440 812721816 54036770 126793193 911444761 430221770 630793910 930880650 768236013 458044663 918238454 981237006 566310665 104605484 642719975 437924879 588596489 566419391 967589967 689687921 980357008 460797589 726667283 712609021 53976009 835773311 386949147 240429407 219494291 924215757 800852145 44866126 730153731 792619397 780389770 939613364 326574793 508800703 99544552 993872320 804306077 91898430 594478858 482606729 916815880 717197692 600283573 314879765 713861479 404909886 659827370 871708011 377850366 734190921 446181356 281730116 678224167 677285697 161664696 176740179 495948191 140812137 511504499 718242049 891625152 596037608 38572572 762186073 730934564 610793779 589812035 453836609 281591791 619740841 886625571 206583914 159389690 687539031 11341136 688167919 433107503 610730198 724796566 772912925 338767392 407146861 895291571 961951722 484623681 71815663 804118881 65885005 453415415 227550740 620043685 1354064 151256572 194087468 654621399 382691083 925230703 682321280 308240384 245992626 643869138 151659709 807136097 121484046 436994215 707845013 149283273 743020607 533042992 610567336 409599155 789536518 181033287 719132251 624384127 554456052 258351046 132586640 525312135 288371100 841954239 937980776 336738934 756086142 356036672 332187245 453334259 535769296 225004894 231648409 198701932 913758342 448682707 588048395 547215914 469522549 421496005 287192829 554717929 568329102 12771911 412363239 814885860 633071605 740169544 608409879 494452700 747661041 53765662 19876046 412657337 667218993 532553687 623526848 736006966 815801098 401302183 621071228 694021435 551935529 556752011 430351170 108826774 60582347 159785194 162888999 452680768 588894851 905287197 999439778 158655397 948369468 985118194 498072323 158759800 550001635 411912875 612610635 960739538 382702685 806623593 506683544 790100036 262154256 323925634 312159752 25520260 823247769 413570669 862046853 835501360 94621229 223884746 847277596 937988967 580057927 746821066 159295297 304710831 72043106 435340134 135602078 791687193 499955990 791046200 206911746 318668458 819005106 757867490 467725188 320624698 652635685 374420959 593078411 255849215 467090861 60972521 989223948 300585259 689512108 427519424 636988997 954415917 298673006 970326124 706008596 334640781 47717545 30096314 705385323 705604763 66548741 324745932 694140997 562923364 893859266 897451182 40617524 907928766 534422925 480075250 203479624 25553452 860665059 127498975 497357121 959839416 333837261 996899951 970090953 212614893 306987561 28498165 211351981 319904586 953104888 239809987 134049388 661202199 256183797 296907132 144047143 384446093 478905000 27307461 384444844 822214970 753761953 57484214 839311132 20075304 236611463 789013163 677871545 446281668 600218270 60128547 280714648 254761515 194181244 407006425 144026321 447714962 883431213 891456391 453123954 163654755 162928764 331844048 514423407 313814238 821127114 878722407 926416766 769633413 824311765 173257724 598994555 473747988 687119677 839288963 110269564 416054898 637667032 909485073 869258860 850329765 885298361 634806921 655283084 408455600 568468938 936049361 281679946 296965916 313090674 723193027 407300669 391575107 320511912 994721567 599976606 743635117 495436251 967239217 718818395 312839779 553213678 114338567 923756729 903976509 844122362 754374271 250541277 111407794 26822141 240094557 914842195 298421239 485025544 372143328 553565484 198504108 229074897 832592288 284082903 172024048 514938790 549430906 814174061 656553814 23836910 228654568 889663689 921199014 308622967 981817651 379141715 491216613 525390852 917489811 936005656 916334315 418050823 102117096 896333799 119472457 782282076 939383898 804435393 292589882 214645295 211098066 313108927 446322971 785309669 665523751 105790607 654755622 955893745 241080356 170382018 18639952 989822663 502467212 564131737 26317833 822919170 456118986 49105127 506454796 624842802 12315352 101602899 601725975 619255285 184230061 318695591 746904913 824812564 398718091 409306908 288515657 158939715 179750495 406910967 148160728 60988958 374908338 870199640 253316280 658735942 274049430 735409870 809335132 198571066 316643813 918703488 303433452 338082809 296948567 811498473 814985660 784084341 6175183 560094029 82314645 22093468 792227710 571177842 19287345 667294058 715286284 221337269 436139101 591510301 387542621 274310077 748070201 127145366 897260481 277727372 406390778 578801912 222692972 186036935 657305928 354379416 713094407 422783249 631849767 297387612 5436540 772781672 431613843 329721836 765607457 557799085 354472663 403522546 952126601 28632989 105173072 546547710 602605561 208917412 512590241 167639711 380535285 964694232 808037099 917575179 930268872 892656790 721871214 479571831 639052526 149428447 610273625 280527581 684590320 777092130 170767906 377093786 790512102 748349799 374070544 967820266 598540744 479071224 914280529 46512406 837951945 63611616 895348347 312991584 112064329 230781278 678051552 847510758 552314223 200088068 180279149 508272010 240047529 181741631 61216548 596012202 342861684 860886760 339438257 514357557 107355313 51802258 914274571 866611731 428404969 807888052 899003518 426966789 305906673 562159897 778139828 360714726 276058742 958554772 332155805 127158684 528533337 380246779 615768192 421770711 87553438 911081183 791864652 92251528 415260399 460897866 672615942 954542811 729366420 540107591 747941438 706126179 773801760 924234984 550606983 44774640 733375518 151906799 173581061 549267954 945062872 678718293 630886417 49528032 148628215 506910665 747893647 941880973 215941677 457131906 932821272 66248016 464946548 962544791 267934861 957950748 507946032 779373810 855229532 334744155 733032730 236945 484610512 263777048 713847343 701001867 183550193 359107955 89492023 93525285 783302713 103516880 766711245 143313825 893194901 579324508 367199706 273272600 392236306 407160589 850833629 826818035 713918337 13087412 807554544 600854317 271964076 317767009 998426297 346607980 21882276 85497762 356969277 354313586 891769741 539662300 527326135 705232529 865916213 632887126 89340626 177531443 840571094 525571883 775218494 591268315 327030014 841102118 672674163 889989402 227501669 844696935 108692325 8050321 694396952 863112594 968264780 261628907 554992197 279725672 617449766 709416669 89599139 804081770 701749376 920846057 248611014 836914756 236065037 605611022 586742068 630735613 326195085 946376948 787970824 346560467 382765102 534412799 20900881 867691487 743619175 351023887 488595378 857759396 392037329 788650208 45446313 271915291 741271401 780333306 137842896 563687253 165931494 138826445 415346522 206874755 815433880 543529847 424519345 266321978 133598258 274265521 771214066 585444638 745001827 799635781 874030706 274651433 426618094 313700394 643221099 943393282 155445560 408075066 917020474 616877456 202330106 898981468 255471273 71543131 182559451 947142566 567434322 586904227 11684396 31817438 321252504 704061173 445433952 880380086 781400424 185036747 597084380 132976354 442071904 891986667 86468298 206976321 710675888 653628447 792205651 252168502 780397303 426510696 41088415 283259047 252608490 84092199 432090716 94739953 686376595 469919389 290697233 228617301 842546284 308751005 949462492 648091933 30295113 532169347 591702560 94942399 800067780 745844499 161666562 895757603 18831359 184792021 347113931 293598753 321379794 622380539 734865617 732859046 301894485 55323464 853400774 694067462 713219469 519495671 646224358 598811638 145404155 501957194 378971573 909594308 238617701 669950091 900251593 744464370 465652856 239663262 850778190 853279779 8987363 788031503 554832768 397381245 891956794 764657545 679694930 731855255 628256584 249479218 168920512 682641119 692359522 333775069 456612373 335802458 753313036 369273411 551881139 548357685 973299635 936114393 159722629 607140820 136066413 393991458 639392070 597656911 219452915 463884424 433323569 516370625 205779538 23593239 591859252 630196918 967593136 648463723 64021489 729126608 542370235 618336821 373814258 479643150 384545249 558047832 346545204 221416405 254395894 300469863 382003869 366672150 55191379 297079854 115434368 34342205 271409798 615085210 612342094 858047938 548787777 352859079 148751828 270163578 876060976 544226105 249689467 489643302 632660913 75958819 77400332 743066152 970324892 410233448 850148657 286832702 542383342 105525716 368716814 170948552 138375142 269270330 358831012 921880784 246129523 296689780 484257276 441432104 396661078 406442009 748762874 383037662 92423238 337341166 717128283 655540158 837869381 230455373 911530258 30722607 799433153 494136627 382936891 332678797 852521587 704863153 609780959 827876797 820514098 763424584 90925648 74794015 224354676 932983396 494756527 474852887 219445156 771538157 244181433 382390403 971419521 471466852 839786617 794827885 38406238 675031063 617388330 763888750 761430093 25708234 537439560 746228198 876498757 751812498 850682588 59611092 736750922 891486788 384274558 991346996 615662051 143398239 296745323 393678067 233113956 155677322 241975985 18515009 329633595 688116703 749084908 790125121 771717166 509340468 990839300 769033970 762310214 702389637 892838093 812640892 306397597 157283044 704583369 814845576 131769565 972322131 860446605 732036168 394663441 735980052 193985538 223067183 24504261 322250061 370240128 221108590 609050788 134861016 624102374 988843778 284256716 578295318 230829197 482597910 327313729 55482886 387272248 852118235 575608985 865211978 743035193 782155965 630796176 859237864 826946487 494317212 648628598 889464286 658133935 596796528 702154689 409434191 624091197 641712931 465966338 949955272 231774480 82988680 170834493 288443500 113002668 914438407 528170500 369581451 450640717 673323862 227761735 448406479 438016082 98561076 750188104 992842598 787126738 642239219 635910827 454331583 389095173 375851330 357463263 883729592 432768517 37755151 904191150 592129607 923277972 549501403 947013985 119707908 180941766 467438219 699787725 178470974 367773675 373951760 161832705 118185391 938031104 559844799 610894399 96778024 462977407 911885047 887564434 704114602 608396136 766041389 773198278 721352951 263857532 426784293 231222984 364726145 876988049 900410188 612009348 937619861 945884544 815750328 745658592 489621059 714196452 745676881 371282442 37973482 797388595 287638292 392476534 301694052 262280228 249106764 224206241 159816444 36575447 966662341 461663634 762002934 739053860 28141597 469235970 527058298 756136215 482913062 340842859 508308169 451920700 350191269 173158078 462270587 579462406 30276835 706826986 926521876 138537839 244572067 398510467 189251484 474645595 732940133 259770319 683588032 887591434 452761906 324096395 250847979 805077525 102782071 17389020 647625747 436385929 544369408 548044004 81678622 162079907 139118528 486475816 980446629 426414456 382763987 425923951 81348121 497372442 457731095 480050815 453400673 676059590 118755825 471536131 22131771 34759551 907714808 341427026 361144559 989571505 284035368 662675794 999721885 265636476 997948878 679827822 612290522 518677674 289114141 863532349 432812217 54558639 536552092 794489813 512370964 531834625 662000023 789250455 462073587 729210365 248465550 132337135 905430027 309211125 169711240 570382641 332424440 713734200 197476067 414034122 333714254 923143956 122391781 301500347 411799908 643265641 873116689 92250545 144526238 569441234 998442369 924764958 604875610 128948615 751563721 339082592 597749022 397483015 154899675 633037779 981961664 996230889 755135234 977572874 605783493 385321333 391854101 87411775 222668739 683061488 833664028 14207938 398063649 244894239 134560352 56525883 880480014 911722217 875068381 299856127 816370744 639761342 388446648 445574001 677930696 805606884 316839504 598484545 541288207 11415965 115586781 980508966 815078539 927989346 419917177 886932666 148372463 958713507 585237345 127471606 559847375 663781388 948828667 985196246 286977062 135316151 286051434 594641173 632368614 310434371 225285652 948319489 125165612 377409388 361441233 381200541 805702034 318220706 983538706 763629176 974983982 571364347 716240993 675701962 226355287 169323124 10052111 594450578 281856840 185478484 42559088 793709902 650280488 309116721 111511463 24398728 829441792 588381006 383932245 893340038 54138245 952209923 10952983 551340843 437051666 774388551 503025552 57217630 850941811 163954054 646802333 263462683 481783624 388630409 359549944 10312699 874733521 405926795 411150868 234668635 305729943 563906862 571431833 213672114 790293545 157001033 922077628 856931023 426513492 878225636 287359880 337367083 436610471 421919073 997295493 934875183 93841372 474809863 627359042 434609518 369298766 805052663 111559387 207294964 1026653 924312533 30174766 356837102 411270820 274836635 636227310 602002058 526265394 453766752 631125857 302128515 849553264 519994302 246104001 879516794 157577279 570709454 824061910 125458750 587530298 410663237 701996453 77461025 574816607 461664639 527123639 107748869 880532969 735832934 138424823 510569782 568632653 392131871 740799123 233055829 163070757 936148227 248586054 263034209 991203134 446540722 543484515 623788592 784883286 302310189 547452877 892339437 306583807 318278613 33541848 934954688 891116563 991762403 66109300 951392698 648923756 588126237 552489902 109726518 713846799 877470232 569943803 828217310 820096997 294840928 295494068 229662561 428577406 914106392 807555250 414188788 938313669 782839811 308278431 71804049 478986142 348534402 331322017 594004506 254314743 822598659 876269330 501141350 546263230 576375138 837938149 353755664 995780887 567171367 668300443 202688440 126469482 71684990 754312146 696395241 456597681 598041057 709495068 859638766 298401428 274181899 50794699 162797766 575363478 508400451 743564905 559132244 274143995 45126489 60482463 243186788 965875618 815078110 100779554 162689279 899181557 804055114 184494293 657231543 914560119 303365055 764673701 232679228 545848058 472834555 762712042 305302413 662656445 803202067 438682613 948772269 843456120 784297665 250675800 863778193 217902571 851123320 788454239 748964335 629571810 589751368 972124670 313017458 49356879 619028020 61496798 952129181 555566614 970405340 470638135 401898893 607870911 704089513 495967920 49365004 344510436 733570957 351687086 705586541 608008946 553507003 1583149 881432164 461946597 998081587 598885097 677335061 478326787 13460765 443330898 948304265 316590770 292242056 832588459 566628859 50082115 318603086 617397105 946584831 357573530 49812477 79282200 344303314 507690437 576804672 595342831 573156331 374741972 117364357 722115406 56128077 836942060 126072006 39701639 134507137 844593172 396065062 115766343 769402501 775107316 891223456 711071005 844366375 712602012 141452358 652978440 984710299 382476431 954103692 393230305 232394848 885844904 318556001 162080988 754452447 192043146 703593744 140812445 859389014 769121283 127855982 342082688 569869780 975569875 180267682 999533715 638074495 592921001 579165402 71997017 582941915 167570941 545194304 413481816 796884035 38765730 80746153 797358035 655643235 860595830 136357469 51105366 615560369 630573942 590159789 582333351 298317654 532347547 791763544 350408578 943091515 466258590 445179333 912544672 247170405 813789046 15541728 397692584 202509228 685292876 622400956 749748633 709928671 977676893 158640312 667794645 759123797 491664105 902621617 973961178 857449224 18209646 491889034 561463893 85105834 86450295 442942211 252488130 312095306 121287118 864240300 504163179 270279357 771489871 209544953 387611632 303388135 708565408 634363451 232922926 382073035 286320813 408138598 8884923 293529849 548702495 248228988 285962045 243996287 367387926 425217515 264512256 687957575 175208305 218119519 719579411 917544864 986322107 320095556 71530773 327319533 85947538 126984658 106535730 761700305 645182701 135331084 124620100 142896579 263665734 41745604 81158002 820644939 492856102 82827417 400954677 760926188 765520578 41420314 631624533 1485084 606599206 752268675 231067357 145894378 619228482 639529735 836204435 179714464 497545433 496755999 886124873 514031094 171300820 175641607 811626249 519407087 241698886 564404425 869152224 517901506 406757060 141421071 435109985 90419029 452030462 61279882 715865081 491220051 674121650 646606150 57585346 676379484 951019867 270579815 606229176 80043893 20519189 348373976 118647812 961676812 555105922 581246150 554393771 421766052 558624249 494604216 913636579 966330477 119969108 344650837 820973158 717082656 579393142 188346398 145945378 31755261 913314068 535171917 141189595 997821115 783774462 271616184 139028146 389962053 489732928 969662322 648726898 827523617 706991076 823630553 19044013 660531936 841554972 641666842 717148186 775854297 262186253 146218285 59440098 978105081 260013395 156684344 140586470 814716834 835592132 689474175 621093510 98890268 209935126 755242596 267383509 551728826 176920002 920292424 333454137 609744203 845633231 152461344 212548891 133508963 939396101 355054562 551817243 802293582 327308328 31376539 972085933 348094134 185226613 338349955 42645783 915826368 574988668 482662310 178064386 782753077 941591911 634276277 602804485 539963895 418918377 623043009 505541859 739660691 237991250 218258628 907245160 677975289 213888793 675391016 21289109 875505966 271209687 956491223 136268187 335178726 630037913 812258876 837480061 266408345 591224055 720736696 513425297 216194847 129865118 838984350 165880011 443126990 722353865 108427365 212285851 560829017 566505776 185723478 370265580 8947385 32086845 758720139 612006310 843617021 725078868 75096179 694166376 266072990 751620862 234700743 45457725 715388529 796242271 358727012 804855650 837936002 76251573 884184193 143041884 174922868 623699235 792900246 608139377 75500957 43714140 968197105 175012897 700626845 889940076 755637205 8670522 763966894 873728498 652425905 520005750 137259763 867299478 325378712 665690734 958108338 880969127 332520355 221257720 518693468 102689254 84961683 835815477 994581069 397460326 744661100 965882530 807803057 313331665 350931478 730556228 201461695 817427715 321893233 421360027 244159391 777402266 571700217 473516466 667824623 609286887 737467522 915780616 299329536 77143278 493070173 375004762 251060706 267186773 738903370 128419634 51259901 777002366 104495913 728876035 671779191 571118016 561034317 497252054 23182661 887530882 870752993 21486040 973247012 47881093 56041194 107874251 209275343 167379909 165535610 782278007 75662339 757764993 944256998 207731143 830393582 630501987 620470171 394101996 687506569 114530131 78654415 375564206 331940658 605159087 897510249 966587716 696722987 313418051 282988536 406729077 646622334 893735159 841942214 182151652 15471692 49025932 732563334 750717015 228275676 823669702 336010178 102059877 847851434 996856702 240255282 659004693 894569383 944456820 522308595 693521922 956554014 958297221 192239700 369113489 811758040 933663137 663575063 772264753 969189932 636598481 370106436 373651291 758033115 762938905 638137330 686270490 377222010 764054199 596200246 420452047 498355711 747035461 656357555 534314131 832400233 424184307 940690640 238530001 545490857 716859760 243770847 515346606 70275540 676911293 169168391 107744982 756416 147696818 482904490 127421958 536362027 660224911 630905068 375918566 357698259 324140523 814730991 871148848 427917325 598635257 477473317 988458874 220715283 594318701 5020638 600277520 169530990 409675174 851157384 500017616 835348514 128071353 434063706 490151271 847924936 35652986 105040211 763663472 144811709 448609960 247127689 528558379 595962649 159990974 487558754 371209554 158153416 250151472 492951219 16643201 196411011 120426029 955685680 169977731 606737590 837745464 33813139 598858833 763090671 754704322 456749203 743799693 846378396 766413058 469689125 560677934 47381938 78486537 675718537 954527129 788403212 857994323 310354626 773260951 174839052 478912832 534548114 494995987 546858180 277704309 955743007 347730349 512539067 353921123 548712852 68642111 533696899 162412879 338123907 647656369 847340182 754794997 73739817 604195595 845152576 700774331 540991227 938416404 571894923 448393746 343847219 644222176 332386303 62019755 49687910 380698576 475932310 882860741 944374904 428580041 44080598 776710620 568742318 835871423 153460668 397546985 295490932 200733806 463132286 914048691 220686442 827575226 551772108 342704509 580003081 89828314 859231236 512905406 378013421 92091411 24430684 722259866 721491436 966076579 158268849 171977067 161244616 576067142 259295479 141995246 81599446 287081903 242573378 286516490 472442174 580569346 664315771 254572371 174708928 573975519 813946896 918665627 145281015 813960487 518350496 987169768 593702980 605683903 118051319 76917531 308490811 453748760 479103934 120796606 701218080 961006006 324592691 763491475 206971183 957198516 84082205 760240533 649704129 564924580 356470417 174983934 518795173 494097936 653187027 924843678 286074568 216204026 437456582 602939318 204888144 492840957 858069310 178342530 861590183 903008366 420706569 693638359 907837529 661316268 253351197 614169142 71490637 498633143 121520032 322699731 345451700 628447108 905531993 252075197 12766930 250376514 155011228 679510251 646201457 500380498 909064501 34973426 53116797 800153042 284668980 843283156 373049621 382790291 6975819 842226669 242353031 623901072 564087593 263155398 314018606 927196537 187910911 80848431 791353987 413330425 381744425 386387752 754935739 944049450 862654528 982603914 605156226 278602879 21151690 683993012 590689872 661101551 954859897 860646980 545634135 102983302 447465487 941371217 99359035 130023008 886603831 648374231 868937659 752789217 265163735 527245077 838038997 224252940 87501276 834195927 929274645 690945890 888910657 722282677 399133679 476444559 86174278 419222535 881267576 185395335 175780570 470295309 983392705 7457511 54073998 697432901 900466278 712937458 738752528 622561036 79653246 779425975 831705498 11526651 376357594 432032729 209807881 163986978 166973096 98399547 704688425 874786408 940492891 983130879 380881940 834857066 297952595 768991151 807447489 186026826 255810483 895954975 811192606 74807199 75690655 106573579 394282994 465145036 400909199 753749205 404634203 730000457 621457310 296211993 249876335 483886407 189604287 835084219 208871629 545133008 792246669 313725530 319258686 308613979 761263697 402812205 83418769 629985577 597840549 553395610 577371106 219792473 446300389 680488626 819941692 614165088 654618317 72190562 915856629 384142999 52436783 55041991 738510868 498555315 672829944 878789044 195754610 84760970 804383067 413395140 285697696 800246066 40591768 686929658 56814495 96742681 839921906 897970279 425644922 634128130 456480886 300070269 941489639 14328005 929912637 545687781 210856598 560754227 434365296 865921073 236469513 440814802 685103414 594226286 531392906 439461736 253999903 214489210 545598395 268809645 103274965 201920132 134320064 225534128 86762345 347503586 908130757 139444137 48385012 420751511 628170742 485766361 805012519 763633745 775305272 398067528 548519579 248277923 512587632 390204503 478873845 754401709 797441027 369855622 439405630 138270197 761607116 221937077 386368127 35497765 522201584 638898294 125918806 219340484 699424099 685535830 522265652 240102604 606220974 317521291 427948336 487440379 234392119 564296986 471234052 293606043 551355460 267622121 760213239 504102735 431774669 324478295 39307478 18834865 241185057 101977455 576872810 582007243 276430801 666865009 48625062 564160376 684793112 615486254 585101935 744606970 525022373 771700757 658565322 257492703 662472799 888842632 712675042 69794172 372902657 12302869 625261172 469713129 44454937 815746204 212610179 601532169 186622998 817738793 606084129 671389289 182758928 648103814 461219234 914541240 931000798 988928058 848423381 428737027 555683727 359697625 101080203 627031902 323713086 647389439 416505929 492472320 22480347 878285100 33806710 127304936 267436684 317219714 966007312 968189997 155398150 592916653 514854851 170409942 995131966 650985771 137800218 539370064 908089260 769801629 362358667 476456769 679772894 94475721 291224296 245336019 327975049 943607946 604103189 362057888 948359169 771561399 102344391 614857794 381746091 35314826 537816940 968327954 840943909 569862748 929558300 266652169 102671207 392350669 375892566 422975760 846969555 229836642 224320091 187854448 588987166 92074310 99654117 69982611 379182720 163740325 324696112 676190867 702896741 281876493 648338109 277313308 22015591 119920792 254686187 565725432 307114202 529980478 255816253 334066160 857147169 224251497 63166387 260681949 334744062 987578542 350742145 331964457 750256626 369420939 439943878 654258157 671056263 521118600 528199246 189724509 729918299 179944739 118826456 553129104 664668573 973040324 753409764 185528024 810788044 643302600 642849373 606371297 904477853 228697312 88871165 534262909 709383245 296214264 663194244 509573764 319329446 763400952 580658777 529240197 559112777 951530247 720825521 342648821 197613992 375684246 790303898 581006561 553115389 427840778 255551778 453249151 662195025 994500043 925297799 751376616 381263430 333663116 304014242 534249370 998076296 602652414 864417154 954446934 92552672 97251882 673075058 199960032 965598746 819061391 58114480 21064374 819383164 594858166 222630044 841152115 96574170 713077341 492952019 103346188 280630587 244247130 549539302 898060155 281793680 778132365 165012367 436418209 164197497 951619753 422685294 398426450 111590945 242446317 667980538 76716197 894756453 243783344 926219821 496157638 699734320 454544521 253035965 30400029 764881286 716514999 561132887 493461345 621488971 74201766 115380266 952963509 846875383 144507664 202557106 468861573 231849904 348094280 364416525 358431731 461681475 756756847 679601857 979191005 165724793 793495094 397194751 863010169 573924810 646684326 602263273 22661414 623874072 914208361 732856318 853136618 753595142 57570930 957428617 389833935 25783428 69451025 559873171 420773705 377718079 946832526 120594791 695413290 657234245 906298417 302094252 338203673 584245914 579756587 965517267 999800334 496862937 453470141 713340127 608817929 624294542 6376969 464644501 756231605 319709803 361706472 375942091 884134447 864892926 484256944 193040568 607574371 656924221 725761798 754752016 103724068 59056635 310351136 58969563 857642408 64610546 919835597 738940929 530881614 778368449 270936741 121993782 602240126 799488056 838986763 682451496 307517412 623703719 893430888 208457772 494089239 321163769 745934091 72787562 49456942 909956188 16447558 358907372 628450081 991411093 819300781 664867311 276333511 873623692 206452415 289166711 474873134 2128120 407047620 743968816 798574368 869533811 875524486 780795558 90533282 200689156 839949610 456192838 942343287 859791498 833313307 961769673 39139132 675574575 723633556 675435170 110170363 238336057 410905625 204688114 432658423 400839904 865522762 413292283 343407596 740032182 410345397 726424101 832460246 147524807 282384461 103579265 352872215 732435104 227369138 750236262 489586253 930577651 885652305 411611922 750783390 913305936 677333863 696582184 65125898 515616895 209730078 190065784 262662721 371493731 197495064 722428351 788171168 390653795 272442989 801669922 155044888 846091480 212832324 874147304 780356637 810727132 690273719 23854558 792915639 286907815 518663172 870541259 408327626 437121050 357059895 714072105 156465327 762635442 747009047 784583403 893445757 651288905 559879021 542596380 51804489 66893976 206159376 489604841 407686145 634665889 817005475 469133794 959443219 40970137 824158614 379971787 645723992 42465445 367834086 278269765 810547195 887007436 764636121 570872787 538887693 752643723 269975802 800714573 176590868 813553371 517310101 835999518 269278084 139997649 274770182 818297728 897786778 948261868 548336973 959316487 281773320 696345526 736054321 101005484 802977854 602279909 378834681 919419150 838893416 59294156 638538405 954093027 656996112 638970074 539807260 991556258 227236003 313425635 887585094 828064438 871777925 35643847 647179025 407031191 816476376 147601311 806691198 977864081 949669249 513713989 750587068 866630354 995625900 922231449 421779643 190389886 196855435 776638362 232783774 897932068 721926597 486518953 751744257 647054310 860377334 414800101 636731314 288073428 498783828 689477768 66030132 421637382 344991689 627084246 667718522 96145573 180541519 967438258 54899457 428402107 481821900 646574883 835334450 666402779 651144584 371306414 5733275 710212957 824495193 797334072 696282175 861834660 771524854 65074316 526031627 390356102 5604399 418076285 252746148 621192539 203900694 259208498 880127976 196748694 270114671 491071410 261223187 989148376 877704467 994560826 433230752 559312359 143798411 129627092 231899647 853949227 96703534 456545499 123322929 821420848 888088321 659308478 287048299 251749279 372623039 675394981 48055893 136824287 476446279 746537626 522238385 394948448 47192364 126275703 843543584 795143327 897464941 121067292 697364415 873808671 346562221 137883794 14271012 998366113 992830988 217139116 271073048 323639649 24467557 84712789 651643423 34371244 510092702 3502956 478718179 985524762 571276193 80782367 727220777 453686554 258927821 946485980 825683260 840943293 982485539 734608554 829319762 714207644 327324607 940281660 156825356 648577102 910984477 826406797 197192592 828801227 45371676 738706963 178111634 431666503 407886962 70069540 161193788 939229881 259820621 550310937 466199419 784537217 229559402 186647396 238603896 330051075 993042972 959345169 591435825 776017516 675219451 577349155 584544929 605160018 541672837 168906620 665056142 902594396 44468958 913920852 456409429 742485908 911899255 540059884 201836166 107717667 939243741 25840316 234977169 253973969 168050107 96235793 590786675 901892141 626500680 611308160 759022327 594258267 994967490 227551890 21934709 56865298 259064667 97352484 815123646 214442865 557291564 442905051 766562396 604002317 679630994 562511402 335710811 106617656 663761734 565464934 513558231 926046356 164152769 590267032 752911107 165637279 442751321 277604160 502083960 73776893 898244931 286430982 550380423 41358237 265387819 570292025 214891504 469741134 266425360 246119395 678642663 144856396 319729683 355244215 286243182 870940139 399519173 512584297 695539696 647025528 297177029 217062972 68658257 614781615 821063060 118018196 322803748 687111985 435402826 28127393 501892198 338035753 361267426 976805266 571103937 25681525 800132335 511505173 33892916 850130243 231981164 467170455 493096476 369279029 509774857 645675194 343581031 497700536 806866383 911358021 181293098 497957955 734509193 142387422 94464613 561833161 848392763 668586198 797863797 812307356 812156196 12946080 189259831 706855952 560230160 13915900 197968251 54072391 521938156 62995134 983185298 110006003 917826579 139894882 451631475 651499500 85307654 624689080 595084600 257985272 3539434 249828168 831531703 499838295 491671085 98735813 227260236 199193996 481377611 681702855 209794233 374542899 23710580 906315707 554514016 842211464 932433999 33401580 669210079 938091415 119085482 715636240 128334019 331840622 944095878 160884789 231456633 568512755 92553534 289181396 53988490 321060043 341698226 687590233 628292684 328754066 635616259 46727104 925604806 29070224 429404941 328523060 262664555 279457938 350157599 379352225 849136333 75061765 986917793 936389213 497651506 727508439 389734566 923946684 393002664 592800091 552554457 410485293 914835643 23225244 932177783 529274657 64909350 401033930 687726789 410385747 301634352 797567556 138577510 798899364 293879229 238745987 307853810 153585359 758461941 787772817 358827443 930016670 324608826 810597535 80112960 797202707 501226613 739050583 688175686 902519109 944150296 449574795 730117795 881261227 163821207 845239658 414154039 866260063 426884139 881211124 979381331 354591057 253356021 464863444 687592451 155258592 141366503 9323831 86929995 284019789 519063229 427904725 140789368 876013822 669323910 710796774 663521845 135597308 109246412 861273562 432133352 682247912 335956245 452740153 766103171 58415330 374836004 159201216 114478335 896982959 166484171 920074675 140692075 248867640 315850135 798609169 188093232 71156058 571482614 78606391 933790127 212727879 3830712 495863128 405198575 180258734 441645010 73746796 221685428 313660706 895436835 758577662 7930053 512266062 628764198 718695940 713041464 538180030 939392899 37753104 414422577 67910587 31661297 687627974 899917652 104931002 129085216 148484370 253048324 325751414 557562839 420917101 48687031 983212270 6918344 640062492 379173428 713746091 303891406 267254511 73422035 400774363 916370414 782358356 8514579 838037723 601356064 631220946 455309194 834306965 911904109 883235075 428822832 216646610 61912833 229961119 752915079 453358394 188082844 677884922 764488966 409671987 494459762 697157795 287824077 103468329 528351701 844072337 942398268 12530526 981583229 908747982 844983100 551951773 270476729 631865606 526796564 17571166 815689382 383236734 530795531 113432028 292126017 970879935 525201294 984716826 285419007 299933132 703038122 395246061 874404078 835164158 377065808 663520645 808081310 942741952 299569255 822518987 738343769 882801093 191616961 313868254 257005704 140865099 541184572 557593356 411968252 375645087 742303464 788019004 497382087 929750264 404586296 371562537 202952823 164913739 130162676 38717520 121100352 50123937 451547026 595419742 830161454 900250336 174016651 377835844 661869776 3335471 173817099 261844929 575676949 930775975 73322759 700950136 244646500 640701348 708965343 142123992 41547812 139709743 356171373 54383940 704648070 571651449 749534033 56087561 20459079 167640860 299650099 838516480 80155913 646358410 491337118 612505720 464060490 783734640 234774746 380902981 928282798 426379439 499071587 490227691 746541115 840228142 755339929 284341805 823443553 236786234 445339983 92579580 624875815 412206785 589218614 815148457 550593941 512159887 323803444 363717958 869235907 499975962 811267823 306748744 404611395 625645061 615957869 503511739 193053128 287637664 506387260 331630698 475264460 647103581 56408159 560606537 415261844 703765392 199775970 752960725 936558112 633124728 106128692 670611046 295295559 27409738 689556921 749574618 193989889 809577844 374999692 775101856 702017191 621351540 636500495 617235724 515969666 406015992 707995304 993422270 711558128 788484174 430194155 607206479 923584729 94748403 415464057 892719286 100766233 552327928 837513859 97570410 449493494 357310188 545699411 109635203 700932616 984173592 305622367 590009195 33401777 650967936 298001133 770226427 622962896 197749763 219299814 248763315 257690096 529113082 593586328 217463408 775044844 319494488 714713702 207452434 842481459 936863532 202557016 809847380 355931062 32221776 361657788 606734417 590827277 472783527 556104443 314439955 288175359 801760342 485901983 138360899 545933319 144426168 359038077 271885309 660235852 104956036 585130287 371076961 394914338 998299326 222493646 595604350 527923854 772931608 505694272 296828831 311758729 736580449 722924639 198037758 320254748 772814367 877480561 556617976 984991476 564905584 451000914 443499802 233858048 75364771 289470366 487509093 745179343 789761093 958893011 629889606 48626682 919967398 808297195 490804549 74389150 875455489 251154479 739156072 90407410 671000695 22416127 368771399 442617499 513203605 986396150 408231682 341664327 141554242 480829030 14742416 780420706 511219774 136423574 238073253 578333746 13300676 389920188 964350890 582004264 478718472 867066073 712838153 944618180 8438767 248714593 477915284 473642322 412746486 520881231 724045975 360071376 995908550 160533056 3906159 420068625 127308351 544662639 104390453 595313620 710143622 949692230 872608052 335789222 114730710 168171553 797830959 958227905 508589310 337658871 422192258 278598912 533405626 214443476 757188584 392588126 970426851 794947033 604631867 226230659 703196560 190149774 607265710 844442700 11396251 957001887 449804750 398199464 348487942 795068525 526560396 62645660 329713601 149398059 946786206 709023750 283245449 182384202 923938578 477753604 115715486 25632377 458022218 143389359 510756481 562353533 772477793 184687953 73854772 640969780 194016774 576221262 698449912 519563144 800835604 681952680 545250263 104404726 485615865 47822441 650523218 38616960 896157425 69168010 827260596 687093483 834068918 49554461 164475673 811643522 245690235 92898921 167082927 877153323 253673061 179073062 246971708 524146740 888721424 469670903 570775237 729804109 824052465 901223758 299601378 501818426 767599100 113730188 340862194 78888421 604764069 488009195 276953869 285736852 864201988 762276838 88476028 362373243 597189677 615145245 824354881 621734064 153682026 517349067 981467689 824833525 796179493 984012842 98076137 818152206 82467890 715844325 187276094 806595967 135219127 945823282 898209169 778900063 58668480 208686210 135000302 261846637 842096385 139063593 406109609 36062413 329650970 368238944 827070316 663253872 199496934 763393521 427338861 503869555 52835018 315643077 29771218 425637204 450652872 130429501 390321679 968081103 855650151 527010156 502322079 877079843 524500723 8028645 424445987 185916162 132271289 186127009 164152452 570562708 933338712 145417678 107130366 992813088 827477297 345944173 112017310 500342835 305398946 92483596 781050395 219239728 867802079 924653205 891136756 726199613 926861386 148458274 448915761 993226071 605399553 420717924 227077313 660217900 115553861 100314613 447867532 785377485 394294929 514050493 312706407 918249565 510488308 172489838 908477553 325589626 440771202 645083063 529914012 568166367 982520998 301319861 101792396 55821587 747433193 951567669 939063753 600633318 797882348 937603104 642608322 698143321 578370417 589826599 690791946 407410436 32585757 720605229 551417927 656636604 905807552 94330461 19994880 642210386 102831091 598891849 598701793 865564043 159210506 931114191 209388385 453375438 671224045 436601249 613317292 255200908 323492543 761461771 384002218 15465166 456018798 500057552 576163091 601266174 670059281 356965579 623616519 921562638 344737930 116794599 632838095 446489585 571828879 818453818 440076042 305126025 240665557 437699348 850204897 571520849 115301106 633108855 925787182 241675716 273406080 492088695 650189491 481169780 538802514 561254089 799410867 46271685 621675914 980987724 984225724 176411283 395244171 120360133 22500816 938619477 95976662 139844378 510487525 888936945 48038711 911953944 608593419 249307431 296507720 202567059 713225002 950568038 152199840 395080994 194026114 611389170 757822542 762923203 562872714 716387541 538733548 272048109 899414727 506225986 559089837 760068279 144421262 916388810 14996172 783536010 690682856 550312426 782680179 769476342 440994835 145693154 416333101 851190633 962629117 98179230 202402317 801687560 911273927 606857845 616919615 836196635 747476304 722855804 964725350 76515876 573838490 349930704 739043669 310977897 885331335 982192676 324828585 161394038 480988956 556658732 534211729 487022704 669240730 908729521 717611888 3357648 923855440 94765526 964582111 58632739 174149582 600968236 623015820 731917470 224772328 905284069 1819664 114444483 172750586 735406605 960379774 227100498 337369819 665362200 815458263 945531238 880631020 287645575 64399969 247105979 833089364 317070441 525415957 247655482 409870309 253986497 547248655 273383874 787708227 644085662 556786561 667368327 493087647 352382838 310724794 250609200 692171806 409459559 680859837 648169657 785577644 824768723 81214802 559383713 600300844 688163464 203995988 258937934 221932700 789625882 235384542 60936770 179698092 123471651 526801010 217200726 103072414 107899564 75583699 618537513 232955056 410546053 245204398 730626792 969288743 234443733 181554108 348799562 256113648 91059997 123493760 641643479 802267468 401118378 316318917 5005962 854204576 624248485 780684026 193065669 814314520 387737402 359039738 646669613 758337500 700881182 253991598 816977849 281216766 884550229 547587011 716362040 545264011 352554573 917767765 630518432 282794616 213770043 227450053 317712193 431645863 942456506 319345867 222474176 78903097 12826758 995108682 545023191 762704350 356308533 464322767 324773568 55522344 245738924 118295145 513853470 446933711 503343109 25784072 994679579 459200593 4916668 931047109 521687323 443109758 371020467 590960793 910011500 375884355 473199494 855860952 403239351 948728120 854963196 887659566 599926929 52517342 987078938 625465689 767594345 294932369 551672285 123604294 275867710 61613275 75608717 52949573 17969845 934517318 621595585 370118964 995990057 618216685 827787509 162040100 815217550 113021439 604712801 683188650 287076340 821126044 663009292 195670704 823059746 669108546 80153177 140019619 724107994 376073757 121097132 441009900 779572329 615558153 781064317 714795942 277338557 387636324 796892130 369985040 135328190 604666322 305403840 166868449 856205828 7965168 600458524 629707533 11063470 515924424 629648892 660851217 103723949 470114786 118634557 412932019 45054538 810634889 501618010 17108998 527477759 267542918 250248378 675117288 129227876 852752181 990552884 805832507 473891412 508448317 352036211 909862023 999212171 12295572 891546315 959812243 174322594 331123902 128092702 98040144 7176775 719489612 449335800 288745013 541184033 488066967 796301876 865738734 445468126 531936536 479227699 184968403 286032791 471841862 999341939 864619762 29865006 879451608 764755370 271629290 272739085 276470862 880434169 403237285 473086653 590408130 832032916 179939836 477499048 510430079 411855926 587663745 857881812 387043114 998721920 666167007 485781964 918979931 807368691 703822029 619382790 101173496 958237625 66645177 24854868 914108578 626034900 945714222 524470765 107325317 566565278 922974238 246017799 430642628 560350433 431717911 790960921 118201678 67135488 596667887 476194296 7052686 733091385 505749543 448675759 35841462 874562772 856723181 665353592 543331766 421196401 653488515 310508784 486447101 935791196 980844645 378666885 336021862 498117690 623222051 616129749 304429205 695951771 709551284 141756990 62444754 435064703 416193731 122083653 611587974 911141112 823540238 582400166 353431509 608841764 474403337 691429663 430200179 482911764 389553124 861765652 997804811 766810691 844717754 396286618 903384253 944301625 686990650 976728831 14402916 340037522 229181388 604593107 249075490 752632655 922383535 979645430 246898992 63001274 619910963 227563774 65971988 198126090 947590057 7266083 848214816 773945309 859029002 808852245 19997912 678594309 762806851 942739526 982750948 371722521 881537940 216998808 225868459 364141379 456961321 348153194 697428684 12390540 361821855 359807122 576207241 763505596 976111689 834207488 148257042 400514056 199530096 289836387 847503153 2179456 663291787 562674628 601998456 907918986 120656426 243692878 95757915 293943792 827109524 328994884 216634532 246081509 850991185 251718868 980868561 384995812 450191366 316510443 988781074 367636992 172775170 228150653 184791060 831354700 301254443 376798073 564005670 27825062 11182657 723373809 520106569 441291016 509264492 657313752 607664484 514137866 185059984 480433249 708703836 647007113 151519515 228338914 550656706 577793408 725130932 393051955 282929587 386250044 194388058 188798916 679040550 394095856 334790737 211373091 676828874 606223580 89658051 107584816 200354113 360706702 978500135 701579310 193213753 161195028 274134714 699418733 437512083 322792057 449569388 433288460 786567428 478922245 285983661 898107019 457322976 840860825 817703342 644640839 430144060 153288979 495077898 912009863 873769932 588563864 985443367 500962590 294713816 253145421 759664711 74894973 565023041 610730852 945706537 860244448 740382991 95353982 491916500 522184226 111513263 219420717 422464547 476631052 969938902 779621334 380336857 548550622 5560746 781103604 597945620 118528223 651855531 19202694 918790626 846007169 281571819 937571817 284738145 702238474 933782026 6565461 623696801 623535167 920101467 19010484 504105160 611962321 638372902 556203963 550049897 61918996 653806067 224675529 810383971 421454076 701560411 231075347 271146976 865371379 889820353 691815328 973690905 286976055 753328381 954988086 521611332 711629811 294513985 94540100 509921694 218826677 548828886 910111480 452950567 525383688 559350086 820806605 678165623 238835577 705565593 326740424 551192488 374830170 619602855 301333807 115349431 23270797 793175384 699830221 701057982 52203013 685198351 964110380 925149426 18595757 912189713 320867196 336564411 22532443 709732623 858338736 653078245 137071763 220622928 99293574 853584808 251655088 360144362 147498579 95747871 735581774 355125787 844408583 268565612 953180376 69263396 949291595 684322362 625713686 597661120 305096841 647866869 525458631 973896525 413016911 666561236 641348976 793187998 737565402 407489361 407690922 472741184 707953871 259578794 816644674 819888166 655259256 301268040 741634283 564288601 959023491 396699741 989943305 799987286 883823493 796251602 691580705 369900074 239982867 838283432 581347819 185028845 820688729 988728972 72790737 479060435 431474468 458591790 129671674 535802132 541476884 21829717 949564933 911182447 556438788 252020911 746466702 449027424 901394547 775193524 521744101 310892764 856557077 305694327 533818144 339669466 868216903 258328819 324616300 993785048 201340835 198151751 808506442 748114997 370855217 42938266 557329857 748330927 744365001 840427226 479521829 125260665 163954140 35766394 911675874 912966862 347353390 471623038 101924657 162851270 401143813 811905539 756559295 411601831 644770876 538401299 886549162 247724334 736940543 776348755 656934785 786677432 325578728 21640396 193960212 489919957 901180867 436073012 136625406 371723737 517733375 45767946 676473201 904283261 179813442 558270047 509390831 415411787 392530892 780787642 187321252 412832104 819902592 577721495 999508647 596656482 813383362 55946014 963707707 832750902 525386366 358043274 120601409 622119805 301729505 151706322 940835062 838461088 134727589 128128243 261316947 75896386 125254224 42371585 344017224 115161380 704582429 565309235 954522248 575231520 4737319 214055817 755740052 614701236 374085548 995979984 103361981 621813047 556618219 915816113 3126422 45949770 429509307 501254173 370473535 662252543 746772968 425704749 452373646 563102262 406656342 486627461 249033912 933184230 532557517 470639519 472824965 178611310 226190265 119346707 575008584 654869724 339302860 125112105 867162299 695753541 261475934 744448419 219486424 876193102 520393218 687880216 979360075 105755953 796929494 581748701 501502523 354731389 295084578 319153647 656723975 86503488 417940530 24596737 347403416 782499392 916656887 856551670 951248755 2080089 359262693 927042146 968435955 847564421 260316817 10276563 454060523 184425296 533500477 536796290 729427667 936598816 272852509 571491066 416928190 297451956 519017466 234904045 746821504 710896561 875755983 786950890 61038913 806926613 716744151 959889707 802361038 319451308 53080909 895521834 56739929 116007356 201440036 33589426 547514868 943966407 415038635 843035925 241003195 476802609 598366174 903506287 466187407 927616679 120443086 627872554 731528180 888950119 833760555 930374695 270611076 195771857 817727203 339702099 88780561 281097079 101857460 279900766 654700490 603703854 164694089 817871918 393460107 944988666 579016599 791121109 61230614 132454044 640240879 62353288 308315176 610723239 857935358 784782947 733839300 61247418 475045361 980639496 388261075 317181803 907937808 745274472 576600112 397538461 470867123 76472343 193177585 433995515 701940128 784119494 20449459 287334112 352244979 907547655 560295156 718619878 889367581 634195638 715781493 878862904 912118191 677833510 77976045 708406225 168076532 975955918 664206567 80095755 52433171 21539378 559398636 356813562 92779758 44256558 456423793 687787388 48732702 359860819 753302779 770844535 796806298 937954459 948202085 276230261 721476293 581999326 954705147 981889052 480289264 797296329 473831406 320197431 892301802 896018629 492517666 929980200 894991822 924364043 400978256 198834694 615403311 427082841 420030085 31326454 609493798 756342710 149075042 62068677 863855763 735687408 575344096 796485722 296148485 657405403 729317023 660016354 712921483 701981189 220757778 122290761 141389468 827248358 56135579 14518260 42136539 294274815 507102726 748586605 840616738 766602887 566028748 105402025 741927133 836306104 591895838 685658646 213486283 180414667 684407793 827416864 451991721 773400325 186719850 529006790 373175903 131653408 73654236 808786063 683153051 790505325 256792815 848246898 573681603 744385869 865716843 469326085 741677663 760848240 351761501 143895464 235651365 271060476 734907579 517613532 614532656 937437106 127547701 14695033 19637451 192556529 631698421 811852526 864144000 642048064 492001770 854750181 786955759 759391133 482581829 547417748 566611082 91177367 963951743 404769830 455200217 590712211 838977105 301740872 453623649 736354572 307901790 917598963 504130295 518116043 510324279 411721368 318586437 229977367 527593965 368367732 505777911 104639289 798604749 394238545 886906120 984691222 352702434 158166552 154550475 78295230 713471004 406925936 108006970 250030981 236084179 816745844 333048229 76711562 414606635 384962755 905343136 699372058 466309562 713599355 292263584 922422716 108706404 868523303 275694160 592753768 994087980 717802824 801135652 724318616 232085370 593995601 83799188 328683830 873124670 333444625 366239182 991398610 689303994 116173304 676054565 73752233 383844572 630538679 109131537 439849824 546749021 813977036 152126141 19780563 22308782 514938768 861682608 198403762 265955488 582919366 262531376 908047869 586392607 471801445 937634847 323632707 294680749 226785269 734895371 592426007 39087140 835800995 226168360 72668836 802470102 726092818 642926604 258470703 71997260 439893281 794849105 311454214 327959058 772425289 905740123 995188195 927674108 606860124 855410264 301304945 437754595 48600664 308769826 890023169 792465704 676735222 76898116 588352056 142837932 558956492 317450429 619293641 556097297 175543822 361061737 747561433 658668089 456297858 81056404 907443943 55236910 963524393 577785749 60791857 675810726 504169621 761295458 133192092 822246576 342147299 791895166 274845522 986563540 810150728 259871529 136114038 603451155 308318938 394248243 779044258 117940924 463109683 349269353 957889654 745513479 838681339 631439415 42437692 856258181 919248143 571430570 628451037 455330194 750131829 610589291 481486424 639817940 841469256 262649033 84722350 152444820 606543537 456874442 663971649 931766964 398466036 20119035 967618588 998302223 331357947 188484497 675380986 884625167 479781357 600310323 235868298 16370671 777258567 117281494 754155632 171369158 370595446 383579762 507630909 350260677 624664415 276553528 279422239 443539769 930078266 798851962 125057148 423314465 309308016 579348484 390922249 76046164 347560463 852972247 656994514 336631829 989086844 146578199 286712407 819719698 526791204 425581331 276796023 854862909 771966568 565552516 953196615 968170343 83068542 511391136 265481293 898168198 311327594 617381572 82929843 484648977 100838845 468452912 421330674 92932651 456851190 767290201 283417980 226255883 393731224 154881488 142913676 19063121 579391316 381310234 344701212 993512500 800336866 53036606 350012052 491846020 956777700 830505862 76403713 102248342 498326023 224011495 140382888 894072118 909245841 929746060 557139799 744670163 515948125 952739313 915777644 459035383 500138357 632341740 669015159 829190913 660366853 360473205 673543757 656379090 667347033 815054618 238925889 190491268 387942507 108524941 819769506 890742782 460293001 980537678 243620051 914718472 817194086 496722054 289832492 687220600 16596167 237710466 30656532 738864955 883935113 360063633 693067439 591341842 240112956 697087655 198145858 584525149 411765189 848800035 276657209 937828792 334730672 714335746 472863312 753912848 94369374 225873787 279833427 280450677 568873634 425097040 47455172 904494943 457156238 599835853 249982994 468922839 333227338 314958407 296489021 861789590 835552670 221903268 333832043 923731098 549852061 383418143 95290432 257337073 381181541 735675870 696045238 605782198 126597545 514158735 34103835 655807932 898037909 332804988 136366718 623891472 593187376 152088777 329844643 867694536 189873012 688455265 59371227 703534375 229042281 284476990 257094974 778370227 567958518 24918780 976492504 89019332 341114692 17434389 346412821 571755363 589527302 121891998 865783511 729659431 373551921 193642461 447118038 445654558 477765440 403596276 53019948 997079144 224144733 150320436 565593540 660947272 41974779 362371085 153895065 141701549 316054706 758321788 285039875 488996565 852366216 678283328 749727635 893493360 579271571 942913844 478039143 671021351 286003418 168178140 510871774 465240426 816154945 949216269 376097714 585408309 330598579 95040222 750800510 936309608 139736127 147549066 605477443 631373863 642606487 568839925 329501462 483438362 811893237 698786472 961082911 736409556 815271139 567817800 111924840 970942798 595274273 800638273 437664105 943382380 798209145 623444890 151318017 236794599 239826476 622621931 987572939 859728889 244677661 786598274 67102775 68845549 302403966 878396245 437057208 769065399 369958172 671174194 723107610 276932336 932383824 677798927 349159309 659040488 367961418 755344545 776805023 771424604 69332585 496665938 629068549 203761790 908650978 455363461 111480804 743807729 706417426 203993856 195312125 599680127 660513532 473832494 757456069 866055709 605070074 507931006 445632522 796819512 711080998 614720932 857666699 725926215 506691328 106832523 92348512 692590509 709591016 952639245 743632182 937279317 450333072 275276099 951873339 338846227 669672077 633704054 322353301 429516237 975968898 845753625 57869677 422152614 656062499 34972693 651309117 556234867 612194509 86443549 166743423 325984420 514995941 31483380 347798757 517110945 772436720 651628445 498655260 194117655 843788411 201191621 704316573 372902470 214555767 255769260 749193427 781937601 875606068 584857238 872585441 767667253 14374165 881948869 337396602 571495593 110607220 110285597 589330775 188212084 757217258 518455183 594415582 197861346 196656787 298088034 102414260 653008308 197828004 960119684 294051558 471974901 983281509 769228943 525373836 305682361 911359020 145204345 194142735 698860818 32080575 406503145 226390916 465601162 733112369 590169224 39508840 360936363 865017677 145001663 829986019 720892937 175085319 500340106 40678194 494446858 328429202 32451812 303766939 349378742 206072672 638028033 182438824 497484352 961617616 385081883 283756135 438507424 399392788 312501102 973879647 192575369 944142340 630430357 881640716 138161788 709152130 567252012 508739359 426062297 585444503 182881934 859556561 385679364 971465573 868771248 460815362 30181154 280466582 219951797 204117212 35445701 69689794 34498829 38193974 799145008 899058492 426972622 91020369 664105161 317431475 660902293 437053173 227969345 579782971 967357802 87362713 995275704 779556612 573677890 751065199 748686171 111918239 429721596 720879379 778847848 548046656 397914387 131114053 470017957 699094552 162218993 291966585 610288517 896688626 818500739 986821843 750407208 947020789 17271559 472106922 613151317 416772935 499168120 247018241 800510052 18670374 183159688 944192102 882063318 988476864 320459600 716036370 681446160 109537981 710823232 49016644 586889060 341432070 35409030 754820828 83135705 403367776 389918606 537632432 640129269 354119301 184439335 471756704 724664644 662212780 124512063 673838765 542552907 476265143 40462669 941275277 624781363 278677478 409341104 382051936 978144732 867337620 799187515 271746521 231421218 168335313 171026333 580379004 200729125 180150363 234073528 11296344 244944241 879987107 673300957 735906115 338555132 943298563 454138606 787100890 874793081 127932311 765863477 451430217 839833050 430672554 136116471 51442266 959557652 382163766 660134548 938903804 683505767 72790163 529486034 45104012 310010516 501189123 480434462 967230601 53609239 524600771 484214715 923881830 334843598 453010265 492144165 287060034 66775129 662299264 330390062 69599636 126027540 16174737 334170400 312377286 965957295 7731784 782924726 730704631 669985436 609307023 731327326 191312535 256239146 236438195 117439138 992621082 745566938 331501609 248446953 187482950 711952873 435233986 184387065 557939553 531968995 48916169 189457085 177044725 5751968 665266424 722740154 956200285 194764016 153562677 283127417 477983669 508250208 504495958 262274949 466046684 359408541 949840092 588756003 38509488 861196500 156323910 282961343 868186819 894757415 757742052 395533795 778520983 707103635 13018542 419687579 176783720 140301965 480023095 338552377 981752961 881473510 120273003 605985266 652529328 26213798 557697607 771230074 763322027 751176734 300794182 475887282 571780265 18815742 948365409 731118273 481974211 154636483 629662375 601916418 659646642 727260869 395229246 743950764 483016972 43154094 730724384 713307184 829757191 322496092 162205244 865055434 989390029 260821464 959418255 167507035 548545909 840849676 668863810 629418087 708501137 381708127 819455939 604365463 838416970 359229642 658175351 880600099 832078065 40137946 40044608 436995888 817414126 215958320 950405900 392446888 147276146 774664991 420631234 790597124 865278108 789565427 148957225 224842154 398150144 943019242 417573029 376288733 352073424 322549965 745342406 249330073 141445609 670136072 983358002 80339634 949583614 925938782 952417129 932169660 274370784 474000081 511395951 338923723 786220651 29582331 24956052 260919458 913561364 560633372 254432280 902534288 965388704 266926876 327653972 147638732 822768881 226868788 45937173 827061941 783828622 951707603 551308963 614212416 684220995 355805266 6828461 562317175 675391701 413041417 614770056 159493361 592816465 526086330 280795957 615393511 786543279 684113202 872237431 135887753 140707496 177118251 89899664 68083713 90988684 79380885 832090675 212249092 804126930 155593050 441177438 794785548 243171715 163266909 697474068 142364217 856359154 606880544 411508461 612856568 89598762 937299059 188482219 34752179 834116409 962793560 845559806 627920481 612009683 840208344 120295482 914708084 202174236 127960576 193707381 705111096 659357039 595823315 657887549 228136112 832047952 798369215 449111928 151871559 782402367 17555353 508483468 397481171 466184158 438734649 470213321 2422605 742340456 198770572 208821798 380602980 194914619 414498154 158805866 664288315 262977606 970578203 301663004 973719862 886858489 615823225 979962232 170461357 411748189 742438626 731723936 235419842 729311658 207632341 283819044 475565110 67934763 266053548 122716705 959667971 315397835 202866941 408964864 16564700 111953487 721003988 295710800 342978787 815680174 175707090 270977431 870508084 690073243 582162021 599517485 366514932 728162627 215861043 234644222 159330187 368581288 690145984 202566570 227898655 349535872 287332002 771627555 926424827 234901845 431168913 43467080 864303666 444757517 773270406 182919762 860534597 685649589 654723340 386096814 643860221 549882270 501963405 668652263 960426785 219000699 772258933 487933768 386993620 848015084 546752965 61291432 215882389 938908912 650140111 740635621 779277597 657150953 190434402 67763462 414658992 858542585 664349692 249933007 202974524 341004388 37949417 769767652 313906206 591227276 457328914 781017227 872048474 173948379 307920327 264654619 8042475 375318304 126169048 641955968 137090060 747710651 658349708 46643313 382409958 229650614 51061972 513076973 975115488 833121902 131271117 526816187 553155604 837931144 615225148 739244678 897051272 243490127 276952310 38148815 445982250 260767774 79361891 473799921 848257880 335138174 442402859 489976737 618800787 99305262 855332181 918986869 775675509 362696858 168620020 962619168 809537878 312844929 22842959 699324496 401634683 455056367 655624810 207236953 42987066 176465224 495057471 409109574 365859248 341916354 178789889 173139113 828645544 332941751 92067834 708813901 520978336 48855398 57958249 47955300 358952038 892123972 165075613 101399562 523361057 500462247 366605778 866190036 907758539 762820522 106438876 190265417 511699348 620825958 230318786 647699273 458429639 999283494 763543284 469088435 797382984 116491681 453548355 721754567 697117683 981580937 384859016 219126082 878461502 117824923 809742638 710244063 917647550 320206677 75412844 552123199 357749732 528047154 38445423 219159910 898408213 158361632 723189825 869138769 931645420 529356777 886532357 264478178 906193982 62946093 54575295 696408223 576158202 851847722 263172757 973760670 458039861 198397553 876386713 854904315 643222166 798138924 149138270 393645311 710554493 974113212 617682642 746670300 932376655 575186243 840474833 343895175 848627276 960357948 583936568 762366644 524640825 400147652 590490643 886649058 75983019 409937283 646893107 424181885 965260369 26116197 745895479 276912342 68471999 634031280 370575653 746265196 643296562 925688165 18189122 589236069 640643372 12801531 828991413 79442059 106937959 262488242 88067204 499241278 250422789 246622798 519676213 434354476 694748488 160103084 71714750 773737152 825740090 201959935 411688385 613351340 199354719 511474264 509612934 579592330 235500774 949839995 125550486 410356292 9470289 848348657 783998960 92379961 928714414 385991965 950315343 33035304 951931987 664340800 117254398 997456298 60018655 622074881 641698749 301851106 436874191 974854826 706389390 802158219 494303233 449340245 248578604 346985418 60285702 399418362 960226770 596462079 830737121 166885270 671348027 52185647 434980793 508593799 971130225 31169088 518377982 979284308 625044827 649137649 602231734 459937011 150619742 329397478 92641082 306954943 403074020 748612641 131091161 884295544 417594545 749790065 830453431 985645927 945482170 257495507 778480269 419468845 20339425 768203219 786364315 587701542 490230875 792733385 810678704 645347005 113545937 359386004 457515584 669191693 61840711 727139612 424766344 733338134 454035618 255850603 890081697 545508659 234596096 757860288 77973751 218609642 509403080 279316051 270936837 571874767 695765601 284350917 91695078 752295378 257678737 568796891 588682537 586273327 404457407 511321199 521167294 751690020 970069051 246289887 206002012 554419779 294401149 201202289 178088755 917652839 210272732 792671169 728447019 614071874 639224406 640591358 685510988 727546028 832229545 105294295 304096000 605765712 337733353 397356005 627203814 417972521 823931765 43038633 959055537 424591707 833891252 697103205 942042477 874275828 440136464 182005703 32661048 940874370 407728306 649234547 974397253 58419538 946364842 575000001 268443396 606383594 914204999 795091136 608151363 784703613 123858862 630878000 349542553 87159883 408207758 614663339 443010754 450603231 170569646 22464606 420854385 504640380 43878991 305530222 668234511 943536988 21693964 605907032 716662572 151499292 265771810 776328805 553691989 173047551 486861281 547949900 22412878 128540163 762862202 304539998 148239338 372878704 881652284 101743003 171485495 570796494 223842844 195162533 188903245 508125493 915776993 915226603 267901053 421576208 220694602 120537734 863708918 300892317 927062865 308327976 31995038 495015258 296391469 585780470 313514376 368750797 582088969 527664277 116778584 264770372 522989933 359036172 118701531 498038244 622780607 751675732 769792048 294973163 689373233 283376887 114801087 224664279 305416830 298027943 332740464 158661779 974468529 824237248 429434402 540426025 474593945 836257349 471564484 696112865 400361144 578404420 308828784 770638550 777326463 492087373 533422599 513292155 508958326 487795925 976653100 790282234 354148686 218922945 819098355 621511134 61461438 622640577 813362079 629669885 526419521 989186622 261307776 942826190 143533554 686534721 867816291 297891403 252348137 848067655 688483464 588416023 76720966 101218048 38089282 330388426 756803026 824453293 801835614 743222845 436870914 472882455 283642474 350890129 202917302 928284311 232966482 930632710 831945444 492777109 158424059 981764450 13603210 158262749 579249512 928827392 38045916 310933258 449496181 861568487 488410967 294445175 337377364 254220267 711106123 84129377 717358440 476744642 612193627 536372891 57267426 184532241 513462554 840719679 842846790 170200809 746961145 366291025 954897852 848015290 940144645 630793474 572825692 786870723 101033226 946282999 626035503 158296745 230949366 367222972 100720150 975282275 854384233 794000220 791496047 32222814 406114364 511825879 252101986 512541757 301224043 592033900 452574042 743271074 550252748 186718494 910339214 95426862 263961491 143721819 683593607 118267213 418064396 616549514 992049099 813579586 5162412 605762227 355149371 454192033 832817184 713922978 280338681 910357226 322841694 636324918 975135762 795027756 962819992 641015289 706247739 811320314 542822345 665737566 477191893 99966134 389670286 26272877 219755380 749325451 97307517 365439372 78837322 287055312 826297759 663742059 887698455 521483484 464859808 29328632 93615708 400906027 659530342 914870007 630592896 528650277 165606393 356526625 408238018 912934867 347578538 254084682 681223272 760154279 910396685 146662518 830083075 141656827 236318566 838820209 814399357 214757234 961857304 597021675 647995063 929623447 377453668 441361551 776361291 912748275 914188712 82352475 520644603 440637873 764519574 857484622 640432458 523896593 921158174 315214068 206296884 748422964 278470401 22986789 203783366 544043899 188472180 850108773 548356561 11047034 133923200 552011762 631850060 410910550 400504818 493381985 855486435 303565389 634606119 159522259 47434850 759130424 202404361 513300594 476487851 801204857 825465505 719489085 566896569 484087547 243972461 91177398 658935885 506098680 68122388 522862654 932514265 855845433 319678582 421763587 529022446 216729261 35289716 35150008 633023038 483300163 458564019 881799002 343983912 411391080 138586650 49877705 757511522 728094588 960331547 667002869 669578958 929428599 816083867 71917021 151872991 699145542 365552574 647597472 19391670 450171622 14161817 132916295 734728344 899187692 597208303 616421549 912393379 132003354 160856688 415210391 752075009 122249221 422319049 979985435 705402577 113770888 891106359 472363363 65377684 340741591 578565594 458366310 19133251 409702791 481365599 404222863 691737755 844656480 520038053 636156223 857873183 963939091 481574950 622767653 839646181 798057290 243165984 544243707 964613911 120017262 410472125 220479382 729491754 942046405 527033517 179201435 805156956 890020857 809638736 692188661 35943438 62042101 957053147 7641979 428577055 606452955 690079691 438074658 152928711 188603032 231056537 368175058 241174295 871360975 916565660 577818207 66219880 895164037 589607123 951504875 719942825 387845656 989672741 902617101 183616745 179670022 516108979 602719660 420422294 49663973 483012007 980219098 615279341 634079947 235601588 245182121 439686831 427685618 289343444 173144320 590817485 413413008 539966509 548158219 51144862 875464020 368783483 657062240 356677894 790210690 86576192 123999102 188432460 763924768 491451718 908839714 719040825 123581434 468179010 285615712 79869956 213520711 375216180 94393163 436048395 637828673 698663306 325782012 89882557 69848119 471212060 59756434 872914695 721153886 684567681 738863730 390916288 470487588 52842205 312842248 989684183 493422434 786401575 268396311 781141822 952718387 360537082 483998036 488934505 133850290 472267207 179868441 970117391 391402660 522229387 713184091 697652848 38432228 483817732 548219173 278802661 497082378 427552039 829206756 962813683 427528965 804900341 124949320 687924059 736325162 29611198 27112671 733672019 908408325 82247475 971616370 932752974 650546328 860057766 885525762 167565315 255288044 230723256 254321615 874119867 637329278 397296826 881647942 327454880 990908471 761068894 500110161 485382639 580902391 581712113 504096615 563476600 732003355 800104840 729338145 493849932 443291212 578254853 256928165 276654800 745885877 774380290 336706134 711007531 674310819 114615094 916248651 116794695 175527823 884390482 277376501 429155919 157039004 975240244 9349136 659771263 530816974 959965245 533608092 124595820 279384433 838067782 641276143 340324851 495081182 909143805 486858421 604245615 409674243 209010585 966464892 261710744 49572232 67327110 72688080 933860957 987134630 58580429 366843811 692227640 814381781 954999588 255648443 773425430 360524879 434456299 286865780 46293234 766593584 856130688 94396328 596079244 405724339 251968092 520446793 270989148 60488630 294327621 159046459 860517122 584002072 718388180 635390453 523102527 715876265 689103110 256707583 974423645 38955311 184760688 490673708 360709769 163409512 152481275 362345045 451761319 522606273 804067298 259560186 344571624 445107816 974753749 360878720 375044579 893631338 497848490 278382969 32994219 682498370 627442391 217078163 363389226 65751379 420824761 557808745 928761576 519336898 412646085 96370469 444511156 429410118 974062219 543417522 80391911 580789385 414215785 999794662 875186281 866740670 655179996 608457269 504685671 371083878 850269777 312799032 362958374 992423371 376856392 691175580 602404061 488428796 685729264 292653745 942514850 670143688 529687759 692916332 368596940 23230892 798677919 834782169 961220117 647477004 245107139 137601909 455232384 375564290 714068765 599047154 480430982 982388281 918383194 974796935 371571903 416737470 880469114 653050112 112667124 340851659 798919639 65675523 971544943 308475858 103821884 293901019 375927652 699495034 386717266 680763 705558923 282585751 651803247 695902700 805544230 827134801 230835260 881445461 920775393 513109109 213812878 223534437 737602618 229392816 139310164 393141303 133368441 380821955 907971300 853663389 109506591 947941045 26563541 753182404 475043106 921392005 74949997 776015066 841757397 64241122 451964808 898644144 376957194 295113825 991384776 530186867 936784896 308371036 171974795 403299675 780330845 273882174 418067613 942340295 737380118 946507863 183499034 544498523 975964811 69220170 577913804 581897792 892735295 759031755 267198221 684314277 407889567 202702466 851047008 267331026 658504154 948914430 777612421 613602051 831435350 242788288 483217120 511913029 187766485 30675004 422016384 951224961 64511259 489847716 871979096 109729385 709227616 863464443 289142914 474034854 655444838 6520120 99713058 102302576 762427029 380955035 484711059 78989544 87113347 119208137 445952206 93251136 111111546 694465420 979095646 33960764 547889191 219271782 597486972 749290082 270521355 600654502 993876587 97282984 165691189 503961979 845944450 656732566 647734339 129837618 6135828 880027083 336870795 979773364 123142447 82654008 121075286 186784226 627569723 272585348 6881989 16133308 744861409 669044922 881822064 637087104 337955003 197555713 275599204 147177272 506683940 622175752 628655626 730318255 237101101 786490949 55087349 902058135 761262182 175200973 714989131 475538079 879388724 3091833 394887617 77680319 187447316 658262017 506475175 294629870 951366411 897927323 410312668 701443215 701197822 560451451 320893460 176671187 830724283 36803016 386735917 482854545 159391783 400123368 718407176 99847651 890675758 335042678 291625741 888040121 225095567 351638554 204087605 557804855 83828032 92218556 163757726 492070174 237357492 792675520 397160017 908984587 399105467 292536330 149655016 512229926 43588735 351693612 999323698 994366212 597916899 214959678 321506566 172790644 505686445 182392128 490519260 526125385 232060558 782065996 409675683 477928995 218473233 604538138 535526550 84571561 34754116 7291428 127201914 52551590 294160396 326711923 280675709 406403969 703453835 631673677 683657520 429984765 106908100 868798321 850434092 745400802 749150125 98186536 935706788 170626695 437373827 882239213 233609397 101119578 970828766 211653991 517486398 794176955 238501973 234792294 932679828 726844420 923594816 727278446 477575158 851118227 690192288 746131431 116786488 965043914 95914661 740566063 692349339 425871020 23417488 546934642 256386362 814328218 269495305 523568614 635433989 313398841 417500576 672296789 470407263 712057017 76117505 74896731 418147846 60263953 542078381 116274635 842879533 199340401 811264201 749051026 939446852 870520063 707859981 923332129 637083398 752950172 96332197 35380155 593891116 585056429 850215673 648983459 690732139 488614315 482384522 421913107 391216242 556118738 658466320 837810032 287464776 99721736 132106589 923113107 505951311 915821473 429897396 122639540 837897043 181978321 88712538 393977494 585361944 231674573 518544967 842079159 70068088 154664334 237744886 465993697 226538783 734084596 319453952 358691134 708196297 660507362 49404405 218429477 942543259 686345064 876686203 346483910 447666873 558522562 829773247 740013293 508969983 671531593 918980596 749271757 706107201 289948615 108607393 202600265 901257617 741642986 529933132 326402609 405036914 952773985 201043464 281451898 450896336 515339597 411280252 460645004 830186627 61847745 595107853 902355707 495521610 547249089 50930655 311138868 244580773 975092061 497506838 354614680 615525073 969501204 660631998 974253392 122532040 707381660 350695208 646590686 711779852 116249522 880100824 746290289 752933869 687739125 625761728 939157131 295056226 924372918 719747102 564067640 937277813 563106271 756494583 700895370 148628397 123308435 82849818 557931460 312428038 843344868 915508497 618906673 96805982 593572836 662569843 994504926 596266651 540383411 581566347 956591808 345770434 243907487 712368549 329153799 324932294 148166006 395901083 630491904 396448901 319741505 556144299 346947962 418720538 600798193 993404963 35444938 319119819 358312287 847495433 437198038 602048856 181580702 18030613 167833500 955388545 879377170 819949654 503825986 493255443 892356915 199763631 468093807 93933639 173194355 667414732 372566259 371163501 844894486 210399417 520495157 495845148 490163069 568542290 531772303 794305787 649082944 621888150 359929886 237416164 159553808 145394974 459726221 920222568 392442478 245023922 765917445 558953218 363828543 122367335 368971119 616335496 443382664 673617874 909936182 903670084 214396679 232333841 229455820 637180396 130039831 705302037 732199631 204699302 256297822 731313614 739892724 392100999 911959457 52256298 19714346 186627880 182954622 45833831 345219626 633935173 236129089 822794760 893624739 285836155 156176363 740000719 442428031 94134658 501393162 203242042 853256263 991837790 462881957 402186678 591046027 521748681 835841544 374297016 733446784 745947594 746031161 132798222 326802889 596115584 208510831 737755786 367254156 416154554 49247904 10516060 326171997 207103083 209930464 517120829 975870320 863171296 551239511 548436169 208867897 433707550 459804622 91279804 852322743 188604852 349483716 108405231 161104435 534729160 135125173 543049566 609154936 300223357 738927660 981765402 445103375 524250417 719979391 412640461 128391750 545470897 426502993 907009864 602848868 370071264 853450966 958787779 821106458 241944922 860568174 379113312 545635196 172306699 446757358 686890223 839321211 445440559 114728665 284020124 83967187 76586161 140694515 752640852 19034906 55327024 844621561 551943830 343726873 21102598 608872975 311805312 281123348 99086194 76068050 568773943 821348603 790037690 978679342 681835507 8409015 785926649 503671259 558698652 367617207 321151830 361055116 807681465 448330917 870255619 787167232 347540504 234552356 289539211 797808330 691394538 392758590 720361046 629157204 301168263 222488876 31575468 46498585 578421033 162288004 447755917 928569103 644109811 375700026 348522277 331521647 620033543 610926357 261475866 796664546 729325238 410654045 206376129 96637849 823164648 861628059 725011610 180222972 11979560 749410277 346049774 180258659 648932993 151528455 572013139 293114458 761526323 216763345 653762360 982105890 474080599 917433415 807754501 666754922 71369672 62189187 130507461 347695544 685638564 820908085 366348901 739496754 382342249 340664636 870629330 541987377 831377558 178711534 173584237 558450659 622346189 685119726 154297563 421850562 623218205 572976690 281813048 91913004 122379648 963317164 739405844 329554400 195072531 253940184 311892758 794037696 344504006 816374445 414399524 258951610 184718952 760676335 243753598 127067896 57978093 180550231 116853373 471321712 51647950 887753515 238315440 797539717 349267864 22455720 329670140 760654342 396176103 89751579 953800757 898762526 677807879 960653740 612555454 517811425 584201650 656558532 99194736 185085163 408528063 108762050 887463868 67926882 580698570 649536755 310359730 832607134 366582694 584563521 973115592 505221107 901134121 576981128 843023717 749914927 292033333 621723984 501106413 480678121 274361134 265930732 6794786 255934325 830888988 356748030 884823262 921525005 633175424 549621173 294667111 718379104 818095903 175473736 99075665 104935652 343624192 977847905 500095526 221449162 966680482 197248848 520562534 872348703 102174309 349099686 717116652 330819000 211559664 148712474 594242635 104362847 412665837 9820649 682700153 634788418 705460424 471777528 232563102 627347910 120617706 927815205 487144176 163117514 177485997 804615220 215419847 790286564 714640835 270446968 192031083 129554652 604595241 127639048 124017874 151349206 303411736 541729897 645680842 266756653 628074135 246738040 73373558 311980243 524545726 9964470 201614616 609373629 866001463 61543524 811639082 206033049 269897817 109190635 253124853 248202875 290285880 728661645 440895572 582544368 600348090 508583737 176243512 209748447 289093749 427347202 478720464 138268739 347478622 458857956 436658515 770330976 228347711 447349449 899310276 111301726 43382532 740340001 805185012 994725053 252831059 28677476 791192025 219221964 443592380 553466274 150429330 791267881 319489167 802148628 738797104 446917144 415114956 462649931 137438244 7578832 525629641 614195802 200501098 22335351 907787410 309671047 6721113 609678765 869490318 586531737 279518506 21305417 99142218 875343555 963411709 568947344 572645307 663435724 828523693 967775391 869488777 751759787 425748385 924038604 134328790 560845454 134073040 332115226 880494766 351699627 874744173 818422830 964378432 104236283 435053302 877008487 400808533 585630278 497097848 608868072 929450092 47767268 367989901 279184578 33124759 435152235 193006999 117079833 982097771 404032705 570194920 880863420 986764669 518455349 663415906 901783061 477707016 313327825 916094260 844665097 124231575 574856154 835666450 957109982 289189478 894416264 610464359 678708282 939123992 93134402 743651719 830425541 422996036 912679694 247779680 530721610 983337568 901878896 719186039 102081486 138611397 52482205 237323996 178164352 713994567 211298752 603680230 712829313 840196747 527080443 96555647 266004704 973416659 779587661 67023663 315552641 382511749 217115430 909483625 135619903 567169436 573240943 625776647 188499711 139423345 158322967 300006612 513761605 909588303 539945197 107296394 371412134 75218512 859555804 898815250 672417717 772966245 701148497 529120273 788792051 623199737 109887543 701965585 49574254 170764771 585701543 265595822 508947182 972910 941837525 377407442 374175380 690474184 725187256 292739179 190956275 566102474 529400341 621196320 77067448 92920118 822127576 742761471 260004198 662620486 319368065 111455215 902172740 878084035 103038161 23657448 354104354 450258816 680048252 951389639 632458173 159073700 616740974 887595053 290846098 203348784 540722235 880433335 817295237 995292866 562520779 128263679 190801617 940182085 677378525 202585929 711309132 36074540 722707483 293639763 938658859 930600557 859902975 464933608 670437760 169903426 675784974 316386618 779235044 571352485 798885480 979340540 564087419 771449745 931397756 169813358 286635708 853647052 464999119 674506876 987334620 674979747 810252295 932438219 211431845 354731523 905801412 136780753 485827087 545825579 356752274 585616843 43501712 527801071 160315653 627270582 724962168 410500729 362114998 881452997 987901147 594479187 192574655 187113472 534484018 841753375 295305474 912799848 391635839 679125986 525946199 574203604 270625009 664672560 519469956 922352605 715669856 601496913 214028956 149411739 21500822 862123010 936326898 674820846 236909863 546622831 711626103 46869430 604774018 250666602 364213244 839608561 897929236 457060617 346993774 750720284 308125087 345788018 711725308 437855294 33208919 781364499 440954950 377962709 347596406 576748054 525230712 454478188 837345382 505312376 193979645 26292886 731374362 664888142 575046008 129338360 927024672 222025564 595352585 756970705 994645629 676877154 528054444 799581848 228654938 144109863 316533409 953613070 112745339 361820982 506803420 438352013 142575538 853297526 818420901 829249445 418972048 901628716 636947066 868153245 585116425 404291655 127543915 548604277 332255268 424489629 436096085 428773186 829137173 427683036 191403289 193843962 871344766 775455486 652059974 939980823 83636029 147417187 584120902 302396319 340288553 38663324 913525549 451059080 623345752 149986753 700312665 877597199 687666979 351379794 743265087 713214390 292421663 797064790 87136581 844647892 134573346 931277804 660727987 869119186 327296285 370516716 680733089 245492606 80820125 319989523 868100101 992538209 259310820 876435471 298779690 197455132 294240336 155111606 694027472 148350674 968484293 939890270 999496755 625039031 215345789 683552089 945466271 174861343 633239146 647201140 533308031 967971915 866399761 585432615 248324994 741417600 57217204 572330013 949024297 318608777 148287534 812884184 429967820 752900012 969296971 834553603 219001024 203317541 338437793 126323147 183376225 652996729 937398908 583871517 735089069 712977388 116001403 976407206 296473614 741661686 859883308 58445862 879179487 141864894 816694053 777215722 793259267 739687847 168212878 468131905 974228830 410240066 652004624 407698048 34473208 481053912 224379139 242358075 941213764 792296140 747090754 285242481 109403944 16924089 253011451 882078167 715091240 958272718 259778833 237541975 303514737 739994240 277710780 228676616 729731930 699407298 718748659 562716950 900497166 512415912 123372280 95788506 386804523 781762549 745404563 974392875 746726245 21980484 539167133 881916970 26004027 872155431 350080706 843468754 380053493 59715598 391937002 162480084 739479938 381836318 15876572 950148605 932152574 401870983 872810216 615187850 473338116 249194788 655787194 382997630 791547809 847160304 318990878 558258763 657054469 768957850 816263036 360838404 768838670 63046450 229392592 784583449 251110127 563424084 160528503 136835982 839399952 548282059 140307901 783494892 11467006 442392803 978841634 828730221 183529998 660021171 29632968 852941505 122135554 61328855 249763937 6740965 25538435 450079371 192442959 929085025 163356379 770831086 747560949 130408251 35654962 437799413 466636497 883727928 251956111 471329627 797462476 271768338 373764807 869697 172796546 166888350 85220662 906793279 366446504 499772722 659785308 693179878 117797120 697030197 60156502 876258499 852542996 916273150 488474233 845669351 226329065 772175832 100916072 27835164 526632203 370400594 868102171 88344620 24727420 161597404 519437677 954058585 735554771 137976885 63710807 547556572 227778355 215678344 303197139 248643249 556841801 964115592 257456274 740391143 614646334 928664164 926847925 594192290 973949638 499399091 784813819 426731486 860908671 656060123 787214882 164500949 794195458 441700409 925791537 939447234 920288110 393677221 962855871 580033043 355499601 360374137 794276706 495381014 692727112 82201519 638699365 87518105 24240353 491651230 190691643 505969093 888147434 552683589 244417928 157435970 5257342 45014147 285415100 713427483 85617188 460055385 847139772 606753084 771627356 373758996 155206719 372652123 304859306 87492756 138644666 455520319 454470193 603140256 704751863 850757137 180542102 896111836 291010774 77345427 313315823 644610701 776460381 639161517 816388804 270601332 499373163 758509312 695656810 309461641 498890008 960599132 562085574 786344018 578139030 304365650 886085504 691559655 705031904 927745096 737239955 591559980 906943962 598207936 483377692 792568021 445118056 988955745 478991854 786309394 338689899 213591623 4342842 922597442 799334525 932541555 896736391 77070377 400528859 638066213 766838285 46597196 448167660 728579362 927504223 133963824 461918564 215082926 65932220 728244869 301384165 990100255 498940144 740592940 129722595 213905668 274463657 460894069 256133160 980109223 701415775 296956423 687131064 250813928 513948880 846129455 118951973 932723708 190782281 11834708 670299585 990839174 303393609 696454828 255211373 322473535 709759965 522179455 503772832 380299073 703522303 18075426 114421226 564036631 510002301 649505917 599577742 435269076 18944093 738831273 704738252 411724709 815581465 145715455 448307963 660355470 788437667 722857458 510429426 974266506 217814333 27523205 910704414 657744730 279449272 122476872 107346527 395331623 776490877 199305594 378798240 885745008 884896176 257830207 740267506 496639384 843621552 145274426 905530674 156742042 305283217 163386827 802628653 720883219 100307877 140638201 673134611 774677727 941062054 187383799 468300515 667378311 172709922 642936423 979752513 147040367 380883057 649275712 471977946 866980268 572706617 655957723 972901300 12961976 718001813 558423897 557916914 639173532 139478951 253977415 241727850 969935949 184006609 17316925 600586955 565041507 454427780 985433847 807527738 823599692 912826231 352317986 316503472 562899442 108428901 922747823 182162978 627293092 22461827 698075569 629255577 513750354 222617392 644524463 795995795 541187570 105841365 804206121 127974089 656618209 912337147 774951012 931325551 976785165 822371279 467827271 773538010 663463809 332030257 44267278 671787348 503329410 833821383 658363128 798006142 956707560 785629293 633433272 136164526 477226837 561647821 964964634 988910678 21690652 885564309 828560902 847715470 803536748 642656874 819758708 918643532 738535741 62609711 438235612 684888442 714322966 981127467 722020923 870482491 508408927 655379347 746712037 592656238 160562135 200539383 697866127 81938416 946997348 780711597 337438617 216832767 569773403 976654669 530531723 122968778 399053800 960353758 470289557 213942629 365789754 11928380 481167624 859804992 808910036 825800412 442430174 977651517 576625329 834970089 256689722 436925194 226633683 232992183 474567712 585467720 580120920 84977595 394231323 286349294 385717694 39980927 863084438 741798245 923123981 940796000 156371583 173342125 993590833 265348972 801913871 682478460 930535890 751683840 720390994 900187060 557350214 472417032 380112257 423882518 684351509 959211172 813646290 218325211 738035314 415135043 203608770 776115701 385102608 226897135 555579880 969632077 171598655 829977880 530805654 335870587 457931047 749787730 788634434 878197519 414284913 721829877 674829117 824517371 32776051 856458831 699675056 217034183 432689010 376187219 262900436 288493511 985311372 146724787 286994900 328163091 657968907 817671119 598596274 925937010 236159222 407210439 282258910 213470803 7838267 285680203 866948237 471283193 26544509 923763402 190151246 817919539 31411126 657167757 421709595 591137134 392183570 183616344 797590594 967065240 878217770 920297619 189276307 687978252 627743461 589143634 434864620 904557188 928143582 537890055 300152878 307476737 936369505 827562113 710526369 654955165 323300364 402651571 146335018 331757769 103951512 294167938 562898346 443808864 751820657 117303852 21373604 147230598 938109097 166584085 393604955 729488625 900978109 810954042 389251878 257953855 917649459 305019899 176991657 709263384 879087984 386171739 285824998 918542763 84377124 391520450 979013799 252221059 868881982 493770249 230484390 883730452 664886477 193745791 515375560 717211447 490181089 647475207 240036168 638307130 858645552 60047775 686694385 680922648 446883312 379900386 48737762 644571242 993321984 200567476 404771954 743562156 16473276 769647085 893776392 808768369 952581686 694355018 510241516 123802124 152000086 60670946 896630051 168216898 248745526 569937086 139882617 130267063 177169940 246784707 632994978 87605506 782541505 366445428 163543412 332376335 43429477 233355423 297945509 712404279 845592557 252294603 910236949 876129753 201548741 222328611 87224023 717170034 338781162 202410187 701357777 814104071 930119436 921945055 810634949 999295030 941549785 951259297 602972700 162713749 820996824 865454397 845810425 718821041 395465376 982230365 353763446 768487025 360053008 290900390 652417914 672551511 473840510 142004858 943005203 678401775 561276261 571416088 158386236 6265192 134665483 723087905 754610180 50163425 594271814 496720142 692066672 565359909 110131496 26809427 176901487 967960793 153825720 651812297 118364941 853378811 756823542 504961685 273749086 870701919 906738675 802032869 3185389 584964603 482163179 333130770 909063070 195882981 291448438 684677031 64278229 67128483 937263193 535702101 871596931 716670155 619313439 464656009 818326564 534490038 648583570 288527126 629664935 792980929 207222671 759321731 752560684 239573432 786696958 873712049 261451689 387280513 692886075 130410287 181153956 106028157 588413596 400119602 636778817 439358803 136630240 192816810 400259316 37746738 676880181 704702042 842389199 439524875 395929549 459423804 358911992 230432467 921327675 892748511 294860433 224726518 920535984 879549451 56927634 475247299 276478625 874072336 922776182 297552562 719335980 158336526 428339653 47752081 996119342 417073883 813117986 398127659 815204573 913820940 134561203 851346582 123488089 803056987 745912354 339608159 481033992 808319220 598379200 677208005 112664911 941970659 771447428 374394856 535201312 84627254 257841104 591279362 610945181 308039201 16230647 144597957 6930530 653293025 166341306 497009210 100456131 995531020 312969209 871929881 228335044 191499406 74361665 160652002 684430007 523077654 851596265 11984522 71437272 685300928 152005948 751833023 922666836 582478079 26140234 95103904 666431745 774667053 540282945 725307479 455309342 115461933 112368578 245388892 257300550 882100483 785990999 662305767 52607929 92150512 886550263 480627244 877488395 592215816 169806293 539863896 607938209 203629232 97530254 669997152 668373451 494976057 87358721 840303124 350220638 858845752 145990504 572973897 51691911 219502448 79575865 266351638 417849713 487796292 910336840 652056510 552509803 812901394 216584091 101413426 591048756 781925772 174755530 719230911 947840480 863663428 648084653 295824077 373544894 479738583 355096547 575883643 635438056 393366310 833009485 150729246 765863752 915792095 611871527 593800654 403087892 798089816 230542842 190992984 825879244 799134895 492245235 477913115 256435072 840977408 559888271 567886330 305324317 11244564 876502898 800940186 945002029 269636311 821189623 764468057 65008643 106440444 703753023 188341114 279240271 354111739 380359200 486584183 827990796 309991186 485738314 584534514 135088262 949137324 913742341 4462557 809418112 528810848 826398781 860377988 15561555 18115197 389382351 90553933 673743530 554781561 818132213 988150407 727693831 768712444 441734236 926818039 947332272 464074960 130930168 250506792 147089703 601763452 753889859 348049654 64707747 818072883 590647066 454940297 737636634 171965476 983366465 121705934 158246560 827733308 965113784 744728768 937074247 500761200 858871355 908445069 701388579 26583168 216124341 467777403 973945061 438342286 652232984 967011354 981081955 78481604 219503588 474891039 670823091 467731260 265731869 574728127 208297698 52062557 471833807 525331403 589821670 594882567 999961492 319734347 412713866 70936810 933177601 724366589 638436228 797327221 834721827 521717024 197281752 245758975 686340179 452302772 262436985 479158222 706692081 798485639 943794430 930195815 142979996 736994169 549470889 80538241 100828518 175112161 457068296 680674904 749382435 760352474 900129847 499289217 217090415 596662084 34474208 541470968 158799146 882686066 646729435 651736918 715259190 401128364 342031793 721737011 556213015 664945171 439551334 708933340 151866655 300468043 902552540 768409289 625925423 670754798 932694799 377679415 62289302 902390844 642015514 423397473 11589936 225712896 349665326 802726708 268806649 997523785 983537404 541035031 915596389 502359505 299658923 881831824 541635084 247488694 702052679 125229902 151637480 935203758 94841671 995923516 814907223 289124627 897055534 725570283 770156514 207018208 331730777 71914430 393260267 537858085 66796327 469316707 167110439 133434042 774991051 713844233 910317984 993074804 643688234 482966801 955765802 942463063 717622072 495928506 221100225 643481870 483685389 739140742 740361319 648933813 112378841 697566776 634679756 440760399 463746553 951899037 783128848 772833908 580355665 120444277 827142753 915921635 546096110 834149135 511166536 277030654 474389340 866605161 350416396 798454077 389156244 828553295 211654161 382451711 989135938 403237708 266758771 187659523 243900118 99790078 913082019 772364088 421300296 716103217 542179934 262241506 927910317 55956714 703995273 592488284 926655806 64165666 977708806 803972299 374203981 580010156 289350396 612861192 447080318 174205749 837796378 354663762 556828174 806152548 668496504 155029324 716385352 112671040 869762720 240070705 368676499 245046101 997943430 938716733 696340289 500309277 181030646 763512158 929458968 330476092 583475837 891944295 172387714 619976435 194488209 885267227 779879609 725882042 691229126 525225117 911373324 135189878 747138054 48202784 797047168 628204143 218978414 564197112 859497639 79739363 74836896 663304756 286299169 484506704 850676036 838349055 207225411 209543446 398849995 208439328 999162734 98037909 612689127 267255187 334042147 206950515 340841424 466337763 863760182 814308965 112606143 994230097 404113399 47062737 825869153 352620560 121837502 931919412 160878703 780724893 253086915 104749649 794541069 332495878 823214436 722030032 699848656 554074251 180409258 366899179 466540636 884104455 712649753 454663440 603947795 677195733 418656965 826441764 914677645 400011931 387211627 319306255 488182438 106739374 778861328 762616088 525286033 827573304 880552416 862296558 834593217 417031393 213241927 263860846 386096655 14056229 84042500 123892427 938977450 536840615 241927294 282938872 368869225 996054967 446310654 83652207 4729024 761823795 740403132 736708742 355193466 816289659 776156696 821319040 58564523 548517773 997956873 806611426 897655574 474946438 229272076 381126310 441564543 448704401 230301583 140894642 344208880 668685302 841085459 198087297 163132177 456735610 122163569 23498877 713795745 199702610 743417547 841960189 399877847 580893188 73468171 13504309 139864124 388102677 935678172 649789245 326201526 320393463 302451717 721049497 141034365 557922000 732604459 720470918 876075520 765428741 127270265 17326047 992514160 628536397 440007695 737076457 508331506 183997201 723876163 152577935 580384735 289377488 245859825 393501708 104691844 874481710 297807444 807949309 890571621 376939248 563873322 926532694 594804309 503549683 306199588 337600758 968455314 922536450 536537370 599814286 726338565 838390449 527077893 83033111 789619833 19753016 721856680 299172587 632873452 386038170 468760243 795348392 447938421 115206402 436043827 385984717 631198556 424153821 200885489 887637156 96354418 556558157 157313871 174566350 7624711 365698816 593933565 850511331 112398132 285103514 818028117 164345258 580370125 229121130 730846568 227836867 588296430 618815515 381686067 33238900 464191253 343106114 631607679 233250321 747218018 66327411 217994332 899571126 164421839 779011649 50587998 904340573 263391384 235880226 74502541 408176886 327624740 288604020 247896388 933914800 224507090 462036822 739154406 904875665 664572967 300670353 577582841 462950238 435586646 820034559 929813098 219266886 325231634 929508328 116200169 280858927 962522507 309021390 22549046 674391158 270654539 43286412 201072443 33870087 28372868 695687071 29444533 416840065 13147775 269842521 388951720 157472451 913182423 170886866 987412996 889789179 980485366 281758763 551228558 860273769 665818544 404772724 216752288 260087129 324968678 390957398 277970630 426745065 20129098 637514568 873556377 7535698 754717969 960888324 811008652 828277005 54749834 693503564 295549632 399494696 26543216 410782899 348342899 637888170 394672454 887762077 309668200 160677131 436071638 146760011 971397451 190325687 927511411 514995178 926449489 243611659 82171394 17189807 67831132 627295895 930194159 884066656 784171318 500497309 581536872 395163232 71941528 38855346 251447532 126295925 302358720 818626990 466909875 98177658 906224062 211794807 534496401 42716085 222085627 646305471 21627722 769498372 305946517 663652936 269127130 210696379 449775395 151804563 29574408 387338763 952999329 378293704 959394514 933372181 881831711 238446243 469202847 708412407 25319824 612263267 388159492 691522949 74697884 381803152 907070925 91152749 145684717 795259096 640853686 856281403 82467619 578157500 380371782 426020569 878022195 552503476 440251765 937815508 577580948 466087902 187604639 98603526 752927694 562430575 85220665 858265464 443961090 849420914 969213380 331606125 848655569 283981540 543774121 663990301 22085402 987928846 632338655 605301331 294856101 132730130 672744270 517943333 453902317 833748234 79406073 201349067 325047762 499449305 136752112 21475747 462685302 926531949 349245015 70704750 96762462 136647127 495466662 174145846 248197497 731438343 157876032 154805871 578138228 676356853 137389819 28095770 250027854 853223990 641755452 788463210 223474497 257748583 875900237 488563922 996578995 520845361 672257185 335713223 667609887 802702051 504614584 160426582 982955526 796995976 240049122 807261215 780925856 210653062 144466641 658853238 255599882 819830239 697861456 172455121 749548045 491697894 459765220 584960850 953306978 836491612 399351074 685769055 616919401 181444939 180488888 130905298 788637621 680569461 514214400 908661516 907957652 121196758 552522959 921452478 765783471 450408727 504634820 790433784 565985838 391658578 177370973 972741395 349579301 823609877 731947996 877000357 745937760 654340002 482328918 89946911 838375107 306710389 35076102 420734065 458103284 781523263 106325954 37875776 79630797 1540893 909094804 606585199 954035840 764874313 451436018 714287004 434059246 43641503 945880458 39596010 610221226 601174074 948949539 831981807 932312067 537547718 847536612 43551745 852430102 741649456 214681655 96756521 613647086 65618860 32097425 458505967 650450279 24270259 574329127 609067870 55399798 745947573 871857286 351777478 755389856 520516180 448305141 445455574 983794426 696795458 250616594 708378100 850999157 560059830 510816412 26026303 257213100 416554424 819023327 199083863 596692743 532314262 404103207 792058546 888835238 569106976 868101821 367091460 67831325 658522605 61313065 82058667 572545425 483885804 92796771 651735200 603745254 143428273 703575512 96448435 439668065 542250116 445089951 119913612 86676869 456542690 447834371 596634350 577971574 312200704 201701744 663061164 302948646 553828925 770971451 73681709 741729313 591440036 896248985 276424217 173020171 781397578 216749208 452430759 636511882 452102660 688083173 219248273 126935143 432096964 917272695 168579730 695526029 587817047 56105933 635469813 350558877 22714950 578405051 500921723 917942942 576511746 253295604 307068160 415282286 651699876 653410606 937997777 627065442 665875490 816147985 672463067 471967968 157736528 953137221 305401994 215191247 886688794 837625301 477205487 897761467 373934285 867194505 845278261 411192920 807218396 521437015 152926583 727591084 416327051 701408056 690436561 636164458 29899535 176777641 201051173 770831378 594986575 80325926 569999354 201920622 536235202 444540692 172430712 434118096 786151059 448415249 707776686 854397256 616785198 530012350 480283689 688578364 301117258 42228030 108259477 572905982 403326757 121189503 531237779 48459434 508488838 600332971 26034234 511817047 705387687 568706884 391471238 594203900 55619655 572021601 544056997 894226715 314841451 365772189 614008269 129674175 152049759 194101213 236634937 862637274 772117406 419056678 823506384 888892650 468105250 634535221 44011759 509844226 740880116 548973296 36064808 298700870 509446465 695910424 837469767 716412594 89423051 294148706 941961292 993883812 395821749 974220698 320569798 457975230 376873024 741685192 605897497 137601323 140125113 38949903 582152098 586593399 294469605 674507102 972320120 364984896 32259119 236535354 205731119 654465221 613108578 346901284 692868251 279944781 550557795 641113135 554613826 57386969 378280779 831424278 615889208 552986028 101026749 612578841 260699872 708328072 223455257 825878087 422845445 426826521 910382021 999432490 215104421 426129289 280066034 317288064 745403221 129363508 881133800 379474725 878950076 842963666 61988677 163606315 504293244 211301160 869676495 19537231 829444628 345588337 704709693 731133928 576292404 640142737 7145010 61968989 190472815 113215231 410170817 605558661 143408909 801482742 489802704 189940476 202148324 358287630 804780941 206778836 576111965 372980048 323093127 105195025 643932452 98238189 435504864 532580730 113086463 351427585 648220239 19424123 673544548 643325067 312133887 570732802 560402574 473204854 747973037 338492361 648904702 919463115 982123798 251498843 456630948 774736488 522386206 829546444 53777959 975910707 476911735 494147922 152149599 63747574 563211556 126424108 541135793 928875013 906618794 438468426 734029055 554495079 765103027 533032683 222123280 756551682 905206068 314674519 129351976 13499651 984389472 840168834 324192794 538531934 65274702 560873578 257263426 614572888 879191286 535134723 82917258 974177585 878509919 42024924 62708630 165613293 259057503 801631420 573449862 63282076 828546196 518991507 938764101 975723130 674333829 210341287 433040785 219037262 377819831 993542688 544943150 425554971 482589317 22855808 903079363 73706471 720210559 530848876 432137280 718325400 201420211 897079856 977144196 414933922 372688721 838621508 92023776 680544688 980614244 559346615 935917039 180917647 834870428 258385198 783382393 805484365 965259846 771041886 86221674 612085689 593660934 17697035 902168600 810953078 484880856 959445859 66041680 241092637 97364898 851835367 670386310 230671898 17215133 611040260 599067213 168659921 87494941 772459818 797486302 99989410 612466793 965126750 187335184 587855246 579555948 375188426 387138722 179208071 100720359 154826973 429385060 217879321 891929392 404284190 357025634 644311030 490782822 579307424 868221424 886779954 309386638 522593427 965603784 805909475 306612888 783680043 622388875 477124752 209407568 711637866 123956266 371787192 989582609 655864307 664796253 144949837 886959525 517708817 995930548 883962196 853138759 943974083 601961537 307004961 791718554 453922281 563185922 727912909 491148623 388498209 339256421 887760750 563267475 129734666 161460711 670837221 460455532 13865706 303602291 302444025 751261513 605370803 391034770 572918344 505183816 680738638 3000877 442787032 170475597 521436025 261391887 203275828 867919957 687438829 959649785 594392651 886777235 354284507 690877474 914643891 448612321 723251592 188437883 219248401 796048914 345492221 204688648 300103277 519367444 563559113 987882961 440089659 87002057 834807650 767326060 154191583 194514924 936361239 118547808 244450133 250677359 485732537 306720495 366023298 171016660 209289854 730610557 227306691 984761055 449365413 69136620 145057547 350830242 217117282 219931755 535509875 277789815 657094059 743061966 282092375 897742185 641816930 91825791 71873539 604727527 28531462 468233962 845274396 778965036 312997720 56357438 964268328 286570841 278820984 520757320 212808990 729972601 651847040 298390388 589673091 217094556 813393182 678528816 609395870 455914236 101296391 336739629 140853320 401906393 755232369 364436054 598258640 228026376 735064503 804126570 373222858 503983768 508067345 534782241 514736756 130310227 807113345 734659010 718508807 475562411 231140641 703522697 536035047 763989840 403524166 465982702 708121365 389924424 770461567 24027597 256515389 888517403 35431812 665046669 778443511 906150018 82274327 292136526 131395887 778328243 396766895 417106626 961876423 91491943 942877339 663016843 110531932 303968557 928676832 651955410 403560357 726293442 234071454 786141432 56443889 705319179 807702986 899911148 744896127 149562338 800554425 568796216 426357372 778611167 510202786 940122621 751724144 716038958 261846833 908015486 821262050 77309872 118388979 907364455 38395497 764416914 169664334 954444367 73980411 63366622 46051122 902633562 901501496 100388388 325369704 278561776 791176637 956472828 394452849 628530570 512571801 228528329 259386665 420266330 375392858 412929928 394661026 292616006 637845018 280039603 567373133 790476616 471978723 532142342 408595606 215499693 208742589 61094434 657970113 861126068 438793280 879291366 312116959 183883778 20521150 416376148 890085567 294419640 114529535 385039037 205012566 832832356 637690621 2294575 140738694 193553363 159365648 305739392 786555279 493277359 510174644 616396551 697059884 836139533 171824015 105185127 507913253 512290515 204394634 754874795 942980965 118599723 171229289 246827167 975589579 265022835 716339512 302692378 575241359 442588705 43884349 98071385 372714337 903401798 374299370 295642566 843287438 984932469 780618464 978094253 568583811 489026006 407772507 580317507 763160748 838105452 56541862 369073625 876995543 983491835 195521729 350965712 713617384 206949703 290146447 362207640 110691883 647211013 361453297 239617625 613783298 359895743 112278221 349251209 334116290 417765341 29330052 107664950 917222987 454075743 927722835 281504770 320076919 114205112 505112080 961036786 567949535 142523076 354689417 283358775 546969513 708497149 607523670 453186163 885515776 395497521 997650273 56151918 245935418 614012510 137151241 788306461 218287148 954964194 940020293 993055412 595513808 724459028 255217038 501937782 722915851 645750512 673329966 830445218 805932840 984451177 41876493 286483993 608837056 961282843 802871797 684131015 625095804 311947520 926420452 898855079 461601503 441393374 414535162 761569848 412315668 111367623 691419443 345024535 466452342 810584731 440262544 577898967 350017667 210958405 431652757 519697391 460034504 560696208 137782227 206318790 525797133 738948090 243406163 570799857 21238370 9079854 525230472 960709222 201252483 69017094 193944964 158613678 698633410 272431500 234420290 752908565 680095940 52486800 261115606 164837780 400835924 153744021 228446918 276759839 158730876 113814341 696518136 981450179 705439883 663867220 722544215 617789028 171722907 978756031 639795903 475118274 389575932 27796045 753632381 835428890 656816900 451274840 981128417 677950088 674696122 696749753 503314767 788270374 967609401 1926041 793723412 40940366 884382234 239897672 257402583 244332696 554463027 893401679 976260434 101639140 513646705 952918381 821107013 220474498 849128264 351054265 543490513 115940253 531346777 750044087 135095943 663606922 58811377 895377223 670072570 396438094 215714291 101882855 907297057 929428705 197339723 207102317 58522761 528079632 522559324 517453904 376701753 184331512 674121628 758750685 955292035 363676504 247519733 228165751 82978471 133678851 283145000 537572187 994253881 377952060 291895952 956715387 965553593 548289699 419841988 994687890 882895158 491532259 491698416 390244570 429506166 623331161 995601334 181169593 9698798 785983657 629331855 882619046 176754928 45203112 404004664 621831648 787507429 20908377 926349819 211687922 978287483 665999360 488071735 982029652 392289677 647712947 940220606 715734533 454519584 224640488 357951754 634906739 676151596 745841208 585287035 401425161 795209019 987012338 650700946 253107043 487230002 657959061 348962290 818814437 500791867 629905675 815744434 218860410 132652482 265108493 321482251 102986564 691720869 54593503 61973170 585796521 502596529 786277110 71215532 739836460 443400093 450907315 749617798 780825395 294093878 487119386 607395991 132007125 77435104 359689685 379693046 489085866 510760411 121508612 587706685 869416049 667596333 540154917 304810465 589259232 350841293 74052656 229811976 500684357 706514635 231844002 998727839 813162992 46979632 57123515 182958688 732672449 532621758 978495562 487867806 642016577 227844639 548993832 483940678 350892066 677698582 669631172 633478453 448348280 733461854 730225079 232864166 86602142 373963154 237372557 701990737 166931202 464123534 127487503 500538904 452545662 522105872 993764149 355466643 472576646 751285770 788158892 427126285 235202547 793199902 909552418 495486217 891748582 901776145 7062984 198226948 952111587 958724193 594847030 848995165 772933031 808382098 541897256 55371657 606683308 290228845 533325460 746429734 403217976 263922083 660901044 717342772 754501924 238770712 67246781 408632758 196511285 871276222 570240009 478509429 143247966 423349949 415929453 804040615 631154119 709580868 850502567 179739160 407291963 808676576 609658121 562141242 371998978 128262064 671250840 556063529 552147540 320936922 946337927 33348999 678936067 611007531 903112354 738920104 870355627 261898735 982511170 643465841 614079449 149362050 99008950 240094178 882837358 629726829 320613549 914477262 636536876 27884568 373079779 653212683 733154548 792134963 577003307 989458036 499302684 452975697 295172566 205379393 311116054 916631258 160523603 652696969 10860890 618513205 792838641 352814658 608601259 543596984 297140497 644519651 752619793 144485762 68430795 663268912 33561833 888551590 344445062 297279700 775170388 186150221 642041229 116042382 768229329 601761657 716394520 368901316 520728222 767668439 76857808 780385676 229676241 980431949 893201557 164726300 950522733 602645285 157298898 448926955 240315913 24093926 440504110 563533849 12551422 996268307 151348707 115617396 652737874 328970112 249030081 283949378 380975169 846153427 135000790 733026999 867470581 28949496 90859154 81383594 54139058 308257105 612978305 925885255 853229558 316325818 853060621 63255572 390236043 202817030 309547330 97333904 771074197 567674090 439075575 940863178 409418530 195975413 766331039 904017254 14532375 980271560 391526532 76250477 647371355 527856790 619569039 253475627 15442929 892973497 796567165 177330371 544472845 265554713 632215112 953510474 198621608 476307358 716454833 956027104 512206298 420927000 849041943 22280971 965150645 814333003 274539877 917586381 542692089 897639874 994693202 459262501 261128452 576702283 716697019 572315082 536485004 189412117 990862013 987554753 472872948 984013049 607148876 256426549 20385432 440342500 634726422 685323491 343889767 956199208 711801243 78482608 648945496 76716295 957789922 372195066 711048309 577410876 484849347 413302447 877027587 209142735 653380294 268876441 664071070 950109795 666627155 207461157 11448349 672203339 670020259 586866275 762598179 506300410 232537886 39601489 969368635 664720732 196873510 528690815 497116066 268193008 366865384 496636445 957789855 987940893 415883084 898032483 53426136 306439900 81857750 329003143 79491084 917051041 422182752 604425500 920795726 689094052 597293626 346100958 948895926 598811037 48098210 576382253 244074311 274127337 589587423 718424930 223647552 814227424 889004619 53224018 854941082 46795743 357642201 831238122 829619984 892028783 998039286 881585751 830994674 169920825 754383819 635472229 315284190 722574552 482646928 163451582 903443230 533036934 834296807 226909944 948944253 483285950 469348166 63122225 336599952 885363357 555159632 358275037 169939294 14131911 944649245 80870789 939818386 756918059 918237199 86374019 656214189 55662727 81889635 155265218 196181460 548406556 3146233 217285119 36687137 736279214 43735239 908448301 611601467 481946253 759394617 864251496 244776991 837606900 767041902 335430879 82071187 737280296 843991356 106978915 991155385 988757422 961322483 545439561 91297562 933158156 317085215 119536716 342782470 230355008 861596420 328199219 475974342 807863748 258452958 399767008 109950403 639764310 273569491 824563692 915354456 124519375 42774603 337047413 391510029 430375370 506543195 360115937 843532111 975653 386759537 83642875 424756311 313849666 31567100 518122557 480674522 783914492 207097056 872908227 368364797 479364685 596482250 18381304 61005068 419080543 259269667 508483055 560208909 933391735 464588118 15268634 215097586 24754067 658028629 332571148 345754339 449271497 251282031 828050425 668985415 728894234 961652782 772443010 454392546 39918284 122360264 869324529 49080303 664996471 590469448 639622191 347911190 246723445 154167137 689504115 187614451 224062399 203951968 923910915 958054084 786373830 262266647 547753387 194667276 481143851 874794957 977613336 650117019 935654263 505673183 461135372 791992082 919765251 425268873 851706276 894923968 972794877 815319356 556436729 407334419 334284617 115650085 618393777 758717180 326834361 640812573 392131827 427349418 300043839 872504744 853927951 135652334 433900781 477786207 767865667 85949054 270994823 892829777 462021678 411341190 958574302 91571812 826294574 675962106 340685461 762040916 99238764 329321986 396210388 405521145 8779639 150701231 412006859 548576178 925075477 349298185 267661287 202484270 357776445 29601444 914377013 854481741 480687856 388664646 657576796 820190690 2889786 868928274 650636955 65273144 46096030 12020804 815828454 957196254 582804956 56421156 512379836 209148432 264745930 644853433 252287485 378876142 527831082 515544043 720276783 673355078 235255154 631475299 732839416 596523055 263627851 641939729 18921970 918903314 29825977 963501376 893520463 896569568 167249227 406011924 48558082 586144293 294216779 826950018 941165069 123264321 576132053 268387526 126462153 927390442 468137565 448927226 678008249 769348532 272758298 554310151 376802326 819716704 625882090 293202444 378175213 391339462 693315617 244814200 39125436 407559518 789500396 42429550 610223897 541543837 405207490 15019607 881635356 773124297 245494418 900261583 316379840 359842649 375145745 219741362 464485006 474695174 888500053 589335681 567393885 239374442 944827885 654146786 150302452 624536002 406340581 853175992 478723007 701991243 823136488 219914918 597764259 92479749 491833594 525133608 759871158 881085540 331829453 524766346 750331951 895030553 334649083 870621001 62994819 701122134 941006193 80647179 263915719 441807687 940348545 374385042 158758415 934500941 251537194 385122118 903201235 128035907 739263594 973776542 45521557 233726718 419121894 261300167 809363567 99095795 935759072 510263575 426394776 576973851 836983350 910945160 584892120 251806402 826634794 429164158 685510621 613835295 613536628 984474865 524282686 732344119 854856927 872321598 174999956 970486334 754513445 687799755 984215908 872373366 358369743 234782824 953721574 644882080 243041607 552791277 207810374 917110496 461022669 607729891 332801836 703272360 119202923 442595531 979144209 985916003 718686954 610160862 184487456 79993125 514649452 883364053 497073844 531308691 848138926 21078334 5930927 650933580 954602432 240885537 219374397 500802548 792699213 779757527 645321967 555879901 86185448 338394436 979770048 4487886 51977294 911295463 777585017 13430144 494483899 293019018 529070530 564079460 240575285 743566115 827031250 637335366 72112996 668985510 64107627 790361336 156051464 118152662 42668021 586377454 413500116 519023227 943924763 532047118 687032838 134169271 821732341 646489442 922903282 933918114 814978329 204613671 874809925 942594038 495892728 7488843 961987323 278670652 418569542 67556651 114734826 672338978 238138391 837623713 243858983 43787134 891895249 850846875 693854221 235223942 6597074 385374794 872882538 214835787 574484733 290305247 420387214 365031447 607374130 231834346 809680500 231955319 871787781 242691396 461198161 298618202 382743710 809459823 422311812 768189690 485872453 31094461 642099971 660199761 660991217 899239423 301137057 863783236 996064092 33128912 368301027 648866662 135913105 70315573 285804137 316189263 528152932 986816820 905070120 115200459 97302635 566009353 782652410 988993038 783803388 703114777 670572747 658971674 257585145 90295330 936081537 733473837 681481151 367272364 218339424 239680249 791368835 302530118 724705398 657733412 116627666 270547098 36187535 364055447 463993432 68203342 309871313 831825237 199264166 997676524 761581030 241100883 601249725 881307587 995648717 380791289 332090996 495285402 322385447 442363309 580674006 387232483 486009189 900039565 545775056 168761960 989757132 789021591 694993630 126233649 306266083 276972521 887007610 443960926 509956660 703377699 93044433 333926290 378207003 229554816 349878860 76136907 313569755 487811610 954226813 705958226 796736782 691160836 707611685 777964436 416809500 7601700 667161528 698666110 761991510 351303798 69060829 843446154 60354889 309860588 865460339 230902044 772384291 210023145 997837698 792820780 307148375 450638137 381128462 58307236 414937594 709757274 309440849 829337264 445529398 172605541 816876385 809276721 546056411 765079242 934816866 428501695 872377255 894824648 558845873 774022501 882163156 734039855 237291916 219242476 958507632 56943377 665583199 966769064 354874981 955392821 751772770 679814464 752780463 525061851 46052563 634937112 166931116 666198619 991600667 783292180 876598087 415621434 25834839 210996935 381502438 218300893 914587878 641220835 117093704 182433234 646817544 12662070 53185367 817102543 902513891 615317476 292516035 613557570 623031829 649647492 377113876 398641039 856169304 566267988 247609544 941261198 618928180 508497203 812165662 567372399 702054007 571580325 392144406 987389425 946703061 814473185 635300734 20025200 345961946 54506344 424358603 739479675 180542137 273405290 126523515 411927395 605794675 498009034 112032913 194802816 595178954 165764646 910830160 448601228 83300676 412085208 988486579 722784495 519967472 106351432 477484091 161548033 549631604 340005452 145296243 61052574 949831432 627188552 30493569 424953427 877684250 390176327 961145231 832482913 919569884 91911678 645763906 848966741 339563864 119257475 965658443 908719177 401748880 655366026 597479379 496410904 684311718 778641125 555574432 658233616 611175857 728868222 514250322 714427994 843650860 415239391 47663320 821074803 510323158 806555447 569494657 687103183 495675842 314005265 703546643 126492016 636216490 940672566 122265004 264627415 963348313 26891705 780262116 669290114 824716857 721960604 851538942 728019603 931178943 969783012 885358436 733759821 804732652 409845834 367285248 468258316 417654629 418915180 191321489 677775562 79860104 286234976 745951282 544377683 803767435 695409211 422773619 696633435 466629188 76111932 691351057 232464792 285641408 868140597 927871108 930177956 402976192 684090695 586130649 82189682 84314765 579494333 231883907 445913713 584923753 452533328 881778923 545425481 875705789 247918975 41930330 571745392 68212265 453846590 610119031 261352463 352517055 105937300 526009322 198636990 319993376 177024492 663836530 243074437 841936627 404231161 292333972 678624665 885108362 89619682 14961614 539296737 513241608 749905172 600949181 839177538 198020508 567541457 97284174 48582901 58537663 350141836 915392398 707177630 355780770 350953784 472133181 271937657 123490428 815500848 722618264 944167556 516758580 329408817 939149567 960449621 263776651 242360620 674768142 481071105 387212637 119085057 564972061 829253052 990149344 668040296 626078144 420062356 884315810 306971042 86616810 995563970 683799162 105727581 185115531 759409589 533856442 924595916 947172086 357393200 117750729 605630996 838543172 126522136 391569067 60250661 126772085 982380527 23629684 91063313 998730984 372922943 672537303 48745128 69961553 64118964 139536270 808190925 38097495 169678700 827299790 945544778 500309733 656582947 614032139 996368353 667582649 413692217 533746160 310811446 922970081 998777293 210995326 271697378 500126737 826440922 846168401 710754764 511535298 461330839 351429013 59789724 408834167 131618604 574802836 863223225 29661519 311677203 128686900 212961296 696614654 486887760 442668373 293893809 723874056 256151806 723974019 659782883 907029071 256491870 78341486 958413151 822957761 621844407 756576868 832542353 488104534 952241058 123078088 654326752 678533546 279490769 318030054 13864946 539160642 573992088 956613339 436250981 792971093 567753285 916545906 16193534 853480240 857640594 157965205 54307768 714201358 277489102 497164009 249728137 377990969 190473836 80598719 235053665 701883310 264163370 715977707 234848302 195167267 794774416 960382743 208549947 689218609 919868463 419368665 452510346 117603534 356546555 629637102 79030263 892420915 214854526 938946917 990894163 157396267 672491796 27909138 927961219 552245101 567694609 55140814 772377105 459746026 887217781 500577566 5497004 813078542 784045559 358023563 93122659 382758088 991221518 365091783 756923095 203794497 66128126 999212619 672663288 294553648 773089382 710571182 173389317 825967240 119614176 141520455 241131460 305999112 112986526 396439759 847541512 564875128 219554495 119681116 30470741 519445526 207154287 344655653 910883825 515953793 929310782 736887765 249825964 352438764 77404065 899835221 797440812 120206150 602202004 534528378 577355160 907597559 201944130 651987954 505866828 136394252 169738820 112249474 912962493 244050803 488375490 554323711 64989650 176579799 554802319 347362133 187522342 478043209 864152220 873111969 340753647 145263360 776311279 76148743 732983289 238636283 375958913 157472124 799714120 355574301 558357290 760170227 839416243 385442886 513254006 12918730 193983884 568967233 952974370 773765889 270859065 181619139 634200873 853127333 748703125 458092491 838539797 673140476 76747616 178786676 675111819 109624910 306351757 177622394 827478042 73032496 702056884 551582105 907489153 367303717 786407596 538820519 409459423 440486750 695425541 786990677 517712413 261328515 893692647 133431632 923600041 128841928 486613668 557989693 78850359 771127870 641467985 70062974 803650281 6448869 602420243 340833375 532279022 214887118 600464942 990723262 329617277 302032205 20761014 846965488 854143208 904365991 987911836 449874500 424975728 774788064 573424647 466457078 251657571 115298817 856851484 550544926 509018007 903189929 955886074 520722806 685216978 978818259 33863400 399364724 744992938 414145158 979404909 25448718 548316184 426560651 768597103 809348025 1412165 706115990 284996119 940337111 546699020 78042485 503883847 554690279 274305245 388770273 811821457 423999104 527933909 826148317 770690220 200596433 860442726 462492590 673841497 303845843 181263081 526335443 951599834 601353569 647495238 352726001 578377738 588172352 949747715 961516247 260011842 504242473 140418608 117840232 62037194 738825458 168107824 692259416 35877646 494318260 719423123 680846067 996062358 723596198 959876582 15832792 770041309 662028120 599375521 131793559 619434243 198198244 49043229 496319714 480774777 661097735 429965502 91833718 651835535 868293956 303696887 196577380 90043946 556202003 900810224 322757378 501664447 182574549 493980566 880077291 897348829 582643974 734502461 995736270 211673361 784645688 948248523 394312352 329848140 392755894 654275553 556247416 675285406 187885279 909481440 346593456 798892503 856125671 613423314 123769477 26231267 193974313 330141824 11859884 437240351 312597096 585107728 78213285 587208376 857346168 803832112 601890074 563385125 471722006 16143306 792421227 77177897 693525060 812573849 262930231 28173257 905425517 118312040 950556726 560244956 909285832 783029257 589827281 104609692 94044676 42418156 350375178 802939327 611217024 730679967 577310103 915748986 587796556 82488802 910875913 631954610 795970276 700646015 637668561 422656260 421750731 478505342 610591499 310039727 240345973 551579500 810008195 889286727 634727208 260500435 840510623 907189705 138287250 839661133 689956190 560082655 837934774 837936778 31615423 124311279 283580962 455743640 165268140 897724014 876247101 968293779 162094428 781610750 613177240 600564515 580165946 447798144 680643240 239862493 762392989 952121912 610102579 553330386 689306655 131589205 655657009 145700071 548895657 229030161 573806616 110101523 41339287 680609095 504510795 440917525 623650933 802236456 846290973 650391005 16357695 797986177 977352117 362712610 583540586 214210565 608271192 423662643 718130275 263279731 643143932 530498591 880077188 154969031 677790994 403267030 357020556 164758929 475497835 819369313 320575591 948815515 68899564 658040822 841234724 277890992 992894873 310297590 499261046 149707173 967417980 720701627 772425629 773773630 2393120 191768038 956111737 742442306 307218039 226496711 867166636 294492815 343336613 978585549 118430726 897512363 389836688 314679132 524582203 430744783 662246067 48971124 473712149 967414081 250033642 452533292 608523504 923433344 3477604 554648449 439428219 85920003 163779171 361808871 120464997 999607714 56502819 769559664 447022820 685112159 24107332 190754362 368916112 214642552 141390248 755574521 17608678 291086301 881368859 817483059 469530748 924596518 636542285 377456391 4074592 425710140 153077055 68224014 815202560 366721418 101113076 778685270 860578910 593744728 864066237 152990398 735909777 677674777 978392712 963799604 376880174 509577246 330077109 846401157 216314905 11806242 337320302 33576306 736764757 137804533 527776359 48699966 682897391 117410714 407453001 346646033 812940049 551662362 117208296 435934444 602692743 462681778 208019128 287450214 503695085 527334843 118386787 361351780 192837284 496846492 924681407 474382734 181450122 323672630 335219173 761580630 380199175 489459570 298729192 853443245 92381721 936065783 700067485 793281219 691814657 26766521 169874293 956313304 666958900 652030563 320403616 830549262 325284862 294268623 416735502 659726728 251295407 328200823 949382767 209218819 290879068 804032779 834389370 681793479 814443383 143874953 696307427 543386843 908260293 879993495 23744621 471855484 637222334 556721179 827486601 235804730 870224715 677182571 610166799 297055103 509700585 455006217 448644079 78742764 30348479 551986457 683407926 875451321 852272458 680860643 677208442 169808332 438282087 847396925 996420281 658895976 782954457 958679656 235649801 655617449 716756932 568195600 4454098 742815947 12992678 989285523 487355802 144200156 456916583 522716855 774408256 612416965 339355237 827791545 384412486 957285969 124536470 559750407 827342600 744616105 904243482 320048118 888088711 203284375 408645449 805767644 528020375 583199055 45988988 117421790 138414691 269956503 929354462 258817613 867590016 165903557 641784694 246151023 249991173 696475834 485863752 899204852 182201533 645003281 506109423 965983427 363708386 505837774 860683284 213751834 753936586 941464351 480174771 413997948 534149334 722988645 103400571 230241480 53924052 564094900 996254538 380572066 74689612 513700854 265853345 307375992 404375467 539008848 19428720 673989883 639832837 239348525 904225481 173819295 748943450 11190184 546972339 994135038 6484205 929206990 275248637 163050229 984870360 888443285 202633285 11869895 149044580 684431 517897930 375594927 9789967 274162465 188121010 49237765 605797263 68428222 123156549 310975632 757437275 769087378 28548911 237827180 298613624 953379623 882115892 806958416 546325301 125205593 856878842 921076883 130504218 132307090 550953245 190208166 10304613 648002934 908377231 821646520 689457125 280351078 168912786 983373238 638950638 723688514 628784654 155272150 966604877 441949247 917852149 157715064 323805793 311883561 603181209 577545032 467991005 458538696 47789102 974044703 762951854 192352172 616851275 774585048 248752201 835349832 921921419 419633536 119511748 389701525 120004893 628211583 387424617 953288305 232214740 267156995 955820100 483854790 754024746 906976791 141110036 729244164 275210131 4490687 519385446 698619847 708103939 816581596 880723378 773696412 895558813 222637733 133104981 223043668 593694151 684302317 360732049 213927654 680139915 953660416 237889097 383233058 530496663 496090486 57158630 857286284 47121004 622155714 835568351 276547801 58626172 406776212 303713764 327550211 709609945 853203505 6974356 409985676 177177187 456699827 773023090 608530246 982767914 206065095 243576694 415782929 839200023 1272444 579990217 702389917 425366032 751734050 332657309 875459095 797387398 320709447 46149755 343605701 952779378 187879224 277029081 993693638 967259208 412197426 845287179 165648519 572356329 918132608 771767390 583721189 407742936 36370727 15700898 118416088 219349378 116567802 702669321 645995703 384059195 705008697 534179471 871415770 456018946 491947796 18637384 963466483 560940149 614186591 102852761 225774461 177394958 937490522 328546043 162696331 104111672 357160489 808184344 969115418 549989731 731996984 520199076 876568113 600144033 905502974 654528327 998552038 900406304 132069662 389139661 56184386 686607925 915443674 253831635 956539181 551839635 345707301 37827715 560996020 431067328 324671493 637369894 144897371 103215416 616567622 763328052 683795091 720721143 427133073 681899712 548186176 795151352 139502955 206717251 585563508 194147005 489130406 692097333 375219759 39463136 738671295 640907568 421184054 181469215 7798393 41044007 25311488 730868663 864590010 264416692 893789907 991829541 29923480 770341518 172042593 338949324 781672296 514651443 512725596 187167337 159871327 686970684 644512716 807853748 444301004 528369631 354365984 55763433 860584924 84405934 179016729 768438264 825595557 620090028 221597692 758460261 642148551 199828971 176859635 162982847 654718723 75529944 625111596 826253063 225501261 946091260 964015118 386933279 667851839 54981631 84542755 245543188 39643528 106243353 658025940 694558449 330392025 230232184 232033795 851716865 63369812 874904704 106588826 525624718 765874280 763724706 448482975 454745035 308162749 637215289 467264101 800955033 43263925 432042628 508792096 881066149 944590532 385986295 621134323 134128153 797618407 544641334 851198313 952728310 625996835 19704665 197775749 241873745 482955124 903357273 506468928 586304685 76224656 979109954 696432702 587161028 347698492 613069664 783058367 666363205 725741170 641863281 33425511 904233254 167936207 231271150 928190078 72177176 729022087 342235590 804849385 856044961 893275603 30461753 145466293 75568521 766176184 781953356 67878867 359261707 362514513 957895414 523367635 582434337 326931000 207097691 359956786 297496196 105841036 288637660 577600034 917167619 710272507 925331576 867733992 117091442 484664558 158777285 100419281 40651383 166809301 925280395 980032205 101912436 446834626 862150453 774235571 117189311 219867200 231323625 117970495 219085585 722390811 599595787 466472520 655764679 548183175 925855625 338503511 504490745 160458162 780517276 668708800 828652513 612806057 671878101 782103825 811036387 229309554 877972941 225816049 702097365 874367192 558216312 496705345 76136288 488213599 421139583 110397007 396179204 468179087 956436840 590791032 457952570 658283221 533343301 196151905 932371706 240227708 630430661 455455776 483282752 607842649 526008281 76647012 514922144 938406408 442793567 637783376 561411061 84267032 712993576 999649826 335683457 832290470 192894433 272032616 36612300 532057870 641586190 344648721 667334542 705950346 816937002 293152080 813226477 232058064 808660039 490460435 217736232 599791183 274351407 754518404 370510572 644134112 118197900 122924871 310853285 29083094 344618082 524643269 341862354 545002486 474625683 600563312 245326336 594618398 828022940 204798689 576183923 158346076 26330375 736606133 943727105 43154784 616869563 363051503 851149626 246644167 69958438 772387715 78434324 244233254 439208382 29987728 668250006 369502060 802750255 694846115 987849969 397030808 654879771 423149127 556500949 873681381 821070717 711206002 375294707 38094346 484948340 639805876 129354534 219633242 699014598 218711545 767627317 511540314 763162259 512438654 663888278 19105364 287320785 808829414 743992726 924077434 200076229 636514025 441081183 772200123 241013343 33328111 853012973 361478664 298669282 872077612 381828027 194885382 442627652 115447987 444016710 872525126 969263986 370232006 33358231 868873226 979697589 721889761 404969807 48300035 602486456 890407841 963356886 344270112 547761511 84817058 619490603 804089752 247237103 637835224 472326314 599759233 795977484 888974539 94179258 762876006 294568026 303675513 728465616 602365403 672131189 585198116 160192782 930524444 256515840 725612384 664192132 640559806 854784057 787482950 960033722 703897177 391674573 141255241 897767884 10912741 120270196 544016114 582433594 831320749 405756725 376101543 691985099 820398654 297879429 744585659 356784981 755786229 145841109 939606568 370356543 999456018 744045892 720959906 921808915 254178608 51766368 373856007 211387457 430876362 736573573 655452563 37769130 280552803 649711556 327242657 892954558 370114586 89437412 541321633 349736033 743224400 841652454 757285652 50148544 109570340 765683403 525405286 468034968 729185818 599341646 65316061 417250141 266099721 767538504 330881690 777275670 733893948 764605384 540003835 377195122 543819021 908105495 510294621 423020274 899575613 843168117 572850945 764703521 361030621 273670667 9817675 571190055 385757734 279811078 548255857 43431740 497942700 15163843 448105291 222911513 429729463 458925276 241975591 747141448 472057148 484564228 629077438 948568498 410609766 862874561 517219627 435220861 381604322 644473823 569429923 294773670 958804018 138799747 571917701 846509712 731102678 439899178 657067679 378873721 184604402 374921308 904210120 742789386 709872657 909304732 925043837 350272594 521482391 425663005 903969198 696023531 118069558 961041714 517622872 165464208 762187010 395513364 495021862 97647767 107724028 974195066 836365435 223414773 6890162 418181473 807589240 765813753 994618155 812906393 83834598 985466617 392972430 358086970 770208454 848060856 111483403 374106875 359874264 355758815 655533162 894938372 60906008 400152274 492936240 906812565 363209784 907435270 257079524 694017081 725757159 489617065 584067934 817956579 239941307 531007479 605055858 130861694 178080852 52116893 621309634 858453863 635924292 665465750 441107572 490560642 949911241 642977429 181039447 56973315 56556386 403974912 763140283 574935429 657188857 909919902 398495481 569442354 79971786 655791888 612463657 541779117 376953200 931365705 354743097 520251105 857994179 339092770 642446556 119878440 938928390 173591815 824324728 841444665 62695781 160777860 66101496 289125638 105577084 191992279 540785686 363555009 199174535 433158879 261658245 50262373 157815900 304853678 214249518 433269452 374828770 57753574 23244724 790960082 621026363 874323101 299087551 320445395 909733589 480913794 222248002 495166852 933582599 813495168 892475623 479316217 28344045 145591538 212122206 2175295 880710992 474416533 812779930 547184947 159519799 708202603 358683814 273710197 476625868 598762954 360236860 361059123 673092656 305366146 303186322 420586788 252078522 736024536 411374937 804919158 836444900 111934654 198917476 514052304 494060940 745167801 390356442 586602838 853282100 372244562 823000269 151894627 321668651 118729245 382896555 421005438 108857485 841374223 596437335 399212057 241222861 187751189 315227766 849992001 266277561 79036336 985109554 620520473 939070100 26114918 822950794 755855426 2562261 738667785 918752049 230874574 763630009 735575532 25007471 558602042 527506999 467671627 767799595 364548396 774280591 621395670 476354909 407948303 597394157 75954855 586096588 68904291 590954183 825220980 203913791 389099623 762530252 393188311 15715990 728510025 13335809 917791598 664142112 376161969 498654323 773582162 985739121 241580309 76839727 439024544 982250144 581691626 296106499 393510534 238981924 810353383 87179253 466310470 422457944 480784751 970882150 402359562 646101784 319930475 463492871 27738665 946026043 933051035 528305393 943072776 711745951 322889794 324884225 843807713 248810861 883381580 816185115 435273479 837332184 520371105 82046734 457686749 710780380 919035111 435059002 460972187 907148020 52961792 992136617 333818095 954378582 34793447 192012103 511607422 941607459 236388255 355317456 661218948 410459026 502202945 122317433 778837094 945264813 62887530 314535977 364707092 217920788 330183008 966069918 134621219 565134313 869322973 593608412 123399187 637702626 5390991 788505568 49363337 435948581 259548093 146918442 89440780 676122379 539886835 317783481 694616878 568637803 423736119 927794173 478781037 199432621 997852246 187868058 628620905 621085652 497203750 185354664 657579348 549025138 25607018 658831235 754735482 475910966 706174401 361458060 896193255 383764066 283866694 1861368 111332994 544276133 985868758 689648855 363323176 356118334 490097456 778750301 30118954 585936431 91215485 829569556 421165969 427423178 537298884 503735090 556428747 813245900 855401050 108734017 71427399 32910148 224591917 595438835 620044854 851013908 249519290 991276355 966362788 189275778 222639607 463945680 51805252 199278896 865415208 464320381 604969363 349609571 465556393 198350127 199587889 363010130 9964269 652819838 448996227 23082976 174019633 622155147 6455141 93309376 498112455 911312320 987551256 873992635 306336818 405410323 149347844 847750940 512071556 296268684 419108582 782710164 272269105 492206219 843501480 109723607 939199586 325055593 529128857 721899866 656214059 400562998 33554031 268864069 871466441 486473266 782962681 598087600 662185430 432367862 17837746 552515593 363878018 796839132 315936190 467476993 210630829 789551890 809663700 286128616 270467133 670303711 364579754 271172165 4915272 681668610 207305491 10471662 356161458 252836337 961209100 899608600 759597430 542398193 558900460 133619149 532125507 664749544 245836522 676844986 422811635 378667084 603683251 423654716 480453399 79852030 159059368 47523876 224872519 157988431 675021479 646121445 458516470 562662785 473868774 387298828 134878063 875528898 18533623 562601864 627379294 768957075 46155036 15610604 889260206 108195855 518094343 648227127 608448507 7264273 464452424 195894600 31139721 556173957 417979674 141593393 455081665 358388372 386746084 508177216 23551949 882358939 593535648 341484072 32758255 613024046 935067058 580665408 415210504 251469212 969299893 261514981 662514127 751337775 708313687 627233550 348382194 647020725 360303806 690127986 756353561 574579349 596026710 692579653 270629015 714552296 247457885 405158239 336108678 382442539 88119031 9201951 100279276 149203144 532332667 254592438 772914525 355317122 704822106 798663851 696190290 478437689 57222681 150671632 231003189 260547576 948220065 209061973 411044908 677564389 730677427 523682713 28320078 7818697 557099334 103244615 650728954 772736219 773705117 160349003 278778527 712967888 546828082 810140130 290491839 960936227 923909612 246051724 814105267 797690629 594152877 226815258 361981761 708089562 210277858 750077058 57223480 439224667 768806799 937802040 579083744 979229950 131318484 512577459 239076480 515905886 182549025 803647455 714886703 245077161 307924970 364255930 550515884 351894972 515939860 18077261 256371895 697855638 570490396 715056734 153955903 256474179 181796940 826459643 945553609 996928875 879637129 192170401 517352671 924770864 555716169 689624239 724935314 540141062 197767922 847541089 35049244 420777356 180785250 768866695 757643112 769691106 840050911 649234735 881208588 267572225 306257792 508574317 644260020 296306573 210834141 291400960 161352591 495267208 831980865 921655744 322706000 821216315 829522092 384528326 319452825 800119449 193977964 736982508 394487620 559837743 488970095 598006450 294632641 802268400 731109281 894429019 659871876 773087244 566916616 21798917 643095379 251182586 387069654 745643633 500702095 794164174 969831690 101798092 336412552 575605527 160708929 350408456 558930177 811904829 719389142 270169883 140540843 469921207 929396769 2845152 610994111 422312435 805406777 66755721 280097822 524250101 497566765 609784276 192629446 189217160 979012314 429417991 717127743 805303417 91499128 118614110 852954556 88326800 157942610 836914047 454773482 976744242 336604908 83041129 752432605 414869091 931855297 539323734 465793512 920414574 363007637 897655846 681761717 701294078 11434423 930019089 47568773 452765251 829038109 969010009 346533945 149363343 846126436 534584153 9127137 528556665 334608732 95369283 283551423 76677096 985790280 515372591 65533891 836994835 620514439 359208984 148929750 496502160 636042562 387308593 639494913 48629075 246400234 99012454 439132573 773602065 512062178 22936497 557521868 678241941 580906000 40702098 614284685 570379762 802407277 74900498 915817022 35663109 23695770 573543417 972294664 983317574 986010089 404758908 554507306 767478413 303527538 19318307 565590769 463895879 568215493 713856275 452439067 484173740 816734035 731616167 904984973 448178766 110493890 492773204 273742282 471403361 571912322 20060411 659909694 65889016 334065424 214550660 382294260 100751392 830239640 756891886 125583486 442961923 385539196 565867228 456172839 351871931 652496239 521993617 325579543 160374523 248736783 645183147 104123101 984809471 252090903 460696413 423613236 886148083 337380728 212270256 931874118 616446884 912054672 641928713 426562397 850220186 903388616 353896551 985761835 355561308 242707788 565113327 165750508 471995466 224713340 306068431 5410778 563563934 228246103 106972664 432671992 480680330 37081221 52722145 240657509 255410023 272336093 781443854 17218316 279029648 967253088 829893921 438456398 819599522 313141409 364861053 60806518 264914367 730746593 809044074 612390251 321447436 10155640 540243615 616301334 524730382 545271577 432979744 282713350 24336442 706321277 962504149 936564854 776820459 238980995 293641636 691353262 52548243 178321088 336124567 551172539 684705512 905518797 435045679 857305951 483837076 205516355 704081788 744911650 32017834 402764956 287565966 406773273 408834798 404587656 18846239 715084207 223534863 652250064 6341144 119714272 686509366 761021242 999858364 408441902 233351080 835313309 167799983 857329120 779330465 340391638 932566781 446005400 915925831 471027987 703657771 699037483 181095345 212552366 260428773 723784744 629522052 20406777 411732512 237177477 388128787 67081800 33917953 520029246 409286351 354488049 867527500 444230635 23184810 706032391 755590610 87830834 521669592 828080125 856161484 394328996 341013916 709498839 351416688 583074235 365475758 122823302 947600792 760193663 78680570 468712608 721309436 969655275 883449279 195278945 241220487 54580345 884684753 538278860 892272500 612984946 935615732 720539951 386850381 236662526 324499778 11038333 88427177 162637022 64647262 866975796 75127732 522821900 2193465 730587548 812706873 648667232 955198013 211743322 54342927 783285197 648082837 603986017 573314229 960062628 599722425 727729132 626024282 76396669 323596927 624925873 966403792 503544805 614633292 214266657 15355767 67791667 49316007 960873327 478291062 987120452 191087418 971044300 457691211 685321064 728528620 128281052 989315494 868407947 20421767 506396645 819196951 881759690 96409209 243763323 550316193 952164266 413598209 974198856 50493518 921690600 939082293 519078276 563795852 140147684 747938474 732402487 125560510 942649335 592026821 506092496 880057842 124901269 749265716 335448954 978173091 323150955 844658856 514440673 755867183 320719407 963303510 723051170 138731429 820086981 9667214 579196130 307402055 358987126 276123598 203424865 883077179 759935912 266172089 25638920 394212644 694619317 489286834 993819072 24949067 728219246 943330080 692985528 445261591 12050216 814653192 812278169 582041555 660719326 533065178 735119359 869876073 434563817 649846050 114458110 586060126 771758763 60445327 45088465 58111664 380680607 346128465 697338937 71577512 525649630 18193846 369142842 159818625 908208264 721732392 787319006 111883656 646834902 187591899 932457721 1086005 143041625 216172012 930949842 251783182 638907486 498938163 143021846 800277317 570911180 77293631 145289457 636032809 486148733 739475718 29220952 747256322 154002756 725987301 647015163 520251953 137387034 346656872 192619349 651730510 65053098 446659121 774590372 418340597 586127264 247295206 999777670 402331858 288540748 205195851 209056339 572381683 721102989 776063663 795071092 921668016 122235511 109363341 833297243 249679757 300625643 430563033 907475507 775095321 851531267 715143665 274587097 771918640 660696947 903038450 20746442 951188658 913396633 314334983 379869704 902927355 485085233 534425388 255966651 879639937 162145560 417643692 765984290 491112210 95911987 784056312 472206702 130324775 589744947 961530744 870269129 281911374 215910039 348516391 398662522 119977664 999057214 845708387 332885698 465116345 506576617 48073224 545773798 620736138 160865698 918017158 126705963 274228813 642059981 737997338 981844332 610267905 790787758 397164840 507641333 581322007 698019674 614232963 766705047 643484118 752768418 828159871 25903883 124163346 896111946 792504808 568697383 166603830 80697420 285333545 611326481 654709938 658010353 162885571 410090449 230075641 410392466 77197411 102201270 770970085 864504250 856544896 312194468 227368043 547499599 803998522 431137022 988336849 155510714 843632524 863761744 573866742 677528727 589389631 344754618 481429604 583123452 720449925 223132687 38627612 528316728 166266395 431158142 86735803 306180865 554670876 552104309 657795860 858576489 40736554 244177197 244259756 978351170 451209551 204818193 152494994 310285524 84507955 918783503 667738857 282701393 338629894 636564361 495954461 686941532 324995556 740496235 681196620 606541686 800600894 958883233 55475705 430139156 570343950 28688458 728223554 553879444 881527193 346854563 215655541 290855853 262521807 403790049 37239807 960710420 117886464 475466247 7640995 81751186 297867747 763825362 123729731 417278525 634486412 916850639 989995708 241569402 193493648 281916168 524757762 731385118 253404981 332454936 754630601 530979950 631657042 371505427 152837405 66022642 857636432 8749591 811100944 742698732 358234664 426102807 122458258 540622088 15289394 252925027 659263182 848664390 920480595 325902635 394983824 186218103 994097422 620283603 171481153 501387751 333222358 692004190 505558940 52141837 570242194 764912553 18397452 757815341 16308528 29682481 129271334 306615149 36755342 161037883 896790790 417150187 139305258 234677651 382965472 914284639 737907135 864576670 729054101 554065152 319885436 520724173 246821985 363738445 703591136 326936241 138384271 324257267 677155309 391349689 683704604 416680556 826023604 559016894 90521806 20801069 819960392 105554914 301346935 184775820 357886354 637107782 846605735 796943496 93296270 568569973 355237567 747146834 751767839 473024918 42099313 949995645 822418865 757220048 799263697 118582544 59889721 709744494 145860357 474397224 291161661 193635264 954895000 175119493 321180966 814764948 178888522 196451317 230495876 461671958 306473110 84906000 212659233 676123497 201462138 289017132 113089314 278654387 449879674 942667089 847327973 106273237 318643103 357538666 570109909 92518621 963890759 126197632 246973980 13436114 480070587 887954863 351783026 328505377 221192663 813251122 287962634 602470717 481076819 772318431 573627227 294376001 862652655 391002408 455534565 198971063 361389501 935100685 31323960 180107608 354336820 867281326 881209574 375053639 615607884 769512981 509814354 766793812 806540314 651806122 873222687 847747117 490155189 788532777 860140264 828519502 948279360 460000711 668201444 920931181 937215631 745435064 105901673 598180278 372485576 293176531 351662238 731783731 789227912 34540349 106333548 660237485 605738528 617354187 288145187 492039280 997544445 203926789 113610746 172864802 210173013 27985296 933123338 502414226 737894016 325066747 450000543 422415921 871959489 810555866 322659542 710049448 117393441 370844712 920878600 657486381 808197116 852689864 542985865 234856396 453180932 781430334 507935813 949194457 129611063 126180898 377796091 803457833 134084588 203721832 385219132 529583236 924469432 86712113 756450747 5041122 576468876 857142250 492278298 153254534 263973854 78179185 438876316 124145605 481662594 953355484 288140007 102222431 941132189 450967680 574360322 73907774 267190875 163722066 100222147 669028146 465996870 211159118 95012350 310998151 992526593 565027577 419239231 524357332 334365415 251627440 749099985 420928907 348631705 302214486 506483763 684742131 899564031 861619830 759743050 57580097 982413275 582845943 714025640 600918883 847184826 449523960 348567432 768789679 170153851 570265342 484365959 974938840 988267433 42370279 236700590 496044950 945270679 310442338 182728058 832646840 430055852 228971529 57380466 852370026 61480978 657426239 957081272 950036169 777145027 609803825 694182307 147473044 990384617 950308993 643375317 517480404 221406948 5298390 119475743 546848045 458699701 189049332 292263812 110729177 597536399 908385119 839737853 239051734 760144912 251395077 588422537 881016678 726077220 778073699 82321503 249306352 839291453 145954570 279468168 140024074 828798173 381403455 18673578 667687384 971611116 257710573 543626742 94155574 976501997 414453611 912911857 640851715 978053282 237936357 603266399 518315354 113606617 28095260 930656567 1957796 520029945 740121935 114225566 250482443 225501730 446935641 46295049 877776997 207314624 531632606 4867551 637453896 618302846 847866390 361419007 715016047 235276120 529000958 99818886 671926359 562742738 215481048 449034351 874334614 196902555 64336890 240824571 320441514 414468136 321626006 238373948 15098423 679707042 93519601 950546162 47883905 411626577 763025387 316796972 862191109 893852654 102478346 206933012 651449363 325294830 629550492 752959238 354226081 1452433 405155245 219236284 175669912 676903888 74915819 696464497 396691739 137824241 499548193 561124734 828993962 765482243 436330396 284878483 102120026 994460638 997058729 661356706 224515437 236325546 184811908 360868130 339729167 838422417 807944971 798394811 731340663 652962334 573279402 457365182 780717854 375151484 967514780 300219028 138367170 130566298 615579143 337002211 126942374 738871279 39465497 624390476 664940217 770228752 471007017 113092906 981531407 880969566 11588743 56735632 349869742 909323813 572776711 195752510 54368277 693666281 745436952 940637926 14779412 525096161 642390083 362520389 178020817 805078574 381573134 40839504 461188600 8589907 888848365 157981744 39879707 554642434 921359308 71489978 937375505 235942344 610601435 758289480 769727078 929568418 543524182 723940454 65982139 951726430 557900439 1213806 459332406 386377674 167441844 399515281 977733982 384866766 349727929 503517051 301900877 297023471 532274430 989872255 596519901 186789150 21355529 199146112 183099765 652319436 862526185 733135049 848885215 413266529 171013598 813839164 708729124 957769219 235802809 37170670 198782834 109086638 24299399 189535202 266358263 332948985 655544617 98277994 197773647 890954580 363503052 806497443 669112097 175265732 633970436 91831899 830833115 699277645 528851254 215369240 898425088 496195903 669308001 72979244 310199255 971184133 429230236 21464683 167689210 518554168 428342247 649035553 613798011 639703721 834039789 540413735 746262231 20386138 822893928 828652953 367374092 885742866 244389057 714753290 185571921 544237158 900302594 482158060 456665985 98283298 547406151 403595656 917350091 715572628 862875355 617891162 451844860 769332127 775821350 944207573 384075163 889976116 583067562 847788163 998115433 720672743 175772114 643602476 760751708 799852030 274684585 347491981 125728814 342535888 30458778 718510631 29689942 96290574 685573062 868002602 634778187 261944408 10769988 916015699 221520158 825044339 295068973 740524420 450880484 929164038 936017948 433425583 183140753 883559787 123373405 407228393 71752768 769033370 429426314 168032151 452712430 791001382 488470888 546868556 123705063 565884058 441572664 600309713 697190355 510347875 348659018 291456763 586286359 974157042 134836216 69965977 42383738 64538925 113721236 258475984 7726268 466207797 207447210 554753173 312650977 782054795 348095525 960164074 495885718 285896346 629329844 459639885 795454154 676941130 300789766 820400114 976947453 502898370 330706228 432351655 576795983 929960974 814089161 324994728 335960651 928344514 32583478 613869495 280078073 35949013 668472062 531442673 211427592 109654198 580635934 271067430 335341842 490258032 887392713 995865316 527229743 278460115 293049491 29852894 392474143 323481081 209277334 336452868 114853249 452903610 97625033 453717557 921919713 964580053 560064394 821716657 828664879 937948173 951649156 480487259 442452068 664186697 579729798 42883718 518441764 223398531 895632093 947756108 182429301 185417431 310407639 671436959 791993824 915499942 724685626 908986094 692269710 248332243 520305302 214609788 960063120 412077968 614376149 638879210 790305440 824346626 581949574 28869936 199674244 152311567 685464301 396228235 580119510 712884480 772274770 90506038 282281811 764203719 169909231 83892689 598796931 736037432 359855898 538143719 513167338 958437741 403466598 356730460 143416946 856202952 822403088 947102355 831199386 341140879 8979669 717509301 251583522 705121896 728234708 428114791 919450287 610567040 721561692 551440887 665137525 404365192 160096441 273198302 19543531 285154514 453502444 47826175 490968407 727748240 966145709 726711697 730645181 188010225 852307146 641766771 649099826 668615977 972080005 628974242 754875756 546912795 170919165 172247292 900416465 595153894 424744687 129014709 22802232 466946897 328177874 281599850 858316236 738257300 35777201 162503905 579169609 36129540 164641792 598168580 888251384 273138976 816876394 286114697 706673897 410958001 34510255 346529905 943880746 318472418 630559742 143307207 647857988 746086148 255722736 650742534 874474209 18912769 339856586 448621071 626830656 725259042 553195848 385319267 438695209 827552172 443332809 417510435 173262222 230153393 58148489 429695417 179643246 163160258 647231912 756906911 865536175 627754614 863095547 386549188 881655488 366037971 827207699 421632518 259064631 862091776 112424656 808905800 340278462 79445555 98784302 904812801 558288449 553298306 784605810 604725657 850479259 825505115 408898769 636096406 951223814 431226531 5471951 177865811 641832407 480294849 663271524 8802894 675286315 823095521 155143362 120841522 987013808 840026301 929702324 795147767 765143787 609655515 842512762 734742062 318606486 667824974 119133060 769887847 841065029 84963927 894381454 580630519 999319830 237954086 659614663 451184744 736551210 661387017 26057362 461239034 444022400 315088926 348391383 620982114 827440815 672713674 697289569 187448463 757248019 435102259 99366521 313224470 571798659 708816099 419260714 242620074 4346313 878705604 566391220 546612638 531151703 27428456 708653895 753736277 716976424 279190352 321407091 387857321 742273690 496970453 610133224 864026481 621625650 615695067 427196301 469846157 495950931 405633455 281216972 244879243 980902288 353736726 475720570 910931132 482181035 534348411 873750070 454666770 331787230 734783594 990170221 809693541 642540911 746505343 912160048 79253183 52398820 249116275 190405579 44737807 693745013 282422293 405759569 273007148 766318108 9477010 838146655 146015838 191896136 948851991 683288806 375111703 326865812 357633380 752979459 700459563 504898575 764191613 741164174 34413777 178133428 435451550 408856264 905563876 875203213 579501902 474152168 4941535 92635846 570138338 355314821 339280335 302958672 137431819 997699516 414493531 264248202 494718722 93826318 845923682 424520203 977542259 320132889 487884288 453528416 874747699 345997192 447716409 122917700 960692587 208379886 601708019 451220666 994561619 738173663 221881695 140801617 58125300 140451514 950130324 147596805 374982225 648282676 186618832 568049053 721061087 531886355 473793253 841702024 839292387 600027466 964623579 941585994 70221089 436386369 966692340 308226286 495049272 623252485 691147407 631961514 63550481 269617059 461699475 11877635 212410891 93928214 188386219 157041115 91677534 72229340 737765789 998324751 50969283 977538236 505466060 292184975 618921247 414251604 618206100 983822100 958355318 388608569 209161792 588826055 541105104 22491590 227603907 448469280 442835083 807986122 612709791 840974067 746919107 394126121 759645127 552162094 360083205 445411740 189726976 116864548 527821265 258351801 999237240 308127424 990460444 481934166 3035525 987759718 164679054 430685438 432816647 378477514 438290538 660539558 930854293 358750534 65291796 374507996 455358368 885254612 624912771 759991525 675887357 265602296 483068828 426639813 767913631 411803643 298370112 831717863 331451467 180281112 955131971 100093528 536227354 649680484 664247976 531389540 648940759 189836055 243251655 242705538 739782316 272610310 300258050 237696732 839306825 712950869 315053736 355263440 351523876 707752975 898799227 57365581 918705257 926030551 1082250 642199871 132356247 363066168 187435937 15955774 834480224 149162246 452277480 662828031 994019417 909587828 103384438 330523027 57281978 537415196 58352259 823607521 541549704 306009229 723338400 956790143 932067512 977618235 177242379 787058173 6607493 88439376 604981989 903781451 973543366 182864935 17125484 315833675 634277032 166551595 383061023 901085615 421449933 897468778 209744616 997284940 632685750 519282202 943919745 617329274 83289072 186881185 60539310 698921594 582152346 701457616 912432474 969681295 791620862 731101299 802484233 90582252 529565383 876289519 135252549 749622647 919713883 292349835 383757013 987171342 734860979 897509555 577809328 794532484 239827598 635893879 255480834 234812168 218848309 515578287 149071366 792854744 525416504 532895093 591353051 993474628 950960464 792354929 520282063 480137445 41176775 662137196 516265542 820206568 740128624 376547872 901710234 723539267 963659829 834126033 155473791 420938103 242208956 687238467 319877768 88370568 564091993 165149960 68222862 805121415 33859056 508355845 127082355 298724158 42421789 762506139 556536930 55862262 107401711 767954962 992491797 699442206 662427869 188191622 649550730 279630746 94442414 440653056 910710441 464108150 562534919 411262062 836490632 401950522 37505477 189113346 783351125 171021644 706029458 711716639 304831509 463420156 525200488 519424918 743735015 517233860 379783478 216801502 475944557 852471740 591445720 36622533 379883179 415979815 908482924 799615851 678184306 278826287 696387131 427489180 385812565 660329564 582008944 549298404 901184456 408697106 692946638 786994411 922348264 115360839 201992719 794649899 203338389 621942854 777476580 895722278 889513816 770710762 511335736 149324554 289004611 101383484 753571255 196163874 519831511 48654026 689537317 442889831 724560204 173097098 994871631 872655699 852216124 754166842 384815348 676154697 927274325 855679769 86034617 687761509 742286469 392329552 93480598 794528793 473884360 506093791 516651715 179578743 778295086 99697883 414326210 777441809 206255730 822249001 631240785 195096788 716990566 797401970 681615082 621990994 358454411 969909428 170596171 732128151 646160358 103833357 346705215 617690269 392584381 519841375 536458303 354205648 159372052 954886031 413113133 466518149 324207054 18102594 79344913 810560147 874261595 741232395 910276950 596263278 540626804 765777158 293070835 652422172 153533703 767000466 763014604 417138871 999545686 380718607 3684959 979211209 853052537 582586660 89082061 593020392 497910689 38947131 881086435 545960648 760940996 662393419 402311199 148617735 389582841 600061032 160448746 775316474 70114774 996379212 589584396 472246617 368886376 470049039 624720641 295075080 954625777 469299637 363469713 865971862 947010671 389853843 94835817 214307902 837642570 65170060 525640963 129418206 504294890 533444500 306123075 93519035 691273794 229407897 164840567 308966275 928289338 726257450 560033127 422099832 551825343 654762526 446535807 892010313 756353005 657963590 581716366 53350283 176010086 441079938 552974549 593580651 843537910 324390909 598418223 986424259 421158448 782225052 169940641 697684515 309253931 71466344 809631069 883474257 212157825 831835159 103805867 672563936 101744851 871116306 531211694 100863277 776157564 304863234 438995868 655830543 193506021 831737522 816717376 162104105 544884495 289318022 702463252 394495527 206362696 847405555 892381447 175670321 167297920 157334025 666692326 477348082 912470988 291719727 430760623 126145062 602439730 88600382 418515987 294660823 171077471 544902206 980340765 122815697 694803763 397771224 564573432 50616621 658563489 348468054 888246909 889790959 593100026 685726992 690661755 895427517 789810769 790765796 894908716 649796915 518661275 250650413 966341066 785082012 836738398 924117425 81607165 863279507 669542266 988642302 975346362 853546345 90698562 612739086 286925080 680004683 988155605 844601873 47835603 198362557 476894102 922336225 378967118 245281952 942300102 894600742 966530824 148507012 886069160 826369522 499577860 316892765 799636291 25858007 939330288 169720699 695443962 616282522 238937567 669477440 795699270 628411077 891777594 362213715 276267486 875832662 557500333 706910089 580974938 906847893 29990481 212738492 956481433 38517890 368685525 42564522 759794227 701403808 913499216 63828468 911743471 794958095 910563768 623772276 800484526 723287040 715040433 239287379 179063452 666602720 738095812 616816390 814573215 134491822 570633507 364402745 534248575 297016500 84430226 481307149 690449949 282591056 579625414 906419080 307263266 30899126 48219156 342285567 116363050 309560410 96835682 445393578 710901729 165273799 283128900 855142679 243507305 896071784 880022659 549688225 292552264 919610034 345148560 534368140 41929845 71744958 833195722 208519643 261881375 782724029 639796615 581620684 71783001 599561542 507465636 893368593 207672373 166877845 519450397 255773393 371979969 475989878 128814719 325219458 969219288 449207193 480117688 119098503 618512227 496434491 431298819 74290924 387173588 331882736 182177331 150445947 339146019 621729979 787893531 925207937 255255817 483966682 688935255 787523665 915718377 98608902 229897077 762956405 105687382 131822825 813805119 676937727 415544763 1652024 103221675 266403225 144927503 892659106 182173301 747138213 567752964 823413863 396407293 617752523 638487557 445883443 382033441 337759351 501391833 130331972 769411487 372245353 859401513 959554331 190310444 541737139 842430342 112559709 367811914 216257966 58133690 587832740 392397997 659169933 116690886 385687879 49943816 505311913 323673665 709854107 293497065 639893775 606566970 640637150 766338728 560407950 957958383 55394663 128736433 384738514 766824361 94580358 870578006 879850816 40567815 676151043 140461822 30790009 638065373 669317921 682986342 707631681 862499249 624183313 667357880 367069310 84135094 348610838 256329854 565086278 556104410 186281583 976745679 546441780 681373539 30609715 208277546 489727682 682430084 760694043 258311299 531858213 352034072 492023940 554070037 275675541 495675518 431270161 111010012 548852285 768204772 671521831 255802440 917542403 514378837 593159086 989089123 533914573 581744901 678658385 380377635 275582147 336355219 185223018 570654175 417075063 910460596 558685380 537764411 817997105 837784507 896522248 294680083 960097645 804137637 907672306 155908264 234584950 778212992 980845694 415339802 809706908 77242386 330963743 116414270 32943177 532023001 848382894 269887333 467830647 475213931 491671085 226620625 957371255 785729351 957113928 338605661 690842646 28431645 316436213 472930616 21641699 478412579 949404641 16326061 266366864 56896916 532077648 472044340 591154977 49917539 267295411 876526404 191743390 241363806 733460033 716594612 480870960 918670418 611720641 413352885 921052455 119635775 930472984 46873858 538668749 200308725 208121876 99502313 730694796 668676711 219645866 91664035 204408357 81748145 216236241 690309727 712224070 306031123 250662932 566506122 837564795 282372696 243530594 75823704 813573885 830634448 357127029 143692832 284757011 801970077 954592020 29373077 213396020 551915990 597779312 911272079 747802045 981776669 76715932 944993101 208126493 855125549 493598304 157209228 215195001 615813144 424596841 889395404 596957909 306872017 741512430 985682600 837030506 282189096 780712294 145848342 399152363 649147343 358161332 295790341 69476390 172178678 484097638 72685208 607116554 361151529 118914652 35607803 644926245 477074747 452563746 263903473 582673072 261545321 649142289 278663971 623953732 439326858 261562736 267854754 799146826 72739625 309752040 356299920 521090772 487039915 850486846 221161551 988583941 977955374 279412036 695249441 933824457 696075895 627639284 17319541 171796557 819812290 854304838 379953247 759308480 598700434 749554951 524039849 915669850 164553335 899887780 975487941 55711247 52079081 196156671 396811761 434174736 357012192 135316981 525859110 773564182 170280505 523750993 897311880 319513183 706861940 824523577 991000210 478199880 783439825 74141685 472463698 84723849 650324715 623527629 915706829 115890737 312974916 491920947 230405944 423923624 653224988 980275015 872275209 578927368 857224488 359469238 963487663 530352639 656657854 735875985 37012611 822101775 30734516 424155339 551635317 948483296 45215596 350143594 234407571 89176675 977461285 370114922 299462364 410055161 822969532 545778850 669500300 956468457 30767357 69456235 921529146 156733520 647235938 655916516 880259080 56064612 778328374 677942849 704881142 293217878 970688726 420597426 116473764 353455358 400749887 10901802 370644451 469547089 784527174 383456910 287273839 368596344 877041817 399043344 494468844 463554920 374104751 252127979 235158654 190982662 7867753 523470918 716752839 202908729 837312353 683792851 229171721 173254604 58204820 471603666 205953830 455696106 865336000 185622779 519010237 996817407 571966174 215186693 790185891 298627905 180172623 265501175 799357985 591969962 570781205 927930018 171832977 449765269 42450873 540900106 320498250 460113185 400624672 328602632 936642645 761096794 360829873 106514729 842446927 70800705 558820487 322661349 340849698 906522677 698522036 289276304 133858523 61110344 429717237 975892418 541455684 248476691 884035424 34740321 551854488 849169160 111440964 88667257 222677415 858508814 66574343 291622883 799406017 94194574 80627210 761771736 756394138 922827957 206753028 66453611 914505328 999080650 238516947 131861767 267251968 471663792 211103930 8396480 23340331 638043955 960309678 238058456 596335102 696896318 355519832 885603746 74780914 762610774 772180688 55368044 551218667 551408734 810917660 538435851 126351122 2489262 324126555 102852489 17522346 892026593 860521970 341626858 166603086 624891949 551194975 978633663 144078906 365155592 42193059 625972993 41089351 822537039 27570915 101553861 890355041 364250405 949246774 713400014 746971797 831068444 703215968 872482626 56508604 492174279 604602508 498217967 541340650 441069579 784998194 765661138 564292126 534192741 539064927 975773893 488618892 896112333 43373165 479630950 814053082 235220934 113037522 210532881 785662907 955264485 267836138 804647753 292913730 863700111 593258130 470622441 509914755 478000184 484039059 933434171 968697736 32855877 908856565 852274051 422168967 750474728 75601272 918028665 814607404 655183508 659649940 528140941 866952830 711942491 589363405 943187925 409618021 540368041 527298949 349292633 353548924 337496880 826766388 159185591 74129420 121727442 253617912 497504625 217279634 886245574 800348719 74152604 150123174 315353411 230453850 666814479 159745924 744446446 371313079 507594758 210666087 687479004 621220928 683410475 739804958 155981926 362003539 691980331 235442198 674243894 369584387 264060042 519394143 593829120 601534894 33500312 365664717 675767463 375656775 458468771 774143291 694711940 312774588 263647374 845947103 339199734 854166989 362613524 795618127 382235520 475970225 404223911 995844732 500695186 893647971 345448974 226360538 903571102 651929792 530475705 838665743 89168869 396253865 738500430 545379928 429206522 621252866 644234126 534912923 496246133 200548528 54438101 445440324 449948033 728675376 335413480 530732347 692704115 863652038 328601393 294963885 825490997 761101945 897757585 216346996 238271428 667489421 668451827 929957205 385354676 53261631 670521631 157522766 788370978 387207278 357370506 631913754 416644821 909029525 2588772 543853728 356964667 802009763 978272367 737527567 602625294 632495505 689217004 274771507 907038865 207903128 726763283 589687482 490590981 555374515 464610182 215001856 691864484 133643501 262002469 246682338 673936787 138373341 646544379 981568889 658789297 275644420 542092463 717231585 574903047 681364222 307060982 536409440 231165319 336485697 301932432 834403697 726891917 754999456 905643812 150249820 370151065 528291472 393733178 738562679 135130496 811787945 638842027 565052501 266705855 27698067 886605036 489034127 881024082 577659407 766906199 476757123 396599122 60064161 952518477 321476946 188884352 207495572 688285623 339989543 25709874 707484790 626933006 934478067 189430793 839786023 444015547 282167152 901166085 443703163 172360731 109008609 103296906 454170809 145760448 189517600 341536907 153637338 98169951 933781018 70361625 224828523 496301080 844042385 43076888 248915124 165943153 51377708 634936299 196010188 306993517 184653938 421847496 588354259 397147705 444081492 357156451 103188415 214026198 902947796 325356464 267840776 117921392 834097818 782878238 730434957 128200934 70579555 655536732 138820015 155919544 56740409 941844171 202503440 269261244 412474118 524364237 471542953 336992098 551924712 995396957 5651583 863618031 603584412 568714369 745412752 400412289 547540762 926440796 807957639 701605766 416059495 591993865 903746695 436016925 189127224 746546569 521457752 115771914 396945422 179688922 700801913 685193792 852052322 602544029 339962254 874729446 909195646 395607469 151387668 41137171 42365978 481329025 310897180 37535601 39190099 790657212 102371695 476904636 856671755 209444867 578155215 453614881 716867410 83368873 750809297 885052691 35131024 370471500 200527588 812960623 171201171 81956662 352734810 162952286 396878801 697571347 987286344 659927943 165601336 754654443 363791731 453451213 763513842 36614782 382690823 703844141 495857858 727212076 462865986 334364707 735129901 247639330 405685732 578353500 681264621 120915704 313491533 694271331 215823249 91641136 357851935 327010630 324520911 955338597 293875897 634735929 81193566 394177573 130257434 974373867 518129083 313543023 164130491 861783878 771771692 698748088 670237466 98116235 3996529 196572033 172070951 196818100 157192794 616991396 904788668 828164363 428960232 208198919 18263798 976719381 98112666 379755162 106803387 408076436 270312381 8824286 921465182 183877851 398772512 584780028 993204395 483261698 883132034 168861728 240825848 144440912 306463198 312569886 939072217 845811048 107508277 736219592 604125572 810875383 582318529 327673127 466202826 274285651 378775943 234027751 74992994 179040133 733902603 833128324 67324588 494195990 845622277 345947521 506987620 906354340 476552877 292872580 663306993 749871554 313592174 128982265 941403000 513193266 529141103 387119655 966353931 600334697 213362809 164597764 147575686 441348591 295451846 435894301 497700751 467654958 993265782 666849015 201502673 964859058 963440523 867912047 832801562 263635047 97079671 643031785 328812419 293385367 149392401 262712661 829448598 703503259 845090410 60835013 165222397 232610137 308858314 813898773 168893760 140670992 239180672 706880425 323322096 935528664 628733904 189074111 827857820 703505720 747805556 966813196 38525770 35335911 617009711 838214793 12186322 610114891 637094864 565676987 626551530 802269466 54958722 451508491 116760411 326938571 136958185 874441004 956305092 205053010 819705788 38193904 790215472 814655698 959443380 974425572 699170994 853687894 417366321 740700875 55356116 328568487 662200560 184641478 175814947 105443578 382946314 256075618 626981008 949418290 566945698 334603601 754810196 825461626 760168103 854626827 885877075 592875534 789349565 986369664 209060936 422850990 459092923 600620930 492301195 214152092 36900648 333177360 848931281 589894325 395607787 30150742 726818164 872921661 731446795 539497165 397694986 204001925 620221955 765968638 454462354 891662138 428646964 669353191 938097106 806137577 933082957 961268788 765098940 705350638 329941633 28100193 694018939 595034790 424152964 175170532 267011895 389107304 305197370 883597845 144924107 23598143 659996688 159078326 223913387 576266170 190876073 428799403 117237903 114265363 249501966 920535510 731868873 550666173 433669448 624996740 797758469 122895381 912558380 988498140 653799342 330501651 411856084 805985018 849717309 981378029 481233952 277207033 883659355 349447625 34339724 814904378 232762980 367269903 905239653 176199956 910807916 26880157 130506886 432319894 346594097 463534091 142182597 18547211 314140925 596255233 159707225 381174399 821416279 953737396 679344501 514797193 939467301 443730855 402376614 78826669 251190652 968549625 88026978 453793521 461689445 636291926 221558987 954957974 452967875 81982449 731312616 850809364 58760495 477020876 281087171 163505956 700742705 479980782 701422983 155065344 521105244 398876631 584360563 932391827 828564547 73453073 96691295 182902594 373210380 991344997 172924769 872316656 985559182 825787968 613226414 428598504 901168407 913817931 362025284 124327879 450908908 712429068 566951397 856158904 470108994 377697793 953881359 398075292 286622737 136998450 914931960 862670786 459727133 348210297 384055401 919172351 637866659 865417276 187142258 318024388 554270451 314541685 896936033 687650400 26674422 874326573 709312655 101762249 997004501 322936641 86379078 467432501 885726808 556715148 388421013 505582740 861455416 756913322 658806811 833053846 641353544 55622477 180148023 14952808 86486674 931141992 168319497 928329590 896307393 697103674 856726558 695032081 633171087 875771800 203735654 100383379 328503329 999406791 731640816 704598272 344739419 203069495 332707766 368093603 719314560 76906113 972917540 978213761 741244715 870183503 911977760 560635765 393704234 344851417 571765887 513839639 69992423 532572515 951970270 719344944 232053695 208563611 203687073 350680384 724090964 753132435 494532291 604131721 259680886 752644008 568941887 673211264 572858678 550554413 513515919 883667946 583781195 925248025 868034980 210436261 983933962 576896281 520499857 161943821 201608181 215105667 854096404 20404972 950479567 981754663 43059887 968935007 785749375 403818755 438604690 968340746 348152007 915685944 141915229 963696573 336251341 596715655 384911687 957321529 875707812 788286068 283746517 852622108 873273086 810586251 25377865 208085079 753310455 15291393 376944804 869111427 912897560 104133765 950998364 171980652 25738165 496670485 323945378 875044833 726394203 347830268 549960903 926789085 650528622 242434679 706122043 337863111 793769565 747089960 102194800 228250999 104048528 406650130 533623101 355646151 596113053 342132799 380469986 727306486 235993482 254792593 921589517 775061214 935402628 132509010 602790969 43501156 418190117 311003627 79062039 747247208 433175907 228272794 762126833 445408771 912314164 317965008 396811425 762179461 450952234 603577656 352891990 716556816 309795829 202876646 653776371 276083478 898497461 332765032 881875160 352561067 393181352 17263419 46464622 75119248 487574485 944575919 762671449 868977448 46588667 545303555 503089675 110633989 257732812 76299466 419534979 577812852 259305298 619343301 483668368 260428099 406333807 106572695 779679636 644316091 393905001 542796629 605054164 944926859 724636720 69313007 460513102 705351253 555760936 393583336 656754068 509292874 288960141 647268838 337211269 807489286 593059693 280113214 979065662 748393219 580538130 540138208 363758628 727385510 104360363 912660590 579312195 551539392 57066047 823259472 293972028 807174702 505229961 997105501 982862486 432996603 716289687 94033247 300444407 897175583 203924700 236196562 216029484 458941457 826619945 407992341 697199251 221466929 248968655 256267726 701533707 459193602 891336042 546846500 182741806 28301798 449234343 604815154 4936240 276317414 366103054 913711749 832935674 756898374 315165592 670845774 888437851 597172904 827189141 456492569 517928139 975812156 71077306 163662367 46075973 915143895 220433701 574000791 910473145 632219198 759836664 995085603 744361794 487450853 441886635 9555413 288468744 490900063 991761556 186023757 766460304 780515153 292825935 588264351 963050150 153411293 907295983 633473447 729106908 126174712 411537039 270437765 746980758 17094469 151025587 244513670 755577816 956650258 965043594 647471679 721698465 338808779 329580481 905948007 214011435 874405897 835211472 373682356 937633108 371074352 316503218 114226180 579729591 686445417 358878357 66301199 57877921 653663418 117086300 747358159 483888275 415973637 936723205 735424216 368971429 820340265 815801251 426245616 536651654 450781049 830485618 610145144 742436560 148886895 418137328 625105611 708018085 831139441 232146685 630809501 745910752 509559186 242152766 546994586 202310080 546541459 812278929 374192656 435012188 636597420 95584342 565634833 644064626 460155915 814853694 832152878 603601037 419342990 958681066 570649963 680847769 632640697 738658433 968416084 984382456 984964154 547580092 164963973 287175580 365442927 483746848 213632588 503439809 57809722 193379560 784249531 531028627 860030872 265515921 891734703 939555102 817499755 689131374 600618427 354877686 860947770 425437479 176668152 488258292 701292528 465044308 298131901 780754292 311688873 369178768 675693305 133276946 74396829 561522570 932248089 197154137 758047724 25973446 827135796 480367731 858375794 77866223 694926386 124922265 658736446 268516653 535024154 37881670 919465808 939781845 809805419 98358401 75499464 881482822 286127311 278536777 639653188 791323063 584849997 629405649 689198798 190739063 15694553 50112932 579024307 21499011 674389371 694234961 442600893 399717859 668590058 918967332 221497689 944508207 579195728 713479320 757344263 721841158 994219611 177826579 500468418 702623743 851859254 179577651 122010993 44514511 667651909 989613207 986036962 133860665 388437167 362968711 38704338 20692112 983473710 643699685 427627093 882437353 780294089 484143229 933590452 273511690 434678702 136463215 628517099 789308674 172730549 289532271 260224274 197600262 727983838 866457321 223391183 439158549 699159079 984209411 839941934 887593018 559910151 334789325 954960639 670904758 393157352 901331217 302751933 664328592 949098849 413654318 60146143 421775646 141146126 164228650 436137420 411994963 436121654 680704935 471420254 923559425 694057875 392093477 125528480 589844654 677633619 797572094 981621842 645196200 651989918 284727282 489746776 455795035 791867863 176644951 393133743 170449612 754387386 618175419 592883089 714340078 425493450 510561951 761796442 267563885 576552092 568178347 860418469 166425825 478644977 587726000 200936799 724946387 351563011 895405456 344919002 821994396 544229141 855963841 866262683 747482037 871618641 947925734 860284552 72547755 455013958 338679262 527828995 73498475 707212942 392400805 154432921 935094030 844746359 488958608 7918862 97258775 240040494 566130414 663554101 339069807 150521316 340151806 69416990 247519666 97366999 845058004 523149002 897924935 13906643 340538365 173186636 650611856 906030165 767785604 732786401 808283186 778423575 262310752 336316370 912334046 186763703 789744552 377810048 805252747 746492276 759686030 54092241 815686754 693174419 33899047 823267368 979956814 453633471 791059042 315388984 498497810 852180428 299320434 488572427 976630246 907084884 335746129 287208045 8106076 831299622 882574588 231788357 362450192 870035973 582768435 295896148 676569629 117930313 892526860 47642134 680734595 963082389 697756577 599433397 957224193 197428140 624359797 777676847 974396216 339125535 624672151 401826269 918115145 641855913 548987157 223458766 849614750 492503915 948291570 424021225 968450109 57631942 780945193 992629890 103071637 223040821 190755338 680499560 139477210 639827955 115269589 508630615 271527426 580683602 522182502 325174742 850566706 863578270 337669906 745239155 207195730 14930027 220567287 840219032 580416867 112753586 954633102 4411274 199235415 498055119 149609468 588966356 69391517 718105446 905038830 62549317 201171943 518706055 199878227 790044894 782060647 643943695 480559646 660558906 757762311 752968296 226623704 779096007 496822719 367952603 761343081 944171113 554932977 895343921 185497402 77798349 864667925 804117619 818741374 441042269 235751068 227008886 588641849 873513406 838013921 2295235 307015148 360258110 411561123 505458105 476148894 290722478 702887807 524051416 171017696 125029286 198554931 337942443 88254496 337020044 287997309 650956293 904855997 984997677 345836764 984166998 729564245 460742031 689478650 638396311 723338296 607959568 16942775 711910008 120019811 844616826 509584605 433793716 902941670 271348200 435990682 869680656 839640819 732641100 714502768 429095303 93275968 657638154 896392281 606934121 443886154 100257298 950810785 806060376 450208718 519941132 744490096 3956540 951550202 207243616 140985403 490838093 196126757 183940109 891311038 930743131 420930296 500412483 683080094 807057183 873118889 99024823 517941498 998044933 268583154 484046198 506689752 532431077 174672751 995051546 957243428 150917523 508953040 226315336 88443595 236779950 533111941 811016328 368192821 555379376 491627077 698182515 540976279 19251447 741525851 949415689 983333684 757841605 116788711 846741941 96746078 414433747 125033433 682120018 711831260 71564601 830771583 132725071 181384341 837644537 60268364 997497284 144031022 563092396 77935374 987189136 42489435 380895199 575444245 486556878 476081107 276081669 443940541 92965381 497557219 196191216 692843356 528717905 828685829 170658884 594183813 177913311 656872083 546930446 742179193 146359304 569375738 70080643 111233187 856402915 663133338 801952204 921691146 409782148 297855388 388102016 632940168 815616221 698331361 250507982 672671652 528755878 996686694 497046985 672803499 956475213 284544126 794117913 837181714 162619644 978786869 378883106 333594192 276519505 155306995 385557895 715655397 758210449 1608460 860772711 988368906 796694493 973031261 371144848 919327714 730528124 407045641 947812152 989808594 21390257 640548760 448901726 52424800 898208160 86231636 841009887 590091386 502633215 495017773 81665685 893048503 33593686 516464981 756463179 252329734 989840669 605665416 716071787 626190391 938408503 896491447 70434827 274117569 486800879 916017651 697375929 287802369 859345225 204924527 186198575 753643637 733457395 278567267 681907426 424778818 711542286 567593327 927362965 385607746 541541661 241041136 650006384 677898169 192748549 870472495 749587334 844948476 345077777 962074580 463500464 751502938 507718519 669655107 911901271 787610971 9659312 69706181 89832104 67192281 277732812 584778501 731703969 732489794 337869641 168591706 880353823 117860214 410441614 787355552 354582160 652656474 276789561 378112972 27516031 778083982 341894980 767863415 863997763 577677140 359317151 961538992 561133371 788497371 166269595 803804287 588345332 3176346 354797777 910595384 221565275 712927121 427787896 33212050 481820055 780703567 167454054 431196447 674120569 323072983 558431634 556098693 231263732 770060271 869030885 382235042 707174252 799559057 581904270 612420423 393304368 48557882 318240772 83500331 249935200 926885178 852074796 78593334 65097352 14637525 912881956 226696242 999582818 912947230 487282047 244020698 459898029 447678934 411913615 80382354 802466306 223208854 25649557 214424640 510441627 112442428 961238870 595162662 584617850 375786338 444325475 287630628 366126449 643503608 726504806 925339751 270403229 538686834 891513017 884118657 861557113 73318598 775893949 913155711 323013908 179302180 166856370 857405567 606993711 754330525 209787449 738064581 411794666 21001320 398168359 193615481 129661516 52347321 809111870 947011893 228368582 350197723 669661120 55307840 873579588 268576619 78072721 746424547 110908388 525537403 24148145 271092364 510473691 830400916 662828372 164049342 337373612 447396226 947386354 375703754 553003993 736023644 675018586 369354708 744522347 746113670 905026104 884492957 350527949 234419795 440613045 553026348 748785323 193808830 953822320 213885310 842619812 990055425 275916595 478111808 474571690 631189967 191013213 785886478 317859742 536860556 791071133 631703562 966929066 888245780 99803344 229495153 195541235 102008009 52975559 986737852 59053037 879363840 185422556 31430568 6417431 64200692 629173515 902796739 279139128 916255697 643979516 389572988 727985369 792095311 481018854 378470941 585822726 551808257 759220403 914082854 631323444 520923783 31455634 746384608 178269668 918788189 35106695 492336188 654444670 565255439 273839829 306580456 298820101 917665374 290492056 27488921 642723942 698477485 392255653 706445920 633666803 645524484 169915138 155053430 979395372 576156264 181531281 846807158 819422437 644342286 562670992 742614911 181223472 341195676 204887590 483942416 856571132 673284998 51269984 424625339 706521372 755806159 736308017 981286507 66709409 140464354 242208618 80111608 563052241 76547524 425036538 201909848 390495426 472817734 793529324 141448243 943027491 416104727 666155025 532706901 387352653 138271190 972198519 259193922 114098818 681878923 494014820 313046164 414031650 67743471 370564370 75895052 920888079 852503243 205326330 315526864 406361239 711868587 859118305 783078434 750540729 215568686 652107828 183171462 343172281 972851229 418784890 594300558 370716804 590465742 95629582 682819687 275879648 799042717 112062867 352583374 798997269 748620248 520853522 112693430 135183587 612792993 170077379 679773028 548925893 898144838 42156767 965243671 979199047 195183890 908462797 472232523 778715158 384514626 415815998 248691723 652228853 453512372 282955881 251864314 287665327 475158609 243626129 713909390 336905302 57149575 222480620 877042596 907804893 699072441 224054235 565847828 149631951 839388617 671042559 756275138 406157080 996668276 992223136 840449683 256111171 833622541 36284466 191251460 196543174 988620979 975814847 127627504 870287835 623102569 634145918 342207355 970291801 552089559 755031442 329918339 842084651 466112120 915465141 971430220 816048643 100475055 283771952 953508691 692371607 723720443 348278486 862781302 629415340 715618710 455061634 108930128 489557111 982833994 994100119 937072367 804674222 174921146 39879546 654675958 612031874 910303002 59526479 203254562 151508549 849577164 400768069 40124047 405925180 130002251 447437113 717291609 946667793 742749375 109496150 424508109 474933572 522246875 936245283 296406068 454155708 355470489 523478632 391239661 133030268 387216526 569708842 167735920 727469103 876828204 855191346 943060355 983175171 241866405 473503205 82259046 667691493 212659837 904882796 393541189 829695926 104229568 362702381 39714144 281555261 352640957 311070298 461283931 203581827 978715515 192592106 771942946 132656198 848224944 869710670 306848843 782241121 545764674 498606305 235786226 439693201 92898464 86706132 538234506 818892198 137331035 311367155 550828223 315566928 477412207 437911545 788243050 857031705 55539793 490459595 763267721 288702066 639106912 853997253 668460544 812836462 705282344 264511081 385636083 388941179 562370526 543661407 585429648 814952177 774623776 806872599 46614663 588985151 400132888 393957699 696410587 235693458 53275962 953053831 25682043 137244777 546765580 271884570 27490068 203811597 679001202 87873386 738922806 487089532 122755802 589671252 575262432 636944834 445850902 360737503 510728620 358815789 628453559 600394884 165444180 608636053 347711767 816156729 1567245 873963435 343926074 774931500 7832485 470997783 207391260 712537981 349018812 410355615 286090953 582037536 331042335 768139002 147114600 886875009 748972344 709017196 196335349 536152152 957063429 322027270 564911330 829922569 625463610 257403997 354105805 263993436 184139979 731060444 497985733 139510783 985942211 979162770 467199873 108715694 197717344 620359825 632461572 250136197 254297891 177793732 758417361 765897734 920284963 754044531 421189871 588511918 135557324 661819202 147071269 528488250 919357404 748304915 848248369 806432565 321762012 117703591 609231553 822243818 598573722 736404444 534702770 50027496 113063615 668460301 569114851 238936845 110140450 525029130 181791621 965008052 968189478 232530150 342466125 119772223 314058740 260251599 577600802 139227625 586482397 584965819 891200956 837046010 547625413 395339032 895454224 57524452 332225522 868145800 782115732 450259699 598201304 564858020 473721446 750987635 819112001 903850113 831149365 698068069 825098072 424222798 580799396 963105619 950357165 484531092 884057471 922084423 173696400 377440678 631772666 774412267 58760887 514211301 111213403 544935938 87194801 732004103 765640849 107242338 539386201 317349554 151805340 476716067 438915045 370780668 333326643 727922695 27821521 5331285 629045357 867932761 296013097 305899693 60676721 262307925 705589492 754142768 562192950 618442254 375691901 504983272 107415039 940320321 43156504 703942354 428504406 689654260 581971052 933086963 749670789 279240656 738164178 775125015 47916195 788059511 293626802 137713011 808093592 104018358 506584378 593218434 438802910 805460373 131543960 648960120 196788441 23489295 750425031 644384939 158433048 240438047 664200818 242853463 499203423 469675253 64452553 818824389 216827255 639224576 979295284 565822887 925440127 682048992 712562370 83498853 235441849 629030903 862642672 12618108 394967343 860319821 611015677 686993884 791215344 924955274 348826089 170526059 982290494 765610727 648632848 383129148 621969207 788717831 231125231 462792317 928101325 312091954 178196620 191591443 502890416 993414318 319073650 13471043 983965426 667128571 572818778 894760310 366004765 659776833 700378288 238636955 484356836 386797172 862899122 593606427 608362290 467878619 147881363 587002210 409531993 753538752 516790353 721672470 892662793 292652039 103266043 85575132 345001570 475169667 84640160 112052375 494868060 761316113 860678769 51016212 907140339 23399615 988876435 621145139 811518166 488045730 629437625 48202275 398957856 507932024 418998321 979960189 824319913 878364767 451181544 248344375 706141193 641662427 881834826 693881731 505042446 341130686 291748665 763011608 642830529 965921198 792392894 489432206 229577160 973524356 4337124 9888369 761413972 867521194 819878957 32854734 938597360 52677321 696694894 790470880 82874005 201407610 828127902 21044814 832248560 516154255 591865266 540723099 702172852 730855812 363658238 205801127 241829274 215504430 544402859 643060822 975949341 332357479 155386041 539110839 39960404 401432723 235300721 710177309 234687865 123083507 224638857 648830950 701315095 975051922 548267813 886890463 863815335 796957421 877639646 4898176 141132393 761608521 51948099 721335779 597719309 381519 943239496 281008074 205135826 100419929 116860036 154546804 997211183 868610837 66199154 348024553 83090957 881574633 206214753 795696798 796113026 114108926 870145486 182170415 325597698 6925472 30095667 756752040 78741479 50915105 537127460 150858599 240414806 454781499 5624355 842205249 530484600 531667547 124744226 352702288 232615427 818462603 832600676 436946412 374988124 717917613 827624936 765348119 505619135 226153903 702189456 297892499 325690526 215561042 555058115 661259152 909670826 818879668 216564309 917109376 728047091 635884017 842202067 897263066 17684927 401851899 831193554 545552911 595448410 250556392 409607336 930633857 335018444 864823681 194992074 162760049 698512930 226945330 35500216 164085660 973463751 663040405 716832810 756564488 762428509 635818672 946127375 326691493 219261107 542727013 939477495 797004183 106220543 472610389 793346169 262551014 108249557 481709371 800577866 952766300 794313327 664643663 74825932 822679384 446367080 162417408 164840300 813057893 635234945 756037778 122419667 754317299 265548555 525530800 404778711 156064701 845553081 322044927 149070268 223236144 478660306 453525599 723579273 901863508 684075979 974492329 932456342 594446973 822663759 700228654 233420087 166583109 976545224 859492136 794843697 705009536 161648775 922783005 381226369 491843028 755535177 624999435 935768115 641574457 386960329 41668189 443455072 6564354 855324707 4599240 691090060 579490244 305084333 972215005 671061511 328152484 421367116 216398432 292319637 112933115 844729687 386035166 800529337 335349408 997812515 387336621 622554373 12361054 892003196 233775666 396378953 169707676 380865214 677748879 261685792 953984382 398086121 258685755 242765482 305363359 105012521 679379847 330867665 658530435 889940479 409134232 586336070 341772970 188894604 291790849 915744288 810621882 913376476 486935543 100310978 241540554 517403136 228481437 693338099 642499955 783634944 929002156 425380986 470467989 265695767 626309266 197055181 754320580 597882532 734957687 955666601 335418890 117357144 485121624 217527668 114055382 969634536 618153387 839576911 258549561 899969131 34762237 418948351 783906734 46214122 609301294 69007789 695842458 653263261 10614990 821378485 747134285 234520027 513473510 378805560 588119616 623054620 864365270 318618993 610167850 854039634 360743339 483121450 637292367 316078717 73360166 737437118 136570690 841439188 521785117 605082325 565653282 179782342 452469158 7405772 496458584 201386018 843997605 644185732 406447425 362708994 885475175 556744514 134002091 349865864 142024688 395858360 697831613 279518354 963149569 142386209 445748227 759298465 15746302 303792715 14164332 332094391 346539720 461606522 261172997 961797181 836702371 172471425 293646636 192048646 2002328 871884560 910805685 285354502 490574007 335924698 876090308 298077405 749745664 2420354 647525306 971072404 422980172 550446451 931237087 331094718 181866736 401830478 648080933 59554728 141545677 948125046 795638289 794762563 843068237 850042497 560736020 529494626 836125397 809260561 737029870 577888115 706700332 434496580 334197052 446615602 165841271 567014952 58449733 26841214 199178757 440906421 553668866 689016630 677404076 160790326 986232199 679541515 34769617 760757085 612837157 475831518 512649786 397709189 459084805 650549220 166131133 975405991 819545355 281137615 645019407 852939573 67725445 224351146 797871217 198506724 501141216 581163364 928996124 288954682 416739581 752076449 925167729 314598131 398576394 255523785 857513364 309255151 374763951 350443407 261331348 411854021 88778390 581203054 455305028 510604119 454240778 492235300 469696844 66110966 145123558 669153533 831173112 362760047 389307953 167597095 826928694 775603739 151569303 441381903 672684428 582460192 208504780 807686693 681001154 642106136 809384036 112095578 64231440 896464765 693799694 790792530 234653656 858384076 295790322 810172771 626040492 487952183 197280446 612936829 172208472 988385224 969777079 537797862 595759780 526840222 76112154 916399765 964998726 428757771 223393225 246365918 109044976 452335695 370735337 43328147 922495403 309485680 847509632 608563748 15712954 623844223 858657152 273915917 781837845 516858963 64142071 281579939 184166844 498498006 166122241 812535267 579339427 467602141 788532444 251709876 656839272 902903713 582037140 109504292 619631673 88852588 496491735 96263689 622823235 784725061 802280051 888893379 634315512 18096086 841263826 360815131 566385366 703026725 820976893 445210993 914554223 190068711 546652973 108249276 558378873 643748029 302963553 667060849 117782706 470989092 815393750 837298977 136019887 378219996 634404044 578102549 908973738 657913867 610107843 148530046 803497565 609266799 567295983 687890584 185910260 134708860 60349952 425431480 360130680 784841396 206589649 428414305 832851936 211714835 920978536 397710467 462231612 434194133 117382009 450748608 144987073 777875147 295404766 602982257 290591840 966221301 159122210 799346429 376849437 709842042 275387023 650261450 364973483 867007043 36265450 245623999 903669249 84721355 802516700 708309649 528759149 452937983 810147189 19827103 352923049 633040892 689288886 443785574 722207117 703824153 270288143 54575219 308634219 267260848 154751701 56794499 698691703 866085445 266078753 416843231 462182495 674894625 652054179 281183447 671866180 852993295 702396377 613130167 972752645 872353218 63098092 181677138 66520864 897517533 444687856 546767740 605095312 24113356 517433588 796502215 164545638 489509856 483641050 827893666 878826300 926637466 658927217 102608034 488720963 168973386 175608017 669141655 213838402 787554716 564189908 344617635 910665162 31042277 682330048 635241164 4744618 932508336 834490006 881888946 162522902 217587305 206684336 149577073 909268354 526687960 634883299 943393370 642677242 49873082 985733121 679090597 178668789 186287595 902286756 262205550 999504341 141061394 703104315 676154799 845845674 665025981 373811013 746011400 673771516 502844723 432724374 929298593 945405782 582398749 500092921 768305281 729988143 605448931 888310810 594903952 7786390 177977419 267768618 321442115 537316925 219368827 781353018 761265280 237282022 312573368 192778463 202903576 713305277 332696478 958826963 729983077 570245077 346516361 377215244 364125637 715548479 29872105 852719013 940049031 225875681 478294541 129465953 393500399 85624208 456223945 952738694 300120299 772968538 595209947 517543400 89587521 524417063 712810712 313810739 876671274 942010107 525203556 189642884 824657254 528171549 839370593 917221743 918313833 718427225 202219865 190371446 306253736 223139719 262632652 320179889 234809892 126640231 333901233 733458389 330598958 596681169 655028315 715997476 186864082 173052139 801687030 296674821 63893660 597335332 907450641 698201372 636213296 596888960 861830231 552460153 797400065 237934026 965212538 16326438 805759685 558665139 215264213 221533278 497956169 35955004 955164386 668703758 540973025 441574065 920713305 669757516 602708153 460928557 191926961 693077665 734480377 284957883 909774827 44056567 968633033 853601103 286575946 535453014 810474140 941814214 129298497 912417230 553583585 801285296 72747602 763533454 728567994 835814635 576376520 77376779 152885854 6850244 804797767 695991237 364509364 881193071 504588695 897841404 36960981 603972376 44594508 122336920 532959267 561738238 672994819 220165571 96781694 941418971 859168448 215931818 562842976 751411980 46543813 118137439 408268181 96412207 88012672 699209351 933593876 750596907 411274342 709894049 281723625 738002159 839345811 304849962 466351000 836758098 723773876 744126589 248927212 507023737 830173388 501490925 883432632 64127605 825718234 994214586 217461903 294662638 143848359 877356724 870891467 996970636 364962079 520670167 597173423 306682054 365268855 514342939 25214891 224416564 321855116 143339410 316186935 103185718 300116573 843952625 824812568 705430499 257458015 814424227 345506296 24025146 156487997 758140841 309772685 802860806 41606301 209852421 253061395 486558048 486812818 957410329 599250745 638893057 620898745 236300123 915914965 841108952 829601281 346608931 876876129 624252000 548669136 256558013 906032201 635528851 66647311 257877352 108699442 412213425 516658286 488474878 49239059 59535552 404777583 322325387 674730940 561819027 403422926 828075776 824757324 122849785 334450552 759102228 84715393 706522321 925967580 100899792 884695475 526438734 262047428 461383548 282672409 513846763 460761432 799921179 895995874 462213721 833872234 270675558 374261077 156542817 655159330 364584890 867445459 912627822 426642734 830255478 505999020 519109848 809858766 346172164 832894798 500598342 934905705 458329933 143623294 764020792 632367427 531272271 970181300 949980371 502940790 285097958 670478894 657550621 687724193 312594064 826458522 515947739 7246837 340443240 713160257 569250508 761217287 214437616 713165822 682468923 507710975 282555521 275775174 395703173 550237663 893445444 171882151 299820373 449269835 555754438 78260204 302185349 630742895 201363168 555760681 781148170 865876475 618267394 764826870 390614317 334345154 26192611 149670636 158438568 979377159 220804093 843125173 583961990 83097394 838002942 481393295 157924935 927244110 472172936 495466778 316361931 913546607 424141347 26057348 463024367 64866500 543086668 274577303 610845936 385127446 208835906 217302861 517146781 55258071 333605453 254864828 365245153 723272279 652109856 7877880 908583437 347148981 287685525 269526014 894089820 158826586 573188210 289274426 981156334 365129551 219354164 143775225 759583502 387786619 581489753 327838511 833018187 720888470 569379273 963536618 322028295 992731916 877271889 737263884 806895411 920746137 915145734 542266778 323288175 16925793 964901899 922849259 354224150 37752067 940437784 414959975 8647751 709795179 272679112 54068766 991899448 583029598 954777741 62558239 729931981 874476975 140165686 159467501 794750690 842551332 490288843 899060927 353261560 486950490 424963323 414976412 944777857 368138706 188450577 761910865 511452695 388572863 823639850 339626003 886049758 98867733 291855572 316316793 697183960 612328232 437691249 407697737 926607032 157149129 899271274 16644996 836123634 303048095 19717507 482514476 150653112 621872827 813473638 777661029 994972522 100217880 907432208 597997751 872330883 350516274 770299773 967432024 449992242 826692018 73372270 69269546 354676446 286555590 653625314 241262811 243593423 522090706 702171756 740122511 850319905 339810878 399827376 30643166 27187523 206920794 976429383 939943383 586836780 520145129 939379244 941644634 923305180 326894592 726650589 139623617 92417350 478309581 696899704 910508377 42560208 709678845 781106273 424834808 396516046 887368329 397376276 966798346 423758138 218606171 925356688 838216729 436290801 862959194 256714606 251688551 728962028 157535897 966192200 264406052 545296041 364288341 897394953 911296674 655204288 597716773 392029262 557163836 219422104 993701488 438985684 305231593 504682898 55768370 5967853 917244920 768793425 939889575 847473637 474136973 158562803 417101861 235209378 762292094 901491092 895827999 677018941 695483245 364109683 587059068 112555823 561478823 820804487 102078698 987128489 208524927 204528572 323658509 171704960 301725902 424169715 65960619 306453817 632688285 307645505 220942851 861232458 510982648 696436155 114230877 322600322 106163110 261509378 822220915 667264995 585046367 138755972 541365654 296487413 521166740 505530809 240612519 577120674 145041433 238559511 206590418 674277411 770665249 569094273 514041385 821338231 990802877 350469719 833479565 865379932 316062919 716752275 458658573 933512531 887360089 320397207 268743932 855756014 275203595 908756400 543906705 837025962 720835680 990036551 795916690 688055182 51235656 256970705 394980417 342593262 377710187 783042987 381949512 662253803 418574665 391350515 541285749 643593356 446666617 66064317 90157368 136331772 265411563 213035841 78458634 463223447 684467694 480041067 632364786 344825534 458338885 499902854 473242797 89395051 655714809 931997417 708446620 244288873 982877869 264846779 600950374 674359342 50532990 872722082 747742707 950398624 207403031 289434190 165718291 665923553 377745914 384887781 777427257 690051081 485706644 194875140 674097050 584808314 263050185 468899286 612953426 662104887 838191241 219836741 927104913 973187067 804618719 458038009 661342036 699056456 915327952 669038713 410435778 101626523 849536451 184251536 323098823 264437830 125362759 761340343 756965886 669079087 316982914 365776332 495144568 349990120 138292005 256119347 602212567 199877557 893128934 900490636 359996563 431164026 260340818 780765570 332530801 78949088 868994881 686108800 612741263 161553238 594673141 483526226 577740901 581872018 794381445 747557763 221108396 253238342 388255655 33961319 698978517 559023141 869510948 884010222 691201157 568065052 370318237 611914204 942338106 838315817 29721467 776128618 959079979 893739713 111582357 278011486 15986068 751314019 103446963 833369994 415396541 515915235 103551105 240879098 292216269 564009480 977193356 820824807 819963396 90637428 554210242 586662620 922303435 809477408 481127692 740389356 374018079 398160468 86942029 466559384 493483425 705287593 938202107 105479959 502725107 434217029 504532679 510826898 988694143 228009474 107782094 957120657 288886355 207885209 964714863 312455782 814890552 750572610 108308767 762128376 72036347 714013826 23682156 890210587 499801180 292297966 888941835 816459745 305819617 512540836 20258213 295232885 484984900 869015625 198809431 358256687 592232079 872174385 914270989 42475779 920776497 324734391 367909378 485826417 843134941 587691323 482586835 723165244 692222831 636528872 888921631 170587365 742591340 290070608 587234204 371052204 698766433 358910800 509476385 540227288 812078492 626492048 852693099 539119311 422736902 108925686 964176636 478480897 116015939 927993793 201630368 436680160 117912498 593247438 182309953 578736397 44764692 809134849 808835144 972498707 613708162 950516841 215158162 275662093 942032409 819410970 505999764 598435710 7811731 90676140 459851113 728906384 33713354 708388087 888407190 305303931 634045868 799852229 479840288 605954964 249350808 954434678 241055215 512580310 250731718 300135525 274068979 632200843 41305505 163518213 207040381 845693618 609359002 118549315 435549733 732328405 295299626 234489556 987005174 232800902 255244110 243982392 152251757 22763499 633268303 736403691 808860104 149828239 293293180 419031040 509478032 938156191 221842466 439191774 845250643 725418699 450367288 841268363 675717901 379036279 408257721 689879469 276301879 952664002 76724862 719138868 673555912 166968867 682019801 759301726 885019180 13136192 358588462 679282058 834064398 572653902 232390743 235514380 515900298 203665388 118848260 668771051 662800647 203717055 998489026 777556611 770086907 431781663 940779913 565949851 539138670 941058178 675876451 513514634 718558040 164620061 716024894 571265361 62065628 631133667 925369369 68197317 243025272 274980642 136182181 614431974 379681771 629683336 381323271 297150005 961667335 156541228 257082342 61069171 682064742 845811382 385290034 297716946 16205197 856919708 944349252 273254957 622460000 654971389 473061982 987822821 625688934 726940987 821769453 62859063 535005980 945198387 959547580 317107882 874915748 823658607 153796397 508508578 658394862 684502232 155599227 403373864 807489592 878701981 916774814 673764110 333407700 847062503 647710255 421785221 34149423 892187415 472792167 462376558 186898675 250317991 703219508 429472352 97870406 422729832 264593738 929665928 755427009 570795359 232639404 472235368 537781884 930511470 964457782 118770107 273327738 547340358 683166565 613904751 700327880 92799628 67012013 644786079 364662021 583292895 208785142 615097451 356144344 601130206 511762437 370483310 788872571 570254260 489764855 840646441 885419778 370529197 29309071 848159915 741455711 410515191 504386373 302803126 571815801 185957721 210840035 110218637 497435707 769014288 718981909 16104805 896893026 161156141 384349578 861867113 510035153 108288948 302604897 480880111 83979138 621972043 627453367 78624943 127270918 982104013 640011335 2611715 577261926 582728205 362320567 567768919 699774232 280134980 494534061 378874825 895568591 399169351 999262712 112221070 774907172 318214424 601556356 749163388 754167712 89277326 788996416 49760064 114072192 31587099 399886268 128318715 260616737 273418540 991114503 739768342 7859092 648238280 912712584 514387393 836229596 146667308 679260285 752740023 390239829 192024902 678684080 866210663 892422088 209372069 743710569 253524726 780314341 683545430 341758824 621050071 182743938 267392708 918193553 170255170 627034783 220056426 553361181 675006975 482247990 770396494 856544047 311157160 234837564 536404733 404991246 85951560 322102183 982044718 856738675 33044250 494021835 286647723 301426451 531747267 36666434 468858193 386834506 993102436 523443494 52558289 36673198 451461053 90612484 686269263 922979527 93708847 53397379 794198356 914749747 364192624 33976853 780949892 306872032 408540511 705414339 358792720 388444176 898524943 664596376 151448023 553828121 554141370 578038653 468352305 911307259 140718779 773069959 436146559 967381042 821024768 27669802 983296830 859687799 229987037 842854180 140627227 513598829 667425078 586686561 993560984 487597530 601545148 423075275 456451448 389835323 268533698 454841893 713517259 588532527 966928579 427003790 80171588 269801175 770570424 882152329 522734798 404676768 42716563 165739351 182848969 717678273 945210840 258476921 52408951 999427358 687952844 409806629 982966269 804281958 984205518 926578254 774737356 292245348 223606000 919836345 671736138 882252781 484551179 383493141 912063265 1571756 298104687 199809614 729348371 182913801 236549575 296499081 919876074 928385324 953548990 954218921 756653206 262449553 582625500 479972852 643339485 348491229 310168740 735742125 436958209 635052790 315413374 246183409 286610639 715294877 282026189 503557505 372367071 93885622 141864401 63977082 974384757 204207969 753707809 210674262 926831228 715873171 140133487 911239294 633535924 35506197 222911164 440140383 757393883 900385684 905831939 250357558 699428790 647208182 997388935 478728050 469937429 617899075 541287 795156880 517910973 173199661 193516743 735112313 156839127 313358611 614924541 570418441 42975792 553348666 175393824 386728774 377307567 655582003 326805910 581950547 910157846 55385392 738987345 959023953 899497583 242138159 839461888 75204692 49830716 991888149 5428992 110422136 492523932 687061184 373129076 984567868 149886335 175294310 608752653 739596972 835062996 169663140 84547805 657861695 357671047 233297970 984122223 505904932 196851029 657066502 934588600 670507444 567394878 517425626 392515455 281602888 504277596 535231857 142618207 712418371 385803454 728797193 833803074 300206996 33775131 516058342 658192504 369347611 850199349 383594280 956066204 256404728 28453419 591929826 903882058 917886820 991306874 647190583 393938222 836523903 870294665 394274417 340402946 868549585 161119408 806044224 462087390 571430010 160894215 978258619 992276592 345907366 650579727 880879 63413328 279384887 946421551 884546474 395855795 778277280 298667363 416713323 593241530 327186481 705501664 237921414 477624444 51494665 580529803 803761770 568255669 641203218 624416604 841463440 210674135 764921910 438897098 944335369 620594736 354575307 589904105 68324660 525354746 656241687 959955394 892953402 102849077 312246263 669083850 54499256 547864450 798069156 764037873 392122583 50501454 702974993 259366088 491193885 631289413 52512912 933514375 495048781 647596321 89808746 381934327 22686252 876931274 184566972 157532380 636305838 979479243 601083810 279171039 968661150 13983151 41368779 168105050 491250964 27628800 567879311 377198228 139471200 631148707 342682917 143764438 488962974 792154907 230060382 599839479 351010942 948872791 192679532 453204264 572640009 692891610 96228502 262427766 561650889 769939246 378311626 945728880 399847042 806723202 556194322 236225356 79224557 659291834 660277569 350221109 594757418 747676686 419385135 119626742 999611723 742941559 393858250 731492079 573368894 358478342 130119931 685758770 364191500 160162119 847475059 754110908 91774893 767058841 289921634 692226402 172612881 867613222 452369742 435016742 402090318 359905311 508448254 537029546 439288467 198440485 370840964 518397945 958338988 414867843 580968470 985345748 465122653 20537026 712273536 25736880 273354994 65127692 284622412 931494666 576069723 270217664 472257925 815020546 690126052 556977151 618796909 976033339 128395877 496674796 441783916 515253498 242148796 646385992 52128909 250828245 514524983 842113002 936802193 461462449 759478492 7068011 162594025 341433251 941355660 142097371 789473169 635228079 335860285 322929341 904564436 579806428 135000452 159788326 871064963 918539647 500377354 588377498 220057698 351232976 711594084 784789363 262822954 998591263 989566713 224411773 148067728 246290271 840699269 439319200 396224084 78289331 571474649 720482685 928992512 686863243 160551726 832733836 7800008 457059547 256068577 770904522 372234788 360092500 821618529 191700323 605015623 917628918 903552752 91872897 840724009 914903675 253208623 115518886 765028064 67552148 536724381 244373188 355134222 383104436 978279441 488283512 449689162 838377146 727286967 256848946 537922140 953164351 604600574 536312121 286398472 726870680 294520348 897303921 551331860 539671497 238733118 564928704 824722123 914106317 668627513 301696161 346667829 588208369 432275572 138439023 482486992 740986452 785173035 774580655 495528846 666083259 739507343 709487341 521888376 145727806 600495961 478567902 843086763 810142918 864386551 209924508 835182870 587770720 847064907 830876394 186343929 666841473 618766560 453860594 129488636 849184380 197295603 133085073 911364641 429916372 447258174 690469753 58233374 814582999 771368857 846645726 567423798 487481457 530951803 880276320 704590355 597552617 524253483 827034539 66816703 524135262 417224560 836777207 891208315 902959462 238211243 442674682 49767228 14710787 540026316 228905657 400414797 360082983 546158829 312160047 680686313 660421314 805698752 543305092 655021269 103110989 820581501 152441509 136070810 243469638 14727693 988934596 823218947 381488011 451392612 747091386 120702426 705736233 558429818 66001938 277488602 766918429 597923902 212735906 336186452 796874751 675639441 376935218 383809948 606617742 621995461 624486503 677756419 737973319 805776709 758690291 976991152 666143095 856847839 2973207 398101494 811892474 718927633 121896250 740513128 258910258 293036915 174443152 735514062 760771806 490848996 993921238 14703905 624183837 985184850 684970509 99696273 281109687 398130631 523287760 414476878 131692498 694970275 288172195 692014385 582122092 584724034 814719349 51826377 1026588 19292329 669334252 766033043 238825564 2972266 201981608 469489443 969208230 457903231 428582615 578884418 154481936 247774208 630050996 991681324 491269679 477374928 155079349 530401150 777921190 218720578 822477528 689328369 904922175 381011701 314866074 661895155 794110776 91788299 96984518 921349392 598885653 803714942 76492692 790919201 833543778 252685642 498267196 580200863 72431911 179475455 685725454 784420370 323340807 685770161 145521310 371104096 23749548 273224634 498348764 690012719 52975532 261503678 967517803 533476642 697228670 533348744 421164492 479366092 140787643 712420959 749249394 608172173 108386637 938431957 648476872 208231445 84801980 757926470 15076004 870029762 393701818 189402627 131097993 550084739 916685701 349128814 596264141 546540872 247565565 695809826 105859170 342724861 105276875 578477401 869806560 958937026 66333089 99401573 757226150 107736555 867191277 979487061 711976235 179526013 121571464 15262632 444431112 490662774 178468748 897571099 58639654 136016218 862772932 444594209 186544104 513908247 519272602 430573633 196590119 580864081 600568701 344793864 755600989 516323498 905209464 859302395 909533890 389785728 641266898 706318845 667240349 685067302 433228798 847361017 592951131 682734136 311693870 797758697 224754566 334678019 760005904 497660524 957161109 692570651 417616430 85869930 827156395 506294546 514715528 631761182 112767752 706212415 597397445 596335719 410133269 441558224 690709366 603512231 72737898 400033040 283168599 960177830 63260440 935853156 52807519 514476058 921343777 643265269 755197448 531571446 969524705 532115698 297133155 843327220 274530637 498721391 945501350 396089650 447236214 809730535 564394921 94926603 880603795 343781181 848130647 41002731 152696072 607813728 836232699 765023470 976478058 101646687 290812661 254829393 928981678 115863646 904683880 695937496 938887435 518009808 638491008 185759567 871756086 44321608 876366824 124331816 895684976 365827499 671494653 364797105 162844088 809199727 983510878 592900556 847432766 509133984 422888408 952547471 890809946 202400160 578317352 854187414 968405128 203574998 987891181 829138407 111512791 935763670 550765011 589258314 989277503 787695277 505891766 881988595 775070180 26001411 641058810 19828975 605006443 687064814 344822727 666853862 790083707 272518871 376424813 20519770 469184672 383195583 314878918 89579776 598506654 935300481 973515381 852921758 156047834 637291225 670864438 578011289 409306764 997916466 774196615 196577782 951616057 385235078 671618109 181461993 858562015 14136805 893875721 372575440 921343211 809429763 650361476 84658072 413462285 65087391 910598433 928800456 562436494 913468942 261708740 671652046 507475942 812225824 157464533 153191400 307821351 256080015 607800270 211650707 466716866 586821880 515614619 493372641 625744943 766652523 80552779 4667127 640492152 713528469 527958968 381479919 380549460 674961600 996249329 393062283 576097221 518809902 631598910 346088449 283746823 209791701 86089104 407902302 4980050 728315142 540614724 326778151 586782620 344895500 97239674 844656223 65655377 357177177 768711271 207840323 139230662 185974176 959092090 562712859 562759908 114712844 64290173 683317257 156000760 247122997 572587921 907063340 230712562 319305154 960148336 239026839 365258999 722488642 138419427 617966451 390742952 137553356 662256356 36165214 869196038 380596081 493872247 36973397 575510944 245360955 414458764 441190182 340224485 355657745 218123749 172409474 628255246 426309710 835080035 438591559 659414851 31956939 29740906 552357574 830397930 528310684 276850379 590166361 935926014 792956342 672728405 616957590 878138508 454491179 339241715 33140104 483094886 371030558 370947576 560787431 233208517 592804187 506366386 282799793 512811709 62737749 94147671 510001265 386578800 609504594 823710382 166182706 882673741 183516407 20886211 779703190 908807964 558561115 304459679 752390530 163649547 776740834 194427390 158806606 49898148 654214832 385742508 260503486 939165973 602152515 443927405 601219726 791547549 90427522 47764168 358976135 762926021 407322656 914336073 759336039 652148216 571075145 28383948 889218452 420069224 141447950 997277134 22617225 912146179 464696999 42678797 855695490 392425974 665412878 897412566 777312832 707324840 216831160 705639707 398175114 231794846 962739351 142600936 26564038 331740037 25865951 441731149 259030239 537007066 106116609 951611565 6768157 467011400 739205381 217109797 449295697 429801247 475986555 322980785 404939821 535049768 336991526 454018511 43510694 894180761 430097902 844645322 377258005 725467905 270569476 558053048 754935065 900885862 491879661 922138604 809105763 557731595 468914607 871888407 372291468 978540200 474827962 733083639 347988152 299426893 490989680 498390368 717557917 733562371 267805107 171255930 799083973 943203792 881940137 980826087 163001560 323402281 259561501 996875289 990875909 895463550 768194114 377379655 406597845 32952819 265774917 629723996 618982640 139657469 948677080 447119953 626640407 133690053 98601523 105577596 374274219 75969764 300471480 517454873 931634195 983822757 957654292 339868290 571077805 936196345 366111557 762729919 350546494 260384395 362121803 934864986 269770284 335310255 175340759 945121562 546568641 952961556 238287260 549790869 546711404 291006492 994265072 550876527 739630054 989050987 68492580 159187430 880384322 237562683 768917087 18211087 584754760 838515969 4173694 997319800 716629472 704542819 44970025 688776819 458417483 231883356 311729976 605400926 909055113 29534529 289156189 686720673 971484873 537224959 948942324 377649796 544754475 792053120 877516607 754054189 91589965 769088374 362733531 61535263 29870174 994626059 52087993 176100108 653098109 244642111 162044355 694010631 546678524 886827137 218628091 630993879 198746579 424467107 692403313 447550186 164176944 955159524 534148102 249174084 873840392 36130375 738231951 379445486 327657852 224515172 940346980 264497353 26709027 2362149 199562811 747636479 780642576 404359051 730824323 885399691 131405819 447888948 904917608 677124611 307229592 725466801 548365093 105599953 123827572 612340179 596969985 577358063 695006552 473787320 942302422 113205527 593402523 768771563 589838308 966671206 690646215 446033090 445292488 803612156 777952306 537367474 830327577 297251490 209324150 549638732 92623033 247049361 682213243 399838486 477293513 42918259 754959206 496348061 210711207 982754464 81518005 728239332 430020573 524111965 9207387 498739558 281722367 664296324 123851322 705446973 558928434 477666334 320316588 636131780 483894363 917311009 593522214 338480878 558130784 805140672 499056172 190778469 293377408 284897047 76927644 693287446 634030744 636481486 770086644 70398266 223310297 565061629 4726779 520632987 581327728 305762009 155715810 246988845 112446136 737086850 135284076 128497029 541490212 644360240 612561403 99024253 869455978 541086294 184124660 985670422 425267089 910650410 672917861 877074882 691542720 440492895 766900960 897748014 271740767 941929489 853428117 472957980 120610333 102225240 875943568 12163966 789531688 977268963 640098421 994668615 104803181 447537932 400681746 95172050 995856546 306033535 444433184 25450282 208612082 727297307 422186050 437175812 554228736 349932910 294908607 269297978 121819319 485066538 405141237 15865030 88758736 134737965 357444902 503231332 145866883 537576778 682120377 679930515 335053248 551276888 577040387 592612563 266787665 890310199 863294711 871097650 24621974 968358068 422505071 128100673 383246955 130992726 20156544 47720341 860795588 504341348 462015374 956268247 732232664 85242573 583128523 223862168 337192860 41856182 549804961 85097206 147357608 588043422 975312147 250473799 823165625 862114187 468362987 547004500 118438868 585407564 558100320 949837260 149157319 533861796 117130622 310044398 664401183 321666552 20150487 158122353 944481426 928004294 289822408 298094691 626980540 406224162 632777124 128181748 600901209 658388444 776164640 579999606 264611830 593855740 690659758 736138358 539864112 786707753 412463661 418603439 531553283 536918028 505280172 773101602 717550778 618688865 831021710 206107155 486849873 260785799 214731214 617144980 127267847 898380727 735203910 347043899 3352768 356643601 369157395 907927380 960776643 322544371 138600716 196645511 29277609 364635832 927032430 551800058 295364760 866582029 457109371 780869134 460447485 760488735 209113238 228526651 881908384 588591911 329852651 654499349 277562036 40972453 263015787 967198410 47363506 522606558 353371474 411743827 858306234 735903011 655733215 258161048 386852742 375426405 406458353 738879039 888968964 507933321 85803093 521244381 901770875 914284847 178901369 162060603 805951380 85536302 12419274 792548215 438428394 370118715 673870013 891181638 234814075 994670179 230573462 589777892 390054419 49761072 197177841 689362895 268713099 540331983 238703287 709570209 695062446 512878300 491195484 137863565 200202134 252279040 852340022 836621771 825046772 693472671 887083556 13934434 140833165 535362868 570882702 561749015 254883545 600169053 357787764 27105814 23965927 789605693 757019783 145854410 530508641 989650004 372629396 892306303 433443208 108996083 178875851 978510002 468839979 31240244 903437100 166062963 395592583 930054789 814183378 816207130 362899986 367360739 409674901 675250138 545336627 905159499 2930724 58148835 984923743 230300734 201312745 553269533 935374055 55761454 891420883 41351026 84401713 34477887 165532640 503609970 5942542 874812121 339211248 660244879 172694713 674710494 836508876 254732810 363888540 979162141 977290256 430898010 496704443 771370912 698622795 724241941 472520331 663599955 180153846 149443268 926558274 549560024 328093021 173667460 835528965 57167282 661974417 486948515 549813063 198284383 237947503 226248874 271866086 614785102 558490888 645501207 212681439 198177920 213750938 491707645 741065447 641789641 470121688 307389111 141561257 817779307 644323238 660044057 324112435 443958977 300078207 259474163 548898245 788921135 548565318 63652915 665642695 440553849 594357424 319940528 279577797 985238662 122884018 956083762 190716780 463996343 406941647 895045160 395532199 897168026 544067262 472471639 395021703 41390389 601023194 692804558 413965006 893708165 115066503 626679244 607616305 140657274 442118554 247458387 421535032 308510499 506797854 698542960 407401211 229273401 865163091 552845416 702087475 437980859 369393999 187281539 762585816 900573650 908116170 436645769 629642468 55814907 914563407 389472446 668470021 398640267 488698707 637007587 8582807 997345929 164565632 18354137 516176577 708074340 324385423 872669363 642367309 667025029 169185065 125882731 118970551 21147694 584454229 36360701 969067478 538765614 55178443 486003098 4355192 109006636 157201381 595535037 890867866 807043667 608633041 278733615 240733041 25852010 429216635 566785733 452232495 423046916 517074948 916812171 299643376 396851188 215845757 415637820 392813429 336377605 225848772 990820116 193115821 128107595 324596538 940183818 725989794 516036549 589534942 936048746 844582585 932208308 297929057 718623485 190424890 486087813 882546785 799068550 122209311 640376274 2472330 292721251 854476410 340486252 96176234 318722198 177811882 480138367 539417186 713296719 170690100 279111336 756010461 447024461 729685720 358406418 914879615 761023209 437716098 38902741 244090161 916367377 367309765 987328326 705397218 882196746 562195218 921323066 137862058 60040071 135287724 202952046 679098876 468063133 567354021 384103075 825943103 667699734 447740832 493603271 157786049 646852482 893897492 313867172 180289119 67963819 610068136 780294035 557814040 969169942 61305858 32934503 319613751 567706457 498889707 601902684 343778590 364981133 372171775 969198033 820116757 243020534 522455300 496400041 520013266 594355099 308829582 41763815 470943662 979000193 574123614 440138426 303730238 388553781 439892802 853171844 786793359 799021900 114937916 281133564 680890592 451093723 73105640 324722864 188581175 109136795 478196863 240582930 218844913 579084652 414492696 857591893 264969989 446575796 325566612 418860202 853516519 785947214 442893139 423006889 107526311 697775530 267095471 73041507 598120889 99319552 338829469 11145273 289572412 58293950 514319043 455745439 649129645 955371713 830294968 911809994 765858208 899913275 213472718 44576744 204524619 218193358 544947038 210453664 686820060 44384243 311441267 11288316 391017312 325793423 450764147 544404392 84743786 485049101 497160427 930990472 690393518 895603948 287347731 467533776 381797275 84150650 282351548 198401558 408682171 993207059 984124698 943024525 527162818 832633477 214265242 331395371 330962452 704023917 386134125 686180434 274400194 925972404 534581050 946943166 323664366 401315423 164776291 999382220 308484344 922669674 845552008 284629179 8940016 875827726 905422733 36791401 617655205 777741187 411207300 468267398 876028521 668417824 547654188 210376834 270854141 304559664 145790548 682220998 493241584 123730935 500458584 431910948 336601803 930599354 814325027 497282977 70031802 325739083 256450718 123160707 613415549 751094120 721237268 9262179 964447578 383761522 780701881 479338825 702242815 420767524 807655124 388215391 740486012 40082739 110969713 451507590 189373272 104385711 580640917 820757984 470984965 111158182 43312227 717842323 232847667 417302836 307841993 236572033 140221254 319503309 197798460 949924170 625627693 42758449 844649937 981934695 632399735 985533746 401470479 58901575 84786541 10267920 977431168 680727057 356997114 745192695 532527229 457646209 984703572 400333968 748232204 815077151 532946006 950967089 729521399 928650118 997378854 325941655 921633900 746570521 491595932 727118878 484134792 555072004 945210078 527164661 185310515 666535443 73909534 505356411 818078631 230272317 31479868 351738006 177176032 748393874 684511630 97631350 497462991 560866851 348601039 184231657 723681983 240617209 386418715 725313861 53494125 965088876 677154244 104363676 510691378 634958062 566620238 450430070 567954894 765701380 956028399 780701045 683662568 756103162 128870554 828096971 511485229 899033564 430992510 800699428 469953570 44574770 169282728 647677031 265836501 366102679 315050641 762860596 668852176 699249173 273739774 976748205 666508605 256018103 912126128 661450850 360674208 507222883 326602107 943969528 169215560 847529652 928393047 583624439 243555089 340675651 236630837 4914507 676495753 666293714 335549527 578649108 249397817 733971617 531472790 946303594 763298814 154398239 801941058 582025385 798422652 570011536 2978588 38879215 416998163 262393949 131128448 996812699 965245378 166550746 278603578 315590508 667645946 11876204 124074544 559252849 628143062 681138465 832303545 525659625 982725872 730165062 284531517 722580893 325100409 778641557 721133752 81823170 158537134 505310220 827968644 671928592 324756132 143587634 712225386 885913124 929526533 502916736 323658992 777231182 426323032 297920007 94673327 407847524 349367368 880248474 365363202 181215954 556715010 128803752 352743929 797316131 338493825 888855772 873325772 603898078 491227214 102296584 495144773 718988834 340149547 935889296 876881261 256858445 518255241 702651902 913690477 169730845 325853267 490954108 614875597 688135491 231842479 74286933 841169304 589485544 25973919 873659548 647181839 825052292 216569239 489883120 787585506 174541273 196715029 526471816 848089619 532466234 539082174 599444074 657825567 269135542 155408839 212654116 226268623 808885357 510937723 297953077 106159338 312977778 787794073 865105361 465333673 731924350 949823110 749580598 992524753 489864687 457721464 475044503 586945039 190413409 36999547 94847518 429369296 925849116 867129749 663117853 203349818 121471101 829511383 710386594 595050012 538021166 36312151 615994427 497447816 661278313 977694766 106324880 800573329 755552650 251009845 847056043 979715576 70636880 349831054 197360756 786205538 18891562 945555420 808765716 349793746 461876944 30410559 521981794 88279936 62024138 39177123 927648552 817650348 417943237 663118635 904638523 739381789 711745677 94747662 914300769 166157970 651381125 116060668 304844203 336296753 152172532 538291093 925239704 437527905 728000756 703969382 888750634 746715760 886042830 54152546 658118174 664036784 653577983 632637066 589911871 849719170 521857519 488306507 257524001 688793947 848447056 147383201 231037616 974932740 636913837 875974698 48714459 36811208 329986855 484177387 122369515 443880799 819580529 612100913 102289225 655883429 182879404 571550923 348480515 230177889 540810107 666596798 816149067 140266890 84728549 904387317 453542359 992687228 823757696 530103447 255405232 862174876 753173365 279430324 590285649 462391354 777571647 105957703 953364752 78879305 878210715 852201345 339058755 247781137 560735611 344839240 633426092 56544406 279422825 57248506 980827018 186369560 143187756 147368085 330415713 306602659 520660999 179733155 185138570 977693303 953479941 335345574 796430077 961055745 763304155 321248535 798551604 549617014 159501681 756174735 521053585 49791519 231972519 892009424 954734265 244267243 566746640 387567630 556786059 219022875 916914342 74446597 49038227 541742510 40861961 575282773 950249871 58103657 293115430 366100982 204856006 942639676 314903580 232698953 511045784 348842662 50334137 137670359 5407964 389836606 739488133 624418347 605638569 584776026 635876940 349699142 107119013 724729933 562215563 446714738 191249826 615400882 337774877 876878836 577579984 592201333 910254 8502052 202840573 567540021 460117128 53980037 646770604 71137896 257192805 889065172 471040640 798279532 816355786 425406159 809864632 560221230 621604802 318765824 995356489 896908941 925089161 161903387 101565465 11585010 474499991 882063801 803876409 787596426 917359053 995119740 167494902 385451549 201176266 881121123 905469722 593690324 788532045 322033743 385853012 418007928 294187614 430622893 599474088 222171193 115292016 743505980 550781668 587066208 11734566 952519896 10033843 555104908 358728828 910584064 542312969 157736324 990380223 934502860 174221460 899500171 793133436 170732037 761927660 616530139 620798777 34396945 718014734 315928974 60782472 332064110 744153664 775673729 23339566 474673198 568937759 292701681 414126324 622349902 985575369 384053225 172866073 681665590 2069228 438316213 909695769 757165450 581345842 728666824 364853552 720683849 152527955 566170152 802196541 464088578 725112554 680606717 521360790 235968267 36251206 653977258 178148779 204169290 530355297 311415791 264459554 532651889 721996776 864169423 198259713 729205434 912197194 375310105 927523669 522410762 421299466 501874469 316149714 805196495 537323440 905068107 692949891 937417822 522403620 845709377 999672894 905593734 838573842 521032485 742550382 438814788 685078750 668338243 567036961 919497017 106121379 424184399 75662060 278798676 756139386 394982089 265326478 356775013 358251837 452051044 743616038 129715848 430348539 590081544 5796569 231099537 132740295 298528659 534733020 814354532 853526949 613733026 113149104 54627475 191965907 155213546 541456104 9995425 460628544 843673956 736688513 651898343 254337601 35872021 134543212 459857049 488329453 878003104 14374918 511350900 805551492 38708885 531530066 894419611 837370401 71333107 969104997 551068477 38024287 324784006 400481315 147864668 742446671 658498557 25073659 850034575 900893520 400111999 716475836 844698375 643114909 358928771 827704514 806758289 124209791 728158750 326532163 233172754 628871764 787902793 983653165 645040090 534715237 114244995 862232544 747822408 313172456 969261560 914774118 175172059 837213296 338695517 261991475 643821000 861219964 390433890 792801033 369460114 275262671 633383075 744671701 265008996 922362433 93418572 961423163 847757998 449923931 485162410 720561031 528120664 939021177 36397679 268573943 242664082 110998798 989492375 695498600 383174106 227489421 540992692 779455316 671482016 870772710 308033262 431809125 271829901 174305626 701046311 485381629 383520125 217529984 384720106 105442180 32867362 496091317 273513216 229579414 48752470 556499668 36158995 905508135 235797053 801842764 90753173 209327935 24785406 205599884 627781354 743476689 88032772 562404071 992624547 9464533 504678423 902679026 542614782 827142710 802565621 291062769 236545466 961976859 374736500 142497269 40982897 810047806 566577720 414862271 32945683 985741556 819593302 228248145 914107461 920071803 86340360 175072645 172922437 284158456 934372730 541194289 397463329 693273966 771488726 573766701 594299849 406873813 462745089 787946695 747059103 537686563 370446333 47501997 549760904 409301179 798752470 873570283 601606748 801724587 707308156 690464146 267730892 571487082 168262228 31516853 964628239 658653335 716977961 832079621 297591567 432469906 28718488 143567213 531483569 554177618 838146101 747128392 161660070 932895488 938903621 415321593 519162037 769444470 2579677 234203758 735094988 537381699 292411219 926355306 289699660 362690101 326107979 902293009 345321030 187742914 580950565 140689720 137837512 879127419 192867091 806502316 812180951 176051849 502550791 454328071 407663154 374281265 720867080 237888589 849857975 200458542 550049284 508093611 298826513 898083192 668399197 853983597 588940351 32498383 995343120 202633906 368770550 413247713 538669563 321297092 400542988 716984704 112128657 995986741 865391427 68610799 2092722 279029493 251827293 707789459 212383181 370064054 917206092 264790799 260390299 245664444 68967043 35252833 673494178 239463482 573246176 346118031 856623004 36405402 186778580 318283863 991355147 254373519 801007550 265909442 875366332 623148437 679992783 167766331 405084501 628108052 424064152 333000817 956799007 201039848 49410003 748757078 76815279 197730006 373983933 776776706 230748033 811693227 759599808 350392857 734276427 186857072 36334950 118013843 14511272 107298077 599245685 333667133 13293389 836533192 548208213 193280884 442926912 418454868 95691928 303135342 665824297 314995788 619823033 833668933 452690709 755620444 699281292 523879236 190453567 682971310 959421762 297477347 11172728 261761695 856640024 18761260 443830080 744572467 807458171 127478186 256922707 252294816 808130459 104944950 53074756 635436164 635546366 864970882 439248341 961344662 780245609 976845908 151567411 785581524 786713430 729384172 195146441 152884487 114230398 421983385 57302794 846693607 226822926 779198296 204089869 353419118 295141972 226561256 562196854 150649903 286007034 91486605 852919430 239461297 141387323 320839480 152813216 160519444 3204379 834742395 195830609 766316776 988614249 808173078 442178973 291775070 967863596 404834823 94700711 481691323 509087763 542288232 418478426 930266353 496929041 333389158 420510617 244579870 110684035 542362765 865046235 782074164 24995356 315040175 579638611 147990078 685443830 821815926 181099318 946419915 942388980 693747732 797164519 54952564 352448624 324413803 530503422 511022796 770176005 981254385 525305062 579025045 13269397 521140170 42394088 532936841 481057197 614035276 686511607 176354149 521394914 663729863 440128527 662595246 795853094 704799487 296515420 214923010 64014809 567784816 313669694 39369725 783804199 280424163 390133848 969551434 832941070 538128658 881749173 815862324 207641507 445729820 846240119 120612717 183431061 423628267 884297770 989144748 558841576 169045438 620781008 640052259 772122971 702988807 360398243 539220972 50676584 934980747 639998193 269878407 31276945 360342441 688879095 383756000 97302177 846388837 985118872 397044420 762072066 688931600 985907406 800826680 742888741 714356969 953380098 604568736 21881381 63902088 854362388 947698263 204772412 287229308 859896949 826483476 240048322 145878394 902558983 454842963 793543670 835645493 427392191 212506075 446578367 889484303 369819714 406391639 554795425 44551667 776428905 180193043 588693292 406424830 475643659 601599173 16064989 730820881 848014513 777956568 795004957 51994238 503417529 808015299 872053220 759133 687499473 411591551 705067440 458457894 237748887 13415727 38464174 256317977 695241792 297839763 694351225 354366186 154054354 951150794 651823622 820815872 272541484 263051847 765788469 205168732 643294464 952331945 55157661 374970239 588950132 108049050 161273833 799313728 128397412 20914959 301353596 687587661 537835087 76824256 772449970 349041800 158125405 310507386 153811103 417880766 871565125 643418646 157937383 817050813 824836468 168010253 965820687 552461770 902308002 728787187 584575491 699974630 660350175 700258683 299019153 19127602 829655523 725776727 427060741 641848544 902917804 980101304 925588382 421725231 854708451 469568896 103920034 690513897 753543725 41656276 98444576 530662457 553252820 76861577 726256175 957840113 463406966 562939702 754850634 61123868 523925452 505207825 361782368 801687236 419482128 843759431 692987113 217105828 907006183 565047213 274714679 356429838 288418524 768571981 518664111 764090462 307299085 569549385 501828256 929420293 435043824 455313442 596912193 560562111 773748277 905974155 178786631 608455618 503001707 462914339 260726156 832653942 178565613 522114211 757924031 472879906 527706324 891510910 57378972 308497344 22040600 605464533 62142913 144487656 880935538 799828623 941098127 562156015 782244340 462638809 613725618 923025550 546257769 266225738 702615947 695009796 131640628 502289755 701417774 75602231 516638929 218739508 858342833 215909433 921497415 751513040 867752890 784223175 844622073 961391162 618742021 250041229 62663989 840232876 611354011 407751836 837859659 104976056 212732102 837736260 762877139 452207629 809921598 714415557 728576505 502512983 410357045 888699367 373140200 899557473 425077149 360338511 232911104 765380421 251360059 849712208 788289163 255444857 869315486 288345592 838087713 658116640 929677177 558352975 64487839 164383931 869869140 287129560 211685051 780330414 847651819 108427279 539437307 46204621 392588833 872482919 644001947 302438976 413163275 994505007 490769556 964711595 205099160 21086338 537788424 517476827 583190214 97040027 209361715 240392260 986588101 265366133 212807357 840214297 308659839 150585249 857739845 370110510 369587977 588212489 411131641 202527065 926127483 316301507 895446644 152023875 261149243 967526924 31854679 945985224 443881636 604399440 302539376 533982484 445519756 530259811 461349383 62766010 91217581 328749733 312423831 635877393 590254437 152372315 493744582 812109223 701803545 704482279 872262850 556081734 978638724 494874219 106313598 854721383 762703679 736834334 498399989 795562900 79413082 147742147 397311142 486163881 719216895 73906130 881887201 677251792 211884566 277064892 352397268 317628840 99785716 99717168 261440970 326888355 632733624 934460366 702283418 73166062 164810121 873977329 526844346 746427337 704975871 633612715 134708573 420023878 897928202 126382240 157560438 942795245 289134305 908384615 237191269 153302047 978512710 729393422 748343437 259615215 534982738 90414118 853345734 692481089 794992098 341614633 946065225 558077615 247039237 898242201 702012000 766557535 218762337 174960484 508350703 865111129 260071266 680663877 902789231 603381943 575653118 739588165 722807148 459273041 934155356 764170499 184099919 766826734 680964399 3648673 589999743 511801560 232543440 845005672 522095611 69329030 192441227 54776669 698946791 648755847 423670464 871651157 466989043 338774261 130602145 478615725 952853985 314454276 502873062 679210195 735010601 838295154 533881897 288398769 944595254 683524073 182091570 77706435 911001036 377892219 198263124 719191461 162732152 218500315 429326805 884824220 946897959 853334011 905564316 395601398 57806513 574152366 133284683 683815001 924452589 431744779 688159975 638770696 911329447 528231749 583821940 314452670 917698882 891852574 634922815 70007435 70144160 375559636 306443767 781547248 17636652 500860705 863901709 365733162 402618374 800266803 179118664 87892596 338732879 234126153 677688036 96518669 625318864 125344584 778134884 163795377 755969998 129448939 209975441 384104223 841015647 557781041 894417263 830152217 770418210 725355967 9256550 336686582 288835873 571367940 643829084 454497406 84705192 484901362 608526483 83468554 252349445 810156067 255055860 893646152 392379398 153053172 917240664 928695617 620769668 503956305 384730540 802311853 836771706 114324053 843393443 543287161 990836415 887337399 905886440 559377784 442505896 289258358 316644017 57276046 598948655 175678662 411183103 454719058 958543232 319944996 338909851 551431468 987566813 854451743 29084486 461264408 176817751 361259336 733618518 745731523 426920951 388093409 657139372 388434664 897287588 166497754 886178579 343135934 21361436 413872118 405700289 672920299 672560739 521893930 328597177 476233922 742219808 814592358 632527899 14486208 769267497 724016567 923434160 695969542 628622744 105195639 392608044 285535927 31305151 774421308 466183540 386542194 8032815 553639666 651631007 372511079 894462423 290569066 475108241 194014211 981714480 459722483 70692417 730275918 874835476 575284251 179999417 358795931 313153981 193379456 37397298 474685238 141565254 767688943 977610937 491732481 399446995 10412873 950271872 534141616 407800032 222137190 678642591 278845446 513096837 907811534 52866777 695924215 991633775 575209029 591602063 387456296 418495050 483219772 813274947 557142598 289334132 734780242 675574644 61836006 340608959 437139283 660869859 591246689 862837050 551855483 682964201 424574363 758498622 618152636 255007521 819982959 740829622 265124699 484394191 245348654 227773484 649762874 311888768 55687100 706145577 172746335 320270037 517618212 21603687 204570960 953815964 755146449 457435176 759179042 395691021 493523378 518922035 18181523 342001755 719421930 948507667 296570581 19053141 32838202 86499108 308167602 626396372 785468200 942783473 516842086 370654015 845051631 11557189 514398362 959640976 592988165 712086855 913932648 512217578 771334772 717681931 389423966 766554570 328605869 431269696 230341003 464383358 707546205 738644950 753454356 151934133 912964337 7290200 250555125 480631410 401036446 794336990 966762040 660040276 289610251 629064632 692735468 522002031 391985966 883857157 203826697 392027636 980117500 283978786 554795645 719552540 424238016 70825443 942906677 818671593 454195296 17183299 785976271 140871045 359839508 554732317 327571200 34643885 334043147 479142922 485238514 873649090 399787527 917020810 346166119 82614717 842090069 607476319 486131725 919971037 305042610 520193370 989090339 991284063 484151767 257953055 185336409 212141786 107127488 584606541 399727054 329948518 672686758 327728961 792504054 18048994 637306968 900801855 627566913 553084609 544059551 151289493 799004399 234813031 802356296 479618431 279392889 107278263 106488615 864315954 133990926 822582717 700274389 538688103 264312356 138758464 629346647 112399988 107312899 691487223 117294801 864753227 356194644 486645530 750081883 118866637 861101724 53742188 473306744 352635523 336063888 406541453 986454364 210912670 877666156 759208403 826073888 977169410 684528310 925669745 60822595 804196146 657232044 716236417 801709092 598116572 876075803 354606394 643895957 453151973 402601923 720664796 161875805 239666003 550079572 886820787 395825738 522899107 125383643 754105557 25668441 730105180 652183800 409078569 919254853 468119321 443192817 368478041 337300257 576983271 452922941 989015857 56029177 90094074 911058590 73404140 83054683 643763588 184175056 698501358 666326538 582480802 813712452 149545970 711238390 326085110 452627105 465668613 661650433 860536086 374200908 440839744 43277048 123186721 942339070 170543524 899591443 742696212 520390068 796264340 295335724 875123971 303559752 221299978 181877592 95325304 46409554 803053346 589675065 811106919 783001365 78697589 215088968 972665787 900150497 125424583 414535943 338456852 872042025 133133899 29546991 94104294 715602413 59209428 363743527 902960121 365504178 462476527 129757681 243362361 144584471 921656923 899556189 134754336 336564003 868521080 94873429 979171720 571165049 313952697 589324476 66189511 960822132 618645648 15608299 574901024 541094373 608401506 510410374 196710803 223790679 106404402 96246227 760246695 653143327 113555539 511467270 496095797 410380964 987774968 891068304 131468617 704076855 271462953 973260604 852696095 381819123 412687093 869943964 762896068 659855279 418553784 931661895 686015088 32452654 510015379 455499081 655380339 613523259 45338947 680782664 832355126 689105460 282129062 443272605 497100533 906503641 718330522 536663881 308973303 490614142 977620722 970836712 56371180 930672063 973075513 188537823 566924466 370424623 594045729 920783318 864266280 479560468 781816254 362233458 889373196 18423602 528615990 217222824 946714931 794614132 836255934 37633778 67959076 734129291 866129480 508786581 389081677 93833200 395440090 331599138 698348823 14491126 373699402 25657458 899180815 438314418 470164483 541987516 637454404 976192054 61914962 377524630 199443157 808137965 604502917 80515220 124589280 762457647 704284938 341936975 442526962 101391696 974474658 502849397 598895157 779813184 423512107 622579320 586723936 301843897 441829689 781163516 679038285 624883189 359804675 51175270 60654248 472768888 926868837 213750404 921540287 210432085 979845813 697213027 493884983 939676155 623310589 485740602 981772437 397709967 3414755 737837121 384506472 34624783 366273006 874940910 2871531 567702463 374750074 481435718 42905494 34661873 734910252 304077876 995616972 671467133 316094448 760389144 503936016 348728026 574489329 113635822 533989211 993743586 975041889 650286988 264957204 79303928 765842872 306623258 663631311 224344993 601607942 344872556 288550176 934017876 158923958 911649012 458416691 313950718 75545943 303527528 460129543 133634065 660303117 581537117 848197740 571149966 548083489 718929584 41828699 484851728 4178025 387984277 279340536 265103777 608661205 231612268 706193533 748424428 241426270 113582701 322730441 604577483 477833911 238197328 632539821 353151025 520184383 747535823 195430003 71960161 977511918 313473229 845708056 558548047 760664457 65807431 764778327 324180529 24128181 311803343 353931549 121967606 823182987 747837700 904786100 922974956 162838511 988374798 643249899 456748235 195559148 965378659 451022213 413834543 404407430 414971612 823591472 800087684 511245065 463103207 519910247 323926674 497101173 434098068 797439985 394963678 307260764 668084271 44017775 805256405 640848806 435282980 627525403 259087897 860774613 793350133 206760675 411072569 911837986 360390728 504930015 86939017 532392260 58585713 765192239 649165425 473763556 236410025 314540867 898532254 950675594 641011967 318331587 809522784 660525864 571242039 787773246 229255516 955382048 400593390 464618877 106106785 402065588 904564446 137682287 684546155 124254617 976429627 757598093 163961615 26529759 84873199 303242330 289241960 232836759 29023471 627863643 769915046 67624861 335161046 558850249 454953403 148145648 686642101 20756501 116529167 524403421 266000401 875338009 405155573 913199799 654003369 124122007 532095061 587593391 209727742 686178328 574903239 22217028 91765516 880656240 230216863 816560897 168400815 866310155 180577042 620167715 308887727 832056555 672075022 600586502 302496628 736920354 542052004 874578989 495056979 437553990 962650838 852582451 127187971 605478663 542228545 766330028 786965203 198799477 972192361 850486427 837173471 444805555 467411547 284294704 242393944 506354340 468649149 400698377 340382163 882097552 253354600 779799657 892018626 480833612 326799936 383571550 989849293 119492690 293116007 546778592 646180838 855408211 649142572 619268903 671156968 779490068 686663724 627453035 146952664 854282582 959078998 621680555 888161163 41330356 900919064 199736152 205335060 727914555 363699836 873898026 883912618 197768650 516972757 693459381 899106330 645239007 863786985 506504799 245382562 510125679 951125247 734584991 864329596 388147138 251491289 635189038 798986836 834365037 854553572 362839440 747149362 982301683 206555260 313144632 618461569 721860835 42897621 650050348 990997943 490521626 603612245 376400463 499475702 508853002 167341616 245394307 598682305 670629005 249917484 918876069 457366047 211977815 806429427 300805398 565663145 991102419 106579787 143357282 348845540 702004416 634511073 507302639 205403538 738093689 683494725 113317752 872584769 145808013 102875120 412316927 975491891 510691384 100248854 920684974 85736631 297095618 382000715 187848815 276391275 739185866 252141213 148584634 837074395 625438220 45417863 836359444 806335190 994843899 551795178 744157347 465231957 198027666 550822331 392354804 608491255 39341324 286311515 911941280 38617856 144869207 676929996 476223075 630909940 962706899 467613021 852910407 864713260 712503797 594246805 294813152 750163006 715648859 443656779 227558026 689004642 521855565 328441598 748301943 737790764 962088615 369565926 261715912 695890520 999109894 712449457 410348694 335895156 712445181 862118859 192783332 594668410 520083443 884557251 151041421 584504465 83702727 36067857 226070176 789642319 753598582 455779104 726910756 764351844 209526048 287918611 29402517 990382222 900626146 188947024 470290378 43073133 547097331 268470933 663189338 31279837 28601208 289579114 2098137 238803792 663570743 852032163 583697178 509977320 298489887 413846652 631553303 935373616 415881988 835376079 294166207 697782359 912931452 312423617 37476977 792232137 388857682 545511334 796282074 435978496 8088225 635229677 223202646 299387409 324865030 847749492 542529302 417459712 647767578 59235765 597650547 373778483 718019937 952232413 897788219 750843840 387306187 469191854 777641265 958085163 231464278 911546074 628257502 671667004 680699966 169802702 938637394 106002358 33638249 442716379 722799094 409344958 45250652 755515784 103820591 391551180 450968900 886893519 555145438 335007310 838452292 677719821 912334417 851396540 634218943 775730560 490938752 107413176 580154890 785370445 613960474 95198854 394812900 538567957 932303611 229553332 293046340 646517112 751480227 204875273 641663307 563895281 734988787 356145459 653576397 416428131 975825865 686474022 689316842 427391263 967220077 536550998 821165995 663756411 701947894 825037109 773977601 702714769 832506805 986561703 228025307 230259862 789869480 392677734 554617468 668483227 4512408 850030742 450549187 628191516 569771217 978464155 379795385 913704763 157433519 275403261 228081495 611351611 347238156 320282904 575914484 828638132 202960357 936333594 186631362 511727753 681837795 440337532 761433463 807443228 116716221 255156988 685057999 272222778 562336039 423476324 784714111 193001915 196551287 934821499 46034277 147550326 425079122 500670498 476247891 408670919 996785501 878498819 142099900 254212357 104615534 551615858 440913438 348656590 878813505 126482511 650922049 679784235 56509970 455685053 132801700 559901862 856816722 498452186 347131263 130810031 935394661 392652869 344906191 672933749 387703855 107987788 144721248 10900390 509876871 402441239 347022231 973045666 743231512 108722096 666757808 26532326 180157468 959724963 668737807 793322463 157311970 876800636 492477342 449284342 203347537 534254516 791825515 147494054 500243494 3301145 913838091 85436373 735133633 770861748 365129825 458350849 622202971 861037683 124635338 373969995 243969729 230296203 555215894 827778752 907108171 389935440 588165138 525790194 918078413 388178713 885379673 899788870 168059049 979572024 793726745 206662171 277544955 872147835 183857868 515934726 338989300 364478743 173755622 175280103 409857022 544905021 696711005 767365925 260079110 932524793 561299978 498116049 77291410 309327342 338819718 672802317 241100495 913015089 876039004 923516412 922477513 488787985 296984746 380829990 168835698 802452951 186131877 969665786 335395726 665821800 952753414 94678317 50572688 272585973 573981800 55352849 774387531 702224105 361378149 466991931 246562475 656568653 718284441 273136313 100849291 706942589 909049497 889467684 765335305 91426792 155686408 572430169 188283346 177633864 918961447 199029048 543085269 14678084 810768013 518715425 176209666 257266451 309593620 409115181 192126218 286762408 957076864 259698421 402311054 985743985 778965719 893533413 904999229 487940800 507082236 548975329 349747353 950986997 192083218 687198752 831573524 557504791 816718145 667539861 120407068 858593041 632650643 79263434 172457950 472438145 233135703 456032449 286675421 705585796 961640397 166765585 771265193 258849453 432809271 109471072 737196853 633867532 738087942 593034035 52704273 108544243 236539678 389546038 902474320 526703587 501068132 993507955 519261209 372543001 740115690 477122736 279914013 306883103 452408723 813328279 168570638 969647179 388613904 262924683 54534577 820822782 190018960 506363309 875561050 979837430 474145786 231646022 165162727 76300932 904732019 61443872 480316393 665915642 213119958 372230472 254927220 312510894 176837836 792911184 381455290 160361936 997345240 221946579 735171858 572651705 9523140 644343200 845163314 156394315 635640010 28999682 72966529 694285762 268722051 159323888 297107711 176652623 595682664 818893669 718840839 235029346 596874493 936745469 402142061 190290719 101881845 590760785 245767334 926487523 931176468 519168030 921099470 115833896 49509459 840614606 384781515 982690118 762092033 647277861 966575653 619380756 251901359 666855655 330156788 931646615 46572620 732087484 148986183 660119655 745518702 765374328 46962441 931530968 714021681 286124648 945622773 997066137 811762734 918228301 52685134 5675519 623977430 515356152 233036470 858644820 940549620 321707645 734102090 713183716 291921028 998638302 751588627 584000405 142115118 296090771 25264703 877470816 588057561 253769266 679816862 10186154 127833268 782653610 814962938 509370009 922641683 752976391 562610589 687563596 949515953 916560722 49330302 998410813 646277685 828277547 694333775 522439890 853816072 465152239 165017364 971173764 350807893 882056654 117431652 962175270 728442936 806517914 48715143 511583603 348862890 292166683 968480784 767893094 50551271 699468245 894009423 645608369 741498612 214171731 712731964 249764030 328999814 834961317 612534902 257077239 246038283 345140636 142222018 378787821 144738679 565839499 388917238 542868905 947046354 736416568 781076235 272429573 307756065 184880300 883372401 682039809 2395429 617854660 412587379 285930119 775441818 599851494 328032361 855250710 922120872 424649013 450954151 984821763 500906860 953488182 151491190 32284488 595104755 413352901 569672084 732760247 399388452 334030498 891700540 788935084 379716038 408474844 27309384 591526923 629012923 121500825 970828951 302782898 285188472 672731242 39917742 390708514 598160017 233235691 614377974 208219533 657396467 439330785 376654126 47092648 642512845 457085553 309997946 725867460 180333082 889443365 458415363 310333779 682018159 894211499 313726932 470521482 556161794 309258861 399872100 31739542 952985538 340510581 746755036 556269076 644350646 626702389 888676563 542342158 559563422 71112428 577569523 244986564 869381390 73239145 995876859 503429618 965518446 409174558 246630543 736599555 752547697 15020686 90266774 288565588 124739541 132077637 708928461 652854482 741146032 962627885 15333317 666639789 182785865 593700647 613870038 194715050 20611318 222320466 165133661 743125111 928079492 824268659 9386532 960276505 441357260 57607068 292876552 746027321 627335528 221650096 664206407 756386608 271638659 728381137 917055337 516484783 831329749 95769657 653781072 213938835 136438936 314248038 976970974 163720160 491622978 326933811 40269437 457461374 383419961 299186135 885524510 346246604 484720567 492783444 510907115 247123921 882746378 359599080 437392301 982766650 574452682 385170659 18475356 210502239 60927168 711486077 177318724 109371078 738289565 850829389 886987931 315759917 636649134 584484294 478608666 831021088 996487526 818351960 922145181 399520519 191440623 126066922 960272254 311288043 233749545 848653490 438924711 537701556 439274598 466538071 574367839 690086674 596888113 147521593 255235852 865290628 273813821 529237857 400869293 493557104 775292619 541175748 215219595 540501019 977095552 382934162 359369373 78129263 762080778 895409026 269197848 910843214 896371695 520701953 451243077 51405212 264710683 763596371 930385571 277035807 189046185 355827774 313512899 246252451 278196647 749928859 46096480 766086033 648618902 677002783 615112738 555586411 519679325 843855513 432855924 839491478 33503190 672233082 783384123 827081586 341104771 250118320 947395934 969201281 537538016 847328824 823841215 705425373 747315323 632498389 432739625 55273177 958261616 719865503 17640886 471589388 119107941 738342083 612383825 693808377 974981228 54630462 815176172 296504217 704425788 5014798 930644073 123473344 55425240 640097948 755582503 656537578 900363057 154217795 618165329 657242796 674770403 587366596 508718916 703782679 444523889 656743615 472557724 26575242 317681293 817189516 292719337 182392555 185506541 147534953 88237849 615841799 92438829 156732728 996915495 929264604 719541709 418196266 469593908 215715307 811339708 768270675 121299289 604684760 130788277 639628503 69884223 702991415 14116018 125128867 719528116 379284886 984870408 971505344 32269548 480016466 386731836 34855490 896150018 151202247 922025161 208566161 432234650 970640293 741801609 33516086 476239775 824496735 714670125 368489006 419668644 765283192 846281269 360899798 289948388 637904626 326522280 955914434 354824136 5708440 810937518 397706216 528306139 852237406 261614931 752063016 558770438 965399215 951700502 954575674 609446930 66171288 58678547 318902970 895634858 775990969 211879479 561462015 888566488 856666567 433747961 435629105 984472051 422739562 477621521 510771949 375878082 901210110 263925104 763298479 734365032 308372242 974173931 204875556 507248276 769184457 214097611 592539611 545089642 156720681 456023513 279186202 114515811 958511407 616352314 962429003 538283235 131241385 87372714 507450504 579077757 526243567 169059850 778936425 45904349 310806727 250442361 946851051 327909758 649946736 480304728 308249159 566046464 103147317 919388911 279075856 922760977 524484693 798347362 56720030 448774343 848306528 337709134 553547878 438635681 530576664 874026766 605377189 864237106 789058143 272743396 242217836 926256874 422496920 919981382 46517704 745983784 166751065 284178224 508143138 690539062 901670174 964891427 883806302 488994107 60517309 233665472 990852593 175656832 772699989 457725651 157102159 67081965 75891966 708292226 380539303 270811845 876496978 886829809 16020932 211317553 669743805 794236040 249674940 149252208 390851796 563474677 338866951 932565401 316597967 948715298 215060084 328218297 199884499 73179812 595272524 524818786 978200869 864722104 950770165 593433847 296184343 649922894 585458417 756021413 593286776 587867122 238183901 74293216 186657735 667213179 69554636 536395699 380693921 179555394 837257531 691220682 175101888 502903005 422326671 854752491 257855284 52184859 816407944 451152105 181198627 99845572 21404472 932075279 77711522 4514564 131775698 218666717 386165351 716087181 881446955 871105772 462737799 829641118 603306419 671132687 219045845 732297259 182589431 493609314 652767849 164929303 729552952 774403348 893929747 739919247 192690242 189706380 962672964 148291399 508812739 991400516 751222264 89972058 176939937 558782051 911636099 92162180 795387893 193010640 951341948 146261892 444103088 768646261 773258349 995942574 530723178 428177115 347505597 573567849 339929998 28649770 790027160 935974672 220461864 953874027 408982706 394400405 944748335 814347693 529408350 947715267 180269446 265937988 25883319 832879508 129938285 218123632 307755796 525902877 156899003 68594900 219214487 234088990 292841292 418400438 120536011 160597298 846106211 256221760 892225346 747386521 117024965 619506883 797765995 868857625 902341499 522445836 125189838 238300312 977277428 522974191 147390081 357487292 361808891 93160434 55568981 744545809 243221827 272497381 805544172 465949899 232225584 294718839 835140220 699711637 490158749 348272464 754544478 537137136 718425433 302884413 904073774 51949733 640866405 639827647 75014218 999440086 75456824 937304028 806583851 620037757 685449901 757610293 885884562 303202343 254581384 147332364 274170202 131188437 319365570 8377642 229100010 145459337 60687654 178899670 573235514 421610351 907941541 714764070 916321130 434878794 375776411 198812380 934976636 699282366 361964460 729311053 671990183 762497152 762183811 263725486 175226565 846419435 570593921 768107016 180865326 464993489 99910303 974540215 963924299 617823199 722696136 382548938 87296769 945347215 174716942 925579286 358005371 747236391 419869169 281366034 709111924 621812796 78437954 207043852 451390573 183966899 113642831 880828448 614020087 681871599 966247240 759383568 20097259 144494346 310600278 899851695 497843686 535846774 901152113 331950220 945210001 24154252 919428217 241610315 974975900 417847639 527194213 918336279 5722294 179912947 505227165 943675395 844716869 599975971 721317011 948135325 272506040 422114870 515090708 759327695 940496324 203534213 167117610 753542564 827069721 11942143 417727144 304744025 69983794 9317770 528002924 103762303 13065296 826577239 654023730 703975786 726251371 516560135 967813368 842044370 280336188 899940140 708795251 281528532 600270497 640335135 224370806 71409659 869566495 620790065 736201187 602813105 475771028 797442146 3241373 432325285 763916959 748871217 714198255 68565249 741988182 85918661 162720316 634986662 688788337 182478820 106248290 718655200 431974442 977108182 686705990 943729754 897527556 823524797 751484985 529894549 927994582 76848356 833146692 750527271 614184432 535262479 944627339 532751238 463320587 992456173 635496111 647793704 551946959 262771737 437575850 714308393 874492642 105993068 297266545 900406414 562503765 599135283 339413280 42935337 283115794 563395572 868102555 981308292 697847844 267217110 969981129 233557002 518207271 908525356 349888834 511456538 244222161 935473933 465926416 340945087 176735071 249387289 315124034 481577462 385775663 590339532 82799842 936442402 131314548 659402437 154254606 589183938 149955321 870886630 26118550 208666761 842436723 83527959 512965547 229573175 697300118 282529229 331189400 28389520 166691225 889184332 221194045 293347433 307453258 304364671 614769931 971566992 498747391 995232825 894273336 913393501 351749903 833112022 902512820 70896937 316396321 534986047 322185555 296130837 574578204 633346266 384321580 134242927 503258709 706344797 433774147 3723089 235712760 958698556 385353060 33175800 124370523 269722926 614213616 95990049 70066932 960165707 585512724 10449757 870169385 761127442 301445673 217954755 324305745 143145471 337918058 513458223 845305427 546592493 494491441 713905086 738281351 917209224 465741232 930558927 893884160 289906030 793155585 877706578 429958890 288599031 7143740 932001959 492993583 656307032 531809493 365722465 143481032 833966951 538547130 460523196 113478993 744110689 268985257 417549868 443351655 566887263 459602895 23381525 400803834 822429185 750257732 652481460 788068563 849996135 666550472 88392573 299076177 582056984 453927527 291099894 442929783 330630039 557048697 328310814 409680954 188859796 921792758 278247725 853348835 779374179 79434855 799323477 875755672 954407254 370819544 341541129 947800972 227717160 152909694 229634280 457908319 420227455 262587340 404961427 616252169 818717934 474867902 469504042 49375697 803447484 44998184 448851248 812899180 641370745 96038644 289910210 839464737 212381536 586420129 33814740 911569351 352487150 444084434 713068389 550248905 434973846 910799760 151982324 383448682 814324862 77703474 45514860 492594690 236165189 878026519 119275661 26375643 18825564 656230247 20117654 193483501 356945984 219882069 992803563 586101782 206201824 287260205 594035382 883813677 17746042 189398443 766469340 605421269 401923347 566651148 534522335 700749709 768013197 876763276 22670159 983019414 961497744 12638880 111681266 404594420 661948467 86166208 459086623 699891350 277140340 834389663 75366156 158212321 4743484 349979502 331492801 986255587 165121405 538854388 148154193 197993151 213350167 131306144 220535344 731923451 672644015 793629412 484569219 316398851 719800386 687707535 416555312 990989858 417192872 855163093 702166801 723395427 325962951 185422422 221239110 583858468 20302294 238418698 971792020 850743086 420319288 885780253 77557955 361972078 750479156 9764571 341044638 125832878 885991353 592134434 451407021 839477619 663738967 65708519 133051011 105592571 486874450 606476154 282341359 431259860 525986247 161682742 413329644 725210240 210743582 698702458 885146185 343096763 497596170 20780695 145757776 310790770 325453842 32430817 651494213 123888630 575462596 340489383 662036225 158702697 864299412 683214682 733782348 555631122 328281646 208541446 864122292 231850979 834063096 492670485 917009360 706740327 733179188 279732861 254621881 565703554 356194445 356934192 577356979 234421753 117015394 346423259 623759119 643792894 240247809 817766176 610310575 597600020 346759725 143425576 944258699 494538226 850735861 130389711 473447795 887239751 209826977 760385588 392096294 42672368 977743774 180267873 943338060 205851064 552997433 71454108 542100925 680595420 129557321 2926934 544279365 32848518 356162607 941877971 112030328 354432789 50823135 113650590 303089559 282121099 264538127 548918661 145606534 721531616 647341376 314491103 930802608 438746896 658619525 985516030 665220339 441262229 64611124 849919282 910314799 183192151 706326966 521917880 26833318 358255598 464792939 144517223 545340511 203937137 261222416 134177680 649033109 439412761 289566254 470086809 394209769 283086626 741252469 396592309 42864353 406985152 349559880 831452669 286555739 836506095 487162037 199624855 266739027 888247422 831421172 9923583 436521445 96474910 43568824 40884154 996135256 849432571 997229285 65420461 766082535 663300360 634521400 794118064 617383591 869311532 184692798 192758770 857054543 390726837 734490117 637910685 897652680 857639175 747177477 998616644 631527612 360021279 228830988 584314884 370691117 330685271 675421017 350072897 347833796 291780729 733655829 716028485 26860144 92546648 900227282 903075097 458749672 312635178 733143790 233678017 395349171 787937249 60694921 466921006 884176197 299324689 225166239 112972223 1109334 690229395 941824944 978057880 560428007 506915892 569810479 594570951 580056649 843298578 502699746 716433670 490839933 553012161 635186947 318524431 103122343 663131547 687892054 241632362 235204012 228761178 913663808 581152056 635013424 364429533 154830817 74418952 459569082 369443011 734266960 747032987 801943949 179965174 144149307 182779334 524489166 766910716 813369400 676800714 182081170 828153047 321827894 288784885 205804348 830516897 168989990 278650010 975877150 42717108 194548061 365757433 666049033 51102877 823084359 469898907 325777897 499326623 562871462 815049354 903536592 419516108 541078815 229420325 602013724 98094401 799306142 413379419 628219198 335369260 87531682 624714955 116859883 879339502 536774584 258955862 387653178 683794377 762706056 350934838 74034899 507679882 294177418 898011861 257778262 200254746 988642019 996689205 188496804 642947267 519336673 893808758 848637224 168472846 481399598 304578960 943359562 913736216 761746888 713392211 186869977 251500349 732164836 367689150 660870940 164200044 361114968 274856501 848662166 12022042 858950530 390708837 72622082 750682094 832845003 439111356 990677526 868528029 649235281 358759017 464957946 280870619 114847644 612320340 433175188 850282369 665001132 330832300 471796985 95757742 69312912 758720617 951970120 440823905 589276618 714138791 523314200 731595142 471979874 1501235 183584921 906139314 962013058 525957478 717956528 148397707 887022955 816318246 405508257 339922027 657920140 393625293 771409341 701943589 465715658 311548537 55003382 382793285 214020686 211090870 784039036 91102481 688448904 859158761 729088408 625938083 304004544 939364129 583965143 317621937 523678292 217377649 570568896 456545101 959946791 591479103 570266859 550462033 926870420 499280757 368908919 376200924 376108714 154599712 362046744 297855994 29461195 739106118 83638921 190781139 857052849 886386281 1061850 406715099 300306289 431233424 172772268 255937475 413392314 638725275 735810724 141878199 641739561 722806058 821792174 806809881 338293735 842343642 449719959 165883146 172188427 449212782 607198308 83026683 101913433 838062887 101232898 315568803 73582273 942573489 655613974 802773688 405620688 41582847 463981796 516293128 189269251 724832552 233552071 767918613 585150345 29051658 111677848 409962042 670236664 471620205 31687879 963667098 258506813 908859258 27318927 669922147 181383235 278973041 598845460 192168121 111883462 4217981 179386705 886398967 241725902 717877341 585463551 157162654 651570284 595242553 260672729 565287986 874067366 626507723 610943196 228477647 869533938 286942081 735131185 304849734 227007744 314976718 361692531 929299067 371288593 561077547 539771115 655365980 91093495 498514771 30101764 199866883 794643846 855857368 3166028 328532393 905635322 565606606 703651533 103511521 374474939 843100542 627420920 204458345 962004178 40599586 146208445 126921393 8422360 590170496 555315281 494025149 279776437 179793134 230201352 484466621 254305678 302323727 374800992 981877505 817221211 977826278 92232750 529446702 16650 234654033 60242674 573459389 984601142 662461304 203596851 573873877 63804234 672386331 152891 562196458 468851126 342070355 159467128 9341343 961057023 904247630 321900735 968286601 799839847 493588694 372444903 498985392 689229202 436586590 419974670 534710222 232599407 693591808 107905900 457011147 790166636 651494142 45376101 649034513 567465614 844804797 488807253 341699076 300532080 690765015 831172296 146845267 486198165 127471843 747285277 900692775 934198371 756364297 640805462 594146469 161497917 72099364 375353721 553589376 982721417 872913602 743754799 451352935 994092869 878519323 914195316 204096990 951338748 715962974 15787378 962979722 836492944 56388648 467917539 576010515 608249635 733204603 715542506 142206786 466846777 248146254 580969227 922905554 648005212 278243875 989581885 370704321 712940570 690039268 244737022 891955402 778365728 508879381 689764703 903259441 312640581 486419566 475095106 56452962 374608724 740540644 889284500 896330917 804098874 857429448 696475960 607141305 274907219 981033777 594748123 791046930 37545244 383862590 176311165 373864427 94971870 443278952 23832031 921699145 186227989 735828552 157802627 208761770 571896382 326985083 49467611 716880379 730896937 585295912 525304418 247280227 518011039 356493528 182531008 333327074 298246679 183092834 765342017 958413673 48424784 493153703 680571838 985485643 567232453 77710766 223615727 197212875 364487709 222964854 524191622 516120172 933206736 179735856 388142350 838497120 18234275 589996552 753111136 406414104 425463316 800961448 186581265 33106905 149899030 635984690 397339503 210439726 626963661 384417177 241156902 451322780 492750226 659294382 299147140 289294551 475569917 64448431 101235781 800675513 517089687 491705498 366854748 890570380 447160841 484339028 655555545 928076127 856287849 517203624 212447452 596869217 979684273 579816705 915265362 739914806 424066556 112394945 777837785 822840214 884468807 93916940 97058159 387713768 818930815 267562021 508724769 578710150 776812471 50594183 634491510 772910140 593080362 318314269 204431354 715606273 940874401 797345812 789074244 478968915 270742480 256839442 525944992 274605105 634407875 443340370 287552029 116834873 985447767 2469103 860899900 780871443 420380405 862988402 102283821 205208212 537566222 141418659 369420310 712252033 346457757 222729929 935447007 851412404 886263094 435667737 404170907 962312243 286203726 776248811 755007171 789819692 984956587 597873219 475781087 630955528 897274572 567216429 860451159 718852689 137907159 780860179 86374149 955365613 148963068 507604394 606712537 88093161 207480088 942006847 236298519 667641192 501327572 276903122 37793786 162744772 96197423 365746550 590626652 699328560 985505730 703771716 180011372 305523281 684117290 729462256 708672009 976535350 382079080 598665180 18531723 402705891 603907678 6270141 332104940 703848869 121999105 9850960 725390657 665158780 424544639 810763190 298840826 397592376 612573965 509324264 396128135 620141672 87742687 233630298 700224285 842782167 652943843 688933942 503440178 592340293 574132706 580536106 676176948 938070464 744566849 672613097 176117790 645108507 773381481 977363618 670685142 538332774 990245209 62497678 8690253 170752999 784992782 545783747 123585885 842592955 841578325 371931145 808953590 651439757 498166842 471862894 511617734 585325706 251555130 33847709 758309714 475010215 336660243 929482466 296479114 82855949 890921266 974929218 177948871 722316382 387564516 817995725 11040401 25436990 971861513 431559712 934305485 280625402 468567275 858027870 690329314 783574828 249963484 138915015 320824829 584780852 983623965 590374642 112120408 693538961 978619782 793136638 563310315 251152030 987955199 756292050 277905357 399867168 805159125 958250292 268267240 900515128 739069750 451289921 471994570 329660317 163853734 619217382 875106758 690280599 792461937 273634070 410812042 385569616 534226027 587452852 904262265 745841480 893029296 532084105 376478251 477778692 917149279 57922049 3915195 464200783 386277366 219729692 310371624 241994347 836580067 981011904 713239194 97419474 155779622 256168706 964813808 540079441 138110762 686319334 117026194 323680200 237182582 143488333 804090658 106546445 684481190 247555055 791365215 924290959 672527689 988194505 372391108 876840459 807161396 408359275 276641322 54651890 972395611 88857549 772380746 926666734 55507192 783671015 738127871 50811973 512671320 466233602 350351442 339164814 867995398 437801002 274081375 985175660 75650170 547420064 790714701 260383006 936134078 829714228 261558539 735824706 154003571 118437248 306515890 580248817 448150340 907497488 116134486 846141680 964229669 55658624 557130041 369467286 152204436 42881120 167020757 461723994 628725231 27770796 220367718 798657347 875908318 859318435 784391051 418205604 309787903 304489684 612846226 305385636 679823363 216523069 770077294 213881285 371525623 201901878 628219326 913474450 978987071 281653918 959909026 121550882 772284562 123599513 227270045 754411914 202924411 863891771 627585677 459656506 976851307 32508388 182582188 819047575 366204399 965874640 638383070 995429664 583246439 574635685 996105492 330152729 944556017 34192277 198313728 407128206 727771486 80357453 365333542 273510790 64996381 716198665 635754020 417938089 621027100 494784161 749384103 858261419 34702952 698201146 151339966 184814247 597447968 968727108 609996888 383488656 512383779 587200090 465016715 642358192 303643097 6250638 523185855 720798312 443049560 593204274 650850688 762505610 702430741 104013485 504476850 130541289 448841260 318964669 834422228 222191304 842266970 513362916 616329246 367787712 886251937 678154603 178407681 707683789 589459469 216070418 638763819 140537595 382449476 380072371 121270560 146331579 66287904 759330167 398290413 919264318 329257853 230716242 333373149 140671727 756313991 773921579 56520369 704664399 470380440 857386017 83778371 145938892 127801171 462227789 699479382 949976357 450803350 97909945 952834156 690189465 835961705 770845840 209781938 282136648 448600187 244751079 80007377 394244968 309201806 368020087 978712210 624536937 785603297 507045981 292108986 367204182 173670761 747988797 300441656 391504678 424466677 192812265 349524373 247808954 601967983 631850789 502976287 990993253 468012747 581646593 976926971 929257775 470401275 888078072 357609831 916774819 201675693 375735356 501657964 340710706 556146084 161030431 749728980 240799721 731806013 743757769 947011454 140317521 343475766 828737090 306435878 715222134 431307749 309333153 275700423 898910443 300317835 6865931 632526390 147258501 199956516 925231750 826766483 49035760 447398204 629808491 633860526 982329144 176323700 316189777 620028240 840367931 680744293 886566782 3021376 716813471 128902956 855419166 347863936 813808071 334679929 935023602 541877226 949806875 547833254 294060274 595375599 707448462 709409099 226485011 798680393 253806415 471330805 296626322 665721695 406038889 725726094 694224921 586854996 73066410 464670085 586492968 265033102 516249783 380994160 658549347 737546040 10318065 795968392 346845501 584488597 333038314 531163227 909393134 519610043 601113537 204170907 700857368 268790271 910720827 431051996 792594483 989811077 152311568 954999763 737634612 334954482 365900665 858453548 381401866 580392201 470988099 185600506 321711686 732763521 826629419 971669157 516534240 917059273 650405797 950110544 59146756 543292421 436742311 20152500 1492794 171594929 330771903 322362274 407485521 839209935 530827721 159868393 773229396 77890494 459546988 857445920 895024482 610775445 20004896 140042551 529325294 593323390 583546094 204571614 218314444 677283029 920704980 140096724 660299158 896782280 19314047 297676166 341031543 77692418 349733615 245285566 838571054 431386807 728652381 353148954 530051796 389856376 250331465 595326384 946080287 894629185 108138951 690986557 600337298 261958050 676582664 867714195 141844573 681909161 622966630 969398431 427391766 395961752 662750458 615638974 871268988 678395330 209738144 882557057 631498503 431943481 697224309 833078926 53079502 126900809 21430839 41074782 445344985 793103168 74825660 82216328 555392050 951238762 205494987 983070260 537573504 693717866 691161952 207573533 257315459 621067316 397194857 234830917 504450290 712139220 923739073 924344637 831953417 510229274 169615395 459859619 151514782 947603169 895476281 780353246 961492790 790586184 348506247 361814074 522118148 570353235 371060654 907671882 870333684 219601668 19439546 630381373 758025314 968459775 433914034 701556174 25673511 296637119 224960672 531543560 684513758 886161176 43869181 612835705 690184790 38655282 105235534 301239502 438921815 220250322 13329548 621366839 45377799 761912357 111100060 490858137 589872478 854699517 236314861 578018348 21338022 43889108 209806592 335289039 82011425 784463145 256325760 284327447 848447600 761536111 280077219 204829336 279311307 238143166 569892247 418511415 874587024 968955176 950420504 641947175 427723074 756451063 203456528 5814523 240132418 213948464 902402989 964627119 671379444 171392554 118290311 557562988 930053384 890697481 244782904 333786072 878494285 491210515 230143022 562571447 182959118 620206007 718028649 124421874 737966354 299797626 88765760 222727445 497200312 549188278 251730057 381144821 239492113 6643261 51740822 432291970 232518416 412760149 664554006 551313476 408480203 695293601 199774212 273393305 977235668 219343813 224185984 132387229 282770654 28905982 557792829 98068821 136387809 280477568 863855166 873771015 326685144 277231859 328401411 339870426 676949102 464182465 673091080 113710000 779834541 826741794 784948594 606398344 924601477 119614137 662114749 89338181 515844200 238654706 201568477 505523880 358825476 971242594 306719620 44666056 15323288 729862415 238578077 916331902 621700267 563919034 775789004 651494094 938587972 473563189 276084999 109096700 371851998 57612370 545771758 267977617 264984306 624903742 609005312 187654139 578204498 557876921 553349120 641265314 928121290 196149514 271893153 466905910 192920042 496960107 163156874 325105974 564965621 7985860 2223479 892266485 876600723 919244842 734454909 465251048 384734502 698179197 830534715 374228861 672196702 962962975 504667989 854389709 148417739 235243042 901020846 406611354 459946878 390849367 478864553 623717571 730301873 812024097 509401941 580150078 842297816 968664202 130148710 977348611 57657582 372533109 878227868 810013352 799902457 146606352 247443823 770416529 632180723 19990921 868364714 602912922 819505160 9035178 907815504 213395556 567157588 660869961 160399724 58199063 148654535 985411636 767685415 1680528 349971288 468112771 838465925 949755759 741487441 787972618 24706427 865391345 360781243 398684965 909313509 377684274 943814974 60191225 94151233 330203244 883024585 628021441 651120968 792157200 512398249 1339647 816316947 397726947 889663575 457648167 923513946 251764651 326029648 566491962 970469906 415798626 818828349 979590650 217890382 934377871 720792465 599964448 699975991 256651457 514851560 219574493 880336095 574904107 954506684 238849411 237827460 59052254 252939100 777922797 966871469 47240099 697097659 198539325 478512428 190711867 49211593 667428523 939629463 372124611 304774720 858843480 305825613 555809852 462719174 141609366 836438798 236034377 165274700 756179744 298243658 697648163 747567469 944133509 628552116 74743589 814740375 33430188 334570481 311840989 25673758 328276610 705524268 411914202 389511422 441413558 360541703 770237580 786921342 542910146 417468411 29118635 523423076 256057774 414867706 81590 219356898 774288151 11395509 358170259 224483353 781336811 317995107 400002621 288919220 101549629 43037685 56151291 262320746 868022557 833747740 413146144 526518016 486299590 711006533 828022409 552016880 893989917 283489328 825684538 486789350 485623371 547878959 181478910 482340392 809859205 433661758 679066969 343999927 659503767 442111799 451658918 168566844 122904424 934611817 833844727 374658635 979239134 119197164 523347313 830231357 618948703 836090046 782390336 766950036 61244750 967804021 508607943 853257644 707141886 857703002 103774199 376279031 237454280 319820347 983888299 879972875 828700017 815835370 44039734 242011390 112893047 492004159 496191042 44839551 255664015 12920053 938512875 352059193 799988237 228991040 678031108 709825487 692776737 265782807 48852786 981717459 390909936 28260618 358305412 658979864 252074472 888017000 109268317 916543110 402123789 775895066 888142491 702204597 988080443 274702339 413962087 560809843 388921405 584772176 247018142 601256360 429135415 32348052 820131997 388042045 24977005 618967809 590992602 976893801 98809748 982744823 92369807 591901137 508446349 247066903 991606825 714123778 642875956 1329507 368707811 644421614 740149103 145409185 176557703 654247192 307529290 660011842 548138970 300996173 526326078 658126361 423226833 165528691 965305792 939909975 311118141 123226113 21464969 54554737 111644028 797812371 618410239 741961215 199520780 733193283 755706319 204102664 254667142 250811731 321560558 163701203 121735947 1307299 735254730 463493048 861114329 172217990 188329074 685964581 345115843 22221587 31519364 166486306 678836543 572714029 893502592 726277412 412092162 868482743 42028587 951775374 668949107 339970299 698096919 580010739 888955303 249267188 543636546 967056319 680299425 100671962 903910510 797003580 788588513 29367885 257118878 792366750 346263559 389464326 899042116 209938769 643499531 801140843 606637944 775565766 466547746 81390732 292467818 300721190 118190709 675546360 221069487 956160218 880208258 979687613 247095704 966777913 226497285 900550277 56479429 418131515 907687077 328174469 909998129 25227088 244810309 635400429 10169857 541270220 298201518 537332518 899417124 730460352 478848909 810794796 666147049 141449950 703399577 332233262 865649660 209217873 430520814 202690766 944047013 727930439 563507782 338062348 872115015 789990003 517849621 971610426 859387157 745679345 115211873 163802864 157972621 904017815 121201504 283833573 675544226 808426681 384245602 731828712 154560199 391902296 957422179 798521537 452772987 219551918 379194502 918594427 873868162 53516396 21469150 820991593 953922119 357182547 777821851 960925106 773494283 513304883 685000884 900199945 146573523 239356326 517521657 488491009 388377416 542418198 856492658 989654434 156459814 564638122 358959811 390570829 463882283 482619128 979348844 724536180 426262421 203350960 441961923 968542414 994249178 732477206 283337409 260138216 429869877 140175872 721954463 432317907 18705553 673262229 559534158 276532345 797316837 192268673 967891022 758800223 521405745 594509006 773025775 131211564 152415188 945587029 127906526 562396697 408459292 473716149 646186987 945863908 550938313 821691550 160728694 410748317 482906278 208570858 23842150 832910100 157302574 519619354 747296996 754584906 909801966 275778127 147955786 442266884 58218824 440487298 105490130 932722639 969261912 231986179 830525587 584675182 731817190 767757298 292528535 407611751 40590261 711497007 881370752 83912703 751172260 584469455 201833959 627820055 733526638 239554171 988308154 900753035 719551565 847586799 278870566 127943076 313818438 840921484 100436692 872950937 6672190 504235251 222657158 717209687 333035646 784480347 104665045 736720551 389002111 516408732 471601911 690823470 800550163 73568501 518670899 257731300 299449281 951065294 207443497 178421929 47072996 988550738 240593847 411629455 585562207 64676181 10185201 482987439 463875271 761332617 524957564 31628782 816409130 664098291 885155146 124535861 53160731 804020060 168325623 573598439 527819128 282605974 703884661 487239377 83451451 211780 272119388 458949725 670583959 710105311 29370673 638656327 327335062 44684722 638109356 159317087 72325744 147365313 657860761 762357663 287370207 384903537 457656059 618947901 660180558 511091640 34433674 309846961 389602388 588078216 176160041 728044610 312969865 851159972 646491022 155308100 350713492 516798365 877542745 458586157 386832799 302885567 509979912 537271017 64501874 963051646 904162999 894488960 375460233 949137755 316465553 908655955 472329525 107701923 768862517 383534256 416458707 900885026 180884390 431987478 973229034 528364257 325634669 382238735 820987330 853425686 464912911 9035129 381330893 266717062 660606558 420259227 457872740 651769613 860141918 756936908 395216910 175027386 750916830 835183357 733807238 329990081 237971666 412294499 877595387 161556610 670465747 351593019 532179388 887549273 118003516 951882368 458699535 499368553 650832776 492919551 697007754 276121630 440012750 500844009 942509986 549205106 544156670 397245065 487717982 209042235 144637888 166785 723380856 187679893 352381199 484367342 106653615 96761480 717723331 208706437 161901901 283507834 984128429 505143854 691143592 143318736 214152792 956186470 472641465 126700621 282422430 966444206 741767529 779861986 772575050 603180896 383688574 727489130 529221275 310433183 155511267 589016893 635457417 267473955 641859075 389164502 9401389 799255823 9625401 252917511 741797126 152161930 55159180 561075035 100887521 503331494 274921417 677126960 681194007 551549470 746217411 437799556 491177047 456415285 949240843 638854604 47306974 256891318 76219366 758066121 883774658 846779509 461656821 45952738 123636858 881958272 311139267 96702663 978948575 813383120 780191399 850658087 934996898 708479488 166145816 587645638 876027032 815302594 617503912 553000230 495810669 359174735 74402741 228883130 821472451 647934961 253521854 972276276 597265329 163717648 231071055 70839596 241275704 576124289 45225434 822514239 981774411 37406335 558070926 386769364 254767393 75163285 963828912 188119471 129715462 87923436 996541703 45896854 538362311 187111117 202028571 453715394 453894443 25896883 779409915 488795541 106234737 660852824 245877792 870650772 788463334 860255910 285400493 512255225 502305399 971391846 390941904 891862905 335503702 599824951 800166393 80071384 293799322 200645311 816462882 416931342 788212669 834425678 934399833 261229520 428520145 659787153 751230079 565392543 429095222 746023480 70051365 388944230 857783706 916405889 453687877 498402413 610606872 671326754 524973467 898963390 108576864 349640855 727644800 362622921 927843352 54911427 974789702 246363391 907965370 152969956 424852510 811937167 483445088 789915545 729006247 74658816 743981217 388654295 271709536 931557471 288925139 176625257 59186990 51695511 213280082 202535715 246637841 787564833 583605604 585386257 504911114 107872826 326347366 212889735 214687976 62864822 114334625 709483669 811774459 400347667 368782619 521287228 814957947 674783328 492931188 218191450 970060777 402823457 323691986 431959234 684192211 151569519 96348387 104641021 583913242 642211632 381173934 107412125 747136333 54309130 868151048 422392406 895696396 501466763 560062403 915217103 621639287 878877736 104063255 139745256 754701341 543969679 93294818 357752933 377794160 89436128 804938356 340537062 208120771 636992754 233463069 189458530 844827048 506844911 763351740 427430539 645303477 783975221 670338946 985851483 136359704 908390287 77010895 839722520 821849286 190841229 408944469 311364729 360822019 53370916 208221856 780705939 237918654 362688110 744493507 554456847 85575572 822830535 330104183 773579015 965337087 140608062 837666316 609262590 536528691 617840237 564466838 870842888 664904009 712854747 5759286 194887898 235476618 820321768 79981718 551844299 268567354 532322565 765203139 102115996 152370046 524571806 160522943 658852450 721704519 444387571 522593914 158272261 202756654 287415365 28266114 792093899 912943592 622736082 581398582 634861394 604494542 188137527 818017879 707939299 324068272 261906643 574152685 121996046 64787887 636684400 84371842 229261380 796438864 917050285 668549133 794922344 595765632 885633147 570384745 207055538 420358056 904469554 969808780 252383534 356711020 848309917 124667850 787939441 124701775 406624989 130738128 85798261 811345610 467949143 262667675 373912002 470582200 892719427 204639164 672528592 645741394 206870781 517960455 685263435 913569552 570569559 449412680 370509369 309745294 20979584 174794267 97615085 471200801 130811661 810712115 338648369 280853127 35552909 837344586 91996155 60544308 524609828 900767071 280406031 110459209 311771003 430863847 577060414 318155592 256345109 635458484 603319944 16141640 270184225 78849978 305934267 759022910 866952971 434732522 869711008 245999203 655394137 402905926 202619439 346337720 965015529 862350531 778898901 282742493 842224538 890157306 238900147 628033097 18859535 207536691 694010808 593890930 718999548 707004158 124629381 396137354 127834039 134033627 420062878 551293323 709428256 543029292 203726964 254770876 14431084 618572721 536482480 589667291 184768655 45196916 61889487 403583772 15181562 560056934 474416523 124243768 521013397 210174343 50538233 681835480 42124333 5767315 334231898 192224199 543788658 857239609 401476858 170951859 965933352 478645470 891559999 684000472 433514914 398467981 249387227 618535792 166189187 121968124 594331417 182982095 73069821 700836453 876329122 586707090 814385774 388259226 170843909 799654419 946040890 226135574 338002991 646888487 177505773 16232145 791178260 666787875 851010537 340101928 257577845 508341199 647533887 198754896 458144923 742723153 671595985 196709476 54273080 247954324 400226023 622340301 80294450 766821763 365185075 370056247 3895348 10721410 182792678 238485807 336804887 769061635 2668835 716106487 748765250 584099740 610982423 771397370 313784971 152347441 323920806 266266096 467261489 171115748 515694985 272174011 272131933 190566202 885109889 520168012 75370626 192389152 455310140 762966675 410306720 855399801 708862343 873176726 300715918 515260665 837843330 607679290 804837913 274820633 732621570 199967042 149725388 205667877 759647698 178387212 561057453 421148583 530369664 311468664 670144342 248038487 229032326 421241863 1018545 256234726 104192081 130544122 230701881 726324574 32446239 877271693 597567667 370213287 63386008 845150173 523608152 127227356 862960060 405177848 38077751 206853211 368095755 130567686 271576517 277353724 76379904 49763402 992435575 583341175 641642380 413022660 557120977 896684551 144798608 589224865 916861993 235328353 170718855 252175651 514054434 269922075 492485456 982476388 524880789 424886571 326444151 462263890 271804049 330012978 968846723 160839302 229079962 594441601 520702898 430335496 27928292 413620904 645601415 489451258 160452172 609020344 97566083 550815346 781795059 841823738 232273412 773615935 540830444 531396957 21466336 911219872 842338882 103411106 50864442 543922162 979826697 601423246 990992703 290570865 189811881 537020634 587689072 628783104 239310778 251297113 956501467 892298392 27217440 98065279 217699851 737442476 836125104 542993258 299081545 426831773 513238324 555286660 417488711 18867298 24296097 82152346 70795021 733298746 509766725 452881322 749521859 581551752 777961075 612315632 846031226 614226686 513316617 30456847 325495218 661936215 839465980 198760113 48555490 237113704 622560124 267429900 119026873 932338979 156853172 534461501 917094910 768109700 289790184 409998608 193180578 637267865 409810914 833911952 380205773 123147001 312929397 471568508 841327720 429632999 315141058 169576054 40016903 477926940 571571740 936230466 653689939 369994313 293933075 235459574 238982237 766281291 519249954 169872062 617670242 562160516 888482704 248435005 542604647 855213379 806140998 75403593 90020094 793254091 611545522 389805133 156054857 423030156 3624229 435399632 107819854 186149627 793668946 408081991 283088171 663929075 961207750 615728920 412158791 520268258 981855825 322854100 641569365 688730945 776116320 30856616 464956574 345523052 965783938 597824969 84288505 240409099 298411881 783302471 735695047 914928241 453298754 478913052 841592019 259792380 987206390 196655062 305413920 143994815 876990223 484020087 121371696 648534084 884037576 144036532 385709967 484203179 810400676 534467412 75011116 612988528 362166799 535161651 278144401 513625897 159786110 322077515 236869332 407252428 784302598 400267585 729085102 332647993 864602268 982505844 190174837 667032789 176480485 648599860 520077992 668869740 421728041 428089843 972285858 813255965 795779424 742803763 2927423 369104729 418064146 168927322 37049076 103955889 460159876 685212544 255252842 130966381 206110170 520799492 883535781 400141748 425743387 281947158 520696407 121213111 150007854 745373748 32915034 473037111 871524700 718396496 264730769 458584703 80277035 972084050 298057374 76379675 915675221 47938499 895206075 620266105 688081092 371659707 938865029 94130514 529780019 878744245 885459786 218754661 427543002 871171125 866399462 759938974 656887796 336889233 446674422 187735640 365663827 443970652 120561727 266193602 825517136 821688260 421246440 614870287 153975522 781057156 888750253 507652146 401049199 615867780 641816597 929063149 831269890 856328990 218501817 596864069 74615296 377812354 559894921 420058952 608180841 859018737 940114448 658227924 746324537 436916351 584427473 525080075 779146519 693864560 65507005 718276107 55653411 836223942 434256764 403182302 507048526 235670876 406978014 981868802 680146673 732869390 851040254 974361565 958478299 219217961 581588832 93648634 993855421 284414657 28299778 182263884 565755963 818426279 75349730 751848771 475879194 643055801 383163723 412898316 533789605 449761229 494337945 594091420 931318995 139022071 846256886 165019297 762039701 414671782 963945614 466075922 820529137 45074038 606540352 435416466 945516609 243396161 990299835 661074583 930346393 131741443 744783434 953313655 75005050 666319660 575711395 772012485 357365407 725091732 514961932 634009229 929652220 200135107 972074270 557336294 631186538 191403015 586626161 556285149 408290955 828175539 770819813 887364310 647328567 70399314 421600991 805381515 279765675 798900488 571507550 933551751 716980705 108216699 318098017 463562025 81405764 390272734 736855695 685599017 204970780 95498411 167885399 517254860 56477369 412493673 426384208 212932176 658852235 32433583 696435609 631255454 139750743 847267980 137347781 295191030 718242650 229402008 75686443 368847855 538473935 683278503 380579563 951366151 838841919 478810403 995530935 412628717 830722007 998714668 771978464 284352969 628546280 709894325 652659995 982060703 986218604 546393495 721082549 746610059 366549376 468806064 896194594 742154837 875496387 171415955 237553257 96133730 214225081 591171037 995434777 125713896 212823741 28495126 669092808 706991517 914160 992008842 381707531 835550013 22401161 50249525 191248473 548510076 764850418 21069389 568836164 186807402 91035405 3023177 69610891 759176383 14319012 175655104 798456909 324109241 191272772 834861178 714046811 759360160 635174162 507663473 843873866 12248758 450816527 999826336 121866235 763449797 504954836 65703230 675353636 247194254 79460219 688097763 573968084 544926398 657608381 7632982 479018077 425148043 775814546 470509651 481552562 718100452 662618837 441377732 314424561 45459963 370129190 286001891 203003175 279544997 411427239 821305862 128573065 16968959 722915685 707742321 596922120 391481839 738510453 617956936 281657500 773223317 301084298 404446617 864076812 156894253 738056802 480048447 829311707 196879031 450727638 541140442 836258432 78558264 844235506 407696828 267048140 90924877 853616244 787248930 144933668 371517821 812612870 893980398 132273743 479907264 262887962 647520522 457361467 16819229 52453739 239991524 274989621 532158847 12604462 866296149 732254977 193125101 600059829 360893039 423132624 478655502 169648704 216107982 646498264 812522650 335778985 149016552 818192021 886080117 738766193 252456887 315592915 476051678 254296696 350328151 282363565 233544843 165289079 203794844 364676831 729865933 687118700 742929907 949846787 212234732 978486944 758689170 274162691 59029699 278389524 102477877 348708356 350912899 912674419 8485539 655074299 640283142 799272025 448862477 263404462 203099716 262786564 334939371 66808864 371448915 79265921 746023666 577724170 677597106 69207717 496331886 294677282 529246827 437353940 828306396 617026290 681877918 44454777 716187819 701385856 983984624 60346747 381592490 123293509 454457143 510577824 217860216 903019776 976751111 675090113 802347053 816862885 231984632 509764979 545847101 219524860 351676166 270026749 425702898 78087944 707184041 444817535 808847928 815657420 660064777 7799273 548307370 958811143 560647052 684861157 347914399 32246211 853921928 717635555 542154275 538399136 299918924 15586729 399158502 315359876 960608378 996328503 876868696 380743354 54469197 152730230 366337072 169455809 435267800 700567631 370501488 732190680 713837832 145924579 508978973 866426585 778067861 443484586 828886383 792543534 156680096 275837475 617002982 124240195 500682986 718373438 463278014 127343230 313524643 309359269 301944737 790831186 852788619 384438371 665654158 341168577 924855234 389327599 252717882 185855429 189813761 756126037 462424595 272274381 866618150 216570819 562976942 486715953 883859627 954160486 436989484 364154265 64665986 129630411 355180014 210189151 860724064 4742590 450957659 398296533 155485997 337165589 506424550 957794297 377473327 611790399 873330706 377087912 801282688 446289166 307755651 98730601 562390871 762648626 157333717 42918100 872679050 724886266 544276515 60264228 392896591 567090990 348480727 772187042 617114413 826976879 853820521 457930437 394658509 116776767 700864859 102209532 150040746 174901329 587198959 820704642 631952233 421594414 941729940 167571993 585706707 134878525 161379241 815204227 557188765 705814263 517284590 971939712 433907187 927356471 683679887 25853867 97828264 123990403 980919545 107499236 938018613 165854676 498444396 438755300 48487445 808876712 574008627 629885636 141195985 250302809 542136350 953976571 585629022 931829305 597836190 488334008 842796577 502205794 875298787 897853524 533831305 526864659 142146216 296490090 856901096 472193293 649927284 732356600 378920853 987321247 117559780 687752249 748913401 794912466 907351426 503851455 26254509 868133844 178541430 623940197 476588652 944839180 354332920 377539504 831630773 735561955 692012748 181347180 245501320 74697870 387055217 378247185 989803549 81705132 479981781 643638352 932467736 460149302 820969727 374192722 867408417 140578599 888296718 523502270 787738941 350442215 190689708 184810317 608841859 176502046 348993562 511437937 513919208 267267351 286822971 796215634 449824863 387528528 445366024 282556362 318237661 559097764 786370861 960754063 404322382 182728723 641730952 69140419 185905360 279433258 661861831 359555834 111879229 239075201 209227932 925789434 53261178 816839898 626546524 420360116 774487138 715567426 364161507 877840536 975531159 992936846 120839771 138876869 731556541 172480510 655654876 13573321 24931829 971934980 298582628 588271014 403147590 519326813 911052647 503620501 641000189 599308888 594332409 910558321 635826351 972668398 889777752 29838016 219879088 667448156 256811000 92252675 316134060 815072330 228665968 604731740 179858359 655189581 900237592 319332077 133225520 237485310 479431330 660698629 653853030 314943160 415267820 750843191 193870168 657956544 224327943 72718478 856837077 350047592 11761487 572095306 49611 397141082 866451688 900277927 409103902 995574408 655731185 155563859 237110455 229591086 627012787 422129993 553426998 775692730 252343998 507027939 549990000 835151273 676396002 231595392 674157430 361486593 448848992 643935613 368128172 125472257 436872155 773832085 762441091 648920964 411643027 743136361 499033994 700633046 585384221 612784571 309364795 140456042 602607490 932678198 507692795 263565804 781085250 845816360 686594181 751107033 581850678 601431652 876887619 54176242 159650947 238685232 226851816 975247029 739624750 319683882 475291774 624347357 101439629 696437125 273001358 274235712 301686402 510826991 755024438 252733085 526518364 477164679 795721327 165783805 632454106 63978392 65109576 618454371 929668121 3827464 993284428 910369848 727058815 368832554 571095999 265919273 804459378 366372217 340798958 22948567 340560281 51264711 68661891 685016841 744544121 545406465 338455957 767175900 564176855 129245894 93186301 166760744 502528547 949900985 881428332 661799771 626642766 14993329 369211072 223274909 946337020 374183927 898039896 133641504 286515454 808600280 196740493 583838689 270993825 704093553 111318581 385173161 870816317 252520007 916087025 643530806 277181987 753065865 926000169 340168095 918451660 825709973 72005564 714475145 571212020 654286105 877851855 328390151 957664316 477412778 189077523 3482273 105429219 19362692 432172087 300560171 456842743 180654244 255306399 720484783 727898817 703082496 425506897 827025136 414009486 597854786 286229212 576705264 931182200 884555903 888318694 540842335 653027941 390992929 644387076 782285420 441660710 536126038 302662746 184739654 255137161 422372376 937878487 305484558 688679180 417136712 795169734 33669496 899121724 771026328 341774476 535982291 323049041 144032100 741111624 634314490 673776783 994682573 556997340 629290123 427522341 547231789 449078254 338198895 895056044 211311541 274372377 799673799 29545625 357441421 705877013 762975007 663874954 828602820 868528200 361764698 394394848 870960153 881253163 241676391 246109099 605487146 794446168 581706873 668943376 270208769 63212284 624883611 252712010 650739751 574495309 474627090 53013824 845714607 364816509 585334459 950783404 33874600 998730615 969500284 613572015 768320977 186425561 139797900 141243649 232689840 215425763 795970899 270799219 203453559 371842124 590620204 786678447 433177558 694853849 562602631 996948221 223673319 948411305 506266299 646148366 571954451 3633271 493242973 420825359 658020454 153104051 6634692 308113518 2473322 602261309 289504010 545955289 510303070 634223159 496593460 865432032 582515026 398374497 877188224 661001857 109404002 872240031 126077403 563676189 663295660 342628512 545399213 93386414 111708014 649176933 534048915 763232301 18034215 685584707 415226758 78396061 227849348 921846401 476540227 161556610 266152365 637496242 92452035 738923377 735843078 70007399 764647108 442846031 362895038 340736158 40915404 959430730 660079386 487749932 256734092 248460795 150225515 610166797 303165496 172081704 646476697 220803017 16101506 681403505 112341656 520099430 652670465 545909223 275691498 558502436 726768757 847093361 171359495 217828104 776830099 805619263 894657723 381053215 717042540 276298739 151308205 638599595 616072958 809529257 712347809 99866342 117672852 387556476 498480704 550279772 220795171 980410595 429573028 920108770 354443638 748648102 459397295 253534564 526385800 274876385 50210889 943732508 852563193 600411875 981232000 302574415 816806606 283445983 542589785 717895356 342218305 198681360 547518140 399546888 352292685 406391754 262842195 250368347 207772486 170468605 294538388 898659542 410974895 713740212 903284620 404134479 566775494 207115391 131536709 294812142 915494235 186892160 421187264 682644329 880976587 148266796 956360659 541756622 98902347 65810901 257075875 94906471 876225416 238249451 77251079 828645355 426132321 810713905 655218459 847421886 124810165 279090693 953321835 455824533 870926240 679989215 875184679 597366602 492543628 969371441 727243554 575552502 510059927 482460503 158032417 460460887 83928905 926578993 192836129 164059549 490596858 474541396 522026047 6166031 860567329 219216117 125398370 262679866 877877963 631438233 159295099 863360008 518161143 409627084 508912385 434477218 178815300 513248707 233028386 962928766 837702464 208679646 986824179 694703412 844129531 290812691 132359738 601377431 597978970 276449515 280178790 497493685 80368256 287055245 906291209 381234767 815369027 978479544 775057817 89196442 153119005 316043738 570417725 761732597 946353870 817861167 283250023 188886553 30769244 500599400 220319646 573878794 928040420 50668705 510201424 482497023 229901484 36455773 645560342 11350732 424235937 709757093 405648782 82672423 707528242 90552028 177059004 101275766 407552854 352824336 520852295 316767468 194182578 96407287 267122721 384420368 913178854 436704917 655461913 639705869 698711969 528962265 74506888 198333013 917910169 795378995 634247949 246114260 878330210 343132285 342538884 748419258 576070702 568251150 712571178 302180596 564154024 257511729 754075581 415461850 310259764 106480854 304764758 626324153 447382354 380474498 727323059 376233305 782741865 332945027 769449539 207907458 178297057 520208561 868006958 515713857 419802449 486924423 594764668 164747619 344294643 257196844 590509342 758289149 873516886 487310767 224639220 659185506 709522273 515997872 989361187 464066583 221104163 724088252 363973839 489619574 437436380 866638020 131079518 599362947 1427142 418402711 692187423 621144836 194588597 758622707 163681076 95912136 428949230 754791335 803059765 14090016 977827405 206084896 17615274 270972705 156107857 238776520 524843098 221972456 631197360 640285710 351406985 378125099 126022629 894571098 445568694 171899118 320910812 973541035 456382637 231096149 21548958 160143498 598599315 386379068 941585440 288770472 657873055 682187220 237424185 906135406 986529716 141682067 103813825 802123912 555312567 915385992 266742766 156164100 979444394 181989522 824185739 173084966 822842462 360775898 490541135 708193149 402011801 353772800 553662485 544690162 844409534 769092855 870677818 902025760 274127430 463913498 168772143 544563495 841022689 788767893 210391609 662523049 143375808 865541725 902164972 142070053 378200491 755215798 151811642 883363935 367631164 273614323 32527818 461073913 542713273 257389122 375313107 574504386 412838875 214401994 246910910 406686740 772272019 153128075 412064551 870045918 102182516 658097628 171868533 939109723 189502888 490999949 117924376 190086517 393628632 214356427 509987580 718891457 312807906 986138694 26565691 460616248 391803702 184774904 913495681 640672848 589744591 253784282 347761795 23213184 519759698 280198604 124231830 351636648 265005743 372723546 31409542 762729290 110252778 882443786 185208965 861775319 546230682 569108039 878865353 337703894 439396916 390352982 873405682 765835826 893429592 402487905 437265552 427479174 368002976 106875289 203739840 716342199 556727264 203833674 292723716 831628095 136117739 344942531 93088605 741386764 147776414 624422342 299208203 750534253 670124611 347125825 406655245 3906626 287825387 945918717 902018518 587807145 84786323 159346292 873909486 806789881 214893730 489975134 654307429 914849393 334424592 714365765 853620955 685557866 874483921 589817955 748408322 780066717 454981423 280976448 991627679 27231043 518101611 1358301 303963854 442089612 74424701 72770585 699080013 292481592 64669311 691164096 651075345 322846693 112813847 81022610 448482309 796196519 287049789 74327421 80253755 784243679 768387860 465374736 877001105 53688362 948173769 234357843 983110899 836542314 790596940 352504998 612756720 861925506 556820412 254688547 295474446 420519368 835460451 738295562 967732802 985638645 357078732 432695407 629851119 910067799 476981792 9416458 252093405 948132287 533853182 536046349 514901482 342871805 5408355 470773777 111074506 731695205 892436530 240383069 427154634 186470420 679091050 536138272 768556449 729175636 883117728 265316330 386955342 550793083 330704898 663484711 680908232 239806867 363776264 293984058 432485269 806508864 647901122 516483191 174562332 379850172 684074125 125307793 379067890 46390899 742325110 246978694 720018839 196695271 668876752 744995604 980482036 47510380 719871699 123523248 728862170 477504249 391610183 776021004 112204457 296855776 276122824 673150479 462678064 890225503 380582980 69293286 393905679 118760178 197828949 573546623 75531655 657593010 226923638 434076421 19630095 592710729 456410036 324219208 511959313 116973087 600607446 126549260 373846724 898831655 928994442 714567379 440788693 558039965 243482522 409797413 286025157 407957774 366887850 843610508 826082390 319931071 557843899 62542929 121345632 600172533 725687024 691037251 347866415 514119164 823771479 514439069 199041774 961426180 993187332 553248692 140615163 768471200 576488052 762436093 911236639 323826895 670475411 647635449 37729566 31132286 524013775 693540632 769867361 54182903 508570600 631636984 892683930 242307100 881871142 195743647 636977355 582502512 395593175 337161747 700649982 568129010 113168385 444651890 395295030 655661769 854140549 821895439 402978679 749163383 498522185 908072066 338070219 839740463 831583737 631341658 226473906 472636493 965406056 370259856 274050840 97121274 37915755 131108142 163498165 87835053 685141319 710445325 151272430 816411966 613896663 797029797 539260299 391378601 631668379 411380107 322057300 353436491 646456301 806843097 390203333 592499725 322833903 858471923 478008084 241997523 66259712 161616389 381375847 362712480 858090932 502970732 227273854 441450551 331340528 543662445 469771853 827541732 640701753 436042545 10838155 303978902 109648784 244931691 968743830 449473884 760080156 469922567 732112060 458258414 507974232 811670939 186465816 72830240 922830101 993867983 802342116 59675677 139624875 486114536 356339467 140186946 896498692 424734936 104077508 603379790 395956465 670474574 120484091 953656528 748520291 912415234 152077469 329189447 418980772 500995920 666733506 286218178 514323106 22384434 763004504 945379819 652306564 691393220 587487059 308145522 516751659 600152072 271058861 161070164 24230925 89138224 197237239 736038368 147065384 206603560 732736718 985754215 665829239 201731366 527548243 145757698 247667684 958157585 877022114 11884448 54508024 337951856 718643025 335323371 579763702 858960097 909342004 488928595 455180417 722541699 90795505 249898284 633531394 931198362 238015277 716074542 74576285 146177292 945423696 860472914 955454040 60911793 221584888 316726401 768508415 9107995 563016580 359646500 164796553 864948013 812333619 90369657 981079110 216641839 592206913 682495133 295402352 748148006 172559618 470669943 23759835 694415676 972252478 140762335 412965994 235097767 171941396 663349611 976825462 964443405 733296856 248611956 651314234 87278013 483165066 776986126 833003307 286455375 107355698 888647162 357726122 615240914 57030722 669225137 496920261 551373849 345968323 312723117 646958538 616440999 418032724 788742228 282869884 259619579 67998594 191663625 285931818 195254459 713483389 822046598 555986136 527729377 875276608 415426325 633979073 999157020 690261023 147860691 492458670 449302166 618646842 21496265 264093699 509192947 845902886 540762474 608098841 799820200 962884257 446371489 440444910 42047359 652278738 907055143 821615794 980497239 708364408 747826881 538878800 125538043 346710645 631448595 734912087 499277846 737470290 217959402 298066305 346488043 165565107 829787038 487720253 374955572 150283898 888353971 168306444 322400447 163083687 481583409 573721137 778148025 10093128 711779364 189067139 537440813 772297279 199603298 154276671 200207790 258226576 807194598 375019900 81415631 621007236 358175812 748965230 367361830 331391366 783084963 139988236 550849212 816613798 797568473 753368252 672769175 771490766 327890804 550489060 392721552 165513020 627312989 951050015 804597724 935430244 535919922 253061648 880000600 721484558 890238062 870845710 478526582 799625228 77128794 517956527 785243384 457841845 688146870 95626104 957493039 755164119 645959030 529438353 522924322 326524042 657369990 179704666 671236740 407077876 457534489 504864873 864111297 777407010 489171820 680429955 46052423 450964922 598792358 835214363 850498705 504943608 740603765 745206613 93644919 152932698 91646325 600402290 581340202 419463219 747811235 570890369 393824592 975930536 245676978 117156304 606855247 65119793 906483644 200370785 599998992 743109564 299823591 226506256 917765075 292068063 451815549 119705670 42733332 609938539 257257262 28689712 875961996 868942886 729274866 314917998 404189696 679643648 608931399 603253047 407837526 47733536 653519899 187355486 404622947 671333534 548555663 376339043 886081771 281462460 918486791 120464460 753855692 994860006 828409307 277597390 246668964 101880178 16357489 925357802 349949816 225594696 143896574 468144586 844482404 481335701 309646615 551298980 101522314 6346106 414996507 458398248 509392697 887603911 289017918 766301564 806269853 172552544 69213787 283902983 765208725 813585318 58090642 386575205 733226273 33564093 921045335 634337796 993285694 446074544 604716033 749892727 659319419 761694447 506838556 109198053 326652454 677026584 381396010 202312286 481560940 797393875 657201728 262730833 301374339 508642837 143904295 51577136 835481636 401335580 589237018 62525974 571345885 758684119 989437815 429782009 742795580 516877405 40844760 884787059 5932073 805880163 809471633 878904928 786368278 43335893 61780589 320275845 950821907 696376860 416562182 659658441 373201459 570646492 957683033 405110413 231201601 831642834 825620926 73842428 761141554 626521351 942654617 695962626 766651835 443700297 134164207 753897888 10098092 396734359 344127979 426201583 751756707 612151805 560759500 964020328 622509405 733686737 810883388 375308496 845775344 397514150 167796528 835880393 642737057 666187016 621487170 403396870 727463428 426245476 984774401 833598394 511086200 814388636 200491910 879992547 738816572 401333211 518236727 414041220 170218364 353796307 694647333 240016951 491262230 676111615 936132694 163542581 744625362 341438278 775042278 391742825 660673314 421418600 844099103 866871513 700173147 333262833 904483490 661623869 484254675 124953019 82392280 815493220 988359819 84116685 217035336 425717937 20637289 749046468 302207619 608354379 331346794 673686898 886313481 795568487 691421220 601501256 405621529 604620621 811969948 370377349 485650647 749415435 556237565 75061896 662155102 169326066 636625540 422312322 587542260 71892079 44627100 369882025 926200416 989535217 284348011 191178606 533311046 634514680 239700886 404424422 985280727 129338631 186767702 316282942 91280726 161386817 668069245 454792376 43910703 63805997 262763891 307925345 187104395 772185343 834667770 948956533 173259650 940210168 585416489 873999021 404388076 774570617 894919751 35623211 576446838 130604866 742755877 679483875 508114000 296831552 459909028 640375846 719626860 63583313 390573252 442678686 368753708 585135650 304930437 669587481 961049602 978104440 278980037 379666440 692024166 756174709 846719777 799902378 499796376 91089135 124262759 598316965 676466584 328550387 714773766 663114364 765761573 180247004 825488774 676456295 561304755 998228498 947144446 860007791 74864144 478987899 672139023 521095401 142814097 823312611 115367760 771837473 238639582 221354041 798394547 161130823 396808700 277202448 882900977 673363111 632384840 565029397 96647171 582103730 370054149 309404498 731013807 936829805 651963834 78692858 909285458 235573899 503184432 838561155 237689527 605142227 366229888 483804530 611500892 734541112 882390928 350169828 332072461 14076937 309479510 147465146 512880942 341079976 73364414 962676310 926277822 732193148 942748053 32355385 496076075 655361872 150939487 302763253 718844675 373234220 762930064 248166496 492430152 798115330 309903612 60038816 958396106 648278351 268379398 133043192 485981278 830289805 650177265 370837476 254378006 901692638 337913099 649025098 164127863 830939061 470233890 829948651 659982125 831117933 906772766 766901061 495810785 889177563 575855983 14708176 955199698 885081403 178661960 173822908 356049507 22946007 48879438 755545929 46778273 596296181 345635137 648761205 920061506 243901367 773225914 724663751 383414748 86004942 9429547 905925320 772064096 874018907 886610394 894114541 430465195 793288133 963282450 964228762 905138480 405787833 369099842 190492565 483083895 577867903 777182543 466140380 384877801 222637687 141018194 871627785 917013918 63068264 256913410 352301111 893014518 764952920 200239953 804761471 216962241 231813525 788146800 278372205 377667198 925702912 353979894 363572024 113559882 122810361 120483123 51314592 864833702 565936965 986975560 527839124 221274381 371295782 240259700 282835613 395282366 555603792 530151984 992158524 686451236 398459412 412079417 26411071 734051648 806300598 118969029 755246235 303861219 213955116 511225235 249536575 141485936 848827201 282195790 230420016 946143649 647491935 311925579 932385641 204095495 922286011 430400684 814389848 498516284 456846087 127315825 586704942 419946005 421538974 788882362 11616924 358461142 653799200 591037855 11017314 720797007 729508302 70356097 835179205 388545532 609591270 341976586 120472984 712322703 756138903 736672693 436910500 370216153 27940647 544275055 31834482 333460734 665267311 749309662 532678831 912649452 864497442 678766207 317586868 635604064 232245277 808218135 900782619 467986918 396634032 790923861 951258814 42487901 708348982 460131096 35644629 84409405 149392866 787621570 548777370 530590202 512444588 449963541 166124013 565607826 154562795 774526604 456589769 57582997 177391914 102347759 291152708 102281534 461036446 745098657 553680135 693400589 710359708 70272681 216112708 134970131 227775198 271617129 587558607 736476735 831974803 136466323 360116687 645344137 79894579 833413715 941446457 781445888 836539394 35989209 729909095 748685702 661761880 477810220 829867952 268526379 271846048 94300296 750958158 995876683 206859481 221516047 566728934 10248968 706096460 508684393 678205227 846007887 14395952 84155920 161856476 530101731 914612067 800922144 579727969 33943907 505050001 603790169 756655752 516674230 942395256 297758285 234188763 409587980 652706084 949064754 962113937 147823135 233982645 453928323 183681035 185560942 768212157 436018290 85367513 940092129 980254077 46279611 427568057 43511971 179069633 337938380 718473590 78522408 546846407 593187788 185833863 527712499 65380280 624298429 173553415 828266796 479070840 877362066 563357762 774146267 191500774 80144436 955752778 770809493 796725328 343647359 455790381 490205770 583147122 51169676 716966698 270338441 67771744 232434763 78055241 549497106 210597465 735145294 821597335 444792510 614287190 153304548 693149860 461732418 656829181 594673816 738724411 384212910 608435540 402727827 116047342 865525430 189621355 833782597 433314853 451443525 673210431 525196548 222171272 82409731 225392727 558191524 15683551 769154877 473092701 339256441 329823056 138393755 710464877 255014664 409978982 689775065 236638953 205300436 650646118 7467078 606821756 259728810 874602363 447644578 53806667 976396071 542115901 202608863 553259379 269075627 265111972 419857410 600071575 564893655 933473818 688548 696371589 245283579 191016078 464784224 258081242 122783960 875059064 339826782 615736513 728270786 921986110 968895503 959063955 469507230 837856944 934022127 759852149 831677225 971351125 296555675 679286305 852922428 915996282 815196401 880762178 913264756 421545456 511689593 446114798 294565140 778324986 402896795 350871701 486037895 546247182 956509398 151175084 526701965 808661217 359045935 701630153 800413970 265227206 497337541 530722349 811928529 835094902 461926562 834104014 116021482 938917979 389179659 561349131 607030338 366907229 316451336 877700854 969130491 409897499 392016911 186349773 917231323 660893434 788444849 431599439 561021353 960467154 427201736 569930353 231557480 163493374 269778588 638228226 530290335 44328562 835687605 625046762 469256472 371892404 899990544 361477092 5838955 891399184 548537723 856448490 257471716 166225174 246560317 736144993 466719936 628194897 341301109 107362915 356419625 531185636 839078035 31682620 51613753 95175016 128256031 700272915 972832416 578190198 422843037 602182798 40388219 164298328 693673109 1105779 801354825 349439939 420492160 504711787 182183104 371710618 676200254 882465551 823274394 428688247 773167603 738324575 969593932 826261526 672765908 234673257 429259252 998555005 48436882 272695858 576909600 114493002 914072205 117844464 808043588 364880631 787889095 128445383 72909550 198295940 162096844 576424258 402880390 637230736 268709158 314681971 436075641 687548235 510428796 233326709 312061555 973083725 621955519 91709530 120910800 532783 50803532 202164487 853136266 524470985 178584621 662014162 805962081 858568883 872532779 934219907 146067384 439539957 94177036 520336887 760845479 734777542 982603143 437086234 392497465 745996571 94675141 882148717 184995311 851202002 38474940 109013517 725951029 661733539 215072 725711191 20586364 882183364 531664781 248019278 316571981 504718560 274977076 711538125 631514568 901517101 414760730 66416066 349568860 89263389 132199689 479656530 690642129 657427224 35587570 665115762 600311433 101293392 541844881 201112147 672443474 208700865 204169954 383736802 570812686 883699690 100061028 746791612 666181590 320944927 479026093 292192401 172326487 758520630 673269371 518301119 814995010 872302702 92793155 401435929 167248774 719379262 358595484 395298864 450867607 255954676 611652351 484273033 498926185 168707308 881512860 31163101 417549957 201119824 410240345 23852420 754922316 278260440 409125804 750266811 476603009 708089710 922733808 224392853 118881320 150732360 677802795 472230732 185944314 393085148 583227973 120578636 211772546 525048987 569552868 470469174 410843762 480698776 633083831 25901866 401713213 317493956 875584109 736649591 508417770 7035261 201908503 522438303 340452379 489725984 583012413 993530978 673842799 423995176 149810858 958012816 347199902 770787321 136359200 61096791 27288216 292137164 295561830 865661153 627931763 207524948 181975965 3742842 680224542 337857123 441522311 891729096 602109768 69955810 990023746 370224954 12513926 764745384 552043828 174278137 406345628 836327903 805095967 828965233 930031085 509842824 173292740 411599087 794501797 818174776 66775066 943187927 281064361 32127212 384499056 429945964 475335539 455716478 661372019 754429343 958529414 107296673 306932316 411688775 519021473 934707610 563093874 304305608 832784745 119938056 806756415 645260899 918427540 151186082 862329996 678132673 460752990 714051694 60107236 69242115 970775521 159099318 173633389 111308602 755119136 320432045 88818959 924254327 575449145 960924809 652463932 917692869 318064168 883969724 432545989 364964080 724612538 316106168 3097502 481022498 949762144 359197878 713129286 571302508 261797857 360144788 169571112 44940077 780229344 437626639 469156960 22556727 491920982 74545846 524264468 100766540 850424185 281110129 40986944 744353745 855354202 325068437 31560696 619386637 253279786 611079186 956630626 581458772 339121910 22622878 906065272 727920437 673518390 423863870 282783578 171351804 505362612 421872428 480373297 48679241 577501916 9102168 614614591 143787104 930786772 696240671 351109843 208483957 335733296 876775527 57081393 551679077 83563155 964806191 646139559 380239576 996789406 359278065 336897860 609310976 230228649 526918048 307013436 184389883 312784341 301851579 123585858 722512041 874283642 560586806 690979010 184678456 76292159 657966557 981059458 975710163 177996875 907854220 899874363 817121139 530114393 585883827 102893548 836955715 842294978 857097233 15424643 752210322 584330836 717017073 235245225 225734335 656783640 664928840 573454770 835754507 547964233 611662366 313963229 361256730 525572609 82660825 941358558 650921469 653455672 758170720 117617069 670642694 429289200 31282379 196724362 1993700 493346721 625883326 560626157 39117858 560978306 648948272 88198336 196426425 618903425 10237975 758779138 588773152 599499636 600411403 131587370 982956131 132347599 859176550 691098671 419727913 823703791 826477336 521416518 522442267 781803470 188658390 563417646 652109414 794733701 172630188 100263541 673494238 697819273 340467163 907505124 486583372 611309272 477350078 825127191 503707421 218506605 115758462 66985892 694911790 525293139 743537323 998555073 184306566 289015316 740953284 750810615 951263474 30504409 638626396 971443740 395205295 631305170 214877178 164000982 239960005 353376598 218771506 928626323 820638146 441099213 144486472 599133699 53350077 143671019 22609193 43542135 160281208 31299806 994271639 788263050 126348885 972300236 997582172 354462 362803632 334740856 191437027 395936161 268253045 301166678 483485506 674638434 836209791 54819368 623131289 74853032 201411670 301969853 564214011 285380665 120616035 463371724 910675895 982945474 467038444 211175206 221455807 252113615 47386420 199062333 611216260 382076208 589250187 194128015 104369892 421847900 843889511 179961556 351556768 223722778 81801627 980260594 248181931 86394320 32571917 94574619 382327709 745947464 40607691 131022685 424210376 445377402 87896448 183731537 273683447 806385790 448949903 741588579 762878982 746419644 470542640 29760283 335881740 215131212 449467193 454368696 688700524 295742718 978638860 406628039 827054482 371691520 746351379 372370776 560013241 158878337 973516587 608991704 591307544 494729517 382597300 285586649 742323174 889521083 865430529 820503078 851687918 265625609 461298220 976003825 139169935 791630650 265479820 789933759 698474999 724942426 562435482 972168677 478062396 409083254 527473623 787925136 272261145 964304182 445757373 733613779 11416992 361194795 882115607 518257893 797101118 520834766 133469133 93156106 262664287 253783212 651929607 596707024 270129008 568749208 975323010 795248644 910743657 304318302 715795778 644105403 974700474 128965881 396079049 531846654 246316927 611604584 71749368 560468157 124202476 518772387 553273946 170757428 602434683 209502912 43111074 877055254 22113296 661383878 937671032 136680209 172130665 107847447 926546665 804109892 592346225 55050840 596496883 859716756 596515929 993906342 155121149 396793877 153937619 647187632 400784337 960760639 529594122 244049892 933034267 371956620 369618856 102599099 675493292 422043015 129306476 831264859 37513903 106714797 571097489 209940745 842588295 697522312 407974363 869720672 969444759 199288754 764655797 515839216 636378558 140634897 421214052 704489002 877326085 101279472 186659715 271271849 523024555 100785111 785268087 629041396 922384778 314606635 723035033 573371720 396442325 594578405 320660958 350398906 531077638 27278224 268345877 714712514 795420689 723410184 705858868 347731420 531117084 506065917 822634051 82364684 937287597 633015352 736732508 163528546 862988170 205461494 247418661 564772744 806831644 254061543 890030019 844624114 797672383 341926758 740746507 972962986 939325138 617595757 988280620 234759726 333465286 611900319 226358415 70278234 334833928 668422612 723018189 996122080 927448315 497953805 490234081 365863327 239562131 577078518 711891088 844432308 471133525 330081850 636581178 77440372 696535334 604385691 739596566 30657071 548030885 955157652 830792334 13799388 739250551 54051762 697223259 359616053 360218243 79340259 26593362 955900821 507997751 779501358 380528363 638995075 643968479 772968807 914587121 180903661 127606204 558928626 896956244 425766127 862686541 664622576 285827152 756750740 872196126 529457634 963032704 734310519 504452596 93348866 875153275 276068461 966042555 901077468 399321415 973046325 450595799 304381699 794421048 714761400 404840029 354504010 587758791 104362841 762132651 263099363 722254591 736993953 260724735 432405002 328999360 697753228 838541352 896164204 796572626 731075478 827510713 641285847 672485249 767563971 408755241 88812026 262442219 153905797 864305770 852778484 307310363 793905945 336803261 735826256 487797149 794089269 445798144 22897982 859011243 239054280 837734947 133997642 983141684 230713788 782253542 372451979 372659106 584456544 670875374 556251948 885484190 672419116 922552380 657883277 868019455 362367443 803246343 90810699 316165448 225452645 913850979 608047596 273776310 768737496 809876814 989025128 614345528 636846874 171674963 853895691 157868138 750292013 96674515 78277280 709805716 734521114 126434585 721706563 125565701 971819593 645639993 627162806 807983642 585026166 574467911 597986157 368473245 427625760 10827530 737375405 987903271 513042383 189863092 412254711 716270360 895413118 544525558 131780690 26744451 933198770 442384976 793363213 364985484 958390350 587667519 175621341 816415751 212225638 808383314 141823430 56345761 134372038 550215244 337696368 181997238 551023789 444994274 226044346 43901361 777329242 333470150 324002728 662675457 396758432 245431126 639428362 114412967 827232318 281148781 598876912 902465964 901635841 50403081 719784405 75704661 714943026 511729141 483092349 951544453 666980928 937431445 131691356 332167127 582517524 559255027 510478017 818723243 569576403 602446679 954479656 630428027 306845679 456125022 592336159 493324877 501367068 335957706 337583934 986222371 922923466 3752835 81617793 376823692 914567643 579955560 148793785 494103309 179932757 343820720 462882805 672972367 986351665 16588758 699048249 1680743 242803057 653276283 332052323 782824092 2448683 101400165 793598913 230492295 68204377 211559495 52369186 48416114 893192535 22232002 525128165 373067309 391697192 347127568 328969794 641818775 260590433 374743966 681579834 429665988 520882441 842511273 579533917 677171856 50639725 722882725 653687281 89604765 935146641 769638688 934163440 515492727 522430247 850453263 374322582 494245386 381209746 528217412 357660489 337863439 566007166 889091467 181414784 196975184 326710791 327853605 597896247 514614255 945865912 341545576 298466394 975271325 750511388 300428523 904958029 846962304 192095236 984793144 638895852 559987291 720624514 340668063 189430014 380179904 951422345 25632367 662038176 232499277 701280633 802325679 607383418 471159287 104600667 187714401 597837653 25362603 683339028 73625984 579478080 283287202 261595281 432560989 555195288 92880694 443132447 452556434 733997915 875485600 749190066 652472521 107010142 526917924 612428583 87682938 853613018 328833955 819403959 273231800 285239122 651844976 696470824 907732686 758333536 963770359 175953835 259827943 412770716 598544447 335931111 30451668 120720721 991666617 74484634 344839952 529666188 734032277 317327663 58034742 14562919 836895244 178338268 832449343 760004288 645333947 394246748 774660538 159021320 573769316 345181665 879206804 593409568 834275337 344399409 695167002 838979251 465560940 987126831 576930458 366105173 122724855 577380307 440362073 807810408 503810153 25330941 917853422 830437785 496392296 760419508 8053547 779185684 464790201 545711453 511455251 789119077 886435954 7713397 837153458 448975605 374857742 606654610 5774945 881567259 960541490 491443752 501628903 760496128 836608104 114133268 486029677 357787829 936880375 403076138 256638676 513126530 173173837 423175440 66044810 860765573 498409616 535284915 743790424 642977957 734752825 929612622 334310319 514265376 958604038 461438620 545294744 631926949 811245576 151276485 817359170 110742142 558794678 281752888 566537199 976956999 230215501 488417735 968107217 294084957 692531703 537043531 672462935 206379270 483038657 937576151 598829873 772958153 666816923 250499575 960751263 122417543 89219919 138774537 866700767 825678076 1377438 106182428 33324613 988627518 541199421 101888908 174414036 207719733 760344137 364141138 444454582 8661873 579629307 784501495 629739118 808221863 746347910 279085204 182845557 850561230 107541350 386771123 468701266 292450896 501100501 557706932 181463643 500051294 584323769 240126521 820975631 558814010 630067452 289867693 397811071 279797477 425251232 808572067 442252530 967697312 675272046 307329783 461587411 332729432 874753058 957596410 18078168 622870804 594891178 101303837 679826512 130277960 884223081 265615046 72298574 885405304 668775542 242331695 836261240 582631894 655317111 301541181 560500517 354813778 91525847 298944707 253682466 108031614 900604017 478180143 913611546 407061335 756543501 671736078 885872859 840307385 681334747 180516690 448278769 471608671 421758148 26989686 503869157 39470492 561617695 913160469 612547494 515831826 952470339 468383868 34414029 38913986 760920628 714990886 195748540 388472703 245321013 208024555 944438002 538605909 781163096 629952880 473876443 306977087 558052147 713873337 488753740 712100019 845538053 326968355 511107920 349797952 916967573 760001470 575037698 718233353 511029056 325788116 518257363 272693696 275141753 460471195 982614960 677350580 815931219 360728214 595310220 737025735 747110812 991963787 767729692 872407205 290721205 571953923 195742831 261055573 743928561 574680793 716081156 50772629 79131259 578779047 131614977 560807719 992164251 441884067 376457201 962325315 974406127 440758838 253401875 555944987 337643650 715099321 653806321 514541659 984891818 810103631 200852677 16549174 182806188 435339419 194228064 417894352 619778186 981068991 165387913 220086077 90249297 492927168 14312771 203888871 446421410 713254355 129799899 487879779 71500405 591086326 341821300 927834336 578464148 639106296 232065538 620052929 268765317 581284568 748064802 396176315 667589341 478674283 795799116 763034783 200479615 124389668 866496772 818849213 160818262 628223024 230745971 127776122 597035874 801779253 561925473 458277095 284686898 56774895 623083738 631614349 199099755 933307037 364887958 514748564 141610497 801806136 628159131 620009374 969469024 791003325 415193528 383207806 48110286 475447553 753733136 980267870 162898934 732293231 230641081 898396693 139875730 677699504 968644541 21578657 245834152 407365587 371493421 595424089 297806295 958372588 731525233 604476528 979403483 576717449 497492506 285266080 256475359 467886278 412903034 37637611 663096031 342953324 274757617 140046983 509603041 181344888 531545222 325556286 371641131 149005667 579992400 746741694 915740002 612147298 510562761 564465669 112410707 125409359 226614257 507463586 331093406 197290706 492147771 660249533 288050251 501119843 181058646 993299133 496881125 486166471 672284323 54291384 720471271 727065872 581789072 397644170 36936529 564016786 33085874 811255547 925446328 41621937 86578497 172975184 604525632 494970954 751684736 847801334 744689206 531430813 255839100 325991057 548095693 923546181 845237879 652393556 115314774 585721560 930528588 151919820 366278669 540049925 624075671 293150646 214435912 405523369 612463500 422299427 603203603 734144614 219813102 949712853 596272851 169718386 231999880 233002896 227749221 436271327 908438185 80944978 433727891 881667742 937562274 702763078 278528998 427005139 862762547 819943865 147503658 148276915 115014943 499745188 346521642 127085893 677811434 801184044 545337275 335842362 550170067 267510714 206730077 595429034 903558139 704180794 747231185 248196054 427656144 36896416 541086619 929392994 261031868 238105000 59064341 617394387 571007666 661694318 928337111 892702926 402662930 221154735 104699370 787541181 653093367 76942507 937891662 827458153 281336821 178617139 748769069 794952331 74507143 191666778 121645811 811733741 505441278 310416075 521178646 502900844 531860053 262049625 390336599 418124726 965905048 774122130 190306690 229361248 95378357 267500299 553683959 952781005 644011559 90537958 404998438 567441194 186813089 471029262 217905166 345355465 262653170 294333045 836593203 74036161 5170520 902884465 870549268 681616472 37657721 795839506 613050192 400420453 944559491 326871613 86249935 615333383 175620276 722563624 216145668 975578362 710736936 1804913 986324990 305993409 157885341 726460976 684158742 407490900 705674907 755087474 560822184 113085361 362322929 189224809 681250669 288107100 197046431 772647720 521466123 623491868 279305236 915969415 463287981 479899047 701219874 525810772 639350077 516746533 484628719 964722544 46554315 773986226 383577079 235760234 607495598 225901904 140725090 197729309 497149208 848971629 966888865 739690542 596939612 813211196 696807530 409943722 401730926 812844723 507859689 87522681 373746889 486584445 870705285 176872414 454906447 314535591 212854977 573774213 466402798 103648378 30350639 626928123 572826621 96866062 171802006 908778125 541341049 562088818 705574015 974234821 572492234 7013095 222065382 416949581 981046313 407179077 530477477 82457876 616588921 867138110 694116317 610156974 6813577 158167890 632308027 369782090 348647677 839127800 675557154 63995313 618851530 974908228 414713690 20080185 662514471 633579231 720367308 61203139 253938150 136301498 902218678 649220043 150183630 235299930 913057755 592048962 828099935 880966225 535304526 872591930 42719541 676784304 607820602 721748638 636141507 337685779 604239862 305113130 9301148 467988155 729061798 8883244 847930000 273160913 510838934 620006542 548782993 675898883 306410715 386492052 639984489 915037827 97215094 785163407 612634676 651036529 736660603 3899836 448245871 552781876 105443444 418414710 957319055 157598813 383441298 885580173 820567265 502358869 386076913 302585796 863007947 983732326 202805626 527732823 280691210 879073785 928321892 355997303 391762668 152329790 560153767 457363746 85416744 216348079 43698221 512461664 818778806 874383400 739766288 631160847 116940908 503856335 690738139 840376041 457803882 632967653 712142897 368890621 260947907 138996037 966345593 479912305 241629798 742844363 741821809 756463826 374527860 545815304 682401807 649595283 585614747 259238846 725286703 137060178 709855821 245874906 36137811 757654073 726694342 969270244 664508819 34127764 687295245 228271308 917606545 167864813 611683869 123156513 564906074 614931481 441606256 197264961 495696858 731695165 14905235 48271531 680566858 65034175 220088326 489021568 717868806 138477010 386939255 919231965 957494992 325336215 543632780 783657819 486703968 558253719 965801802 212876553 362435318 755701859 869029528 654135009 408329249 696259598 735733622 379430096 177490299 82019356 838823937 160596573 784631197 774460475 279915938 840447128 677332098 117820809 351425513 972917087 456395591 766636704 670439309 956923200 336599032 20081019 64329650 869219282 742387720 163889489 536488626 560983631 796767334 915384412 93342619 557314679 969338094 364549608 557683159 998112925 766291993 726420572 966498932 335714328 932792087 232444253 39510565 459062439 913037325 558524761 645755051 325419143 11506295 398719214 866477132 688854623 345865066 979485376 408136315 907361836 518597389 93673214 449979072 380599129 890349136 987808066 191995272 583101343 615883083 224114185 124712624 829833668 582731544 944402125 34866616 356357254 69813906 341001135 334641730 225366366 908790189 354897868 407577118 531951456 742221882 26910434 937934199 636576882 681041842 476854574 79975341 23700276 58166175 848151935 406956776 72198389 177384038 725034131 329995001 850194511 230931669 634676979 922218698 801142715 616326411 929306084 725400957 605739974 445139640 687558685 523328603 121666977 451194859 633374908 858627251 338897986 933880315 703758505 844935524 616356412 631405701 413000499 991455397 532322527 381094754 566030985 984179298 70426299 985084424 447480752 668353281 592063343 973633220 513423127 162201160 953256478 114865597 717489081 168321396 629613990 182278752 235430643 422367187 540744439 775738928 214186387 430418065 111207162 395148571 491739049 541397474 683253091 191763062 648410265 665976916 935516824 691722683 714277591 597531783 922999181 314336518 489840220 784692264 592463727 365558730 604168174 978473150 359387992 646547735 256584503 90530397 393302756 384487334 856399508 45496894 459193238 256280432 378848508 188979862 348080958 951143324 285947228 635248103 50449635 154690069 162214360 650241108 236425501 733649179 47409162 589355818 756827106 230836670 326136061 53079830 144163008 564643920 131444906 671166544 883035872 132139131 795832183 448178544 853120165 983278813 94217656 901192863 261124688 783123622 783387289 365368707 778185079 921977794 391624406 908717848 58839489 538586608 211972210 436449493 787080743 738781858 219016864 853117634 569434713 814331080 827677383 303055375 757861610 113311136 582355740 97570317 800416588 324545682 593540526 2431229 375402170 656209831 139134842 413435831 163026870 509506787 27751453 727221579 919982834 576570414 446009137 745466111 814728297 965345440 523411761 928936096 206812857 247607244 478399847 974718132 269293460 53784169 856595239 209307856 694801018 997827505 605813994 150079476 545356688 270001731 829982415 704032476 988805500 722552537 350887233 377872564 259716718 940190506 542833726 445274262 669461803 625336007 26218599 959238686 603617855 452407567 742842682 324590805 122861290 727139201 787947312 518117347 222153487 660090819 5561629 992312404 788312616 425286155 266071962 12382543 443780776 439424416 719799068 262866282 559389451 802005115 110517978 168674605 712415856 783160582 494412898 942450698 277352198 971413862 662762034 794294295 876131450 191931790 84878582 512327712 756632553 469585394 550455774 591696033 881280320 630344098 94364383 218893879 183983200 86810786 602200048 808975260 534002539 277933497 753735637 865972029 187370081 598177424 308111355 867648715 841223393 777768998 127687578 406015769 288198145 235590555 179475729 626556089 76361953 773754754 155852005 476439759 365156648 208254759 3489073 6078433 568671498 248902423 85800613 919057840 418735952 27785273 356066987 105351883 29435459 265618115 82166259 276092879 456937439 13452838 706443910 479006878 994836809 641462872 165110568 601604847 923315281 895724657 721020197 971738591 965319722 185070675 528715758 832441703 162324075 700339537 116970173 277273111 258694985 391346407 978411976 219795728 495514199 122354673 977010730 298485717 969907689 200432878 243792843 907700668 359104611 213697824 924328164 54654344 354416402 30963513 643431766 803069157 823841223 260219863 646498803 891369542 688123921 881712610 742048977 455873317 560733672 653785659 504708099 692678997 164616771 71568894 508071943 748593123 226794136 783110173 147912579 375662495 156219777 79761597 761230993 966008390 451118771 56948086 142632710 637087334 876036326 134144588 682419536 646910842 293079141 115994228 955379062 796160467 13844543 437759421 88512542 310245479 647249895 701667951 630227570 300869832 692903707 819815571 948858510 593880764 141591986 901234489 798660019 301089637 866590964 996315310 144251602 742041005 455867374 351947026 220693170 474083139 348207987 836752440 681478815 63641733 935383412 558768642 999747379 56115486 609031607 793529853 321555735 246720038 395349556 880805248 839340322 508539125 944367866 353436715 136590471 728226923 990586734 651640971 921651275 251022894 130962871 827843583 342470678 868263962 750242166 805643138 259348550 285152828 377891185 289534036 202028477 890828046 455842292 628542194 903833299 466670609 732737399 124420908 790128035 977216566 85353762 936008856 232100439 484275183 3605808 998901654 338828396 512692503 314282855 709179510 595107450 977933678 400844168 677412724 318438962 573545938 975396181 513837780 57898370 148299 927299862 469847924 115689672 705534563 980200229 891894122 327629742 439329522 753944677 599394564 965249925 192946963 652920898 452217944 260263953 586578430 563679164 574893206 108264350 426881848 72538267 167460927 635520799 127457949 425925446 414454449 458223470 966910941 251929061 352244348 698589883 485450284 266145592 214582794 116813527 179288905 685992119 68282389 71066152 569058929 556384173 579818098 957825611 974750088 82713105 167295661 419986859 536329410 450495297 988323952 364037341 621469575 640812816 719873049 882816048 833722924 694955162 690520508 573781507 730172917 791871273 643863580 35627175 744796880 269494444 925077794 411999925 610811588 411997255 212207090 154541207 19044401 202901357 274286149 518110577 562930141 968213636 941294573 502726646 358291980 61542860 881409817 823121011 354857610 194302404 492579752 601227574 745028784 828611155 63300139 214227907 695021764 333327944 984450278 886224245 139896373 869439667 22316335 2988307 760684791 102246084 659140672 584049750 413535333 548444975 118958672 950565187 342284909 258538029 641864539 407852802 439197855 330746343 631572482 195567136 835463241 636463840 732577376 762427307 744471602 657864235 489907819 586445355 795848370 829191304 576855735 262873860 301972896 758972202 573446180 740685103 975669596 734493295 208897211 477347700 180184673 416057011 325883986 132905339 275560153 745343052 649630962 133804069 765940162 113616805 739189836 370236355 981540150 620008999 152451650 598753439 656312732 78735646 876123051 207511728 550139993 119394208 567371210 440161797 721965460 44962138 794589565 826798393 544344186 786623331 343450444 830045056 689711655 900417375 443612227 967254439 552332645 571950477 306785020 814790280 689579555 432482340 239919362 911795618 837711049 533009975 728756744 258913471 832123311 704592971 301999061 888936426 46344257 349639277 903245739 697024098 297084400 66734488 551869482 496667555 723749769 675539696 259976568 195271765 56068073 301576200 527277596 609064595 259927737 960739002 365555452 257031269 774571937 276110410 585952133 661679768 139951464 176232945 166378191 740274286 505257859 962029679 589554035 404237471 672496530 340094211 107125019 802501089 377131922 964025446 491191994 139562200 900276476 207077966 10164271 664604137 315048803 113839587 512589382 442831285 307512255 332077413 27364473 998431426 602389198 540997082 711077651 907675026 730593116 695641572 137481461 997704253 310052550 420398695 832069630 289235425 29136073 385130041 948187995 301526272 325252670 244768632 129733940 284808768 544432092 614569463 380115854 251813554 446742383 190668002 305403296 125399075 679330059 177742365 847776759 43161813 465330391 772036363 631594163 121005076 814954581 924686142 564935770 531226960 189251482 339511001 44633390 76582231 357456685 141323502 750362420 863454357 208238202 211304389 268515310 639180947 193552093 965698993 912482334 534025549 975779421 31068305 76658484 260700097 515532196 17759230 522188067 207465418 757993568 405228563 835280265 977332442 190351232 645065564 935815566 853551823 828729199 507747028 232911381 580391026 341060146 360147927 418055877 577698047 439110372 517301028 743822700 229650745 63757990 162239783 496477642 9143654 523393362 902659380 363227122 105568030 970649384 999693470 504827931 105748539 702802472 969819528 349520573 449941627 729950393 705529177 609235238 468330334 813726738 800580700 648746237 115920644 950336305 9647383 755142389 928909362 951376796 315706857 816131871 930120937 757859944 9940064 659604199 937568908 420150668 777344864 423353362 141778085 700199824 596515321 521025435 410914396 378460848 388005313 539695954 785717074 459480005 304379512 889270307 982653472 126889100 845226955 647794853 494018035 407678586 351594689 251695939 896424775 453772105 181383702 357935694 239630170 966266690 732815487 866421808 773985151 259483773 311715852 690953624 357444166 835283497 297571846 74073375 121483642 918478603 770157470 944118568 98942327 11737865 310778739 667885526 765178044 976383454 322536268 819836708 290877501 391161304 707490051 485384090 981656508 881822911 690483409 897760491 204853895 260367709 913682209 42811648 991370896 246544492 120603450 686743396 187412909 357974946 724851656 572676890 373295962 285329442 330559871 136903345 839726665 245049255 240063993 611512387 325926464 266728013 543717112 9219155 842629533 241150236 855731366 879050965 186083915 160716129 703757175 431912401 987980780 13180296 157509845 811232453 590359526 662700377 639278824 483414752 227493574 726421459 150825998 170289770 907969043 847877692 515290381 156262256 92321631 393306966 780862096 110599973 687591586 143110936 362991253 966076931 151874558 456101245 377706302 657185702 803996784 948035151 567961330 332566615 321605472 191503934 579637843 705147500 46141431 940379265 486406419 321980417 367022010 283052688 183958833 43662511 284569235 237317086 703865720 134255416 15742875 42929903 387894884 42340532 51810435 830676783 860651870 214887977 194979672 579943599 475187440 944646775 420526204 82283225 993105326 817608279 404912013 539860563 697612695 379677398 487837478 932842101 783310605 501160799 388965970 828311652 607276588 51511453 291630453 652926675 158375318 356554006 307655764 92006055 880530428 509598599 152262751 292745751 857516142 456167120 975456818 834528478 88937078 930847573 784775177 9935352 817813047 476167139 544581944 783912394 88512073 287690186 910100503 586576572 408244863 653773917 448552286 846395622 29550976 612551847 767442159 740236715 258018495 912493502 867794807 454075653 34244180 27526168 75305182 522290391 702485001 982255582 108059901 741035900 605753507 103831269 995632903 860339524 516153716 748343895 583282530 995844445 603971661 358213487 100112062 10574522 74451080 487453511 72830993 650539979 378294964 852905220 482182406 444255386 284040761 542341333 979920532 678635335 805947396 414240308 124549999 510788571 693094089 68432651 721554030 314109870 87378298 658405276 837367607 33898265 430399796 732868829 581151553 831954226 539854440 284466633 974889968 73718185 581811124 49500615 112663237 266260006 100301965 202480184 601132209 298799818 116706538 777541786 720558528 809734378 514752617 887172541 995309260 778406355 661079102 739948481 252941378 780883351 353827844 847081593 689788974 660006722 753681660 172843671 485234649 269767849 230986259 932409480 638880451 281932014 120380160 798489355 356493238 974484257 170447772 494608012 757848650 529517684 781547893 791347870 678325693 523866680 596124070 319714217 303293673 190359590 386070732 336717502 674514314 85697901 131401535 919243335 773400205 219924688 149299366 781447621 294649015 724584578 870747858 840392115 744056927 483960200 356850662 212535094 663601104 943764884 320105154 506707221 613589487 998322336 236039396 147821791 141959281 279701324 366317805 105793963 430167516 18657314 48741155 127659751 520602817 13675879 421195183 428705635 227948353 629164133 522909896 863760228 103356971 20700090 444614690 662192083 776430836 187568200 372260786 527557419 176710544 834835311 12625610 682471323 178868418 866213501 898284908 634172874 340489395 839037617 455271499 148054970 544566696 245046059 296218759 430068454 351687891 389075953 317246454 974324908 473878439 982411386 675791818 582857734 263076837 649918164 464282544 275252721 2062418 851754223 59386581 668333307 80863027 289719929 114470641 282289360 490839514 370277603 178597348 302423292 154797406 113446854 142836248 662880100 818464437 756653928 75934643 840574694 135947228 683342795 655834750 299616401 647109899 404460498 638089637 275712970 73277459 370818355 568769250 704333478 607931702 877408868 672140172 147091347 607194880 115625150 963313283 902956500 867982473 262990396 75880367 394823277 715632993 791044105 187766308 236208777 590155357 457540004 198128700 427710171 243841851 38992289 645049516 593127732 108899850 135866112 535381118 219920684 542630684 867637997 221848146 622168642 859744758 237039521 733020671 890798099 692425493 120477381 113647201 716863090 49623453 477847869 968132740 389874386 198872726 771910882 311530709 780736779 674416499 393853146 800613534 581320490 190230209 325560887 559387962 287677626 153748541 786377412 87273630 967034435 237915895 907347378 539038319 133999181 975119556 920702040 265021029 52070588 65482699 844174310 728411203 24754179 701017770 478094937 959618791 378166885 43643414 576322128 637436389 784522635 124542466 717749018 336377285 13443241 375032726 392479699 594240835 457496587 169489584 360795865 129700244 499080926 478152488 899647940 725566733 650259724 864428655 85660117 97565427 653095300 221472358 389501355 677700748 564034215 269930605 215153888 843969514 527132947 218923877 749205412 695476920 517130995 381689139 347661248 743235462 739120111 557357182 643088545 386464088 632508110 764418185 291992837 246997179 80843563 915036364 925532347 917532540 889372712 753935759 557366584 867102270 129986147 608520461 879976383 738731700 560256324 262312213 926233579 217380346 914343358 694852185 118936705 822544049 58850168 608569380 762208530 834474595 73508536 507367475 697585912 273461841 162160377 682267818 998629906 9457883 329641626 394989822 516974386 901225839 934953571 125057391 117125146 780283955 180736267 309014231 587400547 661931287 766053943 691658422 467321275 409139127 676151406 835197820 779204804 248363616 748774562 449103047 174805510 124968014 591984754 284306812 872618251 683903495 631633788 40066088 240137238 233652113 546328832 219632475 542488909 326399019 316542871 319435202 570563169 179673951 955409017 723138187 644182403 514883033 534609042 6727828 336487738 170138849 935186617 632242226 554531636 577947606 343210776 30185896 652657020 562901516 249571188 252373506 421679152 802348533 153699947 949989630 563933001 632004158 799869180 241293053 439154279 679435963 996129063 441778793 423128482 288493972 302906624 213611918 835607254 25493699 358738805 301528379 970459309 673358362 509798670 176411580 407409 70081712 698167067 977258327 848340 413543719 730581337 338850109 107733840 123810219 615056213 783137798 886398765 140189137 1800099 731758432 867818913 842906143 208041048 402291067 650378057 14562155 539207837 312518496 333950427 911235382 206945296 450570952 309075480 966376066 54781798 971557077 813684994 644059775 180278300 874505950 553498805 109662217 854795102 262187478 570203463 619867996 89362523 607179325 296365925 844468941 233077288 920129222 803203755 259021927 334609432 16371033 287388924 102074876 926114913 679977919 939857412 884511482 52466301 567276538 420806915 653923631 723200618 57426423 119325186 330465340 537944920 894405400 918331338 47693144 312067493 645899855 252338338 53117317 848258446 331427946 900999339 970772739 777043802 360461640 903733634 647689798 270873909 825894717 828497091 752151783 212004707 231894983 270283240 153822006 843155291 924266292 414423233 406696162 315270447 370951505 711612239 712762222 53060942 473286145 568168166 637803056 301648081 404837086 930089915 927168349 937770437 638437512 693651452 707172668 844422778 858698389 489155754 224954392 928619302 651503170 23044286 137347154 949159019 591111504 989314433 771696858 910036532 158788218 846161240 541202596 668310580 218416215 854593661 873054792 207427014 646636687 851665752 546994049 643153089 346541446 462522205 543001812 7090922 631131175 388608288 236854927 709465238 69002547 655371735 633279470 234089504 680206133 95215069 725583511 926109296 291874587 995599474 414747258 99042019 459964658 140636237 992188660 367256667 788357422 380823031 51809981 254246193 67630167 246084295 27728040 803732607 184590497 552498655 475830395 793130300 46705972 606865419 802052349 85697620 605448935 148775170 101613204 639297029 906840833 904084422 170018008 352575314 742964410 338457834 65089115 545607170 838638949 931615771 116067612 394188477 405318349 488623831 899059490 713279670 479724757 543492713 338548645 690835142 677451155 651530316 861779000 179909836 279883091 335093410 253295756 44856551 686212483 890023681 527688043 870794953 254593099 219458755 776097672 196335083 707438820 673445777 829640939 887882928 3517208 277662188 582059800 692535796 303840094 491224335 615534969 779508053 745627547 995551387 218788393 697588298 788020904 480271795 637056809 480940737 108241954 66337736 654108091 41608320 611036406 192116620 3898505 879723695 148431913 748664673 655986260 15592011 180599130 400534668 951378927 570270326 986400171 12347420 160536236 685179526 422689425 367908608 775373538 878700760 38881996 999260282 673526069 452195667 682751232 169503961 714899723 861319534 178659454 690015518 758747840 827865176 467619957 425964602 91759753 499955753 811080339 46726314 757967456 664489504 685319786 996750549 103767548 689493050 605307051 657813948 540915382 769286381 803306173 677098222 518156302 499631193 366311530 864483470 124232597 83867420 7434090 959307154 525700207 686015867 139468881 144629816 484982513 367382826 442465083 294200768 975831942 833502047 114999554 594749891 882289008 87538202 222170368 293784839 488020953 643710719 617113687 489744700 17233229 368830210 822025274 547031224 172049720 871344373 458896546 620174038 122387314 227397499 999437494 962365670 151878475 604922106 900651114 712581854 447582196 623445753 185949326 923573643 65320201 212487136 826777064 809323219 145454160 856557822 402674664 695274228 108520821 813611922 83163069 567376418 553669769 345090977 708454573 794749230 28865488 956315792 729078889 906288811 910583717 393612902 72740663 197836167 364855245 76864319 176228243 524320066 982131353 177498342 147800104 219609169 289522208 283077240 710366257 519207274 649924130 114472571 89522761 980537775 756767528 534099417 873334116 609245188 471678538 611120225 990686961 188589369 909247870 597197158 709985765 62184242 983891706 933331176 885773786 163204832 972637621 86447898 624433732 718457580 203508187 236005710 282961997 708871217 756733817 513652488 37119126 570153353 461870932 395348832 895563002 862096456 18559500 367588507 128682282 792937176 818841083 534590087 227492697 372180322 621098769 119961315 894242883 391089800 280491070 381889251 222676084 148989791 921343620 120660206 688406801 219266905 893723714 116284759 740622144 185254273 73385589 506197586 706230266 632729840 142029884 566572865 89036770 112823169 345398723 230837286 660149789 578904297 394461913 110413292 63246619 662827270 579080697 262826756 715950886 697481920 283046936 427999086 892827504 361340192 990275373 852390777 607989504 284622083 329631184 678351415 15889520 610158217 878806882 501049824 289487696 489801575 326155966 747649857 575426371 959984827 316972171 75470061 495632090 59066729 862526068 983321187 548145304 24641775 305964517 196360474 709808325 116360799 447853365 219014661 295418179 101886513 624803838 674311047 248177192 565194895 656976520 452951405 309613044 503204889 331620743 556312061 849467948 916521768 166907982 166127024 234896059 57949986 693335464 124259649 740401639 335803788 835561210 42166619 332843333 623057045 238834116 682801222 886314895 742254773 673174808 313382894 459005110 806403470 739406678 540199727 61695488 803334927 900901029 364113334 361485254 105870775 787775201 694127007 399249075 81764353 682725478 433739313 58432987 721833622 422899708 7781471 780206234 299756708 506104109 285460654 249061021 430992130 538001689 535018526 131501977 686454051 694975291 771535405 871299408 466782235 482174150 964924425 605722900 468206101 275842829 262823514 771775759 724905406 328877785 434212198 450977938 987438461 361693537 425531027 721428216 273163371 932494621 128781638 924317223 688843244 496904819 812492288 668541261 757962954 647075358 827156580 201154097 243656855 973529265 677714610 899232215 726167027 883704957 762395220 219827792 380902360 874108007 407701199 773394537 129062821 533538248 360320636 360577861 830172068 322088056 297979221 298533164 407461229 623784961 652985554 209883871 291400676 865055627 674951191 427876493 597670577 705364491 167042688 726801915 86559235 245273703 113096428 177741403 947191804 923661626 869167686 122855583 788712065 791434335 816761709 855664798 490299305 196942750 335450404 166890061 118508123 783174884 353701410 115848328 627497009 165590538 340362433 186756207 185982505 748923942 163371363 935994668 881367624 406448932 581497817 437551835 372046112 545839939 304270959 924954678 533018463 857738050 561418321 484980810 66987069 870546615 252601944 110355056 59760378 531762184 580881553 432804993 267862461 453764784 995629171 246350864 714260600 430947629 713665170 619567387 730516510 619152033 388682733 872760369 559964311 576248942 376309694 658107821 210521224 4234511 326667766 726392877 109874626 236126393 205451075 501527848 444464987 674383975 495855821 751698877 291005684 774428606 545665867 543927255 484726533 441484164 711225247 285461524 79268082 572784270 924524231 789061344 397978250 768246782 696264862 678161171 168610915 763270553 289783499 805583795 743118702 766069685 981375650 547153178 214873607 24511283 975842015 797089027 292752630 303363854 809034761 76975 151175883 405358410 84779621 732227912 558841305 966791038 434587321 863724558 255875809 794571554 900836971 111503279 938877731 427060542 165647556 638041750 957212616 86102900 627252933 797212032 627770120 848505725 599469594 494833327 921214914 151495602 291161336 176054971 814758467 543068650 698488474 422257310 850747850 695888029 632650578 293088075 102711718 48843073 493967706 972531485 856732237 236119584 556130591 448877254 384398300 542499266 649558317 27007207 748500304 52756595 66412848 301162702 813477348 949361331 379758882 182834736 530039070 927831286 391583731 871936459 817638528 607720474 912755484 852822003 261460190 671337274 148656228 50049840 557660217 593735269 545006052 390971297 925634986 830793466 568559225 803861970 768620172 915266468 63035297 237916567 655833474 872896144 208863690 876874034 647225713 107472978 760679239 568579234 272706611 443000688 838623659 425716524 818693805 123771646 825148437 620649880 372452715 965448013 281431480 295113522 148917975 843743442 167635236 484498443 639758639 175252993 839210094 140341929 728746196 129286174 691147828 714187486 645375195 838037813 933939958 14599892 303640671 553819153 288423336 554288963 898044359 785546494 624723260 429109123 285075152 22506322 523239512 531588214 308403671 807220189 775464082 651185427 836234798 421782565 884543354 434320720 708530640 195180566 662201498 683750686 524392254 681685587 991045135 763383043 966077542 416758160 759976145 940961251 192341172 885882620 965762075 841562222 377065368 341251239 143674934 462936838 273321717 9403486 524494168 100600343 146030613 641232526 270791590 899422301 638134359 314144623 152399796 709336309 691956261 713559516 768399901 649354147 964382180 891544437 861539701 404775713 631358554 754442717 320863775 17658475 663142234 704828602 899288950 354799569 214831629 765314761 470411424 649359200 911947082 32877106 244958572 849314232 899615088 805024417 390991873 10876420 312472367 824842004 716128277 242390449 637774220 182052776 762704286 758344402 924232783 239976112 279365690 15336813 16092257 692102160 313488664 90800659 549334868 425124946 555109000 916516908 954879711 648121689 443518569 279794165 618574817 978124033 186440447 292180174 60300690 592281107 512334017 701118484 849177534 690513904 779594259 216817423 779826347 728106835 113888743 185623536 206753760 831788376 313153313 361106503 170716636 484048873 970123390 997367090 192109479 179373000 547823757 806264736 213622894 354728583 137235134 785164153 525667735 813036014 990852146 583558419 510131109 847751012 455959983 21175137 213332598 373108417 885867192 210818682 801355293 623343054 511468429 923620685 402334637 639933439 630251593 380612476 130539758 627700546 318055779 495718526 228013503 748970890 909313802 765984644 611275782 692735087 252230970 839737152 397513566 787150947 320666712 669046261 417986610 585112481 679520377 701672839 942302131 774757414 799084003 529907395 555467788 558185494 398848211 721949288 967806910 58392962 404372856 886489811 784139985 710717978 447798893 748199109 159394650 984201335 380874315 239974040 562694964 61174485 447007911 242080033 156920363 507750537 499551750 583688857 549282722 873207915 187216087 406656339 983069131 188025085 603409265 791406057 556699567 532390435 743884541 610322592 845075001 117182419 696684187 939527470 37065857 749925810 138459168 21017595 536728836 675710194 440395227 15903024 67700420 393613491 783562744 195194218 507300825 568860358 263225468 565002645 924231323 504288047 880967906 344491212 899803939 826638972 568834170 21443719 739173209 722894367 645976885 151197516 174222475 254355179 609329368 286096591 969994105 164731332 406254749 125708896 444453185 528122723 893942312 890074449 182501299 478630984 678646110 185594060 510837053 63967961 610944790 545952341 326995213 336906087 452284491 10373178 870218422 777374495 300628135 453801031 679734675 843677263 110690452 335657591 701050808 250912145 137253766 47037247 374668472 647449293 559718169 797844931 550791703 883625954 552464217 945180230 478402582 504076615 498873967 16190392 162028367 318187474 103367258 41051755 230824544 940468912 326363715 939845446 797511777 325727358 781046320 984116985 350007651 953292687 663730853 766383856 903919313 241796720 384327534 802100402 524274943 654043890 798650553 237696808 827489981 886879202 203315555 131484889 158593090 372188571 306224276 224753680 617633089 144452732 495605097 714624286 942752903 491155334 289550271 464702314 64398158 78791848 512126588 991876903 413209687 533739842 613914164 654389880 700297111 443417573 976361947 382009316 986766567 146616452 939039083 201816019 776287361 3750707 292829701 193150744 56086340 539938854 857737714 38783761 757402217 839033170 67503511 908583223 693719627 750521996 362043794 887406467 452663104 661728531 323385745 380406519 49054356 906833742 280145208 750237048 963212094 754294035 842040503 285577306 778926553 837492497 220913624 76058828 272719762 617140906 197109448 356949032 557639318 505160232 198961143 362334203 387481280 69866912 678545033 985339822 638193499 5325887 33105984 521166877 278120633 431364954 65614184 110253087 384895997 708124103 921232087 840565259 699959330 684540880 296179600 380872925 890880935 456286202 352409970 665472536 517009212 154132585 135869360 378936678 368825741 85412494 796700316 321854637 915541132 615350343 747592006 330296483 976987101 734506416 252063941 749234487 174933994 304795546 3050666 258161290 677212020 368411828 125385977 363066904 329054572 798229763 219550042 440271476 197375798 946955483 913613075 962263770 481202116 4760475 26750291 903375531 432110607 919990320 323789237 223361779 439706981 92929177 320994902 57558068 341618829 670666859 90475442 999324539 857382233 529704405 716646823 33060040 986604597 319598913 800124544 601728761 830785459 874146242 254142283 525816563 827573928 853401166 676692123 815399483 774044134 68280904 490420555 617052020 130519483 313677334 366198714 648198267 374660894 444312926 942206931 265678484 378658545 698323619 57711512 183532922 277659532 66954504 722567041 969440372 589145257 769523082 904451530 906085690 932024508 53345917 767494887 242325569 840664520 769201106 720632335 543218442 254323328 724992689 916613118 660683123 925845481 105508983 908484718 21935194 500740342 419919304 151544971 188373443 135949295 943982114 966840437 506993033 428926386 3766990 926862072 235294889 208549728 860576148 320383135 622907606 853948868 461057110 917824495 574906145 46139875 933723321 390228305 188747390 994805163 983223159 921807814 87897033 759496402 741060487 965558650 673555483 716143503 328012892 782644583 675997654 40209000 954053375 178665512 116117432 732471092 541029871 572331085 581176843 933971203 383978207 401525797 236385081 847736768 725964634 606633238 84274606 753684772 276260752 195644727 3391067 922786689 932220528 914025814 817512548 54020140 146693451 980779315 682739766 449257021 301468815 934316005 258750526 258182062 166000787 795229300 208280521 684767524 209328580 603681649 360895509 331455076 450896467 445021832 873059547 961849865 570368835 634323746 766579436 58112653 3200539 623146703 888061345 634445564 446163395 931389654 243739869 533269772 553356538 502037103 25082937 280217651 488747106 477727609 892509129 594371921 909730707 280657131 421612187 769708628 101536625 366528721 52025412 424032420 448961221 93840277 438774429 521837128 435546326 391367212 670457057 737994412 288227840 850795723 314811448 804433066 357634139 27329967 789451779 107976432 743741007 459388183 151250729 927180797 833823068 801352199 915745750 510597606 933832672 398440555 76387655 43140089 385238600 832802226 406715680 39748939 62912506 595316491 261516705 241436380 756806481 129346985 960220475 716862596 220068185 185738012 189788014 630595116 739944058 245313077 184656438 286782043 737868142 812728873 412970974 839789138 948824240 127583407 49212168 281348406 519370488 994735133 670796565 557783275 907227273 728248010 482629261 546526409 721521554 968465016 661831225 4170069 722205966 405740117 323694099 66580587 291161303 568992934 149770718 762280893 272551455 535753245 154618753 400896448 710442746 804810201 347149862 814294057 663389820 968359048 935964602 523450111 969288945 38368176 697563150 798982143 741013312 588811721 762804578 818165855 212124195 236246689 523991267 374963591 483266296 567757048 610644726 476405745 212226324 139606786 769025093 858621267 360609744 89896262 506985511 661654400 857614497 734809895 146702623 354986843 294283808 23877963 302660072 372093638 200209635 90385620 963082688 955725143 22524400 681197541 964856211 696995419 145867466 697247571 363621326 76125086 403476588 911957892 402938590 843358028 742455297 139099699 649434811 459796024 209614791 462053240 904025565 245470851 414237591 311610205 920454461 915603511 898870209 123249358 706392298 893457560 705786979 305651016 87585971 84518429 581855704 423813277 694035611 22053598 666259176 103079087 104576135 145421284 254058205 854807222 961097280 186670601 982966308 314090814 259167062 499219682 538134846 922948516 982455878 851055767 876169646 246400702 679679227 522373037 994682262 582809310 6524121 253569151 449567177 964369294 189389142 902705436 231650930 769803603 370380936 48919451 169074593 526870011 759139770 45834787 164602872 660339346 591725962 215666577 411257423 899448398 103577031 842093395 182347436 83466485 922110510 707994031 605787796 646571662 420434179 897786772 666903490 298247244 827033451 129090987 460003760 169896132 11579009 326849072 196369179 789818687 422593819 143863380 136607670 193632326 834214910 963088023 679970040 94861835 833654976 243054006 217191352 432971819 742480866 151248880 886678234 236359834 13104261 152417186 126199211 860363242 762988167 48077330 46236699 793208915 393273664 136395904 94196153 291781868 311234737 4034589 98565949 673469248 250262894 853923566 775618459 545043640 265876372 699111576 644007542 287492630 775614742 273619650 645011288 566692110 188283033 578465518 514075963 227374370 871443158 59925463 993528313 193018601 800135743 128912951 390237736 995540079 498172868 112560608 878833005 567421989 711896613 573540982 163816650 966660319 395419166 112754567 746201198 586547041 572684369 727733395 310876682 562640219 804601575 871722914 971544054 682164109 22086005 273987175 515283771 718929149 377325632 366140910 873589472 550579672 569422856 952556163 185985491 621384457 811934028 559120542 377534990 399340163 212156351 616493813 451660487 772352987 33430840 328405257 231348150 678740978 353408136 172778797 727534494 693898838 220888128 868000083 81162292 321266813 18308710 936715046 310254089 889710272 462868151 465724828 794852045 337545013 234189135 532741135 660180765 526472694 483081675 235590939 516172945 864093375 261379196 222854671 292305507 576293512 781752740 642050010 484610907 923685277 434448706 317710144 123183368 634018570 539414014 556590560 901248506 225327834 719279488 707934826 619316657 70958408 188160049 168228862 264256631 423600114 319879311 687019925 863733235 760193911 722164889 673231317 394027016 385509784 343740552 353458997 280233435 89370158 283927759 272923268 453012517 78056381 159760924 843985986 558720452 612637934 475770519 424944773 470207250 615787210 69259626 573507942 366466968 920240959 439602796 761196741 237517170 417355090 790689025 258498104 331185670 898826008 698142527 242564397 424730635 946949101 79904441 453024947 268061459 903471966 894880629 35970714 207672315 429564616 264279447 284598821 351950403 309893685 440913053 255485184 983780140 595216371 366623843 316408075 367170210 294450468 169065889 285278268 642208576 182394112 936044704 556646870 913261876 158695013 334717314 475525526 83950365 503370095 528786350 922326175 350511583 636927883 867545917 969675575 207839212 827619178 461146365 157276069 369958815 87883877 973444103 828661402 440020048 807379488 337941586 816746309 292743824 226715053 990009862 847419065 32409027 900494352 423266265 643690310 679654364 393029474 173066452 10639450 540058720 903303735 150449641 799283656 845776385 72532808 785873578 879320265 724116105 245900196 863512315 69849682 542976693 916954924 762650229 613447897 834450297 873468632 671532399 268103877 59253000 101773952 600896633 381994549 358103149 432928276 262673012 420516456 502788751 416889340 908657131 451405573 600125544 871752685 787294142 630244958 738175132 940780927 747660514 824408972 620972480 400433637 692442828 197330164 751701683 771077429 10783195 893958538 322208375 509381872 254751648 467070440 100433909 291508943 110715336 865680543 819569223 282102804 377567469 329332703 40966916 905440978 474857779 947316884 438097435 479178763 179603261 362868061 702103949 23179763 986772336 28500014 846661152 171325927 381006747 559071873 335510205 61909634 265240700 456727990 458065081 676634034 69310673 198441185 79506420 123394015 442958813 305429559 202545166 695287974 842013070 479087802 77260240 717689198 339078679 689289966 381382207 812225314 108741754 424864681 832414795 165356546 904452007 455239912 374786628 108738885 728727991 845763842 412321673 160306914 414768500 680070823 185554006 684039678 782108481 308519085 871980622 64689400 687984680 598193355 739818148 79354312 360279114 752456951 749779824 25125940 13776015 647944538 606182594 298684336 225757924 838404393 920256963 920317358 266438552 534660677 984954472 24226522 455656603 115796478 843641649 688841601 281969379 442539778 533379656 493264350 427004159 733644813 314645928 868424947 64242121 298144726 912372268 298914530 351683794 847695570 501879229 828814464 106284338 907684625 389477391 450585442 325839356 616034015 771949822 703107565 551683803 169167925 454689610 75984152 341030336 276041724 84134822 81726854 638839128 109664914 327772501 332860043 241977296 902392528 695235938 437598941 203043814 471855816 248780311 633567387 937850552 279637552 144854951 834007782 144869752 909974885 409529357 611647669 488210735 549433520 386243368 78518154 117308139 279928612 638880038 857486678 643958606 67920850 865713364 993441075 965741277 356944650 688069499 793682616 158310480 864236710 971553183 150819282 836735163 450108249 433121789 973602670 513473459 995034301 52790177 780539473 397206297 403822928 972333606 725123859 725352299 601332372 893950193 531817057 939358133 148481144 870297062 361077420 757117768 822716709 143909289 947847257 454501771 339698331 56821642 925490017 813187254 385978017 914678063 372613225 489644565 58880653 549339558 105634060 225423289 715129358 145997091 943471284 771182459 261785874 923923756 100053067 181364342 421380390 924278070 623310647 549261242 196366092 204740651 612601262 720432497 380669366 790608254 806324331 122891932 507109590 687491183 38444596 59772514 809382052 587128820 994935032 145079096 307111368 569513839 470685092 359310734 242099802 982098569 957105852 311109903 215168575 131933896 415381268 209003262 280593473 772277778 209732107 740974899 738783343 307147212 659287355 382190269 198742510 584600612 717333493 826141089 319782940 37676116 259100584 195288518 221760903 781873504 943087754 466561809 518973268 956186181 38416051 156859811 68889170 694478565 594151695 825725761 964351375 51955610 903474554 270897071 933575988 234014886 959766534 560969195 140014190 468258925 508445288 455287725 894936297 882992816 904741771 766843900 916714965 859430273 859639673 887905072 425359015 339765004 963077929 955561520 242565286 346164161 11797184 917559498 369818218 898559806 410914857 815435045 40719393 466784928 637299270 269832228 881340421 605891940 102919314 460317152 243905684 898400549 45883162 947687554 26131954 750627916 59156137 334602179 534011675 276689164 333981555 467410461 18830612 920527467 981100333 795933730 985016912 996071495 433648549 327800105 757919947 932902635 576401457 417620294 790732480 270878574 200181212 888276120 804358578 559103084 318831615 645346909 573508383 287455027 455704329 694210103 74949066 732922315 369672219 804433755 194597505 4338014 462844967 174144694 175857322 515860191 723684085 634258173 246944855 112874306 235265434 560953665 408262433 301839172 390027293 545705312 6627654 325523100 784192988 486460631 704015822 246498620 229069549 249638459 248259303 711730239 705545194 209558136 989336581 135870263 302204381 714063165 348335518 690582162 397239821 264485548 556242262 548052379 678287546 455764598 522298898 998434444 963939253 899598596 86761271 986321489 714347142 610110978 803022956 838193928 348879964 550254113 171030246 586443959 118394391 390355794 177213238 128513291 345304706 860343963 334687276 277713715 38276577 848747148 872347954 230880608 196479108 656538837 617211141 680480398 29319361 986980195 895631786 107672377 127974254 80114281 319930873 248619315 899669736 927189710 197335034 905788826 111388257 275852751 193571576 729685842 314424189 116409117 145936802 532976042 999492648 20867114 958110801 88464123 654289805 519457803 648251500 662825018 578284033 959574510 870028990 634712533 407367562 301363295 575811754 929301176 907746304 185974063 755794708 662724372 910324634 649484383 850424697 178281358 730512667 822512007 973109616 467212844 475342586 461322317 274217085 856310231 269278624 471385193 100024625 274956097 719982579 368046384 8734251 100835685 896048382 176633327 163576950 2495178 649147193 371441475 318257924 919660311 228076782 859582052 603583959 468554588 577971891 625375412 297449656 104893063 30136802 741897946 101719850 559994797 205746370 184584375 835202558 852913912 464992730 880438011 879401085 682697539 577626987 683669532 965554456 803667612 780656388 818876043 788485575 900024887 885956835 804339429 61491448 566560184 456316206 416398132 514065255 563801227 730950133 16756895 353103842 55342677 428405684 972100901 536474798 683439126 127161737 449144433 645457224 536656061 473944129 987243838 23831094 526593208 653210450 260337825 304485798 142872222 833598685 987488379 475228620 941482205 863351149 578346882 342120196 704915063 949586181 360175502 729784667 384230684 399962401 646904912 943639709 435341261 752731558 421629790 469876462 201847491 834282109 190236005 867707412 778411261 134447065 299899650 7230979 174143350 203550795 400536266 861804165 515723769 990050608 995552706 824973053 497463952 180371436 182933115 447666479 227270567 34114705 765220626 623696462 550929133 31530427 94822523 628351736 304505598 378180698 455532243 165614821 967290563 374366223 141725906 994821668 77109967 8905289 95138658 522794465 841812197 764227834 567409357 250088448 261475304 426599076 577605234 609538701 98405411 804612901 734687095 721936265 40071491 257916027 637475936 156615274 869407920 591889211 79166362 545474375 654612782 5659993 619840679 482844208 962725633 767085045 5249513 766492753 326259264 96135901 526585958 824852253 306166617 788540957 857358258 600004478 43329658 742480162 354438860 11033199 466139654 338744782 756101702 277483853 351645585 475672943 212272647 198707629 208256024 741640672 931037707 310009110 137408312 29336203 984299926 86485000 240627447 397309785 619958103 40161468 413831313 433484959 134275789 419235083 857890589 905973715 296386252 200457820 439341728 896580642 927220054 445344632 898176113 187053854 955533621 384716818 298587843 444796325 254583476 961793537 181464969 694521861 213204710 343468251 424524873 979100721 212460046 334975136 678931247 383065909 859442578 706049789 195981752 726408116 299993681 138680974 258988761 77141811 890872081 4879164 374933159 107426215 581380577 886522210 742108235 155205357 755289180 793697118 571726096 761701861 536936451 250367676 582736155 93070112 478133505 55537668 372814592 223514747 695065732 913332394 597059624 432579813 291926459 110238807 50708301 676541434 954225743 441921393 416191905 13910359 170044292 892711795 305616904 919030321 463035967 89752633 655992186 464739972 561926501 418101272 494199385 330569799 879267469 636238728 68050533 790414464 189702952 663635992 966689665 986890223 646807243 550661949 953578377 388023223 990776946 161480594 658404938 449219910 893149768 877253450 651412639 321241057 289957652 42042736 763752193 963581608 962743558 688015213 76627584 601395170 880573367 714234232 453952468 544131787 946402303 900141775 752243795 985580741 526120127 945805490 583489846 920343696 502231310 406222114 89448467 983119197 895212098 101010581 647943673 957316896 718451424 862268911 330835688 745798299 802550080 750684045 911538424 691951840 767990091 496271084 43306899 981820497 901935903 415128701 691481778 304298461 745710124 785432125 823477705 556031180 21116156 194977157 624754748 973735984 378491778 599661723 309985713 941668530 84610862 685046801 781257815 21926328 563922864 423571664 110097385 684931278 145123551 570440235 6048320 164248323 774480933 894716854 182908264 339971502 531510239 422709650 836574531 876340930 589312397 102703317 548302445 883176604 219890531 709217356 888927250 147643299 401595285 653542218 723278574 572665257 302534187 195797792 919257105 967123156 153237616 739615254 568707580 501166689 827075868 945366959 15971293 766997543 403040144 208625074 435470850 906023940 936561848 947977352 932671264 551264008 959880409 274947425 246453316 333950243 242850151 28337619 195356128 757846016 224785769 293738649 500370515 914477020 143371714 748243001 977078094 55380921 310294039 319209815 564095425 947002542 619770022 54052620 271879486 244776011 249893908 786076626 848990435 734446829 779939155 263962332 646918568 285592767 484229530 89657710 3708929 444376713 589977403 514827251 686582698 592315186 272596813 584830956 893601610 832191784 829120013 909768391 711250538 583656338 451397798 517361657 391958264 176237886 621783067 842701420 859910464 583111581 619658699 467791990 517054096 812294190 423171212 488807003 168052048 717365831 822142098 891254142 774164696 217461114 957584296 576314584 985094120 725596944 894551423 965699709 212114579 30028705 79379306 94237605 46561623 220161282 310177403 477988194 233137311 303376728 965196783 343537878 659827031 576419760 370574325 478022420 218157741 820639466 451056361 868270323 327158214 628926255 486289888 405900779 439695712 272911942 890655949 282369971 68905796 91765974 16084440 263178839 642765051 735036186 366711095 558828947 669735719 390921646 393376136 776490932 380684960 620812626 439120194 799268906 848309179 760210608 408977167 205755777 17807811 888273508 298171985 158782318 818633744 930971171 983418755 382996898 246585306 77480917 488559161 394898481 917566540 943402714 170731446 521470680 389224447 881597518 188424696 548049856 3217854 274562408 333628341 308135430 925990725 674916216 944274694 786318075 829858715 326598909 28382129 966807397 431348416 280466062 876689953 602333259 826812738 910625560 11602869 508063329 974859364 637948372 202295823 944188746 237411001 21241304 169422845 738669317 745626146 879066 125297515 934980788 888546945 760750695 577544935 415584371 344260270 768530244 184211058 19193780 279468266 13730304 116189854 980712293 13994515 463706334 841642532 209541692 114142411 211207761 158236889 98987597 514449187 102654742 9263186 213548033 903799336 687829518 888323758 326684228 983752714 243516912 789329131 391705066 986720195 135268073 306788092 908141006 390023120 607942751 923416870 892981096 802461671 883552734 752859443 551045703 179723816 853616922 46278857 672452952 889363231 516316971 162218015 674035327 731530358 37803749 724978645 512427941 918174697 757101378 971701082 536083442 263318675 265378666 580942737 71325413 68724656 664917620 767306025 66871303 194625529 385892649 5335211 527392792 470311424 811936582 224017481 764907939 485417339 380802568 810858075 116222663 260853320 593395593 166755725 212087327 754517802 177706040 340229289 415950427 334648884 160143665 351995043 716782758 694066661 837603280 606346276 501677644 644608248 368040262 74693005 343044724 574910187 536691841 524279038 60825557 503350602 867464451 587430235 944201173 450217563 449049370 137548505 416325524 841048097 378222832 37647364 170304478 618186058 27924790 657945190 352290215 735305893 32014975 12242200 430962788 862432024 330524971 127258209 468355885 630339111 509237997 899056302 997398843 976736202 70465868 292113493 171339519 856749832 591522069 305893925 876884369 248914688 995887812 505008533 916445679 82433680 802998977 175343159 27349033 547995339 817223073 231609598 874148783 295824353 433853301 49784462 575370471 561754671 534085098 101393631 861100338 557327215 312625147 771936195 851836988 353235950 337482446 406116288 987712967 957474995 347248199 359627484 168600377 982307622 480942740 757037055 897892436 355169077 178788201 752423500 819329117 916632332 265792262 183785623 331322705 90992853 673040351 11279739 196338262 64312571 746926767 994362520 92650108 610612181 892208983 689007383 379173417 114021923 482578550 510200217 14964470 459610217 25763965 917531846 957368989 181002895 392288084 95649007 176679267 771998129 685278241 825831711 868246923 948003179 574805935 973853098 783614039 303595492 855841889 989988850 750008370 541591286 632886725 979729667 856405058 884152798 899295358 162407707 124031939 675069084 253730895 942125549 279979846 25727629 360229371 424072245 695397404 388113367 451294654 703085932 579163186 317071365 122597589 886256490 655588209 174149436 384600755 515043665 497591800 272801433 41991093 513802275 145100765 732731731 152298706 73540083 590966775 913741755 986174874 856749329 689164494 451482815 804045837 561693586 573905872 103635617 970024021 410299778 308007065 180613381 852013275 954245071 308615513 938217626 846002537 51931626 451051817 218021855 564819426 431675302 923127838 822001994 339879001 427978174 682916621 672397747 33121003 205485406 308955224 604405829 316434722 888572506 975670129 276235073 268772023 992423280 26504911 978963149 601498474 967898243 768216258 672475830 142710170 356337540 772273326 12336237 659048968 656528365 796981120 147131392 900957914 837990166 320621315 104978817 417114488 568196064 793147999 155363812 429920064 488254447 658513470 967906007 894871460 939977787 910413003 942834002 45068720 139405740 483645059 263024629 621568260 717349748 406752080 677033481 929499395 535637166 122737616 252997703 704140603 286399892 904356270 615757687 700761472 493416258 412006724 941028504 728947427 125735130 296167896 261470004 10477231 134500574 655058237 459879680 716674860 719520871 355215447 870509643 169308274 433097035 119480754 609240543 406701527 244484105 714044608 664729842 811969739 914912981 46330863 110600220 445286777 869307677 919122756 326663213 889370200 784865975 535315414 291225508 391653074 725676971 744254151 275791752 675646521 955185246 669650594 206887686 749717098 696168088 848527900 142711916 139908780 652461019 255008731 691672661 133676999 613626533 882087021 403120889 167883378 83902307 462245815 374087789 420055430 976229935 177735809 74388769 307367590 556002746 740554770 25486294 990910040 557378029 810697894 261328084 804530805 457667199 726867838 183274973 509002495 731365870 716683162 938900279 75522488 928505495 998992280 972557393 935786799 927897804 146123967 551046130 280245036 184117639 345070112 944351851 380223375 491073302 651161768 332702992 918977454 715717265 646454708 514348152 58269460 43349148 17740712 91294376 382825171 36655384 534587215 123561989 210443793 788167684 91527275 554319874 546722234 708379136 695001017 484826840 209051547 48431999 350892720 540430656 402548314 526849974 931888887 670021829 893334060 22021642 139148671 975826295 921479410 304668916 403513662 771295874 942688109 405889434 145574400 429770101 401820289 485697774 774307646 988892547 569821600 789196246 928786676 317089081 483626734 246069520 884277666 409115728 492910004 700989098 939154782 360138601 729767014 993742681 803879721 910533707 536531296 922192110 95095510 147212216 602559095 707005055 491854918 114928182 267216521 641043016 124724626 45498651 68133673 468397386 545570627 611771348 509809751 271511746 222476175 957281744 639880739 981980505 475957381 567298194 43188225 597906486 704443369 262491992 764098828 725491124 200177741 153870992 822674843 994119392 7729351 258159937 553774185 157499276 646458464 89809702 833613550 453634587 824821190 967970629 10882865 457083772 963856226 399171917 348847142 833327755 330259330 413986165 963678632 743484751 298434958 770572883 258444465 142229202 934034812 385329156 394527326 474142673 295121106 734763449 732819074 567944046 174783350 616310495 868079716 930533798 833495576 50584862 38708895 408118850 6733255 222036562 332112495 598326907 162274035 604047149 335403463 452709185 13576767 892714212 958083579 869911356 74870892 116076959 818941492 416543236 830901895 783069418 898473629 192219692 793167634 107842364 863376842 734605363 457888456 156643883 448901995 828012068 611687195 478115368 487964144 638651741 259162176 902479339 87534471 455515427 155809483 722643757 431466904 572599845 175650988 385387052 513336681 365568179 649377616 120480824 636391074 783133477 456581071 930151616 244299813 982578388 499419967 669920759 219903346 815802764 60111862 749515212 368062970 992481747 593616550 958871634 851516162 52653268 968003890 514065844 714358741 752611340 478981224 840407965 877802134 439250403 242871482 338305777 944052279 213288614 581754349 191166805 133228555 50028984 43388612 334775606 364787860 234046403 588933198 166473997 943127763 673352489 691277584 176915003 233780216 303789841 67115322 144654628 912976663 949235311 935695197 131383850 592464128 409944635 493028437 53202813 511848865 487032876 94377388 558595353 41290134 143947440 929137885 190855360 332150757 325813484 535030375 567963564 378534006 312418496 598302306 279762576 713028665 233832282 143110858 554157872 161445958 969973964 781859896 752924772 707965269 306453526 684535215 669368899 193611628 410807362 830413509 607017748 129667242 694729633 649229415 630899379 756670517 178387606 509387722 65547173 58570271 485132295 832933849 564435996 381438156 697061736 838283166 850498744 780952560 200927604 63259482 285114304 783417434 754884844 5342298 191953420 475154709 663830937 870928675 581221392 176870268 792276963 72239067 979852510 564654846 894980126 29550822 751744733 405419316 434245417 724454846 173187416 284650596 921147728 896544652 301385931 138341129 841618334 805249217 590346253 311717954 657117366 854731317 180184331 372418572 501417481 657687620 286329990 135835889 611508895 44749151 630848986 42086482 86975904 463559746 268042007 764626555 699019939 773481542 532717109 329630600 786127521 762785365 431175164 969220543 301216685 998353619 231917029 281489434 811461928 115085831 59936898 448682290 521723798 141797790 273051367 332200058 757885163 636543829 291171021 852051318 125040341 317523299 566890400 326598094 14809117 784475502 544529917 173676937 439491136 5556322 191144379 256641312 559590163 739165602 649961982 470806816 178563445 406648629 537159935 799977121 404423422 196394130 651272173 434672507 29054845 50633438 263710056 644174706 544090777 776233923 337737504 512822098 247089061 339013903 387184850 853673550 93607371 510469108 114755173 701515507 516496524 195554825 508940560 386968845 633748043 667853455 632129487 569936581 971803234 217687995 930515968 728998528 698001346 700689758 714753188 760434910 808956161 157904161 689486000 629752163 466410854 292631954 694895624 738439497 612848382 835031223 480337165 845995515 986421536 7854751 823657236 867967261 94110419 33279187 131032648 960927804 263273591 958354063 210300099 90350934 596189738 753611474 393056866 2349669 970497816 716837821 356598412 391531788 904671857 975917908 928196071 924237007 441849773 9945573 582346579 670550587 783378169 736258339 537235081 599055223 298555046 88993702 864639636 950564484 990301606 377493438 715542849 321841360 447711600 265520802 644345416 920627001 383028463 356531541 511011518 223039386 807927132 194494147 97227826 509794952 750555563 418826620 150045718 429107928 572619326 738110949 656096400 318850548 920070270 649955537 890842948 636770725 921938058 107826746 342618421 998756971 452653716 147420765 409755423 100906553 549017743 7546383 58033936 620204096 68248382 450884439 994045800 710250843 967174560 261196561 612776312 918507721 728780173 249268205 184860500 499434670 611458102 236406282 67645708 169402495 856631555 940159441 451813511 371349344 141665591 619777060 180565003 72960104 484224755 531959053 147953748 156218457 495569517 878188077 259526413 155229135 765412410 673189545 967503513 666742931 673603016 20381925 780657786 356897972 202002202 586097115 71805345 193481955 276980314 64953457 275015320 254440782 779672811 545305205 344339885 842711454 553215078 791603858 294524140 807511881 820428637 424328072 702299120 320571955 839994725 559380094 707513065 535734364 328292418 592397086 824623198 4987183 703113359 273503864 100190985 496430055 784508198 253324922 420452965 280278196 144564901 307778594 119809690 506853878 174933929 107515209 385915059 54108088 480817056 163722092 243113119 909022816 54030870 372237927 516346144 313920132 446726785 561815729 438707746 590888894 722716948 912378354 982692889 117287489 513701102 987854784 761042915 370306878 445879928 285188090 319526184 691486587 549381813 310852927 527090266 915389538 146831390 857822757 257638407 73085974 409062893 565521980 660412363 493155954 847950938 849080581 605485199 743201710 386268077 269164900 147982680 143465583 261519735 413157264 35382086 231209233 979195565 288937640 954068625 257065417 139053233 319206288 525414141 937546013 154276095 478539558 685025590 506222374 863025335 807299022 567188757 249015871 90351217 103025135 953633991 353337616 660846533 229063720 218347191 163533811 99936728 826347641 114676257 395863236 322242418 664096860 787829770 433000783 554510279 979134643 295275679 331122932 768332786 216016666 48005548 69356552 167033612 566705971 512091997 219889306 820330392 983819674 595730273 705469938 632721955 890830855 149259036 5130570 225616989 191194977 103872602 98968572 674257211 23533121 746310470 295231708 499649650 267590303 135757990 917604553 55144659 855647636 202169564 958778799 925086007 440681254 209337269 132772839 128452467 989753703 159869976 39156510 670628012 811821835 629583408 793640829 178445619 981337833 35896506 489282093 362028112 186051768 366492186 533717729 505029022 716581623 145268162 102985204 466196071 774253679 319444262 240039625 892806708 882081720 273688805 226522392 317084641 526610395 693372761 954443810 324219475 112564630 755985562 967564577 617682983 104761356 118541256 156013841 393511593 766347736 676003092 434521302 314704063 110957341 4697412 724240373 134362740 275422299 262359574 505501478 317690461 741340784 937033476 156167980 442556953 353062198 466087313 325955025 588048479 147161534 339952766 707082104 661214726 514220198 383253631 871310297 363164301 325012543 612705923 934849266 665050015 356892600 296983358 869914037 373372348 773591080 218187492 676748850 214165862 469907747 409416403 56376056 558880583 283192968 257754925 832165153 193162289 343522320 11266269 320033855 928779842 795259802 542035737 352158566 498648836 55256019 67231912 417569241 760579447 364206399 636967705 570403110 515727962 265531231 489144033 946269430 917025036 887132257 601291521 705259256 258185400 630029439 628455401 857486609 633836921 724385079 688403125 766995527 580191647 505578442 156445290 732416918 321220951 716586393 146238274 24855289 145746920 680170077 136336206 410063749 577605132 769361785 601105909 803175381 988627666 20988619 70134955 66275869 739616467 466749531 561486884 444807717 982462291 858370099 966122997 807530977 494698030 37830702 13986507 872643202 291467039 940967720 55025183 658636946 9152067 375510380 377953122 881838378 180021909 616970406 768971912 397743227 811899041 368785119 989031422 216673892 718495457 681474492 156051888 699365393 941657789 875295067 392902616 820910444 495511920 391115896 381153908 535261126 355580482 944385908 555631395 348364204 184738089 530935522 945119852 954970636 194180995 725572198 93355470 271930149 451109343 225855431 88165273 427486271 542080532 134413339 656777223 602323086 314946337 267940407 209305589 565025626 244232341 440576784 874595603 975554706 40006596 128338611 749532558 628368943 878849572 212888306 99082524 572964297 587217749 534017998 662926103 396087294 229042675 370403935 981515843 811951223 27571990 222131660 340027824 940241923 400472642 35970534 385374191 349622915 980808705 431102181 885869497 649204775 841652900 750517494 291037198 552261462 483500334 739352796 63057252 840834738 448434770 275340481 563273205 815345606 622488517 644404060 89972148 867070902 503536612 588360066 825243926 639040614 376037819 345702024 97581545 532221239 114064453 692030806 764925419 64312442 497135926 527451346 472255119 422750462 966374812 277981741 324156101 148584795 672999574 148671620 324841098 94482708 648797159 179670541 450292774 649493927 995162685 229481980 910320037 614026191 990799021 767437390 395971760 273892304 898332870 650689920 312983722 584330451 959111952 787225467 945787513 648443128 256416272 113001613 684926554 851614206 971286361 388218289 13296859 586848973 953705975 29983192 869645291 886241675 614825378 255530388 395234663 759547617 380256787 15286447 973906128 664451686 295340568 595507005 140258865 457240349 263589547 96104948 533328341 22434431 511013379 886047424 146950453 131150966 43779878 224149035 167938969 520768762 623275103 841854866 980990273 19032933 538869407 891662754 522333326 542795437 862499608 218338161 622494986 564472160 389710215 706662427 661037778 500420384 351592258 490583253 216902000 653974013 564261156 693838165 616186649 472554472 673889773 627297120 91687449 355926472 278781188 163286240 92079846 349746653 458569090 837333763 884431871 90845906 161949838 866429830 507684101 70877170 12811626 122668504 3260538 604844485 643982179 619201285 361434027 808445524 4132449 83683366 560948418 638495741 5131394 134976459 695968119 83610462 596326195 588068492 301686117 584470264 28329912 759600048 796798011 600941098 873535662 864233329 33768465 90364056 710778454 835636266 413437552 379826180 216584950 231157439 339108893 41893459 283064352 416917288 247805054 720797527 569982548 9737391 257051928 333834362 942031163 136205803 186272505 842862206 311426798 805220109 640789657 397462767 457130407 935016818 120324159 545027051 903975074 633606873 48159231 791186317 917084266 917663822 6940462 258789399 273771659 261496023 903517435 306964316 973742441 263980814 644338128 999150840 616529714 69982303 403100094 467515774 450457806 352306057 37110344 286371142 336805305 120816189 33748292 70895571 666861765 846585563 765196693 34540220 519749226 484773172 363534499 717928843 848917605 242674989 368621083 500164649 942294387 368760673 663187420 42207533 378247379 780671592 828479335 635842284 322767184 585749724 742077946 401819911 952964293 639040487 140461401 673861973 532126222 800693107 875864223 897814076 593780128 233207539 360788301 411497247 807253221 252590604 937571189 167434602 495921233 852233979 343945214 647201581 52096425 487220353 757996185 876885468 716020427 522947829 414004362 343481534 863521456 787663665 396986650 35917635 920052678 914385669 886315960 590974940 443399695 301751309 396972802 295903125 833669295 486918971 510067844 600502283 301305218 990555872 837528594 567212970 659043256 326919150 49356694 984944084 380729580 9324444 938063575 406252349 140634357 979420343 666506091 609498967 384040499 625303102 202690753 228291163 351822986 663440422 67737585 902425588 161822760 696342568 146262289 548992867 666115043 438059296 653264525 646157376 262543458 10951640 796614309 969685429 966791096 677192103 834757479 94965646 709729520 680340509 950053230 998147751 204009369 806893949 858252129 897888324 460643190 356275967 847428239 507177469 904187836 338746040 385796506 547327207 130635024 460522040 319622500 424219083 317861906 150922759 483557035 796330303 232923290 547403032 645906837 447975546 622060695 183092685 399813144 313693073 247943085 755093925 900970530 613718090 677150094 323386280 609620370 220886309 311439090 26366184 478700063 866857020 797331434 64503990 283528414 680960106 774918255 495923556 389934978 799227671 768936572 38725559 4124633 401393155 891437043 146700156 139971953 162749786 245777142 138839025 582286186 5873698 350646210 526867246 386674896 860049967 919275736 439450629 870918454 343273928 920810238 351084380 708106602 127201725 456810138 229689149 550540019 313677499 992876695 54820806 329328559 420614454 124996139 680260728 837888909 650470193 926699130 544127464 657302711 592067770 3179370 644753768 828321790 403801282 919896492 853257051 15111406 741850042 711575602 572332070 375828329 539520831 597944666 591886190 506071441 96041065 80287473 897006694 306534677 860347399 484247520 857838053 198381089 144470069 195432836 311536515 597377538 748348349 608511497 511294063 497433195 149994559 388708206 224180485 276931773 568547804 729638081 445498619 269694565 79849851 832616173 928542821 108024895 938690957 548330165 246898732 24168721 811181465 832446394 697148038 855151193 154184412 294924054 686685145 149890748 103583857 467652740 127238689 279486985 111417498 433062012 914249401 604130357 963327901 351636660 242274619 122005208 156102533 998342214 922974526 160106688 735849308 144400782 217596708 402666449 385840308 208891695 711543009 407086174 304585536 50157931 449337838 249158212 399141858 412179311 222145169 665633990 94686033 188943581 912572521 726690657 253612657 634127272 615418600 786702436 631339845 685764595 365197334 93596887 503052304 696474535 853028163 771249198 217421595 919381953 370264358 748405835 925787005 775362023 193456535 975799404 762728205 487473383 4255238 474132250 376899120 439378216 376492959 742971977 546394222 660198717 960255510 727829539 781028820 468090729 346424024 826944600 191921083 833745195 485020509 193274441 732409937 400753206 264723812 644686122 797645605 245237934 802313356 699452072 910675250 660446913 383673990 130139088 587569653 30487554 380481717 389989291 425502678 860434345 702018732 613644726 377864077 282527631 406385960 353474528 113168313 934429638 442991861 659080493 557159486 333936896 14438290 850102838 982608917 69491835 934096757 763516127 566730395 192377512 443019504 975655192 683763636 300398874 367652685 140597280 94360818 490544272 146446339 687199329 571955616 622874999 385896529 925431019 630037456 272448420 481372245 393790319 519550659 44736655 408074663 728629205 387427340 449108221 49706594 76671167 621174370 325487981 923850934 647308793 692038320 337920827 297878075 202766115 819113163 748273440 789051691 152078024 368694649 45890868 607246068 795830905 927385442 871171914 265982283 219018744 984271867 169954139 267187100 617788580 853230283 51211256 499326823 396133845 240071743 649012127 849023777 524628534 39031547 420467769 403165973 850168451 940690758 290504914 617390946 997111671 900523734 427607999 957524637 748261436 94070644 102545676 213320961 783798308 981708287 725194546 505437734 167110827 851911021 917056522 713931310 345135274 57834846 603437717 725350626 297188991 261986275 976166226 445133462 273836369 153656018 934546535 482773545 889589692 314926554 193700033 533915784 406297094 450054575 27221564 22021320 297533275 28590502 173388082 282092718 998137740 394499716 726298852 68160455 956354124 874048301 966603946 728997772 471066043 108546799 702416152 308010713 991984746 873158110 633097026 3120234 122395467 239323560 873156186 467270917 263506798 346454527 128659599 792926253 942393314 103133739 651837553 707050668 38132619 11011868 434307338 103683277 521821809 191768994 946668575 899575207 745103566 106790761 540330281 620932758 961570078 703293163 800295308 700746905 700339422 997058529 7335339 165423515 92542998 641769108 63743471 104707333 986381023 307945634 783821118 889282799 72388183 417521182 942266948 155935155 667536078 599463415 967744681 334707593 572662453 392234715 162881046 954228396 690657620 371555535 745211352 729192704 689167652 576512741 826412163 974740748 413428881 442121948 832662674 112036891 8503512 673162720 523221582 51482673 988980426 596396267 367319595 82874393 90595166 822850947 253563533 331744967 306761800 297379161 666046629 660813898 747289908 736546027 98837120 349450943 311847241 461757489 219004359 749519571 236801687 749656269 320376748 148022536 363517462 767586317 529069134 276960310 723828473 677192990 37485828 525735473 633195997 909991079 200112829 865379730 790639093 356611575 90208490 498133470 424087083 822662544 625112149 128980872 543293284 456222205 966315456 744292214 599326267 86112169 462866976 839421823 743297723 123899110 497391350 249243899 623842940 295365790 994539414 802940722 158772995 169638850 616597064 62718968 731334490 524555095 735587339 353969992 725885281 276580529 665271752 677528056 196892193 556786495 915524577 2628953 438697468 959786825 770050487 85265775 547116736 322083095 268213801 389226971 51790918 863044614 225788721 865357048 168451164 819106131 978512291 506421372 189551020 394823025 179300778 367691295 907225578 899467623 101807653 885389414 29491510 672053590 455737861 44629561 599122563 452836507 943329796 147128098 18479454 295364312 836367931 497828016 38739170 831040354 752228491 378374894 272126682 677035983 585094394 15059409 603640182 301488249 856272401 220632703 895581884 712380987 863969033 665458932 943114884 372816712 252180207 117083226 966012127 498950867 930955383 727836122 23931676 529967414 206967042 125939051 208893456 431920180 285150085 55238280 445046203 165718012 294688204 871448877 23296046 337882882 416716489 975007503 176083474 707945843 162829773 986711796 926725670 941979816 123231177 663002654 278516792 89810272 82791822 460362106 488427999 161270916 488697048 512295284 516742601 362244195 58488430 880126443 954361574 678126181 332757429 324611358 303012848 957672964 719080078 694509179 173768011 556809276 665313892 75971164 249245849 349548562 225597943 76081918 509547545 367511429 704080387 231903199 936063709 16107659 598317533 791813815 460618948 325878373 171599148 575386911 802413585 285835501 668239751 878467816 367286747 847729958 59583690 756803372 904016843 430439087 585119362 474325836 564651247 635215111 800756493 824652385 947790102 281443232 190852101 559620152 538470000 258110163 243080430 28677879 481637144 739910674 840524217 844796669 210626045 788616788 851225213 952603236 634830804 343286390 46439939 35701588 334251200 343937154 624965345 794433149 789135676 422044087 655033575 667884236 529072877 385303519 283124976 377809069 598079304 416402459 185585974 712008528 180398243 63094010 309357401 201217381 563594532 776067122 716088608 379396771 816007466 257624108 986803142 314568470 575097852 702316540 836838830 506037643 631695801 507926596 28195609 493625540 789191680 458489235 904449377 120822630 990588924 526945062 811129610 384104692 668283832 75816535 489632526 343441880 494968427 372748510 686404106 17564095 872366742 659171671 377702955 855548597 480043590 554460846 996811617 275310649 417116466 429768279 776160056 557246277 226592076 455226356 32204385 216930585 788320055 689028711 291801306 8685150 183322192 632627191 18414405 396316767 901520090 622716612 740543949 700453813 19570197 105330623 437390800 370577219 941865974 455314266 855458207 376557490 966466499 128755624 35665755 82770505 906337206 105017409 140011888 178789377 881837482 203793072 306543494 871068209 956817415 461843311 370969254 458959704 974504158 347777180 663596851 57367192 42596569 880848186 803412942 878871621 397847166 60679761 396371301 502910710 418001243 517468342 773523703 72436699 458720324 571731429 156714706 257296848 336157716 48132682 976330806 612648558 479623739 115578445 42116168 829970899 946490431 194081406 64927815 592560533 463107392 550704694 621298238 849502906 19760164 124388582 776291331 896969955 537908599 603853409 229427036 778681548 180850956 823140756 32678083 228760805 712357438 975077017 225465309 706527790 891515655 831590556 963957398 970480315 728651353 232251510 29381198 16713173 965906612 454828585 415880537 375587376 323908545 510541455 643509945 977842216 319608619 694667350 968611680 993917981 898261243 587401043 736218990 10769766 30145451 414020526 716355891 497309192 897569825 799101611 55241359 958148571 561964774 449102398 459479787 839908159 786366495 474829166 353397223 451286220 140986424 445928536 158503367 798162780 736533693 24250563 86529756 347412035 177291380 585552112 974339559 857721862 394799208 151861189 661465573 477463744 222464076 774810893 65280196 27225051 225864541 367847516 848628989 349171391 273682607 779903666 104986505 681185534 431233429 878628142 602958406 692741866 565640709 811817041 544806134 96647371 167989525 512219448 366148229 58290793 1922908 708683472 719498243 792671999 863509661 121935999 432797859 822899297 156462175 569664705 498187506 717411993 646514499 604567148 583799811 752391052 856844244 303306918 478574824 778246134 358095315 513841828 471464961 792589282 899229043 572827364 474327779 119277863 821653465 625774944 138003843 900699511 253934440 756181603 239328109 218373335 153665882 729311580 658221180 791220404 896310170 310420900 244598215 415155323 339228828 652851676 227242895 514393159 264298084 637685417 555133405 439633737 574419607 258860186 420976180 129443002 4444076 869995837 2706598 256334426 381143762 38347945 661693989 645428363 595852836 978845632 519295938 231669630 154572177 591641195 910837326 968555485 489289560 518148587 18834269 3004947 618664135 665281324 767982474 523418221 671200292 721106454 27913189 500349060 439492330 208153652 534129194 202504128 98288045 877399349 367029006 433371833 10123930 392704306 344025225 28808004 595277527 285929258 905319921 533989917 122970286 458171792 32791045 427303453 718257256 906366995 368344892 839266191 112904333 283864699 27804107 511131028 144255075 936050724 353846287 232024957 878773138 747754204 854250803 392593259 407819455 857295806 227271210 162019933 929860300 696640843 247151638 757129328 82478873 874458951 199624724 110437472 680692776 911553499 311019680 178449295 191119140 268789893 974560627 919412227 974313121 87100619 226359162 311958409 484063178 606880797 615643090 490421536 935827649 6849125 544685246 535149980 271647417 407674677 745715920 136863929 680015486 610058785 926568562 990658814 466673154 426226839 487501034 448313454 319190521 805559776 558701391 284521379 53892186 975085693 48271878 655148157 927436830 30998773 2329273 102191120 317998308 41533078 737504590 262401456 942142290 540946109 855244380 543714812 980561030 859944264 675945336 247724391 399556108 335978724 362225829 614619805 573611637 674271006 126647549 445073359 448920366 854986364 230552693 94253042 536523082 187837780 967604679 323445553 403438303 998581401 274455283 235816100 931187303 223298163 889247799 402226998 49040683 692805201 521719008 744586104 280794224 168045083 746096011 633297057 766298479 94867710 302480571 686914987 813448578 987938626 942747238 31554031 52484870 158749061 841579984 680174040 5057757 277458767 19338523 300370402 355903469 330755133 765468901 346410605 125619959 551876771 770932998 72268762 455628446 599510124 590865092 158347848 789072795 16526307 823001528 98197261 392064068 495381557 988583170 149645543 423984247 26804321 82624696 637611679 757746718 441000286 818423955 273889507 210438454 493018759 216632970 73137542 769104738 342182331 375273352 520539400 571936330 586600769 262295139 24460912 905902572 352683946 343444192 375423873 803766337 427173189 693286157 652479414 148652270 842166119 288607133 668396722 637498164 696711258 605147922 85989651 672835437 374078471 601668746 295172935 236329383 995889978 478539165 920804304 183338664 814382563 680072894 25676304 988075920 644914950 780400360 207084450 371576732 943591656 515726362 915537082 529008835 438568154 822109781 34270502 691535969 245378329 735375166 283056021 41160444 396720079 339878864 586333653 616674353 62331249 77372564 403409470 426253870 323176068 968864281 726448887 998978487 123547380 835393300 223846347 294497065 240526414 350132405 497126028 82797784 764654984 85495969 63454731 381519254 954077039 595695091 632410321 592432295 768323767 824473645 119364478 872190609 512226315 211878093 186814660 208188311 54680407 380230753 33630821 947371473 830549083 290913610 684324446 455805112 413813073 678510624 348665334 244611899 891776922 12064509 301839461 914916418 431469536 165807482 667797644 103966720 116964842 28154056 945085276 205471995 700191239 791739479 519854202 128696397 126404804 104450931 24776725 185215956 298099769 853827543 716196160 10008788 10073682 209452201 766468433 726291845 8319185 887225373 648404232 207771602 935351331 515850029 266152945 359177134 141753120 550648068 554468428 808466082 5305852 707419677 80650021 487901944 850881978 55000845 397075308 4047320 795555538 290121445 950294972 835913526 302779897 665679986 12190564 992496166 293820584 185455877 925074746 669799077 28814803 227502504 78447919 247120037 680500560 234646084 956390762 80058609 458932749 983160087 947562795 224526977 221892923 718898933 337354637 254429159 202414055 536685826 613867180 826921606 831850402 492238368 222644247 194307090 554012349 92127144 813129991 339565134 449780220 120325710 526235330 704501185 989493524 278698585 824488278 541553971 412248647 242169517 619447105 450474894 36597844 833411249 142087355 385008521 517686793 254782812 370414228 426299963 733328940 531338178 561159565 590790013 770729059 725686667 283457876 859235595 337025760 608955953 835680081 207710759 153119751 598415735 217103245 356363966 898961762 117520426 736168288 175672931 966805442 778330576 782730759 193068750 839354058 177873934 654576209 784386966 220269984 209934921 745954732 254914419 789868995 286542944 547005981 953847033 417989648 763118100 767590572 511773818 566219761 239380102 131618269 436375243 824980458 552686474 914311528 84275218 793264045 109176448 823252198 573305651 650134205 176159050 226830643 601553307 849496449 180906382 86632436 883777982 549193467 451615322 361651230 961412005 720432130 738031697 71016434 633407334 345374043 310495831 55672427 167001820 233104773 871366372 545309294 605039694 95556996 858029035 499151892 341444951 319336075 360723841 994157079 148220592 254528326 609358131 953850958 483969458 284105119 480854075 976924773 151433871 394551727 511665625 36820667 577501030 493195200 179500933 870473940 683706716 820927252 132265220 585136472 234111873 399519001 857934534 778561035 862789698 854407612 869031780 252749705 75329116 576120408 866379422 265718877 565225155 709468303 796800312 182095322 220494502 701029183 841434017 2748536 842908303 822329253 679831386 945883608 50281417 377736483 817200300 639491638 486148529 48675090 187445873 314349155 368438342 930397289 788034118 104162760 11660399 978785764 367648142 282581718 286580751 411463852 797629815 217818463 203733710 889618705 598742353 399803326 979172773 636662837 143462505 606282606 273016737 339099160 210804647 939478965 319419285 854054404 834202681 988614138 640634771 652737142 907484643 532058182 987431010 221300319 95377530 707376438 29426789 232492385 834383159 556096424 658672526 702698835 826065913 950010123 656203029 782855570 100512146 518628532 871689291 541985454 617571415 233030611 985551896 91375054 166051741 934687847 9989160 658235034 791898852 999097719 624324250 605737112 963878214 779834133 861651589 191682725 950763691 593518730 869882874 186849263 450788535 239585585 855029587 813200431 970059446 182975020 975424110 14024538 638575013 479052781 587428767 818291906 23434979 394775578 624806433 635043006 477214079 421305517 951966037 340280071 456580150 603575451 899463681 426844994 632212949 115844864 249998421 143889073 396781446 261199888 175916496 821534809 271681524 592779161 253287150 10796471 18349776 276871404 398193036 541560203 213081234 305120568 353847838 482575756 360878142 129045737 243409059 54990747 184722933 842400966 865089902 589976280 403362797 161677499 563851792 290745873 107702844 142107945 479509437 246912145 281713806 343027984 658905071 64253553 704165776 683015596 520643635 102278505 107298180 905859627 164315783 225508356 950648903 724017755 235543186 104951937 656072936 762077250 184748051 573555659 336772858 7942359 676651907 186301485 624108874 298354224 308803266 355638662 76819843 668589269 449117388 673665075 707713245 746949117 965034752 15126154 207702017 741959271 680061029 907129887 578250119 667154154 541983210 778614418 765896912 77649815 614289031 172386339 799508005 980562329 831769420 721538325 35478655 153630677 415840650 354444843 417411722 732041650 602916122 468390798 322181564 58385046 439767937 652343566 762328315 668183684 854399620 894158094 916326538 229774169 268828456 400256336 842602228 579419427 619868759 665460272 938699509 288510170 669515322 501585685 295378051 148498778 30990476 92118974 21956858 798244545 94793118 72711384 290947263 71813901 743590078 39688685 525889506 245594562 93826863 351174082 762400933 441784032 709948473 182258249 941631688 139376214 703004881 914470392 672568494 824519830 368046252 474206942 949219030 980486746 198277626 607043949 943294920 641605008 964893366 822070021 930174091 519715173 753330835 391813103 761642800 908727967 738545648 240548110 227874354 862841734 5259998 189067832 976191365 355332167 689248188 160164973 514538220 636881171 608688701 281739180 11394896 393875842 643348545 383149531 918238180 161130196 127960669 340428834 501325413 266809885 349010819 741483143 132300333 907965136 800682538 777337700 873435620 57833162 230568623 109265623 136092289 370388714 227279784 227518710 702183472 175001593 171980499 721496944 676556302 843773138 347167054 755214794 972568529 92784707 355873491 61383638 432119193 711016144 586761911 852054122 122543678 60405602 892773169 286406053 478213525 193079213 690145221 276974230 560069675 817221739 517730865 60232454 865202391 851570356 969776682 167242316 15061912 446828960 877428804 1788815 878009 259601658 455176239 621454119 702375457 528663074 212122432 363699446 906152649 70122875 358388985 495880402 16699120 995826795 359877023 112188494 180296347 284355605 215980382 96864088 400551072 94731355 610336739 444947536 884414980 811951244 687927204 103355377 403271522 581871535 121201733 865056164 43539202 713156584 957528865 307682275 315028065 175379406 166610723 334300416 605560998 626983361 137704630 616582186 218531130 812547 866968897 619780779 143759176 118255423 869217554 595199493 551037523 537552916 485605689 419786515 267435211 705449557 169318584 173327244 214301115 437432988 788371748 855062394 925565752 353060362 706557320 434794546 587493534 477520080 518482280 648695341 70940559 856429380 748854527 536738227 425360338 344319659 727655618 428325245 435560369 659296637 266265652 80366050 687400860 28687672 679465695 402862909 334966136 299895302 652377066 792614059 153745808 37871108 369939024 559627869 754879535 320374363 827867470 758971856 79750140 864004653 947854070 826120642 78443582 621603845 706469118 963830258 270327762 689073529 975138259 346142104 746822326 297450250 607752107 641356088 863776844 473979678 551163483 857770034 96774091 116941226 701267633 66830299 945535225 426394412 607158938 662803942 864449304 322680476 660793317 322204608 653863782 785167040 786506886 387835131 730617574 297581809 265826689 922384411 362628129 992436031 922057254 647913311 535633319 458127975 408706893 975231814 461691061 61972606 481224992 509716269 147160747 36655987 742357904 660607011 326923605 882885001 721651297 721404597 855245199 110182554 769436559 293955253 24252779 915098642 969605032 444730829 205012599 520776770 764612464 672047061 872334653 844547034 451688054 153226900 844650326 733721477 332303312 486886239 471301209 378411945 525820867 925683075 88759982 363464966 790242594 743291936 849157907 791434615 669827676 148137388 795155069 128726603 746210735 828591182 131455031 92415672 171025053 959090735 684010183 466327200 818870799 742636865 648268264 489013740 577127554 706345609 207016932 194202481 842555195 977270580 363196650 673909843 193797417 662212135 308635084 516086279 138649074 870117827 745217159 277267231 549396560 610687138 93100184 481884738 594186318 704690136 64625214 932168724 401802253 233632913 910956990 864372257 682774433 663340181 108895124 942913778 461336257 640923912 820961505 294455761 636908213 428238823 37848230 823238444 957219629 337207475 237391355 955636835 550820932 997579640 386479293 532068624 628292484 760702359 471098466 892256664 462646138 205146492 13043644 132830564 318695919 566476652 37354572 17626620 712925376 725112008 609459316 25838983 433516760 874999573 626578001 159960120 559135553 419963587 439030944 40150211 703344207 461645172 166543217 391863302 13742362 510281372 390310971 392965402 275966273 729582619 860163645 538841313 927228706 234766179 725411749 933220490 716824772 541088574 732011902 845388031 622470015 878547482 277396974 168630843 375815525 192417118 590410101 940418836 291089861 33772749 933376377 333305684 915578814 269355535 472068562 919244604 917079617 323236081 972252668 751002355 57032534 553339384 261388227 14895018 808411450 448552372 780467497 359195780 968114258 896565514 915104775 708470446 872064688 421019803 459182404 486134018 564761425 548771851 61688118 666081950 729721212 84733062 78674657 540205028 302617042 172038357 40918935 640786092 153737115 977527956 888088425 873654817 529645314 898682809 56365933 939062169 878845231 472843274 656249628 937294086 220690953 379800772 648807371 853383547 775557587 960544060 562412261 504777176 957647174 388997204 885555620 769003964 809416892 104148158 286568426 167410735 40950321 290608534 420370176 279322605 993960953 732829082 698994872 44355181 366652800 777684694 144864973 418476184 338776398 196844501 609706568 524082174 862854576 170692108 519023367 854356533 295279645 954626833 373268175 698459060 568073413 509154340 187276480 26714555 714752421 761932028 334099120 79639962 123895824 282087543 136814984 388250034 754396110 599074712 541360237 25816081 675333181 711931466 795484558 446989500 969696663 612340081 79591643 751458650 586112850 581672669 38653666 716913315 333121244 991213862 429355306 884999055 199975657 150662528 772114771 423256230 104089708 501634515 332198896 234338061 279370278 82714828 650222274 997700682 8147813 187567722 256246619 92630795 472369269 441934034 485737715 599560382 63184976 916846797 642811493 686606656 606965687 778043923 696592247 904380176 450704472 406070428 594057821 838219965 390337726 219554430 235061259 139796874 932277218 893088566 991523579 950063693 448941626 87622682 812424530 307686867 992624393 221382437 916884944 91111803 928210354 524226637 26866862 359276593 88309277 251914850 899772605 239723543 444911159 760629262 510700368 657363593 159655436 262650853 221974422 23204071 652052611 156885286 877848463 485303684 617281294 850708999 419246994 948962708 895971875 870103103 794217499 907584894 370832373 866087696 523932987 296096299 540914638 965751697 688941273 387625318 495228393 399793541 295517259 928620315 655542214 458998810 883377363 291764051 406585722 156220512 748109259 195828864 112490880 434131057 561517993 93834795 998262233 180921966 409740964 321824727 907985153 917481745 554007696 59001076 86583873 419698774 204324242 762353180 196778780 98776832 181508380 623600418 998603676 86099893 532323388 400700174 458283030 885348188 523690320 116696697 893090124 133969380 958697568 431726120 268545343 915735468 581159776 894192973 298615765 444769361 413918179 576673396 996095015 952834473 745083016 691378244 573139066 327160461 632133549 271449663 152499435 901190399 192558180 901353983 114904281 288256702 206931300 588288007 210221935 348266337 895729622 448540100 713103801 660073522 837007556 62952623 393114696 34537438 141981750 477605634 534913882 392932107 39902096 795872165 893714490 767180476 78676779 679922457 799936400 774002443 645847118 2042032 601688542 943436931 944006561 36407125 855467070 693538357 413127593 927238205 618493223 47861996 782259371 965416462 686057925 664913450 491487980 427627194 763102351 534321896 871384664 164870088 971388533 762250956 683558595 495955742 880931940 317553029 167057069 376460287 735510716 379088453 180036783 505374099 219675248 896027865 401560963 59638213 377327592 687981557 437636436 810156950 895756670 536070490 825568220 717648333 340429259 265345603 795322279 677890273 34129752 478112845 854471823 770177298 457827137 876571765 504227383 852554793 1955403 227943899 841981884 314401642 921473969 621732344 903869269 620335709 358923016 586965001 775097821 992018654 801654429 266081837 293729667 361394694 498574575 449223714 241916685 334916967 255703280 824458141 561532973 177296933 604440702 349544325 694965275 723844337 818763248 530026455 684396156 707658481 574368017 461690457 527591467 749651064 180601451 395669347 895534474 451109453 56988351 549759391 64604924 229210302 437325250 403307197 377660459 992579210 532687199 977319547 304000662 485092877 672965177 951827735 192774408 728950176 751723841 841309776 228259902 390381227 769339193 312378018 25510903 690464811 712515480 486543637 839817824 430851699 326958929 924924038 514427500 60849496 23961664 51553682 889572627 677495059 643454620 294477508 851128359 972647427 165205937 374660033 308465656 824561656 928376582 64550781 481140365 902411446 672771749 304319039 25470830 894427404 702862402 780201077 165563833 785046612 371703386 826320692 689005307 389921355 614992884 935096327 407266352 389168348 559867102 348395684 69528256 776384372 936725560 593297598 679107928 935026682 450648628 843663365 277132592 26715163 145047965 153681235 413490400 205248514 488405758 685115904 450614715 853368087 410980741 241990780 962699861 150903796 335101218 621172373 376850341 946718956 440566710 264142404 377233759 125546318 248035869 95263081 106592684 12579109 962889827 757018435 627001947 378983634 145376111 271024084 816458281 142417249 94632919 534226991 19128416 758945968 544921156 246803913 103326707 334010950 568860086 408337164 245776663 987226949 183166671 160872131 936467458 755655345 863364943 266858682 861393884 332906787 774905475 460292178 109258118 474045324 2251903 596631287 22977903 653562360 587617162 88973702 173352129 816016753 349287288 108160189 66474140 208073138 500540174 760273882 272945145 490906036 486228136 128155637 595263368 794947353 764828984 755852812 628546593 789132880 789380423 810461095 643558429 245074383 969230915 88204303 537566009 439995350 108256615 310408424 962051835 379088729 151251860 840322830 73118942 296050188 340676774 403829549 46994800 644903254 596366352 528398789 855434492 697296107 745562580 735688690 314473215 348328060 195692313 742086002 478414550 417691586 135891495 150569329 518685605 337955664 921441942 28666288 757621216 919195462 297538375 355028248 284401318 600694488 437611020 250427998 298358587 437849360 858356633 944254617 952922508 857848879 260496467 918616959 145218557 246832585 196961021 898132263 167998557 165417543 547348532 751957791 598267772 213717607 394084174 905640401 182045370 222191688 95198020 868270444 928972259 977982643 534586377 754482700 268394018 707052998 921765383 160342020 379581202 148512116 301069899 795248601 618512792 688743824 681085017 838448726 373972373 485561651 243957583 557563709 537743949 692030492 101539382 651562336 236668222 162573479 604305599 159343340 373580085 65332231 277483352 647013472 26442258 123579013 440479980 278363748 218020095 520849157 905105464 591780382 826087625 893413607 656061564 987548824 418895646 808999856 590187237 922085115 771565989 451248567 109475865 899739551 358448679 952055240 558140070 600733757 15619359 251775750 786913047 346121248 571900971 991943853 910172754 563474624 568958058 993624369 155565625 354602002 46883384 320147078 151198952 746883882 57224185 849590158 832423112 740508625 915762319 34783787 863238114 344927505 379836502 512826356 472836111 721756246 927529760 955700655 901719616 140154135 178877718 991999272 89176961 927099455 748981359 550546801 865175751 308182929 929346485 4145313 302430181 493887219 960733949 675041629 550809379 337261739 138502727 50558911 221920207 271219403 467842384 674056161 788720541 423507632 940995243 705763978 345296870 653395754 334161569 16272339 999142721 211616775 677765637 980948096 692476471 994998093 47909082 490027104 206999089 758921630 202060442 830312841 468783006 580924551 131391461 649886569 489776606 423391602 584873775 581138217 326415868 477822728 197637399 896864471 517483285 651419146 527389395 434226209 642310357 773562574 591579709 227286368 966497347 795454214 153321219 342186085 500950450 152243616 541164000 809884241 896663722 447485973 625029066 549025863 314101601 272342380 444831391 348536536 587089164 963705138 29121442 589006897 909453335 244424819 113431115 242404312 655649462 991062821 367862391 763258733 435776503 807398008 640283794 267299737 914446384 76765144 335942547 533298065 244325362 4581322 584144012 814229113 797464008 872033128 811756694 884469573 83152467 239412216 626224157 362909098 530249881 834069425 427825950 531458954 154882499 789027925 952603000 266713633 139116400 985878964 134182969 517618850 992896894 525248098 613285342 417250240 835174595 647621648 193795709 967821510 422219334 647422670 45497531 186424666 555969541 514240151 640568400 193205017 588351534 54417908 450811117 796099921 86833053 56508722 231034716 290201272 685185235 547907182 836833377 413394767 767347844 819739550 25815895 966099298 181222942 371162615 248841608 912275984 72006897 489425891 608471622 488032267 520315582 510395758 151641142 597649402 833388709 587532633 625457219 810239723 834902637 471413465 829965613 398354709 387894430 169651707 287907346 27255620 918613373 791961986 478604774 263295883 423081602 283489595 15538604 781688041 9037969 65976801 140037797 632237707 429778200 440875613 444732249 249783988 666321053 109402294 966384365 165591713 572216037 373593634 54049088 9207828 323273078 472144418 736150088 424649096 442371899 720923659 132802894 945362845 894547294 537026412 22092475 748160778 391726179 441637959 203056926 359964045 824246167 142615063 930817646 818302448 618235278 323464367 77477136 379189923 827426875 866238512 177799155 131256545 392905549 694121552 202022271 336275347 254066762 623477441 180792364 469771710 969707033 101567155 45544381 310277888 931109863 381129410 642861786 700823252 629281569 807204483 489269332 170607471 595906923 451342042 671686715 837153484 465744579 564458540 356164454 653139768 648630416 110773319 784769331 232169633 799236719 23517663 549207265 791159988 568609822 278546329 458943959 784193430 966948638 4881027 595056041 971623722 778783848 882501388 645617146 810428022 105397639 624405656 931705884 222020364 787096317 921267516 925964957 544449898 607946563 685007901 306357664 259705605 468399686 765832718 793422007 614807710 283258626 121218253 199974360 578937804 886750558 969957579 431987451 326753636 796783118 57398995 184781206 620936266 504709187 386375402 679045341 50712285 164315433 178997539 615845283 723489581 973526923 96409289 458146704 777327717 961650878 971169399 389013182 875537836 175966320 647290856 15033309 762847734 452210586 295505590 836574497 443985355 722421741 360192105 376083489 755317221 668515198 407574558 148974993 389687592 305875 159553502 754354075 259234733 242508047 407892054 590071260 146662512 639605663 686536212 229777055 974190902 525576796 476838606 583976054 711053531 235619516 835254558 413434927 596872792 82917330 149367040 105210288 43632454 495815057 85779725 213002140 369126107 450662971 359816555 57937653 681668425 351267788 586409382 716253409 515308371 280807465 80426296 356555021 241751261 330954321 90797290 87312532 274656053 190769100 598239509 632570727 853756181 869629658 808210286 610401447 21958671 826885146 996454929 502966304 985884435 734005241 633522457 682659830 488962725 656252714 328970690 80714901 790671177 267458094 74000303 554569259 150003920 792102007 757397886 541188244 193536884 645454770 45566575 221880790 123373010 168243771 561449562 510066716 177172935 886112034 59140403 440979964 438480608 823121842 536526236 899246793 609338872 627908373 985716466 448321844 225452742 201966979 35763893 949500930 368978879 785095418 408044842 560714538 812188497 417838179 439309283 267942813 35264010 622272153 208668270 865842114 202324779 958849717 344150508 156661097 280688638 721763528 73243398 423869687 921774056 839768594 546597862 650197410 1777129 981853423 914246152 234487766 341339981 434467514 233822499 615168236 819555346 651166795 802528005 829831786 315933084 808131960 615219565 183006490 434187888 519751977 721748655 897556702 26358395 10017783 108974272 116379944 114262729 828035945 580634200 417953521 875162364 640144344 399900524 948013771 769789598 143466444 926023458 963223599 489700209 126734541 913028495 73446641 85997503 583596042 661326681 834082947 18330955 566154693 82329274 1126781 806854615 810331998 332307565 247870347 440834272 597183682 990093366 255862199 638195680 568470812 335631653 614557298 192073146 901948478 415054119 819827837 639236103 603340822 390493084 566278625 604476873 551822215 437088826 30344706 89484248 689606407 518047939 837280189 544379342 404255651 880846282 987103785 629919919 496909788 958833906 252003138 232387239 396539811 17481086 488714701 466459295 641102647 515858732 904453291 375614409 142109683 284188169 714839328 812985233 801723704 142084214 824418797 718025860 545186044 717728032 944347239 149499901 342330057 321340483 308816415 180576063 552862008 341508506 109960964 971952836 875755441 429194729 640884534 483713110 305289845 646473619 927157878 921245012 597564016 388733291 547331238 628727861 513550391 332493570 831481716 23449059 465944134 464260053 963829799 578382086 746490943 854031366 42113845 797779016 694967469 57786914 315970312 696627272 63991083 199493132 968134942 301372973 480535584 814877105 318343734 27314521 676696569 9103502 483355804 10291085 903582143 274379303 68415062 945772321 387891260 124868625 927867248 276277621 454865063 364729048 303910331 779766297 455950803 849729318 239762297 296184626 304408535 807032221 580194860 366293120 904712327 413087077 473423673 900995506 167158464 339527895 988392278 63029126 292370773 510707528 949542704 580178198 838822246 512003315 790415565 44814131 956843998 402761865 218134672 809592799 568431796 482033142 49883357 542212896 853009373 441629117 458055364 894815237 723156477 968135407 78738848 283011818 54822455 198602207 923281169 660569639 132839020 672260455 236290463 237072912 127939368 418320323 294691030 839299933 256732794 848308174 825351583 550473643 729452929 741726151 120627878 916897092 315455979 707643738 600796838 372713687 879962168 121362946 491253056 791201043 814712570 361875286 694759176 972478368 860298309 387412645 945623282 856308040 477031624 614894231 169704698 451035986 703901550 614339916 331280503 334306009 785184232 123966750 427606285 740114238 245704221 406057708 692447364 271017162 89486623 889227852 165084867 784585544 448276456 812656784 889189299 116535254 924128699 79467034 269929990 398191305 713168641 321534646 129281686 367122135 224363465 26845776 896734526 227519346 275780509 414674513 489669157 541382277 224845085 370789279 135147493 65878691 622951552 701274791 459316569 301271084 160446667 723027215 401379025 840514835 958507011 943634128 375471448 738631732 242412021 411820189 902586651 501445793 894479113 878937901 615501819 781176883 924417073 941995494 757154316 172051771 386637651 89482295 769582096 679446128 922416878 408347897 754291900 34038260 209683149 890352716 759884971 90275302 553848509 502325065 871825351 841367927 121523724 805966495 842601962 79947107 482071456 100390913 322649093 622616717 808962958 432765076 137520753 533729842 117111879 289600892 428326039 212111734 291152790 158881666 980571169 510508573 285381745 146278484 568202359 207279643 686320001 744675174 101937450 926794882 517062109 771441857 499283651 610916076 754600536 920389905 806993844 442123803 625686194 335577421 818383159 606777891 908322941 13847281 138491371 745998105 373073627 352483211 220233694 248613742 380733172 325828241 116719680 625923693 174286616 17604059 159907215 521663021 916942026 725741066 841094590 205601802 11769345 653930342 700821519 995877051 497453665 143786230 646104119 501735250 992119189 564566745 221889196 429263133 815929449 558895500 210462353 827551937 929903674 273850454 489207232 103420177 898614179 958842602 589435714 39409224 267708526 840464702 402594072 132791422 743009378 459211876 930561902 732185530 909226266 800768541 108871372 242082034 310661163 263652424 514035024 826660530 226553431 684322179 422931027 973134694 810734746 711534399 182333736 368735787 430802892 731586996 603490592 964082673 256720341 610566245 9314127 901960024 470948000 569488073 876838371 770592083 393560395 324331175 146295206 359252204 995609026 209682764 868471495 941624609 749913606 588791540 647194205 113861244 546954061 535235704 471114246 602318491 753760964 833374978 134237323 205583711 289708941 385596460 422000625 946144825 802679356 760822922 861955339 407532224 755762886 641685128 637005187 23273350 63273866 163889945 756479252 584860982 91690828 453017333 289380788 51645155 47532376 929671658 590016716 353428669 401509011 498687734 483109637 290993295 628774557 526641876 74790559 284668467 555016488 729819062 33408088 591040810 223999320 5954313 610120609 198821630 691537 889023291 746216584 924300775 864754318 392454640 189711077 604742113 865060065 781872056 23391904 446106319 347555423 534106813 868280331 842204056 369065273 525729613 75713292 646462892 696034380 654247978 846235812 9047843 719686881 18762831 745789452 916558146 379280707 51467394 900510758 315618031 370357105 627368440 375140104 159396232 474579728 526077367 830170081 364104812 8680960 790051754 233607931 250825531 333416179 389610900 688959691 856848541 753294545 407976245 337722778 880976331 582308833 606278245 515438126 441377504 8935499 155666950 716091965 475010891 158163624 847701828 648486990 842493692 296264428 380693688 473979190 131186361 16638323 629012865 185114546 614555611 244247475 883961225 528336680 555299751 588747959 975729005 85523977 68824049 74654287 853162297 554621850 940021375 269813744 185838734 114695810 485240378 601712433 155952001 172525537 673258216 171757173 705441698 902341382 215175859 947152537 932836818 852301399 915448975 742947797 257185731 948032749 770392600 612731764 282142633 787054469 630956932 432382857 357516200 477641078 788517471 151643387 315526993 386522801 631620207 210730564 114430497 553013280 763478765 980384820 911138774 970334223 380774845 829390220 267260028 378357082 393293033 305566908 550388801 135657980 707974762 363818599 776312559 466156537 847351245 411133199 172440807 884012456 436193867 111019578 981149313 158670696 414974870 575145222 253136897 862573585 197355199 791416191 703367641 686405515 762382213 249926544 455596063 25992253 530810424 941782327 945238480 990775391 610469575 18103145 933860441 874743359 872964587 782175806 150141608 355147854 849794445 912068752 469454311 960254576 96221681 437209466 430855665 685959614 322626423 703269429 507129342 571926448 361503550 438542937 651598442 978456457 833199102 149088177 656063028 356265897 28518632 967271610 236411047 921022936 686785654 746723249 929661258 442286863 224253469 770399996 446888011 938352680 180583616 146230518 325994366 166936849 270686875 439759764 735481102 557968264 426121631 738835316 487057831 232137329 800196829 506463226 777268939 398289432 690297489 156204987 324618586 320293984 692914284 682411073 881753535 423505129 360601793 339835198 791326740 320099454 380503420 152043165 576757568 18206254 599740810 287484444 472852960 495796465 627518724 194176397 285963694 128764960 223805060 669115002 859356910 91342726 147648134 630196568 815284611 488385751 46742302 587054681 783469202 828896929 592356558 44869134 528651582 560647151 101432502 124243748 763205412 305030509 41328171 828240721 659701498 150140807 312754604 420064306 941983999 950500776 15436473 891324003 721859908 494633195 838471385 122478509 800683631 400626049 505551739 827154978 409294293 662846124 706894848 659927101 695333594 985392461 465976615 664897930 424199739 667883653 288491414 54485381 761439553 740914550 14498944 686985651 518982882 387967502 237553870 143068846 695408677 810413440 12204997 120748912 735919714 533001583 525724408 602597390 627556441 698928295 576417763 187161360 745240099 746040028 122624641 887233171 155424430 786521765 599142810 198355348 63324481 181068756 327634290 236394639 660618418 72880078 662863739 538977316 78043242 559282904 415407482 301679362 645309752 266069826 869471348 76646631 177209406 971177804 756234476 915693085 112838903 24424541 330962776 64171746 812705537 811753299 364242644 677363062 289377454 555313133 996379591 615324810 6212416 691217783 907034335 94636818 509325625 349187009 140141874 548547880 841803995 836599073 574457511 864998120 218582142 87608042 215712817 381081436 725442203 842336748 253394059 486313518 267826731 780420982 78203509 994843359 516764352 156063037 171529989 524526709 546831443 125711847 566637057 941192934 123176002 28465927 991365152 353868617 937706405 439290947 857452253 482736851 871634004 677711382 885553409 484359913 944372455 264690531 893147427 623789854 938532305 567419900 455100361 893422070 8826592 805306380 123486939 843635003 474734911 74357518 612474422 849477090 910739665 195156796 494050931 836947740 273393638 123858580 455595112 602171528 168397442 411596211 117937313 774091551 7648379 595354705 277035622 796730894 475219129 928350982 202262357 590184555 600171116 648191589 449037418 560331299 223869376 773366709 212990452 744425176 634542519 73214288 687964499 84625309 647304891 292216025 384401913 532535437 474375058 813988860 479753387 929462308 819852679 226461617 476025508 691279246 215394443 56443006 998396890 376722240 529617414 52526477 977865140 287295194 173751874 655644771 686700818 567497254 766070711 804725694 598542393 992218945 363317533 502936109 768033833 139561249 855381827 523692129 794816277 598111079 985697468 801985963 478944057 589079674 721478396 287738134 966762221 648026556 437395021 876819991 538011853 374514789 883028118 941230267 104120592 179819870 480005466 268096471 926277045 309216648 939517385 153505139 306889921 638340899 482718041 84440289 11061965 433882603 297325741 979531313 702327261 215290301 933433537 57404801 121173198 957257408 300938360 225221831 27548140 444644792 476369366 220162566 953384665 817227754 827738505 912272535 184426658 901686026 454599495 761858289 156114409 826620492 160123882 246542412 311214376 201989780 336055804 417015344 410403539 441801866 952713568 424783252 467879355 56123015 655080396 162373632 576213733 621611632 509677036 127631515 999199181 731131600 355533929 473651697 990781490 256660678 637251621 857516839 409329525 159805806 986686546 824748679 385117584 860377952 133862595 822961727 552303773 515705848 108565356 910838650 223657832 661122256 266418427 611027050 89933710 859765947 624736960 290661689 190875538 65704909 264029277 87783222 414034500 612705843 249314158 600197977 969132493 793779911 984486208 698622779 808285145 132930675 40078843 666031106 984683532 703064379 40079151 208674523 319382499 877682411 852639337 756006476 491670443 349636077 749504194 242889408 767522266 573121417 193284156 37253077 637656791 7438239 447405214 57385427 920035162 707857131 334007989 901304684 575431924 586623753 607804583 758717938 903200703 159963981 673635336 50216362 292956162 577480171 121107617 221038255 508850106 665453390 264301789 904566249 242525711 295552761 941961787 467331451 48951717 519116855 138555022 498650196 386604370 882216375 709078964 655603166 828292595 478626261 459554579 557600508 984263584 777851456 218985715 677987041 739606793 973232030 135517631 888795606 940408625 438813744 446376365 377239096 252687464 795224457 893919000 944283271 233532268 774249438 143283398 823521168 555183503 459500812 696108948 943274827 488392348 365913687 765229119 728454812 908937816 934634343 294591369 365544446 832803362 878941292 335736990 330517791 566576382 621485703 382242294 472423577 960723491 299844722 86280980 825934640 429149848 605626359 581143024 396049774 746399732 986370902 558585458 226932362 67315422 865464829 677896765 933691428 590866697 544751020 369836077 947997149 31959222 688168628 728427678 795860170 462684045 721275549 633111696 502301323 803429622 43033001 794937214 658275570 710329272 626234469 758745706 847756972 282501545 781026481 407194273 33607652 564306224 22015431 857622937 654147773 696257305 608450809 22741700 925917647 13344438 864053408 625343966 961106302 190162421 56332408 159988476 784256659 123588968 515706266 569280577 517953567 22580956 180818950 253532835 313817892 758049074 348530817 221334931 719405605 721709364 497102379 700716141 118812429 340309387 291516617 611562560 660206721 793074349 369518758 359086920 403371593 337584333 120628444 914495001 338630600 733777799 206841347 630849805 794840381 557741272 330344066 905526024 286647753 251628859 270771781 307400532 592465028 357412166 660805563 115147156 484920047 708630714 892115352 120303077 546970247 725234754 626355209 619487132 408642538 629667000 983124457 922555351 727564073 917448911 180290917 819313722 498493822 600836393 960818207 701908771 360343741 391437663 628827650 631486284 408879471 313351329 492505596 893114610 655174640 1766789 88032156 670488269 67314823 558645198 560208785 174655777 691821588 496946059 573790187 601763191 413415106 702691047 182475629 908114926 121186449 294235827 294073995 452531492 591516077 641517435 126815672 425336328 657652619 585280961 925501572 679669567 885422020 649021138 854569265 40038273 611611812 826270236 518292083 803780665 172826443 588984615 567930233 843112801 916965239 335377164 580181691 32768075 266094743 783462725 319168392 212934176 901441654 554144058 185561356 261120165 198838362 113997388 290512103 772018242 26943973 440901186 14494567 824752562 437880756 590190671 828465635 683859809 585229770 740800184 393327128 239325834 693254894 605254078 643959855 544038426 406934965 5130541 824153485 159459276 104070838 644939714 266643133 58755135 913721870 549940668 184135463 846202909 65253018 868634741 307755825 920291600 6612153 32975118 342383999 562641481 750609243 728805564 981466613 631882100 716724549 410653304 991641997 661385462 629459454 495755631 670171405 83698300 969748903 530104116 49155064 594499770 202076937 891386442 387619575 905142916 759253260 877093936 460386441 502044054 647407016 798381222 675565243 37483537 225420849 549822416 983471556 908698295 745512010 657273877 359640799 751412120 141812256 381620464 963858995 991234961 727763280 311905238 773808555 139379000 429178452 106031063 30222880 400202711 844908548 455370043 506308460 78585214 56140096 620571477 823612269 26511912 173603218 859022263 916412297 222928498 235825573 823892776 343616840 984203531 316424743 69834143 717752368 51993472 7793123 320540691 241072533 52811369 476600023 638471317 816855913 88277814 645212095 324353914 156071838 693925424 24038894 14340477 430678424 377017641 758136414 286548350 657356878 238990233 428338002 854267853 269802986 61960145 445144309 226868791 943226582 965594547 502069522 167509059 267164073 480197859 119466923 309343651 368833115 291385544 310986326 812437556 646465521 20949629 938625766 540424106 755338070 216404635 641322003 460170000 678997614 932370222 754690145 667653566 13702114 778499996 318561815 179182037 419840327 426330111 348934256 712589865 216438808 762744722 137612084 536864721 954343811 82497030 854245103 458537607 576398211 453938601 289723993 473007370 339833670 750200342 830657477 354892982 504477714 390478376 436046978 277250641 954783834 137021819 963087310 760064199 466291043 436142269 245865665 124863277 78984192 721221323 44383094 630596284 557507137 313371878 330881907 27457221 594856708 437518814 147343391 818578583 693277234 815361470 519208416 406941493 559108348 518153133 295021689 323142719 71663402 542028880 867966485 774348934 729440493 903857179 973800683 41671136 192073609 387402062 601157284 631931122 791572649 469658918 803420080 785059080 777489033 300104448 397775913 505739155 547720094 455937882 228593132 299929646 48199849 815168682 765339631 907236581 555410268 735633099 297545757 726017721 986229126 760914438 103231427 886226098 793626185 550167239 686824170 522501325 534445656 706438343 502755937 536054974 770302121 949812239 136159444 138181280 683297157 3324747 897556254 136293219 701937279 139444026 639009625 743719330 506485443 761659661 167391151 120141170 823678079 56805426 114164102 9087605 730446142 665821679 680152123 428422679 379018754 422174046 506739877 330638172 892999135 423646937 63114888 715820835 171761601 515422694 904747846 180668524 605946936 141711564 869522721 370973740 467787109 392836233 57123193 686476297 785997238 236731950 197607592 5465550 418271042 204495814 618090318 649607003 491733054 984069196 837331170 414961663 760257681 510428756 535212224 466692553 898471178 573075591 711654036 900657807 331683534 939098457 123117995 548716079 938016635 240289779 182473694 707674038 653811894 102647045 410430856 258254337 88455687 466854048 554307936 829173816 906546002 813420786 949786273 546822715 819048887 482809913 257756528 996455631 371264616 974512499 419531665 920787847 222982243 621687366 364103748 587415336 434859616 756360780 994376518 925912959 779562686 110603787 929846068 644240158 454277885 540545832 763230413 651972383 860199835 442959779 880412432 106901021 206732350 442475382 540765929 354085901 510990382 457133172 425491951 384670181 13628783 354899346 250812306 632105803 909227996 666952472 135700634 772536092 174703838 795233978 941394949 407773014 18139672 794040440 387014097 338214322 25123782 108015223 651764488 646123823 985089448 671735440 681307606 656834923 255634854 67150024 373189795 823123005 838511636 755076984 244938401 300717294 103411196 693003445 126581953 223515166 487361999 561691477 912162989 905486953 764594200 939461934 807798591 487493750 578608503 678400702 814719850 228801653 390014443 65289354 969464550 268977900 925276264 730648507 348856559 678524487 445984677 336740358 401868359 924303411 732525308 395313863 891573403 346305323 123554377 566201249 380970732 868587943 458235991 205969892 641962244 779622194 501835542 493425600 505916616 732252434 565497925 118384952 150514027 777777861 520130254 894009286 827944820 916799084 869197210 349393594 717589752 970893692 226258972 178623266 417220126 330584224 478456882 90808307 462584012 423706384 390277894 891837738 296317773 750372474 316797802 11739256 906085664 649334941 834563260 643466733 400874869 60072005 897813337 830337861 594182604 909594469 663049663 903995411 521248878 921647146 403210375 116929015 758372895 835591825 114428000 5800228 702044522 492339046 457437243 569887880 651088399 659517509 729322546 318533778 704646388 458557900 313130754 91986001 944612917 50453579 753508340 137780989 887741174 322179563 186309786 464371080 949835357 590230156 400335107 95962121 388119089 293684785 399065429 876209160 812366811 854002499 470264520 33343467 109848714 285970679 168202389 502513822 417763310 891432041 396284343 47372882 280180439 345503323 805220478 335923792 142042379 155838104 98138219 417281196 113254318 388027174 606040380 766540545 905640319 938896907 666620894 974546339 251615182 302187967 889250696 840955210 503911437 508428423 698914577 994464116 313863630 898644739 769979367 697225685 85610820 927154065 219447364 316163538 743040246 780106884 909715682 240405062 91149172 790196082 684921273 702938034 564953553 711357430 269665333 758478296 889280756 285325571 460703469 497762127 196970271 601448432 83288139 964836750 341064132 248171895 296611304 539758481 632865067 438605821 628955911 158266074 972543277 223057238 179280242 403339692 994268100 507978951 466443794 190785233 794602836 570558444 645913031 723315305 394063316 328106973 895500189 273323765 168565483 770373130 155260760 297396028 564829726 320548760 246215939 753058350 754704638 827963139 578783968 259455259 927503113 41573262 554742242 509411543 409732325 871396723 310930591 810484208 600965966 217594046 816870086 514042862 180049797 847555597 52843217 527608884 712508051 963989303 215264242 72280363 530307949 359712715 852601902 351957749 705289934 764976047 971475140 174260522 244223406 169518515 454300166 540536590 820963329 803154561 283303649 996466232 146129428 454408273 161389236 155624649 241266613 134756879 540281371 4197873 768414262 683456086 627966530 8792614 443801810 881641232 908312821 617023948 605064615 573207157 509682568 180563317 984755296 8145469 267688776 683164150 257777083 895120626 999480330 108988780 852234849 491832035 512876001 261540487 623931993 230427338 721449482 377113593 430178245 73034587 306665113 857676284 229032592 954675725 418351203 343022487 647988236 382054767 829510362 842876498 328394917 450496325 340836920 617695850 425260432 765099265 360349838 112085962 617330208 304361323 185266439 237919356 843894789 954858112 541337189 428564258 682627377 532907756 978092348 674284024 16729453 682412173 47848373 205593159 436828598 878447090 973635901 562579913 98825219 41065648 187287444 778570429 939313267 759416209 223356441 951586528 75602767 125491018 82555032 894161914 403646612 349248851 104646673 538618214 272627618 741547371 513243926 497546820 973281656 982452022 840512949 231605955 434809896 118937996 541462392 174240957 197565853 706122394 469604619 949270394 350628599 993038239 385817823 831678154 985835789 606585632 787316948 857073996 245348888 980207115 993153922 226553730 742014114 432416127 897988981 805813764 851454542 663678228 34034781 926352175 472072602 434619640 853019208 891883523 422270002 631672899 388755849 393143471 673898766 433865872 999097714 791271091 701406324 223482944 80912877 5736138 336096923 364208820 44347934 503168878 425910100 776303509 931674106 866742306 721380100 711565476 523026179 503199461 321330706 838268638 360740309 980131840 884000266 385020030 667554592 426233166 62332104 148491679 913954473 604307915 808992996 245165962 195291732 604744432 579815411 347458969 620169831 170898662 907044387 299972737 976517896 955250412 725021916 308671265 805336584 623253581 759177245 835400519 349287643 374378305 104932927 586441591 259653281 390577420 515016015 459966227 226172429 421165914 943867076 766088197 914355776 875370725 669609410 749551842 424326711 863211177 765982218 170180594 19159645 312654546 835949599 227773185 934254675 593269853 183131405 123024557 354947305 400600191 621034218 399475108 971686963 545092133 736356032 806712977 264829466 21885879 277169954 872879621 383302617 743051906 346600543 374589063 680480862 540112307 265743623 285963909 778241068 310060515 23083077 148775082 295314381 871004629 504908160 837374017 657555429 127374603 73464263 698263725 346860732 107622202 348255532 188359338 355360245 254687209 646500935 368309029 254565982 475969746 432751110 128807726 510883632 617117217 347547116 698991062 369299556 387949559 823996897 469541363 432849236 382476151 118782397 159209589 400162652 198437819 810694691 552561266 735933590 757458773 827914075 309536176 662843999 522632669 899913948 728893450 97085499 17945914 221565957 993790913 293782169 162952742 500777463 367403617 927968131 177676004 756166479 753977452 497556949 202621866 532171329 576165344 239107961 387559345 275959094 144965109 920845983 567814396 885125902 868912891 298422084 752601143 651645665 157012639 959294380 329997184 85520874 374005975 67713739 42251394 47802911 108512845 526771639 139257168 230633209 296850667 985759612 50518794 873610744 365884609 560361551 791984430 278043872 157739027 936514694 179937346 837208152 629717572 173873283 680236086 321076412 762041073 826681493 563874939 397242928 134584004 986175362 694680600 173138015 78761105 928933827 23745052 890722727 190901554 363916776 30459397 336529646 213243134 695481949 284820606 980800500 826759308 49971660 982212169 516176118 72961342 633824202 90850980 111051295 234221522 980321775 260377348 400779983 908605766 716741367 18150355 141527144 344289843 253345315 958006859 968135602 524003219 328016173 240330763 148313373 413974125 883539172 288694302 487217364 910623148 91626685 531151913 310941536 701649175 702053997 457504905 985739539 647640053 440791975 213453301 86708255 515481131 322651671 297060293 206833374 461649807 430380641 467414851 411298174 864010075 6218005 734676614 452555554 929822947 964464132 867760337 783981419 35946436 313100869 56158067 725070650 27802937 386206425 266896993 226182345 455647815 542875844 808514584 39200345 884135346 327355042 472979853 884786167 907020449 459618457 983833750 357481158 489441554 284865769 717252645 342833537 867585171 154492171 819482665 559665936 463692857 109816757 135578667 61966099 551642344 21185324 572946149 46368357 518364099 587296644 671741369 45531838 787297071 107604482 161392760 278915198 509852651 901817637 683757492 804816667 276616133 395794275 289515420 323704191 317006880 149890581 12466300 707499282 143904358 330724687 589894635 333701844 236422506 677652958 221412343 807591195 900876743 132883977 467879464 175253333 829534199 37935372 762049894 148033422 326394510 211150932 622642946 825039988 785716845 760557469 782239022 228608116 700532245 498543564 253138020 911596638 938461394 499764704 519159677 92003430 723915577 664427051 891795024 980583367 812928417 985598254 677100921 968787760 417905683 763784535 27979901 112134735 637775778 380515975 623946034 564902231 954191448 407707304 287149309 124773637 811099733 89594928 368769526 228590216 82841701 563824727 69964225 999478112 268372468 181944124 797410728 275089417 613529129 784407902 908013746 862059294 735832111 349944866 755622652 825685372 249449240 767806992 128520139 357347681 720641005 458186335 553045194 595690667 720345544 790730134 911112499 650748078 409029124 746481895 328747163 543665864 450110589 466010138 133773822 555533030 236106573 31011965 570912560 176537598 847906268 572054058 314448373 295009989 187057689 235759495 83884486 910101282 12359421 400916719 621545909 802135477 928129609 625427523 87167973 576599164 332504120 1888300 625815521 668852602 175455154 443089843 926558589 212901621 64634506 903870775 984302550 80921004 135575658 288033435 143484624 956661264 779431913 766076386 720493452 147847806 113572349 640700460 799348726 781482853 621498177 581395804 192756480 908552389 286799789 207832608 390618233 373139862 622167119 909985959 121228299 976783847 5231750 377546930 135762573 169350585 725024426 732833945 435908236 754567932 690793202 219802273 153189981 661066750 338973501 833375496 801576409 967115014 909916389 9547630 478731454 507199114 690327582 689582529 971462240 128584286 200132261 59553605 744659576 713046467 481637232 524430078 46150063 566507355 379031286 461355367 772229513 114431530 337645385 327156683 621393764 476248697 775903335 714493446 29053510 619694457 526649323 309685107 587260862 55338227 750951541 952257779 6358686 885755106 553450441 123458871 256723299 556800135 342247135 622598477 137203105 910048119 882796604 746496730 820356892 389498957 995647495 606101172 853166048 374908596 110805708 293327504 607782782 986159174 590633696 219195571 437754124 794489063 391254860 546397271 725839145 22188334 785770320 703018687 25958462 852355053 314611999 612944894 698678133 302425708 34136681 772678613 374043053 37762832 707348163 63181324 823238160 155915626 3458367 333815418 897095782 676068335 125075951 643810628 309668027 222284092 129771763 286808372 194586200 112308117 890710904 546456562 968376180 722970159 417343544 139189698 412072765 378019353 800907180 843180586 955008768 180228838 415874075 337910792 517308707 287875960 58485284 855047486 337051702 491208765 197525698 154731304 652746463 746256815 445175173 485407463 279649658 799003488 507218223 332725145 415843966 821497322 639310137 754284170 829422168 321734889 1598510 352185576 159563924 678463586 130064432 468664096 997842330 323853934 558166362 429862483 332395396 477811444 756313229 887385093 168403548 633411082 604764926 265483770 409529750 565528141 252461589 539878069 964293476 353487420 205467558 982407183 903654924 235642511 536214155 89807870 945371111 867558743 183685517 910762725 862354080 832147289 632249257 43347250 142731241 733649193 227351095 157281311 761168292 728381875 260655428 334476550 794912533 264202468 435497142 725053706 300177222 994341747 259912173 275268788 673608812 589898142 464806035 561328641 520581039 594606751 99975231 975741135 335821590 574197709 998083366 777761349 409472739 873846144 785308819 288280772 920528264 670463367 784753095 822804593 468385488 617963046 720507386 906732180 595996338 308748971 656665421 959911299 140256595 570029552 774711936 902693258 430398733 214484583 469800428 50117917 520642951 16544698 218791074 883516432 254147006 828010360 647657530 688409282 596366488 231253665 181288588 173772933 34646679 620190445 926226770 790408903 821819531 814243141 458659977 280934979 446401308 368587821 751419991 617493759 650267292 430428843 400728752 952528023 251300993 291651930 413091334 376073801 301372343 668837020 239477535 264361462 638174377 57027743 706148655 742084934 356991577 172864715 477666753 938951222 222502826 254099178 168203215 202856208 271912097 208411405 641834327 642549257 56519863 332449378 586300686 752294602 746656727 39410177 83833817 273240008 2880198 444426673 943270753 911389457 380695084 175332490 482125444 753890474 965482273 641639742 708317919 542422687 658336491 290475230 422029506 658994389 988239187 194500682 932607928 23349650 372044170 380724236 77156812 451271133 34836389 913306754 700997622 914659858 814339261 305446324 808238175 938012474 609706927 177714273 670628481 249685067 756399619 516905353 612857646 918114424 843790390 829928112 232591439 298652508 432014207 778945036 982170818 75267022 675753683 546276003 39405177 85710442 54904008 630138374 816654441 226224008 11739295 424887133 36099727 840059508 194766483 784921262 616748803 258632403 135536457 859755331 97683323 923126531 71865837 938028578 918562168 715325380 503024367 517269610 520301261 379521902 801666195 673848095 971540934 509441069 364054757 881051773 206237551 916122056 452995067 872651485 951867089 81479891 934254014 146146939 675876407 665409834 38866951 184163819 344851189 828036098 516543334 171961846 671650454 371939914 763660094 584311577 423178759 600476818 512492794 736730319 703773260 20003425 989424600 125510545 898053928 29928054 976111844 212603283 463207423 248196278 442455969 837729859 742316902 392400544 459130266 379695444 653911694 214295621 594103229 431714626 828958987 39243454 302337509 513712282 761989888 877110333 833848071 509951074 43447004 154411674 136235389 654619701 904907671 556300955 17287482 137301306 565060789 231295943 606664869 894965611 801518421 258197240 527360724 638590019 510063669 747126549 867101742 578968307 699903985 600900294 706862101 996681431 310161997 97228266 533060224 99132752 183133598 454592551 880770657 932628032 193986946 171768688 517353522 425787378 931642033 535273081 536296608 647181246 85501694 790365877 144473466 749507068 718754249 961513173 655925917 374483094 393296841 960717805 393473365 337436968 340417833 852229727 663329452 417721830 457385212 303346374 211932700 83521491 292535733 312482377 549253748 744361877 444198978 739358429 243069664 310145627 968824689 89304505 692858979 206574531 602052629 226358064 362598612 998603849 90573740 43858699 903802757 389215834 354129964 959507563 509516522 811263428 700735182 247426897 699795247 441415286 817980070 176065991 882934529 566421989 875727424 696904263 759318019 419673810 983159868 449861347 445109269 53919486 308978963 946150355 594887372 968154577 830349407 157517239 723523175 689062404 684998674 696149513 282034503 396709658 230734757 602696636 877679774 597374360 393626803 164187354 235292068 904044695 477137270 115934600 495050501 915286045 859960185 262623634 324780976 959305972 449891262 625299103 588459218 614384956 389908155 4634098 273884108 657574646 173080389 629836866 342534661 313467224 563952540 269804249 139610573 568063338 175779262 797883217 267752050 294112222 625451357 572117658 377992037 379974128 506581740 530046485 191396207 960607450 39193567 225325456 564742650 843480668 110550957 87849200 487479301 848423240 988056554 8296081 81666529 555804961 816291403 927601395 576279226 250451142 957175072 901846359 351302773 740774264 515801999 92265348 536684426 178729523 205991321 109924251 295215902 303920506 341798623 306907806 275081618 417654608 311367634 191832163 236172434 922543495 480806049 811269220 508503833 119307428 771794492 771057651 46498549 218540237 615964215 660773308 62259916 112684755 426754465 405575210 606332322 175132106 438699146 655831878 849212142 29308517 769401006 461745865 512377725 226795364 403557871 154485762 2034768 741176166 357080461 762334167 473037428 700487789 109095113 209050157 208629438 787781630 903448188 155454180 752699555 721299929 609574008 901272811 34424220 716921977 562804537 73506520 972846906 419642214 38104473 651993431 194943264 739297718 748534264 276727112 573133483 477485713 159933414 890037123 634216931 861899645 934989588 709756334 75634981 237807839 378764796 160518140 557137166 659370760 903756160 259727869 883990281 336122266 410847724 506100807 177615003 150030889 961128676 750089393 993540642 913470855 350733053 430581318 808770803 229230334 870908620 545613195 377178191 533811751 165498188 993364020 962795507 191749608 967394644 227866654 826329651 227228124 152868984 497423967 13993001 916473124 349851415 596112730 152400877 799627851 568953456 702634294 478041344 918741623 816071973 66550579 994805496 383227006 206015133 61046999 176557235 557664026 328244206 660216758 770277493 806120841 350932526 639758410 46531273 787111234 931387380 189785814 566565479 613702785 722499313 834869043 651970089 637182497 454583445 530729116 830594839 173533689 811753051 82509597 365553809 541334629 10414478 150793700 367625393 305740904 287270921 479224894 440326572 584578825 655480650 121367585 990466255 676099405 711674087 827512827 366727284 237050785 307275312 30631944 261160340 750447036 500670502 330978111 399532262 139485585 582151288 463786273 917222949 264612219 144149514 782521197 907028625 394958801 331327155 346624639 407562431 257164390 370920779 989184615 631210883 709530421 88289154 532418685 400722056 565383626 379758517 452678440 763353365 440205946 659547152 107081067 176464339 106130009 495684568 30396577 493372031 24620097 623335103 544842568 905569671 124139500 764423384 122321104 399910647 169991192 843598516 596509719 442898125 172509988 495348363 29602571 891452436 321990310 84724296 32843371 851596361 26164986 427744170 815932847 753054087 424925196 347653463 629532974 477586195 254294272 221152510 904096190 14929293 900162023 263959246 165465852 982905327 387292459 353692350 851934632 426633534 720596658 489169081 460583431 431476588 349623753 262678272 24567200 218516724 769036498 325303430 326019250 811820430 161636345 51217340 537223390 172763817 412954467 351293854 451534249 899474105 353747465 479620106 304943803 974366965 211037697 234999379 699966243 527351760 451385612 467763084 742565956 332844972 309674706 747415164 435056013 440702943 142313740 198920480 897802983 429284083 784448501 480691479 365726450 389165496 107907082 43463620 512203127 220661161 474265559 400763234 824082901 26845970 218428877 931529372 48780492 485270853 862254623 971754289 622830516 31443228 619078275 213450678 986358221 400786245 930041043 540800183 225567166 599501906 73515052 299253617 290952640 82978659 462292283 468943871 842779806 826098856 9347735 96895350 357097268 400571511 923887770 195153915 877001960 19638755 138202782 464924610 34474866 924412432 436389029 601868835 735012229 340782647 657854089 838140932 802141659 270943891 396165380 845917241 767804370 156308341 791413558 715442446 116826265 866745195 78950278 440153327 20261846 37865935 177850145 30043985 46108798 561457695 453808766 994430776 746323838 712665243 87369614 770008314 549957152 130419802 769481546 745115907 765805235 665657023 267820691 712808234 861017724 661796667 856261597 250895442 414550768 461848296 484823860 238406138 272210036 97547052 885418786 939659364 945916203 387581232 202715155 280376061 123891400 150816642 971032957 86578164 213779717 491763365 139051860 349144255 498748714 313357149 561191639 466248541 163980412 640021677 525423897 646156282 340849378 128962619 296288767 445181238 440938093 885354416 894048393 330284425 243491780 818078825 548288857 950764292 555998317 61908351 668560399 557405038 551513836 223474446 116655974 71565487 350235802 190652030 301329848 844723978 811174652 112571626 832696698 239974082 689668299 383650878 664256751 459295733 337824504 517216433 272680654 272049651 904311227 84577218 640272379 460530805 115357081 488290797 912640447 958512941 191486551 379878230 103326142 757367783 246602518 623846925 190265679 790749319 572696317 610770576 32717580 739517057 639553946 261985588 880342637 778219593 733586234 859763018 747239125 391182725 780261082 339180418 517766527 33989344 465799547 68214248 19950068 874613818 753530928 270197503 26950671 202880874 909955721 193458677 203900514 726316050 710116992 601255921 857804303 996507341 421873315 564931249 290781508 746447075 788570178 119056039 845348348 443758529 48409359 521193825 820112137 458390005 851357672 547313313 442532569 73032281 5585272 454392497 556063477 503933030 779515969 843868804 478521857 653755672 1586293 328242885 561621727 133356729 190661610 154740106 209615950 813942323 588077733 106194339 907524574 936862781 89899735 517787203 114738174 617079818 607293820 393147643 522130075 694692942 68818872 573857169 728952411 68461183 698753166 849453528 898841554 777083830 973398013 473593208 5081632 916329017 255187799 4671301 484354336 16005813 200923060 503441602 280967967 153353030 876834280 77186944 787718174 21032121 145361223 862373339 721632874 926216761 571590309 223239970 905279282 509350207 294761973 430121834 473271071 460452746 451672285 816276941 607434259 654859726 115959648 271350812 114900915 960326252 506621028 539471014 585654614 419933873 562137734 302895898 930391778 652156156 87194687 497057373 878517073 273408548 160389323 668787081 466879197 80617843 495252151 553674678 228512596 552503831 103602305 57978864 980756541 65037904 123194919 824115555 671125300 701976901 176497090 522336447 339542223 981097259 520146977 487311906 513306582 470525962 154518864 811199504 602347364 3555362 518061898 595412896 211822377 474916285 946809872 26696048 314007342 333853791 607960101 648660644 803254522 332366254 400534578 844603109 166912588 165410894 634724593 410895982 438287388 837409867 995026474 60094867 131730879 794172939 536912310 949994851 844298099 589538371 437705623 475435361 5432400 896976865 682476083 720326223 40416452 189521910 617063100 439337058 996749051 896025533 20895651 826889671 916700641 127084391 27742425 445631255 356392115 178642915 538474028 42829493 475023935 42801839 118755120 337051129 826039403 25077376 76969795 592082676 964264492 510697341 354193102 357041483 787423482 718946488 918125839 255183697 746976735 991971659 925933386 59331710 823650629 796410466 555910622 160119207 454462603 561697649 532444968 287814206 402912683 843036947 444095385 599931090 780672798 698438031 18061968 531092983 5105486 698937709 447687855 127899603 760301353 917545058 768195871 698323734 430625756 293052075 25166210 809783754 993240586 321664436 445482307 307769417 675546388 773974034 129753631 421069811 224581074 206368369 28417912 177374255 656310257 374773520 766262209 430949872 846530007 942208143 153442963 960623682 876114456 579728630 33334408 438943115 814156154 140965288 831362369 198809160 603027432 763107208 789008468 638780687 10111108 681159717 577704873 525036675 294246994 252546093 596773993 645059747 524421594 875905454 671470200 483382993 113631493 173839468 579604437 866106179 270947317 839113212 245688712 716772165 101673626 182636884 951178371 834287020 631290976 404732451 770899719 976673517 583545092 481692477 764824524 140138468 225122290 353417784 886217287 623192659 516618203 45636040 529564367 673378830 353521303 293884666 621354455 459066338 139353268 419027531 986779998 748688762 720876481 785624214 926780682 3400374 382522959 75769982 708038893 118149085 988794718 940566072 839128785 573039757 771759348 810250024 946528116 772855478 343756473 18421083 738254459 432780415 264702234 643001544 566358453 534016707 437037979 229629221 420731272 920632190 141885596 829930677 410746119 14475547 364914230 198156671 105928913 870566281 867223669 667221258 690770297 410188312 125051427 458445943 279862116 933618873 365675941 258547596 210017619 277397615 368726408 672894450 534953738 868882128 724292544 438539868 485041688 862390045 283207208 267598880 541824508 338137084 126047072 645248159 551063873 626285340 763010647 266681164 749388268 271724097 83761506 257081815 688606429 343268023 667589616 804862634 895331670 626849453 115176586 926756944 641957116 630355814 989957395 157973083 53977069 24607206 925572888 786414464 746361111 819639378 256039371 238083864 413480737 739174880 660543322 643469839 879820374 363256220 541695867 196605399 732748247 688636278 730891314 171953757 436659718 60211672 364740377 803345944 510557516 523381841 792655675 256605051 124515346 339300480 740943123 120358648 956016354 489615273 473027019 327681704 990034626 899810348 622979950 893770480 589635669 721930972 472586793 782108015 886914191 995203431 590362517 493298217 284617950 38058307 755662576 776992468 51426141 481605971 577769157 896655871 927447028 80250308 834315073 378376537 911026908 734348051 747345475 624311338 950984206 852193369 450330779 242085728 963584853 790742886 84307590 812230588 869893719 337408239 635207230 365670157 296237463 846374945 363873830 311863979 507105851 481263900 709292300 136008451 130537045 596518211 699648714 318661900 837073327 389826639 42043795 200370450 656964448 654298309 680376125 741326793 65181648 818016793 347080080 962042751 407147238 719289686 76782681 835714426 739249530 506971994 387423327 746496729 68817481 230503216 236220777 548264054 240400242 586074288 739237724 856071893 740246864 58873160 581098717 879394054 635456855 492017631 918740650 724150163 674528177 998384936 332319119 383024499 422163147 758435976 69450422 304975695 464947319 140456009 226188960 490363961 8739334 854674320 780339119 824899825 478471356 921530426 962559240 31095952 203185719 790718660 76596385 474140018 949791893 436974735 628836622 362410928 280872807 728389034 801803250 866619650 807437315 251492288 370202201 177959323 627193342 511408458 662204200 718703159 308225519 910401512 956453688 361562026 481551439 871296059 516213755 780642306 330566670 209237140 39908184 20759631 671133810 618171982 422144977 445676184 313191440 740965311 686248725 362473425 530455767 846250448 208845821 724758922 433463566 908955739 33934661 249789661 887687520 499681353 301893961 338754805 456061388 69575941 789725871 263593378 84335724 700532443 592693566 337504746 233677945 1401680 725261317 542944388 365716271 272939855 792677070 395292167 148150694 677712282 718481936 22774610 512096747 464853623 148887613 859681185 540365195 723723580 447219223 893075154 636153342 205886215 525102893 225274813 79922861 385293820 264743187 143297733 607850520 977209778 671858742 258217691 362325458 225126073 17151446 606416781 215866991 534461985 845528491 218866698 447509884 896959678 64257041 364795252 877710526 147465775 928860249 544087814 926082762 718499318 526606235 877626381 745090077 116079823 319306715 955201275 222784925 374414725 301195897 851000962 795885164 52345566 671184061 657388022 980822706 88166658 950836638 941745531 578270278 860782806 302116199 46918082 842892830 920803416 595624977 177646315 882540095 396286639 933522378 502293651 663164907 393784307 614962128 492837118 153500621 930772231 288039091 550969988 791991265 646312783 119636261 369886136 147249814 571146493 630860837 740452052 591250320 109688119 721600883 250512088 814312534 221349010 690789889 694160816 102071755 525476869 964569588 372232705 395369428 62319055 264404650 810765861 479181987 277078361 183015930 690515500 585901212 776610841 787000217 498345649 685816634 508995181 889912275 880437826 201687457 572935922 57192634 453886185 569535879 990157906 930331501 156699752 126176157 230828184 579637653 976134371 272524625 410200308 695168487 920367587 133962424 389994347 131743997 349828108 997078553 322556423 631800353 960625066 848436450 561524100 342824354 153476829 537340171 976881047 294366203 409335491 541896197 805563547 945850410 820570622 949896483 699818456 527022020 964088260 363501401 29297087 574428184 998257420 918947436 773188126 824529350 463361761 550986639 103910286 157226634 508152995 304178297 202057808 768823854 46941015 629237196 318827514 554183456 299003356 128173332 880274690 877772059 564713219 359170949 247499620 535905966 918704074 854855754 22985093 615742943 847815097 343242446 109946868 377523330 837181450 715822958 198900075 824040985 200683628 206219628 700195233 519901516 930482341 470319521 842604424 965819201 770558691 946805477 355304653 75466437 560483 157590053 71261446 759636488 414577177 939517030 77839877 406026864 80115218 276983956 426610347 835236115 761370870 800878362 499148680 882944552 832809895 815163055 146274024 233472176 934602250 918652563 702379617 266437960 254013096 826283488 931001133 827390348 576576948 98706317 413164876 818353808 994054978 452994307 741448736 769763903 990803941 363875665 552479752 470607827 810501962 763431478 969001855 892995821 362687053 134655602 602559314 5651357 275867392 612478331 196380447 778148314 63918506 326071132 546704331 850537006 841795439 393429142 857343622 231758561 599244261 725392903 269447085 129151913 572000641 155220835 929822729 60928336 123715488 957470495 861764313 91470377 947366315 701024425 954543567 752769184 473871899 115545980 876076086 33849337 562095802 300257376 806805992 520363746 56479725 695683848 345871567 101977645 564912913 571854430 185636788 695270620 608105953 340848904 875127663 817053401 795284639 9136525 576862675 790556402 192154961 223427772 836109201 958312920 253265237 906110269 886695729 247077255 24267805 347281227 371226273 969126822 850068104 91360901 271470191 861000308 387422891 620451558 797885045 414332166 436871168 518053390 40599808 498011932 937162643 871579037 940984837 666808799 184623651 580487868 546729137 10878134 475241197 864888646 553959095 907042054 357348855 243045692 416170921 823198395 169041666 945219410 183487403 646751898 899541003 437432705 680243520 387759496 976322143 327485990 768266226 930411127 397398351 601969528 937441092 619977775 323171767 403993021 264482952 551426442 968947557 554203213 33126531 1597971 808234792 358446776 569847398 195358135 733690579 600881507 527062393 875904339 683382283 435441965 464866871 331654099 167626362 64538737 788856094 562696516 576618229 711426284 55269168 324499670 593875392 914568129 454645288 283847652 44232310 62284378 450261348 676343792 780153265 558584146 743197942 451878130 696160634 687656006 432923178 713467508 524658959 71155470 531922342 620293563 108715749 896521210 439740562 654995047 797431928 103733074 355974482 809214592 5468580 358889353 168038426 876794348 69856847 23747146 213589340 131010176 133375427 518255243 635370903 167024514 505113689 455725209 31469883 49711850 126793107 959280335 597540613 394775854 258762933 328746379 649656734 459690441 76210159 70751803 723666581 917747225 721523041 431727419 907156276 600987371 29451982 1469348 388755873 815529642 723881213 58676071 716389549 113450365 552337531 599836761 76027855 558436872 800991579 44567132 183129875 484315982 610609880 679239742 265543406 89583636 535126200 402344252 452748125 438644923 106559954 853181015 881039424 256180639 655711827 262843244 769615173 923241188 768947197 253895906 290294971 940150724 801974538 522988504 310386607 404140665 291715084 439468173 966142438 208843257 179627467 477555971 915352550 432507739 736296520 164509275 173602988 605200523 51502659 243117249 178799196 582530562 385613621 271713881 372346486 329203381 644387462 173936261 570264237 361629978 442623963 591685368 3589930 620769690 274341526 216491578 803631822 100452067 435425884 609160920 887354672 23292205 34218714 476675103 587059706 111808373 744624939 991969279 107915236 342219612 21088902 374293312 563869173 87704565 887037035 308121299 481378022 71012926 500470205 529659668 388732543 921028378 256069094 703788033 693765722 723995072 442639398 3339226 860568750 458558835 687540003 151173156 268123238 827269005 482171412 155921500 490751298 347710770 736942931 582087931 507139954 93537367 718048040 109624960 318520393 815855219 433103633 832004008 814515057 300618949 870601112 7983697 662106509 725992344 802791771 113606156 774669323 108789730 842031933 141466032 595170929 511886453 190429070 684141634 74339038 609860476 336481202 22612301 922459748 274443703 686123034 817137062 416947182 607186869 331626090 405673305 439127071 892703456 189245356 685549053 382404507 171006648 37118077 780938977 992055117 697320558 401967134 406975719 987952815 86842848 857215266 753735951 760875457 864571399 195962435 327751373 947514488 506750024 183717603 256925110 852044419 73650672 984488271 977412731 4853443 564851956 643374858 119675293 498196634 486784631 72332324 222038350 916648647 800371408 825673730 891295510 560018107 407062183 906801258 842352713 124290298 946710211 115520960 532404674 358127794 159430246 417039165 577001750 77418451 451151157 335741974 199026594 969414902 32559247 900603092 427715092 978394731 670230771 868516384 114306549 584361314 568057237 874505105 912488905 142883582 723116382 757473898 386210028 978677040 323747769 487220152 959330822 769998690 320883753 319671908 514332632 862271240 448633054 267298903 912242074 547300322 618945563 855999512 402449697 655305460 476693012 382803728 440024529 103838985 654519481 752867628 543035917 591132102 613650667 162107906 962077072 27196095 852555621 67539005 962152598 695934945 384356756 218739121 858415337 675683517 431959054 410920859 203071486 198188674 521081029 214483288 723338842 780812584 661756503 253405156 886497385 336888270 841047928 195834321 50168080 177254303 222582349 986891509 899043103 392740745 14023651 401064938 761751681 343888904 539182984 921388623 920565702 770643574 392286323 252090605 589014280 723452784 104778170 238692322 47819544 939976391 29528076 637380272 752701994 152814295 276266085 509164885 387733971 213322540 109716676 825808626 706791556 534058884 245680384 152475779 247984496 836918840 441382424 188028300 69634810 729335886 553361673 768107786 441180832 433100597 410497237 602260043 426124943 305957510 751589107 37238755 735346715 769357437 143548330 813249303 830186951 164463830 390016454 177125422 858368076 116397564 872563041 597016121 365882456 265307010 351512813 398228110 675333190 737362543 702695252 199866663 512652171 291772060 544683261 756858631 327974333 660278849 83549932 742224978 253214964 548900825 553804046 619490725 436847715 818765092 234618639 268447053 149444243 826227848 452306343 930426502 983142697 372903803 165334252 901403813 430671833 31531691 497287377 186349038 600277448 138585704 614795180 225853896 540376639 402478108 436899677 41366931 350428257 172646922 745063311 733194691 652920367 13850800 102249304 500084641 958397209 107179211 697593153 266389200 976801989 421041865 821154895 153103270 203259948 376073796 520189371 727016398 860321847 150717658 733994724 234052110 498994584 762698028 772554183 23176825 428658655 362092588 513879853 262736969 32386174 337880557 566959232 326813522 411844540 443338298 882582961 645911355 279820279 268297091 845696240 195208971 212930142 372951114 184874489 824583839 940294182 640421960 493584171 61589162 475433274 319898163 787447098 126549840 354872360 679683859 561496101 746275170 374287622 982489612 606292179 418025516 131472013 135701332 538592562 516127242 12257065 248461928 949971940 16912261 589540908 771249120 875099162 765720821 248338075 837630857 805263585 159866788 38190626 374783148 811933922 704724339 46848079 963869695 313784993 395481246 611670902 74863765 432056953 924126091 13247332 725609698 290604843 962497780 257741103 852990808 919935975 143011888 151201090 577186460 590960223 928854981 52797014 48091111 530372613 925277972 512423160 518982162 633311477 33337041 350593998 245755194 930001786 877647741 201759247 739412733 525029653 636528056 829004345 575924870 545970107 332202963 892623812 212321053 854580182 736834820 406080294 286464555 516260754 410116717 966461777 796039494 701805299 195279271 724860762 966364007 145138713 774366200 774874300 506354002 363607043 752557094 106011011 818704191 688327398 874145722 797353840 781092025 165936723 199434255 144533573 264455249 315613327 861030521 64814041 679931079 173907712 336540923 656549465 348949696 610465289 513955639 923804714 283803951 142323841 260784917 436662244 644404623 473116193 133069186 227649814 607813937 795765852 588802442 619993755 647618410 286198901 948459802 61686784 578156898 122827298 129020579 4771152 393328593 108587930 98772088 896480043 176292547 370732667 859850452 757479876 358363303 576327581 896458757 291002173 426456331 483091964 759248905 18859455 960558686 759890350 847293926 688245432 351880065 655467999 933516499 811840090 568008589 890271989 590578969 538250646 763132061 414684744 432787809 726836164 1680347 726104049 428292536 478662316 6746458 945810390 224069859 386878009 601243309 613407174 790786160 155259338 355688943 838577403 252459353 445093627 358824224 892748578 803148815 544908817 261954011 388328990 957367329 679584366 737974867 655417340 265787218 409483196 420079613 537838898 99633826 793206940 944023973 67007502 556391931 453492906 132608680 986963314 6030176 977969965 771269285 818144459 656233170 563877458 94131374 788615489 921001730 58161138 111028722 31890589 142248774 551654338 42104160 591540811 822645855 472110441 223255383 898699101 602685232 741556287 7108607 70178914 578892717 403938237 866960982 404441961 39709935 727115056 210848859 788509344 411671117 82773163 703165110 911869775 752530205 662039642 661274477 389230305 395514249 67286113 698519943 526684780 823072373 665870953 451283447 891371670 48079713 838694373 814610362 631998847 718344962 735492611 885441711 195460447 873578584 964050901 654576785 240860094 748816342 636042501 253833281 407011132 161163629 714588307 369698186 43553493 900497519 980238856 482549046 271327960 382693629 842433829 898171328 863230733 244988605 955197195 143629714 891684732 810950221 54330619 410235827 145404763 552645235 252242727 857027411 789351231 842909638 119172842 319871180 70598455 952030723 447267049 397496059 393862829 570124614 570418761 839888187 938577910 859150549 686119750 803821545 322605511 38528043 223401724 228106239 601578027 723114600 947202072 740321532 815054727 870813313 562942790 920376770 292755780 803393028 252330588 110841464 674128205 505039563 805168629 667344747 720052099 847429712 715491822 510077140 793247548 847784150 178018483 638414631 822231680 249490101 894705854 513665932 331244636 564863183 867573863 350019242 182359479 575475310 996510792 706316797 577605399 4358277 887186861 30580408 482289071 621710048 16027927 30973640 468662218 525362606 713134507 361194012 832290239 166944638 440617998 870091916 212095052 712611147 302260346 626165922 620144150 10119687 249693132 699453793 956510081 797213143 920952004 853448683 934561571 101022086 61625287 685707996 309069837 637832610 995727767 362783908 795392001 116852569 454855332 347591247 625354312 94911644 59445079 754481796 635779027 870500827 200561807 449575625 486097347 719180791 340233666 228924073 746812966 157429124 637995774 395103523 926847638 432169336 259874753 844393001 321734659 763783095 749751852 780080469 52089138 572327989 127258912 245725632 484920620 536253321 528550972 765316326 630335135 391782063 127361588 268544693 836009124 505723411 977178496 935258461 46236367 455378539 959514143 110586259 582328049 798426511 466157791 626127031 448958524 14728905 444969657 658330065 565604014 786127832 710359500 70741246 695394242 87802148 510286226 125894162 604591036 855425681 106078043 275402545 152613268 788135774 584957286 271780941 739200369 703929531 117896618 453100949 326212485 615184121 677871594 788200924 730045349 377350454 841494905 71627625 557859646 897320587 25063950 26251494 702737005 399636545 406407341 76381095 393851559 205030156 544603532 447111591 728200831 276084326 542508366 377172818 541663928 617226712 872214229 102652234 719810545 636548884 326650787 489036207 644679484 802899204 540154240 165548391 240821500 927627260 56445419 304607159 104898965 257994586 336104640 979823805 681760984 743158863 988722781 784938046 226723945 339589977 549706597 591603018 961658973 568794780 243168495 195296395 784488079 569392382 977820165 585861777 91890708 157737968 861765604 892756403 283578262 354768443 974219122 823997952 44411229 317208545 409529911 6344389 405751698 79387515 843450272 617074354 926455530 639912114 163422048 369782651 731495526 401339465 542531633 37639514 478270221 681663492 135902912 12034011 591267760 498285952 410711194 760095403 389186496 70095863 236336506 981706036 25640726 984705634 955096238 469055998 931105061 41007899 17874474 223676191 829446546 537998780 605604 911240923 346399357 381715983 265852495 720139504 478785532 264947746 917372474 178691598 34001875 180950874 167719188 553314793 924308562 331861963 628360077 41319179 863796332 395484251 309134914 715421028 224617783 859258122 744505163 807992831 385344389 650908714 447591714 727946806 104802259 510571408 329817869 571142616 982330828 64519984 654673386 119901248 606752033 981610983 409466398 372522543 61040266 742549684 447586102 418769944 166449374 412316443 394480060 354534349 33143288 237319947 127294212 110923521 604745960 161749522 863423937 367229398 164788772 87303982 801674352 341370124 564285150 924486703 709029261 232281749 317482369 114318785 868237560 545836043 575385825 605140408 2684508 114559107 127856380 490143023 990605438 208078279 529608812 463927297 688151977 36759385 542935486 963016848 154284659 469885335 792483510 744097036 253644244 966215668 799159568 755620431 277695927 688618415 539824714 839496712 89927711 518383694 777121817 389635955 947214329 801012284 325993324 97345376 340768511 891415199 912701984 441822136 286345205 935578388 670550621 921367631 350472797 355032490 967475184 691834152 509833738 818345257 457716883 54539030 390193559 779854414 821245000 472396341 300486585 971013540 179775789 245886630 211357364 207021090 70326516 796242836 300044072 299810928 741877207 294090449 437176884 223560009 655968851 831206540 288443800 918565096 277534756 275808613 992544428 931387077 794716775 285334270 461296373 815125709 162609809 544892525 711081008 565718276 438472853 313398556 431235724 256087742 361306072 628134045 763576754 994484881 927412314 781978050 898372865 293298061 177194346 817886138 596452171 569907378 853958617 227990179 321139800 741865404 734603179 504737635 380037635 857039061 691560640 448423876 533651675 507259439 998172761 337117098 582450573 757206221 850126340 163537489 829003736 436112275 421474536 761081829 26093174 377101934 369308544 782095857 108856068 61320334 207727217 998952070 299105246 624644748 544274129 867022069 626351110 498686827 840795081 677083250 158517994 292064090 229291916 133867627 588753722 999500893 569980832 530400500 745371885 197914645 930057006 600937435 449158933 685103908 268792789 800920078 373466819 937905059 352819116 209484408 438387543 910833084 633686752 539362471 253302334 313183806 543519046 578974657 226826314 616327472 375445107 981812086 727072975 464601754 498570525 949074651 812364218 283667224 62208792 427432405 5368221 385843280 355405530 248287513 721657074 148842899 638031841 722754912 225184024 86369579 814379855 28972497 603106683 803579036 864859012 290162256 232118043 297305329 644695268 324623689 994937579 259457917 269637893 630200812 928285093 359054397 406176205 299009123 868795433 170368743 698300732 136955583 880211075 772617379 403588610 236935796 31209155 407029677 396742055 579778818 959497307 370764915 374434418 789690228 709691122 902080571 229110074 629460052 569063505 382694697 403062440 857838347 97033906 67512476 673672871 482668525 160769674 44809740 288066850 536010876 524411643 79397756 815931913 69593902 198734074 365094515 445603794 136203302 659624853 807667728 868261017 935648972 17532577 247337688 672585617 951152498 491011561 630448143 946772384 137566361 877104581 74637472 488679259 97801937 595557852 505174571 377075563 926843346 859555903 484118667 79882287 677418768 289177490 462205228 140591398 673819526 738954505 147422138 765744117 448899813 874144478 449134781 943760938 272907227 36597808 35140798 883106090 95917697 199596055 576403308 345455882 353344723 775114086 121747864 244188882 435502444 813348018 749333659 280610291 325593135 555693747 356095299 390506445 682019052 637042854 907848089 73189844 658084087 848123574 337337985 464770833 724868757 450838523 199549686 680642069 538307739 278280143 477271711 810111709 685328524 33025707 346089057 496414477 704043469 669964014 429409004 459203798 266423554 391881959 485742237 895939764 83111768 973789572 908123232 69515365 125089671 139916582 440581811 721092338 427501096 835410540 603277813 57639747 914623256 651877959 840548236 308263912 869377051 777932078 381902977 628936742 907558074 149254766 252447264 670203188 992548589 256603213 452193329 891018855 839323160 863396773 356737786 496584534 486763344 980437129 149868696 660362670 354808366 792020140 521916799 521973476 733621431 755276448 634409200 563917774 682590730 435426676 797246390 63043597 29503190 988478440 244331206 464221848 127845023 604259473 810002110 747623779 72414598 343884229 802089635 936111388 780617425 935745881 194241041 923635675 615705747 797774152 256427060 611621641 82702385 849307083 150864651 435984137 154156884 859567079 244067507 647651027 619056107 770292946 737698132 608820620 363190830 232457127 294883675 950345162 633411645 622500344 353554485 835269103 294389512 898348978 521283593 364709653 163357645 654575061 243668677 311951755 369093232 489280880 875358874 225446926 123983287 122444085 873182641 127579325 775502970 42988335 365602718 640983436 573343502 20293876 43864722 652366822 659055696 940785202 147587672 583850448 38364963 230307749 787200471 121227862 856864044 963536035 828323368 435112580 434635052 601222740 318027288 941165206 317250869 403612290 347264875 742447965 987554665 843724738 733986188 937159380 838818053 4193785 245585633 584887046 675137351 216209024 606549384 172644922 588381655 286908155 521232747 889478698 54401825 531673083 61341828 701584670 988571647 302486549 333464987 400506094 429425785 20576170 663413963 82668143 873707970 439552147 760834204 633635459 928064786 658853677 691644667 982951455 910982417 11586902 280605949 995758824 356162381 247477839 535593947 527789723 207151223 274948635 523209904 498774400 34269512 498924894 252227427 677386802 685691613 25630883 463507997 531269889 25771676 870263019 287896566 793709704 386696688 703983261 959804507 401870258 606581794 435990406 155223144 529304063 47199962 827166286 338512165 410669896 376100027 848651353 421251072 64927534 430419893 889381634 47985260 649538211 407002975 242844741 881601367 921151788 422315557 605379248 580183840 856299502 572978757 3350101 117908271 644762794 867728621 615532167 864372629 292186661 447440585 436896830 755232608 29381201 227526639 194819079 56248434 214813035 431224996 274679241 224860193 417254190 52301958 481828656 645061225 312363726 879915754 252308909 322766979 308703242 628364128 476754359 842170906 943601587 118680970 457436472 510149757 996754704 341722216 798822143 947811947 880434051 464327898 934787272 629503413 354379884 985497510 581546811 647015459 384930573 734580578 43065504 914772708 86114393 28951581 113181126 228675183 203662241 194761416 94897238 37216795 365792558 474092038 720238293 101932786 18708672 903758984 234592221 612501029 561659438 412833973 92070628 833572461 579752396 226829681 568319378 741407963 135337894 157991585 511667597 461275026 963105955 490274977 634381694 141456445 180893430 592782988 646384952 724612205 21422227 328447918 54368685 950389822 213338810 292979291 725734978 235524658 561178336 79088720 570158527 623899699 537726950 972447326 387166266 957565343 819850248 827000531 656681615 737122929 758629789 581992322 510420542 287418929 215077604 984653286 714852156 9064819 565865285 888339979 893023476 552645230 831453938 647605316 21200054 749410309 22969350 725433109 616918567 442466047 18896275 868814223 281927252 777278591 681947113 701143129 896198626 923658314 542235722 978709473 982360438 390127508 455235907 729816190 51221298 503334411 675249068 146895435 750879281 602862452 283309621 636497555 398452299 683349077 103410592 603551007 404245823 821240209 471835287 975019342 446397837 596808267 853284776 630934129 444949396 481927829 329979469 944175727 614107751 598749662 418788278 566064858 607943416 296879544 998371112 701449163 315330088 457425923 480893522 309265711 555117687 79272728 556538324 295822740 333827934 892880617 834628948 776293709 877831053 849704156 103761334 79055740 581957416 762732090 371608883 656509276 763547819 784682812 738690306 946426212 259637863 282590209 195973613 435154706 292504123 893824402 337387377 290088190 19396410 673985327 537135701 602476858 368441728 283982879 413523025 920284030 53305616 28401190 37620867 900153161 801988663 113651453 813774808 373286805 259998009 765238221 674787125 568081208 770402674 861800215 61397755 23875590 173413232 546646391 361572457 776985008 568388786 868387109 296850255 270521877 558402796 123024945 792764833 64055663 853462388 721100756 245920248 821897304 834644655 185268882 943572667 521144176 589457690 546354810 140945343 544452069 923044560 375723604 31653816 471876752 138858514 363741392 57241276 812014310 808274343 910767209 947793519 388616303 720667247 168332277 304245875 837796485 348693922 883578536 531086538 955031297 608225963 343315896 937846941 63988365 49963376 731002883 761473287 323267251 987278239 48190263 581274376 573403437 637704395 176914815 282732373 407494549 47579170 380375141 771056047 927081183 430938274 463847331 429606716 630113727 965557648 893549134 624493109 747789766 803794367 847521436 615710344 464565768 910701626 147518270 429326952 489371811 536892769 965011695 186027024 897331802 193217212 682907678 406024016 589402499 262630859 235881612 77508848 658605957 874951024 785415888 761951032 100501674 582826772 811564084 662090355 699019691 618808849 461721460 941442553 164562931 86479077 978266306 173832896 131531744 984802366 777729074 850781516 488900945 927811570 430335617 456590402 787329744 700669249 143237188 399777292 585912991 756869727 317577804 121075451 387452488 964249005 807069514 139743033 354964186 90269837 235747620 267751020 671464526 141254562 613804228 660327003 612343143 743342871 633056469 692961432 223169593 496808080 806734481 187502102 450519529 126359695 866761841 271493882 140636588 635311868 6927077 223076841 963321066 546058489 993711793 202165913 603816442 431995592 827858902 160388302 996487019 625281040 316235176 363818796 304025198 264220755 290568199 227283728 430705443 983986599 142088556 418804899 511934562 556879614 532643196 431382870 46926754 403989967 266383612 696595045 130745587 822602078 245920366 972394679 762193216 256976824 919964444 690570426 119683961 11375556 3853636 693621864 975845988 569201737 526542307 934361147 705607620 530520657 356372522 872789085 135319484 78617548 624102216 671949077 553184560 119841813 985682682 227152860 893225739 988572717 639386058 133180800 675361986 326062917 650535122 617298603 325670045 459669518 833053161 346574234 283353930 757138123 72278135 757493228 708158321 724353137 889220963 13245847 524517654 686211023 237118187 622041735 819380642 904468762 690911121 596227687 160086738 106061983 760115702 64776365 117372104 114389686 868826405 916854467 819559002 915954366 561707573 498276849 719335394 662240838 262255199 717658434 907112425 190552404 169691414 759861189 129817003 792417837 653756495 930510192 26512834 340117202 600875894 256665739 69888440 387856915 46990134 724593675 686200182 599317978 537179849 996824798 510583593 789027695 475714988 982810065 834882261 511084508 679002890 770695443 96528538 238085615 751920397 884104911 761200071 721581067 799681115 398754426 579824670 361528307 666452201 532764460 800758565 774831220 451939662 461163085 142616562 901130310 206514208 590815905 129879837 325422338 803778879 197123431 930854147 783286107 287048660 632194524 322030610 311974022 147298978 73635917 184890035 474462685 697038570 791577598 30262342 870288757 613489855 839798995 797400137 546346480 728797825 423935229 672916243 75785591 687347262 318190700 82915730 16525852 919333689 167792053 420701789 542060280 435283435 756921199 47876517 184095969 914624576 462334233 795555321 441133394 949457794 933217479 350460608 931575193 671686109 642996827 608907779 309495432 883819947 898031930 638409623 468176105 165818272 204998112 264212104 741164960 726602553 897813675 485702672 947224662 475329353 174326055 930789646 571567480 377547777 967508653 629759068 65723243 224383879 596131074 208715100 265195982 260883073 580620006 673477195 360983469 520702566 226537555 902105727 528095801 931643950 466743418 955861183 426347130 17096181 779197353 134206405 780051080 472631368 859989090 512252713 231934368 820052503 248227252 528946558 235670427 500368909 978106667 382356642 893724386 314014589 823877039 921624216 996244821 359186277 343494882 148018762 548612844 50605469 122362084 969469171 612413736 9691111 296650067 610249150 930771349 939398215 488447856 279005608 529623131 387323030 209680256 702641295 885656002 996082706 619535795 210186004 884237529 343044962 622100529 465289149 289852822 156499156 118824824 122896913 816598723 919572290 261792963 525487448 493706989 470104091 651481555 641926796 934982956 355908338 915560289 147020998 397479378 872584423 354765677 252941601 163062947 158035252 949674803 29892173 486372183 9860578 735726005 606461575 342995034 64395412 902817730 574486128 223456251 797187178 990985067 497341376 876202419 308387317 474903870 329848097 431710303 433597949 982573629 811737456 482101242 762260821 957248938 296178896 169713349 687734479 658413877 926384087 491859586 22668227 923551809 521578544 871035257 338376547 141751222 286828882 661210685 977268318 508588447 867226605 988977289 126111643 499597557 818072052 97352807 499831903 357037565 703756769 530663842 363798748 597952718 465736306 542617631 465115267 308522762 633254366 258948826 191398809 154627614 460117564 836673847 415955844 203980675 365842504 19698199 738392536 847930046 681407890 173057701 760881524 39316426 474843618 55006141 846451230 259220116 53479824 750638577 697745594 288156125 657281216 973344992 169564972 520321032 827973585 297039716 375513926 510339750 788484220 605061125 138732038 517348935 462527609 684658413 396528734 476372778 990403548 492253873 522222494 115610351 158340590 965374979 821353855 920183793 138858044 716465006 959042564 863302266 219906836 769125696 708492583 310634599 387991739 738612999 319911103 942197210 445580276 72951402 86777695 852542029 263385127 281423171 132479656 161310997 583514573 945171520 144545778 314868099 341806987 596116778 156654930 504990478 928578019 762311787 892445798 367253187 698148242 392758783 886574905 101234110 409209535 860075461 190919915 355191990 203088748 741635490 165772464 824954418 69108108 397511696 243947666 556046291 550000247 203050587 410202874 309386008 63838383 337278683 739685498 586098645 648999745 34060289 394615251 91669204 267105152 500333678 221682780 737452653 576178583 922827346 932232671 138286704 109995183 819449872 278707190 917283169 227612758 774693089 434177016 656567489 545798971 243044373 206752684 97288853 464519006 908228997 379007994 686292824 354676349 476268116 135546592 36299531 5735616 203838458 466196597 261324541 213299401 46149010 849326991 79433091 692721668 358569881 920863677 675527278 24095084 569127030 119088152 606118999 232179689 198964622 492913243 669414429 352465619 623245099 210188036 160884165 303579910 269421264 613974681 692826411 573527924 70619014 194658240 935513393 710970756 74655786 213800218 622773277 92636277 229593400 47764393 281834405 410796525 966122688 203691898 361269215 738065604 473924507 741004846 220808881 145547544 784181993 536545691 626978767 575482393 435465543 722504239 767788362 21505178 7734552 945415857 210642059 997392526 221676297 839613554 675325738 739283895 538611616 969363694 940549186 535462247 203465159 768371079 867975988 850438860 286623328 302178413 146212576 998314347 609708253 278930952 981446543 272845007 637991377 488961940 614863472 568556738 966611178 876321399 751490072 503563644 884142793 236190459 526435427 688914547 910950489 155663205 283447337 41544213 401337828 69170928 48935510 326714814 75612833 169274191 981982867 171584334 361210264 812201907 244358090 600675849 893515451 490789946 360912008 10425096 754116528 172837412 758354405 124922144 687194290 775974295 755583754 703537079 663907940 247923863 602522348 209632208 751318459 381910204 289811362 412544015 251664218 972465790 996685157 220446371 126503371 916205936 39716405 569193700 759354367 445128188 300031496 528587865 716762706 224474273 398099454 692896480 992609961 293170740 322624860 721379602 354441183 180110253 477761848 784888739 803727709 219581430 406366479 336312418 460241577 841606006 883064457 811446699 575572435 722410368 117833378 399371482 658268425 166775195 594282826 555423934 838573383 337115533 119528903 747922748 273209404 42337528 733992098 421113654 353551692 182493778 55527516 107404755 941314753 473077043 442978671 983455165 320578947 358058484 388646885 6649495 813473719 580771460 384616071 969790374 361830483 351346095 102859669 818400238 574959517 433496718 145067479 100140928 755889867 227763447 925170417 644014386 366513754 726551111 996947144 274523870 598634806 399216706 645536815 336687021 640506216 459166626 588948949 195845199 645116878 994675704 970294092 302556076 583409712 610579602 807764596 139332842 406530424 662545252 147859828 126892012 227789647 975991292 878914917 869107590 160810822 713223614 125440137 668592375 853254781 9615742 804911088 299154753 45538611 628223199 348742794 937416480 43275205 605268511 601338565 895816456 827015114 299396445 341924745 711510987 204262445 942440466 97941723 946769183 780102399 489531235 349404082 577864866 990007233 173576018 948963485 527733363 675106505 461368282 346246216 29064348 593211226 422012131 658814784 178966598 493369506 437859641 576884600 590951802 763059657 986005361 195554659 344421604 410405551 526445065 201135796 243776151 458889904 613131107 902950581 154174951 315742323 700847244 838103560 968434141 357330444 92961958 841831419 249739833 802411432 922922845 862449406 149798573 215449433 300742623 387577798 727502819 414445789 24390646 285268231 757134759 914239060 867960445 994999417 270896498 97777423 289406731 603394967 804581028 82950031 88060305 89400281 732583412 916447054 747923854 791956568 454719330 585768288 599949137 842953941 169578103 594265092 702336224 266281018 420814445 791130527 481858688 4043661 835233658 140605142 131534142 42393175 420038328 585819304 203365552 591396226 139693266 321820893 261098223 951884011 675887976 850035432 890714384 580529704 799242838 592792999 803719515 504666582 966268151 252450347 158112409 50243354 497158754 534759842 899031890 843224545 397745974 352202203 164708666 523617642 471036468 865339797 934274009 242518846 223249817 104929674 547498611 840512859 203140749 168163931 739093004 318243814 290643950 831863759 770279510 179622534 326292253 109205225 153719893 5221211 595918276 494491187 175657146 919121810 559155068 554456117 441874634 544369437 218639538 275696846 712094758 920087165 776670545 594642216 562773061 242072580 225996929 833133547 617835686 515306534 989892453 469979598 755118893 589217029 619818263 45375980 910086495 130287938 565922817 208473931 854885799 87309636 314897534 849455690 995073024 492522946 751250753 479854008 904587352 743348837 796002334 74976064 453527428 309179934 515491732 770601963 378617058 585796173 887136199 248832904 612289223 440864707 71585415 542449103 159812826 739193783 249516776 200276545 269847857 341102513 806729798 800425004 3062331 532637429 340868151 91818352 82345786 519431578 740993665 524969991 586229540 541805277 496366641 511303958 445761582 224027601 759257064 11638290 903980200 33421862 725052046 96690272 843037059 502815192 646728217 728458512 258924612 634978411 186740679 3746486 416903274 938462581 825648853 433370970 34035317 238634164 947554126 521610258 336911501 314165630 545565136 22322875 217866839 858525546 93120951 595881846 399632861 471370445 745247547 607796814 422616447 306615339 75286224 383399488 304318939 790945904 175342947 744111805 142144920 202973225 596695643 281397607 766089670 423946985 364056014 754368397 102696343 973012090 65319585 451426163 231903017 509847443 672726472 571474009 332636567 623303384 313928667 316396529 897380034 509949615 860300626 714076909 452043047 616910839 105193248 703078229 897153926 172482722 737535041 658627278 25550697 661273970 865303841 158394260 50891469 461885287 125915697 598352150 512023885 756397347 275806788 5860433 349624173 532918490 298813738 389007860 222096519 398611206 962046948 866407424 99205159 762714120 208821516 641064741 905873921 579857325 51762258 28939828 760531973 974425349 302717253 894856636 310297701 943340731 41545882 65556661 347204476 757038200 734012964 476866551 589452755 482114490 994566815 438314841 6238851 480415731 631841265 586772331 968480350 367582289 287323767 114336692 186175022 969579539 281414158 873344955 169498589 210406521 779956609 321822237 848923713 336795516 574117233 53891520 865845203 789371435 387422136 535220579 338190168 717119135 898958321 42507821 531785369 277142235 232376993 789454963 488650943 518855793 195845754 235343533 438282205 333429161 13213968 468295440 819428123 718774331 435726027 282473555 952410116 752032905 717971956 5838215 462754227 384648564 545917705 324561144 900746885 772559027 749162298 598970882 378370767 139978482 205286187 110435586 949796354 595455145 861268970 877150213 464706181 51383286 705523456 283469052 979389548 59877983 158946423 955796777 453120671 860410142 534115509 327389645 627008090 836539016 168666728 104826148 284248231 506538655 92856105 201465591 406513665 383909445 173016409 269241354 801014689 739741897 86188603 463346079 770364588 383519258 443435291 950301873 49358554 945547685 318790151 863556343 750491912 122243627 571687145 215216905 578809512 78946216 595068873 543050234 823853086 244856105 34289788 224320772 274931862 541032717 229114492 18750893 876734315 728804885 179925759 931325370 705627936 44077881 837474674 484500663 816376127 905115482 35891267 217504497 120550304 70541296 650186408 686124832 492619905 488977466 812996470 316360601 108599220 947347409 562018566 359049843 918429790 934382406 676296699 523179256 164351531 472241810 486239899 304955641 28640416 629404385 955495226 309784458 781262950 498618552 530627046 872808949 354257715 402059661 43907745 120684365 163876130 332144732 6372300 937417602 497791700 851768584 56455726 418980829 584062140 55853379 221465946 828253409 652632969 339220415 496579789 403821397 947638596 686232114 120686711 386220348 211735179 978735701 912498947 651176454 619005535 892229816 662759300 127433838 841854975 802268351 888334432 245611876 468547070 602678706 280951097 238382216 693689537 575168566 39590810 634632040 565790097 823994944 756640376 619344273 70855370 705966242 857384776 384614732 385859123 789556260 255091921 224151825 400586900 793030856 391191357 737270328 448123354 621492431 98374957 431753455 437045199 230273308 980700659 665941351 998758737 750343428 812651862 907089834 260903539 734169134 575555911 939137393 995697019 782652937 283189979 125864223 156400095 636218567 7727696 300113232 446657694 566924207 145195131 873447911 733473974 252362066 977962393 903065614 176681216 849581133 956928634 960441639 151023476 612842276 188348048 688184566 275550141 811280121 982595056 871027341 853613744 322056049 233242771 94039344 308390349 257213910 285341910 877388453 582562053 370980631 697615902 196069981 356294708 612652555 279898052 87333965 334973682 714536321 929850982 262912176 292113809 892521913 521173337 85689048 20228442 732766355 579651905 979394328 292832491 906442397 663728141 371428399 74549998 602328152 244368275 583512428 66204708 365901633 269376347 484323390 329925496 563097419 223319622 175575575 851235182 533679374 912686898 872645271 397396175 61807164 54886971 965902049 27962928 519950625 107741752 553084059 381460851 995029885 638150080 214849199 921212647 568305465 461520937 554821410 245522752 296342461 824404579 130172410 64267138 106484260 441956877 703749647 837514254 190069492 657308589 246541308 253766902 746773298 269963670 478020924 255148776 345371926 129558640 182280370 535993222 433455965 99226484 738437188 346465017 964843267 818831114 552943790 194594082 185707215 456813374 47855677 350119455 506702326 179084315 119197599 790665954 844603034 821758824 774144223 57764020 577518056 867720575 457171730 723116081 906193117 428459783 959850980 346148825 572070290 473418499 378201905 269185615 174902190 754310564 292907049 250628212 869851054 567930017 60506860 250442285 809690333 965491908 557415612 499016487 262516229 616520996 476429373 257628067 754021435 422275822 742710697 399160482 397362180 790366794 406049951 646449587 268815660 164266254 119197174 176078059 888606675 283212205 512613517 617324113 180689635 614080760 727812484 142362600 917279894 626226336 107407330 238748534 901898881 462326794 602881125 316016304 354620941 935729303 754808390 208842348 833451268 985182101 653889955 813766189 296043833 883226465 597006741 886133716 576794828 719434264 123822778 93631608 443413724 900982409 965179479 110461227 382967980 268758978 291207603 101032021 669649701 683207363 687495673 415835222 362682738 125733340 458767960 80792031 625331444 717847873 225855980 70316290 253557400 813377115 517420492 592935993 151386120 202516251 705942071 203705687 867849074 215666431 382679045 359724158 204401129 291643065 995028649 668034550 327192712 44531371 205439047 199265733 543491642 770013076 289999369 254602637 141777800 94335699 672794127 392381829 229125510 253939430 620391724 627119750 691306551 407646479 509479597 403501953 314281875 238244973 434898263 247679516 987358862 349087092 93547165 66743809 333648260 909225676 166922018 48438386 808797071 215691230 46961734 542041329 769015437 308966148 469765392 941577412 105246281 263929058 286509591 278872062 561835621 723624984 310170430 219499468 29793482 825865133 922726417 274730152 275989695 581184034 762661879 443230498 382878939 341766782 965626137 365996996 822309175 125224935 985573779 758882549 144463682 114361659 767764003 579705974 634618323 205031711 754090193 748872290 883680302 306749642 797259343 784635636 313139379 157196543 563133847 206563697 797547099 880730050 350661390 288176278 204030711 362024031 970776758 813220443 409846674 899374230 775282254 639766851 841046100 192775916 297231298 621876765 748052931 506765588 907163507 293919186 299782436 164960900 689484391 672412439 395572278 491997685 823626575 18475651 71500347 713241455 869886937 827313563 869133038 273085016 592368619 143932587 656810837 232470666 265200078 208425076 133558933 774661440 284743095 688897946 608549802 257569905 500426167 288419100 725425211 224877929 785151392 583637832 744263890 70872744 679771506 262919358 767056060 571200795 191607007 916214278 540557152 703447717 582255851 461309817 91283557 339355954 977058741 726919049 257828420 255309758 674454021 331250571 218690177 386338674 327073596 101991662 369024767 463390448 353617149 660000583 22431500 503968803 95718282 712905888 444599657 921476422 678948173 884736989 419918775 9137292 450811634 297323324 986448247 762996860 330631971 350727137 186752635 556594706 763706843 151174249 555017782 352349737 530757274 456629757 381353289 821698580 592903266 881380008 630501060 44176842 16476303 890373041 337938777 437811850 420969881 717182220 84584030 446154173 812276232 710494522 912804931 699272142 411153855 94895909 87010957 599281961 921534053 565249547 68671856 536766408 241803393 826576207 461551847 208723279 589203931 629045383 400857841 263130232 727369585 492394588 100044133 334144549 35696610 591689695 228020632 572933676 43507244 100046082 216588812 748417045 851039717 993591248 631522750 462656302 427865240 228854801 365466853 438903484 768389512 662371071 972937229 121167095 757561791 591840206 559683497 99279417 544559774 116793759 291657696 705362583 479648034 492005981 938219729 120469297 596341668 849231599 524406030 55748085 690368055 447187080 295050337 704878605 39766003 517647058 144160841 96497923 35811954 628325104 809862515 363195397 993016018 289613786 982984128 591341193 608368205 311562059 594961620 113268636 757280444 174880140 678755712 833170083 474407795 67552094 396787218 802137767 241571280 156194442 973392476 540267197 545180192 977059798 485778172 361934023 571815256 766086401 961627331 17283873 725797513 843077984 542700625 140498626 404178294 681905610 837218135 62115182 477476243 2112176 61874635 696284064 459433814 71590783 968797221 854518101 943544859 836104847 894175470 75358697 894421101 656672468 58590434 349060451 914814132 26737393 875597498 259554061 844012858 15492317 288612964 825663714 448145567 141387036 708694641 481745230 345052902 640258448 374282383 165244634 34735498 724641299 469407650 346622968 685077757 22929122 214003141 950832353 265365081 628209352 406237896 262913996 790797215 715252014 965640465 199678386 673468787 259615503 111721470 203867896 70126154 570642880 686377435 117675469 952930560 195638520 517690512 275711142 26047837 431161086 294830310 926827959 937083253 127937558 826102916 685024136 150665235 933667958 248239958 416753608 163865119 86130801 641516722 977214293 592775776 169831372 349683499 381539366 312953991 855965870 645391054 838097920 408004307 98953120 589039527 74920671 549837485 235205905 447864205 496743753 437765074 54395195 372925534 477770023 211517465 197212974 187444869 894050568 923006011 390055424 54862299 37438543 642631368 388000981 807086805 940216203 483741847 889367526 190416000 197876069 951601393 101227867 729432141 381092190 852141673 49584077 53087544 224149556 690555666 43216144 671833910 970955059 409101501 159313832 132180452 860438515 931377059 786186603 381919474 145139023 55430926 450901652 521760985 408512733 580238504 559032453 645525191 253299084 607013524 735717808 539083311 974810444 272275559 657266523 667208504 990232335 309085827 451931620 223507399 357132510 368654145 295125675 937267206 531482497 736357707 152943769 167488428 424561897 317749561 523154335 78196689 131233173 590925007 725909867 338214872 57917239 399431345 47481630 283326839 222265384 482731289 113297990 87821578 708729871 975961779 154520080 357318758 882581349 66340270 489234747 554740193 995513 384736204 604539019 515712835 67108953 797474574 454833323 834809748 283175923 546160229 201704958 327341855 139849819 798445752 303216641 787409770 507571688 121044162 583156035 594239043 554868796 578351212 684818413 73760739 330354214 682001268 625801547 951990235 702711556 272864537 554609451 806947103 482454858 336880063 389780991 98031626 90296359 967610922 705821706 941311228 739794967 55548982 900857276 322269031 857559659 35672988 74235053 80506446 105506401 514814194 16169945 532451202 45619365 249627430 457314333 988803676 435452089 6883409 310834792 379908662 877881602 894894762 764755548 155326776 1882828 418322217 547985019 753513062 148656273 946421800 93111628 525243560 997937989 601154343 173303629 149420121 306126044 20745759 773892132 531868798 431889036 109526060 234527887 771512066 311173142 87048139 529092364 79564383 549638075 999053284 55898615 955578528 255334921 96269765 223113379 45184037 608957347 804363013 382627037 945664936 913683698 991652185 753395816 844610099 162128828 952288955 107732923 717513801 770912471 801958175 944664711 313565825 416273298 998985420 721729468 928461527 949552833 783509339 61848317 311808195 303127591 314476613 672846628 331333535 283373328 659955539 442582780 141816818 440256557 463127471 301356681 312107399 567387224 842486692 431222732 900002000 175318033 687816465 48587012 294035116 368295829 278517988 817457872 252632727 932063684 726643293 596689825 528829740 602882078 939146857 775226482 303563332 764655569 49169527 984596790 801288341 61785602 622898853 390648504 288622052 434293801 904920445 611171444 390367165 510195391 949843586 217852931 414090491 392747664 398609407 216445805 900780135 313359439 718622043 261345826 837976785 411840442 332304654 198180170 17518393 17904370 593489125 936069807 738318414 850685961 912789474 349724162 331960778 491907637 193070706 783525301 148424599 627260956 973318974 553050817 250685798 357925674 137061203 13231059 375276933 836707635 625855196 203484946 55642257 205280219 678088306 778345364 133280845 663221973 414040266 250292504 678930515 600114216 745019131 233889086 581948480 426625783 465749649 914810669 82267777 806447212 827631512 964412993 723384563 479124873 430230642 318228660 947566653 765010319 816483337 759930181 529314633 128044582 934379951 726392131 981547538 532000658 412487611 887995022 787245052 506296502 482683134 203195546 262916256 560201090 641325044 53460744 993471110 994965541 359471331 302110543 188634499 330027010 980281556 689368559 520483576 371367207 222831483 941936269 734700782 755821898 507461317 39102630 60040303 209705488 649276764 164206665 751771933 209707491 119445093 277377 141501723 830801024 883187248 235994814 577473995 385602222 102553444 483235819 3845079 340977173 115256713 342194302 320544843 636441937 945664492 388092054 519270357 356389517 93386299 798015991 576278399 532530264 118565587 818277312 212232003 316118934 559310916 487776327 554461303 229367167 368915447 203611458 581850531 424997527 169467969 643958077 775361178 519335688 223716621 684809936 195977176 624207728 835253589 24667699 24623818 995042543 459231037 944565071 605761963 549237597 837491308 725733303 85526970 215318428 179866125 879340027 468024227 634772021 603272680 510961612 435991341 111153620 921024885 934804496 929861478 633745639 964610920 649204165 908853089 280836085 746993621 853520908 620853773 523336422 387954519 306309839 776146288 779092649 456832917 266362006 199650293 650445452 466272924 495270324 14444786 593512818 272214783 238737463 319696723 319696038 487134948 177653818 364500900 893985391 871042230 283750768 638984547 178139847 119748270 252753350 709786189 604160318 663908818 604349799 325937777 247076167 561628658 583198114 705010725 1499604 27905747 244568169 223191633 16030269 193403498 416901909 928626935 663864388 840414380 641962680 318526499 982370202 643534582 325872788 940258840 158362378 678835544 747061093 937157881 777940860 428757963 77583229 156961994 19386981 924827643 859360221 271361072 927598240 875928490 722814304 616037830 96522040 880801667 41902803 856313185 499003275 851356972 213555263 269393683 93053129 860102036 441746536 373060325 677729379 290529964 390841665 978526780 759549133 315470284 81449117 852563785 238196210 219258954 240176009 469173055 164550686 694341486 603356971 363196303 289771171 342434811 490742860 628564956 286948992 943798754 642626896 550374353 121627292 297173450 349690218 422305360 295859418 263550332 968642386 111424292 100361291 91841720 753193951 154850931 721294459 850039138 233873821 108528782 172590462 185591346 762472436 481887249 999876046 715736128 176615167 101745015 207731437 385160492 193861880 312045871 665193804 351516003 39097892 383727773 896631384 423581786 705082071 224426126 185027862 26416014 821575782 319658014 648501950 466141119 183118212 783032753 931981358 410746950 953526172 305724280 562380244 565583809 436903974 589936340 668512374 252865185 647844252 235549286 777173476 734301432 165038178 168308939 470022482 595413586 660484553 224678501 208689552 52743454 207359480 847446588 833864889 855398813 909378652 798705 215968917 618853152 32501312 23559998 729297702 60162166 158697092 622162912 662130362 136739511 600101785 965136411 116948400 45516857 236061978 656733252 827761614 126067858 717338962 382633183 481067512 558153845 255243795 888577278 731455493 248412098 18558679 461254692 216950857 521728082 516474381 43357526 954914524 714293224 598992525 59196257 92105555 515657908 313787235 778439426 57953729 667164309 996061836 722361478 113462332 130299689 895574772 227928587 812793156 609852753 381611107 991774370 552596957 154057401 520800872 827794565 487134999 118858472 671325597 39812719 842793944 207210171 567743401 441306202 652224465 994166517 350695654 35700769 401126669 676720047 616587084 850800813 657855728 482494966 697209562 982025258 774589975 814002380 80622579 111328597 728007489 359453168 887551514 315750825 975582885 477966883 363999250 579132987 895605599 763934059 164329212 891547022 883522083 166185116 415372958 822555177 501989740 924322863 733198213 58826556 840395649 257518212 312699203 307704300 428084741 283304453 864160068 331613391 162557855 877733141 713858569 294706982 616286628 36528144 462281386 936806685 1114133 187338978 716339101 15536970 114487083 612508387 740533801 587960001 206149970 155060237 325968572 884635727 671296151 595127822 972284058 863075761 111554510 610215277 382956010 729789013 429218967 881930258 889995479 295049814 954165385 882939583 692141227 203193663 786660915 297517894 34302570 11347177 633109359 867685421 303342509 312178146 744364010 356866829 16726163 286415894 568107151 349242566 875630543 757376316 429099916 36029575 531889078 152734077 230598901 259866236 849817477 596644320 24298244 416327970 995042215 568536515 560754548 909599855 842677078 674931339 800950037 213758326 745026598 778327337 611637349 407833822 793683208 305680447 884971147 927180878 393178353 651869999 988594353 195625908 204030256 83529288 186866359 5910648 476325466 297323118 653924984 451395979 430751085 437760705 442225185 520547367 804789360 441324469 114749230 349086480 866499370 420488030 898374323 757047255 951233116 201851249 675405569 749045108 38712553 353981845 661854773 374683989 157402380 880106744 553893625 883480025 805174754 836108072 32460083 11612570 517962239 913777922 657646279 801001251 466748925 852806858 558852967 593017735 100034674 150259037 914994159 923348623 183787060 501525924 500171271 852231634 453486260 523316160 229063467 502690670 259566492 714862705 547167843 392854344 764831545 13661321 303245675 525721103 651202503 26866487 460588923 51256568 786988253 346477479 351496987 475536519 89434350 897070385 329735942 4968127 489277840 843292566 17458338 204365885 4119320 730618515 456810751 450115181 322781024 961822623 230399821 823334490 410293457 6118781 902327416 147455461 648979824 675345432 55097059 406893322 271195701 62726605 470355690 467085691 730089676 981744273 148804031 160463948 905241644 893830675 617572523 178436863 629133173 588206292 720250838 943096916 739194130 399689765 196640846 784986021 160507805 599554969 898413440 646639591 161623562 316167817 805470273 384568313 320604245 172691009 774314266 738860089 991959211 949286225 198897396 475257975 984213920 264895878 357934668 635252364 2779758 795585713 714766016 124074780 319512611 166691643 59910674 171262791 678603374 353347261 75048943 627284516 364593303 595685317 907319601 992081540 599364230 808743076 838370116 523152262 174057323 762512589 368500281 363190596 424111907 804992741 481101731 796828809 787997488 955446373 57493171 8800603 704657023 180175840 918991013 72100049 437224489 982252734 679707211 424078561 323976432 396822955 899648028 18438809 529044803 904632150 425775309 550669393 193792920 5360076 71800514 929535531 175921044 689327094 900249391 761059502 194170830 788216546 233873206 729454696 38331705 891619378 726715672 711532251 108009865 884870140 838242101 279015765 495918801 909008305 147930976 94281566 509525956 962321094 400079623 404624055 951168153 130053876 543592359 57007274 973590006 232744908 196363905 454651536 240938600 808533437 963763700 887757594 225505363 678324587 639981415 497392348 897479699 642658092 70465729 165315300 284094068 386656964 304989189 139042548 199924359 335904884 544781385 584926943 463154920 152729196 400733737 608815845 41840229 588821335 193409718 325745050 769067185 738424902 65446888 490131825 441510896 22980329 15185550 343895848 412086906 116164984 115827060 157309665 538040459 996463461 893204009 953683111 989737188 258341568 878243364 212617221 895532195 183235910 284800008 547151711 249197717 538976959 81333290 28451053 258568545 26655058 162105260 964205086 859078267 342678394 280536100 451514482 312347744 188245391 456718257 518658555 347839053 619936782 169742127 663798683 221566607 436929377 445206613 757439236 796709756 79297115 1227722 385890491 475741574 436964890 31446256 304687076 915859340 612581584 668113934 509050821 92959769 970935110 939042492 446757976 852760157 403962430 756070123 386563971 466539235 636820830 458916737 195142294 757501091 44663746 334091126 473091007 231787875 634815371 390864366 161468709 768533487 127528985 320296624 333028712 337697940 640937408 833892251 865513658 184172917 436250948 853934731 19146452 434968101 291431962 365217833 592943880 117133750 259914219 806297141 359043124 82974771 347359406 370534837 590499458 556591181 367174344 872383537 123062591 953470489 692539204 350515339 217351874 256465536 633471272 754457035 973504432 172809090 11211623 331828513 978613881 510429761 224956233 957093595 199112737 927628767 562225880 971838875 812498153 753792616 841684958 457702027 421485455 63407337 113204335 742851865 984526792 3491110 665589257 251269922 687984618 64199510 341515431 122296955 212561838 507682228 154534121 785427542 686123319 755152838 522101542 96322652 63835172 745012376 347253546 252308021 953883235 240741296 812651755 509258602 81468852 212666149 617474272 908201960 272182270 91633901 175301927 855244016 92237335 396041684 185656933 148315552 694083045 766434692 393726980 142853504 113799607 29726265 848244277 64910396 312405560 51619140 343381115 835951441 572372829 766269194 257473326 918322820 853192196 892435269 343220237 341292422 635625501 768475976 473168261 844262716 454873927 254670657 985831518 947225832 554767545 580816957 723181496 551431307 268020990 484999956 519545492 82648777 903489554 113720217 398689598 238310795 283031841 284265035 744798756 556914923 834040543 491099073 513924202 698119798 697930353 468497564 766832477 506893735 851713642 692607007 678784909 659482001 654082892 633346619 650979127 882978025 257735611 232445685 879617581 489379071 475590373 341048148 900433719 450559095 640334851 229764575 256187321 177763345 108649359 718427060 243336799 442075633 748913156 289207870 663177324 554818424 677110293 29267585 242263207 258480756 872168239 388402743 652229831 789250008 213589954 929782900 875563898 875046012 626306242 387098192 45498175 606697143 671036367 865996344 405093163 102890478 746052452 244027316 8632594 926532386 29993544 790627593 464614870 590839410 917277948 19349808 77482306 493964566 890740170 438694875 419470614 406058853 16943676 629687641 214921983 860830824 918627226 671837234 1060299 329716754 843863634 218910599 828521799 858428405 34316048 617267409 769386078 180959800 888771821 507264135 278645656 997169821 292839047 312792931 633510143 127465104 598715617 581588429 171344605 844245729 27538092 538862667 125616900 36030586 136975381 268238328 578150599 201983265 567471198 842763019 139538668 889671164 394748430 506280490 932757668 622498176 680595693 582411656 257739238 36921591 453232289 380495306 305773082 837586771 308639985 300474759 214026619 319378929 590065121 912861358 515516560 509347802 74782047 495771705 526294530 234727410 882119185 665711443 561969671 761875035 744408777 637436422 280263306 133710038 333960746 748879833 733806706 699714956 383952018 949385534 444929244 14726922 640703781 532490079 161094363 28787602 737797406 265839578 195468759 893243011 862033065 889498848 831645886 217146392 137121425 561056151 70316210 853826265 365858886 429639102 430276728 918541288 758891529 985033549 502923914 437176774 693178702 575105759 557142167 844808093 617451475 674465358 441661546 626219936 260628771 391395292 501852317 806369000 216730168 680938155 652015188 802251859 672327747 760675646 909501163 15406601 673734080 271469938 418861021 141356391 577711690 837300376 618090669 867312315 975957509 97236054 366956658 182285074 773200339 253273612 373760189 825577166 118099786 961239625 32085544 606440293 881115120 128541868 661791730 189611620 273452972 374982204 449056685 689091219 546447812 300675973 996207239 990241695 792665541 171347356 323520417 560406713 271439542 736117356 991427716 928989414 619014515 334484243 876896811 39600233 99597716 922977695 224231847 846844966 312201398 899021900 550630118 697976688 803084836 818370316 33349198 925837596 763206429 534978025 933970496 229535884 534848093 108494133 301490437 565577398 411344080 401600079 754802058 709427779 445728867 759467575 194206825 886575288 505192434 363215764 121441806 379294416 34580639 226626823 247852168 467134654 764916744 165186941 544552288 676858999 438792740 718557586 708161826 256062145 185147279 896277078 890493442 546972976 270156710 504074417 977567239 674096121 932970963 113366664 159955144 797023353 413626797 550723367 808530565 877167614 832638829 86171138 172030849 689373771 841997218 640405707 909600756 457518475 152254402 301815160 919431127 310059192 739342529 431404802 468119835 794608144 392799191 766122109 178282436 549053099 401236751 651433065 72809201 219292216 738280000 309642679 66369815 653512289 573528563 378447628 462662267 883091959 291631190 992065059 630417135 423717561 86968918 758414654 748523592 125534551 401294735 320088094 669270048 689176519 436259430 417372222 175730093 753641963 255467113 302360300 954113981 509262886 665344555 382895014 909547529 44881928 881133926 146054148 509493395 109865658 714107343 818055013 547853865 622397887 677461751 59748972 521139730 130810842 635353827 755543640 193702462 863527411 869031066 726866004 278215091 993829089 994675610 213482463 547238014 40697929 922808277 604110007 437763123 83091445 901314140 287067292 588142568 91276368 943036743 581194473 942533597 249196291 249187990 660831739 550022873 621962590 884810890 712997596 630446170 692607847 365268626 73052784 981774461 798957391 415966422 547228013 37000607 652783300 501626208 327289863 383292788 496554991 54316408 987023030 843401546 983071453 619355465 21758021 298449774 942093405 647565381 484686582 949670148 290917929 8556751 650265719 109688903 790862539 550954309 648789274 487347153 916487695 792081118 553419195 778415723 1039754 475959672 94616236 951920243 642048756 571352571 349453644 803823329 654731834 107454421 64074398 522849246 233278508 505718803 863701016 68064524 24823998 784092535 300072969 692939770 688938347 461435634 882630215 273381723 489394668 691794281 542706459 582426840 505234477 232048627 170430220 294348521 838868694 507190658 2744689 932895926 601919917 956958594 784244716 777067565 950859828 281933816 316360258 210383228 620943529 831877804 785558222 983642346 128272020 701523402 522107175 810677425 786632116 620813740 199402785 590362005 628059978 286805237 516333435 430407909 573192246 311612746 421697177 890344698 161597235 94348828 997060845 198654517 73154094 231112425 814754949 840027610 499059291 288854208 688278499 250896313 931885351 674980495 183884665 114118094 779789776 927518078 232886406 663685596 38082576 35235964 894706021 255588668 89042701 597436343 879650945 108977415 134811370 481833380 885481002 921998467 404388033 846870460 424983137 383134263 137802386 251721530 894193349 481305293 463703619 927995145 847247931 72145979 254135990 97404224 404445780 558723399 45719843 490970889 328401491 508095074 847033033 959791833 290923181 132265080 478726264 821231478 523320211 841146662 594644108 614131610 926064547 609059658 816097244 571721602 497636456 58304830 773965124 469896975 159457362 308520467 29937733 172399798 482137170 977806512 915051268 240486531 871889193 317910527 286434989 137996444 323654205 226442543 793067841 829819694 232616460 977472449 401528274 205560270 986249947 92543962 840443946 48588903 125292209 520589826 76820167 828886458 136818562 313767242 190768956 792825515 50951005 597211008 188020583 553861101 134351786 815023418 721362953 842253302 712283513 692908697 885547941 176810368 441752485 610495527 36765947 466158474 999839327 346028412 318626928 148846714 932648352 754261007 686344415 455833943 116012365 995792754 659226510 253272913 909721256 1726102 34234031 630281912 133672985 261664686 157051919 268131327 99014245 131028978 667843410 74847544 404774622 587856973 850189114 160738094 802872947 716135272 334827611 36512957 997359059 420198405 122350872 45889979 189551519 884111025 689375904 968707981 28462228 503829099 394846799 212947217 453345790 804054719 560239137 874040248 426757119 196611570 554677004 84907843 229845885 855171819 58935817 589326871 643455134 578326162 176402745 748249186 504232595 955750720 693087928 158319125 958075900 176347537 474303691 558560370 111977398 188640690 534730678 523358648 848535400 270008503 614376304 240930874 300814108 281711791 348849535 583493125 66461379 996221700 551074039 916785026 585759968 636114570 278283683 749226565 62968686 554643313 666181181 612507990 804267392 769136101 791828424 168528346 150581468 981596080 348761913 246817564 721935313 747374839 920376176 7974034 157091661 298055729 588717901 449762371 676790313 586520893 716873744 898293563 943920888 24133844 683029054 254862849 517768375 756001339 686972250 435583744 809894610 690837642 613908979 649335507 812342525 884840539 55630981 361492984 512481267 553552348 103750152 830712373 517027152 370218097 387146175 474483006 72229688 675590658 636232295 765246629 268612367 336092146 729596471 107243068 400317306 114154644 29305785 536876067 937760064 903917518 69567386 885865890 419648699 431374098 397425868 85276549 807677769 126954529 498516571 219541041 851381460 207468562 215063583 295893698 571600838 757029703 972863496 900778159 126566645 893022911 216579706 993920600 446589133 728226145 249194585 845397755 3259732 907238064 278319514 354081454 99982058 412270900 952704764 651226413 844841354 946320184 739571997 172479444 458212027 740269751 687737969 53127763 925363325 172406094 192150082 82008212 566763291 279604181 998481685 991384810 660643193 91584151 700116117 732505773 701337055 584687685 778125642 593858912 527466656 67011523 60409234 226377326 514257251 115574156 392486083 589561961 621685789 94537939 952786823 744775553 110409598 945695099 895736417 366476159 31401488 932176416 183063926 256089423 155241014 482092720 980237428 192677362 587768342 210999014 300273835 172198855 645661525 161130291 865419539 997669615 632667679 863233301 795466926 732794398 346727412 23291637 934006622 259332362 310123706 408573679 538579959 77512343 628075533 592239552 533147990 867203299 148823348 352772957 84260572 190542923 961425898 551707430 511093312 81682572 306862529 657107796 225527781 158584013 283429665 221041970 596505898 705033209 881973426 683808432 444685082 324021569 743489061 625821372 448111656 392222911 957577495 864305837 611001303 139642550 588642690 211927923 188383554 594601391 609877256 54888008 996465720 842572368 864342077 300859185 215083798 709509921 8820910 797306116 3535430 100606111 313408589 725944708 307725230 394551466 79395339 547590689 650272191 731595433 414867415 689172188 617568010 75907750 512886470 750030592 381786995 135083821 734038354 603934775 95009309 666641454 162711032 494779658 254290390 329093867 248269368 948064859 569211063 206067991 69235944 175920631 369526859 433093974 751839629 781078889 806352763 96302369 935610725 101794690 840089753 857834447 47336470 108668849 631303283 926312658 649599863 945403040 962777443 296868731 204407694 880854963 450543089 898948361 730371998 485445190 182723155 741498974 660770523 734599929 344269123 443076451 395447671 61276264 911217717 86127214 988504085 270993856 621532950 536540354 796212420 46608067 215821666 841981786 951054991 410838748 695862548 963260743 934524555 919541759 556889507 958119490 643192748 851674818 361386857 655508373 936207810 51332363 841010335 837818436 951536256 494992519 764444601 380103701 78787865 324777231 261958491 29416145 634437608 671476807 306589839 318058304 240046055 701733974 6482911 284236040 227494240 672377202 771947304 808663223 921410248 790051384 316399586 90431585 145736296 525552914 339411856 419647711 973963292 211623160 528558670 928635576 80326729 371869033 183978685 493093854 425738932 70965748 2995375 754040998 111994066 286623501 701187294 586661969 36176121 275094211 524758471 319392747 747702581 746011404 730756261 658368090 119949620 734619083 843008815 640669081 522983950 145107789 97304041 335059421 725804998 908501470 27244380 609197198 817013478 400845997 955659532 867488741 220466962 26999594 193863717 876496267 12996610 58307040 994408946 983603606 378230301 23621771 234234069 674138232 715733359 121774962 161393525 820641721 97757658 983825078 760827127 183812946 423006493 782438836 507700267 87931281 791618989 847524800 760888797 40484329 177672417 957015323 800744898 970115450 161411513 207907316 174498295 629997522 955781347 885829570 497828844 30447679 279228639 90018199 113536621 883667029 921614381 836202505 975790087 252554558 960025830 326907202 290145080 517078809 197843301 792186240 798887692 393159879 519932994 278654349 896839179 341519888 572436989 701652945 43216656 876258556 736338854 865975989 12416225 157323523 54793991 563047241 811987352 353337732 120798569 61910131 626595686 804126995 393392508 88458979 264303945 134390083 25323232 371106578 58032817 555308368 407159647 956930464 303903121 728842840 960557953 267668783 383175121 352498051 71610720 903528425 607380316 403520232 503366384 573859322 605306435 444365869 324944187 133619029 534482579 404400313 308295974 209431718 362963364 532112044 90993118 522819302 74668413 516801920 70534888 65006898 137142847 500064307 771027215 679207830 282446441 820583912 240592904 920428923 353806208 693241343 77870645 624078035 270111055 569736748 529792229 8264564 634043211 648489768 427009710 702872846 481162746 516115857 613753236 891815216 169718415 349098542 869634714 443501928 642949001 152081020 202104260 427646571 787852248 295372563 208714311 542080965 525803536 252529088 145901015 469535933 419121057 730074662 19971448 307095908 109624221 980808960 55528422 901528040 100986003 787990639 87192312 502458630 302108789 432517600 748993925 447864746 62118711 520585296 896745695 510183075 223096526 800936969 92319934 731820675 321204216 377377707 474458807 204529704 150112712 334320526 398400872 746057017 602250879 387760613 495663152 425555250 146501137 128645297 740568730 589367932 142973680 60944099 871216793 206176321 524231016 180730189 462990765 927364009 663240753 434161929 290457497 680162109 875017650 152714891 963874646 829943796 111617999 117774612 640417493 974508119 828167066 207337191 565530028 761237138 913024575 672147875 747759741 751951496 715365414 298009753 835449664 632704684 132724877 761280285 138364978 535040096 967785082 125627710 887998171 916369274 254124625 324608768 572218276 385006181 428835011 932570858 344105870 526322493 994134018 691506645 247629911 249001249 486695599 457287120 298868126 166768964 906916506 913655648 328168813 300043369 617059675 199571076 420439644 132958723 995365780 73385169 389789161 298909916 587389131 667411623 588713886 171722113 299939971 483429821 822046473 316226058 44792253 97041986 207869449 824104693 640146275 690953372 382612884 164102352 645676565 535683666 99379231 928852164 639054380 559103017 784104414 965710456 582848179 905793078 692565368 379444274 395760940 188308950 464092543 722750522 291077761 119952911 126173999 828489875 487047758 969239552 905754898 914906824 888262656 265058967 446100678 295979562 534353112 781701596 112497197 980639756 607917916 950436011 265443129 396578333 425712787 147213414 960347904 406020942 444012965 808562749 277851813 983241556 753945097 135451479 714280999 558340543 576146989 968286370 477435040 36779850 145812442 993446892 828643894 9149108 910933271 372674814 152547305 5617475 724858170 664052373 328970569 945639312 475157119 764500582 549239969 378466813 217373727 446249310 429553840 718715238 200737268 151718684 823505575 450794616 272675977 98033115 365214406 984183772 851873421 92183022 110586272 691813312 953291809 956096193 530412007 113818311 838621581 368057548 48166840 592246235 750732725 247039537 52838738 814345775 850915358 756242175 141784227 336333684 244890502 985426448 880892671 947871545 85381074 537751834 625570684 263447462 571469375 815563348 634136495 821589489 462850674 261036624 580494847 963873927 547247692 468450200 316665326 457257282 136915331 814401476 587889229 508758992 367333440 912676183 249066970 280596180 991990638 208532959 745889857 822007217 502039247 745725958 753659810 991747851 147397473 319145159 568362906 873945202 100071677 590376960 783704818 512697712 250706728 972645767 42975820 647672553 473716489 207250031 323066743 231394145 860548281 503530734 67768290 297908802 926547703 320329032 374056892 431586416 200265659 420763532 96247527 348614328 845508125 901937375 473060607 142648871 180006706 726586993 900014721 882827382 902617068 257625439 835890111 168550856 84732616 816860557 549742674 34260899 506024386 711667641 328715798 232581800 669942777 854137972 152125594 370729779 391912357 969042079 163966796 63579197 850770210 25961420 138091930 334906434 909394211 233760959 5118462 503084055 714525377 699062635 725772482 73031229 322303997 80169129 817883649 433222919 412333832 900630386 251303928 166529875 896234746 182647633 462570636 534272382 643790575 489071363 164715901 970476236 361510042 807833401 365695811 817042924 859385150 305007885 688638154 876751068 955849509 441002273 946465084 5460625 760585910 892147361 842370527 608462095 823805365 378562699 957518106 435977135 719510332 540068687 385777489 138970944 121717963 142521899 861597755 526133676 67431337 105148395 404032546 537809927 474909393 994102917 38359470 41634525 223716888 201435328 777404938 530474010 622014403 941294540 864156686 121313695 769056811 769444985 997186727 320895633 627445627 867667821 67643025 51309005 245549118 701245913 880463360 2871448 235678114 347524027 359312459 868325395 207304455 989765483 704840111 136655894 686334898 614651450 610768668 788163645 666620854 676207718 859600887 17042459 929200179 993907624 714392125 967096322 572451787 491031218 645160610 703853067 80201667 949491937 346837370 241764284 914346826 337031863 611190223 597138572 789596958 756408055 587005400 569934301 109354876 692093947 131167449 827557334 25002085 486513725 676321787 888250271 515199651 593485568 540891201 949930977 641059225 48593516 674635058 407543248 760159816 60925729 776850057 895045103 606084484 78873460 12467556 710667576 826883284 869042493 269334785 679142263 504795382 637699008 604136555 572435869 683050158 380415184 193754278 862565543 387973273 51515453 813792504 161048502 948049849 502067813 243603042 561450606 190563638 131205399 59994126 967358949 893271974 638821943 631661737 320472927 735452156 796597662 589453704 402701198 122972251 89092725 232765748 377673672 4823552 184125378 604173437 637967307 770079791 451765851 183061566 772523857 588907496 497556026 485292440 294104058 190860808 40590666 878729936 65286733 319154703 507593045 102982358 553876825 828885253 544141399 209447149 473103938 687632533 774626160 53177896 125547170 118039347 106052422 261753734 476976871 383220118 446475505 896755567 703868626 397501472 909150493 715522430 285993916 893252588 136022463 834310954 863638788 668097106 504715930 388318048 794203916 465001548 232675673 966218726 730262595 114717842 561197809 366586845 996790347 561170323 354284483 829396015 224798445 773666154 317629668 563459183 611829781 544258866 359907068 236917142 163346810 799221230 505945063 591685697 583559831 724287203 991363291 987257747 375936222 732520604 238535090 407897809 173166389 305419712 112394295 277497069 22915726 337307437 61595784 509244990 495747878 723644350 526851667 961397948 141387019 797061703 779414477 868294888 654468353 598639458 622894692 217947474 258663991 615594543 880277601 92564717 529341079 465757435 932153584 974962367 69270489 220621021 416288652 571806989 861865412 198905460 124633704 182192788 30989436 71389925 2486146 507907068 7919035 74932609 834950346 370167287 788513837 932376630 940179102 311053814 54603833 886779069 782298681 195867802 129902171 620668330 623426007 661457431 916173709 925016882 593677208 278466746 765681202 375934748 334302932 724963991 856185831 884785673 514040125 736726282 747855877 596115378 479712576 859553982 488970196 458292366 212849152 246409441 866988545 992142247 29332571 767430631 845509941 792890898 341777867 365813204 681174727 144591291 761079070 219127415 736483408 237635256 535090969 45815586 355455863 206421405 611110640 612977061 154456638 95113211 951743389 57316766 171374284 361285157 6726123 16507947 99527830 427438256 346507885 773858560 501767997 28590786 270154491 258056415 217884206 246553931 376356784 344341206 630252023 600937631 834082571 335296276 942640479 639008997 577017633 729206157 19170350 303649913 167892448 925133201 20965493 397825966 79159714 224936719 265851935 651116361 901998462 300081332 681934611 301550051 582391775 500883201 516856934 91536158 687882661 406735754 163251856 859079483 20458391 62415657 682176511 967115997 518692107 12853180 841059248 459249049 23996361 184662968 711370354 610176287 678470636 669409961 219388293 910403013 590121943 254690767 302082604 595479843 612563215 151040588 739325623 856587882 129531737 822247010 284954981 91196005 98608205 365623303 551818108 550970334 716146375 729357199 806100813 379094235 79786548 693432984 41675916 56988733 860345879 585440854 603686914 329530326 727598687 967204010 931045953 95555431 245922764 903911789 481476286 520011832 748316468 866993723 134916210 44701168 609157778 17565787 86818602 940531575 90678909 882004179 186783935 622692878 533601411 506261699 995672267 287948198 543765232 715784059 604613713 812329667 947469598 625370229 431379498 686629620 232034753 713008961 339797808 211520091 607786109 221945571 603596412 389953948 376654296 369420033 103606744 361832571 353715508 117187188 361718001 711447167 59976878 647614796 773130130 339649982 426972440 51890464 725423805 204749217 129533352 792322824 258964017 774877877 668254125 406843148 178942685 728710132 96121318 570745803 128581296 80294930 836301958 734176513 567102853 883695653 21158037 777731806 371518163 798053627 884231568 303531993 714128298 777284892 708723704 593349090 320296896 603186072 617247573 833405921 524970772 889349603 768527433 732135018 433680804 551199112 266767937 809488668 100225616 355499101 380033603 73703783 995389616 931845239 936807278 651444174 787215172 604555626 433005418 53834470 965293177 918987174 462563671 162473253 128874095 487349830 147078591 415426591 617923207 745673691 2804096 904174145 263673659 254579088 264471457 690320044 200439372 141383456 161020198 752132846 936345243 970185965 621698138 351413806 57939601 680022229 309838532 886239555 371388572 36905241 417992376 116474989 106589513 161436469 100144436 762006847 527712437 329738827 944719857 456621046 294628261 783190587 333854971 331535325 433797224 485232273 229433361 865843799 292498860 93518988 297606513 947094041 177071691 178375447 727394808 438540034 330085748 88362892 85982592 265189887 850595266 356778811 507955827 704632885 983532840 937333415 509275623 249902200 493712514 534738188 997433517 318107416 349998983 537827861 371537549 943395260 791452217 371905916 19225382 592450390 35082913 683039320 266509278 228422333 475652977 68604209 36767758 297834210 831095098 388595592 891708463 6342404 62595498 175931074 585588392 539606809 550167833 788498683 129337641 174910017 882760207 218480261 289963527 561331933 201184227 761314032 964448308 219815611 887871491 444332653 85697609 798739312 939695488 672185687 290781450 385509890 477217915 827466673 972783128 861027523 71975416 151433641 556783621 424862302 478793744 143535808 897495790 443244722 421710009 768256720 506439290 137834369 884087878 308483160 256781200 145232694 398631888 228827758 928152880 31087847 127643262 666299086 559394143 858853834 875155004 37503057 923670121 983381542 460368191 407563360 720126461 738448187 462185061 648334728 124437477 748764588 182142821 338724233 616549801 223202151 815361179 215700306 233767157 631252295 893510622 62705638 244012981 327436034 968188944 785639519 575705401 51906680 367491281 659980455 424643274 390474810 786379149 490944322 968734745 259922519 377077933 856275346 697128877 380188333 182982969 303693015 600328611 429321750 84890933 763503355 985455334 918438981 178734216 179711347 719551924 170498022 306438238 188482953 484363905 456287236 260682069 985621207 955469718 973160270 386490706 705502645 802399569 733850974 616647674 285060190 500950158 276143920 614537676 795925314 401002105 633060407 669153814 247915300 101694693 403844727 437802458 317251477 745611357 418562977 525428138 973503076 873012149 882262320 39958230 504982524 350630815 357758203 304149877 846692176 368071073 974240672 654518274 402669397 384050365 440108281 815451425 63720689 56331463 492570574 232980641 920821842 363434044 443436225 37876681 263564952 460251308 366889566 88235408 351969138 270354927 751305500 181757582 287458029 211285278 732527807 929807749 116839597 801125697 531276725 851204196 395626522 918504669 56514388 244893025 480205036 58926154 85537187 821121553 367437353 920648116 689159368 451429299 240283179 12679684 940647400 828449390 196577364 283385616 184993960 910356329 920943781 746218514 874263451 257614156 268682381 247981097 134845311 134822810 280461518 827855524 676291309 547079263 944543889 525256924 506029068 32633197 232271519 526330748 829913747 307715711 286186459 675153017 275316940 322516412 946172930 392787010 453790750 475870496 18548885 966994354 555939359 356505553 911443073 437905041 46726247 637444798 744743216 789085797 788470529 176375062 691478698 100486825 448638819 50661248 286803743 652525125 640054738 328726388 335534797 810293491 944501873 371107215 411617765 154603873 788535133 402528605 197179951 771228085 197766850 973247391 301483655 460268873 776691969 145981578 424973062 443012942 352061844 616899940 91142358 500686365 149953219 897505370 816440506 564341297 908376128 791396215 582795007 973432113 603175452 291868012 120178212 12608722 244731960 501651702 148063613 428419250 195464463 954624716 845504244 805134124 771769664 327993497 697176581 134565091 809718780 327227012 435503548 660501699 928208962 482221320 582612857 360026736 555299926 872704056 910860070 111665864 918010428 108948085 154765140 643298667 113837204 231825253 866166639 891078749 827058919 99573815 18184616 499525841 547854239 320000599 734886911 650275884 154697738 414658983 4035922 883470326 992071572 746291035 35604867 252457371 694163383 370675655 790937768 297469433 62204269 210724891 883519924 534906218 953169317 641629892 523559505 167285261 750628336 40589054 372247330 879254906 756105099 479207985 155791764 349759909 432932733 913844118 349692022 827977519 806767771 547018363 725116365 890972124 564168800 922283490 103551222 836672655 626639482 89446767 830531632 381238259 514225991 548459031 336523878 613132318 240342175 324221828 992062146 158199884 288015535 203091681 962529401 811034917 591495557 734742947 409431453 684227337 924048461 578226347 384159383 333349675 569529293 444692554 504026709 126534739 454750879 71417859 490291228 334400641 752307848 576270243 474165016 799106451 855436930 269067622 403358408 977438804 242554252 643717586 666661351 3366204 558087843 614320587 407889165 237528959 997639471 25413623 59052428 687271926 884594858 873934184 176501651 195829598 436279339 702568431 385516492 174323708 716569198 390421884 321641643 5133086 841887317 265882731 154640765 708172559 830783533 197835713 767038930 559142333 857545506 547827380 338335799 754883515 955640342 335651583 280255772 834136486 170908063 573373237 327802066 460860416 209194802 445728493 360130085 689293919 129268323 923670299 842229161 900621567 345461934 165243740 224042308 850307930 869278114 535837622 259418247 670793783 296140114 770782069 537893803 662400439 359428603 661088044 938775898 766031958 381118718 256037524 814300469 867457606 248250765 988008277 397831449 986047421 303481376 304749823 132392525 753820712 744281686 212878408 64121540 549185681 438714891 29803567 797879788 760631590 240658765 797366034 773731905 168966766 490247380 308058284 907738570 882811839 80421100 608400894 703139830 835301691 827645440 226577645 138704181 136790088 515354270 791611480 511537541 154343614 623462007 212968659 945559463 925171205 371673940 102118881 380696008 763373082 122893102 972959802 443504863 467107530 817649 773574080 50152076 297009523 483884843 653921924 834307298 649975041 789567468 638637904 557162025 862182263 494649327 618430401 264612244 297498594 159137718 423894332 321478023 757396852 587363374 26171152 540396772 432572501 204474406 241639783 421794547 190779423 318291384 367412329 358886726 698291729 887805881 76419579 460855559 168154339 333548 525476250 447463756 473895342 504615397 93191522 11621711 490727725 915911392 226894757 540509395 150862525 221265416 402259921 243811173 10804132 539026493 604875092 607377993 373322834 818974163 95164895 100918290 962172697 876982058 8219873 748979656 447467323 817359314 851237386 623939704 842921415 720348936 768853769 599180729 741080546 903531107 900204834 926011632 534310818 230199867 911185710 488944433 486210862 729299243 264617740 474446900 973044755 315365388 293073118 167505042 629945898 635030694 636947608 559848357 250278577 168667959 147681420 752688372 882331252 236397488 464735971 263020271 861661578 25658592 299096793 748581614 563185454 376372179 356840141 366466567 519999852 477915841 799414016 894767433 863151565 95557359 36697120 262389793 99486523 946182032 223609024 194282401 180912597 160738832 379986819 322523583 57627551 471725963 119976101 596980047 124742994 955332746 464972749 690361606 59331997 213984164 724235568 445831409 769078003 509892401 2871578 770652023 598566805 166371910 564153445 266622716 20904409 613320287 457099638 486793616 162048551 248684637 672609099 46025596 371634034 324539742 140542004 424498905 826122299 104506800 88511322 745722743 832139742 457756266 495437685 721437310 9576198 924885052 190142084 27745159 761765652 901453635 21254758 941482923 341568454 781228748 914600108 86633861 797942908 311836977 683586274 723685507 30905656 698575543 543244861 747374648 374066337 502249585 52705945 822623340 362947638 147730656 63419862 762621018 262889527 645282211 508879143 351091629 619048217 702324777 382007566 554240500 156334208 256311088 646621730 761818069 84099877 934468178 124321567 607243046 279979418 477195809 772774526 284913224 632711920 826066535 455512585 738034393 179819375 187094246 741809087 953477867 147332281 326877070 800108328 467542721 3036748 904658303 992305333 452482042 970712288 759413464 624462617 328363570 629644402 491602635 429579052 955444364 774189830 242581110 855566257 170299350 902304225 73797344 550574727 143799755 613408954 444269727 356021280 948266600 942464118 190288599 617956795 322524814 194678730 87968934 105867974 774991798 272456585 380189886 357763061 719572252 192547813 8353121 656616408 269610658 873339297 289430080 250649906 959296617 381995576 629126613 550767982 451001162 728913898 407664435 632570772 802398252 34802396 357290242 597840967 640835223 370123984 796746596 534211160 142092706 739651521 762637088 344860764 744134065 490036565 512699296 957837506 603818266 93255532 941892108 741233671 666819676 880647566 891762452 746986249 45427078 480942616 965250984 670908807 717520749 813190043 361007387 211244265 439639422 576022011 391563369 303624596 99172254 183357487 650345886 583091094 97623031 721357487 505210509 239292674 681637161 296248729 903030413 775072409 870588519 201934181 20771940 50889208 406352883 732410861 631269726 213401043 107046740 133611074 54013180 24133939 918843145 841864013 579592513 654493059 274850708 91021501 257449922 527377823 769617220 878353393 432447512 605402149 205889843 130393042 280079103 279966121 34094460 512280905 76298036 147710147 126548109 603487316 681239241 398750984 675113809 462057391 515615857 449804623 267045958 978321875 614441466 362741732 931282940 913823836 315182775 472824221 239958654 691938096 754106439 549339582 543002859 148021410 673358484 168586767 185211652 27601492 336949596 150146684 18958414 492996154 654211180 182083246 616136212 171005089 547502666 15378426 668090895 937031303 266983277 865590775 294277950 699252733 904884236 276420731 775984508 70273094 411529609 555795915 14599523 635755999 334211249 8887275 322887495 766939988 233219687 614362063 761533082 562614064 207270419 245929820 873726378 566049090 114916144 961183729 314844274 806495186 921288553 151698494 398645330 360081424 919539402 657317348 442320451 211909722 168812444 773210545 458611251 603765751 121234353 935099624 524026989 884191318 997762992 354321823 132433328 433387433 404551546 491340749 820890479 978633855 70179755 35413289 674935295 144958939 791383391 566533621 266747027 513761350 165384879 889519608 699093807 819613029 56827783 999866721 558398750 252399974 213337761 639214321 146473780 910476379 393696195 966798881 360337978 763282129 825555499 639874884 689311379 667993186 664729543 793716204 923662637 403573277 514503687 402264295 281244896 777292888 559922955 499622393 627358077 441228145 515557176 248047222 428316346 571437452 515382843 516051017 533790400 201971638 801998087 661610286 788085777 583396435 759904199 67804602 306275041 571249474 17620994 831589035 946028760 166407613 369124247 407124138 767328307 275411744 817108617 549629269 966647259 406435266 325761138 842794225 244502473 941295026 200755276 114593256 666019268 312857776 825810393 591135511 741952027 645991012 773517339 705781433 389924455 130137561 453537626 420976564 428950867 795145149 400202965 365911897 444764387 645578148 458710446 579950178 115969060 676119811 455991639 893899091 76098243 8693249 914337174 97895877 277249367 810892372 390720069 965923558 329328485 745488677 32436083 302233398 925517293 754720829 497136678 544864565 607257731 546359319 471598167 2949605 352294439 260455793 194732146 797472141 138119403 619234355 800393852 363746946 63485264 841828361 140281619 768996888 797859215 888207855 559578170 312776588 928795552 562687605 506217633 457913246 631457662 328694101 298018422 992375105 380467122 388193595 630638024 236022038 615146221 477274065 623519116 311678590 682743354 75545440 76916248 936154387 935758340 293023486 838458150 243563373 440108996 965998032 228484708 372777280 633688837 273314509 780175945 202853893 409209468 691182300 878719234 649791515 10466405 104400147 815152854 945293605 303404402 233287797 359775680 364608210 399900048 104261379 158552255 358920704 120625537 166077131 297288317 954228209 528371976 85235625 264261033 670596046 398933325 205742096 587981673 592939626 13447949 814290252 594051538 336506611 619569851 879468543 817112227 585414849 483830631 43798080 646560694 314101410 998115148 557549082 27696163 830855500 954675643 41736622 359077785 627792499 680040478 792150970 19824808 542773001 887117940 210859496 329040486 926349660 960688870 763039708 916083628 576823763 887966805 813287921 835943118 128708119 282597036 930461374 912111601 713644791 82199342 857552224 961249906 943781606 751628141 981080354 204455201 479802355 875235657 472583722 741800840 734896320 478598137 496989174 433124292 54946644 80833024 22568696 310648920 275161823 205862073 782310107 404370107 819840265 684979296 948986055 642667602 299847602 645418569 915687284 287041352 495960717 203373627 261852071 181591725 640848947 70266604 527434215 313094847 760453236 550549780 500136107 825287869 956251504 456043089 781249460 474324141 285409473 953802388 415064569 88867798 138898841 732724861 762173194 216194947 17402479 340009538 653746404 855382293 437166903 727459427 388373247 268393445 51663053 871448688 620917013 761448873 532102678 998457142 531602798 135676560 751862230 194469018 861566330 77308783 444357661 782628211 826242212 543931016 739394639 731576795 462794572 444308875 91682723 942603673 950655317 178168447 950976266 456619079 243881576 985874 725332757 504489773 614075130 612689148 807407636 58247059 763626837 843977989 868572440 230008065 765249283 309453441 899068677 293467053 613473119 716685467 760979259 187922285 158315568 783764855 362904802 428293812 170444560 362705387 88127119 910881587 378339947 195337914 27174943 780269071 640752340 581169545 401152103 950341707 671031476 967449544 193639702 61781267 915843880 865664907 866686414 97354305 695690306 208930224 324057303 965975035 242002850 261802197 128352560 205054662 37752608 510664856 731193915 605684747 946427387 90699865 830178026 935783919 796962817 144850225 378284624 275511545 557564148 591382522 245034732 60172964 493259288 416013863 417216123 69005047 82050975 185243444 594683434 799257908 466083655 41755908 211879561 826184633 165780888 39008687 370423710 851394234 170315101 846951056 947891575 891100479 940061306 951712580 368427212 597320435 950526226 552622803 273542233 321697224 770283999 187442659 79780116 4346744 250602714 320161222 387868023 902748589 256686663 161175889 184050720 783233167 587058225 458900972 251205548 319841862 172889956 443768473 896956221 400251022 671354220 422586476 658583635 363185172 815870514 394132785 48793461 806776497 978310388 467877597 414819123 5205055 187560522 90999164 56589434 469569634 421424174 785756587 760102884 474484293 512762610 907307575 757608183 959024678 659059112 313222718 693185441 936695697 992173090 144535852 300231349 858742343 720920205 401604696 942132472 575663297 556525142 706330402 539020927 154916274 454505058 655885426 338556979 992749200 271989503 82588799 65085156 268687263 711922827 471921949 68699874 893959998 621753688 235806037 668619292 503827526 112856609 694353046 733212045 922052485 624057079 111914750 858283408 463352593 910999823 486500780 558980259 317349106 380525017 667569805 633312353 737704378 102437472 826437027 454560928 957646954 659317917 873690775 626093817 859689647 808161972 373045375 778726680 695745148 718339410 414852868 601017332 210343431 770218907 498698361 620210061 897906696 61164625 596880830 939577959 688551075 394923874 894621669 533886090 481333894 777368180 831043581 904479045 725178001 669220030 190007494 782929029 758003773 261614560 767098998 285987848 834498984 60543634 689393078 142941712 142420838 79437545 574480253 207362537 394165650 280435304 254042692 517686487 946513497 423633511 739150722 566049399 711464857 872687601 221621041 76672365 978510571 607806164 314090123 754721931 682669865 701048280 617979639 873333782 42384333 496641736 651518177 146233072 932931503 284770530 448355226 509878093 778468908 233512422 229798385 680680224 780600735 47263377 489995215 990964267 640412510 86677788 750008891 607054854 177780747 430176705 328111738 910428235 572707057 711090106 949124114 528557240 452236444 183369029 990853435 677873940 198047358 497433905 947958129 48715753 284535968 198856599 351979358 882648216 95482368 475780720 658785732 631065591 54302233 292576888 803214808 730708162 128120040 939491613 555991285 708140345 215803176 177479859 158734158 645071640 469057277 239459101 775538877 715852040 632898798 278306135 451828403 905612577 231629180 348852279 47272054 653771838 636381598 123793331 200628034 532823096 483564689 553642074 699688879 173900662 99002095 662507178 794054469 481257733 490718236 639489534 889224936 295652342 818485069 306197779 734586176 456361332 330420144 446979454 54594951 574303959 533576689 883360676 805633904 876763817 656221064 915245253 243735955 417491510 749265057 510343526 492960737 898471282 90812159 508983894 332028617 472067640 274303312 527312758 43508422 871012299 569841719 170973428 216953336 671814648 829344064 666276989 872667839 512636925 478978354 199355710 837944309 414279591 938580154 795527853 452495208 526606831 447121654 925930907 981814599 682446911 252045806 516487977 825411008 623769984 168341532 726083801 781427788 807256962 391578243 51690345 594425596 379128632 933778735 912915290 15911713 72721854 548892869 352663780 592853859 122226266 382214078 997254688 23874424 646556842 930228068 984088293 897290578 497232283 131554344 92344749 711556036 836075648 802461278 832007740 420292016 541929882 134426164 318527160 650282255 574789116 83107822 954663831 780950740 146563546 72672350 642501126 303907023 675433168 790755397 422583987 609937036 357058267 741942340 518960133 536500034 895565765 458257395 975588811 976115513 840098827 304126923 704432217 566099881 731367130 148704541 92101224 909732536 493643484 720613619 479572393 742413712 560353871 549103221 474282726 29907431 755117977 815386925 633018883 421512734 15499842 934351041 88686422 52542070 115039744 869188405 143763417 202235926 536277480 926332709 224420622 859855317 4600632 202319984 499432832 558749139 122612787 509561605 835004764 911849572 943232507 36395941 530490159 622395500 794155691 303870798 603030002 886337068 764744928 971274448 810217156 951448429 263181309 526238108 799993493 511279200 91661530 894448373 588379974 823397848 76798961 359468831 107926097 600320980 370348376 858721745 326850469 280429983 338507607 195184278 944256360 782298715 447096542 140186059 404870673 165539857 956159071 151854334 273056251 575822376 799389946 721986275 188475546 518942832 798018961 397631530 849762369 313483177 182384953 303119157 123305491 338579465 250777578 296113310 498853519 934362700 551507339 223892956 688658033 186533713 255656600 774265343 169916262 757754069 36036201 629679819 638038154 391229384 662397760 153813005 479031214 35048562 35468427 808539972 241135889 29309599 565276408 426299350 246356367 809641 176128672 913478425 161433422 895484165 854332008 86044862 490875494 180529494 717306541 593901377 992251952 477212065 378652568 934982317 354308788 297345238 865196096 752813990 171723023 726546506 684127277 563597290 36295294 960899209 414977950 4801961 330902619 241496341 989718573 216594216 809513908 74336781 762102047 693232340 378678736 860236116 696652120 397297746 255512789 445257477 429481772 226026292 297366398 308241565 707904907 576427252 423440363 342855501 623426734 626983569 412882804 137381324 545852528 24568946 237897757 232924065 426765350 211074589 468274114 585128178 394205936 854067570 738800659 582834519 569590274 947533951 449183165 881397319 689455753 828911539 167916767 593263263 630598909 937660009 55296760 737825672 85688777 357243230 515669611 601499469 902164540 587093612 534588747 398280933 192799129 281506094 172683831 662841329 372009864 170768471 76431501 411454921 327768387 777426513 336814134 546711795 812175070 781818186 762270335 81288809 178847502 761548338 887630997 275466323 345616940 772622228 900600611 450084504 788955432 222278562 990712103 807462774 290327023 786906138 476671995 777840010 865651527 557595500 659295105 864945282 75069128 230382999 307783081 245091499 773853103 731205317 305689543 605665079 564918304 268814655 149287504 405050864 796741491 870431294 373972980 947635678 989192682 817240075 494968110 345077411 190989273 222147158 561328434 464456205 559430352 748223202 411715094 331416764 530156470 439794029 122537812 685570923 824285124 841421663 172881427 654956631 338132975 199469404 754249939 885375082 740119739 133619224 691890528 968072749 910624247 475615287 261446266 568219670 361317699 280959096 311334996 379867544 624153457 544671626 206124449 71223807 361172615 860765779 441097532 980159571 326526988 490876759 405186454 183776051 807520712 839024933 410806952 993291297 579869531 122830821 200947375 521441684 222072216 365610328 190938296 384298485 152921935 94823045 801586805 951429587 446428949 555999617 356086963 272021570 64878500 907933809 569380935 492019061 664464325 214282051 670682621 395214786 943798166 517781054 251653583 535951180 440517591 620192756 407682154 672463385 327780710 416463502 492510124 823285268 869471688 465187292 899896709 664314286 255089324 680839785 454182144 608664445 43260228 838718578 114669659 312521195 418997268 20259769 594888432 160115377 326720041 274627908 892803885 971326616 152293056 418838683 567418519 983239284 128600560 395496679 725175924 54325825 599299964 330826543 16660150 765797430 439096047 596340225 151478996 519923351 959291855 969771222 813389263 330224002 482308811 363616575 487074591 134711633 618322433 154166 378688060 423248461 157043045 980937449 311236135 34642041 913006532 844214175 211356975 121301254 355942523 587384078 168278543 597517537 235381962 494708539 477907434 246679351 88650586 105244857 178181185 819990569 441236354 304549491 792321908 628389887 734747964 719609980 364322741 564406531 367934647 342693033 314315087 963366961 3341671 992143622 907124914 755187019 308552013 272309609 187613888 674129700 133382995 740512057 682939288 939667715 608478483 780801048 219016504 979247107 928340199 659975742 448001446 580903806 806341016 990577556 707173184 77578567 560263792 125223519 803295992 740407088 243802872 62392183 53599121 205531929 544642108 932370771 859418155 691487948 516261599 126609840 625202381 908845013 600595907 336760282 314793398 485772698 937738554 985506717 645135432 157625194 423563240 744007674 116073128 188597962 655368573 396619861 286107847 399481298 460265056 878499173 856262 435713504 875712566 509541527 251787859 619651489 401609107 523722658 518178974 760733381 728420757 300156467 97944541 118174237 724308065 705025134 402492489 799446194 869677849 178217366 367252853 783116808 769051081 70046959 566357700 479303934 195850458 382944875 944358341 651362721 349870454 259380557 367905729 813215311 246381583 143957648 107275084 510252343 142167336 646070683 620870598 690726845 354837519 847870842 358798629 259411486 641826625 693648431 666914521 76441493 788448148 663359768 135626419 307145449 432931568 502819698 216976467 165402224 270389512 29433804 911481031 753334197 245218480 541375334 649723114 199352234 203441100 20372662 388138240 771346700 774489960 458861368 779582328 724544360 768432370 222791028 654171085 523658460 672195537 400316031 207360511 66764173 361956024 441162782 908481843 534896111 485922882 344308116 415255056 331923154 139541099 943982106 69296818 350022455 641654047 42252155 926749899 27419186 810147945 953380961 310591077 293170551 255386827 682670957 624869953 420506728 463541575 593596450 725515604 104580831 772075209 230170338 547595626 739251435 810681533 491041945 198882795 795355325 715777435 144677101 154464196 175849937 88083942 394881294 982524223 59660778 388369295 615226871 126739223 382029337 583579900 434595886 25648751 776126208 815420036 606028822 150606257 787867230 220649029 180757852 310285659 162845783 689252907 964991967 836515976 233515168 56743141 224702591 414541098 926768553 235629923 648955686 908798637 353979831 361271662 774972615 501464013 456119362 55902176 815085088 205364342 105336837 832026950 17568572 240946041 716476529 507720802 724653007 936637050 72921000 135238519 512371297 76645165 239927271 388203495 489139616 302743021 365483613 636686394 788261097 825545593 322367545 725280040 835473068 211295077 84866980 575206298 583205311 993168908 869166614 447305505 407534188 21933338 254729751 322496401 33175779 201742617 746800182 961968059 521995882 830720830 769212693 580801414 905948174 676179363 589329013 752838789 177101344 726246391 13495218 468215098 397876472 893433258 765492789 87629668 240496366 658492740 838804513 955065525 560480011 706303276 525579302 664115903 830956666 518860998 502961799 643930443 803036354 822538435 891860100 32700091 809674000 588725677 73425606 307179794 291623276 996824123 875702221 763283158 318849062 864186805 715049331 155132484 786575376 472518969 502982795 28308024 423586306 897041801 275557033 281206941 563397366 141194312 54629840 955662071 646018668 626523654 795818390 712198102 943351739 358532987 718201488 63210303 557481788 655455132 24716080 248434962 939422122 583583338 464926129 942529025 258771644 592891699 913413757 837398856 69880066 569947146 946641151 19146306 517525041 86163373 40224801 862908811 620969118 712013613 435925159 452467709 32050462 132288684 440184770 288299004 426017831 657660981 314483707 340176192 646504733 223171291 151967213 221558903 949138193 358256376 252652458 93319974 146112603 953689942 206598367 135749361 20728482 816170892 846188929 658825779 143652471 398644839 188958255 890102988 327517330 876922209 496486418 494408271 342449361 272450719 677891566 309368890 825839674 32654907 233093114 81613931 904375401 193803454 863833308 186640986 189976114 275858997 163908789 826281268 875056015 638101593 346320941 181803640 701296748 124308136 321382785 478997821 637996458 573507855 562291406 491289201 921561765 630422257 493356388 515932663 436549102 844507216 582210893 992945709 217279734 305242113 944941125 611041221 969418477 591594524 751666191 978377246 58225585 757378770 335316482 993518651 460107047 859438398 563875721 366858778 527816800 426005597 648304173 18879056 425606084 510573468 453839163 350445828 588457355 763750218 601952490 566956855 705712807 406986022 53122835 10710716 661115095 827537855 729328461 396389451 4060698 879399657 39637269 247411775 386153450 820422923 376554244 202622644 48053751 926643317 430406737 893984420 275108947 751760077 758246516 666122135 837777681 425381062 830646163 417695922 33934103 871812689 196337219 352251336 357673154 90190200 806417229 137386251 877915808 578245678 199513813 718132070 259296567 662861983 760915844 208564154 958560817 295644705 525727572 643717258 802862412 187907194 470835278 371201920 129417487 547745327 393375471 179403901 955446204 851507107 960735806 227704853 654640321 412984514 559475731 688907186 112702534 923733403 276276364 487542963 211576990 994359786 930296924 566290978 929551109 852528485 205254854 338942448 622599363 424392061 347976886 188321777 59876836 53955652 727318893 398387125 979872351 74440785 836269179 494429801 48625038 306744691 376904722 979830566 915578693 567992382 855576374 822151999 640730542 396691812 442574746 591168864 42876593 846443129 637939578 224621662 861981466 51890535 229527648 534596434 234749441 787617977 845292510 860312837 205444961 803577616 100474896 708897142 542696344 539843033 173419362 140938066 684363721 651208110 680900154 196725846 982112629 873560163 569928645 560191577 759939308 984258901 1614064 801692351 136700209 811766526 496187465 626149733 801317227 296455312 92493310 561580151 404933690 727882236 815442070 587882225 921675358 711459127 213457811 928659527 700067212 319871040 444856887 690681845 506710192 778364583 698928439 161791156 845152885 927952576 477594380 171016156 415226061 580002737 283647244 322633310 948019764 761201656 362055784 728011046 154402507 226887057 624382800 717624309 132211196 498013085 590079427 36689862 158106122 66898941 940648205 392731733 510879124 859222516 111229539 744268455 885254259 440360063 934140950 50804432 494906896 314418518 796658362 699506767 123522384 438772197 612207775 676987823 736256760 174105185 849959506 481737788 713192577 733478457 673417432 189852995 876540717 240063344 834185652 917440680 863625040 808378526 280902141 153074848 767303185 663544071 609657527 635694782 483253883 472867471 428586972 244359565 345703099 167673277 623614879 436902554 859127117 762856922 121433049 114526600 332254810 454103308 464992026 894108728 73529100 507008218 868692152 595330006 720659069 767147354 434980426 684350285 129415904 228856647 632090702 344007064 513829775 632602383 208413934 443916789 356786966 148159156 357268362 13531619 643319747 628528183 906891437 452452909 293641498 321097544 647729359 299340285 659015502 388362925 264515339 913243979 219143496 872741865 259283501 545086340 616901764 245304622 820312030 949023837 324084757 107890457 293396959 641603691 440521352 745999695 243999578 198942926 295502072 336389063 522347220 411512296 444266947 327034488 394435723 826622574 858764104 251659167 72156112 744373048 520395581 390175730 881615529 764533369 325292522 448913851 561365794 392356459 185273616 364074451 293589292 648553463 881727579 724932605 173060530 761231563 432895360 304541046 103604834 316689008 591995640 292463239 917022462 932946957 346911481 881301604 290730326 423867855 404578569 845607332 114829498 153850412 459052795 723469905 125766871 431336605 355729429 76552722 32574517 729981722 905232247 665100894 165230751 463770191 353091756 46315179 74696639 238189997 523525440 885415925 56586350 538243179 224471172 409664265 723678655 902153706 379906961 814373401 665370611 587521544 3639706 536752048 921719526 578144391 549391399 162122578 274362124 8656429 862329749 188429016 13991344 412672631 545661340 102315207 717378677 376478933 439654807 395363370 210367402 348742028 447372380 969038486 853213598 68039409 305452718 785735327 836765918 48262755 899683212 887983670 590019526 61240676 22761644 572902631 581575847 248564400 411776065 259186007 538812766 202371588 372540277 513815108 350056082 968121831 23825791 762318760 533197747 215421923 664057453 657733745 416051938 763485690 820984300 94101113 155872729 792732946 323835301 445094386 643504449 608476799 663358491 673142992 359212342 895634787 991528078 169079659 571217142 138879247 428084636 85962883 333276968 353473025 26968915 618440324 699040625 21779266 823532576 562170107 488756883 831428055 269486408 123812868 183741210 99459684 219803438 526889666 457854165 828067603 196186854 178408552 516022994 650280078 85328724 631644395 464395005 389545977 117978368 440168229 609460557 332774874 972536835 936083678 669082966 743362331 316751075 713885933 746745143 536798107 377001399 852578177 718680398 663118963 900681330 871569011 552605663 779300418 453800227 273069991 6779823 844083299 145987095 101653548 218305139 936350809 442516695 192236931 423227516 442473627 332385902 24894342 685662469 357243963 378645739 231598696 523242907 251612985 190823820 46047620 98508862 723145986 420477168 152286254 421772227 716638414 57470586 176713203 418204927 649935904 528131009 619172426 694402435 39943865 851017452 931763957 427006851 803765517 414819570 118475181 893974090 934803567 435822264 615977452 414846802 896161794 169255220 752887076 657050849 832822708 502075639 670799717 624273970 761485001 500123979 528451482 238720065 269614691 367244133 698979792 322958131 95904183 353469548 844837186 434295353 27333440 833504413 319012846 503709988 892111372 150887238 997268035 560115049 90718931 213214535 530208419 674845394 760682922 278224289 904703726 119280146 118198204 915129025 760603838 195391656 63368690 938685186 494964989 517249618 475833950 358096995 72560485 321370121 160433938 660868081 474409733 123476984 648214450 481997685 47220476 495727119 745693998 209875503 806954982 728568695 669925612 744497853 730589863 93812638 858582731 319538127 271175463 276960510 104814855 839218251 723235372 67691575 416885716 84206310 203128397 249402322 548352548 259642259 960735799 14719924 233654563 275957384 758160203 704192988 188146485 10352165 919168343 451542348 876420479 136270305 302935173 303239565 453456407 135728849 656348044 625960746 992085849 512622004 746223049 596894243 32157043 423175643 296600743 187160003 392288411 291643192 327860660 55323022 699855875 455069788 414640088 720988374 263201149 186854162 642523961 806500973 256723701 247659936 646135695 1026091 722507266 602129913 86150258 943878092 553636132 530550276 281993843 336293687 222175384 109875515 221434801 338623464 465550468 507561151 627372804 27678810 650053761 272833603 106730542 621201800 948251652 5411356 141873275 804270045 871976829 200007843 803374119 531150649 385717853 317650182 322125141 326005945 554477873 349031212 626815512 667840353 805791599 755668539 844731566 679622319 122490926 936542897 743554814 597398327 769411933 175366162 807051122 496249584 544929023 186680418 992133129 582774703 758231534 614105792 652605040 174607640 466621067 572270859 427456170 295778254 482927167 41939804 860527136 146715505 238481553 231394842 981142360 970183387 285075346 491035348 826622926 432402251 994054294 199375666 610241317 995592155 27509258 228508516 795335168 624021906 464982031 580858931 833667460 676560222 844656304 264042059 964763989 989239579 91493004 554268741 733601329 110681068 459286817 268340525 120082757 499606200 655111256 274056227 231425523 111394339 889512823 92105442 210748395 402309712 64337568 65669032 975790536 359722602 665213376 38848288 415472560 745565537 503124001 463113267 587471314 198533845 653734534 147621732 532782081 264074174 735705365 363330814 93079467 184294535 413678565 793547942 69311172 469746791 167242167 808201836 838883150 733275659 142443598 479443369 179670645 638917862 404845240 736217093 477408375 911571167 856909692 340292100 512648153 224395677 922406619 103647887 477188588 103396633 472930158 588979067 988227541 830128248 571385196 430531641 839720778 702458717 639625016 28613677 88836669 763842284 942518643 170539300 622841985 670914052 321401231 600298888 709727410 106860808 243828168 858938769 856368371 531261014 526582393 399442057 652916978 585258078 411453954 597450394 788020170 726415846 619492195 444533704 172586976 716431290 901263482 751869996 456966650 115912874 48184707 978264218 335260787 717060511 83478776 200962854 185480068 50790003 918503204 734143914 303807971 30099926 216692024 180210758 526839203 19696945 996494877 416104425 379841580 815435924 248925976 550758350 577863348 528012412 676153560 153632580 743621470 455172118 70245612 943820821 221352152 503265002 749165640 826174422 691108795 186258284 883319590 460229506 586261230 713293346 442648333 852421604 756429378 666813098 861320857 348397914 495694162 211492423 613338449 241847489 354555740 965501539 543418170 501730496 557137413 452542101 354562375 378265951 168138167 618453801 252923825 609788015 237964127 267038914 20233746 901450009 156782910 457590894 498707467 173165549 450940525 710209751 772229902 575163508 658546089 631908018 66331692 256533683 535112450 183268143 415779450 119070920 735354814 183842315 918192163 511085246 900513585 347930432 243399684 492781022 359890763 6665973 318396125 579856467 131899560 468202370 755670466 777800019 432603304 739537068 874536687 211386728 47429950 617815333 314636060 781255546 330855353 936320426 503094950 946474905 539534216 597606339 100609214 439965243 601872949 706416781 73732937 552263842 22372632 713016005 231914268 300098319 917198289 860276184 703770447 633045861 756845018 685487977 682735338 754645645 666589469 26559735 690197288 82537373 589617770 309038963 553151160 888849007 578574316 418155162 841901889 348203089 539688955 920052083 888789018 212782759 438431466 502969209 230233516 272585121 110005278 39130814 847000406 852101114 350821587 997186145 93544089 539973149 268485871 142801167 285454031 351217016 418992517 784778533 771694912 319760131 261346234 153378600 450645441 346103218 722544425 86284406 911847150 506701132 315400323 38803807 881911866 833405599 257861840 607187220 965202752 317992352 371014801 303195599 938881114 722189038 573993227 327901570 450680732 922868196 37117675 724020438 822902309 18642988 467792340 56857226 888303841 15940802 168604270 715325248 311260640 265086794 804209784 410730870 968538954 172334403 263996029 816395658 3445823 371275051 398103356 687474379 143189397 150819310 732579905 947973083 578392719 511495416 936557882 212136423 520052554 858757194 103954733 79057297 176664901 281578552 563595930 643656172 609810258 517633360 570172552 848213491 413652724 791021138 931251739 880496015 962551744 348576653 43243789 43678419 686713377 676296143 438555010 728351428 821040450 874574590 612210674 401349253 46264800 678864754 452483983 857894998 132242593 295576201 193513288 535512658 444002521 549612030 699154603 419861382 583510557 675079873 518269996 572752616 868960243 310995879 70280088 496592608 893125595 997727161 357875566 913694131 790332510 696558931 893975526 78951505 551558198 497861459 87591544 11321149 532799365 471114287 744339861 439837841 298949509 67725512 455729505 328097704 701218752 970318644 166957478 316391829 868125255 719435293 75282899 322361289 808590428 265969733 554442911 413574952 134756764 568627487 47895269 965288417 132394668 882004540 188916573 693536951 455154612 510327811 794896174 745359213 497954607 848037845 924473947 564239730 125706253 603442318 15502357 740161830 700015208 567133231 104626038 337983691 733872255 635678336 869923028 300259186 113679324 181847248 542136626 439865377 391801458 159986116 612669456 340093914 371067637 814390126 129293987 90758678 678983779 524045425 726475588 820732340 596879695 879684788 209897469 966186258 5427583 638216211 216674581 457073221 431560641 22445808 907418033 509690777 826788669 57298892 937558167 606016196 517209258 767236631 52258360 753623660 325335748 10374818 676478433 590886948 545756417 847731917 542311086 71161794 54910941 926346806 586885784 153145564 64369957 288513612 127864111 286717885 509005610 778693106 920785402 499656381 308697318 470784849 997614460 602788803 926267669 508414006 531233611 300075158 838713500 879719568 784835107 912089533 84120821 19324372 337714488 117694666 732772617 869644348 44561329 500058159 553504285 113096097 142868384 113279341 100682302 769665673 851598366 251277329 360827473 285341512 39061127 903273581 975347080 806296637 202187924 491577307 627279596 524352128 15934347 124882803 164897458 341465506 386892407 22652597 652513846 831185243 169040538 802299147 582614512 816119765 171676797 774579705 953234419 183485808 393331817 133850221 373725720 142765896 8557627 968435887 902373895 499940548 692793755 287099799 174271690 400060897 629581398 729655007 719256531 283938160 253117033 807724635 728693605 967152586 965413878 679094344 883504815 169228863 512397372 975365861 137726496 839707975 394168813 678596453 109413331 996352356 355049262 26722511 758015526 523263909 486092354 978600364 103991674 50901706 673834555 452728034 993521323 326977108 952679242 992028872 418358012 348159099 682102594 35515676 452912896 420503519 884034438 149013160 467956762 983269319 540543545 588207812 40851137 489933359 171375793 136351047 873437385 427610150 327837056 377252856 209803058 527175145 618405333 507877833 736388508 981197553 223540192 230116227 653797587 749623360 491113011 796913717 158268405 99825281 1040560 26194055 997912687 666198146 619710644 936921200 740276084 6088059 830636980 894985939 429992612 802928554 804765981 53844534 650958252 21315140 684496202 192771753 137535143 480230955 889884109 75493357 749778940 543546202 940923859 86611454 641297041 801074277 686235713 596489858 537050955 361994146 343033194 321629356 975764457 612784840 712772481 937735185 831025147 902345696 894909811 294561434 376746418 553052281 508524596 666199766 910315076 861188189 745757814 129874494 857456717 924793225 938741694 783668725 819162116 576658911 669059322 934931584 71702113 602743581 528286566 776561467 299033316 517457746 299265426 582090523 618859453 550147239 427000459 699585797 134208845 803518717 279781794 339776459 141640529 453572237 938963770 887707174 616621624 939832197 979801444 57591632 586798431 146915322 211335628 835638638 880266556 147255369 341616452 759300474 704202218 423588906 527725823 902770899 620238898 483347015 252241430 661833654 727869333 366869106 257129023 907501035 810130868 821844085 237208812 675978203 807745616 634873404 2055378 966957714 222555396 436619123 35157471 259751678 962018993 839021515 691434862 736169952 181648522 799777181 732699940 503002665 767099293 621025981 381349371 487518813 315084480 67871362 593086280 491483947 523642746 823990525 413420803 241253386 393600076 856779419 59552297 775198389 707499341 651137380 199203459 501952937 338302990 732814732 674034916 620507283 101644299 283803383 179561411 789793296 396231255 198646935 458127450 204379654 625242966 178178923 768068292 105183837 492871924 948317358 786367816 876543978 905846885 984894850 676210845 161242175 541262836 893551371 247904409 938498874 897397386 879637417 951251819 92897000 449533391 170496714 598940355 451488565 967838247 116517770 119256948 476480745 482988222 281652734 846405084 866333071 937212786 822360804 531642841 587020975 208156449 355977891 494408227 816511347 520971516 815072078 611875626 623415297 110463393 699714730 498882461 426715531 315657943 412301624 966585463 681614523 825708489 558337161 464147798 48678850 61437676 62463454 427987790 585253026 30497072 129048692 452068982 985215775 281135609 800203658 798315429 785295393 507799836 434177081 313790070 557972963 709689286 744299634 585721933 724085842 322222717 623687002 665634466 963729278 608947792 591092432 785978098 691597508 967986201 942898133 958942959 373976737 386102455 135300185 729982639 880922494 3183241 733914954 352297678 763579312 854892498 611104924 341674361 79502062 302258998 642532727 564797665 149957948 688859595 716141204 374777692 309082803 951529955 18233182 507331272 6830557 939572478 404222592 402252022 539370566 944063843 889836357 500443454 770130842 713530158 953279893 843314203 971285129 75139857 31462941 173880958 574684337 720745782 816688016 753550020 227706356 231805637 451181776 480942547 40198573 192791356 302951716 784196056 5420067 369112113 938386467 558149424 350522445 742820699 252999731 321054166 387317449 317250224 548155579 293127110 554454874 406224676 995525396 423530709 388571395 271862455 943075474 973827510 694508758 875208229 851438190 648940426 434917084 940807921 546441004 309498869 810792888 485117123 767120946 469331828 813839639 71094188 830709716 338373047 57699254 204368975 334237003 633347543 602180701 627233264 810818001 482712359 239389698 284794775 147846448 160958373 383168887 348211160 346285132 935225877 90728000 29364757 153098766 224823438 405676565 51879165 503564425 467067237 940910352 358911866 544235884 939789571 328720883 799136940 732528680 623705675 140719722 681344440 539574357 123858086 978109177 659766144 725836171 527208778 174348641 121888211 597117848 738645768 24313601 173405825 387741647 11967339 344274407 373156639 809807451 144800350 503712035 946811334 713735340 79469988 604488767 817073084 25443901 139530849 716097346 480034379 459933892 991390652 438007530 529955172 12714319 696274928 952089844 236436498 158865656 888032529 131670675 606075885 756201329 420884487 917313451 836744433 420380471 945410423 54842925 747237565 478297998 928646028 680517401 117856134 355185195 102710902 279531454 206554989 162314508 470804915 124839377 154967533 757280863 128325379 419640943 124962012 423602521 375182749 617657308 387684048 618121855 213462126 115329398 240380015 811822588 274023796 20236722 829228904 481296763 738800524 850240665 352616256 91525791 676193089 713038488 467271143 673006428 288584309 615052208 326402871 325841421 270847406 684576076 22706589 248221670 228386383 919277659 203095033 460810526 561211833 752227011 671976299 181377217 361933742 192718582 260216135 377366056 140447513 713104114 765077258 114831999 863096966 809758787 349978997 544240543 438824753 300658349 490027182 373672141 249209113 25673097 750130930 304198430 784960066 429835375 352549224 447597260 905176710 34104419 303666315 3956656 825241101 885793371 568967596 249413549 892440730 541502960 608602373 601664943 793874583 677070874 1860855 346025417 93398503 456754530 236227962 908428714 249270578 629537033 207814438 979888871 341444273 160591293 520185042 329462616 289328096 916688605 933595049 92358606 347895632 389145672 235595291 568506937 547633740 78758940 220233545 110591364 128222936 338440376 532128735 659767001 732900770 750536926 651807051 294294419 326620528 681491269 470482394 792750253 559450941 299484747 434575861 716296320 488582478 139373787 393399171 819284522 946505722 338094067 751960162 859095834 841707955 117302684 132336798 92806326 615518022 660568710 723405853 354547107 752156081 417801547 920997184 737173351 137337848 315471586 126734024 795058078 825548267 624006541 361190548 443543092 74170193 194088777 151785202 430275467 18634507 126700156 722139696 301078363 348446355 437040291 887827600 582593768 725982324 219720559 323944394 104951100 763402825 826652069 474743811 942265284 192833980 294460398 638314905 674273700 240568027 249328837 253464595 960689993 162472470 80858492 691480714 369076287 33854280 199751559 827083138 185901787 570042318 921003209 567488819 153369534 915470087 858542767 593121038 565909762 972044959 537002064 241005571 540728033 961744914 355982126 262927491 857139162 603218658 987304124 977059663 935098200 375928083 187031757 518847838 605649934 346273864 573430546 613332541 283439090 200326777 764308302 61791246 824177703 353935690 457227368 941227666 941244921 938999230 80397822 64732053 132865884 557989790 473134867 299283147 836246372 806854905 489896688 581554738 134715547 993244533 359163495 511653765 829294160 520461770 692747830 436633236 144028809 328396311 78623769 750717086 198278246 13183356 870955170 630735850 969882414 483780873 187804699 201087382 536511388 370593280 266816636 208539254 82913921 429463591 41657798 734427017 852685683 222645915 736478058 760891845 816402328 529033537 348650785 917137700 926053731 979281551 706323594 625449676 866448788 647016565 336613939 11564471 867515443 547131143 519726350 175209567 647586668 32666187 579285940 322834689 260649782 977944740 179233336 842615262 884371227 490901843 679605739 705550188 682688658 125691032 713533772 764744509 786508327 238673433 328210394 606378923 34253519 651277866 971185834 889299410 908680518 438131516 232610736 314096771 65125679 548554199 909931691 796369912 260068869 511738879 697300252 364681681 671950840 286270735 88794370 26030798 824202442 679510555 862091044 674206920 746086345 350258416 978662169 59213957 191142162 974562672 195717788 856816585 163286991 864849530 4852301 465038525 357358579 310894734 748818664 954114359 269235556 286560346 566887995 74035408 627335551 521369277 69018263 661901657 194198226 923997924 874183224 877701802 254209967 225013772 441289767 896259765 427005137 507789874 574419298 123613840 610777872 272753688 940943531 228160746 575446497 39754108 438490528 21760640 854204868 147340182 893215090 233447349 681489942 365078393 106862907 800248576 942986507 904035987 98820099 404961202 301525653 528077552 335056292 602135622 377025727 931994227 577363289 305513758 602553952 436541641 940753518 262844920 757025551 506353104 892638523 138714209 527765445 869170782 961131694 221081584 713576862 29971235 940961261 596788989 649582022 974202056 859599649 96364628 716211578 749526262 338374712 351606018 23037413 658033158 535530458 673509705 479423546 800537325 263104600 61607799 804601641 357063845 157785611 128809936 965239571 720936865 752953168 180459473 97340680 906527371 150907839 994238746 641170993 996848639 382612084 58337115 120518935 583176314 666377058 273953782 450164702 984092291 288598504 880892258 52925284 84852917 398872422 790617502 220866565 440317465 470173866 327686279 973055000 127887942 452530337 50509955 244683007 870094077 657646896 175189750 931681856 877862633 239162369 166789910 768644911 232600863 779050757 477149333 280882447 443501871 160131588 452110393 461579273 636389039 926133786 441245155 23973748 973938749 993727317 733425967 231764108 981647026 994081606 494679149 956868070 595524119 718600225 808960603 747848716 144544739 677144828 100219233 339748641 768601959 405951103 418136942 875173886 402629350 949963907 58006643 517124151 227826136 727583191 416686198 464855885 481800486 238529620 937837513 554778048 198619695 156619029 81904453 287213102 346036837 204160494 730060085 221159775 761380123 55483760 995460315 990405023 52021001 25517033 931863564 385204772 104738722 850479651 858598192 951250368 367145669 481939927 396183427 936217886 392434682 618577001 722158621 251036659 813893263 280162557 470940383 781853834 874866645 838480347 243608822 589997071 905213610 997066448 501393730 572937091 206021633 552688524 997679933 430930179 617254091 607974841 670105583 603987786 410473836 477544039 990017250 953691770 370714260 66663081 950580882 448555714 739317670 515556400 828606489 374796846 520144486 530798184 890652985 667897787 164016015 226528558 405990856 298948391 645819138 550590610 829518080 882017778 206655674 677667130 885249718 419089771 772076462 457921092 711235860 531091580 770695731 34183998 547046086 284138808 999949150 793474157 733541028 994042104 131659791 265699740 711853761 127018457 900585056 517788098 656857725 287748066 114176323 159877141 871881637 613843418 882138524 753178954 561525119 337058174 940336511 854858212 256523386 434168498 715259998 794886186 800390190 983057970 776453432 79893744 820706794 593447804 144892095 789478702 849515554 161511116 178421453 2866014 653499353 464283346 533648714 499030411 85356353 760107032 557475499 72046473 62340433 65753822 132957799 653853330 431756215 657769536 503536052 838277147 580382572 977436395 868948460 532664372 765232365 883418471 485288375 474983631 693935349 747211711 735236901 784180657 404524102 51342923 47921889 464746546 800226654 993629405 19344764 488876861 232852661 235142664 742518579 550951720 863437743 614187513 50888757 761696391 41463566 723827144 301959311 467562478 951295921 481986947 357707274 55261091 139786789 772356830 757489120 23245826 713381206 544530442 869755466 543596009 78643258 573641915 765758232 85209835 657842435 996939420 593297806 988032097 736518420 328483501 753204580 972750144 794844757 361453319 537080823 225959307 446355969 950219644 635920091 79501608 16098424 291143909 57335894 369289781 728457456 212219276 317435654 399381585 740033964 320968753 566159850 24569591 588208113 33549621 664965257 750361507 935335163 796205882 32117484 548796266 962711640 992477056 374097574 588890744 617842124 752450746 391701657 70688714 333785145 952089681 261776067 186202288 811890580 102277607 755190232 114716018 296691771 568343622 568240715 136969608 706007955 148521610 164757540 890795297 602523290 79890569 340326253 706585525 826226270 7654389 438438421 752753038 237108450 446287303 331482845 290323481 507409286 800014348 371189815 22282455 571349800 334154830 686949881 957077067 607346899 917365724 832531981 526972642 157221395 582106975 17870258 232239454 790690746 809979198 938356327 444145432 681422336 337493016 518425904 778924095 636099645 819434679 44604466 635723073 608508796 427505632 712899301 910960062 772760512 342321285 336503796 455092658 527351193 983750065 194130772 411507037 577792289 152541974 45689921 182095107 379711735 109215111 666971666 688794221 741606733 273718024 808389140 426072428 413936390 117939275 418934523 448526252 568805184 584492158 353766388 200044202 778972490 843154699 679720896 851045866 762719185 241069607 250845759 783563587 266856848 269771926 817395662 13242822 36323679 757241994 920564802 283947232 496452262 888099961 59264135 354887940 337653608 411458827 781375441 735400774 793944075 649982720 962481130 571800936 716966109 674771996 604958764 161420958 230865425 761741415 168535150 746581731 419916872 658725885 32101413 72909499 491985899 442283293 395527398 280978097 181187395 195801231 822527004 343230695 843360060 535814600 81813976 782876008 981366622 966105236 832244335 210319769 895566493 547777345 232117789 230939903 547727498 147737896 6736867 899123975 164753180 573642500 453977768 786335616 427321126 244269542 109580570 803209900 934431102 390375493 574689172 257440396 741051802 727495392 71455552 713758892 137738950 77133785 379042851 796268524 320805028 673106725 622675452 351464775 381286454 417045788 128102399 378210918 395939383 187935841 461045050 223459333 669192414 355550302 87699329 148133196 934726822 234589793 808789327 591778625 103356797 516747717 338942889 539780312 599273499 436913211 600953170 331377940 147251264 717354682 112941984 611154537 752750707 272985234 298569786 700570044 625793466 929840228 61219765 713049267 115314618 426536762 487176580 537523593 184127138 592488429 17194708 350969347 289934564 77161474 694438680 109832694 785936612 996558566 68290265 720135669 675453528 31622203 432317292 287074009 855197846 962465768 937067322 606850387 179329291 425422950 576231591 171701407 216498013 212509009 377160075 143969661 556609702 288435910 476776076 761336149 679556438 62965246 491944130 295003305 228501482 910436141 64012713 699232977 44535524 221077815 185257887 84893985 967160243 780205858 198855203 398681191 675487638 514904430 381508655 410047533 808140864 691194749 391773001 119534162 831207438 212772987 982054177 840362430 116525232 992886349 436727768 763180951 536638214 480560166 579075182 517364366 446280452 514060097 911990499 394887004 677949762 378410914 857758933 890886237 221546861 662014296 787617927 776894573 771315001 398986622 835804495 16246121 6615021 244038096 655631660 474154154 783548263 482654836 290269665 861064004 422136960 902668695 282027234 270361663 319141415 401243186 608932590 616543238 281060273 97854798 672513475 382087352 471512845 113133510 204837682 978414915 198427481 325035411 320042746 762677092 296314952 145268608 826368222 98976837 59131600 888887010 797113280 674383744 902879257 19519294 409268476 233621518 9191274 706426864 391597069 820112714 863321731 240811801 488350355 975777243 557425728 746229236 788416225 205306442 168036167 250484449 531358737 931081187 899470037 574352220 259901661 699318046 116162537 137910935 94746294 380474394 957469126 888340065 815679722 996004886 565101875 209415360 635094734 671214468 103097789 418104597 814340688 130742639 793464294 25847052 561461840 7771677 139011334 994359426 277334534 295759443 492606043 863192764 797429842 152876830 766890657 685111272 227688496 360698453 746916549 288532171 993091737 779912883 390111052 689513349 896374433 29776297 741896017 753473810 763924194 756704417 599190216 361361573 641036483 651663980 443123798 806743906 954419224 833147256 117463156 411228314 984372280 662280228 72020362 351768258 215188768 363320356 594782022 75105396 87092913 281753400 435755180 76782068 61166151 837159102 219179889 355494924 518153497 183502933 500363765 786604489 45724332 170824587 443189418 41153441 741850595 144053768 656378102 328549022 454323836 664669379 830226570 621760773 317524120 23627803 563422089 992199196 720603839 791131520 1098673 441026714 228132485 541096202 674019204 235979680 207332466 784041998 883608164 807989278 907052787 317371294 962151752 993256629 197498516 94742904 382203028 747544321 775407397 395934038 570032576 909341035 465134161 984258057 612778410 811309317 63044671 271262089 856424393 519028477 832452066 116563686 11846083 812597716 463579968 278541091 163190628 477264038 483712063 75615125 213156829 980876209 12562579 180193382 358819855 881197003 968888246 479293228 101641923 180744774 399714506 442226280 360833686 801025527 540809775 282189754 631391577 881429097 991719532 631315289 500933762 495922007 488541518 678221752 658934748 678661788 551460539 572500440 28111500 624414578 146653326 544548086 283410462 404492338 265537693 72975733 976762580 840070923 399288462 206064664 729761690 412941267 669808199 213406071 792262681 983371259 167665466 120166425 745787415 512352619 912627665 677556285 707818648 641807881 919639060 249542916 689277124 234098558 993266160 409860384 331996268 813799734 665544717 355965638 24668588 57454415 578309636 407393429 430073886 538336680 294722431 613701625 450807477 160254526 610650563 221092993 412536925 836334148 443405680 845874433 286163520 909078001 646569251 353333644 754367614 353210557 680083795 600077212 72753431 892806526 104394222 635592028 843390605 778650690 92181207 135948231 919118147 889658493 748213880 750618224 346122990 587121219 234911469 876119081 371082076 269090749 75299506 488136260 480016558 80869753 575982330 24857490 486045464 217557552 25031720 331836354 924556335 561179110 32599568 619201272 965394019 119896704 826810510 642087649 45198516 681067557 144325642 545178521 35593628 80765150 666034760 718884009 574871205 764824537 297112213 286374285 874821361 547118020 882868815 662670917 563292026 657887916 626288623 388595493 45259049 826797196 601795741 508163339 789206864 296433106 612129796 726715628 868165122 548802881 149774418 874512038 432293322 373616209 665008605 127043510 217014240 744837497 370608557 477117680 815335701 882221 892713174 951486022 688474796 60327575 715497102 735559133 201036650 299433766 378604589 640264136 469798469 377874477 369746136 926216365 668233966 327707883 493218548 949015703 202609807 347031553 141001759 180797826 42404559 92077903 504307957 456436525 497473701 292246290 787098405 934396298 869302118 983923793 448981397 450416892 479390356 538300884 311283319 946579196 343712561 299544196 393680167 661896681 668760493 850377153 484927956 511995026 959901197 292586576 273015201 37104196 352029521 586865756 280472017 526639194 288946487 371434856 761589811 394010444 607342964 76288334 548875535 218681294 372077144 123402347 445103214 236496633 873435584 974621773 703557146 868468308 511875141 902471197 945849002 776937442 507259555 260793688 435100580 322093569 992726031 628922050 123204103 266658107 152135385 734510942 532340774 822116915 979808587 668775988 759691517 941673417 97755665 494122958 826593207 341709024 970865938 560358881 184390839 379372228 819510619 481736009 344779046 910786556 792639614 685668656 212322577 299431741 427828580 888542252 773505008 98337718 721089471 947173777 876343316 862947369 186662535 153232434 50482613 421607559 203657506 888513142 27713022 610574660 507103920 486498221 414309794 921118112 276029117 912499356 787363075 342543809 75184785 978607150 753918851 738303607 502519209 724051531 577500807 594706114 65949406 976811266 874482022 802650753 784427245 491526213 674074717 466121232 23764911 675570024 327946974 515616979 21169033 977683313 405251892 833339690 57338678 299999142 381055865 693878916 637023438 659758142 477217909 249992871 127889299 11021205 386383238 516154486 879716718 731803078 237338984 359922365 874292625 759640207 279303064 403888891 949394394 130001052 652221412 921793409 529502717 992313382 527477747 142972044 525827943 627537575 465846784 417216523 423969215 673071518 405538779 68417599 458048486 439512054 624524887 703543196 716557583 551968936 925647284 906270218 82223932 140991590 396587266 976271283 231773162 614058914 41760803 631528440 505732738 684504075 666872034 603096400 347018051 189100916 174546166 509743819 837233021 486631798 695597411 640982797 238295895 870604428 612233063 699086740 364290383 928731467 439944125 744013267 175516824 882475715 403535751 786007167 743990085 418379865 228641500 841904762 533984896 597077793 731998083 16100332 246686085 379103512 843311511 510504125 334092881 254296212 306623861 975253873 579613792 994501972 970246774 694628015 308249064 628966879 67249194 224509809 890225713 160971575 319679505 354105678 794973577 513624311 25105499 731009017 987979944 592721362 440578796 935199499 899513706 790595015 909939618 302852242 396834547 719962104 22217536 210355795 842689919 521399094 95442041 637970571 55998356 240813731 694669887 888582139 418584 907878488 832778829 753319504 937430903 813011501 343701985 594304518 769744275 873053373 584449656 108026832 214802052 379254735 939437472 769600221 588469405 538067383 341955131 554414071 908921300 73555357 68112699 819766389 393320167 582196993 626067522 17852851 71714778 714829913 966058626 111797627 991068005 815987011 997366017 670666450 103050307 605729983 652878290 951991323 721655 449060195 590447103 888777092 121861706 697229894 799538436 62782047 432703632 8298325 312078206 588648928 437898472 231276008 481599064 794926743 607255917 573177988 330345699 485691638 14909612 213940861 732779142 840844544 171842799 213053753 485561685 667970715 467298604 646062637 564161856 971405642 254790895 360289752 261219294 925625896 97737184 518830856 852932755 22298396 744883445 183630474 313812415 328222957 342341559 559710535 865057709 645356079 352015706 243625845 258895185 181636714 503157915 829756673 980511040 428330020 491189323 234688519 483593737 764827798 329709531 688478583 209079494 960114988 183599381 466348392 794485009 14878297 367206261 914359993 105079499 219698849 881147494 275377170 95356028 594823058 777952589 528184442 228344078 161103319 299788746 604627107 627531932 618175824 607543051 317478304 51349666 492688280 811826629 992248160 849652471 460223708 275615088 528841900 603971659 550129731 898399523 870698398 499179924 312056813 838482364 606217874 638997181 928390819 395406447 215134416 973796276 181080760 174679306 747392926 255152935 310078802 528616462 649497178 312685151 27137407 763909471 122211295 90735153 660638506 972484645 789636435 540503469 922238966 264983355 927080336 272807168 383359218 734790575 402608740 89372205 236845075 90034617 118466160 869286726 805982654 301842521 319167551 931324874 79395175 408310132 646011279 285318205 375019211 774627929 636325758 1584069 360085822 445788278 953435053 577422738 984271524 824375144 999587017 107730624 59835302 891675812 65794372 710787773 697097818 643571607 115286181 400151184 785291880 348748439 168391217 137233640 34709423 612976284 178184997 255923660 654539310 846572006 640644184 521557320 918481299 372241298 459756325 476168834 59852898 620277489 234504723 776683833 717854187 247224074 304407832 823721927 466414242 415746200 123797854 846033891 584457829 596885295 187349967 502529601 533293385 882847240 169991325 358292246 130152352 129766526 380049436 939016476 810762524 82593513 361517864 555454738 929211228 951100782 924337879 176257067 11463047 310247868 960671542 584205302 285881397 347703682 249046063 159011575 653036893 718751374 613935328 713526691 350300246 400840239 554568205 880534452 621004476 649994137 312691475 829311488 962989092 101287515 764721666 23160283 277853502 336139473 939220082 288199599 46953633 168863674 410786629 442314141 630412357 456389206 352047704 538408211 601582791 483436614 80829605 220482545 412137692 981400749 293968765 836060603 779157174 509031403 340299781 847322614 19016565 211032239 925986876 432788136 651799827 355697995 626740446 454327812 767490290 741735731 917172458 401581451 79343332 649932958 377177634 992550056 495376978 910437683 362738508 127579641 764950044 412035214 626479686 577827996 103670989 174833770 888862965 107914939 77470455 164727585 50203464 321441694 544336172 957898108 399988751 27297172 914295663 204780793 882010237 232495399 536022124 787482064 101558704 245514542 723035720 748941577 815145108 245716312 254590120 190697443 922564034 182565781 300971534 705838602 276564979 925244954 607710824 436016493 972269554 903046525 342186532 175859744 975705763 824730261 681291811 325921722 874008200 489361116 182662508 839984502 512886037 743409251 847491506 673513565 638195921 808494967 617780661 80777235 656214164 715824758 770588372 946636960 235230059 218674930 998413432 475688205 891254874 905793675 925080365 289491581 653485387 851613251 583144292 732335062 260497415 419647362 181874990 514996929 677504101 353097185 960907365 996893562 871509474 467814425 765333973 955072512 733286482 38493395 509349568 556552650 183774381 452848006 652716758 538477708 453398843 65137449 428059915 295302148 177505659 712907943 344319529 468383606 260118750 506557535 518029050 409284055 787191835 595422860 435327576 623301170 927234549 737167618 632898696 660417453 12180967 493943897 591446128 491322678 521753378 847763140 678489435 804173874 787227128 407409277 931766200 679326542 149311557 434842266 267775147 392533210 669287075 118794390 248582924 242611188 645231314 575491030 594133449 295488442 981909256 165154707 237746057 737152510 610547788 604112595 953722079 209728622 163745464 525970717 130430745 42223100 842883010 668003997 15013088 177508275 584022009 565074611 76088566 377745221 371593895 674402202 274730747 44741144 109874514 29785943 508429602 642911079 504747954 588672076 207940058 728556884 138608633 563162417 627651309 885491483 522589201 199520221 689131700 23523022 638696221 856881711 728612728 212674923 717224355 234433216 128012424 970232735 639953405 493096805 810160718 645337520 982642272 926247043 312174734 599799596 292219910 452360132 689265840 377113419 555870661 36882435 17003343 764820541 54883224 514445184 658063541 47247054 759086954 193811944 689582721 629605711 118049866 408333716 356844983 887390736 322294409 683346654 970341442 440544847 820055371 905499043 883360845 876374352 81894560 35190825 583298589 537920220 117791537 382664480 377921938 113529826 80117079 946328425 527416953 414015329 219171456 893457861 333019811 575462448 129114681 794855200 72040696 840634372 742905871 195592857 149749148 261236477 242073328 153483438 576081238 324436969 321328134 444289355 781782679 37712040 989773003 654447078 794712944 379372544 278790990 560186558 543998696 412431872 369162185 602789704 143771279 98944867 817365931 763402311 846420522 530314088 748004419 565510622 185183567 948482167 965015788 766022536 185155678 601314690 205287419 979490489 679970419 266057429 209524876 952156683 862999478 912663568 765503385 344348672 134175994 150153233 774433836 72842557 904533480 300516479 20145794 236854537 956647272 827789629 670842516 266004864 408817200 832794744 417357722 327323823 959955272 647290402 246467332 450958331 399423369 967000486 156778087 513189431 435235800 888997988 17029946 439240649 343689815 416997964 123903852 242994456 659183079 457179248 940536107 783494865 84940464 133947961 149665052 662002004 279382503 90145403 930645276 740592634 966464130 995088281 475918144 442892279 309967051 817708059 152990912 453786352 544885738 271696467 392580862 189969477 233664024 970123145 45477034 293741945 82899377 767659337 268287963 520132294 472149443 744241071 887193770 766108713 733222343 761466638 117234950 84911333 522204048 254347562 743660324 202621762 530336734 821827710 266563 891609147 710774729 844606099 328981458 894287929 598872075 935969042 885485589 380646616 523813035 855690198 796399130 829846898 530712414 471431528 29695901 445876265 3523148 580420099 737247957 244413189 647024393 352045364 979549307 519437049 635547699 230969057 638144735 735702481 371101979 439727678 617193694 323219092 370343663 734523902 507167583 883841964 692502982 406265505 853447817 904772053 764839646 911416689 385369552 886107526 697080154 312024472 252730675 25255656 696210053 692729071 303723652 936194720 765302655 214523515 279448125 290999573 669136593 426782769 413882616 132780657 375891959 676496572 550639346 528451605 39226809 428440195 671472905 434031001 2177348 568497685 13497721 372613841 233667888 303896511 776214508 498007137 8437021 804710512 528489607 106161543 985661018 898374759 125061230 322673400 383158236 229649490 426802775 848202226 541632306 998447597 377964969 220864999 654066776 741472611 630975756 618273473 720594744 279479179 964596851 925906043 745851181 683677446 738849642 637832579 7358585 148175511 409950559 430247539 113322566 882569743 982299315 968775546 791708526 358133245 780088440 256742999 761744015 352251396 737573980 608628448 866401779 102284809 671879374 606893249 8561383 910582165 322191849 179184808 557888655 911324736 300215815 675288816 359097133 23472544 372330315 64884046 438242698 686953585 901607455 499566791 702822706 545025891 3411326 815099083 90463920 246454731 66571296 537403173 46199587 587644569 878806876 140687855 569801232 549040189 265957568 977417470 400844296 882897220 413957094 178773449 408565526 254442356 252670878 717966095 276663549 68039962 207132412 406404235 958287129 245225115 164718166 42200838 474922576 841213344 53171278 71853534 451550891 478436739 974006725 552783771 894375115 450274017 392172211 176498377 180870499 353919288 241530431 210386639 435757195 105631711 399260402 653223187 138867113 346492491 952827861 922659836 653552174 66388638 311286802 363598414 197898174 801183565 961323523 837360258 492225296 74568054 462362328 444167081 890293862 96618931 454887271 489761934 750450811 960399561 752438768 709776462 208538169 58151197 993645200 257588417 613698574 861835749 243508457 295726257 660295257 326047286 28395718 238293328 13159390 314752892 857666303 718269182 508058863 37572066 947219456 15422005 823175509 484670237 211758593 852988230 438641908 196583308 906712936 889991700 440874934 364480044 988884239 36009746 431187186 82458490 508076035 566688121 379066691 588560925 967924092 184209225 932647802 933906042 252998510 109710661 220565861 867760726 613916606 654960073 397582574 678832697 364779014 453355801 955018817 453713463 533401435 559416324 922276409 790354071 364651808 885523145 638662300 260057084 221036588 725895015 735579462 515457527 406687569 245781295 644904250 745663363 228890616 4772488 611273799 641880660 420002963 41736414 936636205 443986244 731687421 21891015 740125961 41774393 815906150 217380412 811364339 415053776 695050470 355698499 544827078 361094717 355581770 21420799 487286631 732810255 533557212 806216159 607154244 449532172 635919238 276857546 555924318 576057676 645486449 657732520 912905315 859254887 456138633 164385327 929183006 248437315 643384008 835260864 76005362 979064155 320690348 32134938 655971523 761958336 938228590 845640062 101465380 719361986 679109604 843952557 339198545 552933788 184301431 949595418 233390292 810840278 380201553 153852615 894642951 358886957 896122217 736719870 690260086 844272475 179856603 334458988 30590596 486273889 898437274 902709927 68325765 557858495 218620898 755385233 931838881 103448148 998667126 706983495 435676940 108864737 120684159 85634224 976614615 641263248 45192428 156217807 544502661 480403987 290259923 707486800 527333421 296673858 381509439 342620847 664587834 607609273 55805994 917790878 806203954 190692014 792182728 924248312 954574907 645491870 740782374 886638561 579625154 537108238 304422452 939924927 763263090 660117068 356877758 221253475 293694527 561823458 698231041 541858926 980698590 720649445 269278016 362200578 170717542 610788372 643204237 873652272 859971524 56088770 995598222 261317658 717072771 422603455 223227382 18496307 844246088 384327130 467331248 38969182 892410941 893925584 220619480 538381254 232045304 5223567 177566235 78552548 684602119 103052480 992818787 856416122 396359123 719634197 308856421 662329798 287979645 724057170 14166023 248147913 141389831 657366986 147244254 608896910 961154706 931340443 23537699 732759041 556919906 53380332 65543575 153345869 559661274 636356511 749980441 565055872 388307867 968430449 453569084 533591238 72941304 570902104 998566272 755122625 302223547 543963051 319737018 335938722 481923182 74330519 193368136 324773292 73653071 294364522 225368184 982084447 673124129 609738932 394327757 404082071 722103711 869772834 530953935 210425598 896937048 66114619 292488031 870764804 957749013 96294639 654915800 243401632 592380642 325763501 561319761 21013401 978479059 724608353 635435219 569713387 548495761 376368329 288203706 754673950 626965761 451320274 371329030 462092920 739869643 137896367 463688334 735465450 158212692 324227301 361525287 892810450 866146700 564006607 711807685 429870553 431409902 385745753 898210463 513815995 849277646 766581482 573767354 20810813 198901090 150801848 733829505 603026368 913786902 188153282 134407981 7676863 345497302 205123716 210928355 854580224 7149502 740404191 8787851 999946525 221083401 294582210 432250245 861875031 395128155 928911195 246799859 578780047 751241359 525351800 225316972 703160448 110735763 229521626 28194982 587684896 75176964 511102162 759355081 457613285 230181578 162518905 889422226 515098740 132771711 217504539 484036620 692248856 181736105 618978036 611226467 198952330 769728981 595780911 175412067 815124927 827135576 573745448 656401724 127391418 603512620 13279469 789219717 408230491 245785023 982499797 273358477 561470875 175910147 547663824 820292533 563205965 202288281 179643995 204015709 860295046 282831686 972507564 515028674 716702344 374057124 539816882 246842798 384318567 989503065 476820060 854772374 148072646 950617889 898092934 76454709 208147379 37400373 660402907 961321231 817961217 774749821 896604994 899458898 244044044 873377239 470730044 96089970 89053437 891117359 844314568 109978083 292138284 457373938 473232033 520827940 451511752 152812373 55347870 898845652 947985520 742315261 51684209 578908732 700993673 482807413 655075638 973232449 692209367 490112434 352382601 606044540 815329281 938549993 271654938 607083810 205460409 680128356 346261283 918965512 659335590 626697720 77943758 799471681 590552831 860637692 101316134 481298742 839720044 245583177 62958016 61342612 503861300 262711121 361289539 920446689 549555497 489699216 519717904 588005395 355356719 611760221 371689404 407696104 339388649 811224685 730260804 91915201 865136959 829107252 36030876 118191578 553273847 667149096 773777126 254532634 313529237 649545396 288344953 966699618 192712883 140108786 595402885 485053491 331559304 890066741 676616993 978319903 612371714 981563055 50617630 70068938 545892269 761115999 502491848 965078950 690087143 100994383 51641618 178769473 697153446 488342628 43464776 458134838 192701906 527501340 762217345 777627036 461709031 536102040 276398196 360951776 895023407 217201005 281825736 380630656 141063557 877557772 797419893 271830319 13654524 551102238 18014896 696261050 832254008 942448167 799274519 738686540 100830458 21694898 620073918 968583119 891022529 570695324 347034666 184008758 177721977 492358460 773075954 502434055 15957326 622641851 669689827 789737173 70683376 771497282 854122355 983009777 442112006 956433142 387561720 629005844 596955233 441067285 461794535 661097508 29476529 507226516 150554510 602661903 874079375 303150480 98965246 959625683 501896814 679427275 125858403 460717561 710565150 596034471 106641012 676917753 182748308 432118536 839612225 262416604 194289691 975510865 391273657 474021501 697994104 709053037 644050029 466655935 561513173 984688777 294488449 558247400 492328312 146492565 437796051 289445750 393882939 104601650 789530660 102180599 651694211 619843095 111437163 269818349 29098220 205736005 484399643 153377384 96942850 296963419 847349905 314364383 543307363 616371720 294119620 462295889 568915196 661589846 663246396 608262097 49565567 530271193 594148322 503872907 606824733 655195462 726411781 507098325 98214782 648203417 88272831 919831003 981298234 663967945 141386022 207349547 808673235 617573268 835746818 185351816 363083594 992347786 681818829 770084836 911281327 395486166 432487814 561140948 289628312 560130278 983957702 258910551 34511073 369215324 660074211 40672917 318334076 336337701 594050797 826638150 81205354 418692132 410579367 744806442 700902841 128504816 714240841 612413459 810979890 632483091 382561094 294289031 250457054 171606196 948811171 328764676 938660724 666869850 642100646 649636189 312410651 152683388 673231950 258482061 338608302 426991410 962808692 461969845 515847957 210531164 346340642 378890045 683135379 34757876 400690524 507949295 603058521 348608469 139846724 561526777 100508964 469408730 735928728 340593643 550993305 571569544 925912890 908468382 212799415 125338390 118559395 374619282 954752827 306241829 181969549 779317329 268928980 618550798 18168167 292022067 59359004 945562067 657078117 231748172 352308688 160916115 333897146 373479548 429069868 832115079 855777364 304208785 762713458 724804754 482831749 837730948 42581255 489086166 743543049 785782981 814467018 566920875 215729859 321878301 264216512 864677411 364377268 182089494 635489713 841977679 322607943 38402283 589908664 356306371 546912897 245065794 67367337 137572787 858458577 321472803 990462592 572697904 727863860 924090922 741238344 342178535 158447398 721725159 44432617 885823468 93757660 548963654 313935116 255103032 778280322 711401151 142721389 621237545 427593876 746982134 632476175 208163201 328917638 322877469 836434111 248355344 232088430 172383476 93442751 261374655 220535451 45970853 403134258 149426963 433147641 144485583 744465146 196558869 510723277 914927281 471443229 882089565 23605225 886873444 7455378 946197012 57436915 756309961 665120506 579359579 862974085 362856283 671492077 161019951 741787249 719177928 269939230 415125994 86942804 40157797 576459032 977165125 260189048 626941224 878346729 723018590 557692862 835011633 717967683 684657006 119759459 87407763 202753965 585103322 302110409 65906355 302364682 79674878 379205639 526120639 815307753 297618289 999404671 865912429 342627789 732131080 587251897 300706626 27526640 353867512 523232876 529458801 322730008 441787349 931954698 4555834 485160923 267948107 988168138 572920845 671350717 739681752 734508274 30269862 709706598 183986337 257660294 856308747 283956012 948109893 544251892 726837168 467027128 574545843 56957101 520224095 229363254 641002127 792263021 378175799 108232758 498539117 974541438 587821087 450068829 315846106 347430259 686439659 485353377 937520308 991948353 740042835 835463316 584097313 229067224 199361573 278174103 28940773 576781184 961409243 749655828 794384167 715162110 688141162 707946666 668433616 550675417 59942507 840159493 662657468 285405742 107669837 848761228 566723472 662673885 735669960 999693368 684541331 580121785 500871386 30145341 260902059 322486273 793982678 701267146 323186368 260477945 850185788 416239204 480919545 696153348 724853609 661184373 38710801 584926110 291718131 614994657 747335917 162930144 879729696 190936524 365724859 901572475 820009787 774272957 720576098 606488710 614694093 234256706 727081183 484994987 757057718 582546549 607512308 715464647 718029008 983769108 384989326 822176365 226999930 973947069 100159572 604814476 227566068 465793823 749323270 956881371 469374346 330045067 406346552 777112067 980653736 308866942 554834820 897494260 252918331 529506699 15820141 942861963 428529060 664798281 17781941 926874177 56893912 319404806 4238462 150811277 264615534 143520537 33116795 743122676 534725353 295200684 402299941 362478270 285756560 767195414 379466107 996491984 868499627 31841553 667082030 125312342 192555634 14052257 46067972 97988610 311000830 497314475 958332109 357754193 524901377 422118320 445366346 838554903 882675185 154919948 658053410 166008175 584620549 875174748 912438047 70056674 370361880 510237605 394364512 121675829 615177348 452338631 2164349 614134089 521992129 697608156 665839218 902785659 848544329 158271164 859188299 965325163 917287738 537073294 229748787 784732480 215633254 967197565 835517454 726115227 471783330 357689262 518877074 953354846 140966384 703900375 30033279 644473383 120820510 674789292 291644010 261378988 632771546 133492309 280003270 710785289 998117217 85624048 4483899 753273701 862208566 943625016 170081887 256479148 248201948 195019786 748796923 417572312 441811664 872197971 460927182 288865840 947304323 778640058 999350254 117041547 785410177 412025084 398644214 336915548 22197861 153469666 277971413 11763256 365719076 858482594 400014386 885422053 379144198 874228633 917738343 203320189 896455254 169429171 493339843 42985090 177708772 462538139 853142904 760337268 366673169 276355111 634408332 808251331 576501284 273415051 314459664 640591418 11936927 661694226 502679555 388426294 911193053 577103399 422847515 650698385 538165382 912158927 791037109 940668914 391383140 433133822 164581775 256103736 973480403 53903226 587816726 952921092 375263593 229319232 33493378 337894153 777657810 418466431 856547240 257071884 23977717 76656467 680099606 732138511 515607442 47284858 310837056 244075336 411934560 152700024 501889590 411839847 458962005 8111988 218202692 615329424 899544059 446038074 460902957 733288983 238161864 251668633 903801565 499923920 62869417 687787435 977785967 503333541 494477267 737268512 645547663 128272870 303729579 525050966 806442649 707414521 358077664 747536889 887648969 597704607 421983990 566096343 458399364 629738163 203966472 99415646 208154169 702333608 381192007 25797884 22664127 984364660 629384266 241916073 235776998 588485341 13178008 137263629 771826764 804511178 540750743 957142138 189704176 196559968 374062575 898265551 936190268 865161544 449429498 368727933 493815594 854404878 932864824 604907197 280623565 496932577 163552536 669763014 383286982 165394806 50047119 228584578 809973562 436738552 344814130 280619898 437290579 834906375 33092724 941085336 501418083 621683459 969087904 358730907 155386617 654181643 638067246 888441220 566052560 329687055 580758492 524042754 16758851 953514908 950602487 667523845 804848244 991934124 71574233 892867530 415493074 16541494 747688881 121073655 759552792 597008100 138964704 701420866 869990458 221304477 293456784 23108926 175695482 282979317 911193034 263047794 115829497 483602366 342008855 843471154 83843967 976253854 690109644 614451312 939160820 335561910 609107686 631865992 228360803 972081815 253963616 793049270 131491591 631180474 399345699 340639793 22742878 868581995 17396053 810826822 312569476 110962011 283747729 75220263 625451628 181016637 146996204 143880186 325984576 99742251 732952731 965116152 506217804 691577284 550232281 272397903 179751400 602867682 680244879 457484813 936698181 30949340 731538536 499757662 105879920 778384885 503314417 423053318 712606153 802763105 426800701 176819093 362485118 876181545 605584526 588606923 996473777 996017898 486815002 860080317 652158292 453634335 21348115 356526971 881394763 807309534 855655178 167459252 383248426 324750369 504769797 169192765 281046215 790762699 91304649 417455149 202491113 434083110 876526725 659290889 696651629 275381696 691340715 388592729 121759035 602581064 436999213 907239040 349802271 855056370 147761242 53136063 729238985 68491996 791791251 569624998 988315395 871022097 222254965 40481488 758832631 996992042 742845769 987142369 782568769 288545177 296416267 651288465 504511790 548213303 117609965 995761594 737318854 919499553 460118517 12103732 86565794 775798377 149320942 779976288 640555834 631890628 171748443 559708605 677639116 856742023 860684423 450784016 394232120 773905839 306241122 973380269 906077718 526575260 357205901 825426520 453939241 568188114 263877474 330177876 939133333 821116660 935977896 349313350 761892232 16719695 594188591 257151706 152665241 71017326 373738335 266604303 229543941 482942655 963818396 946884511 497979563 146041689 946592752 3651433 621957945 704821064 126758604 22913060 524679770 948262543 278133644 50832960 685833077 223219862 363904591 692145958 773491388 108380634 38804403 416800975 161454408 822312965 570671125 248687389 350603697 235898470 983279661 136542643 754791774 250350736 549212637 422766879 974357108 845614381 955106797 152258707 890037533 466547064 607871566 993299616 30524521 750477349 165650799 937933565 139640223 329798257 421977213 884174634 112277220 132386954 693664397 300947588 452773181 162320992 986237675 72575295 126389133 695714624 742835730 161422971 49809178 572655082 383322073 908327428 740326349 683500164 142131663 906919772 464617599 674461467 774694467 744361249 904928023 250162107 200148393 921182353 517276986 782027491 945012386 116369537 742997960 410354387 32959657 65673490 12986752 889033794 141493778 662623921 68290503 822274468 157360382 21787516 689788989 975864627 246732870 722963942 308633260 826178486 22246159 922222141 341411535 971381268 466130122 885677378 940084510 32853739 664150450 793559917 533674651 616214176 778799305 190877704 488317287 94876302 879369813 130947676 861683913 122984414 133394391 195542330 346409353 275575713 385011687 101583274 481268101 560333819 325558015 160327853 566027957 532103813 940511543 887116 494256449 307718156 954020655 299081153 37872592 2689794 796789279 281991928 717154806 307858346 362752632 884713196 680298053 736248229 14530772 312927082 92989594 76151082 400888050 265916756 353464623 840196558 469471945 242268158 993332669 779871058 214340782 131457708 992291047 865600286 587086689 878953990 588143388 936331286 18643604 246762000 800911565 347192923 118373318 466939837 64137253 40062011 308831778 166400528 545221410 934345956 243848728 580061507 763860194 708966707 524659913 214270646 423519688 842611278 109394494 407114214 483287451 315750012 402859663 698150100 493778552 33787296 533423804 733559212 317572024 387254341 985401177 398176653 164988339 982326330 378602711 875630345 701492197 431393858 104103873 294496418 184961766 148283831 972032181 294385260 860409027 434276689 735557625 548392621 395911853 310935094 933458427 38133836 352373733 562796198 41015324 633287070 255867911 91065571 498568404 208842519 730551049 526554152 257949755 909710218 95937791 652588605 293934710 407813088 292791499 401443064 905990061 546285103 982468319 471733265 494116654 120463129 198819475 17335983 151100525 148720518 661941276 243948628 935235990 785160936 150333708 939339503 783742719 865325594 380594766 258102509 895566765 695634377 314744515 830935878 408221576 871149475 104626017 267887646 965990263 425188743 662830609 412036719 857960514 72150104 519439105 409220482 695302903 530265220 904435456 886540357 23783010 301460550 245781046 308915568 948583575 778947209 859252513 829064101 278371204 939175089 599600841 377155586 85589756 815069611 161699747 448688933 774100656 717058487 192401320 53493653 468329312 860102977 810606407 77751066 853089603 407156449 129899350 526389933 175003725 22775560 259228261 967221165 627845501 882729071 255200641 531360424 477679493 453216961 153812414 321617918 183974112 395421884 129544333 440716024 197360521 951381864 44632224 598923472 76659134 771417917 324082662 106747438 678247086 16626323 731719990 887838807 411582741 175698658 562580962 239197320 451411404 924084697 647326835 353492147 878617487 549675886 225392817 158753886 134592264 337762175 529034769 459885779 168616343 281717107 772545890 321560135 848991041 813988994 356540422 440982915 749467414 675553072 333846608 463152862 730241144 270108875 942142338 982322057 333274037 30020891 903468661 393820052 835033399 706130664 236294940 627490759 658575600 369392871 497762615 819683014 189332342 190022774 630709457 479734735 994330202 50933896 471716451 50857321 193555735 965072107 615138411 415629560 440318864 570913706 284255724 35127969 701274075 368648656 835822657 859113728 44179922 680681968 870008662 381246368 263051424 303403246 752935543 713292479 237520863 306144610 552144147 262394502 335452550 279330393 420869550 832110162 643269253 562898525 871100272 353179796 364429567 798634228 790934565 612471244 316701950 436659979 393971010 249947632 886748533 726169752 746138911 27322662 74984412 545763569 671987671 909949605 654515299 73395656 303580999 687620544 556009809 893871164 947994932 331901548 797602589 607156383 475369218 103523394 637350039 901418212 946307530 957950826 637769765 802062635 527060191 103446062 985704486 863092631 641719047 631571030 640133730 232965787 615954614 256521089 192439956 98224954 934602010 892353956 267734995 81086451 222307382 754379947 116521575 987500099 617901444 339399670 475010111 704745459 126716825 143990026 543275358 990673837 772251215 315954210 834521961 490695182 917948330 764390490 600901077 52965596 846635339 397751272 735682122 610008833 87157996 674681220 253065078 40986213 292345344 300324625 958603540 968508038 69707153 532814884 684723610 443355200 61858350 15972275 602241944 511186309 443279549 579217870 930276524 379460885 702950839 495422449 379731148 87537376 243986351 494208450 21590236 484955586 607197199 409782157 699636196 625635798 707693399 239682648 726236105 53004687 201917985 106987037 900431311 347758308 11917012 919058209 582761593 175339159 59832600 143077676 244430585 855337166 841513740 660367807 552210452 540954737 896440769 491046883 939382243 225482062 569656327 304169591 400046098 789226762 886989128 526552524 933219808 795266543 468644194 531191623 109644196 895709258 287800758 404295309 350885000 349246563 184896274 732389820 617405548 240898617 401637656 211465366 600852952 457248658 307190486 603421589 203783162 132909628 122081445 110648036 748346071 784696088 615098967 763896915 623873834 556163469 268944321 782732671 331066842 81526455 753898725 775134142 860167346 16067756 203499667 135071872 72216217 74854847 132093038 409153527 52108237 65025702 130666164 690680066 96853914 894692743 794631073 255297220 555497970 370952444 213836037 127466234 49607409 796108451 946883451 202097340 283127608 18266885 129242850 585839957 438069834 495569921 503317648 802883432 573840411 906755356 955443925 260511124 463098848 283373907 685255201 387620400 590638801 689289048 386300593 559650697 552473953 706984408 794520031 269432663 255112014 312124136 21572818 488852205 657381526 749644355 663428462 899082528 294803383 966790516 916609660 362122491 437659001 412103099 698700266 383977111 682413745 223803284 397556273 469145817 226270891 9406750 670638727 45976275 391521537 958832624 625634144 26599473 788141062 890064330 676836675 212711580 907656619 993773877 500222328 531524453 849006733 694077711 955316789 925716178 89667235 228465164 623633034 686386247 673261192 427562532 950222405 486818871 868149957 752914975 584879302 825760451 364081814 259378224 430459846 859591726 254441796 292651682 156432139 110216996 877715452 234360476 894693613 863698696 277944077 841991654 1646333 942906780 715961067 471019241 985734727 796482456 712033860 555586693 248587364 921075651 787137383 186644814 321450545 327669010 804298534 320982611 821243043 652807978 973049588 394140859 455043036 719772136 646623157 617738156 71734534 226262004 544906201 266640820 750509627 755588920 426579330 129007612 851719741 334549667 480835660 484084047 489079698 878204823 651949757 81068921 203820644 836884031 383385143 527358 262062347 873933810 329671672 276438535 722001607 855510456 572359173 102250042 128598742 161143970 519229670 893465104 431667856 75618526 397646867 877737938 709771328 843377884 337066608 817479203 683329472 766785208 612771872 499002537 839328422 881423687 123050641 240747126 305318352 961779658 313435275 389364767 238690837 604846753 419387396 237937931 561426897 416403660 9684219 571328524 11184096 978310672 25036443 859995673 355852151 664458687 403724318 257170049 816742189 908211369 448381312 250724053 460714199 254762801 75405793 177554447 590669781 526333301 807941999 131451781 120009009 18306125 82208944 79613437 931599802 502501746 816630027 110282138 303193057 253570397 458513423 815240901 753997841 941603535 687590213 556760833 219236963 763575841 657955123 697830662 35411801 104686427 545388992 164152318 446015067 680298453 978873385 534099048 751370518 300702617 495049048 37619810 333207797 813497041 890578410 75968829 654148412 47460022 706446210 217431001 747950284 131821171 737121043 308070808 333396633 449845037 573968268 624802930 741199350 219935152 263918067 138449063 401390706 349181940 738202482 970941393 191868704 980242004 575716705 849360965 542581036 446315891 348228868 701882140 149860603 159199080 676124346 916668432 307986973 184372167 452485523 526250943 118216598 880760900 747750914 643407370 101308423 201524725 468003445 133792002 988930566 406108802 166098389 338681718 974137550 255185733 949994360 693639693 342303457 660318804 916075794 651126226 758052429 440241887 388445622 764032087 175215214 511994792 307007714 458085959 731812573 532079140 188232811 584238109 457265196 129828054 117629180 104197932 636505669 345676054 747420297 328597210 289083284 712701133 77438477 507638165 552668694 593244352 141614761 2568962 393282318 44402640 345735257 100532482 346560496 219460203 331371890 645885076 143007467 774480214 287226078 916623953 814102080 928029298 89850033 797787423 324663539 209218872 537816646 660960822 438320439 915773071 887332933 993497385 437746645 661587623 226258769 754182256 506796990 937460321 924265810 617766438 78069988 912162027 514822298 361456506 654222575 256381761 306883667 995320292 944519889 835437633 254078138 429633972 379647916 331854055 202085980 737446202 612101282 703458035 173080412 394293149 824399867 732372576 714576560 754047369 655440873 226483955 605045782 446739433 649833715 875684110 133656880 45439343 534492267 440942961 757563548 447914103 925672474 979719793 365660933 194003802 462088548 95100811 412044250 864857970 733497846 617784371 326372645 89231147 847546034 890254877 303234437 740657188 554887667 351136944 954221398 865752440 415988871 917289083 280502414 980335130 36354858 296310684 1220637 26636775 178634506 866922542 134437566 657571198 197109357 936029170 967315551 727483075 293176945 335307087 251180829 595863677 257094759 647686542 661993373 747325365 19125482 126068646 954930846 577036420 366091773 84932604 214589457 469803944 821080845 234120730 542035801 981407963 372107078 274138083 503126559 859858201 463397641 333436648 986935614 128364258 820407712 802039556 491224296 761527053 966725587 597563872 499900115 945018929 269717092 646834181 600438006 888145543 508248796 885474927 508741563 886209972 657450543 932077018 517876121 657630508 886457614 686172552 730295519 932811704 58479326 624663623 359307912 957661387 392004601 909256028 378237934 568452129 305267551 522446938 722280285 575666139 314706504 381472031 759731956 187220834 690936620 479101464 232204481 948504237 799914125 910621140 975178751 21977095 851932368 462729079 611254007 247365997 155591324 871875715 3008342 846606991 925594378 117502422 478851982 556940291 44877378 935504258 46551995 334511626 236797894 156066892 447612497 821515352 305687823 429332862 575510978 296700211 597150411 987500144 486501776 393255673 993077311 600229171 768535767 874030463 205972657 823869090 817684696 411357854 134492763 829194766 110385537 805159201 534295462 889511457 748408290 868260842 510225956 960646458 658298028 573817327 376058417 253827386 354206670 465359420 861695562 906418159 69504245 290630244 913084039 538222359 314196364 406599426 524990394 982800731 17394671 456254126 940538701 759173400 748254029 887691997 623607967 825933911 890401893 480085742 410741200 180762080 486627685 928258347 124767095 32667195 525737075 160502957 926369625 653003128 574985273 281798059 816312938 296264192 204110396 746639596 216510378 536185951 441053698 93728822 198732533 333340568 428558147 87257843 485975180 603477526 70060346 95282666 410266727 267947851 778242899 815104070 629150479 93098278 162363893 395796148 114144467 876992477 834008693 738532875 193051768 992890494 975061053 987724071 455243069 2547096 306966435 679584768 760036993 268034213 35489909 377417886 567106412 57114012 286076549 561818065 268570094 647899732 249024460 949254917 191363131 889869955 471651628 304251754 668011416 135349786 561075975 639530713 775530989 819790985 709452138 913879907 184686060 207520647 754706207 289408521 283026700 26579303 520054951 868158673 767206352 828913532 764868316 991636612 948417897 74067864 102129476 288899342 489729214 664714405 642600384 892508327 771328798 369518561 234224852 928514330 981836980 303650369 302901369 689214811 191988844 923489745 379302504 693594580 868133902 182103815 186311086 565387925 772825266 923415120 337916106 508896522 202907348 15822984 392156266 787770736 863705199 302280451 793707155 402892757 334474307 347081912 869730249 294857946 268437067 938958811 705829887 372926986 77105143 983410285 112419828 634790824 871966520 354297792 626342120 379589927 376135074 681600362 54050630 972573115 824052195 417875923 689934643 213911277 187702456 57505587 345090758 862702701 80754461 361016223 459109334 772335242 876991870 891229425 885221291 386098230 136930110 681219992 833662829 819064469 471857748 434598987 934721674 491317418 915770562 542774820 360852645 879606979 121501278 954639324 90136339 970396233 395049288 961675050 665955685 242252126 145464657 417826337 807202174 515491005 480668736 656402812 368944681 196297491 443910502 35427514 107202099 578049090 986383285 401621566 641820554 944572505 552647588 940506188 654214953 319718358 139649374 201998630 623616613 548507325 72173180 934532815 903984639 923733442 18876667 784510258 811727252 524738905 765021044 171644755 24564961 377350818 539766118 113919886 806148331 203710207 403805713 387790324 341255774 691611895 178599187 833475332 53486075 945930220 457492719 651197041 911052543 630481548 341717287 688076912 327529048 517477390 593380500 800137956 267467875 119188410 588059936 659080928 489845783 971678124 16500447 297319558 702166733 172842022 529075929 801046868 598795179 919764718 824677054 380594464 229495303 753804889 61087045 902473242 143819622 1137893 132616138 922051234 487987610 527544394 843076222 711094753 374193271 89178391 730905668 175095301 299543735 951167410 811141517 631177500 441671053 845471510 634299437 276995091 329578542 798515648 666588598 714728382 983041808 313970322 132810432 612456725 327947924 708643266 797347697 381402888 412685317 440262985 465035127 29534444 56947301 694063616 198009792 30210656 613574412 115986299 378460207 491559056 44226460 676698702 983709533 4313501 467717449 559156424 47392162 251643882 239546592 932119649 186625487 441300843 14878994 151099696 240432313 905255687 49469465 414601177 917352895 965101375 73229879 560854809 469078388 648411005 996005815 150819518 171361149 362337803 820099862 888794719 424343246 664917575 517702997 295434098 859330009 127451718 663652597 176336226 270313086 12451796 586840856 542970207 772217155 16191935 477580802 767738231 126024090 524263936 477390578 998788985 670763482 629671432 924809873 911608695 25320073 274729255 849410480 46232634 313592770 277822216 834391000 356317460 818102256 526707466 998394918 667040800 764263820 449281147 713779882 814382369 238985288 662397369 618442255 405399246 206660601 418186913 375235996 238179397 388924525 996865536 472175460 474969418 274608134 255212709 386037528 228657802 423907880 430773306 42834502 40652036 439787762 10042213 434459348 424696023 597969731 856813388 880118788 410456817 324756216 422653016 308712498 563484810 793919524 389963076 810115240 379402370 421636800 295126600 340270379 339300684 716916489 106889666 994825248 94149460 665351149 367391682 469256152 903313529 753640980 726604381 994133177 292236923 494718976 32016619 156161655 880493604 880712722 864232228 335330746 893850882 772066992 539503049 334755373 926082052 296470657 175751493 532718307 522969501 143301514 412453639 898899171 34921071 349265862 386243255 631237353 283542731 874840752 886168266 879268108 538049594 873459397 473784212 542248437 294470894 415435137 243957979 138624929 77222780 187898066 72135341 110340464 448768339 939602063 276512272 112525310 654328786 541582899 412589012 215814770 321230036 44830877 391590270 868130472 781638708 253684407 47555289 588475047 774264059 320968113 560259933 538080318 900131444 533399497 754318633 176440496 767989485 944789304 790389978 731043570 51447320 55620218 24087855 513461734 38201401 341252446 899367469 55418931 446645265 820023347 915881105 58293843 585315734 472389655 167262103 310190758 738601089 357406424 858359964 95745053 927103370 676128504 117974457 96891518 289735399 165013454 959847528 541982002 186041314 45460293 317777567 524677909 444413585 857290545 521895163 327452242 398090622 224447826 604625567 186729885 926691890 138842364 633992425 998066794 420623065 696869372 374272905 897788011 963294257 452675935 632724847 354954070 707464045 721055691 183613272 843123701 228808038 338940742 480394414 487497982 162846691 744553791 744344163 423900388 500533856 67357910 138181082 426531366 677071642 363747445 183029160 823806439 628254403 635923273 612512390 178918294 402310767 976609149 420543400 307826595 4124018 885531543 825797622 625140386 542148610 371050289 728402010 624563167 251697036 909097387 970903671 194365393 11432154 744035469 681551863 116975767 919373921 822258637 868708280 963979896 727232831 873500180 441725417 679268076 75136005 675809087 614736649 802043197 807105511 900549443 295242501 199897127 682636612 407133938 715127286 483204928 556443760 864862184 130774476 636354265 834834719 334928446 864791706 603168406 289811968 430764684 650156562 486435463 4172060 392694035 932272076 907177496 497927663 138221785 565929586 197145966 745509391 946279796 602843251 786068132 832086612 471600154 809133406 81729083 907423753 539128377 741134788 461038894 427090591 375686456 185197556 132431172 486633159 903605932 66009367 425434201 276697315 86758916 425674951 66519906 40451669 79847173 895325828 117957344 531239613 43045470 994312552 320245222 489158234 10274802 482684555 586072820 888025558 162224524 740797187 416361047 923555106 859332159 882229983 408488429 986757549 851942986 389529327 453883682 917333186 747251908 727003035 209945819 686798240 945998446 60809068 599455831 712405826 519771116 309388657 48265319 853933398 918366815 691952023 107772189 97561471 720724380 21097978 656481102 10282420 802086862 704695864 115126080 209841755 726927934 992835016 629146205 70396864 604092998 861035257 186597686 341984923 658382534 673866540 273694906 974742708 142239269 311607303 488744838 440012897 173992560 37749146 481332643 52035049 855751359 733687789 206329938 735948852 564695864 169731509 683104132 243909010 668420285 423227365 156420066 924718076 518208439 955220281 725981622 655147268 923043492 639121728 491180772 226472409 428545138 277277685 274564794 597504412 794100680 430149921 602753535 234503876 750490877 361563722 860053052 139753507 719253770 744324819 746171685 843638742 423323663 376652893 715839859 130248477 596709901 705352929 250038913 613564974 770649494 678701652 804087747 622110994 105205506 146827151 155381122 877861101 596327402 243334179 381072510 458084852 251616444 835327564 648764394 508595258 458373502 966636993 708876993 715552963 118736290 524268992 473205359 323412684 191160208 556699530 51048959 673901084 944409568 738047093 225049910 633885921 875083224 313914903 858533155 499071737 16069027 810834022 582579121 673957042 320111215 210787739 938491154 64812574 372839512 396288246 801144375 265352741 425847545 516204078 314734961 74471457 748029160 717405260 967847063 6160601 232379348 144454262 141420854 477392234 979653228 709431201 186519988 565230118 336587298 159842214 876272335 903264310 767063626 984088272 193564319 549635843 484581234 563098466 615836721 902255408 255778363 938222534 394324623 83073652 314066946 778479197 734512566 812332470 34472383 17511775 947043075 11264110 747639934 103574113 434410990 946187212 527786585 993914723 556002495 373878211 410854016 596619488 575295452 174309420 988622492 989328719 251215230 142080731 339434965 584019986 145452129 648411346 475309043 741943379 587479723 805672491 769758213 558614071 449020708 123882296 659796930 561469185 523547477 739607216 542056707 270935356 242633949 150887392 9464761 804116184 461297609 633099466 173605104 786390418 18009212 649946158 521116733 603061056 599630512 32081302 882659663 967091478 878254713 665788666 852885979 224907801 733726373 29148985 512549194 978215119 297686178 752985743 384487161 79134468 481832424 195269276 235492407 62253718 341787241 510046441 714937532 28546273 667704663 90777940 80933096 182802795 771444805 689629693 85478418 893966516 754965936 60115147 634043057 712632304 436621083 375686880 805094109 781576856 499574002 660967479 887003174 643101007 696006079 160267811 151016334 506033731 759483556 539705567 348526907 522410719 418656593 475946641 285042308 723941238 496920135 369763101 377976858 909051087 895565048 195180781 62400145 572503367 75591092 189589550 549753956 227211841 390765857 415594166 375042001 992151876 786886198 122804187 945287480 16064007 816979057 292527671 786740467 378796715 960208212 961702627 439944821 242495248 655159664 103341140 475755802 946979915 448074281 402014264 828712072 764010524 750557900 23703885 678294208 675435096 876954842 120171083 429775123 853620490 874040216 451476573 770449370 375064151 88505478 293080967 85358271 119367733 646249689 241447114 884073908 449564195 974766629 509376434 255991167 21547311 110145984 637127928 882388335 13681249 769838990 178682451 485271888 398029017 995397053 503562391 489737203 141701879 97877580 555242646 361441832 158395655 883825066 269861366 275264407 294863893 596356137 529727929 736286127 397814428 517876417 414060367 295662563 600197109 589953245 40162359 164302381 221615696 120008847 705676147 606760586 65563328 47910402 781372867 194261250 724010360 65882662 789105215 261465491 527941216 668517442 666956662 726206692 115014900 123274437 375023969 79667692 465383428 744923636 56623822 249618053 940714962 672758300 175886420 570867038 401659702 717071781 549819280 749912523 714000588 304190778 716306996 573180876 118182751 302938331 69367753 171441365 796761318 183240523 570972660 899525011 879554090 856177389 742069651 991972875 948312514 123226881 714711024 779274795 906752553 741952108 822592463 205238203 920658926 544606284 195315521 638245532 454702669 310694759 378419117 763047534 18724199 985862071 842011217 884397717 519087530 370926041 807072063 886018245 954127883 622138845 738658538 562711943 11787587 954692653 381810179 711519349 880981726 580360088 119661373 860145141 793489188 952109810 228011387 701183783 817982324 625825974 849397827 141954150 437967312 404006987 527756967 905951155 578042245 341825073 832822100 796249215 468820663 550110219 329964237 491247926 699992903 525695526 970321435 161221509 46638730 187365456 603642709 330661561 153127172 483267221 199924065 312317068 140182727 727063813 244193072 296765313 120692846 894273160 930961733 566134186 918005365 568400307 7842295 566209514 905705791 997846484 481953911 163945829 472688593 525499553 366708601 217030480 309632149 356026365 57425270 446211701 963887889 926413690 249318981 52381508 136665072 359477815 739092866 547794559 5507130 16037505 1027843 590632666 707759724 688397405 586415305 584445284 305343894 262342623 930072481 950311807 581331088 43302640 986354180 834799239 864814560 689844945 741641043 44191026 140748113 954692701 872793173 29519298 486130610 561789966 171987384 999676934 2827440 958748130 936920164 221417427 334771376 139240287 72602308 679577254 437932991 984727114 504395525 278706506 630198804 214460369 931795122 70629592 897426861 40674600 428610908 677286213 652748707 31024784 862797378 566724063 542429290 285446789 961436805 750482611 650854810 971785373 580137097 685409337 696401065 166598524 254064548 679959588 640195015 230818004 342868723 727340261 18316386 243633953 460900973 466164317 989897191 377530484 662963463 440110678 907738685 832436715 378910500 590590587 374134631 478112888 655703213 353159276 822368754 290994921 944671978 106272358 707441271 427769799 839794447 550121830 266201237 250798136 152983766 702174201 86240052 14398798 907777994 600045287 821978738 23475757 266159802 138013996 181294552 648959300 351442835 432133449 204532269 194435753 37692856 405540766 800659878 773735882 955189651 292668130 693375877 95625979 276820233 407922042 796673805 903516787 992703089 227326703 586814668 697793626 718862244 845424108 162375574 4777792 268852182 485017270 634535353 627425156 647165620 98444026 181195433 170262802 660773834 268803337 111871846 464579061 834617229 287373933 523443791 550599304 403917894 149296334 532305382 371085107 52074910 597048166 541279725 61542527 773012446 398387249 595452905 462259068 620950321 218310421 915063762 706355736 513845286 333022955 172615158 458148610 471693403 848119533 960280225 533126918 778749882 33224797 376595042 517746504 644540623 778517077 824308702 708932580 383717486 263636162 678407030 968294931 156790649 376970036 878289959 156255250 114183012 135691878 218880883 930652752 257106907 365725421 13183733 344986469 679925156 196229962 379264148 687662775 95751030 635769167 946763172 725421079 245972113 895557751 531360061 785066617 418936883 357665446 720868000 4168850 564965811 415483706 973832930 240768157 931246949 424687377 861873626 133620003 151230195 917193307 162516530 160882370 363249877 871733022 529631116 934395607 870898544 215480642 222446679 324641903 729642898 516095653 961885590 173769913 166953478 444515933 130348856 444350259 947379866 860526158 852315369 652623859 882414044 744269013 31669879 904876059 252315794 774026274 141862573 419705986 302597565 451093661 309584508 33680084 804642567 898979380 297503523 535201652 348076325 391835579 427994001 52280975 652354585 567602739 998193867 136086593 389207798 758788314 48122088 250809974 281102620 516455361 232460307 390577151 719836839 451758986 938680537 537660359 624500849 584960337 354697780 32888236 778148034 241211524 332475531 969725229 83979001 572231303 538115504 892568878 791184063 652098634 533803287 734521679 912631773 796386392 509827829 572507887 251788580 418899501 799013164 12911314 94740559 549236794 799172591 744778072 768360524 379267999 170812128 472928190 488873017 524444049 387067169 505892333 563424359 959193048 411749433 13292046 839140618 36236433 990534253 802647624 731042991 2804967 505829253 602822407 550527568 159261985 723402300 243620105 356086813 862235895 239452502 969244334 214050266 38544941 551336555 673881050 254141770 648179566 847134612 808664283 63649167 270133644 83337519 925259921 420875773 467274200 743180486 330331548 465868637 557306340 786492419 872575529 799501909 659781645 46232258 143225938 412138792 150183102 155695582 125729546 107776803 347504722 431856732 849767955 820125686 857518318 772891913 289959390 351295226 139984315 616234444 638963208 200071831 941511566 469637341 268749971 636172083 690993981 115829661 600795150 876544309 212590971 466320688 722180293 469924083 850302933 93853104 923814942 301556109 409534988 924512369 147639432 374278239 738307365 788841013 452552935 239305689 159778189 159412012 466263988 11674922 709907271 365482977 778570450 438589897 657846035 398946105 43624074 754387732 643517961 828473490 29196999 790964798 197934714 500247783 701283890 342647948 794531670 541574102 850430299 7080392 175651451 412664545 534766445 79109819 232714278 877827157 262107729 513847216 511000149 661785338 436403025 570974483 146959983 294906215 647617989 492411092 879778928 124981097 48367057 411381430 214315306 819973674 429020864 303141076 638906432 773415660 590612390 777607580 113559567 220220567 755065993 807276543 519314884 239206515 617251271 594415292 648886791 236309536 619388527 465793807 118638567 421341927 207311840 102187474 801325962 120251346 624911273 916716880 839980726 706364940 320006077 369147052 889600447 762479743 580926033 858764616 220875593 447376824 192042260 577589349 439265920 676427943 898330650 27640114 583195356 611679444 872852234 780853327 803552127 282961269 681124981 771618370 341557377 345294822 993307827 687407128 816420612 813565299 408781069 529788650 123990399 136082936 147452640 718635615 615106462 11742240 511922634 363563723 721622983 608802748 246639884 564132822 529682679 469285175 476789378 241037368 728947870 221868903 959513872 517727210 462371607 804400738 484868779 128453386 29909374 36007102 627562406 853254612 710206202 228512758 918572355 315701853 149272273 783587679 192634736 551132354 566826126 218918457 282360540 874129975 773526903 726169010 66081872 898487214 974192735 760978426 202725386 632405102 738581964 38841587 382995055 481525853 626056530 431400555 998870818 650432867 645059412 202096115 781209940 820111013 403517742 464428976 826256797 160408875 685191864 369514444 938640207 689329790 668221947 54965392 523834012 821787531 984622799 827188079 741572752 239871849 702273114 77697031 746862456 534934165 471549465 513820638 162975854 409943616 571516305 968651492 531903560 444816756 715670334 634291709 894113074 876991920 402392154 733985663 999057524 782447096 814169078 54729058 990440510 304505314 56672581 943675625 394291696 772430565 253936361 139799589 649376967 358780290 592375772 430386070 426526444 318906423 34374152 281283299 384750419 232302851 704856479 981913388 781106423 449931891 729338012 249672445 48803650 371476791 650647332 799134280 644760091 711254974 740956392 29157495 69402261 317403816 300990564 1276518 993856874 432509065 761149063 326951378 907782975 542648551 617218667 468490513 504236347 232650607 979531345 75629057 701300347 645367994 186034703 441218123 606500539 705547948 423450637 923388151 782431146 720151570 225220995 328823051 761161251 634983576 186399901 537535226 729262487 158291745 678902391 186275646 911758650 7842286 944042347 735045966 290519511 276290615 586155568 788789379 567951319 654690739 4726370 365343550 662194062 385786751 854193105 975301292 143722820 837245 492572412 952882954 684054938 422753506 814314830 218692350 528882109 453445178 91528666 290164824 275427058 819916684 393505291 811093016 401578877 484765186 399601293 300049352 422938815 947866379 909528974 945863598 238577749 106279563 637055045 648355607 205117569 887458703 16879353 607922180 763088506 353003340 402377083 539760134 215688056 214344951 334067902 948795137 650239543 747428643 940987632 762751751 688951580 199573852 527038697 35201079 934433771 882222200 843144785 123394278 236392015 264485169 154954283 196535981 971592306 651558785 401133355 251725064 568297615 83894282 597573907 522278895 873486841 68284387 956623934 443967894 714328595 445831306 594294247 189865127 941490023 587083878 223480881 294660571 37465661 937123976 580601611 708589027 921394604 995760237 918109580 400940901 225286666 422081338 617315235 106557078 687768112 637154291 160251554 767230938 108977329 404839607 117803264 734282132 912478954 272712128 121287759 944438882 454831532 913889829 737179134 540109782 122794726 689990063 196393517 346415493 972287684 761939534 198549052 493950523 372396662 181596116 188712891 688910198 243217856 492343297 554805289 949469202 901561512 809234920 311507863 747776815 62498906 466135751 892984271 710941264 520446514 572457823 289054007 645100930 518581084 473010255 423930209 855212723 925318436 472989625 794601334 577291917 890069291 723492068 637434810 963491224 74881330 431914602 804293863 87365620 591297698 504593224 858349900 133205843 818479382 340866226 146207794 508099801 778844477 23756233 528416544 949520797 801923356 658058068 353142621 363367291 628150499 276122471 868786322 650925200 860943594 906099789 709816265 875637853 738286631 805789844 813682855 619460430 277651892 363873297 21276035 640934019 296671218 492268036 882096754 673801958 592683239 488120849 209263076 173033959 540434851 360783194 735924809 366471108 804717292 976070949 151542401 703331300 368554164 721063490 557031072 245736883 175301559 784001751 77989362 924572001 871832486 616203746 622978761 28944922 399675558 10183217 293369430 614532034 700096885 945374967 40226322 52702016 700280253 363305141 422625426 536138088 539606018 116891039 892496831 695406297 345380799 695683853 34763592 414290032 7342529 821291802 805479036 737552920 348275907 247652871 133752656 735242640 376755762 308231401 991298210 471558715 695732362 671280707 379893365 15600182 582331799 689405401 83200568 530994617 963018913 491196370 399066105 826759639 610387051 62917701 942549876 300648842 66646126 523490462 66679951 935661311 886982497 763819162 697882477 738902108 884152473 399814108 375965399 899581868 618187431 816864057 732887979 684286828 622334412 735258098 770543583 202478732 244533419 889995238 285521459 249491331 58187467 226437253 793735469 433783502 278846472 308603864 262078737 343312604 371260202 806852738 919499522 817490753 829014568 250984877 538755557 912163978 860297956 232923848 707723681 561688538 479894192 779277707 456572916 818064362 9231770 233662563 524073918 373647895 578761383 578132171 320915350 799617121 481498218 346799817 195370916 5973368 488457639 106828959 270378610 950597899 102977151 630282479 347322702 103206458 61115443 677376327 832359615 833814037 304456776 591634221 708465487 64499318 870939559 768331327 310667333 734489165 210483441 897295015 457635446 1756415 945672398 401982539 763637586 963545748 378493730 624167748 469964045 947781655 564447674 962780220 275386510 938995928 239832344 87327950 587392598 958407544 510424241 625806623 301778225 891868065 216380803 644450504 23390931 173333505 830016214 42632906 514444459 219977946 971603016 452655298 175945168 353401389 896369573 431388778 806481445 238620187 140462692 8653054 948365085 393071213 962593551 532947165 231791841 682149595 185329154 957958001 833826755 337173219 360693849 890539243 194892778 997987017 534309100 39325459 438527099 615110433 337840641 263562537 403215076 641593805 443315435 111062863 561334464 595672666 966412267 881363491 249170853 742773856 577423248 637009866 481495186 626942453 992991159 897323506 404746395 148528829 249557583 502341678 570417019 903317484 762646333 129070356 74100579 174999634 650323937 407803548 405955287 647376976 907559771 376477183 644882988 444596376 286387896 963328533 202069708 841623075 67483106 638764767 934360498 413307812 640831588 895148714 410388899 959940101 504215291 335189875 410528514 653044438 744276361 212229435 23810715 279306686 849411205 728098423 239984651 939384131 638069703 597495826 154865705 370255152 369403291 926134708 733325674 681614865 134956588 294813080 254821841 790016506 693430547 823406874 203823929 934104433 381833761 104688009 171880253 115920167 810865863 137725289 282809044 275062264 827773640 998745539 522558471 521460403 645116421 700854801 716165096 929872980 289353828 646890444 815446488 977415440 109453680 909720945 172084329 404408601 241106621 836504617 313093111 43795453 144834494 458811796 384691450 567357167 561356709 958272035 296289516 209817834 247072009 47970647 641294711 331635564 764056011 533634504 354696140 727589451 848661102 283463004 306889705 712464248 278138101 794786676 787006375 36430437 467713248 142625574 735872917 511122747 476903149 186460629 535763376 59008897 345048135 769613873 363044194 735741970 541170245 958270553 436082466 321109419 315370705 239048159 694513975 792313358 829197780 592104974 311675991 738137965 441472835 950708988 713436794 218151073 350475431 386643345 678954976 124261003 567107000 891242854 504207061 17032642 269558542 266915021 844960969 807906539 242293681 936634776 258686719 453763819 120108240 748759555 494685354 550568030 26111457 287175388 900010886 791823597 662464882 639065716 777300844 318575573 128768098 478699282 588986624 698410274 324811707 105559457 403560836 445651870 17679165 733068803 246065754 202086754 350039607 786106752 786121467 80314549 660732447 425815540 942646613 735749808 382633318 564045975 49104153 31768107 135407552 409621250 545180918 841562461 949624269 129533114 405993190 227721958 66143826 151317845 593773955 682686384 933693946 651459945 508156167 773615988 177167634 617696303 729375565 563242392 761363249 324974565 210449402 965320338 929258594 856806792 244588769 417369391 685494695 272657100 176956389 764188742 958729811 572115541 553928137 710701138 974690593 735573815 168024914 533384922 315812284 355781397 220301593 97228090 358277627 585302625 771971065 321929987 625094455 463731861 101643733 941770965 499780733 983244461 931912382 868714047 169769882 230250964 445778200 235462280 736947951 605521525 600072309 768193211 778895360 983452936 868227971 869692151 574134150 701539414 695255258 210628911 972716071 758604900 14549603 219826129 54987401 588141860 236047019 602127801 121184253 366592398 971447121 2085076 250471449 868394360 596759565 253315152 848894388 84776778 838579202 30725393 864539048 479377456 598055316 664868645 297144695 807544110 834377444 453790414 182597161 947854902 995251268 748011437 585696097 780783273 50710760 61804827 406920646 773245024 648335203 823806763 650384201 901722594 15233833 55294110 398544590 54240145 121391307 29592990 903883280 493911568 999063254 70274598 849561476 344231303 740060536 800418227 594548659 124061929 260511224 242376974 432033239 658712729 682683956 784977339 534203568 573535866 801113528 51739470 521038346 111957922 231294707 233307331 837890728 917853460 524225416 248638409 845468547 315294750 82524520 183504561 551297511 776366144 701760547 295396303 780072938 605740406 211297425 178799503 418095793 402950289 212238058 375996753 53133127 164158843 595808758 793257126 145185412 68112128 954024402 896086500 740193800 257260388 771530731 534036096 127509284 418339067 465298269 531210518 16916882 590462643 778569146 472796634 997466982 41287475 692432011 68057695 49659029 113152779 450263945 478119607 945021954 590679207 557212472 588439793 260075901 128519539 163963448 659048935 365988990 857344468 783564601 33809042 213300666 966525344 702427852 478605396 623398536 343154748 486709059 263634650 394178189 597113079 871227707 534327757 98556752 902707827 697378306 691302604 226255981 984509383 442035135 897118688 436771771 10450082 608501327 605051888 664967047 436232213 97791167 79598789 498136798 768742407 998474952 906302949 3780349 15890860 612064716 352290757 432722590 493597366 490538701 276543506 24527771 700428390 529961529 295159169 475893257 24822744 821430390 698478136 909948412 632996449 624415973 581574157 45739915 575522390 289691873 441246106 416746317 808596336 641998579 172593919 241505163 814439433 160638968 502507526 765140079 203343640 268446390 913494724 38992786 67127372 507659455 875851809 242096605 523561300 839924627 179305127 396245821 593699969 392731357 351765731 925237700 780855865 157743866 887831573 152852855 683476024 986833362 893040797 363291642 136621457 338110150 557064032 728111828 368567927 460779458 724294037 221923326 180985807 626457170 33545481 691941894 211960312 761146456 990847181 954735441 151216835 847974658 880057913 971740701 865629442 44560320 658744894 518726347 333947331 208286042 345668125 265846858 729896212 180393623 361520793 633772108 306827516 825257070 81638012 277052708 741652468 612493879 196351390 751798233 414035816 406616471 677749570 884952305 151684030 237181657 894078516 503739998 559235908 425113712 838040144 799824836 302729138 543949886 228323384 344322708 491390727 222044883 99744382 87468070 849682379 956931196 303222377 785329202 6581511 922324418 536216009 675851849 36415682 696063156 660374779 487569892 908510023 59758310 711042033 912812079 340534421 830821484 602002306 760087853 516123965 216941940 737233734 3850921 684787956 883946158 394720628 217337939 19923303 349469227 379427129 581811296 686177131 302864774 43023848 813901691 471478590 633488734 81067765 195198891 770139882 719765643 293254752 477838945 253056091 38336196 925338214 361479185 621108212 830371170 288261260 963613633 656796780 571868169 585173774 356182183 133507464 673751704 348308508 621123393 531449995 153681088 602690590 590494456 205957807 151453193 213403010 862404988 534417982 122649491 109999446 116586414 442588324 970035783 522650552 617253774 991882825 714842200 366218990 798887557 412491454 473108317 226719918 858893031 60317321 237531689 963658439 698096573 179957168 63465391 466036135 417250149 578324088 714600742 188369552 593066104 379436067 334129814 335565522 672290720 828602089 67696123 661196762 845078033 92135146 550615844 15773920 846095844 925167503 800425211 693577910 797907933 447643611 684746199 273670798 72890843 885969991 986821357 429266192 26473599 95608470 7643729 464599476 655665663 747850869 564136514 852498056 742291481 275003786 754213206 40074401 17040346 478479098 968913558 218821341 609628978 55565493 38964677 758760825 346067282 555830446 459548453 234855209 832388549 715894301 408663667 386103782 733467991 378411013 562440606 659561541 878026450 392552520 832030653 140388937 452950400 182767387 150240648 311717972 184380341 930438371 962481145 598985304 893321822 905269318 300156534 262044368 263770388 844552526 656018494 418847661 898595316 187501782 673172263 975850228 690090713 494271577 247029353 876819652 482766045 997764417 578704756 461268934 234900653 27352707 775024459 723747975 997999720 942265187 630765166 971474425 344522935 238613104 111220124 374614928 784208688 17499693 281410685 480655136 817593394 959270079 538236258 816479087 235843250 868638462 767228749 81559648 636823031 299485846 211176556 839701342 943357819 975629433 774908816 471384380 266619543 734764319 142935389 731021690 363676452 739437545 418602736 637552249 14204052 916489655 706781581 794575254 176316581 250684857 289489148 411343413 511766318 935548271 38242514 790325632 542853895 161928022 238295557 691847103 903051808 197432202 358066481 857349802 801242543 422676631 182653510 117558524 44004346 502084732 180570882 155960682 649201282 971516648 198473267 550258703 346680110 632652338 640478591 19489974 969050487 192024242 171497377 37204020 723572094 393138540 844677608 804613584 116698701 265242480 393518663 211275631 475833386 769806021 800880944 375322799 113416252 82325509 28056094 67114104 656145354 681220918 705488114 777228771 123746630 712250530 100817572 433203570 355225895 648256022 522324377 259318684 710702009 859336023 561252186 276490118 12004432 454071658 839329700 234384071 612735048 598911270 933411154 149061132 701051343 694273542 615971133 811044346 920773752 437949251 932215272 499770585 461232104 319463241 112430639 890795795 845196555 641625083 485975586 818956010 631983879 849247143 213848911 351108267 227701494 101982674 217766837 706034031 517390155 141713495 397714723 942490510 755371727 259860471 538346912 608574618 354312215 769451347 561361163 969669634 704814995 349743351 652965992 240047022 217101295 643039650 156862934 166088694 413177671 172116319 382053635 273697872 461099434 538557858 165914931 308992819 944583019 902136161 306312841 512263571 559787464 184407645 25576620 686221149 348905625 317370045 512733314 18683956 852974941 752846351 112466998 763010872 874504256 527151071 531243718 446712317 705871489 285181242 261556665 272813733 541707520 932213666 386499637 194442609 715502342 686365079 300954019 262413268 293992247 221351058 498113834 456468022 275448313 926361058 573526142 641833645 186040086 623983039 678030964 885845820 668279171 827238428 421949647 614359985 304555600 121585416 999064490 535854003 673345148 907969869 475193539 523838980 29396439 418048895 670564437 389513309 865628344 951660536 252482300 80951148 645872046 402758623 166415801 658797743 199779461 797894693 191512749 662370751 306580948 41986548 665617549 928806400 257929648 27627493 699013846 493712654 562732100 913739921 755495554 268024815 761405762 401643740 19008746 169669773 453554735 573744540 321055959 701876475 374099349 695689553 71731309 775043311 226826759 466140115 585856733 57659644 897869449 105117059 142896445 970893854 995670791 693462469 34019535 171684281 79440690 132687027 78628351 804549641 985376438 322157677 77969271 875430666 45246689 594749769 101580780 883260969 875415759 378209994 918550398 374594815 539218045 585454033 456642958 120927679 700519092 991912201 676444669 1697801 387546246 263873873 111175908 941031514 805593079 527779831 397740697 377006205 575015764 117646312 228140770 392700390 433883629 590153857 364700421 80708920 796594697 290638953 754838405 35180178 857050705 729415678 716683977 651504594 980191699 130872925 665250301 666447479 360022168 926743284 352325527 388442680 280784642 619673172 143543476 181551411 719011505 222097073 152215343 543287192 871112003 198727387 911016646 565579999 11869540 838774255 318270394 569732986 446808225 83962381 291925068 664299086 259931700 117855533 597709412 917900505 30303740 762449001 109193249 894174441 778785411 374785801 213898951 426229421 936624743 518006849 175436582 778928020 95493993 368922239 880518062 907384565 205923953 929736270 896563095 109529372 394397808 434605977 750127628 967018778 492764832 640386272 162958245 436060207 68137219 842938111 714391054 107260021 424383027 602803058 305709626 403063437 582501764 187339671 778684447 232384187 61601596 331614745 298017188 976795989 306580599 842044019 235489158 653962095 574188670 833386176 689097094 528922459 448418030 460994009 847886038 861160322 232770047 340181321 594601125 960743553 477257436 23937194 292125829 407741614 759675339 486133927 608005561 973444422 917686512 947523678 825366311 994752394 932614246 470555136 899315817 121716963 808326759 897441106 576662937 764648719 502731273 876742821 115892956 184091346 344922673 832722867 662116250 756906795 958177532 707254437 245826685 324566605 218207768 687311 541628345 626312322 398514566 546238025 535318217 118815369 217124182 646904737 726064663 583415796 588039703 35058738 540845156 240222502 857637334 492115408 997893588 758206406 962514 574213010 475059711 332514858 937025375 17623408 781178598 317090093 827150507 43393305 261745729 909272611 926939289 925278259 623614807 84631062 869540523 661920987 4181362 972654522 927334862 799036413 24619957 938816072 733958469 631974613 486053529 330229967 512569937 212383223 119085239 317242248 81135760 836910461 454938818 646099964 274876841 191677928 809601442 114397265 581560482 111887440 586668448 418953238 149980641 310620513 81118154 914553544 642898974 399722989 882844098 29990733 800761311 949043164 303252363 697389604 604208935 881985484 225600163 784847400 855805578 451888731 364942464 816199960 175810499 858066139 673162974 713348168 464996950 622588972 446350540 810825433 694924199 961135853 924084920 31990409 448038837 998075806 551844492 500391411 309970020 106371453 888196583 408142572 726621382 460220979 32550860 787447779 614512389 184184132 876661513 707247954 854940836 887816297 218176268 101319576 798156848 513751669 768460758 706567530 159017834 407637946 630087410 531868166 583751279 169390111 873762389 490761351 558043624 957686598 383785113 858612436 600780103 943854771 221582384 766963499 957940483 201353644 868376058 334506816 724949062 991012713 227747288 548061586 600813252 588891477 552451346 933776232 177536700 497656405 54851370 513778801 978404686 671604945 836234419 376519176 797393880 636807290 430453612 89475092 473019201 199594364 163344081 448096931 475899493 406148646 709732034 50340268 519594325 850977741 458217431 71872907 868961871 378745084 53369457 317794987 168175065 194464938 240124325 366821383 886108850 872101561 513493639 855791479 47243519 67114455 800079427 4874128 548458431 868153093 892300497 494933505 698251236 300967840 213787719 401420073 585136133 727224410 778107493 459433367 208287525 104569421 522361349 473232431 717941518 753808116 646286590 767662090 592460293 853719457 607865893 30864917 158764894 372022332 600178157 161904073 109372675 790324443 725131404 694240317 16855507 757913139 274498927 270527986 92299403 912272563 887532311 945856115 230888808 348217413 744833614 555115614 986939491 216223174 126873435 353111246 842784582 592312538 91286965 269506371 974627918 970210088 303574183 724373978 116233525 270884150 539878313 827294520 761977444 128786817 584932427 405811777 362258239 632417487 791544788 919129212 54464186 926759681 431816658 591542851 823228314 450055989 97100530 191651170 229792861 325538515 133229717 369906554 885131779 63410009 735870387 620582597 699166218 607563785 613223441 643010688 999782176 394984655 200929070 871568974 849238290 65873030 588538048 798340318 110479922 318189698 383304496 329475981 273926773 868293854 995657874 747231249 663579544 974400568 774016630 319472365 601046314 264439787 175935503 13280991 77941787 760953601 460286925 398354832 376932642 760860221 899548032 826610601 230240065 303461463 52857159 130554482 915901596 410486439 612296532 449636755 926554174 57163734 490384380 337733784 378533469 807383553 26259260 831674387 400794922 277222043 481149462 573523382 149992893 21321193 175221370 315472022 133210669 472734017 621764958 163866403 620652785 574491100 72818452 190303365 99608031 659942302 344038701 224373253 600614976 666917161 508113509 148322309 204174997 328843677 317538056 366150146 772447023 782690916 57387698 790091763 147978196 460613377 284690901 542450553 884381862 961684904 585542257 919278939 510324975 284144003 565045258 714413968 797476303 231844725 380538269 160915079 571584465 474888716 65675129 826678124 679096730 483928591 404388545 9848818 433143278 586420019 52442722 890462116 688292973 779484322 168464949 92216504 490708069 183561432 276020109 815385520 508577152 532166656 305845345 600014740 659835224 762446132 542686355 658177823 48598490 507151065 830511576 256171788 678353670 927009313 359653250 692222365 583952092 964798568 626856609 102750247 166232474 87956515 508336001 575404446 840548552 452598703 866866808 597149773 522718019 326208429 347803062 358007962 952099358 248125938 877191939 366958457 295895692 125373706 561426060 862000619 124447514 449951379 132811323 769500115 659094976 249206687 397283166 720364485 7923208 32329449 72353175 249095641 326193947 453961570 609393417 746896896 268681179 383591371 564326265 821910974 666614686 301306912 882660560 628410950 958596057 778470966 663523393 393585377 794005932 875784189 830294122 451335297 247650097 14198275 135291693 381952826 552779831 307977210 339031992 56087759 59978176 323095182 652235627 16334610 801416636 906682437 524960046 803843747 71002427 155161451 819286101 657104636 381030317 203858826 681417561 682304336 542625830 9930907 82900596 978288712 824374264 596220378 257144981 608553460 747879537 984106768 296207293 582883771 712514787 579809578 184172028 642582686 461158135 618341362 173939793 488918533 66327695 943604757 423733110 435051363 634562396 631801858 735336798 414095945 888391866 804623312 28198284 829375488 914074357 351922126 117957055 611508552 677969305 655953271 928571815 954828704 872622587 888447483 718768175 625241743 589693585 705748229 82862375 2567080 390026138 834481289 538003694 250869353 859877324 792112819 931815856 466278209 48995674 638648399 455836413 659342215 535389510 951568197 517070564 179629633 727137277 873658867 7771637 470527494 619285441 445633508 396706146 943522843 7228856 391159514 600639069 813642084 632967086 19807203 724811936 860971937 555346597 685169041 365799101 900444921 9750053 914725872 760869386 823858283 810645911 284698687 506729146 73116256 270062106 894993559 6324386 131910007 696171206 768314590 216219108 844403613 198274058 708688813 795454180 700940976 346615685 613425552 606193962 982145944 874475783 780807892 208482109 187739471 828333549 666574153 320828792 400249506 126417893 137576330 885373577 466327757 608352954 946901140 185710860 525405241 571580335 654022316 465874851 671899868 389598609 124540477 799874228 616276954 953325703 474091786 754351537 136113496 888234032 333785703 756318570 63326028 4274971 498755939 499600798 521713249 944748070 34638441 393015967 316973652 635480821 489483221 168062452 58029376 466496498 438600987 830912161 376807385 183541 978845933 98920701 418877875 863620306 794272630 58287033 499193543 679533445 886561195 657116361 746271757 546507718 557000001 581255835 637571690 908879644 120524654 656169621 687384998 202875037 838525480 195604537 836250502 645613126 996910912 493953323 469700384 143702909 734867417 984888119 667583462 327422723 668079443 557024821 978105187 190410665 920674340 327238119 953830075 659567173 156654094 479594605 745064136 514284008 483433171 354349235 896970658 476852067 31514051 650782830 953194864 105689830 36657996 24015918 753061374 980875793 573643929 111277710 416080193 290023805 179750870 504513535 628672989 189277328 453122331 98367577 933202458 210813956 526165940 260185048 409767751 614173307 817669384 274003099 740713957 373563892 511140503 242189768 19548343 751619543 836059964 707305886 620422124 212713082 442068521 856747430 372114143 611943930 666722803 720180780 42802684 121358258 44656827 301595180 240956620 73847147 357457934 455085214 974063779 444384976 285011509 719390669 308964829 234708912 687478191 687355101 433124323 987115156 803749259 817330982 729694056 563017508 679126801 27414002 753181576 374427684 615002913 921618393 556428697 247691018 967209524 651762321 418088388 894850523 466075927 377779313 91954032 692445785 596192456 481669854 353712248 934711990 386264331 530613268 634755467 115987812 929967064 605023961 180497124 760577264 165692272 650037403 453791387 615534082 296908748 919229667 195490670 108712648 434551598 829834507 520680675 828363312 930351266 782051486 348216486 983784550 487164641 216375994 732158851 514289245 387809549 593260704 526555102 440076283 196996040 482686757 420145425 6654956 338002714 768331445 99687390 475554178 375182120 685066675 338995857 152200537 652492247 158541427 294008060 463011878 666148174 765066128 929348150 155288698 240960327 239140165 698943839 466567283 74616766 148774173 772175701 923747605 616879143 505465605 372540145 767544840 141749986 307022496 673375221 431466485 282341106 863960921 278590356 767759736 861892464 741599807 444140666 698207296 294910256 777062687 38480905 795351835 309310511 747772005 664445109 58788667 902082720 529929451 300779857 318527288 675312793 186076922 511574978 357948131 32524168 914754758 186835649 556495657 464525264 94988726 396787066 67679534 979646467 876228142 569652017 548042554 30032652 245187594 147764536 182584136 868924904 934529682 299808930 846358817 8565030 472794633 855270093 492511482 601276594 517216512 375192807 174791369 740510745 708576595 273518649 452038137 360252241 363994004 98873742 558123914 155363234 849307198 640332670 681371600 543794874 404398188 586041825 597826578 820771528 514673937 227804380 633830479 115968643 183429894 336299840 202008601 640467932 861655197 767160827 177543802 535349493 928038612 854931629 997048636 133404621 659936483 268175935 517890614 842132206 970424627 432141996 715427843 469342939 689135121 601527401 164195583 658602138 501798615 503157197 536312695 983345372 717428250 402336058 30629728 418297491 818263911 959381447 479993023 599856077 692805819 955328733 64649664 874614257 377741730 724916490 197800976 461377712 714372476 18952869 467110535 553642071 183975325 692048585 760428059 376336698 603285503 957302663 69181386 336590710 788255968 320019177 886373481 8075580 852243342 547793045 649465275 288507469 302977444 458880561 898831388 880141780 33128803 972913496 131159513 34495108 763944817 825190066 542151520 223531335 600561276 959034939 983080116 478159394 556343203 584181113 840935122 531656427 389939312 686768570 23273274 492697379 916789964 657819066 43286286 785349763 365196482 254721073 232103586 756588562 282257166 412511792 121889282 850516077 611345775 36437372 247916418 766550233 286773002 667255249 670302602 840786110 243683707 290882587 298322115 238251496 770181180 919859042 698945468 223600126 744687555 525744290 808099842 907263814 2376391 724268896 653972318 551098486 560307347 21993913 358221383 167283481 853022001 559048654 973275055 786360855 336984064 603143571 576932318 18954110 763006336 437946940 462064912 887369300 768037881 340822094 163365940 724119589 776758111 989314911 740850694 806087708 196813101 134831562 507778236 498990972 644723042 814470612 781120002 289548077 966955772 198512446 163664454 518848581 997755121 392335877 159756116 108161572 75495773 685141658 262016297 534422227 253446608 781039291 177542046 153887825 953713797 475785909 588046523 162071326 264004515 594339399 80120269 199969802 616912762 255902712 517299344 405067780 752155091 880578498 980947318 983846452 481892896 524207239 204420892 586561592 561349219 487139643 253059734 292996000 85305863 450278310 135242815 445463876 220141897 823043244 231702430 80096230 773881828 972337836 475702101 28598802 727494504 916779187 64331457 588426415 146912507 226158985 524337034 945431363 841349428 535168726 45025277 371481792 115974688 636595775 287462439 918227003 721671830 991913993 686970080 933316173 239816893 43726685 149215148 177797249 655219000 129383462 223917682 912723976 180061328 989443023 253042293 158669319 510333478 306775848 744354768 13871850 490583165 885741075 943930375 387593820 697129934 51270534 101895200 158006151 872644763 464999148 910647583 335957725 136938438 321337847 502359289 656461315 912663412 122646282 493547920 510122154 679701934 151592298 969804226 802817275 271155358 751789825 181546757 557303611 890729398 25512650 670190320 527909156 630898869 536713522 359809879 876722959 258864831 179654027 437687157 773860651 379538724 281563560 536245610 977612928 268970753 597087670 571171213 103077281 755779918 924726456 582142959 300181422 552420986 398064088 100261609 975684019 861015728 935510204 331349902 923157144 678100858 932412914 899823245 613361358 94252968 761913588 540331508 657939060 269951672 471378798 158243330 833801981 169732795 859074338 967702689 327600586 423911113 376885148 711292631 750522492 712286647 391305765 689871888 100391994 988901802 397111119 586418262 843537080 861463268 419126709 544429515 544135299 451919488 565346700 981096054 404172773 936326368 953314336 609383099 1284339 197468608 151124756 862835672 87197214 596276252 218295656 336491697 534372097 220880135 572940414 275851332 894153520 320214017 321818413 338986267 998026784 304211768 546221450 427736824 319816035 329617033 610622558 484684820 838673362 78621836 710702568 452436138 537316264 495332912 103766164 552290167 815118589 163782078 269860959 698775110 176911412 260754298 790739043 735156046 806002671 487111019 982262060 23178765 677257737 387676465 118904940 380006417 328981223 296079478 812777493 255784922 777631403 461156734 858981048 788596670 912884201 674684460 258495229 698489660 587029808 508706484 179826737 619079025 329605943 15282521 210374757 567588077 503248847 538394637 484457467 491100927 470537937 591546181 652728125 49188372 196276231 631660973 547961615 844252834 107115051 171225276 419249602 413680570 148174198 153444557 905053852 668207757 679733376 30244119 509083655 940601605 86545668 169047095 535799653 751100876 758044184 17903734 161630261 837416308 381411448 250326566 507059905 604761807 763976547 467927743 309010648 67276599 615194368 241164142 955050723 107696052 924598170 135555095 798149682 885636411 741697487 142180526 585489692 758118695 771979382 503828067 644893765 91408009 142742016 915400903 954154193 840368130 722184058 483311768 192680235 587108104 575082416 280908736 335766892 867301783 253990832 32170437 805833739 574336040 503046932 167599908 84848416 254536802 285695797 597931933 173507069 883533623 719142132 447239403 639394800 527467901 330746697 348556699 120649606 66258133 65770413 102062874 168457879 704654723 873502613 522705153 295858007 347872243 214641441 969026872 192426267 461671182 801727066 109149074 3218353 425879217 205097853 564089604 151415544 511393412 439617709 216053597 351101620 531740638 453963983 404678059 494295394 489479164 4120662 169346067 547163078 416866828 175472707 915408451 148846408 500561863 512303953 231863976 496944852 544554106 568072909 974008587 48077313 164346428 233201893 488642698 311716251 474809529 337085991 83913492 89424197 506111937 852900878 787031377 496215369 751990330 802863741 867327913 694223218 818951397 767736619 856581366 6880723 365705853 127099920 19632704 918729236 552615725 845519953 425445270 598652843 656446124 227412548 662855569 64769241 851124102 352614424 412852794 854695097 294730365 618755441 573481969 450032191 94530702 516408693 625291221 352815394 268874427 85383194 303282835 805163329 403658849 807987051 773226688 827180882 749491413 180077313 580387697 997552806 165885517 298399002 515805519 638886692 500140226 222344080 84545526 593736228 960743817 808592351 448058978 307439658 523643392 4157478 958790901 130756495 545229689 344966430 47444606 421830949 735787273 768608305 521639604 807378931 238121821 31855864 677730946 860817287 927398700 888464534 940617653 953801120 354352427 55010135 697685643 135576126 280935343 576237103 199102024 554318051 243972955 843544741 871599429 420987491 937305383 276108837 183919482 616027272 912676194 116517103 328040426 634190718 980667214 213886875 262447946 606880270 870711849 898821154 235358079 83082758 56579587 104674907 520617696 558356582 363582823 17875163 188916185 277467343 570307579 104933749 168094214 119733688 542461759 81220100 953877111 729499999 633927301 707701886 31438622 147484945 951693934 661659342 442499270 353594594 238819392 235720843 672301879 911018546 307773583 556757459 91069469 666404656 81297484 997528993 714034201 342971076 526971136 889801556 511567996 617766775 183337926 416891278 800101152 654917048 559747682 667109074 284669328 826062886 76382799 300677022 87579108 552010773 625697916 328082956 598952861 614907426 783049743 6128059 672524815 487645137 997210199 840055480 877839233 646766234 365663338 287629692 158438601 342573205 961113334 574628816 678514836 129097334 163401942 752251163 975712973 941940192 242038220 510542536 140830122 519111455 250878678 79330122 3940931 887182044 393029616 229900181 428367015 628655255 782836330 87029370 772521410 819874842 753739382 25132875 344200467 229836331 841388106 338433535 308664402 129794991 941496315 184889399 248100999 368946778 880510767 434868377 772855833 883356297 681995370 846080989 939317535 810699141 682511721 61414541 857918653 864604168 673913172 72803248 169657604 26127369 182150040 153991607 80792309 664871206 450218444 491827606 534021664 123260574 547736633 782533230 655953407 109769485 732632298 100961523 481896818 136173767 469264645 806793621 886214087 621202603 272570831 401731942 920595376 15916440 730891684 98024160 997841482 141845024 100760142 725983382 601730987 491365772 382597928 121234157 24315958 653586495 163917768 885534819 468819798 430406217 725055750 833279852 806952335 582312944 823897531 183260318 600936828 373893210 401667590 559007978 796312435 748044670 700822445 140863097 42019015 12461659 635173069 675162446 297770130 411862436 790241461 416135571 854618526 898935837 892208072 405598588 715665756 461294418 638609969 531319123 829216606 34847720 365654174 990394697 34627367 211300731 13978469 593783861 49530212 490782276 2966914 455301052 309876265 296901455 93330496 495709720 365371433 450953704 587915240 315208650 696385760 533663847 114486357 927009536 64581712 882969359 965438188 100393740 944117779 888847319 661898584 624637640 690614807 860742546 762321729 7842624 134762861 644239401 883820650 949404435 756404379 637976747 516473116 37756964 347339740 838111429 622809459 550359483 813037247 784707357 368385305 284697716 228952924 839491642 282998847 333531651 71687247 151402508 931572981 943608139 420353342 473828928 54258985 148239390 163389440 88059269 827096852 664841349 548707086 562925248 284819296 608263683 725831204 630478180 893621288 947698575 899119640 22433731 779113193 580732419 56937559 115563767 303539578 569477183 840886145 617361601 497270774 927571550 885408455 582782361 715470564 780635291 84226559 49310606 182828114 827708251 70191161 693025391 46564847 431115845 608049419 880782855 613170342 598557519 176700828 976093392 365769147 827460593 412035691 77470990 45395504 900937826 757335839 859536563 560101674 566574094 857833974 635712646 985406403 954964410 70421905 818792739 606331391 723786665 702876802 219253393 697464266 80165407 678759343 707367014 418611002 638394410 219646110 218658233 112924713 84727022 554485381 997300485 916346400 217959226 818741469 424144781 917624744 630331595 760293067 906579306 470280011 510545648 99249889 674520214 527190389 768155701 630895377 25804383 140219901 768040195 693285848 76523360 972133004 777451209 723324429 407975343 366773723 211173277 700600378 418514487 873486295 198532441 510415090 887949225 374321529 103029179 156794203 30869757 232281708 22134681 923024717 631367863 752073283 133198387 323761731 176970212 16156596 212912218 679151274 648460989 829781118 905933468 533745122 414441435 411309717 80532811 383869438 553308889 42590643 259096481 839199977 970516983 740889311 394936752 317091924 683543268 399534505 361685083 886895033 577897440 157337464 460454465 416630136 296303218 349085521 66834484 139898672 97656484 515218926 632818311 637881951 363805553 896957651 495952710 201392349 228560186 778963569 247277332 61102324 117975108 463356005 893702880 193808366 819914616 904593558 850799596 620059659 257811466 304509814 850156275 563115756 374713112 38636913 480509364 574284809 962480714 439018975 472842772 302440139 417352799 683538013 219989034 332353960 401357671 204857507 761855888 411053153 89025353 586104900 64396037 764333541 499088936 314972751 786339498 35878681 150422407 513942682 959859039 330145420 935323940 441878419 89759633 88870832 152282037 441057225 637471202 843529568 208840906 31301901 527732743 744390720 611829122 991754900 160836023 953060491 404575003 634414241 311651937 92884197 226066392 564990946 91624857 679558445 270921810 165039393 423389557 267070095 858954376 659396703 435811967 760505079 259252548 376792401 205179250 453083062 410687957 402388879 631242823 832144422 67867720 968444572 343035744 148646298 870415058 168877835 613752858 343039959 372431393 978186037 955682007 373603292 242306468 842012571 951014576 82041360 146571884 240946708 591616833 260005895 873402819 730982969 130844029 188010423 181361404 550740330 734300485 511656993 325586618 629093988 695962355 262832448 431331808 325833726 371217218 51689482 350859134 378558586 381026898 84415850 773239276 876889996 278241498 397939393 580732559 767094202 217105565 770269600 403249537 674136940 503328481 329866676 907259560 383693928 899575401 360334820 888250579 368970211 687471701 189338217 195805322 878936202 82547546 772671257 289440327 486290106 13774128 923067666 912052266 113504692 806488906 66873955 315861435 655316384 750129540 440061523 683358534 759275918 777202965 94756208 589621607 61508888 620282469 462662544 455355701 310770922 468242483 210991113 524537686 646974633 377758497 561815369 669290590 268430644 912747491 350029696 462106446 781233526 80412487 37694527 559706246 490682737 761975784 563874908 201628871 196263789 592355479 534722659 42290993 851908600 601348633 7449253 338463297 957145312 771904023 679338162 19634573 867317515 557747914 878066673 366115631 528678260 221001215 451251991 642622926 696385165 973320630 828619980 575416111 318159297 132796047 885436515 510796720 13820381 784962664 289456742 275362156 562206343 741350947 533480993 261696084 304572448 470879466 941943551 498046689 951101568 437736707 316833199 272846370 657064274 406202754 20500950 669666459 318971885 736850409 931406980 767906341 831978198 398013332 842600340 20294115 786387455 741065860 660669227 811158244 586856800 645988119 931638458 157513659 638301913 936763685 436030880 323085581 785913890 999880332 262397290 993025412 390668578 860942116 546691103 845189447 456926899 528773599 957534202 198949748 730179810 72780031 458750111 267226138 333509141 380096683 419150521 334284832 879869506 966870296 92167850 967677605 804451334 729488441 489026069 532328691 507253580 144676840 740196774 384061110 258228171 422868774 275218298 46868076 106681021 792159412 919009701 854895761 853423320 226093115 963095794 805021975 662400871 653732746 487998606 825485133 865981030 925642680 465745354 373677394 77872287 416154406 909683416 457188076 115089310 471844973 27267294 686607232 833058309 776649405 656674640 682143711 32065052 377142967 348186452 920911493 980161988 740889030 818135640 899380529 983380237 646148932 666198950 933479996 466988410 45371164 224815172 493647695 113879152 637433391 536111387 918600328 322403556 691547776 142681076 219631316 401399167 634243631 45882385 649889987 596885112 658959627 963223562 277959133 254407088 137666901 478874226 50052334 756009289 154655767 464966898 304814461 35286373 843410419 562503794 565217197 921113230 156974231 39367976 415051519 245983888 322505228 544255463 698920504 111897674 309785658 18651813 649141061 524316151 50560549 486575219 769859872 21357267 948800255 637348987 968336011 852600323 404511638 494467495 972302664 961031422 313499165 292739371 261181706 153763127 292398877 367703187 519143044 885192778 592485339 834683820 267619669 875732980 868570935 346345898 122389684 784037493 481916431 459890837 888498405 404360425 956903128 733089332 361687412 879702200 983857801 775423956 817260560 26582928 772554458 499266857 704606824 530952124 203062064 883894888 928172414 780219046 422433293 45052531 907499089 225788651 423011683 946517556 776808253 912597845 518633333 2518874 947547194 613770880 853136531 356324742 660619981 661522113 770455920 278124254 960901831 937950504 866289215 256201762 600013470 686721854 937074246 347124026 875068389 218185753 350627562 303682445 402525416 390927534 64849399 949875494 314631884 279518126 598454954 172421561 638850963 119458789 978652041 813143926 30733637 803625348 988562833 902663425 19433200 49189082 721412762 858300339 362563345 374080991 142377308 264209594 942861042 957746393 192551731 224108159 547305161 999925562 72970945 53482698 391672953 712062115 785067237 200106015 381290044 89877546 898501281 999942239 273279167 556825562 436564178 401950327 647854165 754222925 40025564 159407942 288752363 344704281 758445017 768320728 197602353 662057647 112165353 706791951 109127862 75924431 218780769 689711841 72277139 249111209 508748196 290385917 141055947 34239819 56975725 246787282 319743870 906260984 148439245 10041484 750003925 690068570 335396483 554745198 73664155 688462109 609459862 980741932 332530644 965992949 67299137 844404484 814358912 120591489 630377735 733420941 383434827 208946465 282302964 299745780 845095068 830156078 462667128 341028546 832441258 639014815 583624240 900991830 781664040 758494386 894115265 647037155 301802068 731679067 694850272 813171854 824519360 639316789 169609270 322528818 377181706 896002293 2336427 999877150 227083303 784854766 821336288 848600180 423444528 541423331 218666085 599568546 992897930 537236749 610559749 178956916 369188695 354239542 467503715 637893459 515106868 221423631 733240263 557373913 495616513 139665164 611501907 676155303 496785495 549697134 699855646 596650536 510331361 446112350 968163807 207374491 869830189 456079437 575125980 284561590 243667048 379286339 92662976 773774501 13743851 53465279 255885578 475682087 458406599 161838325 11436307 380072700 195387518 450603961 103115357 126275646 182641287 721911841 66045786 774969142 808214896 377364521 948661354 568295246 603451883 921113183 160979670 431924639 465824997 598964696 759067694 533023906 978189445 501356285 998900202 935575065 907409459 840842673 594324885 938509554 947741258 15445208 173906146 273111994 258271563 107586696 423238969 352068052 368396933 369927183 785406168 401328326 267725711 233985013 412101330 939031130 583805994 374905705 593731419 119886517 57911948 889952442 504715899 533066631 143276312 44915708 556860394 136603719 149194553 250242264 119493079 224260868 290091979 667391400 681491891 611837931 787251270 779801193 1600586 619263261 676966224 786357119 427910386 776840463 242104662 593276440 362673709 75551557 928446109 199723491 29652133 197434746 141368347 118935814 311384718 99035430 685557811 355045146 763913132 393952127 286121295 135618917 556979032 886379612 53062852 182665889 23413456 329108456 657416364 958492644 99929975 638366189 882015060 696563812 903859356 295301656 674286080 345740648 227456962 648583804 868416147 536338073 734846545 626428760 893674462 120288863 566159621 779792128 125002163 797189365 937147007 229042162 750759931 10360929 579221614 931878293 963853917 188172542 631559683 243969462 430636141 33012154 765729467 344052709 499715102 164073305 537504611 706274018 594446767 669973728 564996818 503950767 253041314 644538185 189275586 764784981 208335707 297462809 548277300 444811294 637053364 412807033 320222035 905554604 769222799 72889495 2516567 580509681 821439882 166031983 516765614 35195043 327154413 31769803 426771282 498148269 801142447 973917834 189001085 666285328 22662153 643101552 873768167 120817421 175161289 605740674 313717241 787178591 1550635 380110511 590891903 719333713 278267443 942679991 241786386 479404579 140119928 805490263 355206401 173804922 285350713 793091825 905159370 382868419 768462315 56652986 788594345 404046138 686973574 741531155 931587121 357778796 73161033 799926174 836834534 73560022 533131486 239592050 332970696 464872220 100342687 540954901 489075326 449150915 218788916 607548773 883112897 653227955 827365048 12819481 252589405 836188199 669211078 570112393 339274704 801064551 290459432 253898185 108905336 109576962 514754787 940921705 627302179 479828870 165089090 245531083 98797890 716873663 441710525 602403007 617013572 766943998 251330710 391331662 263296576 342836599 704096267 286156940 856474486 839615493 740426072 142837000 212725641 624006850 244682593 373118931 38342135 42701737 848912273 114522183 546447842 384580883 175684676 701541108 752479167 240862176 481687654 186312327 425486502 146561422 580184740 642182682 706395433 719752188 746682640 58321936 370182118 580829906 265428292 910583949 466972739 532829345 830398067 411929129 998020455 390214855 175331944 423028186 747598266 790444745 54721982 3906228 666572506 186318997 17438628 867844040 700391078 98038200 528872482 433769586 988467349 385016118 746438428 950162896 789835473 387828805 814975993 883271830 902252115 655334903 434181175 261326953 336755531 97282484 3885536 841440354 840378439 76961757 200584329 436703221 208169066 897350921 260704678 966855749 935064735 420997711 880115955 168451682 95796220 369650484 310523208 926103380 684101747 616469255 44494470 94937815 135180950 558091206 610546797 973876178 255382684 305698212 411209384 952572406 160825148 619927499 439073052 581553123 603546344 39172728 755300444 821838613 980117701 417376717 811603663 227243347 628292572 575524079 905063585 838521587 232654365 630566992 471618700 752029857 712832244 594982674 273975860 968731219 219629303 94517340 624569081 567536975 532781107 539294200 227348343 240092387 786580673 331406123 270095365 17857402 566005368 821239777 981260748 661040669 705802834 779234609 448636586 930093167 86130125 163842854 813801387 746003509 683956780 509591312 731466774 37588381 643642040 453552069 734906301 171337040 432970143 305393329 147522841 258862561 487456609 65364514 941826172 883428298 158402761 737436189 896377216 661530279 461092579 839054092 441773354 817082320 319049953 27704954 46744223 29533662 566234462 912676820 821209232 790307089 666879901 823508961 40416523 899697538 825139403 92790921 157085732 163820270 285424390 715615933 547206675 753203831 47381197 305431184 154200976 633034606 247308943 27559357 396318580 955815471 536399044 390761915 589865159 683791503 671116310 129780662 397509550 169510680 788305094 84812021 181072180 573757404 2980671 446583324 790242953 910451464 469283592 988012179 55082375 755373326 435338375 301599025 620024844 259348003 345787752 152237864 546049014 672853145 432121922 539473816 833095669 881916951 573039509 426512265 537367330 907039722 142135883 553832424 273614615 395323655 671930980 539652842 587804080 945005022 466789059 84349911 288340170 247301135 35335885 771327739 90667917 294840010 315649137 940525125 280285914 543745292 452909414 343115978 386570871 233661467 846430148 118667080 771705428 590062225 508733287 24915998 765020494 347540677 508436584 40511561 86030910 795266469 147436605 72403226 511629643 949985555 968535024 338502506 409035772 545433222 854327757 768212628 521187419 86421724 827319931 720603997 944752050 991520584 206674693 315903274 798039988 582835930 311388470 15132997 390999437 499627764 944944354 4357953 675670623 841176226 880226675 764697393 342079833 481219810 824524936 928128319 662079011 851446347 411902051 424631237 68023852 354962956 641597556 709833926 28371051 217657193 877178214 389334849 176187335 771420293 714863508 825405742 492015864 868126161 578998945 548862625 866220228 646782196 105121932 247002876 699760749 197120080 90997553 286422458 618000170 833716784 499069661 70608195 920818692 410676773 725315935 755576042 859546819 596506157 911061491 902601841 797423259 723272414 112299096 862027805 851130305 533181611 443117937 622090907 154120630 502288554 203469377 374604086 739195873 363449383 701886054 46353541 858292584 624154334 157403391 469361390 277834733 824771613 146695202 247376090 664246378 321995807 782145036 960926294 634571844 979893764 909548601 882846204 144938717 171913390 273642839 752354478 705119925 150588233 467085979 896138943 429851005 209730268 315505016 41674511 288119077 943577170 531379858 632510203 516587923 605837165 59221174 603372174 346293424 6083766 660840550 714683973 66036976 311434181 853980835 187349390 991516181 248862811 678449756 886987766 592665457 719048567 358202860 349464312 697096022 887909276 439079098 46848958 393821842 913333266 431680590 72463855 189593900 84893784 299741085 628297988 390186372 30252439 973353917 306850774 195005676 94337748 739979924 806033418 291904010 533148000 129866790 434790213 757596623 372069056 123942731 537743280 966381939 238302527 348602988 583949167 550848250 213588294 836037866 126135434 118081039 386779616 426512165 840212099 753311749 359338731 236839717 825209572 626692426 750267465 445601217 351360097 238198192 441682629 649415886 492600187 865805232 969409721 286884903 827408262 435602564 713476419 721437538 231738503 146556090 996331659 715587519 559739682 813219635 194015920 415575987 57883585 162439233 519032179 262258440 526026944 473286914 8298803 383092131 330028608 674935335 308061831 316470461 560856131 891563419 489043500 141058812 236629900 261345527 904937601 903900269 283821454 434301125 836568668 966748518 59055056 222379290 965036470 94181354 499796764 626828728 892789462 827842656 942729069 358631873 42964813 382140504 3023742 938329894 712518361 981785473 653714337 405977436 263925935 102022189 296172575 432817906 181530063 212466544 957535268 93383465 629779788 29616663 26212304 3375992 85598076 842662889 126202938 684122994 18349887 652004722 475620570 179755925 440359372 311494359 121131252 117352693 148183603 559219498 950080682 496512166 545166264 747474214 292123642 77281157 539107628 266622045 199185276 741987629 92680413 578131348 351033446 639180983 363641218 814127578 106650665 542509220 421401002 841763389 833264536 454049025 868951642 442732515 867360101 549450045 459557120 409442080 676913851 532140897 526881657 707931176 267486468 527686608 261304843 941628364 301201811 665774149 355716096 581603568 524706076 535280167 532700074 748666637 982050895 6671032 470357435 553812469 544223716 703033486 482451009 512983717 39445296 390353784 307782277 239488586 164467688 429883068 530621731 163263301 416915383 595733167 303532428 307624454 510154404 733244743 95261932 419096749 979627158 552636619 966662852 278549769 712433931 906051901 705445016 105581490 527518581 883581819 709327227 501490708 181074937 727946563 837102047 240333072 730427127 734442693 923593192 321243639 186290741 790786644 461797112 857411429 850996053 443681445 447711093 625450195 213885073 545553998 24099099 974336022 601747228 544672335 870733547 569039475 706100561 897541353 806269068 404863823 393863204 620465223 911513537 804938609 386296721 914825256 511051889 37610516 595164994 691345316 912065009 390942222 228430288 510405605 679504009 493737860 652877246 2784836 676651479 110765697 214911838 826455826 988277003 969926601 987856275 910772608 499635348 669222285 351317698 94623891 394750911 556450814 493444275 685163442 438486096 222996545 306200919 63976779 722418458 433946918 449923100 959105875 718557369 271330850 738808201 826102869 113276423 250110322 544354007 703045642 600944431 53400244 121585573 94081335 179362584 606870280 237503990 216991527 69345800 167162409 654630811 363864765 190863426 594513604 854249810 204488862 343281994 996614789 971993053 673767439 857456360 977909390 114104060 962917739 570336618 146835861 432748802 81789563 22805385 537094202 228637775 645838956 288632944 206037757 762415478 211891202 541895588 153254666 282264474 633524415 895289157 747565466 657493507 77936288 861369562 792523736 632980322 996103990 928618903 578340670 782575169 263578441 85100386 502926138 529899778 605762019 93229340 586549098 631539254 203139444 663462378 665582190 776707165 243354490 432643194 862465656 398569949 730373922 103008407 342859593 932695237 559728826 69134234 533392273 161495355 853055970 797773184 858367349 138815479 985829149 672143341 751079134 481208308 825920703 829594856 616937942 403455567 994616875 649670207 607013332 881220633 965225728 687030648 614457995 480660375 296821494 920264521 359238999 662884340 645247822 598502677 507346603 182224556 975052664 61758545 975709514 886404058 312769738 409381176 983213612 355467119 458351156 59196943 111563895 201280135 419281413 570529491 899999000 53777819 707649772 175837969 469028743 834819207 526549429 233716341 950067244 559561198 913121196 494700286 905665802 209784351 281464366 322997177 402440192 945535883 450265592 643127728 452526107 807981313 696716773 320659341 946452091 272555080 208063265 506558471 827072509 931019769 359351659 936961121 846490261 148503138 823163542 429554818 427507350 746358992 862729896 752333483 442925339 744777631 850190954 558602684 44060237 584301382 96647834 507815005 911400636 634056899 541593642 412603979 943352663 975631006 656783331 682128285 940143961 631740233 60961454 611640226 302300885 89641242 926372645 725334903 722125191 908174280 4237366 746756800 361288815 168030001 311475131 772064726 800539581 645304735 33886559 676248385 305266087 142887869 401579794 60361846 882788056 878604632 42062182 763675109 401715020 938942864 23666570 950889080 701383939 715031783 553336301 815001249 170274774 763858393 764677128 58200374 211260628 940589845 231280651 918093251 454082702 970206945 547422732 151366362 675943678 500601483 419921937 774816397 411492875 742064258 396211813 850402461 551143846 293215712 350561126 750816013 322609750 415087094 207731865 219720660 179363642 239959430 117203675 363115920 730597305 330843383 60304432 290021041 962673616 516535264 139659407 157694619 583541303 880520894 274886187 847011247 308089683 631519679 598149031 738095626 889318706 648075169 918934257 278912924 146291591 563518675 509888393 969785867 964114302 463190754 142415077 721802378 360841616 910114648 500989308 755671581 171755898 724941592 197693446 212405879 748798641 28557468 985187055 932051297 656829960 877885617 190299410 633884282 163836183 899593859 453366682 291149248 893858962 813342795 595948368 657975663 432477462 796004517 187163170 234177380 865733594 851229161 746831754 380091726 412262985 55547687 652883531 476654660 712629455 33612799 23285911 650574562 504024308 607958609 604023649 591914526 57446330 592253280 465312367 303259660 277918871 163953017 670860243 566634894 414330185 873392371 288071549 213120753 427311943 799589706 341049521 617739687 476570647 594230788 784700337 182942922 891127191 158657212 839502868 431072999 837176074 156153188 5072006 62542174 684120385 641857397 603122714 61289101 13557090 125599907 527682796 623842376 222855797 672985198 116799405 920004698 596596462 540110991 817747365 98253340 590147054 327408250 628907522 561171043 817561190 437821978 387104869 393317656 781149313 74473999 228652872 608852608 77282308 52971885 575016826 787565726 770057984 444073569 921648070 681660822 382216270 168270751 25807538 516729336 481905075 395561007 303766944 103142102 54497367 672764033 306971934 980556721 338659744 452322610 653592798 275477152 289028840 43658383 852738599 711593582 313501634 451356150 856491820 680987307 593788666 808264490 16503179 88880309 755405055 746455347 696637859 26622311 992288237 131835213 251436452 699877546 402350542 148515364 576295352 873739514 260321273 821962902 802446183 930284242 524149259 68639865 106952724 856668858 455080713 556510394 1236185 208483186 283451690 723137166 240085591 980259721 826355855 460722379 73402887 847412746 957513102 702529251 42489451 591628245 411861884 536874222 64949462 107928366 855595381 629627947 544113308 662365828 444175465 509840268 946493196 300108144 413285905 831873265 977584105 854991881 650902811 847173412 671568271 542767498 121046887 702953179 460002742 681896351 407809938 477808582 781555961 78202056 850846713 85578275 433272757 994914998 755010755 773127893 170216817 350256577 1493406 512478724 52501426 457057849 378589818 258066491 827838422 759967386 556290244 104225541 925051961 510552291 681842913 504619795 458982886 858195230 367392609 186788756 201688457 518782207 155209231 177439654 214725646 853932860 783297756 940263002 968389194 265988434 771897712 128040189 785042342 765956260 72043745 368678653 825190973 491796065 188979384 739210508 69317854 570759506 478765608 826957519 962809891 588005 700850914 150121380 122355258 885025434 944257648 362737061 365610940 965742301 368038612 359039231 654839581 720227405 627864229 44431944 870569137 769177043 916500306 252787096 61577852 79174092 609029389 147335722 325010858 675907112 906580014 870923281 261463111 773350041 578883328 72406072 947357898 168877626 942916554 830606826 490021946 410048660 65384304 79603862 249110156 628215324 387739026 53964883 294123465 248149674 660247992 637449377 164023221 650845274 439856413 425092164 983792485 525376894 929933434 339453776 793489216 644963169 511266156 32357844 288835807 705074261 637416812 883831019 296737608 921556871 351699976 4037457 261184807 848771601 382537126 633858855 67942327 692528717 627881020 729429831 774207536 955921943 15500534 597743376 897756681 248280139 996517913 650378850 246148942 357984174 731706052 3495982 410028964 878167082 283191950 234469193 540400722 671051317 629090047 231260019 631924807 394196242 930140218 128367272 75644003 5912879 305455115 236688101 126944219 886637493 608061481 225617276 686047125 519023986 657991798 474108955 347138163 355516786 89706726 532150132 541437044 399569951 852405571 206228832 152219601 682625735 335279242 489545795 365151525 772311357 131249280 519630554 331132745 153339953 300619251 460216335 990059834 458681301 589050192 850416511 219201119 574222460 638949826 616076327 756744042 402016135 121197697 656793465 554355073 749293096 544304227 991899325 504368202 436336551 667002716 823349489 565324870 523650670 887051616 709943539 854729188 107794977 661526890 373841063 322747136 476908396 51998412 936203522 350880788 988471194 521678594 335030647 619388887 393983087 505651144 408032501 731362365 533645338 447479046 654601014 752180631 97864901 15512327 604966521 257885376 685662759 261132744 823521098 392972630 927866992 939093567 865351699 962780944 717354745 666896826 602917563 22114116 286407880 527871997 303148506 447707473 371592055 265842802 703858868 282187087 538163990 138117808 103771891 753897630 389175040 462861056 419900703 655375652 205940722 882634586 221188071 373910973 73253488 777677082 273325215 754631029 157230222 825227306 703485607 160499457 296033508 347161701 455100712 333062276 233345628 684807270 821679139 301717663 458821365 326324706 95091532 415611385 295769577 856861740 545141117 722600191 505365667 241564866 465096942 360481607 270705436 540600513 283127695 937347497 465572365 8062338 674944799 111484223 650769472 90229570 117145355 665782466 36238269 961975322 211326449 107148038 499469197 892133629 452136390 553213103 587556546 858267570 244056259 865592551 611785038 878416184 648863273 939964828 429006817 654376606 26106060 360511803 341972194 421666796 337637844 358196446 853755981 780972322 853219966 727134657 909531674 518978058 784923545 38594026 738483338 872626129 565679685 520635997 168098047 399781826 957300871 770594861 134689409 149455416 830633948 556187304 943237043 420657522 976164780 981497432 655237478 583976024 951217210 491463701 57593218 374308906 465786791 49993354 430627130 557547997 412834493 893380667 584202566 344062509 530668731 717166100 801238853 129956213 322227508 618393034 112738501 686846079 30822116 894291116 811159393 566425817 391250307 378404614 6931863 243223849 262931014 675433184 529771376 396307000 82508207 750133115 778960296 733349548 982247624 145005842 998367608 577655597 607973762 716596430 914620901 578079061 229178022 21979906 709870682 908358836 457047071 397622152 442618246 165160232 935574186 36811919 695648904 956147339 211487959 40042163 178539686 943789948 594729808 505649143 936580587 294239935 413629644 475090199 231946282 507557966 563967536 702766955 346836651 252037078 216772183 979282682 471620660 433695056 63365362 889758763 441555825 514515883 993571735 458573402 968108501 955302721 877087778 141207182 571975360 318501637 250425155 101540460 302722275 701762576 92230427 168048829 337124185 892439069 728102911 835285965 852303699 4766195 304793030 868876745 113020778 961180927 30059287 270029337 374013486 862102271 803017174 20713449 910913423 65508324 562591825 15694797 848197644 350848028 42730806 524908261 810807541 799176132 218642177 794156184 724731800 665024924 687834041 493558706 385128093 70937427 175444904 133245365 939843700 603005866 18405293 312000621 457397197 195115456 193066847 206151901 308419497 797414557 718789816 521853691 884820468 940650932 998189741 711394543 55063715 918834774 577898378 241214098 507788129 160318359 99984889 236933762 116330223 265648058 297536706 917624973 566056920 950011053 520189718 673785278 120830976 807565156 356243831 894879636 522706218 653972387 920035686 350239389 575600568 366433381 240103470 921675800 557248692 470998620 243239678 671875055 137246899 477242607 674725098 881944777 434749125 436872999 829947763 205147253 636443109 748677261 437898957 610189872 582378775 301060822 650090318 731160698 632897905 329551345 293830627 698331155 196353959 768405039 504800410 712272740 409018059 782369108 306721234 673444597 526580810 755049845 288782278 155974179 123585416 428738377 34594547 25743152 462187967 871925196 320360187 47760869 543800823 112260622 272440399 553291098 703786362 137074616 709899068 287170317 839731078 597146843 626094525 696612089 182932009 845931002 112401966 666594815 862926235 564620682 157530145 440802574 722276405 352779153 371575796 396589140 615886648 394867324 304454886 677392739 90134074 14165101 158764479 623006782 46501715 320136647 72993860 69402969 707376041 716014296 957993330 776918245 669901339 606400474 938508501 567034431 302649217 234625909 765844034 195645089 427865704 839608618 269231927 154596979 466977694 441764066 357030005 478584988 158293486 868680291 55404194 205482662 456218116 335218092 474063012 102314319 596223232 896075062 820669958 507512904 836629760 188731782 662895935 192389890 40448567 656285559 252432141 630989017 864609341 880760013 502175524 143017023 845458678 271422770 474120825 349040479 767139313 56477734 470678000 965772674 92219782 45111002 908577583 30686342 946556859 193265547 951119336 906209715 975271195 167660124 597608194 978314400 29503619 685649995 752430225 709607957 517056150 26832585 670262798 926364722 485293183 12278881 889599967 822257929 322344066 839749537 245753171 103946646 803649559 65207040 697862905 537047327 904838519 800186885 445573939 65669001 537842484 280616766 25266264 488156514 932772151 654014397 765030735 324562324 64021310 330927481 862302820 396730760 207422629 629163740 96267003 569150933 766175100 14546293 818590319 690470142 706393821 557568074 710988631 285421898 522305957 594713161 37783411 663825917 178063249 452421241 221290318 181393348 399867366 831631415 544076292 430300235 111152451 125918298 118867052 336016144 991061576 493066543 469465189 251407727 721154957 372356926 215941161 665168130 495605207 889531175 611569178 300344802 970939556 452638194 727543986 558355408 733660528 311308044 15281162 299565471 833148654 18662439 442092164 971979436 566906488 881520048 986499383 634698049 597844829 417909318 774812589 181745504 117221646 944661802 161289339 270465829 620579615 737083733 629890334 892637988 375516203 629017445 219030853 327273572 651581976 280902023 624003616 45194226 870457660 825898086 82647116 29374108 787251963 577047491 720675548 431355589 730051916 455387920 984102216 652902629 319999186 554210131 148281482 794568257 291967752 97935017 622589147 427977909 88432031 869341170 558141606 537222205 934283365 241831807 18663263 489921884 444118382 203676598 413343524 7648171 284828242 450325497 589114258 198508543 930117755 463764007 978893783 915340858 358882298 181522728 213860995 742671514 903452824 219728260 750478896 304459268 195538132 282330256 869604060 455409671 39704069 395262073 266209056 494488267 232605926 843587981 87299108 600001710 955008866 154505644 57026538 133399780 209019893 563951266 439713882 335293105 688517383 610816725 188233257 291053394 57643913 910651544 343823007 703455042 152503709 451106794 624570487 733881061 502687096 4472849 928330992 942207198 436469334 685026466 655867098 665514749 720966294 527495133 910045387 248473325 252280773 122243353 581892841 625186288 845200618 151786737 746498735 13191036 616654932 955208979 788706083 363621029 778332143 260108635 227175911 814161459 939759438 790642663 882544980 265946189 443784578 743282456 121125063 523726897 544630090 687251169 400209864 552589881 202142325 690629928 375954387 971543035 57448691 571749564 815870605 843687926 231254946 12188060 979087545 10047770 722434432 452506501 711654298 218732665 737661124 249239119 835922549 300208312 253215731 651094985 75567064 243436247 448344678 616832693 69841478 370337355 396488328 57542884 643442036 547979588 209571962 565787858 651282908 797727686 33803470 967880839 653710899 897976802 836903066 277525487 357427331 617565030 834182534 264334912 333855615 986459878 793765653 317162307 566421545 871866394 980504962 494938058 817510080 99369854 92668277 117356083 313575780 452278418 839586294 997265618 322325369 244164966 149695037 308959594 761461244 254433815 262196747 733820990 344254701 987811646 678629490 381651779 378185149 80184550 670068954 883845516 763797935 868309723 262385681 846840323 582630822 763708910 193896205 252016366 426424230 159800556 349473765 876783719 261513132 223423309 664456775 57501360 223008935 47594792 926666729 211142766 246538690 224965752 607137969 758068395 496015612 438784089 174983955 417609932 256469675 611837940 198380348 979433436 297869045 881261735 270565747 287528446 148865408 363141901 782169479 547896421 639994455 933633362 284061681 377847716 677859027 542930739 953253485 961811268 21085413 161640078 341327922 481654254 227974103 384702703 203565589 665785984 247033375 701723151 825496496 59090893 74922919 674409894 266941344 83521626 60973982 674428581 375382537 121874526 725166464 624938703 348773942 257953411 143124223 68233682 977272621 824567215 88050580 871003288 418506259 580998716 623464277 913294186 553031242 909800653 837116386 790103790 371050318 226865453 68674799 1244986 829116579 483847496 545348598 128391784 397527786 292280921 266036139 319514076 522888095 805529546 606846332 179646873 355552700 701616723 162234508 718731980 193415961 193574362 264900904 839475514 345886153 450569735 593376457 897936164 654677635 834247775 602878833 404854579 906290558 659431007 816208642 420258494 693877225 958800506 777174201 306961707 321294256 140330950 119324325 97796404 206897404 852124458 236633571 932618577 916174075 419614150 230172050 594998671 938097765 375894922 20291068 199028719 650708445 881452006 312465968 111761790 527079445 888785740 852322219 833892 828360523 235411356 569862932 16691039 211776093 819479354 315587006 663177246 280494607 75510457 148828174 669087625 281569266 345732762 6956750 184502312 77046149 585457053 596929711 348196283 992474737 365471321 644110214 405196985 1512250 180192647 706600606 707052018 403240348 50317549 963362942 277283734 831716502 989807696 394448173 251335275 400852539 277212414 870689577 741674714 475477468 736584340 189675741 489121527 930423752 608251817 742315640 828070569 218608288 845349201 37610359 810796324 346558300 467339748 694579368 88982136 215888074 812364263 194330083 777636962 925647558 619822938 328353646 214394471 49712448 824565215 504639412 608961860 587780895 25640945 993348792 107922824 501263124 777515254 890094646 328356135 980220346 874541172 577512974 108673586 373693233 844696985 187651506 105663439 876539009 412645241 73178105 312766783 534842264 124514152 569134770 762024468 103351684 763062905 359047200 559746911 337020665 584848645 865518570 61244655 864611553 728205444 376995164 884528557 520029995 595406321 761359494 376675860 63857509 299520557 10404352 694987970 575954507 919668470 635230126 410302678 470901002 867890369 804236095 223836320 186084009 979001245 72897119 204618678 483937235 112985509 39196874 666446125 916252093 702093477 830927572 553327110 67397560 375066285 23221849 704849938 323480136 224878178 508596056 677047546 560485156 858247855 638779395 658128759 912803429 412630898 592832357 543417012 663474453 62818370 144732738 615870095 201805374 404939856 862069180 770446421 30487918 942629668 668266272 465275420 907445769 320002837 593218470 714914728 189760234 123137878 584240860 80864179 117772599 920282623 603583612 860197305 298920374 928322226 534818339 544900459 546096872 918760672 64517545 730359849 785832776 291129789 373967682 7493220 916519116 382540731 854029746 815037118 515204465 166713130 71714560 706788299 629571020 978430893 320004798 76328065 686942063 143362950 190120854 552052876 561261863 145771929 130769197 223655386 100903509 432243482 727122674 176453969 954006420 199228781 476217198 903527692 211574747 541601265 141769942 4504869 415568047 413066779 743247600 120073391 623278591 104600404 181980452 298417778 690863386 52496581 480792560 971769910 55652441 379483103 658268172 89153551 835256203 534267319 497318803 187510982 955239933 815188798 319610592 217320565 558259962 338832960 62140190 105015362 852190081 350760739 881848549 714249323 324373205 502740818 917479942 291935564 20090262 210534349 385675530 480917614 632011639 22879120 236398494 232254769 888790417 232615251 48595867 425014957 420681847 520637722 46448373 834199272 450896101 790739303 225211615 102883888 374390917 100066586 299563932 863146779 875332690 184059164 741363704 662044013 530288336 432577723 328748021 223679935 928362731 135634021 635040519 936705443 748584327 847664611 814763517 383176581 635260867 996466698 655841381 153405232 784585097 442469525 398828055 944816564 147905018 129234881 10056282 505240392 128428759 909838445 657957370 545011580 678930538 481778221 952891373 906702469 806411925 182367832 431292259 96648271 972342641 256585532 597968646 868331134 488036915 521788507 38398414 632171580 757882147 969597002 318453752 255181556 377222613 664620239 190055711 230145269 293301343 857528047 181778426 557543848 759891074 210664514 193019471 205399669 511918966 507519047 214402172 574024776 690893861 330982952 851590058 675987143 354054490 302289703 326521017 483252415 155417496 960174239 146354606 645262767 194418692 797971092 867259277 557579892 657580382 77052974 801838860 671057424 842553558 395310402 762518440 832813190 785029504 553246137 586644692 195612448 139649024 416608872 246834194 956333845 156856160 156473278 138123217 161278827 905775502 52203882 526586066 576573413 49831687 624281947 880440353 15032257 763927821 45580727 766879361 977635333 461835458 371323084 138092813 50630774 765278321 159572199 265304786 255989042 622188746 541744869 451948297 538192621 436631096 207704763 754738913 975281626 187811428 122531355 267949964 633474823 960962963 401522813 72838876 102207929 427103273 883347403 675862593 878640716 110046083 779936492 489181905 330488524 937619845 38434888 686976822 736387981 445896649 933970454 375083477 809715006 783448519 677733819 353018363 989022049 62735372 164719866 137631644 195035830 184269668 810409259 433028175 686202939 632744159 382351414 827210929 657603642 430995282 613248212 863291250 560793671 20590638 180186490 844768296 677215757 479229922 774575860 47250829 501743594 694952084 662745891 777212183 298685820 872320168 818435774 411209811 769383774 513060977 899696554 361008532 617622223 781888296 388950232 687945618 765925657 182318963 451406451 299225380 205487398 6875432 379812245 985443314 300083014 938317343 429413482 401943202 397036444 256223829 490082246 736388559 26656130 459163986 474346238 556076352 262154912 249849015 871280543 409915217 972202023 301804116 116358489 34874262 767275895 533120990 454840420 232991330 560377822 3002906 928894726 809767905 649076508 428070442 355118695 745834137 941909181 796936320 516056909 629714993 107673021 8541599 359386365 948380216 586048803 893067696 903700565 166859681 293968733 948203195 427226773 97082292 844740782 240676849 956945144 946434879 276533205 696296844 368555123 483309651 474611732 705202375 770622456 97458350 439035242 12142185 472624351 11210153 898877452 880989462 618641631 322667659 345160424 78564909 638759716 426527833 49381582 789838426 187221355 397499359 346139604 182584412 147808549 556159246 56404361 857514045 357316789 954561645 901628868 15097359 322257492 509146701 958667627 638104876 242884549 862984284 376550291 105740958 85120492 94618405 82028238 529163298 972432172 50866534 167134249 280744103 157321477 597538312 407637085 66084654 184777219 454914307 65765583 469224295 372576210 702140830 439571018 995703610 69623241 751977002 729681153 843419504 11448771 935581563 13677369 309597770 190102945 392600831 646683921 17509890 366700063 447692408 423694729 831931632 909093524 134240237 516940904 774195207 732925188 232092481 901118971 680216790 777027334 293113067 211623143 522761891 948993263 22911906 973882859 411169180 794972242 673347055 662999159 869479221 343579370 698562947 729415489 781779607 892264565 824101890 550102137 195546243 58297507 391341673 623501402 939624733 344637675 363033805 888917486 505780846 822639984 788296168 357894934 702276931 200585657 140794206 648607779 934836089 363504914 994561623 84409270 380982596 740183074 71866679 242083251 901274560 860907164 407265379 950472490 294203199 836397465 774593625 585000360 996771479 660662676 715778944 838273296 348037214 310019934 437829581 195146456 235739924 195633302 877691684 150505259 83388984 137486182 943777154 247163400 200214029 536930806 939392457 297638568 296204885 851960946 813951515 529176236 567020266 102407273 868104001 733508724 41800105 622493336 249487517 316799523 414599660 544027806 985374915 282519795 682268643 63264206 469528607 809948468 382181563 848252959 795266704 416521997 498755007 177326788 277491784 161910912 379214045 517753773 578962327 294742243 29860482 354810348 50005691 73370537 18888477 663523348 224197151 584724416 456850664 278281936 638515926 989036345 573923980 24024042 688168079 536525877 714120604 147974164 917363865 594782930 880281961 811452408 876895959 417311846 565786850 19662721 490488436 25774187 783411363 959310642 450952210 436503789 689687561 782969966 960139259 420758333 401322087 738596784 113907151 877425930 613445973 526196314 288944914 671043234 229324713 341039429 87673468 141273643 466171728 752023335 452484795 183751883 204854611 302846014 244691322 966273258 961206925 500689059 102023565 227391186 2095679 939660507 895028368 951748594 679239387 664196471 142328328 489066607 735058219 319562798 265014246 211628653 197580424 826134017 387563525 984616303 230309028 769007223 272371805 824542930 579690803 212498488 650665298 410046703 88935827 741131120 399951786 39762168 373110764 127918278 542085909 404036772 552835302 870209054 996810069 753361059 668569361 342522358 346411299 916308400 44789132 67215583 695402358 819771213 713503029 904344716 700318952 958361463 958678535 460434016 75697951 886329697 457206115 694530523 286127858 215715989 307132505 720492941 825756041 480038553 762008805 628041551 531053738 954294615 167969049 693523506 992222931 382702555 145380683 860748463 554586787 825453461 136799674 951174517 729965411 897794362 928801973 369697268 211051547 145804652 134862538 52525523 502380129 935465623 467469209 655729982 700370900 925542433 990610342 154564013 496746979 543550840 549056477 317067916 453150351 800337558 406617493 451354161 515784748 762599391 112333303 305742143 698961219 348829468 733593437 830839840 637647948 629064670 911417930 868095064 604403864 650404972 403489210 175390622 703399671 367004922 805542493 725538753 202326681 387777336 172161554 276722001 651224572 127024120 987791607 425305427 612403562 823363548 477765369 547484599 974047546 19010002 277673568 769407408 848576513 12393216 682327073 144003973 238054014 43411475 703077778 223654503 408157354 394231881 242175303 192254183 985870145 393869886 477508687 973528896 356179481 22060330 964487561 441228218 759264082 293289545 69322569 21851137 572921723 502429187 864440417 697117317 66367052 579503656 279932815 337641557 450893768 592976218 16605011 760316333 736677328 322028427 98638221 620080389 432162616 343307928 876436294 264545794 416066102 134054920 177059723 505014268 564235913 636064875 557443900 218999141 266046090 616616562 460389046 497242039 334836307 588537467 276963696 683788063 439540108 872729546 91180537 160987864 350373607 54322003 137581566 472013400 204917567 602264272 849261481 131776016 480304690 900063373 364121383 273177142 382943010 114324932 208399174 114624239 849650854 603587011 153648936 304770483 566008020 97094447 266842486 971598367 584097428 302628819 414286616 264588467 172367680 869491018 318578506 110262980 943033180 564128973 205147335 624333482 659491125 755170987 470984312 109162708 687122235 826645130 49826084 643170534 802718859 110985668 56544639 638427087 975268651 960256255 252861519 979816544 581168 233409155 513969080 189931772 446535682 651081894 716919081 242718347 920439711 380128922 190220066 119809949 996767995 650181792 423646653 449813006 775016806 298118 346224598 337317894 252577204 237920489 965398802 328418296 474701305 777366742 673103927 307092363 465721000 283890334 557277202 138975960 62943189 848457261 811140067 60294149 951747092 736654642 714623032 997001049 637942815 490504713 917505422 968794822 654693268 103003050 761124896 688840390 703294278 684172425 60730790 525973589 566134164 55663775 559671165 635996885 827228933 851613553 721988522 631527554 88324986 823803015 747971721 179962595 910550245 73391595 97786147 143808924 62544674 523308171 537934701 347300341 903899993 32561703 820470226 370290566 156939708 778637129 765058439 861864846 818781998 168607229 188462068 683232602 428364118 274382260 455618952 940509721 874746328 382962990 777076622 987782051 602934856 324354028 656907694 610691538 389648509 399530780 826761775 904588126 304613658 666238450 368132124 26164333 955368865 818882054 942973514 894036364 973717254 476725489 431182935 614389758 442601792 992327410 355838229 462411216 758133227 31858605 4868761 222535068 612597848 280451139 958211815 748519679 586743467 531121949 363011097 17905202 302242765 883059845 54363133 344178193 513032279 107954806 659712143 731626783 245517894 906013725 716450881 344165070 834970138 305991114 39135913 493749575 457240195 89832104 175006553 95613965 104185412 933635933 346889556 897919400 794082329 71825941 492412959 969760616 752326153 446850470 981287161 723521787 130345428 900428786 447893427 650146435 688397290 156951464 955090000 677763280 74946521 190914908 198376682 474682485 283755423 774101872 416148469 789208248 389614484 309999327 69852280 405062927 179132868 211884379 128285114 742018975 833739726 517600784 22989393 868247964 855917736 50852448 396465481 952219441 816995720 333218714 843295754 726913442 70978010 577195507 564607472 879387028 614233056 311579643 105450789 677887506 213748905 993379817 312307180 789350507 892960652 82270415 330110258 65969331 91257949 386180057 754232855 565612935 751655116 21266083 618208809 638285748 99419549 276365349 600001680 752609234 44346464 944477449 758605680 136622313 670724179 668331126 924073915 223686710 253025437 407378684 437593340 811625563 335345120 983352948 737679405 775105856 992037060 660576876 504561985 408589691 971060162 439530555 917550972 880710334 363034552 865065781 375068824 774492682 800819662 230463503 75108510 48457525 709840387 322849249 898888434 883214784 209713780 320459658 892120684 784697939 575047071 220284161 474582655 34064811 228319116 424671037 34126910 358152315 626042496 712619749 242148156 203215087 906735373 935512960 774643070 709445233 895787819 966096721 801873184 888594639 733643167 185936801 42930605 700712920 450160697 120147651 907011384 724484711 596601760 293530796 257018341 430362395 214381054 622271999 283967604 234566172 339581580 384493830 581292013 466615281 606506726 92553392 852320451 450979202 438241685 759194633 368742582 825367565 336640086 644989434 701615444 936624894 618508125 909803959 366865721 985493701 608397447 640815687 626654753 174900136 66553527 45819480 855718718 778745932 977146753 109947888 542051972 832773264 477887019 547646575 825846767 151526118 543258107 131220866 220032372 382635218 403832438 56147159 958172010 845200152 984009777 147123583 442087474 186140289 923179625 368162243 191736220 91061452 592927281 592471760 962142260 518440722 30666973 509860848 32308805 68486077 640716496 722680860 81361653 417177787 23490199 785591303 844314022 346200303 762226920 474832646 542620605 811216272 331340350 284924133 19630584 765775937 140218623 50713808 966780055 988568702 852294649 424686361 135032945 415619450 26863395 933219031 450935786 750393371 88390755 860351863 970328842 636973125 530173434 19337149 376462120 228893986 521858984 559543493 288495199 489938052 695262095 939855036 601456679 327835571 552627778 379246336 60257642 224198683 731696392 355942684 395809487 997868939 892811480 973842992 180772118 804612774 127850059 520897712 921254894 494098944 978429188 875036713 375397106 570112605 191764607 337636043 425351103 116093563 924148415 534448406 79136208 775619157 601560760 282473917 996301188 860630445 486898380 236213105 183171531 308455932 204294851 932210701 117496889 378244299 183615929 58956496 48868075 106349234 564925517 842021815 395468094 835477809 19525103 590429440 946322665 263598665 343084327 928862092 377933659 613511271 118010093 838261291 614033504 821648919 847218161 566117715 418379892 242434167 316764650 356211908 319635018 531573534 869093303 204754241 344109272 888200435 900345950 376272145 705000007 471003227 692660440 570835837 795171370 922073816 40280607 709792712 839771195 721548187 849880283 458072951 724677117 475592737 626754097 337883126 755350063 967686839 569507195 811409088 574805263 323548898 946335950 35829035 582592431 464548373 674205596 213360904 239403021 555860976 430825153 834584604 624583939 121558590 255284032 30124903 427428325 320453552 182279298 672063976 72072828 688179693 744951348 884443684 292106691 223572698 388881165 930998545 596362555 478817157 116282808 598167553 476168279 512114387 801181748 331461615 445690752 234682433 613999161 651887901 528082154 47013869 104549784 968247202 983290465 627434082 177583968 551649805 643373907 350495591 547879249 344908755 738457600 255187139 795827876 12108726 8227824 766048627 42108564 83774503 391034743 686726572 75803657 149704967 268872068 727295124 44782578 292826948 194162044 731888563 206491608 153429832 759635179 582499476 620975242 537483369 187725830 909733069 830286635 575006828 608075319 907882910 985845305 685618346 987577613 166003913 77814856 624551487 167290004 9920278 432609098 8483314 898360701 179494362 437770854 863225910 183402442 902535843 490873498 396322293 453114099 688434903 913089332 772663292 903291204 378562817 2936440 322669669 298629798 830188846 884088798 962535885 96218208 777858641 563098909 748878647 952236396 812736232 712808552 115910481 694197218 933101907 216620690 961837032 644120155 963889812 587873388 554449535 778106400 698437235 740493488 756859648 69881869 957325882 603512426 402257580 517533426 242258409 248359369 310515625 996098398 104052151 688926799 585572947 27309469 89228133 421499023 728196789 829244965 745736191 3518788 792567259 345800455 77495636 364863121 131149420 494338104 953307467 172434603 651529889 33866377 665391078 645778894 816485516 796131041 919820691 334632889 692326525 599303639 235656308 58513398 338410286 46351362 349681093 371880919 769830146 24002331 161843872 102819175 472162067 118364178 38863619 98192392 410027568 482805829 883432602 475384787 744506573 84839069 269985587 620280960 298149999 163089185 103676258 901957142 720227133 416634489 202784216 759067571 299382654 288696006 839644958 61730655 30319826 751053456 535534540 238818768 289180658 446277102 592921893 662860051 227096226 682880546 647931633 374041593 214730116 546849900 812394821 648046499 656509267 898488344 751942036 307053929 65387548 262931699 882593965 444215037 825972992 481995155 100260283 341329953 470668428 599202100 67053854 617534572 458319140 812447234 870148975 701230379 269080007 613468324 858873058 194309677 141486510 991437250 654585902 755623488 130666990 706807851 396949074 192353861 53775926 577977344 412430136 798849192 329955332 70821288 447736105 808478012 691082138 923903670 940984235 972669448 8125377 829013126 54400873 888557403 708258068 340224233 945787108 487992271 507538487 549474777 442222002 661615495 163063235 566955325 106712194 559935914 56356382 997762302 556361701 441586098 717696064 488035589 979354649 875653176 622501430 177592752 414264949 239531240 595662545 311382133 430851946 490639236 714107543 712105545 869255174 197334377 497256218 296953864 419460565 795875382 183503043 658236967 582592981 515147996 339109211 807788802 837869246 854728551 958423197 978658629 866790435 93710474 660463922 933302884 499579319 61103330 260464038 551838051 780629676 113440640 598818772 579046394 629903538 780153427 26061002 609309661 472107722 141180047 401359109 806772936 328920379 78128515 151064961 179757309 780253995 532311171 178173200 368587456 688650403 230762876 897706907 215199416 254535612 800361065 210902998 577364457 819038635 549808754 69294439 663598270 616068095 194638857 588242279 543270696 328962308 994161593 83093384 313126476 793879164 818218379 291120792 665332963 771116364 771150852 452051046 310622362 620499360 808378421 602302110 168750079 517466430 823002528 692765830 612277418 298883406 874981253 332333475 596111104 200933182 630239177 625090702 937310019 145725478 788687905 826472669 158891386 961086809 740732523 842793501 648671178 430349731 153381839 286723094 552414262 68459372 278033936 947417429 835653119 657347244 861681362 37887479 865547117 247350412 307718351 756516519 643015012 248463634 470204989 9707423 142887492 466314178 337459666 787760001 317706585 935733790 565193889 42205595 784560578 710194395 575584509 195417441 622406295 582259065 307429549 960097356 423735928 456303540 953608162 283342471 736571915 915452295 679609613 622969553 89758425 594192991 918806572 117318959 266556632 46430121 782459407 813289826 562056660 312299719 585161217 537805319 886741941 117673585 468628184 134063372 337690744 479932243 562852647 61946744 762613079 791553587 62097821 460551427 282926041 773969161 734582973 910786913 638741655 418784321 543007737 902245726 363767711 650506503 6896450 645064279 90338765 677536608 542734717 397340760 377190422 484911558 914200143 464366823 504082498 23270051 951701689 375602746 76120245 204167104 938995569 165641205 714159384 908185851 745605208 219564578 41338878 35727894 953266449 34313328 597343435 509793982 842837475 463520894 929838859 101667687 556122556 156917377 987621106 703331972 781511553 649836844 839398601 705265008 666835497 335357941 710500583 317426418 73969594 747602775 826804599 569110740 795544417 549339811 701960380 228688889 537653969 431808646 36966569 988662066 481153462 759913165 550665272 190385253 963032248 64825169 648254946 717672629 296664713 528720100 207278829 549303774 942400561 586572334 18891574 590211926 693846994 481105462 347892256 431732068 654378584 463367833 533432197 91138197 130632583 671474452 443128044 706654565 410869976 174139429 10191828 506232418 598356033 474700733 788899372 953181938 103734424 478546452 380399585 957805054 476535613 636869914 95172016 538888950 806274788 435158242 124891636 969028648 652511883 346624855 72473556 621004195 201464770 584979663 961267736 364912844 191921991 915130172 635537697 507595508 978516494 748397684 738326031 193791231 725298220 149191946 910212338 630106223 197910215 958507502 628903448 338924981 386649116 535785899 114667489 247715556 386564960 948175657 616357331 603323852 323865136 500456022 871228856 972497634 705178216 538248310 410911275 662540077 355514160 219910224 288021663 534380107 127444871 208122170 587163152 820967363 175231374 42970559 700700201 639688120 336236798 40253346 188473106 448655509 35562854 763917259 226929950 35623050 876694550 550018642 255861950 15378759 321092523 384099450 951479048 729154978 893111233 610672060 657987370 692364715 275474420 693873990 532608701 623126834 528320855 494322064 797590236 305874263 780209041 408904 951919894 900548982 26375851 257243145 115737795 69689732 420541650 37368634 498542646 754360807 44241197 401618400 41345041 22732001 592370906 375550350 186078305 462960751 477622620 32413004 266530538 604805450 925448653 198031993 532852376 819899408 431731562 714908717 676555194 69523693 567448045 79360217 842991457 722866499 899990171 361572909 994811011 133952140 475189829 238324436 448529776 573131612 201836028 231216364 658519832 235456198 992222839 951886619 622897459 798097556 969478783 475402652 664425857 80058344 326587150 88780800 270625253 889738956 321006711 870853873 637595585 589785979 463680114 906600108 85224565 571718421 209089128 876758966 351971407 620467298 176384064 860439839 137687459 408011484 350245600 470176011 85862104 837235456 918785124 983939821 869270207 753675891 878709287 330875353 5906868 512938737 686507549 27026245 371165359 113012403 850847672 481316189 265194888 119709590 783535337 628483954 954082354 241480893 698742912 841401382 359033643 173409945 139766991 107847131 343869568 426396181 128003285 568422651 189283660 233939287 835855027 932628093 472779971 619284260 439591870 669050153 734353153 860677274 684378476 134720070 100406497 667528569 213717334 250801919 436741287 249011127 64513746 177705233 900293724 169326329 137240268 663052810 645962106 93678898 258489770 542278798 858752405 343315828 206660573 25725178 524835859 436437079 996798154 380892295 21320632 339116009 580282149 679808047 536831036 345218756 158667379 829461296 805799522 196638084 385654251 581625861 325246113 133963744 39042904 786729418 457962562 186119115 711609416 660051032 162283686 97826765 286722588 103281883 182786504 401110493 585456454 626944452 244812363 891173679 745752767 816900866 318331865 44654719 137120977 743517119 77434083 324121974 256026889 902608943 221809010 597248174 471005876 288569121 101864203 61737677 820353664 635350298 691493360 431466123 814394760 148634734 853195452 513724434 437122619 869416953 464632121 166558844 474260261 574383179 388727236 296961024 415650818 65394215 943580287 470448541 988866950 543624599 631511017 402213103 475425718 125510532 31010762 640956610 812559722 274935922 693697496 279593528 229290870 486626196 383943671 185354539 895971963 97052222 82057961 999868604 794227004 845544617 744924431 665983454 180702297 99170015 940907526 203457090 316445547 389149693 660284782 641292059 368227435 7650085 852330805 984536618 93880978 990249184 810119061 610678993 729957260 656788995 887261685 40718745 319017563 196453626 706205906 469762469 192049890 932834227 764927254 279527160 42637645 887545203 38580397 391430580 9694937 153328050 446702865 737654842 534938151 233038352 34758438 435541098 638114450 984141087 599223941 785413008 386323004 497788536 367172802 791871695 792416676 490911780 407524120 38686398 324216823 772943680 573270314 192935391 470114282 845000876 782501226 511052436 683312178 653722218 657812193 1950653 561130126 40161317 927322809 393903685 485296014 816030387 45772447 344667498 889671607 215431290 197960803 640450906 520025986 84788140 1580740 372229561 205675472 610375857 938798901 287103909 342184758 560951785 677213095 346088379 327929748 689816077 908237077 395488325 161316634 864392824 333732019 485755221 513769579 212808444 378302958 718331388 953520076 722212970 360459726 417150941 51169442 315617274 329493073 213674155 350007060 867749552 443901097 655315576 268027208 491710197 245860170 501822094 787961618 163253370 271087605 923690494 912904152 162790545 874749600 151982404 644853439 907148537 774484963 499009379 76278082 761696549 636635002 805713114 131702360 80543380 673243406 250597365 979374962 688764145 634087201 14556405 415437689 440344396 77155176 262053988 907956113 640832959 485979165 782773304 533957483 934058608 156425845 36001321 881179831 621908943 438991470 211784316 580378676 125960101 584669713 74546841 357536892 426849744 374193571 51922904 807880694 917364324 776389558 917646029 37606589 179447798 810347769 686994763 203757053 577491732 812011226 653034432 532015890 528669985 226288277 444074058 949680153 626017827 508971179 804107009 427775845 297231851 857128962 101161651 251966129 883445366 258417936 849132974 803329696 20132000 635805847 357758089 841731398 447247318 883723757 777247119 93759199 220493953 68982968 144045530 708737134 83617127 30693874 953760478 188821045 340206892 215453001 166912896 614412603 666104564 180124107 981525427 20437469 887161118 374001495 337447485 886032742 167023327 767153932 89195269 175534722 788264110 312828065 554827730 360098706 509181581 302646943 134125725 241007805 79417439 193816070 705097352 968433661 470820364 5707662 30455114 568982629 817280987 705346963 383822483 927722123 918870869 646856487 923683303 533789570 992677162 272105325 775838219 418141897 130436473 487752346 874812614 971341317 97335847 997517427 742488219 525648610 662622348 535960122 115423332 665509703 773481561 195841648 481234740 487863665 656269469 62545760 253860667 863472643 907245837 101434094 588364358 837730511 615763276 843702229 228152370 860205450 718857577 639743947 646124556 986684669 628730007 507801289 949495452 675627668 574864957 303832075 886169662 789323994 74449907 909925108 409781279 122390851 307198351 9125938 573420301 82909162 554004881 284991577 733993150 214491827 244082638 404928652 803603013 677010123 843157093 684818631 639750260 781062484 418050036 114161864 770308029 488766400 244398422 966323514 142699146 406135023 127227714 77148661 948794017 773052790 488697204 770128660 527984926 678351313 597332666 755152412 330776031 231088747 563719705 729163478 696508348 298878101 532916625 414677861 180413935 797631320 612631222 521766166 848045999 693644134 743878856 291467659 516920752 808028139 342653815 524799130 772703428 748697 833019140 690651660 997932043 590953150 337994001 629365563 421541483 966094993 98185694 690148032 192178554 361694157 534336754 524371934 751375838 734991368 71748258 491636336 235957061 906521339 190877440 478939067 290257001 273164659 437900687 59787436 673209034 52295605 967784332 424968826 837290255 195090918 981348991 316819799 587534540 964484682 19666495 3136088 742780545 111156037 520862484 997694546 149303467 705880631 143354914 632581085 870821076 693099032 549761618 225779797 893852630 360651831 527627095 90853766 915969383 527677472 898862783 16739299 185825740 523452189 341857431 408866764 579708897 382511292 842657886 395983038 800798336 789660354 731367911 522420342 56969865 870153758 871007646 150096483 361777663 798605580 116737266 999167652 95945414 414252806 606206799 401059292 737640359 995193854 204786100 569594736 643858488 382917853 781593848 696496941 102884631 153660785 518143229 328779140 645513724 957776891 531229534 147323158 476455093 913105121 590309234 927174986 678082059 170397379 671633056 882285318 199010419 211933199 882667345 927749691 136067111 732372684 166174436 730937986 2486790 933805222 979473145 123501840 209501199 8576020 43519649 209819817 358201381 797475063 707578182 44485360 980445950 546158193 23759263 497633145 218617878 93773197 572374091 306148177 616555015 43169681 258782547 523583890 252959260 428328285 458475707 931922543 531724639 637236381 640339070 718120691 710410812 399451733 621580733 521874480 626976595 760328883 388823275 81836504 837751186 361266665 527377284 912520358 96917982 521358354 564562571 553656767 359730043 635036457 664957497 184393254 989340416 565304588 148561189 991147526 883286206 487259627 542533817 682088924 68929216 249983102 743723770 220203139 689349714 226483785 421696852 753044998 248894772 573659546 313617985 27713431 667151994 814813568 647390713 245984943 10799856 256227485 802329100 780205889 574194023 222185898 371885274 797021711 498987206 358658281 202901448 829538658 227672594 77524536 372796347 550063657 960063482 200068081 167578004 888479778 81002593 964693588 643564787 278503408 312629805 213350915 997906330 699819020 296840827 525532246 912565729 302749081 48603193 687344261 767249422 609440485 433064237 416760219 440397821 873162353 957286156 46152326 216070927 392413348 927535110 804092137 536125859 257065575 116542363 815417560 481566861 323168730 10101132 282575995 429843609 898954310 361440104 342014883 810049191 779519470 178924827 339988962 714207515 42822168 439121669 829248386 63037685 804443189 654253631 738161907 435525990 186063299 465907502 244889766 545774827 559728788 852871093 395063335 544998245 849912968 572528332 357189145 790670702 230959652 968992320 226036159 779759669 277155658 517690616 829842136 783201501 45588763 367096447 683211073 682469500 170789658 351192698 476371858 337914399 450683358 607803241 5752925 988644405 513227929 344575394 756558075 188825205 121429050 314047904 280824695 70098137 47636327 376893896 885299029 956332936 804458987 365959153 642238196 818532028 757737372 462832901 205641651 839936511 349671037 373534933 615858772 706953150 69144381 662397585 317816104 31783921 668652627 758781733 16228502 212730676 874743446 981479351 484441121 343296107 331507008 583481937 814548734 413860845 603611474 383490878 236036249 282129749 185928306 550725869 202700027 418260491 232228852 715972416 444328547 554771446 266933981 44673481 762388813 319045802 31292990 280316943 545254952 90660935 272404694 295231080 860402853 243037797 771034159 291241013 497826545 796674155 586642981 527332278 564074846 190377018 122856582 489721937 576111147 876581927 431735377 125218469 876070778 973758671 33337255 946187909 182149492 148831042 34712434 155773790 177313996 464795519 822923432 710906374 208142157 749704462 156425044 17711019 381074254 859243407 577643106 913429169 240583749 996870053 661656932 540959839 386973089 207556801 400205525 61678187 572180286 65581950 464161810 805705464 778539290 880880337 887333296 127145706 107848278 890902273 499416995 99335318 421917745 762141720 500238562 166746042 38741573 568519049 542874809 915517878 704124076 417230976 527746693 262657308 564174959 480961383 415436791 506704286 975536041 650904147 110488167 569842947 642716476 783280911 647199674 558055699 621868465 890396294 947911039 479079736 825087806 314824747 702609303 434940105 843928482 144139604 310124156 572569030 518688331 906029982 637881058 70758896 946957998 360125846 993071304 792580087 958040959 682683769 959615896 484176295 704477355 829381331 163816217 444080381 581066100 569581477 225731584 233824224 560815092 272034314 845815384 467520141 94022559 547263012 333034586 915989412 41748191 625101852 10755775 966945340 864032697 757274102 314612010 768845065 810223895 292489463 696952110 717172379 372106978 742300608 201081495 186741914 170487391 523174119 473180155 325406872 411214076 964601825 532623639 554747812 350725734 332476324 146664575 741347610 769182829 536139668 467311433 309055552 381714023 531121085 663095256 719081241 851033320 838339183 552782015 516731649 685341272 996863118 138842380 715939073 136645533 763555249 734520757 107294088 190564468 43594855 313780049 521950412 853293399 563380161 912641341 58240110 427410648 420831759 374861299 566468981 453599803 53921528 276620886 286057599 452733739 243316839 704084091 800100569 401507891 302111262 894750035 902827928 254112971 344393760 402358222 61032007 512036832 430630195 122954274 244020101 109387372 925024027 481140504 957510389 169470045 425950567 144670528 342955616 83346924 581200173 335979386 111700178 146753006 481548577 774915403 956054664 388775109 864244258 756628867 929447546 514615762 195194487 811375421 456275652 989314821 387424433 855148887 418008034 548793405 82477314 657090737 931727921 384678950 596042370 645577687 460512540 360954605 670087382 479960476 124446314 783425094 262558298 212682688 234505250 886810281 908410728 316317063 631908224 219963622 187952638 733097423 218651518 60548169 643997578 653354252 97087815 125025493 358347626 288477248 896069033 746115407 652803954 432727558 968779740 223068372 471241362 282088236 232521160 131536829 349172389 644882449 371652311 317731850 125976227 184471964 909347162 277645896 359195917 915027915 409570332 53243741 679570980 521238091 361093060 696737026 508546706 859440995 416290687 537749721 451143640 77383962 892397567 968008224 288832353 887966907 439258493 544441789 271979035 377976831 814512156 271849582 7289634 769339878 661634111 659861264 820677974 952898423 783404041 326506433 589792639 373351380 598396490 461860558 32656009 215162782 548016892 340531103 462568773 35970609 370633228 99046360 391985165 788784648 695520738 117845749 571838540 852144990 372485410 396338428 610912517 192292055 608835136 517329479 960620679 869437293 572920862 408630444 925440895 221621176 638620230 253553154 776857688 153734415 928480867 815276860 648228093 853139140 179430670 132638478 868443291 238010720 786024521 333517303 77766523 92534276 242386005 740017319 591747618 8888886 788341952 781915452 225160438 46731313 900920482 745051345 578267508 913308756 871467491 478992735 246712425 214695502 67505742 906753469 208971416 330858996 951071834 874473589 775765947 633066506 514444479 682805229 19639534 187994908 304282712 954730714 697678997 987369374 796843974 705982467 34944565 977998388 160147437 821999508 115704201 259944486 302615708 450253334 734620554 558092896 796372794 305215264 875233296 847703143 133267314 448343189 648077652 997082929 812315795 509604077 64689216 360917691 880608801 901893888 350240890 467149833 928539394 907571456 375016618 233779051 357369858 178509452 15048414 718034996 855398767 740165 91016191 600000957 912945852 861633700 643112684 16270596 163269289 146054863 271298854 5960178 606956158 435230443 397001594 345637680 28345573 696531306 566548260 318933490 970278116 314758007 708580650 29671844 775224396 752731144 365605041 258855842 682084952 367900162 156514426 699341852 441631550 505486843 336534672 59693292 690552601 261930321 863219919 282080587 745680157 154279376 851081323 420195598 513175440 79790732 190960564 719663269 327543944 459153979 825374808 837241376 855776545 552038098 694237928 150937305 987880209 590935377 693759821 462300015 945925241 934654050 945494126 795884217 843126433 220262477 415437563 83925054 12301517 574515082 173212590 486455631 934323128 829129809 928149255 380803163 856630634 891990612 294084152 932324423 150477517 713223007 521343531 643856402 437987761 113497264 492857341 290349914 822723468 74689428 813185434 887416877 750717321 830904649 935282677 15996226 822450122 643862978 902095976 158527651 792551771 610595082 45089667 95885368 888001610 650541229 277177387 428290984 458491787 602860604 64840032 839920486 510222563 573509898 15370319 427068924 282434276 384796919 473851321 283728989 975122898 226875822 187517396 448832113 662655366 375671938 796158333 415036777 961909078 674092636 366445690 998587594 962049102 890100054 845107251 885027745 128995587 679650197 975822381 278588553 143099777 99358754 496901328 192908273 932745457 756337292 512018285 743487960 476076811 929843278 299859546 557901324 379192839 939085337 995721384 679717000 6067470 506881041 366447591 263892436 512335457 108802869 122240197 91690826 695543421 929638746 179863949 773359202 731785588 396392259 626920731 955306253 876411841 541429314 782276044 374772674 847454305 159264634 583466051 641801997 727617586 854507973 741345670 36011859 204352723 993205118 976065770 336709184 777553725 719214030 129380685 130553836 380950742 506068202 466520842 211654639 320210045 676061129 586134728 827856693 886048831 79606425 69663789 12697181 193411402 603317492 125075074 955634612 382057400 548168682 45577484 511668936 664032860 767749943 135699510 549374706 182409603 698224556 571086242 493999046 296828450 233189861 40937062 632334982 768877046 838168776 520486642 312906891 966293688 327523279 952696775 717766872 6840591 588647724 718461101 900035873 530949154 314052627 24233944 17111084 421482961 357360842 304431300 330432531 416152509 751871634 228555183 564253349 512223182 351984438 514242031 536107472 705235955 197209234 382844603 528060365 774658501 868279220 744854575 928788360 811835778 393035101 588368575 465284095 301946511 880236384 672120223 786059883 749566412 533854540 12496669 492425841 749867330 976151121 634255851 254553909 417444643 905605738 76212345 894900998 424636050 867219255 833188188 62057372 754029178 931576005 136967561 639471029 938084944 567996607 577405389 185670104 662671780 341039707 18283754 876372982 925180306 198452930 370798651 913237255 82772367 627398734 973207329 757668039 162928251 516704965 468721395 465253558 864646656 36154405 74880060 540243174 169449362 225213924 923130386 227235032 667295351 614310150 484981840 671753498 538317485 639250691 858743086 560250265 249288319 243007831 412018426 387515787 404275661 308600238 420939795 445090115 894687543 293514079 949493067 457132260 320436425 61584640 17432140 402093602 975212201 492070744 208128124 589742086 692884592 330443408 474082582 590203394 641287983 111899621 370434305 838636625 214978756 791592309 152080105 998075955 974099778 102999093 706921296 749314609 264689592 783480486 455452360 21229304 491418493 649415834 99445995 678862476 874000280 324672201 847659561 85287358 562387503 621540729 262168364 84734770 168869556 734556479 458334620 404525390 73429645 296718494 324203800 324521469 320092431 478690395 731451536 272592185 584569600 215083638 745598809 364284596 998226964 492622345 440766505 803061560 964258076 693478469 983089270 375756513 473061870 420914720 780700471 538483579 119796551 627870959 246827667 88537968 791504998 839588260 703261444 986492719 640699138 320056686 72738862 250137008 514489802 19303005 384043182 689203621 18431641 867188425 100346452 387974885 899519509 398277226 516977873 337111495 714631957 960618143 487775096 155958287 521796228 370873865 632560856 884765118 262114904 466269575 888564754 923420175 565198201 559572611 532207862 701569385 223774731 211812591 249798810 594766689 336637743 904705352 263562526 233857718 905530805 858852022 498068916 764054619 248353407 529314069 891268211 847395623 293030644 518224111 711266543 197795811 445260700 591512806 842184053 634120682 889777213 476280961 118166991 881032775 905341249 724141776 22506906 518631923 795267162 114230232 71793080 325152302 32563374 32134470 638417599 820542561 815057813 619699771 391936934 553721147 632622316 146719360 512879750 392589747 241338462 423731277 980407625 543627287 361670285 793689353 477767499 778588832 283293251 41857587 833377811 311631203 726373702 952144706 231939430 841818423 937130091 812165317 676033375 580076457 560887070 875035399 832557480 128024067 9388164 179246887 617162528 30108621 277923016 810111056 453595333 185225839 688911022 288186525 274565521 155021939 134490400 795862337 237914302 299652252 479557907 857254464 339392253 213201752 105728574 830540401 329457840 554352687 373610302 451503599 358114380 376890162 118650301 621667622 335160301 689201305 600181144 643173990 120324277 873834959 45476318 855454780 543880505 19629890 491315394 347092417 581847288 614469521 682699834 556818259 328807159 886481894 943757321 156410511 553541048 200286109 417833878 655069201 141817365 920089562 925288014 251124576 62383121 50939257 381121159 124754990 400572300 819675721 23855939 125316385 600731335 401783325 498039317 678798694 846392732 63295621 391629137 238718518 543924680 109144240 178592171 126408516 213650810 918097702 102358177 886611799 171311706 594374311 473794738 816591191 837210107 541598041 80408233 403561296 635121801 994316170 432012439 360817696 943874891 294534884 783489150 371250618 524779557 834791643 93106357 407896431 639935783 715469034 608821998 721727080 497551512 438450340 438843928 736546757 410779239 399453054 722388800 704149347 78189782 341063550 151577473 606094018 995596852 800822110 528840170 145400743 217010256 737673412 871566118 111229288 679474106 105117132 420295635 887524626 656438623 417517459 959462617 597934030 932106848 146728424 514308851 801256287 286933742 424776938 402457355 288252823 89416959 6430016 740704140 201839067 510969707 963795104 421516874 622104981 660651846 666840090 50570834 718894338 708922515 837772205 453113192 185825516 915102172 387565586 45479628 814219163 792633407 126645658 744953072 594829154 562797005 334533826 933182561 521168606 735715345 512021734 169061330 698760689 871884221 235553337 854085389 130865276 948280097 670514134 985804786 64312867 278356374 898788790 198471265 262769110 895919081 388314885 399117330 909081142 327313213 27261111 351172805 559543054 520987035 296947593 965059159 81147456 434392393 622270019 550320552 37683620 664343344 614819194 16066465 932083037 897647953 998764647 680772552 851651337 855634240 379470253 888895602 552337210 744243279 984764680 131901637 999701474 391171724 171647636 893746918 62886812 190168416 618979295 106046272 365084689 543674381 357574341 46991847 535267730 905713573 1114101 369019625 633217262 812539466 305666872 625654136 501572118 304416540 91456026 112878553 937643668 608276146 418253387 491081719 495680509 191967069 115906301 312777599 577108009 829967045 643980818 22568513 678372995 344379184 96537099 186440502 716800805 737322784 955521753 342962991 844819100 800993908 845902275 976817358 174433833 85795750 394864002 501479936 987961078 889618004 146436879 404654266 4728799 928577808 397280528 333737229 534488465 73923162 898707728 323789805 434193181 184952965 807317653 623092192 534901590 492287379 664477785 904362280 175158922 201684815 717813368 632256468 666934827 907812696 351665758 16044627 805087325 779349415 112643191 476683832 137266876 378257258 685041510 288050317 3246377 691141351 311675854 370562939 180292847 270224094 323026437 159755876 680805760 208656913 961708058 249343906 784599223 255616538 222159026 327735640 276016966 717821624 885472225 192547998 761780902 578961195 744766466 65278164 944687243 436807308 219282816 800103683 983846889 899459565 571056031 722058254 223408785 442908777 553035709 240345122 300059250 882554883 516198153 569607920 493772910 834802406 507247661 10540793 830313074 513206669 449869610 51958839 409407368 364007446 633300222 803117500 126392687 631963810 70168971 668478320 594048814 77664968 169403310 703923346 222631345 45838578 987657704 644556766 623980193 910556669 300824311 882757684 27760092 342601996 381641390 223049230 475534818 712364382 893261564 907779627 253338634 397760230 668826161 464420779 827751944 668712470 843531331 624908001 228031577 580726370 83543998 167121451 25977449 800380150 243414020 818342493 774847092 243822824 387807386 456154841 5819593 686191390 336302511 95762793 919752002 266711646 385892539 501560690 700985948 105566887 673720443 201840240 238395888 155183143 168790213 887927583 461937908 903179411 570479568 967438051 881048118 355015877 476316693 717739618 992298964 777871635 515203157 51013981 27834740 45679116 597492395 207636804 54340598 855789258 553342086 743246332 62529901 723566870 527421898 882411326 225975835 30706075 221544754 714201247 934225088 142823212 836056369 349222759 756811278 652963874 23051266 29381080 288587418 350328591 453610305 25610783 941115067 449850822 199867490 907394981 717920970 390379285 13558007 493102646 414818618 190076216 709438430 998506236 168609872 177989446 985978754 540329965 324821914 584630567 507537092 647768504 522720139 766557795 243320130 107460299 156511335 728818340 771705314 554729899 260882605 363026013 821591518 205992737 763885506 632643876 706925073 851701468 385564078 769327395 701136275 492222959 94234272 288043192 429876561 760879538 102529832 363809031 516956599 981143513 408078388 82815600 26699694 806263280 11311516 54699041 93601139 552954471 237098944 603643607 566243985 718482435 245221688 385501302 964080319 826242582 984898936 799000116 998011562 919143389 680230896 685687450 540372960 778227405 707067235 36207495 406721729 949866455 420559457 657717890 2848395 603877729 623969097 301706686 576028646 230557975 311289584 498411300 839916955 338014289 955573880 906617902 191420980 992497773 379478362 33298102 23569307 443411178 403286395 744977713 680579602 220008939 970393224 513453138 691891758 636993074 513679341 446650137 777491893 712207924 689125185 289363222 214745643 194204552 692281466 898262385 157159458 454097941 887482478 848689883 896191647 630455838 759729639 541878631 809445866 88158822 237576223 379322881 840586002 595878948 588525116 350918155 111091621 627327702 824385393 872421817 992880472 895546699 496466358 330546716 248273783 217557325 627991936 912156535 267925219 573475535 204117488 559862340 400842582 967597792 526853171 530910254 686676910 884201716 512950229 871469645 754643935 764451442 874372224 646410049 640381458 611372617 106264294 233179885 754008958 685728548 966080767 347276649 314070011 627246313 807690007 187842133 6939329 368662756 970386250 301233233 655785121 641845003 264575578 888346697 261773970 525880383 137228185 20712805 942490201 278420724 167768080 605316631 684265787 156836083 522696142 743555272 657579077 607439345 775561455 768946742 773174618 245766517 953972815 492548020 312359709 849001487 816480497 794043037 522108874 905295678 967560957 860752156 641821026 871592509 888831726 914902470 934578634 806033584 73337775 597396940 518613687 98538869 862343705 782188553 11433006 45578856 346325851 589717615 632780781 431436139 5663288 920873233 299927416 896823038 579026265 459569951 256362540 825868431 425623540 962998567 39294403 819032398 833265025 736568668 267338485 314652466 800346863 575556189 335282901 897083624 838266340 663090033 69005496 835097248 943174505 104485316 576128926 880414183 220690393 724168628 96414433 78797316 949809187 210145264 363425543 917128461 340640382 515942266 179066048 611820539 293828062 819149920 386239983 47770961 66029763 799460525 879626975 504047674 915303026 662359563 263865778 804484336 998245895 424423356 716593778 860900105 192209706 926626593 684881631 546555649 21670165 91460597 663258361 915093194 894652244 153126778 968198475 242242027 81427546 208524525 550182367 835797524 540969225 282748614 470158333 484487830 267277305 249568236 999092994 115346750 627094694 182237477 460374419 6017733 579509090 740683387 503806836 198367384 306256234 65828390 905728894 732504119 468582994 983380392 994406841 617287246 999217428 673317276 540746280 755793020 838315913 81898653 342691748 135180094 164338564 160653098 876966213 219792466 713594995 716249460 770842614 117315026 80189454 819323281 605642096 622281547 322486820 426944355 945756593 228508211 955180784 974388964 332174689 838345865 531742652 790673886 858864753 20318391 770996892 520313029 163893348 744953542 897148592 311293824 709027849 21781495 692991460 68208771 316539582 696927127 914666023 225521487 496347138 903240297 732660316 387993675 4967557 665437431 329235323 818001377 194050756 178773434 382489750 480416345 735291244 254817988 955423807 899315333 871460154 326692150 166223140 921859997 468104003 45182761 907741719 412243853 702537989 969215221 66088808 502018070 21221090 830098267 694096330 381198631 587941314 829523255 670730575 207524046 733620446 608323901 950500391 507636146 976915618 20398455 197545268 11153674 164061310 968412723 274940172 412597938 151049488 227883257 665080897 940777954 774567425 184184639 105398947 731274818 522469721 552542919 387925119 530488445 481668351 948545610 424842845 977462530 964649650 806132109 394529947 770801487 772056281 935313361 850044786 978529414 109922508 498846774 426591146 287400522 929993991 22073978 829894017 536384564 313775201 403898085 917341102 279028967 498999590 500809310 928206190 399337463 127483608 876410468 248491049 723423858 522327865 351256150 957295822 166447385 299060860 758288752 116139317 564780135 174551528 96227618 880992457 815022492 281289286 790289434 178506324 346104737 886992855 374639170 192812970 442135545 81144703 252689643 848239306 10457659 960051142 26308957 310724118 447490474 631478440 56073542 734377123 304954471 856224969 563241910 774591394 980149413 998243117 273126594 486260662 779511034 91902267 286719519 259704796 327191048 532047686 420243751 672268695 411627823 11321059 553962364 546790901 772879114 650064185 121238889 656350146 319217885 691763473 769429490 238648383 575044553 369297048 912866840 229400316 441280374 930669884 789091804 740560912 913966346 27185752 812546798 591372795 888354617 509060975 493934442 249918965 935057922 474363914 421682926 222549820 657282808 16452408 991310327 116007412 295019518 882447432 491631047 833449904 964772094 861561933 992145343 709069818 124700374 739541364 891245823 933691725 218757215 769907146 269858233 892985709 678854180 846351672 692444538 965631974 574826426 105299205 892783851 119889303 764682454 611340382 251372835 650162744 49574756 550250077 81473120 480091096 256504520 849516382 408712820 959022148 480882883 969589253 101819843 559830544 531269562 137774754 758971709 142304550 101462722 829888688 275847533 86499916 925925395 625206874 733709400 122040259 504798475 31388278 851126798 732596077 405653212 973340260 272769972 938487185 702797163 271819026 523244006 892209700 63590646 473155583 359484314 819044498 792168934 917764307 962882510 121366403 226886088 227094842 368878303 511420677 980793020 80838270 813005777 109619929 33631428 285223025 683806021 410117865 580141458 549061576 223711813 851122034 19908382 764114944 604211519 994848631 159603996 675557235 258766280 647069217 516506505 64751891 103300822 472520274 4664030 573819982 664847517 10336633 258204671 814577235 61122912 983812087 703830467 445814048 458845523 215235381 264378617 250081176 112023598 240656291 997990113 332601615 174478578 437292360 748739899 332965296 532416125 501745580 736080960 601210950 550107219 140653995 576597193 541861422 207894525 71746130 716049347 613257458 942272708 90133767 280321138 406576724 568127889 546991547 169567732 634114179 697242008 20345422 991741029 895149317 939499527 487901285 573417655 200986983 632979519 453716050 772182646 273367949 275303124 193386522 322052489 315454802 447594672 755612291 825080424 858202786 392344865 32503539 488051688 706076338 383053703 650055031 521637213 37693950 174006806 514748077 51997273 592225215 929832282 681704420 302519739 878795082 242993793 951764445 185933030 866933072 980645143 448151382 786754177 96550445 136083428 113654259 767554014 32409357 62519078 987820992 777597916 32751870 457498641 732430395 289330764 810417282 431456062 795835999 471594744 18938449 647235754 416439009 358882929 606865617 785644089 135775938 148198357 189580455 180225056 989611301 25305976 512364050 940503493 479133412 148207641 946020640 455267440 641956565 570769704 639209181 725969351 246542551 117212590 562267859 338120817 695617743 808782758 456028892 969481139 625558166 702075138 373704223 354953374 498698660 267604740 306595935 475064799 947202400 668264452 790979976 655976352 805067261 822551649 288589685 629391164 226941194 557212271 330887883 198169737 273821550 719443051 328352711 233365830 391678080 327565900 587967138 509329041 217179429 66113408 561206518 992460671 277961182 399074565 254928160 117733561 781933092 346106719 581631291 540462768 53156517 99732782 947036812 743267851 944265940 166825986 510069737 197887933 430740930 598206147 250077928 56835064 933465908 679192403 577227748 882513327 342285438 440661098 672244434 850468472 556612333 601332291 81938327 992228260 545449435 473638140 100508523 362241485 897159466 577998345 940669986 545874934 813711927 556771028 590861663 544685489 874912547 247779715 468597606 896537560 685051839 189797805 956380764 581749271 882867433 714179083 647980824 878904778 234712468 238719309 124022547 765413589 336532943 937976776 926839475 10321158 227240868 724368204 467902039 524007610 307377898 480846482 155329872 561498407 562725194 757412409 65676354 327017341 838101234 236134528 294115282 56285615 132805164 429537775 551411636 628731168 856827428 408995068 593097548 775135231 316563025 374374747 39724150 621709048 188929833 635613573 20199886 514130574 90822874 490804115 862991633 499499494 973041095 392720733 159158907 60847120 931130099 589266329 283260026 557211548 367538238 58164379 505762661 840621940 276187871 433548214 143408614 159947418 820038132 747069231 353981299 922396248 818577796 681966187 417252911 580672808 253599144 527350684 910364971 76206554 26988014 218382680 18648992 325897117 189427531 390709471 748057267 435588435 78486787 977358299 794249218 407348830 299753716 110244380 328388136 840469914 430510422 928680629 18667286 9467838 398262820 252497478 38134893 887293292 9955353 871138511 190455610 30388002 678523656 281339700 448691707 227126288 732582369 22321575 772068709 845046234 659138186 590957048 334105643 362395514 642595961 882697891 626563663 103350344 562477275 100905305 340315196 863720534 948702475 737698063 904006393 764235998 92156727 276141699 320441708 352692354 487440663 523977589 145168204 192466756 828432119 327431253 281137104 472919113 962791584 901176197 522239709 265553261 819876765 818154560 659117066 429445735 490772933 705507946 907595073 728801585 820372453 329719643 392525543 908173231 10546344 645137190 677820216 437461814 597991669 8955704 152405902 195677459 52748384 258559703 14871455 462612932 983302740 357899905 807838275 358288311 34492058 315815079 72193301 86438470 787795581 74480244 531371137 264810486 791909711 498940062 780284388 402397759 783976825 654774869 449473057 275742579 773440083 863457208 656210490 354264186 102462924 213208861 946646096 73217257 580952216 388362775 308283862 60341734 949942363 658767129 297949332 726308017 546752707 170759756 405836586 76383933 498645771 661335126 525890150 697940824 315963830 267080352 407249603 996332026 524680437 954308866 992499783 113891383 757943315 458210783 843792317 947587480 786459458 667464891 710563538 439947722 176891706 649856259 83256793 765654059 164370377 846172679 917975125 21143983 298304785 564204507 110682693 148545083 250160762 378544282 874620450 377741928 430046062 268695552 812829041 707471519 450676134 165464829 711373999 494904549 574114435 855047887 518093983 177866235 29735349 92526810 246481017 713863801 317892778 975660452 107777494 615630897 92017124 375537947 812836945 996398344 207674282 19729551 414987832 885712866 816929198 5529902 162775984 505177739 315503526 942793248 868626272 786621294 710353775 341105903 73144867 780759307 473328613 759915300 427981292 969224913 678698291 584966692 24767529 246703784 299867168 430581054 314028330 920952976 495218284 549158803 939839706 201505529 139085222 673616879 228416340 10044011 974937778 353179979 445993902 534591586 475361940 243100052 631136693 952270426 506069027 704634870 725826700 643992948 553663736 647898877 303643761 490908296 791617408 975108050 325302182 545904667 848087280 792323539 104491872 25649645 466025103 285090359 456927735 10473027 204817464 544203462 639614434 403237294 451260033 487634289 244677908 721543618 139378642 198083372 398693951 169735663 555364702 601255233 264478270 912520452 529652913 124792889 853176864 328846154 198284653 791017060 733689754 989868469 770429240 936530078 490638586 689801924 982256359 848991344 429488749 159230565 625134771 667636895 132254888 406205960 492900046 476559434 89413690 658555725 158726365 493344058 62585554 27362386 283741909 65374730 555527066 724677979 786865450 335488944 409090009 710575659 933681977 293572133 690498419 174988435 938134898 903715976 893634484 551706374 768026966 918616377 339160496 784424592 345551627 333963610 416938447 622742423 675709310 651155691 630250227 314246005 941269952 533861985 680399679 965363660 178143588 913286033 494996550 976249469 158994743 639135670 95983228 763440953 896277049 38347698 965803399 1913972 237116438 764212028 8821969 726133966 845881487 688006280 322177975 514220360 731480160 327890758 552072376 703837023 958696072 142914118 301409713 595848918 833539019 512027150 684804098 795927752 416010494 362653545 30391996 274671507 489643270 629495230 888495088 561253844 460815683 990763656 750936617 7519156 496358551 714111173 785839632 469322460 727142124 118022041 411215787 998764079 911013132 968659443 575614027 140429106 980372273 732464759 978946460 557138481 39464432 876620213 528372711 578332566 503451725 944258617 69077749 234077983 948690544 363967808 981030887 872587734 986273226 712090822 101502100 432601699 811279201 273959032 603216290 636103051 166318730 976163960 391046971 656528552 227903507 339893413 898853492 307484689 325899828 511741762 472329383 734040957 366047744 724838332 184800204 490836894 83970242 390878249 302386067 907418495 920833373 135932075 30300183 55212892 726243956 314737468 182007758 212708602 428917771 451185964 243909770 370420595 86935798 599091240 104902015 394674714 781813623 393992086 558799561 152522794 700222738 518921743 337245319 33217181 445366079 817383394 429936582 895552727 314650334 301044119 409848893 342314404 298942698 95609614 672194978 607199779 720810586 807454162 785994532 709426950 977745998 559931175 401123663 41053996 100114090 963147935 956363876 229577740 737128500 685201826 658616086 487665211 77587580 518847539 920231194 226618080 560253038 241846431 517315594 266978713 609653029 762970811 86792556 177487334 200127008 511801550 911195898 289855785 197904640 978559227 609049008 126930329 990400873 71321162 558619046 62959175 362770542 973046983 230462453 868263607 872022677 889208222 326529831 863010251 28663273 807221021 805557815 508730272 90034030 878868314 38124983 379461916 296401056 329199871 789713013 507188804 36455261 961137530 685871702 68945292 54913190 465953132 787691884 164530363 797146212 385204584 827676857 711194933 449765680 683895238 547444027 630979357 171801814 926181247 129230022 511149489 925901534 691558221 530971125 160407175 283227472 411617614 639615484 909889188 680690337 724676689 308056154 369805662 163354309 225036396 189337833 26776947 769020540 294359815 846838554 460086556 348185619 160596610 739941041 907129556 762634223 424578654 832981402 549719330 554010287 94547914 351007195 312101994 843271301 129865305 307556346 480270015 351283259 121089816 335056171 500215170 46156670 818501737 329442697 619457889 210462986 310113367 483382690 637498545 196706070 335410108 927524930 953644344 385424268 528952676 586285078 197635893 802449569 270410042 500426892 314101978 298559565 71299578 398499695 291003263 490613381 263549586 78722482 807290463 477262276 542459854 825591660 129806912 723886633 968903470 180021155 149349089 54732379 573449258 800907187 227805975 588104099 430267947 711558082 621830200 311113572 547426844 102818325 613033969 532048299 455342420 166851974 278741603 256545529 75192895 440321373 888111279 332066504 368707650 751750993 239355749 631477262 367243025 160620923 892308795 152621440 23195224 782484651 444558749 357653493 787885677 652581011 89039920 408745482 454536642 806677119 70804909 447830772 504141833 816924631 152531166 488655287 770607535 220133405 352809510 599136328 500424348 746458091 840564211 900854954 863709746 191068951 47876604 520273552 822021189 729720464 343417205 323449835 95749783 376108344 807422978 662439801 262134619 621651057 895775303 621426148 986046770 102259851 193015078 418846727 276217097 544800464 564040759 130736087 129357390 656822884 809624344 698565437 459520572 685864530 229891289 958932888 313589043 295650005 775386753 69186828 335227767 318183388 389484526 851061133 555604692 662227793 721877617 408630736 636769500 892657582 865766844 24085215 956830570 692208558 740865460 115718478 392394052 66251997 554988753 448874201 709502096 636994740 386256239 439133845 57357205 980548514 589545560 767390998 767777222 888663937 323964595 778443450 375907338 382982202 383542130 578158728 691303073 560640017 902523796 581215706 950551655 276050651 738396991 314368721 188243215 95639043 625685370 134802599 991224853 920694896 146767083 888547762 428810519 498710673 885945923 88628843 277227232 237595698 511759440 770866664 326314366 896258574 366606248 209003057 232596450 717869398 932235203 904308774 730072073 252460751 198189619 735024534 85192746 369808124 665749713 564320196 457925439 261969451 76354800 996834701 35864091 90623209 689197809 275977877 992775077 43884748 548947029 691291765 746670256 253151125 949275216 707805727 746076360 644530327 525135885 935125826 243582211 897396025 179784747 167657441 911638180 340953193 250806 968937444 795195239 466702396 725672326 15833957 164696320 596075910 237121520 126672933 181870038 79311161 62859535 353817874 673299863 76454323 960517516 701915757 744022736 827316332 697557563 882031618 49954466 875316158 683374821 921486399 274877759 141766635 85985504 334158453 306611278 538231624 430895834 905534721 619194601 187035191 980920182 145210267 407702569 546903175 214689413 580666626 21521390 172770955 830372993 387399173 160323648 595139151 710026249 792461488 722492860 795623638 902503663 912272236 199411480 171589455 375440532 635054774 423061673 607954676 78305085 214606028 267286393 99023398 61237042 730682422 659858487 97088952 544060477 982621335 489009816 607490266 993118997 532044986 796666034 346484137 386385741 429356000 641449736 355560758 443088014 605556235 617438896 633629171 649510843 511383278 298294184 759274224 704206190 228899173 692658953 781635733 406840693 71566805 403281919 711806207 990961682 364383614 422288173 457898899 30125550 361929299 480242342 57531700 300610802 784871931 746355130 328042206 464391442 562798348 761330569 212357143 156120469 271613775 209930132 650276180 899454037 413675107 195588836 530295727 484924635 129533779 330952481 718348442 946245360 2657216 538383689 757620435 85934885 107858713 870620625 828577741 204659312 944463880 855114766 647681371 556985603 956540488 145161799 352248775 634676658 343978535 875097673 224212801 352843584 44991733 814900924 660746673 390410829 828016259 673282600 221689775 6459951 852102127 818276780 53627395 628629427 504983185 289332561 435274320 201811271 135247059 329200493 638985614 969439787 864266109 247206023 20814610 643199066 408672100 811248074 889577591 599824100 324204178 468037862 834500616 159867155 843532362 71236112 144666697 670072994 828671070 948011216 243441744 230540765 91348396 194336324 171768717 401471675 648805417 778182057 960481609 859631797 452414793 284390290 37986071 679857835 848110417 198251834 281595925 258986708 273249741 639848088 517418288 900783214 945972250 344322649 263350160 675780112 452082121 934307695 499246604 283199598 233996428 754374583 682702460 208731131 901337969 267708954 603570174 172654188 996030824 412224507 700436457 611643205 297187883 432238517 119098028 918763549 900799821 129537787 407867868 819707230 102363285 230354715 845136552 555289204 381088943 193307859 492595822 986543946 849183876 220018008 552523866 204894862 343203717 400097729 453134945 89304524 503348547 681873944 457276521 449686198 490038628 743640052 188996232 372802720 443951230 513728975 550432257 320297629 367906490 619984706 98001492 918238697 91163773 16779353 604655833 559207164 524744359 809294642 713488634 642748503 753927465 288619451 147390241 513630943 670878333 947502373 15870142 844115845 325105589 98005615 485216732 179336214 130629743 371521503 141501618 347171156 438013628 33374601 114450945 129986509 739697513 404731660 738748329 174785863 674138292 900497203 567449986 304698164 337762017 966168121 282151311 670601079 61034791 12403830 483164293 682579294 887430780 235302697 823094101 825523633 570102548 282282888 204823423 166530319 352421528 879553644 159509559 34974968 250364114 589568792 690694651 921674143 851365268 509067572 386354303 276394777 650399091 210837700 976925926 339718080 316209384 867411237 659573853 500053923 266171718 197428508 487148059 407248139 623492310 566793290 222691851 781630695 298131577 441933784 593669067 322635713 607193699 358707915 585513187 426548090 453722675 430781462 993283487 93692695 576790657 379633806 553893796 145283929 410441157 812971879 91505667 653450866 285006000 867795382 665726244 29926210 416010446 382440041 504075248 626751228 797305098 166273563 648057743 414094204 121652421 329599063 987390004 325087360 550017749 787563801 907363602 958084158 195042598 156458388 195865996 477840301 667722309 92509162 619138231 977689597 601851801 564877416 182968573 715484230 996907027 7924148 881561400 795332750 851839389 681062889 797780544 651015307 636247607 688151032 94144384 451330 903950949 697272849 346395077 617962266 444751280 746564873 327768824 139197475 785317750 854845815 348521312 846080753 455645907 922817122 512173764 818798404 799637559 810565823 559302471 464630260 455793196 452159264 200871305 727981322 627391787 541437445 86878456 786951405 151681981 622026845 331968658 367930224 172240733 582503633 990840811 351338269 806861592 269203076 120414677 212858765 972900104 467137155 135470488 441689393 114027630 316644634 957505431 611588546 21510199 927879719 873728713 374601773 680765182 489343537 820113807 627377005 794400729 964837217 996746059 288478221 881310011 10916048 183051966 534359111 688405694 388086130 388242104 742737961 616257613 276872714 728349093 546145196 454886774 317543515 869440989 850944295 408907869 249675096 333561751 715722258 990617700 667033700 58381526 552049804 573001809 813081655 44484692 185687422 233701414 213804500 571912854 995817627 748065866 988372820 158885468 241892311 86053324 368251056 388610191 449349782 875027083 940589423 109582306 886304305 246943456 758727038 537303722 297702882 770308140 920806350 276215602 506211792 753131990 274155281 312611577 185259703 97718451 273583608 762311604 904046822 552505758 515342346 173083532 6109475 948128585 161571730 525799612 942189375 357438724 161733398 377167637 105160788 322316545 969974908 846974117 865337094 799321717 214690442 411834434 252569106 422727033 493852539 910232988 354705476 248672318 365267537 662529727 311208512 357225592 105583453 423059138 691262575 522687289 987221587 499339974 142417193 985036067 683875917 763867590 535722685 679078580 699500079 932333987 878159286 161309852 256305237 248409428 601886602 924183307 215069667 148577621 215096799 99946041 496561020 860880098 509293682 620650707 150058029 619692312 196198154 374752046 214923941 334229470 170343403 13080754 397637748 199013930 315342278 705378552 361066758 38433260 844842160 953937559 302143315 83195311 130342757 829210870 640094640 190254049 762623109 557884758 254287999 980890334 663942972 558526596 668139712 529700852 109479147 393552945 617711322 755326049 175757932 391103578 806324911 182638671 220789091 155343832 232401963 608515240 19924623 363930879 636530620 349325371 288829677 962457581 890936023 59812289 684637946 856235162 358414647 282929280 132834608 893851983 889056331 162940262 156247750 364081017 592181917 531323048 960961446 747318459 626180214 717646362 242630236 228075818 861963280 124773131 578480616 550743204 789648668 428352080 390492332 137483512 482347524 990129218 818971854 803170463 401159977 170426020 305559671 154927790 680789721 925517316 474772850 211717243 249711526 458504685 213523527 812734533 742159585 213913984 579959671 603907737 842463019 547725704 665809214 915850598 662132549 786215040 230952673 899225927 679584713 398410642 574882556 488381628 819503462 709076512 384554431 282343269 165443790 181830019 854779432 22015053 387214989 252373285 506611733 369859970 127783764 417721793 291352024 510192405 574250086 233703306 452095247 425714225 348903002 288479955 717522342 728759581 520461841 894078645 647224572 233788999 895090814 361776555 911500912 55937389 243821489 703108691 567476484 500950843 657943767 975943406 722474157 891454832 679693795 575563601 832724472 996667755 991978440 927626371 478793212 795332737 463561809 256783459 427728530 880395282 161097254 309026800 122000155 724525527 467030239 805580537 126537016 936057396 260634266 884489416 820996615 679820906 393458689 471434433 593304633 362885920 362060416 188261394 680259263 383800369 59844476 952294095 456176334 686449531 959403312 124138226 1560665 603104026 783170715 617604531 380861054 809269378 714704872 559336178 160587095 770999597 581094477 768357751 258779478 864706238 137351930 874483531 518728670 198890646 859183768 867139082 514649524 889966811 101197575 543548658 812106526 736534421 333140577 619215811 758236186 571868044 82791620 341071189 282313349 393086403 769199401 12087540 275517321 468698040 903349953 102562771 901896862 895205392 751204506 180880128 865534825 723050470 87734055 521941400 196290575 457144315 80632895 926736062 133553817 754116661 770975814 441128035 485092602 693971493 945527602 204761668 817513815 305142901 86403300 519691139 238873889 512545862 813952527 479762042 264411002 462006790 942672711 520262287 138141722 437180074 734658921 30707482 963666303 153111450 131939161 198294773 127033032 422585332 575088234 291833177 267495294 868867466 459762914 938008181 488470902 657054242 133838124 591658166 38198409 629361577 961155909 229762864 211429220 360060167 95316105 686869833 439891268 847293653 490057680 928086343 555022821 872728906 184427941 170259388 326888657 528593609 559479299 843612823 222651806 14678896 892793130 575341897 439496561 644550406 507614525 751238487 256459008 713401138 394150861 540988454 149684524 417825865 751066583 472040159 568459671 619544002 447482941 692959417 803872364 61541717 406226304 841411840 130228781 535581379 721369274 961335065 25504494 969577747 212910849 567207672 485493548 195344148 407574805 802130016 650081368 762036427 84043358 137133698 692914746 483370109 120518527 735838884 108567331 683676554 905082506 917875731 966308354 811790230 503788555 835542966 650415666 540833897 884993428 96207397 259774735 135104768 993255236 782965162 328294050 867044519 399494372 30758427 107668092 413278168 887555352 132867564 116684099 714486974 165883056 5297680 369272522 767875514 226222216 634382906 240706420 521114545 263298205 329659370 408357710 698219005 279106899 68517200 707043089 426368304 393016379 636761540 831349263 866709498 608252440 719364786 489788675 864497485 237965381 362577544 614965226 28409460 462190890 996408673 369192279 498948741 197467583 931135317 987345708 805868654 438939983 338115511 251494942 733455462 604572860 6506868 327196955 985771180 829157375 392392541 709169935 27524530 215129102 913033629 267640328 219306662 139518093 758211855 566354272 461480121 873139469 465455030 750612136 868856747 63611839 331234410 805089981 483801739 258688831 363308078 181000214 488707349 719271245 46463296 172453973 763894754 959362708 509799781 218752740 105172430 639045711 781911529 576788974 740695040 377976027 85075703 318560572 416171629 488277614 690881849 716449353 691032030 817153224 6907133 671745847 232616982 518077512 494600464 755878840 962887141 52074792 750565929 584044345 707508234 114114429 798404468 88473764 755374325 341002091 388381880 103462247 198445492 529179549 712049329 74017714 445045784 640168263 357669041 84702196 499766233 81931929 173515811 67784881 461132343 506208082 938849244 869148211 337837635 746476865 868338355 135838437 188546991 541918810 275894357 859404594 307362052 614779565 2135151 791645553 738198495 657404842 63948564 863083863 35661541 374510170 12238577 990847936 733328452 798200898 190194404 731634010 622878313 24494618 976480829 25059881 369108530 639682645 547265044 561137296 166116048 646288277 547243955 226585228 246923038 108528346 335421838 147124535 442780491 57998984 902132734 422945305 898304651 730502012 476541750 102347093 312831648 103921940 787091057 509241887 874969326 465001968 126233005 437238742 115767024 969730818 316693980 674483129 466614522 932792323 851114048 374206533 819702232 137329348 580965062 394140608 210925819 707921919 930293796 310430322 408417877 198312522 757423623 505293211 469721881 413426559 292747782 209288243 20605151 549215180 551336919 65613281 369246008 280501301 857256987 909388901 11015683 809383788 87693437 903562831 873289991 653930700 323714495 309235500 922417259 614305302 151013327 783297326 865941533 736013550 153064617 772647253 438302092 678318630 327915316 157103868 670686921 814379392 10545485 870423750 12629767 22761475 443499613 667006307 926327600 64812891 649375946 153115923 439498036 998668059 520694884 210001535 416693593 694068650 310475571 70457506 918575347 926173589 86529224 594163753 36678945 727778190 802220691 321524815 931160494 431383051 740559404 497607071 199673519 474071117 957065654 690352953 948968575 63209905 455482386 810680122 169952531 298341236 114363712 93943899 583249662 231341600 716880888 437617638 860776447 471729863 967686550 452580207 124901692 673494831 815725533 708970068 972298570 181308903 424942805 601699452 487240961 764706865 704815854 356985529 115159230 722527591 144348920 626243214 332279398 533172415 967681947 632369432 143021994 275200409 335173597 503724588 743682073 79449090 68584202 244266793 913263934 288585902 138937973 424280256 125512282 662194500 112432464 949704424 441923286 379078453 161594109 783968887 12409390 73251505 611354861 530262654 285299721 128497753 528129398 390441282 728460183 616705626 687591866 746695414 583916340 267555550 609253445 79703411 157129621 895039426 245992940 76764264 117087396 683436521 168864292 100225175 672166099 186948656 559034331 401836176 183937663 817126499 247914841 672047012 16264714 117916702 294878039 723079112 388295397 432140389 954458495 174919516 639559198 182541817 510999653 788506458 310328319 79485941 580242924 670196909 411911397 687547023 892880944 388319786 544585827 941310287 965712230 374788832 808064361 889155619 643684191 106177652 733024887 214628088 220087516 998177629 938853002 142939054 389787691 205244654 592965552 653860359 733863810 667612136 229379076 543062403 260421666 506327407 762802793 563783330 401419621 87472133 199698180 519854 696153639 410088316 203570459 445046642 322621459 728380956 180358406 990743153 182129641 455571069 869501285 513792849 580667918 585525904 3933686 114690852 886076662 659046892 213235850 620638060 90773631 94660514 153187899 269884561 785634377 202703313 898522133 798197690 467956387 683976873 495129992 322887017 895175193 575742971 368411661 789700329 573558473 962503758 751935485 382919477 947787464 950368461 536632814 138008641 658262159 639632354 220780458 822563523 251737321 874423141 141233344 951848713 315219449 4490467 821517831 223759788 109558974 783639072 383298527 772450536 547430672 989672870 879025513 126921920 235969758 652827458 917707739 524516116 188761309 743866950 54045220 693437176 857609122 463085699 554417603 876471267 489971604 573146544 870269512 666643457 987506555 633315739 423199357 465920186 452966721 146091116 818458368 275070966 339689393 770742314 203350499 265114292 981568298 721460086 551297286 797956372 629873192 131981927 153638230 756955904 58893423 420136641 665001755 813493631 402337025 446679820 576306326 809586845 212053991 548089222 555738311 146677946 733392778 976544619 152202849 702094086 436554547 381902657 451267825 907791892 740559503 194339786 430091692 83391224 417465942 675129116 725348013 748122410 72945812 366230116 549738338 385606735 562920336 857937947 270624717 935868435 272488020 786966618 758216958 574693990 850538894 131615417 339338809 45331287 342941430 850029802 776955440 3509547 160872078 499874655 139510697 382093388 900898451 286880987 399933781 940955928 248918888 804240333 993310144 381572881 614130722 703784416 301387350 652509812 554271644 221443269 447139751 284259739 993021538 354244356 867513957 825741578 333240210 304622086 61886454 487580403 462866595 431477733 202203870 205615719 597557208 560526836 464268877 159653463 671986253 962114248 333911239 193574320 374190505 192147956 779407028 567017603 129595256 464076916 10745704 421756747 344454344 819199981 164368934 743020875 258460079 852810248 419565886 385802374 466203154 702792787 215666442 684627821 937688581 28669876 945340867 760156723 811542281 368585420 910620132 254865243 684841144 480824847 467739997 104954800 457769415 761938413 732135532 251898038 306501949 247218886 445829656 629624279 242705429 203943707 420837523 983125610 277100768 960480735 43465582 6229166 715202801 773645997 343074915 616875586 550537472 533522565 952172505 855226725 687771721 503411326 275090535 134834514 783789269 511417722 555444119 511390417 776986244 980842118 421350216 986144954 865172123 12203503 170780201 412882021 495360749 144856205 625560571 213208990 860096503 303994102 873454034 801853701 729182459 164773608 167643653 853422708 296293309 975388840 652306495 289767345 792806350 314275723 204554769 772233981 60901618 802873237 619140503 955055159 40796984 988378068 989839333 616252990 623123289 722945912 488317564 804013829 945146549 460458928 95169642 388410134 148464070 682155515 719511407 743534641 922745352 35311129 885831195 803235311 841080952 961399044 638788891 140691337 63697011 822476039 881582907 934217530 529582363 126079152 68038651 563563879 304413862 181792158 928688732 665913910 902443049 297961117 145767337 661680665 617678661 691913987 20153712 479310018 587816455 681176343 361778544 504740584 310834877 806243730 118203676 815501923 974013367 955675269 755481004 181403979 101027547 532076529 80858395 442778577 10325310 715631792 131617007 562024008 749279057 140903007 74647839 967153132 783856779 822415357 393838336 202484806 559887 588725242 523732611 434324651 215984413 334987127 304593331 541238120 729826259 783214651 290352440 492205993 542714973 212969580 83622498 746569552 935213155 904724306 571624899 797618278 257052311 456373124 659410864 325027162 79168824 6660867 488280131 851947090 321819350 298800690 147701450 793131374 133150117 565743093 408746623 225783358 623430482 803024457 834800020 113223767 247560438 427418892 797205640 952695943 963272951 810508888 542297679 40591685 697958771 108339318 764813272 514254465 169311813 384617293 150231104 660986184 972281371 12785231 568339245 596342733 912877689 860940310 519452132 648041059 380659370 735014298 385068422 460364580 196683526 412537794 461663530 827234897 484758747 727958238 206715107 571265787 902138036 684834106 707801068 483573604 979969807 865677596 70749527 152566200 293034735 437652977 947571187 805288651 403542406 834740885 278729625 504536550 986815778 142662159 611026224 143325936 686786678 839704977 836727094 620474283 169707725 832374461 468481008 500280535 970060724 981449399 39027838 231843273 443773026 390592954 162198621 344884770 58488694 899333204 36174140 47262760 533868720 376958685 17062489 32756519 368892036 233390647 523629727 703015744 298170629 782944666 622165012 558380665 607902853 495060915 899441525 53122649 561082695 625298740 462692892 115410708 313329744 985072626 491296249 244115942 71058137 903078590 366044883 374947832 403571863 563080962 173862469 531685831 508725340 49308385 441763454 429360229 782866214 62092003 301201742 468765475 919426294 875239722 196569698 154021647 117661933 34657179 839632350 138015366 516603007 533922581 955878754 923745112 43311986 60401005 777196147 103165465 149557915 525835575 863211777 35029649 490860069 93789431 463709041 706413398 856550728 265954311 124875386 674450083 432645378 60757 683228909 660134512 166876240 485020023 562394929 824589681 138723754 651880211 901379771 610208580 724736032 814888531 525242772 45044351 385058074 955430809 971176663 245074724 113383461 355800344 901264190 173624371 214716447 525658365 511526665 306467499 100786230 267951957 419649771 269783189 893985639 188061079 118426396 967613842 727142093 783032656 282891203 109788891 488425066 705406999 469338330 934382949 992978487 643090770 222548062 357434506 620891302 908378294 737225065 253639841 941659533 680553209 563885080 543143100 148770700 479404568 156916569 802480868 269323102 225405025 344425672 492837963 451725769 709870065 231627679 423948728 348296303 807790301 731746859 140770066 987041394 597769520 300447498 141213125 431246662 913627281 777376894 629847690 490479716 134868030 319436628 18552139 53445846 310077022 635054018 611527678 985791636 540691500 263004894 384139271 319219569 736857480 770695714 147190778 537865724 698721455 651755032 436184794 946435351 976976020 569387645 131281357 602170849 809600331 433750676 625064736 911869117 681516563 736587416 671872994 507115903 97568912 718772337 571078113 584478117 56334488 845861219 613528578 866821360 888502328 495547467 561337150 425670299 530896103 896740019 697180896 173329173 980515387 507064759 569580022 417123588 841594559 180738924 488205796 304531985 389899082 253124518 168685202 764479115 655827213 132278221 55812046 22311281 54422186 91165661 642131225 511036136 208889720 120807237 320345511 394154856 519963174 336173672 217843725 350637148 924870238 748091551 713439006 664263343 830186495 879966680 559532163 710375514 209167104 323907248 593992899 930746479 216477758 169581082 253481947 940622237 583609351 81166184 106433894 248197192 44876153 352031054 972077390 133315720 64927255 305780131 175169867 911214827 66037881 139130502 676595068 663884877 829719543 150467509 523672142 139822683 279508729 322986166 827814522 540573014 179622234 72081764 968328204 947829910 977679510 364782256 400908331 808796239 169115379 691631997 759220797 73650000 756769869 786074894 612909673 718549329 996822561 81540633 118917597 354767862 878839519 340428460 768300563 773104676 10228823 11679775 225929908 577841462 504071968 979930237 356747380 863653983 740703177 216087359 874809192 845180264 274322449 234780296 470078217 679105809 355557178 748759282 331118756 449124167 691256548 948690772 991636899 88233283 570698440 515427390 275756098 203469196 452545894 188834758 645516601 168369656 935681972 177723151 369154848 518446008 102960028 755192865 981986114 86447107 497493654 315060682 633302094 397999371 606360023 49876248 760539277 302272003 242712429 478250548 719662682 809456401 351806204 960847318 731740058 832370161 685817736 910714219 312325488 641150870 308249273 141539023 152680542 230404004 801777970 403184295 212796648 364057970 682308488 480451811 317654986 914638772 795724010 578821982 684095975 855016964 520368246 519382805 494071116 596375972 505016265 173434258 576030725 567871069 587557676 800431292 702922049 718151225 667242525 485576431 173745869 293667195 47713828 396959788 317761041 333872971 531702306 352648645 257044463 422187880 89040421 756132511 790497678 716560533 134137261 158716508 96109654 48433571 658531178 605037005 314739091 847432856 320197392 898523733 603997532 108623852 453345567 423011022 301550008 810753937 921789773 974430523 597929987 129206986 331361884 694423406 91262662 815811498 202744120 861995395 166457937 801750933 495179332 80490219 985677551 125196091 368402450 267418791 991216033 194108490 269223415 269122365 462640284 829771048 245236995 94516760 947989396 844571485 877864441 563199722 238723111 499812543 980721955 666422001 913380635 889890988 556322257 834390957 294088418 89035341 413991294 507984440 17876652 381842847 255638931 314651898 501802583 215350807 558760713 34254030 649661111 683730469 609481302 316885003 108138197 617126965 278847863 763805582 691959528 654232656 425736255 892036780 27292692 68738720 690267268 542383329 575585179 74425647 685394972 209970831 540635197 29277548 447518054 890542295 103931275 625008431 643567235 255420855 479476196 325257809 435106964 49110534 604700138 552983640 332227540 214873499 179918017 771670543 327845566 837019100 286510356 165245109 5191247 278375389 634688523 886403874 831408293 360260611 76263279 585416512 371696033 520154401 875605644 182137712 863203574 501175851 418702522 419625335 834797549 718449456 998644065 199220705 48262964 93184725 652457166 878440501 498286994 628914982 181603251 828899984 952120541 203761281 247671054 945699591 37006662 393152853 631565998 119035934 74437423 953345649 179346733 495481184 772464252 94948650 722032699 826004029 336234841 854788723 481289374 164637552 301814794 56797844 41382201 533585926 125046217 102175357 831074352 628609372 49102371 223709328 96735307 684461751 792151230 948470533 152209137 16210452 653317834 2560650 685313341 983042094 952162872 507843033 156562666 709091879 846457591 421564976 571028347 5203913 277780703 84393350 912719978 931322377 151148870 41711279 427398963 497245392 455656502 867166500 662628506 28950115 744629311 488267153 90090220 70421634 923881051 788833567 29587051 562441908 667185439 922971388 51650877 406145073 674552489 478386948 138746659 709987746 993202475 552654885 571359909 615166429 718871326 907885958 642295337 944985553 973940802 242680562 847634969 974343727 874598768 68054000 484972844 784432835 927602417 935363373 648957826 900453060 236684255 184642039 203606117 347922530 279648220 939789236 939751121 702492633 326127129 261436193 983612624 34125025 138517502 181704777 152604279 959594873 780940547 231054285 523388793 421212283 799339443 447216051 784400507 902777481 179092612 132191127 820423521 990039916 136594008 289700749 112701830 825904570 960444173 682147240 229530469 628903256 994784967 482874530 372871206 427294332 620894925 407145019 299603385 622112286 43437735 618534340 152991621 970556113 176056943 79207258 743359889 42114997 437338567 117289690 134840595 821365689 924729033 348927047 538692119 539124304 357916843 264108373 697608504 244303789 440099571 121979983 219517052 547910570 121968224 185357174 585680065 570407122 847731696 218217602 946068489 316809042 390318251 107969550 989173184 662682632 883876511 308260665 99087095 971035307 523881322 711384924 63518191 723091093 269487386 119190795 378519486 72603498 200583533 479171706 113995196 208615264 898087168 721835305 473397208 689827349 667247431 302767078 202724710 434623445 909933851 693363635 549275391 576444703 448856840 711726232 428367858 957928609 801048419 972161636 415449003 600779546 106200169 930291787 762852934 305276556 539127806 671921798 986773 454197306 918675449 204475543 155830531 264304778 616700738 944802814 488170635 345289651 713635030 854547759 228323631 120829349 465118234 413963846 577850399 702347355 511793868 779543041 835302525 262686868 270338430 41382487 742700263 387725326 739632189 79479582 749273970 682833516 574359725 577067315 228703008 730338104 346151067 194636595 153747483 670673731 964514349 145621941 521491114 609877022 545459288 430962417 513828931 55432780 324355318 717436088 466678815 385925120 748437096 765086940 615960369 129559842 485801178 655742871 152883711 649527476 207804743 681383441 405716255 133779004 542606967 381561403 30918693 954191365 922243445 107736616 871220445 640149722 113157705 669216856 511828202 207536730 148473671 610418743 341363763 358868319 473977097 503375904 791433947 907946292 44201296 447521005 764787162 243074283 915884999 314801243 595238025 857283161 224372433 541784705 351782594 948759530 497022146 183215713 49835787 346362768 866425063 841225301 453746767 21308534 415216485 930517727 839109384 492411687 964452198 94756726 87414264 846737527 129311208 786957243 357080882 874711680 889821734 175374377 404938746 766847819 163485349 669778495 227994654 582031272 178242416 656551994 656201567 333055622 603762378 403026611 909663465 371897485 603311210 23253951 827653073 569225508 667564873 564487040 23138205 757002251 36692390 483080364 542287132 725140542 733930899 998706982 453629291 571222059 261568332 131136864 279169326 503412578 521996369 943148244 243035716 33483045 535495616 527967415 545737886 142202029 413072447 173137912 126321927 278823401 866558032 622917103 921548217 730652110 365402963 925369577 714074957 425003308 770967938 465468928 206252549 35492961 173155255 876070114 933186497 547705618 242512955 655004557 798387200 783334741 255450972 42523995 598921083 656016403 620466466 265935662 751139618 404667856 874591820 420857998 314930708 59310827 256873379 184278567 688414237 444889596 48411323 697357521 817914447 723464346 633001337 261605260 832394252 721268091 183157378 970928677 652224649 302888331 619911070 293601646 671687552 607394438 434084290 879385552 224987376 491156647 825305898 256448137 113974190 400946386 737543318 562094879 278795700 225241023 361658805 863129421 687609008 836004724 777787467 852732912 262816419 29621130 838261039 183576702 153078735 538104915 847402137 769863643 160945214 555371434 949824405 665049120 724794492 243842156 337313562 435581948 465023272 582647726 977893240 698509169 312497827 249590604 242859175 862105735 772985712 558432254 507575025 164848107 280723605 815240982 599046423 876234530 326172137 513618640 320107067 887701218 4717067 466663264 572159157 532806885 520819372 668735448 411700717 868677932 503547253 451267721 327655437 581649061 285854706 793379243 433153489 482569457 61059340 893072163 8797149 140822376 521084877 871971389 543893096 63892209 291362814 991946387 940747813 906018531 464359614 81415841 525187392 208627526 59373060 246726075 71058252 606787567 296926112 326328451 359313419 406366279 651164233 344614126 88187609 886759427 794278950 544082704 562997803 88026504 139201611 172772300 191535090 819261539 209296272 953413783 238487747 130425867 412908938 784818781 942517046 370180641 707608301 639481125 602857636 717514506 191841211 995897645 231824744 10886161 618737492 955654817 212411602 915263197 672185227 959999035 66322501 363066722 438668169 300744450 175233457 280171846 965525389 711508422 903841271 791960341 602925786 11019950 443581681 717082427 555310971 87825503 277577353 411557475 132276620 642476237 364585297 755329238 696028237 184708224 396573846 120308616 712279472 460166681 624685604 724848674 448985098 920599917 727432863 310395554 941659290 990970709 279592654 310028752 205145610 506149212 443061683 334947685 345585090 309100091 953554214 445161101 816508635 789879384 315757189 313011438 902766188 881668105 810866890 160689375 763930103 167328575 228623123 927029992 469398529 285072508 229269500 523131273 876092623 645725094 59787817 949536916 547788926 681449213 370548848 268955534 551070964 938647776 786920292 984040573 715148826 535078341 716738597 801206619 95438107 924903791 39886244 500070549 477908886 119148378 903321656 475662644 473453712 637106633 184941700 584083894 89387767 286184004 206189218 63074690 150223821 600200332 263473094 111798564 567100908 825036836 388926351 264792430 684973743 306497498 614421808 623318593 820377083 763255497 159861810 713409761 766670350 687400714 473076911 234433663 430564780 302182111 934970110 892935044 859833822 377956348 243290929 228969042 279575093 867717797 622783432 439798765 511281732 806643290 377054730 292630434 505501183 233942083 485363601 479806320 751132764 473603456 831712256 959354845 469158269 868298350 306627198 347536281 193950920 747832221 915575978 771866775 170133258 862937609 655765641 27277177 798532048 377316591 257528279 661623794 838529167 753964454 169294395 890741095 809662193 398667452 235584127 249806863 625343708 109008682 229390720 38931058 520592694 851289490 825372196 874860431 594155273 22177159 9712279 710727541 296811741 990446953 545282285 61479303 339338842 48456151 230948212 233314921 677827507 242675145 294212204 979089009 582640650 52177786 984658496 408678161 211071554 197937955 473636381 6334885 765701167 183255624 497126246 207998746 358924650 897563010 582258269 358327344 925186485 406556701 610239056 813014029 717966573 169245074 678571071 347717191 728227210 531056423 133822444 925172482 559693249 326859368 599986034 85184897 528898298 158051412 643913483 342628772 6659384 90912465 32635717 278892731 116063568 812502515 38240941 385827807 271930156 879120468 709964594 22398359 981767423 561194283 697127731 848740821 358833030 107419208 767237306 725681336 78600537 506505258 706432882 3255731 303254006 770425888 387147790 751908959 935655887 513154966 189624829 491777632 832281483 86955751 580295995 129099799 293302025 373103371 367543862 56498214 673633397 175032556 924094405 44481084 433768159 131631136 577610399 526653732 350765229 770481456 648738121 260980492 874556904 241224358 342682197 102883030 851056246 544073573 47832089 44207231 530848342 764574625 536481485 796305298 849712969 335030928 555029803 993296783 141983088 867295168 89539581 919029897 445460030 136744548 946281970 618115163 970080386 211732369 863999457 423302072 345010088 345043557 507885359 661424305 7310110 974639604 911262784 737565927 751274276 316266035 210547696 152221510 416274929 966196217 886820176 859883790 874892266 944199683 256432836 741882692 35664272 159663332 992355544 802467358 241671867 906274869 453414191 988750189 220045831 567367237 183909245 27182762 615621075 427046855 182531073 822128468 663472971 376845910 928991787 431565550 971223872 275860145 365699509 75075135 925617208 755285072 343094782 730835793 390874360 347616020 9143061 672195702 859088570 693803266 496172566 34004532 389092765 401418711 636538742 79626587 397977 609975153 30031409 293164141 497529306 627923592 319483032 511809390 826135620 686372774 350444231 871123971 220231449 452557362 802019189 280939341 401161589 64637205 199814140 952110333 402407704 472958663 567535620 707030906 775730286 627555267 4430272 123169238 446045783 595196768 943356459 538699799 781597452 632029205 93541850 955368769 495564093 625194991 178961407 190327299 384878826 586900798 167588434 382711903 67725414 606449121 295920589 516720007 324587751 724318685 311555753 702687202 779197241 138433147 719378354 768855175 323811567 571575055 387117709 84065097 961946549 128639021 224207826 684836913 810120596 456206718 643421110 678645985 41621173 985133627 531934214 60060960 448633655 830134440 668310921 722115777 52768922 573154128 646634566 803899650 550827088 613557100 248707771 98065430 333096605 328226473 448288891 188132316 651977618 399626768 688513156 125989788 14796734 824476821 715955831 138727284 495517132 449863060 603171358 932248374 333158911 723839492 692910587 156537235 237927656 506468542 78260049 330935807 147626279 201882410 201482681 386940215 299827195 498900167 616704472 569949677 431826031 412384623 445291806 578253193 389141050 743861459 984794995 68302543 350144298 670784326 817475556 611554388 494746979 526557957 912501155 87858910 819730378 407551697 477781343 858557173 409826867 918371518 581506759 685998734 882562710 690857169 472717250 64143386 667338547 203725376 942485679 769791372 560225609 327960544 900967268 172267731 7652880 622239718 832201561 595456768 296411585 361866322 909195131 449314120 401861945 447053109 110054153 137229984 971003205 66061424 720410839 57536343 9557336 501155273 236770799 428206468 918995729 871245948 150330808 282775619 786452647 277908687 560799172 811593520 646110627 654899968 921212664 103977075 435444144 116005427 201024543 356406822 479924647 486895741 434040382 803372007 975571334 71377355 397196797 610224064 374070118 989469989 333041673 351461417 381475803 983566368 241027363 133371444 557639584 402368501 337929067 84398420 320546900 204795168 182049816 574254339 125165585 57038720 682039658 152123580 533107499 683106161 586357272 809358331 651445503 259737091 616891246 495969939 895883503 777007232 733956614 480303981 210900876 546600634 684764362 621603408 729989011 885967242 325099298 256781865 55147633 95994541 190075499 938591407 384017783 455863970 343023354 294549385 460338669 550390655 367462741 389494813 134831595 589909902 898412206 232091168 512953257 770090065 679074220 229390416 300704132 107673363 966025372 693169193 331566028 429043218 416742614 220424962 887260258 770591788 533094063 880147212 890895978 40828274 551989447 732591615 823610206 196696261 519440790 772672966 451522947 894220806 846079801 495733680 213628215 11842791 397929242 444973670 319979403 311185238 688641800 946662815 730013965 120893429 112677140 21057836 760747198 79168641 998037580 628330512 751994517 232894648 156938725 676758848 129137473 859539124 219311433 339341528 102385246 857862894 177227984 347719713 991535397 462634137 732043133 792157013 351638381 887316360 988618522 230126472 243964603 704198597 4296938 418071868 239731012 147902806 767657655 696376505 438737854 262319003 93050306 511432230 533743209 935346785 961671073 343503149 604807154 159129094 189111538 391992338 831421581 769929538 57384996 161718080 522329694 815255210 158999312 285051334 673122586 454481485 678785372 903545870 78085577 188143660 306611114 809833411 645093393 959404818 574426188 607206651 564483135 229487993 13384978 417493540 306123417 808717855 160024522 62394233 15711072 46246014 417753062 909176119 68348520 966179605 764186076 555884484 109306915 534666077 928293328 393705326 796015099 819866848 679159120 208474649 397727963 191717559 974585761 78863368 720896469 795655906 861618643 261232508 189154230 218365772 423645207 31204626 173664300 122141063 983869003 643500763 352598853 185162820 532559477 959110330 179093658 209974234 594966288 222404317 451974086 742164803 30043762 309442943 726141106 295844309 916931928 649420658 975491850 841681368 975848544 882445505 747528757 267682249 180209186 838580336 685873018 31050683 455563747 960719814 888245380 513688276 480972408 314251060 281579627 364756911 788198351 138465659 534718711 786841590 862094406 502981962 740585041 87597148 125980004 672691321 166033851 810232846 12146416 462750922 216444349 664788615 579508045 843361319 520675353 220969059 718905838 763824478 810491113 565354899 692536662 596464169 957062088 992921150 797331705 199835374 132073108 787801278 267906289 657112215 374958871 319607725 903338611 621062112 271805212 879621928 264705529 719023967 198098699 29739837 230064635 829821369 371737137 286275021 923510964 388829705 65956471 443208957 714042549 353719026 499453573 970842560 447261151 327204863 996111979 824866715 729749827 523533328 967425195 275539924 333767940 850623001 817025990 434776943 969594674 447443361 967527663 814949888 466294716 63642838 305257684 949692646 519867593 227928805 780574594 701956268 820660094 773374666 773594150 163703061 203158923 66308723 163366606 54723266 212997981 254331585 711571926 909053243 155464942 725249492 857311253 275019472 942299900 807495477 472866148 426510560 242030990 95024019 40834248 254514156 9369164 324760782 832879015 190702829 131917337 530462814 507010506 516427778 438080951 224620652 734461374 223231086 226590830 5833331 966063593 738486758 496315198 32529415 849908461 151128270 829445165 812254420 786314474 56822496 517924642 466554003 35941546 947538081 426147782 446858866 876286484 466312745 346130763 43004327 812700492 118643455 201810952 304261567 575180907 326686382 175676590 151077622 217471158 574448694 646606624 897412805 203581291 109178825 293188370 906603911 34143245 424126071 980222627 725552941 406026630 187361441 535485010 359436002 714909231 434442254 702701726 883913799 447420780 173939739 310288501 644889228 930741623 562494228 480942162 391199171 57608061 506718768 898898463 366619708 801001246 65350100 389543699 939106656 771742846 787201083 809358491 720018679 499828512 912597260 63551509 818849734 362722052 318948865 960296460 220399001 256899819 660800758 871094818 909080364 852958262 875807595 873340615 316038263 898819689 971367232 179647999 139645173 512556315 912327571 888846553 161602175 326085665 367603416 856553469 101756003 426814311 249964680 427545033 56670404 539585413 597466846 656038008 258120864 187036451 600467962 842497171 123636513 879654774 484903552 33147547 773607704 676809592 661474324 537273966 645156866 30736868 652682891 668138418 636744587 710147159 494127852 762571137 339840038 866923389 363613329 973051664 183697484 343422801 616459579 507142891 880109380 646890723 269343055 145278933 442441631 706712269 622340114 506050609 645717852 704361128 66112464 905332860 419767839 490526682 356981958 190705882 267862021 556176335 212393674 216256351 11907428 960219170 900076205 818821347 640340843 844442494 866888645 429187296 845743008 249453991 277241844 326642350 923982180 618446108 89505462 726312568 974052402 771551153 818488721 700102003 897595928 388175642 451777143 443622124 27947463 708464799 612487486 670508111 516760315 962336154 224064348 904293179 963347181 423741292 888424605 361974365 769652679 77464696 759755916 59171047 349045764 66509436 229440637 720716344 396856386 14544713 668770231 569351149 971889564 404637289 606814210 468017899 21521989 11572922 838674046 777113894 631642914 278020509 259480238 959441002 284794579 91026852 819739031 587079649 594406203 292308699 636669993 246290297 551851946 979848978 580444057 7227675 248830800 457395176 176856173 121051450 829434686 825434652 836364883 422681733 611299769 832974848 844548419 511857930 662984208 600437017 607167557 383565276 882744683 840937320 715980298 471070115 384169498 591773496 259446130 225108624 210604997 464320877 49587046 582208165 514892827 460290033 486343196 135582818 364717457 950251293 679811362 198890288 444748947 986650921 201516736 30983070 795560387 600876195 244148810 878509124 268719328 866262703 925710147 163352622 432679282 688547963 587066256 196082105 73236248 245201978 648552049 349479587 350194676 380775137 508633726 852558483 804460761 409935074 440861717 789557866 550690774 2691483 575904381 991458199 647131503 753650282 340291723 352923931 717046787 930001518 365945306 214405878 743332265 724012973 29533182 992583495 409807564 688599415 934611759 345606423 351463342 420653386 725710186 29513893 817839285 162958851 180461538 371507539 779616521 228222829 370742203 78372133 429217673 94771540 232728081 987967606 107609640 426308055 440250817 499566853 889317304 557984687 457492844 463093312 129662071 739534101 868057365 737827057 100944035 443773260 278600615 22465670 797116488 856967083 526439555 837784876 511565371 31466378 586468427 182795976 616259752 399061617 298285160 235229515 259183222 425446046 620195677 548047339 24340045 84760505 123796872 255318073 837021479 212330923 968357096 781920515 575581531 996950782 189740367 405715435 297182294 879966382 135912723 618730157 167794876 969058104 544699569 548609989 558388804 683681865 159932361 196614085 123067471 606243018 916114383 900736275 205840797 833262415 736314020 452993421 732742320 820329176 480826733 481922864 863127883 405826527 884666279 491546141 270606723 468060584 482224175 134669537 468987769 533693515 508908853 351960805 497434283 197840268 25533814 982758666 481962864 471400262 945275818 201316371 90291967 870961958 43879248 256690317 658484074 545515802 589253227 409396379 963378895 667717160 622024370 647435231 294274257 593787817 48380175 957078009 146104418 25744108 419080748 208982903 202190402 596788798 674280513 424064081 675947025 120300381 628064532 409408858 780912132 95697817 115041893 209471996 440816294 974317152 376828116 758964557 715928121 146774226 427151353 470647549 304436045 386799695 733786690 941573130 277495215 728316340 653084517 117465691 689252142 464634465 734742559 515387054 343852700 689969338 740395995 614706188 710479475 25656416 311545894 180754383 976717447 3446212 879485298 857116746 479927222 368072138 460816705 506411807 948092388 944650214 428989487 680693470 132563424 805748913 27753097 527319085 473245069 880261442 622580505 87020284 461043632 292302187 721687237 940268819 91078121 361442504 552574515 428391414 92402457 867902269 424752931 270547859 876932410 172854395 994649290 584891737 13773439 527459466 160246125 88883054 332031495 239893126 38082354 641895488 60263671 398939190 25380617 934028002 154900606 112575448 157817772 605454383 152061427 586268279 757242694 282885902 155589116 141793172 72060144 452343361 486602004 6989075 710325489 846042339 731362218 48119128 217849547 238752428 475050410 716815490 875839736 873795528 893709613 69610486 804986635 570498145 240207932 283514629 844181109 202978916 699246593 867177491 399173778 864974376 570294812 586477812 106576094 745329755 413444072 194049624 591735436 594791675 285243197 730238286 23227323 589263637 217201645 898952713 200307746 630514758 545611800 615989469 133916264 495900353 870585276 379730502 797739290 705825152 413555844 368246126 938426487 525069344 304448421 218428198 84711215 604265707 733978287 828738058 854170319 716351783 704758130 170767553 589808563 698553468 761434651 758911066 726550510 471770593 3559469 905298858 566348863 92893888 505106429 892463501 853986689 575117026 523478415 688590394 157557386 729634351 727299731 25607226 122718840 882814641 220800264 405100658 76942093 119601895 770571047 736505705 192560811 92299218 759995130 135186528 301479817 350970591 350443677 12160759 350100238 147704786 878129198 516716931 664325748 740130338 37601646 98311200 737572206 36082554 931564215 750417554 520991372 241385416 88928949 752491600 441380933 657968018 12785504 882927089 958121186 912580795 610426759 411688233 895379139 186602579 688296778 299434464 721345879 457797880 949221266 569533608 127414786 590713232 635057070 175577912 871437331 235445802 305284517 595816046 570130101 577702385 508825636 414519846 925845290 104206326 865652023 823835124 781872415 949905368 656317408 427008198 764141811 409057 757207855 579669083 897898728 153535967 128944262 41004136 314807494 199322578 330599941 733279829 810648560 944734097 59182128 140877290 607453543 277622896 263313715 405265675 516158614 674748937 983618679 39518208 461350831 417513288 471517919 875271071 47800879 615924331 778564389 191924189 591721276 446577178 649211570 332795781 415974228 580388326 59515715 831747319 911747095 794496946 308257842 430582602 32788481 235460235 529000955 357700811 351739717 416601555 902685818 890149857 848601900 129915582 165485383 994420504 424484994 113342464 126794055 123913432 687985274 337832633 462010413 864595980 386282686 532965742 930440244 157709469 774150840 661934795 519755867 991812036 618738310 59940571 562457357 365235327 35250460 577103580 838442268 519782617 678232824 797860248 808007123 503322912 77311589 676108705 670119790 148939815 660835003 734680292 198125336 476461594 92000116 136977529 163429901 239036512 107608988 170429567 886672548 368649072 645072812 832168512 492702150 258199248 548160492 626923981 954502088 895728876 806192412 298056038 914773337 192217501 832629937 231240845 416039740 207022018 129443673 146781989 561678583 176652399 307010639 576166223 212525052 644116550 965635657 768265659 409979536 518765434 608180785 535284900 990741021 40578047 344527899 783685886 898728989 783188987 959778881 847366850 1628308 982776411 332266048 930574667 773364165 147456225 257979548 592548496 662353579 904199439 206200094 54284376 181702802 435378277 538641968 623649037 210549330 685567480 47825077 568933125 158850251 161934830 197407579 929251218 557794380 528786502 999422823 992963836 945781638 512495213 4682330 100108223 178681601 408408238 954372681 834275227 727013913 799536740 578860820 262084017 796525724 155354240 630004138 836462730 247165624 391038145 322035048 429649159 967386830 876640748 876878477 533678742 635523161 50567293 499037840 522841420 715891376 80391815 62742828 256885459 984709757 944659830 483757838 796158787 631136312 771484599 681404016 354779307 527632059 613735479 36793059 395691267 105905398 106307910 814108607 879075183 591791984 222673795 238891732 92936579 754081630 520312789 607150127 370715009 218565702 14841833 484437327 964876289 849748686 59207063 497541886 277282368 972676735 202540596 82681124 929288747 796428878 875344221 538143472 992757046 980042051 621857425 664727137 268692977 690810885 586000881 935450229 569775890 768587372 214989797 340027679 728536912 314987111 852032733 30079187 433326418 948389943 877449219 696536065 177537531 532102049 491422258 587258302 93385338 10182686 29498448 465314747 699564213 235557646 124020375 266184199 659742793 712153263 710485219 938733049 711894495 392296253 211288752 264246398 837291447 824446247 832145982 628725418 355097835 390427801 188566733 358982424 149022753 582532143 229624080 854427707 618629529 393248650 234298872 727524026 521264123 920699890 284585096 87321941 976539214 900713396 741950496 7962609 806548504 766472787 990441297 209265188 30518438 679914078 261941158 852326819 285953669 493018054 335337635 595871664 635918099 485253522 222411657 278572102 923584963 995027870 725746870 61364399 227845768 418855121 537485307 285907498 694169886 725473898 420284356 802836624 532697056 43221141 802031961 21835815 359046355 894633745 274342850 417748910 258293318 278004450 241760496 648174949 446185258 384488616 803645538 913795281 256555030 306842399 174527137 949334053 4310433 934689183 545228073 378211789 707837433 32852932 232837053 858974268 58965781 310348820 480484201 944169761 231981352 198359816 553278679 840266628 195044522 907473212 495641148 760423772 257273970 917199601 647410289 732289175 821785974 837490847 749349279 432841194 76104161 830644368 355257263 395078573 814153629 888422214 211601487 344463573 680040233 758427980 159003990 944770280 618738853 247293077 216728409 791555057 16912766 762920221 987320040 256661401 48719245 454149038 436244965 451888818 171307180 636181414 453300045 877603445 210447334 206354126 338354048 221749906 225462721 427681059 845920126 82280602 327058616 885006378 914629506 522398206 961777624 693452111 436340423 999222187 525752395 430236315 123889835 292600834 867589634 691879554 628537136 518686855 480859573 757087848 158491806 331043236 261577917 696088528 521216144 835251848 443224365 911590023 637763583 932012994 158531564 485910872 151133553 459624176 667452940 613861637 216561928 31389296 866650015 116309655 279305191 101773779 602743960 259235738 98882626 392818104 379780548 797507814 140372673 748766511 228551081 987104902 394155585 117540048 483393137 583189669 320875889 221833763 505767474 150362260 213422447 525928789 875234517 785750981 349949556 312008118 377318104 959456433 443180411 114468896 549550394 939555229 264824649 773621394 171172261 807936265 620684722 359133345 244983590 257870464 382431334 904465361 18784065 831467685 733218133 656682713 121468466 249867650 443872014 663510903 593966047 392784904 77198345 881596535 97898690 954661854 413742364 557990234 854692073 326083686 935090349 951658952 166491467 236764706 875535221 505169706 789178291 907561619 783217771 444398655 860627949 515585764 674275510 58241723 33320425 940554324 866173481 109657086 667686113 653524034 355372441 499439050 348504409 163678403 491197885 693950293 10975154 719931585 264995179 39320588 508384631 322521104 992887708 960838221 180890786 193770860 782008612 879492260 584672127 675847269 60162406 156802797 12289329 569626264 844305561 685598142 797502676 316412649 692120728 558560672 378188178 64525492 83718007 915680562 305115885 452396442 237838704 113390504 615389268 977746490 906815256 418543427 519056271 879046325 972780034 967097597 583511371 81657352 219805521 908746297 207518616 581346821 501250504 147430591 154149898 242453974 585442877 23745860 741055166 319115198 471659702 736545665 784770203 4996922 794086356 444045229 507475661 997025468 857650760 199610713 558703974 691697678 265669906 388292595 185149941 619397648 553269158 660408370 782510043 378862576 20286477 736092145 98752416 45037789 354549651 824372296 260294194 230341556 524840946 974435805 140430944 798883722 360141234 747014491 886190296 994189132 379989176 390890797 935291836 144795366 319285018 904038274 347170808 924462545 120879788 411134872 515490330 729647406 630632930 713259222 81729225 520073448 626493916 35404756 939534658 853906754 903608654 81580400 284572828 950965754 915729529 546461099 795063289 886575709 638502046 639869747 704797428 979318930 892321978 236888533 657233143 979894422 382243945 472961081 977528680 988706072 980598620 866713512 805940997 249661835 685477316 878552635 868979962 882981070 831811223 386150016 898804860 644632994 978024369 894077162 846711385 294078463 908674099 725413810 549577194 497750202 564265600 315217122 722293273 159362898 309471663 599391568 787920559 674497281 152868118 742523919 898850856 48293861 664315741 410728308 711271686 998405918 120197290 534891703 20320232 398302500 807590453 110595607 898770820 184693292 736914590 635284205 601643374 516644493 749714086 894027199 394397775 323934191 509664858 676101015 86968224 769666633 998015224 419378697 551269535 719266566 29718644 463718984 643896156 89050699 361674603 995299386 397548653 391853673 727026870 936295209 349642129 27365134 909354717 444912729 542952571 714365359 96850447 823911425 759667639 737316432 117123090 445193111 95795790 210472139 582674400 598656019 637920772 377194735 710023706 99673887 98377609 247971311 183486429 272964272 522040249 899893511 61465282 237912764 574307445 91139149 532810801 591054927 869217236 746153922 659601245 219292686 539733989 344163864 28315960 632368753 279814053 312369656 917162079 210523055 494948157 146704036 518962583 121411988 93811941 722816944 45067111 874591149 625713713 475724050 760066419 817914210 718587222 444980458 848581579 856421466 678144071 675040650 387428537 615078297 507197922 148052152 775560235 844695205 796774250 984685204 928703691 689591566 63212517 288136663 757770451 411320983 912354245 452514960 732535644 507451268 640663985 939046769 412232102 655963384 275131063 328999698 548713752 151381138 146042547 357921876 142808617 92438715 752037174 928000911 285568075 888293595 268160546 644846814 757104744 981448218 729154125 911621111 442141638 928474059 244142214 451312252 40604446 267972462 91331938 576595229 917148727 887308757 23549405 137357518 521197875 219724190 854234471 592305382 123777248 976452112 253581447 781655392 543617825 118625906 258425842 316778955 464614540 179872169 700405369 188829037 981712706 727158696 870528019 807606893 597819654 465412817 544999045 897474032 345868817 871637575 437077708 954154420 76842456 38586963 886046331 851364780 326660888 932060366 643594817 814137996 425714441 325950591 143473167 64990555 697379528 521338562 627504377 257297644 312223410 430612259 859795408 627118573 959304393 26808059 631372900 281038336 397212619 398247267 161015619 953980111 894002963 299052411 253018687 110631802 845601580 794181608 502737821 371094471 601519450 839913486 787801421 187550276 95989360 335010808 46361508 345314658 292193869 735955841 944644790 506261286 839488697 593195754 930739308 292024819 868528643 202966558 727988321 931097881 579037881 335792508 186173716 846485965 366685855 115145040 528366157 961282229 851132259 192623500 390372690 70780323 952912522 287431621 866051908 342586400 206859623 540190615 671794156 876454545 137334676 644738495 515970505 808438710 499394866 968348936 506066960 112840642 275033831 964380541 200602419 269793297 158083038 478617385 715330233 656968997 206622509 946271329 468359590 569692210 322039541 754263499 789821918 334747679 904668270 455365827 465905341 34991603 616598516 138512062 7241232 488067998 227654149 603657693 767323197 663459796 708971890 238213164 71539537 251442252 570287255 393681300 52818629 933464970 844152867 41753591 355351069 129290107 748708701 311668873 124250456 469374961 561099498 926685806 939050122 993521886 800378287 148348033 884597534 339833587 53121644 565478202 479202926 794293766 478212999 762425 662108403 139881956 335918502 426208608 504131844 499441214 194972323 947419843 734854808 82084246 570961282 154240791 595703627 159262030 919329034 501112693 170915711 251609076 849723220 806781071 930338178 5118340 836511372 520548670 137150552 264799441 284629213 169651859 602673150 28821563 261784992 365461228 97508495 25378827 934624138 928611166 52557979 385012130 180601193 36077267 800434799 599857007 222196797 646852522 636027735 87693089 884168600 93016444 705096522 474687697 427728896 335686640 733075834 733228 722694126 589681641 410386847 614711518 103022823 978069278 399723728 53824614 466970886 24974163 756770625 237534314 983513115 456778255 89898011 427296750 766096970 4896913 965889620 712209672 784911012 874689810 446907351 745194339 631551445 463811923 126304349 495792528 431377372 879070917 166800418 193439328 201429937 155511314 913122789 695334371 193008142 567832487 755546226 372264025 976431727 377205879 151125163 822732896 276546529 740691114 820126806 566342294 693722749 757425662 406781876 37354193 540294215 906570404 299575883 581803066 507263016 768909702 908765933 412629165 990109027 374602191 800164794 330483326 890873298 315772504 990698285 608887387 797734489 270114187 380391930 692346374 580140284 973797249 83373995 942596182 370254248 781269707 852384172 790080774 576695534 757271600 63002128 637136430 129583596 24172070 241537540 118468083 352897671 210839143 828655853 464414316 738299487 375237530 560005739 73660241 842732537 101938852 748008638 25171364 865329404 714810584 815950783 841993789 494082730 766732983 789535039 211685873 506740452 322800680 803736197 813642402 381948470 297505967 890869558 370923886 522892220 487061995 41583822 15321679 937867881 525854302 673468915 621277821 378462529 974797002 167910702 4570241 367194880 447226378 462896293 625948124 830865593 118467224 937497660 80667755 308005070 730896934 191209004 608639747 282858465 681328107 110044996 426733677 245792379 728338175 224748327 79453387 176249542 169781314 619908182 70889015 920927282 422466964 728773638 133536019 629387798 107748176 280621489 657653149 178004039 399512014 449762851 44976408 134106648 868332492 273829348 471869985 976318091 494881102 169319640 668882981 911364188 991021264 832151429 318274334 58726576 612605949 695555090 81762486 715061747 275495676 533359977 64513394 843679793 239124998 457341628 478953148 335622881 219874461 953842086 745678080 549950223 446461166 481501783 65309554 388128883 19319856 855247672 372531422 264319264 575601363 964304713 910427788 422080107 436980845 540820138 250268866 152491012 686991831 305132240 407818932 395533186 278147584 979415123 710270860 95572359 595705715 381723503 174575581 279446919 986904450 837533679 85417892 830401143 107861933 347425678 850307174 112298106 378211040 488669331 247169162 75655605 869294361 289250830 433306478 846935529 230566212 276600587 523175041 140106210 680858182 573773989 575177703 378474083 889990157 194056602 164084476 193596328 405456342 518446486 995128986 659418988 126985399 387988480 414191791 541480893 786729472 399735353 492536509 762766627 281375397 599631659 270243675 682800535 238774875 371769147 719380854 931980623 139547269 676724605 102971502 263197356 465495886 277145475 230721054 418543655 3886281 524118529 81354036 257959056 509844615 654575407 248276896 118342314 189660396 674761256 359351008 207385966 212937791 930694860 185742718 886032828 180439991 947030828 225332168 43532090 995169753 763704015 474997050 37525818 273613807 118282029 318158650 687783438 737146251 530420621 331131904 86709169 76038504 375961732 402799034 227616095 961162458 986197020 583437803 753821279 683736102 281494028 171430428 333229756 625242172 62524561 28442794 380075461 867479369 712616595 626185722 355846907 507462189 148531919 98580199 473740631 874151874 314013204 690850583 24551240 521376055 673656949 881902478 33086511 663417143 153721398 176379031 98322986 124898531 158171163 390132786 970860596 917694445 854092247 48710550 762894352 129103604 463396783 244677167 538285774 537976195 906660890 773146742 766741972 377761858 20171945 57935864 292197657 460401775 397283977 656783352 730271006 666178176 926249780 363810477 329474929 254506191 140540597 274885084 174995374 39356756 828210779 940169481 883227967 382187309 664241737 63412269 719579025 903655160 772063619 593704277 835623452 206741752 4844139 421492927 465268891 930107917 730326701 152146880 259824342 905014854 386019706 979425531 561868594 367821115 919204779 845463863 639564159 403890070 417000639 824851847 56753013 460790711 942029601 633995777 378218522 766272022 12746593 680688106 682619734 225477801 635827633 853262698 945834991 487778687 45327624 117578251 82032837 466698958 374157469 768244933 648065065 736793796 54922222 434213641 879019285 447246481 252844600 492288718 264930774 8419710 515726925 146547373 643271835 894390399 370108132 298667052 240126503 206064947 121947745 862144301 589535081 222322448 558435795 970763317 653680861 577292064 244006506 911753257 60830964 997555298 401737934 776219174 841130236 971171638 510095247 492389283 866836847 605224683 142366082 260338455 989386643 686334897 524435483 736700876 487580128 404233031 354471631 859329224 78717974 283566259 473030919 120238519 808784651 4941325 361524487 793450507 426910567 138139036 710467123 818402638 90393569 126388692 440731811 294576902 70103779 133009823 36421377 536176886 263319127 375515406 277830930 581146782 938438164 675310303 99159746 764175224 434190292 798542102 580081336 699029852 311328880 311605845 989696003 870517110 499299003 963994037 332727051 317953532 464921489 374589837 168752590 707719830 834612261 521975742 624443321 692783617 798543735 797425264 975770815 263077485 564812090 875074540 486162986 100455785 978047362 70821912 595679305 407936696 517873018 803201037 590092120 50902717 832605432 597284701 744801882 497444752 530805690 65615780 155437811 206888603 733328538 621747362 664235600 683780117 586931998 132565977 374884498 38678341 23823315 667743427 225222963 36146824 359648449 802689667 751039131 865683769 905245763 643075956 168485169 638112914 403196108 31888768 647494673 701078191 503152976 125819451 958050015 422632536 630101754 440606021 159930955 744060281 420925207 767544997 441713836 809200413 714034570 981380780 668744756 806516002 750458144 180864904 364013530 117912174 397822265 187657859 801949009 337753904 149218785 789070779 331570694 343477214 568860097 42987711 170030361 379582639 263801685 889951691 582922004 229642195 993396495 181745272 29495196 882309276 84208293 491705120 245197750 807365340 835716860 922952754 678597820 57750343 670984748 577615604 588277061 908562901 916002523 231251601 957433781 793662676 918510127 265979237 368652147 581511176 678416680 973231156 952507333 700196771 212937055 532217361 248061829 776308667 84231702 253379077 352780946 474315244 997709896 5634665 888497094 815015101 443532334 990987911 867627890 122689243 5461249 678950468 950827024 444709637 615692552 11437629 577984960 677132681 736544131 586228424 695787399 533225766 484644185 994863766 514936305 843476216 643166089 147579177 826579303 496477182 294455154 80441295 26929283 265284849 290463009 143251380 995489495 201351856 135275736 186730702 244282833 944403607 383086144 555567458 701393708 569301236 327624759 106725225 160547179 751095909 887293423 812988582 297657604 983059073 950305847 95652222 469707930 230996061 210260880 334627581 494937154 677361523 901689375 125547218 232834872 456023514 506779827 560384728 586956312 950060051 509615058 354765981 462755403 119440577 190119217 697138866 618277100 617114939 945734372 631042670 943876543 37072719 466326824 175107191 867181299 810712381 425034791 746512403 869941504 856555356 390394941 443312347 128512349 942247760 643536373 764239211 736114040 414490411 360822064 921430846 494891841 233519526 139050516 303016973 458139560 401717137 316687640 977668556 269774461 465552659 143922663 219710639 307452458 375446594 354467969 589437703 552835785 424090058 178377203 954819497 763787254 374276974 918031590 808612537 176968598 609536324 719029649 464558526 335392488 349380965 139087410 415982678 694081334 930371712 282400169 870023174 138895131 124656210 353935292 174927976 748458502 964690415 289963448 105421604 806153493 363778050 58843544 864725426 490711949 524158575 304244407 794302577 734781580 799421967 577727324 721581974 235818581 731548031 843599162 826711045 922442867 803688861 696618255 244304130 961149312 765927200 678169549 358828016 884285058 192759406 674723269 802705449 822526014 941195452 567642391 198357192 660059119 505273720 371728019 204121953 897348044 684758149 206727075 984637734 991964361 244772627 442082994 887749839 353327740 457857343 573223559 634047164 15833537 535030742 760822228 95198835 822631419 671413640 604341998 22667957 605539433 42703991 451929928 255918922 164111021 707380880 786833203 529850502 66313084 805208098 545109428 394282592 180329664 593468394 734161546 790049681 17855435 761244387 258007850 109970959 994871001 670947823 891300348 930415454 879128973 583446186 553775194 544032819 966461871 17035598 340787625 774940887 160011728 184337412 998943842 760691497 970981302 722177122 912075433 331852038 733593114 11498612 406283977 968783253 355182902 267688984 232269051 653194680 945246100 595353467 450851268 21691400 686116569 806438747 537411990 3369021 111259678 756634773 82788793 60844757 772047828 629593349 338270283 661527150 44761828 420594751 605224932 614489995 868407110 264001051 807709365 529817949 632310793 565495332 493248090 724901853 40226714 457815897 628397651 617387597 837653111 772023599 296886152 762173638 162766723 794581978 601468803 239391873 114351286 571427763 723456730 411604110 903203892 168521005 752720206 974548157 506339054 575499181 369901371 692645422 730140839 838008911 613810134 64402028 657399898 843259814 826388195 663168965 838864625 612034678 149433617 533265050 119647756 915241945 290752716 979634208 297949545 536274294 788282106 854264120 561952762 327966237 348721969 188320803 3011836 77173577 415061866 894886680 715741622 514408761 456729282 320747009 920745242 347163111 112280254 720188443 603411310 100073811 548499561 609942341 672497172 749755630 416700946 639580829 859177069 467481859 328993875 861762914 131426924 809788001 825591084 637112470 713048810 253645630 378474159 425693064 747176280 971635315 285899999 183967563 45238297 127486182 565736210 754991003 168379275 802348433 385056644 854303990 983672290 815786600 591999189 12332391 274058713 702670863 990637764 253019645 592451165 31821225 739288316 517154080 932841857 329683775 583541810 813943265 611709880 787523983 16701349 112286176 640315259 351972320 438985974 396169120 382490196 676597992 177202085 42936402 375907411 811581797 971484026 7955845 636007482 757023478 558128378 367074561 809256500 179183458 985249323 642130981 692359733 404751011 96744241 72952462 10387232 420776984 208117913 572012079 798367473 352117808 191630276 402291616 402443434 202053387 141557862 167615963 185311010 130417809 643989571 501575929 793730151 411261370 739359913 310656579 617668897 313492894 865605890 343757359 545504007 559028915 721191425 434299926 948230623 924953650 222564188 107602567 677893994 225165754 739964729 917135048 323363969 347019602 367251776 497179858 56361731 613081372 130947569 656143885 191889599 94836068 11849496 596517524 924734035 438796247 762204116 410141644 878932677 781027835 528105867 424558998 777048093 569021923 781772720 488305615 6122225 280426787 827382954 358959137 989822457 516360076 772387180 649649409 891069743 108352790 758816920 471406999 965829071 312598330 574750833 80227666 932265372 274668393 160006581 995497381 417477011 317123114 602009060 586928891 467432158 51420555 70722548 429178211 827198165 9150718 931201823 184478097 148578762 983692365 326720960 287828936 927831658 243844249 949608503 227588740 152220299 719832035 577265057 112079361 944387635 63217533 492176636 65126343 359331548 115453009 683549697 46622092 223328350 430396313 351223479 139615231 410932918 608531421 27616197 449155254 823385698 898101426 308966233 217765127 537415110 593990085 682341466 217315117 695641160 684084807 162173433 236463544 87725213 956524537 813871137 812954757 427671773 769749339 812038597 164193305 844686019 729769676 974528778 323779262 55060799 484443816 55822769 390036143 896357365 333217672 461073686 829908208 623304592 904516616 463706734 867889311 999386220 697756165 320433416 959652677 88799070 591345038 122077810 982750956 771949802 469079841 741765724 394780861 437376130 843400587 488473351 942023543 823480862 962377627 981716719 558991317 722597369 7345236 728310906 151713571 495128575 633864801 134242448 614848273 720723044 490678777 458990966 463921662 121622968 141306172 487440474 111624082 547168991 300174757 169957870 984546849 236627590 57198377 259137359 106530737 714456245 876651392 978630566 554700644 442445260 273158657 1963173 744584618 476835143 170181281 945631717 395712442 705292675 200234946 39403510 873423443 762342390 661280687 367908608 126979186 441492632 828541911 401457706 115981753 69754501 659840050 371647123 37948187 834863061 32134835 13312387 855666841 453288999 101362580 553811067 222080954 562733747 406276998 516919402 715723711 940258838 109142205 897030782 792130335 686248692 903620922 319643091 94938119 950081266 985261148 189183621 211478181 935488528 869460993 747628891 311951879 158380561 487031920 553173171 644586619 897177702 258577339 925186504 489095937 327368668 370383007 662931643 537484014 747152001 442787497 954832550 751444713 327045911 787383127 237113562 810105093 664142853 761564872 576544732 556650183 782092193 995461477 805797121 227374026 680508505 753936993 192380929 187527372 614610092 271450210 422620232 192140300 755467472 349707518 955468284 730304211 946560665 62091236 301658418 168226730 712355724 55988725 38824877 717917694 546201521 413023123 198052398 415171803 589974158 872892947 303426572 153622407 958608052 597605333 473589991 317588650 662853608 690809467 162445378 530031506 175926630 735123702 913951744 512485785 35355909 593921333 54492912 627342662 319426224 1496148 741150086 794696071 394047449 567693804 827398693 827672031 577279844 900705854 419285331 255365269 102119340 579647985 885014369 831735992 867462917 982672729 118477619 619120176 360996117 329075650 630187902 18268923 992909782 207080676 756972411 586313580 690094807 371252410 212285623 136371010 180973615 169969010 412841288 274466460 798598881 102815894 435018173 153959513 727156643 95254070 19208852 10180152 304777977 728538343 141693458 301121531 189158817 403796092 123574213 288800620 322537636 770635152 864161678 124426001 37162919 418223175 19901422 129632975 439002136 864555076 261326988 180907215 710368960 693298330 486817471 942705241 476782898 372757043 853144597 302201154 894313727 838301163 785939683 489003959 241032718 245572982 205494267 463418631 434640039 725474550 510624759 90429503 541819381 390127137 111280231 592821029 228511884 249906166 962509585 183294149 78890433 472828312 59953481 315787192 785483294 498568957 494032695 87659000 388217516 304874823 960573628 318907654 941876859 29676954 867460643 618632290 199201611 58267732 317921592 642285667 853627411 976314017 278774064 822253234 108224063 920055178 890207424 932705245 347438004 266297204 754946451 154815313 241936655 901939094 786492937 377489887 621285765 203388569 588235378 676590278 16493308 470646346 510671118 134034591 343591081 457585014 327363865 529720903 284553746 847075040 269240470 90294735 31179943 594292657 444312347 639579058 946897537 378628864 422329953 268263309 535061796 5402435 955771056 486635090 72607520 849043335 318877118 987140982 198060410 963895743 568467515 936529205 900258285 727743352 405147559 88885240 309264362 773986714 565916324 169955380 826726329 504121710 652188055 139649655 426235016 27651163 144428677 887129548 429340830 120449050 478287175 186198285 77904101 538440744 812140947 997015064 840308230 993172383 464365460 379061300 75050163 926126623 567549616 229399875 95931927 615329952 352377751 223801270 991664288 948967382 456111536 511265037 527558925 838299220 246266660 117724980 78850956 440517469 482475512 787459411 770136509 249692684 948286199 914189911 829836552 640070868 311578161 631721890 372505024 997767578 596623103 70082005 781101489 57069732 828036510 411360068 359178226 506125405 16911329 59702726 5295181 597775471 937850636 651661721 247889478 565407527 747866907 763628476 829210470 259674305 429677431 384486783 667780355 631979445 808736075 633317477 813785914 453789695 322284935 343209782 598865078 654145427 857086299 929474230 591346179 12213338 71965608 414431296 280194880 137743533 979730036 47001217 464296053 64443738 63739049 253952441 194801641 300417996 425423767 510523014 96201865 766731661 35487558 423831720 511104217 516481333 994452850 487868274 708519734 938043143 796020498 161908050 482031203 875867027 334730859 364515396 114855588 169071717 442734495 909126499 792819848 704140034 714370943 232116911 495423115 912320578 565592899 619481779 355927096 237226463 740551388 767343200 733543629 411091283 115321441 199269508 974604395 424581965 590735291 101372700 59850596 898878393 910373478 970240431 8405310 190512052 536694205 867691152 423456246 412366613 974644738 99846836 15515331 487193415 25994138 50046755 438944186 807804426 614450923 902013836 212203364 778177587 773009549 997568528 533531135 428388054 405460380 128614536 709007988 170665664 172406106 23703044 218210241 377518268 821463801 693770897 465318688 927880565 165350697 23251892 510233882 453860020 815024784 618905896 97625336 8314991 137260808 70367126 189846401 395911197 784667438 540282780 595048364 15251795 582378027 808955686 848367126 580362162 716159801 642777275 39698687 362801034 745109018 433509381 26192692 914722464 361147847 302586103 257506600 813086610 752537665 871417566 139776292 24919091 578365598 749857779 43226658 740613325 303739648 415865769 307051288 70664073 58061742 16580360 177944328 230709547 984019773 703511999 296228527 997752328 987930980 888516620 553917081 271784822 581004583 278717214 735498095 600521380 834361530 733641903 81629016 529374739 769341165 368081788 665934705 316584507 793255015 749620631 599839076 853678346 90003270 606195807 373379745 125239360 343103005 779990989 222743198 814266398 239761703 101290644 358271691 440778423 459270167 871097619 517052471 344718856 19310751 443281453 964656865 372613420 346267091 236189272 764446759 776299979 34146188 276917562 542709657 800287613 338583487 738297601 999486418 615494505 379490556 741122333 870200527 224205869 234664836 321549869 139810245 439587373 579763464 274173739 886841673 39669077 341323835 709912251 345410006 339130290 413530874 597860261 215100014 190298833 293084318 384400748 384764299 612436945 159601789 109720742 57093888 972909502 198045022 560786300 29352382 472603572 455146805 711517382 454337450 887085710 663314532 17207191 828464378 542771195 98288971 66722380 680260200 774100542 744563228 468415831 72259825 79281413 915239774 221916155 53810470 781930950 804859770 551901701 780227830 573797006 271571234 742492322 40372627 904690862 376576752 280284758 659067050 434838591 201787900 457265568 561179226 533393870 208928871 960190525 162010676 356240992 174279021 905142536 560667402 59544426 597054093 114186605 424749385 745355493 266990292 315403436 676803783 803182875 230891027 390578704 666958498 459723784 152264731 737497323 737449740 878998770 942539914 343285881 767426501 907900091 62834916 245739917 86954749 452989402 571573396 487525834 994336077 584012263 588688707 79708618 599776764 858788489 664450717 184913975 599290596 254588686 341335007 341852764 197855318 655979316 737494620 429567672 132966613 360534275 45391773 356980748 502554769 597482762 134888100 495440725 815913179 834238637 298873085 185715307 926234092 7665992 185895301 703308787 282140824 901490415 779674663 907666906 855021214 703363146 903445181 805586660 771280489 596638367 975037770 987068375 737784603 58773442 947514509 979570730 211555094 356190494 77578309 656445064 503381200 451178901 403962833 653229137 168246337 565860885 361472729 164641015 66844808 147066199 253738182 553573296 656423784 569939747 38143265 398297692 304635305 149912230 429589920 777930888 438968151 904402364 416596594 408402201 930532832 679132750 966109093 992990206 67261455 700838365 332184315 583800504 361400747 745888763 566975107 970250535 610602684 524277602 269764635 445796442 280380842 708583665 432634832 985971979 417243301 707982443 142922323 196451938 20146385 807119304 629726333 627334087 246336030 996016375 496221659 607632030 261567280 725543373 745734190 530748347 125280413 202683780 219049703 541726530 126688636 335795820 386587026 677205555 484039694 703575540 477053900 25166838 331886340 184337680 647930786 352709565 813767854 877023100 161944518 158553198 617149254 466024633 687840408 389731478 118707086 612614440 923294216 190544739 822929565 901275403 775467721 336596365 761501845 316117606 136658689 27262722 85514471 369293139 128820488 252896786 800181584 423732912 920111947 164657997 319925882 987713027 145830292 587518359 326106099 463012629 601478550 707025657 371519424 220156656 913256530 232022077 82887688 348214588 117138142 714786911 621629436 311513313 899521465 740924592 63694689 309091557 621155097 952348497 593579063 332233408 164467416 588053970 736808106 357758008 872917740 435405366 845483505 775936535 983085876 645590953 588735090 488660264 851016218 505813781 448653849 138469820 442320170 441487228 878203600 376423620 874920594 163046404 661634765 684834217 282214689 181427881 480097914 263335161 377680293 54062053 227686727 443057196 853993401 979668563 677796520 919111062 110414336 104347060 959923900 703604064 640314219 330728858 762027 135274539 93062230 766159145 706543197 657961262 768823477 859094700 524651893 803864254 337728013 978703212 545884854 423424960 930470597 389761036 975089014 425148934 236301151 659372343 395614686 862065422 387685936 104234337 534141082 994551979 978421299 85293689 224027849 339928187 397307644 502154929 878527103 534189539 925785344 607090510 690309743 810648690 340872946 867904180 281180898 450452700 59790063 278712473 974129660 940110669 609525331 312059613 408610032 133244478 855003344 822151119 938957695 49355033 505351236 611651208 592725555 474038279 434238545 91326758 833588914 830946115 71784601 66519139 437968178 10894480 606608110 37397488 518062423 21539932 488361590 254103680 596288296 413280061 934246520 899791520 9746672 428581826 834141867 766943758 657040887 576776858 186878745 162225873 686574368 843451051 921855772 380650916 178446984 662856635 192855391 736181280 912716950 563758878 871345241 802972911 355277955 472249947 475347977 292497937 449749415 329764028 58183319 940315554 11802458 903604212 356111443 516920586 181279166 70641777 662602328 119093227 593643614 444264288 953676905 190348670 982774066 456915170 130493302 653944635 628370307 552151537 570359492 504937722 291587014 765613600 178450186 46386400 197272723 250071319 102180867 703183296 238902802 217795430 881286515 990414438 251126712 57175287 487240840 920398640 336683794 294185011 619205951 396365506 11571236 530515781 614624692 613124456 594573325 651325815 361122658 505576536 265877699 967411346 638831192 240415638 116565231 849845379 580755325 849922112 339035362 289850785 736314050 719863836 910567055 396345792 207715191 735923600 32018103 45106702 725479293 900389211 411782755 935751601 843106628 308553620 994754581 915445121 277189317 346884667 352411079 607687058 322877497 161459130 247064563 497945203 129789090 39951683 380405277 569753175 179867963 313481540 241144864 229991355 697602563 770263892 852125171 528143669 385338682 347157849 876491347 777141992 900417226 437409903 972100738 128700934 369788189 654270329 41065619 829643013 515204732 478500810 542339104 881251569 568629722 205427103 771017715 14729501 862246476 156690351 851460998 855344398 624317014 909195726 5673832 471090872 159922905 99310595 100990403 937521034 963540798 76471424 959754478 54604957 384888672 47470377 398276167 808126541 832664378 330388702 519548598 664395865 903142751 648632131 439003876 666385929 835508810 3749139 207994433 107663225 699487881 849277455 241565022 957999919 279482074 761563460 579097571 887853397 819056908 223102643 285545635 378707313 547773028 465073058 545260368 458954037 306925497 170152910 84339420 678338606 103086401 198186859 291952110 739710078 955479021 844359983 260666413 629494588 769165566 163051861 183869942 359114796 194189496 266469856 725047553 630513846 663760640 769466037 494882204 753878265 915670832 387980023 162424751 175685279 252136007 476191242 592080412 464954006 638673200 275950329 149571386 138628999 268287740 798439826 704166092 858787044 266573253 476807499 504948186 773759770 370714811 549959517 657735797 928390363 174114534 58351806 775767009 659956216 738014420 287957949 197154691 609957448 263996404 818209066 631466541 302997498 571310949 888399553 260436218 597000712 809462377 871491397 914373576 129396288 595652983 615499001 428456642 114953663 413923303 60139935 532040578 626837354 173102888 633892248 942058463 265292183 620149699 393169110 134379769 112821967 421773029 734152769 400356140 786271414 807808959 567311398 686253052 887248021 465854995 414397098 553774174 433491725 862556167 541646038 992348822 832530469 604622949 863116916 521652590 194381214 501810577 912625400 624389511 652694882 23257383 424535780 413166040 565062420 802841252 267486706 985652051 732966648 803406897 654282219 204350316 731557594 242704324 231967244 769048125 699986666 315126508 47658784 723381809 18521118 649356778 517571838 607586242 757013214 286596761 147385003 80434317 517713283 199660291 904471989 765930094 447603959 684615620 275920237 662958697 223125954 494772687 657980663 963377055 440038258 998603633 339530712 759984222 568052621 817512640 166207125 53276152 935550477 679614371 64656953 226290080 554113935 437807149 180812372 271213570 416577264 710878721 938352717 323144430 894356221 183982488 913552078 711095043 255327427 843391150 979961874 86608230 249070579 197132598 216782196 270310077 396217390 137528723 261113698 603038123 833406836 58970958 982137370 779692344 469046406 212006705 991712343 507393296 643147931 960895370 729990227 408024760 222833229 346526893 817726174 684149181 141797045 746440320 679763056 657464913 293444355 776664259 246472372 716397750 175006917 533604600 924056473 836541675 69755235 240011058 976373335 299983523 236880886 515138005 732459650 196710071 700246517 407554674 266381191 47822900 138052722 305057807 475381610 786913484 175807234 262404494 368706077 53572215 774156530 691895372 954040857 425053702 492381123 961988965 886210914 414857423 633453533 635950747 824159309 34255980 566600080 566877407 379876437 475971811 231932542 232125527 107788361 723921797 791990354 658418943 835000577 981122033 316927684 405261885 821254009 829585372 724256777 691620567 959954188 869748666 976041538 380916588 365873662 176284350 889182651 471892327 644194922 10844428 123107799 728992418 984220117 8508523 629542927 612187487 150855662 976014123 402261818 45719649 945941095 257821091 273220103 376034238 616084663 811381548 309733077 998757838 437805905 321885614 95153628 463617724 40918364 832465430 77042639 34408838 934958322 355241502 752052161 996480311 801885713 935768029 536695662 31349665 845748626 938523920 997888410 918213992 374996815 267660280 953605381 555219153 869532823 703089149 132884890 106286674 674812061 25545586 79872788 250466727 419256449 6272861 794394198 569203368 897479371 716436364 216104292 843157398 461950632 722299693 216918825 386119548 472816748 121974435 901237067 13704900 150527849 27455079 7513280 882251831 760490286 90399199 551477451 967332587 544445952 376732471 158691598 321554816 379228532 714614199 302736711 562710938 60089035 12655037 254432807 570330276 411346239 826815765 64042880 250604294 946343743 276167219 401212048 839403297 433111398 122917926 959771067 176179978 972032510 9974491 645012084 576880813 962459197 344561110 803919238 164578568 412778950 29497089 945633831 786213863 92759309 377146921 352940695 126737967 90233390 459489365 301320865 360249304 249019696 338775620 887198811 976833738 224959101 237999804 162399898 627793457 187997074 99404877 986483033 159743893 458209537 716382607 259106631 971029949 348414910 390107077 596148955 373009904 9713744 190203836 555296985 401283105 224210352 206830818 675091307 773440405 794011416 443441251 668360266 879283688 465712117 230329357 944806387 300010138 571768970 759284561 731228123 427509474 304686659 552346621 905963376 756091374 595099286 465292347 890775420 532222757 10702792 278047299 197124684 754479236 378193639 97269675 322311761 91986239 207458018 384857383 383648679 47334635 766841457 528470645 94614476 285039644 355825234 993932650 347026513 674388832 97319881 798842572 925646362 354948518 395275439 790786357 408325849 711919928 9994322 715543438 314687582 722275068 721840031 452874653 846848756 936429106 938585483 15066412 979975015 6591486 104634346 128170493 708612627 117429480 352605113 545324770 425068194 566960070 649306817 988151449 349862677 185971411 871987002 52461243 799612179 554571923 185142177 813637815 339119646 185190747 673820448 327962358 597761513 536785778 298724717 851205573 740503476 956216201 772257677 406204255 809790102 929666942 796145296 497113227 354647744 679970409 463170950 325565856 293066281 346558499 705987493 470010827 657152070 708870067 477175574 865389982 469207891 46571779 118593472 498497517 251849230 19329925 739332561 978301461 906841840 350208054 538889217 657883340 179321503 151053965 896083760 923484017 225271290 382000065 396534606 881018768 394366779 64994941 549476540 882002225 518316397 311887271 906936693 39230545 559118778 314271693 598300916 407778827 4947356 403962375 699397615 556556992 562986912 179747835 775017467 714746477 48435412 173574550 597150210 286294002 859514000 428488955 116336250 296786615 267252898 16557763 4723751 696024980 541360489 897475656 493502250 467871380 627023895 762958461 660734900 190331009 271819876 699757348 986741438 629145120 242926467 852280664 253716836 266515222 774824600 78547412 348861621 930800964 754931622 451957131 51836157 376546139 619302786 369707526 567788576 9926030 75639259 690935468 498007631 575373529 897825430 954263571 115240821 922741500 76460777 223729539 267624696 173451341 667581675 902249817 137514630 334247178 458497360 96364399 255848332 195875400 66915510 534544158 755976410 869049922 322844266 622183790 642518470 346512488 775320646 354189588 331764 378932452 856002278 735451565 337811162 734644785 454723662 353376785 964007649 398550677 240605620 369038875 307390091 161779478 839122505 564158733 706406110 394046199 689202906 921359044 895712665 452950512 75340430 146258876 985906879 345999499 664878554 674028624 943509600 902039215 863986696 638997285 153271173 703842436 950130147 599787494 691198266 920156174 667617198 479453768 398211387 60987650 779333247 996250481 59762139 945714629 703855259 180625079 412011308 186761873 338843108 732398745 553282238 26303400 199274686 919924237 355258574 631264339 724212766 60521587 554935663 181011268 845877939 683511996 606341762 978932423 497960877 612213224 528944986 431049857 508650408 604260924 534978223 523852533 568375411 572056432 983163180 37633655 788479676 250247879 262277832 223180960 422456408 836978382 841777584 503670311 396522099 288728923 478324480 261386369 576074620 173516102 699122263 192228868 319330477 525613512 874838109 767317614 736848728 982972992 276917191 97649540 37980749 898234533 616212934 99219471 552925720 525703664 249919649 23046298 733711852 486536176 493711637 351630294 752519902 266866081 112699001 674016804 702077683 797612821 731985156 787981075 858164239 528367514 728689131 620704026 265060110 91412955 87453106 495329135 61743252 672654850 143985622 706316279 191088310 220174883 616699629 563952814 897020724 372752664 629662530 294055090 699455311 784204708 178179147 964916321 109429850 203229651 836751422 694241748 212882731 539886849 329618850 808462426 55069246 928012986 456131082 673677743 878721447 587574384 615809599 732254300 171656677 761438518 203423434 665227717 211507261 726027706 934758803 323909519 452817709 836611982 605604048 475371646 523512596 152598199 153595766 969245823 272188792 100782128 578707225 343002666 491402408 929210329 751529230 799644836 802805922 961802655 760202500 766120755 858146533 444068945 539512074 22254921 48627567 385036059 583227120 13779976 631843781 899779320 204114130 765788346 425707841 501072171 766490656 846326800 287691594 928989683 649521156 7556964 644834835 256614382 332276550 14227823 708815528 555228405 637191906 609291589 954903181 347313473 760390611 891668659 507132373 226073802 285732452 794605335 485913328 34632597 820672892 996691900 694272424 873062769 960669037 703735477 864940189 820838921 158427664 17478870 795122875 198225634 304685777 682098155 854944095 203607136 926661944 643299744 171537198 354433840 42186925 287292334 298193531 276202173 739479449 381283498 871190324 229108935 416747209 553952148 498457735 497850819 326432766 627851138 522011722 42100332 934708936 245906194 754327656 404307095 867426144 711688457 729298641 150119501 998380955 63790994 575272127 596980102 129365203 723490141 532700059 551438789 870797002 826088180 747582163 157610485 752166920 282978430 183824111 548616655 671893246 131560443 847978909 929643796 170532876 81608959 618261399 156314402 399567235 694596881 949340536 45864544 590054655 438774812 304001788 100852650 543741401 687765126 894943276 741872859 505519034 291010170 729118083 296004289 324733111 772893718 178205653 600064039 609650006 429774901 72280929 265863956 12862386 323247474 134528847 500794 84869963 946807702 686937472 246035252 57465508 188037878 867777438 729889140 909732315 85843810 532271282 237647634 648126185 304013668 874972633 854694661 684730325 374572580 550834659 227958227 73105439 894621699 817489033 891758486 328779250 98749604 663817177 112961433 445849936 555755264 80599367 33791377 450599741 617124460 923052746 418621777 417294490 632307586 773791524 997572726 560919941 815832423 293815090 46460093 823160273 546426945 817693601 226579304 104296126 574285126 919007540 3518166 831587852 302383316 627535648 774170957 294181597 287955473 299754279 680449523 279078926 262644729 268232318 801399010 201809679 92914062 896906756 789729574 939911445 277336955 55858867 238837316 12197848 756898955 393125788 569750210 286387356 811569939 77889378 224294677 659000359 922898625 130118144 276876137 487107022 615822905 609525775 509766730 656350046 90683844 146396689 88648752 567063192 483206556 554437790 939082878 621559552 710561986 734770843 792889421 901017732 354878031 244876843 156066799 430827023 214140437 269086825 530636597 29184775 704202141 632277598 953334866 794419176 740164803 968438419 873804179 307878982 622145236 121585350 605934708 991228223 898913518 284649534 69719142 232321702 639151166 543451867 433083364 213556954 424838801 931807348 530086806 620324388 484835228 16001819 442994675 781179874 885011183 564441867 935155451 385727179 982070755 475252887 555433346 525784478 382866927 656042278 687261579 746366453 627914779 962101060 70847753 368120496 374044406 433024491 933604106 920027983 716008643 801463902 245098902 587202719 720144926 666313065 513422902 997574152 81449247 335532699 86772884 969751292 336057759 679217929 330186293 721815405 703912984 695140664 653314946 564850727 965752323 276694902 115832645 124171753 653888120 227723063 14630660 935476976 344601701 738311250 661586556 595171039 585251908 89237180 490563846 545116263 521902688 270495788 656126551 618720872 146051078 765833295 598185377 111792222 412364970 931596011 984933522 235678460 363375928 176417721 313589670 892846457 239696710 542424883 848939084 536158781 538804463 77137249 199295097 10533105 72474992 144239495 423603637 342575880 904523250 647738894 390210163 116372920 899814204 241795347 42133085 793265914 854123765 193246214 555503593 983228905 897440355 194997128 636149244 934546558 151193351 285370366 748411864 430174438 223666015 852453605 527105124 717419409 958979125 689241705 151642448 292906084 115331409 731017580 469588176 191743736 594363511 201011872 257550423 40147134 799525123 537963183 778867493 2928282 47130258 628274517 420467840 821731190 813259845 298253135 904972192 138158330 707766504 944324256 576351975 218322781 64565867 740479336 896367882 954775214 525965557 966757828 530084828 432421954 532214291 781334611 612751126 600206009 842918228 771479338 260266417 827200956 930987681 584086873 437399833 377267285 24061729 998366045 233980660 205354817 603159219 429750427 693928123 773735203 405987786 698787629 953510939 941033333 679684426 125774785 121462742 74695016 195370980 724110417 820260198 908216483 633905715 488978152 304775379 642692894 889534929 625000747 822949799 139370947 132576227 760487588 412554736 805206143 713636997 21595224 254177953 601487930 65385491 393932516 119080866 936383860 798306872 799395936 14293083 852924134 895754804 566006625 969483140 263816592 236814198 820743997 185212943 767001973 537763840 114351814 5718464 632573018 532755840 166615524 45691096 269490587 304966391 61616127 911389556 497059 347085872 295973136 612193651 498584785 886432255 306915524 12386501 222004300 62035356 372810743 590930285 669084903 505157891 305229657 909829057 948901748 948828683 712684614 189877613 227762199 413861377 334393246 91830012 189728405 461073781 729819062 386639799 615085674 590162006 386026617 76219135 619047948 620016423 723338587 983555877 514429357 443781411 3476604 673613619 27534483 675652303 981341958 549772857 769091232 119132018 457162404 445020778 549048657 145099771 376016505 119167763 367759217 98519426 514194723 940273739 71497472 471521887 429197781 632187106 418090178 76500311 543641088 340905031 503616476 820337719 250069794 169708809 571583235 346146649 953944437 433288815 665282249 644822720 543318196 577173080 914211308 918633986 195717278 978990437 647205389 861627889 167394097 92444053 625396839 468892688 530127331 545539146 982006849 947700676 690049655 482858816 420266489 796482481 695799289 800769629 402005326 855037664 753087821 42376990 900246317 701646111 547459523 794669399 680712997 478915846 41938677 192278583 557432875 573671089 849346722 859731749 151682662 339422942 618663169 245240176 969414586 661552358 352326346 387408800 367685263 719476429 283322404 903636740 600057857 251667620 480164385 974581062 517916003 210298719 416049790 29554887 703285870 194556082 311076894 516697059 186661101 449505508 420547423 375525742 881654116 8240513 674569540 88244799 599355593 772036071 333382771 654490527 736164789 674739267 728122677 237747849 109994877 189964705 545549715 700715896 265608936 835662256 525984131 834760278 802940826 533715676 209517684 305637540 138637668 888213599 511299144 669704245 472453123 338437273 765662491 971899807 534413177 51066894 773519283 862055564 641514323 236935086 552953417 833706632 471906288 734878712 32040582 49302692 563919934 919572594 436559207 689491743 316883698 482756172 276435987 342022433 368071077 126255129 513986811 334567492 417624035 939451632 318566416 848793845 666039222 394643049 316524656 989320758 747913754 25626303 40924498 472512899 517288575 35613772 92596674 370625676 465191657 152542948 484026299 961750601 721312701 723167165 111925589 480711805 70433236 560448802 358642575 424989188 118506035 110029769 263199164 58722266 486985470 721833318 914333789 304651528 889577269 266858086 330979767 64555708 771845899 511592297 232649714 723494147 459209737 147275430 289566619 658987528 600910123 344678823 585077451 474483924 386677757 830643597 243765275 68787294 834703801 587394966 67871126 331282854 38093706 685018833 710993041 775726301 142352813 449844523 937261411 289420067 116723391 221046801 980455411 833594800 836074311 535994139 675287200 669950794 414764660 404022587 105692906 634243475 482072415 686841894 359600553 869233828 58854490 350770810 633250228 430388090 272801095 42838973 910516222 493376236 53414503 80712168 890838972 351762051 634262465 386012622 649444648 880916597 909752909 215165404 47870632 756394518 751429963 653889792 677341601 54727311 322418357 168456333 881480493 922155575 173134654 67173192 569481372 917512710 815611039 564646976 984019947 267433842 789318451 743259830 967122194 728578223 302250478 280419594 762890802 331809317 207741785 724407159 675408819 788368126 407685811 579955333 876934777 175474699 239313080 351042597 309742678 679539793 175932531 599765432 331226405 129099020 548204649 85419431 361118977 886874441 814748652 3621670 977595446 873781042 780823887 903923343 573206726 450833437 932522758 691236025 811428866 933464321 946045558 208171596 626416697 464410914 568587627 400391284 359610848 534839265 757212741 401599614 483463531 946464086 317427619 778921195 524116123 727807832 427940762 578982155 715316526 281539230 146466592 149746508 401803880 219422932 883509444 970524142 951053050 300676924 501366641 302716679 655807477 60696402 999428487 754388974 513173216 769182876 404690978 464784496 394593484 485937340 658652473 468249503 734927555 67247808 805030029 813554599 674868061 909670184 563392059 580924716 51141885 644068747 504255615 488827115 438791174 275313735 679605571 366839504 673623718 561639621 135725779 417307104 714608069 819422577 442062906 188458442 661306296 168638153 578249655 983450193 219820346 948568337 605667314 768467510 64867314 769055389 891469551 915773456 350357257 275851215 979037826 767485789 259026535 41722426 120844772 147185724 398750769 184950010 390600594 748001736 984807823 532816745 290626609 99037086 839462744 477782972 780280462 560592400 820108679 988573302 536396503 866519370 930182812 917503624 734667321 133456062 128253805 312373538 393404885 67438019 832349203 459068212 558847547 604848447 44063501 890440800 861322823 138262604 313976739 242742091 810430910 548814894 124539322 268863730 599002192 864480619 960350090 451971978 669518902 577349588 881919366 278115707 593756362 159582764 857388408 599836448 762917457 931390600 883814871 32319112 443467239 724844604 51142031 167389787 576735611 682796584 116773029 293214606 131876051 275819230 280545948 474776203 282082184 719595283 991398491 691685159 540167544 983483215 541346687 850395942 620203296 718741261 726232501 965226153 32947704 989569921 590258710 289831095 20888725 744218195 676808729 588400249 352391263 688454923 695187019 350008620 121599258 209219026 530508336 603855207 573416919 882309097 814477596 65740681 664358009 756932744 95236731 501986787 945902579 319128509 306549261 830620777 245452129 638956054 211671489 974680287 558242982 847584648 320105105 743651812 84789105 704964495 24283893 606808989 314088520 272238486 198079913 629169897 612903810 138753161 563781145 281242472 757294663 359309380 261658626 382174471 755753260 671217846 442113523 314493556 130550710 316193364 387883131 461187200 267050011 824268808 898074859 267184043 121830875 657070735 722703745 23774640 340728902 371188671 750075363 908361678 395536692 968686265 526865190 908564378 20262411 55044370 719156823 555686234 499395384 768612420 346904481 758735049 839078790 216291383 55603828 751594578 304425681 243262089 772708212 67830268 820656717 27529069 983260897 342290097 578709673 977603583 87184177 145578873 913267383 568617629 602410747 474161782 394340650 936617452 392985182 44030912 963868499 268122357 499037562 456132316 831772136 994037800 385730507 861126726 39531484 392131597 508060679 880345884 689722672 462931453 442461600 694062575 344611138 162048634 934042244 144196424 338577443 129973489 597888358 902187830 227753068 224627298 758926880 524153471 485659032 295257023 18365131 782918939 487277483 584095842 660507239 146165623 974888233 99964727 257790662 227373773 104594826 237207114 152188244 406255565 431367040 116394469 964626284 438067338 820506064 333521080 323693479 906468908 917376549 970815196 705399131 114576877 955400279 502442632 527470741 838735767 482173411 100027927 233379962 156082576 618186172 810910619 844038248 298248251 567770438 825087933 259237169 446614611 886218665 270402169 119198369 507053895 95157537 266904971 667992920 976231390 202097809 945360599 746542578 136043116 936300204 783632277 494369017 751713411 34673781 612610226 577050968 755572228 43882225 337723905 522356520 792113246 278092385 857074388 683826691 469835052 904376539 339307686 261889952 207968089 248844846 723131320 5208452 919579421 408006784 617367665 361522486 506178457 508955626 186478546 155510179 597842254 210132501 826630687 786160615 85844772 893465978 152153521 541528694 449152547 810164819 357006833 595711767 783089575 266082628 356417393 53628440 81172752 609749140 684312390 521602187 433194522 163177677 193473858 153194306 369998031 808405244 323613843 49572944 943133642 81348203 487266296 616579841 679117858 654669486 746140364 152863967 40428576 131440164 357362115 294458007 387625405 127178558 240278079 759736967 107513229 517073722 23877238 631189835 253721119 804818114 630377827 366202075 384381470 286369291 796173023 597493679 155034436 624616509 142774953 844835359 328158372 9140197 457415161 574755542 995394295 404461658 162602426 428650078 581024793 260773966 812419988 237685746 660443893 766899966 436077991 485774522 882685448 812853813 921597685 377877204 937612039 465818493 622091007 54398105 731296551 839764180 517594703 48229292 63139258 144786835 586968050 227496229 264006908 66560619 729203216 300248052 775441241 190946574 350641777 827618359 650555509 788232772 333070221 294519429 195601789 499702070 160899881 644701481 707950820 28814154 214297992 664153787 266069385 697661410 182045266 420697414 796985382 794269638 416020795 915984586 425176162 727360816 20973396 355914030 222961535 409159644 377753645 408867565 22265052 60374781 150380802 52725479 563847265 974449791 358569162 118586829 70565233 802505230 819274555 802929471 676173618 507087870 376580095 980132102 485759904 938955518 933676456 870142309 402357398 937110485 955668659 531106201 54389380 352098579 579350506 597927315 266237019 636829094 180016514 908123616 386249800 84623499 67281766 309273980 486518659 33694192 166528573 319518996 55820214 222858371 110331247 907093169 341519258 261456323 859224291 718995130 925094805 862011404 110661526 934636249 779852874 975418350 224566860 971298369 322174936 594680524 703210146 823283501 584173622 199623391 447065827 643684942 967142658 545465240 662984720 606610059 275879359 974204040 622243700 754246955 449924878 175405824 95222728 432405971 396345638 986146013 393604246 664014421 721223034 46384362 673262008 642339367 128371814 840839518 346655050 256770623 348830592 727601583 911609778 999357630 143272827 819846925 58127568 667523650 531410498 373870064 858563863 587554640 820391348 385437005 792153108 283192977 537518170 801377585 124826245 756361129 769288292 551033252 25511157 402432360 511414559 514051923 741327931 522929771 657749948 375846859 619514403 35725595 695144689 962399524 835043056 185693518 494839639 341686422 522636544 755925616 109288077 710442622 743787925 953660651 876591924 576683088 626751873 119169879 805560742 49524694 413074452 108732402 299114157 299988384 165358597 321252305 95503050 130858252 526461043 351380966 420467840 155016808 313322353 716087023 649716924 900266480 854924175 847791113 305356250 808024812 304297252 764028739 204592232 49459188 943317450 97768430 139962765 972202013 816850013 815778096 810199783 607908081 959422063 828989188 664704996 94374656 484835797 340095723 321368964 473413931 967149199 568885068 779725722 825465309 159415505 247793722 236165030 826573335 485533606 150722966 928310562 955840374 633927261 738236800 671245508 547737844 445030110 839699756 226669993 961615108 377530318 721515316 275017285 547287819 698291453 435360426 355659180 271806240 377022405 848754289 972301033 53782764 233828606 699812703 736737254 726212470 116777960 521081115 247647662 233559987 750079909 204752405 524900797 216956920 749423814 890833193 920709087 4372415 56051944 710273011 597257288 914466407 866663108 554963842 200229221 973662097 46633405 895938414 986456983 278675718 19959223 897690918 715598156 717814957 812989051 130906228 443677926 847404512 943396752 845048843 421366658 721512202 994950664 51030947 618267981 252968613 467940917 618988017 257364509 894819683 57252332 89799931 725129867 293630288 739931000 123202597 412526577 867482195 284182118 657866451 479927016 412655266 521104615 328838003 912957861 471887816 203395701 162335929 581224914 318083763 614252602 178842968 378370384 540932537 512772586 224140068 718788428 226190338 532876313 696198995 723900423 356849506 339268334 496370627 162023528 61711575 280883152 412169865 678152356 904873744 150730651 308856003 610723194 406320033 457099981 398114268 962794063 182668954 704484269 199567643 487203465 281026466 457187851 330924388 199575697 42024580 808892473 789076907 671379469 231771217 300154882 396188451 118478775 276455626 360188452 154696776 368884296 304897148 34868159 254558303 338567523 732307558 781069320 17153600 953758942 189203186 33920322 83074810 189497014 274593056 653814506 497502449 624583076 782488189 980176824 215432969 904326717 223037973 547929290 156143406 884791481 429460202 394141063 289225092 862908253 103272547 97723149 507646116 599316746 22467151 684802269 50980960 809511503 176121271 87166969 424130311 611802460 756209046 893001148 587217981 606537766 134891283 552250770 490857262 603107053 536322217 816106413 419133727 185451328 380413876 473571660 175691942 201585317 978943549 549833011 705090123 983866393 156286477 581773396 64977510 63250423 809487429 645798213 717773021 388898551 938459722 11903523 108503911 484532431 402412449 985818857 625694430 122897480 981527222 921352681 635519289 833852850 974541759 771042291 600814701 636705224 436514829 143550756 859481066 947181599 528535461 857157538 480711020 584960335 786634151 709399080 689517185 948983970 835781659 679911927 46211555 369063814 788333450 908175837 2927807 154508764 539166588 330193222 640434104 390481382 23851662 394282576 705044359 970423777 849165869 506767803 313313290 413416319 260310872 78778032 598428125 608145312 825005969 452140844 116452382 631430168 431954440 157965231 724829799 693094554 210478801 499895709 454074003 592110339 151655260 622106507 329501982 861272497 29928942 176285354 461313888 795388345 583561591 560093177 662378929 807113357 857856890 584581608 8445419 377322316 345387645 810014449 261305940 362474158 864860802 273414219 302728827 885841949 617920522 123132593 848983808 855745926 672705255 49257043 614974958 629735111 311565357 472975747 367970870 260330869 224044487 65124134 574107057 445705665 944026600 494726703 297669129 615197431 207870110 546406959 52286625 194658049 987285898 955274487 735052358 384558580 285343682 335733174 935072235 240292356 465644073 786662328 244079773 957992914 930670015 112825294 619839249 645164593 343529611 628259117 332044582 904327360 355254446 154263550 176473046 738228728 147150137 189955385 818903744 702186096 733802528 167195268 167429531 733701019 34924750 110034548 91557855 871603415 856948565 822908833 44330888 443509554 281567987 67154911 602939055 953978307 486994612 190788447 397726418 954677009 134827066 433894861 327523102 133433582 732835098 585450179 708973753 18818894 517398346 831622907 397543127 271970525 472455989 918215054 405177010 595989125 46923481 718659343 9874471 666699480 730992337 471832887 212591031 104031839 264620952 345100577 722922185 678028954 958076645 761615820 925458382 531312753 15658610 383512897 796877092 340396873 337978038 194244487 943034735 617745695 247065385 424928624 575635144 780401704 773813087 851594137 617871056 794807603 987608711 319229631 237436913 947841808 510834381 41160895 11332690 614565425 506668968 147749475 777925028 40088842 701798585 684710107 536504069 92484331 726767972 647165602 718696156 232983150 645754876 495980852 681240907 564891385 777464207 658807338 545021273 268182467 784262832 390182994 548693967 738754280 445647997 664714791 27917754 331084498 537533435 36413122 544001260 284648955 543944393 644315364 385226249 347535588 901804096 241919139 621213297 613969411 618406420 903443375 649687841 317323842 60838725 18085969 687507911 646598787 607041820 192022322 285188040 115174408 869538059 772178986 424920876 127519154 758283995 4443270 50642439 86174106 964115681 651540092 30429727 450146602 657517973 389897645 335172533 655760227 552294774 650897447 78012083 142548319 645238264 1006149 248129708 460472926 505942924 186595678 462878385 81718857 318494814 413092037 169977936 158100633 319739522 140645631 646727120 805437362 276037412 15079461 28515177 209852606 663766925 224410863 622636322 281666586 796608531 21561248 554390801 248032823 273014460 280062878 560036175 349846261 987999004 748010763 207436753 802975585 849244871 888044519 635308811 826043081 6025890 534641718 163141080 788236773 835490683 101132715 229737820 92038308 188376962 793168209 315874910 376826905 855932684 31510331 231709349 723828610 408344177 624058805 502397390 618413407 279880321 878899371 333638439 277633881 576756711 980977208 947395433 890233140 826373033 284662620 738959133 115970097 897220567 816883323 480720143 68628205 877353448 909319659 289281726 597319866 536457591 169288386 837922208 873032408 710716642 233051001 43878564 77952564 365594606 293681139 940344903 616847997 253861944 937362452 221970260 936014614 191024060 198362582 799931075 753234189 742490869 112966969 258878430 650536245 724330193 109207692 433692912 454446347 109966889 92857783 535754375 580907337 138454109 232982375 974242096 366573653 472752797 238516738 152444260 12317157 934394347 171079033 675772958 886433231 295488425 43496544 601795169 443038913 333876618 674896535 322719524 763452046 592141961 930617786 174571448 263312918 224707271 558752368 512706552 684035715 720972932 970850881 543913183 927334331 834819314 818920664 266407660 298786585 813850891 620229167 334497011 925285567 802948164 965974006 529263330 115572749 747776378 601361 381575635 70336076 864999445 272691885 375237868 876896240 213756156 733059691 241736108 553949681 59780153 433559560 973627402 983197389 240188755 550628906 530557465 582045247 49299400 687678004 202084333 529842460 996965478 31330938 231798473 79165162 707906016 825577279 181511318 436969755 107320524 962302415 779465590 289485958 511783771 260771822 3377178 695405936 829288943 684998655 878353303 371865937 398332532 794653928 948722024 323109866 636870296 882972461 640503469 867842759 860068706 462660327 344309035 767757716 124755872 702392950 734235423 82855660 396709057 581321201 555354141 230324340 415513127 824397236 571917034 752219217 162103662 417340016 381475583 108023882 220251631 141012693 262027163 361742155 696716043 132064000 755631715 119205997 327983321 342840778 71633908 705551910 988616547 555928747 38597546 64361159 291620427 14714113 819170776 806493690 302554373 859204873 506716963 644731998 87050589 399644166 41937689 935290459 897809402 868831577 772987323 979701751 153140800 379181583 108637807 740019390 821449194 401741166 851986808 943835483 437561736 725655844 457998828 439867815 19814491 544110981 773892990 83273260 870904875 31090305 413344559 944179306 230786049 975586819 775259943 967558049 460817765 214927761 185502554 671803206 358802487 603942332 348155583 40764597 908030995 958504624 292924400 606013483 627065589 484281329 893076853 11770475 377884311 469563649 125543436 596379692 94643275 547186780 780910894 511596140 645468496 808019279 38963871 490672084 162303325 518639389 213384659 634015822 640138344 502865398 57169117 21484836 18968984 611568805 860303177 475656964 737674351 6592812 339878982 953907897 433533020 936442905 150545080 254849826 221769342 763274802 833569782 886979165 965299516 858245391 485174635 971766739 222047959 296398578 14419506 827345940 492637015 743120666 683984506 941466805 387338413 158785221 154853718 836430846 31554294 660038801 335874785 509228277 160128914 488120933 218638796 682102648 565834109 871251452 70393574 646549458 18908992 433528281 180334560 341103158 368065617 395886379 242303697 658740318 274297198 850103375 738345881 103507999 185466736 807608854 185594812 52933126 77318871 826411060 609316077 293063885 512187549 181518984 538918173 543656952 455808492 397138925 627730948 567540478 278106899 509348091 909540988 500208247 526168561 129170683 137383112 298043387 93445295 335316992 8982723 858092798 390107275 131162609 443995557 715800386 11046478 917890370 205282892 997892657 301325667 954790673 82545619 418128121 641998707 245870685 963827662 931764448 837494881 62376363 236633625 146042359 373178403 961159788 423044444 74123564 680588668 406038474 836133123 963399201 234938588 795762491 189588042 428831933 572850157 917422693 524518990 340991360 219166248 922607860 167918072 986342967 203760125 274474720 271711264 786205814 369090171 11516296 100810646 223042123 481986788 562095872 182430898 256263294 650213999 621231455 260128567 959566346 178624190 6077925 897604697 372149955 489003979 964202695 983597525 872133826 722060477 327066576 331439278 943032288 914229912 321229051 708147109 485785433 271389803 54760068 613161119 563912681 936731128 508915621 451904132 208768477 521894723 736390756 176972777 551489649 166131896 797724241 697620858 750370869 54683401 442076881 698299062 330486859 723200822 583856690 991644964 378170725 209512129 498055935 366505569 668858090 501081279 365401411 681949229 292414433 628856884 511473748 288273677 958719576 834035942 451639076 839451343 939022034 977216252 971990690 936731612 472174923 417452486 968822682 732396940 700840005 352217786 147157223 413950419 466202730 681675031 472190136 224125822 634856126 839630043 541702255 921034337 133538818 654960445 942668056 127903403 884110747 92931741 184380427 604548158 322439126 668707389 607305115 628752987 385572324 908437722 292947407 913181070 570242183 158569462 483914873 477315219 177103891 231173308 299895716 242958345 268253231 619210616 851936191 864037826 275331468 491159865 180277840 812961413 818074137 965140841 360734010 208575123 751385653 59412628 475510372 310046556 27823936 105928814 610075375 425340386 31574058 24058922 950132836 245906713 36425834 492784453 355409096 345060773 503898684 436867452 548699804 607651604 11708170 164320803 161400055 163659380 604852315 420058741 242460559 717048699 477962032 619367582 497196841 84909746 272102756 511327272 972032521 910527406 969000712 603356336 324741727 982103501 97129614 608517434 572238820 884802368 349047346 78382459 613495967 603882154 407149835 265734985 372201401 115337361 414126860 347037729 920854429 472235177 996244682 135784481 526325894 10811779 670481088 95350625 639653144 929721748 962851910 715466652 450457762 265242637 173928504 854148239 472734267 711908505 464872037 176812984 348152732 14649656 385998826 825353828 285295439 417850163 986695595 449101713 311953287 240585909 18635402 590996071 748799139 774021033 657122992 697852867 142940436 151283149 60296616 74620429 680104590 159789722 656141395 754463218 684190655 307546812 925797458 498541020 30305538 91032399 690124936 290218266 351159645 8541229 60224942 888358960 814560133 858739070 395282186 105974234 226104710 141181923 623794980 406689564 246070526 282720435 684467081 725601072 971215596 145018940 785307108 73261608 378168517 940741175 911149404 968880197 67606448 5895209 96335391 804265545 285094217 191469433 87740789 435044977 140535391 848456177 546964941 698733214 540993030 110293854 437774455 216833493 366229738 111449231 144815126 558569853 464735214 601330368 789178310 683804161 628506791 412324289 562279702 378337837 9026039 282388881 501909378 614993761 733927807 991978669 473938286 13949303 499490343 872626257 549471956 502644902 302638372 64396431 134599566 56762211 474724039 675209395 723340503 277150767 592464140 993566009 342712240 432247007 729189307 686836667 890490658 394893787 905954518 403987115 407792494 993624463 942545922 522685243 182229223 328479880 788504111 729669038 833433077 288799573 421672503 301729349 845689956 19963460 200125376 583452460 189944863 522917364 272171775 606596152 5734318 729473133 500491313 248702634 52121534 966075940 615879423 212519280 625277705 141392673 777010981 678408817 175687021 350798369 766579197 445590314 722660568 377722057 34265350 840259371 889200292 589128096 70782025 552119001 750966199 538250525 407839717 635619249 916981186 926689761 152065966 398034930 619153544 486856524 347702130 592293109 453273409 159635452 85969274 696063893 396730134 323498544 697174502 316682928 489396767 420533489 571475484 835712091 436369290 20931830 633741661 884366332 588571622 5382904 566004009 978201433 737273561 189204151 738607663 76286247 720726820 579447642 128299526 618145742 533510505 887920579 882781731 908776591 474869157 295098464 465098419 877153361 923385924 803375043 20727866 716983089 359410550 177474555 27034871 854078604 186541713 24373329 838107778 597101504 641872694 894059381 692968843 208188855 514959280 880655373 783107619 460597817 483900716 565088143 308574567 653813101 549875219 77237529 435098187 848742979 321953974 623659743 370975137 769024687 946905 572265364 942072380 733961841 371527144 774404950 837289092 726038852 349441978 245882375 204692096 522443341 178530048 686872379 220989208 928369020 595009723 985758799 729472655 228897110 290517813 935310441 127004662 93694905 792381160 897904444 926112844 441071935 522717312 181030678 114284254 166107499 702414311 409926576 416203951 352243417 65315577 587345969 602287914 311886269 944974353 85787582 951889223 642321450 856584214 243774168 221926246 75007896 566060784 342807375 279643104 498786236 10776441 275285150 986056987 33912877 547566735 508895370 951294972 912930331 642948441 685914208 200732066 25213406 380502646 106943629 498518469 584647042 127290451 539522953 633410511 101527611 713965988 991932219 196691364 992312253 534721543 417812335 807652055 94189259 835327266 154421868 476551591 810062387 402068990 377730838 307030137 485222235 858770921 103072684 913056559 116918973 760745696 725386563 797417418 661824605 298140670 385251641 99223833 454438515 834164929 412082983 827435325 800947169 739991545 395931132 490531669 13745743 745532406 276702840 267754089 172664094 404525334 315644513 198126800 665331709 635742006 302175744 953794084 908756136 356704306 575487868 716851195 211118868 981034327 913830889 475870454 641504318 553195421 412906463 724309093 785925667 548499933 351202949 473123805 574087989 801567639 473614803 2945298 596992517 230733316 773449117 982117574 235346876 840315108 46533384 392515161 920255405 808253340 624959054 814067600 744062567 829963436 772633144 257623718 668967516 206589230 964452765 185267026 832711402 474422327 583403983 150088026 550687376 590435592 847206056 613678540 237174090 108862561 875414021 174841595 801848981 797616138 296110893 904985689 498264414 855239642 689539528 977699295 489373700 923381157 710277178 955267514 662548058 109485664 960083279 67305630 688969809 63561074 729554184 553841827 767239458 575649754 670204122 775035516 793167689 721003237 209651403 954187875 557139760 570763040 295256296 268123297 108566295 576906262 722828725 902528489 669909251 937003377 905651147 680512565 146700682 259809793 681779507 33398031 460999100 700782456 482166020 195052471 744080518 209802204 602306619 520577156 645836881 924088535 294273873 148356593 880103853 469222727 795661651 908809988 125418587 318032202 333589912 630512611 166416471 150661737 738410358 92409362 402689691 384630221 982942322 953579919 651632085 813066601 431682484 408478987 606299837 781503748 251357812 289688734 631853475 419120596 740601929 577845919 975076577 603962924 631272503 636775088 165413767 1035469 152057886 387204428 124796744 443292873 31708471 614776006 852912450 947615703 976209769 386972972 774900595 304363200 311038948 16907812 865664921 39249286 672644258 117754183 397013293 289096623 663883559 853634432 998639137 343488925 554906964 428970711 915355706 986082349 63426990 930700671 915423453 551569259 329805949 758759028 518739284 170027813 51479934 120367927 951218494 792485586 311400322 414965735 767050205 170276165 915213361 587974725 215782992 270419728 663200558 601296804 117068723 397243219 725588207 772014305 734217988 320952300 108728092 181316847 315318206 786612921 494443425 616225191 617834812 217509546 671539742 445626067 581291955 486873880 804949797 830009080 611120170 560160763 884058 828981473 24758532 946498381 69339852 641820378 575977210 998665971 165286566 886314351 981185243 568655108 115096082 178739634 541063119 653361604 677371998 328878489 585743810 999224079 231623466 850654831 110693029 249488624 139173489 300124430 552321766 787599579 176286701 719328036 635330225 764426923 175189602 354885221 840164683 805970874 561942534 283136834 887090918 807387843 763001480 742455086 803410305 208045322 466547758 69491446 893758096 502604297 664307754 129426328 795173041 421245423 4462071 668919938 80725858 39498457 75090952 225491536 653152269 471319603 341747751 943691803 750568914 102778792 956120982 391269720 76082171 143069477 785869415 4610541 633847897 681627275 967897024 556618471 771105460 901916821 130637768 963866984 718505431 130850017 672310733 807857757 632886742 990236668 844132432 974255821 753040042 231524502 453683879 423434865 780069482 769301901 370972142 669089671 38714174 736384717 423674804 18744784 985548029 566029196 418145187 694585173 294047845 978392302 383180612 617411227 330681057 181266879 413008059 809623704 182975562 352260512 510476244 844280656 409883658 708182993 255656712 280833489 472679028 674307403 554550405 3902028 540209896 512111912 885965402 78390019 23139922 29939554 777514265 294211143 275376558 792294430 812102187 911666786 26773282 846952239 215830086 739462557 4130482 482264073 69824988 308840772 709239683 356182628 45311259 339983896 492179033 881160206 931279715 579426202 464700223 954801641 861707729 238155626 31695490 223186356 714641034 842870409 925348938 833176353 5584599 558351755 538199585 978583020 167201036 803448794 483203717 159083576 193348729 469933705 798895466 692492015 444000896 181760735 906117560 624191972 241265626 195277689 947430729 849981135 372365288 151586302 182089482 53775732 556296666 674102683 235704650 308569312 851716236 481073492 756047734 926637787 636004302 972807878 228500378 491091597 561449378 898859146 233792780 234684802 749257195 946798651 480987533 682531388 908737213 569869869 656244875 550969667 129649532 31535239 564095683 963907062 629922562 820052630 846248477 372585138 804126262 677879527 242284391 651482097 879646227 741579258 589465387 841170172 208278230 118330404 544560833 108039575 106944737 175556127 347491928 881378135 901303765 214891942 841252079 757340584 881182986 302356160 208114365 681219601 497569058 795798949 945655160 796939903 21473196 11718479 861415355 776407130 437843315 917636969 147360575 78538644 210580080 935725212 538031159 991259641 617571988 944013032 679855345 624107033 525402990 706549482 623115014 878562470 30005237 80330315 593107216 712263312 268075242 302209463 322170923 163509522 250194345 244211610 34074361 423082538 148706325 866552845 897601674 224224326 131948858 262136857 386157702 85738230 163405501 400737450 22617338 367557730 189554360 635684183 87929323 888885969 177444371 95845561 464263120 427936244 268381483 201904895 568346450 808562677 153503896 423737812 791684876 35513389 671646494 913619085 102901528 829368076 198583404 70215653 519769734 636327152 127982557 793781221 966780765 178412323 341932799 43118480 273967667 43406762 863957635 641974450 431199655 501323536 223797110 219252425 678639282 131287466 573521063 18289126 370487171 979668932 929208968 258303430 554202942 296490794 353018126 515256374 127958543 904855066 388825961 477866310 924399823 282017408 588872142 692637964 524874985 574096617 702301176 253627281 803534089 401764259 834464304 377245086 548554409 723626154 87148582 515818778 46239116 771903579 452856618 713861966 237244839 40588859 623172034 677859987 971136097 584709290 307180233 125281212 976483951 60159715 231792416 720927181 356184231 504665184 877795525 315868639 621909151 628181053 813238361 272545620 523446071 415486213 575895558 311672702 157360798 799308349 117232379 149999462 765510904 560165656 64709639 367011683 481135516 203658063 464765457 93041033 691620857 974017555 588846765 737092897 661907324 255763018 147699364 115098800 909124074 934920828 531960491 371777825 78889031 744751804 670351153 923620238 748045914 812721316 768285931 856629304 862271106 543612836 872714867 412276698 863171530 174599921 72004488 365579569 587762049 886082009 860299650 891475653 570176045 505322384 263764950 271874218 286595652 479163854 662633401 839342570 839993981 744508410 659561987 473765328 68976182 337620598 470256214 385512682 193934547 595564088 316812816 497456391 721568234 781006845 244188448 501627322 654235522 828815999 63979832 391677584 313751284 683343478 678255017 63102644 707334974 878589278 453143005 579342369 825425368 321886768 208283353 21699654 420260371 577225877 643095539 279501900 934349027 829405038 818533024 96161475 296820589 393258819 396468402 986164067 408125371 677327746 517077435 575468114 124559726 631995587 263489630 582497097 671122238 937723003 666900510 842979027 24493988 759211108 614093836 43814153 622144700 365593134 147021818 130629342 631197142 55607155 289223577 243788538 679961314 440575238 545358213 864071853 530863421 408471922 219161301 276920778 122660808 75796490 411345576 367788390 875750872 913490772 848601321 589592024 18423118 406106896 319661386 348063167 968557985 275486477 408722573 544165242 8973703 952656951 130955027 34575212 763284989 465183641 858967267 157743887 363427995 502216117 300069568 248479168 815517814 494118147 51826496 708036332 971402578 412103605 440429737 534556355 302863472 869762222 952757446 225299381 223635054 85539098 863638324 674853920 834128463 132509123 988997879 210638084 976390674 774759153 456306845 964052680 693268181 15270802 399108171 515582904 741292743 218872502 710390320 825228927 551442347 564815753 504932754 562620857 815268824 11615077 111445359 150910408 245816445 959464429 770071926 334935435 228993806 697259036 580151912 910436282 301091323 818797769 517717408 352850900 575035867 423459499 449005779 865354700 548491343 621385501 669934875 747147067 225712472 116499156 700519197 194852475 263833533 477468880 359496204 82347456 389041264 946100889 55048490 473593536 963658944 370457610 671063548 890992984 243504837 331498775 869934626 269645032 400500719 682114717 778553946 282024060 276847640 874833640 387788282 76698316 376303750 551107161 817885404 691465492 710661186 871321724 252779408 84605508 362049098 682505064 567258408 868545987 988367288 761712986 126845735 863166565 61746851 790236932 836947152 240361962 500604816 106001970 828199083 340317186 726586078 309281898 105299878 225771629 615710513 830196057 517411673 557863300 751749043 138956864 626297541 279689267 409898250 897868293 276663666 623912679 195859602 858373537 181540545 380764629 751171536 389769247 383504261 184519617 585926359 988006931 735832454 803128370 415441745 998879032 340784793 462440782 333755922 749165159 521912756 674900827 79327100 188605 428896309 988014312 143538919 488355554 113173231 82031738 896927392 808037504 540648542 420595886 359840214 110041411 266487877 139683461 732357151 770420523 58387230 217134486 359529441 852388336 133549025 970671692 127036550 458331472 144245744 735308021 155171475 738768582 164698854 848101148 523224280 57149913 262878244 526906927 827309107 274071668 173897330 631883014 211600913 225516904 853019234 323213198 822774510 666156369 59393921 10519450 763669832 558534595 528432648 543850568 586216386 604683739 603275111 103078295 73389412 717600623 99159939 44225537 568691334 841958750 911659413 786573193 380258730 35750455 847562511 514335622 767939552 107587895 619069580 746775579 126438640 686365989 293981496 742722909 254496778 968540886 979128872 281305713 633789752 901153788 5098803 616410514 647425096 237689844 723084671 509946535 444298916 575148397 523781818 872792273 500514041 625372400 551467235 688553185 37875784 639567543 880521061 459051045 588360386 42638075 213936486 127285125 739694673 806149715 321944194 4141805 126503594 352496930 886575855 743402981 39378002 293513716 944483758 274922848 75503555 275804712 465168189 892171985 913689409 826220822 757320787 964181241 132703324 190324053 50799771 318372434 458519111 592676313 616255933 682284270 703380937 351627754 846742083 7040168 720769552 976143767 991909629 503583481 947588223 898228528 693940586 800788180 789758678 759683801 207425103 392555497 183711810 584195692 317404953 6587563 868524597 74932313 333813185 415456081 940448922 815479624 904468866 876740775 797384207 407513108 244413669 668539129 105736155 978439715 820885121 279926730 163465420 761491515 49924490 508000984 454475845 570259693 600416842 6481220 427794853 291196222 416832329 110020555 544396592 266731256 225048914 173084971 363196163 851034537 37729147 772944641 771586238 489398221 314693448 293918011 36912094 891561932 167727669 845399624 76124554 672932042 724465454 25915426 373538761 604232081 800272553 559730054 675359591 197911 871207984 565593363 811771315 203109747 870352726 318170708 49543327 230788471 363770711 35760339 211377428 977620632 905214642 357841766 644597640 437533749 680214141 299429062 635211000 620634956 481405587 722101854 704671667 619094491 18818928 156661791 496434709 846379924 556922697 309737527 861061670 838767794 484385090 628811634 243213058 403709186 855527000 42340179 38868168 531753107 674153908 664174833 229435513 106210761 705690098 315149634 548594622 490243682 951197272 774807093 462176435 201169907 542784331 634113595 64063429 453613862 791711424 248057649 398635547 170717981 823809354 484845383 525406835 739598505 321448763 784952174 688980652 979841737 925369214 334558391 390673983 686671336 869150902 566936544 856466560 916456156 340834846 813428788 63774786 207415563 745145200 340056648 234995569 761099193 960883051 452896960 791682067 900107845 113071362 264582669 399674099 338842938 925303689 460291856 252122853 840622382 437892830 281143233 781088013 449475477 460657141 37749255 61372983 319516767 4098304 220955334 558354859 689414262 544590412 296891145 440825846 665705822 742645296 820997651 71279895 439848676 274670993 432569602 986186699 447754631 712403589 309020129 512803281 212793107 946566436 45506902 44229490 973225349 114101529 188063127 485844768 253891599 863247208 227516509 564172606 276247999 633997950 535197962 853622771 987020089 967025936 293938753 183347787 560897940 508691091 349222371 914651308 454073784 814986719 412735765 803594788 837350988 268973370 700509687 350954386 737815476 145914809 947521708 395948110 285941054 229959971 725561707 775830594 772846276 440414189 188977134 839112771 745361249 583701008 517066910 30016712 293423917 811959548 20901940 552643024 345104995 746476949 574780291 8531425 468666042 56916333 537936183 392725919 922317741 889370563 26930779 890029775 503330039 12966327 486604157 365636894 104538082 382153617 169471643 210015814 368885740 919359875 412745751 120481437 328082138 71841385 528195067 655404417 647644920 869980676 944241797 538733560 854134166 987687657 174045862 960304610 844773018 780270910 782098186 306725933 952819051 258537242 386436379 305184277 420378414 700195219 670131848 93489107 411933632 17811588 385948945 393762340 208840760 329082833 950789051 217242157 145876363 184184392 735456393 407796813 629192188 317537777 813124020 6028294 685035190 229150240 185695037 92275306 337309702 880079438 364030661 235369508 13414140 698668424 880085029 633156573 97491906 627965770 834675882 359500571 146168633 668864038 664242809 666769294 815162285 672082131 296568596 739151894 954390724 736698266 292714012 734340144 675920097 462001942 949544645 138294876 980237596 615889723 549416435 59597905 235557311 227843098 375533241 226821447 496195451 285173266 821959844 371355159 796194849 346174335 875466207 370391568 447637053 410419573 762865985 239591467 924922041 592297622 25708270 78444212 697537736 156515073 818981224 334394849 191948 290460428 490326243 261937535 64693716 500910859 48117422 585789491 5192902 12396500 892295506 263430664 715348551 406119956 251572307 862579265 581687274 897990328 248220737 570349185 323322617 222180666 226257805 921798157 819162911 477054919 331354712 324388977 384655000 16729456 990980956 657428764 564356629 831216766 710558069 834639925 955531520 522236994 239007698 96165262 795039184 130581264 238738055 12707054 984015004 488694093 698845741 770112922 761905365 979184601 822224258 143130435 412740278 208498561 243722319 675072495 877293175 846672011 85363170 540507185 514319712 266557027 621824195 140762237 879704197 520818251 149087806 753165058 47196589 738450302 824512291 464359287 832808235 918529368 544199718 558470494 276049295 859684962 929915381 366138906 299232256 726857726 340793624 15654467 422360847 912800660 713346221 911637789 917728152 24911633 196678433 421271411 898618436 720456990 136383420 769578744 208866536 37967270 12753684 97323713 762596351 459122521 255800942 626375428 806688455 124995274 531505106 262243888 907527515 639716250 954039218 694483914 256404783 741030015 683573484 140402014 530622680 372335202 547623171 485366058 100394752 861603840 787858836 689311123 743107405 968583671 364212712 574175427 158686024 868273489 931286806 420127656 193235643 442861101 473806339 224801752 653397563 985136226 378104500 304433335 50307553 99880058 290691185 775601355 544812922 298388975 111619711 208901624 497013044 51168209 737834123 689855119 407089494 61672520 5345810 932063980 741566163 701902383 983308675 663971070 936650998 714030931 219720714 695215091 344843932 260922163 771706479 792610685 353964606 125281276 669175966 879239435 462751046 107430745 23409586 690752456 565078358 179029714 839373483 233448795 355426061 743900179 606104105 579289398 855345708 646848955 98352573 798594719 882836228 701957334 597929157 668984805 139878517 235056390 539082964 163006052 36376373 466298647 456434003 701982189 222483740 15131546 388738825 358874785 323769870 303304937 181028554 139586462 356948492 250794058 632540439 448136436 15001379 310415941 375383944 394397217 100017480 323981478 964243046 6232310 5632779 977353506 894933714 674147290 718556463 983536788 316689014 566959492 936583557 552574519 496374265 476831997 848610423 614618813 561077893 263598167 559740744 441477967 688948338 104539871 39012818 59297360 294137632 498102433 78343151 815974281 910448016 953994180 276455211 706048355 802586026 890374908 936488984 360248500 102967893 323528110 153703575 819587212 783156253 728669420 333025585 616954729 331168735 300648508 432348260 468545396 836777286 144129372 598690496 596966435 684839494 957224480 982095663 360169291 597583990 362332937 125527611 77381028 383625320 466772870 893622184 38350634 792337514 610562719 47111224 14588530 523314584 149817951 383836119 178727612 773614335 998611826 302284256 382490381 161180844 573738532 904496210 471318659 166275169 125625483 171264204 742443837 519920484 918098694 677700963 667282008 938136317 457305516 134931468 94300115 367878776 46970689 862152437 228242408 964330651 822415018 623937352 966159092 478500685 671091195 765313912 391473443 47137576 350020244 604260040 891835935 220804111 663634433 139499946 339160514 48534335 920113763 645623929 113438704 603526404 128828603 364463683 666333921 414897556 689281211 153663153 193320994 884979186 925252708 342965296 854505775 159559187 634534130 597450786 66915386 423002310 174050762 855946343 119563218 557838749 920490568 884497580 345989944 892331788 464649145 306779007 152270740 235820479 876392400 861353095 657485362 463031445 694755190 461155664 19899592 262728422 365630689 921490138 224957693 117555609 880414514 367493271 651764567 36273381 501147798 757466315 501566583 131434734 958698631 40784553 512501386 178428737 63822326 425885064 284117523 173335317 744824647 202462253 539645726 922289368 455998880 707038353 675940194 637126041 685721842 510850212 229712315 250481439 360493073 558728559 141035319 631822644 598064777 896703885 182147975 10800223 341256545 774561279 521785544 698299136 756677225 437727011 183322142 504692544 661885900 901911848 685216182 473344074 869214879 966979011 941049135 520034548 635959406 952930338 93540600 601860414 955784539 996439375 437989226 646221499 529633727 456549727 911372990 799094339 128537484 533055800 205605769 501853526 452814894 254055199 374152632 812504082 525282975 281271195 794740445 164446454 366568383 791138166 141823050 127456617 144298309 182813323 510658138 868775450 36238730 371449504 279161900 993944420 422998672 395817573 465520312 889361711 515473155 369060661 833169635 9457388 495915709 431119719 955243013 780042535 769391221 696706626 379942082 165020625 607098973 711566190 875995855 332957525 209601666 767303949 146342327 362568557 38236695 730306886 549225072 807437653 574902657 664841280 326340571 803289954 274824983 286344339 695722343 923531674 546728057 313280965 804208937 780439729 226523691 413281512 904723097 140523610 470506563 997551250 350584233 938647735 242226667 29263682 738980454 110463931 157058778 592695516 52165917 462393750 878159361 229355163 806670628 552023186 586665803 32723975 865809880 744377491 368172142 847006582 520717510 710909097 204998451 945887215 281790226 774299694 779828110 660397504 282659689 489389374 129325269 463177995 454697723 156924189 233005208 577503203 285585454 303200525 270461564 38427057 398679569 610898033 658399408 734615781 543934370 686260885 124507017 861669566 905449451 726551806 893256089 109713145 450916740 93050573 128413767 14012696 20549614 229304707 970920597 568484825 501210429 63143223 344537986 938009536 786213619 774664770 827745057 143677856 15233116 737133618 707192235 899600286 291181117 690731087 170381502 743743449 747260445 820477198 14961323 729936122 212354785 65183643 273560544 156759968 529542234 389187198 657646020 930972274 432358909 243397467 648092268 623425373 984060484 986247779 377211203 382885964 560875328 74225350 404583538 232334507 816000917 468025034 774393439 72580744 412831480 125955414 289561049 250786159 327182197 855582529 941662832 169905820 38564952 484076551 757412060 599274014 343927989 339240942 563261140 447571402 112831601 65488344 199845011 785341395 773484285 388067427 331575299 87829841 839242793 556320282 199080058 770249204 576239048 391629010 354610669 815935893 526744385 643520762 145625321 771849224 125124399 346804396 66066679 591528486 452662853 39936714 189063758 638507753 280846833 666175139 561537708 886767092 419803451 291390321 554299571 782298561 146610561 861943592 117699596 825768804 928630983 812637567 878262004 147354231 377494569 719673617 523957046 945798492 576288639 917988659 733773837 527612679 449592279 902334975 751209243 373239044 65892162 669784534 910506579 674841172 922573717 911434586 419354635 202885841 291865976 311300099 761448336 193164901 284202649 310012254 121532991 578601887 545476795 356898421 841169569 665784542 89268126 69496384 85049899 972331263 674950136 432712040 106968626 527010984 85366827 13040060 416066216 695040060 606966050 36468734 272405554 788188718 225720899 442752791 965629726 588657946 913037424 311520491 957415463 532850982 475812726 164255014 826654846 95270966 407545306 828538306 658974795 772770439 720891334 393145993 62783934 916842696 549048744 139168320 753561863 274311962 686426309 369128074 602034750 238318950 377349230 481418770 628784255 176942215 799192372 621977918 742483406 253509046 158687617 157152647 253559978 572746023 95351078 309487186 179642048 820816332 554136290 267023549 350498537 356799038 766057725 320732590 268126642 305069922 175865811 200732690 208434064 8329858 330678481 757365512 207310039 930067548 734698493 399953053 378386588 269351604 855983977 593762941 52880444 63813593 105211115 620205853 548280522 412534083 866278425 116212101 890454916 446805639 174756824 445792182 386623081 972051977 794122781 464863598 994808856 493309637 762395417 969707174 836965577 289271964 295652211 971161382 824725905 908362838 934963695 231814645 632103357 779591293 459275718 980761498 616782034 844122224 2022241 987457030 171492857 965900725 916675044 52085670 821257656 884408901 286264204 697297379 621233306 813954157 318373823 214174495 79738000 421538856 748864535 352615168 775633040 971651372 520292512 257272641 153638518 514438130 567462388 728638791 631162321 935950024 393073266 382989841 248816045 75361943 10653785 614156798 665812667 978670573 568736506 19350174 212958149 355455201 149681420 653457622 795538740 254260484 210563378 249531454 731460403 711449709 937517779 616103077 347390760 794377254 997195171 828802661 299483892 493757069 523026707 927303563 572088689 391203311 627254248 479878195 733688052 611698900 722551737 570451244 762581486 424034464 284039840 564642703 477066949 727326235 902508534 713438729 216910944 615584368 892957246 831576881 302721240 424422581 686140788 867186708 327993099 262149232 995398202 539032842 854814368 202261147 467903872 932654191 228525814 714142570 670326105 416963649 47081549 76235549 416500335 262694695 218836590 28553580 719804850 441013641 900355369 337803249 365090821 12822258 714880185 221921488 840259411 948838350 963389999 59887483 570569217 198487429 947728936 557698424 639387629 803394580 358292350 487159811 911323892 955284254 795850798 615976406 713261817 123386394 932871272 123565172 893360764 422734744 601171091 210838739 73829790 769759138 88692956 491026786 411771371 629023982 912996857 38276222 970441832 148841513 96211213 350358290 549178816 650735702 957521402 441431364 435756690 561753270 446303681 762870616 355211571 192020774 490373202 664856704 190615066 49852146 408033547 811331696 905932618 465104992 877583569 61640481 916586639 676617233 988526312 300067784 389536463 530118955 957406623 402284789 218110725 865636785 132597153 280678319 835962207 483331920 65488799 442169956 583272008 263116591 379409140 347946352 443917428 159952827 368940365 442925978 209162204 331821841 13269953 993418609 543086193 19437473 129159939 424450039 545784720 215411317 931043649 614241673 443774756 968114180 548655736 536051620 963499860 70672425 585554929 610997584 284898177 374005966 914747871 572216444 630477631 211296623 937872877 524349020 548380589 184605978 396560405 296981934 478565644 890763703 64504378 182498053 555544018 627016920 27074544 956676534 720209813 61496429 995270402 723947410 874352530 896892994 704432624 547698092 698783763 236906125 588722836 35084923 158216056 103132501 834015509 43434576 26015755 339591194 401871915 87268797 995141287 323294077 46019110 206361312 218782389 797024606 933076935 253094835 810295798 86318675 362473319 757502492 943257679 695692310 178983773 983674971 896975176 27542722 628777562 673857122 483600139 280049847 907730051 293007608 261433322 160654788 149081928 755858817 852279007 970998057 779226604 498489826 65585251 732307074 612910630 545835884 832506788 710482726 755346731 851131001 62566593 82325787 645004889 108809161 484391741 457782381 686883752 254083289 93256546 132189260 945328553 213356136 464704428 194936246 937810001 859811921 43544130 541971826 46755388 171317025 786292992 239622710 763008974 314362409 405198149 936730282 77000024 294388087 874941857 556783867 743985067 7633704 829353715 215585108 18298439 992384584 182101503 596316540 291499136 677568239 819709403 136338778 33326898 639499368 560492770 102780206 415404744 522808979 285147394 127940068 477774789 668255382 83196874 292795199 227769985 170847263 451984013 219267808 470119109 839578102 587193793 860426257 550813685 225668598 264788652 14200812 786683974 590946160 469653227 914525255 858111514 647923135 786382926 113279399 738828661 493166289 243661572 562507767 773307373 646204560 543858806 669150764 205150612 561933227 448258478 656527044 786956938 506147989 126444966 328106309 419556573 913838199 565139401 890851961 807414237 597753288 544888399 690756009 928740798 234789152 689914279 23731287 863855821 545185315 773923704 862299368 733351168 646960730 285374461 201088326 424094763 572574263 52642201 430243173 168420201 643761971 453911018 511213186 579505042 60486422 392004868 682592122 859697309 925435860 505776021 289158256 488355156 223416661 136922441 454831748 909196955 323566701 730031804 101072669 775001466 149366242 25528064 279017881 462824497 587615417 798398394 158022429 849888472 206896503 857624260 532995340 543681327 297468143 111047865 728922762 530233312 71907711 659166035 411646564 412097504 342601325 687544108 112495790 633250478 923393380 436024345 354547375 423309859 200843687 850314245 449500749 646986914 700844399 576729637 991084883 341094243 842171157 201079938 107117534 759219860 624602240 772440703 818679458 992365158 634016285 465924431 880601326 88335143 430482432 208013092 48680989 431632618 430302727 194385920 375206307 292484537 711623692 748923971 295434206 540788072 659967511 200879195 151491654 75174611 376082215 237445702 289399860 543478779 521125704 676694134 878000289 889243517 332592015 91423943 195305944 46440949 84929906 167643223 386389820 829267580 140887771 680816588 354292490 84533942 257531457 677789903 577390060 674958573 25457060 754426965 903138256 594460042 412687897 600627775 691809099 222392508 430376664 933296881 576723623 445478045 44294882 410817894 712031252 850636509 67604990 71613128 609838865 401735036 403501871 309866980 345108054 210678681 508580299 994477036 823164183 997584401 822668898 676984319 319939246 923273813 733061471 611269147 136012466 385908112 302199628 133421279 828107776 896964070 968026921 505780634 925488462 778121509 839833417 506960621 6488037 438430932 3196853 244631468 617514198 980806013 270990940 565489377 988156376 474800616 722684449 929876782 731116997 906721631 580323032 244331330 968080948 9580940 278732830 693347682 368221356 296536560 913561917 864380300 512421229 736753566 676326425 285987844 684866167 233081186 146922272 175185574 26891428 836819571 492610653 158487380 837842863 882846796 937694746 186788632 139425345 194507528 45931884 908352716 422833368 5946517 354034270 106005744 625659702 750046302 355380996 453525594 99599396 649775151 976639765 794227575 289114115 586726519 308745876 577476032 449427817 226011942 338541554 822668175 549175188 280796039 260981834 436854515 995364360 226756817 946607359 903172926 898895434 4554185 276318166 677842713 454043917 241709736 315110292 396780195 621917486 233875827 563321838 653779534 362720404 600902604 638681260 886739285 567537738 277464132 789394167 565016083 916937231 293548249 925264545 465452045 378863399 26306264 299727457 259574465 340884714 593438552 988973138 554121601 141372023 793221119 595371250 625289873 744230501 321950471 471828026 424700754 708464514 387461139 11754281 392495886 853077271 473089752 399019554 340094893 37114500 114251795 573351895 612702782 187873579 295238770 752547344 407011124 59900882 44816524 407766809 496669952 17036638 464616962 758568431 373868005 296779273 461736744 803484341 686644051 430686529 370035490 410407253 188048769 787002089 438841652 784367561 792812850 380527531 548994410 642047050 427223014 726473248 241244538 328477719 14381860 714313446 683904566 387080713 752903049 499486269 572529246 134594390 293546005 154824947 360618051 195470594 661480918 430923284 543603435 796110552 229581757 441150378 160018024 963144317 821457685 625973896 848965644 787005015 726733499 723593246 881510690 179420591 510605334 928728677 844814057 274087016 827654655 258023602 935933948 686074040 289453122 25484472 176726365 332661371 806779931 452683738 80388535 668710578 907092102 235869223 869758663 77392573 112828644 849495627 700387053 515921934 342838408 673633203 145138058 820380369 813062877 632833375 430151345 486122130 5796308 381742600 173903419 566953253 420518040 82332638 833075707 250487961 609483506 149713833 995144567 759053863 639269244 727278332 569662549 192451365 78891190 207363652 393410587 136126155 936379761 436572454 743905574 294909785 805183374 876383963 485790461 24310208 633135030 762917294 584606460 92281356 781393811 464113789 409603981 471867823 824719489 593277528 340933074 118234293 32424395 863116040 85989208 761977450 951199449 29397228 724703213 22861050 224929998 589842227 601216943 50613133 471680844 16292295 237504670 396574693 595013570 673554499 541358566 146614081 780607096 97284702 684184744 8000944 419913715 292604060 569026308 216551815 335449043 844348654 707229269 948003324 794237755 893554127 390860122 607474318 173133475 901990840 207740477 170485846 834248116 725432076 528447938 799022573 706843922 847292892 934966530 870368009 41244608 539698259 481808328 250212181 553934490 728654612 96619163 438404534 63993684 443884611 573362388 756411081 801411717 27742033 431333754 855138032 803706066 539599340 377894718 751880470 349450364 2204706 919923009 493949374 194421322 945122407 74034322 852702929 403440974 138420597 453322052 885608371 818615036 225352836 241005762 210706153 595433669 28921110 280142681 838269011 230055116 15821986 187765925 524518657 37885796 397356061 188050633 120281494 409694792 996891933 151612932 663854876 699110331 42804264 834820194 993304520 606976184 905378383 925834291 838137906 451971799 747446024 872212501 211269925 667576837 359761868 684545052 546634808 328074173 573388140 620740507 298882423 126122209 847356520 876493396 239707984 850806998 751567864 417689202 837124591 445032817 218445835 639444412 350147466 374813814 858099383 573321613 364675515 470598447 129626651 267603102 501088700 376433066 138937104 901225822 959233711 139472418 890738833 550951570 830747908 66123737 845453061 720805704 416154839 605865740 811047532 987021721 761806820 511254961 258685953 617403499 471434352 414239582 276736177 84515098 389650746 160273578 469269647 854116756 290649311 473179711 880493023 416458899 518893828 242440915 222079221 667203698 509487080 829495129 345759553 488561072 17585064 778525658 54851837 513473677 770053685 463995609 540427446 858886240 644963830 379094833 287207637 992100734 554492867 877038909 102950889 128190666 780944590 148530923 740150317 974787951 653506348 261691014 629940017 60997501 999997297 337061500 838014017 128487031 438724797 782221505 390380604 328171828 600915925 584337914 800840426 868436667 851422909 608259685 67519787 234012582 855165685 616039916 996287495 961701195 462340924 623868266 667206877 79543421 504650909 793498203 999120801 549218075 666488027 709612752 292504413 470683440 805104641 973099372 901108687 325706748 26664616 520701883 950283469 926504350 141234142 828099631 782341304 394519010 693824234 8040239 172694782 834802091 590853735 508508144 171450262 127559879 357758637 899247197 692757958 997662241 994356610 711676781 729921961 170701386 29904421 225975238 8025510 784820516 232259007 708035332 139734409 480480800 944913060 110230343 735178453 997524820 411206946 228727197 385443051 220632928 418415556 303004039 323037192 633380805 939964387 726736852 335750165 826016205 691238774 320978911 313354219 318049799 636138900 366083101 372922919 929224152 179530837 991275030 98397410 322572865 825545601 985945783 517155537 733974681 804183156 797469067 623371955 188738852 181378723 24041260 939083417 861662681 660794453 997679747 347423760 5856795 973384133 407166810 430692331 595272931 719417736 800651775 98173850 681742271 481310087 46757853 311943288 57419178 874495880 140958497 461547278 939375069 669153658 907330371 508204319 595784554 715303153 769212740 257554108 158983835 304872350 917022889 590383936 292173021 139606396 890567214 562247228 800005192 639343017 131464166 826136134 78432692 666082647 717188777 160951278 581560976 896135112 528031995 760564042 817893909 703344638 231605658 615118797 841970307 604732109 4157881 153264231 223546315 497395755 266627645 827133386 586094274 354006682 843460974 184144497 944383973 946227502 410307075 24976272 528160773 246508007 889231632 709929632 781209490 394859031 205997175 414055844 167179075 158364625 764636523 829017469 500049113 675092716 595311843 484061919 350366093 946750620 492636675 812314598 887848696 498066007 141068997 991185728 912679885 88968023 136785553 32179196 215385580 492569590 16540223 175360261 626942174 91174657 152672513 627729361 176986607 412879424 870993876 793105130 106526269 957622570 43445988 687155333 317818393 430488277 916741220 62342887 359503899 71999326 248874569 47286674 49167425 291469880 645952230 390937420 215825720 41917071 110402011 674065024 238278943 936144094 100032629 853347280 674003721 894997062 868935552 381679757 401339284 479361925 845558968 594495384 600172262 655924493 814485722 977484103 822055048 932420431 192350373 749670218 831269620 540552716 247911674 343314115 833887202 976014315 170332033 872981775 582862097 381441798 717979951 856061654 918345759 489316965 775855172 340398056 442113005 659042172 81536884 992480938 145369493 332554775 622796763 616916330 827683292 576092676 952717815 203525286 413784300 430703020 881586448 929196864 356771739 420151602 811451755 52983054 863718192 318795967 221295455 144459097 200791212 662750022 375547458 536365705 114366699 538218491 15580984 789280003 79199100 826361719 503393731 400203687 50415754 356909550 490017060 257728351 647101210 366221628 260730202 625747934 30153211 338818210 40556471 456597071 420958725 657116685 272606448 811731269 637590677 628487789 379704434 902106777 590640735 690552610 239864672 834261924 972028644 76170953 98795493 464139196 985930232 630434923 598053323 985602518 697045076 64348672 46833981 53136762 105755022 377562057 847402581 191384339 586639416 576679655 557692964 704487174 326299956 611869664 375325996 854040137 995473386 669700241 536027748 442153491 338389658 547978338 566823826 563701638 194276402 650394724 470074741 527143777 22164236 853156909 987770578 282354225 133292949 693005591 800553551 815467384 815892304 762152474 449229943 294010592 946287423 699321108 380062087 151638131 36938477 322411392 849779593 558207334 298899025 79321415 964289058 158636473 837521273 718487417 497314652 856482776 500168816 133124026 164936137 427506978 677931884 99267008 381483682 970180032 10241719 692693560 296634216 948854576 588061324 841994169 442705469 705258456 708373089 639108796 910863199 7953201 384477094 574414438 442169177 990511289 687328722 412544597 77303080 789493653 618531886 438203618 544371225 944111605 240428981 426077854 479605438 82624277 757182880 490635137 423073813 591829240 737867510 530313228 641766936 104670655 563620613 800529152 426968452 679042974 483953196 452595451 486741316 503658989 167941142 764517699 163431364 998816362 942009925 650304891 133019354 932357822 47316124 66816858 956604004 8348995 124053073 888356684 969793355 156768489 378345402 924096794 114922722 301518527 11001598 250955134 16553624 946643603 244641135 788319075 400225003 747302073 243488390 572101845 415286987 388536545 734280340 950113725 973022458 172070641 831024050 252386963 687226015 983687484 573871536 359741560 595163940 675840631 55260936 375904751 823331500 30748644 440138700 193147749 193561935 809388689 182292577 500725643 265245185 130534790 952230357 544359634 161153112 865537172 147248390 23619939 574631901 731428687 945685784 293092265 60835670 721168561 19563488 278114016 530100027 211439434 623330945 842968159 128643801 15378565 494736923 681346054 341114872 588688953 972885513 949632509 404188789 733151046 703498302 413032961 81460049 4113776 541112456 991347327 660847502 643159573 472075730 466913129 656683533 847362427 886969598 438260922 586745733 812660422 997274657 139172448 358367936 199062940 343790231 18936614 571157228 535211175 553141149 613095500 438909041 412015823 443466491 988851111 863695483 559465356 558321051 326342204 223482186 283888381 435941545 792247892 569966821 373375674 963592690 800024996 19604890 205338765 512205938 395827298 713699461 63528094 237046161 612209043 989425045 692056716 716270757 431734443 545498022 159266369 730051065 945792213 98578520 38002762 157370763 601521617 129084699 399058647 483268465 106062089 245202476 215776693 249853965 561422701 175259855 692215492 666960245 624620566 380517740 970587145 262989567 940261116 742740313 385152438 28636597 220390096 310825437 514483353 560088187 470589957 173957299 403566060 426375187 742917780 97473299 750309237 719206700 635624415 279582433 233163336 451166786 861382825 819531024 227397427 586140573 22972828 52600877 51193967 20603510 188620568 519016490 879646104 618410579 246896236 792360424 195134355 106503711 212351963 643517419 659035885 667485676 756158 595864275 489968163 835193045 716906022 632705248 93599466 336630185 714038194 16032908 662098394 249181133 178495531 627827619 743447266 363362357 828458058 274720839 311776529 813199861 25075929 364392913 165815005 732101409 759491518 325772745 398076257 58534524 671789840 305073748 642357704 96228567 974406391 267378407 521354496 646246687 885414240 3409046 679894683 175909714 690990139 198244118 667061522 271321940 779817852 775346428 395382052 792444450 923069251 900138572 111397774 216702102 122137397 330845639 184628130 76047072 77724966 905994361 440734213 711946694 862061195 536903467 432559849 689725449 775497214 187032681 326149928 439210335 949122953 524784405 907939388 702145256 870275156 658988262 980217162 422121756 765069104 903128749 385882221 867206949 135530900 729052577 447340186 889368139 768770954 640810556 503938457 543143533 813452098 961356146 644387402 398761580 434388220 351625847 560613798 995443276 36141482 472533167 824433830 796627623 863707019 143381429 694879612 624148553 387553199 463924824 565724381 807494210 741472739 379435484 75305652 430759738 463366083 779536760 28698403 657568871 264105638 471246405 915231302 592331791 69813874 546364826 233440989 906630444 435529980 996497195 525264207 815474786 303482594 724908748 650592648 550698123 266055323 189588518 967059549 957508526 931408092 456188289 321288451 8657622 287674355 138856840 169287989 535398476 317460208 155977588 713350490 587148247 980584508 378795305 419476750 860281019 557005628 785364925 861725292 30430170 378526720 296162543 961771216 256490606 972377310 811351058 447137284 181991208 608556514 824565794 914919431 972352973 311236472 302118106 192704127 821098993 798873408 968266447 141780641 223271407 302771329 724881419 823089240 203528210 47902629 571888083 742300531 920958323 751001192 826497752 866082436 16119342 422681526 444562783 80154605 124885749 915270015 277856750 488330361 268387753 434980956 244085059 422174413 51228157 12720613 312889395 970252865 150997348 918812295 993246276 753278049 7165634 197189848 330613273 997443667 986954639 362533828 15686252 980251682 721494148 672501163 778962663 173981627 383360439 590823303 544959953 251068245 916417438 424122937 82704424 101195116 169474859 92039873 757375967 969133141 973972831 324336923 586827411 800892228 520602131 30568280 179356628 901371595 548407074 714372452 727700806 831455990 4933628 277554912 720086454 406117148 903989477 862794958 14989333 215952302 507612323 275345443 511478045 807357542 641108380 556491558 382166777 215081344 638248128 252287335 365125402 449586882 958052347 666699622 669070262 777476757 285917874 467281997 804410003 883232502 16707862 214400185 536562757 182669490 783710636 645771846 159928597 899662331 621021160 780424170 30444768 394274677 504260337 57240212 88818233 482064136 827873608 318050430 766361643 159429791 739685136 98272238 340295171 259969388 424773029 60017742 717441461 295206772 733860622 168842258 492185744 234253516 462591410 277225968 170966689 748642205 662625046 803409266 803148729 543729695 832230266 924539551 410135511 103515796 451106853 819268004 510159836 484884064 268049454 441400720 948666794 709623758 122795152 400844281 301659753 728498477 92412014 571907919 173672635 904297341 615452409 605545210 180162014 931153141 552891695 16791048 680721238 630353499 173149382 317865555 909331251 519459945 442229832 545828822 696655130 364021468 986815193 682955803 615185970 127847407 85860035 67225318 604459901 894945693 635393084 71928630 35476819 377321348 213523530 166688449 207585208 413083783 847194527 677807932 582882793 27793744 448043971 856676967 463829261 37147037 110812260 680087717 125425951 548874089 908423222 255201067 230687865 713694322 477364020 360738797 635743367 259184663 875657398 793773160 4312590 975370396 760592395 232613360 27019899 198458551 192647465 14026333 741224843 170164855 798602500 690618759 157385827 413914342 653211609 612180748 993359534 239862877 450292361 647837781 200416405 849517869 742758468 246163585 640119725 527020987 836103295 993750289 359410209 836438136 128177515 929363819 57484729 929214775 972259133 633616609 478232544 236555159 174874987 340703491 483769160 456134304 342385877 598974948 95279796 492693000 435504589 134558780 726006671 111287589 680005112 766447866 427150398 472524905 40180054 382065065 702927434 766244519 735466044 501743809 587288392 30950882 902054072 248472033 718993617 78264999 733428903 513508982 902678418 892363121 668197814 384553211 91739340 646613828 747674397 190287727 513572034 594629600 699133144 961067983 712542665 65692327 950834815 767553671 110953149 862837283 854268686 448518967 580901299 952431811 105544464 926457431 755906467 884542563 93430902 718467642 834128764 872524732 498285851 445794364 258876404 191114845 232036658 118935444 451192132 976371217 547629592 978481303 420230633 35316714 450650455 504312103 189910406 549472188 263509237 396037538 225789441 500779265 506324573 523006571 841110174 663351184 150987052 153289839 361199481 615572357 853291152 776198933 349371326 913840143 103154363 581617106 144695719 85300389 533316075 750850763 717522705 100203102 434933259 784609054 266827516 519943425 838490704 469947321 569451483 467722688 566599683 328535304 691349027 516537045 829221160 509541570 379222598 170460535 643316439 566655199 947592027 992867249 313736703 278310428 107331376 579462792 199553909 97327780 842209573 345916408 954295785 660527560 90647272 506122697 78283149 444417007 185195359 9439630 75668319 670255230 435528033 870941675 995817184 668184537 219978362 857060489 105105523 484688267 314313998 630344390 314882334 832313415 698552445 421598330 496393649 854180140 383012544 236328046 204884713 268490288 611100670 510112705 762661312 215077350 598786071 617329467 525746722 574589304 239553791 684938472 82475461 372831484 510333366 622862051 575293603 274296779 205342028 671493635 311474473 331804152 482071056 267603694 193604667 292774163 233738766 737099354 851641394 469620955 81130461 260312948 862160675 314708344 277737280 165173543 196318582 120601224 234033917 844191314 404589913 89146884 845321454 89669421 710503520 857871546 137189632 708101045 853733349 805517619 127489504 852246927 272903439 927997068 704039192 835216320 851488346 596543469 109659178 815263898 67332464 9323898 641999319 114354993 372835205 852559250 684025801 89260288 841416359 476423897 959702145 497408730 220292284 475183680 622605513 827988401 711992847 16187371 297375370 641841561 544289029 993822808 809654437 135891085 841226564 200678786 271672904 629059061 683081026 789553356 194637885 656618863 846911073 277417929 237051598 764636252 564805652 551624730 738854612 571195101 265512021 135201474 801356025 748246676 996525878 918719828 167831634 630652839 515403056 111523414 726292628 453791553 317403528 892229132 666197052 779388315 899092831 324171108 452601114 991537046 635967189 553865775 621103287 164000024 246122819 363412314 197615620 86467253 331297233 723840585 178912402 512463417 498931811 75607062 806118829 571494118 554668465 350621277 536621332 420249367 37732632 750730401 239116101 199591262 215503730 663965461 402107273 969463277 961388869 838274319 521766804 610317403 914401477 472292797 529749616 726393112 258577990 582261686 694223296 931589755 543284899 32764491 689670771 675942069 125130457 295215674 917282553 59902766 687393472 556384410 146713041 834757078 346088886 189467358 306406425 5754971 722223735 936823611 89502578 57798831 205432563 279823066 173334515 18634946 451231874 295760091 37950935 692246050 329776656 960531648 790318911 528841681 323918090 384193073 519396686 372481295 464009665 362384731 284226383 527012699 660189636 42983375 884051311 897780325 133794203 291376768 647435899 65149215 694503510 317987514 603240821 113959966 33455201 693240913 268552054 194038064 133041545 713604522 26469344 28063740 732368424 239131621 512184376 291562530 658103232 61337039 696393878 460776187 130839699 370498244 554324173 209399596 154843282 166684813 78245212 483168299 309479642 714797834 809120500 981774360 33482698 77485007 140123080 931153955 49249647 3319867 414831924 136351376 178203478 353297494 529803746 755335326 5180533 756841511 249183373 576649992 574221344 981097230 122295439 731507056 481609733 357156354 962905421 823748955 518739505 575690829 433286929 534953385 829554349 759992301 434364638 340241923 667922778 48451286 736396542 964008345 641778731 974679182 810815376 36977010 277309481 683585386 640467464 760440517 35479466 23564815 971399399 297626162 876319839 96492482 553132901 468404240 72992798 348925282 100527581 89246031 976755792 768803596 235009260 293520526 503896769 575592209 551473258 733979873 852819146 504035220 38035513 230880526 436919205 633917100 337059985 869263225 227127285 189760858 480943817 584348249 158569561 233344870 812839781 548423545 234432057 178541842 146974632 29342811 451126842 162805454 968175979 625378362 89416334 188729436 960488049 636677013 416246644 62874974 723713545 515875285 405215905 872278022 778855052 970903534 692506342 522379697 193130642 85681679 211062650 726520246 171859080 134870946 848402019 249190703 987157869 283223300 957567555 791844269 7087521 771411331 923220285 255195424 976474402 393987181 795834208 530998820 555261510 862950590 110837849 879766190 818854578 968433401 822920929 579741310 699115420 870210248 270221075 983130525 478383544 192225916 824519526 492107439 593553543 287582174 201416796 567952027 702495211 808936778 948705468 597065153 960574429 966703896 241333493 189607543 43401545 644908101 102025324 720218924 927748712 447036492 805320561 872311464 836803799 797519971 348342641 735137218 508887164 468758170 582737133 794047741 148677160 245692578 653553353 11828015 833144282 340413890 236685459 959334541 352710977 997388049 758424945 945927480 449790122 398794271 347666378 838867896 544456518 706197382 549832894 67057470 369594858 516771862 541806622 532060882 966130428 299811572 360305065 774143533 993587744 383336394 890408355 981054279 599055341 311851238 592818124 855542014 21949193 326417632 95279695 579683377 741030086 615225720 612252874 142043560 841510427 997494936 94905597 100835854 186289292 342254197 556720487 245142489 95831938 672691090 799234832 280278753 883332462 378530732 877220684 6988362 977941951 775468595 679435896 947180995 98170449 622987827 269069138 79730573 24047504 834878018 847977972 895509092 659330249 816365680 517447438 938841906 664855224 533265760 313561309 92861331 206264104 783789659 99741482 81785185 328584489 854810308 992581351 970897060 956120466 941226253 291302030 62725371 868707836 534318022 301631592 766481537 895284762 482875980 624681103 702696886 599610293 311787453 192351388 142284366 373500673 37623667 51050388 748591004 322014845 543532111 610607959 400764940 544955203 564422599 592869142 476466881 523408397 89912291 977104462 357354956 574832861 390450459 46937997 197311801 538668589 731360763 380202957 770436018 175089155 636664013 976172798 532842462 173379594 894946125 177260458 725897437 487931282 280397610 918593132 268125302 740687433 287785453 689143752 915414243 344507812 145920967 681323216 398412426 209432287 645733085 821425364 94172597 544959505 814792790 699007782 978120444 864203565 827214538 292695586 770263000 23332116 367842873 735995751 681840637 93318268 747273860 988912058 893556704 727428490 286303207 435813755 947249329 778465631 142769103 57723983 121862557 231918225 662728701 945839338 780635335 681799156 762995536 299246270 507005678 934307203 890005858 26643281 963848301 42231673 949572118 368307370 74647983 708968860 593416036 281599252 812444614 663847525 780401358 811628929 397388634 606195421 941528878 840110454 43247010 83582121 801034045 959186107 568814507 248554974 482084641 597308664 375994115 312123993 767797832 607478486 34778731 433664191 422074290 983431303 852361765 491139411 287267042 684788617 769283699 857556374 447717214 140677118 584270541 162233151 574213998 343622584 153183615 266991049 200557924 222453220 13595158 162823414 31007447 662967675 6652390 307711858 151852892 829387920 538089359 866987876 2259338 669451470 927068249 199108800 534076916 433315462 535540644 558443480 517862801 491941932 660196857 893582108 674913755 823288987 122863791 781222543 845917828 745792820 624102498 21005620 389579760 51023360 747490293 403474279 369234665 596716565 715487519 505846280 412181677 543622933 696897508 437232293 669832744 400780286 417610890 19534195 141496094 640228241 486031143 749123742 676376021 340581096 608570104 424668722 747325301 578509471 814150243 954799127 493560538 732889785 794751413 620221752 797965239 10400442 499967843 565470444 946230141 25047079 929132672 182607331 688391863 973166077 142131991 160654259 384942871 308835934 788033798 421948918 459125740 421054767 596364459 260080678 707162994 154682935 189550479 116760709 580023219 559254206 988378512 777789811 695089850 972671637 466536690 8024108 613981033 23263889 942246417 726119431 441959959 105420762 525310486 190662624 588908304 935616931 206947576 235647903 852136324 138635991 568599882 873962873 362861004 816451287 544175132 556208554 474295385 675678761 367997658 327013268 163575734 482412496 971147350 132250468 54564006 939721162 94950092 541187597 455822823 43514441 499909719 869531735 2420269 955190698 73128215 364945695 217147479 279199172 323369691 531627530 961532428 303340566 427383761 107577593 707450626 488491344 398468875 390494014 441319590 688903706 410606085 594142838 180065606 61225020 685715373 369953449 271804837 539483025 996587153 606219500 719196284 21352695 135050450 96435406 185918251 52908635 479205995 91831537 619091698 625046938 150570388 863271109 398864466 967249286 950350255 967868859 507663404 834058943 656585178 387387815 227647011 749909514 71783894 60406545 9266565 998064339 264736949 271059450 952196069 65528209 281617888 753427149 444561486 529162243 308135507 173684617 549600033 633146244 994665179 93605318 349904050 273903889 677719453 641669199 744115841 762200455 614372467 424332740 546449623 455456540 519593182 723881702 776172289 406298843 698561007 959252557 56661714 546516723 961417992 682405525 383988661 695548128 676141420 354746361 809123773 457428914 996144550 294233849 608132721 171583832 305404206 491275059 387160685 70631509 939718594 596369271 187162635 755788582 891418933 386351912 46668362 550582849 903213589 656359983 649314673 995725331 839387352 812773583 76823004 588939945 630546052 711034300 280496709 920234505 602519687 450984394 67349584 300807017 916265853 648142923 171240935 402032260 849402297 498793375 578969531 359441275 506679906 976658828 399852693 588762910 371660856 334946539 193158614 706069281 149892290 510734713 52052794 397123668 661661312 660745888 374404318 170307348 794359258 606311123 288247184 490719486 504208549 253741485 77377688 135949780 110133872 639906518 478230838 524963921 383633386 719396506 502537653 853490399 454300393 913040566 579453400 73451915 799311062 53443721 120653141 282712726 478622043 644643052 417044393 289514628 940059396 245472944 58476172 428241496 274957571 345982096 642522260 437080649 581889421 132528992 109765440 106102816 930960998 914801976 774423478 506326285 446537702 193762583 692950390 142889333 62648905 683106020 72528946 380055035 79662484 629778937 491546105 715633950 13397621 177298243 821145750 509168075 171402941 572371437 756569837 980149515 151360966 626304292 764875652 942648395 171293295 451049128 371533902 936577246 133974398 378817966 873040482 837060710 42128052 585295467 276482851 887152531 301247456 735113989 360629512 615347503 890846828 651505108 477610323 956162071 298102491 536637934 858361841 586636296 964124785 258918726 900586740 553476091 6264010 807663791 167404174 945679934 870931265 241188159 976752091 927666101 951192795 117003028 322552685 727280790 910498330 951670412 673767413 299146594 887423204 467902245 117545330 232464790 150328349 15704718 643264679 691639306 944216883 85761238 732806824 928483338 947923425 698868895 35876534 565087628 122214890 926544931 850267825 199656631 92106184 80721357 995241486 437473208 778734831 910914680 49966368 275918351 357507371 911302700 119162665 783899186 929394498 781800375 47386435 793255025 71954485 495868955 696635618 531538036 165860923 471494503 912849929 77152130 333952385 131294049 142067975 462455967 227770044 626588583 870288789 545903390 304544002 614413876 329200841 18631118 146503428 685923232 785823384 331075142 140653165 571910364 918561005 132134210 675207577 784335558 549606984 615148619 725802105 110745574 441669398 798511972 498512656 116307280 965218396 470524332 870517009 870900309 969064777 701173290 973318951 747333625 543758528 830837010 686687179 822104526 338127218 904365542 601049569 587529369 521182187 642641796 179167664 60404417 689822232 533662929 868708702 144117052 449576818 600078493 966206971 91362729 117566212 403711492 685437329 41256447 94686473 893232915 500167926 723492015 75195810 479525092 815176365 952609854 372904291 524912960 174276393 507836897 462821308 645547148 544185536 83781381 965982636 153978694 118085397 56122681 36640874 190861858 981453851 73021327 58894010 99135601 809207051 749117906 228613000 397216039 859661061 707446061 559535199 562157365 497097393 210050596 405982152 510035507 209508473 165691995 811331615 234039683 271009249 235545287 361561835 855786149 43003778 262518197 108348901 637952344 814317854 320421831 617258046 573610296 34481646 476913488 713886042 568542714 889134741 955428869 767864834 841618433 867301311 553434487 754476510 624232023 380008555 323194103 766378089 676638779 579192091 698857360 810405482 693291961 741863757 475240523 176115108 859505547 757407453 677116318 716832921 672510505 352594317 433155861 22438799 721302294 611382720 380862576 520585128 904962199 63917657 546178600 289131820 764560825 214963576 107986109 450713296 409237796 206143433 946631538 990672802 657066630 831575360 310918933 868652019 782915749 973163822 303671696 565821689 869616203 257174717 112592212 101821735 119950759 125115238 439880978 875749163 703721456 726587823 841065904 208763400 869048163 666335413 581055820 286038181 834950585 252958415 397894118 165861031 51288204 924405542 994375954 112225601 474769757 89933905 883367046 810708715 775972108 281482657 720944796 679664958 477913321 176946534 406034426 956613467 701098918 557415896 332200158 500844132 707256497 944381342 10934636 54223577 767105539 712184240 245659253 539414762 918046986 485193882 169149384 818509137 607338321 90310377 268010862 474887620 607669264 464722154 330951979 861075492 717477209 416644625 237883193 93582769 576021709 252043704 580192182 435662969 221766624 605463357 11258112 443367025 75804036 30085229 314197145 143949197 609865697 791883478 581473640 472630843 243815801 991087953 458882125 189034418 477335134 993171796 363834469 963753519 301169549 914390077 575115732 636874729 236714840 3489662 745488485 19626933 424035745 368565393 681542882 527326014 958300780 822974592 61488437 838255962 369869458 606029815 687708813 458202109 536675859 381409191 470292383 201235021 522178623 686678328 46808717 380155194 154535745 917856954 796449297 709845729 67853065 959767374 744375736 86283515 178984650 329224357 946434524 1901938 399403198 261694664 289183792 964304827 174324866 76229799 826885680 632023950 954489623 647483191 843355492 616311982 432980659 731450761 275653318 284907087 454926713 326900839 76039861 29309365 981135054 463331659 803245332 99535862 99934125 558044020 655988407 227521039 206043158 624512895 183792562 630488169 295112678 417446987 626484026 700485230 959866113 627461063 120399920 174785777 839661072 274610040 600621400 92978493 157361893 22031423 505979640 109470252 519377075 685737787 330494242 175064810 783966147 867016662 317443899 927174994 909908777 76732039 789585833 86644253 821024328 371397325 736942710 526503304 683618764 150954933 406674147 865029598 158251169 866545477 494574691 302635219 486747308 600157972 623752737 855097151 975900916 850940927 962072317 167758446 961014906 365595142 841771485 805391242 725047984 78815089 485461287 406749891 147771813 408491621 78459407 656647473 607817550 624446621 36139270 817214995 495869023 642457645 475549349 943469817 837927236 830610906 551825872 772811885 934570059 543430369 505333786 557798338 654386163 507640736 851507921 734771526 508695530 251414289 924336467 784220511 8070957 340110072 89623340 540714942 999069412 200709403 483334149 580567033 37814696 343798346 229002542 467326422 639247292 555942081 296803939 106520186 539656106 393422122 563005180 321122849 777828398 893314788 780865165 63284186 211543965 582405663 702785018 46030298 498786091 435056129 559604439 774373160 358234402 808711949 982361809 997080269 253683531 784173508 515806062 190795092 362702112 141529128 556880549 331414906 874791988 553007959 398389161 886260225 879767415 519074816 546468637 774098982 431689284 760672534 613638052 309331011 348552826 386279149 355659743 437318148 824020972 133107289 573040705 557563477 553543968 650760946 801060342 589168203 213071534 785250108 886699307 378270501 356219809 510946956 467599658 78196353 635640021 171721541 68962102 254102982 581069322 430888843 113049291 859375227 775160865 281192877 751410902 806013674 36334118 72727893 409711623 622295829 166263622 741527732 723781251 83291499 169972764 92827162 582635842 435709379 440435755 180220000 29932300 750841231 38107205 956289448 66600340 725038738 733122117 110785436 765039807 358306750 356963467 880918048 114536452 151152072 995680319 945414468 387355841 305728952 41279301 832599239 531899283 650763661 963973446 211153318 906858441 484765322 654403663 258317826 186775226 445266441 541148080 398075070 325285998 81799058 398873548 122446412 523181271 762293855 321042308 317831320 652919285 569175110 870156348 300611751 379957336 908137451 266293959 593625457 636552798 103102939 822809272 180860624 448643753 780099551 612087141 38164949 47251081 393410665 860719396 191559647 571897313 273873810 659848783 991683976 155895695 261044001 392997824 540878117 503093678 860017874 12546353 206981827 556158965 562042589 13083156 548928051 159771146 800636685 820972501 128009256 299071854 992281812 662508396 706492228 936168489 131284753 403676779 727224041 463238963 855304878 126088952 764132649 68352414 658647094 531175068 173666326 27790529 149106740 885859344 797778933 790857642 490758833 204142299 747727919 921102034 448683721 996645316 911248694 711965598 730785326 142319245 247089008 667965178 854472618 638682993 474487042 150293252 154128241 728817862 197208555 767076403 84389444 688678405 839546102 713194767 701215726 554435592 769559205 992860502 725433901 870991562 850394671 783423458 519476290 63752280 80881225 947268081 814799505 263271917 210165448 726533847 968529736 951114094 557124561 117995763 199601049 724627287 863098836 99476164 306525299 102396582 647242204 689208163 208890009 304570526 325597263 308827480 882703870 51828168 562653987 407720451 442626404 115905297 854349294 328757812 408559958 776692638 249049730 405445294 669771348 826657048 418490827 415570622 677287978 257962905 835909219 715335717 192947145 748529757 425933290 179503983 749441037 877118744 81227835 684045716 133885622 466059849 772224294 747903023 511355130 269266610 249638545 914790625 436892400 222505052 961242822 250336354 941479681 855254893 659991156 194139834 533881835 153417576 316173788 750986124 12475882 413713744 335960515 384273005 398073211 356925562 898886470 696959814 513749988 428055326 258985568 746678865 100523307 833426924 236186998 936220231 70009227 909586312 678516103 398889618 221219145 93327782 762186150 362733572 320435886 68205117 580253224 637725323 715959618 811526846 29366074 815521672 991252741 665917368 512653493 911672623 913363880 23841976 846745396 34799128 803257446 282553456 888202996 945373506 749101553 8413158 764576673 769920454 180043703 898972472 72892723 603600506 480758565 333795571 689819969 500036820 491138753 144745200 749902336 131995832 729540912 466321355 206434312 704927656 357457536 191451733 902292706 594329431 624825724 293047416 499257291 659527191 683558941 115667695 858365955 103336845 125701292 966484402 41280432 776415022 963698978 153058959 831750609 189973654 390478230 792343306 955054058 953752631 552180620 110707289 351034029 591200450 545740290 184691654 819695591 432748985 838040160 962617198 856404403 516281174 991859334 126294383 881911403 899283637 703020685 217592840 967079232 754669248 51277343 199684795 207972692 976334480 838589833 208815868 714599932 721396545 547306703 949115425 202741041 228209428 882154535 952733846 559899498 663886177 735944752 114397405 766767707 795253800 154298730 691259796 311223943 496230841 562240790 948722091 837081786 783699525 717722220 788844883 163453782 102831434 840712685 465592027 77490191 165739495 511048229 337586536 72905780 653880799 51937956 858433649 546399571 700964872 369164749 188189453 201559526 636510463 122902949 967770521 58810311 784785806 506288311 728524664 75249891 894479053 856962116 204865326 820967604 129061425 735855208 891283047 616472597 979542935 719972356 982734467 137064962 576752143 510152853 262016515 514374187 622185984 505496986 110836592 639572163 319206787 817861348 439908624 565949391 685346015 661671712 19253025 14541559 908769615 878736104 787447285 99979179 492110715 789377773 953530903 548169254 552290812 640059645 833606986 364441455 166584645 416300508 170560472 461723379 488196478 30480584 570370658 409156217 858038903 509188690 136274955 631986269 903039015 501559703 588764332 699520435 818164995 566647373 65327007 847277430 11715945 754884096 11889819 266400165 87026928 59996211 707739189 755079067 833679403 224099016 56495731 175396166 255063679 991016276 791562994 737658027 585635360 950504470 836816797 475160556 601091311 964232621 337619635 451383890 114160896 855449553 24052898 72483887 197233728 672522605 625595397 288389660 971625114 957502831 388481871 531112476 276113102 119811419 423425259 820122152 936665898 105003072 160781325 187359812 370717893 72490975 194653095 180275914 675991023 915304529 576110916 126812600 285432132 462594229 445987626 22694770 410680163 766151095 574653526 397810023 981232151 351786975 852826801 268757849 993645206 263263578 121590850 536493433 32276931 754989345 266567064 684817698 969285626 799337368 22571102 368776868 275848515 75699559 590496987 707895076 420386366 147700789 623280990 828229939 407396337 585881364 726535220 343904894 141115750 624661978 306956867 826492388 868073372 562607026 417637635 19176025 25254362 139825076 657852484 217958417 844425512 648079162 629459494 302589000 16152259 823078595 717975746 645746997 668049121 91766425 705930608 215099497 606587940 578129474 390263394 149910593 794578079 53946698 72826063 327305320 292497224 424331407 417945610 482594522 581472237 446999172 560601300 114827090 958120310 652148274 904937981 744399776 11093939 885674265 726923639 317747761 738874004 170183454 589068354 691923972 963364660 136216500 99570287 529582579 368845343 539202287 617700171 131727905 570125965 899540250 271797256 637344537 786378025 472523946 73864224 972879372 852830731 246188862 169278586 279171004 451477344 89430351 804243464 971351391 693597227 313522571 923329908 177286278 896901489 76155079 744374154 109299656 892403417 235448089 365746986 395732686 270388501 473251142 953772389 817138291 735963499 979070010 276024387 893964628 60091434 892929204 507907581 154793257 58685913 315903948 903763658 77544479 862297750 954901529 475591101 535548826 695526411 562922334 316555346 25533845 666653528 614344586 551344469 109768635 6571746 549238114 308441429 576677502 312196804 108103059 215120406 587044897 485904540 354872587 279172541 449316322 634239015 990157708 618541072 967319132 51661517 374115422 503231521 609782046 954561405 6395566 696502690 62947160 387848564 795678944 169515497 210604167 144046470 634391573 494315303 275540193 434487139 66141417 659071309 758185759 378633848 715060420 919163502 32303331 331616538 189457129 683537199 832816005 957868035 747278840 671080152 528104095 219250401 438588540 298476892 967608227 273385955 461308585 708831707 870069877 554940184 346885640 306636447 769220293 898739229 895027257 443658225 720877007 763740191 594186208 939517093 685093544 635287281 781575310 246749939 434244290 579053311 736966905 597805381 359040720 108104309 565630222 712953654 947913553 626296830 940913015 200547738 206548600 79592981 399277195 819913508 343916601 696334932 883697443 602827641 517103016 148091700 945969510 306426164 404583378 861912009 306837924 522354495 239944214 225128674 372739864 220903010 370978569 169688920 509490998 610312492 178245442 931540749 227583120 730190787 785311259 973393565 941968509 720010225 294013956 752697622 48417736 946661458 375200210 649703993 689518397 844836040 770883233 980400338 522235284 582702943 966934802 931894745 945327421 266430659 710476045 891285318 336119876 356886549 941791834 177805781 129040046 499992348 418373195 794337010 806873939 899229878 832608729 269704479 540195475 975206430 464382279 639184019 17658732 544477154 744884153 722857657 394872501 582561180 461580709 864671636 347148036 545627481 632744468 890152169 761438867 452637884 590659117 888456476 932512799 897713938 252711283 591686977 675697612 531137489 26033570 544091358 21577228 927675234 984170670 516710272 112858370 904226519 34253324 63864040 964003806 620238933 434459461 28267076 819706228 308865013 810868576 223081151 413869961 565473529 269417370 356672572 912618068 560778922 397082173 214548989 388519381 271557781 847131141 767080924 588629679 444623148 366434060 257738689 943550654 2390644 141178253 150152387 807743603 659704333 849197320 993262735 969005576 534367450 770089423 840880842 475919961 738164132 975188588 665018267 844688952 714373918 58994398 53925565 367740176 240919426 74536532 856633656 652336699 377949851 890315241 835186508 734289110 769323054 395422346 245878079 376075620 900904312 83664281 414105212 467488601 340793514 229392630 923595868 96200604 622437933 96057640 556602819 599812073 75993590 30950299 841969624 478460313 386944377 861022079 180335331 238896778 72672118 302390309 766972327 477692317 636904354 619424410 862808528 351613031 599891038 191395626 973207478 669105282 100339015 268999820 472106797 752262048 822239424 90268242 408749982 678424869 433824632 11264558 367184373 473718426 23613974 66298131 819299936 154730372 340794523 884914232 333382466 312630758 487089577 745837953 480298883 791924665 697946913 662354979 932188107 593532423 931595465 237799447 62623060 797629090 214605515 146860347 877862741 816963585 686175102 473442444 937271125 176725105 664039231 827548877 236658216 345317755 106132892 663433498 504564882 740773711 498998540 762391052 308334586 965371335 460211207 619557856 773954067 721493589 638109431 120877600 614890358 230742411 732089270 224978588 540188309 527347817 943707469 312477568 550920067 753356558 399967591 344998920 588107071 962233499 201406750 566890397 566305782 904994641 772891310 249046728 509387683 342196424 678150216 229630792 461373661 414777659 71928021 275044946 983792036 298965921 30217761 609201791 28365267 946701324 776887004 333998408 30666092 911082890 901474376 246223458 516859038 379014591 144399754 962786556 609678783 543096185 741011382 130643879 775275769 542894456 193635957 760473461 501523552 10047960 7269519 489015160 91593908 679530159 738431871 934132894 685505112 491871547 580617585 778741040 802473079 689868886 423173011 518387020 771225165 980661049 299039750 786287974 901012905 288461680 910585656 423905364 886175360 422167605 873443722 441364727 138441333 864114942 278298368 414364605 673754270 383562295 986793827 690514810 648867966 643770856 38191946 589234249 335875215 379462339 908686723 188709219 771517077 747362006 584565570 48639003 146598006 197046472 754024766 405910981 405661586 769700483 437947055 296800028 978340075 306414376 265496340 194790433 316525860 23232002 626586690 515064224 173048479 712810944 439994493 204609359 642172763 448898511 878846036 87018706 629414252 699338724 746426008 484267844 976392414 768655720 835499188 91081136 299585184 604548897 532690883 97576151 225419021 590433665 53121104 770062523 817816891 797662461 133531804 562893624 936919519 341870070 158009980 621197144 754257345 899819424 477029387 215881317 57482346 225539236 166182113 270784873 617482278 117781102 175741590 863912418 977951924 289625763 919262317 870093537 812363205 675578445 906900252 666129226 672825398 404211236 161212674 339156147 400630184 226291124 595792630 716836474 475063976 887664920 49024219 949830863 600679306 911069794 508164954 689700083 417806180 813622355 84266770 784028956 880587661 835190909 904236249 183452518 573768527 967195485 212828328 554297633 365713747 243807343 216205153 62141940 201974754 97942852 278299366 625019068 778924336 384586540 278666840 591715699 853890305 185839317 110470500 728749121 597305963 50061193 537358372 942861746 953757119 682413981 722304924 740366158 292730434 211269105 874621488 591368287 853074689 543930419 674820369 604013837 159229563 212564057 28695463 580339654 118764692 481940345 899936445 61671122 218279704 538779922 678051748 426043775 150467932 813173172 203550263 632445095 927977840 119694648 687053098 953706477 942687292 940933342 853352112 33411499 186707591 159944715 909673590 925433545 939745555 296146042 737833409 780008632 435263374 47615502 590773509 660907890 3940778 108085335 676735840 191657643 605656509 730233102 946788665 818610434 155133937 804988003 204441495 743409923 75789851 986946575 66607575 2341613 624144551 570490173 909620631 897254776 592891610 854979941 424081621 714422547 980319868 794310409 799873857 432156317 490216120 547584887 766989202 211655916 808343749 729620696 20343217 233034295 105527358 787124602 90631155 465661936 113773393 281106461 589621516 264047319 272524581 286375558 815983623 517817722 475172609 309481601 18313216 190738771 874983575 127992380 707495895 33852170 520218782 648639242 669312725 225637641 464000575 64055294 113154999 779184457 751342970 942700060 981906238 546081078 521411759 498988261 643094513 720389380 399206221 692982257 381942856 748413372 865844557 261259346 685051084 294582953 895150150 77652148 531635335 116105465 672406622 479572997 89995056 692370219 235200294 796082665 741895983 634740493 153469950 138460617 32489322 608753795 914658783 908292892 535709447 267292160 678996247 211808488 741807641 335716441 295728840 507670821 274376812 122329435 777211977 411246608 76019635 687806962 584479407 269208032 238240301 329859928 547630206 28427630 77043995 245005556 711963077 471399639 679846183 50626518 467551215 31253062 169305901 596966003 401299728 300635811 657167798 193091174 381840999 759334684 540545888 245185154 391801131 566419450 384958925 59048945 275529022 391005043 786410092 450563832 404569129 631302614 457602834 268112320 752375002 15167027 98911341 347240602 944385655 939368429 792960114 362707467 397645277 508456855 266655164 289244030 52708841 696366970 542617250 791574165 893174415 174482124 177960480 812023253 226548131 780989175 841333377 720977739 176680241 698945221 338822885 712542552 71561191 348484015 233861341 4536906 169824733 968316463 350060272 732126428 359415047 563215561 444486651 344374347 541141340 810300354 454277060 507192116 900765245 723161032 266807940 51915651 827063023 951373745 378980933 463880795 776742452 956039888 287238146 120941825 970853882 188813948 650937911 160389642 330283820 669128313 845215586 327586028 245469956 447765357 297206489 33189593 214123266 754649080 889667874 901471854 961380766 194629679 5664459 786729719 94267208 47353728 436235205 880070364 339327905 10726173 750178345 84862716 248210092 185852091 328429100 867856610 342737071 788710030 134880760 144153556 759232806 488921359 276244417 513979215 316627604 121674668 941978434 281336399 348257622 24311410 850434511 397229000 788467145 757614770 749845448 635489439 66463489 307251295 367083128 202377687 700433651 718790144 154780898 654681410 855946282 773718100 550432114 991123268 992157145 85537094 743467892 392460683 517482712 10864565 400489169 445822758 468073302 381956364 798532118 256609988 407799427 4449917 298091651 460359650 994321917 222748854 400701483 578610065 320575813 687783798 790753533 975305200 678905159 688958785 878225573 295170686 92659190 253183315 141578666 577978515 744338435 100169677 115143711 397532878 520799303 822750020 332476009 423715264 894850944 752960864 926870518 622240661 337274663 793574149 707890698 905955277 612572552 684984017 600344072 768228994 777296327 684246351 73599327 766911580 449605342 508501709 21687687 102605319 355959080 182279092 945022491 334440835 372130984 726325685 814570725 396236088 826600268 279839628 729249844 13588982 59573627 411710852 465800209 254481251 872995046 700793632 300439657 760794349 219888810 296428839 75525293 297345741 842858281 70361042 1133448 721820290 533952436 519835527 768316536 709890228 786934215 641898579 180042457 508981842 951975548 803418113 300068822 764468460 691093304 611181091 961162379 465468078 764439147 474258122 839718829 981428960 393013781 945845424 496694492 658453069 519735042 505360461 579566630 403313027 250725321 365276638 83191837 216250621 697913653 652145626 456241450 91906081 202326958 5003095 980523229 661100623 795201517 239907414 868405937 300040270 11887712 909949251 664685910 998342555 852336556 876856681 506997182 844539548 728708087 954123312 821978355 33820139 875996902 978286444 411550315 237383842 563319820 765046605 9491922 331464830 702491525 144382538 844158246 861823188 744370323 499612260 724394293 560376524 122870624 838512767 776694159 363510622 790936764 382769335 770048507 876279499 419092430 734863963 772239486 482199021 88310432 673781076 214536991 289309207 259253457 683530664 614393383 568015717 995161454 908488502 874674319 462434643 619662938 306996607 50714022 939341965 976753542 188428473 722298133 423043158 137335308 73897767 315786515 424446951 356119439 521791416 200706085 693025434 312284029 727044722 700679754 454474709 419861000 618046894 707554454 412428763 484815024 157693685 197607058 624746341 579617381 818242542 81922148 941905515 57982073 161081587 906074810 252227074 514769827 372581626 768104313 458886818 651119705 46687428 292676849 93901068 757393435 969113656 631225128 301596082 899960546 677923170 871701480 364767068 883053805 928397874 975757004 505586646 732108984 764657759 718669988 465934021 234364232 121176973 456884278 276397591 307442384 369827120 500840016 703063825 638223552 701872969 369943177 207269825 202349204 293054323 527241367 445494925 509343029 849352964 304990124 909285830 762406088 700508155 199133802 636810161 598354375 152497058 977791136 767434707 10399205 291208094 335660692 162707211 608327972 268438041 452698342 271569051 753415406 599153259 590278998 237280345 26976947 489651640 936303057 912265633 329675881 349078876 161298855 899833088 98036057 69176264 300878661 836182897 708697106 527075231 398645237 731848376 777482504 306239029 478794166 683827752 986272006 189422558 677558379 339998082 3298009 768301612 654369420 366179715 94878154 558336514 602251399 624594518 920648122 537413158 487535713 727261941 251721404 265835760 368775534 825459622 441122438 356829245 159137494 730512513 797306630 247472356 821179207 278814637 382943413 407933837 872137337 763042810 472418468 491511693 693931587 497352903 343775833 541873850 68116901 699300151 296667875 624982311 977216163 214418829 484249829 659453064 889897774 517472893 412480340 764627034 610985189 983432743 418702879 255823687 46645528 792650231 44262118 319979524 213083228 812771423 246515913 894353419 937665735 967160153 381055648 587097816 905527745 423181039 16950866 355172537 921933943 347471759 647452443 56198429 684998949 968135702 205122893 713319999 944542864 623799655 922744307 786994326 256230088 868826225 101089196 716411317 727705390 624597371 446566370 484961243 741825437 742782976 289784981 291503367 616321165 768803817 135983476 487359749 342147641 30048418 808561499 576743736 235187268 113952808 338957353 669636580 584182790 875058625 999415884 902196209 769581606 417331543 394448533 445685582 633028575 542356135 256886982 519028142 555065046 162900576 708815109 673760013 681728188 694966491 516240311 376255710 988294591 884933576 911262842 987383828 407642490 768198692 301526726 448956847 284064061 123408603 706366597 546837843 553051851 208488641 568400528 558381747 245118523 9898581 246579188 572279176 586979897 799511052 416311801 474284649 568269270 274433195 8133607 163963152 12611148 418204251 91953728 573941990 446744808 882836574 972146380 268210895 64692800 617746399 418364178 919828211 39223316 30832036 746300797 599344282 985648408 478505811 597312464 524897571 672617719 211439256 923574311 853689 224247895 291158788 12947072 912086900 870883668 898368146 632124976 676178348 481754605 483629210 3719192 524332427 160957906 811259306 935470761 252275212 935937381 327357443 82261409 657598849 867068689 738037510 393987235 166642209 242047420 524087339 481547693 503301882 555654459 394230703 872026637 818076954 295674954 309383169 584961318 104802110 786957507 734783295 969993700 60214914 82741265 906854538 104651735 407542835 159684639 552914676 235706834 556112996 605796952 932604764 918223001 176275878 649054004 932252903 843093593 901714330 910168094 586185945 700272481 798220122 282072201 395845477 626903056 752188193 805206584 820180397 242761387 745062443 276016129 192057557 901833335 322150317 785081354 480545203 120039530 341478927 203956764 608898750 436774165 620798093 246719429 552221338 51659469 537590692 99081614 409458500 289699157 450270296 986584752 837183065 346533360 891578831 984421455 857419935 750499153 461995767 9816449 570218177 770005888 145760905 117264634 626066456 405189589 84393270 407648010 342896666 419850787 896692270 586455010 172679167 155438081 728145339 812417489 934473763 21363282 585341756 520390688 582471326 159650409 479980554 739816273 943889601 674322736 88082948 661416368 338657359 907413967 15465013 10687462 560668374 553932628 500040109 205646258 835848583 973013375 209513711 609774692 927243076 308460631 545280915 167966438 166946127 628925521 382510018 154303416 467041247 850018821 638668988 650984993 549719572 64320910 639750289 637620476 576209345 190766563 709998118 225204850 571157756 468764391 756645578 622964309 528896050 938272979 521749534 462420441 653629810 467882489 498629201 456470202 345389473 232386562 496698815 578867606 410284055 128832681 579506673 719268864 813085305 110136745 370938761 807198589 960901609 572376755 534877545 244137179 966926561 83414342 504940726 497055484 593915708 860412912 976947216 497527771 616792622 529113792 521078899 618289589 350988183 443384501 446951164 677416978 717410632 586005066 476259471 459516929 960289271 122832364 993604513 668018192 145353563 860708904 323100813 259922873 483059192 117472045 671849386 732120739 513663570 940213421 532358387 68028484 651074480 815491836 351708069 588524069 52852202 870321859 748402262 649478423 104864941 190946823 492929099 721981916 485671635 241707599 437344338 48744333 59108130 463055650 266833183 10123272 3463071 17474777 531073430 1183629 354964912 54383686 786234188 233735549 411039861 951349686 463823498 430266619 909349274 202341988 31767005 672109922 147413609 596983616 71674670 637457687 963482713 124212381 845929390 24948744 738065884 798428250 30069344 108370501 937757001 499104342 524243574 695067351 796281198 620669226 358817725 187450423 526288372 296008155 75155383 297911883 50636302 151781435 282600306 784818916 577027174 496113794 855402257 730678075 399848526 143636700 699825511 533949117 723322393 826640090 574478017 78180128 954545830 863836005 65710358 294336881 219737229 179906301 821335807 903195475 546891782 512427158 147655112 759098713 516977249 835183591 160770794 600989120 68869188 826169004 196075647 52427952 222243492 758494245 176906671 823615260 875753545 755321233 490328055 37525083 844109729 583705726 435967829 177105421 143183063 476347931 928318172 887161026 751429424 906568139 390186638 242336043 204063359 710793417 161795962 440888138 304500488 631176211 874649594 35699224 248553816 387916897 839039661 356825772 66522643 708474881 52692814 667630161 457634139 686127456 851047343 696269632 956383028 506038839 974366860 70313920 795216372 484466819 290708618 526705858 43999742 822231481 461751703 709185707 785516822 111424815 394387751 557375375 139506484 578766422 412786526 961866216 618977500 109057572 251353775 503483875 890361456 856996948 849222445 84962804 186902718 922918859 22490571 632110236 940264327 181656573 633348334 435578544 912757268 638608023 244980004 950988405 158921548 294202994 875783915 554359959 495102505 96662780 363095505 236726423 873919666 658971402 333446240 859543892 618357535 405346958 338290460 329972482 561125836 658647432 980853185 189919086 879896169 45603663 285909750 766536386 293274170 585767726 154328984 952722241 51745236 462545008 737788240 495305169 657463129 442045749 64770892 311595533 759775327 625969287 696552406 166351733 459910158 518664266 347876719 947889354 693833600 171142454 371242588 956864064 312917782 472946862 235496805 620544192 622841844 965188276 730136219 183225973 801044054 341134053 267011579 456347639 874009119 200109383 259147617 22091288 85828241 981381338 632158919 994813436 195871125 226670827 373244379 642460629 85385755 757635735 268374517 845782861 107308690 270499415 641059007 94234147 592264289 764020196 798092062 150139253 778853278 217303562 992473799 203061171 192784684 35736789 218763522 394331940 980852488 480496949 996988447 930387226 342126095 908673397 107367935 307166166 482843638 580693468 869526071 676157079 850614164 918013033 428581511 768392023 47383933 228544002 483757549 561707554 82218773 954057180 512585070 113618149 649621099 267014458 170245735 149253741 618439531 706717307 929596928 909952411 583538231 713106357 443357252 420251567 302267026 765778938 993044186 747358765 49826500 793662115 255545469 728425989 279122232 686040202 946603697 429447736 912989009 350871878 977310399 686162382 315658970 502057087 372175681 801454957 945095590 572181717 931168985 395720556 482602973 701952145 30244289 779541439 235638925 549562970 650272304 38074258 969480033 952270658 489080801 379509029 293507651 507251456 559916922 997508404 273936041 417533950 968107749 40772742 495571192 8001521 242186318 105411328 540561705 182874344 566917724 507538612 958529263 620992152 577069486 571490021 792837766 443695214 303995082 542847915 939031695 302381264 125232844 510727234 221747342 430661674 853493458 869356412 45120584 386768629 611096693 528173632 898416345 421106689 535850718 463993792 8759765 821018628 845079065 547956901 995314960 614308748 124040031 503245420 162856753 171804109 259146627 538305011 941170295 882832885 474275726 216473230 905999592 230024353 267868710 399226247 553409628 542757210 302834936 509661563 372626166 401456463 422815480 179031371 186047111 417674111 480521625 845928391 520718127 582144066 944596045 410041359 922127613 507566515 121171904 561430612 893975064 685618054 212264828 824626448 273176731 495424758 209428100 774472502 404146179 917697168 225564613 160708082 243609027 880238014 245501053 950273570 492666696 770117899 274219535 362921124 7260725 501571717 701063629 482507093 552462219 45271764 240004367 870173901 368838993 836873501 359253399 118210181 648424253 175949605 942979771 840178896 465532942 546355805 154881483 69223516 125576647 493711895 46842170 748521503 701181279 284798508 999882219 203627492 662638343 186800221 194323924 39498719 698547697 222997120 217110374 119225924 21225014 778524607 954286449 722465748 165494573 784420212 895489668 416469775 661948803 565269724 634669788 268320314 136391757 573068085 895802696 598199345 633674818 706206838 628856072 419887484 916859764 919257222 721517880 914630560 811622199 717564526 281637517 916128972 737840758 933522661 402992998 53073816 157305727 729485921 617876510 972273268 109021757 685957178 236409801 383151077 29728790 15590144 448096890 25271015 232681999 503978607 905200543 139675369 820054153 10849357 746999671 48555643 562076145 31073194 648606560 73197803 632133577 622048481 18167889 359239884 109445190 888327737 605924363 239185851 656716945 325183172 947266727 593666543 942768314 765999992 69147728 338193680 827987220 406622438 746576285 492355064 904972099 315317323 326944119 158614288 278248419 800585358 880346294 566163991 526781338 290173976 741198348 744416135 491188446 411291573 15718578 232483446 314292844 29349450 112979640 876811495 722288438 657515972 732391995 855940426 241235617 390123020 672643863 988737989 878145436 243094333 500971111 38571762 685961503 519150773 21046870 623727992 503158718 762450082 924220912 634859914 961423514 987109730 925711922 878804788 997062415 338349436 62149443 975921654 583345934 498876115 199852620 99812337 443552407 628258257 377233346 869562292 542337121 831462466 930209745 878899008 940291371 414130407 123862121 932265454 850980166 205333191 779919561 986482484 446592678 381179580 630660105 722577859 112150169 974743317 232046397 198209423 586004435 270302906 532672377 546154363 304837937 352690742 839842433 22576148 872156492 513583409 319537959 704955053 615743747 583443928 665144765 805224205 500362902 842409058 147559243 689469012 794125604 924412767 514543070 439118224 498101569 434558929 136055923 682721831 436871036 605333023 863928875 146674930 953279050 711290506 761433484 129866648 521491155 460101171 311482190 599544444 169660499 466182067 438218834 63065218 857829091 366538117 812924875 691697259 710185738 821920825 217380249 988758596 594505619 24451295 857793937 10300852 532218609 772831806 509440094 961630315 892700666 422183851 745671029 857537658 231048378 895723557 166599143 501244026 198410375 459272306 12830118 753031574 30324137 907557735 928372283 609457033 921099884 573558759 633921694 300438573 607199690 712901331 193552560 281666124 761856564 136285451 544978712 364216681 89722283 232222269 114934097 813319017 523975280 557260523 53697195 261305610 20869490 668132504 612250156 459689938 652871312 800886301 322110894 96878708 68138540 343508570 938621170 335546304 751088222 594357084 904014939 346411750 908113637 842889463 232502065 849837235 303639727 117872880 996651247 704600210 962986691 7899642 276306611 287749770 837263835 730994236 411479673 780845949 798368720 965444335 632515195 537016371 436243540 975770684 267403267 346754967 301679416 449761928 897480485 8453635 720862175 71842093 627957926 41931645 970870342 618907530 514204187 649191639 102930429 800530078 724767599 218456796 911983901 9188229 676872169 292402261 196734580 355851450 964247917 271290808 220318243 3726658 635688129 193502107 513734886 535541302 101366533 774643973 919118436 22495207 720248107 451748684 517350050 658567756 38744945 974865919 489096741 591853099 311852799 668441287 260055611 837341531 510583077 733679884 115625796 918178667 717301100 499254953 140315980 21675672 542986727 52926672 859218044 177164317 705076716 473124554 798757495 806207591 852858743 926632762 596252137 692502295 663030361 361855625 592755948 346397240 907698150 98390267 57996041 569250658 481118374 327258232 660864213 770654243 625859004 3117364 207471695 862285798 391334311 843838474 368100491 837165635 3478556 706311405 944609242 223553749 93686169 229919025 710800154 415554151 837388158 414129627 267224922 844773816 956742924 144417968 322510842 452536595 798627189 584871457 206046075 319240194 126820426 975921297 965945460 800069721 333910242 82659379 129443341 189252211 110245975 285815224 695454260 688464127 559056876 264903995 422818407 102172553 489809601 820172160 734339970 847321267 8700436 125959678 616611964 596958177 824199049 668636847 646828201 442301133 504026775 34685248 600425674 482619872 848382773 92755120 188691968 250692485 502842056 142310815 139914115 701394493 11148411 21392746 495449817 945987582 158766831 290681654 347590866 923911569 890280695 840959973 724000332 401618621 892804471 265533578 938229093 276625725 724667464 407912391 714736469 733011674 164029160 472163249 588164721 557703296 179648192 587520660 928163421 581466530 495716427 477683405 52299351 107428215 630953405 771993846 147469820 980990795 497149533 863587343 221910438 805332339 312362184 279491382 41134413 225327214 154954 479336112 982124936 511145284 126073292 538760057 771942128 758114039 282902653 717350340 869383853 334414224 450732627 966553909 532106210 629987970 500006169 100158417 811772804 479398324 403633876 645986006 73766007 671901266 731432151 94600677 129865546 217107916 244208899 713383131 44727891 612851733 932910057 643279336 959481007 442305326 899278631 779714066 111684657 979414562 577338262 138724608 784873407 639915963 10059321 369334645 664960371 890876286 434526341 515298268 711497850 960467046 232110834 399593904 764909768 970160638 478652188 86238359 521022697 916544093 179736326 207640058 487651034 247203706 570074903 466178390 993923186 519200488 568980023 735958360 613802534 321354582 941259829 178177254 326553778 23125382 312443957 680107615 943649200 569265557 782886369 92794206 292559393 928383770 946786308 514428372 228891240 862706443 987173803 485688339 415275767 948276253 998349239 774217901 242261833 461559597 660141878 870477070 942629410 951802436 777942617 736322415 173752388 346215582 962146332 461768845 33860080 98584329 94914097 661908336 85255170 731056180 980306456 835884216 232514705 500716612 362112038 881943935 305095586 982578039 243952339 759497063 743113910 489439478 169469154 179841549 691538011 562520332 967913414 621992144 703216534 183526215 155461956 944349722 580363806 261887271 465184850 125162549 713855760 651253115 915443642 176158961 466236939 713199270 622388025 647646832 489745361 927309715 567649634 153395813 453068057 824184276 420597221 686398586 287203831 143500288 301911210 772154153 165968329 258278975 341393739 153278474 54874693 770176611 59856239 831621330 184116374 468433637 773747369 621659509 323691393 436795151 940246612 560224635 94883805 221012817 579169007 993831543 866297243 703784106 34272551 267078849 237867616 892583157 94820115 648350004 77326739 587035530 786014355 404737292 117575262 554030224 371541773 458416082 372597180 768663492 42412735 969184290 476366752 95581800 848114709 735725851 189785175 86467791 189884376 461964695 425830476 131333219 104704654 557566402 397099749 818608054 673053324 3671430 500670946 102142913 8358421 125641077 606232364 404037190 393573983 403173059 200107243 751805889 294599606 982871885 250450707 290060669 637273256 411920838 391505961 190283685 624200129 970203001 250023474 619193547 407767559 901418152 286792348 743026958 79205146 201989368 115554586 801488833 422501853 315478391 988856807 420998746 755112839 520231 857915032 409695885 302069485 512012353 97939763 579516295 105435303 152512910 227975294 280697136 860103212 139124134 939037182 678603292 449346492 103439791 159044726 77809563 488899984 679263196 9525012 186051549 822383192 756571343 870306804 655904043 683241975 365243133 25074266 752742038 26826784 266391291 838802831 865701861 381504719 313090471 806125312 801618912 660158192 633974596 125933469 681045483 222337995 212589988 462945449 192425737 915666725 665837961 360234536 910819666 948528737 574968283 882544090 70103401 445217618 281375487 151781239 153445207 694645448 254890463 468130161 141621119 348912366 569267957 162460141 621302689 228509498 8030707 343592853 676520203 771779654 218716626 782538800 296571512 255216831 966898184 179945161 219347388 267667801 924185421 980778129 956077570 65991155 528657142 482390981 413541788 661255013 227721977 724628920 516292756 747373271 709901790 924948430 818837391 951487107 405993910 121341170 271596545 344004333 843814286 581779981 937891804 216204601 444292008 835848738 997901170 671928183 914004488 513940944 483189328 873583133 367925847 222885724 973812974 912365354 651709845 460472308 13972207 289416972 639486079 322521698 426615259 343122596 464632302 733638939 641394661 418860735 922453498 545956139 186670827 707674281 7804116 753331789 876717727 176122339 995810107 834675624 706420566 586678937 286687091 46639288 451430944 990864930 116490142 331577303 601628328 819303867 843250111 744733741 810820505 560636407 317506654 901376031 68942857 387374264 94335015 485800368 898925652 425543195 964616943 527560634 643245960 553620296 106581858 66225508 621591220 460703171 12720398 183399428 530465404 268127476 977851840 180587302 276514851 145345362 464519192 755292148 378915496 30765031 298960562 700171708 585991040 464810014 857909832 632061002 288462809 563670394 899250330 383828966 206641177 899817231 468904972 886224339 385869867 110580105 872130371 237159513 504801689 366826839 885010307 173257827 900025464 214942748 759707663 566454952 99412414 591867878 433011248 702747497 159042265 337606276 23990480 686007845 691799409 302089972 260807671 575993960 641192738 137484206 569493154 360414386 806861737 723224647 246520270 197714442 536607438 148591655 463108512 850079228 274104729 732015209 686816019 879827445 647560335 992581138 602983103 222309797 214606375 793527656 997585032 688308880 510115662 768153593 486731812 766554602 161171669 415588538 502605736 621431769 134352563 204021639 848489657 988060740 866686362 27888001 284204523 960463315 20363188 343420430 583014714 144407539 902372726 271477949 511234836 270908635 677845186 894256858 243929098 146220535 230984286 852880005 161346907 5214916 493481970 465256207 134840481 739758210 302326376 72553168 110955189 744093072 122815478 523915676 597443089 787471054 96230777 743117638 609345810 4883897 757969836 415976748 797757368 729930372 112633073 170130521 124375694 320243283 484111692 636216560 583568935 993162398 128328254 349845298 352542347 655559750 100222681 62753516 345250804 256193941 180139090 149422891 435736131 874985255 932359886 562161783 769276453 956711671 120787652 407214682 94063717 825766378 258786511 657560648 828209234 497730697 471630806 535128496 272118624 641308168 875930617 745445139 943227035 92329112 555472960 423980494 435895051 765120971 512998829 736890951 541144468 526434721 445165151 465096043 325416141 574480194 158282882 593707184 483959236 448142044 401258504 556012445 257802809 437058506 312037635 262159354 400623441 549561502 561699864 589075984 589201245 621465871 12512699 566616271 359912746 865978773 826033937 936482392 327279931 84341732 580979550 883042211 798014808 375345349 69633483 525553823 274620478 513408703 751418251 555092929 470803060 652632990 893250609 827917837 148008219 616864044 272581423 872240519 187175955 499810042 290538164 827952131 42340506 987042534 231117569 846977265 545495500 642762985 121187062 993502348 169396576 191923582 756908035 600475603 215210139 4541200 130000569 844588203 83216419 7866958 12257704 944874408 572948902 520350123 834514197 346619861 928204343 819707525 415761258 786138040 763208308 880441043 887694515 314189883 713395228 109692470 976269543 237213837 303820272 214644892 644551228 731796549 621433742 241034922 860336394 526922755 140738545 826725361 183275899 18057405 557003318 810753107 633063914 218825352 736596529 969562866 940847601 850971519 14309560 469535693 133081317 866505583 649030524 760132534 110644330 702612541 59777343 446761434 736646894 244833315 71540028 569888289 552150750 69113741 581223603 257003195 800937366 301677059 184132161 736476088 832551498 229728242 976736333 543878169 904349453 435523100 923774672 273293318 289228171 222619883 974922351 147760179 508113407 19735989 649687682 226958204 181569612 807789050 453131291 921121521 885866477 149097797 195840493 559600362 446530498 256471768 613505552 94104562 233210317 119312471 2055249 943603480 332093603 660873570 850536819 651182515 609226921 264430599 791744352 205227285 250001449 375122774 537683042 455760525 290957039 180621352 227257978 673524602 626353175 509343799 915645218 264546302 767896331 584196240 365550550 111295616 74756063 452008960 967149189 618513749 447271585 851573498 886699498 177359891 346605704 400688447 551884422 663090966 395245458 851750437 113335631 393156092 92355842 758572700 799461731 5544966 167800397 336086615 861622490 457224119 937512494 736066063 572640738 743626216 133369330 453644977 652009764 597554264 651565305 516908930 202170961 808543986 567931220 338410207 407710994 258500567 435120061 72156671 187197569 308729483 525867147 18624626 273771779 644013972 48972131 71296620 348423707 332410805 649896423 355149303 26483459 579250053 258806013 821928539 55396971 542228119 828456569 958135595 345758113 421638032 293985491 890143121 429131670 187507983 953629507 872686636 406945349 263523503 958893376 719173154 302871130 377087004 207822082 781151621 845203516 811810792 668505073 526164172 977727629 62414504 599901278 310386533 953596772 897470417 304618127 290746772 16107209 451014372 648829498 640273504 184943798 401873003 787680428 52468935 37166132 625195381 397559765 308767360 384302800 231190097 367127048 595334427 459506069 554395841 228975562 345686492 367762235 920356601 641939631 679826768 916263805 749486962 385421002 319962726 249239933 381056064 982537220 211437445 898426779 241538301 53824537 76901354 621334579 97467036 790519356 736428876 996784402 263231370 799218745 451785866 966676323 783973910 217124962 396366686 340641162 158377413 416124099 889718234 977515423 544951816 1334168 350706230 284591296 327498178 837439191 227755339 618717461 650774548 581122813 654125003 422652250 6028615 768974331 740674262 145234548 795840801 125099703 716719240 57471231 319674810 814698678 536362290 252119853 180187277 354901647 191422269 343316216 214647934 858125709 540939693 584265458 862018443 855149829 617682342 830815420 929800426 454380321 251166600 481582892 989117916 488915015 273924733 545808309 444759101 23561190 270394828 941481374 906248057 673016328 159620447 422473688 932258959 20410802 646068437 347661670 913422493 451600556 326947456 495431732 973710275 962829969 152861472 736300895 870027862 308112358 351565535 846301550 93295118 823461831 212352860 106436116 466982845 447461160 74429324 475121829 227166479 879426804 214809631 580635859 26874686 736287739 583336964 467969526 480385792 811425222 637438278 202849397 443127548 654218614 246763826 918826686 81823248 285281147 26294212 555639159 172674160 211796538 784091482 910423553 395758324 696130160 856185873 424993173 561854442 463948218 597977120 355107459 348839948 230804024 575113538 855739721 462286515 819438467 636059677 449008812 763601591 189769904 465045100 159972241 333710804 217146238 706275643 361490774 626860597 971822245 190481905 948318144 849595991 526881783 446643571 163500016 574772077 742790442 84529996 776478558 430004458 587677740 297449556 874762929 686468033 545291462 946653257 818227491 179754589 294064198 79863119 299883953 584128141 39802206 446390003 866452882 112025515 986546630 403454081 369189453 114321189 855603399 138267378 476622230 83849343 675540392 974253430 88734173 924810300 802580757 664679377 375498546 317151191 430909356 83663604 602962973 100384641 56083521 530428785 175587854 93087886 842706512 923699648 696045202 756439191 901534613 379129872 995292430 279468524 312916558 285420608 749588024 445720316 786902581 541073199 498291775 936418691 278493591 4634847 635708411 798395239 196710357 261563070 567895221 922256953 714190130 731666008 702862195 284494909 991618371 53132937 705520544 156865064 252506210 49635188 480186301 928815022 967708706 632329601 709651686 836227943 829778645 9617570 426575246 443620211 650454888 519095194 893906151 658210631 82299994 32196313 276011816 996325838 393863925 72022467 773599153 985264835 544124249 728369739 457988881 146955693 497094738 447211404 157278811 848690481 601736170 125566647 574281595 750230038 115674489 394326046 471179880 997072051 3127878 895363840 171672212 433375141 495750744 239159204 665703138 505783415 57228033 933806458 792882037 387991917 739659947 678005775 736983375 363737028 311165676 538760632 869337932 653562729 279527779 376320964 264429278 392831196 336928378 80045724 717233593 332148079 376093273 217026392 769213670 170782143 224861486 216098187 785364963 199144563 238053207 444663130 238286288 824911293 366556757 956811236 138670086 323435539 130266904 71191093 253754558 99658392 568162414 969946383 335606521 409214142 530003911 702669695 966419457 564817685 910095685 664239206 257119574 889540689 948469577 605537151 570007020 181465999 330095758 650111024 213941891 245586451 84781766 676093114 186153075 987563334 276724198 682877193 220608352 491910314 377733506 400887704 94888706 494639167 77370661 704917083 437579355 620332784 374961036 454683167 199945379 315787550 431590219 406003611 787441870 982565700 918572427 290399992 445674715 79437785 101864009 975389805 818184482 130297998 836846643 803648923 35052960 974859835 263080813 941547347 520681480 535181416 43298779 916115617 312111291 781404353 252828722 524086640 561469813 102823221 37456865 537074274 205369972 930144523 320448759 298481825 747994601 127066306 526268366 780703376 976356969 600684773 802632762 227763486 682808741 114153939 618073770 228226398 712044063 876335349 620349336 571023226 635777603 627095908 432708854 399712869 780301922 896342772 466055798 814928484 236741360 15378249 574440485 960629894 950223459 383398648 195550650 788319104 278083068 930628554 809649102 402150818 707770278 164265362 407359110 486232395 501819325 474415490 66967117 889237692 733835652 622864650 920112730 712044814 703896269 80436835 388106167 277644400 746521139 550097720 298634369 110379696 967656560 929609636 128120448 256117855 808688062 461311823 979455202 839990002 959749412 844588068 604796264 200852924 156158482 266832666 686205723 18854933 938680777 755402851 458652421 401005623 202763362 344145687 399327796 352409397 247831693 870769779 731467408 625114936 938256623 120559396 909660023 14855439 491297887 395246698 871995979 655706066 990046604 179158033 256207682 990276193 413499213 336411428 373144884 109509994 343750250 38783325 139156126 989711742 347469212 545925591 874103113 445854979 684002229 968584725 445796749 510627908 627674030 765152376 763665944 619915205 188396655 295592965 526025105 389989476 731951010 687506009 688793101 44534758 981924555 501896088 36490939 550003665 474298761 442883954 64497996 716725114 781692745 695457507 573451539 490768733 496374821 849448385 835696891 857103512 83501120 898428538 862353143 34737063 453491550 253591590 217246850 144108707 891016272 604615342 532529490 541803741 977941995 805360652 648880189 165728156 788447060 734293496 244447935 220172880 992519298 528055865 656765627 453523000 254774808 107624711 962013386 153237651 798733962 513941166 260383897 697523059 932618691 532272066 159303460 298092069 891666264 680165397 973759367 710250606 85447188 242507545 916120243 273369321 870281660 560798023 378973750 919980484 929358671 420708955 495533211 354601084 326713161 999918472 300955497 846257274 138973299 827585327 394685613 176421643 402821387 415595723 169867982 444289065 271530335 507887544 110416404 53830309 938685613 420683940 623324465 897158970 344559613 368320686 649785239 219772405 774397271 966912940 225689147 592542212 693102340 158465297 14366204 206304879 655813654 230850526 280771416 512525039 776561469 215665298 296619443 825435105 642434621 336897653 92553332 534303363 551901088 87994321 723844077 696150952 193288494 396865147 379212561 417017905 227972608 499272818 73967479 952778543 937240927 566458881 26637297 323755506 267381866 328502380 851136377 167890508 66355467 927929583 537054212 7535845 819684428 993278324 316794668 224721683 289193657 766049876 323512269 330065041 621490198 84511636 586299353 462547697 213892517 779024645 396660585 667260575 486946628 417356957 470608920 689341508 820146875 792093244 906412848 505335926 684885554 76427110 437068838 418612588 459293559 26918429 538642045 992115112 531843467 432764948 948832479 208628371 262002428 751264961 263634711 96591329 415312397 11278434 821592436 388666109 165033217 461077882 253371589 319747041 560045127 115879309 479693877 801009985 226009454 216842668 789739195 788000781 906496095 200363378 450493832 340923256 541322113 363610321 420225814 173311073 612950473 964523873 982159962 645590997 858152204 494185777 386969934 616561801 447588695 853272090 446149573 923315981 198313349 117200344 520302396 164168821 869623907 769126610 144865435 95237569 179772517 298703204 422039054 923150196 138342055 995104315 662623209 130115611 299700051 455328935 752381869 141631124 786452061 804789217 578027109 350141271 106779154 78894582 417820960 173040986 197615544 599419520 770164371 112506524 746292164 230677027 763143015 306459134 92957428 601928466 731543532 986427614 509695220 59754283 621570517 110245465 647799403 566042394 567810777 822259265 627413349 435497785 301705903 828181210 894637381 220663069 432298707 1978094 384386776 501332712 510198600 714214866 950673703 840677779 443248384 437948405 776999120 614148447 379669437 939745819 487031063 272039556 311265606 354456735 332704781 379209189 48883918 564832655 109760318 154166877 801997128 809855276 201520220 373962929 147205478 408540760 444641862 715961535 516320095 37716717 133928625 952599992 797401704 775301280 263348747 575115004 73479787 80263976 716178937 484554719 271896356 4023779 477199550 443322078 252732347 152066654 475678941 132073806 711737941 430487000 73359163 730753872 72246052 236867693 917329073 102972166 732289669 653558445 633071896 734305853 71361699 827175339 610606045 28426760 597629055 651097138 808538234 138581801 471344784 13115719 996477243 656157496 821472865 966487763 818508606 163372322 764683915 514883037 289516787 52140533 185751915 557542383 66251587 231492045 656211107 380056663 171951301 458475589 68177688 790629183 812278562 258156416 236924626 601315466 783780161 490441853 679697988 719829689 636622959 660162142 83367427 441941116 329655989 365248533 323866219 916579722 274365492 208257430 337256969 827998194 488269877 939542082 214360829 96868792 408238680 128777281 939312296 809678411 959017674 223146291 132306960 45501668 734121738 873182958 531680539 751708949 140446272 153060381 665637848 165069444 683800112 936986000 939949121 117171058 795344922 259123790 160029170 735043931 491548869 648498328 411119434 564676499 858204756 427294641 104464919 532969588 466846905 156253520 592971113 920218035 338957185 437524668 499292142 155861604 117570266 988538235 829187628 475789935 978940923 609446209 812700103 837060750 423584465 453143642 774964460 384379115 437231754 764198987 152800685 424550383 115846006 263943238 522091592 830730866 211737892 658994873 39609710 777759377 511404587 10319009 671028293 236588181 889116705 773529382 574722557 87590288 440574077 784766934 598345024 335939925 747534308 991907388 873766327 226270039 939245494 245166829 343644040 32992380 802440837 359119974 394370541 764325367 112502671 238378648 336715090 587771668 918398208 809525429 72577319 760792910 171344047 92586823 455066255 725932361 610442851 637529851 446752450 221088007 50801739 292768121 709664495 473532070 126415092 791765916 989473639 387607174 870917430 155671391 717729703 657313247 738508855 790604415 134210127 430917991 900558795 468894786 528170045 560419794 992037057 872485096 193654373 470726824 109767050 996847248 735882906 933741618 905461240 348226917 742011745 896726982 891570505 58752147 616625086 841489332 181621431 848601912 955567800 465561799 466184095 662598342 406099687 444945474 95413466 612820195 688850609 542784353 774308509 76717707 260387023 441765650 361429649 589720888 143182389 293502885 332929311 685178878 573028405 666338804 565325164 88685122 428341837 302418099 636241561 415514922 808130572 891312753 827515975 381995851 200631548 48490959 290144215 319208504 959981927 734367264 410349528 333949069 794709767 416651585 836948515 956396380 894110898 679572712 972903448 887829300 421117441 884384862 572511361 588987154 349763286 242078208 495515594 715084193 543677006 651979591 861832296 464760775 384683511 348964890 876585042 806459202 800330781 490587381 854032211 361714983 617349118 229358689 73988736 932450026 928402023 478154846 702160447 395092702 143948410 948778403 169344312 993918488 920544785 182512005 261875540 381431377 165829214 634719136 436977650 348803586 235484597 432478817 26266702 752615304 180852343 334948589 957580675 571874166 919078850 562437605 802148690 357670308 602174287 890529251 109370772 490123819 463610805 135087539 155973720 686803672 959587356 656460427 356260370 126143456 167589412 34374662 249867633 131745374 276311197 597539744 379246753 233163797 473814960 53562183 300160925 253075540 272349623 535565330 659515728 371905381 234562621 76937776 594739070 548174161 343027629 938761210 394597636 571974219 319283870 97451419 96825979 249847058 393205644 74059306 625922641 678033579 622025598 51350258 722337869 106246844 345064289 453086092 4543886 189039619 713644706 1617553 851934775 216582113 305524742 701782214 159935170 48794058 452335954 17417368 963487170 395883969 774768846 803806347 66978562 329001393 861152311 283821803 991130060 752340148 151226808 178624530 799117248 313850306 957961819 27733543 81844885 644832229 748563067 420359980 306217892 119412202 110209890 674010272 454451264 53888178 682452097 775609910 405091555 930042885 506017000 409340135 743505115 948885 354171500 358276342 13395390 154131865 529535213 697286004 907016595 591022360 435105419 971738073 590631903 414752426 702931906 684550496 14501248 879298584 511689244 659300236 944679139 872868262 510741579 180203849 355906679 718759842 884265451 603049719 750960626 723757126 688571235 845995765 199457195 408889696 100021721 848327369 202418857 522155724 191925788 145619153 952224669 624575183 207680496 235036069 44088059 15016246 675542515 908320488 295786243 220748629 254708249 19235159 711344744 988686601 428144246 685223530 494848028 275002379 330650972 219840639 937347939 25560477 275796647 438631021 227845192 406986226 87624791 678753266 967680216 745388725 835766199 836122482 565469569 398788385 142163568 504979211 729458630 162260 109512556 343175985 982916986 429851793 243294187 423457522 717612220 803409178 691176552 870422277 16702208 4005446 704765656 619084218 626092918 592895683 539225777 459259809 842044144 289297660 327978868 968951520 20794274 805041294 549860433 759924355 912954168 770996720 468519532 246868732 481588683 179644862 526718617 710852220 154916810 866333319 951993898 593072931 122907794 731330882 730743959 441595198 195916351 938522048 525653609 178296638 28272256 610009622 656042360 390838964 126331565 101972525 654893759 550785268 654928189 568121083 613748124 692137486 720838373 717305823 147492168 96401263 296075462 609965062 830156804 870265027 684341465 946071778 32896997 531960279 850100450 822200529 479131775 129729792 705564399 233128257 263684931 234010937 246730994 909675028 386699393 454752247 557412912 631430506 897802195 622077775 61264152 990019940 150017460 722785781 42936615 748851630 462840888 599294113 836411604 363601208 336300291 36130576 417886520 303117259 292147477 63218941 25857472 870403335 614514175 706571502 571796540 396815466 674383458 841514854 824405217 359414237 284252762 497108550 446503293 57824101 933421843 832651162 316745527 565574263 116175770 405207193 331662766 246006766 406023000 447199573 769969960 514282408 297643750 163247062 841646843 209094736 104660335 975379717 789022891 673468827 85421666 841200191 687775352 649927929 324718631 131395409 866751375 960025621 540904893 711700170 119009459 692587015 948450592 730333143 594559599 932649774 957149522 418423206 345197220 441499313 637233906 379232351 868535971 761418504 914642096 848141409 411195464 126559122 274796958 724332273 308398070 657482016 485562208 760805852 913112961 93743353 516968249 213455188 387977874 840018700 750556712 907018106 837895451 967827393 1148709 523840784 99620276 291435898 818317646 285059993 689822608 491435886 8971646 570810978 820857603 679931012 178561010 270640645 687282832 459633300 329844599 532919437 589867860 901586196 296273816 682115989 960442800 93855983 131529267 769696962 822473413 238761562 425986885 594194083 804899960 877341199 258677550 272258560 208229408 266201963 978953431 590250692 359659220 794821873 350777073 550219257 191446631 200208178 510745433 885490420 420732834 263339755 8127230 47241629 931141758 41659117 342547766 439310786 672310510 499238142 624360433 511028817 209618317 312855102 545265774 113785691 408224353 52466053 350825979 487775015 716983294 278439587 976598365 544225729 71147321 568338762 108508597 799317134 523372980 463441455 139158734 529949316 347932739 700539453 851007687 838235706 506090873 971597755 759961284 406860727 973049001 875652981 738889487 51190665 133600442 163637408 165475555 955963156 102639303 97579190 985453231 906252840 781723357 716103058 912546642 399784087 255349915 333534301 197215773 708686594 490186963 730299308 120774556 653511694 71586829 121457814 456699593 308326309 910967008 347238940 931844248 962336018 269426919 248289357 949208741 227150385 545431184 817905621 882055664 409749147 937218374 23432975 696041347 322300307 88274247 226052180 407236093 736655180 710736595 561088969 674784037 70804211 952993120 181532807 674209577 303388250 533956804 24380314 501541782 865852750 18766338 814254199 706220087 129520322 876049930 513739864 906189110 664798863 520290345 284721676 364870246 770658938 978960129 695538551 579878480 178288105 292080781 704340854 332092657 948371626 617069708 871255400 190812007 916601282 772034948 100389803 165656111 838620289 489096264 898101132 625071010 498401893 312142352 716997231 861808649 212964009 878039177 511050941 567724315 875834113 46662159 105438581 798296352 835699253 350107611 677355201 306956934 140335898 150304531 298941901 812111791 463312192 887525233 340484978 142534907 770511077 347870328 840551606 636805176 132800527 182123698 278653741 384880578 310582288 453491992 789175803 374488912 156030507 400480686 359526102 477376926 295371981 191091428 862639012 807630404 919090294 548281280 604042714 665017735 217269477 281807430 147714685 235474753 304310808 334289857 817867608 991178634 590588691 543352704 558298363 266424530 179997309 771588147 430959994 426739987 390557476 910443823 984608494 221481317 286838780 139890863 950966432 671056633 614738302 464847732 244603441 560353968 964808559 212740161 265964687 898248405 42792785 229213396 594051759 440772440 614081769 29422591 507336727 263309590 5759774 185464683 311295016 573987809 597356350 593321327 334643924 431199775 218922094 55292969 177042323 566691456 160525331 119234565 734776223 953329996 645937607 603059873 273012065 345123301 306272392 595524310 624464163 298973697 577640893 864999906 898940360 788537418 648816347 169556899 709890207 735250904 614077092 566108576 265441968 864238232 254349462 307920520 776643920 635836807 829710507 691093303 458630347 224403462 839169399 312699092 640820229 735243315 86088027 834669340 509700348 725818198 143618878 599559633 97285140 481319762 59981826 357766298 919587361 726076072 431667189 496106977 239770856 289971677 857077334 773235986 324076906 745075974 286328477 875304075 48536094 48845161 833126366 149556183 36344498 112858168 650768242 514194891 755423335 313626165 13200372 669892415 223942724 189719785 797585224 898077445 70630030 290912609 450370558 627883953 689904556 43451376 108773025 305659354 798819656 565854246 576970470 651650708 681816562 783311551 315895130 76623870 276933905 418360705 37126550 22940328 350927818 701832800 131324088 945762847 108282658 871342597 534484025 212514555 901986950 41425906 372644043 247383037 33311841 903792224 535545835 763777859 917423612 775755358 817488136 56406075 71614925 993581373 239227556 321519340 447159040 41431483 736236853 393437248 816087858 965128364 490930279 281584353 522862655 269824433 54278129 266422966 974661186 472503592 392542711 91767845 234482998 796889857 940457224 708099671 689253066 75801752 470559598 884645148 216483545 650823715 444659669 262625550 847278438 363592961 838154957 869731301 199290178 30173959 978337718 325653130 442035956 180402903 274985905 587283758 334464320 953038513 271882319 62385244 48787237 545271565 78627288 604196048 668365100 365105466 68318170 770995471 922567879 170367449 903281423 775883066 240002440 9882548 67602352 76050145 71231175 464974525 78442590 103217186 988190322 124985934 176569948 536215558 788063239 193939398 912167555 283260973 730194234 879986799 402710035 615050561 105797680 519190901 648700672 719324428 1078482 468469620 50405616 983119571 399279371 220317861 651915636 461407962 215211156 900150511 906257477 731875969 478064450 842195123 611210536 7280397 653855728 114359479 746668825 123976677 554762660 234309993 682155220 421216016 878875176 30994958 181145882 276829750 27522367 156735113 53858362 856716421 493494691 111927646 687100184 117617092 910232886 668539379 614571713 966989167 323239012 979008491 46963196 579141123 9151043 278504767 725584984 188777569 345117267 454253573 310754654 704511336 625453168 81087952 42059993 889030015 765307328 953057301 805593331 140068620 881808738 246286211 276059333 220175141 654408249 8683756 591834166 975985622 497197046 162631680 859976101 936102147 968269706 581751983 196364151 639446028 252387205 834622845 220612939 4126929 685613883 238983734 720229276 149788845 923718767 503675597 709002348 53677524 654619011 475488571 907827880 786916686 57770651 581343511 868536818 439804658 868320426 76947906 38170726 715804033 101571930 822880305 626338805 122481861 494765101 958586093 737589401 622856177 501770580 420203536 330428177 816584755 656912700 276269275 14690674 721932960 9737418 114154742 311480306 737329748 685440165 275820014 886766777 484739109 280567685 814671245 675359114 439565868 80404885 489711012 750410223 404849226 713431488 152458613 822446274 460849689 21906655 411387870 381143185 768476860 742250886 357004419 119935005 558337213 951304316 776552517 559971276 944553245 468368665 648316960 197021492 258630941 404424011 628419210 951722117 48848934 234370896 782788055 80915952 346869147 108439043 863453978 118992182 289694937 646715518 896505902 522516050 302526515 769127051 798065183 851539210 359663453 12762619 99561191 204628475 245880088 871597602 129993066 164580239 31998762 375709737 427708959 17490870 643484039 875792964 889538250 638668091 73303703 923871952 117990449 270517696 798366282 768779898 980165727 201777200 34690457 48657904 670769962 723081227 946914428 713981404 770884302 840464425 331885429 585902939 327470740 153857600 620300055 841562209 919397978 442138051 907662084 727497987 574421919 853947206 801203158 188392510 381406932 154126482 75738985 592845179 577525365 36180433 510380702 338857910 523866083 35563558 830479005 519955601 204865407 52984338 714128889 475026622 107999854 321238132 16461869 352474555 548237529 376408757 277612206 890276982 739224765 525525466 268481371 345507607 231656264 499418044 749105287 262969423 695730278 727452032 578403341 114860561 396044357 941187004 181314136 380628198 858663146 352763887 847636519 787714336 937104564 678186834 281773581 692727542 118110785 375333690 580040689 622906613 844957828 13826093 528866202 192216876 551603794 22282959 839140786 885208502 849026561 245068608 845781873 549655346 230776188 205386744 574605108 954086220 338851019 381062457 408253112 435026642 847059518 514451746 1911499 244680597 452601971 482000238 986325963 523761518 27149316 196363890 177544298 302701818 588808432 398871308 425280237 841318151 650146855 622493215 287169205 755982642 584632985 117804998 183803368 245016929 824883190 345302955 748096254 4025082 321136132 686222658 686828132 914354965 571113457 206822283 185154274 658306510 625725275 441947042 922667531 53818835 6027226 97834785 513353622 601786876 297574581 546618433 959280844 190026780 455220148 399237284 567240875 260753252 669450394 415720336 522596901 987837327 892582467 845380629 280328226 51149898 654759537 565342856 270013010 358124804 708426294 717334412 292028671 442207360 39774766 895079332 210635247 805555258 143690597 298222530 194875553 592110440 188816251 101613769 908678314 189312547 96087152 414136977 257930503 198680718 669440332 69876525 449848362 816335635 243268460 655128711 774002341 641929779 352127986 379253063 645847963 584060706 411837371 176873788 809532121 559910426 475757201 223526388 535484487 617330485 337879792 584961336 366402037 58605989 334105721 69713316 650391860 105766277 644433478 760897592 93113079 336483485 547340439 405291070 865137141 157418281 279217261 965902578 886918256 133007048 726340426 62201571 975840583 379389633 828257710 253064548 378057279 409397243 167595660 41675483 501749585 310380827 63509183 735693109 260095512 633881363 869083295 569608635 978730288 65961648 709147726 855946955 605780545 115918530 675595260 717066910 497108269 532047849 904082491 780970776 38027891 321160484 727332204 873658405 847776044 730025567 855388809 530508713 690641240 990681987 49301306 1972495 891802277 599245245 170551125 875235080 17270742 800575791 428551144 429590238 488813659 867231404 74478418 236534865 710256132 219748302 467571416 17388509 833150714 406911078 731426914 913861551 560976038 320498621 508274762 212241917 304779820 27905091 802245540 758621124 933077161 482134984 697813364 968280948 316372978 251767319 388988720 106176515 436446414 793198038 2166977 538303211 617469001 129760449 17770280 693373272 63419143 178846408 829988212 374763352 772548148 673253362 161125998 151144867 807164105 382659682 240037416 258064970 420977304 353180548 737274144 147889678 640465567 737222402 475530043 728036287 158892864 107083137 433675377 657279101 501060871 658993613 545430480 664162969 584876572 41669373 165075223 666987155 671222989 519993136 355047822 643885415 816693465 53645871 372779601 863428932 521983008 528898986 387354182 472930026 778139267 795492706 389615247 116210072 380695944 697006711 714085818 373538034 16678861 771617353 471555833 808654662 538099907 159145752 814996679 272837141 899321143 788091217 753047299 996023809 400518319 218513721 196135306 473063586 941540119 598699155 435676410 573519185 180954079 290670849 783175375 870957722 204491033 113007400 88654646 265308439 668300420 257009040 665044820 829160754 838466506 234399132 629497069 409267389 430835478 709541630 386830235 585226070 776975444 293984759 442520994 672639316 853819595 299410980 973978326 208244570 357065377 234834022 206057731 13857305 650066364 754259752 88082614 561427941 182522526 973386048 841754102 563004324 80965576 904915683 32735351 329840286 156457531 596472127 838913767 342816844 645360069 882208717 365870361 663773535 183194106 694103118 732450525 911476420 369776093 562471289 698780055 165329522 710411817 35132198 333414184 921628891 366967282 703274182 784677794 575581038 532032904 47300457 676482196 727690761 128743342 403994474 291336547 310442686 787697472 794524986 968402403 17956125 322561883 538359704 595188301 788018765 579849202 568039395 696828164 882401587 590181250 360646757 666145165 323598133 888139891 281064807 35240402 529262996 606920330 245219690 494845971 697846809 453434019 391142268 484647387 547427382 540908442 569678791 316955277 861610059 391784715 552338658 153134316 674779989 91010512 832077452 973823351 430590233 163717005 387948153 258535680 838415418 640767808 860903010 974338821 62553269 371833910 126335955 502842043 396955455 725870341 934338567 219389942 683744611 421393337 721247610 160493145 251319448 561042592 998128144 260212417 742858317 211442422 809009458 532711569 656523988 535497095 977226564 768960479 387164987 583113784 536068609 749711932 704000341 246713507 440774478 106787975 768216983 131375277 774780936 879035044 750181213 155911106 962294206 910819937 298528475 430424539 525007421 197604680 803058234 692503213 956510888 752855695 15536609 980545440 116077636 589668685 549625603 670317499 209167761 375053191 181206682 108386618 65175780 331968046 706999782 462158796 866476308 570469623 250289334 941436666 397058182 432930358 300762618 950398153 451371198 948888967 899952920 403490814 532999601 569675082 848240396 375891283 215666469 22063342 260256230 810236045 150824913 971506879 312660670 516311524 117104645 289874065 494459248 506331194 948702596 47602659 115194753 712693555 573637785 387011666 947589795 725938567 213972502 35113460 41894628 916338489 144294951 219027448 395062568 701505444 735913433 969682155 46020378 975676849 521376878 149616007 823064632 920212562 781564702 994338936 104011846 654162243 776080429 262585302 445114624 939065499 151682796 429364980 868283259 164286406 604097831 371682721 798888310 130582876 171212347 484528752 412959105 533441609 5966590 217085437 647281653 164123155 875889359 423567849 607644080 796547825 461551760 888321563 668219598 651459016 644877082 673153444 945052024 59100310 414459501 585028389 16620156 914848832 587038686 493329736 548109009 921378412 561084149 63010139 285348451 682367397 612476346 164905028 555200283 332517511 317871629 520772030 727972429 416368805 821234674 711996858 4091030 537110571 288397188 209493109 657104107 38587713 962812977 344600502 651769197 700779476 23081108 888191385 842613867 131075280 984531404 591728541 302143868 714819507 574575360 721593118 613720230 388601060 834448345 778861617 85496924 886593115 810947569 537114260 507039381 149522242 989760865 797568990 923565621 689798220 416739098 322569528 20144810 981464183 394509199 93632399 915330937 661785689 560030454 108127800 893169685 921325329 134886157 239587721 605342242 951769324 112760405 461797524 15497791 681043029 305969772 724479607 822225001 411995521 501219820 12364226 485862641 613739832 748847669 93563130 861040279 117851851 263818986 635079662 791992362 198268952 426163367 602495374 617339440 140908740 661180144 313920733 368309600 446927466 304810932 358115727 151505840 576943555 611712835 504009895 308974100 950740106 816892283 885746579 232505473 65771970 579050588 227447781 353904490 376680050 437907492 912123729 7414891 650986632 864242214 712156098 767081620 826203577 330175798 36867088 933395726 361570003 878323916 219470926 205480524 865197727 956060710 28797386 846571843 592925021 454527936 915466051 241715946 232067007 410208202 235501442 262451807 536521984 666719497 479915364 58071525 16938661 428175127 842967281 594562724 33239226 30739891 355216270 202219648 741670723 475867202 346700022 118596245 880846255 78531234 954131075 593328074 616493930 985338934 868801854 657813746 496285565 559927826 470476289 679470734 813854954 728864893 122076107 842891924 195322281 82706362 511617346 81091680 137538076 891246933 662623532 767937899 463675165 803636266 380454121 496664285 55626042 696032525 821924930 330585174 776129711 822902665 691350388 265583261 716312561 148363467 272801395 314067275 179822065 66144742 327215105 107798188 936463609 646892608 791937512 994610352 370793136 937903888 744794244 998919173 320944046 581206407 93365734 308268890 931007612 352933053 49132374 629901262 636228381 546065131 50700915 134051093 257404359 854088277 341733919 440037641 47356400 235672428 817652356 878721598 317923305 545488742 262395548 243914068 21045304 539405469 680214385 663206150 139509769 656571462 947173933 324734172 307924364 350554195 185993151 969073449 436327741 715811948 579703340 570195828 440496111 2493736 40431216 46039986 925751501 482894667 449559785 278289493 142990177 469943974 254486146 63509712 597454768 11838514 661077935 392772862 627557417 279733480 636597195 269654401 770782928 987444595 86922384 586664327 936476120 657317860 880805864 57218318 573590349 564339378 780363421 535177542 310892798 748127660 756882578 893851051 337543801 29950338 926452717 975543063 931642545 772179689 177029116 610187598 993036191 136771979 42019459 671953679 821640436 230607485 742377492 488434485 260589230 857378830 671042609 193439074 25658893 184703203 695696861 751098714 575892366 147460840 822577643 295715551 87600155 780162507 14117498 661187233 480885148 599077766 576759142 659193175 101070403 557765555 305213132 461269040 903403662 486145112 300775745 270136531 210326168 402254134 518400461 60395391 987501294 414669181 606281121 601811692 905862392 674385452 471363292 723012115 990445463 462924907 260602636 557371470 710137031 503783625 86087607 666556389 403263363 809795956 74608966 535378933 921903441 252310468 85691393 141549461 899355208 678401515 538875595 24045651 821477903 224251235 267461160 623355304 702792422 964793636 109790685 945675156 971467215 82566114 667314576 331979084 550315753 594269240 470655625 476779185 352641043 103644733 742303836 454581075 795592282 506090366 638449390 176268398 8956952 240267936 194084974 617174014 723779645 356663054 353217236 74372336 852385270 319254162 479656736 364287576 775206024 335614437 660281162 53536724 755675727 226018347 159778155 140358812 195302110 782292817 188710127 459094219 693616366 982847067 498981719 532039420 198889038 731579106 903958050 970720184 576069085 600422088 436705066 772188128 624489875 701887083 337277825 389867515 990321266 956229026 664093712 755227202 290518645 386484826 229268360 101228975 393818395 422857098 118356406 149658431 801239256 74529147 205116372 716581912 95022534 6279213 131207903 954221222 190497156 992822144 206300037 978268181 633131488 138339577 234196480 387034411 530943538 695019357 772374246 468350348 882557674 329600424 932740870 153912156 376339029 812080751 551611200 944976622 683076717 503894939 446874355 359016772 782975785 545168594 880814643 769627102 29388205 983506610 939561952 882942996 88896447 999538253 928731870 565012039 246310985 80223263 999525801 868231135 450750084 94618584 117482173 173320279 932601511 993686117 232529313 259695380 229824247 993072871 939509948 140541871 540360667 700392852 713958186 688624941 838845156 634208422 934837561 53476422 747918867 208539741 275364310 681367769 763810516 940103809 967132979 580241639 73047637 388781093 640250414 246922420 905722248 137309506 30074451 723279840 645109367 300781764 735519901 888788994 888529088 612759683 749264998 160111052 719349640 666510197 295967346 122792501 174505745 213790901 274210593 978963220 388266469 478327477 615732062 108066478 853621684 217188317 205646959 747720156 377961088 983080670 366649941 171282942 330761057 315498894 324245259 202686489 490702286 621676405 359125217 979607476 167287633 489055696 919364533 865370213 101332600 36261609 347350228 603941367 839221084 669299600 245529568 206822057 960217197 600850895 513347342 465085973 576198305 146227787 893943279 191095613 918579084 527327193 902744198 990622306 891773243 582991630 607514761 402273874 733377379 789768808 969541646 706180033 553673384 614942470 775198848 998285861 824282949 128943366 653393608 398886197 218511433 580402945 693012723 993862526 576894059 834151249 56194678 476137764 554364792 84232075 573396459 615611287 203829421 566177816 717301314 985601767 681150928 321444843 678512173 664722217 403936312 452345097 147382759 25084071 153817385 180052740 885064087 878634125 121130136 342915943 265379976 259957388 20601467 675178636 873043141 200053235 46081293 422382532 666168054 95574888 575206766 991001688 835975815 954463394 887048662 592355881 466202210 158197048 499966702 433982516 49368906 666202341 927984468 589818180 102097820 107307350 683237853 207376324 2854543 570486444 624759608 371923315 459826076 873238379 10973343 813355369 17734436 352156462 729901914 896224290 225948659 782170983 81159969 218328196 418698236 148106344 580137798 247290312 597009019 235674419 863862505 952534985 539552 361779772 462507150 177079034 639672507 346473438 729939490 738961963 763612702 441176293 179254377 546908429 809300813 516984359 652486250 804396681 406205354 389291857 914910530 418681850 756274301 658783632 380893712 673698762 252923493 792861259 929924931 21742817 403877895 767136437 103755129 131250656 431402544 856870328 850968428 146080200 123133641 920228009 484676295 483440675 18482645 496472296 939366561 23896349 685479432 556594 667157441 990382473 156313523 344887513 829936111 700024217 729215324 683282888 767316275 883769969 782312358 695483098 582775863 237785839 304199037 317468717 249911845 932159453 509190789 905658236 389112418 29531371 930978881 520730135 538516447 192840813 839133363 104100326 643127415 263421522 482019759 62917942 587883002 598819579 70867418 980531764 860641823 564678282 341175788 593642935 103864584 119095801 983910169 372390325 394923424 533472546 955620732 722267302 76042644 672887918 349818772 545485794 190498398 139214626 834169506 927784189 851017838 598337246 330145043 332869135 132386576 458831042 625955850 372570851 696680588 214239443 254120707 495124236 23347741 849926099 328010640 464090101 771847695 559646888 264002793 186638688 633178866 523215041 245782332 300793236 377890813 50227703 844939696 425156770 349905793 782214865 241647191 272059909 221712152 46692452 10501302 311953503 8642821 458731222 229645085 572012754 248627456 880173484 326406109 792479794 162061607 995035328 766006611 648571805 720151086 506296733 673793812 358079093 914400977 772344267 592257259 589390467 170241035 754238045 522821453 516965707 877435571 324780995 201029166 387454979 436819630 557375585 4016706 173763421 903294618 574467006 341322245 59594241 17452521 291809303 683447246 478916489 931543180 280587744 46030429 408703544 75159841 710212223 435376989 926695818 315613555 370684861 363879807 203130965 823122367 609130612 694177583 961258904 453801081 651732088 843419648 722947693 928422982 656169443 477707746 247972591 872240518 545538493 474162103 183992706 30169675 825855648 976086155 564342928 82698111 283738655 168583923 858518909 975001347 636057240 218443835 555967307 407229930 73620451 732316848 146070218 405205898 966237087 976670386 279733929 873551615 18771536 40897499 775244606 407478207 642690646 253314959 759472971 664378953 42096340 371973307 724016300 7767529 816391821 966122330 146904865 507597819 428483883 829196420 223864302 467093497 682350104 586574785 796447351 821092939 746259725 873239141 13146733 329921247 83842135 688335242 482799212 125831647 194685032 742512459 69347652 661247474 692740053 702186480 639539780 278990925 636564486 965323107 548528625 485519778 779563133 877609484 127521253 85223620 948368166 350143692 528009063 203655826 270584687 759650926 964991944 567863739 605260712 538150908 713136056 606440640 231119157 515174748 633427660 21759060 898497992 882853744 87988422 146823382 829018409 239328887 121614254 75502827 668448146 77684642 439981536 347502068 996891374 406253853 158091354 802136719 350520390 128978223 503907356 912896854 443386023 169740554 482839389 32588905 212969008 393436366 218515433 866439847 382439866 291399506 663023521 827114053 1684654 480010562 167756154 502509600 550278183 68752417 697983270 263529828 455489368 381540109 517418538 604452425 929702048 106945731 859006418 865800831 4038289 405507524 786739040 385325060 977980705 498012727 540602168 462264735 627209841 718396213 979966761 608371444 534893722 556457704 881784915 493667160 939374548 112213433 432902873 177301370 670632802 468279795 697527673 954084164 868180964 586284833 886409834 40715822 988352337 463928037 912843874 378218691 656360550 974352932 426307679 937004696 495320175 449734555 354260153 792326514 611234361 157393105 819635116 812161454 404335274 8662817 631163467 739581417 599431041 397126475 204453993 866286969 675157988 407838093 703989142 977843491 859147003 805146990 436800381 535730407 441479068 172315921 641256796 316765195 923366510 767194214 778865990 254802138 278520755 749386742 140829560 742781006 697504637 449156157 418338007 588159159 697024639 615294611 264516987 971778841 53950768 703568366 652300646 678541704 633907504 413693620 831762528 178074953 31995911 199017209 284978185 338242657 667481513 5700135 51178256 887191446 583568374 529968364 724093709 689509359 519562743 317079145 764378274 96237995 438425428 684668315 785259537 133682449 370970052 91163075 822586733 782338278 859737247 997375067 331211613 675925265 382443518 529696375 492452954 295561885 848983865 176369236 600451710 662168074 448596523 798822684 40067081 290044050 665662025 89741318 464058991 998350975 569663950 210193504 2307510 54416557 229776060 467546129 664448172 910872120 198432840 845480337 517287155 941738544 599398972 532476379 148082643 284301180 731595745 263140471 922307109 470721434 651592891 322703468 335547218 267504239 141224086 176323703 891131378 879801684 654504806 571654225 778084334 78035817 891130447 188300063 639734102 866214267 362439305 151206709 59675335 998329400 350163431 500690905 326067258 668451079 162540477 448554283 502067297 638309971 602494917 867639197 72119794 877435969 2534453 319319144 227114935 166802947 226605322 951613028 17619730 820861060 209470514 610166160 322647290 362630913 650932187 61051762 521761007 622854121 8738359 126361474 649009049 539785561 21596781 749270097 410697248 238878930 522199953 501232258 703447725 607794427 6348491 2712046 189301148 824540722 872642318 113220636 602889672 104086446 884855125 243329468 269653916 178619323 49257499 742865174 294303872 795889589 858460157 642724624 730820969 59432091 834130781 146976240 846237961 691202156 268908972 245396692 547416385 169308103 287650128 410283082 385935889 814451585 574694232 947130107 315511654 943762715 1627125 941708671 357835375 982210121 440294020 282807890 745292118 312887204 959928995 369519663 445108130 800531270 923783358 582412371 166733263 521934005 491037425 363494320 970728384 589311427 216178104 913276474 548058695 294087712 518078409 933222431 814928453 668528545 802883660 205638292 222182339 126932775 162846700 240730783 539642030 87583400 645682632 204669851 545268152 222647496 243431174 345001169 638746266 103799270 772378460 948565719 221583596 762308771 817737770 932423517 165770187 646265380 461153055 16570905 948162374 834072894 399550497 192096186 410274476 72058402 681504350 525900817 797763106 836952021 379530281 503831182 506154087 938060924 808071592 135416611 209656995 896375136 942561896 586441017 317652355 879697359 118844627 794647075 556795802 785761998 426063587 873936961 655559149 689989230 263199546 503944098 81885345 65418077 126232702 306721946 150201038 965565274 581308230 901002454 530692994 525350455 374613696 94790189 318997498 373920977 450273645 997461479 200450943 346495434 154232465 512550629 485619650 90403726 494473767 300887443 592115428 492433047 753318385 407879389 842884903 28241452 519248414 325729292 224571689 789892617 45074781 220295666 663033727 440435668 867141075 637537350 418291052 732287527 520051969 722307129 992390052 169278442 636395583 248152599 666286345 412323342 418066434 587031987 560647130 521464765 82545293 311676328 606660738 914765739 578411620 987366603 915315891 422196115 800839820 519907703 223176028 583775706 296025656 39699374 829869790 404789738 14314861 800255902 507652560 712849460 699838985 928971699 539757197 882492322 981867665 103181717 460896386 336620851 300161817 730900436 22183666 337013748 340560744 26854531 864887786 865086158 712577367 843706223 334712987 188980534 970043297 489874924 760134442 622747048 979873110 776257076 643461355 256669345 457356971 798365796 677221326 269811054 708713928 877823653 588537520 147364734 420634927 391614850 353520593 94675807 420245783 104801716 757649525 582467648 869103856 444729609 993725697 38981161 853466721 508423766 753948053 680911972 5376490 47079342 946724185 88692090 561187408 871754061 421786063 28217696 386978037 660378734 438337267 326939494 519349403 444504239 16676612 85585887 997798430 815107126 342097777 836330306 648575583 572978193 672642198 276640714 644535340 167726 237657512 989451695 981561786 106869537 913788838 184689149 388987776 652761340 275121070 231432312 814781317 864778176 501791015 107164213 571664133 360549635 698523779 827143229 435724263 703545261 807049631 916558268 651854293 457217340 445754062 600403315 653275864 389054780 221590239 929246381 146924905 97574177 258094040 279698471 26114689 737207493 72154047 129032346 521844514 736902782 571238170 726421431 798035044 41565955 993864069 693906970 564606516 545467795 891242016 782548595 565734470 191127284 278668053 835441168 22564489 994004111 209619255 549387526 67245209 894553989 90109344 559088307 416598102 924066166 574371426 895204223 316683770 720243771 239299525 772004324 121422315 211604924 429972949 317740992 330341222 372852272 513662959 691765585 300388148 814025846 15111982 465741741 616348173 827153579 120118350 165620919 762865903 859373550 249833429 984109873 614875306 989674867 346905700 479461037 121801872 102889161 525147200 998220235 748238611 210817043 513874336 887823435 848783524 238798576 883178855 878200015 294756071 182091469 801313632 91408720 850800590 462568514 939547497 600652442 633802843 222685929 423004005 912047208 438925831 910365053 986775933 429539860 752305540 359555023 728808454 162564312 19461476 964765830 27131279 651119352 343257458 792731038 265235497 500317478 650403648 587812292 581979283 63066147 374263909 122418910 801961428 73614334 424886460 591898808 804796331 592366125 823018731 804227617 725887880 299951713 594189549 195975681 952073313 750614964 320160361 788630803 571961546 606820349 707504819 506063792 685233513 111427890 798044311 319577641 701927630 809181217 294762601 802951086 104850537 746022604 931465330 641433418 440677356 11692586 463237295 563981639 665092375 445069232 343334542 226819466 576826488 243062891 987584974 136579966 125444512 399806414 906960134 422235496 173917706 116062250 484511648 515415091 676404727 567518551 792091221 876687898 905878355 312469189 498207764 406051101 790877945 681343986 352856761 276532046 470791030 433011014 78151049 20954980 926389016 177559742 701190366 543982848 993704480 26399950 184941424 287134484 845329992 230795486 666565626 487141189 420267427 292869784 546478336 65008790 315397312 311155982 883261842 200422664 385305206 563368341 38531167 842945371 771385376 524926883 101677067 582755618 788491067 499282241 577872179 46892161 843844425 870087288 438578303 369326701 979802292 65777900 889619994 72923452 551956898 248730178 69432346 147698842 707929060 565785768 580723200 354334087 496271028 185718277 479988518 470796193 125065615 830537662 276760672 255133543 108947063 759128743 836516450 308520925 338044579 159084788 623955047 267825980 462302297 113697815 505295172 581666065 343698573 989044563 398740224 331497928 638118034 930377683 159236586 897146273 173497104 143469618 656846052 910892975 897421875 68071807 131479373 845313672 468139536 186141451 348592466 622895974 860254419 778502149 614526507 878671821 565397125 532767447 255327091 793138896 596796901 303393327 860905226 808045145 250193583 885715563 646662091 580726495 173475407 861926830 488036334 221545715 451029391 111561346 322451690 384224571 932370403 505399646 645472727 201522793 114622137 826584336 830596255 823021930 343857553 973622869 396823055 707836427 973401751 989048123 725807995 758529521 585490636 89995716 951931474 637025676 508909292 652914296 707372042 490670332 515359505 875903511 651051051 449378248 861625675 690716678 7997995 295895743 910340754 258156115 175140138 325416392 726551691 384460208 527390491 310954031 490544262 762392258 236682758 169184297 810332804 889774710 863634935 566196844 76462412 81971092 399884758 191560703 418034567 950789696 548828046 409894792 581426773 144918247 146882785 55630733 76008344 416182405 957643241 155749026 649119574 4709328 414081373 958458329 802960174 450144093 975529195 975716908 731310491 946684103 95101757 126231541 600161619 728216155 834288621 963365333 459214385 49094017 637532064 834337317 459802309 74627325 422319430 538026353 398278896 816938961 492573043 383747915 839395120 421465522 102531956 648456534 12088211 722103175 260878867 708390227 107638032 562858175 808723005 806835130 231677201 662802038 389164096 77065712 186599665 329878616 530810100 68458317 189304932 614919018 807869126 121456463 979591239 977375248 736715053 919293589 253418018 276391144 807717377 864929691 223052718 115574041 670455451 817071199 713092665 523881031 652008310 283834182 779257714 690815703 291868964 479642055 182414351 777986463 37921599 733373530 938192579 709290252 105147195 917652418 811692833 414894904 359052612 539967086 810328801 670780967 612838779 849350457 803984229 612215632 133104063 395279326 530445770 569903194 801102753 836977041 928218026 777332934 121491035 193453705 803073728 277955043 522632662 478915721 442534298 760712567 226207942 812681269 132467539 422441151 916587207 29767313 181275587 137736925 119668278 827381620 419730562 242339975 487034060 636856147 270991702 937443686 301760066 959820262 663482343 193650348 574460965 329137976 805194393 763600826 220547034 501439136 732332226 930830606 671386199 949961755 428031954 693244684 998452563 928955514 649121388 440142076 700842914 854260153 86068147 132173258 837360695 382942411 951790920 610320258 639656419 364373164 681752749 83229242 831063165 222344990 139351863 96475743 844456504 293452561 80456476 156906772 501229764 576985980 589183598 838546660 517219940 542482248 287630239 585457733 520686853 845449613 278634103 292167023 280738704 335301870 636194083 396752887 309747559 488385160 236132763 8959576 657986705 483692304 931782809 248153663 401054958 389910099 671523996 784642978 448249544 167584450 868305609 168156321 815966042 102217804 441810900 927913788 95267364 237336447 161308306 163721294 31251909 323248876 350470265 150241774 708566851 867903319 125268821 606796640 382218844 165692470 469280444 15961513 978793743 102250899 770414663 933294734 872145007 876830572 531198388 428720326 718497055 124380815 395004989 430695477 690747732 177580185 305822042 501369937 461488653 347127424 73820383 720557596 735212210 762432718 289646070 174802359 268000520 101862735 147666503 864102923 457571518 276780732 584283046 971686070 374247874 670964954 100857567 709735493 64551454 860485568 207916312 819457022 226178695 187414337 41103437 110048784 191458477 214758968 174193247 815028876 185566547 817591851 887157149 882393627 645221259 218851588 291501738 567174535 831654628 681529177 323870287 570992467 507517134 533598678 135805974 582561544 505449405 635772980 775213903 658724871 627616256 294931476 905260282 399869602 246667511 975387849 245526007 806477798 107800089 183428262 348842945 398305661 323243862 261377106 532223893 733639162 113714469 2654280 7204686 414232525 928687041 258973185 961645039 47563444 652878911 633675115 508418023 847620319 383932113 381392071 118262972 899278163 554480381 624272620 577039903 889822326 98591872 33774964 512813530 396699116 329146741 40715754 616407512 810902735 51075571 678914633 12255342 868520718 23079339 94531440 366800377 111642636 36166442 943654847 268952480 867451665 770489928 484293008 508775555 88954714 417759368 202189453 45114119 687229129 246703538 649886043 194888873 853309534 559459172 29609009 512928939 197034713 376983259 358509004 651064273 394534905 871060891 375012310 582623349 563099201 872449099 493365646 179589037 223388928 695667043 820969180 707023585 66118606 822688827 975679739 286891646 604592219 931683154 526147343 151238624 241808422 351461229 685359745 307315579 225694693 443180734 448943004 771678231 132253262 247481071 956976738 624457298 151169315 464006414 962169300 993946502 736816906 601100105 519183580 135166102 630902068 539527529 511499843 393020023 667682349 834380032 749463949 960017493 152679304 44568769 924372822 563523831 825387409 275840303 64451756 463034736 120718968 708147940 357965575 489674402 382107644 843336766 781864071 236501130 452159772 878478232 901880758 397651083 885010903 903314315 421369541 532796706 371248487 565784643 2436618 811386202 455352365 781973105 899416511 75153139 550115693 466832822 37166310 103278192 486201077 702915260 58471068 502146405 647015994 441617521 842423047 11836607 462309229 285916809 733993168 713852851 344888297 355874902 228473535 924914548 433069785 307413873 866041695 834918546 856287882 744525899 383511727 199782132 863616328 114850597 494189802 198383599 927268838 549742549 149754930 404702744 745357465 485326608 306525427 274100351 199297001 528250282 624879896 805412975 741553049 473488588 221588089 823766580 773673366 765413109 849534506 348050942 768115732 170954895 833048511 903352324 742244167 739213586 938745267 987079525 307883727 266543272 787585837 131310692 106270924 219969503 467680347 800829389 76661766 418409552 511614506 176734829 196611967 560836756 211643938 805575726 914322206 78520848 71055385 619129059 159067360 229888360 255418556 704147835 194183445 410547678 293964899 282769290 267956383 620758073 611051119 101223300 976480892 87521674 481643031 667824852 782046237 5446947 467191757 314990226 650996945 111643777 493453931 702691034 745991373 439726944 372392190 803784377 234356858 273599138 840126286 550729358 97917370 34519773 586001586 318277134 772336772 803042550 56351111 991005459 780882153 30924639 560984908 760207458 403018143 485469034 597995814 114526967 979256641 370155077 393105835 395702313 512235681 44292380 536812062 620500602 478931402 301286823 628964266 722740122 688626544 331982278 782747842 707272964 722179620 43733426 427718085 636722964 653751062 873066588 157234431 876188791 472263297 789733055 288667368 433909833 807603596 301747033 258349521 251842258 878821407 60483357 316978050 83449391 124748283 519544285 784606073 183470215 638867118 504475811 173224517 915354041 186451266 939063107 970239869 253817909 465784992 431188207 109664311 98799736 437602327 298678220 361208958 994973866 557041243 585733337 340235467 55450335 60809530 254761202 737073275 817386710 521731182 992474761 949175013 251979104 516076675 624033066 35577589 876766909 884323531 354739405 4798855 736535985 735064661 714371776 4000935 744714329 978499986 982039921 663245897 671792030 206193920 867823627 741117601 337198158 856896793 103342565 950923712 180590386 700159374 567538923 608629696 202497212 830691364 312765586 767465543 889328738 699135736 350875563 127782878 864720856 71503276 917291104 819595382 66857057 611743427 597457601 572780690 784407243 881098789 483870283 395400906 869517841 811593996 135749656 75555947 287701737 70529973 207683095 292779390 19882988 959069380 281157886 46981315 262517922 640001844 629669509 249536117 100109816 87379134 502726452 4542959 996653871 708353968 740599186 730558099 754165407 313925351 396490491 174046613 690383873 97647662 747247959 3714436 156975526 951169768 322598366 732508296 199042742 429318408 449083146 39024291 193899468 616237939 235330716 104143211 838265128 20945739 129730475 419754805 18812364 376498395 419071620 691503947 204898786 822326144 970810782 569498408 880393612 641173638 202881949 625924914 621225711 314179806 47877397 27979487 709495297 419954791 562386167 767108002 330106896 825150338 657406014 575337551 216476007 853092730 764341279 3941018 18011622 966282387 421490186 893130700 344279373 24349547 606319946 374425950 259799574 240058193 719938156 809968477 132949623 522817399 206739074 102292910 596563180 428780537 343041933 812610111 712510904 387981074 367710786 588848686 451252634 121236036 629012285 444166923 218089860 855068390 282792765 651335752 99575763 670429973 77694948 331776406 368341776 119638636 572024814 975016383 403854280 646052110 308185803 536215256 970010677 54338013 55489217 831888824 912832122 932485161 169703483 990763755 959346062 470821935 639968998 787967827 96803883 818436524 494353336 826703850 14648206 378517025 190986850 479555270 57871765 167152734 293694723 999841755 837050744 513471922 891178590 230611576 557771889 238744230 565509915 751432882 852990453 174205854 377916261 833698592 294992344 126002909 790105561 6182078 607187469 369217004 320302819 778094628 438434496 645215663 352608361 147345905 235462384 975809847 7207453 66139563 214792405 678414895 82852757 328593994 678510875 874891406 596320002 419090688 499421986 505174011 728591966 451092382 411576239 814711705 261682634 949324592 354671357 418299120 20074416 861132636 1108750 653738909 841120158 492525922 979744042 408648200 757118556 311581147 496547989 413801988 844962469 713470176 61032132 925596075 948585239 252245398 773158757 356465401 854856471 310628537 608425350 546610859 819463297 751535290 484973551 134733090 50657751 808754565 722137959 760726565 888873491 524431352 655382977 681807933 297775512 233217551 891753075 729754504 986209415 757402347 309883868 355112556 485442170 804027275 159171946 576007556 824035113 498518314 482543832 649026703 438626741 859984766 669951091 433359320 16401215 766193274 686000492 446712680 529638353 799621759 209368340 741905865 567896026 588472481 184505993 945930959 169222325 42720512 42708449 604827604 366948158 81496246 67829658 39417932 984855783 823301961 160917302 26715772 732427933 593067090 614850534 29198159 844395962 266627 639432357 257806466 525642387 619646905 917060420 580160689 595673153 323253619 951364063 961903198 14908298 75597236 602738501 874023258 960488446 585535983 631086085 118803107 717640101 964785399 870833365 538414409 403838803 315065571 400885658 780996810 538528141 972716806 722487601 927429056 552414528 535656593 624889801 931009620 488196504 836692889 426251737 734692376 344167733 51094526 749892379 372401322 90256388 622829077 272024295 827406471 902947918 570895984 25846007 289851910 219338327 38584703 446313712 355123927 993303716 127550660 799116743 84445972 759020984 222571638 315203762 717314462 9994487 708013591 681121833 913047573 324146054 341487498 826339430 106624834 797859615 374997100 456498199 433528879 467159646 94752959 135497018 915425767 844406750 375349673 201598512 405489908 553844566 321935026 361497095 214529129 21028654 980835342 372361595 145052818 595311793 864821718 136566151 876730058 424782462 807310408 655537714 9928247 477814655 87256546 126037090 178291007 545931365 288833956 697753564 925856972 306949572 188330408 582103858 607617882 967898656 459580227 126780132 384409090 44316170 805384427 655056420 598535215 866810310 48740323 322363643 304898257 278435513 321658742 850881835 323546265 419026691 196749370 484683638 545440439 997331750 647276047 881987836 793068152 411569730 565512761 271708494 864369812 950017993 498092219 713493112 155786802 184250356 683633284 555803472 844241479 240183522 548118396 658615884 516207247 75890965 40897443 189920699 594988759 460513580 237605382 613669243 227450424 541826220 809546062 155257129 119381939 329518808 534440481 924837552 378952013 901650440 346673161 440973087 633197836 822525326 236210738 305449489 263793845 887191285 560551987 680159102 713722259 17079282 462373868 447799005 669095669 122099437 608889435 681819259 435028876 755459691 720845102 50164443 24496845 578680196 876073931 937691330 884008908 814525578 443706322 581296500 770684578 308062884 948461089 741045131 568207269 954022060 52826451 671721237 285903525 41087133 106788168 636698653 216211743 310294484 290602299 436764923 696674125 453538661 16800179 839490226 708084398 287732042 848243737 287159997 760753834 872973583 79085396 560153228 336260346 868968269 337929488 289472843 902329799 148892271 359349163 39196751 778546895 210995236 74688853 659647448 97066789 976338406 626739018 782076180 304588659 482683372 500429349 5783958 713843858 943090465 902538881 59836707 368339683 164334026 646046595 388140487 586215492 242271736 100877018 364476078 63983654 907056541 748077476 445691529 772091422 355186431 676298725 895874497 331681972 415155487 877700978 891086130 308958834 300170915 15862560 812152517 263859860 301227268 754673711 591005098 584694036 391080839 951200133 244120592 287918560 566232521 423774297 14661086 762647459 499864548 529918133 30624849 64239725 680425998 236438989 801539617 808644064 244980018 937154253 849540068 193541922 863961573 606908036 751656140 890664837 194589847 649692711 949724624 790457973 130971504 67318548 703735679 42777524 500982932 866591009 672794610 640149502 916483605 306912743 704890627 60484290 228795279 119507902 369746140 230145277 82638894 437712526 144761345 289876733 918589079 206772573 413959029 268492912 306345605 369725694 142303524 3158713 139685541 51155243 906808802 425005004 393437807 60562379 225588867 627354176 902969839 299837373 442997987 512740238 514131905 142435197 294057886 145566122 590575498 877824497 940644685 337773842 456032799 442589266 920268442 741420382 69080835 283606081 688864326 174273816 806358682 814794724 21437320 263073413 522214071 860077078 281635273 127781205 684063550 961025576 582302411 178160434 874777348 701046689 721294788 164277099 237177738 935184586 902389393 415757943 230465074 989502067 166185270 89316964 589656849 497601601 342310404 852504075 729092150 145867582 535512311 504169892 734231997 237851526 673000335 368260926 894346077 547286083 509207882 184015774 144429431 840893163 270999418 895607002 740888749 468868144 608031170 440855157 578366497 212512366 695263052 643841871 733484355 188672459 672412996 869606559 789123822 36525123 310293503 377919222 517805282 310185637 777554419 142088901 556302424 195389473 484758485 907318580 217865001 637246530 205513476 397982902 356829496 666058915 636406747 553706347 474545546 411550977 783788537 647838106 509810487 944908231 539924560 839187842 700442652 149808987 263508811 948998298 198555081 602415986 741706212 478755491 956819788 449476899 279609663 918948224 131109103 998291819 658636130 271158940 912105357 872685702 462819433 165176648 784518363 470755903 129505827 880795587 180708080 571743510 54661208 392227827 777583970 849319022 375958104 523919690 866934412 262883397 805792134 269286650 826189810 610713922 323218214 423980815 984449579 273383196 652921332 846006328 644894152 406045142 118651954 429508626 692392478 427767512 99546757 540344688 106140657 466206660 746732366 909905768 651440316 102960866 601478384 426279331 192556476 668416619 274801913 23334755 768276776 539392403 955978001 993111169 359195120 429265685 99769935 245840840 574833414 819997784 870865184 598397726 119548049 755389141 874758422 427610939 259145166 754241333 406078099 436525081 305407716 55069846 208727622 804284541 908374252 417582895 476616709 61600802 521256771 500279659 838013021 770537256 445599757 176217719 913070551 513193981 969305063 409192981 894484094 276017581 403550831 148496287 491830713 921431881 907469340 385300387 162869168 461912203 923955151 53261071 776082976 863593575 447927644 17341807 162963286 543790218 865587085 665316290 268075042 123848489 67705629 465316664 67981444 524534732 708314130 888360550 605019752 340999114 51357021 926850307 33277996 651887853 779432483 97088436 852805361 694597056 995576483 713873894 148672389 249342510 535962875 137266529 20750037 376738157 368877722 935907255 342987243 884367140 146404080 830937067 405070891 255823637 193923544 369176354 290318656 240158397 442719665 382150413 851906264 592365440 114718184 454569705 811454237 265675051 396344525 405541320 597753526 103267054 572042826 845955994 85273794 367142019 192992084 398229317 530171540 262482812 786580201 304560943 700547041 590959888 210144262 95284110 779483749 249477685 952289380 117133148 82711134 113739004 286454183 253659911 513197700 376444866 940432931 119370647 670587273 680106701 781339529 767879464 975579203 682440820 337629138 468497536 218457442 278296605 591621876 405767581 73965927 619669792 905040602 180591465 335693392 372230275 246104791 304696904 830195421 925459841 947273718 315972216 311116156 215312499 189562109 66195047 176190291 385366287 299543890 551418776 346880382 287074934 350713479 315455578 2331546 50974058 337833315 77662778 659680580 598593523 833243184 312744750 136369430 247679751 125910401 707771226 265832700 444433572 742818193 787618114 545703661 208059426 136503123 755333082 546205923 821394540 905129410 274800720 922572470 261811857 160642948 380590698 432674249 564021847 600374 288139779 592260476 86152478 639735798 72120046 865558099 72824541 270301679 19108433 982147851 255646706 855162911 413701952 475392751 595247770 504324416 929675861 656471906 827102291 857407228 874263046 829820899 21039338 572837752 752693409 690660734 854817744 920345383 626589009 853296187 416666930 540010561 796513334 25569212 468369684 543634580 798209502 391249521 360446977 984831530 292821480 632508085 831369667 157811310 325917561 933261540 878635470 953551916 791182231 396518321 485325444 135048083 478128073 384270937 92820492 962993924 67355896 602442932 236252280 617283936 576561985 413786657 111494105 887973800 597205759 776957467 433928756 904031495 152923912 954785595 765733058 704496299 931400138 460993936 100470898 513072797 823375260 520711123 819392178 382008373 816744377 805637703 303709590 990242639 811157444 949118189 78935914 174909341 902117621 185590798 203158697 729183468 21943427 272621037 389450776 601460151 45664234 419921845 842832662 621795234 129582475 911729357 673760630 203387989 314613987 824566359 659699277 249745138 484290024 250977463 366494060 886527428 865297764 997511145 897807980 102781341 845881272 322504157 604764953 480721011 988585496 393994750 416723454 909431923 6418229 477465746 973894254 237055034 482080890 782230957 33899172 279950486 289424767 544000420 148229428 696649729 215778863 503064172 803758093 230978498 896196869 877009903 755426512 840108348 268960387 85808280 385532941 246606269 708635632 499685785 248737610 713240022 161029698 551633132 496782112 817113594 294773137 457430249 696898512 292824480 537811059 909727084 958258414 403838495 321473730 908164088 361255061 820246378 537931301 124684217 44793217 882254845 38580675 863071000 471626180 759583569 70281482 748954421 682191252 323803162 716966544 957654430 924575163 766241530 472601088 392665965 584778124 116400905 739568634 561972174 475418797 191223542 67601743 126168695 614557259 584393470 121834867 699576778 339621222 784644723 698645114 468585802 599081080 497976752 982759041 759871525 874793100 142350314 770269701 427927101 289034853 468478850 354035008 853174777 83477124 281940232 441163632 396595699 558111691 314516364 957757690 909178421 191617388 551065028 187806403 108533872 49442507 864634089 454128277 140078848 23540863 187325798 417958202 260182163 616119453 843746365 960832106 700800968 614834065 470829457 605755004 560243916 221217239 618043690 177078462 456200687 826036127 898615698 939739367 602282455 47632621 768839437 599249129 523948417 76809162 218145652 209771099 489827074 908551679 387656658 606016349 518318566 10982605 570491027 639671673 428449076 249418515 610656273 523260236 35743493 6610301 622598392 253644180 305423132 270877409 670217543 178420911 816857598 142376422 847992305 688007741 294892827 726466136 38346980 703303858 150457056 123680337 662156375 97034795 409014748 684298913 125983067 146849953 723518528 364467596 326798097 190573666 540949426 445901034 628794241 626735120 4110094 388940286 265340673 596622868 633214551 159531840 609839840 912312229 53362574 964228990 888430879 299121592 477366145 93789328 779736641 237322268 208163746 966708960 466687958 296198925 424347135 860941450 258929755 738363 656704360 401432040 926041493 6606233 858947555 412442474 14554073 894657139 487203136 427020083 705759366 941639251 632858390 357000959 5512148 67054247 937926366 665201124 300307164 183856690 232967814 897253408 837269414 424781975 374830470 19790565 242946228 535303320 175770806 68728729 29156878 566807575 769972090 870152930 317509090 460345947 986675714 25247147 900009722 143267230 878995307 233752826 267377771 816523975 378075402 814130623 638652020 735601349 444050017 270606747 520852679 736496509 386470819 509289118 136718519 620969353 712137140 40446558 185612382 512700814 185091461 326877096 271656063 749195465 702843766 353032197 892220876 680986843 400228836 272214412 345523206 230239346 829261509 962780396 675627013 911095730 833977780 922892067 921074967 95829066 815972441 74883066 902860835 913066433 326289011 779912725 994217910 893595849 535180860 162284547 836170776 576649638 138155653 109068561 259083590 364611639 294579282 640351209 643610046 423794167 218957554 648762420 959695480 261553071 390191464 979619363 63768849 332100192 930212776 779153084 372684253 796771255 741909282 955680013 897437128 955609468 9415241 59818589 164612856 7533070 57316676 978944134 10053927 570138328 121833864 407179351 915584040 859957333 992471286 41497127 126178117 706516195 247047390 41710556 766565228 58186516 615765466 372798771 47509287 709648637 267315064 661315342 757064910 351796258 950501323 803480645 536639012 438842272 19698294 457382118 393975234 143878821 806103722 372097636 841795168 849509997 222746019 812677689 182321576 810024057 314182568 920186427 295437948 637034906 789458482 714991937 866678482 305854023 830353613 698280764 239355930 974632247 687230625 523778896 237681284 568285965 539051833 99822024 24243041 488031725 533838137 357155940 949887611 157779135 788030378 202944743 211880175 900249701 904059177 222288994 252450438 736692707 369438158 915528371 448340164 107244445 820382999 649105795 300197379 364051463 407558739 553983553 55706956 682887477 912444436 362195900 809873842 689079406 361680329 485013152 391579742 378918427 415243219 13628269 562403304 729195307 208890284 63796332 856928653 203933663 61258717 661173335 883390001 844468730 862036724 938708682 519377652 606891902 63111787 705963012 893886172 413563795 518183901 478883378 160529010 859375250 242799799 533804115 300009009 551842040 122178466 168651117 146239884 174185436 333528862 715233086 996614570 997795142 954143165 870529939 276443455 919635026 644174197 898493419 555016649 753484043 298229979 866871206 907466491 497268539 222280982 615682630 243481795 187149204 955664567 472614541 623991754 430903408 11980508 544534738 505386289 299494931 638011264 277062597 837026979 457676549 734556598 905487834 298557342 195289101 779571582 262796171 963818627 319090367 281450192 845509560 487726205 463134971 364106865 293761339 196351470 318928418 874308849 216839373 929550037 161306898 836855844 862451320 913641252 717204366 388493746 230064970 806743679 951981116 101951692 458851665 281903861 490243690 337659783 720502471 544489099 829085353 663477426 407092783 970905686 687578898 689427572 938962677 833119004 536117903 993552731 617430867 39294022 545961418 174940598 250060628 940435290 814383063 312661451 652148227 507580879 128508432 974093429 821042469 960665125 568039233 418915921 723007146 871831166 138303592 394476656 996494716 671829576 865864490 676756467 829382226 500541823 932823067 717739661 872751946 822124469 751945517 624672374 884461756 603058677 720901136 920940553 499496480 537965512 696875291 668847121 146110745 15662140 735634344 2490153 92347028 947505170 583737333 486832150 140298950 887852280 420586149 164332254 397613767 947607770 762876946 715719171 757189577 900021667 263018381 626772427 359249732 504434081 305563759 172734478 362367488 860616154 727728487 56773382 43428406 739252628 310115374 597145574 298221523 34059797 362880091 581090764 989153410 825639814 472826531 850106553 695612705 118768057 899453370 525990611 642123870 892416377 120177695 955678767 664727531 485059473 716494021 798534535 995089665 164672004 67767126 368190770 899015910 195149043 62575516 744587474 367791611 366424930 715829485 969829096 174662723 276580442 310688739 755349209 236063525 326826010 773769418 530349220 788501499 410685986 846167566 31561465 251232583 871734031 187733571 472036558 376178706 227974284 476236850 61363910 87827604 300911275 708949081 33482930 356496329 951117471 658230478 86291957 411857047 689183663 218697400 637466859 464990381 731134591 732860954 113200193 376226499 310605696 830185802 110576365 167947878 666320922 664272454 808809395 885246328 347576003 653177487 628316534 365456434 992675139 491784670 554187058 207276621 433275352 698671423 737213747 320304057 628501840 17866296 585326401 353262136 665183848 328469011 928410497 641753474 946773192 370763032 971049825 946675497 622866260 229893450 198296346 104334697 246411974 597032294 329681983 918529606 959649671 308559360 674595892 674607786 790992482 488881268 288609405 805974105 582590957 591287819 805115696 581407232 431967387 399424163 697231208 560107583 505817442 588359786 269179221 334501444 873787454 699684240 596216266 386753626 158328405 80811038 143452659 864235136 800433446 32072244 985037629 554075002 968106436 149541178 171083638 301281648 546974488 345952673 820644045 775972908 817555626 583763937 56189001 103215019 359733963 494413919 911597129 197409859 798585902 710362617 994849475 786975307 20546226 568626236 542798926 377071620 14242073 1068743 293633092 559123691 255468130 288787409 384437816 286745088 553110748 980046618 808672286 956776922 152168544 298383212 626325445 340045408 302421383 928009020 172853296 7682028 467511259 897758537 216361641 706616772 341007650 199560239 776978358 711018057 295495330 548114074 401078228 10280930 541834814 451762823 522691442 535660497 283825932 71754844 699336980 780956786 151127688 804509170 683922072 808479172 527980946 722820283 748844954 304147695 56759582 826117779 232859602 921151371 796936363 681728614 84043616 145533823 755106979 394436818 238756557 70944441 978849007 269461607 252521444 686317768 713088464 243290759 765177864 981721686 816965012 244725954 169826360 307714754 142790716 946782927 113451524 691727368 433682811 475393754 823786608 598091237 609439852 9864481 18213202 392224900 620874185 349864793 411919663 605480773 349683404 408214722 725244836 77558192 338457618 911143799 53104570 149173978 952181067 398963163 633002185 615860069 148090545 37222902 310637672 260940629 806655718 666817567 322766845 798871366 33800134 692036361 428941588 2979189 895220405 536643851 927289333 498690414 364257565 97616102 295191861 761905938 266607192 294172337 540783716 925132376 331731515 515165361 10012881 434364080 917995841 216342024 191469794 454378489 56742618 858059048 949989655 706030635 797590667 175539472 939769075 121916229 833755142 69816899 819916791 230793258 478769920 759682089 968222758 424713511 588048957 132545769 841004406 214609193 583889686 467037448 736756717 345837801 592109863 883633701 96753424 325357005 220204662 820806816 807579399 392998667 347978340 337442557 522510052 565919610 23840609 395824619 747553114 856315047 155170526 168870125 145502956 231185844 498576360 735897731 480116808 55936127 645253661 228133380 725065840 14587734 466610861 333202606 702525767 915097066 965646211 163060253 973437975 296922844 272316592 723174298 244485948 89017944 648976439 955556223 167247420 941442596 459406798 270939096 814161631 900590606 186511299 519438814 844574038 52082155 59673156 661623115 658672798 596936649 919064682 589624200 528126647 587610402 672391826 256755273 819093499 711165694 255337840 454263022 485601633 137873507 282544940 474243067 639199675 358067858 438716396 984343398 182558507 333746824 701901609 626333962 261928758 782959130 342277479 252712135 431249910 764183765 186731170 972562097 262928172 242651484 114747701 574379507 563823771 998358890 732582626 12052072 333169164 512034064 41429416 540897637 63726096 96626887 35497945 353127677 400336522 563780783 512435132 924658152 714381405 116749711 281339076 352530656 71747922 625717544 414061911 671814183 62062535 570514787 19787373 568670639 296432609 126155705 540099929 716987450 873486774 184999259 212341640 540163490 477232656 983975881 390010085 353106984 596889228 633619201 669799035 328831007 36609260 54790892 947921473 287608748 661604935 761544877 364567544 570322684 111544597 865076535 545515465 433674568 274298793 884834810 919458449 627384971 845822664 319779283 277258760 654854432 293287148 106268816 671935797 633868015 280002277 301121909 739688630 392714487 671333320 829794418 567744827 415734592 982469479 761023269 645126023 301578492 847595376 403251987 866080142 393149955 995613263 119609622 12319234 311079857 861415636 880974621 634085338 572336078 894072216 789611825 726241016 66061189 289347584 262741361 682923014 980823079 334652185 767879798 453905672 772514673 355495605 384103955 397810217 793926553 855287229 821357779 141987492 526227458 652004280 397306803 900020032 297280025 115221896 872759585 350815690 199537855 446157389 223634316 857586905 983438020 751571319 807699814 892035660 465725178 308640803 759479112 968758674 145006209 506067817 223456215 638241649 25334478 605995017 290572640 606660374 942074600 138101322 683148854 946558790 210886724 268431563 812934452 841413374 985586199 833079109 768663393 952766478 637722659 364674076 341063128 589789699 170722334 139926300 52408066 666498775 371418346 211835060 450443928 830387785 745041127 82891337 464035957 840991007 357811902 930991772 127452032 651358530 481924230 210899525 46130466 203547878 792068105 810608894 407332870 840958342 985144035 672830979 161570306 427756244 904543745 571967770 109555146 981261154 244690640 403415863 495315899 167269566 184532924 923788789 588636510 253298211 395769355 40120280 876507835 850492932 365707576 809174400 553758597 110292024 572901315 55720050 934408510 795442652 536638770 952927449 355325355 163808698 541911173 920730534 70572920 251718574 454057406 580655536 650487225 94219401 825586778 638712174 915761241 218221645 420543498 969144118 729709191 743799811 698493247 904665611 968918747 662746374 90095993 284026784 923395848 114034270 36023581 791901719 435572291 583874208 806209351 94847254 429004773 677276799 594647602 403555452 173281095 914344345 30007532 676861429 402440839 460182471 93950166 935751894 594586706 89059468 639807650 327275009 466026473 569155268 754412760 423582238 820620400 580256431 300856556 436060363 483276839 988464666 524788536 330426830 575902576 244877509 372210867 827280900 487508640 781782541 458799189 471661590 759758114 107982890 826367993 733539518 886955306 726509783 764893108 273814062 357898988 39525984 778414245 880459058 277351314 455274271 841695938 835569155 315476184 907779514 746938245 166690727 647703515 331249081 312636695 41339029 891180403 760628386 282334094 824351843 979199572 940009974 287916715 744383176 418956027 170891619 575864442 426799276 107717474 471330519 321616579 736036228 38702240 526484392 734223800 707395736 124849109 774879034 741788566 591614998 434453458 914655812 194351015 563266293 652721968 545867729 231780793 235650989 487016453 510761427 426699321 487914571 912824661 606074875 326348771 149296338 889793653 292669172 291202663 28707964 279092745 868449221 90416904 720955308 842821916 255061121 64049919 661063837 702283626 254084406 1048273 718252672 694028437 294681112 282509900 199580875 374173635 553767791 14515707 504927405 883459286 21332146 119432665 11371529 863208249 566411202 805229225 267823383 404279366 292183895 669954399 141355556 441728719 128004738 614103073 311069467 502870361 863672999 901972453 281437274 298411465 508561835 351506641 978441344 47111633 967966526 144521700 508508907 289153968 433722092 81598039 264136253 859119099 104356237 900575932 495347295 241042378 281851256 294889135 918186344 456892363 555841001 85396769 733700300 692902452 227687462 750013496 405962044 924765235 363060173 182300346 522642565 621365302 312640071 982043151 451660041 585301521 181495092 984400881 792228959 495603994 600765898 241274688 716963572 219651589 686114614 531547180 985290898 409567188 826507833 522031873 599688544 729260427 462833043 402626506 844151758 627840139 338362206 43203857 496896895 262517492 582827308 483486679 159304375 296065490 250291714 748609196 960067861 107100287 591495757 465860121 284198055 126786855 204581166 544762239 495485924 60671393 776607779 720373314 325800786 855435736 243664131 852272071 927735484 815004263 249750047 264633975 867788168 303038503 506261528 311389709 845032932 922441182 868019466 486713886 83557263 947446984 597944000 625389615 764431589 140279846 363878087 175700274 728291305 281498254 9000941 181155743 166584176 852994810 979474636 78907392 251276863 717927438 287240887 909830035 607527037 926816340 737048335 841080464 912028739 472748908 786994451 641818950 632473471 884474437 933445494 622844608 30575881 470085463 396833977 991017135 713424333 538088244 642209005 806712152 194952018 8319934 346954483 874009673 719857504 189405171 487232983 337452208 793737882 991112202 606500966 562472047 436962204 565992206 616704316 910324449 643694527 86172249 93866163 954422174 757223121 120576337 224116258 514580637 170886629 694919757 221218065 226343398 330006286 322888945 107020987 699884336 406542437 193899043 652649320 877164664 348531965 821258009 650707106 240728908 178491728 618017199 666793982 514408440 100611876 556155007 728805358 703624238 969258525 449257094 884749271 661846631 351964378 637815421 952760853 607163150 788702256 981968206 337484818 50028501 605152772 815011013 16914300 291076268 676350277 512166571 736540122 985678874 520599610 241691407 301486706 485794108 132553691 696144693 674916100 239427418 569164284 249140278 129918773 480151807 232980395 22914722 869521003 499559679 423222355 296609489 7438246 283235342 397426206 389200692 287231126 307005451 989345351 576635970 544379095 812892760 20623575 680516149 887671831 341887643 559453755 7129050 187464881 600077846 648155412 207302003 160168139 799305854 633310468 672334468 394274602 668905535 982828156 464713610 663902157 273748411 719211847 177472913 547836468 221008075 913449675 371224024 437125661 519925237 556951581 370273087 141993397 355150385 181787490 544372468 325628150 857947219 979027592 580987839 854442615 457472146 315573898 856611114 761321613 864049306 752243743 538871968 897451544 559116513 871953355 359826049 115204836 597418099 421077805 778625015 67137842 996305679 545637081 148553132 472469080 804501196 133422856 90719251 155161393 248646168 111377976 717766327 904697025 58893041 426138406 662479312 135371827 660966751 654646596 381300753 510104827 924515798 159893669 867983788 664977919 989827788 604704801 903469323 88128782 634502572 240882357 251276155 359206596 719165285 917069954 503127448 243058671 902187940 543256149 871693341 897113267 712150898 999264316 699300684 18670206 468825390 943031026 605781593 804603465 694716845 362040845 130104042 884534865 907522841 964615672 208450790 33664727 343656116 953716979 926111934 602892242 605632167 987726931 623814061 979009067 354053876 644004670 199338967 736463048 67533860 978690672 511158273 920098527 686274612 676656603 845210467 294846416 849261231 571190438 669154293 283417620 535767682 716312302 512446453 84798408 106523399 425601905 365086754 979209550 256584621 909946235 314962711 646236410 692793519 506838662 787034323 873460827 313079438 230270462 893998425 540564002 732209018 91474638 152238050 867122432 624879607 286114720 279153882 42341836 25228636 382630207 899375199 364614247 201285386 69162191 168311182 858047707 353718030 87586313 89258506 251201722 862537781 617222653 110613991 255267625 780530860 331036119 6429922 934508740 604739182 925704863 304802616 646418402 434271036 980934917 937793776 17583786 125986950 365383649 719127433 923250429 500922969 150175409 590600495 773191605 417755378 182541254 823010416 514139878 885829057 118155854 322390739 358127520 282030405 258953429 410207960 19188840 977575999 803390383 272958030 58400976 891548346 134258545 595510791 278187685 256614593 644678250 313071057 558832631 396034126 771741210 810083759 514833089 782484030 478411968 32625539 667392206 423274786 467467684 426268830 818565620 637768202 901616487 93709676 251817964 218683405 96677423 597160236 398796169 767330155 247908829 550045599 549374172 882563928 5682634 790177978 504882454 440202799 502472693 959862097 398985695 194630832 123477985 462854641 328056377 515961587 832323190 27650056 547437329 476972548 385694352 987779053 860961817 864942823 166266772 520005746 844207273 365121068 329068710 621694430 550470501 792256313 990186041 477454606 813073587 517299606 112772353 218483993 963314331 927240246 939468841 53561837 66228138 159449570 99830129 636174417 278324204 60360103 486022619 643990444 993843482 857361410 708288603 690332766 158399786 316856554 152108063 225893974 403446007 840134045 877124683 166937570 103922979 520643045 607824478 741909506 180673343 666317569 891278744 979429413 656457581 6028062 40203570 15678847 519924619 526297146 442407681 364658213 639388141 676561690 41384321 572889102 39333123 48895278 37263635 482618256 829642579 619172637 783589486 326851236 330030947 791943105 408392729 606012486 312836515 316741628 450291212 606241791 892488379 156327243 262905911 203783680 85004336 42254345 188167974 293570305 709309024 238994796 640213907 123786294 111473379 873746021 799114445 698719907 168634948 237716580 617890014 193815381 535108515 662721541 333732265 394566366 855286578 58512751 963847990 278448373 162464795 882526695 968046478 139756955 702613219 396262527 193825405 636937230 104926762 185901736 328702267 894912759 523948098 576075084 621789410 344520444 594265582 930509527 631169501 770103081 3827017 583079768 201549700 949485851 294332863 571402003 812283051 608439185 813964308 973917251 679631754 47622808 607186132 607492589 681343614 233991781 636753859 385161932 319755664 984254003 550218783 189395202 628522209 383788165 351430458 776193698 235142877 595142340 889512659 937496691 253381007 816305613 642711151 581969206 989710350 352394921 391530002 565090490 751243162 884137905 778150993 474755131 439297182 694223590 573917378 359207382 701369375 698408377 423391573 376668206 357718394 978965631 687751035 635017129 252221321 68779053 781261644 883169405 701267007 699108718 660260312 599379399 809544555 821978804 148302686 206782769 407645783 786277803 430044310 257543674 899745841 73684726 802196451 612884450 394790783 991527963 500534203 993842585 444085919 555523222 296473937 435757783 222430948 581552722 777677690 469801485 760373234 256341255 621430206 550619975 429004455 332727768 333942896 158851167 688634425 480138924 689401361 369011659 340701594 629636287 446625112 718787881 179003645 466529004 130697379 736889201 431199422 685985952 741003214 409769215 326437146 300974463 992518802 993071936 557902463 36456300 46594830 314481263 866459948 339198819 456992578 750318839 158310275 490905034 684137868 293437004 156383574 388578477 761277957 773548605 653748662 836227045 250454837 800268090 761451606 54165002 4373477 980935373 912080495 831850521 158181607 241764410 649119344 790946712 465680898 458340593 197279369 889021203 884929865 15052849 680499064 709374907 958788959 661972489 67193782 919187356 97588079 428075349 72342287 794417323 208754585 213927456 580595145 2622062 773797554 828198313 393536756 95985426 496949511 518909259 566117061 618763691 259923019 931748431 417538353 248941937 405037465 693041876 190702470 508656001 604679641 17067426 486626114 162923464 33559277 111677545 251789151 857629954 71532404 274674334 975887752 993998199 251873985 847185181 193294413 709410552 636614429 834056105 178066310 725307305 89542468 405297897 238791157 619055497 975619966 752164037 903374744 105337607 17140034 239696875 902264799 819199466 957655907 323227515 686372282 322064643 944278287 624003264 213348084 222886349 859473374 917696247 602757096 992388887 865340974 353205974 654054944 119094426 986020804 104988215 785025219 881350905 674669330 452748406 85557376 335513415 582564628 511810325 327850530 39776573 416054071 397360212 943446170 219399755 650283946 728380826 409616454 484238913 274021290 204092188 531416187 489877692 57783564 702079315 689552692 117385504 584196025 528375718 937730334 664716945 607102929 20689219 432735254 541098519 876180786 136572586 61278670 942558281 371524193 992880674 888991115 722325742 60908207 528927487 762194005 977781675 769658033 490774813 22841859 537144036 830459990 704431482 209525131 299506227 634390034 537039228 317515656 949907808 971072151 685216437 542249003 224037372 671121 911033261 836541016 33424307 740640582 934809932 162834764 324072674 462781854 95840811 949979203 985140609 910542754 598499289 942551224 505641289 568425967 223746640 131908332 814712786 302029749 23708152 969868629 818954332 578858710 186664417 389484427 995653515 107308257 860137174 726725857 108169414 323832902 108565879 769948822 303981119 867757692 207871123 495878195 406755726 736075616 271739027 379756921 298138930 335299274 988922865 77224810 822247087 623801196 52197342 565744238 932561873 147668110 822537538 288536790 582759812 346651536 604804808 190655036 790842581 678499456 200795965 375385166 819904609 298929624 722875307 900277292 686182048 556940276 634783066 109036753 830257745 666509409 167777803 947739120 136737970 747885240 830654332 535288305 867745974 558954066 126665918 716354806 650124094 890729645 608155101 316753153 903638764 411611621 525254961 765783599 419764438 968429351 365680448 667264008 974295677 463544070 907216923 397827578 635985918 777610130 589195379 219105530 146629304 809785767 463466601 53604431 733684622 777854029 459061386 949526036 77738685 96467791 675955700 236410914 48452469 85393834 398689549 996756638 523285257 431674114 668999989 702345597 337851064 791771486 620120538 231149125 51563140 340596404 244600084 976358167 945565409 93153243 697073507 912261038 339427501 87744316 234489960 132658947 651134119 537372249 23136603 441446179 641957185 638434506 467207557 272864457 360975550 363995654 434374028 228988127 70925687 736573374 584099825 649912831 934176927 89041680 799228419 423800438 292283234 869078764 630072201 735492778 311628036 716279773 504429598 84095744 159571443 313760441 732875151 489033007 356986851 502253253 772227909 59681297 505515267 511395536 182418703 348279408 835368436 678335021 39262588 505865961 832952733 837945226 146687351 920369586 814224556 563538914 933755912 396170775 309854270 396660320 394242884 973250144 117862656 773434244 821609374 412035609 90036509 333055368 790187098 183776461 319989113 91730052 229002632 839544322 536472065 339307915 415471671 949126335 972046157 55206330 719829518 165284725 73523751 616417137 281845698 101977455 129224446 655767359 363654761 153629738 756794284 337289349 196868108 706988363 34948067 856518908 481823843 199020671 790398553 878674215 446076747 905341117 993789049 725564188 385382635 147268046 191201442 594513273 279490215 210493654 621889612 164591574 98772706 16993871 72716153 263311778 423283624 422674039 91313697 298714452 81536803 94067209 583792882 679269799 841899171 162473570 932564148 861616674 784436818 855840741 151792363 261082687 835685736 819177988 434397321 313067568 570057016 821021232 967792037 591229458 182032946 865383779 592716864 949716859 608580445 294544462 965650267 502242744 297691265 660791094 103016883 805439406 850366707 355510635 703733904 199735131 4106169 486648096 688161470 947128965 829541793 919075569 736743623 349166650 54555724 60081423 801199475 837681724 976463938 504933454 564275323 199082657 559224458 454048162 356017119 436588960 14976249 500673747 700079674 537891534 703168234 664649879 640348111 573623444 236495754 913500539 229978595 156590181 316721182 8214871 862351079 682763657 997114520 423653082 590373416 138950877 850070051 309417585 391275551 609252984 758094559 191608464 790756747 442117471 361210887 896995637 68246532 305786832 397793251 927712462 978710684 479778386 639201802 109302575 141429236 551734800 976461118 64623743 686704463 137633730 248137553 936703485 884670741 279439423 693529585 623508810 941075648 485439481 853481138 287971407 353043357 293999282 580652108 572683401 641060002 804858489 559891932 137982002 760650780 81855973 34954500 67584633 156732366 447536937 478761256 361684367 864542443 395701228 337433233 843555367 416507137 177892841 219523903 166848204 459961023 678858975 223319136 443768959 205411063 58771338 424305527 475452640 447028295 231510970 433067381 725870685 568273744 874617409 568188872 143981959 19109662 620473883 731230418 563088735 407148448 807372443 374021170 97582286 631527161 283235751 341769710 347980510 188300560 976182214 50937180 692756429 223939040 776578221 708298636 889645425 224944856 577587677 798247595 777363499 384402206 200986949 36734505 678503229 906692506 230109486 416819850 735138025 262577947 149109340 614433069 222165292 783485796 731385384 426000561 149568057 134275941 853359154 774991217 834701939 417666773 120992057 638100722 778129531 375734608 142010738 170944569 250539970 826959941 54414081 658942858 447204446 343924711 5205244 774981482 211141913 410957594 723574058 186302413 149785252 214488323 754671007 725794949 469713295 440916802 357438003 966982103 139473585 41716594 138128429 72600297 997271864 396445977 22567273 725731255 428219784 522814049 749808565 990479664 162011390 456160377 926396855 721512594 778872225 375753587 75565946 932068573 345576008 623317243 721359910 786571748 974311601 230298900 706537908 792928416 875818416 273203162 255297628 295330584 793958106 830158933 918998736 173328497 647713189 274418284 79283502 921652730 980183371 765487960 492052831 496225158 629141291 297821724 17504649 116178772 581054156 555624574 80018624 491874683 660702561 219154857 824627093 459212089 85953352 146988577 858778501 506108043 861463775 819584074 579167530 307741976 141730774 88171973 488543432 210980251 477091176 173243989 25466302 791631860 486820571 478265810 837661626 656949880 738666713 767884132 553145592 267713743 706979809 508629917 402816000 180191503 55337627 964576448 462209933 381007953 142777232 385287311 755334631 723351647 316655317 907304679 267397831 585724122 726937711 743314262 104349347 65494643 870599934 54419803 331851850 474409330 772251760 678064932 39858334 773198678 853846007 63187216 432231128 4562601 185716647 391718644 774906997 795840136 808987176 902263703 874532213 924913434 711181899 796836403 730015982 69806098 466691633 768498122 865153276 70100179 131251514 231560126 850900288 49645137 27841120 76351144 776923517 338226146 945656666 4520698 14201658 689004728 262215218 30941321 159612616 594475074 361073339 686587505 958158463 940341900 598545286 911454246 776225981 250404050 922142890 264824545 964151634 996235318 867798441 697969890 805925510 622859377 91008337 895208681 901765818 628922356 631539136 795925047 746702618 800522217 128815604 21977992 411873784 315360142 256086973 65200603 389870671 431848224 861357940 69337620 442278959 846651670 384061496 973561984 692633606 561003076 128441213 263111544 537144833 980181547 65873671 424342825 827872515 198307635 89295337 176229658 112136821 811855477 303155196 814548085 563324315 332715253 461439176 782602366 510266036 980264812 149669994 709559213 916855604 292343412 563111860 954162265 256447622 948024403 614597267 834275481 89684259 22774310 451016551 897429099 750624173 681367452 674615288 179107156 996538726 867875129 142462798 768982365 530880304 389518610 828160150 937526541 199005944 184868900 815848785 25794286 794539148 227192599 932918610 409220241 339390587 127089040 90821488 116555563 535228442 740557258 453408581 685264729 214300780 718041367 986299525 917379214 842475915 163573810 787638289 349428819 640358551 586591098 635919731 166908513 400740118 470694108 962203154 505544076 348308503 634286456 858886063 920207204 721731005 976886199 34073435 210554327 754442969 125163870 182373846 652271906 809454620 51082447 436784022 512136638 405377411 981489411 980675360 337648361 846521694 448788734 667239154 5279120 180159482 692373688 811173775 665406102 147915695 180671506 874976399 264440337 572711419 754449829 311147111 344748119 69009879 740883166 397005290 695550250 361075915 446717252 554371507 328191866 3665636 921346741 482499985 5379784 362477729 849061079 783106615 8850935 232768563 96706550 725875494 928510482 562783509 607599546 652998710 328253018 570558556 971079215 671224343 660195238 662719056 696775201 288487712 84831557 466527416 325140774 229329766 641393750 755431623 754722257 1067988 27624479 860733781 312730975 407863494 142495415 311033282 412555138 293276708 536792989 570632157 121850627 959379041 818859852 738352806 919460377 337737516 847409945 408416783 308792280 413104257 49800068 565734224 885345344 259328537 870907199 284381147 679275608 428834764 409113246 435149833 420597665 11988019 622637796 53313914 612096779 268739117 978146681 337662235 477640507 280064331 342577328 552016109 340481582 560091923 686685750 74431771 230029736 50482363 53707440 832944592 484041047 169261477 332632428 752815169 451979353 196851897 763569277 811556894 388915303 796060980 287300868 874544308 43627190 671115797 412925770 4455752 499112102 104455063 884444352 537981601 572966202 715812115 693204660 600277031 594612918 34111185 434149667 135432744 295427988 118452502 452053337 810893222 73682320 770726378 70588575 901420519 774676576 873422009 675192074 458914162 706813570 789309732 288284808 217930787 663165524 383331938 471539242 328346828 469090118 83267181 473587504 776977233 109987781 617005105 275381736 991711717 828235061 475095866 637429188 604695939 257613335 118070361 53087340 762239220 912956120 384078779 714121894 442196988 702843370 602619260 337845880 253516824 621808452 814847906 829625647 559583364 184034346 775736971 6120794 940415233 16066952 559681588 881207507 873302888 109779234 54833993 651865931 759992836 841483221 415092803 826929927 412018932 484791439 712245999 446404165 709118974 212449427 170072883 888297227 935756357 934065107 954451884 907418622 161051579 826231177 445847747 873528943 883307302 768565956 406817168 733654128 725560270 862875259 386210940 229697721 112784033 504246923 930276927 654627698 861268905 406610139 546192660 345330953 289378378 339874408 227271479 315361067 173624086 379162793 170530908 375321561 301592458 187351812 196400283 276725370 867987526 173379522 819451446 157284449 213927072 822269019 786558620 747429285 975895756 596932589 247593479 689870823 755299217 41115270 436760063 505504245 768695457 894306637 63566058 121545632 542429897 563199603 719514766 849413291 334091810 445068539 496905018 129828707 122292226 252871558 841063210 135299266 210907390 879477664 935704120 311716537 576224034 559945028 821913963 761469982 306153757 555078146 366284503 555675871 942815909 769690710 407976264 469170048 106131941 313821313 441870807 591402115 912899021 397362959 209074018 853120226 219380989 648135142 144444997 8481900 712467842 453279249 492823216 529721462 203503976 774309661 29622040 820377274 208953419 585477380 588190540 878722754 176108850 882395061 408488018 462257477 774288047 318305801 928864752 491443602 102241243 632651765 587944310 65740127 483628883 137456981 2205368 576062718 799110509 831250666 997552286 308576130 588901203 507328984 14565383 76057707 629333808 674440565 226481736 176097484 685791134 532561506 295950657 429455242 428711119 316567274 975231445 879655550 704318334 432288093 343996799 325028839 888653435 748667388 31046697 853145161 404447206 538105923 850424759 299734644 733018375 981638305 5423498 268627164 550113724 48637917 663735471 927072021 436020076 491659044 191673216 80480420 765059467 316706564 682276423 41589333 677087666 236278644 809834013 471987467 304363791 299034196 244404905 115786433 438657755 29206964 832955298 334420031 894127318 116148497 431124065 322653705 357004041 842586232 635523330 957434627 329324601 391666852 338926433 453236377 94893554 235795872 115482647 447832362 898450817 414263656 963229156 768066897 794044464 568139441 339706162 85979185 712233911 477423178 955092180 986100902 187309182 500695520 580406693 847512265 97058688 398321471 959077942 95692381 616671634 921244620 565744659 48756833 577697404 165111941 502079660 178767001 820707564 572995568 316864648 563576750 332708313 418219851 17658310 272878531 308596913 252316392 996298978 163256037 366386374 151991437 279378773 999208057 610145833 214030915 120931766 54077832 72011514 352103508 620865209 433047637 422921858 63644430 496474970 784210277 912981934 989613057 419346107 551095007 314490473 78328559 720229775 607983014 250654426 613278617 450899000 546526247 565930138 762118347 429319997 648996851 283756 880597763 503854299 886089453 92838392 22556703 95173675 771127621 696831593 785807526 779100168 238546055 807518886 87254889 140602643 377590498 416457250 169322547 621987310 739904082 764899046 992214592 905949862 741925967 40067981 459591049 565771234 438269858 395794816 457344043 895652367 372036162 323048687 977059903 243973488 801143551 334146523 570682896 257006473 906479789 718731536 327822255 977582151 869489321 546312653 5983274 748063386 866824339 966107398 361477931 864841106 739631508 764376128 747696633 270031121 769071450 706936810 534506650 661229166 942086516 925304373 612094051 423518962 865876705 241884036 837454042 631488116 875499018 155368753 689887131 440358670 406112078 582150944 749219991 278592248 556303755 691031668 831934830 849909372 131442718 877662115 395396359 527160404 636870496 652391625 788557523 946910284 45771214 341571567 595021583 75859807 337051749 501389411 935246789 278788171 505376423 12227778 726685048 980522787 674890930 403448755 805176589 531779540 115979919 270798322 578304003 417266924 789806648 602765386 695848250 811541083 72761520 155219769 546311321 454201974 106498607 772319989 444909942 696524578 52981980 680436165 690729055 321596776 157035962 785338296 892083306 811968720 118633902 756628174 354756924 197494853 740807085 990678396 669379734 37618366 713496068 718112708 872262912 419515097 535036681 366395684 562325564 993394690 117579234 299449173 1745170 817405351 583820197 761919982 840213918 572180785 210888464 896128021 763717914 683876625 166659519 128471555 610406690 226366105 299535934 266586853 572710049 19978346 702377402 118992453 546002169 856598524 982417895 495439900 394017986 451302776 632562688 641124053 621730740 987585030 966654678 208511097 274974516 955819808 827845852 62255622 433112845 532428979 637623397 137722138 137973616 727473312 206096283 879936136 773152458 657132556 840283030 513506156 257893237 401214305 495213190 825084956 979104183 557936211 761947888 483655744 677946130 335146576 909825004 346323712 445791602 979568189 531203600 552512525 123180724 531558534 483619526 226839222 62113619 385924666 292323972 619869712 770982840 959039440 118593254 868897137 490429090 430092884 549357104 441680315 979728919 308944425 979732025 43847588 369239372 458866223 263059443 733443751 270494950 999122608 392860348 18884514 836982595 851388517 243721123 644783673 65147484 242961073 64597466 552830561 937049685 403323991 692012858 479985590 979193378 824277677 776213695 140177146 710630846 181466084 21146171 324534263 252972036 28558905 690052378 305381477 38143484 300797553 554442445 593945963 308487967 561706043 844246204 362015390 476006273 266064003 200026964 759633635 232284571 199113946 730247743 560244667 961792103 241565352 492007606 413144242 314599949 522292183 778567509 422528012 795087840 172394700 727667376 612836382 738482978 517833142 381941025 265864889 566934170 684736190 222400495 607263816 725244213 507661138 575627055 921221170 771644976 522598631 989850872 424314926 388692922 861390904 467998752 250435822 816199615 974870324 970148016 994852204 129201025 338335414 861645454 534517229 578613720 237819308 84520210 80318773 484686672 153866265 250663774 999600012 141116449 271683911 288502981 966134147 965993550 375307043 391833818 480861154 272093927 506811602 448585962 250165081 799602988 315124565 264795969 621787667 716997827 427402432 751558519 839349770 193726809 820978535 724074110 204668916 83257442 290927367 160701396 993584286 718769722 550235995 58786587 117787763 865328908 823338957 622002094 613696988 855448403 488255599 826407839 20987130 869431701 269464257 523287214 663313887 652011548 270840019 911546899 698573571 979799355 676915720 955579310 285967493 335667859 794620120 430075803 823786072 263489626 992634768 343919813 806587550 540418094 769471895 781424219 759663630 471253405 23477573 79912713 912367265 205693171 74997307 746494923 420642160 505300244 628382960 229763666 294134456 399723380 661290008 937160291 326812610 184202911 302513021 27969400 568798190 554524631 617552487 342083036 398155136 329691201 239618599 876696227 274666826 355470249 333285149 25981621 751800948 958995216 960387440 53983498 210500643 705591622 832611813 546658263 670745929 674941203 173059254 322623196 475672932 337248119 856662958 963228918 886676296 372868945 751092061 132539040 570316077 764934883 642023125 573828490 247982323 864681963 800351344 853709975 102139236 98241328 777272061 885622159 386372643 538013467 176107402 855680379 517608896 726024038 625984296 351885108 20700402 537300816 39400952 918767008 596252815 439270576 131176196 205613936 95803586 862703047 411906059 501434901 586383572 852539172 972376936 741756782 723828278 709544749 95183836 360549203 968482361 608660531 910696634 378140145 926806734 822155604 546447201 910973966 98688223 489680985 978218725 290604002 604096908 787465303 443230779 931281743 546207103 458540957 847670121 49436021 569063981 451407604 24114652 673698256 369244690 787783793 2931529 338962411 634938852 113659641 624871716 381507020 609231256 278259384 192062185 534106583 84145698 675338625 550036474 741612992 811013161 674709060 284706679 274136127 774567099 920640598 27497334 242440630 324882948 730673001 678756252 166006740 21432223 710003032 670798677 434713246 872239447 936522630 994551127 883601068 562935759 175934627 432279485 316246104 677020528 687113034 939731360 104982715 349343884 480285257 823333055 207922297 336466286 735521900 275835978 144619689 90888860 753193166 4268596 324899548 446262755 781890120 965224269 466585144 891295736 722054964 973814935 4030207 805206453 273728513 8362297 731177596 447421016 755765592 364314247 644576188 769607760 468060123 405715362 321522306 460076424 495732240 506819459 433583466 61583022 60880298 825201979 187409458 530235922 559020203 662181099 398953220 668650613 467250536 803390014 498920023 945144011 779431951 737139840 780273047 467136546 773148052 398485085 866829559 512982541 685918025 689945001 191249754 385089711 681848166 525748075 431771498 912240653 38213801 50005424 815879157 104938436 32742474 742466929 63741557 299824027 939977569 75263363 273309839 914628106 952360679 324778189 22132437 118454700 949041248 830387858 778398773 171545256 294923452 40375040 181606178 188342375 367641375 630593998 476263641 134540182 672210304 695137232 924431392 631535487 981286571 275365331 720131350 270369267 485135302 819336865 962490094 273722389 79182721 828030800 200008955 341173782 931184026 72980037 483042337 187045275 52256691 818771410 707242291 82193515 8151985 111831219 462248728 606047505 167620122 140723666 226714773 177414878 862770437 380912424 293267387 386718938 179087110 88179678 860692395 262350892 338128875 524586025 427768978 686630342 38152314 250889631 286193934 234699123 753794345 888943315 705029910 83760229 360251823 201281940 401108506 690560096 767043258 447168096 486601081 806130522 978790433 964199299 31203869 345723520 683865681 250572539 27801839 197234876 396788130 764363217 362190614 147356902 231871341 363297196 445842788 85260070 63612781 642735288 591194265 189400407 963204018 173983390 830039604 889268865 871058395 511018619 31791400 273291386 126492061 341098187 830781917 770838817 551008951 594217532 858620890 996509488 479741933 754792020 621491521 139509741 915632872 323769980 173849110 480823359 249725488 896373397 463813053 169679374 919944886 183501494 445358964 150768488 786379509 307237442 113814498 269556765 848940691 460033268 45609847 74870769 569143676 504244877 245288329 649728317 15754572 820802281 465422791 707743748 544423852 570925247 316339309 430112937 529920491 512486310 766571288 747507490 58129760 936407696 198062344 830715170 68054529 346739152 939665268 395387298 850023234 633383969 697050364 679067614 170183493 350026696 795484065 549213170 858834400 314281877 681354158 667931381 5050046 846858130 281213085 824720034 115968273 683837089 553272695 299374959 677215166 339359319 519526057 215741149 837280782 810576221 635915668 533211824 770807338 143931412 757271972 488697256 335059483 524418745 77284418 867446643 56092176 761208364 789821599 481649512 933967152 676329734 871500425 202683430 922366591 664004642 914150145 730974870 972474557 748960339 61735262 505175128 998643898 534872598 439877952 150678576 167006603 144137801 496728274 931198379 619280903 662388764 870793377 545534818 517806382 529160242 271136243 398446945 48423632 612608483 860266204 709788244 82954753 914836447 163263607 416826432 922924188 161649998 142545266 279859541 291710330 350839255 615537656 252600973 681676529 26721765 467926709 890584516 723032574 653156122 935599481 658173772 591895150 367673213 907413507 249084509 313075734 700390908 24642439 55338464 173069942 264926638 438459702 88560313 101057092 451451374 159204887 652464101 329551290 641344501 910323255 536048031 17405377 658127024 27570599 128258799 57502970 754094621 889910174 412811993 291354336 278390986 960451409 298279200 338248652 59213847 766788266 191460952 314844341 154583603 654306885 417277330 854947388 656629134 423162297 403051135 539181413 64444222 602112973 533172514 521565301 374568668 382727016 592577741 661240685 775588274 488747697 614859309 529318064 1466113 551728320 765075798 136860360 691298685 872516853 465087723 486970487 826289681 745768845 714741961 736522233 744816901 564505931 336309651 437047547 871063517 923915511 126872697 403725117 334802482 277921048 149160725 772317166 364963132 497227630 407153382 157845846 886412043 393716500 465803056 848441386 898782012 152409988 91172503 66249338 297582855 298183548 101996850 132719866 606620079 475596908 306457152 256267138 681845465 893812357 443328998 955316199 448085881 31031486 384907108 352746364 33146600 737209366 584427892 80270725 661371044 208036013 853071131 440962988 735505364 128432110 896940744 240294858 111795922 30690134 976995501 982146234 789823191 703546537 342643401 777095903 559884992 571855882 573483149 485172935 132395956 516733568 381150642 665565824 640362936 340164236 900308308 699905871 389551124 844656713 214406310 773745150 45625922 943355808 335390251 372759994 532960726 795339430 829063240 636352718 365987732 575463213 778405394 566981055 126043069 202835801 787386777 730124301 718836384 124459773 327773716 893918097 678147860 894954153 226990396 100408987 637548864 992190114 76154953 57920388 563308249 575823052 71402686 271323884 108310917 568379970 431252203 480275355 911335747 235668903 38217497 546136685 732287364 882551752 762234699 722899227 970578925 96031015 110788395 838713 329421704 596621107 793605182 128284171 507837052 256391631 592808811 184623227 20539174 441577536 192135980 402111757 149854469 665923594 578787379 483577383 713217912 118801243 914668593 283294039 560098581 345889096 954157337 655224843 287543872 256634607 960726256 161747993 509508593 686488127 520584197 860835070 910686752 98053631 965907832 53001715 512428752 431821333 130124387 973939474 312712537 134262875 683356528 666342428 925592297 294125704 264648624 242819160 949062869 13384702 881798469 473384324 26374438 597609058 863219512 833746070 927712779 590435940 763874614 697352057 71060561 268025697 193178963 570470914 859628628 297843448 541255817 378451646 802719657 266702375 886461345 482585980 197945622 348212054 637816793 43107818 189566834 891993578 922734390 272230141 419282161 674415724 456146370 136287471 53940219 309469518 840151428 79883580 282482064 373490289 68752749 495655668 661323256 107625431 993185893 67193304 755354849 181647805 521249440 676997115 802976426 745122300 812421002 89396734 929985704 951783347 485289217 245660436 996450424 645996468 758638400 808653465 191620895 715724809 100023110 33816956 143151542 57631451 930493780 741812727 107390634 241875694 976994579 541829921 272395772 180614413 362635931 202594663 351921175 924740235 150320049 922693632 124492057 764067984 65185316 234720318 198525836 204877195 859018902 722772536 892697911 12221672 400271079 765864218 595634689 634447039 989431806 443438886 135025703 561080891 962414952 956253351 219602537 364721853 813682473 182442098 282780874 310896738 831645325 103164636 529597594 169362775 422909902 205013954 365684873 85575755 866533729 857190600 60576031 226356597 863361077 409351964 129026532 914478483 742306007 558897288 782131224 300969744 505249678 943570294 86070127 247558448 769500606 337850802 554712699 660554786 578600767 761937141 574001326 3419093 332475800 821827335 284984381 861223828 702508595 649693272 350229617 507328150 83682930 717466942 242468433 847800929 636390884 590681004 720345280 725658114 923333658 134394307 406871287 110469308 825282808 180060980 48591152 24746737 60818182 144151233 731805573 578710217 403608201 114823436 984029962 27703821 231327733 501773664 388235181 259049246 579335166 695517284 571092577 239578809 111672347 820220711 751000996 744482355 926167870 373208007 434088309 287303048 372569121 654826401 270696219 852752144 142564315 752535254 802437476 900590343 192137226 666774920 844540726 298762254 186522382 227878216 74583143 998775275 888513646 760576764 610664597 275671273 90208606 235298133 702024120 54652137 787721401 274380939 894515805 993924621 471058783 872825918 247736044 33611968 226633032 677796319 124385183 479174328 511933181 163563273 473276082 486853793 927658479 738815896 379501468 204061374 920018827 151495584 864320613 454567274 950902049 890611716 820951480 418853025 230564544 926692075 117667515 24463846 801152202 734167174 657310251 397610915 515010455 246713815 787959219 672002829 182051762 146228630 982688732 966598785 617142707 851825529 620357322 716683875 218810555 549663521 648439952 68813545 198990890 350953775 769892225 885495638 729514202 273098702 82792239 275509357 412198341 99395167 806572939 90219389 362191460 986779648 283519944 584734269 776968454 444333364 404847028 199096011 618664264 817218555 671944252 96424239 698668922 812849802 673680957 845338858 581314781 275035569 667496041 211049616 321535607 421931981 217836986 995973349 220969374 740322996 544705731 537112892 286960995 42800775 913489209 486800666 698172129 585568892 922507247 395514543 157180726 300094487 678030361 66946251 241466238 980516578 862303855 441182952 624562667 796067281 327577381 726131941 724284219 177628700 442498429 639895764 272943794 682778531 67252538 449854057 212178443 820598767 367596144 30543714 793725890 181116065 371374761 445942457 276821943 491110031 586059567 456216475 685118612 987231463 217216668 783690484 975142494 948690333 327800969 41588386 542061323 605535361 555542331 940841506 832070923 406052759 109310484 350101360 61084102 529145778 950955620 868084781 171289739 622409421 377297079 128440647 20278748 233784812 838904121 173336182 589586514 675985037 267390213 421382719 587508895 476149930 162130959 401201150 76834319 63856777 196095266 799801810 616299298 88752895 64543399 496109254 368614615 992078790 228075958 994490155 721763238 161024711 232640213 727816986 469065866 684217326 409537991 936034672 249124820 687904222 163873946 376571130 796673108 813322738 863527050 120800139 720687567 782654678 433670760 665133294 210259691 463763369 316068662 224458271 43594349 207296459 54544792 356046468 567978286 611098752 857941602 63060933 12473910 943185325 45029230 389618781 730386304 704774776 714429634 492149568 234143256 101076312 630953061 849539832 759003700 691838325 45527196 570731623 594617189 576932415 673244177 530419861 106983866 767555062 314624075 686655914 218762953 921430547 905700729 299163369 742332568 651409868 813524341 39379040 282416527 685061988 328058888 152831311 99887240 334882328 606852999 696823955 353531860 994310014 301867651 350761803 71199882 74782101 906807088 788594661 731418408 300512853 858980646 603244445 661421401 346604236 507278776 35539478 597149032 357646412 521603675 559798232 54498648 569141258 820993630 767684434 379437271 328269734 670095579 24822415 649957917 640239617 715425108 628127567 594357856 982889730 286441803 287500183 116966869 635782253 308749353 690271444 418200390 89994781 72347344 246405974 179366330 88053724 60792372 379882763 228319671 604378063 777613550 379631159 12866701 505361601 427264593 925091289 694831795 427623435 216234471 656172283 564448601 850009933 724458645 306716265 593289258 537299579 265378931 458538879 945376564 635774367 879212718 155445343 652868814 479139454 35356672 20260055 896577687 613174181 249258491 467593112 471475997 312474484 292154330 796468375 472782471 837909160 938006444 633269724 735053419 323122538 90665952 654768441 232940387 601514028 353674870 57527860 331315861 250361567 758124546 213741299 963849713 125451184 395497113 129215108 300864650 659442226 219858894 736606388 455441466 568418293 136164536 195790318 136236660 698614006 764229477 395680595 214739103 703480757 808367 690761517 120702292 345691656 114874671 339325254 969892811 579911321 115379988 622730844 967338430 361520415 473213202 749436841 606101191 328843115 187231876 822140332 93354013 444660717 549357298 592657030 146648682 773422945 740463484 951523137 366045936 393794723 149782863 874881562 612799361 149652441 542462541 30655056 39559717 45147214 61311557 810896669 546092933 949513613 998087175 877487987 810586221 344340945 622382754 50245069 949243437 387878957 850349043 970975987 652310245 941092495 591625153 568612873 713081256 460838460 715507093 929275337 768580510 893924956 777335296 827088643 866526881 61384156 504364413 142824215 113431312 81177864 963891413 531829979 842404849 358495297 174083995 692868303 893751710 609178867 887517108 574795131 696667326 200724006 413267464 651836220 778357706 788180735 32826519 425763871 525956145 330129077 690261477 135701419 958035685 387700748 702141386 976942816 274640166 555996098 219175013 225297674 118824505 304005618 135435464 963840786 401370458 356081642 693954616 189588537 414886607 363048571 629354530 614662549 228229195 428125423 140504545 976039616 423708409 978121168 27194871 523999820 882721636 931676180 7576225 964514265 11209716 924350634 161733618 781952333 495073387 770577701 340379357 393179560 838714188 409049829 307266398 699807192 8581866 266357082 986618220 829544422 130301458 618404592 609745723 592518972 851534951 848469493 821036593 150957181 311762339 562947318 235812977 664101291 915710135 215079889 210926581 603814741 476036099 298745305 855433602 854196856 605981167 772741954 816676603 575642416 8546835 667517389 192201757 722214731 658444221 226519999 795780858 113167476 866477208 662082979 77258094 590008082 114214678 659278322 685224792 624279856 207187 557161841 583201189 148018996 867437089 876850353 393965491 191312288 2920797 84312474 39617628 840450400 218999208 170844003 421467020 812292136 389542072 269081678 245784730 537051497 495379591 999283221 218950278 403891028 119702737 721271490 319500218 234117067 437336451 640342402 441041294 739020790 601958302 628791968 748631462 810222904 858954190 42078026 995436606 446952043 748309638 498515356 759509547 673174660 417318681 239346120 555381801 264527457 689495410 491666666 10566663 998683353 809836542 196151430 293383335 419674458 529006845 591746645 479316140 789001116 362233394 295005241 260304673 879636230 257708863 188325971 753911288 995366017 427155856 974108018 816469283 400543399 330384381 677825295 424519588 232270984 162248279 575819568 890782435 926129009 206270883 588380010 53557702 80711120 896698813 6988516 967419239 825656586 116120610 660989827 520447185 633174527 844025400 600924739 342749485 428121581 967018241 50655152 102974284 571156740 920877601 446189645 437024779 732114151 687938153 8102919 510430993 899150276 553073220 838149605 956746977 352035104 252349981 69992942 824025953 181342365 403034491 149374004 249299452 870221409 262986620 893044648 557616751 400539016 195092693 612727186 282984937 293079372 841036015 656042278 923556685 387110532 736034546 931065581 678831549 482084981 352044168 56923783 591358901 458876591 95530098 659206142 273615484 897300420 460940415 35880206 865832749 913906693 173216819 610023112 863144018 250786232 445013163 183450095 845776474 168724120 960002131 563532295 721869979 182278031 206475218 893092641 180516833 54157555 688270098 597189863 906678998 609024967 692452478 7717411 209623850 218154253 8104580 770139363 281026707 582787153 557918339 750087198 449286714 621772801 496142143 62725009 764476542 899513665 445592294 571626443 12724339 752684195 665033749 559353877 130557118 176975469 279076681 527860465 93929880 315323132 333663839 965523371 969677988 46084028 578100150 420792830 261976901 370199870 881412478 559943572 651236853 339643348 49287774 918626489 782429187 373192823 878953327 945877899 502542877 353894653 29120786 727092276 734242599 647675466 338047164 451578996 749159534 548042487 828454338 995731815 351261144 541051874 518159868 47931410 286559489 809657837 924497778 205599203 78208666 141550038 184318224 233270810 22262008 460329589 408980300 680433240 257043671 338559714 869518537 689013792 132397003 609401485 446514560 730680410 643000518 213244553 157823565 557326718 153155633 523433320 584044923 219078988 991569518 980136823 177030551 573279924 183642800 21098636 537995389 87538623 79721744 315617853 174426669 51143804 670438260 660812776 816435583 485482387 535325742 600651660 266385341 848242225 397090349 452854304 44793809 249919772 986294840 662303773 201220133 809521586 942359606 49001768 398430835 745599052 524868062 283101192 509605033 177710259 190099660 81223081 764499774 534953066 671676043 359609899 499259690 303725270 10375447 112994088 578303352 98630901 349981515 34192070 200258045 684391088 731268611 469496097 962679411 10838527 762493085 764675258 513957315 46460042 335449692 163018573 248023770 377574292 882775781 510357662 759020578 866430872 477373703 376371785 58501066 594511430 146926102 608550858 844861070 717955750 874987325 608599477 510714138 428941351 640703999 829922342 239832422 465417797 439231236 325820197 530175133 507922050 890934568 718491184 637612478 123608252 523741433 749412542 462259718 635161431 347389154 162926405 48215854 788921818 947926264 821302182 357720061 595707048 257783151 864498518 644501987 433315502 467097328 453524206 3777616 434133950 349015576 715384008 214469537 493871476 836373880 710241729 380711520 535792801 504792592 650031120 463624611 162976284 25260886 504684439 760370002 965839862 981859051 160604591 145375425 19778659 647553707 207306171 879669578 119558805 464118742 982822512 619193768 33546220 349824020 397231910 561331636 182025146 478769724 83975147 599224791 185391135 777341740 116352920 299733694 349640517 312998480 352400886 590267760 585595908 288301106 718989562 185467454 942098549 903002637 737060820 676215430 953359583 515628747 696859253 612461349 954340113 578899532 617621591 946997583 267014312 708603577 821222088 382205153 852201652 380837203 469741261 742398710 591172205 55314514 74711291 61276881 667625192 345858995 732033881 464853564 609527263 700536001 123182187 807642043 49516393 352972236 461065788 132001044 350480543 807323884 913689808 995053885 725459203 36851673 502528417 221868625 259573237 421755748 487134591 71169342 375393018 526991234 180649818 509586 235210899 874497579 621010316 391388744 213652148 27158463 223235306 397248492 655185824 586120162 228908750 592201845 779735739 124367245 228253103 904736949 8903767 830826647 230801875 970383512 401352383 577885798 404096772 466636644 680055949 525557670 254685425 282143443 417954851 762505586 339680934 439866745 353249901 847136742 554427348 765885792 212835772 841681707 953222533 39674755 569583046 769330436 962202339 119787771 338228607 960428466 932284833 166058242 506106131 441909653 735278027 987126341 229883277 397613842 220059512 828724865 313577582 208800196 699367306 983260789 61459100 240978570 86154596 630080716 67836696 604330806 637453782 114116933 487322341 590892742 311833823 424954777 145028689 141405504 462302368 238211239 297712315 884907177 726884110 190010016 718630894 548706933 894195906 403757347 312978472 182665875 431543552 365760782 606699748 682993361 764421817 48153955 804222457 789350081 423607061 645575814 731140129 383336854 215644314 640410206 174505005 862281991 872494925 764527944 805098082 37631749 202660151 357104591 11764909 479748192 9979216 946859411 409659190 242887192 657520070 682051037 286247940 653536994 831325993 622033358 148708032 328664083 628350331 666492716 493799111 368005226 812097506 927688427 937682166 591727698 394231303 241430837 803658556 86955252 101584741 929460651 367120826 100474793 658389672 24132721 84934561 406778515 417963504 151808626 782817184 284192000 207339122 549782398 866940456 735569454 26181203 567496728 407114615 526487279 609080393 172318957 361463839 106643415 363748658 821717271 649788852 7311888 876230778 613090144 505772303 682290099 890384643 654539486 145259824 832130580 69214007 315307644 44067239 244288556 716631811 357076455 196100730 143363757 332861087 894400301 615456663 957214214 570702974 127885005 121241192 334095324 538947275 154902532 488786487 686118234 430547662 420375980 193321311 22190533 338564377 107981125 375992912 624885505 672316647 65573806 828405951 61931026 873711283 532741714 386380072 586095101 255513313 744272265 843851719 740032614 352278940 579517869 36407872 747612194 121571675 467328404 859066775 739727966 615757129 245942212 443603423 417259341 110648564 567815799 686603555 450238410 806382739 762035374 761349498 489233261 544819572 460406237 123888542 200557792 111447234 257372444 469358246 455785685 44713160 985038405 288880056 766783899 676488974 973183386 64538752 753897859 330810727 717896383 100650561 156131484 995221579 133826747 451430925 984326954 76919755 903769594 79178411 258239770 944493044 771790499 887120200 490921271 42870907 649708798 429343769 957654622 182313817 93010301 122863840 128255807 563409394 370370375 181430584 911821615 685837297 491329263 25839634 248369589 244087519 290100944 189555906 211993078 289368651 384490451 441895923 192119585 137085560 455723286 535200544 264933912 1062843 197809087 889565623 965065939 906844060 227409210 561019918 647300571 956460946 952357117 983985746 490782355 25731627 984467122 266842911 976595676 192031889 760353973 180503337 187696054 28684826 670085923 135867420 887914119 147345386 963482099 123478878 803467759 256209178 837059917 396763599 783866560 556271617 904697366 141190977 778333609 549187670 555955756 757306724 803042212 665445249 42342597 692476109 844035504 839423278 156115717 5136913 219263782 799047631 376379414 540692877 297491424 949981783 289562663 774731343 637803521 920782779 843944441 459545367 10958195 824640193 717753297 844751475 997143941 413914443 887324516 81929827 908191389 537886377 511630578 61373118 774441660 252195244 145516151 624486246 72807135 440682422 62096284 643932468 890192847 146101744 997803638 669489435 37749408 217973914 763189880 286831203 619759856 29882622 367547623 854342441 117625248 946297844 835103703 454181553 358187437 38142839 160418151 970480690 865373193 778114024 340141350 216497455 707722727 79279757 295611793 534408967 284732068 150082200 599409670 478613608 78288920 180947310 957577059 767391808 216432669 180706542 912790440 552455037 71967311 908703196 711090233 249113005 328981425 126136724 3713883 430423943 320927477 714429907 531731012 85946756 348278324 381237300 218220359 252032949 661062160 120748404 229411161 262431647 755732385 316426196 806219721 337078749 657902229 100525431 147645575 610827965 574374831 411540335 719937157 54772715 18796967 279124977 95726771 640132760 724371793 104003763 325975365 251432935 985339748 455396216 654734892 280919647 731736458 31028944 198853775 411104383 226756244 393468421 459651443 852561066 822192163 385604150 163494602 785295373 773580878 74840734 571199930 352553094 390362432 743207040 555187738 431433935 452021455 934962586 537814783 525427837 129695107 276411177 692475593 824782420 762713729 19291390 851636131 267012370 775298956 199042197 425035679 585704339 162581127 904064236 327083759 77766507 154811782 561582813 734380063 25165937 423343677 277294557 489748427 63754051 64307084 290134759 88983051 480941434 268952645 20259409 297478829 937725310 241859983 278792394 846019884 805260602 820835249 814782387 112249214 41334143 257861041 985652768 351475490 101379324 811706414 576490847 505546097 873648526 486171449 115981630 772275658 38872621 435671047 664937727 972097673 707445164 516651460 941714361 666108521 852595808 152479223 77708641 171714267 187967210 654592815 730726300 645389493 886066525 761891652 792668538 509889661 231963547 222203002 980785125 748736361 16826508 235837351 641323844 216349309 208203690 638184644 306537477 983243846 712843947 296224585 580295452 339010966 30401851 432306145 969505928 664900128 285768781 33303778 329003617 798592127 359315324 699477251 720915601 486763808 274409733 71430155 155719278 581118898 773100993 601151448 72192611 99525672 322743858 208864522 334471308 753840853 822452595 648263146 133504390 438416234 918704774 886507822 938120796 121210023 346194261 673637684 647510319 733930065 725046543 66562131 148875562 302450942 727175425 137160581 27557323 28378562 953551364 256161881 981105247 312630475 303949950 955323534 999199388 445956490 483622715 476052883 331546553 866717333 30194663 922390658 528001517 350157081 597045493 530593281 897214894 708085750 545599066 478566349 583037461 61634334 300028834 226237721 146321934 172200481 787225859 321287733 771642529 712799230 567380993 75885989 882755592 638536898 160624776 187118179 29049165 991599291 590120508 259891828 752711400 668893539 258846160 443121227 157095378 915563244 672630278 78599824 684111869 767193997 238579770 647453979 295935916 717931094 719509319 917612094 48646680 323956203 259464440 21513294 822231957 428437404 102472299 684600876 169267993 527110051 368485586 815006618 542262669 99806706 7386590 218730349 326332078 62586083 312866271 605698147 884290680 125586223 329217858 912603577 415985365 705963805 239929085 863907064 520103592 319713218 690596865 320310861 680049150 269091164 657149167 843830753 670536480 730386107 206575200 215178982 367887286 734981593 872741865 964091748 705059869 407582227 79506461 458567979 402526707 21829334 360316434 259386580 461466089 774519776 716017996 174579206 755713815 359265280 945751956 628862941 753085704 137020280 327620536 221236218 382480344 676746656 808167818 111965268 521620502 599628787 882995243 219264519 610208132 507828098 722376196 122841578 117409467 254817104 915222192 668270185 713272846 965232910 286497142 988771813 508588684 458214723 362957126 759553680 819591627 906447770 76945665 292992712 199714895 750408344 361215008 428614502 607057400 978628230 263369594 909056834 753331648 124846366 673568066 371477172 192807388 246497278 526724831 345088016 627548013 736097093 136598316 327998580 280987597 289345251 680727542 336481701 920888421 941856961 83371902 940960591 418873369 186909380 677112940 19645215 139800737 350397731 936732044 202662927 551390851 915918553 328070464 298104932 367507548 425448187 211713471 170100602 51423386 478791946 874481940 929983886 215016947 539536379 644526089 6457545 369132670 281427166 214502396 151364543 156545433 279695215 940302404 751761820 225820096 498313749 554625947 379543497 129003426 965912808 208991795 848196539 412462608 360534005 459889569 703673459 799142266 7574685 759764730 630493440 425722428 246154339 815004674 110755519 804443774 312602021 540903998 450213420 777678165 125894801 554632400 592394866 421111117 649141257 68606587 905068064 489204464 743516875 544994201 471860610 393903002 928230435 842755506 353129081 879673930 699301180 925872059 200871912 889976522 828978605 448167909 105338531 196872484 794480785 65727425 57197451 199242744 786887452 664107924 312931412 310908926 431694031 571585158 276407881 910213880 663724967 810033512 343518925 410594098 738420338 7322471 365398876 39352049 438079059 365562123 615049740 909448982 994994039 906334284 417476221 356403363 994828612 592768107 517929024 104430479 674146510 30254966 691974803 889536914 246852350 823547086 709940113 354985796 621754741 327769745 364981465 382684719 335506580 925686991 32689273 815899292 362823533 92927483 609319403 547270099 500992613 619731669 749357736 980176154 749476570 158967798 675639605 641617461 215697413 642583423 707701424 150774305 378395785 871824552 603075597 876473111 111840584 811439973 987180747 339096450 542459636 714809823 277568793 398397201 744247988 127284604 170309668 581666205 533868889 377162527 340259432 214121483 863291955 969913553 198570689 905589912 770191297 157943240 696594029 256363826 502743958 967735116 730293128 804085919 120757508 109506552 520278219 39247036 272795154 624901539 72509641 838013479 407693338 102005059 875488297 174886661 968285097 633098098 509815092 772581557 23679378 993439131 690473365 487226407 904445721 795665513 22480313 88617037 308062315 781300675 457739146 31552645 973436508 122871744 643269104 350436097 76672544 955455195 889930071 667361466 785232403 557151569 881985306 382872319 343744188 356374154 374096644 154864911 185485692 587598858 828604087 633662519 70032842 148804509 748163088 103503345 168898865 957355406 116727214 300350738 887056271 896711813 470182643 345210866 389175339 659722937 67155110 260023254 733295695 862281111 999727596 455879972 205431129 368348767 347025919 871818658 916791384 554494055 882309654 838304528 796379937 738002628 389976786 47696825 853197685 110119210 507951737 349116275 30855507 48989203 606514953 135456680 961101876 547774992 964758002 100303 58281807 78670216 71114188 394054395 183518249 888583091 833938232 535160653 577254668 575182105 551820067 809835912 870742645 394489185 298762115 625493104 309743296 288442712 943724884 895885538 995944346 908462795 494528579 696900471 874035187 790472072 57439607 239893902 704909357 113181042 650038779 573483166 800145633 363723417 263070271 383698158 658267318 91533777 205448575 945618253 663425378 934878601 523109302 377358353 993124672 344158154 425725176 805735553 813474758 45851183 42435725 852373838 775412520 730922105 413650514 350107909 795093213 441686233 418321613 551943466 549783330 170017556 584795934 253242853 679133421 310413150 631477644 409496705 93173964 489618618 367640218 756984932 305395097 698000434 302996382 686250187 38824429 467634497 784400234 119444090 328838167 716895924 230829150 22457317 577604244 527941631 283415393 721878315 14174015 490776881 594729495 459541119 884056318 84276972 606381991 107640635 749526491 995229885 975799827 634316103 879354434 269557774 553764445 223734527 59797721 558819388 725340884 708500401 396836046 122477657 117696747 430219194 810100647 779752358 713487851 463000272 765100315 289248231 206264741 865175603 892118434 836124968 553073801 777966946 727822076 313214469 242400246 691050398 121746312 710496158 935490206 923503953 32946790 690586424 59243753 919689919 68350251 922461899 320747532 461441208 395807172 647131172 488543242 479952220 587037109 16279748 616914363 150856562 622204126 839128278 850599848 854021479 762375598 753696022 557102077 536623357 467463766 765542064 734350326 965479770 421790138 613918353 170489129 363521248 999407087 163529745 221799645 736492707 906750786 188933393 324456868 415204672 848935593 604238619 347806346 3208636 947658008 7575010 408266111 148185452 759992468 77187372 979469916 472756790 714166373 637116458 689678121 231148495 659484598 725709291 837911573 976014144 60034987 511700577 932204249 992957276 456164610 448236036 808899371 434941920 416070025 930645950 393198805 739032022 506486488 794601617 113026759 543099755 52233293 991930680 722543721 224830491 29282210 981954074 454152499 860755674 706466932 694331102 693556104 838851320 905331287 464042788 702137617 668352300 4858861 886420293 829098293 157070831 418396903 233531016 38158067 857176161 273507921 911249542 270895446 695009513 735477046 141390326 147309582 376210129 778619966 370392662 502022949 959881698 553842978 224090942 595081702 438405259 473496388 303229396 96200217 858125246 486678305 473359775 112171703 145406351 138452839 353416164 177108660 143684424 882833329 594890720 450415346 388214149 323679040 418098284 500107846 115283212 112551351 931822331 118786573 260914370 378339313 595334389 805011216 936193802 392951384 992942352 361363531 572001704 355853620 859235296 147343404 215585261 866243154 915731774 37143400 177488288 400720577 295601407 434649900 720528147 880088558 964913435 819600402 70281951 191269989 890024698 461584305 691874653 258569687 129855288 681219023 640772703 522530875 373939896 551081776 252572495 915466971 660291686 504006888 984553693 961642429 12764381 699374142 578031034 827826736 3104856 753875144 465037721 151502073 214552420 36671001 136877188 614514329 16829206 898654939 9949360 892613010 368945325 85356593 173535452 255404170 754687753 655899263 679466165 60385802 851146002 102439340 38319517 961274958 524182361 366252145 958711856 211079325 529017479 558573883 82245698 258213603 146901565 445188287 789366188 11544433 420241801 584610045 157800707 243425774 897376234 688563237 334017655 666310689 352416296 29630888 547085854 943955473 364114163 248164411 587847287 558750827 66057412 290066308 29440318 248738005 886598157 912156156 958962019 848936697 170823834 109388707 812958702 919160638 297405335 626456304 700611939 69924566 89887128 946811231 401446792 606323693 384272574 594995835 130460704 939676883 124821313 993493786 206076356 873686157 50053108 327867699 391572994 462669557 308087616 908789335 646240041 23165867 358184060 922473185 163530966 32996254 731497194 371734124 855256207 761884962 414545676 624332677 380505975 255377330 125359467 445618732 652375952 557130323 268108005 365406028 533368752 369902696 290094170 485247938 870327259 664808360 789747444 727021430 718855937 319896825 112157983 350808414 869002760 21357962 186120014 80970621 991816291 932437803 966614242 702166818 166144490 888984889 592788967 64436659 605489975 772941821 16053273 885757558 692706978 712991820 257453696 862609770 663177517 688969897 385072810 26975895 598154430 909067978 182717103 562600822 831225053 754036753 688880178 198832017 105680664 531323727 385724340 13131584 245126722 333653878 260158421 884644128 145503404 368671968 58294908 484313527 464102883 200328186 509529093 157683543 886564446 703949825 65713853 760193950 818093449 405316929 525601152 641647962 824157133 596008767 843601387 393857261 150462071 375798585 451719236 42753245 719388701 249201116 55239708 588043853 225718048 851581510 16109913 342658379 816153204 886711024 968870884 169630896 386281025 642593549 143393050 185286106 317399196 169142966 939840145 766673812 584109383 346591794 385526989 242729842 323603413 475377391 447322059 790462402 905214024 330407315 78524946 572658972 578428318 906360078 210871095 184865266 807003517 780143239 774138558 455984060 532803966 220777961 249142995 438744402 554882910 538063274 184176628 213463650 745155823 992349344 723767859 483617163 75635016 236519957 90516492 404511036 322859313 622624353 439015239 207817591 149559811 850407905 116254337 735285736 781459670 521767056 86533477 308822086 758086824 144763124 63083226 523887053 23349173 653320357 372173065 552522567 409370017 509954778 881998544 581039657 367802168 878689654 453140367 426844075 999516778 14640330 402103864 295138439 865497690 316227301 54386765 179848472 339879981 339697734 751820033 961491631 855312491 737007726 384594352 945566351 229405944 967228633 249813033 583011804 768767740 620711681 308870158 545697352 941103089 459514738 739704216 280339333 505270483 563652439 874042923 728706400 714246250 188209148 123702920 281832731 143160249 971708272 379279264 430712048 946769327 963752718 37648584 381128734 582869573 509234431 82064843 958119217 422905281 739268628 160576192 450359604 502301596 232081003 92079047 41033026 606600642 252435244 971443929 76945001 955998764 281801344 272568284 520328649 937519587 385829012 836252658 118698758 189769829 700199839 30589464 687008533 638681356 132968886 441538813 223880390 133164449 577652675 834072100 293785172 66964173 533844760 795722364 360958271 342219545 848217318 279970901 780839510 815824345 196320223 492813162 901542490 428470344 743258909 453037330 867054003 861648783 296708602 729038840 23612423 433183590 435342317 412318876 85694698 23422432 360728886 875168363 44822892 607171465 75554030 296849466 545414872 897412597 590959008 809173172 662133716 813428499 977104033 280672445 590339914 973247327 19398233 90313865 324760144 211912677 120960909 478292653 333293587 16212852 963981350 517266631 687592651 360529658 218659437 607383925 676790564 763053189 720769815 482196522 291734980 332601415 843562630 33218419 728311650 367784459 97861536 260236821 532055996 495196366 580753193 295531511 282767779 977123354 291610737 729087185 925339886 649009961 133905552 183543294 511733209 871663 664850826 31098112 968755079 547950061 749776150 107936440 853275717 105338382 433047706 167198606 72133059 880712264 210147862 211386328 998652304 996424635 882993184 729473801 370423451 743838460 835510 999772986 971265501 156593160 594070214 272681671 207036569 658466097 346360673 747978464 96164084 951763587 933901612 542322292 805091438 397204183 100212688 122205258 758214829 792504775 65046746 829754996 366193648 893943725 430893118 964316933 207931542 830087137 789975641 104263182 583774761 457637309 654997482 451670790 985143336 843219804 324388642 353544700 455855279 163691839 6477694 985067267 287946508 218751150 22230029 419982358 489046683 892010384 397292258 655892083 308526892 861731974 541131988 226860403 884213260 663535449 955224103 541173575 766060871 801138902 762238181 476230035 295213348 833353754 7171687 444315449 685089057 450282553 896248854 764367031 546361159 848885575 352438484 463261476 543955367 758540130 681112416 87936782 17555388 854068001 975642479 614466832 704966459 325486129 913856512 396240569 590725706 253264497 359391250 442717257 566916009 489386840 200439011 391129167 495477036 224375432 407305729 881537142 380132970 147807359 157187964 170641338 501007975 579220054 498500434 359683776 834982086 906145919 461107804 212409514 355595211 762295217 229495494 975035052 904073542 515606726 148752948 615673330 934211030 803606028 463957027 650197119 717526489 568652505 258620535 82972490 420531054 709004205 805814094 143300434 33859042 144189962 438823341 40044634 505022275 260005009 592868599 743560859 853950925 897350720 466077249 61431790 957047419 116689311 643596091 365071368 475384814 343999315 748642368 645411847 284125478 358741422 695702213 744876825 994677676 363475767 857985733 430472207 24451901 794063215 367873918 823178546 624507686 356442688 887831811 736858296 208291304 638426632 617152539 367600265 326737039 725478995 925508548 803592230 424790911 781246205 176558409 685900410 399786333 446942021 714958589 695206737 74971007 650241719 39729117 171090415 83868119 443034255 111379557 916080588 341055198 962194350 238491366 306799785 79543693 171331620 49430605 413698510 427678065 997699302 234612708 137660000 406055609 542797464 825045729 951229274 117203166 617462403 735326235 451559017 691652587 343251410 267177451 335646529 992254821 15562773 729292332 131459881 623638184 133343136 850032202 633121647 707081130 722176535 253444227 688036192 789382317 451648542 981842523 817650402 126165445 189233151 386464327 848508592 483325541 785997912 17774214 156442676 384270811 456693178 415480799 945436891 672931399 228648563 721655695 824959457 131900287 486201843 673745765 58785474 913086855 66045692 971191186 647189331 926940148 132736690 497971531 152152110 750123882 869495120 580099866 493464602 51285577 557655861 892616473 404733885 854961650 354891483 811341211 445728011 644653014 1073309 797867948 977458565 224462660 571165249 577661814 677249521 972507080 445562938 299102649 909904697 431060828 123051255 764808484 26641665 437425688 477481674 956544986 730687676 960872184 107661016 170398515 968221772 439392519 561303727 364722870 301474738 372421999 431850647 840400019 423048135 107958116 733097289 73976440 539374055 405736785 831928439 121316422 692679104 268580650 485410425 192716540 927270410 534009349 167142007 422982514 855728731 480409710 753313497 394924207 186223394 98046810 857328070 60519856 747294629 255067607 173555123 805943593 606427821 186788678 395192605 876036473 597351567 581491404 948461212 472411565 652735788 562457922 20252093 125767073 861378388 247325615 112409757 183959360 828176882 372522934 687613721 698993624 913480463 431271216 775656255 360595218 446110965 454660079 819673580 198774721 357775469 73731433 682967086 365568430 95161605 741593161 706383302 359957876 346045685 878716743 128916579 399521388 202918114 510180421 747049907 711770677 478539710 460113496 726980745 112038764 855230095 425254825 758194337 559575426 535639789 59259133 392356749 69482609 916589699 674753652 967417801 47285547 798049244 999684210 453957805 182881019 424904870 122706533 901231380 863085337 477137514 168651563 396147487 72767928 50924093 397261126 436188887 417956825 54402529 522762566 374069108 605775439 508866559 679450837 973017533 452531957 738622346 876910198 999111089 2737020 950620299 342490551 117268852 71773218 869339916 266832511 500696361 951691134 200293497 170610690 206321856 744471526 977637727 995387566 282633574 18656117 355296491 521306218 681683637 850647316 825764147 92423702 970539159 443715612 403358317 341194465 228512603 808110904 981619845 191736040 275525771 736310336 30859201 481083603 609953823 744521836 744298602 938204180 953327295 857713006 568347623 712374207 556461750 982678395 310339905 491018711 983647014 656209273 422163363 853383393 407835298 402110595 30930369 200958521 734414342 335395309 968650152 327853333 111645523 795659351 178495406 400041824 762658772 251602571 838095154 472928610 670805440 191205967 343728565 267087875 72568956 624777823 787235528 322365603 683606427 681286805 52465954 713417186 57119854 115118338 8958319 974123359 505235462 845442115 734820640 591996868 262641712 406887333 963785647 975128252 610655638 361846628 411838222 230000960 292571169 888288731 870018040 604446843 281880974 982419672 960451774 785571689 908847709 943412364 98165599 262754944 457941962 625684474 792567418 184629547 310782567 939967222 494059614 555421041 316470661 392965215 409070 545160830 961124461 800292654 522328680 456584105 831076622 261878401 304258613 937225792 945808589 790361762 513022860 150151910 243634782 495211114 271405866 968701918 498263616 716581888 382604481 797619171 509357596 468417187 939277801 855248572 302334477 605352560 683740448 419431559 186674724 346178226 518615614 174950892 801653901 358590695 184015291 65720934 441826617 931281928 719898344 104211480 157359745 286899859 429760327 748411758 487292279 675743625 327912393 272971450 491461911 208821236 962818067 905055814 721870985 849709929 322031880 324562456 766711972 470691416 35402026 900291613 366952169 34358236 415718388 594696434 110603353 840744427 907068590 215864071 887179724 22468532 428037228 543345430 74348412 34063983 107402988 681759547 906953179 607620305 51154559 5632730 16257220 977387317 74123273 619878921 246517914 51280210 329036837 807851410 760741920 792560296 915080157 511653466 772606016 379430334 626569778 267742263 280412053 451457999 46726638 546308483 964814753 529280940 442170276 148640488 454443980 199885819 463840486 312725934 771830790 663616855 755842272 820338531 112158377 770712798 993314981 625030488 145684969 286094502 681901181 589177344 266954694 374102174 157989389 796651555 439973961 760928381 192743728 974085329 137941913 627644520 55643670 793673676 300032184 750695597 703684057 263018604 960306914 678375363 491807249 807971562 833984274 696547921 957692530 459917448 291538028 963988639 576825521 129373381 229934984 469909681 694937406 365703857 527465899 453143085 692421802 283601495 704335509 469495967 842696076 742512378 419629361 103466730 829873113 498581837 694346073 5334215 942462879 37759214 475885714 501027751 93889164 499780531 875891421 584359916 696923017 382785834 412583328 810427766 125224123 635777780 265480823 197132502 838388256 734482260 27427503 735103625 652149304 676527589 144290831 562539655 484506765 399217328 244827942 688558281 456284544 393872446 310567520 403949317 434287197 457863450 400920431 530996800 360256946 296924088 476306373 930782149 236457842 39185211 356537671 581199562 835469549 72323374 689146757 604686579 275572484 437587400 151609241 624916133 263523411 382292280 565741986 741806180 333728096 839969197 331848316 330333723 120202613 325447927 871227651 168470499 250521099 953463606 191122119 411384057 476321244 163565736 284653678 257196764 805043700 702288667 940609363 253963645 246384242 881616508 408553686 639056031 70501938 69385985 455920031 400371237 952577434 836155063 556791727 715202217 282680552 46865998 221056406 731389765 365411663 802671741 254345866 328417767 864760882 73897403 898127454 252609561 143061157 597134422 296098573 581455102 649603489 699587008 689724962 829093392 897456051 998081754 414450693 45863641 79493845 961087683 144126931 572751561 513347918 445243658 508796569 231043933 339044615 136085985 704989757 134107623 274792297 214480403 407228626 51060151 87143171 343663033 15997343 993881962 746589120 846758299 175012618 876788959 104382521 980544692 98563216 901322865 985629200 14025525 896339734 400303323 82296648 191361156 391944015 44415870 883599145 300065621 468509638 737384278 522027127 131136783 814093848 862084691 44260991 278004728 225990457 478223550 938401709 928277285 451233482 972212893 316361474 235550118 843276684 933103609 631083838 318763766 267330224 912444540 104339175 541770487 148234281 119172254 389904924 343289220 611619534 377826087 716849635 543522906 229124867 23767388 20505159 517091017 34997267 450747936 746948667 132179199 351302034 307105034 723518530 419580851 25273011 463829782 963376357 626774538 966939808 272610613 214653559 578729395 368501553 813922090 212318160 278384940 578543338 703009661 74235679 744682129 956310373 805598711 879160456 348035706 382868067 562410538 18101283 737924936 738352178 867616475 58095618 964031686 442281500 937606624 32110900 872329464 618892614 79792188 964015949 403942351 694868724 424049184 77293350 449592352 603774468 307058950 777692982 399571954 422643362 817742945 755141671 124258783 909010009 157622374 91295645 994669705 32526516 27784308 624357358 739183722 971246375 145339700 262913825 506282509 651380154 818142329 549650291 243764667 46109108 924617693 855094058 205124757 77025082 115183756 859228953 237409465 626700935 169318528 282259558 182247612 327788756 225190637 893548533 399919163 597237155 794171 966059262 757291727 421175561 291214109 175076823 261500213 799732890 671318627 591281494 657718363 802917569 202576665 841499610 364959773 932040773 669639527 989901324 638948345 275428709 569929345 844034053 539163542 29392400 19037704 706202535 546498042 942993415 740187209 449208709 938547473 117068036 675128832 104709302 849493080 867798269 871855029 654293240 163789188 871562803 827041622 403684449 255075541 518796265 597064922 257907258 570920890 299862756 317946244 144374303 552803052 482868002 836918986 285455619 330905843 641209283 843081726 886371400 76057513 152295132 369352549 642725051 677856286 341989066 982243407 256031919 827930499 214245682 616966404 756443994 363580138 648986748 789110648 658005929 686391423 27310383 264796999 913355203 765294224 276018561 210126833 566489324 554536163 28300457 183387983 346667904 244695359 931769867 659454251 873924393 990262842 638561733 372095228 31523450 783048090 900682390 309728829 542948387 981072633 730062800 899430455 962342399 802987278 212638703 34045972 129687739 691805273 909397462 684443923 933019155 404548610 712157484 986307668 415365291 314115693 317383031 816081420 6666716 865664588 71728891 728170318 475840388 139669468 320631232 282959187 919453264 694771220 766669736 242699888 136208457 223216966 773499074 725394587 584379744 402247777 3961569 495833606 588823789 68624591 600398435 690286177 755271293 560683688 4432075 798957412 948162372 351956087 248126643 374726723 967970728 251349930 714343353 471162313 5459760 261367383 379512831 709344600 439144178 348660000 871883320 421865563 188957204 20230391 471785086 754260452 781846504 115640945 215515293 457758659 226997745 972572580 387131407 301120952 812924141 946466041 661762318 727198859 772571615 618414193 377904017 766215575 637086229 794560840 736265899 13776606 36278074 182791209 617745723 54783531 5771790 836259248 782919869 36468157 403755788 318807626 264418503 778079488 97988979 806272848 228072578 136380431 990611963 678650084 300480509 537915184 647328208 54316209 154388933 949215503 842499810 343424327 579348012 277206940 303352966 947341830 943290445 285736637 69161830 525141500 672990057 100365603 741914285 323998602 58397174 941729707 865603922 34574272 703606279 961118180 143612017 133016141 653670379 624021599 431881912 103266552 619010557 15238362 82677174 425324086 649883442 717635683 357201445 251930042 26807892 423264178 796430705 956335134 570178878 859668392 818930159 911528547 960683131 900385406 365702945 672939285 775452505 493403629 186010561 33161234 575073151 56138076 229442507 220076676 20526603 124080699 831775831 632858493 682713751 746082654 313475384 932445034 565626390 97247977 489255749 628244717 934661595 752838579 895888044 500499359 341945932 940097943 816586593 521674936 773572161 926405932 822007303 168482843 94309524 11630670 16641313 378156051 994791115 541265540 520880487 815644110 53892955 40029623 196872437 191308742 346004998 156396860 667256304 697966956 587407536 286249394 925404106 708544117 417872724 259860570 412557422 986983832 418389574 897728083 407068461 958927284 496610880 296292821 350262763 946516584 667546908 490963391 127708253 86249791 359818883 465572146 340465318 801931040 141955979 288493945 949212010 537250022 400789322 910667894 699219869 954762671 579944189 609387615 537748141 373446327 231453647 426001615 789013102 548456845 20101317 885529509 258338661 161366889 53647820 804223135 857298225 590138146 884299563 517961091 135112003 314960240 724493288 810838674 591455497 56380074 16897629 809288670 705689416 297785069 395558619 134244334 179308848 877408626 593797059 109313412 952674024 349761586 633717320 36777036 548395064 237115875 660802687 795528910 311750559 458889724 811404407 906673533 171869597 494489154 554175213 760598199 360941848 65016370 401603264 12333751 9627918 179254810 526599344 147928574 782185230 161490111 574272595 164331913 474038569 862621199 514125337 955251766 506001096 543992085 249811803 585596388 596772861 611189223 628379259 931530542 908432875 564755 931411697 290931633 934435161 672933724 391598589 113336777 192455679 744443076 217356651 325006864 162858058 242769097 883314070 32673874 921663427 16085496 289262026 733165029 380845182 766901758 472476912 807233495 52212978 594989573 992290712 138884075 636731457 878124403 889098663 993560198 612628158 763559216 293370345 158956177 720535999 665171941 889336522 485272298 285763858 185809497 540493809 495519306 16296205 648869620 60102712 258586874 377740295 766012971 968641718 439929240 735372180 169110630 673914484 898281228 286563522 301293090 270926848 465511863 91561039 504513774 445411481 171703212 759891396 171692712 498136376 509152069 123860324 673108142 8782213 449310019 48189539 388818938 604607137 885241897 266202010 505832994 710556649 806619524 277924651 673115641 714978290 235695920 494799847 135706642 297773099 704173520 946056430 120331190 402454705 623607959 539479783 214815644 598636157 882378246 153445574 769282775 627689411 856822829 247192941 81172002 106508224 454674091 628984307 575210801 400961333 108845433 660221156 640871180 991135739 393118054 383641047 248639038 905243933 982591149 444588772 897577620 919483529 749921236 920111693 829606931 320159556 19689768 529936363 86375566 832492866 100472783 51363609 483779980 754661777 118959731 911750499 62539065 42027820 335662206 817758800 458381919 564285667 280631688 532151706 327520190 144393347 3063145 476574932 33950234 325936384 869305379 407256572 477228742 311895894 323446706 472760985 798388810 908371119 618161234 448244952 43367034 107817667 834226409 941296601 314195514 78815840 561400716 488705679 479568263 249808928 747650178 400310298 354918960 878608916 118184140 585264091 133913641 786023991 764590268 680853448 129789786 45647491 770711744 253610781 673743388 830640979 323499292 886730658 553922195 619058467 300870046 294645386 934699834 612815203 557350107 79707522 938219010 304028580 533282498 589525466 109464740 923923887 633854178 551196488 441611606 337971506 397600657 321390712 572603307 210360254 554649818 406669290 660568087 49602879 738910127 242470023 163040786 341762653 538329691 609125464 107633681 984895141 990116631 185949211 532776570 294857908 675978532 969033289 797232670 718579410 188615371 543568081 275768831 883836959 142005867 152898533 551670504 408091376 847980093 19757180 38083188 866355161 795771982 863323477 461197541 324839357 957455413 357333784 989590437 374182214 964265982 278404230 203243346 798575056 544755326 975750345 498359421 265564012 459561288 980880046 332967670 498854397 385143002 155948403 294952365 401790918 790231149 192892297 678389666 769001384 196048579 39057221 714717561 529523898 739904749 284077267 849610399 918479576 786173203 504495369 835483409 875507953 102172266 533072210 29808716 302082209 199678276 106095262 683577746 740755147 821984447 812689626 270293718 748500583 904805269 415648944 724465024 95194423 764854089 20912211 415230394 225993258 127372924 235431318 724487803 750306473 935525765 250693143 783517893 496184038 684107914 639167216 404497279 499349945 199683918 889406277 823134483 712979500 839698733 993888364 562851741 755025955 719066123 175476473 160623226 987479345 319245048 272709937 49551779 443181859 783664090 341623229 611576674 780957487 428168980 336575365 354543849 554351721 623843468 479166570 955584745 770519940 485919164 933771514 369997611 890782649 465926334 893422483 663400420 445553548 757527913 54444519 342059982 309768617 969491220 229146097 187093140 766767614 589521337 275628832 338243595 184419640 731717552 435592319 73829047 218366220 416484994 364910034 998303532 505527482 282492587 284109337 391185975 537206375 565155815 165695218 405606090 288726893 730606005 782875091 545180061 670529114 845502519 504080469 631921249 742798543 979925168 328165374 927733289 427990352 748035697 497518177 817573014 697188767 902712252 687536455 949921940 990617642 792082355 292497295 132625703 41194086 434804159 221535906 574760972 486738593 533485416 303174550 100256847 723134444 390035805 365920316 981242845 993315246 770126225 169284030 22290875 291085747 735872601 991399128 568375525 735648183 590411529 646810921 326010141 113624610 618465999 828900676 731701745 798758027 753801173 607286857 588343270 384907100 291395329 980997836 591177869 123305477 758746768 567842258 167093606 887122108 3822819 909787728 699026718 187516396 408608534 123325916 957388220 526127834 730757918 591299401 549167908 501739388 159076239 462841927 491915931 345445977 843640813 977002684 886847415 290229640 646430248 550896982 496218969 123290982 951514080 905236518 542626824 833435396 731148090 125655896 59948256 41781517 224942147 144054547 430929119 484041045 451550243 609310643 625167881 919824343 599974494 269646217 585566661 818477588 938184022 391985927 286077174 721268439 784300017 884854316 258545276 715258739 38654143 830762348 166674937 168546013 756519216 574101691 170268464 750404585 669780887 771565364 459161000 50057679 924813302 70772880 780872200 13530753 935670702 843764575 98307628 707309519 878636752 106411656 587614581 11348726 771580354 832595942 579259742 840104854 103328720 576704575 980489229 637028103 794660607 528357709 407450416 365009336 330802223 655661422 99711315 738823735 311750458 4876397 904110943 208741455 714078666 908983997 318846405 211027258 239230777 652540799 128677122 253667631 66003832 825015239 679661659 714157539 768462566 454403542 151632515 910837360 27397833 615227758 112859987 817638824 422430787 208526596 485171136 5963462 442205761 901302255 164336505 426603847 386004346 470743170 503427282 465812701 307917291 247454126 998725358 670282124 318279976 478811736 27904155 966950995 718807351 412632348 886547685 25508531 939573096 764932013 282927476 604478225 111906404 610619814 228981160 646175916 904642810 153347730 862954226 255906682 512764975 429831055 735313501 85386790 444579333 92430563 243968290 654255446 423792413 514738306 66494440 53155467 599263211 1598358 159589827 955404727 342532516 21008626 697805956 441972597 597741756 439251634 551566639 588817853 637517876 729419234 144493899 806062714 996610542 659610968 236473918 648203563 387855931 22110589 670697275 287742456 878774333 839135513 973517024 665431626 836022502 365937038 512923738 587974738 359471416 367834711 852135586 933143923 143673769 928866815 335682069 737935141 833472192 955146136 719497780 458494717 736573344 844585948 733336657 199340509 132719974 631566867 985084769 941471362 514376347 951192725 233706171 284489086 996095470 935446704 886308119 957395688 436027204 52677757 436052246 258709856 441338109 793831685 278152474 919884804 489528560 229906665 934924015 443941572 872359379 300838195 66294791 243005090 268810656 166231333 356490075 139421201 193964834 119221564 678137848 49612484 522266886 906945674 974384064 576682817 88925869 900752869 146814099 594556220 65759080 977672149 371932894 947489255 855982590 480177946 376084602 745289034 767183527 82579087 444259578 636112740 470842382 681887389 787522080 247766777 310574778 433153841 68919674 940588490 937717569 4768507 382707136 632460305 420914122 586576743 980879377 174437091 955606120 117263910 425093467 959670162 125545085 254813056 695549079 582464242 57528829 289894266 674604684 672222494 519534161 538121099 331489631 55578763 981705299 910341342 374163494 982626318 733093421 841256415 994582909 491776567 847038639 764296812 684313518 230343401 568373895 773676551 783705068 577842015 481080003 503711784 160156913 577636368 801272287 933438682 216653927 824627220 617179709 6564110 727707880 483334415 785807680 52237458 248512571 429326690 20121213 726728058 761331461 435454446 199857932 741502282 895400867 810103792 391166912 719001814 77225035 358124734 536799555 471205735 297893529 486123145 198136413 750908283 193906346 939128716 172586984 949500732 68504153 82848756 428854458 852412828 832532113 181667874 702595015 90299414 318902695 165979877 291079477 613688043 483898365 647308331 286036097 349543456 198968359 299773744 765291193 67727999 839136471 623600845 632945288 715210388 837930474 557261426 742359231 765329130 463750278 782471069 659262866 262673121 791969210 428852604 448946552 127496050 204655977 179893008 411655 553389534 504766233 525651665 326518803 387464096 859298516 129700050 368490294 294099303 666386279 674332984 521656096 803419235 173247504 675699961 978664686 482413298 541842158 949677963 347794449 41880698 448246870 771800779 396750978 658101294 96059203 919351056 424912199 148642816 608564562 406686728 540518426 944880192 424350582 901157694 219054280 852675295 153496888 653240973 857311573 860201531 555492767 734254393 839512735 833645519 265209416 977515568 887450472 476005013 172576468 268281455 482619092 662101817 81547158 245447604 253718091 198218084 689211940 735930819 189452354 697881852 783419886 733163573 40274694 454021144 157591519 538623914 980908453 40100804 870723067 379377109 777535042 249841756 225941974 947551179 117887392 65055856 709945971 474238880 48967219 723220164 813852276 6088831 502416379 216726489 826882578 645925403 295633964 427247058 858722526 876495790 632654304 888123910 114901197 462508461 656129397 378108568 768418524 570914469 727816743 60638253 566985854 122877664 900379647 6318397 911686416 458083365 650472415 807609756 683634035 889047030 200711094 663062272 41333098 181799267 570969419 392226941 399318626 145521685 57923909 132659751 656661314 45799698 30490984 66134683 933590718 331718667 553277985 780538136 473685277 609710051 287442901 519796560 152646562 365340910 383643418 602042429 765968685 965040299 26329618 347362531 966675550 874278321 329069556 223328175 983830741 521562794 887113854 141225379 697267383 361690010 619788555 482386319 927418372 579338321 972226050 672227929 234568212 89014835 55890146 214241933 523234281 670514870 430757456 81465784 248048950 534467821 70000571 253087922 766897355 859126225 258702387 42790752 135577127 468648686 677646414 786026563 971418303 68872227 232492208 799342410 615084931 537119713 244476026 179241172 924537353 55531329 881028401 462057663 299748513 60804354 282184714 813692665 481686207 236148726 661590792 184988827 518904440 534123792 18519317 726469596 863701013 158299618 404728952 840617093 702784920 890608291 614951422 755478976 72638506 900866975 707873217 768491768 979120605 774708848 403042659 15136135 193552711 60507807 136104767 963483462 62521305 172755228 430056471 886206906 339741668 780159174 92892503 571208406 895256154 701342153 770104653 174403568 900942540 398463458 872210352 797766146 61666397 486335303 722680056 276101584 329079245 167304569 835689442 279006154 777741293 25928218 887348975 655696747 92802938 398702214 757759026 439617826 176124329 529170541 797516906 237844809 526603779 67833273 6913907 52339937 805223373 401565749 591982808 470449165 466591603 180772909 959383852 972787778 220589911 968426845 13493993 487906409 458251706 223629549 367605154 484726715 113227895 248731391 657244583 638546710 661752541 531845214 296327173 315794401 763181136 686394616 877768026 830906182 414881132 631985364 994542075 825824436 56483222 605409925 405525104 400848680 441980362 408778442 410814354 27907700 816389292 218397819 735323477 892536792 70657408 838020223 199656754 196494805 468231286 570961884 436089683 364752787 547632234 95506660 275938692 987944921 420332349 220556956 154627368 382152365 637071167 591765758 155157466 661901046 9199523 386694241 645404882 284849411 658508248 91448309 275046198 551092090 975769411 140312387 641138017 825041687 29553636 588129492 985351352 446434041 796533446 241137677 520728501 690555308 420974666 343619654 584028524 392173980 119321984 378858864 770866971 85760901 709639782 745102614 224892603 383181207 162574922 122349187 322567391 931289819 878422353 752358095 564769574 940790610 531448000 740684999 306536164 400520901 95928976 437240647 185488189 748320277 115496495 323560530 759076922 204365177 40554733 182802109 421698037 326706142 198160973 910898921 257462229 861916236 572049562 389977062 688178519 890314318 325626294 30858599 238669134 594234437 455221470 829454692 405110439 260317209 221223028 640698754 891197110 890106941 799932198 531939446 5938860 838317978 270146616 293501406 778765958 587673995 16982223 65775962 742998044 421624132 247829685 704157116 128989284 509408162 186614574 428402215 398787753 439493739 907362187 472925277 256683043 685264184 646247523 676813269 954341757 799631086 913082907 835820373 473885909 614999458 528620256 729491069 906968591 793767115 356254304 729105559 339500075 228438085 767237374 264957572 789968486 368374985 170737113 884544331 308486503 593604318 583794827 420887 245135367 447354167 234662706 576614453 245482018 763514217 545407775 304866145 683634777 264894902 661128308 99924183 404474461 910406452 285872306 155487489 563959514 770368222 97621955 402976818 662019544 845818181 239118669 491028712 560010388 398576436 305084801 1669102 613840977 193658059 230529727 869053031 825691998 512714722 266539375 410599194 911978306 467679844 450931267 723385366 264856261 489227057 678111837 408567192 373774186 210847110 859514586 228271194 615449786 178081427 673425038 919009503 320109601 389085553 308682834 461059515 618369480 453368388 294812336 162539410 572045260 82196259 821184506 969793934 335784830 678979475 686865242 21055806 431902344 332762881 896046722 826289193 20040046 112710441 746731500 358633137 260580248 341344379 745856399 983623651 963457552 368101898 634878103 174081177 813806036 142596069 148349049 636698595 397461460 171476366 783706221 141582822 261223204 480343599 868807012 126540428 471413344 346106760 733642370 915865378 411617992 693564419 573336474 68698504 393228341 200444356 367197024 289389989 47498252 471013905 662093692 734892230 209181351 119849164 777018971 176799200 402513028 268114625 87063512 663154708 190893223 36607696 650395531 461941761 47224040 877016126 207274361 141484147 42165391 859953354 727405532 884306711 782305061 65351493 576852924 477729554 816068800 363342367 160349231 435772554 43870330 750721734 398365497 159358056 596963194 332656160 49470321 105902382 267732384 152842165 172893417 90357515 464167273 239139030 750861002 338063491 95157477 700327925 216795151 570413606 514955952 855995985 652946147 709266597 320332505 730180156 254616562 392991693 830510756 983466072 182012906 192672736 538059661 334838311 914420260 322160882 483348547 94802080 128074571 253988194 545599069 967570549 211502336 73761093 795408861 119822083 195672928 424089429 992751716 949123541 662647543 407000496 922204601 935168802 81299184 740894300 358525975 962782670 658059831 458608548 991871082 935951651 970347444 421373551 450118478 106994608 148489500 150867594 187018369 715761259 930987782 225085633 97107998 712775897 803717123 198745385 413472021 451071710 490294016 776999419 227042837 839643608 380031179 607610037 697921201 287232170 103307185 119587922 79218526 221914344 147836060 459422174 798456369 720471857 194208917 665215747 709029036 63761163 162176966 770184611 814350056 126643350 508238281 325334197 345935096 404438011 580493750 274942875 683389769 401809140 414811867 99217501 998420285 166365446 230798111 978200027 263120475 192168457 841672089 493176844 196178782 550645294 621728438 628983474 671235349 952158024 281389559 362885237 306270424 313157693 47748299 574411335 966612171 451022147 381951025 85531491 730746748 845429407 220559539 920126140 828154804 144353430 177115603 51561758 851442600 748890189 847137081 824471405 968140520 229590284 850165025 457490594 571380732 476868699 449210534 409029943 708611 784447002 486014486 120592255 417656892 15919408 224600326 455857215 692217675 787685408 33731816 476058625 325926154 427390277 941208455 921730550 695704901 160451554 876213856 576901309 639486626 734830451 983724732 570107797 302080167 299938108 187511751 151383654 206942477 872036460 896033128 837984825 858813427 406474405 338775039 46008993 911743225 796635869 722424387 776849071 246415688 633460100 730006058 207004116 589700660 425500889 959526423 270699544 601847000 964120030 73586192 169708132 969087794 70481055 786635554 209852192 590626906 336998349 764867076 104944900 486378244 655720083 114542261 1753547 695302701 705238477 836454610 641631727 583991825 756011273 42490438 277125814 163208318 718781335 550893066 121535918 424643543 438681310 232338567 242906532 636760230 218527813 698948703 698404751 465741900 228486435 419248654 936118183 674500377 621482963 25099549 827883781 210014900 284687213 816919991 294892333 661729860 253670768 647581605 73137312 60385769 625366675 486969944 695942014 312540944 759269830 790840993 252163386 342524944 179940052 272344570 100161848 761188237 502727913 867100784 31016604 945613890 458375093 525174867 366999424 561098909 550619741 225930825 952048105 923764467 811530483 300226896 314506738 278413447 712107506 663346774 353491042 588239300 5135720 162222854 78453816 641688330 809117130 633072295 450643330 889890816 523237295 971148228 561849663 895428852 919690574 705320610 759493915 280334200 351138251 355545184 181549754 159544948 259377216 133947086 495521025 461856166 301537361 427752118 385417219 480152409 38364934 22005688 832373761 656230763 566321331 394263695 766537525 917618899 871879298 672449323 123967403 812364 958061438 839526936 291043500 319483809 920941188 771848519 793181158 566557113 655338585 378050297 506956251 919737287 975866048 296995661 326056798 456248553 968983206 866502891 650096924 744902053 3113376 723032431 178624715 940203391 150516921 175706944 789523530 647289878 140923017 135338893 441044191 597332465 971527047 744118513 955360047 696928869 93240039 81844898 954414020 828258364 801357479 30714835 905584535 207493661 781486414 692373759 58020486 280625631 350309939 697484643 958468025 43529533 519637905 696724125 858603645 504725848 649368833 432301370 477256197 91278954 450790603 581473328 996127800 899367952 985126108 378638084 761048572 67062937 142347117 917297061 832291177 873034463 855034349 69811694 981039585 907891908 854022711 797501085 625621875 605920048 177880751 847020188 465795329 372623185 304477832 686840186 781890820 305746764 98793880 381690834 320639345 257551357 509182658 430013873 393259584 605450846 101573742 257419364 854582879 330562435 263785861 513258416 912471251 48882552 968347288 942648950 947190649 257017684 322947406 374627397 541163130 659267289 351707587 30829333 42366289 775285154 250915487 178655735 333903034 610550915 407378987 396411901 720802566 397081512 161078186 452833179 499301754 440745262 267408009 235755659 126974231 937131530 3354763 336679883 247302608 844899002 870205574 289188260 455371285 183957256 161639119 209726415 505555059 528982206 189424519 363173188 874428342 497638102 825281870 17255096 402910401 541070972 102260909 246531589 96943845 810689273 55467724 61564069 673967047 559763356 449196874 496232176 964686568 830589859 343105132 379442509 586977458 131138414 722681717 115976393 740802040 365828259 372301204 330413603 339419193 345936314 597656303 238435629 12121192 588039182 172982817 26750274 948471670 5648779 588024136 478040248 346714662 852472231 354828914 988459117 219640122 882075218 555962501 93205599 384840017 951578717 151732184 88399493 11683722 890744909 496715485 900644484 922792245 721222740 127352153 791369963 666807555 626087042 230299694 39270401 251890204 886007576 329048080 414271017 156198252 210562071 739077370 358379100 996429844 389180410 374298267 389936498 754837179 424790211 835983519 647334572 20158563 352846179 598873460 743787373 629540293 308707596 408053878 581046580 199912215 498357423 365190149 630834837 65468856 393965163 668786209 266490906 391858398 8505566 101866 694298251 389660277 400326107 921764644 464648260 137863162 160906507 646816927 656318780 386039473 627246156 829192273 454587870 322127245 541583813 844938393 343474786 959367674 236400040 64476745 592900967 935845656 720186631 641383097 958397714 761662791 854027964 354588526 800685089 960050818 613403027 230999565 92945706 228079725 338821670 559663825 221758694 812692874 864745581 68307317 289882191 21534741 631092605 471786390 625494150 605669257 839816913 521400123 171950962 938277633 792182010 466240349 446228296 757556947 808711203 60555505 672970215 436490329 526349594 886600381 329192082 111511302 458246530 945494490 7954693 735067097 730282104 115234234 596370231 639986188 571907069 716587310 315978512 883407059 582036477 862297348 345926041 261576587 836614817 522171449 105214515 400647401 199389478 962912734 374788764 985244425 916120481 510040504 910467271 138253304 831584347 255014097 977139111 691506125 308339177 181843144 594524549 104868614 788922498 201232290 293571227 518694139 172394100 138357249 28225131 133076043 970279916 1142092 8942304 481291686 870810371 987899104 201242621 457387238 317788796 655280252 50399119 462716669 622648296 234384917 360496345 717887123 846662567 999914265 274862611 334161507 812501992 22054371 312804745 983377592 212866678 740076290 536038922 994964615 282167148 255421331 501593104 691540542 515253826 933322391 576118124 773163194 369457236 530518314 870506690 148775653 136340250 645806697 458213536 477634083 428563314 193055272 107094573 24615525 638771093 614294665 873712105 412581075 4227691 166938592 73790131 599087967 657675984 765372491 191478848 343881113 422210855 585411805 630778797 760902043 25294343 191571345 140920664 511922405 636013227 685032602 257787488 894173322 552206705 696414566 507557720 17106182 255938801 592443442 810711408 248218016 318428484 615323100 463831759 494120333 851251497 826457569 257030888 155129278 620337058 27145378 224808726 30593732 753227125 884499771 502925811 864655854 169624578 509069932 303886343 120603326 541748154 39813170 72220009 931080337 992305298 629201011 109657951 702522526 115612529 851266327 726165744 341510074 423784188 202922328 201263223 10823002 580684918 784883920 590338826 225856283 29256479 132552429 541592603 544172892 778277879 349872094 356533778 146417915 429816682 848474020 700732384 945335345 955453284 543808286 209359452 197642220 177991085 998365184 914118649 988938381 117532467 95370356 686860462 297373505 373579031 331862712 301930381 605139884 460145782 830495005 48161468 525796841 146404533 570141720 814099369 101039246 762658805 783418178 506390198 462491967 899168508 304251051 530801860 953467067 263456327 621102254 668177021 234761167 782371446 714462707 949111310 646167600 926636252 246256044 642322730 290318680 120839049 945979296 569358989 801911857 998843900 758140015 342498468 926997103 352862058 491151798 722543393 831123594 626418886 301335024 865550512 894401734 210647661 181864402 729235911 725985052 996906536 420106317 873276626 974381701 99086017 526681723 96344385 561774886 652752070 792994180 973317972 71083135 484642868 18101604 301092334 630516737 969942714 435960675 888250221 812229563 586172197 141927646 935270739 28257068 126556031 967588132 898445489 207185416 986969316 809460265 344637881 623168909 571113912 489200612 740333674 501178619 488053816 796789373 548016274 979227924 778698249 173625445 880687767 223100745 291352644 817071485 418118540 955089542 299125811 822177183 135773327 927610352 796106526 824991408 899407945 678401580 82694165 314382244 336487047 357198876 109593352 647474712 613786186 263729133 266597805 308377995 865988076 753721368 105310809 105338173 792003968 831932599 710691517 711008930 630877010 985175252 801802444 722939838 913869627 758596608 372609238 856456272 554454607 464488937 182662927 5771829 500779039 596453852 827242245 651999320 57950215 985218028 359099496 548976513 773525111 161167037 131049738 859077147 732536937 790206631 741560707 527372410 943975928 687306327 232832257 4107100 539708616 256649850 125048366 651112761 448134348 125787932 453122068 573693013 391020018 740631095 966191811 381626644 5609559 990030837 507762521 274418704 21552964 181249373 825163669 274913569 769224049 659893862 67230651 572367 311335685 837521097 501213562 78419273 170547873 201738567 756064649 760941609 900244135 260130356 48261012 618026263 804638450 755734821 57184429 51882227 79997403 570567722 674459633 461633067 316248076 259082936 801876602 475058252 834747910 316717279 343853953 173870476 582017487 319281734 396637713 672254619 138546307 879575637 321234903 861270041 102883298 648945684 946922488 729505059 719620570 257910479 404718531 322909479 249645986 695605489 237571162 734198831 300215264 943084092 984767185 626653847 556701431 865961487 674768560 544668878 863027856 292143239 800966293 776921508 752418302 395052103 389009084 896916673 986568676 854155930 294071010 458655212 378619287 86925293 515768750 105860485 63463479 274098079 4498804 348229629 736618212 625291621 481731489 844150085 847910147 972881495 217866190 160972512 197578224 57469587 808082210 919310913 306468590 56275281 453607949 504167993 803188527 71663901 809177757 324998733 599993487 490565090 795998294 766592683 39716074 483902002 269533235 553289615 886607994 382983971 908660286 785450641 591418439 71144013 436175422 855224922 503240071 646799839 590631652 78010023 471866478 276701621 650942416 560601228 369692629 129433083 624331450 921053431 970818929 442236093 161832416 155202827 593257617 881810298 243334588 354490417 201585897 894000237 468380158 405954073 40432884 846830166 846573151 624795199 9162839 120881588 461542001 581978179 467521471 299980810 722866529 271872993 334034093 335847953 649649681 299424115 207828823 628749126 396137584 253208166 755530856 716153780 119009324 231139348 23631161 333488091 418999488 593038416 403829469 386238125 226591984 451578074 478244028 524237333 356181900 844759400 489690531 719555757 101945925 139803466 27423440 390003752 191157846 214200727 623350605 985133664 673039370 812900073 875549523 894346662 788305751 920768851 307797978 606261055 375880564 166201030 334416998 659381934 664764739 343056915 825339153 463102804 311434414 73997299 692666072 683783292 950924385 192491512 517904555 600712973 297897974 735997730 178213180 834698829 69920938 909773246 575708540 841288426 953797007 621894988 641127209 993267806 301889773 265331979 747503286 248412688 375068897 701922505 215125072 523635319 37354774 480060729 255401502 591853384 434384984 431184043 176819980 899188729 437658862 831642604 407549114 560180913 746346757 670149847 28966344 186655973 224303451 838750708 648593016 347736014 831264289 267805653 50412091 771243962 38472989 981449564 618504937 57754045 279686982 609863411 646241970 548923392 950929138 166384248 406492502 599078088 54452223 938992533 801752443 251258829 145926785 332579946 281690117 747044932 90784183 792305480 397394391 494809979 471551086 242221971 173368470 844871125 561054024 107485774 958903667 287999030 851682580 315626444 101684638 756774116 232103010 202527472 801895844 646502288 204896283 599075255 601399365 898510295 110069978 918547085 298898255 995345478 504887741 461285877 420115288 318444834 930884119 673514466 418318185 861787725 245245243 817037271 535837443 368477207 931771670 330792668 773189928 839355021 871853744 526153116 311416963 311890559 856186425 641084635 775683869 91657419 453127100 566527557 466640963 298946612 962856953 561406356 916304653 610622481 304683286 189418750 789080204 264308443 105817115 782203723 830510080 547329461 445232000 39003033 932685233 38764783 593305909 897924102 577812129 282570797 401334175 418952378 22251841 41008707 662294148 941611475 984153760 768977944 436593338 930949127 505625842 1735133 569225169 20776897 660740898 449836937 97283253 416307122 253988634 486564916 776636010 612220901 537461623 494616018 475613898 403510692 472220309 692882226 869313349 394693809 819529860 686180053 346593630 262810562 480225511 602397813 164163190 762753858 791159801 244248846 741832034 731428007 322312498 215740979 147637934 525015392 971096190 882576164 645515846 624847481 774462667 970685828 500787818 865984509 207057663 869606392 299818930 296787801 228334363 797081746 176268686 488835003 271325490 707210298 5965490 74587525 794953373 57297393 503327008 575420938 844047563 666009605 166523472 876288792 801678945 54689912 551748330 611305165 716762342 728837029 994692483 196795443 244090947 638029732 274196886 370126718 861344700 27586028 167789481 939703482 592974744 351839997 642600901 923491141 569735784 765240978 179403296 782703639 202148058 68305135 428524729 939045250 376122528 825233469 616633890 956678498 1305323 44764625 830106420 97429105 325556812 55580996 406088253 569864757 304894878 498059577 265052477 388761256 243619548 693386822 496495550 229547076 336668209 498530146 367274830 730019495 438515439 284905595 696001983 233777383 367664651 288234187 721009257 712588771 165798178 495011844 552016880 811027823 634139370 984852293 164556778 77357915 947355307 519656932 835492482 803010473 737007793 540610741 202511456 278521821 365264807 371657614 239243672 779304002 166355719 727345354 657080153 9886502 864556049 918020078 757579583 224172582 109132061 251880405 434308855 280185970 208105870 385706880 149688282 147167581 334832452 427741954 616560304 319065295 405309151 886270113 611797052 906626443 966907026 260018970 20652196 921279830 507866597 922417973 507763061 432686703 739278711 772639115 695753576 135772700 416160035 640265872 389300320 878519998 254156207 93206888 342759456 670593040 728561037 335412488 964936317 375150405 329681879 291738902 101617326 436235767 370020937 643399137 91339748 88099185 350219573 778262125 884249556 752529540 637516155 849488275 32829474 152703784 754490909 94629833 912936892 440373292 4387971 496368489 227655456 632247544 799778843 755865132 967047809 842995927 747495139 69023315 345581066 439316787 62526385 801516168 123259635 638940349 336149138 912792730 166041901 732854011 687814043 601046292 509613950 750100430 384654475 452616110 76308312 184861078 50414606 530454811 69161401 45327846 957872458 77337250 214710167 463453392 117354840 618871560 799022967 361798011 257559646 309268890 276065555 777031186 599720722 701939546 673981810 296396902 671034940 399689708 519980335 704382549 229496620 263121066 439193894 571696416 893042912 874930325 1825191 309172835 120386879 705959588 81263513 543819285 529772073 360722451 89605023 103379259 639138760 802583604 812075554 56264035 579451531 267198423 407747017 384235958 164945008 690808994 684282929 977873043 443711380 440631694 924765359 848736150 437408338 290201435 964492231 154768944 547792366 540444460 75824915 993714244 491235775 744201378 292029053 709928802 534581619 627362636 353772698 850796114 736147168 549660328 730843115 961439965 814910135 49379634 723288244 993237267 281695273 315772077 473371487 644723844 695560746 810295429 3981543 425272342 925585969 400850686 7855300 281351347 525940169 31166594 958404950 641786954 112059090 247814944 626241149 350546711 584222895 664667590 815368600 124961714 744350712 553983829 363403080 545400774 509020001 687800532 639825701 568929032 680588082 628445192 335054240 872310071 789749661 591598660 546137807 801560877 132255703 330102901 726853911 554578538 616271007 479473868 940804743 522615404 902272253 931530691 421105001 344186489 799679793 299625274 830140270 854424968 632786655 814726848 18262650 749305628 417910482 765982881 487329848 157470887 602230116 53772918 833282008 872397644 408372471 283062741 389578704 55155047 272318011 573406787 753768178 202740802 387302359 341773697 483669999 532061576 305758537 888979683 433243674 699112412 310463392 24983468 558318173 332850342 618625381 820798325 138822931 455528070 643389015 600407553 524753883 79419910 487742629 782489916 984614344 157119269 701458034 498171194 544008063 778568737 844533359 228323504 842685998 997733853 484873665 519574330 210352646 917671874 845790451 806019467 845518561 354296727 402907260 493599322 591327718 332435111 292886527 57828588 412643361 604207887 549921940 976922541 977702640 685274588 719082762 486195257 862870751 224779442 994930427 38127349 263548421 103284400 254284539 234101534 142781144 886197246 143249080 771249313 772827376 443958697 105399640 287713755 570120638 34799797 737643555 236263853 527400605 336943111 784832664 787936514 114223284 885890080 171610746 349914330 866522564 413656516 260430913 146325447 422129487 802844109 380682447 975426048 213491979 540474766 461012036 300848518 363246637 237693480 273180782 896080295 343655868 229955552 825989251 555954198 114563187 676037151 260398447 635118321 571704841 880204309 990494281 862375354 917259270 50352677 439173625 12395789 541985069 935229180 571250365 890681343 593508734 402749739 989495903 181412069 507941506 135722494 947233002 826508936 513938672 334322891 105792195 719110843 344497723 305511718 93738262 765864895 348676042 445687585 850989195 634613479 597550044 2018894 388188836 364899607 60171009 886659822 406528682 708000759 985355858 118600176 707336966 826836037 99258624 534738947 318866718 691479259 375117968 210752204 585534057 613302378 56236591 734242111 956911842 467592448 573180673 164211385 286928261 144878636 977387369 953918575 555820079 217231158 856771007 172498070 191393845 433864924 885621513 150060206 321971522 961268433 343371766 362690330 717928124 508718452 956261754 865943110 57046982 441397309 957277598 102391365 960832163 631089184 863221181 939710446 171457796 39139169 729726889 107305384 674560165 342398136 923978387 49737347 434451109 327596609 533477294 876140829 773521505 227365558 819017818 924165060 729881024 252532669 668494910 876035117 614150783 619067160 430028585 435785374 828127058 4948348 659840374 175735978 202870065 701522053 811985448 768611455 111554444 540023245 196151317 984402493 878178692 40342336 544485238 818344805 64724339 312426772 860664899 254635948 53619338 219737478 749048180 331027254 583199943 703407265 445773697 417151672 766009694 499265009 164606848 132850893 175057678 226965653 203924851 671259593 353572408 118298839 795753128 884321525 140300876 30876488 563541779 53712871 656920736 936041424 300846563 833077982 952775737 646803556 161926158 466316743 967401593 259126256 694594502 563879556 836119485 248500850 277085878 541513162 116240430 632850083 118692227 432973399 957941656 238733507 13630682 247452906 434590291 890449570 838060953 187394770 489774834 801500678 119840274 317934441 302736707 864137290 984022633 223522487 503266328 462630033 821328926 638122267 106306348 213880453 132914269 291613946 523490805 572229524 489735629 97640311 343941027 524527120 963636043 379230534 965982871 89992794 846349660 698685490 966042053 485006699 148758130 286715858 847532220 906471863 630704582 868232162 884472706 324192507 236059271 124652233 789426199 76491800 17643249 963418657 416496445 466326147 313986823 340271517 397332120 900213640 298630442 907723179 937556780 771019980 829660893 20061932 985895281 582717926 584115912 896344266 509330279 179178057 920936725 564291882 187516457 636952677 387608108 976076611 211744681 675306038 311933244 763003942 28122362 157021540 957211523 956137055 813001494 677020403 353495575 316957689 76678997 353581501 154904854 502136566 151658586 812393797 410049917 901140678 742515750 572046223 848427768 566973807 43302527 686555106 175654310 307658548 745010709 787839222 114310058 733500629 686199416 124825592 288273498 891284532 979473744 251047307 946044977 941010062 542208448 440332980 177283490 601588558 243603830 192435261 267860543 983113935 511999835 201167668 341236086 587961500 169352002 115579431 490457112 305402580 944043283 286720938 282022721 335938209 963791107 452348566 528907882 962353741 951394005 132525383 72052256 851489530 797899141 141483629 355094729 271581352 457419956 278850219 940670567 412099328 545360220 392160891 457371426 339698584 617271861 503887416 791738292 169789423 45087207 821676195 768228288 530723130 333963321 254462558 472261498 210277287 327794175 305613554 260222107 784486280 277818298 681659497 774581609 476455571 793248436 400534167 958464651 126210388 544337351 721875633 52406305 830182549 17302845 329414773 658934969 841351503 71698354 216200893 85408689 283498427 356241315 21488561 279094876 345933548 290797142 216358257 844709734 271702379 341808141 745411106 840891548 248753396 797931640 639925459 957432407 385036414 915148278 999033222 417617324 60284409 292251763 634425569 805041137 694341575 542273446 178446646 523794238 137897607 664681458 985353211 904483492 63199890 637634425 723781758 854952241 163870371 124542311 907391379 952815628 62863843 266115349 551869036 515945445 339749487 91888197 367140763 166480428 212756816 614485815 487886578 619462556 976080168 603998608 320870009 172373759 585332474 925754128 666916079 787130963 108060242 997737807 557819438 892200644 12254737 231994235 502419734 207297174 373043880 983898365 689588669 588751899 141540724 452466691 511075757 448362104 721288976 238803897 57437706 965481665 842486692 508231184 461022241 164191439 741413902 44075463 733426603 932848175 181710928 452099081 9387537 269404318 134542834 884331906 794969892 179037511 636726079 190613214 692638570 711985983 109482754 190134092 536189508 746787784 822521802 541605706 988659390 413982243 971231307 85698863 355747903 32597159 360249097 165098731 722158472 719264608 234302153 675409389 414563907 842313840 305161639 494043220 54596834 336656684 337627993 647708305 831964795 942257538 926095468 491470419 245456909 337813897 134516854 129902449 615256648 772134035 763919240 473095531 64388362 421523582 576523114 697756862 600981897 607118616 264187685 819735556 250703752 855059430 751193321 151832602 639741439 47878122 497920206 696262722 311763716 898991695 172929277 630472440 507619658 911383318 880769047 141116229 695396841 905988943 205972880 347283953 620232250 840165524 33693210 47793309 434543760 379763760 350516021 918613809 908696397 753965033 710461403 611193210 561023344 957323506 937250368 51851385 297068444 49248307 354058392 335761217 354399236 458258225 239971659 316706345 675353111 57190453 696492636 339338375 676263303 744333808 761220488 457242708 751542375 506422060 253835272 586509451 956505137 202708839 61411269 41618070 950255730 689558579 239920423 877751934 819487756 467752341 355832830 311358301 812715037 900717395 967179535 384276646 107189163 178518322 755958075 259219057 306704757 485471035 873839184 274106180 823783906 955867543 834865263 950573995 259591562 58113680 33139291 982518872 100824920 862307788 921398391 101094059 780380548 923386856 295921156 38837518 132595384 684912821 69839266 265185822 74114664 597364372 976608592 301208206 544962708 755479566 854682957 303069931 887247985 412689541 143383452 935183788 367719175 958721303 805529788 409017669 500473797 711314820 355682963 228942118 530466633 791942222 920536303 32995889 351970242 440317071 584402520 743800940 368784044 438872208 183899013 366779046 687461091 863103529 681943191 960771438 162534517 471341673 878581838 196999628 29363418 932061860 565294380 752318177 541416068 742848902 408348237 368214575 459281144 483099240 922035924 483735767 247359335 666639868 92059484 122678737 298373682 547911091 166148676 864844483 177892764 239183514 675984503 284552401 376687906 991574223 840970866 594328596 901007232 14267019 827475288 334972840 512783409 706475614 948373692 200918100 340909448 315260500 216859469 900222556 808292144 44382953 159982953 754379715 485042061 362078622 375724011 130580925 315787580 277438742 872378732 656406926 224647106 838291184 781399218 362084569 822267848 229599327 453215021 802941499 934890841 317361705 158987784 832434709 983281771 467274618 653249201 771215277 610937290 162834593 308086437 861744482 683643577 617630222 118736560 768462578 464093848 788164565 981950119 76726747 295310498 508789416 916037388 502676746 49080357 421008477 961643920 443084978 179231382 865244046 257538620 208699461 249077496 913094242 988955126 158699223 704922533 384228705 772898488 313311194 370890653 336270858 55984768 435735104 738633389 27492053 195236383 998860044 484750643 71646453 556469512 454710356 232437024 353226291 226174911 741131863 42996143 438731935 511767264 669807442 900891253 418161689 21139047 825370125 215628550 652814463 538211569 399793601 315968236 978153446 381196933 598477959 403306992 789238873 740649323 841128706 916769449 573957328 358613060 9496096 211185469 305519783 367492953 33573245 730939346 547764226 145875663 274868877 211660597 911291258 464708310 496544405 902037386 310437728 72061136 601371191 34192925 159437949 264938092 316854713 270557229 150289206 351922969 534510948 989368502 785530387 628044100 666726727 175773029 842862920 619904766 233712119 660625349 390799421 195553605 193272827 549928373 90902661 881885222 451104673 29091248 552083784 672923741 398056072 126570045 888188006 249593844 581370126 158134453 695988806 329252909 738206692 887889891 147628222 117848393 490024627 56906896 477612630 418244603 550540545 779286725 196785651 583513747 583792372 796603480 531968403 671171460 29008902 413450338 733600137 978121530 886296563 27873168 921189152 86514391 842046573 36905709 723901051 997013940 175671907 508600083 710694822 985945897 524418247 441716188 806778657 163828444 110933691 63473425 947807418 239291825 578455202 921849314 192243236 746751985 254576497 19100620 587551765 436051998 274472688 561649623 575505648 121996728 172206380 389741753 573562239 591005259 54863760 371041742 611712966 152789756 717386586 752092456 551292675 420188547 220324582 18520934 628997006 558310744 376748724 34555288 33754767 793648915 932001086 696610769 442436191 967012536 83605101 287852426 444106626 938786417 963117068 359807623 252666671 173907283 681347740 205197475 994269900 723479420 113717648 493747053 164349170 184497668 678607462 364480743 895766564 552371737 58921743 642463526 865177738 201025151 194068333 607296955 648911891 139570140 425090700 689165513 379727444 261765853 889478855 496262423 399506984 383696506 276786591 434395188 966889325 606928383 635374992 451406299 726478128 811027472 436845327 168739174 537046097 542260696 405656673 733542665 19309234 353469387 546117898 403664844 760565451 720022476 172074738 527567667 532410606 281409702 397988707 447633260 618174859 213739215 757564888 803670721 566365878 260662948 782854589 789693635 202934186 600406512 487601122 875266774 565807190 96698743 206261627 248391125 712084410 343304870 900367506 292495681 351721559 565979901 904586661 604695874 502024082 96854766 720758255 671386665 557969552 846840198 576815816 994921469 60865989 573944275 348296017 87285648 161009156 233150989 16806809 145494799 763273427 263449413 508481389 583611044 153451203 983675364 312997453 173094359 625365613 646193397 984649633 653125515 102082548 942244386 525932109 61370995 186808279 567794864 80543274 695385767 668444990 700656378 319529405 308607541 858255521 196926928 508142736 841822937 844725860 729798498 696734232 368186290 93576727 825317182 552479856 318630740 964906868 797278931 543287898 613547014 438502883 433731423 453462113 289628009 672246235 599259179 544833269 889312177 390418256 533269445 382519767 383411542 226794668 984888450 63807699 973855214 625434542 482604904 603619954 878726353 154789570 267667233 768110384 405271124 838045794 921940974 572865535 907453032 341206017 639361844 772411674 125253213 35397006 744040706 5974234 164819625 404501512 258097331 793362197 276966143 279647754 820849564 720777456 110706830 691826394 624996371 142389884 187023026 736463059 215171722 211530560 346195406 629603147 812674029 530898283 989352654 51580985 72001459 822151063 65846021 461121209 642374568 633782735 508336884 832624752 584312935 746707228 29902436 854757835 962495988 148644106 703815547 765139091 490676293 253205739 394466098 672765345 870584975 411152197 747072306 703047663 253438048 913073570 432991806 935664837 413887856 387602230 579068000 983546897 110461733 279466397 950212541 216405249 74562537 594398223 910883049 985149918 404204861 203910472 957872997 296886400 319428811 476534922 564424526 222610699 232981463 119781717 593324607 424396847 16459667 472893434 320956119 368744735 664685965 722000561 891037368 476991402 851242992 317551753 245324881 710690492 939270676 556804350 999088408 944916406 916854099 169160437 835311885 290965968 297964562 245060699 564438958 747216913 250684059 66788925 179784716 739823598 112994021 155687218 477243946 385032586 338404800 830763147 675674599 494396759 999475887 55710667 442678192 782275545 591510479 412894305 725206184 665078658 370142560 221383502 819339165 733298029 46564708 715259888 707170021 768897144 143370888 716259910 324104819 191147517 279099272 917838204 989600138 274350649 4623425 73443250 896939499 642682988 648184146 96329168 412385700 413920420 878126304 246808498 473798061 893439165 763366494 893608878 612629827 972042031 664442477 578780778 432175533 792986885 412427695 261094457 470861628 190543361 74905301 178323751 620852384 611740056 80913374 700373420 292918791 164603399 375203877 730458377 99378323 588594926 153868438 236455095 613168940 37376529 636949550 421263057 176097927 991848053 959680689 462414893 694126059 943865270 826613579 970651364 656576884 810911882 521271937 242934471 2686193 413377586 78303092 680714609 733571435 421090242 545229734 655838910 633776253 408807389 94425843 433270243 948012226 314687211 186824164 716429802 526953751 637583790 673478506 49013295 604691313 744113289 593330169 962203448 969966044 770438159 784140321 901851693 689358537 284898833 144998483 910052422 596438374 249287354 692230212 858387629 581156552 957078547 574253478 518038819 743522808 700226704 402987885 932602431 305337884 758217923 935485240 214613435 400291539 422249290 21480655 304827299 618378296 47151990 234675765 196967814 333483386 21827044 821397798 307072206 800141977 830574600 932494503 126375710 41206071 71231368 601513724 629556849 945799344 558811324 373479140 866453186 78655249 620546948 976030756 129411861 289725520 174258965 837429701 729289832 151771168 720231517 388807602 666480292 7523038 80455501 402629996 341379593 205087612 427086343 534482176 18506263 167543239 926527159 854565444 692146735 777294223 285294938 660803630 938593622 171604905 246468712 596965648 916721609 377908452 740418428 1030502 167245772 84615972 346654609 717141436 318048491 185849313 654547932 825853354 57330888 967570651 720343605 216286836 393338233 919789107 691996226 302130911 924946183 423710303 962092723 54539135 571234684 125096248 331267568 527767777 167870282 806428826 524613665 846879558 855421558 927337979 597501652 562509475 833328374 940824160 204139886 791843860 528623896 388036410 726967801 861639448 928382273 274222732 278462458 457856249 233188613 853883091 350061774 788238236 11041208 576229134 738515349 978315791 589403507 947303099 497481231 35399366 818857624 491275884 381388758 364663311 208258748 977626436 703775005 192142836 341605795 495821251 477007752 546338507 637522469 750301959 544939394 371641317 51876583 408854477 25728742 5075260 843605747 771717231 838628831 672520680 646149947 72859411 241897636 910066133 803171931 478030087 603183405 952480610 257329645 645414160 453932292 114399749 108545956 546657762 81045894 980062780 987862878 35117906 348523319 825565961 585848531 658783597 24634718 729157457 319118894 811937420 656442928 923102048 190164927 113149507 667531970 44962201 749227177 673028467 919946339 173743828 68784618 728430345 709324366 170621824 240832469 497486771 716151212 949301816 918995721 146111140 370096212 341723528 334085379 26300447 66466100 526182995 176031047 86766526 400735333 903359734 922856948 446394184 623423790 320238042 138093435 848571857 112713236 256770328 364953727 168595253 825843602 368106160 459957379 224320279 354126891 542783458 811562697 968139134 451419537 915010397 283307093 590450362 89315835 332762396 395352517 449512483 74479854 279871539 525678696 155800382 72459766 216114779 461816652 156327584 511304940 462920758 4794539 27678244 484857553 787897121 459580423 712154063 236519157 785343780 406392061 825501011 879173298 10306146 47897522 629329650 514411460 33075321 993918845 891316965 961294025 152472100 473533620 261231893 665944925 59329598 164657902 881285849 472256713 166165768 825893157 545401933 608913044 45717228 165282893 185755101 582270619 751711647 851343037 516996564 863443476 764265320 259605845 869316041 662037718 391696571 474127837 106578369 399901015 162397451 412082163 111875759 73136563 681764700 540126390 192409602 152486660 258308958 253084720 606503565 850811785 820141010 714611281 674219103 638174356 828408510 939157697 714952816 111839278 419816713 751370743 341245529 901019342 541459011 87027841 841309663 323102942 29538758 622512999 270303527 987119298 920383175 698629129 137533005 848251168 417904808 754204549 402302794 599631795 237762369 616485425 42222958 791620822 231661754 561708065 523580664 49246770 861156121 556883982 565912752 543133572 545301995 931749676 162191102 440575957 271478490 473976469 516923593 21214981 42676795 774653236 7692202 6916667 116672335 718395169 674412169 776500282 414291317 103688941 830018166 266921812 85848317 185592841 915614623 738440832 238514827 755175354 408436942 430535545 588889991 902339581 550056144 544641671 307879452 534975300 791128803 208219035 519983496 173355320 198046835 980545808 221740759 395408058 848841113 770577158 419557577 389433431 980667601 948894696 478544330 241320213 876950065 781884169 754148756 869385522 382986221 282040549 251318933 898297032 702101986 75444136 930164108 28896700 941965867 623671308 830531007 518637958 682292437 819173392 572925842 820512239 785173547 862376217 660147996 604277766 659335516 153766161 891957838 902107321 181771828 706651668 581586592 190250247 843228118 571667243 100110196 989941414 157738433 875096279 510651876 563836233 526078791 130208964 500241364 22728039 964755661 654553578 471366550 546336235 991107202 302058849 977931140 785717752 386122040 626671936 883127712 59042396 456662714 401721897 41374995 862479295 66601832 323715153 569291859 469342551 265446567 984462758 838617660 973981374 292300097 302066725 349927443 289912517 238216959 251669256 438488466 452730985 544735684 700555199 57284559 38283132 39642617 443454451 413095302 728064821 38440090 833011072 13330046 985550939 699581531 208974133 537864008 294084562 731511494 282485071 569494052 928485477 806037666 725957102 517138778 982869667 401074490 479426294 388772690 531169265 57431673 458195838 72938811 631525249 279581232 862330795 429167589 423660882 942796337 881444184 616085032 746143183 898906767 706749446 149748828 869363846 613773569 385172362 516904573 868089206 282905302 854813085 823022661 315692052 927075364 421673890 744335939 34241476 445887388 639132632 441094962 116550892 703692535 260912694 184022728 161014956 878005336 597719131 898126356 22564476 128248669 264988364 880081493 421774141 189371868 178288432 286592692 411061763 679181469 186723927 289172954 485083747 711568974 382648599 455590728 677927819 356639155 420627674 344954828 876818311 422755442 272556335 829882802 540031613 159273224 979238718 384554601 586371054 193574465 445895160 784759160 134730964 944010774 317072694 739296832 632341116 29840474 217968559 553314162 531736644 249598760 106649626 896598063 41200369 594764963 69987553 855489888 341646432 806389452 849808894 929161022 948682209 468383520 956573844 498445194 92556610 262767748 761689174 76487947 718556647 389298234 69172482 588093340 558490936 130806285 69274054 391465288 358397002 367681070 900061881 166224156 341252793 179033862 24557485 545092213 442137630 296216642 93049015 993796719 948599701 383804445 375062746 854318236 520349569 842972172 733479688 347829321 274442109 862756589 631966851 888439385 928627534 357016683 550287656 506152106 425920344 896591310 602808190 144680759 285099181 718417086 953422091 117026631 671102857 920156441 604117269 423867338 575272991 453217444 476657166 48798009 322421732 375239669 953460788 915546123 729256324 263637768 880032358 773543972 316573434 31982707 501119660 397764054 993288141 694744874 725698413 480251525 819293249 177128297 198880184 595874804 607891252 722661170 171303208 890282760 440763606 572693627 292365206 99562790 71311764 909929666 898384961 353518777 858420684 71974033 13687725 299025399 228683556 45433028 9416259 832757923 430188095 198883987 312380630 233454166 260363010 271537069 254469056 567834782 505642575 401428219 241501534 217788796 284781515 206581636 715879729 425373981 810357921 556259541 65970389 958793812 509418771 349653284 3763622 415443591 491709343 513503013 617551900 430353186 426339296 784112042 905365007 814832870 485694940 687721683 741796927 994610080 748595592 517692316 538014923 764993992 301231554 161675802 162041864 485745037 32184326 343970818 897117927 190367490 935006686 462119846 71727939 404583123 285342195 292461664 288091296 37992506 833461685 502710149 567667973 972646616 29586101 140072765 443361779 949216489 69160659 390032461 768490531 856510210 703911684 599476894 816091760 41936216 966212143 6352477 663199586 210364054 622056343 152688844 732020405 568556100 305255987 987228068 527256408 121751601 816998818 257402106 206870257 515117558 464783264 602260547 98842332 275669631 585179316 657065131 837354342 74563644 92713728 735087692 141698542 597554308 678473280 998921833 433065419 195063862 936745883 133325605 768512332 234416184 497398799 179859499 8352889 726243782 881823619 721078733 91988105 596612722 634464185 878982622 905994054 99611633 804280705 224295612 161540737 306044188 640561802 536569468 570798784 525775529 657724797 795822788 264041143 275773795 160310369 921431041 544309506 635306221 920827134 811809473 24210818 510846587 637515354 46529834 128291077 945563816 38032518 146531304 496486872 388032457 319467323 98747761 62294811 589340558 389811189 583297184 743991297 250674395 619184103 458731180 88211040 666602768 749953370 534788422 81925620 721596719 406687388 705246767 68946937 203722850 841922294 296893002 496519343 586299824 715039661 68394306 805682646 305839196 926104205 705727165 778477445 791385108 554388167 723293079 760671851 986481083 615564070 349091352 476533631 612655320 918525293 949799306 681940873 839092496 283488403 420714509 329051101 267634189 395426012 504764091 22033985 420561897 920878275 37028838 597064873 561023390 145490251 168133712 177341600 498070078 554566894 631039314 737901193 850005243 154467056 319406071 242736348 917336182 314303930 427521622 511742598 431336805 746596178 671294553 11110537 96353015 59801162 17093615 691430033 600865869 481994111 816942474 812976917 101566842 476819306 285039103 505229897 634237732 338492254 801771551 237131427 923565354 9302289 143871699 753456157 67560306 682500754 910556572 995521415 960483015 717227355 243571695 433688044 66642201 286545940 454791543 516159693 94617685 831797153 435549043 673664375 500846449 440629279 912451162 980992200 41767107 108087553 893404557 348631269 707164552 644722478 825530857 797051444 853836922 241534024 179735429 621721342 431167150 601675288 25820041 266018082 722071681 145693287 395022539 501708362 525355748 94643011 534060440 834829730 436837756 690601463 784108318 915976772 969552307 599202105 596508608 494919003 546650553 689862814 234642429 295722511 261318285 769659077 367350729 49385337 899666865 870899185 263694742 248995477 141723802 462513072 913013499 567257059 724840004 279823026 938487524 255756749 602253889 943022238 181734939 387050334 105845639 457097630 332387860 114370430 503207683 576297530 840510393 369612870 821491027 659246465 789444411 875786505 579513709 691923914 820476417 426426410 482561261 833890145 772787715 521532881 881093662 562726710 191887946 173048352 862385919 448826309 478965338 705173914 140705612 661623649 450401488 421280089 508205526 740195419 143571596 446144156 628251400 542760288 431891489 652248069 182046915 969166934 524623829 514724428 823482319 707001983 268216439 773784730 230026027 489902344 722163844 993655101 91499810 767710943 846555948 715156224 15583559 236880929 707334035 823631966 882753929 632882906 477291532 77843615 378840527 697598103 176915110 348448109 95158498 553012759 236554406 243942797 933252033 995266006 107468234 853848460 162045211 859867826 498453846 662948607 569184619 221151570 533186302 279073589 346520803 901496128 853533708 614824965 766373540 976556933 892499088 466218902 548746500 473662044 993824407 49479641 558339742 383467676 149361359 390268739 569348427 406781184 382665476 366661542 923430787 413659341 231863790 270142114 726240757 545596365 214993986 296219530 361760676 233004340 79983396 400950420 606206284 110978903 360297581 853772616 639356852 7163669 812261676 483754390 893988477 186937261 875094624 206532815 724126510 124801788 679349155 494423557 153002582 986504576 419790066 33117830 977342955 809793242 758184724 961706096 25806299 207597788 710594167 356798069 632852808 236916117 991668191 655407825 380131794 966809320 70793497 318874224 886355440 486889972 118467726 253115964 911923653 433454251 535688090 544801731 394136823 758685457 223713987 525467467 947312566 388488770 661545537 651490162 351206563 975158351 584318218 401821884 480607527 342253006 767464981 284853331 876312085 35987298 358313546 580023082 313901036 165530397 426111761 307658520 213613157 878210698 539952857 261301218 958665847 90662170 672474914 637795475 896159165 30310219 204414936 299195882 57542240 674466848 768493580 946882027 319347044 181679352 527207823 556948207 138311665 603065277 461524646 572763919 632307666 69071942 905563898 389448240 793917327 985668385 880863132 892807306 839798289 551427485 534980945 852228938 323330316 665388747 930068963 475789753 354549908 562001130 135246558 227773109 785211537 494356735 931757544 545255198 755941242 379410798 21471001 659788943 858220826 476703050 287693625 683120831 707724228 689002485 349302886 462556188 313125605 975239405 918770556 307029904 521022585 645543422 13614927 269457242 26189723 649350146 458412191 591737077 65765054 922826427 606474597 86065840 81782936 373560266 673042035 13112448 392637660 781382686 265834440 226062831 857938804 746471962 826901028 110467672 930245390 138155598 368521838 550324564 670104642 770279699 770735142 52279267 849479296 412704797 745163973 352065443 666494464 567232462 177185179 670060153 833457881 719661914 909692832 108002447 741796759 352994047 954576349 310969320 113690125 910569894 395234101 235946749 115082698 169278091 558262443 568206840 893594266 87766200 490771081 334914314 801434601 904935894 505262639 382258745 439143815 593002939 566780951 272807908 213545094 854797132 800912180 252974475 512115687 858057305 603630437 857739460 399817941 51481883 905827147 235575185 853676838 615996889 250540142 908910610 767675524 195006510 610053051 632259972 643674427 731418034 680525685 693703411 790377385 894998048 386202734 405482543 288627919 835085758 765635118 85633850 885019768 410405335 306468331 172816982 378457632 569565925 312275450 89546767 202279716 666160393 410231479 983565236 269055752 697045331 106187512 223791688 398918924 657117854 519399005 875623446 888029987 102995272 54858164 489799104 979824566 858126027 731765913 992603827 105713346 816201235 623782314 475708995 294764188 487233972 94679154 543203149 649271974 676407685 897467476 945893494 282138822 933868670 681715791 312692441 886566143 635136114 142797085 528057219 90637949 652145871 94774051 152792276 902947761 385521738 377026977 583011277 773816735 168120044 849144212 797397040 996109834 326488248 97791729 631708631 687336949 211838599 443813559 129556638 996010090 798512545 600016599 431661872 15141444 66566982 178705298 271876174 952464305 111036339 206499171 147457361 641004056 584304412 8129777 854309949 254151584 344387411 539275752 348751975 501055935 520016794 555691537 413023285 13805953 455125113 900509075 27173168 891305568 776118143 556502712 898388891 982137541 981664356 237327362 812854715 187929675 393467312 719668462 677655871 374500548 922383663 857948104 139013874 424489819 131929896 274436950 640587936 185567425 175102008 333671131 389696708 459043704 982005702 759524059 615141254 423188730 400120797 362641980 102048146 518238387 67251171 27488010 613930096 702896287 628462473 222376681 770845907 18756721 954953296 548838832 255704274 642999492 268126283 90090134 128664572 580686184 922662671 533634638 947449371 839607367 364072527 550644036 551724510 758262394 919290442 231819033 347590405 131910234 40001848 892631042 299459050 909367163 412062148 826282926 478565472 282892667 784350572 518057682 679903898 529352092 205126769 926384117 84451653 31467169 423328429 353003005 394049623 693701381 903189022 548267658 524563414 426978825 384072162 315245393 349586362 183083703 931525238 690076064 882358416 157737669 687574412 870537095 853430427 388178500 339122641 827025230 494832998 726820285 911891174 572774157 626582736 698941021 428889837 669888581 764891601 75475802 548451657 255015291 66178293 223859405 248046186 431815493 213703541 353485322 334277153 553989384 675077629 12505876 991166379 453863604 85251363 30297995 66410024 851294969 292014165 823742591 238568506 860438728 123599078 441960436 139806555 975647931 844975395 170829341 504162594 142498759 670448273 529457910 50849614 783102769 17098054 757922508 453803683 522023195 657946478 982145451 580461041 237910393 898306981 202896550 922226224 922944057 394826867 283521554 829157940 910715926 733891454 634949019 642987959 69200292 529558771 486422364 212659651 727798663 647431459 676992318 915894909 581284611 769336306 744811884 248715513 998781445 838564155 839783183 222273180 26067958 425538105 673931421 437091443 120056166 550765309 195413872 494390195 811432543 644796105 943250710 805866519 883060780 875457870 205546979 146782793 838084680 697282399 124737114 465471943 458391487 549869076 575693935 12830604 360274007 891300696 268186860 776858900 978979787 123160452 549406369 846595054 276290777 666740743 934524798 171121133 834449895 104419577 815810536 543193218 227699263 131275131 255792439 471296307 822774388 488358638 939705699 157866175 247186926 586352556 635002667 141645389 802724106 607808334 308175667 513688570 318031869 234155619 509890411 70209180 600077179 656111704 258520718 1873201 491716087 411099507 298251906 651972098 987566076 955448574 176376266 31456653 8480780 308726829 645356054 906781165 768157767 4617128 54671180 670889919 684842177 373029185 596029241 198218524 765667770 88973412 522427080 171300421 668477561 510009494 721876153 430418447 549425743 222616734 288708451 781233105 894286654 899935340 927280333 431226464 151635270 923180340 14449503 870183898 602688603 919685544 21705317 658092822 516859146 302054386 430869193 472414016 475134929 421573339 854495996 590424340 800661796 501664695 930530954 126263960 232211548 884682174 990092899 223042644 292517412 365414496 189960752 120698111 324192026 699332357 667442189 910573345 66055189 97412443 983032292 424948808 35038335 753397329 433858603 557508619 842493838 421810980 580766117 840927561 693358441 317430819 941628130 922592372 52329723 107136105 658504338 458129608 255475330 89231849 356205170 803655185 346461983 615696955 13607857 554988954 321109770 639139753 812209128 999470387 67597079 553310975 576323651 776117240 46967112 289598829 656648613 652832118 235831303 576825118 57428212 217929261 538316908 275915874 277330107 523909100 353402220 689956317 130370975 51390026 24962119 579478315 881116169 903905416 351198826 193467700 817156520 504139807 889741022 312156927 105373019 649701408 433088268 366150705 753202526 550780562 808719422 480419152 512644695 543675678 872788012 352400826 469777996 162718206 898738426 304832825 956139851 348149949 826388631 283798234 289758701 643804479 864924970 490405684 110952844 842489828 875377752 319046246 656886896 930704997 967973495 846741376 530200267 162391651 310780346 222111193 618745469 565858108 199049408 825267445 385681406 730979742 485062812 862456287 827087527 888834053 681236645 816840938 467209257 268099170 210232329 672715303 855066897 581151170 11935214 623014325 631594831 914171471 539173409 39936794 32317232 58939799 165710527 604737451 615173594 988364424 841055920 122299393 348012243 322657266 203876981 505361709 584472797 794306194 920160961 551096070 66166312 375763019 521608 15258674 796708244 363456941 341743946 190846289 244769016 984620883 1003468 858890908 203723402 251017761 651696538 357637859 355675519 966657870 406219054 355446266 412130059 528081466 703396717 53661129 58821240 447269799 534342007 125636798 262226597 597093344 680159742 29507714 730693658 959048812 521126287 491763795 635027938 5963751 759620603 136597173 449431172 738485849 731119330 300109832 50209277 671373697 555790571 701614513 919248491 893139773 29857245 201195691 869290052 287840966 457879748 123492092 49687342 74746471 798755101 899835116 38514951 638740369 790359518 63844392 478485555 729157380 94111595 538738490 214250818 4521654 946853554 984500457 812401623 866285648 669179920 705387810 560414456 210611387 98272026 876167913 461696447 89888053 116471369 493856597 338709306 345119784 304518615 299543028 653441732 60873884 464131526 706802378 270344795 470673014 694151088 44756016 46135846 337204580 51652507 650083422 234461844 397466846 638481835 654886533 569133148 42021330 919897446 193683116 207221572 144326902 125441697 551854496 453458513 403277719 215164245 148237260 746775613 17391507 319168735 639792087 59096692 725948006 806568953 497325639 650906199 612198705 668659150 172739164 629440351 940746696 8047856 249503267 248392758 208526104 460956498 765582303 649504037 112567617 776295007 577564974 553146362 243964123 297414236 535540726 39856824 991798211 898831261 965040199 386520351 404882814 637825100 334735253 534291810 552702326 560733506 377902269 508821312 698963410 924520209 20977774 426954005 727265712 481320223 165110425 178456472 398222991 56047620 926109547 157515203 717231884 60336524 328740273 216056963 666540238 707885586 19919428 716027895 842450122 948836005 447559715 864879450 54335507 662445241 7218086 818587758 452364070 657768462 128144366 402017907 734987570 989620789 43726774 441688023 389058070 809450373 438183540 872733361 299463381 651052796 908066462 794511799 206093662 273437682 805538618 549949689 514744769 583092735 943138655 158571558 872030227 155027827 692149486 49360849 355509088 466729476 659109959 149952780 490370239 457922848 953999307 863328820 512689225 645431961 674792216 957044079 244065576 767827522 338324080 598769239 230994285 848757782 665926388 634716662 147854538 676771774 157751162 861278264 775109773 832888886 615336036 232139248 179249967 181239103 307803039 600132538 350929592 418713194 679934364 51399059 566399025 620817781 932002081 569145171 35779381 559533103 226962332 178386235 644802799 450634356 416250552 787520043 205374743 78776181 209410912 756843698 903341883 479391856 49110607 2501342 610198158 871002315 829203466 565679728 208750336 131423290 339833761 927647870 697775497 302355128 915785947 135728600 633085918 569469057 429077408 485275211 320612604 289130901 87737420 280898106 412516110 642286735 594110590 284630481 562889290 138488480 180410210 68918565 236773133 855589579 99866828 11190320 247316212 884570737 408671678 254074292 940203226 165788105 98785977 775082903 699969641 944221535 335877111 648700969 195952122 241251574 645471031 653199538 616025190 558680911 261651516 53703642 249043905 696675557 362876940 756030865 162788540 468904482 33545135 839695282 418630739 870529964 162578655 427612507 659751669 70318868 96110137 716489479 625265754 457309265 231890242 341433290 940796129 734374749 994225584 577179670 293131264 118939987 962139823 531853456 716290698 377995963 854598435 434509280 777053457 3602564 677770395 159006711 735168761 964533936 585633143 705353504 774035887 427891050 954718001 158158649 314882485 408705407 990080853 686494831 899432745 117037355 586950888 889039090 781523059 460561505 714083848 500937702 670219966 423609256 716888695 468991698 648326042 138803348 95287577 201793511 900196514 132177826 897110932 97148015 687774048 517736555 309657494 231766945 742025271 382135062 717330394 96945600 644410436 947058520 565129403 337362723 501318763 661105675 872752429 197881491 519416715 786293469 566270753 122547854 206179303 280185893 455470178 238673461 870422952 536491395 811283018 359330984 349029001 2093708 720949153 270534602 842243622 409792454 334648468 671329337 367581109 67503727 8286111 303241822 293237641 590340258 590977936 754659974 315296894 236466792 684069983 181192178 194859030 779658649 222288522 170125069 167391912 995972774 993089390 8181324 874019407 257869646 455097664 451694938 494700074 782564118 57349567 709648546 764031434 857076566 571419276 948189016 408448069 732500764 309839523 656695828 470300332 844558656 137759548 659836283 937157981 695946917 175936610 977142331 738165294 204380310 886542114 235072785 382345619 62712999 471217792 759216846 860391225 728021460 788297726 571799414 623243010 76970342 83990161 197191504 938836911 753023575 770393941 918000648 654277925 438183738 803647562 687052181 281991119 628995145 297239287 26879799 724380618 263603015 528714669 603961842 653465091 534230115 966753317 506450274 980854935 106399275 347008272 345434748 13826556 38687602 905082910 462595372 471800526 81300090 376656968 692341955 660734630 595754647 501043303 899411257 828735535 592207755 726758049 38038843 232714034 360919230 21480164 948555592 359510971 616808331 344978096 821168958 161455512 674510710 907414205 205016534 340729574 463885904 447232904 974602020 78516039 628794260 928709375 978281111 74368020 32581223 214431815 40458062 850511185 561193965 938680501 475432938 832941910 271810523 578524732 846717902 207642845 417881446 447180618 400781428 232102908 699492574 157325042 188197422 182918698 675909520 851443440 933894566 211486701 609416244 218129551 459383726 729356628 71148224 966156825 221859855 196772934 955321445 388767015 998497336 681198842 359360961 766140966 598319418 340348214 192527693 875745520 939556260 761395308 167806393 933606514 868844600 869525957 569670391 487989673 892438380 709718973 593365298 199753966 990519705 434536405 807634884 526845513 952786083 810070287 691231637 408442673 405485748 125476478 748340293 249088231 957950136 326145921 341681816 483033973 933134633 162149658 325304377 600607136 29884952 817747085 130517231 884379806 486196272 597427856 238516738 479779347 941889754 320196589 185628703 719518314 802528686 608535413 112028002 619977381 64925194 962849399 27772746 336103803 359859393 934737256 977344987 333586101 121281516 556005075 664060424 550339454 318139541 660031375 509717018 714496809 214204741 487837018 735461373 848352205 987665950 163874909 968467452 382400825 170965755 186094081 545302693 590209489 490712714 359267967 617998606 380816867 772397169 461557885 796955130 323090592 692176451 862424926 721421837 669952090 294956984 191969631 401751062 936348893 631509562 576854646 938290852 152253710 908899449 133076699 962704258 19649342 640588843 791978858 125449783 366789736 330129954 560346376 935093510 415358662 925671300 25467726 558619618 745997854 346167563 368473858 116085681 625209813 632278622 117704571 565141515 149345775 841862516 995403166 979364785 21684775 113257997 184373284 626087390 318504849 839519699 366056663 142350409 980542920 727380210 597862492 100754333 420717306 691617084 403302721 35005660 348678243 892067706 377109925 260268245 48655778 325057077 147739520 529068037 485681201 843282573 806013633 22896968 920330138 219150404 922615782 567058708 590207583 637543669 938137071 562969287 853771831 447288176 991310443 441119378 716272038 351307637 992713782 815011415 761635843 708096741 941956862 497031523 27923030 736200226 478634405 775711997 438242791 168172315 523178729 793922472 760518589 630984589 255612607 456226476 524449165 956884051 293926714 786571423 349325266 769263137 812976976 789608477 814369763 935316614 312760962 589446839 800508756 438042902 786899038 251163883 677286071 191941153 760844009 474004756 237516773 478591946 437070544 419228174 908962591 65318758 424554574 417562334 855493941 256979888 933192818 312326866 478934268 10567755 509539533 158723586 991328795 99740702 375145646 441111671 562862629 443937036 622613390 497523217 796972851 316879983 499674346 488506382 794819662 913231381 298496886 553800150 958795510 129111605 889890481 314970537 935195118 478436359 427730487 189384642 985234314 916402135 87456229 67101019 407649206 278174949 54287648 510838017 839370667 443727043 547320032 552295076 655137686 27024286 448339877 553593160 175793267 36861531 481137371 126035261 631151640 598841827 873526158 791673603 342943647 154759631 908241327 945783142 478133615 912041138 964146515 549372260 174965511 891904910 298324425 385807856 633815989 176604612 689916724 525037574 704354948 19494440 424714706 297723478 93410144 522770682 29618919 700660669 553270842 104263013 893890734 965082991 258216297 499856670 214878046 707157430 113587242 393566109 840204875 624017928 409335538 79553606 631119554 288352841 414873015 213405797 323566060 748919354 954971536 515309394 488516022 604715297 548797544 266500127 635039083 684995246 728639578 267846603 434564785 389371743 22757166 831141168 93711258 770568085 964801088 909526281 236908720 308765451 922245654 255133155 184142093 334762506 464375943 151654319 550887351 596839296 649863080 958509516 656288909 759010538 591518984 594388859 219411463 671507043 872688119 792267287 409362573 906397735 441203397 851519880 668018312 554871329 311282829 841482702 934136031 768151389 438222832 288647732 121816258 714349965 764997353 401423716 435327882 457685583 760444981 980422455 384278260 615782580 351083292 697872194 416864204 718353687 132779895 681995527 7825941 493377127 285895819 467210085 834482994 117528266 614518385 157052126 881917687 716302709 474182416 116254444 721559294 360440403 759683540 164664791 206326967 441059837 14658109 953375987 376314228 650577924 259513504 444404882 59000044 170671318 267214859 472649440 576800698 765799414 356722970 931910458 612578560 397082073 618028603 680641091 728262266 488648929 205278493 769708762 439498335 647188770 312024408 439754261 990975721 616659079 753868257 53519444 948501767 754804601 863851310 731391599 650501405 162050135 826946379 154737467 923873021 255754997 322110338 801206125 650733700 134358980 810751711 239273232 407827403 234434280 45901559 212485346 746291559 358664394 134677220 382499032 389439701 526330951 350875684 185644312 617003758 330595169 452511045 62822087 500240955 264378497 345012791 807790357 80995219 152918736 208667123 726828622 84673530 131506239 582960364 92454981 486871291 338487925 186320195 273903038 985449383 660010961 236628751 613890566 898786802 283564803 834996227 582344382 351838100 334422234 260625162 461774643 408673931 982078232 589457003 475203857 57136226 281535986 767113360 760043168 739774246 258232696 958563651 223856584 321344965 358500970 149956693 634924910 236331448 434771560 899175226 634180775 281709794 79084961 754444840 633690324 403188563 812642160 943283532 158992078 796934364 128446252 68511448 764570028 202094043 679580409 527928429 45646096 890392734 693804209 224684104 575900219 514230300 643575082 272746611 701314820 537502758 689578980 942002646 176325328 72039617 640830822 897907469 133696066 799934331 19251565 525109831 406105594 629739505 638004043 533524016 831920385 346461050 80181889 138220879 964676306 721935646 288244743 51530092 927274365 169396288 808293144 68923114 154081387 220747802 879700103 917195718 925716619 230366166 664012715 185093939 492868156 761816905 1624391 682587947 341955945 951449393 835025260 999198415 889216312 257301084 587202583 281755355 902492148 781456874 257560685 80597739 347872988 323801789 567431161 978572141 760842167 377440488 457726156 483604902 413133165 64254870 866538877 461281754 970033523 737817828 118423219 333429796 600639276 695516851 499501388 729174548 845353718 856238180 738085825 733061121 804849325 166026419 753148385 673672229 904227755 190696400 946810250 636130545 711617944 722505444 151502880 489673198 992157652 714893873 332383526 235958158 948146604 739761069 407446686 887569721 590146680 844973489 573795426 474031542 575308195 310069206 583637068 285994439 538173408 7906270 538926431 891176663 879046876 770617376 507873564 975325897 920218845 704517995 417406286 244220973 64089506 426348792 924563186 80293102 869531950 808208416 468003409 643669867 608629234 181685328 68104622 540853222 646972583 374123229 483537621 250111842 248967555 445492806 811261313 8184820 108122872 236164871 294029128 702388733 991641447 235767124 153367482 624578210 542446536 794561469 859935961 264544317 52423196 36670835 921015578 286791233 975161420 639454910 303828816 620858924 239761172 584354094 329474129 86201146 604320426 988337728 616316989 170454847 734759976 178986130 624225554 530817329 665053301 761669558 461682776 358578100 45595990 669379078 724639052 198311853 581054858 369283429 719975051 824204357 769806563 769053278 500008377 226998901 136093279 830847059 883193758 377313938 254043694 132330035 865794929 516420678 730992563 321803469 541372560 287951944 830076747 585406765 737458009 4820355 446791785 167950181 308329341 589933812 298073608 80492813 364588681 678128122 817982062 542452649 722957931 789463342 206250805 562196029 243336604 390913113 412719252 329347668 595434383 929406990 507236027 767301458 548251550 832467421 676322744 302002923 961011989 671520106 484264850 781005205 963050145 22493443 579394592 798997605 949292693 974852260 719351617 755051992 545536758 911425405 376549242 157013239 692447820 41454583 675344166 728873463 645695951 421242005 75776281 387236442 850377604 413823660 528982846 37485977 744744651 868231790 630026281 104706988 249270505 57103039 68121734 855208988 642735473 990666179 707594855 274858071 881322210 310641252 320830592 995369325 705434877 587028334 372196216 478096701 562336910 679604554 357271628 613673126 700642491 731304089 529415119 250575173 470661627 234474292 146648106 93868400 648921232 220001516 15294754 267075996 340744296 938233736 856600884 842044727 900202308 691728135 112916822 778036069 203984039 30553871 940934589 786757341 902319513 674851904 995386853 304163219 53057714 893747242 205024685 608463565 149622659 178959226 634895851 217747538 666245620 912351488 215925276 955715205 911066747 874831779 738296742 722548124 727922584 964490023 535888920 298017026 909574945 308842342 855223892 127208531 435517739 108516085 764820045 837618650 650437974 54585082 897985743 583396118 390023996 526824137 96266011 626952619 209494825 299129528 40086755 32704980 822327739 899668481 128715120 955133221 796757379 796023632 686341591 849468682 661740465 422587955 355287171 34716291 692833839 506965346 924325307 74357703 246731094 93458815 855195599 736727790 40099629 736566831 217078742 372727723 760659998 716052351 72246612 294184521 524129263 149179900 503933159 810631659 964806013 268169280 273143769 827706002 284390922 788034642 449415815 275724367 311847778 13389585 291253435 361068628 909135703 771290772 417892944 65073995 936789722 178562194 477595061 703357554 108432097 8566642 608668225 95975796 330902325 60850281 300499786 634975810 889168993 310731482 415140666 405894100 480404772 544159944 720943668 138611607 683978476 968695025 457694795 877089134 599282467 513812309 413001793 610737632 165590201 935893540 208713928 382183775 142599926 172122565 67761996 951040851 60691920 518444913 833676760 87327823 154578693 643068997 194590907 610382637 549234827 175690660 33297294 149455810 168383738 657144906 654675632 493874831 352827112 818641260 497622142 288597889 606282463 614773481 62059520 508273365 399954509 234907143 88780799 764714189 954434821 728443660 374299595 986716580 298617130 6859763 643760730 664313837 898659535 845131108 841825566 325137063 43503751 98811803 604527872 707426393 891584276 499862692 807779988 428751775 869661796 235450105 781727929 667425873 595193670 6741570 192824642 232844084 722673700 88802658 602075459 896303647 438965939 144692920 212702557 81895990 541204344 868263130 10141680 690632100 361947443 527097667 339741335 631781997 784831667 30151750 838788929 687090986 393831297 861498984 360087836 228760559 764418658 591460434 781833859 105077776 757839717 942622380 571635653 570985845 353024291 15681612 730835107 414697280 812670826 663786631 175441565 490713434 332349921 946769594 925028115 39578434 530545814 832975073 999104036 770160576 257012469 773416385 93493618 165173197 895649278 435115140 178064946 829355963 834887376 377071325 449213041 356156291 180253052 598820335 540692659 220118642 644477355 200268384 988431312 644129405 878298438 334770924 497362730 644582483 903120898 506983815 4517027 306638668 472546275 972028742 171924014 828645720 602584980 21178597 100980741 669346583 547989832 180049441 830542793 499226207 176587182 634216602 303210971 520009260 778364287 918445380 651926388 369422714 66576229 728268914 267555769 403827203 942261346 171115973 622487272 755335694 164472647 130655583 383140824 850288388 549830329 565409947 328387451 619008907 306847735 525949559 888681410 370440014 813996618 133945575 863369581 896979395 129678259 674940147 997931748 61416830 234453803 274332556 438394720 97733523 539175283 30780650 869353310 102246930 767482459 135699332 639741717 816017525 363627509 148224844 124506590 909230492 451872 170471635 649882722 815132905 73451053 936922306 219501404 662480788 11685608 622694972 997947420 63669252 534839096 903174812 11555898 800128435 780563416 780660951 12959249 46378276 726002340 61157525 764276993 153509546 290293688 992831010 409180040 4398518 314095758 508757680 652783273 586667835 32661285 322544181 357878925 188529195 903504726 320633992 728664004 474207776 354640784 404585279 230816344 21623520 995055964 894530003 806554248 611178817 39816564 402050511 730314330 430964751 455979663 710159141 222042259 361298506 802316610 205245435 899501122 949333427 771913226 279364724 805729123 520103335 179525661 259169216 743986150 438344642 292086968 898755286 664643566 57931757 180581061 397441150 880877918 74497429 41711122 692649870 87064328 605055397 717685829 822238217 175137814 644602361 920918268 853315682 128992217 18556745 211341070 780130437 535699550 916052500 964806466 63434565 737244439 360318242 27466201 420829753 291621035 455520174 221002766 484830126 364549050 471747876 263608559 976314701 32459184 310483182 884610763 839110110 392871680 666837129 165055359 560911705 207258148 404774128 534879752 130345327 451436651 991468085 856869817 252951859 62791228 676998362 374713572 367157121 742039442 5997552 787182436 814329273 330800984 283566710 163120225 589436882 886127855 462329053 720720956 722362069 32525337 953305227 655496909 364586858 976670735 312920965 708624217 609903754 16503195 974037313 846422002 984840246 293615447 747410150 602338913 873806768 603008738 35348415 395642802 426244505 762950241 388436561 182260558 857515047 720314260 778750003 207298611 954259141 3780324 199972501 191621818 457484922 533630820 786199855 839174353 991440980 687623345 876845235 839561960 818976232 552433854 355723386 421675131 724323244 928615598 915441673 91211617 77550744 273000516 143325997 658576008 741739670 914798745 151860238 272638308 789915441 871990663 129652541 493281815 518319199 318500383 776718709 239656612 352675150 828287534 832644038 720986391 515977757 540530221 762164202 636202876 36046867 73144631 295484727 480422401 429057698 591145609 848614587 242352351 465456407 860050737 848238944 353384164 822996835 16049814 705013797 987212223 725087698 570214624 161075537 948563187 363028092 942293244 231320916 92849159 384660770 838592280 225786614 577936202 346789433 892684683 729261708 665711559 870702546 873336829 756355498 517575694 398913094 821761589 822819928 327070462 681379966 337676366 177667846 164753892 423212697 943649801 545587817 897852381 49736423 910660094 365803192 424053662 281548374 70418716 895589774 335508052 648661815 830282792 622086739 268581084 363653534 208218338 560816649 195834347 445113240 937081997 951007639 298239162 987382299 772566556 451964149 442760349 815901154 704135545 887077648 402358901 582134353 327469178 521634719 282237080 680121213 601045017 580918541 342154686 257449334 161334461 666191047 460912151 666907144 621987756 276085236 58751279 492091763 18705398 529366439 923502531 286068627 182681441 517200830 645078885 234323300 232035375 553987383 487892994 817697542 811502382 972715240 108170836 446654263 215587298 121961340 765084787 18110040 146135011 132160687 41973477 286029732 959359570 980537293 709192369 935822558 828557654 594205129 145023438 448466662 721484776 279916522 813210417 993650271 968179633 271429088 550831109 8142122 208251702 508865839 515222844 763316572 846476249 258776398 854835971 684340285 557604917 625031818 669089722 844862553 801066018 610140176 978662316 359600265 738832259 762581158 23050490 426882666 363448847 97427826 886518629 818483856 774939941 776526582 704001382 531083097 622836966 107987739 390365723 273495955 93779919 669867573 954497218 256598897 873688144 972039778 622189781 650462112 876181833 804296937 739096316 192289821 921715891 426542268 344885905 562242733 36809216 692045700 666396190 900525134 270828354 80962426 211534854 1753667 220846293 354017526 434837032 394501175 438431234 29788455 911458462 611111112 931080971 329699132 369411866 382743876 822185213 563667946 383597896 724127717 763412206 152688018 140794271 779257798 360779031 772042280 996063321 743937008 318666036 915027179 316370044 391388144 123671629 62821979 827029388 488636851 196416894 549438080 904509010 46904354 900280691 815330967 575313869 95810452 226819546 804696477 757660028 681980562 342329088 361549573 858896881 518100270 768520277 832981745 324786534 882776857 851855089 586555199 918261611 820222432 27994613 492403440 809858269 317338639 91695228 309566461 437809402 101786725 754391278 19503577 947660029 447720390 162934579 951844434 653432898 371936649 705088057 209801971 514650453 230355752 290999410 792543451 190733216 353174417 66274131 378007275 832467175 484898260 582607270 923385649 286902190 243832354 589836265 701081498 514591676 286158356 222678113 99851032 990596844 935691207 549163924 503732381 701038443 881418362 376186492 688350142 495243323 51681514 794041521 665481053 366928179 334830484 168279064 519422765 448943807 744632818 155771921 397184364 847889978 986536394 252242816 171162708 270910800 121659068 460957221 250834005 89176581 398633158 454226136 866374681 231881156 581902250 971042030 207386363 954606077 197476508 4124492 649872453 425880704 72919375 194362823 376336338 490875674 60732728 65875717 485517256 461744491 480521029 178330683 943631770 12392103 101206740 895971422 788538489 14315075 130572246 481888743 278015178 201437312 157957442 65232886 347813439 419675429 474733974 928667410 263077229 459429315 282744094 945099203 383574734 359036864 736858644 979487443 54716503 106764158 915939733 229227568 12035851 998142687 651397947 508800159 241622162 671639167 761466921 467780411 904819666 731504940 15312798 461853266 505195697 608161368 685128163 505794463 219325854 557506196 707385698 920021934 423747488 9266655 865800778 784324004 946700763 887401571 253282529 653840554 534312967 242015745 736405346 985848296 657740340 134922913 318058496 926423859 314571719 822837508 707106916 732956671 250977177 863474811 325881156 756078455 413850100 346309572 758168980 208623427 53627671 796791453 313748482 862512364 167304131 400735309 666239431 894251742 322959898 268997665 419578905 89501433 520550974 89936235 738483223 136148886 831054178 632492035 275554547 692736226 775023739 534804207 871037139 984621573 969355292 600608616 141020166 481778005 179583909 975707029 33620150 425083016 864044788 949072298 662434996 420479297 712910257 495837607 870463503 223894962 694017208 483425834 475395369 454930501 436212041 138304752 640473813 171299228 748433576 393787442 928001011 987906671 540307750 692868511 142825878 100431805 602238621 757706812 152848496 340144337 858497560 660889520 5403534 842610084 338494160 648584974 515039193 957243413 379383844 371543953 100353118 223900783 401493053 847621140 292736923 627506315 436981963 47272192 76545726 362333342 350033370 220509024 424972080 455278495 712439931 705622975 732479458 518074574 635559533 56544247 304138362 775260427 656206116 247509502 308882503 818895520 152774093 633979008 933873163 386879103 206852763 336094689 836344078 949239595 260952619 649102006 50656369 749486844 963117306 116606350 742388835 393112015 784021645 247795817 927155061 714947541 200757020 699390391 931478083 871746912 988736929 434649268 966421598 296245505 504268842 956573630 506540510 975671680 960498885 19246873 199633266 671384828 979883683 481040630 174521986 495145951 928200292 741142103 398757879 250290641 920052716 823800289 961808692 407372840 881949786 587259483 960008360 231521255 710813662 789870580 245620691 314752660 551929840 104743694 764128130 164783765 440012743 439798742 69611894 467514698 736150729 134713365 383353042 603513614 935718397 122049371 920026453 167236580 954146938 814346709 778923745 231091002 157686088 58597521 988740837 15626807 510879804 305049458 731309532 806349588 32059291 283502010 364778478 721944829 888488939 308141107 497969604 674186953 38566356 372468772 566348906 582308117 867246680 871498264 219871874 390201469 567710949 317356117 84698918 494916626 344062731 580403589 830010562 453868845 98309451 85528881 282803198 78842007 846803534 401781288 954798916 762825763 169952185 559423711 127615702 324354200 494219855 504678523 42150251 236211077 168854412 192954716 295749366 967274861 379718032 142152723 348134087 96893087 418561556 516225640 243836991 110461445 725788766 223792115 490782235 599650034 549772037 305023258 121516816 838048515 868894561 76066128 659226672 408780886 321535802 762312847 30581943 672746392 229383944 799273206 551235995 576709208 691950850 149536207 270202867 558719528 383038908 404893079 482380794 841046971 574977431 601636763 742833702 762755159 730067033 236553476 499058159 220936402 862412983 295593450 613630493 212328627 866252377 28489038 113538622 720781117 248593599 804474322 790040243 686311919 387011191 132581791 659250695 104041272 843498599 54778521 504533075 335447535 778912221 221552417 924442342 839031782 916368749 729063670 930599257 762437257 207568471 714157748 133708134 914048104 638659253 767936620 481911846 299450763 472770338 903080157 974674705 190449496 73047269 214667985 55233278 873500566 95561023 779455062 158866936 167941780 244041103 306848163 733791332 722376872 735943888 557437949 415436732 460547788 333985057 347174044 95739923 653746387 418073291 594602694 475866311 290445614 122950116 833056828 250744702 854880997 274107692 196956567 471036261 185058403 974184222 41823005 41445640 774800509 947634002 256399323 627074872 441855073 262774789 261262944 11095667 949658754 403200111 99660102 706858741 679058888 75682823 93368371 433812892 373755746 734952351 655667333 947698927 979189099 416811295 713999352 353922416 746255295 123599300 620821795 144376032 552747539 868501435 593588386 333429878 429442727 716392233 577568934 978732073 859107472 504813706 340235515 346448918 748019567 731368563 641045720 738201970 106483088 335319370 93656598 222400327 150468463 335387316 245792539 612866092 956771992 355826441 189687185 866200645 394291800 156363427 498030728 739791148 317438696 422677156 425930193 12835666 830202585 341467775 897294325 116902149 231054023 922304264 495342394 868251931 970671853 5330959 875067813 983305408 460486986 923519953 428991159 692212834 661826554 828698811 929478391 724795827 325271723 810306656 818349079 921173000 156665167 197038784 42320903 524870063 755810461 855939534 258958211 525805543 975835122 953521627 525712458 401343469 532820673 713655008 340551373 841690797 453548164 607881505 320230820 864685729 156378200 390439661 43262822 734671467 822740414 722080914 893322493 856358167 624433488 56520122 1195320 6785265 467591330 769436081 440211095 788799912 89782425 246124084 398278179 860583693 37542018 560820395 191307266 971219299 917900930 985844304 670888618 567978946 983436236 487594257 690542810 818115313 49957173 889213652 825682606 429265425 564628412 278558652 318769832 679341424 685014463 551964648 621653859 161132683 7763577 877943252 79890687 849593003 869918511 95902102 871999834 442782553 250051935 15203115 13038091 351244955 459501586 125453144 879974291 770619803 715229001 551670409 262546421 500910979 698810185 933249433 217130382 843314165 583691074 380340634 814791191 983231726 838903490 638652559 394830897 181364652 682411756 837817045 741797698 551109735 883527315 926933729 400415965 264772075 275492490 733953865 990086445 172961767 271447104 217794035 405594694 634036463 873368372 520782581 150962167 537663660 323577974 16212368 890682564 185945454 469250782 83355707 979584816 382341452 404564586 83433768 902810087 261063406 190384338 160087464 59374946 34042409 252792927 206182983 256823499 76833396 774275905 384942707 276502470 393990292 941931142 45022283 205913396 998077991 712153213 559585482 488669280 188272945 10278499 97360525 613077511 769093924 639884202 141796823 116201968 158788345 731217585 558015557 391528088 471111632 612358846 525102709 226461599 293547028 54590115 136129156 767989766 953673661 65416385 258031606 923243602 108009847 903902868 41418146 480065729 146532353 267822750 152579905 473966096 967496416 209494828 863388486 438961003 122984487 825053238 517613768 932414839 364986413 590014455 62510033 870707816 47354827 582767394 104174585 699135680 445264754 337799191 602737854 598744533 250672283 188068779 754323375 723944346 605506752 962437465 103208765 246148886 37298073 126725431 438922807 469179657 320362003 529463845 924524342 91588469 290128285 194785438 865831928 605436632 771057904 448722002 821626733 523305902 935990606 25300766 893957586 808962860 263579444 87943148 32781262 446899958 716042439 324943350 588908405 312852343 547691006 51608497 85232861 727629817 267546605 300693929 612237047 205697342 362703302 162425961 96715380 308571682 206642975 291238646 401731944 181431654 325440078 314976956 939174825 552039476 757517085 136016706 124041159 760634902 749985354 224659664 980234666 728102438 76319339 332913498 739711750 279457306 124639482 304362991 907678978 415720248 249315271 153365514 4769390 525926379 867062356 767344982 588614766 286116490 227256515 359113056 654843618 570159255 715667450 257342630 510545990 644275744 580233743 406546749 217137226 251584770 371784526 467587899 515982064 640620706 86519501 648221507 344728844 562158366 280988592 303478268 70030272 550701102 344796669 452706137 415072809 416334654 620310878 191107255 291825882 329121575 25297269 224858174 966461962 171019611 664620874 844446163 398173583 524949420 584753611 841080933 392954377 165183243 678884546 433821297 333586526 501269657 704047863 125070908 355528523 255136129 350890640 990162984 299189613 934491344 404087137 203889272 419668479 372202105 167733395 719171588 574777312 29666676 114068317 391840458 767360408 337478299 691306138 497079047 262502022 192316352 492766360 121183645 937095520 619543351 331329501 816266080 624189932 666217917 680461925 229672048 877787788 416970561 639800434 812894376 894367125 332888686 893370494 617174056 723848502 34635592 237855730 10494551 77951647 36325934 84261413 284475479 938578133 770277649 114256504 346672531 893341 454969514 235109493 401022598 657624394 307377915 366431356 492060995 308506060 481626051 539034467 989174272 225603870 417594507 944919590 789447170 597296923 305306780 494435262 728026490 531786382 133729642 703605361 845463984 615089720 252498038 432615708 239052646 125377740 55701091 64805035 657678983 581783618 211465208 604999949 57622117 348359561 387219126 667514357 683834931 661729037 218184717 334682452 357660361 813909719 506730056 191866885 486021199 692345691 617927942 158710026 490936689 470360911 941102369 383280158 351343118 493227461 38957309 211817751 226827704 788654202 69032480 225722959 330595034 288877366 439928832 531924976 320582319 123896737 667609933 467298160 363269978 803707180 653657645 582921981 594764933 478071413 137464167 567800455 892724556 966546187 67554154 874690624 110463476 482985132 549600468 316235323 860030907 716041269 453636466 74972697 40668220 189402489 350273922 812737565 576164637 125682061 636815842 167076204 939040140 279305281 173113636 882390249 296744746 43230588 311574137 130176256 378893277 581299666 647537427 224097309 623382123 524085861 200358867 353786329 741407455 619082728 89966306 61104780 75142319 496990730 427098027 392660610 253368184 558460093 456720141 462000518 542771454 225725837 820013000 68617987 512975435 323746795 394371311 277639210 372153898 594522892 404815679 77504006 737956384 749983986 344397699 340462409 147868313 433940002 59012815 819015770 361704251 249886513 667600205 42694818 659093423 157944918 296839190 526012650 681870471 996655466 185210908 682620308 755768434 147951575 590452974 110094057 758294777 200131129 17671545 924570673 363253358 469361454 363752350 492334180 977909987 828650108 10664164 180309325 63103394 424470718 945872637 357014062 546436120 675535137 577476307 596499333 325756499 237003408 934335336 512120984 834809888 649660373 637132073 891507264 540087800 862769606 457455765 562413613 651198834 104203396 794348930 256675542 299146722 755982701 353357540 461709368 505032071 573931061 579588268 947254036 590007310 756253845 179834037 816414984 291218655 526788128 86353661 68751710 582249897 94107432 580541794 951102257 402788613 284810726 387188403 703006194 861306815 226609680 782597068 796799964 847321409 354772015 578802399 693171274 753537834 994513957 159774750 724999108 584943616 105770662 94483791 381000673 322207123 328404771 908393150 758974604 291806787 814031748 760650508 531573546 335521661 511828762 861268821 964515087 901441475 88091627 298954187 688850016 485023344 692723196 166171258 50069659 359702502 489298482 403526280 879465083 380794820 878721305 268025320 837231684 592809630 717712263 781170608 183992895 968981749 244473578 61996714 412835433 932246397 985050832 252523416 676784871 853775695 154970355 190067807 174245982 33916346 63056226 422579156 997045210 769477205 405516498 788729969 786775908 136476842 408600179 96807854 191560102 703549015 947659197 238918284 614576486 668727392 575781042 354398520 608355203 943003847 690164792 819794028 944387216 284460892 810651826 85611496 966591189 498921822 972568422 86687701 461804177 668608047 255941860 873338521 436888861 395696299 200199929 193474002 895949306 361381478 840551824 136229936 495693655 185852407 54828128 41057653 771119916 264096014 648175072 916792282 344531013 955371098 320112182 576330406 151418864 255221484 237857595 594654987 187137875 45657533 480556889 339378019 337556178 817751855 192018135 916447978 540712218 389043911 583435284 796454610 573173340 51267856 556617659 831440093 899945361 873893783 936303948 945199459 524708259 72468575 91522649 587595534 606192610 125710885 603636339 174479217 625267216 937693153 284733492 464145934 535911048 3323040 368864517 752406477 158025536 822448410 587524881 502928322 302981948 442560474 913003611 122675780 201301789 424269186 612228832 285886669 21366702 747110913 748561644 265299846 263384993 437535109 159877405 709207209 354364180 807640045 938206941 198894952 190629956 494289229 292213027 485489388 466699230 382423065 29088786 544596891 56935933 649967168 722422475 504793295 971926058 461465178 167618765 54734955 555134798 167612860 532846948 872939860 796104573 789617471 133347304 926152299 785179039 237105488 972240979 162302924 551183875 637157380 721504682 203827388 498258765 370391136 697965005 20402150 506450353 878058579 917954860 64893291 713625784 331178917 433085886 979473405 976744030 827058048 97075709 341069025 152976311 555000476 296212904 169458001 150156287 652667825 159525097 595312018 950609445 433929550 933879808 303941112 554843705 330287756 703245735 703378532 221410987 951299592 116316110 376745259 202172050 651591539 605248307 869155431 114132742 103919272 374815479 703923058 400273914 46055649 338144926 627433487 595595098 701836889 529315062 402637870 95589167 678765215 116534447 792970232 364274603 898161113 145646189 504153641 115443799 854767100 851437862 818233954 248236342 243641683 920920467 134331472 96976824 820864370 956884479 559964570 720045582 231792981 374161141 462224591 682950284 3591090 650781713 725440820 923923574 198990824 753084669 794534554 360485933 866065602 437335849 658374120 415557058 124609146 613718653 985731911 19365929 296200423 202447885 77570561 191557403 719164182 783524853 856155305 228662738 673783972 459811457 207062042 793471541 743300897 232539550 615709877 737393256 940145336 512761951 656577867 242275593 203256798 260207623 530340223 249253410 867730959 84980242 293928574 418154028 57783814 334398947 464921148 926035503 869096870 13939264 142804322 688520143 230899643 6666366 461295272 855141595 913621441 105612040 878637093 357176373 544466044 70547311 519321380 12495573 324834896 116243693 133453728 63812562 351431121 129167699 186604209 956748953 35972662 129426276 377770249 321840286 423349010 333365262 416979958 662300440 610409937 420434628 513831342 951095538 927573652 64388822 435696755 875382570 933868268 335320009 356653910 752297200 738373906 274668906 593833128 194535527 647598825 116777472 772735627 275382306 267522696 967936327 988361142 220958350 363264665 362909003 909661719 267685147 416825677 320750592 22801497 646940250 570840979 112012560 975857668 514657033 781351762 506512300 490940232 11496426 983291015 432361494 631561865 304789602 914751760 989250896 690419577 111926034 148592276 656348902 245701398 953947300 283483631 661887704 485492138 203092848 908876690 801816199 204473691 738143202 706096665 540107869 985351627 202135392 966645176 160215343 990921213 24366377 825198902 915049203 760484544 378102071 814387115 156467214 534861683 261919569 863688074 615980445 590392587 320977663 76157325 349715989 93210387 137050389 860869826 254945589 951544004 433620664 916879840 664498598 237073934 152163211 69421486 497218270 294825266 708840721 997819714 880952486 808762473 21250820 770773073 295033499 680289535 402628240 434611372 231098627 805608186 271342324 666463532 479711345 552251114 915484056 13846719 469527247 678303013 337048692 813350545 462236935 223536909 597099284 735562625 846102511 781273568 811955671 84401635 798380014 802851116 244799899 617676200 547027995 1140976 791078403 403878018 847180564 303817495 356168217 144958493 830163739 249627363 555165195 760012959 732356434 976590111 947045854 308945038 67799903 183338234 578903583 351501219 58611813 186989799 503074743 461637414 430385367 661688860 532559388 219813258 660393106 561837976 580144447 55398037 714669862 230142788 908897555 867929905 982085117 111478053 332216025 859394890 570367590 763938867 205176594 740652115 315111875 698952364 939942641 640884974 186750606 891902108 16762843 41017521 224847332 519807620 920557578 271201913 986879367 420508113 439930578 194697919 503021303 682765469 191177132 991271883 37447529 980286701 304346197 298154578 838320286 97956260 412788010 547608264 575532185 534226364 336572408 774318468 458101127 153151410 62687211 642424122 611619811 447958582 733660467 974496114 617498495 905546728 539203782 873168113 402326667 248265730 513968017 371770006 421069683 859207445 604923291 115937552 587393259 447189903 528801826 333831253 946804731 628465940 920074177 589655322 213980358 88796303 159334537 290322227 523168105 310307392 967205989 56466845 195400988 301945302 308298372 549290377 407818522 976875272 283764852 949801756 618545510 389243062 565147417 144708176 8062052 287048394 441896333 177967479 832575388 892961174 832493192 795076067 392401228 13752750 981642429 801013741 955850564 33152522 909373055 442006543 785598029 452700555 521380885 124122853 824192320 617399677 86232057 463785864 852830840 289028110 969773426 13649273 806397137 721024001 587047863 982211072 260360143 823114825 605573835 258968182 330968557 482613189 60595861 65797529 706197890 522200861 561053850 265775505 6895210 90021346 782722902 581605802 379049136 965961702 627122252 401265944 949966471 289095101 556415404 553416679 605046683 433202153 201549723 768250777 924641074 715892878 618066626 991105546 371427005 357310767 528096470 512852879 82287031 629211172 290687009 726890069 749724089 954772780 600778063 152787001 614094529 58009495 854022679 715307937 303898762 265533895 80163873 352591249 154692786 607325087 820696307 665052654 731485035 569096981 102782202 581789058 259205774 53091691 664821146 175446636 535620358 318371632 509524928 139203209 524245922 226175308 321919934 981523671 86738909 546983305 214610760 461052140 843200992 98879342 557489474 723025672 949006894 33456750 715997195 757803477 944813695 481531783 479667995 291867178 371971131 321635805 270567799 663785357 447577051 917695278 424005369 60866569 137344642 958580199 233503762 181969846 835996068 516048459 999872221 83462765 971714293 568098098 614290549 54017854 146747355 418676492 439499289 78209263 688108303 995817728 7108527 742898170 764590950 295341889 547215024 147133894 994641327 190605128 613316853 124454764 154637707 182488881 515753866 126956352 594114296 512334721 34995465 337243570 223570310 774474849 38322780 229619780 310683441 647160439 603249622 252966917 624283179 908204110 14301627 815403877 396686016 901996833 724290244 630154908 371030667 899772981 980329241 519751005 706445880 186982772 773475902 248034001 854870958 639321588 869718136 684891906 781700558 281189075 445397740 228830417 926024381 495645049 377048335 281372348 802671908 575843975 862032093 886494420 722348910 901375749 286710486 355350453 887960519 311497995 645370960 908911228 790601546 442252229 397886918 659050135 688828158 879624536 539711908 187815569 260237915 124844835 608713375 421837112 543351659 868379278 826417613 516870923 958140333 70233131 962638857 265190140 817149626 392172188 271204410 299567909 447929963 704624076 473987422 827069618 111845573 451493841 590249265 584030324 197821031 970709453 965310868 691349765 805682788 22075464 276139152 342885334 795754043 488570131 6038034 396872021 12953047 566393619 663249127 97424218 949848611 876493148 183594149 31735921 785302103 665339420 107166755 771792034 664822521 581731198 777043414 117393090 465520244 319279085 482299877 87884225 865984375 194681318 915953786 324419117 358928996 312576796 574928280 941977145 540647558 341146758 865758727 365897839 721376445 759824116 204568479 909209644 295778472 651326901 638949254 861283128 472699775 298771597 900917257 435678045 494589441 843834081 217494242 785377643 794284159 312837624 745658022 142852349 446750008 604565939 847488300 4712933 944961299 166032366 138297505 380123412 194443616 886734813 300391360 206181407 653824689 648917263 640165143 606947716 248008758 982834535 782690489 513410447 805372406 322867388 866742273 792849843 290161769 121223612 995572597 694575277 204195067 626830775 455890939 588686678 791492641 730597963 581524457 221597764 154868363 19446495 890050511 180706558 131434193 610023202 658828484 885396445 221596591 699126716 262642266 907045097 797079064 972645704 11362 534628921 449700433 637448933 495779013 806206189 15934450 191355222 690205009 32458692 850324911 435926185 386759169 811006294 391957505 450778015 411817575 157206237 225448092 997268531 448555677 63209588 657270133 95107277 218462027 129971938 634965317 334989030 185494276 262998988 475523983 859963251 813321748 57132654 390669064 372137669 713424070 999003185 411818434 74398425 324893358 935377129 35182955 141689320 975233707 985839509 720756320 229787697 183117626 234427289 580263841 114252839 981378388 720328522 757408011 981131717 873706336 7885402 435472850 618674785 676904454 343874914 527880104 499309040 732654662 321543934 294108263 219906234 680238425 260146434 281625259 377143992 863989418 237756184 974203245 132998086 620582260 759289486 950055179 22591186 959526629 10047084 871464537 71265545 241372804 175128697 531268239 361669428 110104449 930969004 723143455 429243970 668984171 111794244 567669044 88749534 91838013 921538788 440710512 619205941 488988541 46966481 928675226 132392349 947095375 894535056 289405227 156913317 78523012 678386970 308731167 423663158 83662666 965760703 480398999 669566674 4646312 920210019 865874846 187771939 880358958 252415136 370783096 219645490 799388398 901894280 716413711 901590931 467751599 6231788 107130129 165345812 889662628 290961948 434085550 486516677 524673916 485633575 287642784 3485727 698176748 231627738 106278179 608455621 596626544 168638301 470338898 814433911 468050673 315772056 637598786 706096256 542721654 355728695 753936134 190117183 467313983 38602135 250172937 858572950 262353418 651570081 384270043 938117330 674076150 234806589 808491418 927090807 759669428 684679023 879566153 433808012 144480052 672242343 936111790 423404739 433628761 823956076 554644057 860970231 125400838 85767492 665695080 768281593 837542962 915738227 412143716 328227090 8395144 615639723 167370025 342078036 212824873 342173673 557318985 299907884 897695987 610069290 445479142 486088547 144266719 32967774 134776554 325291801 78139472 868521179 394632135 348109389 334184611 13825889 135621517 529123350 435351566 827548125 476954648 764414447 525569536 570109554 348381805 821596495 354353699 822509682 270276410 834657332 974838997 916283198 328425428 499877021 287337900 176637316 331742695 248059008 525075579 412281374 982862264 48226355 528626451 833151239 350384326 47456937 148588527 177364470 575964189 956000551 574068342 47121791 14145462 471088309 603196197 8354246 230842454 922356753 460863223 86870875 922252750 415385466 930911387 149016533 294262938 133217015 453181059 933909269 460187625 729938366 691784270 303238814 467925705 598631665 881162483 415620936 450394675 143366838 320341392 872005779 165524672 676940259 129739637 919745688 370732992 151965202 776325283 226510421 866337017 825783143 855889775 284366558 277643368 11746544 936421739 246812887 88101535 654818330 758239202 651338971 266040664 552509 123375859 659664200 223924268 974553295 554639347 255156169 305188758 922302498 954339030 618730613 833014622 14220354 297658142 312953639 628378778 388911926 875711696 234849351 325221109 937333645 913966853 246377891 56395654 153644253 428455340 95289978 674682531 361423943 522384395 394607625 397399070 648933529 659888190 35696378 799354793 989056249 736931820 70053191 929565957 763211164 272983250 217157193 815015062 902189682 692201660 313532028 502725913 347424521 364427090 807101382 589698320 609551127 483982480 649003027 729512562 683771114 127286447 880165175 399104475 970779169 325621575 982327873 221591415 862889478 936570529 253582547 756006090 21996216 907228155 212849745 749137358 781022662 899057657 693993415 586349543 291347638 800630759 70237566 554163749 585056246 519100559 897778153 908134050 743758824 644966249 912808847 114157445 743702967 992556089 406512308 341343544 190197737 727733569 785164382 690813394 281566295 820997471 563414004 29436329 564612992 862671545 959450719 624871892 793151222 660910396 705838438 358367201 523402939 440430295 723524910 929613485 679857884 307525752 623722932 659435419 941263055 828786038 607558601 776088403 681874863 236316477 444501083 177654224 370626628 434082031 943484388 483593549 160595435 12689128 130012658 309580509 389117440 749386134 27315323 778602117 19496740 484279142 775738768 217267978 945953689 985400219 235499420 422113789 188800273 219406259 943868788 5200860 952476072 348761982 948933018 233792166 432831911 540809371 794894767 852379676 657334520 912660002 803958025 786901218 341077264 60355627 640766198 693851285 426750271 727793672 669643816 826989641 411446605 366755693 325225705 317052750 992120068 533056778 808671849 874512085 697637837 237512467 750150267 584811606 416158798 862608712 147749287 596690489 248346781 506239798 952261063 992093266 351062681 218928348 910769985 708051123 211233517 866827380 601542553 93608637 322322856 391450122 114708512 333934762 204627171 233539267 563886461 907559508 120823256 449233268 195058513 696006732 145575327 208379909 992558253 200773612 327029625 207331833 284064494 236184562 960791839 164991136 999445953 518603589 222145726 516136289 953356184 774184068 830819934 329415880 907114374 100841462 326010513 969085900 916655809 98719318 304281707 630660258 213794041 904027802 152276361 404726161 588960905 866040204 941977349 337847267 474848798 673923734 52600693 780724401 308494546 301140758 652293953 456424939 936847340 487341839 422799019 766122116 354185546 610911367 766206465 904561880 801652659 352415130 188784112 564931460 90192972 222167537 481079555 95175440 799034013 45564963 623635533 934505109 767525293 327012593 401823484 19151606 455165353 958785559 502571136 689492328 199049041 892098666 376538086 514587479 803630282 191515779 279620132 302464809 697208260 300414429 445423299 476048355 51740501 51985623 699583022 48426755 850951927 263874642 872767780 635722462 631352066 890352819 887599912 444898110 904176543 320238998 521861230 730172950 484829877 422265776 326570875 571564660 873670148 815027749 431836329 447833757 660692981 415478056 165776674 168438789 479444308 64960408 270533663 893443133 586077723 493515950 921672238 885976724 425425214 524241383 227550281 829390460 835619923 571412479 592970585 186018664 633866668 236519983 135658497 316536002 296759730 38077112 170600108 791009156 202388625 300471824 590542290 135092001 881128450 347857556 919131471 619419501 86365008 532892806 752473541 255320930 25368094 776752466 539013647 440532228 311974816 971657800 633924976 901145516 652223821 868787769 954221600 529386384 94322886 740173047 276323278 790577449 691381554 304895238 808216912 125668116 256965369 722447364 261980112 511521227 87433589 88907753 979204096 281494794 688332110 940848016 518334283 567397463 617744521 644822853 932371878 707812574 859145429 750822518 591131841 963353177 704916249 504969283 841600504 619908911 705696209 44963926 779931345 478037278 149605886 796191213 814342546 216997471 547860803 287136697 701327641 164670190 956192434 686326393 181248603 154617189 970153085 736644501 735182161 590977974 718056357 518091778 543758143 204158750 108214418 484153848 902127036 359240699 57842579 930609260 955252554 207313285 582179972 411182050 149503639 182810726 405062057 5404338 579036142 698450619 505940401 164277638 783045503 506752508 101588191 7641571 127143947 484668555 220608748 972417934 398455714 832377069 734675797 515357588 679732917 422150376 191867256 508329029 786963722 742918829 76069475 427561686 533610006 402317877 993433883 276988201 976161443 822842582 304088902 899344225 375857372 896751163 501016939 120518318 37765406 529009890 262401979 327323755 548970624 292030947 600485906 682262494 165156933 456419915 810807944 778415821 456607863 303374781 735074461 477109061 659807931 274314304 507212191 200108846 836399865 251859554 32949970 367539038 36611695 301987747 969375643 259159979 285008803 422746999 514622612 457568272 224554439 865526078 479645090 359498 109714380 639971220 694187874 786445450 391234631 371413604 905956441 325237072 779161360 696151045 914993243 381700408 94570884 942378537 254055165 209699589 915130390 242615075 931060807 676359244 362431349 393554250 547528228 78878746 427527846 554006935 394997178 299729276 478631122 520056750 244246094 337156541 261577312 984669626 179724356 354296652 71958064 193344453 336596914 822081364 567412870 908827244 835256304 331849494 591825221 139299506 188826584 572446441 125848743 875967179 567488619 913001668 136169265 246642097 217179333 928175814 43350677 986807319 465371562 177588630 959345722 307786183 413511456 77439426 518395660 718874620 589646782 174064634 987122312 646209780 131773412 567667374 707185530 864549475 748343974 520291764 457250036 401916643 98585721 797751098 613144600 378383416 838459096 106216903 194828319 806243452 849511946 503615811 733705218 297581377 314085985 476757790 663359401 651561424 843932590 150125423 405902196 995651257 859426084 134669873 139114928 777956079 675607606 328508997 140238331 11916401 880714919 158068915 605188419 430046974 895253295 175920172 290764377 506790370 521436806 169025477 745807703 50166284 797133111 150500439 105050786 518850020 24957764 809108095 204173539 528415120 548364666 457524174 871290604 192797003 308888072 605194561 602427361 810653884 540042911 795827209 584029762 956417468 22856041 113396856 357242476 212180993 464795408 714066368 887369732 222936650 157407104 595381299 940434336 768106986 651170457 630397834 341324930 496935474 601188409 440374695 523697219 476765645 592879629 568720040 448675532 748862751 350695150 283658606 835803111 671321004 472653608 361794577 369999570 585140663 504324529 227159428 161696516 510131242 532436640 147010915 93254554 381754826 145450440 573780926 544788882 721124109 944654067 722889546 821090923 349103423 918560956 616311982 185950908 963717005 307989263 674625134 539274881 443887404 808306522 362860895 130295033 795254349 235796260 938452567 486957133 940038959 509191929 752520683 742064528 95189752 846410926 801508503 203160715 676434910 548609919 169174650 591291032 399620024 124429317 584431120 750022191 599293042 492321865 284895940 159127865 892264198 404503290 768261167 305326633 305880656 560202786 171263945 209044148 931792348 150540826 282397577 497374383 396762128 404937349 752513567 768311566 706198685 424658009 685590664 651544939 880332268 502975991 587729826 652783558 921330226 542154399 412953171 435700645 264354967 449668061 50373611 554702724 214381261 755940263 557299695 731618455 465387199 535146740 355441585 651625786 625948557 819823918 671088595 767037214 446022192 139454187 195365026 959006617 116443030 137990695 273053113 827203407 997636041 768579556 829915751 985900065 384294397 152577164 65232362 321149418 922132339 839561959 702033856 792336962 551679917 663752481 329634890 363330553 711458429 904567004 693305004 335710396 284495661 634566420 280681056 248436824 344824473 433650104 168774729 295738204 824850345 13517911 516235016 454527954 500232439 144751642 876355507 641308822 178396094 517757719 371959000 237807122 510563198 842077216 297825875 757137483 457510502 243903416 68987464 322836982 583379945 339988402 774098803 916910118 794832755 368448408 201278305 149271709 980421484 330161780 290042133 592347479 383685532 411318689 960269327 4501626 71662038 236720129 599703393 532144714 36910835 679294393 856458697 321453559 188522764 670981827 374845579 301127531 751640392 970210280 929677684 515615454 924724619 847612853 183804229 126647603 926934908 54207340 439497079 696529759 130551925 782781535 800998511 172046152 135878331 894205663 520601220 735920090 978277144 967731556 530007415 912776846 918619508 639649177 191586118 557274821 433637776 121242600 507375679 107916824 42718725 727598457 735504777 688933822 487298897 972154611 592372248 610851011 886701729 572416361 669092081 55872162 825935052 815561346 785290077 422693353 932686384 316555123 315801437 405971617 373617960 325520702 695773679 922171159 418479061 455983413 264270461 997555455 115250312 324360183 103381170 729916168 184776250 935104603 414167434 557082382 730856952 58281308 790086421 787240128 706968047 192430166 614183948 561346848 687044054 544732148 493752792 627878409 244632440 996458437 120921588 503595754 960038051 431683621 681601307 204189609 612236569 497837482 414637575 327697333 728416303 279094332 818237351 445598319 431895430 388141041 169447261 273251106 765850183 651335267 808731257 544078504 770303535 482021409 469038513 668552929 465280292 30055424 656207710 965274217 812838818 754507799 361151402 35418100 103899426 43906815 830310492 620332071 367374753 323610407 62781870 754137812 597962281 520433030 421621032 58244861 779811540 184871428 872693227 628972897 363817260 153094551 263349303 153545387 620864149 390178747 707011974 226827394 105968285 840761696 908647040 508725478 789691148 509769622 718994368 845562086 245667631 303736144 670017 219831190 145937889 843665459 405951478 894045557 847461146 426732094 710076748 960824068 587028798 276724355 154709210 392260564 814181752 285051681 904058581 313297876 354393178 350852009 171025111 544619859 240197133 808588815 431275047 628338659 61577852 289522483 783339592 649810031 746177963 767161455 394587043 101609486 952417122 965121519 758901910 101520786 875576173 880523044 714192432 713302128 199215258 36944172 758899441 630484052 520528496 464196542 170531535 967482670 652441271 880616257 539277526 193955726 135061948 154897283 633957127 213312644 118532688 41096251 171341622 684423523 641158261 483863436 15476334 89109541 171110878 441137477 996234787 597451444 483203681 419712572 461697404 517138850 518695589 781736775 26075048 736717308 279446659 250941144 213440362 511744919 285029173 289670818 340419949 904201994 942207817 803634978 585730139 320961057 298064817 614652008 484316411 531960941 7849671 897882699 315365147 379170983 137796079 369705105 856020564 273925470 903784379 291011161 954328358 593472392 52848902 751326797 985355854 821833876 186681761 623515629 526147602 181209718 101464803 491496625 263007842 300117178 11120295 750704676 865732322 133056155 1140879 111125352 282462378 97678636 146037055 863952915 337844943 349462361 191688957 193766149 850727789 263593642 833781923 494944006 869781194 655271938 893318488 575568433 404277802 945578433 755595552 139498675 147216389 613666320 386202544 797480079 762348482 876234339 946291815 253386039 578259108 887399217 843473519 412125143 675929657 887175118 57186107 226038111 350493705 260207673 652230253 993047762 513030465 154815497 371185178 346270428 531250500 22455608 346371694 396785685 169064665 905882684 491332831 972397868 168385306 810107206 416639091 272263910 598794024 24686594 136296890 158454049 945508402 120319247 656811327 346877096 623109194 159987269 939151376 215960234 643686946 899031406 322002352 768970645 578196677 84658831 71810461 550699488 175425704 11909360 382434800 290946456 590172279 371910479 742108153 305645618 924841244 151861799 706581636 134732137 401137244 173550787 194273918 764187930 125964101 760625356 259975035 560045722 57619907 358318900 954281419 824487971 705399473 740582854 206703420 285951478 45156479 882010787 509565447 890941726 309220308 265938264 908403021 393196320 444925178 136480449 429380110 200785187 881042953 498377574 322742189 280344622 569877736 156791357 698536176 363656225 93769630 479630481 205965987 334963107 545456082 869327078 510168508 542625304 254821039 251574164 952199507 901440381 499552933 683733006 777217608 159232187 938132699 213436774 796543047 532899549 678342917 544907408 988358735 883463642 830715567 376169430 445985660 915224179 691956759 428027723 131747636 974925224 630900756 887636501 631426415 529330840 99831059 936461352 721343442 686838756 75636211 920953324 700178673 58592630 795236505 170123126 876211554 74545391 134574997 23059192 300161593 193232871 98541094 681439305 157397998 258841669 21361808 794404963 911032311 274372877 949700694 138112488 209092711 939976830 262290987 709149248 112113816 569403447 962496147 390880398 219794889 791597311 506388272 354246257 129221375 678626943 434213452 866205777 321424941 720683583 422704183 537705901 170175032 574862116 894243602 278723583 62853702 663673232 350858 53907620 450487398 357147971 428658832 791690706 313621508 475130419 958097534 558206069 67277717 289566238 466404895 690380580 526886277 214682898 569749786 127678522 816510933 34376735 18820745 371714131 714302139 159302911 822892314 659069622 678275732 982694186 667412940 44495131 565841601 98222720 315326977 131370997 546908672 845908456 910187348 278568781 54762691 970241447 934977618 662419459 571672355 942378107 945434950 143021350 355428948 41450962 817607914 144459346 529928903 864760801 245448876 610670517 232627623 941211335 501621342 105764163 106599347 619316724 86358121 81995081 433801728 428780907 939031494 711068705 493625047 199407849 7722073 560799508 552835663 28323830 877832995 740234804 282034818 969535558 701655946 281817367 578481865 300072734 517323154 185458776 696438762 709419987 3635468 397392298 563512500 283582554 509671533 773563989 234138821 424115096 890483754 658509985 98990330 135397209 903025731 928214777 421902214 973075637 476444011 853529554 744461376 822263873 923406749 313520979 75706059 353955939 350518828 190160011 384066914 882003901 63152578 525281727 742362276 630460358 149058130 471858143 203880316 180615862 907660642 32550207 938186859 801435166 405851722 157449663 978346580 883730408 260419625 696826196 725312715 754887594 779715230 272323740 576531941 326516102 363909663 593033363 853884301 123857582 919589482 834655693 407289707 425647014 255154493 848822132 719718502 691882432 772887673 157105595 326184040 426535856 722084485 791441136 102220128 874123022 953276446 294263993 505287068 510024215 772645980 835659719 972512999 647283581 359760063 61736979 94223716 610594702 905330169 286296728 727163246 55526146 698401226 624897926 851818792 282673503 500585471 825204219 240745400 457747600 317316205 898775734 325263836 618739000 746247595 600931197 831084005 586435196 257448301 862994803 394370265 523688577 749239838 170364182 534553557 376865811 176666081 348161403 24933134 782529690 502791178 437706388 887011690 694000027 991602012 340788366 38804341 216040668 802175649 775366009 10231932 225652767 845013327 886155655 952997001 923187530 5680953 861233209 346572000 478471972 444537184 177929530 824761634 788879317 135748435 331799052 697465892 565686436 833218777 560117644 126728682 805610859 690167066 741051933 805413151 145203792 148619499 282800388 693047117 725199225 407022603 888303725 506317527 10340532 317052566 824865807 204474561 783588494 619459976 181904549 392081870 716922066 40634260 129965893 235860918 421925565 692274973 908230552 447746956 393810222 334231899 454373315 417969972 395949564 719552015 506568668 307611356 325401170 323375418 226182637 392068571 702828978 461530214 888288603 260614486 428250283 8851294 4931916 350123220 289774074 943669037 183991898 853550663 573728016 239909101 724478476 433379929 658877119 149272441 648249158 812449009 252249747 636388147 342264012 181399805 956477325 651083184 549316161 323574923 290601561 553590932 327469451 799567223 753329137 811340119 439125123 93864243 816985664 252813186 716967702 841436081 722853853 583919269 362673853 333779136 226107097 28299289 544007805 176061065 213241770 743003887 96859998 642932670 254603558 677459635 671307900 925061844 548858572 389349167 881749549 204127796 194526774 73943746 912882941 52123773 764318665 74677085 148385025 142524311 508351231 188430881 450093697 280299044 461999266 821381654 487628290 18488720 595940315 643126378 735136051 451772095 223942400 611895330 515881010 235212023 527377225 625990716 531122132 107766293 975075267 799090782 357730049 783244788 842162187 689088097 785790012 438329780 149569141 431309344 160630473 199275402 852003483 374951188 723675204 741825399 736116869 465921764 615050257 710335672 376370849 311754746 856118124 913578492 670552623 187727232 309573512 534209556 35239524 494256089 521874610 318803472 338855214 653526172 643342080 223299688 303111608 170461552 353286885 207562842 810233101 158138699 184155052 116436302 96527886 281643285 650064810 388201727 835137911 522441425 312212759 590444970 596277215 312096377 318506269 457291694 995355916 208595631 331288097 540363162 926052912 729430643 535175300 669774873 3014648 15128339 472860337 117986348 283674693 10231241 388446205 884114156 984364095 729159814 360113643 720007673 311502558 419070388 508003124 596155666 170383996 809696598 793050584 253902376 728322526 797070157 813891245 290986789 117275631 806712752 832641506 192053493 123051899 725462211 241746302 215819032 837280204 496969945 537987114 735799603 36452414 95923893 312234366 655592530 669410082 295195609 520140598 770408640 374225384 150857996 215863127 213133167 795911088 202150749 298253915 681327849 812866143 833583981 379760749 380214407 708467134 447315821 523798650 209222221 301557197 76493824 525098883 140127515 102124635 560861982 681194769 408876862 270760851 594512465 670024528 743160228 316184760 592641868 73237684 40306906 585589316 965424309 610608563 552791086 739200918 177759845 188460110 120751511 587779621 753536927 365239944 780044440 346234235 512563736 30460433 546137636 683375064 35210644 584644935 190721545 528884550 385037804 402632737 907579443 253975067 528112898 580695574 404302211 1167184 349037603 586006212 786121326 591257366 35778936 685044067 209130525 467765944 953358973 395989411 82875339 428435846 743829455 524554689 676010848 975493507 289844611 365094529 764975968 966937144 3887406 832197290 474577487 595145144 532079929 359069648 699509205 721519481 784707009 177535119 127230542 677468409 248345339 913261086 980497235 794749789 227950382 365687617 68776429 671926288 782636806 783580296 283635057 461504749 685984100 646220687 374015508 154529454 662825165 515792485 606313801 775873446 445841990 222863710 537821792 688744416 572635507 676227513 515352005 796466949 510497986 722440793 753792822 891109539 368177853 386086037 230229655 799197899 720859521 783751200 809709094 187607723 313290646 21866302 333585042 862282366 651246240 683525285 234157487 683291718 730572493 346540465 374222322 639522923 895094959 33229848 772569714 337196944 980832836 296048104 999762721 863255579 730633130 504841584 43472417 993212568 472986396 762275352 981726858 807610631 133372858 752396794 672175972 797057703 213469025 744242342 716684824 540151274 196300036 109510094 577823192 297084094 762668927 516486737 57597728 415972038 27486817 429607103 512687804 696374796 681230062 782145078 339715921 743008466 23903122 510788938 966783832 628831512 61379683 866151030 365308563 261867072 933666959 768933083 167942531 864964723 195430276 211882293 991131512 354320415 502082170 456667589 146828423 61222415 175848136 838389301 455004719 390048309 371712788 831934216 36280337 278847442 505056304 740062928 587092979 141099063 369922940 72289149 976448872 814264849 216311176 191720830 856896931 945648662 759753718 24886901 598800935 75390393 563769485 592222611 960141244 641684604 973493214 194168632 619292297 451233562 93198328 582352841 256793662 582767461 567154147 668236970 730377924 113943592 809687368 744196623 188340164 230406082 800341957 351905283 844286045 632210705 887557361 88574232 191129459 227941732 704443162 774064288 740111235 327173481 625017091 690002333 562297763 942101691 287227081 435564605 445093651 431830222 490454903 958483686 246343583 116710425 363949798 282955839 782823373 69660796 967540278 785966021 968567829 146969628 278007393 6942379 893663975 817059896 767888641 982703699 901936457 694679815 385216999 690447476 19603549 404883931 645433682 627849864 895572006 111799108 160355812 90256768 110128728 573187528 174579048 225121681 439582070 662044481 266554083 894808756 799133625 922637244 159029447 529574399 749248217 361082785 224131393 208511478 947950963 101895542 584323410 86736151 962832649 214071770 448547578 973431093 231195231 154583793 825578702 136016879 13798059 988664368 151623504 835867087 622507526 633449512 606895347 9213012 398288598 930630101 842859272 338061944 683725248 743540327 380354749 999471424 223507848 659586903 954604079 270528963 897723625 881235022 29423761 843459419 44790322 627081869 403648278 782486605 671530548 585716426 390413834 949564857 237913633 944109149 693516807 563221172 825378991 909558547 648170044 511807 820637532 512009148 30482032 797076538 752692550 23956931 748843484 888259375 679223810 641427995 616947077 757411523 143991047 68849059 259754787 33695157 947888144 97021357 604007715 874574177 270126769 387290916 46728465 8190158 345748207 871074877 167404566 640624510 140561954 545653264 913048316 9797460 10985927 352235906 619034892 477287267 746718959 412701791 139207458 345953777 351558978 361446563 640171892 911010217 718675590 80550808 175716421 51734214 50404004 368377657 636547857 970640126 729933895 51206662 404932826 523394678 331460782 796484651 158176850 94445428 457925303 404443638 912723103 407792077 577247186 418431872 737202594 26272865 897563230 119933355 265238734 911257117 784735253 37669945 83650962 443617017 505561689 694716046 232623430 652977626 139254683 65952875 725619947 666525246 71079840 431784050 712249283 576965697 512356215 163670369 495070921 617391014 114286450 257499937 242889434 122562710 127306074 784389131 457685239 16957335 439820530 332273760 940648040 515791340 650147102 348676749 465019944 201578474 783333734 244242856 794374734 389188560 651438672 549826925 144392684 898023606 667330143 889330989 687836270 135399324 895227387 804428743 734609894 415184642 441495390 675155519 938224162 83211018 410993785 830669127 381375768 50088243 75433170 65272139 923010989 779494136 18220044 583267391 831061641 231602936 196058255 677469990 399252099 173887055 398072410 229804782 294980711 225131932 22414344 55583532 13215844 755325886 508225816 863837536 936382441 337198959 856182653 325602697 786370286 602290433 548369226 635186453 719549884 312714484 943872727 114593035 879346843 264280495 530833760 982709858 412909445 222731843 60996372 943509943 224057820 327823731 682786083 772464654 910634776 468785744 758785812 319159373 405057237 487186377 980557371 226414443 243534438 694633299 686299098 316886408 798646027 387628192 200714998 315114870 518747749 575875060 80005147 162302940 290831027 935632438 282671240 613916414 345667635 854694452 841789099 410423584 717130676 538360335 812705284 292437523 819671315 2133632 653688841 113628212 127284951 799211660 402061294 972030639 229145484 411859415 278873286 554828104 959821986 961471326 557365688 857139495 975620632 920445307 484883070 975191324 293067616 881455551 211738166 844220038 773510882 286936440 151440665 42666659 149825604 690193619 272820833 504069066 578118396 623145450 396625176 512845380 102919342 934217767 95304096 136902455 129679624 897192945 367209211 479615335 255033796 846810651 517244453 108996694 933321551 320346427 578302666 140896894 697650553 288548040 190015864 376718235 866661165 856999202 532095481 150713939 722320711 699360278 45545845 74388588 920149436 527656473 541032239 801067928 914027707 931908157 991328942 509242046 447107663 302327833 421050702 372019372 19323126 501909314 136684097 136143405 506020570 435249097 562523571 857780126 510576856 34776699 981056079 667202054 577182658 730356167 126815077 781869931 644818991 156399269 844664220 98862981 159141965 200831401 640781977 481554560 798532005 240644342 579254171 147116992 785098424 828950800 117638250 340549015 693105674 877987675 534171471 483175176 619955435 73397856 742431087 895042443 462534373 836310309 735390564 69967591 793309100 576168342 835759009 348702581 458648973 186670089 659115403 801464625 777183914 749962768 428040613 955372995 20515687 739991647 202208594 827718703 306167612 286671286 673183123 38230696 364944839 964680637 889669312 187456739 384357086 649528306 542934417 586985273 576456795 34796218 807179923 159532807 812624067 422793209 693356051 976759855 202209662 521469434 218277983 821237107 183715963 618493896 27051187 113622423 137293014 269703829 737854967 902664868 26755058 870995826 785313886 576653724 228664429 23450347 839406629 840411787 200605764 257553702 658564717 623803384 966373475 720568814 793874021 925068404 79471299 947932757 649054762 355620827 195884554 98536477 614684301 125631386 795312624 316867033 200368272 872202175 865563471 345613770 509897442 489688351 612829555 871866882 372129963 357447356 360952316 7825971 217478496 97240765 492634281 685668729 853611106 961907379 171137362 852794884 900209489 344903483 851295793 496335249 916150758 324704246 350378779 873444255 12283833 627668383 181895622 474936150 818967835 685296248 496303556 220430946 119099458 165998938 35182131 585904171 450125476 485316801 277682442 743711679 967267386 126494859 35005394 957006889 823189900 508666610 238512197 155377806 788808476 739534716 730077865 532566358 977996965 859412275 151145562 74186746 413241189 264202015 937381053 192826005 711272200 478149022 817001419 514651371 152812501 195087880 884063802 473680037 515996000 535968975 205744154 413234364 112725641 642903445 522801744 445210093 578956454 764120216 617070103 673221623 550394668 631256422 222801880 941765746 609187087 110060423 112898725 471053365 291960129 259261822 212785923 613967008 931058186 145521398 723118945 358155457 116516205 516480705 336052624 761178950 59133017 521644251 241073502 301175083 909301684 368338462 125511724 92332999 960455322 541733068 130928496 864132614 925172912 476559636 116276616 350260007 174111116 361036428 756441668 148190240 940287571 497959848 682682868 767221137 600456390 93374874 639133918 203654545 787948806 294425357 511348806 122489111 419065876 109740122 362518282 44483718 804669693 967243454 143483080 457572675 950525842 582831746 778751924 436638644 117708168 571148985 36099642 849621688 732401439 231881912 360774341 620957724 200336156 265692297 295540750 49711935 504200518 553497694 469224875 722280198 290032600 343336462 128968448 465995311 590104119 427497780 986445603 900501951 847663368 421077301 587610408 908608522 356501621 996923059 599221227 637722948 237793575 971537149 846443971 218077022 996162387 787560112 675459943 302700814 624428762 795676875 108410690 678264706 503575784 619701731 932542074 829311350 868784478 134120685 387778028 812554908 892435414 946490665 916509976 495026650 687117436 807813398 362315990 30216513 308767041 608708469 467778364 817385429 948982819 828660877 470566992 826524460 676770837 188697068 652057906 99708371 306432177 394174871 531218761 528663808 2655569 533601716 569139962 242736840 422388902 899167758 308776926 755805708 949763306 592486535 798118668 318487555 71894973 246768699 781801205 403226416 474683646 627636635 662393384 633700576 556790472 322933745 165303999 883985927 762548955 299797306 570863453 631708018 404470907 755634610 113720643 154046901 325518612 414238405 591262648 62910672 85409050 261158882 550055460 824613480 911562606 547010082 131829496 42612602 621787073 563617764 79905105 90049648 292479818 379621115 777193978 92545927 901190073 441904976 747842523 591488003 245598755 83303053 313851126 739840284 359805691 615021840 234847645 352566148 401437768 27892703 717581580 308912614 651973344 399510969 993216077 640993008 770285407 403445328 439337179 227905393 547742374 353461971 744903603 69384743 706963725 328965842 91806907 445637401 976108111 451236341 750728294 172578416 375369238 346342673 643593716 173559360 833149289 375979469 495526847 468319246 58598158 675266548 25299899 389150758 929700576 7142166 642608987 870759441 231196484 558935846 423787101 812806984 515197370 649010247 680087246 770258153 204602159 776427025 135887873 478828314 496827946 571006456 129135188 469994547 957362573 863672355 634933201 110967794 979624835 385596189 764487285 144170901 375894565 407639556 378448030 793206438 710404487 504226635 773351231 852917891 830436973 792877407 167157420 745431649 821622329 668177575 553663134 188871042 913033615 696941687 948891835 348617341 134060374 884882722 316555608 647367147 615727441 269071161 678495797 990660826 770533897 415844869 768093570 831282790 321704311 75067658 947680285 20531017 738492388 239055743 553922825 264787852 510067497 509796632 802718761 604347631 471972820 585390043 276044572 403780791 866091292 926052495 100764283 472416005 934696264 32480157 669147517 947436040 217856794 855329557 598170514 195990358 203219695 29270198 949268816 890026301 788522354 771847540 889891615 702605787 699482688 707171212 308812595 735366848 494782859 375168902 322127824 639204310 445325488 618431973 899639851 308679552 280114437 610854067 919422286 357776446 398216878 261711277 783221921 863778400 484968615 653047982 955394872 989999806 708130726 108860951 149489019 243530148 508331449 543732176 787487103 928365109 224880369 766443143 849998039 652332779 74424894 448319560 776743598 427691070 421726046 629870533 541419040 481958277 149998422 345188751 931278241 353536871 568437757 616875821 182964467 260302360 929213404 681975825 954358224 693126554 372964213 91323514 458142444 851726785 826164827 924675062 321283539 938126214 76252255 490938241 262652225 389330114 628472448 843862795 510716813 367607441 974183799 356481359 438063447 590483459 803923127 533105308 840908517 455567648 890283579 695820519 796362971 91683419 728135298 926193812 367863319 805171382 498323322 344556286 240986730 941936105 300190980 165944845 981089560 885909892 436415877 448017650 761628039 995200822 179092058 303478587 168667663 23580977 258281727 758070052 608652096 339078320 223859392 858664871 214646235 296994106 746327568 374263803 360226015 704901524 393132183 411870572 552962469 706400692 849847138 945854840 891996121 1694027 500691029 37805180 575794807 622554396 467427470 648791264 936668916 537795676 149954744 229757447 169365175 644543171 504407259 834293077 219667943 858660837 3467261 335117224 123971043 425180414 837068305 860529082 316387725 940573659 257810921 734081453 658353646 930965847 909642053 349347228 589987885 988690983 109352100 323961347 400265798 578052439 937313051 606069838 298674903 158386060 631853945 787978893 737206271 2601766 448170572 449025867 341224712 674018661 104178471 345154607 999292136 792140990 104560496 643328129 503246743 623759 744209243 389190599 959131568 980046461 916060746 868170010 525992923 650323911 842413300 642627781 293370636 43439446 745555033 148331320 245014469 707317367 725194478 47452127 692484594 941847695 74060551 937616629 904565023 776030748 889218984 882814994 795336685 524837662 277174113 44428377 956409487 577515647 153333372 265784473 470486738 408068075 987013868 804425422 976395484 167424776 504064162 838658055 817721912 504142190 989502743 293976587 418806421 673041968 481914386 246342857 271739292 712563528 622811687 742767142 20454168 56200321 201897623 572953028 725766210 676756854 314735970 75138923 819938240 76540681 692135409 577674659 846838595 634895164 555688344 486913099 306911309 345695488 168514959 48722145 54282651 648600229 156186025 498461854 732151490 729768335 210595426 89202369 81145658 641929701 788181484 436603032 134280701 504486554 89941474 298959386 930530051 190973687 382639010 240878695 560470808 355873586 858025044 871906758 388485011 902323149 988058762 927242431 729147963 957540230 986097134 677450281 449548423 131449817 160816136 87230997 857443361 237163743 382315401 341674194 479576909 303288599 176110845 130538942 708972221 753177988 335878757 92819334 554163738 956484041 656872860 844234643 320907263 106551637 28902271 882573499 847909080 104705381 969335191 862595547 103526367 145330528 818960358 68000063 361120094 202566062 399502171 615026707 193708113 650170873 706595367 204982750 210794211 632992765 781480250 993209779 703012602 388732347 537398584 302169880 685161873 703447974 907064006 266610795 513806784 190679760 885936901 322415031 38331653 257614477 754247146 510343910 197217910 988094454 228060769 565626355 8753259 322315471 806648187 135936747 939848067 252126729 67559431 860617645 825428840 122454060 988750127 554577261 875398532 36368327 498051567 382797003 163230254 482884653 708257611 561572821 108997314 155944596 374324815 328788455 646731571 118768338 823015217 171884696 773973340 661258886 568468589 541864209 711192317 52092143 973408555 422148875 665195250 801399624 245585238 819254345 268137976 291934916 731985923 404807518 299144842 44525851 681900374 646912661 253624865 537907293 541145119 581004462 194117663 78060766 910924297 707098830 416119846 405687216 256784174 668534953 201689899 195903207 659212419 336185387 590730367 415764174 283912410 898071092 117769955 595469747 381996640 113245163 711895953 287502439 378359914 556085386 293990909 550752522 126268351 154649331 344945833 227445108 208558357 961733820 133063076 602383623 685673952 759820996 375016229 458703722 76484465 847037521 864582528 892829563 935561788 48699505 475368980 589128092 113799333 540935074 760100226 474834777 212698756 816706285 13103883 178204199 984080078 48185438 213928221 305327505 495947758 92972696 385317903 429161438 21795442 298631887 808413493 180734998 129307599 460494799 468895547 907467855 442996643 554124853 513391579 839463899 16640727 568579741 937518179 677653171 921917312 11247342 380237648 56805168 543507578 274005497 859138028 300120166 632593479 500421620 86692414 89392469 691403733 45035721 35578956 184623588 445854539 36441636 211547935 668064452 270160608 672687444 528590954 150705396 583392338 331813535 857145961 988994369 233200866 945154717 433536234 191255645 798367012 7285033 26280407 544375626 127101780 907047981 636557874 882266128 870943248 584080777 917152562 255195525 550771558 840084978 491958282 856179558 768840769 282832274 583389997 789679742 111328020 711673805 457440239 593357248 674431857 336977920 496019475 320670341 195523043 965631045 174952435 918799189 945239650 851620945 399818298 140097299 913935480 189591632 913789816 359416457 112114430 575624301 832605403 778069277 253132134 2583022 352149983 91099834 790981495 738840194 299240079 388961226 383408767 749821096 277357817 279000890 839363853 770514639 160952891 551709452 599794885 413311222 284403939 971546314 896213382 308383657 22050413 723649128 27962325 947456956 319533477 480384507 127574709 238457287 216626129 446851103 101122885 435003080 97084785 651047778 725228260 856182119 527997183 826071483 68194085 831760174 394847430 520938384 950388853 785392641 772864731 20987156 774550338 885559984 986009618 799177595 195725023 737442566 3741046 138297233 735541912 656574960 559198802 368816698 897978207 486047498 778352848 50791320 583726903 890954784 417061202 296621336 837170941 271260107 392925154 872300930 912120329 5154270 915257389 415211580 532285911 125623577 697817369 70893135 420119700 899407066 364060180 465509544 143917276 397997601 472649604 661423889 673886779 368273088 696492475 467713643 220777229 669822854 171156639 573408755 361229205 597593560 445384203 536485665 817282635 777986409 324578963 966857344 953037884 241971735 963309905 261403792 94429169 143496092 226601443 952708039 450858986 329514510 38771398 448439769 827422066 670031890 806966083 225840600 201441388 834211286 9445146 71565182 643334110 996615561 216938840 325010789 798688693 676030528 527338518 826813326 685175575 546067511 368110841 558648224 262319850 701612868 119285320 693172067 895783222 731971743 346579100 255920003 300719642 613777771 815450837 784226686 349140956 776986167 351496657 108751905 359427934 126694412 628045622 55712279 621248407 458888226 581673939 517449225 957059541 854145938 508411595 963476486 820495833 97829180 490281776 485069157 332454452 179814391 892500749 68186011 909281612 16866714 245897659 577404808 145450257 643250756 897569923 653076211 441377162 494997711 583190763 746261181 459225827 613825019 225207280 74856689 672949333 808010021 167725589 194393931 341875655 791541919 833457962 327850837 173378850 477254112 506208131 940442620 255632095 56625014 831652581 234357625 819846077 965408215 260637805 185489490 940944421 325212822 376557843 212421174 598339675 358435217 776616033 258353888 198955598 774947332 559307045 704359107 416901287 301208143 913822519 13000762 394855396 894107837 583374857 579200486 911762071 514442525 234129055 230647103 723038583 117257296 906853033 84086653 183802703 71728358 807070243 767093094 186156038 61108473 223879865 704450917 727278754 71523584 5750991 981828183 676267976 473143543 992392712 835627710 68873309 673219456 99333693 127493024 546917557 532864735 402428745 846410162 314707438 206134986 212093979 983087787 280879881 537583741 282299835 184441538 3740148 278838685 580371118 639400136 182829629 430409115 139997856 600055984 182020202 513431163 829632490 730399320 79896099 804194963 708270319 172306444 466930687 141212797 588963393 641195023 568765871 90428292 851901958 802215524 344705873 872974605 48093151 855712866 623389249 473016880 64434785 513207200 871058468 102441202 387349514 540269183 391258072 865069883 233018463 172665918 895083638 105290397 124845024 719721023 109419941 833093199 325902867 571133243 88309698 265907489 926541734 129509797 895234084 243337953 45046852 116942786 318423301 451708685 529895188 670165890 401398605 537395579 728564849 455523450 483393170 127371296 486573185 509620949 643603159 453319880 430103469 266442530 179212688 823309876 11147544 13782928 106470888 498407190 369663948 470258244 580908243 471535146 943764923 844962189 56293870 790630111 502686535 484897346 765532283 430909684 432869549 396544178 348131052 805696183 116284893 950720574 748633654 12502034 346453785 452107543 94716499 191847095 144271271 754610626 56590877 735797140 329221642 705103798 784381962 551689708 572493218 529863855 195914874 539249166 359179614 693077934 46462043 395257508 663404702 550652967 507634575 344498828 316593924 192310737 27950027 637739925 917718075 136599505 479513029 999155084 783594992 286926559 946975035 46676983 255627276 650715986 920076292 447705219 221323510 299490268 723955880 996629475 545989684 424265333 128640384 125470028 482003591 356318129 695231391 883443144 183541269 462120964 192822889 518381500 506126211 890579192 692590882 485914544 105774549 150832725 361038796 596264497 327380477 572204798 469174187 553848314 401730462 332592422 685284231 725464328 412587640 16745179 416921508 844824830 574465765 549124332 330919218 79647256 526039384 856147608 438383321 886446733 247163215 738172775 455747915 548953858 522818589 45886835 780433951 402250467 630476065 490951749 175752231 36938989 345658575 235765342 791225753 136877277 537540296 237822505 461310437 849955688 412006256 179941137 785099578 904565064 850694042 308900182 92348890 751790180 151933562 712032627 358531251 253562832 30655029 693305691 471031751 86049246 91904497 744292128 185181534 739624643 318214396 325337818 533683555 902703825 679825358 581165001 782337591 326184885 688885423 367640272 854506782 219810013 399787768 387022649 813888903 176532793 325952895 676190618 445308028 514032685 902420315 314743763 335513154 211648287 629635134 832508438 777102830 47722216 109815282 618174077 535719191 7927435 477370963 315227638 779582115 788912940 496296084 713073899 386173999 492800025 468769489 61875957 309545280 738721792 179156726 881343127 683770548 97477467 492746090 501587938 600579705 440521001 31837988 773592635 703259015 551978420 530351789 677362585 631217185 419710983 929836650 826732170 30435488 242800890 659896586 499320887 734654031 555470146 372959915 158598327 627455057 235694311 610750050 192897658 515147880 592692845 112292475 462082258 302497327 256331102 217688280 14526718 222819689 716363076 915373153 519552140 228935342 537501346 810375862 485787720 854417214 846185122 125911318 601015594 242956935 452944997 609075624 803531801 128217866 465936358 369483742 17578419 580829668 947997401 386265556 763181206 965177414 134420988 436043878 579953865 911853348 645791227 879837854 656462985 876871024 492940352 437439994 97571444 90600632 832233950 523615209 930218523 69678556 617933628 651778082 717280401 549884425 622820530 31053242 176720651 538324561 973450041 979273035 73835152 565022103 223736627 781696224 652700697 797657238 209343992 638030384 526445189 833443782 760458781 524769508 183640553 139380944 716011237 448691759 431513489 830585283 53572093 693894590 573571067 34965264 312933254 437511242 206050867 124504989 323577610 428760424 863067752 849715391 84583856 378873206 690604939 979499440 28403370 395758835 474139712 435703744 366134249 587936445 167884109 899602760 160541742 743615910 993244317 856074997 209330792 82708020 552796591 131216156 478798985 578520779 594584681 886163623 408074191 929036704 512315964 751895097 595727956 30405030 185774652 177138773 186769486 987288423 331449861 301685535 64408401 948414878 582069390 515333713 576159036 816121142 443410777 631938560 366626248 985653234 477019182 112756705 224103811 738225258 752986901 649416101 313981728 476689417 31498241 793670773 129956965 595194134 840394234 448501478 477361196 145716185 741591468 236555495 167899374 846956234 624508674 678761243 341741352 19549714 919303399 985983065 179921113 878691405 240628379 207445069 782949270 578976839 444513054 713025275 460765485 561853991 208081288 894236264 654426224 821422016 54461362 706996580 107711089 557496172 503270250 703068485 385543081 760356230 367448682 562696108 544534419 4438474 378728048 819267729 896470400 443409281 196672224 410591322 733837934 773437073 792773484 250827890 483881969 215238004 242612454 988369367 742016796 931709021 878555052 898147600 260284220 551596619 710605454 812672839 168280195 120620499 541478996 379856056 768058402 870323555 151531770 578559392 214473365 342777874 101627314 216398756 290516249 686083943 329794053 753961566 411601518 45558399 283678409 505784160 552943720 722717127 828747034 127780616 509469492 10769851 992663343 567550242 334776964 189500805 822389276 990322098 516330336 834216140 735236931 617324453 905986548 244754104 11050682 148416729 989220910 247486734 294163875 381131982 944368191 178101373 482380169 146882477 180735106 84737070 572376346 362492256 84940254 385854373 646169796 956447494 59441507 470869250 541409424 385874780 5161257 668229057 310155995 54963902 755704822 375771696 522362688 907762111 754218801 334560282 61034455 547297433 537068028 459101963 586005606 426166634 11481567 44860435 113427238 994569172 449595899 615469008 124800364 915867184 509624128 323355862 519064087 153729131 930072979 565455288 927293076 869575957 853908007 198971796 598044248 748238687 741468854 990550958 379644061 924515694 803767715 51223692 144402269 498665004 502441699 335007919 896701921 560954944 662353223 277473321 304110270 877794240 723559086 94465103 401227450 811956335 129301249 59789521 140598926 888973556 598616031 445735530 704303218 941778383 845109108 456930490 603963750 991853477 20832478 787028807 623915410 866650138 468511005 906896988 449476387 905306432 691723501 89885141 586316540 314533797 366338617 738482072 218461834 358999497 292103594 530915 404718855 398619535 328796459 450158889 662781982 260970200 957637354 158925481 214236142 894076045 857461690 790899874 288714275 530391612 55075976 547641161 470653511 925299513 61406490 430019035 296891459 419295974 1232946 895531930 596630186 347384794 325655751 499212780 320945632 9814512 753847302 959704312 57380510 947580896 825030400 22817456 407023045 940620446 379867053 183745856 808465682 796781112 1393782 31525272 84000984 687272822 511074689 627120432 845064513 12998296 6436861 279370945 831917677 8645193 239048784 434511811 822553662 816836567 852047111 262775938 119425768 164174511 894804569 127488670 808284757 926690103 514835316 121734105 847301924 895333168 426330976 804822371 510791345 941658960 97845354 372669275 610834421 107915990 577358970 638310049 440587958 858358166 94248290 985285460 790333889 618178984 308171335 581115352 189780826 508590037 962665976 619796379 182417905 470893054 785266856 690737393 241784085 85694785 253335831 486683816 618634319 301858105 333941945 967466436 133630947 688544359 80220711 663453249 887922755 216342290 82957042 167514455 490144938 803653771 421280851 523514599 437282820 171788488 762089676 274752735 760676128 539169516 727905571 466701360 606579492 396467157 173760063 487476763 731307485 82042730 781315333 41337675 729872494 454239368 320204150 718444431 210122789 402090629 841914630 995438030 289383612 924581831 256820847 717270232 742058976 525210714 468238929 265902645 970295775 283395025 605262249 725119379 131895487 44809833 66085676 323450041 554239383 561072144 423296791 373650058 617412730 103789676 356576080 520882606 167317895 352149922 9020943 177011783 611567890 940811011 839633370 934078753 430925190 983321070 339489169 817766500 781830249 420911273 966832730 850942790 259947549 652240459 746509328 346750205 817699947 101630563 514971302 139508222 654172590 155683021 494556384 458513811 31651871 386804063 234074215 285573736 420258859 736784978 530278098 191184359 632182305 286062758 657065216 862585651 679196841 945136438 188775716 770237955 42803837 464471808 386146293 527726553 564193394 723588193 25226973 637840401 668050607 769886962 258292041 966407714 592896848 245566005 575380442 373092909 671506599 412479708 800809603 389468738 43497917 296461081 32160567 815374452 456558120 992383633 858535424 156541654 424184774 436449758 954514874 694792524 135989253 913384642 311580030 745530122 303220575 739685932 282641605 691860181 5428918 440386932 145289270 755472832 695066127 377878809 86975586 364013619 39180763 745092328 181929118 58374760 746118371 421566862 309974843 183921792 324076101 96779153 301286657 953417875 406371218 293609620 810679210 196998834 287712775 737084492 285782040 479664713 382497487 482838437 497963883 158056405 27446822 206399339 886660878 425713504 364844656 417361636 960890394 476398482 756881831 611526391 119039096 940599460 328341004 33503698 457615168 363498730 785483229 52725674 995068857 806727528 592398373 92763600 384377658 910593507 355960224 416547978 613608668 865950313 854840983 371999966 212606757 817886107 642797451 755076415 550951008 540285639 305142105 876285477 197835950 546438406 305879294 725371429 7549895 70941529 132366161 463623824 289415144 215766847 896277597 462389475 608372043 960917522 918491013 37914142 909397638 110031339 95519565 70379716 974588807 45097065 603995890 965582032 557407572 826991930 452585389 394871333 546295692 540784599 523545584 86532967 933505708 334338292 398727654 708161024 4826516 179178345 41462055 55433416 689444496 403157430 815957819 44851415 190766376 832673107 502507366 389431737 101820553 248817091 384165840 888502314 421988883 32847250 329921716 551761019 244253308 859521915 963583012 285239245 231797624 651660760 617790594 335203382 176499459 885703036 452353204 45380493 480089532 767038473 528558980 880727807 417904886 177541821 330568667 680755590 638846272 660694817 306532509 496116561 867253509 236562507 753064798 255654518 110536065 778650822 614927019 372312270 777677824 197976775 657051125 577790328 192934428 135409590 70787578 396815998 184763454 58242239 23430582 471838215 908353201 55219 411368614 699948818 458312432 450215703 451482040 400557427 88349541 995702471 309518251 285157645 218951947 995098061 572581936 225378723 398657471 846889243 154813578 580422979 580396304 948605862 637133391 736528240 360685150 863197987 623506489 944547269 731314774 419059103 60108117 637600196 720649465 295858315 484330618 761019021 843158247 711177470 73001945 481112610 387596008 628730018 187404854 608475823 272237739 312382915 931036693 738115940 805030104 422558318 330823031 714960634 779848372 231036053 214568933 193084229 726199055 3966769 302890208 823424919 449230192 496139490 945049769 941004832 179118326 939167726 519631699 851071099 318112917 972627496 82845660 526327848 467597353 830083633 51279789 132003204 727742240 509398790 142704459 899171783 856736437 849262051 473856803 533706054 329657557 274487212 372601934 968088761 61015319 866687637 812766692 554122181 352397457 818448695 555629352 571536732 930938287 987265669 200003148 650363110 403385132 966309484 563585896 518949748 722787504 598055232 833640037 529273384 497259390 654077105 985929652 583949757 957486225 854509165 636710268 478285233 614348027 716598411 703994847 928313116 543134180 690751246 154194057 954107791 142997660 104770204 582857351 747194020 732562230 183909179 723787055 951319882 590585965 355313177 789424321 250595342 244463752 936031039 293061210 248271812 692927536 241880002 679124812 77099489 438037562 784193279 616435054 194807809 136321661 873728246 416395766 820127097 259710816 79871111 306860044 606452004 808906157 377167041 654138817 863622585 772856950 6297368 740236435 186579938 233983347 305598568 478131810 864345628 116201382 191065565 268686840 246111953 655732654 611677842 585060020 227856439 782249710 10334018 277308228 284849528 473186858 594971239 10778302 45758754 493197994 273547920 687503 957322718 411235553 307081815 556640050 618707942 62672904 8897801 348355893 895407057 299108747 249405569 443170476 157436137 725492237 47600873 424098693 50237040 69586814 735583868 371387019 307869305 483374631 130953659 664403450 121391864 863442973 407159561 522622144 994830012 231983479 341377548 570808408 320166691 222496714 770388034 537255723 749231506 996591746 772452410 512430680 272823615 672604073 301762045 440072604 734148744 567090299 581771117 220373319 761554871 994515167 729572636 455093038 591739473 471835468 401541402 660964072 962376357 79748138 23683075 738547287 680130686 268588579 842588935 117871732 717467755 762479279 347737746 788061299 959529084 544581201 298236790 237971986 490013113 498183386 377679503 332829633 969845822 347582878 94896778 802854381 879612945 175930739 158720095 61074388 873883233 706884705 858621520 417690105 446239600 489638230 725899885 959100834 456387816 53055927 427720069 242790197 641018402 206829028 614858373 707801349 532616143 975865002 505482935 992576174 123255855 855900237 477481891 4860829 800532549 107598905 237339267 170734544 340995286 419871626 406260345 565567182 194876043 990559305 884020685 841931979 511395093 903258329 348861757 20909367 180231176 295453326 195069684 93879240 149270161 490506706 708716726 475391513 636803707 603965641 699491856 537079532 575032743 716930379 555162136 335277976 930207287 601225861 67181895 277487882 615298447 616346201 191791690 859949117 490334116 435603989 992198126 873989597 394566406 588771851 83645259 130516328 757520144 484650149 422085732 701119202 256707448 821324738 730616258 359094433 246549122 913477246 595351076 84011814 963356849 142945017 189794723 450193300 127253632 834372267 290878244 969550453 739460589 787726390 250774767 781221533 183513391 465890272 389918673 617258804 702051536 33816997 633853612 251709496 846302481 830552112 886248700 119564423 756103446 526485175 26359618 149254114 136923366 125052096 558524228 290510070 615215564 624353308 241006178 326428223 80156561 153771507 29256710 500361217 461346505 351685850 386160764 998301000 575870640 94156508 945570307 524847561 266055460 236384377 313404620 332451913 401975149 912340624 781419437 724056538 182432089 986915977 935299653 64725613 979230148 549620860 953986137 924412677 414331064 318923717 621534408 55141754 40935449 885428672 426392859 195911281 519771460 820425362 791673404 745434897 296209217 225423376 711856466 501366214 161888347 547950751 264671719 127491050 432460907 134715941 447204762 746862236 986399175 534904414 665697363 859279825 161308873 42124802 59197909 472046553 317864956 376782277 959575275 139563289 302213015 680621997 262049094 441538014 497705751 829358518 734201800 407150358 15816300 173896926 6895051 548859201 670198679 104967352 129766452 535871248 56321055 417596936 147900594 174557205 386215121 962646413 94733701 940126208 558183484 277560959 916670480 843536797 323777645 629865463 245008198 362142987 159434143 285864717 419652809 793057814 973652334 432167300 973050905 836033697 975233295 197334376 687648349 543916424 381088993 863127278 576228623 333452810 966956001 81824170 512539548 300004050 882895793 340466872 690354920 202207573 600338976 865553964 240836145 518856302 532608791 132990811 393179235 857849506 284656941 388173234 863227878 483241408 272446599 973027510 207398969 445081728 374972909 321934312 393265797 103796883 237826396 267783247 668034854 832827054 967199390 488234668 180287272 870845230 107942857 160363349 676823601 820935319 523081211 574305828 259758604 508623533 75949278 502381920 79918777 822411411 171486191 326054981 775320874 349989763 412220828 92096696 755265682 521480297 568838124 158098034 150381282 349848385 675700408 299684267 763815325 955815164 48613143 39436781 930763472 49560030 840105776 313990109 600852207 781608795 189030042 535441219 306024821 24627883 171671152 544516799 740093325 464048469 159019495 684813889 747673287 105231781 895434379 605852233 230462739 181461578 991506063 341444426 829260677 757678044 521701880 246019279 400354115 364084403 436351883 436204298 392971553 929631465 980120960 779293569 324940264 611569968 930593568 677054604 129737339 631810800 948195525 862054324 255350216 200187749 757897176 940402722 949060389 957075068 379398825 665655506 24021876 59682676 547037813 431283643 715513618 877140123 320863613 839040331 7219043 429853755 330800475 8356953 152884226 392190745 748133614 393943579 974298661 568780569 168408860 411246775 541788938 918940132 236629526 241347829 218443593 688875859 557882538 919977826 75697315 993636706 61440023 588733218 39397027 839193345 780744057 473430428 633012116 874202127 765507313 384726746 104464073 19892166 984383948 744763224 723229536 326867080 816071098 898601986 440805089 513722934 958928687 683670297 667307426 424375752 975970214 994956373 445065097 205982058 324494435 216137117 825026769 510776574 505353781 446484744 705446483 482364587 161132646 456639887 339275155 644454891 416155183 817452593 551675102 804891201 481539151 727344300 662261094 325934090 9124327 265781822 770737100 696001103 594578544 717160745 644016100 683231046 509648993 649740756 126990034 12103610 947044379 137675805 68299446 463637347 443939589 273065121 293595517 920134555 5583021 843937134 555282162 221595485 809074656 60227777 634116572 272560750 970983177 821916370 554000580 706916492 894115713 166829591 235876027 301139687 982547250 41286149 528917316 167626197 963500807 568715323 531012997 808900077 443809091 512347143 843705979 624010166 363016777 63349997 79105451 416591820 113422301 177198915 29930330 655872648 428638908 893211848 876305022 114162097 30867667 268129104 789189543 861264167 852552998 777242111 62365365 262061918 273377066 294070358 121034676 52913666 604748455 244824889 701215905 429507546 32698361 920880573 997844439 800495586 198689400 83031828 875631096 106108222 650364523 943248567 897657205 375357745 214639090 153889501 126372889 540853761 792078396 271678385 201138588 703194021 466063075 730099207 844975708 940805266 383548836 359312735 262423651 862131698 72801975 978812340 64430826 563113290 547723816 947847674 501184204 714804045 760546718 50962793 870134811 919684234 112804208 478090965 634006826 751476491 212760552 276732575 499313054 283455438 801568802 263902606 565790707 755616262 25953306 380469929 697306530 22346060 411726532 227661863 498827316 907250775 198789058 86610266 481532575 11326797 267716977 600048053 750517615 372557173 661978604 692944131 619862965 538604359 698459790 224828173 83223574 420516791 995063365 887696773 248786242 515267800 270203455 357151391 343982633 778733650 272476772 837213662 642007579 762587876 212206855 923925855 477214603 686869363 690557751 233534698 844329228 999839352 296086087 647832494 819270069 337945792 728074903 792895427 410141984 296709685 428928143 541773454 121425458 619272543 686364562 227905988 131576855 568470880 444771291 746764772 518396949 432973291 336246787 102023518 840687251 386145610 51410315 60878865 380404413 194089554 975601780 737782624 996853863 749657317 766901487 503438373 450020826 732110396 463411 537067678 643664825 102801281 464989448 521198673 974333344 323080416 992433105 54752670 34529395 90084786 486659750 706130662 125841074 818092867 322850725 885879144 114896290 447251425 868624662 458956494 685716681 472600293 820474936 282746136 892129760 720478110 995542631 596552705 877227510 405727635 498581506 590592369 331778826 360163984 42023576 389870646 676563503 376762489 265199689 430000873 139447957 572523292 446108064 913019265 29289161 279117290 327000148 348394257 765764033 96843594 567352583 727314591 992190314 788041468 972598891 713191813 811913938 799774997 281664086 178751651 379649671 822992066 355651432 214326036 633344808 562596391 373782233 914662995 682808772 152076286 808093323 391124975 819040611 12235726 250171356 475533895 372771969 468950813 777625881 31843534 139517412 137913136 653077306 222645699 310695570 948184884 625114376 837984266 333483621 617954008 519116467 741962231 750621687 331325741 253857287 821831493 516769871 2991641 638168003 371384089 678111032 258383654 84290820 472857839 154095736 175187257 154976182 119400371 556771262 328048777 922396971 208308390 777342572 825534318 992302754 559865703 653061265 917245697 628676720 146348096 412847032 415646221 190120455 174930311 337218838 170260146 443102897 283175849 887634664 274566859 743236854 507933687 973597025 460996523 780659553 151627925 475555395 651978716 61090419 5155041 560616337 633029508 654712413 390069091 657290059 23287706 214078272 667307543 191207281 394876475 226879621 775069812 190219190 623009551 24512575 606270949 878916998 646085169 472088382 367162042 973216913 94953986 347571067 394101152 8714032 359376807 20502696 715276268 331230362 686299272 297850164 963645276 93569594 219504738 986352176 192207397 514494649 711772482 581748644 413619917 757428962 219254365 670812917 306882610 214927549 128195418 276848346 386610436 153955043 672412315 38270135 74953535 62980446 718218669 361426964 697719288 885637541 573364717 835797251 210376594 317533006 235099424 47867541 697515623 308080845 509852049 494642662 805741672 312963318 235438679 780483607 937323455 863191965 488809790 376931940 542832786 929405675 123489945 362773346 686707278 233372415 127879480 499750145 176935531 545342275 952491546 621595377 61033006 193614453 992419316 733548857 329467587 619533443 735739139 140960152 947236235 80115993 876461433 944825566 255691112 155895681 802697936 41156864 65177972 106429091 389774490 233068927 95249371 662805194 369863566 314196460 280904281 381650654 467892603 833545806 890914038 655652031 689970797 626407146 445598195 659834588 264741319 580929054 773618419 160159232 503744074 982152526 540425102 674133791 876020513 328049623 104652594 797024040 769238648 270475437 796091256 37582783 489494786 793326465 984777458 636614030 440427969 311990289 842074228 142977023 616850506 654955028 692668814 445050923 480644480 359612902 237144161 645807124 218433371 60999102 382520427 939747993 324079980 136697456 675250490 654787003 400187782 159037893 101710396 127985727 284837403 203873279 11861137 897998050 966341625 828545814 40659139 92421615 473418799 913156433 241415536 210863121 875762266 758644063 974368314 32106390 267786172 225081326 589121632 42148438 514831543 666029390 82661982 601106572 27925470 218603744 188924847 19186992 782799158 894910824 408172390 188009228 524211824 764057817 613382082 328541975 266350656 478065290 819546808 98021402 868991981 448210395 659924460 705288811 61074587 143583701 586141019 675490419 156278199 29050541 310328913 202628598 742335731 329608877 997092984 596550425 938326684 358228029 903405302 377526879 128000799 191240799 200250190 477688376 253177953 795943873 235804510 770996943 447000829 199103436 815873276 123836428 80627862 349162806 410580006 369461792 181638528 447753162 964342356 800487101 87125327 480632194 37842722 142886518 643574755 244028235 877675936 267831199 686831155 459550793 719876793 157553417 731567292 219403113 924369711 391977592 150115434 816467485 572249843 129035415 65715182 986667874 71533391 733082562 616019529 460825963 93444354 460840720 776538869 920442231 70138895 526084565 695126838 972773731 927362240 379876911 885744139 31706204 463417074 609858623 404376753 394049524 172912775 83223088 196367460 527984746 627630554 219868788 44227531 552589020 924536640 72400841 865285553 35121026 791114810 303776736 45465487 401025848 432537980 50944783 215232349 737848998 378941570 752198206 187878973 153081553 598915693 498407907 128571574 436099110 469371733 981000271 809363465 846929643 267637755 623734749 87494419 650891919 652903198 298510859 318356241 246017408 65794170 217574606 286990349 688732700 394945280 939944532 479449452 153480138 412380301 220934442 936383013 29564391 117823733 23948216 212293325 982964160 149375745 57075243 886367172 306100230 432701649 147730223 189128947 227885905 554769859 147521294 322480561 635328341 238623282 517376616 502496706 620807377 769208525 329120525 550799543 547275416 983867142 144973887 903038535 118572177 417943877 995646077 615680382 828750077 994542604 650255475 655157336 653260009 792250022 228516275 470534290 724977575 10432205 427498272 707246548 934640244 347456518 6153955 983899199 126982140 116647492 83618402 938528282 732544593 5245923 561373654 860417772 891251406 298416084 810835945 467162501 574546488 317584214 170311283 256019603 33987594 784999124 513788238 165238650 358074595 62336403 435645558 679995971 62233657 308505960 913481616 150293146 933415342 162490132 655660669 825289754 497079193 519245237 58791873 495756982 704418871 689442500 64234786 222509372 890132773 270613134 389887358 7008625 610598256 867866966 294060267 849523142 683723256 113135890 566520782 590974612 139182616 762659484 645989367 51604374 525845363 209377469 372935559 409012751 515863115 869133871 152496421 187883978 254634185 437315833 58917999 548059076 156377974 893021067 124284177 891697641 651092944 811082264 222690091 90378722 883652214 947030566 635607522 467578012 933013503 351872700 949756068 74152846 129546828 789726173 356173288 336208296 964918080 592368118 801847975 572334268 606692688 785082885 210613793 203186860 552684751 943753243 563601798 443960107 144461820 308340806 220307928 225641215 881075409 438822437 62354822 649771794 15533271 34592273 467880822 828209084 747576145 683659984 221501943 78341065 633135313 718729014 579365581 377190648 19373941 379212775 567465690 301970395 443982945 333590698 669749532 185457092 110432776 59363634 413356369 930769166 374206767 118570105 601163560 344642657 361511942 222813483 200148084 497546376 379637937 170543214 65312546 247365016 80238128 910011807 649241385 909571410 532341296 90618745 583509017 502775425 180917122 205225062 908278792 600146169 231273877 605263569 199601051 572026819 480585667 845188660 595499805 925264825 446911885 708438407 431772013 772031198 660694054 42085638 110342702 753577532 811803918 933138934 913082618 486978073 955340669 161287321 437191222 775201184 101427235 488665865 281307785 399675356 851047624 988761363 870730705 244143353 884928640 493898954 796969977 43805497 156120924 931022417 821847059 863301185 555463535 107829745 397799281 666652828 723425272 841361761 847184134 226489753 233735933 180411471 604059015 908518341 620437458 91824149 439048866 859585770 448864374 276311303 11773068 909085080 322408619 566171568 72313380 686574662 896245238 930811894 159767794 633625288 680068689 323083737 678634706 102392225 484483975 72765016 579469868 317376134 989565543 567329680 822071657 988829908 356988679 432821027 318696232 444811227 770257378 981082075 590150808 950399156 269102821 434154459 206187024 304576452 914903143 292032695 724699179 77243294 11725356 863807956 620071510 240703843 216838349 401014416 902041008 743293226 578794764 234194864 755619523 836799585 247175808 377630210 330445468 838956372 266009732 126260823 303982155 779376477 935634377 767423035 864481916 159397292 251066003 863443889 703960495 619537648 729925209 97837728 935953966 198113032 977850364 238642042 455323851 915944167 441160962 385353881 693965591 566098394 522344244 96458250 523408851 999080885 4919907 770334274 771226678 319534073 850724027 759441191 235698008 341977425 970251568 232212457 118545933 531090749 434707635 340035434 605942723 425788781 108473094 117448507 196898545 480465922 592618973 965385777 498176256 278954171 612623397 264594223 893627682 870239189 905090731 893403168 885134043 118041956 186785083 289821199 542912370 327247832 629415580 421685618 503640368 776065135 808931044 415122346 85773108 782117321 722099357 945351513 856244009 790138074 416077365 221908472 517802645 713480262 269112619 571926754 396028600 266905538 51003986 749892372 486699209 616452298 303626973 312647018 556043000 335514081 255183872 289898155 192861594 827444754 50751629 460759620 371153965 820189418 512965479 968967151 819986318 844756267 386325296 637682511 665031506 47627085 880711193 870024839 979714793 184411078 277199140 114665028 478174672 339623272 661622584 342909043 993769600 383355074 154122668 966883290 586753620 390306050 959505188 838082794 698215399 74761186 275933981 404833479 472529034 439430004 156761106 846386361 136581109 453233902 754230598 977028362 841795388 605813388 572161869 791237972 849418378 89521701 822642768 206463620 687747014 835754475 666599655 445990329 705497832 828341168 382136819 532901598 644966693 991552659 826037006 859495526 868760926 162841158 881716606 479749845 830413755 688311442 906241874 267283382 745918008 886685509 34433884 145855663 588446695 972077152 590255283 878548341 984979526 964515689 91527524 882212249 127840730 721696537 20438184 712058153 777373347 947221392 712346044 569441062 430813319 258631640 344381811 722269369 739960958 745590333 749959626 904833084 186432422 610551546 425074347 396368383 202003319 192653799 777224678 503652357 428489292 933298206 356918600 719738147 518119972 411150244 207760763 671815083 838247855 719286637 248277883 907348496 562124013 880281181 151572858 128176911 167257258 326632179 309990365 494082842 479585690 44720765 744761194 983701736 104235324 627749809 86267605 816283681 41580096 818543971 732586424 737334808 742030618 263756315 557863666 108652756 262591996 149936792 645087098 911546451 637503389 356083133 502968008 869704098 164034962 378271003 293149042 657143053 701306752 103091173 656136858 814297979 761290950 107751342 474576154 982985528 170900407 564433065 339663965 124693609 904269437 222709046 631288266 749902607 53153595 836111391 181758888 423997434 446558036 978549520 74700007 904045762 466619224 511592688 210179681 683382574 801801720 172800434 102806989 803741715 777210819 272440640 457543178 951282061 366945396 940755201 391079560 619651541 101504723 687052856 14682156 530301670 58298375 53382141 214578722 571087281 108726660 969976613 577554628 415799596 39607216 118224514 228034954 439986314 617835548 772231116 854488050 523694870 810915907 370494555 609752428 595008895 677354774 986835321 142431010 423778986 160697048 290580029 140358096 840423507 418904153 722664477 314989625 838023024 395468042 504107124 275900368 468804950 166504857 517864322 124785170 589469401 104595512 397769081 911254651 206743646 870198663 250306244 283733609 107749748 919051467 226953198 684679239 434304732 281058783 350217828 20603092 779394619 129633993 4933494 171087373 572255241 664221101 684320116 570954322 211709070 527867547 250603585 66706492 505143691 89104401 292039512 421144554 362447350 248303376 246924578 319686611 781909712 770530503 907324381 984272362 835220898 322596195 684659184 117981777 343181563 865205172 762896710 151169335 89117476 862774114 511741380 109032668 646926099 515456498 824063852 749623444 60510207 555311850 348144283 398231429 439890086 483098324 294953808 274804853 325565903 165787970 687769309 735735976 258414144 197399325 29066009 574026231 404164095 252554031 300701899 418829958 987623545 202069115 470057436 570819690 936185195 103247360 325977009 69227842 6208552 78388885 533792127 618427369 865744759 701280677 260253189 413683903 121820402 319700136 558574091 603813492 437591062 801849141 445016317 270166331 313235584 718450130 186659924 791247978 655651868 282580103 599344625 387003519 789254873 427768075 138930286 247157845 215544306 908665246 275614318 421216468 159598277 955368978 172619691 337959509 847969513 934027521 204008472 779160516 708659625 975841455 546093807 517434602 530117987 67203050 228327344 547653638 141777995 965406576 596674883 487277818 667463355 364743967 504341716 641257890 872121181 467779068 315117260 485541823 764626731 545236629 742992111 168270421 794795037 815377369 258576586 339014815 677149345 737546473 123121948 747220703 448530931 137586379 157942982 234407657 354196101 342959627 16078130 620567621 268470001 318694707 159451080 145724434 197336304 345239189 939339337 711589891 250641703 16450709 867538245 616178931 716136205 778741480 847055466 729840238 374925567 783679788 6739497 823038795 885767536 75783415 808184232 395318473 989798710 879945644 782545396 332356772 754107951 755490734 28203243 319989018 145710534 943193901 446755285 558764919 604240298 764633113 316181149 264268420 936283331 451843715 547301259 745066902 488006049 147110142 648892670 170868252 474512694 48477734 80279234 915737850 23217234 924900960 951593723 161881982 672106613 582381188 974436228 916609189 971983369 628771919 783873026 172356164 394223880 124854499 458980000 95779636 232408111 86665328 455591892 908031859 367637569 244484988 847381998 430065248 200496304 838552366 928912683 935288786 490262727 313289700 793317159 852888498 30442646 844960990 296811397 577135281 855887086 364000910 700425856 136909598 372702719 581491928 692020128 364749249 587834098 924090604 146111124 168496981 541447145 770054404 562257112 704274846 217796541 852434866 477327294 443427174 284162826 634068961 10679652 699458803 849736332 66019210 446594905 565669468 687827827 119747319 118694941 935744667 843531548 477187123 714799237 348529013 335998395 681418506 121831185 728933753 314246731 732327932 206459608 691393977 112984004 462616877 647682954 37759334 60031212 604252670 767816418 309689780 746419763 180751903 137041651 52169347 829133500 150240570 806670275 286329490 662250931 177706146 932664202 326459750 567211767 452164457 352828967 514597041 826404423 101089853 212343353 60908503 355562961 820133412 20972325 237578069 50058313 956613271 37241082 310128422 838943784 931598215 316697945 681067472 221198536 859637920 438017007 289094349 394577585 521302764 632242916 774252205 20307220 662724586 766629097 999949185 343350448 251690617 761010319 428872399 144008044 611740028 63164979 840545443 87844196 100754256 1576723 616465140 297769960 219990570 357711992 640522934 380441141 184619039 242905179 231610811 297047092 308231660 269236473 777106109 401970353 807713255 381973736 131297522 654717506 25235265 678215817 95174706 308720487 398336110 912626397 427579826 157920366 295699712 429614873 727074680 137061461 512941491 499126327 898298289 355101797 465316366 985320283 384668218 951676062 525466842 15431190 884787700 140552575 749439519 638543831 788818447 483456955 48981261 132773482 634130638 50706495 738408202 19650774 599295929 731725717 333181279 443820988 419897582 509185281 445263755 976494673 90237518 679909178 206273011 5912510 956251667 845285207 252978923 541898154 728891915 952227538 535145061 371720588 344515082 94255437 98712670 591787014 816541516 495089963 585798969 980700931 689900580 442140366 941215592 449454988 462963717 660280167 246709579 129605406 717552583 898184736 908321423 661616871 985404104 639643162 397766191 76159799 366005895 985469691 821769172 335560202 2253246 167045350 851999391 999881549 397760504 625689893 39506967 476821878 951395049 267957195 23792746 607825221 16929830 307776834 517397460 341137452 213501539 878603931 670197131 654795648 213048273 316368259 722674781 605337170 909185030 641346377 612416731 912999279 4710010 374991112 758662203 649089815 298596456 314165611 936115802 877229443 83436493 117774953 177237056 945063405 265746573 514508064 966476948 418368074 128480076 637829299 398626943 158833091 560046098 254485072 799639310 942305240 914276393 350722884 318987408 650919604 974490732 171706126 32005258 537444374 561672687 196970846 10881397 751063859 307331318 332279181 310520800 443181096 89179299 732420506 353172534 327772400 318458247 700749688 210348061 807246087 700551450 628626040 457577075 996951024 72295388 675237168 798597417 635853230 333731295 163561640 248801651 370400928 208837169 177341659 279420974 758594855 66540817 524471029 284092547 114191492 800765954 186145600 593548032 975223000 578641726 468509024 158615184 521491057 788248489 590359374 157646203 8089891 697373414 405757922 149357101 411557179 128133073 550994402 177254586 997562404 844430528 103572043 907952795 437380898 1064415 821666795 918299891 603812246 665600221 254512918 482567958 400622847 144976720 562628045 743830455 750746623 545562658 187362522 787348069 797831600 773214498 565823635 359384352 322743790 947279070 527138674 985908937 38613891 369707172 58935756 140697931 160365709 572920036 257440276 411576238 296119633 479750889 644040116 295356971 275497688 835941079 596282697 38343837 936603052 595326997 717978164 448862827 822214272 846625206 450787734 969702454 119195893 146201876 783117779 222975041 739646900 835046761 770837836 698677690 49075158 50355455 936312171 522154555 256500076 290244803 842349690 305606321 669080107 841519943 777115139 80766934 474895241 142264356 328332868 184181431 863072109 927260948 920963255 658645616 814835532 93561277 86594578 243123951 394255124 472269548 722978467 496503702 236362845 801155173 132433892 487121500 47298268 848975320 582504831 756683029 515872716 9808889 441496056 116913476 871026726 340367266 679553217 735214889 380864654 908703401 396024974 90799704 605148123 679080449 777412652 630567251 39020498 454544715 154936116 654522149 611205622 56551908 941743163 335369313 814770828 21515622 688268755 302558199 117378057 114150496 53570698 578175379 784406107 586775852 74512872 879285789 346678357 780315577 866215766 665028137 820834451 420953500 293707904 30490468 152468083 303689871 601100534 525526488 556558225 32802324 847443517 344474399 514077363 128674772 593913466 74204774 556420353 997966833 367188867 267985170 44005374 561875416 390039946 579839029 867284918 673413981 229989375 39246150 190841772 380974648 449428351 521135367 78419217 287964013 999059945 412816318 485381774 141890989 489157209 594230484 38020830 949755721 276296801 2211741 336088346 880668763 861705075 688681177 152655835 920795433 745252465 947076713 325538782 156981004 266303860 604627843 503471406 893117689 760249543 163515518 161772727 736550313 104647179 544660668 184415662 866514191 513800466 874314112 608111883 674544662 877715534 532658461 249177506 355092215 80127074 875004599 78414973 543903062 910578197 944472122 394223567 76510484 851705747 780159700 915424448 252720826 132712328 783036660 196833143 264778207 69426834 341193333 943536717 520812292 579843071 659122877 311157038 952812692 988371383 43963977 127090382 516312406 618034649 855589195 387778323 11269547 990115583 65261571 304693191 803216937 435862637 716361028 545805367 153459838 181591406 303246537 974178264 862905505 413647840 181880876 9444406 267438625 49350314 621278070 71003704 924895737 296408350 587360394 632054468 782035821 545720607 941885986 968969513 312673307 594165799 157655475 886521623 591729834 260052009 992675777 772340429 732327516 132064119 223417669 343973199 281177770 418648146 109581025 498745679 627296498 957044669 394928879 83216098 795632437 770815745 595554097 879651007 392530709 162869983 145992368 494808102 952238773 421314214 899500415 405567237 375046555 378140659 470849363 899706014 61816549 359883437 383872044 832991442 324328044 654299297 712924904 801592347 749170233 216952479 26498521 888609715 142180374 501812864 30013750 891080545 299759459 695488263 173691441 912314210 706018735 359518380 772185924 834436326 902062051 264962644 808827979 764193637 513635877 698064560 942223263 320992114 785669814 315073444 831535438 299602998 576314808 570396395 884466281 255977362 411458864 875256716 837419108 607625860 278399895 272123267 416405127 444650350 278952671 483725509 600218055 224333524 974767525 85365942 44631809 579785757 263410594 778412458 929840437 9313928 112506375 380731192 70586924 376182578 400322908 127618268 792911473 155830442 941027493 399884954 735144163 742532555 956163306 725423588 278233920 761684125 719156250 875282872 683514716 327266617 430191980 280887009 224886506 425888611 287658943 380659778 219388451 662601965 886176443 301157146 351170117 946766366 522797854 708059226 998349397 284959314 424774785 801080540 716868643 499810917 88991810 678729848 963852236 957435221 547083065 513331533 515615958 617399798 192762480 827987190 571526389 238948290 787018635 329455050 160908781 316105982 724295742 21073372 504546551 192853904 141894762 921201527 687913909 481455748 767306498 351668181 54019011 428510864 486546059 829823271 437703152 256007668 546884891 820732705 690063278 115115538 575375695 792336061 787524488 629171353 91220022 955513734 275638372 277757823 805984560 38104260 898007691 110976191 477793647 415110215 940026463 184219501 399929362 764125724 142013111 433968191 545366979 267513895 831555407 923797790 858733345 909632990 58800624 173355399 463461587 284000459 200295978 41954502 585170969 557708338 707824202 713119163 494737803 710416126 229421317 13108274 100741852 40076049 669116212 581512360 418992128 736870239 893850596 61662204 692144264 862347643 190331287 367682000 9222782 12033165 796187070 182142278 322929115 431124133 942982724 848858091 598963113 358197636 644347564 748921193 325990257 107703428 874450510 172087556 879007203 98199512 517691634 859135093 826411176 392052173 336861596 324969859 612360649 254154007 255351729 742846376 481224727 463889906 515567902 198986559 190801098 646067666 31500766 985405205 208691609 693267992 717798510 227990488 885217866 499083678 962599575 799979962 349351503 549505431 556226219 357802337 700018739 958526983 94122556 906486029 392151516 748062427 382643694 375594683 69153721 103898767 474624704 791593994 404713690 84345083 947593370 989864153 416563493 402569732 52376549 744653091 318431382 699535391 582311150 996249883 551632855 177755698 368364966 381870620 214383085 75311632 121606639 675249336 152850589 852667028 707099616 485572375 606880788 244402245 990815981 119240527 573053212 807216849 676860873 76113190 445811874 875351158 231298033 408116196 778612988 722118230 407534475 335522542 753539548 215400973 122580866 139681179 285360119 368413633 985981018 912916954 543256280 954628658 264305258 631844385 985922324 698758158 343083356 76714517 653554984 382567675 429989188 545898304 488749728 961208561 41403964 987723530 349818348 476064769 627103624 451797474 59553092 235099481 138514268 304535234 543662434 436874315 641742067 914417390 929648363 578002478 2957276 561606860 676288474 452304553 729334981 796830400 595483491 223082462 104269237 832671860 123132688 180747275 107696217 422379260 267888621 275963025 808047854 557732443 492641001 883571306 363842976 671546368 32669800 376454824 425390887 936189334 515980226 289608133 270087615 815186197 87649392 501488025 913584201 662921745 972869889 415154472 798330419 371306139 272331957 431998104 520433537 417671206 709726736 644418424 383822914 464416382 842480744 382975112 68853393 369941177 183442136 214704323 816412793 864513379 975944978 96722564 508312417 473375301 224568743 925090835 719830847 742448643 544917084 125294519 324361033 199966023 935570997 919537761 931144805 407541554 117656631 206589776 882630717 898054498 788398903 121491351 216171021 996100678 187144548 20316848 160989635 970285275 770903372 446761920 214722469 885219541 379222400 635292376 258275876 274028671 766885352 923884454 372835590 443609609 391215391 141958127 861084848 67149824 349082741 846205001 518383498 826572350 696106723 432166432 566239581 200566427 991518302 140655324 857774021 540797187 829110363 243009237 865320065 539339635 270165168 477097258 280303577 440397377 659074657 921695076 806070365 513945192 795836382 365377244 221056700 765167348 880278357 235400818 649465536 344846023 975602761 787645291 563740844 27987540 38821791 725438936 975775422 113309355 863220571 522651878 887423077 989903824 727192923 345077862 7923209 255195647 119388862 572193656 186316763 94819212 934194673 279297009 20904780 663400324 163928049 984815456 524998970 565460669 287998132 512944582 969955501 91492896 118483589 150271143 579651735 208353314 869313227 628486067 366496315 113885559 444839275 799178431 366152751 226736781 952088741 483042617 436545408 232979585 107935428 287323529 6846762 970877033 75244029 107395646 382304320 997440008 817298758 965740002 738654035 726246358 749689676 796717197 56857677 715797869 25283774 875160827 458273267 264324142 691849749 204442509 197193028 111614318 561213903 870180086 132847241 351252228 478947176 265434882 603805493 752371918 449769575 96572365 885322604 840817225 245732486 240829789 865415459 230607718 682686284 13536228 361611943 569001109 85173104 799664500 938169412 145848965 567448285 634020315 648909322 900424767 115137168 802892360 997081261 63053290 874523563 114297664 727660806 343431301 900388474 942988214 943432855 828084922 397608134 583080211 561572081 552333263 25303250 617333114 418793598 521282078 935407720 888715749 821616659 653848913 885823251 716485114 437681397 398514191 965247480 862323304 622377999 709561387 373862045 553954438 501779713 38106539 855990327 344773963 323732104 624949202 544479989 599535254 266306093 42926361 506896680 587527679 462380601 664601869 62889970 171879571 681733733 643562913 490805879 579093228 984950900 676656093 230882484 934969741 463953893 123963855 858038763 63764728 390161586 776590403 911597850 246643376 9239897 536731250 909848026 308296322 883184103 243220191 643958140 249938749 796752847 206969732 977174796 394986540 811019851 638343277 127861629 940131236 716843339 262941229 473088675 774833402 487564250 899752490 541977973 5961267 712553444 745827904 23675758 592641919 606030270 435324871 952675188 868337120 816660238 858747680 75630392 46039504 122690501 200112492 371096536 764441471 749205001 666551109 789835873 55005932 697040963 385607599 830379 29082027 217779547 853218593 435528051 370526775 97192882 453617821 285776308 528109877 724855080 654973824 741912555 327519035 750797290 714167417 300484785 578590944 931394044 404187459 706344675 515911752 266085673 738220968 258357577 485847551 722307094 202554416 915381549 380948971 748638532 230840223 184518572 250387156 894636695 178470509 490457046 34448886 831452489 734008755 365281584 124497566 631908780 345921785 783940371 999097741 203476304 997233390 206025344 630414059 274806867 500382267 775810488 259909747 7348702 533257034 947840241 772800483 806631404 974371722 713421452 736357530 813592241 493569227 739605253 964966847 868888018 824482172 613078870 1104567 621692188 1296413 850407352 71141636 865437120 60606673 467595349 578563004 175026532 811519401 155313941 925977201 567675583 31276516 975456434 572197224 991464518 423418139 818339781 991357396 874147299 921657067 468207262 27598309 562079895 352363461 992450475 183468598 865083441 319335336 770794308 936709926 343467996 483345163 40713230 442227877 199230559 520092732 985873427 125183703 159656845 982874467 586111957 461468316 55589612 556529893 288131243 641402438 158074531 432789831 781277261 792350171 301138469 266109713 406547283 381334881 831688186 992376898 548629581 796930302 35907666 865935338 815302572 818129840 654022911 492920702 542709054 327205382 703788765 578814848 344868187 305471467 676551731 473257184 351071418 427344982 985172196 205770306 245673840 609190363 343418168 23732735 138684124 601142147 462837035 309886951 387244240 800240089 642694788 226733139 381043964 792133819 456041978 2603258 818063990 980981540 176808147 847896703 634953913 935085121 263819415 516667703 956440593 853904533 603720364 849013602 348267362 383484490 764214698 648768121 74065078 360793658 373679683 398244793 827926909 783351254 158634636 400491148 878737580 129981475 10712595 115942826 915629421 179965565 248146967 710888573 976340433 246905739 712797166 106363275 655917401 680843918 923287719 288908041 358481929 852468438 329160960 208862206 654861657 282594163 514911983 647721238 537217160 817086288 801515430 66486664 857170669 548055545 700696349 651156970 33084004 333579391 698845260 996504607 319124936 41245456 347633610 283664430 758902308 880640177 356299645 937784324 515975782 204944311 173428679 430618053 434098873 692330762 384523779 754483826 814174244 341461354 458353389 667308918 853291742 597972521 894307776 5183161 992201948 517043818 810538933 473991460 149094823 214767467 976264945 701479622 451220108 610717451 835071910 384478576 138560147 361466650 108470265 866497524 666906010 751542916 23765269 550807664 62056155 452577366 348318874 992781770 505541539 625356743 718313579 22862751 783786612 43734958 251942906 962524857 124718525 394966707 736936779 300231480 599703873 544732029 171367176 2875735 618590854 595848586 111408936 750699471 601821300 968860987 251184978 852360090 272786517 704683477 595962707 81054101 353660146 43506826 41103719 670363429 640681732 661528406 605024916 657046970 208113729 46287237 695857865 238588902 336293909 7024487 154053051 107975915 524968560 395746815 551718763 242153802 305189502 902620104 68540312 380261945 405207593 134149299 568999294 897899403 253910220 218480073 375263767 190268853 747635543 509480659 127070922 608525732 469983440 267858644 517297506 445984539 459439 913118010 55115444 947620445 728056833 159292522 70486873 149179740 373526903 868429270 982234499 46422195 619742503 446619887 315530104 816627014 683852667 110220774 706119902 815662432 101149850 237164934 165376981 202919235 836509911 826664699 148139918 313018483 932501705 33681438 98353814 100088924 616541560 678649824 135462090 257813805 435014590 799211691 683431172 352912108 901489851 561292037 625226246 239217933 599677314 263876425 940677102 795953444 51196803 954398558 154664767 537463706 555285503 911444520 23855517 525066025 955894285 615501905 595121250 64967442 467879118 797124301 516869937 77578139 682800168 563982006 231414616 565367680 710634744 237534445 55443572 742351326 552768830 156729959 200456805 603597 155989575 575630010 656147894 229116011 201237649 228018435 363547631 778031957 525025716 845855925 687039570 395272425 579704342 536175625 627152992 16999628 226834190 315374844 610569353 913475093 730702585 371130496 46940361 963565186 747778972 286045926 282422908 192882366 405452598 535531894 608859500 290913642 293156432 838362132 968164524 2144056 261513411 88323111 636839820 109887671 732026422 204276531 179395217 99193275 266770019 554044277 548309163 198227057 650469754 487161037 619898269 147769243 229827475 132875686 695026929 636586137 229070621 76837970 505309544 677345820 528112151 886319967 588293854 412576709 955559731 569872652 755915180 680487413 537536790 893794055 413880852 904499456 25210599 42133869 414173421 132953377 985370338 231384372 277725719 975672434 909509614 500989100 72495378 356602347 407329889 801515572 2325317 312589146 922237517 759649585 756422428 154575894 784018577 304006546 417318277 244140853 536586947 948579932 811987794 822309647 508505250 501016748 612131637 417145088 250679513 35187822 89120618 701166706 415251844 216947123 596611260 914369063 97032183 967146429 919144577 749697253 324577517 99511521 97886575 386072669 234455626 11839813 331087152 831962996 431296022 731315699 383756533 253367548 399603773 717131088 994826724 165646067 491958015 161429527 540088753 687149575 757644562 7611765 786861876 173140376 530488880 130796643 301156478 615983460 966127684 448822754 697247097 705278782 223092833 404212893 270468083 88823572 388151405 51814537 552600668 686381768 738999528 482392225 271201404 156211761 634562615 60532142 184024015 275717803 214297510 156122522 661581043 7014092 489301933 857492624 135290232 640379912 723121518 770985394 866115774 477029678 98916349 990932599 473652300 336262584 46113597 4615675 308162170 34266216 14891087 336069917 42423301 459135349 228276048 53830020 309955296 536895640 54543308 886395889 858652923 800548426 324889022 506831784 264661521 742363214 81159923 519264779 272736630 384320352 8258832 901169308 173639937 972347710 750768846 749185571 898389286 738035945 143862599 588848398 596029933 181952742 248333366 651273084 964282047 354251453 732183008 780218337 148414086 394648159 825832685 150255283 260951765 849833867 463368000 537505172 196836188 437214642 138897084 367947168 961199529 402811390 313363226 862256486 237376163 473068907 666197587 61314513 4115143 833200079 470451328 293405969 523164256 22879981 657007444 369464071 371509000 397607049 668923065 212807229 405078678 80757041 778243114 843700396 665703530 569426353 723662184 62144029 513599567 654989989 753404767 895806567 786961598 546883078 550541991 524705339 43871384 893016079 624649198 171421996 57694326 702054671 981339740 679158306 836192112 279880623 232590645 244797021 140406531 842205312 709970211 395115802 247726607 251909342 460133917 751316590 490254401 393541137 893740277 751275100 824904326 419340798 693735651 605233701 93080345 781163372 125907242 64447888 485601448 39132644 919149309 417969550 482455924 259693831 553583251 800988982 991258196 34915193 857265 678114560 873031745 458725686 686409702 261090046 626372724 502751051 649262133 773720004 895290770 930903818 965460050 382529800 131147289 409242673 962503065 916934089 494044222 375465503 286694054 191692760 147008326 184084162 754196315 714338039 274299587 377872470 688521211 580700462 319581881 640497133 602938271 78649386 240833032 660052423 910183502 841500279 719737657 328348598 50974644 573430723 52499849 394874354 932254654 40336205 166019870 809173518 99794497 678694795 218858745 971922189 481814841 684827139 960241212 891235739 103154529 497706199 204437261 200463091 724604909 763170167 812299378 767873593 103982423 104046271 45687923 227481559 510925157 845576967 614546446 771501652 139707604 160065821 129273650 945098631 915699397 710202633 29428850 808420921 142977184 95474367 536601881 694477296 614246180 9369349 609635576 865465270 542820842 169880138 618318052 905029618 805362431 175491632 296822249 312332229 264704191 74708612 30053919 596627129 323173313 385714754 522861584 464201896 676717969 583896105 446405361 527240486 165480606 454570605 492788569 333488153 605478488 449278035 500800192 110053230 395952726 929728870 671759592 429639105 964371673 573133962 7696726 552788126 147822781 295331489 995398501 283989201 657183205 147841724 794335307 869214680 82007249 509905490 88045079 641141221 902755347 822556644 324684671 627440439 110361852 461358362 812618470 151813709 327708865 703294497 87436301 483014084 128465006 245213985 515591512 613730425 120158962 33359016 721822487 956255509 753901815 578937806 397711257 397617364 54892642 38187622 806285009 684429867 841885816 742685298 525731197 995830529 430490948 736190929 342001460 216617951 123559199 630843844 936019169 817731047 906980261 126546012 354248459 421222821 468939396 868304524 798518278 480710223 782911518 190738808 992112156 337340437 447939890 135465006 478874519 745404207 893782403 207280010 791125292 788278917 886919890 898572768 201421534 530725270 396660171 823854368 35265185 908168013 538725338 741013431 319624385 377982850 610978517 514449605 34738699 418474944 400441846 300660269 608629642 685461297 647768966 386184735 67904401 23814574 489643194 827638097 207558707 354558750 236592384 967222359 769640509 643005162 160230791 561002205 104589309 98655371 86955848 126649038 781810755 857082999 104208487 875502512 756945755 657008967 344002543 441405671 926480210 448103241 903111777 991555765 628053427 883508799 959578190 797135167 394871814 473489712 42688001 552852965 385516316 148217719 185962867 620599648 784752514 600618022 225912076 607848734 962525123 926844281 314531765 593600349 858423318 853255259 923858532 682000098 815826303 982673139 93033007 965214325 72298221 745973613 19001087 298876863 39963161 816138943 559705485 264974779 857114180 245362620 495961944 850454615 906738709 423456725 712321107 754003657 134481944 284980040 526834612 690577676 899990880 829747733 562665850 957569728 911276357 753005237 489901666 897260175 627466158 847231946 459395777 174470605 42455785 684777816 358285490 306087422 866306532 146179980 445303134 640286180 389805403 172426136 515869788 639140926 466076381 360369925 730612959 758092440 441373543 569088729 844579417 25233621 116366215 958515947 421208641 639018111 209805885 424109281 666299739 86483447 618575355 603990101 979711883 861193080 999366375 556925410 245919116 81737523 32069387 564820995 206796898 179099908 997514523 949167696 252546632 777848432 761359261 842954316 841390290 467037031 281415171 524735634 948357183 475703031 579718505 756802683 140632081 700622690 831734372 487239234 637234231 171935372 39125336 672408106 456251500 942539245 381213327 22394544 576591022 366289588 645285475 781751766 972015072 936571884 903305221 21006028 558564935 901086395 454174248 595956286 400017832 51039424 383810821 355783404 472759643 879236660 437137928 629280971 264390746 798094404 392079556 667003433 768861966 481730960 973324880 427854903 438225293 131810891 790769819 768124433 222046221 146766893 240408760 619320978 931718980 765987637 724494264 494224587 96722869 502780107 989660298 403483978 629918124 75610903 281148428 282662802 935290353 304099893 447190802 738496195 124834399 611349626 404096020 805828366 785781179 802240399 725290763 793287872 374003712 336053398 410703030 516003481 114037534 495823875 837745399 440995556 148424680 880627941 577070008 751927086 214534556 986431714 340754401 148907022 116750255 879152518 944500448 942242973 677606639 606026266 742850924 103078322 775818206 265420971 568822663 169099298 721493220 697984121 410571251 483370816 124431772 385067983 873888691 54680823 922288452 270413786 863908141 50824394 188974310 83318090 798188890 559632732 909838377 509295273 311946189 935309474 370701449 333106961 332313816 181333023 661690781 18794533 59084165 543501305 627572303 362297105 654523728 647176388 6501326 219428536 298975704 388764270 57340545 862104977 342181552 958737327 862905076 963412483 295838809 643148890 294572527 388595132 724933580 43432689 27306709 342740012 600298079 589337257 694057911 359756646 516346448 807249710 701069961 626007366 785642821 340148654 734944778 815928368 644360821 733688826 687660657 923355038 202781983 155514531 509382275 772181572 964976874 442426967 814027132 642464931 937037253 694500916 112460035 809271659 54905585 967011772 799190597 805601195 166791223 336310775 716042023 974428602 434468935 744426968 281065278 293538449 977187445 581217901 457700904 539150796 878951294 680903552 764927078 302552699 732307324 264908885 909772356 586352974 222915415 924639522 237215763 468315931 463986577 833349317 88676248 832944734 543655259 268837541 442538466 687997730 139611996 395451121 306268841 789864423 215900692 751729163 483362484 327406576 111429569 439952024 557599757 42533769 267029135 73361381 198387556 732787385 522364749 559570775 558245454 792080664 665035817 331840219 106449617 546581910 593084572 732108749 607831390 620327904 461318656 799070095 721515469 484948003 743392502 248787572 694150883 555879191 379426316 202454002 869262969 247041251 821911139 314580356 648406354 396667502 749381798 661042907 330045180 458109645 752088486 125806433 851130842 533811461 72332294 425152914 166027702 183591728 261214046 33781824 44919367 168349206 487862074 729824800 80569824 21587702 476614479 303929708 549122636 517962675 836385365 557650010 547307635 856106645 119562785 494819024 654676459 166198100 122485872 117123656 534091378 661606138 962994863 698466089 753564970 995592358 286793497 138747913 855729951 400188291 822088296 328831968 803635269 41797190 278146407 343371623 97200386 871375636 331174961 483490337 448176832 550341975 661223396 840837608 100755902 583685236 884608475 805891326 788286770 430877535 895468502 97890606 786407077 523276628 414175356 62895337 353540536 746735374 589008387 771540562 696525558 948792344 220138911 2002126 104245435 487706981 531043692 688689283 946805083 273770293 499996498 558456222 396595239 406046698 525993696 888909121 852108716 750949383 163248136 355703573 188085309 369400736 347703312 111335958 850695285 571588368 229082830 783563562 254404233 670052872 610011343 866479818 255779196 10088052 889815716 411633 400560986 923895273 718122668 486070025 753504321 646193826 113396740 260611630 999483280 422071389 976344950 726916391 148586970 281506522 659793712 344143484 107841568 240550951 955413644 51848752 770035411 396943910 151933561 704834212 45210223 795116669 74359120 449295288 18358981 135722695 698649585 130680344 141903357 480927922 47185547 505430561 350875238 561780254 987665631 815145600 295277730 529405427 182398355 911127968 841001764 729744702 291893025 776232970 416505319 174422444 767394640 793145312 684253015 223054533 522264870 100719531 890947828 748901364 727443121 904136037 5543662 924910329 444237374 15111508 590140025 188218140 552215326 210590740 142225547 323462641 147915745 167001252 349202990 480993693 11382115 601958060 182779697 838448595 424653519 83149858 284878647 908312092 463905593 845155018 171264186 283228848 131415547 564533567 688535353 441017480 982388536 788716459 259253590 91509279 252213751 77962686 255250807 356283243 733846099 231665873 662553037 299286858 205273925 133698686 38943797 204737654 451765478 304799803 74939961 6154636 865528235 205396760 852946115 583965628 578239748 13235329 179893183 348447693 3937965 793448913 331159494 912481895 450249183 694963194 309326435 148699436 673527985 176385134 121112811 652711837 375535545 23610697 905552767 291415138 776982184 865014067 756010606 333102762 133713595 55336707 667150221 627602076 572808314 860648738 967054121 102436480 413549978 375224385 158509870 281043597 600841078 184974610 493122188 734817197 117773072 876700762 550562799 403371843 510644318 186768755 585866174 103667980 573949601 208212066 227015703 334663831 316962221 145919555 643222903 359434953 966117906 777755205 714899589 913413559 422417063 329350110 477057184 684084494 4407764 686462475 508520573 761488368 545484457 66126721 979055311 454848481 58833788 986322433 573290223 802511481 94878369 917681332 274936053 557535618 685224846 568812686 503055366 797075211 601081181 17579856 342800750 872400850 917112940 545146108 204959537 447779598 566014730 511239936 452859340 316483009 247012206 265993549 520947429 851229597 804523675 399059424 341114612 587668233 771657084 388535991 250148555 758051824 625504052 639215973 664789115 820593351 79303266 780955106 84080756 751890604 622504647 86332905 463062165 918467755 197432309 280092484 759201027 425979030 262411862 978944636 518012005 645994072 547575096 52622698 35846374 105069813 475978774 810636729 38479241 54012620 276068849 667657794 806470221 169179445 980960767 690693791 981254616 481569951 461674570 229831095 553964631 606099878 602891667 785664124 367252317 243238142 539459964 203905710 934961526 484743071 131165359 450883138 501626045 319282254 140917026 674125977 247983866 50373599 896112270 465655541 147220697 553710597 281644838 812949201 315637315 370035528 178483286 185179909 157645817 201291495 738371670 331704745 494407982 923959542 955169078 323717781 607053155 825900824 745431828 759901025 223451572 357868569 485881971 269800743 55024894 584837539 533092868 56358805 641863540 960279119 703269935 794647456 557724688 278639672 21391518 133228231 528199629 680108913 940265254 120998546 996152832 38867533 398249361 320794798 305233329 428203273 163626676 411218608 344950319 190236935 126851128 883004043 528962142 881913536 416341855 589513918 579427179 335039933 224435012 766997273 575856884 781253328 105212389 709615114 838082144 738441285 364292269 381689017 729350029 989755809 749789297 870937530 135111296 607645090 148180147 83394083 314429690 508247620 985508691 969981124 838657169 728713136 363363790 544451686 731938893 777018097 713764058 976230083 942879380 123051625 119269044 806097793 228533328 994200195 691440696 775751585 617332625 454458674 656031072 138300126 509306799 585789812 208223418 315855692 48127978 454164608 290510889 612049648 643502618 865147795 396997027 455625449 876326829 286728185 655333414 529988434 758514503 970731587 349339244 998028241 232053839 883339698 873138025 213457591 707870674 918343198 423933138 651840184 80322591 466869339 225080064 715361489 111101095 622928095 906182065 870540292 482087453 49472353 302914723 228760414 2053860 891961267 94191162 382761581 861285618 200883240 877797845 232075802 906839825 219397759 64048359 799122628 928016342 65930517 610707621 16913157 4121714 378516716 936562107 51218340 605871339 300158443 906921983 843795330 989157505 377825361 684233299 833359678 119353174 765167004 565071436 245198965 52224096 581375860 386147099 737314288 301983099 327776547 114962921 258108901 709650320 640531016 428087998 535336115 770860003 983830466 274893675 235121725 596702367 64789844 361615548 546016429 122731319 536826265 793327517 518492015 841895219 635406382 640718398 576318159 440642443 8151209 134998021 496970181 168180849 869292975 388215412 490773605 80480681 790867461 936629897 445571858 540198998 244016113 874030960 704785647 923535297 356000467 108975423 741500757 139872938 620544826 837640108 881174848 51334465 312181739 48320860 860212214 397468763 165232243 19082873 241311768 36786132 22443532 786476521 54834699 804964863 348748597 94396174 947998511 49660626 678907868 282273575 622478096 48209970 309109485 746520408 849359514 671431647 882709982 532216542 773682385 601143873 995123001 948441007 987589049 151266512 304760839 232717451 753992558 159412354 601571026 774521984 463777751 374453409 98028496 905417605 801151102 816669281 180033776 224151680 965486512 212271550 707077366 216740656 873029216 24768614 990364332 636335406 190051149 442071539 496341978 863436873 292980284 498643937 14028454 306603223 276578095 244703604 41051482 296667810 758111146 202901519 763595114 168828448 76442284 106556954 260591372 189776652 615475906 326050084 295914362 562983456 127198534 525500805 659735404 119214866 926238256 458130301 834576305 732090002 536640759 941631197 370414465 486677710 238328889 189523643 527866618 425192797 449879069 696799232 963815673 166447311 252902485 833677630 747944888 720587218 35297802 40576830 351136851 673667113 835331720 476643453 940165297 79465679 622631139 889837955 810977628 955730627 55306995 776414121 496983234 871263029 298995617 83607921 655670161 803319649 328417451 945006104 284225599 665587586 488685083 708185825 690580114 980116036 819837196 443416470 708441510 756355844 895456960 945747879 945489009 217769095 206557477 155290882 249223881 364286754 691399914 481600264 131594464 250138771 900676891 143895879 129763831 435674869 293800920 589795904 637208744 35843998 467763513 466381315 651177532 241048958 581031452 36441639 430553506 129142292 293804627 66014822 666919347 466734044 80944076 933721456 386852668 349992147 384994991 685150927 837398265 408305211 642876716 373837682 877324176 274065498 645996517 968473826 371354532 742357430 518210770 42903785 276019694 535824808 414932314 148399855 43244310 76285408 507836811 288594187 493682137 957253269 920965840 497041503 98411347 505025641 117863721 313254147 532897313 833821677 968492054 877964556 974864739 617411933 693436305 521330633 384461090 312923992 233701136 250402570 609060796 741156355 549822897 807439426 471527330 311434709 335710289 665577493 920485842 285532189 2904396 31032607 200621875 646247847 541709847 893567257 78234541 749778603 418571823 411420857 749261836 842628087 680481981 809810979 270915650 390040036 295947172 212785505 686188245 949143478 605589418 77211021 969472861 709726699 553800655 756850821 323948972 514284751 856022548 809257089 673301030 886273966 512787719 233521422 309036196 54597378 746032060 118302683 461602103 290493755 955879357 447372265 644220971 113881103 476879416 907691495 374664011 546791789 638331626 622141121 172951863 530450847 155914957 601472061 577749220 72585636 990804957 991261723 14161468 326154461 406216291 334564670 816199594 733022510 402667939 157495290 35934844 178066139 488502882 108492895 158557496 195398110 829573918 739274481 959018684 568263614 44492706 682364719 607950862 238536873 829566050 748097041 495201424 739879144 812441483 419381640 761294152 903168539 696837696 290034988 294982410 138776944 560597766 208564663 611528508 7305344 119886384 927896142 188947986 426331603 843873253 202701536 524096265 69036748 981302931 872397748 205404441 383793510 100865901 441254681 226688056 477548039 611126728 657405574 58250653 108897046 219608996 893713376 770884506 33040822 114028639 166552535 919598466 210695199 6207206 845743150 648636131 787060394 941110337 897093849 533026372 570861807 531547059 38742963 591070852 777030970 182841556 523863527 723274851 149116076 737611952 307689030 467005955 90806403 14374182 998196884 523615291 448622193 729487484 913063459 718036498 825450818 154210012 971396344 688637980 347979595 375637780 983269155 720900090 686738705 197739155 89731540 911231323 146096009 471617033 175753179 192914232 734402471 871201983 764351726 861062193 194424282 687000210 566423313 501422185 877021729 924745181 615933936 884606281 668194846 557425791 198957297 828201766 925810429 336609579 683579625 227941272 103322222 189458177 981016778 265148602 162991280 220290116 246750966 494511544 401005551 35124052 69676020 785755960 494953293 855092679 344432757 59831716 527885690 66434228 161730438 531462473 915706954 228254783 336942684 504133415 395640626 358532025 46516615 8911507 421901066 768560022 665024578 199575329 17466582 116202255 533200471 374276120 666526411 861969853 376670733 740567399 349858963 877770427 928208455 722986244 969501126 382961458 150996563 326353088 207460453 609697508 897993001 555919913 473222052 984660396 469342536 864122942 223795298 351694547 42462536 620136511 685443115 212344584 287334707 119221794 969789728 730818265 561114386 563483891 92101421 879928083 746086789 600798474 741955957 77070630 269224206 153831059 502655004 911193106 901942877 234795524 508820589 924001467 568000549 65473974 422743788 479326954 366571643 677368483 663555179 945017297 16446306 522013807 109364206 976072884 378531793 908356896 588838446 442896621 614606475 169628010 969608315 180532898 754809582 68464583 216616060 639769498 897162534 964140882 102232193 255438359 614964878 172115099 49437129 846837146 813651283 397411655 399039670 432164304 111484202 604682641 109802957 848497868 476573320 165118672 590678667 41216918 380606054 32833301 362917222 810775704 405846397 388321670 643242087 953670463 637099009 664372606 596098229 676874371 470265979 39214803 383484316 320658608 863624345 270063703 642128316 467400406 860569528 334404394 868105097 511871303 735023283 997863018 944115740 946379003 497432214 860358813 713363718 254584927 501780758 776954786 547291083 958219959 587068404 661255631 462210445 609957644 555559187 480426053 476101118 265326038 428161460 900493973 656524614 744066308 225668333 39341471 559646909 251593007 930193285 225896770 771814938 496929644 224413905 488257664 854071595 503233458 677944163 678594740 141591734 785856118 980929603 521776569 770679761 891261533 740824774 898020383 510083011 458062080 501187452 849302904 312511715 423397267 654961559 786044596 679605965 576848032 266061074 936447377 854643075 623180654 930082749 337496255 789373669 256866628 440765807 179734480 469866565 280950199 868388498 714195734 349689410 610676493 828572223 813882116 155307078 685666902 98215507 844297045 837112221 753974799 778633176 789693436 687676151 952569933 630613531 573957734 267348978 860697678 274782173 845146702 310792727 314573176 304350295 979686247 247684020 952120671 970750001 616096537 665310543 532009624 188918778 818740 715390289 291189864 777827213 293712419 569664619 580164850 937119819 875104174 825770941 641947757 831650137 75321019 463812683 6372778 593339470 213315738 322223872 917214295 5327408 638006510 725369236 200346169 564977599 511343902 763651011 710809366 736687250 941578840 716089205 575584990 850870414 439301164 74193907 479737389 154342457 745271753 710469201 970441636 70351351 828011369 258860545 74142915 930514426 716757540 507418389 147739522 887116953 535889436 65352189 57159375 846479488 634254708 275401640 133002988 836712314 784751513 827893862 6811295 639413785 60626425 394629665 671482703 345822229 859201714 46307311 49549464 426613026 734169215 644616485 615690853 102378834 115378837 816836519 265392262 578888821 120333189 788938487 372577940 651061236 418134159 239758787 771769312 652728375 350541751 831523131 650775648 673658148 114807697 213949577 654096213 227901228 516787830 445334550 612358695 906894657 76938173 350281040 835996255 94992458 114051458 330235247 993262595 566539915 849780866 977332083 920042905 372481355 977352892 19705734 177558421 223602219 133786609 2157012 648484126 653719177 656123392 908159624 605397522 678412403 970667914 801695672 429414929 606491377 610940907 106001605 821924795 485015817 489024670 713533777 519716149 471422098 673702840 101701503 163960048 526865261 650623254 479952813 637373627 126152011 172798615 376386856 641516374 952628724 785920443 448753740 359128461 779049234 589171181 243620687 867293977 62054531 371437257 104645445 142698598 739523705 980854977 545364023 815973660 92316584 921160475 196138282 88166244 750700118 900401558 872606491 399687346 478306882 164182170 586133784 741240625 473821380 171821951 236151976 273384568 867207625 551840990 958410132 904243467 707301054 589181484 16901747 880927898 323438074 393283718 503438719 256002229 963776714 22648128 602493513 56194407 309408013 814443776 176789425 30198735 983619198 33017753 326130746 807090759 964271375 661539767 475448624 664679701 203608688 764010099 531259900 509554607 619197485 514369891 26710878 273835846 91149561 910584303 318966559 658387675 945533542 355668421 850813616 57409983 362967587 514324678 235793934 595647485 683288180 187178253 591261233 881026434 82823577 980823704 75818641 745081255 714163361 416193070 17973342 787895371 120665800 962281250 971454073 870821570 874115456 163394223 351828981 800230415 590068541 860233779 77130185 712434022 815558199 262599615 658296235 350503804 351070579 282576623 908319731 613943076 780357755 557079113 732381962 515933245 574633563 565949032 923179080 127698841 214376800 229210353 313145967 847947756 400702594 613378520 614860086 136819333 352055338 198196742 238612139 582905646 98839189 629218071 415033374 822422172 799743039 363407281 969635345 990029926 756648475 649305971 886976751 64373618 522949835 963034049 341790662 369303935 321695663 975509561 323066596 135984404 36458783 551984404 353007205 282823932 997181382 555264081 991652623 38152637 719364277 334828364 743435070 663845695 694112769 14293347 424188574 912704837 986402041 299148828 666414199 952315477 464519704 763607249 942409895 755452747 124377603 218273908 935235308 12851096 23550400 194936973 599224179 731173179 79230367 205345728 497457433 104162276 284736297 192389728 277441440 449516859 103052900 804747622 63661952 643502977 655100327 465497450 730104380 586789594 267319956 172046082 238189930 94891694 590401970 73166450 921802013 588519809 972743148 137608314 54351760 952284287 357382499 854173642 626815351 22266885 196370360 625961614 505957797 657182758 950304538 722975298 630445793 899776418 924099191 652433331 953073560 160398392 979954395 544807129 307827382 742724694 226260287 288350167 826121919 574339810 630862509 144723791 911906228 694502468 391811030 133483118 445468008 571804038 223292894 983113678 815146688 59790198 392583650 374094731 373302860 80324662 420700991 430726600 172558581 120688390 636437526 217977538 97660117 461364781 582867919 131739005 71862873 910183696 506792653 130283659 918976950 568184487 564517869 904860868 521093655 918033694 882605009 393724165 863776933 388172713 268071903 61331372 940703708 12522903 264117507 456450788 913599878 279932275 535508180 309382962 192937137 486119760 717222407 183974262 684927244 325181014 69307862 645875713 927524364 699918025 776394176 569198809 639574609 864844376 121999381 944387574 433928160 4333208 746445821 405450669 587080518 694340635 965867269 506374608 683885003 163825998 901230137 111927145 122631008 115931348 596488866 473379463 733969440 191466229 929304750 189707180 648671170 932694292 414769005 411417628 577422679 710833091 286097076 705764729 113727768 819773011 476800502 872365949 554988898 123554171 6252707 136365223 409886079 28748175 461701402 586110677 339116398 185442334 727041065 848744707 710633886 474990183 457932607 724985456 476860765 548470140 554328076 378416970 871710870 420581971 647953285 972914590 781127344 910231687 204879866 733649346 351337498 126098141 408381120 45488954 124290790 266346543 190256832 887581546 964088674 681253927 772033969 677292972 818156312 52854377 572212982 366794334 3926282 675171150 347289260 177183194 31131085 566567675 562440370 224143366 949607223 918688909 666376143 572879231 655941496 18394926 910008647 866478353 620632299 482342770 50503139 208322263 237306184 116685998 386026698 71248569 616085307 32830034 260760565 928607438 823988359 45947466 219260069 174667435 908653909 52123881 157133502 870174587 683399689 27888450 957915121 969895402 744310962 976532155 846814558 801953242 585319218 209365476 476719666 416097733 345310511 51480483 487521944 676356919 602599548 515874573 22617494 973602010 889800107 731180602 390549906 595890139 917345132 915809659 838910429 662752479 105981302 517315114 473665250 474912963 468588310 327964554 201683361 827579812 827711883 612751632 323678453 200153248 316281926 831220927 273113701 477937630 764316416 350493252 946980123 332319880 635997448 326318834 121539844 916414904 795473001 348322077 449445277 744467838 332194527 71636685 25078135 380556477 582010467 594158438 101063473 765079348 724261742 891598662 142287727 231294515 436651179 124760264 159881146 57641687 478224686 688573099 235194803 873293075 696459753 423808746 548745052 214094475 266828453 688917668 143350601 825082909 866000164 658361549 308950634 611397854 801977690 189302076 514592273 140012763 100432785 420716639 932132648 493613653 273099814 819969786 952968194 304216750 15059049 435181597 56092366 794571440 733404389 437683492 495211514 422349388 288102008 556854670 465422517 273045616 655192810 342723124 588603572 510801312 951277511 111295737 231198661 341689386 906581916 907357521 822955245 315373131 658684332 482923374 738902018 23105636 824211583 607685299 691953336 117056567 485395643 186095379 493840599 73239482 91334685 832987669 386322032 355424910 239350348 302142686 430159334 675280134 67936724 172773476 512960143 119113244 107697505 791029341 432792913 821106181 833446222 1541368 826635012 11770058 629048609 912669261 967567757 244872545 464197021 452366948 671731135 45616732 20531066 676576634 643093884 239898311 748865576 918780633 767713620 920356574 729383636 660555476 121896997 280072528 166118778 187642596 770824533 108338071 347678697 289387008 104103428 157970568 655687558 744717475 624761837 115458772 563355362 474654377 106848919 50563108 11860188 251128481 360535286 144886115 44375283 510383482 243058517 592349057 422244306 252848003 427427223 432191217 517568812 9746062 374477903 429080451 484624216 585116033 807648886 799667131 323314528 358039192 828204875 648258578 804422558 943942195 646263958 474602359 28913941 676428803 72937206 366562355 773693694 942687794 161473856 434774664 498167738 982817786 178202137 704794203 162882957 963567677 818096049 933849908 998055309 486528310 218132338 256481315 832236942 700458590 686633733 472699813 952854934 133954693 484749431 86049009 98114274 906609983 765406453 860326996 476971031 587535801 66899606 193349810 519524223 73038887 562132512 343248533 17462056 881313616 184567410 655393697 110627040 989696114 189514119 91683869 395784922 823008547 460475979 497079857 414225431 440713006 926541728 527932480 854451628 260982545 184514050 123018101 277858300 757641404 216119458 532999491 961091071 205903210 355371250 101040628 44232976 66994960 141824742 893591739 78868778 497530237 399884116 447274823 843576322 397518911 20968241 160030155 194783415 442485847 739570859 336619368 414249979 992212447 554385443 969212600 636557249 24109431 481897921 882067444 716070215 888250919 403539120 592779864 828389921 976066672 426054456 153442995 344854651 240046071 385309590 705607492 601311509 544956831 746571128 950269127 943588229 178669716 45034664 307186753 555520447 395719381 84868063 902004288 194199993 579403354 508368994 33686734 79135884 48789154 884104329 52340221 790131255 633329458 215446449 187355530 621673055 139492938 940677777 13303463 954690499 272885089 168997522 412922732 534117753 121845059 937472072 606243551 897136663 175565772 477620129 785326700 912553040 470539250 858975251 606825348 344402072 591500355 264260661 375838241 62695629 956874129 395809093 891432768 486456185 336826356 520871458 484793379 931066503 553631012 218081994 660604438 958622842 618222596 685808633 224839954 280185195 974770118 845393158 846151304 857556283 149099032 803466082 894843393 941768510 901867245 962559869 886451886 624455649 479088395 574375686 963711858 476329181 621042291 901892701 179302023 176517528 893228649 858002768 941408418 10364866 202772574 315104067 278930532 759026671 69517082 133108143 256084199 31049551 460968426 348974139 546436420 555546022 532421745 822924586 313571950 59519033 78878602 768382361 250756776 221745195 121550851 275063403 331238810 666003701 507429350 713367205 38729729 895243865 824562548 93128374 425742675 419562626 916117580 561794067 105588080 228708667 435307345 112342496 511780025 262715197 410784960 739733222 525520112 840060012 741865467 751015285 726664204 593676840 340199771 396670723 787165072 162120477 669034139 910965885 895304262 330305561 941649249 861455072 127741540 35021210 284002818 77130141 461686112 462422495 958549322 523107904 558666024 910814090 439016962 140702645 687059949 165948348 608286637 757042148 433108463 618328992 77474028 625365273 1420347 86120132 990361996 109667752 40786681 209201289 635286706 210766351 190684153 752581358 276843731 178997384 773256493 855293533 419689648 978164339 869623649 857963603 73484771 60773162 579395890 720203453 921391410 924317566 598741545 180243668 754532487 541708062 268747920 444342989 732773281 453661458 365819493 861830393 961599362 570811723 555278257 795683603 458551555 44354555 874705155 79012564 606480802 85985124 328291205 931836929 684549109 367775427 71351763 538361788 678740015 786944652 587433650 597576669 69034740 256905873 977385320 383667893 918959266 264709379 155817885 3225062 448331764 938995505 632560101 367966013 161231978 828096459 369027979 106808815 248582277 727146877 266406625 226768126 705186064 431333341 699149431 577030523 782314653 16947645 942155994 46165314 771644802 746042799 661482499 598334430 369360806 700090290 346313041 781176358 484256083 776469354 884523401 782620390 697868202 235946047 31033436 496343058 496893120 566213961 167765166 276853576 451297054 39456818 780278465 708026765 536900817 342423566 962836171 95363574 828370479 543619607 961717938 78045099 152366085 820919982 145176790 205140003 126743224 33356217 269712208 609162357 534324898 920584085 63989294 333769894 323311433 495395652 744356102 965141345 177549668 662550727 895639266 763935443 170528693 921568845 548229999 950001038 619765243 415249633 970253702 709704246 9619812 853158980 621121763 972722449 722635150 938236994 778864447 658749895 166609648 506919076 16962727 949729827 618359635 872895467 607393387 973489116 636690228 501569060 774951025 446553078 999147620 675401341 814313020 583909461 915879412 80853995 918583827 462402890 971106312 567180271 502729315 934184859 695809928 683931909 434172350 955144396 309619885 499365559 342711191 126512501 203635447 393598424 990834753 74731170 613643687 547005418 358015546 540322644 52490616 123819895 485390479 887002837 300058941 470884200 134289284 218576585 389241567 808483067 987540034 595413748 895627568 357707248 87269479 156636246 924618146 347489584 874222723 849051269 380459999 31411208 595027630 468766724 209852248 221096239 659421778 438534381 931907247 451741757 764224539 81787406 783204576 142972751 572268250 509095453 485574537 844265420 461588516 749412039 800669214 137145001 721014380 298021916 143736631 751618393 492468552 716891745 327809938 444549905 425545389 468061407 106088346 524158967 145052719 54676392 131902493 463025983 979656509 604976669 264903122 680982118 929312633 959608387 304481706 902805023 505489549 812267667 180631070 793302142 748621170 201115541 943904182 296909114 576300838 968565438 194661314 512792409 208819836 614844204 114637385 734458243 522178662 124285988 247899152 896969069 157032885 752216606 744854314 892782734 493484908 217532018 314180089 985896711 654152500 971876804 320938617 940064745 55919850 601291196 393108023 138054134 966519080 554531372 546133265 995546067 142798372 55289933 455752237 731524312 64124716 752578979 122492574 914140258 175808065 657861081 16835630 814228168 194256767 526781856 455523149 404073606 216840342 533188886 107470762 993687672 529673904 559999251 526689187 929577343 385561060 2456830 701682354 226386991 82062853 294275866 488677308 714280313 803535037 311865200 517506946 947113933 76144759 843373374 157508586 651774984 811371051 110809268 45825816 366594159 995024978 591476445 348895103 218190024 884768229 577059717 742571836 59087716 381612451 511875731 790752893 731985077 710088903 483869259 45478415 89135249 247522564 206509473 549112868 658637586 87408704 341325155 336751432 107848757 34163149 908321996 94139397 604003906 428309614 698720966 257939068 686121960 698876027 429439493 751642728 26138961 627694324 538763655 146500138 298226877 996757120 322697960 120264570 254194213 732410279 686606063 43479181 619980747 552809660 210034409 503641910 971723145 160818482 908145547 503862351 466683710 267166003 174847041 986480874 866365626 690680934 555432615 656090074 201232902 927250605 560624376 827243695 739782553 61067218 830742723 622905659 25230819 915191105 661392523 358763140 767579565 488879568 102044609 705143353 210243169 735930998 664263041 885864933 982025732 473395850 964434180 286431864 354707675 915388206 934116683 226072633 665458384 92418074 296074875 311521724 35700273 774049250 760019311 259324364 362790399 295233764 594209632 299888920 256672901 531197330 716403140 127336703 210355737 433901928 704336697 325470371 607906256 775862729 35815654 310194841 621308538 230562874 734639179 515359212 613908085 638959662 500078572 790293231 591524169 893353278 234383944 457487087 998810680 14987602 608907877 943614284 903068386 991188293 438360733 437376372 583803537 633649503 308620845 892019734 834966043 37610177 189211793 937071975 980566080 855895607 402991415 538923356 407279101 729394290 74912384 255918741 754145842 854045147 681399180 592224974 183651244 506692529 699468925 317124057 585609285 998379929 535521269 137852985 837214179 625683208 937834783 548800085 728030572 755701837 541553945 778444651 253632021 452869398 495294482 114551895 896637417 801063309 840912552 974732030 673451489 420424833 936739752 303425771 955193183 12738541 432361524 150514249 267625831 256572302 141995671 201817111 716298298 4461078 765883938 24329101 882839960 106994848 941785419 947740249 208543439 782465749 33443276 489153620 771491631 729904062 608166788 337684800 955062992 601032043 181519666 853884129 539413495 571089605 431862457 887296675 154489161 680917603 106537284 778306219 555098638 567749612 942732513 757984828 991103154 608358633 252172937 882458323 21604592 11963320 406970083 656690707 826786256 246024917 239120737 652400853 128471803 748542164 50341 599698815 52204307 932228924 820246781 253541167 670875855 772964115 262472339 41727508 739366478 197549158 249783148 933504145 703054606 362962165 769133950 758829061 303839981 315322702 812325509 299708251 713707806 201952014 257668496 916032689 671125728 396545547 45853743 342826256 250974399 386967344 187457177 873722243 92989489 300748633 440748847 721784661 429788057 556509310 594265431 272456090 804687491 754909022 898200688 474980071 257171344 943536494 66819514 959936674 794387574 174425227 826558322 675647199 202998714 665543595 271613576 477847635 288311307 490383485 50685508 870271429 312241437 254469874 466131805 602979009 898403144 315645308 508731909 981744367 315697439 689919938 570903454 905503925 598038304 524704769 810571998 12081331 426370062 117042729 884339412 275013777 455993777 82765251 34735082 331669154 75662090 26184548 953711456 989273815 186076649 577248249 863591095 625231861 809054932 111318632 858963467 233162340 420153584 658691461 73015267 297082975 416751301 706369611 647469467 121081648 513301786 307717147 190008251 802016684 173597587 940256313 315738284 932292303 658414508 280405229 240490792 564878247 375374508 310368386 113775367 964660372 933404226 212889226 278665364 602414310 489725272 44400934 312836386 795565931 453132400 849890858 830083665 717712157 482590173 645348342 822312554 409062899 304316089 910111540 911272548 692950433 288632487 436435771 584579034 365708194 587218847 909056401 519896459 896954265 133251163 926905048 226978351 511465853 97416466 289159273 509680254 924297378 501783429 693836871 864259212 97955236 335545643 22609815 629786981 406632726 323721292 87082151 655607946 336196541 285977156 568236466 410823621 902226610 2590290 749461455 444517636 872397753 823975976 751203657 240701207 842852360 552521283 671988141 976302926 614304338 996321308 322288814 390375128 158227612 362235800 800299998 227812217 214560567 331605718 746145239 299697844 372960807 694626228 589181040 216640463 742938696 587781631 555197263 388540167 652816375 734152796 613448317 230410097 357357749 95796873 430532983 910077872 385317028 724973808 258982999 480456268 721891934 588415426 734171611 221789767 422006397 758571303 475920203 90455785 156484741 757303503 805685358 14518586 639544854 710044592 351674500 175592563 223730262 833958098 751686369 264849568 599724314 384379665 137686752 743569912 375593642 910546973 839645972 276725141 663010061 475965240 270669321 729345319 309972697 578353099 265443433 169794906 917008070 524424000 737892530 627503146 911991621 148759930 731802442 234838988 195033688 637137766 797241890 808583986 740926315 32493920 478157881 353141080 512217992 117975965 651889821 322823108 396296422 196697020 246800618 341547066 811748282 895701836 544854922 479757795 447652865 410507132 814703824 304970495 84206796 640210142 106903168 592022392 152813698 819617462 326187353 172120988 106678314 568824833 934882882 267818627 275335639 456060476 443632097 417979097 805089564 929832901 652332893 779427873 401962772 882655373 237581715 243312500 208670678 127630963 237969951 861157219 647117145 728687814 66454348 414181881 69435057 692322172 437081531 457614635 45183996 796386616 916757876 973646529 783172736 90973565 548477618 569242046 395287973 524859394 229715975 313772272 121718647 684144828 91119744 581740693 803039249 908272414 624518743 747246132 839353776 459310806 200704254 789781717 132835591 803991068 292832794 426082470 578004544 615035661 107665542 136614724 866221690 981763193 428479423 573820209 4185353 810760995 910746293 840158368 665531933 944180916 989430174 716588668 891631379 614662514 712793717 436028059 761022218 561373683 782767761 4235478 969169671 929743015 918913273 311532623 552186735 9046041 201220125 323867194 94377842 966619598 758339833 196714460 232777478 968334823 207241956 64160624 338619531 661366914 245011787 1646297 432244768 91389298 418234012 683421807 188660781 730050625 577307515 23622716 223995797 937933321 538213387 101289862 806282332 130579285 263536833 70454174 280568184 605801476 864686343 190613738 966331913 885969688 243456314 367861005 26126778 107570555 154678333 705939583 736981825 471231609 225862623 421731303 801694894 936342318 306765087 786067261 443726352 192987912 54513250 672208919 328883058 492742591 359390609 567032168 539277681 866808889 709910581 588269305 730138742 268238043 371155350 30170976 647938853 768567652 446013890 752275728 353696622 863292979 367190678 793141017 25645139 710031654 766067372 111893678 792173104 625375668 543354307 162160558 628461483 902047683 659577597 801836050 747124081 188975000 77177058 303550286 431438544 542798090 438467629 786124610 977914959 673225134 742289580 246138722 213105661 258991490 274509634 453326518 869992182 946539805 160683944 64846337 559454579 41037019 422010514 264439141 965623871 651917416 528960046 312355801 550544277 463348179 254430328 696556706 94823470 696676815 457456766 295865692 279699251 185713341 311073575 930758714 873908086 586607513 754169302 826950883 837855773 482888932 34885536 137945629 975427268 138945974 647350180 968803065 349594302 549439736 115129783 640725961 869965747 402132180 897409505 136289317 212928886 677621457 309216817 643968088 987418236 410109610 588741567 607668555 783228022 41955886 338535629 235226621 221236382 235649723 463672207 913374177 407869042 911226283 880605486 179380341 731844486 511740411 578789417 820503550 400331149 420055853 495162587 938003108 282548784 913343016 570310074 824801494 173669558 559182351 502683935 480203254 51118374 194797382 67492189 456809233 692934068 93656552 240698701 497670358 672665882 693460248 673814561 498750932 214253737 289880183 889888775 816811812 136316000 948687824 278653576 112749332 182249296 863639832 87188374 338579 344363418 497080352 758542566 199677004 98922521 217395325 187830790 805773755 646020906 841182942 462558479 40962254 225439674 35640646 695311768 459779565 510813289 869803207 341081433 161174132 915626364 832233808 501044701 826412399 522217116 18738729 217293157 291530255 149196299 446036665 698323576 666609462 955187283 256445031 523145015 739880327 956847375 62631155 177033955 762864982 306265473 844000682 377981668 686770238 913371886 277007846 860397168 221553551 660616765 818565340 203483507 762347740 249949695 72719736 12045015 273442054 505940844 673463522 450896274 442647977 228793040 991507004 212674864 391809360 369545098 580285642 712039643 64439051 73782166 608808338 807650923 379249269 535321198 164487109 533061593 916589958 347474020 717756328 92811444 359413252 916058315 5902400 316553149 780239795 725468932 835947100 409997120 244890172 237643953 520730005 904528776 597012021 930396993 920783828 582771957 324774032 728694099 467087612 672181414 981166854 168112656 499909882 617681745 429840385 155344450 541679719 380607552 327041532 282752094 521943111 721967588 133867499 218903255 725414659 505819289 166150477 853815119 580310395 68806199 566949150 848831279 317502051 233773350 194441810 936060713 873890290 493529544 798836435 167242489 806693472 68329122 119307210 680112404 806408968 913493234 917326928 504836060 728755388 2179256 212471441 460336168 566305434 959646874 277271453 471164647 580215802 483835280 707843151 430327022 114091935 804173091 734250477 249517609 673126873 248230317 644886919 287095857 76075967 758372953 758972538 390096039 328694592 535686835 266873554 262052365 22515752 507101851 152263849 593354923 189299377 417852483 713554956 237901032 203696158 525343141 729149856 473875440 515559235 866369213 896803763 366912744 795060122 292096165 28238329 509738792 552354240 804775998 670450282 228124572 351153273 334033240 657092282 231159804 338171050 915439635 418273564 717446709 741824597 344999303 426002265 736168722 639736669 599876456 94939285 501289695 999511086 864544047 955269757 234988460 220445468 148322497 561925694 857639008 811433330 37840327 75054686 191660662 193900 862235573 119792244 111363770 155382546 549959099 736067914 37813792 456399417 19784656 674487107 382299646 977336920 842867234 597439244 12474387 714984027 761635102 196959804 572041168 876852860 192161713 950767255 75101340 148620559 410833863 588253110 636279370 752989689 763653492 396642330 695887037 276407846 798200338 716301516 497607453 921867996 426971652 615565750 199721411 172892852 550423757 70830659 864476403 997727198 545100261 715689064 612611777 587397117 335816711 510755789 753721343 927515685 440511906 158427634 836367234 305211453 826142981 72937854 724017988 419661622 89240195 601234397 271321979 221434152 290103443 195819730 659195705 627369830 846178497 479131083 614261665 888879894 189541412 178881905 101843175 120378313 791116586 184989535 601188007 770282459 942607928 798845822 202452120 160670571 208563316 664532038 169137273 71989390 320738500 789959402 802775265 804887679 859343191 928190590 296644422 447412217 340778767 28210374 174911417 455456813 724995645 483019460 81759779 923623086 9246629 658216564 448362547 885261866 625408129 901741222 255213786 611827825 490869739 680734749 372181619 659791684 102208146 510554655 801326870 429860303 214495266 477721836 362840223 77208648 498694286 290304981 475471231 491480972 835233392 516338126 384798023 510112635 122623326 249612415 316998139 331017608 150091186 23660922 472237581 417103716 797762654 61524757 239395572 157089911 344949812 972149148 494333071 76713468 206959736 105826743 362072780 965592719 519892019 429167178 277211 829355431 287729963 922520497 177053524 491707829 29111742 412601537 543826572 338660271 846386221 403025320 910868668 236047721 886746037 713940741 812160131 976088284 543889204 608532898 532220715 465913370 804221327 845704587 319373233 221717616 154107137 66801100 259079105 185307171 691760810 327556112 497132229 618029804 548790550 134748230 469954130 417327558 471559929 325776812 114184591 408676 383797645 802767630 138872844 452757708 629428392 429555983 327037809 781593962 948428224 122542464 988559515 133449846 46674097 418909872 779666868 779758133 137127687 266475325 961782071 643513055 825760336 396013316 558716192 71314090 601399483 717371117 648691336 536512990 465784484 387032701 370017393 448011917 204755075 598634602 680722032 399673484 449086042 304123611 290310429 172271559 189375363 284425416 937213461 106252941 582113307 941406790 689097333 691702267 592166660 278638775 518010420 830280227 98108277 233792858 412986774 751990641 40963834 605643709 957296175 311913283 952533880 74574364 816863528 879842419 45107426 85729926 913372346 669889717 84009278 474898557 206392420 819229454 719349473 349216616 755825921 797490181 82424878 118191416 499444076 225545498 885179908 820439206 633620008 894849821 806484654 212031423 201714779 369133489 893329588 778116558 884441173 964774723 150656008 289990259 479381377 412224734 509517335 374609368 263558515 633347693 312229851 268804435 157362036 717972284 115007434 715456188 437440684 310157470 814518434 992617472 186253919 558601535 718111414 495866441 521976773 339520558 52872138 528012226 952904569 507419528 181792069 230757536 77301171 965584171 321976752 165838096 379857458 360555088 670181132 517720590 249705135 776433713 39644352 716871754 303151069 223282051 349422168 57107857 144645132 368289399 273438971 580009366 422704710 887759025 674986803 83858156 269418520 367382400 841930480 642079879 251552663 933327522 646565653 384258092 597212374 66922560 457178891 575122426 552711585 784150865 164788717 287471270 387728857 530240209 754325287 179813635 733653758 352842653 423631913 951098376 218420071 965257755 156400859 576381079 329466261 924863544 767999930 194539150 258413760 569960367 57731684 700590555 370750804 554020924 862733691 329913696 895673405 531412926 405306360 494238282 770831896 915657671 61049446 480018961 502396679 5872774 921949887 633561084 234217899 21257012 133473370 981151144 426859992 198725114 315709827 552952795 728097966 236800949 114306049 619416021 673697451 523001754 412919365 773564733 456184363 582300729 864385896 857843813 22311581 182931334 208766561 45031499 536251619 349938491 372908614 488045624 18144381 725257696 912126743 589182229 867108277 975641042 678297458 890296575 31535937 86948002 395829332 983967853 971088153 128588829 139019960 195521588 753850156 126696098 17232621 455007734 860547558 600456559 162250608 675318448 636233993 124299309 132233221 624198860 885629779 847212109 311753911 264624166 445742960 227826538 212929551 316344382 242858011 543541191 781013428 720423928 636021372 379225595 123250771 926760468 176968588 236293953 493570191 907258417 391840299 690067635 135059176 226649307 935008604 614783872 493728888 434027143 157788411 464547188 794537218 614338796 606053322 28833519 848904732 591055649 12211253 462066521 137751114 257431264 662892954 544291942 980137066 414079423 623417258 109335029 569505566 494611260 326248456 879843093 786760750 719792735 486240202 276052501 817847901 755046005 792394742 857823748 840241424 565431279 304777792 717024348 122714210 570108893 104432251 961365494 165422265 1860396 326921531 840891702 219464651 912497736 184039545 825911421 996633081 139022848 402481316 940400451 423591320 530324029 987339682 343253182 393090426 799759018 601019424 837812868 236663165 814805140 371359540 958202654 362699793 372584642 122482150 991639655 684304783 10784129 931213867 51771957 402881595 560543155 480150674 793407097 868314999 941994367 713153282 503690619 844786863 761579913 715801019 946797372 442441856 26189196 795057678 173422985 518123481 579670765 267716886 783429700 438467675 560443023 313251122 211884734 572125729 94205462 413352604 863477559 451879955 74064453 26944099 177595736 523769597 640783690 422611038 463306743 536829721 606464736 646573082 12693533 544745225 240893379 884723466 57882035 860291771 618042683 997700205 389261218 861384855 499344104 753194537 653512595 248854390 895041641 368649618 623841380 695534015 299064579 521294550 952625046 552242780 341077588 137609912 590040391 939085114 942676898 747200673 584478021 403718504 169923638 326836894 908838472 795162094 342148773 165314510 706813385 7637181 593138516 565342251 989565343 521691849 989877042 766594831 613104430 428227857 427279638 894976830 629118841 96054343 999315665 130566826 843794043 256710405 827968432 904426474 56468309 122039430 389699104 257894597 951994893 45417796 611124049 31688446 839888890 653414122 552696357 287648970 463795188 472010928 623777563 580598152 131163043 676385207 9003073 102541668 80427550 400436128 131263346 87955418 220861510 523491621 876949138 230930293 833684864 277559684 280569205 286905360 741924609 413479408 446889042 408344426 760169436 362781960 701747000 827456584 255901790 733835987 379116036 351307473 921774030 766425012 482464731 310685461 356499931 402806036 842798316 313637072 171567671 229034441 28631487 3093033 137437278 958207573 298511802 801424037 405556462 299444596 523269526 772044395 312070590 968403027 70056403 350537590 645838011 796558434 713205860 616193317 366810863 786311608 931370633 698682681 876611799 952139430 796718015 766021306 940955599 828305860 952712103 928397550 504665823 341361855 47858647 104511360 662895201 752488707 369800890 742658613 777634634 376137475 33564353 711127067 933621960 703219351 547717504 477483204 458399548 682983970 79817500 294452985 420426882 251163708 217656742 577658497 665929024 548753069 293086464 368210568 260455704 112977610 57588905 151378580 311109881 253858381 37894325 658001168 691889555 21677969 351561918 42284946 356000570 64379592 734224637 749627464 318485829 943158769 83305253 59718650 632436814 168542984 161576452 708095996 950396741 799861319 349187189 290709253 618301704 217399543 566024524 94343427 695044882 106556818 730172570 712077920 290332210 561028290 45169550 762570434 348491050 667694439 599538422 975157643 469327911 584490886 694718155 481979453 153245094 255066433 626789993 542519525 999781637 279610565 638769361 507049923 269901973 623947337 160765981 281171697 376273362 393912106 235496529 587740018 916547687 330274818 45589406 537029320 981709933 781197573 748847989 887177301 655114105 38160927 635624428 572308342 763589320 524793606 786366198 998142646 531977576 641535149 257702590 199075711 91060751 570487569 691989108 321093624 553419459 197484537 150644582 338807693 621736515 143751114 349054662 664355601 502891241 456026645 569154950 126324439 619054494 587434742 157734733 330088198 837514695 190960953 437376307 468833495 746609875 641029065 458079560 90901431 35857918 432225016 189403606 167032804 433186884 940002681 560245655 834508918 82328680 949269770 838522074 53853116 138478903 782471304 521252386 348479445 701768782 653580282 981381436 626925013 236929552 602602429 25017720 87009096 193541830 161370614 125516211 771597744 556644649 987059839 718677252 110541014 209359926 107730409 592076273 105179392 77804896 384416954 150432461 273983737 105532920 865508339 958379460 534020855 716684199 608802288 136018229 236753444 533289904 931957179 130377909 459478535 809423000 935427746 424714712 171688416 822004144 999499342 991746273 338997577 689384173 450810382 203418974 242087094 447832121 684554430 170445840 649271227 46554766 593518828 644388877 394152974 340091312 441563460 656921622 917719433 578632752 602784906 308303079 238988366 654384545 205588485 852908832 909943537 281666634 809430428 320547499 218674678 40967967 386480215 928309803 451220369 273213659 275501719 697304490 352216970 228565901 224765048 696219113 618083547 53518485 821092172 443096902 982362051 982248129 294775238 603683892 739331818 514860555 997336055 341952415 462657391 798115206 118288819 688066910 287299120 64320441 229803279 745412489 931865518 785249747 897887141 583323231 463909369 426888060 687824778 393422632 416596651 727500878 4072994 968893180 166089291 711601873 451733808 31739030 79651119 908300537 159704226 120270993 399320142 588177703 255937471 551966674 688483475 365720003 424654012 608457887 269436286 183403398 415459416 144505032 866830278 657522633 247778760 39839875 465112423 247991001 380494751 529256013 938296360 3166558 206690889 475533429 625102939 80169385 269210143 174556673 256005827 348095694 49538004 889058183 239140250 262204315 639049849 853113209 694607986 698795928 930183737 795733068 950811166 523852709 918748840 594191622 618312722 446910814 662258490 446883156 335880576 771194787 65299452 854051212 855102543 649947502 287906278 191704125 472523730 429933993 560984677 24924977 450153857 531483348 477294065 851402656 94518004 184460074 535168583 463858665 882175694 29052241 112309743 33226323 73326314 260522402 462475072 16708317 702358962 914284892 655685719 846225475 997902221 948864995 439004768 22854957 912332124 311617446 585609474 293189841 545233121 981138690 530822675 599378634 694874295 563402935 750223367 256517429 363455181 662244647 176585595 836849866 476929925 598925424 272200521 707856890 689028470 787628821 768490312 592657132 596990649 176904496 385265097 752292327 501221638 790107098 993213797 87939165 917960524 611464022 98706353 731626169 711736053 896670210 168666391 892815235 551176975 512621336 880868175 935693435 634265204 660058397 374036678 148503497 641597766 417230725 844211527 111906620 996168566 884923042 499065251 962186912 204438101 974072118 336933650 844380888 453756355 529834423 915041974 130516331 437753078 492782451 771071934 169499901 259040710 823620539 299979554 187865340 952468442 200553941 782643563 44291461 802894156 306945284 669630864 560092247 613131888 175807177 61327155 741526055 348968123 101777145 759790306 831572296 543298636 839162661 793380683 903989428 827111340 970205176 286626345 659431713 373036063 920097308 371123940 906064184 85597537 512279459 924236877 443642382 122853600 597355781 28492397 555513905 826916863 972305015 856436259 89924198 35586620 387263591 722661543 502046846 241087809 978000357 415210068 403883937 583763397 427129140 988744096 296405769 341197916 744655459 587380966 733928262 37910385 519006543 443681938 586291847 963411163 224157898 682613274 469334642 520316430 978280794 218347380 199053446 887010593 493960947 234249871 435751252 166129917 770164772 294348777 163897930 366247271 650610415 103643867 77701757 202532849 412316071 283751632 918837618 106261794 693500166 855050540 763989368 451151473 629752121 169015043 350904467 279886364 365092769 382489686 557464943 297273102 240761446 352639666 370777598 236414429 811097983 152983912 66450093 713720636 216388151 715606868 456650367 272646843 218641409 45772753 520330768 334008451 161409954 336328230 228440397 435613374 867365208 693474370 125977310 336607172 710754265 825151547 320519041 899692393 992743763 868328265 78133333 14029705 697961994 496585112 686002421 139255534 438990179 454949692 556630381 14622279 128960651 895853746 566296854 488278860 518143811 936075403 283081031 799401114 504827777 726724848 976199722 750602818 938125069 205420320 775727532 854755146 818246456 415606002 535994787 737588206 912328110 74933154 617203376 410742071 882987875 232100410 512601893 486522781 560116479 428905029 598922682 996121198 516015706 370588365 84386954 785155794 333275056 483700271 222090664 340183470 550024964 929272012 100373750 899753309 707669307 588656052 705328636 884292088 121689581 153371099 127526553 738423181 196037275 706243892 363672852 685167667 717810132 722241416 530922483 829574540 942271432 919807228 812993169 337422903 986078945 100517421 755474624 903719152 90365723 579675738 90147256 646868257 627103223 256663739 441757856 915485740 466929407 299870680 770103261 450760568 427124184 51109170 434157248 56709891 969810756 408848532 86740611 418361751 86213187 897688895 47654491 601575867 85462712 61662160 207281712 463658938 628895050 141021459 69250135 328816745 555479463 336750336 711956638 268780562 590211937 823991111 958386730 331295307 336738401 611494579 470950982 830895829 543225599 348846704 267732898 516904796 957831362 601695548 62571868 635563368 47481456 303061290 707437038 231037085 120953018 318965130 33800575 426770614 952017904 320075177 605986770 523788432 226400028 78257144 836166988 319290234 457942250 174798823 232733768 744683033 428660992 599143547 895832895 829252056 980681191 246762939 572342226 636238396 231292982 463290370 947271085 276686283 660885992 830209924 580446575 238207032 487304473 381436787 625402741 428555925 715592890 777576224 493152609 952723674 102452638 420289374 560417396 129885530 185984688 920216498 157592374 671074308 839562334 973331778 798077565 248909084 976982936 207743182 814303042 211286079 528264433 474626916 888646494 838172197 154954376 339653033 204737410 846672117 603996898 861417590 908823320 394013359 720927054 837893781 228585612 290063523 472502729 548605395 152582458 708831515 57496772 693311130 932293534 160212064 426567649 382224215 296991847 652326009 49590256 671219418 350796768 406125452 519052566 219172103 60901929 428850443 861902554 479762062 601066770 186488925 536490672 789422833 288501116 580574845 404352344 571233660 94305336 908777932 336136681 749364898 949713617 967482941 188830874 198652939 356899402 205060311 773558914 59254388 121007811 463723491 580011518 111284161 971260653 142731230 625944419 72868736 488706795 256542104 717373107 22343233 686277827 855388116 770331403 826137898 342768478 914175523 135512677 678926111 433311987 124323003 566859591 151716385 457630647 872625963 314106029 123940390 243942266 178462972 523516849 670112397 914218746 477547742 498670377 175766225 606620515 907395837 225765320 178602146 726035809 876419474 335347225 486128708 692060881 330512149 983223132 233093925 551230249 223808523 982511901 746124510 688124814 181247671 780074815 26295295 584093771 34257332 605819379 389498160 410939230 319348099 468727662 643871409 633885903 101091850 60658661 747765511 317118180 138093747 161209227 18130569 664305489 480046096 884933051 115690535 827308670 751001378 755854277 257659163 257029018 889803141 293653977 877199961 612708828 289657209 148100670 977028481 906282383 99428372 488610471 89273334 861364111 982606723 473229248 192408131 543265352 73265068 983527518 531074840 442441718 718479732 897274992 196174400 2727719 779534199 286050360 116421126 91090930 250063183 715093760 534382394 320313336 217343800 473000735 872314678 870650332 638957311 448297314 517403579 954691635 148437281 296263086 522107819 763138960 813071570 659947596 253395418 358256159 320805678 526030107 586217036 544283531 966427878 581799260 425584417 211072552 116605614 221181363 549646486 109538553 37679034 639295958 917422822 404265874 327016873 521520976 249130443 29059346 824449722 132868094 208444214 694487588 879288715 180184737 40935463 901934223 509331547 623519461 641306880 625737802 73035984 713607307 164710142 849717055 852484491 234429116 380440252 8604815 811240470 423416419 20003343 437165321 637247417 482596 311662684 58055452 733864731 718458224 151455044 79108955 259566735 737405109 855440018 936458604 850960035 17979634 951613749 577696527 394672342 577117522 811992159 532984844 642922536 82069683 709769260 477820311 967269689 39395302 184779804 192847823 38434124 866721230 799510593 246225247 747758319 533211059 113033190 703497723 58687649 464626139 439286273 538414669 240757201 626608997 492250050 696447545 574657201 993352281 583238510 914679410 546068195 899123123 960801879 815481712 760901954 281115818 880436546 975403941 799269224 200812838 753698666 455848959 907110092 144829863 617878735 804479310 115953297 824533328 308043583 399159516 606779475 566192481 158848245 588805058 398115109 154422827 236494910 599887557 855734126 202110297 401575319 839999959 453089234 876490543 491540795 409229000 933038315 726979972 335679724 611312612 749044158 64971427 912280277 63418509 554952233 357362991 507029164 183330195 889958186 919419033 808277555 77890355 167012934 10443433 877260842 195600667 241364819 219202776 508982361 285115697 113157771 358273326 21630270 27093811 47100138 742210317 222305178 105587730 695735134 215406346 432624112 289083635 336321758 391796264 164266787 553521531 550217414 143190875 222473600 909192366 877306269 586800207 850630285 982213109 620434680 36133479 626364576 517504339 969064603 944401434 111887373 436061312 814539696 837883690 334525282 476800405 255366774 18757786 908393021 440264036 671710954 876126792 184771731 408331050 642096556 297458360 510081670 994849766 887654420 219092095 386279310 916397823 153165913 938494765 644300357 194411221 666404164 834208227 974706835 115669364 607548796 149618475 871841129 490485451 395819137 330788303 419264433 574901850 119012766 58373097 124401922 768988376 777519977 447524276 76964858 616763969 160200206 712371192 736143630 34899554 393151922 129624203 422621127 49012957 531672205 744479616 956304492 316089723 321654231 414303771 280024382 457142495 687955597 691561377 83543542 724559789 698376793 216190540 151269019 26119751 566085089 900929019 95501730 823489733 929914578 836223650 465960671 46333255 204528562 267289302 271112363 54112604 306310225 369608695 823114606 659012129 402186360 275403804 485418013 756081532 195836766 993075089 366207571 964697858 82250755 427262344 73004476 315018670 275193766 719447716 445665308 837328275 410939659 771487339 964626767 809010756 644276976 260669223 58151624 968087118 945103055 337571464 949671033 776440296 387909842 838897188 38569467 664746859 842592037 517128502 702975911 949328598 445012751 717657970 708275452 724019199 428661038 754093427 256984615 27774289 458427162 157431780 542966391 773654381 845238360 913926494 362470243 215362550 776047976 511721797 590423150 793084117 390820295 26922328 420071187 727969248 279377648 756527370 619449193 278958183 863158148 267769550 511834377 277861358 465226237 698023872 299883384 672985246 127258845 548374681 136756658 692022995 982016607 591080925 713520276 867204079 928395794 898805663 220983803 911451482 724792915 505534235 987475029 265443034 240054362 269749076 540345004 782961186 777539820 676338172 174535103 626788796 741739589 576192054 426335485 515749513 711148251 575067076 802077526 433939867 806787283 254113234 501310061 653648465 739560024 252446194 939101984 192507661 242809415 689811493 224064546 966768858 214816544 378403019 760346970 873002716 136158280 332793780 375906632 933794656 473180813 90093587 17558955 334126629 199556703 672829936 470773130 721337702 398166929 446377324 559839096 126118820 241757588 309644302 229134512 333019578 566175431 540072927 805822594 415333594 869402483 67732394 610889979 152014120 359244955 779272639 943869930 230012961 87573583 955421401 27548174 815201688 232263962 920045113 191027857 134562466 576356924 400198197 409846258 160148689 627451913 599790535 948091586 670984380 732128574 202439358 244455524 418294604 168637297 370444086 187341337 370355988 39954815 133063931 741288540 273534272 703002984 604808364 541215107 931157316 537355549 338903577 848059188 304989511 730877131 559959250 327158105 766641563 56455272 629906094 544701839 90581871 189350680 273660086 566923504 840613168 529364433 609038386 278711816 139026432 437427350 428532597 525014977 793736680 978778855 795638189 3755978 25965632 301196466 583052580 359363045 661567267 239415811 47687924 439228413 828265792 453372995 828128876 307411003 581649925 755511591 212523657 167873011 468539947 343376757 310493866 949637753 411269718 576859442 423995395 85275397 759473572 878310993 802296476 18521227 60824391 658750122 793080659 76166230 379059104 790295401 658934135 769910979 191261958 244104441 455049627 801109443 934420328 165932478 841592428 239611860 411466311 223293140 610973340 343922053 355334867 506038029 677470013 793302503 104209655 168152325 3258068 104853208 654158818 394749826 386219698 627100683 570822975 108048222 661155858 610978987 132862035 575970251 36123134 77083320 340455683 530236475 439234501 501376511 120567885 827286637 77177126 163291501 354946629 967005816 680339114 874206236 27173132 511628570 185298213 414192510 996643627 11031686 66841400 90605949 917030235 594997994 254859613 62884679 770470131 391676756 780048297 252426317 523971269 10869531 320583664 450764056 125918741 816860607 116926802 659097606 442835044 29194699 868925858 175263289 953634594 214352693 518012841 660347517 915399588 25375978 363354943 243374028 93629229 150617225 937487030 212286239 322245466 760928725 563928810 54675066 570569878 243377966 124811145 209929908 804027874 663731600 58234747 16325409 868280140 486328976 534536200 841134218 126131186 381616022 885315330 675153147 565114704 860320896 279380823 810241245 155166616 856522156 137949892 8411989 283304243 819846844 233826972 597457152 418231473 71333137 598595347 958120188 608364774 648903631 399237684 406574394 864646132 72286981 27937288 213057443 688940970 624153385 653657670 887587872 293326573 681133260 567209878 178581562 644667811 365800946 26536158 123847803 371858261 897569633 741016044 172940611 988697489 150602320 675639035 526208723 595226574 127972753 779963360 337132246 662203914 523781707 69863197 829184887 699409349 608787516 363695975 123883092 929871187 616185063 313253420 701169102 969731045 649829071 26830382 689397273 54052680 848863519 897825563 918612341 507998028 892690831 81750448 154744148 584559542 915209187 32067337 752744177 21021376 441852894 481900377 9065940 966815178 767951647 40835061 471399683 655261995 499239263 737953411 283871453 844254292 540593977 229937796 983006890 84876278 552912942 767040100 142153594 743176357 654977221 824184370 108328016 775343912 656252506 134968174 355943421 534341911 939075838 725314223 483013494 476618687 920184360 159261495 611390991 70794869 496364456 324081317 957741509 216022142 58199968 763232841 987257414 953271172 61571949 118699110 907809883 69397152 952026094 92277838 180364733 579724046 432386687 507969961 333675943 703544768 304019199 422712096 774711249 881559113 290758937 627164651 620899287 180229599 326481668 281147224 679979408 661798442 128551198 848955557 758187550 642308590 436021258 230625136 603130031 730257722 928074873 698662888 991027975 919741116 713922590 857571758 573468297 771352958 217042059 732278825 365540766 823023228 969962944 157627179 733036199 49390433 831303972 867682030 812951132 546736514 834031388 673410224 15383936 939947462 555987058 288095747 529295523 19924424 506126642 337160350 48155352 956592376 467206891 767371488 754352748 300459432 435396466 170201074 44112761 986406408 436760368 467564417 106521560 833741121 468224317 761961183 767054786 137534086 804736661 644694466 888169960 669344340 517278089 851568916 515044399 762603285 68166347 294568095 312882835 492257535 159711939 797720820 78410164 464262586 451084000 884035357 346815262 548768149 94166728 561883241 520059575 683224474 976890430 595753625 415313205 400521111 875005478 779071669 110484465 533782102 873696846 820633359 235160017 320173241 503034884 187142915 75810624 517510295 883030971 991786401 491756525 126476125 928953889 536874549 662238411 871476336 490373157 481366184 921190244 422686511 186600914 112195630 740963915 625509247 642573324 521370314 315635082 756892367 627882326 881307623 182165385 930219086 368561188 613152946 781723694 906976501 902520246 709135516 848716646 323793524 117830543 332109404 586882031 909468859 949580187 292180473 300961020 445055939 988314232 904933520 532707893 557360471 29846623 273801575 630173750 395535334 269358349 972553510 34889849 895573330 632922779 10435923 53987904 883479354 61139752 12828540 387562335 792414244 264933476 365845039 679927105 479739094 419574213 983273755 200658435 325836220 628668373 333923775 310657030 38495146 495033138 942889322 546068184 604174270 224633244 573262309 341616215 586709631 145080691 861671070 864786233 843607293 164457092 334001063 995157572 231783204 179662029 247257594 490352801 865460468 912346025 104349290 430903258 546805762 625288612 691154763 576235969 642101802 702963917 604562902 322067726 501581899 401374751 573753854 123257473 220392181 983334642 387475423 269131652 70629962 517788004 40109600 639414488 631521124 234424750 617946503 766938352 359392415 616431145 591726936 708588386 610987942 3620055 636302570 54891777 96711620 631563909 710623979 170382660 328456322 175567731 293839414 231589121 132472671 972765808 62467292 361758859 615644057 208259253 853643168 190081674 448132193 404612614 314976910 88356080 808209133 24790783 283103578 272139585 622057868 184256974 790236860 182341861 313118072 958580668 884896501 694547904 345180427 309786223 955162000 575323405 226066838 277352199 716122053 498253817 599951230 132345076 104676968 651879801 362685777 720514246 394308706 258518043 79110239 246118526 950844367 896164903 925917960 742929838 965665926 655918862 801488935 916287287 89022415 118526771 222919059 35492256 326414221 517915438 780858541 654965031 456474404 860100495 785524067 731498531 323202443 633832482 769637524 494540233 908218432 935754026 379424151 760790833 153004438 481574382 2995816 366814206 418545535 599577156 749748159 510971707 339241851 753151662 162314667 25701168 331196123 587011477 408717136 723774094 327194391 81961503 996723366 997107154 653495576 422536491 163944351 111945024 581191726 799623910 185285294 549442905 902953801 822136813 438648547 700473334 177332120 989035076 161642166 518841327 518220790 275976942 113124783 258358131 65529927 504053554 300728873 273249582 166634662 879779312 267475603 570928297 883845995 919167496 8386770 478214259 973706366 296980150 103007784 938613242 417876533 237265511 530124817 959480689 997578830 937507657 179903023 699354362 573256707 470563350 172984681 658247958 754665274 166443385 829788746 295172076 194280257 807791150 209234327 740169641 194188930 345482638 755878128 445601996 212811399 675107575 6421063 156687514 780075107 888271523 293956347 727997493 745420538 169903801 682357597 327839709 333190712 620584290 65223111 758485613 86002364 604714844 365796427 513421879 922115736 721958849 575364919 32720742 818953313 322173253 368726800 197417646 839682865 19348658 928071352 546416550 938544628 159166263 237680452 45752301 603985468 341935703 961372245 970121393 592255686 263975380 189075244 956178293 461198178 833516203 891419259 725915365 381425745 531088583 831489905 901280994 29445601 330194171 134233516 540405499 734699997 259872463 629248496 215662991 5896103 819359088 602246107 332975576 683892262 97059773 266080165 971278925 984572631 227597362 293804531 661580168 338966840 943165758 672856099 898164415 356903148 992943064 406910318 244787997 514352725 600914034 354449068 42339258 49241516 127708245 737178711 455218466 455462649 402575492 828519191 563527696 249483187 415451048 375098588 298997258 582792350 563424104 499305976 538176829 397147488 172655143 218750520 5621682 686794208 389513647 919138755 168842374 976552350 749182507 143671176 2553097 584152528 556880649 869957783 147037234 584494209 964944067 61505272 569429331 265061231 97283458 314586200 768618399 557475592 248448960 353644362 732613380 809373092 960850889 78238070 915821041 980070167 645734252 161128317 760855854 325551968 338215906 224437168 792932092 48918287 631658478 739828209 53327520 113085909 728347199 653305722 444819015 456117329 391955968 22866370 646800886 679357505 965432187 489087344 409441557 363859742 28852037 145379275 228920844 863438916 385906127 924974800 871478964 562226811 502724026 98228121 28256350 436309732 732158408 680416549 976880385 755822657 650261198 762277454 73031941 721434535 435410103 33991240 811027017 778771278 896902757 530145029 359625075 617040657 162521987 145625639 723828928 891855855 30664941 172813664 426501238 236316090 926230060 484090328 338774181 302947526 614617413 819028891 72931215 468092058 999750851 735025562 343697838 721822219 37479645 867028538 124099987 987091965 563296869 692991203 564993753 644682027 923181277 430861351 69914029 524471662 790522480 592769694 781578808 645161008 766328956 895285927 406091461 633817827 323904861 538744980 264400221 280594608 109337469 779352813 261978817 811988126 152480580 778383662 336117586 210667938 923868639 352539464 271371151 424482871 12530328 185197794 448591827 423887833 652072476 175547150 316645390 77176060 499729690 122256235 721845196 781153285 289011617 380542138 173044554 738695861 19069325 244507217 347655832 903143713 965007518 198093807 834568140 345079225 988283569 215768755 742411857 60041149 243763031 74753798 483166515 618268479 476614693 743083842 754353867 164479563 638385765 156021670 518034175 824019576 964124798 759356547 351280101 65236445 953069325 937512098 137644184 167778144 569206778 581343975 390524518 129421445 747074291 402636761 242651924 179623760 273786008 388787719 853385748 577855514 361962470 200661187 475871760 506103979 239051007 542674730 331818280 340681049 212142638 649377845 682755973 270819883 446054821 721395998 525849143 321998000 932083289 771049343 310678229 557896175 402742003 506313997 655139733 812594968 104901552 896292832 871532484 841806065 380986201 439890308 517465393 701830711 474330237 55067738 853833741 52109893 617509776 332123063 255838497 948429762 499901510 520148351 285995826 849173473 971584874 51803276 758034835 350088250 339652671 512416366 483407246 404734521 378625354 560753738 785901333 933419483 776250466 270614789 127603718 346644859 860510558 885512072 466298062 821298368 435265321 929419600 147610164 540114932 119214220 692729731 769047309 478768796 233949224 322064744 351166209 268422707 625422392 869532579 245061129 480984682 685811013 953828364 862858257 108503722 792350438 513854783 369737710 626888650 397078552 870891519 465174934 140301630 9991017 215068970 304976839 141790729 819885356 852334475 897178882 504952261 502797394 262403635 247833170 591132256 736614059 8437716 750752802 463495728 106205689 544289496 255562901 922639433 725162371 144441063 234248817 842809883 153278363 581701368 842270534 685896529 25912104 256546099 807230495 560029986 819381060 979185020 316491667 359954168 226044760 317421951 723618040 58293283 703734883 885721840 314590730 824472363 896868610 992730834 601340102 726325225 236123672 977636951 967771536 211207632 515587891 988005858 591913846 493270622 585737085 4112339 282788017 20969192 279902542 231634854 511532571 712955026 476755234 435140949 171779306 733052754 826697512 528190061 914775534 348553108 459234509 144247457 348323712 913693658 997599838 628995422 747561816 271674985 977989029 353756420 197918780 590163713 197899069 195012888 105450709 783029100 797889260 537367629 539988922 371702659 988140104 971923596 812385210 696327657 635236495 738740964 645392902 610301605 680308567 420413413 409714161 925575258 44940397 440043806 187948004 691619487 272302947 371717992 35780455 899476236 891306714 390763601 634660652 707881737 542429477 503510041 763834079 156510909 272254817 293267788 745462294 584186651 580434061 474375335 962384082 666486981 626837203 945982143 505641015 623964833 97691511 446182799 239611828 671850566 180114734 448108763 30213941 235250968 300251244 57061534 313921206 286763276 104085322 145482386 646239241 124714383 262673128 358587903 977228987 160389592 564556588 778726081 66336935 707188832 505386093 275717024 600762251 145867022 152157396 740197955 29319005 678922400 751020673 814502365 716269620 348356603 444983860 394948490 85222668 98426231 46914043 963919679 250441869 384345734 721157909 769266081 126999418 722334678 387678410 344170749 167073876 958569272 607020094 786920268 782576998 947219224 148196079 659075564 479498746 387954224 541117041 384698183 833271569 577843580 357976346 363846704 526201516 414850622 344153508 564047934 40501534 245072439 803734516 109365138 437874699 949236579 134668408 356997648 529758354 856152728 240669073 948998339 587417031 297730186 700963991 101672867 252500672 365559741 298669925 48818498 611582690 629074327 878713095 62448618 415075177 603329414 812275220 628473715 677164498 378098020 290593653 798038436 509236206 729859047 238357622 445883192 339595695 166426698 171123598 29625905 336242347 921759574 891912292 100133492 241267586 47701211 279060343 756563091 490237868 776262704 181648660 17672963 200399962 17030697 193653709 834677127 467379975 308920572 374326333 261678142 369102983 788792280 10978368 503142371 138777201 227883866 724357234 91125725 598061313 737984045 250105875 398094012 394531779 129912723 540427295 361586291 942534385 274735309 141911048 460993988 432069100 472238824 32716654 974067869 288607242 756957643 36118358 775657838 622143234 454447408 218728261 178965402 400348629 961302126 609387146 98104405 108236862 2630400 538607826 144033216 856210829 688329957 878577127 207204900 279572462 288467892 787590532 136779304 387562261 767969434 69059677 709797182 887083326 651934945 757455319 452217304 911094279 990156026 530197826 795492238 629983734 300248985 580432747 818632763 553181084 912635557 249194986 514694688 287661446 112933585 758978058 794887315 831440341 463534125 188905809 708812396 827362916 62633525 246207933 966080349 489167119 392214699 893675654 368554959 828754942 68069102 745178347 478816387 699850990 735183412 59262260 275700514 912372449 181295588 665538153 656618049 329138250 105487593 601043264 868469317 145344468 476722830 694329929 913880978 468818724 825808266 654969628 898586955 383450418 554861035 364090284 704508410 996666660 474930302 625857173 724893797 742509631 134174796 488457488 423224456 691884055 771070089 232965152 597524832 185130020 735339569 593132142 20570983 318798606 452143407 412828640 229548797 161570566 310476536 805863386 640175424 641861139 653465962 607808115 421250579 832215899 586018689 364921722 887695678 62704937 162897797 634301622 811443397 962507808 523314955 698482159 576678166 147468460 440318942 338114639 661163610 588058643 876604219 171277774 342789572 292458552 406539178 510770665 44357662 517042225 733617284 307300957 243093409 499688347 343882601 955036321 312764838 289961126 528919341 394207998 76385618 67245554 176146445 799362775 700936072 73040750 550973120 180686311 828568980 84765813 631168847 500741917 998616476 467677362 826721164 819960366 202834958 789554326 974920148 364940757 914842556 632980289 276620255 605766487 597331734 147758153 722265891 860608297 962605423 912413648 463245900 983117069 734819065 6767293 36622661 59249567 149440520 36684801 659457278 345366298 838775172 973732501 709959703 762910271 482974779 356952066 286178840 239034885 635898841 496364090 367244023 843840652 101906436 961982231 695037936 447619497 22976907 81392252 213199581 331227018 39252511 583360185 799857197 618929505 299399258 590902636 707145318 561739362 267483068 690230815 519341150 89918978 222395185 943712563 281197017 476392943 620197916 653916916 850775632 274584806 350671573 599222458 869415455 81329977 26988010 457193691 397393829 129988496 878564743 662170214 836366301 744732214 997859841 458194814 516495263 404129395 525482210 804558170 435637841 749956867 614926516 468290161 664592750 625885256 591035212 916715594 353030971 298001179 19046081 443431367 866804131 586916263 791961118 624536685 566785623 422673796 754049464 422762714 146512473 577666249 175062439 529086569 180523773 661832655 255455365 599957880 488984309 716796593 407315189 41394673 916280639 223121000 980912154 364351935 483593777 253321513 559914190 592369509 690088465 231131084 61143401 767262390 611940168 356837608 623319519 639196322 654131421 949925806 82732754 702070714 363421314 114316724 380334516 327559418 448905259 941241085 816622195 195347278 788091076 814055139 924302244 751376173 366300578 22691365 415692285 994310017 871352723 21612954 899283121 11319064 516746766 456565849 354988434 465005990 153673865 249571882 345587 433919660 179795823 652055850 76670124 600395632 16384679 428498531 674806709 328845461 610622865 223774678 634782815 681040931 185880865 161775102 765839841 110588938 783768227 792045139 662441776 680001558 19623013 90546363 937607037 256314605 809904319 358463684 891348309 790550399 804674159 168312706 664169443 113770859 679425318 413862693 753103117 916169290 99615929 210986964 349867262 585283865 292714741 133122518 252393716 78216912 297686468 454653552 86509250 825919962 54708963 601357493 657694484 954640475 394059924 484430000 289984932 221233624 233032934 444735475 275935287 529479525 567837884 184623147 808292002 185249706 941596341 540760408 388851437 642028608 883762313 641046672 456621682 147320969 289650538 410265284 108709575 72464842 433926147 941120865 102073739 380215703 607561536 182117314 825602298 761864916 150279941 102503319 233329375 229262822 412793688 762730239 609512821 821226615 629039353 769826102 570570009 219167577 305877151 624144655 197021392 581780164 167583242 110698196 928817773 705260871 820818959 147836891 234839052 845009519 546585118 499119327 312672477 250431202 105461565 525031826 70602287 742648413 633697212 333518631 592931238 480279931 661050540 515571155 944146093 563015874 301136873 428018019 49343241 397485562 826965018 981841384 908067777 74776839 433156464 277977798 9855326 546632459 590525361 464180748 625717325 259149901 637915086 704214949 61145393 547686883 146636799 539532004 964788030 780414527 227483768 379040893 255627537 71744342 587798183 159618963 250820365 909818789 286817710 410583581 376848851 50253892 9122659 16149427 761162806 513546441 172188532 539848470 947170434 653087031 385131261 636497680 783379811 908587819 534799296 179477046 22674313 222361995 740588302 888124023 429299593 532525965 770063010 386395210 48661768 744425858 247707295 964046519 924010066 187756955 266588244 219341984 544567403 787563290 525129880 18774566 165534009 506758963 651907232 112224652 815306015 984630771 650587381 742196739 18304911 911065800 352953129 746768566 455970106 434808607 176076871 352283750 212429519 66122497 96239958 835047150 799549361 859316275 226827381 380349220 59865675 438543479 30177486 66521824 991094751 164062048 560089797 396580417 373866514 917875218 760983570 997137740 578724161 423021502 247404304 296029921 52909837 693838596 556553097 805032760 126262807 802314259 586456639 300366211 981236487 493514662 186967040 798832524 368878464 303364541 830886080 203359301 705392350 688587316 131519788 171752575 911729038 339921240 711905711 19578886 157403986 399743392 564482116 947306763 205246585 391716248 304083355 732876188 518864684 407453042 499027515 863854304 666950887 108763866 607396109 71955743 384435334 800081448 536738362 195032497 984353324 959295999 549694462 230236 767781190 75557406 308104520 7905197 577663935 630696348 679244468 234802181 497878614 992109245 566717108 660217077 912645038 311543276 508213051 38587767 711313904 224537499 715794643 364335493 650612666 346131393 754409050 411314323 692975198 125500995 811010694 921835917 959255443 644127834 181651041 226332371 322858759 587028447 161064755 691949227 182204047 527854385 1804003 412614573 333001965 313742291 483597750 170104236 689690072 731707169 491148634 152859175 72600816 28347922 238952881 125294004 248723535 129984986 988593909 92610958 355828969 458401941 814598384 12280863 257707831 878001379 625626878 634360128 850457960 42116990 446915804 738395348 449009077 917326031 66792696 477731861 893423747 135579698 456397773 548071703 893620725 846210966 871497273 393279952 528713934 599290225 199836193 882905786 940835251 994901225 99384943 889467721 407597101 538941703 304421168 492029316 893009499 316541506 626150636 442949435 84286933 911401609 971763958 422031999 647855468 190055775 600141017 305329312 353459686 783706214 690079616 892137107 805516609 11123599 864308156 115344929 96125246 498870432 52826356 475074546 985109347 668409408 949096128 649647665 303253644 410665847 918150595 822487233 29762561 768542854 576440902 785612831 31961595 364674917 948890645 897691104 65714786 387323409 693658059 93299835 423503931 418508680 365060352 255084393 191689721 314280090 475296796 994111127 181149258 439418321 967358741 339972357 718963984 480893124 906074110 504532813 415189559 320955771 704779238 619828034 670326688 913807470 839055313 930274138 527323230 210089290 894311216 856269209 340327341 273939894 377519819 114095944 826834177 200250230 347993570 188638921 541581290 490572416 151008974 985663591 628078000 576807065 822345174 269020339 71163410 623050123 705657516 818081898 987065430 826913724 947958554 661372331 274264144 588895073 880936020 719611285 475334746 103258259 39523625 518848943 700066560 187824936 165253799 408017531 142012256 568683031 503573355 898804721 471803055 620819982 611703393 873004294 789759091 694837892 669652817 190639456 661055983 623260996 493032319 507381569 607010835 97241666 836804776 874509854 893322318 495169590 632169296 554289131 940656050 160030979 180480421 373378652 6227711 376567456 30130216 298641750 21520618 999428253 415285056 591603196 28410065 972445867 754030322 332013493 156434650 966833948 829408997 907083341 734742799 251736771 206150186 273850654 682301577 405635096 396516109 587451561 469684416 883436753 773176077 849465167 146964378 331577326 624571093 232019305 721834824 250822189 57210153 625467826 110770329 142205620 943100105 925345557 155170041 474380457 336406437 215349729 487428936 248609863 583459348 860120276 115408 267100723 182427779 320754418 85322388 259527749 593218779 184763482 911937962 410379277 233387849 224920436 610719707 367813680 683954326 297235250 860715583 468068188 185682979 719127467 576979640 403270640 284756019 675203844 981135016 465746535 566998282 145178046 56267962 792341321 977439460 324485909 920498797 211570639 914031398 116707159 829030850 340897825 545633231 810783484 88105571 152850464 57602326 653208124 393303492 978096550 23449731 769745132 422523027 249979115 826371754 346345073 198929338 499070685 105180593 658672890 157406238 715611037 948080071 924644874 536642058 144518293 646027798 88170243 118686976 987889518 535830071 526080773 517218557 427795679 703310752 565019610 765545519 482087557 771149749 943038538 841595688 551032299 279380087 542614525 967575038 522686212 131216094 194559752 830933085 667747822 616934936 614698785 755235352 40003567 872649826 683666832 645392973 851565155 123390721 99190572 652865457 325858990 386377708 367465530 918688183 751375299 374720925 7288140 137226798 38772065 423972166 372319786 221233849 845789014 37778270 428761877 463585712 549169436 583389377 652496651 479664641 436719162 824124852 526002376 40027588 594872508 503739754 572542245 625402773 38232997 935614651 331810762 637049325 912224809 867267385 265013987 765248489 788350927 928091524 63299930 299406056 711004113 449699083 392575990 777290058 76987795 800826573 985242266 28705435 759523558 859707649 413437900 957494606 549464334 41837300 575061083 730197024 554423579 668509910 361753854 478422741 399318037 181671912 809537277 983810143 66614427 536327054 110518374 512142710 602827782 762171707 317396426 448177627 784709661 87288280 656920992 915181972 689368505 668050711 2683282 673494537 537558529 147764145 989106500 835921051 806981702 223125835 671884933 456719095 292969851 403652085 645813989 967422038 674972811 347197025 863914590 122415642 346391782 419534947 736829645 290606921 971301033 71213540 270988359 993736350 376684365 139584305 536412087 543772494 936381259 912358568 271303201 673676093 143887538 570681338 104874943 329064176 684914202 331449105 995562198 557732681 585283595 6901830 478815061 529284796 848192799 103449994 230628534 119356185 627984095 598348922 782497129 96448173 126440740 226620682 917242637 586755661 349947182 840607606 196636937 881269528 704629426 979161791 743685334 997989438 365871852 662804066 930413417 781706691 584955082 384896643 262266432 385356971 327797546 989265909 801100536 873819616 541260946 842352414 986145104 785694496 98141494 618379943 130284010 731951364 24265016 273467348 942795123 312084020 862957304 541134530 913926946 625863568 945473902 294455557 742629969 631721807 349386713 490242151 268241765 338935778 480109894 763635168 854143192 259280331 226347207 602907228 530757225 313205851 721359820 442654586 888136528 499602114 410892331 189460406 420799339 693122523 510310796 395234188 717508233 512384605 444181568 249648891 557087872 236392151 560838199 71931916 454764685 948295591 982783444 422030872 279385102 490892123 316752766 826745397 264367657 280906999 851668437 928268984 540274482 369140763 326506342 93701680 148644995 41607621 631923955 932570854 12927310 653359217 214130576 801995224 596235381 252358354 896790253 647883849 936230526 286526321 134247521 355360320 472897615 886864292 621237411 790569409 251412272 688024814 857580912 635114301 57465390 569601126 476345326 912193277 218140062 554890126 117609609 642416494 79579548 527347389 558683847 672425439 45574567 592220713 916159203 637722190 67749208 694050805 392265087 9376575 247669903 626858409 638402251 636821521 213774040 650236259 760968133 431248959 714836780 77346582 862320837 56009384 761192705 894541818 963271227 71928660 200959865 914031037 199684685 39545229 171222377 667239990 562282630 699401299 267932431 304519000 239022198 243734501 251474500 677766645 602845648 267855571 763692470 562871156 122528194 232503817 910854743 54594880 116184390 99883842 42744890 816465210 611214970 397907372 872040957 798659793 968123410 707981024 6521460 507348685 278978887 748246449 917605943 342220743 623897894 489943875 728838077 297548633 221815936 188793870 934329892 693273010 414600189 146883283 786934655 540767050 116915182 531068403 425716483 683014479 488629095 432666732 214810594 352428266 268184014 63607222 740198889 509680643 32186031 613840848 17531588 271022715 366771893 260758202 588683148 1964455 584355928 573263655 807865924 365981814 62878602 375404908 83414778 636406729 862654717 597297671 327321075 364999162 906126336 825222823 705345786 812127237 490789985 556309410 206221655 32563687 811957593 617347179 660949153 243011933 754534113 278454272 503835273 687121659 479751248 720176449 573033523 882171260 87220129 838649921 734491332 1994313 992459283 408411254 341663118 668065436 64929028 502060868 822477641 251631051 491944181 916975792 968333749 2700017 631703777 746855854 146477636 896826357 286460670 582661815 378697653 348088461 925601395 39449285 907738645 835437429 356667678 957003640 123755863 412356506 473407291 915419435 671465736 590967699 990603367 66811827 103578837 536033468 770158713 203106031 544728593 692444148 838474874 340992573 294656151 192252413 593358410 299265898 215816373 986604882 470287838 997296727 219290118 617664614 113607168 801042386 272248885 883037097 3202611 986718753 663858862 666736045 590285597 334082357 238994898 857570589 354190412 679008667 307847673 786762009 83113954 88905795 416509285 131194101 876510677 503699774 895141456 424325395 796762021 21819989 161065571 102998199 762389174 736783812 428023183 264650548 434406010 910716528 924495686 369779873 307014237 152492468 487918592 232229342 11639300 189845737 799296549 345847121 531166936 647461527 851989805 468576890 13401226 894680254 858567949 56614522 887474865 647788484 978797632 513588976 403078031 832784286 752597239 650621094 510543590 91961969 999806372 964948003 689702066 574877426 133789295 938074986 846126136 395375894 747632712 287054899 710935427 845957205 247505806 384359895 147425009 352444103 978740502 908899766 514467647 209844983 245260786 552754048 202730834 360457655 73115722 86718911 138870687 717595905 697867283 990035214 56585611 887319509 888774140 106425665 766497644 518845017 514822887 888163680 196944691 503788908 843667618 351553267 101070036 925299031 841195365 713976911 3686374 444557596 816210285 786131059 522512354 119780263 405037129 308698226 779596460 278130144 100284267 384945913 261568704 997842157 548410210 214007644 682288011 65705512 150694788 516603879 206395760 87342570 617833384 397850263 131549600 551613712 307156109 923817909 436447455 276081072 592028154 835521664 328970674 826729951 250717321 692651608 853075557 425138869 821784419 649584842 769386714 386619960 231132364 539898874 276867431 633217769 21631196 966129116 780928968 20012040 827434202 846849593 212087646 473386364 188996038 763931601 527269136 490682363 584691759 948723409 434338473 243331812 605192345 392251092 905915284 87962201 631883560 577511505 918032919 401856550 927771554 254073887 178559036 803696602 808324700 660467405 624087485 438353466 62846754 854154209 211880833 94964286 555962048 101570816 535332519 140237781 80828652 883745142 425572320 869942210 333666478 392757868 220254988 626396646 177153999 2629495 544342479 266035822 594478373 729030678 138974314 871170478 872936409 547658518 698548081 701404319 516802337 297752223 52714607 646018545 870780656 957019860 767439718 792181455 139429386 753725918 591070574 325165138 593148400 292020580 151319396 960995160 583172518 529221203 552123348 154143673 641112329 447447607 479003696 679999884 152783342 860852383 335455652 43269756 651356015 517295542 656310775 101603101 682445665 975186241 474595 81496830 558785164 418572102 177790369 207903896 17260819 892441253 388293249 525259415 615932866 8208104 403649292 774340392 935976782 903145326 472272346 53346343 10706549 249412072 509615099 825369745 202732022 803976415 693155721 871561839 323035978 259330035 919209043 116472085 166730513 954259287 625729599 605443466 555425657 980101872 324154011 280746079 104415398 145506904 192517714 425962799 476249955 678379827 337157294 766261767 297002125 855499037 488471837 277771041 76123734 560276211 559717194 129126257 722467577 256071385 972086410 130524620 437166968 149781579 827137794 31611810 946946346 873155942 840878580 203916509 545804067 717964642 316365922 170152254 504750121 960890823 186639844 899015589 813806322 631715008 319777018 85974709 248304820 507006573 949086432 266023416 415894450 521827141 296678941 654119937 625461201 878035589 994797506 849582234 828718950 356534780 86328938 807688387 806773641 705919869 588097426 403058601 548959750 932019310 337980759 463890476 314413452 44907895 984315438 245423723 832831988 88600687 678781663 789996153 833916519 273660416 422949373 563463305 930757527 904943486 875455757 285529921 237010300 444653688 510081400 224512996 303032163 5145085 830850889 801907374 762059963 621700999 852285843 17244968 327314956 647109753 420248594 505818289 956166358 661608498 3583163 804170789 90295536 784304450 565040935 34372350 159166089 401960304 725733589 894121789 484463518 204938746 14972539 555302283 742275035 396316971 679154342 512511989 257670224 90871889 246448818 335975007 761162989 430846711 715910140 518386083 547062337 932538836 508592451 36520981 930461369 115597310 880914462 906218448 965726873 82995569 450153336 387974328 998420832 36507438 928274231 142590868 951064981 118189924 523081693 194241504 349661510 798248953 615725056 939466609 361095375 914734311 888486636 119421735 933830954 315997581 680383701 975764073 723785198 391343726 471675292 422228157 215513603 148512972 163098988 182299434 26456085 114585056 905144375 747157884 70962338 191014392 325689388 982038146 577186517 725948673 980037124 528031775 980321823 692847127 673195118 570703360 622784092 310128148 311285915 577362569 720474922 971651756 890178185 664614560 602334510 822975148 504330617 710484603 803242543 608367100 594811032 839504998 823377145 15013324 41715954 391497052 131321597 471557741 261487568 720774809 264920798 774558115 89817155 947487356 269198753 288065915 965717035 620237391 408392231 171493335 483069495 240020471 343572674 554569282 990524083 895353572 537069050 452333012 558954296 691632356 977713124 359096387 857029306 259786104 584723898 373596530 878415507 983988375 219700421 407479359 255841983 163121623 439592309 588784753 393670531 905751796 873664401 612009498 812064706 210522742 988063372 181795146 812709387 960468774 327782533 904582475 158445868 967770649 746466532 445509236 872498841 506204429 460631673 693811052 12826532 990048978 150746644 691964230 567331485 462176023 351996465 427669618 295919400 676006122 437147633 421318210 285364135 938094761 355749628 102645472 89249212 549572917 69809198 422860344 236097039 451412095 855017674 355378639 176387836 689461304 359710763 4695196 403174955 271423199 251877076 621328230 794881078 367840075 90524949 238158801 71203699 704478544 842404854 971576491 734452891 615520533 240184071 376422755 461689186 914610578 31048673 946297726 815313969 254576949 373046545 808596239 820911074 504382506 293059516 847317057 384919677 162987730 337502636 595873782 948450517 84135068 832995354 286602211 461796150 534478206 486155288 500482596 346771116 501320913 719150837 928555723 81157344 761947881 406234761 327145602 274411427 193267231 526856046 39928206 183452699 723813392 728294472 998929912 617078658 777563272 513777389 231972995 950901883 223267366 729819359 899071249 482207568 927421213 686640000 276715764 173079308 889059408 382880029 420391950 853160779 298755476 636655189 978052177 11045404 384231197 404357602 979887893 599517271 621240529 661546076 165376275 784044934 965325995 568355345 331288138 295043400 330863145 880981891 318631655 427143985 463938793 402481952 500362027 357792217 562682240 711694189 966478702 830517924 133807216 838877382 383245356 746576967 932409753 527153321 967001295 880688548 483331424 444021252 566270057 115683897 301210651 14155319 931650448 249640875 839127378 151420362 903497145 979455184 100062689 825355040 65165588 63561552 256928849 961110933 454260866 343825259 436965788 84699891 492340737 282488270 192963649 934557165 345436746 838019745 943815582 216927554 789045313 698595951 11521763 251369603 865782290 909885682 133453663 416350513 280312838 912439207 234839780 939214913 30139680 16225676 619553074 355939179 616315740 864195608 321431182 834449114 299109664 845057191 32363933 849850572 530436604 525678783 358416432 802942067 655156 332708007 475014624 242307487 636294111 446749152 408290135 925179019 865597022 769928892 593111624 277895659 94310968 590859708 22625617 815559479 611159303 148607204 809156210 96697745 10265567 677414287 617656457 897583128 969207788 667105045 216449365 447245881 821967184 812060662 858823287 123378961 28398493 117739158 461309045 491207 178654789 64898574 922490291 384897424 328429167 440978695 521661627 24448345 562814914 492194855 755810299 760300694 977583431 783287827 411818869 574675460 314423956 864801222 585764003 957540717 462837612 362056079 236348557 453232951 633507635 578819781 731552451 630432647 778553560 533763767 37732850 973629897 598690450 704416789 642440476 421120568 794396663 781313773 482609172 298569685 884783078 979052389 73676752 253869979 63111423 135272735 837479747 487469161 102049765 463646738 102426594 27410637 962184666 253364352 599720518 575550921 320399014 379431017 870836882 565572981 899022885 782527356 755208654 803753200 904356509 908361403 513929934 370054248 576722869 651607254 730785380 691099861 893000041 443034333 200028780 41087610 633777393 10821526 469417793 827790077 131323132 573403671 123744367 933442675 292793545 571080670 125033201 672738665 299663751 22451035 279826 720485422 383188867 79260296 312765661 476422441 85833797 921105053 489984403 16895656 153166975 804477502 928372361 986366798 94149922 991200027 469092405 13008235 513719959 643331623 942246190 817770570 666078247 131708847 733427627 18004552 524377881 288377496 850126850 189805876 7884716 846136460 358576359 950947267 362159844 263265209 523155151 281751157 127965461 971799061 106830350 274561993 95452652 388306006 978661519 686210729 148671321 295303986 321404143 826871426 486068597 60304848 436494612 981670006 225654087 571773744 62243457 265976479 35931110 378364215 659065519 361656284 969379108 592052045 68459226 558224763 967332870 12866633 959501471 953615542 266775136 562316354 359002311 810356295 32974639 670195222 573850005 173904550 724139331 349997451 327533042 964932789 221790064 434219292 766873571 6663439 652096275 570502430 451420106 459909377 72517714 672099432 699953868 342481863 941444443 919206756 118452491 666778447 907681546 704160815 924344462 770429903 428090924 243516429 832565306 665734374 207438238 617217505 768097393 265975330 814252699 217686741 157037394 991298734 920571773 41011405 491995030 786368584 601662031 552032358 36261027 335259833 47268523 295177539 287124753 315037595 477290267 642308033 223010402 11076311 602527013 977603533 412504053 833876696 228107111 136793658 949002686 777654494 210452360 976287431 245544088 956169952 94604021 17555104 757751268 24273747 731776628 916692685 684842956 348986617 576474826 112318876 525969639 886894616 328133169 297975763 459979674 407470169 131331784 724956379 628685784 49419852 721845787 181548424 695215583 470414288 31515838 838922248 97741701 78315173 272452508 159657355 778348443 607244469 243665181 398908518 70275173 870039252 343553736 612731975 792117312 933261245 743964049 713389030 309930559 261766423 132026082 321212188 911847521 197149453 130174070 810163697 870300141 404833368 527642721 980597661 381524443 123647884 645845046 695826896 532807173 303085054 582621452 25087983 671589440 433230531 875730656 945478458 821393961 539802480 624495815 871111422 647861292 39054469 617619952 333275499 353760400 439150114 246406039 289354541 825272972 881712081 268053662 271446771 34180472 598327013 861367967 357212742 171318387 282242677 368597491 567052500 410959293 28814912 283312368 554435592 127575001 132798013 509662731 591501032 307584040 441522110 731797625 442223077 841485825 19772635 519785694 997656290 523114761 368683324 895698817 138800249 65799324 353640463 354025413 953726107 200148824 167359340 38620811 302222485 698288775 684325778 706401209 500441597 848815755 767476495 105123919 735184034 372312426 728298687 403676599 685996409 242715678 970024610 880582243 948768487 715495710 523120593 596474482 103085235 391835356 828848291 603469730 483592875 195856693 86617033 115012423 161450791 742979433 137964048 384833945 790870619 126239738 538532579 124477742 61281147 268927927 400119651 958142052 994500994 207829488 826070691 448016117 500318656 220934411 965987071 250033304 111965431 248415822 434129869 352797817 184875485 809640383 216549744 54030417 314380159 435004625 84508552 77330922 480991478 528271096 867200800 938544021 200457212 925523393 473694240 508108840 390672124 933379026 863912509 766435187 607665207 370254937 145862452 895337600 500719505 564120334 572465098 294726098 583445553 698567651 253406384 898762230 870780476 146945986 547262414 542503872 378954714 615150190 936462491 154965909 531970651 759824268 375891636 422992106 207468126 731067382 325782985 306642397 276210997 796674017 935487706 992802797 214106808 864085867 229097729 604293595 342803032 515736135 799622131 881058700 515368099 604887436 480509272 429420967 652247155 451356289 490539770 145249476 893279288 23244573 809690061 373127838 101555705 532597875 879676200 923657519 532777226 736027710 53662770 535823824 497262378 678561329 924487689 76351119 222468420 848702964 432810594 448160172 199413598 974157402 421268794 360559066 576198799 375938282 487883264 161736181 875088269 372319283 302620038 875311616 397952833 816148593 845065626 843616456 56695230 418589904 740399943 799177691 261829179 31108740 782023184 261938934 382891636 8357521 390646096 737622572 774801029 458495713 261213872 491119319 397703563 509998988 566739626 38146500 270005958 526802703 25767746 323045359 60141824 568041839 678522878 111987375 381251506 227856398 619775610 20366516 480647848 944240651 454517372 275165534 426429855 313652253 736291816 985425258 311717230 913354585 369371269 45621737 280624160 211949866 598668011 857302625 498807465 768975313 114498214 813872661 326009062 620491266 815198574 558156204 963553894 603588726 353119958 335609153 405932170 157834750 190295907 361404439 25149138 939033980 177341248 963361865 444174775 772618775 675629912 814054336 493169418 651233122 262812192 900872641 404671561 177500506 884090740 831667591 311157305 543190180 715019420 718813115 683303918 106562417 20623100 123610170 58560229 808457415 222717075 288056376 764289947 928868797 433883511 711338533 765941297 337367024 472106055 424564668 321352906 181077689 572821095 316967692 349299100 56490225 640774605 396193929 786956188 453881144 171647370 176161223 54614475 370706231 434901948 352155003 534152711 878177695 414991018 194916057 337471246 609372281 841582963 239879641 574637821 754609575 579958329 342863560 119934696 965803576 292499642 533512018 793934252 161359263 123099444 562140188 18244126 338249905 282460471 261562776 596117313 103442778 730060139 535654616 836167166 939821561 317997988 255118446 715142431 148931927 650821496 434183886 678370464 663093389 550410117 239589882 136622669 383549571 39809221 364197684 670969100 790640513 88173119 752808842 581561149 580706276 556201226 177971725 810412484 782626633 583483083 143569720 775807392 966518190 896438084 577538850 874639759 943597378 112718535 576657202 281618341 929584868 701548135 475364975 625899576 495332016 552862658 150076362 676840587 432303676 635583068 123527968 721149297 402846134 852522441 310220481 179871282 162211072 223890964 408570730 222026079 986126886 747767139 962130816 171763860 179661349 589509386 979522761 880848286 673443237 70189976 217419888 934230564 853883683 622599661 74187021 359149591 638915031 198216972 115681268 321583624 22301924 588686774 960127274 898590285 579162022 847590143 650310723 664525748 53511103 160616952 842200553 300549247 444385063 80979484 318436533 562394338 244323719 419649905 997306525 489097192 372025178 531793185 52809330 437676940 857932746 611065967 893306952 537912573 798012813 688852078 257128792 8965038 513164173 438033496 740262331 14099412 383124210 824329231 701350613 305791448 45098400 452167921 307313674 194183166 859612207 135959168 547384499 851930473 135875978 140020145 920949273 67373432 546715246 948183469 310374806 77875074 477263237 371033551 291735278 684399626 753806530 811262884 62864986 105233646 431442053 427638266 220937261 569753480 833310260 97107155 196638289 966898432 69216718 367863979 55811669 862361649 596357847 130401438 886474882 527380194 950307415 757032512 336411194 273728746 696704141 990149559 689248606 929199013 712137311 544792964 894601286 811006803 707994646 878140536 803421855 518752192 910634011 498882308 641912892 799629069 328822710 242574245 579831098 432078353 863570938 12197220 479852355 549796203 572644435 108408303 141363485 144837852 631738302 761833548 878580889 389764338 732304789 937697948 476680542 766571257 992418372 726314045 785297764 353273595 761076696 286076925 239226809 970021355 408358853 679019863 526647153 522568034 712013593 662231161 977870285 314808677 53246349 661988038 326884113 709208102 78909484 905687220 591678891 71996710 918231696 956022339 59920580 704950577 746800647 730792238 860869422 559307024 480802415 93825450 53046592 172838652 742869820 183781677 499599084 500010290 865236289 239238652 530828410 727586406 439441253 705041768 949481336 713819526 81091034 382824743 276799810 885452226 964771092 268375807 910007820 116097390 699096167 102134710 785750363 489709753 260482743 884760647 708594847 706118263 915930762 56714143 266964459 674849619 462756731 132720895 118324932 852919841 411574695 49250953 861376711 351450251 273929605 204866706 129561974 591624461 287380747 975927923 361386172 514979357 666552924 982241352 691745765 303777632 658623655 490660411 567951494 626325438 951884701 42967651 18476877 1486933 921346236 657350022 731425388 553993639 160252927 383870330 474464254 966599864 643445892 456551229 320323278 974965543 623604517 448888447 323195475 454850630 646173985 157748593 286412867 6783590 108200166 476389002 838477944 212441619 824401575 563786059 150605764 638055108 504263429 683079346 984141372 474685385 404841833 659904293 264085309 73164535 33176142 897923871 180662091 596094011 235922897 128183444 3158988 517759708 892345516 769595457 171564222 524616936 540858506 417637180 189985842 928537707 791632031 81259070 547908538 365577270 288605470 583302315 873618599 174159017 591911245 820258073 30258695 177936866 881240865 530064246 713904641 967456695 219210645 671400124 656705869 629581329 264198464 75778198 714921981 294915107 156158765 488259252 671691340 253294400 811811423 649335582 908423619 637380606 726506790 816313582 662135280 289363826 910055224 200107879 693708187 390727706 130958868 429057111 860843391 772911476 545813566 35040050 76901754 472009661 561666061 14337984 985568507 647956280 508064690 258882465 668261128 901770494 271403171 565510663 510401130 595660121 48194077 35477686 691886617 900248470 487809900 106668859 899357894 980728334 300529274 447680720 40012683 191590488 716005323 814959287 826555404 824318322 276870959 647924294 533615365 783071908 241734855 250277493 316761807 371082628 37376325 35770601 286499440 9322842 510010509 561707004 39811297 189954083 513645041 738762019 439213125 167817201 695430875 338959086 226832790 400745241 410784306 891897981 985654762 662392015 82237171 97419290 482386447 461813027 237662603 809647848 87930461 764620669 279275062 952253424 749112940 379977175 323495650 651917287 217965436 458626514 851608363 35863816 6814129 399671495 976593165 653133467 760347214 130103813 188024318 127188214 465465319 390728758 684333686 875200911 578061998 688443939 555448026 58286172 632003014 599079040 505729280 70424735 677841178 560591427 972403111 312617330 535567447 852933038 161633322 61618721 378456650 531129502 708970177 350844102 888345342 242756494 74104952 611081875 670629928 712397865 119366817 212327233 425879243 642768003 634702319 257583617 767308746 77877478 850156379 569719777 236807098 230868330 455464986 605223247 575529013 342867295 507228193 477690640 862895104 684292236 488700215 439959657 959467513 637702623 770089397 920165258 508861580 239123636 435424318 551274920 589595025 576859913 228702838 641422748 893982229 219811211 843969093 427466442 710374208 801635593 739062577 509914830 807831339 721435498 856675863 536055617 454744319 417628009 173545417 322017364 636614535 140487876 392240315 593434762 911811924 538237876 163120831 986235757 661569186 510679570 529347312 162557148 255013762 572666171 174295436 638475437 933618796 584963234 590130544 779131099 787162602 888838256 222826330 254664155 667325253 460281590 520964382 881862785 124307588 110142048 161689480 221813497 107780054 109419669 327600741 160479229 798367766 405036249 775238880 193017330 901166552 30764215 802160931 785660928 548253269 847168303 584414280 794514274 276199427 106579989 75535147 42889474 523376906 642316298 696390662 265810462 556170648 107723058 729662277 795640195 843877061 604620579 850955031 493464583 570297237 712762362 291093526 581666254 917284363 913270537 24810155 347506881 828223707 113352317 928879023 152716106 369656870 963655185 68493204 896706649 496297496 552408450 838797479 757757704 72587986 914122861 888035266 212086761 922493185 294476017 443007040 313314994 962053901 696445452 151516282 190722522 476765609 858615192 439930301 100322481 544665183 415895041 907242017 294400439 855523592 413942581 401910202 398314004 993632370 625938688 238678311 916440027 990998016 332868308 917971839 384130516 304595366 166093307 328135631 465468356 905052382 222378052 637639100 855057215 388528771 912795628 606587594 113828553 484574973 340890577 635885496 570981789 665205626 723581167 139295071 535441773 257099876 966067034 697011202 618071794 513908183 710300626 118013731 975608693 652109836 891998481 499730750 446571694 973605388 442247654 739136896 563792416 834573833 583323436 801642302 690849986 570154242 179747934 31684594 244591228 500173408 306965926 245227199 572208358 959327014 890213982 366736100 892149279 172805017 942008413 218404269 388573669 374379329 362946342 861262612 785590579 258600500 407858540 753120378 359898672 611519401 335608455 523074812 320625627 651210996 555735438 160883007 831351140 925077626 270578434 714816503 635736123 580450251 929705924 801791020 114559799 95851507 476978219 231184253 663757450 485725756 481969477 622319931 253052978 985930083 83656056 75521596 76200974 79649118 597161246 411274017 161294763 671824511 685565583 759524903 428236283 187555487 707393357 102068674 687082003 332169044 700174483 1658256 613543682 562977400 867230579 779305839 582238708 473141191 7066471 105708283 474683195 22144854 747668443 622213613 124707456 343209490 179765831 755099535 779037163 223569824 868204090 188081709 753760655 786068912 391937829 942472014 901999852 331566665 923462711 149848405 769640164 38898476 660366497 650788027 496634057 124075101 6605738 301402726 563894763 343748800 569275846 649096244 609939449 844959430 388848345 278642525 175365077 950737430 280843378 986972422 153523685 72247838 7519471 28165834 398022515 292263824 149810318 155463909 156081368 749604995 302467377 800357012 648177961 361647990 141075721 637650922 702042386 250356578 751371837 118751414 952894779 134411668 784426013 799225094 360434986 761415496 791739194 194839542 377322383 42129714 71437621 470150031 308315657 397099598 812692768 542366257 84491488 70177709 573153084 881818650 894119353 146791949 736745773 84436398 281161790 132538684 440507458 109710723 8905239 287248671 759479786 685620410 307901906 67835088 780282004 866448167 641363678 908884497 48936303 237308679 842272433 362497919 749067925 825733589 49218320 178025159 986848255 739532623 683201216 290288803 326759899 894713957 570771334 384512827 532374449 193110066 991113737 945045523 90289776 748558077 323202465 481273401 328783004 359326699 336265098 928873281 904300983 490758671 753048645 400103724 385828939 685454663 60540765 128583783 249233650 920515426 585833387 523978638 351348799 386374973 288403777 727338390 792143113 661335998 83883510 817514232 472158568 361916992 417873267 139824150 180199503 234613654 684091998 937898986 490662868 544486052 442925229 180593641 436579269 295198026 210510165 176193555 263867826 82942906 844763003 816244909 999494150 899014924 539034006 902123199 498440478 180164466 943502830 407564760 714081201 201741540 443123780 362729420 975274413 914325023 187426464 901455505 223385091 179146917 130828886 17180432 747188755 664788601 81483313 271990617 200238643 363663403 58635527 209392523 735160840 761036012 645693933 471575677 771627828 178735476 993364344 960205378 247683808 994303735 745577038 17160060 477039978 986840518 706882986 882509067 887243165 478233862 471800635 822796267 87166424 686129304 894778147 148027975 821342259 842354100 631589216 345387616 242013638 430661533 583160307 945242223 662740629 21457504 837633944 385332261 801642428 98429732 593129852 642236427 488388951 478231579 886075842 588972084 75460020 434159440 376135953 91924783 934164905 453290607 794764093 391749626 88720494 494987545 640281138 648363952 253238457 137973756 949770140 31399359 537456207 5824513 62341357 994619204 634893547 420595640 184587336 586259992 698500703 784424425 869654250 549697917 503042045 878950399 544618937 798830077 936707325 792315577 37297728 239436274 81851771 389359958 935615349 956954408 103629685 416352216 292648447 768466434 532823609 261989346 454973589 822450691 720757241 475996296 167593440 507063872 882857062 985234845 534148595 467872103 245150996 341474616 582212793 67365394 102364134 93321253 712100589 911230096 317221766 84231957 596746289 808382360 459093961 33157816 807426489 342044472 282007563 448767713 661104207 160495078 397314353 903871555 949234416 670613918 201737269 798084417 680827683 113971506 733146226 199064179 275331447 799948198 875895684 477322510 934982610 35365435 328881049 504730416 675729915 170754348 592977893 426517737 468132638 182807694 696559408 868107465 155607029 813641531 11193431 771877594 810471585 496030166 194333255 959374386 345553522 168343419 6031085 970897664 62086393 823259217 770331454 526024631 683500864 512528415 333188338 202529883 293177144 405268350 30782273 598394883 902964603 720995368 898732385 383295438 462840471 912736451 427770816 332730504 133449037 213536340 358940258 8947034 193584966 399283567 198774706 847201990 585301020 45559064 283727034 406216300 250256075 986859374 608397698 301475060 569733127 73812851 945926799 904642705 201503286 784348844 235252136 81764833 553885022 416422408 390470600 896588587 449386499 127950739 679813468 290662532 526023722 973017619 593339912 225290975 315744567 624917427 806474511 270921560 647124128 415175984 864218768 971091531 956018999 772559226 207565809 718222312 540011992 399722791 261456269 883702662 814770675 364777414 195138305 258429677 706201536 259713745 946760278 340905726 384977556 905906540 434821174 553412854 974182506 350188542 208421199 492889447 75479446 322058573 914604558 56993722 731677602 489468194 610152306 869275181 94282833 480985366 223128876 39902222 197313916 948171792 470871449 258517696 845888440 263139605 462510728 328871890 659290448 271295131 343007535 433938942 963034960 55276640 83550522 781855518 511815146 945610979 549679598 497083736 491078403 922207358 268594953 654903159 729883400 387557650 434606199 444331190 239008006 242209554 113313423 72881125 855671620 999999767 146831916 202370649 638797188 252486337 671663972 564002055 817125873 582650215 879458194 735920293 297257900 302644850 937215264 894792043 758855963 653230124 128406058 380926591 341961682 868010933 719854114 45300900 709777 624285181 191197696 961724461 9888961 190037101 211179886 233590263 865918483 122726459 246877127 736380260 217372444 373243120 632623166 304521447 383139339 532796001 895276111 58146016 268324938 82759401 977018709 795604647 592691443 187409590 492750877 758778506 660501213 651650425 635209450 325179292 892370737 415895856 697861610 548313102 756256971 418599759 577393212 514939611 839109673 775441506 261620424 908237037 234490687 87405176 737753357 254019481 405930030 87569350 170756253 344642405 150494908 106416759 773684459 979058604 655877365 707722335 103787108 508542258 636079083 155289872 470389959 146957693 245159144 296843311 923455955 464658501 399067073 966504564 717961602 189243481 646971251 784275654 887035401 843395376 152037955 439414902 689212400 638049917 60670782 304293294 754595951 847935146 307377500 745142372 385400083 712986044 810833182 58771655 34779020 821910628 372982043 77666354 888663217 153640873 105969511 861826699 69219395 766744585 21273523 373192028 544215734 422628098 975596203 550224345 955381896 320251534 585685499 367487174 776615491 809649317 831231307 313319968 611411029 399995061 38703068 53912968 833114874 269871302 936902286 259651552 55643399 715495605 140393752 362999446 445252983 852155419 915709084 751613842 421826438 579741153 475475895 6341498 305886712 819201022 44827923 132879878 457783838 783124406 770413255 164989635 809548009 110020854 235090447 721973144 347502560 781542622 16570503 968503963 367735397 197808411 495542485 710399590 507623125 566236891 938413109 990188208 584664036 255602217 786346126 770722665 603409272 497097565 394108218 167466512 743840080 563729646 884259740 799131698 832399907 69768182 218524293 575825555 35670128 805911443 46020096 586716488 866035629 626146575 396312282 598628830 537665890 924118660 870004673 654533934 628179275 882784786 803368607 610755201 205492868 406569229 637761409 982084647 734078072 513873889 176610575 592705281 611885309 502795620 303232368 922311395 453843133 740812167 728904981 830161928 557312142 302871336 362788947 852424194 444904156 914235783 175329935 615355081 381743456 297086808 108849111 488320145 21205161 172512076 690753797 268916867 866242144 550008859 932639235 648444394 828795737 570969709 357916927 230957669 429564875 699871226 525791132 67286738 262300700 62043276 296280378 879854923 264033558 201254349 640376768 74067173 284933775 806245200 495594842 53797989 981036374 771668743 501365121 764835479 793855000 542971606 90742543 730679455 350175202 461213800 651677207 431611255 374729252 718321455 804189351 440817437 808633005 16558898 217410847 34758708 443438916 348644057 995969227 793163829 968073300 401390534 734234878 262863450 144454670 541362370 234370098 450325193 91133307 396234456 675126109 935522526 172249214 275951963 186271500 988769826 709138064 349512939 949619769 648649388 882462332 556721669 780622640 239320339 361471737 867806563 289766357 207367849 187815075 127483679 611873493 572857133 152364560 255236966 384586208 172401118 799873709 381747459 224251257 35237290 426640230 203919036 430525518 934834048 915873500 914382793 136438579 853878184 549171764 260678061 894481926 488983602 638040501 722635645 896502826 131294164 382973252 434484254 338593275 610838359 45481653 375074237 992001785 762700628 905285868 510722378 856536459 229934464 183362146 3279850 732394106 213609384 954562438 800204873 717920474 691613199 333176763 602212390 790974885 750325579 901992710 949209420 587858083 994708392 992765394 164460692 915940274 761015689 160446877 955792638 946773907 43122326 12979935 876231669 290612194 1285804 676858957 16451336 529288860 390277547 428434678 140954510 294581593 46188209 64794781 299886656 351257872 966261506 464895701 980756789 939003898 914161603 68182084 446753835 831516862 892375340 341259497 660263279 564689397 708637730 919883999 859160865 584884149 712622284 319273288 720177824 374224423 145894349 606121074 205259593 715444477 631363181 119714693 577160190 140541328 638782786 595306902 510139647 526984439 889305758 355139799 93466915 938787913 380244369 246711042 874811340 97314356 439856358 213559599 559451480 161714394 543955939 412291847 352617596 962610408 541825108 492617111 581568082 73829183 137974706 665902214 455108317 820356245 485273995 86948066 305218816 98988798 455803540 292469878 712855615 817573869 46344681 576902286 421311571 552798929 12802538 283196775 769182483 115874603 929715370 229826636 956052405 210174416 518105845 359655519 346254303 924301792 479127121 17975444 391479672 761986740 849591218 243389879 7764050 180021363 496732874 439566335 805629491 235767026 947120243 929759458 662287783 362360709 910303972 518797966 528480493 831845220 658476425 874376305 888459345 993435355 426919471 914140935 872248391 200202807 217289617 908736902 916472960 875585263 406787977 649991277 683447957 980284099 787683308 523687616 99261553 219893699 295793251 767971681 549203643 652829117 434061676 130885086 680360637 892062367 347175096 815114425 898800381 824912997 295834099 787994646 831858774 521686748 104559488 928091102 490309021 901336121 550795489 262404373 314533484 924943055 294692549 824546485 641975172 286487389 114261555 45553081 621312545 402467214 924553177 850868189 131852541 752562860 193671331 117506456 410753174 351449932 80324566 476758973 343566909 568043897 768168015 62880642 706428457 711122995 63713098 394374828 570735758 6142276 999541814 655566843 758684183 759151365 318892720 445102321 41585838 408659859 629569501 105555720 695919378 881584851 3516632 86563358 615174672 880148725 195512678 182581243 19796761 832835781 542292119 86567900 745298715 621820514 235519541 150885816 592864429 719903586 895043089 592548232 276330137 536636483 570049671 177201966 766731069 826057042 517106936 642979902 26516511 259532679 917601145 699880731 9979195 496446756 95827636 538452846 145323711 78633352 305057020 396434568 415642121 783879617 643040141 630596572 904754458 710400608 356049591 255495370 238988110 918296890 825877856 965330621 679562298 958417682 712706984 919408199 666021408 782945743 881091802 944614620 694300310 599657967 999016619 578781366 357275776 836169508 351614265 324234672 248180847 491982908 493302419 559211734 175201563 783443022 788866804 973167413 630842458 919502989 445219330 539513310 362981620 147515121 167884673 985544391 324265788 169879296 540063486 412044778 79072810 413519342 261255097 837378858 582637030 941154490 465463289 645102685 322237120 810141295 193942286 335603267 370028271 566320733 549394543 819303536 986191775 195096743 102164823 874355216 701601604 619797373 492563281 679548460 421745393 950569660 856643383 42800094 151539607 661557964 10495835 369441239 746988625 145023485 492101457 735878835 703537427 53915428 455279239 986544753 553908347 114715385 781474309 205316942 704820075 312081934 251740634 482319606 136282501 136803191 965500362 780109524 495294630 551257018 128595734 715158239 192086238 802479853 388766958 3443841 77167550 278520329 729693753 559585620 896953882 880130716 58960555 23186419 14054789 338192252 359656895 563349391 175598447 681295203 747627646 900325317 734352017 534944329 429105105 566229765 271584473 502672486 120100899 261729029 480302129 992333219 951223193 242562056 143519681 548780951 920209450 437631362 958390628 860425653 944969327 485443700 882932477 423365617 316263948 755350014 919743858 428276280 846589793 289789555 283854840 805565267 50910260 141309471 761763184 459752976 703737014 287302425 334910817 636329463 72313712 428559869 738806528 827642416 671605883 351945986 664504241 870569516 779136143 764730511 575370994 936171606 612806466 181130972 109216968 700188312 340591725 598808284 61035179 922616257 480437596 557183532 904828578 105343042 169437786 918120654 603028240 815511733 8210984 217402705 353929427 514432229 698811117 520903664 752489877 638493530 15748622 455484657 64725088 564016607 942296274 152064916 603077992 12756815 835955148 164058211 135540873 664794723 636513484 214428074 525954113 77654623 429035628 69761537 849696080 796998297 155460140 220658022 184404284 967525322 414070213 543147940 462885182 977345866 441182128 794658021 981281385 507612132 613549739 190679877 443198703 681598625 187563279 151728259 92436322 244364627 634519415 473250556 92582611 304506559 829868516 747985907 958889178 292135840 652765276 983752114 857215621 279225496 182781804 787168262 703334319 953378963 183323321 695124615 600759827 710767919 198060260 67654898 898340781 301512142 790706160 788928654 597827045 847106963 702050989 414160867 632382441 587416235 480064229 535214724 283970812 978553864 737794299 551324846 893984331 280041295 575776412 332526461 694132881 788828148 4307385 938714633 762964096 167174739 814548257 290634758 410676473 961688322 137213473 319586946 323220985 356518376 331407102 330381091 47988026 794573490 962443198 567009203 79377003 445819822 466864036 553856857 563949796 598330386 405830997 190616501 802874078 268048492 36878178 33399903 212048409 145238076 23072651 814459496 912432260 312388261 692626756 383700856 414971997 341736497 426837502 767048960 470878037 958066119 135898538 763054872 713863020 166095367 825926737 552751665 960287062 298399191 601231180 637597445 324777019 407924708 953274088 110949128 59701785 517229151 998093318 861329388 3402608 22226715 160167451 681358162 234820494 163368249 869428801 102994544 495982190 875338955 461265169 788827091 355052467 195060274 315788342 897671660 564389711 306394266 421712445 742657409 377869983 368242649 244701735 99948437 452201781 927191425 752199448 138078074 611175899 352233445 920050573 436302888 883879505 147255496 958639540 844461074 715324630 176187218 277405433 540425327 884771533 257428062 840688381 691778514 285968372 819841195 870410726 643882590 608550412 300945530 991787391 618934284 627852095 376624921 917261552 208908826 723049088 895122459 750368720 894330516 714717608 555372997 610760529 636026991 812730561 765862304 321571844 981884374 529568390 133169609 696775285 506188169 168012122 815020781 660715046 510679863 45327968 660100703 464268841 965541692 56496395 853738751 95180406 415966605 694638234 269486619 510061881 97192528 217711127 164028585 235044934 540117663 370854950 478990686 721134237 896097578 32278469 922059272 401897926 593552065 664724760 904058470 33575574 768755780 501797893 334027378 231928263 137684439 79965779 662090682 485787460 816070905 617581722 945591279 381298249 807024665 125405856 393549898 392608547 988119064 168283440 966968901 773269513 549645280 721250081 8817525 890559065 562359287 409782127 710731596 97481619 679589305 688878671 212212886 662358841 727689065 191396075 405337748 661340477 316567398 472578861 298809378 590225283 810115731 603257560 22827631 259307784 41703817 533920887 258037509 214187366 642083989 261732307 50852729 869644476 126564206 130449227 870432606 444131151 349702114 44583798 602389042 452995095 780158996 208387131 67761805 245705706 815926858 604650212 492052198 129084277 439501534 861799151 887365092 251570821 905180537 454411151 999865179 169368081 153194750 135559254 14258448 586988960 667600189 680892820 393985436 619686662 810556918 546783376 641855140 96147730 136929694 371222264 272190187 634337788 217359325 80386496 126511598 831035892 342020935 178134257 841926913 188725676 901810392 777317606 692453530 440532532 703548919 592741332 558170462 197970903 89843107 81060457 563541467 712350934 115783384 820202217 333035612 644457585 343367458 754351426 404492016 943627925 837998107 331125649 588227935 622696373 503090115 723710061 539365854 226064239 524071492 771474865 618109665 944815159 837462286 631884442 840081440 808363504 18917841 582309299 465466455 608277908 651820032 119171245 836381079 964730151 724643213 618217722 743319392 774185467 85303956 517705090 419780818 886766963 246044145 643057215 148367651 819304266 746374768 783659904 715685267 781191519 837922817 536608517 373370312 453051885 552511808 576919291 114919439 383358613 380701121 564788807 724227173 741543483 414669947 126697090 814969933 927667686 133534017 814496403 314811219 503382624 516203163 331888687 434616705 788532769 52451505 256780778 895206221 1096253 290358244 335978574 850528849 362051300 559516026 416405533 861754792 688539027 787030230 964657536 90308443 643746880 87727780 969109779 154923883 654653452 207384322 822237992 99941602 380481720 360300092 489896873 852570263 277487035 75140807 598000062 874086994 772863430 547358587 59634519 605530163 441104529 644247074 285003219 589424009 336718916 782434674 244142822 38741022 650057621 286242243 803052482 527410964 924360396 707352704 854484500 175645023 304022170 704045424 112903498 585755404 712751278 63990247 438163187 445186694 941723831 100017614 456580410 323301714 375948557 953099909 324696732 788290136 857446630 655342027 759181253 750982576 314398365 874935197 322476212 801375403 632982008 584566468 628054463 755884626 992433978 76315183 724842074 613145044 432588767 163069460 460509848 659683072 406991080 150655056 101157206 754577424 603762596 534292111 854837041 118102535 554209523 224616476 359587591 463223496 743182080 798895922 631282436 391056179 510000854 436454722 116785748 744088698 399895981 505644096 519124353 899648779 695860085 600338063 912420424 459348772 10125267 230702735 808330642 157451307 782693038 764775805 859693131 132642044 563257515 479258644 548742384 9669232 110510440 397300459 674778546 521111751 636747882 735372835 621901582 626445780 483352912 804276549 96487248 195490695 677898860 376378094 3993565 682527493 403910423 590566321 398880996 552046873 633142751 815352695 823245133 255215816 819143710 264599571 200951508 240662320 836825949 385216960 126531069 975664236 149914399 803083313 956395671 224683631 807288230 59554942 72427748 761580915 871976943 385921661 579790373 33208959 493077399 550915175 17005123 741986706 118051773 486437744 593220746 543744978 664797898 552911477 332204600 115444103 203549394 177577566 482271815 839574352 989302295 376032173 776250871 129613031 463542930 977039994 185582025 689938149 263515312 5594248 920147526 458203964 507178630 325450819 460219706 856756104 755565791 902061571 888694153 248176176 698170379 355098767 777515282 358241443 745385522 57326069 679684285 59709933 773422151 656242852 545786145 176426040 886785421 396756033 862688949 854080188 219217888 880067289 295948811 332685885 295815229 838458313 772142649 848428021 18605894 45708370 979824557 41390314 588385609 411105388 110527421 150824735 543109497 702478476 769691970 485549133 615034186 767663143 861280497 131790041 202964479 503297123 58564576 566993064 26679877 596255870 509302375 885674151 629055117 442725435 390414157 176801604 984171640 994828066 763220952 13627851 322600839 290141488 725962905 235495318 887530893 778099537 584937644 440163484 890755039 695310667 991287438 798899165 592878726 916429137 57358855 398624554 593350788 876031558 188295710 389034807 115370493 19135903 779971288 254375641 147822254 559112439 651854935 334401322 992786139 200130118 748020469 634981235 674166298 905308572 743389071 502234974 370191115 642173213 194606670 460981990 151613868 551811903 983245242 130287602 956592737 402475572 458015334 75532536 482621378 451489931 198108037 694021198 936381751 572330165 652324596 626042551 369131258 691467630 172672214 76296049 663261087 420523795 39567639 631479393 214070623 428820098 797815073 840443103 464888944 251646754 564739922 806613300 645476829 500796760 216578641 858091833 904108357 116343126 697640530 314204619 917422530 184921479 299614457 61278370 271606208 258222264 448292861 954786489 763523872 211704516 549701473 679516329 841869428 161020756 195246562 141564402 376853294 64860705 643868314 300049719 853533898 429947797 15525054 696208857 911808388 455593788 20592320 894064914 689094786 796542891 181089268 643688997 224376428 757560131 165355191 292519048 208412527 55535851 844782581 537382804 254714921 257474367 368039035 906921193 295401165 311308332 711374400 394579236 108839408 412302081 276013410 719418589 485654230 104170362 258766929 690078769 863063090 631956558 378066726 995479973 86705239 121455191 20840532 726825780 705818351 275996881 269507079 489841302 389380687 736997391 784443683 151210018 419838137 652350812 484304644 356087962 68474541 242801293 518453931 61923482 131693052 219385510 968385516 324365440 4425102 347455128 9325429 602750674 244593259 945327030 422648307 246330103 431161432 546291176 687271783 60308056 867839413 92780136 304483674 788074361 554450166 370985897 50381132 793168937 565710309 728182034 939473486 555562982 72121327 985876828 20322649 53882168 862304143 10909974 736690057 264294500 832020268 545819003 681748195 843273639 772517127 732399698 605606067 332341156 516344870 629599215 324918613 35663897 168298764 321712932 430125777 557148834 837924567 448439471 237061266 877795234 10735133 192960636 388946771 455276427 94170723 918940590 531634611 817352882 184079550 696192653 997188337 144172096 912408806 429964679 693464971 390022344 102843472 211606146 54732424 360201256 529021223 788615953 755079357 106804539 13075003 518413151 84829861 633544903 76328181 782225822 336368566 306563743 461607136 649621069 321597348 178062286 106324522 520816034 310405803 421643080 814203664 867965602 451499547 314111070 56925470 16777400 117256220 501110907 133411306 261659507 631517126 629820162 304739669 582474646 817075704 716391271 905610552 894299510 991003645 788990779 362967226 524401776 506544684 373646409 457774681 81825894 582444884 808293367 651303824 429681094 458156649 484101370 546781141 395017701 668536086 332651569 550039449 491227713 790387939 511912645 781624240 684112853 369188485 228843431 563644150 749345519 692173665 870892329 717333798 282739355 75664008 109353558 525784045 773951622 920045523 217476137 56237885 538834287 224156460 849530055 84019327 249922009 226001725 260266610 463870876 566455712 400523741 123769091 610475287 357632075 461789211 813633486 858729485 400787356 750113049 696265756 181508238 381393378 457142121 882291105 655695647 184910929 304227594 72778324 570827997 105082327 884907028 234765425 555734484 239410811 322252190 138516712 852085816 879191512 802569193 605628502 238618566 969455416 920668575 841227201 864342006 916901864 160936150 938486477 502364687 345128718 415884737 877558068 481830669 432653165 500319845 99864442 430457327 928566142 425366169 803479737 378906141 993767212 675088438 727532920 221991274 2479242 152696164 836141339 657132317 652322690 448092691 437661861 42446536 330524843 13068381 613925753 723437712 5290936 645661775 621696413 127304031 3799762 534832948 878356732 956771779 682030787 238926199 481382705 946014118 665658368 245999794 562233863 898489489 249761440 333681122 460170531 255451325 766009855 639615632 884055756 356297270 441257790 412950965 717784323 164925008 409870803 814508915 537541686 210873369 427627371 100279968 414680101 497670027 337802514 767243285 409664969 984774938 248330296 68843666 293082476 403149418 127604750 158348336 137002651 47391046 237841506 64116613 480288668 535013187 793858235 206834009 911431200 979189876 873152440 788464445 52699957 659599950 692998454 604723093 359996557 494219193 427895256 199242056 213490682 272711536 790108992 174683810 665270556 448105249 841944921 638168835 545966959 778456222 295837755 787389994 43744781 309178470 91932745 616672570 425568549 747502436 166935670 299709373 624165137 994303446 293968415 189132920 857020242 908860531 195611746 688362470 751884372 266875637 988773567 751868453 848765231 202837363 373209964 525536421 829544747 147994902 402959387 267155716 86611857 326118421 321989592 263759801 286537380 975220134 380549957 470833715 477716563 489971903 927549832 526460960 865471469 630369152 908348480 242304599 296360894 21054284 471803795 489334537 362246650 273484189 650432093 727275835 75953994 913654273 746574076 482905102 927109615 460842242 780270150 247245075 386462997 242913917 249319897 499260472 815728814 651208557 337341960 510586869 439603833 548366667 490738425 67751794 461653786 502197041 633326996 598152505 761261755 478333927 296342158 602074220 575363116 372669099 964065423 566845873 106422563 944288405 523013026 245984803 433211849 238981334 209954370 250346407 206404569 859933455 252338050 118252257 967820773 210165355 944042728 759225819 312544298 812433626 3339651 775564205 728724266 427541439 100150444 711654590 628441274 336734138 65921868 445246891 382978194 992938326 183457102 17250229 194453778 831385443 188017665 787329209 720568308 229056491 851156703 187868854 472227412 569531751 601331662 534239787 948514884 868591732 614094503 673266004 658383457 287143318 367849614 746317043 51023315 485383767 704790780 927954329 991323048 66901269 744561346 233428970 532445909 662919921 973891526 135235044 942189474 252631600 520236104 799995992 319147026 932796201 579486462 729581627 933004166 206667765 205750201 38826870 531568300 513981570 316988125 460865991 302020086 966585910 193445592 214905733 246312877 894868469 838450042 439348164 908278583 551933709 771948420 923610258 152217995 481603734 325649345 318898879 335980815 527028194 356857303 360256415 115505848 602230852 552758527 476200437 248856108 323525612 52442014 784856363 561755678 530921621 641911232 261906962 126230361 103257117 858662486 158169608 730278515 732440910 84375619 623043070 10055630 934823579 600521961 699469605 980403490 708868880 271527165 402599854 205017089 552547834 84417443 8957261 553005830 839293178 898294375 944965886 483072362 226151667 325482429 687191101 593871506 352029874 923240346 479811020 843859765 516912717 204130661 62084274 740790777 668307318 59769089 449868651 709715622 488632 229701583 284816821 237360931 493991035 109116327 746978987 820222217 711394878 181529735 317832706 635690284 937509601 274946860 211191101 978702526 868344541 429042860 357047864 974576844 945500103 292403793 953186301 7934701 494334282 224309809 835611291 11512255 744736981 146623972 794964296 70126388 995456813 909186972 770314932 355675358 313073720 995845344 156656697 408095994 568753485 726488552 107400984 423855940 390935897 416745485 868296202 866535369 313641181 931204578 491673540 899881418 343442263 140335833 169859808 984657515 738899386 124892099 145817138 55274762 767016122 245263292 504045383 833163955 338522321 379076177 851788407 188130427 124990301 821570260 871140485 512101638 512369391 960888216 483577898 439654716 158140658 749394595 994445721 283744145 131185805 994081075 365474060 293299949 151105357 506536219 424618979 408869859 542971940 351593920 500739048 89289297 827141548 909183196 410334678 650190994 684235300 657833727 693549005 269693255 843418165 693928069 765065209 968097442 132502499 312565747 327793665 25915784 885994507 649402950 163851459 247586190 136547252 957891889 423308263 149709766 710690051 704302394 928931481 162968653 496922152 335771294 912250307 758035954 430224257 132598983 308325247 340714122 647471825 473677547 376926481 631216991 355886437 738733139 251175330 209463653 872082038 300892185 66020759 348292981 449263139 612870909 719195081 641690627 540725590 574959970 354417495 810095336 208088148 528936823 592709479 438261144 167735253 422945213 231652268 113662989 454529773 939502707 845845684 449072934 852612923 840849013 540684421 360252563 499314783 620197231 517700249 234144880 716087153 441351821 369528655 753249217 765138523 615437963 162767706 710161581 202413546 322575199 183436906 204615526 762675473 339989752 12630783 770765318 474662902 941737415 188589593 966944000 569935956 369653969 780882853 323854096 541484662 610271355 301182345 96955740 567875876 846808594 174352317 995688623 84826166 993870265 153942068 313746228 446824544 798327939 125156549 815409654 557897162 696653256 936969099 690918051 725254595 53957380 367281477 96940167 172827320 296368748 272859183 512355001 16384024 143091961 736073206 40922798 344110441 90236385 976070242 601262538 899348893 370333038 98672838 243223391 585237418 732781972 125792982 801248552 950010716 656260327 902170817 349558780 746417810 428210372 514827755 127976317 893278531 67219277 192950198 593668727 544626992 915686740 719817047 225214272 485372569 338613965 236077291 916303752 363163260 978691445 745487751 675423098 962360159 796252144 895477541 321500675 723313604 177274222 262618002 805718221 501586014 931163757 337604218 458424394 293346843 326808461 570241367 642512097 681391867 51286860 19985473 897069805 84359589 764225680 881640603 255641921 568820205 457691136 909352347 416154226 257863159 163418035 401327083 685479054 915911058 348467800 78513145 748919221 823736753 99838978 723901433 83882305 406023675 383906290 759825238 930482218 559208114 964298539 532452681 652144773 706939578 851282033 293642580 943819583 490426238 110609697 551868669 438322201 448228002 589429306 883421454 462692202 218618036 310770372 868757471 4153338 499388612 146212937 735838082 753329044 575520384 887466297 107750958 208440031 188031080 841835973 626653355 158626579 943958075 744356027 54993190 407878484 751091482 625262624 834440046 765018977 511646025 22444974 668380659 350775903 327750084 761559687 149249957 408279563 450584383 642002712 727496001 574443263 327850898 934305951 480968173 528955412 768192285 198712189 906269132 550446244 839062075 235317509 27691998 655261362 822144228 41549025 597758448 460369685 826449281 252538484 346006088 17346181 302054348 889598229 386793482 678569975 761287812 645004888 55290428 921600789 557916629 868508410 457207686 338930851 946082407 776977254 809927507 672578665 296959337 958043172 177342478 554645179 81592217 672111755 578330148 825744214 259485833 747784862 982427727 733793622 430225706 876172469 555670320 334565109 460013353 235923134 522331637 993611172 244415244 159051344 729915243 940930743 702766214 968668962 112551956 414881995 850840264 657702046 86251431 51749615 524924462 435309041 807503243 163890044 824977640 922865696 761387005 818217511 331847246 973222079 873564188 700819506 367774635 628491139 169737376 802968654 828264163 328317942 343368478 728002475 831762607 912122387 124670237 239770873 50946177 712859152 316785058 104109739 233384598 689824290 463114189 194960480 402115668 803309809 260127755 758724286 981380622 418656308 508396890 492363048 783478897 324024051 100607070 60265319 879268542 333985181 491598016 586802277 267317993 651671622 516199438 308048643 624717326 852617146 555184649 658810064 279747220 799431522 301908251 421601594 963043295 345208535 264152166 950036209 58799572 614334498 436599108 508232787 741254983 352831216 381829518 260241567 552092603 182499603 263374402 859651059 809191401 981864501 60258956 829641614 332608730 6151757 827377956 266328374 372065380 975390493 375761231 469009426 884319753 866355720 662624168 873469994 333024824 865389392 534440020 854029498 314831516 557716801 610626254 75640496 184118027 453168231 64309687 390605230 338761579 626145274 170274796 46370290 963025888 836627955 519110471 342161538 121073446 369179249 256255926 12473448 916453001 118312047 947204844 386522632 120589934 859838045 668374989 955898703 877205393 523515655 68860810 249000961 213176949 118579385 775019898 700977381 832955044 427667495 429936667 888459993 371114082 484403245 703028800 628194264 399134406 428790065 802006287 18481750 721915887 251280488 137984204 101188295 241542821 825475753 85331394 344105117 715981359 95596571 538116375 861193206 554606986 904956840 843886702 277642301 158636103 109667658 600791840 918059414 379380208 564267196 965938645 121008086 49529636 988694153 18985893 659184467 921394581 331950535 489838361 261786340 714213790 865920148 190769306 784194306 939934853 970132905 840608357 914338090 961716261 397011050 355395747 605858603 636180090 708916996 691042133 368469809 448963935 384399065 330496013 524315126 752818233 252068228 97965263 936941044 867937792 131320526 984832737 630831226 493995000 185659494 576162662 620397934 81152420 376378590 500775486 87809105 523948903 236628376 873488472 71552015 107571803 110619350 35997501 686799774 7480978 493327628 30675367 245207665 278915402 410320377 106473281 242356378 903935475 629063166 612719050 182627459 110013025 840121006 428275293 172190050 586140194 880292115 345116596 257119996 537506840 321194687 624111824 681613857 977050178 728075194 173798188 755147884 895752139 587227326 952785353 739047942 20943449 999203094 784946497 417767823 764066665 973124685 691213703 832315448 407419465 193465056 100572224 234665303 1398162 607084692 418763824 422308869 367314955 242726882 349360841 491842335 421881395 510841805 625672626 143696141 567955041 704513426 672681099 710175334 336644375 369347649 555679839 575271488 580523261 473399700 669639845 404503567 993822959 205141717 929494511 772571974 361739846 408604637 36214215 964842330 680209659 282928152 463078954 987904780 9346519 986025997 455774046 926369492 104812175 863805989 590619184 555997289 531350941 274057570 512578351 556518342 401107512 22287006 47918197 162881033 97594395 697582555 651540149 548374276 753315084 219141282 942626244 558342242 767061743 832136254 939270436 169001839 610956414 750937293 933754560 265422885 290558821 243201171 971376839 525622706 908058391 490722073 822629284 443402720 634229015 520842919 776962749 24216526 52540641 930424460 33121742 412318233 34232104 652099205 658788202 578143175 158754379 498213532 794241666 734293637 370971435 263158827 877367707 250407412 308582986 116564543 967791026 443036706 710506858 724045070 51277058 394692489 989578210 794854665 237753521 316777866 46467858 684455849 235529278 774188710 509065819 1419427 346451767 581350848 644422796 158331931 927639057 220709033 574640815 746667555 700439043 540225206 475590479 192339755 277631075 330126557 789536201 286209090 565579006 495392920 751373725 314802101 2957686 862449254 159820803 863367867 199442261 303324099 725750709 747398094 639681335 838902627 251872008 422256900 770161353 596997368 517377296 95265464 524050251 634072471 221115330 480619546 173572135 425934879 441232534 733996567 32216288 694564290 563785905 836057589 960509570 283409534 781252043 890458424 562533874 822038588 710970403 347147913 69295696 501807620 595496495 991135917 46427702 249563490 816011622 990170970 883412004 481913424 973812325 856903865 260317027 603442738 145560679 876332974 424332211 632306216 640666864 481106817 302289990 376299448 983245568 99885513 885235385 528306863 776798534 528043172 114827715 901871234 394349188 608094723 900754895 428269692 433863021 531082596 135092808 487411225 247712159 449869043 849030018 5870054 894170264 614167285 778702881 752714966 285114917 675246313 656378476 158503279 754917008 378571756 148186849 782631033 852346825 820777748 198079953 750493245 231671758 365607010 982571680 805893297 989056612 522817796 81745056 361014342 134174349 510495226 711527544 596690361 588522251 669314719 376180119 79385496 808510328 97899001 29909358 863282742 228538411 943100187 773215351 186079557 597076657 59838029 624953340 527403717 41931277 155748204 111122554 545521096 93053043 990634610 443474032 617533421 471881006 721264521 697749667 837855001 996537381 117704839 19503462 164995985 134358118 633318969 947162368 117709903 181240906 533354350 555734608 596739891 22381058 571073491 247113413 470694005 227326179 15930379 790799956 616210616 909770164 955645786 418593525 71087285 663292489 362121468 970884171 462114929 870671260 556804418 709409058 301589421 264823255 424526815 781763290 588018849 820214131 911844618 148839667 251992920 450235142 678471837 376592725 933441029 735409378 649510030 670769155 412583418 743285982 81260750 110979624 59344094 390320899 282825880 509198621 593316339 918944671 476347934 478969813 332757535 499754792 662286420 654772581 284760248 294036786 479045872 225342223 870878738 248513163 561044100 276609852 632028675 369667477 943409437 205542674 922281152 56367930 654794798 865460100 40274351 748541844 636988152 703221343 935371010 680878210 743827953 135373261 114250193 397430474 548540694 480820739 916098669 185117599 676836710 48645314 135483230 338915830 807045119 227651791 873926587 860770371 990252572 590791233 810787594 509310036 166858961 358294362 363479890 746156758 496223138 737084962 660285691 830943322 14615390 730038970 841248931 409940675 165169300 484316395 668360705 696358983 839236092 936982356 199426855 322286585 370891044 123803652 844680131 860004767 336994341 167568158 381276798 296616160 175443509 848920804 658231891 937608427 793051707 428580845 990164692 556670745 449539521 396769584 405820244 512982510 533572827 772673499 299382553 854554712 990496029 726627601 416138290 648465838 769926363 24782477 8636422 583828132 818343457 890568073 46007890 439913425 658032808 463598446 146450657 866579552 73070096 427917868 511416368 948269467 557399209 647760537 851550762 942092146 265476995 675223339 468576682 265417591 89740317 373108149 506348356 1353595 108286577 472350573 606735829 972350648 403265731 908830469 289743140 174391762 851878101 634284256 482342746 601375905 974015152 887117048 997767883 378809630 170174859 18522920 936402744 202550576 289736399 642683214 744143443 780593443 337031859 67554065 127477939 798700461 734014890 100872693 494776706 54578358 421291741 855435861 741598782 505561038 858061523 716956023 622027609 355106769 693055747 940414381 120223699 548906862 666899503 479280419 123559945 169740467 921069187 566060115 934492792 842629179 632496524 254550625 937124866 270849430 813611882 571364623 811229373 512657458 266115706 987315802 22057285 163914558 175932547 800815407 948011889 578492148 235608644 820777133 844962416 24494190 792870159 825308166 165105126 152171980 77850814 601615513 431538013 652993260 846756358 57609184 609962902 484453155 113669853 130983663 64105117 416335991 781009178 401149761 216581459 128119529 947133920 541268305 589774157 50517636 125520871 514890814 583656912 674168068 934288200 563559458 112386088 328340922 554380687 580822643 865700398 180635155 488422196 507444392 184804546 966826901 756467352 650950047 863222359 334964087 509215342 900619540 941090453 882044436 597500532 260280077 939821419 973639867 726410720 988838711 913913203 43853839 56544054 651961413 385201229 666438660 25103879 13493053 58507960 574939136 562496018 912045429 274572260 735306405 312144161 910536525 382423848 321341191 404770451 422470131 335212460 831043666 896887787 735019227 714720164 423176525 731943743 963475737 20178525 742063095 69220515 160014208 56968522 342509797 772041994 727177219 290417932 903291697 44436936 911456905 15653513 227216089 755217965 34824594 951251553 193489390 639119734 78701679 71260861 645984787 369445984 949458455 965858559 992253704 572735579 578709306 832507758 578943398 325632884 84091355 851777267 441243211 439107551 827950039 102344258 254167934 744661865 392539674 964126095 375503606 614050567 336484581 947452470 331992578 174470882 639495685 964638031 809479191 394413164 226369590 398033556 686994522 857945310 539021425 203165451 983467581 227800930 290354183 910059006 413478645 230452274 941248628 323501225 9367976 860642751 440900999 950930157 726418176 11125679 418054689 993204460 837806522 818703413 980498957 920520600 138405599 619963985 574249153 427439287 218977293 894509519 875383926 167479926 933666964 106299657 138024401 516505423 361234302 370019545 422847596 884390235 500085400 644856660 490830356 670483696 998062447 389305586 673430753 413082475 856551763 158728071 694618466 331082853 73744061 934579803 189322422 205132939 514478487 698143712 437356588 283849076 956633377 445726311 921526799 292042989 769367109 698094168 500352527 192183664 797962990 88834470 167042907 327928507 187854894 552828529 294088131 301991536 402575983 264207023 8984851 852082221 420371116 81482882 481299547 823185059 7524255 30970794 422735322 354575779 954734837 54674785 12595348 952642551 616419586 532215158 275151137 45038525 4259848 997327073 806530975 694640764 263893957 263062779 768857436 741991123 250722982 680584849 843714598 244579263 701909094 747440447 947640136 26818457 748689354 803908546 925238170 45247779 257322659 952706797 431183395 475195008 174837373 634355928 413564723 281739107 264073916 553174326 417168793 90581433 385387340 238502720 79170742 349621140 122897150 126933566 904413317 2541930 510681058 181620832 181539540 254774053 163915569 810492447 803646122 609953927 98333106 505455465 394046579 749061544 500820900 235201770 544059120 771489445 812238131 50448996 900625598 909335605 873101645 400070025 213719273 598409475 830423920 482527638 850697680 567994901 58924492 128032512 2220596 140174143 318627350 958835375 784001260 607950026 951752618 957236597 987000644 469274443 206561296 83560607 922795160 241784112 939261767 798696311 444422357 90690759 885675100 262762689 82088179 191917961 867859554 520829544 288006291 741438625 15132937 809804250 476450505 255543165 773388360 150514522 252701501 523340408 879680429 819769135 888939552 79820808 296681617 840154728 644823773 497899439 349839175 242288640 173317771 18100624 217510507 314187735 155457531 735619915 476263876 246917036 851272934 990273728 939040673 216041948 620911387 359377827 798419603 634553739 187646693 281123055 910247534 292507911 991088301 320351474 68796433 626795945 681841745 2009186 908663724 807286870 793486222 96508886 223415874 249909595 954494274 635442709 940347057 442413200 43955525 410122561 754088831 227458277 483097601 397941830 411867439 881007024 543884476 196111339 506335513 579663783 304633512 763954052 699450618 671449078 926010800 707363339 574399194 844543949 937016662 568969453 351322047 424736392 132153890 796714126 812468730 266038879 511263787 343633160 622437310 886550215 170274266 121111664 718889930 68685539 935948858 244397613 90540913 244157505 923363805 806594540 200414667 921078265 74890550 629566741 52497893 472538692 936779412 748873082 716290918 143276828 869350803 680854441 784523764 482591913 741305535 357522708 689364258 763394077 904390106 659300851 15607264 621471199 463173569 707265693 158205105 685957125 914455142 514156731 775547638 675736562 71202306 19303927 765735161 154045083 71148685 775183767 234457969 505007595 365142126 907555867 136722918 420250173 574704888 522318522 749020298 776973601 702190190 33543901 988358206 311306887 80676090 938143875 755255374 827475493 397360440 255429660 799653913 330950042 972133885 434044763 132999527 976365839 95669341 626099295 236890593 459706694 150831148 89076681 912205580 831273146 30557255 742098447 726990702 263187071 863939871 618495510 914388215 586409680 951903513 833623754 955251359 156465606 198805224 707585471 827840680 707600470 293418063 963698699 840455344 3704983 940654476 834221471 891049554 588198669 269045317 654839475 546347052 889928991 13567343 218758069 246511271 64285229 970651428 540740416 873989947 506811659 566912680 200172716 488683983 291253868 657105791 314553555 29950766 556999984 357677335 127527753 985681249 794902857 435979747 524544887 322702719 526550288 295144587 180655539 215800164 239961012 25511121 191712271 794277913 51214904 213886923 96266340 581683680 595439581 659753819 650464698 224481144 241491364 436812551 750643049 341905574 41773118 332397890 499507397 165249368 977171045 369452740 269150639 994694748 433392875 980543928 208922262 862476051 370846533 929359719 92348527 953062733 767919823 938258819 493179783 310858393 925184697 540072215 842699835 694405540 775357738 748764011 452014044 760397444 212293982 770835079 409672451 79837197 154071920 201762769 510175844 878139769 164056987 75063263 571602460 43647179 460821017 886650764 137134557 860637114 616416466 469496443 197187689 895781885 259697039 446707263 467370303 44801866 608059174 195171400 69887670 801353748 773669950 49119986 966949873 758566910 946361819 230543027 842453554 375339657 459187928 883421256 94206451 422055660 276544712 273591231 310373927 716315679 304665289 682015395 982032454 356840906 4919730 538191953 246071789 988523207 616339341 959103533 481248843 252652454 235403226 34732453 197501074 207692093 464634301 522998414 374493381 230578467 727617356 855986246 538292673 183609074 684905717 981199419 854304337 57555939 413884076 220729384 306360234 916861719 22890415 370376420 81586024 788451826 167206022 921730078 79865132 907629720 601750484 703741627 547697609 494749457 625319799 151296421 158318948 164578328 948451439 678882531 73059648 282131436 714473568 474652752 859660894 186603186 738296934 265359267 654472789 884890847 807200641 973821053 45021246 276361094 630726067 561149871 315874790 52494047 646394927 365139591 181712430 525522747 423471969 355345520 887409917 825491185 97036283 371725694 27264158 193119996 649141154 586516733 102789316 119725724 60549645 513560108 776033610 421810474 512984786 657230640 832727899 832001893 94017854 510391207 300931503 278893636 108201010 469673864 294266730 732426403 792929224 887003647 484933650 273584377 213336342 302836008 211205323 633795472 519468046 649263362 125310016 462569734 481099507 770671681 147022230 337919508 243009961 300778536 659268647 466794350 212735076 901462443 212710210 129305285 805592049 795341251 29697987 967826614 575272574 181054954 953773698 250595861 191222155 968022861 625193708 985157115 586403676 299245725 661513151 302244953 651268264 76589564 54618836 344745941 628882981 318184458 126595734 490457180 588447758 991277311 669315922 646697280 749313539 842693977 967269730 300087722 408960219 29015802 144054758 396648926 314961244 642129737 159019964 596581258 715671020 595883565 477442150 956157484 500695069 26148568 998653553 657427389 719724738 354374951 108049555 113795337 750764309 131378500 859347095 25551958 634451730 580894874 530760619 708476379 979824281 666672754 728670709 361276363 212739710 173010299 222589531 599132154 791165789 97815258 506543806 67482322 651914206 698029103 636590102 916945272 554527144 159507879 290830886 266533966 986948331 357133458 160389735 297593601 275403054 332861876 397793105 891966993 824640897 164693274 98116524 230030990 175822269 894066772 80216707 213163254 696639857 547257550 923810493 705507140 877181320 725722156 737465485 67305560 176395315 469300171 191911232 819296473 985536157 225668587 548333676 253080419 960106785 58392012 858450041 205480834 471857082 448580380 834979629 420514757 632684528 511604367 558161747 163992809 59234533 642574894 671791445 576270993 935609351 765680242 356253859 598640206 7755677 355451190 649928943 273642846 956453695 272106 537123012 660816935 71196519 958870496 982083610 237958849 843383695 513624822 408541471 283806312 84741279 904563566 92670336 219155854 511429508 40822147 943718876 595152715 810066858 610452055 798728643 293384738 483110058 122938653 789924687 363163961 671556749 718457740 885481154 398804595 4842390 177623583 232567544 490134967 91197501 428443756 45807142 350005856 871384527 189316309 597130806 733725604 60955839 226139665 919651613 101349070 136196506 428435110 919972556 729740733 551537627 707207285 869136929 59525064 397587805 626895748 120339753 334276301 334154489 171933021 339694293 495889679 234737055 651852006 560537947 120186259 843518157 200712644 39510633 60197471 99454164 891986792 449015079 564189973 61925973 513060388 793937669 957932475 513676718 726016596 70744212 737598075 860004898 218996150 140793406 534921121 112908191 961022532 881557168 216133335 141665041 740946233 661150410 441315229 51564238 328958545 260868955 276402632 410872361 808502796 448723169 201222589 835553717 244587565 187976019 96051102 756706933 893561346 988268287 450564930 249919024 414689295 16076237 55667861 495862595 515572357 109461430 569735477 821495549 146410644 708709570 19157220 308257524 993655446 25671899 47403195 774581955 176802812 121626939 642846935 468223307 869171977 721673185 806041784 393758214 101866415 147567932 666403258 431109490 704893836 310708747 883350718 789316875 319645737 442628466 430829360 846359568 457352702 230586771 26750823 634584095 375015484 674645421 997595075 759209369 690912390 636035352 394260675 405750127 871604247 29009787 164973862 190708082 360480094 24867271 175096059 432492263 977673361 585951488 622551072 555337631 684949170 53582026 98346426 615154606 710603440 325125932 557335447 932622025 334564460 261494417 743912880 537509018 160400515 587412625 777125353 541160968 355868719 340201056 299690677 809750115 775430906 995115198 581020505 133139617 300574596 835877618 591559915 594232167 512059252 977828403 353998455 808009798 636515433 283537461 51110145 480471051 441107954 247641487 142347359 409913178 871355117 669900085 984359174 769622689 97522076 536433124 702726449 122283054 998863701 611148956 656837067 135092540 82581087 322573663 873758749 431167896 755923438 356344633 128624412 299226886 142445136 485401043 470742713 855493858 684763504 794921113 735222513 633885433 359896542 170289822 999074103 513941342 257942920 323978482 476906775 599643677 272530639 361516923 887435644 922297021 755407163 428331946 622341657 780269097 751059828 736259055 569958818 281735066 693421232 860036653 295903317 326472441 238863791 240266414 787211097 876958797 313713031 909522601 507829044 39018882 211796457 711158832 712905323 553052829 722677223 282861437 304147974 29493042 914167056 375531917 284606517 334642893 60537007 490023166 214298563 992520381 129137514 111863006 546459060 17074198 246392439 665718948 867191934 470132215 185279404 967628781 371967813 500075939 448402145 664793802 631653209 329739995 569403254 6963427 499892584 374158378 239132179 208912141 863049326 978807331 928397352 806828700 238354473 50493783 416145065 429411696 757271388 366878182 224553019 262585935 395845162 572317547 952498092 410151406 779225427 854226408 291313271 954654731 545839954 593737887 423777920 171388602 370264284 136419812 442770533 162347178 287382162 695957393 414836916 612003083 943116636 30713701 669303531 289070774 274839946 626344838 846563528 251466799 476387729 63301752 516465230 905879419 646599130 265878674 311242803 529739131 38790792 573881357 45003577 547688099 431150774 508584217 419860354 447285681 722175905 176217443 28349261 244498365 389204727 258305869 576386744 241391086 943312471 685586426 674578278 767953957 317332397 715617335 694346264 896465359 73128324 83074359 980757834 911511808 70160000 29639065 202971516 961470988 896650883 97804018 767801318 761369630 292024271 463690702 306003229 124643884 924984650 690664439 376477556 931376131 387231115 941028179 471699522 332904259 510335048 807147560 958035404 838853338 118593222 651400938 357591205 714177724 95265611 285463555 945351725 1024979 926080042 148610921 31904991 328677256 642790860 462071567 575956754 225047035 851463381 354112504 275771796 432774187 37758512 131325942 452665102 927300525 645037043 87426861 309089342 580505315 192942502 668656051 211706206 908756970 477419615 542448063 944096662 75448646 364096131 927425994 146552108 565584773 816495745 728957916 915158436 350804372 845681757 298795905 96496104 796477113 816802983 100138457 395849481 622556110 557295855 26039080 277966749 121059793 29604066 515038285 417325550 784883203 893458468 850886910 706012264 781819677 396247898 983442416 123806007 800257748 802340583 950106880 744994340 183854926 367369930 85299181 919865709 322552210 237784897 381942279 990764392 204153916 368302535 967182401 248649980 292492494 605785708 696914241 264761570 47627470 394145439 360128532 806877709 575129775 675269868 217915805 208636781 719538036 141030466 189924360 392978461 355421528 277122485 360270547 981882584 399850409 366584904 54501183 841609603 189520235 698374984 617005398 623123935 273701686 102113565 413742504 677921904 964667229 717455785 797835808 801453455 219772632 707051109 935771946 581511376 426955257 268489499 466304374 277910869 576839281 39782292 358966632 914900389 133349580 760103515 406677617 372862805 768812051 50706436 582827871 445198470 298390777 906434384 180250577 260902626 110527524 404081357 897245503 762495525 693940021 590926889 556729770 278283846 301287177 760347342 53150410 721078792 200273968 765627859 178375891 699093777 285998155 89446500 744712856 304583350 195949081 859418836 624617825 552493149 720863720 862448299 400265416 920459132 635535785 889445305 401936407 101680841 296023932 476708065 549904330 153562851 59598995 259400211 857006490 399670064 708332602 715863941 288123965 587871720 64548014 173309746 695140787 281889069 596538461 718013680 644642143 374464840 546265698 73586742 154493856 771841112 365738197 365176474 475114273 723182755 46738281 1910069 895132253 396044296 855257748 977988516 432148764 24572698 394480459 220004093 772099414 402208897 97743788 112637079 775887142 96197291 987197353 912149360 211001149 24731004 622051479 780768648 401199789 164394491 603439071 275737978 961851329 893414852 113755165 361376252 775360821 876985388 137380289 478843791 527390342 695234372 412864749 981351975 582719664 849210074 768460838 29681593 491506746 932267999 337254776 789881402 869869560 525657049 860051445 270789820 572798642 569824699 429078260 176428121 645125580 702499415 790412190 965452918 3237626 407151742 898804653 47681269 48390904 276781745 535322171 915688329 990941535 716618435 862760666 499875766 817432358 844887986 6365493 876100175 32232812 629305240 750964057 586004881 614450678 165400095 659736369 519118942 438087974 350380391 233969041 765055312 701749260 127904743 986179422 924642657 211100350 649768876 647823404 356807706 858529208 59867406 899534491 550899619 22570418 290715672 231737274 334421009 176351328 854149571 337140786 480873030 565235267 364685768 120981224 154485123 802201791 23205921 667496171 554561941 17436777 61145616 188401405 352769348 332644107 139316794 482588503 894249683 508148299 206396672 638132435 76721957 618196482 248593189 179486169 859691725 842555434 546774081 504048927 602695223 988596022 968112935 961436512 235763482 776220644 793867566 286822271 943793728 151277524 558734080 209529895 425080258 289948979 629598542 229819489 463270054 258656636 959301497 799756249 116486367 27913519 83445080 145163663 634795528 171482183 800156772 82656882 992034903 250068901 714650781 179845593 714391526 720895470 264785850 726038500 506886959 584945739 232234106 846057144 881210602 797956395 928604925 906538565 126956343 742089012 189969792 162553301 235922475 66479061 499330881 269088049 632229766 445662028 859108534 255097240 52705112 710580343 760927856 807006328 946699611 57415577 719842354 846381819 536655763 330691502 319533653 397433654 703610460 950705807 62047781 620612465 975824539 698314053 740059248 716038313 113055904 241855445 41926465 546646028 567288551 724279403 21774388 148795440 648904435 473441280 696835876 101902645 471964760 558488637 493631891 946540526 857595067 690127358 870879436 833470340 990381628 583959732 998130195 327425204 602297992 940157098 906515599 982585297 215108200 812805901 63521829 917564276 282867255 799765788 2010401 433289112 618383465 649114639 774433742 334902759 810607249 812873345 698526772 962035246 531355693 89439552 482163254 290591653 831765299 566717501 166713492 159648433 646200961 308994396 199247780 464974378 77943517 361962996 364341609 805745091 798683344 300940301 669666450 945710701 698350684 823295136 368353275 18690996 854424388 900848505 243137514 241887008 800899496 168406034 981673190 872206146 581343237 152481318 279377586 870770075 474135223 25615190 79718318 107299659 201729347 244910785 376881360 745724875 110939898 196202576 916203979 638105764 466230759 345933552 793844146 860080603 253594952 904894237 780838295 536593570 850724826 781676553 298581504 602898033 374880627 308825107 329768639 144498503 361388402 733111129 315186044 992100625 777099261 632482739 491990696 655058314 629828327 233273410 959495912 591760900 145001673 512078638 864828474 943535644 9788439 519433164 638160033 899689195 893285269 474970827 329829356 949157920 480915519 789392904 597080873 361648576 714308902 986940056 156642199 263431627 147483793 175473620 938256148 536917345 332839056 533281597 25538981 386323923 2846459 827089268 144719951 219463686 659964553 293484029 982363103 891269182 262310714 142977513 370184541 800567665 684591004 910190955 19862007 428894585 258390847 518143913 966616137 430667785 250131448 966064820 499931629 569246256 47868964 583291151 872570544 962279856 221132411 65592845 743231991 828288979 800497990 663659642 888417905 149470065 910066547 51966768 269590922 758404840 412878770 412893000 209226893 883873065 122920275 531156685 408747432 712905753 799173588 708583616 319055692 954626599 224602505 856762502 498644045 968228859 500836360 12296628 104291125 164336766 221409163 273950555 569435456 587105579 482309013 337158853 223720166 710869331 262793720 215249920 787451413 29353534 540942543 56595927 694145030 980093183 310989491 806208452 251034085 495093416 982162283 99986433 548732505 286904630 575964754 611954166 524605787 148378366 25501630 906014358 777247952 33479885 433308389 861356390 653289984 470043327 908262326 261834734 331012318 206128223 270078118 321412045 445579144 688878375 394294651 923071770 696460776 698751916 287248329 725821569 20152555 649929624 157971566 910971239 898624805 132483913 348109049 53898065 147578124 273587112 223105571 961236468 913935656 679748801 692899303 775358931 16782040 793343411 217798220 35660482 895623655 670986115 904057170 334921229 364364299 732520891 766282287 439009318 128085500 413947689 497194859 518885220 950136906 391852540 694859617 442593214 719789086 607517388 241263685 281799238 260264185 106890456 529701583 570175428 490585314 673610228 935504277 605216208 887701156 613098005 471267925 125057753 382416630 664153103 138297883 171934076 770417508 466633985 881823072 826052926 357232888 929003398 476751514 841344206 70785353 805682602 627333750 870995692 697442063 320604115 685982209 15748186 560929972 86556911 621141073 251453758 869235288 622748274 507138174 90728597 42736701 868397610 650834231 858397932 277246138 188318914 292708512 330739226 149534618 449323765 771508717 389984204 120384567 431136845 856620040 31318823 608788672 402417405 478753335 526354495 394739040 217507840 575855673 225847809 114623864 993539498 277639396 323654576 171289430 112278214 699650386 149563038 557985600 732557707 352756910 509206033 905088735 761215434 372144019 3054735 614554436 537244659 845059202 115983944 672084426 408511852 129551356 238628910 737239613 754112372 844723507 483148674 10302439 456867253 892553193 657928932 31758550 89856790 818444021 337609078 161460695 58107455 940806967 132380215 570761964 652408700 233633120 434979578 635616467 333788158 9087314 140414212 710911949 376790867 348296936 791611210 544789776 260433023 26913891 900607167 195173955 103590134 802241284 232051192 530007390 457007135 801087891 525479697 658975268 94202 512205325 220855988 402836429 88810084 872603333 18013672 490603992 415803862 291623079 267224861 501164619 687503381 368349945 550198973 53746136 562640905 265373643 882230686 473647396 427861385 310297797 277183020 870348900 247249786 172008766 955936013 284251981 472686223 103687476 808345852 166003283 522909747 454770159 382322956 828395112 666875623 235518734 647466644 74469897 601001699 319162847 62336869 968064535 232565183 420416442 965890663 260876124 411696123 885006093 629168383 185890543 21302015 608640953 842102880 986861438 517029652 937221051 690397499 6439252 731164375 973255641 21455166 244829610 744030897 694288409 901181854 630229123 944252993 140794299 872152047 726670583 651496232 746259352 171030410 270422480 510562108 832577767 685494522 515985499 792833902 237910768 629275650 204954682 702987791 143094154 360147440 516374841 680656944 862619751 477900368 484603048 601432075 868341729 88931162 24012283 214382494 688125139 476939865 564456767 200295368 21572966 937308324 819187670 963971612 417722040 486647679 322371278 805258289 243262967 638307638 14660199 932180784 39705435 273907222 535850485 550481428 689138210 891751187 963853360 311130392 876854801 993727590 16649323 310512680 711238132 574788328 773071271 815708018 65797422 773409893 747347978 297636914 855952744 960623519 985176570 902079512 801049464 706118307 164613629 57044595 671258940 477426432 315970799 90982247 669968641 102966129 137112044 661915484 722063259 430378869 407721569 394517059 23153681 401606802 959747609 497081437 696874143 218047660 58223066 437864103 588437409 884816745 948801356 388244804 718584841 406087891 276508487 285868991 234695545 409586510 763961951 864319340 35201775 893615687 84891383 8544693 167916714 629858239 626436291 802779470 801931844 267313428 264239938 580049768 112998844 541920530 367337925 825144568 58716162 379576709 651022519 650327386 976103463 142089760 71453352 946242527 384816237 899463595 844901765 510066720 473405369 467745149 5600863 915727141 828681911 887087563 796662208 956585810 506558045 743659694 562934115 736953193 931905272 647525576 209893275 618535715 834311238 868016551 391029116 152570658 430671601 637813462 87031044 570635477 863571221 980415020 891992227 558903862 22593973 682396593 856332974 528478050 102771624 877058983 596055972 652719678 285472124 52768260 626925418 187152453 205541602 608407493 619657645 437229318 710652789 492526430 880356353 93142058 476139879 402427938 203680603 938832853 419373601 256271305 451471465 655986313 923559878 988764558 946737959 579890779 677773707 297360736 383799902 129576903 63848209 990372473 981651277 106074148 242140742 953003301 438605542 874768940 360609760 455626398 446905286 727963999 187413781 861242682 73231955 774318568 491026454 961763492 803482020 248451000 308246229 471086886 33511248 803139719 656314627 953009345 47782171 318995873 74659620 444296704 83060126 351082089 635691857 551246553 688957508 334303696 784609946 605916412 613346127 574659240 406946175 597021129 349767061 315444371 294242304 937914732 682731278 312723591 770268956 137151100 276811537 775380229 663864122 529234035 438906530 278382791 639857315 613536581 666199791 7153634 513189501 536370757 572648552 733517272 444226057 40593488 960159601 915957379 609534934 958966180 879865303 345352893 33366701 195069359 909389872 747601854 433406635 82819732 224822488 276066120 944041725 898623654 38892032 953714701 534303002 807607108 179183582 458244521 266781667 565240413 872409953 686802283 598507946 671823 127193694 82461420 185354760 378941442 36881137 266166895 822472035 346580491 433046203 820402546 33371956 273456872 509783018 520948195 867326384 3465188 29419034 550178873 311216963 335835121 672421877 55848777 641424198 530713172 920452043 852164330 778667969 986848158 903190004 253541158 187455848 38084222 129354673 40013926 60483858 120856407 993960101 592592615 854634969 673234853 256037508 175231329 302158591 451567830 196263348 198764596 270778204 294452567 950826327 289563761 416229939 272771923 804649115 689054833 389640277 76403684 962160306 217300263 774981617 981132462 925768539 393276030 303302423 425928226 13700064 858783467 68391711 666859359 398252996 698084553 941033467 18413714 266142420 483698556 131122199 422459167 570962832 287935606 334108798 664057061 812341306 566302976 901329100 414928728 837541984 834423083 865067354 874104623 366160027 858809965 245754876 966655791 96512154 85094645 708120484 19699925 432834772 50848829 146459446 948579687 34712771 651717358 875624602 750218547 637972437 42438047 703933150 795279450 800116246 4086343 280778605 4883774 652607846 970590647 6604749 583905611 931839553 295774540 761262657 910529946 979108010 303719575 712014448 261631789 426755333 476952849 644827495 319936751 904894663 465853383 223491660 496392280 903640046 795004148 336242279 967802423 891265282 294225319 896892248 520800960 810464305 673909271 713850777 874854136 128846532 917276280 239949404 963154053 563360459 415646213 444380739 576258807 905533118 948220172 178999363 757423828 823340103 493855631 989006338 187354053 444169574 680051489 682387439 419364566 73636693 48935650 772352086 429214915 89563919 945502930 758670541 10347821 659510719 518031264 121225201 341936810 702618793 914607472 624793607 857270199 363277794 247750689 827527735 279470246 987757742 898442803 364067704 891799053 955116106 991293445 793379198 737217322 320181516 591666925 126555121 718513434 353895386 950910350 832434038 293245509 874556620 852409728 287266359 18299343 95735674 376293682 991254507 838710680 304906237 560022218 28694470 984694060 174214308 715571802 509159258 484147515 414649570 540924628 397738774 86346559 26965601 338232902 818090380 349137946 548653597 990952994 597802072 2678564 117642692 523152897 68650298 648429805 221825779 239995747 607450468 100973500 420029710 74069373 318588574 374445916 481843688 11079950 768997952 499987012 912025767 950825760 956360663 993330990 729798630 246664931 228275666 208370179 772183283 440115662 617149832 48054093 265417610 641403573 200817831 860584355 717841823 874123244 984129753 413166406 591324599 982711205 95412155 625179109 483792705 213372540 475304395 791785067 125645842 457151388 577645387 851669892 729524101 476246972 691688425 782912454 500459411 435477161 15260656 125633862 653374704 370393806 191196423 555460821 597908359 424899594 915921608 602161720 676146912 523333427 343369054 870326190 134340673 35846968 674274269 231143535 932535665 225188966 575813774 336856073 214126564 277094891 291882953 337231663 755229229 476834944 501102343 499190984 239923938 675672313 734993815 700241640 946405501 976305696 657731947 870629309 662730649 570833408 937921751 790032115 410879478 32012536 214234121 957101143 359930550 33057837 561218048 157643719 726492126 303544325 242353526 630517577 11992421 783064972 69859900 3002852 811237880 363294 822807775 455571376 102755589 839589029 769272420 662410298 668393518 375326450 383060025 544481393 497634213 736997943 832974352 100676650 808971827 631381582 695503520 561828522 453694285 639486207 547044196 541008796 459165573 564379296 290434947 496805306 428038690 41003270 250441579 579413348 671498229 193959843 697280123 851967620 282713278 264908746 476127008 682711196 655193230 91804843 835556791 421744044 178398862 651985225 936527945 103627402 517252530 976594582 357811378 575072819 258992542 825156180 421622247 821779880 716306975 188200976 115583722 4477544 286540206 135929504 411940245 750521273 817478457 30556434 493872771 803720456 508402858 272680220 448642748 343149929 813302078 502434960 321891533 165155063 778777552 595334539 626264250 910625968 399972707 382749897 537063531 334423005 800601641 765435221 734559771 450565240 28522780 134874284 963584696 400040237 6061026 258555587 582543295 906356152 887667220 927179521 3296001 806077994 725393437 309649360 21626505 697804658 500720292 933905371 340260614 625727860 676532287 284324437 924788966 453483233 356495211 433812726 428974887 778218401 718055542 292483172 959320408 657865660 335489613 560212988 89038354 657071739 52786105 903621633 741206520 525457054 978830900 808775408 626758593 711071737 286599332 431692011 238645535 25609804 467614448 903450518 181307256 675452306 663825422 953492173 87410835 449375635 754046532 804310576 984181289 498095174 581393715 90971992 927621661 595546161 482458034 673191821 661535723 350633666 288450042 194560974 674373610 350992732 28660055 372310630 954490358 400981554 927304894 98382333 258637967 181145889 692858028 586998861 917264802 325440046 530757049 545649857 299487672 840327804 429716989 750890979 460197701 463909354 499315627 534100046 648525263 342346926 87160686 856592756 488726595 937266242 704905147 969237611 65688800 900300942 252171315 721760914 167171715 805875456 215779014 531091987 208591728 39208527 955363040 772269150 666309478 468463262 842007814 530004177 156807463 882157710 676197624 309281444 695819471 463498801 603345162 341277739 902111267 353527075 198893872 328577675 767370742 390334962 772441283 456621595 586560615 613037119 221124608 782100292 901804854 527295197 716206979 121050768 799936243 627770645 12340991 601766931 432998001 533571176 628757584 400916405 356029189 899551676 935830425 946422674 926145624 852702505 839562283 132513536 647498342 742064271 910935962 193655500 115087600 67376626 173591926 277762814 868618721 29104892 120544433 126237792 155848977 196333978 553969961 534002856 767662585 238496534 414436865 446956934 680823862 987560288 199218907 898160073 799857047 351351939 941132321 908529774 960182084 495348820 90986962 923512020 391965530 593965602 204806329 342907856 227329714 710787693 745664209 155017511 641441101 938536267 205908034 758271069 298305964 947088936 274956442 71473939 668373358 588525389 168448828 893090640 249585151 720145912 757552027 825040013 598383273 450896590 120198798 205282139 832328230 140108984 573712288 191070617 567199624 937205621 321113351 151527711 491034287 178857547 566373560 370649379 590765177 467820427 766665395 205943459 436902963 159699271 412679918 789486400 656543908 788658235 446882347 130877800 397308693 478981297 196873552 513933296 34370426 117540103 566925951 765759253 551582475 176838134 494249593 434387272 63745191 126429636 689215054 261125669 752853498 720804611 883943985 120561450 141081354 461685913 274475647 91949246 92006150 511791940 86769079 900169003 386346593 804516052 555599461 138079718 900211760 751608869 564319821 997234038 973919342 28661025 894152137 217653008 335975357 451315817 948565070 773006903 658236094 254992637 922903653 313542439 693434131 953460717 865138207 175907698 626422057 39032619 455404494 817451166 45631229 465076432 852647730 813070447 321480806 793273393 814633853 102164482 556342768 895648376 904277852 898028263 919451361 890444042 272967490 873824301 958499175 542794101 772678410 770198412 846794069 259404402 479492349 690731640 795620818 529928684 378876245 634841012 618666441 236415204 351264874 260144732 171089958 485217657 536878076 658247407 808393318 145406986 265565462 599614072 744873498 713496808 453219221 258172913 910712523 957199713 918359625 126106642 275696143 575187458 994558662 613556162 599353458 305713332 543825763 356440169 323712663 102802089 509488951 881405697 221881325 966531873 406518059 488139331 977716331 258447852 72849339 117614846 914590168 963792973 40363723 171207167 47455936 669399429 346724942 297243736 950373421 65965510 463646447 81886460 22462743 245944431 204416076 488609004 611696663 18408378 208247631 796235753 894094440 55108915 245967953 329294357 910663831 630516129 141178024 769150284 685942652 872565524 914078096 102615879 518619016 802215043 964693917 735022582 876137571 576286646 864881336 817153091 562700111 554175796 65572273 692879048 475266385 402530788 44114407 361881942 552322515 953851488 97805566 926736425 519947845 700475451 261094653 221813193 835696837 458490504 361472617 503327181 417357761 616039982 774913417 540001567 259143011 956385098 828624359 846171007 623431543 910800232 985635873 955568533 380119859 193271599 113251371 804190171 921675972 71456082 186589782 359824904 897673511 534331774 152465310 821969091 297377952 716161751 421135279 768782079 130996193 127807723 390808435 392763278 702902073 29116303 492996674 618460779 376644683 857234749 493193837 343272270 690752601 601464197 179950169 245435336 525478155 295426892 525215061 53111909 828250458 316677032 40300946 63188019 46865887 652457232 456183017 893994971 80559920 796637686 521217178 245861394 386331093 585994034 154424917 760359284 199336019 817827389 224680297 472730291 917764348 892160877 669741005 65722858 250015403 652289051 805074190 922797862 312657311 686639115 98502453 918911287 674279693 498425359 234923310 627410813 965306352 522816379 334489117 240275274 220045175 577641335 652179190 708302998 639094439 301778102 587890143 351705814 480175170 302471383 66000854 325165784 44287814 895095491 549234600 203128310 744983823 6081017 998779696 897316477 964232656 5896808 563548360 114614704 731106780 91294555 245862243 123803676 978435358 125234320 556836638 825325561 700386241 608442741 841978101 512654640 946394224 733057373 111778700 248326546 211821395 809219813 409920329 75703716 628913020 696780989 882626928 37939906 79423838 786880629 486819497 199428428 502865684 320225411 4214635 183192940 867010924 940399703 170934416 712359201 772160072 111486132 895473475 902298010 211864043 795156079 268163651 869873174 255572150 879782396 255111403 824734453 835214261 847543365 438712183 418708605 267965183 187315601 167713132 799163929 557913560 108090121 244813788 540826214 892999665 864305865 135032921 50844055 287334020 938657800 269103160 123487469 529768945 490435441 715091317 424729148 662205893 812138774 282635319 669114360 726758602 344163341 183195476 512859515 298805134 858271886 380917331 603333402 837824959 453614587 739323297 287214813 311028676 928574938 646938967 636822041 573367009 101440959 519299340 696555443 632528411 116681199 947880966 78611706 891561411 484717104 221082079 961879462 964993972 574567264 558733404 777244166 947413480 183901035 849955024 990585720 560447993 845274021 751958576 977234667 272446452 834077854 346192407 85489179 52681447 621522339 175467674 85219767 459971364 256216062 458480918 531843547 12253211 770685468 871757691 475236952 661699419 484893088 518211059 742145767 632463773 440136733 504699438 592104521 500706798 557321191 804246406 56968232 385021350 886155687 749198902 342095712 718156571 872758797 58959010 35960039 542678297 730282071 52496668 199367907 245544314 826933974 953594840 10944491 501880331 28348574 4041340 753560644 665339574 341091151 862049684 673586410 504453003 174125880 958568151 296201263 24158900 35582135 36101033 357131921 960782448 236505917 130476989 24630506 951152749 583700268 170934302 975996630 773595918 489661126 846071567 625351035 341697055 818216689 319978623 63890429 847973348 691682623 366184937 419711227 335896927 377197098 289153235 928677280 303910362 226033015 783673711 480571281 235549274 540213358 375229632 632897354 528448419 478567190 295865509 981085056 153240100 410560388 726263612 140974818 501892447 938160163 571190512 873999017 544619083 713172070 188462793 500109302 816162837 107882964 388286414 499531474 993569761 611234058 824854825 434291760 703939247 81289450 340717702 597304090 108048229 689844092 336584054 890148185 186814618 884849093 326823948 246702177 423197907 52348859 897327128 988638043 200209503 877572559 350320296 231658407 114251614 537965250 616634466 531785224 369667423 847282382 569164791 307279629 759216238 677258916 475459508 223635144 7163945 717400801 471103323 770638450 387237323 107643455 744731406 62674140 544501848 5318703 900388781 44238823 303650222 70163008 108445683 826198926 146292242 616579848 381484659 431611082 79319890 430985848 473268549 676552618 472453928 337071705 446796858 46337279 54425722 620275323 433922625 655445896 163238645 367108841 298675240 269437851 305859527 83167139 643357419 857770621 117754332 874012616 76146707 285776614 124147649 477480648 946665006 84853302 433058454 302440984 536495388 53025743 290939697 571630541 341909417 291681730 521770312 899129390 377577756 291079041 144509232 857950114 860469904 539436295 253586408 806825401 408014798 607869789 870153888 608607906 661507678 878804449 635768040 655787548 325120230 781651166 23020391 143601851 847031141 872298646 597997112 452708009 926403610 815581251 122633859 296545969 711216823 157462672 982289545 347853166 691825698 716930936 552597194 443940351 440064610 998778355 840153678 300558719 794548616 999863829 187995605 960546811 491454474 851603435 592709973 684556591 285740519 678028617 2998633 821410229 616118311 693196037 6794818 58384126 557276049 557685320 31922139 252427745 549160631 881878970 563424599 44263384 658931914 54299513 210442612 452806267 442116489 12632597 815358942 724313305 594012219 4481828 923955250 285759869 813788464 195195220 226744346 110163622 792020763 767294849 770464027 543179824 663612592 624732429 26075575 138832986 691218256 418158234 417178332 641847281 293295108 62586275 909746367 746920801 461282999 833806346 376007247 917675892 74566346 985194292 40365520 515358456 713985644 807493144 912439744 925609174 310655066 131897505 539962579 85518392 500211216 881821300 623649231 349044260 465849132 793432968 462798547 127162798 937781743 893468911 864243502 705288103 505118808 258149172 631102842 862675510 309571296 619454221 964218586 585203878 378247843 426804666 728131849 423559461 934432466 515817924 30690638 59781491 509843996 919059028 617688227 184027064 310988265 605846710 208256115 172493222 243875223 275438748 471435920 615618210 238974466 821258487 698195003 881728105 328915920 372053565 936092284 5982453 872186058 704565273 50345000 548700696 716119083 726749106 470773690 81533707 202164542 821385504 273487786 944041668 655678484 551212738 468866156 916473685 398901939 724771134 387221377 672280666 470297379 685369381 868555538 431764682 841721540 28546936 585291444 710542222 421770068 665973563 74320236 250968919 573510850 118850789 958185717 736846102 598645230 205653813 868278639 124920018 807258205 105299927 491678746 121801219 953167236 9769824 996732972 415911713 53149442 545647618 825626288 717671585 208600170 760378758 333500578 768047825 559063845 738223374 145670163 685224879 354666502 460417436 345411668 924070996 449880765 673839727 932440816 415785536 105204196 146050553 563908145 434936902 563937599 980447538 911250689 805037258 737317870 716796530 315864852 433480103 199712572 822622679 402254703 373488704 266440943 59744075 783068692 173735768 1047406 436402252 12346507 899543361 206727561 10277082 619964680 661262766 215804418 911877845 669748112 879422100 538429434 354375077 351398813 192356193 605007761 458279759 910046380 789142219 92473686 297103212 117465417 765332837 718256933 928097175 887935090 958759358 922816145 777685790 893563062 46573781 748510975 363769858 964237619 298755701 357392745 545467134 508400804 108830646 976901331 495976834 45882313 19109011 304149624 935555302 63151077 74875488 877109241 665766344 93664459 63085560 627653809 518865651 609370166 983778990 347599619 159894884 721197268 213469842 687706012 763181434 799533636 894443484 676461488 97158952 595276223 460392778 371753183 466824773 743383816 675637380 698064102 420115408 504689800 567206563 6084850 766845433 162349207 986096744 465179394 572869390 513356670 43604981 723613909 113535596 259012046 286631727 597027449 584513394 298907531 594069453 820497968 355815373 563325434 796354193 897961227 634780897 104731449 200430106 789698016 724470631 757118260 664924357 360668916 541631793 701748512 475752967 81014544 952377799 990623362 956221430 107010416 849098265 488686902 619734634 609216077 24442188 139621697 716764857 209640991 462751116 347151586 975573769 637267359 885251105 541269856 143015256 672949456 591334479 866200371 158312157 845469256 310825390 300018884 783353915 495317153 406282929 632370296 706188260 344040013 751638790 563451758 303895129 57308067 455316326 344794584 511926656 780690129 631875740 121218188 884899681 204123140 22500133 103088573 829366184 152825613 36906017 516810585 131010796 897294856 141150600 138443946 321657267 544725027 659114138 9139054 238270470 661352281 475122589 718627074 377467918 108367722 953450072 336662304 747689741 91334303 201117593 433295485 127941208 543436551 974716788 175065742 298143637 396177636 797356172 814460418 595309386 963575076 535844062 476047583 487773219 897749975 46422994 773431805 318796792 153658355 627108086 998887603 268111213 73183253 637017413 765575433 159151646 278027268 144679145 917330923 255501240 759453846 204442818 467539007 268619377 329937601 420167715 782954118 581549078 815245109 546276243 385523011 593153926 139132666 424802665 490798579 858695067 596974041 61960605 885142847 449502742 265011361 546091472 291442546 702169007 16136609 212264003 906236454 947515984 82773916 85579529 207224569 446732531 823965631 181347692 222577095 367432226 120529180 158665143 214399980 245381776 766487976 951805181 52159964 411309019 976375806 530594003 949215939 698341663 73667570 959242919 902239216 401155891 648676709 379171668 644933546 529687631 744919090 395380998 540263246 22953548 35879476 578953292 312981748 34032672 863786091 643645118 656780366 880762933 172249334 356668442 800398985 717953276 672071542 979832534 99364301 651798219 731711409 5915028 16329664 733099355 11706926 567589504 611612567 311015888 939409618 750588295 800336831 628033597 713486760 652076568 97392196 812237940 423459582 34595154 153519847 950058365 909948229 697575892 607933065 77069634 584315849 138573094 577827247 941155897 484252575 333291943 133502193 24747910 222805379 834823925 946676134 884845567 254867788 852479029 198606730 968774933 762371694 858537185 946695003 82146460 704840724 632959276 209851634 713708511 888965297 592667027 879422929 130633964 414481782 46878562 701877041 39136797 244752384 932549004 885762376 847571719 195502504 688321742 363969587 439623968 235142868 593593974 40951832 956693972 53928284 706616905 341724622 611397418 895721258 935153164 586794178 299302544 413294447 102389004 585261388 424423541 822848200 542180421 199100855 506138272 395457200 956037621 299020835 235835007 103972971 175749242 399720416 849952454 860446605 575818684 827326836 108438578 127454434 589782493 709530130 3226833 676726953 70852882 910768382 248914699 381090932 244940819 22154899 552923699 389502701 550799651 941801691 834655167 964409162 773669984 893570759 688791442 994648625 504416304 783264290 675077505 716147757 269691110 827471507 671910291 644828772 835737071 864554765 988856079 642730056 338053625 254424449 849420660 969507001 148368360 780147459 734877548 661502204 284048978 41063630 825425994 334777100 745184545 376590098 849362463 957195151 904962958 525894155 99955270 802802845 730453807 236635474 330762706 724201805 214260184 337727899 8983059 22311830 702768214 35370377 604018826 706870843 307335169 770439502 279371212 723541379 185724452 834759558 591288501 814250412 66033751 295169789 314963261 381411535 565471262 586242159 279563584 132496994 28681341 110227615 396850978 483780629 678321711 63070880 121485125 740319353 448456603 717223991 86031101 778952680 690966033 253098862 303777701 738381910 696741340 657225688 691455827 420567260 904920515 684785507 675664758 137937627 493383378 983534750 198543731 94846882 526369319 37019055 479159076 478840696 92386234 318072720 982426194 810669177 895294874 457027947 760744893 106198990 458712234 452153797 309250856 721927548 542504939 175644005 146177220 47841523 210234974 660419671 31251568 959008586 574882525 852218423 207860733 501776426 856268550 490666596 899406478 336799253 278226411 69958018 902549416 820356751 147958185 377160887 746627166 775627885 442496813 30263715 345024699 615527544 374820221 491580155 888707754 898094489 97248758 487974348 334846121 713368748 112027439 805007922 185859006 388431502 231889719 455117015 484017621 461622594 75641409 806907953 603485969 978516104 165620148 588223367 182192826 779659385 238828266 580302336 170271527 339904679 188592597 527761487 356406951 436652057 528496159 215696505 322365268 933429479 286914804 214061979 690613318 535375531 661567399 765472677 74421262 440395539 921008805 725967374 367190588 5237087 812041053 51647421 961447775 991339762 647785005 909885652 636769455 23299624 535132754 509961045 677889698 258175647 321731219 843020440 862948212 788384208 320557048 340025757 254112503 911990573 834207217 503043946 166368284 290393593 970099509 781339324 630673356 383143972 587333959 515411197 728296452 53024950 58949807 764123102 85035349 113339206 898151950 578907854 366743430 105554119 918300193 367714247 221035094 181041118 50571472 882253158 562044706 451453824 75000494 379325981 403398087 506491576 575551950 108437911 180361365 100029577 734426473 183580619 810780352 790285502 669335379 501072845 7846843 870659854 879866086 252146596 826311977 922624913 932783127 676911011 495668635 733049994 623883512 285002779 55510108 544795614 100871665 261938660 752183629 648717566 101053946 338507626 10700716 214335695 780055587 883587388 314842741 127549456 405902187 695384866 126893813 65136842 861453043 424821106 302697631 333606831 465527551 844821371 225525073 855397661 454130161 331309495 266101223 653655166 497945299 800285468 371253926 334137603 535008739 814319290 62142196 720304809 896745744 494350402 87880557 282903517 101074818 367244658 980299335 852535272 110784472 633020336 519004705 688687821 59602499 359759376 245041656 823628203 437243044 687421144 186012524 49435885 32240931 625428615 325267609 835191939 515473692 744584429 490415622 887190231 679857992 568614500 508211531 231147451 81172075 389716008 635562519 976204876 387796544 514521411 783340192 468658638 76797845 76775200 69577661 843379933 796922820 404169615 439665438 898158198 300162949 716616510 203744281 28411302 231635708 911596881 40629696 599118854 416807586 849897991 909801109 443402780 91609818 788864581 805956309 665331987 134572133 681716256 620693961 343609214 899904948 311345386 485556473 45381567 591225627 547962080 35009947 702157491 453025635 715187474 565628819 5510641 780339723 110340852 507486759 904823603 678221415 593634150 111658054 469563477 766259384 379178051 376486190 173636523 449819720 847675651 223086606 329811115 614344884 506100478 310465148 713386364 146409834 955541883 450223055 941417223 676138216 979046885 689383521 791444412 802091028 331384231 857169226 81077804 147665833 15591856 843674486 166848192 990095414 586070695 950209940 574951016 766994481 793543617 755543194 42089325 165248418 171273656 389971404 267173102 771183616 303629317 990872783 754619741 925683931 424619149 576377186 206049662 916089708 25829404 526301767 91639005 850217921 570660173 655666018 428995185 747622371 651474035 610147377 549182518 305506038 185934231 778805648 648482512 852521123 270577277 85727323 989951848 564636616 557399342 439692633 917540967 110194558 637373011 520025544 661555596 859172447 416867829 417508342 110467885 201770715 183141185 305166907 796751590 548005783 178105353 146575372 243516568 1427898 58927713 625096422 340753417 805009775 472136894 569587505 198715065 933715914 808208132 15169282 589652377 608063429 631209682 189249843 96494570 710274896 717621216 207800513 752794381 216237228 981293405 180597861 747694572 29726696 906463438 936832882 285767339 734236340 285512083 913236657 164717433 486313944 751349818 628003407 827742109 635239119 998154971 671494491 721857059 807892240 819076551 653974410 326489620 862082643 115025356 233315958 148264505 102045008 272970497 467780850 675829696 564081796 89095825 30744458 209967658 419629521 870442984 620827836 613079505 464240421 508646205 714723712 238681604 363037213 873112303 1468785 622175769 753344895 718634999 212483611 334419452 970486260 816945791 236178188 912720457 497587006 708981998 64034585 237120902 45152518 2157145 354701835 415063738 745082026 998091242 942992192 465112206 76561378 47506974 12874258 969068859 482061226 373101600 699744414 522806268 606523657 634102065 22168658 391029246 762606005 303697846 509664782 938356715 795957608 246768972 138605827 573880320 940100561 903189756 205198889 639667342 359887963 359792988 708056054 28648588 943293449 361873053 924749780 492845232 747935647 802020053 737471015 428815927 115947150 792099777 662725097 910568772 91654016 652995344 946955590 166593661 106688644 114643251 40667438 119101908 16742279 772044970 141922283 10226360 678370754 138733863 749316816 130239566 843836101 537556667 993083631 121821845 319182281 150771268 723571468 249143853 57661314 605030790 14703221 648595210 580700999 625512673 867883791 344035528 553036134 956560260 291811699 268661991 735822492 262827909 407164567 516711451 399517576 485907581 910448478 965347839 594438443 754016156 581646068 32509967 617942439 687979114 593495522 910736789 557752400 356896247 838568840 746971709 209191478 749944297 739560737 685851492 96664 212932803 57710786 895933668 562128452 511859211 752379803 893575424 642931512 109892466 90061079 58642839 165134497 340092237 776416419 890194481 943359175 572096147 99221422 644105627 832089521 662031916 415490747 202434333 393526875 577814434 898698739 629296522 83380304 144938625 167268924 651508189 988591293 290467691 487821561 153788616 635262113 360041525 442451269 469328768 59122625 848189981 789052252 684838876 341390947 770360331 455376422 401932801 44769693 703871304 220823993 776061075 606929232 387861707 951474168 829700696 733264111 11914533 268157116 276319477 423697606 644535125 330761650 732560230 869087676 347988460 601368559 698509697 588777618 248857330 564713284 883451797 445850347 752765871 416238425 593309076 159272018 398256241 863156776 350707136 569803351 35668756 29087953 688498459 286952019 677094513 391240064 523150010 852784086 847599865 215172678 51627336 415276754 842906600 765427556 28065618 412303388 389752108 171191856 750829946 764066955 751582846 629915352 233732901 322394215 167286597 129099343 75475156 38346199 584597675 27663959 929883799 239265936 534245550 764057619 486820570 555649154 362206315 599896389 738171812 820421169 500535137 71082825 558878505 626185754 892403264 738634919 60217034 177132519 98401335 2834884 344192499 229478694 1139132 582944930 355771619 539758730 374021598 584848474 765968595 356444015 697915853 989282894 752869995 993706331 468708571 298674780 169035106 861113063 32711705 131801763 179602244 386693717 791111430 724239249 283719390 734560051 86405691 41256697 782361222 953303043 537572817 134030174 237848440 810275319 804741679 378964958 705632757 500884327 643084632 249748350 997466347 446617670 493907006 82869391 51185063 28066761 619263282 292062683 953049753 597884939 378355955 345611562 94619115 759848019 758834715 268422053 930039931 935705690 225549800 508827055 514060904 65331711 30587648 429590942 94756514 850491913 649668368 935225547 750134491 998356138 819917247 470957310 912695891 49700941 43265690 703904230 543560165 596011129 566969207 745204786 128353975 170254895 300639528 791303992 314254536 841477788 254220016 686989090 412335941 167204875 141577448 516175676 869745639 301067389 58669295 724738274 369776016 276699773 312495460 355404287 58342623 294122170 274472091 827851583 633391102 64188375 809757159 952585509 871967856 760697136 423368764 620000632 824783712 266250967 176899069 776355704 292493254 366394414 426528139 648658360 863657419 705931044 13659613 457578468 275052477 216030450 597406440 156347158 280392313 140987965 654287402 660994080 553000321 672299360 73482059 427337524 527643327 294023315 312521337 533579806 751209586 312968224 528555443 875875767 519910669 553168311 891052703 369743369 445717860 903242426 225972274 197109979 80999604 881206391 565968640 226327341 238728055 326003001 417514247 462067008 993859605 966740964 417621551 139725918 821618674 982799946 588302934 583982851 363652760 320199769 513811765 9170740 645629335 75153536 232560957 425256083 550939046 730673238 230267158 426881968 58588048 564737787 703273346 18523902 528017223 562774083 354480765 584195583 295328797 949825163 400063294 123609364 140162736 41729864 692769595 89522173 111129910 585537303 189628211 856342046 751824601 857295315 473360398 285456475 219247297 420351388 455544974 373658884 175077502 760229231 481262167 359041897 221895952 363053746 608066274 340116514 997067062 321381058 922316995 137570580 285400636 201679929 593840938 142206315 223157101 327571642 646273571 734345856 476053931 850339285 857564793 909052106 992377406 556164655 939848571 759032129 335700443 963914136 327402150 17774372 778975992 436160459 123605224 590871198 650866586 142240974 161177250 974123797 836869984 847293866 311976267 334461703 88746757 429453292 796198941 392895605 535662527 608632887 9089548 510940327 865924355 178488961 31532707 296695766 608465634 937413588 16404530 491136858 945725896 400832967 628027744 72210881 942558429 34881939 370792768 370245399 889566289 290469670 147151623 312433569 482491410 217872774 485880072 731543676 150411521 322031203 767356344 7268693 292652315 545454592 285473002 294990882 299360568 110120568 30862020 458553405 413253136 432310903 917829625 349183596 146939044 884485098 746893518 191177545 714862339 817836634 1598527 735288657 832259858 174047373 118315100 361253464 598615285 554209861 401772189 735633443 604227937 694589972 933290783 527610412 457358123 380577866 414105701 769811323 960542003 311735171 107026532 773727074 858392147 756162867 124419474 507549848 596548554 198015013 636363818 262080652 308622882 559598127 599689422 887717325 718702253 686023305 160666707 54177656 976496303 225305392 14067792 117691835 476000804 524844065 784001831 661200577 961420330 766577487 924045053 106093069 528409945 667709873 651492421 878938307 348391619 279083172 142290175 945328161 961778390 618433863 952377254 104139016 510013825 258982149 854608512 902013058 22980241 815238875 624664468 100429574 107493736 9284056 124506901 68962336 33400432 82810164 656171466 964906690 724138451 634866464 777043634 939287974 389452403 468584041 349386795 436269484 462710176 697842154 591188659 737664751 650971422 918004566 283900483 160898312 380447708 465499575 627476926 234695055 704364203 959597386 518973341 623794162 498325644 938341029 666952856 83401931 721036253 802322406 961829219 449437815 522704368 155737680 331381613 518457193 319495767 733975801 187763607 58225479 628791607 884936081 547087888 996763491 9802000 552326151 462363425 921138894 885611489 143339705 675855106 534748160 92735356 692290022 347421738 484787706 20282344 200414861 814878908 874824882 975716766 873454846 667495242 546618741 287774816 996363519 994485065 907199357 673557469 878904015 640563669 576876977 173078735 959168898 227551508 248218775 263767147 203777002 366010704 242617221 919376545 654002110 509957410 107652664 729704981 343613655 17697481 648644994 444075981 58311154 143863767 765738176 124721805 851535867 528887735 678949445 237826199 770923280 787767787 754263069 321147307 807419027 633002018 732835132 539579944 691456289 56444612 214414504 285340823 941811847 114751214 990043701 231212461 922041211 812658025 935576710 116427044 141501558 110166954 127916526 186543025 269150765 707413610 754803974 669731964 208831665 456093214 186209030 257380831 82718469 446488169 273409139 781051890 727970309 129130169 680625481 861432711 615164371 547104293 76061096 587095062 828833592 61984893 453463614 382253256 947553604 647351639 908709061 241593753 391533682 900429356 92257185 271389120 997619064 431417879 605067982 629889183 843179478 506925134 328768018 589869531 766372296 31890049 938678247 664064263 43736144 345999005 511143131 644268879 362854167 925899401 708090195 463283204 904365919 464884281 296122097 391801011 148712466 671612310 467736732 615661807 922563705 520210830 42040981 210563981 245637134 760368684 755840785 165409746 240948367 275475142 197098213 689136515 440203165 460061597 879112327 515007037 966323234 941137178 819912670 633401565 358915358 411466617 430251265 814077238 850676522 438378325 764590546 998066907 957984167 932368241 646405651 790569848 306786982 248912265 716015847 255155372 424633288 486112338 928221587 563271005 787423305 488060294 8606500 827647812 350479463 499661749 187674240 208957816 707002664 304294923 968283584 263985733 406093358 916029885 476251097 697663034 697063180 992735655 166675498 343028266 27320823 4654238 673564068 224078765 795603011 487941415 436876250 846449176 362331200 754248099 764227893 875930815 48835691 454208857 783733481 239576646 362059507 337226120 510253053 994195980 320847207 57408723 45529921 334373610 119695712 147673458 909980196 655884092 961070745 846822905 284104753 725245503 197933216 374420357 349419579 378724315 137317742 221999605 892668506 330147601 888205166 187672764 87993096 920566887 634020133 167816117 551585220 677125508 604547294 335092932 31453488 936064387 449242318 848649513 20177685 40183594 706858199 588725290 987508158 995923585 101995448 259949280 807737158 653831671 722274587 338225021 878582965 683256909 828421985 770653684 922348729 85625193 224901423 748263429 725291589 818280003 64771469 189930806 758318522 847429753 915602621 795859473 371708446 401260790 153507726 478306958 363289257 57797569 147634734 557255903 617041594 977896302 22099737 125195303 356773888 872122492 150018927 711070997 489864366 884557272 718088705 604229992 650523325 43853144 46197963 445137405 748780633 725747111 43393521 557302890 365434999 808797231 546263073 75253509 856325637 511144013 392868145 884869116 120492884 892587540 415237644 439284275 181114226 203693834 446826644 580729908 748787603 776192997 3411180 438238020 613084434 588100702 429949643 978820973 29549191 633191264 913062020 118285838 264984280 214277571 59640541 605909332 126983671 584076228 337878154 768517916 393539075 216545797 318190265 85345421 653857288 47688332 136415351 162654954 492171756 469382465 2877465 664741593 34674015 687124126 437148551 165702343 771640861 982400789 783289208 376615855 322181685 687829326 247817197 635130048 157544944 127168151 684605978 153170735 287225334 22974561 306936595 183400452 91884682 751771338 667980514 958821123 652416551 637025664 828321620 504381346 204965278 747522641 40942395 69609006 291452653 21309496 787558279 324047645 794443569 650523871 245994622 17087975 772467741 979725278 790330580 194716661 537905194 709215274 658569169 762966868 968362310 835529379 667801200 528983521 863564842 896858424 711126896 490720667 237095029 554438581 131943097 474536045 415306418 730324662 720164215 67247256 319496956 651665571 518556713 842578928 699712608 247958729 585815297 924408212 649358588 114949301 645988899 357625074 467519954 738984569 23586361 750177377 49162077 705776663 203068272 988368569 709479476 410200470 438362033 532098459 113853733 699572171 577534436 376478991 747992910 298271171 998373218 118294048 329266916 516012130 986156882 632823464 475051045 669379676 253874925 515735974 623022323 366940347 928938431 854542711 751256287 921660749 220442697 968383579 795495181 187615326 267154806 268346955 442096081 12897959 209415326 634285222 651494565 71434828 227323041 783191950 834264619 209254667 555690982 731390914 838621606 9974287 780115682 990833029 385400355 834913889 654723296 525469966 516483171 151712479 611338412 533417036 261212745 444725508 783248184 591581121 41691982 148416624 671542652 778142879 844033473 19510413 523325512 935836789 3479494 61164292 540720899 227225112 20183142 599247575 512674709 944322038 550833256 536724886 553462070 341733654 975003690 261884362 658405121 229138906 179417255 50961637 68490662 42139638 681917959 568528155 993522333 733743268 859006899 812890071 675189148 117596895 482778891 2706495 665520039 624663827 554015700 837535004 165497744 958875697 761399238 697365734 289626890 836035430 667263838 389563866 664971015 228210088 447993671 742004017 904105851 923120759 162586223 590092596 283231965 440660726 132896764 299268441 633019467 81668957 249616251 287027852 466103387 320941775 906072383 487329760 774765032 119932302 136878143 851758053 146454454 607896027 151717943 743671060 518981389 459825358 142033526 457390758 911481349 1991698 924952473 294178630 963404181 559189521 3206976 792592925 512116171 909316268 347623040 313015991 19571848 304121797 399288754 407949211 165199829 380220043 856639276 948927590 561206256 392965685 206857174 883189626 134198806 238518126 22934496 295459367 302861639 669065413 71702778 477988008 957073317 920687326 511762387 320582212 303990354 580143604 367469043 896322622 991924 596189507 764413236 327753933 426004636 817553373 645046947 148348534 756660506 184075444 229252829 781564861 248071381 484764104 160446949 832459202 168693013 213742065 29345232 602354519 271256001 557570886 327579869 503683367 756013624 663576168 757772138 538331410 765810323 924589532 686271292 49988946 279169108 562798366 140951701 953314555 572346299 889287248 503283106 66483456 76771445 594907417 733659881 992181391 719572163 759297015 675192236 416433877 840938165 835028407 831125524 899000966 455511804 19522307 129175953 329963027 497453337 125250559 3652742 37177286 986651468 392302951 737321042 28592316 989456203 508988037 103776532 457386869 725977313 930749198 944062710 829684225 141198327 507921183 231545398 914912830 934507882 442981107 754445716 53164092 230523015 759453218 972717292 736360981 42791431 23100069 513485959 384395527 951861860 973792481 541999344 898099414 255427314 482125199 75024384 308953174 812074632 143585537 5082637 766782090 410855723 286678238 877691713 86408645 754030913 249890520 579854545 392947934 59003388 537293548 800013374 665800476 471576545 796340434 709650060 725667214 56479087 31110846 524629630 126553254 324588743 83229215 291707496 935520465 385305774 462721335 262195184 372095098 367335049 121379826 749214435 904714663 984373443 523246718 81709319 766291590 897549814 607320923 649848398 563280426 177556310 115848119 538646529 47887236 167308134 325444611 33908271 670271906 377117736 709942016 359054223 714077416 214699333 939047811 62673635 846571198 13600522 858548598 591831839 414130580 819417132 528344387 526683070 87849912 536505874 438742817 675748687 940894555 228311399 313222023 93040610 197704219 622280774 128596453 955834404 560150887 55677283 819244965 532015858 653190823 191929844 69146164 361730370 171523168 675279751 703346081 963763354 557245025 250297361 711677135 26066346 386314891 897305250 323740106 394687112 932102097 355201925 48542041 198695602 434576137 633820311 8018050 137668646 378868739 938453872 608656043 403981377 747242399 801968713 63961020 658675302 722507871 809381805 986586275 171779409 218172577 89919751 598318319 117754688 915260609 385583787 398840014 125896906 693620352 782280862 862069941 47556361 854593107 71558052 5901981 451213411 763055929 711289358 326424293 714467030 697468796 163227109 785159045 310777085 73160276 987597637 773919722 194970916 828189063 633949652 123899034 643243649 323102737 500073551 267231071 167832505 48029585 832148863 66152922 553462739 764251210 779927147 535030449 72154709 277161707 527998044 363390526 136513723 614120623 855990729 513972078 890879649 371394917 847822242 644490995 236081302 409267561 1407948 968196532 708417322 313579864 367613317 334203748 610770339 714874056 358736256 508914371 537044159 903649141 841213729 440636061 554232819 801963130 644154278 108206350 25802699 521490929 91236439 592133531 781383697 973762222 795565471 828693456 194123982 499327329 363447886 66859561 366610878 540196429 649364257 881960826 257316195 522898870 774009950 192098535 986792817 640561353 107439908 194775227 296140908 817681906 461406716 510302729 22059077 728723873 592610715 327510137 963940420 893098110 914847566 280538039 418893844 258406069 146563155 906920132 530434888 797499819 768093261 42526941 818309599 953992483 372831276 448054718 658425974 908568932 450147226 835746595 543115742 87961601 817550624 965559982 875519319 114191233 994482014 590107998 688168154 556643144 185677135 396290643 154672782 862616269 473137076 867093713 740751569 787071934 543623047 417949731 484587251 22142649 62804855 906053249 894585417 415841340 449427794 89910617 682588105 264752475 887940788 811945338 493179610 852956062 967084418 848528495 296505632 952016713 784544572 802765439 238702360 786640643 946924755 66905792 517773397 311575190 396609457 482907941 671515181 883275802 604469897 669402512 987658054 610979441 913160543 107388745 479246911 936131623 313424157 966800438 725973074 332909618 644093572 625724517 539591766 688903216 40247716 679065068 90126473 105695264 140959093 956246120 287527233 946710580 64947731 370220758 104127532 728694704 377996259 9930969 416585233 935446494 920568888 655564245 708029765 771972697 898678768 557124429 607510779 232397263 345263435 102962936 458531733 254349588 996335893 284383799 568060228 742908705 700675424 758480641 432879090 875640325 703696341 187374031 770084629 753940617 687658216 593118089 233420093 259289474 166512844 230992453 263222499 874421986 9613592 149471247 138900343 562649210 87512794 780029453 637928776 651099820 466553508 234466605 662473528 474186652 214413860 793937182 656311866 143848832 117610727 807152747 442628374 999184112 151641360 368910721 807738221 300719926 915859533 117285484 677662240 712562298 687815330 131153280 973741876 289745488 261692795 879097040 379605665 646083306 423765564 461711325 3768167 345994761 304101727 847361331 787606634 306768623 717757909 636526029 244940732 248294211 192359340 719185282 767635643 498207962 887638630 110391204 926133692 14192492 496095899 540572379 986359047 695145145 770875435 412991426 340066663 406459934 917738557 196984786 893642490 989308248 567400657 195536757 457668175 38475811 134127686 847132894 942209845 463308254 423733681 20253790 314433102 898548371 541402397 556111659 607971241 164637347 747194375 764895455 322572877 33395797 983626036 251761806 201681824 106610074 474931280 291160431 951603968 932170287 518647459 101032592 732863599 45299489 392110275 50035688 16241873 26311350 576236842 375995366 805000994 386456300 917596020 794283892 572475415 751167540 708472789 687943616 507493710 826615556 820042277 716020143 607636540 165953388 833433077 195892754 939527218 320877403 893220295 798650951 722025533 136942565 723888437 681502016 739810396 20435444 968053276 860003199 661174372 458137671 521114801 420829868 952922562 950972788 283537241 298290326 951118176 339539759 387727600 404244181 186257581 115283286 75191741 692144251 714438208 266411924 995036366 635994820 536846072 291835141 551319703 179268359 658229850 830112548 169435666 182357820 41048886 341345455 56480444 209974099 219956203 295366433 753097551 692791553 319255671 732083729 689620237 846974270 617562746 186443988 597539946 320641719 893360347 310751427 40577143 339259393 82902285 574890256 682156657 316053001 507785299 118022029 632925609 584485306 662448852 266370369 892929981 678438973 467918344 197000739 429346686 9965278 884045432 431172881 502074871 72727731 189026196 461058037 682264879 204291142 70358810 378735927 290322714 50472847 273644640 201250172 731024729 135964177 741456284 562586292 163580275 579931770 226700628 456950216 236784739 187572372 906179375 981282381 751389775 93690003 124201750 975589566 158335597 799316939 265277057 421936128 942190595 925588388 683419250 956908806 84601946 678583874 954521750 365836151 728752914 344513661 486426138 660123413 834736141 79811507 545232773 821654791 99471884 54153516 182300029 670539475 356263635 903969707 316126190 934277724 538212329 331418706 121305314 93351275 255902330 174751289 3827853 224320512 140406490 413400236 763544171 472396784 228856757 232178079 366649424 466395088 854916218 765422041 328484791 451470102 981265727 693391038 782770924 365467710 442908531 687291538 820132752 279899242 587183734 717704819 957603003 577811889 438538270 983515226 804358271 677865410 782864564 47666929 722876472 584430495 248014323 734488167 487153409 489555595 665907178 703282073 978933807 612916942 96555419 165265873 2237862 620526539 226364598 867187494 772671036 806863194 376892910 825409270 519238894 160643715 743763434 767611315 372850756 604381486 437947644 507899979 420450286 994041177 56592772 18853593 797659037 965896959 67669911 840732126 389703697 507999527 215802946 262305681 272709913 516154078 493012085 478273586 781430133 337951607 939511188 315637445 986469442 892437468 173573806 979445044 219147366 381881994 61907194 477229413 546965353 254027888 518163457 441709475 358612659 120886219 549075884 544883373 239513320 448539684 718444549 904263818 717467582 30469496 742287881 969083656 771512677 381946340 78388866 493839815 106446831 233995700 33944598 261895955 564906296 120870062 903597842 701897484 486287440 949837532 712632940 383020056 259448335 527084388 215081184 643758871 203296340 499879139 670162709 18064158 765362785 63853573 485477656 978477126 282107566 350933640 715217844 105713154 186919424 212590131 700763193 704742211 829980773 308837012 405009829 467112384 681583955 105111684 748166691 536109681 5103454 302860395 179142260 455629705 21012764 500263550 751443964 10931533 313853574 473602321 79983456 631052423 79206544 73570892 145928891 990908489 340857459 200216282 289139852 389150483 659667191 309972839 23199740 533082666 685704102 854616456 378662919 95440304 37382106 685573644 28272389 691601939 876118117 684201921 270204742 821523042 552340182 103111203 780628990 484405574 202741326 577662647 305635819 338920844 640807500 228304545 417419352 609520952 341521744 660934299 431133438 705149341 861699630 880459536 891463599 636232808 95824843 569408723 737757453 876366263 291915974 274055948 665286675 261376453 993216349 778828936 878790994 879429124 341023953 165547541 444838843 904020664 72273723 578190349 350294708 2154252 118569397 663248225 303762682 823073681 374254995 534206087 367555359 183592514 651052404 732330229 511503195 162300970 961496730 914390781 708090738 998641475 42403850 790914913 694931647 704758072 882785092 848382307 957306210 37061356 186590710 614433650 86492442 870382730 156063574 684828825 781095649 300416686 334882028 37685310 600183742 784078045 443927470 433332199 894116826 242200652 205796097 217561243 542041638 127959624 999966449 901241950 601659379 195645049 169007665 311054300 701769289 430659934 125646172 862231757 67254297 226574988 375435189 120982755 893298752 520868428 881149874 890333135 846091625 273460688 401879280 424233901 316802467 708288458 815661331 423375518 30503652 197512546 364588299 114080310 97512921 859597309 252159870 451205342 829287156 364012945 450017348 734779011 592808891 258372083 301277182 450734843 186429377 855301879 730848047 169358043 9961681 424856626 32404196 300028857 986991160 102910275 436113542 349824081 882522953 105291459 561972188 616713177 852162133 687829410 811441160 866121978 312988315 497911357 312401510 786749013 818602888 110295182 934272974 94883383 944872664 998466502 43101371 48923719 318545928 390777291 17513414 931132068 479278616 883113249 999951158 66299277 739275977 610466404 624099755 603837072 882474410 388231739 817850882 5590878 358530535 688039525 272423200 133819832 953661731 383914281 55006370 289907732 793736648 809921934 286719644 406369886 159900540 23481231 416766534 140626387 64417576 850265308 395869962 956729584 337933040 884469921 343106109 662272035 307851199 172103508 176545201 135246580 760898942 101643643 297509657 200146420 408440429 43070803 501572792 567061537 297899401 259385297 779397059 179645046 861682861 554935799 418818588 462761292 351385557 988367810 954071900 619012037 924565956 854561201 783051896 194195633 390089545 439396793 217812878 72159821 621193061 12924179 222782554 279499572 699580196 68211105 702402722 443544537 258418423 265066831 440764830 707259058 595225040 844945550 485353976 902706803 660953714 272854672 428295685 475940286 81633415 267618716 312338123 924973303 976324920 796021826 366404124 533158575 461576933 323658376 842534962 88441081 220688516 487405506 329700257 460123637 69248514 940723536 738126442 576770107 933910902 943918982 463017686 170584481 867920847 333997357 477051610 454862927 645981849 104315224 184427047 988616934 476062676 609929561 560086306 118041795 936443882 292216759 125760150 598104290 959085866 716270431 679805367 556682038 311040655 684055448 100652538 179818934 394675532 341948420 894983594 738502954 500514797 34922311 294120527 73554375 442645980 790931416 193644731 605289975 271703296 406893586 310837218 533166774 819118002 342999183 843418135 999947038 457016577 364057563 417422266 98814889 149494544 507785101 901691615 855990759 778277078 802746510 914493860 321647380 340604941 429090001 951372508 821874518 389192093 665757004 806919884 782000850 479906405 280022699 452953361 182574661 793524037 386075546 206715446 368947730 560565265 311898519 90123707 334146057 913378178 463976332 173434534 309116066 466741181 757359587 421926245 723086258 432599913 870087158 90586047 59988636 885996813 522207736 56035597 740967586 869621827 769847926 670390094 152067728 80221002 373790885 561046942 418492925 128833508 247489298 401649010 167129217 307560044 286407221 5917426 344323618 394928174 811023377 309598035 677085163 999727297 708757583 422936687 679666580 733121404 324701969 925770691 876170979 138790981 744641307 340013787 589775029 557658957 48918065 544268281 445695193 508416056 624809115 599899446 108484569 288645227 355952514 184681906 209584086 616742190 977880277 514604715 787902102 22395993 593840705 21499877 793913952 57297959 321337356 938421133 595261906 275627771 585301552 76216611 579294991 55522254 633654435 209350639 560014434 815963271 840546636 502451607 96547174 606697453 46507875 673878822 108729534 462024180 591459927 98219436 707391224 469874420 335249545 391772468 353713765 577071615 750442172 135076016 614299170 87129965 557931350 744985987 402934765 801422796 110248622 674180074 101248932 542531009 10639578 720631580 171691306 362763422 3243951 271064618 27722961 120101253 463662676 439423945 46908153 321962884 919848535 168654525 218424637 15149046 782376357 27174067 728032161 248496841 539970916 897842769 777433600 73758575 307561885 724421212 56506183 679483011 460328180 40619595 612116439 856417649 386575167 775049986 202409355 77697652 746559846 636881189 232719517 580399587 483572317 414383801 36397504 719670585 425938136 68793145 692234451 488538815 708236758 705146320 613055627 844820306 860582881 189709538 903389716 827420847 108856744 250324626 326041581 482311346 45527129 178031854 630893093 942756057 917581472 82199900 192801442 423370930 407598001 385948931 266527333 243392111 919101784 641663150 774161883 931598609 195013468 865135912 300576743 993240811 87500910 366360657 288747665 295355644 135422810 123140099 430940957 46417367 773792424 559926731 155618970 629493658 943704190 484258989 652170115 289987289 878815297 85120916 501431351 192718070 991752056 678798075 417630673 908199133 668755281 919502343 750657555 980501836 113029914 629437726 6295486 195521962 432968834 817067538 335353992 921726273 18581222 318346616 833052474 735725188 564933033 403163912 628491041 375674073 846002326 872774862 677302388 274621865 646343845 630017569 578763057 82223785 261199716 338939781 140356195 552458041 499201011 858123098 792595215 643103093 513298059 466348299 649480036 77720634 95844394 87482040 45709407 755038255 967544126 895105645 95501017 206609579 259062576 628581974 933338634 578149713 223646763 493901976 657663109 274174735 288662235 992420839 447619859 227571754 518931654 350096489 221179694 456916426 423370611 90317848 644884329 425004780 745455125 621715244 454658507 914353126 201720306 91955328 484194089 893977464 556982713 745293103 77150173 588153924 413730226 644469187 397364361 518800012 86948821 938771289 588251051 578063146 985509256 836408585 283545304 794558395 195815304 671636290 528943180 114947408 602588963 606289316 116344265 287937777 195262351 772259795 958737719 599676871 32306038 510737782 909550660 433347478 230609069 591736533 745976201 89760653 102044447 245069353 45419965 318085003 450884147 382642078 693593722 540227430 252551563 676119282 782219333 275226343 284625466 681221462 267238057 737551908 850923769 791543267 46897668 585535831 853789592 394548506 611691684 226032713 705903870 198105603 749643229 117175212 701380755 879630048 445149435 364828013 536725869 265188629 2127497 468425834 640559414 640009085 717639857 592350052 92868441 640421244 612903899 946583388 617500572 589912802 25165035 19608776 684241733 942881465 843291299 806679004 591747985 609527047 840911991 314211508 387464847 43807979 859606394 869155881 720367021 579303138 413545583 575234417 756959196 126767152 291596 994396436 43681678 1540445 122384009 955732756 435293401 475399042 302389159 242736207 976533737 640852089 240752939 124631940 280556591 246153368 689311170 43505565 518213274 355098322 458242564 318758061 471821575 93555990 379810370 836726992 990899012 28359214 544473878 740934113 615571750 510361156 411595083 29430808 852917411 784506958 853191645 15869085 190239628 831181516 96892609 461931924 484725113 828313346 222980309 338287531 199700811 474319984 854437322 438582498 561438536 52439367 694847298 97003995 216877284 813171752 646181455 95625018 470566710 262142687 656288927 151118463 689553919 87152159 732194253 797242440 819538589 165456769 406756665 294814702 537147258 189356347 123884806 575211 131682465 737859251 162993700 882304830 582014438 109876501 847278230 373522501 505088240 77040530 902499735 849969743 305653086 506567247 301925377 714933264 659285516 353277146 465287104 462863261 588994315 188990623 318251908 186754258 250073429 712323214 332015242 412695590 885424973 100021730 101870760 580929878 366230361 198995302 458244700 876994641 116525731 924663129 696132066 705961301 689825896 19975888 917431064 210787325 803052526 376337532 849295388 63399363 271368738 655876150 96825392 324252283 194271562 654706519 195497615 144031378 55980252 330598128 300258664 976984073 638878565 471706362 374025389 347157924 812887214 977875692 634276626 470268986 474679410 896854063 692891184 724979385 6838339 147245209 955979173 502449118 75234781 950016767 425545939 682102558 425606716 816682310 812099948 161324377 240761047 369561093 323518156 526294621 865843187 784080821 937890338 767652092 797369653 748966096 695452169 364212526 294580459 46236905 504519699 99528490 639332850 62732947 204822775 419325065 600037667 201412719 774451614 721566951 125888565 672016754 352849016 454708577 559680115 873288844 74460692 383848731 562870523 201560237 139769599 470097250 245298506 366495714 900199243 857540827 237347544 753944326 866898786 256394592 583101897 18929433 131965382 963825736 263616489 702814747 788235839 42680700 338061232 935973665 333664368 777547158 729435665 836026664 722496700 623949856 635220186 143938723 998135244 305649615 262368388 834286173 254629265 19715229 564156720 147425082 332294173 150213986 18070592 40156471 970453255 634357254 979023350 476597370 437911997 531442692 592685706 605043672 959687050 679523188 199014841 694880874 9751558 763703720 993032076 90294585 641783173 942723962 540811085 819385588 452131377 691951251 323959256 38212435 273926978 394689918 36734844 525830031 420653148 477198048 158566325 8750888 304187161 142614723 334690713 97518599 14518754 263421571 87050223 203207446 310011845 573255581 528274580 473641224 345991456 262325223 240777409 584546995 603950969 334335307 207250325 872857936 975089286 120884866 107396147 273256039 3455958 557820867 511135045 951044236 503599905 641331394 749664252 819919975 394886834 932889486 126869643 694619224 709294325 5728693 108081898 539919236 346264609 925563608 28375055 997704278 488787513 683527604 768559132 146583825 688856934 646527748 371269464 445918300 758581042 924212635 867635682 150633369 545753906 30413272 279206467 986508592 134308696 286558987 431634144 956032408 962410707 125010422 148427181 662651188 553441618 824473715 578699791 745102173 949439118 734137737 528478339 382076090 925077469 262681023 598788053 814222220 619179269 161549194 176092441 794655102 635084415 572345774 269872595 716306552 668930277 762815441 139649922 903875930 119623901 978941778 533637522 164993668 606123221 839486787 977224143 275714067 716978638 643324942 355874575 484860664 276079149 816996951 75688064 591313320 467230435 929564020 518588990 306194805 422862916 971237801 332691385 637846514 320771238 393117934 637947177 143504049 965785183 941219952 331377512 743862603 419269922 921884322 368670608 892998317 873353383 295480111 208676989 683457742 163267975 585479940 943552715 977533839 549707754 259299063 842734742 143841605 598652257 810860626 494589967 191949280 460746170 380451495 55030908 527064950 434951860 693766157 376802777 794884972 324299312 325986875 564638601 680553580 95608598 519335620 896078230 955026069 841363390 305682893 39013627 215854022 304231645 692797120 529907838 539793698 117172748 110828594 926892598 166240980 827836632 993685793 741284597 872067586 699775391 393060222 6365393 641642859 856210437 358969040 6389992 419817306 943672706 93269069 513863605 124697370 221865076 214143232 446592522 634085720 886087046 370842676 705470648 71179258 828208226 936772642 901656290 329727761 816710298 31750236 565268030 927528070 143807389 812218218 261032121 684564025 896273524 995137665 792420855 362442518 121633161 699468439 134300332 756279594 488244446 394775110 358953488 33685629 993717269 678482492 235527589 893680341 497724828 629741908 953964530 395541209 841120461 705956999 838258497 211229958 795882636 214894762 22870960 478537089 21677583 501040162 451513561 893261087 883353150 503715944 627930533 370369758 59585709 217729348 656575793 941159084 277064033 657539849 677048113 575189909 896522032 27418410 174988894 137204500 746634663 710950917 956290689 768023604 393071763 88135125 886443080 416067091 775001450 745629361 574911713 288567879 39164925 363636757 426499623 95828248 219860381 382743186 516951382 241281429 557183936 67393854 94767374 345025776 365236019 256411582 652836586 590217892 880964510 938672604 327618329 123561231 288656976 628052212 326375117 842200893 714337726 198519141 740859730 40515088 234796648 520978840 602819813 959830264 658712335 671003924 250434613 79147919 299993940 989648010 632543587 176283089 553155810 644747122 979290368 822619827 523767068 876198212 423503048 943374380 889025210 859280493 882140916 169838947 1275378 229602825 839739047 812709173 109394826 505042873 318105567 258927818 803016706 556743734 465118856 984374543 893261029 500205290 731420511 199934011 953600724 270675103 241787441 861447609 24443140 233759360 499648944 696004096 19564672 659621017 7325594 492782310 688692119 447414628 976001128 363378154 151856110 862112855 860409468 25548660 30531485 737099429 740424726 910544989 478660572 991910544 724196638 545751446 431420269 988110334 58121258 138463752 759510116 254669017 683211178 622481144 988037396 821680414 222537681 909262812 586897020 777397505 204266078 512474360 137129438 107168753 486317442 153493446 37887781 911101146 456990731 361898477 330182463 655907566 765591122 273017638 15632959 974560970 10356460 757470563 490180029 97480179 93031806 411683773 393941274 193734 295138072 58734531 141965308 198555955 633970922 516478403 751852056 383639416 57696839 363374998 724185415 928281954 722642869 922120451 483061035 941165656 725071144 361246162 432136711 4692441 590753022 167351179 440187702 188737615 567415145 597025252 485917661 249421892 399272618 187720864 466134452 874578381 396713703 952849258 273407498 868808933 383143321 154243254 114347035 851589705 273061275 909149083 800240814 346316057 593224047 318345699 406308064 243384352 469311930 971680680 74223831 900828671 958935637 890828556 684061219 379254684 403929351 392160146 533430818 126899286 527377358 844928570 551413523 198608490 966781439 918516419 96498320 937795657 835526600 248139781 757829183 608635428 92995703 446752977 293804350 791310965 249518554 993869159 311547997 825425957 808145145 953150291 614455067 946579133 886231475 578020055 51936547 319851544 365507347 285793634 464304789 143734316 402921137 574096367 359277500 144413806 385584437 14121942 491050656 83089680 411327757 302790960 698757945 269235791 101879403 164315457 896867055 644977188 606220668 896879247 967969540 433497655 238510695 385898504 925747769 381521532 474640889 847187621 321607170 820383875 713583639 340047641 499467210 329727192 573769478 954350012 839018849 664142283 521089989 973587900 994092999 861659043 948051010 286546055 128725349 316358 834621723 76553081 644878562 723894286 134151838 873308640 770115351 945479882 936792105 649813125 961485765 942334968 486363417 805077895 401015932 960400522 581628378 580486890 566135981 678092780 379198799 247300337 975942306 13034817 123586518 80358331 270569129 889803503 914272779 749513415 334158564 898898888 383633321 949763792 522475580 643116583 528628161 75206691 693470951 677929438 417848434 181132237 14465636 732730131 964715147 189914954 237307025 787221094 320280077 659440800 851556452 464452002 18160270 460314275 728797660 499367559 487337183 29283723 845620149 222798514 598904963 732517992 927520447 693044632 230386237 658464213 720390324 85090305 57682081 311176934 63113029 998186858 182803400 795137741 47644382 447552476 396876467 727376839 367813766 799962226 79689375 112008635 51240811 339232336 237128626 844405834 443225098 34387959 221763219 451211458 743412525 967592991 801949601 276484265 482738507 510989101 973285620 375222557 218020377 563543052 261511461 836168378 776911523 785809553 633354355 677872517 650315911 122308094 559165719 309630165 98178424 34649276 49916356 236263587 47329191 934343610 93985847 769828821 1730174 946814646 180254957 379381419 675317826 46507984 592678059 495213252 698257590 238035908 8104640 451984579 937200895 601441437 386826225 595557518 800449383 242132868 779640221 721140920 218234385 859563994 75051535 96017894 773917509 357190951 589089985 228287336 470761152 616562275 789312028 843442366 133563910 386961923 451843952 289434431 205033631 445772389 811677262 949578119 350893122 519319731 16102206 12672884 409930573 422033946 316774277 444960074 859763362 986555646 78330092 322293116 736621885 954118777 660255397 65594909 164650892 350996424 657257127 751370294 344060991 31806825 229668827 540437382 490226049 731073737 260025684 18088158 436615452 530500640 452927979 373929604 219712653 349244211 614466723 186281480 676665108 485125954 801520264 881961714 107567879 926527839 763958226 28929714 577647265 152389429 843567901 21891743 905174152 671553776 193107118 221417 508509863 741722492 11953607 343577765 350998881 987595686 938635247 218810365 481097702 761431247 124617123 657794236 685837813 923776131 961693381 314731843 158703054 923582814 668302350 272337434 619453946 505176701 178857485 556322680 208230661 541109570 634065714 599410872 217832211 199873852 719826064 174530770 26376338 944451095 256529107 297858880 120999896 170322671 42585517 674608915 364694623 641678728 267778747 780244265 343299614 676213513 556865595 988165123 398557894 888818377 772093674 548016836 799913544 540774816 916543945 100748936 957384037 990605512 564082835 391407694 89139635 949475899 298372130 551391034 654398703 317494792 805708505 889378362 194221339 842937961 776993762 909189191 123567042 541852238 870719855 552185253 26701746 974474959 500441772 722725483 501224235 332629690 141516064 388302341 361223553 892546024 641805648 949179625 8628802 806923155 433562131 920122678 870683079 643623118 370205206 203815181 936631208 123831569 373319781 95110797 426396503 437752067 828318211 770397997 883784924 684944301 528556000 287095499 491005321 975969031 789990251 542533468 556436073 82656974 177713361 678151362 682768072 303823427 192890260 113060605 381290117 679070717 470193868 459000564 820752553 630045745 784663932 339108482 10468893 652010371 421168997 389186177 49692820 321123541 260662328 726996474 944546529 319722920 767151832 922025630 118095679 922384974 448027807 362496368 389392396 587278731 84900164 569250064 449587936 892362700 816508272 924366259 4751409 267547431 502835531 230224242 801216486 813860659 501232529 832327942 941224432 558390730 909757665 313087293 647710228 815592904 132969863 796098725 890164846 149129949 295043467 223637584 25010444 828172363 28137780 452543031 56563957 32090481 45731277 267916534 586032555 230328652 230814765 426024949 694332129 382175088 718803348 627055537 50312817 127216906 277709047 996876814 69335568 655752 463947543 880995757 10633339 645644344 44825513 187001535 371489732 375474345 604747119 773526456 683585177 640685540 547986156 78358019 695197923 3129129 468390546 400340489 426029046 24111936 138056970 346698923 401773618 12373469 300137113 638747800 969735560 927145493 554124534 604836445 329218574 600196619 680399837 629102425 332492654 912440878 638982963 270147930 778916415 118081744 933382815 54477217 550721990 646040223 425699805 883561624 587957906 794042016 930810060 747835872 270869312 524496906 627592688 764814275 674987802 240305302 823202546 137791264 143125394 894802508 929357658 892997884 771105070 986759663 669006881 143864874 546942104 637144737 504556790 39183196 504209091 448097917 817245817 710238240 613934506 306279601 171699194 951183909 569041957 376291292 621047966 552023365 155012178 669256987 503378133 157161320 913369272 798081831 872411034 385442156 981280559 699927803 304136818 937999635 399650557 356598201 418363842 962343860 817123730 383827326 422947491 574655390 149304801 403122245 596781302 825804505 52259603 461161657 113921792 504358219 587070604 342449837 168338700 873979859 997765913 936096770 722556982 437248488 161838078 558647318 640286984 478527305 154685506 116919667 620283048 390959697 931809033 309847836 63425153 43942137 777669651 730639306 569609374 546327575 63674609 480856571 84939896 333125474 772940282 760166616 620890538 656722900 968002852 302503603 69558824 791092804 231494957 39272443 902519168 246191016 434765430 682670893 170486395 859789580 155250412 474708539 560908648 344220042 922909389 534045398 31130877 213111216 479657200 424806564 693437498 1476379 555915501 127102917 152411850 823065013 510032158 828965234 371272820 779834635 436823374 454185108 825397715 501370761 667054588 339593713 785932227 378704406 185676018 274353044 9882060 610954545 19308865 414145219 974045383 161204682 899250579 579037807 235813032 780531118 932149935 693946425 515892267 801959944 65739464 484306397 100828873 977529238 546746157 832196856 821384803 749751234 244829824 437647223 586843444 147713973 397376210 890958915 192575717 236416974 203626296 414442479 938341690 882550430 383986763 995236767 636264877 44672356 493635043 545504846 645449322 951445546 21307199 964651161 441587397 920695257 344376135 519405781 30265847 618009693 861310362 206605237 188558255 621918610 918218127 276589841 523665658 592589286 729010558 603273801 520347259 97864608 285542523 625886217 156252281 309013575 354075290 152657263 811952673 636320096 479322551 18501979 531522485 375813886 842692793 287736210 196551667 424444989 881030189 247707828 699823583 265688251 637405945 528960259 907902639 98785822 620342265 110504064 183712721 700501562 296858701 961432962 787894460 53308724 875672313 663139887 442782067 930611662 545796971 265163377 691450739 150208151 273125962 688594881 496177250 843888282 827627624 927959130 337232979 206452949 192952834 572632297 574850237 262941076 632100524 922173483 28207048 708857758 384202067 546585989 172713864 876397882 480519645 609707207 672320385 708518626 269606957 391330147 877229052 345091285 610001103 437642972 816386322 883952227 13460216 3207200 722729625 587740755 6904813 774198273 198983685 643233888 335931144 731343676 226285940 996563600 916892082 828676437 534806639 29689197 829156057 161585762 555619038 703895792 773583900 286099366 583594114 719532904 460311319 54157619 79125731 949730686 746867197 575333986 171244439 591742638 893196559 823869472 708624264 395484136 597169114 198993997 31962429 90171232 489218137 484052334 815724363 940420870 225864772 787107701 700782149 155273888 794651044 259130596 624107716 320683424 998070002 229891931 581165507 111773824 96949615 701035082 208158105 602789621 954707107 656078464 200684525 217433187 370070695 890709294 211335387 774389932 95818072 833192794 494292241 91019183 766725302 330555230 805696273 240956344 323938184 58785000 716022128 529877211 445365592 466937390 393798073 278162368 451753918 25262097 601270709 261431831 680406540 322426849 408430152 619797394 986246927 839657261 582566613 244092520 612797681 802408885 3746586 981798757 830021200 642601383 793603449 553404022 296805891 334819845 142274407 525291597 364044227 24503986 381716545 114376447 717168258 187303746 772619290 300118041 709705806 127934167 199558279 456054775 932168310 505519593 993572425 561899237 570930655 773620290 128741503 694231140 373406413 68655439 896017123 889178756 873576037 636755191 88587882 735449073 99816053 962086903 133107717 510900350 735661377 315328944 389214478 948111258 629716973 472203380 940040682 493095890 608973691 334846667 793692410 319222602 641172113 445614648 856733117 430532679 497933422 907712021 145945961 719854224 508770384 892324263 562512900 596891023 228896312 161774717 177231121 818609712 682641967 604089138 758330812 223057375 514595402 431509655 795476278 983915839 308299042 965603886 291181381 502933963 29172384 103649148 199280796 131404434 1552760 812319400 586405774 242117604 418423363 416122302 985128579 19970574 46390761 568344399 790144022 651948320 39171049 746151662 726320467 44440012 954264293 176852204 249441623 453715555 110116380 371762803 396688948 555151302 885904894 890685575 429993441 567482008 576012456 163656441 505993787 792873215 98465701 574690487 841803358 348187474 83454003 182666577 409546029 690766478 567308008 65199041 989931791 464099421 594365526 390701229 834706005 399087627 625858611 674714408 769629719 174025517 274434977 741759280 360223071 347362509 748449761 150747839 311366969 99194812 511764532 318216638 696206648 403515436 597849570 716665400 424949011 639293427 286057686 944775965 658374463 432844948 158748163 225679184 129562992 41766631 471783621 124993149 607093318 890303934 884757483 128138398 424009960 20943132 6840470 664320682 933718078 920092526 343562643 131001590 454350397 56136995 959078935 463520195 32303443 870144615 663613689 439303880 947841718 963696835 139799006 523608286 994898319 758394442 742421618 904025250 714345011 212410664 858423911 636212015 186080985 588735583 35512487 932111212 518512890 256900413 95356695 898304594 835707270 55525375 655757117 235747526 925968781 793705438 406035916 33164678 940960227 659074358 467317583 951444555 781108423 957520767 229732107 30317513 536097909 600325356 497111890 717363586 22066426 354165860 66719868 155213220 519878210 173714564 320756843 158146419 89341197 189715081 201614181 440004635 305592837 824951474 368499190 630483531 705945262 403437977 851417231 474275290 113324655 908274176 1685441 993555330 244028565 674614381 49519248 530253233 848203478 850314764 993254393 835323784 991593899 406918541 608931670 111423888 899745428 544008099 599012884 650927047 310060201 532428981 921093375 997804112 437427500 339727921 334565558 815725942 279466870 669159983 524848801 744488606 435886692 423410566 967855327 341072548 486342465 150156696 479572163 915149512 678930804 510628477 968222344 891860134 709621744 676816081 189190568 630036471 315286560 666990276 642065136 17985103 675360195 704246033 459746057 404269917 51484702 989532672 422578296 414241038 501304480 693202791 248961890 538620816 915793716 414212900 561630677 964484912 227183481 451565892 896651256 237427981 108038428 157706118 310395124 836907998 810642072 682038467 861067734 220972840 531561667 523987499 885385770 405370989 59668588 31227046 91268981 892694274 421198521 517010477 844659444 204964125 333595897 435561621 193938598 646185978 606021408 274624538 4787677 278429240 593491466 935641335 548990226 568626957 864169586 916504439 876313445 406616070 660221243 535365399 376495123 750253113 8163307 893235537 495760100 649924316 727400490 879798590 54804436 789621679 160354507 130052982 869562051 74138565 950696489 905928821 537711152 498318629 914336047 517982738 938919802 93688862 267583308 669255037 837071230 225934377 12841951 622124135 822681511 388378740 335685502 912208786 340634096 935284 960294458 882069743 242403529 913664770 402092088 318324895 654653811 478913360 529148603 758304382 73981018 537876706 666635015 350226391 989286751 387031962 290001205 604282958 348956058 18467216 555284680 610667275 886963046 13304568 556827602 376433659 805076821 989413671 204753213 657121550 125114884 704575074 540529897 258472801 489185954 458813685 220590479 22671294 427463673 858349396 970819513 139252483 578670051 472833537 830787097 334631118 567151478 843720003 225274150 88353812 245223298 387001375 502925177 298162821 303905060 285096183 171549219 45151904 38550981 580181847 206913456 663087144 635926689 53529439 597348255 528868235 493029211 932791956 644510148 82889514 725863086 700334087 958197913 505602774 128545142 396267151 366246783 936083467 366637871 111789139 471868951 861337083 420622109 298898134 985371272 598913791 406492810 913641951 104596783 747290622 701234371 387577165 744825159 856651397 973591240 702056121 39854541 656544735 498519306 241932855 136274512 677965723 133064310 233880566 585462073 125166885 284737197 834688137 704304095 438158437 342228120 481609552 943651998 278815401 391973083 6105277 863893981 267510536 769935656 200099426 191550805 434676658 461245164 25571810 235417382 236627220 402513642 287841956 855439340 881299275 197484700 990878018 569331702 698722257 241791502 640857885 337549627 66867803 478508702 117474173 845428116 976928394 428567584 659179079 936368852 502749471 456045052 302662285 88639017 202113710 33543327 414261683 244502191 264901414 650641228 689967156 170167369 314112908 540660059 515818263 304465460 717593264 75172222 102748485 552110683 958686588 740219080 478987693 54364653 764066042 272722776 663971576 155781110 934859272 170800038 443148340 524385971 295711993 159118220 469498751 912143757 171036030 413991513 744726227 870709639 505178992 682559159 45424680 877124946 93411793 63461307 171614684 377455598 869565905 258713506 645948560 966240849 893173768 779423023 623528640 991525335 541658123 409649528 675596758 996976955 640144729 873434392 816729174 536837000 832635775 434741430 321540623 548425766 248155095 259889806 539852263 579913603 964339907 148126072 59013785 946776034 359299112 531812670 8120995 941587271 433711466 890016656 983755164 527431064 514334105 650677780 959445329 404047488 377691997 746330602 3494544 781537304 557236546 539109171 916710612 248609506 371633880 315877480 347122438 651366619 293463980 170727814 885164481 462387711 972925440 117927239 179806038 167287821 908935006 44545122 683709202 552032968 207260906 993338533 574656196 39925119 204331608 355860145 56157991 407749000 219433649 385269779 771601881 213278058 968944714 189975369 621917928 936348392 28543803 76224210 295727356 3583489 294099582 93636284 723354826 120888031 903037018 466174201 588505673 766092735 339693520 555050647 6359589 404579674 181362943 836433980 951975571 406179301 271236686 767509858 146855994 493048216 145408241 202575201 427460978 712319683 324294990 495139953 917155634 137061456 933667734 43690402 610093852 844528251 494012930 313404410 60073642 166131052 436848298 929976224 608998863 259004366 886517168 173525872 608246060 901851615 595847343 506505646 750826843 731060910 395526981 962284692 48275870 523547311 14248230 31735051 268192471 393417197 515070463 384233503 873871834 565513058 94932064 326524713 378627553 436235186 748649762 641315647 858380223 803901867 549860374 474747914 168199544 811924902 339503802 481005947 33864233 509380387 585941928 496867498 267523848 649404449 557817336 591106829 286414374 252772600 659249913 29815461 998286149 752959796 961219873 960177206 101823109 815531117 756544301 497892515 944071493 134469915 500098097 948246572 917058103 232448065 578008663 787008791 42877070 894180639 445142514 118657349 749142260 187117733 638940552 870158608 494366656 241438761 304790406 817658410 541925476 862521132 643709512 535874060 130747359 135867053 706862028 86975684 993588852 665906767 896244388 462942440 402913867 397069345 626066252 106508980 360615219 882520964 195034753 796946774 168477685 960683080 281961297 137097534 298991982 492439459 658746095 808669710 294716486 697853440 445696334 505852202 4719414 510112350 955188083 396134377 543525015 992867545 373942725 657603054 199062469 809729955 423800019 320658433 168974338 668597315 93946229 524101288 901043905 958305238 117420275 844240524 922389620 357685958 568631341 109850404 597497765 873087163 490254347 627638256 581362061 378568497 579628113 378892357 228479454 430923250 806742538 334430893 601431608 994054995 303200059 122910857 17129472 710055610 184869274 587668244 245495608 75362498 890226890 540815432 721155641 415523642 964331525 513417489 683209770 565304548 650337207 86957961 395304408 636769391 150248655 484881975 255011763 564012940 414348807 552014589 415623222 888701511 26330447 784322672 502237815 644925574 532510435 431594437 554635074 160389927 620461820 784129161 727781259 190121335 998018875 207638931 651540254 47431196 3156055 347156907 454477850 470946333 49529860 625907149 511602198 466015065 255669778 273365134 54984847 526419761 117650449 630528999 958905940 890295630 910049574 301949591 986565892 104697116 794094984 571800140 195573895 36692986 642402138 530734631 168323999 818612798 870724066 981570035 559008924 367625669 332832478 808386683 376291111 700174134 264814959 785986086 720300472 221409601 160928204 97867364 91096659 895686131 539944643 732245406 35508677 457037139 988465540 80557758 515532570 720635813 563909974 550889818 63858661 919684305 797279155 299001598 732942652 939151213 778650718 414644959 700183705 345483067 245846744 624580787 568749864 50020548 249320581 389694606 651315617 639120122 620828975 890531156 743637500 240706978 397121500 654403168 642664616 27645272 771890547 925935314 941199380 2144315 497552822 988281786 502670435 634580503 64752802 934444998 68409681 286180053 482544099 167870265 889019492 888902557 434978938 21801116 102446395 217135264 178529525 62117161 774219880 341093034 950679890 33772754 98960702 73491406 433380324 173707251 307294150 477890683 883424564 395534922 72997832 78518712 561816313 367682339 713381799 69967991 527978818 377096867 22097076 86167117 7381400 934520548 108935455 356184099 252513247 29874891 846844962 961344244 798227649 142025389 645804198 233166888 476501729 960981639 179368456 708287752 306413 680466969 253736310 590362358 181022195 889476937 220300173 579533303 392064792 570640327 115604996 272719252 141058712 832018676 725722772 617753375 745071913 605807545 493028528 539489635 621319067 891615695 226320491 320834245 601139569 303133704 675777777 123510255 24916226 742207992 929680661 535794794 65660601 139574603 501408328 334085215 151598860 804146322 616471297 963552083 140092220 664353360 935786986 638977692 670480925 31073937 116920573 825475749 316097671 120156448 167951498 360347612 412059761 829090238 27968985 86920937 321744639 897680413 288308822 581459960 850498874 442285864 846686140 144554158 386589899 536737083 684412600 547051033 568768917 590740890 742861170 136379593 46784834 291075745 913179236 388486698 716747652 23181839 504149366 806946634 144654483 695636456 68748182 188976966 815307765 292210188 770353798 358925301 252495007 271979716 360378557 110301135 681907926 977710115 692367994 78050821 141383447 316683034 184871607 390498218 416679878 662538371 319675279 418914594 509679708 25370751 818917432 344410034 118482015 466512774 317036538 408705257 103326532 893965137 533526245 627436776 245234011 593710991 41377132 728627423 53243498 375122000 833843693 310988842 303676504 645450931 750659017 216536655 527988562 273693986 30672155 134774577 5084216 833828565 90220731 543105967 727872468 840868806 349129185 570134758 412381722 403588102 83124893 134953284 923321160 203371998 84391399 9769295 644192113 108166691 116015160 454794771 208759204 93715701 672094638 183468968 279495687 344065583 633751209 194884810 487428859 104590455 348643693 299121783 811150800 913610810 754800496 702174583 651695771 389620880 186065374 615623164 29961363 830350092 181854115 668152918 371161138 480191859 89602232 940135311 963135300 498559612 229401472 440133297 157919255 18677098 151322318 364721071 26370812 14399499 675551484 600656482 100709453 684987403 64924736 224365280 379635836 77729263 81876685 146583352 691933829 499720820 877481752 80790350 433682407 208424536 946562776 982602541 822844436 349044391 747481440 821918559 445502409 646107244 877421702 471357921 6132318 296760334 932095274 757262219 101782682 872769587 241924066 694212250 252361560 776301700 725108500 20020293 679316509 111674641 181702423 330241241 855411277 732787325 570082338 449011300 278613599 576288976 115532589 987744377 263995438 646185041 165156995 507677713 284674034 860671492 239212974 80204042 711903525 163120084 455662856 954967522 474599832 542177220 28200491 180282371 101370729 108759878 439968992 172448309 672735967 243197038 477078146 658810438 808577449 512440193 686742517 571901048 441264317 788990164 680274395 832974089 202563822 890987598 941299417 121755692 571639868 514876306 810879249 136500215 569704350 781333744 38311439 105656724 276162128 354500013 593352834 14180831 873024873 137380888 794794773 383671513 381284146 614095242 328311995 756490895 102599163 68226289 595185324 114456296 707858726 940779332 387949777 120839204 235009407 798685524 57557424 137212323 402686104 867471481 184773576 430970714 725630851 447761226 256348171 547524794 228506592 450290494 571852113 892454023 692866943 682199973 156758895 641294475 412178061 181184768 154043816 972598275 176031352 789017626 336490854 77633385 154080123 209345272 52358080 790976167 317023598 717389293 673781840 408860176 963112380 985599557 654313297 566725432 607590873 867173996 296794128 186669863 636390055 547086149 772944124 604906619 804061726 837316115 934365088 173790668 372811846 355871549 96176576 47265877 324416852 452401634 525500136 950114692 238553458 230994098 662877444 243254168 612672784 388620167 674553832 740567740 426521833 262616480 780047069 481705888 446750119 12215402 551700956 164931187 923331951 312610654 128639615 243087885 935035645 975096850 71511744 592120680 123740907 177000442 851887097 103141969 164124538 436718889 649858571 56138322 347439178 502311708 879764648 665827161 48671638 855325952 149885615 376868051 454453082 60517628 68938685 592305013 783130185 718136269 644193899 923861817 956907412 735944156 95020386 615804599 433992674 538774262 809615579 856256435 553373584 261731243 312371051 405184230 554897034 611062580 788681839 585909740 572070156 2714490 207851540 394623648 200258811 500510672 516314931 26647134 843849802 726041927 706655961 629063420 6030391 782907632 657431425 806915689 681458792 887056628 17876343 685981973 367539638 600450796 339501932 490713735 89417204 834506052 970689524 809865715 120976118 180460513 559734059 612423888 380579354 852793079 284914106 641965970 714370793 430307306 134070817 253539308 314315673 353442155 329862160 777391120 458657060 253893675 910324975 78796111 269355663 404528261 340682669 342648695 458835232 857538523 765305672 134223104 240192157 585838875 738335147 302772463 418245083 45914978 13161026 842626137 285034983 686561187 155959270 990876250 265759790 287929267 497588207 576790922 443029813 995299 190371510 7407355 157387086 136262443 189434903 54507307 336628604 342550606 997508965 862038010 620397992 742240921 31935762 331064447 458247864 968299594 526379069 840076376 176549468 775140591 638880443 874679971 17198083 203559321 649259202 765635015 639820757 720415743 439497039 123423113 601875483 268607503 697565836 509659683 321381430 386944037 473800391 2661324 68866753 856531966 557501556 403433113 600419871 962389700 606371401 614297017 654867372 311612232 674574022 647540580 236426919 70699973 318640076 740512660 102137994 511815030 400587728 548923261 614505752 102563776 545992860 889901828 232599353 240641160 395187025 740166807 992143057 887016657 375609750 338031891 500336868 872476600 271592297 175774639 679817185 555819324 500966812 785254948 82636190 483075629 376260531 920577910 786959258 836895411 570339171 974969608 521315455 824113932 199161281 272687491 867555568 395436888 94146339 860456799 343777221 854319230 330029216 34238396 736545699 279122934 449092710 89607829 147804514 228127290 600711090 312587862 249466669 883875688 124387007 822930232 708375234 921445872 651730288 736651689 287969149 33558999 828954660 252746816 115740527 649088358 887075720 723954224 528094024 105835066 656476960 813259005 252140032 155893309 73450934 660503570 494528830 380983233 334258749 89471181 552357226 504391786 143807325 362427382 664272915 181190284 606988469 278335809 725286244 4187253 743243772 705111321 203962429 762014010 970164139 675943024 82705876 140224565 651031928 989294322 71331841 979040470 632272798 73101987 988397470 983715659 256715672 932713351 285463106 189953156 20607526 361526204 983320321 338467886 655061713 865308153 866241746 562513872 397762119 804581969 283497083 504210249 852794486 11058636 691660005 574126508 819657748 38682574 270858196 380762830 177494198 175806722 446916234 101277387 640335098 960715135 216290363 262681616 241903236 189430398 405316446 93852309 47648581 595865179 113830678 429808214 284930412 571890584 796521132 832808331 599136828 356189517 508221522 95073554 843728914 439662485 460925482 343396363 176266973 321787692 39715062 461340213 306602064 115132800 464508872 192180196 685381198 836285671 207991735 386866714 715980489 754997602 221710786 32827616 717029652 363792486 110454195 800498081 686912354 182554210 500602639 610432256 12989486 182075152 991959021 198904635 537227521 258588603 766564382 492122229 711851390 390136058 914374231 286438771 197358765 111519632 341097218 72986195 277647378 426098371 192551304 151016268 812923475 161608961 205581107 799643979 290889181 363200855 878224138 213875599 853903575 654779580 174475464 560130690 805972661 357260638 308303934 98414463 805608519 265634984 169423515 908498341 782907451 329237967 100767763 768427813 301394643 485514742 224358236 968618358 889453749 960149033 352766369 793009566 349984683 419295336 328386470 708015833 434014567 473517511 672946655 870587134 927140576 874424825 375019124 595207766 48176375 692447113 973088240 303884866 852100698 104686555 498901065 403810171 432062544 276729446 668921119 270734947 586723352 584411139 271708193 568827180 896820515 518221905 307916376 435322827 430491133 668636957 728695279 766363387 35883772 809032244 598040077 875221628 207793827 910836341 693184179 457420538 259049704 939435341 309849909 500545723 28923142 10339566 349318172 942059944 924415794 943643085 338003359 38996325 96204532 607841844 617163797 696589079 457789494 828473185 56981104 185719497 502879851 407144301 342469709 221254976 983301565 829855883 106369950 831652168 891990113 781360337 980464830 814525506 911426707 239649297 325380774 619400346 577082180 822403440 859412187 194783982 932756022 502623814 709999587 490440578 612437981 39651642 322941370 923523952 634951308 145136506 815256221 971925350 720159531 254034329 747510776 923168439 989669683 762368928 129251989 779252921 741130146 482658126 438554383 431810966 726663236 561795048 175099642 84423078 348487830 983470819 88648238 26679113 296083981 669742442 85035495 49170488 897450903 821331871 673493220 216336750 366306261 174869196 791433284 330856758 323032867 925769071 112535820 772302992 244646778 736240734 860446407 349647826 948714151 83738804 804224853 591828521 430199163 417842890 554227234 302600281 74590360 629607541 803975483 823583335 430128621 470241505 552004639 280981504 710302058 238095660 352561460 950571711 54637002 732813516 251409711 976258519 91472611 324183334 440193038 960124790 928489797 141965566 66240880 253321873 423867095 211917155 835833881 532515896 791592435 562034059 136076093 433686019 136981197 546230816 517987645 691961550 563120674 83742785 796038858 26682679 291864191 297854333 809661780 924793168 212472111 288210249 6687189 75497068 791029864 428392322 677355049 553396711 629291188 445016364 682557514 959524755 196863746 871577262 486938558 956609555 678877740 331001704 310083570 573117418 148824425 118656637 443194418 471650552 843963350 42386995 105679706 399750617 21520553 42566633 336330179 4667639 869559225 917879206 675782675 255417601 386247677 994385081 610872232 601382018 92469290 279466547 501657866 232998724 659355370 5715291 307410491 836479769 437720659 894916226 95161798 690228158 500752209 257567408 546870179 164640395 315879446 839745642 823868489 435799904 645237955 804244872 843724112 138105866 941874876 985873630 456730905 266621393 582259323 176887636 252935010 435263476 159490098 354196568 342560465 912582999 567870621 89912639 755484343 454626513 199588630 349805444 594905515 465199087 88075861 430169117 19079654 783378688 501541085 703051262 282162614 624429214 351137735 461150188 895674902 54945652 649635796 25624428 267779068 408970878 250016644 498294481 111302486 34588603 294136658 439420407 856243595 678128859 168064604 694920424 239515417 787216645 320259846 148843838 655541880 61388083 493382528 13367558 475328191 948520108 959781560 170422855 543781694 455874720 636246620 268623555 912219447 421389430 999762346 940982309 516557800 403905896 314036928 482690593 352689469 393214379 405683197 900079120 68634951 832027462 7825270 371639980 200537137 931519955 378686901 82080621 279042841 818126765 432748097 293339158 547254309 696836748 416154791 731974110 896254859 961706601 934151688 716830676 111484114 141092500 715632270 218599409 893465038 946802755 101915761 449127682 472776124 240200251 982891242 659230158 689726741 273562244 764869867 771622224 5999824 971180137 170864366 726578311 128480072 58633838 793190634 178761220 338817 237606004 691701706 682099912 540462803 35808466 696052301 270433174 640898006 130009158 702203269 215729762 95981687 82218775 687159024 688545564 829884917 230227816 504366443 728090943 851240230 171075224 757011521 409940226 644862308 377284237 627871734 67449321 899717963 965989240 340776916 392229811 714281179 55759562 515276508 273365490 757303600 294117590 330764690 715331942 747006674 639249186 441310160 499952948 373815647 164841373 500175591 81146308 964256523 737659637 345251163 27489898 54301490 290868879 401683057 361482027 676563 559799502 595504936 665710879 466550961 295938778 308692775 122589916 96271765 975460590 709743848 824967590 744023470 736703466 717393820 87292705 985924907 509973637 719473921 198058943 380341823 290428382 866803473 235197029 970008069 898421767 397147873 215919462 189843275 55273059 998555632 546494535 639194570 613596209 667967423 353746373 347393995 438105021 1831528 928002216 796347125 736793888 486373612 655751735 230310343 599236521 253416639 46749460 671433405 269521670 246496232 141053191 243606148 845931486 144739398 650150237 586116155 163499192 900990058 891894155 355114528 585779398 654130103 779891460 232015747 282473760 655040240 396126751 95828921 410430064 2078638 536566998 632363200 693985160 152101835 113104776 629559647 345609576 925410315 694037685 677171960 776805709 58110965 925567632 87756632 646142507 563973706 985216360 733561995 395462218 125153647 921669179 331326250 494856557 70676985 391407380 730564894 524842463 306151403 598553926 201774674 29978624 20035918 649415696 751225911 780630580 653163377 854000120 309645520 662488333 439678278 596121084 299048896 748764393 697815307 684713477 805742122 548027104 711076137 970811304 437292164 401422238 840047835 623115630 484480876 861606943 758695606 985261546 850319003 439880431 35938894 564000179 30987758 659937003 618067103 267468307 110073946 1691832 824864106 478306805 174235781 643281407 606088669 647543802 668698443 621585994 216592529 532559255 94860440 222708779 797993482 408350079 120358659 535758241 207704480 299306272 405525650 145843393 876306148 45560911 532761905 275742085 775194726 645924310 954442503 456585951 949715143 914822315 851300898 451253354 117554987 755682434 103213031 710298634 557673714 39938669 435379946 151286355 405740910 912974113 516027293 763566977 659553797 803281198 131788712 25382254 246226073 59715929 324612667 142623961 466014048 941588277 795367816 383248304 979051593 372518592 735963812 658840136 723389228 201035042 692931545 98320640 255136007 247745010 427513591 557255786 847305877 775372243 701232332 862630847 421184646 627101844 101620240 492619834 94715793 850859807 17526418 646481478 922911499 578923937 667926937 628842699 452447105 908629416 986463130 99755761 888602096 452690258 881907145 479673077 831161775 122723874 649536441 810731870 922210683 334098092 714054179 101561092 632162760 147479634 447886102 308083695 415924911 502963601 683610330 339589779 506812227 771946863 491843621 77171236 469298721 818921962 545966840 262997590 187089702 399905384 1284176 270745502 816383608 201521004 612205580 823238750 174223150 975790205 283482030 48294606 788073877 562934471 620814815 214250303 379005755 495431639 224041014 618325127 130591008 295283213 630143376 880153496 813164537 850461364 570379813 182052506 274688797 553107378 216920008 831624382 55122715 593165947 739915669 736704140 737555846 887624432 385920745 465716737 33656178 519628073 752975733 676024573 224048025 122666743 130323467 724514235 423528922 223512109 67363614 934172380 611187028 696322734 562155501 772906190 340824495 437725004 525947442 333103680 422279912 710683219 113692279 671634753 381074959 398224777 575551714 104325098 732587858 444971651 351734248 878613791 332726659 466691984 206386788 647251217 62651119 990882036 977379327 292293799 294337460 323661424 450672918 487783097 192378459 827455687 97765900 619764463 406604187 10466842 803587672 791760827 447304822 965153963 119470109 309135381 327300201 54410775 203172311 574542349 920269879 573437572 102112895 816974202 806514883 577263133 44103445 36995219 317820326 235109166 273900767 509368430 784599904 963222989 392187416 607180082 996082941 371937459 839996984 822453243 907880617 197539999 447684286 379612627 782712594 306551830 527392070 669054398 646421296 68525127 109996962 190648267 718556989 155012755 220095805 719015636 831550239 374161423 299744363 321956932 978544151 66917349 463876730 730889314 668176482 676364297 269119503 228631649 869337922 715318776 215275362 878084788 665896183 900937730 116034712 242008164 631614631 500724344 649946001 845319693 457079785 470712422 32328894 98778111 456871040 767304275 147979548 918309088 203832525 618543770 222969269 840896185 478239087 81594004 710098275 385102911 700444147 397917986 850652612 757506355 993544822 567862406 482725142 311096290 485789320 466664097 249329038 289713430 887568932 178782817 954823783 607295850 857877704 722940126 108898200 502484794 976589142 18078591 204415299 881999641 878452738 340775173 933022596 770821092 862294566 434621346 516608980 838973749 381405463 396091163 835359233 654645419 526975998 601207296 935623191 160889257 509270999 913818657 562605322 140601494 553573342 831377218 507098146 960931710 966532081 778579517 293405326 829575983 843734656 604726716 48697788 570119546 969719925 60298871 405020342 24364290 349078949 926525110 845374889 911177646 535804004 140092396 848527656 264447778 715069783 527829514 199140410 546805158 216938864 355057615 946110285 335219672 396193280 461931220 928645834 278238446 547866398 350551171 210615392 81630932 588530351 895837477 781726467 892721447 292842730 40892076 772283003 922354082 143947049 325541567 404682846 230580394 617945097 957594003 443848268 945449129 864926562 544897757 667799587 232712242 330920146 507373787 844158291 573350727 586251906 207736445 389425052 221613920 210224459 136766654 514875367 367569163 832059686 467458753 571687722 226751195 439994721 140473437 743792410 763764159 801688543 681702450 353269692 673335079 407619321 297665061 538842147 649516506 505683653 943431971 142345062 75421722 640904563 632872963 881697672 224358770 872616951 216160422 746418313 84029435 976501940 959949254 115034202 782374907 951821119 989649374 855812904 224139521 150909067 839201472 497487218 936661212 587144368 55164797 73134943 95398616 276814488 21057724 101874051 832840962 31457426 305192181 472430002 117704571 868645021 648962797 148532824 562394012 718928295 788287361 818127312 716875343 208642310 212304992 799677922 759807525 948533294 593309591 364129572 237183049 767913907 70785012 670483996 106811580 359875597 219002909 68271427 204640868 620789866 221367666 21590901 98753589 318166131 52760150 268859104 463529070 480546865 593218866 837637943 24920153 550078120 540859559 932988194 908308560 72885935 229322065 552911990 89216339 382565568 996315158 940855685 865949824 11745571 501830014 299858864 254072407 150698217 583222053 226298557 661036305 712023991 700083572 241132783 746112370 957659377 810880919 100293182 667471634 206352287 712832893 489688684 892121424 755213062 687482113 724648373 508939890 800216849 947835845 948579577 218179940 965600909 848282239 860609374 712691702 828361436 382282665 215494480 847402419 458587664 44791636 125376339 581611164 194394890 763868275 752725258 525428231 329999096 373185259 761210175 694725968 404364879 660809979 432978536 824303622 936770556 428579872 607875480 872290357 921016933 670882855 927142052 258512894 804239870 66271517 15874995 433919037 203854729 385771518 584855213 669052905 97504991 186429719 529190932 773565067 687063696 854856976 331329474 576384365 432028031 949977761 194767697 772309127 174883768 967081999 924102290 503027504 703962019 138426919 426085008 892712811 182886926 467823627 832919490 948961706 466933201 207099936 297624898 545750558 707761506 669372806 270777028 252820253 484791133 790486463 260352118 497478326 995645070 503990179 129183815 417007417 932585594 764070725 745003845 52722372 493594892 362385128 787270983 318381387 469728885 295540269 48081012 414779900 458053694 717310447 372556178 194781443 131720397 303889156 973937313 526314258 396878099 701081746 817071183 638961681 712928194 700219223 38242445 409334059 793177633 298537235 832042605 768723213 968575478 400651429 894580632 825787872 12309424 431541526 725746032 457984403 121878326 712407328 89484384 209264419 793100913 541319758 527965049 205874216 454743508 201035754 897644688 924832419 69332473 589926512 543418019 194855450 906017376 511391336 226443683 724212625 63657833 598330453 456068726 316299865 222658497 483866597 815528301 249401331 564064174 71124443 43488751 119805949 817711680 927646106 56451836 276790350 382955857 47641374 4596384 138651939 25147715 578390914 39740190 516828103 68500098 469827304 128599165 617022330 845317961 87626072 248957364 561184282 638672520 955762307 938172377 851513604 556892339 260595507 86025649 588449052 885155645 637056658 83891738 8101934 806219874 590627128 986986067 447113077 100224271 801371232 257233826 108009223 42850312 570186063 923270285 233977975 990438574 492434090 305488250 639438485 325689950 371033274 424662726 171146157 436318270 241862953 705287692 5865688 476432633 269742752 922916265 458111721 622619858 963843383 275270756 921591107 55608460 159764452 822514248 920448083 235037345 647795127 377560131 841060039 985340295 226060038 937716741 59889636 102150179 257620205 708560786 748326791 630559590 826039027 103486787 549919143 37500884 917413594 151724160 474882253 833184913 440228832 487949922 992183736 892706612 72339819 593704930 437179288 773943703 133358108 464463508 213812872 148824673 924218305 483103395 590589305 906524322 899737575 141828391 654801423 220480538 859577645 615844390 942570577 401570828 842763897 227716464 790129315 772855002 942106313 447420408 432739951 377281682 686237323 989474115 705588473 312998142 494838621 534790939 669836017 788599210 449355742 303243937 50913597 635012427 83747087 49450327 567848668 548649921 180906803 430371229 763067603 695423973 819858433 579969356 174085117 118569943 749782248 843834384 2862769 708471268 808636413 192192550 607801560 86881415 277020677 655983371 757028000 989916115 742860612 800283535 272712159 553045839 758343120 526941540 476745811 858323689 188607468 719447117 119006175 934018196 606637820 859659666 275933956 724947834 47940362 312435898 270525220 282952757 760721128 995581793 718745524 246138717 159293792 572178442 140547519 304339338 717794276 620891094 252907512 31024299 381360337 290845291 399708844 90056835 171528725 229935222 221525232 191533362 25506084 922633091 244359993 133857887 172200580 674985138 611846862 960319865 703234062 895202360 728440796 791350043 824761424 704759486 214739617 22197580 727699048 115607198 143014884 43867394 882669961 903025497 869375584 311504189 695608001 295928981 227711605 249493829 893568843 407905757 296838919 767803695 444878814 108216496 180516403 536371556 939809318 689124640 206846874 901432855 619816790 102270590 204826113 627547447 411730301 83609251 746179709 852155278 720257816 76770589 910815317 796261704 664404352 245629528 617967371 726522428 512776117 988768601 200535507 843094909 977716488 617330511 598157688 539934723 423849135 700614160 906737752 796233277 951785698 984787193 796467212 681223385 684199582 715855005 782528753 745609428 194636765 306080532 930969298 840562112 28364144 828730227 417903258 514051225 700106947 576400755 610286390 221495880 281352624 324812215 971382363 929348583 200449536 427685357 115704680 768466109 245001970 575005899 726268727 504484205 856443670 535172724 446493432 125067791 78143256 604336856 545664134 905456378 871901685 117257163 651803863 563237049 348960842 392449493 249728681 45515185 970377368 678574638 462353763 531333374 973694771 297171263 126589839 146423954 493797303 125011850 716623654 695638154 445204006 503693212 385291158 608717677 23248761 125519567 285991874 444476396 91079890 29407576 820380773 528525465 100778127 292974883 961712693 99356661 56633197 542534356 276256947 104873010 958301298 704478305 960433733 935463388 485087474 715327323 464981775 701211671 1764941 954043649 957869889 26871543 273378175 562614006 578373702 757634975 398532872 179107697 574965329 281308408 714161004 312105743 963644532 468281054 488746924 435756256 691423168 331222949 225571015 337275347 560227470 594082133 192423977 442979369 89639243 581471445 294368460 268766197 98133897 916971613 119812872 754500025 918416364 470536314 859035087 853455625 108501745 495116836 400494622 360226773 303360817 788767462 900243273 877301964 194174336 350512289 704492406 74983855 312275545 187042515 382559093 364395001 786742947 174984796 359845195 525376362 419542954 135157405 416155679 864433668 783783899 116697367 888749877 346413638 512328042 812819544 571268053 520138311 322547295 684175700 454875099 207447913 327378268 317398754 600401011 325591575 990256784 154761049 374927776 756370442 524445607 302954739 645200212 489127248 850207967 399221506 501233057 685428039 270533454 216102553 575284926 846973678 952099450 513641772 995883837 266058196 718091756 43286715 628728540 603799874 413341526 61460492 240684778 165458398 487930966 654515391 607345098 759289931 533136452 525957981 212902156 826254841 896332714 555200871 928550073 506913162 456027250 630809706 297386546 434200780 259737321 711993359 971433634 89155168 702271921 790890379 360638679 348620805 628198258 15753142 59097222 857395322 261308254 293975749 94080768 184152287 770838040 970669671 316931865 710237094 534418759 310061039 892862832 838394756 888096076 520433369 807243906 166827641 710814066 349028100 66346356 856736425 696430890 893982342 7093475 673482233 834382031 470424208 650773966 804811523 974531516 208720817 536230733 249785407 563465183 402027386 191374614 124705389 534988043 664469570 509889692 315261956 640694317 381563317 120244374 781983622 956834441 107194188 882126213 680257652 829769173 378422904 36775396 878831687 907940649 817937122 406303813 477980069 782915001 761834872 80309279 186824305 777708126 740332921 668759838 680553280 845515619 221582662 182450160 996738937 687582332 263485017 415206962 142117957 195523513 32893881 232562677 192539502 25469665 307906373 207636906 439796190 928881120 625266492 681968313 726765393 103637101 328754641 184693863 78266826 883165715 509781675 464296616 579585171 232643171 2261006 889251969 253255029 385191561 455791455 262870997 274938661 75279456 639561909 734826875 507417070 17882295 401249645 348947265 646162932 109321812 47222083 133697066 773854619 632805661 122626339 783401385 969694475 216282073 509800565 680103199 432432488 562359773 141694388 127398827 504486706 306428236 10414459 629938582 688319099 319510626 587221301 233874847 273814456 130684263 552529315 520614130 511359982 651898461 805683852 851859090 931967714 280608992 82892947 469976866 575798081 895655026 718456530 862769132 944637769 760555053 789282702 833075231 969669019 24520579 15130066 356848796 817428276 516050073 718034533 987526640 346923017 163837205 633286633 207479326 484227956 839481752 872129797 136501015 383653739 397087423 687288163 296100567 175700499 283242564 76528916 661437077 213634995 846578297 95809330 285880374 784535176 134155884 637647157 915243560 757113287 900323707 283539519 968591147 874726445 445365770 962309978 769998326 872048528 913602583 199599276 332187668 577510105 151719296 457059019 990145294 45640071 905079324 847454699 274652984 22893762 816012152 666789617 286527374 111036097 68744719 817842015 284652573 665274773 795938706 437357450 400480415 13865470 674608542 890186015 397540471 551065968 252076883 848235730 332170884 290884110 18575568 871360723 631886955 510766930 14575099 218658915 528684300 418485076 977404146 259263451 260438765 663573800 44870084 762373043 264535611 492348232 830094055 74306676 181129019 532045106 739395920 16789087 903054822 942957569 306519758 456259267 809653882 98269028 319907142 376490874 697557397 901447033 697444856 599867640 110984059 978158074 62952862 775110526 847963936 254935354 527724659 788554202 600393539 58511681 456758827 76537183 379638694 184798075 953285130 396839579 344269458 588128227 791384743 265058676 902243470 11447916 445949828 695510819 573695984 864446231 929434976 174506446 993634823 513725916 130313518 938117701 805246562 364854619 43969679 656945803 216354798 66526793 907106377 453149667 23673171 804602428 690102952 794078346 860686666 173031497 750410133 811211240 524766367 955722586 779626524 806477096 203351692 787035739 929889609 493691346 727400711 805765535 808807253 650261895 820727775 254823799 694338301 30277804 671324103 489682503 981188752 237622228 13959099 368053459 567534264 494143387 476919489 331209976 795372836 715279647 597497458 347017350 963199416 297671849 919117237 973388191 679833224 529178866 117496084 203048253 691154955 991899316 963147104 364699343 799937757 673234840 630986572 949074270 933794366 99135957 734452440 379162064 130270044 122295463 345755229 940859265 833724870 485451883 472123587 82642665 152870732 737884866 558824894 854666425 855103818 622916208 660895147 231383356 296140711 979248170 690830412 951885422 591622224 442991460 904712135 154637161 751079520 77896374 170112928 590167733 338878782 777997386 826417669 853026871 41030042 668692071 443783808 368313277 249334937 213646683 680139231 580902890 81432984 287291905 699761980 36667324 594998433 34710793 802281708 366883571 826653493 649032173 646487617 40547820 710880936 501037381 561697885 869447905 589431348 150494411 659322052 75973952 733760833 74130809 141092540 170619252 285778188 946558282 437468409 118542793 637554925 257067302 854836101 149591966 107438949 183929017 149587649 488969965 227988292 625290241 668679880 329682120 811838352 377307744 412812758 791325360 472969693 507446568 863791883 819473603 768026507 105333630 214467914 519618890 360896491 671727986 937256409 411431287 183182584 108260881 678735803 833048651 433082600 378579961 449745589 440174989 138104820 258898721 713977937 179375789 813296795 154274429 809513797 997647562 44519734 589595576 782465199 506464500 775985615 726314810 462803607 159506890 241073482 984870800 88317323 366780467 74351588 803751174 97397239 97815540 651958268 864377360 265559512 853011723 775563844 604049376 663159295 230090650 154052498 678418053 1451428 92962829 248418861 463337749 674001723 757711805 81193342 934378650 250386201 346525871 798159200 377570956 602615065 157393936 540389882 293801009 56187914 871585259 943842127 109349569 205277447 592942091 839014303 293122263 448612707 334589665 580290167 737329822 682010257 332993399 689353700 748019998 724409488 742301019 624055734 84928129 527887535 806514576 204084486 539822048 957026614 671765243 681578438 776641732 630872142 483581260 159580103 107275351 968700483 684631493 150809421 869203064 221981989 612053883 88387210 790372259 414175603 829112454 938363944 54178680 990337025 404586714 886507708 105258956 17034093 352750312 792958411 640790611 539200583 86825880 585430715 682251370 526809852 677398223 479990469 994174085 255392676 978494944 716702879 1661154 522563448 734086495 141316277 525749053 28045565 523442104 337431665 950962123 537864212 100876403 259413510 12727504 320055216 540207190 405104596 796949029 415262709 350416620 913526254 428018639 263877155 193428393 588269729 733026077 861467404 954322024 900239405 851852408 910873992 391397473 136132732 547038728 515970878 393228542 285497667 599529730 721075888 121256332 216479546 551249340 322414049 399042537 224140302 388922158 608162087 703660792 809682865 181218481 4086631 831118754 576581949 345184524 535640939 204248487 67793623 257457040 426143809 614186660 481295740 394607684 612001978 155304625 27548994 517707415 12558182 474379366 561058922 422454746 474345718 922204342 469628610 722593211 199838914 692746701 28250595 837261035 833324039 640884033 821408972 56756523 777796062 683773330 394029237 435838161 966955840 771308132 827989315 574459189 512037478 675090201 315843460 71378846 631916775 525310261 229040361 767578551 116249838 929230367 203019558 976463047 707561017 914029205 239748950 774169544 317610543 584254600 63184842 217966958 82173531 275535524 909908183 326744306 512464054 358736343 567030869 650661533 253983227 693191278 992220663 639034377 21575783 924494271 973040744 192092592 554650000 12050718 913703248 181148076 485078287 322532209 845719427 81243177 782111010 843177112 897995416 496497586 58806153 781198687 935382327 780757926 64943349 657070602 980278324 276028112 419117039 383619803 463826983 471379611 603862033 35321636 820869836 21093999 833875771 306256969 492029070 742975137 746695811 12967702 331359783 340457008 655077755 92140994 401562386 772534426 984288115 50786688 920388046 398058623 161574955 557216718 720288811 625525844 630376816 229039260 871974158 328103783 466907477 779067633 994304309 271539575 919119356 574512974 342933875 860487349 251230778 190696746 77235333 97529219 61085494 58321425 153863710 995096287 821454233 881625476 726051159 26798438 815251415 381216054 688050706 636430883 305959108 531567867 698742924 973787196 134566606 504648836 509895830 694200989 304949889 649773870 251524915 708025333 855768473 191555364 555832938 703807322 938293507 594693464 860577845 236604429 845463664 168604863 283054877 963322063 305599197 605627027 67322337 437015496 924228754 939229098 832336702 252375223 647001979 856549904 610363393 467332993 349936181 490172099 987234222 430922651 475506686 327309522 326228773 437923712 848351726 711324073 166496977 416509456 742928868 570873007 800918097 878637052 159461208 604584474 193403073 213325971 896749917 685197703 195962807 876669901 561901300 417139771 508148005 659452744 967585551 849294267 313879406 877559525 817332198 67359397 325832179 237604102 758211693 125818983 292173258 911454369 262229308 716965846 571903069 911170637 887523103 536799044 476959489 54646992 613733229 175869865 160219544 763290783 977283439 73610568 846986842 259196422 520899284 750384820 698643993 5156905 834754308 224394535 639039950 436481600 317188198 461386395 172429871 967672603 751514948 492703946 982514498 158385584 304535525 375202702 251393042 86401520 456473565 930773456 934900916 408562663 322925307 518078851 270309482 578177065 732697141 596097864 142650485 158433661 933265473 392378788 869876850 482696322 15153536 924257715 7615643 965551234 223170611 866448096 315886798 423548582 469549223 430979959 69837658 997796220 123274341 492689706 784291004 840144563 366420859 197056371 973113493 833303931 201749918 365120581 348422660 15474831 659126251 241146390 275741264 230804692 698470123 357385187 246204649 561630668 255038920 999661872 83948243 962483673 790078613 373364550 441946316 213914161 551962506 718554694 364180833 949008254 587572156 352058351 317886089 716387373 536251341 945565377 962965420 791399685 304842853 44979554 551284844 924914894 665671465 203465648 23563951 939201331 942471308 168619796 42348192 590035837 559343665 578767227 710056516 365955142 688929454 985576683 721945727 136329230 785356229 175355971 688424824 864583251 573103297 235613059 615736442 361356096 361301366 65653729 781361670 516499145 161629267 930957539 13361134 207751764 87658765 660886692 214266945 449893296 663282988 391028527 136573609 861478630 960179739 860163526 40638853 601631455 171527039 565173824 690668204 272137117 753540342 942541560 297680331 507055476 355198424 446758711 774383452 616494145 738033667 634785712 551226626 23723006 570159657 327060234 777021058 823458415 777976562 843506393 518949088 112491898 180784397 92654907 221830972 889890221 313670558 215343944 55668158 534532015 656934034 248588180 346492458 199892693 333954630 92436926 225218985 482437858 916163602 125606920 312806464 615076690 459817810 336716395 424325329 155238830 275249717 585804497 305065941 944432304 833617947 170813605 729503604 237900306 781550473 664339102 436760468 79606537 204639690 896769645 156645016 764918969 77919398 586451745 517217241 409214285 948408400 534731316 46597773 213291026 764890651 247734742 345756937 708624604 510945213 60730846 798549276 627215832 523558294 227179902 150870121 269632810 448572687 470495970 837391438 761568588 548288971 257588954 594374029 503463952 508571948 493339150 587343620 896999693 159849817 52089334 611128091 427834570 176270605 347777680 454632090 953721814 581895867 405394324 572816302 238530974 360649699 697194553 518205561 541991853 91405321 441054796 705863307 147159661 83950264 107356360 145415866 936984764 595744633 373783736 487255298 59118712 506052747 396805357 254247781 777815823 304010796 588393435 682828855 826611566 301757267 514243795 326093710 749729370 711762250 100850000 216565987 765643905 590884312 358224535 309514065 173434325 34061880 388732082 236749565 162834788 789910571 459469827 980105409 281958545 594881296 691047241 416325736 747489244 192004953 57125460 396399003 974345143 693439922 360933599 95201911 606080650 858861728 196508041 577165948 841538778 178947435 217748950 46292870 888644231 341069518 450998431 828013558 356168967 453759207 342991738 412215501 760217240 44888980 139094745 310397485 363037471 322635024 122820206 51456159 941296376 379833340 746331037 539983695 840170525 558030693 260290382 181854917 950788327 577988753 586856800 330201036 609793277 638841211 861120425 907095507 793646238 802548008 583137023 87949330 202501993 453078766 31294293 617574453 819744314 774352147 899146207 478816224 698475635 269390134 394940660 354921138 309126604 78276967 846709834 693971792 944283724 56354011 868462747 889933578 175597612 809708682 989554341 690855876 785438702 256484438 196824343 196178509 837759570 128699848 97098074 48735468 549277784 295196697 863631124 324990255 17703500 161860013 447340714 991206052 374817301 412577234 771663260 391740870 945347162 340671238 468920586 704393646 931798365 911998759 781109321 354921480 855759468 869945362 738710451 576664228 907535901 396911902 664715003 853853019 49394566 135478746 521988344 559968408 444170037 282828365 415896063 901119678 696770748 766040485 471777547 397851441 390385329 755086363 618141893 446645075 436611053 711423250 421895855 443499719 351778549 687711864 210957264 670299222 547291088 998645577 949481758 451042286 224429716 437184993 889376113 5615038 745966068 167592681 269627228 597645226 586257320 149539177 591380222 88568504 734838096 303680350 106039181 355491265 938604871 318563981 680618181 163552238 546225335 159411662 501429354 837591458 340859990 129306301 277783498 912423575 420488828 742645889 826159840 804608305 550729102 110087899 833319557 801820426 770796876 943959043 875801829 626814553 967426840 562665013 579445070 437350108 398304210 985050681 510998582 224854184 543213045 179385857 240422444 649791303 96621170 347104017 490491324 877789567 931967865 773490986 581693949 473716292 508921095 284129018 464110634 959781231 823870686 148021181 579922822 172045358 625288524 418339881 507023128 484648078 4191605 103518510 484469059 39541275 48725099 507837677 208368266 650773277 151470030 459919441 966716629 27991559 770571483 456705061 646501918 448830527 963655832 754223050 209903061 620830890 851192180 527899612 330925987 532762134 192854644 812559202 591060464 694220083 780341596 951724475 565712936 198330891 501734717 437359829 473328388 715030546 926901725 988464283 482137673 871567944 173157272 578491363 224325984 545185278 733339629 397418632 492811153 239699865 171815860 515786631 548806319 198179619 650297643 134905526 724803220 291744710 192264077 464235145 544608642 521695295 799943100 773084774 499888522 833595707 920202241 169198945 597589077 694841600 354867674 514745824 695918682 73605059 563535280 615768536 944334089 655809808 640392392 540036072 776590677 510704159 575933027 682771323 422177672 643706487 394267753 319306024 874100326 64869448 160698690 755425825 575100431 480590899 979859836 45076009 510710975 565078645 132642992 151809957 521147683 40232287 829595338 250489518 854081327 259861404 972327456 231826746 607985388 36055955 611327344 289472777 265412431 911809852 648066946 30587031 126671467 272488082 409213419 307232020 256581205 778818108 348701182 852639305 792936243 988182938 640990036 279700914 546702342 836394883 831256651 952448679 960263870 588945964 718337265 619495461 444131014 630721977 332616746 496919907 827647429 852435049 94195050 360030288 482497214 110310393 55953281 209222779 678602055 684240741 23044416 534244625 678222000 329075502 291880768 129450461 326121578 307156574 634612189 617172945 533552788 431446364 983066001 766280972 379792253 897852071 313312313 192945247 300714357 196471502 390471917 735476818 529552136 502670382 339360427 216544751 101393936 700751120 940374495 442953726 2633008 771403348 289448876 990872556 811393479 325483330 289636965 500199874 337780793 204801664 282423811 267461709 542724422 298129998 435460879 314511714 927895640 201740806 528272215 297870073 748399987 933158914 61547191 15748073 895295843 700931935 507936855 193311198 400216609 260982829 463429923 761311507 655409689 457254748 223347376 148120345 557276340 949471429 644887448 607200029 256309032 5889034 945572628 83104107 866482281 601026660 136942497 210735275 691207388 434254653 128389989 205452504 345863734 512656363 290731058 950091623 506828697 406992191 512884794 277666839 558008615 535990237 136296219 517464102 122764627 696884456 485150205 341631100 544959433 931374533 127002984 344631622 873428822 278200913 591301709 218451039 514132016 196853388 108283144 783470509 556358104 226897897 955360673 126380371 740931294 762317005 572934130 251260079 813530864 511192790 877268473 485030489 137187586 496480126 175207306 228639478 639448360 284526649 93146507 636874406 969826303 917867086 685841908 181208587 869739282 122557411 661768376 280594511 628502887 35051373 561853821 52658061 313030069 992374528 649627263 511502779 715794613 239152567 543814818 972144561 784068372 675084691 101382554 632624043 264243877 176303377 881538765 754909416 115052512 37760820 127984939 429822718 307097229 328816234 179144217 713329698 370313811 675103419 710166618 194399440 636371986 806028226 153528199 284302251 410295083 643677699 900598848 963382289 466072873 220436498 271251158 517667898 216042199 555942236 391790338 454004929 910324491 619857592 20408945 607485492 492941951 142260635 313607105 7593075 42352417 115098957 959654958 890234675 957041636 340491085 264677532 855463319 42171893 334977287 258342633 500312338 26940723 419292853 793363535 394047713 932342208 268890329 49186164 952594729 415539366 761097653 626437542 616236310 375366167 429903022 962350321 521073868 580671528 307722130 153202141 29220299 400507320 396927440 809435840 883326374 802807229 10019046 586258024 567289924 271967381 422484844 184652580 676581902 604771985 705363033 206764360 287349875 549041013 456541915 295830644 448483621 870052736 989891669 68204485 257188340 744363461 132242856 71443100 326139251 115810621 650554064 993049513 89372034 260366881 362488841 886632639 549476183 513980653 388584773 32023874 36751604 563170338 958612820 606373183 560709 725127602 708983267 234358373 139328775 304942795 445714296 241276278 655794517 396911382 302161581 554328619 607578945 595949403 898932093 672338172 761324485 341497892 433903483 381094867 967561458 987905272 129900570 262887929 733992591 197533977 528977346 811178411 303019874 568214114 987148542 326199718 286460962 648210384 164942230 259566798 890134755 129778073 327991788 829572213 485162131 252726075 571421909 905048209 639426665 111726861 823065543 110924961 295583087 410093811 357112541 857414793 446688543 56616563 590249707 379543467 354679409 89885533 862200154 136471812 953617283 6211013 77508813 794449095 629499200 800584031 971440249 653383662 527858444 647706850 204423482 442717080 953524961 10665581 120615129 13308352 525184673 18848978 581305648 78856702 47347436 776149323 582408164 540240765 582126251 399151984 47654399 247573969 341756015 18844415 322750293 157834339 587157118 492021629 249065473 33470919 535092142 110015109 376489511 439323437 225948403 990928216 390955411 539194185 45538076 369754759 4759244 291259161 36682321 72921779 711375274 654903617 755486543 400209152 884872266 327002987 426601124 708011950 679645565 322376842 746366750 871446790 245184077 61382379 885566140 725201187 313910515 48508196 686369099 858255254 510640436 347104397 365364388 936776311 828229131 646473183 482375156 818430870 757343878 829932589 831254465 75793619 998017906 315190052 245243109 615193228 438175869 837366341 963363441 240813996 219750612 569698591 8106918 195924356 637562076 416587444 38736556 929060617 555793125 766635223 700097335 552628645 883508528 678684055 857145629 476062834 325676570 309713752 72666477 906043905 285977304 265604205 359733794 446295399 100520655 20292769 801808515 877988995 412596097 273976506 251878562 719887445 619058585 302991727 165202241 459539422 709731492 167881010 321531562 55306308 500927073 151321970 549901513 236062143 699136350 236212910 433108451 995351217 657926715 773799336 606758367 789460775 348325918 904527138 203110191 817493447 730848722 604341785 315583113 272521435 628392873 32059775 581817881 940811389 924897550 430992967 848293839 193854920 260205355 410754211 542070444 193172927 234728523 391056773 289128642 722548773 44677404 665029697 592599144 529314155 610281951 719109387 456048589 733860815 912805041 902577312 437660950 9316167 313907031 108921513 747592423 994864394 759726911 869912104 783547180 520812770 846988246 761219313 802147486 998032230 409759358 588665652 945727948 959595077 835174033 178177763 170736314 645174013 44780040 847526554 937583300 33880836 344093082 77390668 375345204 58335274 710460669 782719859 677335419 591981963 606135445 631953338 422022735 858906064 21173259 70541352 634400477 729020278 740908540 564947410 808233480 545450446 966021041 566329980 892973350 721721323 112534559 786431378 496350251 758345536 360971696 266156893 275823334 687925221 923186251 958500654 337907471 500620588 253934820 158304058 46753814 950518944 930336022 969517562 959281835 622551213 162344937 760318731 583707455 935708499 730661801 456635831 348411390 547841967 949666119 927484591 645268759 526597055 634752333 883320987 336322434 98862072 118633914 803990640 664998557 407061363 19592902 386748432 581689654 796734422 898361717 646133035 768980413 7107744 634291307 642980912 223333706 584820686 933711932 265075909 422778800 878871351 637786319 947051319 844766456 784163050 727435923 64783454 623535999 583483261 276674827 652324400 514669198 280408536 647855622 56984586 63366973 232602136 967524450 985283633 483340229 412241545 99545693 256402049 48366575 900471339 637472152 680455685 767681652 967659861 249953310 422272492 724647736 424737943 507096601 206998625 174197695 470667505 424972401 429712202 767978599 115645 507587673 481706942 491617291 277915446 76969260 905854629 461574172 613430373 340995102 723466256 688476215 844593663 51152960 46222053 823981386 519913605 174478665 245169585 178175080 907539099 235021533 978765254 252795932 153326983 758333040 469166710 393329957 863063047 330822753 533930609 324243811 407521669 697852704 852267324 112927386 343496605 491028795 791958500 496237577 220561897 129362555 18482296 462852685 57379639 395432133 540049569 464881522 384433897 870667308 770395716 512321964 629443272 490963978 453761588 29500454 719023013 501430688 973109420 628034372 820355071 328710085 863054746 963220821 797913182 60384891 587630822 753666250 294966120 585404291 600152942 298020084 844456225 643325065 783449445 137719443 158124343 394498090 333706798 152707927 85855853 365326765 104643605 792505501 111334515 527668029 259625847 475985982 377936870 577331414 660888101 929985674 336140011 867492613 631467240 555970356 207201720 800510521 513038576 720671622 47025431 538373331 545153191 437378351 934465544 831925502 729577359 660857948 876571525 508685416 976537963 589156209 344904877 275163943 22604451 68041844 458595526 103714647 141636466 233156612 746085656 190608231 455465127 80526980 212418624 581069252 220527449 247055365 224169697 568611288 170378093 813488568 190231504 76711523 510484857 643563553 351935744 933839966 750466075 6317203 230440035 160649569 812282444 762360619 63900327 894796152 698657044 320712446 269354919 841533198 423921572 352129800 707795810 273050160 347057190 957494483 252545210 505922763 147186314 565582684 957560380 820626796 383849821 114720354 117347440 622605098 870723907 674860134 851423846 379060110 930206546 991456818 13662074 922695310 137257422 250903721 752931330 141194521 85370507 79064526 163014783 156583388 118124889 668267746 9147317 634381327 63692858 951793132 908998113 284020248 861897372 766743958 732389357 599474795 712781449 357749524 714309518 795156113 370774452 796873771 425179630 413424773 405924244 619983618 426259355 638139081 622780097 757482378 248261501 370079814 189571053 295098107 139605132 949854584 618511401 959570319 613245790 495087598 494532217 272840911 774852699 127723857 641470129 204366355 48589775 682719290 398848433 700373112 876701010 891440075 64360857 252069279 773997030 892568312 584392557 207980401 80879537 891707469 880097173 461155453 989165 478955986 250283855 189027477 195074600 680644088 974690572 562608286 110533199 298616547 36736910 345100679 974634481 957320538 799105512 662428961 995984488 50202143 624294458 942132028 96065617 850090005 107272178 511970776 994861199 336746178 220352351 808328566 346763809 365601225 52623877 330892268 673076207 306964863 871383870 956707348 479180045 4213289 15688332 816580594 659991508 963709301 632851568 589875490 320519122 865801891 567201136 739886695 195668965 845603885 551752281 278672630 599799953 646736382 203617848 719905471 693958130 641376590 935662414 530755749 325805181 315221048 483831447 674041661 397888564 802287544 870902780 664477919 344372976 764257911 182153168 781623182 534244596 529096232 130009258 477343055 702694866 953969212 338311997 374816350 265525010 323974382 447908318 492866976 594467786 744522873 595798108 762135998 580290191 774256986 957762478 873139164 687092611 712408838 670838118 691735725 732631317 394176061 328554537 206614951 646962788 584281220 883785177 613323067 326019739 877084587 989688354 730875742 3948004 100175719 81816131 381310940 72250974 351124111 174179587 972348599 4936507 210243476 610120941 382891638 914285162 567138266 582199378 915950971 786260478 720993088 777859827 822122968 885444888 542015550 586203157 336714378 707365210 954463117 52559556 972482836 127395110 375687023 793130386 237412550 114814742 598264246 681854780 286374073 655915514 83369880 920844529 429247132 117535450 824526190 77659345 498670236 247584493 370731343 635964421 40060923 861652392 109103490 623903770 797126093 291900710 152132410 53601025 715467576 142392685 190941881 783373613 269148016 202087018 645789831 480975706 732619235 18344635 408934061 443918794 252826558 427621550 593035041 320506876 424473406 248800367 180033372 789789134 816617651 135250722 61136557 400357284 129055912 128094169 225588699 869600021 653138497 952541919 662534759 145798294 888647878 232385777 603078739 64769951 842392760 942463852 146356468 761107644 352172188 127376239 126524694 886231844 927661160 327624062 837563244 947214031 74492766 683604773 94240689 533810020 6400937 843572705 978585603 376408001 290131260 568947049 905738614 330313479 777800325 543999021 390501548 629228112 9500880 852523160 303879370 944755331 965711179 923610408 134765688 741467583 776602848 426107750 59348860 928557485 63286543 520032656 841393461 420575643 723437529 705287504 126396709 568831406 761774837 991614146 777823515 897313165 313996838 293692252 743482116 854567407 21992700 477826488 66680589 24486767 351385805 247034189 86352585 158252212 143486277 538825394 92277253 584113977 124732702 59443908 43925905 951973517 33746165 632593410 76650348 192894662 100262786 81683617 381707724 133304752 192399749 670888 980672530 99420373 680066022 735689356 299467640 891950685 950642362 761388887 935758881 320582222 389353343 606179937 731951310 132231365 399823240 714381367 26843626 724738585 19680015 681085902 145167100 317441422 464892064 294916879 500897488 688549044 329287434 572850066 948842309 822937444 339151845 133442547 334257745 615257387 58858649 938286769 910001043 937010737 685917730 998380795 546562966 112804089 377718886 24300781 269980035 109587261 414232176 458102005 932863515 788983353 548187992 43147270 325312233 540432905 950220672 577414206 499268465 933259035 700839235 560561334 277015851 996059354 418430829 398475603 883653419 737458775 985598938 665012091 84996533 68749985 835135477 129239448 879888457 538574391 157997796 213433655 718326587 873413864 318678384 613018447 814532360 984435687 724514588 670278272 457449018 65910543 270989521 548551454 581404778 302974908 400302490 908549287 140870981 978452284 486123667 106110192 19974165 799464390 663658460 492209946 578261614 411086653 398275227 851845432 953019578 335219912 123449273 106205687 779504920 248533437 155810192 609918075 107971697 443481008 539663107 124390015 908143716 468713760 518770024 927887089 188188660 132622529 215131162 135175059 600437547 480570765 129355999 703032964 473520440 624766487 607833989 966727913 522724998 906308933 799727176 420969832 526411520 78028535 263333843 477960806 687211942 362349252 75578994 158812855 443643246 151655654 555100119 554268464 442952564 795838031 662952715 967607544 475929908 236327089 971449913 984220950 875137444 339527804 157764779 800900780 396286987 313967461 61492010 387953949 491669288 974484500 797430620 154455663 552280216 744664017 887144809 142910524 109720037 516661405 845352312 866644684 978462714 194139937 782047092 747790484 636090945 7700829 590156446 782840343 205248506 195141698 63215955 759224119 28146578 396427634 7516204 955137986 343293732 125579461 760830549 574172501 570334373 933964211 950722004 708131920 104339272 544801627 291304764 371003315 499443081 876637600 9227270 264899849 114319016 265420153 499094748 118793673 579752818 231176954 958479039 121495819 97515401 780990993 151864124 566961319 51383120 213547975 772220386 797626358 33664704 162631081 349447454 385903915 131522354 930441379 861248429 697501259 705356302 9851842 720360765 827609010 342928490 358516261 21344249 578929642 361864390 968129905 915749394 136273991 447141560 684898662 331880280 79935108 692483055 975635774 449855235 11839816 365949646 70462206 211800716 866485904 792572052 655832883 114116190 533469089 190930469 468805163 44051981 762376588 334864941 799606494 715697974 610209474 573634851 508691069 863594511 579334157 161642441 973524721 863937049 36368640 765942365 403185784 261931900 664951785 741569204 809053687 386920544 173466902 157960009 29849203 9710871 631350909 558583485 88702666 584837416 648783393 851809766 919402627 166211071 522276257 270194209 603083424 410927163 746117651 369742238 253384414 17264999 239785211 398587721 468745581 487952749 387830412 840528077 712383059 680691537 46817044 782005042 173362081 355862343 17140330 408744656 589381708 466846761 380096413 486706662 102865818 767601759 985789177 937765188 376153037 795696120 507921178 983062183 175697496 64022396 892882557 68048421 572394110 626771720 212800979 15179551 374562909 151643328 87283741 616973430 11598388 39350637 666711326 121214935 818377914 104931452 37293809 491164239 127676146 180024589 694653814 270585683 802431483 382911412 70784637 625054048 569792827 907110006 303677242 457223696 598418035 737743504 996655720 411948528 395255558 668684301 277242900 803044398 239438874 516473577 119736567 693560304 212092151 803105941 318205843 508094787 983882980 727259919 897586232 774742340 164393543 515785849 786329978 966528689 749723289 879809445 958668698 640125487 561048816 556160528 195144316 294965082 628241103 618332308 494072229 275498781 373770356 123154611 1587574 790440336 504467076 861510279 548325468 710156955 265324151 500191641 415473125 881722150 602833061 555375767 653288816 202974809 3313376 836281270 548626328 826616819 825780725 700447339 141900227 156997643 724040556 906882697 598242328 69464976 536193594 251071937 398781407 947409103 878727774 358961305 232927054 878635492 591444192 220826405 911932419 471838134 587359605 139706339 523476500 804319390 134453572 533439007 566985026 474013931 782182898 274508312 1623718 614414158 496868055 356009903 243144083 429936428 149080901 415498102 405635332 308021923 390457968 782966209 93155353 627040646 846216859 455654896 401179759 344383326 275839435 189026936 91073544 246518834 680221661 58207507 225244201 900844146 831291516 428576512 15173337 120374263 455414058 107972829 595346382 345425500 928590905 721142577 612606427 659746118 250229957 991270 239985543 697676935 687946759 608616547 368147973 876372237 394515524 952760815 163690193 577466707 87631877 805126810 279491234 780739483 389958076 176587591 697305435 872722010 718060694 223832072 915131589 396617422 872389762 27419733 772825188 471954961 189992217 457201861 778424500 511765280 522827881 953555820 367889475 3097911 919092175 435588472 801019981 766748439 236170672 476490817 708967489 585347938 569331436 629370320 377836301 40215333 664724999 500237567 710462914 195910796 584433635 900500027 435318890 871574307 408087964 204704222 243868322 547884461 467442862 158343668 369382860 748060816 758268412 850503574 866930773 871731931 373669154 39700077 943891192 195249004 252303808 650499213 53528870 932575864 395916277 214475685 228187540 138753897 406594577 216439279 99273238 173063626 200965559 129510497 517801665 401924773 134165147 397475821 140769941 354842830 542858072 201944248 798218417 929091434 926850727 885388372 681100957 155666133 535456791 340769482 817317832 97140384 123581417 530004859 986466510 984711515 701034800 824450299 313440137 243452152 802514676 466193967 276384663 242385695 162520820 496398235 287533411 163756763 742385852 681475820 749999475 65917884 340080312 583467955 593352612 469650025 56170570 209926004 462650879 865778654 159336055 43742993 917377275 901542269 634541143 685332694 388147919 590609697 967682300 552858829 519080069 494896345 788124124 776890519 37773211 574078085 257121557 513510402 837653903 707359243 911937881 806205175 811407213 746922441 306829100 576539231 146578873 635439970 589274856 749702656 641952778 415145756 288191478 467256451 753022737 856333951 206529915 757765624 100177208 55922999 22473282 457908659 346352839 843457290 703567858 733168213 617667973 791515727 204445464 595151746 807274593 187596729 718932288 175236285 769430844 589592495 944919971 449889753 486533959 421554184 234820850 43135054 148028343 695073077 135965704 352211793 916327459 648430364 477759701 642090363 271454306 389149610 294027761 304823512 371179422 414653881 734451144 375910505 849913204 105971173 334539439 507859239 732896901 828099519 913538449 780634356 107773190 488886653 199487428 649771050 439588687 113810087 156828201 539436400 807688967 41917395 40208836 745813052 350442039 777880219 164704432 753712826 592624290 755580694 385718240 158987935 564661847 761415207 877981107 323000128 935724999 466422135 814819499 524731439 199874115 829360504 331104491 114029952 477243187 846831811 153726108 398552121 237068126 594446158 375984282 82481838 843384442 435335947 735281566 917619876 684675767 561225593 872886465 963928418 336014885 569589754 904585183 430833440 284873526 322960775 530458519 184322686 981568985 342740637 381062141 58314180 360892553 652985063 198563221 665700442 757275755 56288537 371041567 986806102 878091443 916635656 210825321 765840647 989096616 390172531 676872122 90083296 139053119 327706172 368665394 950620257 31492815 41041093 175344881 944472746 592322776 733291495 630251728 51133799 65279679 28217516 198098798 910986011 884187683 817494103 110507796 101337744 399415132 441232764 653839494 886146314 289048628 932266476 83431456 698312814 695249065 36615317 766385887 629510779 3344767 930404848 343196888 589036795 225649283 868812173 690910816 385319809 338230734 445661535 124995832 289431862 803739686 380070575 242858805 131403639 126502287 377848895 694550850 980093387 508571514 449905210 221850150 95285989 418974691 505953480 727222607 265363367 670129472 356686055 868182605 697666774 886901194 198840470 223437683 123957529 288369134 64768089 909396207 267187879 701390720 379444369 574953417 715068186 880762293 603703698 526268871 942888252 297716002 513148602 210585305 536026802 92968429 461214598 880122149 940610204 478245649 112520785 580625861 762393656 410383988 667604220 361057453 490604963 228177614 544534914 427167399 984286978 628289704 949546176 685246899 712424226 605286069 417522216 574715993 21222883 188800649 367768249 615004679 40583611 998693001 916638329 364720888 267677493 353135346 949225406 194935119 326961536 739447936 928475827 319918922 428006576 939070709 316186024 846741844 360014296 822480613 269866749 173522592 142371145 346859395 942700795 383358479 978372113 584952099 333684717 497540423 416116388 72277978 424287647 846548041 588558048 218161309 331875066 511766013 319352211 542662835 454218455 994263329 376255514 592755628 223272197 412478018 475303262 800601 954336884 268054280 190992225 555661572 904061563 289758346 372330791 675567045 277104163 526442065 400534959 702829308 397862096 127217919 858392831 144881897 893489245 407297679 628166669 945395 185965964 367473868 962996613 893867421 137318010 551020642 598266027 794992831 792592821 75440574 715256134 159067425 94828768 984567632 687040534 691132881 976195612 394900788 677005382 606639078 454373170 862267549 205493539 170283879 713310713 67111311 259672547 678227952 478961621 401185809 820677817 194805993 859221790 211229175 487142484 608157263 282214183 646179272 219483217 771132534 841328951 421792662 202554195 568098958 455200625 389283973 948519877 895362179 856365214 408655034 200818543 727967902 269456427 433960804 588144729 4679714 850293967 194313465 475569457 792000030 350004321 726193110 728612986 27153597 224257880 207076539 829656108 167240312 63032990 511807031 775588923 345026508 803942291 299353412 582610181 484352669 561941943 336591543 226806875 167285926 768720298 134385000 599638865 26162563 873833147 504459975 559319403 243262284 832641916 125445037 823889849 352786871 614301325 821135438 541692683 779973884 215769034 796241193 449468281 195599140 872467388 337746481 847120026 46260886 462818129 992310810 112607473 296287877 277960522 527143591 481208248 126992937 582518932 385095372 780846651 635925869 120189876 922203510 783957724 193253287 468638415 874741650 657355030 409659724 374388306 458586331 928405779 728232882 204436356 73737513 76036221 971233854 768132389 561138112 130047821 957702525 998169962 379374673 994975657 238880889 82013435 970918747 945798031 193205892 969634716 248943784 284446575 108117489 781669084 885442040 297335375 852516909 534711770 334227576 126617893 96726903 268182240 447246209 306120234 612854961 988953324 761059929 246324862 971467294 836568174 247275150 914504303 684713436 516806136 529757618 986001722 597564211 322696809 214443236 522215415 478812160 900229959 855578280 552018772 106112350 409018616 796836680 705103233 449330850 640859104 105785349 661154159 716280634 944569788 815107858 508495875 498149717 198009978 211313251 331013593 361843416 199066912 639622547 980827519 376706035 962122926 652696239 599010383 203786511 445488555 927935888 20358859 981119365 238582037 98420368 549053585 174386565 133644613 731197649 923573736 702391127 241000553 788806513 980351048 287842709 133839238 493280977 229392679 617609027 982933763 553893752 742800121 595082421 114776058 939646039 328796844 967956107 113276626 509691159 63087207 292291394 451888329 396520296 516030408 610545813 587015113 536158213 312750700 67179005 976103036 394535752 121335681 637562957 970615138 783033186 655697815 694850975 893633440 737193773 798340910 210520180 330366734 223521293 657755827 445783040 353521488 846279552 829867053 218929198 955849971 908514603 584879840 737072703 798615977 389055147 922854202 198973692 644017470 377054141 849936674 302964216 602308031 253724853 815605959 349459975 531042933 436944022 726617638 948291606 70554761 111645982 825116315 783564074 466091986 974704208 151409413 4344875 620335693 780476858 226467207 765692437 384530793 642644969 273038344 655971314 219020052 831058993 683422127 699852669 478739628 881987064 621062110 399080479 387792065 400033926 891195691 817140438 645321914 403565614 361995540 770517506 333516958 603593971 981441335 362303812 437378247 571493784 348021529 282341505 278383906 837709749 334571857 367913658 389844461 347033122 238618623 313466079 364084445 310784759 407558565 676814843 28749402 914480100 688048805 847679255 584787159 445540174 796245477 557021105 901621807 696044538 994560993 463899538 473300848 19600654 586163617 551064796 655725829 80769055 71890606 84686169 306377398 653586649 754869821 737788694 796277757 575647204 315668922 413342113 206510313 866605149 793800995 401029218 585529879 868852655 394813171 514305437 209299242 5094339 213972052 407980040 726464288 455835213 182853438 968829104 320591971 995841704 970090754 668208682 701080716 721867628 623659832 537992102 473507115 66901701 784891396 337664919 179901809 983429873 425855287 587548688 691270959 571269651 397991862 918101244 794456110 221460386 668028739 468342757 879792926 571380892 877653041 608229915 375315365 883840868 868146538 174814363 253799605 226457748 978353551 751313595 650541402 231108061 925373769 588478026 311405251 938564981 352165284 379348763 327677841 449866671 738528374 3850842 285800181 278523894 237787015 7436491 206461719 945868341 219836420 847910279 995101182 91805429 480905623 195175475 567740348 676935522 271002241 44970695 546396670 644900839 627680700 881643628 231651696 23850583 487764231 200041195 84103503 357265702 651131677 32381529 409944103 608813054 150594116 372406396 507526931 365145719 471208161 27801426 38797687 897130525 454690740 606866312 450543358 956501807 240718235 804838975 212547821 98686775 555083519 500972503 601225603 509382828 825946104 32923422 401749336 625082906 130382255 862716892 761185310 842605690 999812541 344716511 690694540 954012242 766799251 52135284 533107852 889865298 875425984 628745872 402704372 203221529 155839119 749876017 344108019 991888775 195493262 800794778 722187814 501160906 506116585 675623383 252109181 591572783 157748337 806609333 807119133 593621699 157645474 542729558 785190088 191523297 410612441 964200830 370420348 56188375 941711879 439514766 296446115 566956653 413144454 177907083 43216267 245009178 570376630 604631427 142996816 968857618 149899229 613411351 297890945 248064373 161717955 281130307 940527764 951045852 172806890 358101484 695226075 407149070 174559392 554169479 426857374 70409946 64606879 810296716 973381412 844855555 288567273 170639413 45055522 708057643 952467877 524256384 433512270 49615813 233038129 530339210 910459717 655851693 884205736 157512741 833099021 378218577 533683593 499392259 128891427 604788304 135925198 230097116 6596400 30136079 238271774 509366614 861868430 341063446 573689317 358929516 734326555 701605928 177115049 957332817 306646525 229533899 815910663 542651915 80250875 129954984 733331432 292808404 202861119 419807644 688050338 445223484 916640654 302913847 51240337 394812299 430149164 553471013 327250708 503439137 738898176 501125751 617250152 589637868 807455601 443963045 804078837 681132504 520904379 726910014 177415557 528907479 543439753 888344712 76385276 386117475 327678567 747619304 358400888 422616856 387051516 196962639 230131289 772746380 291917582 871005791 157170509 393186188 452376389 869403384 382295375 154753401 85969672 643208178 882911693 648032974 134618830 811191168 778854790 677740649 605364848 335352960 101340026 106182682 70233128 34910310 339753807 538888846 988877813 598550851 927583853 325381584 444599167 693797188 805694870 174998704 248260347 759559832 832407099 573420724 675658169 844813099 926599583 877515708 157691974 354801171 843928196 972022439 442164008 904639842 149073496 640077342 571236658 896907689 582430862 167192221 830642324 421507104 715851606 998074770 790974386 550693325 155887575 122450876 725116399 161294754 67742806 255772543 45498149 174177771 83602451 873915306 689787323 263737471 738814189 114241562 907816495 847472795 95203725 581144954 788836289 367738470 975570565 607665094 746847317 223859146 206404232 873266847 785398630 407981929 22108378 827479843 156310256 870663583 114813846 433173035 803011658 718216213 225482598 494915393 144443488 617810922 180108330 809483646 284430685 588884556 226355495 311780714 189311867 956614644 633035431 767960571 110559698 393863295 51175060 336007698 543581891 914037752 981509089 417528966 685861716 927985544 539388354 97910401 766374334 329539476 456615976 788540128 825184010 975841316 149144058 559150006 181896054 124596552 37196522 980759455 708822370 621109185 28591210 12329314 784394484 696896226 994882119 649043201 121139338 856857153 465184887 509432685 297696322 623329808 922102742 906717885 571913299 274226393 354498672 396359571 177854496 959492863 864707000 964758054 557060859 554336804 452457147 782882874 844360499 354477123 121679094 531146826 514455898 917051892 580659184 74739860 141743378 71978748 149996038 361336660 631803289 393701063 388586032 270688319 251834582 455584923 968163183 79329657 631984768 754078757 913427430 826189414 145790035 361852804 785357570 132545667 490359683 781827259 823385336 312634596 466600210 294151684 429582724 700201474 218578535 707798712 308390297 151094349 448367261 727977199 814807065 925098103 501771670 992843906 140291018 501800500 817696002 252952185 921352689 484208525 481992837 585456052 271198038 843902492 684393480 9405939 911898721 672164952 330057478 610258847 492920736 125252038 183085534 867455317 367554645 809288072 226768543 309492310 756040955 232050861 263164913 661434561 990304324 711035353 900750586 352099000 880344977 309417490 765650135 113997150 185283421 766807300 541592408 501748418 367616993 226061169 453259502 366665782 986172831 325471166 803507179 314188201 712512519 40820790 397032278 8381993 282275768 962380533 562819773 871671548 5102227 71468332 301897060 277977821 678437348 682301673 262814418 472701422 920715984 965128785 517563067 503435108 263828161 611915370 985587943 162101078 481605625 907855228 763553733 892499860 857823887 775745470 773879331 433127398 124482249 695490050 380105854 201298790 210220118 462720685 70975226 410703168 996772433 916448411 429033137 600676538 486722129 612186336 275151012 456731834 209660966 458193994 683199532 562805922 925676359 16972082 157779922 20745369 370702081 749481014 653321816 36405903 926168861 705803178 505403068 821628597 588321606 445744694 216094889 561436060 225578648 762883690 625580756 843784623 775528451 19391512 185374685 400605717 613716113 927082306 561896256 495621744 712183865 806977581 47646086 145365007 919895059 630312321 466806237 416984025 428808406 411519796 175719830 112758804 650955468 948872902 305734807 387659224 184803715 104084027 894467971 855485759 292133919 576463665 918158421 578720334 814437799 531587702 994827826 228240648 262610765 596158582 385056510 485762178 798945843 880232116 469955980 666763182 621595945 956555595 239337450 345902546 206526452 345197581 207257849 614310192 238826384 821190081 846629325 627351049 859249855 378223676 633705586 493866003 786360922 422155021 199120981 593716092 796258214 1428623 821333008 761702213 647714260 585919305 260163910 150987974 56211691 497808408 595958637 641812412 390652688 338844296 435344423 728512919 849397659 867750309 131742942 219775257 380208158 545874386 526929098 823604429 857346092 328292814 518007676 399706982 132553129 232106808 898044323 983891666 694433676 963976830 633136487 842234133 769192818 494607334 245833065 286777153 189028123 804880419 238982826 471953871 437942672 771802964 576826605 172900585 105654346 20215741 588063673 551708424 291458818 968660348 700031185 644042245 292043112 413003361 906137211 43286782 303239344 208282705 428027583 758863875 273541951 694357918 118570012 670459571 562792109 508741781 670894542 4206627 601634613 783496289 100193716 748169268 206807530 499559511 495725524 807285279 946562921 703071530 877071565 729816255 597773698 586005071 941504424 699924815 985706295 532555277 151925062 903505563 852049364 354850222 949834903 781556141 218360904 78131980 375718378 425715115 270942132 663004493 184955240 903608368 430637790 689827362 268053167 70787480 746207221 933123424 207899674 57900988 657213005 217446380 572560697 905030502 175714624 356875917 51703127 781552713 198572401 395088761 786227081 408883164 535288247 893456472 474109966 476125269 831506116 324102072 129145111 627453459 878127167 214251889 143080851 585233020 880739998 280294436 664962669 695646249 283814413 238362671 829523202 46218170 41875851 704212511 89045815 653027775 167813491 612425646 672975530 73198019 923105643 235410175 26146746 720188890 535022253 749170791 198448748 211189391 152965555 113967679 375647847 497900597 102156112 830535272 525591797 647352913 87925659 706286110 860557519 234330359 157945383 594795408 762447480 413449369 434180914 964112981 508926291 734968970 520779794 422061581 594360076 739594169 247221201 905909042 705513807 958631517 4949637 963603222 294234023 932071219 634879920 394871450 208292044 640723489 556622483 499961377 560443596 49772605 101977057 423090326 979153484 389736776 20568396 18219125 540490299 805523125 576600062 335102243 50305267 864884604 497318769 826147407 412447837 385939642 730929196 349219915 969044107 418284222 515895000 870913009 335156715 542163266 590364206 898637455 144049955 237703083 381383844 717591746 529356376 160024105 565611466 490122773 138496228 973061993 716575006 975232423 804653432 202881516 770214001 859912898 998501685 959646232 522757280 33028938 797442060 758191429 210596082 930764116 668186929 889601536 668941945 787389307 318873606 964764248 516079422 925261643 139590173 928987591 15129496 315181352 922509093 417456057 558960730 816327597 688550510 277060464 913942318 667893460 766597575 219590040 762045515 118707320 284737968 753352787 701443129 209732364 313576493 98685529 892816300 497227125 1918125 634875260 977703007 803372765 650675176 565262190 815397850 80560116 186806348 253646770 935784107 513888585 978794938 800345633 947593282 408148067 166589293 242258988 783805946 303322524 757935344 948670992 429129844 707532505 108002761 161879162 657825362 762089337 684935079 481154816 496052780 593027882 229334240 271745143 113662320 910425961 844650127 284113296 503851887 889200213 226935721 305570126 88632012 584772795 995570351 394699431 752492888 197693715 407433295 988817936 53963985 450157427 927923073 738248274 502225944 951959691 569926602 849482016 548546294 855112768 369796970 296304260 938010771 208934210 339296583 507463284 163214002 594146264 367303507 864276316 63303981 472641496 948689537 92402912 300742091 225157457 671177007 678351431 579993964 632348606 856140996 885130580 299387435 152137038 569717987 919626898 923336475 398529872 385815396 541585340 174492993 368687345 637571613 588910768 868621345 825912245 539137991 440471607 705153246 739992669 37210962 360593288 893753429 805566870 619173517 114286949 891132663 915863661 764995198 57382426 52615858 920352187 48979273 976474064 997523009 402368793 319312118 629190269 636038345 598865598 301629044 821604317 850196372 272005178 20692365 417699530 657417536 491614235 757722228 751260453 130942127 982092529 726219199 909054694 773607487 849860035 819270726 481149632 24633159 868272248 519616976 265918661 29297623 309905925 406419208 370757255 730880802 561696006 282746309 869595950 795708115 50052969 504693368 503318555 725073661 860158829 449725634 965657240 261536043 860434761 368971569 486873321 715765883 915495918 595715476 406978397 920333267 309142029 250040037 995036433 443179737 261933628 715566009 119922686 832237267 36309596 116831537 263108075 448352156 798999787 833433191 758980002 215830798 372990588 591372086 86838879 88811686 431685090 144195779 33631376 462631092 219266100 383986118 987912946 151701250 732216063 547207606 468674772 136530585 204656447 416594032 221491475 937594756 747294622 550169162 715215541 489080813 149536865 991530101 753277727 754376059 795292069 211313474 557896353 102442563 911158037 630161049 703121082 548639271 455389964 89181789 717959092 301558654 231182263 945642300 415991020 687893927 902314665 924904304 3103945 497510910 164593818 562683705 314395578 199893903 4491560 201575047 734278410 314360668 841937198 783382434 729790681 482108920 765530469 165392640 409396569 417734239 728815565 707334380 932461396 340448156 206255841 160974392 890612429 515925081 894934270 834398069 524480254 24002881 910920344 538739742 634284404 580416906 953813786 226962118 419842448 632033195 380591564 532045363 508455876 704361934 491697549 275137362 632384721 209225117 133119927 815903412 145226159 606461057 986146394 922767762 694260905 95787062 446684020 387207258 858257417 145683764 818954095 270405608 540639170 23345347 784464789 650806374 434367188 40401415 81899443 160699222 207280855 663418543 384816239 116404410 862606663 948432897 263687518 726921401 897512455 323537450 397751951 232467183 976592967 678038134 475199795 228382588 503376720 890203430 998973736 974834267 808285331 823195668 919657786 241757141 73342003 980676178 365003121 674321167 381350244 876506730 641021730 370601794 638927940 920651651 76966199 724014404 936558415 414282642 380336460 770719567 521286813 432248776 631336307 365266811 852101198 199635822 519826627 492496393 261939297 357980754 265782358 228024357 837702215 395434428 933008394 798298 755873575 728648160 501244382 665291515 110623016 780802726 766571163 192344585 282110005 383540419 996246499 758038768 246839236 613948534 311113096 342056250 481237541 697428418 828247079 930830546 162242451 727798206 734939575 212762841 264194055 483635243 317601404 709708986 299851009 400795357 564631844 488271341 97768471 115124115 805840570 871236177 835571357 916225031 171794405 448391101 662216415 91983406 701154170 53734350 295725818 176963144 593417953 353692262 643312187 340889541 159164717 583927055 272595514 27676612 341220066 665959081 114849108 951568488 805952360 242258269 797113694 978526078 226954160 282885829 901913285 147914400 329919325 507903111 120346884 381969000 486306547 543203565 412422143 842325047 83824149 879413479 157093750 519111729 216099913 327093223 669851552 549479459 362937757 575656112 712567118 611517615 708416515 202533287 204896754 259163904 180847596 397119694 229533224 201325167 875841597 496332070 460627804 456551435 579500140 642822787 240957831 902691108 871060517 271073850 910241777 288801044 310417935 520172137 652477428 540401970 994598745 929162723 458776399 449895760 93538202 775910601 893957099 956054032 590511144 363841703 744777028 199640471 332594268 897821915 145630102 907254083 201994400 642309447 337798406 21782654 945844841 684095604 304873170 285299742 561424996 834783906 544760329 956022230 73271134 89669939 16298903 709926325 306087806 482115840 861678396 693856360 707411396 442231266 689804987 573807818 593815550 333367139 221849045 582686267 223802391 672842258 698246111 700283069 509240044 415759913 891826590 360200412 358159528 656143627 62355755 432307537 513423548 864730904 291372691 3800930 136977786 247733822 830777761 306053234 119185757 964325871 320908953 902532144 7011090 102110515 965829067 107989391 522107128 69421693 392069625 307411621 20053526 441794666 837259389 206339977 109510262 846785123 501535545 50656179 479922979 464995821 354763846 296829698 18102403 501535525 325700801 226629635 98971917 637745453 288233468 253866512 426091192 344438648 941461009 897419187 161685396 7423793 182341894 762976719 982158876 550756578 22717674 620459855 381994678 711059737 145921310 766264760 345910979 464085809 706507924 346198454 538801941 442470370 123081994 141108657 1051540 872240634 169735509 96052470 241625564 697871296 990272246 963260357 397326638 599444452 400300960 460617380 178398791 751184893 554988515 808970857 385526424 304240091 679902372 828791361 869352592 359205338 67777729 274593367 51940681 701271591 283525387 825136375 377201581 59378371 797158691 82989559 858411302 177306097 184254739 986224642 882360136 932182686 699399111 838979189 42639162 133215651 752398156 440555747 279264891 100707614 679120163 468070726 612364320 219386919 270985028 557047863 600730130 436314682 814176589 224410189 665012826 749115574 145919870 902130220 658083907 839629305 532921226 692187797 880366461 756786470 633517223 535492479 378239631 897567543 950264216 925648551 373582756 523884971 409363859 430930537 143196621 26604936 441084100 60255602 704550021 965779806 570610319 261518705 217188068 343990143 211451178 891146941 211741703 574488828 641941158 454911376 469518008 661144855 503190162 602855674 277145908 647108279 334760983 477234409 67374383 317564534 542634672 575749588 988275523 816270409 548902697 114166872 743243737 916253336 120024337 465175496 804610957 337436872 380273317 453174524 430051517 382633092 358182009 940939025 659125966 307432201 333430794 649901329 61165334 438723606 42001553 224168984 547891687 987873837 685774954 705011669 895664344 882903929 168727928 393074066 268797302 466658478 933736913 44376535 787480383 753278643 43129897 296997705 698032151 28039287 226435490 663198902 809993495 627018765 922760678 749867969 923440744 388512146 750328706 253144825 99184009 340554755 41313736 998392351 138598031 727926081 605401970 38397543 840602859 282350952 211894167 781181110 879016850 61711467 29513142 43213313 965848065 595325440 703356344 356524315 20085076 513084073 666501355 619897280 439211141 944830615 116792263 760736469 861998350 162261352 112920447 298315911 909656665 891590485 138780444 809493150 8184948 613027257 621775108 378700229 316770923 454393358 55210387 180994487 748135364 240521224 185517916 931799543 418140238 281028134 138501660 22770054 313380822 509334216 433417627 103628028 624267019 542480452 372815608 752852036 44869160 568696635 840066495 765995563 868653894 293599755 393370713 183822009 190882840 49140183 836179648 635508388 41322348 700576544 850622459 863329092 887726651 458829675 61732698 129147790 351065574 547083566 705283748 487633448 259910740 430385447 775953143 769993543 796140689 635120093 589781719 856863448 113707532 362438555 792669204 539506779 79943889 984039032 98128841 676192148 236338449 67264803 141844713 398252065 971819328 973007103 777220059 95181140 908693215 15830614 306849718 90471136 525848457 18678121 808809627 935202847 354902262 211976068 640197463 25275416 153695487 267411253 959708094 794581452 900411984 484152791 984956455 875400717 353995524 111726603 174379498 873016630 966429676 337570968 69294082 155435299 904326245 488798797 479699212 646235630 722535054 614788517 328982373 493706921 611717335 397676806 972583872 256060101 44764866 794376138 770998596 143043897 232910022 2769738 659486052 330631575 137566856 967313544 357110659 491854956 395991805 188705969 524235743 651512577 547485954 471050322 666832084 662244422 450725298 495918789 341876549 324866325 609674534 920812702 708304494 570228495 836420019 287338179 509053453 481660244 247130098 535186582 845117658 844012883 835009762 75208494 89395210 109303079 809092871 784333267 231913665 413384162 834513491 789111597 794483280 988928487 519554027 509211492 475485840 787561535 321358334 970823697 589163944 808559256 92651089 459741225 793692188 15697981 873353847 555173194 976380605 953219108 187492597 152665686 944188639 692184463 941434771 844988827 993120010 463446468 506349893 687645089 282127861 367423575 930631748 383020320 241848643 121255336 628022520 432338433 966950034 535653563 711245982 454578905 503719171 930151240 226781751 542248153 269800190 587045757 4875680 170372534 730520522 228455717 468846552 209410093 262866265 398205095 583159495 780537179 353993473 874949885 693386504 132264227 319098939 633427902 706777704 151899908 796168820 241455209 587947911 752090713 379792356 714736214 127023289 423874985 339396504 565217012 116279969 467914349 442555944 365067530 1211365 822724058 333224611 750427352 128045785 794084197 579793795 758635115 628009532 645957503 42242038 645783700 146739410 563506403 319786011 518006449 164725791 386474200 131940152 728921727 672838428 37672872 379362745 763952321 468795552 735515537 103430033 335887943 884271915 839315153 981079680 226123514 303295325 813186720 50287926 168505609 288415879 220018651 965227128 158322400 325478426 493271077 198180902 786002570 981708895 597554621 695600937 757791337 757625937 375373705 325639833 953599252 212225194 813322293 832085066 924828692 392518796 271046491 351434588 738781984 696737799 304386505 817640101 29385127 842390795 673489657 711020825 612861712 298291464 851593768 926335528 231638267 602804886 274563524 458731582 874031103 694378665 543851772 697426458 565340932 409706754 707122238 213072249 302986800 36486353 889388122 985973035 64951603 897436923 286000184 436082593 555426759 243323806 531613921 749312300 137316407 156528836 834027795 118904843 391937803 967466131 586344131 66911821 588866376 135981132 823831667 29902938 710768341 359179768 99699388 713026890 751544626 683176059 868751932 806669461 996050847 84128418 868396859 225385677 818696355 137364113 564573369 185501785 252939008 219154089 993459711 373642956 470169356 191982844 100676289 254362910 120144867 782997855 274415981 310376697 824033796 397257418 200215895 223356452 333304138 417296330 299803348 107057856 635513187 443833600 8214771 603216265 608404769 700882004 644874599 784945288 169039547 263472441 730176850 366477391 767150150 297663770 513993872 621464386 212515223 226511837 222519411 569992474 925429980 634612079 274804882 335647004 173098601 229768882 113084692 556857862 3902698 806318943 678300172 237641251 368042732 519104029 377681129 4001119 804553152 474504572 220299622 530345238 810540539 342587644 810430194 296150552 242884886 236046839 582852167 609776276 869764921 529858226 4739818 348446122 203181126 630749096 344602142 200208467 402105135 182887043 673204437 195650699 394207117 946269738 756602134 42998679 437441382 197322368 847229289 400473004 502494886 738746004 775622213 494400093 619513459 209362710 120476663 649741600 247341272 745795293 110808437 254904606 217234884 871359579 437698273 614814325 514760726 189983145 106837966 703163678 14032091 799007182 437606274 282129732 810849378 811586363 388686471 724729393 103064472 791422701 430205176 972420419 553617950 720591491 386368715 4190898 307979939 401365505 273592950 624405906 648887477 523353324 337172139 529481001 135087175 946825384 215863013 90642335 412659296 889700708 96420784 33598559 222903111 951126687 452393959 725946368 431939028 724511836 68135888 67455288 851643503 597367617 845019711 570616046 756385764 202004658 165864917 535232221 770526997 412721685 61780121 565064667 52691177 60260340 535377827 996415786 478731154 643185472 939980850 194531928 54932304 574545145 551757 326131618 222558163 577988650 736174104 276717763 372013747 171147722 851056840 801896512 880841206 897113792 64715482 899686982 120193164 515043609 160834696 17522613 470899555 277480501 522587269 485499837 552042912 562314258 274940234 440427237 997108532 997388591 145312695 519864864 255016601 331316047 287406518 332064688 627222616 390256190 156556369 165802751 402530095 395789195 133365222 514114953 362029336 235786944 141556527 66687319 123328275 26266297 878041072 779369880 896721461 688845465 508359602 651868255 713932542 430315646 655795206 110974930 387828919 531031949 626855824 526489200 759293799 970841097 550991023 394801260 579400501 611675526 678677741 46815909 325554078 375624208 754343458 79007744 921003209 985566232 441915095 876911085 970308938 922885828 648146882 238171811 578538509 733944002 866443296 115629277 193031481 198738329 886096453 730720410 729708244 539196940 477413028 686124750 131648407 944293137 717570947 604298409 101778046 244219192 395028858 346161791 186210621 337490132 459052540 685569181 444549046 943656303 473164688 548180819 827753928 636982274 577237438 473629700 901266315 153195503 81331970 636771406 927366762 443950149 448439413 484089705 764587893 183280387 982918756 612498734 818558150 674550189 42393112 621560115 548427045 386533109 733506410 39419275 390224692 928369781 199255473 113370974 472378819 972819991 878685645 183672186 89393318 109635799 263934000 421061173 297798981 106590643 80994971 941762212 213166889 818238613 813862565 378109813 446943635 816105214 232465318 816437187 710873628 601730695 461555039 530088378 231183653 42498518 774825544 105079576 990581508 220252049 418371802 500433773 575852878 306969513 390839928 88509973 205296946 614815404 319460950 406909214 458273341 236509837 736223507 808012756 1340720 914859251 92923742 566336875 205189547 433656927 314020946 726491694 867506698 107808105 19978379 619120818 577045101 298502594 876811910 733938942 600522231 420537519 282364951 269612292 641362362 870110890 338002538 557351942 601216915 540493344 709013541 470007649 95904598 624238032 275626441 192478741 486523560 132195768 861269919 648142339 302727569 637997449 397363714 154920531 208655158 505490460 757389145 471805276 851827579 445021591 892187491 108789775 87339829 61057088 97370636 286109438 432728912 750326660 108017333 922172630 925017979 817684546 708195024 986793327 967350940 874427552 488011156 767747856 885705541 177144563 67408467 216947161 332311693 29886536 282240253 383343302 3268466 234852712 983921335 425975204 766398567 976906130 976132394 287724122 865186458 29446631 330217987 132367110 734103150 126227603 653825387 602594125 989325622 82281417 330866354 261074823 502538144 613265156 388013647 858042449 811178769 424131999 763887531 103748812 991564011 827223292 948614582 714569417 130154804 476220450 761735754 294918595 225540874 365895792 653532098 192139949 460666391 494394313 802026547 433303953 873166315 566215235 822257549 920880281 420568890 936707651 258311562 251081150 418524117 914536615 281776009 809364953 658320679 734915655 371849590 780263466 460014409 742408334 395392671 368656387 537539540 103365083 873595206 789948322 276704175 145164142 433054394 860038797 543247115 734317972 232781030 150094746 694369845 650226156 863210629 128596050 693895692 358991577 844134660 88853566 821467916 271618478 424915794 408172325 799528107 703875895 169312565 8369878 65519947 232290909 580076809 588865772 576171944 174656320 660619692 109272110 535570578 274569991 531923919 862589935 56566084 637533090 573455914 949340115 562679507 211330341 560730295 871926432 174835736 173312235 662887439 454206590 491530837 446620134 767320806 65700797 306042093 538722526 42318743 105152367 710195696 445067344 538924960 789455631 688942100 470847293 487446156 83352641 44025647 448871077 295080735 447191842 426960313 41635175 601010285 529223960 951084593 757252701 520904372 310200031 739705461 243527336 204903998 448818123 506172884 955367178 181609755 666999059 749672894 317507564 5135588 342559582 866521120 115351817 980381927 149679255 675525607 6165815 868416915 228438018 460241464 646147626 93336603 906192915 87464705 534091753 818580293 258053865 588509607 390273894 426731660 503150821 7797491 327219598 748991224 728148032 949230415 115234443 209307216 91773307 359931514 894322031 463219411 108647735 355019690 523423312 373480242 921578793 54306779 9203910 578556133 422915926 794988455 692808350 537662968 640901533 385551079 175685376 632822055 148917593 974180726 564867063 331541297 637390850 515699291 76941596 313864910 210371182 945488922 604561195 122663404 962845832 116598229 317177992 313035012 548753114 892733249 461018578 363151596 771628533 975005884 296725065 511550627 958675501 531982931 818296652 413641925 724830229 625559065 422353511 620327180 518820424 550943324 886433701 647206774 13091114 400391190 977166700 369517692 504977414 238533533 607585891 645516997 548668125 668358835 903670461 654218518 640761583 116173866 733419596 64192871 365082014 290374878 447566409 537051731 675063082 639648488 353565439 649965402 146275079 662536510 283574321 950951850 743586034 620700389 567502411 389170609 630888061 252373538 528997095 519309121 724900295 504731852 828181563 7398174 506883853 259504283 310567282 707650066 81589391 521923643 295797122 354777170 132720297 541207172 119336438 195723983 503772497 572424140 660803255 56268578 617398089 892743128 179007388 692299624 705613180 246049717 815992354 918612218 862180355 483586279 604480300 798394867 990179963 367637016 397771064 827265506 941685699 33907428 16311911 329823736 733461310 805755474 79481939 459705456 62500565 63282033 456800204 147396218 996257836 697453603 940232853 873083962 813988669 863359689 154104830 544824717 882346827 348652005 27906274 673499097 667264286 984359024 447425183 189812661 774955449 174694700 496896340 897942907 60890683 461836340 816049452 701003791 542274661 178381317 954665263 19816196 621564386 449237619 422266678 969167904 466092998 921578539 806356764 565063692 117092750 475982992 144186853 865022800 773587113 564182520 378329598 669900435 862481658 735437447 90712801 423904043 752020480 242453690 296302883 619048372 892732880 465056597 544626408 395824102 932396129 195094724 283990931 708580824 20746879 514723427 704823237 78370014 56500121 35280502 676565692 456464432 66830991 77085653 768677983 579598085 156347221 493062158 912132725 935268689 679897637 163040167 756703824 342316912 251243143 60160247 74876065 761919281 487084544 819812908 597401804 559208780 498049325 511313116 450266024 452927318 907614536 747440810 703472588 61680746 666518062 839546385 982016030 920010609 622207574 414292187 715297491 475019618 279887996 791847318 901977254 201836671 833546710 996074207 313019105 439935444 152769792 410283048 915564304 880691416 808468732 771026738 330106654 692975209 522801934 901285903 159404658 772313901 393598157 424074657 899224331 227260815 914768636 114721722 611712594 642977451 70410253 465466770 679894537 839624832 143977748 409175871 658641321 170232694 145507985 338004022 108741515 629114661 970446431 905527025 532906385 788365142 541441196 354874882 875525846 701466961 745195889 465592289 268195832 146859698 452213563 447821371 340936246 749975496 576268029 561570494 494558187 404127901 709389037 815464786 650903270 943491479 144485542 61467018 680618799 791735346 418969964 721054390 977075567 323467647 817259776 953247426 547841606 748078870 180487486 486080720 873318312 163071540 66947763 619773253 748269637 810539510 343649305 189378885 621299247 835046887 51912519 868043746 97789308 662959355 398605670 159778585 156695308 677348086 763901544 872603199 480710582 995777729 954855002 779844943 161673309 373538085 336926414 291023686 68056055 995564667 791395437 545786503 378901359 413830053 728507884 326524163 229895701 863176301 718797472 301377831 892015402 89583257 419667694 484124392 822756724 724005873 528228186 509239644 894019054 144817753 619561115 350132012 369659459 240612577 191606116 273955377 884947748 454384146 358757565 100015614 195161088 995850873 315879766 870858690 340953492 380722369 228611639 217725608 949794056 302732294 353625275 627632330 811255493 819817433 34321750 460162157 237804221 190314609 742045614 885777725 131183320 296708565 869733941 30485324 839730316 641713955 15409466 31770682 397491380 104428667 438100315 3522897 978099472 242629580 167734685 320496876 317831066 909810144 255233514 208513031 62222029 889733351 82974649 897251786 835783792 911958512 183699134 871543079 108555409 782267921 762184506 223394474 894976063 208096443 79776645 183581359 32237924 539073120 903944372 178599011 593916422 245998852 886781877 495631752 567050685 561066832 777034743 952080239 444718780 591944825 382218795 690264469 445528346 523553720 104484750 916284654 765006311 960074481 730459760 405771797 264693167 341813165 704392876 551196523 157730132 661720609 635885032 732891080 394249522 898260408 300352147 581048861 919194227 799320630 820395749 679170401 275888161 126456872 312674461 319206725 390111511 899062226 446621973 200900370 152490727 399775392 462917937 668500071 385791024 68217053 716511532 280442790 119564211 826226736 283868383 104462580 434352856 767068654 317063078 783569254 663757748 243855538 726997842 644998056 752116063 83076485 125813489 3363171 113781933 413873409 244806221 599336382 509555138 473073631 223859471 500084634 916855186 20152531 372373684 919045521 983237257 652920413 202640779 294115715 934947287 187973503 372513272 491118028 169880782 6067665 116677531 943711892 145025627 737889133 696733577 156303551 139425945 22236464 391922297 43533687 898577114 740395736 17049689 315686302 713662969 865181724 867055406 618082356 303100162 949016080 138613650 40283028 950968998 750693882 703744790 870778824 146493710 50826310 986679027 526783439 345076291 231219608 188296459 698915778 930295048 384603580 915731322 544639057 803069828 580852876 124083359 268407577 632884156 905354982 26241431 797460082 876176704 705614748 588314831 521882824 153978629 990351232 883526059 736666507 380923301 147570990 199084928 99875403 278802158 20267346 235709231 57159029 17208154 945809748 789435514 982285216 666239031 934736209 356474312 288752491 982998341 946637548 574641931 582312863 6754346 935930350 217192941 652772683 769365099 598693184 300953571 876822759 56475316 227530089 812754125 863820887 438567676 963350773 929726808 52342606 850077130 651232576 730306375 371897303 225585108 253363383 205596684 921183599 814138022 644816057 912369011 100854432 692694187 809434800 192453994 103855517 488596472 367869328 195036659 104868212 215081215 774311630 68652330 53664283 339961340 501134998 490463042 733102317 341484443 41017259 772784843 162658683 812792938 557952600 17910210 699532362 145195710 41351930 523864478 697111432 793666101 394991644 479511054 502859806 303318201 224743952 705379019 547660523 54204962 35438272 104149141 173797997 600659171 170173190 546906135 336763114 283952192 227368378 370499351 438264128 412311688 122177257 210257857 352106066 935816471 539419996 966283820 869491164 116109169 727314297 429284906 560004845 653616237 37343596 643789345 945094398 126546240 649069319 106775393 217857912 239541417 529720554 102053779 767911601 538293124 854637970 541505204 766468588 429653483 335805236 255179293 779814742 81753866 60433573 521158563 438715596 11150856 83870022 905960023 610077688 331913806 573234891 632653296 968826087 11668314 889244150 401961319 398412321 130077303 81259833 474321783 158056755 194153196 137519874 12609820 386347808 237485637 655452210 991933705 393033835 383819611 679540683 34360952 396278493 984364537 174406388 110658288 766744202 274614789 318959134 29343227 224680607 499601289 608139452 891156274 518568543 544737539 12803820 633220253 468074843 68633311 284133693 804731407 116306438 515002342 369772592 35346363 721099859 550891391 430412121 701642918 339005127 580590024 697418188 250850005 857836277 565639352 166379001 764650250 180346111 28957725 44685685 201792312 159952130 697181032 571042828 620793716 669290637 691066793 846809981 52376703 900481162 349552482 810275062 474991773 166538745 860557469 438542941 466292357 133179712 249588363 807562526 445194068 117761250 416036652 847029715 702019449 22187532 227876273 87646174 301199140 378678911 383733033 407903556 349394104 935045857 299470310 175147612 797565350 53151972 316431986 887526329 856453631 183900542 425650087 251071505 348795706 255982655 631162262 521697045 44917112 50351834 661144626 424933913 439086616 495810304 222787307 17327222 983395301 83783826 34802990 445970668 817657654 628280348 744908331 869197849 629042763 773064040 554893338 425271808 613711611 790383364 866602196 897537523 728051977 989958906 977547570 89172993 995038455 789420370 424132792 103936063 440771280 707839380 891216890 792612568 40156226 581991630 431622366 774009252 428164904 895936982 252941375 309417115 19380940 445244171 200611589 448582764 762761596 872462555 443348567 720894841 5115968 115143993 278349587 761982156 919702907 853669591 226140577 371356370 799277901 436273411 530991039 193154313 696328407 572703974 149286064 797246335 586583836 233715917 604699799 5059547 96004590 673955449 941210954 378860764 432772135 19352641 557615301 789794633 140902330 539165092 508070361 724707606 917507176 913794394 404152143 113719262 999343227 263649937 551420972 545565357 490847382 442231944 488599868 263425716 460346700 259385397 507636468 363535109 483002173 35546614 699282400 12596445 202675177 217900658 273298573 694399593 586382883 37534799 220593262 694922443 949580923 292891832 520174171 895458411 999653687 573168461 362609942 823344725 555627478 163665663 194727659 121950168 644877453 402219096 493812127 415487331 862132462 558395135 411925134 578302983 495187407 886174193 376378116 955638131 291229486 958963582 163112130 214729937 562274962 190563563 746926481 256875343 611422678 157903808 339458568 190894404 769135732 983710084 666284457 244863680 827821100 139762117 231454311 482230932 425525752 477362243 730103871 920933178 487196987 198665602 871607078 178646618 779711981 772756782 171174901 9096415 49326756 679013550 129559505 248379082 589904479 859649959 903488284 753797992 850081352 510970231 466852922 284919549 406585598 824151607 7415444 136573558 437459048 679423735 151390068 374475284 841299045 641012124 121088662 91349722 24176888 677262263 813193462 505173452 450460928 121763173 476503667 686299569 62683383 326753192 355867490 675953659 28080958 987239779 481900106 808373105 536522338 731872766 997308016 737336680 938311451 980630574 456441340 215470063 667394102 790138259 378845621 88202288 845355859 442442785 962720849 835192973 365504596 435227953 589501768 490926570 692369488 152995776 23557136 482046732 39450709 878461984 821918948 802921905 882655149 798041741 68677328 351731467 282081722 279775474 573268694 639331399 403302656 486325776 584682244 618168299 881405491 886034969 920362589 172676747 958044385 476335635 414865472 284478143 241472385 640264041 583699947 822161289 43439190 464537120 536710014 888441242 454542527 807201397 970930397 672002520 87135017 741249480 347160151 410594804 92199466 522884797 752078157 754774733 622691433 812673939 358183352 867475447 798529538 569504899 847794087 335193697 219118 515958349 680831677 60347365 397645423 961423015 636698055 850212670 304057286 718948438 250394641 934866221 725777423 294364931 963342106 99842649 456441834 13171208 233729088 401203468 878481027 598141610 124780045 616129265 30544414 989180060 811428519 478253562 766626312 925663305 702120705 489729479 18065846 6452158 186072700 456320001 887941565 871729518 88378989 252982686 234993722 434175156 728231888 906449839 343315095 10328686 973767199 168975599 173687378 552813373 817347148 27086217 216186832 151512851 771736608 528522015 586586844 809122365 144209618 698818528 338078833 389210583 311817347 464914849 200776675 595056036 821981879 42693835 181142349 782173521 197151092 503807750 445314697 685658765 908396513 830553971 647528708 3395564 487477588 892366430 369256778 162488204 784126874 908004321 415413167 919515644 860629613 351111824 659557655 543331919 52171529 785446790 358730144 67573639 168094911 627080903 610360965 692306639 678976975 301677353 477228734 998297601 246199255 100795857 79584237 362257187 720158538 315813624 436059170 977641250 448323109 131195555 541682011 991516249 5042474 206684291 36920510 307450937 858645035 128254462 184790472 965662774 292364293 299240756 498110962 352734044 321034985 31892894 848057658 202383265 547029875 576896430 843097322 842031212 231926356 402152467 436731295 878912010 287914943 495721065 619158317 87468303 809986321 895883920 908614368 911605002 135771730 624690240 679243035 633654889 428880848 849549094 156056689 482073277 231189282 691452842 791743032 472426905 51063071 193170798 937671196 646885458 192129168 983783043 449922300 211443795 779206308 195199452 750237618 367480303 840359456 828285569 7087369 234119527 234902212 463758716 189818744 16950514 937104213 583230598 999469326 209568677 268404125 659696200 939244006 680946385 536095687 397745698 482736951 503476471 247369149 959372685 684334230 19959146 585776449 480822088 908977200 533650589 721334838 999955963 897274536 120550662 502305613 106458016 201657225 435257245 171185265 767692109 98129644 99819191 702545835 35987348 8023363 801967519 807874796 785246120 473669309 450210468 356003552 238680994 660280311 490760360 585811014 693540765 481716543 761634246 456128483 831320515 530668531 912265655 320550147 772263896 960132893 835839778 352279969 231642580 836227614 348815967 308093910 33990737 133474990 597156553 759324052 996504065 321289833 246955405 809819718 736678784 335203400 230935363 520389554 915349964 32372854 341715022 873914330 975806379 271604235 465993724 979518475 542074229 734389808 264633876 194502292 228113490 292912407 359577374 230546251 880873576 993125930 383592499 371910008 16880632 618292229 529161776 985810674 946387203 868499933 241545267 526405117 704686490 325342997 877780841 430506216 314248334 327083614 188486030 672548277 764733721 15384409 811218292 593410415 358368231 956431564 997079904 583451579 567584271 859182583 730937129 538551755 824594895 398206296 888472509 75881727 899058384 397297883 110799336 827081143 377088211 440551289 232464595 449806373 368989056 656334384 275732943 724122774 633371415 762829593 777567450 617633884 927737724 439675872 141862813 569142626 269890258 369859704 656374021 599938083 239842836 257119304 925253073 765142460 450672540 428055197 54638719 208392451 307797083 358559645 730807268 134152090 458062113 669905810 157713404 163224752 360453929 623229973 821506922 986862768 730560192 493162196 110789446 673713755 648261059 829239958 369789051 688435131 887496575 574447709 520243848 790410614 525841757 462785662 909332875 469584164 77639379 236465298 662788600 2132857 569649180 718137381 330006741 506576704 470764946 312130889 649946641 19945899 567967095 112342069 394036446 566494215 679407639 998173673 632471586 438083405 704174498 829311326 45461662 404415258 261096250 538102054 183502469 357048234 801466638 957659337 967986856 33379151 786921166 211738733 674172680 203804568 183485056 613046859 961502341 470064400 884729336 663169381 397755850 561298712 88880886 767803580 863668953 834907327 358990157 16720896 552952240 378933637 90616860 446291772 72511878 207241964 941698200 797957235 160686712 518828722 22712029 208034905 896282946 763658502 733403864 208047155 341846702 525458320 507512508 232755686 413412497 766135592 192141489 876683027 814635844 378404997 106639099 872724083 811894549 732810848 797735018 895817207 761651124 977761539 856062370 484622773 934708247 620447885 825610011 48391028 338265812 689044447 288630657 837415268 859305742 624293305 942565926 995615563 841268632 57505841 104140081 537133601 345388497 202242353 7806709 916486313 418273399 661798784 456861205 577421541 885962369 442326043 376987824 593977842 662959092 523869798 786613664 967515385 658461776 95100730 876123675 634312228 591246227 48286037 583639669 307966746 225680977 657024334 960706783 6138627 467014459 108342461 747556228 779581424 1501824 279885882 977342905 886391003 70500150 777507980 209854282 903116400 85441487 164448090 451235280 195346856 885609772 800757573 87336499 684804207 493696632 161000474 991596984 142305829 918682403 591719462 927332624 587231977 510527726 847033641 444722669 984089408 646377313 720029644 764774354 571336615 622859545 47937708 408077788 918932408 152116538 540597159 66459576 475051903 7790034 329317386 545493322 329478793 312127246 825460341 651027482 258631990 20405274 406227245 471950559 831367298 703117595 290039733 620555940 647072363 95861355 632750641 166539425 248685041 248905920 531542816 332110045 47714059 971705383 271868542 899466949 705527889 52527025 929914587 204933101 92962089 434019793 699478642 218615340 571332917 483886323 567554970 319934334 797344698 963118705 263454693 795395027 117676086 816168419 307200156 700001658 287353669 361132461 319667201 143906546 138706553 233760045 488533474 652665352 973621446 592665270 491466962 178647396 410776642 580156275 652220829 64722669 676451020 505590496 420593840 704431390 685937752 650475905 337864126 428527385 361428714 211737802 550921665 58502348 784722724 956583470 933781603 267699973 175481087 623581822 676834975 874736561 483786909 957841469 819683940 372915923 724013420 822414112 764647020 961207099 335037128 785303210 510724123 652271831 322305935 881752329 711818863 640476397 299427308 976611804 520642679 29871443 61779399 426659241 854643263 160406532 419404077 91046808 665275387 48350902 607264749 291791033 729486311 800829352 122509814 174373892 530503720 624390167 420888279 792273460 959349986 922295814 442684543 424297083 20632258 674266012 680455606 646378258 812041168 577751807 88853506 71229872 307032972 235209438 271104535 162263278 342580071 341275903 603791903 370410663 244442830 995687175 652943448 52164625 904407139 585770705 154708514 646463244 613844933 349730909 704769946 731638421 460469185 600719395 538574161 762038137 52489095 676865863 277122628 306241956 912654473 446299585 699374639 191142038 426515158 415962627 171850600 836188176 412825267 557698936 72149303 604843103 658498248 110173296 290863378 157649508 978389881 745982031 902142485 368948475 739431688 530047928 912121033 806105372 27254269 675427510 369614980 749778859 510081380 680076156 854018958 239833634 432050675 805053349 645416782 961788082 832182575 872183109 847121918 867179036 788507195 401658891 33904272 436479404 944699479 957109226 544245250 937926860 444617801 749526813 365719256 106000231 240843976 692897766 380918108 661445274 732349297 186137304 391449496 964046404 479876020 123122546 632276339 564766471 631813058 124082696 928801945 826360748 513403615 256327659 301652383 922207261 594905163 814175793 134751172 452030339 332180664 382746931 374627612 825556182 44858508 322279958 928133975 842554795 394295560 734001646 509334514 158713096 455730269 860925566 871039989 92656932 965263517 439764844 68765891 642844837 946136225 365028276 71153319 564204932 644059436 830659769 658280119 239934296 403389514 992841715 438205787 206296209 635429691 626747180 253733475 922165112 143141161 850749191 744806178 584279299 231335050 119183838 286678538 887214862 51737918 165723663 836623272 505029296 178688352 243714336 86283545 409314294 863272922 136980770 473104769 872307297 563960665 663498044 953956415 926438235 191870807 436420129 107346447 875983296 967519871 274695876 663224248 421573300 590627153 99398892 738351434 111880941 515683003 425359824 796585616 215960458 576707539 184078210 572767984 594627162 788125474 584460667 111679254 900450731 611271331 65136605 793481927 742143612 385653995 740862895 945018453 354357857 825319547 238279089 581494716 494465739 352079950 867934213 628180401 25077851 338797790 258445705 927630404 405792980 795851719 135172972 742822028 892415331 242557624 299902825 252360615 214488042 663710671 670778962 379027815 455068819 249605030 92731364 480625610 579959696 945708435 121959326 916831650 622388247 517830725 873357750 560760525 89473736 697177112 520959493 704606752 308521083 988033480 535761434 382511104 928652554 573808415 686194248 394057046 167881092 811486206 148467701 282309385 68802301 457433902 780932179 499073966 264619922 939035876 224330972 519790342 57755965 887370858 189755604 72621697 782362326 253981663 390432030 564041679 383917491 608421830 22020985 716780352 597435638 280206086 361061706 685746894 526544480 874970483 989651181 848753378 526080058 86383508 769300835 952762235 420611548 979690409 627049457 254495855 310767348 885347756 717589886 343966472 129765313 605045578 420558250 635163774 506015700 474040064 645377429 731610236 393629552 400444335 842880595 757653885 136315662 132321939 42573908 51847735 523558231 760514750 444433339 768381974 605705559 525428457 422546252 343474421 41192243 25469242 369135075 382634869 417000864 501752041 563144802 158044272 880948485 339221787 240327391 591699756 397937739 874479259 727795416 682552150 918766426 535780835 643847698 362765660 543300314 347977412 419229800 827503366 253059478 181432894 656495591 923141242 475480525 829973463 886882809 197598665 232544253 351451553 484508998 504865679 839373243 530511652 801168317 701396236 611393411 481709933 385080185 93925381 276117321 307823576 289518184 381776729 713029543 216471063 878239375 545590682 599932169 488353394 123791146 276550226 347147474 39785231 348590077 75023861 245273285 329399686 669330449 111261415 360769346 865915458 552072683 517342702 754905766 80693976 292333111 92107986 462717541 769683704 324635367 308927889 439720570 109412942 392131031 353078385 907168690 507967372 463193888 460023282 618081316 455808335 152668524 415246863 953035352 341568928 42526767 44767036 88525567 863960075 220440895 742813170 813373063 270376011 903017276 434232499 343878689 985140061 420889664 513206003 855607978 779581721 280477323 707105334 37466259 250415638 841184535 700110604 739557533 732105584 3273202 352893944 703529015 991026454 334409945 867123452 894229175 622054156 704968489 38208699 729993168 489617483 919894015 392189920 727192433 211999139 290214757 289510802 655624650 147285621 105540721 93044607 116756763 447749711 131544980 183850080 578865998 165491933 253061694 187286762 913115216 243997342 350159715 289456584 273891551 331265978 843962389 481486580 120030611 510809547 223483291 940882185 87373640 406792203 261642853 512292162 398760560 115768684 44161563 916832089 530775348 222711219 491077205 12794280 483601345 95898400 221528773 189411033 34951544 140645457 827125995 759810797 395200124 828461081 840733443 877937583 670365636 358492424 480726240 172331002 561278171 934985040 953876199 297593564 3085802 40085184 259256662 118078706 928981077 919254690 391570129 886750946 381944832 709411444 360821626 199753629 945535824 490380071 473595188 660794257 244122003 508762230 947962786 253557401 931521728 303345405 841141716 292741511 888339516 289782250 869634400 114348709 386238065 365249557 672518354 533750801 787157102 768078232 100595267 790235944 300794401 182693016 415251693 812299720 213828717 153486932 777210016 163151908 151085020 224368471 822868474 350835709 407307990 662551359 916166812 131097031 706464597 15272456 612979835 732091608 88784457 443984954 778316808 735062602 816540556 887683121 427126023 167431887 258179027 612083026 765609810 109913987 556303305 951832424 526269519 903506510 176380204 473600177 739867156 78023987 262515582 206884476 63425505 989685832 67513821 49076670 641000595 94468469 143127452 284368143 594671336 320829440 121523424 755669252 939496603 826019182 291712838 135940476 439208816 237805462 125649825 737293989 950515454 697454043 466612759 857933773 885501159 349887956 307571069 123335466 478060519 75955626 109358181 961688886 349680568 611445233 753048749 50428935 242295123 570662912 184840595 744893338 290039010 741158311 866707273 881990739 254469045 889546195 901954286 128037974 889447078 163759143 407191182 672650555 774542048 126144780 901333940 384033708 395546236 267369941 446240544 841391837 885667988 436552294 909444573 53245591 722951690 190507958 460170431 200306982 864707129 676239787 276252694 576490436 966244403 521291035 857806987 598983903 453616092 103782469 988458716 475703623 200502425 619860605 831886245 105203843 834430187 309033504 626336245 807433336 309601958 191544646 350180093 749224606 836470705 970000808 540067965 464040636 494402638 555440970 758666624 516316377 980257316 565098842 412541670 95026738 815558697 64185241 519161467 394619195 615879237 530508636 628137475 265671287 22787859 864777909 22213190 822505683 474560795 258459588 791960845 636505549 40151760 774525825 5384521 291860823 348281212 100596139 474400784 333001593 721512439 903052984 993387719 316858030 309777473 36791356 383340817 712937029 779018389 983661457 741158365 407530050 623897565 185621474 927892761 414008754 218849678 210963342 478561252 696940708 678783971 140871132 695423879 398113783 678790128 776036693 919245451 210685192 746528583 809279389 697151157 12454983 168266139 976085003 786086199 84594694 942897049 540193457 635840388 333252680 695414536 131944350 303752446 377695413 758736757 524354175 565783228 579653167 966340750 138310805 643861100 9985637 779154888 961235899 431386594 805662741 855802834 970998624 227464667 512538092 172522707 300377233 468165288 453295491 209911624 684319837 351595621 151317225 498445589 199786719 805471502 668385006 645504909 953220436 475049206 608994860 537334588 646977282 186760833 239016457 70384691 701538050 909554950 535311939 271143862 76367920 451671615 353169848 168017801 55374917 282305262 300728682 217320471 643767147 601834291 336470472 69367009 115868051 59419704 47156542 957264640 225905580 418145796 852329666 575303353 992777106 696068685 356079478 357672814 985737386 848762089 389326990 356893292 688934670 947541381 998307562 161623572 816387092 56245705 222295855 328835206 772268710 410645907 885848722 347000266 875905018 942819785 213825398 277744182 625806631 736314976 111295087 607605212 952054969 780838955 235666317 759268143 746517669 401295345 308851846 501909383 473042946 799390893 509882008 723510957 348638228 797175521 139526445 326405858 426908074 812533293 216544772 291021248 937547309 89201199 734098599 803101453 405877710 858815951 520964677 960416611 249418376 962406959 179279120 174207462 159324931 585959316 839538647 139408272 973219026 42690447 731881544 902302109 455379957 634328828 372757349 407388268 566044598 922740827 673987613 567627889 571556973 102729097 170699220 561661880 873698146 930322015 676160419 663202748 522646650 578638980 763044380 984157606 120281919 138081757 286175062 981932084 504709294 114919716 45744935 304465716 189624009 821598845 298570007 200513871 343929863 272708370 84220768 37397240 758610593 260478861 509451319 782825997 847181437 33670137 796909866 91191772 443364135 306970890 517532302 809176161 588989373 790512113 370592586 581737225 726939689 389416892 495043851 68286692 60579160 542428959 64562030 188348475 370718485 938893546 912183421 367846695 522765703 962183099 278737110 893670512 527249147 122277643 628950323 287860415 933062771 209912539 533396496 46112233 778264322 241098109 988487375 423980139 668634399 511920835 668342080 646103310 932411699 356823310 928099255 287796145 686700623 984642724 235621435 232600605 66825509 103796745 350098277 627247330 169410556 191456097 559548562 154255604 739194301 734199277 215387889 715096716 76444860 521913289 948029601 892385780 379996414 140978924 886669344 747282201 49717542 424932408 136683592 223749845 371670239 899951895 868362439 492339320 520026818 958535647 666562912 952679427 402894435 147503246 143992303 828469431 674740894 303391289 625120697 368461725 795292835 350012503 994443003 220987234 494458499 81589032 594110271 926847675 937770295 57234785 34559191 715192188 806296920 968783531 652724316 29964692 299708014 625387225 352225315 106042452 837155544 237935139 272510665 680076440 506867032 39469580 529408915 604835125 551338474 601838729 833582761 954171036 993936069 177627987 578273786 256039052 645973177 277158492 399367247 574470049 147330508 631483869 804575870 364048562 89351147 119657953 4835076 461834137 428531738 229259695 164857808 499372039 269353586 451597564 444616803 301787216 504565590 423133247 705450846 393360020 812993454 650233921 685496772 295981648 331782060 643997579 83195913 181060798 657680757 606842470 424117833 740131883 400282359 625425402 859083439 267232905 75162744 178679124 478825603 512830685 764968813 627032819 991142553 854567990 997109749 962740617 920256308 778867859 749350705 976793811 60064380 597629438 85520385 892467779 735890827 311785065 260914194 867731394 521946611 531562208 352086120 854535961 712978073 957318796 5651803 141053252 721477889 986544296 601557190 947793533 406522765 589130717 578201483 736847508 941467125 524578133 936888902 105897121 619225950 649851009 100174539 810671872 290730198 211365215 64024604 592020458 629104354 343940856 614568956 772594718 812895304 928990829 690209182 396980195 962757443 945584707 307323471 854120831 567904279 976151085 57830282 700134637 803011151 782926675 285099596 193128712 413286264 184564032 80889014 318666823 171192934 847772755 591073736 152840117 21083470 890450644 320676243 88821920 586702520 88593293 225338035 382787603 870580979 486454705 45010452 125933199 933637645 477701926 535659660 463429672 585986564 442146711 922236600 23004554 401566114 943282189 881584670 700378373 97216654 475841447 764703589 665979772 642290178 210468958 559224345 908149879 179098302 863348108 265040388 877485973 283881506 245117771 629649497 728919958 191834075 810746814 53668234 576966060 233829263 170852887 425984093 189133425 413137716 823846829 953270730 999917959 175267866 514893367 724274277 933052791 12256774 80464787 967163254 593933926 348386295 198711477 287845634 467844592 83172644 192176145 477832760 924504697 802385303 568107489 678000581 569449282 514971889 143263838 472914568 970442316 207062611 361944449 665562303 179490958 387212069 415448157 945630463 892787478 461727839 88554016 289869083 527410124 701902885 535630551 489345676 638603126 23476418 451734039 769874587 971546737 582892110 475515907 787856495 533464995 276122044 815669318 529872855 870599943 521143085 575589943 19578357 253761900 912752335 59242865 671141497 949439557 375996849 498976343 99886478 328913529 311436887 17487475 45153772 540972894 400370958 102771340 727434545 781140407 428278942 668983845 315917584 875014315 718456148 140219338 645867938 767545784 904181348 166110367 19591532 775998588 373787408 77761218 845520719 981464939 960782474 345942465 952293829 798814095 106706081 365291202 334165317 964308912 238044806 461699522 266874328 180861908 563160028 619767471 759807589 524929334 82616661 247173423 638379978 28295662 108565439 229822516 241802505 974602082 191932338 816024075 281267213 929610361 699339542 10159820 57107849 954567785 229577766 494566510 99025371 27295301 345052050 272754274 999356715 724825799 918601543 710993281 408059764 181803328 463147465 770984385 2783527 692197803 237476004 505735300 810249722 262919038 509482785 204915540 941306267 859877384 690050957 436854659 316615710 962771777 338364556 141017253 296407501 753902204 893489165 603116178 472387888 3841069 482502792 414324344 826241302 116386838 784748051 245318899 289984122 369943801 477167889 1919924 539565654 82838430 831074582 751050996 362351264 734399834 114169555 38034637 770002741 346273643 424550114 729263055 429345429 762778673 968155132 326961295 290464970 255179650 60078671 827317945 844115502 675983681 391431510 124221224 566356717 992056007 501488499 908369932 84055660 579343551 989010135 994650475 14107251 491496856 348647226 935721229 864581501 696230354 795383364 465576158 925201087 68025688 869718512 785831719 218213250 349492348 723396216 82245006 857721560 699508431 930546667 503335128 503140479 498593603 748214334 635300848 562271636 25924766 900722452 34194229 158439227 837048383 283686371 415306370 236497077 351118008 38007453 40804338 234445700 671921323 985087903 91150580 34230274 707385278 616390522 829974079 927090421 333358400 952777188 930555270 823197981 452958168 357495330 240274564 983932599 451310781 45147939 250051106 446282653 114401998 220692403 292219055 651542929 323679886 269295810 195781702 229421596 414840579 380740407 475221469 661952254 345862497 652748396 603289254 573378968 155697060 757173944 863861335 880923648 784788090 441401680 383814402 456013476 384500511 611554107 373444451 550420867 850122343 918504297 102601788 808451038 456583773 975818976 673764548 8891336 837362403 332986968 315565403 406096290 728553404 828995917 747407188 103301781 858644086 381481848 155716294 172411887 502196843 390157801 586044684 609938109 83253566 126239031 677038717 202990825 781528733 800268266 176886087 133134319 706490049 725891144 988434776 255033508 153776022 697350553 263970425 536447041 298995729 981301008 413788153 958848583 568435788 334910027 890386210 474800439 432339754 987979201 515045408 397123082 384724578 655300449 786824221 436121808 747666748 597418490 266893250 153155616 77165374 973196094 849111369 498173308 187394267 758457674 325368716 186433548 414038917 335267952 345982616 908987725 701379213 374086737 443754775 284500980 952645726 817079238 71106545 632060470 399209020 249443979 726991472 168897674 960131498 714467907 712592008 105053685 800747559 490384123 441850442 437350658 276122296 277049551 832235114 464162916 789925624 79128476 842301438 535035859 181977564 52373183 944184636 109240580 268506418 177992202 751022478 491369640 467983731 545883610 262530527 87895377 875648522 777629797 337663601 441555835 224808868 436264046 516416735 634352619 160060091 450163778 578963939 15395615 663014351 929440896 149679981 610968 378186991 221737123 253113474 721741330 976120067 838314288 5671260 178543458 210609342 395684118 413177055 443574572 810025505 86252380 888782741 363732421 511048390 158798555 276203268 890653657 185486738 618751239 95649841 28512978 776421777 524995375 794786603 12083770 738597624 547845505 976042443 375656313 26995629 819947270 441770985 861604824 172352147 176250289 343994981 439735399 588441653 266479242 121133783 482636861 277123638 814213113 63375787 469970576 62247608 295589955 552682048 845826015 469001199 562625581 466603915 983455824 999902183 263642601 976425448 421747103 692426616 768298055 355698565 332614844 668262362 870433094 411208226 608636207 364235344 689650283 961570964 219310580 369059555 22697239 778695948 254016390 253993461 756505541 981245386 783650492 379112978 535507249 124100130 711516585 706428495 333081210 294891037 676251657 553048921 813064946 795096751 506454943 821311915 957962069 8020821 359072232 305160200 271148772 794329148 167989738 197273415 805960627 240504952 214683600 833094978 508005677 956294376 570997528 640558359 609206772 180394008 842561391 133859545 451971971 570590623 404014161 442396801 777820924 338598239 783064003 417263179 483629232 226992335 353912738 346497081 960350422 710281983 455970216 681113274 522926769 51637649 372438100 12803229 687189373 614936105 912505446 196801076 324376726 709147749 501201590 958278769 468860010 295836448 628468957 857964177 492959813 368723520 876004648 26445048 875587315 427942549 770415615 401589985 45139145 990184357 169658852 192737503 937834684 9667292 539707462 459450909 304776435 999885183 478441071 611281489 690537970 944868455 604679481 406540928 845225284 108283540 881211174 446317629 532740785 168183854 118151615 307811600 498817203 879242563 617966273 525529726 914416932 587083333 76896931 485043209 958418498 672936434 669066971 484150965 357032103 996989427 728860703 162083852 968725581 823641443 108360871 736411215 184004187 396455624 974741948 682771825 576370975 455190610 392929779 807801023 943586585 681931971 291740572 71830475 321672935 607634384 56256444 66821036 52699792 19724566 640412253 548362510 631435151 35969194 672027820 490276941 554873869 546676941 52308118 621999237 272056839 134568853 198754025 368535583 10446750 662294545 938309370 960549310 850775283 734987185 250934182 435747349 237511694 169847017 304198685 498148847 838587683 277133425 869973816 265807666 594466492 244421495 504682330 508309793 197194760 589175860 104343363 935977803 298936758 28105302 59883947 860507490 439898375 449837472 433528907 478361447 742413998 47362613 958655424 668424146 624187912 656623088 629705301 611156294 907234386 203345979 644143685 925964221 198655778 662404259 857641008 229232089 116435775 361490788 390036454 954082813 821655324 263299979 983432425 878348674 654621881 718979917 162708343 956645918 600062784 197725754 250989129 331595287 716664900 977501267 833430424 624086834 837302802 220549342 624012107 234491303 450926749 184116859 946374759 901687912 384990775 332417492 446620654 978556080 608317673 474187012 305295850 663209675 330731745 230597737 67562903 324466621 668242684 627741157 969452675 437420246 930863962 548031127 912744928 221280187 377171104 155870351 680316688 309093266 91935110 177907467 183577357 104824853 774707998 212416854 967910303 925696444 837004615 437542386 581684311 16080772 985887789 112473688 917489578 243609885 277957890 162285830 686083125 139468715 187955316 551103143 407713203 52380443 488846923 380846839 895560000 388205221 474462593 802278848 598105734 662429352 973568781 490975819 970634891 319365985 329036708 526701078 859588122 513108183 2230030 233855336 197154782 252467034 681509521 20122875 440907799 72640730 714756176 211971564 139256568 197640647 249345845 386943642 400427883 199352730 185663094 135172846 293939086 820131422 103903966 589385850 218190020 425449920 970335757 670303766 536921222 258158980 203496554 353039102 907345188 163701290 362015747 495216397 622174701 979501488 657433401 189112036 610244285 699396666 950313157 267501168 410644274 901366745 72023142 675247674 585282267 918327027 628229172 849073496 741103026 403022650 835325821 899910948 805931052 779130120 270344410 535810415 759120311 985099854 568617802 852998323 553642579 429194208 659516794 976828550 712237822 688763756 163769258 640518243 458134558 843387199 883961679 559782254 253063905 641866176 864059281 401321148 875052711 10163732 506443669 873743857 900513083 282286161 791229531 641283867 426408964 611707714 825911167 455481837 108239853 454394182 218215460 539287885 275111084 390609420 205959474 435028544 300443289 467116577 442479923 831404428 939958843 302753701 1791403 409027998 280479994 591818856 220881556 573324691 373696089 532026851 709666675 543288799 932544087 923063006 23195382 867794481 833836 551234244 658715317 834082229 73755965 490925046 26074748 760416793 793223893 421185243 946507891 321926822 745786224 20646046 271903186 422307578 899591479 620003163 599199361 520120323 911808047 611991282 471699088 98176908 858701035 153263606 254521882 992980710 26087510 290884893 249008981 416692068 773640802 178990351 148407182 833712264 915299763 852867731 799203317 778400454 871422869 817950742 16758392 69341908 977903222 238070757 307410146 133306533 127122929 173916767 796246972 996601426 382447004 384455384 140460009 177139467 565463010 915736565 135416657 760482305 611020559 186321911 314621076 337316225 822527073 949935193 222204407 566006302 958633351 76642381 394913327 372174216 116408216 78850874 601452900 356844820 184822755 376014393 71552522 898060933 376691339 199582753 23845332 172893992 867705704 951295968 687625046 974317001 632076020 295085965 567842237 317876237 496832367 157169240 956721845 695953513 703262252 59860393 51321036 491255682 48129143 965986233 911947679 69947480 559562565 697657884 220280511 226335640 478672943 660741577 698009245 870510378 917988783 238052798 36508216 511947219 86701064 775399748 159120024 745734669 730241848 242212505 968244890 46205664 246054409 644154547 196141253 587539562 802779741 260625919 806040100 667001256 290115482 976658741 928002654 270395797 407102916 891177577 754909256 931532887 613712577 403716371 680478892 371229511 439317221 857245727 919016322 616959533 515682393 595300702 958425427 11477219 804390640 547335542 569805084 711325622 293374152 973016108 999412271 436585503 77965397 96395957 881864181 794337837 288993829 355881745 360577589 84448446 485109784 112213741 318172108 24412689 910629273 775264451 841053728 675496659 836299066 709897923 631995446 693826798 797960461 418918562 937516943 190927696 649106120 398498955 78900327 447023870 87385823 838156309 783469577 830428697 191751255 275023539 99587175 186602867 141409817 865769765 286277423 198145944 971072999 774109978 138080075 160554185 17589264 696978608 667834092 486227327 701362348 352472866 68265700 816407167 690994522 184806149 405471894 447167222 605045802 121701983 351400050 196116679 117551091 655245219 159549108 795321895 917857181 890373973 949186015 231590042 389733881 883856594 681776342 204005779 595758382 82551490 377403721 634671579 193920024 180652547 399153827 905685443 875250707 704799829 450476860 784884097 762235736 509336763 918981197 9857042 730834692 435214554 753372349 277910457 545229004 192244031 554427765 888983933 858570244 252862217 972744914 443929827 457300158 134531005 754321653 59213011 918524651 176881822 831762746 335372691 464192975 89205608 790502105 941816867 601929006 359658277 794730359 135754313 718596423 467436860 629208187 417130832 832709584 505452597 593426358 296152495 258320663 799042137 16577079 859386937 267114906 869029638 189385676 250912624 334771109 797348165 81453735 820834727 389217267 395624948 425641312 24490771 706405988 468271343 314737338 691690486 303539822 531347488 104775140 567022654 58421488 54030234 993301351 548894823 203303488 313556669 750591756 369305605 719233743 16576716 704441040 129633959 690318821 651042633 108798201 118687409 264983804 597163773 644194736 893982355 171103718 362119604 716478464 328370016 883156925 707263303 232374861 560424883 827836168 895646541 291209503 2486903 948187480 340111160 165520498 951308640 13698577 724385073 409824089 140167160 842603013 3447854 471294371 501382095 557750692 684128487 668055468 690341901 275533348 577575754 303852712 651462667 607498821 423571710 21867383 182886361 885572679 965251599 380888638 283752570 762064513 402910275 542899013 236714851 205214681 402083342 523264897 604598949 58709397 490170785 400147920 955174091 235769677 859692164 988952598 833692895 250101671 825404788 665765654 644864690 665561760 203994960 523938618 873017333 502706798 831292550 227709038 773686957 73664045 654979503 131474180 594607021 142205159 21227676 973234911 564302955 321782331 162128635 218881748 935114265 424456948 786000763 379525337 490310891 970953247 573075493 842872127 951018617 477112186 556209147 150820523 979513685 619586282 495673197 562956870 544595311 554437043 823403434 480013048 18330700 767155165 462459160 787849304 826602329 140124098 195530018 908405283 384826444 260214467 408213095 862054438 952006213 661843424 753170081 377448950 457477195 860709305 171920716 1939856 161158720 881541923 782676539 412886073 727248731 952977900 413414048 940547776 282159043 673841554 506825889 196699133 256038403 457513470 645733972 39398896 843037458 206802556 786599833 61749189 667977006 802192255 779645584 2097765 276562873 47883445 416815516 940128147 203786092 694891986 267134789 89119303 162542445 961399463 577731056 452815663 666163499 364875936 679825735 98412122 526447641 461872906 149858163 617711473 501478690 343531039 238355358 729964838 733404289 582663141 570784250 808541216 387715974 782328588 56554488 122283087 362032905 931797292 374994373 555611710 213971175 420489502 14446693 799238447 827462511 535185749 306014370 378208780 173720004 580145636 86882043 278286766 319616466 890381686 977465529 100532454 825606599 327767754 13827166 943376723 301228933 517052911 769282855 92428356 266307760 158829064 276119213 248331533 446859174 935054617 768949023 614933262 105195401 120096453 39978318 297160387 999608070 359657421 874670177 793296668 868789523 153445663 186224274 311925262 406243219 228595294 708240497 589262567 13915249 782540908 491654930 236906360 844790120 512912327 467958805 493380719 103921835 322841899 830100259 737937410 282264630 435233427 565795691 1263765 502640136 122588841 711873804 330391314 964148384 395507467 78934929 29670152 173787314 776706912 848570470 365607857 92775869 154135413 753729821 859553526 238596027 266789134 565869785 601316751 848424360 233097703 407949816 77834470 491686375 795358895 898147269 901439524 500788966 339625055 763212190 241879996 554301542 664433873 454502430 560474395 920745994 972897202 597511827 280067856 853160092 586238721 812442069 756951631 220824932 292160077 580209855 868438303 692318096 601619597 547986029 67756495 946862342 33974233 128967513 768002727 183409633 789512451 168009958 4265706 259183155 982627080 451505012 914750604 385548605 585278814 753780096 429959204 223920653 741273711 861869040 550223546 648985688 461926141 691161471 607467982 297290121 417632396 509293644 62526544 292042390 779919836 210353186 828835058 175543573 453837872 291096730 425883818 98557573 833552068 309691482 873717067 323079432 663007798 848855445 985636372 762389053 688866443 126375277 609100281 859098077 331908691 872436577 376781506 62242276 408128596 258119312 300989504 710433100 630532146 74175432 326624393 965701274 344020131 76018191 723032872 29221649 573061345 205893179 583832623 768780703 303442951 658413326 861234899 862854319 169439521 342080179 249569023 387475788 29181258 71936639 595770436 260841758 939755239 619270308 137315108 485698992 940409462 585418066 694934053 934982518 844612074 511642789 161017118 580801097 961962039 963556422 788190146 412621313 771425023 307909077 690985535 692682775 680048517 62870689 561722443 846626335 392301861 61787143 835910197 19363360 892507155 280384147 451284231 905355799 537130372 659459927 8213779 517111051 38138215 76647842 557862414 74485737 994153957 303379249 147640153 994240338 524021545 250189755 574206397 913328235 474329134 420230832 417706930 600598244 854285930 618041237 823970438 550648145 481509121 550596664 488317680 619352112 163096854 295556917 149833377 544484635 424057305 873956239 68649471 987350656 554344926 897390304 834369851 744135201 901653396 780139590 825713284 294658769 97539751 399174340 791095552 773076126 665835390 283257751 97329614 372268494 376073721 35275965 125938381 689556695 239367420 756815180 274368361 371945726 34880078 134853774 568657138 30021388 524198562 689155366 655868890 587896979 663093631 698574439 710656296 544518024 723813879 114352771 389832230 954811840 896833852 625458931 657565778 825732893 604215974 512939755 983804327 707593628 665810270 441746098 93041686 879181414 294256493 185634492 635352818 389214178 309822073 210958504 29868484 192595660 67780425 989123821 316096121 54573922 417226302 343107687 507889539 5167389 113868055 807813255 519149005 350926995 833041699 410638012 422159395 931531964 295439736 669000457 734070070 638900253 844469961 916897492 27477918 64087550 47879040 237440056 441373378 620084419 249236652 796330986 475471908 705169669 920198415 945961878 712479263 145027590 682392417 917334477 105565612 552235781 689614548 709316245 106541502 338440411 31231516 806676562 863879089 60173750 78803465 46708472 325408071 72975129 182821926 433965538 207728014 844779628 721871233 306918291 350272812 376277449 458623746 431217836 975954852 776770385 726043806 232686712 708997163 389874147 654401345 408731445 483910534 663518686 424496055 788579193 140279047 788920229 444772240 456304833 64894728 294190627 866827968 974768621 391760040 956341029 193293219 248645863 301964480 322027099 208403951 562390330 627302239 51484338 361911375 908405514 859088492 982438036 59858698 195850486 854204519 400703895 654133038 221751581 882634993 74709567 630306352 790518827 887491753 249526839 928358890 583213811 369791487 936840573 781596467 380633638 904925094 628569478 373784473 515179415 643498178 78137453 418155469 743125745 235491366 518336640 153427568 29418829 794753667 207919803 342501634 354080246 425670057 40536804 965267794 439956554 367217789 120043221 658332583 35909605 521492961 596208037 336810987 506750526 183433154 394285035 213670627 501434235 67666424 33212352 257909024 803710882 968613462 644106287 327302229 524674176 795724045 281499865 347026916 7179323 12939831 558547957 106146568 549753664 604374092 413579109 548876436 677003155 998792613 190036111 434546553 530520849 24948889 782229174 790475360 276592700 218087356 27899493 34433021 572019403 854736768 205025380 849625305 624753483 381903978 654033979 795842982 268001188 854153293 712238400 6033928 144834053 103286469 521570181 774346877 280192267 52528110 559779020 900089598 499348785 287960528 699857102 834493605 102093532 836407705 121290455 346650834 253647963 439036933 311323996 98358266 544745800 669184380 778821119 781684661 234908478 185791567 361084956 267098613 783878429 936769149 268639873 371663722 600033280 176404293 134768712 738996762 752983413 746563635 792912351 157305021 865745897 577250298 566723918 594090045 970278321 925538255 921399578 747343283 695374622 207007797 507631585 902882021 71501647 822246819 894345456 137215325 708780465 891577482 932793270 661877885 212980238 263591175 64060716 470001621 136265522 461963668 703054049 839299097 574374067 130578640 556771244 525901718 246257091 813521816 259476228 425112190 753838468 958101724 772664214 280370835 302172047 633872640 136008582 355383624 891842261 571553311 708535000 260217361 773949594 179901758 996292237 528848349 550505574 427777446 773191132 505438746 355034144 138879470 667768959 301009701 872173964 246930065 14417425 582993340 45010763 125450954 689095717 435097230 536515609 178767162 664170729 63228286 211371733 35287974 195789862 293917990 406996854 806882120 952152239 731981941 37455517 661945143 236753210 368450256 527171153 383133582 637684034 456231392 57781774 560986876 683360085 680570557 259919996 685611546 934390159 129902331 42471706 323960973 332131867 958720848 286365225 359523069 833995902 237467682 66281831 525136039 640716160 706531002 274085426 153266141 898838051 534795077 76722445 728627302 196169744 896340233 801824312 188834213 569029964 598333519 753878975 309866524 212616160 104188012 10215860 787721935 798493217 174570322 236787219 214716647 312931819 180115229 657324092 85582481 506537660 839681672 772134373 380022063 321709844 844396219 103044015 274438480 386030340 549451092 536962031 506486391 727937258 413099010 401811008 26712039 50208231 557402380 413683371 369914804 98890979 765395557 312529531 435071327 899546399 770670201 998690680 511693944 576624301 95115658 92901927 873049812 354287283 208544400 908604011 137331744 180394731 555522169 214547687 966973078 972362008 638418089 442511963 280809517 823033588 705121537 378399519 823545890 814469974 926437946 996456126 995719214 847391070 264398593 463562985 960932306 753691823 417566133 837443576 986493176 545422598 68697217 828302007 731821276 618821022 236276866 464015943 77240431 427960353 761252266 15789336 871935831 730191916 266525423 769752085 366335035 735695027 154997192 735861816 83577782 300949902 30350921 46309990 40988261 201861013 685736597 403973966 316375518 302673756 957136953 24004928 453375271 984206783 485175461 416448228 770176612 772523628 379115971 859299153 572914744 518297266 357355727 335419348 409695255 809209554 945180629 814451390 363486986 146534224 821997476 598069949 291110365 948591701 881892834 485108702 491226393 130915725 461597656 810397140 524570429 774042147 535216369 412516341 718363064 842359746 194520528 404965269 967054983 575674736 236394589 241344380 699633213 560933833 317751616 286753774 97225153 950760437 324445648 19682566 162214172 149433121 750175576 459688206 589849155 738337536 249521102 526499874 613173625 161483748 442172954 791304455 24547593 706669961 345799466 760103731 504398538 343646229 453586134 443745144 545578684 866502818 246455604 983175481 855402583 969495536 603881858 522149128 165219975 422085965 610825868 140130046 828795104 98929594 468056320 102687481 605439041 614738396 561919019 217768210 489788108 685814426 741932067 742097782 419615469 968376314 769619117 20475257 605223060 716579116 804742487 521115878 287200421 65926193 443447553 813105096 687584940 282578733 599919393 598797829 228053450 582591414 639836170 395068706 521602946 261611206 271574366 445194582 703766073 251370954 643186201 122128037 962340299 44682006 668273670 814338818 797743842 573314672 184566413 666624039 259687766 373752766 655352425 302859126 185420210 949873301 358054806 928345172 711412404 893994200 81325085 424241901 323656856 270134374 74661127 829464078 938568588 567607679 817798781 801184700 32529885 25964498 781803423 896084400 784203824 262109420 293751336 669576052 843669642 453099716 736853642 760991487 154472165 893198962 873078508 231812333 43208175 281946747 436198942 970380489 863498971 478107316 985109194 700640943 629860436 665049897 837439842 390472580 352509799 261719893 980266902 226946263 796435690 443553611 538314841 626671943 799898716 279843968 702850279 367029499 532415947 192551196 868750505 505321334 62069558 838364430 809188233 46329417 329094417 656054733 255638002 576641437 945115545 177626579 289992879 670986390 950814427 845479754 794602188 227818368 510422005 423088420 53856780 802651565 638723942 897059698 66984780 670570216 845030173 368797544 262944721 145970461 845052467 107948517 943255773 905913089 583198060 17485257 327155951 147049682 66913112 365911567 210618224 41490132 742074183 368300852 834122556 72866089 56330907 223703300 74388379 69985806 830311732 692395089 866328348 171547086 721000024 560767876 598775873 776679058 565024746 359333006 65651411 238700589 541295988 530783240 78179501 535217298 264211191 452459458 352228364 912235386 260128628 389829134 528455030 310606389 851360139 978264386 101965445 276476710 193847980 601023218 297438346 91749894 749622194 732381145 672881408 116022063 990558871 16802999 48608618 809507381 185754395 693969991 207306884 589531202 267325616 817147207 838814814 428223585 661004237 911216412 130710904 341686333 461519020 847006571 176256971 940075471 57785163 905598200 870788159 374718577 427425312 552806801 627134829 319559876 734153720 607995560 639886319 286319293 469905584 309868754 849655406 756859276 812658299 642153451 759484680 927544927 951353741 215165617 513913106 117862841 350890287 380338572 79442331 331838678 298473141 169606272 780258233 282681751 72828733 483756046 706819401 100684909 809432538 323875143 278965994 446870950 104579591 637567788 157618619 993057257 542840488 173174490 308930424 173489324 846770268 781791359 818019060 243343204 241117290 829328998 926211109 211461070 604136798 738019026 856402092 422548792 410889952 131724149 110206434 313866593 155123910 121197648 249742271 986285717 522872130 568272763 120133873 657520853 618527899 613368666 471830487 357237323 983666334 990124445 158476616 758086683 229855218 458346230 727926827 958382598 585535205 288828125 472970664 355812899 404588982 938064031 283981837 497468189 664942714 797283214 356454885 339553 30153923 529655700 663016174 440733749 7014538 510123267 779387495 232344571 529778578 378916158 77959819 203309656 592941388 910831200 527020432 573816763 969828288 712390501 851540381 461796211 278403888 655061231 382059438 286645423 590780816 457684977 839894569 927834579 921642839 547394998 286196103 609075427 152529310 591510145 777576447 227307901 760395520 15210426 45347204 990853839 315476315 95731641 109032044 197909660 639349163 133914248 160736639 848724600 269508106 103569971 446273665 100050607 898567343 911629383 185886663 416309262 170296995 810091959 616215122 709054118 674111987 986025232 881457185 992389554 345110730 512342429 445461593 63419106 672262491 149634257 287995920 73956460 699102160 801316893 774749838 874308812 484739589 544042537 971720104 972008475 32621896 613695568 90421792 410640107 337040918 878101654 424387300 916305887 144521374 732650218 130403450 520763 241361905 752014751 453889716 398121414 378108357 400511729 750437974 830963382 252679094 163597742 995915464 523240801 404026992 872237561 524673654 758015578 692548373 109205306 505300469 861061109 56514812 739544423 54179887 272437299 338082337 673006137 366685077 860053201 82102249 640074429 103336028 948336274 176845385 852031079 817690017 825509650 474712365 568586640 327245796 745384758 635387322 146153571 577914832 317928022 106009476 10399191 944278938 989414020 937622016 361305856 592370945 120684081 91968505 825992680 527931418 112340000 476875342 785795948 932345583 487273919 467425491 70478802 802394395 955465582 497061506 783433722 374247670 560771257 292732175 927479813 828956107 426429972 583687058 114820746 498601409 679115686 467289353 773306231 244386103 154018319 685196420 968742887 428213270 8036475 191254844 184626393 718325041 906351042 32140453 582811690 875340369 260200492 251466695 246685769 442061253 282410968 50114354 968897465 109495902 162871864 695824652 399928310 933443979 357444 315260240 62549603 947261417 375863168 992581433 164274686 626133026 763048993 511508040 130356916 727282443 683594375 650410373 186447362 835580554 73584371 390233425 170417841 189360995 693759469 133693637 367229338 949466960 828490494 321143867 635977704 21661081 770956437 269650095 971129410 738276773 578965882 759047879 469952430 193838058 609082822 621116163 325533487 937997841 994225954 545982636 557575003 441558064 448282903 175591153 178179024 646089151 299650634 875530304 565938107 719914894 675442620 769497264 772523711 579499132 268952969 398374928 65314088 625218344 527821593 700449349 643060053 78544887 677842660 443258365 805965363 204052639 741642991 418558459 185761278 346883039 468045507 889893273 672752009 748380125 435172552 502622486 504005483 674049047 469253371 491325404 769997126 2267188 918945283 137955415 688903054 777672907 63886461 56919217 721372078 934437806 965841973 404311646 480442193 360976608 117170202 851093991 738666306 839946757 903624468 791259471 785589840 965671552 195563919 5794722 692133483 245844889 935613335 681246246 886271427 450238639 817194676 466777829 824072678 295663467 997987567 46626579 743943192 591662659 927761347 477872762 507715042 862235654 194927475 30797343 344543275 822785496 429537661 425162072 927382328 321028457 881157050 532838354 454205019 831419857 474882136 747955017 446140701 657550671 222605765 136891411 511883091 7918910 847343754 378017127 27191584 31739542 689340995 861600500 966030750 630384543 57671438 604996955 558532433 307581578 731134440 964521420 477184170 874498176 527486374 973179828 845508170 789539072 161950049 2483665 290614635 711289230 711911514 969014302 221330531 771622287 97895226 477016719 947297401 457102489 316075716 205751084 804832273 622145550 871446397 781458928 888326381 486474710 903516512 613864674 92977137 162603996 856562034 15063992 529668779 952315677 963548356 445421124 416993310 255105494 23249025 196193070 213379081 39655571 736368694 246338808 974343212 717736119 108714391 555093441 796422454 375026717 940023864 724768121 448042082 209783364 157286064 311939841 964255945 211566897 628160976 593454448 842094977 909104433 926047458 109160785 735778643 87754903 360670076 721062153 169286940 512110387 893041922 386641313 520962159 302099523 713629364 435523732 254126746 307247831 898958046 503991415 700106634 133277000 272285769 21875627 95181896 874892433 252200941 425044930 661402352 43789755 217387578 216338659 74742030 395366231 61873148 317032514 545340253 770649180 871506560 134280438 648948093 821963209 137103241 911697394 546895515 919785335 372962486 147843285 529628877 53220972 977333990 748028594 690890769 15392396 240026637 243764872 944322367 243643260 649911935 798945105 87685764 656167314 320203410 929930181 173649513 883279758 741157304 321863756 247980658 491350527 811872626 742434171 37001191 823486259 393676810 117193034 563165221 154686168 950694798 286474116 565957209 262749833 442102319 3825489 704037878 207536362 738795587 653521736 355271222 271094679 102703349 116182271 901093186 92266817 920302696 735493488 904490728 848974109 186514438 419507420 437132811 104156369 121558767 42458270 880792052 307696027 835536120 92140430 580586579 111855971 797678590 104110838 414809553 939337973 140170077 93928746 262775734 529711020 560690722 418319652 251905176 547786588 252122430 78425331 240153218 97429350 972623532 813931421 554463745 914983933 790836538 14016192 106297160 30594763 414856225 508161892 206660245 454386403 775810604 109101503 108535552 513275435 905181050 143613709 857547154 996915990 337705716 84463562 310040747 515798045 765465294 185606719 51569134 392374829 162618790 531063858 542013025 541452839 936263382 620506615 537129554 760596087 264107423 700766406 788934023 155752638 48392924 719867268 18353676 234164815 87378167 472155040 868490950 775879690 687171011 958971562 855498676 2296454 58527698 472234659 797913210 12882801 725496116 155551349 600568353 645685793 744499163 986645441 841603424 840921286 900640451 200559494 476447597 224622538 30790139 820567850 426792871 586749603 900294889 940407163 632009170 750378285 129179109 133219064 532958054 714791723 728559502 761596616 789938957 707895037 922252353 293474952 795294396 495588123 186717614 690720666 364633024 887002195 730005483 254967496 823273971 177770212 826886144 454683032 509408567 684667813 93079697 987423443 44959081 581066378 963437109 865709729 508105296 122266900 554351621 121158027 628092901 906875074 640326582 833106589 759952323 575639487 408469436 465929689 712278852 217803666 435771070 998664015 910083141 766124146 783950025 706799865 631224494 376758891 842062295 272894748 243766992 294909193 954742979 209381042 121451063 5183185 318331634 781666947 907304441 766563218 19440712 921289126 721869739 879453023 846878371 699218494 358505377 177703656 994917887 438094440 626398365 981303422 493049315 658607712 927145213 453517037 254380219 142834303 376077676 151170405 435561879 858050807 56548726 289685634 692276317 569137854 532021275 286712846 770215692 871148262 49443712 881881451 272029990 759042023 746219302 45820398 267395486 476016708 255516731 689275888 915010296 553077890 613414354 282092891 687254894 566678651 921878943 312452353 315667099 44809773 213640561 937100883 443710506 122455329 701660866 6226139 163995752 692982825 905165470 88765607 522049577 382842559 354463549 218199774 259717022 800547173 168881024 230753725 63558632 25076563 343068122 77965902 858949830 605061611 891573837 197552721 167436204 756483593 775139795 911438454 650556899 474308246 826215769 827610364 358110060 79792177 810453478 480803194 505468532 990447311 300428763 413455364 21058013 590001472 605407505 936343887 260637506 692260411 908280954 723994554 981479399 935492500 49676920 839659879 761303192 932259598 661394828 764499678 167830377 832200907 642978841 551031448 799795956 712601886 482530784 693849230 273345487 510802328 620855798 277769090 417998211 348116004 756375554 119072089 450087617 616257945 261907407 128628663 819100670 509615793 939806656 101762719 441026310 138452116 227565731 374225675 6805646 203599262 239512926 947600317 931873486 830469306 180298428 516399541 414520392 987706174 862087576 833821937 880828658 118636907 453594880 448163211 866725676 127927425 785624950 213287634 946541912 976074980 202881635 27335789 134366791 463744610 448165560 276581259 969306157 654985752 447247094 353744259 393403272 141266335 767702084 999771701 485495248 355885983 648029789 300448881 432587400 779205253 325085229 950481182 588231281 563965258 112841073 470964610 738426088 533449857 339531532 905254607 196119762 967202024 793431745 103995873 167691991 203111536 818076147 905355126 300835477 356375092 239201139 620964205 779925183 67274530 62962107 295772022 654813840 67789756 737910449 512189944 182638335 867673093 650964597 136421252 458077012 251901238 498939978 163892748 632514347 626479207 636298029 946444583 267007650 353261145 866018938 627309131 933330462 600017176 400225952 340033548 38137588 656190515 93593641 60642382 106881085 231493332 252121428 627235852 333555696 933861868 203821303 434524075 589263237 870444047 922437056 936232476 493266048 343255259 552409398 398271804 746028982 876374900 447138905 373801234 137099893 634719967 37250263 514704880 110159571 960177200 280397648 820821968 223974793 306459917 407308890 852375765 48565720 163076019 234024449 93181007 68845560 35922258 815583470 649718601 717486775 485228968 163309874 753594458 440127584 659788296 384733640 679715279 356790946 342729112 612653225 247850050 998463890 633588266 36848436 334448733 228588857 763514973 632600339 654715264 384258666 539549149 300566746 400473091 215877392 208506341 474039406 851090407 559458724 28536326 557631430 777118448 459629418 107688966 564353797 958299739 139239938 541480939 414701402 244456489 972682241 203145148 776298723 270411192 556987675 72848253 79788866 921176770 583631256 543979466 850981537 466589107 417912123 85851770 809042008 591641227 566828115 594490274 716403445 618897504 698332430 528232413 473734907 344206840 354178756 907696858 464903198 900244040 20687286 756414521 869402179 425299814 676586585 620302715 373959690 827620066 796260659 572592869 856905369 893161291 480883400 273506350 797723317 848849271 61911499 768582646 937624991 2550710 504143115 344781143 327077976 558801967 192951229 793531696 18216603 58707323 345736926 625065913 357309767 84302867 291571364 510370401 218409290 485384808 473019560 311309985 559916542 561828659 983788872 402726956 532949469 664611087 611715036 243789554 36859988 12220690 175010902 415257820 469039264 588378775 622170063 877239722 335152506 739844148 236628849 999981530 611816987 82399371 528993113 629538049 399996496 714802807 17269700 713536816 811746752 360388088 658533637 96398987 66469544 62549176 610103261 144302890 33275536 595380141 399643536 221181442 793131548 307740846 578536578 959313512 858484497 682690477 440995041 884240693 65228284 81284771 299108183 961913663 331737160 521015717 97092024 842386419 771501312 369257065 53240129 772126354 367147832 523305952 472498000 407796741 678329114 949441225 552299723 786071278 808855338 684509709 853062062 954169374 204430114 545444989 697034298 614789287 530266779 870819090 853461460 868664035 949111041 528590172 287264917 428174254 762660428 999041534 859331695 31925628 508474811 77895647 504638143 740032827 587994588 95257812 463159705 664651657 625400055 242560104 210953078 111717181 509638878 953331688 84634146 70433886 467338337 197785263 714150017 612093437 229002334 167986428 733775673 601358597 429026077 865436501 678813617 157470616 459555755 56141718 124918521 721550113 772326140 567855742 549671252 134031534 556076379 663988294 721455972 680462312 189838630 582163180 651925069 547557493 319129031 573840588 291320069 358809568 877277668 742033882 424371077 104574440 638817644 959026726 400468796 909655975 195279151 549872147 577008340 472148985 205144593 48569694 506406617 153729035 504362567 677412554 520476210 452723579 294719141 41931658 590005232 760777109 325894894 225985618 336594387 268127030 934207296 611038806 902166951 512587638 865139345 398830734 802846497 601227517 912828541 806576002 70921992 587770561 795895931 242606766 163480676 839054816 50683855 206064839 679382369 694661588 802391100 237913050 764925627 135447981 135284787 689453326 123672736 943795902 280908434 78803356 625181537 916017708 402375100 646501784 446067817 144540559 921661861 993393972 371662983 695871259 218578412 589000864 396629795 942338771 617873143 383282382 752057416 285446127 44501970 497193217 490335085 301324191 792296345 522591643 263554735 96839739 367512028 100749943 721573031 113512887 717526515 816644522 597347573 985039456 768142714 73621601 415824077 704053754 466876925 256578964 732860136 846165492 245908405 40599600 876239577 762070727 828590572 946695263 267668358 675277889 246376269 320152239 132338375 930645021 897102111 635071468 134646940 721669572 670961898 315334484 711216727 905816469 181650590 405593748 997902606 606282620 824144087 193627329 274956750 930813305 832976578 740076990 29303921 34711581 393683322 889954601 579833546 576254168 259421018 483760756 338787202 644838505 354234652 413493798 380614634 484511486 566408635 805053683 646959370 682029689 215460886 451622490 992350450 888698936 226522035 924534459 809711892 609898965 36474224 922392574 659664487 681890555 573012997 38332723 820923245 243212559 331846620 195971954 817984373 282571079 791508367 82448507 681537212 518363335 9778299 562907437 863908761 699951362 164244342 276176505 339985690 433989552 464614065 237380687 994734621 394321832 342781831 965843671 220688914 679749156 364682968 785835521 317627857 172591216 695965439 882533466 831420092 804985953 911034782 90931656 924137982 456099379 952320884 610381578 54688621 264490462 847058975 885245679 363020940 797857340 180112691 422854319 766625395 362342451 591381857 194522700 256442773 500993658 965254582 735398588 923464296 483182972 650198643 976073005 478820435 357461767 504854772 972024125 436001831 878606649 495627870 929637606 403394405 317037318 654854408 977817013 525447950 776707071 497870974 402888370 230695719 895610685 300172677 378600516 870945675 980962563 93810748 561604734 683083469 640299286 322810320 823474927 684711259 500883356 681974012 443819106 822756316 812695977 19130921 948261721 657462529 729715788 219321502 859350894 602736210 931826520 190088135 652535132 898254907 731364530 296181606 733493642 184947338 711865451 487127901 883116763 792955131 743551481 616211451 109219415 422967453 120441396 63073973 387301968 843536663 270999639 945013219 144295401 818366983 372420163 565190867 220881464 327184226 29685697 837657027 18890218 886658593 763231914 493637973 276315673 182488405 766396175 18524687 65813774 132257469 833437136 190609834 783513701 132332514 535595218 791210939 4212159 165744789 646295403 534623502 870731260 568602539 975840116 442711866 566816005 885088423 615719613 99632646 706076094 588474152 442088035 916574406 397737133 66239036 411734216 589413997 677194232 329746614 852253386 361156858 466936972 926006396 986417302 62669589 691120491 616054063 992128081 743737497 775635831 581429745 481946385 890865680 770057693 410904020 124711823 768860856 826095687 772690296 174552863 370564391 705411059 97992033 182042440 995307467 535884511 724607393 934841293 831817770 433919658 713632606 960246025 936698402 730472003 65088266 600004572 83750151 824424931 49183693 47622255 362879209 308556155 657066284 944806356 405410606 299891783 199620409 308677315 402611885 487329175 983865174 64506675 437665497 837834382 315419086 826481177 555975285 150364297 845276564 151234125 989359610 1060521 54846274 450025546 881726990 845774693 595485804 569546942 499524851 658956565 343950922 4199135 836864837 117625916 263587102 941402828 306897590 485438283 992932383 513145135 46150675 719244269 615426882 899659851 493747601 227743228 524980592 404509792 159071430 619688097 902592403 370750107 549024262 790594156 279437805 575014328 928640906 66092957 339350125 135950197 413393979 507089533 424297079 539245199 760813542 460941284 570566187 44874558 558652649 37245161 158705601 221626131 605788210 121185992 524118566 671787513 84842840 32619567 627551471 651750385 221157973 641200321 874207573 294542891 958591431 70047889 135148817 465643445 84872881 523570338 794311355 979949251 903057908 116946752 440501352 813063868 925000061 385635358 558946557 36301190 852592800 443330235 101714829 900110034 653108140 920126916 806935015 346484434 592554108 208782039 708464594 472287375 297306414 895290885 754349293 289829581 123273090 416595914 749608289 731783789 800644652 471598252 122108578 845503209 348742387 506648056 334682618 775659876 449081534 339637738 108034761 299492228 787336875 699162129 156826320 270671530 938181561 736736890 294266593 364478203 852477534 877936977 236269174 962425497 652448299 360017898 630359931 382259646 399629303 956533069 760393272 407385386 873769530 233563113 684689747 84489833 235177360 277252886 456191567 673100125 664320820 666249047 159739053 689435943 975217711 325422467 434366803 867778026 101617985 938767380 956705164 531276475 51633484 874059610 216314316 378688156 530695597 585749611 519420415 985418010 120840276 64909187 379499308 872788440 837682329 321131901 312373923 799510538 1904659 792043216 268447151 577565689 180288456 300397586 427736901 539671639 263610733 247970805 200903914 939390854 405549584 381436132 171424607 465298850 791280839 20255207 223885299 525584357 115956876 167149926 930681635 925750210 598136917 510842634 34432073 376777800 39467842 262926889 115823352 218378322 286910183 519908927 36634104 452532212 752075429 499234137 219570854 756580333 835493234 336952063 22380982 661499593 705914540 769284278 380470051 145956686 60044417 676028194 370373295 687428990 759772834 30483708 293079216 54450206 428987308 825904517 941783882 437139086 93880381 919679588 6809062 339118934 269316809 324491824 777984105 531393890 702932522 943032656 255192752 58351402 4890714 256327077 219846167 14830497 54249902 439583651 548585980 379930723 336384181 864521641 213465930 544607945 850152778 904945852 601399786 985616783 390283400 825642761 620367425 538087612 280554118 271253446 436769756 928792529 325916844 851882464 15121199 121859155 354592397 639522728 158753087 859102094 511504907 350528730 861374735 229306870 385220685 386631795 175391070 912028938 294897517 641230070 367841564 312964981 542014976 86300736 84316466 344407185 51803538 433634885 454896663 744703181 81903854 558088079 283530533 143479770 940616103 699840683 463006432 602543884 274212470 636116576 38925604 98118335 481075314 476804815 909848649 428829720 903517234 9770763 951457897 558180396 737299060 847177650 529335676 33743267 904655298 712865148 331896884 602625021 752617837 829154291 821842253 930172333 260577008 897019510 383201201 140956837 207350207 753508837 704045424 501898914 230594595 106423044 907113455 823056923 260465820 516284500 29932388 931617199 466209620 65381553 203999501 231556683 839806079 963683705 677081910 323271091 306651999 101277531 792754495 407678521 371620179 548296248 347450971 417371167 820675488 353236286 131139771 946849453 669633601 961751832 603651040 130275775 607738789 809089040 524612726 97997910 246451895 879420846 418174573 77360946 576925004 895785342 123690867 395851068 989093754 572219222 321108879 696931484 9816092 510744974 80008397 954656854 563321084 236222093 625652837 825039329 529278234 965159554 800965366 998214026 445683589 413675863 193707460 938104103 195519108 293865029 353576230 598408663 443986069 490257387 295157450 312676486 23407850 996201195 375462839 608889750 172245684 236435159 816796727 636988937 67995293 319213101 225769701 616071 804759908 926179710 716192033 504473608 80903956 394290265 534265603 918292281 250915994 856998099 959939124 418315815 941485284 821573176 377740087 807766711 139359544 417761937 11971011 384736641 395573983 817457522 953434685 949373922 796365762 266689025 426951843 320105356 207665225 503807193 822116728 511616997 275541773 450441655 159668739 668986162 666062289 13242287 43908608 347322121 879268618 1399615 346849636 278635685 7626839 79122686 442160828 826337081 563220434 866708594 381724788 327068534 136128819 822049007 940273134 359904057 344291001 424211936 242262875 901244995 324218119 166891123 230838927 366097356 474666672 466012674 903268149 941335295 952374022 409109399 525790393 410863156 677809601 846836233 95298090 814254393 898352645 424969128 722467846 559842906 651766043 7333069 553855754 806539119 390307158 226174487 15378164 127421451 733738067 696755614 742189232 906189159 993788801 819233856 151810741 282319973 419017897 502709605 396744000 634933464 318422339 443821850 184423825 107025743 98267530 535348065 331519090 364316646 700029491 142323321 870989143 977766498 6618716 737824242 323065655 295099801 428876045 837461551 136973450 213883064 937217010 848976254 555473540 449465070 365000087 251077624 599665239 735450106 954667404 717751539 464263369 542184902 651532378 248952941 797231610 544385896 986659398 368571891 665530936 471317941 51607110 727140379 941105756 536593359 253126696 860445683 585269632 624372323 509992674 669934535 827320074 873081749 504697873 835293064 565937781 701721350 664918378 313662492 882991581 997136435 115498969 389416421 932756579 909960521 893359538 298519199 642003181 840366220 47370892 716232294 173944297 339546834 719142482 85803795 433325452 740791 317138796 119215772 770133636 364467813 195308069 897645384 691388614 109355760 270926391 730171166 523579501 212382117 10909372 798135767 5665679 915560475 975887461 814213534 792510258 691414349 838004669 956747163 407650945 999751990 665144646 55165886 50572406 664359907 8525944 428338966 199007795 790891623 456278214 790389916 331350154 174965999 276592898 456893319 383906129 550997103 331884157 367858760 118274641 827403182 622508569 313079753 2874942 785026690 950295146 800222639 14922590 262134721 342832524 312743776 930908779 762456364 46581778 43663141 517079996 723238698 73820339 182319042 662009347 855487538 720299746 488363396 911614589 457630170 320842323 708632550 226401713 474161660 84572995 103868755 680836519 541911764 816030935 53742497 720946139 75851662 913299792 106788465 826139070 957547654 560788704 827120486 172938061 43691020 53797415 446759298 501239031 555252571 736132162 26733344 912760769 837375503 365055001 823031723 609506780 915165403 274464383 511898052 189500989 530182921 293476368 121060004 637908357 30438781 102538700 907004324 632772727 773977999 425005308 218508001 437879324 926533576 689190119 712186863 590573574 944590939 425584581 20290762 512270351 481385977 546920744 384757210 874367506 841353142 2018334 827985108 539655744 216534018 778087335 184918070 357550440 318538331 712508174 484047828 108862748 997597221 839626063 785291326 882555336 848216823 93420064 526943109 789569052 16900544 864820946 797252571 133883301 710605641 962730797 578644167 767039864 157030729 937853028 929872175 800658272 765351302 189120945 833043731 926941764 287171649 610057819 538583822 894947090 499735828 642837344 730904894 966469997 17890266 261246955 436862450 65157693 203405273 877491765 167782148 950481993 249220724 57643148 621269685 42944338 612278259 251082786 842504044 743760418 485625343 140236259 686429418 706638313 923512791 513038146 349193062 270964762 743285225 999425194 957249503 506209086 623912757 63877494 714039531 215136627 789196437 708400578 36807962 749320622 146746630 175603586 849753951 837207136 641234161 994522020 104329253 814451535 939984381 527470072 94878997 935259057 964266027 277573456 617715480 151023001 299770348 507001373 293499707 953216162 180963532 887815568 197416156 585809473 668581484 603336162 307487133 792281441 667738517 392253920 985397094 589668684 692690271 570975497 824168416 630686340 205095182 435197353 523744466 596776780 986763428 815102546 88914359 441675442 841032133 223136177 331095750 330231865 901252679 580727461 304639021 137898952 915989605 391010443 40479469 700050159 996545570 203847216 755956796 885792335 493439925 370533783 53014390 805847443 180268649 112798138 205298521 922112074 79093213 449534076 379747556 646764217 149213746 573992934 713369267 30172681 988022363 210914313 699876990 817284809 445878847 805722660 353348820 558138401 52257289 780810724 836901349 509374448 552419971 867868916 109014266 160347836 595055811 181214151 347573836 953811651 791039699 271725256 274177275 318541060 203674663 133007329 72874285 83687249 657585118 440796446 558102846 129409428 335312511 124439930 17759889 581371425 973211029 26562923 826684734 96051130 278754732 823257353 268444505 986387331 401458326 818687665 350532063 549165060 940905778 147597692 324755046 95883963 355070057 198010577 212889337 498263784 886147997 531308538 983373507 18004066 262342572 23890655 506196292 923172939 390796975 302160051 357060852 199384739 881809088 275226719 218348860 41737214 162124071 272355591 900725274 152542786 553175007 148070521 995545564 141529231 167974524 113770284 328917135 603010847 414821701 476243871 187322667 29326783 429881661 673189111 578331716 309814664 138339143 114251872 882762832 351298793 306708771 456312711 377684750 893601388 376191967 809020092 294155959 896736117 423990890 901886556 634002694 44955411 251107259 874134543 640543509 984640753 561118288 263940650 739993524 624198416 590640478 523032468 994492146 526898031 24790504 618442822 755487217 460200110 326992064 660958994 378949798 695076289 171975819 968912138 623258907 399316061 880215266 136052430 611886987 155911377 83512857 343575659 883551814 399502671 270994014 992194844 237394691 52141606 162390672 904319604 700167379 258145142 511078269 148886871 838575044 166412478 252641433 775508046 907478433 220930636 233488943 928943214 402720969 365538413 78170564 16149153 195703424 854148510 786103829 819969078 229108294 909482792 297054872 143362477 40320521 505029162 489099100 182116526 187949154 90017017 669250595 482362925 636699113 151969687 553924961 831203776 294598221 40963493 196683174 402182539 909202368 745612368 285437773 441740506 946397143 234641055 585402380 438614078 602221681 433574220 789774516 303273390 542206983 426018476 4442799 743056293 755056707 334112379 842239910 849510943 316411452 141404370 94586236 420448721 769447219 638229629 968354114 493348850 105073146 854155551 703509246 940627374 252788747 426141824 957516848 416724436 719493769 311953690 690617294 857028326 494897470 552853348 24704295 800069533 208472111 718535847 957177558 131081865 611900645 901782625 156695571 24687158 813367630 100730398 966861439 679087963 488538884 981956490 427964987 539959416 71250569 711434630 649627534 770141854 831436941 806961251 565783870 665265001 685581459 173000045 815297580 896666347 354668979 16392949 706203272 766002256 304346525 568793757 641768329 570190219 871785739 519551899 883461132 23843522 318221034 484695023 661399344 785322148 895462205 830275205 463114211 113795657 40957284 311378219 329651250 759857996 605898557 338063224 976589783 254924141 693937440 721602649 939833836 262483994 690130179 35912643 911680726 125006328 65913474 763688402 489270298 377368836 959126381 221042412 405851931 630796468 231585726 737088649 995360531 716266693 999612142 141624075 364017286 409468202 442202976 988427168 594619974 443331284 77730979 23965927 563395336 104524747 983298993 750699704 546298906 236721385 303231783 177083686 126102772 946899390 148040525 974127138 628789741 925173681 599275155 199393823 90192269 972890090 640353123 110786477 873086139 264270798 640352588 242337505 862477376 265991481 61013400 713682998 750291372 304527689 82958085 64992410 717946351 654187489 910868758 303345630 813266661 694821117 193756317 110856713 660151372 444930283 831601594 973709725 270276518 995804522 676841709 133040225 22910085 508652623 752817806 642670065 311072519 708953620 773273062 123476107 653464670 292227001 829600413 415300881 423893969 6095637 179230217 223220505 468262504 906947394 521494308 869598686 151564154 728754496 40669548 131958988 850401752 793938788 239940942 752582722 917337002 965429775 493671047 546487715 684375549 74936651 689841453 924881833 514657375 453208291 790259459 521057411 708630698 661002341 386921687 195618524 224221487 415578526 369510200 452977841 931747871 834047247 7372564 954937053 717315865 388642836 572920387 107296138 315546408 608164245 130646532 476399517 196845158 403040598 603801445 772981629 427241486 715723274 586781955 614106100 512979149 189305127 790898399 143063219 108217936 100107691 436063372 921210987 929075139 142410354 412035111 816083648 583561832 719573497 187123917 54021033 670245196 450141558 20776238 466609040 565999332 976786263 354977065 721612536 954414058 475620036 410911900 179870654 176321060 315550641 458680810 895719862 359354071 355814607 243324963 58279453 266789470 654486728 364275077 298043128 529164561 541468015 478092798 499966253 634669075 971136956 82759724 707853629 845093348 150998772 907062859 315260163 457770746 459885263 870667828 482497635 234127730 392402337 415088598 337595836 661813667 770323977 502989986 718599019 345241761 413502727 594446742 802219769 422975594 7349598 671713045 767280611 544508830 790829735 144933518 438224041 508145734 500242530 285642999 853495008 54397146 84972942 826601771 385792183 943705422 855575312 916845095 20133146 719188270 887599103 324618789 96354758 302069359 543945226 342975739 126906319 480043678 101497258 387493211 836064284 912932216 81655965 177855165 933314055 935740782 451368528 516137732 208826816 163913421 904928392 889645253 121638384 789976811 809634776 377052842 245063122 631576031 205286571 509330574 10436048 761110469 347681690 278215803 882476564 351192587 811376108 942644660 844162662 885025654 325884598 170134310 435582415 796898953 309065566 368930284 423431261 885900503 490466316 704614210 48197995 886442220 633952719 252531845 350516761 635237733 310589266 790664628 124375171 361298979 813840938 954295893 184458933 591205943 662532304 102034543 49839836 953233831 432891102 830889493 826543876 704450204 947440387 495130233 776904002 323531671 605701118 505715967 351959215 391347491 877780191 73623093 176938109 284015681 612137397 9456677 919470227 145290592 246604792 732155966 725148506 14019048 849753761 333721962 170219859 160109577 908382042 748138808 980758424 159871745 275861161 356186234 266403258 689353841 862297466 272937987 880152992 791695152 201343637 171729759 741616037 125772843 427821028 784443057 546277199 220450511 42858120 390886153 2770790 25049466 659056661 373792977 781332609 909622847 298250872 600949839 919621331 107876405 585412928 664887521 907905400 657683744 154703732 765210799 784021695 441622543 477941090 274726516 851469333 26182701 984369575 334372468 236932987 579346539 585168654 717549314 736311196 805440683 89572612 857474017 323252271 253478906 103399967 564820958 798682452 685226887 409713923 352762166 870587974 611293377 657644891 255130695 325967049 931312347 761067895 95148249 986011459 665821879 628852520 645136254 423080627 543157057 519966940 9139608 331162648 496822262 236594347 462493386 933310718 384072237 787228909 825778666 75949024 952101312 775202930 538112946 741416464 303824218 315751444 460005556 579986767 238283279 224939265 517470605 129188177 801116575 831625180 389838592 463157063 206439324 231903584 559137560 264568037 494673750 844172913 810081982 855711323 656337197 939276468 240757217 169337236 674466986 612623919 81488691 990512160 676204079 946017129 896755308 904091807 326507039 394890920 356940611 340242924 51460185 148930799 845045661 581457007 799493952 588036048 312291977 580856808 462976678 94035741 386199861 738335668 266253982 535293148 127410466 243275625 710940422 921167038 749743759 25641939 300548673 43340526 120611052 269216509 416291939 458043825 857615186 573330161 416663479 789875037 775521709 765822380 405832163 593832646 603419292 770385149 198511419 569780056 378452713 402554225 749247182 85924700 42515079 956930603 999186276 139984783 799867295 313545413 984476196 7617515 665031636 832972725 95501892 971947575 283608633 285180771 273309190 270472449 260303668 29307992 647510103 532955777 551741111 828137971 537162794 328248686 966120378 500994310 222931348 247403317 649370825 410534069 402194921 88045979 750965878 699157553 695512863 20320471 643096161 686297634 860020789 741663215 702848825 348592545 963105172 206274662 183249736 879522553 85786698 21616148 50769654 519309235 859159095 186607664 589473593 679552974 456973086 810635712 814976502 992132154 418271075 317223836 790152937 208632945 810860920 611755732 811849176 721279834 24458488 804082985 640416191 271286431 558868249 400461276 925504253 663720440 90080324 543486275 442766266 648661878 190262763 361099018 743384794 739975943 662493001 95770069 379934541 602496190 557775339 424751129 685626360 240808067 555111532 647806440 153102335 572234193 464036179 826595699 235198257 984333728 175335714 269950003 3118190 193607537 456030558 818393016 773991203 24851729 652161678 494939104 135837992 131463354 284198419 320841815 469471779 101324191 251069164 507853750 502587757 938620651 641453447 683860633 637043732 378032967 441458670 211595374 455223114 934774540 150457551 525848721 805131384 105997144 936101008 150763898 701765979 714221396 293377670 485487918 947308536 342108581 699076014 403408147 621541225 12767888 721094077 825182351 656100115 168452472 790970629 665618701 615969082 748894573 563811389 822610189 874073128 157790781 292104306 15520739 27039843 666825032 719441477 532885810 408018193 58139805 359548814 977899289 849090442 187947305 51817704 21480371 404146944 419310960 281226766 805904169 237860702 617235290 278084288 476138666 569300394 550753526 375034556 728335321 886161231 560678029 865049990 978146109 856685 28318204 120641714 348905802 757133686 168466936 810073285 424822705 556831695 783227920 285577457 667585710 120072264 817987111 320031027 564906985 213824869 768604 339339161 235086226 716006685 172658125 749205413 612596067 579230620 488780750 991831503 686550248 513466587 474643030 895898765 658766793 152409411 814095308 145106713 102407959 712681979 441839089 415734092 42411837 372577262 943667806 548083931 889251374 64712185 116979311 298997459 143089692 905136162 103383739 612728041 251853832 166101385 118774660 831436700 957000972 335998736 458932990 668522467 332016349 208638112 579430383 745457639 416126984 591103777 569180834 481423947 483988781 51994913 308514416 122054947 449720474 465485477 916672786 877878631 327544163 546828820 762409885 106972442 829038167 231963665 35216299 355354574 396048495 374447148 942442809 941282944 730363164 407975919 236304400 751692349 507767179 94162282 503758501 902223972 543392604 14095432 529196998 224861030 464731487 246060305 429359307 674110506 629341036 752711578 337609493 803110677 176143476 982767371 237354582 390279984 326937417 529811312 474274020 656634498 690552573 241634014 858615244 626366593 151936522 777258856 607369469 772716684 838192699 409324789 148440673 798480784 940837201 389202836 365898510 46483551 236464325 769020759 194812950 299111061 760004301 95519371 334955369 711927439 981440691 874797579 970147029 748092638 877309850 29048141 838238592 498289280 547090732 866960017 740442086 581784701 779949278 562608165 624058678 755309650 682858757 680137958 395028262 84809604 943800540 726023493 271597951 631874115 106134016 213490363 7375413 249946369 710928716 168763426 639699887 126737500 60499445 926414299 917587707 284991780 490884558 365244710 907431443 895463412 857527189 642166059 37697241 812858032 701181445 387447435 452418731 700794633 906896777 921868314 131412837 777939094 209346564 250428203 702533501 172427810 767186580 27325851 905075974 518858802 330637515 247796478 877238774 389818680 383727837 723051433 338756233 533271368 846881059 206631926 686336438 999225027 147701733 139771122 20401873 71562249 342597349 39677359 33976253 234611544 954964047 871262848 761174089 456700477 633670630 802998258 84744016 404254561 666114576 686476870 121325266 34232841 320137559 68965984 710003711 629083539 545207276 495319288 442214364 15571392 69624533 776195081 695694848 916173555 540864517 521591503 501411950 992413831 599774570 174340994 852806324 242865023 769960988 599746106 929334783 850148240 275191266 373849015 127393860 889179765 905650406 180840343 262474437 851377788 561232718 142646597 195722968 557631733 283869587 919013022 702723278 638388568 964427594 577199117 271874327 418940513 24643691 775554197 688077715 620648249 430693599 431699732 983344470 177598004 437854930 174476107 292983741 727507434 448962903 680087289 325601225 362629621 80518601 160183216 651641702 249632088 802263995 727933237 335673387 988483320 111140911 722980876 829410177 694685641 689293510 331016649 32217533 531595226 431249938 29121061 979853892 838048705 752007871 203932258 11861698 927402073 922794908 218743679 457055432 858817885 353861381 258211026 117388377 196350951 744391177 471933647 352837194 433961928 153812824 911439550 948303791 376116157 964329550 688819454 315433835 202013490 829494300 70519018 185320754 844426747 490654411 410161759 458224946 943757572 807542836 727152144 299420334 561401335 276497494 836025771 26587243 241657006 280828571 959995383 860347178 670609816 644526420 370006525 91498951 623146606 637193224 505702121 398461777 988175310 586347011 706318389 284587453 488102594 762348387 525144836 105698983 727143557 572148873 3664116 744816489 464658619 80290825 566410698 55434874 500095439 653297419 795805879 296923430 419892602 938027874 603898183 309895757 595451164 444131649 633161417 852837398 485201843 521189000 640230004 961469888 348633199 101618098 100408515 480506646 30400557 787577594 939409271 136281678 50807765 750569911 545937534 825346099 115509370 262863488 163959382 702994256 695540291 447161511 919725046 21769561 673301659 226768681 756015657 738127355 337737036 789827051 991522812 201742488 575227664 186158599 193333404 144201602 508008262 494768410 895463913 740333616 569789111 452235254 787508909 242193573 361925175 348311673 175348030 948598594 242100206 119918307 437922150 985423449 80249829 131087857 407950198 862667464 812026342 4050883 906852851 498147099 944979762 501789211 174035921 667924145 13671975 166848378 12618742 998331474 898371334 415745336 585168292 384497379 380869743 623021902 429577517 524929354 657461415 543603623 792285947 63558129 782342506 661966126 352094649 751254850 384786223 813730239 764926457 748172105 867094575 305789545 567328485 791117536 385646441 744983899 33696504 416876211 364708113 263441897 971783929 813373618 173888265 191675730 235311267 461890026 262575075 235132836 244513402 360100613 298756698 323456527 745852474 595008686 391743426 782155031 17140389 947742823 144760378 944912517 981921989 670791356 566453578 408583351 425223879 320143761 173232873 576157753 483499989 66611865 665424012 121369955 558291446 130742205 265526170 307691667 153242100 929002535 740199146 348788986 728571686 372379386 947669035 815687332 999670424 55050724 574565783 367701529 346354429 991606099 103408124 146190808 70448653 189128946 230400609 950764213 229544964 287160727 529951026 340890038 395027553 12367857 769534967 260203011 678893053 431797108 194946788 302439929 106204854 667147019 476681990 336471966 716675996 960615366 410827637 855760387 178417444 481082459 192772578 674515607 938404331 735524597 498417300 976247903 903475638 964138019 396985422 149218131 510753281 447979251 981394889 207851548 560337533 378940941 727154071 812434280 649672987 160607226 699430409 579819495 808886780 154134663 990989935 626758092 65627300 326772505 899721549 198761614 884185099 868100362 811980558 663899557 556595743 653840537 82386204 243090268 820621704 272250345 698441542 807915040 502319903 981358787 728669658 103510008 946687483 236016584 10239972 831351670 705181612 562984393 277445557 955906088 784146315 59321034 416342179 708107159 238220534 465088984 623359891 657860425 141131664 346582616 494619629 969333173 232689684 130935183 459215805 870574732 478171710 706885620 673416044 956225950 449247539 294610662 541912004 910819970 689603349 412396058 332795790 445088507 673100385 20518160 203978151 698769342 554098772 845090161 114129865 321974817 834851672 787398732 497943511 262957220 599576786 13231573 811435540 255631422 412791322 994405245 566326966 324189230 253484161 809334231 526435337 188209907 160553040 849678832 819046123 458197968 322326361 505946791 779373264 857951990 389824389 822398450 218732446 390170937 358201169 722911277 411408380 691696710 473299614 537009293 161364502 912370819 961564280 971931754 268961429 235989170 427373546 82573983 47895955 405516394 953813418 865577034 541733218 131000166 525995349 228785293 506751551 832855041 174549886 953720718 750033914 821505843 851357957 393401924 614086743 593454546 241304840 302051731 432860243 33849681 728109413 450725711 752646531 446305330 216591612 478268922 409482037 445956304 724495532 769378717 121364123 93640736 584640941 214491149 501606907 857966597 245659775 406042954 152442486 530454958 152976838 86445665 808801615 860864739 759860221 745868092 147291047 856934186 172949026 973290943 992914057 394474508 651909590 692695994 618155834 960099184 171128262 831096440 918430286 598555049 167155706 954599254 58222063 406019680 427960949 920995570 876214474 89075812 211143069 236741692 976308770 51327278 91967529 574524592 726636384 297987721 901342570 789467105 548947015 686019898 277017003 533046872 892400293 726707534 406667060 918468015 414637035 793903873 622598968 777307388 760913333 668117526 147004461 330241244 913360364 102926833 352909120 414095302 136205567 527225987 186513124 821904672 389689067 640620504 326163229 625135475 344868865 378418327 772532831 684745322 48351842 93163623 842497812 863250242 496653946 826595729 248611327 823483704 206685555 412556677 32550346 760796364 175402071 965456581 344060326 1092627 456397244 942767462 238785957 102407280 217932521 653761053 524618895 870332876 287708934 674924539 17953416 19145179 656031255 471901538 913708014 183757460 907280930 289197866 429851045 56851714 179775941 997975678 175601414 496498298 344595584 431701430 535717081 323450353 775770117 837032278 334257712 367985452 876501098 221229112 799242336 283782441 90469699 976707146 651366038 844656642 612256706 246252741 249163126 747007998 512547011 911479517 797877535 518075364 23519709 9785278 934651024 848135982 995147766 184235594 615044152 706955618 488342783 693523505 513685172 238857135 21255412 815434957 480630586 750378485 767876391 525531605 831975484 974833272 550186719 626511652 60639399 541486939 722680243 447344517 593421605 825904133 293955299 61492577 349905039 429457794 140838649 394905341 971272412 31210055 845872824 339968270 607405222 536659812 442785286 20737417 118905482 168698819 279986518 658634224 749811380 71600611 660083020 408825874 488807953 260788922 385805078 984317391 159868735 247910333 245359863 728253523 453042701 232833384 713258963 250884492 304906769 920115161 60727311 927393794 527988229 47456594 719982744 801532061 743873611 16879262 743006549 282440241 857170296 356432338 276908059 429905349 764014801 780050323 322893490 237284933 613255902 92205018 679492554 77496596 293640937 32549059 182929741 155217638 532819711 785800974 769808788 762753527 48751671 451638133 598796422 899906653 488420890 787607454 720994020 44209506 479829822 804435403 885073629 380541500 907758 241772323 494807256 975135694 20012551 272904464 214521921 145165883 71979603 227387603 197099335 313236583 321504043 712993565 101641479 594728859 86911842 216123637 73036682 348331381 374706533 739568671 697403219 64990524 160746941 917844394 882518354 136855682 69125332 198087000 602017701 966471251 62696819 495617952 980322594 927320399 112488512 6665370 860090788 893334420 69623171 971608560 622641071 292529565 541363850 363311502 708227419 815193130 365752492 59148235 220923199 63422259 660452091 710926151 36668437 219277690 627953231 659188155 265683925 238544593 893164755 716835362 59471488 898874557 380846219 142673829 120079953 564180042 832529738 917792842 231490338 647567186 145914149 261465096 97118649 57443204 408977141 185389394 372828804 896109923 555189627 85105477 103598023 780252139 199894621 286277215 574119605 20361261 880875189 883746021 545522871 422557235 109852261 992609082 947867069 884162871 83545700 305431972 24579221 403303289 696186873 963626806 96035991 454701452 279465959 424413533 102137391 955777829 572511591 3184068 505963442 186427243 384964376 237237657 589398616 169772760 323086433 971271522 154137107 164177605 465548 384340326 162328684 567086826 335546753 877923436 889460417 25836584 937621379 560431392 538178778 161950380 574420458 36872970 569019025 677369595 10048439 81519541 501744249 855588799 955149141 239267846 199794803 451420566 150111050 834514047 41931594 705798687 647643832 307001150 372595893 517726177 856337731 933908271 927331905 480966962 794606957 454125153 722717133 135683268 598781489 676863612 52019850 753848558 444488260 82603970 506151095 222029310 913669967 567485549 92938938 847725932 993228520 114960378 2323207 778345020 860597522 159463142 659420222 203563636 152022928 436162031 154568623 228636918 181644686 452236553 157545321 813403395 720735242 491777195 706654325 556263140 882301692 494689865 292381562 217308716 617614027 706078531 487509026 870543856 887011283 730679982 993810179 901591014 336230552 802557701 39178048 138590052 175494952 800857324 115776197 814310564 148913825 756247045 46890853 164227669 434776411 658070970 584740914 26070160 624313933 617667176 107027453 805327140 886298069 661826164 725662954 115486327 645602852 13611280 813274261 631660968 768251127 819450929 129771348 974234876 986821325 514993241 649835766 986172107 101615313 135314033 739783010 395676157 731152560 764160535 235326391 561455634 612899731 306310197 481931491 812896088 874096254 386925145 104527551 330779772 727084358 553701377 320949103 456966975 165835868 670628600 290318311 364747400 784425068 461538177 164478641 577879833 938556186 72480198 691895768 987749629 67205647 568013675 572839302 276895221 443990428 690986667 495165343 536390006 405165527 57418392 403774769 725245205 319678158 760385035 14135304 571555885 666484765 586299986 89754318 964685701 361876043 82311846 29453926 894444455 790812299 807340608 459927909 102850431 433503501 761714237 158189541 8636879 442825390 581365132 920725357 399582071 36255958 648962348 15006899 491052765 277767631 788872103 407546936 641870041 364299946 62950835 745452089 656016025 106454720 929292465 680530889 167529454 511510684 448035275 687272023 693530498 216483745 669486705 544611459 997887671 531022520 469029872 745019513 377373716 729427902 96624931 509395275 205037566 174473123 888136754 335363301 451284322 963183377 390773110 751110168 29927249 76828056 718221701 904220575 920625554 30999957 631888443 284742748 472099084 398722577 286475833 916425589 909786457 624447115 399059358 334815611 338838988 95138549 381766467 268289018 946036703 534370006 315905832 942185769 578782264 408737260 312077126 390594068 132114466 357276700 260855206 179448828 511124446 608553358 535994447 823482432 184755717 177095221 775743293 56912313 58285930 336366013 911523813 674873623 418789189 605766784 304306843 182322082 180276391 823287633 12900148 762494937 156144460 443038060 974392446 493661181 167894901 158020486 750570512 953507278 22897355 8864708 96965538 600330961 514946008 382430360 812223810 439035247 619007952 991495537 319510326 714822192 172102783 755592516 619610863 165322648 384522627 167822049 679536434 705281005 900770741 144825304 196896599 377271859 890587637 742747611 738718998 305595905 351637333 95716129 97361412 687504721 52722124 857936020 784274312 881080495 59025830 348393741 66003331 562461427 512577957 240706338 109618667 817179890 227332115 512400602 39133329 272016194 350383764 553726985 807062134 908893527 501090177 368166551 127007413 648942375 348680462 945683452 720345658 50367682 577493296 825840572 303076114 563995635 224644344 338227979 714307717 815616944 270902560 338137724 864966987 559350224 289812397 261408462 630474261 14533802 104560155 13084711 733983726 36913160 861563176 151329828 250636950 361408247 994283611 428586496 212465792 48682818 30855329 528109698 346707597 622999495 40851721 212286392 616352734 817482568 635422301 114394538 280521668 64510057 494578884 341851054 809660491 436960488 882663358 610516035 224917120 907884267 958629011 61173450 100671546 753820936 98269464 939101006 215886412 226911793 104597703 713112717 319158933 858713444 547808623 444071304 361696426 907350449 187882086 157661780 149446996 303578738 238029975 128051152 435471742 884959767 438240727 652841726 360380687 800195777 144542127 620258903 80291944 971431777 89352682 719240767 835619343 207397541 723485430 972851435 589432491 782974387 558118330 293217076 226832856 258200199 794902883 312428902 126089538 746073935 352642254 180766784 408513583 581965777 83656748 243202491 738341719 172991440 945091438 311721076 791887468 928450793 242215031 834814119 3464986 225746780 428241328 821841098 247985114 948017661 444673799 383570432 722040018 788466276 322755597 9186795 584482014 753597411 590782067 588040514 917854407 749560482 465560626 258282738 780825267 36818597 121906634 875746662 118464633 684502226 946743299 958404583 27734784 994383185 985582143 168394514 669083911 460068242 920170059 205832541 27138692 466681725 669634064 291534193 716296051 779291058 746026472 816144161 360536570 421459339 736163560 722034464 728493145 765504655 725366255 260899754 539027451 756211049 627639923 69036575 80511803 974413596 714827321 663423723 840215285 53810518 878320895 759607954 659909117 82407535 847340810 267233884 501034625 928900402 416141261 248269635 632225655 887313574 190603493 733028499 590581143 678968236 807235689 820443807 439006367 145686297 494373153 67337734 291604897 674950784 515269680 85278507 705991233 184833390 674684803 611375182 653090595 167067390 169770488 661663174 959497827 948631576 641051323 90855893 520571655 513937251 320640280 991669890 494806435 473527418 797261334 172534165 92075042 818348685 817288603 783894006 207730195 496900635 161025894 520011995 563919352 17280227 182186988 477629004 555668757 920076131 428908214 485764631 199776447 911518749 778395935 63327799 474700601 810014759 806732361 673488315 338814925 517797491 604865221 618994973 634063241 982127058 26883403 572543706 792117283 286298596 538196227 295803447 655247013 873931930 876950900 695097441 663604628 626272386 957361036 911659021 153473248 735565461 867537757 114024138 226036846 385161084 725495195 133666791 880032075 758666634 684541272 645727843 643552477 343415546 632393493 949000752 106121173 425960508 200615702 413665297 387304386 124500428 813206362 18813441 253907481 183702975 153656453 757748846 947465849 935526247 878582860 902521443 707902116 326695648 922672900 787644000 850381226 441579493 207144581 836682053 51272792 27615093 586947798 599131861 862607922 283494923 508528089 940548477 719485786 996457800 849340446 397732711 148629957 920069603 89272610 600848958 483256601 977703186 751281484 85065242 745744253 748610078 679387343 458796787 59239492 636937970 952445845 173824640 104368636 624907438 438542885 981737793 603306484 834661427 459608621 199198975 116524031 625194594 624092200 838915598 426982872 87137254 408640857 981406946 992831304 188778194 104883510 936702900 964831164 873621458 971493605 708891948 908689158 348657148 413359564 125008080 807458354 79236893 372846617 187005923 83429257 236893612 209262806 330821178 426540288 993418628 683324914 415043173 932382011 388986354 437352817 8653892 707690552 786317502 679881491 424127024 646947750 76742702 60533523 454685508 880360128 512124534 869708651 366055577 591647159 899655917 432653508 173643215 80550701 958668672 731824989 54034808 420315709 825083082 818991753 157903191 911015056 901936238 835479263 162415476 712773756 143262512 688031288 636753552 361368062 559560488 935639659 848165967 919622160 814812460 117196259 316541736 569797379 600979812 448249047 15461063 559845415 931713193 689102925 362972699 952175024 966426255 742611242 816936458 643405837 759296053 533913541 63850793 417602982 285887307 372694218 881301455 902236789 487925718 448824836 532987425 397906643 937100577 230092892 979896895 74666694 504622212 544047899 594817614 529714781 762761019 305663168 776720051 556619036 550488782 809740157 347382372 524221890 525476970 180619945 118856444 668664968 626461864 266361178 98906379 739455424 279938733 437508600 101395454 646206206 401007370 408485681 838136512 155944970 500093978 759207102 828191521 237240298 161817744 656635004 488900991 514151814 574021260 812445509 221306666 441184548 934653382 712156112 252885406 168664302 705155557 225829042 614433744 458434369 131549076 121932816 525480796 52899150 195122186 425429366 216497409 570886001 214514885 145511621 95270379 803759548 958894304 523984712 341199426 155595247 180874923 142449404 96651208 863950041 583132023 666856860 734818697 410487557 386638596 748386526 976877474 296914483 320104480 137607844 151921453 547676007 668993866 325633746 353758198 194565909 718198265 692212238 504497778 7358799 829529104 923364454 620308844 979688552 843487884 584329922 445867152 469021737 23649509 588006797 97939037 283355830 824316143 90728511 879977019 20246849 679248313 953551679 820260529 50151917 458146119 481555339 441712881 205503184 399610481 457900876 965867264 57737049 187671749 236415455 877354418 713026034 454295008 215123836 534001723 279702112 830831958 983129347 233217999 372079737 896767446 351022743 650219593 446779562 509032335 530847590 752681225 215370561 71949583 855868756 471082433 959929496 335152634 103728500 602439477 329784816 696647651 102845185 628654731 256901346 251158897 203446493 817025283 368255287 88039392 615220022 918685578 697918135 398519784 838842495 172849296 87497489 192278369 10279182 571102861 276190639 344674237 649562275 187930998 563119375 89958742 808951525 508944670 549178871 661710138 621473072 856904106 924916921 601331046 302739246 244789674 314129271 635337730 858428817 817924339 654013289 992526345 793961305 560414879 468361974 348003166 16776871 348652178 957160506 464719827 944804230 850751354 220860081 254997336 222416701 182271277 457820522 24701335 268182177 625884441 58912404 220669671 565494625 810727800 869198644 453055306 141094607 553695036 677009956 903197080 620668931 607403580 987323717 468036490 784032814 823705080 622348161 909195159 257923511 873158348 191421268 936157685 784609805 171296758 602732718 940321651 905032206 154548637 305811979 529965028 964103249 42970930 103098677 380806477 526044017 445135964 481872240 265050378 366650492 785838101 230182002 578988801 672696107 169774478 626558712 684645498 263828832 409996950 128532131 991802100 320266123 467279936 776614218 500529484 86850292 257602207 624818106 217755700 166430652 181584515 952739816 682131578 509670361 576806316 609890553 696710293 168963751 928069600 799843835 147353219 399813626 231093930 331842007 441864810 663825983 226515560 771799701 944911382 642097687 3124546 466681374 71552994 713467619 653137484 177941957 724927872 844522014 927148002 880272010 415618080 988413086 456710134 245835190 941678458 69935424 768771940 935191119 311405574 904809673 749230583 572468730 441611099 323561729 278050746 139132387 327455861 931992353 497350324 495698797 574974456 470314610 54504454 17288016 87666172 13838714 975764700 366834406 147088334 274091449 489591639 445143448 110381093 97346769 385173675 144635011 622740376 52029453 986734080 877254420 187149151 422897195 178082550 330695931 692177712 901864029 492287505 851377916 901551189 705723678 430197362 590328891 705568791 198042283 230056509 503579116 419488962 905579587 124854946 736546239 693982772 953646557 237228937 72786482 27549337 773055472 744916948 688649508 315030681 212619652 479346089 487831809 540209831 57683283 965175853 223169208 181483335 542082010 872168455 381329891 248956181 428859267 473636419 452329604 87396042 695710953 669753960 568118867 260248841 377614324 300205710 389732766 800330498 990633251 950368245 132691547 561171742 227045289 95175690 623123669 596246152 725997658 620700551 403068899 604143508 377470636 825415473 64153409 708917586 478977184 259473194 326771528 697860497 933311317 98517425 549820470 891620722 908120587 241529181 362682218 678441976 970130574 358752738 968185792 965067781 219917461 56925587 172852436 551662177 849191182 252259538 278732892 325114824 603319275 467528991 445786882 886630064 410344024 515351620 246687201 981112160 834195107 733880271 536635817 46570873 365716293 943440326 88076924 357048051 841875908 736925653 970989204 781759879 440916773 980990997 531141567 327056537 91316373 738341186 534598470 967947390 225404203 663239733 663354036 883580226 461140819 783786960 19741179 20833600 254151344 471055523 277745898 665524888 255856147 732378280 322196637 465122123 84757051 995358537 965343891 126637852 498691906 203278822 395045785 604019553 258080790 521250668 203564338 69859557 761304614 216496150 643207056 242372299 986596611 803284996 129108287 882672438 981694713 848406651 757306618 116226688 10858000 626096048 818653937 5305778 597130798 820512190 804275860 205697486 96745340 659092485 653196980 628355475 173865804 843162973 395325986 548883993 28887260 173785984 485295933 366941474 694493697 389847168 491319066 782669967 774935726 211493053 957710997 896953709 23007679 525777090 529357704 935295597 493785101 264704650 751213426 949566248 114531932 179403644 347514135 800595409 601204655 509428879 588319981 43761881 371116139 989122285 212503181 96075507 832540757 596828362 27890574 831234683 702982639 121846176 378703152 184769879 770125867 32961356 789069284 252394987 257490082 461126889 991942722 280868602 267683477 723788693 772435689 723500155 84234171 114320194 882087521 519167006 723246547 476390469 143556049 179668008 847721980 201598481 723972579 713609320 760371778 564424617 975518730 851548248 55633138 587013032 120885872 36779383 575583955 645123617 376697864 215771992 664891213 758660364 183940311 624779038 18989289 915480544 971127567 187016134 413662573 640168422 107277552 945701084 191353623 408430868 538939678 754926140 887134458 763535420 736905626 651638033 629376417 535179225 623676596 41638697 507493915 490598438 380205339 44606114 771746933 946464642 424722301 679168638 696715714 684578148 990856300 791192954 833514029 264760956 495851413 791166086 573883119 571667883 62050810 181480866 280077963 12408661 237190488 592115297 259950811 935597582 525343940 62237202 691617390 17354708 535306711 587178703 152977835 656471155 257082619 951907317 807276299 736523403 472986653 632140287 976289208 301768983 743245729 383119917 106952765 320360843 321154660 431860156 400321733 187871221 591237337 800462616 313479200 292460502 546241562 384096069 546925376 46117879 59481087 896074070 804949584 320432286 302281133 258855000 16702591 189862004 282738712 517326978 147243912 614838288 233136351 124631747 210517701 757173139 962877697 697143579 174188716 620307134 674002061 428902981 275557831 572201889 109392199 293897067 204187700 337103890 587795362 400801231 353813281 979642852 250205440 555597059 542006378 759061336 593043700 96092714 314668831 985175747 581429072 797143621 369168188 832317903 554163331 568280786 517597321 459665142 216887502 554519179 416940142 796949116 433467763 567737950 330924949 444165037 868361083 951685278 418381160 772132234 932468060 110089553 675383978 308935706 327146847 321919117 327596206 143584624 106966637 556252038 494404970 823864503 978226797 643089867 381756108 190344184 145543405 909621570 919469951 760014522 125330686 661185975 609471426 766250240 631960228 700989474 769827836 583324743 704036190 396825623 603899647 956858181 347151373 536856677 606335613 886280640 351270066 208309391 317458597 610137558 283090843 119201319 574530284 775795182 389717570 478549664 735040301 987353812 108215421 602941657 27308727 547128332 816300531 969266819 336065374 590616693 592806447 370195166 13034401 61633836 78325457 35402445 564074630 808295647 172775522 22927861 73294780 474852702 225921356 796479740 716928718 417646 149878375 414469185 358021992 729693918 510035576 966514757 613779053 191981546 637465557 245464876 747671204 283655280 336009583 905424748 222445168 250567091 245040070 56577649 623505014 94964174 778277184 331322209 477524953 510384284 714236240 14800007 144366087 838595723 298663913 310445283 81895503 667494067 124594132 668230849 187090094 283715707 392221319 770839521 977435038 990818820 9643910 254598540 996191725 482538309 452546623 883478205 355018823 809539324 235421048 645798991 203926931 324715781 538588657 774924843 626130857 202139856 260874295 779125373 224179266 594392302 827030619 921939693 833760582 473465061 129402135 1314376 346503496 226946444 201023784 554286608 259021458 639876378 796272719 788313739 939504645 538671194 95124495 407671440 54781926 703554716 804398970 214384335 344884056 794854320 315847475 543565400 528138476 555045693 964833233 779699658 659373592 284249971 326670203 213878489 750944363 287324600 866135051 860105741 173420533 535923353 360444557 622497706 383858572 704444840 683461027 269615161 989823672 950967887 756611506 946155245 560921707 865992862 922864910 702988192 78243344 14255067 689189359 433861976 176241988 113406931 471527525 749199207 898483006 128182126 275823766 291148023 319013028 953148299 728716788 375507324 875975904 164983895 524960006 478221557 385407 538959958 761235341 60285895 47354412 722603024 129715400 901417755 690173878 696516618 139532593 726197180 997062745 323460765 355600186 264055962 375317545 934017370 225257215 591051791 705590679 722549958 431147130 773509959 194104102 644054759 910076930 222125135 583671716 885703611 438438497 543824349 696347779 477186536 605488037 203636412 486062558 200008103 484450589 48537262 306074231 677851149 975617965 449490050 884636597 637088753 717186869 405939444 774904945 89361641 594849149 421780312 393499152 884744940 416864683 957497324 741294219 965598727 422516436 638686161 852608690 401235180 50415912 969271247 25411797 675418161 127798348 636453563 429936849 313996498 730608696 250708521 943055272 299591264 946260668 777697588 833698469 439879906 738031415 248635568 321245871 614044376 246613881 937717380 972450297 131180765 119858887 793523313 475441153 728015904 41684696 119265363 309652291 658205932 766937831 333300391 140826248 102793427 261994271 330912727 381454236 51080373 160002354 243190429 651734910 443383075 447812313 382193804 655673516 962407726 580993905 382689507 137398221 938821863 400349800 550092314 719799964 750206470 445785435 476209716 275079452 3643157 470356315 879257187 466364941 962787756 414941338 964969037 96585394 650066007 324165555 684240713 851953242 61463065 15581310 960539277 147765217 408277778 299626227 580588493 401044331 487977518 422879185 758170032 413229428 783272500 213184396 396993115 327940322 272352969 581672565 317783546 110020373 3879537 729809002 1293938 982447870 260846254 505650956 869141395 133410040 213033338 301317489 427065907 782051777 416561494 46238292 364321959 166852326 314693698 207034996 554904288 492823665 37224596 160160515 250607669 558813426 447031396 969290164 928528105 120066264 502002192 311498923 705884987 275290169 318396883 359444775 856049294 729198161 450097956 273569674 532532965 615515015 739876089 972285301 808072809 169622254 656197568 788065021 630915969 759602493 876233922 304435002 953190496 634661768 907837143 566713992 568535198 609917652 359731714 423730148 98323506 536571068 238684965 437088971 151359348 618009044 779035920 956066979 402378739 297119098 739215022 678597707 693874182 295234276 587124873 843027613 237379586 910665907 771212471 65863523 119561388 683385027 290980319 131644459 93325500 885153555 347689348 226181528 141824943 790235989 976046593 375562670 631782368 586639364 773004710 742379769 131671244 391000730 537295445 999098798 889058035 999822611 309370913 565802231 311497744 966098988 44781282 703584971 414734292 983958722 710930386 121916134 998139720 879807502 535951610 907936093 12804414 348936747 979929443 194768023 495605672 40543111 435322405 231368736 463003734 961221581 699527337 127786007 617244619 893524867 576131392 886858200 51126025 118394418 277231962 48536373 446343627 574845226 159035353 16819526 361008352 891026547 601469849 34424570 88851219 971918442 966037300 410680675 749408091 210540476 939925109 182042367 518563279 699651616 159975576 397643685 362529840 21857807 689883938 328420182 203696402 575839942 300330819 565009422 127809523 594228257 880712140 116529879 822169131 891947248 231218020 504179259 979583441 631236111 886782091 705711845 653428401 109699199 437776742 783873922 717932859 506187126 336454358 817816332 408946639 67800019 543955072 222307112 576137276 60818153 528300292 331170342 596436991 161998209 372785024 762708558 457973296 961532978 582057197 475098526 777351907 758980185 362478013 170865804 16514448 490390053 29427855 686669199 665697594 421179376 713838767 234881000 444275310 381274046 956811847 850389091 83760107 637672948 869908907 240621159 789399290 685276003 552000215 229298280 871676916 639946160 954706202 372832428 214633358 233033410 216595152 975456565 240422996 799403490 959540881 890622319 621282903 117221192 633203523 341570027 868391044 87610626 84610865 921631716 333340008 175939377 611521853 170399764 746629549 60275695 932534318 387343210 299092856 457216234 61138205 5631393 155530546 714469095 150728557 505257690 486906786 77376472 912014571 677357419 790293237 494907580 720522614 798596684 51696914 847802165 994628996 394506250 934497070 858142004 554270239 356744755 975546302 254387533 809328368 269032475 607030941 247032337 447827627 74028884 447375961 801208652 298691841 978245154 502678956 816484174 255039968 729962893 239615992 204763673 165696667 301169582 539496734 982332016 260962070 939745490 46472088 216733324 52300612 270476900 328684153 59461083 921266742 307128207 776315919 528124617 104332827 673945091 334037281 81907271 27729061 198466864 431264982 315081329 889749501 650305279 502245000 950563331 108967712 111176917 990000515 832246347 761865490 933919045 639607102 213962683 108830820 969021896 63797794 573497804 506251764 94133134 895002184 731691151 806927876 712283648 544321297 844401377 655900544 742620660 768870187 868546726 500037497 61716669 721228821 228391075 12307594 334045715 622333886 860726548 424536534 2447836 826436904 992863023 547533663 860599441 384475969 540958534 237720363 266107196 655277784 749669476 745366919 54954136 299052770 376346916 104144637 450533774 920723259 854816442 413297518 733796796 534993192 684909430 407116610 673782617 425013246 417549494 120479881 414690496 238261735 767749919 248592608 442426765 179948351 394808948 618960309 133748435 980659566 497130913 20284529 838602563 560153290 767363530 731299091 9946065 721357260 135268042 221789613 287481045 428538345 513180503 639551522 798201825 200040708 646902693 875651338 733469508 217236296 813484728 847090914 979410103 553486310 82894247 72918808 214334195 783456414 673371047 204815897 641985020 333416054 652875584 293389790 970103278 607596311 707162150 12202284 221401248 809743124 456918774 222419540 303434969 682766933 649866348 617427549 324866571 323810937 679985608 103098333 15963316 123583304 902995128 106016004 273488901 196363801 622953163 637967485 913122965 957586882 915200678 772652720 252478407 285443254 306651158 96559851 370358816 789035673 185357743 810276273 201501619 96262222 160311131 512504766 40315309 91591378 14892750 988476104 819159717 17944545 823724649 594388546 874323596 910788483 538628810 589480794 298076269 421243026 783921229 638182109 287445210 615899467 756342119 165229694 954882840 268032916 110217205 521906720 136718115 163401592 820182274 243722993 907430040 584623494 490330455 735877092 979858692 337606247 143100136 968719127 510475453 348539552 547899979 246272515 140837412 356693789 626763783 327568237 97125342 726339241 924823422 969104615 232480905 978214796 233429764 707444364 382069928 255317273 592191633 289465486 961594788 942343072 338330250 487062331 753983283 609569027 831089874 754550542 758106628 69341364 175725902 908411013 871611250 40156995 217938644 179977959 71304800 162502427 875975574 209175506 536101469 746028546 955512728 29264428 319120230 177311099 730797880 726114774 535424026 305417336 444751916 520418393 277294568 975568770 11915470 454725032 955767723 487679767 998167913 11846804 758875247 288231364 729972946 619447900 971077574 923680853 684234449 801427701 302467671 257715724 879833967 157661965 243485295 581743791 242873691 314431341 336921768 600632562 606290946 639451389 713709744 738320488 780002295 247446506 527721173 811289737 408457694 594469719 787316675 158544530 489427624 848613270 80468257 409857056 402910351 114378562 413581415 772226624 615469770 848980943 206270554 323963513 959363273 782659158 384292702 529770007 494912538 759172290 88246383 984635766 535331323 32335779 281029989 505524248 786805595 549785347 573654728 696583421 529960585 289108950 555776779 52976254 97320828 937359073 824483601 279282340 437564309 856000304 878646781 82577509 830220040 122589950 436486519 258066063 673683644 875549582 414775066 955818599 395098941 636110413 863698810 549647245 1243940 691194084 644874462 193193384 948705437 260841880 66279542 652567714 567651507 411437710 409473702 771995589 67623936 603227271 55695883 875632426 31336318 97968483 355791268 138765155 410043418 167474852 58073645 718859620 400660297 297549117 317663831 989903084 848753666 477810627 176567798 251981033 553732232 698577471 726105889 946257977 263523261 485276787 82294128 495637719 411938546 222059511 974073344 664998006 574018493 114677092 382164235 388199212 702918321 201982621 884813584 479303861 63712189 877327790 897249258 85567592 519966721 283244497 309303053 875624960 792735279 985188486 224750107 209389398 880074104 986121267 12800950 695790357 94809145 868337954 596152247 610958587 982390327 544349500 112120262 960909855 503049064 382756813 446051951 449213590 164388604 441009634 758348077 493940698 695589202 894352716 391568331 726278235 4396367 901476539 644658286 106323321 434371675 825429547 191021162 844976537 518811220 782159365 51688080 822055995 733502164 919139482 621109044 321624493 91718530 445403640 252562807 974181970 980858270 624494775 997932892 838508418 528627774 281436709 241885824 638593313 38879854 390574524 290875470 876490038 854317191 293488056 39352339 515892648 686825418 66208589 612164415 176918649 500616989 883219880 75934490 582585716 424525339 876911617 933191465 134236989 391972313 576082249 211925942 112751645 620237240 62048603 657807040 563310202 547227111 194069436 981351103 290954589 709019649 65103664 405080599 635552331 559517764 757275126 154233391 133503501 974310572 199982892 627309714 801020172 716437474 820264228 368905441 408142305 99166920 555967859 295214968 758771006 474691327 675979369 295756693 957685204 328996191 773331482 565538219 293582447 181041377 53275565 398855131 501380612 816827650 362433571 529969733 774333327 49311332 78066567 714435145 490610514 732400402 515614447 65321970 821175252 895964230 931021238 452127225 822208368 16964290 267153655 216799585 500095062 474991205 681965435 896585698 796397754 765131601 169741732 761158069 629536220 987087179 762663317 47967663 813336698 445350023 94857980 137055945 17172595 921786503 400352332 387457406 498457578 661256063 160650538 364187492 78373648 795703180 792365158 992290680 818528691 947563746 985305686 213706706 75095467 190944261 176825285 248212793 801262758 544006888 667064067 449355909 704177037 273204627 544215974 689526460 738076652 100065560 303932519 472148787 527654805 99939005 943503265 586434895 332178037 969917932 689852224 516486612 653672010 237511769 426282391 468193268 215528767 322900384 399305863 285475950 660457677 903113304 697588366 647756098 817976249 753156976 396256607 57023077 585371992 661943390 824219163 509191086 232370260 831598180 468868563 735585736 447425192 946087394 146685948 694651723 252347682 825390123 950180778 205511186 429496528 160913333 490863870 375622210 693914491 891745266 774338243 716553799 805353832 132240414 13915781 756031181 783826025 773250765 228930535 772352784 403098361 425825408 665866022 466674849 739363509 351255553 317896068 309970687 37378756 717151092 85971419 367945446 335834216 263174670 195128039 933289794 700323750 763839517 178814790 323592780 722896626 775024477 158153729 63519311 488800779 913457841 505033922 671279974 895242442 95746530 897836054 623236934 513254040 685303350 461729582 818269226 904447061 185034863 475557468 379276854 467215810 254261608 463190992 544852025 727738562 264679529 489346905 975432322 108771664 143957179 567936552 176636400 674647400 815192384 311574743 768314530 373443550 31126864 470091486 339637074 220835185 389696281 644879373 198984003 680532355 495470474 549139025 839556817 582513802 783489511 326145145 703379815 764308235 399145638 798580585 704955703 50711224 471489850 320669607 725652407 580359349 500903253 679935624 865422988 348537207 586574853 496276931 657790156 796135323 22823899 208654808 112096322 40092434 213723530 427828476 537385094 81316110 326659670 388279027 427267520 40856779 696413415 705502574 583341801 428353974 238361521 859157677 11671398 588524012 73733699 366553489 876538532 790314523 837640815 822053777 660752329 606854192 292417359 625053498 590541253 244600026 826911642 492781517 279614898 485778687 153847790 770035069 715934819 90706895 945520078 884404156 525461328 808995375 316077435 817497278 437016250 571516561 547179621 118579586 479947712 455691296 682299824 808970843 430391167 755734748 992308463 124390496 487223398 138179903 16237831 501039242 371273380 358247737 749503759 928023366 809819483 349650487 237154822 850797784 830656365 258418020 570438460 288566115 615899023 880995673 884898947 590337784 265695068 120776219 330974606 524545084 400648708 845297887 167020735 30338391 667597616 8429488 693004148 485504107 790899080 232981967 120877964 678898634 672256492 296705485 899558981 986412657 471227925 157465032 365664773 253929129 326465040 905145015 229614651 743213648 682196297 354793465 593961797 833955015 947774961 62638656 644288432 581526143 487795953 761937438 878088524 32427582 615744350 555538918 465723461 561602126 534994859 747784081 525437348 64951707 61728927 817995079 844387121 324602932 459017010 231617091 298020385 825101537 883311065 542077247 959463360 329622920 293413986 250324254 252044508 256483731 656324243 313440004 48793167 854251985 347590124 198817149 646390575 248565117 820399762 824465867 428191673 899593226 711799823 647596517 811416161 356863545 219219271 948843422 537192335 986736296 124411079 668282752 340412166 946832483 514815526 372073379 95489382 594620307 450540435 323099250 397776695 572002987 378120247 944656185 407647660 983871253 198774779 62874450 323163342 202474625 48478675 17598964 320112147 405795887 443414492 495589912 337963178 734271926 319544525 251881562 73718433 489263101 926234852 621549962 280759765 934169554 40843210 145616053 190421152 347638684 839860772 896446175 597900435 526017767 470653968 257346985 711945484 622341694 265792236 586449460 753484336 940692003 734930227 160358555 778129493 170727838 198331822 551177574 55881258 251674765 84491277 470203690 197506269 652396724 5587592 351900685 852539373 321138844 768754398 107531397 112944159 400517984 215756444 811816787 168547102 254461477 60422458 176336440 836390285 217886286 257612739 336212038 399086775 617400727 21312856 600981278 947320775 260306087 602845609 323425540 810385210 336358269 371395755 958259695 175315461 166011796 96726009 481538426 567598339 745613097 289643728 105497648 338078923 90789713 108150392 95637617 922716598 619593319 302073414 182977332 298168631 697354469 80807115 434150262 779953369 70308545 551750841 628541713 243161216 637565137 171602494 359086233 858768047 793381078 974322758 101445571 679219151 111260838 645551107 748815042 812711588 951440687 783916911 312118364 339371435 954458864 805673820 990138342 506121333 621730214 741267604 170298277 820266189 442713123 380135385 24842305 716190220 86018338 468872295 124011852 658550608 768656381 762340737 209406769 806968525 528333069 489047391 785579774 565206023 386202763 52769101 601563980 758720524 697762973 746213820 196986736 773626050 121308550 206059831 218311562 693665294 277856256 374191780 606485199 513316178 814003215 701634114 426491269 169424817 675730833 570634470 221188101 564877826 637421561 715558468 609190867 632611663 576795539 960386737 535241119 901591395 83665996 204524377 191489108 947507807 162366500 605869636 958395836 606511444 830947632 526383732 15544289 651979314 974722229 144351830 677298787 62207857 177651250 407843781 19637802 539334906 459891328 416200629 155189175 59391027 761034155 177022236 258472405 901167567 2741626 19346800 291856688 940524561 55975826 263758622 392079502 971459064 263347817 577801615 718415167 858365899 224122825 459388841 67266252 967325633 658072708 344506489 614001199 781017117 424780642 695670814 96963833 730156621 256539020 603339986 844912525 217724546 454881291 348014287 478067257 417044702 71516612 12797990 116616136 491435593 740821562 962565640 528532196 953640575 637097007 485331025 438798339 594429037 922589778 388158724 141001921 835672709 572816458 986469361 566410200 585246878 848350664 205452207 905841285 733040098 675918280 301432028 228317913 738702098 39236458 943883452 724590379 678095366 123756685 65304576 388971094 268945847 692096557 826303761 282432790 748785546 618773596 160030586 616126954 459740535 450201109 894313203 960063743 118721405 443259416 109675523 695000140 788808394 31290136 376309133 56017834 624181117 386371490 369296163 320278871 200269972 967977911 423834429 631284043 912372074 250024807 430045316 30482489 197437274 939342879 138779171 600877900 192492573 723844676 759243891 993340205 521349573 315158098 206983708 468873672 599089212 599559306 980774716 661061314 968794084 266709518 203174204 980835536 910447945 158295948 471306505 346911880 796652690 450430703 711965849 881354265 920287071 236985843 466929705 469626157 506510065 968914781 366070448 593843153 303878265 945920755 337041334 244528876 667005649 206980452 873785257 866836422 407352371 939274205 807530938 953112837 389323938 742461819 775846970 717471056 592444167 565124051 101177312 156585909 477824189 238132763 223503368 715971018 626697624 883464891 856430246 293995653 172686939 673655554 298577783 433255233 354730804 850085601 757386084 730800845 510309118 198713048 149970013 335124457 345837055 855762583 615124651 715290230 937212417 314608767 191801203 890641629 755601912 519672309 161079389 819688967 902649160 142862649 118118453 454607308 678372042 567754707 180602688 367520878 502623210 333290858 997272985 504440835 930974308 195673000 97292693 94186159 900280333 739389927 355443885 938131909 672866541 30949706 164939340 92798159 486442056 637699211 39800884 681678463 865169377 501593196 43623418 237631711 482054594 605670805 713556723 921571438 646065603 799346207 56474112 84814053 416057627 974141883 766915084 573003453 769145282 481978330 380186286 981094742 137292522 490865061 113369000 635199422 322695269 326867078 514854104 55504441 539993967 595353907 79072614 913378932 563963595 695219034 169094096 337279821 291716870 892941799 750104609 886580424 302096438 406711626 223879442 405767305 827442619 410594877 97732338 487358425 592796310 771116036 14747880 614831019 9282553 743640545 74390014 187835296 993081254 339016144 117986114 928192882 271678720 734342541 771033028 849761188 958415892 818230621 211674759 708078635 800755130 279835977 763819317 539614324 775807796 515516754 513187940 701370090 671506113 793378471 394552712 935819209 27572114 603946980 551135174 531914951 271230976 252032587 672995757 316852759 888792815 65635264 293946387 454625571 204458473 765119093 667702115 440835181 829326401 382779327 817139354 779125799 980808655 420967694 334629118 305185436 504959672 853668647 429579283 526350422 81900971 459608578 211677637 824404255 769976517 110865666 509392934 244359809 990413883 570145685 313066597 533169248 20708589 719266239 458872495 203373949 206496630 550507366 751243265 675425246 61169841 721213986 63869787 375811759 93587541 859096729 565478093 232603375 471353776 331945613 836640482 515207910 608437016 703046504 763343525 68990959 560756172 582160599 724954386 104736265 642287129 393235548 444091925 172171057 836747079 610762924 910244657 518284712 856464934 105693783 692493068 753320126 731167105 806203164 846122769 572856901 639438821 83774417 389744397 862257291 908872463 480199736 706100157 562230885 224688545 11826913 122568689 581611898 506091484 562266610 376489262 894391592 958065833 207544698 581786750 786874553 164712133 966044057 101795498 777021391 513152517 183938731 462892093 144637496 745671149 766507814 480941677 469919832 842960136 635815962 893124591 570073511 778620209 978905780 875072285 663510305 101025912 21802040 314188981 963442304 550522888 918758918 233448996 365097311 749394728 750537550 497382863 468284278 976150531 87277399 262837372 812891068 472349218 939801809 195259996 2740787 650799455 677038534 974668981 29404420 734980212 365046022 21163138 359437787 908331681 632379218 199811676 718532075 166394970 828731024 454884899 566977468 793682305 466954838 648410053 850347620 141068074 71722734 376998005 959071092 147763686 762847748 490464393 373341026 999898055 316077127 492722457 44515278 911937535 121732882 623762128 380697988 202783312 812904157 431586019 989995626 295202857 822351106 417136945 646611181 918134308 967735903 361566221 941513344 672322618 269837520 69131667 859388708 739547443 375904642 451164694 428998887 53081592 440053610 732261485 906403948 794994244 871403742 383055085 351716995 829134550 120377063 691206463 386325958 821425674 129786264 730106811 181012526 642866089 556223500 371324 560348469 279556314 531372941 938530070 263013250 626621875 625560596 603302190 258065274 7673000 634975464 525901437 780824554 481613750 361244123 919532827 852328548 289207909 700593145 772255329 223020601 575185655 242378481 985307879 846479188 565396630 596428652 873081858 333667604 881145678 367403701 671970008 488538660 249531458 76890985 463023806 859036231 624086061 37247028 97667107 798139094 958594943 985845354 925919570 153816424 112774425 267669243 51396360 870759640 115058400 102627697 219947358 693527179 957835234 214904206 624055459 570404148 20091506 392328800 778319354 979316723 455850039 112499718 581753667 235531867 416468382 588296416 880315211 57329749 423539276 408138162 551752660 453859907 946078147 629539473 425888005 611533459 983396003 926897778 161134784 709844235 914902909 729233670 39944233 466204055 162393024 544286430 172182834 542581102 566328158 530809760 675515155 381154314 369002336 559732687 890061386 500533973 983002677 320973065 949843599 716976398 693832957 232971838 90913810 407859413 899125294 576527498 56945151 509462210 103160120 937132990 670717697 532791741 143510473 768840814 598971660 615399730 795597441 353173409 837139047 917776412 642909938 662206239 614706195 198401807 959148487 444265830 371451000 592799984 605286255 204492012 817838230 892475162 980737380 142148364 285700677 305730308 669807557 100554298 668790920 49933786 640428155 422138147 982066238 578040198 146943161 562938935 285491378 761400963 876094426 39503107 995943181 916528592 850634748 788725069 60935684 647509504 857789616 708073220 33527033 956148789 777715477 468110221 700400707 861579430 99370309 945364987 81069049 149190770 588152193 145764118 825067793 86906732 200736204 902694821 123112614 813181575 722032732 889367591 343291367 582842144 616504167 879951016 97074733 546917930 423666727 621459032 21693034 712545565 540452998 459925568 146988737 809036652 61132249 909711178 144621700 997127640 214177964 596318736 913675315 193559082 208238051 154337934 205274597 74383643 451498608 954495375 648927293 199631678 446835486 699568697 958003961 187199604 529322266 963207416 572222662 154172673 677819821 41975559 973640846 44227965 203391895 969773263 595758341 276643332 23770454 153735083 830912265 803679744 793329068 928589128 17673148 376574584 315135295 658233388 310414169 851806129 464718466 110709411 795623428 580345932 825833345 379679294 513779172 616319250 862273087 254766110 560893987 327692298 70023160 989135377 648691299 908705724 90826942 717161510 882082185 972287928 915401284 165078440 752177298 103419815 749376820 497884269 984705259 886104894 335016178 230204468 356196237 219746923 409034023 958920582 552171169 389086515 47654809 138790015 461462566 80304273 955579108 305996587 352223061 872934846 41106426 874451538 890966943 862106816 276149247 61473189 183587037 51423215 864329242 896620528 753844270 101365505 834587464 184463017 110114749 158000988 632354000 411625132 335633397 902715937 7296298 890693718 960046853 676773481 664598994 677915479 316667998 972256692 220562975 463458760 793304516 577480779 225315163 299698355 930871421 457785682 237792251 916749526 328502955 794704098 114533195 318313272 929680906 616651121 985475114 270599159 334169759 637301784 817151407 831190857 262343308 273118305 270942379 400651334 259112382 528383977 468699743 793942455 348421337 600920602 27470199 751168624 728232034 952903063 979342387 871947704 492840262 827844230 931213145 681307489 28830820 492690759 756051497 512173909 195323024 287634428 343400182 875501183 503952444 35984334 973721590 564614198 497996889 868205500 126373274 865730933 947042089 428099520 243538250 691054278 572605222 370655528 150736704 290765587 108449094 377261828 202362127 34269727 780734678 798477907 54731695 697559169 721686752 797930936 176514121 805127074 863766178 202327543 559223500 323985980 510231441 78956740 910393324 849586481 466192982 270522549 517728965 373439768 163645237 908280725 527266790 904654104 357217134 967793158 487237829 522556835 95853680 453357613 72271480 704782366 370423778 558106583 487389726 830556427 476571826 526528164 954269646 908025783 272936734 837637104 232166531 643794678 410239032 629189133 140513372 871112296 815207241 558332786 719342590 89264000 877469393 871620654 785920130 898963402 42712180 297803798 891953001 330341093 476859355 486440233 233351933 710084045 889702307 409767258 74257294 570851938 192166318 828803160 362783463 67671339 526844572 888479914 955073169 259612226 184368897 810020669 247186851 353097952 390232608 644774934 455858379 361528367 362115342 891742459 561044976 573769659 797260257 502549087 569104093 342474743 662353999 415060675 655559600 529593914 595352283 34193940 472450814 643280394 8126545 211188336 272642869 345808166 193328447 221913395 621911926 566064821 994472103 446894634 88892734 593689379 128368471 808762007 733863567 277348356 74785340 561097266 776363133 545429277 141905632 254830592 745732282 611344002 818144294 7526195 793773173 803826363 113956178 319400668 964087211 46397396 562311089 710703236 891848773 209957782 223313377 984212350 623873687 806312538 563716821 595319558 332532368 410339768 585953202 496381270 779742167 694006351 748947412 943191758 182979785 294187648 83023376 16698488 486051953 174033325 650499779 963391200 728582262 302549323 563676143 897767136 701709025 5321007 29572630 326050739 192963217 705380040 161094704 259878323 599227352 287220624 90513315 245406767 898988994 127871966 528289906 665130214 720320421 861405257 941391473 109437682 774092014 120114046 512116690 729472316 855646500 774094730 386708936 263410148 338793138 803393753 772354635 921413991 960992943 452050098 290465990 835103115 942427972 929165081 574746376 800308869 306558853 863130955 34654110 323475424 215836851 451129109 111558574 382522745 392933459 987609593 680990798 108980237 860322575 666517572 511390046 923648729 557133703 696576119 499866169 202453470 769260527 866515684 348568145 603511029 80148857 645721083 167344248 51092586 894551917 747756041 561864596 152616693 651909918 26423813 681660632 56220968 758976988 797776327 32353776 845520867 751513096 877483818 429327136 967023090 223333436 759902878 68091958 306210742 414790672 21240792 851136476 22883693 283854003 276707836 782480430 108162325 607057313 793008462 688737160 8544149 626887980 442222698 342810556 748477300 508504538 724971493 404603698 512829015 835597687 25419026 429257535 325566729 928604652 155528523 622968046 278282770 365304029 70833148 571404973 448599493 747579096 221826064 27640466 747685504 303366923 275015720 665972287 535353498 777502602 380762407 776779433 688832498 343158677 659544187 268058812 110630232 374505207 311957645 772296300 353076485 416977263 118255989 568711952 443505786 787999868 886737595 996928061 655664089 842239375 141826147 339101472 702029378 989860109 431916613 371549334 329234005 414269771 796439298 963748995 741443760 793679633 28512401 853550686 854380406 735130820 628940213 587225763 235754310 66280649 348918296 720568921 666145902 779314600 358170736 420575374 742277568 236466841 165309403 561956233 164879355 111148681 752900114 191606426 809427239 826039845 632543262 813499438 876022833 597237712 649962954 516886859 727303594 933728252 394231080 538904128 719028559 801476388 496619433 716041341 978468342 46800992 382538053 23322804 214792158 157182914 893561371 647731753 283286506 227337269 843008393 805523582 259950163 806655416 744142003 481244821 610263368 2564067 793083241 2055281 675164379 822155592 306572201 111054417 271676748 781604298 693144068 314474497 574980866 567137137 596895404 976253488 262548235 507847367 791087150 932107583 787928627 2890401 165261940 787203394 412893357 695648281 762309324 5208133 591405058 988521129 308773279 773535395 621464929 188251712 260633372 783094437 323938428 237842482 239355363 142455408 288414047 959816508 497823891 388235619 351124184 421520063 17117258 612265059 715123490 393372586 911178914 958453190 63497621 52296017 503072924 386378446 131603068 259419439 151251517 858949397 573276511 881628695 102131739 322238720 32656958 278140181 432420439 681771992 798560904 444002460 346040769 979942532 960728671 421356979 868407159 645423663 667891104 678958270 435229538 618451010 602299732 37218799 888848108 201744195 625508370 330448824 357149801 774738266 574965484 648941218 969627272 230782705 604345513 976880779 537819498 497196367 581955986 638753931 520352464 780611593 167955200 791677663 782445801 744199235 778580175 171191098 614373899 895716686 574557507 281550535 608006389 113319360 28965127 807170522 891384375 638477216 901192694 517949289 17809369 608283065 467610109 970333740 572362729 960627030 768574762 644894881 364124642 175502501 968678825 324238918 666471240 224239795 560564480 826799412 896806614 666813690 854365553 327368815 471299830 601112514 239365536 604319389 292921143 953774517 190055771 371117985 846233963 819907589 262859870 540284260 855519285 664781011 972779270 801572329 710923978 683930843 583836366 406085941 104115535 837278107 858130741 822069476 726397015 295373296 184783963 100929955 463301825 708575352 216846361 450142708 640555106 475758647 66195786 173723608 602700060 5288449 198574644 62950314 751880483 633089705 464394221 638971088 489113690 464307574 801708539 908709927 684837301 633618660 191920793 842680654 381862346 881436934 251606498 332191949 778329571 49578519 654199206 999457210 744434340 625167281 779250410 144327140 126040877 315215856 679044586 970281658 400950224 841375030 699225226 12650858 224027454 796315398 252667469 494287987 664277885 437623580 667060869 714598441 551351780 947330192 968214906 867578333 113487279 324965753 430807974 108113493 649878833 109683410 671789894 981369983 558335584 482928908 234808042 129674438 717240230 7616810 464229002 687526140 982271836 459127096 971342702 890507420 679711378 856279997 695527778 315160015 841143469 630074550 741803648 273649239 261004125 957551925 222474407 923954078 434809644 933368967 293470376 549244803 508950347 28023957 415523838 138646795 558435971 554369467 116082639 69115327 784909726 716364624 863808725 697342192 894767591 944523459 764098855 986275070 742003594 40029260 385744470 292644078 55407445 185242880 841002764 512659 738940055 401249877 733153773 744073510 97364989 402149029 878843008 547793315 420067575 630142334 798275106 606868674 183446886 446165329 962209229 351777551 855482112 814560752 210897701 829026595 26116548 840348089 391356688 686940919 644307015 534296733 584792109 633308847 225144474 745563865 593507954 429967695 240610467 779681812 709515647 853651567 871138560 387396664 75037804 508296208 860981562 855134471 766285091 54572901 763241085 958167301 187183654 585205896 143384783 481637517 524995045 698848431 667922074 188420623 874523852 972441418 212044509 14849564 293798110 596855226 463639988 212408949 729852405 526390665 680981847 37523191 785072360 680499109 199156286 267056364 715767252 957106587 283927530 482389098 633849299 652226935 642825936 276562161 881950328 249890512 39790566 342943463 514286113 637444763 805287924 677980627 811609563 143235277 601820201 789019753 380758471 644936497 67038556 468939220 316677099 483021472 402257388 170706684 235304137 281725668 580984049 892414433 368026587 742193217 911956564 224698150 563867845 352557728 327089051 480158170 610523973 728542329 163224389 144819505 995122864 131680235 431455857 292003088 564853687 130607522 200879276 147719407 30458351 363266552 246729407 70534898 362675423 387868639 781077876 350688060 846226237 385279125 582989791 747891379 488348338 433773398 885271192 936529224 498109369 85543195 525926235 308948409 546926968 475631459 984919032 639819982 238749196 864732905 61919462 205026216 59212481 950626718 855400119 328128605 857045007 97213428 131751540 325978324 560986033 61872588 625307099 798477304 302217379 536917144 579583783 285247125 681569056 466325276 185776825 782567143 984025710 41623838 490262528 322018558 534327374 720318553 921075304 908071958 842260120 549058911 791635560 201977503 424363643 270622928 975320762 231196391 826246715 807385900 543220811 654493921 386311395 836383854 871643027 896392416 69108499 45226330 557950594 570129521 358769053 236175169 622789275 106947264 687321161 517531901 50866014 898071758 361060709 825907280 654475357 330035170 287753943 28478454 567609020 222570489 468644938 286905748 994759353 348228830 659692461 798597762 113944684 351555657 212293950 784112828 837909952 245200627 594343616 751593874 67471239 307878448 18642554 905430891 110232566 575604135 718892444 976574387 292425213 177143832 65098327 427676637 382853583 812745213 446410617 602255444 241272952 233657902 765024562 547894834 541290502 179226304 800052815 280128370 724165897 386975641 689658141 990015179 22682115 557360559 780593139 1160804 931964963 291016456 775791223 322899997 168289429 275051273 410531929 8575405 480267163 748086158 726653362 173864649 127303254 363570979 573177108 49245850 941365795 669538259 975531252 387813387 604273828 41563442 205755641 47196776 286100310 703163781 475417369 456571331 838963402 922761596 393938238 301599702 133863323 634475149 265810192 998214379 761360100 452611059 228462725 991949779 26431395 255889813 717512612 538431931 571561130 694163068 113314516 107525945 796943839 860393594 12726247 755695757 253923232 566404955 960469674 154424070 962479458 194116614 102452323 238850532 551550944 505329995 61646573 429851234 439252640 976414069 5302751 946867222 297801469 431118815 332544145 489360116 109357568 958528418 691676023 983867466 67244019 676611758 523624386 160005764 886051262 392776001 857704182 773759040 989312359 834902769 915533777 462958109 858507385 855403773 769172085 383986827 542815513 98887069 204737790 480636408 212538473 971043293 711663917 639710605 779238525 191776936 407078018 844147699 320615514 982909921 275705518 721455499 229948226 738605350 107171568 940745652 173512049 221413953 351245421 621162321 241243494 300422791 507211935 695007260 965851977 222054543 904207609 299291722 76235551 377463864 371930247 482359776 682148848 598452979 990508507 99570247 62137252 770852233 319251878 42660797 880089475 948652899 521484935 658718147 546183806 14361361 438103219 361233171 358449850 822409680 144854397 411438295 609655350 54268359 859508633 286143132 728242637 26041141 843424263 873735742 299021044 701470441 542393066 203572783 322386611 239071847 701876029 226382897 572667125 944393078 698077746 382759751 730976333 315428966 462801755 129900789 294693216 50887980 639135767 600761720 438564111 923893255 442583159 588076733 363151116 545356334 450465514 674245004 219248710 340272655 639200666 78288496 602512170 940389861 111763438 446770934 90844921 363227514 434090307 655235314 814888915 256972436 487598656 980719376 855270332 588928070 374790059 908082546 547038863 989887846 905248795 40527575 333371274 16118460 555164316 629767415 497425656 818300986 217765337 663439148 123102263 594890887 665831540 651262450 38563316 472457486 719128089 830998369 968937017 71098075 22118055 366418082 976862978 856687255 829577811 256289630 365867593 64363753 928843615 782710888 51658271 466831656 789641593 556939965 728626142 813269682 474982132 472325474 371269962 939328309 733115042 566890483 611134876 890844992 468826228 423341645 692832248 38973964 160415147 203619155 368867240 630132721 398836799 229477522 447888267 354004568 734886398 656563360 52607283 26855074 103865632 761925669 971997005 506681363 616250879 926812305 910919281 664210012 376876914 152083267 744866598 134414912 813426909 626149996 755747878 862695918 62130495 393669541 307853695 596019717 386270269 424067386 954891241 463375224 690263712 270887643 647331620 647717047 477176861 794879515 993618001 770720592 891524547 382119723 949222827 127313321 303899778 860270951 576523484 728546306 728868027 34723636 537346196 77204058 165932082 276920710 672372865 919455644 524469177 14270325 685162196 909410250 656725630 349061711 327169246 171122924 460444434 201563292 238238201 308119674 926443264 302099925 841611565 167596852 844935500 164921831 549865560 682156623 926539546 15366677 422651950 946569032 135568837 851368994 496547716 154624090 545255584 231708986 13132927 58216776 335691226 112484948 800599687 99157094 137896983 508121913 371314399 27608480 494344410 49985030 174451248 542479145 70813685 369783707 752557431 651650758 918623740 191261457 638004142 535635361 146179208 867453839 727122968 427089416 107823639 981670152 563230593 172715405 692672618 947742330 27338591 857423059 310729067 370961611 670250109 632969077 897384841 359280161 229491416 954201127 828440660 683862942 600868090 446278166 892545419 416328684 815709113 534056930 907803704 722522645 951413767 806741737 871617811 784509308 695546080 590268266 645692089 28474752 981097287 347705566 877653915 741860307 143652938 714608156 886982282 788087409 709218804 876672432 678241477 498909478 431318348 307068193 29921935 219126837 171845208 197561859 563174418 403908859 999887252 721407655 834370781 228031827 807439154 715140501 360120376 938301680 203884322 50122768 536891165 271592439 390115605 865429298 532855537 522423090 876257180 658470733 672627609 406059796 237258684 687812370 582872956 585526611 80660944 185780342 225542819 401728458 713699056 828344320 452278338 325528263 661863319 853092116 470035538 769050773 385688734 970554441 166185612 388789072 648501514 761998212 247152737 781507776 17032612 702784692 23962192 611431768 920048872 40934808 777793305 546841898 229227697 851635376 343485236 726437148 750512335 789094026 458007436 486544060 375146692 30616105 189459138 558921099 613003350 301567389 478461359 234379190 584074459 374253632 551806439 940851898 962905771 892128771 539692476 698597380 227864266 428181028 57428684 244197108 962171079 148602264 573801487 51049149 505996858 320957053 102029749 478271345 343061840 301767573 997069495 981288976 470728475 71093053 66277243 115058686 11375156 150667844 255787316 883995814 151104716 997431461 289091661 715868853 987422921 44387281 785214355 506998231 823465635 252809860 544773509 992138066 302928392 232786934 156606154 453354410 805824164 691581917 913472991 232731471 746223267 575700402 580552415 950997175 653304128 362036072 788832397 783549451 43267381 476815003 404455842 519088485 909068701 362475078 829236460 238553775 208188804 347717351 296215677 225308112 470407388 945643915 195165527 911737665 367225243 145291995 761783072 640657954 543275043 56366931 738742740 853483420 924805916 111336819 741021992 60355267 821965321 317127817 75445478 992505851 898584266 94233977 492397533 234827860 225312856 87982123 554424043 931265392 831466875 244697039 672520178 588369322 84002244 99402290 595876077 541230862 399844615 976103709 606966987 987964995 969293625 759696482 863957271 230332913 430776315 23656454 298226254 836907933 730709209 258083763 323824455 726171989 44245551 377943188 880098382 154390129 554106877 469258527 953181508 481163356 257171472 288056658 591364762 774369517 666147329 21674938 366675992 830014240 321676181 205643490 782377035 685166326 786994235 978983877 997512653 68165706 886604235 121324889 419624508 887130759 103408777 994529782 167382584 995606846 659631816 756671070 24891888 316013317 33594162 752252498 331398760 55504250 134250251 554987513 96243974 94115732 525537287 904680687 391937618 670007025 488375278 18079156 518811123 642085059 194355742 1680007 354578594 167953107 184066603 224744620 580878313 111624435 406351489 766032418 849891516 902675047 481055889 152415084 90665398 992735299 161472880 674441090 329233854 337405199 50688115 596124693 294035151 105747982 181483819 856628541 294217175 607725057 952237507 73283570 218025224 111989439 325646728 857075136 664208733 255694018 660180364 617755212 713807775 334618203 207374878 831137755 64326553 276329272 177842606 560348328 347845899 837305810 901636180 890323424 864990868 533472270 106757475 719163669 978312831 872450756 752745750 342104360 136071506 651289202 149602554 706937488 175522033 563117685 745200093 7772004 777192909 437290953 475130046 177445049 179814931 987068887 381934691 135493505 691484414 255915239 22443089 775893273 254894009 917351344 819271001 766423253 555485925 442883915 640224232 321988063 311690441 597913944 416201046 748892196 506802271 936996367 768489078 977090526 881440219 282645856 849032581 347176900 133782009 585741302 736660654 915937328 562480930 905493446 819494878 733619223 853354570 289947716 98010572 667381662 707659582 166419289 332125006 560288126 244571640 454347327 25243278 128915522 186873428 302627868 835802274 148103234 207641395 895471471 508254237 505711518 387475447 764201086 975572584 725812185 150838444 961531496 829261656 499860060 410501110 981474310 553254421 387956950 394313510 372943864 266381973 930594306 771802386 852758208 701686524 497674920 288824824 244802609 124643023 132147336 526897894 846361265 613846961 34925363 468861435 705655729 792062815 687320793 280019557 844429625 890932727 937340286 496305618 758917623 672211783 612075480 951563853 622694996 771264801 288888699 391532400 415133327 649387804 373845624 488865884 600105297 720044741 441161463 335419731 376943972 723577023 306482405 973415367 804785845 410222011 311957940 416842165 487211585 970939999 908097485 922311852 649109307 838609773 882454362 676746859 775817856 641050271 420496739 885212250 767168680 76821108 819371065 130413543 739863145 847366411 668154243 983543249 695877986 489117273 467045280 98931257 73614358 12886992 776248965 521126254 609718080 813443941 315010108 923657107 26251834 966381506 593928699 165895138 269100679 972516156 501407526 869564547 286709460 139788635 72134627 15232813 199128937 684338636 390582428 199687151 770528121 835474515 281556711 721561134 365704570 631276859 672777324 631048884 86716455 562230931 915333560 130551695 786614795 951044478 628729953 350701813 955773079 564028058 543095171 914261794 241714807 874572046 703978084 892550010 823893453 784171170 628647917 114600043 310290318 938729044 911351650 184953970 622522111 263423554 912843234 649780188 204939476 118326093 749749684 907501718 545115597 478596219 148557493 853122920 778807568 934466349 171955852 92881016 13104757 388839850 43103520 330148385 833318721 421557963 187526009 885454556 675352539 749920956 732898166 713481214 133400338 860036250 771169444 289098438 859425109 506559293 454232852 616302303 878600000 733086160 232489732 992783524 135402099 15119872 294488052 372297545 311944086 225409271 287546321 183118494 178928099 200929118 347998269 743830785 442092056 904131363 213280234 782770346 807659962 715810059 88994836 651372308 214747152 429128400 617104588 950221431 317360851 521558594 789075154 285881008 982132689 818609320 209660072 245397707 345035821 969450179 784263037 656333827 791563837 271005008 350772333 369865572 194862571 9934726 79209357 848050873 784255011 866047013 853700334 472219313 445825411 422145221 307917984 527070705 164661651 773970671 113277617 733935070 993445256 506768008 969211973 29081130 47472498 340282185 487969166 898692132 360595533 999241897 708456118 98921786 15177429 309701260 318739754 239531812 707074717 333721262 255680878 891531969 648109718 700933739 301131747 425603224 851211987 629139797 514654210 668028638 564495456 452286053 166657820 366547252 449770961 139527501 647558601 171929369 755255173 18606753 715374552 815454049 611503872 935406078 372751137 144583728 633578379 570716105 609761568 746247497 250791538 944890628 759453558 979933295 361055949 690801754 354528991 476151221 954054631 573207800 880010257 924965831 395933457 922643411 75456457 183244437 458581008 94467458 621520146 500909804 444709873 398202846 699354410 708295455 124522663 317646478 149725616 857013100 90409147 566848408 889776404 950427155 737652635 23921371 280569472 602385901 341155520 650858989 914896552 150825708 860061660 178168233 940065112 313458045 430237657 658689020 417730383 136793737 64744783 117692565 575144477 741561502 778337566 275688082 725279474 44148945 62950384 296058325 491483346 193015696 406251163 842385210 60826411 325991887 987285481 567157501 411876664 642419430 420519639 220697094 644692215 489227355 846128733 999781161 285901596 923099346 993775179 236806894 932185627 275482564 589719412 126777981 22841510 358268142 81021259 156440170 154771392 851609554 448606841 293280739 647775324 587457184 945734014 637850598 403865206 437264941 203945887 39247383 361279223 584802264 681917507 560580202 298068116 960584506 791176605 55787202 325582632 804426475 399343626 161471007 351980370 18813060 16762504 794978045 565082009 555266477 524945908 72325126 266302499 336772148 863864625 682739265 749411248 495975052 989005432 265965711 134883538 507921679 229445185 56958128 700375946 677944650 410813313 901678130 993467821 127367041 119289108 885462604 409773509 693935336 343919989 332043726 487235006 710190700 626229436 711156747 299901883 268928492 918078053 27301551 114526720 978227516 514909093 13788560 364739720 185800932 134340250 57936512 331974472 926057773 604520669 316782723 609990479 557159307 939005638 794890011 223216321 389260056 412767817 328930369 160617358 765390299 356118210 114542104 473032677 579971364 898823335 496699095 734713336 616550095 353596321 63271863 852924724 836559287 926476227 21102158 506071863 304484668 470377236 660885676 692768578 952034654 895708699 487805750 859237946 451533910 535693091 508430470 433019058 541261510 230969657 835146105 748511987 461769616 195101600 612063667 421563299 476347573 126540128 154837540 229510879 377256346 506275318 447601050 988376524 224766599 164366994 814924331 543518180 20647856 522150852 710051646 403949500 175531896 2311816 98458488 474507669 553732034 752107272 294352745 260170053 373411054 809620572 512734987 921992232 123965862 461326801 56935206 441928481 526243964 442450854 134437619 681652365 318441633 569725918 964392558 900102682 25553720 892186412 140029835 193022152 870675151 480038168 132157855 29890189 469036975 437234090 30509498 552452560 754695408 290469688 196676079 93377782 777323877 118604577 767345552 165215095 914929405 372995034 247656179 649711093 431995865 223989423 526501938 865046114 408268808 319460604 196163350 101621312 325016243 107470081 826777084 990716959 276400488 154365315 806477705 773172121 907220596 744654115 313932134 604966321 557371618 369873165 523332438 387016594 243851454 890080915 462555020 837683827 97366961 546411009 226762557 891270573 223682126 928290939 428163618 325878518 661642259 286769242 760528199 335053115 679138760 162492859 521217306 914796121 641894854 485401671 859625731 332404295 578676636 470500345 557841307 657305749 872436620 148143246 144608366 415425189 264315924 725383811 114269780 321981103 58241977 533819319 998194879 944034729 233473256 706220096 211701283 255162740 431288261 295781754 294430227 885203793 427803850 884168792 757880399 674735561 706386838 573994879 994135893 812916029 556960605 510062096 762849906 226462742 139818230 232649805 432798897 762434184 630220142 393581344 356233605 611460964 767353242 84868354 398034952 172156685 921962377 157588150 308481598 678097915 499971584 228227938 159897798 440338617 971678200 300471749 783406744 910965018 256512870 420269018 847673371 420560602 702138447 102125325 697811373 518152642 410146175 737674090 216540833 36453525 492383556 489091596 259450343 577114195 76111190 911750230 553378378 709063015 846672780 90402982 600673573 354532429 934409868 957381236 285323983 476042667 77658521 382372316 837424692 455317506 838862462 389395869 244022584 669573121 623085873 938541240 250878448 640888369 782209469 978557871 261654089 772827407 402562575 691108017 551161418 452068118 258898703 547273173 242415056 707179410 541846990 226873693 612313465 994535867 602197235 124216756 639358546 130269382 236306462 394935320 582037833 897511300 85244639 970937245 980746507 245600060 583654576 68689721 981696125 683099189 734609651 882491490 477498533 419406433 168163842 5654545 454010421 9744199 791416916 369575874 752586153 313461684 713524633 480766482 578841062 362121921 905697380 53190649 794546822 901012489 53421377 619726940 934495863 652607268 590313629 258471773 173288320 469901448 338468880 15845397 715633555 546348400 103931037 870661471 218842834 155313940 592138052 698915701 754704241 262722803 627985879 201865458 732721691 836320111 664454302 825575047 292090824 265633059 491090339 163640005 233559447 242830257 962890951 613134998 27625870 32159634 325245624 30468052 460715620 752973691 359027893 189198899 97145273 160171252 538372390 528018117 809373711 235250095 904193757 736679605 980821491 406280539 224280937 509519623 618024367 174560684 239631590 208385441 849354466 543367645 780267286 181737337 910299497 499709274 845643184 522971798 850342600 754467769 948074219 634445148 802080514 672700062 572398809 215681953 208130425 214693369 207884699 562986143 727549498 301845499 6083479 843617156 251874887 188345822 57304532 445032390 716262260 982875702 405126322 35832205 475958343 324252188 635680976 169300997 930897967 736649103 264249192 644730319 780501708 111747043 805215780 139651231 146020238 489608082 434897372 204429258 140417575 23400162 100957768 64415641 438442526 647844667 396742557 480914818 883205278 431067396 731223372 546435970 677799495 155316318 933828299 423099415 420700762 363719780 889273837 386190673 789996029 534518805 674941157 406138370 216233298 39135968 852034083 896222252 332411831 853740579 587277921 48365332 523401090 479526246 911292863 426701270 585599249 950612223 960362186 463587203 22949341 932645630 343237729 378221538 665275720 924895789 867997659 287398724 666764715 648404365 206020217 15560109 229951922 297748725 673291539 441578882 195114485 839353524 588653118 618281473 384865293 465787187 208357813 833024287 973904040 429810576 155916140 837695545 692348006 714253443 124212857 912975406 805629423 17201889 482130221 120065314 494375452 244768112 553592712 267706729 946859988 545860919 115718683 25158172 755982477 563246458 149803619 856726517 247254382 83151827 388369843 905425559 918558088 728731740 671377120 807043186 309929532 201888390 461000380 347983161 881750554 413451443 75255867 517140542 972145965 441243234 979602613 15042242 841469368 89275083 509843647 276570244 45198887 589867401 229552358 238323967 529155996 326010908 850689349 657366524 995856462 62909416 64608028 474381065 918720830 712744341 42660346 98351826 525975254 3448820 640463356 319596398 7809293 230408450 259569742 835756214 321115436 312118762 568410535 188065923 85357641 457575922 865278390 564633802 815407607 982792318 625674516 581870540 721489267 185710477 206494928 607244735 239935669 91565367 694448049 276594223 250515463 605280000 696516510 985965835 181422548 287210968 69953864 89956879 111960908 969796164 580626444 58403283 907994474 873348003 799431603 919989628 424953482 888358395 970243240 130186821 697796696 121572089 272026392 301254440 506632098 818072558 221079696 880187506 158635077 424067487 118371937 128972371 132872364 764252540 246177709 810069988 741874025 44743251 392535412 382175098 561998751 691278213 193452311 852206509 234669900 415413857 336775376 62662380 833073363 309272055 388564116 366755098 300062725 22045440 686173528 342639470 779836745 811183333 13625604 546893209 63855861 411613490 828449353 711814773 456795291 616845880 351463634 66761946 711416691 344546575 861791911 400886997 775386876 4728116 994665694 19187756 145901147 426200048 665233503 816682745 555421844 310222617 960315466 471729306 609012638 228103209 37924634 576727594 934709515 661559253 60233471 938181340 835450034 715682530 137606619 87025510 879245038 135957457 867947270 727862679 249991751 931222292 678570448 870775986 610469720 186429089 651728057 128802259 148556403 788439987 182285683 293242851 735491716 819137920 905554385 731238910 930893031 800744878 383984137 226273662 561494949 808063952 309188650 200620399 974380783 320092055 435963905 432909331 137288155 375004018 834407991 180935361 428057072 465007108 838559002 555761748 97984321 836641492 304068231 575120173 126442068 726245804 777405554 604111621 654012630 739063730 120812490 6263762 714901167 380402191 778848946 110925543 458169824 290290919 406951101 961409653 833187063 610533741 334645116 802901515 402788526 442907085 677847827 233967099 96570696 282957866 259033283 966439234 92022615 381018441 605695960 646832294 947807088 545540711 702471813 536739077 822452113 268897034 444128489 143324778 16113322 391993142 355951482 179371713 870018599 435286810 635552488 217437683 469418990 157600642 126134713 8059053 269403626 297809553 239529680 839378355 465986295 695313621 149578596 875353140 116383424 442115354 280778712 10176030 430005948 467343193 401336671 404604833 755177259 352398159 825635162 61037829 374538728 904278229 659551800 70743511 394945030 993476659 247771475 499197222 988858843 545424290 440422296 113260154 428799373 390529411 324471498 424202606 248239550 287843731 354894680 141405627 803095528 470446814 422303145 354889027 346760429 951527510 625698781 107072602 336539558 127497126 567546721 544791715 558764439 25597989 503180977 935169892 919876140 158476716 112427769 724649914 931292700 668577519 795921098 326554204 746789771 796089344 135751016 612000978 969730048 495474565 203983831 248769266 798378557 416163746 575544443 690730835 595140965 297009484 374522309 304738277 577595423 990715824 774992368 768060420 49698520 284138490 765145205 5263659 449181690 858390769 414683346 482281999 461031953 740642088 396655632 835667184 782424270 691370539 224147618 81949581 110786597 759130305 591963962 262528978 968136958 31103091 873995986 769563541 168069145 458401523 155166429 777102287 316941159 628318122 864875650 428397501 533381128 858335946 64088801 467132765 400659331 970952440 764652450 84567824 202231726 291559381 854474813 182948616 205767274 120719458 880944120 489295156 623183287 676565997 972556793 703428456 253757746 936647797 976548030 348849523 140503453 860858211 253219973 996468919 864057768 660962907 34107199 610024821 736137701 571161486 555497882 567897662 547550692 873517191 581177038 309957938 638715783 540636946 152783357 733100119 712435322 176394528 686594963 578961168 115147902 743540593 517751432 365206598 31707208 983744912 52077436 523567039 510752965 945631406 210673827 704662957 790490588 439190935 662594256 452454923 780024426 891941368 238346861 492560684 351237842 68108243 207364328 253289704 839402314 512998466 360057065 670206818 185154359 278887449 879130618 997939973 816622992 427536785 429580117 385893356 70235927 660859341 918991506 164584596 988007887 826472879 273290246 500027899 130461790 955312718 692046754 157625544 549889337 57058516 847353055 145243318 776303693 512524349 528528776 548292749 593535638 550397501 728317764 334897176 935870888 503160753 108890767 521780823 901655559 697102529 792599420 451357709 559186668 99333094 589200771 889694099 908033873 2048102 838580823 710481063 944830443 806207915 697216266 482080644 712586524 438282413 348707959 900784209 685515053 87897677 933924662 671159245 83877787 768392135 237141101 954011713 412302291 80882277 670110238 835211319 489186313 851988092 533683622 734823451 895269441 535919182 833350444 892851980 993103497 818654194 182324626 829585530 479161111 993861137 567133924 680728749 818751343 150257451 796449358 3359418 583117487 542036342 991845929 260045162 720588938 976323898 254316548 644754105 418008010 475386984 842487905 883733407 664809192 29109483 4751938 698889889 979261606 796049544 944473165 827189277 746092654 727220719 79533624 385428464 286610441 985185822 255760475 470753662 883848981 128043237 107825596 5459417 48050843 364903397 825019648 781505614 551228119 249381141 346013106 598330637 856731423 802247843 166412355 466051369 983381849 769297486 258893397 313877091 8721118 616082174 593587854 799881998 472712386 852695514 173144105 802931099 626974126 116910461 416062275 615024137 983430088 506942327 741898879 848455739 710588374 88137454 100630592 659074741 136825458 946353030 349827074 913241215 810838659 763981340 978293155 466144728 372108815 865044038 793752454 673863428 844916045 975520175 243677958 784084359 521148396 901579905 592385568 917589434 340465146 384573061 271492742 487131720 329786530 870076650 289273493 22080750 104089207 423610165 821159432 217209229 515429383 977534907 953313803 227347182 489481016 136846813 486597823 213892663 437826609 516449669 357928445 870354356 579231995 217410062 356559884 107414533 735455995 911914043 933706873 35284945 564086981 859989080 291862077 564332841 88617462 362481585 227568198 296607762 957419924 598393217 460025769 496664099 148562143 861778777 212735711 693772855 857367276 722020245 402066608 475134301 643295901 13798391 846260713 316944907 921291906 89781701 537433093 242686619 643346301 668160000 930765575 291350719 711778577 287744007 337970650 196704775 145277169 107646422 228007918 463370399 623542225 947632066 806871595 925098485 686241978 629072858 614731387 457649921 547891060 740862873 462782884 778260591 224249705 856297787 927662535 686212925 511107920 640195422 464653464 820769990 245821691 203426876 724751936 495623343 45139607 866691480 382134200 880561373 785769029 90047956 401755606 920777721 550260032 826648945 793041784 705480943 883232867 204196916 141425417 563231548 241591733 877286931 983142197 26775736 209307706 350100129 765512139 992144906 263381028 167973963 191663071 355505275 657123060 546617560 116045795 607199300 519274881 783748288 549766885 815491385 162848453 75168926 885325506 834604109 63177572 34240107 700993053 296233449 489440557 908508235 282937269 44020003 273180361 9461317 422773483 140602820 632409030 775671460 546081991 572881646 83699794 967959771 173428613 186175086 955136055 296166380 322116639 28325687 365684193 459659030 165592822 183533018 582541114 510627079 165779761 925987705 272862240 863054467 636917990 107365322 111217387 674960904 755597866 536711980 83517013 106439621 841837362 329476589 157607059 685036277 455973847 980701784 213853472 386600289 419231398 710574949 892821659 108255821 227762884 739100706 587036500 925370131 358812956 290983298 761043680 631761415 452596521 264314608 753877083 285494091 815586884 808732577 234655996 908650526 360623821 606866995 149224573 426366241 337489274 634264406 620424380 662008085 811130545 143926619 563516920 307134418 371203592 362449579 406157570 750947859 80288264 997436188 83305055 930478838 996255480 883156443 175640434 542248245 636628405 647207556 583230686 688457715 223121649 879898841 52568536 582788646 747075082 567107970 746588267 831007231 237071002 468629751 385535757 875742791 548155965 615092674 110154756 29914001 742770177 219997861 463554255 405927176 792993082 979071221 501748309 255359994 414730269 464750887 513580724 612696050 197457706 288835140 170604259 656565153 415013530 439124262 234750549 61274645 433215086 992491288 716293088 359698131 117619080 575429030 130643890 568824892 791477194 244750642 776521845 998575041 423185665 668737554 253587011 808908336 739065471 785409232 315022086 568587452 45256236 33235504 355399761 200702529 398941187 786272351 762180496 209400320 104094280 902127257 883931569 212961765 839083412 303430841 882035284 562438517 623579813 474912714 914265551 47633415 923515328 373381657 324257404 444853006 228635640 554262495 580983839 452816093 67101622 970470622 957084431 425447795 949456174 87792184 892486078 581905600 146435779 980260906 852950068 396264057 66087725 733774999 561209040 698252698 716875723 869192161 236970778 759783002 170686865 261689609 308126255 159647832 562318737 307280174 406602459 664061829 552108574 657032069 587470694 28569939 805880905 62977016 370146716 202562518 415325730 337339204 432435112 196931919 726181304 29024989 226388569 599955110 389993372 432478317 787124170 927040723 184284394 74238702 614297908 8518255 115562673 205554538 920142252 733999484 287333916 385440690 24409192 336004325 82151806 293858501 881822330 847071690 630208361 984135573 306939164 646276934 556001412 819009518 622167523 247521917 637068317 406117556 925610653 866602561 911482865 779209186 739671859 839732922 146080345 791962871 722350792 440613958 90304812 570230650 59689976 91891721 310256337 63487557 804234151 81647598 235353453 250406542 763846544 974700068 759101330 938534205 809535624 991668298 359078995 76129325 206319443 583748341 580783340 945477106 192344728 368457925 446334472 850195084 780710836 217777478 828017490 518113351 462362204 478988189 323056482 784072645 64359421 341082080 69636821 10956108 73415298 323441172 337288785 325710729 883139399 474371009 26873761 596995605 375977960 861196786 705732462 985599797 511670119 131967330 198007020 53680344 897287929 811898716 250003306 102010364 480488974 123026640 490079280 920237852 671127646 506011053 357078095 236971824 892694674 106830141 176406627 529617482 914113257 447234190 4026951 396196548 631100753 599189554 116982570 997078246 597636932 131788602 281374816 6920856 550344196 139380047 625847765 840871800 464427903 568665163 94110700 580990032 191453534 990984474 905638595 728184192 11948123 566012990 95255495 990360643 401910982 363934117 835331455 965846161 254396619 268480500 880905067 745139289 523693040 411277110 909212564 869959172 971209443 421043254 398623809 630696282 973007993 465212458 649907494 939680657 172611548 342921695 344887556 22897930 187623062 116648478 706082290 955691265 452316858 634690079 910953971 513196674 356725887 870500113 679999458 115044361 746981809 458567059 761866252 147920635 90666654 528749930 128587680 686647979 370445479 659061190 722001733 793995478 787361262 168444517 961309876 438091833 809071302 642506132 733725107 252014244 695750011 852290680 78157369 450641899 731628259 863781158 202886311 296026906 474441404 52968680 57072643 827238908 796656299 208621028 512119920 221061952 925343954 124603508 361076802 572429981 737829562 455059072 766901194 638246248 606567034 910938402 589182920 773211319 185284137 302816669 765004604 751888873 541936091 690989319 726638556 752172623 561815317 634309667 473970362 720348262 412426472 975689102 130329885 159322350 659551558 347998092 169786006 594435859 966857127 906508468 494289732 858546165 494263866 719262950 353568632 210005740 326431900 125513290 712536251 157627411 95007333 361707332 703924719 375778578 246335886 5383481 698774054 199501206 822133368 872397283 640867985 973058095 303890075 56236514 794939425 708274663 229948281 376718151 203968319 26152130 304670933 194288092 695751909 604101393 268740487 797316841 657214545 621482359 605272811 22321960 790438102 953439522 700797629 967175974 842953988 752924422 668105839 78510393 838620825 694240841 814116235 367249485 683553530 696473163 598315736 535005817 702100061 192607888 530426493 164208915 748489734 653954997 507103080 891772374 338545856 674577314 847171705 283288884 163811485 411501471 260579748 450748592 337971593 706477986 702162313 406152751 822565083 203287122 357405902 690082870 693971942 21767460 866425647 243656007 46002977 758621356 301775340 311996833 240361500 813642253 773596644 111563737 776021136 717736685 650421893 429330215 769490497 953064407 650934079 331430980 79971877 954756333 593611768 714281426 844740903 861925218 979470176 450921052 820552942 291206330 826343796 833964411 729849266 612715077 233534435 966017277 466240016 733094599 984630715 24724222 546912724 363870072 948180061 371467102 394533454 251190715 398131602 831966202 963564571 666543796 975135188 84025892 96961886 682040000 930773242 784947098 938647179 26083884 496835543 290554528 989641646 697516941 765247018 391736020 419713714 346786165 196141853 385241610 372171860 13221185 531561260 430546168 388909701 812436269 116993123 373843678 238117906 877274490 804511734 269083443 186322548 244115477 321854625 665346217 292147904 768790 635298484 189951117 85813247 359743043 740590723 406703519 382801056 466912238 852892262 836921441 280723841 499883275 129883461 508609700 394673287 938763228 736970773 767439068 572727917 100180596 290650623 872496533 152354230 8307558 447199268 708971127 664755581 70809173 331433483 851090582 199135932 161204001 689095569 359848182 407851046 195659539 486765679 84071860 713377583 580600173 983876269 791741515 963309456 670610802 182227629 352712278 304028781 953901727 754208102 679579882 160277720 478897154 140778247 917634622 852413667 15809234 215132261 174211822 293780831 547384011 699854879 201713393 83496504 79052387 774337542 322937869 245360822 433733261 92178887 50320310 49840213 44791212 510043621 727089055 84341823 705566060 661800289 831704421 661469518 461700332 473880965 710295429 806207346 684588907 705836115 370993726 688510839 224049473 141173530 876570686 552429247 907161076 414875810 327808462 881011320 76354800 725815452 813309738 982412079 454863838 678528963 819536939 889355045 125625898 768962318 365660327 588161773 453782430 777644804 941264826 217902410 483552842 353408788 550945378 754335513 953408696 297010386 199718099 591932243 578261747 116161110 527644878 167421150 619503793 269999100 817954023 584958846 674807050 988907403 363054194 580379294 186628111 156065164 896874044 155785821 770040224 694367625 819354305 892212416 432705775 932895529 228736314 625073400 272025720 69546902 485103626 120144726 453461752 359835686 769810627 97135487 443327339 446956950 246222009 184129855 451802750 645523049 6518692 974968558 197189275 270199260 630497798 571573473 321034877 563367039 705982818 563171886 874571836 485430191 612183588 873144906 315774483 417671946 754243208 487919183 100327472 683520854 854349092 447295162 531326513 750829814 630450840 721658396 955433291 694182387 144532199 347090298 866580026 169764897 982652515 184293214 749031288 886200317 384494433 633409246 786179237 769038658 492093302 833478451 682971678 455928657 754970276 938046921 28672640 888699867 639075871 685830751 617527770 889871825 978911871 707322604 959889841 629945255 248790532 412659742 634097928 669490893 883879440 811956927 181648120 568004096 62498719 314903682 220927472 932589029 695846434 613785889 413719795 906697504 991825390 728661416 278966285 487040230 297404318 522842829 654057501 851734604 314339237 897374498 749918514 856940027 423800475 275180906 899483820 847433257 798412374 80508291 984907804 4971825 139913646 990590921 739959123 580941640 18702079 654391973 903775309 735488074 91382536 807619188 45061796 630336038 35005653 784589021 903852110 505020467 116162864 992040881 865663071 3532862 668081923 402889015 179320093 401677526 563047583 713055161 952124801 811444863 805789610 858323755 132431918 45348886 880959214 100349493 338741349 936531705 417736783 246509363 237515732 548155974 784538076 811702874 177482655 944057239 583178566 767569259 74848773 69031205 994850484 917645185 558432511 475973342 27408284 289280005 716261401 321088510 61319834 427345701 287750688 197201195 556255609 654344006 327585602 118874810 870709278 532236354 882337583 686492944 266196256 214394022 661231561 663728108 517101431 779539883 187713485 867051176 544307846 580204267 154163878 471844573 658290189 346837419 600300737 633969273 979719269 483672040 973509609 989733461 537029680 351343392 822698169 61811358 459451642 111277565 199234613 198691335 419641016 224833544 988445841 862833377 485402786 860618623 786784773 169359183 122216281 705079020 516596496 23063209 409301634 375835980 464440700 554720488 212445628 19835593 379781161 5566268 361223054 201551859 725844416 444526837 3959987 983880406 73529840 375439376 770674791 960653172 591310802 429678065 534609071 546119456 296230333 197766540 721974004 205269398 937571855 542493166 943703916 501606356 244310070 991582347 513239364 30424568 20241191 850700536 511887544 690311375 205340589 201193253 238046805 410820955 549428785 237294940 787208389 392743963 165000791 137931652 604076116 974757426 55604841 996264016 703685144 852705513 899879898 887308138 783408299 225594125 832098104 375610818 456487025 711321135 78262073 60995725 204730677 315410971 938233897 860781505 103025453 266771368 692149953 423085901 999441402 944722136 540951272 691559795 867890363 909879115 555849297 227221306 656643696 881826294 691516323 573115968 35912853 478116898 371568240 535265713 557159758 435548396 268135599 435646329 867602756 732143402 916918603 315419314 468345405 424544374 138472250 411281915 684276360 833164789 743153114 370983954 190247638 684998101 349521277 503814318 816366946 717822635 461603195 965089326 217644365 873217095 897991241 221906333 699905535 634103754 330536868 524993487 59658432 156471377 563441395 349272039 82757732 210700531 736734440 536160166 42955417 884369324 652673003 116560949 628956587 615733099 969238289 326782010 383589992 971913133 392942938 933329661 384116574 864900732 780512581 57539129 537765701 149060016 168987550 547632061 451360125 720594732 141459544 488531849 88471957 69759820 881883770 276627837 667164444 828542782 590451220 760050709 371449657 648528484 621354331 654383772 353979717 5764940 980274004 482310206 286359873 939696085 811734191 681842254 293695284 132403936 42946050 325334947 338414130 810233323 959095363 358212291 416055952 335507227 490586894 252545105 573722124 569693570 521500886 560344228 289258726 282082725 158932892 667467291 787812917 947405862 96504874 964363785 914876973 206635729 642503975 849715435 807448232 604476543 302016675 518242978 264536057 218927990 688027819 501730051 499114621 89678412 817942159 219040778 195433144 248249636 543400286 733135026 996821604 8426569 120125038 739889290 703061081 337793192 595602891 567679851 235204694 912897869 936717237 351372042 795582394 356346135 622932065 698091799 88955398 212339759 150455718 672129020 82708288 441527627 659639223 299538548 547319136 728167558 360982754 184304243 825546063 491035258 465229128 583096800 214236627 550429759 381711974 313152833 361578821 984820060 51556063 820069285 444229129 555344937 833746057 748762116 546853513 563463053 864865410 803720491 570985156 934940103 881585483 959884143 112801408 330505533 14720030 312613451 902919417 255777969 484200173 733680757 652634755 741411506 813933764 496791424 303621915 766013713 674174733 326145512 244235899 614720779 52370752 27360297 83903196 664133113 421915503 362095492 520431052 692680181 803094333 217197674 300191904 523989963 189921358 887643899 590007345 265590079 7015263 756774731 835416235 87275301 237632482 375027341 613272405 443888264 625440120 35671636 122256119 490742229 982085295 473344176 156485304 535918555 2020554 71622653 654291074 338322807 617686081 405133393 682686681 115335318 877960487 669977266 978732062 377849064 897050705 257282113 7845362 33825334 920985079 385115002 591407185 378015923 124473426 443266451 979125965 559042945 11745830 948259588 980783307 772805047 391073211 234999948 991458315 323700358 261650247 768872638 397688901 635653139 972097065 444500528 303426300 499864081 534076416 267948374 167066815 164229237 958977376 126605967 115147536 921820548 249222301 577893702 874300518 958540434 729554034 399587360 870040575 966426370 35264784 34263816 685590004 893132492 492665834 835804725 9545322 229837291 529198581 325110716 854738411 339114178 919777001 645642751 184553311 402308301 731371149 67361193 403889382 818157305 720320083 251284549 277655943 131514291 433613222 828682858 412374134 232116831 580103517 353760547 801927032 539720995 561648522 573249571 706388162 158230746 85504790 590559598 317125127 850566888 328894167 26386078 895127809 277452571 324025230 194866280 880373983 399722740 5952460 1671168 692474759 529452700 663681088 580799348 362810098 542758684 899598623 645270183 453286783 57462189 375439223 677238127 235146123 241284665 483208744 803946306 818455867 473412462 160739710 320882641 222037584 602257704 201266642 244918682 898941427 806970785 174269949 13087196 158310076 450149271 741403023 937597649 18269157 84886335 699047501 426862976 284243570 299907865 58264453 298053962 225208890 449288977 662070248 847069231 905206886 825176335 917009984 38152171 34506406 962399582 685580244 290913130 452698149 311239918 389214217 496299333 206914909 616384536 482766455 898804577 18055587 881388165 9518918 421844856 139926982 40851557 747201874 51803092 450290536 513358053 367643869 106002688 575107723 813467207 152224115 131111504 926771093 152412775 207615019 796125781 474456670 768968697 544129554 270606774 269649312 4767291 623597441 436342465 373823007 862978501 856527136 277949994 845489513 599657255 671963146 380146537 697089212 260828281 530278352 184040234 961197621 536810940 907697364 398038984 745948624 724565168 264676324 797555607 749939673 468934096 470284669 169663387 802702923 77726083 613655904 349819619 774295841 100074673 959251566 141727302 682890378 671937147 332443897 462351551 961431853 716016840 111954794 966707483 925025811 693119636 680776947 972127950 987580154 664543036 312150881 931075278 338050931 157990162 202366133 505400565 609365787 48758708 480194877 107233452 49426816 102190906 696703267 52162651 427962816 849667302 164148624 802401577 355683938 641628673 596634634 11773119 987049814 987790332 902838479 70003245 405868326 268342560 15776665 287367918 493689759 725339755 879576991 773752928 65082138 732376129 380702684 862484374 673036119 979768868 19223044 941104384 168054625 695447399 446191175 449199624 865281448 769934669 378117512 780701579 259463062 493635093 993905667 877110867 410212247 290143440 780833462 366628678 352644484 733085795 780482208 891574735 504681398 268301239 832016353 23252662 589096207 939747210 791438199 520374438 559898771 584728948 893001229 803641240 39794611 218637179 816037999 699504681 684140636 697032189 259673401 541634682 764201058 835792356 605625313 968621306 860629101 640955546 164461654 534757937 489188640 803208320 227807782 512489039 216620543 140320080 77494915 647165207 440387685 417370426 547966543 610799731 55410546 469961203 851838584 717808557 245381757 65138839 925988693 195324440 532279849 290539218 200859930 965279128 85861840 689050104 583831567 411624938 596880688 368967688 854843236 383106260 611891463 398260746 227114626 36431242 217787127 460916785 220364831 304858451 794034887 79491076 707526767 645579040 40383879 573324794 267895737 929203063 246427465 224364899 168297138 881484044 523898040 28241733 426303627 391040885 436260522 622450840 163293052 44646816 995981323 740468472 636805810 194422558 886433331 878603533 559722667 104941358 618000875 43939204 449949896 508273674 359349105 777551566 664407615 694889176 815166057 143924652 506146888 994678852 717201430 546734314 528849186 221675778 129032306 481467843 445873482 42781949 77928392 583687035 253868490 396798409 797804822 395718838 162303309 666329552 551563692 863621542 734533013 382249381 457839624 846153876 551458786 440849413 74112202 44630476 34773938 328125963 741629338 51941046 327126539 251700070 649433516 594511986 685020863 449407659 711965679 936385999 14862385 176294702 317638298 321474608 597351185 410082760 843783503 276358044 44040506 316583322 250568453 494316448 656414121 644124670 41515393 447259820 337619117 653966443 591245780 797433960 232943189 784687797 657690328 857160494 448328185 315189775 867223490 87812460 149160348 323968036 301776171 842530764 793653989 18910359 933079652 112420897 441724288 357400659 229567162 253783324 954533339 347789400 241171892 382458667 23717599 969320400 280010044 318230167 520390698 34743031 533957424 801007597 134184081 289830443 626215188 500685382 981294265 979898815 718624 139834118 341210801 45851480 348308738 291377274 875086953 330110381 895548328 639019101 841073401 830993230 805781129 502608993 441225664 274463858 609951518 150193933 854482609 138114906 103843621 252475436 801253764 434009042 337712065 612680526 877413205 776746463 257853948 759667884 185328105 690744973 789660457 827148263 311113682 351888121 580404475 327018014 74468521 681571934 615797034 227466775 844471652 905087655 459469575 499174143 266909475 927023180 122705317 939958751 629862653 924235344 303679575 358185684 199766367 2865501 359289675 653481466 367372812 384246125 265871708 14519226 284184365 299298270 151718190 581804226 525636263 48551772 450337539 550760375 917010967 506178597 223611792 376510646 977825225 805834337 537740565 93031683 243902360 430673470 7275415 960641654 359053282 60675791 146948299 847930610 973035424 49116810 614258231 184514717 347052057 300600044 375934989 423957153 117718336 955957314 250380664 637145535 931234676 144120890 887921464 287959114 979910616 847544723 941199383 56752862 337030913 707555641 543486103 899465016 989987312 277197526 310630377 622771781 834023028 150641590 166111032 973658376 592859776 220562027 359893289 567472901 420058437 379498504 916428867 164342262 672624551 868377102 715609609 743183814 227168732 16478065 507747087 454098890 306903881 812899023 781823522 736760238 656482433 333384808 745475599 740946512 602379164 57598525 87043883 888440878 173053922 763994015 567010630 962056450 377198386 803940581 94386276 39096179 687007265 106595962 819682370 352278562 796874039 43468967 971085810 538452888 779926824 399021321 777847705 65464216 232233020 119795107 514900546 377767890 985900813 461429850 227874756 549158281 406912795 652032486 141797657 706019724 836521329 235287053 868615215 569585091 876626232 28656820 209327420 551179059 409425301 482174691 497305536 215547972 618555340 199435453 713274691 367760536 792422500 178181177 370973979 678415922 750124807 597547924 240902492 147412607 358890100 402835803 492542864 211536614 17609138 927439646 821313092 498338829 722583489 296353611 669074270 395568245 960164809 15020894 943132700 168629816 566589985 830284125 1901596 128470333 684948736 488503549 687509825 112812113 559818651 60965767 429649636 507870579 733246453 950196170 883583949 601865554 363924178 467572310 698792974 360703920 502533615 831029990 433008738 470752230 254861108 723077400 986777243 320952662 861232803 870035957 810152357 302981379 248381406 688098530 821145123 345687943 626233992 476391184 842735801 541795133 408273790 714547666 947169318 131483213 656599931 318723791 951050122 251181231 284669594 509426438 126364382 223141898 214222530 73901429 959454323 179180866 832441015 479866998 628270371 329137598 178341722 250312426 713241077 784928410 373894178 869955826 823293069 672260044 924837176 322474398 648107684 814392575 366021008 182317893 823541923 826913334 252259605 41740824 317268176 554264765 867912455 455377339 938429242 863458616 295511463 446146373 767693524 116745449 351487561 573368196 136109325 510535578 310663404 307635595 586008504 125528944 259184659 66938805 995884936 325486323 145394878 605449176 700948247 99325474 344626280 971480658 296456940 275422552 213914352 828539056 952511812 220029230 26332505 49125737 655263068 83353466 5395329 943260932 634415673 110205553 134859518 77332673 43590664 117493746 769630484 848441599 678699107 547132586 674430556 744016115 668753104 994938248 27274471 770813319 291063219 202339361 808084521 719252820 171856178 345085194 598684004 312441807 684821233 264716147 89248202 308372941 752536044 282403664 27669234 618569760 690079070 881688307 56429086 773736696 896351777 503699442 306889430 815755391 583784743 654626358 418960593 639880610 111163059 307495723 947195474 2037677 25118338 606166356 546780149 452102466 547307356 295409453 303475547 153866543 385561493 755660653 539113820 881453773 607863700 766340671 661884012 182129994 226068443 302951539 34232976 348148503 178420045 500199840 879699962 539684783 535512114 296043071 599042700 171675315 899214924 436791992 879626068 888012555 165111711 989683118 863038295 524421781 773574490 889529819 835584865 699767238 37257855 510279675 122951923 690288397 398981041 99191669 907695978 78802639 905487621 114847633 786769565 240610012 929794119 335675915 830225189 173978634 219841223 416447940 509793643 598857456 915659612 704283375 520949754 626696536 34101419 14387738 897370304 820837642 945289968 368256562 449835954 191091227 601728207 112137249 950084137 395487224 499257778 176353587 275225266 295269639 4827973 884986400 488857800 423899336 659942664 642832929 259189633 890751835 361163501 32999531 335317578 66460999 349611970 931246510 807750160 804746024 366840681 13346595 769849627 940003690 216321114 991263896 842813627 347357367 239664556 614642387 108935244 842117632 351431463 457958266 644733739 287763238 656390002 312622028 19036612 570537047 806248995 736411542 412368144 355981025 897207416 25542485 479336711 419119290 537866140 240441415 196883567 843087944 828029202 425587396 771477929 243475716 484628640 532694064 855777629 910952565 563600782 281651067 914730368 362752027 745867553 530033824 372132804 537787597 980919920 276762983 916157282 314158792 543014077 842013805 980862237 965881579 666930317 948264553 749447279 271884784 43792689 905363740 519937944 79043726 910434318 655952600 748262139 293420865 296179277 276219435 568779746 689008957 561399347 726543546 400843654 44273478 496693390 142821143 172655643 269112407 541258670 920474243 99092106 785602668 274235486 502219053 922464090 251532713 883746015 156262454 919379815 226408904 343187392 811144680 234007129 986230528 710164444 853862749 177000511 149056783 389854576 821194163 329842908 854971381 353564132 679468416 713785825 924946444 681644028 471986795 586280674 747744313 825444896 871014684 480895633 99374190 185318672 587535243 30014593 456301287 293449976 71538706 59139921 931533754 780974275 977088529 196551116 417006331 765750402 16963180 125956802 785387447 85872169 868133333 431429117 747186107 698817549 909333870 749749640 445164003 793558988 888975494 372079790 941264601 464609840 280302400 427677492 592099613 146718102 859623901 702932146 175923141 18796695 169984285 942286761 312300255 933935075 538010273 429589817 877952866 844060551 158627725 414060070 687505974 549589599 325388618 177598352 578210317 670917847 234755263 32496321 617196397 425099572 154095681 792076633 923214499 857239362 160760470 110832929 770009269 35650016 989383919 73958293 816838732 915485286 964150531 630153781 704956098 435164451 610506419 731258054 774193327 436089745 637878272 787817685 876847801 128445782 418628879 892896861 773326307 363561975 483423011 111811594 545197800 220673296 639853111 273435887 659809553 992464927 647549958 581743742 905027654 565107556 81952053 745170523 157468332 460477952 985895186 294560683 225691623 393273525 902282962 503237968 303160528 798019121 270036582 789494861 580588183 937200534 511443293 600779758 566698697 81720247 652954729 191244850 48449163 742013603 798282657 557336693 328276830 625612079 55676776 976741189 39938712 950074323 919360066 534870120 149580282 523102373 880696619 294093077 110517732 170744549 245167721 687243928 574955613 852601663 953384179 377852958 910130013 674933194 797820999 263549135 279243304 852032579 550157671 194575135 404191174 662555421 739049079 236148173 486214368 303496962 761596514 450650711 216634050 338421797 725047132 710534676 870907697 256501031 899260958 297666813 141439353 717135684 2157933 761655497 625075543 687000954 913649115 55395951 385014836 767052365 934368511 499306416 69575430 25771118 277259493 941828094 741846555 327210650 647707391 29462486 766491320 265168366 305329374 940338231 736782286 540183349 11067848 106805898 540644350 243217279 833450102 582490660 881597094 818875736 741050850 526242599 888529578 383973087 893708999 127599984 84755695 836772687 718701898 988490650 609703037 215708866 642113296 843785697 845838284 858349121 445995932 822588185 956125532 863173966 881895151 406999034 491011868 838106388 125558428 978562571 180129536 101025143 507245718 852067023 661662055 518156175 406153499 292888190 469216093 466090498 927720561 769578503 999805463 168583135 285561472 776307860 686686801 639169652 460190055 474322388 961765765 108647149 259379752 830598544 713717792 332668040 646575873 82531924 89048000 749219928 645682878 124103115 91783009 931113405 90847666 39963880 247788913 744406105 654747116 123338865 325843823 229648270 774112870 964949734 968267050 446545167 440526938 453137276 607378749 676928083 133519573 759654336 739736054 318328618 444122390 930211804 624759489 474258252 739674836 805999269 600771146 621431139 10757117 474719994 347520200 934824920 307870928 652904788 361731713 961394296 529201050 445259576 843247286 366378312 946176762 57923594 484208959 471079795 677482218 815913916 88904069 257039804 99824265 922601519 855324862 194963155 761694778 82583861 179542949 408138105 202103439 747968901 977740476 339707404 464991941 69808471 992568037 730364884 469495381 34210667 103785522 984371003 781654198 848673670 84074469 402307322 359730203 130327095 815374837 35882123 219095766 772851168 955613466 132178504 973402380 921229380 244309553 956028473 152360998 551389665 449725045 608623994 46301070 643899325 707514766 913237523 333068491 931143250 420947200 283763388 202722556 878648312 308960632 747789534 2567712 512783367 837061522 721082343 963161195 458033403 928424576 187864034 480299186 871403881 378902991 32725015 276265184 17846423 418657546 127060198 26272510 746612456 924399246 34598222 436264382 552408326 489676715 107601494 890735747 260822533 551159638 445892139 283485492 944812517 621481160 504784298 706606710 196389166 930575281 252398998 696696168 465710577 823803868 854888961 300906618 462448541 938335008 309660678 548221257 174856388 381899734 418394615 732671645 79079974 267184271 55275688 12836183 179116739 446775232 816271085 626497104 934260881 919897159 835911688 310357950 183895650 667742508 880145242 528138636 238661987 35898525 418555693 532232530 779595983 550791653 289816779 398158961 387378300 60138397 328220858 65186458 95759568 242874217 716651994 557421529 308171978 234901270 745847106 733766473 940396099 184328411 215203546 176982268 928299622 950142560 993903843 932989827 30501603 276594960 642994004 200118692 737565139 722516139 312884384 661274529 189276996 528874358 774207949 105118276 757879100 156299470 389530155 953645207 348331447 286170586 486334013 496106795 315742500 674999631 988161885 813262315 321366982 998328755 432360227 48769379 925255177 968866866 924732437 858117585 924590576 635697303 674383010 191444963 106969466 579987684 435010917 4280564 152015050 124494284 819100282 534362620 980827868 137667218 847042126 155068255 283153628 290886109 457085554 99147159 803400822 987309472 603202823 680692886 218157951 129884990 846503902 263198123 938716604 60560865 705035164 36412951 323646214 942829796 135854600 140326466 116216872 727484398 873308781 822824939 403705201 438307145 192215608 221587894 876985505 636250027 239681052 888594029 332919223 710455510 860638813 817384372 5778265 290951643 891157699 775589401 604873107 98143926 452725914 38192633 987220141 457180516 374750191 808165994 167735708 356373804 622558950 523672943 840678861 981064772 898209322 561004212 858138678 353456893 866143682 83546365 707281929 347944942 203328131 786206593 511110930 286239609 918239684 614044563 432450666 424609398 609208816 816921901 348332645 648932972 842690290 233540843 174269821 446575150 788713404 203673193 671254153 80189298 521935139 232280695 971417248 552973088 206112859 133998853 584950939 521572413 70240760 236282957 319122850 411271514 885613549 260531291 368733324 868612614 459319512 704035626 252173020 821148445 232514182 307125391 210054426 753744266 693475717 619205112 543815154 587295653 980869285 954902260 882673711 200209200 644389236 311492073 907007705 173464203 718118385 716721874 16564460 674184512 92103464 369561927 16085186 684102818 595187823 777267835 71407695 592413700 653300673 170880763 404787553 436279760 356197574 746462373 950265109 539296204 229894518 855478301 97995903 407854246 873995993 616036928 44913167 501233158 701642732 548326122 288252451 740534701 76158144 77541991 505560124 819902996 634497105 234524554 456976165 908781594 536452456 982088006 245742300 694213615 247320044 965980377 305890687 266458708 252905530 318998971 438055398 627046661 451006061 107170111 603839688 21995298 207333569 207112002 165969194 29479578 683986158 290128003 10846386 791717134 793111160 6760911 827217078 806808957 477930987 889041302 775728830 485014679 527047011 322625956 867513592 616872002 192836197 671741120 277859655 796610252 5010257 526458610 903542043 476011784 289230997 119197438 669300965 188750498 194362988 362895074 32880491 171873168 429862808 43054903 73726669 841917223 293846146 326620835 240741855 525649130 3341659 571389021 298218716 449111058 210444504 280437305 156049098 665307129 984067977 847881772 74076585 569715425 169567059 620938953 670270797 636010229 910494928 894131993 339132682 850280911 302662189 883684868 201113970 334826323 83252021 321719887 218375067 901358269 491335365 452899097 256915026 447115870 865157582 986437394 439150731 422897852 603940841 354176171 271541963 163457410 558984197 337077288 408132109 965192511 572147030 509598698 704061907 589356537 298753413 292997387 683028673 249182179 761532820 573742145 725573468 415548654 360220472 839565609 507719041 466205747 322982624 491597395 648927297 844822258 928382310 258853311 125816145 842665631 927713815 405044298 184403924 131757427 924861158 854936706 873675972 130300901 548013892 485917114 274834156 140516398 290023282 743120146 22403879 292387964 839080472 547508629 424323563 95128606 761438074 688884036 503468455 310354977 441161644 988491047 369313180 968360747 226280339 337558725 362175392 172157912 56211123 945510772 819885535 496492066 11069197 768594190 295360739 571415732 595278990 483819098 124865970 112515522 260973505 971286572 699631121 371162817 894687382 606470224 420254925 764546710 310412986 318175653 426284549 932518804 373708535 197536518 137117468 582283606 252601742 335502516 84187084 777897847 734896505 239786701 744851480 427699087 36965310 548756920 121616909 906085708 659562997 487714509 401289681 967555312 148141451 7067507 88050892 178905437 629962068 673466684 772415715 344728670 310808859 71207583 624419436 790300562 256498189 248387208 700215224 618849806 961831998 305777952 129475195 441692246 343131840 962413931 354160217 45668295 601944901 623672807 326579168 259377079 345807060 392642426 402080163 492037250 352106099 855340 588338189 960480348 108268913 378242356 211779244 381690723 842924217 733790801 970543821 940577331 769362814 424989568 45186239 227494817 660395072 72870213 127658295 173083578 46577138 134507919 534941565 102854226 811275637 508129961 839967752 993342129 777708150 295186467 715470562 868795440 427683973 600683108 162649284 840659336 959057032 833162959 74541920 173040895 185671475 446260930 370345242 355655415 421667392 800118792 788317597 538852816 602782683 302906651 430132642 31354081 563228112 912235587 868102558 637138670 905307283 494884918 139684421 789606306 179035309 876655383 77141678 126256991 587686059 116786285 774340904 320975170 773272040 862113577 449520495 307559884 685768712 799471891 772666462 455727307 890935685 643153184 819501514 648446059 501485571 683908935 254847490 984117103 154156743 808223596 412091055 778899056 563139418 743842103 638082139 531874231 703176067 446980612 146111164 709099087 762102469 898463017 944159139 751165427 368225374 882617469 364911376 128626583 238599139 472431809 936599931 841542291 385258662 513939162 588568680 597969289 192773599 161298950 893087150 949393761 34793107 704707108 21078128 61847172 639160116 903349285 179848588 803025924 498651286 436642137 526147008 471674269 572955928 24458586 776369765 623160182 975916800 182679969 100160749 762496394 153738281 772247218 507706140 696985841 597067772 318248156 214732548 512824073 419603172 982254484 285717657 814059344 328502192 470223089 203585835 770120174 983687139 441049250 826814783 619813865 231145772 129967555 175206448 388482671 645402072 411194229 395447867 882045258 896037225 935895914 913634648 41895307 242748967 989063186 448038112 181582950 107525253 773486887 261542596 195296233 614186825 387914023 867740157 878718501 908313812 369171376 781658910 250662484 208110894 429202675 566249291 457322736 921746100 669175936 224429729 570542072 451176846 378397485 686806761 703887455 392227425 472169107 270877704 19190475 117609955 763315179 37902637 171707345 132765771 398726200 25983284 663846686 795839199 232961125 547390212 243283825 789188972 635517318 619262187 922295401 43044219 808708225 158105223 133483424 93381667 408484237 401674026 997582800 23735611 569356168 174457302 825312377 897638171 276037698 783315262 678137918 417453226 863615165 978640930 586563533 840892609 640611295 862309527 151562715 362792076 725603197 57893127 596312998 369126883 877805079 195021935 703240376 558538499 841628445 396918700 885067682 955645306 333286535 319646912 45491321 955350336 409873327 583876362 139692846 41036426 830372951 918679702 639883372 674518476 869291319 437627847 456705876 689236772 374140241 734859464 986441999 294934698 711810900 777587574 558674626 54649189 188419489 153968541 255977309 691015566 337264615 517741462 131000881 551154769 748832666 997201624 930759804 564655250 769569755 53521031 470945655 478520106 964765105 233836026 763040859 749682450 711884763 642024786 872837989 658620798 537196077 422563123 890103215 726450209 698834258 628200023 679998846 330010753 21814170 370746835 314977704 474756558 74169095 199757705 337891098 417924666 146717521 866502201 11446088 94766802 594750288 276910689 680517586 579242664 23838799 216045866 247229431 854020868 14321954 595105154 660505350 610939992 461479583 768847575 7489181 473731074 319653676 517616708 327487255 886569964 567421365 647510013 263495934 60569329 796301364 83504573 301365328 77113070 10051352 503932118 15356742 264137603 276400225 906075535 122758729 988308181 317121160 168290715 780054037 862627715 897928550 555636835 939283559 672266697 100441642 868971334 573040101 656095361 175347971 458309447 285965840 239133941 366253017 728525114 474221812 25129911 847287717 653901178 207610969 701040076 546364634 353286060 901509658 320121800 271841529 630188778 778773164 972396339 705053215 116320304 999141274 973039751 489623396 334183544 418246408 934112601 65103884 315129882 130222765 267287250 519057566 760859910 739514320 153248923 791182677 132710201 212776743 817918468 149342363 445129997 802519192 454025810 589916939 832690841 781384761 519828819 923895105 686237899 812985664 953158653 797328045 737897351 500213716 345885925 617328509 105670814 826792526 213739511 403537714 264966891 194911271 51986399 895561762 30446952 353658882 451703000 413678565 578724579 39966035 345625397 197799120 197307181 505354717 679352611 561148076 609862066 68696406 543918916 438750349 530415191 211702316 941147597 431751301 379409887 394165877 946283197 163358285 208697813 632718551 961322949 334886941 186112515 676034187 307004891 946402953 386554172 454235611 635085548 16160872 901478596 711027713 746828529 87242847 79767647 308496756 660168358 801037277 350516180 727899426 436001156 618432223 378713083 203027712 978762127 532247051 804399629 65050176 132334739 207913462 595962875 79971239 233826837 40965270 816427185 285840536 954520725 408339277 543315602 119627878 385299353 456034354 70962019 459995324 675419157 674736321 436458512 193333882 304866343 489082218 842358494 424330327 931717266 366896972 720091051 8113183 344302469 322428390 313560178 677877086 360594769 630728268 889403283 900319784 810625357 361548528 144352294 96049902 189359692 10978155 900312685 574445791 208809503 571643281 11324803 856493919 273923204 534324178 57258720 213204642 268381117 595326726 479965729 415661095 814291144 804832686 489412497 74889531 414486835 906747619 510510329 750450217 554235255 11500169 547244625 525561024 272095754 606864908 347028960 681687875 857858678 757393706 728546230 716945331 91897489 467481371 144472583 572382834 802583470 601673379 608023654 584344052 708897986 760074555 649398549 785835509 561362971 412678575 479613103 159186600 472681430 270271630 155439425 757789044 173243912 565076604 331329030 708227522 706802590 352974786 241004027 397810494 74671958 20801260 412817339 345462072 580090334 138085473 158363889 252079932 429295689 795024016 764414022 557378125 839614339 324895724 825971479 165616429 487115800 509671394 625549275 326209339 50557698 113250955 129596255 117130216 617266687 522553144 466606346 554989016 276006787 723804895 773972853 879641138 838390304 921731022 854446135 959319209 537775306 96658862 168938596 510538388 508806322 571170697 523192700 182492906 647089363 563672209 715564272 284669216 151555265 657363307 558836620 23308545 542117707 71005857 865327282 346409709 259044739 103718384 543762459 599544706 839688376 52431759 843146487 497675629 172821082 510855342 927807441 603679968 684705258 604819331 678437609 371331507 714219057 14655378 253468395 869431099 914464673 115465420 487933081 131931758 395239623 841753862 999568549 56260195 766928861 717120197 837425531 331240303 339172573 893669855 903574430 465891927 950211630 450268761 152936389 821638000 760229061 327075801 305672775 90379301 370023710 645282267 972680121 992000201 430141267 923702217 723423118 997731964 844961895 754297365 826611840 931714735 653904388 674088669 108865913 350905182 884907960 548846889 349387367 327600829 579930422 191433262 351522649 364521382 421867436 148416509 30862997 37387728 283083746 300462414 488813229 172564215 999481865 83672881 674566407 683769545 359056850 590405510 798695342 881471989 795680504 494669082 739175396 747506971 758474664 891293383 395853058 141337042 377578618 669552272 464964809 70258143 627805507 885441804 14019553 913568803 744284903 154079100 201459877 495818621 472981777 523290655 105797549 810580658 123310505 758897002 935096785 94397930 227103181 153866631 497142646 181755918 438600686 952617351 589208170 351385999 73543013 606483078 508979202 813695534 176784629 505750086 889648780 517884433 162204212 190460071 822093288 51456692 760831013 555262979 61763162 59611522 13453467 797174611 724160664 84099202 582399368 721217091 222416308 926378581 289413287 487071686 392608289 484049087 625478595 59978146 824455245 668668677 496208375 989601742 667943058 991016808 697793365 714529154 976397215 398754815 999780384 817928651 654134533 693331630 652316324 135623742 931037314 323555497 511919742 844099607 281475904 662806496 959712839 560185592 942620130 414016145 804875653 325617358 510107033 736069165 392500331 976504547 985973442 126311144 895792119 587862524 570386135 921782629 557692072 135698455 835456106 948943307 626439345 444279598 229419212 354116242 608670878 621300460 65084553 848491662 112055881 19937563 500334337 254800625 391798184 440428537 573603249 314580953 705120990 559594759 414138788 399595506 998801275 643721248 280379837 479060833 628097801 499972405 822776489 241611220 175541907 193403259 734169894 373443713 514149491 512258488 175187950 573861011 899090911 216255782 103453331 61315985 650605900 945097521 881919227 443245688 654731305 798553640 127732368 345187174 341872057 406476341 744244593 650833005 475944877 762340206 647723340 655433328 592765978 635948528 847712274 113482007 417662519 453117975 493955944 718522959 210670849 508032959 856667639 269419428 524059804 387315130 455335298 868438474 788604751 562178533 163439342 596285083 222378515 617622364 836365197 889316320 799259746 564761694 958961226 453348421 709508096 42042329 631375660 112670997 929300671 758205126 662304691 61637959 101184611 206697696 292834425 715758789 177241302 31432270 218088418 426602948 164739375 569041822 999497188 644187276 787101863 781692952 429846040 345133782 272028200 97669353 961137414 103890126 642749427 137718720 985410533 677385876 800039496 894165015 148450742 644234648 12908170 509234050 900471440 60610374 652704782 97592157 72991045 908704842 683770048 311796203 163013974 585339409 55943642 41331993 835431766 535852092 349366242 14849799 814936770 454414010 544155631 610741183 271592063 452466905 826244158 505285988 476100450 25959983 741228367 650819964 405781957 139937669 206020959 93471786 380338168 996302529 633472236 600701922 440164791 420116239 3727679 759092442 914835274 758764548 105192256 312228353 301738694 390213580 364933419 77914065 956288494 73144579 245678387 402046867 879317052 110419469 200172727 566921552 990583772 416495850 525108633 390960991 465289844 71274925 557135632 88758561 751516871 281986423 688187449 499591939 336195621 835771540 869341399 150663040 676433931 236935623 756891182 130852654 932215202 188743289 335390649 945125907 115731846 312293971 491510406 112406148 824277912 632363736 500792602 182480966 225058737 918614272 568455926 865308258 750750557 358100207 383469204 875952737 335508949 798763873 13985327 787555866 665609898 337735805 899525116 203816739 623792155 423619627 819633504 562456920 911720833 746089531 523714185 879756502 345741970 172562139 196678693 799668246 277770686 810312840 793920169 450156192 779846329 765791472 840779100 19648609 631297828 686329562 162972306 871851270 3950 119296376 828932615 738951857 467419357 752756806 391319565 673622090 481693696 109019648 259245488 643172378 510526376 188503597 551956447 966122131 638594236 27811499 447142542 942925522 75224794 588025826 61781670 862593546 592649231 341894108 266203615 346799236 928319363 407139786 129224864 353595543 818053687 130795198 427241329 135049553 679040646 540208697 314272026 841869194 341170955 854292033 284257962 857781349 994902935 54622412 620489748 202264397 88685479 967041379 72620792 584100819 46707327 796471028 540572587 938337359 994892227 737739493 534820435 207983352 800088913 163644505 968292329 168194405 725633521 543602101 842498968 715711235 10929499 269799713 286474291 275426946 925295162 433047868 667846680 648160890 550737471 35579840 456120283 835754664 337920459 892179320 903508559 141848452 607254117 286837776 951444553 264114198 942478960 189895473 491159155 871797770 176317317 57783216 815736147 35136667 158443594 704542671 814295450 728886269 855909859 466427994 888850867 180721974 700402742 520536864 356615245 564818799 554282284 890626689 314260230 854797197 165021878 563494205 226873850 75245818 336600432 549326329 193909556 658011811 470433995 21943968 919787628 477906200 21718116 579706529 690408865 802181442 575443909 358213044 307261408 157214240 104632865 161840852 584541998 419795845 121679921 512860367 918034017 320103115 170795790 602422099 305928837 614513698 367129248 586117520 144347556 834399360 534882632 588610131 284863749 643292393 397367075 159566569 93092967 320485122 752150287 272050933 400904051 203204546 127849912 707386836 995673212 596603983 488386268 774672846 351632624 366906328 984721035 349170889 420327151 479000644 173402217 38384762 945951313 330094619 986560483 666782571 861320742 992325955 876210235 241680023 851709441 739059459 800583561 48934296 999581329 990113309 517161977 787732189 986810352 241798114 992987270 764818950 568819046 74836341 987590535 396572274 921381010 211137297 79309282 951998144 325860274 62271978 237881357 280117924 479113186 663094505 799665710 109184166 214974767 479240325 513908428 440937733 505442103 717720330 520966596 553109708 434629563 382219351 306522781 403667650 178264055 140269326 999296231 338917912 375272604 706887522 437253847 729744736 938704936 752238788 849813473 687971163 229306696 491446945 86687828 505263476 498924190 677449463 379322347 47972063 301271246 651538596 581057767 86578424 660277323 81820502 839091868 815983748 49632577 88281185 437395728 609734423 159666097 283432367 466320232 844787439 673554759 522267261 80806791 693691396 663932223 565407510 212641520 365427999 562600850 744696512 849145286 994720612 349878637 289828587 950326332 701982247 677260190 313127273 252637456 802025222 655191958 635516242 256427664 120710820 945704269 430842723 754456427 491805579 667175218 574452862 678435368 306500191 854375469 482805903 322762699 620194521 168596539 918366974 321623945 609293138 820213050 214349288 885251976 967824347 11208138 620104483 112407313 715630776 364935993 583657018 909262130 562883919 778222025 862129770 794656068 808380237 679311060 77567963 987864943 809192251 450706271 102923479 390205279 471221641 33789115 754489760 135536657 116096648 308692997 336508977 464208776 491570375 278942664 879948939 541673307 526612996 383042912 155388102 194661699 659626753 710748991 70274002 716709980 197057948 714600969 499902850 134480246 510235010 981191673 531249097 385717026 197368034 436418386 45485036 976381894 334675274 78815781 531904283 145427563 185428168 591687688 73418401 131269542 590875911 524004246 396195792 800044369 897109768 830288904 265312016 28632098 961445422 348455036 935060378 845731029 742430162 319256298 11447592 69114105 194165044 348424312 473126712 467184085 274524399 169179875 943976359 299042814 385033458 497271141 368932110 583594485 276670162 511146206 747039487 716318275 604789415 347342704 451661537 403215851 176713493 485492156 386664042 65531835 210150015 375620811 750071866 507725715 775844178 416810753 500773166 737866175 212301384 952842312 225435776 149538089 600242573 832755397 927058898 775609176 682709412 773007742 369501447 285190948 938893726 604496563 23857292 187433843 803153552 502003725 718299632 533682693 695559737 183434017 603297271 177371632 397844184 125574508 489199888 488748261 636036572 78105076 687346236 334397071 10076994 408954730 856676377 562692420 99301779 46188904 176860468 879552203 24331187 960519382 96187644 279572657 821731417 114264735 688340137 638315353 198096347 796015488 866638598 492293628 43643575 836288699 462474729 479077390 651379440 717626001 969165045 737181745 140030955 740683385 113020995 397109810 993741339 613049524 299079417 18598321 234816582 573539715 690397303 585938445 915114501 645648432 790701106 133192546 856573210 455650247 834484448 220525557 499422744 438544841 770365862 693055403 627518843 802821840 485337836 873379116 415291378 314771109 255548565 777495357 191606097 227760171 857563870 680313985 721146822 13690800 579889126 658291053 880286384 135010839 336061075 819898194 80532345 811251286 702393340 36063104 529476845 44509434 780985455 986860537 723758017 85647344 71116346 664156311 263077310 968503258 589424174 604098108 86945025 448433 178915440 803067756 368368068 108065669 658782114 896775450 41150698 804197429 569352904 270947892 704057597 471682103 756709297 852077695 946306262 320140556 550113373 963132302 675392106 531317676 621031140 523025316 26593036 624285864 753821842 13915980 247766700 211442688 295507579 423274569 889923152 136258211 628759613 733508938 848780936 413708696 828206572 123106448 596126692 173598830 114344901 303138155 807777096 181435749 527776648 795070346 864216509 760637182 962007592 204482328 693920886 221285610 57608617 367615674 310553346 767916021 195503339 63649698 585828814 705059189 780457549 826732419 920871935 681106452 375056475 256503279 294648851 323232140 8507617 76384687 621657589 210881522 854286031 64893389 343739205 118286690 680778382 743543000 343159325 854728666 919652483 359601673 127910991 931433442 546343150 306118778 905416185 471628884 837053157 764447506 54512793 5704355 756573373 13045724 920267759 630434579 792556880 868218337 839581291 125952176 24110687 968539022 118702663 634461071 637599661 400896197 433491584 493883905 499874976 887723407 680999917 144607681 694631567 739501886 219068061 586986253 873353656 845494333 798316333 113113435 636350276 406254810 656971103 616147694 489260312 221792223 326109163 316886358 479779196 658937317 402874036 996742989 223674312 799585093 965019482 203243731 347872268 304702995 992385592 620047222 745872250 835411383 935720452 268669758 967864378 324684745 766000396 595845919 158333714 216241199 108051253 565581500 364552279 386515248 390388695 275038755 514610961 635200876 422487322 43123462 725829025 922766408 218158431 97399610 146995791 550399992 900610178 944197990 121776253 197023281 696601362 17059399 684520390 240323765 79318091 879920162 206113650 189021584 261626679 451326255 265568557 700963971 262178712 936810304 976986260 935521123 687915104 445079126 504123286 465054515 361322910 382922204 823050155 40900179 617963184 838550882 645414915 451183683 47771685 381231868 310368688 821757939 582152036 299820853 705765948 773597863 757270492 331375631 178831671 778062002 786563070 84723173 617839271 520450871 749435243 199585726 43390109 36758471 894261685 731404798 372982146 679204704 454810584 887213811 138357880 885939912 485335509 159420334 666711286 685263103 708725535 86219496 28455796 278492766 891829851 651544571 204322049 834939889 724675793 291799283 416115211 118064384 881085401 202095222 845446183 607056748 662268719 799890644 537672894 588188891 67139030 622137666 458326820 358732430 827190178 692515979 882159823 997325754 907141518 641873456 293584133 178645819 174389540 235658952 705865562 579294130 201070039 504521819 901709984 707843124 29095901 863321701 720535500 206252829 577965810 193390530 526052276 96930561 602240803 617691254 175843642 651970768 844507335 926555253 946293953 837167490 28558242 97557115 660488141 708782971 428572105 294516782 396708451 846876342 197551196 861275567 536097924 308064051 517597625 85031061 714663583 720629729 19863362 177414693 993942329 120126371 680728947 648583341 790799591 890649053 675870239 280584796 730015874 280046374 874002760 624425792 590461667 446046668 683283469 34501329 559101528 880575215 805648502 768396331 841167835 255535018 6011418 85850237 811917281 111924013 136243480 578917915 914084577 454446084 321330381 188574339 77563330 715891559 16581090 483366163 726581581 342075517 546606133 802433763 388067945 413756143 416123689 480218625 738799811 90609340 263366692 897403553 882005060 910490873 245853378 516095542 809566295 393582749 502802875 233934974 282593412 351626237 806222074 721055235 956594763 704480076 81630224 578376476 223362909 212218051 786031272 142238687 476062713 355026054 924509020 890342922 612786112 792955260 744198212 891624849 121615371 694125315 619133529 789062002 409755603 855427910 116279719 24924344 79431278 613687506 177828885 659498546 28757005 171214856 151674867 766288925 250300738 901691333 952272866 680724007 428591056 724074912 89075155 150029146 109463105 295259502 537640965 926455421 31360161 727518493 452217551 158277740 707682494 232234725 475420479 606067731 34789147 167643434 859394263 337861874 434736756 828741439 379959359 507971717 181203916 364652374 557867985 498954749 579034577 867254640 493610027 502049211 164473867 728424482 258494946 453879910 479282764 402962282 718350744 257735539 45747412 735405078 699390556 747148127 316138797 622633818 328066813 663556944 409975914 943006037 399620523 109410041 62131780 505407853 930463544 585245548 100580986 460069140 302334218 160863734 925630406 266714397 530701792 623587073 130971153 891807908 469688843 787907035 312283683 238487644 740688873 878017900 541118652 237430132 66538762 24927922 169749397 640430515 179016060 152877886 158427050 626789643 586387085 463627292 507425885 602572364 694397848 795074534 249450459 348420502 138166564 373561623 20330970 798950979 937007787 717184805 440269922 506423591 252922019 808399132 984636949 963492599 521959125 695596826 249805009 373008045 176492179 709337754 482204974 203754608 567558100 406865389 664210703 71773688 360977576 3745463 750419416 896928651 784621950 14158648 958636721 492220150 588283559 175697390 338804213 46253124 619205800 168907063 294270957 415812335 670577275 152378897 882660568 128203696 720693153 272609236 323152978 978816080 435908797 84919311 712425307 105695320 788388731 315288406 955023782 265889695 870095363 475382040 90728322 994303559 77044245 65453460 526406945 382881808 474967537 669800655 23889784 259436175 645548313 236811646 789743302 774943354 294406119 740962112 918565955 148915532 172577207 118000968 537271636 512413580 117620757 723703146 117952659 983689803 714984853 433426759 44607099 49005713 31693356 250217918 335146057 228193400 28574048 286141402 584871004 741488 885071666 617740974 656681174 139137018 99796984 671627217 811493843 855514918 853298531 880097956 301989095 148583044 851044003 907421504 35347522 961796590 904642510 372717101 729261041 680108912 29956798 126371971 579701778 660013469 324518235 669847669 118385232 197454664 65491331 717210929 134823785 886451412 671651443 804160094 514500791 886781721 451053806 89853481 909164950 824415 420782772 584618494 762913910 572445649 313577306 835121006 910588236 544721789 132673193 793769951 342190863 620776642 514986430 867719709 266002787 838042977 630463651 774216348 682743147 41810518 78310008 467280729 14209313 56567306 401689566 8977339 962564738 365123199 326489313 270326694 285100644 909312208 485428040 842604172 252444830 126338910 566084426 596426166 261643341 502202329 137236143 962882939 859199405 804181233 710529338 410682025 78018709 794851562 38193199 733643695 385592447 710067110 265213174 294327840 609341146 640825400 184855163 987535086 963953689 562952099 444438334 234397918 231253317 997126589 613473330 809760228 367624610 186887765 876711392 47037112 926298939 710771658 646541656 917644405 175098693 977807479 70134932 230183804 887486182 112981596 602303850 737602426 581650716 554514227 282862128 555905062 850291804 167951548 887109398 73481306 72209481 409046692 461971645 321770918 609550805 330465158 138203365 485764741 109019438 281164623 134641441 818492240 20741128 259403670 4678375 282323433 907228219 503034655 524532379 872805674 893677442 864136539 878985693 570788989 815973566 79664679 916925624 957676901 581955445 265705590 655476836 519349898 916850832 175819485 533220143 154605834 648060689 422677767 164557432 273501860 631828715 86709346 955316557 938077721 716120767 444929478 577037774 2969840 520710431 445074227 575636013 18331160 907586935 527007700 189719849 246827167 614191509 357828914 909520871 892652378 723870791 250033559 865565168 538174429 112763286 510993654 455848965 132287065 66966403 527602707 96218385 190644602 38654283 202136301 412881619 884306397 775722355 66824128 299857308 842090628 664986176 266692408 420309955 515560750 479161092 120093304 203475349 589386625 259583805 99882193 630883646 186238653 725878195 661281769 51516839 810067466 914974300 851126632 390454235 493729308 349854697 995650232 991401902 551192746 837076287 316170889 341273848 503682123 243761145 99552868 640284536 952804150 385565324 352717730 591530999 721162227 287651271 80932322 256571021 540355132 809842519 322637420 33172356 96957792 548875588 608993253 884728212 532174083 824511547 424174621 505037623 529889378 422687087 881537961 932924480 14626097 534112120 186825079 570428217 415661416 598015884 988531560 124728376 755424622 648378667 145109949 359045745 831641235 193013681 131702808 725201516 607974249 121107642 734048974 417578939 281108956 719399328 434004070 272970362 614945496 883154226 693323665 261065536 631780014 755585950 671240192 285383128 923116217 55538115 229703104 69728923 575574847 233357953 257382300 526443193 846328693 88674824 155625234 891592662 837453188 519991682 106670433 906284804 406857105 833899094 992918491 248255023 524512813 1487688 935536037 386921824 986997746 905357686 727682171 754396223 799554358 201266793 933082908 763573161 249371110 5972710 754230789 617560536 747264599 129100073 728173041 789250630 526291910 89560714 380250492 72852259 114347156 76029663 563644231 557754326 157957957 782980549 155092804 98520289 678341327 848912393 247969597 768956538 623857029 583012827 846621478 502886080 838161743 983339629 682554801 22407984 805183463 114333187 917748350 645601540 744010715 17559977 660334301 550032047 997770826 288578034 468952689 168697067 792881759 639625197 769730605 944534066 201777245 267292773 404689139 525731426 758039478 149248390 827235683 475186902 797835924 449741187 90030391 522003062 154607546 974467921 600709950 158903778 916258788 361417664 610739360 672575368 486179365 444352206 13823542 942181029 35501001 303328015 637095128 358608078 507413148 409652767 313563893 820106811 105591930 81684243 375988113 770238580 210297110 987878958 642870889 237830685 573827161 101639173 140687472 319205126 737560809 833497165 746228555 8956257 396539389 87091688 850049328 685377915 925903325 49494529 681771111 706870700 632122197 459158929 718382430 23723568 813858556 466963448 159904745 193054967 222992023 856730595 949503162 400857247 212620548 302559431 850622988 879495191 449843457 716371650 55378161 599740706 768270406 248181857 915568081 470015921 664837599 151912002 666564327 333000070 120120025 144584033 409872079 413846508 357445556 617280609 805507110 406902352 532703953 664969936 884846651 343117656 276648329 771994560 394191446 938201310 341641023 802532015 389977184 543116566 45134198 580280166 51804695 353377609 457781979 88842521 81194524 487457376 650853884 998752740 310431406 927972078 625878844 765418182 165463280 566444973 297781120 342755473 430928170 982616457 973480645 339907840 772704027 56801797 713836021 771221533 195740416 851036873 7623181 292830303 471171018 712155512 122314973 964338053 588403051 631962660 122480413 289158788 939634641 874195243 84438634 692221618 827420982 510543719 369458658 373380328 137302878 691857334 931158800 579882667 105337284 629226695 654176477 507967864 951883566 792259998 254742111 83933208 920857031 349538745 521795986 690859805 329684021 637232263 227952610 362901065 477964690 42447569 424107571 790119567 230089901 808045556 570810276 36929742 618188900 658829571 592624244 11851205 949352683 725997368 10122942 818541153 987267092 855922485 273981632 448977868 960331804 567699664 936019949 338234792 809989688 487876169 160215687 313580215 595612098 672935171 494801332 878864253 131920164 694150141 274048975 330503316 827171954 549728183 471885144 567667228 153235940 800939420 569008094 669375542 409154238 844629716 240117267 265344860 533411559 966287725 811543195 275124986 930632574 319679530 401713259 35737596 148634625 175569677 265762663 397933052 470765085 699063266 959000383 388918218 42156045 87726414 803821813 338514955 45859097 158548757 880546516 391833322 916917286 163457610 175965890 365084837 313214044 180563462 982094446 836200830 415409716 332510977 439557262 286500553 326419076 914815452 540772787 698969226 287136494 303643002 779176625 64177325 841285306 253143910 836596372 298256636 267123941 444395966 242454179 543923215 15888637 521531494 35441393 147512066 853191645 164482799 726474096 866718129 239912781 814906643 910878750 32173440 795683059 33528237 878757289 656162417 149249935 886226251 420008916 379521991 799445701 670653669 204743825 440130631 345385343 266902256 704833542 306320043 22757445 635955071 123471963 482973539 29687932 777934766 213377856 218974991 176373842 567430812 364791301 9972561 147831187 138318520 174079859 584024339 238599117 545292872 855993704 778877462 495204840 291051991 584837419 797164149 968722613 967744563 517961355 868458691 186114906 278819829 2363805 348959967 718448847 41483733 971515897 724101353 550396601 265957223 262393325 300130700 513191678 242714162 879984794 280921296 230856629 704297005 966866035 765012592 759499371 493359851 185494375 15399643 19591723 635517604 838022356 336876760 856100327 576728238 347732225 848851670 883571324 738568242 818890658 886475526 670104842 222915384 671687189 686186932 807515977 898910347 200442387 321928869 252988542 12270016 470969358 236007275 110630370 923239500 980591357 592922703 277983363 231754320 227298669 187469000 395189098 319316748 136804414 573528178 618276087 984756535 438481824 202700207 681929535 513367079 904300784 189944799 248158764 581330527 505325201 645845374 657857114 965451356 163704556 932865782 447637559 132752229 225645071 447306083 975510615 480544888 174178332 608158200 993772809 699198537 353454212 825202743 311006234 105213739 262561176 96905733 949882836 376253525 225831924 547658365 494760967 281124792 112812732 78596166 799857640 697585002 941104482 173474457 333094880 286630061 219938701 456845972 211315635 787585296 552449218 436313321 951579560 763175318 843694939 117302182 160954190 598012417 541877470 945841771 507273068 203128639 440785758 919378204 679243398 337751718 442305905 883612406 719540575 17423755 266163836 797977746 871603851 655928682 772378055 21357660 200066107 727372131 726581718 466016198 155029004 391059501 968477770 140174159 581276170 36298268 50379199 598832929 352685385 754518920 53607766 748175030 857268452 298175969 966939021 279739868 503196745 477520136 157989992 306798736 585707480 249264409 280947727 529538643 989863049 49593942 32929896 88317865 238127014 362455872 246853326 855822836 31927603 598056664 277719888 112505389 132623160 240003063 855702130 2434774 377654257 131877723 278538115 481916883 429448499 634550579 862432597 901005591 643964531 111301771 863814823 105006783 603722004 994769815 759583032 650965561 473886144 86782680 887949987 468872473 607017308 903940583 803310186 77819284 79669974 346811869 581476015 506576941 743607753 556769689 420519015 523261183 686899447 618653846 197396801 980032370 494997878 728642881 363524647 121577561 171995692 496672912 734660657 923693532 872155053 915678907 841251925 908142800 672021135 291162062 93489758 740937187 622998209 434429670 139500725 169406069 678731580 356867044 86736027 751759744 610773407 594663045 768760592 684187932 104596794 772197995 265516520 555727325 385748398 932392632 980374464 429509356 517596672 932985480 254505288 749121061 456473190 753788817 982820755 900016015 229459323 323618396 813716106 1357993 408388665 667975895 548369858 740243957 314154575 439625206 816150301 515498339 539717739 4723532 65532139 114596948 898544145 934535568 852184035 608049480 597789998 489458274 159546422 909304430 440795438 496470440 233215496 116883941 68834847 114564954 635252777 838582699 874899498 809119769 177902825 592320353 898808659 253999657 550248071 533991854 432446305 548687627 304649921 366412117 65694727 132283349 267534217 168061891 719553642 175391779 144013013 516543746 391965176 145747512 294645066 140349076 250246075 136974223 357478365 147816660 344855121 307968479 843548920 866427357 960351167 402767937 586268064 116330548 917432420 462601164 233823884 365044498 27259229 882650020 816551951 267451982 126026874 642466088 736764563 522779841 63515767 759087995 753928994 606763264 848414226 61368888 80354919 132527945 36934233 379962464 708940168 636393635 858626219 534231121 529622027 984573917 677251526 566026435 471675543 77904645 236052905 998779073 615235973 865271575 562680874 791840473 203014781 198082591 550889251 71735539 342172127 620684891 826143696 970088052 755672953 25889490 877416109 173280318 789962074 515832477 71496356 861033629 592646793 551633725 719266302 694832506 776152637 103688963 218131575 637175122 837500205 184027915 340233035 461282721 373086178 835756468 51571713 800049590 381406822 641847528 471399928 981853126 531138197 954722100 968816436 655471486 854341581 331148417 863289370 248964767 319828170 641038854 786636537 814769410 350531953 24223083 384360591 230984377 291070213 227211574 579183684 886514266 812616556 775557003 98458595 984519377 739596701 41151171 552411433 114315410 447466150 899986444 153749043 121064455 776911581 179838414 890374452 619171910 785586696 915926245 290679127 108346116 717948219 174456089 517836078 646387671 314806066 203687606 107962850 687543894 943300263 980743161 241095948 900820455 424423761 189685433 223234607 485400955 299860153 996426762 834409857 637137482 126819341 743118741 254271903 57326583 583787801 368340370 51926740 793138830 19673194 215518214 427100318 29131544 391539484 130342905 218473722 662099693 732163244 359604652 162649817 657730104 725799455 946952544 780812522 23817435 494624148 653697912 899209606 790500941 148547117 204916447 527371611 414112114 713731844 117179835 176016137 670473250 792424610 393224032 324863967 370604635 531603141 137817046 842020770 46689915 513044846 402962327 377515774 335099261 50033210 208048252 796447272 153796105 985592170 52976607 461249932 127006829 507046232 736627080 589278113 697145356 702731124 18629202 397221990 528113829 227604897 863667786 387824324 222101268 107878740 728491018 141149646 221133920 227295503 480998895 616040398 750672713 469043633 385700116 458023615 772566584 149600140 953292828 632791024 701338754 596723108 668584632 604580832 368636749 424982911 875942712 432442844 379714898 307994276 58716694 746331161 927255082 523900814 758385795 328437235 458644697 909435554 992022094 473405776 692056642 748426355 515961834 792917382 17906616 644022488 254625497 642538600 307803233 121396978 366247197 333386102 861649752 971648532 149141477 425796628 235707917 444911153 790321431 225942895 159815148 216639474 41015314 465707860 602508963 837655764 82802473 543025503 639657800 364256117 256336146 394668332 57468784 884805840 999507014 582929281 274165227 741779317 195931007 162811844 293515014 423585656 625434486 393183657 343500702 184704748 29800248 997522846 195790338 961503174 717008609 700899880 70826408 125715665 340467166 547999051 30230686 400065847 322941225 745803524 14699007 642049843 738901946 842385061 863874187 418972262 756353736 57955435 515814308 394035703 340018288 934073326 351895775 170910527 110262002 483209155 377694971 602705627 319110867 927517801 70953103 124836475 441741150 5140851 943379882 369360242 995423394 990940749 411510163 875083474 941758532 173155994 607175694 288730588 809106432 396104918 273741360 96960994 566239079 418294176 944679122 351943609 7802051 394248266 985077256 31105424 856825862 646368465 349417212 538380991 240510783 494628061 322981840 890030379 519629205 558355164 9300505 224311715 654895897 552150468 245707121 992511818 761955761 574641847 519425552 792036398 437386779 262600001 141200899 664054772 301782735 664976265 355181394 914251124 397317062 180556966 996599558 137263713 970422620 505532925 221716220 749546206 269571137 674537258 501979739 406670657 977428674 170715528 729557224 617631563 980792190 959371176 236679162 120431857 45615470 864922146 813268867 53263267 603367612 539882327 723416918 624654498 656665319 92048433 767661518 804612109 582464843 309076774 123450846 264574576 250382115 192583233 894019104 41033298 366857283 920137247 564400599 90619850 77809040 460014870 721005428 449010611 534570578 584583942 413041186 302431247 910022278 588593866 667199862 781678396 893532627 40865003 706612542 951998306 423716755 161820342 380288218 547307850 558459475 989717840 477375373 599561632 233374706 309207773 797587963 242888076 843436917 994888936 97722976 629973631 328467776 210431124 668033612 228531055 734089304 434239994 536036391 879906118 239966991 929335219 342529838 100156414 567793862 573986408 777828051 615662188 758023 977495381 239901232 612784666 846323214 520145090 596623918 182121147 229083176 863393788 352342472 308725948 150920840 749025951 890558839 732271474 213415159 989008561 739005020 724589777 740625769 781135295 631806973 880070578 70274937 185731380 77243971 290104097 662518260 969759574 52526363 74767953 508034886 863486305 231478404 773568525 783446011 499058829 602717116 414535838 635004552 979921491 523873795 781442387 409230931 665808920 777028242 29383044 461575200 238591844 898376477 831763121 780038221 865556239 300414498 420644966 51997843 236906176 826959721 985015689 205919838 167795591 604702510 638468695 864989222 959518696 789332011 72819952 204085633 488144900 924645219 45222738 494304237 18389579 610151560 207263641 229635214 371845708 926164353 370652192 755689186 877498997 516851967 296719084 501224693 722199678 848678635 849178389 721682241 485776699 270376311 676030175 125749083 544843764 684890071 815189605 20709781 638986306 57245601 58317883 585737710 18057892 879012113 411046493 758505937 22132903 290236829 562895174 660659782 798453116 256718128 770201056 397647383 238516376 277449050 522913764 53471003 690642372 904989657 783580155 366448459 856398302 941484332 101330800 233218602 913117683 300871667 672426015 497419072 918853571 752726765 873295759 386692421 826337368 757637462 368439732 446812225 840263225 853013936 392206898 721484589 984700244 296382871 127798523 803545935 965858523 181917746 397006616 804462399 993287866 183445260 472382912 283300045 193959766 796535329 974288264 50005601 94846925 453502255 814730858 632756019 825321430 159954888 56677510 78681439 208904691 907256489 749522708 396253324 947745511 47223101 650745164 847491967 830691210 254500003 209227327 598647124 150017065 449603942 215660744 360850357 420513051 917395725 954690756 419703487 224284122 807823439 177604086 528596337 698649481 55176818 979734826 331306209 94373982 505085133 746780033 662657747 458318673 585376048 458529202 141380741 191830886 225840059 858225865 467311279 1169935 687023479 123521646 890996420 670802816 210973136 126141531 275595774 908352584 872376246 211350847 164376449 352344626 165176637 40207034 565646262 622173526 989423653 868963029 363279125 302722875 345025002 716569157 734969491 260429593 417183270 147230616 510147378 668678905 24923403 163269239 835916618 627765299 92757333 653166516 946153354 2826767 919033197 607913336 166114223 405667964 787972634 179733690 251389826 826539072 586658197 592992298 729532528 504612895 284848456 991277505 116165907 5746245 987856644 702531243 742108088 583061244 121077315 556983934 139523957 622653673 731050470 606180165 756362638 591019537 664751858 90169131 147589421 836869043 333322616 880421485 484514962 469144266 394263431 452996051 66246305 543054157 995387594 531162153 551065158 23795427 304662084 39869790 258914235 702633504 666230713 594265743 332297463 458974066 284184869 847603281 858975626 54544119 440023528 39145523 754120853 802035735 889793499 349847356 986372690 287261961 343790613 851065469 908821892 902522962 711330386 68932766 611922702 90769043 466473063 730788724 376022386 842293737 324389252 733586051 724787569 794315779 132158266 655918891 92814673 783263453 543036744 930980413 294683317 245345806 781699447 330491725 248848539 97852188 481348348 600675475 428490744 760612794 117609890 322226581 822441350 3402753 179292593 571129377 535637710 101480617 447934782 649560085 275955632 470480232 155010880 6534430 571184868 381075118 507926861 158663692 727051163 680610072 777044431 600607878 981886635 352941938 943042142 384350934 983599121 719609500 890566867 145045319 847082974 142650261 394485943 138832493 839648373 431687790 638763692 945882324 294742493 722850672 38872827 765796851 743427014 575524139 209937350 859864682 521178513 708252585 430325231 960644937 905479365 61571359 524953017 875832281 593497457 756852152 65718417 241014924 871764442 326357562 532929550 429579951 532434681 741376980 367519588 645422673 44698661 833240425 739065240 867321139 985788856 170312582 791457847 359326947 850055206 137870366 429875907 731167114 505080072 396356417 400103127 659642813 722346744 797683064 202964086 906894660 675882204 369702415 394091681 142742448 307796377 110333057 406355895 488397263 446161508 178662080 254236826 308225541 624693999 245947669 854986362 436997399 182462008 29892953 710914487 328250305 957186511 562656426 490921294 565617315 99195447 428323871 808305451 3530513 549658196 259013199 306678199 479096997 467614932 5003449 803240085 220864203 445962746 153140774 991168076 582456476 185846386 886528603 99482936 553909531 151060990 823494057 713493571 119468931 688519805 724819274 748845858 85723237 717032334 152596105 657329513 487436905 148335431 638599657 172273171 905154750 183060890 721965140 640645691 946969511 604331620 222524423 327821439 122927217 855411963 49880486 579072075 495362949 895725197 823937556 218653065 491560249 487597986 509754492 249186129 633037197 178694116 33352020 213166456 37987165 398077737 613584475 801162189 614663359 147761762 367167701 172914350 36402825 986282937 961432060 334085319 933740945 570045082 852775218 607248185 190858564 977940055 310369345 111129234 433920509 919114545 880676015 59986983 359939749 176001058 399165108 219578900 51848182 929126991 740472662 913311202 35619574 123940543 757246322 117822467 907960966 560653724 295373958 689305048 91707823 181713825 696373808 150485785 773576827 656008499 345706396 891521558 772771728 614392462 28732344 766975653 828281683 234062566 467300207 178580768 917832332 325539579 972082395 777177098 412842904 999959257 535769815 651989789 212181884 676134385 733805204 367975387 967450399 345798172 152108605 828572960 806441302 28705672 629050435 201054678 430869937 164137545 854776296 357635598 637775693 535041557 196784360 365668713 982322860 828874129 9245421 857022372 135102144 366342603 83712544 811176101 447910835 948347493 585974532 215920913 953914568 161518951 965804050 186382860 967396603 415246577 104820455 717655387 156335068 680503157 829192343 551011754 621065991 141593003 536187595 468305377 402983962 324703236 927904710 849636412 652959679 903916667 773094389 675567543 282188715 262293007 778410356 99351391 938240954 236802028 759620642 468606815 901077041 356535920 545185284 353542339 89426209 42817128 833611616 595487206 984349465 938834296 943268590 385537660 821688109 53923501 266076319 772087647 436789367 214649453 784262272 158646507 549978391 482052228 183051727 379142926 596653087 160340546 908966950 273729452 294144548 927027603 615451374 960053497 919740988 527833682 756855111 161683990 61116746 186402150 253413403 581094700 225838776 404399878 396808751 640890410 100578974 880645919 773312697 814109523 57692110 273921496 951097537 11394174 178291774 962889867 777472411 848524839 155354006 95849150 424359165 166696586 989423724 19410298 863887409 979360792 560289138 754096428 520275714 350655017 251682168 45522284 834876109 4475441 805580947 899153688 548073706 186043280 274456131 692233512 713578375 108032120 9052719 830802156 164798162 74019165 362766525 875104729 911227476 464201732 769730196 302521539 402634884 329824261 904691836 869287702 254917732 262134089 655214177 498700647 875279011 505366770 875291864 907900877 631534252 511158445 55645211 992744515 836351228 114574261 45004065 505654264 832540527 525239093 487984115 426961511 78005555 746163107 877913403 686851718 312056295 161446510 238478041 113716771 827534372 466118235 131319475 83559216 472649731 259428234 577989237 821909692 110925447 428825595 370388896 779149986 640736509 732648425 493923118 729639837 30746535 250073026 138705644 657808411 874931116 876515428 474596432 437557110 848992184 598526392 746905853 27272644 647119495 884964074 110036760 109869378 96261165 920316266 13187331 404289538 457246417 548154918 480128235 727570134 381743444 651015627 182119316 896557149 224886386 956400606 276597943 549497988 536325269 683540495 695063459 694575207 465070923 127479051 72152335 850378386 232208084 911534473 294625319 299482800 429628324 701659405 127136979 775149177 652666309 756683784 938119193 917163190 581753430 317811430 537287755 793199845 27924822 835035538 306127184 283300214 908094489 340994815 127209784 977645775 838255621 107824457 706583238 2993919 893790412 904989532 215498386 236420425 614883550 985072825 415489599 859293374 29980790 821659053 305551441 12164273 640593195 93426267 773926294 444784527 949178531 842175414 153236556 909820598 888943357 322461613 850556109 948572496 54669644 76523967 163527921 474844241 874172489 524974050 567022557 887587924 556913912 428633528 447454266 888335965 388663223 580398531 504250837 415548560 86875941 101591049 560932638 115383675 137211770 241966881 500941205 909761277 480475296 145084228 721308885 722776957 235703710 672426699 502625688 488516497 275808999 318734739 980436823 470969298 135882602 599888359 663774183 323887772 406447507 793610614 866311826 201212001 665870562 243518866 164300286 219007338 352077107 822228712 607069884 546496990 862107160 740268756 336349976 100507564 717105962 411504492 837673813 349548339 247831248 780213043 721023696 800587401 420857731 250408331 926110240 811873221 127051893 55278928 947275115 208786169 2196224 899894224 53611765 583044183 463627404 20415802 535782599 537105432 123595836 860012453 953532150 616085653 925826847 985206517 757161417 285579217 934414727 301992817 213687848 529230467 306894044 414577905 622574572 732433612 898072875 52315713 611968290 366047935 482865217 499401405 301636400 786597759 451969667 699302011 288265609 156417565 156108226 540052250 281306229 679864082 63657021 599512706 878764935 478860906 48967808 987980282 725570113 528747977 615273761 168422313 244348583 972178393 685940315 957972021 4353323 111411427 568773969 239949254 792949121 965745091 702986570 539340038 333260168 176102102 96291502 351907312 374286857 551738349 754868338 590485631 916289291 885847167 895399370 84251272 932958559 999393065 368438364 716103407 294721955 593138275 657283136 814144057 76916267 98579509 834865739 904419987 390615878 878046411 120532056 806528480 868258729 474958650 210144384 764984229 64726752 859089254 890526576 752585294 176395472 819956497 909915492 608527202 973377373 914028582 899378308 79654407 581843448 854832763 541453881 629706111 508659096 971950258 679756711 34709074 168465508 405140216 578605866 934125638 64982418 393694322 62313402 834835633 222639028 821915516 696079584 208505159 652230868 490433719 591938852 9418164 300482459 970006935 854666618 540872937 585983738 464033873 337844914 372648848 888455547 640908936 685283128 884477269 407902351 862646967 337693381 418144673 457099144 177299012 102357566 371461164 65743382 383198479 104220115 412832876 341737984 851133236 195205806 179955144 770819629 849651323 824909148 81017931 647552395 902195419 35672589 559061883 567238494 77990651 362602027 625018854 898108604 751713061 682963809 479400755 339681168 39308892 30810306 98207597 460883993 858046487 583937575 990012514 170883886 817272494 122989360 185362921 329473933 255909278 595730078 474932056 405458995 802644116 266621635 523226396 737622200 738999878 940847993 375735296 62152009 48220419 449835137 498465320 762180853 157312132 138257266 381213119 400565078 142251178 786549207 438056218 540046748 872808937 590999867 481597518 283038382 207050604 333086739 436277701 415306173 21111973 347409149 208128374 612931703 367405069 325056365 280471571 827767171 560605896 16570935 946351040 37207703 666447148 368778574 392835443 497568981 560356994 652031634 912503526 335882416 187213507 265213112 267228537 502376810 935772025 316807923 687704689 833074925 509651194 810272927 284894917 117402378 83299103 491768268 37171878 128819143 202738408 655421071 114348112 625664812 328168129 949188210 395906754 403093718 450901952 565120298 867340859 741242630 762738213 333375609 63409950 489309561 239478296 976228592 418996905 272853052 86642665 91327078 635996365 536829080 491715727 110488148 237596300 606345131 6501596 210504843 415888322 449915437 953581370 516105340 874102052 498787945 590426001 705416909 509112452 285830363 846790895 514953764 847248293 626782781 36958247 910371221 456067380 618238733 577264223 224284131 219949245 724686440 770068308 608261704 75087004 931170872 700458412 18320795 348725727 900673108 912390706 328026122 210722584 118898605 45449745 355753123 496355251 652520491 797859091 829947725 682216552 424504766 698112567 712949585 608486261 569074558 826134723 371575474 873235828 247235218 444753578 975927366 32656397 675243282 265009331 964950347 223856173 284525138 560885432 944103507 807831113 501716517 341920930 690810561 244456538 823129972 516711711 874542577 2549265 756987484 274485851 828331558 280141658 293542457 944690038 657197636 433184746 416259493 879852784 595916610 749306195 113367851 585796941 100603306 790958672 762937148 260977322 464123791 494156484 192588269 27317444 749259054 210491422 924118470 50013411 716845042 719075964 198769606 752834522 597878802 382478915 954918745 896838590 6852047 381823418 53934203 277537297 277475665 982802292 299311681 265571951 272843165 209486961 811382766 642039696 281756536 682384029 305990686 238342256 486847010 687913821 663531642 484753503 577942082 593971629 584063961 643570855 520398824 775798931 163690401 953449643 437995655 519011884 178680303 807861961 31774487 610937331 730886258 497747102 950671624 146677235 819696031 14949909 149707288 876022641 138470313 468280232 503720483 35974092 907407636 489373700 89917669 559585935 604335328 264761974 591634558 342734461 46270866 218621198 205085427 852566671 386937343 630358916 756251507 376744226 519452110 684255318 472231291 11139212 925352114 713976904 701147623 529402900 576750621 603314941 559434304 931452630 443952609 744634868 249400004 644069886 114470353 911716851 875279089 246157011 985813368 584085488 439235144 151726360 261583665 298225259 373502153 46693312 162192295 421958719 5077503 781619337 535948029 492014858 82942879 301131750 949402815 477239217 902871599 716773356 442581761 388689908 549163185 515147293 697613454 354838803 579271653 128627339 199860816 320780902 460262241 257083416 736914369 258863492 108841503 202353559 387480130 757087325 190434247 350048719 334020678 210952246 269701155 592326699 334852894 858578815 423574088 409413903 5019158 836226393 661721849 714014180 761275015 231230729 819784550 990349678 609050425 617432084 787594585 496929453 253572426 7068785 686867004 608547385 808177045 295897533 667791701 169160863 693828468 232629115 22503307 408521179 162613826 320042901 600054057 680147874 204964628 730079155 171379575 14300311 749071102 561196867 349767001 140496275 588792120 242240095 383505276 513874343 372619741 112165776 281963434 650850350 322015076 727266194 971002997 562312130 824179067 249506081 331781224 931522812 898767483 251427060 519185596 144444710 340503814 441600355 645607010 678523330 383571165 306779678 44954791 980281667 916817685 517165431 841328135 76502377 369067935 963306020 602568976 687507397 5838438 506071696 370341758 667640250 482937855 599029606 289115394 679191119 115016623 790980631 942522362 544095777 37656146 530326822 734409848 284762883 13447424 529325183 944718765 174807587 834342690 456880984 105066419 581707825 109812996 902253983 512366549 592937077 667958011 817825564 214661122 942710775 444996999 467074126 190897466 136893087 496004998 453325023 832126264 526793161 849598431 911122708 542378689 593075905 225275110 253419488 735994003 95785534 765563878 852918571 327577836 324622126 894922352 570589541 323460355 237805038 790945021 104098484 901004811 271465989 488907110 181509307 259579092 226816076 769595493 760073758 840034074 20310254 90164634 380009039 938698849 425618599 261599269 333735941 861736856 389546950 27190651 328947677 422851380 96744149 707588752 9771820 432242106 652240084 432442259 906860630 723410697 198617447 664519284 462297594 522342098 859886837 25583653 487040706 155887037 1975267 527492590 829556289 557858446 293493309 278439502 759071419 30040584 527595341 636160158 970784874 278814022 619511845 580390930 640719472 170088670 49486186 866440534 526696566 902402964 704986754 125374146 734415925 636278124 795314428 71066337 971289069 388918463 995475425 660774169 713479464 616331556 811645903 653316909 89337148 694324234 21143569 943580048 625046371 276051663 833964963 483204342 205141920 589478800 359013384 446844033 150064159 63706409 335451433 485383306 991243730 457961176 599106642 538572453 906481492 281251803 583138018 13690928 276693441 470037683 499495599 700338783 461701213 590951062 516680878 594296719 972046494 377703920 785284886 343161910 238423165 17002930 509501690 337009624 518923078 483133901 753442973 248798954 50962614 332115359 274523709 18479469 667632044 840845209 972286760 637239688 869522526 237096241 288363762 512656078 437454835 817083083 455610972 621620688 846104074 954922027 212144805 894781647 212435667 746969837 87607020 756668900 30809709 390372896 691119354 296964276 418037117 78110292 311008027 97331038 193376967 771826433 799249690 107836236 756832814 915594198 484861469 218257001 648991680 729307456 682337910 920454033 9187752 398275528 17969355 848527782 248451108 885292815 314070111 919324974 959225801 508639845 431102459 324980032 631906928 173394463 815668288 338845125 338748082 630615 646324751 760893466 990804474 855112770 955886439 711875428 366629707 831395660 325869690 817622451 248036190 52891708 167754388 991564351 278464685 382617682 241971258 124629202 144159885 8693763 836686415 109105115 776646198 636433158 945125729 834313011 199917474 816341965 595725940 94929817 189302364 878518863 546300949 507901862 974948998 850081890 452061979 110041739 393750198 835047408 377042134 629358085 991762254 621108743 103921841 156196733 910010558 680675853 683879593 38490925 335931125 619320693 738223854 196671317 857127398 442013210 825202289 830194898 294232837 616635328 350523943 661410535 93385686 108106346 646437237 63316381 610680539 434762107 119309503 539214289 257773598 689331769 967165980 379198706 975239933 224813907 655180201 698041382 77635883 583576399 550510368 931352510 811079090 631017986 638051547 393388426 50855675 898335629 352546229 966273438 959779147 764989784 92509861 335118937 177756259 587092130 972077183 836847318 648685494 388392140 189731781 6195629 691483034 6008305 654837633 489480580 500107461 856896923 565148035 920211978 59183396 651542867 456575126 836272668 869907513 798018025 771585679 570970050 270209494 585881854 142273236 375600233 760789522 816176680 944337358 462042009 409001673 635989246 524915319 955093696 769717889 651824083 778021751 440077969 846464648 884906874 920272561 469162229 676375277 226977487 236847150 663736228 822167749 777715368 196853249 534037894 609915199 125018043 115717651 222193524 184213156 695190359 356809827 245713683 688706812 884719820 459261991 11746340 696037345 905113638 757214069 40130080 73764703 497637094 55327921 647114247 390510167 703370208 108621708 701640398 747861219 709153964 128779859 515222706 259867154 478942899 749738496 78524265 787330047 671164800 577893059 462726460 495056788 515603260 633282006 731796158 917464566 651633191 446299091 715674394 913649551 302694878 72377824 20702342 151217446 147897915 101778055 720458169 878156853 186761257 520362798 227736828 359107203 540964226 448616966 322688888 68186323 353702268 406820079 951848736 17606676 548000159 804509581 659050041 35282000 228170809 45875262 63160600 771050164 967813149 363773973 58367207 227207718 63765992 756808702 956917821 703248143 917331970 974583723 796148870 523296841 609624565 694778043 415072437 787486891 289827470 474801553 66724745 318990056 366668071 596725262 936055445 292699789 928883825 561643113 354177604 544782364 760869197 693288979 883560939 291327932 831192783 714322445 645673139 532889886 568186351 333956012 223920249 342246257 380182792 196619062 503495418 582207009 982811685 212184494 727756060 207286784 859363455 211965976 337982705 600475733 428764499 753382795 569967027 122325277 862255160 343010554 533223472 94797877 157027457 566841242 385924871 535710392 790533995 986321438 147251330 368078659 574157518 966946341 137215721 513947142 230927853 558783312 101190531 863706918 228135121 52305855 273220562 147021770 767696025 471435930 819000741 79188320 998595694 746281544 532419812 729548234 612816130 937298351 935292831 782840929 532004925 173838515 949846137 444947875 503656386 608437992 354871138 965314042 673844887 217521900 294568035 245667075 936349187 490816855 769525865 363471867 24989598 110859971 914299134 955580765 903865223 854652284 772980842 839645428 296534119 16458111 89283862 73908105 322517100 896548323 640202775 637246976 901600833 724755786 7934496 553949924 354658852 414351962 172053451 940502453 143446423 565804372 425177041 727635009 112110145 801378969 137292111 989194373 267559993 916150620 347775538 997007608 7788773 520716793 731540296 457108268 375591448 86805681 403065888 716105345 9820215 541295005 51329936 546937301 832881953 117071443 383765446 359482875 207957383 854176039 579469214 989312412 204633215 783556980 140698663 496884156 799879594 310112908 462890993 34153743 865505241 220951488 616396191 797455809 389166785 655941166 244979842 788622029 30391053 716980706 549700707 555363166 964175842 246573464 58138749 401796998 821173749 909476314 153019959 249833950 472558883 912873488 190263144 594539583 273011823 10872568 78482947 35123967 338611257 818372041 502366649 95720664 825617354 452204334 529867904 421187825 390211475 622626225 191405506 360307356 604815648 928546221 298079239 453633909 343217595 615825351 407104829 905617124 335727565 251651957 324272308 510702477 778819023 980993956 247960993 602404876 354717723 607406061 699424332 913621594 530143719 523858057 45051935 783056162 866502458 51067926 710560301 339301076 506734273 72747081 67161967 290520995 673344007 741787803 6177173 690880810 113836664 497545649 16370508 436145366 602355243 250836852 603868352 307561558 328877099 721882346 300699784 988530636 338670683 912204096 773512215 670577532 854082076 520704821 698313923 579171365 971973830 159069705 605448909 402814810 989627600 451564125 847359345 855270274 412856434 818896410 46072483 213316640 603631251 214445930 712633701 187350755 433386053 279079258 59789194 261079783 584581409 188064128 805949239 704342195 37025736 703403543 625867635 473066700 346656513 785601889 572354940 371732016 240658544 194024631 992174180 532428300 167847681 765246905 887309695 492208266 569225137 646744088 241281034 851054009 743874943 93014259 222363766 392425348 740065151 584708823 2070027 88401823 867287427 934402563 603556638 273313055 849061581 477709604 151530474 711387036 330894170 842911338 365105576 931607470 971297226 42937453 607350800 629842617 106148783 184604914 407017327 45324963 3112024 47539408 730219497 161353019 501431933 37254209 553685221 112463619 541013734 415542515 178906775 910032813 916883940 706330550 852727487 940862738 869425772 258324415 606216372 581927661 962917471 525936873 659415979 608649660 248173688 805904317 781151441 592447011 790400440 961031852 573925321 609946502 463180676 324112882 695681426 632930220 757650011 991780780 288297943 69015239 772910306 410758703 472149181 604615381 539887298 594362124 957792457 194218752 231023729 248004326 2340762 742634000 664267560 986798541 514123300 58791490 804003469 871228008 855416752 704258265 126158193 228095776 934418564 453345026 247072093 292068642 409395128 596994015 104160423 61120204 756519318 645650186 585395101 202953831 830610272 101964515 319609331 459428288 569123255 39421440 385550819 722088917 525837215 607031907 252277785 740459011 688049156 284494455 884813771 234616525 113889463 369463235 798445215 303952222 692716890 131857900 876543768 625819378 193644193 761337385 39210807 171682876 388510903 586879039 334138073 90715725 427921516 251226838 991001221 381691112 250857677 658937612 626147096 61019789 70222749 609499587 828563701 802071326 879962097 722734267 915408474 388280403 964609516 693824889 535239510 338016474 963511609 52895913 705231520 194835507 678048681 46389413 77247745 673505797 219275146 145157024 174946562 890952032 637478133 246002972 806704182 179765982 187421395 68463160 379782275 673761294 832354053 979330735 730066842 495085912 456895112 916642574 962261831 847332402 210985392 927452629 671227713 29983450 146719700 500733013 197318100 759705304 963648343 516452295 760414743 936923667 419257380 671166809 275729982 603337162 780416214 857232810 683403333 298731359 401978511 741243343 295559481 152349693 535724758 915274721 451596349 442120588 712204058 14921393 302912896 712163484 444065957 899602877 399930077 686543199 244563507 642977682 50498920 170772882 358847668 886957890 803827792 270345984 878561522 470220768 101516005 1868639 301189461 300804741 166192891 227542253 783708276 306837179 9006115 490059820 893320381 920768717 433493637 548425503 156161688 378986795 357645328 679897716 805536931 575958665 618240845 788353709 258216096 27870533 963476732 328565142 262840135 977039579 664934313 957949373 393908046 556380459 259180174 625211425 842418434 325048104 585271088 961091401 22310374 450303077 811599945 79054411 771534333 306292405 961444208 283578608 545524321 630555528 729697968 836468165 897075644 523159025 493146957 41802509 837303689 107251324 543462476 829186828 216562382 752388191 209257645 392957868 297185276 969595769 107353901 32686473 715628404 718113154 373972569 85199342 821125708 562719419 49323782 782064840 901773661 430290240 903411559 982883951 292711095 466490492 101236402 763743784 521818286 177318849 379704064 569156113 31458002 865826915 215746221 34282998 519325354 30031560 230629084 367059173 487633511 948428724 554340398 474983396 750374742 577752919 523783807 430785242 965170554 287442063 92309926 539075759 953920578 147042016 309872541 634551448 879934280 143437810 794189389 191173490 180789905 78158103 100048354 595117268 31670916 726499621 592353998 315495050 980286371 867643015 492497109 273259790 483988002 870789921 494316530 682654112 799162150 245414753 919982364 588378610 999899163 404570772 590941576 702925806 207526007 409784119 939356713 844364164 487543744 833132338 244608475 569533044 801479399 578074536 391757996 810185703 329872783 223652232 27194518 15787246 129810864 509610468 817592833 815430638 90608995 544298361 877970615 730192380 830222135 423613563 413337989 513473399 749389453 413922726 757132975 737239150 748854534 501234639 212518933 911784732 745257511 903587803 295363738 615799764 628582633 926356785 368960523 510772438 41539167 194582842 644649846 584145529 302170809 153981860 909678300 158653508 846594123 176447151 785297506 473869285 277424774 887259942 883877932 256898380 458324062 824894318 247546979 782636399 519059489 533243649 644488012 188029532 914538566 222652065 142808165 148359941 457883054 732207694 742245386 943138822 536867423 273261515 504972797 269174296 822149790 446907994 365124904 757248375 904778734 442016479 362350150 255265387 425236768 150980111 245677996 572807114 626168518 570784169 160847235 971078774 16589339 175470777 593199228 228765570 156026554 740539054 16572227 858043262 415590657 371274150 547955688 969069780 127859070 72788870 728379494 99094155 54736032 595102969 3554277 540941402 750499563 753944058 104827703 170466569 943334358 423632707 574317393 431764352 584246602 100273502 109076373 308433551 849837475 891991022 138065068 625260381 438386328 537348296 819547937 919832602 823913085 903555864 663303913 722727570 675501870 185649424 349096413 195448482 607165771 854686376 16025524 767814269 792297933 477872666 138737059 659754002 481512297 778627766 813302886 572553053 189919518 802783602 109960753 360396647 348796152 984585834 454916384 378858874 738505584 240664031 258542233 587036447 789615593 205907387 362945061 723786225 135547815 402272709 185191710 250758709 151112750 565008580 781998791 594709197 402726888 493366371 834730446 444598159 306949598 568007537 217892913 630045343 627317378 732718429 427238564 823475018 109253771 104081648 702697284 941992734 992443203 7235776 573390952 533487379 694888505 931988350 900666485 319801100 369558058 875768331 994232219 124070319 856269392 537252669 86368183 684554029 443382200 176819067 387678090 582057615 893408696 970502073 864159516 147180263 248933080 272752923 538608214 433874536 743288665 225285735 349165468 501054004 373732600 74092835 993963032 496401518 207698260 946879491 391300511 476854432 976114676 358121678 691980469 431962485 166716860 574803291 490862506 324118344 711830733 486271255 132639445 251524018 44350574 87867185 747353231 202560505 973772810 218572098 77704957 867200030 511103016 616219102 476636637 777625906 759330431 111703927 902306908 136692840 159223049 75222161 684152928 996682850 126467950 911051309 316852519 389708334 297231010 907136237 343319660 30352318 595329835 418086593 432836105 716975411 140727647 240698239 483398068 77777291 215351305 211036813 727593753 166783183 206124308 309458457 869078886 896597729 900297094 223752593 806638496 849193450 572920236 412858860 266978245 646157795 926766875 117028876 175119855 64161904 519948459 888695178 779629785 538573117 24465751 150009404 371501092 73970829 645091245 637803518 433848867 653878192 126566964 941697657 481863464 642686861 792978632 551306298 911670743 766100242 18443046 760613660 302131028 720931636 98267167 122932877 312700219 809333577 873036162 249702849 759845382 69011052 529418506 858648308 177685349 183192053 687992021 651050768 53605203 417607973 328024775 96873648 822256196 549911056 978084734 395394695 847574120 506483827 244241590 906755599 830289260 696838370 972848322 772267771 591333866 645135088 71297247 133593270 187581813 127940542 717006227 780127372 116008500 343543357 668322239 446866126 372191528 28447922 496032480 846832242 176373152 9389297 879809829 398345645 154939251 718654274 96308518 53969838 894848505 361284793 378463941 512461774 960703787 933785975 968089520 879228445 692508775 523050660 791382959 723112754 569862860 440287547 556086020 502377986 356555653 282282854 557266733 980937855 163482666 294125675 333126491 964258567 542712265 243682930 149173455 583242077 54292008 310822044 743375827 307329607 477681714 557547154 378157326 930249811 873284904 678512110 303848323 708081470 865531095 622207607 142445334 534069818 51903717 751457635 638492542 835328398 119891502 164883811 692760266 493827720 147824465 575729949 925352047 970122186 107476899 752808443 708209620 251235295 67237679 7518308 205558338 739714484 781602016 748591374 68057091 27015774 653902365 182379388 256416075 409527299 176351385 645362833 991230286 185663652 200784769 176527602 828069701 905195273 758238956 167047179 551101777 673448881 370182580 38658840 163131089 349760948 110837345 905124968 555046063 945748853 588002742 298520005 212793177 531094733 616862636 902973414 133552172 719286660 922391723 23939963 515257646 954041843 865286121 791004662 158704818 109353795 735821212 94830693 927727014 835172879 69912022 169663293 625858900 658585810 483676248 438492618 333923372 462961036 853064295 917518487 253486290 311623514 948341849 171749412 271190879 269803639 251956097 302143574 969434378 569561611 967934940 946155626 361510035 451866581 943285107 44695732 861251571 941806665 116500378 41470769 852617675 698886094 694113175 239628204 62589790 522432391 1751083 384394623 162013040 253287194 919228088 876298202 146771123 839984617 784508592 731113078 128301679 720216855 862622293 152296479 740189695 513916014 554344134 177654258 69361626 619106925 638229319 770973892 227179409 515402159 531871885 666307179 121782149 621859856 406600233 392841257 533735461 333246153 372534096 286591565 94900579 418238380 857159810 811990558 547889695 245019344 809374031 318252758 889402979 153284417 645537233 36262444 178414501 650400866 535780392 635697525 138099643 648697114 856722291 216653749 733135732 148186198 715279773 136972316 174663246 464458070 371278470 883399217 198790793 156783665 261605696 704085742 295778849 513928892 631529641 671430953 63841770 386546409 300911079 347648849 922814737 759234828 442983316 909815643 227943933 712442418 264424723 519847907 166261192 405831794 881066068 403527944 570306719 318110681 282887538 531738182 965283260 332272421 444654058 952939070 201005774 219784888 617812903 154562790 308479641 319782465 328044258 876139330 848504011 459878159 722097778 864393454 520008764 172780780 634630378 570063963 216751796 378460948 757708995 288446953 278229578 168759022 296317704 685045383 339014277 384658991 20075222 817350959 324560752 802268838 789852706 375745001 687106779 834036042 342576324 189844572 100244525 640820750 49965544 869529717 653791543 815502557 401100475 727989515 530792115 528237579 641372938 792974388 556215569 255233794 408683608 360029934 41633351 425169667 240581478 152479722 897479969 606408952 436221509 713757844 267099232 926699758 503984334 303115483 353375455 953446771 19212505 458727768 414112462 254286918 628368177 805980130 39154717 211087412 981809638 272941033 399053217 316147025 457788107 853004997 981415288 443218994 112295662 826706865 335546301 995406096 813470366 539386253 405583835 432715554 415574662 416591090 239174064 817238433 150124563 862324276 893993682 423445914 590032835 567065080 259094640 138309413 847669952 327680779 878739296 328303815 843940744 898998082 658680529 119519924 205441210 250317453 473065699 334706911 899340689 188703390 122239635 769518457 996959374 674694281 812899049 668519197 312298861 407829667 189023594 969585235 236154156 61973813 251562228 55255451 415267207 177853421 10923716 762081371 594612583 686173591 547762700 651338795 393896413 126536256 10893267 111815294 988173831 41313537 838605742 1507878 539510112 386985087 959170939 124678893 486950819 248827659 581783045 249226590 272626352 774335086 689633238 92327461 126437470 343681786 246502299 558561229 5232360 558526067 130993909 611302855 23668687 12314987 418704133 177112282 990400326 474031829 765313447 838170576 863564797 800180405 626261724 381755661 437786122 599185122 159567556 29997465 649625914 289159274 13690714 195841861 638137444 62932516 387032449 449028489 922268038 589454432 635974564 644455170 211078398 380055878 981733491 960909826 421685476 890318366 596333473 315770366 239579629 810466177 12580892 653674332 673862946 888358479 899573625 942295851 945335158 443067541 340476376 404199223 313059453 997837548 694400614 203339045 267543200 710340707 317373004 110614883 982838242 249136983 240518291 183979811 60670842 162524239 662072115 836847690 274282643 607206883 877114606 218500796 499410795 137709711 245325419 932069823 112664231 975180122 970328435 213437396 784810029 670110833 261335652 71570065 235892823 823604999 191443073 127002935 662583855 573589979 421815873 771524544 321792028 138867777 566475393 59582415 913894875 689687765 674049301 694014480 867229626 403236482 733094728 305892067 241304020 73763284 770788896 180457748 527730305 293445164 317724268 788518881 485505478 9680578 28695365 447145607 410018001 557643156 54072040 763546902 351680680 989131614 556263385 40583971 552195419 839390743 934474931 612130448 229175967 52463680 325067834 74397774 277677497 967392550 698246266 42827917 707834079 558030038 658197294 150383563 723965318 653698264 322739434 361975314 125580622 148233602 526904804 974374995 644457649 789170254 22812027 85809726 534474903 474833318 693056983 669705870 429622567 1288577 942516441 444866526 17777273 907609008 101860738 881065341 595503374 913425894 829202383 432004735 848108051 206875054 31559595 423706317 974889516 680483602 564805921 100822270 410437642 54202664 732835612 965531621 941752022 920007285 422584903 261806439 389818543 316758901 701281437 273109106 381726946 102638158 855897450 403353139 219788555 960253831 731105057 800793147 946360575 356980638 928315281 983410345 155935738 152122511 989392166 237748971 886511043 628992793 219203172 422758701 576755046 840320624 516376571 907156035 16617259 4455910 566700206 987624051 689314117 290746785 923540492 925280203 705596739 523252734 945662520 751920043 40413647 794251133 806122657 310233854 542312128 760877964 992726512 324469177 145933990 368259375 438483679 463913727 302959900 697271369 986649651 456026388 446697951 232906054 16904644 421775566 470671976 424323254 385193538 794166707 472043921 959239194 710326898 366514504 327694285 972163545 90673182 131087703 736363077 137069112 649512840 891998107 250836032 966367427 725302633 919394635 280266097 677477673 917205359 9864378 791715505 339064467 571289947 451128379 136085318 374489586 137571899 411914 357563174 704911688 167392353 80841235 611037508 721636877 289584275 673290112 197388861 608234861 335756496 364327100 950833795 62137247 107155484 294122958 217529594 598290640 325781185 802927932 711723083 416432880 762137638 301399463 613629064 72782233 623708718 401484085 182040419 872319894 916607830 366822650 373922214 182259344 408023285 732586831 249994648 415765219 557546248 76061229 504516625 469599602 668875744 976686944 36871372 578130893 647634589 741789733 281309292 220515450 556049825 719059351 204031917 35985390 559249062 896762923 769578699 211841236 481044843 873911315 531966317 681073520 570707581 517146050 361360575 835927991 621418658 871241284 874042595 514377418 139468830 445023356 283982607 432184575 242129105 604874881 967231571 747811422 121887995 647303039 297156885 66683523 628603428 930722698 705962811 228395832 792997983 142809731 482060116 461017730 165612652 801993841 928992069 834738627 289848418 924143698 208340413 691392551 485440540 850385990 540939597 514770891 433180816 373984510 687519633 589202211 844014054 668230847 352434093 710602123 830678679 63353241 282111283 548822316 428137056 415465864 198063433 699795871 241742475 792443421 983660677 274269148 177010332 275189422 255541231 125349404 297468739 219245163 85634816 119201377 571879637 696525206 308283504 176898893 108907689 843462857 788101446 848739888 619233226 832409907 224811447 327934340 730905557 259661369 427243425 537248695 878844736 737623163 910653320 690414405 512248192 562903977 247266748 8498242 905197036 837229081 399816953 778641988 675592321 979608242 636594461 128491486 28961450 304275843 513833411 543807662 783848333 893181153 848799110 156135078 857012964 40594429 357940828 716833789 325780307 283478820 775102005 38105562 16674834 254533062 859881916 85343203 471466266 218093745 854660305 284417423 981289162 282092933 593660539 442789283 10116992 804446143 999634018 703013290 100861826 928808250 881941993 512990387 642813605 562096547 128410285 784052577 714141976 494275592 65404582 764460139 670564716 215243413 413541117 916448910 790624818 577218816 190238035 570919741 918337874 495712278 407655288 288813708 705021376 280169981 663871192 104444973 381206610 222511963 583356791 465554502 34948210 712098098 43239437 684844450 104543023 89427949 790942169 992331875 901870389 239744424 545424809 432242653 78257404 886772808 857183641 273769840 332716445 724019321 386124487 580978276 63505966 193908059 721112018 948870502 829853641 607176333 523041229 422071542 755292949 528053509 689645701 654560334 19207707 709114569 258508930 760231582 343876449 183175648 567569948 171087924 753070058 142836769 216618763 438326720 334599371 685985122 45127072 595509633 756811929 522020412 737557753 123439263 366678718 767690074 852059926 33940388 218657574 86848992 119046299 939822527 590217803 477311720 454649471 358727053 771912144 521037194 714557333 344306461 983964226 762125808 196853105 78564622 878814629 666978895 479604344 522823918 899011526 435201273 111833096 87385883 6825191 779921238 248290197 805080094 200657712 783087687 591975434 153754061 692581506 632755849 216655332 228209998 429490284 895698914 129756417 53599546 261205059 216461547 763587982 41197434 254196808 418216949 409287103 897803492 387900154 194708767 673818840 191678729 983562762 34479039 717080524 908576199 778881890 351437985 386985626 813596972 732417668 426533284 500551895 992829564 767392158 712971056 392992107 23354935 344197796 329758508 106098024 125540417 497418360 591828806 498564865 660801508 582089186 114395984 389657908 144132676 746441012 172476211 804385318 170592646 61038416 157020509 4607351 578750214 356230489 922227330 644695832 162391140 497290842 869338176 759637333 756119723 792067721 653403732 540987070 902929611 126276105 587487279 392829629 669550646 874239031 652638139 178846464 577062951 869715082 168453765 642460342 415912805 412762570 612147028 341806337 614783954 614780952 728733157 982699555 282513866 587082333 114007256 67843057 650861719 63180330 189911398 394194549 847970759 431157624 400863457 676253120 106841503 876609098 11081830 260682865 898131903 934024601 327593792 21158984 616499678 528715507 118536168 842462021 179926075 389550523 405159563 935917335 618352399 888181006 15157787 342646671 124427739 474579956 548103588 112484691 996085096 93917982 449292426 865471114 905904056 366568692 499219004 658355177 257050843 613043042 738392131 877237571 222851768 805129175 241306194 150569789 267251167 616233465 6424306 508976063 627158982 759652798 288335791 480542772 755200952 749179211 120229339 987239603 568540584 728136465 733604635 19688235 306043508 806568266 596489011 776660901 893494842 27189567 45144384 168222873 263366075 37576180 642254623 131234502 304884139 531653778 327104039 236577091 285662559 783287484 287145714 10001358 474599714 978316968 146883113 166414944 920719197 526003203 308885552 781877214 848044847 883146390 128374359 5195548 420891512 983765025 564266259 972967793 901889820 458598069 868122082 579483428 94838708 957207426 247501501 32266382 917264184 532293973 361277444 196572397 327592881 693833978 396751041 541471591 125313745 834544947 558773134 652542579 3312275 54521160 567009476 246844440 943553552 13658120 338070960 597191340 730758769 457172794 238827939 807319805 776905953 709423185 869730708 371398034 133796131 225203826 537694908 292617175 996474429 718073108 795331149 744172805 95127818 400217275 696092212 568522718 35201774 359161625 743523093 757848846 188687820 730182206 284318596 247626305 629727681 85290753 322061155 376679025 210248932 619852206 658661046 279749039 553648425 138800017 35329297 771530622 214156176 170999119 760009987 35012239 71856356 73445248 334630564 723353266 863029189 929459205 569209237 9941861 964306412 820540531 781875242 804356661 488811088 963249942 588570467 241481115 52909505 978619278 860365489 405558752 824570600 780051336 581446983 981382052 80452190 33394647 71917814 183876704 713029441 664747934 459217248 556071857 4699538 959901906 349182569 675843096 32748522 717076053 521806032 990770340 525615209 115331448 781504603 727438825 931192764 156207971 152590998 797836238 963305472 449048593 130003714 834853211 69754500 305006434 80180837 855913275 127985739 914523646 958732062 500995604 727496338 958646530 669303475 749592146 704074707 630463150 995047839 131187544 984403208 345819088 563703229 443563336 82082007 136407200 313928355 379264317 835273640 338655078 416017525 712162906 62559779 718650430 185702033 188699949 433190731 706230811 333492370 703765409 131201827 123432329 971075407 470152872 203784787 106297539 513016319 418297832 594442767 485571018 308376916 192991291 410536905 921934726 877341017 396824414 205478062 209334730 685706260 264050153 471415818 375668204 463097671 459667895 958536246 173181969 806628223 828635350 424760471 278352116 578043397 778104974 421143961 965894421 451408536 315087127 813749905 907318720 433843266 457344732 905807231 350479925 891097540 132279479 91283876 900655380 451761323 579236473 976395429 23544794 695464654 829686809 236484687 262692881 594018353 588151239 529610916 817292279 962574693 169167117 320114427 457454898 933787314 45776768 792336599 971176501 885088284 863748774 177213134 823867285 166911431 794693124 43466862 238699165 955251701 738480894 447782361 243214897 802255997 162670973 459624076 752681092 698186429 836701394 623444927 373462878 905701452 263181325 267065733 606684060 670587448 205361020 681973865 980314205 830425584 702686510 808724145 259522152 437039602 6878217 985362986 416382543 629000827 992362324 450337419 379573845 87140709 761029799 222348717 129648392 422858934 294695979 760670260 356587172 38563120 66223857 998024613 68098433 934011190 697360359 402932271 879143207 418643762 525488905 696818427 420340163 471323404 76997349 540227238 369346013 381862441 657244942 26176330 247283818 713527517 853046381 359695641 180734766 830510597 549965361 750229214 773928466 449644067 268848883 158737987 281154876 518655203 32471762 346699010 477363555 338311475 334588663 712945983 96585719 175012144 549542729 706906264 637493156 110313409 638570487 212739841 767724884 277482472 449088693 140380746 904615357 514317731 909871616 194192211 818387231 384321538 486379901 1560040 636573338 420196316 507898711 266932225 131793369 590978340 987999246 723779516 821554416 456094319 129497090 174631331 112823372 710454695 542651082 695624915 393539893 769748393 303477291 472336266 160976307 76030816 304588876 641300879 35272207 77396420 944415233 612054833 621263997 194650277 946515810 60325763 96814267 404021049 318541894 900529633 701733154 305732814 453843039 315670540 863951209 822615092 134575417 785480692 863955029 286371362 474062703 111174847 190144552 953218801 302472349 386632148 814340605 313508979 423867118 807137450 4734668 86100993 268477594 500704612 189670878 256610049 984958775 616221399 324802093 168667403 650807960 586486227 868511703 209633804 721275065 253667537 491692588 642738358 700241410 486812230 971203701 141674056 17746746 874222174 872574117 957218349 614174966 80950681 940276823 649685482 456617915 926731992 234266320 1534114 866417687 249894779 502963105 766009407 393806194 381138304 431590040 143399124 927118816 127416489 63430181 508402660 41046273 392480468 189603549 922117444 727526345 746435073 157347560 143819161 305030292 585117631 204140985 808488662 408252163 269428799 664581735 280564232 600247415 57697323 13995812 426280971 930093890 41615654 661249256 419039109 622646165 733246866 900469405 579306263 445414099 950919489 912351517 151131641 339000904 610546146 143143482 888945443 274408178 310348490 337384710 568549788 311477049 638771320 143776931 90925549 40389238 514553194 327771180 834165465 570204196 99344485 530444799 5068561 339786258 268072997 899862628 496982187 590074709 920167969 663501661 368550164 596069076 953408606 32992215 68757614 261726809 777406027 713207808 90008204 114991618 549728520 986007573 996892910 371642570 741130167 186300533 280462934 701231988 597155956 795535813 570312986 43613847 936693881 486558268 143811323 150363571 499273264 357819289 942938985 172570345 884702279 652186703 959461907 250437853 63726058 289719512 770563669 918578018 205359658 650626644 92266110 125963916 983872480 472484329 741603337 664419634 69818880 773146465 734176742 955209452 845619459 990799609 873402810 252257950 967246403 505233886 795418887 488110151 804410890 217748241 223931988 136921197 824405781 834695364 196446481 981126564 329383535 460563001 385767939 943497483 250714683 810614421 952455151 25132537 562535673 146394129 550806112 80482321 249827169 241581669 987006342 748556204 582151066 427162858 724690652 539015909 689446455 112524275 63614976 787587560 469619586 616073873 305250968 296214518 973939513 918097088 724345714 823583713 719571988 381485903 260059131 651634891 443055611 122855662 888609742 5223379 757672645 550181 832487995 598939001 405402193 44919647 658244136 678236085 25812774 466631235 86081837 197778899 451406716 15049718 862992273 304952314 225054828 837494426 602096212 836329993 770575056 613369607 772726292 127015199 221724297 516255313 735555072 951570079 61901941 329878678 573803819 219926602 905495349 506696469 641784618 267167192 786158862 626764581 16575152 697480161 268250183 395393779 772067275 861948607 394536893 117125040 431837658 325111594 566102971 5227444 442650562 280028270 340359995 397539790 820873182 373997810 743627557 486684323 528553963 650336 276582512 391889058 981778416 646769677 293059346 505348972 614164162 938717343 19816745 198965495 991178957 766704170 916998515 209885104 211339576 88783404 379968152 725412610 536419715 600449319 359831440 952020334 365036169 561617550 149694944 147247516 42527759 627317514 202159118 843055256 939955155 383156736 335842938 318163239 489225101 826964522 139964401 64510501 590375040 647802986 658559309 383551654 689603609 27455461 478464643 371534760 869646463 24465195 147974153 362969641 846017194 568965496 90090533 276331617 850494393 892064975 374298060 533341486 977109112 725912951 37646620 783048179 165305775 552158767 672304902 538008993 581099652 799581812 579924743 303416574 153715825 958471487 997905752 800286346 247428581 538484087 806946603 564795532 643284109 302246185 365251540 441335197 993905114 897647897 806561371 511975512 598462308 991878895 308229743 536497282 650916205 103179268 83978047 236672431 473501745 985130405 82461554 567874746 433219057 846796571 586482454 93888209 761455459 133501826 362852693 630567510 710594225 831652464 60938431 725076166 982502656 338986391 190566673 264071207 249857529 29563169 542168268 958242772 5215983 77583289 712954013 698113578 625078 722839719 88771090 865841747 974579541 464966289 933173729 824727555 977001138 40228391 394781693 117988480 294172321 475238644 102604370 619038124 246809640 704340833 921221174 727749100 405851979 742753551 120521272 744007122 276188299 766736935 115290161 936412777 177085205 327648358 632007398 591503111 116571622 605844717 287644614 840672115 897714192 679846323 955336242 393260480 348510452 702065194 660923162 387472600 639643703 574048405 366199514 681933604 587346451 342291701 729661419 147269509 442942877 727504855 761478653 64050709 187539269 829593998 704297192 592216008 492835229 418265346 388320204 8536287 126196281 372022139 681516547 538719570 88001896 370452570 79490607 419016413 162421837 495826568 818242538 636260319 420253348 801784785 704180494 474731336 208137654 704771416 321349565 741205997 120994709 741279167 543107735 535589102 375959114 519489491 575798709 618469215 821721419 943489399 262345353 34728757 881412049 785543610 142921368 644215228 762459427 979200948 893053398 449045664 740420699 120518014 237837802 442965849 450693764 370364301 452050213 947232949 81289224 708720450 280752704 693127608 373294603 495841860 479207282 206620313 937725696 617703551 871154456 290269832 870828303 663617051 191151067 744084341 528818352 389020105 115869635 775775439 814248561 869414688 982330255 39840501 903449430 691396891 323559534 155350239 114436542 776255049 378447549 70774581 599059241 70490795 750171609 486774075 69669663 428082710 975530144 174857117 194031716 94223910 185717850 63140350 32378043 722857120 883501492 330194837 770220893 906611382 530191469 961023491 134828800 704378932 241859654 897885644 390714937 665471106 94946800 920505448 863582429 317495612 516397174 607486409 180076798 412381018 359156817 84041508 839515754 921947010 342706178 791467518 217722568 669047063 89751869 737816972 656719265 468835173 568291924 292711646 279603262 75972708 927411365 891030952 437487374 322229459 653959743 643407684 77411024 476252315 76432152 360783005 985000200 959992377 568905583 35600370 901703411 315539894 328208041 107724824 352856351 279948802 313213823 708412017 352634229 884264657 774757247 550436322 601205409 890092231 231809421 574800844 901963145 307747243 965638427 227117136 174501924 864137093 568722334 322725637 744156399 274050502 702836846 615236481 799072421 136690170 764641647 258845942 558582875 209135135 985405354 506613536 785710484 682546519 335687284 182085152 205766175 49244454 90302185 552302202 250930418 674249159 664998700 501769552 476040090 360386559 821335794 280676401 394757436 837971659 792788385 554721804 404965572 170773913 376717835 546702041 124934682 712175048 579440192 521729893 442469541 611510946 243634122 139058198 240349043 811278025 884294160 264289208 113839496 546902685 312170102 617109756 486806459 224843842 909481868 593254078 228181962 740319808 401444523 261388109 66301704 917891211 702924070 3309302 876968868 783507888 679381899 682389754 969093883 985599217 430202484 300480054 479045152 350267056 565264937 186727388 499092000 365754292 917605867 324419948 999121390 838036750 66121247 355853289 446748280 869017592 332767360 845078907 44983777 272109850 778959347 278524400 673397945 473505917 921911342 851037697 169726110 837502460 742245477 899212421 709375941 282986275 180658103 882093380 954354526 100605896 112971481 490663907 328818229 693709751 316122077 112325271 826180659 821237694 418777654 399569728 653445663 692593404 453091536 326971111 678712391 358750440 243616899 332331240 463302374 718158603 2965497 836074021 619513261 88710899 713551636 305219369 984367447 621588111 456937241 613094827 585735220 342567606 277619499 623532912 329728415 200377807 735786600 753909607 285829162 147242533 479069578 779861682 724898121 269884950 267248717 407214161 24922306 130592966 819762317 246988445 414896229 915820294 130770838 848881312 974663999 114981422 472485586 540488494 525179216 311951019 935593244 212904724 54505727 435152658 632846229 429454728 545391373 865617535 246821392 590163202 290738553 48578612 350825954 726949560 531346484 884094121 195888241 957635694 313445154 314786337 298243446 720472892 669485651 825102916 723421198 213968052 57753362 624132180 723304675 439596795 505628949 455268956 989851688 554221315 796488257 728268012 882921152 110863002 22320143 219173885 611990585 486552116 21088380 741485802 392493153 672934650 401446898 492229886 772164107 201494411 900014469 550007892 929621935 536016284 117260590 443205725 169715076 15573718 20491615 153428977 44532593 561915585 472113474 18901225 592396380 497522482 152964229 386537025 892537847 289251424 992343734 256784360 723923634 690120965 109530374 385085267 275124410 899015752 685864289 303766944 603887930 181939650 734286287 491068829 727388916 369259521 322506365 312306217 178190097 191395504 38459496 372676411 820190319 254808611 967933065 2829909 437219351 439862203 561303816 262841885 438441909 998195045 470936559 314215353 363437291 726039379 361176231 12729986 212094000 930504 450113668 922438043 14538326 833720814 4013935 466202892 668750083 310499923 213292161 42579469 578294578 736926498 625457491 383558002 718430909 121264699 749795931 789774736 528225839 683833214 70092559 930731136 866197117 22352338 670574973 847063408 262379395 631473744 959653570 142110583 103772310 148120164 244307572 603565398 723679012 869159361 795088744 312449976 788576283 242480694 948678600 686453258 644561844 184768320 650785185 133588253 643867302 775010734 935229424 703900083 21472061 674522666 826513911 259313143 481870993 565245446 380860246 524461972 2884754 952840177 501739299 929012823 558499952 778523837 624198372 814741509 622060545 886414624 631199826 243271000 594947400 301214678 703401001 970287867 81440457 482620056 711934465 75873587 868089723 415808016 728342197 880969005 650570939 308155894 159949668 516982474 819337160 376931996 709903806 980755942 116795049 663171483 185132570 116885333 158954817 754753597 47574973 474751870 482226823 48467382 487970440 589610830 101669917 156696552 235313421 727909407 978103626 392406603 244807181 825533604 44970345 778015866 31570063 512911541 474034969 514128587 86123647 313294209 76150181 957468939 907025707 769793324 690581244 275710290 454344489 937809778 966333793 815022299 604467211 55390739 244452136 402851330 1960031 626022158 706022155 346838470 628085872 319511561 358233138 264202710 773139654 931562751 412418241 843121133 21392857 150374078 260663439 425305762 64094698 319610396 787102755 413533109 597513711 630770724 237691922 603735799 602767739 41263805 384650770 117248470 322000341 477440740 121903915 120215162 533583547 58175125 390809092 765487925 384068359 590028391 302164028 644964851 233140726 595434264 652997658 46906787 909841334 69904496 137272316 822915168 740005227 283600041 266581745 431313829 71019510 137738344 146835461 729919446 684183233 575403478 579647749 120203654 188253937 387946130 56003529 777646179 22704913 714646125 505593897 862770802 595532261 423432659 308757885 94267190 215074749 787787630 723350780 946180934 696690481 280971027 39541299 762153101 95812556 177978779 302278314 442258217 505593877 148665304 312056219 311303875 508223207 63658072 614426129 952015561 18441627 671919301 639185027 220347662 945160397 461056821 971049320 141519042 546503861 685612287 68076869 8013160 929829804 618371294 831193092 193432158 390648847 764302947 199139754 101501746 497601054 339556311 269341927 646948196 638029045 384337848 627097124 891550152 642860054 746568458 694722089 879295587 899847119 182101715 878999485 206226155 895827867 224880540 40549298 667921947 256250433 886086236 717217402 897097444 747190437 48611691 340336635 267628232 56575435 832922926 25402061 568284512 104312369 362378781 448670729 593779141 29700285 327854705 686158278 701183136 228788213 636459235 715662443 901088565 800557245 240033344 525657449 335353139 825733915 140994407 112175703 5845650 315184154 761494045 750518481 541566022 750487768 828859490 561376565 352643027 965602065 706805688 41821940 586243858 574669452 74939416 777991449 759633533 972422560 504988156 528723464 825769487 66294161 621961005 933225514 982582071 491517229 461429341 317026257 453435539 332166384 59212748 127143617 872502926 308961107 891768727 553628616 949575413 417153696 96953242 140706782 772754381 578048084 604642486 173683166 773364866 761180176 998993094 779257563 626332894 807760362 846935608 52005329 131801746 924769417 122667621 48125193 660683236 98854440 225319030 196467710 663347080 560744097 545306664 662473830 375523318 342455370 349236483 33566929 821906159 969245075 968854017 418822335 252767253 68035679 432976818 686016254 105036526 795912867 359017572 662452834 729055014 844234440 320539986 176993381 112365828 349750088 911346431 841662152 201009626 563223579 694434319 373274340 392437526 860681099 8071899 584570985 981565998 830447904 150501758 505301881 254012618 650157027 227654162 449784040 590783713 919258229 321358274 759682107 522394437 478583938 864943325 234797766 831400408 460479297 429492116 480695273 93447969 798516716 6523811 637255845 32264591 777783039 402804859 18920444 667334356 258175263 739941159 638605571 486546203 385855571 698581507 931848102 37981001 952165147 699197153 937728249 997358048 661828497 211126495 79189544 737342119 642453050 798423144 411505089 765585798 782917097 486390125 348521275 125096357 93195917 407583171 54657000 376844649 209711398 251378010 120933654 482306293 452537409 58733285 579087889 916607840 484917853 176375607 902466833 606990244 169279025 850673351 813995276 51826776 372083512 100967690 979694173 42937660 665486284 931823989 199909707 87663533 859299405 882484100 628148792 807085877 796003033 314821783 708634720 556336750 637460642 959776294 466277887 132044170 71850916 216406445 672920036 104854797 510853678 260902994 289794160 386706197 569362548 468167239 283121104 697077784 444867155 301889070 742115126 107722285 75091543 33283121 708758047 259110767 62341923 613492483 74152321 785877375 751120593 779440712 106473924 25681084 397812441 798586173 488576385 753368708 408044994 730698115 975453018 797259688 642760152 445414803 923118806 461419104 513041800 600689100 901151761 292493896 785554393 901989615 377360557 640961956 268660963 29712882 865416041 461142541 311760662 370344077 4085232 407917826 827497586 643443984 2865243 154892700 454598343 807076274 737613834 401643935 488822037 386324624 156099097 87152832 535854599 881233032 308925819 746771619 851182546 392762327 259890770 869385765 599875506 846742357 335571844 260294441 418465236 613305548 717876896 837376584 730074067 195214319 914407035 55185208 267751297 508623653 838073222 586868505 616476681 619856954 948274470 973450827 817337880 660969361 282435231 629424002 545329413 768235458 913477527 137104230 445355741 243280036 831822810 371915260 127500031 600724966 242505331 60749895 200243199 253037617 744277695 30102323 653408016 796074926 563424144 794483170 531545023 690495665 641038349 891870443 944868260 598116721 728642826 212635421 22067949 745544905 902510922 23573821 734786949 98123126 157419506 780453301 461455564 940917511 938291082 956866328 787862636 408605156 512398201 812191222 676476769 372880632 864555924 828172682 123259746 978702141 305041007 873388413 963671572 183532276 590914266 50206682 648016757 129249374 841655117 325007575 801805982 450637271 353909594 310868467 489090700 534707349 570696198 50393247 725810014 435924951 589578966 155774487 578344795 885295892 161820744 44927235 363762387 224639120 765953881 835495683 146462781 549890335 388172778 722081991 196202396 708844982 871343131 288215111 517058369 427159859 162469898 374140842 644292058 247754805 17155825 885677023 76974348 826090635 923389167 315651133 390662533 425298855 899652169 471480547 828052326 989505540 730316220 380671139 616548014 420830166 910398968 191907916 13073946 886130015 694569017 789704556 444822593 887124130 780120517 626836902 480912503 916730790 650491821 744563050 515060302 526930897 957759379 81020395 763260062 550240352 530315026 806457866 296432786 108334492 511153997 165400435 5848389 483637074 850516969 369096045 359213276 866287385 889622924 73583914 140049990 615734193 897872210 794981201 540734060 627142551 869249666 399541203 500531524 290537037 229816039 701906571 954528987 494021163 465694236 226747079 163845475 952446589 862437835 986981669 441783907 613416898 630102628 137701153 620947166 124064704 434500036 565926579 429698665 740170025 998387256 805586267 765646772 688710616 876821064 393631949 462412033 446014408 627364954 995401092 254067132 974098415 363384598 506868642 296596082 328117613 337793887 214266601 255779651 526012634 632016921 489065488 603532500 970753556 980484802 598970051 738739028 260287068 359878952 723523805 185578076 930964854 840512260 205089908 910512736 311716229 837567234 539540972 135744802 717549477 280908105 342166085 112907649 638483840 406476155 367752343 117852800 455377192 469750714 828927754 389185580 692632912 196973607 129700165 544325476 640904726 836256806 185171936 883170724 337882786 886795088 864165502 630080593 91833238 878152153 121140321 97610214 769433053 562393636 768920297 324230397 29560157 451306747 125817774 470909030 809605703 579788727 443738289 332192250 552032279 624756157 131320360 765327906 140638433 917992235 579029328 9108742 906572925 312663514 60826498 800755088 343526662 722342442 351893339 282203895 475965247 202688620 710264712 17673262 613268202 893607394 186133747 719992750 368756302 481251857 364415267 776000934 802922547 689875792 337214363 837643768 702442844 940879213 433113704 495090704 127628155 60478666 384784106 682697578 115608827 979429939 584282980 21515755 405892782 683410182 979189650 943583841 7604829 80352833 392934016 16594152 726055136 992585557 142048702 945268290 239848641 281240107 76199605 113494788 644178295 592571921 54342364 504914083 848467628 346869352 514667450 685203671 411706050 720136943 135454847 426867567 644085286 17009065 817807232 964449835 673946299 108958414 437281999 193026866 66347932 59317071 985531901 411832896 539386613 568605913 141259585 255431284 913441638 558818638 760048999 771589342 47303410 815193506 681372808 432300580 257813949 502679259 10069627 135480534 216150756 917430182 234987133 129341745 283036474 52372227 848197397 424435495 659257179 359993753 951433473 99976753 412174153 252646538 387152985 356430062 899331556 925817419 600090623 194142264 718932656 447942537 935371467 969181014 639935303 78915335 865636162 639207012 930067746 433891317 858875052 930985689 589611325 274325992 947697448 762983289 602506845 970095970 925956924 964408119 910752648 502817326 668432360 704151250 707802684 967804022 508057415 299812353 389865526 683292668 333848142 301476471 213032554 954015523 144247096 157855005 447084679 946920251 229183927 690349291 988180505 978070288 166869261 369402444 608498464 960146082 540203059 251014499 423775447 972708973 304612435 482900407 787353488 89958828 473490634 794005891 598801408 770477915 879744958 660685008 767124453 669179124 998210005 558559421 697065648 785029951 588118539 277627540 542697896 809118955 178126708 769796717 507160255 530963752 427138740 545901497 232804976 863664204 325809974 912966073 109092924 158252704 200473665 653092467 808635382 225729879 469883624 979695837 202458838 746283639 738472183 825079131 539672510 225722263 334635179 96424705 959410691 389564687 885626657 82335856 595877515 628655011 549703882 518847532 145411247 766866354 143473899 570321908 626606294 458773314 158525211 553929618 618713111 339660535 424788096 820933394 481019250 996802696 386052059 258268110 452229687 676580027 906193704 828235639 81892182 517470615 562650112 279621004 123606328 299681468 2490182 888515217 154389234 290902765 74934835 704999771 161990337 488470848 790422098 738917629 332429251 528681224 684219260 402272902 880475112 810070253 197085471 149123000 81965713 634675474 173807854 974971756 993931233 579814681 527296434 121970938 381337466 538367475 108234989 119399058 940079650 836125354 708748936 107152066 531216658 310684476 369015782 936363216 910937696 969488115 615325860 361861996 803438110 4949466 995361203 734448396 140610072 453408615 505686922 902034262 212771256 282011037 219988683 872738898 542151010 572526362 679548379 243793867 302907939 204708318 972046610 897408281 552384513 695765883 587090234 540232843 477833538 597834739 915187219 298364796 770119755 981608469 866815680 700607152 399271404 96255791 397168192 409336690 846065044 860655744 11510840 782411482 922729666 852090100 524717158 146046353 327760508 684736204 748965806 102432349 588703409 972913388 452212192 502564374 882980412 915301008 267639961 866826455 35511123 677628606 894121662 238573717 456607969 707693568 49573388 51344226 533307722 837340236 827507341 399394051 107134588 40239121 437196155 204349742 1564432 200766929 140260127 112438479 356730445 325077238 229683945 230018317 653239309 455916678 609598984 160595553 192217037 268015813 988146155 97308143 528310319 298059522 345457620 339577548 488709766 811360453 895695302 526070243 834769490 724732868 304415425 339150835 580075365 599879821 823894880 749742572 161763239 593707006 451122386 260373945 844248270 716641425 791801782 774695403 838652136 245709533 801153260 281834409 446921104 334931422 694533451 938662820 961450918 794216679 420336298 579512768 239753813 824800526 488407390 966704341 999973262 831746978 221590943 778468647 954548940 15882324 60622361 812005383 626153233 8833155 728023887 23804261 644301398 692963468 902703695 485309548 43648268 973699311 242851124 951808145 882976329 734522038 329368215 736547160 867896208 936368390 186046316 204738619 847448691 143307477 888191866 24843787 232238402 767514795 948529638 208774099 981029866 78043375 592707454 870132913 819979792 906919446 939582699 631766215 229307398 658726476 482648233 705924739 633759247 273021298 936040195 851527010 485055578 186031012 694878893 844999765 765850619 104728792 1958796 629564933 357431071 204884997 101993934 646826305 657194624 560733976 317693925 936689532 518770438 972882204 113814202 180228284 410619944 979443472 499880148 195527117 55600483 4776192 29193274 100476982 717332661 689861558 85375086 529327029 723150063 121699068 855544351 748559460 761676363 719718155 209439488 48447612 530661007 183420009 720798652 123009969 395176172 126335159 427136610 216796644 944076201 887133366 808135384 404122710 464088503 252421837 271136104 325500864 882044756 891023408 612489916 286884522 805430173 238797195 129896820 478771516 586906502 976158270 455079827 415422192 988395179 702211211 419079751 460024136 82427542 543508699 193025753 708752737 938335805 870230030 60596270 957479006 203567812 171299714 599544025 719487277 965843531 57303347 995572774 448671588 221494242 657411473 487196601 191521435 44996105 653020113 926983811 307223480 271344668 81198201 240971250 915585786 26950129 181170756 95892130 574111760 575239155 244725938 986867467 650365017 432761259 64756430 169395701 898743034 359632083 504818577 399275309 838963372 429280095 232724635 790976713 86452322 761355573 902873558 173721805 939467092 52476243 182298559 641054743 682520679 150167104 59525161 865941490 313326018 48948787 255308634 775351476 407257807 336030741 766989611 131098483 542776191 882125884 400089898 294885364 128128854 171517022 94443817 864806756 541262386 228596629 813611899 625360909 125244892 626408757 892223509 832654625 635743011 930586100 10692062 954856184 387037860 457195475 60065315 855677222 6573568 576188148 326968547 352934766 543981377 143337200 65715123 778341320 98767559 533596771 537067154 416531551 894595837 63905350 49609982 921286431 744845722 24925618 551487344 412762128 979639590 994473531 176693861 324385149 153021683 327655740 948789179 258877219 601996810 709608263 73796327 906984536 617467436 388670562 966419271 282679988 876924836 348047505 42032158 848522591 110527086 838369437 130465515 643413452 406221938 402191038 571387326 870964953 941211575 903856537 479994525 608613770 379938740 32514001 383481490 184289011 6433306 417963613 908124019 394900245 377263832 157494602 335033059 370015207 351304636 497403867 200992516 779865593 123494553 339372726 395503122 614286 472113717 951741475 513980603 759400611 824169904 929633723 685913573 184560216 426389948 88150987 122152437 233653808 932289301 473726302 527299973 109611908 461805782 970037661 778321862 531733543 976598611 901084611 9666012 529311316 942533062 36828959 106698752 959078195 839123864 707298858 388634459 247460303 947130046 308761801 216188884 544372587 632118492 201573717 365930537 838783115 662638874 682815354 441746923 624465892 449478257 779300609 80784178 700022871 734715568 198185293 547331963 913156518 574172436 600102049 648220278 359717740 904672061 401137699 163713172 924980967 174205225 784271501 64820260 548764138 607498880 542204212 319383697 506610348 72458885 673856769 106647314 48302653 255066745 263327818 269460944 3119815 436598246 891605119 171623851 462933954 285529164 667621661 681964436 823083618 561567253 928834986 886889920 810032299 48634779 455837349 334504219 352922228 199802994 616738907 324179596 821673144 42338265 163390788 397710154 867398299 989428091 516697658 222425304 94882991 360023145 357468230 629007072 950072248 439536774 620797700 14884703 468517595 414091066 556086106 588776411 80204975 504554608 308635956 979060804 357754815 291513356 287865347 259006493 874319314 973444707 191788661 315509366 334078357 861799454 13163506 504341037 670594656 586829145 913161369 968539199 426564817 305760326 946416061 712129193 863901127 442772175 171844057 188770581 697768501 628682897 446908345 187609568 878932649 381792899 74630880 541856038 472325182 432718725 639937525 646051495 902352477 562833954 397353493 929363601 625417101 610528701 27547501 372812407 959310342 50082364 469473434 580910084 829246267 963162323 528071136 604193538 351405659 358269546 153807211 965432458 871201813 330520612 886841774 864335962 696260717 470396536 75983583 899302786 482230009 444023994 973010129 221000382 400803003 726039585 947169544 992898725 177341457 936945104 583511426 135272411 998641987 692524515 420620111 716032809 395242204 274085294 353569990 679890272 87778554 71864263 671046146 34260585 167445232 147297619 109742539 865836666 283689889 746226431 999158971 162876900 741231716 437815131 908712994 416589846 105279197 480147414 661446688 973752903 520957015 214092212 582482538 344562495 988438729 459022285 29494043 157791228 297915882 52563761 978970010 77074419 630102999 222401032 24160720 85805425 903036624 889209602 30170119 735783058 14907807 313921540 360797350 147291907 218453414 404453195 17721320 882642765 406988587 790486765 906235777 466752083 766645996 937387381 188630083 798418419 857184011 247040966 158805236 649493507 22538907 157810643 431975513 661598105 953331136 638818586 680387798 723563774 885670577 754951383 812354263 288280821 237584387 489773878 766074400 996473969 843442296 86152804 330927277 699336496 350490411 501773676 161214870 839409408 53318086 229066468 27528035 120645268 860282542 972391596 730337399 645654807 210242692 493163699 648258588 300174694 205463687 766517801 803514427 604639659 342862207 545992700 560010082 942277409 107625584 492670426 734076213 911145458 391075782 679727098 181474760 402674673 569502183 429409740 749847817 839365739 648043457 407102076 251725263 132022809 858893400 943878823 750499949 17443458 956082018 470223630 829683272 890669548 313684135 337284346 251247256 238045752 749441226 394264360 823283887 733022655 298045867 827163029 478004747 18823488 311330434 997173758 917668572 144207631 357722498 438571165 46122343 280867948 290650683 628376389 364295264 647648365 904114140 214704788 845781512 351357545 78290522 96394763 462151308 63979888 957103960 337398940 865931815 555343825 839772077 115927639 411427242 748985172 554019037 39481140 568384093 709670756 870325223 362073807 940739834 431979696 593884950 998695541 147211999 895225974 978465759 86664685 429462927 396609000 484351560 857290469 697052243 410219186 573175221 972670386 335631279 386766056 948872315 763597537 368894692 407233111 618320009 96557299 944606562 3134276 288143893 859753904 318614279 853737955 145427852 878848124 9261373 503621951 435541992 198531645 90998525 990213139 935241384 21199513 690624634 578429302 497944507 723751499 427883319 813239077 67893846 923332912 648200976 60145332 543020168 176014343 760280915 989601062 574917756 612238115 808787368 571394431 295087373 537912950 213117369 127978084 853773443 484000579 288996903 791265627 366264388 569277655 546496786 65990122 146274560 504820471 376824821 938411764 571448275 276405168 43671848 189135120 980448708 817560585 168771309 189069677 946644503 321585360 246833626 526849554 752074643 425098412 66377679 249820810 407012568 902868027 976995023 389470937 227698387 547321298 151074390 357578838 315477984 609583543 94848893 494038904 336833758 20418835 659259213 350318789 630430053 517667933 829676494 416323878 887012457 240966542 29218564 803574096 83212461 238345817 429160464 390218086 728546295 754795216 758429402 554159331 699141104 297163596 74127620 865640985 611722432 238303822 527824241 772218487 960117113 408670277 926555411 498494925 149419989 514176417 247411768 26372634 472936766 128898370 184745671 160956847 586757170 218204169 251319365 11151901 103618837 687640385 775983934 929932548 516139259 389048106 38876249 341680346 868030542 172706052 181177834 433208183 432711121 480717155 365044187 168499641 407816844 562690178 319235793 246065215 787361925 656861155 928690972 194548947 634855114 149694201 209954409 94146402 671253866 11959327 227089328 644848069 953020940 197510347 171748929 223796242 14404586 583973394 82646055 198042973 801906352 36135187 232144428 552875598 940600266 913969931 240583534 438577698 372483575 876685545 919953281 776057269 498108288 999430195 753812855 101784593 857064825 400265958 121910908 973425976 725516082 488730410 287512449 551212574 832354729 851110909 992759105 179801469 794458586 446628151 797166758 322319404 413671401 597727823 796289254 419446061 652591987 746424587 678543090 242727660 809142342 247317790 370824267 154972679 65073478 858089481 472720247 486768597 172311611 955485978 988016996 930985289 433127414 43431237 567030707 760189232 7296775 372095946 621808224 631553565 447838966 325569838 530703024 954194106 122381358 567560772 619750640 142990854 567891653 821161953 648177031 689675980 954454277 153319048 580184341 331926906 306788428 517516584 493443691 614498499 453961954 246775646 840580506 346319433 850311803 609763869 180923320 726422723 284001856 435493670 737524785 852784614 959191406 713078976 705832011 126788041 915986816 390790928 360562661 411891956 632668874 989426857 694020856 695059928 354299805 991914518 29105974 4576702 202560209 504159080 944201461 716578946 755441808 437715863 59919788 503358251 174663089 657493094 382952732 359900261 771765261 394674108 79904953 668426940 797917352 555112305 831703071 89323554 797066308 353306494 313439517 594275060 140169666 490794455 875987358 690534702 936115384 669787648 46413016 574723146 594167879 941107022 40809656 925137566 836936585 250703105 562281559 914269728 120971112 92554511 858093525 241628744 169546432 16625015 896301419 259516184 940023354 68349546 393014186 163842224 400946706 182863819 475773796 795244031 891821176 906909362 766088430 761145223 204507487 758472180 185620473 330242692 193454349 858234194 407140983 98099187 75463745 541222035 492989199 151868711 719036500 877639534 520018542 727008286 973375345 332951015 920385941 285028568 880320849 620768225 901322570 659389864 600226819 769756362 592631853 575131957 896081593 614543763 212837342 396707887 672199687 973198259 913044592 80552402 877243357 339454363 815421297 835429645 855731890 289518832 63938015 422251682 545274885 974698412 885940353 886785835 778763206 656646786 964680953 277706891 490048916 60035528 770038709 432740636 734057497 835488117 815116501 450671942 63927035 537231291 87886948 631714802 70794163 220024161 879557957 609710317 737926743 465995776 718981266 243670158 519706316 822803144 279328299 928522908 847873136 781880053 895225098 823782210 889276908 956673005 510914723 464200508 37122376 385955343 834565647 532368054 997012966 229551977 591513135 42589545 823743411 299232845 158194176 264021695 962819291 546004780 632283341 197784249 818258104 758512306 416345001 727516113 280062460 752250277 909009601 280582793 109943884 126491794 761693126 377673404 713211295 677749044 107220906 866077057 978349192 369327397 932212928 266176954 872097033 607322018 777753667 629615733 38953297 3591135 21002843 194482248 458386820 773112598 676354622 845611995 776016033 200260047 561527164 546818996 855928864 459504446 748732394 272625175 434279110 346366853 93488702 113105770 251320862 82236252 497180278 153903380 828910262 987684506 495974803 176922642 844825764 281456799 282561003 433839754 423420418 546896063 246503538 240388287 680808001 394510886 768777401 461728686 95124151 765640985 607632014 884999846 93232053 577173163 252638912 435428624 943245925 530842555 686671974 664507013 425535926 852024470 773342415 884135110 397734607 74152889 46929624 414372748 865964342 671404623 271874513 933537787 943688041 678189400 962423420 891771817 149363931 487316954 13244315 79264662 806509691 509787025 376161986 87164621 958768275 329806657 110527507 142641861 904818619 657818726 423409924 995954164 208242892 524898502 741780381 119363909 215620749 441738538 602951670 24360271 283334876 863699030 763388717 400419664 166247599 995049946 379581898 333047388 7471106 158479606 551507033 768737673 312470277 292117182 113889135 334570428 951057143 537873055 115215847 394684753 694715531 683972492 770964597 938329436 894556460 460761091 822904308 191992076 978671752 414048695 307113917 286303386 434122769 337723603 447415738 756554010 137207688 505020456 905201918 422471522 645016795 822378579 42935051 811507177 905136955 147410015 874010324 469422793 334508702 940115144 478852955 598199385 627505791 539710572 447692456 112264396 90517773 762601366 731558414 329927309 370475953 845938622 285150178 773923127 421056504 676647170 326868496 858004890 183066780 657885501 843036182 463557236 979222173 25084748 110330530 694593856 744193921 296805752 639337713 138625213 21815914 742273260 34720952 891501042 909960553 901116207 174121773 206654767 776566405 704814202 335996318 476365635 255651835 26277527 119732413 151229572 866645535 476124219 517379942 973513417 491027779 323994703 59935250 470298886 47633932 117144029 557031361 843304372 29145519 800059910 317000390 331509675 258395712 931723241 953620499 526949025 352799594 536964884 321037432 404573069 386442268 142016248 139075641 171158939 560376779 577734759 149014255 753638300 126435590 951471139 116906934 827376078 30492478 847374799 877322385 517444339 318324556 595710748 237425022 327258618 705002046 341452496 466215760 93283232 352617107 662445342 704442992 511760707 131220284 999185447 465491594 831211488 674804009 492618543 992172156 256800191 333119852 238993374 403663068 633528531 596776501 815580069 942726256 975657139 669947519 799561319 684963387 929044589 415186553 171959954 696468977 990528435 392339855 357817225 527224066 255446633 98762907 950328256 641692890 299545090 419880288 26495921 868055497 710952085 8352746 472435672 615884123 583847967 592891987 520558008 775503673 510067550 199728223 591988112 185240689 362627934 864246970 759643018 494700476 31778002 112472609 301294317 32806663 474128519 110497495 431294731 623733444 578860590 227372822 830169858 871837648 930163116 911784302 910604967 113887021 850157026 648695760 662467367 584535764 783196437 203244934 514665772 799771292 229045544 163830109 117026675 741157364 686558859 677970304 876051307 581703154 385870551 304609343 573935556 642238268 271327966 244271240 324509197 369906763 571177305 398701279 519724975 717546002 357106530 73365509 540019674 653938317 899531138 691697039 17855759 841388159 72068214 417058096 820272166 321074010 903750606 883216896 55525355 175697510 930407674 583197125 199419728 22418533 719242984 840168307 470415002 907581264 869088504 760555057 622177125 215730519 826233028 257584466 403210837 289151649 33858600 758926349 927128824 622355325 914172806 803733631 545462265 891954394 820310665 11153256 706878937 645039663 705001995 312550477 341151755 457036127 138881293 263090037 663027802 822649878 203275720 654367802 845611359 930683071 193966953 700350519 597252864 148690571 709225786 825672130 275238598 120013056 837207565 659319462 444221097 587719333 111032834 794925210 591433644 961351228 167828474 381321888 804965198 411124018 516400147 400302694 12459582 812810463 333963135 503612298 385690002 279595373 238907507 123092402 622534990 589221150 486516427 825387128 367488222 676017989 659622200 207106903 572448297 144945417 441186370 99188261 971732897 484868593 44835509 986786267 498593930 988216614 868277286 119556187 571829557 390728535 29135233 686903840 537114725 620503773 319947087 331136168 906236292 48303202 433822459 698585690 235134892 394568281 653833418 424244697 712534749 467156116 717369954 22140851 567917634 181551057 70803827 633212033 292277162 872030429 55819792 95120000 581432364 258496456 923070077 772866664 691826841 488525054 783969128 116968741 937035084 655531149 109161728 448727593 227269998 702439770 688716585 935366436 758962889 654288403 409697735 302375210 101907016 718773934 82237203 888231253 988168413 659141504 365508892 537217990 866225548 983800218 295477933 761760650 240613829 962951594 62237392 273866935 62352581 967739820 616524610 480076220 723931878 121583244 621656468 35708508 30286699 790635245 101519227 282991192 44695164 533220007 813646359 547734591 815557941 870946166 173572831 824167925 728527339 484977827 60384688 45004954 875988741 498253117 657823623 989255542 560223975 171549589 701218593 359656867 281844358 679716956 419411065 89761742 876915321 93504089 849435123 690341370 534030356 529799346 239208042 139526188 984457300 150466672 446434779 723566331 18741084 461726972 283604203 150999351 316436534 753019891 463578553 554379216 253947379 278700130 87444480 376260907 101264479 426014496 289491434 798650926 706387994 15092700 213117554 407514511 922103667 336621600 814339729 616449709 992573897 934513217 879586424 512548348 797954195 549990957 700042298 932634086 597118182 173712428 739817328 490945961 48087815 653060836 338245000 372546183 179001703 689689744 146720480 562130547 533844078 621316362 263795299 259039622 27569295 670810645 358285490 158111320 265778075 332864527 866658137 277745672 300281939 925046079 602726636 5280042 691933580 190959857 607231368 496794279 836437984 690179814 106955238 348101961 540525914 873058022 894138160 139053200 344745501 744126054 673630808 716655943 569216681 803740113 145476524 808457133 453897151 193067052 229264853 306942823 759579634 862188705 230424550 355016383 819834421 710899243 264480855 796811753 256688588 39814096 217910405 36337273 288166310 324339600 566728201 928434275 902122591 944150973 355489109 691798299 208181332 981021469 645532262 739338735 179386663 333439810 930482612 794799173 233454668 814889237 31685070 719455807 930753114 284088597 314065447 6948977 859116073 882641596 713272412 587406062 625729369 920257502 298254217 107457886 791669138 811692095 674083767 877626396 86842769 387305325 976775976 439555244 178077415 611601132 678482002 567279554 873024433 193833420 639120077 452775212 50464145 184346695 83269016 326425358 988070176 149276166 498330417 168395349 160743388 872210420 293053220 564106510 780522592 17769415 815774997 504047947 590622098 714810887 76337675 834180943 185843986 322285020 824081395 500296453 922549047 794651376 833190046 632493527 954318018 450493396 137199486 451319811 433632859 620036938 22467088 719646040 463708014 659630583 280575190 437978708 856844838 196354483 462852053 409901541 737174275 18755665 42271842 818790650 448243272 87125272 391177808 378674959 63267060 441870078 477734611 238264522 322673209 132216402 68039600 428498252 1075909 278232856 18659365 545724374 490215460 229161043 889220447 472128685 658931296 157187052 276072993 233027199 726387491 892095482 968227084 578590752 944429755 581750519 966962766 357983934 570573475 576467067 910445503 955484961 886368605 431335024 406645373 698748333 504991952 297131690 266320292 258679693 308418482 871875054 633370374 318330634 19138456 564376772 347824490 538060282 75617907 752613766 354789353 518863282 245256061 619951800 123264777 331244712 222044024 111552142 137733021 696448841 693179380 409968505 995891865 460314000 790452132 827586993 842947293 413472927 730432866 470219667 183908325 508068093 867470237 458068798 717799212 393637319 116853825 871155945 590188453 917891019 220470988 210287023 377191962 573836975 94278660 674260766 20323666 940082196 25056632 699237447 234241442 521688143 787677273 821890371 637930687 103741769 651823750 467159196 485905953 771512978 461196970 219171260 396337356 247611527 911136894 582391080 386358317 517514367 452798854 481779224 204850494 187738448 461354994 144741820 263375673 117246000 106455219 835732041 323077161 371648791 952323370 172148426 267434388 85038924 972274186 515868611 974602519 952080597 756064475 348353004 601194466 955550193 778995532 263250703 726236745 172663008 698255635 12789398 430391152 344826132 208238522 609876785 34343060 500637533 385104830 17602393 869734934 935424684 564866917 496179184 964884930 350152107 415695627 349217844 38703488 262086734 18859683 432097149 199593659 768311849 712724722 123984676 262604273 971202088 445347196 714471537 327971388 848886774 9704173 229113501 116750228 225948125 998562742 70351059 103415241 668473020 786602019 348883706 524490684 421620322 922058568 942225641 976196453 362991426 140554109 696102665 748472344 328748327 91242016 249652626 228566682 275949643 708921546 482753261 8834589 136265567 682139622 216131368 658715957 72531745 172605056 267486217 871775509 594063953 335000106 610741315 295838044 723316258 235401544 374294071 671989793 800097156 921393491 421624796 518312414 791902763 929238542 18779383 693771439 753301952 98038103 283472297 184235181 12650440 81353825 789764456 495351773 118139573 510615837 873583080 913124452 737261583 360585108 115822375 91749334 88235205 421411705 748159015 57752477 804209456 90303048 848858734 381581879 181594444 776153239 312222179 109170980 967819495 387454839 286224017 623349441 4383406 214246504 228802142 256053875 461339764 815349577 280521625 513371701 168152069 980339065 603016614 100015055 383009398 491864475 910418574 588004823 320119993 749078916 54751334 527693774 343714891 507811486 76368135 671122837 677018191 464317051 838809633 490596088 138385587 522739855 943722163 799593489 196697151 940492864 242546894 955597786 438320346 961326316 873101654 339852148 648856840 194876610 780217398 496018323 452432031 268046919 759058217 428338628 646901625 526745055 250532482 842513293 471893749 527238097 147701682 496609887 315312569 638178374 354003336 699102859 286652242 298745495 71497967 469523594 393569625 158149956 218508598 168585448 626212602 131059752 741045229 809198363 451647906 150809284 290988845 58136146 524727410 667197270 418138976 642938870 530026807 784479484 401688921 685739675 206972175 678830600 733560418 339538322 1947605 491442978 765978817 40895628 438685866 928008215 285237800 75580647 627816725 565025806 449710608 333844355 916913546 903784508 13120070 153094086 383898131 445532708 48175007 769445694 767184251 666107541 566939842 817522389 838947629 644969743 28021709 902004137 314954056 688218277 365334561 748941006 528798815 297794855 893667516 809717159 554349286 237124955 782769058 173571521 491694321 225657497 649495726 360654253 105541011 186252833 558587587 92430685 473644814 514602889 107074500 19937186 998288822 142558257 739768395 179601127 631598309 66851123 296512719 274921693 741371276 785228388 273795058 585799639 506241926 128954392 857408924 596336929 289507433 804613493 812039743 413279725 89715630 987877215 728474436 531481564 217419259 795205996 64166531 563165820 389677037 428853622 871447357 417062841 995246575 49529816 489192657 827433674 450576176 868895628 554692666 955568024 414617431 816546266 309437886 845875794 886425259 259668698 795219599 295694744 361550060 253862663 512799819 916139840 382253414 391638750 171894708 185425108 573961176 574601248 930817574 451309431 73688858 370581481 883335399 587087449 823684724 42437675 641181700 453663475 917676635 242047105 565409747 518349581 953860538 65983147 41970236 258039817 260391876 789391547 139432951 584881782 358923465 909240403 711847083 221516041 940352949 108204674 694749140 633405714 283208197 483381709 840170597 655786939 960870285 604178281 790289855 969470935 227604013 747037103 590178686 902030248 75609862 255899316 933739615 474903902 430472743 516014550 628690231 946483411 764482707 333717040 950504239 953451429 571749821 696026729 231131094 427037716 959070946 564452162 275041624 460329541 506964990 373489973 872715647 134232078 154530767 918720681 147370983 309840204 959979890 205879600 931434000 768415150 121091236 639522655 449106046 657118096 579252406 764632624 16390932 251917520 685050574 846532494 637553255 382692736 219760358 429745584 523123461 385047569 522474677 384032749 412510992 544197770 391603618 673039926 186559390 327026660 51393669 872168543 240539546 421975206 442819163 78281352 176789239 521477952 769730887 897986854 569605407 549263649 151624263 55278515 356274248 180862919 567855901 807529061 117288516 802057254 887444891 953289176 682310896 952000486 160482442 988000652 674784133 511839020 21024076 970518687 308156834 97616404 438314830 330995493 21215700 2966544 400606226 475336522 67876968 482938130 351499905 642462475 395127612 234849526 273443715 478935005 822973890 802807370 45341954 74170904 908107413 425051808 194923112 710873564 681093885 405710726 805310059 14737353 841032255 998618322 496623723 562382374 678170071 607901207 338949038 543444374 61024517 870398490 822924125 155934013 436398786 196251839 360300763 811223170 871273659 889943313 181964982 672970590 199968956 116229221 998137145 447729445 143616317 567916646 932561947 734157392 736094401 318082140 454556436 642730820 5216379 987246306 973438986 428474011 927748732 704431507 510443006 647273897 623916999 221331425 797955139 334189249 156603143 359078343 68837900 25692699 621384952 616463300 162243827 129181477 27822933 487339752 168943730 798436400 491038840 595367920 180950597 641124291 555838938 830443024 899570482 65941366 149039802 235288611 928971014 611149519 836016705 52828569 675404885 950785398 341199332 684521155 622721166 291371021 771214262 694273684 47380630 812418946 313150301 462136430 675424667 721639297 307044569 634694081 713760001 920784760 604027133 965693222 579012631 117143859 680119223 284190045 931743645 243565905 845486343 918835001 563988011 364577004 23750972 35281407 820369752 430209446 232268503 465481274 669329342 751316766 43609075 654043114 117398782 98001414 293062561 632851643 395564758 462633953 515538652 523339958 70021700 468561026 770320872 187207405 91242332 773722091 525364943 782232068 547310525 930973452 878041574 415975596 30322286 537006734 36411310 250437852 183266184 622455888 732266168 834517848 87033511 882077127 822687866 560148915 36024123 978662482 718020855 806754370 252547520 412005495 763297627 877372958 356026434 545124413 824262283 973971082 114924466 410989657 717803245 695794140 594971096 186086885 359099329 879774061 426911247 413995273 637577664 917438420 389096183 274605171 457105134 143421648 719211757 748543237 55699151 244246555 353507405 82427748 250220670 196184526 308038363 464321649 344977510 221557459 698373580 763962497 291212386 240757402 192638371 950542723 417004048 858330993 286692242 338096588 399894451 336654927 224756366 683898032 971124728 948131945 643556946 360579223 608974045 357281334 291221887 302956939 44098607 792423302 561433863 582738067 188314508 853664680 323673787 755331558 865250227 601337780 857297183 593092254 932926705 839020947 973928336 97484745 976870071 876017684 522197078 755672411 998510255 862152073 934845453 919441987 497035806 36781509 817674702 626855309 111777301 828448297 510308766 786960423 579154465 973215014 165767785 733191283 207039336 377202714 384017449 528658267 901338707 927540400 749239255 357636768 240332634 359224311 757405839 861451458 127346881 300612969 684786865 671906523 857399285 664738479 136033215 857641365 155638152 188555693 23637516 88967476 371895709 953144138 562210158 523118740 911060414 469055393 730696703 917743986 151722181 427746055 570569977 987274271 561236211 682959200 156801299 436211751 512235616 970624437 796942430 130590139 284845586 801489457 555270743 93151836 551912999 300829670 525471394 782316865 736247829 4865676 203916731 508320973 743550853 854721451 263799761 843197060 728861715 620115209 630338661 148533114 66047341 745413837 515760748 838447699 8596358 204349251 237013495 553199790 575627549 492047008 15835522 951092694 635430935 15152608 168739689 852838040 401531268 657875325 980755447 730085249 656873928 793472105 440948016 340904912 441944944 776842840 687692229 403855306 623590150 149170965 484916301 791228443 28468999 693062763 59151841 756510590 494777318 271286107 963786056 997167079 704421260 141774971 884873739 368842074 408623229 461198729 506517175 406554313 945272883 966031528 92322108 795326115 514628479 796117395 844688722 457495360 432425210 16798466 375793630 978449976 377100717 562785426 620503700 769109500 682862577 360831989 288753022 825958829 780658733 258029657 65582901 707481671 791019409 213646175 238138531 988272868 269729695 257061148 231436551 381750332 101393501 616982906 660399683 478090075 593421279 851385537 662275333 67969148 371564406 188202901 346636023 504646306 329051326 801279986 616321397 111440917 255928938 811083476 409272617 28763203 801087743 186958114 114350225 841962362 354580259 207422955 265210085 993701525 616699544 874343040 949996814 592746759 129037444 355000704 33996149 444636619 666910094 279476178 555237932 457821326 375316002 784569665 713573867 206403836 404116941 319273496 389928297 571237833 318067340 237756187 981753746 644414692 27606358 759062020 864731933 902802391 950541458 12125127 622796811 320465379 391569724 435749992 792568286 501163762 91104487 289296975 526997943 43799083 550029561 488245692 22032266 824604725 934936308 944005207 452910231 139348784 959971760 745331588 179596165 642388527 143489793 759179557 240684434 271922646 22587892 8380555 648057752 755556360 756052416 443166059 72718790 635397636 686343717 450524908 9610142 471377505 773254664 13726919 829532748 483879960 467152416 2207904 578358277 859007661 38475347 188585767 42673366 544536985 53132688 554300270 647838680 819750696 396505162 668389945 17205947 333431498 707934107 571676342 484101811 554187998 734508489 912529690 293380806 443191383 705936393 613935536 214230591 668493071 975409779 184070570 438903069 315953005 903708106 925604407 343898361 433629145 131299292 21167369 700207430 923797596 250426966 121627726 620019036 390417599 174826188 45862887 796384164 588060975 721264880 26060560 964120892 632907387 309134795 488078045 867436283 237720694 220380539 230787385 436654912 744304198 742639199 578462730 638579422 959369961 498376191 771907036 517392197 795036038 4763949 173399572 958479012 954113336 761427676 689200639 768766776 963586634 832003469 503035934 801350969 702201504 887686146 974882553 818923919 567238720 955112470 720873960 728888680 489822067 567593813 282435054 168019383 874871730 757874897 493310191 845601104 75866734 501253279 324515117 812495858 362309431 404916878 926230074 513651227 61424128 20623635 532582051 454043981 457592936 880386889 864265869 794217588 749883536 537712076 736664907 24769337 920441952 228317106 727388235 116987360 828449172 684191421 185580344 748709344 199290908 871282774 272747745 78243687 601245130 99544182 213450302 804870715 551398193 171865415 70137068 238224665 32377499 170306151 306688846 916793978 279060975 443741775 732718183 26046749 804854834 59145324 588356765 164198954 43909331 106556725 354794426 660142796 419855808 339999171 193933582 286371038 884345373 878935582 773400811 34455882 401185985 538077907 91389761 311952550 210472585 25415734 227969581 981715038 568141734 688161152 644668299 961456147 872589186 403370874 810910343 35940052 764342315 932287139 89261432 150950665 274995100 557859019 151952361 629156343 552396998 273514576 476208802 453661474 824031401 669604156 696241904 156818306 344363866 104173513 258759033 525141778 241613854 335087669 500254120 195380587 371958945 175297467 783773375 917276674 166024415 584961828 774590052 672161027 394492688 417995686 445569446 303079137 281269955 869878426 579293069 794606589 534756600 734270585 399594034 836162042 266104429 523900980 173850643 43479765 414462278 720617942 360184611 730042953 822997374 241736867 997598444 389397458 672446060 803464945 898108002 853850084 41000892 417958041 132646391 738377985 959245082 327133052 535533322 238636746 890560171 520024566 492609980 571460055 113885692 604085780 193292433 577687589 509591398 780724016 349719761 525420884 269119980 929272605 879137822 198847753 855752647 637161959 257413412 820885242 268572634 894914999 5215302 538259759 875638263 242726735 438659344 603127350 825846556 880804778 545715855 716476314 980418819 64511421 214735611 128024642 445260934 565864906 768313785 389569822 668186587 60133361 361022688 739142485 862770959 615243677 870064222 958617151 596969552 243881854 168446607 714603108 405450450 982820822 311661396 992666202 367376988 254051490 196279346 605125336 4305911 344537493 634120211 504878854 827075689 354059757 554899391 953598632 825136380 934684611 535277274 517749881 83392676 963467570 840440482 474468769 370649291 165677465 990337388 598431757 452268391 822860485 695366408 98019023 650346440 614328570 772624346 621569401 278059154 134388160 312518063 342436689 205376594 130355225 336424679 793963979 842056935 207912088 871067536 638301155 464284824 345156221 992313319 124474189 301754797 601484364 389438527 466170026 159956336 795925143 918720043 307372714 194671894 20944083 192042974 908535490 984658974 963338217 467941450 618641094 194859335 900799683 271205249 79011272 877153097 946558715 664380739 397444412 236425033 153726041 777417421 577811777 727723847 668650589 913822395 592610873 156596734 475551766 93134998 207449815 360036559 117780653 140493281 998328312 286529274 198652310 254713083 816110716 481302305 129700048 869480251 952267458 508486367 396992560 782357211 946596263 102050639 501156287 56198065 743130275 339060833 960318855 68999705 200589140 756303005 166370265 497513987 267244811 399387875 705587387 528518979 937966299 300786405 914997496 364948668 294182956 818760973 711302134 982173096 15786975 840480947 316153923 898138488 400506551 131444784 15435677 607327721 681962727 903872171 349255759 567010089 770371491 133932016 362479273 122130225 804234555 371859311 840697098 864414045 718772981 297146732 907209598 440186781 817570965 616345163 729940629 2513205 758682504 573549481 89875432 447966734 450945177 34933060 377199552 682262689 187689588 908968783 113264537 116835448 797603706 564947584 908334116 44412686 345595366 962307493 287555696 191324488 715172984 73321068 284095336 606024806 58389249 935177550 688818238 805604442 603509936 479010228 943583106 667817179 106366362 106787058 471429118 650304850 661555764 88637301 370728684 187101665 389850863 1862526 974747758 883233580 962909346 279240618 681026045 109760068 814237197 366653126 216622832 101621774 937203170 824734475 664818651 772137738 244598062 806398944 721712192 578379378 457904072 624573599 561884616 436986179 13885030 277341440 217743951 864704706 930532252 104088736 963300689 303205747 278246948 369897416 358542817 689248749 327295579 830980097 943362799 141737462 923758407 667851691 329030631 47505675 931785826 262985463 409786076 854269578 925457004 381644122 770568938 25072976 467037859 788764207 400580972 987630188 380526758 862024246 42126067 774358184 698253361 520734350 102085655 901202208 726037642 378563275 415370527 588897120 780456215 222154264 655629836 766501083 133540309 169064080 477420446 850384562 666604449 497792373 667015790 116058618 102766801 308940246 556285520 19506552 497231132 336781349 994545519 101134915 504752918 930604233 528689597 694141928 70726167 795314637 97458731 241813455 347021085 95181128 429746083 410258796 861153557 255842785 673452475 361365943 993283638 307509925 315617518 912672605 60769779 923813674 172121164 715813931 32487490 702598000 63585708 834981004 546895355 324023256 260529297 539332556 863460372 610081695 235215448 968638694 716632198 729712944 978233682 678711248 290887812 123010271 685576734 556251375 624834691 683587236 718416789 701990803 451975033 995459229 811835303 529683873 156617675 438153347 708854489 563482650 241128941 803299320 446605967 553097020 415996967 933422267 283418270 833933832 598753158 112102642 132371941 579764694 602238159 375225348 822391269 302135500 663681712 112572451 802247910 609251363 962403941 36106913 65552139 937114354 490798523 482047811 936461464 348096202 52528559 706576999 142469831 569313346 715424311 530179837 471293967 923386723 942453852 977290696 88288052 21232516 373527052 653186698 389869555 276334072 979148850 47820553 658358031 157953841 907050430 724082187 8341181 122214468 767404727 779920114 31414318 559046790 934620174 416780212 451326984 149926039 936176440 67867528 659065272 46230518 452498361 327828594 533373961 436516186 896168686 798567365 34541840 476629992 655902430 462048750 287696038 872954429 565006559 690548026 846008920 897378063 144456146 24062552 973158787 288830576 576615863 976886095 949141042 302664125 485084232 930513405 592024274 85818223 528554847 418510013 828054818 514153995 349310060 339721738 474603376 447830062 607048837 842588689 829332908 165072462 176904786 124717678 359451679 587206526 595734059 975597348 959115197 575678607 278378957 848342796 479073350 615309393 122414733 768914625 818530703 550985965 242209722 108701532 897013313 513186626 833976364 302084275 213179561 170073541 538591682 326317962 336948910 252247840 440092482 699539160 605739608 231600067 682377407 423209607 324456337 381982166 633405550 368424084 687406961 572897964 952274778 967263004 482063467 925127694 854289614 904520728 140390405 116397108 881307999 298223378 967141383 532621234 163041387 52251686 393577497 900109073 683238101 813850515 118271204 229790604 126332451 519177436 808902182 169615983 681501936 326732100 955554265 535519330 205230470 941963487 10127233 906937432 746207949 544252940 232438071 680267846 150374332 247235496 355034845 861685025 9411156 920304179 468313849 370621169 599662456 561483978 547727067 865341221 767093592 211189414 572127682 324508512 561277697 65012113 218494015 259648503 474985428 260930933 387458873 153596723 281349418 416926509 613548030 300709000 801008859 583609372 755833367 98688646 406433843 343188111 615846711 6624907 928017762 777876419 262623049 691086800 257640297 196732659 135061233 338232358 78516571 869780801 471414733 465211342 933955811 130581399 983283673 947996735 253206068 795970635 830597295 703867001 110116891 672747018 301920389 323155926 46055361 235229172 872743089 975659588 716362993 991994483 494140352 426337768 907364844 684676648 452721324 817071452 978687190 707642817 657285796 524874856 173129003 25989042 437842061 562363096 121175270 273767974 151902977 180066691 282301604 310119562 167935591 695864870 869404431 800742808 304329399 154868234 195114567 178526669 615256507 178441940 956888 924098615 373364658 462453079 169857478 901017765 458943742 975309312 207719123 940314467 277537370 925172219 792726370 182472459 560048549 400655199 306245923 147572639 442275133 368711155 812683880 138976331 254697511 192074483 186379363 32257320 794254203 345059108 923995102 749998312 423125994 206726558 991251789 827651923 191760127 326436515 591780550 877583535 281184016 354895048 777738259 998466162 724738762 42869173 145147263 446161681 756919232 403275318 262158494 162113274 344439951 322775258 183784051 82846054 237400770 3899673 690604975 649921379 733650946 799444791 288030007 431066206 780782217 661631531 721798035 951272886 134175527 876050757 795708920 9176807 634678112 68169001 251888953 95735411 217974240 811370421 518294783 62075818 385939670 998837291 451707798 919777611 474616032 897017407 905942773 227889030 743080889 885238033 280315179 952464892 865297553 859283520 852306986 401000694 531060156 935031891 463056286 498868178 602559118 495079252 211749935 942991378 379613684 856333462 803526494 147402383 285281542 851562131 72873086 183322171 384028429 919936559 610229463 978633575 375822286 53090468 391375077 524487102 159714615 506155169 176852564 990585580 662892668 924913350 455730687 846590573 832783703 667563114 884028015 930150365 9567437 679303235 454096029 829154413 333624782 783485756 318640106 28227024 434572310 277982474 551161733 193150041 449173362 824824698 504763504 619750131 547058857 327576288 862930997 86039447 843850920 868272854 134925207 18796952 659054945 406574084 356427998 342290020 886173822 285327126 530580245 530338293 277784839 687307251 421467623 384520595 904415381 236859446 406375727 812068455 985350867 875080779 789789133 457719046 209760676 758065815 701195602 552709369 912733823 31308226 716498974 267332396 10656911 102155787 367426430 49313415 183853917 133928557 590560232 134589998 979147784 839868084 468035608 878448166 221165144 861078857 907637431 7247942 167997713 647955778 88294460 629492318 407358666 667379884 133676237 886536899 737242515 350464360 894464919 849339979 405957567 574460152 137365701 182675712 97699118 629409930 436281397 881350932 336630256 480206693 99329192 664107280 279250573 863733047 745750193 977756651 164330701 523351251 615177299 658069380 804684815 902282923 597361086 841995894 105791111 13070211 35537897 709046370 293396565 688078062 243598833 423123939 96944635 435013257 666141975 683786964 192538725 142844650 191010621 887996280 723085602 308385020 909671739 321376888 359952939 365557587 763783008 397036518 21394093 417324855 299460959 375967239 188869959 120132573 326543627 839023560 847636106 3038013 106004798 885617778 306061757 306901283 766782294 542220497 42619898 112262670 293052473 472465781 738657987 29035916 813425890 384049012 341540593 21877360 421397630 66142681 424646449 640741358 699890881 372199946 815944190 547678607 254535487 744770593 205245394 931683390 407305033 262741986 219440975 380391486 620587028 769232916 693721731 782108589 123231308 894553742 383753360 792258980 185070023 241944256 846896893 432915103 14120028 268667866 827931264 367226551 973832555 411071004 779293150 460612425 516150792 731837640 125834196 566240265 524284596 408273079 264349339 98240887 545388473 185421437 648884212 348240269 492812187 583518971 242065665 112699889 750893927 376702817 8167394 587180988 363008594 771262114 526768389 873458555 735246754 756728918 947228172 154967833 272690806 96420354 105308571 694846616 803634675 247237402 511240209 992276 423654946 564157896 203971603 479342287 142746524 670865436 318172435 501881681 711705361 786081434 96629056 995031381 225188886 885926629 449859312 177502562 790933193 571649248 512253175 737323430 877119880 733627759 54996562 699995551 428585095 35730947 429320424 247440194 398257197 588874957 776444378 696139149 893472122 167789737 885589587 400950165 93428576 672742859 729671408 330034778 485831114 887710848 700857492 11788634 782986223 493888943 840789562 377781954 366915306 707185614 35266330 337286359 524109437 834430241 174948320 628995878 51726985 67802327 140770324 458774983 992979048 877122311 570073210 860198760 101481365 597431378 812889637 900793441 506003854 254284892 503449363 297927718 405359222 175301182 402309475 654861793 170971067 360511939 712900510 230926271 822435609 636697305 455455303 463142030 2966372 985265882 603913565 460110332 798014843 650956001 765658876 257245838 116403535 194602290 437885795 619221782 816421827 435048507 276723128 720195445 864958831 32804060 90302381 499653902 80971686 417187493 622472334 619643558 732416176 857490503 903562066 182941854 595265421 243830952 487246239 144564093 692898803 959876951 133647134 42500148 38913804 809153158 942989908 400286934 32045353 681621915 307895646 902962080 371021003 300569601 156712895 346828410 145410564 221484190 42201861 285693314 830095974 208585170 405176935 58243927 148792580 638345710 127514203 13206605 288034719 241475595 767171504 482028172 184398356 187931335 813621282 990312471 69988859 192725927 210187042 609249243 981660086 641583011 618287721 58908173 477989888 991999974 807111218 602384670 103211992 807357580 943681251 153802176 813499837 708607395 597522555 350632701 56933334 187325701 829178190 406595579 4126213 264703183 320603509 569411492 566014383 202790855 951986780 552904545 122493255 478048688 109520166 192426130 652367307 830039166 606265594 612553750 122752291 186425770 506366534 850486860 523656359 282408521 397260564 223958551 724990539 465150083 586986266 17149941 2642608 966495203 452507844 351585825 764149967 114604524 218829320 214985678 329053277 247674603 787646289 457091908 228371367 863172946 744431972 727773603 289945005 261525875 802812784 134722255 745832159 499926875 814604639 357339123 605067712 586963229 44436340 187320634 595495502 552601392 807714574 117766987 634357196 807764167 648864970 80061352 195995942 332178600 259204828 836394678 859726499 837331256 508641047 396854832 235666576 968297123 284965760 502498616 381635791 11439885 808144381 665215363 845858025 209069930 848058094 903303969 704517280 514297647 411090715 697648265 728815472 644807470 104745929 560567037 207591810 724119765 78259210 538964940 242141014 54018656 582971192 719847311 222455852 675902564 139493760 855747546 691263991 443480329 657333497 733886213 338400546 647334613 972561542 740434374 61061023 438674974 489584093 62657785 40241340 210216043 78308590 673571164 409528605 134464848 652994968 283660217 22541746 854995974 7739642 376572715 120895079 824475750 319227320 205741621 778451107 403832208 243552889 284758087 992636888 371839969 348562241 334910224 221322694 455431806 893528502 252213977 801065662 31687760 29787994 342845237 533571354 82675165 74730649 576210990 814479803 20208940 591329198 545912160 327751354 876613599 27349578 222299997 186990879 406911853 274770543 669480615 768812620 602781598 690224603 209588276 19325911 175834901 946338418 10979330 781914500 828389924 558591392 477062746 746387375 26943940 397546986 819641253 135986327 593635076 165210600 448929274 245028502 443835611 783134106 858881150 735272844 770491730 701368033 785732226 674462531 589031894 625556800 652088766 10462753 405783698 380121191 461666595 225301653 665362808 463081550 635587584 744010330 74473950 648074361 611635844 788288978 950429871 490948632 314917958 360847522 864501718 955112743 184035150 727567561 585236913 216432424 995460373 126595099 237569422 441490801 978391960 57474359 471283321 209284646 741116135 473360112 956988470 845008319 987547985 601217207 129076417 233732210 394996621 409234050 904202397 407290421 505342345 678409660 402523877 945479153 566545776 336351057 335424506 994028233 64245590 995346002 995554464 483324634 538560320 988655900 680713694 126757749 995973996 28538184 627352949 48589951 673232845 172216407 734199723 973000184 809873931 239941151 860700160 785141866 967688891 44346901 595496195 36567393 79794467 642176559 827096734 577426652 506234804 541765334 891680227 285950755 424983239 303081116 706634567 530782191 33732972 819479116 89080317 501342716 193986719 883788320 450948524 78327922 48264304 444967300 846687655 654641071 731538592 293184972 47686226 459374541 361564053 175973997 531191366 38031976 781299298 844519911 254932631 190492346 269086701 428411220 689869114 114640592 231924031 993060020 903330138 244311974 819373644 407804963 817943760 705186934 930055663 771341678 33178177 979195343 129214750 701340435 768907452 276792915 180943754 65853046 835562235 127629812 69104511 69080122 754852168 202464018 967499509 730787941 207829803 99141183 808923453 624990640 272522926 253220308 289614826 881638622 744817801 689755392 519325204 129785961 188699946 193139375 273883462 770902351 874020396 797833504 634534192 782610909 426402036 48090699 46746191 700221577 991289340 16838987 546892309 6144478 34916775 668942650 43458533 658236708 734063214 965951168 106745682 155451703 497637864 55546928 901867209 7620169 568460725 101408660 822061701 231718738 420931274 102279853 584166773 941421803 583644189 805510854 593171557 629585855 377777792 172965408 596713750 528774213 192808082 903463658 526765730 284656162 275174454 198504272 469240857 923638986 803057710 563683073 820577065 828920204 408848305 65561492 661775155 819563124 337844057 508694527 624768489 126784336 974692958 574731419 28545689 271102308 88889610 451253641 494673291 677442476 544504409 831686239 870095381 247616523 512074816 905831435 123942702 391358664 41896894 664624254 370017982 748812528 220614222 992932160 761458334 858765299 8340063 779237210 182442997 451493808 817418989 980801367 435488365 665627897 610534797 394657856 493614516 5643100 113904391 512914324 580003573 369875513 508468504 597733123 354376972 360508042 32581257 835805058 29047010 417202188 622863823 734874673 109228688 221622148 732262650 650084201 970481789 428846608 804553544 312994403 202292429 342042967 753928 108631890 394257285 406911077 407002135 397579966 999384095 488866239 419214003 997154365 328691637 772096841 708653429 839046591 465120397 389126003 283025223 888112831 797104862 163745054 705573373 720431779 728125297 882087897 433548505 491804103 473840820 132548501 827555080 945543347 141183161 616111114 246333052 154445968 866157795 21431822 402728892 637054163 92560507 5840849 234124850 899450970 268664702 362871589 361668220 37605483 809856284 776077230 278640642 578311997 673288256 14832481 849139612 757783322 912312024 101844219 389374600 137972051 774868281 379805662 927431639 598303143 436322356 532947255 330314095 302370346 414006629 682954674 239141770 757275285 924318066 472106922 187125630 709645754 856010948 813775261 120006927 811884790 708640703 786554740 114005952 224535054 58280191 344834283 859277349 816648859 999960738 631568697 216023447 119062702 762663975 93121130 449384121 135222710 251082199 438559465 592798579 356246031 624426924 335959297 488067748 260250167 664137561 188971009 201913803 841286651 267466705 535895023 42931213 310141707 68379005 88380127 581025465 294259290 871640945 664306217 343695926 224167757 199370217 261222044 148834264 676225824 322611914 150554154 616600245 30722400 881926174 446948991 158932085 28592020 168911488 588049653 332418432 787778002 961158000 78017503 709905522 909870408 505635012 869899079 797737284 627908085 152278716 447473307 686871246 490703363 131873903 721857076 241640033 975614446 918349553 345821667 749914968 303759858 374601453 869135595 142083227 124013351 995653107 942964952 169548427 911384378 913174971 70422998 58422330 326023496 779256796 772801001 560762757 850074601 180453631 873982717 781916335 33928125 556568500 863562245 80200975 474292263 265658372 299743708 687364815 541962420 894773404 685943065 103922303 952195674 867009022 273874082 661425965 755644808 985690409 421270704 900104663 37504922 163050657 844940614 402779752 15585189 586276452 595969570 616289124 407680462 268503145 571500743 485772524 539421337 275087577 970430100 797378123 277924971 265248448 810684581 752600689 531713092 305684152 175788051 744788470 814955863 397147103 470700505 250736016 430629038 837088514 754333059 893076495 790098658 309090757 366424685 298299760 512505604 144678473 205423058 886514470 866115678 14444418 935565935 779185687 380735166 863644455 755586036 195110469 399003987 50901051 927046117 593063099 971093264 666515488 417663034 643186289 874113193 749732069 185880034 480532889 990080856 267098832 172605348 766255169 420833810 232464457 91144406 701438309 543747563 806768521 167453844 255429864 406836804 350889673 680738614 47336576 263721235 336154836 102111436 577606166 595942154 890544368 847085715 445673998 285392944 425875886 257282092 441175466 732130319 338490821 726616641 327580257 428307808 62781792 196023923 336328394 505363748 983346510 272140926 839103368 996784114 180932645 743637401 224932396 57571361 780190269 405249276 146080305 241821951 536333818 663132322 726438866 662249535 972594798 709122629 860929272 341789790 150055685 283704084 85788334 189617935 796435866 950761186 336915414 297809075 486034841 809513783 94854289 184780960 931295343 826712163 182911175 306424565 966515590 739524684 41960652 895404718 497681306 980600393 536629357 659891408 563917758 716043776 312517178 140132350 863760648 957378472 299422107 870277127 403446133 54901633 554829182 383069287 381833168 976391790 929848773 956540006 342025000 263588626 678835398 254040708 396645519 512157493 883973333 313670255 494123948 650655735 673976262 566350400 157702713 197964560 288099076 865892613 115681660 445462005 369512700 882255429 887794335 889943994 351889585 589538672 205045147 983825587 793150178 929580891 734005383 15692483 249719500 235596069 965636122 407718458 896269601 211425761 168688605 56547882 684250264 961096078 379360251 685297237 73461551 603848243 662755262 433288750 561042197 582060938 48759093 896841237 376796712 749543150 209398052 435423551 218226675 730387742 854356894 725825196 118172580 191116616 458740229 839561369 804387199 476527209 868779770 117275336 67988138 117188514 744124894 845194263 831638714 667314664 899989740 792859431 781692106 223747557 58133825 98744498 48538656 18015306 236092401 973770678 657255386 372267815 607476350 191054075 94686450 34933123 297693402 493634895 511115531 169960224 480547916 249502754 843933494 882225005 227274713 323032151 530813714 480930633 464970912 770292774 942904873 299781043 27051743 640111766 926893260 77679531 698050692 748835096 170450692 702458644 826142419 777263192 597566624 934768628 224799996 732008406 579395759 143833626 198032430 510642877 640251459 751245898 629591443 41103774 431681534 86687658 899385850 984937843 370545693 487315711 142326258 993136718 361852081 218529095 896701509 996298163 185668739 542411655 515284138 393232259 95433014 324739269 934236252 833725211 96640520 184142328 931784115 400174892 776730630 15755625 18611147 861968460 709606953 516315365 740794588 721838726 242838095 247031717 777733885 777253829 812250057 275700493 829353623 128666674 522474848 15912465 507671290 425549734 942528869 793750186 159308179 103175641 960826507 338646401 984382340 911178308 842990107 460028662 459600355 433933168 436403300 191597594 920857926 748251967 611673914 601332165 605362728 909297420 955947133 13788298 262849806 618864887 607648930 365944229 943152466 176522817 122318225 31185617 720720510 307609201 201521395 499938960 428201231 903150571 852052682 407900778 820026985 191181785 607729081 72289824 926799984 745539760 601993544 229293431 447789185 749895693 583259741 863889692 436295694 765307045 143672935 688003057 364866049 567633951 932807769 235736891 693759058 533226360 547739614 919414546 428742851 937015092 815643824 589777809 317176442 855722500 940868449 276210343 33354196 266908115 661877560 724944467 468163164 170578061 911285426 917684022 894183558 520913208 707821654 146534405 780118123 195141500 566604027 760497966 132407829 481079483 210165177 600246695 657663385 72733822 338582965 381434538 289289839 857317736 59393552 47933299 771276916 129276516 992094049 392765892 105203977 203569985 67159873 25263046 862416996 90103542 229624114 1302880 108967425 950273867 899874059 211169395 155646388 324593623 890289940 320584176 541051221 510056823 230771816 597389269 401270042 876354611 639975694 375540372 398917527 636769491 942956287 305847156 684729345 153818295 553071670 959134286 787213913 226663475 921167504 733516030 708357661 626214249 424184172 366403283 855131701 430175655 834955396 95351288 790912862 363077573 467596559 189660359 580110383 946210368 737522785 377798896 823635020 115845157 21261798 183129359 791211123 347468067 477898801 307347341 797038305 494318055 872703123 121698921 198253358 99894566 441651327 745966 510470315 86502973 670361497 870991407 440511329 162540109 292415289 362681725 367704873 193076471 229475172 73549039 86713527 133248844 234602257 798543469 106505106 721700355 18406774 704027838 261638703 15446630 325813363 960009950 624876161 434605683 276285007 347579995 189067265 470661974 157446186 33902722 624610186 313510805 631795946 593052398 147847281 85038919 33373218 284723158 936845494 714310229 625795287 230173695 311371640 171153747 386387971 511873109 697433697 559888115 891894508 832273348 297298605 965264656 658737424 444633295 544943411 394001352 55298571 572772796 922967281 793657396 615431763 968376726 220252414 235924347 290072441 11723618 979160538 960838462 513183691 166815553 464748802 260979404 715665520 7666684 688515226 229837256 922400699 716870160 160857807 611279778 572839695 933940947 303259969 420041277 493725709 547789888 545600098 705896765 719541283 868622137 170642265 337675710 529785360 682037631 863854887 429246026 691339821 966439614 164616866 878369753 167765473 180181906 315385358 430632126 190741549 314566057 634316398 325614865 327910851 416457567 455595058 925750339 781718433 114414485 672531526 760223077 856544476 408337303 570602280 331552661 243871387 223401017 33812758 551144031 812795332 905010801 915675897 478589500 407383615 385196376 952127187 912209526 102312173 734599519 261428191 421272007 453270979 229917329 507087524 350486056 460278569 570187955 618272584 285297666 419628006 94971293 187880473 459299481 291699517 627575313 655057158 166004465 440538381 267589522 463264026 775417256 433667613 555519638 624595917 1986318 791715716 578441014 785086840 163179774 118505697 814323535 984426031 501296707 709399522 541406134 369892437 750725830 107301887 802894631 256485172 521705186 25756878 190108917 431121095 125834688 557259596 398283475 543112192 625462886 564505546 866725108 371302563 641771785 746007511 580424137 753979013 481248105 99180058 998064506 541364714 233244726 84891492 703362890 912187138 762794748 842187684 171934730 322308243 212938561 531062026 295734278 756721724 259759592 175077891 559134727 705110510 562344193 616380997 806725888 841786208 608087017 767254472 179504076 766442238 230302121 881340610 25374285 201342437 627041635 810761944 206339801 461462150 893829107 669494472 781931722 329555057 723312411 143362330 294928519 311939236 326451351 600861362 555799244 424560709 534326174 930137836 270224089 373123432 675972671 116304991 516763454 982518519 786450057 142020001 697624298 858680018 660879369 791416368 344699063 36739717 974111549 999330960 147296524 716392278 463998062 248112752 412005195 383659027 698161488 136050278 404500644 635503367 971670837 234014940 746338292 447129215 321641782 709292390 496861366 936671151 657176321 398631942 186549421 809318059 666359534 168364443 86193187 106027796 644002811 66941727 769696000 593174883 319039172 460351659 277626981 502852482 817153594 367649976 780414534 670752881 382787389 732028479 516342169 535487507 234505837 23311069 699292137 300629272 723262746 368670747 995340336 42340080 227843073 15218902 120782449 157354867 806228582 866628479 135813797 303614117 789194404 855132403 561902288 161426907 78203758 474493035 78652800 317324339 84937493 242681568 935461731 829703513 527831157 597121487 509559711 222466824 868898176 2171188 599155719 46889867 92263432 92899799 210412019 75878769 727931461 490481182 797268093 834290455 901678865 478064741 743115521 50085040 837324759 604844655 616549134 844471359 869767726 729176003 449450462 232860582 465428850 11058271 467717587 815571866 151313606 245215534 796474408 884920060 671706672 82299274 906143153 904988803 196395506 787648988 856346714 359893716 47072151 759840882 141215397 687303272 999082868 446353074 260945471 603963717 506070038 406846642 801610597 857409109 98004730 513524450 531788815 420111028 344709734 452088397 453317138 795281254 368335609 84648649 406861061 199771311 638581262 388594755 574742530 377128718 719535581 475988599 271348562 971995667 464547580 930127780 339064566 469914885 210621655 353358167 376019420 695545586 248373831 14063249 909107701 465542783 949495542 138713376 500527652 771907662 18059552 524776882 343424527 176525330 567785410 617320890 265520792 637713378 138410382 164980173 912619961 371418511 589637922 125682203 344259050 29748421 380700371 883401492 102707935 170380931 106635746 470433107 336872208 776343695 71098255 766364938 551844881 975176747 378978996 74785451 949086658 191961596 842822121 276950176 113863509 364944194 569436558 584405822 26404613 85462332 514228282 829836737 528784622 899228524 840658404 850274130 663398443 862544773 678236512 201620235 225872603 71332447 98015941 538145979 417621503 718076345 793952518 403839465 20790858 4287600 201577250 103193782 630325937 541118758 384626654 407868068 775963497 681102122 304715434 168310153 560383057 909350089 458835586 30897087 6944252 58447185 823978287 242553343 293769869 94009743 122683192 845333069 979994211 33397437 306421478 624428458 627031844 517498386 979922804 468859950 489681979 577588661 47567721 78071424 302651290 654453155 837366358 853583169 45907803 510695995 452294111 715491227 650933096 838078777 439854852 16118546 307803304 926788751 913400458 484451767 133409679 403182780 92519984 720840753 790288546 446503642 416351150 72657134 83314552 105531370 687540824 538751314 853893894 244577738 382649787 694740772 259782996 91740670 675948705 855821483 454118996 393547628 829774149 331647778 412619862 498835414 958877683 350346053 996251200 234206239 976081466 971285898 898613713 348560435 180852812 11863475 912050502 644007829 391540478 353385396 776100272 336693735 993632215 443825515 260222485 252598072 598857228 537091100 59266205 897503533 761615596 414356119 927113688 391475207 255586820 351922477 115424862 815261456 512337126 280965372 1092589 817634453 259077197 841700136 697387627 915036230 663400061 742805858 905759817 220370487 566932946 138462340 407776974 11706742 147998741 390141772 848944983 737596581 189968100 629544325 559863248 213518132 322692446 109024984 909421983 267704306 764055857 172003025 781819757 759023174 927735691 829301412 714556953 719172350 522673171 594921108 163212799 770806356 122035869 887790929 254119221 102118261 578711509 619336691 877796083 848812330 687325179 866790104 960800666 736661400 738431927 446836978 650848324 279593047 597249385 459161100 275129539 405406816 540456048 525951707 594472408 109459484 185033749 736396821 158594912 903489402 969348789 66256214 845928723 168326147 394767952 76642851 794951455 962961572 88352657 954223918 101413692 656072950 910746196 550306382 253651602 855363144 884648540 375187364 811514308 607331700 462531187 181519279 657355945 9113496 47953936 352257045 1584285 613544656 328536462 214485417 793148094 119365389 772864220 249118052 687157074 677369338 73443773 602001016 282890994 696860922 75986690 962147649 739997344 832754248 701079643 362742310 955034805 41774092 377522760 717655441 826950600 590101084 789806615 841891 82105222 444224917 108942795 650186708 831892978 840368050 55323724 451691354 100178119 174046865 473911862 886655588 445870275 303224681 931030400 630552369 264073900 491721533 282526135 886057618 965419306 91872731 501572168 534690671 321966766 742310098 235527755 294366194 469514616 442392753 427000894 781304051 654842926 932410040 323149550 326817224 123924399 697051049 652391297 222888197 436119827 102015024 820916035 4972331 327511529 910676279 28165017 481292526 488417171 901092279 761641999 911551277 401752390 355732493 364877468 658219816 937026483 601548925 463416728 498515647 331674469 322869256 413033029 883264818 545511928 943883684 992355883 905052649 618778031 613628003 335639020 693536667 279175505 642611735 211258686 157428382 61627913 285259170 981448079 659671159 153874472 285589844 674195710 245475688 724410155 867228336 700569512 431233793 629434492 579939230 822614686 205970701 494990765 300861676 883907538 127958305 231800921 549172921 134201583 290300669 907799945 365748633 140768181 836809272 482157350 697457378 594363121 733719865 469372246 520973621 806924882 863127088 958429487 747743187 785549817 305335904 289777580 55094181 273572169 372651149 95262602 401184776 682046505 951057521 854763513 756462223 712240977 852014624 307261109 177771282 831187025 693322063 664095441 422049307 653439620 788592413 243219469 245586689 810308664 272317523 578842405 564022551 481278208 385459233 635024691 578540487 927665583 466512105 123169598 93713112 861554468 132467902 117746107 492581487 987062063 139030117 119899925 721795931 558184972 364561027 911955095 795833686 205698634 58971060 430715455 242777979 528650383 340141726 82310996 161507573 220860547 677460273 13524741 829733972 737761446 239842799 100353577 835986802 158038047 508149267 761318857 798592730 148508369 150045008 796714747 289256871 58774103 133007474 749073212 333257059 68431174 480459661 824010515 219873137 579333398 287900523 751045712 247764542 141926950 321423146 278371187 930620006 409966783 328040667 98859197 269210517 921462959 513291964 36948322 259243414 942045646 889411312 961426083 555687912 110927951 230965608 757189354 781301694 699990791 887217795 697907297 68518986 22461032 388704260 905672353 969126621 315481934 880385205 513309707 202208638 473786847 649763821 205538247 8729123 309709960 167418822 886240103 428509727 202346463 189872094 369527248 564529727 569936075 367150019 793377297 12771340 731760653 347633010 732076847 729730639 244196190 200567274 849159873 548541824 753768682 506552923 149756130 793041526 726608872 609701670 747762371 983521268 231057833 666005915 300635313 578822058 7582763 431737505 13944724 705185386 908576595 94949307 376083139 382279229 150600755 32998302 675462455 788820539 353940156 250632305 140995157 348211433 766848853 183829891 611840077 222262728 716754727 286207677 454724000 295157756 816270237 325239426 238956574 644207246 430762798 794683702 274036694 588855275 202037192 634810783 756416674 459276970 358414887 400675259 675198321 254030344 866937556 922137430 947059959 228510973 138593972 999885241 919295173 723442957 403170977 677991886 865096271 71844660 248249394 730668918 770935436 189892042 211835386 82347799 58993106 193858868 399705509 442121547 42064581 496385227 107197026 857302604 708398734 655175447 105348566 881245280 902438791 276222785 902533267 864846508 970612458 94768076 15349412 852518077 637109956 720913143 164294179 334829074 427167088 554738443 336124730 796079310 279116171 782893490 374188977 775051379 686760043 194777335 608096299 303539187 973483363 231159236 638486872 147129701 79322977 182666855 420379702 406484006 839848183 867181473 629640180 373935569 465692160 738239659 815869044 600479690 684179603 818520612 115976492 637226661 391524681 139099040 256730387 361299848 877081231 119686986 242193778 82953202 903226928 431905805 69828636 740959285 407886525 887932531 966708930 391204850 82109229 651945367 615938230 14485834 940549615 178411569 353456747 893746261 841209296 318345563 376825847 720780007 823952424 482299217 586310313 879000514 3456797 78605266 40323508 731488684 621766115 282832804 694703818 672213663 176062648 772399822 568430310 393674660 323017772 387495548 173854804 644035507 986222461 821410361 390896329 290559881 151365742 866068677 172597289 973181480 840996951 848697822 388335758 565881097 838508160 632256897 385236379 327896900 536702407 125809187 409936829 979940859 910328508 399724871 523730628 433420501 225672080 320483539 163049828 573745091 132668117 489949462 682587225 610232386 676297353 540839596 913257222 658240748 798419497 139381531 441884365 926329936 702527104 621066361 8635782 648755753 125098018 524460539 555514416 20114353 499746769 200791663 210859997 995537369 596302999 815764483 170799047 507324853 596218608 171647128 976976435 968144496 511919540 701956803 770362727 197868621 412267967 966337635 979204078 976666417 327001499 282193671 192565917 844241397 566464178 150292333 481835262 929867224 329641728 625911028 634525053 635476539 436487598 271733437 478679258 419249618 924114224 38310730 183230566 860625621 678254080 171750696 636443373 206268382 676960349 520809560 570374378 730767160 18181390 198677702 333802997 933393161 528039599 904167249 944176669 561316455 783933181 306424156 353868591 775014717 124865309 612357750 370502670 9323799 25588851 125877065 942415287 810689295 686868865 739021086 945515132 229655213 656074128 649386901 953826834 290981984 508905978 718000225 97140857 127839071 596054705 361838084 79646915 132951713 23999721 993605580 900805060 688144625 719737833 672949716 264533566 273723535 329658327 747045508 422428898 453539639 666983441 563338346 881155722 204190769 964180493 811985931 425877459 712055923 830132255 326428081 500817816 503121458 176142579 768789125 26275320 830965807 408916974 408662634 69979223 816523922 870265754 608012633 480444775 340592125 12253042 322469515 897584192 963954751 674920639 155438985 443341337 50625779 248342254 149138247 594489059 483038451 813700947 36564780 473070009 269188992 964070791 167107687 505635934 694711873 829627299 925184470 785595269 793531112 381011226 352346735 482600563 502645928 556915623 537994156 172459228 264023012 170398005 624732599 64377559 230387056 191664170 350403169 647387826 11057822 730654612 951444518 185597085 552342764 247977958 545458153 714634306 866006760 709084247 514869121 807974296 597439726 21308702 480914681 424734392 339412420 838220425 758940897 408365799 158169027 572380647 252573994 59027574 131554631 330465557 264362167 440189979 803604517 214286748 139775999 366882124 158005272 223623888 905131407 223922702 461237008 555966694 583493972 343228955 846516063 357831643 671934065 949052024 23557480 540871543 89769566 446369068 726099709 643215972 618228938 64560705 382495177 931463137 288271077 575814165 946753938 32974427 202760579 256057249 943864872 74297571 246860419 317428993 229946098 711401780 206577015 715581495 438206747 57358427 75853456 713786342 478658320 683632305 53173135 50443073 2223746 534370689 375099216 35965401 641211810 513318441 399049135 72197240 836153877 37916260 937936813 716097084 18719388 733905480 631880940 735301940 427890012 491811654 489558681 904896649 286948082 559761289 930658211 346029848 229952382 141574454 162209145 587561896 419061260 323735601 252706409 244878656 372234932 104200294 227684338 654070991 390509891 346233381 565081795 906509703 601611336 281345674 722561042 400163466 680212811 640174132 393208242 929022913 786759061 525133498 576200953 191986374 493803374 139699634 562149409 100486275 616525790 629963681 83474850 527536617 519726467 761984234 193189764 518951200 618514617 753880722 290982389 575306732 708726312 295348139 240149958 239960279 72121925 945482029 592062604 415357172 973203266 447250524 235563473 504637213 652657945 692774903 184373899 206945817 10984719 549887026 53350716 48817842 310400303 320367503 99594779 683225992 407694959 760596535 121863868 981884849 523551617 294530131 170954397 706125234 628969410 961109966 655035215 267013160 429414694 771646308 389517716 475385981 368198020 91553957 167096425 635328846 68502673 271966866 76419889 181806905 325409584 533739276 753953143 792625314 220817551 782929059 929688162 689316360 291661917 395109918 82054998 253393966 113805623 807993199 621171677 56518533 237702095 49464179 731599178 289210651 659707745 189441638 302078801 72691306 391333512 744801456 16104040 601889435 323942312 492532969 295958282 241743963 560733354 179763566 620477256 137977263 235183469 842087220 35571702 991082358 821994455 915009853 42540222 513935292 851752933 50897531 831270487 595458114 415270411 847867155 704382374 61580191 646405018 992180566 313574387 5249704 596613047 573522182 684804231 199184115 419195049 975109070 270695435 784314091 512267281 899197591 271843139 573168526 781143322 330178483 354870174 334954135 784170961 258074688 691407315 679534864 729883838 386950205 509316029 952509707 781561580 88525281 383364146 849454562 872409453 82818104 611974848 123205381 689207693 284269826 208130350 787328861 930484096 50979524 489011381 678799392 461316835 502277223 535077329 855512879 294293277 588099643 759860100 238536036 70740293 476558558 829988512 574077844 204310863 231673550 113001867 638650679 585930461 93795072 307442085 74373781 597162871 840517443 910012281 364528936 733637732 832734673 669456254 979838596 621758813 356046886 133906580 674727647 778607851 606315816 399838597 878433172 333234918 88803414 954338067 43929864 597583711 191616583 215308477 360905437 962690291 690399151 69216425 268457905 799740301 253195309 36182277 993718035 160056183 9425743 937097251 48745257 293144722 699052837 590406162 255440478 3103618 739699555 857260917 268595981 336422704 348013746 247367066 876969821 370787286 299097381 888306639 998344875 878866660 854334467 501306093 632067729 854673279 227873718 481594183 368969552 290045727 293109424 883124752 927487144 242467022 879488068 141024149 161338426 497360688 165427729 341691796 753613491 542244058 796227600 762794700 978957999 849750779 782634669 279314868 464982392 734431508 521443489 923787959 524908424 496560405 876094244 829239726 266501891 647958470 700664210 193792219 812502478 190191150 661729172 482388925 382152954 470501482 239835142 58615055 850067135 760934233 187025676 276767951 66005015 609090645 84040614 916643910 892224366 187073226 548826236 424718242 981150669 725052451 330759410 328396521 857083342 553467421 930694163 308348332 293792903 769355760 995689550 548529345 154288452 940030877 558259332 477020382 511843458 68746382 299065047 727705194 108702729 350580250 810943186 994885406 678172873 977594270 935973169 384486149 174083218 735534541 562269113 102491841 64523702 455020880 826461244 315801586 889663160 511923585 170353643 12553589 516560533 833736455 825214387 348257655 376740128 80273641 640013093 185995756 665954992 787268269 275338017 202177083 848177354 642583344 430528322 744377333 769096195 393679409 123443723 838035598 213709042 794978625 99141895 140418564 120879446 594371939 44642056 808980920 401858948 46995304 785517398 179908662 978419231 54351643 559707911 969152823 570642367 218499481 33566893 272895793 229188640 253572491 401898125 1973652 74175048 744770555 531092681 868226922 257891046 740716848 609385957 369971918 164929909 562030232 553687304 608695574 935622156 734749228 754118990 137202641 782805195 346538116 661885717 59029111 849112353 907862280 220839751 390555162 365515960 879449662 497252064 845665732 219758036 705694353 374787751 312559185 157772008 169813991 523465338 43386702 248094776 902032227 128566480 948991704 495421117 287419915 479473764 699709990 942781097 300496274 483252820 766807001 85798635 258378678 915203497 32944994 638731377 823278965 211262257 975783274 679596762 995513839 838146248 410334780 381308218 891122505 458482106 541959348 957876569 514925337 980119970 563404289 280691124 238730473 232670254 720064823 70939263 184529932 526157338 296291216 200089049 998340217 523458329 514597991 529886175 919941190 644278793 505333260 648443886 614858174 745882986 998199545 441923308 506997041 432213239 92475879 983970234 655065982 689085548 929795310 579094105 602045010 296259095 981021941 141951997 913636486 57641263 233340364 312043467 150830854 200693359 909840381 351706237 771952367 398316335 621596642 866860258 494357563 862602510 126239087 25963451 291695630 470650368 572264497 767586041 55579969 550851072 133620739 178394436 988641735 15764138 769875707 26764994 533771678 622166291 144933117 587049061 636449566 521387926 189767343 546286340 349009627 790073427 266709443 22654883 328316724 303742997 334194711 81943486 19291076 223568111 280932712 654468048 909186155 479080313 583459187 436447195 222213754 350323874 808872513 334360525 884768761 385868244 145498017 733380545 789644097 454353515 697972376 865492070 583155744 541847274 410230428 788790092 840589618 864910966 719377902 368976769 29840894 336000461 40464521 556312901 611159413 251242620 830340725 412658035 235915300 989788353 672514554 433979928 7740112 883812515 558929335 602000731 748427761 104455022 308923999 806521784 476603571 669780142 41877044 881647182 26101496 892899070 880748159 357907855 722191161 155496340 332010660 933534866 138724079 957654471 969546719 850566298 997295839 688712176 206458744 529755612 683159779 408849176 31196988 328737089 158966725 457633396 43357078 264088844 435778372 131140360 610602113 157644964 600387402 545893239 933005920 84809167 842849102 572958800 206343679 278146490 148147085 21016033 715545906 226635324 151898367 141591126 881470828 921703212 488825206 937268585 180089710 242678009 465583293 718262405 325110378 87516499 925358617 737125423 515522846 866954331 491338884 867566264 24958345 120238601 961174241 22561021 5738163 515858504 899802197 308202542 553222578 742517929 213000894 480317652 968534889 600352302 848121589 179888995 690912606 796108827 90071545 117639696 734260507 689371868 417117455 993679062 244236233 816599522 757768041 762902623 640695462 297370038 804394041 856434351 471545402 486068733 150265348 821310844 379271948 803055721 718115554 647037673 314959233 93338459 505383259 841366292 960911159 749354468 101259667 871350980 52946501 560443632 55236317 613781258 987025811 311923516 460936212 373177858 159837474 644582331 867782257 58344885 733040568 61457024 830842848 740360815 833108454 147073872 749211873 761561791 183734602 627616521 989750213 158657238 587369791 835263805 743861737 557591226 247199001 278638860 600637709 646623748 683378410 432527301 468553514 500456356 443395829 289015118 639836465 71042704 578588406 146331525 725242419 159946956 796045235 318313919 811218169 876699477 158737119 231938956 89011228 919731660 334549086 774043763 407514347 667130536 447547416 201058826 40061954 822898277 71063114 974313381 804433555 7789021 53223303 881167166 835750209 474994020 141451411 171309624 98773652 196090711 566166951 737023598 122016270 522242833 708337017 22950355 379541094 741541429 920187587 101413523 481752386 272464326 854124097 283199458 465686970 113653849 804250213 463106651 41174950 123753484 310731565 73595250 845079029 280906562 594730969 818317432 954496913 826611576 502904361 703039245 271462034 901776228 602253400 362292579 920803945 375337750 490399560 224206280 793503561 653080478 54752569 29994483 441738533 764006154 151047705 450293955 990378773 929061303 8149836 730844410 61076603 228081937 595898866 80620598 875442469 319458924 6217941 132272430 832670551 35879645 861246842 523406746 936123681 868451881 44516267 273916498 874784540 698438848 476439032 344724940 383379314 667278684 141141905 81411132 746287318 253218973 668857542 498721621 698014231 740209339 584373998 696427269 218062282 869386014 513411696 123138470 996946574 263343686 248544989 80950435 537660369 513957832 329785117 558745645 772023936 571950410 8116730 787082050 558688041 161263863 585635321 811647090 152806592 489004438 127172840 939463764 635719709 785313001 957042344 268453298 834173907 934287297 123060302 865753117 22874486 70742078 573377605 238299449 337654716 401830899 489246487 261691830 791739044 909344979 921318609 77471507 559288389 717823849 295080184 631336653 318415671 428193456 684535382 529317844 845484330 736195052 520894585 567250869 699196206 430530940 848686842 140497369 405713755 615732271 316089772 765412026 271922853 427954313 257303020 855827183 136793465 472898467 954363309 808520431 501514295 411818664 826168072 755581014 495085100 257629415 796649011 541078731 953539523 888974862 427442794 43990415 191884689 287207370 468863216 515541851 630887433 890652701 264430971 1957746 519183942 145035370 576211251 752991106 923169905 775478100 956651657 701342955 818264075 588858333 247931492 131127163 784855714 410938439 209899615 269697900 602820576 591416863 224326547 605200810 673900750 384588191 853842643 216439950 323291751 708816786 118797606 83715393 281206460 952904925 188930835 212768932 823227417 315747517 417215448 333648470 115671055 609385969 242256796 797591464 27632261 783735761 35609642 425835663 917639810 762540313 503314087 656375487 688395089 704095115 411082855 125470030 833838075 242409705 855287394 258194518 415055642 511094849 664652171 68834508 782775654 635344036 270280973 294205979 535020440 550460827 393139696 151064787 86627960 253748144 76971480 747794396 78093812 331275949 962802931 846573530 264346773 306276852 340799988 886132747 246448693 345446577 451449679 500392887 802095290 835713754 134358965 308331653 258398456 713304212 112485225 709632691 232184953 808940535 58004004 871073810 477423365 545817518 835415746 429984653 446075087 653074435 286016229 302110267 904929037 962176262 11242091 615249386 615612376 978028470 769682914 238190046 284259627 46154042 597104823 88108488 504673258 479232849 93332749 246657908 680038519 825988411 553377437 547449319 420951173 619311360 260094159 647747676 932636106 958290370 662783337 832800101 823372727 265290568 380317386 975826436 459865461 672659751 149721303 223264 35080414 495722745 770512920 200270766 33969116 991676662 764645388 914744263 299809923 568791562 674849887 399956741 161835959 275831832 368774279 407992696 722860289 578504675 872061107 263951066 812064412 175617886 965387900 616869376 212050820 539502261 119111602 668499399 828252872 505268032 224003761 602096103 140677878 404526276 920479338 527291166 532619767 570678287 546760400 754255306 659662815 120379326 710229647 813905090 504853418 337875488 632614511 175318585 504898815 279173509 180660307 433747033 855851277 139390100 691276804 664611811 590987407 312015331 680883724 647939501 481863156 886687621 211709 422519849 255245125 871375966 368755490 552040791 158495268 480999168 642917227 985564844 593122340 107914710 722620577 319823383 530667201 154868453 783597313 475676610 27186696 108054688 422422667 14739600 298934041 636752748 837930225 55047845 760771743 949463263 154354520 654358879 28156892 159310893 577074852 358346037 488053944 252016559 848172670 490699666 389832811 797389414 198295233 925629647 405990421 584595690 652623756 5246295 272841000 279138372 590503456 669306195 823854398 112487152 181541575 783651468 306098778 314816528 56367563 429305734 731120754 744170652 505687182 592045823 444666466 12221482 218403929 219820380 326470424 763499868 811080228 563422523 785629577 668066826 886912216 86564811 280809835 666377807 806720999 235880801 288342468 781597450 445424833 178140128 750163714 224246692 317300044 933623709 655701349 5645554 358669833 15205602 789058789 741499180 725417462 660881379 768259250 707589657 315103512 871218588 664621816 782712446 288392950 502025302 37887621 68044768 302578625 766386248 603135642 355275566 391503537 108633730 838065597 604221770 785672516 882005104 611105409 179139651 725667894 38321372 507728984 234877372 47839304 948252898 381390543 995385353 228522448 999629965 457380406 84710727 377389648 647939896 418233369 932922775 417642937 861247681 483419277 664130560 102616618 913153637 85754466 489091207 586825887 333910065 773236309 390175239 504738709 23277889 208257197 181493569 414154451 848373353 97300051 997038177 662189923 857034384 342488221 156264112 629857721 988059277 75630151 468101569 788039563 562546704 6519452 173793792 421372182 923260052 470962992 527461522 278346549 801519659 152116413 141912733 99359801 522063039 422778064 516010521 939899065 781328563 823594516 123334872 338799212 577396290 36047642 378703747 745842415 705834255 659014161 530573123 827513687 304364052 199435245 60531841 848738831 834144532 787494636 12561338 109403014 115742948 447384670 881613198 648002601 333894605 289558036 517356626 366163241 766019747 173092605 963659879 166202480 388100994 790328532 998479020 912042372 73075160 156339375 791422606 79927958 962758290 895479783 802509649 716874142 840154929 942469062 508940751 99215571 852517707 526184879 557117422 815102672 218122984 125314005 380423364 556205025 416730022 816502207 572797909 919073873 595100630 100087114 690753409 325099282 163683791 784000807 843404987 671197895 491955564 674927465 955527080 940131513 302456619 85366564 142586943 173665314 616634668 507380033 354809092 167437919 207165899 124210155 946133354 438023286 447904569 393644024 934392656 965776136 531988094 811310218 497468229 9426850 522536921 749573055 122255124 901084245 264427096 285173259 82757865 751309829 87883605 758954392 512195668 567134602 332983359 492918434 612342938 445138556 368791844 301477884 932150929 155781907 294394178 859969465 89709939 782014936 487178294 627676272 926690179 949704214 167184830 949678229 717184295 115417223 954525238 453869812 436060330 162084759 564818873 806308762 863565146 774812649 539164991 55448756 349388386 127719153 813000307 128933377 805204284 85641505 339814766 362538412 77198428 223094801 562681635 968285492 205486372 874793160 652275587 47881459 756904041 744018170 629845569 622726642 718281037 391580386 956793472 169430083 334452585 651880482 332206283 535438579 487032739 998371762 524028490 790725573 792271130 253113287 11467774 855536677 197698333 387372939 515702284 826310201 534282246 787487040 360114420 858762247 208764611 66931384 720513349 540063532 585770882 339961170 743778579 357026849 442842947 493575179 361543442 544998751 171914366 206653033 272043042 478297432 597766700 48645849 988480974 763977939 5900089 804410458 982487213 101124920 23109112 519227672 938248912 968466969 612924599 409878533 724675918 561744802 9657181 182938578 353621252 143752532 451849788 687060847 211550189 281223943 553881709 505214585 278702223 283206378 719850341 492269896 188019720 635637427 193057962 334756412 789615238 184340670 80456970 414320958 776833709 498581218 92368497 543933162 713967263 793339231 121173850 926563700 114364973 686375060 119711735 963397585 638250002 700263853 571009862 324594328 460582889 275476880 554837525 820320388 31035289 730637933 939263494 810852740 506919168 753004413 894056760 559905553 286520154 636877453 178621022 356614442 32742711 441455376 191829245 271375970 808945545 182627254 5602374 929545087 275973173 438793080 580831486 835559514 215112684 416265230 878500939 207280445 49327575 47124502 38248165 445341355 723835924 869602799 487404537 139739331 162396323 879753143 873146933 92399413 941609264 894141199 887842634 226213182 984982341 124786338 244934785 378369731 852964025 261274663 696207085 995545314 112908676 953566992 350632156 947586309 577928945 295167241 771057130 197042472 333168195 769470721 375391614 684412676 263380861 901490853 588113749 995839113 832659483 713752976 605524822 959193464 861481126 363208876 299945696 399905740 910396848 691978259 257623905 184319464 247668613 387748324 501422448 350826057 361253541 702092579 132308945 166915934 554385647 736048471 288631054 702176575 73894411 290088228 211166536 407881227 581339789 190943926 315715349 27638351 217356126 510110268 8914075 474703537 670066818 203920211 684112873 485204609 119091596 661539748 235188491 804810384 679524715 751639528 614593875 887925977 643323197 898966097 38953675 942138401 204879574 68271005 653934226 431480197 815939137 50006136 565276141 225641615 280742016 68590357 294369666 206996095 207409877 446736747 421438847 136098349 878155189 779529692 15207765 130704730 961516014 44499171 246446670 734373011 689812807 749334409 261278784 134179772 768875440 438904329 248386713 458288688 743253985 136888336 747063623 686363948 641520568 855481569 638007605 34634247 418810797 808998094 514641244 651848622 265864161 438619602 237709535 935349070 422248376 700761347 505824847 998803340 61178491 880476124 379705122 890535729 780646808 782862082 949545392 137173627 656356569 259829519 233805990 497169995 254997061 311338855 386746065 196873021 270177719 387056732 629684993 364012224 337495657 391728906 433854272 866798232 912610590 387854554 425650690 303934195 428360931 349096434 504663767 113870281 629405322 114804614 202539484 680540926 527717650 448715280 94966845 168427359 745916159 187886464 317429911 635613838 680181678 374213959 77894138 627207762 18937242 513128483 697655362 377430326 854426496 634062525 72763754 176935705 11310518 363868750 62195567 275790995 663120389 659567827 191224929 837953334 980779876 240869544 642852531 498625431 970949374 106594339 961398422 762204768 432066457 10436091 890744319 704576349 971729892 692911393 593025582 998048135 801449555 134881313 941843637 796738930 214921025 994325278 437183943 468914438 440302425 86788966 674879317 603906589 851359690 436306784 982463621 602702712 33874291 824303009 519900260 270086970 460025239 603590034 793126690 468435829 947229624 653582723 714433388 917034346 363282011 955737741 895259791 426714713 876484132 798147248 145562684 291044135 435660757 549005252 691338091 103937075 391357010 975158113 648142261 455910413 117429041 815744164 358990514 266742252 751142613 165843069 901505512 512561158 811291368 398877776 78626103 642629927 608157079 273506991 149069281 879451839 495485297 800780074 190174076 522189271 646066269 501138954 832538593 734016295 764796614 187077463 684293165 140774383 978123797 93610971 235469279 862251268 814321185 815607734 423206264 326201672 385120103 385007310 820206859 418295562 969279682 23544324 771201891 333633119 705074231 598246414 660428803 688086290 546976003 744362751 133512610 513237896 557294088 450934286 456999212 790651450 238591184 633136152 280371405 939108449 700199763 367983453 812045999 485494239 208674867 74329507 373874013 942438466 549361059 825104822 152758368 768927499 807994779 253561455 543257308 823669516 738519214 346808005 791965868 955520470 978662397 779220993 158748094 727923463 935113451 431203835 389360138 5751758 186328427 291871838 987116389 123344801 419530402 137968464 155431354 8813883 678097081 191427094 879434200 478706391 331993836 136609823 417633971 42585586 423503138 477334246 551677934 748996301 35600595 333968302 15617542 240429569 341620131 35230604 351071791 12408912 377105341 430034607 831536045 184383801 139933556 907147295 353736742 179821836 716389137 789771880 691185741 461931096 285064342 23055643 770356803 85310703 115099287 188386606 836080244 298105730 680330390 624942998 691418221 218702531 65249598 524306461 461818746 464987406 387778248 359649299 139265511 404921242 522906198 608940132 869893621 961274621 170005639 164444768 749495194 138963997 626744947 841844971 186688634 204138001 932674444 199329071 685655943 431012318 635883239 601062639 453753687 957743961 363193766 822093627 699686199 59624724 638091921 28803932 16867443 734018685 490800660 37065478 494528374 76787244 219614955 416599234 335525116 23973194 836386197 36651930 445644782 566308811 797522151 319109019 297125547 218226217 654014707 584627065 940205497 789588896 116069892 465958896 62688136 132625526 145519534 711309695 188538975 89463281 540369572 888971164 643290659 330543979 943127047 698960012 781931581 878185624 893590509 915911163 370669525 387978665 127774819 391145330 890853248 372921857 59738789 253402931 559085847 175792411 856640830 602290344 181157294 683371748 64896749 700746265 2230136 464179231 978756423 527183322 236926041 974028904 445565441 587845724 814870966 52496898 725698961 343991247 655474961 686268164 897207510 862189207 426419474 132043002 589917394 184612055 459286831 266819487 640242421 81258450 191815868 971642317 312273768 925820790 482719903 447748392 864994844 503183859 497979309 365443502 535508245 907442940 399464203 833578947 382742637 366124388 372892520 444373727 713845815 209535777 944073980 802647709 562895058 424520640 395430932 674810829 514067405 473421569 176190657 754909325 530467143 961393364 516307162 179790836 714515976 347662341 748281818 57715770 825730726 488471589 590890769 585887471 584257839 699375004 870081025 480679431 42095252 845495255 2288943 100238356 47229529 792590639 196722103 927043822 155138854 261905778 608053202 2708630 975556917 879783857 918553540 647105903 571038759 829784551 513256449 909919603 846673735 264478407 157598680 88732288 448386094 66309660 973847915 910044723 622080941 385058094 922836203 837141740 415368582 284033837 40202429 385644220 656054114 822978659 586835907 361420632 560646408 338288674 79995449 552716302 39177778 19198652 54184172 717121613 258506832 997362418 696108387 78359485 306491672 230757927 292531859 33623127 957079248 132980515 643922336 783114027 196241655 270963746 675897324 365548769 381249244 728361302 25958244 764241844 418263786 17543523 865748333 541667024 955044983 463697940 272789344 753959720 718222873 975857447 985922849 534184027 532172775 861036981 6386860 691832446 280348585 765189255 557846962 652145229 896396809 661758778 571332563 132876480 112906549 583916881 300233267 152617939 459366669 34767179 635244187 722621095 304821068 907711043 751085585 461641618 874429648 287035729 838679042 256894856 404966403 661738839 588928371 374123368 200041747 924638690 987195457 779866242 8749835 31844276 227377733 436828408 140757965 460547963 645259024 509607514 359658330 47393439 154229661 376694055 159471084 167351504 425821820 868342767 555776773 71339858 456819218 141869150 879849590 900168111 962036318 789179432 646046219 598901732 842402858 311689001 82622890 912132836 921321465 99578081 309349126 46025095 673146315 321170668 933591980 294691036 853475092 5395293 148072062 156776355 822460274 812999876 558749362 712180652 165203972 613380333 423906605 676167375 972332984 146091714 260985760 72056471 695076157 265095938 643168637 430979870 339784679 625846727 685948058 205488201 590486747 383735659 516332185 119689457 363924164 105947293 150734012 135880074 709998588 376973158 804935947 240904585 759680340 545512388 342912745 703516687 177274963 91522207 52626911 815568418 677784101 984262085 957696674 474840589 469261152 60664664 892201815 169168652 729433163 747128838 734977530 990510027 390507204 27814294 313845135 218695742 223836687 919241544 703879011 534662325 352698444 329372552 847289883 739708024 810034435 835380250 862984954 951005351 852516832 839607522 757195274 342429189 959124342 952106299 914383452 999383092 137022012 460217685 887868367 646024314 803080215 284307516 421288140 352962644 507060578 727490389 260568060 462469971 749237576 416051437 193230373 31223983 950188845 312363336 86834118 460279223 357562621 282974788 793028477 33866968 687329202 737307355 603399714 497266173 543993164 180515330 616270524 464444924 158849431 637192351 737060656 519207550 316358079 624436129 872298513 780701007 619339898 528438740 243167927 669065852 17372755 316553378 648119587 513851870 807866818 134644020 110367442 271494629 274225375 861909189 203228105 349114054 348721172 483851355 526322780 568048654 997609811 236885547 37509274 423155421 453912459 348607314 951838943 875321181 676255816 787790437 825166329 607989911 59422049 184597496 426253896 265579833 225297919 695462808 655780824 963862034 304460074 351338608 556594966 883938978 429684332 548863713 768672829 941897305 318950303 936545341 975279167 267421354 820764103 160800264 910377793 443896170 198701334 697989804 706173093 299177286 471720512 116794539 28730843 880317498 320192270 685776012 601475113 356554928 674607427 311508596 85747706 747316169 166692083 214295430 752803715 923734078 99653110 516928551 643012290 350998063 991528218 479253053 703387109 478962167 454053534 469291443 744730026 515444997 546128670 795711127 680912037 413282055 376637238 603666504 46728781 738170317 290053007 424681109 349238642 795627377 997227241 953906679 598453289 300173824 549787186 552843696 691971944 776527489 825462318 764828625 278904855 745464656 253579702 36587636 550311804 910003819 531813542 227393554 564634739 144559458 716675744 136765041 837077890 117045472 450222346 315613758 658330254 533535556 253970639 257182185 933397184 181651744 132700436 352643925 395927117 157640204 834140743 445826598 711988600 692747219 875046324 861475344 914920305 279087406 61927724 843349685 236000555 824191042 838231919 381569537 850422844 715930404 679220456 211212826 108152406 284789206 995435466 201656916 183863719 170759274 756300078 785308016 59420517 424725160 704357112 1168947 682463487 334602385 444980235 964107291 400389071 42163169 155812842 99296344 189956503 277826897 455809016 552254440 398808675 813277327 750707191 542438390 71723621 816483647 413056321 444626968 457713376 444560819 665367771 796794886 658295280 949871747 582850805 869514769 45210363 652202572 34920393 727912845 734401431 403249553 435936267 310568070 682918282 560508950 430408723 618245947 225051964 17858396 326326877 431144939 365921625 241718360 608701805 778881786 628170682 923348028 320712740 75173247 826486779 111279060 677739612 456959046 384749998 71926890 798466124 363113664 837939151 898402622 10434838 640068187 329076955 132751257 962429601 419851114 214531232 341649240 91409121 851819635 716553374 50709014 433967597 220607219 105331984 657719295 945966166 519506768 844342531 908041879 350177633 149124472 353465653 356870503 570791516 665051818 884056791 673734505 311053892 674688779 680355856 294226994 930539309 182962939 145037991 927770472 965008526 339581598 174932689 597038882 376862613 33523643 389985681 543328422 654799458 973174727 284965929 576791918 647564192 417195489 544678498 705334079 55451067 107006173 215533638 160165601 177504914 432447094 263333209 758211871 266252208 821170850 810456435 700651732 29058047 816094267 337667947 412811676 272788818 298003347 259416121 128110668 189154655 404427590 667523719 884710370 175478206 176872784 106972972 604736593 542712214 931487226 613721366 73253429 95262426 315083407 375033329 823371217 201546422 395533549 272979008 690687398 95264054 254397590 859707842 520413566 907778404 518337750 545881522 723592176 365414538 936823215 53624399 551685202 419583388 622994188 879043270 676002214 251688286 412983536 975708035 478179344 42903940 785254509 305360592 359590890 608616118 655317153 467384161 725100231 756679550 877650559 625649487 31389433 444050436 1228374 595865547 353862062 522562734 954210683 730941261 421411287 442234763 976578932 632271118 531057806 754672608 306210685 637282578 751764474 653656830 34575847 720222904 539609834 746783619 928234656 912744964 647483044 851043029 787224857 514751171 890720611 573415379 135987455 586620101 419091573 845947536 617184674 523920631 692150969 476644572 505330936 546146687 88648061 27106450 518126763 171482536 262672202 706905302 558670704 33704832 948005634 904885219 380136910 319203591 23946373 481545579 105512697 211525723 161423876 397959729 70818389 474714633 547166016 350782142 665630220 121164910 292630637 604641880 931714374 404284169 45871207 871670542 352323910 25379922 120323216 518341638 177239160 230449932 868648267 629280360 945878147 578033665 90748277 586696105 292112061 172018307 100098244 356096858 661631705 505732630 711025357 362708921 796366819 866326709 781805403 122769832 264586846 19389993 173215720 527851248 755921608 575972419 644855651 485599049 775063642 96788141 812056046 514776988 135972873 223152915 598445027 981436282 847734096 918653852 246472893 835741549 237047147 147824493 167747574 914978838 779051184 854276955 285389281 825488346 748101464 172403297 421029633 709929113 276062898 997665135 562856957 390385288 41800080 944218334 340520576 114979683 605270504 413655375 406098964 108061585 449082202 983004134 696125514 262501814 398936339 622361100 230708497 618834857 884949920 37728572 247489234 30903664 224927784 958991389 424564271 40602277 896026 654081849 631041432 526037773 849202680 317020904 759574167 831935680 790421670 867267189 254524717 414307657 27757160 310426549 334153397 928935697 988752097 520520073 376799340 479096958 626728409 302998256 291908533 779370621 528603031 482675774 917729007 755887939 612287286 97689175 35036632 555593621 683433489 60225960 950923033 579919040 310891041 523036675 702467488 364298451 483372134 947266514 707531816 211470722 223834508 136336315 738292879 289667348 750839314 547185651 893715025 998234802 223032092 741434224 213130593 757511925 370534507 451711842 123049889 483711734 173006923 502723063 486593443 544066571 299509051 644657092 185316834 259261254 733542383 996021648 670762149 543493470 5103344 454700401 576878044 3530127 881975785 273812388 368069306 427727655 704223796 189229645 768641337 770584891 122686045 922663852 512182967 537647189 512004190 63626244 701699856 130077463 290069657 857161518 220408238 277167958 328134990 539584837 793564551 359259961 336100045 454910615 776240021 330268058 855454117 585293258 41695910 969459814 313450634 903919586 153502359 216304688 247813594 369137083 318519288 933830374 816995462 416691358 94754280 126093900 229898126 956125101 122889387 489052090 559944034 981689153 388014509 303685383 750128481 417482654 200151969 227989791 315571626 250787973 961182753 236305512 752222306 238324479 499334360 432762397 987269554 819659251 670166430 823059872 824612008 443939257 465260532 950836998 793844599 461743770 642809155 376088383 372736796 20144186 269725001 329858667 123756506 876342160 791485639 487187719 337298226 260523872 399078758 427800754 716811619 186970191 700219516 137502928 513748535 544650161 884119386 788622486 485026164 154002821 984720511 658985222 228312029 923774957 477497081 770399069 980987269 17507606 422587701 697173956 143363280 199540338 981839568 987257072 828839428 201203308 602727077 338081006 677613637 436676218 37398283 98967603 690979881 907210037 290887330 227488971 77723110 368631177 83336680 436957334 563299233 866871772 960238350 37926072 799607868 171671976 623529846 934087865 539214872 773687744 745784514 262631781 138012702 947759387 701314166 200637682 298412144 734017947 941657079 660399814 550401761 217890786 46373242 421004570 375255509 54096782 857184383 10216984 645854395 254405919 907928999 1971023 880176009 461220138 647278523 95131441 581942212 556721427 235720999 274060700 920610458 570623130 658964927 558251811 932897642 940715466 22339034 818964164 559932695 640171908 591081310 874945794 119399907 828343699 176581290 137671477 868799233 367470546 271608358 422917695 847327227 9986165 867316990 815936884 993969277 134467327 257034695 532819791 139283510 68713479 945873639 633936550 759821905 839226719 776680600 530783867 581098294 220842540 231322495 504708923 587559724 162960298 127287870 487083809 804633233 153042283 678475839 10896156 282732349 27360819 804310836 793433243 779607589 280729848 852975540 770748227 807874110 814622964 903255699 576273293 362254845 165156273 411810825 624343834 71071334 830163939 873470728 577863273 831024491 601319586 480936172 157513766 991940643 809274117 217566241 482904914 855271061 333704629 825280433 853457312 790912242 234092305 836999439 983434072 968656251 87298239 951199302 203968308 315865722 925319687 65209502 522776176 536860854 71881642 318210611 949209289 804349993 914220586 941694120 508979349 699502877 58538123 578019627 914007839 751032077 142617304 909326202 988966206 846930394 829221106 270379574 391770683 777365070 815457994 801902404 291985481 378471222 502119504 123257979 47539282 91523876 854595867 776102481 59978577 985593358 582112131 218450642 861405707 991067059 886897684 85971370 490870059 837767689 928335459 639464230 556630952 755961899 462670415 274912715 497875621 92926370 408521336 307631505 506290225 1593145 264269109 664749790 732604472 29185505 794786675 898034954 767431194 835330354 480352614 914554924 97483336 738382180 509049281 72224967 96548867 80494130 753023863 95079224 444917347 185866500 492291418 182554579 342027503 861574365 910066160 380374244 554905913 395866353 976797832 569525798 488901748 178937056 36028745 698275062 263971281 478435208 767144321 517467997 365234599 620267739 228762127 269226581 119707804 733107597 608386333 304007496 946394481 167123335 789648386 549616261 734730979 820981621 828843620 922252936 833731893 254607481 247328875 441871456 746144008 246677050 900388371 136435365 615490989 750410898 472774799 17236539 532220644 423802350 760092044 491374619 963415562 258435966 670536107 898588725 569114715 944190594 70807479 429511635 737240990 250091580 632250120 885410850 667379201 14116902 856424661 957263103 708415228 57960561 977017152 60093978 110540678 737940946 848351907 133634195 678752166 109811006 727833649 425847104 602241163 529408650 356429391 961463898 549880950 178331646 975930931 862321597 46228012 122763221 809715211 832442784 920017134 591274563 790599541 571925638 251890568 832739821 524245000 817124716 378733254 461626447 763808002 644559378 447979855 564736392 938204197 793305801 605556597 597669419 232800189 904293617 961455649 975115525 22856887 273406859 347713278 488814112 35057950 287429801 289654400 513842221 3696096 286967853 812276387 813416850 296295520 386449828 862277166 895212059 329747871 512013232 525345354 355456048 248274593 953092355 646808240 283398627 945089866 968901549 531249459 925977906 106033956 290600809 850656354 873589001 567933547 218957153 507345827 236139180 512389094 812200280 986920184 762657527 147319060 216990502 727712210 414060364 410636305 393940529 339374416 555747811 261523558 767350625 766498975 879648378 504634141 649449328 899900919 903625075 719650104 4142506 937526938 433084508 166132269 239025921 383181595 752337632 438473655 181201775 727332891 209567532 570297721 138643733 263076604 998983893 856744379 832866471 215920933 261486521 997497539 271968963 80671116 927375292 951951693 224298547 921251086 97172822 8717394 906348963 364448484 1519583 167006920 391497860 498129733 843600292 703533609 219308843 83878378 971034209 533004723 80239249 984573864 224915172 694104008 238683322 490562630 877048094 838186136 435689647 941494484 292997186 358468434 339018955 858635006 529705126 48822038 55962879 816829134 403720775 612722347 2702823 381934152 489262811 361698797 765564064 255136368 760955716 289061592 85857992 825949755 334214405 602441625 916805393 56742862 763438191 484430718 228118072 426155229 208991231 661610707 309576612 901196978 455631002 317827616 813014719 800059803 203709822 369388734 960464824 636277546 103497508 852439782 387012276 523224454 10650780 494452425 250989331 673626517 998843604 506965636 651172914 189657581 384720613 574738221 503953044 923353928 219194526 160398264 117346615 309063813 529963736 927171270 72708186 319643371 629521229 231924152 890996336 489446371 980740668 869708010 348030838 66030741 276614338 997401303 82404410 721083783 188559688 64535935 75913439 732989160 605029019 873505868 746333480 364208322 673997104 870541281 558879132 940868852 408953463 380083704 469272838 892162234 498995840 84073107 217501791 340558443 533616759 556996818 590693421 229620027 812170978 161110614 898357290 194691069 987287730 553916730 433806374 37448690 47215519 971315580 60961058 677617689 110964077 99919895 18130913 564830381 407291622 217333611 287659829 10021633 762100071 994524378 834140986 739343148 882059935 896571389 165899816 753750653 409672768 386264362 303871714 965116053 527244324 130646458 542368434 819943009 837190694 99797845 127253604 558649517 177386917 571624755 83976794 910786425 550821038 810974911 795115677 333283064 331652205 347394080 26720890 608791857 342232312 864964125 262033846 398299065 567175139 151946666 13027357 875918986 125581284 414725290 862291493 515053751 713315178 313890622 169694340 804160679 873959483 50476362 394083681 963270034 942808827 695763805 768747501 744557231 449920121 494783106 272458545 79733175 758704429 747634513 717449115 914016465 345009368 553389211 525647728 118551390 917725232 586181728 685377674 421851985 182872774 518372241 251582868 120280676 812806684 364731352 354587160 433752880 106356206 14116496 105554805 818438672 69925845 480196797 483817995 810066220 631617056 622833998 406424158 225459103 18943421 780386613 83877106 775059175 902264332 46072429 728223038 66167145 164971124 691364609 560742379 466014336 582548901 835479374 550382687 534836523 627448792 653364845 846133193 300600149 232558061 283775915 903106711 111837616 469986610 386221248 814989156 119779791 685930779 145420029 944271000 116593432 792072943 887813550 119711648 218951651 437230076 140058415 941332300 380654558 310876086 331704502 977061210 786728757 378437223 552751342 720445241 862817589 376555280 83188276 876657200 178860981 1339024 127830028 208381262 603507248 802061231 851796845 374187611 708845770 978858145 790602547 93940852 171973504 200989110 681291685 104613380 134333559 856929907 793698506 992345581 771698146 528576439 345902909 821433235 450707105 125644070 30514559 621288953 249530664 23172358 601990484 833185267 84870982 131458272 533883852 462957552 759071925 929433750 256517785 649071717 494219687 351920737 10498311 484014713 938312357 924084523 70723585 730979448 979533547 136261683 536476875 623323326 609071909 666955689 664404104 29574607 917065900 772840403 262700890 483693372 346254197 239548188 408805393 892874911 123785739 688431849 922574257 675607459 698685584 181141712 286910079 702531153 543538438 721175749 819492069 553399316 197441487 500959860 459844164 715862093 282562939 161397824 648221096 450279986 314956959 699051893 791182599 685256069 647719932 620030386 145999657 131755543 18973941 405730421 385613120 703392525 149454640 745285159 27886663 620827575 662099183 731104407 773198326 224183447 199281214 723879106 602754941 914466553 740971378 431183323 898010454 850580059 483755027 675128205 966415215 762099464 807197750 830915185 902136497 903059457 952007259 837675700 316442010 856319222 306176851 200203534 916846118 562866198 128115538 745096142 263698331 496763706 49265312 452373836 977945346 505066892 646702603 990567946 558596653 84919066 692065225 706827652 717815642 430982048 823998163 727084202 691274441 31474113 126785395 45388926 842551852 982050522 385884392 914448566 469182971 559189024 728934526 390958508 646127760 625528065 651566790 172980172 492990064 922057792 519214912 810601770 957811580 65563009 216081718 323894138 793210313 647166083 246246968 85796465 950338146 494345914 133096686 920225281 607621874 127275478 965064576 725572816 725906224 523559740 420785820 716727548 366548899 931829663 55621221 983692692 990083884 206963106 265487967 669911645 908413790 190538238 908853722 230580272 96697802 908529829 592134809 968045212 531284522 307700878 200892612 603683263 123094932 835257121 199696324 431399779 173317039 483483478 576614081 81583929 72719326 261080920 722041657 113815578 182706566 475843259 78431796 237904097 942577487 816175561 1161231 261159821 27926737 213602249 111745925 350608095 665867893 200504996 657086029 917918369 913305173 423414868 89588185 643055129 218516055 708700364 346482457 729646963 766800982 977586602 815407454 612555 335958728 38077591 503274540 156512372 14425963 460704719 412535000 992896073 882402794 557417170 301407519 582761059 133933230 260462729 220675079 175191679 285988901 357854745 785054122 826575132 191947710 775721511 799397958 604933073 178328818 674531195 587529672 607514544 600993034 204728602 679232717 389681822 134885332 254782651 40359160 337358226 647649694 260972660 539122446 654405173 442078704 230045845 407490443 182459087 750767927 2333361 15364858 172554878 185782397 181589999 673878629 409635062 562340446 800234862 677952950 843914674 800915339 781824317 352528394 753600155 925395266 58373578 20332445 451632850 74788390 811273625 386980076 156156386 238001217 246582476 136168749 928766993 800687523 269362714 429471524 720935326 367750488 47827988 517746640 479612465 807352495 609457208 37939212 460825097 858847353 638180684 919219237 826156004 499116996 246660931 705331498 917849980 50406138 680756714 533480958 852917526 610826243 429027235 891575632 180986260 529066307 196854988 22213734 251214597 429718257 162730511 582097439 3751687 480056990 87674636 120042493 969957134 557059708 92493715 488408407 580594220 186147519 335350638 789220397 731232976 606454681 955582301 44145358 950934214 121704462 617169365 330813234 467121109 609083649 154755540 48471277 663264850 904882742 735606058 483781305 19955854 543795042 858684760 594300436 178637426 99635247 538967359 154470992 656002015 216722121 839423955 578894412 650076568 199308781 883271486 548256403 71571675 429473766 605253539 293160955 162918928 703158418 349768911 704695022 671725182 261176255 487168044 101342859 716879165 341141958 171632756 367507301 71208462 56664895 432354212 77752902 267610062 125802535 739025415 937029261 278732113 940623911 907971611 203686920 98438126 133570073 161010768 794235639 188152426 3263891 439339940 883139981 660810340 738817169 54487502 427391620 63755401 998138745 735034294 536560163 895893013 597273123 99027844 475981972 371874865 983287584 401105802 92084209 346669954 237494546 701308829 419400370 364188033 42523082 446208925 358359752 733108411 111805294 714918513 938849187 521794323 338550557 481827945 904493382 940957662 485233484 752975661 76011384 678780120 663286411 584048717 21708756 55402296 640413384 136238535 588051080 940086766 474348162 945313945 852638517 602847685 233931965 341824150 15433545 753244566 170728801 615543760 211204947 900856240 916370128 352124526 875964034 245817874 45711617 745311420 284348375 258905661 582407276 393726751 341876765 528532679 880942450 878013339 463262122 72265567 918910328 108780633 315563232 773219919 918134888 887511521 655601664 250506085 28901378 828296631 261060453 823413359 773897149 543932271 306465105 168999043 209097790 913852359 248866126 396074285 491721540 690307729 957352009 387796031 868761462 898971715 148951973 629347110 526588464 123247315 672035685 23798832 932316247 62589899 240707903 684552420 991497239 335678648 980195680 237471570 527138473 158202829 964919906 999133502 214962659 362249758 400363614 470234088 377281852 46473875 486965604 883213211 91069762 452240386 589209929 222214724 879890153 135143576 166997006 341370651 608416049 660889820 236608262 146018337 493718317 734859291 17658657 736388735 64973895 768312427 524735261 355571879 942554581 663981744 498779273 734591235 298341450 898856030 124400872 451014190 418724173 883076350 832264894 601773753 319488252 870156610 254892713 12711488 766731908 744742126 1478796 896471868 428417219 350537118 758146273 537931726 484439211 402706961 53637777 329940958 131449405 715853069 623261440 689828569 139341120 277820153 417879006 986485843 998116250 645281233 939594970 718980901 496317924 866734740 446255775 642167412 331542348 869285509 52230327 376049232 968232947 487705597 551121697 630964881 272070933 174104976 961950 260197963 312318420 361604995 833803241 611079674 436897082 886617972 315774260 256076122 13997386 396166362 322165955 292429824 639017213 590970707 832860892 114129775 153794277 531413653 432686772 252050950 852062931 196126838 154783433 857752525 990081082 8143166 608398155 925665639 836830265 391758140 60305508 902314256 748677251 590984511 864262228 222066285 215631708 730832357 24791209 655119909 354762155 702074672 646636723 59161299 214063457 186756387 426432331 736685060 170470015 597415376 575875857 223051091 661324835 130384606 682459904 575136896 372409642 575159615 608565657 79590329 972387361 322164814 714619477 698888938 692781411 250325498 393096045 497474231 303493312 690005051 564620838 139221380 814756989 574111586 648106853 562317977 890311071 622834037 89943320 58565225 78790535 609572479 514799022 650971953 149555984 981155153 218471694 844918937 578883925 748715993 569248346 508396908 596505168 676168631 474246342 928664634 302023484 495892713 805820112 757044472 600472774 94447986 80810831 787400913 397094033 897989218 381721319 649789367 747062435 453264454 812096780 956734363 831423947 175837399 14154501 419449793 441245424 944576026 394849980 938963671 906451442 721022198 949684884 162296349 248474929 411111727 360864622 835040337 501215170 226464729 812946849 220102968 205553283 236962511 540985843 525493196 150241805 232193201 642457523 801885229 73054541 407076023 397444607 923905812 953128422 996874951 67866191 179403327 469996359 623172578 838159664 233958578 861594521 81122515 209421336 302291776 187294459 604019374 208755404 322083362 804713092 545213730 739549218 351101545 589669674 265376859 714947396 142071898 865732970 781486053 707612211 88568497 558532256 19893618 12281752 79443545 490504979 257373802 244504650 43160191 354458318 399975388 89969903 559415751 961737788 911702177 701108155 168082277 988122132 721316163 859357923 86740928 752518931 288089485 940190757 968295703 766256261 430885134 624615161 343385350 827192905 504612189 399596830 204430462 198791783 771579027 562295611 921070793 786924150 249288545 450182993 14095309 772939367 380154657 514949454 982491274 139813108 545447161 777387385 412485774 36011233 977399534 985676552 808755965 898147808 702651789 192146657 432961118 701909899 370800548 173086833 242189652 115468900 81315642 673720696 992728166 444444937 233847897 579674067 302372678 188082581 169810703 472544799 753596648 626991850 482616593 976103266 983787727 104294485 293709982 269832105 869767723 572074170 897221755 266371226 128874485 890035987 586514957 885639686 5185499 129412594 657442199 43237795 651770967 665180544 330566793 831892063 495250284 798981626 463648027 977548248 634893067 132449282 382977862 257164153 384011354 442594669 15769550 624996287 654982460 583126296 557231683 433685921 991933039 753684503 877406455 135120526 530659121 853646922 706928978 622637252 415460223 690125073 656693379 558220634 972221328 926931943 266075964 793742439 544377958 84997164 218051697 459031579 273689055 415327801 691828336 42717646 672978093 348919309 798787174 559982223 447399176 34891198 719700840 993634038 606155688 606362097 38045462 46697939 651528904 306439671 406182251 413617091 383749533 629477229 346876180 115642669 396321943 837512529 260737805 687603582 823877703 291372848 804027867 596386487 551282596 519461278 406206276 796065406 829625953 617355886 945448512 802843409 35389724 473370618 760119974 609029219 925683114 115598355 111781584 534253311 345464370 721561279 929887260 321495597 671396822 991355757 857816529 299341664 754567034 117355957 566388019 756955694 703657829 962313626 550440344 965590230 836920535 957144575 522322062 606797105 462266890 200043622 806237240 38462369 559564921 874851474 506348660 706655602 657153549 78242114 154969436 281644005 273341255 525876702 447144497 308651270 379332840 737834316 566138263 259679266 472759952 663431873 862899131 942715015 175332320 982802034 724601166 954598220 990889899 860170044 931438172 543589492 340203276 72578871 653954776 560154021 231589501 674312541 780757179 972244269 801011235 326182354 534309055 936131744 303132373 176500568 896703074 609930885 331298045 780626148 231858928 957671501 140412781 882700050 148667687 127059176 48707557 148974847 441764758 71510400 240024776 779804265 18244753 562827784 417597125 22362222 778551457 830757144 642220762 26030995 972752640 196622368 577306932 348972824 463993337 526613062 514763092 518550902 542464198 501253302 309257806 450242957 48332184 537969834 871305535 951659339 103692383 188247141 488884363 367538790 244571365 331044711 108282955 728160798 369338070 566000945 17608442 444615032 706726874 216840165 800319082 459547500 315751156 565184390 192597457 371094641 792990761 887946056 26208595 590722507 214871761 468431712 370879805 498028608 562970308 416583724 157894218 813829709 862997828 737505696 24999141 204227426 862953235 963483268 225729971 287914780 606534586 55460901 51357584 71716399 97090059 109867047 713444819 642866642 402849562 541319612 994566439 960395615 131054869 295973823 309636669 511620064 814312477 442685624 702705390 644971349 187389067 922937255 334108710 701644756 783897059 484604887 296774249 378408090 804349364 963088733 322153863 579696756 208224551 556275826 363427636 983960507 318410797 135454245 297518511 198958612 683129307 467302197 94222966 654178561 998926983 470329439 467220360 210346795 643792119 511804445 392182597 735616033 64111257 405440487 528561326 680198328 22124334 761509674 245115425 208767650 148419830 512909979 384550163 662916227 689416455 987143545 645236785 891018498 472337375 711733990 595107232 650834317 378507801 465434354 796681677 342961492 735386802 636070571 297796856 555844720 71038504 886586349 775961217 31147569 393019574 940132895 995719004 444224662 743715047 706273085 73166877 773077407 181160938 714492904 47046064 889942196 475631647 382878772 471476738 977891763 388763040 268992275 574052887 560492094 454537386 57447296 915467489 407453165 432917839 446305030 264971483 315263551 259358799 271488130 312481227 427670078 475623037 696393979 446263271 302081141 464198605 439341885 102463467 280674558 174625634 904752094 976303258 384592121 476751443 49924453 215203657 831828105 578432823 222908427 988880614 693076664 273784148 897200799 376607285 872700858 772355058 673951670 566333346 730931449 814699491 182016421 438739364 955595807 451819011 543310818 935872712 432194139 72026648 269678640 939098093 658634662 937491879 452653311 103095605 591160781 623852504 375014590 850703118 923547915 832535353 183545667 965864277 448066683 483332831 420810107 35645545 921208814 559274926 438591155 490605310 956135815 727662120 736979159 441710633 309352325 972063065 859866805 865808305 237667185 456486912 146294931 675172966 504849628 527079060 355519863 731113741 676335589 790195845 779740955 868803602 742043733 216343733 677271070 692823479 333094097 411367376 65080280 984330823 126173988 583588895 786300645 560604259 837861332 12288623 447271516 421857592 5386737 191000630 281203472 999812870 163909138 5537207 60442445 833686296 675492796 240209385 66741067 838800649 457241574 711570876 325831620 410291277 882381635 747129109 956862439 886326968 527776566 902872076 388529356 591289463 24757897 168841158 599861677 561115533 911659885 23584069 443089249 443277932 449907124 373833075 733896941 630374607 972844654 543011960 491865080 603990280 52030596 933380962 852580589 409347569 752406657 847312442 787815587 112785905 72801769 284135916 210765672 604981179 683848292 850165010 987078207 146736204 353097597 286266679 569526854 675778560 963184379 832064031 702895724 119348986 193713422 906880019 712658978 939560119 536677646 250301937 782362156 154205688 423668 161246914 331710362 690077089 329004691 45169179 696133569 881219526 963435081 398568706 203397580 474554952 278068617 316841006 386909528 345697218 540951010 256845430 122792407 210962086 199595597 299022496 177815648 863837451 261141157 290269143 525803939 941936645 901177333 654944388 744856189 740906013 521306524 836772346 33818654 277772908 437237291 980275610 93861019 94288701 568900808 692233254 992824591 968499694 260308834 754761481 498577020 228739833 17495596 956710499 264434835 983504486 538970772 61082352 306775134 753431143 117635075 312192993 327016951 299566529 570734727 550019768 609179273 760103913 870427178 923207657 207494340 775467750 791668810 544248947 315795044 530165012 518609101 78815623 820951388 968238497 585832509 756655689 494805985 694015622 363023362 193988076 903941467 554555081 463509108 300086180 321772290 69632350 15619688 783657570 910134322 951323740 534494637 515035598 392923001 51033526 960623482 914153816 298813632 280844192 696854496 752160710 663733700 389750397 101490529 941935602 33601647 574695952 929621631 260881676 731915592 571935699 354328682 644737419 333392263 169607861 40728004 141473227 888556587 4174466 136957351 945258840 687957814 359777528 13064001 896508095 858892676 428925974 301803750 552029336 952057041 907282298 790414115 788662063 305483853 660123981 236970275 85545150 223982107 704481230 56514069 378694736 556262479 281547596 132152867 741555453 520778627 199742453 422891688 87718788 171122242 894992931 420860233 869499170 11055200 777907738 989217481 636538911 3600040 200457717 21826660 455679822 195599053 161868939 298257956 273573090 713807257 588960187 728517992 857839522 186920743 477815817 546280974 810238339 538202584 189306048 6422615 172546229 727081578 655109969 964382317 807518989 696829477 524701315 505806561 425464449 56631193 449524826 61047964 507198582 885193289 905383685 837097380 72767124 999820089 489343982 549052929 412749247 99155231 862607870 829757009 480326094 332197483 918227572 718667714 447754699 871114800 223363119 972029434 929011797 179259294 787992648 292557372 399456964 861030075 588501570 675528523 797713403 88798023 328347440 701618882 17496741 228747026 309460712 612728594 700135032 604428533 965116437 165741350 241975309 953702634 295164683 747458073 894250204 236351170 22838264 441835426 863321472 615941606 289871499 205966566 57225413 123705939 893804522 272141864 216549574 99433806 990545569 326427795 496840179 560493305 817333844 220106202 151911330 375078583 903331425 91301824 886026441 642333827 35131558 534138868 785947527 351374410 648643747 727254679 685985214 300109769 840597277 424372898 341872438 889062407 282244559 291098327 110726944 266836675 82023054 396876484 55621735 596626606 595340250 498499427 942262254 99550117 770455681 481023256 882385235 492129504 30782231 803183648 169782849 955285040 427609921 379526826 28390720 509265093 92561313 438133911 290508849 387316703 737416279 482434768 33060601 301164433 503729751 48610630 195591187 824018499 380562977 622388064 564786888 123032605 191457884 264409369 338170759 756163729 232054061 896130374 116723152 160879301 16767504 471427240 568171129 662454643 73202838 611035604 913743052 276975274 778294496 98507577 882167619 97717768 989941466 384512513 433181674 653864741 998712520 44495890 460676563 222930974 84104947 54017004 392543616 225594348 284570988 524659104 354455855 452323506 453940862 715248193 218230155 237207504 246406937 90265174 449921883 636061756 809477454 860813440 207824973 302554481 125398472 395169862 954267612 639084355 115618291 674621244 266265636 968265431 793257509 520062710 876423584 553878851 633092529 403091983 139561767 62173004 524602571 561981113 3652178 882158990 136591900 879232549 735537312 46984442 607231688 127046783 257274919 764411247 236771534 207895118 168588114 166220950 863788306 71703225 132356400 335430662 720324168 271791477 888975892 279398665 508435803 254937570 151763853 496368331 381810456 33430999 481306525 722854154 481246752 362791518 995696693 869011760 658811329 559208425 412485137 333687600 747740066 818356119 331018790 732841187 705148474 255662316 479832668 630102727 901610378 87160470 530207992 194105769 941499783 940882167 898418383 487812853 831621757 25864653 87689893 167111400 323310659 558532152 598150535 114622847 909930608 224936350 168457300 951765944 966932604 272633590 768768864 829695933 478369509 846939244 778138630 934003603 405126121 337031797 757884052 48503358 397341571 534655185 520803262 132545358 733635740 500333256 675761914 664481869 344346210 271355971 637367736 441963236 167040052 280975473 420855343 227572253 376301741 572122472 588550349 973298352 881906263 648886419 538617160 114105925 248538435 917049518 451836320 117567480 178183262 351946800 340239313 49920289 936977075 686910480 692221624 351832335 350018462 371680700 87117437 308859100 653399936 863823863 363452566 222797793 300809238 540073945 441591395 119506383 233111938 63422743 839107666 176565411 236675283 795659818 988571807 917675469 498843196 348401048 1249708 919742739 740918284 922329475 601816105 578997414 67853070 831556217 168231662 25248325 744405653 595705157 771837318 791214775 705775930 445772172 349057186 12771057 356048618 720117564 789170425 810170821 559288556 772108003 176501790 473094937 334172128 982334610 440263756 376216713 37954942 255447594 484807313 307397966 664264069 492705266 264916914 969263090 692436299 389552678 473091263 359844705 63440118 249707604 515160887 615642791 349206143 442327377 418332156 167245269 875799763 149149041 991203959 417864323 910483497 384525 130801129 739162309 542787218 400539841 386886464 704545934 226872661 350639750 673400103 577077584 85710002 380767632 334713951 678011677 110504930 134424033 305952275 948593935 665300751 88827071 106151942 141201498 654564470 896499611 52296636 472004262 719515548 306858870 213229811 536521191 174524131 982509610 763210963 736237885 558396840 45665321 300951446 23949040 98634238 71944476 947711765 770779587 264252481 738189680 835121856 245099674 821294447 742330001 728732096 50567171 428468721 891261029 910091313 483317727 318396443 505792496 951329327 244527312 143828536 170826794 209238322 346931830 190758268 409138102 35153255 892200154 900468621 988489322 348772749 694609709 321258915 810980474 441686071 631355409 918628699 30953618 121035742 70900429 854709706 654528665 350334658 351037125 518211428 433904629 423427125 42106578 833889875 439033662 956075262 229517639 507464992 730880178 859233634 542867851 435746445 916071361 389215276 627739650 743040146 757538325 941344411 722506533 128124873 956817032 884215999 981681525 545231865 13330510 256349716 421773963 599505303 235173896 644550212 60358367 335546323 552641330 856233629 993514625 705892639 276559278 96916968 735206865 258899673 3075250 113372440 148101258 380289493 988541768 32989026 915499352 527995029 729563565 590094093 19139402 414782655 341901788 863396702 335433107 325561560 918563479 601521606 257952779 237567459 654175763 141903267 854275244 761283298 450871807 808510050 481032260 252702439 112690070 507042781 246893624 766176566 873475930 677809696 923135679 93884920 641206779 896531191 281501091 732697048 729910094 632332098 26003701 762240974 672017523 42280935 441636048 281314 670188553 516995242 802433921 689553148 137696712 612427503 328203165 633049420 747485519 960955578 485649941 338285529 293105833 531399459 553357124 671592746 530951277 805947308 371138396 178138969 248565453 321198714 213274042 747717998 163352086 94679646 426889386 764213472 621516256 421392787 172906515 840522972 730960654 246646323 361023464 421127403 354476838 185994191 236337192 980436190 534780027 3863119 490079900 115258517 110509136 58564218 125219304 332681009 728268242 874357160 554568351 844619655 289019984 852657604 744555725 483899204 23939908 763743749 102648630 987581017 404832112 386216560 906170896 842347139 496998043 443482913 762167834 795910834 745696813 652919273 366779438 161183228 52081424 528039214 8418625 905370498 387143213 747360699 627864690 949594252 509885705 42994096 167079442 575980824 424888614 531452337 364986881 413587582 273708031 357477027 95360163 32710014 688137509 959405489 261811341 455007554 718254524 992367120 33878140 787666351 234060336 677586243 101574360 823725120 412963541 494409321 254659137 990316944 546544760 777231138 582807861 876547487 573840991 891500602 960774082 263995613 135455041 464098388 555095409 397133488 184329644 446152538 715231405 244957309 366791610 148014517 11687775 605189343 955246458 116262949 805815967 421375856 371461192 296549205 173739174 874329385 991235998 841001598 837230321 13638358 765255814 935904122 328739827 202707200 67200187 560948535 590811858 307107143 42761338 55418114 410795822 440530418 877230565 749888501 260740851 648943913 297294026 104020402 544848034 64522497 100061052 564230030 159439648 370227131 936381075 523988221 462940247 162186367 435388228 624753446 80799153 388891547 661119262 513491368 659850254 986805203 70920522 282821519 824892374 184493062 603790079 771254390 684274667 264775716 215076891 214552317 360025873 897756655 763073646 307997029 421862802 56794210 18627305 901262646 409628702 347860239 581020165 735305509 85702389 659378542 643418462 246132936 576744275 768828244 927872975 553517487 995620611 59657850 198580459 415824823 98591400 429840650 433362551 62628171 512532777 345553097 405032314 701527842 510372538 920226362 479211769 445179168 624792506 949386114 628176730 906507814 902873607 142979613 803022371 750679705 199979218 141943570 986076599 74385670 707280802 495290598 224729168 825738555 855519946 683286633 967860986 100221734 128464805 531384883 179273114 175317640 866255082 659341404 962987653 839286890 475767886 343633424 897368156 992997336 122550356 504467665 291978918 764850308 760177765 164907437 934677244 197083139 193592849 994008279 692946637 681987182 323402170 7703974 466285602 227405293 522555475 10713376 601500673 636779398 188653182 783150279 816761352 362308406 331397207 229454694 784084755 111930152 873885394 668277371 967959831 334878026 596725928 864427963 571927273 914271901 19754618 807872040 786091915 981171425 256007541 460899314 568722959 328510746 401521660 702504241 49569642 60471611 596378509 399753468 861497948 197116455 217407455 848087833 199542347 669523481 501679215 67504784 157455738 451039190 954080909 574549598 922432546 619465332 358953933 662104732 189309410 665398005 106581003 951775071 480053806 892797904 273010968 867682771 104971385 341635842 896189863 966515986 908208638 591496109 68020341 429940870 975521612 997030600 869940887 41506156 363948100 154350081 210549783 119424819 96308240 105660884 859804823 523726194 553307512 326555763 992028768 323874752 898210347 194368480 887337710 27122982 164559699 653927014 311211437 884833025 781125591 288541825 677053995 843093862 267430696 839993014 485985450 125425495 677198914 288005208 701142432 895498023 506749662 475204781 328072809 436787213 949784408 172648578 188080210 398789847 714406604 174310350 553600845 551022459 399294489 844685025 812402641 928741130 661087846 306683993 973190758 118859387 294080970 332116034 870646273 67037925 234403151 96688890 698130087 220284752 35375948 92837342 49581762 651949491 565038389 909122282 178923779 422168472 141530823 554055964 108330694 423669482 658560343 415557953 2994964 478168543 124475298 143903024 619758453 224994415 775511663 684909898 60237380 502300821 39922953 613922240 285436158 437817067 574458967 796630907 262859735 563084581 657662514 753159754 569488082 489435784 592028583 716240693 295961193 258086900 505600798 981528028 955458587 30711328 185444580 341340636 205821635 108490936 697905085 656064752 322438881 268032170 693661052 118006228 643652433 531538326 544199606 260888524 536484091 666405019 275125747 70917391 434141176 421767151 536318215 326198749 200393499 492840166 73296757 470594858 416160666 867129485 830584009 754497032 604518184 552173321 26750235 670809071 696292335 937303279 193306119 186885667 916471872 90281916 568032191 133306634 700794534 609963573 853403298 238604886 585497715 114661287 380293226 900157811 372957908 220255213 889094073 731568736 250654165 717593448 676793477 427976007 589705204 881044810 569062617 14424479 475948806 400626858 826844092 172709957 150471123 833716407 260350065 654714605 9734609 219565363 133420537 418009051 427211064 519240015 710599448 958300490 532337437 790505701 649267814 195867769 481126770 679507357 437765621 234717996 263160794 924175827 329465581 554022710 929419136 640760419 342293699 976484889 49519541 590688986 774718668 219352103 467870124 584125043 797469054 428614377 655506304 701676783 109960647 805110018 593531380 212252436 705618671 551028478 851718040 17849541 582815304 885937474 936502535 711024917 388999282 167029475 969871960 440274035 6798368 418385986 66572604 812773612 17874614 171054773 894726509 716649360 108952010 603377269 96604542 596424783 67641196 909436923 178928163 899580609 974821772 605464398 663430938 509621759 518762392 313379015 943956753 442049734 126412478 412962633 402983191 724894878 642853415 429813593 335968810 126166558 244196801 121673548 108139013 408644586 274939713 931623164 905679647 592322933 948156253 763365099 575701513 615674909 695523226 408359195 850845575 970147742 396161557 877145992 40255830 558349601 718053811 284773632 943438960 221826333 724550385 768072489 516691848 111123168 836684939 178990493 924011051 523497862 316964162 821992675 533572441 136810773 283638824 382627821 761947380 778678996 484209591 666611074 87505125 921355928 150743960 575330476 239062336 672195528 868757706 436519052 427028052 61321545 887788007 578934403 401023096 204970215 989419790 826714504 30495470 215109476 457768145 532634248 28909861 256910892 161376050 925367466 168398652 359904055 900056552 393728113 228511843 624603999 445828986 344829442 617908020 615950835 593728646 918239181 670799148 182153327 440243794 752798204 202897059 280959348 853799449 149640700 192035815 519011524 402971056 424315786 289329594 123883816 444559313 549901866 869827766 78009442 48357178 288564770 893262238 698058149 286221254 71352429 834753481 973272145 27467683 222978548 96649437 844558634 852135671 177786750 63818412 439332239 885257244 874560960 131207896 841083269 764587527 919673386 398629617 834545480 251783659 509771373 787853188 942170714 493540781 694652977 49574452 60407603 178979148 812965818 662127628 397697020 601108541 230420297 439702320 591546973 101124258 898231800 760023005 110179100 156867798 289009067 49035357 985764555 430474883 485480573 407371226 937763284 179647544 872526736 123232513 632164738 728851766 393271395 452022368 805501838 291009097 260458119 55117944 951615406 906034353 390995115 740226839 620489217 690195211 607943459 44941883 405279487 931208474 305431300 716231399 261045527 213759310 588403550 135345280 419586618 200657238 27932129 596143385 255028358 339428932 693584525 590711888 914833901 765833676 942655709 544115401 409728919 312441220 505894644 122888093 615831065 872492251 214026611 881176590 837266689 724330296 293700833 940296717 735034366 825963338 555859103 801703174 190710952 496461721 113835068 815660890 944105363 694784100 204840186 967936100 644233103 687355259 417130754 534405078 906071481 885717247 91632276 934153817 35499741 917299823 752959146 16893108 414329071 419483039 203194143 816239088 67921719 167745638 323036361 154020940 254871218 925671974 586448350 649154074 975202251 782677681 393337856 545886896 326015379 809902384 10422306 318538188 52419570 249574273 946336119 771055220 208997953 640698505 653238223 306159511 92620193 965904746 243005129 481525606 772420275 309822280 914918972 503020822 73976325 76162039 235845695 518718147 805801088 450314705 454304264 485970833 303351919 682932989 572261419 170985064 101390793 36682296 314785922 484542658 460722147 778540745 241021491 598397332 246600401 206820539 654355950 471262418 928609613 384020725 411301084 679937301 596470701 888952663 383548863 784721957 906449770 241990560 846895779 17460819 870723058 590281933 520700349 117783434 100996830 930941947 782750776 34054863 107442293 962890559 736299760 983802544 844141791 986107439 713670146 308125341 838218593 11003581 887610355 760819678 646825684 75662046 9579633 320821712 986045151 16946338 475331281 857562244 331977605 150999022 221057733 576767152 779483597 71373601 894486469 413072538 927805848 235618680 255679688 459424409 540445166 96334748 362417604 212539575 973169931 271817798 75052911 339445277 625991278 277158313 329912324 851442066 87961960 136282858 138948966 123419672 382341284 889025744 822862999 342057106 701928710 518558823 990008241 325968352 866563 474014159 552335972 955145274 921501732 24081105 696233048 700833310 373012285 425485485 938934734 521034387 185829027 2982070 740594427 499499926 994105556 550928795 40704357 3619246 599542619 819077813 397311225 179808277 727791114 718352526 502213107 379057895 412922146 820124179 883163852 699234426 858902676 416738809 101271649 271671842 903859269 348292597 592834883 230305620 706173596 958733879 456122651 287834388 850583174 448374948 964263987 336910662 281499405 690043211 226255390 990996054 687876773 883226080 861659936 615244523 585084975 961887226 328482131 473361829 164329528 493999562 267579117 525284807 94072741 867821077 185420458 915458586 731646825 102866552 693635990 322688469 549018100 787423672 970696735 390131688 311999706 571659547 306764997 78812640 960549188 918815416 937036212 76656540 156190237 143129117 661433795 341762231 769322903 711337450 917300856 873845897 894625460 889008182 671676983 923836372 759328519 343036876 802437752 343774074 849463927 156986734 714187689 557056204 936260714 26861605 723132931 963287253 115292582 824355057 498838063 762507923 327445222 748899797 533632880 707740485 949283260 737440812 251587944 194078081 670562174 61716098 802118793 275447111 957948528 564611480 751844826 776425072 384270280 344624258 612688879 23735020 751270158 705053947 922062510 576552354 671125492 336314526 639086884 893310698 172616878 560667162 942355295 417472370 73340323 905099213 396855079 381935115 395682729 302596736 625116502 38907330 346611299 465577867 197669764 168525616 856211544 813647894 299747050 101132936 524595418 212490084 362925694 443246753 170393721 296549421 938778148 201103352 90339140 219461473 230366187 224957973 287692792 655206133 282730769 659822237 225429785 944395536 166528442 685131932 55198057 412451825 171367201 569162591 863570270 346302740 351208678 116253478 805675542 282674531 675297084 862819825 618309328 911205249 978396495 642865049 493472243 685677314 916154753 955874559 64581267 759500487 398501789 400576935 880481479 328100855 236830322 305411957 872808465 889698957 589808377 746489693 984024548 259446105 98665432 511752152 853753472 380854689 506350387 285560371 670733204 490248711 651649873 460912787 447456776 353000888 46709688 772850156 657526877 293355160 758851235 319828185 508320663 281385098 546742076 73693140 404932308 2654834 25316637 110804193 757140091 247372253 344892619 519171441 355390671 757854109 171299060 644842046 98900667 46740042 683985048 513627506 637918315 246847978 643594029 921100294 520284501 414864820 143639278 544888012 244229800 94743091 438346395 555651992 560240756 332471998 984551157 923618762 59831094 128810969 277604754 219392487 191093352 682167072 764793110 686851287 462749515 455707191 2683390 684749140 530485311 656484755 310359086 344816517 145905812 182464988 318179270 667978958 712996598 339011588 788198165 553977319 842058703 167102538 194396893 542749359 245637913 13215420 407658250 755172376 72396798 11169039 691339229 974822646 717757317 525436640 28731129 207095728 479049400 508722462 363751838 317478998 464808962 854765300 91194676 210377686 616478073 475412938 404402409 903174896 363025694 435935980 904981085 519978790 554073001 872425383 141764978 958078920 620169427 150308941 599078780 591890036 732062685 644840522 68829570 801228793 459039506 951909956 218055623 98505566 643122483 241674805 817507373 374971894 215672195 945001407 635820682 35943696 498785417 156029372 290408273 390400949 325067266 24398374 660166313 442014445 741630575 3594729 132711742 968021947 840798553 608954957 837087004 723025716 989925544 484489473 145323482 854761094 917896076 307461989 819377392 486728024 322805861 435109810 789567022 50213715 413916858 130253818 147716809 418412405 218963569 332580693 551532356 475402309 362299420 993207004 78199484 717534839 823365183 126900009 353579344 733210227 610494247 702114294 67074220 872613523 182526841 665446308 62450979 458451908 839589565 178970115 997599012 212526847 889385331 265352146 924525749 838615730 591861686 701751153 784490685 847917924 631349637 11578932 419840237 767993538 3948280 984880401 340298027 894465294 256506715 158512413 71579393 951873002 574019956 492383868 681852600 855062312 601653094 357635324 381837308 947081907 796651585 527543807 557412918 530607837 156337080 304495851 497897029 91622220 279550441 782340306 356968165 356082652 830664144 655352744 210743794 473634263 859317296 343938500 560602942 364217270 615229797 675098488 608154136 143517408 408356600 703101483 536976435 982154122 695150907 127498088 316687338 824866356 315379648 969957633 677925847 559874864 807005191 374938458 883587762 35856487 977765875 358139636 836612075 582421594 208688544 771410302 639619366 480437307 968721716 721917619 314678313 822251152 189147399 525746152 589345729 204872969 131516058 794270813 166155308 603954977 4690123 600399060 637376831 1234901 416303658 760925875 304474599 974361634 974099425 974352394 767382703 925854430 974810527 30377565 226715619 889192442 540217720 316291466 119644108 793434479 610802646 683732438 302919118 244851822 155657769 84709169 793969759 276142266 533012376 556385315 585104246 341245627 281351192 622956147 11901880 626288903 764320263 460715546 2723715 696299857 748750482 95406303 58571632 500912234 497837794 710838673 295264194 962389437 980716885 424203055 408763323 303552906 221207378 802212898 970189299 618829484 12255516 667100326 103742608 883513296 474005655 433522898 967684327 89656631 10418996 295735599 57678644 163801972 516998082 379330285 691294415 283961507 392505473 975946302 205887943 541822611 72433756 726508583 753406637 723660303 526588392 759380431 49741142 471949790 276862342 620540637 288633429 438979910 466910481 211149014 768002473 686515447 973186008 694743498 97463473 335760204 781776557 325352015 766218658 445168908 473378595 970429048 735422374 836248681 791857363 198199193 668321415 703130106 895673123 252059862 639387901 843849794 30649010 656152432 569462014 288030940 596229573 582318640 184642139 805684798 564403359 304900142 78523896 49352843 313068185 335835213 568054776 152174966 713207817 834015751 127414968 86588582 663004746 138869903 931464684 327847857 164532798 81367055 228321971 603486361 28374526 79720243 187233104 434934276 605356680 142926223 11886048 966766960 482647939 69841466 280711702 682692063 477400703 226063441 913802774 10393164 629723076 873751427 928921556 232090316 254381134 171241929 809492156 996853622 483396010 138173375 466556376 287957378 582811941 768601341 673860870 265353079 840339100 322397593 468276785 696609133 583639873 682272166 445395497 583718439 780053588 818525538 396571696 901475626 848786489 648710890 224769447 39749156 639810968 722980855 336138643 807979612 424221576 872545014 501092481 363529104 977808346 21037186 240903190 367633094 600742443 603475568 486680595 641649654 655335488 869171246 440379091 945559298 515709890 595404652 906956211 599363276 88781001 581013963 664560308 638217377 199692232 78927271 268169081 313162046 177384021 191121924 676884031 666220916 384756932 982242144 561413433 821642602 453590216 624976659 909648578 940513774 34317936 903157098 522844958 822559784 397716154 981292643 757195252 354945460 984934196 568050459 402988071 324375208 591806382 96448323 688323784 694206660 565165688 414712100 906716423 802859418 510062016 682859659 572743649 998679564 542396488 427240474 590513440 912091053 328261690 948261743 777588557 229102849 495129653 710045679 636921741 369537879 395231176 910751191 694813079 110036370 396026188 32495980 129386841 651389202 546805166 310495043 265425740 758562565 832792528 16807149 13998270 734295265 404288158 241962064 390242495 292406009 632126017 106773802 717546599 137257816 150786268 765199313 384895217 151372627 965849349 513701933 156274419 102858461 476864566 411011230 218938164 964097481 220109006 927482493 218411466 748845341 944802370 728690172 574929607 358959379 592279122 211768142 739138377 974906737 290998784 381747675 507857395 545612795 384817628 514118223 997164341 802055341 314779444 75096401 129637298 384446742 335497908 820925571 966695759 897694433 815048081 800010804 512153063 787212498 155012011 313541604 108253198 177890118 531732922 337372766 133223617 330657577 862367260 906219774 872686370 830041448 999430652 628851159 732975537 357239235 463817227 275113787 72537142 481971237 926895473 939132239 528587477 370614765 71554169 134372411 895415098 837115888 543364202 682028695 873862624 879439819 371845373 158211333 403168852 317451936 309828048 388322453 239700809 941182149 153294394 638838611 524774109 407632538 769295349 355735327 212032677 401557424 122599235 482621168 160446927 136938150 346663585 694014482 819936126 275901741 658882027 584880721 163145644 914224862 559878764 420534353 688662899 859203537 658312659 799755771 37118198 810820991 55227708 337226499 951664219 652150205 996024084 447690565 125815305 952294144 289957164 839458141 463462763 617726520 200485094 902087294 419310188 407006729 344725146 522854820 93592800 27474725 291011267 792981182 57270883 888001749 580380147 873355686 202613956 429554481 927698728 512941432 168641117 980334101 97180664 567754829 345794073 733302312 667211936 639893538 784983494 77138061 65912468 519096227 148086692 416334489 531151248 431554164 232959149 872183741 40531258 273121511 575229210 262984834 845506007 466626070 431511389 30518147 178316898 936315297 206146568 872970518 549082312 514662652 622732546 287658494 790589539 528905222 738812780 756346002 313572045 255760110 52429419 766330563 686549627 97500465 871772083 205321875 651988371 959143359 949806979 46873374 870780988 418463501 966574466 283349602 586440561 128217244 393258016 259646455 239815297 361358349 135480627 415260267 857203167 512592627 282788961 734536764 451567018 984472811 924097274 349420606 818951373 948460669 341457908 193328334 915902597 896170668 264662297 229663034 769190560 601188926 503489265 590909398 664618748 302270799 742706018 964775579 349981911 452896991 63879814 656713387 511162518 172933582 133821648 870003325 52027735 781477058 611603219 17801166 819860900 390058159 664470882 744683646 845998910 721174827 335844520 60113766 693581810 343531505 389957417 209725047 53811217 247886713 123781581 346609075 804797831 664355116 631143270 718435054 281684916 443760023 306943087 340412339 491162229 289808878 717874882 135839305 11920454 52133922 677787992 96737119 429576549 480900589 143332166 706127157 512878413 17361235 547753319 971081925 202489111 70106773 876907784 640479825 31503215 703589165 551924053 331499848 906402005 487844837 89062505 779419527 591104814 573287397 726534434 733175455 540687439 580033835 214577718 753028820 914529113 379241262 349752385 34526868 659360423 624453742 868308730 780326670 924119897 824100781 111594946 332330722 819065460 695869935 383193831 511051384 681425750 990141234 961658580 874761611 249625159 323920329 386102708 820636414 967420107 41341914 181354605 123987187 243546374 49697996 46928474 544999165 602204170 350652523 830684549 618231623 365672066 158039080 26205722 430284694 383114769 717011469 872577116 436801844 407564295 794902557 136001285 401581805 209971772 690294000 97663722 3857458 639635711 712036794 770631001 828918400 849131178 950489257 455803254 248967037 614027253 390710774 224672510 55129539 307282252 617040011 972113392 273598927 362242903 614739761 731853788 118063030 304704558 615511164 307199617 836210045 38713163 958406068 597489569 455856369 145791803 957759619 521616060 117363211 50545313 603965882 996388474 807700775 424457071 683878999 400798207 954554983 604071160 200803730 942606756 143706784 501235677 439884080 919646770 142672791 587873650 140738216 577916364 843983719 932953777 443983664 119898281 169024681 748293440 891128607 767215732 485666992 671463928 930289710 599299942 88753752 717346293 256618807 602728948 767240636 722106961 993535353 787278516 404802283 930587974 106056053 94814892 819669855 796043618 702796539 916960363 365279424 930432894 391125762 145948156 263432327 64792057 20887989 805062351 916774557 97690180 582254145 645680030 121537082 58736756 826698032 144596529 552077411 157168427 71315923 193166208 579901924 449421832 335457183 847494036 76144720 560357694 16812788 949182353 503508919 426255024 590956457 483233905 415048977 335276785 599629335 752725057 782825315 418965630 226575271 613905150 747365722 52345228 409377300 205244250 973774439 212245432 998556336 568134082 913695843 554036503 5695132 995505756 912723959 618056666 811170371 602969097 125559481 433581094 834774212 223178705 947816370 536019770 909782858 585573986 622460531 178449726 662175651 570258975 547314717 281637834 19175400 818268403 88984438 533986033 392141193 687746281 171727970 707256863 139011877 169777912 91531805 2022765 747231100 403481340 152328866 144899867 591788870 92753701 578505512 347319134 12329747 668379766 564825913 901156987 460972378 237728232 906693002 526707514 901656226 900718482 411153687 543932396 317523628 510838508 235705082 439414256 716380533 839133755 773653230 454508446 295208206 421353909 988423168 83347226 487618935 375025751 49661316 773346648 238701801 310821033 109391637 186641668 437415550 300125145 577311645 923248819 367469127 698474456 754682459 631912713 104768622 660732189 648288938 54497755 362201727 412580241 869668589 671616969 375576642 644623583 968163355 137360247 652377487 361606460 22417643 97971937 705281918 974874184 37775177 653404423 343583342 131268441 33799589 420159377 35910660 291708568 413631230 416621007 925443993 84674935 281503272 774294206 944972897 329132765 693369311 276920486 641705540 899121853 357646573 617020413 217167924 684562919 273766799 823580829 17692689 479014812 708451689 209343237 90181359 670296445 117617678 585528452 726596945 37829556 383075901 754179537 592861484 292938364 792586827 660517776 365805198 771311150 240902629 87053755 316663987 677887172 212894125 896692263 798647991 901624627 685098697 60499657 538339283 199742351 245950182 765017423 412350470 14373246 682313712 504135506 516372352 1075960 589244797 717546972 685976146 525751437 919587518 831387099 580334806 321959766 857645196 322599094 257645958 670078643 686373035 688837566 51710124 676794721 164918181 565985684 642128622 18023890 872238483 855642796 930852132 846921288 889398401 860928268 21396103 691945558 791559777 399449267 326223277 680681401 513428765 102319432 608845813 686570328 872391313 52276772 385631019 191767318 958218467 514220927 819321305 376180197 887135520 621570884 836084914 155702091 986915365 900947834 872912052 520201279 35833934 610734484 857080631 679693174 692525358 292007382 105673859 988212141 348561512 541236397 536135958 365438677 922813525 788617389 27737880 85809811 12265052 587961291 967309281 646900977 763345945 20281039 556770000 713470 26162784 282718074 414386156 295544247 824860372 449732551 194791114 585691883 700836 813094378 397733005 491139599 656624090 682996641 508782020 10864347 25049889 312171099 568553116 121272235 931032341 583264126 768171483 539669574 381366540 461620240 366108561 435479382 117768164 225487999 280619199 350996638 675003777 68585911 987772442 740621516 792454354 332622057 528335784 774578707 345974534 615561039 823761300 77866595 517985228 149324344 421684634 107091453 883481481 896402729 138723739 422000640 203750195 907573327 120092255 60402268 382882149 91229629 839552241 324723935 169607005 225443603 263001381 368420385 286719102 736622660 594418634 94739794 536158460 674542254 989128383 727926128 104074148 709797819 580948127 335641265 879819727 194697919 109724911 672922654 605205092 299255286 275458532 232648404 46323931 975770647 204503315 150124986 44625740 319166978 692697283 982714679 428983631 892172434 765958967 916936862 264372384 209564997 754359030 250643392 158487305 160718217 75638816 454809136 528961526 829789382 227664359 312574682 919491002 417821661 646480402 283520710 274788385 933581987 362096527 318204663 308164303 502677908 151270174 396736766 649381141 997264249 934347839 986677301 63527473 238417317 654000272 865898244 283697330 548703353 82968382 366416968 578215676 194294028 501898158 191697447 413296491 795016598 324037198 54839305 159305800 321893525 1657569 893622607 807195729 733459097 926938650 513301556 194756828 702694429 546081739 692513522 577759879 914728196 460541928 834397992 639709026 256036384 852806006 40302885 125677244 577545570 404406106 723222106 758208609 356926956 118530681 246464595 551305291 801540678 691828392 281349556 438371340 903740102 153609425 867219695 696335344 565497146 697408317 116469202 240570919 664222543 199401821 987761133 73411925 763994628 825015288 896636044 693782411 373679555 242538281 711991247 627933059 254346033 240639374 691444718 95262102 752456039 240014215 535005039 717957620 546509303 687498810 57877293 505119409 913763826 213984778 106030006 824295156 65785739 497711861 873630098 311709265 604366381 994852008 76596363 793488077 507914200 616374501 38795185 567807026 47459028 475770752 141557981 955771139 843233476 568065839 555694488 935177133 146035246 489983123 890641254 459758300 588992374 833240451 768117106 586173800 883431063 549197331 485359941 528819839 211811676 457877448 921098789 364239894 810518626 41539126 100152825 513521711 73102892 878607502 349831031 114318892 734430320 879792955 288724883 975633670 822322816 393683962 179567166 721040090 131370301 925099506 697564598 847335692 62211437 777608750 305941379 844102126 545716729 601788920 901616198 391984489 416160269 692693130 644254515 438498298 197852419 280666389 387748336 673439536 405935348 338860527 627538167 935101912 260060340 665078689 575200882 27436625 71575176 425246849 171775690 141589984 491568108 414368615 607659782 837222864 218503853 747244441 865696431 566152757 852507954 657203472 870829143 415556294 873069009 770278693 960810473 796052759 912149106 377365351 923631181 793156027 559902415 431012722 297771169 585843301 554383023 270190593 541640367 274026295 879801121 730788976 975954051 520581375 153376126 417069632 189954886 792088344 704672200 482865502 393080136 496939038 431924162 379135917 441244744 720106480 800872550 750787881 390992084 379762437 945941958 931931172 55021529 828964056 240795970 741167794 571938423 941011676 604518904 445600207 486083536 196851544 681156325 167057827 846593620 853518912 217118394 543501143 421297559 926834748 138922145 827933385 834770057 14234158 137744175 421920251 605150252 821154018 477734760 166488299 662465536 957027045 480615646 608564271 97142869 39142009 380186842 194990761 684655607 560616126 447607333 5382292 312440786 113017624 265286381 875242037 108878610 479829555 308469368 327328407 705159020 782165350 426542826 304871408 574816712 351669449 666599194 600367043 273096657 695493687 597572555 900611759 823235620 293535520 441393335 422870766 469540515 914417702 795705451 880499152 237568758 300467404 769761961 428001800 6174541 168972706 438698316 139017430 598891069 495430570 779082700 825096724 118854772 844451776 259587874 364409018 367214445 854980021 828244294 785824300 48871681 149740725 610136469 622055189 912667515 845433305 795970522 272728796 548685910 584810746 413884149 283220378 32452622 199651277 42949257 86637512 276032269 26441632 294277328 598861594 250616532 804791955 820801388 524351499 392248813 403204158 143238663 252872341 548050721 233696159 288443600 736618724 437943192 897737522 23326208 206349231 521188055 110625287 496560114 721055514 806082545 990299329 602591183 462561891 90394131 462480688 284656419 935510530 211644772 513336495 862050148 496344155 793716515 254506272 621641420 222312922 385895990 130347647 623978347 917089298 941086064 457334403 162041982 207938516 655026530 249164218 467880820 416939741 389761478 136569760 29500949 450278089 558511278 151248986 433488848 772054552 929688815 366209536 195755094 608417089 598704720 400511270 571912611 676008336 583574544 693156852 721946047 515688307 454542991 355859831 536926687 242211808 925678483 473901579 279258026 981341297 380024730 293173732 933791486 350000683 389210478 704203827 685346095 152591122 582336405 126434036 485799596 914688686 601394979 532976493 622193295 417786671 570823070 526910452 719056747 914471241 466905755 569006175 425001667 899822932 230833480 246856801 923643935 921737028 71835619 798061162 764117157 202193794 248931400 800394753 146886549 409507105 482853976 5734144 255192245 99423376 777961833 71394412 552767962 764134533 412653466 557618836 824629599 632474464 931298433 943899673 894387192 586076429 123682672 936035451 722249501 770925991 984507178 619449652 260914093 234669202 689630315 874554470 709882014 920195489 190664153 174167225 71533822 409194846 658137589 230543945 178743414 293491586 920975164 254491847 399643547 23108226 372455450 8874337 147750419 613565462 493875661 59570327 231253597 608405663 741813256 64368358 247508793 816370419 595911671 993504439 695002052 475979649 107359266 605998314 747229931 268682742 531051 334079457 543088999 155644983 405444816 292549337 104450268 910762541 158479362 214288940 151228617 151897161 446794422 598963040 522489411 337953877 716177781 827102590 396344103 36419317 88568806 902640614 835255940 43192389 917522564 440996344 54312738 450172887 100310433 192143461 240266591 765097409 293516146 828164073 956291344 986598675 603146988 670322202 33440041 529683242 532377202 918662047 59890462 867493031 287212693 929439630 40910657 328199696 1529580 485096365 487450179 393647005 518199619 137222531 272808174 91523923 507588998 250022522 958018302 655970157 508507832 729738673 703445844 152311463 411992627 520552047 179160423 267199735 553025118 698548528 725872232 780513337 781566511 975968236 379029243 854878703 840989660 188932871 685266633 634263326 317193844 249424796 444479238 688736477 976091809 588661240 312165978 156472595 225181250 299297441 539419415 192235168 890936704 748588988 105431152 556328159 982021927 10307224 675800395 20092986 877135616 240025119 529509315 144402384 222138262 609393267 612392377 107104066 122453371 975111882 765178125 867957802 394990913 559467283 957918470 808757034 679378738 482669229 467949427 247115295 30421601 131286333 86094780 995983367 169857858 504574186 535281912 355128812 564914405 244323675 42507757 398300150 118995785 459905209 102723515 350427813 242289449 283680507 706236651 873729031 301812908 798508246 136305027 748552679 156603381 421900302 752348095 719007662 159854286 308274362 493261592 138372665 828647958 154997101 560300019 118230174 738569771 943013900 514729157 16364677 308846969 165708347 97835717 217711453 361803574 406407257 351074728 256036268 48141458 949104585 245559073 71351724 732212436 779444719 674522177 780747150 933080484 866232031 208845538 152776729 799334460 928712359 642038783 478552657 570554168 617795315 743222397 647493786 140577816 132023210 833068204 130670654 285031148 146540 462267559 489189598 318531829 964644517 995431977 165391187 481602321 240191000 648710700 551398740 497021852 222416864 66118169 918985771 763831725 855911479 152643717 45595229 770260604 184436125 234711280 937883491 469685674 671034874 897440919 762316053 916108763 48553423 301940302 469148528 801778302 768064671 644810400 753414067 441474710 494092000 940229111 424770461 625279803 763366116 121308773 634640059 332800588 32426699 265303506 660583739 647517791 487793767 735339836 118613603 336308280 77916674 164156736 628477906 997656475 495633328 504178702 918616731 666894615 795396290 798564407 221873894 793806809 914498923 18800069 25557653 182980584 189952850 899097963 122370626 228289221 287835654 723141183 680259518 741312041 543601372 287633006 217741932 863613200 113012004 493135609 635501677 647034722 291480364 842777757 68487065 875136675 845011917 994007638 387285237 848730893 858231570 355393063 960738977 247034138 821161509 979412353 326362859 954949871 251835416 74728036 972115043 632770711 830648047 41107439 63733030 332762483 296934200 967720300 311801197 827524061 267947654 259457481 793214529 254194774 168148737 767289747 709904114 945039394 991852806 402575732 185576598 313156370 692590413 459063403 201638538 899254319 700522454 669709974 814258783 597330594 908967529 155028689 352531006 349195141 438515204 147000551 471330612 534580866 266399084 233062864 112982554 149796569 156850197 709086737 374842137 483963540 671422507 672875118 272282588 517109801 929760628 938780145 456788076 463517391 275063153 400503976 710653344 591561937 488866919 733928848 626101172 140300381 430926295 159036536 926491814 181315645 322298047 49398735 622880595 61046219 111894534 199444820 453152921 225061924 79440465 116966272 470948627 210948472 720444897 895257545 503705041 587556190 409748773 772444001 238422435 406624371 147216185 309336215 102255727 868941529 629023166 749552301 669776475 65200530 582732288 339961418 887791053 729446186 506884017 251790065 651058182 769929111 921993922 601857479 390674639 169878215 270651687 937250109 108934145 704466137 751188920 554281207 958644928 996717217 240920324 714516447 638290536 506410634 412094688 923119195 663027851 885895835 206447255 55413832 567453344 169433542 19673885 472064297 928004241 281947776 199049409 980066064 466245751 957124321 391323580 223992778 888504573 366022104 247300447 643471850 58179018 863012159 623008676 425963590 290971299 441355089 750221523 188917003 841198447 93095133 295473281 153024885 112360591 830707408 471255607 802821119 241881136 277645766 82783759 919296430 39008999 446306665 164357714 482675756 205062208 298402279 172066886 262474665 635168625 198816658 831055501 393886519 975257017 80713098 954758589 783505776 374614294 406605500 519886552 746101991 810525666 345518914 244955217 490325513 932023317 405735613 563597627 741077529 407362077 234281553 821632264 158480983 662568758 706798335 710020903 338164262 865273028 287401932 888773619 831863625 254648832 306899668 332490078 834804428 549083323 447793372 68180690 321756130 19809565 593977082 711386954 15552378 168879512 548389269 385747910 515814260 764893502 475303292 109845082 152275614 783605637 841779152 777871031 952315045 639148311 346569547 396577486 90343185 756774830 563262309 98034520 62556939 31807666 449734932 471604940 267436496 599591784 618900747 801767107 817879354 774797232 587042848 740740232 332738586 520705606 108074309 127993851 20969902 111817754 664930672 178866649 227106967 474125613 943770630 906616793 314296912 363966014 691225787 285433832 674202343 60466295 833996417 713847267 920415966 706777602 405502024 525359892 760141889 748908391 272481339 800523363 695162799 114690082 670160595 69494059 93895022 256261750 193037344 441336882 546067363 941402363 787244869 216842542 638450318 531507460 356001089 661694905 574305389 796429441 848853849 602465639 721864331 628529588 166525624 604417712 817002526 623743405 771212680 287202911 254952804 212074088 241777367 898359504 848064365 413154452 864336721 32222672 681549746 836173156 521429217 594178071 929313816 63696974 218513330 634528283 675754398 558738502 366636147 455480537 32495539 235961861 485555793 355405446 475706856 685173759 753882156 650477971 634932630 867308078 729920029 473659764 885855273 71969085 218394758 698809582 346642403 74526161 42024125 340440345 627086468 83194934 101515569 153568629 821472639 45631608 415110678 646156531 963340567 978519081 483817937 675814495 491549732 257760597 989592329 946413487 194178841 687182478 977216606 507473873 472682488 626778330 815408251 305068332 154770019 380067629 23100450 10659459 407609968 980316121 80911801 17402217 347487258 388786970 485463298 323862301 396172856 712460893 51710328 196733013 225069421 583524943 454322862 463544693 957481088 554630779 90325440 414561645 416403758 144353119 94116774 88567364 582373923 351018422 512766539 657407986 717195759 321730732 532878734 611566933 166607406 967068407 901183512 363582096 745332088 733795528 638366009 783952127 557037590 941384296 337319958 512549344 494225435 649134625 238140942 706620764 71707086 482396103 725770216 177377125 43468587 731649441 228655383 508341431 975716574 98780345 253355113 591729771 947626774 105887246 963452068 526363886 324989173 955980955 811376552 801200080 468007342 682315758 21791567 524301502 815071623 330199811 46450384 704198047 963276787 451225691 715978965 635469153 308648487 712414515 899752541 59701728 111325691 925497913 289688286 589824002 998676001 14799833 291033399 484559566 922286269 599187940 618974353 388906712 837910450 37057877 137750218 717835086 235989043 269573359 59914099 241910282 116248221 163126353 309301299 752463448 687997572 99250971 110040026 445172638 20180132 135698040 117890931 315439453 480180342 243756135 438676182 26595946 724661857 258221278 380421157 121921975 961898996 451156940 909864064 857441444 921843250 135510030 937443262 372627874 261214020 655281941 16721291 953236172 56415348 138865203 440308475 651049940 736634531 684172866 39091996 570111539 84481726 692670181 598172188 344068162 222749369 319092166 520212228 898470136 858671185 935271720 311108082 330334032 259469646 122585498 842521693 792588359 815162920 153014801 975950644 627907880 66036001 819170161 910688133 315022517 946429445 76142208 634219009 886794151 372922782 940014117 424611496 926166218 282100423 197361097 845219009 671665679 380267619 518604388 873826151 299410704 923421978 958006696 93091523 921369018 476303404 755404666 287644568 852692166 820304929 811103641 938828564 515132737 213814480 236770722 938170874 569929087 997477456 295961008 250799342 253337406 495807844 961102650 841892962 868150976 349496533 999085067 531812081 949490035 580321202 840827446 427305142 87262834 832803795 848550355 661197446 166415193 481176914 677417195 362457774 423322969 221273832 609539808 441260150 635230455 316317284 801520739 500844951 736135058 714985750 760705864 391141700 193969248 658016885 662033744 730136932 675987031 292584848 716441561 355302334 912837433 680022078 261901664 869431134 245315902 903989750 672228935 661113689 209534519 406662139 708098747 842520248 811347259 712017009 272022181 226487970 214978316 648188515 24424924 148183703 756008595 758796817 948866906 709413286 489102843 176769264 538438697 819537613 398742488 873442935 172288018 603404857 574808329 854933476 833259675 745578880 566551611 583256686 716401651 427152486 701853511 585835156 78257049 512900575 505578322 863344897 844263306 638225497 228185333 353090342 87606063 869466712 697759356 380608419 124385297 51857891 533523530 688067937 111335671 764002207 15846211 318153862 20518220 618465497 640913022 760214001 528083894 794251025 698856476 559273078 67778775 371221784 333627603 64907964 405396803 91563965 798513046 370236507 157922206 857784841 441423832 818107993 611009783 992829848 715952852 505392915 275655718 204101480 104509474 299629640 422398149 295768059 297304 620085206 123637074 190064066 383315755 916336218 703664969 977885639 347241707 950476791 100910439 817560950 665247580 640230102 852987907 21936832 664865346 852082533 48469145 183886980 752005899 200195521 214189754 793360461 377955541 231131910 13014848 461229780 184507092 411080775 363474161 846005671 660426289 842499196 425813896 560671937 489771778 390844871 6331708 245434523 542258977 903217546 489259917 975912972 90592637 369640580 681815495 294408707 784818437 952715813 413792976 819861678 142704290 885602776 687959574 113585285 794447565 524212995 929302931 773039652 954803405 127619675 789002838 804805006 469987552 876947849 499073661 314930845 761573100 684529126 369977475 756956555 190250837 51355452 360693916 862967657 442677762 536857527 485316708 977896230 164253082 57651183 316114273 838252440 70870387 399558230 468566778 634479356 543797591 718440225 626437866 948865841 681758674 366993616 955464976 903307460 799730858 888042755 780685882 188885193 495857341 494951402 752538723 583206424 236163091 718145658 888331015 483618053 766650807 928929846 886395042 927282538 934856821 405925280 983445223 382149695 372254123 393344726 384447791 843523435 705820632 864516691 298789036 8078623 781785307 69928055 38736522 191449041 764138527 898988844 595542551 995274894 237549637 537622487 212897332 990210946 215880913 299829528 809341166 563600700 196924654 765712505 119665756 840362462 677584184 663647097 832379479 80918540 571505146 622973564 38507532 679423443 39507577 520217251 910145454 226377475 131391049 359410299 309307397 826456711 223594646 77955921 767143262 553530659 427883754 556903733 853467355 182746301 359486225 660840634 115866629 527041241 779930312 237280939 219159796 202175367 876589136 522074734 504627904 267286559 823028048 746440393 970728818 170137977 556920774 843985194 733368540 49953925 498383720 312570889 296437322 2558041 484634453 812224509 332134773 881219311 973055191 677407652 345980210 589665982 747164342 794259722 334550137 438456421 403668341 884762590 570456862 688204618 204657716 195320539 235543408 673236358 610648277 367794419 807424754 171548376 277732249 334378987 182310139 227720139 464831634 6820123 536538407 821297268 545097471 706057372 363159822 398748651 717685540 629656334 202036668 628286357 737877998 215575225 274543602 149125468 25184739 653605788 915852486 811852429 313921575 941426115 854209157 183579393 446379887 497173994 713171053 302880199 605136420 148965107 855121152 320668025 736841045 87257614 785067551 872880623 690729972 337601620 874593138 397381732 885971799 381548099 178276188 665895315 26182208 713940868 59068946 648952990 873539018 584041348 77481853 936887535 179846034 46153855 365673703 146015567 394546158 803966239 895188201 493830210 352939400 185911256 718684024 319142967 838040350 64221318 245678090 115088592 219785295 302897151 463342159 544255243 606870178 703784967 605584841 620090756 590981825 958379438 622642770 817095301 635593577 511798444 963937219 753281216 587741808 323513095 597157000 710110274 196535305 788174130 447294284 742176490 60937965 184534129 539711937 635939298 426193566 910402494 341292905 170026891 258609412 117683552 528004777 662596052 498518587 845947759 688247990 427366427 474428612 662272617 884998947 935588404 636596003 231907696 769917004 226246806 667136762 782523116 572925043 552945219 328240449 414894708 959430511 302456121 718980978 649038585 841639497 890698176 176173732 624351277 779676143 794257699 553660179 468102832 736772324 510412505 919766057 111831220 145103350 699208277 524050280 912207402 480214699 831355498 537497305 61719178 975493457 399720878 435652046 745397237 69742942 862247426 388659498 551469516 770221923 812681263 502623764 149599005 335330434 367528952 721414758 527406422 165678836 824719247 467948859 912520066 587554676 954784762 561510437 181891180 101248545 231463352 839297257 378849461 713272706 70917231 484345770 171066118 483753137 629505867 603673135 317033130 977674179 589354431 93344389 760071449 551957583 175511771 450440344 127092917 86047256 768332397 244856064 886472473 216632383 349373442 927688528 471228941 755643207 805280203 195751155 304994433 574938747 641837408 294699269 192766564 613871953 452844638 818879460 170260978 403570720 137855664 723908467 564905458 918920015 716312504 925822861 865504681 641750892 408346415 616108332 549766409 968310635 803449328 25000343 187853419 88191587 901296497 76390240 542447917 562356438 424441459 883070332 426873684 304118865 415378814 970702237 5605101 387739952 623695087 879019750 863530427 983886637 53197564 255153667 950010498 68556815 413312289 89986763 955734608 205257788 736415366 67602503 612251477 165308105 652784864 145847779 477762078 360589420 448429664 53703988 389308212 292936823 867052646 51137842 164538614 894614397 264680711 122909135 260744413 983776629 215601759 184749005 224485130 84157104 793328545 732375615 288711581 36062460 498075692 803527683 756683636 585373011 809499242 328830421 389278057 524891456 397924449 713633337 38778140 983822964 683441571 547933586 683650250 455755781 244382782 340727296 970547133 67907077 36342764 719059225 62144325 18536608 648773261 726717977 239384432 532862700 486913838 657985932 603020028 173869648 300721301 33251057 864127476 885094094 455042750 386661179 740582214 25413195 999578980 45944458 941720568 106322192 352471079 460546531 952923992 845873619 220039701 615370087 92112587 812599525 126697746 781852731 757168279 566516090 245598079 929052503 517214887 77630004 96870933 352249726 395510084 523276151 423106416 490365132 30663046 840666138 969919172 591056462 686020440 139710333 482221693 589364898 400852165 692107803 582786603 649114460 660212222 554544670 431875878 803628814 495980462 865840581 62936647 517736998 182375943 318325968 757016578 476026192 353530973 827508018 867621833 244438472 356748578 198193823 32851508 446323204 908754741 854917425 873944370 600575519 413786875 891486211 406161944 608506278 470553090 244772505 302264923 610476724 208316648 943583860 317226854 141050102 807682982 678597599 456689058 903120925 428253113 806803635 326319774 231474779 181584910 399064186 871551147 174820505 725455882 8105342 526480295 316381244 717213051 271750199 612155974 566600811 716331300 699269633 427367688 390183683 633218961 977462247 6301364 774334461 34453068 460584519 443911211 763322197 305000107 196574493 80823348 180905594 383540369 157517883 371955922 657709025 511363538 753781780 241626463 920110061 508414299 902833912 159172152 749530203 714862473 613514415 9651030 692538561 220352195 43150187 656320474 974870099 280982933 775329800 388391007 855312026 832844617 707118801 893130306 79570797 68324918 712545511 85918000 661764955 853259252 989508360 752190729 265602761 806249489 347387753 136064178 91872240 590725088 331850836 250017352 860774943 347975495 60114584 711183755 649319676 740541720 576455480 577012651 743954496 377925854 780676752 174420531 365445187 897529237 835022961 659539663 511985913 772602554 933498834 719193663 12721962 785141825 236295871 591242554 881450096 193421474 200231571 772464673 256975056 132628595 606130407 909673246 601269235 663519359 971509653 187782960 746238139 20500963 714880471 735584137 856111843 196006870 666008448 666543255 876094471 613118714 239441483 285868336 652775246 760898881 646226500 304758470 316172215 110725710 355903585 700793894 784820361 704429201 151397530 425919267 974122085 755066506 491573081 716399074 989466978 306655315 243081308 286335181 312727826 95335758 496650843 145711142 28025846 112210954 410626929 848247399 286104320 701339887 556719363 314181949 838777876 590170855 657743695 377748922 289853370 452410533 939880825 269635430 372216165 493170901 146225694 586679238 213884556 447537562 627967136 683936706 76153867 285186228 255047020 126118216 471573590 773062802 202012898 329428476 23037069 540954805 11418583 847104435 869156205 448164895 90571096 111911421 776248252 165313676 861405036 103928368 275691880 890980933 536077798 68139217 389010397 792169431 409542285 267117958 529230774 616615889 275486359 924816668 946500906 28501669 966843381 788876610 83622068 145040674 326406211 796833512 353844424 328623299 286200554 24440154 417989664 518696171 920493898 785814093 48240161 867721646 55003007 875986252 63109976 516647449 762286155 655382778 586568758 538938341 253168561 180727224 626119083 104319221 241186540 360334722 580764846 577870213 846775382 102739918 292159288 713050135 777653087 211035285 104566904 278212300 638259662 831232379 617258119 362239929 825491532 99355549 98592351 328774121 74179734 746916081 592624108 66408594 185384329 961702712 55468497 360452932 719963205 107941050 639544039 383871962 406992022 87338451 167097741 385764242 26854830 237416971 417904014 123570257 796662791 598826892 375838584 356714338 747224180 30545727 149420507 236127103 546498440 380955004 921861027 357194708 960945987 131803311 717708352 607580599 683106712 583170561 308600375 345603765 162993425 939304167 829840069 516362492 718486360 799792143 240953876 220772821 282358920 765851603 402698831 363386377 649894278 412688456 262403917 858879368 378845794 237059913 740570767 280692701 25970438 639689293 707762603 775026711 476411554 870426488 768097874 479800003 883214297 324110039 397136681 257495537 246942447 606036541 503313700 82695780 420418727 637953796 799467963 922511925 126981173 654638548 863296020 293187800 407219433 583181614 422620686 396241850 396730629 335147329 476050215 581150366 45344406 290100044 239977861 43520951 197698615 629140621 370564531 330932157 954467338 18475627 570536561 736725525 169216489 410369101 679518857 845795287 536239188 622945896 115491700 900872120 504573146 388688018 940413432 628135198 311309720 722757805 130468316 165369355 609852131 635489795 207788134 734706724 996620693 554389078 788227836 592368342 806986980 660438917 477266925 411407992 450841769 285461551 315107418 692481079 810460187 541195391 171736625 157866024 251855479 713295724 737516276 979565048 136275671 288897023 139197726 81556835 772322651 28362140 601647886 414219184 830936527 417893979 242906304 762388201 464955418 15353245 431171207 681516315 208729434 823423468 344988822 758538172 891281387 173905098 695974693 744912517 84999429 851302603 98586594 861412766 444392321 593663836 900980760 396541298 774738132 78214092 779911165 851395291 218784221 781573928 233533662 945365393 923170517 264992578 513294994 967222769 112969709 533729952 347732027 733057534 881945260 385582243 821633583 305228082 589147471 416559015 505100139 862179722 978537448 596236490 67087679 42507820 687553044 384496944 842333598 89176028 233990790 559213646 393458599 593947805 607270445 594874124 107816216 449687788 430823084 707170221 352270506 209330054 380817798 93353957 41374798 13643799 817237983 78033142 142870539 306458647 933780543 612839688 645887259 110427972 454060908 543440550 257401677 809119931 229486330 446582043 165319455 519953166 70580877 31745492 348143223 549262620 268926667 152298270 748367013 996113092 898596840 634522532 36620382 356075547 691866799 928595104 748139650 383196556 91963937 216175572 530839406 640094741 8840196 450278862 553244193 958374600 305498485 76847896 439520352 703873041 153477680 209910390 818639060 239900158 209749854 509876611 220753736 420021885 699967165 863932416 382365094 612265340 470041865 643079625 199784935 464765563 677866956 795188054 258288379 713321052 63535062 536756118 825002298 768385477 840058119 193199032 323208174 125163606 494883088 433225133 625531550 380611493 366256014 426761500 701304812 474222088 120927946 890918049 951388144 250681979 369122666 832466422 754077966 500415712 144133574 145266481 897864616 831943579 912708621 397520821 76202889 869622335 725862387 804082532 439595655 129062859 145085011 271129596 545321717 452104986 996679413 155384892 982246374 629678215 420320246 832294136 920781628 741846551 902975058 523741438 358670275 88045710 910753168 971546810 205696841 47576510 184829380 841712610 354505651 579803924 951571204 379064504 107325965 252324042 171587901 217950644 147724023 392259909 565385421 386691015 426267104 361451226 889826849 77999713 306633845 768628573 328679369 286306165 55080889 740640607 863829891 245618037 637716714 77609862 877844215 100789851 903262955 980834041 525110943 663022614 430816148 681053589 679863313 599762368 45101522 866896606 165059922 798241305 65539663 110054311 970025725 617917951 337759718 729371737 916900277 591224958 650457904 969726563 92683982 408186110 726612000 953152006 806465700 9204088 26930249 298296094 900300037 528193970 462548606 622901035 36647414 319922523 355697642 379077128 390963353 944160818 583971904 140988980 740736564 478128829 972018179 374873641 48158918 408342112 46412833 420781909 669711050 502319593 249646176 62604499 49373400 809211019 834451204 101106177 725047180 735334677 153297838 501205370 923987654 422577636 229217117 165154181 298145264 242368971 684902440 364234879 985440543 655968768 790890968 85090359 415387834 762753482 490819127 455995320 459733757 822893384 7500771 775828225 369946939 71482233 257963785 740952371 931998502 651902155 963560788 489251065 286237380 965807752 480493740 492983473 580264717 41267217 388307615 503103719 664847638 995872821 506550526 288485676 190000383 225126320 463664059 3705768 139018864 749681580 926666009 635614944 634900855 876445009 879691678 908675511 774427367 411968096 288061473 746303858 436037988 672504816 92164996 44952807 728998166 406778108 609217239 542429031 239839679 307200080 61604475 771777343 297026030 360254530 582782105 460535071 269873636 318876233 452740152 692914763 29214382 766429368 351487103 398454589 134150482 77227134 88897938 183857662 81049016 806743132 704424061 657876500 682023597 45699751 513206536 203185600 235493655 766178947 849497441 630043625 250190289 914210295 920304345 192707035 661494645 597745255 41293275 746519438 111968547 38288436 731134504 124057406 877110017 334896503 139834798 986963176 107568433 373861323 647016917 705069156 621637644 448158493 626910122 863507960 757858712 981020994 475931 635845850 375019548 554321712 7814285 153837721 648757783 577007129 956168589 539814436 938544408 719617363 701255084 317939516 337330963 952044076 458720391 476421630 906736380 835167833 50420797 404388344 742986962 156406095 379029941 887619071 258302705 56875569 989476890 244183803 413336026 670743556 239157577 248883800 15197036 667014693 752026878 187635016 811371461 832438157 800765286 815478192 576681562 617246478 565878164 18039458 662464718 854883435 602912555 852281855 632488966 98369672 637752321 77444648 936583618 805907005 646956671 444960238 849515348 208456088 163973445 67455604 265527748 563746660 1389002 929349084 84708315 871345407 839074651 744313322 947198045 145050353 49362517 94482669 360466458 551267326 77563076 924015560 76173462 287235283 218176573 298615811 796843119 541817701 356514015 589942252 687054449 303297339 630870927 860748567 361186469 122788784 772231117 716334893 636123814 499451752 437397377 514337436 589532214 439485573 268358914 129534078 976426057 756312860 766298214 413087111 383526247 718209389 49809334 626284014 437998102 291300371 422107996 333551503 225189615 996449829 278716909 851382394 942164400 731098269 192887540 397452403 400729952 960988810 680872812 776568408 604360112 355067029 574365472 754378661 823731095 11870921 275034213 338509257 479563319 658495983 301920104 179666350 879982169 150065449 721706398 254100427 873596465 272460036 359452587 640338600 537117167 890335133 56999893 348273462 389337064 477325232 536614548 114620893 624703005 941668100 934522955 710509201 543148469 567511896 152220901 960098410 820129595 659477806 924747721 58590525 833574499 865759724 563868349 732227399 301760587 641118811 641694134 326012774 184628428 734765208 496631170 851600928 399007147 191420041 857227090 199813376 677437312 593865461 163626818 962501953 291367397 661051694 235284703 792214662 302575314 260981834 524945264 880830196 68566224 566795100 718080385 843686640 929235188 938955919 638057428 130636290 380720134 110909191 653455401 146057376 693372683 235260635 86664631 651432387 990440048 115698519 317076555 242504439 276268305 148266335 611015591 987939183 844080782 993110386 366426470 876086295 613561978 943203999 763666892 342148836 678721865 781689137 258470355 304875528 672552783 606813121 724319839 672494063 238456188 7232000 536284591 395122565 968693412 815270423 645714721 555583672 369852471 301775764 171473485 773697767 611202790 643293616 942001808 306277883 965989330 830802702 135316978 653000164 586411482 328974732 839809672 22991670 365601054 886930262 367313584 280067401 368111354 597378789 696285328 694514320 986269755 955344552 870251891 596044745 258975315 342097049 299303310 567348494 390710029 742532153 667902021 488944925 949408602 150234535 357856017 639344351 22999894 44753425 975366914 917426856 242391827 232504642 952973638 78186163 407479279 986271632 717876025 97221463 580305415 615271576 737746192 765732013 278977743 999545201 422471608 389587757 934081864 847795625 323439664 145190191 208750407 307491050 559007971 600429145 900396210 538570854 123117169 927905833 135248348 904344507 792283550 102000851 226769509 1683343 953314413 185285740 93060264 646404636 319742454 970161338 819079867 909705890 892452632 610584093 472684520 618229260 125183141 785959112 546024116 487738396 113592577 127243750 484114379 9775041 491322860 756291912 88297461 401156868 153478805 164180670 88622827 67160156 115595210 568071474 158685588 87380633 269489265 252686164 784854901 486763283 707560088 403240122 355862509 240813920 420505319 205333076 597958723 758277083 35962414 866400100 351373543 54099830 576249438 555359515 527422412 439118786 491059331 748481091 689071696 121792494 85751762 101245046 313141117 28347887 778886449 287421362 283988719 215880945 320312538 500974663 119982469 682435048 73401600 164418072 726168386 32647512 265511894 761655615 37320980 231035450 274677791 67464933 579975993 383375977 541113726 214929265 770762508 351316853 72716740 733719933 736031238 330275909 383211679 480687966 991380597 631505169 467370660 107837894 596208857 586756981 356115306 213858802 584952605 346471187 38219173 720783616 233313483 843532797 790896483 462965491 620079029 611050074 901702825 152782341 3385505 253782792 546074334 460103477 705931388 28192810 246258628 647775640 518147319 675549333 394454066 664604618 335761095 104410572 606653389 275916421 419330969 409157505 414742627 892374575 191870213 448431991 101683511 923234342 460577813 372151925 320174927 607592018 565488631 595617960 520215145 105370112 418725484 703775258 971920618 148481339 737529820 451543106 331601683 258758157 730556128 62415337 332187251 994222444 102026409 7822525 648738020 512369439 682215609 539028761 911976536 637642371 213546312 150066647 806998333 43969163 430178101 396215199 851402928 856834662 637422634 586615894 809305974 173161923 240176543 158053469 804220981 714602860 315632914 270355044 735448419 567520692 377944694 380841285 476901754 779906404 726829911 974272800 630659999 208451251 288713984 568045473 319893947 464392321 706466459 343880985 215806738 658712771 278333809 66552275 476012468 913598962 763765438 673184115 28147108 684633054 427364045 899050731 587604795 809685746 962869706 389109327 376303223 933320235 360765257 178421612 638617054 728315145 302365007 11514782 88717617 726391600 38437366 706539923 835433401 956547977 531707334 755867285 535038832 430301929 368911828 84386120 213811342 591242668 755121806 599949737 230669324 958466437 637628425 854026142 691260381 977168588 556337049 725308909 261356331 580422851 354701651 953960953 416349628 285364409 655450537 863544236 658554563 554636634 783246652 84938218 851951060 240539152 811188830 318602294 93579326 374895229 735735868 892922099 425399890 389683643 67621897 180314982 530625842 166833390 187240389 668929457 342132814 883741071 599361178 142080432 788556466 910662204 365301597 248768340 761757264 337968273 586191428 59979319 906360313 576512079 140351170 327642493 630823582 399952572 727576700 331726443 138744227 820510581 148923411 175253304 601609395 686401362 365992656 827912639 170892802 371780466 487323833 338741616 999562167 808937677 194485791 117672864 752337198 654421514 571000675 417046476 637619603 290291170 420211641 37068530 186572254 77332384 603828334 354260855 17421985 767685864 437260560 873807079 703262202 751539057 851859656 166170039 526595188 52908546 717492694 761136851 262816943 917692561 975685019 254213569 10988309 813652470 294324757 374841467 615986549 813727530 401953215 986709148 399833622 373160512 146456663 408576391 736811547 118171137 782417498 528801439 116013442 4475379 894933823 21768456 456170495 713963379 655673991 793985320 835088577 670829251 498300913 321052303 472656716 3630648 661801673 405029994 267564928 104749066 805712132 329109551 528923054 536011872 671361076 236705304 701816143 592641568 100078341 341029029 647265637 402446727 448678794 861713979 579672728 811629683 473714132 875545914 671463840 939348872 587434981 808038331 196580093 69066313 759981562 281563238 799704744 815663685 524452602 696817690 700615343 285571625 92362447 568865206 16402262 371232464 839887476 596280790 61744673 766381332 873535009 608440452 734559227 562925369 893536541 281102710 865079806 279312497 55840477 498022585 712990047 708166931 210240220 195894932 214181730 410161637 383218618 42682999 585099920 233176498 543641959 839856086 130340615 643042478 748229473 829306776 785792284 665048208 859549859 77815852 901083848 351466768 109771800 708733748 178402958 753687702 442244805 682946448 722952171 642892692 144127397 578720731 572873993 640749662 106059497 883365947 351430122 175959504 244529085 755571857 80275587 644944879 426134500 33332872 40803829 48205484 870471526 709643787 441031153 451332239 919329929 263310400 729926238 844906820 983784923 134733922 983618860 917715019 775458638 590471824 180920984 222524976 699611408 468991183 852879883 330625541 957540325 533680636 164130144 308808371 870660206 351983387 796571 97895737 74095430 497791273 264779212 123427220 768022827 878463131 399220338 345953927 177643493 27934900 140808258 846592448 828885612 179361866 239140982 198879100 254966068 721999352 739755283 37400055 534734364 134370772 212494776 305168715 119886900 770220861 291472765 746251506 388454399 999002032 410553861 584055356 33120005 941415894 314205258 480621805 468782256 332654839 654342742 736553248 553542193 240821479 358141052 124025259 808250494 361267555 578333518 966393992 186508592 611619585 281423810 75841764 164539872 621959052 537565414 581031477 778892535 961426829 293863525 799667532 768875705 957659574 694529730 741236716 275076385 635554319 978044705 777930613 106935967 363998199 764639474 373875494 235545768 145033340 787043949 494751015 957955957 959242617 819638653 916073745 289202366 30635245 22150036 544375799 821354767 23511755 631995468 543713778 3821485 673290724 277049067 787697278 631235050 60238333 653679808 704020809 369748372 314407690 591330190 288470225 286142666 586065792 815774999 112250028 124436846 144258349 671731409 891541837 642295664 956028283 222609253 856620843 740312194 956378814 800185198 282008993 510715901 20702706 596278989 329367251 674906681 535149800 776825693 203553160 428500318 895985120 54599614 832343638 785294510 474660896 320460824 197091741 729057188 309674326 992981225 716064518 141861519 787513593 280968999 21316503 323362880 458751044 383781160 237093209 265285166 155686945 528225750 368271828 828364610 252604998 819012301 42876560 653618670 559865941 591343762 134784266 372976011 94005261 473774493 495991499 118152513 733834189 181422501 350918197 127306899 849215819 801277535 94925553 383442004 747981637 800660385 181966677 231881039 896616468 426630354 86434345 969643998 594744510 337692749 734273469 820366365 103910096 290419339 703876010 586325939 53210955 738793123 440348440 965576389 102089629 822519835 774655412 558684845 224807355 440319712 601810557 402067397 673733281 820344050 881292212 324112006 828218795 828266214 551544561 225109084 1530177 635864582 699543183 835267691 761873655 601590402 235797546 685057531 984790673 868569264 57084477 388578486 430432446 613185287 800282680 600300789 248885186 510210392 53012535 307173364 452355422 518464176 861249001 773507135 746272843 323493606 696577627 744946329 142489500 957115396 984965033 742183128 725297880 703862009 227254169 837088269 355604237 451507137 473152042 581702208 960865301 674554966 347548427 248035604 795490841 901612824 355708019 772772167 169951892 388270827 962537357 38624168 848606980 43665977 475147704 114711161 184157520 213065061 957913616 398321962 39580161 240394182 562532316 571353501 428278226 298774565 639736208 396219523 97803286 670684409 510340167 92649448 638758984 64267432 681611777 381019535 131101755 592491767 99017517 180517186 419062328 239266644 198894222 704276820 686499451 736991133 896644208 313242808 831399282 445623030 968468612 522448964 362448476 807807702 836501710 246700774 442366582 685527260 824926540 106163421 768410793 723547932 427736057 548020253 168591960 786943282 587529311 435252559 557782423 509634287 438102011 509239606 975472078 349443411 706069621 530805890 929637353 738021011 684127352 810426888 510136792 2970391 918616093 174877451 573868264 893463763 923149232 205579610 121730682 980599275 477706329 274763596 152432036 36454713 501790845 288359376 512520367 536856209 793771507 268346116 313287212 654050899 472863612 264426527 846781367 289744917 537733563 42800449 873490389 262621190 978563910 301851408 114785237 669005040 858151604 988701179 119305225 426131849 838719480 386989346 161383323 490240211 671665918 269037555 337656764 114821744 809984268 88715553 622308072 465875695 537804014 151908114 140695536 879319205 707738900 941639497 57281104 449032075 658571874 641763391 56044221 475597313 532338980 424745663 803262679 425290423 258016808 616884961 797834799 608989803 405979102 716051654 94574010 676547865 324928914 244131657 761095991 288162766 575424791 394484026 803583004 35841986 206795639 63383021 481821391 260516851 926214677 454341846 600815738 696124029 924264315 255317407 298873243 342577997 686867019 368781668 809935720 932108121 817251890 980206638 366389752 107200473 604051122 856617132 526581786 778479762 767855614 579779899 606921156 603677366 491275061 45147999 540027459 459780938 302156538 157349271 879994475 382932568 25928187 560082417 558908133 798130987 854679244 60906241 821355504 696939652 597955667 719849425 568884380 436466127 510289884 416237074 16588684 274675143 842849324 437691374 83455923 935679035 756128604 861414428 860857435 826021869 666763736 862065665 624170399 763371745 634007011 687110433 509387919 477248671 485785799 341332492 686468774 231977644 84037364 543225343 409206158 606319050 30839598 292094028 390866186 873162499 252078428 661252846 166865171 308748678 914587653 833962996 203919633 606823011 288762411 90799706 219671979 784253243 671743740 225882747 752354816 881277080 417216363 427358707 695536539 715372075 665413272 646636443 514391158 176566239 688664707 560196277 24421656 622183231 295881460 143104385 675040763 169129003 716114292 168342036 991149494 163674600 827938124 604238263 237516718 707715774 769512511 289784269 338785414 581332655 476490064 32945808 803991078 390250570 312187891 552679835 790057303 771948474 359396434 700324629 676910440 730402300 248471959 513107509 212390951 593304721 813175167 662642833 406006723 323809136 293718074 296047356 642488185 35025710 731962423 249435124 414987955 273983348 195937532 957052390 608497163 799632157 896774150 446380741 501238143 710944444 387287716 644700378 923880718 938689725 448206078 144115311 841636031 875475319 27890248 863781633 892669668 14199747 352427050 656997136 410278507 638841713 557112431 40326810 331970130 987890076 109310985 641471034 762893155 64879028 883445054 691727935 914905912 826691322 175744122 484327548 789989145 628926328 965175010 798857158 484673142 323968774 206880754 65257312 266693555 240991121 63298874 685615926 394699564 443711627 184171434 424347695 559670818 111996452 485608193 970434189 935681475 559677889 333079778 620046838 316297869 85474969 280802636 288441189 468940800 879609583 869437398 5634083 902353163 117743293 666411213 719193432 339331987 552286359 643090088 508570079 892713766 805082210 557633857 632173925 104387519 766262532 192749884 545154739 195745322 667137170 546718522 532891005 282955432 996889115 600594371 803596707 727865112 620786705 401816574 281555992 493564286 140724816 453673456 715511392 938840584 515625677 830249456 344134769 285829374 509684951 255460749 251041669 266577066 691013824 768242750 922391494 943603220 729113245 253969414 545242328 807068147 31937437 282844159 644109220 147540149 841072516 57771348 388727555 671160002 21495237 328064245 656698469 1247261 43278239 85679409 193770707 556395319 93401204 488011337 40341113 703638775 723634785 54178657 74007883 278384639 154309521 768462947 284422922 922549760 667275006 704131343 309190692 793953162 88605872 25818495 641595148 573924859 561494049 864447015 352074758 170871267 202228084 918882101 492963907 351896460 432761882 465353998 893889456 110821984 767673367 867814960 460856501 820464882 562235013 506212511 433468903 567772483 101583361 323756794 286107112 416121462 869157633 623705385 435269738 276856926 487813323 358336458 536710069 173832394 103981969 546354193 660715763 671702751 359858102 713292074 376046521 945203044 201102146 590354333 436859115 654200530 903081934 986577644 526201178 109887339 138794785 602149368 591148692 936515657 185068914 226873812 384560026 49417937 552663965 302110327 450620430 622489007 624425852 332853118 583091311 332713313 178625805 482658015 195926688 142949142 373533920 548738942 364764825 308100986 380384139 753030800 696945117 769617589 940420622 328051065 389435513 835508985 416463007 763650725 784692284 337054950 251346010 293499210 918331110 935636697 902719395 391762096 340833931 743933171 140029619 151898463 3818524 629317451 350790169 709256329 958265312 379332617 846066770 974549833 474898948 647945346 76114070 967132913 47958129 281485237 688656580 695148360 956340354 931915530 670014861 623459576 486140096 113818840 794370538 759107067 845731492 726276670 767767974 235867081 738835394 215760529 286728198 584997329 372324169 889317883 630822548 112666583 256622242 152541246 653257554 335081639 689285412 813362918 182942867 870444148 713605286 590762492 777123837 385508829 71064513 952037138 421530188 218418170 588920544 461180710 955505679 449288240 835299783 409821305 367864582 21970180 664796351 971701697 192783263 468484390 632029809 588267692 979986116 440149498 313716179 476097322 726331424 528070832 671442463 747503306 191158033 541622720 763885829 985789304 189374595 906984393 97211545 943844172 328494014 287468538 409322175 616660081 168928596 83821992 81049333 547546131 552550285 700562231 417305116 144878733 746655063 453241443 219529924 737863223 126436935 588509842 210915808 781500200 954819188 937021812 344067785 523895815 424929786 543748714 975752534 551805430 838976906 751078325 23684195 812384134 466139501 17937066 339420450 394041115 240548949 927768551 189733981 873741311 594676844 958694710 242460961 695912645 258187792 115646668 301380750 671257154 894556217 537834664 95528654 555401217 557365441 732696585 810682717 946005966 860336018 579350422 804310479 342434047 360981283 939059937 370938811 448207228 576836700 932433534 684156871 134893441 343315400 798908048 958016971 314480930 543023699 858548512 369772669 981618198 435096570 420054546 793422108 46909451 457566490 536858930 923529450 980780981 567925277 973782966 66249784 137377130 139543111 523271806 907578600 973015388 869223585 434233394 991698736 632909078 24891537 349025503 169669778 70970340 656197256 420154882 628119208 621905673 325283130 365132138 238175997 295324668 542570435 998432367 501833289 75304044 768177219 388936423 79092723 983860923 975194265 766478813 638765122 823734597 505975616 708133281 598617939 863038004 887140781 970097386 218891402 756065007 869062129 278904990 305996557 368694025 130369113 851974822 457627404 345188724 524954996 994936975 362505452 900680251 906308058 886199315 294901347 809460997 635926614 185191140 328905078 301641184 432218196 725227485 396588755 872706069 979781388 370922831 162369340 500710703 840045583 849202872 333204655 727642906 346074058 866122548 43157351 676849147 441605255 262419401 300416901 675505736 60028728 115190637 527430615 877058287 505322870 93744730 84076986 217619055 446422524 42029958 118016812 573955355 643014845 108903780 266553324 383943633 694098017 94792179 999533228 142318926 626131268 986266152 503108718 719569435 840056071 481355009 924907583 805252993 483969472 343969447 59254317 512796809 599293025 249803718 494002513 13072141 357312265 999659265 642994895 12149893 37577272 752181448 53955346 584204095 156442366 712784323 911982083 384150401 509041284 340374895 968319055 73263916 613894358 71813569 827242011 443605753 712828518 75095858 13506823 349920694 36633690 100072613 641870986 975578010 865515831 975242035 935384982 587007207 928604482 592727710 729319467 677147886 73838396 991545372 161996364 772147381 835704618 673203238 610570135 298551585 682366469 815869017 901685581 37037815 630569410 473782084 923446003 620459881 568733237 983426532 342310324 578062276 514389042 378393492 191572489 457041462 48900351 804183981 868061267 772383692 451920074 199622287 420733625 425203517 494867437 748140971 630176326 399382954 803091464 92827012 979891551 625261547 19922706 509110434 864805606 758073376 394904561 485529793 147569042 86813838 752449836 162870325 46170588 65502143 781895103 762845930 248294931 721083604 217063762 310573135 565815012 849826131 836092447 268476436 693567263 102199054 306705914 326048512 39417096 683860724 457200773 164442450 728598389 282802741 404975313 715411781 238118545 17684304 416437304 692548573 317244188 84911159 999536502 606615457 998540451 770310256 638215649 337236500 917338866 756631903 563908330 784343696 239524460 296560241 75231215 50002200 65815977 597028283 507426739 729683834 83784988 546328692 135258698 773995904 119703092 532597628 775697061 434424722 805123629 173098596 864246394 581684856 940276262 610159027 192412821 405303280 342594216 406224434 690849759 351250590 745427886 819113533 786825083 897914128 602322981 200973738 39230771 980145473 803090605 630610092 698916134 353124671 724464725 423885043 207459893 671353489 145027601 299380585 712168458 721929160 712751029 432496536 771075559 343987983 71084347 92475236 574854799 602041282 992390571 48922091 722282910 144344662 86827806 669018576 467685081 574095178 554268480 710204136 369854044 193522295 342838466 842234467 558207551 741701437 451969083 898415401 927765051 497354776 76418287 880586426 463893221 857763816 411261834 855430897 248058329 447959458 146197267 740137848 430656043 360696282 678516221 456570473 703413714 816494225 879129122 14870053 585967717 375203419 240893744 964519147 837464831 637307200 781315769 228815038 64408034 641727748 363411523 438913907 284611610 22281532 327103811 435942610 267657264 591171297 51885606 584500495 89193077 225672579 39833727 951163124 353637802 363664985 205676877 179205121 463839211 927952927 367682503 441548352 678760866 521604596 621848806 365914460 534406653 524142478 426282924 747449260 704474337 929073260 220608217 881378120 670950730 285563197 209327780 317516341 596808523 402850316 225469393 849811184 270873573 37732238 647882140 768887891 623031037 407702783 23972058 187993198 588715378 247166104 397934498 288936524 763530496 235455527 987510429 736697630 446375712 264502900 130385619 485612180 237203232 165082415 624904185 157407499 793972874 988518822 392802485 546956744 208582149 338787251 770414570 82071009 513756974 352384428 590526562 49785425 260065979 309507963 604934242 372612523 363128732 70955076 19990213 909577309 479958325 327269749 891605629 362843494 418619440 783264822 304270697 877945117 775451011 717288563 318447733 255669968 943741310 697546816 674758357 524425911 776649885 327815207 712542777 766789637 737523032 522560880 580224762 32106754 38153746 757521649 843124643 813345915 823735360 331483194 691010687 336592758 128967769 228209279 64910461 489675093 467343816 639182920 990584933 71920137 203502225 473109146 847007169 713140340 606085326 614994687 732824525 676538827 99895500 580419183 202516514 392862081 886672789 846750432 640348707 149067499 408637477 857149442 503878783 915452115 937801743 183642692 658527949 86622548 413974741 439553257 99233512 39257789 316268559 479195938 260138444 60697810 272667979 585951322 501554133 477414225 25535282 192959755 610406907 198362787 370838238 178345901 929932542 307179924 433819806 90153907 84793153 292296534 460462396 118813736 773908057 187462733 588975769 274276189 353891517 793947689 483042700 670833679 849840377 108055705 720694642 623677973 932668901 725368778 924181190 205443454 594361479 913371000 676354632 923911820 866740609 424939001 887222599 386619528 284797998 880048940 764730460 79865212 824528536 689780358 427041467 251726355 472808750 119811134 828981409 356076600 822741105 641977757 811734804 795920576 578224478 243909485 471821478 112249312 418654012 266746684 234417520 921279450 493822561 315418387 928767025 848283645 490816398 766046593 702257318 873120990 873286857 273691803 336405629 584826940 48907093 417069987 214436922 467149379 404152317 68624862 463895879 111133897 362745299 443383517 832985973 697988264 788704941 274785740 4421182 167877695 435116336 658970610 453543036 106847515 77881719 849963283 217521653 719779837 656661023 740206310 534515549 695371591 573068882 479816824 273757390 770320221 159039301 926535646 119861027 581552063 243925621 123773715 35330878 306027612 294658419 762261506 510445748 195212668 634154205 946092675 485378336 407139480 931399114 184427499 757803823 784617468 539512407 684922477 692064906 248883769 142827045 168648316 658347196 787695950 642880168 39355991 903586736 973947037 355837106 17653698 435964294 89172665 977390057 717385027 438273710 569196803 770384472 633974100 567270919 27535053 883345146 473596584 458515829 894696567 622172953 136935342 974899478 64895947 713647897 731183124 811142840 998737734 661821538 657356761 329556403 532528474 290320238 427281800 391997658 883530282 262389665 110497092 971863626 68922767 741806822 346798716 368205152 21447567 668198372 241053311 502748348 991763222 576037001 456861860 667978087 566814923 255721785 662729677 235331757 689437502 390179458 81835167 981989570 575753649 37100702 68587740 889156252 157662104 780714917 499015555 46151540 586742471 633476114 705228403 562335622 993011310 33125529 37588201 654103517 477338227 8294519 737777368 477830287 804251144 619526997 885614899 361385542 745315488 419089279 833790688 997564799 46985806 513283999 630359256 662069987 858778968 80617696 357695209 186003642 739341463 466653006 459253819 931872889 275695649 180971549 837277356 43118418 362465239 39115831 810728947 739430232 390886038 570531036 908618297 105091814 671194091 955831839 117718588 991550745 482277986 591229389 822371385 14897900 462873439 862812836 709011673 113261816 996897218 580949298 720534109 745560699 676987372 131568680 806681905 266352443 11716040 557806329 594358245 853770885 643117378 246429705 121620117 83011505 779010466 851444538 808072796 564902270 128179242 725429422 457334990 49003450 868240470 329058522 523069325 102781466 705937506 380266046 418843281 973230027 83087500 649827978 463240827 770872726 929708210 631736126 516963360 723269741 402452521 925775335 591698337 845634653 954884361 805943884 559042182 453144355 626532301 477602906 633988820 137017588 826252206 85360167 202952134 962829336 656797854 803716219 721760494 939312474 941903467 711252865 75575987 201365379 428481496 232944026 506668244 766513715 238561414 535403969 394992186 973426724 208909811 137363018 168622683 203467607 685576358 198440132 304442863 473222500 942069177 174215958 157010248 671975632 993338085 156604084 253183804 213213271 67010644 727385966 607498439 10941545 675724247 618471163 659454877 490831741 801344162 889735632 790013434 521942923 73717316 188026001 297311021 823244960 286401176 517630992 746043979 986958460 662035608 765913666 440921882 752320820 971706654 335021221 439915780 663191884 30128243 404384439 501943468 318917037 943351711 998370389 228349285 290339113 248743601 551790620 448215774 492332213 269039256 649700047 629068496 397985231 950269538 24404573 853315352 902125846 43742298 431672725 875776421 550126746 835817372 623171435 108763063 155760331 576333762 272348233 399407986 756150761 555964637 515422558 761005579 746081968 635348646 847258 873217668 33344808 59159112 282196039 964727843 790344117 90584477 811812073 491933305 843679163 767160418 893897156 551175080 857386351 290886397 900418819 25776673 930667764 74115791 93011532 542226197 93157254 331542117 500298996 842684894 524229906 128062785 11172781 965314170 682155723 398334209 932890537 92506929 32648994 538440307 104069762 833799467 311781284 678808425 327858579 847959776 893393042 405909626 721527718 867345842 415605769 884627459 159589732 626892164 149995971 354602905 393603407 887661677 488402312 573067815 187776974 988160260 99363524 941132530 783999196 827436260 436249606 16410640 643535703 983796578 712185067 957255040 745821563 582079613 615559921 775896608 932811308 633525872 127529149 1688069 981037767 552249564 186907052 712850430 436005235 489317144 834126029 650921064 65601418 763160833 579522747 630466745 509414635 676762860 899050878 456537666 90469509 861538050 505330725 950316926 2298165 445074940 226609641 575455980 27251048 812254571 964377774 539712143 825708940 658556526 416442875 725071719 904447724 15707626 999596661 754322584 774314663 934716644 950116127 23562014 782529878 135807906 582620784 910729508 344189869 898402410 947391847 676866465 347437121 989194572 784130672 666756143 480399072 929280223 663555316 623782585 113710270 60926077 745721984 851927720 635817835 737243732 725087929 853004597 502767522 30571287 287243197 773553156 316722722 629401444 44158706 887759348 861053480 298437849 262172259 264128650 86625232 814436772 940023930 842034848 548202226 975229084 432154429 543588699 217437074 990672095 793794115 949799379 108481829 967044096 660164990 423832799 523901518 101194357 985837796 316462287 521355069 326531086 810913775 872438494 604273799 471741595 244924014 90548029 240793955 807887555 418815661 753880854 710024954 634393176 54245399 577473861 390090400 581369926 594952679 719794385 242082751 138232675 469500869 948145430 777787578 861308876 220993206 792941246 968568391 934588932 971100035 650360534 157468717 6859960 930267028 304619152 709571816 801991118 377031754 139754316 78150326 19851723 80771245 288853533 557153257 405510335 132560611 171334756 351549557 41919382 899465795 525041655 989144643 443857490 993808840 875098301 768790092 99133578 629958483 292957394 870345333 430254716 446519852 854388810 85966733 507634736 924246715 163605897 930876189 882463258 549246615 238249611 975296319 181853284 815972515 207233667 947358518 824996059 414150357 771403301 189083978 771341082 611701570 512577063 752344813 970807969 202603072 916076643 897180768 15730811 571567274 251414154 357385459 95357011 497231692 172372400 688048647 470568258 735689819 917473931 397355719 83476970 530572909 754523082 919881602 53000926 31946924 932227742 280519607 526988195 289047424 898492885 428315593 455484197 408533134 499037622 957090237 87950919 5274250 417600981 402398148 348298929 713655830 721331724 276254832 98659944 431196538 521521807 478854140 244149529 851115199 375823779 703856190 732733853 368317198 379044225 572936186 366268559 28064178 339303137 475500490 81246768 863280917 914020543 444674202 466296239 829191481 522205372 245984142 495843911 83951461 250991558 727130296 159074710 75150531 600247531 743417417 755201060 956244007 411204396 146437421 673036944 749764261 713037332 121583263 115432950 388366713 766936964 321417319 414648245 354140637 323585460 52236190 295465546 792679901 396160645 12259218 751753784 994798308 360259337 220344691 290201198 622578857 828205216 559965675 452628616 241182836 163245235 330350283 661817392 177327300 602562378 258069607 35887452 180068533 654560875 732541517 660414367 649434374 399261843 905251780 808656921 321749120 942267892 195143116 325821501 826179680 228294553 926175137 18489101 42966568 576351656 206274518 547730028 923187775 543954064 460624967 606576302 989858186 911684313 865739503 75879030 586250027 625102929 796613635 90703115 501675109 67848575 79360738 968132216 505582122 683767204 976184346 428161158 956118012 308837563 499551853 790961240 860878593 465166103 281922098 217126729 910427308 998471019 818928153 218050142 523492029 699988945 390612558 649714856 627014900 947223535 818166508 780198203 396644965 842970795 970094026 459658145 575150943 602613324 276908301 67297695 128536881 643189710 157052470 122923176 186101206 390127956 918706504 39849381 420337042 657644704 925890355 533865402 309848964 258263947 234478841 460970198 817804356 635712739 435642009 183247107 381061160 310431284 530242928 236457520 988940039 939826041 219493930 206998521 343445887 794734334 100446461 382016720 568121972 263342683 791901910 263413477 265877890 613577628 770758737 761805086 515566502 798092360 411577229 662678893 273075772 323902007 227196096 551466461 204651328 412627098 700552486 541260047 498033511 679616504 902621942 104755034 532677614 53884274 668497572 328245569 828598056 217903422 511673056 218044906 688692494 747648146 913698045 703681663 367834919 657172005 283566732 278153129 115645102 858585076 286414287 305926773 470085140 722847723 257812675 267927974 445229480 250493647 72027157 136621178 303552948 453383306 926513552 207264189 880734204 240011097 991313954 834823629 912078067 830255326 378992426 395459138 139523537 971909724 49254279 869148022 448700301 107892977 691383437 22100073 278412752 803443911 128382798 551654072 587205328 434289020 31526526 788587601 415508750 844502914 53168942 348230689 853954064 948718579 441159262 102873492 346095755 794674670 682786396 33052193 319011162 575810508 110480761 340041075 225716564 232397726 40422566 728238707 621014781 808768666 731545627 858351847 727686790 664881448 812595290 539260254 934462604 341071439 866014720 76881461 372335060 700395224 721710357 406712253 672175789 334411496 849111108 808215728 562425582 712251753 108888047 945478726 504689078 193366263 220353647 520822661 168008846 549723883 200411415 48108663 418429893 313653354 68288903 806187994 213353325 234343536 601243415 760454413 833216449 974862897 124130586 926033711 424948758 977805456 492532744 859642284 832517696 905443365 645781498 947556141 427586332 353360887 560708317 905679037 550457838 656188675 934904866 704636097 311312346 420953283 72593879 707787714 712970450 909486762 320119753 884406892 109523925 877827795 664448757 224514054 909464934 295700466 695626503 255958464 451819372 639370457 683983937 992443088 985646018 123217208 989927691 947578314 402472612 607213450 65234530 656134830 949894629 969567346 911312470 313313291 564986215 934182287 137873984 940984117 837749556 782256129 625215706 178324980 118784313 714588180 566144711 936155139 463187082 425932712 101942666 166612307 554479727 96378967 956735915 253457792 138754082 145264555 74599069 243534854 854479791 653755958 607821388 195296081 425421239 751209941 995417434 364141017 205923096 47621518 321755333 129898410 536814211 739986443 343541719 505453754 654744329 312821103 737302968 789362786 147394020 110690169 600504695 701298018 259650482 572409190 593161621 550394239 333591013 460793697 180760309 846675357 959921532 626648995 50844552 604510245 106192494 698056741 132749974 2037100 924113889 68182391 849604418 981656101 473557408 342122187 481162187 261012704 976780220 206951118 219631970 124707310 443901362 988029053 762514321 327403343 135013011 504564003 418916540 761302791 720325257 583714265 277851786 701129088 951306318 161247147 595391091 657894432 448510386 500783401 358632192 875145791 233357164 254874501 194695603 980171704 275593857 912704463 764790609 393076917 283910060 743678130 945791880 142423153 889327303 985422323 770654012 723343548 369821121 399345577 724723788 807220571 65261584 552389681 742222319 610137817 762289943 546821291 500159047 673018250 43901067 758674861 925743061 954395076 71627410 102619376 101810345 723141095 945894370 205390087 793174028 980714246 613150813 885434385 753951432 108881169 541589551 218157850 54032175 797020729 563511908 880083954 684674400 158091142 844004736 151008763 120832016 43448508 272335441 643664635 916232079 257259500 816517261 870851352 293351956 151160762 711844320 86016183 999099548 607343430 742455729 457075503 607606039 12811685 446738274 85215025 190305551 980359428 716610071 460982110 235687999 804997699 205701574 845023080 915842442 196278243 663889112 317216852 56461296 760845783 523234759 774769232 722971691 929781447 563314295 779999004 236742929 521515303 887689797 261436231 116015367 95732697 716269933 775757131 810755872 788027349 651716653 484220461 156980417 252871012 14681271 60764230 808553682 988544437 111843504 681440250 256783532 604127360 3107023 506541759 760163102 549685742 266578696 32576004 145200908 311731200 375438291 899570501 848236642 149490881 982562491 522692261 688962581 669077827 887871630 860320056 96994882 911506766 369418476 198697725 125020517 579041242 244161551 118639685 56157184 415530344 997027390 809596630 380290470 450565753 189603134 796741169 517279404 240777361 731082680 65844192 487736063 191024233 342238046 901593464 137910530 99576926 918107214 595443495 938405244 599077698 183376284 679325609 226736727 431884391 727843114 114579145 270372793 121652193 656674098 753341651 612177531 956884297 245951981 83853052 98373567 176493998 355384134 198459933 355945718 843363521 508225118 887574377 926109405 908567747 635255377 480173641 222632967 761056237 832260184 420201876 943235076 827252818 529735387 736077268 305148669 849908384 422805916 212716923 848619606 861564480 20347765 395240724 713937136 959858191 124857192 702446412 39702816 480240153 574194804 264225925 608356155 588900068 845127998 450966068 128283996 304562247 923079724 845653765 742496532 438125727 823335430 992179460 308748770 319490114 21198610 87429456 508721118 783911211 966273369 839512927 723449223 378348257 86407523 778792570 371206182 318682856 755405351 687063041 358936238 46712427 221708172 891831268 598888522 796255557 299075099 193877877 488935961 778352901 970585938 718402352 364894404 180321944 904037513 269656273 714919863 889803293 122415788 518478389 948649415 295011650 734650484 154824667 382280084 598664769 703090625 902599996 920689458 501744123 235949044 358608590 210920524 162747511 688121718 844552608 323519534 803888960 589351521 492252385 679043352 832892139 772458304 758491807 58952040 447935236 774331584 659609212 610622478 134663276 437075796 580784530 207739438 384454359 232322087 369864465 404899603 111429639 501134279 873548146 148503098 15203571 617808114 694289765 603595292 298104906 630705549 47212063 826293142 614267378 856523881 107083843 687670960 239565699 807975029 165669739 971944203 839574035 299388435 266533575 159590748 721456861 261888226 674884984 344642586 445809785 844084067 648356113 678950250 156114138 389486981 496035885 642386814 362207078 376079457 844865340 52545926 473376890 840698974 439218073 588668907 131660186 783349530 847541078 321313774 78466295 431332293 428813739 712970578 739281570 755020343 667516852 841901228 85505095 590164698 840801378 341359497 817535945 56729911 926791746 371184430 963778498 352886773 229496210 500281915 861368092 494638859 7036246 387437261 486053454 853127889 133478923 549755150 814635748 828014 92951592 522919423 968366760 748820155 914345103 512734523 181064549 923128583 114280084 411566243 261717700 80831212 5760297 496411210 155443974 628332369 89182118 431887608 156993867 997137541 557367958 250138571 876618223 702054620 166986818 745376847 526797908 580409371 297621362 396923016 442760953 448003147 408199690 213348270 713424592 249276955 492388406 91469695 483590496 698325831 837266188 521027605 417799286 255386131 457853825 887036183 765367497 844291264 813341890 556657846 346801504 768279924 944179775 471278056 947456497 49293749 487672287 39189611 555722397 574303403 40552211 318288847 264810682 209348409 402468497 63412202 152931958 792887036 638897490 485587209 534123743 478684915 683034815 24315945 426582625 383766093 834720879 92733503 440264933 895539051 197043439 576291626 829688504 929826348 153311912 670082866 274928111 158918286 42966625 366260630 308149422 82863956 122010563 64041934 632055094 937193426 70576470 18761255 336252550 395538315 92219560 647681606 27585157 801577208 887608587 861554397 828567206 547991 758419740 975284968 536755524 732189069 672612259 730532890 418441237 563730204 557012444 243519358 909466852 886410418 320280432 576503021 302967991 800163893 915337887 606358616 115176678 890656195 224415756 254416109 234350416 916489066 325309463 919883227 623392607 157847305 908414961 139189345 906626904 400508331 636498400 613331561 745802826 336682252 965231768 808828809 825634322 952876849 158119519 271253202 650760847 866729564 528502166 792499239 837342853 173705038 666808660 318653283 20903765 574664306 671103332 183255171 240625538 251324902 60649670 582038546 598232720 883077900 815629677 858214120 757059982 621231918 958931651 699627136 907243 982812682 595344449 985656317 740896020 891759537 890453132 19083891 539758572 449429043 641491405 620994853 481192099 675914647 77505725 833683358 985770636 768106587 606670640 169110036 133599606 688034232 804853010 511663444 840682898 463076605 663743041 181743994 833745525 511522767 361988704 178097657 947021683 910867058 789669483 504417903 943352689 86563921 916593476 313281067 2849735 104808213 177484477 974463010 430951558 257162693 94682904 980071305 266240454 464108102 139912321 456823390 186920749 935847999 86554407 551751468 249109689 970985958 267545916 624724887 68166352 523053590 545514744 321036930 388772446 578539318 805204357 134472089 936782780 120540503 413924967 823220019 629096914 678833062 732589994 872076833 720223309 505788361 172330860 315233599 581366681 105171643 543016888 512809362 704677722 233221367 223332056 438725552 498790185 153505638 612665654 622477274 81501815 605821246 939734923 667648592 561905924 197705322 770769289 641815302 551398121 172520195 951944374 368027413 824232809 727508311 909541933 213583174 125956455 606244610 888007571 218106551 195584515 461316096 341993731 326420866 536879429 463970099 760184950 715699170 90615364 601951430 925622512 119136606 812589004 630776240 401332843 438220415 657180672 113132816 344225811 347562890 320763847 329627831 555621003 254468675 427940409 321466214 534354504 133477823 704021014 546278822 757000009 775699534 891710143 765807100 448297548 8951252 512267838 34186016 124893407 167605263 739282978 168107586 600558257 85653790 894168569 689860934 100096365 667504570 406353277 950254548 591872466 557671496 617377236 20117518 630870522 578896929 578510235 218228301 217762439 21132065 76990295 415822103 237577496 261890038 40692346 114926393 564722880 483422057 768505911 131437204 644668145 400757819 992635383 444267083 379469402 928343410 366809618 165721652 298702544 524504800 685494934 21744559 626371092 494811606 995499719 71805809 793977605 728197752 810893193 964744745 842561957 144099037 841123691 300674047 150019308 312487549 50643883 540890432 175919399 115003499 39698714 230970335 275240060 799981739 224751222 537333980 647607169 849060479 734798187 921760866 544379755 307699727 608338779 155672626 483111682 216276700 248872420 649882250 449797378 212893958 361120506 935315350 706889898 102426765 996095478 100673222 588920669 584314876 742855258 8605875 494573418 566679140 427111654 296766186 315604404 622712372 324546967 742615761 171877385 381779758 959334137 905731 215675797 843488867 691138161 102603880 285266556 273838564 947136554 124548462 383269 236849061 471744309 865025932 279388583 95974323 490328650 631353182 984460884 812623426 84253031 647300989 169764550 194836652 763067258 745041995 40799768 637724135 719580923 926007457 332371988 863205821 100835889 13759472 144204225 195442202 242948371 116544728 815688918 778961111 240882235 341307839 754541505 67333626 187785717 391839029 850249474 751212460 311955577 596109195 235554928 250063634 548179506 961642284 913642895 117098507 728608526 949713047 217428512 259487446 915538546 986236338 251705516 422624516 263315282 917970603 342084616 235618169 125564694 390564242 642732621 834479743 278706767 403525819 248301041 330643530 84373375 974858701 532469685 165218754 566510631 850679091 439480127 265340772 343138596 71157772 676850225 162091659 938426919 641978738 403790646 217753567 683266538 290433702 580865191 357488528 62562927 725414025 873868550 607106821 199134373 90806748 120326814 92451018 302587348 247580867 854816931 647681408 946023558 467161265 483092969 47836106 618428449 460840314 379588162 996080060 994126091 24124788 307017199 94460169 207721298 494979895 873519983 352042562 213123913 446567527 647303358 861348299 935001623 129155520 613651583 656127282 586014106 674115722 212678142 660000584 826788047 950755042 480814632 665783929 224620205 214562610 481128022 322756936 140230869 66605232 330851320 380743874 254604248 228380751 304480362 626099333 210979616 404319881 726161384 492502298 471502035 904870882 861580684 439592039 861753422 28038677 537376838 784890735 210276002 675495832 976778612 932992550 619736830 216367526 744282814 1473398 810853166 18617603 387042525 865438477 352116265 173825623 191383139 190298979 676192073 740545119 414578550 737782064 227176459 214317895 998407747 605265202 645733849 526881709 559658822 324151396 458082612 732197638 280608447 979600605 976013483 469098442 27935029 906720989 313621828 776134589 546966520 866728309 77522317 67009104 219990691 181923996 504013239 385097779 461569865 77445610 311846128 776701125 74621606 226816555 248272951 147263980 93622285 78868168 406622416 616700359 97382257 529587901 757570436 789479610 333299543 999409521 789690343 811314013 890523911 240913736 220575760 888766745 731513257 746524393 222239902 701760150 611929842 450358239 36054936 896643920 859906640 122011132 12007380 246685769 768664786 979124280 451373236 969767911 806419817 926819578 862299163 81500149 953397383 915847798 794399708 23209392 859992546 221207402 49595946 235088664 321131133 344357213 136646124 154401860 722111588 804262337 744969258 474798065 594790947 952493799 700293234 560144077 818106578 514534650 899980390 552736534 568594548 107065525 923970153 994522575 507131247 505451740 232638203 421959237 212589386 649704999 436541226 511626023 384876121 281977765 937767784 300068884 23243789 524528083 971956080 544128534 66693180 835101351 838386266 433674829 778657712 314704294 638735866 145290248 581038266 995269524 456736677 729780392 986690361 242508370 176535321 513371930 620440054 804877082 678361913 782952571 825578037 116793472 603765749 523698739 767150562 318393681 707004559 483095202 341645310 287506879 611492684 25716588 966825789 804346927 985918465 274267087 762387214 335319107 399037089 497218723 561400037 932265449 863424667 554628800 765345225 317867943 359071366 625099234 381849555 382967006 648349671 221825879 355195226 542700607 68934045 430990631 56445885 73149384 820125345 845649692 810269467 494500482 963309633 908354963 412861784 752505410 70908619 109276557 223684933 609082892 464120318 612937605 251171115 868819205 329684208 164405322 344162650 489400020 171316960 376893600 958891981 323377221 333488461 313373325 221983443 24039034 863411617 784243716 978955349 388778463 988743154 105345925 298406463 367462899 652571109 83723215 744377420 450588805 208430199 445296722 440133124 856863292 761400785 586627845 185851327 234266876 56886315 299654984 199608778 723454579 963255817 978652376 127152301 222294817 56213761 241538116 628137639 58556351 144961417 489183573 264452402 840406954 204960397 584288000 517617222 987017216 942862273 131640723 756102126 938164774 563748336 304640041 126166431 352014124 432467350 85555841 52866047 528673989 656684113 909979649 234165375 124871919 123927193 312252913 541396836 419707258 602423221 716367103 925394767 668413973 787821512 808675684 380046021 864586087 930487009 481807845 715977421 438013812 204318611 601326839 574465560 386178308 458177426 271496222 565683171 148377957 74086345 709164446 16583841 208705549 377670892 847446389 54566747 314605521 534294403 432624786 697291553 431201842 887716263 515291659 728401564 666596522 224144980 272107348 109092717 653188421 635823971 473885313 541423545 730391667 20370624 169319500 496890469 389701301 962507516 586793442 736292310 682631860 866338720 580993903 832796056 191957760 184452501 591143021 334108365 590558328 865797109 592892399 138646287 887175580 818218675 643985321 466664831 824555922 457296137 505083273 607628683 316873259 800243409 785168980 889948510 760828251 261465281 837200944 88575007 364649402 63203462 137614731 753511538 31304842 692619831 437379444 743858125 832175221 470443817 445814726 784817800 737496121 460690131 17556416 980572682 879623199 287272235 502512819 283250820 933897699 792548737 470269733 141529042 994870427 277089877 228338503 431638012 376661293 760927068 928452173 526005664 196287687 33188963 70902904 758387677 402660635 109369049 365231972 929531991 982173045 193757846 199132844 398007816 688048770 631645513 153506551 815343003 561251006 414325505 310865518 369866926 216753280 630068209 591834318 317217440 428255374 488557950 807122198 123430545 716890672 167853808 732588298 572553294 59320554 889427739 896480231 877206871 923538752 697454012 51645745 603778593 56210385 256735838 788575117 933112953 469000082 763816720 358180074 353828446 472826557 411949524 331831091 471570841 280550468 494050884 803234997 508684121 458336348 917908965 7366575 474534753 443233220 168298551 794932281 305637075 753603231 821715235 752072023 198266602 946787807 839860656 762239741 90825605 844195341 756387373 650032358 672646364 580462709 237066175 957139567 282542382 565090337 162561317 428868023 375763401 111465392 89700718 594038761 974924911 187253243 97573576 490845959 593010899 62459426 739151283 271550634 779214374 336619860 26786619 747916592 833307385 444238911 180730182 841215139 166093265 484372368 220420704 530634048 746512690 73451810 96000837 84475789 83892376 260715994 967294015 98516553 16491583 19502118 377694674 79968688 711568064 157116947 791643625 969073077 780336808 274025580 676926113 186415051 386559134 268583814 530884508 33730850 587563479 486910261 774011702 476072622 465686786 478938162 357344479 302465269 250170874 51857807 645608394 121015667 378559872 255898601 885402271 927618012 500764817 906029635 643237156 288540598 275958589 164430735 826368548 694638566 370513605 733388857 620850955 645712683 996402102 54960005 225716251 268260563 197946305 952582405 750579524 374577119 762766020 840214851 413343325 165018897 978896754 193780413 812417043 317786586 215813970 697633347 101635391 530046536 208239056 83425591 991287536 324084381 296231271 609823616 76279102 971679127 445633503 917018065 81131055 665830048 404163333 225452096 642292288 683874266 254948254 673731030 75185686 869049983 8535457 862044965 600763647 349558994 758096717 925329180 592325323 761801997 841019478 345488302 147531518 749199118 452959234 814057757 968565288 43594691 649903285 874076027 211479255 490178736 15420141 814675238 34233155 613965391 956961187 522514056 92747093 368560127 345069672 214139000 544018647 663149876 963956932 709412739 697488382 514610009 908939240 329114902 228229069 647162518 908601195 624911965 346799730 941800649 72034940 320330869 227986727 736729695 327083661 505691646 929056625 601677342 723763437 341945922 731682560 676869486 893414467 173442585 396463822 219959911 899137413 611378853 164270459 112699853 976949448 503461940 895499480 960358630 623867244 388414889 58695952 781300770 277605675 836319781 645655006 167790189 112550555 437791640 214206440 739343361 75777638 755882490 462533006 417539710 257020928 743514754 965862141 246550727 864480605 732459130 567041147 797007366 377453358 536456043 591296259 821908721 327760347 544828148 54739807 961841960 343023312 879730935 7800091 822493578 818688805 855710401 718733865 576370247 238695864 574181473 32958298 362585141 301419494 601392737 869493522 463453100 883154019 279430894 398591927 560083368 751023972 611432934 271909979 731070482 875917001 889558966 384452073 904999918 872724989 364906620 676443004 173159572 665092250 85167048 866499683 664877489 320431004 819201798 278759 552152253 944690434 562568381 8958016 746968096 201593318 327975932 741038215 589912722 942843436 362700177 261690405 697028327 397619400 794499342 592776563 787914444 388741134 352306588 172951865 497673697 577933099 850273281 963715915 147859622 671593048 600763589 710206679 183611205 175097890 730323284 952467650 963870023 461731664 390550466 389230878 713897894 177712900 879220395 426452244 946392824 88614447 828129665 913749023 675599843 814299996 815248063 91914142 467848961 345303918 221583975 889457361 895676079 74734749 459131280 355203361 358601456 900541132 245562825 833851192 439834369 91902822 897553605 681365142 54890246 142187585 368798391 888210766 830829593 647028320 343233713 51209522 624569457 94817500 691354078 6536288 53808776 270502809 785883460 437868600 159137945 987068472 767713998 742775245 551716199 701687763 362051020 258595072 932396611 772247151 21666233 325472136 481698788 217181262 73664824 688360031 738014091 605865520 872199519 764716833 85929344 605705542 974624755 359920475 837845626 553012152 12745534 288403705 835307634 240226194 516005258 975613756 866092776 578023517 259823099 85650623 262061194 996100451 92819938 917851867 768566561 862938501 738287213 147999318 427891062 473673966 595469070 302421985 133615626 762165420 424117822 455991761 856781135 881287251 44991882 976684613 398839531 732426479 327800993 819553210 606007131 195862025 313610637 718673563 758253958 389539233 41241441 164256819 537413792 20484367 808987341 319535438 820507170 24211355 570769584 984338850 714616103 440438887 731402110 963760895 207600736 703642751 174604268 849933891 885736189 327110244 72608172 408079944 203680020 280219611 401310385 397145365 540601076 540658496 693126155 887194211 364001374 971897302 302437797 362507576 276039675 610049269 446380976 496419785 10804902 298871270 261663215 845396151 605506407 698009113 294577843 931902497 843746869 65136979 21540316 630662303 383223313 219529108 225425487 741819464 193553905 456957425 417648547 680345360 804296800 589860358 836992061 660857496 878702307 415077399 563980505 319917797 882246239 32627623 931164007 959786345 209303435 49329900 547692459 204541806 44094616 582960535 894365469 340305186 117600631 466800155 801937016 335026666 906677114 930338203 427611771 350212651 257266616 317686262 448549198 174249671 435336845 177005179 261294642 709487425 201975371 435505887 913485247 53863266 32977575 621105201 788624522 12516391 843756189 497984062 634304694 170649282 265391935 470234342 992632866 661518630 891974765 996102261 801848084 15628245 917481280 398245655 26298777 237900146 243257405 688048480 983702394 244712950 624350361 439057160 742536909 837274314 221440424 385449724 302837722 721295014 291753379 184267195 350956341 342803394 323385918 495097193 199222523 904241387 607903784 461727919 200595644 51008999 866948594 438647511 906558668 22359974 340134905 245544011 432347062 50979683 902934969 278457070 256795196 522543938 620752753 393671879 106538876 955019868 782173438 352870731 801620025 942504672 99955043 946004955 347506193 971400461 840393428 193248464 529586504 509385725 703084161 481304977 640815563 723984110 602123427 278257973 795478858 855312542 259936437 573464809 129607140 754104890 823080840 824900356 713991123 117891139 474874251 824335368 96799862 565018873 684424316 761264340 660289465 683641123 371527925 503551496 48336460 599336486 622571744 565453960 274351956 931499446 120230929 206735384 113190085 535212998 66803617 671806162 872909072 995657656 591519282 198883272 634191077 532903004 703755904 843805039 643777590 316799594 923780206 665664547 479158759 411353848 209158022 513748197 114593105 534587627 569292027 861049327 567979788 698051268 916815627 845875286 735942878 241070408 257570276 499298611 380868510 431505392 124899138 765073386 987872217 151516735 350380115 706044530 952263091 949323074 218669137 34480176 767485255 541461063 231808483 420649804 506038008 508474173 873846549 359746108 462616694 48255385 321213160 436405032 824848014 785824001 552566494 590895872 834427148 528312157 13303071 403382848 471565388 901786508 756059189 811708773 295589936 561087714 361231303 236225522 815289794 209918415 703496539 714188184 785650241 485732004 316019755 763770373 323140511 835901044 290187330 633900337 38302662 52822396 660253228 383595665 500444605 573307897 520534565 98847357 514127855 408071544 861786314 158593893 755042888 169519667 141781820 147625773 230574846 435839709 826148269 996843649 72326185 915574271 857403972 255574961 99772939 575194408 499952602 645440612 494763249 967995571 792411735 306727962 878152111 641044367 426215693 243820857 763783231 701794702 520661148 4933199 404312659 730475431 142877949 414359805 132884149 43412909 582930170 526382763 625622476 215038075 430368607 767896781 6262021 12792440 614243434 592427005 697729559 518028916 319936579 603373069 368798888 461798706 680989610 656650064 550759203 913624029 154432499 591846288 546430421 782748203 229734782 439027838 153644975 670117715 562023106 239235188 745449440 177090514 123168906 103036418 816279174 975566386 39547001 273139598 113244044 310182693 693962848 354739232 62738485 394525489 217098725 260364950 329054914 165976538 29780188 92305131 76390262 788934682 844179289 594648471 306328301 635599169 453530378 960086885 66735118 326134368 322750861 365138846 104271580 192381717 41299009 55146458 184200863 236386512 460479294 727853606 826722826 211648625 710609526 132395391 601210037 174839422 945643424 593195811 111844223 990394124 48862177 268090878 932888179 424325957 210317077 555890484 34161371 453447572 32847479 568674717 292796615 225668606 455779593 211328775 359133588 446574790 997729975 844707361 947630737 784768126 539694209 275184806 373750691 291369547 934135380 334590931 634605726 423597869 587031244 546348354 852425063 964147092 416747865 932599868 416286430 332555929 883879936 340746598 478877965 314805461 626679502 835632801 327101172 496636128 52317866 517681317 632054499 229794889 814960414 315669557 813340456 982688109 372274348 541707570 310610100 769112781 996946161 502907282 469204997 238703370 874260993 409377036 726241783 912720972 94158127 245358973 843122585 270949088 468680737 731375985 499641168 705070713 809104950 58364881 909879799 905581170 170185636 762045830 663605769 564124415 947909408 363561252 905175596 460675220 183781168 340284683 789094805 354325038 153003453 207732697 987968631 711919708 985207426 933245337 968563442 5148596 444721623 112575189 623323365 129048070 6679632 792916037 905884249 91861591 39614474 404550683 486370318 125541831 74068362 230253587 492775961 62037098 212062165 586848695 863482566 233988345 241279951 805154134 295986559 393110884 972277572 705734287 937308031 22604329 238125366 457093429 957371281 63347813 651164966 721821492 160355059 551745800 49900984 89982149 316751882 998367979 697300450 324008310 275848562 59495633 13288689 630038297 452372114 589451756 119563801 750441377 726334534 645014246 506077779 951891216 770457110 441399907 779873194 565331397 354881744 512337516 892572992 119282203 376806707 86873568 925602665 7970840 885256798 653928482 847642094 46432324 117806114 735697334 467029757 474100215 287796141 767230190 150972625 124480341 487197087 354589103 291815014 618181344 41294037 426672426 780454727 805520002 33005004 96075713 852851776 244015847 392409668 352768225 241507972 664390567 646897099 255254348 655066834 68447769 594927775 173973149 208240901 356141059 778005357 418983915 109501958 7144633 956464809 161132853 680341274 932761475 975204793 222099395 353572333 939850541 482203281 767302828 414938850 970395133 581908374 335930561 130888245 965225892 582363633 664546010 31095112 989717796 774861760 99812674 302685995 710562640 531690168 289331904 463358074 802872691 756789541 63408607 76456368 971862255 960516684 311894125 168643776 181376732 437683828 707484662 891651855 745877773 971753461 311180009 515304626 790327679 362288289 539755629 912839243 147186529 881430980 682448620 933088605 818864480 720988568 619837154 464651651 181199523 496128874 643498502 382474577 620373875 714360019 437563697 732723208 443060241 898015374 790299669 227126912 496395925 683402792 372864486 841336706 864379921 778799434 350069139 274865504 838845265 230687533 91072688 28483284 789327637 472270224 28991616 328115986 418962287 162299678 741912728 744995241 213017208 735114851 239409522 105149717 405672942 52694203 53616755 54582779 873511235 492232133 663743703 564905019 176819997 473744009 668002758 529672317 659583346 747533935 320053009 194555625 512657544 521533790 185305860 655053081 882158512 377175877 983353901 680758687 62029593 12803772 220863033 476579169 676992899 383059621 8787013 860960825 629128109 37987496 23137617 760466575 695015270 249093594 345018422 659444393 766707220 130952033 601663658 636426887 602429339 546996964 515521807 635602924 51497479 284817235 655750840 617107331 326697140 249909047 752512305 531904680 487052817 87136181 941010619 584712687 836673976 852304772 678642097 20643896 991734616 277230991 119999235 312150514 851849973 759091419 245766105 404959915 975300245 166802391 997017606 810118149 372929768 929391443 984201340 932170885 221799179 200061360 599443327 360033788 714738416 946887558 170146738 572673313 119182181 41680027 11139356 619566897 25409343 217851763 604422973 126403183 223189920 64597379 167985818 662674183 767465202 371830764 185527244 371909175 964493490 949629174 561057611 533282843 490123164 844853691 762789534 83440002 198532952 983977793 318590000 760387510 223318222 101453861 345038326 683565848 830347622 164048447 933127992 729608701 941271494 486889926 734332493 264486646 3495974 998469991 294596835 165424903 130232525 770354036 740670821 491397141 431040674 824801264 406806400 292499376 772400169 68759489 719947519 479044647 933329602 970256264 613110885 481987631 799196686 486643516 78823440 189030018 240022657 925977359 8991648 137216994 26475469 606538152 199852817 111574228 221061937 6196290 363983753 969020701 254178079 399663625 196648639 208570146 405830433 612935369 627278907 292803893 589914323 492028895 538434604 686634046 612882463 404808115 763281956 441702249 360293445 507993518 740677087 377805479 80188409 210856283 516819444 291822807 577291927 783753505 319695984 475144535 680845810 459403122 163893440 264881304 506193327 442874710 757328904 43796599 941635420 596887382 851494225 933493211 520609208 802313544 541829943 261702993 874318713 239348211 221635466 683025552 298328845 122968440 378123183 894927483 651259616 179958548 134305073 242375128 942133442 651215376 285301216 428361479 987102230 316785721 431457359 244894700 495191158 323656770 627926696 527405093 344354504 833965600 220245931 401658616 897071787 790778071 928285236 691816206 621870115 654080661 675826411 636938624 574264154 998521492 143705911 376006021 813846401 928254409 311321033 539011336 388231880 574345862 909420003 514461407 617270942 418147832 92847799 689881657 870041010 441746515 521682919 283555789 405670733 380913063 254428737 340611402 896801507 856450609 978082521 531303368 773120337 494777021 603544061 465696452 503217988 275306669 420091888 412327655 830300833 479686270 717312606 440753624 179111600 475205480 19981098 661480333 627053700 342618670 302218713 949654888 148728491 542853266 517492791 896466240 724375327 306180670 26852388 257278782 565306037 746232126 565950387 229270763 80518644 172314100 931996704 471589301 141683648 166517522 178816588 767148339 464857292 672055115 51067926 827685678 968867921 646882647 324757976 706896053 133381884 624138209 777091241 482917797 984358763 553029119 995277524 839201022 200958109 685102731 387354760 893183162 300393258 180795432 97422382 685446052 115480893 89664866 84451170 374093983 589244136 417029658 577749650 813262027 190449658 628961477 834817110 4282827 365453346 655852760 210482727 343593723 889033407 246885024 736647158 129886792 561204918 781670694 516957040 212925544 648162903 19029549 151858783 391971250 662785076 100768898 766449753 214287246 158559477 201196462 103012003 968482725 51427724 312741051 795616261 849156031 51002005 842270410 1083173 496966683 153099815 904402303 172728172 322670094 898539626 749637044 882186597 799685599 115716083 651857283 978601922 141578801 122089561 133763729 684955134 516771517 28028342 460066106 249429459 598131824 463919824 135267135 585820054 480179173 177874241 522721283 54360007 620510226 565421599 416542434 87737729 459659427 256820185 396440673 280417747 180467875 37037541 849888880 364081997 41648746 579187275 890907139 318786319 18450014 742228256 130181436 920559197 531381231 218198666 779992111 513546848 893026162 829415695 36701760 946122965 613348111 788261549 116471989 438305969 956045942 3279754 507274360 494410624 957599579 145273658 150079904 359907795 702236105 341216934 11317154 863930098 150856170 56697444 979360231 664142201 959261905 989983554 436473130 462335485 657401750 640246599 877777856 961960967 665632861 438461621 720893267 813050874 569328723 912942803 954610534 828941160 189624397 184733684 514695434 119110016 237166980 58652238 616369866 392109297 78712686 797483213 796719433 392462068 236454706 441804393 137862937 191180557 387838525 8268352 773852179 562665905 359098359 822410863 297331560 409513628 66343211 796455991 810394747 503495878 858493260 314318624 354554014 685001916 714155117 650920733 180591768 706116313 970655003 496499195 903263030 873379017 679106696 906365802 52589081 867308024 372238317 20786543 285879159 646152124 415084233 552601191 779359620 649121775 295288689 81663682 73808708 631969934 532570011 769997738 626632002 224613901 138558563 639324796 696675811 675184877 707926032 982988918 424370009 887278086 193933579 529330213 615460388 982964154 351218028 978628236 549091571 470120085 255887226 426439490 25545699 342950237 641908185 56062149 558407401 835981533 606049673 580571391 596846323 673700217 355504923 626991335 407090132 682595775 271975533 489980637 661263258 757645051 779331833 164285426 236311769 532037665 351468929 609334095 321494157 138081165 565292354 176587354 568259799 164164457 629335600 321303831 555348233 268375259 593359729 704330768 508431569 817686227 898690848 991806543 368024699 537808976 433647553 44254559 874434438 989224444 236131887 126989319 541039733 496804773 564765771 709323765 787000255 452982784 488677581 247528906 118800649 259334860 456597321 352663656 441758225 289832908 201916287 818660950 470085553 924080465 506422341 437912464 305085875 483796779 62887562 154552582 228575157 722210418 986808069 594454123 488562540 789055977 118297658 330430854 721019689 799692032 69882935 761028647 576823691 795472361 301963631 728472014 692148567 120853546 359926693 835591142 496569170 417541416 351434229 790837539 837861168 712946657 288013068 398200619 790649364 626664323 762274053 703214599 385232506 302486027 906198688 495203797 694330352 482984628 947456803 387173695 681309077 600193129 865213750 581665758 454836779 406474835 646618136 208741513 865737123 386853959 613581900 441157513 171441284 149236867 465437794 702834871 312816187 770974481 20711066 999766249 731304813 293824999 764771330 225185326 977036441 659501921 25957361 356564633 2654449 59919967 711146231 663259418 715114550 980042303 98864791 988695787 578275612 554546406 434880654 602129207 936885050 831576544 502717684 517836542 745436776 746271414 152557473 837877909 57080056 650978868 639852065 937075771 349263755 17216427 469455076 982725946 26585336 703481573 306203933 639749361 588846597 14005331 976483018 671096980 594664221 505077592 457452147 407805987 318522411 870334494 934336150 671761902 482052091 720481543 859572303 998864998 619219140 682872911 636963037 86632867 431075309 431256178 370717603 498474502 401678364 317517557 977024292 861202014 821650757 651628673 177621652 497121384 564539714 887989536 284474154 487707004 293506644 676671235 217160034 651650070 624723742 775979764 215809124 402138 883805395 123463458 139418506 589696926 62837590 248680994 835120304 205919942 271938676 531836069 962435092 504839059 351150922 488677289 508667490 205101933 68186008 875233572 46787008 595793110 331866013 417116384 701484794 295298279 142509018 30057077 520409611 589643878 721739110 174022940 633840153 359268878 469948495 418176530 657032275 245217691 347691470 909962 441643573 742634136 777722540 227357750 773784648 285675537 244534989 797529973 465042614 841290155 788037208 905545013 226744756 507668102 418257034 452803897 34281567 99991266 961669941 423768683 986284541 457741681 340064469 701202235 312721973 706862814 10413781 205261081 606103419 705231845 618918743 280548312 947854257 508561211 910708815 467559001 746313390 873466959 465652460 10741418 298412466 764299536 82867683 313523956 432182012 748634093 348132595 102418068 946417867 424693657 277220635 791564931 778663891 831282256 461743690 328071918 674223739 318104070 129260642 476947892 781123222 220609395 744091531 139433399 885976025 626416761 809096972 878775294 73082189 412577204 848806447 853940175 907196422 685428575 990520432 344478446 138172767 946679553 438235643 738436785 86383408 747244137 235999683 500873091 548429374 471595726 260864516 264685285 234160840 334992501 566540633 864364654 211699631 275428122 483547124 780784929 169174135 901038863 940568078 118069560 268891502 892332310 340590315 510088475 770148335 435984203 891407417 875298242 555079537 418092364 574349146 540789336 271405196 105160174 599598833 325131824 245325838 263602186 259118645 665513120 791955114 691796121 396144143 151355998 192993512 315911291 551803258 39433651 873600085 563480945 886265292 268979528 682517495 651412301 182159334 163232775 363445852 325397639 557283504 670816150 495167312 887060816 588514281 925418364 539420351 975742451 436418917 259575313 166311192 379713535 575483579 259046517 336931942 143472539 477961322 785007567 238672391 155616481 427705677 328222306 157401140 641404713 158912161 789397668 335200995 911531000 981338372 149299155 851505135 371070216 768315286 587558714 27453846 301185452 719252104 814109301 525203385 984945452 206158930 309683922 527917830 652094699 653446614 51473114 673167876 868616429 65923825 892908100 827725074 313644769 355684294 153443398 175416102 182416273 699634133 498603381 309675400 807678568 926177731 915274033 278480489 130139168 325468980 234859818 97915201 694379777 506892809 946925686 464873609 889410555 517552881 767466563 879841713 412650652 757505833 898495485 536357835 83374236 377269312 723495078 246638100 162602527 710121599 126215696 849173008 819472538 439500225 273973108 586031777 571598840 909110076 944409957 968367884 632814884 730079374 445328471 233881089 854212859 457179946 811320249 702058613 403033353 334551458 634551951 955911305 989179534 173342076 24935639 167021816 724032651 937089016 525273517 162780114 845906988 734208735 887943466 34603697 646424295 335008199 821779884 670761492 272660136 464995237 706797307 844984101 165612313 560148181 502778054 613748162 163099589 370448156 344213131 910973284 90811708 752259328 620451552 895959593 238746750 94169591 797740446 389008084 637696254 95128848 96212456 26117814 415331793 95038151 826864249 110940743 464029145 593977880 110590201 709231984 255636423 112731059 738176717 321422139 947022073 239255935 702657655 536305491 710826580 643113427 503627076 796464312 256203722 174669994 853231174 271221889 461215552 16981628 421403129 112789111 396679008 420693650 240036962 951087267 149959662 392440447 967973668 632774232 8819869 472311008 882875707 811779664 133722588 262435805 386432953 129835651 276895892 527443999 195471515 466914729 798266523 590069466 140359418 290608880 76323424 822220568 818875168 192302699 879543537 327973841 262672577 6630450 417875143 229896341 70904994 746881245 248639338 896635205 710729952 253279588 871619234 180547212 77851809 396443056 389883551 338904978 744966989 190276748 817114669 17577820 897663808 973179526 33624745 935329290 589663440 351958334 861144889 91099576 676408208 17379783 899352586 891731087 278925551 857880281 567004342 428091699 660264368 643668474 931721117 703205300 555757729 321386095 277367054 459011440 115765591 594721580 323712228 119433009 295100736 732089256 829383430 395985221 506511893 791026310 922174859 60688707 940710942 721934405 39392724 180686883 253861554 558761801 877237817 365360344 995704246 509318576 573075917 543244501 33719159 303139169 574659332 66038515 230432455 444799509 440491791 731250346 125651721 116951546 519896564 512215314 840588007 764513689 789724442 485601775 543537687 535521113 750994947 237877114 412488371 748405178 711599975 893235946 205177522 403499171 890218844 70953080 803269164 563985503 944562081 206416022 253040553 728567444 977589758 117633582 819460988 594020914 466541456 821379934 764253794 324369048 165907690 969658715 709831682 765774490 468996067 307887631 962372626 439106128 206262554 938751291 797771974 881830466 188194074 866055941 20373589 554444697 983495690 30803106 63804673 29356005 814488374 993099755 575035714 464386349 467801574 569828606 856339510 554357822 874294609 483229397 368946569 932627618 784276685 420933902 689803351 209745497 47030472 517285178 489155813 76604657 719091318 362399745 305124115 850530705 317600014 107601210 476936796 792411567 253895023 297831972 738279338 494144781 177647052 478528064 873564759 915201146 456959766 675191942 584981226 831504070 819771825 692945498 523296204 972266509 688544055 605383835 418540373 142145670 846119752 789490042 241254748 53536264 76742922 489580178 340322222 183736723 962553233 945144887 986823637 547592070 875395807 548513600 906759871 584111693 291531264 492020278 50366524 660906561 233573778 24173582 878017581 70322854 523604721 552292832 599847449 352974833 498404192 157882378 339195244 139311218 632846731 968230376 757128100 545207763 913633728 660012593 522327937 738429228 833486259 630153068 976085703 651296353 297856365 653343964 532184565 508783564 259934393 323664090 461421926 543439075 628169761 800423991 338029335 570983498 502629683 233052649 90387776 654266022 225761778 781907362 384864536 903873980 335985107 754323605 89652332 728823953 50925304 122955151 197885399 86123080 711436561 566409101 78125436 912311115 767077229 435771638 79347923 811856735 564687633 975970719 332619684 19505004 226746185 847330337 583851766 10096377 144993528 343816241 741088215 929102691 215807323 51837119 713660426 274110463 380965492 598266780 976465956 63365247 463680070 136623749 945508288 438339511 584289082 975179761 464884972 119467106 613661092 499525196 239900167 567449694 400162985 52812949 348753147 178346971 914981870 271061837 306967050 714234263 607432358 159972391 868307482 515433551 820495750 108262892 215834302 272828124 518059667 120255999 846684249 150775002 342820126 957464656 634722551 461819758 31870205 980581791 588229704 171103244 749245056 364458827 684030523 178088144 720907131 83038121 316002821 262804761 564250928 850378625 812336358 520310899 438407758 713749399 163698619 246411976 757664039 701231462 636656453 632533056 896785464 706807630 184311581 793161297 848272971 147870847 742088391 760844173 409671542 856973950 53895812 845429634 846924644 221859952 753904065 818490017 947507810 375973506 517780337 704637912 556547213 198874770 864706262 345980813 840596197 878803660 144209873 832300815 664659049 588495395 26437548 670341372 124191199 386416735 708567810 139496094 563290672 592110984 945766621 652732852 509960646 803295914 663649901 748778703 253272989 972779018 294711230 363143446 883951583 46639902 601597888 221543049 428467669 794873993 686081268 196999666 261669049 929331741 308732764 499862699 6998352 942190969 482398586 198449249 99783840 669409566 141526730 886614555 161363137 905560832 157511894 393341236 657409247 131813112 795777110 200013185 736195246 500393934 565053120 395761909 688302828 755805546 635505 317323269 721304082 206905825 869733176 491639803 712175054 846245934 379256653 612669085 677744440 477453260 105238681 711960526 169340575 296923501 146922596 823360870 913429457 745829877 210201637 768518005 317427933 777068279 282430288 224156895 162867612 477575592 388400456 482716097 79462760 54367701 317628431 28487556 878060769 326378106 515863712 749915586 665355126 488283944 703765374 508342606 995497578 899472582 147462316 117134058 749404147 560319056 422049060 821112096 486212906 290900860 651522086 126369820 237175362 736081308 399162168 475972493 888928859 193735910 823593437 732368992 985292647 525846273 615029409 113289851 892942963 693105622 472155899 608399261 25406105 710716720 64711303 379313858 407006301 753138628 923130890 289565753 637852462 664485427 481897123 155247256 360098257 452161026 577756898 822714741 140160718 121719316 771209010 150568513 627701517 539648206 980364642 141718900 397403923 76724315 730543271 410271916 998205308 636912003 500959829 154085623 783821967 71884210 343334204 218984577 673856613 647265366 186552650 321887243 825438635 331345919 872563160 971116789 563089140 820605409 686039180 534981081 723933625 343965370 997318614 437091091 815346439 630152429 623552257 126294868 707611668 113423813 63974853 785437166 509070158 184213080 242604213 706692691 93705163 2633296 960050914 469453388 567788566 830876046 770004143 669100307 155186840 592561068 622742674 718923560 728253867 692419982 325185168 628373439 635635654 239309209 802871852 876370016 76756794 621902980 65972247 161127969 480845679 84500546 47599869 964884563 481794156 668156901 925015391 24701291 290874352 155248053 183989380 46633896 503470804 965698737 60796534 961024741 237807968 624222899 625957203 282425131 11669507 769395086 491930742 711015681 418998903 893112493 670024050 901867937 87879182 433122839 859122014 310337187 199865829 110057235 737138393 296375134 736780480 43580064 202237323 949628878 573786247 612296649 568171069 135326828 289124634 154150009 273797709 157666560 356897811 516399573 344599292 80920197 298205698 826949232 740824643 410880215 647534099 232156779 604233123 613776314 949856681 390860112 792300047 605071710 302592723 41717545 911574107 207822167 679452221 306916329 318390019 966910692 658718179 480653218 762661275 459862666 82112544 638279104 19714698 881335547 903469066 201310223 636576426 232317748 955221938 341818386 587702555 927521110 235427869 961504231 749504964 331417664 135018835 130657102 400800971 986022671 333083539 363434393 367502954 383834633 159826882 471132217 140775900 474844927 113947793 942887360 897826753 81936701 723064640 130678518 744866342 898319530 756472867 280344637 759139960 513580139 743670313 167574426 483562650 69271936 823355857 260354109 274481229 637312961 44181081 983512146 86889234 803157894 637898515 943096215 947615563 755028915 97370022 527818734 983306614 333957417 377741421 538293358 366647109 158906528 589463770 625316977 50169438 75697271 140903327 192291878 245166061 169725927 848241302 190565929 581281630 266838681 130095652 701917967 509764238 466177723 870992313 416242279 528990404 152983989 77369321 20190676 567033910 148173216 82083185 305926933 409677182 408843685 715037796 615964564 875436355 91963816 723725883 831452772 110702406 538290757 564267944 775556001 215738000 185129537 84451551 230437275 453209727 13374909 592607340 220453106 769114272 21179318 677673642 541401821 915462495 438352756 673230364 190873761 721023212 976321657 656307562 384717240 415387376 231373134 981831824 126654478 471506354 998657946 347064490 277114012 825687140 38485221 475939273 911875808 4727403 158106944 238393978 237516994 148057685 99983385 833036518 237807525 220525253 952560432 715880752 777274987 626947213 142615137 256604020 493670758 675108704 655335219 332093320 112396219 612583188 23867146 269992837 550001961 475278818 735126825 133893654 698648180 288964335 8109731 251407348 932729788 928164213 18634606 462539402 785374935 173616632 698904747 543412211 52004725 29965360 93133637 137122673 989166209 765517930 112782988 177146952 89777454 389264316 241752005 575598203 119277656 831288852 935551550 19161309 128605446 28634894 973160534 542560515 518443030 267079580 65292279 215901259 321574211 724343574 345365947 393497068 370435564 954780926 556414029 86492323 111278522 545192925 106533793 226956109 797248191 529589100 992159150 320341193 316012076 538891011 621239419 920931678 623096827 439086137 895893775 692097586 823290970 595245321 553877018 887361635 570402677 103382762 537124225 959542241 809542937 288267883 639848060 31455945 586379870 24133237 159948731 19028195 313511419 964045849 68007386 565365874 638207160 799798421 188403268 967812888 543384302 711298555 506719041 651109763 458891114 443064280 865368404 937514758 595683059 47640214 263510710 4959096 380146663 170351300 299436413 22398661 50010212 108774703 209229038 671051152 650434597 506384414 576630583 897022918 382003805 546607901 75908026 179434243 483587401 206477947 516067669 58236648 896016344 527507941 540082631 866924439 200559253 346627397 990555022 874198465 389257374 335703874 880332751 889399316 254864458 945018076 279549935 968880856 506443067 287818937 696898046 767616354 992992652 755690263 945378356 741619529 703881800 72132897 149272555 434825332 875562508 304455793 428966010 827914372 790289236 354455255 736272360 598317131 904053560 133952022 1144582 809526804 858983634 830708623 699385615 690411716 855938803 983811082 829578831 104953180 962421280 161965956 522044672 625543031 989178657 411244215 875125043 634729055 699347539 342760261 428731409 189452495 927806421 101472668 249709163 64578225 824408348 275712997 177592091 942191968 661969046 595329930 117993003 81261599 243057969 939958012 605511369 585982450 860626611 765316760 260216231 776353739 643376385 380462582 46456831 939424997 326102156 54346593 67371115 844752436 545381670 497293588 361171247 710467749 239837663 418278309 944516965 919365135 779469265 313193902 187630958 310414976 491549508 831734911 96387286 103137461 654181798 192306032 650522657 552530608 907795257 359363072 64342659 754313411 484416663 522814580 730627472 609030537 475900075 597440311 921262430 467265188 421715802 569555101 571654306 289623837 80211108 321826698 54211204 976573570 942671967 548612650 612583688 303411293 895411479 848266926 370086240 977305333 549250826 86342961 211935804 647837652 238411299 47310747 265652177 917639049 431890188 875815200 21494164 887694903 529922552 474796026 94582586 123324907 577952232 841093527 152909088 679251761 234207889 141282063 240840252 415864069 531308282 296634490 146551323 987368695 874396882 697177149 378498501 536357716 172481202 758321473 167640363 414582847 614572701 447378117 51852498 712118810 516587231 104097510 430589058 745702519 774140052 158898970 702257209 489835942 874653172 62210605 848116618 44264700 884444872 882754946 772884597 327485663 522560146 369024123 141743997 458721577 935202628 293854566 418728585 697869205 992158221 493170141 813236160 216588115 373043182 729932009 128372102 448888289 746358564 121838267 680944633 990385877 373802102 722400193 699823098 212608068 429194709 835540967 786870609 277202997 818497999 288090056 669104928 370093570 27193621 202464242 956225039 148591576 735827745 307772194 756836685 55867571 918983923 849251480 563175943 263473177 704871432 234788242 893993330 187691469 615242125 148415441 593566280 25507123 650833048 10024389 136547442 677737351 851667892 172676649 966004697 764743801 688463593 291709397 308125914 17975912 834861327 175517950 106586898 184952591 978479946 830859988 759489965 597974721 421056961 880925407 600840042 945963916 893820412 688860054 902480204 677151544 949796296 230310270 435874618 193909330 821234784 173347843 956840850 987372009 575994828 267194066 79343624 691347735 918828947 185399981 950372423 968150433 176759090 904772993 761992055 721722261 731325074 247882385 664443272 577048859 687439671 783637717 585336560 531855175 47884647 733786306 209610280 742737179 289913684 661049496 850707579 476691606 489558387 650451533 731406404 800411668 938930323 339504817 100302626 638227401 731698067 811574659 908119469 881947428 180103520 865747119 150084157 396189809 749403864 329346532 162107669 563135426 197241873 166183759 296878003 970926028 49565294 852702982 942287482 58922826 325517717 627042670 963587329 148518675 400802839 872251720 947691160 483448244 873501445 425366377 26061694 864127171 452797788 953832389 152163350 442296745 279317513 203752700 830973994 896730945 960486538 888813056 647654162 165427701 197061198 99654408 277316904 719974361 970204774 724051004 894939025 574684149 424854687 250173909 195667917 62291535 228310020 914818995 603352430 466791613 788328126 249489399 344052524 869797053 636791882 820949055 683053191 164795436 959260718 264217228 227413039 879975730 44954256 207011642 124102730 59665704 715217212 392557310 435124003 972999168 253195489 407659694 188432384 511522475 825089189 870478426 389074491 884534719 774165290 733914997 322526667 925258616 947573198 974968838 18023653 564005448 951675460 67885753 510571932 994079272 76438716 736214450 620075869 401056853 930357477 550995522 222078834 577001963 204971958 330885457 377628919 102603955 551314902 549545274 90853365 674462585 465948733 522811488 360109148 34505798 172129570 368647971 584754923 964566424 366764335 490546164 678128950 87969679 688387584 953232491 646382269 945126725 457441599 855261280 493848964 995797355 31042778 451444859 31758706 616478295 161404983 986463488 45781231 56357502 468175421 336887573 382483654 437636503 799434166 414792127 48997444 759308778 54342240 605512141 219482962 708150456 549087090 323294272 372422977 299139816 94364164 980499951 815657030 289778023 259514155 457784734 192648070 620524198 259383558 480695988 376925541 40018675 940419008 764367842 737453871 56799918 284795905 576709216 582508705 413627916 662023363 7685130 271971765 107893837 666306486 120605686 571253236 986448794 903519928 110456466 841824918 74396036 891139294 42118782 890021990 288708871 859335851 821507459 866896933 255725232 992388284 718401111 839533680 375863961 515322489 177689476 922465713 447619510 5225711 680686005 305831227 887696511 424886636 994668217 983942878 288501167 767236466 254740087 35404872 234055466 438575977 788604385 422127039 773904059 407887604 882613752 527054042 344060446 676665981 177355586 839131060 390332278 344146858 468352841 528638749 218284926 499232414 32241049 722976950 732917812 513778308 500812785 693819723 604104556 253750651 948352737 740817499 981168904 44511438 948299887 733076020 244161081 280495409 818845917 423952939 804520609 841914177 473784965 158265464 979277798 5317890 932604600 305656677 653073684 659353047 220983178 337734740 755817717 667548591 252517712 828093353 310839978 31516663 151176119 114658926 388784928 479927468 687371849 161941517 868249265 52923037 277689804 320255327 961446151 515149340 667583663 537348213 633961715 68547809 599208933 192780470 459777080 812194096 488069087 731416787 41787524 804146681 655900363 512857604 90490935 31683632 482941812 132462829 576297886 898001819 913227104 475749774 374347068 893289431 289681701 365250777 843650456 150479588 960572313 773083085 94924831 415616529 480812706 461985083 439066135 181641491 684391734 467198059 58730078 300237299 837962233 103920681 973810388 200488275 556636341 21349711 275257378 535294741 570048802 678689939 696762915 35231047 785677972 997151023 386435779 501767443 838846775 14075712 855003040 108474746 923453873 837565613 173596884 786428946 531276548 776647618 552471230 877161969 201913419 833482979 359782723 236982616 441813829 269530550 277749843 529627743 34553288 341013687 987177984 694428026 4211869 108870548 397824306 217161675 938252289 820392720 552099396 902256683 354512206 674065127 590306921 598905469 602917330 916688946 868459589 772011610 917935362 120366119 794015173 58646061 913061122 405067084 357826906 73073284 572200185 844942044 189149887 585126035 702016149 901417806 94940173 888815247 191951241 790644013 637892674 213763031 128057811 815014983 283243752 84408538 919517371 588547622 168428837 565318258 823984497 212356879 176086498 587857024 928240232 166255936 474209605 947859383 38966074 627860568 567052104 838576307 186863272 498192227 558407006 798936435 881395720 178740091 868076841 890579827 811415589 310781833 771551621 41665543 378630253 182543376 424860492 580045904 297232607 621882550 956409921 747968132 896959684 439979177 568866945 36015854 490136110 933148589 501269081 500949811 495170742 448083714 374891202 895015187 865461708 233841697 736457026 741781165 921522586 939291202 951754142 386455880 42996073 983124225 890735488 541936466 155554416 875820592 119407852 982594081 311857264 832540618 23148038 368901855 178939147 266141643 758244544 29172703 645016299 615659199 580969247 774110677 42348445 747031898 43627655 869081964 356607913 852090971 253265078 546922019 15977445 406828140 420243610 463462181 20640051 403547499 652279658 391711013 82381840 354299969 453236793 908195757 642794694 921545967 469168331 385632862 159627809 342276999 847003102 25931217 841274096 403477625 323539324 967570915 136828558 810162000 212290682 396834485 197344302 536837368 171813411 446742536 636387413 985898794 473126003 910290175 610023119 676570185 415928072 49891007 85258181 921973605 81995947 760496714 39027447 641073128 673065607 906373793 21620906 829060763 166195632 480746789 125961387 609074749 95882287 380861312 325497390 362396980 758304574 265028212 205192958 598337570 187231411 59926308 355840561 778190011 894847235 427889607 33031877 313888788 616297409 54342983 145107643 79051989 760530138 781371302 21571695 683852500 833274272 950074256 157168044 623284555 700038657 40114212 872809475 347026480 353310397 17664967 187867980 311679542 830657030 188869549 906466787 125660292 736354063 186757722 803878243 535007569 112993338 348379717 634270254 244472337 302759937 894131956 554312401 664396477 803697693 751661546 167984446 585375431 22041521 421993088 39276836 1637027 657106366 543343477 318384364 726500222 101710226 241070144 189372762 584579882 144023333 778517347 853740463 72074473 220054805 354590568 87662420 427689383 386674729 605311682 124817052 515938464 918078204 48584234 412869164 349217141 542747156 116900059 465156519 710409339 280032011 191111467 570820703 288269213 899670851 543549411 715215700 82487658 182633438 470851100 832356107 633873681 246966665 37266499 43124530 644123023 84787365 558100899 342802912 358520600 689657953 224115744 91773686 283150854 853826590 445087734 376216679 343987196 975624976 209629660 898530635 664716249 254389317 429029863 542020379 286515345 932964141 52844968 440682572 464233526 384007103 584286910 595741951 597921989 311111212 946217917 954803898 702357522 578218422 46515701 409433927 581386401 495876862 314411306 222258734 262124328 314807999 487162057 396009230 466111955 141416468 491650567 65542881 136178480 296753164 782296230 191264118 52318354 130409474 489241164 128704676 12727623 8929543 555846662 149102606 708976933 953674876 566894211 186489078 119530244 761286815 892481086 818119959 798367203 891311666 629346899 578338657 62713965 440142303 701989320 136324999 273140827 297947144 677672838 881447237 315774354 191269811 369925691 773340934 327433210 165035550 348795962 203977817 907131322 903792626 390734829 632381993 844711558 580384795 616524332 638890301 316915082 223955028 599934158 35477698 687878743 233030542 795331705 640552430 271105457 419225242 655913644 777076037 549776556 342829888 789230637 764842967 432647679 396225235 439724356 620880572 151302921 12942833 406075602 160112020 917808410 26802312 404110564 714392025 278961239 336241669 719810607 92559962 981331315 267567510 719686757 608201060 306656748 572609852 410709517 74579021 87227761 68974715 959462853 994390787 529315866 193561534 776174840 764683143 350995784 58056406 536365216 386315969 785990484 795207655 658188427 290938573 926791520 408034841 160226358 671239152 180745741 61777232 722112738 778244316 638341544 506288767 307217567 119543451 769300855 645182077 352350691 948808613 724503786 516813333 455615525 549120953 766915760 215409796 6571724 696491740 592114305 139311249 965699815 875990853 590606980 464655740 54794613 29944363 936599574 832224384 440830673 216596562 832098873 944277565 772857191 114275554 846408771 866955889 165014483 174578383 35407446 548375464 241027689 707077520 43370638 629257415 826311903 495435764 150542515 688769709 330844862 324067002 761642087 49543099 642636589 309149401 606488625 407290596 256509014 389011718 631328020 542143193 116517802 918328800 411704276 796994542 226315577 458015831 887849924 505233202 91431723 920108849 49302363 477301173 1295569 723794890 346257095 825858384 19977604 849703822 989259372 525059952 986698687 538516046 264148661 141842189 500882484 115869666 246803814 195080462 666372113 134617698 827913593 663587457 767461279 602737376 222152956 693642322 930902220 191152479 99028750 683507623 900642890 440695870 962182885 574198298 802561358 275358598 148474668 659075891 524770178 441511636 217293017 597386555 639780025 878793882 990886348 269336149 884103153 532259772 642300986 187529777 558945561 821604823 566855777 930132473 897578713 764552789 998834780 397729572 845504267 324205899 120354702 54453759 245243847 351168760 205018626 558691846 869398540 69996917 83859099 916294822 873187032 812855397 188101777 451367104 185281286 592062770 544081086 74952552 523850606 809700658 181363746 54523942 436930428 161240440 771683879 660431847 765266135 619108314 99478726 194258310 798091289 303781906 495048527 594821655 582959979 233599226 499266479 12393198 892328095 20482686 754675175 757160897 971279984 172616201 635257746 170658002 720948218 234106190 408474873 657548381 297195791 570055770 289066640 878110002 219610561 166954051 813562657 818893500 844516332 301457360 809829862 283917935 298314801 277441051 92121693 516930168 544941329 670400598 577843519 940199194 783775702 470723185 442898824 776933570 751858421 752296108 57593539 748138783 201000138 829734056 893998650 676160387 438783356 784404389 809137673 96265596 77258284 720198762 120107959 606977266 891122956 817891608 281802441 337555543 46499182 707175274 415137754 848751999 840671395 526995275 647566265 455144904 897252013 257166733 38349921 830392962 859194213 444222602 565956020 10047280 807663337 422500236 584925737 69105862 732606738 274859523 201167379 7790008 20464982 73782602 838747518 148240821 796169865 715232516 133237410 209007787 850012966 643528517 357019614 467222546 789459151 712915616 811947617 957470647 475573432 579906473 591467845 397346038 377451124 769727767 888979084 836764056 920592621 362131724 290791212 50385326 824600334 184948270 190381517 718809174 966438088 654866537 549415641 74603081 231779716 582609025 604511010 493867551 908570539 517789986 719765359 905830462 72230365 294400907 399976939 234995612 713175216 879519439 929989863 905263169 953051581 736467603 821927507 196082369 208447391 192863886 207513379 706838714 463918183 140827776 548232396 214925799 984476011 209855520 285709797 576756019 624889497 916399711 436563124 607169588 731784734 857125438 627103416 649316279 121309928 692130597 828724109 968964828 162999045 90097997 999553236 782726188 202189597 564814389 945844710 515105853 544345344 847934867 200918380 842566758 463534030 33070740 738339364 116500631 518511403 892708129 289191580 942863731 140784654 370560727 84567489 311491295 572721917 370626788 665919903 719236680 296417182 638871206 386271188 260808812 126507861 74545 782625728 133909309 121374041 29717813 837201376 122087159 765824543 602523304 74922194 7877893 202605768 767771336 150474133 139978001 925676901 575194572 814866187 199524824 188361749 706577087 633786953 421280008 897968728 470699738 29737104 30897200 406498388 944708226 63468653 928319245 36578621 559685121 206899825 912718236 165314779 345033152 827987449 731392230 987926794 147770336 447445372 518369473 425040342 921024691 565801372 967514149 72560153 782451208 234822618 772797109 608158851 644534135 101841355 974204748 685845635 496886501 308968840 705882995 586316697 8115887 461944052 758715063 596621114 636659127 341443419 338636898 440957414 249418413 227557625 314200108 230623271 759245319 586443224 823663239 825132670 41009227 800182717 874392823 515230742 251387751 773644453 648001715 702122237 569628116 495767677 425659851 356776699 390592341 193972929 276018438 811279457 34428579 68309905 489248799 771629995 761379340 422444967 14168594 363531626 643796593 864243036 252778668 334790300 156341972 893033276 971589068 241505701 482574975 843496995 798068596 150167409 851354594 953234273 838301941 799610306 75205462 176964977 829563447 336393753 23870040 730754080 644068948 864796562 366108170 753082975 974711927 33810572 76548642 830502212 302432551 725828955 787688954 343828614 94043512 398343843 217275919 351121982 28680252 903920902 179678654 143902583 216364804 392413402 530116322 524275391 497190378 792949041 981712417 396921030 831887509 35460496 967913851 340843773 538733338 669003336 256144261 176106387 945150269 96703273 322754198 657671145 537545331 168049027 137743542 365928593 941206669 661985592 780723899 274858824 701870912 445219914 882303265 381633639 350798133 677395544 782049023 532588987 220876054 662224368 992470030 883489456 183851572 695780168 991136796 962511835 896429690 754282535 490339524 334658404 244536955 572148066 731773394 938264944 620138569 919144289 413999569 463780863 788576813 433859285 854758085 263684658 553705490 547217995 752073534 523560968 816572800 115051118 949570058 491697871 295780482 146301016 928912267 345432627 719927444 490539442 936215779 445538603 48659121 313969072 382285197 86719435 679064730 123089276 487739311 371956378 831367994 509933218 595571294 756851304 639897812 480221745 664353019 617423849 948599319 663582643 463227204 697575657 416184792 883174683 406288272 262466177 827370477 92088902 514816353 109295640 662866950 220426599 262216177 21669780 615440635 769853180 833837723 171380225 189396452 124613740 77127252 2337661 588657628 701558304 649222125 462763804 103079772 177889456 428871282 561993473 177671355 694930965 628844316 902744717 73120720 503926534 939639949 810631942 270729436 706702470 690580435 450286274 983787036 330100741 481230010 718074743 576800632 37353720 580108856 432533516 756749047 501538163 93317307 49915047 555882715 574457292 326180080 715084653 490115082 187964192 942059387 396248891 73539396 643671010 61481285 440511630 305513857 986320177 81265116 263351914 864530299 855651081 287303956 184643928 13081855 263883675 438989341 458196214 833341795 683680739 482992368 630922085 522583756 469161300 877540353 23741092 273164487 804885814 840490646 565317827 374500259 538806713 605840508 111592423 285598296 747143485 44238417 820162438 31278178 433850783 336742306 208290943 450398141 171149841 746007237 664165037 918164315 939290195 244040552 238287497 735799923 599336244 250572582 813426023 145358058 614967120 747094884 411603854 194318733 78848208 364111245 784224000 183102470 127329356 974353332 338046743 615220469 999050003 792292854 157306119 153088368 154876611 326356166 538312284 553082786 313676497 111719432 926563812 922585670 27998829 249656788 869009348 262084032 986824898 858580653 524948162 321076243 636829673 23127370 351011578 679403571 476216729 443156648 135496656 40828218 788369726 342609165 459688681 98077700 742107220 321748716 893277908 887380245 437999714 743968977 400358046 822730653 821765186 465844926 641912041 656895213 530721407 747721757 609017942 669275124 153275384 9667465 951781063 917701311 771731668 942009557 630789132 284149691 727773634 30432136 627933923 502852161 430737416 764513828 21526317 12448889 840511864 508862881 215909432 621512656 36504939 798947561 946547475 256285332 815361349 325715253 463969498 456319807 601684062 881106688 314175048 996883256 119088545 781211739 66014929 72584344 859852756 854157269 405332214 907726547 273641977 962077752 545015808 746441007 928753246 332164499 741585035 696567670 205233788 644027371 775408913 518056453 784129055 607682258 829528998 581480313 661336613 707459433 969074400 646844542 147456366 390789485 682364329 207314353 703175403 928554996 815824415 682209566 295442802 335796895 781019506 510951294 253293508 113354337 143125249 802720999 943210677 632002298 498370158 449248915 240983910 157233150 141580530 86125704 89199035 439525691 373399693 472278982 816578445 943928719 136580764 561407976 303842679 259594312 888680892 37670383 724755717 971838295 374198064 750238425 574778615 504321854 377418586 812430259 334375568 480410227 635983731 255308459 883419391 529046523 312986477 20395802 795879875 634445415 596921195 365603084 424350491 480079488 269445291 629231941 585760535 429050245 587753486 762960793 799512836 726207175 403910622 754883931 972027716 516074446 19027787 524323987 652721865 74572658 862748510 13653540 45370316 291806249 532368315 792316220 819734636 947435958 134314615 481599052 585051276 504759102 493788512 747819594 481147962 175207494 918233906 98729312 423375914 684298149 147374125 737146639 374816739 233503532 75265893 707216155 632450247 215899512 422277764 615905865 869660212 468059508 398530996 864571707 632999588 963018741 962506526 435893291 614254142 182425699 163531248 276378796 411280119 77200996 921618659 58765812 771145930 415055769 855997427 909829063 751247852 69325781 590563498 791422767 678859399 495917969 358462302 839836687 617138692 592365200 919143192 900454763 382716016 852468531 939452259 116717638 651187808 925998510 989377944 863155759 174831950 558744163 364591054 117935382 170081682 327238565 166642927 864509621 863361654 201660907 469987983 348876346 270407038 28597938 899179844 137459338 200749719 290482147 40254596 352823684 790997088 506274105 327806419 286584905 796339567 412683752 797991045 793940834 839050166 686791965 15896303 764296715 881912921 541686821 77761371 608403750 555195974 474112510 293862879 670168037 858224601 882344730 568363754 571242689 224036449 790856003 140973087 610277168 702915435 743652945 405277097 944752788 736404232 819297161 298616603 482717022 588192403 9807811 511620021 101278980 661872170 109314511 702439870 819763463 684953806 539766796 676400713 456568296 357236870 880517927 311216982 580175692 442037684 93074464 965877480 889835949 874044132 433882581 583833405 73192483 841229735 681799575 275336772 353345905 43072585 424550728 184712371 167325714 409519386 310965401 723163960 136886482 16186520 993204129 412669872 131997250 39869369 309717724 201661797 806304198 564842991 271492193 857938689 646670215 597017939 330910418 722400771 886676645 257969242 672138053 571872781 401994179 998943407 436942158 689495809 919690936 554490419 615236900 231456998 979813109 935730973 835071330 891364638 933635401 739068309 978507408 843071381 497694834 243035465 522794861 102068352 27022176 325224899 883276237 633588536 41024425 395092108 578191462 694880173 903922604 296693170 221080928 185651239 105542323 214777387 974977437 545916492 554657261 771374958 18763846 135287932 233065849 751114122 39098383 802025459 432492177 14552010 514049224 641589482 592357012 684028610 262761346 947544931 266440103 382143772 593028468 989246771 487050490 888288844 880453015 516871020 971193548 152366608 568572210 930429101 648090110 3203952 838101875 146816677 941560430 108560961 614632886 111646171 740060151 894916967 317845757 519106333 605689065 296073777 49539836 858258493 182862114 646522632 709185805 152541886 331066935 905735076 564735686 641051071 694032627 248678050 345939687 391153171 521309411 847822055 940333281 113206299 458325023 812156892 940236402 202149293 452853533 797038154 696958970 595004879 623996327 477523826 892606701 826885134 597879799 598527061 863820214 169195650 89893713 207360349 75195436 113543864 390918413 342591330 482760086 975120151 356719806 228622273 453783518 262156344 829723086 949242216 716993798 385521453 330672818 788918935 146912276 270684058 633342679 145945747 33761880 258345753 648254881 811090517 491499449 729482981 847602763 785116782 439537473 587874728 80615452 280601262 310492508 869332633 755151979 995010058 919929800 853484310 74969781 768520474 831932285 948237637 379264816 411831741 533032187 697739203 708912698 487125692 915214743 545905850 255062192 694380780 323886531 318216767 366493822 885672096 233306880 93788662 567824852 245443539 834083729 535456888 429629719 378120014 127499448 102549962 203471344 862352535 912637932 11638553 659017526 344377090 475120699 365477162 646034422 818003927 735187915 260986106 850414848 771744486 222372858 690090488 461532292 278559096 137618801 4577991 15091086 688372330 264209878 820969057 673361307 640810484 52183408 874253886 947215894 781789264 630413765 960000760 534731233 873784710 604137627 182304450 772417420 96882486 356324473 60807874 499440936 558966891 136835859 354760541 468157529 22451090 335699961 139704179 126735053 723819885 211732815 828016643 147185005 256838814 655565910 509759030 924372925 888370552 670703163 737421652 761995621 769336135 370805944 750429896 586486272 163743403 284492609 757093374 533848262 846310284 726065609 390177571 266305259 337916763 220452774 440133720 414347950 569126992 99440164 200229239 925438999 825697885 923070198 375412522 263576022 290098531 545471838 113704572 946969597 948872097 322555311 659492492 587530144 801855474 41039629 758692560 188985216 587554806 190375369 589159901 679100381 524076005 792865499 50822089 791691762 659636023 454857900 539681713 957249333 957051764 746702174 560504203 767894329 210561332 622890417 759395111 326457354 973399319 543485252 933484465 199297162 373229505 889259261 207665142 460879243 923144053 152922214 829765872 52512516 669592233 377166111 563945056 943344494 77274279 947616536 740398438 318092740 740828925 94207298 523626370 547924918 745990927 300299490 285725983 95528132 143922977 804599100 406512878 91327364 73976979 643338327 390103781 292990995 642787075 286233746 22489897 484124917 240050122 75846473 379738245 639608393 552945798 265015445 258987709 414926212 170347445 709975454 592122414 372542100 655672762 862567717 658356339 371945396 294353433 275323391 893539571 706105232 146742496 205211172 266264421 571670077 505451089 791352453 933020806 469792144 542956208 962159961 258745769 564720846 16827696 831852161 168542148 570815685 490747930 297144256 848481287 16151260 707078332 104076948 575301375 872349795 847083053 46212494 16645450 969872584 800431383 505318923 954731827 338473246 641701201 128737247 852017353 990893329 72497470 410385439 70263901 473009689 814106668 691607970 371115948 870156890 391895412 973867659 942846424 622923831 980258137 549375776 407998813 75017385 952470056 923848978 284527559 35373579 439045587 647350901 896165249 180175377 108282378 509116888 630659335 793559892 890036531 194482001 481921429 394342620 167567484 233081216 27582401 547024592 158001611 81734261 684127996 304935676 869819970 262858040 133534041 655289040 619036890 93748831 934254704 872468058 198961694 259210036 427041132 680046764 194305163 470356924 334286321 367801157 523448915 978024941 432913674 62723227 753397261 968194002 507208285 794166849 281949223 6603211 990964878 299618287 44188617 404745467 125134196 659383286 260775517 291840328 259272903 900756545 291184682 849087823 715302242 143720203 499725223 877004331 114201797 126541478 808356263 849241793 271897584 897081486 336410054 317802069 349874116 886584624 503416844 103959074 184427932 682924326 178163860 153900869 979948192 709193065 932844533 758577983 931030377 1355281 796594482 919268734 119131360 735365845 887714686 830773343 291379074 874517016 959824977 970954851 542783617 322514019 551525944 235480825 864606596 39533666 344980440 564606832 858157114 270401961 276703293 528345926 198827263 542457086 546396708 98163733 15384067 720640987 432909597 598511459 902242326 794941520 710017159 508749452 965945954 207421169 316234562 82846024 355612607 553512826 877500448 226265051 582120523 556885789 895066637 754299504 145039752 673646175 760408011 638949797 289388748 542734520 187993470 835112419 925519016 466125755 231498763 630152630 402375446 201711533 960453181 496195548 906799413 171138730 996334297 776643208 448004763 952669095 696953889 394779376 644328182 312373828 485004131 226587385 192802902 761581543 79369175 348730851 193433560 879847923 953107979 16895160 499336475 443091865 812484843 209986913 429672099 265224719 826829373 799190637 304604769 488199405 613899761 801415257 322323004 804598124 65433611 436382025 217818769 947285578 3741913 313110147 361827011 922193789 525709635 590060210 841722866 341295670 479616370 177233093 389096187 43435971 412098672 706476114 155755901 672807124 71092383 61030419 574342559 360540273 603342348 44370997 273469858 513037912 556782956 645075071 44032465 376925513 927655866 370926443 67317232 129378786 911483721 464480571 415533792 69955458 649502222 218633404 516913535 888081015 258817671 572301281 690709214 435288106 241967628 824164226 804029669 669213961 551568029 458375365 156472057 844745013 377938781 596634942 43983960 927412298 504024367 615852298 727803867 807196499 467379404 240427258 77602812 67209283 117512590 793785305 328703720 897143365 920214337 468275771 624888072 138393448 14295989 706453101 159759217 742903678 261794397 155400150 875878134 31681715 795026967 706582562 467073742 68782496 793519856 147274196 463411411 414422548 289784375 953436231 898265046 81537858 639049551 833661632 986003509 903573254 394746910 471728770 826374740 858449688 637203427 137634451 174635917 12175585 368491068 562330765 807478682 480984601 526280481 807661152 977351105 948918854 496366231 308259632 187112981 897348667 319583786 599651906 552309790 864652919 556516813 67691611 886414242 851730973 19253482 205079934 455801986 849841930 731208508 909485133 430265689 3429802 535439377 301029536 550508335 1036678 829459339 56739330 39601848 407393127 475835484 454003654 470593474 899554252 476152820 572172148 125187989 700317834 426143419 687856451 269575832 74234165 92835295 956066169 747258562 54976656 249441218 397765708 675780711 969908078 451536057 73309821 832013150 675826336 222633665 281651504 455842731 771146194 885026433 732307121 800448479 208456240 78891514 150953973 936716693 691418861 122762901 140803830 685927984 920615690 290767745 210987155 138244557 780599952 322679381 699937641 102801939 94052669 917542437 991182532 673982558 846959612 925782566 647330327 135440396 481475249 252776308 981106353 206667117 288015889 169109266 766940483 332693655 717590392 635969700 920234829 220386666 752593068 31570868 398663971 837413317 769932146 677880507 346117472 760660506 937735466 864471075 518642367 287740320 631137493 216284910 459798764 259111931 343612372 309451602 520394932 445736606 786730712 219762548 32614815 106034840 446016211 735468986 424745930 595050348 573273350 744703798 312578163 942151503 476273902 898763197 398688038 391805314 820489818 568442955 785539567 66429889 240385479 163082778 566226911 381407805 583792079 794605123 777053023 726112154 893249217 915066793 368347174 430095503 347411322 907684873 806868342 249050445 339444823 268427363 396590323 497012986 771683743 744277232 148509200 883016700 978564140 636729995 301924255 231311121 452323864 413394461 689019541 262985580 648074201 81090836 977308456 853365629 409643329 942035825 741329950 254234152 253539853 620942047 752724845 45655597 926057161 736302557 235646376 523497944 537287533 336665865 959898670 603403883 506019935 60425411 755953984 382565835 245268815 717719540 84463232 584819201 682944484 359780489 785866790 691470961 639163849 712644373 513087911 481153689 515618759 977409731 56449099 956771844 283419957 88351315 902039147 324192284 738443275 162388293 291234382 133217083 593135137 532152148 736918205 391929404 482937014 360324675 300337997 386601580 770000875 457652424 106049452 326567489 623347420 639632078 681251108 742435391 836180154 292574557 240210309 858004477 295330293 789014178 455084325 28617542 548527825 51017969 224198553 824082872 55056042 742865856 317806019 249432742 710152952 888955160 566524570 242798943 235942932 419247762 375644514 536021370 335913023 536012234 693507551 413874629 323344479 656377264 236694302 25288630 623676805 61864343 537715930 816628315 431226734 803554224 673961542 21887854 304738340 327010106 31237315 411937608 172581925 698866585 95798155 386401144 962975328 188528538 250871125 958837516 473547292 185678775 722231353 247301974 207111688 6853827 250734791 667293770 900636499 232747841 414813717 825315246 300196997 121579440 720217281 596602680 62377584 205465280 302337072 322549953 454230433 451360357 917108190 610476790 457109098 248590515 454581386 188081973 538439026 389395064 292346109 967142901 22705093 438043989 640982339 310397356 908479258 122010546 857956919 111082722 689239728 78909262 992153246 259006727 30628139 769873706 25070143 313770708 957065342 425620123 824228422 90604326 240640872 357794886 249803077 50397430 415675446 541893990 11520085 748689440 215219571 852617026 127934422 12499277 655121858 803989577 906110489 151905557 131002724 97324961 777068608 842713977 100794734 124153363 765780687 176996026 838931398 758024033 719839431 481293649 162317616 748649412 322842757 209371269 409629284 99530057 69833859 641470040 719473222 702667249 389933784 393547124 777734023 385283533 838818041 802550065 536877581 667558498 1045143 695600551 222347109 463610652 556369233 70831996 427012114 502306378 38044795 502251501 541796446 713936276 979814084 21571671 928734477 335582972 641099577 426492953 69120030 641857603 974821706 586996820 654508291 1940077 316559423 998791041 501045646 596090303 334642642 43584927 530243733 802649545 23508675 189164879 545650495 265640666 57046650 742716867 547218149 827364550 38998288 71897330 665252968 566057502 190224583 534510049 92669162 351525229 400627219 968287166 851669565 662085550 982627011 172369465 73623596 958705324 330333990 303088875 301513413 978754658 140674959 249384597 560118569 830082557 33772030 950868676 901580740 750999059 3684185 607511730 442134562 916475405 412579091 239097084 722490078 828875861 785282515 663040927 356648356 176457315 747974117 239018636 900979273 844172161 407496528 326723229 54891440 167372773 853192045 383145337 78259792 117050650 286014677 966625844 212853623 247931805 878872317 637245342 738381481 546931918 942933874 206111771 243662022 97018589 177121980 759869600 427470502 791244502 830658988 549351143 644517313 225151975 979657016 822803628 250454262 219334181 886291657 271414544 548472933 869842789 535429382 193623865 744646247 983555661 639953656 528351937 236523344 423557764 286060927 98262891 582519233 860182501 249276642 507500397 388736565 777957325 627413296 288125171 893037804 450144416 307448164 489917445 80728842 70276496 924931039 758573485 350403564 76241753 661696953 3768667 650544288 25485422 568699237 409799585 678576284 788487211 552232710 191559878 682041563 114461168 295013721 505230896 366735440 681169871 626512462 736999432 575344375 225965398 247096050 532929563 121732283 509858583 95090586 33947310 779306977 607157973 282653345 765618516 214639450 137346676 340273137 713003512 917559808 65136987 446403159 518209283 967410637 70875805 927957455 192884830 192309145 143472168 785514175 719320074 372929732 854670138 390951157 998270932 881575264 711818489 938568188 786338518 982959561 64294224 161885346 974635491 992569764 687246725 183307494 345387772 460898867 496719344 892299652 266670112 75502256 643418143 949579438 957249160 462280250 638450513 272604520 298154112 239788035 289801081 759161915 833883530 499882559 949851209 191331557 229755575 335124832 145092354 454438911 385854275 407365603 367105008 804741396 89309710 38795317 348959966 489996561 399296243 414980088 166220225 771402358 258283736 153275928 826277712 224992552 769099917 825797094 69549648 135597886 976535445 780238493 603037873 473499496 564558987 491686062 509863655 362113253 140950207 763538653 153986644 392922962 820109823 662644871 643222556 289006623 350638877 538616262 473001056 254350145 20681965 149980422 521500362 550016452 51445256 30672393 223922115 732939188 666316171 171043962 89414819 426853819 496894313 297223345 924991635 183546386 642390034 875871150 450478932 241120900 503522907 413518794 707648912 269519240 729356655 198453964 478071127 49153797 911144167 212186528 632046240 502942524 901541355 651670900 965230250 254941007 320435966 514162164 551589659 296767889 817872352 858533629 39923353 89259598 60037108 165398577 553629453 927176847 148442035 328643369 107423813 688316811 589805056 361489194 341482547 958423074 828476762 882836913 1560996 193732494 634475734 406812317 761682127 262342345 115704379 65923103 127460960 116584239 77851721 995995774 798861063 267752383 341763447 620438508 348099827 369346374 654803521 978467649 16961692 558310140 519579314 463947205 336236940 292959893 689954355 710780367 461283865 719900281 505647022 908900708 475927651 584505243 739139376 758601217 287721421 991577992 57873465 985497248 880792417 855881007 310624165 470945388 342262138 429304398 330796448 841886917 929230898 320753065 294622755 365870128 158872124 81861750 198020700 72249227 771748405 166316911 846165032 345040937 325756865 15134353 931292776 197417241 460190093 22773606 468962256 7406486 816058672 777162715 571371177 530500498 232591918 358384241 230275753 507174136 877496637 356266757 352452917 441874804 669193730 499981046 110309081 313804672 27056076 325925662 261090449 110532106 708642445 138470438 72838916 544472212 887410544 400723625 44842150 615682130 882462906 573006270 291673166 774064048 831006259 539778526 858859376 431508017 670222236 481831417 52402046 582735928 406009561 143283249 864373515 179309979 591165245 609629835 893350181 220693216 584830861 917613012 932751027 384102724 666004462 330171559 295171603 829684854 571351109 751698057 488236644 637892669 782387939 801380225 41989712 259139247 840289806 43286754 16111478 202622084 248005557 857178257 166904789 514319951 770618085 438838937 212464247 826981262 526954296 755071807 981430777 102006755 128539564 149507124 657857400 377162370 449774648 518929376 365139570 404693611 127771763 122122846 6746849 182895520 123674454 451627753 604500026 561795096 917584531 98497426 178069597 652820085 582160895 853918258 753224465 670079975 746001360 390903684 104217874 81329649 878098117 805686594 377634268 741768846 408716706 330728797 577317987 139961234 575847543 530041657 760381463 293008778 288601999 666579541 303032046 623941225 986041058 432973153 229974985 234650425 417497571 745876282 118159400 288597641 370921570 143052762 303692025 766785423 741117436 669872314 367462709 255928357 855421173 688516247 583611944 797575210 388867233 233684788 497572685 222682204 184192892 220990080 772080127 313056482 892706238 484637142 19996969 12019191 628491342 275872747 404270001 857047478 42055230 55283707 13806611 638740377 672751324 637546621 414902433 148528382 669199515 94929228 980891930 20931392 154845319 865028908 205950431 162522127 144732357 463630653 522053161 567877235 240855868 694077220 869549450 859976582 467696971 815698426 219344806 658070306 226102916 966046240 85540171 378207677 221135927 68982044 142088869 264367688 839032356 367990993 276369790 726255680 360180645 202006360 140964428 115056371 250824686 490031551 553141014 753447607 431491103 281669606 984331466 742891776 720045868 769136988 921068153 862477116 801687912 66183316 17573440 468531444 932946125 614498246 836059344 37321588 358479752 968361154 93372218 325392135 517833309 249055930 535504493 684166875 37111476 441133195 919216205 804752211 757036253 63966562 79786576 584671156 237105917 4272929 966907015 466258520 250286756 455126194 789911814 545019784 256031902 92531414 58508233 796929949 84599824 722450686 387187324 464606688 183175544 256984332 278988587 57010331 511193677 121543621 737113076 282045472 145380944 59591555 850740622 147287305 870020699 139643718 475331118 59228048 966878261 834851262 11182679 473886435 922370314 945310229 819522564 118776155 140943269 498672323 716719408 59647623 367726648 888898260 603246624 932787701 463136629 882450794 621419591 121626862 44621847 32892949 408700915 344281610 119777475 72817561 513805940 395912596 942525261 721171509 204186107 866881809 130966438 218340989 91774192 627804506 374121818 673182073 447284538 635018767 86786066 331954856 298470400 423074424 900489244 401104897 32715267 368866319 369874333 954605439 227592389 564277325 624274515 724184359 113954463 987701750 834864838 391618315 536098199 126415267 711159271 768565053 485897315 887473147 478204934 262757381 367506442 6049932 259235492 634492306 533863615 787382937 436629049 343341861 723775208 399634881 568527911 509478421 581084811 667411014 916575691 645016566 824626314 242961176 300913897 204302060 254025718 15700749 497331427 289554997 173335010 175357923 160856658 532635444 778166799 10079392 82345407 595475152 632535798 969767541 449715131 22473262 664933682 626142479 149021920 186346592 711403117 243050181 142405423 776521851 329453146 558191420 897777286 102647181 915669159 228926641 865776074 738484613 640650623 209717630 889215719 250302332 362234463 730835814 262055447 529275561 714073559 820363548 805336274 218239539 356295352 273581596 841785759 527905636 491064348 806742911 840416469 992304147 516015557 138774115 68720779 183296388 462569956 10383426 325077649 156947795 392126573 353762843 153059710 998405243 751590256 74960619 603955200 301526154 19398197 509629439 478862258 819915218 438808618 223066481 578000333 770240590 365884688 985604276 788014464 46991313 53868952 635856221 303644210 375501424 418971150 489748337 282891148 472159817 813874522 828965797 228918913 569140746 511522527 33527091 607999345 730809317 743829357 74353868 706340893 476446385 897442077 600007834 161891780 939663697 891194115 517704909 216120178 430952397 920595441 702642912 665625786 606816613 802669954 429522061 557257910 535882800 972121091 266522983 57340196 563759630 610224682 458539866 281929034 774994795 581312050 252479522 900612700 133470468 356938127 327107318 103300088 483741134 397984898 86018029 959400455 953087452 958546104 194272816 613093145 349533165 527435583 408651637 666355687 658820070 700402693 232750993 491875805 386109720 174159128 114302857 309148109 964859107 816392200 948500094 617863822 556169332 758884039 939400557 233344497 966338990 639721241 516707551 636773120 84440964 256296073 629849800 869425671 875392588 431553288 812583321 403693327 214055037 429181636 804429499 660677111 9214315 451802917 760096110 973087152 330804836 627639961 217444995 511386758 813291052 549088275 841802510 987550189 488715903 916783973 670895960 401099295 898245587 914255496 560632773 623536158 316867884 389628785 46189979 918480940 377502267 263469517 929977634 684004601 607608832 64616473 25968574 444462163 764896954 418899991 572907699 454334387 5942245 810407020 795577635 814057505 585688453 354348288 631426259 698340004 193559065 40272710 781727409 718111166 537985351 812692895 667266803 103460459 515341739 94318553 400509998 246537021 15378988 583750897 439150034 477255738 722297109 719848332 137595730 943307661 177416548 326695437 758433490 238877491 711615763 39897483 785604694 87822618 451690210 293362574 137417180 159623394 249760980 729159573 5829618 510420672 91200894 41438375 499167722 593540994 549157159 327234560 952872609 680743335 395601373 998712333 81291093 90161785 141305551 749617775 614031406 524591242 680380077 617864503 755560602 435804457 237831780 65363377 893919608 270551969 456189747 969582544 812380050 498064726 402943918 555321847 816035605 430997925 470651671 386169608 140999571 467647737 679055703 429584694 873194758 95948363 244651477 427682561 648896170 31503632 726800724 891718094 221472269 391608098 400646219 787063032 110260952 543048679 531545851 862908573 984292685 386864633 563880897 338865997 214187185 236744697 784706661 835015635 112185336 339063509 365177536 73285525 738541097 265012707 484342466 725340049 637739756 703995301 165848631 500870387 189086706 392885833 571187540 144915624 466545352 379547666 302540480 135594307 950236646 808334162 894968599 204373681 746659826 20176306 157846544 445360945 933422125 691578725 942203973 860199653 987405591 977189453 757291706 46159586 209630663 549504888 311230000 135980130 267658437 710348199 216256401 160604443 862740950 677888526 564910636 332543357 801538559 592015285 853558455 32771525 490623604 609534262 672305892 101246144 577098488 713115884 352041581 197753128 743433292 266461689 965246769 456991263 40804595 728420248 914797612 263814964 574852041 775746995 833720801 77790000 170944212 333085234 684953900 493625693 944184506 442282089 646572107 31989776 51742897 374025660 871387298 984874491 663190052 322550422 205346867 254815009 223741277 160561662 923888467 327767149 456417123 928747057 951827261 637511519 474742551 980181071 783980776 605144613 553349816 544881527 934202835 307149665 390939343 331724484 673635439 818043047 829573278 472638078 523130586 141214741 737578344 128787938 222100169 682622499 949646045 216402731 58096517 544440157 173225701 773304062 600738168 950402080 381484854 32795154 761026410 240579684 329502743 470155941 922401938 807305385 704372075 170388306 297428170 475721557 79973458 268665954 458457092 707056312 829320581 521249166 595999615 544163013 954267880 861064688 975189600 773259518 378931537 185170703 738283566 422812794 372215965 905103389 73566440 50854916 397195774 441623597 533770241 782947454 422332071 750205172 610110603 637439107 289850695 834151883 594001073 9285101 615920137 355460351 94852379 426003126 854594960 11623408 836257366 339399264 110940997 529926949 279103360 668655998 872089086 376610903 615193511 123955131 991356402 480354697 647653305 273454277 256402905 254540599 263336736 931418652 579196958 721443873 624698619 788797810 270423707 56186826 195497075 84021350 283646130 966834019 106195078 752668320 878960819 507020999 952035994 447367808 66503688 154513401 598066279 436526591 498042372 905575404 618371836 512311400 208190809 591652872 892657848 513820197 669675699 189591401 738468909 962005221 988824127 283451018 998538347 168606781 518059357 582992161 476498192 198358155 903309757 804515382 688579586 397326699 94194874 574929530 763476136 377460388 187533684 450702811 595945464 68968067 983557599 851455316 779120888 359509236 551697983 736966243 820424292 670763126 872051438 66814531 780801677 905038742 253582667 442924696 425172562 664463673 314538353 31597453 64667025 934041303 713545736 215555454 342512496 288581954 857612052 225783580 755844393 267831496 571401179 734889595 143644794 238136823 126444494 233266089 412216354 821444528 158712166 476511386 226182756 764187129 677494228 875059124 183117914 800125076 464232721 356593200 543495839 269373574 254696865 913253735 482806177 287352540 230126086 357813675 815380178 2863715 484396208 810097946 208790933 429671776 349871700 19590430 231560779 934098418 822218173 656723451 553025158 816408010 543186316 476155451 511674078 81155855 879261439 623797657 803967826 441649477 204716580 728931418 824967060 328821837 571888215 655627321 956364884 296832949 696691727 32674289 274056547 762605451 965586537 857615933 678655786 444076001 800973462 578285062 88402133 791671913 788085891 750522621 771009881 544921598 920637961 128638492 954315060 739102981 213021671 427068049 210561825 633705685 486126784 531119682 602191080 235636392 967676838 506645123 341291658 610359499 58260019 878277989 253891818 971266251 367447517 197953005 183362179 66638490 718034533 279933545 769449445 62657034 508909358 300892097 321883371 60642616 740589234 715759380 798060074 251202227 286206840 375533269 490724239 850095341 621699835 986605997 971984333 965178242 714645805 291420625 774448683 781775655 405131365 957678679 353368607 372562156 956261934 219069207 156823776 35484615 494689475 311820703 132398212 526516075 269944059 978514678 402138478 807032495 58230585 600300278 415994431 377009657 601412229 225481974 277524639 477614440 951199753 214405116 548350161 869761408 838270611 50939397 2038105 640213582 691818037 513902681 679401556 175901998 391417022 52512578 108727282 535434656 42567530 923343234 221792961 941265807 2098609 405340201 348841814 807675188 13470375 136449103 263789776 85173580 829635194 740917687 871232330 401574925 779103915 169498913 747597198 957486784 395040492 308274975 10128734 370971491 200062889 476190294 213558314 582583354 703045694 747441807 342599150 497425297 824542379 498593088 455505221 315615264 211833464 66111208 835713999 10626073 960528538 619969642 300394965 205218788 260581248 463615864 171142581 387945119 648241523 480463871 310969492 109768466 408718121 69845834 79583280 854623636 61535041 325297134 667668052 419442440 566088926 572168793 133509591 510997755 805615393 888796030 376500166 33411895 124889557 41912955 580991604 58921688 240126749 376506697 572731728 822080084 145606027 634705822 171544704 209842473 622364555 712746555 70575714 355103916 273320502 910796957 651105037 320325718 198456743 476226700 955843915 806822865 795352405 277913829 577156292 963510077 18081749 844270321 731742654 532995618 886019165 323844461 862430901 656609103 160447536 712070230 987994232 191809390 129517400 701016336 317098783 637639647 260506038 623480365 434886635 194212408 888954629 987425720 100659153 350960211 589401924 690892674 194173494 111996849 945115475 387836739 17390684 256384580 879739886 33690725 484468641 422617297 512715144 793041647 502839679 615632418 939654114 688186385 920114449 47289432 62011256 465188545 538379937 642242777 577453004 709896440 500058202 486735294 894838895 842472344 581589083 573209191 600011968 439327119 339290567 196519745 274343801 986552967 314763140 585854558 433929868 398611216 21985165 811463434 967716602 106068230 313996472 190461405 558706855 804227486 817890677 208930741 170973830 153956466 154329032 945529771 713381124 663606844 526465486 56650662 17721041 99154473 835847691 168833148 913845791 266906610 447025079 668814185 502296643 235941466 49106500 607074930 431754071 150754760 440377843 692633522 101193237 20981172 931075642 219208625 931372286 525329075 342623972 663042917 692961990 268111292 222529776 45144290 654973563 917097191 944517483 91508125 470450247 728681815 561497420 152064189 311733649 741190821 360927541 914487746 255677030 438724348 484499927 725783675 769424734 826715483 340320318 555771561 567268329 66035832 119306651 472094536 208004447 95433933 406570834 268161946 427383351 622160839 123259123 340789118 596965006 578806337 387397695 934724557 812646257 69005700 973348458 557743943 98317888 812516199 424282679 917831961 273512256 681521025 890709461 582542953 121532966 175815277 707170548 822965858 589565356 146123147 107187136 717612858 106251162 882144119 812700802 618815150 204742124 552312185 492516858 157411505 90616927 650433483 503472770 635914111 798476242 642914153 481296054 112215981 20411487 105225148 977535743 750798872 218866696 812938652 776146519 612375063 106586710 299511801 165063083 431551245 591031247 672070905 981212140 309516165 637438067 741343326 976758300 191068336 271396769 632355683 412471982 730705802 789390112 458414136 20505221 686637577 126794348 418616775 721403849 983862232 767080502 850521663 43362550 64541380 814728085 872243721 634649581 675014368 904843023 147815931 711197242 611318599 510648154 781127347 124579754 70560762 725469302 188855446 343263513 733570116 754603273 685176474 331399454 198214837 868823147 763833439 387215428 561821275 932307314 219424927 938502326 170403653 213916879 251988671 377015921 355888726 275718187 631116359 736136969 214166899 417436588 9516474 249672862 435716102 918872009 419404953 406582414 930310832 854768358 212826607 57513616 150934760 327558711 913507609 691708235 98946505 557746119 515811191 393931496 59450026 366762357 860212605 203274799 860586759 16491179 864157355 659215990 909570304 50529001 64466879 698966157 332380236 96169901 499690522 549647138 141255081 235241187 379520350 275232311 646089297 435034611 735466387 78420549 56105414 548826369 735375508 137434470 139463276 322155345 111878412 999518262 377388726 666132833 382880313 325384214 19640754 284345653 556128937 730200649 181161053 847427300 669456874 535549103 400638677 709325608 11107785 34174091 442865012 267280061 863873909 362365188 816040821 665051847 201273319 910117573 860545759 270715148 771110443 119774123 507743899 335489440 348145835 327703730 457559439 765368091 12158856 59678813 879699231 117538148 143240345 907829422 813482949 935202169 436848978 384993217 235119765 779303480 736692320 287567907 435368255 183985573 550659985 941424081 540340198 698786512 164295041 997896808 779812549 245474403 532708727 376808534 597613881 457030721 164839212 388958865 991732590 562416308 720994532 791292509 154540038 939319549 153057283 477074660 191057805 14916481 414490683 537696295 72590769 122304906 90874954 643980566 838865921 792188692 166103771 572883462 163150892 949078749 222004318 599041258 403699298 107236102 41154202 456960956 509459282 609163102 309403379 304703600 175510780 95124954 58955157 247925218 963274142 793452378 612706153 487849095 234292938 907362257 722907446 990136832 194229505 647910510 423615313 484542129 46185514 156856278 990124834 997701868 325995469 151440280 670944304 53964911 652718556 796528670 257776971 753673044 387337382 203693294 135346460 338183162 591506830 715230519 613850223 370665266 875404581 807177564 136854394 385712233 978215014 356071628 183450077 235608789 805878637 563443303 516246059 352321580 51547464 666595367 936916173 789719129 708263305 309737031 82788552 546896929 562505701 950721320 663606028 475887986 206869822 949321259 965695714 981872891 283353624 932436519 688309638 421521663 785350992 143250838 144714385 201187664 625889302 704363617 104426160 270477708 12988373 241778435 614855391 390314704 9954978 409435612 976744927 502025153 870071352 160560119 728965815 608746899 978802284 614407393 342895310 940551503 495554833 337970063 480621441 622381908 487165467 936169575 216682820 158879902 84609987 567244763 42657879 82997132 460876772 970790618 513353000 95837825 758922947 351272064 368957164 673103632 531252058 159861405 737108994 18778728 830619466 692482228 107232842 470609300 112391843 493432530 286073748 857162401 670896545 612413195 741230317 619249135 205579044 378717359 190312433 127572939 880590530 598687736 373466222 900269138 122585489 136664591 753560548 337317641 354953225 380037997 240252432 30472513 783080645 989888664 288526037 278698760 896898566 821799410 632674139 334224465 214631326 714373993 524645759 162005747 780325088 588889426 208395691 366698755 304775825 790777808 670964562 987917565 885683002 214167554 448705536 418158914 59892541 498603647 44545606 619204520 998098672 385625764 482657434 842175876 98532065 384052916 694064946 616524618 238682290 574518620 388941041 730071725 906297196 701680362 920444753 694882967 383816258 728710034 772423496 984896616 362508054 248178583 128967496 149956670 764455557 813819712 119655801 965626205 281249127 64699705 902734887 250876111 163749526 747388994 136607972 120485650 940238855 65036254 383355725 984649777 883782342 671368833 288386016 758248277 322560341 985972674 924909990 696990020 814002059 897181388 377303858 338681852 961244448 802528259 218765633 892237275 372766998 967895275 626600393 954691993 1178572 867699093 344789419 672128167 390006121 192870299 789739369 58250754 20211786 613758391 947566793 678911720 647218429 625522971 574283036 269005013 235239802 78927624 393976558 768678905 782405915 531973811 942894300 463578095 282493340 614521544 153157890 977060750 785641193 138233499 395656306 677919663 758185049 946957461 832279345 325081908 204744196 994651191 579771144 976232268 861224559 767637164 629680707 270352144 206939394 292797607 423857765 420015877 147983595 308039851 78539604 137760681 363760568 976589214 238643568 805714404 349490198 1498889 157698335 233905623 536122584 468728731 925302989 533086961 776286074 438864723 309126752 313946548 780165029 974744373 922711696 311629770 740350445 993124751 391042400 233413244 622073394 946150109 498178706 11085077 454934846 221580423 231454696 528413553 313303525 722089404 550607814 423777800 203845055 799292037 1876126 169752602 566244646 820366905 983859969 47768700 152737586 445492230 318962603 486236528 919925103 89829879 842762247 69080840 998320558 276256412 887230312 978519018 415744523 973751795 258248081 654106700 564872746 881838559 170337299 379173564 974080296 720363823 669286307 195729695 626241599 499313995 935937084 93547895 205678887 810364258 735640486 927796967 343684916 462018016 923132421 727687288 886782666 217750427 258097676 790539951 492411404 395272955 741213198 611563118 363037994 838609464 17310472 22752538 144295516 488142288 658879892 500923393 285279004 911673156 236916062 565090716 554561209 750375658 410352782 719858843 155244641 298361554 954519931 96703480 887358025 439513410 828990042 570358493 507839275 576996453 183726189 980740044 78653751 705009022 992604744 279653544 762961011 904153327 108851434 871817631 241427192 361075000 612397640 48495433 653027516 975087144 259517984 535526376 401518398 479457306 112110452 73312121 718341664 845210176 782287455 441547907 113939241 382395456 834795877 920720901 751807522 537847228 65310493 636953494 14005451 335289099 584837384 448778534 779471155 81954931 178496770 419913004 581306053 251204318 620422968 557336120 542173877 832469273 395438974 763050989 381353754 230170738 729050180 405924193 857328854 808481362 619081483 595674644 654920989 69897309 683343971 102153030 139711120 523003718 652987459 876038748 818621568 204012322 877615958 813724601 242770870 558694667 566903601 165803267 878694466 479035835 620355086 768831223 606556291 575242076 252936899 875816136 603731355 626952813 800580501 172790676 656585651 794544941 968118129 992323318 980567500 228661878 75042793 443236769 650006834 190209812 600053697 789610915 804905782 896227445 532462159 86475752 539674440 102764221 460016783 47540738 400966513 332328716 141823824 675869192 623878465 552904375 876986727 110776442 321211040 431339558 692863967 282197007 461061496 739588913 794537602 604028648 995174985 765708967 386799725 535902487 287332009 427516247 587586243 51153724 541212294 629816053 416111521 471176469 641476043 28681397 807925998 320266282 983679712 752407024 908238708 333764417 211150184 934658418 447067831 301926011 130585487 193724026 688349541 902714810 303300879 292192864 771954130 696145237 653180089 516376246 985018788 658488328 211530748 444659317 545529778 534431418 510985573 679892417 956767946 573013652 780631028 38016229 102871446 145893753 409166636 770262523 156848580 101543891 294948084 43480430 833702541 342032001 824339039 349770266 151771568 852378045 346497963 967676293 303538853 273750739 795876700 288442587 790425327 674000338 242260576 64472286 348402326 389827980 340727156 62365303 335046967 519341109 160961435 155522526 886377027 119409566 515080017 78677628 527177538 691750625 551826594 621061781 570255928 431495453 744733630 43039616 163874058 910824389 764597690 746847458 362841073 99712423 15122902 469220295 384973303 736496544 393385883 372433301 755828691 982920015 50697982 196538296 176472579 824606257 60961382 785698196 292805969 785074662 24547631 913397895 225154117 648645554 790974617 407440192 59319285 215891593 62574705 846341001 476559290 663332966 64738287 524709660 26296054 420804867 862263869 11510327 572505420 62754179 880763990 199155217 749574072 942350445 427331044 678931993 926444671 544171281 193949772 949660677 739521541 964790313 790098317 672555277 620573761 380695487 326350860 544926578 641186896 40854427 463342163 398642908 556610910 544700425 61860997 18997748 563704629 243446992 716868637 669484716 127387040 135594394 42265727 734688833 327330421 806746698 383652095 607374999 798046724 755539826 980415983 332919406 53130453 459504647 784616272 523001452 496296136 940593340 200676437 858735634 968627112 460045262 813235213 342487866 668046137 39501172 900730206 822360457 549203380 551866808 183874231 754117006 714530431 396247373 519555707 12275211 39079869 912594618 975497901 148975136 263380747 575522826 217343078 204792694 253317039 921144184 397517759 209231928 922723957 866222486 88034756 293560756 126033050 561988554 427813972 730286217 774247193 449826834 882057761 379049589 294060619 777766543 383303372 455066896 771026634 655548932 509333226 254655822 701248171 890468144 660576289 754197120 292987235 496266502 314227444 534879806 399305086 694566343 870438494 152156556 114694909 988033286 826260985 959540829 739743842 551002707 807853125 170166500 9636413 895947854 61636065 996107626 822906810 201148718 421676561 471032946 891656908 669236752 397330727 47431921 621245273 36181822 469130194 600361910 461712247 562403384 453089887 565537646 315717611 65680576 212345942 149644167 644612940 353954107 126693004 186725677 978640000 373652163 3158491 465133649 753490016 30536961 820043909 529951921 691466213 385880223 715441332 467875017 80747937 610804519 695211925 294410044 904750268 712898897 536956872 309667701 525893603 967314330 762794229 599616486 35397192 86960989 505442159 419907407 31948145 695030888 656084797 948626282 172586148 340087791 945918807 447297524 735574638 784097903 810948896 78025189 54630217 719422933 107615989 131239345 565964521 115859589 374039697 226502467 116002951 326965284 85235615 828846725 661662411 947293728 803650348 231187943 594281297 786090702 752818060 881721476 890857692 760661413 394114536 436324074 84694419 300232831 783622357 971792742 795401107 804165492 593145395 268465630 890750784 475626428 836337372 303138190 777456722 586881476 374167606 829547563 653351874 961660046 31924404 897172011 256669523 145358395 703223101 261637056 151224114 874093251 312723362 566448791 180317065 184570734 190382001 254532825 93488796 477199334 508847432 505170058 853726743 624712124 251038775 585360670 701427648 643879037 80658023 562398603 118033358 620806829 352183531 807004264 331089495 133190267 239945677 679821377 553924303 986230078 172358945 939606706 346933215 36923980 123221247 772626476 493075602 120409165 215686077 609210297 853651074 149297039 946091859 429842301 207546816 238400633 468994339 623831373 769114560 93256308 985847274 695888329 391819023 678052155 317063424 273077659 639769286 610879319 956945490 235817679 435206015 357364671 442582992 83794492 714963168 400195133 849260146 586842080 679904663 802622110 196709503 119560634 545368327 789051648 473215244 684243117 269923197 616722234 15623491 952313512 76244924 616725686 51267780 242223409 852640739 667861665 214813741 868241536 814236284 448943787 19683232 596562847 205152504 377259309 3044051 115378551 162308445 381839864 15882685 790455459 47898938 224259796 364233827 924084934 463799063 609478079 147459718 356782392 360224439 196577566 2915294 392249819 890411209 534350309 508395650 831728276 234046992 681300046 325861206 130964374 361558087 983070927 414414192 625596292 588345747 804740967 672307880 545203638 309462472 383472015 402028851 517745355 304050978 146591208 731111087 222231114 832978454 373823176 478918434 320175612 908783022 210936924 583245076 448631690 407552033 729921069 930837394 413832685 333579054 808832702 183476885 543218409 241835568 603486724 462701223 283490231 581050348 80818311 256680312 821583072 978860921 501050603 594945601 645094708 57272372 753234325 862798801 805510515 896547289 634550569 79649411 7058642 431892014 270158598 612971168 481915058 299320645 219341259 878593578 409064601 547708259 448207108 488753405 967448383 2746856 50245693 255384756 686539242 248744229 48455239 142665670 707332350 427305185 673005629 521141930 26644125 798428483 172957057 620862046 518032668 247333501 378248479 490638457 510677914 260639902 262395221 829437136 274248910 30399992 394782464 635597294 580035337 694067443 37874909 668473552 700521375 7777335 827834817 870725894 685388888 939969488 638162756 577722769 776324140 926025624 833256436 509014610 834075565 502077385 392441198 334528732 428496033 431199461 10230104 133845162 24114676 128946969 51845838 928967404 701149304 678146733 542863766 113065593 449082809 911950026 203887577 401271716 883892416 518317935 904449194 668720845 72535080 968887954 962193094 430397302 136223330 194120687 619541426 320363619 788299029 86731512 935237342 556111409 50443577 218137603 737545820 464440905 60914368 547416167 391621629 300003361 684581399 752495005 971662445 398453031 961971184 785043688 556166825 786498317 678277751 295109550 8303349 195021542 375305369 905297868 989817996 951720040 609571095 242010542 76317332 809997600 786655639 586647352 308478311 64815280 438079263 619342075 447188898 569398878 940759185 610845667 460738388 212650036 908791457 993733590 901334593 974903201 139536414 154703038 807530724 214503090 310296116 521405448 592435807 917797847 686993233 200770886 782509269 377825012 834032526 361667919 345953954 30525862 883899979 638150750 768631222 276510772 419583960 563946005 945170048 33282199 483132158 875777244 557150961 910385049 485142458 748315910 27376818 311990502 367732017 628204494 208428776 858274607 69965421 925780317 274574264 165721475 915330687 563977219 473534487 290516578 650168109 524734262 346955215 876879161 81860203 344915232 593399718 837295027 1402153 830137571 923262408 363270749 567672808 423857775 742834000 970763428 992468077 404278561 779425703 49850723 110214217 558131376 677485137 197542075 873688829 554104306 433724823 983401379 208828408 887985043 967161726 882013628 346566627 580988284 705860304 381014086 986752602 191168570 523008782 328319664 62482305 780345941 954844880 134636529 405484861 578335601 660276647 21563144 265956746 626941031 580270021 596625456 959362048 454177449 29544874 58541236 245134336 388178888 28976663 927954384 472394958 988244828 754604771 445017047 739010657 840766627 257678680 275135233 628226942 702072342 219148125 826879546 574561145 645482223 472919858 894971922 756940696 715038007 898862031 660177636 932852969 773683737 724437012 597061222 26950665 225239266 284030142 364078988 520694065 389104375 122161917 163096878 546892745 263047961 895552771 710432700 341542537 197365546 822856787 698216565 179176802 261972973 326167137 77335504 51364626 866447385 777793641 270648675 832732058 955905225 331751710 167374180 868332430 377760824 775455076 647454496 632707175 476889956 244157962 861975619 665435718 875578492 599139665 729161984 434638810 417701140 485570856 676561181 4958064 773903299 173275956 214185130 163476704 162338671 851975328 182338818 152502059 383842792 497677721 73702490 504798396 131472385 959659630 298992731 819350997 632102414 879501509 263223295 90587770 805910735 337346324 276222350 205904240 244162698 573505027 145746430 56420643 30532857 444449872 409853578 260544123 372006273 526179436 559238914 85389178 302528770 874075369 524891560 790771201 373074169 598649205 272949552 755282253 251218409 207487393 487941105 643890799 576577196 660615243 36247068 958271769 892246841 901208099 931154416 853707182 60508212 661528694 354798118 145687007 193887061 551397599 539569 966254751 737939735 734048338 697263823 598137451 945731863 777406737 31805135 233891055 225283738 733980798 761839180 354448543 560460755 720695897 775264886 58073075 713794135 745402091 335912465 448706286 138879403 7241358 367141656 808328685 196686183 689150815 360629491 647570603 630274434 62211560 854595767 21396687 336162993 997695494 226365504 464402691 444940689 744260756 310208931 748034531 649176757 830679529 974257632 519929320 949667688 938193972 868159620 798002918 508381823 994641808 148409253 787483078 342651362 676586965 184488111 523963597 352776837 534958440 562247839 856364923 817747429 999244816 761090897 727900996 798141853 592956555 581250651 785337957 229243109 660885979 440723032 448722170 614456401 543822001 43308191 73299221 396433946 32459362 608066494 993002256 62266651 306186218 910577624 131030146 439472755 564342124 113363467 238687998 837070549 747317222 866396102 247619759 598177180 186846965 742436127 751824658 199077534 522283860 430785727 77222326 594635926 663888411 446851764 9677308 933514279 18026706 926215956 274557551 627034604 16157040 888578647 865238226 611228038 820009095 529740367 486742966 61666953 307991252 667028175 642439520 86526303 683920185 87675051 11037349 107444031 221066041 101968517 304130735 661087110 983439715 519984773 339722651 401569266 892632794 57953727 96645982 586858375 565074782 868955072 387262856 257944161 659159238 658133672 893354547 956019111 797037717 60394888 407531524 794632218 232940052 782479204 267214505 367297590 157320549 857145380 124926169 143276100 267567683 839684566 859607962 54089695 695057572 55518057 419208927 13225945 621941721 65173345 288221624 365327663 96477940 20052640 696728101 820660631 31365581 635796121 507992352 292937440 593620532 429454987 214301814 722949528 165443909 43882117 404384739 792512246 85822994 552284297 852260121 348454335 806240277 417625432 947912153 38239951 282141462 765386150 679417022 539518588 382343110 381103770 231317611 616690029 813281548 657908320 447048998 376983044 245595983 72777935 823196309 730525401 850871234 596764956 727539472 117367805 840122746 128476097 996088283 686487827 633816783 11281379 910931535 360786058 302711066 733638543 42406407 946198775 457601783 283556658 968502379 987596964 7782854 54087098 516202853 609720108 625246717 840653342 545305544 140882619 875863063 260227538 523048154 292483928 626525990 254799651 493958948 509574364 905004747 445927174 221197237 728897167 913633746 350277019 900527639 142156566 326674770 613949509 816842160 581922210 804182323 956708908 279398808 465476525 137157417 525130473 371434369 950778244 292737525 63191076 773840921 635991978 368688183 471924027 254967019 772294723 736452308 859732246 914621988 264790467 765304677 810802272 598684354 594385821 289607705 486645789 508079460 556112908 251346812 849990709 712009212 69854880 665465840 766544461 115364312 381459318 953707275 541083112 815102060 583512453 365880682 604193705 652181655 900639376 724878555 228622481 208013871 614070376 28723260 180593706 604867387 650332500 493408947 168572407 657510838 445805322 873017883 538914066 355188368 300698361 937130769 40483470 665921092 960672313 343588889 918650853 266926291 859215811 145866209 475984490 908370887 881524405 639838504 515714919 911952524 839152311 249777249 570307941 738763183 678994709 737170659 666033872 209451281 66400970 870522859 27229475 648580842 310338942 607980846 428646735 562226036 406291781 879993994 995208599 825147425 547188825 793109914 877653852 637910380 184881530 88343995 436607903 878035858 645050145 244792661 208730021 521230468 856211413 264983904 431258035 395057532 553264587 520735353 202814074 184201767 246241961 701821316 971387901 944906966 191213162 181914073 625960126 778672903 602606943 646655164 208564130 776064968 473414278 950510936 304491535 575607464 78221158 677718310 25634802 344093837 624699289 933537875 88984156 562526768 745729800 748154739 290794270 431327464 3239816 185781123 289987641 564255969 454341495 67531889 542977115 514529777 285612560 177926162 907978167 417617773 302116265 296847488 313527409 295024809 124778266 151512691 540613184 36744321 753344009 579839162 49623026 430032006 540378156 904636664 406463570 674642357 681822514 543878621 308656138 339688443 162408118 908471533 441298332 986203348 317582548 535188809 550951353 814222495 138437015 67130476 788122135 699609536 346336996 599333985 846936972 515798448 574227775 28189272 558690361 230354295 820966894 730375517 575583433 434444972 423467852 658648797 383528904 573610876 435746577 635505554 243819957 940506412 148506417 276918679 449838177 434856627 347503970 374558259 898611283 384088957 297358174 150569733 412129968 655239231 104039563 536534815 181012776 257103473 378986547 499560191 820122166 114018573 311710606 696169669 689343427 350800019 510724756 827975009 671296214 921944724 147790065 104374813 270350074 310140843 307437265 963994297 455769127 901854122 40519398 665486049 615484258 701968653 199411633 354358488 464622762 634354502 605118234 908057361 732922081 26180135 476790224 825743784 486741361 656583892 896510260 417286383 264115318 131202995 559026062 234897834 239683211 800529424 49750326 54880813 932842175 862761017 508190581 935396588 884400600 715430033 767933503 305474063 665502292 529940435 466239356 179869408 196497601 352154211 460530470 735488903 459071529 21348809 410539900 229844749 305644851 27962878 86509676 335869803 622385125 815844018 246420984 574171350 447496797 806269268 118764398 912575056 520724615 318321578 32772759 720803597 216383587 416596322 294032302 576019771 285161282 943831982 688596802 428137901 56293070 538244271 213350354 945287265 511208314 386123681 294660480 411887669 654677754 527828600 824372027 701156221 659900499 325969229 321069563 404439899 82607428 768370668 186802596 348838536 318705293 679862018 791193657 189808601 522342429 218755362 985526317 66174883 728688251 719309664 944603217 575771877 888705183 353715367 632120681 702802061 950149147 487426153 361294852 569307019 932771673 346277508 620908993 510822497 364976181 296154049 691568877 501752625 714874841 570381903 245527341 198711699 272135467 911657600 322588675 229397855 1263288 540124785 845821824 373476365 997282530 64985192 190568846 838264951 712524593 142946769 490117553 769718168 220298969 329932389 55211332 323250189 903405348 620563479 742957816 846703090 339588040 39872233 154457133 528035774 992372337 695375612 186161261 613618220 402936616 221975005 915730122 935932519 37065909 14745578 212147578 180042738 658354863 304086746 72211239 408773575 596119865 321908022 640775682 10105440 646569597 111323416 520047369 984094350 804323043 123879703 426680401 518442912 181730011 99983027 194350970 8085477 562471593 657772209 305526657 680913472 544476373 990018704 540742228 823294399 616268164 756258837 403228868 365045159 815952651 872750433 441201924 580470114 755367167 52445565 662271677 102548467 668192704 372285856 38272438 312403296 786266020 637108183 434003479 233093182 386982567 807671911 208596315 463417582 915457782 732537702 859675490 440964013 481151544 84290309 248924983 313911744 937062659 403295453 97968929 756471595 126327018 92016284 430234438 461156935 994115543 847395038 906449713 616179208 582497662 814304295 654817890 353243875 838149393 531886804 73078266 43919415 457643704 329582814 237754447 681476200 944116570 531468339 865149139 145128817 52617051 18347742 580141139 602997498 99924641 431791453 421966614 506474292 2875990 156381023 700143715 105530655 801163177 667876554 605871382 23588778 884141243 438726475 243417847 129181131 209760568 257317864 675465582 103805753 38457944 850151174 517219856 707653538 330087498 248658191 718273903 395068973 684381590 762277449 843342107 394520032 427966852 8661262 660994197 850495528 774085916 73721528 574658962 470834039 953325855 260691131 448211691 299694076 672941563 886813246 872838849 511139688 1860572 428247493 986407626 89574281 145958605 349843883 781076280 525559126 419774621 577285375 832027419 899707523 569216744 34228089 618555838 61331610 613922181 48642600 452394276 792693812 980090746 115390230 11620320 530828776 653154586 844009021 679094836 600871794 1322379 423957807 292885332 795119737 309235130 660750575 507755369 392887804 304995544 619179364 821046735 962772915 708894997 267069026 652165955 831039468 43330986 781224409 726142917 768636 182133004 842170360 797531502 937054147 168414660 516047489 62966337 51021666 74804186 388395519 171909879 390431495 963153474 683235197 810952067 964556429 953342818 491066832 38952086 293099535 122705732 867318185 47572526 481452804 202313419 250785542 688026597 446578621 947862950 641733337 725524856 957356201 162283908 282264305 344518975 842823569 911436655 470688859 214337697 762062863 248706442 255134389 135341059 100360499 228812793 60676464 673075497 793579410 176956037 94126157 392598000 39535898 200957317 55988463 98422889 323311502 242433209 299089097 332484714 789858103 650242628 79403842 818351208 921889356 860205111 455888168 158996008 609005113 713573464 679995797 816152453 172908563 792535234 257060115 504627999 624191968 27270813 345484142 398925235 897906195 277820788 140402786 638291794 303679817 954550766 587688733 473039398 328216596 597016736 46430959 866599162 660114701 807052730 440404598 809397040 337026912 327651330 216112968 738684242 855337267 68957200 763533631 79483584 482661389 56800487 414648566 985874862 225436454 192655485 174666342 952998477 91371405 189860591 868661864 126249676 829578229 138340143 390616541 117290212 152840785 274147913 135113095 711362970 304557191 56531573 929119876 953511525 181086116 327839205 642866978 133066470 97315633 256320698 842406962 940412724 655237342 959697183 262961926 590686455 401893528 595960322 402141762 733678694 523784188 429584398 469328714 563083167 195944157 772075961 138548601 580624611 706006405 694000650 273493664 388601156 762352809 892530369 482260937 508237688 517693700 425109228 255561200 585729308 45935176 482954679 437886902 264149350 316424158 394207238 687029994 856810079 474675987 197808961 911431460 54715435 719038533 267169975 298559328 390985736 141256445 158389838 253315032 152295284 866587492 21901321 240907038 62621033 364507749 734260836 825350024 943036760 815914915 724157676 716533537 36709873 497792323 690666744 841255059 699819260 47169066 595429431 761860966 517502085 183446577 52358274 214477333 477153893 367411772 185086805 884354236 235582518 597819987 428046309 926596330 444808618 490809614 868274710 331850622 518795400 995158853 260576367 840657560 26118355 704237795 20520359 210192009 446181844 713140673 75565553 601255164 874864912 778441572 747954632 926294796 645547166 309900741 894716180 39404538 905030934 82158924 570189928 160082691 562927702 184601563 835324490 285163573 475159988 900307347 920304633 768580064 546775855 643097595 67799292 775096788 943794572 115462743 814663457 355444730 394553659 204980023 55909506 639866796 780076722 960729581 618748502 854398718 320445392 782820564 929302442 69820037 195506944 581328642 851141146 368909204 126631001 426261374 86229875 681108185 845113916 630116280 386001996 533996702 323765030 647847567 544720521 452739950 8385852 593845514 838327393 268753039 968719816 323848705 952657035 840465495 986604770 831472854 689261307 342277426 187786252 968739201 209540396 324168564 422677853 21613162 338320348 206407939 518882307 262678538 15894251 851349145 804706336 41202608 584869148 216709711 966445416 495811185 526158976 268265303 158881436 873803133 934298148 122742483 471865208 730243986 344317841 276239162 403868050 488565154 551358620 411810997 427126928 850408824 864488133 533401469 871813831 130510410 751003975 17818496 868975263 261894396 397834682 589072712 340214789 341272104 849009364 897825669 290886164 476566196 134089024 143985757 57816289 206951604 259969479 264661929 773995907 965996164 783763771 296355719 212846605 380211456 420539887 567826475 652349344 822043235 37198068 998182115 662571667 282101390 331172527 642686161 478594282 526617959 409989836 248746017 806716079 44571014 761168223 258730013 503843569 81786428 671668533 671009824 87059661 530287614 306269601 544566563 285211391 748843730 447466957 299288203 982465020 390364366 919083656 25042402 238221861 566003505 628980801 817551031 449466250 514621666 617090779 427636495 839202603 807722335 531022157 759839136 196157107 776173219 139481579 792149190 676294052 118167576 608162053 721232594 950807778 260540472 697956977 60259508 956971369 764098834 774802040 453536678 399664159 918555935 250021631 20501596 955545345 170088823 292021802 664559491 242440708 996629970 634038183 106561985 176891655 155847918 330997692 864004827 859326120 967551451 789384691 414894876 613752889 318841337 513981473 564196256 323789077 739487473 291161904 392804084 721759435 20435059 792648294 572257777 470306727 328421953 31800715 20538921 648478407 860164795 760213929 549940616 450708542 951223627 377622994 168837614 907633769 718281474 304685967 743954410 941105934 932037954 613422526 509548130 822229355 311923713 196655505 13622179 568325163 786053466 217271875 420113939 585605406 339716017 587156563 177187412 356497460 714577185 469119565 138000022 158309983 870930251 64611925 955322804 417832898 220841661 426257670 173493921 647895231 212164621 585995273 39699090 791416199 947388546 789748543 692028711 371541088 437412962 836919171 648555549 99401404 173379226 807149044 215505616 481432998 869588373 98837088 540885225 442000847 23346987 564194245 981871798 338390802 428671599 338287060 492581518 643461779 412409614 515595089 899954259 263479854 833186012 122722338 990368745 992737631 544737827 237755966 89760547 401547335 722921382 610966533 519170567 673168306 666480414 418706018 77011825 312356318 33375762 536022077 593850996 105916943 514900760 376249928 739520270 777437837 352768406 532768345 627606102 951002006 516675071 608134602 401527528 835749350 923179038 330898755 98982069 943250073 473527370 25792519 968647675 12537204 686275154 863960107 411387573 425510204 539508672 123292394 68287033 315051078 197650997 725789552 174163203 668312356 453982230 307268632 120145074 644652387 376915062 465656573 427795576 500671272 747421926 711259420 436533820 90307535 85082680 835622387 79422358 113515300 558584505 540543054 965088779 152497056 133710365 719912163 157433685 801162319 382754709 530080719 352861512 544742311 677844451 476884480 554435125 152892921 903269545 245834236 439832795 561019889 317634599 982874055 854593136 792300360 748479030 176430932 55711338 238241618 227955643 211242085 861377576 988631029 721258097 78190641 35790026 380179283 70091381 501764806 517027584 292670968 424789562 863744704 199706710 280112250 56179084 790039602 707602272 398215041 767923139 320356347 821668181 694067361 978199577 996532058 661022241 852424116 954111493 606751821 147841859 759727966 673656760 602813437 524695337 944102393 195955323 437338448 315263241 762123634 324252381 712265016 389174317 721376005 245007878 702782792 24178107 359959840 305289091 519168058 956100680 938329491 590946341 595238129 291578098 617386831 231399117 220001851 381162819 734302409 508590989 100604160 940784551 602406618 664920294 233436243 32616135 828933535 526318485 322847847 486586409 917306663 749306335 946248998 835283070 476184632 324763668 470771496 156741582 619137945 864762643 498465040 358907930 558987714 414338537 10415789 210555769 214447346 888159198 182076503 827984575 609315979 789891898 948817508 836455663 748356053 610275085 255697236 234174707 931752431 732980162 893123363 661365910 428787764 803712959 747575407 472383767 704322181 31114406 179004129 729224544 80109780 811256204 575926149 183278549 423756720 892128688 435947873 303412577 233970715 835004593 53606532 56733459 951768840 269685901 884386246 32292961 433713537 841896048 574518551 234506510 689667709 662739238 585231867 58620579 319436662 947162794 700573563 906757661 517766935 133826531 969726684 133442204 320015162 893019500 824941450 823012689 168302796 948492559 211363674 737828549 725537400 600298364 822069530 614292824 669465925 279169615 422189883 275758821 881240915 733562625 578378781 563428361 191467562 997353568 35824190 514430212 670079853 738951878 650229827 442460826 747052042 816813150 687252723 945780544 609919815 832004001 838624884 820827633 83909614 632169886 54064078 678014120 129391602 225410540 689246631 37371733 596746442 79942705 139762256 144292322 325478978 342034804 221609741 341076590 814383381 728614886 703295116 933342763 692569464 850694347 780389192 345656496 356844362 734159797 167188291 32699537 771638876 828089412 689331461 469701406 930764315 114520928 840767175 764240670 383042791 230242863 575048759 892697432 390536825 651660941 388846835 880233183 618967383 291242231 965416482 61872136 339632986 347416740 522494567 121411531 301689445 157866508 195350306 804433067 596558096 954241154 444750815 983444740 596349296 985740688 366973039 498411469 783902732 116635715 920917725 938440786 333125182 511520010 832715409 858714362 656511789 816672677 528309733 121462442 122529258 976238346 33610066 880831066 778882913 219162408 905991310 36413906 101592861 764895561 532581500 972032947 484477265 60625801 168263900 836032524 399226803 392061056 344408724 112872367 684789 912151265 501341948 939667632 298223948 45476994 576686979 338338108 885297875 867832318 668660160 425811447 434224821 319037123 975933770 921516359 576915133 118448423 306584072 287942757 930800798 308555650 123955331 791257770 886352620 837545430 630216437 534956050 636793203 498744607 378035140 796953252 720190346 60271229 438774966 372947462 499182473 291980301 66482204 250823175 719657490 373161407 162721585 64098418 660976302 937892935 993829763 711248302 593038364 405135470 443788148 526610428 147605292 490346640 451378510 628402008 116961742 589252818 414038481 787031714 352786270 466590289 27278732 62268460 312155373 699937607 835808972 205825106 749228974 853644109 498353888 834600691 94322806 917367630 215443359 224839757 328639947 12747856 481447667 977680924 191208094 674756933 35085991 481736981 42234374 697842452 447114812 322053445 513354985 746519387 779674090 927052262 545281225 595439423 893992154 420287954 135541761 92678175 969867837 884964099 498614015 530412795 377044481 510533392 99463014 28506355 196441647 895839575 491728382 437626581 436364723 603423119 36957646 493601683 508885472 921906543 535386993 415671531 471743461 301383305 224165979 983988509 772399332 539157840 989232538 141286245 691613527 271486344 931299253 783167370 833923801 56698792 873897259 78177272 421733324 744273166 358800856 30243594 554309173 963642739 882804695 581496915 473348805 884469654 3553753 96098366 452238176 935478578 35858477 71468766 886245217 605594570 680330187 16588923 973669365 564947589 190470789 808148426 838388887 274463382 46523930 895583659 989377680 991415432 5183956 327463159 659518699 47674498 539250368 392389056 529693739 164781823 329379895 362421930 194740249 10281283 904693074 848553949 283458853 776335525 902315958 542934823 580706449 356014154 328283978 715125672 246908579 470809693 194770955 482553733 123474549 379469426 551608840 623655039 379632768 521854791 663848052 965422368 36349008 902766135 566945468 848883763 997204997 313024407 700640835 40390036 315264070 974267499 193278969 781622671 637999653 215265975 451049714 288631895 997349077 202854774 366267995 980399543 251258457 239092460 138424683 105825939 710008986 866815846 209808186 749189156 192506183 386204709 423590831 359270608 500680535 658653627 30541500 868813201 98226764 884859053 876860201 981573135 262169317 562356642 756918127 234533625 166380917 832446394 891030069 681513424 272828613 906861520 100038453 119789642 432173980 149909283 292059157 84598945 194413091 936906261 128303281 579176815 615185505 955976796 287817012 247889558 875964005 10227409 150382124 997809447 820639368 385053415 970961211 845834799 350841040 30537710 846539701 794546171 25330365 104629700 525617173 95652798 427291575 809555684 728518000 835749860 58444002 594316903 478078869 216590348 303989158 609765671 652696595 808228502 177372700 692256966 90785527 331547240 183476353 641632431 248378523 919680586 850980805 767583152 142418748 173962585 142803230 495531744 819102318 346391872 734398838 72624367 371635891 487003891 27917067 652279525 90708882 202914900 492199528 459408962 763280413 156162001 816980741 87443095 51203813 358176464 260014721 187873745 208249043 39414273 770190004 305715725 585796359 410610241 879918302 4483906 396450973 107633271 42082979 523541038 500329264 289100650 229387928 632104075 234606108 817631926 999130506 623395168 398679183 724845259 38709902 314584937 574820801 554482057 543738307 561562971 243308747 903405486 585998401 133441984 112265487 173050759 269853654 353398589 992375030 396245592 709873396 591935279 371664390 519049553 336831796 947953733 429414417 94796076 976319943 6667745 47442969 20258642 197829101 575840235 793594163 646299350 44874038 27632008 125336426 767346198 780593417 503147591 566968957 353835201 505201251 897746848 155001727 445386817 7546121 446486625 321309392 879042326 68162198 90524889 696361851 859688633 611902181 147217772 156493034 210914756 289359011 84749046 148916796 829235469 271314709 945245299 702754717 253891437 375804099 169991637 652145378 220480920 177637451 531360708 942191420 328107083 440833675 191550103 105837587 838556332 659155715 688868795 460936761 532477705 837353309 507225835 213224721 332129736 68765412 598299066 34872958 985766574 284500291 894144047 949895181 647097633 283185266 554026577 985349845 794549009 593301264 736884501 147989324 927128174 551286265 14256034 370513953 86406945 613191298 888216271 99118778 715075207 539725830 999106055 80591944 18136464 749118460 443763723 520488895 346924516 25930453 32543567 978132522 673319753 912995090 795700303 719199438 990521015 541950089 105080657 497540478 677827513 170770870 691143770 394159287 497093218 177835388 382258393 232354563 954252826 277428191 671635987 319847214 928478864 221313589 996103422 892802767 505251802 218966935 254863160 147595447 133816373 729412690 96007807 136437944 337950780 318692982 370789117 357337813 675606615 138561453 100765817 504394824 930663270 246386898 64835802 50490089 185510446 895676699 9120347 830561925 335812090 884501569 773144451 976824274 39560489 34733717 779295977 640595202 856633354 503072321 131467530 590587391 407612910 566441656 391144318 359235000 973920897 535582585 22985643 129884237 176821870 104274604 609194697 281306420 442770751 251330882 927952335 616528989 47966450 931861850 592479487 52278478 678640231 316508305 654876237 500780736 497558987 887364714 254743990 95616926 245233694 367563528 608254798 922895426 968999184 929892423 769373643 566052523 385010255 979681326 684807156 360597348 369481057 105841185 345307838 689630967 881558958 892695580 903893437 361963291 632227297 829991339 329402763 926727802 715013172 259121134 906643446 541223422 804622763 547347286 613211694 347831969 866171163 22552805 690297275 935348086 999167656 426319658 539502181 440517608 218865484 535878154 410935266 221857911 411606678 168206710 628515445 45276680 623369044 847418933 817853089 915358257 321290394 785683397 186862512 980196389 417822830 233842230 969290855 798921461 168235839 121384530 249965292 522415480 594293049 909938813 684923112 969684539 753263015 874169676 700418549 980923576 121619864 448562008 820370297 901828749 12470181 936119623 377509405 641147950 325148281 125702490 901991833 433807786 826483075 136572272 308636022 496760530 639455248 155482559 711933563 196221107 659448870 800484441 801854919 846060396 182588968 584010914 809506254 494806218 188798462 370092785 699233615 283791133 34371768 22169242 728088134 323541747 148356666 953836112 133521467 764693922 806218860 388400696 396562067 391806719 861267751 234630818 452509671 921004287 546055241 918532359 570381506 17815938 899731153 717641775 417773754 757328987 378294981 206152052 609266570 299375830 804596498 600112743 335694438 120842582 417184635 96194428 838503627 310838807 716755985 860159996 554541525 887715566 506830064 686041307 837663304 34713665 769458298 672510365 732842090 439458133 992012762 24424534 453153549 70852804 743731950 750522816 282969845 492501396 546217072 573906085 663060983 856337870 928093792 543170921 396698897 736999900 53898874 714931974 468047807 521817002 79296979 959579165 636055581 119635243 648415758 935847711 705900152 458064525 573452498 454821990 115507476 726799355 179803304 778507833 804819382 637512106 492950091 453138412 763031166 249519140 899629754 367802438 838959218 485230741 406567555 476214948 324921172 360436549 8844505 503953877 590788747 677532778 622619309 152372282 521738967 752545452 218540981 470077864 841694517 692583752 457214733 129560626 315562282 760573946 437804882 522922275 422688248 668861473 121712719 342728871 113475766 562734648 966066621 818806814 840309714 557028442 183744451 777221488 975108661 659580767 913274592 802265986 58138487 789662240 710201797 993175028 926230951 355289852 619917220 592888870 178747919 937133763 137271768 968519401 359093602 752407382 315641609 552339342 561771123 796375226 135582171 352036782 223871236 488894899 614406980 479242277 565673439 37747162 666607541 987241587 166447393 759145688 59457683 913599184 837965473 875712236 255992956 77047679 310087910 438368293 927035715 377924357 59385222 320550806 923404902 689929922 983813567 923006221 735247962 52490840 899704752 536197444 437048975 439397533 483427593 354281201 141168418 730637492 918597087 513231217 783621510 423714838 501360234 651196721 607623603 813020433 11114236 377393897 907150655 201934043 395248360 93371201 254993950 383944677 789528749 622086961 290747422 150241790 870264460 377406636 160457008 678432765 119749720 426599091 583987556 22169985 881996539 29093548 318172005 93017355 161010132 248485558 622911144 795364995 388201491 448972568 200109025 858317048 225108967 390870011 885573643 673316915 333466293 215221423 875584159 862170424 927020704 761922730 856900518 376595695 237888693 307621704 278877440 875192126 886369341 436039567 632786546 170024049 206434264 539813740 418983117 264311960 172421648 312959733 107550843 800867919 914652012 780204737 624440844 42507867 414720622 184058461 213751755 754503470 361729935 44355467 851993640 880461627 733460613 611921641 631387109 613942124 232233641 688996439 146000401 196051354 176687914 850459776 412889742 435465682 24682224 225257969 875399608 123436959 975012938 189302197 256142499 272213535 820742084 15025266 43845343 316724245 925396826 141062564 984407665 723405468 431823325 924882938 71644666 68010684 458490987 58068401 569216841 780127038 973347362 870153809 426692643 468594461 856716719 920470740 677970244 206498394 432103798 329974681 974984507 206005155 75824227 795205709 450470971 358205618 54664281 356852138 640866261 599435971 596047944 614704050 396616880 887343115 726573587 488141009 641111417 220661317 984885845 100970303 900369717 904050597 300300843 679893346 865828709 770353169 556075759 612744675 889482259 36271037 180893827 435846806 399738025 763966946 695473557 600493003 482965489 146926601 548127262 19304350 836953328 82311205 618980978 562304538 798111766 250926839 91548616 244514149 169961027 390352112 766703468 127619680 85667001 859454261 59958285 536073125 544836715 112909964 155787789 261260881 861124780 459852851 935814430 21919608 466177685 4275758 636494866 52358247 861749271 884170621 309961327 786409411 299763331 31444544 154048386 13672964 829205904 783785358 40076852 836521330 409379361 32785243 609176232 510905031 392728472 126956611 481176816 214519161 652397055 699016396 252289146 934901112 401966312 91577414 373019845 218862607 953552370 111658580 639664589 974479552 307324563 792950493 857901220 94362276 247577049 484528383 485880170 646016920 207981962 751396313 947228652 628971253 974186857 965204630 540570859 43092347 161212697 505215137 396625846 447591546 818384387 415461235 131244035 726273051 811236785 690952662 668161107 56177324 4084106 489592173 925543113 954512581 24628788 227696593 482658320 747418265 771190436 853162153 259956507 274666641 762133525 957819053 158477815 839799641 200894374 481953893 146057633 626153248 479316969 788170740 701359268 498169552 45475599 69248780 503571567 564948567 720235667 120476305 707281427 379988991 239130225 520015080 746028817 784270769 321313812 390949160 485813597 861167849 970066276 506512000 661779982 898940397 340916149 180431168 768059766 413522379 833763756 282197727 770905871 332085980 747876302 743901720 42386472 695215629 686481667 6063175 780842629 827654858 175127777 966460314 616051398 12507597 398877512 382462444 67377658 721830163 260884809 240548608 100707037 820221199 408211483 833334405 937284251 292026495 690082653 231117071 180986682 849834349 2438918 944726453 706642906 891363342 475969392 139367752 364478682 54976377 542527678 485850103 305888194 46245305 712202089 139251580 249795717 172500398 945442933 586815995 634818225 717619965 213807123 687116169 216478109 325054811 42248311 267158340 498240357 615098819 383377586 925445040 757614231 862816691 557879103 797177815 817872080 338506917 907601536 616530089 735402041 684661181 979933360 739541695 917382592 554987304 980422020 40852737 727685559 981456621 923601430 527035666 170665213 240400862 853497261 679551365 208034691 669202244 12590815 897606693 553952314 280218088 819983763 84873261 237906868 81130473 150816144 984809067 361862065 688746162 475908275 15158342 197612484 424562033 552063947 876895190 825391192 14434793 526241154 157505601 852840857 835999081 614433559 930773487 183687004 48506753 492660174 62195758 417161913 679930201 862267510 966823788 741922801 541987670 860726194 495551963 8389073 66489043 39335340 880334645 271774223 536521188 123778133 884441719 20196927 98515679 579699987 216737226 327895195 756771535 69556204 83710848 192987821 468881468 93511308 332602402 602827318 278811473 788448557 164995299 839653094 461031636 951570386 750831928 473344488 205865914 383448328 180816282 745760293 370218852 124688296 495757655 859482224 205528559 3548357 390692618 132760806 305958166 682222815 455722354 383212907 251650838 705375572 589134207 899824186 393763055 430929557 677158459 838988227 816289607 6194014 103323439 621352747 503067945 873226468 408504940 114312605 701474709 192985225 512729457 16611811 110654876 221168146 518926444 397459641 103525910 366969580 643078459 762328165 687860610 442719172 357082112 377067005 439765375 689311462 139405300 471115909 18353181 293023997 473506151 520707218 395741902 870229936 29794267 54559335 159137422 717916946 760522014 559532245 673323447 602774146 617633913 780054395 922437258 989789547 20918995 912960180 733097447 470108677 634250223 549677325 702288402 610041626 857476946 7967711 546874346 334763140 248503456 146984419 419985605 368758352 813774054 900473608 979577621 306483302 60732004 194792193 766446084 770863580 112488059 259565833 698109634 46563681 564624985 996067616 577834155 125415166 27912442 781793558 493474590 772885678 317243992 864053368 824122726 813095156 807561474 111544182 317432979 849286641 838705677 94288519 762106182 649178196 776717467 321140055 802497399 552202182 363579100 83215183 271445416 414433182 781980284 632718136 363579753 383015255 710088382 82931186 858408426 629797023 873539726 968150969 234154164 857265803 992971831 706959972 888065525 426377497 29129841 810425172 138273892 226938705 259205090 601772137 236733764 618155742 764915 763936178 893920347 966446365 949598411 426951891 871405801 163308665 213762373 263520694 373793379 441345214 495675517 699620873 769832316 515873956 879861335 534168719 231829975 817416048 81899160 709217590 373768642 298493793 839825073 350530165 774800577 597269854 689081769 690506632 471408776 697122325 909357104 831324838 167030470 716364585 2278454 387271619 336933821 202502869 933537299 573016992 68247211 574597410 816068878 267127857 565516739 477159963 973593311 760361520 280942739 879499272 529564207 661133742 730470619 483572087 852362867 893842142 834862586 833263685 764061708 11627489 415592707 798618501 332790086 395246841 968018921 122854823 649843914 69608709 616063969 267622742 906686727 668163633 800841138 771178027 302522668 93693341 495701828 915767748 506257983 127061382 625775467 199590049 543161350 418546686 855921981 758833376 126334973 823621450 702256017 841296531 136794893 541122359 517210562 308128032 623515391 92791053 501272352 402923574 790064294 321325639 791724043 541822295 75522106 549509426 856545416 481770139 349926117 581434883 812262598 609990879 787605047 936914847 668500881 710519110 27622344 611159103 17518552 938765417 315213906 914869518 159369562 736714915 897725568 416330643 332715665 484345351 982629261 872110927 47732361 714696054 698893521 963915756 850035398 693798549 155453722 116162667 753999083 682880494 746765222 537717738 681025767 657415387 96551121 123293265 821362601 987043678 761164993 519663755 900510308 925556904 585150167 182771854 90837823 54403 702357771 545521518 392388146 556023768 505111360 607883860 935830798 686143613 439658577 9109109 211284907 838167539 847248432 356913380 874031211 873658333 428712133 949330313 690262550 499859782 231417445 865221564 13028137 311937704 144843180 125930674 110454827 756202524 959544232 812846761 633859344 367070913 432108332 292324380 939747230 141980415 991320622 730625968 253620814 960898064 10384506 604543862 510139984 210602857 307424301 763920899 998283379 406877940 720157780 560941824 845320032 884946941 890871232 738509568 318918843 300516862 703751173 72840706 797501362 547582483 131999627 533198196 490371926 865095550 578331101 764875999 854900133 704276190 410869536 246839408 86103815 833848498 680281040 882585855 476047236 197052013 382017440 982461761 631422438 578240423 114353402 502852758 127602676 366472581 766174348 297063147 317295645 76131863 929196230 557799326 113107669 619882396 883564343 273847346 396064526 842479836 388400906 661006844 556105628 891937332 422535202 91756658 197450168 773562517 437913367 668929943 894259080 374059036 727846098 401818948 292222621 21815967 284026855 896951667 64737240 279448866 733014689 489880459 593527601 158423370 893443374 97237095 63843207 779488430 840992733 464013319 379321884 88138804 600312333 340864151 369889119 943209670 347145957 174432011 330823918 798334558 280818576 957951344 579681064 763418232 432054694 989925219 516569156 141049334 143797138 420181903 566437221 710237563 2793812 903220105 890812801 77468166 440702064 952523371 82760718 982019781 472645324 572465882 585556974 122793287 694773385 813926272 641148772 522537119 168828256 774587959 657294791 220493628 629915582 605006082 293373182 939475065 75198853 625593018 209626032 999858536 706171459 368994597 660407271 436459419 316811115 291282896 466108224 991011275 577653702 909302846 231659694 916777681 915079033 126231825 244857510 659508584 505128995 974606823 915689704 550615347 622858804 981382936 496427370 684544023 903678910 51221111 239881541 548529500 62496215 963790700 66952861 198907374 13597278 124709486 985640051 888953557 813481433 16612354 213622789 786366447 657155935 157190359 465303125 571051529 560602700 158666687 854168419 83073387 316469718 18510346 95926737 612942411 873726500 159077678 12033493 186873899 545356467 828341373 794494237 511496854 737695753 251785025 275453195 416926220 60682449 655751265 689228024 57129793 815634348 994331346 303590068 368224536 555822806 831155129 240315984 712132684 557951025 721495331 797921840 344334844 269859361 569338451 29168163 678021012 603255107 349789605 244357492 688119611 568424297 938762854 15720264 139915752 669559170 443042437 915769373 207445024 353469550 285009732 491690758 66022034 702571338 975446752 188918076 732912441 745088175 643733142 970199488 626178686 820081510 146302092 442095458 421110255 354034042 505019780 474279544 487598489 549955443 584359389 336362458 251623841 128030824 638367748 69101129 233319624 167216332 389640949 812733484 946462103 499319658 162625087 441627010 808039640 401801587 911725499 296686726 462536422 136423848 505302797 746092729 323777537 906988726 197253350 138225949 443201595 811171948 823868424 278560213 44294839 467106435 433224785 513245676 180545235 457470579 126050949 921979916 923881486 191276955 930770363 521871692 761371711 303775851 979186129 239344313 307309529 907336306 593517596 610856792 382274989 472390911 229485989 477988161 196258697 469581979 614834466 526657246 745722643 705794069 387577907 126513574 410566990 409767670 637904854 581342577 43889749 450722753 713970783 705661422 881758409 966173371 630094701 860192024 239686446 837609756 361550068 237912344 22614582 945901735 605367119 398428191 626359016 569570266 355302593 480127979 950253535 338937408 507858357 615172057 682324153 564807769 237309550 884568712 633274767 37757325 971119266 709248181 852549418 986119835 504382586 84225498 600500836 224425178 946795976 260313715 920389471 886131693 810600855 502537135 265541754 308893897 788638394 703083972 129264117 501530801 528047666 897281288 385228176 314182587 909968052 487840456 180003476 923422474 854911389 371328081 550759735 254327791 617258609 690810998 277131788 213795918 963256583 159862286 245808592 959541795 680514785 560170576 784273611 204168316 774790343 231756282 507572091 676893719 455958727 232343281 550330087 161387631 521834593 611117570 585183123 95179357 292868812 920431447 54278608 615850142 294843468 448070296 449609295 565974072 78451229 564426719 345680160 135091730 759811238 880333909 317044657 911265553 330948311 952245037 715583767 518228043 659937816 310002652 870597528 797469285 716805999 970621285 159739752 496513323 858549252 737095074 245713983 533766771 768944182 721478493 705759720 60060106 597542662 776640810 498387669 189131106 925253140 566748527 33955865 594725404 129659439 475171734 578603572 534421198 467285662 667210564 339090967 831836711 731860247 640974422 328503457 115948227 380617952 557664468 147525195 331763904 474742805 166926489 671086523 739298993 901833804 782038664 718805321 133572013 137691892 208070455 408827520 335649889 765773251 741048711 356630034 357638762 714839798 24361403 31282712 316725466 863062295 918395539 83378417 757208386 613077329 109168353 414039033 851466883 255611842 288882570 877478618 817901032 524966863 487974020 8991479 619101883 533180508 931203903 488726226 928682742 748161446 698565522 225077452 758537487 57464508 806555129 294074594 118134084 288325109 201540232 557405682 689901941 316384215 903110131 205677379 520085510 202549647 533304850 966833533 391959902 333126156 136920583 605307067 666311975 588215358 142123948 542449885 173011186 231268575 356906632 283416380 866638218 739472405 615691446 215111386 106386562 483489089 923541781 722903781 758935120 294148899 305648498 541973440 40773267 888559966 662832018 383045739 85419273 896154602 603424995 664837185 789781164 819255443 137854461 365823391 654393930 494582162 814156963 71582235 822707408 214460810 923773743 832664743 233842153 117564057 791741687 511265752 953314219 922685486 46898689 777831496 704652814 330027758 494974338 784118988 402240983 250891536 955814745 74339226 267982152 908349168 118350082 109469233 620432250 933213091 660808614 312284160 262981816 359824245 507130209 618142896 53415959 861556887 341871451 376097151 151084730 564848187 356506116 434926427 178342488 769900286 438075476 795388916 937152861 666322216 369984103 473608790 326187680 407553488 476265766 858739827 792454560 636319708 270978820 799350947 665250442 990199607 93854619 101744596 811996384 802953756 600425592 656447538 889670355 561270690 45964415 367256557 366854891 121429767 970724304 79004585 27101876 909577959 371191266 438383806 36371490 952443292 434716955 666077183 17893457 23179286 286496516 192478607 656797973 905881892 948910994 80049064 98415083 864481292 446921491 231710693 427100963 767809338 955010023 411206985 426990253 130526741 924062439 133426055 973400080 401172596 867921595 825492372 895584323 977238642 534898264 150570366 354618132 921460449 105842859 155013833 352320756 819584289 119389868 30831265 771363224 895136362 954765969 901952941 905678705 927687769 415982925 250735508 519433187 280440789 841981589 394485920 993112002 468701989 331961911 275726198 42433805 92299802 235298316 975894446 980087140 355162144 242026589 796130377 843466226 199386419 198127223 574110131 888605075 412958734 78460948 157771972 622134178 508183410 515237754 177568380 382653079 276722282 820932590 647193243 596872142 928477254 200594507 11706339 141142552 746256372 227391392 831139812 956040058 936551202 978318428 362201832 759971791 121788320 124009933 809784166 243586384 56780636 775648035 459680328 901662951 712915372 383475780 317495734 905915599 117919356 898219237 879160203 960222056 542002674 702864529 841080943 156560580 271526465 952071573 697689682 10584743 804655488 292342459 646539297 159074232 249456783 158890685 173862645 466935452 93594939 693322428 295954431 834637539 92129347 176919473 316744832 68316957 69283158 482488296 862381698 239032080 900151980 511788907 613499139 970379028 425488466 749518105 685736464 595288948 838995514 742804399 411958410 458828551 563132793 50817067 415125806 308583594 963766480 67977903 591240986 483447977 948479973 419683825 383885150 376782326 922586815 932832336 627279802 955960705 635486097 430806467 174966699 116156477 742015701 90943536 595022600 471469336 355093057 4308234 541794607 400303509 280436006 991824928 553506296 275227225 880957624 70055045 521947214 659103678 694964338 190666047 274207713 213988643 906638586 425152226 784790144 693394398 39808689 67924662 235067783 255806376 889560311 769491317 528361623 267402726 264209712 343837672 304637201 841395682 832586519 286569188 669376923 420588440 774787354 625045658 709918852 702267704 596395244 101130423 791092595 106277989 407155314 68199139 185756361 107630945 509879841 153571454 471875372 38864673 912248242 924039314 717299149 648748423 41779748 481698102 584641723 458331068 485243215 811413920 104201146 760320148 786149566 688289433 287443550 975523070 627658348 390329308 601942352 147705023 378700054 421251617 568093263 917098409 286755514 672380724 943296473 345045260 63701573 700916153 458531163 410957665 3896285 265271073 997801139 236289626 762142502 420042803 787486228 491331281 260098822 157639745 386277511 391319568 14799114 779297673 557729228 754393309 931899741 881541978 812582002 78009459 814850929 562546880 434834878 176304517 152076205 39509887 959960213 53635743 245128348 728693069 356959117 937300852 195741321 432690219 645706581 799536248 71801601 822189837 24219037 405722964 825425719 564762618 912694605 820389879 381275156 634392024 192888403 376851235 83742148 401541092 121151369 184714753 901307038 690688986 103057886 21894763 873456488 895985942 395648237 119012193 163824494 224566917 382711213 989091978 963726094 719130369 38900118 989835094 841087399 266602597 174321915 226007219 673539253 251448138 590969987 437618571 284299845 525715702 781861804 694023019 329130842 220776212 517242241 820887597 707663218 232001737 368126518 174854181 171312529 655099687 61751816 813879630 62969510 329302311 429001555 395021590 434636240 954767077 136158934 123899113 698415672 385936460 689639646 690090050 184176695 508032675 329436723 29906664 207178472 632649757 33632951 249462705 190036514 274234434 748545408 23581625 150840584 152000347 61358867 960640238 94066984 139994360 54651303 856706905 974117408 617645349 901411880 750413285 523904476 573757507 388063177 260691740 792758700 818805470 927924523 439003264 710293252 55820975 77697780 828703659 291474213 412451166 707078433 828679899 98089344 431500234 583001352 349010792 529617533 836236974 822893955 961139605 653931107 979984600 461243620 735922521 524307697 475307904 989097766 650196707 120286987 391705436 171525311 24556824 22351316 929978002 746585895 275141552 765255263 619161491 999870722 909097917 500007733 969159501 637567091 931323682 959271910 250291776 905318797 787662253 874705449 526791548 45865368 871604720 442606401 241919009 603574690 244906121 362288586 55312202 301953652 156465244 164812555 298793740 554990764 870238994 735510431 338329843 615728247 473696338 253112623 215530263 736800301 99017259 823193658 94249437 344308641 480547712 682028361 610318291 784974546 571478592 173761248 449219981 118496500 740608229 179756514 184671123 379827407 248927949 439688494 854033897 50884622 976910631 140993187 593821435 64076805 218060868 142326295 550482736 765073462 926809859 594309791 540777134 407477365 867409609 811128986 443646996 490381525 132448007 34511116 556127490 711548184 117211737 141577034 227326257 497406200 290490590 502371990 115148535 811248730 34877688 558471048 276993509 396163516 883478394 572004163 829962990 427953557 544402584 694056787 903406099 234356076 783432860 659205663 402156534 784694553 872330728 917281034 123177534 704054342 180633466 694801332 165618331 897473653 400716555 597177869 787980947 426948159 331467615 884907894 901140697 385527923 546233405 630359814 879412474 394622328 22690554 588818551 788196262 183748688 742549854 896622042 491259937 872599199 583662045 65773863 800949285 111223895 982794457 281938277 246430794 67360088 279799837 168335228 578603110 450242019 481877688 194679590 876866656 506468062 547295820 19868830 851657325 975852187 755625379 230223324 800787905 985629272 386801712 953901730 233166656 617302044 533282908 887558434 234481543 978007100 187356013 358387988 932447040 672880377 688335460 423030293 412813699 398609886 285610244 455402003 738147006 677476072 592416114 818774212 556140854 423217662 938066536 583856402 473526418 54756571 955027729 864175289 410982715 163251538 450875616 441100719 857122361 124801211 618378157 663088952 660982440 79093149 576555505 656555484 419238010 118757267 107581928 28215644 561165593 60350918 523978556 699766760 849837304 946723094 614622967 243550746 374209170 305580647 196157692 147909739 119624683 370662606 99598032 419635720 282367754 304921473 878823867 75748151 447099379 921554836 963688365 216287613 327811836 116963706 619377713 527199968 48924979 532911930 808237923 962016994 985737394 300286733 724624179 844198606 511988875 545858197 967165078 651519272 181903138 33461385 977978882 849403353 649319587 891006750 321356736 702405221 207828622 902668774 741020827 697133605 117182443 723175743 998688508 855046211 493013385 897962873 860991059 236602636 777893746 900665939 708621254 981625454 270551111 582114433 833603625 85282602 296667716 134362032 396710322 233377966 801604568 890801418 235253932 325929288 418771738 984790030 576281569 720209130 909344426 44235346 500962882 586721645 5752318 966585547 58840599 707981246 504772662 212601020 358285491 551127954 433928682 452811431 543362849 435825347 840552918 470530700 925610366 563279109 343533215 867129554 283637071 300012848 571328901 469536575 327419373 448922049 841923946 104575823 4313716 852664167 683090093 846049013 822507551 488132516 742113675 838953358 488687306 980257342 539570341 948985463 159043967 388940140 761643229 420276092 535494761 831675450 743176440 293672667 788830758 551077920 83783153 269631351 626403485 327450183 44613536 230427172 80839060 993778117 633658293 789057228 791778982 649126938 750590775 860690686 402832806 399921030 580570734 137524969 891688791 78655053 977382529 346192194 464721475 50340581 9635690 190320531 464690207 436707031 751905562 263825869 592911945 818848958 777482196 117626541 138093276 556687170 410535803 700314363 399306124 832649699 901085174 894312587 929224667 479736219 767388092 453707164 585368775 162741332 198440530 611988649 416888963 963841910 52025694 698920216 512470625 497662920 945037571 974157118 672718508 819382441 327366649 547052415 485105288 816528844 621867871 575155823 309120606 1009747 604882294 570802457 211762751 703245007 732816705 426773270 251334354 389421100 817444593 811200096 91124747 171010194 134587296 892537047 402660847 897833876 49058794 421896561 890401558 827069891 844042893 253851135 912851247 896487864 521345889 598563232 556958769 364297550 613598964 992221272 899297679 802320606 591014243 775081024 236011932 194029704 72898860 965213568 204096376 714427206 256693750 178806298 796043006 330802680 369112364 60464192 775312517 581817651 601425919 582095185 516883228 285253827 758138959 643139616 562263338 70974333 328454365 634817331 828261571 723417001 576135677 943142246 658251882 592433233 212771094 296095686 764022934 423624937 384960499 800164978 494781314 619201547 658989689 490754184 279488385 687572854 69248303 840224857 93558008 210339436 650710521 783301151 618781649 750503434 612078673 15608256 158836502 670818216 209565107 858000815 485916002 911814249 686716985 939233848 7154579 380568016 129036204 156136530 643971053 314420092 425513375 698620986 671296242 709006923 987986187 947472160 486221776 436457164 746758811 803309624 979244938 674735123 532973516 602240296 969609704 625509591 204611342 610692264 970205481 842836155 131775192 885626305 350231470 92614976 18437667 586795450 238958588 837130544 543757009 52417509 569641773 554283643 855525339 686379848 73727609 267729806 998266373 519945181 470137445 871817678 357342113 520446374 805093237 890513625 310610334 875559586 6603384 209449338 310503692 198346604 353206622 167672547 156393755 716716392 622830029 819522694 697445206 909672210 855452889 4119748 38318390 498118212 440363458 201776247 876774820 400686317 521303925 26239462 325746079 139642695 476832857 328292097 996650895 781568449 246576143 175197142 34820699 468574674 789519210 98383754 735467250 543143163 540850183 387201007 210792456 125369572 20403852 903891717 59440392 637526955 714197913 386116663 906591060 153055915 613768673 307307703 778427277 783442457 150378999 943029596 432832753 466284098 862594935 819908649 427580769 151815800 88502233 108621494 565073723 980465479 815104574 12068594 743736532 389725250 930167955 763969614 983152843 838966865 824052248 64046845 448612547 330970885 467788987 82838370 210542116 151707337 177138577 246084793 573717839 724039131 217957778 171759894 37906104 728353142 667129521 577513877 100143194 451071674 934086811 659844226 550719251 531263008 170246512 652907826 35709865 140241470 493905990 180651055 264919872 147233551 406388165 265335037 792383414 890627427 300530293 191209724 28196815 302261290 242929060 580624395 343380412 370097027 839874785 448277513 68137761 220623457 844176302 705055991 259455882 830077723 698322498 175369505 347693859 24628097 34291567 953347159 51892110 931232901 539963092 710360374 573606721 327512812 52694601 167587675 891447465 985349198 612031095 706945831 337631720 185065385 333531957 962267979 811653297 646496096 700283464 662854236 202375604 816025092 695523058 562214498 916504234 924501857 681083660 843273655 608734692 633819605 952208670 486632135 374472270 91072661 645764173 878093194 203247294 965866915 341104512 944632497 9721313 343420368 87640686 102407971 230788587 882942105 896692470 357992602 577735414 297955825 197533260 622792905 389735404 30113818 255126493 877446426 559919922 907451974 560364571 542056551 37299054 904963026 938264322 966855862 746032980 879777937 673734076 436289161 870802168 456870726 214036429 736196023 340843227 845371058 61595918 553035426 42201909 644510914 973824056 934435903 570703427 509991753 22161193 426085299 24079719 871442431 529097254 398893885 512250481 845870372 184728018 806892604 101946191 890488583 28538241 326198791 791794145 738948433 514334182 143038187 636322786 577948757 452578347 335149357 539346485 189555365 968783209 978343031 389051980 817581303 38173318 229558439 105784998 358032959 314680214 5118221 450798426 325822427 816832203 511608097 210964165 105684170 440352088 21115265 910609969 378674102 208738311 623160506 645833346 297879274 223144080 701016406 618212591 800417683 934716443 666451562 237747061 865283281 730216101 311293100 546250491 846600897 100737257 195026310 880362443 50589146 721525380 499207909 651800262 586308858 850104072 108173787 620816992 540058475 85739928 627709876 359323559 728484473 594928461 512517081 819987046 905172543 334352145 249554421 548744706 754725105 425825491 644587955 464800118 749512506 640593021 543845739 378005640 216642502 304558414 344822974 32117247 180282262 10355939 397331603 969844001 11711799 903031247 414332066 349274154 21454105 3115973 947711676 196078828 658979174 250521840 925099873 476392751 459049068 682122247 138117402 815305869 789125796 965366202 898679241 791037169 14079213 162319691 310439887 641689039 112429566 610903826 741576396 879431563 617802279 536207399 64984909 363419713 705874081 79478828 327097492 812499877 551952773 907239028 22156520 953037023 287871821 289841537 689326508 745491954 160754109 765773544 792693898 390067589 792781213 350911217 430495083 38157596 915170142 557548153 558544279 851145312 309160189 200706658 603226140 850301497 416502432 189893846 689706725 855761800 556070295 984326620 976646410 2562491 233829189 896423748 608484360 263515781 679197861 75262120 831250976 174090168 309225681 192950606 14428075 391224366 124773522 414291328 252674898 943696091 306559252 576336527 716817629 908447707 857668989 381981148 188179768 348051935 981845305 322623043 982021610 5273818 162280387 790892025 771751759 378005269 256396338 644767320 36562082 160374031 227717416 176003124 848266211 312618658 924961301 711424731 818998854 300613971 778983968 892560689 513143313 677369525 390810574 756674155 476393665 933146250 867651799 854530911 927960029 476485675 519887921 297417721 953304910 965826396 909593706 8321691 985901894 468360805 967194879 502047903 927567506 9500868 90975156 506076411 270286609 953995217 656757247 549405433 837940115 453739551 479024165 343024873 315127226 917130153 650016743 11226478 500425905 80534824 35786833 965111914 238395511 142458085 336795144 522094040 804295864 834523812 151041327 959860714 938489686 23913515 64521555 797663849 843118506 209592390 303179096 691878968 233800826 233713624 457697121 959234112 914850641 339315992 716096168 390706508 385769196 204836701 968058359 671920568 608926468 877800871 946086864 151897411 611187706 370326486 757192733 972722295 127832268 545287753 859655072 976107411 813160149 191420218 66460116 86477129 467611938 804799518 952490380 659568674 98351043 687387562 209466877 306169543 762712520 475272600 777448387 907213527 781544001 205028058 33503717 383317349 266225070 213936434 41980204 393216620 119094815 178104106 389455487 647776498 974475623 669052112 782655405 277804686 177863882 139645995 560850860 676939956 26498307 398572649 34300284 844975414 915879317 858667415 793986586 498459422 910156851 778877683 177920549 431579551 55074104 444874094 320524636 164062789 882529757 855231402 495238240 18696889 197749003 325939331 5064717 193458932 688360316 601567793 89743193 426830248 510655584 266302310 916863621 640050551 400501578 271240294 722233107 681049775 429531205 812685003 371948954 376488725 281049611 577795225 807950152 53547491 952051454 354655750 667728408 564621819 195077949 931917451 488815120 765653845 255838650 923987054 408063056 419609746 397638957 602637861 867174025 930013709 243948178 192350324 826221083 442012620 492231464 539146316 857868664 384034150 136636784 92574918 942038186 656717220 670293804 57851514 332639253 66861173 324046570 727602321 933798808 562827614 191502357 942396114 774089726 486113151 402074359 826232363 473053108 292757287 915712567 522837543 666478896 424937512 57408601 560235152 692048634 318660865 704161477 185711572 700444174 257329816 490426339 99554 730774480 240233029 487789813 684482446 422385694 665475720 931401874 335479064 649248026 390697545 554914440 628189736 912867657 879204036 678722877 571058384 827440250 597184963 816003333 324499802 838882696 417527735 377920672 389723900 681515758 356267310 898248609 565491171 993456008 530362919 71614024 879827484 642224510 574581381 726017072 498898919 912009758 875288751 777588393 373988958 787603013 653482758 861422649 868637509 471195293 585281809 437018917 601825671 439550011 77210360 608618294 369571077 809672271 972330191 806949235 435054131 247552200 437127529 799997640 664582179 744637294 258318630 264232507 172737260 676717090 392402563 146114103 452630383 683041762 904598703 701222134 15177512 191254510 558674141 328388198 90624914 744727737 63841010 478190932 86144027 76229752 550696277 105866405 150455172 35291795 466273299 637827493 344592945 594177228 246768791 336326090 216526342 678663118 140274913 562293201 898284712 114452453 863715120 860218909 741614409 782640404 952805600 993407640 677782965 763241543 915626915 666127633 454617639 231570273 452347406 746441844 56113799 817691708 82105220 690879085 15918277 575369443 250128286 279551962 10598083 400082490 543138761 346220398 79010009 877963219 180298947 532687670 521655500 799037140 263221953 289586513 112815491 21211050 399630872 724670857 841983736 986608339 157066674 573946896 760922106 622433823 84321790 475208672 914254452 63538787 33482804 630922431 624839855 238261131 681040699 790981373 732563905 834351860 328673957 150534342 423042060 841531911 668603555 407276804 595322110 383189574 453024473 243871331 656136046 297629012 429409463 484691631 282926154 482967335 296065870 737311082 394234961 725823179 875099275 839102681 195903497 230581444 437390574 48685286 395097472 483033557 107573549 88683959 256452282 664865115 797500314 908023575 76824486 687913306 327300532 802530005 588569682 736345779 2064222 699822893 766620254 210424767 564041628 168929517 323057731 508344389 762118767 754546863 561728160 81295996 386641451 906006852 347936592 513613088 535554735 932238007 784262699 623150409 211346789 587139665 929345982 187513548 253980919 354423757 466102069 19374788 944098101 448060491 701074593 701915671 165032145 108851279 732587330 748534388 533278734 358157744 771905129 42797287 907130986 156344500 457704775 895434389 617107636 887766907 297163980 153034663 916406747 13564624 939128227 514223486 844212229 156109277 985094201 806316548 813875421 658668138 861689610 267756811 515500462 555870021 806570208 182456127 597612938 760797170 286384920 85536761 398694203 435310748 270943486 746771945 905977985 331988341 85970379 682335391 116371961 71002400 702514810 313526232 276816831 409272121 151065920 660718392 804467578 959618667 934714466 646498043 588457067 368560115 573030347 248947350 177920291 508471637 459479318 634830007 123185733 792913931 271575855 332097881 885950220 498412369 157218569 165578981 697900554 147222420 270297940 735655570 493942607 683402570 32856626 444372145 471099165 27474591 853525875 97850716 702087343 590335842 137358937 682775558 415726541 47084930 705857999 430833812 213904457 57156880 993232438 28000353 672567872 755621352 868025034 16878114 292760616 370539333 794905902 583004587 496602071 360847742 230981858 130125646 429459866 942284547 870428444 456949473 885205561 927150754 973120136 149016286 55611501 322407074 786642402 148697867 230159113 853516815 929882023 267957314 759304795 425823389 53733571 919135835 282643591 150627738 781798644 155516040 556405443 68756902 993468003 263146802 547282540 52667545 621496274 70578412 293847828 456163898 351214409 895629274 473840833 129864750 808854028 312507009 470165517 779860601 411830172 923201124 558697323 425217982 109762491 778991167 420215392 112040574 50025788 525453195 87993021 729500391 70362644 463093274 3471961 375644195 477628857 65782885 72489163 53869705 145651005 512256096 860336789 39953840 408607274 657712857 54068731 325105824 926951657 405890129 624681494 630699202 957668354 837634891 778027818 817624371 342538988 637329982 429345806 811124790 511604158 732240242 230483093 421816997 872798311 125414173 837320091 998299996 935158888 839387777 628098257 901767941 678117051 857553503 673638874 139265618 742455265 567303703 696349665 356568259 524153831 845710160 970876202 361131510 582280506 104405079 159751874 366396311 485395685 78382646 583048882 109866903 208648874 485596731 362534492 115930470 766883897 505197855 166412229 521134228 929137697 359699799 726018450 251341223 838814462 553347708 46596871 81622015 912570260 568542663 365957287 573814928 371796920 746381460 773611924 403864004 185039798 793541763 281836748 642548028 919391049 645762697 58889979 440086089 433306408 181624986 422268238 282036678 115551708 877885288 371267034 46598617 132342164 401111757 741566468 644211956 262806860 956110673 745956533 111777874 483435413 277090522 159432283 512881511 850186572 377417876 738166199 10367833 29440440 66259082 456679838 92174961 380239389 823389938 499853730 528291237 395268217 263168719 104527811 252539474 509951595 936068272 445315713 755229715 14772569 404926341 647685234 570849319 545620315 968261064 738840159 543472740 881430017 82391089 868032940 840956631 823695806 151913889 97450421 189684982 95016883 924527785 150872846 637093001 296053001 764257120 777855980 583729477 937415961 912890185 455360420 395619602 175932845 256639800 686844595 169768484 806923905 753882305 875825867 215719122 628679137 961712446 24452663 137112105 950409761 649415677 815693472 146684113 329586589 874613222 580905158 134765354 233451357 707670521 520434283 477795527 200639809 673592610 130894810 851901987 38488353 674965616 736257273 129716547 451587639 487677893 318477687 427288622 128373654 923964964 466618424 974600365 588979230 725223303 461581718 101564272 806016084 978288156 651681168 479284708 619576296 636588640 826632808 473960044 3626223 565774455 534039205 790624830 174591054 211397918 112467144 396066086 796664616 15916663 369505519 246176901 86839092 180836529 316983033 953671765 521868262 967091452 483993346 887111066 480933617 483507843 798270209 882554855 609612908 36710959 790014858 7882885 387178209 590004326 682260814 717592386 7182866 970816691 872057726 850518828 926504998 453584161 181807966 102942694 49805265 634102384 528181697 493620491 14255421 422601745 916280420 732708262 321230959 502288676 905107970 39945076 202684033 973631411 746648715 992957021 687685465 106446191 344170664 561263112 972264485 380818086 769445273 587004565 920667148 409671381 812802581 213115957 907879472 488644810 741191374 191284092 922979304 703755222 613603786 118850786 895891777 512470131 233287801 455069298 876360445 90934820 533944145 472699182 572869994 830037582 197223136 571660889 211254310 470527404 464862473 166298970 151125150 459010639 428959853 79350765 451931482 294225169 931927634 569481198 551835037 7471947 756689591 718374962 740552483 647234940 410903802 623647617 12884557 541122767 651115716 454535747 289836489 387614741 610651006 390319927 962479207 304446828 335867295 958969153 388211833 39828846 3932898 917731446 860375802 986563109 153599704 756473745 935474664 328812926 509895152 168153827 475443074 778189109 332491724 799029144 315955300 86844493 927366745 530877865 734570725 686606737 365247589 867193093 391961220 619804010 243155178 212220818 91420442 49452617 530504685 515792680 154544866 375620561 25579116 500491090 649197765 428501773 352955404 624609100 275390190 476367729 631250962 705228681 776112744 370726202 586427590 583275616 611263948 923740393 543363382 103871657 748961159 399479799 704008981 686789751 629730998 998232305 287211312 668810550 592717047 897092574 351407052 1934608 405874479 6261388 218380969 502673434 742535434 112662078 63032671 686839052 400160168 263735696 808062237 387952472 22229964 58138897 766219019 883925114 859297881 66140742 92551739 146130410 244666527 892816921 241437069 109891468 507360193 106313830 474191704 512506573 752390893 237210990 213545061 213751577 776029958 380359314 565955357 577445424 253524156 309246262 286328092 317554258 893776258 207971767 452391229 565849647 49176261 524640465 458358311 448237039 692375347 210355524 162177718 730356922 218104113 458829955 835211250 630698277 487040262 287053671 944813724 67594354 326841832 612309647 256333119 895753022 873866294 290575237 483541423 765173212 148129432 710630420 472840149 740983153 824088724 830343589 21140083 145379041 385752420 61109873 4267962 482885984 233499017 702948405 141050695 241591715 190973908 159588242 312369067 381549127 433450965 879947373 293603776 192220386 204545950 99245976 314109029 561783496 970373651 55064067 626453928 20367216 297826993 910146521 606826267 540634929 322465289 665814486 521149753 434400720 261530382 186375033 956366149 94772779 520412587 366531471 809234026 589351435 564823360 492604592 531817836 344865681 488734917 127336378 296753696 796299875 136289341 365213816 618111237 357550459 158593474 956706547 683981023 750283597 183938681 487945613 42942699 667252862 291090447 622289422 43270211 62810609 240582884 782918880 645451423 638753696 387802279 921274620 315154526 490903114 232063188 149673642 171564225 740073330 439878918 824457144 744828453 479223273 546069920 565639454 675380754 901092018 949942474 975352349 204678754 239888041 482235600 962931478 638106106 374940225 520940003 690150315 203180717 464241293 728851 90188710 762503840 622042348 756431014 446081303 670371345 143592730 101549872 878619289 442774840 488222172 204060029 181447558 83086530 817153742 736834619 822153713 112745641 777172881 919492368 561589415 618400705 759225338 232832880 146980076 919896129 996519936 166539459 172621916 5160924 970704837 668445146 679042190 439378207 263438214 994432575 497105069 516628856 902889485 414292604 18653606 85858107 585107418 860924811 641855677 170245457 795476159 752761802 353039550 69840379 832175427 68316136 666279910 112793039 277431285 849060768 904579881 225822983 193449125 752050151 189199067 472116304 626126563 994961873 694796962 675459913 355210786 28349214 514264899 968232500 925736507 155230556 971628670 717058450 914807842 240691733 375624934 399460526 786595263 22025508 626702025 516808211 12161928 941693135 747276966 871281304 512281783 340431041 321293975 286764404 760663759 700108544 752812689 421631063 813924916 212693274 23976347 86356037 106897657 261758608 324596774 500389160 657079306 560682031 515281009 801790363 211510850 90408478 987422141 233615095 887476319 411764615 613477602 842414187 81495669 55245166 711832842 419242089 639762280 393861757 642367789 386141186 276675770 700692652 64055521 161433468 163851418 763729351 844667568 583167261 434073898 601142863 333440669 344853441 295739582 842899541 586775221 402555138 553508695 158179142 305069331 569640072 664031897 45014836 591357601 756767154 460270062 739023862 718866285 608215629 691150293 171259530 998950054 785316606 586247397 581550037 488633341 25706696 474045583 703763341 537575777 564800174 349430355 745285103 192056176 174567117 740181204 563924882 286787490 291970788 124456206 829493587 567203494 103767074 202894164 72613111 982471200 225373453 866904913 246705850 551257384 460446605 755757965 697163192 707184444 730954713 516302932 462858151 236158846 973490743 703726232 228371441 599079037 558644015 822889295 59733556 181787777 87875867 230060061 535920643 583156201 78463054 13461195 883584955 504533531 130892514 966852796 923195664 167283194 632430323 25791247 81975837 703413258 291754560 726051996 451847350 272325764 90490000 439862828 122598955 666591083 376372474 488656174 944018818 651655299 487563918 494481531 555885606 425527271 525933878 138515320 339778166 338038275 991000898 324375047 152753687 590200835 304587483 973424673 917091932 920973469 626578859 353933517 996310254 751653534 463890875 425829357 955846849 715216066 703198090 63578913 120715014 932327813 177789979 133877946 969947619 260352255 342259803 108119773 313013203 264476056 815534257 598703838 608776058 913703360 903573296 560265255 324450517 673095573 567364988 451776998 918229136 660773141 190408355 860262373 342581828 907363807 803374927 936612227 875333377 946196996 122032631 905807032 4465673 203585314 388540230 97200438 242580294 51927941 161666964 946579982 729222067 34919330 907542937 145078891 995662882 960334456 244609062 525202987 246891470 733776935 228957362 501369793 160921968 78669803 849501696 773136538 838716469 380214656 191709312 410947607 309737377 792404342 498053666 740599167 192471145 513397938 871834626 860819594 840168234 806553993 281207459 127037049 834983354 558041445 752339089 354247147 503467477 778631137 121136488 694216398 707275195 794803301 236060220 919415052 41249810 713065499 606469851 436623401 913125257 333599734 423228931 279155884 935852070 357947035 697540422 442968298 152372665 639333159 317284530 180724614 320214289 139718181 255431212 145573090 916589106 638188197 869773130 632837841 858840920 768479057 250964448 894725391 952031137 361597721 212451810 83878625 314679574 236921174 706108037 719116468 348359848 893321409 514719661 439934003 910211843 317165885 87166645 735803786 384364014 477288646 108035117 296890940 921454609 811115856 350589733 344659707 558518435 192020239 156608453 991083959 448888243 687336039 106310306 95134027 423712901 185985800 3598186 695166713 994998628 23662146 388750910 727094714 762754119 852223043 166820623 339593944 81705121 575633609 223623598 951993529 601965134 839190325 414477858 67414883 600592218 633851098 363341088 565200729 698971340 859084757 695062993 582463122 25134768 287688590 794386919 31105445 808165057 527609020 110944644 941709453 352206072 608099734 591448672 110636128 954900290 756878103 685249784 269420265 412010734 282199172 407899130 728796587 639305230 53005342 346328916 558450075 331641676 727690651 338206137 34419648 583771033 61834023 369739161 76549961 56087153 529125270 500978128 921644444 284476628 575517305 551402146 223741636 121853863 380556622 810472169 875856919 524260711 880666428 452283295 670734033 853849946 520433636 209447134 224422919 261490446 62387913 124356170 420554674 280281296 926526021 622643488 739360988 586288595 704623737 128949619 196660063 890578655 730769523 319915160 771897957 458141026 105252113 882282133 487747856 126620126 8559222 887147573 630262964 391345949 148570718 260525672 682163582 858597367 761399749 586505647 473835975 706444740 848486603 762669396 80881064 57400444 789669421 847228865 354179286 919572237 830135026 744292300 682427100 512513422 439877863 81666012 587027762 141282551 76658396 467402052 303338254 69297464 91213631 212567705 87206708 191176210 784961666 453969141 241641035 758927349 32568142 859182003 145447906 726251123 735899645 605266061 665440052 24712617 351569852 894895503 151998846 278458274 20441477 258715740 946889453 587992712 780192817 535496428 773024972 595483345 590940462 560727123 670032580 542091944 951212696 604097721 296585423 66740271 587969482 190032630 788084099 21112894 252590390 243596840 853330533 463008574 16192044 385109969 434059759 402877522 563854551 913659297 109046467 391810751 588032048 194355768 629950973 463655646 428826948 70530835 625125399 259486598 226662873 639817882 34140023 77884903 928912230 835549251 749609968 77302991 193556238 532406936 423673914 555448091 319310623 16454772 777584756 859394739 781510908 231971098 553908257 443999374 491401695 458340786 148438029 401392478 584547948 513887461 940975468 415642261 348913720 128713344 944028048 313346189 205650922 56605142 986735429 47948706 108981901 146267053 536003206 16453148 652414204 264808995 372046514 43803416 146351418 443299959 875883437 78776648 573173835 154973585 186494686 464452230 216757697 608912414 279150701 462471817 5793788 335081436 644959473 811148888 331783094 509002475 880232648 510110022 129205370 867634817 581549414 26634994 657711193 431776495 343212960 767359961 1325781 715337292 29934130 896790171 299013933 309012903 536610027 475518837 691369250 287885495 5176941 571676753 318804291 744224996 881655156 352647682 453971327 535922694 169747213 787436122 756133843 156574888 203873168 329785102 943738222 135958651 580242944 241681586 392818436 919379166 556558584 782181988 184863759 12902998 552595141 139768234 143338598 811832429 329637554 29841035 425370951 32942156 606737494 399383865 737066910 904591224 791954795 462937276 469453510 786229901 747711708 998546698 300771126 596911204 47075706 126402762 998861473 841711087 842701226 561826797 230766693 659750687 447673230 643260448 536995943 489644012 44045756 111309517 144765585 860844532 514911225 901495878 420942938 571780766 776803310 109766945 850389636 500752111 995068873 211812516 400387028 928020340 829927875 166800692 728532029 973395987 139254203 366398921 342525675 482614077 967592574 500170977 539145957 162644208 369993532 322961964 536666324 201750437 886095225 307064948 607104336 49301939 836376089 877890108 306831743 321306960 676380003 353075161 857565283 232942382 678950585 922079260 888683918 871821450 63277675 385614434 673131393 295007435 74602456 197848875 181478520 496396610 963587747 209081321 840265452 892940281 384946149 879981771 964405621 381143615 576445672 723553890 863490223 156488442 474401226 283436322 343088179 236389098 763575203 324919201 434067976 952549690 171201975 757292884 754697609 173413330 448601649 927918546 307922235 343607441 120147001 128660511 835523614 173633202 19269847 401947282 336658864 27013898 63225472 854424668 192374069 223516546 879026269 693086407 847378851 12642345 565456701 68144359 180088029 995203955 209397021 572732886 149155158 267530539 830149418 333717802 203728078 294238412 24789905 664823466 821144957 184445434 390669441 695209811 164784224 138028666 325646196 847551581 272447528 718525400 273721051 429657223 673793067 555111325 285893888 435861881 183841122 604654148 261945635 905935610 303352676 688912368 230886847 645336928 324099180 342834719 975938285 315414212 321709967 688125471 138449315 275353 802719602 157439435 424089694 1263209 157522958 766223911 934944251 939443717 305710081 678762589 151067473 877635957 978795298 304322219 670328243 909620905 159353779 520831069 168782701 479019866 943707914 922936231 32716911 193652649 671117281 275049357 42877490 468633781 449495406 79726853 437429407 104156988 6909875 853673232 763972971 907084765 573247152 940323580 205137458 942013804 125397638 522991109 84886262 783827587 53368690 909891988 159649976 571559611 473007297 78097810 108767909 411384616 733830414 296452786 996359136 998325625 732364100 541144335 152798230 938106971 705255969 234334138 729723751 283686772 812663660 405616334 332189672 795569499 497702396 632978523 660378138 56701609 619881458 247259563 440182977 487510288 277899317 717705764 123915383 477587381 257154532 589213718 168647715 141520859 753072897 244556627 488293740 175985770 825689293 527832205 205830616 514985982 926409561 56335523 483463047 632538596 130457277 761273794 731393112 644341402 254228135 716582201 849768316 39283806 311467466 407230012 755058479 571712509 65179930 726430217 174659023 99298185 505176887 114017768 215421582 977002835 230412494 354922516 2998973 63644280 692907654 38067111 962618139 542576993 576790043 581374744 512001654 729827387 233142255 122973885 366536423 839654934 151175245 223809951 992835183 826870107 944774345 923853647 312617210 432720522 583622493 776613505 926387671 938032925 618209295 773523132 485313835 902924463 123718654 839183004 347093513 715343309 394732870 4583942 784085353 692112563 338598930 704412998 470001177 587238253 468733719 839278757 494928812 75508774 342617862 41731513 206458702 565459745 809476300 946157430 975025253 940034175 241682661 145651988 139249400 791000853 376919738 87048507 570173248 243423832 841726444 610836629 188911271 470751918 602941644 232632001 788601336 684115844 728078906 956830986 883512862 673757156 178917432 621323138 331410743 66436038 605068875 974818775 446732454 236514388 881033921 540997266 560419795 869349352 357190311 151546104 702427753 985051069 381622393 351432456 489584665 367467718 569586420 207078008 936541365 488932431 130590583 628489559 138642134 521048859 395010989 748141189 871550640 209501790 925871684 32589038 679414293 767875202 69157633 193823550 535224807 703946892 389783366 39680953 533534418 217017897 85042380 151159628 773569952 478645405 313881434 955753932 502551922 869718847 314575012 986346781 163247182 724155353 234883371 666031320 905935959 102734983 540009233 210555188 538016750 100610922 591330295 87141983 280624300 822581517 350451592 558590505 497258462 192621088 418312799 356391692 506672807 248072601 579143639 96807528 317685683 122665606 100629827 600456567 619965540 14818021 482984955 490889440 844282131 667407743 184806163 655135301 509475202 127117390 710255136 189513553 151271025 99647320 281065392 852223491 259397093 503287979 972482115 40449930 284913121 46047650 528213686 823467641 333560348 653559731 770788684 32551363 163781594 966690529 527341228 940553858 768419655 510866751 464022517 337062457 646247078 251647181 348816813 377535673 457401268 537999083 304914418 925153677 523284788 181224648 21509865 131059764 517799336 145218375 28118278 257573338 588728893 804548153 778924601 259909152 304286157 21229017 159190721 90228649 556910132 569277396 841217684 13870538 869791282 217504173 420030165 492225152 164601432 833281962 457258036 813647113 222537053 127549975 983304557 192546728 40376576 438982385 471940431 430151301 284658276 484218629 50760401 488410655 829287997 434425343 359692618 472304570 279560272 850129145 435662116 810280184 866600743 112253211 903334421 52205346 911234334 351990813 485598336 961016142 259718496 941876515 675669914 927867093 273115369 506073304 595603314 668782415 218605117 493562017 952133568 584193854 82075593 471337173 759732977 381557164 801124138 157258650 592203493 584876942 250142379 915427900 781579073 749051128 998182867 496740765 268484599 32778379 658122373 807049869 512986437 759068685 973617373 891622994 542837947 145628094 680298288 188414656 774911706 214597740 697882244 651316663 55158790 842842918 594764886 450667727 774170238 299114970 773779951 720527194 424764677 838761132 888708241 508239555 389940849 344701072 400920606 725374573 785932294 942586965 44128474 692140951 810712600 814344653 314814896 480873517 519107330 307871733 832948450 799683386 870217596 209700158 954725823 167207095 683615568 974592850 341323152 858900934 802415538 827635650 828089843 74703404 341391786 880502429 322080140 471454612 303700746 72236529 644346391 91652901 970090331 490249091 841897034 334020082 806013340 480606663 435178813 261657985 665298803 751354915 608607802 290158108 828820267 199624840 465704696 963413520 357153829 654755423 524573450 862896564 438852602 564665573 526586417 920097902 97174429 722028052 484032011 100943626 188433946 772728613 490975580 189408521 407795183 323401549 603147375 262923976 331331071 835904622 340431368 982486948 260547331 693987633 938095954 11486160 431108605 85979146 527092255 872819131 767967355 48499614 220540643 597485196 446868133 687310485 374390276 612969845 610516554 309867032 322952595 217427167 858158477 884783573 866917770 110393636 644763390 987054248 624196936 378891563 521862320 444364246 87289271 487955685 749120141 731754458 992336718 714259748 477519440 496680941 255411127 947330428 220261057 799387811 673461223 517374999 871348529 908107331 748161498 55820126 407698851 761353546 65243790 165000368 171589650 934378526 320581155 285435639 91387393 721622010 842582603 418133690 114344739 965508787 323011399 577684814 734226685 707172212 747185646 320314681 460347651 68014679 880982724 637403787 993522602 415505813 339908375 433915666 24499302 645950838 259474731 870219414 226391489 405270514 535479738 645872243 559505784 119203812 350644344 917010595 72705185 612473643 629263766 143791160 415411525 108616096 610670008 74669394 864752152 47764139 756492296 55781460 575074823 712956992 98497240 971909503 292289256 70171513 618553526 169944948 406169336 23948396 252991928 631919772 366153514 310478727 574149848 951200970 432485675 2331076 365756703 881525887 46148074 681931717 875909585 967547331 919450625 455050886 700980015 771605237 673045274 731289443 195113376 477985715 949572942 90241995 694190554 268206648 369270813 836742092 520240945 79451117 712858141 682743491 123375709 957220955 947032375 119986570 789931978 297393052 602002685 366147727 828092026 644690838 474844558 591290421 72706097 701027078 773290279 523176529 976771720 968805201 46022706 589130072 593764653 73600262 623353109 261373398 381342717 392527871 485588041 91217843 86429782 937512672 193102508 46007382 911702855 560884462 263647635 561721367 633431823 851542582 841473371 168983680 182083835 628657177 940834175 997135072 686891958 345424824 770733216 421981975 598781258 845117494 718095682 150357447 225091709 43998793 752877979 571594004 590770293 430302343 609530881 742580993 947319895 926388693 947212406 540158480 416572889 237241028 223108274 722558666 214844298 331955042 265963941 7158123 537558705 799828539 883938420 61509826 506249979 689302480 239195474 496306891 708716268 741694728 743703332 521287411 900093268 242869365 523979019 601536498 551399773 638964542 794571272 485917788 605517627 942860625 893978423 634524117 145565623 944462020 193813432 797859184 73166671 359757822 420545824 50573539 211762900 163826138 605689238 44520821 330726155 570502932 503268188 297610776 4667932 12921724 617914117 8461423 441165234 990415205 816143641 145315296 245515361 621072207 465191347 227637122 344202407 850362993 922798068 966423697 2544735 612934167 739304384 571805106 720221064 761289054 374240034 542945079 623888415 255809032 79629072 114022038 328989966 682888311 652548277 625461160 156573074 462584621 806192051 835908355 680222330 236306260 630145128 292069645 749398200 509292958 845691664 395262566 382460456 128944628 302965954 625538834 708578174 894627577 120570125 12021097 380543156 166761174 974514175 242383284 447790028 587639986 433544299 129902129 754220492 886677089 459645235 16143692 461699846 52108102 976720271 948425124 692097783 61848098 239887557 41706834 655976682 771338392 120801228 544911091 393246195 771079518 337643008 645074551 165943134 725886837 904179016 974842789 111193339 437836529 144971767 719384268 975809405 523463042 577476818 444400847 466373643 706858949 68867818 13508223 48280597 941271572 363436188 545385132 998909777 764196859 35827796 367831921 742283253 358296602 67831183 284059306 592891316 52958317 90215544 593481940 301190561 481191849 288994892 778378162 711108149 117019212 846179396 62481031 302652406 575467731 420414439 965013354 100337296 906542923 119599668 274074341 524539358 409013924 379192430 58002521 860972298 564152556 788332182 685999556 634064501 116644591 775329704 593159307 455820043 876860660 598495859 69127987 141523653 443744441 740524684 556630000 688843062 258374515 437550052 347871129 660619356 852513906 754115710 265598568 5346315 846722398 990187910 526735134 87153388 157113037 918695427 523642627 723999886 725332794 270586372 163222761 921648032 543614707 893346502 247080106 837009070 449190492 805100422 85950604 864099979 643994220 735145122 286202917 809616350 137194305 222428388 117723280 437919831 925827791 660839478 829474597 941884008 278347499 925362320 564098371 957810605 310677720 827434925 558750124 681842132 678552048 812098249 353831368 505934387 575334697 630136481 69223538 395363125 234919556 875699129 806122317 615593121 982450949 198605815 608322938 464237790 186336861 28703716 778659045 562139448 576771946 731800178 15764016 371893701 597880775 386483083 540947645 234609808 453350617 737622905 836969260 130245543 522150455 688015753 420304398 80961986 544537438 223912913 952426719 391586667 300480373 640381470 793909685 276143053 698816041 17432612 218239558 229051994 369123783 378313158 898867897 54895512 622258260 633053909 654016501 793595398 353585676 210606777 392975774 370700171 819928100 48360240 689991980 369152870 277092231 573826907 803030232 266807989 15811767 163532671 655418092 790382764 582574080 701715246 146063126 263018715 307635265 926204591 712024910 791958876 195067573 293297145 146633209 493027475 57736790 2099200 235643821 9636313 607512753 730094467 674373111 58739759 913493198 509508336 802242797 585831444 447059943 721789331 437862941 639618411 197255572 647940486 688800800 431633502 673417785 384494069 216327979 768934948 382416411 260288589 647254786 420866207 952811887 949257177 419592622 816274980 630431687 146744798 854268108 972211732 611562226 272426419 671897405 164640296 764100594 688455995 793720166 23500948 100638949 482179191 146818311 305352109 109141773 788590173 157309616 829692704 778655445 64281547 465847079 773976096 985286353 945659089 865648600 900802572 629452084 636822447 643284928 881537095 975434233 545194776 246093149 842116939 822435895 615862797 616089966 331381200 315187892 984711855 743428716 238586722 829575621 766401708 151473657 672691362 739718840 164991236 937885561 401855630 27151221 916474408 281257317 337804934 491967619 694961680 375648847 649595340 848941488 79203420 542460511 158881057 482053572 775018927 311250357 344513654 730101336 479565904 911071655 237333858 358166196 335401781 249794752 442315408 481588821 479102927 845789247 831067340 588730842 688987350 192399483 637241961 717369373 330649911 116650518 690682385 923072798 203949063 101465360 391169357 234631128 224346116 29253777 177496757 593916715 858057166 215222709 615405632 451690649 918770568 488502652 109564001 388146457 375989487 204429430 538469870 959512745 861065169 265995800 279252273 153203227 203266641 792773336 309816585 680814732 460743187 233277661 362441623 856456705 877911067 241410493 390795240 896708577 445121609 669098647 921388134 886101514 562751803 685848928 508309569 856047808 532472738 909172750 543734413 907332080 544206932 572397081 543445787 297361933 105148566 6664240 919939209 434718275 194488639 641258403 103521839 32033201 668740100 333117859 705558177 587586531 907080035 921980973 320216128 788962109 841544136 585554855 965389727 870944525 311045665 832028579 197551890 140944512 625337914 247361078 583041413 822478670 754001781 512399836 347562983 369051420 774365336 447508127 262095357 32063091 825269482 532219170 411544950 580848207 500753616 933706250 519191459 936765587 597675629 511136744 160921973 509491231 88786921 585248999 146838869 912116254 610079617 789736559 256653029 748009950 187517063 159273660 948019942 919843013 860921738 974872873 892344233 130463686 945862128 700849166 696238696 98558269 73917401 823532672 970308953 349438631 915626507 259496821 894762546 728808903 91485148 128142244 644073939 51335912 312793915 994435142 613656180 33892761 879581633 116614395 70991847 377910328 655375663 502792140 927025363 104321694 30721707 464900360 693326702 619620196 879671610 368402683 976652284 154138623 259771741 389737344 67590165 765697132 912851410 439066332 653124935 614881962 486026763 333018651 924880070 586910973 501660971 537090952 885804939 321426838 646952479 285652924 866483776 109021457 460366477 849987581 277615915 761312056 997422794 182427757 125389433 494514310 942237400 436626214 698444946 425608913 321375820 792223996 397552961 16074224 826973981 183503981 452574045 862659945 924531322 676911206 882079136 38518810 825848735 868765487 433524190 716515237 59063585 482511530 697718447 767435191 142163893 603026851 80372321 474848736 325712554 495740993 743587731 357426690 950312353 140544200 479906280 599872065 962449611 750359042 768479554 510745656 52940962 576025952 259278446 208081769 573411862 646003620 355875520 411035165 487907146 619979451 537579846 360412065 611292064 805046330 141124739 810650165 694182106 264706922 803605526 910220894 566821481 198052358 980690331 587826883 517176943 408443732 835546603 356997923 929676461 812388765 613827416 390347629 759050752 867592108 416722892 256998207 724089413 914506669 815826351 211692044 91613771 190403749 843480562 260273492 483981831 842283444 477760292 560666594 136848266 933712664 893299639 968613646 463124585 623953562 780341755 587832300 13279698 195179343 443622885 838119722 844821915 297796864 883916989 104715564 594087566 34484441 957481057 507714232 611930963 245627471 532412049 444731196 224049266 682324378 858215582 379231922 140169408 24486249 107947280 608348137 530319918 686492868 865398411 967595304 62586180 452618691 660276454 220951999 48839957 130845159 759999459 155308418 114605930 416390123 451903535 42179685 903074467 892077861 699474803 359171986 334541927 565400012 754902075 518544809 880309113 926157135 707154943 566772695 982692790 552188844 174562983 537616586 426825860 269569591 61073710 477138322 170311060 7250252 315839602 647640827 59598752 161402072 798327220 559397470 162179410 60694938 363880464 220728132 226965476 618077767 231879894 656438975 591865225 223878532 408029197 226822473 107154243 115041446 550175658 133674317 256563989 92393656 674849907 105363456 417117195 128715951 160045695 447137479 944773351 49198234 371076616 865029798 207244271 975728116 479628310 965944588 800573648 787735938 919129756 367191800 666182927 838401535 10534831 991365641 492508921 889878987 232492254 936812699 705973571 829580911 514057384 659803678 273896946 74909092 633659766 947494262 101665700 890856481 378598932 82397274 874426192 694441129 552838717 424363063 952997384 832121257 39967286 622769836 571841053 301032505 811658191 831727025 61818720 319423061 498355624 878261835 643142797 234465165 137691563 318342620 38327849 211464263 269667060 909605426 657482451 886648899 976758419 810233588 715965689 187957679 445602222 513655548 592696732 659948800 471517643 508603920 332358723 835901683 634819847 705896637 538763048 830225799 775869482 277562801 127459655 559426301 177527837 372626230 923325867 933846357 774725081 716019390 251713182 719863976 481719171 256991988 798053132 348969182 136252985 38904576 995397915 671838373 333124674 693852245 703092121 659978291 411997581 786406571 71853727 277017317 707934245 855109674 932579374 468084621 980055758 294367903 688441341 2952854 87978077 380398539 842850458 957562923 486983478 923359296 23995893 841018044 788629424 935278686 520853787 42297286 695789487 949139854 310933586 368155942 435674858 34897568 16490630 564119182 552124583 473233074 578456266 498785977 290915262 78834803 474027097 7771855 270353247 6676351 69634396 79688464 871814010 785446338 396083307 641622219 114313956 624993859 303165191 214736574 171309977 411939392 626781801 528619910 489561325 617967223 13779153 571591653 144403617 363316051 78964378 777821779 295928427 566361433 414065189 194702765 801381971 579519142 925665649 800200807 876736621 480858219 209763270 136896653 934880265 598349847 291452570 501550824 478595863 918541901 125849624 604735028 422351845 382020543 377496099 97556882 144855977 629031920 75822107 100647382 673598014 137632837 791652983 799762586 32137083 454716662 568491629 446608783 765468962 815201928 209233014 293834133 99210022 589080349 77424798 358935892 802157300 271596750 982278242 335571854 164857244 147683387 654064985 897886902 259054096 263713414 930129184 304354824 844760245 793433637 198441620 783452146 10394296 376826602 65403297 119290115 815424686 648410926 581615432 171288967 870783714 466017040 818097068 326803660 473044253 527984367 850168253 37202701 449882648 402370980 74335011 72583251 855335178 393531744 429719250 58691595 463011993 857963508 400643747 911110656 897578646 806197927 425125208 178900595 332044204 211990747 229675191 869957727 902058819 940861653 464751873 90620964 162291483 709679450 154013295 194061924 175898381 726539447 59774022 606222081 295624776 906039324 948460378 52718094 118610164 581023304 549459602 96076461 346343065 185884723 521189549 517488367 222078197 479807569 671736849 686910014 541144592 436792583 936909163 829375341 557746454 6027508 75402863 775405762 544185691 995544101 77171037 160604175 548145591 366599579 613695798 920304321 748065554 290921445 295568624 749119995 185557751 136162215 244116877 51879889 83638187 723422748 420966706 276139896 342349691 934833270 197846527 45945770 932600615 316116127 158967059 441709290 910746038 72529121 985330520 702159799 534266631 943173685 379658097 248356633 111079208 856947109 14732434 237135665 581108793 570489742 190248492 89235360 207611655 180950447 422009493 779139213 179540560 714305938 872322967 947769722 79186676 596629740 536721246 145518025 353446964 937570373 949919558 683538248 305255074 125811051 660325636 583413595 778935620 54576280 435405484 45581687 509534610 919317863 352164787 825577674 483275298 158617775 647549520 350777789 85579034 633941063 812825969 963563079 556449910 657439582 890977845 364590862 595569011 539252544 237390330 418230331 601005691 132380795 956342928 276036331 176707905 462463498 218381392 343416192 851251294 828548101 272846706 653568623 196023333 190857601 929235187 966940590 745855622 686936960 67143469 812069106 449876959 386241258 921193359 296044623 31084597 893133045 16104710 110889780 878739696 296009933 831221268 459782707 817666810 422594368 756648366 414092914 492684859 196814277 839313666 842953581 34962922 15179235 747442010 585738023 828739586 807468127 335384124 834905324 452658278 13340165 762892554 422861384 237219079 670827662 306979268 654740435 778263758 54482141 394731677 703573771 679465675 532288618 994229624 620593075 42583077 640197003 391703131 505708190 859394332 732958592 753908006 233879471 517531728 662256510 167353412 805279961 851192436 412078491 276856816 725233318 499643411 377729589 978536604 837809664 847058129 432919479 200812796 991012656 494938952 390630091 915255715 421165661 870795625 557735025 524840748 792091691 618333045 482278650 602295837 645806707 759190753 878412668 178375944 822669334 567756774 335301025 466775027 939363744 158547469 738419259 336066503 30734099 66715518 16751975 963390630 922315702 505595330 87135310 749847934 369275704 428547856 734961054 589230437 242505295 32162268 584822320 92684685 691654862 506071606 201066749 745584033 733193298 487963730 206435339 996966772 382664413 197579016 621686692 812758375 649146078 461878340 363729121 93974981 867091997 48854088 361166949 753928726 137167891 547454762 104161376 426780186 659819301 770754374 195163721 632134607 211767416 699935583 8118055 658328803 606428507 592021648 831880234 299037026 768274103 13463822 348472036 899789741 676197729 21309078 883431136 994658545 115532794 647958114 252321251 624289036 232733823 821747019 511792192 417675163 546071055 804154336 165710042 40681262 732861885 868083028 224688698 249868446 210675875 839442790 834041460 673534503 218300571 966589405 700337687 654444858 652718493 497551833 797715867 9974391 680358499 85211770 443430281 744040382 395953631 449575145 950870748 82237627 603670216 389349341 13645063 879408692 42589416 388019960 235322413 810742870 269612483 107435592 683820538 233937266 261580843 40395919 181794063 501468852 703086019 265706931 559584282 900896408 720692149 630503150 316109781 517590918 728068429 792709106 237040512 816408862 242638150 45084461 826586021 454225482 750634033 718524797 852983739 935994895 529976390 58445321 482336652 646771597 116849399 819338401 940927919 433297313 15560622 313503422 700118725 366198004 286245979 107034696 57056074 20588413 716662511 981264486 650468132 894428248 265463810 2135104 726253911 694832783 901679790 248321592 362478158 191792124 845573325 913981181 122441098 108597128 585745991 284599426 343077869 755642365 221363207 87201701 380399417 351701311 561344524 385354777 905716396 278930675 98484777 112277162 556389172 325306474 199205851 660512034 997855809 849874584 890908538 367644933 510098404 155486509 430000779 946163729 58510870 905194325 260087018 200463861 497020698 356974789 941227068 936580621 652827097 95634867 850504810 638438315 277778853 22168798 245682571 710670826 45093711 390411264 467378801 755474963 487599983 543191862 531438520 991348679 937576514 294699113 500218452 435523824 776131039 462843369 915546747 47327789 496266505 585717764 132798992 82685526 81889549 158110189 987732413 456619863 930249003 719320121 4380147 385587161 521834700 543893772 367259643 367066890 91578536 738770826 882461397 376557693 364135116 24646703 118527219 96985640 485601431 263076586 562466595 924371434 805545094 918664409 546383160 31469797 352716168 374526032 484624373 792571420 176828070 640746052 187215261 411456299 610590628 770155706 953725089 649253742 747808147 383290002 242223802 588700906 99917731 526078600 643471034 6690009 718246575 308440878 419550517 609930211 807591528 884692155 209380956 121777380 309395705 456560461 385387592 372587826 370820451 142831844 864564604 937212426 477714788 260983605 248005573 670495859 94825104 975350548 418015247 559486917 467616794 760575687 562732049 638932237 250184788 344878790 832776081 909911827 273539023 86525819 551192755 171858610 947057986 255487486 745582053 517661879 470900437 312050892 976619398 366445129 239537251 817516763 176011841 627200207 863342432 582663580 704487839 88390979 483316476 591148421 161642305 19585968 724961712 615156141 866037455 385523350 820488887 714071082 377850038 149558195 772825862 46925545 806867777 616257475 696250375 569293106 527802325 987774663 180755644 734967779 913458341 402233746 716444551 481963413 484306282 317619781 965052564 681245450 377290502 74012959 639236572 111905430 786146704 610909423 313739689 21121355 940280449 652824393 499407314 16605936 267667379 39070956 125124990 102310686 661936858 883197766 331408653 884676313 580068181 849428616 716843426 769743003 681239857 542649083 886946812 822533834 509711105 55183346 528188086 377275330 92195818 801683720 953404688 926311547 144258684 274126530 586562556 58878907 279190466 313836039 180637472 614988276 704014381 411221608 194503862 853832199 51712929 367268531 819403496 419032448 587810334 93782682 933330722 859096767 341056636 935197512 929408644 233005119 232931337 950568353 444942126 920256615 416505310 815779418 129036313 800203097 896612173 647449192 877507349 460019137 176615502 18240762 23830686 436894720 473681467 17988016 177523678 150726846 568330104 688731832 865886010 59448241 869343977 326072473 243115851 737355172 890552286 573423086 523401598 888226718 381695405 464444890 658528232 276489118 288717333 208586650 102128829 510796753 540468955 524570454 675271951 931783219 679811484 869266855 638902905 212502120 131181981 808742980 565182986 854867331 891969912 175503201 697982448 457041645 736364592 15691320 910587202 5861978 82391867 498451873 950865622 749043228 654901696 722793227 404506153 452650295 846041700 178765316 690944900 929017249 850663330 79122225 434123479 353035901 231783781 108344748 589033950 446946296 916975376 572151521 461481870 971726714 781528420 701872075 897709884 413657900 978604954 364444633 981786623 487194344 520171052 1139580 488729653 178475291 463850636 21476630 972230290 262556646 441359830 614176409 869309746 298069384 560825963 851394644 61549123 535995454 728877626 898514321 528379598 656059504 78052613 543893468 719773525 611043379 875606279 356334335 290366040 940522426 416044047 241615603 741949979 84186320 851024506 335759296 360742980 486166080 960452745 755805600 148415885 360838078 904299927 675724763 421087609 851258209 635109510 442802356 4319924 859081740 215082378 556613833 476809778 117260148 484396297 166767429 930503415 468105809 310494345 7301143 27872291 147712962 720550648 392771208 563565759 35347467 55543597 183510638 443859786 8845947 748138703 658351095 960798930 123840893 444665324 847149706 349466867 492185320 242358661 180601038 206447719 237040630 987227380 892219024 681877235 203267454 427290159 800938223 789499185 492214000 193607939 407441480 863611938 99580968 690488599 24700959 200575886 719088056 702782902 559732403 844842525 182902545 540950043 946011042 659163277 33450476 323809655 997012646 813031271 155848603 85624052 494212945 841163750 769974460 456497640 502645971 991700691 784205448 676307553 363012130 155686962 529083512 534307524 993943371 190428187 471464507 408858143 292065208 320191529 621444491 890465726 918231111 721415347 769803012 371613969 554366639 9034498 270306851 178749508 688283795 810805128 127781954 618989164 539048133 62858816 88098043 44043919 557242050 375483087 716059378 134296690 2373762 187844429 746917955 673864854 887596915 94447166 114500165 471127846 178435673 571595058 121406354 289842398 124454319 267235237 647283390 775874711 364347322 204672728 499930502 15375551 976395286 988708808 985199749 75888136 84269448 35623311 279439925 514060112 771828722 141264573 726723816 614595855 850871037 889773384 193796491 768617322 15038581 86389306 726035678 11522661 792444409 984062813 137553112 412386055 639711975 492716159 848006903 600838162 82511948 237260893 604203421 25827175 773623649 515927576 974994252 302473024 272249904 223848042 410182594 468587207 979673386 190645021 819692327 683166127 160479876 920639685 404584633 909365190 68416899 3141378 550488184 503699934 50343834 183286224 440250624 593813793 664991729 422949663 258831279 480003749 688987830 900358663 95612816 273476181 978111979 815125376 479676791 169742730 679194494 922652551 43870329 512117075 486941225 652569847 271482277 402062449 846171716 629599212 831020150 267756835 408581804 883535265 559898617 26793182 273037168 785612348 941750136 26294781 192375608 494034733 562545192 619614309 901053996 818431324 532566515 901752553 493234025 902702086 96238307 409546977 643122807 100829047 452971869 296952448 238938956 849973225 169645383 163541498 153956161 959382620 15412914 372585119 755641784 560661623 199859608 241317567 380749914 743253992 576423034 201478546 306375340 484422008 183149703 191026694 199252919 316253538 122969640 707146468 991914928 475205117 950372545 334341392 295726925 443931807 492090321 722599817 497019436 749459322 50237595 648776145 166794808 260308484 375542145 723430594 736704397 266352859 49288315 272842854 230283527 190157950 995794478 162725904 144734705 108150825 103708129 10378519 473289852 394599377 713336971 359996860 663316408 69980708 685340369 182280519 713747714 727708092 303918405 775759017 536931377 419083255 911090323 594339415 622165462 299565665 933854772 319484352 964173033 626845605 919726561 64946652 359472721 755812939 806534979 163046079 374791333 327910406 562109209 955267245 546026072 216165331 802557669 959086379 162682849 357090550 921926279 803948854 625522653 650266394 232712793 369319449 908063881 305565276 760431634 746933295 146171450 795350007 842966015 488246336 919750660 468386150 833007169 617605792 420195720 692380728 334949294 175962837 789500847 685113085 393374054 775005159 758792181 853846995 481808103 973381913 208688935 346457823 632760753 549418396 452897902 916175007 756255533 755693948 351531221 682103453 11713234 446521745 349643010 469399340 95849393 384477130 40760502 424212996 679330749 409953744 98354117 179751784 676586973 282946545 899235904 17822092 446274325 223992534 938220607 320741465 615324265 550329048 621997409 754899042 210011290 159339128 426399922 927592843 198395245 848637013 540836368 917122202 880208485 247472053 560647097 53610690 804566559 671401020 394632502 117316206 248185929 528893383 475847765 211508097 315596886 955501279 200141103 953374061 704496061 1682182 818803738 298291880 648735763 412606851 374628596 956739783 516900691 796958122 322792426 489004819 570937315 603032423 593488785 424148327 705218038 722101837 692564746 999901751 564142862 519353888 594760887 613209457 781687600 966822851 499727133 45250644 481582111 497827005 153546886 727182598 12167019 617319003 517652759 267173398 624724298 282843361 841114607 700789582 870087256 622698801 75494021 579964445 875814823 704547417 389750082 225058544 310601539 540900282 796164713 822478161 191297408 966146313 489707660 115723254 64906294 601285486 460687556 495820614 392121876 513604554 190702145 112574985 220050652 6198141 321790078 540773124 265729337 574806525 877110034 323218844 253321009 689059360 562671966 203973643 669637386 206478408 308768604 831280052 447468787 199287075 684044346 787388255 57060302 177279403 106704191 725798091 198147584 596350538 379695165 314477785 722215810 375615628 727985699 564365810 204239330 291112721 873488998 603577888 776049613 373506182 442816695 814201238 427711443 348840151 465605325 727360240 584602332 496703524 59192475 780998628 345666302 725725937 430094257 752468992 883065181 691865327 741464434 446035390 353540455 407153317 398111975 517764116 51235458 380177029 197502281 561332228 541550238 915155261 626318175 328040954 311757717 902517167 122407007 379205964 379586551 192430686 864784657 596452958 852095445 437552125 982029447 328472575 338108765 313483950 416525154 83566824 646345653 255461030 397316599 204737648 790087544 679409044 870658133 289762405 921427034 501594741 805210976 13845394 598573979 470041929 458824738 114115936 993150987 13114349 868283925 689455130 635065018 622179527 201940958 9297339 283492684 803001928 734919998 795441144 903289303 777767815 740326712 933736885 894564605 794597850 752962834 318097472 960107531 335197226 582497859 277232860 543900836 694056437 482655172 887436617 69596430 809567081 481569342 762221644 728702234 215372050 678333140 511728321 146843503 139628554 343569286 882147593 862941740 813781925 387927952 707588049 737021052 120926151 813769906 921308494 577702453 1740061 166135834 669618593 455630158 998197874 603010269 761196822 101811304 717386552 250950147 393505941 111695123 474614346 522907903 222511226 646269837 458129229 816477094 496509811 171741128 91127402 24212596 283734880 640779345 67123201 321787244 834154989 105269039 315203966 108455577 664566709 131235602 389632075 856056078 570168973 329695536 226131036 652500531 469148116 903343816 980636155 74714197 323922695 751934105 984116973 289825256 840602888 398840166 667104046 268886805 678933869 918570550 804339945 632698091 704200641 76962667 152331889 72574583 293242757 469106584 607192674 830532195 259279540 257095927 102631903 259429388 199784530 25972206 825609034 909046240 338560948 155829870 602369073 895238673 840817567 79400142 884164728 629513324 662515609 89145131 564868159 569959009 122318348 910175833 810509867 160450248 340123529 240808494 941869119 458182638 65546198 898574943 481038843 128778108 345253280 496325969 824180243 648417358 153439725 414103298 328208145 210108455 706408767 486079824 267677005 445363535 70139596 442550324 108351330 607958447 129107581 914475550 360372205 160889345 913583890 266000466 681832075 148668262 411953130 757826065 731864188 25338598 908839910 395888121 5145478 135626537 333854575 896664475 326431554 523300793 567018702 119704252 727543442 13540095 592848154 843382621 473847871 836462818 719794988 727238780 610569328 689397983 104323401 331055337 637834727 162716761 791675573 909300374 132496727 87757756 823991713 756692342 508163746 784006202 697017527 880807110 523953763 774876627 175546164 402715028 630029860 349058575 964648149 335547208 957998485 820209593 472662545 298948557 446666433 316405627 349069289 92718777 74651887 995513284 984456312 614803045 270648513 918978317 41879416 161494039 315420820 766078819 60074952 106784595 119300823 845421291 561300417 867381913 948528954 202816211 615099297 812087590 217918922 983516288 776774928 787657655 254537928 944651814 80328235 148783296 277465224 601513927 864694736 790936330 354609895 165193589 957312748 18912178 988876671 7372596 122004823 907027754 431979040 234229388 699001069 624279766 655725837 906542732 519802637 981113832 756893053 710119251 630993892 233927300 311916097 942497501 249359515 129334281 363911950 208280380 258450552 411142424 369276264 547652934 999829916 540592114 557594433 422655973 170520836 563333997 932681055 828910053 768010191 166550530 96430201 790280829 872611580 310494669 659236186 5129305 550295402 661388008 560764100 943015334 135847427 453568043 522824653 244587994 290588300 215067026 755613456 877774389 413469608 60880982 363580662 399734457 859695145 682064158 720276041 324662745 256657050 260165532 162063512 550993833 97321328 905213937 777911939 850118597 250587099 496571699 359295629 994677374 4883720 590817705 605240855 831993682 1762778 134166473 239267354 827556132 226833374 909869120 98601052 630066545 206122428 183053100 898055090 892386339 502660084 530938441 32931075 279743101 51649973 602445785 79053849 9188596 791089606 455909148 177732379 70891968 87429262 651021346 614479009 597058043 944817212 388598254 704510170 63392093 985960005 970776434 78585732 278822517 232708064 308673976 256034841 762143056 216066211 247515378 453898964 540730314 798293114 561079048 253298900 264320010 363358843 123664659 674894685 788010500 603423146 798933596 665894018 730604878 405067608 124177981 916285574 892724091 56902473 848838849 672508857 751477297 90958366 664105458 637269784 591228176 882370552 166908515 39364659 883508362 926150292 169296511 946885539 446374390 438619967 210905960 796577824 235288762 714389356 574990363 831095703 856440352 887390971 605183679 587965592 702074085 965890716 465127089 437086599 32500953 530806831 619573920 956139107 75067828 576327451 30515146 683848176 325259941 217200849 877435587 39266315 343634564 42233769 85301067 107534817 927296533 248428035 312741194 450963074 923927148 377791613 102761404 744350735 962499098 349269359 693794703 815850123 648541891 820747276 854757522 712026278 638757350 723427769 293936126 911981267 377565905 459183087 498616540 867990238 522913651 373255848 793771922 808943105 143802115 326395633 192141123 304828050 120717533 446642061 17854214 490232258 443792642 726805579 701978052 548970525 147720192 580313384 502288176 69829217 479706162 848802923 151963356 254330840 715231471 800956098 179828875 147091527 457463516 525634573 424341619 489731801 381371971 66932684 653571090 655056464 585528213 205313578 437847019 81666281 531508397 427773134 661044308 391433586 836299059 656679802 593565085 181125992 44497916 797751755 430678376 972034046 93532522 765717143 942879193 298973934 561969319 136877198 384372024 451229249 159092305 951897679 798215191 157205434 717670364 873221493 723733878 209157161 200985539 319663357 844111312 564963142 716767976 484335547 42506289 797543182 799548961 230430845 278996390 333906896 989895128 490130876 784356808 515859131 985280998 29973403 306866406 194237052 845184001 247952885 379742653 559744487 773531673 505792607 202699485 499329550 429126615 136434170 404124677 588268043 317575171 919300060 455727610 190600230 868180379 157540119 253685097 64295995 107212142 519220325 564378777 53403955 999043036 30561829 284945793 325166442 380915334 528395521 408472235 566164854 719043550 681828427 41960807 851232490 709791892 335146741 285694513 184632734 15885958 461072485 277207987 519682490 286142638 688927787 554519789 173049123 2539407 703596793 668592484 726986539 615070268 868500787 978253047 161600103 794567616 64127057 432656853 361455068 953631468 738108847 352312072 16379532 791465219 988218552 92467175 413783388 672022969 21626700 716447011 804450765 728321146 267117503 47453914 93477405 370618351 89637743 165275848 920523986 402486325 11349979 845801172 411248323 252669156 873440439 50670029 962389225 317809924 305368723 315359691 726831741 860280913 961846440 851840201 722768877 419225853 316983162 319598827 928693563 798505577 50221613 994579990 892699867 635278660 366776474 366609124 884088708 150872359 3424847 364169626 235052577 107145863 168442009 297949069 769751437 817798586 822995406 958066813 668573458 444740140 477426426 245144862 105185251 217208171 25212689 572676260 284741608 187326351 335119285 269589704 863547844 810217567 404569535 170482555 837453644 575820933 68461876 543458468 878602952 25325745 596522339 644170411 490107358 153788567 204482966 535535743 760401136 607113155 567252823 616000103 143572401 145928071 417898397 884779331 109170963 741575347 889200285 190798625 204835189 575000643 570625055 897549150 233100029 481446018 779470560 780711996 454526171 635083836 502701380 258898675 200619425 817489945 189805820 219533323 909551288 53179971 429915625 91406229 348364380 623712400 322192220 357537983 688711620 433481909 531552384 391015252 756619709 62131506 392773248 983618120 731888287 62060448 107279909 885083647 422180699 640329952 128892245 877164142 445018495 657951699 755394625 33469486 32980894 404715927 530810969 162827977 190484527 829706580 338010673 788577696 301746187 863711972 16586204 956203859 136249363 748188364 372787149 113419783 687844633 137070276 190611499 489881022 757076322 485249219 724771768 540110404 714624571 661178313 309262210 32131068 302150499 98175812 876307104 174672977 268848996 51904820 33316912 621653665 836545720 716426644 938518516 238625557 33319804 88722654 213508250 48749531 100714084 384704209 457949604 361042658 752955955 982825340 823589004 791244248 491001233 887934163 521094700 867526369 768934334 166184501 450016128 651416332 515959094 279959250 98807507 939341689 860201807 59497968 520134010 235545736 763482958 398894944 690123568 406250309 444516194 85547270 932170584 73615086 932485530 287578839 540648053 377653495 408185137 553083967 873397095 447060891 655696406 841093921 925420807 316090603 321797726 730456129 962767015 319970124 119981458 406278338 22418513 882436304 229086399 885392782 5568889 251482710 374120752 57882360 779172332 430821124 294676927 439202901 400582698 506317379 680962642 806011801 405998124 266555874 523312789 260652672 429487125 234017370 32892005 409753594 343157017 517830020 890385662 991291746 559718768 252309461 580978281 640767359 790354186 343823365 966340991 736947456 580794074 651725088 792321810 931663342 303402672 767312046 318732578 213216085 690579601 706080871 6107272 328815883 215992205 830735668 135499593 286399783 803833012 824567251 299901216 522695844 756576514 197263351 902533986 669253347 703818539 29916633 199346436 598334845 826537263 129308540 324695387 347233527 969799979 363459151 523636832 39676472 500861316 443560895 920294992 42004486 534570765 397079569 332679110 725487358 695383695 199661980 892769988 682483539 172167113 460088617 880664916 858579693 18387193 388200695 990898848 214820021 945885521 235828377 906285133 773703649 191505691 740693251 34269210 774495679 482498882 718558960 491083527 205974015 336683915 255664041 667507412 324797586 800544805 31792558 519389794 394028580 563598112 53524410 482094502 61239893 723419054 896348764 75531333 902996706 763776093 369209202 428118399 745797258 215205516 492742373 305294132 317213876 620596830 978468797 435864172 290777821 977602437 50801718 169474019 135710318 743354027 831393492 145633932 478349499 842683100 161603647 986684742 227309442 517066871 575397417 784906322 256711775 505740908 269719305 428971125 301010399 618847095 190228750 403901631 240843861 39492912 232505007 478737413 905651221 79086901 673382271 305126876 803473661 111559634 771170386 213287131 922714351 705495437 103769226 474917815 164163916 952895397 936011749 686487373 504140120 715688762 283204547 367311600 776184415 494676634 70576671 58963397 126153205 923712481 110659816 950055681 570508979 954684556 134918883 261457838 687242623 104748845 401343004 681245613 110273975 244339656 585100719 711011262 847555164 522221977 713483152 114355832 396589208 300295025 710632777 38781108 845586879 875770728 752357564 522738594 254068861 788355742 720220309 873767813 507387323 108249879 104320406 507815362 431110444 175167337 730030421 409146098 406165816 757789111 101952016 982432902 601867360 409404361 543008583 362991528 116121076 646973958 428291665 102288121 74351717 930604599 92001653 853035927 984032820 600337214 24609353 771268029 346482731 979025393 884123612 720580523 675744365 870153195 340774761 634413443 440555021 784293700 762315433 256528071 409688066 556384291 573811134 640259516 982646870 574566368 879313830 410029454 868921431 91113841 821132931 64558949 453236893 490829438 593698198 199691023 699165686 699244826 31904385 542373282 818734160 902036794 740169280 6661797 623658480 843236361 237322351 350318476 215013688 196823966 767497179 34597451 817394762 538551766 737161373 604853393 880490982 964499754 618678633 394738925 625729108 186946612 619830185 781565328 41493779 85636542 943382909 768048548 261823232 642012456 169092718 760331338 971229356 102589493 836684141 543882768 722693827 607923286 245130939 584666029 608488747 566446320 47400045 870041841 954070813 195215338 576393979 458212118 388337817 248910892 504121712 23368814 489913460 808276296 772055737 863872325 779489528 286906340 689881322 592706481 237464506 773233652 525137619 811001747 406230948 259597522 862782613 998366159 675943077 857868890 494044356 614236031 36929420 686677517 412441938 179708677 191243549 351621354 55232011 256817402 378124689 110095660 963438365 283645529 599034655 299438661 834153240 220558995 549506170 501852941 212956285 349242318 152495850 613477403 414989229 929783456 56130841 663754237 367560766 849364136 473823569 454070995 517795441 686873078 301714201 500636022 837160076 144201968 464126608 749936569 133626009 125376052 797904850 625567289 839782328 298478392 254053079 659582112 513790016 544459607 961485648 819420004 50562453 41997392 52303167 771862047 919390511 136454452 995488388 58666243 936937905 137568872 531564433 782997845 644339461 499856127 979964266 116637266 915416343 290824560 460933363 150235461 341792539 823716611 799285568 493624657 122297669 818512683 817763331 513676794 989012735 241662966 735298752 285118841 169771304 976830427 655457963 158239740 639676398 254548977 498185941 981796323 609042506 709520788 745122645 715464208 27089323 992799366 439729414 512020103 136852057 477372280 292153157 894822495 303058101 69175411 405351448 254172996 451592184 558886862 943525122 483656604 631913423 906068768 938303456 743529923 649653431 882931828 433498845 475291041 404422250 496558525 427180360 743067899 918811154 592351857 929925718 574468575 786852646 853191013 171306114 431020754 585245517 510523761 925453053 460065422 92342231 360752319 24065529 372909516 553989599 69464029 380366026 303381123 741885635 834133758 133951030 385568811 753887292 731401411 992306875 888000607 865101318 101709592 942407395 482729833 249905651 543854590 674320244 983918885 206627425 433596717 506166279 963817121 34980588 102635925 958320284 21721210 461830393 388777548 233487030 583024759 236134599 41102524 982468850 317391669 323871427 2651456 290563636 231606 462284447 747680263 776815322 290038318 986651296 519548780 748228001 966278534 968720203 461150339 318585708 367389031 337206584 555937348 815905690 267405815 822450107 885812625 606483578 183146790 693103160 690319152 582026620 58336298 217489146 703290495 614458215 344901219 654980514 705768217 623499093 713604448 699765780 375508819 97839949 367657149 357955167 504271000 470222387 41443050 547001319 773320508 426791464 237538627 498300712 532579819 171753237 956831173 175779951 573738337 643966607 463320682 781961161 893832932 118247057 153325436 782318420 479009107 275674092 500135960 646935993 35681795 25152201 58490165 822428332 80972487 167955808 318833257 142818657 476241374 410513838 7036674 745887249 505432217 379351694 305833107 316281103 696923862 169530451 172881873 330038403 272654620 58774111 812182187 921413441 576028399 294992268 19602132 868837561 815381595 931385975 700416213 439792049 822311848 858170888 468551609 671589804 529750628 796075376 694367811 396935310 643335542 943503089 134014844 74311932 125951407 955529048 294358132 143777582 646390581 491781292 881659817 569741344 387312613 403501055 495330671 848702629 963950564 312106428 241982273 47088289 241137091 108498206 545489062 608089636 225986526 776445799 231150401 8416229 656093387 47441459 55457140 825143826 5905367 857801931 432479192 680892288 450123168 129541905 529747308 641591785 33823186 484265873 719335135 880699891 446750786 107058666 185407615 248698092 35972553 198765235 501549054 272850677 571980378 693476265 975750410 381257794 178580527 844279316 145055151 961138706 251197367 647521635 763105165 58887946 984338325 24419297 732889570 766549108 380271998 383555509 810662079 433118674 307407333 882826229 382976441 180415420 562204605 931032089 432540184 738944166 493131070 916975576 266844780 95042899 184172158 498101260 827027286 197175612 279197505 125413439 585883186 666355268 767426061 509018886 312690629 523569709 705392198 232848660 612447835 445067465 580195535 344373564 672709475 23892655 414808990 997629128 152991226 207868532 579284332 679516239 890517778 102697548 299812334 461962499 338738125 961217187 710477195 493626596 426667730 504459746 244544972 824588886 589993719 965989440 746973574 623468863 675306127 558480307 547310912 322245629 180751548 425608090 445430134 10831938 169088332 964217812 460531995 539815014 124507907 931690803 440918102 298449312 968435455 28265472 2267139 984688247 465801259 343875904 574042578 927164268 608349900 216378514 621963137 903930872 85565476 474618987 371822116 897182524 198327687 913265362 98675596 995225342 318496887 10827255 112499706 501045671 1801257 599831252 199600067 350701965 700125417 528144164 556698398 854219648 58903306 992221284 215015009 876280867 236602392 641678363 837528223 59818484 468123000 658803297 513821938 431022327 733309653 599547530 3934813 409930526 512296475 283600870 825212439 383780721 950765886 758979009 483888252 576714328 579337461 370540562 46035075 128625146 460529128 201047203 42814629 996159170 668253600 806503463 408045641 111560649 788034417 435028913 474736546 291202421 464845710 472931818 960694630 753414272 42349142 236965380 87094866 186122085 428918989 515488545 567952005 791486296 15642124 156582030 626188978 79818824 789195944 518841550 57603761 551414028 218842970 29983695 374406718 493167006 325888548 321174790 983371019 61056068 891636044 535366306 989016966 157744686 363732409 406384978 662257270 35129916 259363987 607719737 84639710 809216516 261377003 943138790 191564099 775192536 327331716 27300017 756290439 73687072 611038294 41311240 939130785 111147164 165658408 1621399 883333198 327037981 687345681 674052019 796679863 66886998 643591679 810654008 165516011 40221108 575799968 992497813 734329783 100778773 940211561 235350885 487196885 382683662 548165510 303401119 491520974 628720629 754466910 847060910 260477982 982534079 116906594 536815768 359572263 477919661 798402947 147643284 432349929 401915646 354828666 822562208 668744992 534768822 144796025 865706484 652175876 730765226 830082448 200243707 714613293 608785630 819479279 660154988 935433301 874039012 250197424 187111919 686532824 716658830 901359408 142915483 355249018 873690855 659402797 756890592 15378177 93220213 334738848 733772373 378002065 241408595 568125902 471833868 174083918 340669465 641150156 940191685 364428758 455897823 268601105 438371362 809977714 769239586 257138949 662855059 721528680 584156714 385877516 125070291 887213406 400435270 619348823 240126808 895504004 536569095 727339289 760385768 506801803 548394988 721706652 109803557 485782761 507156690 230429947 840790235 304097156 868902164 50857592 585709347 434907450 813859052 978373033 523425119 371317187 189405473 111016748 177356490 541690511 238930723 619002833 898889987 125413067 658104558 751116023 237820290 756809417 730673485 616459314 382549987 73426390 459502171 30723208 305918743 395365360 82039345 125631304 338106465 78488570 118370362 87871351 399960255 476136141 970379615 855358641 250260167 650894816 707957205 163015166 56849472 808457196 773415317 304013921 704374704 840795927 229306432 988161166 752407959 526353555 94658572 60436685 869585140 105253292 564763470 532793652 938638808 914256304 37732708 161308344 990193449 354018288 445281974 515023754 72539992 212613462 360380725 535314560 577963217 380975490 675556743 910146749 364184923 965111382 68429301 389170124 838676345 822701838 292137776 343241491 643175760 265830500 986004027 577578601 149597704 367846634 863964367 535159183 439887867 462443690 58536975 665437688 689776033 101728488 564637016 390114118 307753554 833235949 747741249 169271841 421555150 693911344 874044044 336318451 85115952 630591554 717794866 668923951 669537947 126619092 786242581 42270973 109041096 26400682 566060666 916671540 906024424 315063006 667705571 139399334 84229315 93088564 859467233 223583766 198385048 946000572 433367617 92521677 155219222 787140359 666718061 250601108 64643602 161867693 402197009 319803416 495645742 737002445 805916658 748808480 673055019 69743136 500926746 416060255 604475138 287312026 382170175 857140459 675881039 652110145 850031458 983295598 662932138 668169240 911337821 3439168 240803378 488536119 805555144 795349711 869578698 362756561 336713011 408100981 938135268 277516746 171051357 129401441 520083408 678854506 16572155 268769340 147099905 819339855 494736365 920085049 386144739 742431573 725891381 113259065 845873781 295156607 112060927 590421108 50926555 676468030 441986615 36491102 331956676 373427896 885701128 424182654 35854933 996010150 981208645 676794015 361642678 952640486 57779310 962407968 212214422 661162061 365023617 935011545 529503289 336094456 557452614 501834696 264907245 540688399 590413473 158090235 687397395 229331841 576020292 478901399 553543642 965240047 168254487 408114226 47335525 212114525 579706193 926570969 785108759 481986512 804089770 796739221 243026478 17137782 563768623 201668030 610825613 636903808 814756261 227695076 117023581 858883600 350960250 995382530 199920748 657438818 982448809 955966773 348917580 439318668 135805380 9644583 773245382 238842055 100089212 972508907 727926591 330465412 351171047 83811495 571082269 80592134 494607240 55042378 971486025 226226986 87534782 415712637 1616201 295393261 880726804 871576874 880005787 375414216 460876312 729424792 552428930 997865283 622952759 817743126 950727054 274496271 268121304 163592925 569650453 970566947 583049348 981781183 678322473 154031108 420892399 23076583 862091611 196795411 670298393 745063849 608372432 649386718 930291239 18391292 769997003 842706293 940143433 15661414 788091357 954144771 618294396 345043253 950680653 998767402 502039061 677380726 894922111 890951823 949795137 606607835 732759906 935123953 228446445 385938336 104008315 988580072 26927534 739665805 850789379 688076065 325817743 763114359 159820489 279001004 787415577 447957631 627150017 696592103 192565936 287929087 704100526 661229197 206499706 103132969 185230776 220983395 856262953 497291374 694871883 809231777 417822759 792339610 72076889 878065391 931281276 404345582 715379698 809860089 149189246 181188192 143309712 390367540 623175858 242678082 536202934 401531174 181259720 899930693 707523586 249292818 136311728 52738223 377703803 458658384 445563657 944854911 221048709 942904853 378886607 468597950 236733086 549840411 695072033 142803271 871217826 574073057 641642074 907077284 815025835 898589098 469610482 435857414 417557138 815332560 589327390 889409812 634956564 253324470 140094211 919844978 324198311 846986047 772664861 608918401 127488720 255990240 347139214 330893547 264990914 77656044 824776922 207629079 365210823 733610445 627550684 750915729 83518642 494727290 770862195 489737809 324617163 551942492 554070295 47948286 304666793 335560413 989976882 452427926 209662895 901722914 828775835 624468727 303408197 516082753 540218176 131849181 902976906 506373591 399965483 598535320 138569634 251420362 371933232 664124889 733736531 946356257 599643913 361073085 755307218 649011355 419517914 281989175 218065140 816025848 604837423 392534294 535683275 812626438 794856848 411591698 352750080 35698070 912948756 310821523 316863978 474612423 847687224 938325064 57133928 677940747 70402896 978041821 449009751 125031142 425998453 160862838 207826809 668569480 719127470 385490900 389675850 460013910 165503471 171999311 140789892 374951040 709685940 314795427 40787426 436203944 993345628 658222809 61274894 964104584 836440994 111049081 711622977 838522162 731602541 362660845 823724751 680288960 449860799 707030325 620365088 978960823 635173649 978508457 784342877 375199818 809738641 733118448 419010600 948752499 730914610 385055013 188034705 50344732 481139699 199870375 819237332 673030538 378923359 580843716 445993517 110784524 51285443 559178041 460499221 588987838 447219052 971520803 492157311 992681290 356655829 544618892 791979698 470485283 666838126 137690002 705736752 977823054 135832832 83987736 455976410 437164267 12175882 499627744 33939973 866667600 737953072 442651314 337347524 190826599 837382249 882170634 836570979 886126780 498516799 301725611 853573376 707518728 19271492 696459890 976029960 582375485 400104686 438994239 514143524 628505588 139820168 559061050 147845530 766800095 226625072 974087981 307142249 190021064 39726104 48018679 736092110 796614194 113915930 732437386 337117313 950273621 248040641 34637967 349457973 889237172 878941766 122150889 484667061 173733999 832248783 312444326 801639478 430763965 485965066 835052938 821261452 815981132 776034091 863474550 382271956 694542790 912134123 307512110 33087131 132606701 550533125 605176804 189369088 357847829 694629751 982910974 900289899 882943876 761107507 831794410 164339111 939561303 988017708 941017289 568993638 150882264 961416162 347889809 104620814 220874950 842990223 147814286 366637106 295591956 385414935 456979356 358617277 908372730 39141138 239525508 741406243 600769777 748477584 492943966 407056776 23848101 537235359 600650791 892770090 249252237 739952267 200230327 426689913 84088200 728070970 861245674 447944411 62192040 313461439 238390474 453153002 476495067 178210806 911106132 775962236 373968707 773269916 605588457 53744494 805402575 216438996 249632042 156091517 691377475 53518087 576836701 742903719 29649395 319420876 843199136 751139655 989151927 536295455 359127325 876721776 206211711 223305601 944575589 13469328 789566980 904249697 121928150 951312756 883581412 910114612 179425199 27582931 989673431 321449948 924046451 348354967 470622793 45454183 602396662 356141580 108330558 384302367 315200031 53712969 881140329 188677204 261476000 546885847 42131101 798360982 394629112 542236843 278351124 273622819 589126218 79497302 210832634 762056343 642287 197674591 844087707 769970133 717924112 16251208 855952864 211647002 880725007 130037238 47381428 924500861 646696817 418963315 366052006 38444890 715958259 940124356 37232460 837335224 295882257 143809713 753045157 945938325 634324214 149196117 974811896 251981727 778096975 431876396 906144602 67606116 606645449 207242587 177552644 199901735 224818964 120159612 950517017 329227699 567818778 876434552 641427156 491428262 572105130 888117798 161152426 586637866 904332714 468949202 774256138 393814737 765102103 98315611 970150534 49992261 596460805 886761863 898070902 947350621 170441286 876987311 588726078 216326290 712039487 660377195 645862299 254295774 669749816 431021785 202231252 190896416 254741852 405523561 562075920 31907971 264509619 583178995 811392375 228152055 984721911 814998509 619942573 913055790 852555861 331337336 649632871 507669722 380207388 325006542 890198320 593237814 712831447 603056321 952997326 761633402 754915482 921798199 713475614 410057019 814182561 823073091 904487078 450878949 203299624 266303504 609930191 337231201 199729579 272134694 709547986 432570750 373882005 523890756 127751206 578451472 743437256 325832127 912877994 987920800 919334376 967918983 180450737 185576122 828510978 224525904 742389903 809199479 788056479 444041403 541273562 557408501 624378562 933189761 112025424 756036288 385671714 976671313 230309782 688397412 310331463 481920081 757058700 719882820 645924347 176078789 542647333 8958965 152134637 50271708 289671070 366570329 183207042 356376483 641198356 113330697 470541484 403622340 184452631 316343290 549296035 340278889 129793510 945241507 571444981 171653145 695971642 39645717 484390026 224718718 866795262 943295797 828175821 15128655 989172167 731335898 345734638 365817373 20225501 224321347 230975477 704346204 306990776 945703171 714726829 722602495 91424464 96341237 562964598 227532148 316552805 930317927 109104803 937006060 613451408 925749991 337084571 929647657 503294523 325749585 26811560 266430163 11804502 307489524 606627478 191263787 863235882 4044628 131747611 419972216 336482333 605450106 705242679 678294693 693487881 564909864 412297174 175105215 543796752 450669331 929403366 434504901 435604328 813862121 99629162 752973601 955653646 239718960 252790489 269634301 117575872 271612924 524748380 423529918 443972334 404188338 448881166 203157317 108564257 710692255 915105807 316452866 437201141 614845387 708385551 777603754 259115548 648840615 384197197 705090305 292330977 253485501 566347869 366012706 868303829 626020475 963315111 216440954 150152532 323627213 372497460 297936438 64362542 696366960 754022639 707756199 449417120 914144297 688639115 697620503 322445243 519591523 666503614 15452156 587444274 907649380 433896760 580159116 265628933 48283229 617277914 767397940 485536972 932115062 25634297 202613336 875654119 65637043 300399600 67106683 628738014 177014292 425249849 24166866 201931513 700964090 462961632 994566055 996997092 659960179 373573891 247932868 877374552 273871727 722594123 924645237 43679985 277139431 652497037 960631478 736444615 378850663 747117587 482887299 984869382 116423603 55095271 125875671 251300765 811127261 853762083 447511954 65408155 452152931 936856569 29949755 609237416 186522837 963105910 569631702 148718376 496585984 891782504 829798369 206029535 578673866 809254321 106709530 100248399 386149985 100159454 356159966 25139923 379957435 310540328 328689190 542801569 752820374 653377098 437648976 754333628 979855849 938508755 455132846 771939877 89599076 58719412 326639166 988497294 563746638 620335478 580448899 523464456 901770588 666681792 100220668 922279755 448132124 936412741 14540143 85452243 432906245 960495485 570906940 173990184 766947757 105829746 793463495 145831498 460747618 689227949 85503150 470908107 465062682 712420575 832942255 972981832 138603253 760750362 687155729 231594792 864602124 149918179 733346076 642339406 12730107 704342200 750061216 778664179 310151936 842504260 414829701 623906119 419183904 77715135 797050764 842471761 971520425 263244203 786617205 438956674 100989659 756515413 285239157 186670537 287374473 486359446 464604430 262887010 120685326 711305179 76054634 812299603 216877297 237555028 323469957 396647857 757988881 690275447 733155403 241024609 138400542 280863086 271809205 712378226 192628261 687075849 582569112 117699503 587536506 911517832 682982081 263812703 532562735 53061178 396539924 137928139 571917629 295522171 655104956 412783280 584829718 387166465 143695664 686798142 591679725 412561790 112748466 433984947 897813094 907370450 739783460 709315990 72838237 537021084 649375160 852613808 275742867 994835868 912760688 811455833 230980883 933393231 749210718 667339757 588981535 204975314 68568117 861777866 535407732 533170710 157859677 6416303 514321806 666044483 181956128 199922043 857709791 266767690 962977336 157873967 458678812 115616549 363810851 509741359 831658990 427505990 775280655 598903484 141145078 104069583 109877955 299281647 699850486 364447359 252238577 126940847 334480338 550469886 885223182 247191058 416058495 96261122 976119722 136572141 832803199 71823633 299645777 24318520 583886256 824186172 618168266 199164566 610609041 413600621 872291456 835544152 614956721 416153108 510725980 350612319 144758119 611563228 315364755 163276004 751059122 701183122 426869423 339150446 222042485 170690890 567605024 728249623 183842602 589134506 241061692 338344284 409926486 994204638 913828439 985727947 529686052 219692105 335930645 63171265 188235572 135703968 939126585 145282506 586976570 361826519 477698183 259342483 380775026 128742286 842684765 223591835 850126715 300716674 906499208 416084695 295803114 204237456 84299102 951890084 759631812 49161589 199903187 69452617 384318169 755231123 169561868 898474129 181029168 494962849 454599866 940965548 83515645 567591069 520556125 899130733 187580533 205660804 396046766 103024362 751664127 670982080 962754461 391555144 862710733 286940169 782346608 183473538 112180168 777444843 429144249 459656147 353353680 608828916 655031977 466472896 777094037 297848069 185484399 211536511 472650268 293970868 570227840 359242806 153190360 297389051 855156331 802231310 549721727 939715808 85768168 27627806 972190404 556604038 666514491 705653289 61431750 385153844 949111394 444607057 567803053 221835006 776497362 771494933 693207803 558241826 748079494 204399786 195854391 284473971 572678129 945923729 367376012 825065847 313891554 233442117 398133048 747288700 745909823 670259363 289445839 430280081 287112938 405616137 71356078 971066419 142984384 526299316 777246709 723228959 871778296 598123608 855740084 570071342 735058887 623463985 40567827 403379428 519013017 548794476 505064984 937200723 753576885 178378919 182665386 990282013 383896316 952180730 186107597 897393501 634526908 779111998 864518981 64933843 35839914 138715758 979873812 865308323 508877830 228906990 93816769 884534558 999868073 378024113 82873500 51258052 720362335 545141091 817634807 521981407 642826440 726949515 63934356 294734326 208375259 538236673 228289011 799457778 412681143 197975167 924042271 420795789 404219711 26073551 655900878 130897111 511929832 461205542 362839784 555311129 628809486 453019973 301022198 164792156 615129151 776362016 308179139 879186097 495991244 933889158 51455152 129282461 944934875 491462369 630198683 926702575 413925922 599394723 419512513 822856289 488156902 300902569 51109869 157218887 499769676 809681392 544314341 296947569 729401934 574926293 574910653 887764391 70751425 475507074 832407385 551489009 66701104 277329683 609762616 292271176 453497972 765664149 918403031 205886062 365806720 435637853 759347215 847559301 742606881 704588391 972320420 389682975 70122579 883449809 709990582 513146946 876602910 813741524 516669732 929285019 8092451 33483283 922195279 473303007 600217456 63379368 117302872 992970985 392860739 442025016 782258819 93295326 457297283 636434029 41716537 249185954 788457988 452955449 168733814 597909844 798792599 940150915 339148248 958287318 9983778 729882438 292056568 470165289 460741770 686421863 902090283 981977746 143774640 916540870 95748910 796429171 257372541 834889733 94943352 72569642 923906409 15628093 856706548 286668850 860125923 600843346 159336898 760772333 272880450 678761462 406314687 194853416 558023328 239817895 213941869 260580852 259341987 350998692 706667180 485704314 254187157 340637178 154516815 342958092 96071410 490735213 852833071 577757240 364473439 251982485 104247283 66986130 267871294 568806116 796794437 218619468 596921138 201211367 916707888 363554769 756612593 800102781 371866301 410903163 470661558 606833797 893077206 525052378 121347703 421628021 844353301 663103530 678362575 888172245 354028751 674746503 78550981 102475665 752422333 109970902 791879011 402163151 502395644 542390234 378937710 939560525 177372960 701782978 373141080 762408856 108951665 477381 848267642 607605777 690397713 825075477 373264208 854453728 625169365 554199314 5440863 916448590 90876838 621999060 832633487 337229036 288534950 319821751 29880502 480767658 699335972 273721809 883410449 26219820 286413963 417635724 806979024 680422668 439840839 390704919 679324735 267759618 648171459 489122187 277024355 915717487 834496257 303628436 949737624 48527890 175445491 737971615 453375995 677870929 428557382 451069563 335963463 156753135 803672369 429248692 614130674 315103151 774408955 151204455 317774210 577499234 197997228 139054426 269537954 73144394 972668411 448780237 430570665 988745241 195383916 442653691 343747711 760500466 233284756 508587390 137994384 841345757 103761040 442881224 49498517 570456104 742051965 249395371 836946786 538652239 199367328 866296180 399964672 153017285 213663157 694507528 177777981 908034124 630173347 454994597 161629365 825047319 527155989 175738423 440168154 218177930 348362375 676263638 571489079 661162349 263121723 200907820 248139170 180503339 299384818 402873759 514925059 206610436 678464186 994220608 873806909 503903344 13399484 596183017 786426502 718220915 381891518 170252241 196759266 887327034 726669213 599808370 304306228 542602888 824727710 685942604 66556515 994517787 357372654 82547231 11620272 348310451 245708087 904770927 811329519 885194426 558068985 822671581 372012623 805571111 766130345 906782333 457327884 491899172 191867527 621560884 499235821 751298703 195030069 821762591 238950626 963399846 740471571 867662966 641151569 264047012 69872865 42004320 868177859 807368618 893231430 952478765 109740022 336976212 483202689 129810080 170617569 744352001 407974921 586384699 154081761 577868029 839208958 826981887 841973778 464890263 269455857 581285416 644055270 265205882 490816607 685154286 341911390 452669153 76626079 286019680 847135451 398572812 850590243 337320576 183064220 187663054 975394392 281180886 707673038 447876854 867439176 369161846 155874936 376810875 652931058 180218621 785883114 72211276 622168865 931389136 874563857 867846061 182903930 696138286 260301712 200808220 471677546 579475456 215190817 647917922 547493503 362703390 36703957 463896185 313057837 810415860 243881455 812896833 534273092 611001075 59209921 476160015 810758087 568584905 958409018 756417008 137748796 178432981 436679506 258206600 557562698 607874581 751288862 530742556 624735485 55591961 160620018 628480811 468439822 487151383 623331350 289758601 621860000 741281112 637964297 571002223 574400157 104711610 827752340 316337175 682027498 172523305 914688226 441687084 196046838 545504536 615046338 589133690 646789640 522340311 442848615 129167117 680649956 660250596 894439861 714918751 444062603 931028082 139571674 919703534 347518962 85917963 707343227 884590999 549362183 371782814 506996875 748061680 868415561 184198871 602602119 205678759 473370210 245554714 841498855 109751995 222469746 707036719 412268234 18536048 841909305 429944785 183885938 130644295 529617846 619189852 309641892 759012031 645920519 97251220 372382234 81143540 715415289 119140612 155981689 461188955 956905237 408447089 212335520 23404232 599808965 770254195 182486356 825951653 92985106 312726538 674940840 202414171 457391459 967553155 233267182 112639079 282722390 421220773 231405077 339480431 3529180 676927198 592466354 472537888 7168672 668542153 85782279 931187458 620948160 579435293 526598006 280868513 377220595 519754621 167961977 802790567 884634334 375165957 655147337 472113226 698349102 865640809 309159855 922981029 753288379 558982693 828644882 914387163 250901993 5675322 236956367 130212434 661177204 322855275 627222271 422203058 431177234 31001525 19439909 177039595 565070087 235768084 56698725 571821849 408847920 722986534 687012214 545563554 960858037 699323452 19386492 196765791 351356098 272395871 8122931 258393134 449801765 838310483 726763956 986282554 944424637 246345886 647561253 474505927 769415647 188975417 481405170 235342331 406143152 274150326 791995680 992921674 238001644 277402859 493522203 917298147 909731222 451380644 214344812 356498743 798738441 966341133 808510561 552736320 971435550 212931854 137785624 608733948 801687070 482456457 531985807 709010042 605366975 494533227 61808052 344124556 847422650 218468903 585753834 145455403 681418518 35888006 418456794 115342419 10154581 696842853 593981759 183232788 965579749 276184267 569815407 214982224 904529162 375214396 110906915 197395161 407869582 835762423 513377138 776082037 318776671 114388072 688679295 376686823 947133450 857444977 291545184 786528300 663691511 394026988 425350814 70126976 937660636 446241624 667924785 485039876 341333973 167406274 787110132 28032291 802935523 973226719 950535323 595868300 916039382 676027674 200417587 286230211 770809809 826873907 296424312 900051737 777085577 856921585 959044900 778685416 35820453 316515973 830812624 500035770 623073769 396842485 781598475 168408481 921291621 923058007 340938423 128945128 747367270 613376571 904439655 341850443 815931410 679261298 163658606 178570100 250035937 631457324 310452550 718102893 768148429 271576643 827812634 667395653 792519465 455029401 454729668 938706732 717844312 71122003 674027023 560181821 760607746 807657653 691265937 642784731 55723454 629016385 470298546 71553006 767367062 550405800 944812559 800586703 911223712 397977807 197999576 604350708 731282408 497000061 710458401 184289559 208696864 824463060 105811853 630913060 861974906 204554779 11075469 7476700 104942457 739868894 189255967 270646623 479461419 269095376 439890453 116713873 673229014 103897492 528235592 429937572 445736649 248800718 922313015 621607109 364749315 263503437 162603390 285345772 312278594 514049340 198140447 156942537 611936146 728922882 684788352 66951609 211588908 873991245 777582504 854000614 591468452 450379695 334083867 141789014 77909622 96680835 292480532 317892151 832718946 297531987 672186041 119047617 16871888 322148213 803628610 852568335 634319112 97293556 465061181 497802225 839636650 986215123 108867924 858612472 272370071 412004462 190641695 729072993 150786450 351750918 367698562 746789207 610590335 489826681 197570292 271157840 892589361 202069183 969045273 148606194 482034111 8467337 188490561 646052815 107786524 916010313 226186503 713420771 264708992 714602880 829232254 966238861 45965058 379868049 586816510 457217136 8999191 208761529 547747893 182905982 83678961 269925387 939898740 466510842 675319597 58713134 69286354 427762489 4647646 368508502 633040050 590855719 801094797 753732874 263560275 97528921 739251513 874973732 155598538 405775735 20406476 721413054 627525709 466737393 201754185 940241096 95415948 617020982 387266294 137233781 171987346 536748214 619690066 337333812 233785221 459127600 70300501 181885952 413908628 362519621 177398745 455892996 524576156 167569520 240904694 558197755 963833744 357239543 282918363 496633917 508446295 645717650 482330593 119002714 645673764 613787645 614357395 611503561 824636418 446799045 459163256 432441283 836636939 754746934 792825709 661038293 479757197 692768883 481001589 361820966 959661347 827748099 428669353 234672338 26970280 714597757 445140043 522291572 753669614 613566721 197667491 231947158 808376331 325902751 654613627 945258775 376380750 547173361 374736586 476389776 992137178 766622310 909030651 614733129 788143595 932353265 687456971 198977293 963269537 878708637 931705613 220908150 521169879 754366366 288664695 613931387 42429376 458027690 918077032 41572258 855918668 53796427 456013384 677666217 970633219 68158574 858885516 834925546 125045926 335110294 596131834 182919550 449012915 988560704 641284221 621190717 221359214 642398440 740548984 939391051 596223971 542017027 548013346 538881343 50932624 473613791 885647199 11997764 360308443 884319856 460511831 778275553 256142234 252070020 1696595 40420660 912247977 220629156 545678362 331407818 781694820 741364942 788605728 41164246 741919494 518695667 823647511 10380948 199628205 765510595 531684287 344751924 408167416 251887337 781935251 410559400 446475799 527704704 694153819 38711747 992364852 232947282 755963361 654111354 819331674 167015440 44356296 153546391 350567825 341728245 44227838 40764542 54974189 481026549 63303896 450878224 476212037 855310091 443523165 612922787 95260877 585436258 753923163 776913041 372392112 339352229 420797742 616361648 946749459 919125159 843776809 966404954 315609595 357006079 597479717 182972305 590003205 50054624 116121391 959505395 191081437 908956085 88747578 636581920 332409563 111694294 748694801 240357970 936425367 175602397 45408565 233876161 708713401 644282910 951833879 827556785 58441847 686358982 525445444 449521349 849466571 357851998 940500431 247017022 572904795 930241901 118911812 704239385 559144763 789897201 959301569 881373560 736297079 644220380 519329901 125976038 580135248 756252505 729515108 482222390 945952257 235854035 363667595 951836003 469481155 41570182 361279591 60700347 235459782 686365170 353811885 431976453 32613165 385270165 549052707 112480686 164565441 733440141 196481830 819381251 92435383 776471192 841113813 940027434 731883664 36325181 775827325 847069297 27027800 176408103 620810150 269929020 413579016 3672733 796172367 86343079 459046552 606800729 400353570 978432444 524955190 21783801 896704081 847683107 377666004 882038892 644613417 317071183 816466947 476573892 434826997 217445888 788659393 46378086 250845475 352149702 26379890 441765176 490693389 12502112 12912187 131346675 436064062 41737251 668818751 901131268 723410902 100719298 912495473 23054639 617368647 604901790 800397556 940651401 932606442 180528272 251517049 350820646 385463736 859299129 236797292 326229631 225162583 638125531 129457124 83899724 190491171 107621605 917116225 217103108 335518492 968403683 108034866 617122534 803833258 225087957 852504046 943601536 353390646 962822815 976646161 861630210 655801099 716852835 408987152 104020298 771718655 365853922 324280336 802606187 518605221 679753220 571941069 675273326 457017555 636167760 753971256 281487543 176747238 550990423 179599152 771379225 166049445 574275928 642048517 976806939 745134157 817694019 506171948 866526981 462219052 795982332 175676228 171830065 249183822 868038716 129534896 544513243 390234420 643479977 930763041 528641339 995662261 552702910 237103767 993923256 121574201 358966557 304465253 201421881 63749692 704519802 452209082 586155002 235997919 108561516 742383364 338823020 752845241 470371528 830773612 250413609 238879042 46752369 62752081 700434480 501711197 101266805 714087133 224479768 713209027 381521015 79672484 219178842 453671321 493668275 864177302 306412627 498128561 23334306 669883189 693256995 715166582 435066895 343107563 451104622 753057162 118574601 391155844 392999625 516836248 803733222 440481698 915471993 953468783 472566134 173766230 530378930 732899623 978026443 350293879 569770212 415686300 913835818 642806301 278816513 771631220 423211803 9534587 132739490 758967733 213146722 339264513 772808886 479453690 612490463 2160507 161659572 656261622 322501134 10290452 951671727 402970064 873935143 306992862 556082612 986646791 691082553 822363027 218791257 52619782 515005190 302869323 103116713 893947614 534113898 128140751 954839477 45621399 755544248 295016890 366232280 421748982 926947886 622342324 363142385 112087678 912800640 670118972 970651533 446527461 152247252 738318839 473299316 240272238 92098148 628056234 171887055 65933436 426027336 895093194 232611592 928718116 138494240 842461408 991714901 589039664 735278282 408584788 141109540 326988966 698797196 246943416 519204721 806280072 932252466 742468476 434861003 655372332 317089089 710317315 970738257 189606237 43858765 939702997 944116399 917386225 86443445 466547693 637009149 992874351 75987489 541802386 477101878 290820853 666083558 634191331 526119107 418604458 441268999 549379877 924790187 162254272 764152524 550641395 459880766 511924709 596936658 682683931 725673392 362119981 697404202 812888260 986863258 769735923 542638858 140880446 651238238 996380571 900062735 843970314 946221142 558097119 34090630 544386250 801437679 310447756 641774289 489849050 185177379 30179310 354316018 774584553 700324958 134510987 320424829 247155673 722373260 987330998 601842459 211370232 588220737 920894556 258708628 633310587 177943394 624793025 317224687 176795598 801283638 51940249 504490904 373808030 277182319 64668042 200972037 18163602 498759463 399788545 18231796 205671817 444549979 234461113 374494911 947846137 698514537 834557524 788122778 455024816 21546688 350867524 441619212 786551366 190406104 162939120 297412841 933091315 620111177 991793518 875513297 659387218 885653502 524805207 642533097 825050383 960170282 335549508 483158656 337818585 209066788 278839432 548120079 820113708 21538536 881518203 136270815 568148221 552834993 396192947 974374624 554500724 60425680 251284930 347695525 612018202 462737240 198416212 961842195 405756040 776755104 53670562 326321183 426320335 193321460 44991716 851613442 344627749 77638419 64864947 254550473 577717134 849259801 659255851 864035468 469168379 116783050 196825458 344666827 952884033 741569743 243080225 654924462 380631691 221213301 89265425 582493253 439230335 595248871 942262129 986612843 514600783 443806854 310840664 768073553 232450311 332501169 21933220 858627601 494745701 861776743 53570575 181007988 771289635 630675819 55263868 973588511 341545787 275201549 99664971 825815256 777329575 265733520 896450469 666859970 521564682 544230740 230782495 473652870 384883348 683571100 405500297 418269567 891578398 57014873 116554563 548134549 280151579 183138998 872514024 915406051 969931684 704195378 764702791 298354238 149577871 763326647 777674911 475894195 100898630 146879727 98908912 810382116 524825719 772437044 997717375 266834380 386971184 382167823 482174151 906620681 33287964 527414809 250396617 770654507 981503023 821478837 875567242 299169343 275789777 768950919 357847407 885690298 985482212 104331557 343998846 323233124 586628680 651605642 916588554 314106152 639478887 671135428 314778173 98524840 934253817 967381701 735876802 957959847 994514926 289994589 317227749 837267629 8785420 332388215 976894242 355217380 531331220 245784074 349468121 772166130 255097091 803288225 771613022 538335525 140435271 377005777 826271835 46513767 645772440 524958519 726167716 27104165 856197085 515250204 330382162 147490983 996875793 627330889 663567754 613898571 83946531 895193858 127637317 413592926 649314610 588771732 220943371 659829612 981526503 293641404 437487796 374919782 127443808 419495406 205431328 437918515 19858409 963501396 902710196 611463903 699626124 211760266 537016695 171187485 5952189 720696613 924540594 274561533 415752656 742023292 598491700 865468144 436306964 758632909 580657310 161967969 836666427 471815975 824409704 276418235 771064796 111759605 869249975 899895717 831411759 37266264 19683882 715024805 834994922 797197283 206226008 671309300 235162227 823031273 162846586 201985045 99059595 822452736 148088472 795940055 745436835 644255102 590095159 513482110 995461734 961282132 71202233 11717005 812464812 482108180 514148362 498694978 704582658 113920405 778515274 344677958 12040446 912990582 784751929 536383345 436147673 861845997 477799033 801404485 412627397 911604071 435629939 782581181 412723195 127897565 513982568 70589078 9893889 214959222 277266260 773713903 363650783 749850141 332657350 342410076 263111010 703740172 937427064 835090913 258559838 236273938 313696704 969949938 370001542 958781850 839751023 727200224 74521058 255589870 583952917 913139697 923912624 111399413 225751651 179026678 569910855 269862614 630824811 453011 199770762 160091827 946163464 370464523 192356604 232581154 844563489 687352622 252705750 749305436 669000243 477104199 506170313 290243745 535398630 535926384 573584267 627051964 487680608 147715460 411165039 808634457 704889480 102915639 141939147 983639299 773168302 944860487 918878822 337975067 543527324 802527838 837925202 49491152 369690069 327804211 793676382 405317565 126648360 588037834 188465634 890596143 925570568 114247220 736676004 976362801 812235885 429544355 839146543 463800648 871337641 586139896 676162211 424605951 121796975 383566906 63902591 346638470 74534986 283072090 809954641 798338561 820148135 558444345 664403708 693932320 874382513 793589407 931587047 95278794 721682699 637565823 173664224 261614625 796890707 803959238 919146952 253266135 811775383 370699189 626206147 137587446 816357006 446269182 174858498 774465553 467884536 205365305 438985833 119377027 184105205 366974583 978018909 504369910 59473908 661784812 268168260 20914025 789289859 700345986 903354197 19697023 885686694 489648075 869970454 179737252 389646530 49653680 642763237 290805769 534839237 837596408 539218864 912902966 410126538 196437791 462384516 656751985 672048609 577895336 145944607 482316004 930260904 346134461 558252913 311097660 656593816 971404250 613133671 603741279 536375418 188014318 979300424 491753128 796456053 607801686 758493945 368618622 370702522 371342415 774590279 140513805 696745800 614493184 702571131 934947999 366886996 999455500 568273345 656638933 402102618 130976716 246784477 219474044 542400145 175094006 574277558 725574325 950586693 294882519 156665769 336863769 207277309 882211422 64242164 826011363 737954250 314172069 860872251 120444929 202028407 170354859 547042127 148656515 239664431 4135652 289515148 783463561 404553103 712418620 101055730 523119778 803849252 149162752 389590502 355454756 123139366 891901353 220997804 107791262 563474046 603688362 780622787 212015793 969371725 520201348 432577116 463303870 22968876 628133298 277081911 752142493 95970439 752243978 857830972 72376373 503563590 417677689 490671830 928873715 159578969 320002123 744338383 406560705 592749625 585065002 263041745 853317148 853042017 710603269 179111301 973250821 116666414 245720417 901554509 828648358 264613527 232546646 935904702 860709051 68728577 903613991 384499082 748593083 454908239 678140626 312397825 882295349 758202139 733155689 969626421 177635278 610149368 552448220 98048530 894465816 970206501 224305055 590209222 481881934 725721237 129576077 81115269 379028047 801745816 642500174 92620130 178625963 192973932 838373127 124943248 575419199 390634480 849343059 22819039 450242656 563950171 586731994 565086980 113642618 560908519 450578793 386602563 203450286 322190390 652968040 421372055 518019665 691554553 837516825 129676934 572738873 462172749 254785124 453765097 916813513 731676994 221968846 263761461 574619387 239621254 121355474 130125364 854296722 338017407 542071073 804253781 560058089 688297300 757131485 276756056 685022716 328039601 372019314 670832725 477010713 201599729 103323655 864199595 527620575 219551604 477521287 560963442 914039476 409600970 474620507 50834956 176818231 399266509 44508595 139593339 357528411 571918708 783190574 726729760 206574870 396981285 830561485 733081280 276265363 103318214 639054769 916369497 959643926 194070959 850394514 831204291 193447115 537239391 137077413 170923089 345329427 35293310 342552829 746709326 633642564 802186008 637940203 169493782 993464765 113165603 953987137 938915030 273203824 310507212 532415700 551664206 270175570 393209502 21081308 387930819 631889808 260462887 973444279 505782425 662059619 298433191 72661281 43267390 539511334 319853495 603030134 221983691 393076374 872078467 380154892 567575085 689444728 850607399 499606208 789695303 136727250 14584307 127308100 831823449 807028825 949400771 765135584 351720284 684270642 336465310 832593857 255380382 878119587 732896920 187864497 894768762 409132978 321595724 219953432 964698859 42408598 658492660 919018414 672051084 356380727 195639346 181832003 230250593 724149933 598027838 47822727 451522937 58051324 87863040 816519034 299339570 645244867 2228395 830735677 151591529 619640912 624959056 321310274 948446089 402444715 968811606 809079187 719128085 58449918 58401878 875639965 912527213 978679008 568388661 454555095 313773164 194679444 878336060 676631826 564641838 436960081 108623521 685414096 106609341 280649383 33394163 137775608 189467822 842838588 988063344 101518395 295246709 892983377 137935809 716312420 769837582 1039108 79156679 677494686 429093554 862119563 615389029 853571055 534210388 245803087 356786544 535187387 108119010 367608497 778492434 227305452 639790918 625746609 752484884 117864655 247771587 3383374 565118999 801761575 452617239 854437888 52821623 927398460 342564385 92550524 519045495 385269774 17393247 711192443 874604014 111631331 340514531 350047545 878853569 726831805 414394083 250746996 379694952 799580384 934533125 444042162 741700572 445293147 91623004 940665331 872474477 445812888 947810202 740275852 444524859 149321511 961703456 952019795 838405896 435534345 215642768 477752690 634987429 304495818 616544656 759890178 902130691 151885184 615877489 234801692 62408232 888614314 417879320 379882583 530286575 208511581 674078791 433517065 322626357 794696001 866036543 467202721 114986938 194255034 948735469 130118061 275448183 676797204 461150592 632229671 487730951 47329863 543221307 222069705 620450422 417559796 149558067 403298481 87160824 940380279 726637276 47960663 295707244 353671060 143125934 415721076 85445085 413254663 706046833 137617543 836053421 563526549 590459263 687478465 859716637 960518459 750265457 738539736 963158574 407467350 873740311 43280326 640809831 848907571 581484614 729648898 621008720 802275292 707815527 226105429 489970932 89225229 949965994 583626067 659663145 288716373 358941783 571818664 369829989 698039118 504673316 929409198 1598927 600041134 366636399 50969395 908765268 489669536 371935544 667784538 632843569 799706218 624060383 685053082 911380417 813829027 329737219 342122443 359273014 288185050 459406060 972306368 180226838 867611988 197821075 49179213 942140242 212754976 111195559 763336528 688161513 529164044 150202023 604938719 623261950 27924797 901245232 317456855 520679707 50010372 730896443 55230373 986568775 947337542 939660373 459409143 955479337 794730164 107883335 951202424 579696412 56937105 832656221 429569253 426426055 327249049 422641124 992306103 634833453 258338492 720977275 826172841 392765897 781132943 56629821 306911927 966571896 462679369 13534718 31761572 63145983 493152893 686107592 711948120 816261409 657135459 955069571 789787767 795352441 966347080 417985869 715943245 267280462 10438445 572296773 949953895 679332380 793890175 287486916 578884821 902197280 903351462 202373552 883428295 765307692 836225715 440121060 229975885 724176592 681830355 436702360 747722787 280238693 221222591 753875509 102521153 566133710 545871569 622328667 804102949 364372517 702986126 263809466 203003964 242206473 647777716 795219085 962075296 466750941 128529807 283711883 985544590 485248782 522154214 763958926 714479124 806947934 751999646 896918929 266504278 507148279 617509326 928415631 512882896 258160734 589868529 22871418 357047136 472309904 781643227 201313599 894746930 62565947 154819445 200855908 375215810 98229115 435404979 290543906 435593171 896613962 299975342 963983795 466208233 414959124 779580322 776165212 530258509 918744130 279167442 934500810 267347375 203070809 537857379 198460157 20916483 43776616 642959348 680388458 552325836 538749078 335692233 559869583 190937559 279253022 330217988 481688055 562734909 305743376 532954320 424845255 167729622 85338028 728066416 659905428 71244623 711200182 449445932 890075033 288679341 55634714 120895726 491825346 32851844 276030168 166545134 994351584 119698053 788670311 641401257 567595283 198058429 182083579 2126092 473892279 561252906 252435866 352837445 990359870 617584886 215776795 951594466 942592058 641260608 971895615 981528508 540137673 435163799 417681604 948675137 529179749 938676656 228939795 222185470 265973924 967473644 66894067 309811471 726281615 87525709 266151822 515469609 777218663 684397687 801781740 432868338 220930171 32623281 631078608 649135701 425343767 734202726 487298556 192869111 334850706 844784279 963107527 203250738 23845806 478923265 194645261 571651717 436762804 537824624 339269405 835281391 746074362 490835346 989012183 93151805 116098183 749759952 444911003 499472716 994405758 94083366 831631219 673720514 708839515 645533728 89826891 429242750 45940068 698914418 242592279 49450271 81892498 535157530 447279204 979481969 639706268 307119391 357655523 23897197 321526609 242334015 40792698 33709031 823933414 76737495 753132061 590789238 939640963 117030888 577391261 552212393 700988794 20226723 294303656 172063239 937679113 478785100 916434415 442409126 5552907 595672423 364928119 713942534 124144519 228967948 285198093 552660922 244397071 621367122 690114867 996907320 327734499 147501723 257064799 787388406 957796337 579144554 21804317 700698295 697697635 708842004 723528461 710334555 231651552 392182114 176303240 749425323 901106360 917158048 808444694 689892367 992034636 658615502 811601218 982588842 527963314 393395991 726004255 752848370 200138267 177866972 756071600 418824618 734385355 344811554 113572275 905570399 2407909 455350166 617081780 998410512 192323809 715448960 900451079 914060705 746364953 671698233 672931041 29037163 845940495 686578249 314631871 893039347 826200106 174412583 161264133 479314652 714708255 32873680 563497292 784812570 335059114 261910025 923398844 343215553 668547160 579220185 401198442 520219677 490601025 799056358 60918910 85792315 10034474 716437960 128826792 119109489 181975415 903480153 888635621 752667649 702366780 267302390 503384382 84265898 207165216 580964013 753860780 96296996 675453493 836873267 477334393 648847817 295332905 599720710 934215439 836831934 305190164 478236022 158644562 935159605 208198728 951879795 651989424 223912278 29122210 971498579 58702535 963156018 491529091 761911402 494959450 611134317 604180248 593872978 418519636 248038830 627619739 131062079 123816655 584330164 714624777 314343200 182938629 831537767 76315794 722656551 948565520 867613192 528667741 623914381 210557688 777298400 477027534 366388489 698376533 485310918 968763753 416844152 27594500 140752655 75834073 127998175 20032206 314308178 377665786 705780376 287285538 845249583 81513631 724308586 74575846 758371093 64085588 135097530 852603419 643355088 710794684 919613546 899750247 83444101 512154433 23790040 970241274 272591904 782955184 226704995 230870298 340661546 238431580 657280164 207222893 441743122 407469340 18568073 478423053 475262268 324976243 974867483 116898935 314911371 869329730 31686091 278538922 766864009 467962052 833729579 960687256 341293868 903878894 410149034 478936593 495984740 764528813 251046782 934698671 971116186 819050657 195422908 570731672 38910626 876918415 768861727 39989325 277047601 385090782 761756335 8041715 481424480 422561486 478418280 84738387 546950752 565071083 675046630 210977047 8561944 52813185 840235679 583223550 29539948 47076987 473039702 578915980 847066917 246011076 159421715 925065953 709145393 401371392 72434184 787635871 734565159 416297331 310962310 441047868 609964426 235289419 2239058 482736473 794755521 744234387 843218845 144668085 671688881 56620086 527207007 924125858 303728193 467685180 736827559 447460032 610458373 836682583 951742627 472055177 994908619 556337030 116867051 441799341 946539007 775680050 261206191 23068312 407099446 466771610 756272012 240904991 761149297 742533745 785039959 903938664 989268384 608477084 501658755 978431589 204290024 138157563 98495922 311911888 683603894 42759636 2803313 266895155 201230144 745732459 775488994 709384247 92867380 820831634 308619693 95726840 560084681 944773573 704940107 940672702 635371733 478616948 264074225 519018174 108384548 370199318 8322508 840556355 710057771 438057492 810045 422452855 30426836 548834459 309450778 240161597 242328833 502006835 707260108 40120673 658790077 225601173 173113568 71672889 973252884 157367838 234730695 458320971 194786173 13011662 488014953 171758895 506301217 325050348 745786244 304362511 293542559 68355784 274853813 806008273 169196438 386398439 205018313 767500365 607365571 773135339 389932557 962996572 322963688 236614567 264571763 594859995 79131502 103653538 270290762 824771231 277187766 957619802 91021983 932493354 94402698 905927850 369209685 660458030 30060208 770156643 987770294 145238942 449403646 504192285 581465182 391931855 949439848 632441457 453022938 474185233 240321854 493425876 85080985 999288212 773323767 142528354 51604104 295722071 592720710 965831935 581772713 455358299 99922408 932026704 432945086 518554861 439324999 809778552 460966825 406788774 711899875 83480374 585255538 844626159 125919500 827495097 614978471 562144285 962381603 580698112 594672455 635520713 754954657 955849291 525288814 768204606 798269825 949516540 36153664 524514531 583992182 571525782 121670603 910985744 373513781 318570461 94785589 9266708 34475615 482709078 777979509 349336316 789248942 231011933 297545150 329462656 845987798 992659676 446337001 277585549 971534190 904022955 161195663 395141310 55914669 501759716 881082450 840506375 481082352 144003433 612560599 56869433 512329100 553372595 744873550 376841903 836212719 580178235 233142537 156841011 109510575 529109967 560496586 692277927 983910747 552977568 980301336 492861108 220641507 741595341 393023173 873734566 633748430 514848219 642152137 31594010 383276609 46509886 952849634 528840324 130284268 901019381 893468001 673318487 985052609 970461349 449639714 60757352 685399542 241116699 45250788 171090500 442015334 395386039 169527603 418839596 904849749 724052717 434081155 203925883 223069751 911657595 535453999 672307239 211443736 845923007 639459344 889298895 713404276 777996073 508815399 542576504 139105859 903229864 932578530 90424664 401555814 939165007 340081640 398205438 218790776 978068308 982371782 522189203 587614451 379783391 705260189 935821436 979286742 192203461 44049946 25825875 870230200 352306725 206449979 454508650 447024946 741642132 477487351 25843195 120754742 339286350 557675452 844133972 812348258 821718995 666611732 294379426 284800121 640452901 44301047 669353279 889376626 349221787 424025241 18937247 197978927 854727478 804236012 453052599 256173997 416985897 14281028 31155394 285791454 470486647 569290950 326268949 264219064 168973255 80090867 486870945 201717946 73351585 349638520 327684163 822340404 106412898 859050270 676210571 397218510 231350052 210675712 962507443 997857035 32495984 502311064 92374476 256867793 9003102 365957254 170552030 491883199 295152752 101472724 134514973 505022773 523003395 978250447 743721985 485897538 721105810 767109011 793939615 688674644 425375840 485579499 968472244 287257680 644995614 422091030 61705171 60277473 855494625 747104954 452895410 841472596 914695165 221485095 646528367 378396705 234216289 797425525 642707632 628886865 366072049 301149381 2492155 140804394 775743492 613247079 422092377 143916413 700959176 880241192 422269064 3600647 672725877 119656139 906329853 895188945 532077771 256761093 199006303 881810463 939116976 721241103 818191973 469961935 848180696 989955290 213404187 672349981 69158698 403205178 387078807 655185496 867028291 543132613 898450893 449089333 432399906 248464861 421859964 691691344 299596879 692920329 210475328 53772759 846395484 841905709 536084502 100392744 218650205 511321708 469858100 356917543 122237044 239831243 611879926 124312371 487243549 880732300 730753794 448910117 426757818 496832771 44549221 916324539 101374913 781842515 852075278 636594769 111937924 611768696 288324169 850832469 976019184 383236799 248318163 514065000 564933254 629889545 547656645 311811729 364205955 458336426 637767229 510813544 596120049 146927689 793466904 68273158 749964897 196759667 212498951 816349827 220580224 544444334 458314733 82607239 372688722 986109397 668204427 619924957 44773017 236883167 332500913 806320996 372940761 850246743 204818894 867297801 204609347 352732657 694192612 900335958 909334964 873197304 408686079 17951581 687450558 116671783 306377054 543152373 560946275 486347049 311993304 430434048 316616063 301292729 154652932 631061248 344346646 519351732 545195548 572211226 286534913 409974324 831854805 312319055 162308120 911562701 872004453 216050096 280331717 724998921 70084299 659485265 204784904 618493271 391677074 173280397 835088314 868447351 553345421 336256427 7621730 704163447 636486201 146290162 491536690 314088273 970927264 156981001 172370275 71392358 963672522 44071021 473091700 636312507 783675249 119353280 461514476 426835560 519308802 726819353 624121890 786716563 585582218 451149740 477651666 240473381 391515372 14579702 904336939 832244499 48703040 822467301 897894946 327716310 427451870 659196678 812258981 270510185 698174144 553777774 960126000 184697359 114290302 283732288 137875187 153785899 580865324 626983900 705692126 620629793 450966772 977274363 300047790 326904775 166312040 500977318 306212788 120129142 393184695 203638374 574510616 585067569 566070176 765322121 102700712 794526657 277196744 778735928 105271491 375314896 747431958 622685496 531998698 730458293 247953553 421066652 834150668 267777851 642663620 395524282 609833112 794719300 309403140 899482321 255930381 684218088 644203676 426118246 533044876 65763845 816162828 988590173 830321690 336751446 633354476 236601305 407661803 277334329 79099968 633039178 429033049 789526452 85673742 798288182 231523773 954065388 791208679 334924389 950524082 997829505 768113245 88875147 678469700 425692807 946422691 734607349 858674536 607988783 390570582 347445350 166879857 979705572 747317556 19163325 498914573 341680923 58888743 217056676 486943222 966571069 616528845 649405965 790548520 716076989 627519448 438988885 542523471 393067513 447105318 328599998 239721378 226972258 193241189 864190778 679948692 975952664 229905287 817597111 84288052 630224232 106982502 39772031 730110930 90311485 252096855 534635003 156357328 759567077 70438320 746683875 579243559 329623242 309025836 735124296 694589342 509438164 45348425 683925406 372009074 990450525 505786033 447396084 624755793 872903388 403495467 102548051 873489903 158975175 986428655 797360328 398134938 960572960 120444097 362166666 136173231 172319470 257151570 616053296 940590262 224055400 615261644 135323632 102547576 872806323 470706987 998454910 330463744 521810532 934882251 712101728 606746277 937380447 204199302 224395614 328379575 845316807 636881133 352346987 822944196 35839390 845176574 760425572 129731584 269042649 94045300 828887431 52581629 673565889 790818109 621040132 313450173 17671 207572278 734883322 37635378 890992458 879165045 879582476 832407405 831953861 49028087 961756571 280606827 477248785 778814177 998832176 567227695 830286718 531385855 940002054 534911699 90901852 493317131 804535391 733249629 730384764 632208843 254158703 291801035 866690312 633967669 903646838 890895368 696665382 892909678 995481817 201172829 829441597 513153120 784723112 84299218 283332109 5654234 654903807 281696235 914579813 510978733 151179965 706004880 915591893 691344778 725529609 654317597 542198635 962091121 688118687 701672259 636234856 438199649 341270616 358523605 517961507 90770434 813483415 595834061 724722758 29628395 801106272 63430747 793121325 548716478 445165051 657795798 146512605 971986196 52539059 918422770 689411392 676099766 197054549 656462169 929807201 832886661 750283978 623515052 705466498 475934083 423441931 832372994 912009484 262529840 983264743 707964725 704121858 20966431 792269650 605256839 2460846 822850130 823180470 377116269 338785004 781799207 829383008 866658188 761480258 74809166 197570147 447896792 460238381 31537974 626377286 998178877 232585804 709654224 711011965 631548225 186715848 177847676 664479406 358296428 673546028 525820028 446091881 389309728 434034600 111221975 362665021 414592020 578045327 223945933 858311107 95809991 846016329 336473719 226158083 714787146 630335733 564852774 856048730 206719479 573536867 115374982 162128774 73850077 12810430 530185746 841744556 220944382 470310382 715454406 555528614 27551563 422113986 568634386 586621414 683131421 395220796 589656553 914657920 845298096 764508473 221142306 418770510 112951665 946055330 448422997 792293237 351194795 122676332 246771930 520983446 313671041 382115587 457131552 157019181 351599216 543629527 372317395 985230750 964979330 905095717 262045451 337597379 283517853 439656705 316978394 802458947 449560014 481931679 129489789 124387202 492479330 439784489 504540908 894964875 6061307 373747001 731505933 540276643 730468727 627741920 773038338 844094071 898721181 791627664 766600832 810117696 388937007 673550541 241621309 285620769 679464209 934399852 564659947 959300949 120463468 746874278 662839096 981765560 678779707 607662125 458338834 391761129 236522741 712021979 980752271 136124559 474024707 737112200 758396949 123317609 39167522 683279268 485800153 843340717 501719718 147867508 701938236 795392629 693159319 839931521 68435712 661366075 177190147 625533177 746976309 215949099 921171156 972422577 185969467 123922585 527294175 106836784 184031346 896780143 913710884 885267885 626741285 412583813 627407777 696129755 838867088 50692215 903027769 758680163 914820767 380704479 812576833 329317156 69700258 727688844 430145055 837606695 695296216 386802063 398791393 839530180 408256493 449392140 578976776 738017809 40923357 712028308 366199567 56704541 523613903 109247365 425168925 618290236 384480229 283804249 759463974 429735342 565189911 117373743 132969797 709405347 308899920 217953050 401369410 188104722 646306236 27000355 984485502 716766304 380024609 99221674 277481860 421669566 679989812 322231407 26669470 453483809 368663473 678657263 743910479 169370128 448888857 89763247 311688141 870910772 19515947 238938179 104787720 706655655 850718197 878410848 91318717 572346740 417444294 604778293 626521413 129578718 569196629 268036010 761572466 253461745 158675079 819130879 882633980 487325269 26967812 692884104 641262537 994972791 314215232 731889264 657779325 860641944 992999433 209378708 443409549 514292321 630557597 624345368 951485095 33223992 670597620 518135785 26622120 119611346 901658109 691423922 912072566 30457645 839845043 995689386 365315874 679565424 92202339 548743150 768627767 778531361 587290156 444135127 585368071 753516407 953421628 333173327 377747875 287525455 620839131 992575107 974491956 564413276 182195558 705051211 96896819 306933038 757338110 499629163 218839248 301697973 326592123 709379178 849067067 25797738 283241864 12473412 514674715 896996679 468952665 195885122 834470246 121876087 946162024 743737614 474422278 790646147 128980242 41072528 38221669 884207651 437233992 190816862 454565149 811423549 518481991 879066472 215504374 882534911 355930888 554231561 61397007 904412235 65662036 970262387 607278118 735442430 23455434 429695620 680326348 939284391 508362075 678383004 87492539 380449357 346396889 73225783 518218074 606831384 189445861 181728815 495684860 36394864 662472222 152508868 232013598 447835950 298212404 882171349 333934568 340253824 823729447 871639543 552022494 12107028 411381484 566273988 23382366 812534203 25089551 521425868 862971743 549157247 799592723 732798319 105921212 457538255 469249436 448133825 969098985 862731549 329446022 26431605 843122647 806461250 369096556 428368722 513479173 631805316 895334334 783386954 151777245 933919429 307007976 342667645 633274494 502764619 663179471 420618060 738233926 613399315 678141561 772334121 65664783 737287401 496798573 209324931 713362708 604903047 629234899 437023507 797745389 461665196 983608757 993052059 997218342 346088972 570376363 872754801 351138249 810331636 246768162 274195535 684538785 269433305 792716184 157760742 380829146 186246188 607838440 482597831 401675316 273891347 735598938 505438153 766009180 684767003 287848114 971220751 918968869 255462112 71525643 882126616 559716154 651534942 575918559 307313950 61325341 308437521 297650340 81085351 381525637 269547913 439839495 644152523 354171296 310003659 410374159 474853187 87166431 518143676 667132257 364896278 723831154 770823635 784074545 860471131 212594526 892197807 294615553 424890691 371150729 225328826 488903912 480203714 447113985 943121119 84647742 747349720 381605488 272436431 521306651 501672492 725614555 681043657 855520491 454585993 963654797 136491879 702917394 805095213 499631597 558009195 355645250 682249417 500639096 506117315 556184814 209391472 547551784 529904562 973796812 215834396 672556142 640390926 984850133 832925706 947001890 801993078 489737783 770366713 382520179 778345638 233250029 993190460 861951229 854326423 341009613 271201065 678990761 763601868 123453593 604098590 421530254 825736272 48878850 709060980 255657386 977664379 763988381 449673842 764727986 249881828 97173066 799678527 405759688 167028419 33190732 452392943 900697684 444527486 27641078 37144433 499179777 265181266 512694905 399449732 363458765 84285536 50690807 73529966 229816236 609914106 791751790 598894684 442778774 957698314 540470045 973160481 201466404 86028107 289920271 218166979 428071455 990424046 693217743 313783822 321933878 91095507 539000317 970944474 119440932 46663297 305672233 736576902 716876764 174323647 606405428 304064453 113111761 153917997 286713223 767507335 693178140 953136965 462084593 167793784 339438573 520368918 506675275 625546757 115712020 805114220 361229501 173626000 158497056 946753801 553130749 348089832 119052070 396547750 704931766 986907287 424770878 825219917 140080713 679188488 535537651 445481604 21179320 890005830 668662002 230395368 444702352 620187638 963233534 290174980 829041935 265274045 414874411 724746966 408792217 210174004 516620613 851249379 156798599 85085200 963027039 9376822 220144642 455989657 262642135 554149844 487573932 558751757 505770940 790765298 631539794 66678642 168820357 221330357 30455089 675698642 607744708 188348208 35731895 614450567 296997235 251340784 939360258 620870132 800299637 269636562 734082522 60489736 14330414 29875623 293202670 938388190 561208992 572696507 708699975 334771856 389671163 670996445 772301666 500486020 615649927 7425033 656799149 957408095 533036528 385963882 576723130 225131049 670371991 197139207 868852271 398436697 888687197 18380784 92289455 691886685 351994485 885280670 850721388 968271181 471774474 88808171 140806169 259266439 631735220 976631513 376266810 375461114 389122677 803808156 417183866 680486409 270724393 20480624 975204480 622428209 30973327 104284134 901220638 773107383 520194721 359919242 804219120 474346565 794699779 630497453 416009573 661479379 501254159 824323955 401447511 390025180 835421015 544336769 260457491 735624515 597355374 533101071 617275192 44364901 551292169 905774251 526769925 923794235 709791933 652557806 886397320 661960119 764277688 861765946 862225887 909188095 101530417 346869368 402754397 167885495 539630487 927031282 206102794 476700786 471969781 691554358 115762714 457232877 817787866 37664496 463714061 463217766 152880560 770097899 740463187 700040727 749151126 364624208 541671020 658801439 453826208 396562779 884862085 959433560 50859968 927399416 327870337 141356179 643059586 85224793 394080764 41848771 961616790 577306125 843375856 787878495 250034506 934711395 545312631 266280397 998000424 113087727 438155455 175580062 33849905 971503994 229007436 137914258 580565738 559110026 840540150 512952755 373636497 874333978 664325790 137888576 271728124 944466421 867252491 901726196 500922363 829212032 251342692 489278580 133565452 962833247 427756490 454474967 850630702 436773218 83363038 113894199 545400032 947348001 996660539 167940300 153313429 4978594 717531001 681688983 174022191 499261161 280605905 89853649 537593206 476379554 698700377 117124001 217789779 2724949 796717720 590768182 694183149 405771015 123480994 342146550 78504721 196975515 354968729 839392855 582379664 20129937 471254893 398068670 661030052 126539877 761603699 712681983 369814198 860859212 708304524 406531962 674351089 338748367 697365623 181155804 160182328 655105972 623748786 99218952 569881180 143522448 415427431 632135187 178353895 782984489 786107513 798901929 762011865 617410318 299084330 384410699 86112329 951907560 698930266 193957144 433017838 784690008 342690602 608702540 692015186 622725069 271444929 768813784 521785433 530368574 732302930 83921566 922029726 248314406 599889006 449277547 384550796 228227915 266205476 951715833 853371770 800885264 828315553 121255073 975526017 199030010 145253596 15169183 579772217 54924770 411764935 618104505 957314209 581434098 793666155 279147491 547914989 925452604 611312538 430623199 623462517 685852513 954644181 235913690 251345623 558460543 447959959 407449675 254560508 600399992 505758626 424453139 680078309 199799013 179815920 168895312 316436798 704385018 365101950 745044518 500168487 942541667 636311070 631153097 382374430 865985005 46209570 33215884 515584381 676385823 44474052 14675497 110493488 816923748 171999984 374392384 41552688 63398087 240967648 745415430 328606558 14483717 827115612 499727475 976858813 46110601 866922685 803042364 901237306 719074213 283343068 580801638 168972266 743633312 989822063 588542837 83709140 433154237 209118095 449691281 709255547 409254229 349929933 467638883 272670398 105745541 374445043 43390225 637305093 696531498 455537878 955426723 211719894 34015609 984066881 16832800 54368790 874247584 172928786 605835190 35225608 552073414 742222344 41806672 569325092 334835572 43289131 947442836 280130851 426385877 284672287 303125116 840234572 137396342 227067911 386242861 924653474 957076808 407960964 678116141 381892281 517747366 601864401 845357438 901565284 235246853 104322286 487254480 337970604 805850749 464655926 25202631 158953604 821697217 34410631 470027844 650826588 678717937 876667923 997073445 999369024 626511754 745749528 50714587 211194157 466530591 30652741 771342500 32836662 159367207 176705102 888038612 590732134 923302405 794978533 906169404 91404610 835697548 61622012 846124353 432206369 737503159 703497415 870280399 623792084 457622900 427907157 83320916 386810664 188510943 130781875 376635536 294810426 581112338 579400901 376987705 879070114 171673554 814783450 561427064 30001245 867078367 698948815 747111686 718502726 383632656 104872427 466450600 76308223 557691854 634508597 852773886 16623232 732731360 287000394 442634657 372989350 380824131 576122965 503727921 732508008 899483656 734444095 496438269 758143948 847800970 73725527 510962574 230276865 694489660 961930924 848303942 304061674 647911525 401490363 140140600 724968402 585850802 357531309 502504462 935782631 629869978 811589555 531319387 557266961 548630745 74455917 115170365 794978470 101898912 643302066 661332586 883802262 680520393 511430999 649478503 353639127 985798953 902011906 618453309 947301792 86080707 649231368 830408130 751639218 329567301 640249315 984476409 617892828 901171329 628682145 206219799 16594838 294829724 507901185 516962036 410129193 227234826 508014123 889003518 207040893 781755344 619972336 434632304 848239908 304191213 595563297 520362599 72915875 950168390 929768954 66469457 643119954 683855656 333917940 529463519 33237695 629542539 26077195 761106320 572355663 510374807 658846505 547135045 716511591 348795978 544358831 354497365 229091056 186659773 323197033 267673954 714455031 468972115 805446185 95366165 525801014 908741884 700588124 993862473 734785857 397086811 94877826 761538735 463387366 270789827 36010498 572200133 741590575 572318649 952902005 626414849 417414965 909865226 352277856 891645469 580490188 972872321 102323210 129813125 5559760 990290641 809783879 358971748 673149498 638450840 273646645 316561496 515953615 972145033 514593426 86748224 598832772 944209416 866287334 221602086 360838030 8957913 931015630 182289607 575594524 702588893 411849618 218686318 900700417 40173564 516138537 880876471 712961988 924886094 774411624 78692678 598457605 210031495 287762272 171765956 861975722 65268534 773242758 479859629 479099812 65505441 176069061 303636453 72518600 902855201 911404793 926301132 91432781 214508420 729539593 838672906 984752428 474359988 281242678 537767026 639928237 981726380 952171087 554955371 556209181 43254942 711682487 207254706 326665862 362584706 663398042 351184166 528411269 284616739 500526267 488292573 246035117 802426869 204793359 886787741 64157897 359956424 239808267 882498250 879856305 87133475 121765613 644306758 989520882 283755100 481030121 642161959 728235346 898039115 527487809 836178188 565925146 698286017 898216449 377404549 411956825 197781145 631917974 687701180 611838057 975115797 891578725 273146223 969963609 81034957 136026637 770157196 14571072 281092628 789498506 621143100 526470566 72614850 663666887 757040484 363347479 208513698 643094719 438027281 93893394 320216885 758334713 551805174 410703252 533400603 426698012 182364499 666904326 572656859 816170038 459416133 204466799 774109948 819304203 267675134 574876369 826439741 627420649 154150018 44325823 326820442 342144414 608297119 82585013 980863290 910152992 772212258 303907992 347920459 732957603 717299362 624227428 442652442 460806808 86000077 378762192 71457501 709032870 607552975 369189831 723020793 323507251 258720002 716291550 289731839 799116438 519408755 55639688 919366229 567413448 675150883 507678296 479445826 691749253 398066201 22170472 783019292 230119672 290244439 12592583 113759395 954612587 359200692 98915244 160449982 80328054 777416904 793311475 144525878 186432312 950925451 718837090 435157758 761913891 857211999 735857579 37311293 197028710 91771490 120096229 3383297 530573849 484360588 650199027 234969301 22584916 732251005 86058795 894488153 389147035 921022059 191731907 925602908 325010015 766605025 206741330 95645270 495951474 564130128 819418428 274561305 579850919 75718318 81099316 110022197 90271943 528077290 345245249 658570287 649927632 786866715 176319962 35308964 858236692 952565157 902001301 736651574 29944710 438539577 576031545 610155337 381210223 521684228 933037738 925168153 832942321 248649957 645810304 22389396 324959046 595436727 710774126 305920294 466522269 40347098 789542020 948891206 909488422 306682313 801117684 985488249 665808807 522327211 243614925 975608704 465264371 119534203 384563898 704651290 849790135 670151407 843046948 830937044 458313151 610990283 467541525 348370210 226938768 726152287 811183639 661056387 787377836 595358436 184625552 601921271 637849856 959025250 107820465 452469321 343726750 885679170 782682356 208104254 452067703 833758121 861754888 38891834 767051472 578712201 515578257 840864617 770561074 598343281 326515759 764823992 529531778 550285061 333770930 73535194 51081821 143276765 907557486 102965841 293486376 706208054 167888304 909175407 611984954 863507874 115881386 770458065 770135178 791114331 919689290 63975894 916625807 626538883 620991455 428980694 979432680 602660977 511023014 855564134 711827975 505152264 863632528 349703944 512188217 289552389 487111302 881130629 953502384 489136903 858638707 148307274 71400720 161100701 488833839 178777126 135584323 586404089 653225238 199958115 955569349 385828701 350306659 308734091 520361784 614894406 539518431 656825895 266032007 13002921 941069413 640781206 244148333 851213570 457642018 404734988 46443363 97209829 55087550 511898480 179981675 241958453 579142153 243487064 990741591 29725328 928945405 238528917 817996756 740073534 772289100 173880185 22864364 701362070 344216273 781898433 30810078 707007010 90172075 38269235 316985501 232509112 722054389 830461798 865294440 893141192 566910252 634000642 250609750 231273986 670393001 131646856 999709777 644090173 118206966 568930542 639568575 450817733 693532777 479282808 490647800 304213054 42274444 442584375 820148137 502022143 600915112 194112173 439589019 62140076 710074106 842587892 529634567 202422821 899746985 232965158 396324656 702639168 514365188 781671391 921601674 920864059 998018477 580174612 852492074 139810557 976614018 959165415 731102104 148975510 805743058 704400091 378935101 165725614 127447825 649972691 767700111 874656847 189675918 149607603 392907007 760320115 869857438 214090516 680394118 241238846 211680205 656579519 49487793 669597632 147912979 928499748 722552380 841080283 110566302 467654639 676746011 493719155 565521765 984553083 124703009 522319033 778117112 632677178 770193549 836284507 309273054 374670442 923234555 576145351 147188327 290195664 516272334 209519477 665930453 90048954 452838226 26284158 112400233 629585445 928539588 743732489 613659122 722213795 169147306 475195421 624181756 985167441 312850334 409721733 957971277 73885819 270322955 386129655 889055535 323056688 143175111 255811722 803499338 323013709 953330499 906324968 605331806 910444962 713718565 518181328 284021569 218358973 92967605 912879136 252965678 744438042 855882293 254239900 971772217 210760053 238809337 746547775 872842977 160037197 470207501 925259795 801612848 17044700 210920613 166691129 688712930 922870880 602707350 755533696 876613207 587609414 725764554 710545663 371232254 656775911 531202777 745557951 657694069 781489911 150332077 859813015 608444131 696754277 169463340 176657728 629227839 796664439 433018265 126155431 262869345 458668169 157770530 243996891 672111579 963911177 703326243 568518248 957148947 609598494 82901381 56678919 513377040 584785397 222442864 49874944 554076178 449706969 11535191 747399500 10223037 577856459 156714705 81593421 510596788 712834643 145465383 968446541 332667299 45474286 496446989 549197474 337874387 795977091 949257742 437511429 444936566 43645286 176146372 137467425 127403053 476887459 133690904 847504221 662747569 236108054 906588826 861081207 673866226 993132397 319754552 469526819 75932971 583194519 306694970 387190337 875130856 31542434 844418376 877792803 498363658 350536917 667556723 673928879 473107716 224664281 978533363 628450047 226896053 590982125 894433850 595862683 446503325 555197097 800940215 986852718 652569368 76265303 89828957 9747680 454174137 397191259 335133049 832601280 217530733 154742969 116257155 308654320 710668900 88303018 407314364 113956917 612703520 112997437 66263267 991378544 583376506 678494297 222923167 886051592 711530897 624561187 884769701 616344491 870658993 563443871 699707746 430219154 454148795 611575668 130997672 504940021 556991048 86467794 321299600 766958475 950710576 10553569 21440535 48584350 812479750 9115840 653781790 117813283 612467199 591234371 979225643 884253341 638361278 778845809 443671985 876056895 185830621 146852291 556634619 605047657 353227227 367515957 300544726 690919602 689349566 287861390 147672683 741165643 128163098 626366182 543215865 950156057 827314083 293705653 457896958 818660427 995808142 885623036 728041828 849084299 898443558 496296646 250590509 251197264 767283747 582196181 613879725 376903399 506500050 268321705 901823025 541583903 654110764 887108276 932722435 179456996 438139283 51665070 649367733 735840154 167075713 746789273 604319412 304750884 320841675 169373549 631550607 220153046 10993715 378466288 12368711 488739855 125735538 32563871 52429231 746595220 84645711 971591580 623867377 384115371 686096323 930853380 687840964 349175805 329239233 593841997 366533318 418791543 982756846 461338613 61395802 901269440 298338872 559399378 945031824 432020596 536577314 689674032 23544496 163522796 520073293 879295607 579396202 492454096 697245156 37977647 90885768 726132588 117394058 877456276 620638099 442072680 511323726 44720907 851496005 281003988 257180871 145494832 525891116 595834729 527255435 613268662 268193194 742354913 620343726 430181894 851678191 584145039 227012208 819091002 410569105 422935233 233832782 870110225 553541322 504946062 28433979 732681952 295260808 451705263 268954564 601658630 987768 667570088 376010524 622057042 519748396 362519000 730230885 115837928 253144986 640198674 140909613 252663425 335585769 110536935 618892058 411156633 294016849 94664513 28606088 364628162 145203970 284950762 318323347 483297233 402953598 73053110 994221228 177630065 983958338 354953731 262138135 573261542 244436195 812763914 805851251 828712920 614825968 946721126 23325458 609160736 650113602 351610696 392017165 684525839 232869966 441680342 33997363 531372592 347435724 623036312 931959372 644884532 588136519 573368683 67519705 426600236 30964862 306722653 53124414 988746978 183581315 660364949 99578744 822154082 369235571 169657707 879655793 902876578 933021736 106126027 893423678 52959041 279516650 371965240 797524152 893208067 49863617 243233161 898153874 701788585 952351940 465213633 112932049 543909006 816382668 666802025 208880759 478893937 862175348 507983425 522363316 251818959 35385470 909047414 896213866 745691882 714548395 514638670 365494640 464501527 667729983 286539695 874945570 692934207 344723348 755677342 408734049 219851337 969188478 728398792 556860806 180779646 250368535 262604981 540611514 343889916 808833106 232917099 24420529 171371812 42778934 121805908 978998288 469090262 266529660 220740304 520926516 70007675 622330972 786226087 928698058 55546671 156431590 15357719 110540600 119539390 278485588 258733831 622048772 610755587 269405840 300207379 547697515 174110361 756396391 71931559 175920178 668739245 397365291 826354247 608952684 529814125 549099150 177351882 799253786 688057822 84644817 772626590 716125518 451130444 781178086 713650824 831567819 621259891 721454904 549207332 211592510 810589579 927454213 608067877 334336181 835890800 306355495 806932312 352706229 159603151 981107150 71076518 889290891 412519050 325114705 672159869 581199921 516522802 85432255 91021245 593869133 515532467 464179445 470292239 358415205 118527768 169279821 364454785 632086623 100633296 703396435 811377268 122345772 248966551 830990762 280832483 398304962 1621624 997887998 133678382 940119472 894311483 931905938 381200961 920255609 48170752 993024753 813548023 698583049 220012987 436757948 536242818 771473288 57658286 958118142 796838948 17317145 592057061 934278869 646924642 950435618 216878546 709101891 114743683 511839256 742346351 330208272 52269874 456890394 758267803 914894803 755546866 335374727 708423204 993609533 667131601 702128474 505459338 884903235 565886813 547302367 26486472 461154295 327562700 256277224 606166296 238187224 867406269 946447877 403025428 424134838 306693325 473700607 859232250 893615435 777155154 499200458 396184617 208771058 413111568 141760574 505279999 636239592 710992780 996009197 981510260 838779995 771365484 638820901 566420814 829116862 675702661 381045467 259558140 41975844 915973478 922940366 258590735 552137592 944592062 852861413 71967753 435290072 275060244 117699476 61361138 497108256 661936508 413752568 781978661 589053286 315030648 413388933 309399740 716782158 523135806 707609741 960299401 634103289 890081296 768456389 58810243 713520910 850408753 624269868 868376033 359511933 23639041 625100620 118420267 847917364 282150786 821872297 928198091 244387210 843233180 825505931 168484004 357034590 732555044 966629426 591842091 247464667 957418882 355397490 929281050 66313974 462040850 887192643 207941175 201894794 818138310 210047023 832028831 191562872 140173347 254803877 143912806 523361403 515715460 561471147 145930061 604616151 882107608 592836869 534853517 53014324 928092461 570579550 64316675 824341974 86480662 637092608 800376393 3331590 606923016 903755278 883427705 591883677 813939754 78456723 988035134 902561603 73245879 354167268 464841973 656928188 423305211 195207477 310080823 164182240 768047300 418221559 779486889 551022249 157926527 159433372 750085152 119347031 731778362 212010161 263479837 79377121 991125043 403971990 47464859 298745568 626157305 640892957 319694597 928817810 287422196 202298077 149109597 295381572 795405193 819124774 412095829 453968700 774686768 590940580 562420903 305360912 811491412 812516970 688093951 19898681 145953830 788365937 737910118 753560212 188359019 606327160 756441166 159760897 540660790 67712900 163611408 618951094 404189892 769204899 261933152 215007469 639655386 465023052 141363513 829395997 337823587 931479740 887549622 115855542 652710 639153624 760046257 745418460 388733826 984015095 522021087 246394692 910249793 940301147 721821343 870160343 852988348 304626468 215110103 852809726 188701616 66536585 128208089 165879148 88745077 917942810 898660456 628996294 458829853 300552969 349212574 533528188 377649407 185143895 213759933 182372094 305532787 604471492 74652093 308234729 796538205 958362249 924280792 551688170 479675269 812612993 223194425 392790408 549889978 930526660 178528151 240936709 299661082 546556068 933950640 368784563 40522928 178074279 684196511 596744261 594510493 70470943 94109691 49082602 601430992 431194715 881002721 514245103 650712657 357029604 349639770 257302127 750387577 432814851 303294898 657716174 10898299 871198565 424081490 81800750 722379846 619599211 710236822 731270557 683419422 32113614 71842988 513768048 557197701 376463403 595613783 672546166 611595683 563837317 725037448 898650037 994966536 366965574 139062278 555634678 838520599 534572104 694271632 215246433 834574733 936316394 997952692 774262984 979549071 582804315 814801625 3416788 348245092 895439019 874761064 869253248 284864458 161675234 89995479 670088030 873914209 145074293 819741691 132097954 727481683 161395550 714138744 690341181 14577322 193189815 7732073 150679085 898784961 781241065 500403676 178321045 550100749 456141663 843847312 797308129 214970324 239278188 812677596 860186835 637493871 992094889 140428713 741600882 952311679 186721451 577922818 417748250 571656933 493308610 965073646 160428139 462118134 339046357 671073450 699319741 50379532 313847228 109612822 907599819 469243060 281097745 881173969 181723754 602420865 920662194 94007173 934304418 692617923 691784176 857038938 68533961 594815618 652503906 717425795 324683213 600982880 552678550 360149717 979550616 447503415 821376093 307899346 529061155 356676799 51247812 54263934 286207358 394985100 526631375 235488027 99936225 806282358 466796874 480906709 487770547 962806388 53657001 399838039 975702249 460954751 579431934 127677048 813602201 754328165 590082306 558332396 45564277 414369945 188638962 692642337 181688313 40760281 800309834 133366680 687264328 356686426 25139633 923226229 897090395 883982125 339388495 151102982 180841888 380442033 315533081 995453226 602351152 6983857 896913691 389762932 12371909 624711667 573685451 770512247 690936274 80564894 851960646 223483419 785205965 171044273 814165262 859444890 992926707 760106121 38244063 737190339 99952818 862126943 97835545 816824483 349425277 136385628 414560296 800734800 345968493 91454328 265783602 291470030 759263005 547798193 952138151 760010065 619333832 141638742 319797696 650982012 979571325 479280576 952247649 271422897 207781079 459492983 547485003 492622781 320276557 156442473 56630642 149649619 998581106 692821159 839593270 773861013 905513674 257576121 717389784 518746567 106306648 371175712 29780299 526652259 926261007 334082655 32157686 560410667 469591430 535667602 889749650 97781999 59520958 908917919 155508960 520748542 77471122 936714153 315367596 330248226 73129190 837906237 816675669 863131257 723037411 381130626 706791549 648412393 560034729 699981865 568944762 758007440 423225423 954066993 678498292 456876516 414276047 102255477 837045840 189076264 351787879 912987522 217313464 617352629 594024229 197620962 422136781 477099151 694792423 432744283 965712002 15604927 859743295 661523995 928961261 657712802 494744932 69881774 839582741 394782235 452780604 684534583 224800271 654489941 998359472 352469505 442173502 863815807 85695782 696920824 964898946 537025153 369172381 427948992 359339326 622577879 921836092 217810523 595634772 185729511 524725000 876154248 293732160 516908858 227646290 81281278 724366094 54840630 808340536 50801893 309739824 822095498 337806762 950315165 74267459 680045256 559500089 386196078 100075507 800028548 612335233 411378332 680322560 507617082 188132584 275493925 797810243 639892429 955652077 627173354 916754461 643181439 747582373 206945779 971464691 916434066 947294363 703671210 731086523 109212542 279950224 418413494 674470019 592354724 533002347 40240241 757156645 218261418 192252529 532791403 656035460 9701043 328443156 789429672 4490983 137230170 890037153 600029423 374641964 354097669 723259330 215098893 330709725 181087469 607785246 18770439 409283120 679962725 478690852 463210419 999555391 227286409 492596222 334516189 952444484 30696671 915785220 73653385 816181392 682336171 616291589 242108710 399245420 172817128 516888628 336040736 387828372 357809028 793110113 490489967 777286477 893889045 180680558 263045979 350540210 710888238 237507872 821362057 361422452 722523726 519197168 216140724 778685264 845196768 904749552 889003793 244409267 992127833 573083549 320804037 854064814 509088126 562700441 783072602 331020779 297882013 451582193 341047644 302107294 897938841 762850688 738657944 295582655 262869131 522480089 974033256 88023032 29814798 125935555 893876374 583272066 210396936 401609152 830226005 448796019 103667733 608933688 246671906 82632214 500090753 574257482 244936568 796525345 938415950 472505977 752410063 794788476 741567038 217037945 60619926 290226630 74887039 994359927 247833197 553196019 442927003 173522545 732617889 286439525 272910726 12805816 170949271 976150552 443168031 432686910 45135598 206338152 78448098 648048338 198498206 588534129 602336308 120976414 416957514 834476370 873873512 379201932 143416413 950672243 210350144 723816869 464791899 851643099 934580354 357849709 360128744 998305700 919941816 565778445 821681477 879585486 867216172 132353136 315761568 213194101 238879741 767334703 456587521 200828765 4726528 662121162 655550518 86321153 623187243 681614505 50391414 175067251 842845321 480849119 743972884 193897921 804500247 443256751 515508140 476370976 710411137 675870296 621165094 340520196 863812961 281232855 842650279 612793688 10029754 557521755 156105319 271835082 869163882 475223354 267612956 327566283 398447215 680984734 834542149 692430952 929015095 493655724 955236145 376158815 785340623 319676953 206794955 251146226 178161482 12358047 667698097 342772929 635407080 460482046 22107517 317927039 189211566 895465782 671376474 167412267 296174678 129915489 594413695 495428410 922650034 200624523 895655176 338771596 280950093 141396178 113495313 129733715 562728460 320084116 803932698 239965551 23420164 209946433 416101799 390667527 583833561 3813187 413149887 595961858 60990413 437254759 341133306 415215667 796640741 834459810 758200763 257825922 498013932 457350142 921171643 429391830 169791578 786218819 398394575 284047667 790881160 366570664 938785302 885717567 740295189 552165420 735248927 670185622 780245329 523510935 693948176 993758054 680568443 452859367 595163039 594196304 192301500 864303862 372047295 27687459 202116872 941417775 377713958 929574258 383247018 438922391 559920068 796764094 316630912 81340445 665860280 489613444 970214786 633124968 861189422 932864257 896169120 71165938 938682843 760717188 390214416 737590378 505053664 196590534 136905694 696845869 416238024 967356765 865210677 422200073 890804410 763504347 593661653 901221 579997605 287036712 353384951 135488982 940189045 590935634 634558634 794081756 1771107 999475680 409851825 117043325 933319306 211419133 821090012 235778221 862320155 290453695 289855251 760852990 438219905 825349178 926070115 649850763 596528199 589990387 798248665 821050130 963969436 698804029 974789252 82025968 267894081 700451903 105581206 951331732 66680574 517110905 538950397 685119520 109099369 866293961 928708343 959441663 30376819 787499505 147240331 325597534 500834583 79102150 193006569 451005823 438569531 144227921 728824649 883170791 925249168 400082010 280390543 54001602 384943231 595883902 874427096 81574035 757078133 238444214 897978392 30479052 142722382 324912904 303346871 292326554 878331702 57167455 621025728 674992929 91449440 643632521 922176534 881239055 688604961 190450212 304707247 127854495 112989087 525607656 76768760 998605810 136998576 92992269 720919121 898719618 148334061 60597698 355021354 742824926 892161906 771449566 818618248 202617306 828875780 135491945 253207045 218914571 824660823 989750508 745967494 670804316 767305103 280706848 922153786 71999714 32295846 788840081 186121055 637458835 697823618 269145108 756445977 369703996 258206981 549066374 286242127 225018732 181669130 434824304 775617613 911362867 839734818 189977960 959349738 197353721 678621254 653291795 823374101 504350713 304243378 536119171 521570608 601523478 726988292 556077634 201412068 220958592 814280746 779852980 881416853 508215491 809584506 177523766 181273324 586237372 287584163 425760774 239567249 18328300 533829207 401161513 159870255 566805986 30051921 379035516 389873382 273002665 777292438 184744435 960403745 314618901 515983987 799208379 877245902 874999238 715145385 461023473 577717363 392874077 330552214 813105733 213279550 900104100 385468155 319369413 613965632 739370545 369234902 513089085 595270621 141787688 66789404 584509836 548670925 602321654 91079026 570988344 805493146 5315138 326675909 314795532 129729019 51280316 151991990 584571949 527126543 788105845 513475521 7394885 452119955 710274105 367515464 351714101 83053261 192021844 735481701 614451207 349107725 592838908 842361585 307027436 818359041 598761355 449495742 303405257 626591233 784286505 489813251 916203566 44877054 46953083 311396932 280430683 304161231 952280084 249457004 672947475 761166982 424528067 160076655 998901336 123860558 5704070 824722962 252487800 16461510 668297873 780899465 338882549 931288387 622164711 229859452 474406071 975128591 181757425 334468242 918863943 280344658 957028824 799732859 810871819 78687662 9526693 602019549 135961504 632138894 230866938 310208513 605324203 166679855 838266914 360241777 641773279 3414510 317587060 739581357 592422630 808513856 735164669 932975882 546769978 808888956 936375805 625991973 573755225 716355147 131167365 928826910 3044360 380668219 585148433 848174764 74042727 511406645 373966581 53469834 44075155 280074974 177340358 823580892 224805100 826756366 765811355 288427056 982743762 588784488 945644949 113398028 832152906 774861656 18237982 271678637 195158394 892549098 21197743 24446532 44489991 626635477 216899660 697505431 148657176 510916137 712802406 181045514 820981985 693317716 462130965 999969696 48539797 569683353 406509995 248743941 952439246 111052150 2864603 95995508 92883326 463135230 20596540 858851270 347799677 920771591 496526003 837590797 954796274 586648404 10268055 641486959 300253961 895471705 348248951 206010326 735544120 830957391 314505546 775431448 493314296 603398672 405147823 721105254 265157133 851698579 610418654 636804927 849173462 76200771 51969920 914719371 109996144 494484813 76859791 698861311 728133591 902382545 716443549 916427371 109053873 383418354 822443101 660686470 620141733 299759421 169903294 135718941 86043187 403246811 671693546 211990871 197390998 246070514 883892907 643270094 209794005 235587151 656187726 524430769 130042357 650908217 546383006 860848241 179999244 932946662 404909429 934019134 361046526 356583716 529783430 933790095 805622349 457110901 783247615 260687038 358867114 950238536 144471521 204454258 890558251 983181423 515841482 194538835 898363427 614855801 625598529 135074987 472855905 502931854 962944805 275111956 112865709 702494763 830550314 772288882 906595126 432041285 33392042 28944119 699401271 697061800 689942742 886189129 178877941 325699532 412110718 247684397 838382070 456332976 202560598 811369692 772012948 459176273 821361976 517099926 130494377 505484049 930109659 190392330 327618462 13146493 64842763 606950722 893119674 507296293 104260851 216925088 649588424 952136446 698826783 240034803 48389922 52681343 776859128 364956813 345417917 308182165 518534260 545171071 708505883 928729144 427299747 118033283 437211569 530082568 39271584 870601995 526734258 239315780 993304369 147912720 4796723 793352455 878138869 61736250 818618650 128231547 644008640 767546940 135506280 307229895 418168739 578873718 912966095 518251189 82154070 236884204 141427377 853573100 50142115 500968852 368734218 579486155 568503544 99129677 541022821 897299106 786417192 56598295 314374098 867083651 250298674 814760981 919808297 64728227 403157970 589060160 561225260 205023237 29674792 907117721 511929085 260724106 441589775 816887484 567679958 796756585 388486705 735821694 180949921 232450209 527727264 906240660 782127833 32711790 550858200 448720004 598274354 444150829 705806194 403431790 294970461 87002740 300333517 248515086 962422243 165893005 998854072 287070891 242105376 392779838 105771096 885225660 308133728 465404492 26532410 645902375 655245275 704803480 471813603 257949309 173105076 851129510 183148638 595514539 806271623 210862334 450901032 623286081 690611114 691754474 319028512 555112246 761184156 758171520 343505023 756343560 245274595 245221339 460909331 979867574 234691621 667273810 316856923 584526522 982572273 553281604 122739025 129779842 3564931 812086253 56428974 487622214 911066274 470398062 577565295 634337597 271054036 939367389 766806125 313497419 252791410 859997124 600946340 586199042 579227253 879599233 637520321 524836331 834422599 652335095 876898332 356406343 189395746 123191747 54871478 562612037 970838106 296691853 973529757 520612620 908087172 501920396 12387771 160767068 793374387 901124224 727156283 31589881 11871757 653569562 330193024 968981601 671894687 913717404 562553552 8607385 686399224 360998483 527226535 154959259 893996506 460796512 175892800 493595425 667842163 225339569 464018000 387731086 155366987 555114764 327920098 983473081 225948623 247482243 88916034 30223753 54668063 865670850 293422742 454179880 849025466 181636619 466870930 631870588 324443371 747313318 562211853 279794059 965557647 901481273 89444887 377464938 778067219 236960806 914349025 631648901 158628514 266856405 493612906 407921850 648706160 250057632 250414966 610037266 759520703 216167814 186397601 892538011 955286336 549706665 789704014 263179493 965677408 474714996 231074241 883698560 227699303 767186353 505237929 770680710 562958791 918102651 971054052 814044417 584497619 661311381 171196602 611274522 933186593 937430005 2073605 412249136 275423791 65665592 349104552 30989137 132205978 494131580 596717413 134771980 412179015 501754747 512712079 478665226 371155909 748643608 201330154 348170701 544262457 458997542 271192505 569963481 153163057 117079876 760235622 740502421 73646205 246639957 255190457 606500250 388004042 373021162 893800203 441575097 443959886 164412660 946715997 840231221 516492538 928440349 710089856 547215162 992430325 968025058 362916055 52098681 11814316 829773203 956330494 698582005 752801620 155922256 956867819 166664986 643284243 932770978 729313262 722112411 311996695 575719812 127675293 960684142 967879101 678136525 981591522 68190033 938630204 428043260 950220235 26841173 519306279 446907505 230306956 836690583 882879591 92288292 455131130 556090616 78238624 380170838 56945136 504873607 437922810 638281121 415664876 448606811 899039414 899536115 602267900 949270515 263387526 216197719 362507839 376842286 654872262 208748987 253020413 307131079 295683253 344137460 386774707 872362233 211792287 289220871 383255148 107732850 304344564 455736977 380814580 253465820 14574256 967991038 134977320 404326221 610692292 586113622 890186661 550602167 244061231 645108277 617544522 60241394 895167761 72904018 819845827 851833768 716559753 52331200 90057660 414050433 454888854 452127524 145643936 635278122 767477141 639376786 134662156 541579279 48923744 393090905 492868924 665930152 759594976 892637624 799365924 22630138 814332659 675270643 937222907 722794293 79260169 921785403 600002966 73461061 179040439 323493559 461055971 432952829 80335828 963783460 455389184 349727955 362856824 55680554 619069996 836159792 701212784 928465585 717210761 551585092 442355680 119800033 985478903 71195274 350432974 692605823 77907853 27535440 181134861 698312568 266230349 110176819 339287238 145931118 875556236 548624148 309805666 102938648 245713044 414394838 131543500 652639775 671991918 491877879 906326548 143621407 487580190 335530451 744467572 27226803 863675994 272823295 25484368 401808338 383005393 758006333 847815748 606649193 44491770 656598936 610149651 271850310 593051275 952706421 708508313 509739297 102309409 850386317 507490698 584956807 158530260 656413903 475695465 303048091 505481397 150031414 549637981 524380974 551005527 823319673 84677020 579349352 185957567 235572088 391009080 660649636 413895717 453916251 138989005 533919209 86276873 250957005 197082136 709702678 914183547 750222598 114024511 413770573 452333925 713480824 553774291 844821303 47171787 578601103 378104051 705532319 928433972 432204525 685449146 739727558 28316863 716963864 725165112 973319050 734966097 193869917 382467752 670081419 509278962 448280480 608023375 180840153 825822020 249830359 688505729 555386331 256551951 886536567 11740052 622151733 637124610 47130840 325863661 438872707 680781656 907564024 277459052 881304262 179257064 298956616 193414837 633485753 17592780 365178557 951319930 874694550 779670791 394165102 823125214 532339919 955056852 145911452 608412667 157380796 27967103 593671660 467174766 341210868 13088784 594288206 27221335 604266370 645705646 581289876 785382711 630926709 967875318 943690073 753545496 977838000 916187169 649667336 683200139 401278761 384952996 602565444 734796977 490228194 968534259 963100922 666940203 275244943 255873285 337729329 413320595 728684193 903357439 497381377 631038325 823708005 103794957 944815541 973544905 226201983 187361141 961998726 813445701 294488606 868184239 372399592 310388859 903519731 969294125 748700115 333832690 43595266 733891015 540090386 399650992 40581977 873337569 983927135 886648856 305763978 922839444 2457721 327237270 668166019 694785112 284994377 369192148 549294693 465647992 968124128 392859055 761532712 80212211 633910911 248443489 909963518 939722456 297113202 796709988 268045934 552851866 572054385 70859227 177628394 992205876 749623635 164635293 261139042 192194001 847486555 142242668 773687398 444794524 13592994 484085272 505264238 217844987 149022983 71311937 360748920 548159622 732858421 653550322 218105348 824839856 585385432 211130861 713949606 692411291 620743391 672423783 239604150 269993191 193906396 302328475 784446587 582427441 514958466 270537726 725907465 381124954 750869796 126892597 785144674 652391416 505389170 448987562 13925453 567589348 228217123 321990688 370112901 509973424 310591644 765755962 156943136 592349383 690393959 774109232 313779213 266427583 891442985 285270674 825816619 196744763 688344554 868953628 627556447 142314622 394596042 725324579 599986532 415246027 924161109 742464543 160827555 911697838 725018548 207636097 251145696 835003963 701999699 42273568 138025136 260108126 158077358 320609415 487279115 262994075 602065521 610620205 617724372 406913702 38027715 144847909 198042942 778424626 234286347 520484866 362780064 245951635 245973279 87274097 862042788 467764662 697706895 983811880 904667296 529274593 692500112 788065822 970021145 833398473 805477383 998349248 255262411 723377798 94306625 623394089 43521917 646249912 963990713 690719326 540990385 92272974 878534932 759174421 336076320 985364922 733898955 108222799 843761636 191560739 99821861 518169158 524758445 713317114 697091366 886980691 630960023 193547183 745455206 44059602 575728182 756374112 678003146 688194699 414961217 270998932 838360173 259666212 527452798 220841375 153214952 136584058 737404970 765874112 283772507 716648737 559638732 756616154 655038981 973447779 347185623 452164586 597360372 341463375 790383448 438620871 873176355 257207177 209583491 625396822 739324341 825143916 530142238 728291250 301765997 296469772 690931431 69963096 933521600 876849403 443971066 39465805 204274623 592754052 590030542 714034051 843236982 186053137 256261293 642209395 104723151 404377805 916368719 964727867 414984184 787719002 476717289 611778111 685879513 30757169 263003379 848106954 796743270 154096800 112277472 758209773 68360233 280702836 601491711 672311855 458384957 183205549 908369737 789303457 650104808 988494461 466003034 388355300 35570466 246322558 710058888 930712793 347996746 414562194 559731832 498781440 782825532 915841787 890001217 355567746 573199088 702052972 600671240 345509785 209614491 22189654 226123928 836204876 331322881 229966264 919281265 235779648 49671910 132968145 149487749 51978627 408153412 444276704 750634978 81654116 753984588 324587463 793711594 586327311 635597506 347663823 920319708 591882838 391639535 573403124 357679313 349220288 362729134 310520052 993958551 236247577 105492759 798849984 968305923 580329475 437951028 199145727 893756993 682384191 787843815 827816820 68621011 926384883 632667476 220376835 832214352 731202403 642020725 32130237 317831245 775892487 946899445 520979753 354139418 971422004 593872840 256501513 311848409 54922741 310795506 198226800 669716683 65189902 184815748 435873401 300353289 838415286 890347306 585165433 596296858 591394747 337936373 176797545 217706167 280943975 825532823 170623185 583099267 897468495 643714820 100380113 153705501 845155507 617335000 12515451 631163275 200250075 633810022 922191657 292791482 227805118 980846175 356255394 55028727 81492197 257143805 897182263 426718290 100528684 813935961 770689263 684331727 726736271 715244957 696812682 658509112 748522365 51182727 916471749 752139552 563547444 795520071 931714720 952646258 489169755 674607930 737098710 146227619 721112130 782853321 94231780 871496455 966849024 259279551 728784015 228814602 196899944 460864763 104059881 612337393 173931648 93305384 118712259 694443108 658622477 967590249 669417974 349328151 277290389 52261166 284060177 309843405 608860515 252631984 992691579 399359738 110203441 151894686 288439731 387944413 745476676 489017628 471101830 484075768 762461311 741968996 840835373 376515351 31942749 992293638 904890301 300668086 904279866 168970024 785238665 829042229 531265654 469341548 438016759 514185516 751441349 11949096 880197726 321093956 307974737 385329299 795363378 239654856 411382197 360019064 45122173 936683513 777966856 746024842 440184727 834677508 881305026 704436691 272970389 740212206 159918681 760885987 692196355 873524200 409738817 833533328 234799963 465480576 782637821 676396586 426766312 605847361 968242487 513213300 953725673 902705404 841929468 454981826 726370039 730829854 247782611 257366970 703678577 895783640 457713934 217604425 380361390 134750042 138507132 771341891 72747714 594966914 10679382 814173838 246915389 178300952 51354618 961782809 200425742 656670566 553379488 159164524 705018492 741316046 505604059 770134131 324089981 641012814 501812772 743260739 687447621 829029640 685009414 94761871 921874142 494725222 148346421 441694024 389748262 87553013 51754199 554002317 801445205 304537548 729425312 902650840 881263400 926200919 933445780 465545271 86523953 999372011 287981475 266057777 994776106 205711232 339495410 870509753 857819374 222520778 662518909 324558537 420828206 597421858 305065441 969619813 298936814 890333357 880530307 917572776 625703084 902846074 862302506 157337373 250202565 847842746 909193566 144262199 824303490 110080689 237258736 12397459 675239642 92623987 817380270 467529805 114438911 564178539 960843461 514774154 714503353 899134365 128050060 834736417 378184079 452464502 408205310 811020470 933510279 433266957 990925239 769810673 576709524 841081892 467068787 62076061 212128574 524034854 450160237 995943565 657135305 812376291 374593494 861234684 562877761 379861002 444748402 545182601 605301089 774354525 365466746 471888841 706573453 879656708 373917474 253119940 487830205 21023252 363562238 240862743 704460189 737672791 677114653 925518774 242943435 415850867 828471252 862939598 657252611 567585775 299187356 612577204 369049518 842542835 751244276 66792357 142180767 596086214 164980527 317470610 366335053 156845770 6066483 892627473 841929037 15891990 984696212 288514493 109942571 533607323 916363482 301242524 984360452 41312611 911728736 845897912 521843537 717235937 559956798 490439497 560010760 661717524 783431300 462706794 779184745 228657209 715475739 775542276 136594100 620300063 796569473 38897973 797482451 886415412 709264279 183469222 315398290 384823662 193813042 281305711 971270306 723423533 694966025 405916996 694586629 167492325 589542752 856982254 859844914 995934613 828495446 69839206 82325814 999868102 926321506 251261473 748435415 444015936 432219035 443560686 518625277 491988209 674395744 973477287 36357919 354371584 420273015 376689294 180768246 151780020 694675223 295236171 59785831 675860021 286361152 868609265 832305885 672781752 606983986 131939687 796802882 952126299 17301537 277486684 748525482 474971203 945318813 589774279 980469285 860835404 230215271 902090293 462279290 739871875 481379600 367876475 383061426 955132086 695293077 130302743 421115504 684515966 424545888 879787063 93922772 691766460 445608891 89207621 774094057 732132103 214399784 353664455 911594032 227662760 408524976 462971693 538197606 223583753 419300514 310124078 777097745 159434914 422592728 745352885 76844668 592587913 178946128 201339118 838716497 961685991 204261508 943235644 554395997 702531471 107007419 101940123 421343 946614152 369491416 417327354 160488491 312283731 510787038 196587493 515338609 777227596 306544717 316135231 409194048 411903689 30299906 852564853 645301913 289369311 770789811 786043846 939770148 923331987 252574920 545318660 749733409 493146742 821450549 392735515 179437571 65555305 646017114 208962586 188536600 545022340 472097000 681638514 283818128 301073309 731024280 566225892 877458834 450718215 622640638 709586291 20994856 263701789 582050670 467752751 973952272 514624254 127911218 451104765 745123072 965116293 292163840 498877759 443934908 901074939 28251422 21848358 956655672 792886442 995668680 442792520 337874225 917128572 283398178 600378524 648617852 939644771 258842685 165045954 994458820 412907666 469137008 674232337 140198290 930619851 841916389 19880801 197630610 774282417 771048402 972313721 217511314 196098737 501528200 142140892 99760716 884057978 205863845 462237437 781082659 109744738 421492322 108992271 437646866 135304420 979521393 601355599 796826931 17233581 591241891 911520040 980111018 671877889 182329051 362849967 53057601 796631170 434667287 392192962 453192524 427373757 924058185 509471491 131305451 243782407 309540742 190749751 472479003 225339310 689321115 246975066 872844568 413590372 522731289 901683590 60549852 625849191 404270361 659347604 225425956 362641428 156144287 921415479 731859992 352354055 209042823 412322170 535473153 829457616 215491972 918197015 617449383 648889199 97454902 402740798 731261022 127526804 959533166 262432616 264573221 861913466 184505576 461711997 890216136 905241900 329109589 323973867 430154572 574118607 332286811 998021333 203872432 950115492 961663652 878183504 922321377 850074015 396756338 46152346 371054537 865963704 987864054 454455687 242926914 205731987 44047956 668906866 556450970 591198061 520990504 212077464 599459915 482308972 765837985 812292010 700703798 537750234 436424332 275940686 599681645 342979817 381990333 401573466 949714216 274329708 597454359 993456859 807190318 892531994 220714891 248226836 911490859 84452798 70313121 315844097 510331204 674630049 858721991 627244872 290201779 93417538 507380144 284669402 92982922 100139235 70429179 589320824 289008678 27502490 117513739 750967603 930541774 504508602 732393807 36469271 897421382 66265444 794525173 552615502 155618165 453670190 781178997 490796975 826463734 812199315 431955854 843118889 620207516 800625173 975547188 403784512 617128961 778391571 151809811 846037566 137255189 785056497 264027425 647848137 311667084 166708024 390701492 886335579 517937385 875758723 586739483 356063606 738844193 209493612 827583956 527901482 470618784 576747855 176242735 322420182 834650968 60310120 865125161 879490414 699698285 960815639 753572470 526852512 951721132 549848812 259310341 581327644 818165762 446354486 622069521 446206007 985794367 76123392 40936484 683584401 39858358 602111368 195206 478596946 517248826 572820957 634432442 803795761 491408877 865325403 346117483 973950780 309169869 48390297 946866714 184205363 876329025 832469593 213484801 315346921 220130665 23633412 677017677 679089701 277552591 378184322 539411301 982244479 702474305 658253425 74822072 750693679 571256146 588295932 215779042 667256345 78006631 399060885 962991237 87109808 289017870 93309228 520054539 544039212 660143891 157364298 570267299 259707666 735171276 628580141 85618273 752315376 355992609 994623388 701835678 9584273 852479444 876668667 108042401 869680257 215516723 460746820 302706507 285519022 415247435 98667725 249190057 371829154 507601100 189322488 556333593 320975547 480675601 536701840 221471274 135918580 812023721 837033229 197094044 141332052 658397692 807548443 324771515 759102050 235739826 800369169 259437420 349329998 394263328 114300820 138306619 839967443 465100089 340347022 524420835 22219476 186132739 205483732 779339162 90475269 625329831 596745873 50244183 44358512 180043350 948667571 917757203 300832061 443263392 524861181 204419 652960750 209043043 150659808 129163633 842483329 510806194 425674441 280555637 432110267 488228221 758369538 277134704 642174544 985449747 588428742 747268795 523712804 777981583 579349260 599428311 124173275 250369975 44529289 541413810 635501230 213334932 797613651 168314620 577435917 60151455 416910051 986686772 518092250 747479993 720491395 963922611 168738136 89904746 40662135 558349788 378478030 987731938 430669214 17245407 54568645 936522138 299485551 274703616 43445723 574978441 789947978 528852590 766156522 276501527 631857710 180425827 474491162 812808830 66815920 195182239 959037748 615709277 590220754 159783207 167474526 79355405 190917567 126026586 334529084 396089725 133397550 202231511 230127313 491984696 960716855 33420974 759484570 382945414 896487046 984454620 929770498 540591393 307639651 531375739 181117497 495751633 597247155 598678247 79380755 789897254 959422020 571333663 757403452 19211855 154698477 171198464 762673712 543838027 639263041 6316683 296788798 934275757 629565907 49038074 402316795 800003063 459638782 46381677 714871747 139813748 321401116 303472954 425110813 880160958 876246251 897015110 904221122 359856962 526075547 901511055 701533099 466971835 282019809 795162749 820931533 886591163 334751284 767899244 976041232 367407643 454464297 128582098 791432809 304991679 748023940 476352451 915480634 663995191 102723244 198489806 213467537 798997010 23049342 736173631 667243485 797046817 209697947 592660389 73917270 267830696 400299048 167365963 215280523 463562093 225560744 951080492 579610193 124832947 805976679 414319453 8192337 859930003 182120899 616125690 347469723 597890711 898037961 291958151 930602990 739898899 105494611 437929308 908832716 924184675 855253807 661004663 731076930 643778199 881773589 738270953 273169366 440097783 877647153 315511256 512081391 283487813 201832403 304291122 942257924 786422631 315162448 568798226 248453311 625675789 572758968 920201134 924723823 890214646 652474671 707586406 838025455 229335582 698673962 524540678 437657890 727697809 867114135 129556778 706153249 119479447 475034465 126660479 941329199 205496637 799993513 945362759 188833582 671169738 826003845 235716383 85982258 581201951 827751278 311988932 174351702 375365092 87079614 338303858 231171164 944576118 16471597 675718783 922331978 72754615 823668733 986079895 104537871 464787158 888151561 622885262 276608797 945752429 63264109 479914053 496592045 502745736 533188130 933762187 821842591 740723640 222364759 199636063 985251893 843716152 506248096 724668419 293647081 437964286 657994263 272230990 201324948 990545950 861990031 203283697 76274252 294999934 215391569 812485587 749038511 48736868 514093493 875408612 588364875 533556468 481299322 515570138 73310528 231513004 175841465 367020684 778523798 356163699 716880056 64404163 661424675 153003487 603057228 290554045 908643391 715391016 657226662 999111172 911997133 417876184 552142909 166394292 252853216 683398027 485339164 419260524 224022234 705297193 864721933 488413047 623339275 229300284 245259096 149610911 803692922 844355437 970915785 185235199 519578948 820215053 778394806 822525622 780996930 544150479 478975988 219276736 514323027 98490255 475023683 900961827 287977313 851790983 720893431 637418708 377168479 110174450 406642485 985863946 35144773 804402583 146394496 381054498 778128947 451574169 934782238 62150163 446215760 614848515 522201007 464292469 366031776 804080284 75126857 220930904 804094151 494931541 237090771 960393349 426690911 857852211 420365364 920684252 210141443 615445468 564211164 560947648 26442768 858315978 538049168 201110597 827668313 824238096 348494184 19762571 21736949 404802291 958453562 562047605 147483368 791012126 304771474 340203257 979129694 240870329 591314902 414675468 751734727 2411371 771497621 657061615 156097281 685540479 327251043 130322686 777850601 966367848 15974716 809421741 193851668 255758460 371937559 81725672 338382351 771240683 684420947 466889207 191000407 455921734 915386587 500526688 536851305 319159900 760283760 368365028 162109947 176337150 925712904 495947233 110230118 325085799 177398269 431069167 478047274 855849735 44650692 705369183 506537652 13522506 938018991 224446599 963185818 542303938 667122359 18815319 868278655 507191669 666817458 591811813 739591787 142716761 46646174 235882354 194760001 593254605 541958189 771560136 967043850 282297650 676486519 955508141 588734942 87125934 207661471 830918943 466810070 544337160 512194987 925329609 863568509 590744609 504270873 806167017 528519071 457520508 606794716 717220796 209664679 330338818 126183833 579579480 121251277 277572924 993396853 767319767 221693602 921729373 949082559 128473247 512634276 604498098 354065830 163567152 658468112 191184716 951174085 464254964 63599590 361951787 916057473 637634927 743251480 777711225 942162611 857447466 833029427 649030570 713911166 17256019 725811985 1009856 203284810 295591433 757053266 263906845 827986416 129495283 614078340 665965083 359589423 315639075 116340083 962410906 566778199 730346890 746279378 284620446 472891155 686927889 533291224 347505004 485560879 365973406 740263884 235505345 672859806 874899801 572650864 275025352 291793692 425942558 683077365 680954955 637437353 809455516 561313656 375679882 347484204 385405588 885650500 280203679 750072093 73474399 717091151 565485826 119302446 74055764 723621891 786910500 764922662 784371756 283769595 54438065 17315483 540108682 342311819 745105667 102801352 456358165 272967299 749510597 497970198 730892011 795621448 700547739 669780180 657586251 642359596 728658904 391156771 180375364 965280556 200666335 854596685 636240076 425632395 692243576 506812437 73871174 280360982 213912278 632730318 232968054 767403415 307168492 698060049 201351679 171758658 196177290 472224606 332557256 465991001 743079406 826400620 243045856 394909066 196309168 340268424 22286057 174480648 462506427 275440858 211567481 833883312 264036030 978619121 513422170 786392695 98156601 445349449 8226993 252418009 444321318 815536116 23698375 426405047 370440726 491921416 426044749 508728799 392185950 656380097 722464962 997143793 205140404 901571100 906198070 869305383 306394708 490479733 648128730 914088178 999670085 494010798 429939121 49013502 176349118 721955588 555262858 93329892 299130431 427331947 132079857 126167583 444727604 470016207 773935801 959704663 145248033 191249632 547397946 570428568 781184597 358092310 79129998 680981859 93683165 672290678 954905377 653086896 965584173 189161919 943812932 231213887 628815372 454270623 434402229 343752358 546978198 210042847 260387273 427567786 232000759 724643320 247438608 908398463 823543354 570486063 429920100 198660933 548810553 817397983 500679943 600725652 702926043 960410220 770799148 571952631 966627281 528934530 818836402 911584083 557979483 599066998 838282504 971391281 616443482 318106044 987672362 371450329 634184620 766007172 588873782 584108555 220513277 319614742 989030727 562473811 348835799 439115491 198084045 905569481 948177899 526965739 259350457 767921225 628006629 665578976 820186910 912693544 71599124 967531352 268289760 978736210 547044709 346643999 13474256 49277382 753233382 678787084 220376751 546927047 313017559 154584157 721055531 533213702 950018190 225161687 920539847 659427824 665913101 501850052 4184434 936124965 540888971 852483358 229511469 93661157 738402065 663480553 710054464 197990113 455165887 150255976 323914778 880161902 707279211 206311784 722354251 530244817 203554749 816843541 999028914 242685463 365778457 202645681 699255586 72459597 808938268 46250488 78091954 457246158 112179872 687406377 970555828 242275400 319359711 647753569 446212171 882291958 485260265 613839847 194520849 600082727 696708465 168504652 549142419 699438217 557697731 913986648 926198202 304781563 121808507 388331327 100589877 830592197 821376660 567486139 711222828 584991991 982151201 253183539 126195747 973687817 492966200 976993454 413804805 923379034 783155341 926868551 585316792 956437775 679060599 908046502 425393522 161197328 423548223 804237641 306013798 382550706 314837073 306179700 563045838 975173151 32637248 577236639 62632879 913574255 592265685 336344603 682231313 564960253 753425906 707974262 770244702 249873633 520185516 583929670 54905014 956414419 42455677 436822136 980026177 578195726 716620437 750525243 821869717 576932088 507047967 878327096 761471888 359324146 955198424 888383154 2308065 271733689 72884357 370755694 470193504 913465024 448484583 639628990 683707183 963508827 488160138 682224437 804964598 173574700 566167897 475126833 17795720 123854962 253657985 14252037 770512197 199840138 365493584 811053301 204981271 58396084 978620789 85812026 901010835 40515895 523283687 65178201 831887052 975202810 914953926 391290635 276644529 448897205 544511897 724387461 804213718 268845300 820128915 239114599 838763606 816042349 88540051 492114645 189588199 178846280 2070338 239128460 289576071 710229559 312159412 982471450 58294690 180534257 966154509 865149724 210483076 995710337 292329691 984423814 210513208 18485158 895907579 272607458 781590903 71596235 48557760 52559436 723381800 116641806 187175125 676682986 231620836 717430775 279345640 496119310 211473794 482087176 511920588 62036194 977049924 338695147 92600579 892553494 833317818 488566406 965374748 631064400 539693682 692689261 97499564 518604904 786849218 786780933 987460875 200464962 285480804 220950745 754716905 224347566 845767380 699381082 768053721 202220832 473575725 803451491 657327245 538034882 215686464 937625762 990857626 5633761 59728940 50694376 744411705 570825882 8565166 281697797 811238718 848573598 43166046 722135485 865677841 360175502 205144735 254360558 702311598 837386137 749522467 23623513 397816925 139042968 470707988 210050360 86350954 236773121 498054741 464021136 535789560 87156126 809550153 530464482 649796885 195113875 489012847 725415210 183556732 927808434 235034797 718383702 72504006 388935800 426504083 804897197 983599255 38896410 583347905 666409041 936997768 946801043 621482400 371284070 544039126 467397989 732221937 417419903 286472278 210394677 991214517 362827561 326144094 744729744 955651293 354259248 126519804 819786175 214845206 143978702 167670949 110108843 886653401 725088377 196010167 337032193 464014199 866348170 143455634 441409947 969613869 198835376 255749776 247919336 181782212 938257601 982610377 378605859 908096072 545082386 199473703 538868908 741966024 726698099 315557152 440582171 423497689 193764151 275771827 160552494 445242464 293213360 65325922 508203198 151437706 139159110 785138978 722209827 609656417 867272735 930949018 420134953 609100483 772213706 501645050 766923686 210467355 569932140 658680129 685114142 400908333 914148976 43307483 933001326 42590727 242590944 280012743 413831193 682508382 81901702 205378546 549426845 127837949 939494955 832884777 340975251 13095342 885094896 928345028 416715652 36254905 748013009 427831475 612308355 686184665 532306725 561219787 552391220 930583896 879342279 432131897 900548028 612287397 968368774 179232566 642979973 679835980 845594559 278034559 904212939 324323662 32513983 677682288 878900750 814170904 926531319 846352206 865474404 558927352 686246877 107693774 428194335 238644392 956867860 813335240 555399583 143983095 611815667 59308241 188879056 24651408 54462512 118459475 530176732 592409002 235599703 629903404 77613252 620187307 602177909 164149785 467602169 358608516 139104911 506644990 159455970 18621282 292304180 624765119 507447158 303773664 692735607 525394791 773138492 334777667 54443914 967048381 3812894 570237519 943261311 187148139 732778979 229198220 754180884 272581171 87590566 722358308 24898839 509639636 498055427 700950812 449742362 978971151 388986205 894621749 206109135 777132580 99117429 475055239 689507395 326249176 765543133 937362306 699600221 735394489 935730415 853835780 134266014 985126358 696432999 987865549 206451089 650871710 213815851 753353790 163068256 797894902 267030800 923777500 661138595 783059058 111787763 915267667 700268440 613942156 668057866 392034509 506861510 33387148 864717481 440407674 620535841 690968062 847226363 456444045 788285580 103812218 639979286 133754573 694170549 781001653 548729365 744627679 222105310 793407060 994070638 408459877 450826957 493039152 69625364 46148252 566233126 153062820 33050597 343229402 593332124 919055884 491942980 885798512 532492885 251283920 761134270 283036517 540556364 963279267 595636459 157848480 976263555 181372779 729377260 394394020 984209861 457219081 118170117 231626017 459777553 14774015 59972887 448984796 390542982 913033408 368427746 915540065 49239838 911146171 393818953 849272997 732890530 839416842 99992971 515135096 711563959 42507238 484016327 360293442 428412227 150357838 486653653 368764889 250367298 772738496 267133307 90487084 812315909 258365900 892369286 305064193 142882343 95636103 398102410 570377555 721714303 393699815 596644274 312524751 280712079 260128548 766507819 67426750 639580424 863247938 253303952 391626865 386789078 494660367 248665188 349950642 745090595 255223708 798944882 968868102 7296210 750111953 140808258 756606205 742933767 988225554 409881819 679857318 791094476 484813999 288781427 331255479 601420727 46433359 593757350 420736810 545095002 156937191 692574177 929396356 388451491 361269242 839200898 802341843 488986022 328413990 322427280 380290034 481478710 597931661 442044699 248336113 380228964 248128736 549159173 422185774 826125905 686654320 843819666 522556063 968217687 277768522 521603378 903412663 188254504 459773525 262428438 480362073 102459121 96993458 471283362 472515016 960952507 517913931 250778878 432246097 112919714 778939501 565034218 561025967 533459740 807351337 424196738 334399565 962714648 752925071 414482378 183181369 979512324 560007218 982022309 95008073 382773285 623618668 355486736 69462421 989986061 862745826 784565972 236298171 250220576 517486054 792729181 579024691 817278181 290003545 621934771 825576181 318198514 495521852 99170636 74476901 895284460 134548762 560556328 73393906 598371999 385984830 333321134 745758161 734161583 772079519 151771436 279496442 148248282 367628356 831161545 407938924 342112740 600379832 103087116 149549514 250141636 524234001 496734856 922445286 848838443 342250349 38322161 235691537 658200317 957102347 691216658 292304008 327583011 806780235 666830926 919420868 75709033 412337204 577436071 703462960 255275011 244980027 667048441 606337079 136404573 484671958 451316228 496490915 819942467 192072264 41556820 495689986 617147831 659870203 978129129 124559590 632074876 263189668 602270338 820768765 874674792 186665661 534948678 494507190 808823364 990884870 667059796 5924843 987887643 294451715 156184441 762719733 266100110 2228878 769535563 27307252 661060690 839750633 788402691 621685169 528366545 611854997 194861125 203141097 131684797 400143482 504496685 761688161 578352825 42135692 653793456 402849704 917718781 629422412 684966831 777632120 458162667 942016384 233892758 59127590 497151369 102080395 778740370 129154177 695246963 973241097 127345695 861633318 230824302 677591461 10217940 349279073 643255393 802368230 719636183 767283228 472963674 385461097 974209959 181333642 73504925 263778757 54197653 966601548 943319493 113617290 201581435 698504504 639857146 883634737 661183835 95569194 508989586 924795300 794975731 701190753 575905039 967417474 321203239 151567566 341890963 675694642 635309277 159735038 748985471 452744143 723191568 496312778 727752190 367985362 806740040 661789667 144323445 93738920 424679724 781069404 390787774 941488989 168799689 900055943 828731377 302251268 205541217 166366246 515752023 12517876 881044712 868756494 436852047 919596221 809320850 336326887 184272789 841997709 882885268 877877844 959881616 495414158 589964950 382248395 320695459 741387891 247822834 335917587 416407945 413642556 113440700 312472230 494952523 611637030 186924868 495714146 833274294 45510028 588747606 958347973 367121300 402338081 318903593 55006099 625047868 793666424 533351853 514493820 153127552 825635500 924441617 906015083 464689011 592745536 929612641 33097312 838068870 456167388 825142207 929153713 338413064 25486240 504512848 762279552 626282069 94597160 725374938 513163795 296461505 365545180 149838656 69744245 234689486 814455814 436453329 108880582 51518988 57355728 836141128 285521277 9503897 830598614 910835033 910560024 883340067 764573675 674576866 115664068 275597269 397189947 511256427 188744354 300129979 724209235 50149194 650145158 381093590 556535868 124850144 154708141 116633999 795344699 728084246 403302303 81509624 424939789 146121359 78307267 61306089 393908779 390309971 541508256 2202126 329117457 523124807 133531974 139835567 809528805 910785679 554647352 873777984 801486172 922815320 31577751 350444310 565649740 879559684 48675103 127683295 198249556 964389591 657957432 492886251 688161321 665820827 465362453 31898323 381800317 546666652 613776833 513505359 697231018 181344147 333839211 33864860 486886281 573201687 578943702 766355143 833053846 697124441 603959721 92322727 735175445 114071910 193297026 191316100 948949351 993122960 733499304 447489619 54666365 764591418 553119819 183769492 824590419 961918962 919231696 752078473 87914735 956618915 24171502 417530205 546469095 47948569 446225122 374793265 541670427 804134330 351768303 967675391 627585646 114443341 902147221 736765076 537194765 179980991 208067914 159775463 169054479 358414974 844907926 708125660 467013461 679687226 539230431 905469860 490069960 303006136 12471631 641904301 722782689 445604908 401546732 410118274 694221346 177814172 368347174 352370934 524442074 813352244 628114649 164079927 400354324 530318614 837613680 128894576 354814923 259530343 340640121 975240632 305630118 792194617 614448594 858393469 629239648 746666921 431720416 163152831 822489193 583455937 760886381 195655557 105882587 175514506 875462616 231181604 988819092 603964355 419408241 211706296 101642882 852993777 440556748 980585146 241919482 319991241 7013545 455119362 748959399 404710325 70892589 584764199 327425864 802064434 300661641 431405401 434240154 290718990 375164307 553155691 362800023 85980781 666612155 915389321 158932368 16457788 302703034 859305208 358060245 169432089 136771078 609347276 329259907 164714697 380934902 699946606 226876637 652192998 926804440 837135885 646026241 915689942 644842491 427617083 290776350 719785827 579558889 206932836 804957907 175491725 78433553 37644533 560885778 761751736 484113445 942520547 681432766 708453697 56200595 49131929 997183895 54118880 210253111 603427326 42899499 861687311 941250756 981752223 753140518 11228160 723623704 649206667 216393697 64549911 602589614 789813899 271630490 470838474 159983867 638715054 27666406 290569087 98839851 909827498 733865543 905119499 790966079 192397587 647398551 73457318 511315163 855206244 103728877 924910877 813596700 593376232 734154249 81514616 297290603 789489375 647203008 449003498 476603306 740964555 542590229 879173433 829161648 992860103 971984620 926363505 805396117 6625206 926981040 126153709 328111340 317871232 228229712 327432392 149466167 941412187 75329648 131379200 591164281 469307117 634422557 475021993 834320783 235099420 983503192 340303475 480312165 270586578 191239575 984768939 328169851 118520775 590985528 682980962 607018667 602224733 746770724 467900818 357966435 394619771 208822485 27536034 712085784 950741786 44812859 550537282 272688611 850591912 825100752 603646549 327317763 232072014 714681546 555884317 556242805 158501740 51067620 72167814 821101635 914461492 998715079 950856592 994669117 720014442 26067663 120256183 363661208 182056 425271865 798953244 95653210 68747707 750233196 376418746 756329709 620268497 510813566 284458807 292716148 896048563 324082004 579054242 12367988 79797163 476224 934943937 208268260 7317673 939768647 705465421 580125619 872810305 504692984 380422588 563128461 92457448 839339245 582435910 15673558 442964173 594050203 296832391 309081130 188716794 298211595 374855747 351922189 217032389 968444554 88454001 751745416 875389104 478490534 807185894 481933681 119462083 179370276 170386274 944660932 997291738 356146616 219035216 324546634 831406561 501663933 292493065 141415673 60463277 816631327 748938522 257093967 610410986 293263312 457126358 566222389 858522527 243350504 468718855 863279801 735190922 728113497 29143361 706498039 533482242 672879840 153372633 55676628 200979390 615381812 295498266 378240044 74872000 454324632 957309203 997162133 52469547 938678726 338186178 898337685 824933738 312027850 911584827 146453477 592484386 224393449 852734661 751007945 558466939 979494792 7522854 982486639 433992394 67901074 691771210 374316402 192646878 53912909 302437161 80936186 392685254 441720943 222913322 206187183 672338781 218994054 234541879 505108750 217164172 330333224 379774277 233969691 398458330 198750645 583894076 950959303 472314155 690549053 809853424 458187813 682943461 368326132 947224126 441273648 715495938 704449041 899481700 775368351 201286340 88422395 623944910 523159927 450453950 871217615 559941894 879031562 93224519 697945910 401737071 854581526 315770546 188863124 361386672 47786243 224652381 652569892 149978976 544798785 853482321 752924173 377066285 702408442 112529899 403531380 95926176 194434725 874672229 280837251 791552228 391885457 885412831 533945306 516713067 309458104 782869468 58764306 617741025 585633886 775595305 30579616 815194138 827102504 574144325 476506457 549376719 728947244 26904301 986104168 746225482 300776181 659036109 701921212 121295597 187451894 388274314 89374884 113344406 567488399 955871629 230689172 208436695 444299992 530870102 407630111 765356319 167077088 129625884 689199455 359654399 233109612 924514807 24709133 288506625 941355176 902348294 434086294 246811960 798902829 87259922 361235136 505264194 969417911 36312872 919864903 652323739 635985108 586594349 574746769 353516293 971559869 196585495 164154746 673156147 241614890 44720515 710437278 663287940 283151916 461441788 717334082 258771603 767760481 482045159 402220516 472904859 109791762 847436874 801051446 430717481 318855207 273120384 248203700 352529544 141565725 298133644 450806991 520452835 285384039 777093711 804191107 299298310 765996283 979925527 873402013 833466392 138013102 744110714 306456852 826959936 592630694 111391141 266705186 461938087 631247307 736157210 987537604 246301861 134201664 977111205 794594615 598953259 575194336 940391826 139501472 251271897 161657901 376423305 217156096 60421577 669134916 768982344 865419786 499783750 833237870 256976869 939795543 178298982 715832166 635198439 839287368 405774091 610201481 670611091 413834547 149687086 38810552 713933599 895798064 313445306 832033911 42556751 20890803 344580437 302792015 803463705 482584887 406825401 339387893 836517058 313188895 38757703 781670420 311415851 563113831 837992540 338578696 290216966 600347429 74905318 820980349 793313523 435606395 330926964 104639870 276834815 962707406 435921700 149016944 771451974 167261892 639324249 686927708 126340435 822787140 168955417 439600482 907947593 507752607 25302692 74295966 513714335 103064059 820198812 838833353 127545027 889784108 568706892 944569072 701929817 980843124 789614362 75300240 776430861 33727397 137850334 444750094 704069375 275818616 411460216 86869406 806050376 264558598 227464051 217028480 564943920 385776702 578389875 576057787 970993996 771819550 292391649 583072877 748417548 591230980 645456812 441542960 454308424 587914979 38416014 960954110 144377506 792115542 211465261 758564496 833880866 647953142 670148972 290064846 583291285 438924967 724979860 35963388 938876201 706916179 620348290 327650960 726846236 895924697 984619203 955780820 617677290 587451833 280962739 237791627 576921814 316090134 988984632 877662884 955959825 402296303 476582012 625280393 887210293 122076768 46047376 768940365 56485059 978816944 954816731 997186712 981414659 270251021 285991600 770567659 854763877 955563029 353030187 708270012 902240449 322839390 106241952 242644665 868508740 970120369 801889917 930644389 597330977 475397279 512022040 983225526 311099805 46546348 74574737 906677119 505135268 197652272 322413568 600664933 137327459 699678986 572978452 952982978 326493396 208622615 980705750 671700088 439977802 447391129 799900993 456880518 83027655 72409720 338452765 41231649 380257264 209438945 329024506 923509477 597695473 556194064 944986214 686046447 871621258 284683963 445863611 409821592 946486794 588858938 940114199 540346210 863823583 616394770 24279905 345027869 193426102 771062039 337047774 829824387 748820134 498453790 677351714 515361483 774654359 815201384 481645070 195902570 516708801 923994911 792120482 814255482 818601011 311991103 514269541 487066800 91826051 796009525 10027632 93968434 331170154 757954430 561968620 18228835 22544087 202537754 106559908 101437348 447118811 177647683 410203841 556175776 54038082 779824931 430127775 447947086 156331936 622036983 34616602 89236337 994968380 258557193 869600321 524962984 242687997 442843249 523858951 598740333 734468249 212316559 410700791 333486625 34563113 885884870 383793316 676409184 304632635 449128104 896129323 234195536 592433690 894625004 213931513 661642680 94643846 175925161 627298551 740613019 997413997 520114581 499273439 941188278 253888912 91047282 14795477 548494491 930667811 361774936 641496209 614950436 131096649 69212833 749850416 378062902 370544457 941238694 915930691 583488213 473967769 18034909 786859344 777856144 237053328 752060611 442399437 854523177 245595753 317915899 415547036 588764249 485613492 381737890 23243730 302977655 982252689 674605455 923249349 862540747 52458566 635769714 71434513 816450900 626705858 211799498 628362527 321548580 101076005 936021852 79726749 690829544 467245829 604672808 561057548 752303954 132154598 61703330 198089670 75205643 484848981 342638760 633357928 404530209 6795146 648759738 162039553 66339908 467508564 222623838 896978757 653056554 919936608 726297722 661580220 200744910 609077434 153391607 99019841 505720417 219080641 727992600 564218358 675720913 240495072 731054209 779850785 881613887 629963485 544476639 129778823 467380282 145039743 287598457 687090975 212428666 383496596 233803283 789665549 365401146 622054072 962704222 389765118 28155023 107568031 950971172 134215102 873698003 249699098 286668570 544817861 53868544 834272096 468271299 128419103 28163981 300387141 42488581 867479093 411279354 899856236 519703721 924344148 552372418 219929506 854163519 86172716 759898999 277186199 201002152 419038625 927437429 847811853 541037941 392748724 486299949 370130468 774350887 778169934 180429891 962683266 704931080 777939250 712062305 665773880 567018421 130910404 823212576 217017349 353991185 216387939 285670679 350010063 516357866 194774537 610089090 539370268 137780547 113822972 483596343 820032456 32538887 932526043 399122676 550753122 434152404 341970690 259238325 564668450 563798477 179719412 592291564 605490421 106238198 169999719 788029706 539153039 480190800 76216813 579908977 744340518 658141876 304031163 28278986 283792400 402431669 286390972 411252183 980756141 465499002 636987839 834610409 740540318 541950784 949653731 623327347 488469993 194010472 332486126 291195444 866371769 76271744 551546176 132340136 852937842 589497844 196759140 738386926 759302882 725862708 259569656 475985289 68441957 395336872 842455346 100630365 472664917 345995270 854237982 707559897 700991860 22318044 639843873 717719532 380688257 248517588 395170170 252725235 201096696 987522604 306286738 292237208 195107942 301882791 535424798 677967277 581572472 978555935 823066618 558981142 163030836 700115468 359296503 878395027 453122295 803349767 157778541 11670295 556807226 763147204 783026672 628016733 942267595 320937015 305129575 805571690 285261531 848048291 212838504 678943519 89899516 806252309 431348166 4502002 800197363 753663529 928301241 28398478 114382855 564392659 356808372 939876172 880457153 189785133 85457960 342329525 430178752 810832365 637766141 894281531 505936097 691778673 799248204 409941955 29932914 63577135 333599669 907669330 120949636 826905021 740775513 686497186 784597983 521510143 690763808 416861230 246901815 859369071 619541651 499908643 526776635 910866839 943270607 490008780 295492982 443179537 659376809 352967546 330954544 523815540 18380821 357552277 277288476 801810511 155109760 284983248 720235357 774548718 450957856 301580703 29662299 18251166 783961955 823967420 493379572 913894001 937841608 356213155 127179391 375725921 482153117 483270278 569938595 771129674 513596461 287554235 990643660 565590051 237118310 520765271 143654998 365214608 869846743 384235075 504910103 136065700 256893592 350712715 161663720 78705595 847550229 765196128 581200135 270041941 546347617 781312030 403637775 933984454 765226808 703032826 839852480 854747220 113645356 495278213 197043338 222447991 491375428 317251414 762606475 749864345 964700792 526601103 353553886 421004818 640701726 156682162 562084844 634937055 695768272 758580241 779101211 167712944 777217802 44253093 964152892 734757998 217528331 416778311 533139564 206148106 563023559 684696859 856853842 286077500 325600632 175220656 89857068 356888221 423965645 423469464 842532836 698729349 479807035 817438877 786354559 330967173 324444214 286339343 239340116 653923957 952667261 273573481 962774783 139167405 269376383 1049959 260782937 769967694 255958337 705449858 376131244 735986881 471584366 577549627 841142521 758051238 321714507 931686548 754935820 790819753 25031464 324587313 920667554 235126966 556882727 311588478 967394765 814762781 903687432 60850438 838462052 620601957 255020116 880662633 8475640 538437497 391363898 601801058 879044644 20551657 422976591 648736959 804003526 474190007 975132398 303719419 176211343 301948195 664460531 5760557 859911783 787143031 468017154 868800551 832987970 344247312 536279199 309946171 419477366 531420485 11206715 631497534 677001152 826609872 984241259 723354212 457303871 639974153 379921699 697153915 614141219 699630698 321243669 514366352 629375660 308722233 871236365 431258320 734469489 920508616 809471318 491812661 815767715 486806315 994457797 591322317 161098577 482824018 254724537 191279315 609133305 775141405 572407862 62752241 178047116 607783973 859181140 737542603 615457116 14237490 207646664 764228310 920086673 399995501 573209245 256565463 527658619 789863235 36339804 253817170 608857973 633084513 591146730 784345312 538083467 366282690 324648631 223832316 867957020 893550860 320478769 125748040 903507490 613977061 679084977 623429668 891624114 819726434 602812868 873676351 958754340 200266858 999102442 496358023 633996648 41174192 92436253 685052380 760980305 170911864 225263448 406715613 653484077 16586326 523392889 636209766 302817736 279197339 929442663 846334112 435560549 617169196 280972419 637290617 64247926 738878540 785715460 628250594 639699077 904537058 768364715 243297689 106338633 666336797 166832074 908186714 871122949 429945139 559000589 82735789 131408572 395512713 478624441 384553210 862630531 455768658 508923884 618358008 95154690 398102973 991664790 633848711 40480545 94030056 897104126 897479301 654434227 123523025 628575672 8443801 376437630 277138763 282494575 799383772 345586811 730534450 927030426 750663870 523577663 966479847 64349334 501123610 868570149 344414555 591730430 753313809 217765436 255529793 287034744 92463695 845435483 679253757 162577953 190173041 896428867 64905058 855364746 913878342 274433377 883978943 202315387 222492209 200155503 141084664 365016806 739434199 916005662 538915034 954920150 549392531 629747899 725133707 613590404 55649977 305914393 910402827 716321855 246100732 479315911 484279485 443861704 643353991 117747778 529384157 68524994 282100525 156652073 439653502 208234241 252580540 58805691 542224186 698157954 995185288 392973504 100541540 129684605 521744192 410479328 346821698 441448950 336789707 887756457 144007425 375708846 501710187 137419133 794057367 82358345 343909122 737624913 932812739 164665625 51806486 893163543 206602681 805287208 554736383 840424338 706349031 669124595 882650781 794620773 554181370 477302957 798569975 201080979 332561505 403717015 688972050 376582848 916185703 140926715 21337437 857970107 614711452 331807241 588912752 616138280 463883233 993454302 369951568 135555300 135035532 902148505 464135832 906938389 752137685 487054210 26475516 658784171 588937843 211480566 513783119 64577327 230404726 610221388 556548647 954039670 914136270 722113200 739142323 309813108 452241812 334593966 344392507 60411274 840197354 463444836 55968853 130329591 777499433 720085964 218694918 801147087 416004991 948255762 399769231 294424145 245979896 454027549 914575840 778350250 364904033 248096156 415318777 817413129 714858221 712140991 876273910 89815705 668524579 819694488 299199739 503131318 332124556 727666926 869922550 670589123 690697375 75054619 28517290 168378827 967631147 616307269 270956314 159636481 973595942 435066111 632586905 627909596 806371855 255703129 693847710 311291417 22984997 341656157 95530752 483567943 34549065 807194999 238285502 53366830 988531800 44933755 419956500 554640440 714339578 97212183 513137807 107528144 648596562 471497986 300878040 216936317 476628771 333817742 782404953 882909420 980776090 447450267 411094882 768344608 359162741 940737472 751793912 776778349 173472759 538409048 902852336 533394135 736978681 401080176 443529546 736910092 898288763 181849072 522693185 859445489 907486690 468557953 311588727 171583056 222801993 171771339 943555901 274595249 76328713 134089805 756373723 177393004 564763324 422615749 609468322 553705220 165827571 416935499 973549935 710906412 201990480 410781933 132873226 24395755 892485746 76610802 974730286 928039973 865073890 698067487 266964698 272666149 235484207 255826969 354648205 888304179 402812719 614314229 63277928 759854804 728965821 976641416 556917116 622961006 629542644 533424050 478661347 839927375 351609330 872888520 641950786 455748981 346000780 394657392 896464250 595463299 140202541 174346068 851272066 537206554 846641244 980483317 866257237 976280049 288289291 948522907 230067589 919667345 922365215 574782769 320343758 201157384 962937525 946996961 723296633 549293145 159496235 937998776 825047749 904542861 889667003 910820616 51062035 559599624 307042903 205518980 534926408 563351148 17367900 722414741 418927291 285291287 604795764 803648208 844078763 571836032 181932986 625366230 963659081 631192604 833389072 810709810 289409479 760795034 183555027 345671210 81195977 725127016 262883777 169065340 558739227 380829360 865438268 292847557 74578500 387450246 3964581 463597332 244429145 689688103 12209756 998348159 333640153 924574953 184972901 663109491 327034353 211416233 882551992 453041277 335951440 161551225 856494820 180473383 456346169 471172472 615858190 73771164 366942174 931394652 753248263 805228274 937681858 601044036 564404378 451193609 727810576 685835249 573348551 667073831 46612953 779524292 838844227 887118711 759855715 710440111 935679031 307788123 10920535 788897401 464357978 107905924 48987135 565463597 326615886 839645594 922053413 299192922 698923122 944384600 30699333 553966600 609339576 486760760 306815962 72158620 283112645 425166896 435685388 789122656 27742988 479683321 466024289 505207833 970728739 149281409 991320284 790532077 341247102 85368447 259432194 764340009 245397707 654573991 287552193 611106847 889764353 145371135 130960491 203805123 187583960 911271271 935883873 899162981 126511728 421964467 887970457 884272794 215545899 248631997 406051585 816452271 192793875 962065062 555492169 905653341 249082004 388035456 30987010 616802333 93312714 288851977 490569535 722802077 375290002 933235299 877027705 776083914 652810736 37257889 717623855 334201590 382506439 943277812 75275281 504588796 43494102 984613823 410823269 280057975 54063132 211961128 754108665 38302376 157054501 616900025 294769279 186142437 117661306 282380572 310818535 617240703 629020973 99698298 78912267 607827012 868056619 725429498 865142277 130259910 317606187 854867268 471930963 424820836 820344791 235881873 68155346 255370372 59809137 123157649 102133483 558666861 433016073 112497583 672615735 624480776 160327141 374150105 846904836 572743368 729732382 565427697 462627027 598431537 611162016 877417591 437499895 508265310 999334481 157030869 234163842 650822073 23644755 203786045 807510579 539906760 618596245 626024771 941584763 229473775 255910563 313704110 724720938 368887569 38571074 677045605 204706736 660863443 990766238 938909753 859865144 659765499 752652958 138816690 677040404 426112836 725419595 81065855 790254260 10304057 938641375 279289622 168324932 232452631 459656515 151257503 331274091 11050631 766799179 218619318 899007487 26965684 958927222 277368607 734832348 664730563 93085904 146639128 669567807 614035032 29653396 591223970 64974380 341706012 272131705 753128249 867994828 675595427 235720291 919539087 922044436 765904052 527448596 863964117 203429491 922854069 207858886 723152821 850589949 465438175 475289559 485720530 799378062 142624925 745831654 447134306 737662058 482386862 972883056 918920432 612155618 730303851 508755962 913562905 342260782 959875621 260107280 189221285 930083157 255495399 240691330 934026748 309825700 334344508 728795237 79261653 542623100 485399662 522539691 498769540 219679243 901365758 292781309 496073934 809562807 431284093 542417041 429829592 755115043 710088919 382803427 614727581 928368686 486246319 409516070 625464499 568434363 977407023 726201001 210634540 766905679 807871806 355154773 78494303 588837626 816142184 70823606 934378366 244923164 202736668 90854024 507980348 694142267 444333329 61150298 149455392 413406613 486916340 947161742 678816840 315813472 348576728 916912416 465368418 165589423 870330779 671247936 387290866 954636078 65413807 69119333 680927574 738313517 294991699 225089473 966367475 572593905 637571002 538945615 735129214 558561528 930416381 492484994 461129033 143880092 317564268 290246571 163246001 32962503 498960143 997315909 683254586 990893966 538072161 421815619 330375108 47251600 593334591 685025017 605962881 674212022 861719770 85945305 288446887 374588142 955229443 652972393 583235170 606181820 187429934 743965026 595100418 319745718 852841350 101199937 255791084 149541389 903877761 674620909 503179031 633037461 777941603 704800694 321039668 76923561 277119326 28390571 656878325 825185346 763466230 345028092 846857722 594633454 912374255 152585184 127814917 313197274 751383936 952696678 206309735 945005608 2669066 782510646 847560545 584358871 233080155 390516038 701516338 120973816 301252997 715656786 144523909 695016410 333824089 140376770 375122737 768768555 369057910 161637335 253112709 576422338 935270743 284810746 767449921 497015389 374740313 719241976 208067864 275932678 670257166 971105894 771187636 962208603 983298440 956201238 865388656 678711949 305797613 693335167 826726836 793728528 650417486 616459239 46097602 42971822 44453991 228630565 115430202 704884904 652016441 88335691 294217888 811904281 697279743 669536815 304517667 984517667 862875590 280074768 275115483 489586972 916153875 240639417 448274145 850256448 190116253 581362691 836652275 380922321 64994024 173258319 144982192 396330003 805701280 69843028 329214179 112519901 713293938 604511056 78640432 998183662 257085849 791172450 113440386 91921070 879154722 607801133 470705332 755942161 499867423 550587635 29792514 296882091 423572748 370002468 397773357 824856076 474581902 760954499 665945327 24391869 579771644 588117504 206974778 361427598 319424100 852072801 627098915 152830578 961853551 302606339 723927620 232246871 861030828 357205986 448426671 19886367 682071217 77659390 911202379 676384953 769077813 192676463 916863430 787259691 893470314 831807641 577694864 344450221 905950333 220077564 115967999 588394024 139660319 552726168 480571067 697529489 240453851 730242354 731190244 4561181 242709432 4175494 628929439 97270509 30116790 221984669 274345037 825650138 76426027 935791953 915357082 212967940 708079064 808173584 358220494 526259247 174695128 943623210 960589130 921013189 449702175 103930240 496773081 513748800 647266291 250761529 966737915 346911824 729788438 915397060 589058086 294112925 678094525 178951514 37107964 89048725 893048196 187920570 638553689 353878300 453039900 766496871 528019785 882835581 44143370 617305721 908283560 639637574 754864798 968657166 733627924 576344517 31923954 875949774 453597255 335607766 873511302 53518100 436369346 306132747 278659080 689703613 164997475 324909513 658455192 332510117 691818782 246614114 511881932 729344164 322146167 416846976 34587252 523732483 993736622 856765569 761123139 578685244 997317007 11145180 357182540 900347513 39443505 395290321 692613605 7548643 581259062 729463377 482570369 78747018 441917943 482050441 509758500 610198548 960543858 723657120 860078946 237881822 726891941 589537984 793754254 228486725 483053216 538902367 360391205 719260983 136326827 442434743 17092161 350234350 716582367 268645107 221828265 867397888 543443668 764702551 732697281 182435952 932573674 478404807 597641593 171583416 760240308 76542490 845304185 24683251 726220959 33121598 688737037 527213327 747041184 963165253 86929601 858354519 729877722 137278974 544447085 94232066 283719379 125508130 461421466 847969806 346458032 590349528 961460572 722615148 271774899 106532076 61890341 851538454 88837089 780106307 636463346 756430360 370254974 452883097 641952885 354300312 307325965 610535048 506205175 296838988 955653596 478710187 962330378 384921704 207185472 353863629 670192702 970483637 41874957 963250372 580157901 507988139 17007760 769679638 117689527 642985382 976875189 313113302 778668898 735683725 538381597 686363102 915472135 532418324 61345460 79013893 393987135 938913217 902619537 474493682 631134895 669469147 203885775 491118137 85532678 879400112 742579371 438800205 577470505 491642755 573135108 423972426 223222930 765448400 323416692 592843632 43112659 673387713 832103772 501762896 51353029 367331594 318833603 665283036 689985201 189054123 381584401 555720502 657289884 43291956 699117996 777352593 733959410 331998457 921027544 766359475 387157773 109163416 255160272 837399253 790574967 719286653 158331979 696327530 565454259 793232717 944905948 815076489 695295263 298038538 697757173 859816382 84363487 982329234 8728445 858430990 325304211 939398270 701247330 744569650 397130268 285692695 752114433 497659902 257510710 529516669 59515890 394078725 601020229 714869583 621159079 839820925 380208567 2483109 321849569 799119487 342235364 113187783 201502386 940550456 235047950 15498440 382910369 370103158 112982072 718885757 931736558 864490268 305030266 497247211 698934757 242013537 85125532 789736308 532665287 532214279 786372820 42739647 209660802 755421304 257255465 208870378 817015841 10178066 25509757 598104670 542831199 149023596 177187375 894928833 114596197 217020691 181651584 542266762 38780323 2834080 334540775 552922638 831750576 700274471 231578847 118284437 361211233 712652423 455954660 608835373 849921626 959857713 730599094 635637480 463447341 309812678 513340368 536502953 652975509 963042094 327802919 765949809 39458707 372978992 271111339 864592236 441452731 431585645 415722259 949565445 281408878 925105609 336712006 315841414 214071587 788128837 304992762 365305042 167197785 453517116 741470759 323340368 242341760 26514031 357343212 819552615 847558179 308218469 311995017 882448994 218618514 534224012 536400053 869022377 902676983 620838594 900344065 176660044 942321117 374668650 733643998 309131318 406257778 617669763 695140792 271521640 540169666 732093676 694075067 194716166 179071064 737046125 981890306 167845608 312095232 348883319 146314031 907321220 322106588 195286891 927398387 629560922 635986185 26854121 998935022 329733356 519460454 441996454 735723513 642971789 94531752 655727755 655757300 411784750 585387754 216452355 411828762 668490924 57916330 49391426 720871824 657620136 394228535 949655655 138965252 265752753 25365427 695715337 431597872 329283594 359847798 259127744 552638185 572549941 900559973 639926583 335277867 368526868 680186896 801256246 464810774 928004979 569306505 822789408 316913116 489372009 780598854 162706502 609537775 830997038 625193061 602319741 186704782 326159372 302337701 429569446 74368371 113567511 784261535 454540154 233746171 125926524 264883708 839615438 227602128 479921884 981556576 885778244 849787355 799256759 954444975 588077343 542795954 46466822 466826651 6352850 325524092 257096262 534344670 487550541 532265682 81372996 580178994 458344404 302995437 143063902 495234718 450030066 114574674 459196852 819027199 475841977 664023277 9389542 434098728 295330925 731647385 482111741 587651732 592771341 635020274 545388898 195761161 108699471 553887601 412371395 793218976 729912267 139075158 642834447 592627832 15683523 986373659 145377376 639080117 734461258 453783497 416279344 661447472 708849570 364254622 114904753 326705723 322686203 312245852 425486778 527715589 293928230 120197954 205965075 262432247 530750646 143206913 437314862 279940814 158757298 557883954 831922339 7555597 459177144 643016848 14164186 282720376 266732851 356672083 321703232 454435679 434935652 952170915 547984962 774301519 557173949 248932495 779865913 476453243 201441658 522306629 882818199 256393661 423119065 35567105 214079947 501342777 42156631 651435069 317893750 615351578 214497861 174922281 140601859 948180074 548114723 238245447 227599657 595041772 572844103 994732672 441017359 145973705 638730904 516564483 113676932 669484665 727274270 16769763 613063638 784714197 999928870 998982374 652523264 231147365 182639598 365519319 539537466 46907112 846169479 706600277 891280123 384937078 965301150 890110065 27792488 149419689 219292547 206232809 577311692 196279210 821606421 247672912 453213300 852175476 843199655 832044692 38429810 273680909 68898160 817558437 738834346 287816227 551142811 117476499 845291185 833479132 421487091 758931979 947828494 87095409 958452589 501360031 116999757 295033997 584891098 276480936 200961048 639639885 50204317 25168307 923852941 502967616 334739689 182776489 390644864 96626558 954335828 638195078 211628841 257268400 950507307 865867413 818027056 707076870 28375287 344224385 921306700 896285833 571590759 277226482 197685950 279473965 723212763 152058063 84909165 28406833 389934504 475698481 382710413 497686991 784521662 568421595 141437434 314127349 584398794 104736252 894992001 909592528 470131316 382043429 262991907 317003458 116461276 257551129 213579237 803627902 848858636 922386210 80548068 715411217 88358946 29475367 142183396 118710839 221799043 569012236 445175131 964642927 187282055 207258853 81754342 937029594 534848131 84881983 441571032 912493209 523366459 516098198 70276684 534555479 590656548 625993240 244605303 844312754 327041810 845432424 450193103 296544626 487866343 289763806 387318480 547550041 321582094 711446564 844343942 601637027 504140749 288760811 740747064 147888871 883505602 820402375 800923471 668763119 8086624 768336220 68391589 24157058 611401759 848918227 64562679 750162400 725820137 707442016 211834063 105234127 924523738 531230673 87733740 854620611 785188181 331242615 771390171 795305389 184093303 127360743 6335330 863042203 294811308 961234726 232326604 529784494 349803998 222862603 806722258 204010624 942139324 643640829 275543498 746560164 637265964 901526104 536054465 607999774 542826220 333363819 681478989 540514624 245961075 939892340 817127727 951988802 863893915 876361088 44628274 689757482 368588079 435726003 102845922 266473716 400681495 7627321 276953304 499808230 39619920 582782357 842264984 808075608 592142508 220608501 32174781 53079674 831401086 484375244 232764616 430749130 527378836 396579230 750775846 929653620 379476057 93630868 22543780 30052157 208713304 7450230 794415620 309169809 863380621 293920047 988491125 567911812 720277359 560667286 599360964 528620570 195635794 980785850 769891604 319362791 225988434 693611513 259877312 815541649 348302395 755489466 409059861 551149107 376545261 301962544 260710017 519412525 122296414 185974959 276123917 694837122 115908539 766850513 979349939 376139766 455661055 558033843 541299208 290101842 879024585 319676512 424829756 946508836 36881800 519625654 51365951 551627929 497242929 266110185 463539746 521717475 216179652 101780599 923850109 773576110 151337220 712757995 62930582 212518181 62221648 234882310 353082122 556322328 111604277 709693961 357635917 482051852 902240256 969838476 335681623 465923441 791742143 245421042 426446915 137304039 873012769 48595785 650890992 557735808 677989494 754526634 19472722 641010359 932203352 313128532 998104810 200080379 730025966 858825768 233553178 290200138 93541735 825938084 245692387 119527603 771397433 860900890 294506694 419354929 106306388 675138597 242642070 774734421 606703740 551403903 477222435 462046571 358285436 907959251 840125743 78360182 121799065 234455538 356755479 384952881 770548190 982874045 524177071 117008510 560386119 153050755 425584676 950570698 99814400 900850026 524551291 850561747 552127232 804243462 815477590 291723937 211141820 11111619 772323949 734624865 986803593 116837208 555064660 607017467 210444365 315371143 472364211 47705829 978260950 379509235 510032665 821277797 319038425 330148988 138050708 867612511 581558452 651466750 624281720 358302894 512865098 655370210 568610636 422096034 889019027 141051105 824923795 634587390 139687758 183733196 984595426 474052795 146352021 469000457 995111292 201745544 755722969 687219424 412041150 196486046 786663394 883618701 66832829 337946056 937516411 267202836 920236232 69579589 734133572 378559692 347784390 900937314 713221376 868903355 949370928 447650648 829949642 635412001 302899790 704013333 510056621 997953154 104381759 92292716 518349578 154740670 320456883 170092681 558716821 308848636 705887167 729409329 928590416 215676525 96092761 701011472 220457797 188225200 521849960 990870352 660373998 957109558 481027424 994548043 661903590 526085031 401823677 988558229 342726130 830695209 724791711 356816111 914650622 86104963 551354712 553046902 824035071 262825001 464992034 362081469 692026031 898997628 589211287 121838199 795653209 490727880 729218785 328144698 713298982 847751423 484923146 709789242 99218255 411067792 125063204 281857704 889817016 116207303 41535715 306804401 482128751 881694320 670007861 699819194 963003305 586261580 409933266 345582454 901075411 855498368 459053212 566070153 158498959 554102384 30217996 17322023 234125740 150679319 121821422 695099129 158648561 631680363 17304678 757609841 530249569 187526305 91057932 446800819 415743796 841539960 857610846 704797254 349685639 685112802 277645241 488473186 850464326 261974401 914431850 514817628 46704097 797481897 369354693 174783698 368498093 775191349 848869873 145633488 829723638 223271431 242031780 78060977 92623568 639480534 674099796 883232565 98546427 760176951 968177315 240249907 322965591 537736953 406108567 990004212 519138055 903676892 623829217 438116769 567315420 360661258 386034620 257905909 695093220 528951235 892820203 311474609 75567878 431505802 329467256 645285196 784103751 172593614 990722958 416746246 902600910 8633568 776581293 291071979 312833444 446984152 249531045 888201988 629345928 539535168 855656530 987236114 402798789 499095743 621883015 298630537 64335886 375850101 74530667 345650551 250259177 198016582 371875446 161124584 515969265 426798506 555754358 493567990 58880067 33176647 897544449 233571832 159277289 819357329 459116599 94311061 78906354 704990293 689077868 627120462 829636686 402016123 882261172 70946358 570623569 741551558 260892231 481469033 341647008 819323252 987008292 509181520 522830758 557265424 865932692 358679361 44055929 377632022 503474445 367519918 90012714 906638144 488959552 344014098 485104993 414407434 134733057 839512227 142126859 207004268 339073752 816511016 111700458 578344491 546503053 641196285 944043236 815726259 757145217 918014169 532641832 921753651 217205906 506052969 107934478 849473122 565740086 733891358 415252748 800084142 35212769 131851846 23962769 366021178 330824615 841551291 268776255 192556708 950669413 732453394 916879755 524668419 190510171 408558670 117311805 756934796 439544984 227129843 722282090 748694195 456668117 170099168 593168360 68777275 505115209 701314839 484428301 88588140 174209141 746822757 276163536 681905898 926924466 816574796 588962374 275460819 884348005 685156154 259153459 282466295 423259562 358310427 146178546 786275525 630637822 9070311 916042532 544833984 236228762 431554444 433968169 29101190 53775525 504304617 879444402 190871545 838362118 459517876 626182336 359205863 356197400 443082123 70058130 203163438 542583585 685254518 985809020 200504845 441037449 72921954 498009485 781045374 373048742 226635645 891787437 586748663 575951953 622142297 47219630 239413624 679869087 216946013 51017354 75498160 737707767 737840807 653376804 265924430 2900990 981810693 716159294 845196209 172607082 122255246 367478487 781970844 449127073 132991751 935892225 646660392 418168130 963645269 128529693 920445398 418629724 761697425 113430330 518233147 515859125 847033348 923503189 645668500 187342049 492026310 142110211 579824150 776689069 383278895 639798350 363812026 489987522 838298550 213010240 858987935 517926367 860701389 94682867 512799525 896663776 492001266 530207789 905855169 427050538 810169915 364052524 366819723 480851190 993216092 792604090 704233354 471635281 511471819 627201853 989854650 661903484 732104334 47212424 838991087 440106031 626709293 521640495 477135542 555745002 996808699 486106161 548956584 437865699 841017026 534904142 77824077 273483768 876650503 119729247 77081051 20374620 178775165 888483202 590859751 102153221 909259729 233579831 224661228 277787371 472857536 513601600 167447055 193423667 510848601 552636253 757628854 435625173 998765135 401505271 142123223 301457044 617121100 420520034 330077037 406088324 432223625 36772060 480401999 297865572 392292136 323709483 487515799 23291575 735862484 733011154 81262862 839012345 883390179 978576185 518185536 827156762 99207819 293644853 881245597 598234972 373219366 284014805 829901700 208071095 411561345 283704395 288972473 734264781 869121619 708570912 815873415 306597565 226580512 298318415 169402073 577024969 176277885 314745796 962209898 290271998 583017243 184164274 470046622 859919920 211623475 679886186 422815464 215123383 463662469 408726104 767101191 62112065 901811387 675492947 703600595 685867614 384689450 678907389 566545854 108079690 82576992 580802356 720297874 346607237 732286876 511597087 899237575 359584515 32738904 41403820 481027593 438092760 60354956 737726583 364624025 588144813 885592154 584080341 782262506 55658558 248044596 818115604 20896602 484266977 824734936 416464378 225644381 334749462 126670988 517331999 317232590 662129501 484626864 52741153 796293986 388768439 434240675 713443114 80470641 925016075 100773 129485575 473672692 261851603 666446111 251113761 515507935 92577788 351298848 276585608 237781028 698095577 176843575 212021270 188883424 858112116 429448808 700311471 179208579 286246269 469146859 213122363 618417806 507259617 519431709 531413495 262998619 475813712 105466672 267487583 170336963 581403234 882841215 718701416 772152601 357240554 631259742 321601311 364052902 134612243 890244734 222975085 907260302 307567422 124963607 375004187 454410527 514643343 115092388 568045421 302652071 499774761 76996533 551350949 903143993 82442462 174886653 321414801 863760439 440838560 921864777 961188993 719767584 894705799 589839712 710441555 746494012 231878025 417809570 201058304 95161713 80602283 456494404 764093705 141787441 417734056 157684339 77257191 512288308 346201204 448921089 260997847 838387717 430667841 590955300 434061409 663669796 62801179 357918128 732184865 462814063 387005639 783956599 971014039 101710277 499204904 320814169 777486341 527187058 109464418 253953047 415638565 100487259 650828514 70277470 712171020 803113128 362731917 682760927 845775320 878394019 747693504 340891926 9571508 372332302 140604097 373755737 230419951 763627151 568294574 726677293 299126029 443649934 14252432 492979025 69864086 1893653 118449717 216311415 990539040 76745630 541433322 844919489 168634409 277369609 570976501 464119036 599593489 884742393 102514746 887508115 908808462 82594100 260131823 916428094 824758050 501074483 938526239 611181249 873271829 998561510 290659000 296034133 845927715 590562232 96577921 199028256 236162192 837565697 330967265 817124895 828712987 43994355 941127143 225480683 161803295 672070546 4482411 398809729 473310856 930608806 871740401 700336206 229069722 855554560 886964702 706140248 81862381 226440699 671494157 820220535 196705593 908944976 100048590 464263370 81657023 428554247 908763203 241924926 309888777 56694716 362428837 685957509 743599164 70619174 619576120 832642202 218531715 234223482 605635553 560869799 253719207 113104059 339517890 492708039 946741662 432568087 407414187 515808298 106458165 129566096 996802522 646872695 248154799 15195114 971100568 504149100 682669309 422816533 895167094 462387780 633013722 339496384 695225745 334349171 869481328 955268225 837568054 524845280 285456582 472061357 474203942 360802768 583984106 33359345 717124099 217630360 634184707 389578186 896607951 893554491 961054880 620635777 318529459 316671925 800616240 518723073 82418938 208558189 337314116 153703253 673033116 865340232 765007841 897036236 242922025 80925018 913812274 573061037 915902862 600793162 549817044 535365243 594372920 404285223 750917228 66313146 866619851 812657181 269497507 397110846 228807827 970521305 533437064 227846000 493949438 352871678 210907505 426028207 921342219 955468067 522767849 308127334 725121774 512730762 143067281 972913721 483345182 145743915 678118462 772172105 132473239 53273249 772845156 4657410 847985578 366024411 33680738 711555949 163187044 258616448 448455199 218183125 244510549 792971944 393972896 67214243 77316177 415527476 90372215 897726196 492018461 781805786 111491958 411611836 931263965 388790139 723240054 138682962 237435428 264383604 15003308 990465325 819187483 941173313 442270556 874377747 209383873 245814036 135103275 573714155 865282688 368504615 309352138 645415512 26642877 133298121 932310233 343216664 743504017 263287875 684187620 597580473 939264063 574466405 451500903 495128128 995429473 414984964 458217847 389534791 557733482 656170525 553020113 656258040 312103926 525662379 937458261 533567152 426252168 160024765 989549338 203590735 876691404 328635282 241004294 21924659 996221522 904296890 461267353 895160113 630760963 605054487 987755046 652722565 690900308 941462256 928191822 62258773 726396267 295106849 700155110 309256836 465558365 280707049 68720787 836721442 973470808 623472710 972933999 284932818 886263440 199347117 351159744 454332932 625294473 783626483 691905904 248906656 797603291 244320087 732663477 296842353 762532723 671821888 848510474 317643938 313049704 231021649 967044814 371904442 625056481 55361538 276672174 782382724 714515987 377420783 260154690 61760681 928829388 25704472 864444507 203101360 291491499 594535741 715594927 509318654 223592093 601331748 740574421 453946929 865901613 495835704 763181657 94716527 512021751 514240783 437733009 660547464 460508762 343704525 617639762 496590387 930387362 629340572 208480451 593219619 99756016 376094459 324348857 464823337 584554263 489759043 23754071 714380182 844373423 921799836 650340201 172755970 793124061 797003185 423500420 949482267 839026492 702736412 187862357 518336023 267875047 963107060 154573159 232385217 743933793 155014835 199395624 296863290 811991822 245635884 29291447 118053697 123981736 24651701 282358427 80015629 778428700 571279007 986937660 319578704 855220073 153837272 114419105 672953113 729813049 457511035 673576565 47425825 327203816 314202747 97604378 812977070 662979350 364552084 596903108 269635330 853662615 76366113 602535471 345963511 179891551 492910221 98710618 700587944 745901697 923000357 794633178 694074985 609074877 836535411 584437116 721040169 747198656 962740108 43262113 340803150 299088240 814204034 493432454 29675685 677568768 386793159 330783639 856731963 804957373 646683039 961112217 994982190 323262975 174595259 792983905 619952056 704503719 162904681 245706525 318649234 346805794 612768793 575990704 626002991 140214857 41219119 794304355 495954907 971681100 631621165 237499076 458623276 220889279 764006685 193317972 792906771 848154031 63993943 470223160 307960096 850050513 130665131 332002045 956586379 619385162 672275828 550226527 172312309 539394162 181708439 382257875 154574657 488870132 724277561 15410117 48615771 675981288 517362882 662294371 569467169 694235991 4373407 43791069 608739806 363016825 93521040 983206294 9248007 461026984 820863680 144243473 445449816 335140917 892040856 444601821 532404479 620929329 756176180 674539571 232058304 73710005 79908618 966369051 362958504 380096220 840436950 781565000 970698736 422398910 157990819 694577076 687885830 40211851 998750676 307637292 894665220 575611733 422947553 506637736 437820020 613461491 120544818 487861396 105653786 948162209 686476933 149423566 60421367 969774702 743015697 480827057 239562354 458396005 901169204 400513038 119799965 248415282 223799435 976588553 983816196 389823197 602902024 7689269 837051349 615646965 17766832 566202095 148862642 136046931 759577426 500306361 432908857 141002398 302113458 526863864 266965211 757376329 97641036 610586975 900768695 552661429 642220042 443258458 804240356 378085390 985637301 710838221 882814603 620879562 875388171 329233258 370343302 393267515 130521350 325861077 463826625 830086320 590801950 787889768 418121922 478400536 924047656 393477026 800977825 98421742 954119549 760676768 642154632 162387826 298280994 42219651 766132969 688807344 983821566 995623253 974928290 886874282 93746258 478284554 871765563 379639023 344034601 52833500 409812417 682992902 59030229 958842696 629319312 576206866 940467387 994057205 247990144 193009236 972820068 175275294 527896991 1877942 892582237 305080492 675447109 371631721 729501117 846628372 886760783 445789490 625841551 863216747 65316204 988937005 332211628 831020908 87537106 854798307 916335046 69732961 746162716 299888155 327542971 383853762 961416809 575567686 330439650 566278436 649968419 353926423 722269366 483583133 388595689 26117833 432581167 663451833 392519336 267434379 151773633 281994669 354513113 911769153 900810464 353165089 317341478 183346020 227930239 499290614 140563106 500314830 166677916 951371592 987190105 249414119 763260606 859859637 427346298 910158880 624351961 760803536 809116797 763805907 623844302 425498210 46875937 301690446 675739399 338965023 156185713 752827301 806666357 289438094 691236666 851422120 554863239 251896895 231807517 510293999 581659826 864910899 147286274 598026498 347465847 957170036 469745334 476269663 40838297 802742436 368402220 393089615 129464283 149344769 177731470 104240246 188036943 258920237 84775571 772165429 810513722 273079930 959322857 891258964 625897515 94614703 125219951 372234167 462630214 941380565 499875803 839404784 278806062 185104684 879382683 94710987 681274532 777135952 82854912 872174974 510784006 159697419 904452830 761186242 852631040 126797340 885112309 686803408 439506643 884202479 525214290 992904260 995217381 316847426 283718289 547737808 792887866 136429646 534896487 695403744 81230214 379974735 944513977 89031746 725832504 392169734 295248474 204003681 16981777 932643196 857348047 78366007 904766198 867172528 682852178 743228883 503068726 737198861 87613483 82258485 958875696 318106460 826020702 766217560 401144687 87157129 118054056 526925131 728410500 264482049 62182899 879183583 865795030 866886664 301272494 690167438 701451505 856437509 158165847 81072288 557802387 59546815 567096415 571908018 656294925 318559764 26047800 714910852 252969919 944802350 897469542 324569379 169973336 310010726 549274434 248746138 895008617 441680840 247911716 424531841 642983304 912759084 370885569 713369052 493335382 102586523 720122758 24174922 571204239 790806877 193858263 860147830 317671117 494782495 489371292 842872003 939930678 11008794 710650829 77688639 265284054 751139279 793634457 561702453 626092764 914804 299327432 416858323 507754169 240514762 425591027 809196979 117573094 106034064 577710336 86513383 35655891 543904695 869803123 534441595 10952854 925012342 444197618 833215612 758457223 923382421 409347201 617249503 973917470 766876033 592930486 655398399 719040428 670270175 792171282 368855007 514778460 595499583 937345701 442206124 417456757 369729356 822751079 416983447 878733714 676138104 353052640 268325243 390377633 75456871 441200654 923229369 571261739 758705268 998980234 476178846 544399906 677019228 126747325 481104147 743746689 112257052 881506242 9302312 517721466 925845682 232117562 536833303 68545209 878606232 548209648 329284784 46170883 45485614 167512169 228273104 637554369 836226506 583804340 99884380 378560589 501516143 394176287 202595976 792682305 603865274 929273971 294966796 423560916 841268243 990933651 832564648 326954726 911322100 870055344 525547891 14806124 131668558 270372745 682787878 860077966 602512996 290469243 787076107 754630954 309046906 240988534 814369777 428744512 160424643 147344484 935551608 564082110 982017917 252719116 642921496 226261729 776185726 876135155 208694043 303975549 796658671 679998146 524345311 793741440 364283857 877603328 391726542 389880585 875292372 917845543 969389526 422341805 783964116 343374966 601545798 54494924 148425083 599389764 976030557 809779702 817132965 575310423 647662980 572588486 963248276 973932174 664874400 105772414 342464387 95253718 531688437 865274371 228294043 346804911 170774941 662729536 335890333 502576678 98198225 310233398 513554642 296642510 162928703 2845846 61066630 740785804 312049566 879809094 637271365 691007952 456427738 573109818 415239899 928234670 777711788 51433636 352576052 908463225 225160384 24866949 521137193 11988327 392056940 303919026 884817011 720442846 908989017 880611609 35494131 318963272 832770177 888407906 278511043 569155355 276977207 39892251 628888776 724329198 240691632 900685088 543148723 477033026 934326353 384888221 523449091 331619237 819032793 236185639 830891847 59744300 153214314 614405236 479639185 365750500 567227453 398711325 667353873 259942357 972787179 555873578 931230472 17487632 131100702 84256399 275075157 24574114 272277939 72828307 828272524 592879660 236102918 546767890 386536008 930064559 260921360 587144647 731377182 127473032 6297440 567356712 738997946 612290702 494108612 789252345 331382276 540940668 268648205 960459850 543501458 25905447 22559313 304923721 800173290 238470613 550628501 636946587 456077024 482757421 195666538 585892146 905056488 703675646 777969807 88630185 703381203 477437245 85693242 222866268 720531560 710562790 895194904 675072480 146253318 641610487 218475401 922679720 59599201 105500220 690821486 82690675 690553238 546326961 832332851 207312022 90128324 743897157 158465377 176220237 454627285 407945626 609764705 108952598 842442710 702670434 683681537 625517375 562581128 655185214 301433913 848842246 939211602 702402844 821010799 588280225 853356494 453161040 247117929 341292189 142999630 713358754 428579750 549327065 279375204 6260509 336391641 293579752 542347759 954754453 257339418 482417683 203838454 516994343 9410592 815033935 708700526 132316658 338575168 167697183 807209201 424895807 255127289 127788063 957242712 526115590 628572162 853089990 721911160 60765902 602395085 55770593 989985179 563845422 595617428 698944581 255928696 574393363 210266264 433329514 566172339 279516896 419916803 261916516 725200636 280932583 420848796 613036618 102712224 330036566 1221674 543614914 989746722 269043182 786355583 722514038 665161588 77689355 885606368 134080588 490433486 614451594 942706175 102329008 608427274 485644534 176991932 834911218 596285552 566330146 577544856 147644525 465149313 322469153 757695782 777301736 910347931 614590206 601998539 249200698 49944372 826555155 732237282 649975363 435591803 384169546 726698646 238276782 871912404 895354106 388053666 310240910 456806282 306140275 191505801 19028042 310941844 219310306 564388383 820223230 663955025 71616665 843833201 164023300 930204679 250948218 432729644 189985881 111797774 374004704 799102045 518531645 31782912 895651027 865354457 79668237 51683401 487869894 788803115 99006927 799397323 415872277 47605382 890567990 670924891 461461970 172429674 692497070 952017143 537439070 648992226 194998332 656158398 442156707 750937887 206565880 373359399 434884470 218741280 639744332 132072855 13684571 619601618 379137046 191617270 775356772 374340091 329526571 83512197 141227322 664618978 81684185 254971003 231548209 299160617 453746824 48982776 205016457 932376610 189598972 191648508 310183147 963106608 433736673 800945519 19933567 427025538 924716667 506010248 286695826 258865726 520642174 763982721 31457749 554617844 143300456 795920834 596305361 859706267 788923781 536891395 176587854 156272912 828088554 277307239 174804909 363882064 316429925 155114308 977849741 61980693 80072095 591599347 260237697 511344108 46596871 813010940 912783149 602461600 358978570 975658771 996834734 314958733 526351758 787314141 947333509 528674633 896451201 287647166 390672175 137049184 549281674 121927138 702625778 164615185 558907332 632132695 147490400 354978596 593446219 647904222 578686950 832186157 394966535 707891743 263815848 346052741 323554355 140490125 460831989 450881742 400997886 478308662 924391254 75612188 902195053 939384450 867081866 566913863 49985443 46545337 999535415 351866619 672118912 163227894 982526631 253104542 700704381 244505853 908400248 432453149 670605558 294431506 822512836 387831927 442509953 585511462 39828509 942969625 701939832 699313808 142463059 663690723 215350592 940996303 331925676 814533511 971545644 188392373 582111252 61161791 512109100 418124105 43075501 642488966 233575778 55516856 533162663 722356111 667049432 754709480 484501179 852765940 898637415 355979782 152658424 682131490 510054458 763627495 463391275 27417006 173282274 54793758 793331737 412936055 855586070 97578980 41028207 742641959 745463407 821535807 130716612 682493372 83831826 490658425 409271152 708680816 142603364 285466475 105802207 8071584 183430237 450726640 501360612 613172011 577509209 201232472 112157095 536430868 159043229 106704811 887677860 791710650 632195657 936602381 51747726 611505125 199592572 83519873 385488100 280226359 494848956 73927119 278857009 179109477 432131954 637134051 382304955 752893953 154115349 665279424 337499518 966993794 677970235 892038801 727177698 96452201 428792962 900383685 428434264 558783440 570597811 327266174 304715624 403710182 524110908 470372988 297995801 745885368 76151991 142716217 47813360 652330739 431688932 323773462 998114028 48159525 632278612 630728208 521686241 813919829 109522707 148177951 299099962 214610233 727280514 139078043 977073691 740502705 765177467 347892465 785462091 3244496 389694413 368081877 296480202 438941471 695908169 636021134 287283872 416423410 907105514 29623214 822035637 723209788 372183268 667085375 195591398 899739472 58855468 592918407 96731794 633685940 41474420 77109807 182896917 678915282 529979848 660054169 208697431 233717978 351051505 582011858 899721589 924798995 195946219 288284151 167566058 246246811 410511595 23268728 471979832 371173736 418781325 498573702 404356513 566243860 685972325 706616036 693240536 315955844 347892915 432075918 624213326 473076001 566363606 104962672 934763886 242790000 607528929 389676566 261239445 858199521 556965593 613618796 109348679 308574348 798346282 937567978 185319224 395203480 150312787 70190716 167935284 255157307 525479782 858653184 909093905 75157613 428996874 455014070 252888055 240335356 695569904 278968361 641378987 898201835 527157136 160986445 210249693 594886736 458502868 697070129 858743093 558035682 540153908 518479193 992507829 732698648 708613593 781632550 673381162 589344815 795022764 107793991 192141682 909580735 376357045 408065068 335907423 580300732 321643269 365566856 805042894 930074521 643567396 665957278 356862253 547081939 661885612 558655584 251393586 170093264 382197980 367736466 691172960 524173399 339893844 444418774 45445118 554700687 386990026 450255715 319568264 170498947 660989145 306175322 902082063 567810169 826478505 223427651 217465897 411300787 444783419 366336892 393682810 846185418 847534392 157495570 364645502 460868377 158128324 22638252 100453423 889241854 532036012 173265357 583329869 374668266 197229570 383801571 169006065 84242950 404097994 82331947 386122837 839716497 434709265 617381990 869287911 424767094 491040674 295309526 462550982 918095343 437723434 176602260 347492982 490494466 580447689 219320321 589106378 388477265 519718161 282511016 913451847 200492573 993798287 900818672 748062579 229923210 133047265 189862896 851291438 199766095 202012442 584542085 806428774 254253146 746027687 51133273 281511755 205575685 650461765 163729908 749873410 369354006 69147640 820665275 192576547 627273936 203709098 423292101 580249875 97873772 981969005 165503474 31930148 858034735 935122452 929964747 77597875 562225904 443312883 367761772 146148307 776155063 243703414 656788545 660890261 872562260 835612644 596271034 313828517 781440592 305923411 98419802 483215731 683232456 356223732 453359182 332345254 367528873 76233579 595501457 505078094 941528818 740916617 480182170 531918556 160541355 101248259 547396330 166530998 554419431 488848555 525531026 268676264 937632063 378811995 306115942 282371374 168369204 857125837 867199065 193717223 708277008 488876402 155926314 38162482 77880416 595036310 349712099 543504464 738991580 911649514 902621930 885996381 306788726 148996451 563941809 191654090 79989902 59252414 744680328 679372394 770464728 14157437 569401395 610914583 885276256 852571060 11360285 176947294 75107761 317608256 713728341 764279253 571156940 520836739 88455403 242810866 190242663 368152628 492862645 838338870 19970682 900155217 390973255 979766874 953465689 372710709 564828139 172414677 425972347 356657063 306783575 280413731 158967841 722414804 619778941 167913416 259267331 533854587 38673079 654104259 488675452 369958844 434807244 458097980 714121335 122802203 362790958 553174905 164206130 238277041 569388699 515608763 433691478 685604011 590333158 422470946 847304279 591151285 221696248 309559206 43107220 494955058 142704723 280869945 623916842 810862471 746417812 109054817 215099007 707505827 529138420 979594343 711842141 320048546 45117174 854526795 82111285 626238653 692411944 890735113 262639848 124742604 443421649 199846570 19855476 535105530 309522609 762115586 142653906 382468028 705762775 369115841 463537759 123618250 90626351 500430504 909644572 996885332 257450199 103697762 498595090 572018658 461583462 682880283 368830841 114801165 148838679 473927974 612111184 772204581 311523322 463212713 232541383 300656318 408864720 75446009 49020653 676043577 914297211 757828037 961922111 826113591 335473268 850751946 365384 460603600 58214717 928926159 638555377 633672192 926732371 529118280 342631612 720507327 272691454 786806874 561924006 321294542 786008016 103093199 755531191 623612700 621369826 376265722 358365251 774150260 665012464 1635915 462008371 21593083 148761488 96272980 676683163 336034612 818782183 595950930 733514783 158909960 964186546 167305545 91669773 500366727 713200301 789141906 287903091 815457492 619986399 246148203 966287522 653353528 334736065 995084377 509685954 609185645 816854199 328330831 311947082 626014375 451955948 48031765 376566585 265396679 624015629 362599142 557653463 581845989 520945899 411018972 907806928 835384006 494135359 227808402 529809312 208757478 59210792 368712389 461387581 552116607 425935373 140696275 520618997 885213949 971642317 467162314 525711999 105377804 459492369 24567319 397117395 220471654 109029268 957016518 795443323 843370030 259179632 422116144 303055561 261107321 802634267 931498808 146592446 492779321 687772942 538198306 827864969 793185733 786128114 9410026 294785916 498556325 23583513 278445472 867024031 165433361 16305071 809926519 161007729 876601585 911367767 159227148 52665591 444277188 991815816 494364742 595193822 456646138 487139424 203405516 717956916 899035492 348576120 814635633 862990379 146354811 793934084 532151094 443449779 318956025 626948080 713871931 142341728 314778188 738591197 716670640 869526080 375387094 179664705 154153100 825218790 463547457 298572026 474759190 305482099 427395673 806518322 839361380 510863154 380839825 65260381 240729625 311676217 531173532 940539747 282077582 15671085 916814406 152744755 804034201 817235155 339695256 196276058 979682451 121892343 20735333 896869956 95463348 14974055 153071707 434736501 357898229 646132008 513219425 844650227 716137884 947842611 386929807 679330274 636187455 333182643 694131409 540359318 780344513 719441206 88020389 946571433 492855632 118254724 895750359 245804982 961300832 401585872 234400297 257146490 746487236 364999772 706124679 101408155 684274944 937949673 676578070 840079664 664315295 822710614 862636987 66736580 599329093 862185263 434398936 949407529 169725292 150190609 90517581 767830866 725084482 895706897 376751959 995730960 947288728 209924684 417430881 62086349 676334153 466421298 773430066 341498894 971421433 958960351 264890281 760008623 678273776 264118508 941616283 545747416 223243849 998142310 513870215 696137444 427579668 693823917 698777629 901629736 474908342 468592518 894094738 685205800 326538061 404098709 41246949 463165598 538737206 277667848 23341983 891227152 287282050 678905234 983148925 323920634 123486404 53039605 64020941 773180997 474853167 850638681 826455569 815747358 203898580 746790313 240860837 285104648 207376459 35592632 396586065 286476037 306255803 899978722 907969090 148271001 722546548 81327328 582997472 310692231 47255403 263794675 380117334 907368375 457493461 967816506 215539462 510644817 800863908 799065753 667614956 979683125 939719309 931178363 148502318 55308117 595638497 282644366 611845914 565150445 169928731 552334406 57251368 114580181 191802868 711612557 464505725 945866523 322183796 52073508 324814217 385328322 765607025 176147725 41448691 570625777 566469503 688762564 852334905 328242722 836375923 821613375 523425420 583576510 845334072 936176343 374782086 917549361 543311140 190579022 268464230 483501529 571679757 683748405 312597893 713274398 250934449 637567295 236772624 761851339 298351478 668459381 927170445 688521269 436839519 92136089 688011110 431800628 460194919 745289069 829356083 148942278 145878274 568959968 44862571 812276561 806740794 549596991 361250804 731752083 271929843 192064976 979625686 27617066 304945008 18058824 170821162 601095683 31308920 273615948 739066946 476047361 184479005 874544154 458731160 980994335 452100583 164178320 865618203 69292531 703577142 968426929 996920063 983666617 290345571 250669413 265262800 444431067 187818986 164935842 413207593 3303460 579502399 642517556 713427394 868677546 128789744 446960998 945884139 806165528 498124327 406867504 114891517 868761982 718147300 522285840 881661807 116886406 438433947 719300636 445932583 467050921 112056963 796065104 156102197 197565172 293228500 406032227 214340254 351679056 145139040 865336163 629373251 946150302 757801430 601411796 990820849 498324428 137755506 344510624 179348896 346074116 851042596 634031116 76378326 83097836 291655773 734396644 452688469 93837380 141197146 127110381 281933256 774608122 593686817 691003432 347946860 825390076 819570427 446332740 530368483 42872020 531119308 692120804 215787982 972712082 790984192 245526370 359369405 226872227 472670529 133778571 966606200 406631135 744267919 172090801 538970721 126959987 270923756 623498758 830924351 687424325 696262780 510435591 798471374 828507150 39517257 576669960 357690501 360570774 501832058 436975659 755107089 729622548 485267613 782286136 507594829 611453968 677760429 786552508 211305000 592009763 338518767 238203708 262721897 148937587 883959889 863853640 287563058 898097333 261785453 472613629 531451298 646163876 735215676 825930181 596468077 969145580 179599742 87514269 33193781 187998407 729999191 494058267 317331515 47861203 541693945 53858472 60556751 904761955 198512629 953326561 20728117 821419051 617766542 793082218 910745740 134716734 758706031 489991600 551210422 340180351 743653917 522110965 689490407 361589667 198502966 448702981 846489120 823992818 737520757 508158531 38078870 989379918 321648397 653779398 281510805 942407399 126922856 492685611 892205020 130498717 79310328 779264125 39481868 693188467 780739732 520614742 266739069 917400423 338548089 926949212 879974007 473630254 258193396 206940212 896149792 337022810 874279444 217302695 702807760 74296367 921413140 664303987 517386171 898183909 660994336 596912568 616644252 327575118 918960129 828709883 771386917 900790714 247367475 559994296 886879884 823045219 185887940 250823643 596750229 748814428 314216660 331586815 585334983 988617338 660228777 714854796 622107287 874742521 98795121 143541310 470579147 689416881 646512314 374863401 250333241 676394373 68645986 147974574 53154392 365516019 195382737 133686753 558821145 961254618 800842340 433158917 438196379 781374820 941996858 703484179 724558854 850017470 29631436 133046252 472800373 852984997 70819628 885012985 883877838 544500357 580992492 775074239 346394400 349211422 523931236 852378533 651584516 498238824 859643492 550844948 575620675 767298066 359494032 68208529 790071479 484242399 483829253 535773113 472448894 974616327 780987634 368523494 861019751 662760375 744749494 243881057 770583575 799546648 58459941 469105604 182682642 824231809 308415698 129885255 550007792 650973248 42046592 588041652 431016577 848270114 491275545 132845424 814758220 617945039 657903079 99197121 198367619 775540807 970429814 388927594 357716623 267502967 869229316 868180352 887495734 242827085 66604092 57718935 21255346 720857086 638667335 303482890 949094242 279746567 354675439 152019492 473018674 540034299 448758760 499041460 548373732 673186534 896523905 451371395 433801208 452801358 212406581 522736114 265556903 486853674 83364711 757586842 60064607 188347361 79615790 8441560 126780714 361333174 688836485 751905747 611371795 646253853 232437207 328703789 953063334 78516210 148749844 476675431 376924584 48056982 805657971 326993456 226627654 435151180 74854478 957482504 282092116 566932175 276242306 7650092 386622452 43912894 999586709 62909533 209299301 475414096 699542820 373247733 974704640 794143661 568132493 350611929 295740109 287413592 153822322 391672952 297520951 247931846 659751010 770858660 327887945 231362794 764222510 295983193 16000972 473112240 494859958 668171607 472319715 345385038 281403817 68229138 931274123 888076227 254636122 708022364 72826334 853208989 84430011 978210333 558489301 583349491 889227477 729959574 553710406 736347406 421617527 629104736 992383444 245388859 976284631 674371056 732284300 960287201 522412865 913224772 878710058 702012428 27930517 310289320 413058567 425274925 791654948 767886968 203050243 124225051 777352287 295648626 305747353 608972831 668659659 148021810 253005258 896233442 124767539 940437571 403392145 71568707 801555589 382995518 494178738 528747262 756267472 731639001 908372419 504498391 111199875 220821412 677779236 238813476 252317235 900362771 422868226 846227230 133152246 649304416 186925817 380649410 182243898 919916038 738771791 213232860 499198586 706551742 276937644 143286880 276580985 415163140 641516813 838690822 352407076 927944845 221492790 710197808 125792585 895190675 521672027 500616281 56852234 84723943 833222824 543807127 263631156 365449394 556968816 984297545 234841164 411217334 636086002 440894380 563559662 934863871 787617311 104073030 661512929 106890000 719017993 145064026 825959743 322182017 654973210 84246543 230049896 448946166 370195896 66207365 172180345 582300977 339329978 466689981 746884774 115881825 295259625 108692147 636053646 268520939 114229729 279666281 467199340 495075199 815752773 570423828 609635696 399555813 633360524 173284364 523454930 506073724 421798886 102114861 977622584 854789132 629894615 251636064 442852224 505368871 518678863 422087629 332974620 185732669 436141283 66064925 811669925 654301451 508891604 26791727 109814595 881718459 528608151 629435586 51135842 563342052 470603297 455535349 552788793 512378469 823247170 189715776 730035824 113371884 572699664 15062685 91428936 937776813 158938515 133964812 496718829 929607350 650114389 729355662 108926677 773152403 983617494 470194130 520891431 138638411 292304498 202907134 414641055 376433486 387354602 715649002 92754706 336483843 704602130 36008192 873112430 288960642 625097156 871038193 280768403 836386675 978417838 886383893 292323699 86416187 31258073 612582920 512705926 340205262 744720778 179879437 801700698 487206230 191401280 913029270 766091576 952475839 971070814 495727749 427310971 651242637 511358083 165217832 922991061 865850509 837833833 141842261 289691177 394603550 141326417 790940834 995306512 301016612 958183446 257963602 661969046 377558582 749083135 660745025 952852502 366948068 329371122 321890106 465167324 755855121 917255402 239736396 552292524 539236991 295687962 169148776 267418675 914486058 159871416 539302594 106794472 32032390 254525899 388226342 585389913 995056447 409560393 9922143 206508945 180664853 84423659 182321815 984562772 73834679 750609662 672100358 984787529 915157527 419580943 644671594 54986998 672967424 102549745 501219199 623806175 700482957 494061630 915603511 917971973 455728756 870747207 423652788 918633012 241277419 655149713 680982317 336641720 238059375 605979272 324823191 840151959 661618865 18899815 593733654 262405111 470767528 304046169 342020551 404058672 416069203 955836217 974330704 396791590 926253315 635508983 749679539 546414541 16438607 376422099 784240001 510785130 616363275 624852269 501231066 555157801 506130955 273349184 207598653 185949322 924339576 111477487 96407078 539071397 846028756 908165615 157682445 571093735 314191089 63825485 848890216 359300007 256718172 68589897 649816043 663935290 984829958 975765445 62257158 231554838 541859981 25129383 213335571 961373963 632038232 194980986 410904524 509316228 985318425 621810043 511788101 742711306 153889396 930049053 802126855 853409544 191816466 225763794 871117651 413604040 88118933 913383674 715566465 959278949 117727041 710808150 440133209 431247724 98170780 67758197 338218772 702237874 413739520 619041443 565019163 469103977 634780016 32838125 353855877 44520271 654625878 343902837 208389017 527798665 18076431 559979437 499991787 476474583 305223787 584253572 255483585 584020914 503810072 103594744 434936696 566283011 672649089 880814951 479165066 930589651 65170370 534297530 19655937 966569016 281699400 59257281 334682499 518287808 698016463 781477174 40856674 875355613 196166707 759289729 839115239 478578888 340303628 624288870 794584466 764633477 308825687 932083068 104112196 703043718 360172668 164063957 538378506 431515219 248014793 829886788 639202167 614752 460497177 52546106 791103371 687599629 46870142 270792392 124941814 441174370 169072833 694783727 805355575 92716285 258743122 576333442 336382483 150637230 684695518 155938575 258427507 391927782 290925677 266319317 262831498 976627395 444545784 767854157 157008370 30797255 963341265 800633748 76350704 861005939 449142051 45877844 378229176 547283936 350705852 31328289 42973320 420953174 155746551 784703964 825608808 47375993 825549549 656651554 294167322 832107629 52189180 635410985 49898506 57337736 405462901 805944146 901478196 842533845 558549998 180323073 492848846 348028637 335153056 608703482 471319166 335414374 745571330 181349763 849467920 437061225 564548412 630247745 994795232 310276420 184438710 512052133 360633781 119019566 244738888 95648331 891080188 384223278 749730659 672858586 768416090 431832799 46809690 167002528 347729899 832827875 592095129 974149367 378039853 5387178 338101418 829064298 66107482 412142681 697285001 294986120 129746376 995189248 166269648 474206305 950499137 560930818 964652859 730920480 150733315 431387718 390016940 184062659 930678376 979908285 332413056 361206815 68459972 727300660 22849294 565734028 996947045 413794144 944612288 44642823 115130702 215401632 201350313 524432095 791956383 502292130 496999738 559256607 301720326 647778982 380250049 264715422 297012384 439141814 864795602 975002389 185267098 758654380 278428061 399730719 49166906 149345627 427145596 895192739 629047551 266785353 63290573 246095155 806111797 292995336 627364165 489757614 783349380 984973004 100302883 285697193 449836538 633743160 506532117 825011106 459499559 980349717 164468655 143788802 582033316 564316263 827420889 626472382 676678031 404117989 443927384 442705615 469930649 63528540 999911578 524336711 535845283 178327167 882207959 587395558 288347817 201550455 150174328 132832939 855186782 935147157 470687337 65466298 954509735 601143257 340774952 77422256 426178599 989746089 355074546 81551958 860725577 25322353 420996144 866872844 529203856 869804299 200234500 397318762 395742000 676750811 527162621 5891942 388496127 115826399 50310991 269552994 936972910 140580364 469697089 96459687 664806137 339044528 472383447 787691925 854134071 340914378 153088322 804441402 94520404 437733050 131216026 560645981 478881247 869112890 282960597 307961066 157673469 772423940 293659643 424315267 936127531 368928256 99758721 55303859 177967086 459118634 605112376 228850572 437779330 533589127 715442327 418415846 838029050 756163166 198050313 126232330 279258825 719505830 755317415 320749095 860079843 544592431 6858359 71044015 819849395 315132713 175223117 642323043 192799457 749667540 713247722 746391946 74473347 133082243 422253352 292114580 57652019 197182142 330463624 190079940 577468813 796070170 703519111 573578749 61303614 865924702 552078885 215111035 163956253 916336717 877622543 427027437 119435607 880530637 493638187 38532704 394371032 408703406 459653542 648238506 793458635 775487529 822160660 467993755 533381472 46312853 42895579 778414278 219965345 561401420 697349928 990556763 476642394 639378020 616713672 11753058 782691573 855513894 289190987 655398990 931676312 680845255 203975137 521641610 834531456 543252564 573712480 916238283 258021693 161948255 932431447 632867607 591919713 377055970 597341258 515330470 866298150 846648366 668694766 285772750 197620616 236471524 656716826 557689947 108702772 486739779 23082410 280187461 671675881 666321449 859473917 819569 798357781 187149366 255497285 687652125 966950940 581753385 14508778 442466007 771581033 111361240 651111507 42111805 443209420 264366299 421265048 507252075 543097893 597059310 580464291 866664300 100745874 809759323 161258293 359413040 168577739 674999093 357412729 453793644 889237733 580253653 793731486 963595244 199903773 833383192 255293112 889885895 447762346 789663563 297992850 718478240 841785531 878755591 550466745 564624632 595740855 682907969 685628234 202776944 966151167 935922032 118121219 531324831 113401173 750238088 334230746 383271298 518697926 421008622 85238088 446284322 759595204 426666725 813896160 827131038 223956401 198150319 247517808 262859026 116881681 683030067 284948623 894646817 886444328 635534998 719293031 810453908 537739534 211122322 760389391 945400497 237264567 615103653 942974957 764313310 520101374 826417628 562956431 386756202 183863373 199752414 485848438 513724400 10666196 639565486 710882425 148461215 797404812 144277599 85772219 855270592 547363159 753588722 976080294 977346888 518049563 546444923 791677581 698566345 933467717 462147012 256677054 981940387 334348670 629932764 449725022 945524084 825644571 920058243 672570398 709296516 121931359 196028308 434413773 488438697 617285295 677799169 570325921 842503985 786264888 452969408 244014754 676168132 790972427 499838393 167382323 683131334 538991961 885427230 84950688 124339802 875221767 320931422 422713457 261622411 676732742 485469952 174108529 500013252 587091493 889006899 261756345 432131866 397885944 940147165 868969012 4642105 933965934 910127190 938257097 144255681 862259987 528605610 450596759 900073359 866654275 290022932 79883671 302790228 639632388 167542502 239830010 132049238 940613241 456042672 175793986 397161994 947768723 51599883 488248388 890281298 647062738 720473523 370000825 758977873 886977454 882134798 908982829 762544796 887024891 887123857 940606415 840357670 313453638 835919478 898241967 491433907 482781841 200574931 293687484 74317295 194706455 488354533 928895705 872607427 642100730 478216412 49753174 683651070 898665922 404471119 165261889 413181398 397734737 735912013 202289114 95581659 364208692 428134979 565032825 272217460 478183117 138742213 657095402 346137310 948262095 787761609 205645573 729158518 388241931 536605846 354984463 293581095 502898576 634551583 199134009 512283659 630996732 196629755 985708253 885774252 281065043 197467466 795244670 66397461 652563351 612056037 480199581 871230858 460377976 734598401 280155508 944374666 244520164 659926293 189177261 247234696 854476165 473064840 609028977 412496783 756057256 689213923 91712107 949723841 583223322 471280769 509000646 762035591 902491386 91547529 638178613 434370591 236062038 456400310 659954270 385948792 821848935 686740832 908496413 50640501 309550344 712224829 912547906 978760589 316039142 103549026 481734935 866739120 915499341 20307593 204281497 128567562 215999084 522085473 935911210 946177798 33664091 929850999 710943803 421989272 625683078 941910440 436703362 824030994 675540042 478808004 564720121 249412485 262690255 919302350 385344358 141244839 857362876 389461099 793148663 814768964 64537026 30113919 87529523 29200009 499004444 234716326 566067509 52032667 173944010 244393898 899966978 688566939 759039238 602679845 62413304 323343350 16885653 23358732 349787011 83740370 480884921 497308482 936762827 229164486 873737711 662356778 11425023 222803489 594670822 635111131 591216868 518274724 258827578 62788707 907322602 955276606 396298559 114742852 125772572 441825155 468548571 465881581 99126173 304308916 881357343 913671154 894508608 838061221 472523659 45074081 980832752 555358244 993297086 859619538 709720193 422010733 756258706 624532837 181634301 99274264 203847939 135070216 518572135 807434729 634150433 897321058 252407636 161720080 62508252 727965108 429499116 174716183 159782171 643005292 918035067 213727339 793603449 549936740 991921356 199001707 973060249 241472285 584504457 813910104 995416783 498162813 585582051 896590307 738510479 457451277 671970280 721819945 541010717 653034274 125184822 327003038 98421023 842094468 429333748 709930671 738180793 372103410 326214021 257216866 586366707 40597301 669320168 815187851 9918832 708169078 574322361 158597522 737915959 828246246 127992154 985891681 63571940 355705558 10734747 942257604 519474309 677917065 398802833 920890642 180321408 91122062 998151072 578349111 252698291 904615119 890610857 992764297 623976952 661319651 968984103 26522671 803845866 141042234 131048898 639162436 175339726 107539402 778008707 41312573 605028962 625845132 719786585 71233149 401614795 298026909 970832208 426534610 370848452 349654298 706458210 324104981 72826393 472628815 725950137 130425382 117472760 232824202 306005005 481394743 34900984 296572024 534317111 337532834 860411861 828437505 896417552 586731018 295482255 633191036 653287093 582372436 609485318 545588877 152198567 589756321 856976991 599551373 967725321 957871962 617030868 89051897 903412178 635276168 189427925 755546984 902811548 604486552 638373680 623911049 591938593 79025738 699314026 850834419 179317701 499285350 696366580 627642999 116901929 327447794 600234832 970456567 931736575 69136669 309713069 982510948 643899626 876676194 792879971 323201706 452330221 552477507 262496363 579709434 903177484 733252874 711278118 343753367 919396671 467214637 569058977 415552049 648379604 887199317 998354330 851378638 531875366 237844005 795600605 228900992 324596202 372844007 87397271 527446527 848176897 477225313 881554261 69281508 238603565 139624954 537355777 672050474 634853503 298930579 927970223 13742532 400568385 721540299 606430004 366843984 179913132 532128665 928975059 684181197 477448898 239878024 242119903 432735744 697453791 94511769 194497271 572884607 733942115 99874482 498881533 294795930 428609019 965770938 885611626 16572732 846141212 312376380 650495568 585317920 982514299 669909584 779813626 123439653 36959871 534128397 83633240 295963317 514708843 180647324 795703845 160704403 187327860 338873268 466658569 164913754 500560812 466923595 601556704 796297307 985227662 287780607 89493133 546665495 50304674 331137545 366434070 587029605 500148872 42028561 414302487 848134834 114940453 912597426 116427602 989732171 601042281 353471707 611014601 530043501 794998799 145883685 835915667 33844487 610297443 470348369 740639932 779406990 900095236 365282141 860456698 312382785 424077089 373417750 605755963 271151059 358950350 681842454 49960184 587752160 682633188 252236411 60293584 959551343 37874164 956001849 517256066 549170813 167058893 63493011 755675736 917514926 805199218 927322939 774062638 916091808 380857562 459617634 100604734 689660189 741639541 407211225 957919446 349829105 440271939 457634557 472260610 102684931 36772158 954995466 472175948 387674365 878097899 286720838 597067344 837794704 120024443 339996948 678568322 1348124 608004286 127262750 541080551 804052768 762115849 310352876 957988556 17046290 360936696 673666292 256266054 366804392 879256268 356244702 167368403 118337567 172950775 693067417 103814113 665596470 521714080 514094444 589130622 170804384 968695059 484417156 476660618 526430817 845622892 918547867 782141672 727457215 940074997 750043480 788894052 777542625 191343817 926627469 216578181 474162625 515957433 36767380 302829075 240650871 396641619 416226379 364888125 461571297 508733067 214445896 356966671 665323927 386665670 615879223 360032574 492457539 956435537 439247791 814830414 202055326 124391539 966324835 963932703 799519762 242174861 389230192 572787670 424797379 633762186 133237817 595309557 741234354 666088679 138247576 294903078 722419948 447037764 36341541 992602640 486174184 279791991 384447134 410538265 905295119 582444880 785107594 632333134 937384279 312618654 594554618 785195121 234684599 413728418 335380252 659307237 485679039 563408864 152208234 768380950 383258055 507307429 560404518 500559708 55715776 886979788 232343736 970200146 810764873 355951135 780480665 549466115 246408433 316490264 475741803 714589292 874902272 217990969 155296139 997480024 841167006 118052967 257398614 502114208 382204879 826369241 631276193 732664355 453742517 282309566 917147731 553223203 214539086 119015936 108658424 85992549 327204445 585372042 74786708 408641669 950423577 637021944 73304788 598050807 895424098 179493964 942167545 136063358 140269712 604035219 464792262 234188715 142533571 683020607 474146593 676893852 291259367 730609753 681694230 944870919 263441866 961588584 58255516 129027459 917375706 277910851 273207918 692392221 848403308 853119415 604051512 3060186 823161222 563228023 304686443 380806650 707844595 562577724 635238527 298988455 949213771 38657038 818048783 322719869 701638639 782604112 486373622 412463867 362217880 329961150 50663270 16262974 707059765 634810158 205646351 938280422 538541583 777206654 169200547 662051041 363559940 636330362 668035636 260302853 410937920 2295839 830721574 151711597 893470556 636874391 779416103 261374311 387186265 926390587 1431379 18273281 761792334 749544342 286066858 209906857 475177893 899753384 553630539 772715598 85212519 936689639 912523107 397676938 169767178 963015631 765396882 323732742 632102638 609173685 192466853 446213626 92382906 897414922 676037621 298716296 173789062 794170246 789362438 373785889 265827792 480106863 759591176 594841947 788972797 753202803 159182547 794534326 932045718 576921975 287733958 450312400 24200028 276931370 845614047 944680639 599413304 281032697 732298784 608747508 358814176 930006459 744413939 170696004 68319591 511411517 536635720 442938086 805585396 938323977 408550112 110642229 331216668 553578638 240575169 310860162 216108201 810013377 578195328 318889305 605817747 377853324 510890825 882235041 242802069 830216900 351670529 44258718 689072824 488700633 248400768 650814212 255096398 393847031 503472687 417616637 4771069 32461756 820337243 262290161 258411140 395003676 256467163 99393532 607274255 153904953 843874337 986249673 698997177 712419952 654600798 406054402 771969574 235311207 667241884 441635518 956953848 867783628 320352346 619259417 500330295 24323360 358472162 126405067 142230727 70844827 422942873 591956071 498031473 924216306 769184235 761000537 251863824 587535790 227423286 563213638 364907815 18037965 86954267 633176835 543046392 648663063 435680583 691783582 639210957 510901641 609529919 177138164 623550451 646082714 895275500 69364304 781433544 798220969 722760493 415522825 904391953 462397736 642140196 501704177 403385970 173896591 842876708 6680259 814728156 795530064 389768463 996000584 463657607 621817802 86224486 586776680 721061736 760596557 365004018 759367193 743082363 253247616 850184680 73699136 466561918 854055032 905748495 599941087 630771258 757614001 641417078 787647632 263417844 285910743 823654499 925527535 982523979 779851848 751038153 630454706 88770401 445480707 911922869 109981831 39291002 455843821 525024233 855145423 656125216 188955653 728197350 963780192 119194468 600473058 91719270 375395672 468247788 379100408 997240799 946253571 762687192 792545728 775494697 384015567 330727204 220728555 563938447 918437747 406335771 673823475 796760307 844029211 781642310 674269625 885346680 796257291 886736852 50209120 669619115 620172467 44656993 572822548 792171107 713378516 990338971 577735197 789400535 572008348 112775890 651756098 985087620 960313344 702501706 416370996 643956394 621050193 735631220 976584843 652635173 176852624 50773259 9540597 68168403 22431584 361704218 240270451 563403344 17125184 682836982 464152211 834200519 772985804 8560961 65946981 604293258 232060966 417096701 828870418 752377339 154290252 756052583 552748151 938491052 784760529 808223696 74393303 445061896 891812616 762122802 910339130 327093241 21036118 6208491 326494517 744542402 675771471 17339686 401426773 586674651 391601487 836479231 165127026 659968100 612512211 694684689 235535413 77870608 176403850 508180101 309500531 5950038 829750941 129067942 634512782 784520060 484351893 844173617 33045951 799018277 892281321 64872882 410324707 5675235 770176540 129315017 886021079 655607948 553869670 411332150 232218797 40186221 444034555 670863872 118097084 206509290 658528581 420747612 951226038 517235558 433060708 957753365 794111059 860536818 911748869 133948715 790666958 414591395 719425242 961761544 436349091 484110451 437229031 931389646 490283563 239702610 788606715 698544668 779100628 961908595 502348809 911140669 311304615 666253479 617918525 298810520 108373901 775623776 685110824 500482528 818451219 900926940 510397106 545657498 453302758 768431754 576024546 650129045 116826985 438973979 706546641 478772729 486767774 33558684 408387352 510897956 938544733 812503869 54110474 628219870 500794814 797184117 269859682 537339613 535550437 796530298 26839423 214371993 750676492 267108590 719480984 392640462 312461822 136047645 156280174 704074444 618047265 728146805 968360796 895027289 190296488 215345447 824495503 663824721 254033507 962421862 432992168 318767294 283693697 245645902 349288246 928900486 506368865 971896441 3386915 189469413 567355875 240627305 780209970 777987271 91572599 662934606 864081039 351343773 343349883 98149392 504137707 659133386 86674328 839787175 489996885 177211166 793078682 473337201 398589622 728396470 829814360 711199421 351082235 551287387 431163546 338835102 988408939 497858250 815122382 904813871 475218414 899545908 372426396 193031655 53854751 680255016 38005160 172149846 329795161 146312430 259430439 776990083 606845121 116030360 473493014 338177973 597139191 795415446 790618780 866513456 331683138 979209269 674823127 295398092 720726875 23090233 907706226 534761176 870755325 821908350 701320825 706176404 905715387 572263207 651828000 186614051 637518214 619037372 531454985 508970778 372907681 142326192 576562543 337766788 196382200 201077509 453404826 825079597 585207568 723622644 339408937 528268634 558224377 827138899 661832473 484805788 329586823 505344483 873223919 498922402 73407455 362981423 757548805 383465425 592456653 586513726 766917525 989514130 31335886 142589117 48525840 585285494 132901727 95320216 517845298 171778118 891436048 342091794 13457435 870862231 296239957 362197042 51835250 658363065 860225793 796352158 285053800 291780637 448609326 777226354 672151745 725401184 801937339 185577628 616134252 174443283 390924881 361785671 617131932 955179702 758336149 21685727 806223867 511003060 967699126 632646136 196738546 628208920 472398847 987235396 475133296 237739468 54750234 180679829 706039129 549744173 124762235 452260986 7268734 181422433 763302294 698795150 569409956 117708315 813064287 439454959 3970450 72875149 123872918 361033345 835045563 202397276 658232839 916435975 358844759 159652498 446168071 683828261 265836418 571906101 296610064 602429755 590522747 991907893 591104165 290610131 319490342 590773882 827289516 691414072 123760449 220155126 409693043 299126806 149935291 443462704 177629377 910135145 862731757 922519482 972371572 59125963 647524859 572606037 520918581 744971596 347917826 888499046 164532944 845420977 358522421 845182209 430151836 831204328 759186410 611844724 613612017 965869149 554482806 595252271 538440972 621936633 383073231 73491614 138746113 135081558 977706411 682176283 462084603 474924911 693389296 542783855 392971984 231759247 601639013 236768896 331377491 227740623 725105695 849366716 664128006 740568576 929099982 769760671 211798708 105121964 894820554 354410231 219724393 492044754 365790651 877655514 799173720 962878964 803714818 558231724 89060128 561059360 757939587 249479285 792621421 816922861 735893806 695210319 208563368 892802292 176568603 31754354 277096775 691972517 427510412 572846194 647466163 241195418 226729693 630268381 736924687 948326740 145460955 354895851 74877982 546735167 501783845 303147880 375232623 446032204 804684139 287049814 632509436 762828746 85056603 723634325 162600680 123523513 741830381 788674413 3724910 774791985 278890540 81823963 878510731 923931457 183368842 57965719 569039241 830406276 115344586 365726669 937737113 608635215 255376299 726721123 505859167 535433930 542746480 802609736 305361891 182845100 168849883 141108015 291244234 523265679 844371225 43260830 886676505 912725478 316302357 936939874 927568984 723025291 41407835 668086082 760753241 29129495 576531631 77730006 16647197 164285858 537070899 605709011 396266578 585865970 146506359 884974073 432079751 311035714 1944000 471969389 421503091 9424737 98989511 600922840 706510175 989979143 201071136 557962160 891664810 876305113 784988971 369379817 248294638 579849299 350916842 653011853 126348037 25004036 643782195 470758732 420505060 939129763 636914652 218283833 617600071 190932971 416267388 629268730 814384370 333269728 139937329 126973809 800081720 382773461 775848378 182187759 173623339 787563149 727144464 364524188 33883293 783933426 774890658 956249560 633439575 92207133 442882974 481605673 623582774 300531071 709399194 319419138 326584945 903760800 645541576 505960764 822655407 641025586 245237511 209942181 330957828 744565518 335196609 697634429 54726642 991601736 262504742 290759425 110963162 446139876 143609770 954253118 872427631 586038276 58303385 201324909 710804209 744919391 811480387 477986054 567035271 746837657 606528568 385567887 513627077 139131407 517927694 797327170 307335694 29249372 395285589 423318042 803838634 778891128 756028875 414222207 924070515 94479680 419045345 721656085 877253576 889702079 532514943 788359476 794010497 815720909 807856435 445972115 454405658 284730454 569097864 381442599 958926079 90781299 802873325 899862220 781644026 369723287 79478417 131940796 427192445 71948569 452857500 315560172 98204624 585147715 120201760 257378612 77154221 550763724 662895027 986506269 232759022 366114932 658323033 281992947 15863454 436471734 138645809 913890392 589262157 640120567 909828032 827811533 658639697 292631137 617457514 219124854 495755876 474706414 483089274 532683363 552947505 901001103 510102390 780082674 843938272 619678062 592350419 188209013 805821600 997578241 152644792 629636110 444013419 169929889 95330716 879110205 188137790 230237095 541850159 358716134 838231734 754369545 930049368 631380893 935295385 242858696 280900568 617795737 435153684 342556553 869995700 744082797 384956385 591192732 458234758 752508687 974168412 28291010 426204593 295906904 476671986 485350564 822734235 990943031 217051944 837361129 968322593 515635811 683306986 188415492 917518645 616800012 38537497 987253190 334191325 972659290 869995222 352485734 144541774 341390602 463256197 666291855 958190509 131537917 956443303 553073088 652419629 239661999 951594976 315981707 15603255 912713366 117312771 262150475 278446505 296805304 888934305 914982122 630259131 475423798 85847968 74359279 314753541 973694171 109879003 123017184 865413360 146852170 273986985 684500564 850250734 217446674 72206998 666481400 184393301 725586152 543085222 295655471 591565289 580941787 884799959 670501953 30171238 451924471 800834664 583775401 586308607 779423505 941644388 521967745 582092644 616237237 74272196 833442396 403174997 307492478 368238309 131940746 93220400 964864699 627154042 83791309 431882362 90080756 81980692 176848852 843653406 710059789 729303103 752544557 271505928 11710409 332039506 995284009 894020725 310359370 409066190 296887762 747493743 626344522 712962013 705282375 335948742 35005404 66515598 806126475 511281981 698356259 296887554 724782120 258352834 171567720 19634328 750412375 886631714 67116082 143971664 259885448 660532585 529806216 838408648 777080605 886267719 896086522 927996084 553671867 564051492 291327486 466904250 354971856 4374799 508237001 396047315 899205244 571495671 665605632 16659518 525455738 127549336 758345322 362362089 279000792 574826595 167230129 129259275 624449755 844408843 69811194 145082380 921450667 730590595 382425017 230986588 580860191 389766510 217840099 828483180 111841129 204852589 101500921 285088406 681844993 988275693 633266095 135780879 473277804 119978646 207705591 742135218 303319882 230144012 707144873 711540891 188909394 225880347 953496840 301894122 957834415 662786589 540045344 751530502 785264523 754051505 783863766 481530112 266820978 956307044 866918313 162717813 958553520 80052808 54926581 431794024 384813030 511828090 749928375 985805317 501862756 877823581 25930797 669310647 492502770 59816905 802815397 413421551 70329813 199291081 492440628 428583461 412055877 733365992 403805011 580662268 76439018 674193203 825252772 265242345 247078655 547888996 845555783 706880433 313553657 635888030 765755096 356356765 162308550 434172525 394216777 856239507 966846538 954824534 23124718 294068225 313940402 723189741 562337124 566516094 357064379 155514108 431640151 358905542 269380088 574051958 739326441 633710087 169791254 145503159 908811397 534088815 429861416 601155582 865344653 656384436 488996987 107323424 359842319 696805374 538998804 234892535 50489833 242838381 206271422 422448489 606215985 177673932 456245990 611758873 728897873 42654300 328907104 266794564 142616833 400531403 235872075 428650177 731855781 310830919 989492738 385415433 289477181 728357658 485846460 756709012 736354580 461784953 706368582 204481433 988040400 977951114 739515977 248318862 38619207 926600936 970892576 183068908 98606106 676328816 808622700 216578798 896250364 684065047 434861139 969416256 320912241 194021912 262284761 727407856 464612542 170437407 704555990 363718687 900087729 589969482 669788124 900772769 482142028 540688679 93953158 979298413 796232312 375623732 144802326 183238524 413690700 689657715 231230772 262779830 907655261 915807123 576173934 115366118 79138868 140856884 774429800 543295064 962403272 77323785 642613417 77140838 485748227 940544847 556738514 961525553 607923885 576133338 901631940 919826422 781132571 441363143 412957164 575410753 58250163 360883327 862965479 337789499 61871127 21791374 309071465 442499860 521754857 248708973 200212483 89493195 118076705 571665740 891903669 379659790 746787630 209809941 399798148 759074325 257438388 394784236 899923555 54269830 105542005 477387205 493791498 799037994 621971188 2294906 146229432 635450694 55384665 358065177 250469488 974890033 286620169 7377702 198962671 645971822 567023959 980932936 622170009 438623280 609795810 581290827 189636677 918838149 623386199 178986136 379448652 251014331 957064695 146985316 449584624 409778046 675495321 313762819 414261629 637884718 820039060 748154805 924260424 879840920 647673151 610466865 510239193 169417799 34051782 740569679 981039315 554692445 744073893 412955085 613643938 264358452 841121241 188315273 366389453 195499020 569840918 982683673 965485742 823753159 905719857 444248010 951489220 475015424 194556212 261742926 863492344 120046591 542609887 420097691 243669849 800126178 82303772 999835135 782890385 416309411 275570192 500921401 324330468 176480609 157774694 915964634 689256567 921053364 167704254 812446935 124655999 82555849 733856807 49933427 854097420 797757966 943222748 217853627 834833097 834608120 804700625 637899424 870530346 569330928 434087667 95509456 979210905 355997897 535327641 249366352 500735261 688884051 254096611 468110450 855523441 904400333 105452608 468422482 112079300 317467111 454781682 936399982 833393726 392434601 835107997 69944454 834818053 977069920 492305640 721091241 710547049 454030098 506580619 154122605 819558413 137334239 688293461 572131807 423801400 750084764 922663306 595437444 263450662 578429806 468163859 229879651 320706679 945369312 413858373 418915507 872818101 858200304 401636293 485897860 403492042 39446374 986792964 438816739 698656118 653266989 678502576 536860825 721651809 724278701 322470223 994281731 851862228 200613515 494778596 578356680 452128595 320735911 532749557 108030714 404880425 858202339 298646211 124830556 711217001 661796359 360447802 583080149 815861937 284451335 783528024 174986625 570372017 272039942 866367568 669609779 366627793 547522886 116721444 722419385 430193071 725623104 209150157 814215080 923180731 403436964 616563660 707741351 51866852 567614121 364511315 848555363 171932140 189284466 481720367 751945832 135349029 709508061 713870549 271426974 85098189 971850920 380184117 861433994 370797199 51406521 674098308 116736923 320692970 128282893 206453524 868294842 874137730 855860698 120094937 233468926 518440157 578815773 869104067 832231732 676104916 200408240 227601683 954179891 105809412 995560648 871807857 816464613 179985269 197754034 662961438 512640059 722577081 469990986 184916314 820222896 704302737 702969418 826386554 179321391 83315145 804898463 76347521 625293924 819097791 3427909 787371949 399378517 392861184 210710950 718388868 466433368 131390788 988543783 343050652 758982680 257419852 190118584 122094590 496059838 371569937 960791853 608570924 23651306 326570375 857685447 243061769 744773638 678939441 535920201 541864738 337629609 787186675 550983441 708990539 356249545 838313690 41938504 33048683 139141834 155237995 446810656 182615927 744968201 720446227 870343177 851852444 7377403 859753304 786980533 710650130 204836667 390289116 10840300 869073969 140883127 231310083 695948181 907490302 57021054 918833576 333377264 304033551 791663966 56898131 446127151 876467841 723529278 655083118 621982245 444908852 42196952 275553040 270155876 464352138 796208929 779443826 112640317 912446651 736031979 254891890 545187479 547392483 884326017 361957891 761244270 480109835 794114208 258444737 486855263 900277298 456035664 531106389 964982756 652083228 16194873 656773259 209929541 787133405 916495282 480946635 800657046 131377200 671214879 398114514 299901358 649071777 636840008 631145203 685132605 273565976 564736972 415818483 303317660 896344265 429448542 544266649 707840594 833894567 813192157 208607306 437190875 897473492 932432187 804893386 542536280 836004841 504171437 429024888 205750527 740738720 476764913 673099763 93302483 345516319 624210790 790222647 904688671 658357146 522623198 729294490 86506510 901145103 61861205 443293525 976877882 838796750 1452190 966341766 226452047 280574718 366982006 237096505 32346957 404481338 135251673 825987415 119761451 371072284 56838506 175095808 898612123 653630537 142771060 353928973 678764507 547079131 433452624 186016064 402434481 576761733 474914711 94336517 156443416 828542136 222854030 118113740 374161786 248784765 860140311 34990991 794662889 867836464 48036905 457351158 972898813 788822225 138717933 811458694 249181324 429807369 89864697 105855142 937539076 514983644 448677981 898053214 806150608 503842842 555783438 865579983 650180267 889230425 903596713 562511064 947392520 685253758 419523804 142161174 551221363 549140149 967650143 774576728 345776809 391274978 139830239 182796388 940735275 927623161 567762442 223719594 554144135 367339006 876587875 351389227 35840274 959857320 335758918 749518965 367397365 212257451 952955093 691791442 586040463 246433197 495971953 617768525 529742744 363648017 214524572 217652166 691221386 519978092 429886948 259422415 923368549 844643258 748482131 143668193 350884092 375964472 646468769 175373891 190891465 551886346 473108786 789021965 23673590 937535319 834712915 819370616 346526521 541873200 340561593 967837260 338239417 802879630 305971005 418839872 791388958 791987231 525989895 579707126 955178259 694155878 596413605 934864077 815875123 381580447 662850331 249261304 868140615 592332154 413890912 134566634 524098831 102023432 203077176 992511267 672466079 332302695 90899314 824888915 86143229 748739165 127939559 784270647 524610004 823380007 808866321 30234123 130036177 798695087 14340641 916255873 749116778 275880598 961092223 401482887 890552581 748352182 756452418 401432945 128607733 331287810 166751100 937026447 293407693 918141502 837712268 17105401 3769401 499878230 601844385 605280551 333868084 507689216 241689388 330399793 720363751 368246584 437088861 320646994 971775656 271381278 531568548 215808492 793484078 445393943 484691209 712238650 90766300 325145682 224513019 862150580 263000210 339358134 276156642 74833099 82590732 821602615 54362437 748658998 999877850 241901271 218205827 587164866 911925611 737262856 40483397 590036041 251225196 147497907 993887890 462965084 203759264 389599173 345819162 438333219 583365351 102249675 968258365 355280396 788887381 640336722 477644865 3024890 388353830 749549535 869654063 843691791 335321333 238572821 797462226 340886454 713767296 101869 464358074 229598454 399487924 371463402 143845523 293776170 814073306 235098288 370343333 378943598 250854762 560240890 643511693 960264420 125081552 387468097 338449691 665491567 400365439 359691235 464716662 55719336 335195867 6136249 100453763 266921740 7584545 880924973 307645820 882188406 659714339 613152659 118807264 248415755 965445568 772430934 243097981 455788971 935541655 290227161 150098764 690834867 476962455 780129083 528363109 150027382 394815741 714267168 142474240 196254108 897737520 263986936 183066550 277699652 849132970 726325511 409121960 873149660 358689219 30473681 618267774 637084307 788885275 599744554 439545403 442870191 426418421 531996091 714917616 490438655 377837465 517374721 97257011 729636361 116255115 325894852 278133993 421018163 702518026 242976737 152680973 457945684 559865060 159617069 308956265 317892826 827926311 661410467 879522281 435338645 504591807 819185107 857468796 185486657 791507120 673245293 511119876 392138130 986308655 392805844 646997874 854199323 318481860 813683162 183943978 328567186 267878135 883891450 938159118 646122203 36087852 244545045 309960767 386212926 429545583 616583630 267090246 56305943 695057109 230548426 24424231 49992436 954952241 339176400 862277878 719336668 804635134 867319811 42042898 889253905 333448700 487556882 393775505 566658755 528932581 813861899 94994016 86766403 698847142 658026844 460282083 566538441 137665614 851091235 226815417 382340388 301490327 87563036 440989112 95521786 699692532 961214811 825374434 107866777 670738403 48235104 396843560 23005708 470927943 802963805 834200123 175849240 612055172 876904431 719697051 122738620 363657353 793333071 467438308 40318244 815668825 257396305 373329840 727165056 52475516 437167166 985747530 831595169 281185759 848168149 680569872 112705976 357241714 796526247 763708001 513173365 847193426 396978569 725112565 809157561 703911165 755008139 548635060 570526815 954933456 488298174 325828948 120780463 248684170 815048846 967900391 483983603 949555540 278825981 963116701 23015493 576599346 649236837 325243649 384384841 301999029 211143955 654812058 899181759 717613486 949930370 276812274 94119982 209372710 671913875 728551580 726814929 384308643 591182824 769448763 4341796 354336135 642123404 83968180 332800529 57630993 247326340 8031210 882698691 791548328 258190157 358338402 600160764 494338334 463809490 421691993 373639892 623033254 582347297 602024165 817429310 427084742 270425737 687876531 662999751 76972703 281475513 649029283 459642859 334937678 621700300 624824752 701346081 486470585 945540221 249074711 864081522 992984792 221995499 777512732 188515350 322084892 178708668 964644781 692613409 787056734 36148273 30681750 255553013 360888740 818550487 767099562 210827126 653292763 191053014 702538747 639979674 222093851 109823988 157325029 351686992 299866390 632914342 861560121 816900165 629947129 534653317 902294863 771953638 430440229 452713826 503336336 691599871 978083052 820659438 172173911 850083259 279742766 691873718 173455182 803623462 594052076 663271111 551088429 289669486 145296733 600640649 113804015 923925280 195311120 411944920 654233784 534232602 362028260 747933301 509239820 538026957 978747034 70007600 680005004 399050767 675121752 711680505 675521011 127489509 89706261 771042835 240084729 20239766 610853099 817798483 141261159 235141992 555939592 961977376 120387080 671667843 649680326 417529127 219880432 384601046 654814417 7748885 711303526 558958687 91229608 377845957 847391886 899648264 338705892 58917003 912927872 557003336 238994050 54063779 928507426 465152026 891865953 348687649 238129392 67953069 355517543 801239410 935482045 534904499 43422684 139031692 939205537 397074513 200689922 978322172 740324400 912737961 97262318 907177875 684910804 602378725 697174671 786414876 238406533 939162964 653433153 296143458 829140530 657305334 217431317 769761685 774479900 148273381 990487403 856868588 936412579 214982520 49228192 265645911 365842428 771519399 207368870 959789335 263733163 579093441 31750596 714937098 785465686 599583558 667834045 809114294 767167312 743118873 346231868 535414647 968997884 447738074 183414723 225215335 234000033 892488255 742657660 302600074 905513359 526377057 875868002 720394512 339601046 202564202 404840966 618087926 739313716 655539432 932411970 709192167 419083368 886608046 295879860 908188782 603270695 395267916 616541627 293681646 126877430 529507976 755751598 997227687 358199741 114570104 361433459 252295581 302471626 611176033 337751462 949140269 844955705 888811205 279099527 77128482 262998282 70505399 652149216 876710250 560000662 586693622 572566806 426926927 729088811 553320541 603837316 324710260 116519512 608913250 158717145 662219038 144752126 487203822 103102903 104812568 324774732 959316122 304739661 756398771 759759392 191596024 316601730 18818261 155826547 557634584 95334105 701855907 90326349 902234024 655686900 667759568 862513003 461292877 335306958 771387201 449622175 840038178 281436876 538243261 278113504 834971417 843766268 844717989 843499432 75521635 166260905 88963815 218523907 931399451 246938448 173691431 700894994 505030605 749677415 485318296 359179813 324631085 748132386 215951436 978941677 650242211 982297457 166474246 712638849 169300569 608783834 424964204 179637085 459874093 211996958 672794701 888950031 201258534 814925271 324808282 398060422 790086446 446644325 927353001 777059535 387221909 672029299 221791962 428574665 814704099 469948889 991048305 307773881 4998813 452406003 450256531 308600406 471749981 952881646 157692121 904287841 950124915 65311914 957139448 108802469 855802795 576571255 23854068 52020741 76954667 533617723 363198129 3499586 264749405 467137919 774302894 654856542 25786112 58553513 752454933 421949043 806762660 143074790 221305416 316168844 530864663 721121455 582008728 816450366 311662211 461118309 909678232 832326888 280001562 841997343 760036093 704096084 748536721 180544004 252280710 338546446 915263784 658863789 944625807 716280065 944701746 74092592 670002484 223496220 741595486 293248261 988008071 810755408 928774591 888815786 808884295 231749582 416702473 767128761 568679937 759080596 764333475 694924655 441762298 567743332 62997832 91271756 333410992 684006481 44021657 697370580 349152167 350932190 280687506 766472223 657892087 17737128 840566868 395386597 107735059 929496469 204004381 976707798 930056198 978348421 304119432 612058414 860932139 131860809 591936091 511777367 44463599 561314943 684553447 357563824 179622807 500477448 318139234 948570993 302072989 510677287 274764503 490844297 619942883 901464868 85191196 511486803 431044364 107630118 430745557 378142536 683665533 447774181 979741347 789592714 584632484 711653540 579587249 685015143 390157406 504443099 240073651 411429353 831533927 633046753 547931 537940859 277697021 807595278 63120674 146772826 369451389 734253735 635932899 31671563 454540919 874279535 411599667 840866372 822304890 148060231 434837358 911436646 772501240 523265669 531865826 933613491 861760865 440807653 81237055 768757895 216631749 703552681 732741343 969039796 507921486 248546690 920658738 975724961 614622021 429948115 240535305 565545927 523960722 521166009 685419047 557473528 739228882 67513658 429608776 273550908 766388464 146565871 99230752 842424221 786059017 26708836 200357935 361797697 194096388 673273367 963278283 702891081 48582133 856697777 423558505 833357916 829993659 189040174 724809583 433472388 795662362 167933699 928127610 268010217 770260274 908691943 38573126 818463418 665706993 559464681 736254537 438923162 404453303 536432569 563511510 26800294 308492762 450701232 92803355 771065170 421900976 547691510 52952640 358413693 82311820 802258892 145658269 838404025 156894560 755588756 511049646 841270685 735935767 960602517 403014495 699413023 929050546 689851973 883684199 336270781 218299748 218317412 930098684 616309860 188588601 338169922 406928467 286503306 495890252 38204716 408964347 325462777 574486128 771671712 710769235 710942304 698807892 172891918 237107141 368917949 840090463 818895770 526724587 518208073 397661697 919315506 182552515 754900773 622380115 305170069 642008025 285153952 473668117 783152641 201277527 784103425 126954329 8155548 282778664 669148522 262535801 826461127 275543714 202110721 901029730 802272815 921246148 497218098 428787424 268973130 410396765 194201214 561258524 808291999 326839647 407533081 387738899 339305097 614499934 964484993 556675745 778302146 882111046 369705639 481181373 774149415 21761738 261498615 557853371 348147289 788027627 679386625 798797611 41777874 605153277 939327043 225690230 804963299 793040229 271802756 986693824 204346581 404276618 517901210 158332536 733027478 120012037 620735747 103409302 343347316 422080803 499058372 626321542 287947870 658841230 244491820 32621932 402853067 646509359 465785283 924010063 969030657 433664823 355042313 678245569 439640650 247635130 438982225 977217572 294422951 655906453 755334350 598690267 318123703 274664929 546091432 619105830 868750928 853489539 476546348 159251998 821627427 375276341 854348243 236891335 618037621 650589793 856361433 133306361 764647728 94949498 358973299 806725426 794052649 387102214 387942078 375498880 438796790 481867913 900456001 364557215 857466026 445294482 275012215 826913763 891569707 518350306 545818228 530001461 297181689 629841361 662323681 244339766 935215934 98247437 137972833 39660203 936857232 526717905 392698874 288244736 919716194 412540061 335284760 817149977 279533563 179829841 797741609 985476749 704588651 657399529 587806355 651916368 533530348 845707299 13363631 188387072 657943950 436871141 920256996 475129257 931702694 518861498 529545476 138035988 70490680 573741437 812625402 186869879 176912213 886005676 35757683 732401959 9499232 762979307 123485037 868493280 331527696 393054142 214555146 9723387 222770300 133373800 88951845 985931471 854001113 550546407 22567869 405520552 805200177 932909373 606391085 366187252 659482640 778832902 8072397 268941343 768175702 634884907 473687393 893717919 568301015 684783318 320518447 750970509 827984462 71859116 11948477 252888694 541965074 308102503 738916851 674479820 531422568 14706833 172480026 558197180 116541797 166018425 760500436 381300773 906140892 888777445 200331797 994382703 140160430 648133413 841640488 456209172 719088252 679400518 963393967 251016640 876457815 451135214 659610853 446783026 810732359 501561823 847830352 233905256 272750902 978033820 774871324 386436019 294037645 772782831 778760337 168021951 877186009 842498716 350613762 291782340 991320278 462093360 568378505 495074396 995972511 861752480 446214414 813241813 325223664 380563574 304966076 363907508 881752136 479827427 20437279 982428103 489270259 51366082 266429141 380682152 370566970 124887096 497008091 555504882 700519013 422157360 334385930 776308866 136568864 258076054 759626532 339694389 318251137 892707583 153319992 854032619 647566703 343947918 404291705 169857811 947065948 546049162 601789523 435574084 149321543 219883089 722620470 290418390 555154193 93294243 80270969 298093857 946213789 685663168 557374731 22141853 713676072 813103390 490458794 7541997 672176124 773429880 420200893 528122568 546923865 994080690 392659548 632154666 523312953 322205059 227499510 471719803 200323178 749961061 618217251 37137557 800668966 295531008 438291331 132653328 427825106 363767511 908846744 994288472 55849031 906101285 21219403 362147916 427165692 14479633 23699481 565640304 616028918 875693894 41140175 863479657 748329559 423324102 236570492 309240320 195560192 581830173 536015954 403268822 385030557 726221828 163149959 721803588 795171578 311819623 330037599 384591827 350877461 70116887 643767945 862069025 312530082 709405671 54105415 730889082 744384969 674395365 956519495 470290798 757272933 709223185 154891700 622069374 266422768 755294111 526936652 274578658 1222705 763791559 201509182 561411842 450500922 314322564 955412762 64415089 526101976 304182417 788984029 670361145 163698310 807554729 466724611 695676210 688776034 830254545 268908395 533075675 598946967 294121444 266762473 510482270 199683629 807731810 7174340 476105097 969969661 694479321 552122962 87595575 16959891 48082847 20718851 717977130 838409933 21001852 878202529 689704051 667343821 788911172 101907034 751506964 653809238 343543795 450985050 128827478 806574866 172165205 465810780 37123605 439154298 106347696 118576594 354069714 662958914 659223432 581501701 734456328 698012634 293007910 152156823 668255932 853641957 635018986 99721682 148863183 617753952 245204685 734571243 567269254 450862668 240717121 124800875 553970898 274975614 226610309 549163325 336480600 406093688 173452880 830180263 128379218 108469707 523025429 786425362 1072265 34127286 820791759 165911128 276198244 470040346 572427695 700652323 682286149 174156917 810942557 639264798 763725753 8899317 702393392 714439064 212041794 196975496 319745358 664842513 718096994 423786754 336223517 10716500 610177996 269296197 854586259 319096124 206246718 229838152 438731701 550756788 137627313 356274585 536495110 222508776 589413787 231982173 94821281 807948332 347045509 446881728 196281376 742953479 243569507 3667048 573412901 3805548 834628613 102250492 996650070 854152518 7495395 838749959 173473310 161021196 322416314 466355812 692218707 906531814 243299273 949233008 107267396 330363229 637595179 786155386 773241772 837200879 854592548 222439336 46332564 839133472 557780576 113921802 151979201 713653734 482774350 750020118 127064458 355511742 502544631 387590465 155921010 7593553 572123600 781977289 452429677 204800133 257689971 867071578 752122509 637965535 415428825 447728092 981226258 161879044 541094214 47054001 713101885 113862782 586571326 355623135 154548809 456628026 222730751 360094808 553795074 623413460 706768705 410045967 247447595 498546029 430865040 12869841 415330171 632098423 603168628 34547752 358069826 226672949 473750715 596255425 583298142 773491618 374239928 996211171 596130695 344827532 408701702 875555921 541710449 432484510 810207917 46622769 794861770 706590345 56606215 947021476 321917409 339910230 328809534 799641161 731118497 661456290 483146427 490302158 72548631 627118575 191132868 517262577 637676881 139177907 337800393 506377033 817453825 197938639 799385247 518417342 841640730 719733811 18953403 747162990 45992635 236709284 153630689 756788784 977104343 86727306 652836332 366596730 388903414 172118844 473297628 172709032 121255329 820742189 652229182 829625409 337420968 344632528 823761184 734686441 792702842 174778499 309511543 392397077 770506773 154660403 579734881 12933859 394174437 254500292 159100191 953019546 80603276 57807348 721726063 388928917 131309968 735692787 563274406 65978821 563611396 797825044 637913117 91025180 865759933 520064365 405353104 108756320 834191918 451559217 539961480 182456976 701754259 146550834 713621505 509861695 137763877 885723383 366251362 484628579 72507047 64137764 120277870 222522827 859988490 76630143 508520522 534874646 920862371 547979684 22316681 97666526 819860216 931734045 772516095 2013686 555602698 449460205 66831292 400437779 284440403 991852271 3764031 824137972 120606755 625721141 199351536 567769407 867039467 311223965 453575903 569545900 736902044 782777848 814149346 716599399 106597143 275268346 192232762 657669428 230001804 611685409 224735393 830886273 21703399 600050704 566432615 443776654 519221186 36564277 789106862 569916188 117007535 537226161 827823247 939544814 695941255 401905855 495625011 519558005 829891487 650049210 471098674 946676242 776665634 390744839 987263974 920913604 858453563 274511604 890587010 265995557 657684290 286217382 274729633 749017015 368666187 716524064 124239080 241165759 797614988 168087388 669734179 830418069 586075793 228670783 423570037 259782817 689213578 654137289 581365744 894519988 689045206 978754681 354066109 207802966 951140890 159965375 430326170 721770659 200751328 638933344 853939450 775444951 15156920 514001538 848596758 219855665 453897932 636215103 985198427 991313820 230357389 675188907 830591985 993709822 492442993 760300690 708034097 19947036 621063127 163176866 249789900 396156951 892360356 104561128 572424490 324605629 317034813 709655231 540303245 475635263 896982182 214029542 650495634 74442502 782412308 518273103 727649000 887792503 449720073 451053032 554385835 489757495 245330781 409235441 656520924 677346665 893386193 699607126 78876174 699438589 63808739 783093210 872697677 195332205 291402417 404817950 741394848 374772574 27523229 227445315 676270343 992052118 412411535 977733321 116351246 115915642 85868078 872680767 753540839 229877678 696108460 849056893 838137953 985944683 306320715 232340975 367990282 735119780 572067722 803969884 128333258 902714619 854572352 657410841 410133440 462119404 812153059 352387696 102240691 253752334 674882934 716012380 188992150 295934533 149446410 579342571 485520522 577230916 148225877 639737961 554747108 21503041 873308010 475323620 360449302 398430472 221693853 512854156 117339177 688239609 251257034 346751577 465210010 936487369 927690334 825535986 653218522 68883242 399067064 365574068 428002774 825293042 691415924 444732023 469672947 552640088 84368046 420669145 996341459 515686349 142451503 333671254 697288671 86680128 962493913 15833170 930721500 409304824 842750185 520907114 704763365 621968468 658197199 406985796 969340122 72346611 509355693 199806963 495605798 541111584 219860916 539191937 273574539 433893172 769416174 290431153 980499441 428179622 685559113 431910123 201640022 32858279 452682235 37634125 823607130 610470137 904560815 756966791 440944645 719595177 57226952 384525244 396528655 169167970 345853710 819963963 66695642 488361726 815076313 174607771 746165881 104386626 356112792 242865718 933858927 126845208 844838095 923903522 516508910 794110409 592376048 304109065 260777694 997861941 955679759 392984075 861637389 162943108 98111537 201652929 805837285 767837347 674171004 627201609 208240377 406767760 573905718 36990032 942579411 534342365 723909989 331305273 182026605 80217821 505307504 119006391 781203706 598578235 12494142 491266798 977500893 538880406 390584612 707477388 994403970 210814513 320291610 947584500 765813702 236263154 877848214 265897425 717639207 241142623 517345167 923663402 938188326 662240394 665993542 801167428 433698224 879052195 929544512 839158190 925786532 92085438 837514674 522331166 654934696 172458473 617111462 121748706 642814768 736535347 858066899 456729579 917505176 547561988 356551355 513845869 977734560 632747996 123419041 970709306 732721472 63123242 995965140 614271243 239065906 868801668 228790402 229779339 880154463 243629161 294225136 20484371 31141154 456824383 110311961 123274547 85603152 984564486 46205284 664100487 908535269 857407769 865331421 194453875 30554119 435264532 530727385 951137918 880377460 399500094 394140289 405223968 278585088 300111888 601482272 597008745 120899617 459709282 468813230 366305999 155064018 845440890 645207247 111236748 337873814 597715309 310089967 886096523 265269328 604900801 268100542 330196705 544976927 85636749 448076582 439192475 396740198 147234621 717416950 929561693 803091344 524278359 516521899 421392946 397411157 679267306 835786480 453429516 542012282 563705237 356595741 372979763 306589272 448731776 912391547 249049502 343128735 116635902 613750901 620473702 553640542 841708682 25631610 254762154 95166768 188392600 867577984 571177761 581407009 895013488 909335604 602613006 62589330 312680435 789986188 92494613 731113541 131132332 652266827 202963392 840143276 42183943 931645836 659141063 622139765 661044420 643545946 754215010 231853705 290118076 799344544 429364887 986210845 477429761 762943969 901611243 323488346 670884252 446085831 72770736 283682124 61599318 573472275 624442890 413473305 846127137 116913613 984935539 970960931 107415846 604024571 67409830 208995136 40805782 456828021 416504339 381703248 824053118 480312935 359818382 193569057 582430767 372411558 583329678 608873077 910912500 259424940 201676111 454062493 843331363 396696486 857017084 526908021 136259119 70299981 832372766 299548849 426578645 570470 326218376 910363007 788518366 308493726 398913336 748838064 414307382 34995339 496799463 807365636 524890403 949111065 702492738 143965166 105197335 486151069 147602630 235764527 563241997 468077731 777313233 695211653 634496804 960136016 898618084 889381385 659593146 541090610 711185326 954727777 540553317 180381106 570591229 979244592 311751278 433969173 624113357 850874112 691381225 421505198 267501092 948642297 119405415 449047931 108149310 547188639 138486870 905930725 713678442 775561606 772470533 605983681 744596029 479407635 564968655 683764784 173076865 940713943 677386552 769645403 751762584 914057840 83305326 871582825 402466436 613507451 91674007 253846376 299683754 968177356 843883524 322408996 987547127 75003291 674993726 917287618 20315599 389534317 43244564 278239202 18203241 906844305 653158893 398052461 185898182 315614726 525546616 752149590 369160449 781071194 219171216 242052117 231688466 149945507 955524977 615379968 264642631 211450781 371069010 309692470 91799884 608856806 734497644 246741240 793767459 723583455 533705958 45031162 463657265 857737378 195954954 978961316 184343914 272098372 356436684 455019367 463121591 530801714 32675793 136074661 830879122 866744150 925249300 917470275 186036750 928500940 58761610 79756307 33581019 873302929 315056231 253921243 728880399 545921451 902687593 372888866 2799337 849235402 884446185 635610980 188253082 638902016 970533283 404021188 853172348 606104319 580704906 194633772 351440373 71185607 842993245 353781422 668018475 445888291 523714089 259519980 360281287 945402138 252891161 592554985 462726482 551317309 897923770 999768556 603950309 979345469 820208857 892549500 959020689 775939432 161316211 56100117 627662063 750786196 548273353 108345892 661770878 8118642 746405549 5569163 484904638 477234036 950021137 229009815 920505078 850929722 729633163 707696102 456423617 296549594 216375856 609241946 368314095 553538295 256259025 934441791 46268291 516331676 135417203 953517524 499018108 499523933 45925703 607700281 611375346 8369517 885504609 383632657 864668354 932723867 279338216 700881555 286898987 643954373 786827220 826075717 561613809 747342898 354984580 528781505 138253104 1025020 597636656 189495390 577249921 641496553 620384662 85720884 208086613 179786023 373579003 325677417 696571762 706603143 951619218 827835840 856049774 300704146 897924637 796959351 732505619 257394844 803168621 376080661 853464664 878586894 330730362 676587209 775734164 985600792 655909877 287813897 278271655 885981390 736050563 711827501 554959414 720604434 621083516 927108380 268998755 600860665 843367233 992998760 892603150 97409889 663565035 762954961 872673808 737404185 261270323 667441582 489145584 71336129 256211687 528978264 830170211 711458961 408347794 506057896 7549261 19844948 737843211 419928914 525578985 195180378 765870735 290089221 563955887 55477451 572970339 185240762 482801314 347864133 100747343 986849141 319800300 206759857 772923034 487467542 705837686 177122954 187060402 278644927 390388291 512046819 392069945 253414765 356924537 976811623 973323785 132988590 447642728 171451964 146155985 834566694 295064706 701602701 368317882 40295933 594523280 713654376 5673072 360858785 614786448 235884707 516160377 987469739 599929346 505950084 844016302 420843751 925996850 641242047 83303757 192310839 886891573 441594034 234481222 216113512 166416330 379290325 674116778 613068395 180633128 74599643 321542361 514820043 39340088 135187158 689743200 902901909 219706354 906478401 981793043 636353627 670943088 719927035 104928161 619478600 764691693 123547370 251673266 179001083 532981101 340546136 211161181 841349577 786701588 755998292 66249206 971299127 9332628 226259639 735268042 14199178 68602331 182639600 728493445 185001765 830788031 504085365 904563401 765333907 193590815 444831774 89973110 816390269 298795165 920216073 990684991 79811585 22718990 258118291 623423356 53797643 515099747 439678639 331579536 540427813 365743210 239162833 576312631 276644867 912130510 721060157 379421182 665987449 973491269 697149824 475971771 340264719 386916937 908717915 187221981 157083354 247329616 416938711 207305526 295330707 982202722 710323356 792543352 892391409 185719591 284226391 777288869 274723834 599807472 425350479 290573970 353525966 599259181 437311419 902447865 336519145 861639843 175708064 620830809 529675939 114971846 83811065 756516591 697569233 828786303 126540274 756833806 505193766 590397042 733937297 19198706 789479594 853663556 262923497 796777155 907462251 986408921 970193740 294885499 99233571 86535055 383685728 237166431 998209153 502459002 543698536 73123619 545940766 878562759 763495762 160618234 98286289 895608698 170506132 232896708 368930315 722139527 367243106 957081186 386145696 263716967 675721433 975560420 689966499 859807687 351449449 445794806 111860471 941663768 696173767 836778352 778813581 985152201 867167758 26799528 486286479 354777663 389537668 738976413 780403191 944152638 421187527 422272246 318458004 648414772 528733145 40147237 361895009 658247286 472360829 935838316 581864643 940337143 28180784 339420134 848258185 92812995 533289642 989856041 826356720 583069855 201612727 526957799 325506838 717177903 421756466 427303757 632418533 130934874 105688000 920650702 231367584 243552361 730101437 48057293 113859816 470494715 997389754 285441055 596567730 892847049 211387723 738750369 183076151 415818867 408487922 461364023 18780796 410842765 667763536 156875449 159427431 169783177 259409107 370152632 903418066 441528002 776868547 962384940 171894497 238066983 750766071 516890470 529223920 750148059 122831230 979354329 565104862 587763776 565881416 167822531 757475859 153545643 798727077 120979552 255868319 749967597 557621296 333438264 933488047 557380214 531090150 805500320 13237105 295345164 56304454 621240551 831503739 208900355 510360883 280446610 892784900 408247383 184972848 487242349 639188323 918383864 534853313 37794716 308745991 582216174 811454976 843523581 561495441 694461036 12722035 609379947 572206876 80149073 922987849 643039656 487667 877266685 843376024 738122138 582316155 672589956 597970289 716727552 614929704 509696844 178820235 458647592 209579664 901593053 834512914 826691636 199277246 10128445 20126040 764290840 625253494 75707795 285612539 668336490 838197537 132881863 961231689 78084362 771235583 559607892 456002884 769672677 55014783 514908413 792751272 560310688 76450578 504322522 83825400 904091745 758812100 458557260 967739716 604602863 83816117 632718460 37036763 525093698 758368886 168335406 460783620 536721479 876589909 274521667 236468787 817099979 444852683 238024727 522474737 458186406 673389893 647050763 479494999 560015592 343584787 597029516 309070938 463595261 329909254 548839816 914281370 670059815 604661364 815077506 298082854 590876925 592884317 472875044 430337563 603061558 147217030 134893168 852700180 515428608 87856244 499163701 406471138 725111101 212067034 569026225 791860803 827140993 209449682 344192746 305713330 774728516 589346088 906278504 419011476 253341554 495426546 959871351 956411698 371853145 336705475 922129733 282376654 750747776 821687618 320151908 806261552 351080686 823016995 564444976 253102428 902944116 86056008 618390184 22423523 282492233 387862154 854648418 430938116 902756525 29612667 344292459 361038215 183694492 927383588 772018476 723350286 625686520 974014782 782196075 667194475 376733241 182989250 56263963 248142641 837777879 113926748 856634372 56900484 854045982 500554066 867165070 228545325 335404440 227789975 631516181 111085151 874883251 140990192 857117006 335602627 298448497 375345502 484542034 816006419 210889786 133661351 206971403 421784985 938230261 968785344 946040555 833993648 459168540 368421852 302231192 80972248 292493948 861569886 644815635 508543679 265353493 317292103 456283798 819123185 972596926 845708655 968568065 411969690 49574688 158445092 719303314 314145059 353236331 678239004 118641869 943489040 366429105 660117268 296931243 227477034 354711817 944023032 949360309 557163998 710954119 494377140 765387961 766924288 726298749 701422344 853247375 988415440 869697084 808800299 815874460 755340196 591919586 546699092 91675707 502389748 744523264 717223024 991707259 647782467 369164511 252523327 970804326 982116945 55754106 833592769 524414384 825573099 293303019 359879592 650517768 123254968 199164375 35209522 130260535 514546170 40127870 421627556 676043188 756223018 818453302 39918018 807130059 397894191 404936985 690785840 445555788 98837011 859024718 72262398 791088330 740400119 274171775 817702198 375899071 902882100 751727615 984200765 651455365 411204006 369158252 931492289 194437603 14335480 561509644 740831347 280383062 238792241 493595730 853854686 717653300 391078688 473063882 293378619 695426342 325279238 111198552 28549023 910417703 158056164 969641142 416387999 211021304 594571298 260196017 733437414 18353852 990843322 132238354 219075584 471062877 499116399 745428253 755569963 975635711 118102169 367493763 349279021 909672270 710929215 143358578 412050858 465961022 75699124 229215110 301720605 238192973 811003788 360262948 619466389 647748039 835683447 919651815 449157687 634983024 65889079 185559957 398781413 885716952 898214494 813654602 112354971 298056177 356097516 844034228 905095644 290688811 622153519 287985899 313805094 450093533 280283922 942313640 804664714 629318557 520324042 493251179 18327239 669922014 785132328 104027122 727856826 888013834 133294796 794054469 153744377 840333286 762463275 910314684 21985210 260801070 268527810 899856019 650013336 133837590 923117057 482186460 376634853 490985148 220395143 813778884 58968853 876383285 871185029 850884925 518375375 362513782 525308296 198237596 561196812 912931970 652684474 40050540 346674211 270308133 999648043 933895639 22810879 697627444 680089602 83080238 702507756 149730015 256398282 209112936 538410433 504787658 348554682 915357836 186963848 485126311 625718614 732311371 468208928 513454692 634907663 578968136 944203186 276069257 826193703 699007059 278325881 532855656 343959130 813123107 764139832 321302625 278962971 989957218 263345233 563858709 375991785 972004833 948541370 225850893 631323281 707342217 382596921 736973302 60361757 567095556 436497745 671454457 806192073 456112098 856836009 424784882 824264834 975575172 883139253 891891770 903126651 987662140 954376383 532614266 582437013 250072457 629338449 264085454 121487994 249595329 945131359 809436413 378117954 63645931 192248904 202860886 134314714 436627440 105217768 676044347 679135687 720044202 963066327 855774191 835124881 281377848 914743815 447898922 219777820 350668262 891012817 615721289 685693468 216600725 169808727 524343865 761232454 995201148 13128651 775963866 232383446 80849055 412709250 781176051 203570973 245285363 590208451 3483468 980316067 487174481 203174212 695146322 325517357 375644023 309343952 799503458 572992158 648705573 644570568 548032685 17003216 899665713 706885893 597917506 92528499 403672364 542925409 517003678 902116659 408161794 875653395 14116669 909515404 643476016 550678412 103798512 883613273 391573543 17374310 187530648 890800773 649714934 298595763 126270663 369887631 587438156 438131672 376131950 145263603 424255999 125139422 951372442 93253701 689049165 924941783 998569461 486548599 232809546 626303770 624854979 87707309 91811924 654824404 617442610 603328834 54422563 971252751 52415358 852197881 806015876 203359013 858309524 178487039 721288179 576244256 845441859 456432988 300050762 855197059 701343926 3585951 116977710 185230673 647879789 432485700 382167921 153656814 265168160 642079639 488143987 267028511 499312504 602198107 719969295 462780314 294872467 89931570 188761490 901393994 160126510 699872557 638144125 766340748 48066101 74627554 674715129 894274737 208459634 754989824 613554525 689878358 426599092 836979200 300780748 387938229 431564373 743025025 144314163 812469681 22193889 2173408 957230260 16420305 99059050 103510136 975206461 562647388 111409068 183463839 337614511 715935481 11668018 384944089 254697630 960358015 152469665 157958885 696142977 729153403 594482208 601440105 539471248 610096038 850233825 510780133 149403005 894456493 209106297 424841245 560004295 418258126 732610422 982339958 621595740 90358877 40757740 775629934 877272503 251660875 472733375 160370716 703794985 977624329 829980562 568619601 121752715 190222564 802621762 993831220 291399968 843853645 691414116 668576902 394296489 9894292 657405466 611062753 899424719 623099413 179324522 379217043 280038904 621090737 909650888 17721570 916145183 657991586 573474476 288891440 447291886 896003981 726443585 357124994 505580664 766287620 724069916 45059792 31044445 926547505 542338765 58546222 13444095 83447669 286911630 737434531 4386087 989673955 609916809 331044116 34924844 289582616 559203521 440613499 606169985 460764866 323620324 865759079 582066245 215986383 379165640 196881582 696680032 775462174 510161690 269224089 794997304 160542369 659494287 41739332 407751361 706468754 58636456 200623448 66236680 416887329 6304365 73220524 538043253 547784071 751128959 92547861 995046532 44892150 988016018 507048296 349453751 869197341 876927026 348938653 647922716 46435419 986129509 960465544 492912854 718746720 31807764 8088836 864400227 352747784 208435137 12845570 743443913 527744967 628504701 223067711 498897289 172823773 22067386 736149659 864757078 864728584 760048508 605845369 556681032 428792984 572207788 193152325 68453506 254073691 35043028 131489271 292449479 591066129 984043195 506217256 502514808 503456654 125032028 576003490 211764460 744742751 486140181 246510661 251430687 505866269 872637075 69306503 643338793 213279480 310386260 526357620 144408078 649263599 15915700 988574386 668785483 3173538 313474858 336540730 2719057 85810231 44313560 267783501 518837245 427702575 387680637 684410807 238112351 730420866 132810725 338806015 776216270 168510008 355653298 447892532 712529110 801997726 912013458 872853103 134306202 258872949 839648164 642500284 61584849 347374474 803157610 251580052 491374610 455783412 695800889 424087844 865420406 578078986 959511799 405481878 349566392 728281712 219845155 138211204 407969356 527827103 901867839 740206494 383099026 523807360 962917154 539438043 389504144 448641738 221499424 550585174 31292165 857236579 468190975 637252701 192532777 138477268 28458316 154535597 155538965 809920413 411797666 814758888 402913712 946716217 685923348 604799193 855495616 8173846 3293827 495789789 179935828 669965165 344792275 72792264 585094898 279590067 163033301 382503301 232872162 259195272 225644399 251182369 267627037 997156120 539858077 44922392 568249706 464495203 137449196 657949530 124056508 239162242 396477261 824807902 60924614 993730749 811438098 853179208 260396211 175403526 165513632 696334998 196134495 413835556 110487953 165263851 668244778 112206615 923522638 706558484 197607200 835858824 622254158 654874063 294698110 676077788 835050537 488200149 991934990 517248897 96439872 47540456 426577467 583803528 368622251 822038457 573133496 825686859 976173614 672068970 59369201 392816026 257944188 637546341 549794755 747652767 138888248 827045274 429750021 498609028 917695594 36780044 291983927 638190630 363324003 865094514 40466263 194649602 284910481 10361682 110706691 175461976 421679318 34764586 126553560 336494144 134161575 573743613 543251571 70992979 459119285 733812545 758180512 716349737 774631618 101900470 739336974 753884230 2996203 508921549 305827764 555005335 971152786 159612058 469296292 551984581 854670825 867547961 854954535 157649393 937806781 946990566 689663738 654906696 954363249 381798340 124459175 474283675 403509670 372184603 232661524 597343813 150354704 958401938 685657088 332584254 516012202 287800215 443888547 360425117 230397960 373579023 136246188 705692225 516399980 213730191 670995646 410661117 29362272 855408649 947376372 836505410 417333343 360158356 824746554 641328295 862440140 916067247 873621133 223633232 493798481 218581026 926571668 549746269 525059702 438695821 70559462 329565306 876701989 599244414 612103752 84124198 726181264 806904163 644637853 980621534 589392396 386694827 117214447 141862555 674946742 102318048 729882177 557827658 419810536 88488647 155619115 76995941 835546302 71421003 545541705 951972343 813044054 936237857 426248353 476793270 497477195 888852473 301397107 102153862 888195670 962254311 469251383 729733021 521255686 423365801 447696880 302392343 358766567 633240469 688165231 362513344 16987565 872331697 623393424 670466388 565359941 158645726 278141041 874050616 439400845 451019115 347323323 672021234 473944231 447575427 496277733 570251630 983304152 700153549 884407727 662590147 313667248 427029620 998664306 295809476 748157353 552449128 601237305 418559597 783883271 654799582 533370113 495502848 68856084 368238885 927942443 421413834 309693002 526528515 436686623 764175670 907652800 474760272 596626441 762363735 901952051 679420161 547045257 2888975 791499844 115397455 273611720 761709549 903867437 898549387 541185321 946721255 768595175 314587545 417530311 853279244 361433192 840729924 702291143 497906684 57656168 393978009 445321608 778144977 758541206 319964364 497725626 544606872 885032051 162117369 769475703 725188857 656823659 284212501 278790633 502138048 685124698 651134691 101054858 342147267 6383429 651757582 301631807 940867371 107371134 299074666 975498142 401754511 773033597 243909205 824798771 120944829 926954558 835982859 245106247 62213984 359659488 837206154 376302202 294727297 90267784 39324461 17174728 917902229 707353395 614788865 245676552 906013967 693614017 486936890 534925425 463705359 748873739 186092213 877088147 39077675 757807592 325947154 957805889 884539544 122359598 748013442 28987934 15762099 698279195 838186265 94177027 896879015 308254461 297252398 713731704 813140572 483310506 519032570 891402152 676584949 112209192 577951057 109746432 500590479 559266719 107474820 71692746 42709515 169587738 504100112 177157150 12334930 497085009 209282986 820959196 230538920 44900488 813495500 116915101 486328914 131235548 815970103 816487056 174238580 130853636 820317353 20324071 333926301 490868839 188422595 151648199 699497301 750436632 247466159 717922463 296063867 616897165 839304445 370009356 929938015 861884268 814345812 727021774 736316463 398772790 645538382 891612641 749298091 530830624 528489885 916605740 358823768 890218577 497715287 550180079 729956595 664228715 676453422 289771769 363716871 61037859 726452546 205991347 622854261 844628982 522998600 568299577 168447959 666065914 79942160 592825842 876133100 922036092 129413407 255504665 784003264 745713497 454830704 793908058 94751260 244025100 224669237 819539438 478620820 44629686 212689858 486714186 435937729 947530630 814278601 866185748 459696300 593426315 880888787 174588700 375891441 66010336 365269028 484030216 837064126 611487287 766639099 471139398 199349648 611180021 740022703 517596094 199187579 609906538 307072984 780303650 354563644 882641975 1045194 315442760 448667258 839444662 679734190 566014437 810494296 284387516 334856340 309145597 824979440 409835524 339285824 557099201 874243092 702559161 785115313 556265950 21994110 883137103 64817434 51697219 752466989 163010215 203028861 868708825 602908574 940350296 190509320 89922467 23462488 509537909 431396291 468145420 376784883 746485605 924765705 345506863 835816879 916076405 407603794 446948874 54400269 249479766 149483048 933292322 427510535 342247758 270115011 956222328 810152734 402041017 469239371 480420489 625965405 336502739 500986026 595869715 517033620 403012584 779766856 938481213 96942757 109072288 859058873 798594498 612806978 696300815 164348661 200156917 144710148 439859092 549856605 215749196 127424624 374042946 470701188 533929296 450951242 434019587 469960833 251143544 402219370 110305304 82683461 909853006 194684131 223136834 971708878 650230174 502493257 774391634 557232895 101909078 356707198 394883341 24064126 233451338 652527066 320484538 574480898 153573077 639123950 217459700 125152238 963905599 634443829 998691951 431126959 106101141 947354347 862741874 632039037 187372852 923023427 162996266 818231543 832920815 819698849 338115485 781370037 355776124 41859959 567193647 345325785 227993793 224799474 714904221 202762994 567050398 742040868 614078500 15446330 929931542 468428527 7143982 5452923 249054035 651063686 46415950 331999505 12787251 838462047 238434470 673955003 674913841 895244851 760577777 452121324 434303609 482915408 800061661 938696045 871407049 636308529 817994843 756362715 813423081 501190675 482274365 940175589 853458402 169582192 563141118 62919017 451198767 767409964 77972166 20401430 848065665 289976695 276691215 311190319 824546578 537083620 327942015 391711415 876457764 586050618 214839376 454559737 753139368 307025087 865922091 113571371 234490791 816140836 357633033 295111288 630567984 643640943 737022341 42631123 410477681 711091473 766978521 899083820 546939495 356899748 52165475 229410451 154327080 176201714 877009134 511237945 457914064 385094899 557605656 838836975 660895503 703712317 861185336 771949689 642861111 211236972 659394231 895980551 600200714 340033932 73619465 405605058 276324318 51668924 987898219 239353651 374626152 273590643 478414423 275905572 218273271 728183445 783568491 488054068 509135590 808269315 250409194 658702742 570960512 788609927 973916789 968719806 412346251 203971087 54761020 294281137 195220694 866921745 487831533 135113553 190688672 510049380 660698883 751575720 740455975 304179851 216953803 111180763 60147264 328378104 40179880 949791863 855527672 392355747 981787478 27772827 477728198 831474871 791339335 540221839 68267677 592825322 309843138 353748491 139749087 861038368 609626228 397400198 520680330 784393804 265083243 172860371 765342373 337155708 620880441 193096404 136254173 724635503 50914187 327064430 781509279 46278685 691208962 494521911 407316649 255204229 895853117 809631704 76206625 783337595 559369311 928807434 988975357 150663670 636646330 330089502 764572179 607379269 569241321 710500466 523093986 807045342 854544504 948015444 625471066 366097787 555396340 725158060 616390623 129599414 490513836 997900330 737103530 96776017 829663535 757647092 567027564 78847383 585283190 191685055 800429583 746848434 250752064 561792406 403650682 811684883 918634178 212842859 243453499 461837175 493989182 655997047 783939557 109501947 517655442 59008444 797903120 227724680 730879837 821622219 559252535 791733275 362009574 965330151 891640377 604388368 970823443 486186689 128716176 564140328 706982992 2945173 395999248 937428947 876932722 131382764 459017020 859222683 350952040 973024100 326367116 106351889 236620837 402465108 267447408 644774986 580320869 317430013 352074251 983055125 775315892 602056781 202573695 278027432 42826349 760729769 525592319 477148478 512139544 781633086 772867105 840124875 437669776 510151339 102885514 7666525 174270317 694599722 214853759 197500557 204851222 51797510 789637480 507231222 897211766 606533509 884790326 307405329 445522467 74358299 34901005 968359302 242590951 835312537 183673547 856454148 71545509 546784465 183337881 195768704 843919609 487713855 695203367 359110824 874188117 964764798 600313316 308733257 636193183 745186307 955814068 649849211 563393560 758583547 133791962 670708979 594354746 654645390 917868985 469097638 652074806 131799488 774741262 867220892 241832252 822443775 84649187 235908939 800928490 208751993 955761743 732099474 65917043 618678129 849548470 392139703 199730438 450742707 939392641 829265256 248587230 678895182 743952323 636536060 336059851 58854293 363744868 271124414 890870746 643229869 107148015 815641878 552959617 916095633 453606190 107910916 635746341 521903819 694518859 726619462 367370968 112390002 640446720 395281048 805745532 835527847 601752145 395100331 953998586 898209545 530654592 208599341 453845723 993032005 491120408 130854419 515445319 458563109 564003246 138642716 687384193 510308095 986118894 263892756 847279696 245569978 673818806 244344991 782436971 690531088 323510352 768325012 46856199 813940526 660522369 666091162 93154542 446139465 614233943 91704758 497859660 784455241 755244551 24632298 13104745 491223559 569338166 899594835 384853135 747792837 887118163 312520489 826183416 952396095 225999055 66675798 255202851 620308162 865712745 359572467 622189844 100443427 674255323 281714391 207461385 438436108 945317974 225488399 36623063 348786396 822724493 401495392 854632374 254107968 467921677 682783941 559833414 802100182 882761926 401846814 552635416 294982177 969051478 632710719 72590750 482757692 680456483 482731851 188373708 412762332 204384965 632535407 23510245 461567484 741503960 273806441 637299042 492840151 353211304 304560424 426128807 695696564 411165683 811707101 471911970 340939920 623586342 559220374 245978042 211153441 740991584 247293177 647820534 889396117 546228735 761062706 150669608 504389504 8664451 292519297 415892744 45602699 477383243 246799524 584953805 52915418 672087996 341316845 863260811 699661379 633364401 719510715 451035025 672668044 726382199 777141344 513864652 195478785 554523429 305689774 23447555 619265841 759535713 470104593 335587930 938761327 307206876 842076210 799425890 18914660 267616041 306874987 290505307 503448705 934110864 329454834 306464640 516454569 11295588 620451191 149934201 647331721 168562840 174300416 393587191 827026067 462682666 465742796 17094473 543704301 20465196 760258235 209172600 308487685 435577676 858282828 104946212 890842986 537238780 806487193 526443265 983107192 988355627 108812602 918462590 636970529 837533759 953975344 20923134 964812468 80092740 265074320 455698328 400595916 610117835 693849803 495927143 660207267 75447465 670813823 355587627 874928797 640301721 552589050 330157848 479000287 712104072 397244707 112419890 396463570 72215334 38968943 735131477 766896152 364452350 771869965 595852117 965774432 590342606 457190995 363043045 153976398 895718924 479870745 700941939 291019338 150385496 336096057 270100201 299887870 12695594 595580956 875157629 230828179 783410302 857591489 860629611 759761323 825253428 701970054 906415282 988435996 456704967 616324653 651777376 225170018 749066179 903386857 462168963 613581498 645481927 577087422 17687860 596490239 116908202 293806029 797446058 472017636 52819539 130914495 498186290 734400684 823990314 564039552 805548181 221563096 890535874 981893558 968416702 930545772 901476214 863258967 320023777 190755159 415158768 454734892 659827984 28432265 282536529 528121250 607902253 871563933 769107620 146330230 47893466 890801046 190504101 719338094 360688308 654272552 939952311 691848111 992404280 329239942 214284151 430381279 564284138 527560720 204657799 373976887 91195031 866097767 462643124 455376438 548694068 59665476 436297890 965384526 642427950 317848284 460209727 787387518 45126927 210537080 891279444 553502214 379929579 584872136 855174272 606523593 875031105 534354957 315685249 277140278 424477679 825205932 72607895 609076364 996470620 264931206 118532369 956895750 541132929 164723646 440049499 532120828 836147188 186568721 524207205 501104089 590916055 932705937 533738393 240283494 593641005 913198365 447435099 76073657 217329711 346927393 333963635 208774966 497815477 210858040 541192388 283107388 519388916 416523752 93419507 826252451 337716965 29635080 121595824 205193792 910442527 792524794 2504562 360019361 164486286 403571751 239885296 745081737 721109677 417687125 821204687 737113769 145836257 234807838 566841075 105143785 588185144 365748627 162727797 565120998 562159729 20801760 383317882 816202812 558238399 223107685 629262746 547200883 661710737 245875267 523595029 931470911 128029427 483942443 452654657 879272393 928357394 857439431 870551592 993066131 829455680 941095394 49006441 306276448 829903676 472969967 276215899 999515195 274913357 562634796 191188789 287049330 774158963 637151549 503191890 672349383 652911072 703358843 769534683 840942394 533751705 367672512 54048877 584164931 299774475 743782365 176990751 756468908 255932122 521691402 127075464 121950098 410331803 745709052 22666995 679675482 748678404 227506616 762264793 215507117 252675526 555312757 658923870 305050079 989225456 499443221 601837304 975253380 207325130 315373890 191537559 441778028 354667987 913056139 162635924 49454693 417539746 52350901 462062887 309513495 430598997 926733722 227941694 634045008 861673646 956928805 83572207 428558083 465943148 751299420 754839011 707691735 114284795 631756734 732159890 385191600 150965920 730423858 396106120 305461309 92970460 362394345 385722538 786199705 399263813 453095125 258788001 1450754 609681024 299712184 236314375 409823213 61392895 964258520 771637350 335664978 924223207 199364833 613886892 816013793 930092847 410369343 238668935 55488279 938959196 571685011 397890331 366466449 800844691 855029855 605477422 297609334 46649823 369789825 227159726 69496205 594189633 971508189 276055481 134291459 109591958 116750216 389374244 226611245 406183247 989814036 119754468 394830032 740525567 44811569 752972192 642142660 985952141 969391731 426038137 978918867 881527542 443614693 441691188 96471874 563274558 224691652 324881113 308867912 357592591 310036649 619922819 719750782 340433779 140649838 972309939 918213679 518836013 401792797 877083260 633700495 781967929 414560981 124500486 478463630 113207368 980032522 162514712 70576759 21095854 811341713 231688650 997083104 90969625 187819806 727488367 98644777 902746795 621467951 647326069 942880449 371954331 75239237 590897098 432851878 763997807 314196327 214458801 239382281 399135750 537049880 758057607 686391400 837471040 618309807 196581686 848934548 877426495 751999314 607675958 339381510 278120822 920348278 581032831 569625672 529289378 540378308 103923128 388149282 240338237 199156258 39621245 541167931 778316372 32963600 730878708 635597982 158966011 619882161 557043743 336220958 381747000 214435972 826605604 258348995 659918060 426881246 756673550 419970925 410746980 646929659 252289265 110440135 16345679 361731742 256453086 292981891 610194070 717531171 852557507 618014716 757335485 66210209 705136323 196130327 370602883 876039534 45373346 807963732 586317297 268702595 53742878 628769232 547119956 497747561 175967165 271978240 930165290 681419602 263323907 745566888 884486584 897295078 717418249 683115144 130016157 844629864 296582101 525535285 346781744 975946628 613909132 929392788 356923854 102733523 475308863 139662811 91365524 13010695 719144029 225760777 290185553 647076203 718784369 189128791 253327174 581309458 340519914 385565268 445064952 779701146 829742589 403582537 452827610 869587014 533757394 442301010 852263821 71315858 243128401 390688073 786918521 403713901 109593401 130429731 947502124 867915793 511590762 994827275 104554188 508223045 428628999 342215037 666149004 849069521 979702266 463484387 219975594 870405714 136859278 683905365 870138425 110871103 512456944 864653501 538535668 537739033 973298904 66006755 291151363 165837048 971148557 856183028 656606653 990425943 605577586 203526502 446354224 270241737 615331784 590265439 135601039 702364230 476711378 585251129 190124904 514805053 250246941 280070748 686814793 945519936 328491585 606760277 578412474 37495251 679869108 422789158 979623677 522607192 897166647 177207486 101946916 91590547 983510725 832342805 598377586 47159822 712142160 340855608 588536833 133641475 103839440 788439240 384132498 538772939 285561966 292566053 647762313 784217083 793237385 862235464 636681252 762111275 402830717 980471022 320028573 906438520 748938366 923843641 417276227 450353497 217560190 291932493 342173607 834149436 407323736 895710495 845807194 141991567 823239424 879553462 858520218 978334283 711337241 114797641 900334595 433328278 331404532 724118811 185050403 35510034 494094784 445361260 247311824 378214634 566167022 601602096 424118484 235702932 765557031 685908453 97252808 254526699 698900606 946551486 451595241 908161054 239005483 802925431 220067253 529459634 344426899 105907954 413664037 85721670 102978561 504134172 715044308 913176975 969181792 869704994 400232218 876991811 658934150 608913518 926852157 850120421 614054509 410208328 981821899 63762056 489511678 356107411 666096358 380901152 73442524 81142157 881269672 656543995 821702606 529804268 13135320 653786499 210688079 667830228 894080863 337564142 233191067 357283002 197381637 740884535 279131881 604766196 676678892 379765926 363976355 883249012 804000030 811744525 425326158 733141582 849303897 612465201 783884123 733484284 706053336 697861885 375070957 893241730 169305580 129918113 517334221 807846824 552785099 220342316 429194431 664752125 451204356 44023957 800589621 365270525 145727380 917970163 764799336 252953858 994283158 526526124 287665061 683731996 456631775 125396743 782991623 933777428 248035889 192905000 759115132 870992774 917111761 593577200 963903450 347809348 904788709 528485828 619963871 913740573 555454884 497903852 855582109 606237942 836802019 372284335 150223611 622636662 496021854 835837706 366119869 611306916 786586741 877551518 617565982 657300750 276690973 737974607 627865487 237123378 693475987 124600593 186192281 234531266 237769797 203532333 984322729 929347454 109523966 490036203 521148786 378019021 758987587 315767284 330069647 32952266 74602900 295154383 808610341 507967793 337878201 348004441 334375401 799301563 26924777 479081848 329876157 606196402 957212543 640103246 849473589 925210769 655067331 778308964 118759505 98633514 882153381 473995890 751644344 245860264 449002033 108917569 276455399 883214668 326757706 474591458 974394224 951259990 485612797 9423170 904759235 71243607 307969870 980989378 280029855 742504710 111665488 483868541 287830644 645329493 45294856 279196450 822650436 334285698 94972507 613377408 880639055 551857716 771743564 111948959 16819926 523928884 801434673 774999265 629867140 723811374 456483847 541730805 91118991 305923208 518939479 554377192 280488887 854304227 759824615 317535883 87495555 413833518 937587061 9797560 105719507 768794587 938082960 439738783 615420911 802578848 412631570 147929444 230382628 498704911 754171340 502004599 899471418 23129766 909748363 33139835 914701078 916250837 45070376 509272303 484119531 696028430 798468367 1945079 307554752 262049680 47540127 234387185 359327958 90644307 219323590 238448438 284384701 75569639 257212229 220661798 269377430 534971345 839416363 30571054 790534502 67846198 340711216 805026792 426686045 908155867 433949290 283924758 202598074 602860290 963326052 269599970 933254540 243204832 841747063 63443966 146632830 792641668 593213565 782522264 171692998 739194004 896010965 199784694 180168839 849889232 28647232 250502083 954827540 388439922 261245163 906988289 81862650 803215613 599626506 831576834 894246089 849056301 629085879 191750551 751916654 531292785 6471015 507259249 692537342 683747996 959964833 867571466 940015823 741706881 414934216 310228499 448654021 520424838 578727700 138018132 697721570 708202581 968938278 794128947 408785318 465724488 596384439 729464069 854838247 517304826 580282679 994594028 73443963 984514701 639190361 668455514 540397388 759960409 431969101 951163914 822143969 646533034 165854105 969926348 332716026 490933126 586757819 329739594 932722937 669016447 423345559 89655642 457216430 663512143 431261025 157191534 592799449 781577183 985036973 892206443 547940826 953701239 174340271 831134609 964992662 252411532 856524670 810160361 434765868 503232613 151026149 179000434 351074803 705638230 350631723 685945827 976460439 333496975 47179896 382578175 989667459 622165798 920623699 307759117 324295386 333349946 815554635 211574981 303068485 679018451 605724424 197912160 107236407 569609090 976530432 48480743 479823979 279196238 221771752 903874568 582228852 705100825 284923127 482922864 551051254 6474425 484818139 518128712 422100661 525012448 209106942 92663619 940420962 74336385 739281114 939583967 134331165 234157365 963750204 774462173 993276544 729666081 309511462 723017735 983840956 477369849 541744596 994236548 164840924 920856530 290105912 731179302 685553817 999458236 21491255 125795936 596803655 870475274 378636728 672370960 288158034 587260325 858621022 308613017 942591536 541715344 198229492 989066205 802728487 84206676 241057665 594737492 284167464 572139939 220001868 541523348 888884525 846228176 284160366 320106467 235673853 428268100 43219127 144833670 823696365 206532274 558449034 986859978 755805474 406662269 751045156 627581052 214110657 941844743 209775221 192504764 3544411 572225754 402580052 857206637 681495706 285018462 958226053 914376382 659100571 363951657 918901861 551946190 407439339 374330332 630670857 105997004 395213355 762549473 805547343 19816794 527686131 292240830 267464591 291960225 392738343 638527641 627030549 661630795 529772957 539642820 699253997 624128440 253549105 971056839 883177629 241375692 134315667 59668592 576384757 160371653 992156335 734455982 450419665 433569655 624511066 546873693 822454357 178993807 216904875 564085401 279444054 931553482 262671017 764434934 244273752 717337109 217675241 685213081 283723986 113294306 249901227 111168329 460890927 452600316 756150976 423538378 796259843 427903199 618339621 678047382 280752938 376295976 398563875 188781785 973715247 399408703 877241743 314718942 115126896 327957958 343646905 629451240 858169014 143464468 261968348 66363961 202437113 964321686 248786084 493743560 569727392 975870130 306380459 364319457 248928804 888214290 495268018 406620002 857917102 726137204 128942495 299438626 842382197 276734359 249490141 500835811 252639510 823564465 610024122 35793000 791631535 3041133 168905757 875807961 393168459 145293865 547849058 867413900 117007682 770356172 145107965 762176931 861845082 495749781 902332701 774384511 305612860 668285538 593229162 514508461 676789768 490144483 511361498 358230623 811912668 2496859 53049960 470570584 37174941 533390993 141756274 176586256 370294143 190059394 479360467 953246932 261081377 400615032 93829306 640011568 120546305 598419119 933883925 688022229 190047164 631908864 386504342 39147084 210174103 524697737 591969066 276089019 43297885 34402605 9492861 858778114 612178640 80010536 419219728 882238182 495752694 70789637 369374407 552337915 431872087 421950901 886791353 814535346 96215538 234221439 229157141 872408811 448568803 936189178 74818894 37963452 445539771 560694558 124671502 198637430 730211462 913382219 793325910 26515751 465030090 823413085 775922625 919193649 148440472 806263775 93070383 175401249 280693245 784029092 910348261 983855100 299577726 377725924 381023884 434296812 366325501 252348290 170439204 737604471 404312360 722141871 859589611 209293443 579450719 210169718 810425967 19267104 175445682 728473717 903808540 882019936 843658712 769185075 560878687 282036468 413623217 117374650 194199944 237727516 264820530 195970976 270105884 342511230 387054240 155341998 145131692 393980780 504244090 546289040 445635939 565846048 660266993 518891902 746497831 670272439 113232170 958769024 527558943 40966414 185462431 750203461 519039182 449471885 709317873 661341060 150383168 399588439 332827821 243763699 181923059 461061308 515483029 194679103 417875445 993926331 617733395 399830645 14162841 110061136 310815730 70963794 893773669 462013765 472558794 681599028 744695268 390385366 153634361 703464232 178759242 351764499 169330862 857639340 283234934 336973271 831773981 223037607 5062366 713562302 580208482 143938577 62564830 770598670 543173751 750660075 784839637 549757239 369787666 363230213 750907938 347214318 308224216 327186829 43017641 417755206 677152779 773630163 986386508 688374066 719123970 677168222 834649246 860269974 404605820 419198195 473970246 160384908 567434729 322314438 447773258 632435691 360027720 353524385 7495255 474448608 156436692 784874830 187686814 116799525 824262748 174995785 733704144 891482516 727104364 309003523 300499269 436418701 839773641 295146930 260619917 212353822 912855420 531489557 307996252 301022007 404832545 439075542 199331701 713673262 798330189 767532619 274820205 322883933 863366933 737064097 198828177 783388714 719096780 423737554 165318728 683243221 762294242 55492620 568980231 455375584 905886287 669699832 1657966 965136479 249161521 451155314 705054169 289778374 477383209 492196458 472868723 588606364 941130901 391698529 224954668 827291633 530646696 383440986 791286444 213045349 649996339 888812556 326431562 930941573 519847532 964588692 929129521 505631350 37621399 2102086 488508331 180258736 634966559 267989033 175307504 305290538 309212285 387390913 390191874 122476355 905638604 597223745 731507075 256724738 174775035 920164421 113620515 245008791 27874534 790656379 820369508 855642257 244247266 665567272 888796785 841659160 954586698 204589140 189522436 7343323 801192093 348607888 740817057 719243304 478500547 208573477 46701193 562449517 188937663 925169482 609923326 560858195 68442673 824666126 207187995 786178519 661923088 589438910 297935794 347252961 137893795 347702384 733427739 85153033 867312198 861613990 424567198 132307506 496564925 196787227 226109185 32318216 387861211 537317189 799324540 591411370 795228346 583723442 342353750 522290543 716622001 512566178 71456818 453494975 48419722 436986433 956473697 153450955 369255361 349686086 837977920 609624072 806175351 130600723 399043772 179264237 262177498 650840232 674229379 652044304 892131752 615576987 418656938 947694143 706157857 661481631 810651101 207884918 993820549 16926926 924970641 207446301 486353823 559508254 865596436 541711757 179288950 385216852 919651681 853440995 192745670 779395981 382706073 655373131 17346264 390102591 899883558 960655243 424591257 291451695 314956916 603328935 114898452 137055338 707478837 896015951 943786976 235496748 462298547 44959332 325698606 740032124 660532580 721066228 299153274 286959332 625276911 537198322 778064074 886371279 647851735 955875159 85201179 543862155 995332984 775524715 39902388 828776710 155105569 534177320 769852071 358024357 387168277 919965603 141868500 518533087 20404760 429742262 601971106 428326385 960085243 132526846 250814432 41031781 824999308 725929230 66415729 334486469 35870453 841509108 53151919 2770875 619525304 388598928 967736143 284634995 106761628 932699448 603123687 481075985 649721127 917993239 664112753 77426477 771618931 662790485 597626922 807764081 199121107 848294819 268794026 190933131 438343307 646268640 653845501 94522978 638933000 651218907 401100912 785612970 808130455 930069639 243504282 528414604 659497054 75119854 276917513 41955951 899417023 403012305 795094127 551269194 10748533 427726019 972894276 316463861 90599590 864059718 86506525 357457093 437799809 375596969 156404210 731261473 752459133 331472760 80367474 327452864 792606337 593310808 582158910 705070987 395282920 767333763 45171901 385059128 11655285 288289683 361418677 165095104 283688104 138305521 636840860 692999232 736429569 287893812 639651809 264598628 56335768 730277320 737622754 794514927 700579275 740911024 437892159 746537248 33708804 272055645 180455709 211857861 833176993 704138919 91039018 735309967 750986961 702036062 372646401 308731993 165928087 267312084 755389780 593097107 181517741 431409644 152608598 899318361 674158858 446796784 855922609 806385073 620751283 372008132 786894239 524152348 5172489 440303876 174241046 407090459 429141069 365793435 634239479 478816186 288452038 295499777 949305848 247374887 911120013 389667906 207777694 199075391 800601651 486774287 354513380 214929145 925490379 866839417 649647472 959961903 863431000 370274943 221788656 136623018 885253097 371709764 448920428 170513359 938554885 108004182 560235096 531011909 254800513 237429462 736447298 211046137 974221979 687841261 736570379 843892338 749472104 948617246 46291041 562293094 417673523 175227066 413124206 51791336 817490149 829959795 302871739 884700815 72547251 876360830 97487149 254209621 884298770 565900517 575453251 786328666 989478261 367613541 571114006 716867714 173853871 816107141 751062366 700933762 830553359 831366679 736426505 379124265 703011196 836264985 434988277 736636575 628348343 173376106 508708107 595676395 48582711 581626557 124260843 928432176 957655824 960721563 362264557 927905494 96698959 188242349 846459880 579584430 383066835 818844905 475787232 455016643 712992851 221502928 970840762 210811307 919624056 515084887 946435896 443258722 354954258 738232668 757215004 224042045 580211383 677581087 897564315 835366959 49471465 398078852 534387034 783288013 534307821 56069158 470131091 556966137 894407860 485928266 390230379 313132238 308077060 410766434 586117214 630369023 976675007 504820546 486206713 415648797 957657700 438300493 568204496 857336674 329980448 803014669 969746501 90296394 478938784 441444738 915587236 765886810 188936832 407064061 300416123 380271866 778484670 484768024 134570289 409818141 893545147 317063574 664006730 258580267 572078864 960239338 772152152 385551882 596574462 411307793 187652837 380137376 653636616 559122990 522475348 335597378 293163635 35242179 137202598 525241104 638903752 410745397 306112335 373496404 5566965 169068600 808183208 155021439 708492468 897983391 527870972 628884160 487980393 400067507 548189683 699650899 878008886 709455587 265922865 339211513 725002353 237827915 542917244 625756352 263841302 857114554 119866544 763104900 381480894 631515296 447522274 521510966 170687270 67483077 163293668 362551719 893725011 46184343 868931375 553663183 897153640 78943628 543904760 806478936 816891374 754322198 150139850 201481927 943045535 558156752 875320323 681585682 532687539 762048635 364402859 671338007 377651532 374712947 726571079 759404903 214366410 323919181 719064095 723836484 927887925 2774645 168305450 549408875 545062217 794584983 75025639 265864756 980294755 406526890 341015827 809095505 92894541 425663857 824295238 228565592 551206494 575367704 273948740 951161995 394953125 591823068 823150756 85692839 671852975 238507490 817908313 269566077 160480388 344837127 808448236 828393712 637532640 431790422 929556319 173255954 572236846 189155526 107074212 858429950 458802382 919704278 179913365 566123379 300026119 357930683 610331443 254395064 329756330 752557679 815020901 763871247 886568268 362369999 16731429 185745246 973442443 250407187 238285344 776683581 2459260 128154259 167725050 966410727 702347108 940564697 586694799 649935833 762166389 863731373 752282859 79952042 547029129 527246963 268903169 537577716 675513450 31065910 417375763 879312135 616722534 826166088 358715485 363915190 934926102 240349761 101812050 32222983 125584046 432215533 639923095 492892158 935130723 566248779 923927478 161399768 129003530 520373214 544668036 400586692 403235985 26065061 799120419 61528063 390446741 476620190 749834292 357940420 899303336 780148681 585923792 242888846 93025394 519780246 55326633 153838833 704857774 146778976 441101985 949498516 949957821 587474646 195880043 321938123 432601366 856276319 587466977 318340706 563580842 517588317 627596986 547584198 507312860 206940769 686110978 489406602 364636691 200871079 460265301 343646835 282730517 45926606 288051908 555109513 376228263 839881064 516799692 149124645 713830530 395616964 502840495 185313023 269491051 672733958 408851652 603416591 430156310 989960268 248881224 964203451 825623416 876869561 564999682 646989516 722112016 34594911 693455433 931553168 459647225 807766907 869689685 421410604 577731721 767848684 933597658 611324842 353459282 541774074 457841534 836843959 180240983 787562568 958419521 976271899 905973767 377726849 699662831 86901563 719339923 776873721 695384940 443168366 683038154 627474993 664123686 523618306 232408485 10020969 317688360 195742711 620181063 914468543 751109777 681982337 922609750 926747062 646065084 173551650 609033583 270007388 936908079 433886659 683357006 479798293 587085023 858551898 362018308 670998818 370540227 538947230 197229895 680860507 914093267 42523430 365710149 480069926 185297885 575838839 704135239 833433955 698397491 826230110 203117072 384666345 899820230 336040766 443997476 565391981 54421655 25827669 705737231 730981649 464373089 141988550 927430061 457561590 506577680 352526994 1897329 602383060 31175646 879795704 719601736 153359300 869510246 328437510 295678219 358101299 337701690 949672359 249249207 593754777 131570410 159852694 189464743 24871441 810677327 625067009 587656975 216023466 607177902 457182690 574816886 883420344 230648613 781000069 527334733 540880794 502620195 935548296 347280962 766398658 59111810 280317108 770283659 585174887 803360347 94412555 453998374 106349960 680586501 86314483 568257012 603038534 673848903 891101205 425647379 74747260 646962288 823807906 429092825 824980591 634647374 622189833 179971989 199192060 30434442 516608975 778992845 720166655 926882740 522500703 910293519 306515980 319852422 788174840 468221852 645748467 4412723 868971085 786779869 401505492 218461667 69494535 996415563 544273699 290751491 937700033 664098558 60486490 323380709 187599235 440467314 927369288 215964527 827334997 353525652 99061306 872478551 950462097 215026324 354352626 188070924 555221910 11257838 753401026 38498901 493034284 160779173 944060466 555111681 483473158 984307671 308939541 678270312 645478755 904491314 128121739 578467734 814997045 118675041 951902590 602846404 640910946 627000565 5572798 886882535 636341689 559308644 142607138 900578875 744111118 809911936 926570105 823232233 645400174 804835085 503619811 848704925 313539597 502947368 321706126 72966910 428382466 460245154 269009045 821283785 600407441 219758664 649077776 421144908 375220557 564186758 692809275 742883756 871862884 804650109 682624644 581606420 370961648 741503261 661690163 832454476 810619693 363547694 863728300 366470547 9262138 244983423 33105947 609088983 905010517 760469481 547747738 391146809 182692736 460028513 212409897 95300193 381601097 567640452 381711053 224689127 474908535 684630437 806431743 229590774 682975426 928698065 152536821 261444513 559089028 442095987 943911878 936986074 250667960 289085035 311374523 161592913 796504615 488331592 210656076 149679271 435199058 444769418 626763290 825675397 807175673 914626434 127423466 97549500 103866355 583866492 640672652 32753402 107568449 917942817 535818436 216711761 477524751 608600950 831277637 466654792 345397952 861649088 858708142 172071901 35318733 138789660 202284720 903935073 740908112 288071235 204468466 131076404 633249614 373024175 892912573 976205910 215819091 141009352 425630692 577833041 998751614 834633111 972209803 755707087 779576156 838517847 487596871 25575266 19790483 931486647 868798139 941309870 944902948 199250427 498702376 337565865 919616312 414056828 443239468 435735988 289885298 388916298 791047049 652263555 449550405 284770376 87656044 660518843 381397940 323922993 305447751 638333936 444866998 668005824 237611101 557940101 33700990 493066217 313198631 8609221 177460760 678805750 522884776 158028567 365653829 183228883 97194065 659543761 64077897 856863426 419495008 585658239 17692869 213269939 928705602 379072233 400032702 822823962 209246005 453273852 783300827 976863775 756867171 108207295 150605822 877378162 168871906 180466769 923047289 677994200 891680410 402926198 195209750 237160632 119130659 983467275 267413590 328588617 466349565 96927800 163407688 962308482 432690410 984152251 314772712 987592476 831677526 828838411 164313316 602810423 157521526 67711754 652091985 118826320 369046400 435041178 578369582 726238917 605454736 71679405 191723078 652963835 218410747 815180749 727886071 909707531 853304753 799516034 261709681 586844156 34427570 893465444 24317473 197321766 627939073 322788065 9565544 721799053 395272654 146998966 424377340 722496051 767025591 274453542 621571519 122487563 808980819 457655287 343778392 891296865 63072244 440273344 533940571 563077985 320207606 146585895 417817127 555096929 102367219 117651718 111982173 614463286 23378886 845510362 215203933 158783356 282628587 206672745 716097284 937695536 959728652 311983713 726255537 824429373 250163179 453315613 479623435 67012335 663028121 735682049 399740877 579809887 583470539 348338304 445089138 956964638 185528124 912368047 15864186 103470013 503904987 321991490 649164539 335990889 991250242 491261055 816242856 18849398 509272525 752200442 112735130 856929475 966818525 473127905 217733823 140105495 14424411 620150428 836276233 142481378 535791661 642282199 532154829 398715880 551985059 695895140 822514198 632572022 737456752 861948840 584299975 782418876 781814604 394251821 133875598 477727504 150061747 680066362 761433660 35141855 987226101 662950439 303520203 584873646 460180462 141631638 106921968 815386873 301011278 616613111 220650316 77225587 73249090 252746886 507899397 361299022 273070774 833566190 474919480 597601080 786872404 990782238 701306089 639814218 474957648 215142903 573227077 546878596 558369282 295767928 975173530 393889167 833144431 650662734 907164112 956521797 399244798 831211572 812558113 414770311 115269835 86612507 697647511 438148103 393335373 326483450 681330051 542051878 850788449 991770226 820403999 547584801 539477515 48136876 58645338 167428698 137289236 574668120 136474470 490429411 980340126 874220950 510801900 543938519 921356966 38036632 716760408 31041604 523285499 930011696 373435193 873575823 27949991 158047043 714562216 797586243 67641443 140510905 258302670 937127860 838957839 755111811 176173393 599097601 915507170 609112751 709300042 951858094 960860421 579320644 98504447 806209731 627073210 837130730 906847776 94084191 382434120 704990800 392320806 457349345 720722288 529432635 246663939 309965333 710660315 838760044 61450798 334555917 187510544 912610674 174644566 103993089 412436349 452045810 248564334 23370791 407194725 446285388 592098044 705704053 691050275 335642632 995834186 140463423 418884076 991202950 816320829 159776607 329242375 462429357 187113505 990390572 253945396 937493040 700348569 671172241 923611971 655307538 468351097 535462101 501034108 363915856 764722420 277879697 116044964 150067085 697803636 766677053 122422765 490410625 313082201 743112579 714649214 104212601 1207018 842294840 256135960 692780959 921131095 841385612 781322554 734467637 487679123 919188648 891076453 936051903 105903638 645639864 808493301 549467202 926399993 828566136 675539663 361531923 887802284 642297293 594778629 855672858 407043688 1717235 673040530 246392462 943921586 312605431 842451069 788230680 808253916 926829591 379203620 288701824 543091188 428139027 252889524 302138604 565813218 439477866 263354736 388058970 959138509 614587756 563431741 923537528 434231354 1005112 516424729 532390356 231731361 944647039 185467481 697837412 689603064 706340717 397628204 358510652 871821883 572040162 152262089 489842874 754765989 795623757 482459083 266184290 106522794 619039283 158736617 761567743 274686846 770576083 462831064 562450031 263499994 637646370 419172187 755703571 624175552 764802370 319171810 416032170 437534232 190311633 803267720 186708909 671482340 452996746 673549735 657164321 561191116 544090923 393446947 391071384 443643961 636111821 923624684 232189201 128734083 850602394 288008908 952258366 116320124 857288960 964944393 682289596 660658064 729180014 198107670 561273522 127792266 566670751 589105811 334869736 323963883 105498358 515608595 568204200 524944203 301428404 417253693 907363750 130845962 357135401 198000861 827445269 373769179 598468421 329799758 138601084 310610027 9599668 379328910 528312035 607766543 198360074 787823062 179167373 858846519 574318216 992984689 315006570 735612118 712480108 727793672 627429665 256382619 86339446 877559869 63856739 775265525 37846747 199856663 157452409 121549211 539330352 186588838 165394000 560074179 91105283 480865505 659712014 676513723 157692362 525579546 50401204 813586643 75534134 31089090 882352270 959662660 729511424 179024079 910478258 863034839 433985811 970225376 727546339 47691945 583124981 451946144 299939243 516676844 30056476 28862763 789462963 152963905 464536094 736763252 926456199 402050773 723984543 463044185 5227590 589660359 890211520 371019785 239566001 588829341 20170312 444167426 39755465 877394437 727984483 69124667 944980177 684326343 453072737 842758485 70925324 154215814 387799638 739469634 156533438 317747476 307577067 383689360 465281821 566605609 198709581 502032992 380691675 919444931 416267811 356607907 553825257 808075275 435811572 488134138 881156635 646959242 358137811 658472534 69362046 276993775 512077269 32697393 892556200 235296418 964110299 284326199 84991775 924161410 656517007 870965923 249054927 357951302 748423978 815641345 628050011 99915499 713691115 809681898 259000958 104902627 647711189 853677816 500859084 864714128 967687718 99840563 485523079 126874733 982732114 951385940 271474220 602811155 527612589 315819300 947377203 553299780 97192196 996145829 81339513 982241967 847664981 493181475 848805068 47903531 785331526 816975015 638808160 544216869 41546821 798463794 249214263 509864894 766064731 798100635 507939440 332981323 561632012 435605356 798163331 135516915 552072628 257403398 274015667 518673370 463370761 848471128 791961157 233419147 986842117 97582021 963968773 87590853 384479289 730063580 968335194 51983778 887781229 873281203 120331065 329687711 516380979 554996331 110114543 801493643 342285043 290764119 607250487 425035197 607787311 860240787 191501342 554972083 565082372 199583828 552439828 21671158 839453389 943973462 17311071 161893397 719200959 819863306 838266448 303624028 891285911 673287605 403116154 3020925 186195714 609807567 596437679 297799242 922967967 187027947 129950935 218031052 208222635 892947846 677377118 858075809 560659130 303227069 863021377 235176141 696286907 112105768 722742546 70225898 649320503 223763353 635459256 899275054 515469961 817597387 407528824 192555205 401585039 311516620 747351496 427448945 427457779 200909499 275867858 22180243 500803896 902218661 254338187 465978240 329144033 91873483 776385454 301954449 890761236 899320492 990008771 661382241 969327081 637171404 638949106 875023075 541461167 531441303 430161748 54383648 293957724 467267064 638813507 682398201 760597864 992480293 380169890 862367447 350316874 199332366 571518913 650812108 104241530 965333809 625941743 214022650 643358022 658530265 783729252 844067500 516278899 800933952 454625750 900260732 373341430 333264401 145096425 888679944 918291795 773845147 289060323 696599944 194175599 483075666 595606867 885248160 542380119 890239462 865772898 344941352 58478566 875679725 502674766 202321984 220130465 916909367 73401415 990200492 16507257 914891511 397797338 332004033 124623608 899171950 132709286 949216930 401988141 338259103 647610616 79654702 192397187 348155638 344547495 606403303 82386333 397267700 127030378 657996161 496168907 85900067 481164320 977804138 367331113 577692183 550019445 868798810 758814965 394438041 68716686 264559815 896043654 982749933 698980138 440819717 717062090 101141532 425748661 201176062 18309885 552197528 48995039 81931948 290661033 720015365 220406525 573365527 328499093 608106925 41652420 36281339 733633574 688776759 894930045 731267185 886828865 347612294 138880546 926709736 985659100 977653346 174891947 23981718 722232997 780015547 352377677 754479713 177022846 182941170 352352179 330868810 99619183 917484931 924891683 533712932 215284448 132248807 980793424 291606336 658227956 565388087 836301430 829646501 698428869 950222232 336076487 661377979 535943492 323417602 884124033 968864469 46135108 343892566 715528843 876866904 852841745 750575983 943881691 430170659 305192208 813021128 503757071 638942017 623695572 835750178 24113116 496252625 530137765 608299756 534970427 817320306 74097425 658957923 255447265 807640362 541782709 231871787 628620358 533119209 523854967 982662816 799343918 416041953 166006440 650036788 812790092 817987902 611292772 799518383 294355451 659358840 208601071 603927830 412321629 349245443 895099196 320098172 836030914 815240832 110734961 779225638 739444308 269273880 860981969 637697598 664613019 429652608 940051897 29055701 210940239 622647627 270282400 703055545 933455727 315222302 381101382 273586391 800727999 563082689 245994844 374034947 386649720 6997325 130909923 893899173 830983044 561035547 900227342 541981909 248766428 187167791 246468503 869500643 972306588 63600231 361440433 110798840 117110813 739545406 913723229 313736175 866283460 150548860 395075157 28349511 804905409 852053771 796620643 893631471 823370714 117250967 555305237 402220974 180195076 764551239 678900133 600924800 433462984 98474855 442372995 873527197 775635457 699573375 69846631 518058891 282666281 650820143 487374229 735134668 636601548 801354922 715585241 200613747 575208290 88818069 562998119 433962402 29874945 728811458 120069163 772620946 952231328 891246376 28950982 527033498 470752455 887748214 974290399 371556240 595678755 319664408 731125734 526560262 598598118 227364348 928737339 976792418 844566516 421820753 345829776 752027435 117371421 860303652 765378761 636594571 650389790 653183459 380325797 349398676 435102312 588549512 443555407 407283906 574673512 704002467 249873354 256860102 30041696 722513496 655217402 304009490 736763453 264445210 33882424 868963064 633985921 631407839 32775231 658375744 259368458 204004323 372880484 440658270 679642237 666642391 649997705 464541238 282517570 234437451 581044339 209921860 587986711 310428047 276492838 539223700 824665861 315092179 741174388 343652770 754605182 384179260 757437930 17817717 313909435 78357936 979000696 114606084 720516001 286871179 550247632 128483044 42171245 799564159 685287895 730619214 73781331 883781532 26409564 878839471 848769513 905708182 446407900 677369207 848374462 451523548 438763131 783470024 942871188 313104035 795344110 228240206 55869282 481462622 993649252 492072805 342580288 31975161 445801887 715594746 919211255 729861105 602306048 875400444 781326946 957499699 36323252 494605054 773733573 960427438 486868797 792578512 933887265 792623833 272602022 762919776 516806003 413789935 115926051 450843570 567892396 600733071 345012606 371370937 302746879 63725345 618142220 902826044 836306847 617276784 681725333 785445181 40603410 359517270 138822168 948975954 752465594 34686421 476607410 834084944 98844284 314192413 989310565 819965479 266305086 196821494 35806537 526281451 4742534 266016560 834583262 133667714 173660687 689315493 989248668 802003625 379212978 862501093 171871788 634864907 908407459 13084074 801493321 331145942 185674234 728450096 209083566 367671337 316442444 525144249 546001022 174706383 309888359 372417228 777489290 926418600 667846199 572070501 734551334 528567547 674965428 461534718 372362988 30630920 879295292 829602849 907245130 693338954 890637194 18040646 706145585 679333974 39768084 636621983 630011923 161310165 397672540 695853436 211234390 347453194 643530170 478364520 94095340 787175358 662902932 157477157 346931699 171496550 279753050 431431485 200776183 65683260 896283084 921722454 483293431 560473262 125792643 216718456 356828268 675423770 628386615 344770909 657753343 670379269 693587170 579171912 929044455 212552913 980576543 271913745 925288124 597623983 34111279 133729026 365365349 361925567 208277550 443087852 1004096 310019909 4600107 709278862 360600888 834894361 416776798 154089240 498018986 126655374 30948032 477401407 75265768 746597400 101940656 227538379 477780894 655138681 290590016 461256215 429611388 151369688 7711904 779469442 732521749 5968094 411824485 517141246 480078189 796869018 883008834 221757532 835657822 150170140 201275089 448960997 786438604 229936969 658998041 321748044 340964913 216868297 379486571 185587136 798653691 134157309 447737144 704822653 303069750 929003899 511453796 125042729 391789523 100279072 683510999 654103124 320433872 964578460 344737575 68337000 87141709 581350873 6516320 362508670 352848408 128609107 237083316 593501634 501766116 689701753 488814921 257925689 437336965 173139753 389231056 757931537 792315085 594473216 698377520 840390619 582216955 487466038 192219272 288103799 991364471 983068672 945037883 317401172 418155100 764411273 207945376 242192038 525258711 27798194 429980093 472915921 627378629 124154815 942727253 114135771 297371676 741036288 161439745 192570359 473078671 930044959 412348565 596860455 673512368 727878455 221712316 283160375 581755865 528647661 139083180 329344440 978379854 835182651 640745272 612148176 527482864 379598414 82182627 936947930 5787286 164531680 650883906 842067949 678384385 189429901 226849332 732575531 960063887 984244237 742156330 369648123 792858847 991052727 939389531 645536368 443642045 572227870 167438706 125562876 233717309 142331457 162421540 897581893 352040005 74471446 943200510 415107587 556661192 91113517 656702795 8919087 83577708 137945414 224744616 349976654 912533894 981426041 874925751 630231685 263722079 989107397 985418442 260094850 106209888 849167242 968887619 982640505 192417821 553759601 967675721 582960889 975639213 802483244 26849157 402903737 28991075 85389085 548879666 932120391 699417558 925498648 892061613 797240563 166743776 535301331 894708624 887145335 815000495 634478872 755748029 977997276 66155021 954664952 295686390 118153561 903773678 71621107 30981052 806133399 186297500 452555620 394815491 737126489 80927884 658867337 714166419 331506795 746147186 81663345 754455835 164338291 217316581 319961601 784612461 128291792 848003061 352613452 621159395 302791282 80329937 284139432 996155986 895725732 492744198 446436658 230688051 923641298 219448251 299237621 820024459 978056285 561113088 207044763 298166714 285095664 647333431 5867835 874336828 35557023 702369637 409962862 800417864 440077794 140393977 216901306 837753424 945033184 792718072 227357578 207567170 875796396 273970953 907201909 60990912 257763885 67906828 438512349 257188875 23751130 426204956 410795507 206852991 435922079 851048184 978608152 733751334 548737491 968342420 387953708 182160771 844045382 125152974 166753502 757455179 156896374 269525957 178173411 116548908 212821572 860375038 284349069 884858768 793071010 803975606 523873117 613017757 835689053 190287752 809653869 749694543 29442315 237025890 236320229 865916747 377938838 736599071 931727434 181481167 767271992 968821811 412306076 887679075 160234000 587583780 222129164 85767175 565214317 731894671 277586510 136372812 483312 806988818 628158865 671808996 691333207 491967137 751131455 596808868 251509770 379996513 844426521 601481231 768141685 319945879 239483446 465931048 856822154 520274945 824387360 235371323 377025651 41993015 891237242 674383431 621168600 695442149 912278188 820193573 871118131 899330590 674165864 48492937 142850245 174834990 924097635 238516207 978562049 894272198 672645694 108468821 845269391 731927566 928867138 42066609 507445667 669704177 726501337 244402958 842939560 278679644 206533918 543998805 105630784 360309183 486473381 542057807 92482499 504537455 971924119 878537850 271571081 841535158 992507760 902668226 411081979 659263907 840676874 406137152 795152673 202081624 325966542 939145790 674352139 503024406 623907091 703819805 937442098 554750578 5166257 644457781 480752695 304344468 799237349 678502776 128116647 332410100 430622802 695170114 679674187 89902537 844362167 933663932 226449355 607501034 295549960 282032430 330841313 269394097 953398225 384284949 374759753 47730093 880186475 900871234 497059298 909895165 832715596 7959452 993029171 763313594 639508751 260652493 586175290 741022785 291722381 434448635 861584596 536103792 354219095 459980120 680442100 543919578 674746634 109829753 550035602 266337521 742297322 673316957 925695389 40736937 246591967 359199398 701272515 268588971 265437536 938910830 375097638 311310006 352098474 808852613 322588862 131030410 44653968 746532414 815224571 352587643 880687903 628117082 105023966 320918574 492650425 514920151 458741103 463751866 525991007 819123525 58404563 397774357 175730574 636076995 594858867 314979037 290004372 740810653 785156962 907819379 635885882 855667211 727202213 767443036 643402680 445032610 139751999 298877775 941141634 3648737 42537051 531066566 138826026 960765767 741154405 320968737 270327338 814007707 980996869 437603516 60111113 353244759 869351498 729570675 922307135 717767447 912939571 744866838 722891277 258439082 142335464 725309686 908437589 68104017 525689705 687460916 29356901 77445776 987805912 820260221 591622255 62599879 126643645 140072880 373333831 243860758 961450056 506325062 337643535 327662887 954647615 30443643 181374200 690371002 373116548 263360507 817913408 571391459 681239030 93273089 106007326 133054059 260256487 595554270 192290387 907907289 102529197 632773216 792479272 533997479 575065192 889336703 216601064 208014890 273439250 601904283 81193413 893361606 109566635 37378889 772534359 115410980 308263858 193665475 845036848 90019620 57624644 437478756 852138783 121148505 812434852 985777627 571259613 88839893 789471673 250850060 815646039 274494037 718996781 793689312 483488720 927998076 88278820 207247040 19520838 624072340 414817442 331639985 878884690 996721017 759952408 193891605 143804374 475883848 649906425 900435388 989253179 59006773 178192043 541730311 854002550 170665616 336113442 597822723 210544518 299375134 94659982 690446859 391239634 694384968 953102728 29509455 436778276 393670399 179538792 972859051 508158376 480288598 140339204 178834075 350099200 755122303 809965776 13507429 645550327 373851709 516872000 292977407 988884770 727351087 47068920 80050924 31820737 136170654 371724608 393209757 33157893 681641753 286522586 753609652 423723320 159912810 866414688 383482346 339754003 110623453 335109876 390993083 709673620 869396415 211641428 218360710 489422734 655132938 423914465 117859764 789325282 683361806 51053113 542583369 368434107 788731641 821381390 699124876 629134301 977031465 707731615 376054558 739215203 395429058 300493816 673918420 504855583 838211244 868241 87661122 471772099 914487529 365830637 336160894 125954516 565083067 519356461 474109369 241952468 350819196 643306124 517752909 267198950 874378100 406593901 416043136 720957034 223440675 842137835 881832391 886487387 722547218 174275201 240672923 313345967 968505726 225062102 604791306 469410602 449357527 156207023 226349251 633057683 477944219 909226473 930028984 585162082 621071796 589560407 417678727 912598777 589215884 118957635 528933207 265026169 170453407 448894950 970301354 209237409 888878832 410801372 470974831 961438092 726331663 463854353 294138079 614636626 199997881 325493804 495694591 749032814 725594823 213570406 735226893 199789927 683399167 895260821 272197523 640066862 981290208 949889761 62946413 436941875 815772859 12412599 274990309 152111270 741105055 859528982 200932215 999734445 187530728 240926629 307364252 873908590 793037335 529635455 487837540 497351803 789455310 400232002 887839221 472846749 213500058 834334299 834167337 414543183 509035244 563842796 238365587 215761183 252998556 838024362 533225550 686908518 902992374 743967910 377904163 817341243 315572875 913010920 384024857 236206388 334563445 899435867 642409072 781111614 687621378 160541380 677020400 240080161 383523274 60804907 321344720 962061762 336248795 266227471 225189188 151271882 53657883 66727062 4238179 650329946 350166085 306076748 240561226 543152981 960211097 282605467 165613141 474610730 745659750 963755342 224766858 965689952 52643767 280909337 227422114 782135192 35035576 511801288 715457623 152015921 772721638 75602172 128592836 691761218 93302152 592156626 305990344 992170020 333081140 473603276 1358470 894858728 495637031 551088396 39049322 746460988 801699308 68559259 5240533 299804685 886495368 66374766 590686087 388730605 420753203 63740504 421380004 86069423 167081885 458334100 535853912 823337681 643279358 753446804 508330899 392754018 661756027 614826083 959395617 430877077 225573602 63802527 396974633 387112382 963799507 996950410 625329757 791081567 81675123 487380811 88237877 681265881 301085010 584831578 494949993 540172869 251551669 673398502 900563210 903467000 720684304 244347912 534955147 760633437 121356224 422812810 267074170 664969632 551937228 299089228 874781909 762025899 704925604 925631641 919103940 816920602 682439396 497763103 594719951 326867872 188725179 40758284 295481395 459364194 506855783 482570970 360602409 435182618 814638134 45383863 10816974 201511655 239833546 190202950 91532369 633735856 917808505 387728440 806058891 737393478 676117796 847889924 557375790 134185188 171826331 886956658 523429202 260174830 807008008 423442944 991428737 173608835 810546441 42095092 547625360 968606360 752154232 992159167 535541439 75538134 513428958 550337583 317645304 876766880 473889681 211832682 825065348 44715991 808446157 207686314 58198726 372654340 949816901 6113587 557894819 121178494 953028645 984852681 807436805 432779722 92953145 301357561 220100256 572626588 949852587 856552148 590643064 286470326 339490173 225552795 726266746 953037521 153148582 117034284 419277714 462717612 534303677 93382181 672297689 642423400 853718248 351653815 771592189 798425469 342842969 284967332 516773907 133689512 751087498 925408628 321425087 813955245 470242496 827690988 517353654 967993484 917714448 817780255 571866592 431917584 475259114 579285453 701433483 979976801 615259370 361025681 555374882 642632337 477177192 102883522 85531194 358887835 326293425 524963087 674767281 744726273 39166231 997192459 634847893 486742978 559061121 922093897 873930825 402605620 902504435 715223326 678529916 247478662 54899991 630139936 624772806 960573808 269160491 170069848 543769138 303272144 379567972 769130120 431414587 894953135 655847888 373099690 514974613 67297664 210032495 186271717 836174115 430841068 104043294 868402143 516894034 526540425 146001337 507419851 17197258 249218230 788120220 500501989 120046630 218863529 218103750 707414620 978852184 697794986 264875543 480994418 234488595 937705452 230635043 911694607 111703596 275754764 351956541 414433907 503137635 50057381 572668575 509394993 847763100 346448006 671500500 437787414 631128012 694309050 22335525 941480102 496805186 361488420 974417217 777031917 105324627 935699201 155325366 114811085 585538503 132516849 59142194 300102813 363749269 606868968 459316075 546115761 812520749 389472237 60765690 157823819 677376875 389066583 130412667 941114883 770412054 111741063 710569569 20744048 482113814 371088235 293655801 623355695 210445279 307297986 188291299 544638258 692039284 918078267 524965328 710008128 532643832 535196486 3308826 77692611 205478370 45895537 704518667 258635857 33465220 419252355 264330594 657544472 983771758 114791928 658096796 36651572 667925383 883069117 933901730 364935824 467425953 372486486 573810644 877195459 561191497 885440608 613971354 807228239 244263264 449021244 719918356 215323939 296053099 292287025 444103680 804363001 780911818 432700828 602177533 329036259 192238646 575874403 460294805 879482410 208164391 401247261 780471985 853136792 781375296 195112649 982180227 326212314 451704038 832255329 607600742 647907486 950307332 683880833 657239896 567211066 1418995 121069292 766959315 650554727 675186981 58596260 705108537 952628738 306001999 825090060 485898030 443285523 997144137 451899690 630856273 573514234 934115481 739574393 339715425 797556988 707288691 1103521 6979990 809374589 920025303 280838463 865416865 243209562 336900386 994984692 466943388 597817546 849912188 756137662 797764255 809003128 457804001 766162757 862099577 471381258 317161380 83668816 447814803 186664851 957682633 649337926 206737869 880400332 969253357 18799436 854553923 689357669 265323758 167665767 586505866 792945731 712192963 458281946 997669429 854518592 453585479 340141806 87879453 452748505 332609206 658676942 355921194 329145621 999139236 303946792 860043352 641231801 458897732 128975873 942886588 939230927 47251736 456813965 635306374 118261808 566364894 545022437 85112874 316830201 308153172 711357038 56968792 146242103 474047580 125246412 401118390 645198129 546493844 939567133 99930411 947167507 679707801 584368901 827127254 147001199 575455209 15430401 14949678 131394 824654861 129686011 713167900 685285727 648409133 26177007 899666490 150109746 474471098 170636270 595129536 269037182 621861097 831354937 482032419 139532570 490904756 78690621 462746399 795415566 410576848 480658981 255647220 60092140 541548726 480094026 195453404 658563419 153398673 967409411 439615899 349897559 511029721 641923664 727969511 578986056 778777235 632901703 750139257 268323839 713280635 240148614 243181154 684039983 200085607 960257242 592303034 225490852 794620717 836824341 986755039 896863999 607905098 56456295 551801807 332653776 201853319 274080276 667603985 878150581 254722967 671481066 753663528 155806930 772661001 147866861 569671976 855725435 490632272 205625575 479792636 901000273 89328663 240565647 550959649 585078279 713436068 897485243 98190725 959710408 319719930 25977352 517110367 288559635 748724485 339395249 684117215 638175231 778574349 65185918 954770114 142615335 94317762 847535771 938878062 828234273 982049146 967419599 673117924 565423711 707386503 471462148 125180894 624021184 229756900 193708011 836166291 175752218 797296849 82569412 749728566 400299414 428420402 227845083 679428459 269932568 499592917 881554072 882300634 60228077 469569983 842479209 65289678 866338985 766301628 591004746 745067079 70595490 113645751 354758420 970001101 288097400 185590637 474566016 730887173 127781113 526052949 925502097 183435460 316614703 624672358 965622587 545381050 546222145 452506409 767933256 358101747 965322548 560431312 389215727 921055465 88120791 303464740 106815008 827307448 734743298 345096400 660452317 737228061 910894117 952556915 148032232 724283191 68396223 361978400 905550473 107630505 276120917 178833166 304356533 204952332 198882474 387723043 250356108 706419146 535528089 520360392 789220126 981478317 619661022 826590191 926737540 725383048 405620617 94108438 361818909 837342885 503688658 140710122 955928318 875331797 168626173 770755827 134385375 704032437 18316406 600971551 885982055 470996578 614049371 661333643 195206083 819457338 777575314 966422393 232079167 536319408 119902546 545254394 655064981 850246024 949895329 77770952 195859488 525827435 521413043 189762761 409537131 748152989 481794672 399044662 301724426 213351268 794709603 878230052 754449534 998317132 928772035 578312570 437380119 232126208 12887192 172216782 877918062 270520162 325151884 85056233 272596905 636106380 925261228 405016694 369581376 956717721 559302646 659726606 222495829 396706722 201803467 380915034 582121036 236598459 649438413 523761814 548023667 653546383 587621791 485128278 90647776 684594395 956192741 320433371 662595049 547225479 859948547 186348397 440601608 513086388 462794306 869333353 135166873 502130109 40673428 623782687 762894645 586850732 938282728 231160648 768115149 425463457 438609287 727476487 833908852 243362357 982714276 118915658 113512454 7198602 391697289 620501751 372323836 884723155 643755615 140939565 513144741 350865474 376293045 820393395 820530907 752705332 264446024 927236930 176251168 580456688 260407924 775614441 400833525 708822117 623430253 732623550 837363071 73865020 264607381 667788670 623525339 274774534 382654411 95788401 617800611 140004381 607707541 242016514 516531902 80377298 939805736 559394694 831711416 547892900 876311409 220052489 979035815 596565992 743135644 838980088 996224934 241668985 421408682 274677943 203290638 36713800 354554843 214322545 795640960 818110923 700206874 332223527 655362895 629137540 50813819 352380462 361184527 661169197 821301474 720109154 647276445 588894356 596883466 538866430 982993351 25455351 689963146 763216532 694291512 205332433 133630741 403410980 991525017 496837095 385000632 523286633 874876305 379354451 887574562 641206137 424784020 760321959 850401986 169770788 162606020 594381956 831098181 979628462 659024260 810337839 547197874 899633966 978421051 374215225 233974852 523702977 636807188 471913300 746144424 45783649 67572336 261829386 598667031 370644857 527795866 328389226 745749010 703902663 84866917 81318684 491255695 916116680 790998446 310751041 634513744 303499301 21903632 135049734 874927213 473876841 778086916 327457005 324335121 759022202 100854329 638705459 6359838 530447942 507857244 519789659 67950142 940196389 479638928 547972083 254625158 995451333 140712810 844407305 220007603 117814323 450277630 84808087 976002151 835478242 322672688 793322457 295840155 461757801 828406397 444773799 678550051 506501369 312573018 439122889 962821427 154590523 85948135 125196762 693867106 478279328 951644570 509489200 519179732 67810866 189590463 396498840 189466300 949613434 618095449 431391690 235954020 363747643 842889447 535915141 951035410 36171983 567480562 604762687 863255967 169836502 578825622 889238051 475587352 995239841 187459769 803369687 443089151 94966149 186826567 780929123 348438258 275395369 783270989 523391037 31310487 889107654 196271669 637076315 910315944 932145750 549432934 340025980 43839835 503249123 657508059 518785402 900545542 187042289 147995210 596916678 64243189 793562816 199133826 616455901 372006978 838803331 451667958 938728473 137314176 954871743 215573522 432052234 874219551 653666717 40361385 561762611 788608156 477198258 602441814 475035644 494495031 614255315 920012247 906205085 419655122 914911292 782523579 543584988 602838344 625764896 613461493 693268001 430386459 857529084 526503368 773938085 853557295 851897172 858858887 44336547 195547311 151484850 719794330 75985936 808470032 463116183 185882492 500865808 507161228 605816582 286198130 379959000 215262807 474133605 751933795 11424053 299654808 153688505 511481195 575480726 361303535 942426920 459175369 535141454 493458303 236516593 725601647 406877273 335873612 628751199 684608652 510306998 601250856 632404657 804730188 402392048 354464706 368264924 10709022 164099092 610787663 281853743 669659745 936078560 744771689 340775089 244819901 218916162 478066559 645034525 67955894 891343683 491199420 922344139 222272730 663437391 145607386 120066799 440176771 722415649 164062082 483330565 389669749 417666045 220086014 697798048 244424460 765386899 309596793 243311869 146968860 556466600 589253338 83123280 88596149 957032366 959917464 191813056 29346112 326118167 938491069 650509443 238642462 779911898 631856488 202100273 82683899 232700165 826415423 858478238 851920493 412229447 641295695 299183492 214880500 218228842 571932581 627041987 901249 146861796 546803076 428989065 306901699 265675900 486149024 772675386 974002328 153015653 337346398 675900755 868229797 863063171 345165536 200552291 299828029 725707991 479045879 273382285 984319549 805704915 641155639 442252787 629498806 292785664 795803350 362063990 980945045 760273629 386696479 84100825 943829080 626400142 929814256 530799607 290114339 149695566 400432737 896761981 925325934 56389137 494686175 701752076 871128529 231567935 535506965 986018932 289945326 600497090 739815930 603926410 813256076 389200719 610534689 684882024 319279747 978544273 607124282 936678805 998436976 233470583 801385115 696277764 913258076 865315543 357165597 956700132 774482694 112307527 286933125 514044157 885646080 186671901 538121257 916718037 422418251 549130452 261550620 374221974 264083553 238046669 587065943 87579045 628251286 304069707 220218555 734739918 889777853 162846521 381074091 391974158 413275122 482511005 884438986 313252647 437234552 858574687 766485929 651601079 366880381 640956183 54260109 314158293 965523782 740304327 655414760 687550 9161954 602115109 809634212 284795031 628380198 461611903 421452197 952527498 619972004 301758150 751899415 805638622 254069527 682880457 319020143 626264076 137325111 191342997 293597434 990343515 948638762 272663944 743357305 167134675 232280894 778204337 477325251 92240493 483414205 846715954 687877910 600591186 238878699 976046570 299210320 367943141 721888404 911116775 179941837 642920371 60706271 157777133 306665281 656866350 266049829 19323269 951154128 754251840 231786051 60498347 764139967 564922232 10042743 288791004 3096710 168361270 312067271 780001196 979056141 12024707 611541212 391634979 746506102 38742272 461650929 719442140 800605707 347457793 857515394 289717930 124528513 328500249 222227214 108754534 939066680 827141730 931627295 600002285 755657962 342795840 537946438 407388329 592064062 280687507 425958540 881591413 120334847 507777249 263498624 560486629 918817857 370430 541800066 177424247 37111476 712873357 638589195 492536440 503918135 978529934 315182686 834548659 783853298 20127847 641165455 944099942 881626648 240499088 662149392 750734477 478519626 249086753 858136728 382490664 899632813 629783279 917322491 916182325 259449594 767100406 55395763 384874305 105581604 284672711 397266477 74735982 200171526 488168323 611085621 366735271 889305734 556976341 580472471 151898574 186338917 470255460 32819635 409917161 250916393 286190374 856290896 800273575 238277844 308571943 923027846 327042987 204074903 369166849 782158569 234794310 241758351 31851682 844677901 852159353 853357351 302097244 136040576 189606497 682352835 100613169 940972140 322514788 359641443 56195182 153638002 547429120 223293738 74147915 764456791 394937271 855395235 285345111 377203296 910315899 772146769 14193347 159706382 824161261 392953639 928855391 437960171 500208817 992863658 342281636 937336189 906680252 202429864 262356310 592029030 390655634 141867946 89355167 585714841 704938236 49599640 695148210 459715636 193692943 515994012 912642620 752106041 890437002 550845536 592720192 977451012 304916147 385148147 203816701 400192029 202198434 833235160 371541945 195821343 406859814 782799740 434996787 900021279 798410651 847994340 149068075 692676102 877481391 43580596 294089943 678508313 584611219 114906779 226879815 433200090 436863576 133897774 814508470 533994128 808703584 288740411 320738077 183792331 727645862 840901302 601641479 728772643 33709135 706259762 387515331 175905917 417100192 731965803 190418464 326220439 188661785 915190122 62705189 436098244 950277180 217717133 279101511 161863299 952863561 783350034 696648193 540105532 896838121 270099489 849519341 983767011 567188393 626485926 792432567 500466266 351127975 248603656 849871408 484516839 647048252 699737715 112776309 12794394 523233479 317833698 471021677 350028098 499368651 986487215 510865183 90078308 131295473 515092479 491548872 676420569 540494249 651094188 5138925 859652306 155349433 925896893 197809334 870309040 994603702 79386915 763513472 491003047 466467530 890698883 672179706 945046418 543296339 849601616 983976016 371362827 205231841 114986005 456309848 625452911 185094905 407942063 8352491 598506128 96914205 610862063 68653149 631649589 365438655 975418033 599526998 91794442 497338572 44391123 555152411 311798835 636712813 118678797 482391046 137630010 52785079 212539131 238247463 421752111 723006052 385913045 152550281 841961505 820524858 353217226 585326345 606060633 774331374 799013867 478026259 617580289 556702919 905536814 431302366 985148157 794010649 900404973 222459419 73813629 559777739 495502363 694946126 244921384 589566811 508474906 339502911 587420466 209865397 913357110 644558154 87120665 914221820 186152277 162484672 735320283 173012791 233260138 687133488 435832361 86695185 243517688 495616371 111941619 704642609 346596259 98418214 875099312 565953261 343600581 467261489 23128784 977089676 521037594 921872455 716503914 815738955 717447601 589473626 525481416 649379226 295535655 605646218 448450700 674670070 430416994 592843798 994993562 476409095 350107103 560840358 817667282 772583304 221013519 791678214 664278336 664146253 200379227 176906403 123530319 124781682 65393322 685282051 88040080 674922957 589384641 341084158 954485135 83818879 921936560 575215947 183458437 853532705 132269867 270659238 489730560 986693193 139318230 502914878 778105387 226331598 841420859 428000407 808306737 76178186 242688744 120731145 499506154 627949992 81090092 876836832 954056873 978219898 416207892 347647103 652560567 953090600 456936900 123131498 532550605 509705253 179610185 38506937 359485049 831106953 425769956 540116492 211093161 76574612 469888282 224260585 514594293 963801958 572157568 477490069 632699193 720855446 922036622 327811950 921487752 637560622 396821619 510086900 612378720 834005571 937677555 766789402 850347612 229995381 279321948 593355485 982068140 645019316 289563082 867574102 373246819 863456191 199171422 787651879 226740286 833870210 690492770 501692869 169426271 512335664 707562433 478590817 411078821 937551318 975520832 534714988 134515425 416781150 921114244 780654739 533068729 757844271 813800458 627707698 971508966 629624557 475193204 555371508 802619900 66948488 375615587 324889949 519548324 854834124 981323435 789136256 951864241 913581674 249234066 322727526 323000076 655962748 460693376 488832159 861045565 621878848 284104608 48424892 24068540 886930043 767693155 876617436 67781687 610488010 550134707 503062715 802042648 60108764 321725103 958534992 957720642 54660056 255974818 570097580 667842908 96117766 965301379 224739007 807936683 322498573 874490985 614802064 574470667 231298880 335564510 920962214 383751361 633211899 944320704 988880916 907597567 743305549 211479971 200818802 103444065 485906150 439839941 438178505 78982409 742334597 949744209 186359632 539116464 27001427 12554074 340307999 776284008 421518466 343632487 753382221 559634098 540986860 263624252 184125497 990715932 415173343 682111766 737302186 840291160 547197058 202447553 358659527 560411399 31357354 772544886 437311345 913801877 107064397 305481721 676966520 122594563 757872859 97757002 67014017 244521336 574239429 913204986 620615061 344864279 206459288 782908629 395739022 150469258 274403455 968033707 959186595 999989205 580473217 294227982 562663498 579742334 595449611 874937136 389486857 691405868 540547364 391074499 781566038 83792720 206326353 118545883 124850937 830624696 424982115 743591439 753059404 653926219 237505365 805912195 156896006 552062009 350182820 654182526 855717437 516219052 634929610 823241475 254582507 49966576 563122803 127134810 398463206 137747182 441720285 278940150 799106336 129135985 927771906 209036650 70869234 849990263 472909529 848677539 968758185 411237014 124056617 200117852 601141504 979259998 741510627 645398557 588034844 366995120 968853876 501840656 424184865 91994084 444125563 650504894 881896823 57998014 147278626 737895319 168441748 178543718 682961077 407187926 727253486 751453963 587554430 38147075 33991287 494295292 56495866 142138448 208718299 211915482 240914550 688176516 675120509 764575885 646100962 99887201 428565305 406151208 928430711 951695478 926095774 720012085 47940301 531969431 237598412 405349014 628443333 714427549 650666475 674578568 729493447 517862182 820561409 132210269 594041201 522105819 569095687 589466823 392081556 302023151 51614223 575081345 650210332 169781480 490940533 174941058 870492866 139349867 915756190 75329816 616020855 292548702 148403463 280718024 343459192 509299448 968936818 433810510 529500680 886180582 683571256 261340288 476987449 108450203 838620356 112768155 815803230 191410855 519888974 450493211 470702037 452149651 134619541 872070062 786574282 949093407 456137247 546563883 576442553 795489855 388990427 449988231 485131117 210050147 840320510 770230731 382875528 610404595 388706920 972291150 562236840 712971176 426086924 140577192 434936792 60474214 157208130 269777198 454624500 689108176 852752643 513975703 383950690 875803382 357340400 82366012 398026209 184017697 628306505 740652757 698530701 210455928 107598377 84370729 896709551 269534493 80485282 30917427 713760098 61852492 927923393 496325563 5882251 55978313 887494719 818538244 337715414 432709944 158392174 517838470 372231498 416531111 268650009 583763502 34404689 472119956 817087650 421711259 752704323 540012656 244470058 72971699 506171824 689935066 321405804 548139934 337487895 115978757 287596149 717492906 994234763 206969142 316837221 385053834 844421331 35365828 236261234 870577463 583985313 946243122 957804677 324946943 109484235 395667602 618796688 184242387 281381206 139613361 910472764 519842782 785416175 361345066 790872045 612362815 590377262 398879665 932721749 884457920 422801223 149957954 616798477 188360631 317282681 679243724 769370774 650962421 990024815 563876867 289578683 555320522 984478391 341641199 232881535 473452984 386860736 664194099 861138554 539847081 393696760 483295511 756909052 875271314 524060319 908801530 942658902 971075302 153995123 888766161 224981833 38101914 361575637 90921573 548364362 751998634 576837591 239945525 317848763 297624669 718732251 640254891 608518792 936614560 859333014 522202145 618676938 531863847 591752998 366468199 322087330 653420669 339003739 903508885 671990034 586153965 527301426 842108110 200253523 775031402 303224053 421303262 827833443 509529305 579242599 436702850 157040406 421781131 296015933 797478141 66142804 204173236 345551806 128983208 372257461 715015598 409107533 178818878 94408419 93532948 998316040 463933323 450982096 550864039 668993517 115214516 376564201 671820489 48571125 734621809 404892008 166092996 315937769 149991797 322051063 973395601 800175473 45525383 356436026 435296530 937692805 627868381 967816392 446372080 564338867 971135093 577572657 227638199 443858785 376519843 429379910 148117703 844573450 102664064 301699686 726981742 463626782 566333645 276073415 271758494 97399399 340423140 425852815 751604616 134825313 778773419 5189359 4732234 839061573 786243896 557787365 237313266 402528554 575492465 769023528 319175037 430973870 86488279 548630856 517183947 765636868 561228082 856033020 781176812 204020195 166819841 514240090 679518082 258973278 755524667 101286386 577366910 207474115 148008490 446862245 418708078 159019059 551485355 863816360 261249001 917309264 376742934 440932299 572765586 703334290 202250075 470367930 51412625 374808684 661110737 128452804 909668759 206911756 20136903 936474732 811049125 277233280 376400387 543283846 216290357 555819955 485258733 355150240 595089628 949519340 233340252 751304357 954885539 856356117 331096695 374738517 798886465 395869953 480554369 610765031 553362696 554121567 468955937 917811501 924060048 803607567 835600626 95115866 215691644 351414143 479137593 929048017 277768086 60361325 360908146 728489434 697720445 428212268 126407514 342436332 310526107 152669975 432937640 647680471 538243257 41268108 693642580 446932730 336323060 522726954 718665591 475482341 537235119 243143859 15997920 940676062 417050641 172046748 19522807 134009008 109449352 510903432 697630567 65806875 214198144 343721219 936775218 682723692 675420321 923485783 677818700 691833460 343591942 87766578 732193951 477708551 504311194 90597827 694758166 874898919 371515028 804354696 721402118 974286196 255621729 673493333 227821027 648532279 106942391 761650890 293792388 590176196 572653120 483731954 814252235 986770288 45941358 35221755 848444372 711505244 960978121 233733979 411221644 591774713 22962590 436435407 916882032 461649752 126866238 989470492 602176884 512999311 607668816 877955549 480771229 377188411 344807529 997965716 759029724 106890006 235884185 937307162 964864347 602809033 857255071 663087193 619240077 563542115 489349149 283156797 537387348 493593712 936233483 782969610 366863104 149519725 631661075 479078275 614671941 844516215 339403971 948539093 994274340 363268267 989642047 933550355 891836996 943198807 395031792 677150136 678419199 413393137 138540598 598517701 962331597 231875862 180543452 631167362 981697073 416080529 940677342 483107675 112900242 941048638 487008909 303515062 683449302 994923902 308539115 73028422 101055700 767183575 569255424 290483328 734390108 16488510 248443299 865280846 456259228 563126428 500195884 479627707 436509887 405315295 664843629 381375916 977824407 950148575 255129169 947941065 473481768 804145625 424864156 649909430 243229459 208134559 467871928 894598372 150622259 987521090 76512961 846077274 811739897 439603190 924983721 366687700 855616008 730593714 53033524 585469558 723698088 238234015 413837110 704326509 480422572 273115458 682299488 29525653 952968317 386036686 652259902 334350971 366022468 289430758 809263103 14601806 967180288 158093805 396374015 445600398 496964623 747346525 504018250 798015745 498716517 142620070 68404602 424813607 697926438 400234608 630144981 96107179 338376680 264472046 505698279 936891662 475553424 551615143 809376489 910173556 808385988 418037908 423174070 565248201 490353171 938514552 900100782 700853698 751381695 5800443 11521421 699662217 918943288 340673044 756095895 185675971 59038507 364418700 440034221 508530207 71458634 544779449 226741529 635834597 645820390 303758716 960891211 441755807 885108618 287751230 113666179 744319343 265518944 60751180 807920162 829971038 288052025 822746215 801791349 626206485 348018430 304153645 841298457 672104976 306970280 163924715 860430726 777910166 344773848 909688339 138496848 98353612 895713670 954102571 602026317 869041518 657104866 91255741 945085871 547382742 785978079 597758532 268126488 369182663 797213391 844740254 149342357 765424877 862911463 341126414 946559568 541276877 140481895 910139180 195160551 673902004 245680972 858768013 211798331 244124161 524969308 105189471 760335678 770502674 63643378 725269333 44372203 282102745 52314020 819698122 904283576 243625317 948530776 129662990 26595002 990046335 161113470 950515968 372768938 64017156 892958861 829841020 767956249 969375745 582484479 279999043 531442811 178807026 521584401 109234826 850301263 223721758 55883360 340449849 584676202 876555098 957987108 913018536 491128108 213979535 715962910 364555545 338759836 527436969 719900546 410423590 656646618 734858079 414867976 410810296 96939484 858706790 797326391 897529634 894815198 198487648 816761936 148735620 325721311 350499277 121791293 822648604 644802377 696678116 597139896 205743048 68646231 789424554 510750853 973815769 48358381 261722273 754246030 218135698 607090963 985441406 287876087 43634784 970873708 970521385 180570700 859136222 238919783 126126142 518295973 127277081 911474385 395080361 681755672 410403837 489404834 297826819 922358808 890751865 933623 623796405 126647523 368621979 500590498 934631237 887973833 466891952 92409580 324292440 938379653 167247027 620596057 457735406 520791521 769902102 791933030 781948161 217014244 92621040 726119857 345417262 620049132 2806593 878681351 15255531 860816574 433075507 228475123 108094215 906062278 57945435 81822609 367161592 610823981 574027811 358520488 665152072 398546162 46512399 586686474 492378598 739623308 984864081 8194603 971418099 288191743 314449463 136053241 6147076 850668056 899311526 966950454 367141757 251942427 691338440 252049473 438889278 124381994 398043428 735777470 128978923 385738476 353050135 864992506 138490641 388012396 178951437 256641831 168362180 842144043 885758662 319757485 576599848 876048738 763751374 686554819 843557893 554883771 7416858 406974283 908259711 620877981 930725874 594157951 273422851 950974753 893477075 92193350 780385326 540506089 231268816 608189309 294595141 871222720 220083810 501702855 208486404 762112212 529047283 966678445 818359832 354278919 600771453 646888688 872808138 725466025 722589935 828250537 689846912 590561684 924340565 963341013 68760484 229623014 252354333 717366369 303945918 69213396 724159707 101267575 132420310 728493747 836082032 155293918 209424386 55283460 310588332 874053593 9650565 853048813 176723974 419514427 539222522 333567802 233895561 905761326 953546642 642045395 884798492 647971888 436503561 401779131 687172232 986490084 926306259 647958442 177985218 550446597 862921166 800794303 568668572 510894389 282484765 410690727 184257319 490393443 933766304 676931554 94388687 379557190 673933664 918442019 292828918 488255452 163823950 336258809 392187381 558547392 427245435 78527285 557863812 982295692 586936314 857099529 897453809 798157232 229644974 155940544 651591114 158669326 655338572 432947356 583899926 759888267 569670866 625198772 132712858 881437189 593437746 11577325 213906057 720403645 997001911 960692757 612096361 697209236 645173297 992318526 170093027 293023775 367076674 312719863 165072121 37355350 813964834 852876731 725523387 977833763 474203762 228845828 242216823 973164474 478956399 329451960 259637514 437343721 588473793 43380638 812793416 88796662 925070448 390710992 942792491 798141756 179141829 412448525 285977519 352124374 255214599 954013053 93379313 781546870 363621050 854491658 164384873 93301835 529365160 830107642 329525580 852546149 389046421 102070554 113413658 648726215 280001811 977021948 131747704 661456585 780711740 263077493 114364795 779078034 699739117 591730004 965400467 158698041 261785166 745442113 973965260 457084637 823852598 731427782 229667065 282704284 694841586 541579791 743855385 776822097 96854743 158499591 308390634 636375725 425210802 148464939 108495539 726312043 622897107 782949911 347440345 961406692 898694313 554966627 734441356 258556748 698131205 278599675 954547250 106395162 301423734 230702694 799060580 78375128 285799508 182387921 149734254 329027846 241870793 658823202 207518515 693231362 930094360 829022206 8228115 966833880 44860029 208332248 209449259 780592962 329870628 546632727 577356338 640965932 622463741 642151910 560098184 400110278 25713805 363360117 683027003 863699926 444732417 128557227 235026863 911008701 614077792 723553254 606388290 410010527 606698402 263968742 67645853 854291630 569372539 479346850 708931890 249996780 868998552 848961209 758515711 359523661 255902189 817162694 984644454 889447386 727497432 712400584 626479367 441149938 515688787 298828273 931311806 812426094 671565427 496153487 440208855 500929990 280411697 8741343 631648659 296742565 870837284 434406182 542139270 726378375 542268797 340646433 680338836 387814785 950256598 907806149 141332893 9847956 643874156 155962485 434930003 622393418 407673343 849492855 684454219 352582241 545808347 530708374 599253767 724141263 251628819 823299696 713363403 405755199 629461111 594399283 832223614 81392363 655712608 120272822 442967228 595175164 29212915 663280081 534505417 324773584 133056136 5840338 4564960 50785009 495308361 949592966 902525314 85740425 925386337 417446454 795018624 254558082 168917323 485090093 474493685 717339263 143904306 555224438 841094551 702085156 990201907 313912586 532448841 930722995 428150276 984981846 857507326 137417234 546108071 325597718 504945925 550658536 337608831 35055207 3126801 214062662 779599440 439106904 270862480 216735835 803639834 217722353 970714731 941485322 998492883 308347826 580208287 151367514 744594895 410617999 143799015 691811671 207567777 383231983 138448323 84542947 589194120 818390205 871405907 838558286 825193544 452878538 547908503 697396470 843864386 641077188 985457312 869023674 208193114 367949588 81838214 683408258 276129121 280922791 338202000 994321438 512359372 109221446 425528315 819301519 177736970 594561711 182943749 112515398 880660028 800114933 506115584 291062765 635938368 310329696 827072263 745960087 49262817 597562973 637402725 932805043 473521119 807563538 798790751 598697339 288182040 505862339 259670758 449584647 352072102 413442849 162129002 562822738 469743383 258947479 631564404 420517682 685581818 74141984 35930257 976966745 749403001 507396939 108129559 715177821 176212258 894438645 499983229 745351115 850227441 607677687 955339317 543060533 535793524 940217949 598102994 780042268 894074105 971752543 930204772 263525374 118823251 935749408 638238564 751546180 5550759 159852149 99876517 132169197 376940813 866164472 830563890 270859685 665660037 208358734 690923304 623983887 122968151 301807185 959793199 862139233 897025792 205711738 868533047 452411806 668509235 264097730 844116721 566079535 859767063 436621458 1625291 695924988 963764921 218011243 740659792 716315688 35377807 16977154 697568999 409280481 37646512 620264579 523187534 96603586 932249866 875314839 911022003 107636482 663998890 942846853 912479880 591444606 704244647 915979743 525275634 893066138 590119652 155829175 399498033 238741544 36528587 224165645 618336920 788778328 996364706 111489416 498151960 150426844 336700507 239769843 625515422 48488901 446969344 862470132 489917567 125169777 417064619 38467448 37288231 449902186 952774484 612866889 690283898 596441267 175253893 304305733 104297739 899751177 592629156 67963628 557483362 326744087 275621289 815473802 375973032 813763200 782018768 916597152 919752140 560703006 150950287 903034646 551391347 538501906 556346256 69528077 660543684 704646466 491832640 338090122 343632186 444635716 821386445 555043570 422308852 978850374 712651134 874854197 274324896 386240174 7752655 695945628 775913659 924260665 334426944 813352407 798317982 542036902 21823927 231554084 34769314 233699155 297537457 763595790 668884546 24729842 401043352 998322377 1352294 763928910 370603898 426223347 704259018 624368847 827713071 962876041 601753169 482182418 675741593 99854743 236396201 893333938 613101739 80883620 876974864 919746367 993768178 39082563 407722931 836712385 365256797 925633936 830623308 441840355 967951339 554556354 29752268 145898625 177642391 88764977 312666150 786060066 264791799 563907494 255479074 813421533 342689926 13166325 687263088 780954680 781893852 216704043 763423177 158081295 882698816 401025815 377054740 654690839 217329593 184009741 563919514 737914006 82201270 849190385 989283948 464651797 453436663 396122220 613288914 979576936 750993424 454731754 505721553 651086458 52966935 988427172 111912830 121584617 460804594 712576681 70931388 708006948 992187254 873405729 340096287 805086751 635046638 182502514 142970935 403016061 289921901 477078337 122388774 8678446 597245510 101872446 690652409 713893891 189983955 705863791 452212211 709662337 651427145 34441498 550630663 534678115 429644893 902476261 374059490 234736836 831341562 612925294 222821772 314120496 907607887 14826431 310221449 571064447 572632127 333644308 690132740 554537102 302765845 39007175 150721596 420651604 953205725 333093054 885439437 628734843 943567112 598320331 854657281 28536629 212726217 348829376 282372966 696630881 183307910 723044488 81549762 944068968 626664218 290282571 992687603 897659326 577689223 332646278 188287585 61539572 733698134 670032398 615732954 890544961 844613558 33193592 383873095 265197545 902408315 338796137 151634780 662679721 674242845 162417382 504299721 810093260 479000895 934894216 193441813 613493295 55267235 951067167 166543470 315816648 14943684 704913918 700926098 463393198 581793545 867943491 667653096 407933215 514673086 707956283 886513287 677724569 174335049 225367206 811950302 700969072 618184784 515285373 106316825 685387698 584118510 861375037 313123999 788122640 872001861 311900605 751558635 722550510 784672370 309375281 746650948 888704895 278058413 726236294 300397613 568335236 129546326 971652227 133107677 843037735 657014035 811836546 894895469 987686597 582142190 18958047 312511969 477276143 800417125 366432767 70012134 359405129 42766791 305841007 12749299 853420844 768207571 894219805 709040234 171750379 395644664 345629676 227335581 843640575 374446746 265116895 952618314 601338501 465946705 269213016 544018432 469491449 427054911 488069736 892136599 480456152 357874553 443589064 712786639 483042172 779917879 144422060 576113042 366803737 427328160 913939124 10009764 332849614 878055505 739534127 828571558 947822711 730990492 617198530 108688938 815797052 925397806 383241562 404817931 832239871 908298627 295759261 578083986 784296566 533336419 233696885 689248116 437602905 212012276 8434474 723597005 220208139 121213947 921872449 257785301 841339923 149066142 274476106 66944374 52562297 78552559 153702749 471528770 58313107 975859408 306492325 308104784 667415687 625912537 745259833 7719477 934112064 14173997 754523924 22155369 397461143 469924885 556444068 548284250 148363679 253485737 17657954 848613324 656246807 218125060 80132355 716977925 281570470 930599199 153320063 338807256 786666101 27438418 158623059 676032446 321830464 792435684 970479728 542169465 183117060 924419903 830990570 804501897 427157546 901812282 918582186 972752793 459148940 815516175 554045160 886630185 937797061 193597075 425082853 396649952 323973766 36627545 37348883 936590567 319467825 20771712 283009657 675401815 136455696 524869164 531475141 14969077 524677340 472100609 432646954 707318932 838896574 533863000 819749988 163981258 661530180 578709087 353001904 793871270 630978651 567662674 471208680 398484400 451274381 1279344 650368833 252891936 388170936 432856438 80074500 189907507 958653932 529985370 861517143 176750851 836507671 515678223 334200882 591447786 754954409 496593852 817069870 305008239 231145720 772706904 645051651 808472854 639927775 663126598 141335805 163741005 216590106 927025706 436712382 794866363 661605432 483113423 504506427 109770089 801687014 55589590 831577268 375817982 45111020 772875967 757697719 302468523 44146396 602375944 695818701 371898387 171858527 278118044 734610838 176679294 225118556 940596315 235564423 245987996 455525528 594469950 643049200 147273676 896618496 266272679 579812892 111397619 145602193 132730559 499765897 431919693 462425020 329756787 163558796 813028486 920126305 717136257 629829286 357987544 810749728 788472746 774402609 900240778 603004750 863521821 300314412 26385323 52916399 912781433 148997321 33499445 693896093 998781508 364688598 449727230 13506987 428889110 477658453 517708619 950905906 738836136 942033959 420293433 560051989 71601124 582015746 290425491 725025367 674914660 733368357 463402234 215441376 592977377 753339666 655453987 403037239 258900031 559810915 728400143 293599320 190628827 453918922 674982017 428561704 846248943 106135904 675049353 180537900 320568467 760456475 975130508 608398294 663467098 340560886 870107150 613111522 638744837 134273988 457373744 502999687 80387720 387016420 889049028 494784623 54401096 645833429 45300072 88306401 431081310 175122110 733989968 571273769 451986356 994138870 592193773 798229331 378161465 115685207 187361432 189700000 287615941 766444153 785536754 252106146 506004358 909317523 365048522 199362464 892116082 750555691 180488796 116285457 124497904 373820865 900983727 782087970 59723237 596446614 775991140 270499189 107461171 365487499 556124985 676694071 831487014 59632164 569201628 913516208 503807130 920965044 86482696 267333702 108602510 656291440 394781931 534050934 765705129 960462523 973937167 633199812 204496561 92120571 515967939 260107242 62700843 435780864 962425857 321611667 417336276 471330095 579974693 832145985 631935723 268771699 998691188 534975307 293883815 577083578 746828985 930168744 581563509 648061725 33528005 650432624 745809108 256798745 37885378 911568227 748699554 123443631 455263794 22423374 694949727 84213035 368528553 938921665 513703916 418864097 932494096 115915644 473298268 525857108 501390574 97766467 766593981 572167538 589642007 575554490 931657571 630335136 754012049 344847506 538162753 344681794 786190371 654246801 411374013 807690645 646285694 788365996 32990526 284886322 934213154 52001341 266208375 194733558 769602974 328065782 774630450 771253824 123854190 560203826 977231256 223924710 695689952 606605510 888619691 46931079 396194456 638530047 671832186 951908784 33857349 802134248 902821930 575098166 535673124 460426924 587640920 108039517 20049270 685203044 204649671 167976670 948788380 583014511 837022606 81079914 89096462 949216452 173958722 35646449 420887396 775196731 735836234 26942505 714483286 523210596 348045672 102569225 451678889 989487712 880325706 706243835 277246317 798287995 999130036 556911069 975473335 619975355 371229391 440867743 339542914 976366213 623042211 706685681 863500393 592063468 230945129 65726234 248558693 529974559 145792229 981104089 648990169 839308863 481715560 260803757 818665850 16170133 952440957 40525370 862911264 792980881 484285803 413118698 411619259 520646968 717613674 430448020 472635302 16329081 555787653 435044645 482023836 440083291 915544454 689717799 224158133 807315512 914884140 988781715 508263152 844408287 623899037 985920625 713034629 376398930 67166057 531753773 168695834 498322263 584415035 508525551 968502671 857474233 2937533 545681070 475530341 668439132 617239150 614533341 293303402 655955437 55642222 624771782 100156945 364001321 540353235 828275886 344933463 318728766 478067588 508513353 254628873 677141767 391509482 632930771 153049122 200961748 108767237 103237954 706347069 815043784 83054489 304319622 474084336 688181197 568830793 82624570 274422891 610196604 709143971 656580688 962567045 340378304 700678983 494742007 247068420 278796556 951544424 149364356 642717855 41464743 491383821 73696969 449093045 649718393 90227421 553005601 278520841 634926203 27281665 839430732 60236125 787832544 580551348 773073520 938729619 132707182 57957670 636564440 837126255 751391958 447068973 910013823 220031479 9251062 353425724 451611434 623489438 683215696 159867393 649274420 279756262 535797904 59888700 504538948 101837728 645309292 770549269 696861818 821640996 321487729 700302902 484030583 460117096 665795748 555323117 861795257 250924001 56439146 216215237 9475265 827982405 706527596 540479658 752007000 67524966 119335701 200202319 648025046 468075328 973501276 201504657 405816086 428291525 772430799 757268510 403560528 490512328 84082717 208433255 724048017 223095460 872786582 185773040 859421741 659335178 172134265 982372375 148683841 420413242 678796053 780646083 486508391 182923876 134718853 957709258 2145552 132699 877999845 499562432 894314337 876422548 742214379 261505358 468859179 49251585 960354843 248602568 308301349 334746911 463107186 418036310 962643605 878386578 135619787 256217866 6941966 270917119 412932323 850677418 515637675 276554175 124660907 359944178 947807099 270342987 420306762 568205224 927658052 94410843 952346055 38356344 28986482 189036356 332256604 594293214 761900803 333034158 167834965 36775345 955380242 553242230 774531573 795634100 351955085 883888118 224008581 375926934 865523991 892436711 459186682 772911893 912107027 179933911 392589396 136960612 568759191 253564000 975603172 352281622 632943718 463360204 61995717 584157226 352445809 92481551 50727424 595378665 216967000 126168847 579191010 342408287 469542968 759862911 828650457 890315216 147325439 479337190 273367759 501654600 759132378 547648451 246710524 884758266 127764768 211984023 322237435 786140012 23322890 38830258 16512824 664264924 859522961 479958045 463552820 864850403 567410341 499634760 129318147 748151904 759049794 373506903 161025600 53033111 509304731 230513724 150948566 600199067 505777391 941334468 748327736 335631267 245022634 604688202 358388192 674284038 243212968 665340086 701611389 230266725 599490356 577623012 749950288 435452928 118078217 124626886 121590186 343219071 217535184 193296057 82082957 721992516 197747727 632102852 49207850 466828286 596375855 510198546 31521346 809410178 397133155 917959237 384010249 462490415 382400921 845772296 768564535 679428755 461350507 101525953 446545879 450486981 89382443 960031872 551410310 20979072 973199239 548722836 900528785 548489470 926702326 38264607 480390386 802568462 155519418 972771919 873105931 212555630 303353679 229127081 596455379 260057492 623738169 94864761 64573516 502832029 248179164 402294363 598100544 841835767 132231192 629460856 93101679 70653016 254443252 700955787 319641386 201409574 581158458 110141784 108567694 564542158 749546598 524818783 919737707 81914102 822494824 957835791 842961531 203739270 889306099 743171545 392490495 573907214 824426571 596408985 424818529 201762515 276997104 398334078 671962894 446521569 624477228 73759556 646919101 286128075 262313855 993174643 278271307 605034835 688907329 15658904 482741118 883160501 748925151 927021901 753147827 727503125 234940153 190080517 565025698 844454993 748198235 824424120 153515604 204235954 595250292 191801817 309037463 448954108 698602244 338965808 979261482 758612800 456442117 461487489 297297928 943792780 291030965 688254737 133363067 120937322 378936102 609215836 528866545 728056718 698753138 695607564 960384099 150970843 473721992 48175096 56408134 619191334 57724301 97037466 445046922 882968598 808015398 85513987 687838278 777153165 400517623 786533021 185920489 486930511 621267943 452931441 502398775 774593483 235126964 943426979 229583092 650761176 694342055 663568276 741589715 114297474 362517911 281395776 408240237 292937513 929986205 258302107 775547953 343289470 197128704 936551508 325780402 305532278 173369467 535834124 206505982 840835650 959215547 192243227 75006868 278471617 272072376 577151377 51896153 806576193 952723061 830145721 474497203 163038276 907709661 330740594 719143295 764312584 72408366 617770880 607371297 657401720 496870901 724440045 137984861 184502475 348315800 884048411 17068036 275382788 981190405 551798081 801613759 413288303 560566518 514873415 425733812 246452321 566486149 283138081 878333569 939955183 391398138 682786992 108912387 321000276 898304268 906905238 957879426 936346288 965611364 300712786 251033320 479928641 562641718 350785930 988103532 168857637 733160492 290043772 283270870 820761329 169891788 688695010 616588068 55716435 718835156 833335852 493276078 434699253 150142912 180185883 547594931 671966933 469173858 903472924 736610274 103873390 182975207 513357946 537677959 677837090 663431757 985177038 308995547 615904026 404128338 213601469 134975562 299659944 898009046 711450371 54202542 640556520 861307700 614392493 497337438 349035924 31361557 329243925 143287 827103271 211613032 559427759 303723301 782453175 373330073 360886780 505649458 265552068 187172137 913821825 564722307 778848074 747819603 725227258 122565648 420372471 378465961 490504816 846650966 997890834 617225501 453363080 488393232 275233778 616457579 665750408 81300973 877188353 858491911 568638829 363993202 487678576 562968300 386853827 949715082 996815797 77569821 988426134 386154340 220387971 627824296 113690617 640365050 209883831 823750788 926073182 363005289 946921337 521121973 408731086 37128260 827721410 344533413 466544920 30440171 761156724 348448848 109307400 922529290 481687870 633315276 683968896 662771796 249192556 111157235 762565272 607749254 304682266 727794919 130907593 273160311 540913315 799410455 939241573 149448120 410030995 934501846 249165196 548617516 524114379 175918039 126830571 496350131 611408293 449473355 918349940 124334627 128010462 435419145 789408152 155033559 725623354 369656227 141248515 418491007 660925298 591166106 411501951 165305912 659626030 245293811 613488129 673645434 644374383 669888361 305408169 725905038 257399030 93414083 119278109 460676395 596119800 771487197 356643116 511719296 151236045 501236314 47609031 227740232 350008646 39989249 781274125 694095959 796424540 792755266 964084871 933367291 379378186 445143145 487271037 121934469 902253476 889320121 569760022 836806062 447567837 98016902 290529256 117527939 890968716 504899160 929513468 960518593 899921997 543154400 217124086 838015848 901803109 860155984 945083970 22860509 967291486 493938207 797349410 895735670 145934938 167012959 819232820 580393610 320420024 29058201 38018361 782421390 172596228 146999452 140536063 362743075 337159981 266856197 577017127 427657682 755866365 878863359 940612642 881969140 171905125 417341979 242404890 374092639 855470797 461988082 483239075 48438008 824143293 814650260 513361728 833571845 330566654 918011306 850730053 745513182 125964139 621886567 45332531 360274733 799112663 857355621 35601899 634550778 722088221 540398662 697455704 587366623 568747960 73795602 831911264 715066332 362395962 640501370 574031798 257126617 140128985 928536582 777206262 407176471 840216424 307710294 772326974 495366710 859408239 447072282 437286096 2854146 207966150 170684763 295819415 53661271 931143548 201298094 904141140 73999039 565469283 521340848 81984991 258550603 951200789 989236829 338219822 483876283 437254533 965539231 537020184 341812723 435613804 822947401 163330789 506887283 457795154 538519229 32067835 30691224 213479891 932714384 615282873 67534226 991407630 62352983 916693455 111493694 997206128 350982742 103916469 638358599 320428081 878466287 141056416 911520687 591688925 294407690 358961324 131192254 58965115 248574414 888696426 924197464 243352130 900620185 282943131 973496020 490148251 82650763 746192103 526039413 832923244 153359815 402059509 178003575 217235692 921390573 399782150 78477246 7420446 868204182 466343783 882405491 667509766 825949229 221289684 514447927 745372255 604585930 686694517 990734177 67356920 209961763 204079919 289882371 586487205 620235563 786562807 743823022 188372190 817856873 33280450 71742441 629071450 77237844 931762923 541113172 250848448 499712178 719753435 482294016 129824272 634693964 401164175 978174255 302445334 112693097 651405954 82836982 138077631 301564070 630640388 983968375 73803709 755642685 182116993 511980525 946858516 836141050 695458988 429678416 854645914 341848922 831759596 859451028 670529034 418780299 610885931 481947008 190416274 565082312 752458079 22908059 594806276 926059800 269986336 598172789 171515599 246388998 628219563 687956270 90954972 152791092 929780565 845099944 666927067 383796529 800596995 497886786 104956990 311821825 976141155 556985364 602501867 236857309 51152449 816097310 400259964 81748456 389630531 286986538 798706502 984097930 232314040 649122813 784187225 824165566 294730466 246645477 712668669 409984417 442430420 576559871 752407207 729951294 372691014 673242746 897956800 153883794 367602823 737593647 896714645 872285059 253178254 653268047 465607175 286025841 496575288 963588451 365506161 812766913 2439585 179524937 206729873 54107594 687454463 780333086 828536896 184342908 59542589 123973876 451407417 73579578 243054668 388003451 359760762 656258229 84334196 485045038 622079982 725246028 451607341 666290724 149652813 388929225 207555308 596562848 988297233 34352672 331662690 643647560 15926455 480303158 414188373 214945952 10897756 953291898 480700969 132050876 550457120 845398361 584433044 980309762 649787142 512325678 23916238 392239793 25959176 329585947 333652818 295104636 574724843 302390714 23843594 116718319 826396773 302269157 711959266 761999691 161655573 816888523 758347188 645186740 965867950 315704774 63483440 97883445 143772564 144994199 190342770 544189534 298353393 238812339 55835913 484530148 440241971 811550915 419615313 807663013 872597996 326146227 346193889 597641065 850392792 927969933 245029733 919892265 79513356 773920964 195896316 844116337 358869563 766420562 134033009 369932441 985111731 915493317 26678786 833525708 734842871 411493766 583352867 575396561 918362930 5008741 630157611 402813975 224139955 781686215 654794466 460915747 282785602 507977979 565109621 883530885 694066709 255346940 656170043 575336922 666216699 423626130 381591434 847111487 344182907 592955998 215038310 690041042 472142813 405880773 244761482 647496667 993212045 851565977 793115153 178736891 244671591 779833228 450794230 435864090 807119224 409221679 860363914 839246596 952472111 94255379 802502420 148601051 261351507 460963802 551960560 866516074 733483207 4652917 632936133 67367062 821361143 798667101 32610779 257153337 503466427 407896859 134995949 95956168 709369595 993288436 97126402 307622198 470630947 165782097 159843186 783742109 813569137 533291060 784937981 245368534 2156725 658275423 914286870 975873507 978426963 657520560 709252910 372679080 74708001 672825848 384974323 663620735 541576258 261470230 473042431 951433183 295358166 124037247 8059727 540038785 871101283 461298828 352328521 277978258 576615689 790043480 360870920 759537095 884488387 907682777 104232679 6008322 943705321 803346454 694969707 247868995 466829364 66092224 703250641 695560631 599466798 583820989 154859277 799263809 535908422 85733388 680059302 470004663 827964072 468256531 759596818 13326801 116815029 780119122 941386173 271720813 313886936 734841813 330659157 216806536 128816439 619467555 80778143 886017013 943559634 315109581 476884637 440256424 527483935 415154356 709563424 720034938 707593337 633502974 237156293 685837582 973463790 9253369 50675494 868073923 652343352 290337053 131081462 929410134 970444108 178164133 159927789 33586358 617323110 316193898 749775831 541254362 178320509 917386676 378112990 612048660 554599129 891218496 871215872 376528389 846501445 458309660 647819794 13557878 143446245 298677121 876276135 729085380 304798744 207491171 421883751 302987702 21845303 182296690 723273011 356420726 588300043 531952818 113731069 711768166 749000189 346214432 332894743 517728907 190825519 641640852 694595811 88391603 295387154 336469219 683381612 369090920 627225389 142708243 550163703 950272088 283788906 968341093 618764746 541374610 285384302 540656670 16431476 642733099 995536824 444363731 420693560 999494430 703186326 572585716 904580182 261748176 451244001 672743034 96940176 836653982 582230289 150757327 161719224 316499609 836353602 617112292 51110623 920841508 328757372 550934727 301496055 517338829 999341577 455261251 889047784 105925658 703921958 311138760 728876127 176018505 809438538 305786822 975694628 238909562 922727075 942947916 878159945 659372164 224137715 380136441 87040791 318425701 65987428 72889029 837831128 469563931 609582134 502475310 650466060 542101794 826219144 974714783 853162717 370923188 317834432 875612918 422685954 216450524 636398751 972773104 669548803 517910446 123079519 642004101 554373193 473938386 822945855 855160220 490186638 48646874 48023776 715021697 468829365 134494192 993600393 948190426 175210234 905527162 740204761 670815708 388832435 89728433 392767428 363901013 797708774 743004223 762414470 623975873 941884489 257606383 985519992 142649007 156865540 38994648 223117891 18842613 668991059 889714456 677755694 622749103 573097938 117306100 978983902 150792312 555199968 393518024 457135936 849239845 249917147 362653632 275747307 291347740 658778637 792064800 523167628 153063554 45737353 259980122 303326676 577086598 987368822 531156715 347267455 770894725 14342110 130630835 793563885 659612858 729207875 397149200 977892127 673729331 186336990 83660455 955941868 990909382 662990496 519785810 346510513 291547947 920898936 956707967 528125633 972909622 148464350 897316054 753571426 544769692 312332732 664320770 462752229 639135973 295141500 436270443 92296636 142934511 781023234 815304740 177748689 745617291 188432570 505120644 272450411 486069324 301536404 807584361 456806976 244699500 567891687 70223285 238274166 283510730 66169351 373570205 256147835 246526954 134241159 511487352 584012148 623334856 778403506 604757430 883490696 678875164 11664284 316001202 432078158 749614115 485680319 361024615 821819886 840078486 569031644 644269908 216595698 652933235 249896233 43065431 765723649 377692878 274659969 286197362 542408559 530113675 200040648 775799040 792391273 264817927 222412379 26679606 564294246 905302855 951087478 36661664 860189675 254234844 167237301 771401795 119335479 66859184 221802924 184030826 96011635 703686792 192167233 245480116 995635011 519843166 385098019 589387792 546006222 570283806 846856618 287448636 259267025 806569191 26984359 790083442 441571682 970945595 638427554 415619090 62976756 179302173 85054962 887840484 391619294 281537534 632833913 746397283 683434807 151770657 54949379 382100892 836951771 122948521 468541884 872683622 702202265 161705355 840247179 980358276 2934847 205108168 914776728 590966564 185095648 374823360 81901544 891101572 993125978 343813103 776916549 692575917 631430491 953517226 449822189 1830093 427886439 497397965 17584561 493506834 169588212 643102338 103676296 346081130 972270496 66374018 999927850 626863432 536297816 620668068 721456692 822141599 188758604 647601231 804508571 191373934 159143052 874532907 122512270 815892642 439358469 393109582 451197460 65306194 435774036 178171698 623701975 692005837 913825621 650188544 681538688 797828128 402255447 900980157 9202999 652539334 991787132 187501726 373481968 902980416 7349597 718337199 475370880 349830549 661601756 282047210 236079326 104884880 613159358 175901778 289440648 544402317 185817977 576065868 95216610 58689572 234255428 729435632 478119652 170376703 443907358 163653190 881332156 35063083 530656205 374259488 877427497 340447807 993945426 86259401 233340706 502467223 891395830 184540820 301122517 410205028 408509427 293044061 686620413 345175301 468089365 245877733 509519686 122614248 825678428 746638244 609281857 596771545 790799460 660681576 217288020 610239104 918306821 356391928 643335826 823184099 64499649 259236530 996393868 979684780 382462562 584263393 138076873 364974120 556318406 642235531 428928137 46014661 712710135 462639891 429533907 941846330 92753603 308330345 647221715 441390069 268075241 326374149 16904457 190907024 113266292 264999728 441005356 487496724 472061853 444835627 621563410 392729271 561180378 125494490 956009345 960444631 506576692 978519152 232493040 478035302 342049544 132416391 479504177 621477872 910677636 644388546 109139389 154042613 300627723 805966639 839963002 452450850 617396964 352476128 396212041 703578097 559370955 559124026 714316847 682445066 706866700 933352970 78418255 152111180 519656199 712123300 267671757 878974403 771394850 294949133 675044 441785278 371782820 113884035 425838770 630342342 34210786 421705150 521099693 699920196 636875053 239803494 249052405 296093351 256101619 266783613 411862636 619859969 798497908 731955655 260447673 692169870 309921914 492537398 203841345 560449148 768305187 658256371 245857178 488306169 67685505 868204023 808490518 845131940 34212544 130181930 318606553 677666350 681061366 924164578 794243642 686238271 460172776 568189399 301588076 384893921 91571553 301648482 203146125 197631773 390705358 775152148 272725679 991704177 558755381 760219472 586214854 184630223 285348834 254351039 970881882 877070714 268781963 690927705 286955841 664527645 384735378 269921095 573164729 100328933 427319609 783523206 584538257 192419014 639456038 693092710 600147596 371675330 101545855 186862788 162782470 597936241 293597164 234429513 626433313 837517357 624192803 683507650 858176871 197552727 76145025 929017670 333475395 115509378 514107638 7176660 692030223 247960812 53572474 95823540 860930843 141872253 663534912 122644879 402893283 224411222 178898135 6559606 492198580 685564659 618904873 330524320 942317094 240840312 386572852 989607739 752844044 955649477 676089748 710856659 935921941 647658924 950243631 837651476 553219999 908185358 728439478 870509279 526404311 767985417 240698845 203419611 115330490 844445952 83567305 669723758 350040888 847504832 953394670 635992608 338551750 976353245 638949284 789252573 381946177 571844412 126543023 958255596 88768775 529234445 967122888 837361862 602054853 362885488 176700224 82798988 97479100 302336008 835546506 600446695 251927438 672383637 26062145 189680759 598443947 203359137 256166901 596379878 718300601 12930079 312515075 411179530 763924771 459333035 285028688 358857897 478505607 662442123 873171350 99765940 124926652 54500518 993874765 595089124 403071829 764822372 592785054 486848367 303127873 88194795 377005006 395323053 114297385 5454785 768421796 576163924 515064391 189251285 536875141 979315064 398173389 245402189 590351213 433143889 663254683 663273217 235319404 540300972 603707043 251887698 912864134 428893791 613441569 580694539 527221473 292223848 744434809 738828512 736365776 568922145 845395105 1690121 316899287 982127754 229153822 368315383 401224944 70419329 112978613 555711890 801559303 255408339 352665609 753402981 318650687 48478545 645845411 826245657 847933926 957518376 25485158 504202409 22924807 399405680 557101227 739715797 283789889 260212248 675385631 929366632 77791134 86949824 792824275 49022222 566587557 871300247 148829591 129803667 893630839 245329305 556912530 506044008 771334757 312453333 197111037 921955278 190952892 80246009 485795136 823266814 344852214 577440362 939333050 450626393 513586467 111836324 104048839 738753409 169320853 978123210 560305337 508616534 105766425 138728846 337177184 757786080 348306505 503510653 879548634 333774580 899788946 617642180 442468065 95038096 456536946 882627936 18316220 560199530 380422887 513955055 291284479 493822326 286617831 188524947 482070036 809494925 69910130 832413749 441128011 220098845 521333482 348875412 618931372 354968277 150709409 653813712 134245065 667958122 56037244 183855195 595667177 826255410 123785261 288456418 695032668 466966611 800689294 831927193 98542108 127907123 896251957 527047311 513309497 214366617 425031008 890407303 244444394 77802007 385500590 300492158 895473136 72310946 70617669 358738416 295047701 363648980 212057091 993973457 361090168 284512668 411004290 441678077 694033708 509399888 477495817 134472054 616549087 58219226 925903343 239449008 288525165 694357008 120751725 372701281 249667432 955377340 628580060 236351044 923355328 637007804 857011581 25746490 655649630 88839625 476376450 622503109 826005313 95453201 831597792 78676431 579026257 778496833 539317104 742885011 994492319 700842673 880769233 629508955 89123162 389826588 479750232 233266250 787745813 195459552 556589509 812039453 975500246 830770549 895315302 100584080 265873166 281808536 765762698 360545629 498127886 161442860 173107144 612169720 585065880 434796557 698949643 822263218 645875128 865888128 331626699 119249247 762872653 783936336 574147858 543497413 522030833 654418158 901689753 199045427 301534157 602545101 712452144 75071903 383596976 849963783 450947518 855844700 344257869 273902402 197839685 181628723 454861271 729437151 438426682 43566118 555565264 580260689 355565454 374391728 152382732 879034729 647582963 479728024 710143230 167108930 314725815 153274083 167485249 770817227 11771405 387767829 605382673 905014219 189545161 540626886 496107804 767939389 184548204 893483801 485848216 658638390 166144398 615975737 327085526 415393258 774264512 198893935 416815577 709318114 497280129 717346015 322318717 161460100 600409508 9677296 652324538 850773310 537656096 433292684 778077316 600011770 644588102 108205656 210582234 284260371 348905440 686542530 709168315 799808078 588473629 105275326 538432300 40775570 531218990 349325327 344609257 489279060 428779215 504243441 938310770 778759354 356489420 366099775 956529708 912539773 241616569 263877993 847174992 258973624 966804364 561602059 898673046 220031845 730904089 125482952 467457008 185168909 56348053 830233212 821207212 120010288 71315156 169875810 386006650 119887750 239839407 435777176 207710385 991648658 108828645 196296636 197436208 85420867 790118595 294465660 724015708 420661481 866995534 615924856 884946075 622586392 924676185 298217927 588748579 703733218 950365496 514055802 381794460 658290474 997804168 503861365 959053304 935701291 888328141 67569757 203445453 132586870 287920678 25479772 152074001 143829872 719191214 906868848 425354154 956153719 206186419 989186696 501810146 538993983 67996244 938558380 651207364 806074335 323758328 589473899 542032980 146069671 357148988 764241817 229137414 319667686 466013740 806025989 584117155 533481442 75333174 301944721 512855176 829924745 480220158 378970047 642332796 789876531 622667976 267128211 225567395 32832606 549695470 201362104 55559683 170807558 701751091 213403384 218105075 794051890 951331171 165314350 901239225 630105383 510268878 809531529 530787991 890067253 788573975 388674623 960111483 841137696 206750801 646330477 839896554 659051338 104556303 328085756 281143855 892628314 254821955 137871280 943657639 834952954 534924517 987731601 914784766 526744458 407892689 908677959 939226079 396046967 888769517 145292991 245611831 489522273 158055337 430174114 963783388 369651748 872748214 707170591 732318097 486003443 383148759 612036282 39234153 187726854 385979704 166080639 542924435 6261498 851923931 550178547 493956965 187088873 954659729 92080625 389585943 3857084 788429995 558600185 841697648 110380382 739479262 786397089 74715363 92552665 855975722 691747610 241139341 716699367 33314044 721710805 697999758 892618109 411081400 120516919 315475511 537348670 7372470 262651907 844112951 860491351 62973935 223872349 832982121 856577804 8667642 438818150 203906005 129527128 87861188 643488444 368564420 802163401 429405643 563959032 407557842 939142231 342769075 460566338 906233069 628723417 632063794 761983775 565131585 589547680 332726101 865550494 186833905 254835520 36218794 669598017 443897816 32215786 511287268 94720815 540520317 277786351 328604242 536582448 881607162 568820496 606625925 413843698 74508889 328548145 966496910 786805732 761509570 744100341 154139015 944111189 540916721 859987763 984016341 179041664 913316837 177560839 654058686 750216274 488535160 65094383 179914620 27237987 16097383 434966308 728769881 940914467 993649783 291820397 110491632 273613839 488855228 27894388 450991440 588028308 931349140 171717705 253215009 484919828 33839614 25039829 771206349 857681840 416100137 275190739 255180990 641201681 243088915 230628190 864806226 688336420 787101618 583284415 309533620 68171524 35871426 241952478 918442613 572361386 381798774 586283543 280071179 998207291 726865828 796597102 910043873 826649544 359944894 810842919 958807664 98554774 113017833 304496269 716903230 570445101 144206578 230012096 393550979 367895311 840321072 934706794 209593867 138596462 941245605 268887842 802270943 999589731 512042671 129498979 924788046 529739708 697003271 33794244 224463401 653395694 120462041 143699049 213011967 450700132 386490760 714181163 376215354 66803571 980104506 74461622 414802167 371091747 719947367 877015735 575143899 84956092 325811114 759486485 18080238 554066538 837073930 306027646 540306503 56913950 976265580 210440579 568034737 396142543 698701727 536955918 461581390 62613620 250021188 767077280 820430337 590434223 808566272 986558930 631354887 556394495 7335103 816608504 607495748 266481496 707709736 271540098 586810975 371261414 972114223 287996053 381296289 925299159 945645323 759710980 321229656 136537663 772331352 17786536 119125604 561627015 593623546 721723651 812494907 310461092 336982074 224689933 371590246 602592217 342377215 451354125 560857512 913533609 789269027 548095967 154455280 800150188 837544936 48352656 540828963 949183711 24165818 10336798 246109166 564128466 349427629 851848696 218135655 247312198 847084133 579433355 35560992 451219105 632750363 469186983 966567191 307852350 441391594 785729263 472800246 745424960 70466947 648384367 766573174 95513777 850616466 669297280 738728573 468133224 266397235 156122456 576330125 344800302 900516023 993840149 670634599 89106310 150505252 720792529 737656131 551067506 462730316 922035208 560836211 532817545 448522771 777413050 124974892 410298470 413078898 878039330 974093198 617702246 348341883 626384761 977232863 957616005 130295816 311630113 748256493 571475079 672493363 529784352 788999656 760367529 939009846 451750091 520313997 170983024 640001170 690491916 682703933 668830920 764084882 202523249 333455640 196292721 203261068 175178132 390422815 940589645 867045054 250104966 169193029 793857163 576306994 839364809 506653611 16806465 588508384 648000441 361089951 423961545 980867236 78230520 569428762 122990291 957674939 370717986 263203542 451550094 870921276 39818717 955562731 903113996 21621881 228995711 216992006 323049213 384472421 976497700 592734280 216315485 187477913 207680165 512933222 853207671 740809972 356241781 16157236 659543762 382846422 652421722 968927527 840918369 718371636 181922397 815905652 66909594 94175923 521314861 933025291 857389045 383036219 52852452 87509936 261061932 152287050 426895465 820720596 937326130 341363053 876774150 754568532 859585633 577430323 901544557 220731038 802350164 328602519 899775886 752682798 992355535 258886295 189219049 262215990 466727980 460255363 20680115 794166820 912117608 276241261 60399778 395721645 919781893 34734308 110851965 954473617 670039975 829025902 387226860 437630363 678894800 665971286 200842525 686750286 571997636 572880593 239142792 688115791 527471680 712962797 16319549 731385290 206358836 197455285 65322742 338159830 603047065 126776055 136653852 341580718 260434700 197601022 986532484 843015976 10160363 425577540 509621668 698304145 502576785 982393507 432589378 815044503 404328690 314839632 260890800 354964371 670339193 59744377 677769548 707049621 433485442 979254786 435312909 721632045 64701871 626711924 323693559 696409086 488297839 386038337 597742611 392600007 424468391 670178672 258738717 305653463 317260241 837581111 362551409 609314265 547446025 823629708 745687394 217257253 429217807 481376179 432300263 770462642 233526476 702704518 305365606 684529625 295924574 776523822 569467307 798837203 603551348 836103443 982608988 777237484 148544222 135356881 583128461 382520447 55643911 521356895 487926616 408434364 545919265 311004276 938645877 580488330 153001079 110020058 666272677 794675287 629639303 417529511 820656223 444289585 100169270 927951286 578775893 859947508 619861768 950571606 714336656 805957980 540746416 383872782 521948941 98544332 454212446 527025884 862468395 249774902 855021626 884123698 879799720 885282880 943370621 736562866 324446659 990673865 577998606 750124524 751802284 215070620 234117963 942157590 329601791 190944213 364309232 777499992 720108157 605643444 736015284 652140136 536658007 298629003 853847172 615498677 738867589 852154488 303438666 797988171 821169950 474777897 396761608 45857528 300724414 399610512 794894194 889008003 883521590 796420496 943091049 560392425 589063049 222947781 558003707 256543223 349525900 454579648 60670125 757324417 598955709 443237543 573944757 230155666 461682671 679700719 687268277 815971028 294281193 290617583 371627325 796236808 957519349 3155683 478497786 225970483 944066711 360986340 398793409 326974279 930485995 26307514 670673161 737648801 843293456 114509421 130836191 964619116 936944563 132966001 140990966 531609538 42190610 475489788 541234997 658558690 932797008 195008868 282819536 93725917 509254291 948636884 827221319 3879709 709828515 421138315 781892249 624505946 464950400 272466534 954852003 871379782 346827203 289884294 870143875 71846166 35421089 470185322 565689459 636888523 741120030 158082129 2561252 714389874 296587241 750807557 693206071 624730681 167743757 792338029 677447515 44935783 899994359 860320775 463607931 574102739 123390836 309442827 960598300 379665802 221613456 384694851 680657660 275200866 224044808 139097625 229907835 179389008 39860596 175807741 302648845 297573707 573449994 551417424 116080183 472071764 80412001 594070984 254437155 947323319 532976839 246010888 667382696 634516069 369826588 818834411 829514283 271743345 79128968 521605643 566258745 685828422 758536802 672491414 308062686 867257955 187476084 815103250 470911777 269730414 117704801 188421631 699576744 274076893 232998683 98000290 162104137 127225686 426177095 575446933 682402966 411476462 116965569 607988489 582965717 637199225 286671383 309080018 959764119 520241017 446050445 13102613 521382030 332801702 233474964 972486763 462753052 189874984 556434356 205264801 429913886 271115552 13837846 298263623 974763758 470366437 126040520 73503908 620336388 425221434 435752042 763500701 499190671 303651431 689190290 446921720 738371626 556638730 92621790 355351677 923496894 47580548 632199189 820619561 12890876 618332029 200279285 950890817 635963453 716468568 613631711 505115161 865042605 115563328 246294968 115521877 455706144 549011791 203445377 118241416 276765995 845649628 590631891 154862574 358863117 67748949 376466532 512794313 41028567 217832380 69165499 521472669 178432838 853566620 652133528 458787386 907383227 916647201 550476400 752170260 856844661 208846543 726605793 203193371 974226646 13694739 485055825 864397352 138018472 884991301 496154073 293429383 382450465 609248415 202814898 65820879 611304444 531555529 392164753 716051973 508807397 181065530 817745448 500857312 474017456 86157152 883488223 197077700 383988752 522375515 641526957 24060114 624902695 629817504 987805425 303038018 163499770 697992570 129564893 160384527 275533629 704733819 331991901 962285167 767979898 1925880 181588244 193637683 1481965 845845311 432094632 75088391 569421424 335424152 600791788 40888388 994460668 679280864 928837425 141514958 440205301 487675307 240771661 909498466 502745819 989888742 435724379 434194490 227087437 832932647 959732622 627814529 282935532 300394848 836441801 658825468 770633221 905861798 850217647 30122870 154963772 102799346 645253035 591299865 988244905 756301160 696061050 15817352 353509418 279555432 450990114 238224136 974118986 439785932 386743943 745482995 619256739 308818463 68500816 874926898 271610962 47344471 575974559 429607183 678312169 247204015 726615988 501790677 438476483 34117734 37266936 21356718 253091940 90037959 516235916 873920210 248309926 198382501 816033626 642630172 317230601 400683074 199133381 750296219 257056317 892547231 123439303 414013312 50439962 66225755 806663585 414589431 57152184 961453177 675857796 674600779 466341885 523278754 318391230 884554820 113019139 594012562 382892850 657284032 538727062 434537961 440144241 791388316 7593596 766876306 41310339 565165351 598729476 843848205 269957243 30236671 174625793 336129676 921554306 136198514 252260487 908678275 103465239 835580653 918627921 812667643 210760295 256548575 761957746 497802546 15374634 595252774 472459048 792673955 235223707 232691722 660038333 891785606 787556257 536137146 256258706 62630842 59050278 138559861 212548633 44296974 98844516 790139704 363407832 962326492 26938319 851400872 964120038 895607625 363435955 6080786 277479586 755658544 548801132 427299471 417057488 670441155 551331051 503793749 362492509 633975564 819581528 394293895 124973430 833165237 573048509 924577636 624746880 275567500 662919974 733462438 492214524 272852582 349609026 247619574 894000741 262389124 691786909 823528000 871658207 574227852 257838871 479091010 921565266 346381699 230755799 443329165 896573603 210702428 39010733 319175314 928723551 487510611 699693146 167135736 256816801 290743832 945999424 768464687 616210657 37662567 673555784 202506817 784457887 836179439 110158416 645378952 996889057 477505175 660111075 26129664 306086934 679297278 826687485 61931730 552380977 396440260 41784681 123035519 246293177 886723871 830902274 490541798 516415598 41347360 778191460 918921031 775939995 246032326 949319421 533596932 332513704 782880927 581953308 381325271 726132031 141238055 723426251 760270083 584757020 203535549 584557451 397268536 595303208 246613946 531483548 802601381 578477579 831381595 346325368 643335617 587347414 68957039 554287836 27333722 159760709 263598249 342098488 708991295 951379288 372177755 923652107 65283996 678574801 52699059 486736085 21106649 758707115 901075101 227638601 423497140 423104625 934422286 858445542 70039121 937424670 228575734 229079535 546814560 22865518 293595805 781957476 542383859 952848442 45432602 813976590 584217650 612379357 370290927 442495674 466551838 296276095 247373581 8796252 341348900 401380007 455363561 959532366 484941990 586892190 49057242 742031230 304808355 141616384 114704283 846363463 252173347 294098949 193062831 68195382 473279918 571554909 790359539 821760972 601934376 209952827 606948329 723436257 457652406 575648689 644909670 828687760 473245373 4321587 276958245 57442999 93971071 161797821 634174193 778407036 413093404 629946037 549091775 870656596 693822070 328119259 487221218 365801730 771653928 625320558 196462233 511727064 440504006 927798857 371987780 451527057 316048385 588566142 773985687 653001810 708064562 469466309 203524683 625613076 642799036 470138661 870872967 744053625 624257748 481877907 770395881 973717339 433578235 788690385 47818566 636374499 785817958 73112267 361068250 668444765 513059363 394715387 905624972 649473702 406196086 41627132 412409684 996107861 287710743 295304009 87550465 653588718 675032501 171540895 737939828 864342796 826813943 677209111 644754777 958709212 601622422 119584006 331833768 430878074 429139628 83173257 569411089 817878347 574660011 60354239 758810821 861835344 922455583 95686823 368632396 907499004 552481004 163749041 555940354 905961447 751479239 306556546 602755865 543102979 338247040 8295654 983014490 369700278 68052551 202000219 401292608 622423994 230306932 90458430 800473892 11487068 784292181 453446277 286472354 310113890 290097598 65625950 491056682 763288038 411413760 284654256 697023197 869611771 546540199 984124479 545213858 248582238 60745816 550863568 83017738 923534306 735476264 79895694 121688766 39561935 237705556 254823662 498531473 129296175 219556045 960271335 702578524 950931673 943111051 563757691 119416230 569848351 216625338 497188398 277073359 845612020 696323831 775309064 464637236 638183984 34675696 200628965 644142743 837166571 196076298 650659135 461331012 308260902 508374365 600236467 659755786 589072738 398223039 328645478 578832538 515161660 89088114 995537082 920275104 365759702 237665375 96613504 790468482 266957933 984294637 249940870 612936030 185421923 152929074 831812943 130171333 737661220 30585249 526186340 609891761 720617946 655917687 920663655 652945499 900948077 555405049 585847520 983582373 847806169 600042291 719129784 427923088 510851992 364635850 541193368 840761480 609646035 849639237 590972026 886859949 884180692 425970994 870320322 910463274 262397642 401755910 643437899 986845000 877090195 144419431 260055869 390541425 530568074 81238117 764041250 947689667 900570208 460244095 758772024 705991461 624882179 711763335 19273251 917914364 104505993 935821960 973620801 99594469 278107089 701041721 595762415 524288605 5617860 441230577 76090399 960370216 498358991 428537206 105538267 39108047 268342660 721938906 967911806 780440002 501335850 940296517 965525645 133094210 308852158 365610225 553215516 803755566 954977555 148569208 269297662 25035487 863764652 575705549 157203233 171897765 161053557 351176972 498580470 345852973 125474316 938669220 491651254 176927499 474484108 316022546 179896276 927386270 97411737 163011472 703965839 210128074 534091698 721695410 669519870 178895510 264711532 754307963 199231374 656351978 274344176 576570315 909626242 87517035 450507864 280394967 667225689 880637807 375057759 509649268 108087113 840859381 908253635 138570560 816648192 248458121 680918330 768667307 856697880 934789517 615106596 720596185 300497440 119324910 328569852 355363513 735389126 299049961 776229677 699040259 484406927 302946223 877183535 467698611 755299696 141447289 647136888 247577818 554825334 824284904 727552976 814401301 808417346 958937887 845422653 833870134 15605977 428984369 982896773 901051508 912587474 835960373 685103009 804085371 455674025 33237461 688791115 843488403 61180782 386122114 60610954 402994090 539537776 152612606 693891829 131373875 43882330 223127802 465776383 117507550 624086 148431034 342087966 668330324 538584656 903993484 165744009 618566697 413392195 102327982 460885195 772932905 943288130 902325889 610095987 480910175 655057016 615828296 199140469 632045201 595790823 103275262 59848096 432479055 590488382 698428163 98669189 885401866 243154248 89957350 214572911 546223898 802921529 438437819 757073114 805543064 967367001 540613979 370440554 611564385 895826709 50677449 153998763 892884699 669688089 344183703 671440209 168902954 816161186 438168679 327006073 246082946 69407879 946058758 224575382 362441427 280098697 516409919 481301851 67853319 974561933 702229223 600660755 212863285 494154905 126089906 147345128 18542319 258339969 369456345 877520718 408171517 244976522 731656645 437668147 551891500 332183998 876701235 560739236 939546702 822339457 661212688 875929967 44593761 907601991 735045067 196003043 653186519 35422617 897024307 636671589 925263292 380993342 372353095 677494631 105822063 854692513 548794640 557733156 169103711 852649546 151282498 442720715 695187389 463001221 797316867 930565015 865894099 404114565 918011283 617286901 494244439 209139194 633985863 353418022 21667007 495662459 184071286 720804195 238065417 653409511 252924615 663840007 960090119 762642741 527993714 335142237 546540973 894784585 716469806 86303783 55270260 941581774 616820275 504734707 146827104 675793774 548398185 708148572 493459489 9828861 39831363 898185647 946187881 427314996 369938494 206430048 917379195 919950503 999458049 711677037 976810845 975047943 207587447 963481288 582454474 453865947 505102687 182528408 566899227 848371697 667258458 846929221 465313927 63429698 29150931 836953595 633942525 970675939 774552506 287025191 813790496 438204445 602523529 3014715 602053003 989516755 229165151 444785550 932034978 549136245 371141718 538372087 975854652 908372261 527293270 290531170 68863618 268230446 700356228 381652455 945373840 242752143 682355971 635272691 507028815 267736574 799458710 624116874 945803103 975654847 627911144 456908838 89896754 509750019 943640132 257890277 614090310 946569276 797851906 863458799 362258141 607161396 326488112 107219446 241314722 904719140 916270707 121290785 901398382 4175769 519918249 127229193 720832248 224421248 147037605 743992872 98798875 50520730 426787691 880830930 800968882 67490942 634582141 447648182 182550643 549001257 244258713 45760908 583147180 165737810 652933863 256375180 692131976 504890102 32035334 357075766 540761694 340653379 567342037 750347371 297217918 184331529 538403992 930749505 137221638 684416696 902622778 568191242 358184555 267645427 835374067 745460095 21872566 56446969 718130198 323628388 104637960 559754869 399690707 157060930 969840910 626184777 234895858 552119918 440081726 109200911 719134977 632193066 502380492 387532753 601851733 447233424 370670305 344549975 470448828 466744765 392047634 304156412 706076011 955744799 39568842 492481338 29656251 878535392 88739129 132345317 738687420 7378096 81053326 251175389 652611027 933022126 753623822 336953913 874291464 967277824 758788408 333552460 915028160 940772483 606200578 483946452 757251289 226216124 8966862 949617860 921685118 229949539 137626296 874886271 427799985 9032554 222489358 536563052 127480071 95907650 166531134 482704670 930267398 187638623 611819794 716336542 965202411 527073617 209702026 433063112 645022565 299778243 882557006 487270322 462709116 873232390 788868977 227564150 757448240 446511675 567494201 172024946 453528267 726379110 450535022 238804051 881666790 384060881 415365586 343579320 325042586 943962647 342697179 572026124 777126472 135782606 412681412 573227811 827794382 594109800 688832951 908961972 577429193 54801599 947012226 360300230 37144267 402134756 198070259 439054253 947691110 477007591 949591365 806679361 580421164 293527458 158748250 716934279 703012798 887498062 224527154 221230014 808402553 147954811 750012076 480521207 65466544 36924709 851955003 575219901 663860632 469432750 649197080 516654737 934791999 277507172 864260038 736091968 296684113 714829271 698788822 500898649 804972438 908203913 127024947 827964420 33665845 463946811 629602647 402066840 574511631 956010670 305795224 790842518 636136067 854122978 187244347 734037583 283160772 394546910 556762730 262751422 937976494 789867960 485148026 399918427 338774514 570263431 480929476 361601297 973047701 880845698 64588986 13238874 501667228 764305862 427147671 328966874 402352538 496506885 693488021 947471160 133957501 923521967 270100301 75805824 25978538 409915082 274708784 183389300 244365395 690491938 679766868 420436229 57805085 880776711 139775121 207351348 615389301 495437401 708986715 695919540 478823870 387503694 316582711 368446930 224424565 937726046 911443075 376840278 923890936 402296477 551076618 811688335 981861030 708433509 556080600 684758268 176234178 787123582 349700659 67197568 934683843 229989919 169220469 154968423 940696690 267414206 708080265 702622288 620707252 196728151 432028860 456677089 141348355 165859272 452248507 57217199 215684407 704822850 749588684 822642384 813724650 112372796 671871343 934835215 827472281 226286518 729963294 152867236 131380732 947896871 95275447 624719019 590646305 454255039 609072842 406385604 271837446 540623030 870820827 58227177 322146512 265034579 544182599 890326747 90566579 342611462 429335614 890324902 545984485 884804007 977579464 937783947 202179269 290987870 373730325 407874977 230430149 127857612 73482701 67781569 710723701 277399055 361236435 319080045 752825090 377730528 524622579 18685755 420460265 669560903 303866689 112398346 479876067 679789807 864013847 740441670 710455279 919858058 871519172 761009283 581318276 903774708 774925141 444381940 512757331 291940113 580837484 546321243 185404226 70385525 276614714 599128749 767244321 15780947 493270356 509863194 517817585 760299439 308090422 402874353 166763088 135824790 343919849 767534571 526206505 813080886 191037696 499475057 537542498 243863635 349180924 48955971 594212745 674679503 950824421 553168651 954610111 900158354 873885634 490381055 641594867 926759001 822328443 111571810 468096953 68487685 428263923 708312357 242442541 417150493 651706286 705617132 335575012 789823672 762281548 947296372 655882506 176469095 520974600 724278964 774722611 493346922 822701364 464717475 523146860 294879643 88677961 50776630 877944960 613103804 270135411 552453015 838190529 463032837 502202172 25445962 883538899 26269343 102884999 491469174 865399967 252637712 429724263 603252410 545964457 435567500 428674631 815079623 402276990 655950933 362406657 261955494 551277682 5696137 737535247 924310820 818717815 142910522 590522051 992879214 11991064 236033467 579149665 148829490 554641514 217673873 705063862 618198753 52832352 722390755 530838301 96749367 828643667 15620720 595639016 348701069 936659324 967104785 438754233 887919948 864994443 759212088 825411496 826785542 870994365 984369694 692918190 504265038 479089413 662638870 444231361 556333623 341132755 679340249 671084276 887567776 977714397 765134809 543889488 324662575 771105232 440049135 364046714 550425014 157661340 832941713 300550078 641134765 716639139 228809122 819816665 894808883 605310610 859799911 180663026 249487587 272436526 318074895 388698509 109742868 642567846 770564919 772951384 534269347 209049210 567663992 775611890 341913515 722465550 129250579 751924202 103755406 382340597 346351247 946382502 166628884 198521582 601898445 674978253 549091499 956666062 900687306 713405857 924805637 824315882 269899810 167725484 673243170 447342532 406371287 748239480 372393874 259473378 835616507 652073312 338608137 75478643 729094349 485916695 975516323 917001049 416202591 137319333 548252954 963095316 794114891 611587881 288683018 259339261 568855684 837168196 410688359 868889304 735248865 580726972 497959624 527763119 850632365 228854335 594220833 439209889 76310040 930020842 678979843 511647858 966377587 130548953 962116784 892137672 445572034 85036040 589977961 921015659 450862860 469091752 580942409 59212846 611496333 157603170 248088186 687775853 246642935 316947461 913383503 673411727 557179205 419104265 823402054 977468633 505657376 88568942 543749566 540268127 238985012 320767801 146940066 644339575 916178810 598146772 791301247 723274687 396889662 705502955 86750239 760676390 317662337 76182306 840046709 863739309 497216463 126061016 618664898 209516219 106377127 534321711 334830520 285907318 639101508 438556510 539323624 295791460 55367828 272471193 143551656 893476218 425593876 818695921 289160421 679666159 533132827 401849104 744656564 638835558 402503721 178775786 738676808 111068279 324094888 803157225 31151817 350028386 585866396 485078246 977761922 476156086 617514081 742507041 640080722 808851474 133277963 956178363 51555615 536335979 542004873 908708342 616379251 169605406 57445453 583537834 525271262 425359133 767646953 476031191 380208734 358828141 848816778 856091731 602500747 358070383 403528931 539058647 61954668 362924395 990007127 35189188 322251661 135484041 528670865 518829282 876646091 376632566 427311974 964293127 132132637 446696956 968613663 235533025 456717621 843895177 903933831 3616499 578423215 648878234 132200587 527349480 856416531 976336132 628813961 81691890 37182672 527686622 673012719 467126496 881355668 640340090 940388063 523164392 207223598 731303296 449710824 315230375 929676884 53024022 876322426 911038497 377197255 241139533 376676245 729066282 394075981 361555211 373306173 58444373 568796113 485835113 927262939 340107717 475287095 526040064 441388739 520824411 913720640 295290794 238306694 579935146 28719760 505449426 750104561 172951213 286699297 984893837 119588856 766254081 745814110 407327846 594082403 298880450 106618070 561166649 154215322 715730418 197023258 863869565 163587173 999819716 512197461 35816196 977652345 588282255 893344922 128112487 590905753 457479776 810038247 606508808 22654960 139240992 644717668 890618853 586248593 53762384 228522704 733935810 999749078 907614337 153074793 901586063 986331319 832332349 734138718 540937745 259823633 565388863 418446590 352953486 339118019 597514010 494310596 576100141 802879791 957492882 713751803 325011552 657476180 908086067 155467780 147395172 661955561 548805523 209967267 128480174 146334911 98525050 160894261 752049388 406338996 795556969 731606206 928919811 971235428 909729026 943946943 570726421 223655630 734477517 711983472 907435419 745173250 666345460 611203148 960218336 747523332 917944963 377795920 62812720 412419298 885529012 611134990 461730057 82098060 379114994 372195616 125258036 675684787 708798860 30869376 862035540 12554543 73869549 575021395 992310239 773825671 876966778 388806254 275098725 458363618 903317263 543022546 98493515 777958749 566366693 376917385 143060829 260902543 9839041 319289867 289571717 262082730 349118648 647623933 910710644 974048269 889939330 70718405 477582170 269801332 485165159 413524857 985809509 378408894 306211453 152476551 940729324 115688187 897680654 339515713 923360713 484526 15373267 405517438 219340934 272511587 535123584 538412249 247057168 999961119 722432295 107031986 221117542 919593267 483037618 490334967 262149894 61165759 736977506 697521217 481512019 122787609 968907734 761232324 928980251 369209507 199575173 234389602 692759068 181026573 833584450 106151677 454364618 52213045 803012009 727105637 323173576 340560745 625514647 447762428 205832760 91052637 111155774 432520263 833200160 102946248 862120946 167303869 909877667 696819352 873096441 251630147 314143820 676186602 126614910 115170014 626014260 763383269 983408841 992173939 592606106 878435600 972361500 218972085 987933295 834279584 971679668 93284186 504303048 695497353 175986586 850006737 902397494 889077880 483041693 824693878 565482583 624567083 870370663 258634807 127442144 165622175 934469725 290498567 534817195 280845809 794596599 85178341 87858990 542169855 679400396 960711659 621229873 555309898 625487632 552239699 200636703 107974122 692534667 646477414 224216320 145518001 582610266 814641031 688765250 448369850 122137494 128446180 964390926 980447436 600858690 523363104 496964243 273991767 268755797 85803470 197604034 966976325 998881584 251065238 958320295 664593227 986304074 316437254 338879966 342875324 832712194 593252853 971814638 593792781 228864043 360742945 48413868 42286834 711922117 895220723 706907910 940054883 489634754 488324608 130939515 850055453 338407479 688496417 830348893 450714382 82386963 31555787 418928925 550309661 290688881 942800946 591494587 545824191 355452111 933179415 169973245 10743214 278267080 512274437 616888865 244889376 737944024 372790070 736727779 502056090 848792729 292563186 906046491 434780412 921551134 183416180 344414056 931182075 347070263 758168102 213238443 564711465 892856396 506666540 556187881 244044377 514613507 373822899 366793920 88219125 31561674 753991034 431211183 690710340 792508671 382979825 533596364 567828144 685195286 193392404 727412014 853839512 556920394 752621292 975028691 356425471 571518623 324308222 6887617 192441035 544439106 588625073 268498658 149350151 96010715 846759903 816634902 162668436 232239705 495955263 45799127 583969069 791729923 873568620 302530267 583411649 505027016 831918704 73257977 710555355 111389060 320553740 156309536 769192373 262885778 573340320 404978201 487770702 381296260 258777038 731764977 178279887 2360202 185941218 349276108 936603392 801807998 621429945 706217454 749033274 368655312 551806428 501551829 437165349 25938896 914973661 36926943 920371111 236014154 348216565 180780694 690396518 671888226 503029402 439154238 951716882 661815224 554520837 264677379 651064938 652828133 576222416 329808112 584487368 402869962 559597814 535528906 894915223 438693006 787218410 731093850 151483645 268328441 519119480 518134751 568490174 755487354 48758606 303428650 608078746 134388054 8614259 692059743 618362211 823132086 95094048 314830432 381139595 295953733 969452161 562906288 562763150 653164133 657327577 154498988 384656287 416148113 746307454 504437055 46960500 744412709 917073883 978893262 891645116 30516957 221827211 77120452 284467978 952295164 378995229 572264286 242047670 180027667 965180289 979057481 455911034 680351548 153977034 760363308 284535863 410794757 818295474 854104615 92554185 12714707 315131239 892073725 641179326 864117216 249313529 865762223 957009941 849457752 839535910 163889722 278140212 134921173 263623981 914870780 947450101 195971761 138146814 495672174 559849520 913748543 630251296 264830985 172303908 727522482 937050419 201250571 363994890 972665093 204741534 600900468 608853566 520668059 289312712 973639757 466405058 970112849 854744477 932788619 221194501 191155357 212660025 952690950 953342575 740603345 957423411 147388731 270517730 470919115 853049909 131397058 237964548 255330561 353065174 790400355 963177542 60090611 895789834 550816113 207101851 217549936 735548786 451153937 978588688 896890115 329267819 208344145 440224132 241077363 453856909 335547139 371322586 729570304 83794070 698986074 125060155 950807094 885769848 855230339 910325031 357844945 682215850 366995872 137613613 930423823 132711793 870821356 525310046 22181005 945941624 532079869 530520143 838410261 846120091 50314307 556199739 406435011 227222795 435953095 859063826 474047072 406092193 490219172 286944466 269941754 410999240 896210722 823725139 857341439 77334285 18815204 173027503 614505800 434888574 537393900 167883164 957750895 169368922 308200510 526488158 183881667 168655046 368620339 89353667 239906203 4024886 119044633 547466500 228955879 970883951 789761429 457064235 407812322 643765841 712201719 465720033 155624427 701911225 331207035 146219494 955661530 125520104 925786128 215347707 635864968 472840695 671670359 554803813 653651987 164131663 309047900 128418035 697470681 206742965 551048560 718407496 807232056 532361349 676142398 323877023 233757689 475755136 687102654 281021406 687701486 863948362 375815195 554652061 398950066 967754022 81178032 441589014 864944588 359062846 397076177 948771673 117469658 278343867 408806750 421420651 178659315 883424198 555548190 266649144 792061005 598222798 94725572 633874345 431975941 190116291 267380289 272632709 659352331 108838754 6481548 662792653 457325129 114092750 844505656 641672068 628073896 757852766 825208804 813991778 110761284 312879327 91891075 843316453 486099267 145407884 916374766 699833818 739504827 703877327 282719119 804631568 203926892 546750489 398517124 948470669 165231003 628548637 954056731 483939534 362429280 122789411 930234446 404073350 846198661 206960652 871797714 903995651 985106375 777902869 103058667 107777244 820849414 277196394 237742397 622591912 445387880 180081484 76913870 187153170 558759281 215313083 417603474 142752189 670979340 586792162 978405303 711243093 22268562 338188494 609948614 855946180 820897796 501746687 668561148 499729905 397035451 976751045 797162482 708801033 355246222 396825682 491039573 309766465 679593601 259125043 623827537 939373669 590489487 896678882 764383746 522122424 373467748 137610586 149787325 993650775 228764649 732107799 814301113 80745504 136343926 659719174 472065720 920661171 642031682 762550923 149735843 994872021 822875861 331622661 742817450 882597961 509461201 511963424 140845306 812037468 292740355 798195879 92457681 449807041 933407810 658615336 131514522 387505609 212678252 396650912 16390704 243706338 56423388 643181928 369926472 822882064 265513421 312329621 420705505 471463088 622371139 609759758 332028731 659249353 454217278 731170623 721781370 456021394 669560695 100765372 346413480 845323379 347693422 917392462 974514216 846472502 381573804 272807412 280892705 166832940 249335106 90310152 442200737 178578524 142682280 65781003 636135131 536931157 467371375 526195631 790774181 379789847 266130885 40033489 179547098 965597195 605619288 205472919 541721216 786851831 737028008 840309824 627226165 364239484 561696610 98602024 299885469 55027595 242200666 461599260 555183645 51952904 673968082 968377952 796745876 948978985 420056741 534784108 292500246 271942589 105529584 102376785 839715901 970940171 683460610 44894300 24359387 610216710 884573384 206195097 473804496 662055029 397133535 867952753 33420825 103670285 76182953 607525878 153971800 10363891 121856403 472849001 790174159 603859130 59052360 595970317 287125669 948554616 791203999 741015617 194022764 548853576 297206152 109203209 761933274 506536938 435404009 421156128 849331345 354363855 10932422 210656232 802410488 772818963 994664175 501310493 104847876 717439784 967119992 995963007 497267549 660507235 485147139 468267204 809851837 877579341 933080957 798093151 428109501 454063633 234868681 106117087 690591561 156525724 107544793 61696052 148410861 768581875 774252255 87536861 633756439 901137459 216687333 266116266 541750717 821963771 946473124 728331360 310918010 754651024 733637750 561166857 32347559 275490062 523494781 693008744 975272323 921401613 274841105 745804601 959079027 284769492 331329193 916985089 56446160 47712996 636876130 769352371 850848270 741136415 522181688 245383427 415080884 785185656 608160267 396861213 994160698 879018227 599727159 34244220 692063033 516180166 95859292 730509212 178103535 258547331 21904247 269899759 485412774 458735206 127343754 585974932 729732865 429814313 724435086 175702906 493957573 639480315 333918661 837435689 569929609 200491217 327551268 156875015 166340973 228502957 580232730 689371151 346725462 569451997 412633610 574836131 475927503 120854747 415206345 486973845 709907267 697981586 20261130 704503635 844195504 682221336 923612166 942293738 673506788 701895958 684407441 555736903 409374524 216154724 332759935 647217181 111093857 400119486 280529550 597750081 618125106 904959039 356927222 469715155 129254426 898923068 736476854 500290663 138953555 511730888 175041914 393263859 393705791 646023726 630356362 811431852 943332915 220744364 872702147 102288966 718059931 546536924 90291261 550509360 73980667 313594914 899879185 779809291 942686407 814717137 136284413 627954743 57078743 675504944 946161844 138414628 995340764 629754418 753549036 658588625 190212178 393165482 317832176 126794777 801961696 282220922 521723691 533391289 859761885 801477647 703527316 310994825 379644540 973331988 799011798 573587115 476828695 66421506 682467115 358421164 523324601 842093220 321265708 769314532 52894923 739324729 251302846 513021327 254770168 565702020 798512510 121709116 750814001 770557860 544197295 551443001 929521570 398504877 790697078 988663924 916981816 623282044 433297377 222987786 663564217 785139391 608150037 394747027 315933033 699512140 217171348 679745149 955453163 133253099 881770479 334393882 4787695 771211115 896344655 511411871 338341343 153904460 466033960 187737843 802998822 798159764 823191043 845674716 336571517 695433634 814178377 634111313 888114454 417721348 22127128 899481486 692451817 291982209 290657922 837264939 999785377 488814759 356925704 300544723 705291816 889522343 610080276 431820263 954303105 839640332 782244282 62905527 490453396 742902802 923539037 655555473 856811177 712556247 618499064 792865809 447345133 457993459 873688279 26647665 182347908 396425566 603969778 916656598 474218382 524925011 582565960 995794242 111432496 682272608 513800336 450734973 309009151 604402320 809861976 782872121 327942873 690715751 138592192 862864072 436398117 52467981 676024100 704765070 817607315 809278067 963715237 653115131 37884734 93282755 875421163 488624987 487431306 928530837 145286069 846101632 667120487 434296691 222144091 900810716 415426009 686709247 353020979 607022399 234711625 340698455 317912033 182233647 483723209 552279879 490220055 41610150 508485524 372463298 111298775 825789771 639704486 343049159 999412378 912578307 933378352 296240116 619998447 145072039 992814954 160237067 621763343 501828079 471197312 750367129 630937835 583329690 315297094 196313024 885370926 567076355 288362326 957390558 394285915 371749547 209820274 683765982 71415978 249751483 242659224 47776625 275787702 827428991 316740711 358906236 370388291 278172123 437914720 117144874 65162428 226761553 535275598 195535060 235741720 209323391 64904175 216349370 670750583 609863761 325621137 697042991 463712391 757742960 244128475 221073399 64598328 655769043 711347436 129711387 653524578 826625711 546093595 306243351 23330395 275253787 379797923 671195785 338075269 515208853 818906047 268125195 652502601 605165951 852560223 548956787 538670119 274428632 525701734 789561934 952080302 894897295 398695541 885582042 409086330 535785410 87604758 313693210 333312016 488049965 931549164 959412006 357731248 850875068 42393013 539277148 207686841 295574897 837705027 106538952 586779350 161238574 815644889 582821350 314978058 49672151 584912706 729899750 216928680 659684795 923965051 584074575 821356982 408933426 950630442 397026538 792740860 226996322 209589151 334851043 876465100 765169381 586205224 356371586 885191458 222157511 885543300 300676578 413003897 592582943 405117280 956117843 493174190 858451944 894014016 484118044 201168396 98888522 604406065 8196168 720267914 624543979 884712429 631858923 423312876 171168051 459602997 935930919 659742025 644032666 822610815 758216828 246569236 671205065 270297824 592423670 186963582 67724629 323923001 569543140 762378285 518993605 260276531 446046685 353082000 445775278 97938603 18530117 949563443 926424535 290500897 204879664 694074058 530938287 58086578 732164957 112105395 914579906 449013646 438441881 954504096 532024766 302210274 251510586 129261771 771755567 876942797 71892484 532691872 54589994 700596681 969881151 876100040 481008198 358600826 546608840 109314849 214424513 902407793 960021413 581801769 291060768 497128455 765064521 772766880 967722445 788115269 675695848 81465337 264703020 240180569 210878961 776367846 512956800 665824316 542603310 413347369 26771269 631687154 852572284 223727205 96966017 830934375 206531603 421305802 19819147 609441147 511086541 508018984 364717569 246932234 596876785 521661306 112851917 439671325 623371807 985208884 573752830 519460658 472784844 954645470 881448727 368792156 273885560 127649730 720745372 667078276 6219998 476773741 50342886 511918099 681181089 498102857 118740044 847075379 225190035 661001028 291991364 42403235 624953948 531819605 297588441 953790824 984680554 834821799 963953092 741505539 376171513 164162936 795755025 71965951 990936312 188712056 459050281 995843219 797003082 305958245 891140329 292213975 761242159 278860756 413736628 709435074 932567918 955775799 202502279 243446523 266256290 503267094 16279839 49646529 802703626 694994258 465972914 750855977 98445061 194707312 933589706 125367389 547549281 621977904 613715691 929829915 685233943 455212662 53867399 77347429 588663614 882021242 550637867 654376275 529468171 208797242 838616980 926201219 688176237 564242532 530782766 148775207 143329036 774953660 804392279 386616849 872528555 454385225 467166331 78378222 473887418 309004645 892182427 13783156 533440967 7370368 630616219 99517880 759911360 451017911 203379818 775314319 99039108 625483751 242720447 272085713 249743040 883323061 120974475 225145759 571172466 837024150 497643692 553668607 556718104 36629990 224340274 174859449 785436087 228074346 449404915 476403084 296297642 139470818 425827449 684716590 702634101 260481431 157215939 689354343 477900993 573944507 370281622 819518330 579342146 59207359 408122361 129726947 45905690 304532456 977923773 736107296 867471223 255979627 258383282 964617075 98171639 819001486 923203900 402397897 957745491 116333348 481124124 292562201 407936673 269286294 242033083 724390433 615133723 294353160 342352307 198143024 244804475 261249041 101761821 746041402 869862017 807479285 887033084 592265901 895409328 791927375 668259397 992149711 623719449 11255930 707390773 991605142 665604789 40428115 394241304 601083887 371686206 265200054 652877358 45569316 110949168 698909485 278990351 727471723 172983123 704013868 853193457 928042553 346525584 580107868 601644231 118534474 964536067 883123282 266289771 784212232 652715130 393720221 574574807 125824311 200498056 359672794 141338498 45547016 900844503 362021711 216804379 430616242 770820715 192088432 749390383 365683286 213516728 163377283 453096328 860591034 114077617 443263335 711095825 281665642 845089513 674982127 696859819 308622597 19709494 41688834 939377877 247699459 671165213 737089364 352076415 235434644 825106762 823441395 574675669 609992087 989994754 26885261 175693800 877683598 961044003 148054447 778039357 865060632 428961981 233026236 85467631 623068157 478780639 167763567 817324362 518446305 729788800 585281988 970061992 304361962 526785353 450462238 46333649 369051067 165762965 490997991 294300674 34324012 869964202 503153833 644333203 73852581 948262151 154454418 945300134 58620904 188341990 904052277 886845840 924657205 441127530 168918112 608794310 903773742 629744535 75303503 494781886 830834531 734242411 193044562 841770985 862119752 940413000 360064440 927793136 505774650 980684991 133482405 454153123 691380856 334325978 552467112 342691836 485139761 611854762 694194172 775981963 36710506 948627617 297489493 784846972 723767641 439347137 599424284 808529813 164611892 325137320 395031639 418928083 908013824 31835005 454530781 676999556 958478806 241647467 574708404 368686537 656450117 140944105 717878010 60590882 563768210 701922865 229456556 493360833 89743958 137420058 844537867 662256561 155422752 871155097 898905022 831987199 908135401 341394298 291123341 337701813 830288630 50269004 85708115 844824214 619747547 396915764 336551258 185731928 856040548 25229980 442268305 530998535 444246942 541711775 870625349 34597603 885983625 83105009 397986937 584449125 969722557 734933524 548099809 409634735 807599662 390051131 691641047 671581021 422806179 248814683 878565227 687666169 190140121 773964533 220635385 468124427 158639483 747472333 61881113 856668736 780679078 343418959 448882321 265883896 860102449 949845834 844333812 695396911 589042626 565906321 401791202 748577433 846609406 924740728 692272036 906448856 49866015 722857914 733856326 518676655 233562456 357728773 108325813 417134086 152289491 982010119 435400452 291634829 105366946 124931124 787233133 739040181 472211084 234981398 418417585 918934050 836626771 296929440 246662932 319183062 934257763 793683854 345250016 475713621 698076383 620944147 975257288 285598726 531795684 137774002 293798186 899945956 59871191 477606527 198831217 636411497 528261959 122664858 271116953 942324390 631369115 710920402 809895400 579947492 5651529 703512951 8237989 986444070 884628197 918257222 20894568 149993173 453948175 132704803 781318987 923208980 748840138 390456495 10343466 646317196 958830870 883737931 185948156 654683468 822659060 626401259 680845978 40165237 764767888 682912956 835994679 155925533 988248809 138403606 495193089 663139800 315493360 317817927 375359433 211055026 556938947 850471370 54085258 234314503 188149582 993733763 701967638 818341476 512025948 542617189 193773642 88923486 84222643 115843377 913148144 253579361 571517438 509169234 939105581 674998904 582040596 169512961 320333588 554891339 995983096 609728532 719547871 468427496 486290571 349474145 809248290 681815716 681132434 168587178 161311747 880984869 980692731 206458597 235603254 744740393 903164074 703068195 160202029 709689140 462007635 390224957 393945969 180634035 474521368 706254528 582772974 134377188 36734583 990612708 415864651 9113987 469241686 223741560 496529943 796550556 571200652 988556847 664736675 322065507 731377792 652670106 181893214 425915198 845914809 213800875 118860716 481317434 433960394 486608778 128599582 450135342 163526170 420924989 3525778 663420734 376052192 265301076 14269542 502794826 909976820 893890335 817075860 595435909 570739765 561500913 366715976 867263802 943499494 556946017 369951299 134153018 774642343 354718712 492132227 126297610 62603427 436153607 750005652 305008808 986003125 545391815 949358581 835973561 818074134 395850137 511735794 501777047 535761390 815155023 228313150 539115490 469499464 404054614 757444463 645156227 843066478 487583049 951168974 87468563 346378611 65651795 827932661 331236308 283678940 399684893 709891722 686790542 213084822 253101638 205437708 293975038 167122992 501039998 501941507 419934873 791370940 440776994 717030715 165620982 482097800 747163071 455835594 731507765 949135219 455931300 639552256 383856781 70594081 286949473 376578225 509112056 762971929 349649156 855343688 561199002 150326928 444715660 429082498 753587023 414901661 884683690 624297648 261434769 475774957 423434936 52327211 981151186 77246604 400591830 530288151 544439970 143364880 753878465 368540235 149393007 547135840 533576895 940114421 131761545 851419689 438965582 509860507 112226388 530116058 583249157 734372619 811943664 753514241 480700576 435121182 710180421 344444487 419727570 743216642 971933801 797908129 619707288 640103094 172275719 718095759 954802109 593399927 849625192 609038116 457399075 296236584 495225280 539101885 824283405 827406545 83492565 661474796 566120493 389391794 570288917 80579340 686546095 422817414 48796949 811241798 171862498 173664124 347156100 845027662 419919390 569913784 239986102 376873326 495807064 220862036 662572467 25767338 343926230 210085476 121082932 503948998 106827553 482694433 322446805 764713628 393980322 948647012 507388869 68973547 97696889 781096329 705533479 549451917 50905185 195720640 210864475 35468495 91947601 835279329 888654237 876286533 610679270 647112834 669683714 521204668 115015212 188040051 795812 627871946 803077376 516989481 863511243 774834164 712510970 364158739 3631896 620572360 51010493 58885190 558458654 438858609 98725931 437451255 519278538 314635878 4002360 620860708 975543938 322142912 174614316 242949937 871272936 64059930 858687476 804695053 861375840 839149726 229669665 612775445 922935104 899729461 834688011 371366943 493699100 531620099 764787727 429570125 936971070 734177887 912498517 761564818 474625459 583986896 85858346 453431642 263981274 189907779 589065378 930788528 237274369 529894786 88309808 152325810 25576831 626288448 532440551 771673548 989706141 953779235 100008223 342638857 959611680 441712577 790940531 218622564 871051190 279726325 956196148 985954900 813600811 286462646 955368616 505272605 509362582 470192163 146038553 868151073 798700906 864951325 949601362 148210660 842316256 214757797 102530296 249585873 123689669 410828714 217932694 121932692 454396116 718035206 217650424 796505631 663005042 342534300 975432470 993563441 609800747 456816596 218652807 856947360 966770341 24402496 911131790 746952823 830382896 67976674 357051439 461151045 77970501 291133379 984912525 903462421 773629200 466257620 948872135 406974343 150549613 704750255 289436020 440149729 69175224 110959852 819316954 46126493 632313564 170023729 683134870 973395975 997245231 535246656 769822389 44321921 489512388 344438887 108075323 871320681 822222589 55452735 436666553 657796063 11953421 898310907 474586272 315890536 25442905 535651981 700031833 823698408 38105691 550607710 967593926 665115710 340149069 70382519 875914184 73131348 230033524 41100597 995013772 70536730 340863165 819051227 680658259 668925285 196970597 197476707 603341573 994982358 3722577 880851867 689769947 765921922 385233213 734373369 403944835 495654797 956016414 494334286 287565189 15897863 864411237 60784368 219113125 258783460 697743767 320648821 800874835 45299148 475012694 339183081 275318001 397072225 544199257 762036770 339449876 32722698 190997676 813800771 978670779 21428522 215729296 451866597 155769440 302983309 393607152 644111815 688668335 761962555 397682206 782686150 627494193 480827931 814795210 995590967 786630594 269011117 466127666 490681186 672880616 357974865 775839137 514032162 507056261 509093131 481551153 999372297 375974905 984067618 499074388 226512447 341520228 334902609 989427344 42830751 513938986 702878631 969476690 497316627 196105371 150046871 435255687 233805220 835961942 536105190 57036340 303686115 280537406 654869269 344428802 166924615 865865412 309563890 113360209 321506412 716225869 512146997 737671965 434566294 488263670 738784505 886857644 216956015 414053870 732637303 355874658 272765402 242383203 772502324 721059287 914719029 92269645 418121326 419099686 981777352 244141395 703511938 119250389 313228342 796689652 651265538 984464870 756090038 814722918 152560656 594470085 127167334 403389431 617587949 931531479 864520181 822689604 524607047 33486006 16091715 589076877 121703518 259662430 897821080 861350865 753547747 978300541 456870155 521154445 956649716 266489251 339790657 211415337 972940274 591722389 11329807 958251686 686015592 859915909 117399437 699917777 665761331 436707371 806734324 812778265 404703365 17652590 732787041 492294867 301074964 356971954 483359272 867246963 87316298 394937042 918722919 564551648 682490991 577369534 780823492 741063794 147243277 777873710 986121664 519070510 464589774 221626297 428611432 630665469 608024018 333334613 656403475 652528770 864581300 669051001 149131891 541671570 311225025 465275118 894954109 522254741 195416393 923529044 511663273 365685207 896217583 249610275 52676515 740517796 363987741 987503439 242014782 251691670 493860873 675144414 926760941 104367166 578468374 991979452 171986710 784256591 112438638 393508328 453684556 318389749 6525941 862985789 970093555 51607224 478375178 28332195 499402748 933007607 243291893 950388129 318663244 456012356 195339140 38065874 466162511 136301704 942599987 946616292 82674430 110318518 28044709 248348172 135710670 340837307 229882840 750944607 680260672 435004191 626402255 365643649 994009209 3639230 945555175 370346855 376633522 814569263 371127930 504178068 176152444 544022546 572038262 373007867 364834602 83548187 226930579 532927697 69880725 515053862 313301564 316460521 493410388 790464036 347494525 256177720 870093650 312100263 463020652 382181628 926487934 217721827 250418796 135562659 974405072 704639799 395491780 175768464 403439117 338790530 516520572 581469699 784132008 454548823 541863632 774063021 158703255 129137021 508247071 849347779 393180383 52566366 609009842 426183265 309528592 614031044 972507273 402722748 61059483 77351236 553804324 278878823 730067657 214407667 309245459 743842288 740767656 401659681 497545586 534615219 802322570 856069584 762790589 135734605 836157540 996624686 113038331 551705482 13600596 142557062 517712285 536361116 201590122 456849491 146545406 547838136 371059201 379545454 746678992 909783460 178095875 238881234 58217828 612343714 7994257 558902841 797146153 918355010 853339253 643618694 855080056 699068666 887274800 836980817 742265393 168486960 465715267 702486306 616598771 774255797 955599310 748993175 738807783 361998507 189128409 814315182 45641291 867680899 347781327 112903599 724897033 954675434 62470748 592156644 714044101 259407149 720602343 304216464 445555542 955593732 174500231 504286430 579460444 569827689 220262917 345983172 674357450 986902264 67137950 522859289 229271044 901373991 78211663 897536731 904957360 195044503 241190131 566681887 379672109 878032821 321631583 408443118 566674186 166995682 195199722 377760193 460602026 983798262 869904842 302142593 970119491 760589882 867822284 990568243 606114926 794388644 549819292 777023889 647332723 574278409 184320411 314184398 626434970 90697849 867622224 333691357 162109631 841665910 788108476 140602934 88745574 455035571 508002801 373405194 967880701 50104675 144588012 684990131 58504069 818062133 598651954 626457003 542506213 233496243 509168346 17682270 698197570 929900761 413332481 73918999 91761650 240937401 750081889 253030874 355245849 308181745 752509517 258590797 58796614 725782664 173595910 349453324 193572278 298142767 574328159 424774584 927531989 858528399 894455900 246035627 460726898 228279702 997312829 536224277 61377040 53644779 451070921 336642479 6515040 700475673 431234708 107373399 5338122 552114212 634401922 901157336 812537965 431335237 821916093 729395694 496373060 898852347 60104691 397177167 834496598 217602812 574467460 447837729 242549895 483500263 528023945 607132914 229657923 383822568 422838933 158831586 70259732 273255696 815989507 32045826 313019231 56276240 343047049 450799155 489105669 537729850 866088234 775814057 659018469 804333317 329658600 414208030 152167382 638105835 360874788 132786210 37891303 15517455 614190252 883654585 95549916 740002818 866415470 954064714 47010426 524614418 715423129 69935405 443551796 223289550 478356202 572514488 125418465 397867805 685256463 834485524 171380337 611756034 277279604 621884204 584151632 671116128 322448743 676323350 171770533 728013753 389296801 422525753 456166861 31543993 299064542 703608244 563130862 129086400 452503124 426648760 750199418 88225204 293649764 160738046 879475829 902525345 221239085 698800237 26821294 339169370 485668924 382731719 679584007 95604266 66209654 345803160 998442624 241734310 703548449 783963101 178076890 708599614 659503883 430861737 416078616 323395376 143644477 976793975 439765202 386948506 677326673 284168797 395357506 882980721 310003483 826276157 813910603 588519908 828023400 779365896 919385771 377769544 788636250 823378080 627080514 255291855 410898478 410197508 121497725 64990456 786640230 376276515 27068896 381530795 407918949 748721299 807391537 123431116 475784838 554093241 162487984 22897392 563295052 615928146 551475615 996929922 646301587 499854060 222820832 778017949 145388332 141229669 700416312 956643489 282357210 482480763 743037030 825659585 574441147 353099270 310189717 607135699 362679285 894250833 479403400 809732672 353188847 536896561 572352322 459262805 155440079 518982529 32283210 942820517 396156075 362947029 360270455 311119277 856340996 723151553 574007895 172961303 166031301 639636051 870045733 781441741 836060603 838696190 171948043 725875811 624333315 689304525 876624074 985296226 609627517 654368289 266627593 835046 345290933 718871820 632233661 914140460 642822437 297658397 666501604 528323847 520613631 368763119 2904602 411091314 507787627 163832510 25490204 258277453 209980829 84482413 233151804 647262745 486253314 960358220 621332515 149369340 310218126 631349044 269319441 282532658 87937142 592827409 86791012 646058017 999523593 886748715 597409800 516689519 869312552 363886568 183591673 517132721 460827159 505692636 828645122 475439664 693788788 273973925 927508962 419840051 990848659 252528500 320223435 588514714 349005087 876364481 460245048 81297671 729996056 164179126 794466702 544713472 971438593 719258087 263286592 706401523 32217080 97818381 458052421 35384576 301605373 260782969 826733045 441025629 848621986 209676757 470232442 264369428 363152973 629126486 985224091 788905564 773468302 632042747 488436087 255251417 681642400 647038977 623104101 19572584 784835568 210809459 749204565 563378702 735596817 244038507 418679190 485107514 264786746 662567191 370789297 447892690 550745311 300661217 135495332 656728197 657101054 637191694 52811304 75571002 176938294 282496843 207870486 329818596 583309404 369505714 655645732 197254647 281928012 308207247 924279909 848363841 292923235 472760288 302199295 770916343 338288874 797679423 681496849 55558322 95939558 386401078 651583127 555576047 782065785 255479707 653902235 202061230 76069007 197413850 253548234 828630877 484966250 900598986 137863761 827125286 711721307 631391159 903367598 208836768 174475236 933935342 177271084 35254456 185958732 109473331 168195276 189430448 908904898 393872207 144849644 126879718 74642688 372081141 859449479 911380338 925142678 682157392 199212249 515815307 176700727 115885173 411571637 183883188 282550622 320334641 667436307 286899279 22785746 315724620 832471197 431802575 661810842 73378767 3024250 292065399 860495013 112313709 651660618 226593535 698968161 856887663 729780476 445680653 954833907 824102644 139801994 982066762 889876771 140621069 843400857 519152548 732190407 354851738 646008081 741453809 949927858 257278526 318328423 266432458 275275697 496642421 605909413 313121604 854225151 570910385 79194162 21194316 519513638 967169968 83804028 353595185 907893469 380813965 458121230 484768259 328848330 396331347 272705593 798965234 256599621 383474638 981781031 665963200 74205961 416191359 174711465 877248608 704249069 629708424 347573610 801646713 112234992 764178131 598193640 256368610 369098591 5461741 326581807 481297606 922037852 38164612 583188313 702033013 712165890 936575154 295877311 179138688 315764692 699575352 882817930 213038239 218454124 245834331 846315915 115364546 549988111 604836005 849031732 71818488 963167440 62253725 520430419 534679516 632639341 542696735 684029907 32623604 624476916 725425099 963357353 287264661 978733119 366649988 22202819 867898033 254308842 556964672 797350083 857576408 366921666 240749109 917879704 678394428 704874454 43155543 849991435 521184733 104671401 65199378 189706520 515230089 91920251 503625592 296228271 361188987 4695543 166728966 805517576 97791499 801610785 215809915 531189380 367339018 618293307 684440580 106621715 466937787 705337515 753701064 897748111 794178336 681917804 251808415 828319560 579448075 889952668 22045977 381906887 916779489 129283994 160394665 422867198 946826472 308330232 734092833 484600318 967913036 202488808 109759516 364081126 551683844 177508411 439957598 243384662 285334895 91141348 153339832 79180640 796078714 369499207 7049556 325363814 28230106 643881054 241440584 89199590 112338657 142980565 795236829 920259085 964496773 910943891 286923046 460610309 784661874 790617906 822181824 892627097 326416299 502068605 565823762 568584119 366051714 626596858 697822395 323559664 334029167 696069822 127864546 929924709 779144798 239976829 333379106 846059498 133134294 257450276 714842071 543180646 487913542 867762317 934218832 4705730 67324614 600968956 557239328 331112858 558995085 655101631 664008749 678278917 996277891 49680770 106714738 567083118 651375917 405103154 782011372 202102817 111951856 999840623 115622909 670009999 948641581 745890735 273846199 113962894 687192654 524414548 163719687 782047921 251075603 83725371 445889412 716126933 793047441 543190898 310742423 498297439 394836569 543973757 207284221 512808989 458556568 153390540 832579586 366709637 904245850 749261389 986294298 641036100 816667867 863000066 458217388 491882006 655944572 931385919 183647572 502103722 182358932 843924904 499437865 43512023 488618925 789673851 987747595 493346700 755336194 686521927 404635780 183856322 991477784 778897653 893400276 724358869 282731657 396308967 453548956 564198955 904905070 627702709 585439300 886320945 439876392 823956803 932247299 199920573 839051041 344454114 158885130 749285582 630786768 550356578 836090205 571410354 194754243 180068793 891732247 35620495 389305839 595075751 171159836 608726583 198839506 802182642 617341993 240667034 840398950 89450897 635520371 322148153 954001742 352733988 776517916 701785408 560133805 502314047 814433323 772625098 232307057 177643924 109799075 424070333 348332017 461160907 180017428 747402769 715565610 187744740 53443788 358074226 388361883 563287492 764313390 388629210 711503203 117276690 104931379 598022135 32059033 2266970 482615817 948025526 558239785 50392704 62837520 152561228 235171263 428277216 605308441 501716761 877005708 806804374 459140496 991268088 394533097 918408959 461211889 106977000 439816067 13542685 746408873 77852147 5274290 718239574 511739791 204157896 872738272 203514444 7898526 899566520 258924779 726243780 907030476 266418108 793103876 65897357 406689108 16494590 196656786 441524475 182017363 773951908 362854956 643456873 200135727 799332777 778538054 342951042 376546191 195875883 74976462 702065097 156773233 545385898 596946239 475081496 367482621 173125986 134103787 180606502 849100840 479733492 831554951 957729874 333816573 890032874 652346693 68801288 259252877 925482312 554063759 977465164 45781959 402605194 758752972 855480743 909555147 692816797 347522771 398423526 993040433 158594447 766716997 656880329 246036934 469437972 733654210 635464638 626082133 883165737 170929058 608151614 899378601 694800596 935030593 146973972 24085860 819414370 828221045 929034862 643431883 130107559 132532183 29389893 25043678 35479240 182397150 898519466 451782672 455519252 280241655 648624867 32126768 496199512 156282775 204441858 982749166 435625536 706977912 208501693 916555222 313131110 25309426 34882927 89589139 644969564 636272131 601431244 847842109 584150700 182456370 160816188 610646332 352296477 454781286 251842206 368246233 238244102 12520562 638167055 704135015 706496938 374473162 134522805 53095993 696929320 468763985 454900344 397786013 812068050 185042382 887420629 6322372 101230545 282093114 329474242 909693547 793553278 722741428 341239884 926324218 941187087 892271400 854381436 109618527 964042888 88404246 230708170 864650877 401971558 716006628 263110378 267777861 210151568 365942945 109849476 69856941 164534253 373735298 849222096 738576383 279187545 51517305 243809036 730817162 122371108 173227190 565151634 656393922 124206565 662146274 317185754 790265479 208279196 234913938 978898811 50316060 121508893 851320613 287943878 285430823 928953996 3423918 980519226 217804508 470138091 726850832 23878427 269984173 936654145 593204383 660386746 591233442 347486341 147770173 246178538 249283952 878069433 17126360 971517275 889241793 740181239 896218229 838373902 202065414 831528396 848586387 747847456 920484212 18154973 628689302 544446769 243535660 816918391 709930499 583059452 632504431 197542060 223243378 56855238 6213430 625001050 816354934 303989521 662045582 827936326 298094622 766196921 735269854 28905030 182984413 454271288 382092445 103888945 7289373 9128311 805948127 789353742 406851481 406538761 514191654 638314812 61707565 670090665 32934360 243015863 174024477 390202343 760508666 287510134 357649841 153662446 38401744 401598152 100495306 626993066 618547294 73412837 571116535 977341598 861838440 721183864 412178451 246651863 967890406 931661414 878105202 620259053 829148193 387841915 29123276 499284321 857423264 645432887 709232697 135261761 993960166 425685195 925781139 884971551 604338829 248572224 757724309 430732904 434715520 360348779 799340378 741001389 362432636 839523025 910394338 478769336 287495367 664394046 594026027 201059868 866623279 850675665 630576668 355605584 767925404 62362277 119612567 632718963 98861154 471509057 745286550 713561169 299111696 620965362 759711665 429867552 510683382 153681009 242924535 981015334 966369391 213025865 776297269 568459426 335678824 597010775 651221251 567422777 203176056 968185539 348179390 819777138 138847997 404492619 881560166 835904634 246596021 165175725 314752061 788566012 121735528 553572216 517880172 330904510 738846937 470838908 52913945 851227544 60245414 267615827 543477685 491563615 3102358 165650348 220008109 742833041 498869073 538335097 396402595 637060736 541872877 110932015 95657158 867270857 444367957 661047159 249339942 431417351 980215465 391452527 363885260 990190398 380118856 145162561 305515603 293895703 942878257 367090581 456095352 679891342 469407065 280187561 279202870 807507023 756558002 184637667 866360358 839714729 161963323 97207150 931410605 570297905 211721049 522717622 165866160 290619771 308336461 715200930 526404273 126005136 795685252 883729259 981655975 705991024 138037568 869091983 386547537 329725494 159028213 884651214 871804486 911726578 653076125 564187221 38200747 781438601 685184239 450290954 720811767 55381120 919214774 838648164 292098389 156347656 524227310 775828404 738401169 267222782 879537248 338697088 479016496 900226835 128660966 167491408 963385088 706894456 617008735 36487314 748256739 24623158 683749104 569635657 186579919 888670346 302153111 136609113 35861608 784887274 843820669 563388300 931496325 476505966 416971359 401792007 543749762 169137010 842262453 135624784 487367268 423299849 325396658 540152688 723096167 199526190 188595583 310501217 871048208 959057677 504372795 919080710 33648178 369708327 585303096 489943491 295754456 81306283 15280777 191316540 772482450 964180264 423387095 920483682 383862659 56901311 208245156 386157454 496704670 781907837 467911752 269750205 995747567 265797520 412847630 263057243 332577738 827662147 311286092 530580278 20514434 534822066 845990544 237321968 945356964 750902507 735928938 365477382 159497403 949233012 93605000 94033363 905040469 499726752 493597807 347254289 826156785 549099662 648839208 306219558 491589225 567870147 637170120 731785521 111947941 979229796 365503332 358376257 30824468 100262359 435268497 151360509 723095779 427089789 790395250 318601624 699275607 653745872 279366133 950314478 119424889 857141084 43651684 695418249 529764630 332651804 580083780 671148304 654617020 69238100 429112480 429018060 206823244 9744508 587743593 305068116 910616424 842421158 520612728 676370506 997651410 31425896 376129331 504067334 454811036 876034521 826754824 25416160 448729753 19580217 179771072 227709383 517520162 202988680 501811663 134815982 221615694 209720829 365251502 830950562 954888754 541075142 984446463 979906393 184662135 481793671 215324544 611509083 758425970 180520090 841707422 492848578 358785770 225598400 283010503 873450637 54545461 282495796 563773969 808625394 503885671 214029794 570266553 442362633 593626439 875245056 629878115 120443706 725184809 836211050 676698776 908575956 186085839 389925972 270647791 700457661 606804246 272235855 454774321 716683293 133381284 766471854 637306576 324547777 685348421 706832163 403139786 535915811 507138378 696460038 165590682 935340974 767776470 542582802 626739168 578651627 937405369 96643332 651347379 231077810 985936651 184319162 533508821 960072147 112657326 683795254 354491533 462350991 852582755 182210708 938046419 431989728 712922970 53847298 115926235 209076386 773369423 805250321 17030104 315137625 408424925 684188342 763867449 746801003 780125587 747160929 34489702 643136693 621050746 351734286 41572902 45116998 294732020 541308136 603832368 938825337 424192574 172381779 63008993 60925509 424899628 131500669 935196453 215482060 106634846 353753392 83148516 266106876 166170089 794787908 994030072 217335456 382190605 983908775 61329669 57813691 980600197 709359329 986123337 872829432 799910480 452173170 894443961 660738780 419236452 647350054 526949182 742378114 406301424 259722468 20957462 503256031 404487590 604764895 473259043 587578607 957300720 760461813 877421275 383268530 433192919 767955605 316597740 35435700 55825571 635244477 806859486 259173236 513459921 988685479 938727596 179039037 376461443 466625334 571358365 387050268 218047126 215427848 637261975 636232696 934998756 37094339 864324458 604837349 157226718 847631601 223967095 648826814 467093069 326070503 295757818 150333362 679456445 595107655 356443072 214621517 582367808 199838749 291357818 650925891 852305315 573956900 350005143 155463329 462046534 760742631 478822457 895068358 605420128 291227255 14140449 581049051 659306868 90264031 4204365 940766854 496269669 707808052 214312058 742529871 670054420 443129504 941399989 941052156 215639555 20751057 154613593 580621933 154171793 780873450 416502900 799928848 831614787 401093354 262129181 421425329 453698210 257723950 419244910 918522949 85954937 563264215 950434582 429692062 966706168 981601210 55469465 17337483 17066009 624198316 374844473 605886783 393640257 406428963 108479069 40724644 446425742 445926737 556267418 29767156 454177608 971254323 862766713 454220870 745895979 955958977 757267058 6411419 201314614 63327668 938621106 308073907 470772515 971196084 985806237 406352457 482143610 418832097 905299887 532049084 325013597 850748346 660737064 289543803 829577300 794809968 990100435 638234690 365171973 402896204 981121297 800769139 474566781 978841638 989153424 49345727 995381955 706106923 318517679 322492344 808364250 953016565 480939429 578772331 850083043 90604598 29472017 210656813 589658416 660704393 810096188 313540669 932785947 785779091 745540099 19503634 845190681 234211482 363776039 946084567 424052269 754731270 958724930 591660037 834986891 568338990 49467202 645986166 670214309 86467016 764158606 880480382 325901280 907916204 607338636 379376021 93053460 74437098 979838411 696472323 240723852 214756345 644466969 740637205 662320987 21090170 560645539 771826586 541772092 994771840 958646155 320198834 69558320 541542850 695089062 119086672 822991539 569145030 463131737 641512379 949614967 308984604 263902791 856970126 304003445 654858264 843540169 689918827 419871415 541054528 449377253 451940285 603691730 89070583 261515212 190733350 768781225 39349264 401752847 776296478 436198069 762100018 305715989 630623184 742178931 893115751 241855425 788967046 648471436 517416082 486928151 553918532 31538632 938289105 154108979 69377964 103610249 887599611 216210861 894489394 908451753 24161615 307635137 954838182 66494038 214989051 200193451 521304756 981226252 48377554 759615429 520822286 669928237 180713837 183517305 876125358 794656305 564321657 501304214 306314283 635583827 969368565 807002007 342401493 406024266 338628111 170190378 995578455 168318789 887318024 309457195 961736358 503186535 766488194 211347990 833570691 976088235 806579521 702467802 770056986 658088655 543476193 841597117 766073698 942952646 268112787 417657993 580365641 281625701 387851205 829704736 889688778 314237060 989445532 119831527 246762996 750250153 664404220 603742322 275170532 670376334 636115134 815754389 273254285 750800937 312027477 925515820 963497454 558317048 537159331 999252098 108305189 479380137 550082433 946384612 351706429 907219675 3771742 922651757 265938867 173893276 122686908 974074351 551416564 764665834 417898117 452378619 305726000 993729641 919798566 461621565 591400478 632759871 323595636 465801679 336207741 121990487 706888368 122270348 927068001 236883646 938938214 717983081 394770096 777511614 746750987 432303610 832869732 762340102 160119546 344130277 331978589 791347761 895388649 792770847 97937631 140494491 226569324 895717867 978944536 367001652 509696084 168993781 307849997 694817107 238661032 793951046 314233442 263255133 994951823 102571139 872853342 882485407 424461135 112905890 544974181 292417827 858839192 305429272 873417027 940858834 704622755 178603328 557626200 484257311 949819294 543052619 119503026 501869605 331539813 215607628 601002649 320782900 797882702 670191232 931911494 442070601 359872001 769575606 686160815 633682485 611103668 483334979 416741612 861141751 705629955 565513407 730789371 383050601 969079892 758241057 194709867 642469383 890711322 290985414 176299752 899883039 583539118 651862070 893082883 982035721 982274335 37179107 590981499 820262428 633760184 106708651 991595516 506829200 987997916 320486331 489004482 323591486 926754805 569010721 131878131 612190967 218394363 3016773 655929968 446720390 895735270 806574938 913092937 272191963 349402733 405027981 344940840 432475122 898987639 587543737 124692266 712768457 471561759 352368524 125940658 548577354 180396226 718642012 267975647 272594507 790779840 598542694 594008155 518983938 806459161 698886106 402574621 539755162 195102363 258358724 810917874 365949704 214094683 726087552 981377217 270979013 746162648 52872178 592505218 775262532 484050089 216928778 569580460 529534145 986595280 73810980 46278378 909653927 356518796 127483186 862366268 99969801 207326496 523935511 403633470 88825968 159302185 545162786 325030096 629904409 464887811 95284065 993279044 224715828 682039619 436885762 972368177 617859518 576427034 704568991 847707407 154797053 849614050 661274873 992713447 855529809 303733317 877175691 854152554 784727270 808876456 208192282 778517173 239931472 383017664 945227006 284743429 109205011 239981056 768823440 520335007 111061605 628335230 180531437 817115309 82154442 118498107 158361219 714920591 470598175 147981295 50896434 515720169 599356929 711162600 357756913 99130201 114050588 508144172 412207444 67247834 427113545 977273375 716412368 692057523 999153719 832666752 417266552 783237593 985288527 537814060 71421988 60864006 994307258 96103451 137073529 926264985 629578257 827696413 746838401 6668922 431098716 462273281 567643080 283960606 790638792 844966231 309440732 798603780 162965597 240812844 254054711 783734637 249236881 186111687 323304717 252949967 134630284 521572634 392795413 632708044 593937096 915620771 602295623 172226949 393497502 63423322 272332091 902946589 758658939 656168052 60965575 182131929 445498089 127742105 634872609 604409684 479358893 959798028 799128719 741306255 373493308 584150490 991092478 371633961 829708044 125484082 852241705 354909351 219985244 615034445 784973921 800862443 267960533 698585580 20504210 709493656 691354599 956637306 67011850 120229311 954512274 599885278 27171184 447091881 16577662 832341145 411972691 249881303 134239990 810551246 90754254 786438254 525922320 592269111 723270878 935130143 874165027 843970703 532003839 139728186 713636514 65047366 87231915 228577722 242577182 976905836 580523875 308783479 851042926 847822889 472393443 409039109 485167443 483486385 522717466 830791039 624457231 402316386 415117083 846027310 927239881 141282685 117092682 985078763 938399688 184369928 415786428 372575837 215630785 400691597 403733138 39067447 778284603 698407986 637890298 998751145 466296417 323524391 488447714 243670548 967974462 585914252 167875437 559620939 190045900 889894634 550022311 652902214 943009888 222791316 294632719 637177049 339324574 36073662 923720240 849471616 4135995 580593730 483572511 161636310 468706639 832669235 599286938 633470270 409852088 842069608 27057929 358043432 85508526 762570558 461668832 278700762 409031610 623644899 762803529 83710713 927646764 866332846 534713257 445713554 686411873 948232643 812977701 353538943 999459260 133134122 479905920 907429904 637300947 780527360 820153230 493112128 836713606 274436858 556925332 623741788 690578542 315568475 684831622 840376979 782268762 201252188 271103747 844805986 974390619 748575451 221217292 103063068 170862077 374509951 946297054 791375872 848896087 303653664 480904748 698355333 851938341 600334233 972190933 21027607 692064661 572824255 627688765 567094484 980948890 757360606 25202483 430855452 909485418 696201185 967691704 191856853 228945417 866311058 146785241 22202002 631273879 409221476 419810324 693960951 437082242 57297728 306985124 187267788 251291795 621198339 993177541 366831491 139468111 229803557 545356908 226135572 530770274 280507958 891526212 898664266 260095737 258721924 513323897 788532815 528429352 482100925 161117689 584099944 942443816 83861579 288136566 941323459 139633773 872574247 591733977 10698426 598354033 443604166 286555213 980925272 27719538 498663971 388959927 429522891 591890031 255532112 65366643 981576777 727301141 13330305 23240609 749675601 53744414 447813834 377837841 57498128 904086096 344478726 715842915 805605935 35303688 702888229 344625104 691343011 512251482 415175598 385897881 108719578 421493770 587622790 257944157 431143407 973751336 227601123 83803442 521227771 662455531 742039766 650749146 324287570 102333323 670053890 983952361 764767755 814794995 895441334 851716796 685952801 376373849 937557679 842085438 625172459 916300376 57171500 99990353 316452565 798911288 853052035 649974411 178297070 201298788 376146098 88048788 985649710 942300007 113433293 314970925 464237801 407723397 752612725 316127245 987343597 662667266 360817291 76671322 574884487 775849934 581009815 284429707 53711978 633184739 684250663 445720939 994269930 678718626 768221051 899148366 526557868 880756745 264215637 941151288 355365396 902742804 976533936 638345846 707398520 500518064 599801517 365920186 593668864 754224128 369371668 332524068 862673144 136464082 853959656 617503624 380359736 140535819 247543566 135339283 225708500 400652723 352390609 401955550 412797870 530049325 212916429 85737013 755176036 241371106 718980261 398878346 134866626 573557020 695083077 551758996 808370932 271211466 710749731 356255291 391087181 990367364 805914270 36025374 865539189 310280482 910854451 156241592 973814561 232840622 668122116 222062501 221139144 523538961 220069130 216770719 169264854 78848663 56488398 681963174 982566956 571847731 908164975 762869871 761724725 266514243 784124478 963881528 452368590 249363015 445469378 228720715 520336860 956781107 560018141 296307768 307817977 665596689 575490642 743681015 324287270 693035530 658539064 873373939 595764097 179782323 943978754 600513000 777017696 637157884 892952834 644607175 731390757 712272094 448467247 151824385 549559341 485915751 253448781 627638155 845623099 799121050 164953914 262703665 41345745 252485739 894949680 11392966 508590037 231595131 161315624 678210687 298835862 105642630 366189600 49818056 962511103 158629635 719446982 547694238 907225240 564886238 143702921 469905583 661009041 69582687 743170055 68414027 581343945 269860281 10533701 515973110 500676116 103091775 900987923 290716096 190245958 799418912 357860737 557650539 468339572 414522750 78775181 337698805 654841307 901981886 981321332 926113802 241626173 744424792 291351861 426715632 270947420 574127965 509165507 367321265 662889085 555249763 433946739 363087821 864359275 634742101 56444312 464998638 768567475 968997624 693485640 166970042 747466874 221556904 417700863 427119115 558943338 249363610 757960116 120085593 136991837 643558669 91209117 854421479 495439102 43031007 946005177 450683864 956216860 421375589 629421570 281993364 695875652 870426914 134423328 299550339 410733759 213423241 378734772 394761853 436839067 830526769 771822235 866573359 840016016 724298317 336098182 560499182 220704706 987876406 607351682 559393822 138617034 513755872 112274634 414676346 144032610 121250993 141013307 274618260 429428853 653929202 289048778 868582583 113948723 314642056 120526684 731036217 846764901 464414850 694914081 894484327 558142976 269021915 859103271 847875005 77356721 129149475 637889438 108221030 333649041 73849196 24968623 916095666 655484295 377803266 572289418 836823648 687010591 917919149 227031805 289817011 301960425 251291309 582401688 626272616 577732554 543922711 892126208 383922946 622030179 792640648 581732360 893981857 234525909 206785604 983938645 252663737 811700300 563850062 356673431 645455786 909945338 234581719 432060294 690477090 412085426 715934382 477387260 438138822 512190679 151695797 783452883 354084076 511387657 903919810 75340583 884738731 568205588 993501765 816464056 822972744 621672838 528170668 197463479 149061185 43661381 578094694 244204619 701453338 955755073 356671504 410308294 622174811 139021831 155484460 54495197 797470913 665952866 963606333 797608863 588939676 112965240 431104349 789135915 205014255 136154065 898884342 226911320 522774493 849768778 541041501 144493405 836331592 38308867 877074675 456114805 342005786 317868561 64854146 505238179 443053405 987923870 347143433 190438564 120309398 833604535 277692428 753178461 847202556 793626061 993756971 620423916 422383794 11206897 399270152 724844088 879969722 69843983 679753080 20972797 668003044 56834258 601421038 224595535 483457496 652780426 850437931 812647234 252667262 975221452 900212323 161514238 807538960 308730961 749964981 406777356 813763042 696432784 629152043 911838761 502028368 31560930 281222968 708127894 219416300 177068209 257938840 13401637 533732311 993982866 493389616 679626182 213909780 489280602 989571320 141990867 556635820 331736265 192688323 753456721 762139584 360780359 763640905 130690816 451244726 913852972 591727433 263265195 903433327 489259036 460622362 915792990 912378189 79977503 293174229 579389036 685784496 871307365 76843356 656307821 646960475 93049366 711105095 381159234 689104490 408308881 628245784 427675516 796660016 568217862 296680584 696822143 930661542 810018847 345017303 751723664 85822562 608409544 738186337 478471555 100956652 78341163 471540619 881848492 132836989 666244713 943108814 809808498 208598935 899455823 321258147 592430384 991514713 482805906 93758182 669240172 986614583 155766289 11951063 108990013 277673918 36002824 802933269 365526286 300337302 807455338 235437535 390577844 808202025 83840094 116351300 771355519 881807448 500694945 777459861 264155293 114223033 104915555 821471255 884286191 620094964 839319231 34415711 419973326 68705199 359854484 814032898 1691982 112485340 896817697 52124293 717696006 448427971 929041217 987741051 136522007 674386483 784608524 331892785 455839353 168330421 868808723 323272811 240227819 350543547 452623547 168352180 653400371 781592868 503583222 67906061 686075962 746287959 132461397 262115515 989667058 254919237 798893542 535703388 344879187 592238542 694230523 599431546 972675425 228151057 301159403 85469820 595845470 915404303 480031542 555360426 958699206 747800111 803689736 79972555 294700493 559982572 414384485 956561672 234671328 723738985 14690525 116525602 183623447 475164701 812681648 59720673 281803787 837396775 194370711 646867917 634828607 922957206 292947851 145182454 177970537 485851730 961234442 773374582 114019221 622499324 954608234 295024661 63677963 654530399 373261341 810271437 283491060 467755565 893193379 941713813 398599244 313598694 780481270 311672781 998092664 234970562 560519400 640080622 383023706 905495129 285972619 920445372 437814589 453354673 245425742 160811211 413518561 513703258 340971715 188364263 856899895 59946401 813632474 972683474 78772292 635728394 90676096 358153054 629560964 782503171 796555397 940773080 521388672 108342263 657176472 489687067 110394254 799879727 881597828 581411986 77572680 849509802 955302046 860033555 398984535 613393848 427233217 486547399 732470457 58990360 115243351 625306495 288947783 228796729 745995623 265123478 198638553 906815120 777726707 840383544 41047014 759286750 154571382 665370216 633697640 600480979 358847452 590338976 964397644 925805287 434781990 908459458 548048759 861572396 254321252 305355527 34404139 495149778 853946362 844917680 6069066 751920010 438982728 644921310 253464894 156315863 909590320 197337362 403722806 161338009 516558555 739292588 498874945 962764675 356903468 783703117 230875098 769124849 54785055 172478314 329457016 46854105 248494413 90719765 742328519 345200218 344932297 474680031 484207773 669268402 726047755 558673307 247024127 441128410 304306090 224648373 146756142 704276725 492220618 865808178 446136687 68596777 336301401 278114714 15057581 1687818 988582515 468376905 192694893 166268748 690470366 268398443 505595266 31020991 837276639 611040957 427639106 355665186 608448624 188948946 232320044 251811263 870326036 982781635 185238673 517920827 702967536 931392774 832528919 68736216 790054246 212176284 655932558 226933441 319214042 500964968 983473681 404035147 645366911 55271338 94412789 969892328 810170067 708235817 177808991 533079013 387336230 126954252 184283820 281888374 469083392 60743715 688016416 917522887 17558456 419105632 784200214 955072590 534229599 742743377 889340704 243818497 672590916 409163512 393595730 887279960 595629596 736513583 551704471 586135355 309458528 552884665 916460093 388548955 271613877 255823782 37932478 782535977 728199298 804851777 346683627 853019999 218178634 39501488 732410808 875084280 739661332 547455479 11360104 905991624 437926607 909697914 164503006 79049190 571573562 457089562 996233436 573124866 571114285 887924652 836189335 621416037 242178624 189175665 146043683 499867954 888041003 18790086 781529395 346216612 499097510 472781736 210774632 966202585 887399120 520132461 407206912 270398262 568034352 587635979 927550226 135624279 294870214 203230318 909533595 163909722 890130136 230220920 937233311 510272132 261092296 635510002 990876725 217744251 273293020 425089547 943225741 228223654 469313586 667959251 850077066 907412396 779922943 134818143 42026833 840093285 714231387 192361625 672667427 738033164 488933400 30162191 563932185 422754808 808608413 73042507 211073321 684529736 763662255 213298194 351531811 614999662 739014030 943359416 13971316 904230693 816652222 545544839 815065778 118800330 432483640 21829183 120349171 490471293 874046148 36857551 67787706 64220448 495562431 695578702 934774347 682563819 678671549 473545919 973684822 956285490 978659493 205536307 462965869 501956897 823505585 73454919 174058012 801657673 626909193 273041817 343996373 899634315 200030771 433901555 678760476 860536080 166648314 502690146 478744799 169973057 446500719 329478484 161207519 422535616 417064237 629565587 37879471 838457286 15170510 358586014 747653662 708735545 582576722 550909105 324945357 40130313 663029582 144777811 280858058 734491178 102871595 407307174 764319903 420814323 674251280 25837619 49041417 44228577 352820579 440729131 424573913 720399100 766852941 828958209 330489599 239514379 804406000 918911395 992055994 117655223 664756791 906767205 444687903 779861074 187150154 612890783 790016442 127282709 957715184 554879751 862743748 747654510 438703027 511515283 625954861 686036286 836714591 504330622 143873165 747064187 976685783 850004242 995731992 976184744 570541549 917868832 366515571 123970849 705593236 481498020 34839488 460612868 733040463 418755577 519879827 717296360 773222475 409242825 812281631 266119018 291995226 387783766 927337138 855179315 160376275 861164723 975684775 965211937 222417668 949773259 426940975 90763637 671718637 747909548 544085798 125739116 121410863 216627219 548416008 730182776 59334599 393061818 55054441 145884839 837757339 50733760 973279554 938115310 255774321 416060246 863223192 774613528 480235841 291428291 391861391 658085393 248562232 922148143 70305862 977946634 65204955 889902465 427277400 212927308 982090209 350423415 974553532 265506335 299322300 898710004 672573213 136857431 318312705 930444084 257279232 964519676 293756394 920974690 61360756 548678704 858729027 937373316 164292549 558877504 93211213 400068654 343927668 670084463 224055818 514608976 181586640 861972897 728381406 923634917 680061883 590885351 842805625 196929571 923275430 275977597 77917534 448285800 540325918 944545279 857090383 894239423 621181924 270257029 287838240 687613489 392751127 112720838 151861924 568257987 89618199 787488245 376655771 863225265 696119025 55420326 926487020 468821643 385618729 768620338 334301251 45057062 854255576 141752697 63736304 948817314 828540036 501923937 316863208 391853064 864161199 996441290 75934578 744153335 569261633 831981644 380018270 87289730 714168599 800663911 327919678 785967720 141637974 705869222 245532476 913837384 447573694 706350947 787453566 796852403 471020874 105535601 835826304 295714711 218666298 113172930 196824649 105529453 662346221 279929939 642861906 815275766 157960300 308514943 739914630 198662586 883928512 201361426 742012872 187167315 842525892 725351756 191614034 978832318 604151764 322164560 653342677 441786404 31947261 488580433 132450876 415823962 349582401 583326426 543085999 94796038 724027112 760732477 563779164 846930946 354858866 325868590 304997236 471261280 342394480 56464536 554512081 406234307 713438385 340848899 594488490 414184084 612508455 42160273 222176324 500391778 42467996 612096986 304536218 126154847 263700217 189902668 912878861 803923113 150886132 447905912 386844486 262348357 630380032 452947018 251013957 799027077 631264848 846926267 360508380 809342399 195201802 998849022 69903714 496410138 295555880 234171927 965083718 2022684 420224266 629578805 3425244 793581114 966004977 53526372 535016705 565204440 484439411 930478771 800794032 834611265 427287927 39796644 62759580 237910187 207202812 116349079 867728393 476960396 978270326 819021128 477251227 780244838 991742262 358749696 757440951 443471326 877861048 423961624 645928918 224831364 911392230 939428425 189238202 434526762 323725828 439205776 32150453 778892468 950683692 482401684 183563542 281202541 515274108 223184915 995721555 439854876 648200114 105402454 983544680 143621640 116053115 526160712 469792721 525219364 645098014 266534396 867001896 162884335 958467489 954831349 4778996 285922220 128660328 673488500 355539999 735199799 300949378 978445080 338500014 23775230 290328223 848570988 823351445 533071168 366747673 571330653 748764190 820531496 234263798 867486118 132907419 285945515 947856883 808747220 9182136 260307184 476381348 745036567 143386346 531365743 945465425 584405493 80208586 746398068 768218183 715706136 27625143 892962009 441290593 122095730 140808121 723441695 354775146 285087974 456096053 546668709 230473097 716285616 168159933 502720480 317327458 315768115 319954129 647635671 465008026 890017229 623762460 45324983 345455260 254269194 415655749 301174806 697868820 960437291 136388534 803417017 764752669 882212777 337191084 210884113 508700073 895957569 707061155 291512064 879376471 645112162 340457482 744889032 711811224 8065272 361436833 781979665 642404393 28663110 757778862 416413798 136097652 82908565 478953743 839115615 201417308 651876903 723449768 242579152 869643964 345080447 784048923 246890576 107521231 832802250 287074437 301311114 248394253 706527538 691023753 936840859 116614138 642498808 112407691 43034187 867591722 154991516 641561020 271520939 501034924 159901446 383544088 81245553 575092224 908071266 383804328 241164660 64758310 346295362 64243920 185844723 463408185 947635669 972915846 41984023 745235223 861682147 486173378 888243695 742790667 100675185 695425687 98401852 884301248 490343334 997938569 496255179 300998599 890278629 526968039 356639469 7574724 336551734 780782944 990035343 951388078 410085304 984870330 908382989 666128204 760279603 460419279 26198243 103743845 311930228 515602207 817561641 578181810 753072155 274310120 14076096 881808464 409737014 633355920 781483875 276865992 477898361 24857965 554388477 964354294 992216431 908360669 523268710 150120319 915753104 982916250 848697475 587890183 135455175 782976453 95620852 278158174 726182695 795339510 13126827 959950352 633748721 856842088 520500471 838174638 426522007 676361680 621449288 84515784 92367707 64741783 612552102 785374293 178963880 725552392 518153329 586358493 858450496 999198824 989182845 304517367 296759693 801292259 256260936 452236863 116760919 482285758 921734632 507362489 232948114 71414551 501457885 566370840 624070878 400833805 786837250 552480902 363362467 510343104 13490655 846679147 74675914 348066046 771200730 273039460 5289215 852502075 181890758 141906038 882070624 315256631 521079341 601188014 806518942 33619007 845220538 549896699 38087209 775741166 348013176 913963596 666408503 74762361 952900350 882604028 972149253 46523753 531209866 558827869 676175199 724705901 457845861 3461882 195642818 996805476 952736430 193437129 769811033 381337195 283272734 58186065 679439336 144132135 667693782 9954961 400061847 404933451 585730712 923036028 269648406 251557309 623447858 188290485 637464560 959804592 783615637 822694918 193369479 979485205 526596196 798533015 307142479 356767692 35064590 191989440 485902136 412074603 978734281 890757318 220030652 898825686 512137642 52285762 671540643 991311947 209946739 995803810 197217336 26424892 930301511 757800081 499191999 495353333 397724283 845371621 65649318 640289248 921202826 99352849 108985679 82492342 462408895 924838016 397665303 685150835 304608208 984682123 260547014 134883362 68308741 461894798 161600590 949303618 299978006 606806306 591119848 742897084 157154370 972915591 397320430 280001030 257496482 306363353 425173093 748182156 598482604 306196500 694591069 687258307 647312078 485732071 366347792 792618346 596227656 541545168 328540663 201717135 927536723 874103529 677644568 28935814 120195445 615421970 885759178 113446522 429140818 792231280 422939139 211255481 296433284 606277271 476619751 945097229 132679947 818214984 774459158 382021816 164587869 163624562 549804417 4937034 174404076 766154708 138611081 992082648 206661973 416859686 625336785 195705369 454590808 744399078 471003505 848149909 557719744 201082704 64441919 337988019 856510744 385217704 54154085 697457447 193768633 432371567 517250898 538657135 834817693 952622419 512486843 415738318 682544591 72678798 97868654 821969833 388507663 504489598 313598205 546182050 479480308 725514573 421181788 272045317 395696620 319193989 636682740 969995735 889455862 950190020 614382524 9409348 792445859 455170922 215240244 305253010 149774426 285382549 96039316 916941035 157647383 458206913 705865067 179732308 997255934 802667182 903540289 113955485 573418514 846167487 696132948 295302375 43173279 662019032 464890714 583415483 890181772 292701277 688936852 196717896 511031126 647448403 395206183 909863390 833922792 843279328 482465163 415367225 398555700 2586308 380070835 814180766 981400116 904688277 417452210 172887858 733737270 10302808 717888070 351072453 634616235 75362397 716497039 889982986 352109653 188126923 379944234 26224621 673201857 957546095 383532826 731106951 480880843 112334494 97363166 559986094 547379171 358952666 959268575 951461559 383790141 389743955 958041891 767197501 541770939 118941098 92741536 774159747 133666568 256539744 223600765 231762345 358528063 932551902 693108954 121899466 89069516 256692580 616663629 753468036 106825673 147755702 190849407 750339773 842912323 215180642 514994768 83474780 640433219 119263699 238140239 243044525 264488561 423637887 216976669 564135928 875128695 398345860 844775050 772300975 775156859 254964921 679247562 852412682 27561998 118458014 703822662 96584512 132265661 240385314 664820549 269908923 171287003 730678334 20225847 618380839 424765608 288539650 797918625 363216025 177043752 924551083 55274877 63302408 451475777 694149110 60659897 925525486 871161309 644379723 674828479 669101557 209112452 859694320 146313014 516239176 60752118 259113728 15392397 185841582 213361110 118201810 163668598 995955408 203862657 402491195 300399948 802775347 738478758 577806209 696877833 11829614 923503538 215935405 125952382 286020107 596432824 351778676 648562285 866400180 769545196 280518066 682247313 628726859 125229056 845425780 299237479 7708587 445011373 102448419 896489072 701727980 338893335 580941691 550724069 151670560 250472796 726046450 204128481 889615745 817215922 893349696 814221478 32247311 207511443 269779266 674090189 125875687 727911696 324497594 633189012 529831804 689560301 655825667 811863624 422316209 646392901 645319093 367796484 126382902 918975835 590029161 577859310 760987029 323491700 479053309 798790209 591710726 390646330 118195027 264359405 555989927 347371474 645307440 116259893 590773796 622775823 575069530 312263353 788992044 841514143 169192450 962788859 771736903 206381622 732326251 588391195 656154483 267120071 83425378 315928765 728603360 264199350 554827784 844114148 206333761 757845750 233347089 55569213 483783688 473514152 848963361 9596522 529505146 62833874 176629630 666057844 983803338 885992856 356150893 820764411 253722725 702689978 867396582 145238141 454471832 690027206 299908006 769179571 935982250 97057443 615653119 630999141 650041089 148283180 475218299 668615735 75978307 332115966 847239496 42885462 978576129 2973317 273236901 74909013 487247090 27282580 533360794 235952468 1763894 720476177 559907312 28463987 560389841 572496548 866927069 973591595 321448469 657235628 178791839 728023132 894893895 379587121 499546063 666569069 414861567 489983580 418818577 411641838 381184481 995878037 256246585 622662393 408546159 900679009 621146157 785861732 253062933 909444843 33155442 216715523 120404701 269942706 721568755 972696972 197666926 319233086 504217525 352659497 135108589 652333471 855763691 65256701 834815720 748158939 524717245 382712918 464421685 936399065 159430362 479695693 493785672 276816134 594872556 741803027 425569195 552375790 179386959 540157007 462064055 761945247 928419655 577514257 697389367 421450206 412119448 675623701 864690688 899788456 354691386 543035772 996436588 591571854 360669375 528194251 883613086 983325707 563452591 849890119 474600114 373876146 321090712 443021638 103845493 6932397 132463799 132488170 881119766 705322146 697978136 929061946 902413640 334245822 28047264 486465561 72929900 934250367 947380174 57518651 925656853 5711735 280796002 987325308 658905239 401392153 843092156 312591786 846960449 459411699 187633307 281732605 543773179 537782376 930845553 700121515 659906228 639149784 247500047 267437687 695648621 971448916 405496405 869191835 12343079 75525124 462110908 957845959 410043921 481656226 28800897 612870726 852758122 730057131 172607078 609061302 728070023 955530135 68942110 419187238 845392738 397507302 322496056 966053228 801639830 379636010 547213886 590316695 411407613 534973724 172564447 525605345 502305956 545895061 508942021 306408955 382098444 429593159 416650695 127110850 665280765 102977968 813326571 113647770 4043893 790609863 277750389 913058470 252403864 952779095 690644556 895315011 665295391 905122970 512130817 776140474 352490393 125468273 51421976 36798009 130854148 412290613 77585079 56529489 808006586 586826281 481082652 637410372 275450846 589802882 534341346 828493692 109950217 99083145 1020689 226189325 35258272 420384523 324084636 505959884 733100928 285637680 290501472 740133418 201344211 856647774 330255908 320749276 832136802 327821458 499298424 517849840 325541355 739126561 107032221 110565880 747813069 342594712 877061516 749688638 98512659 165203810 199734530 328195869 532772276 657883345 914602521 420401293 254960673 825894843 26619031 694647470 821879935 173221649 551322841 697691777 971142873 295724928 513590428 205954421 116061779 955256312 142906485 665462101 844236132 170037342 439138556 196498734 934838787 581586558 206761639 115813897 402946156 107822776 257605582 132010209 514193177 850088692 766331212 425962676 100033028 910718930 545838046 6391196 580050932 699188206 821044468 828231961 895619393 462304431 961541843 494803960 26243760 41922333 481940122 184687400 607115672 772139741 564066152 735925541 358304167 936438711 243773444 364764263 818547687 889478931 426524132 603263186 149786477 440833615 305768797 584246149 1384652 236630939 231149961 488599986 592424999 613354376 295009874 275517688 856302398 30844483 31855596 128039643 976795204 823386683 13998839 482042303 346023737 913680110 308513753 307411221 153389846 597236943 317510641 290396591 314361950 74756783 273737693 89757249 256796422 681852684 745103982 433914671 654227983 424639564 300576678 412513590 837807518 142905295 168259010 527395954 259530040 343085516 932211683 763948407 25382284 218700678 297073152 588667702 249957351 991492226 701752796 702204521 620459390 459637838 635624449 9363272 573859969 94650213 19122471 822478038 637596929 634448011 480614151 6290902 588776760 213540860 148416139 860262055 425401673 264874986 389092085 950637165 408331122 874337441 407519521 716260944 733195964 13738005 728621766 705981158 449950567 787216586 844302439 507157387 932130997 713176143 270132640 648460305 791424675 834878500 317627929 974017495 443533015 334069464 748008383 99735065 764335617 463735246 721560200 733537568 101861852 388831576 883098960 526379393 582906207 669135292 811902811 557565867 395981219 237490292 842866109 184107694 329432122 212230832 985284777 740285721 948656049 918923353 757872564 830960524 423127681 764560820 901818442 627339827 188709461 406140801 952851584 700610202 338344056 556661289 825305196 395897589 98349915 746129906 978165521 963703270 260150962 72965126 497119575 784354664 605801995 967938952 925118920 10519298 102822732 284488936 248051068 257661186 496753150 630129059 799528758 544155565 934655743 307831320 944445984 76227790 442547421 741277709 704437420 560616609 870017749 208225191 160843870 173826070 214691308 491664875 949885461 852954556 88965585 249566669 158191016 651945424 746797062 345426712 701887534 565633434 104468423 645536392 283130976 271866735 237859740 627782251 519036462 392610878 403407750 6927760 501490541 99290681 82611074 71747060 798207094 797043756 459318845 395381877 24117430 951279900 521912961 26765415 963438499 544977812 846531384 81466575 505201573 166496032 504187404 848407636 753639628 809904585 658681346 415019405 497127200 727224014 126671530 645248614 65752729 327558639 384032015 499309817 460834939 413317457 593557818 677063120 756318134 49929437 142819949 169647166 181798777 395746670 774349075 747493608 54350722 158223681 306038418 286314790 923685028 401532576 632747564 306540313 242736907 737235325 329634089 603264527 648536632 751407340 761668600 426811942 710670929 355412324 164509357 571345574 670021647 738237495 379399483 105866886 843080300 93173751 819699586 987004004 468645030 697630846 390934997 464558911 551206971 43610001 796429299 991058268 186340579 926226555 250118682 341963543 105346388 325739447 557921256 429887410 974120841 323927899 686476230 920475171 935033532 786904461 126568303 810060171 332542464 400617426 428788113 506433073 781942485 629244966 916950588 349168156 952681906 258465978 160947113 846019861 905177153 159720279 521342505 786782436 352926535 464664818 947115728 629023121 779902331 808963986 806614397 359025911 587063202 822727454 289892107 218297123 490790509 641344649 61319304 143312594 117830581 796390849 15043852 486144582 560635550 928020739 470664276 976515845 964305068 372647365 198295821 344999246 57790938 482125526 827199061 100624471 262883167 622637085 911987181 660767064 454748234 107285182 373539163 728221924 438079380 317677673 780448099 166338321 52563322 810369669 297031759 974722594 832083888 393475103 796505396 202897041 607007018 823636792 980170594 297783507 100548896 130877466 312659890 313988340 55979191 60233471 893891899 535121194 78413142 197553880 143871165 257272150 605201107 172045391 309667438 730524336 904289319 733472013 576122412 892428645 244982093 95126650 151993844 850549782 831009646 519257043 456207012 376125187 39503206 218993878 618506120 216987452 27343445 682066845 880862037 341689443 944262706 40272051 135369662 115249552 347294121 815098963 931240136 23244991 133995977 225880338 342200791 348830572 662865374 797801118 482220364 260237265 898897910 516479034 524114658 373657252 927029119 460081487 892051858 983722145 899662913 730405115 428511161 531287333 371631944 578711925 695014373 939537561 317384087 928388513 487688405 918647139 583785040 587290949 907790291 601139232 223544270 989960136 942617915 603491237 623451856 248855271 93686700 295439497 436664407 752085674 112229105 665384774 633134357 251043851 892905683 169492860 335264724 311325512 740648911 555178178 295512529 509758768 55154803 63820437 526062601 934723325 342637036 883653356 969615047 286293107 763134522 23488682 25743258 189070015 113966516 80303116 533747626 172261810 108438227 30069881 300112565 914115140 102831852 545784942 627163915 421695193 841722823 997765980 708294302 9007116 549889736 281860442 645329967 161851734 838607715 752609070 970218719 220599936 544473585 473298843 562075202 112574885 824157181 192709735 328596862 360427335 175037525 997866509 702759819 578643001 157720408 364504718 984015293 87211103 164714000 925559755 685739818 620972451 876259377 816336283 501400059 618289138 460608094 480123159 624827144 272531247 687559559 838627421 254241443 63118164 631990214 781083378 181132523 189148190 963703061 615677994 431472914 751694640 141842447 102744774 471630631 669200976 423253612 866052801 375741374 941644649 135911990 826830917 869521379 253899078 826777076 850325374 122682527 99989133 637791050 273376037 874469185 385988162 320340214 494596564 123285265 997554512 865977790 46023596 601156057 328003974 800889715 59328467 751384916 374424952 172107326 211228401 363037922 337345739 593141492 8638505 266235545 672066592 472238149 707747761 420396267 90506839 713398998 514040104 347830911 524083739 375523951 139744029 705176629 830492147 731371002 62424338 471044219 912144462 406995873 883507588 875527621 719110164 799262121 723776881 442853520 3128213 165662646 179390950 15558068 45966161 226073621 527088774 81677863 262711914 591277706 155014584 330425848 918791992 169997588 197502865 228906113 224762459 631439933 406186458 847272592 289387279 774855186 925474943 576612906 196584987 575797051 701179550 450106822 296430416 449248063 835387716 790265618 905313346 619156261 47515880 610339199 616016892 987316994 289647457 466318506 4403958 630786632 908828488 129787118 544036944 852439076 123416217 987993596 564239507 842670786 544998468 125731366 990952173 735478313 110849998 364030755 750981462 378052904 473942555 709311062 834140665 640636042 189929019 601491945 976483725 539324301 80494159 318736466 18936167 661539224 860513029 68199446 985017602 322280981 601746015 117003402 892225955 620599512 312497608 292467985 908422265 352598667 649170590 257551224 861402694 870384654 253471752 523418710 748814637 372779085 992694870 553228641 757511438 145266122 467379936 416899156 678720069 962308628 130730671 213802334 932227610 944746670 607576844 909810575 123242765 55687095 491028073 846119713 231615739 315447005 407740236 118667251 678899762 540069862 412217973 560416724 429253248 345609209 758007319 310362545 341971415 919482519 731804282 640423939 495828446 716400163 914838915 274956370 454818357 386711722 600592928 996559352 6260032 644872767 536777595 197249454 528919135 24469446 561412548 261329857 680760701 198904725 29129321 161157766 285925637 289131560 856597118 382312775 176690736 90175252 951610966 572953925 491984201 54972408 20819559 116236839 414003428 311288870 455647340 44928389 966613898 102922176 468932253 655212367 518189990 707294330 458855532 273581832 181717441 382250098 292580830 393607202 450084993 231947187 567189676 626845366 764961115 939544011 147695113 939274246 42089793 370594953 403539721 118997290 432589267 839653005 967318301 398566643 845973007 760719434 130389306 848120583 549247570 221877300 677070917 881565397 369498448 986056048 557976711 128704122 740147961 537047362 85778768 826881829 857092675 8118066 139195034 128359739 134779163 901842018 442691984 681080507 924880438 373316273 171860143 273067781 785742826 760452671 303921807 108240460 817930414 419191632 940360575 145628346 915581140 203085758 433939776 869132567 11406531 326682279 608636612 153769484 537998514 85918415 379009665 904660587 174639281 495778532 461694871 951298067 19609918 359495924 413654138 883477245 73265119 475515527 262342348 196244250 341703825 266403889 672703339 586637956 436908052 162828443 233685749 683298320 460740054 541620109 915772573 960963395 220439984 464738572 771802687 260967945 181808231 709811255 629457237 915915936 739544600 665720278 497948339 328599423 566000722 215465368 80456284 5240011 656237754 239615128 242670619 186085408 539911456 906593951 374465684 340223598 814721781 856753928 466201830 11943257 925997166 373474857 341243186 285648989 659172541 233686998 345396693 331743193 166779492 811587105 998486135 979642610 528130911 909330759 172169968 907690240 778953124 540032093 780113854 569214356 367121032 938232389 452238583 674997270 510716161 968734924 437204180 809206209 443350549 375094820 997260684 311788080 847801554 560135451 446722518 18225157 811170704 423350207 664323852 251808558 547644454 709569766 561596938 341944003 584102737 487163859 13556333 784534426 943207301 365060468 418113416 43797212 614149964 294613736 945812521 911379294 512673672 56723346 883867277 713270806 756661171 274991220 195666652 36184925 487510365 944271978 813518391 811845148 501772733 325153729 404635936 465561416 310996132 683423850 244361919 991405546 512528311 338319014 222804258 273269747 579322667 76132948 736962646 205077926 388789273 156557852 547336953 171033520 524099340 232454044 156028761 891475437 397076035 487755782 238289817 664246094 600966260 712140870 359736149 684008272 893847365 244488838 73745327 34632306 577805841 867554990 206853322 271556786 4619305 978467476 205915262 884213292 310437627 761912485 921078846 486936392 434427104 649340820 475963855 571904035 150057089 417753720 436288103 654238208 189935512 297734978 832862602 915071332 116412387 964282094 987728295 633541913 87492193 272476153 1501304 683504384 726301013 149790084 993303038 115064861 615208278 551918726 920169053 669122847 143931436 687583747 524498916 69803620 109997189 31022689 594663644 64290350 642882218 438527783 830443381 902224683 876212066 137211530 290029210 129086441 624875829 906849114 560171882 541227970 365718793 47140244 485546684 322795121 103043102 214722543 37993242 30503041 629231860 524689243 297290542 7036812 26561964 559714862 772865027 337431767 424926519 786908985 584947980 300149995 406689658 160481572 759411235 620636079 188882403 107702603 547276203 355190183 222841606 284997962 91208588 358051259 465357925 418926779 211145794 293591637 70079288 51425149 119720385 976011480 820851113 73958674 387852398 389092475 804530132 941992075 448131359 503261885 995627031 4837831 537990200 458462474 508789204 914952471 89927307 181154346 356355616 81661728 653379786 793039833 260456454 399006700 384777681 955676543 552248247 507982291 138822490 967761201 131053699 42251728 611285248 221419737 79903998 506236211 218947849 600574353 826127370 740106895 350785989 93308892 296036960 336227383 571980966 975432946 714424504 358664904 633070126 524475026 733544196 498196120 397180154 75912808 424771975 77993671 833011080 794664885 154459601 857167097 241992658 631194776 399743886 774309265 335384834 245326308 967248773 546599342 787435252 17504431 392335094 760364701 750407671 119140770 140084361 448653631 719055705 937264330 798849494 360312341 371726868 743465451 211534653 155192137 945433515 546132498 5827721 838840759 279672396 820074977 17792499 664098751 541640299 346330245 611684024 106068734 112364958 156065087 636940183 999833822 788240745 872884268 936359423 730904186 317962240 975905258 344982872 876260029 909671519 566063371 585399655 555330018 630244146 541508704 432565459 21252008 182278295 532541593 840936932 283050269 160882753 74524197 904889764 883321386 911665026 176479466 347689284 215096841 717229547 670626997 423021194 8905523 577370896 25148125 254545483 443544668 786824263 154132007 850570498 913220603 210807927 179882911 920590059 445058274 960464631 682962358 727364972 149219830 229068768 341254948 651070655 601478574 864407456 355687057 990326825 558747849 41897697 450510861 995242899 88258289 167258646 904372562 106062220 263999182 777928006 6560768 462501131 800971255 910988398 929819390 77311045 358562903 512216319 914130711 263656831 726396599 819834549 533334201 455094154 224053695 70031346 945043160 338469002 737742289 655960800 669051155 555405512 542764569 356112424 218745971 40026100 876114070 160542404 617955251 167241176 885309092 711812627 681974212 622584974 550410851 719731140 695267398 439468282 294669220 125212012 886051026 524322947 134704340 534628682 944935475 707810574 141589498 861518265 945959471 575603878 721217047 63737703 13660926 364298868 916408489 904709763 821087147 817900504 97496657 976083606 333189072 851425308 929738195 105631834 588794034 856169227 518513810 760277069 630396309 904508525 123930205 185614755 340750649 668115327 357192609 105804007 965223805 463504303 767795831 855638731 565371931 540387428 870647945 976703962 739778821 500663948 855463020 457200453 44403048 154183286 674030069 631657278 365255496 494221466 178395576 311882863 749252028 946278542 839378848 651540614 560662740 638118493 563882344 270255345 285999213 149077130 850681015 283586089 216637221 411646157 835908032 842485550 954535364 629581890 459711758 434931466 497798615 388693468 271220162 374696685 687577374 137083913 344761658 464593664 883946421 238341226 107232383 433243463 335174752 801967866 618512506 587751663 846586512 777524443 701644406 494883798 623388720 395440643 132111748 582125290 897835593 72542100 56815694 65833263 940894882 430612006 812700486 352733059 336262935 772660278 347767335 617191042 746524328 708605695 188880876 911630600 937729697 622861571 842086606 912051587 460147197 23026427 201304200 127500528 261943927 620113278 15154255 35054788 892570949 852373807 470983569 204000175 779068100 709699767 599469187 868618941 589702126 593491216 253210064 983360159 394428395 345074107 399705428 973676769 472191453 37032930 903424938 268956475 98078356 657124507 662401090 359354488 752272387 729389612 777437898 7216023 472510713 724211942 269197344 249323167 869101679 332875812 770894341 238285112 446759736 963060977 134987654 35126634 654587172 579041495 262388262 679484374 17390191 655425702 718071895 416565934 226969193 240808293 751934147 65211203 22112930 806336755 897081714 17432036 938651284 180509475 704976519 265432151 41676133 746167701 968255604 162547190 658998484 777838685 185490514 899452523 659936318 451725516 148007370 589065087 948739067 535293908 150612664 932417833 725052625 653771019 927426612 958668026 722420186 892347143 309398453 857624738 728688349 551386989 618963021 904647171 474627010 764953693 434108767 217285376 477854389 102667539 757502592 211156532 777612313 22143915 716741031 48147535 530768225 986570025 720499228 850918836 35509671 150275306 905016704 995624901 576148439 738389489 790771513 796015027 504825302 668210626 134218018 863483349 63400949 29455083 982611073 714513432 783014278 150817735 243296600 475370036 681308086 304992673 911877795 739444689 235839782 566389809 469347465 993059722 179981348 225718847 517338295 551205207 716382524 621571846 454057256 939657914 321457354 662113128 170681316 221867499 555142623 951124687 769588391 247158870 221446303 891358997 170446981 77144673 748103039 616920474 533091511 825566767 333666125 489426606 82577759 240090208 700728617 796948884 978980597 792039986 694463745 852154544 300297466 355394776 60415326 66615492 557859256 657716464 941802690 797904653 641709226 19532512 962200455 57313349 129388164 891924843 361817050 913087589 795594863 669515274 420861137 644822991 448516990 570497032 503664019 352921888 826509675 460332816 607494884 689225195 634628525 754078556 471027531 280888887 630982498 371090983 835472600 2178828 182762489 401294955 805358504 180378692 606706288 466768904 973987871 780233024 610988532 455705359 199256884 379107317 273692275 132115760 97187767 409117772 843954120 602229898 880188707 385028295 381796092 122961062 373181815 833510405 86106825 446873843 549112343 525388838 485849242 60484105 739411640 288756948 494549106 279876169 525052948 612401601 331410923 437583636 526520659 714660557 376005818 140545791 398862475 89516320 695478482 203645058 248889090 679807556 706350785 816179581 910328035 25651835 579840833 115915164 530175698 195059827 545038633 792836936 303020776 258634335 736223716 115184479 983527492 970154407 820555251 11198018 698590809 373572443 148677547 191128203 768091893 479378240 120365522 841573187 157484242 796467449 960883379 336274157 674201495 580655583 495097446 117725377 828989635 907081211 439619069 410738982 541090287 807369841 577699373 214577910 83437620 570812731 374025344 465541159 179190161 156572643 882777715 164624725 724573069 512913111 99448578 563396709 636911894 786597329 890378678 716973356 560810940 936281661 307900231 417937049 592039808 223569518 370341040 849253808 989097390 686057427 962247481 673178474 303393464 61450689 93959325 648486139 424820550 460344743 137625106 47047031 772564976 734901342 134588684 773860358 949936772 555244188 174389186 69715577 544770177 595145048 625213753 416682864 629647923 201128077 652343062 600878504 345373019 289859518 986239034 92374611 224060295 58223611 213263094 522896484 314634925 13373381 221362080 13465710 823665921 722722332 106418218 347705617 579424753 286867836 600994761 749061365 955480267 783803413 766183184 231045475 187393068 742287895 717041073 886343398 227475723 99982721 34640878 964280703 229749161 723269967 801464325 265168543 89237069 630208761 651791465 590483653 910937393 90964071 517525242 615782548 584336289 860302182 426659047 659928271 246350572 173435734 337746528 335837545 518860316 640367677 980963181 205362210 677802147 908205609 786603497 37843825 193312532 737974449 360683294 647247758 245583749 788768201 653298315 65314643 312885963 512148978 808749678 814549474 311535221 192446624 907949139 174889504 288598056 660680141 464660309 670585595 887399083 445312074 426412375 896833763 679071469 687906022 720414709 35125917 329599546 546253369 663648257 361393419 618019718 481702878 828533520 316381018 92021059 242534720 3570931 332743866 89751221 770360861 793356633 600150994 387861904 657239375 367749822 761281007 228581395 115980280 942721771 207949939 86581290 652610719 601757681 681521646 746253859 348590646 314640039 469052828 252450380 740433086 159659002 314038841 952563758 736461453 413080183 764210218 643681987 831946151 481050289 18389178 160780977 191956342 711191464 151111170 35271556 363177358 520935843 201000340 638608294 644376200 471168877 628437332 285670546 986357954 337778884 886436057 178400236 748333589 65857913 829258392 301062766 684843147 341653137 567150892 384239980 340605671 213515449 125687412 243770802 340994767 669890069 512072086 419298509 25220660 275469097 778308560 906018887 618606183 929430093 609555922 778420098 99226730 163678771 479644365 702089279 348695240 901713609 740343762 853094048 796199351 239005573 913223251 642758299 577063969 533600158 470973317 700580790 465783238 753932176 146578124 874824852 535606792 439912964 934495314 838905154 12988138 140098679 870817085 388894345 524689184 259713149 364116824 115368830 90181820 907954705 912818495 426555883 387724444 680176282 38775978 627885844 442606885 131157401 744206156 837487289 479515208 422926158 907623798 294181517 58715947 243614012 500831784 857990761 907269261 341355245 849147984 551793067 281833824 803574258 72498785 70148693 258030770 889614488 275728916 656524120 136394514 537903304 382535175 498213704 93528727 701553783 199477665 775560376 271302322 194526117 789727554 301152610 879132845 839343988 627170817 78955783 10502188 724280579 577895607 938348419 676668825 235529385 556812343 140135236 39352503 64700590 694378141 94033683 860284626 865734501 83284997 693913984 147771716 989730560 773915586 287298769 371860014 90722707 661786815 891299441 658110089 393548181 477186599 805744129 748704992 761632236 159760989 740169945 498143172 63036765 367942374 371063422 10785643 423780235 615108209 992292547 4465496 450771224 274306568 92236862 630515240 793991831 972021024 27858744 506473456 516805739 466992561 867577672 105146185 306988449 379019390 350432842 978418021 211344309 396977540 36288882 397979531 50105144 79590174 525200113 217483710 588726932 810647038 93928275 629870459 748740603 50717163 238611570 838360758 380609207 716552388 860934346 839469294 414281062 674304963 655945684 33256856 459009513 343587345 367930436 319324871 400702378 744396849 946986951 408187882 419124770 595599909 114956046 938832794 205008754 549659670 388686533 352178233 169203385 557211074 55363884 69140610 747728585 291092646 420567959 746224119 200091807 405640484 807964409 717537602 124040136 121272889 363912206 742453326 466076873 122116037 156853040 203812230 211583558 292254354 507194822 727011571 217542616 455484894 245502593 852906223 203309652 581382175 844248418 979014641 395333260 717936612 909013581 329906574 880429035 203564418 413835773 555492625 156753230 492517563 934788862 223417831 683672437 529163203 523381068 393706309 27776174 455059604 414443708 326130030 874138788 888682232 583573947 21330246 41913971 201231305 225892096 800786793 311420478 564494059 142048818 563332774 911452546 906947831 518706658 695199122 301623868 635492285 537849990 737356849 324018457 62328022 162741944 520536576 793548813 999662108 908395844 328049117 524736067 289301291 414384359 179495329 406280560 400179118 886025702 771143952 232019668 203504492 610609174 774604968 650294347 752359613 508635813 251569082 926594811 117099922 442081244 877452157 164487620 602796680 991579335 786548363 839368102 415385191 945697264 531316367 393874676 485608807 656522876 283047961 547920340 29449624 2182456 26333545 938068536 317996800 436718524 824976766 22413464 841481018 477370680 920691496 361371586 697218651 965579445 449836478 443837157 227159421 770464976 62247315 229521241 238458459 329435795 274533974 29846270 21535759 443398372 495706580 811940969 5937370 514531409 962512043 844789717 519714380 822891586 568012858 241542954 677528303 830616703 653909365 143392348 362556281 563080692 13205783 538114902 878618525 713353326 721163260 478414829 35899347 182204960 68032531 753218506 702904642 101866729 39670206 398125347 442924384 491107757 936685887 65583217 761458240 105382903 756489103 846962450 842024237 490230068 962359042 170473358 780607846 900773868 253988896 943576271 574121077 720645691 216741941 216950176 303553368 527283134 932426401 551250802 29935025 334322270 88224214 174118915 227586569 401136333 982157370 809397264 217127960 55868122 582763614 200037170 374997858 334672539 219933764 45819720 993080708 758694742 314978931 507300442 340203582 607239594 992079727 862136028 888120134 353033097 239523436 892265915 750600706 259991395 208473558 587400010 156934705 653206992 691739943 800019895 125127318 978378052 232858600 421624294 930362585 257522927 743339592 565971469 362240682 190267651 531466863 954839342 194570837 723519577 989552514 273947636 499227617 475578624 782740324 912594431 193880569 400388746 284030915 812994756 508338272 949135567 130776546 625192016 462460624 523449108 747534 656344197 294977543 278896350 120441922 926178941 554732519 389878852 794846283 902583266 863073109 985090719 773094966 142980854 886669897 927943576 640445772 457179593 157643323 475675362 309939877 962111329 143675124 435119737 791532254 771617306 66276456 664775151 24716422 721131133 615183678 588513525 780906265 241870523 621896323 323069487 106997398 285156382 336515685 341178481 900108445 272933402 147205180 437388723 500071120 609763424 192326729 56184269 910901765 613814696 518521120 310884037 220405008 250047376 790382768 768906104 136159353 638878014 938831284 391644500 648225040 421730023 666365746 659084055 567423785 687666338 765516247 893878481 586935 136623693 466202914 805594660 416283453 428934471 320322703 398006889 2688413 403624227 368567323 4704587 295797054 566981684 676011031 643021475 588330878 667818326 499243206 439030729 375587436 826508171 504954777 10377679 818167786 490658436 927591775 409566129 173746737 447887321 271765728 626638052 645229565 466477533 381808305 190043342 179637172 531657508 290201654 288368116 865322126 280439085 900160956 114755738 973203697 488745712 80807325 429195862 902697360 133024047 937104513 884123615 814065815 389532833 373454669 994223451 536179651 477175687 405301374 860395070 934815581 975714178 375357444 70507127 125507669 32795315 338079313 937753782 459589375 783776895 939878445 284234557 502817891 884413449 831731065 278352028 435619269 880364049 626074794 520230162 611667484 497300700 979628337 301766121 355116042 163546901 325679551 367641599 952906294 541979976 584215720 921233152 624564938 228407434 454927791 916027403 501708031 137420389 418671172 224860397 724875080 809181774 618146706 764106660 381061859 572349190 339994606 247961524 713970236 607244419 5312111 431797785 791453440 186777089 34792203 293691452 720770113 734253588 393792542 493485013 489150993 978595726 625925924 929288033 237665583 974159005 549668887 932387831 146679814 436238797 699916247 901680726 479984197 734841813 658001964 473338064 619777416 697380957 828477953 433626986 634027220 22548887 754959733 623657241 144058200 122774161 373594943 903617075 237471742 786786868 76160785 303609151 540655543 560242600 724632846 918771042 244904484 520393677 400447575 987015451 965559134 680515958 390674012 118918570 351735642 574953108 701010501 694614457 890297126 438619695 142055008 961559902 690133162 77858140 881813576 190820813 172383535 596763851 498365823 89118830 442869580 451602225 458676589 462911910 276309071 555586665 323551654 789021193 381473057 523762223 453907597 926503143 549755719 653547339 251613687 960842458 817539937 673570737 901750798 532377983 98135214 595140438 859593355 639133751 565791263 482045422 315801265 593034575 607608866 597223460 85707367 647094273 688613856 489028077 687421478 648826460 625125454 351593948 3973293 780931176 416903059 801838172 363169567 132875783 528513404 367192793 799219186 282299959 547987953 609695283 818261497 453129438 773641632 524829891 51299271 287139315 619860167 479634923 158122597 155776188 416128261 542690330 546395114 28248928 985264981 97784752 153976986 23614941 226978375 202297511 167127202 949506774 456977401 452695194 7706236 582510900 689115073 300514357 218756644 388938670 918401760 413972303 911840472 339217097 713436015 924963859 908314381 335515192 814831620 395822298 384685236 211081725 195106250 447712334 651172374 192984122 687669564 770061655 597160650 72999 218267741 434710377 401676279 941431746 180150846 530225464 299971195 228138598 453435507 938977502 494496685 11335088 750983271 519843017 725504276 93164938 3590893 267839119 683828942 934751310 93165161 386197149 75931688 865282609 3742247 505263999 952310391 852576485 865248404 658493607 183457255 609335298 899126133 790740447 897237689 296903842 431883953 440561008 898570187 988559364 144493340 336331842 525668414 348840299 120118574 546964711 434478380 814790448 751330862 882665636 369362489 931423668 132287907 727339997 394699139 898158383 551699874 62044773 271451622 367169365 263601071 37852027 957239259 620814099 190150491 829435695 534850452 46887714 874525465 709421700 578369993 878172525 810920387 40882462 630277989 584660364 308262849 75012911 646775622 960708129 722673218 676457902 175864469 572515220 429295328 809743283 756427198 521132263 539119778 781600325 447696959 628047610 425652801 188831002 276986765 235071886 72827512 433556413 338404446 524167526 925204735 321161935 997928276 537558277 615375941 318718856 414792778 605333641 806180370 801832534 741643746 594601584 722301441 521182506 381401150 391634716 332510153 985302110 902017098 194083324 779068059 6034736 547387103 117875975 410710435 153249162 831902273 209698991 39744560 878621188 258402060 169175376 609033524 39765472 377893293 527044197 502245897 792471615 15404977 456099277 649098624 803650390 573185264 592013281 42390408 977579407 416295131 26037047 304374630 964484065 716101898 764841310 908592033 412468412 186408173 266562578 909928576 781256321 692990985 618513070 795536446 17542476 830236204 405802884 632302996 826522089 418299810 443176221 879008562 520528123 75362272 123308089 590364085 544049631 889856755 410121269 392431428 54723448 200915725 404523670 326680334 461653291 952435694 429713624 929273024 659330949 653762971 862793159 823875119 78210689 813903692 591634393 177592937 331890868 261620072 570812493 22995433 261651941 478226 667346204 100950913 839909264 64399395 820018087 410773826 706557486 167409010 388474742 118706484 296552728 510704227 200346211 539607364 83306891 357488807 340598208 424708259 120148361 285021934 384867879 851355468 701454639 859007843 33388067 608093620 320008782 148063945 192506653 767308674 76006193 747041271 260406873 580381442 507589893 367604037 264549868 2029931 266704848 885803420 360979057 416167964 669302129 827046401 728980970 806097306 680103398 500292541 311895325 405278961 927883798 847668604 157222775 652119190 411090338 687861125 177799017 529389248 908730055 241590029 53178622 814440136 122203947 586615576 218222633 824615378 477914225 12578476 933477695 272967326 98986018 94269824 645774882 281174041 104356279 682300108 814618548 981345243 327668663 8812652 95847314 843299343 413490006 185965914 658219702 550760663 484358995 430215757 56189834 958477222 336895402 30144764 187105759 431025372 405679184 439667207 567926748 208316203 487801307 476519670 838499393 242441795 679524330 110856095 423520569 102813760 722707299 6316678 509989738 236487348 689004015 467530674 169788412 396704375 453815683 3900514 69669404 882736977 131101068 164034044 299983274 904969895 859223509 90995721 245636331 814424694 36114032 36979734 40860845 162124970 846776288 827334326 8649309 134774630 642883688 500565928 127809090 881780461 327435914 503505565 232076778 865759708 973641740 843735554 591122875 121389248 675968788 486941492 533104538 45935518 615047256 215864648 400150681 502885067 945323475 932853377 469200551 357793515 82720802 163180679 585007 593676427 946035891 421919273 864018146 940967978 546591366 32381173 196161819 862819599 582213356 189377007 46826872 917436141 206149779 629756225 829933929 67282171 714244223 837874782 779904105 449567686 978110149 633963303 38230371 715683487 93493904 625813605 749809990 741136662 824517201 57912007 755350617 627079833 866854930 207027443 72690571 517328171 756764818 951408442 744002335 889059371 279675262 820372648 936769046 61770191 275826054 728014746 770345080 799235350 188843933 160439994 698248483 443096530 539295989 260758948 136807017 877918560 625075361 136275385 972008068 437538907 177906881 142498680 525239847 25022285 842618908 146829912 507819109 891800664 242641072 191739304 692127338 244459183 355592204 4751849 953145168 164921684 760367288 485105731 547988887 709916632 355919359 548613169 928948519 102745741 303906094 237920006 916828495 238548948 944789720 848077374 638613195 566407250 771765948 290505973 853230292 359027898 577419850 552632241 122946553 752928013 189272426 46012820 799968364 670026277 770349743 439014951 86447346 349278184 455416687 921253439 766688352 105886573 230850915 104224004 969401540 374488508 154354893 193105861 74530761 201460147 707989805 624040560 815907798 33257996 98088772 695868790 139735769 351200417 720683865 621723774 190185168 481807342 592961052 511526224 45245093 649489947 501531168 230746853 30771 134897887 694825096 667438679 319011227 948409480 665370176 246057796 101305237 57260062 252533491 928073749 625050546 597882385 715857714 381357675 484255231 810326333 921462908 584968632 553268243 48012048 289295965 394032026 885362253 91212807 332846844 93867427 263748414 646226297 122227195 430321726 935404941 168408562 957969565 671098421 545826193 833050 785877791 101344167 451030190 401272479 179138907 873276862 787306594 499204899 833909617 726752273 224590693 995050583 224370945 939159320 770732009 200588948 989244632 680150668 599735102 373333843 150635844 759327221 578664277 911186056 283677490 981999543 109992663 314347571 642353090 222471956 525147232 679730859 300700384 889649314 804023821 738771390 731593978 964387234 419364666 76136045 103612468 100610859 516273672 802310332 223177826 695700486 820749358 166871056 962239984 380121446 739931671 826175676 688513528 758166580 193455223 423338457 331631572 749850077 351375690 832584801 950410313 149394693 962964573 415223689 951739797 380906016 487189091 538203061 986187256 9579320 126064028 628053781 142426391 67661010 222084991 103333472 209431859 262555467 88550657 761123360 655472555 409895025 326828788 862030986 12351817 676029913 57275117 565628127 220602638 806542238 387792990 732578914 76023360 938088928 587048025 732907485 660466982 964179319 20774107 150202759 237583986 679382341 176176783 378881646 7242977 696478127 713168023 627318491 977474541 870150993 989032631 975017284 10881362 529759245 979639155 641495208 669879317 832844461 531809727 365871646 144351749 428472745 831339353 170224986 737847388 881510506 216012765 786505012 858986423 365239663 439958399 556310066 567855763 630293470 833721438 31953716 391364019 131987223 825769660 584046481 70806235 42615608 781036490 552304897 696624752 156372808 644268599 112552120 636301687 446486687 822032074 258223067 997066791 419740485 673336482 80441407 644392811 107014827 126096758 890369339 39578767 123482201 771652352 339255787 377769787 77360265 908952949 943457627 89579444 366588758 877633982 351981251 260030454 820107621 139412607 253470527 872763572 831368271 763076175 413699565 487268439 28301443 158048076 781315509 900301319 906189562 165041783 315152876 425145524 48038215 17928826 535557060 863704538 765236385 328944226 407000326 319783857 923134232 432261711 582033088 975472541 814404146 318115339 3854779 797726927 792127225 314330117 251596581 696495276 390291639 157167679 527195249 48968549 832483623 184794393 736669073 977957642 136364952 194121309 443679963 307022068 621868676 673354267 159693993 537339796 849537287 775881170 958585715 7607659 163774559 8706285 539527503 741922849 441241792 371199302 549329928 135998299 579684767 529388814 966443252 735673228 395098971 325902859 809404499 888903268 483377276 392073774 886259717 677429097 437311039 433388822 601198041 573207723 479280230 510370391 410999636 503399425 986449954 917983620 857876801 777538808 981565890 758401410 721293809 508261947 157856723 857343340 167641138 141561985 778201388 608108978 877951392 577097035 625877529 811028019 175789064 53182133 974337091 591831663 606088833 935072068 236498264 739127559 317738407 278944505 126800991 958770128 611908620 954081807 937016877 662189800 745152079 259229892 819455950 316222794 668210785 260356124 390899021 371483156 888136427 135742977 471081108 12902661 731727254 417730504 298254615 531679663 181486768 394878404 962309252 4275312 221137315 872770182 470672204 457935027 979491137 15137776 605458225 639908197 451426802 956256912 872097321 833581256 805445319 892840423 156371860 357619692 741436276 970738363 931171813 405520036 206417382 217268304 443418480 26191428 617821720 702739993 46969364 489756733 621181955 301219341 516706474 593379977 636772859 643436759 506669411 129142094 678039391 13948372 17723583 244551202 514661203 416642215 319946902 392682797 529275843 533491099 8049549 802734473 797970398 37812421 957276586 611662486 271911116 145638446 366142442 863706961 274414751 701402892 137367160 563629366 45746989 491944445 28680947 313715163 48893301 826613591 416447399 892779285 555138719 880940897 194102083 748352114 343180614 145911893 476730001 295441839 290357729 213278477 683005138 543646768 845335598 36639429 750993440 19005839 296865254 772219281 58760942 221433748 972319980 719774001 214927014 766191228 39574974 997291466 112311626 228908905 609292047 125140616 166058492 323944329 403143850 368548942 602182727 989731268 117437286 278926962 81332323 669012977 156370386 375408620 178761850 143406177 23198285 698942353 846218270 688446485 164546365 172920041 588291246 342577714 595264547 453681523 46136802 179510293 179515955 543924191 396274833 136377674 847758864 219690538 456432217 268368326 695958348 553720806 226849964 135475572 228429141 439301111 335857511 993384372 484615668 685315 888529991 49263737 819724927 723565795 61460550 222854156 450511380 421154761 165833155 403399946 187004924 958494014 953000430 979452008 437742644 711595589 804813569 87955408 613319188 555325140 139491229 317468199 791850496 571158844 112164074 320597717 54153432 483235223 365951532 133486085 675712137 800705473 278632614 24264602 223831463 44380692 223941296 140816554 992189319 844194926 306132861 168007579 528733736 87177339 896687654 430889768 545266479 392386910 197992770 171222945 727521460 989988491 845929466 55224782 471599600 411430351 633328191 582827740 394427543 462149915 919737665 141940789 394916703 136261120 851509756 879466371 684485468 904078521 383586931 927000263 366528241 919127778 754452741 195875310 81748077 328870014 981086590 881714265 101176382 345540564 1004239 474855480 109475757 807261190 340433001 665836947 741001835 558947376 113563592 93906655 930534451 542331755 975342786 996447501 491931970 839169520 477054806 826589230 92367350 719080638 981837097 421089807 318617478 962352314 690608813 506013079 762130967 361758771 359791477 567718275 867931894 495321759 853474469 558694308 844860521 252933601 382061124 55949557 642049531 235105349 180514240 354071667 425575847 157093380 955483786 761145870 874373142 989638332 351021122 263075498 165484805 556640964 754044571 595315464 563096382 354223923 987099617 521535340 913616664 944871932 239580511 526381658 468396827 524541723 380116915 841535701 947801021 790590322 751822932 542301205 482048728 211993676 493499668 193382689 868313712 907642723 394697346 866637133 684052846 734071122 437691442 156818030 756990786 245970577 471599245 112481387 978029003 713301390 483772207 217252178 145068188 288743912 617119797 949750944 426630817 718789882 901860555 694793201 389072353 741610083 513464509 12040179 212334332 891227543 890461200 396877214 336804473 786883676 419108783 198207254 365697119 192973612 409818818 3492044 934365939 59743919 992291457 876396061 896208983 282046994 218010044 994518444 599811431 45497473 184162600 735317010 905527885 241060625 228784997 747834449 161091501 500677310 317347613 455271334 465846414 271992004 903290878 289904995 962060611 84848736 839086781 205707219 591274753 92082670 219184552 440938404 363409041 766079645 669476717 923268819 388548439 745656980 757705807 288591912 706628562 986730167 957586767 917960752 944334039 676028259 361859358 43116332 362326159 261425623 617062615 330885331 103599253 551152191 672407505 382969019 809684689 955888978 737098926 790200481 384787865 979814038 210240037 91945193 390766405 141275462 534206657 788435833 408346432 373099820 652419580 524605718 769725647 67135543 478730824 732918451 407710221 699034348 297131224 822067232 680009034 779707226 502312639 769322807 648383446 560868284 380631322 17413488 811313409 841968383 405112533 79473639 684515996 601232976 34449294 775719678 510746021 100606608 989719048 389176412 354661096 381979830 226975334 982191179 890034792 753120544 335918620 680481542 292979986 78145659 753982511 674382966 471967108 414184312 140908497 958592069 175167188 65479857 932976941 188769613 220116882 266044648 533525525 506978439 772783982 666690104 366651362 587420426 423486604 903346425 396994862 204619585 852601163 943895665 626728552 767357359 495052611 788727689 469864929 630714602 752756623 471097245 864182944 462660167 410587184 3257600 411391118 422850690 518291080 196796595 567572058 309667176 190463728 882777722 117742970 836497387 451713311 964324764 740073703 976811063 133441288 40404659 81580419 588920004 318180676 801773741 608136928 710706190 928554055 402528297 466722106 116065661 968513214 472079643 61705283 229740393 42088606 39278503 392277968 603204262 711508077 59165832 604697590 491715159 813668530 588080826 178721606 967584557 6591877 661193617 988943680 437540984 990470444 14298589 252098972 392375675 771736917 789720634 677341035 138106945 703810664 756864318 96706587 442856827 222337898 984547247 514464915 743427155 404112505 649980220 905059416 37568592 594200881 341322092 756660642 126938837 563166643 906688115 986317901 696422599 853825610 163926586 134362812 66550994 517426818 703656120 926676847 115264867 93264090 909584166 250236163 734683193 361516943 8186029 334994405 522785065 651602499 925711087 550610817 978405854 210030708 621763784 782599615 33863878 666429014 685153598 617589178 241864951 100917413 938918951 628438050 817155337 918781658 311814244 583004394 663235016 889561385 972677152 772776329 990530211 820112937 396428255 462806451 369082005 445899444 825552906 149916493 473276621 258156267 205046465 536935731 32452219 553397749 245133394 1137401 130037436 699181878 858853826 710538388 846807325 26255673 389002479 812404291 800202598 805966626 51009781 551742776 590068138 355740208 618317589 935419345 568473853 880067663 546002423 900857606 602526199 168280740 129438688 985058885 71321544 340106170 760713955 285565086 520242725 692925684 687285743 401046444 965381925 664327097 585009950 60645905 379443534 319599563 571899086 231091565 871182288 914068942 983164294 680416227 825652997 642572345 40071562 645368708 232276478 874485528 670446602 852295989 690072130 311261289 276978676 261719944 356182604 699822433 847361666 619446533 956808503 234848602 379291928 401926606 641738863 547749124 756055725 383176555 124767631 570563487 579426953 842887859 986831962 734971801 99201967 324521795 149502788 909496090 176777368 138689850 70832533 444905332 88681279 773896461 734975420 170990597 676509887 460678665 300056573 361749026 301359176 292112473 837297377 118425722 1296560 855070083 851954855 780159340 81091697 342383668 306266959 299632741 717860905 953671400 347453275 576111848 306866315 532888623 951205020 552888178 703730199 183578787 394560312 657474705 28710141 31925031 326995615 672345620 341656018 897406410 166975676 817029198 50857403 950776514 714397565 424298050 163117937 740661419 15564034 84099947 166388317 447504271 545664082 90912871 710478480 658916456 93349562 39787523 498592405 596268825 676436220 800816910 262972076 787922920 655758160 698542933 745744504 249372213 835404747 930339483 590263131 832234893 296464066 178176547 180148114 886382772 655613035 75560641 728977579 744724710 37883628 739496679 136106777 363432441 354140661 168674263 70658408 685452621 182225866 858677260 186548746 121468002 360683698 250155995 817133456 48497951 813639629 672970148 953694625 789074958 710366122 161564786 144824425 426226002 612171334 60709100 291546182 438023013 246197530 93168321 77443291 252874043 401456345 875280190 606320117 574731046 211350027 465507997 314875658 427456406 117634911 576466397 48368195 922596175 429108887 276285574 560637248 178631665 528457716 306874545 595701974 972333436 857623513 766699047 696468894 403396528 638878578 279499911 488128481 674815843 88977526 251473456 597674507 112194623 858352162 729287026 865259990 992665715 948335328 909983086 192039492 738882690 113156437 124269431 257572213 77681296 325762785 965037608 611764640 683094683 33033404 253314010 660038598 39406502 506010328 540738172 544703223 275296817 865635988 504908934 537848832 747642774 598999247 486763197 624546278 670865469 965854449 863970980 459726534 125037996 107899894 948700986 1999905 385677986 562110633 571855856 489398513 785332189 104547820 833771992 68789833 6845795 70111407 978256949 2159233 222513436 620923056 359842082 47572648 812508511 222148601 166958698 933928931 622413218 645128232 89440389 665901769 149918336 799513165 670474187 900744514 700460075 526122989 182470946 35547737 783112641 263753227 170541972 365534491 662460522 576182761 164282370 226791003 548844298 916473846 81758880 951409177 139902901 44739717 911153112 341204954 189222269 974390999 966193351 801327491 666618128 124190067 739530059 311467498 259497326 86689329 656300640 423064116 483170010 513436897 802034916 437070438 339220268 535348914 24910603 921494655 730579312 588851427 232904929 543095577 477548530 914409119 419942966 33630485 359597919 690838531 88690169 81734284 317850432 205783733 611466836 514077192 943659578 41844878 342527324 154955898 486396915 13582844 328255881 232879857 719142919 339685197 130761266 260097608 737521222 169384338 207616461 990172579 916865510 876203827 235097004 377216712 298530985 828300302 42965299 57877342 444558852 282421223 404058890 845983234 670055439 181058009 554378295 983224641 662820164 734270225 991657019 541058851 200190173 329779150 420339646 799504729 879533023 848648720 8954968 116371366 729933186 190873151 424939009 606354009 776358775 357919352 403047959 668552263 863630093 854205896 443045061 658124680 612456088 831997171 432849258 227607698 378497348 41815364 879697064 793233055 434155288 13694363 81635454 439018533 905585052 309944501 342553915 761424711 856052522 764392583 857431677 55791114 108444266 77749056 864903499 572815110 585255665 31883203 328460577 930419954 234608167 377341066 50505489 743134274 261773753 605164427 123285063 626436022 451741404 183075479 255289654 646510099 841384847 831258953 112986767 328858042 338110826 419350911 183313177 412470592 445145797 353679058 602863139 614259045 127383208 197403118 368260479 412160191 381297358 379919836 558636311 414456115 35497990 206991292 629996447 736761786 846485866 989503892 518344642 829973748 155512709 817012004 34165361 394129705 379121780 725752340 408648305 579478621 950130407 632443813 15343459 971821245 815831291 156516710 399005960 402980210 520637829 880807480 909681948 679818506 12311233 640755336 882797571 707647934 511546505 853979728 14504335 141280738 916669385 130153459 993747901 728893278 186091170 117652343 897063168 591638647 49415858 437954092 529655432 701815977 145035501 448823819 595977889 522820492 651069290 285719641 676643021 179599297 332419427 524097835 175715476 350257636 958277249 439529474 734815229 517525861 840613699 500282919 400794856 72504523 495917854 31656835 500950170 898276667 626600838 212201737 197601537 722148822 726527984 384317994 30264822 576912696 477700861 94744716 802379005 211610793 329347186 556698634 192702229 854334929 812376299 80087445 813955123 982629602 39858931 390441550 747284842 937625033 661623729 825387163 154289398 479410134 878634237 88780920 794475075 530933394 770054158 140233535 432575796 996463460 366794864 193937965 291281448 625476632 229284552 479677077 40548975 755023048 406484357 58203282 83495196 194078786 910092288 979846723 194654455 490034574 226310514 252980588 957599159 172613290 719540422 720679461 377783005 208470797 554527974 192234416 697546450 539306168 926755467 608486364 443287824 230617124 354711667 823285500 479551423 148026116 418905573 622024343 849222951 946295410 515945797 38769303 658193329 902669702 598611855 612395255 444154322 493722061 455746486 636527059 117409798 885556694 362466046 98017694 572735817 147466917 92139228 334790144 644835027 598547277 945829688 542669751 694025107 444698019 582285356 204938723 633554466 522819557 629049917 390069109 954618764 232334803 407025745 289375494 150209708 926560513 885039107 162226099 951957454 247679000 325129370 414442245 328244563 833777288 552995881 665925193 325283649 950720754 827512903 204611694 670394861 194726771 469312857 167903828 690324881 694320817 32348231 699563980 44219759 275866883 458812350 419406694 116236500 633208141 353357779 879962661 560848021 447692238 35462813 575589430 340546009 403009773 943462989 77725286 340343553 669801411 129443405 109763064 354255975 765272373 819517917 441810180 778275916 508913022 711774571 345934784 788963956 9773248 904206650 151069572 642619804 160159335 37479060 759119527 114194692 825547460 580665619 347453038 965258924 494946546 991741642 653904700 6658851 750514285 21798691 282632581 443326215 601659200 714473700 286170733 700942876 176514647 486786017 182906468 24763981 301010886 527189410 431843806 38551258 877878711 239065808 939121749 611913750 369578490 764940588 517333238 650548566 805378377 848617115 972133578 208118779 468452477 465964532 221075594 919835025 553339882 825371593 410347138 799613510 721923542 884790661 774830390 963536060 465958504 116394029 646115507 253735444 344352710 723812017 585985190 17153891 757225172 967104438 320459188 705135383 168921527 305940267 332001159 47282121 450818244 254354871 773340898 817550378 351407793 329789066 369671678 463751347 34352551 224537557 168714780 866919336 826355605 892442320 826663118 367477686 143226872 234569870 196801062 750725871 908744543 46688527 793028250 387631475 671010390 121677286 153002157 428680974 580672082 287248236 222327285 788651147 704236894 679585514 995286048 404235827 307478908 915049024 920860017 530896164 923877428 63652666 327926497 38338192 503757654 266988480 492611054 817411144 470736454 690718880 610980873 308037509 849290814 86070368 80819350 118655953 942102838 645088141 970862532 656417604 443898331 416391630 839154591 7005634 626708616 190343359 828710038 319058464 327548838 802804733 166362391 342285443 881533058 352543197 46821512 293638436 371374443 454367066 143365505 666561608 66007877 255483887 925470165 554325832 736582454 766696010 863618329 602181246 828793729 49820975 269306426 147626423 634121100 334081920 604272604 600275036 370504906 179908391 47229912 27067064 264152567 89528508 770051695 805494228 574773827 766051762 776458858 469053900 120169432 185204157 381779179 102948770 433677453 175401776 708225831 413328016 269314278 484440607 518022387 831294520 854227305 729702398 956867575 373318 281557714 937741570 751305515 773780066 961950900 382489285 871836486 647943584 142209360 771942394 883113001 28734625 101112449 179344754 914634822 237981831 961010536 843954565 426988516 276376512 315612666 899572577 331437482 505219829 413152392 493196551 687473111 581925211 213530767 398079747 55291885 104259459 625696953 519529136 352079482 918069025 522152554 698882994 771053117 523626128 423112055 534830908 128546873 128041376 108516310 410904991 808650880 93937921 323048208 182889193 788484830 221833509 605204696 986577359 48336561 749055177 532799026 415781106 45945961 96442302 609350548 942002519 695671032 397417683 886441808 258631145 91439368 352479347 449271364 301348204 252626262 9051555 801281237 940629068 961958704 860017517 159412490 161154381 215926985 763285518 705936631 879374541 12480520 542411854 599191439 465922728 527320692 363164760 91802533 609312738 377863972 918604627 46622511 748875876 193165339 658600712 242097912 324308874 355388961 377293886 586609194 300050306 388985558 437188286 295749481 561741228 624383444 942134349 649430550 191264160 441059015 895848291 55753075 180932886 208105483 28884016 755662747 942926801 599349167 102981681 887948426 260908267 346695393 58864514 824967264 790275347 537849048 934934964 86581988 521174898 743948463 42255111 386226592 249830804 264379210 994650216 971276052 855382706 296501883 399647457 157304379 490623398 705844360 110181759 882844322 391336180 984776086 274121910 180594109 680589098 586096920 734101725 932286151 892675878 644547905 166791538 914066391 154835970 301769109 573855785 535249554 990008594 672960094 420394731 958687991 866392057 35466717 405668933 144753081 248414388 85201317 155533443 41598837 471946223 311087438 849146533 65934572 328992839 875617969 566321188 698814683 427040926 227261880 281240484 914261884 459840343 886876423 27131678 298774747 309363622 473307726 405543550 294197751 527310014 209754523 753418062 107881294 36985627 982069107 383793615 340772271 699366310 46124277 936970770 564593829 929934996 318794662 674177839 16652340 600706681 385913260 39416646 459485198 240308800 161671647 682783745 201024165 20624188 204063075 669073961 53784577 332378718 18909487 752581131 990962753 332466125 920224312 207804019 493246761 165582781 348107494 999717790 474900208 147201184 477007223 417070675 796081082 766577630 392842799 629125789 93261376 334648780 758851352 552221675 164660548 134532884 415175193 535771745 183573956 314805340 610571460 434030720 531498837 284282444 687997546 837589931 684242186 835706525 519275835 945209968 374094494 618043024 434726258 926367024 414340826 130899366 729922613 726109729 678935834 880499078 433590924 356031237 993875911 440702098 524030688 753562489 591206769 233692113 985068875 927167596 217895048 573824537 750284362 776948677 544477023 187421182 511451615 65493455 229600591 703245273 541709968 374803535 325506492 591690558 198041193 720969512 241374838 235198180 345954019 346218034 848109462 130409363 547512699 422498374 32967834 535069653 507951028 654938456 763347218 616057598 770308820 938665812 565280955 988857897 441686106 802397536 533287042 970630923 723875134 90817016 595015148 952137924 903538543 998644696 843689206 838560317 72160263 922594244 641990622 389602475 167958971 569296175 465904069 526675248 329937554 708574128 589076245 955503824 193998155 914138718 475840180 885302983 686387015 761260949 779694839 123033899 59157832 532299479 65993269 370103840 492936905 77190052 540420471 220038144 601614216 686896107 136374166 9348361 54923952 575078673 616364580 385072059 715884748 230860359 146939222 64298372 876114517 36921781 530365982 29151804 150363278 255300720 626923408 839351100 414498324 740631816 340497717 37027961 36699327 492252029 686185732 484607573 191022069 352651472 146237860 61457013 615634564 482674903 107221031 944720176 894760169 577884356 637514251 696707034 700955165 711030464 131016669 594345305 997601157 150605060 440200715 171346594 224762821 4201225 217676099 29072669 893079710 926362749 188829724 131837051 587580035 841877257 838108455 214968937 569177649 26758406 380318614 868244499 504142737 715916483 742882105 25501618 715188494 360270365 195670103 796148091 235235448 379861541 573562969 158395983 811462216 6661720 646577745 525247559 267333562 318635372 92089040 278280641 399116920 807582287 931294230 487120510 123565914 851665090 982239375 16931027 662747674 915328 376401754 405951945 519964529 305312637 45914087 180366567 605098011 634668980 445293943 324589517 365042596 841986980 869295805 236004255 794950163 394564896 509499797 77291568 131261986 7279935 941406100 285638454 452164758 782607470 894681710 803559377 311027866 842563532 162085253 47267956 575769539 293212966 412541745 448582110 664731304 713738935 984448654 899007735 403318482 428628316 285306509 427246771 471432569 322430043 361910320 642632932 694995856 636042339 619375554 836255306 991559396 995309194 925379180 56578997 700999485 725917429 320877092 980908235 160638423 807155391 647887534 596815303 652902320 263017912 586873002 263658372 597729185 945068074 537739507 583600023 464992608 349984389 595939427 898954678 105035096 963245215 990713069 259710880 591681978 524646860 472051922 280881767 804649064 208932564 900340410 546958509 367124720 207737457 457462243 672301901 281338886 154173694 955170387 730778016 577814509 109838197 816558317 400395919 685297116 310966779 586980899 139515251 12234171 743289230 780986208 790548673 102802664 946707942 661055644 202129355 565057822 425172344 896519648 726421061 963869748 724474276 697804439 40587582 509934369 644391241 338224000 106889888 536021008 89735247 451912944 696396580 979547226 236721155 722748597 34324751 797889075 504001158 928347693 549420208 460705399 496804836 232303439 625981819 643032229 887327531 766227501 58504178 460437800 474733358 106563112 957076757 470536571 545790914 484980909 391268285 543436943 286391169 443449691 107218942 897125434 492891298 152028494 221161164 954438422 218169494 242681776 664530745 60052526 500411480 536163394 826494454 579541932 100737824 925404349 624271470 992412662 846244647 125239668 631829302 809074370 116187675 882566218 889800731 218685891 523246313 769847744 285300145 249411249 899250602 195204129 311838426 340268059 558886294 523181633 494290019 440446069 158585920 709143617 692881229 458760815 491731976 694678286 94524003 108378693 611870403 561745402 325955217 203803278 493800878 19393292 464256623 860238803 629946116 836611699 115637948 433257939 565194567 675502418 698542533 925284294 362089388 859523216 656975615 133491122 564175714 526836445 535118792 644522204 389280963 286841965 595962483 105254299 926120114 807180244 274095077 399531585 854550462 470025390 991843215 865063873 126150464 371912279 878076644 789468950 775661005 67689068 569077014 886641091 680177081 160934239 435959479 298432982 435057225 206919368 390625257 17334870 560932090 125976241 323498137 235930843 646183235 373280597 616141355 620313423 187561432 667823572 229047420 466650974 6082630 617307900 52058114 16271147 653125654 848090566 988273439 729614929 424705303 944545283 383165097 376279133 465693654 360773670 234364334 813383251 757409804 505138520 896047267 614195640 980697009 751089902 271288628 672288983 774410371 837870501 951996963 124609604 224751911 704177715 181890075 780716495 164766376 639824152 626831849 742722376 122218002 328070055 187771031 263900716 118607912 498527121 662730 184780120 143682771 527659685 510928249 617892579 686714559 190543537 805738800 522474574 998245521 48534605 630007273 280292820 845987028 612518900 446100245 935677183 651001812 994650136 592769714 467998885 804382363 392169303 404123104 115847799 569426486 395303307 504788818 783457831 504448684 537227034 892522294 470859260 762193230 113338862 704593129 831343584 755492839 565337498 991708167 595263022 864590149 878053506 838085248 997163056 991044420 686884271 377560548 322587958 450607295 741970467 847427408 363538630 147841607 225896761 433084067 125964693 387544371 569928337 386227212 19242850 49031905 214166116 273410224 440556680 954389916 463741266 416979445 622041658 996462519 667991040 31309709 820011000 163061079 333434134 594426501 982686648 477292364 200825084 466298630 355944726 710239511 81398459 170896039 814225175 949866329 916131284 21803346 871288675 176455831 733431900 211056456 703268 454974253 345266 484826939 524346802 207559518 977450011 279175245 212074645 628396334 156972311 1684271 1235140 988476455 932772284 368274230 119455672 769858470 872279452 498403984 789053746 285257835 531381072 854484724 646090132 310683077 414895062 98747711 31146991 546593524 660614201 948649712 536631831 94488224 851385561 314109972 368303172 153441300 11451643 951990668 669930274 192089888 193660983 373338169 480325271 421219897 781480104 940931396 321645504 229553610 28312865 759587354 927285938 489258285 360395405 748892362 897713118 583178067 439421167 99730788 908063218 767931158 394198549 537977712 456265005 319443487 453206501 811703139 516186715 725558807 216628866 266690482 258543403 772663480 886921624 178613444 344987158 370938528 318613830 148964294 531143245 265508925 238777171 862345076 219611460 580894129 249378563 840443889 324196284 935018519 400045757 35015299 82718742 308135817 340331808 531007909 62722033 628467798 539832172 425870208 76704192 255996994 630679867 894598646 270961695 221448786 670332076 78338270 444410467 162389803 709759198 381282613 782816508 516563652 288538729 701473837 886743866 434208856 996351956 619534273 905927566 284232175 696723902 591605861 709639557 534357312 804812452 168761329 572002722 903896821 194282336 775783573 259151388 186201441 116450714 117795492 556564608 55736081 720560160 788820169 402426952 252905142 58326862 151205834 741835824 768011590 313621281 594976474 342703171 731161975 313033933 309223511 351666610 438917660 6479273 310647582 846226930 918492163 715176895 924966440 171871968 852068174 498273082 658445311 753854993 842573534 33352149 529130465 911865104 111982508 963678305 353058161 78002600 477647659 698572359 579515496 211182084 292683807 476098640 108610053 523533979 313035234 337542084 749776096 644152053 155742692 517563710 915999060 764783570 319485049 785778838 162246059 232176891 209384008 638115661 62655638 461924119 98397978 387769569 902161558 530525772 666618875 91507094 250978854 612012067 583779550 887129436 257195651 736550902 918418968 723556493 65402767 564009343 768234797 5726025 249967805 79331096 679773290 838267142 854715351 575999430 931751676 624117975 485729802 155088509 981134839 603558922 850526721 469332106 134473947 513634739 54158281 703771342 904411583 658542175 811152964 452735262 850895901 309184292 205920605 887019613 902959806 435606893 461857759 992030104 446609254 418539230 265999185 735089498 523394077 505605941 202196582 434104469 89917815 763929907 507572508 135789536 476538946 270181940 972908670 952817505 833004687 179344539 870408339 277536310 346287840 825646038 499537345 342615697 516189447 328138479 951015461 955251824 439384118 800087302 206261669 771979606 213575381 733593985 481342788 688361602 918844817 342340197 446560781 39134342 656908451 547075739 924462390 831228747 98103138 466490622 856915168 779689495 896245888 915669665 975128723 165924938 868952447 198999676 756946451 156859665 540343337 113618731 390128399 575675844 273114773 253125498 406502375 496509903 371961275 215910388 850741593 451953424 15440497 544327894 775406782 358037253 811573438 508710885 968493156 909838200 716378222 562154372 382167391 98695668 635721012 393430791 191990728 522066288 630341652 570226246 574662419 349622063 537733214 624896555 152306421 837429762 296063115 469153931 701541467 176763577 612724658 29446023 391365993 297527526 333328856 779044198 921900180 707410915 552196434 495248965 564829481 380000684 763802750 253957195 278321629 142407698 325596414 909827974 62989534 68146547 893147307 233477699 34000980 9585187 155003667 250916268 977382640 488972288 37206472 699460244 898257034 210446492 436242875 577823384 335007570 437954102 898842532 911260038 576282092 981631252 223729652 229375366 77766876 669845870 86970100 79737739 235666771 598128361 300700885 873168586 864782810 378692125 471938365 320193494 798945338 763627322 784737019 128540177 47264238 450166033 510778765 125814694 889377789 412165769 952135205 157262192 872076404 482004458 712984912 826806275 282279598 133465043 928854041 473197304 206214508 29578892 349088220 318411429 525807882 458233878 728930166 146683068 511660411 473596093 752171768 958491690 661856448 506521727 827994855 839054067 898437610 854973935 143311178 639280199 190416680 744741753 866499649 317991097 795976999 425533606 398272007 110998668 637226523 817231144 703487172 691377795 885901449 970249638 196373514 713822994 697419643 270503217 269525201 749466386 823773635 617915073 7662648 858613102 165997661 781501360 384407512 870319173 879491626 700273495 350914776 480636931 852177483 199756911 372686462 811924977 232007651 321277505 686576953 343810866 825158965 402938610 854210759 546436811 781263602 914173002 897008310 635158241 654265285 702261571 795861282 646865745 509420083 96588181 230827096 182886542 877746326 551044656 452859218 482414048 174527717 384808506 32500408 603341344 444629958 877751208 604487376 657495486 209972335 780757462 735360396 982004320 381488501 926215983 13647337 631845437 72724050 345265802 545779920 418676569 669968622 793217205 996223820 205629361 657595753 699581983 733034507 141611585 8444609 704018651 713462651 579625229 855165666 449724365 137278847 623645402 376194381 94594560 544999414 368772889 571831827 848069676 906073007 709053017 748442736 606005152 610036117 282167308 880583141 945106924 197085996 178377067 161790593 599010510 176228056 744909598 80035493 383754788 453133017 998616078 389113297 279351896 672495754 385643261 843291280 902922365 817143458 580528411 172902729 40002256 859617561 479172169 983327910 151342086 210654881 90399456 857856056 913007793 278735801 551204725 332790832 902628697 725789578 318734692 876272245 334116633 360887378 865272277 789383548 713582312 316036195 862275497 922962799 251919050 72213679 527755461 904411133 460943335 123471383 141113185 828907757 582030714 387205073 189581879 364196825 950820497 812196459 472741914 440636758 54480478 815600798 229987822 219654590 371478349 273737353 942528356 391555080 102974746 873518878 162639787 393736352 325902652 22840265 477825982 153058969 764618091 336678271 955988309 96912161 614530816 493747764 848482533 274600452 174305154 940124978 982919103 564049266 606295214 109820736 275176322 554370709 103924054 472460537 977667027 130090661 948016615 864243367 511272493 784098780 461512532 27840819 827811839 661344516 344975479 761739518 134944520 114287019 795351850 498108674 706060881 118762518 821119954 95569948 737962338 671632421 766434967 672971966 700814399 346694629 835360373 63676412 737802951 59168321 485183100 979139303 62159213 659907676 353903247 837510949 250349226 58299350 56816545 804739338 132921507 370493805 226017912 32202879 88822853 689557679 385041808 841678999 515735707 721513176 851762879 19629399 822879514 444837723 435187506 274332260 384028869 542183946 640631223 697438948 283649450 176811460 215126787 431627290 463845766 879956798 969017279 18671056 140407539 689227016 324137452 980630914 982270343 220236344 981919430 328518436 139563706 764606176 525278174 135989011 517433542 356058269 908869003 357371664 564690227 59148468 726460974 386969841 339535514 673183725 80488762 938947035 496700514 949383717 398983002 220150680 553434040 417501300 90525448 13251321 442566504 866163065 177692037 223097183 993202077 28891119 3068960 315176833 708413645 917514714 89814619 246734311 265565172 256907751 707382077 541144982 772912130 719453999 327453777 274693442 530638246 352924560 321042965 516437460 91176616 939858322 640407387 607106020 616624557 657390153 524093944 332579861 708570655 126295260 671183836 600582805 334590387 610052017 313935313 473740931 746237183 424082128 76875273 851294623 428260247 83799441 919805852 338650865 25841724 71040158 417826777 253621138 700519861 808824657 994367352 861327370 787978529 210428240 216285897 358430130 700401320 820421599 843960616 612098140 437543839 137788389 358388547 362401821 513598371 707769206 339794386 891535644 937168834 648779903 990249469 733641019 534795610 542827457 505861485 627638934 245329656 957297502 369106032 285630697 601555375 131278733 535886593 855646861 581159667 833614965 263737832 8071112 565281588 956893113 371454263 949943606 205984751 769522670 163468125 349988117 968646035 732734666 875410031 562776853 301659342 216352308 490056156 860497849 273675518 383331982 666946341 506533129 123747224 590258325 267789298 760647837 541619794 193335288 495019800 403863912 998760607 898280794 8741106 653496143 784808173 477151311 594516454 711681991 421512937 635577641 746092686 185864583 782121517 472059381 671889212 137987213 751556435 997046761 540704807 918115575 185923501 325267526 625121277 686973314 744739698 392695964 295538826 817147808 718901578 187544768 337453644 405902161 757001231 727459960 105838887 181895315 507371980 298793940 278571487 727446412 315476270 920833665 676560295 133977932 746042735 578522279 57795555 360563101 617472616 203501884 760207859 304055773 438170371 406829193 955529735 554083108 899162936 900739080 188747746 204102217 321217649 332133269 677429167 846186989 943924950 345617387 718910224 168694299 5298407 864842600 412409577 452966572 582588482 916274178 664037759 165043937 180746693 737412522 6996344 579122249 978883646 84823905 617922329 334867705 796201363 645164677 882506103 367065772 631307901 839374581 272566661 292916002 442476993 310579581 604487887 978258610 502365392 238503378 397271714 819216157 537273871 463617855 892752510 207364228 238789954 298708146 462318298 588281316 559255979 211847722 318174214 515492585 601989605 420968363 34248403 260060725 98000838 517602426 478651975 332143438 939866956 924701219 592255771 238856887 90686881 687125756 854831617 126740666 546613664 36496604 999677448 474036528 437135807 175077081 653840343 699151665 820849768 957865159 25778282 768808462 752714843 88231369 747841566 827626955 835239881 160820467 980486126 626667183 113549084 383276429 505966890 956706887 29818983 165559951 723674373 248800081 157222735 127397424 61925917 402298400 2863495 544500366 681587470 719909949 146251951 536537764 739004896 950623951 199184330 842679952 474568428 902747399 690527767 514370508 459102618 926351003 651957991 492429293 868708677 591773811 766565257 535660615 340258685 900106701 922262678 719542010 200764373 292827269 337098934 435484591 305707228 899260978 332061880 352423496 756376576 289188134 847626944 915825999 608084485 236600775 389126736 761276682 540298300 767334139 181289514 127351126 193013550 722545597 556254736 120443450 337698303 819910216 182716455 472505870 348911548 784524704 904277252 190967639 766918084 289678874 864938601 914570845 913765511 462739989 119109641 587647464 585852988 98706147 861611018 341031925 800465734 145340393 85863664 678272476 26885540 166093122 169042049 693735613 905734792 395818688 483825359 279312502 393801290 122688765 300937611 684318914 907514124 945194487 971664852 630026610 301506888 595190876 155944912 868596196 305695906 149018473 114390658 994021393 42731284 734272413 993532953 981562996 679097761 507024589 604135982 860323326 453912224 118046126 402992878 800666749 733545678 886262250 736855901 541981831 741516302 967827310 546416710 710944843 145964744 144939142 145848466 99544195 741420391 662660506 648779365 676925828 740814497 485952739 743061219 969333430 978885669 373898987 178633341 703228493 782413228 501444771 355845702 97754196 530041522 803147681 157123218 743884950 717483761 267420856 115448190 984229574 593397974 845574411 106914307 417631202 453936861 394220758 393107876 30417291 197004790 984900691 516316203 679535377 604546545 898473080 991085719 852274538 397307991 431957774 165215698 452492739 379764098 998249073 43020394 987575353 973157903 942095295 316105534 112687258 903844357 507193453 399634061 152977488 915381535 256905698 551961703 407813271 809844195 143706627 395783147 673323028 852326440 859131960 853646814 693478236 722045986 637311004 207222930 962920091 366221358 292551491 956100348 418686551 388797060 190694909 442490541 664466564 917682099 587527728 328341570 984559665 183602057 583486750 744547914 464693677 207257807 987458219 568082993 582612075 812671225 41507207 592356734 512832612 671015121 176673946 799209151 315506731 583545963 60306747 44395593 597757689 475496872 912457839 925934668 942184365 570900447 86164351 874059385 521012757 2742727 122968443 192013980 83819196 766977837 728866418 120414284 545365155 514738382 573677495 322516045 499748239 580385987 262929376 767572855 238417374 694277879 872373509 322529067 127116743 124309853 796909960 754025164 800286458 501775662 671203282 798393234 460274868 48096778 805658741 972576134 33531594 285223045 577275157 189777956 697189022 495945574 339786759 616745097 504763054 751455827 254806204 673367232 816462997 678628732 542776462 442183767 469061797 252104395 555373875 367717474 491147637 768668542 95820847 837171351 969387159 647007766 558143147 968602234 431570430 511387963 438464135 487956410 413330037 465983999 1398980 985818830 329946555 737581376 117507859 866685869 673794655 444420999 865938755 360581670 410647386 563445615 71357691 454621562 299325966 734509800 963978451 846162568 731111865 675218051 972018150 750290046 241723045 383272229 320456770 697763398 190371797 108302811 231480531 493610129 387846322 861522481 662688679 546043017 841171311 808186382 40441398 718928753 464762582 40079643 487698513 488773925 886533332 665352701 910040864 35518214 214345194 138065558 831947041 490696095 793455834 403715678 622730949 200820897 519222972 362423939 565421809 93208193 855542971 884201716 750139986 38246660 749971256 782263705 156754314 828789937 806355610 459774492 637766984 807731079 797022617 777635882 700901722 934602099 737710006 729886388 445122501 921274456 911533875 922270252 550251517 222063202 641388997 107932559 265705386 875237157 928343169 276836757 78296791 906151041 900310464 783198589 138838563 103555782 374045127 687823262 618428411 395964352 569741566 684510808 328696097 189820521 938690423 565171817 480020757 91828660 335284626 664577728 447123218 24857535 164616933 859694132 796620845 623940771 969243034 290172135 644372889 674018004 348225424 643394985 83677853 906234782 279512274 59362061 10869430 705108078 922168065 871969540 399701902 397115101 347130816 112122645 910258644 723841935 842262791 8410410 728592595 384568943 636801657 694560256 367429153 64910749 355280246 996467389 279462160 920219711 384699667 232888249 30667992 149393200 990881922 567043406 698384849 342571426 289530271 187046319 721281530 680851434 871965975 622105072 444524789 867014551 716520919 705300320 883605810 272882322 918055980 51086346 836671711 954962957 832561629 840184063 536974496 314506056 757343805 28513583 655681237 282707785 132856116 374448503 760141822 582460445 45799566 275512435 468366690 159490431 184498111 299677599 644465144 463756509 732592858 688880589 76280834 414698299 779825841 8173835 443792339 11770572 736967599 622263720 590837139 801493002 69734230 77480199 364757728 693767635 355078592 326285311 193637609 736425724 521844445 641419470 212694980 686730543 449367418 912334852 421281267 937810506 667568530 872656615 357635965 960790391 163480107 248545790 911795012 157675940 384147474 677167927 129774238 220349334 907856252 971281539 354820903 474747472 664239159 337982341 566692520 399462748 318312264 180466195 937164434 44146220 4178026 55530253 532012088 524855584 101444522 359664222 61265970 584117732 668571936 804849601 868856191 447280556 682769410 6678937 832614541 391688014 281142941 925441537 829665947 708267329 986595928 634879836 63837498 161318957 741183172 413066406 708455732 136965068 423740686 784343921 331935691 206940585 442243940 534758686 779066595 915970094 176445174 369021909 936541145 641249285 404054600 219688356 10712418 956465682 741694855 437762958 753556262 782767160 448825837 133570849 558308769 926313205 789078494 244079147 863137416 499613524 112955444 579290194 337281861 16929613 174016608 591901336 282865526 88075329 14622840 551850812 806945954 691274344 287042439 804761782 683493656 756063233 263318017 628916871 398080858 112988484 892251443 236540282 767988776 942462197 282611950 930813107 993905656 721854169 817384311 245721714 849458430 113787037 408214937 656841419 922945673 934262595 483413891 177077229 332485034 700104707 263944647 340143357 934901117 202573436 121684732 794834667 983547808 139688601 419354546 265794231 640318885 997340896 324926548 142350428 304348007 36678339 687980674 490919115 357549208 370831127 720984873 918240591 773002841 231634525 158969881 653248312 709664068 597831134 962866619 75313350 72902099 362886585 662884718 271179522 449597932 89291319 971692878 88757369 251298742 257232341 480544948 748091521 834653960 237262993 709632265 205210778 503784243 442010146 318439741 947099096 562789800 853173707 330992144 82707484 17100545 790938089 581207517 188330471 827286276 460258853 519029385 58695245 997871482 432857632 127260481 717275337 195790798 500699824 750491017 632189186 13866799 79954012 457149459 289135836 526663942 114077287 242629387 587461410 596350914 566119534 305875493 416700784 953586915 908440119 634718036 123978495 222426410 746136930 429747632 198140236 930171059 75382426 133656416 642795382 166732735 279924321 547570249 73342362 598638402 945233222 324689601 932605488 425762716 677622509 154688477 310481306 815102666 722444057 492018841 978801793 701023820 830417530 899460423 524619557 793069413 414178823 659089243 138251782 848721040 756201281 471199378 934961861 237528146 377029580 828512782 578537804 780647142 381760947 18904633 623549866 197399556 600708660 235330940 932954774 971608480 64290669 591600652 845056008 776507306 718524393 59638261 901830406 13934003 955519993 723497329 164607809 786734254 256628129 66993175 113692951 458882349 236115145 359776647 265615512 605443419 927431304 269683432 714907039 166319153 851662784 462163755 130110389 642035142 838597028 893958296 955665661 375720364 507999044 119897910 302139471 395391 669927049 431207433 384615362 851082323 455648822 872914779 653116532 234968194 635662178 381282211 331578439 714580930 288533036 144762529 766350951 955466004 318804667 272263050 282061934 931935237 729647023 162296715 39282526 640101244 909971689 553036355 799909085 836560320 283358060 282175358 365296116 176671989 689816823 209106218 272010850 876542527 448818391 989607776 67487251 543765103 446644528 854346399 666368887 435085098 903387102 910688012 216255276 105438201 925785791 687615582 867692672 573698270 143847467 884578735 98700501 812148956 943459159 187456268 31916018 721507754 44283194 471278983 861988844 982948841 504889326 71786487 385581099 407415889 321358154 980795406 728703846 393762820 709551591 405789618 862803509 569009879 624840123 863978505 475080412 332621580 547825313 526388275 425235602 664924737 381577918 141098162 47261602 93377336 477766478 952904515 63515289 760898101 862230463 725111982 921400116 970864310 492470007 15681896 123954966 222501433 443059383 542612841 375300028 450998673 992569476 49621020 97934741 555754754 913861502 769476012 137642529 961457112 42125513 668996891 325804150 139755897 832226883 856173327 793359587 513488347 407429329 60930162 528125988 951138826 966301390 852601234 722054104 370262535 45857529 843806660 71053285 229981838 939885067 857610441 481833729 973232230 846375461 881745382 357036756 538368987 103805717 446712040 367660678 83882875 236714295 662602843 728222024 725441942 542212423 84224587 243909221 492020945 854503404 23648275 414210583 229739909 873633026 288638597 112746511 502604765 7506519 289279850 9925334 464819624 579448339 406201762 243496268 918079216 548385855 652954582 166846441 336736267 895493094 504674003 831795937 157591060 532232639 587404357 690217594 901841495 456198546 164259671 660031700 915480249 919106201 105586160 200079947 631074335 362207962 633900463 181586547 278227362 207855853 253685435 998441280 277793228 969444928 167303596 993850985 912365568 286680265 262929220 213680231 851234360 878099996 926751126 545088874 869493840 230055882 195276617 537884540 581587583 215176879 654588810 679759266 753831041 162552708 414763571 820503715 553823337 675789412 567241615 783820211 99915242 698803923 340576344 189968284 308942758 525392955 94504174 577749951 93986770 703757071 286759321 734927848 889817796 223777498 479934720 769656722 798097382 658965689 566602360 826006750 646234148 340058422 343904931 428944371 810669511 409917863 995844914 46665782 872974464 40042938 368347755 423717175 339970168 997418513 605900757 222181936 796405395 123560270 292891107 829835831 366368573 521718662 745336381 347522470 93529032 94989813 299140468 624231284 992924711 160274455 161522540 422071088 31532970 911009465 580677110 660091091 61415252 405003231 502078688 612481981 88935875 267013024 423075447 22663182 736764317 781832986 565989149 43704558 496630421 689889298 349725493 568964049 103229199 488314390 505455877 958527875 283375527 785005584 816019188 69545767 479093670 282091396 408200095 193417879 996148729 545506682 283237354 39203521 60912564 364726222 709312317 807228800 166798647 364643923 380395968 648795666 975833485 191133205 893572714 138184325 762165845 2227242 248411883 247503948 914582046 375615827 389954509 65890570 57825711 435902444 132595261 274528895 962451453 982114351 526239174 715544843 241094181 654384449 242581005 930425969 994343930 65586662 642493069 950061730 728241077 776938514 285099014 945993801 199119085 526995392 183266432 46186205 390048387 800885745 442746900 101268510 329832869 293417652 364802221 482875583 159571091 600017158 689781842 594494941 102563024 165504372 650537652 668416819 471801442 971218817 914268072 162407252 647507559 620148683 423864965 529030024 19616980 200493620 163834129 614727866 210868867 222763994 602872448 783450038 962566076 612269777 475356153 236103070 660189225 235299173 560552547 330560885 567130334 656781707 455053895 676753822 334876351 726972526 179969889 78969483 633018279 524947305 345004465 769116907 347698082 118931595 890162372 348390281 961634255 815046718 990902083 476278926 557330525 990658018 667414185 672486187 171578334 126836467 747854545 694792382 302640546 947369377 189089596 376845466 744741153 616826376 591828547 439813694 937909348 977205577 280868992 14933047 861861925 635501951 931253190 732948560 239257518 502725103 873582606 204614205 800389055 532341294 180649007 828388137 74637660 443354642 112437231 57282578 720573389 476165550 259027510 825377379 188098516 267472512 479574319 194935342 128625917 135570586 648975771 332691062 854808626 215298988 844156472 458240642 663653686 534137618 390868397 783226844 47981823 716490804 698963577 425381470 826698708 510548979 483760196 307758023 594144419 964265980 918339181 535472796 509205389 386318494 808638659 944701523 174586959 426515184 940455321 488914234 215646669 32654332 466319909 730305438 743297187 568897941 629334688 229002487 838101280 819367720 654579767 73131652 719578452 436160478 701119851 6295573 288140604 957769075 770105704 568875704 759236308 435265482 183339617 282744987 298768872 862571889 896625816 328603874 704650625 757534761 554355418 870031460 95277979 17648139 98258365 427407075 710845721 915054368 251961065 850251715 125760437 897673987 313738774 457524820 787145820 30394 480567302 122635119 680001862 207822634 868144845 52735854 337308938 122770832 312333872 5297728 784900626 727375087 233251884 531338827 526989683 579836270 299071538 601445445 332563097 473478121 162594250 775232283 62578185 943142497 68504438 27282398 734309480 875032994 806725697 588073948 208650563 714765284 582542588 836254057 575340606 162069796 538129360 495840632 345062863 324544594 655731854 892585833 255919547 654095677 443174620 360345698 937610025 268369936 756185041 625899175 787017373 986463431 832227321 552561401 308207819 482416681 892880498 806101777 556504155 602444444 528006105 247278599 970850640 339547531 194164632 507538834 683706907 642429065 68645841 955443827 160727910 621565388 223758190 126789994 493402825 691663642 623389908 245166064 704188711 741409596 457319032 359925965 893283364 366603478 68877363 273164774 621798967 105837642 299904035 836356011 843275647 456603516 136716024 224543625 837326413 927321782 842088937 182855468 65547500 406932153 228619226 290300702 919284897 796360065 659600354 801723797 841622156 262203421 798909836 185339285 867495943 500274607 662358859 315358171 450419152 529148224 883820034 888610377 138396892 733164875 388910564 961655651 196345422 744758440 768659833 583831160 517890822 472891101 828014917 734290408 893570162 661282165 667189601 694396877 458391914 641622760 823996181 308090726 899760324 374049392 700978786 163459543 988364177 733875633 863534107 491497381 409389574 606203388 271267036 409022356 253963209 748346714 748370591 563420513 224288127 648011418 134779169 153475415 942015192 916632359 53368081 230798131 820907461 195119691 376789705 630178948 702493230 59520783 531703961 157224224 162458634 684666857 763850683 909536155 434889259 416048573 893463746 712049625 440579455 743148800 791614044 222673116 718494505 295685688 413645655 304637150 739859403 235403693 784556428 824073531 108945907 290497232 691989864 757681709 344863349 655402361 482501310 506305855 888520719 609262647 495897636 271236814 209391741 993800178 97522878 960756694 564808403 79995352 206302617 408865729 515669378 42807258 936574647 975498892 526561475 110065791 280991024 713911137 567371319 867216702 120460322 25662 476085438 442184812 635648197 519243908 768682419 3883625 406755758 90652376 501007905 495679100 557270236 797632702 165392288 856482300 848959328 527302352 82323713 637238714 911547059 412082047 168533491 22355571 920324170 986271603 692996496 24474796 602708004 214279906 689766625 550972983 26398098 729758624 359517991 919690795 158613078 863634490 6431519 617213793 259119165 122359409 682616082 366941149 364719125 306524289 542389727 742856368 708213750 398469242 796037653 421318560 211111145 911530315 367537264 409057852 905647235 624120727 109294292 547080857 214377265 340763886 575764947 995861902 32902699 417028122 180788063 961577622 968221484 188603937 106879254 153959917 448639660 37260025 274768689 101206095 21999434 703621967 301584758 315695870 232964674 273118730 88839808 131996181 688852127 857711241 79165823 830075092 438539838 682093266 931488450 132801618 181443716 231984873 47792832 974423875 804525920 158416261 77744885 530331951 392160460 55904942 648494981 844990440 254237575 57264631 849261552 145195708 596279209 939342428 341240276 879391360 614655645 917232220 426055518 939233059 281694257 391687372 466148837 354453760 788425876 824389705 454819310 337928468 470269445 602324323 160831947 693019182 772394527 380065033 866282049 804717056 85465330 753283913 869281444 557564706 195656929 741200845 860021044 300716931 54025727 858066317 594964121 809490483 158951778 601161893 569579650 862542526 412354809 599536938 925063645 577205112 284097946 892488909 618313303 136328388 899287137 216296763 418094764 880540899 277873147 826441015 267703788 726869466 560440781 803229846 113334611 541644860 301219243 382288924 678451809 959593381 166353843 32498888 108784241 686750872 543458400 681658566 388431749 845537012 953014532 897557811 579555271 161829010 344551344 711755215 677176053 256163265 583051809 798910488 945987668 87169532 491031747 27196461 392136171 423967080 801763386 979604567 510367391 988807051 83693700 479361051 850901550 947300231 14863039 117994814 78969947 721785428 735609691 721059223 486222008 445831457 943074627 231966335 684145086 729557639 689053980 232058462 374129731 308629799 134317454 205194247 906436321 733108092 652299551 274171281 818850743 781974606 415616428 893589614 892700029 429552313 675944256 455471075 860743106 627399585 71425685 631375786 127462595 365008970 861891227 960647801 209460784 69459929 8753068 539632244 589737788 294315672 975185965 356788898 345171123 838607402 466930096 286800749 887517096 563762549 291885215 304106342 429293829 990963170 328911516 558759098 44913178 420581545 8450252 521547551 341175216 830626448 643769686 705098737 624283226 644213295 47612429 140867674 360889057 231174876 145078365 36927465 701572381 50690481 642325668 234439049 414813142 705384028 609829412 651352046 736749229 963560168 255328598 352667968 598689040 563129445 183233934 517170214 535446728 99586773 686475574 299308716 63484118 938345174 331325198 74380562 83390404 387309349 195843512 773840038 918964694 392645602 494182015 377283945 879765670 745073536 978193518 857187563 334073948 708667837 640229575 612439140 328758793 464997935 106272339 309097340 76446244 919059734 698110256 256222374 285029802 49658111 772197453 75374376 900366414 747976905 358841389 218167362 880479153 119854085 129610148 540297190 400737388 23232700 406022021 714590763 808895476 386573453 34862382 778186380 86412574 376364834 481773674 459421701 417030559 881731685 740962368 61010447 522304311 829737719 883507448 826985041 220797918 450689715 489310522 296698401 651477962 858151928 565053665 154968587 665106126 329517487 848646510 504121177 903233816 567523899 174945357 941843214 999633802 167009762 84755165 99240034 75259516 375694264 493434738 465116873 658613606 765907841 863510432 622898694 449783466 918896496 819816232 702796686 943755325 656555046 391640465 328384464 63498011 286891631 620906293 317672759 884555940 738065712 358348078 544982921 561728016 904535533 45415812 782203051 639145039 905751402 325150500 397872233 457701704 49871380 974725305 190056812 537205820 315313801 358378002 727101919 380627760 621758564 952295143 672747939 610456217 118295826 392459928 759115852 64333705 378501477 674608135 331150818 442919518 535309728 127868672 250968379 834355773 38151758 732947254 736014325 608013530 612638081 173680927 830219096 554822735 650700988 305028191 636987016 120720427 312992214 289297333 832797245 165229266 175899691 552657784 795412799 59973991 761378933 391527496 202732782 716645839 236527134 489737778 765679368 214533927 799636769 836003756 977103916 400710842 350573736 302382794 764189289 829699757 158312204 181651024 805854997 784966869 605644566 580726675 943813362 817726254 781974678 240906400 790845236 848091713 457248635 555526968 970715551 832032185 488594968 163688149 305364843 838864891 692629315 387428953 59079795 997147417 406842476 377864771 400561608 974680681 862107972 381303357 95870883 409879267 975350303 71486057 250130608 359679954 891708635 238849451 556396039 201332890 881712249 405214221 482696151 779425359 36799919 131924558 552636892 142443251 107495074 160548616 624034895 805655472 902448486 127218381 292969173 907688722 79569584 653801112 120585108 952726444 408401281 131691697 567440882 255385167 1788963 774761129 685678840 13249413 517623124 808004888 842397416 822565727 594489871 952867897 725496002 275715478 830453198 585399585 187739787 383574534 808770277 694306550 126586455 378568592 991606956 545579734 288067443 829613055 102980814 252023955 797988039 937628412 468566885 45962492 537603592 463048056 394552619 650511640 974659941 669681135 827628576 124770606 884065123 50395552 220475566 109789649 718645792 416991984 874771460 417485181 74242538 830181146 821070222 847912734 778523185 401926526 673092774 53481393 464735216 970428619 706531001 322425970 86696969 68109045 126397736 847716926 655715711 98411836 682972517 302457346 784777260 297378634 457168944 508079039 613050017 993451492 736924827 351673858 574119952 314740304 944607461 610794465 665661113 620538272 540346145 82225905 872349338 109169342 532303116 819860361 461144103 242606221 941570800 467987750 296677145 451059423 402071927 605232325 644972822 501987406 668463772 162633671 23886480 489028897 877372046 610162160 425528392 428642219 400983234 867767044 698146293 611157233 57579040 584913593 706791104 448857495 322177063 698865240 393030519 20781632 159743830 800817593 958771122 659679157 848684895 144882541 208158829 197217247 363970283 441272946 905932777 422307430 177220227 220897200 516299672 973550235 475490196 533515619 717507163 104131481 604461347 439495497 955238676 103932298 673433820 814971297 417075811 652902186 908980201 258387170 997412731 492429867 795920307 610632660 805898972 976518829 531542256 999733609 219330641 512340687 985068818 779916015 962337653 403055679 991041198 310756060 919977213 403920681 481938547 789122676 127692269 773656700 239496279 73463052 32441778 59082707 627399952 560719979 77777336 326214537 95557898 374121738 181572394 282810679 814144014 476426594 677865753 296712501 196362631 771875302 676370647 815029193 745157023 14467774 532382210 607619879 682938615 429754777 579106303 959477517 149099024 438979554 653551777 610624456 436320460 853763904 98609617 490253950 436063913 695828478 894679487 750461907 654901785 511031349 584804220 748189359 469872839 229896343 37971392 43759049 64524452 109782900 638030874 184333332 133401855 292114050 987229128 885400840 731685964 919908394 541042018 846049449 403551004 372208299 882184395 168473164 827573432 105753050 549413442 273008793 261101584 143168811 720619768 38212041 161205708 181614098 834776478 896276620 374074363 822671777 872190750 711938857 852000083 825064008 90696055 594586090 96931779 989018441 657333229 741035177 13353470 909442728 665534794 198798034 616914311 655177769 913186910 541062718 437042802 642946577 559279739 925795998 139912157 284515903 578580858 586452857 949673049 831724860 804702645 88206325 730923202 328020644 595157279 694063523 472808312 885044793 640628832 203437462 349904464 888454942 921790477 939488649 112573105 577206222 700047442 947612416 559566850 848599590 58067905 586922086 411091079 86753503 732873255 248579585 966961568 618776372 766034751 217084984 895961605 416088860 429534527 363638724 168418078 852328397 568403022 985924649 844409988 238613804 878586582 367102707 263898851 169847089 837988804 383609990 517508528 21738898 991362273 572845608 221726281 762713791 643096770 211572139 180920361 579953683 453588214 973920095 738185948 576080189 760345212 277728465 213754316 645535840 34666947 586940407 147206006 945429752 559312977 704644596 551093984 708222609 11192898 284079962 862759895 417467705 870967707 909654677 764860546 60653436 538411424 903066274 542579087 605797970 260960852 934512424 974930525 45114150 780029599 172411111 733017506 592336133 783047361 728960878 826217119 197248644 514184537 654088876 60353916 341187430 172982040 54083689 800317691 923453558 493903293 82331080 20390299 392931067 423630051 707260987 584172064 794753762 753774493 624203443 342928959 666896961 542839776 448284512 695867756 58735792 521738937 306980114 610664351 57360711 265882546 987578979 397562300 93302161 368198699 536512865 699205186 476652524 430811954 297467821 400724371 684895553 630720943 918506288 5281242 321461605 763867306 639205976 617486617 998765595 637572033 810575224 97982899 416379911 288038587 531478569 459571536 347038784 628886805 906987191 354784914 510770291 269822950 293806473 622509328 632878191 749886531 138042749 914477227 818727019 957249933 363236828 486794556 472864364 897816320 80643794 385800896 616416785 305217121 634009008 154112304 88755188 500737944 158460075 431168019 448949075 741374975 829727670 985028958 879691846 126760438 629777887 958548458 635217346 377736420 494079127 293900390 837695863 615615297 502517442 401448759 948159483 194215063 727417231 222124883 95381635 145185821 699199725 197834878 331077182 610351119 876037951 335978098 987511854 982336041 312974356 140125438 74477283 117849304 427018252 764363872 526908004 756288097 636589784 288175914 696493904 653218998 263402303 720240571 694460866 931957166 785166767 948794697 330569715 772638351 31165114 45731650 43381325 302267204 50656849 58169867 996275243 317993031 678929841 816303503 715900112 659123050 242824027 399707746 345305519 65234601 678925010 259716821 355237476 836216671 63807300 289372314 342328045 767125996 9047107 864632721 411275415 276137711 19445892 675113476 950410927 868228570 328108758 450897391 751300797 583769444 66507513 457391769 325378593 1233631 994507966 605371372 143326093 390576941 898875443 672539584 441899409 629220751 190827415 37380529 791075548 880837266 179795353 988015909 731969413 144485499 847268271 534958423 147883111 416882508 116472109 350981125 204378969 409137792 933487886 915802632 868487695 364095898 288478754 944664641 429486307 300012961 891595103 173770335 564429987 491336069 37238370 739535767 186858930 442796803 426056726 741277094 855919375 342275290 543924716 684131230 17568688 513013471 822195016 344186981 282467449 146462233 162734879 915160988 153825297 783192015 14166820 534292394 147401858 465139595 403144927 923961502 119321834 621036080 478454580 338961007 338181109 33549985 378282251 234338963 639006586 936576077 350720600 584416391 123418798 769252331 821641777 417922517 560581232 426229026 468880447 837434059 593440434 592897078 959431241 183955957 526200320 67104653 955217127 378700604 179109573 532381604 551239057 59002675 179430911 293240908 638594639 318030704 925124943 56599623 464888105 38219480 573868463 35201747 371056061 951161145 273839901 580402114 997809650 297494946 536541914 827428682 86378959 507165523 874318424 199028295 725860452 710709970 295303961 248086106 596424179 150022069 947981053 303971793 255847362 752292553 412218818 468030226 318437985 501639488 340300079 780879632 722957109 482323230 375474109 877167457 643748869 793628151 66969842 999971660 226547430 574129090 465143926 717373799 40697196 592283153 370688114 35391356 609111908 342347276 924802341 297163557 802547294 921355949 519930648 481547221 906639508 985125185 390756042 742166583 25589334 614611210 81757858 70313310 471556953 395026970 546847365 979934668 628935917 37600585 641935443 763196079 830285718 182776991 126787780 248583903 807577682 247214394 155126326 138888716 77684327 132743083 998257944 672012780 158097762 758654209 158404763 524682226 126516660 954386900 372289434 272303179 592343685 95305071 53542233 704628625 858568140 643554600 843885740 952245330 3085677 936822405 593947528 925345117 197140446 670821972 939038112 797695263 457993801 755931472 483254132 929988072 169050176 609108278 732525374 502934880 205777756 976601325 990574096 213677077 493875115 836815748 879310040 163844691 718623774 524545627 631582473 406641337 493378455 452171629 329015644 91533525 787816652 252571277 804302650 973912696 958465167 950663754 697817563 81526517 227824601 596872073 15363956 246437688 198099418 300428461 228559443 130203594 580073583 946434360 415912880 506115078 538122112 18451690 32141605 112177964 139574832 427706141 326041400 733106533 174845452 306388876 944014545 730077348 235953162 481602662 998975484 778636997 509605137 934055388 684114261 305929778 483537784 47364690 908264561 833231295 729865307 601294112 208635913 46469323 739879618 827632441 459007570 207023416 590225033 147689224 558191951 916181173 680220269 638242700 426525082 458478056 523546442 480238425 871162673 787195457 829621869 834539440 118358644 569922718 402884198 945520353 873008393 663549081 942605385 519236624 642328159 133441015 262662055 537717784 606865813 569507513 421504962 905717504 927215949 148910903 792752346 329089306 643662093 940891931 196980975 824393134 795620322 311025264 297603031 601678376 960830813 30729350 129318848 660279154 515916306 99645860 5527681 712140103 189256480 476538363 952741617 695035927 42533490 612859972 424040347 934247359 843350533 883750704 478515239 558152278 701772911 510787726 386326329 936158966 706779757 320196569 259621043 829618771 718260283 944978318 585778027 603547793 116387048 127808666 285552853 170142763 484430146 742633668 624351427 741517330 185996240 365580430 739747327 527956372 533304770 348381251 466658221 287727177 579339386 326053017 245517026 727691073 866915707 631670025 64645898 795665297 171580399 383711022 899905882 529110215 367329931 443444033 2923886 897302296 976281596 155659641 961090456 758938148 198587086 775161694 936499184 928145089 670925534 65764342 1932815 509874743 41141739 968285173 972997016 698810364 920638879 168549805 721482158 94930396 541354484 314586666 916964127 28542762 371784013 278523865 159262074 75609060 562644238 477276665 80108286 744883166 368048020 84812505 733768587 262828900 259993870 635417920 200478326 880706450 448690761 811438177 749799697 679772314 578037266 857201036 28252535 944272036 953907725 978569835 596236277 852416061 951054172 221279573 568242742 214765393 310842523 191605076 63133672 485253496 902188927 391237377 315928422 255513076 918974077 828597389 444306267 25269492 162753589 912273803 188412974 777169256 368260669 237684892 662048691 469240783 830051240 6023136 709361287 69292637 805260755 351773920 610342936 454595474 421947976 479228868 177133047 782364379 238513672 429240949 338259535 668250453 869895765 815103167 468712570 70257142 497143151 755307077 188253460 20908353 950129835 628192372 45162039 860586772 726448621 578901205 564589797 886974369 388654650 698870625 185232254 931558642 68431133 747317544 687681488 850675130 200307044 317320822 837225754 473388279 753020214 366048354 554297526 584405645 135605660 233780458 750578241 732060464 637507951 539211333 444509918 668270510 406748357 811328713 839527416 965145047 239670316 382513719 474155809 42367478 647175727 565477709 203395843 970884796 848497409 655362194 22972105 61796714 124956837 298133172 877956814 688442557 40683248 202308700 345114680 634167726 389857948 63436332 573471 861943534 94993326 211635720 247867913 220494353 365397018 744541609 522114184 593296325 200559732 87509479 996556149 28728639 829237564 679361836 686896192 842659820 913346113 217430573 301526392 468743559 876216216 932986399 400441692 424893898 457567618 945086376 588084205 456850107 485788083 401775503 101831095 645707303 344504349 353797955 772937351 758295601 619187350 782021555 50097981 800533609 661034180 266921840 608100995 750528706 163953393 526872341 744881757 235701979 247526334 149413566 378946561 841165526 139499369 37048932 369360272 333415197 489065521 845524085 314668005 855606408 930602768 956805712 691904731 975689559 28368712 918295638 961966039 500529490 508298230 623164376 428522681 194859145 389668672 43514688 894182787 970410886 309614663 326678472 745362884 814425895 656353540 836238409 713233938 123774000 934204974 561527600 933605187 616732008 995013883 241554712 483159287 395958363 955729977 411253689 778626526 285991693 978381008 306270055 312754344 891706845 264084762 224857844 529250137 533721863 721634058 648828546 500009850 305313 826469726 430278787 854086809 371078800 726450258 314704433 50418659 300331542 460486259 946080533 154323290 578677730 564236945 796869768 241482735 740418975 559312812 326308756 659090301 99442806 742047179 831865550 119869980 247716830 876837410 52237328 850380856 552606743 61884021 313121427 9442629 555102500 356030629 587098270 196630355 478602290 325621361 962245022 157749431 566017596 606268069 37469845 185942946 512642121 527215791 233675945 687722353 582575873 786831092 723735605 421679323 62583128 930728338 353510588 217921528 406645393 949120136 16038970 977311329 561019464 198457044 988937725 447523229 552206170 899979255 191757808 146815415 774126342 533374590 912830857 718939261 196818697 365818989 193568532 57936258 861672 905507319 747520445 107473491 15741799 828853588 827270725 665120953 821496075 103565130 472337829 58578030 263776742 104219727 466341500 146197761 872712074 939620490 875089433 559293309 196808785 63767792 901171565 595596438 821136195 921440559 410764233 846182166 705676961 647407545 122533767 773093363 569115007 72532836 144287037 428704877 558836304 79115003 774078750 967385425 726779049 329497147 442173627 790708345 338515907 256592406 640266226 858098486 97009643 224826342 61141924 223633357 86779952 969625396 529458709 888496225 159179825 809254478 566878439 703748468 186048097 410408606 817021913 739131273 836140711 483881283 469545594 73509706 457580767 61041541 227431074 545225778 980934807 579631598 578979829 347705171 864469580 664683692 707836329 91295412 284656900 328394555 154117510 26548 587785234 801728567 427376371 706742798 733425222 132881929 982668069 433025851 892594757 340541991 334232066 565800452 713578202 876888735 581722012 465949428 994308455 795103584 794674496 783764843 757560156 350971225 612024534 707196619 981187322 542143023 268131214 721862149 123459578 604094703 581362729 59798807 863046991 29121042 846140366 409277503 781212806 795735387 715986823 839364481 520776038 393707807 763149105 49068054 598484290 71228298 812639007 762723609 859582051 85213310 323667388 786208225 710898675 116305431 719620071 794684703 885612062 872014228 801005835 208564400 309144165 140678666 641664993 477896528 369363826 317276106 335906278 58406388 942769119 235143832 286542415 511161560 695253634 641510813 956679765 985047297 769516384 931747580 108056500 974912000 222744288 210646864 708686654 351262250 611918239 511455878 563247728 507172699 464049752 292665950 116366452 52664846 140293024 873221934 123847215 496614056 38575115 176723513 272175396 920333795 699890212 4457267 312030832 119204520 525728990 129922014 385879986 435162845 235219486 138540773 771858651 673136750 149369922 348136107 895622466 831494067 632522167 280455025 861241021 727986208 319925908 558785759 881607586 904343418 629443891 77888217 503561205 846088026 906945975 449462604 308191115 883048489 829409893 141882822 17026017 413289085 967962074 190221045 162962363 403693866 556394352 322023339 865398945 843950644 468497514 337616796 380846437 392546976 704465643 425347527 249373394 830264200 472045241 64875412 146025071 633604382 592062210 723418702 42225296 514529296 921189322 641246273 226385151 935420182 304663139 235817824 334833993 247676166 423898403 835137772 312093122 928795164 462344451 668014718 220673415 835071050 743844139 341103597 869764856 652297816 372386663 815605076 274122616 740200603 988056696 636716831 212940486 26571638 267698734 956387303 853081897 890200837 260124377 204226830 423918913 37317459 702847058 998244694 110424162 798391147 370423688 867164534 794127876 195265245 751063868 277732851 800409875 842038377 993302204 803069442 100063953 879556340 384348571 264925277 130585057 967796756 404507154 611443291 129861099 53529416 647176433 204002432 944966910 245064019 461613677 181993106 965501308 470802447 572537109 827169814 485260343 607943310 614585741 701885849 266132978 812802995 963378600 428941782 430280602 492374779 11352655 388297224 682145780 78148373 708653725 988963939 948903659 152843016 355607924 439882130 879445187 248527251 811402941 637054345 673668479 411473209 899667299 967621339 424103749 807036158 277853236 815065654 641047657 831230410 623615372 523646095 511000865 475425707 891181751 668894335 450546070 424999862 935296290 773282385 25872990 607034422 527962634 388086500 95967391 393617162 573992622 596349356 550585158 104932209 455995498 966940298 468104880 174818601 59326787 229525144 913909782 978209806 72329076 442455269 572343198 220084516 553681579 177506024 524432695 1985500 769335006 687317432 769325814 402792130 98554399 64065287 432515195 491681887 274047233 524422395 701679995 2754984 88185968 667563091 216827680 964438228 959365560 519818839 792972667 499782723 954920154 160775048 124256988 586105485 545040133 911430114 549932421 699383390 143844185 300858165 937410495 876728562 828404577 742956415 432830837 784664400 366523854 430866806 358791200 33042495 533252286 94507988 447519844 786123255 433372875 531052562 612427139 998398359 535676421 832973142 290499370 938358867 469475851 471505183 748758785 119174546 976071812 293943810 797557390 114144123 267756308 97607785 424840181 646300561 243776273 169805202 770605783 388366199 434684233 508972534 711483382 825335384 414505960 810044084 169227168 631010963 400400838 371450351 666492362 483359691 181513503 188532993 422053803 465025282 233539686 237099102 585491797 185852362 422290850 578506761 177707850 102292715 800825338 826784774 681255208 539404174 884568609 586852159 983176421 818975201 895781363 287650221 205264139 336901151 643724432 840152556 611443344 611605835 540021748 602347241 624129553 978645224 933710126 574104149 702162939 466992800 424682132 678780647 816668101 43369201 926431622 627694976 774419705 872342073 429101012 229568017 661125292 286188458 849206659 161230618 954888805 333489073 662801922 628198463 397927103 602257539 350159762 697275800 121984811 507761461 409371672 409271959 488008196 176320566 534535856 207501116 290685271 704236545 139841055 720761954 564126288 759019662 226881830 356176978 222620256 443591645 708823771 74246700 893198070 681707274 79600688 961300503 958844968 495434309 716851460 258562345 702607216 815985542 270810033 112902033 746459834 719265792 210440152 819746829 348382677 393781360 661182805 536477500 40172850 313388482 831354881 538937703 202596887 867163877 805888063 706875084 958685450 247439500 941225369 139856153 835597112 456219161 674083531 152710496 59775186 10384358 573589579 377173376 106987204 945313936 731102720 788546111 246314296 749551889 571049503 614368155 713398128 33416365 812905571 159415383 722204726 940565605 445720830 117693795 7918606 689520041 392614923 112406859 319967265 299141082 307784211 570336607 193322293 209444346 602842132 133463401 296570722 657499573 249004629 672851375 417077884 687253653 765076343 727480677 374305806 183485479 333172630 808989734 612500607 276509279 835277822 684274833 247045369 584438576 999483739 565310967 699596643 534393090 337735310 512171499 341460855 561581361 888800886 80094544 987110839 294605466 626050045 553860780 179855978 349075180 901594090 436957096 645333807 899472107 57574681 255824078 417112177 685331436 567846020 63528134 688682326 308610837 263492628 478313070 317052563 695221405 402147792 375558261 240193955 660525937 143771142 330730142 965057161 967008107 849579707 633092035 736086869 67104340 496844777 900804980 517739178 213739016 344131160 659483268 666757020 350213456 863104103 116506709 441959358 951557390 208325062 298093236 956558618 50691091 272834623 615061570 217279458 180610057 714685198 747253335 84577432 543954561 587000156 470109710 908192483 963713505 181427961 373584992 81541003 131352394 133243870 731539923 668545480 234856183 11340551 269899905 381569237 985925688 911300330 611254796 430005319 388174410 497029798 605382379 434323936 602253266 165329205 144393453 541289983 728395772 329535013 298074252 445806259 199441906 798540063 470843196 918900710 791710045 852474053 399419389 880911372 130379322 390635087 337003522 421633490 969877615 879101266 657188904 461840046 337654290 959850794 55972189 485561613 160974872 818820660 886980594 990275196 190592695 860822031 153171825 558374254 509071303 747345099 281158149 755068309 262824269 568208210 93378162 635544491 92214267 201176770 458923900 945755624 881075223 421729609 735720551 95890720 326396857 937164744 17266276 483423722 906989072 3914022 845671964 517966573 549484080 703032805 971121888 774411809 723048569 313142778 314345397 171513159 699785310 553587785 146425679 644166076 295781036 137343066 437087511 310178715 434003050 886042837 426031869 37755522 420672466 773446222 159183858 119916883 416506009 630055012 225859424 643948264 42806717 481191083 814932613 768856095 565399030 717653679 689109880 671877126 263555679 91270502 122272198 489927586 885314752 752836461 208152228 280162249 203219612 99268500 815501424 546564824 853973650 498199550 269030939 430155352 573583246 622148316 921121309 324816166 204302082 246887550 162085566 767574401 726098573 507792294 842811744 79380077 658961774 529409666 518591421 456040019 674427286 740423184 397990123 62700914 378683010 612636503 976074853 122497094 516978837 11309898 438456472 490964840 16660100 624195195 607079876 922810583 187957656 835393573 545398112 468232486 66627065 624553158 606658756 786687149 53664404 86583416 429947082 947520599 994602399 229552831 248957583 304582513 87801341 953944288 802841610 538031749 305359380 415565864 27593473 720891447 508213934 109346443 969700255 528520290 595095099 370098826 123154350 196484107 685699265 720105628 5360720 100045565 430055492 58944273 936191563 935834340 537156665 125790589 31108593 994807577 160656590 795320932 163727909 210428651 837848623 826345997 55434052 462904920 139249578 412269056 446692371 802444490 573226098 40938446 322225936 301461434 194950301 379506750 771354126 781579404 576626777 9492160 589892220 31475303 943071521 316565861 896981543 438173122 669162419 117970875 800865645 915078423 751414360 713862959 195344144 758716095 265641972 280086052 417144540 499141943 678552798 946113647 219294953 586052746 980883593 316684659 860829517 108757786 844608775 945042027 937557499 350068107 14007539 702507150 521231931 986943166 429956107 155234994 243871275 230071691 815573639 913321275 132047597 219464340 123988870 202867883 82042856 269801209 969721491 226246001 10755241 579153688 291028798 671910822 565670356 264857649 836342069 567676962 418898167 774280016 386266394 763964322 571699968 732236262 560514303 394040429 4949888 939611733 102798767 197832721 369137773 144286772 158981909 134144569 224128827 565438606 540523095 920670784 809392838 316380546 663873877 918401343 555350876 498371736 544270698 687498787 651286358 528007310 61871517 57580556 876552454 331012397 159338886 340660625 562369481 830182099 483964080 744411261 103381650 269370180 3716855 27730003 147083143 170013528 616552091 512984881 437069613 818912084 873145579 162113422 818428101 630942440 310647864 791364114 967001464 840704070 263183787 450236344 20669635 699308465 847828953 314658548 493077928 707807357 524812336 990185161 960263729 208298690 634224485 694112553 908087564 365509742 595713272 100202129 40135919 122038405 960962044 671377074 341656062 305337251 132818901 497039971 917500241 70238677 862401442 871877872 787751652 500718939 665498606 186287108 574485004 508605942 520247004 163237871 694292513 674454037 390142941 685399800 207112952 224013871 513194972 795079565 812236452 151134967 862004972 827635649 577454722 138499461 998207528 859128023 335692141 888853950 990159917 946608215 723126966 453755782 924662560 269313234 654358383 665262601 506720268 2666792 143558469 797123964 1858428 806640809 990184467 695582893 615324629 966482407 30789345 339520936 108939886 83168752 367110297 628026191 687559832 315231604 93984701 549406239 62093164 459384741 878611452 973464270 594522105 747485843 843308422 569804794 999654603 393251298 267156993 738132852 17951366 842323847 131711027 920975673 215776883 827910694 170531130 525744522 41402055 690604713 380387926 633352670 870752491 732649735 296811255 460783019 925676216 541485130 716390663 734485770 660589601 458485589 542832119 298410185 231539269 819158666 361441854 223388008 751422184 631248806 985068631 763399335 68502154 116965049 968877044 794786927 195832467 701846709 115009498 943686057 90982404 40532292 76936757 572666236 968718143 997019842 119541332 376447459 123516412 738209197 23888954 155462887 629277478 941506264 442178951 412668696 571072701 388170325 799348794 918563398 384351258 872288239 72342631 752368574 108565480 701484452 988889665 912809537 889946443 613910363 501696939 889743623 544010226 734684705 477552110 553344113 665824278 515171530 444089955 240015267 956882608 700846732 276852605 972653299 325944365 913601073 474198118 980350306 25156329 97346837 588805141 567437382 927473349 696044273 154921273 43694046 669978907 467437349 979595770 692425119 820072179 897487612 92236481 573693458 924420466 387200933 432056224 977402954 669744385 791330941 326305958 16108197 16114494 64393105 888034976 199899479 121763104 254249828 869314808 572290440 789949072 575708377 430857906 69192504 187258653 697916987 909215200 932516736 356780837 28004927 805367662 47579706 170388514 299790776 459691753 771555331 206788091 902653901 907475437 810683603 818479337 54140457 425785379 372191863 900156571 844131941 586985756 216850100 390000415 925416919 18101208 92490580 85486744 805577917 64745194 56173792 286257763 382632657 492249332 234303476 208940456 780262416 634820445 816601403 379478412 740001412 199255188 242857028 468261745 108848253 991207142 268671710 2140376 351459537 401530131 238088816 246268413 990771209 186226153 252998871 960576683 740794472 443411147 422588299 180505818 835132583 911545521 858252642 487174189 999335765 126038478 195296651 667310371 265529374 879936390 692979175 945002665 156335805 345176203 635969461 412616512 281287108 384080975 975311738 599680874 724593913 292068896 898209446 591778879 782223749 359525801 710603694 159279655 590432076 113787395 770467338 876230724 938038813 877542713 573103788 509634027 584757461 129207151 731344021 742739715 639975751 247506529 906731139 884969198 345369031 531544341 150768774 85597960 854522581 941739834 67035267 171004772 274190245 349950957 165816794 746312159 242104475 964327447 92278625 428062736 81670224 672796690 393882689 361322552 603925496 898608448 168446458 647575238 356779201 948813250 684147291 132938857 537685729 987652274 252626459 105730284 704571318 140278778 621437909 590020052 779658516 976699351 276313301 583902109 897679317 295971788 127362198 984885821 860938889 120639763 227246178 616101026 714185068 838404938 612085558 728250518 871095419 359684602 687475510 534636148 647360982 572254820 402461805 934181289 995149418 129275244 283017086 315503897 438118944 223637701 291231164 98289646 77078298 365048052 909993505 997192472 559625421 792073515 497502225 807233989 337724327 28432268 330638217 288025413 438081301 789183199 671373459 746536820 904783089 818288992 68917441 603663283 763685118 303035983 35263343 872621699 357027544 702582986 216361560 559989239 852845882 53873136 993385219 478462605 989800297 58194858 552719493 28066401 139985568 120323102 947864176 678591488 415251291 276976122 470835891 713279719 961165635 174875165 750695523 793871715 814186574 323491588 43973862 165515334 443550906 443719455 356746767 36317086 399880736 198328158 720645932 479220108 584256924 628338622 571224004 353964418 991984898 540335311 325095941 91684195 531735497 290709587 546550178 291574023 801964682 343343092 940225988 802661240 373037384 215010940 395042468 844975071 338240188 573333791 730833325 831155308 889966524 783295116 450319886 600037867 915808481 456380402 352172389 724532102 555117437 821805452 631045248 137051503 462715093 800946059 326990001 831948235 36657315 178510021 859429182 356760435 460164549 277334458 944399058 505281743 873933861 993529453 190505275 497158875 101841789 32248113 120426055 423931788 747751351 58159625 447816563 498735662 410850758 159861854 736511200 561454867 390861819 992244019 853506801 877234408 460964134 77605184 482892217 598708820 32163903 232705061 272701579 506595190 483536950 231168012 199047978 476635044 791124133 936092627 344238831 331137162 341508448 374780441 212218515 926934168 895439161 768959229 448077448 266056055 575293486 807823154 41458945 911988384 265123316 50979806 880951396 710881064 666236648 972530510 33945000 962474374 18576192 587784705 177932367 201250861 168837497 560235390 616851954 63307323 153567559 612041690 389197513 848941647 312048596 172304739 96669727 604703564 942971624 351521212 465230724 317984137 183942137 623821897 708790512 271154901 693897181 896808190 284621399 743508600 426102086 840018688 41425631 983431129 566857367 859492441 128852504 1378494 328669788 882993537 228334528 528863405 514780698 454669911 365127363 486164115 63318756 527504404 456471540 354222271 414279573 589492779 908614954 709083006 673862169 856810053 454933205 877890266 729037855 290468069 925092193 746171156 455738234 458663890 717749797 429825535 718794634 587667478 447392671 772142509 924428819 54028280 867173745 588447445 981642243 609913021 142851349 348218581 408023203 546706626 229032565 330393324 508883786 409540347 930422287 541283353 999712468 464776292 619171466 385289975 919155405 780243349 760451983 501410413 588781306 47738402 334388790 336029593 384193104 975997305 595075891 683903179 16019793 978993348 108414065 857778987 7475656 597789812 892738501 900670144 135705934 774023743 149942457 972535616 165644770 512675197 555405007 247979869 923410188 117740205 338218939 409831291 549521444 589915604 836441078 955865363 518279963 758994879 608977438 686508331 664148416 711225968 881590185 783112282 805114505 291441801 420444342 558326712 487313513 202015015 476067290 348398057 898088828 1117828 978313375 610828054 189283259 243717209 130341999 144280543 589646564 859086415 585024667 416773840 411572050 960366431 973619756 178944770 65819952 463871809 458109816 344961357 920279169 161406211 415229453 561094787 421112414 426553852 847476438 328499617 344104354 156960348 384444250 281533905 379830195 704579489 361565827 686141568 133190120 23766786 358572754 328506952 454337635 647126499 728166359 17319945 916422236 566773090 646107551 318086379 312966504 47462921 100233496 68634765 494224333 857215129 881884294 134684155 801178474 410764524 223502935 273854863 974876255 206079065 784734560 766062146 615007620 995382196 152705023 781779401 373764990 699637734 747877330 36483715 789473995 906153721 11156656 328266791 33316635 998412533 681411318 140871213 833036798 284856627 841965702 468188063 608934986 585539140 361560614 663048727 173748037 351808581 209222945 184844342 360101790 491593882 102437901 473374142 841376998 575718205 914044852 108113742 646187333 782435554 44639596 721106276 462551001 42229314 927448656 284914804 769021605 921273282 805774080 742568412 418149459 103267544 200111461 656300202 593353684 883132505 336444623 617608617 18745874 760794775 575874655 416355450 166193409 135808996 191268179 619738913 928295532 40461785 226308065 346285791 669470710 31432566 543774683 67951706 393935146 760487968 336891058 562156290 119995169 395421671 371452103 940235590 826006016 857908765 422525955 742738171 44715737 452006247 302526428 970779376 430343791 756877685 65772756 26662648 209959811 117571252 448579452 253430382 793183344 79796365 453736837 895637768 666014733 541123960 95507551 904847650 112510934 951830434 327536124 775941435 984734102 275913144 13621341 48237850 524208715 743569553 744633717 633351602 568608952 580337706 435215393 498873704 730143253 365118658 904779911 577965056 696288717 200066236 254883433 306050657 352422855 436547596 261292577 158859236 822218053 241348308 965274135 684971297 655189568 322396004 817398494 268090651 623251692 593339680 398182340 821000634 785156105 201670335 399527118 976879416 98075642 727163928 101860237 499497755 36088556 246414176 181675541 818642115 357867396 47150582 304628642 333610784 347449029 281999238 182262235 382177244 478330994 773423128 365828821 910980100 339341516 15026547 524194698 107208041 998111768 344570582 700776756 547667347 784610987 797493961 510238711 59331154 924342369 515637078 652499599 690496458 418732366 164616507 149428427 52139905 559508730 110943458 760001430 396704813 73126268 696820664 212077808 506709971 328816968 590758640 366265928 634061995 640297858 852694744 661306889 774811523 314220578 988812415 903922754 608871758 331662996 838792011 367699049 111633447 223954887 457895455 773858270 372235934 249255832 846637553 720667371 849995804 35080822 721215043 255503365 61028266 301459072 274988666 983047902 965609455 821428509 731953661 521168328 346341501 512917120 625969518 687537625 968406068 931827032 382935198 701092280 683843786 671367454 876844047 370333223 866568662 448457342 29917645 124424638 405602606 667207087 125501247 871693493 312953031 562106094 702872222 983415037 208227066 732781531 832787640 33707101 104083536 116807098 625938943 499092468 79547588 256907221 163840576 748850822 115701823 308299911 262904517 964193862 769753872 817012614 157649748 456063147 687718625 470961270 330504651 994768942 255764034 533081122 183989149 73555547 435214993 327487463 843380490 149138884 688546050 110526500 445677131 693784816 456891151 831749898 320644595 377331797 924367163 164744763 673844323 326063175 317759998 572243286 152979463 425968571 343501810 901117899 395681390 7142384 560900864 689370451 656845561 408167736 558867824 337167512 562962045 466607932 775950067 225162092 251306527 533976886 86245937 946369457 766733393 171713331 516454648 637630777 300026750 110546347 679175575 988717411 90265362 897124478 903206917 564577155 408527305 942833592 586814493 614519291 777654043 616598823 944120334 971157429 220169208 301918236 109002022 850995752 58449066 128919225 413447473 863782630 691660932 359593264 909760253 749375561 446950671 512829735 896335524 652160280 349977261 102501291 26825580 607666969 49255717 433812895 933601165 893432407 269841853 26927626 599682812 841751953 733573511 698599444 254617065 738127861 926514422 37373056 880128112 173142010 108085569 748777961 487440279 539132016 89359578 428897264 780175224 299864726 133649145 448162014 674627120 342696544 33866152 697224082 468218512 649589598 692358965 939360678 624579447 926964243 548690760 927587345 620947060 834158269 682570626 347770447 642334633 940382934 111227452 263848947 403306119 892341175 754253892 75123634 384687163 640257924 576940259 92453525 394685018 878450323 835084122 289592224 105964273 802078587 344211192 660590510 853250855 191810264 908931973 374259365 337432724 869220783 560003335 608190432 935859015 518648186 859804093 724260027 336203435 393999619 728022532 852026758 152342483 947287887 944472152 318064014 707009413 670364499 516112533 880620013 999041900 873024727 822445249 943813289 699225808 30428825 317823184 883262683 819117695 840745722 891098671 784669511 834012568 301148828 409689500 888680399 98237336 972678859 865806416 205139240 730742562 923640400 568331101 917894617 149627988 600616460 221339513 89709005 312918440 545154925 794292751 936713703 867583087 204970808 107220985 46994063 161297029 593501864 350635587 131128348 342015288 303429398 26262245 765824526 617564681 179602566 429540398 862001685 796155260 230403296 222268452 480353581 194288727 638498883 26530697 381807551 569790979 532917103 625003542 568734575 785737929 155778269 919163131 696201029 667707527 599953504 752490394 461721815 136389018 533784088 419687203 657531136 326833823 733510788 861370023 109672469 24500743 818643006 601195318 736734285 175799630 176610154 700569636 698299323 760139981 185165691 978719486 522763947 231270403 512258944 534148154 138786525 349137072 330874376 192067954 141226085 343592667 583195280 881996968 880262767 136157577 199892446 399937273 231991100 395871709 403447190 809901955 108362017 803045555 45128655 59837727 186882728 924637424 841589090 157581208 431968735 508841300 365599980 71593452 407412324 369976018 399724484 896076728 380987207 999362231 595613453 714594454 198838651 807122081 952931476 974077065 589037961 38781623 483452431 319459424 278023893 367499850 704864208 806073111 179205657 638718023 656282812 526979167 924717984 484463507 990793202 203847887 458015396 42828534 469759609 624584388 547795114 265409865 11488206 589260932 154177012 785811560 483683832 190205875 801245732 467941026 725415268 916622784 49477468 573138802 271979966 960197145 663506859 850306255 735581441 844600065 965816706 90099108 265730429 224025112 119359917 170059687 968655400 827063395 766271617 777530497 331451959 449431852 725156523 361375690 585568472 981100433 115511034 282852297 5652041 566001950 482518000 906790661 588183885 226640751 299272180 403610240 871040112 611686691 749799186 210236443 517850917 28334666 664348268 738440943 974520839 958361923 653111719 11455149 721429223 423288600 647848604 331296533 369281723 532289437 344404226 467599401 805551436 228398501 736413219 386275856 905414601 574674121 633169488 662895603 24561395 525305871 946617829 933867796 983165681 631627718 95113718 752875594 924200966 11650125 190707078 794950990 212632326 581234561 155663757 634015550 376427730 623679395 784413595 867059562 156056411 377103380 805644490 659118719 361194687 318384806 456081224 972080674 571442336 141969563 235890600 229651865 502883769 416808656 183923740 825616951 530858886 896206402 931423897 748575372 681842693 586089343 19444416 2188831 4183478 302017113 37158257 72592815 946351606 354864113 262129604 636074981 828954351 62013369 759956071 882399336 262951957 433142067 87817871 299375921 532785631 582945980 716474058 523546082 735574730 420465658 617104530 376235492 246786453 592267529 842655201 453293298 460814886 636320683 281746788 883875644 184016771 432577314 427386283 480401276 179810068 887990095 157333347 160648903 970119057 891095538 41191146 658323586 812829851 356964405 634463586 585942977 360538828 624559085 549414072 498405399 905551085 796987976 986600594 217789947 546612741 373432350 723411546 661790162 147905820 802569744 981734966 534239113 522622399 139404327 596966063 525081992 77603880 116753357 72557487 736657838 880002363 830914493 80106900 185247244 750368634 649168597 59896433 913470360 223797938 148451545 362033711 708267338 540364926 944443415 62797961 168861051 167247859 674092172 335276076 17336768 915067805 541876868 578879789 741632875 70621168 960343153 833095036 294531772 868765132 764783643 350750862 966796805 232094487 703656246 75311506 8514774 198537979 517408016 241047275 232630047 199166358 976202183 867634196 745934836 716440408 878007107 922889675 547533166 322801812 253626622 661712213 352851308 994256134 863625648 249809297 995430620 102269986 114777437 883013139 937497373 49543013 657299691 107279851 586056703 468064464 920444170 264267547 722566820 415367380 178379732 130381132 736754211 440974867 510975162 675467961 980099005 169286007 792203623 359891486 94428658 680249186 861420111 321539006 839641586 567651795 285229814 271755556 997299508 346096681 129378807 979046942 542545171 763249149 801324243 567240071 447769742 926014050 550697363 756460647 824890398 546137846 768867680 168356719 523629809 622577456 905934079 495756263 148143781 401004930 437086067 424087823 2231436 437235524 416622212 946346653 3204136 641780340 235188292 417257562 980089154 550751272 385970486 559465989 292660514 555760360 657559454 538753011 741799277 13961223 462623754 641801727 640412474 103252015 495296503 87683204 258021223 609760633 566026854 793536612 898282891 787798959 557939141 383840133 352593396 964138549 51243284 765653971 34308756 283546818 980781307 77315676 163355369 603094720 939124115 626969331 738871350 73890501 256365789 698299146 786415118 269469011 417774767 698882031 991855004 605009137 580998378 917198176 329861385 942416868 613328365 688823624 111306924 325836214 877708367 59573412 611462940 820464101 179439764 673340714 645987079 637161207 180195779 359030775 825890139 316242892 662257177 252618928 876922663 252064137 96055847 652128104 305102868 752096181 502425259 600588676 107543039 518541382 753368921 514548401 613070991 627612055 639462737 304657587 853770821 504534957 260856622 8462606 296733571 208830005 886394936 720251769 458909177 192507792 25701262 642031671 559610258 672858766 230384933 897774614 854791025 120341545 899163845 287222486 882775310 200370486 781693669 253937139 968973865 586399309 60194940 927579870 432935570 920570886 753441987 789724981 482736343 948215185 619244731 527609821 928979153 692827700 454657717 635681954 90857910 908141680 13268133 406857309 202874025 178940490 962701573 902883567 397904163 726691819 756312448 590331937 725538210 83932829 149162738 594637183 284137970 869615417 194559198 888378320 166221806 881218861 308664703 234526527 841366638 377337322 441699019 211698007 89622876 314324090 636925298 456993869 496125085 639318801 981590049 811218794 273915202 526923195 306117347 614242934 848121522 446614625 278877019 534457832 959010161 284447668 918981631 509719431 721096047 433743843 227351124 261634550 13521309 217202456 403473999 655974314 764488236 446577574 501719667 66473964 634978153 820332769 925635936 449807180 938811506 926850933 126068556 69145741 331063669 344403779 40505331 819982651 900335907 720706144 15211023 440356685 765612840 961579379 834478198 999302174 193416710 73502894 382396878 408127118 645389637 895097774 184741121 185698442 543705516 659633176 877970537 678573783 691051466 373388114 614055170 263153071 804096385 660649570 122197743 13461279 583798739 833683255 975143429 336044608 781871842 756606655 554427163 483017915 154229730 715137594 399860321 857124820 907144807 127878366 522152369 526711972 129501328 812047484 154700875 523888769 630571125 706386427 761670352 802774983 820785590 979228046 295826826 781529491 844171139 115814 997929879 989254993 680620905 810433384 923738354 339629517 161538640 633106853 718635595 985194692 786779612 741023538 924870316 288506038 135841367 615479620 468890503 287514871 604303542 45947538 182917307 196461889 885632304 159574118 418674326 253542920 792773217 588674143 458298875 723169354 423850063 859174006 652358303 60520452 253046025 904946521 136078312 639488185 137592559 926686008 532076993 708303379 946658917 321523838 644757682 987192331 354820806 308684375 315225861 596564527 635481311 525510354 96262611 708716852 286870822 8532275 204561068 496425272 562910427 639571240 849915739 565944376 81104555 575070270 687384385 970957141 940013441 686640985 176382982 811588105 36604553 798589098 767511410 587883525 652269988 177451019 281769203 197099597 25613819 65470260 783523742 264963230 176171657 955312090 890088835 892400892 503814196 514081644 589585100 495641492 956539720 717860729 765047814 375158087 781840521 254719716 222048153 399150989 394444382 960107869 533108283 797104421 687351101 177338159 136048647 273744634 357587390 789935734 869600300 879063429 195987129 945882482 918908868 458887970 177874940 587061931 904730591 195289454 464186852 544015667 277719647 798718079 160712863 283643401 756249716 670597949 987159457 441933331 39712438 480271111 820121323 211868651 48997569 995597353 161122166 986355791 187109980 448021733 465437315 829184925 590549095 287165238 163096920 269719811 222255598 610809407 373368066 98857404 296295352 531827455 11977736 721917036 774452052 177863268 844974032 982060510 952988519 595910697 209960196 924367934 317358521 166727870 752080862 1943687 368960410 698981675 777283308 433402672 497970368 18112368 696390793 656030078 768186468 963272888 432785593 76928813 469486690 366691760 455313450 81926215 435524148 809673157 253854438 80974039 423543570 911542637 522554210 3699898 328575957 737076756 844031819 665927079 283317548 607253625 531409980 756929692 434603105 634302087 236823588 732929412 429560367 707528100 441141185 658858226 29442966 437741303 789018081 570488884 927305633 705790353 128745037 474966812 768887482 389411464 643723870 531955943 314411988 276005152 493766814 744556219 968347004 38389548 599562939 806056926 52481639 774682637 187706376 733527850 648717426 75312467 840695879 907949141 229614585 519294726 304439657 337051828 723933545 472079101 637605838 532348538 97100243 982156485 455629088 405304893 647415507 864982190 22299941 569519875 466855167 901292262 171515884 265601862 321158074 262330288 605522754 258577005 571105757 33405557 969287969 414928346 940846842 665609525 899377515 433135710 788075318 988667404 999123530 110392606 203291353 867361553 212716983 275123817 178484834 353423857 705535936 789724799 884438313 289753654 935896581 107851076 302019431 564192488 218796172 703350204 564224289 974335017 445396373 202408878 300638998 213628069 159733520 998987637 786647140 733237207 189222210 356017309 308333863 583220594 37685110 929908589 129066573 473022060 410574758 262833014 420492546 469215243 831301300 263887691 606075628 86188062 21740733 635536196 464257350 139036639 277117978 829970873 714456034 801765981 779989425 747450759 928817924 798781322 202463648 791953745 182211569 337825760 776196350 868293077 549654451 529532763 362466034 535633044 845173606 555480469 17790767 351311230 784480830 975134403 686224828 161175528 220292453 396294826 150132498 394689692 156289463 428775778 777023034 678674789 226028143 644908035 326342443 766740614 905613576 804249960 870001108 970064930 514417192 657094136 91929080 423725644 199265956 299502510 694442013 769815105 87072481 207841484 608500857 879956546 635134546 700294254 638604107 913422223 64889645 775637953 593623024 453798138 902412277 281070581 43276429 195765934 492940919 519763560 656536086 714929920 339053150 443531776 885067395 316190212 458318752 681964574 232045322 628821757 794219525 595696618 759524964 56811254 68766405 416628326 470964110 555445336 823487313 138060087 236317759 224022227 991079890 490105055 622361575 533862974 404773032 476088090 637107529 390449730 493318769 467242326 769097931 294090714 393965602 97631188 99678562 820380784 275629973 524850114 548354918 929325894 722055966 695148177 274064873 348047441 806181094 620624753 79864014 271501570 168909638 971792711 813208433 746651759 66761130 813176381 494234483 719378988 42189940 672255339 277116841 105492509 569912155 84283627 729172725 237191296 558010598 329290957 276016903 917945440 882434675 366658864 940404469 372580625 391269069 413223641 910645047 478183236 669512921 977903279 727627893 842046415 96473522 737591867 603536114 996226190 929164687 347645838 475521922 661782742 617426230 865760408 7533946 159745582 803559009 922521224 402017635 84916686 413387932 835192137 552926607 554167642 521745338 126960082 354044257 254460115 999755440 379220879 659712926 715711172 901946712 361984005 792465505 941193718 892769903 443814511 39430727 969995661 416517032 280856784 625779304 150470031 648955611 286040525 804706670 272855604 911012522 546898604 180124522 176043285 488962504 566801288 871907526 910085917 906481415 54317387 724982613 548057154 651041621 920389586 727443552 108025048 980189231 721214489 729778765 48996862 282661310 494623557 17833129 483333686 621300710 370014352 659465766 214108668 946132309 511815497 825683107 206099321 337226600 272932180 438380895 593164640 99713358 770704979 194947005 987492514 991797328 690439940 104965085 109089304 696889436 351650117 242934996 878151282 348706053 700575271 5499428 690186330 73602381 787856611 62288918 893021156 601004118 577445076 363266588 44488517 43816371 204115904 232484484 909148660 329433245 994773124 116232959 96164174 604540183 889021212 953843147 655179932 873369054 995750925 941602466 309094907 987690371 814136934 197612189 929380787 975392438 862500463 338389503 137675942 426028386 506629779 321064038 745484108 963893781 988174783 731995647 297004514 615416271 510166654 557270625 108358169 922993721 805428912 554108430 584461219 8880482 881278898 358596932 369584200 829273737 95032230 204251681 956572237 712549961 574315934 528290384 794946421 277020514 330668073 822988937 510106394 302723998 359504613 290592009 615598240 300814692 370266604 686172978 409892532 374068286 154915626 720263429 863113946 515365810 934415327 155565576 656645671 237140572 506804755 938299145 970432096 365392022 582079904 564667007 573560576 965708233 720533061 569705841 403273920 77591704 190020170 106531401 540726763 944687054 153603804 114328573 646274175 194858816 466112358 836612143 257527608 550513072 642981585 418097679 297104320 926205050 976965463 322664525 257175919 810442242 456982858 224914350 391044421 420999907 349280534 790886947 660416531 413347326 90504745 627288533 706059640 572627726 669588683 207884152 307438214 557664569 332391952 575045199 931611014 423822654 926082806 706471318 338726410 141353922 999784977 366522325 872930275 430695318 914239753 331248265 481247169 392826777 379780025 993052455 114647945 838917714 494997414 842570185 37644396 880128634 376546868 607257436 884323125 45924578 380276714 970780968 630452280 271421718 290213021 186432340 710546759 143792063 36103236 509213259 699392158 771977803 893000688 392157404 769551911 552454568 266193770 617441238 857525965 827838100 423060852 627964030 39981750 388283725 517635917 884204765 197372988 304919237 57947021 914263306 635338036 657601608 388508612 805618346 160827538 5447476 799215578 905820221 306342910 36774132 855782710 758171828 665664484 650132190 748163405 339904690 953941875 758559170 81156662 860958255 679157994 614760781 218327757 37381083 926214744 902203459 409757834 503179186 987223508 114438902 624140577 381376222 281826878 420817286 612837205 668217638 322557979 326352671 904922216 39733849 876376708 592282272 475818309 183684079 634346060 685684667 912639174 536420817 145522882 94321889 528694460 564442550 536785257 548221228 368462834 395664951 88242716 969609743 820730004 867825356 58780975 478586271 896659660 487834533 457190345 639055963 801094522 446255951 453546864 842439021 725226421 777842391 473975426 751283768 511656711 266173998 76391400 257424268 760150988 934613887 989906252 97538309 105181151 422469638 672590435 664127253 8332537 356112849 644854732 586765657 232037614 442373724 232429164 364021001 865090335 562624909 33201817 634518730 604679780 66964297 111991221 614847626 275798699 391955584 729721888 116380385 455907112 492193232 752116398 722796681 123335451 545810148 781488688 133071533 72873201 908783123 576285725 6288690 33754380 17104997 212288108 114556629 637089174 370777146 956752586 526395223 56697184 866054054 369339384 9373297 34362664 141008616 539793933 894405094 203926136 412054439 670094501 973481359 306506353 744217094 774724948 937178148 597009984 123451985 457723365 77993539 948373562 991230723 708510131 483250964 739966415 317789572 402167600 359984366 257028025 871379669 95567273 560068006 226668954 753846398 609669614 650707271 713592897 456136234 645553459 594138197 655005009 374806661 838563096 623309477 453293187 584721971 562024483 448991919 580077032 402418395 13456930 515696613 842784413 543488096 908162010 893828528 356953140 432432253 617169964 962867532 126715590 73653125 706139185 152622614 876718689 64639204 960468567 89526455 717079290 895034107 314536681 736112441 169896504 103870643 613217034 773733916 129893448 640307965 89208625 83629366 220354392 575664228 855805690 765590139 69936442 726815159 963476680 458076063 635602716 676351819 123421195 118093687 727887730 718652990 448637117 29650184 629862055 473814415 291632953 898135556 134093703 405021224 769366884 202258177 822149723 873794234 792898372 543120913 365064006 717704000 461883129 844892218 111899676 353836158 909408862 96068911 401281528 404930989 69694065 587451557 91928661 193513305 629789093 41996602 111390804 642587339 448961287 832349048 157288200 572801437 500857775 7724206 222202005 649841132 843178290 305565750 785134622 172078263 904623420 101167217 226160061 759704260 989382120 941924294 475953962 796667932 23874370 821444310 130836218 110524142 427022560 752973219 935832944 396995130 619466919 70480980 106441478 632315971 93375986 29019758 820136918 154231522 147954547 754757115 630753705 310366744 514141126 705535631 320835511 930156768 719039700 856352609 981682832 45461821 666682889 403581932 138324840 598248423 902722083 253494177 61429729 713481039 38652992 358524882 368595931 251180104 999774291 46958323 458949415 585667225 496847521 256307192 119122328 986186704 271195545 826763699 392109037 237097825 933084180 562920001 875092027 626240712 840839598 392603269 626828544 670677070 784849453 332365030 395364037 351819776 498863562 161456166 17638822 406466660 683616627 879727996 134707961 922579640 867777003 693605706 378520912 552348744 757223992 650538929 864557923 443742252 392590209 973307379 937016964 52438802 669184890 497558145 890265794 386648416 273933124 427178249 522462000 139000439 354115289 619013097 376133286 889410296 794731700 454221110 434146543 383127318 778882895 587951169 895553202 31280654 200024869 854824815 605364316 450416536 645389725 248273200 107433605 21149160 514919777 187313008 840436305 578498273 198600625 159125214 607443740 158403517 351869608 275677917 399735892 676122539 13385990 20499602 79316122 575527025 529661617 430015432 870589228 748156610 163544248 102969064 375094230 411299772 892906273 278956347 101606261 848789115 595346452 245193468 361778062 345409082 647548469 359336216 482755965 984644518 923699184 271177175 93979014 155936974 816952616 601286121 560695489 671062146 418673041 574016777 716017281 710764146 840257165 183385412 194121750 415152147 327497722 727480669 960589033 559605038 201207727 575632282 548131602 250700860 425192895 378450724 513997518 771235125 14522200 448790081 762293285 65990571 201936209 483235968 596760041 333815616 987080312 305143511 697832779 999611790 714141794 869158031 220264233 88816348 248945010 800023902 713568754 537476874 289085658 396176147 115924252 626472940 55049567 825651527 793386849 148921348 553752431 674512286 27722582 726983966 431263780 158081814 995733135 985042940 603169438 379661232 731562654 443622110 362891445 76517846 991031575 880101526 194880696 483408087 298826494 714653626 524201094 217155915 491491108 321902983 861669063 144778141 673681816 499361425 97856138 336179152 794274041 495662079 221220162 579291105 536981481 396834828 541167093 521641368 14462570 171351064 391727442 382747984 494882623 560944307 975181877 253623728 371384863 859617014 82356593 34165798 649963632 797362152 471567862 877888198 870501173 381666848 249716694 443661924 423719956 287126323 765309091 791764918 40496876 359551645 725604898 810833405 487407872 407166112 731278676 294555800 2358276 318028953 206084885 478232052 904901628 697013105 672788556 420239109 91570537 392197209 839548700 688406139 187500053 379258018 412314808 519817534 631527362 683844993 391420307 982620939 948388468 88964666 321038530 460205327 136346474 911795760 219311816 939377622 730852908 96628170 246534914 443129995 415035067 217013211 198688675 449579994 288559748 209281868 134378597 781768720 695736559 199188840 691976795 729197419 500128880 624924926 49475173 697257327 325568870 597094577 323008915 976615272 757282935 235435740 227988129 340434233 937914753 225705795 505136755 595842724 20345802 642983398 965624994 496305188 617850084 904414073 872500901 439182168 704723083 345606881 63426191 432624806 662571263 972653532 136816853 454373862 170198280 379409544 441387763 98609819 66518344 947035829 101433300 6075855 585659777 679960627 961370606 202273255 527148528 774523154 988179304 142896320 905507574 586839714 527605772 542887722 304064120 898140122 554423399 104479004 432484619 527512516 771804438 563150002 588809593 284651315 505640072 3499423 406770819 659427288 762275458 894989835 587474931 278418157 170788413 525295168 784496991 363809041 133129283 546792554 584438189 948641631 537141549 383960274 18008814 246071475 889138672 759478206 422435856 761394661 733105600 359148349 988376989 564869657 125771454 68558188 993867582 287302313 206164592 105821503 837645501 108596106 657302452 723201174 627508101 95339067 779262285 739188503 826974473 712655916 420213145 656474610 413866544 113023785 223168293 52485924 487122734 751896512 810860866 603306803 998865769 685947012 358779577 438253698 982669591 19300236 497511923 885458048 409759390 536490610 583631012 946877996 99564294 279993748 536258037 37619317 734570392 678083909 659558102 675922616 216929328 732082354 718143049 613965562 340615220 435179274 719095579 178467388 43781495 35860365 688252438 670733294 36053985 35026169 63986345 652558572 768915512 711659778 744722338 981316552 347715920 86074257 797030082 500798996 863585032 368507689 140966980 584406821 61643582 421428945 306619480 983826675 95120123 917050795 586387271 212794294 35631068 139134489 977584532 731653033 473520499 464558058 603641550 462849398 799632680 515727633 480464427 771425853 903811395 413782112 973121541 963350338 247520268 662693301 199379889 507947729 854228618 275539259 972480872 685221192 474559807 429263908 9435504 808298444 306678243 938528574 989266763 349397457 792630225 643839274 283424398 981540936 697868278 69937632 780572927 733386940 312882690 983104644 431370339 622279285 983797962 878860758 178298936 283417675 342513216 212362075 865926334 810265329 546149156 979119477 959040947 80528525 250506752 226704925 815999813 162395359 821968529 380234018 873564927 193677178 765828114 224026781 930087804 682175656 350278669 612629775 564203254 356213925 250916139 905719793 14324372 469342428 849463917 173877363 491372965 764262248 131930002 286713008 583087836 265125679 624102751 815030997 259315003 29001980 654024362 824428890 873924116 8087913 647567703 755606367 675326912 398722445 742789549 512978411 537487723 168920271 531463515 544689645 419327432 645813583 214849876 508310089 427795402 675241683 886149879 18276660 942013063 697438840 184786909 469747101 702055205 572480738 697086058 648939575 219398723 207179367 427517245 495265360 642528047 689102832 345769771 875872524 138845509 269717166 392660469 410404048 770584683 485056049 55656983 350713934 874589570 498572819 521543990 794281262 857203907 539760269 398975533 376372800 925359722 87445830 494316851 752882438 722942312 145659294 715235023 403124532 960852666 697711438 854065768 490213981 403158803 848348708 876082355 469941930 212149740 560464919 676652967 37783536 130064591 933029239 122342197 757595844 458172992 169064042 514528377 587932384 519046554 826363192 184852538 577219597 549027258 151537253 600476285 357082846 264196745 49841987 82333693 291245939 970681506 961891518 190190180 707426491 27368842 17432597 473036933 721598821 36491923 921611913 635758109 459566826 44613220 711911564 463596954 458810564 953882907 978805454 82290616 190075215 636676709 777600929 625019140 951059515 881717048 209401553 440376333 632312914 598603376 65595018 414991624 856781099 538314473 599475596 941760670 813458796 926572772 63074288 757003238 845860562 45604843 672090685 679687945 824250306 330414420 65985344 781333231 458927723 666008334 54826730 855891583 372273680 132029060 976394574 52971581 653927106 600329937 177949705 809585964 502566691 352915761 882402586 926070225 78911494 683660559 980190905 694594637 781728585 146129366 648231483 544911218 6937664 554187119 543963007 65240510 907191935 581027857 730151438 248975780 61775185 901765109 349596337 576522420 171523034 500806385 555630970 825018196 642843399 226943894 692832713 124423924 955759931 330220070 183727823 356018340 891889611 903086586 420320734 93314065 919555780 853866898 796441587 420278686 113590938 217038804 228296957 910268029 999373602 786711574 689502742 179207457 43374935 113638935 271379390 420308561 430815081 597762369 717537718 477459999 755148481 391878078 501083163 847591696 977538330 152193906 459750218 360329351 725801490 597173144 971027395 600502225 911257819 40236330 357474364 50719979 936962524 618661388 486143554 528812823 363284845 723546643 674435159 916261476 277804381 869847061 913010632 266941499 532973778 646080447 394962931 534506602 886009783 143442656 358629438 136165690 206758049 684397345 43849485 616302042 221874164 484451058 948423123 390003340 70333537 902508284 414994613 740210849 352739877 105340980 832873605 227682294 850553373 506881989 19411015 391456148 388721966 343256803 333494136 260653410 787564197 793488581 121839517 396858601 313531770 281237004 371219236 707061700 609824461 748782656 109752310 718653792 614505145 588502989 298601333 533839103 482124828 491023274 688489716 446801590 765514089 453154824 49330827 344244077 696644336 818377103 417705184 227690561 342224582 745832175 833346185 527770341 490111378 38127668 979193607 700639708 307784478 553335375 945014551 822319690 452063968 276662266 637294082 908451609 729554313 565621288 278961913 401981208 606920233 353228162 524324682 434064281 217835126 560100566 14254085 90166377 259845262 158148319 622021652 762727820 224643849 895746375 917919122 917353359 25079043 108886567 125780265 343264542 248248837 757667760 781925611 994582895 854205683 494074376 932045398 637048375 669167107 651903449 386731888 983886069 113088717 644850979 573181744 864905509 861030239 803492534 274278920 777533799 463664380 716757378 757305926 957151513 390468702 240404942 168286691 766147590 925356671 888198904 415658546 771699034 405443717 956283052 22551362 434649800 460840034 864278407 26039928 829245563 22231992 371931731 808245286 160155447 562603755 134952147 447642532 432878949 981427181 180017597 672760191 984473643 348793940 593821731 706343691 797721121 173934261 110304424 266961123 781521915 474715344 132847556 323205016 930385405 425282104 411852860 390100630 637748789 599096863 363990764 634126726 603279020 575558982 262745326 629310897 277971798 769411221 853629429 247769572 454461659 243628576 184716373 140126830 113995263 26883738 65015299 590513000 486998993 122348361 379571620 881713796 327779068 780749946 592777771 824441943 196746299 155828845 832720784 68066074 287615704 905879949 960377300 283306456 46217991 447297448 589907448 164716697 186838691 859545880 514989273 316283325 527531600 271875967 315969466 239223704 916403649 268252084 683828489 531421934 458520058 47629826 301802211 245941551 332916607 115971681 70958081 168404710 7173515 382643757 995959354 873034573 394313729 652974232 863004996 84456892 362399304 480838513 292079389 722557494 214380558 688435347 711727046 488693445 214878482 309832120 975209851 775620537 963996796 773542149 445196373 153660533 746401128 16037120 275942717 523520789 808537876 633624536 244075395 431627578 115534030 654125701 494657355 327635888 245528486 629427742 112185010 291247701 734592147 529553887 736928702 223011036 852876922 519220041 907232340 314781919 40037923 430307864 914906385 333997749 329746927 716614330 549207184 367919644 141173472 162365876 356851741 287597324 306527841 654730304 28288027 583679570 240376232 632964438 798575877 968944046 750677157 223237776 288029847 905309031 98959017 314687730 876869070 916754490 375447277 294681389 96958762 358499832 189322190 708773788 358085231 392455144 111266373 604205865 426979455 171283999 420833862 29412150 95270208 729665584 321981848 107558007 379715670 244817048 413605043 181992297 255389117 351853866 806382102 922315414 658102469 723073502 61045982 354200679 308112819 1284556 88819647 464660441 229830371 669437051 428390428 504295035 755027519 425530300 243874920 542523173 57794662 314933662 298192540 233463679 594646204 150255160 323579638 733931641 982248369 924438327 521570226 295605535 684240324 70988169 492163239 947282699 641283366 232865389 906413444 210890654 102777860 222845576 167173656 193234255 456541351 12258358 173877213 825559257 565960103 912691306 24792642 450555351 948706087 953956522 547716306 624770456 147113795 43995784 193135914 91393210 264858178 670355258 36696307 582728148 201528764 235225482 365680859 707687052 272808525 41650388 544075680 23822321 748109738 258619858 289376549 761008078 465820122 203824163 869565162 613545766 429099417 247048984 71776896 503695715 410269011 584646698 105278146 196959102 810418033 748714491 454374466 226910824 256334368 170430090 860050324 856039494 952568906 448036449 526961206 939967703 248214949 595366620 120257116 760826028 62854733 294807461 357851143 406774018 410204298 831125439 328944175 651509816 865184591 383453775 891376891 158314521 115095405 987490964 416286329 335203134 830877295 243848843 477875800 834475986 743543449 978950039 401440579 37052623 359766379 105255397 691786453 873347289 139428778 21843976 401913136 813299996 110361990 688817765 339585317 472457022 746180537 38238106 792806426 274526932 606725269 901886335 528138452 135286009 820481337 228485816 786949229 489873900 116015058 5637103 6802932 676781384 617931644 776336151 830354478 981724610 801077423 614464673 974749602 918863283 886951832 112158207 875177812 467376526 624780526 666693442 929816097 229565848 667868482 438871331 911892101 748216556 176055412 831929989 49239622 854228263 380385913 434358506 429860134 514780847 228305365 659786007 876462288 172292579 68483491 242520126 719925877 223578472 951606680 21386816 807361701 519440086 445995016 978330192 900310601 362948997 816682483 658984462 493681040 401873682 286240668 468775029 148751564 748513532 441069898 371115622 966942667 7513695 827672828 182115031 178848940 53769971 869303624 704659609 916221877 484454637 539378543 399925548 899953945 12252335 168210333 99716333 529027188 676861862 716053918 509551701 686262769 39991455 846486375 824942162 255747914 562394046 549763818 469053080 260150692 516121324 750004757 886243603 728661621 938658680 769427703 645482615 709260389 86909326 989315547 783606126 291839291 529624528 320812906 932596638 722899134 66454892 584217180 457255882 85829850 719258626 620832653 337742951 721671792 20965326 199444321 143758470 41718619 8572387 27645724 645336163 998169800 674393183 62288798 186295253 601306948 330741414 646626610 849586000 243080386 936742865 628740184 557325147 618571581 807559233 54093708 142396488 11560728 680709952 325618297 871390707 327009761 467075860 603763112 95088047 398567908 499594234 409350004 316899269 20864099 477979685 279945955 392636177 331693711 241288832 676118029 23188700 270415109 515859352 390524975 479588291 136833803 931586389 767332632 225191832 419911452 912662732 319432067 574066529 227814493 941377532 886699213 735331089 815336287 804883913 100125118 476184999 473141122 993362818 220583163 688693519 862522302 202767528 914247092 790621660 573877613 174369380 359211118 332763119 553523492 805878349 248532680 340398185 919223842 881549150 761360583 319794035 572913905 722651169 989403078 888886591 118622811 800669984 28806632 705208587 124310805 89025218 365655483 766074132 252433688 426021752 691651144 841566396 749805294 212968313 614524763 719143569 465742426 390659001 118998437 872801757 357827158 355280153 124529647 56883218 759305332 564138002 756401723 369421935 963049638 633485846 745301947 113247519 281048990 911221746 563190996 550280539 9381013 983635218 527172628 744572014 866141123 603655607 771810968 750837525 475153249 562665441 629987108 711267226 863864881 83383278 75117613 549438914 82523232 178120211 745324668 217282132 587393897 207348715 612965171 169906422 878292698 414517345 14205064 538214542 315258340 148617291 54716534 225437198 165861189 742354389 740896625 527960881 571161429 18780896 98453752 592254571 966530568 484019062 987763042 179215433 924101283 983799016 498478514 6776562 865979548 217662068 731518836 480787928 923680233 220115778 883413171 892223940 50896141 244763529 272422608 756577971 220246378 632950640 980080974 455171434 385347243 448823951 538940068 602691719 165040623 869949319 97265283 564403322 121978722 459177112 629847225 127941500 422832479 138868362 403761817 968621746 577561859 180503380 814171820 174064927 262349782 645370534 656816978 720182455 250424165 767559763 128255165 657764287 261848400 848764043 894427589 816228534 822803844 475591082 900740485 2941928 531357514 753210347 623939402 943909416 255251872 851403560 747632155 66792502 869116394 810687482 746645647 259438962 732071138 770941851 177340301 818522363 250732982 754275717 245595974 432769325 15326854 516570494 135201698 54009650 300492430 150712948 690992832 716346955 749050873 847559653 426469361 70822459 294816736 738906227 547564044 121835270 806878985 487222507 395443144 406709052 926685616 990160015 931314983 49809296 730952954 508801499 697113607 507950701 152477303 822917874 119457588 294312596 775699416 889564370 764598260 285888729 624595302 947462024 869497838 246572332 959437533 415908170 838185277 918526099 181841551 669592313 463287348 533788084 697494681 983244445 546183052 104227091 421287382 897630169 207120834 746498494 908171099 770475804 609071408 687351538 70118099 138974513 103237229 787131408 224860626 160149354 524004768 27764937 296218219 780810389 34987099 225542710 371943379 189641356 602787294 952328822 966648892 154539403 7667428 995193556 97674851 369545150 658669695 628946181 476585061 650496165 450269545 642869742 239687007 728967804 7660781 467100547 77804031 840717889 471372370 646076685 141400459 804941561 910867098 797815475 147410851 498839630 185967435 877941917 242818157 785221345 682180452 430969399 521446998 540484028 109630434 50829763 77650851 775141638 208107465 694790609 47421201 142496083 724149395 731872870 278559056 669314645 704090265 564778911 97908995 707157329 982380459 731710085 856606983 792416032 41497505 963362305 636694778 86793275 38639986 156278610 951669376 427108206 214785286 986827633 682614475 532780984 346435141 176653640 956082586 33208616 252773863 581056174 318761648 751233459 347327824 932842106 164917338 227355874 599267224 73249694 955772114 955980457 520509183 536778992 689001306 66714370 697646343 473554156 221564087 877073722 879540995 403754827 122906453 531733736 326881662 345043329 151211593 990425765 885654962 139917022 952680074 105168087 934483880 99094200 933224090 963737577 229867950 396505277 814588959 897284387 318742065 804488555 166145135 162840288 360786304 588024958 951406231 338948429 90351344 923472035 509924403 736406845 448042694 851406046 550934572 998442607 596937709 601619013 825957425 667639593 682546924 56542476 608223978 101526216 875193286 658456546 574499298 294252155 806120311 415920666 843638622 371052348 512610545 407328175 652904898 502805861 303224336 482187762 65952637 687730604 592157447 83105398 807050553 677333350 192835022 160585722 227152535 681397232 131978435 886250020 701742031 513064114 105035931 742593190 765089511 213068952 933832057 155776212 710481236 861641704 789991724 500684131 85822189 717153726 252663342 342597909 717566106 885114760 863023571 813627943 543480854 476629437 407715841 674691536 294399348 772499391 812711002 942310331 620471301 18802468 112139365 129244294 286520914 466662728 718310084 943113457 639444127 30164435 859959566 219181309 409631072 438288489 442599937 286786033 770415785 948769142 30606085 27367309 29653928 713763347 978513090 83091759 657412776 124327382 906296494 902180741 404124958 65182625 375934545 792979601 27339479 72301413 733402506 981867020 174509108 246395006 992189548 336611176 776208078 763524123 65423720 376461877 851787368 5013518 774698587 22687701 443486527 494880051 852718936 146388209 368218273 99178548 546745513 4072431 518618851 51570987 411008684 611837591 278456469 240351829 347585195 186944735 133603266 333772539 373897356 770846557 814775258 629216157 733440663 870781779 371395774 500484786 554598002 369349410 250942401 39155147 251426935 826078933 390730808 195914326 34426267 422433557 298311963 380251532 812671105 70261609 875311881 952901554 53901833 406999574 16800579 711715718 914677659 307158961 239234906 268274475 862307445 652589077 439065836 20802981 565004055 886855657 493256381 346526073 284933000 909640856 726593711 255958045 600755041 770052367 588882312 187482833 7250412 418350436 405442263 262493829 482463500 434010293 173839806 99796385 828379765 952318567 683651149 525935374 110071462 404967590 42358286 37818385 239413184 690197691 407404885 110893263 5892036 418162564 99894731 96315490 576520166 618878543 860518584 289514706 389238497 674679366 217327536 367864745 875908707 591359356 615727702 86454985 659825961 678496902 771831490 474534043 923296759 933967539 906732536 851362454 140860290 479952797 768177916 831463578 735331962 201386923 982735381 57979659 780059893 152157774 299163219 414558447 303691203 344918788 497371097 826717787 16825825 560995955 581415146 788257039 194192057 667791450 876392979 588924856 365340564 722344126 472267072 5584222 316051364 554359804 188052531 558224040 609465264 484937576 30784622 531692823 935009259 523875251 604395092 69415172 397431919 712254323 846677768 796487984 437079339 982155271 207216606 792810309 537808480 871302543 808818497 411166395 796504371 854464819 372439181 790155440 644593464 87708810 599269336 339816804 210445937 985333334 70537669 757083381 688287418 467347069 860383999 905182002 379552240 422858145 108294532 869426467 165523644 89900906 316177004 456361795 878612360 189149184 807174585 821773948 852388325 424778985 656214558 680335372 956665609 233595510 751889985 800013405 873756452 836338751 683165779 428790994 560278228 398190215 9043112 323524976 364799825 303632285 821080614 955753581 151802801 697209035 697041059 738891299 425854055 378486848 915224101 832169569 564401407 173224306 737853435 347343402 295595869 551868784 765576915 938972080 642703330 506673227 756681652 694041504 373415765 494664740 816428464 450890741 913041003 153388675 950391366 216354475 77252651 122291556 869721933 380606782 790540117 144113363 869420304 683448965 593452683 937747148 459496327 450044668 767117659 548389540 26623245 753075941 168024427 649053423 785550127 792831203 55272383 34502375 451490241 646497846 982329095 49894651 958230608 584319044 988952996 719754506 446612815 427289603 299152464 217917541 793410035 325906040 654075187 292692817 158222679 730900891 88534148 962136551 717683143 434363748 921934183 754510492 675188835 926290376 486279225 863357926 31108554 735251870 184450288 883667343 117978917 639180236 834139205 826409489 316352521 841426034 479537883 134918349 396521361 854045127 18079098 497967111 958582371 339418733 803111551 26817913 703343359 49664754 948507297 469711386 7428514 743493757 649314171 514547386 803399921 551514973 832832727 480198314 598678640 677105293 626524039 898431136 410412954 516410667 456182345 150352717 587379033 26819960 171901448 838462392 45078249 916321385 847377354 643492167 157112086 470458976 701258608 564677366 712854461 907437924 367028246 986403243 267939355 26910259 317502448 192764760 753790362 111706882 509674523 508023196 120312434 916503985 45818570 597941259 395062397 149498210 459301718 495342855 89095655 544876741 847460137 192119305 129920483 423798995 586781296 663177553 51349798 469698008 497756513 442854533 231790976 871679261 308188596 981383253 617308429 289310967 508879205 301039986 815602795 882525469 20001806 361381500 513109433 715854314 752893658 630334960 759453530 957159602 656168505 823343552 954792547 688886365 246903294 735123441 795086398 26340329 823716582 67405661 497239306 246759884 194451034 620082943 121730133 437565400 142399344 243335128 477988582 636557619 500428360 409109927 840888792 309626352 160660575 639604676 150418616 32867634 582410707 559634974 277994072 741676017 635596447 733778921 621417724 996279985 792427338 162049915 514337437 300270942 611018713 680412289 975026622 56467908 897738727 858750953 736074243 433812699 529269555 62900269 630520261 929430148 416748654 664804191 632124909 201428785 75284358 19937167 630334052 351105958 628748392 34829550 455947580 692163629 276111626 926355642 904840673 376012788 664715897 728664828 119178258 308497515 515125041 550822365 297852936 752452063 197160586 455636365 62537769 147348339 252119556 311873106 710741266 598211975 611226015 372242614 270893989 873493455 963077942 309556290 791227711 847927524 740936097 467725759 556609302 113793427 932176183 556581897 942053250 564208028 692537737 249680596 753294282 331261544 655153370 836065687 119352938 619415552 241582945 51909933 484217452 433265853 403324378 166316425 485224826 687545154 689942175 285817475 759103461 240415908 88779313 17813726 331017689 834051538 242355988 534328418 52736061 748283490 823532416 861055131 576015490 475667367 770591694 783775271 253049562 470771101 870205103 195021322 828689551 464502601 42064000 57380904 433230876 221985418 997021996 310962073 490703419 86369572 208329904 387398668 67009337 551122239 993775228 181407743 895942242 383375221 415849873 967971698 538475063 555326572 786815106 87283305 350029386 785354670 606769021 349523831 615244060 457635305 967443186 556427044 265043278 575402403 309689795 662008586 261718860 765007708 808487157 180066833 732140542 579717300 697319092 674680934 191268227 112300922 253527463 198853248 974426812 162090731 989695453 67370615 346629428 672756086 92232241 870015826 313845793 190584940 35220036 908722979 916591832 867721292 257437057 258575483 753774558 35831232 961211087 115559377 330969647 452168829 557746595 273213326 960363305 457594386 75186030 749214910 204199993 890088483 43430534 458983667 648548065 506970329 283903469 623503750 147589648 530453217 26080909 552185311 375457875 840744463 108621628 611698100 544437995 549443204 102249758 59595639 155962550 593958832 140502832 847197466 262057665 484417287 700292388 101016695 30370021 604923112 907405071 603218446 53314003 819531632 342893163 645344592 597021212 357456500 652555977 700479839 849589869 424322416 544266015 875571086 451814295 172207191 455695888 203596933 636402091 243865806 188295277 676039159 23591950 628467704 110657866 126941224 416147149 615213558 495201160 817922575 905757518 574263594 363830301 809280410 478730316 724133911 133394767 254869025 343883151 737859441 144765047 753417643 543322142 31158272 322648876 441581938 135478478 566577383 412398147 568113914 738526946 181913764 679573178 93034271 633425955 355807933 322639392 896668017 899739865 913978684 392951201 201215127 244157203 811138416 213340118 875402127 978383208 338563219 110135648 615853243 575573790 961408345 990159014 82906845 603004976 13801958 653335116 419339433 376293484 711727925 360075257 225255676 780439081 124614554 771640717 584055708 119811464 423470284 602370496 699778157 746737635 699239656 268144571 727280784 462401141 229446507 187156288 441225324 84841710 161615081 462201510 529926791 247342391 210336965 262160784 245383219 709554148 983243840 916374781 316850529 941986939 46098796 729033730 4386057 62083373 836695899 679712832 138824215 68631456 803233467 859018413 154377823 812067205 651732832 346554053 203014463 36735764 557803733 224884880 85918625 227117602 729482552 629081855 702316432 423288803 214126886 615029618 104177736 592257492 175504159 229132196 248212166 739784557 481219629 194027130 364985669 359629606 428507560 173052569 839684298 723647915 144131204 412599890 139530205 495961755 515485525 204458599 712974869 10380564 892861366 437484580 731831290 720028108 695714129 731090216 581059192 607348228 68732676 847816672 505591423 989431439 264834969 461984624 720037123 384121364 108820967 273017417 103732819 847267062 597358651 299218284 488372864 227892245 535790771 720025150 996409175 684705427 242718884 369531764 793712582 912920891 432479875 767215936 733066012 419133152 157219579 579902112 302845758 681648322 558344719 882824124 315864129 495152646 838126484 208651256 365377533 109911495 633707584 748534099 315745373 403781406 344968381 768062498 319462263 403730379 239721314 346833686 669536260 296583297 403878642 653348181 878656820 140599583 10085517 120080674 39678421 342339300 808258278 844141614 448843337 905829818 127861236 395433144 886321924 497425884 709161276 773643621 574410086 431316109 666738828 209852052 983023580 384283387 952999081 900390540 175170951 503123125 746912886 551864630 365617799 792662393 915700716 873828463 879702995 801586837 858492881 113716365 349452718 34140344 727789060 660419887 637363159 884967870 898685291 316346990 856829712 96855960 509781287 774702531 20342507 895575492 281670554 488879763 904182747 94380282 488820473 323792020 486492541 832042330 508239466 502294223 51211816 683691226 606440313 414078272 179071632 845075336 928023380 477508202 322122312 13122189 619589157 360597434 931295781 241747140 64306832 224220502 891785160 465732397 630353262 777185473 839468584 109167730 324997786 39406143 597482702 824344536 22460677 294181089 235666492 827438131 57729491 956320923 184230741 944247543 303576693 255326679 388145668 925525187 447009222 880855732 829111407 817162412 57871079 792117407 282160725 94358574 589118932 456082041 677370256 950648566 426234362 990759801 688918631 271773223 332501394 169590041 620081663 767514749 261730074 916815833 246859079 936770044 652554516 84408441 498790531 252628757 856911981 407949103 639972598 743871770 121873956 714906359 864299460 646440594 554854756 189857644 907369177 563880153 767080790 187737494 397449604 851153833 329169438 201393491 887628740 384463835 348990501 300186861 838153216 357448400 350355545 897096469 842386112 588561473 17903566 361615856 340159594 532009241 243834757 117846478 718469968 747983888 163160884 653132714 147995729 962747820 677310092 884480736 209267310 605336953 402625069 120293597 455254712 370346203 260178822 284191541 184504358 906956644 173501510 377755819 413706567 104327365 7618402 318438557 652562608 636902608 49765839 783804115 192216266 819826939 301777408 566310036 694159964 921731187 356584792 938787543 714779824 57570603 863603718 808325304 758129304 948429782 445142786 381954225 544347056 509071343 14361924 506055749 265309304 577936278 836335893 390510042 983316280 287021560 562871962 774007115 794817028 392333434 301298566 644148935 500955405 263175113 74920534 610930518 187119889 163724153 263081302 431333580 934726901 107236921 819095498 622698887 885124647 940343206 715641985 129606556 970730962 24147047 895974583 520907387 422071370 328918066 768579403 587684422 749945191 826453867 717599927 285925506 745075782 327343394 654292337 549070299 722460906 503603173 886696486 579964515 794297219 607543767 751397558 253561514 440707888 949406857 769020680 733079555 317368974 894895079 736976200 978492262 501139519 87110794 603139450 523068746 746206192 776457704 210528312 56043350 132003264 681984657 758359632 708200021 518940352 801131173 581588965 751960475 468062789 859909902 224738696 381060045 491966258 71484292 942313751 729725414 879097089 514143633 451163444 161364291 679787775 496782623 193490329 876407164 365558491 704105373 311458747 531319452 535541960 340906079 845245922 345647145 96752075 280664888 823981446 487209273 633003412 897697894 936973460 707009126 301867196 568962951 68346116 583449965 493976072 699472219 855035092 583200664 20554279 330283149 337201388 424330907 328545323 56187921 976751241 289408282 611992808 503265094 716426061 345660971 325723797 222476878 881685463 143571691 113687374 293266477 804610653 994594848 442740089 992258851 129629522 610853123 73476712 178703560 116410157 76265430 885563905 553874076 63364021 427650249 855362965 371208365 447248983 4157795 104456936 759885517 663117284 796471193 621316763 614413672 123509051 438425703 172587827 654679688 705567769 814523198 501325039 567578415 683156899 688773935 402456559 540263503 381509485 582954087 532392921 190963404 503896416 606019857 513820347 214303455 495112242 487224237 572519318 766054657 561797875 371773416 179628734 667883193 580344186 747858362 332315005 776200693 23140733 214883435 924932538 484349643 446992715 343234695 703875243 390343298 871703339 775525397 662098213 251534134 773213703 494362121 741083148 862350694 263503719 300721747 443803701 206579745 100479016 604018477 833777361 179626577 3442839 251922131 597899728 58513152 917863298 277271914 243831870 339169716 594857983 686008763 331150266 562262804 166476443 567653572 983905415 563886068 287804212 988660184 916668727 517143139 642296569 528552021 134739523 373214785 902238141 266114409 229298655 296627996 623938958 815606030 824793094 800050695 802160794 806832899 109768625 262325815 903902250 566210955 529226819 929784209 285826380 105040937 834329639 592075654 318153529 66237762 722631984 911990700 357063322 955943492 298928755 710452725 549637374 509531276 740468435 195111573 922589239 566616498 669921299 715628357 552156810 65760244 313405195 745608160 673305821 296906980 58239769 453375180 441634125 762249284 671314529 697141643 333845385 653457603 836027824 395119539 444176021 535450186 651994911 600505681 831097202 491086348 884946368 754076703 65505132 546215558 469936344 898939495 893266637 77774005 673783225 591165771 52186603 323417093 209532705 935567728 752606051 550616166 709120980 918059321 648103886 165034856 92504932 615127657 612103194 554517407 937080193 899796596 128162810 777437178 650222088 481665617 796930084 457226220 274261512 961685573 423209159 591367163 91085853 248376848 579473455 867269489 566190634 542936959 188145503 790891968 1217448 718564431 204992821 147772941 919132713 665061174 943095205 723194143 410047511 817587487 773949371 838843644 865478402 431354413 204215592 163307083 951664894 796185447 923101932 293055685 251099128 944521917 778292444 933781707 554163151 686204067 492959484 200846294 685639036 546155454 429392498 705671192 93465277 518969267 678609882 564190447 860559347 353629406 175231009 648847142 738447031 445579396 359072816 965978489 737269496 686407475 582055304 546543813 612635256 470641211 390013399 539963665 378362662 211894023 680914302 436960557 892428031 690840857 143898497 841578862 547855115 150077053 874959210 519777336 391454782 553371863 442612580 594496706 554115824 513404424 677660388 259180649 878170485 73957718 570964022 899487674 483830172 926043095 873194219 985119325 844515305 549836829 500520331 646741541 13902568 725300002 786417153 762779580 568859746 527095395 344969377 620624498 549996831 724687550 202431612 607781264 535702749 724007063 544898168 181411746 69230169 514067745 787121719 783847012 511101440 337106867 461843024 121646993 164788989 692668222 705912013 369015609 177941919 321394662 447742704 402765902 698089314 582249005 253163797 342619452 440137782 637283722 101696008 338176147 342513403 54404810 708842767 706218789 376886455 703221664 837790589 906269091 207188604 868576395 504464567 62420408 840880158 284668731 127923184 217718400 905570878 162705580 572004278 547099139 220838035 610353271 909481718 56629597 752522501 437041989 438512821 243133559 387008355 493404380 71138654 640214351 479750247 627984300 579302078 735298750 796025543 293149405 827138211 274750510 719019922 373047967 741549937 950643648 906091092 37054544 372966053 891948911 311088069 663686285 944990336 181040805 30340710 86457325 203832081 373066803 206399516 125826204 979910586 581835117 480098829 735796140 685866853 454696410 953306552 526082499 458147993 85237934 211788391 19197545 33969642 850930409 114643110 33821146 929605573 291292973 264791382 348126743 625105366 927514 596637146 669505608 835333571 921133247 122594270 270011030 938896532 552679299 72801659 207774812 868086499 708125837 948058595 234682154 63286733 863707423 624018455 631612858 42115185 738164670 63100925 374668028 758301994 661674665 741647543 252963803 333971998 820994214 943530870 375165917 298449093 150100803 595592254 975335207 174101866 234056970 32696918 921361612 703201945 362982404 494883914 297079554 835072770 288569297 2396743 20835090 587602395 5926038 302790098 339761847 656054269 754141769 45156902 588810835 74712838 376520426 66773036 430623737 270564145 810295465 118549196 505901765 508596827 808389444 148932274 962656988 359267257 45160812 39038139 176904185 889309408 81111286 62490454 945271563 103640533 460272023 137727781 880727823 930126587 427215138 212303740 209081088 104354602 322083247 737116705 299519170 121520378 173174361 206294967 723223114 830391717 608295861 475806935 112481715 495125591 257723674 138187707 339301023 11851295 595861331 814560427 5986421 91243480 380574351 790288197 498342615 504598400 2510189 282096101 423321547 467853717 23297177 21906044 936151730 339562209 129211318 730091193 695090835 430268598 828268546 676043963 714435827 548142157 463508024 310429957 529804318 757087248 867413377 456780902 824847677 22584160 132247532 206539865 820195886 817420001 560432450 683403026 984343110 541024604 856857270 203132501 555279475 902982919 518952766 130806008 423985662 50442779 313403350 381848730 701678808 551726112 778797376 529384593 584729320 445468590 933903771 902817414 12178979 831186625 430109859 5230969 75081619 319703067 595790243 523521518 934667718 734807581 882114195 29029318 853240245 882999900 188794190 996046775 84491111 409269085 926769699 643600518 196405152 422619188 642968369 945214256 776302809 543156666 613054858 108534447 611230698 222415595 449019821 376496434 65871947 668193694 656783080 795655027 805915873 16699125 477159199 211060738 986082394 709673832 550052882 16978734 929544698 198708322 862665869 271035536 314678793 226113202 107538897 172153212 1454257 484791680 391002210 403854545 677689238 343561646 781699568 412741814 470417969 345694455 911851984 281369680 662483751 844172690 150638701 241337585 74431633 480215119 141450833 125108301 334075047 989385944 144019839 220033403 54806515 541106144 649682341 397190039 739603854 316739237 172175596 284223316 238737405 798125755 377733581 348928039 15597984 486805933 159749064 292404048 606874153 549299109 114573654 382225509 523803777 37303436 804659750 454705161 841784163 974872462 60329769 55605738 613990720 37139331 320823316 228290631 260441037 747381619 314109535 273921390 39356112 935428310 192590204 958884446 772132448 129500180 82894937 674786547 994067281 423190778 208193963 167682002 28733203 332832100 646371502 996752310 329226575 414835653 979348927 834432856 391767868 57599154 752468161 627512490 829033515 344752835 280953932 245269098 506276738 852195177 135732605 386509551 423470233 647358916 879926857 716031437 768153447 578993698 560465193 759854682 867483547 951530252 851402163 906425624 239507340 338184807 965111675 466895250 688487204 222881502 755700278 398588135 450241309 869616477 828568414 406241265 563780454 225374194 422104680 940378573 141826533 926811185 350532177 593519554 164835144 382257808 118109972 637311933 796097729 844285458 498144093 852104661 223662630 715590226 466282829 40911952 343856685 617752831 618071199 528348077 903606840 725968004 60007655 507353917 979019223 449866109 654388286 559265401 384262362 54296652 636666116 975499958 371847234 49242631 35200285 4445208 775733969 600565196 928824030 92748093 217901394 748212898 277068730 875056348 123783321 391234295 179075073 420333809 996443506 899121260 577134038 761456281 983679292 870962959 139148071 655328253 912206609 172314441 751878072 475161179 403904334 103328680 346801131 606356687 54919484 527551940 301837922 160882525 734178312 379303227 156304391 440653407 651184010 86757804 445815231 859779810 106652492 762540326 37735503 819156344 25024657 543675505 221734135 709613378 456207296 519445376 200393003 584353842 68969719 701606723 379541287 203462040 678986390 146447693 335129234 625309467 435580758 291243038 498647386 703664623 677531417 805127831 935757873 803910381 72386389 703727681 763558017 912760657 404100006 978464825 388792959 810913392 511214522 201924669 206500356 150129898 135987788 986968976 589467167 523087969 38950569 480294318 673262910 958567329 759103214 508128024 466058561 339243222 545392320 452723185 510433008 474865256 894711950 171864919 63006678 807204466 49134244 298778984 547982501 356699689 540869527 605910179 649022332 855595359 406430709 952680166 50142359 453257045 576264102 427550922 622379379 538386552 149387050 811775349 574076856 212358262 5961098 645185609 354931881 97877442 967149177 286848655 528552075 774203983 702699895 766379573 295378890 797185918 254536846 504316970 427735648 139887411 144629039 155772643 777413339 313498507 856497917 662531581 665944030 34833697 759779900 927292216 700626881 736874273 375545504 664212297 77525164 214426432 601150120 691255377 940239405 658235567 311138080 292334441 871662402 684747152 506066082 3898869 434213639 112978854 316655161 90889388 550932022 258676913 78411074 347993383 983573437 51885994 875255299 758026002 159212487 670315808 273965022 432031712 91874536 531904562 106658578 593367927 628393813 385362035 36748967 712396281 248158929 587596095 611855857 757890153 364452372 459339864 118168496 58163774 113175654 130281297 144354412 297188086 761853910 83078190 473210540 937367762 941424708 242658180 942522344 355440977 902366607 794415290 604463432 502585538 78199612 179079653 268170827 277587282 518113396 942796562 186695089 549549149 483278396 491017208 757070373 757058064 591347743 596015250 735318598 402320965 58120900 327776458 955349969 260945500 550001426 169866715 455894370 790086425 396940695 339718561 273465492 264610758 30649349 217178311 907060386 469809918 49436565 860811567 172529809 222398015 70198860 522042856 378294528 318070401 893770313 545864642 488981860 529185402 106984326 782473847 462914610 30085027 669680208 612649063 890853107 427100022 342712214 347297062 545263632 632809598 70885783 972011123 132813999 163997285 182684527 80035854 97765447 837897015 538643971 682907793 467180730 241185355 268433659 577965663 272114108 747413230 769710191 857316870 208411120 522690739 204554932 18035007 794235592 483808428 579471975 480929476 712315816 732566604 184603359 587450176 901524890 1415673 95250023 720816868 703590023 986439869 858376127 525861510 626576249 115520779 7408280 378396220 772049344 522073651 845048640 17135688 655565818 565141734 267867636 7582563 545940043 550338339 854828060 245832162 410783454 250435309 611718537 277191416 628003764 332409145 102789716 829878770 230243421 201106780 147383158 72611351 509909080 596122197 595387476 955210028 248290815 802575924 731773339 643162903 350706834 714924740 304274943 789117171 338444036 554614051 940594915 893581991 263055952 288937159 159298205 698523604 552717311 759039832 315692029 293252484 598720285 114623998 75410413 302731109 606874618 336497223 102235219 547085585 973390236 276814362 461936011 419938115 715504398 489609750 356455599 789794776 966713090 961635257 705227784 84381946 445834665 996469571 724033299 721328777 361745324 594821538 30726481 261765026 570061047 417193522 637477754 4172469 916205104 832667185 643678803 953565983 468079229 155792144 994355759 336098718 86888399 361137840 162883229 226208724 43365175 745430559 953638005 132515370 348747599 12463112 900779765 3379202 157505392 288037073 165404994 210163611 519035874 270238704 298497951 128338549 677572805 68037098 604804020 403836577 685642658 98531992 427701679 86668113 372737581 641386539 236700312 494122318 323261389 200034566 459020656 840749584 834313640 857757763 1461627 42715716 183030027 536121146 942225806 946457952 827605562 510567629 814531950 440702986 234522940 440333207 846417203 516427931 298574113 107061404 339807119 375516186 318325921 732401952 208952817 991513861 928163349 359962188 89110587 750606376 873785708 306460093 244608598 994777289 985322998 709979083 27253790 609410181 849400442 253598988 885362580 395063841 708697805 920441465 557935900 617232695 598303877 504334976 480006840 940133909 134688320 934709758 647833021 548736748 497483908 737963649 160154139 866960268 545126221 683383938 314360858 490170680 789457798 189195438 783305867 454993985 455607186 311408059 37338738 834516483 565778002 455272352 566986523 636307806 2768932 486118933 336586953 631997082 244417144 381677975 199666729 819285863 771712833 619676797 603492251 143068244 799587918 641699618 434419618 143093150 530553819 298776742 470229592 710039204 766271955 547372351 915129115 326196899 246689238 692170538 235235073 874449711 815376841 418132228 219024132 216715194 180137920 89617195 481380790 421272362 444132409 822587277 620681885 463724598 547850919 188606081 888443780 533048927 787580106 744590417 720451501 842309502 477402561 296042457 125616775 591620273 714627190 75561770 187738966 197756262 287329185 2363437 648375065 948201529 522482539 898820575 550730461 794238404 341122384 187179564 516595114 668154784 303303462 151563444 693932385 627916693 158672517 778931365 485555222 718182424 701687523 535251855 390808598 640880549 514289653 312613469 978006129 527435002 611494267 860334228 526741202 679007286 355451302 20722656 742689524 655327638 443418416 930583536 753211680 420551409 511767397 997562044 701132146 475192695 628292001 916051489 711622142 508346077 832476434 40846571 743530714 571897169 298828652 432715996 734100747 459644033 629760109 101770319 791296592 564232689 217620828 551033064 951201953 240229311 884918514 879393633 523050282 281882824 885053207 179317272 996383737 450214503 280570168 987767775 907265994 277835709 894036888 264596969 405332290 892120888 166075676 331364026 150817884 154040388 153103504 472914979 431985478 102690265 79651824 121852104 623297239 117241189 530569462 804587366 474304264 707140903 202830663 461312061 846320202 19453512 498498020 492272996 977142957 337062282 138157661 182895081 792514419 951562826 158551776 34202028 143108590 471419639 783650752 495001886 286423506 580872162 472641505 319438376 438771037 139680732 996443558 409724779 285030157 378668498 850425484 115311793 541671918 932836937 966191360 568211613 73495838 992110903 453166589 390379815 287549078 117129975 46477134 495857695 822383890 178745564 971667819 292744131 477819619 762502566 267871393 712188938 988787420 452830781 866635371 775481579 175603729 11741054 802482 883970488 887555746 884672197 968454558 600863589 608644109 279693472 543536088 653087719 921826982 183097904 791910308 841703505 913371168 639527994 655268262 588669628 669847127 147401617 965469522 303964945 410587744 284827910 619117264 863593976 916705148 553090401 692934564 249410681 569696672 616786282 626079329 810446409 877870745 633872364 749810125 894299150 995427274 83280828 841638885 856760755 899634214 531435360 535093096 792576334 819015189 396603290 968748650 350242541 721660574 32121303 377401420 824349754 895107179 987267291 999094120 720733084 940487515 79146122 502717609 856682218 902551986 380170268 623070586 495727575 640466609 195787428 446658502 348837862 990967078 941155837 971226776 231217446 297196643 15040570 977950869 427340081 991924876 79379259 304363497 925989119 946612227 226336058 462209742 747533811 966991784 932609569 982972198 386375627 394157712 790089286 954258868 765815767 959286617 389073990 414086931 934579861 959257383 606265763 878573026 471140505 598423327 817725124 923852808 801614213 860459051 968857701 986409428 566606010 682431346 10139320 780416783 487050742 999661001 737391972 971532914 772610946 958000657 476028839 990844946 974604329 991131580 269799072 974363745 391632157 715303115 773400654 840812646 812625354 870275196 869277548 933196118 976048856 990579499 211601874 667433430 442929686 523815709 995262743 997392228 289281523 564288491 82519096 829051368 30760297 174798776 951884575 987440015 112770637 396923988 861389282 961974099 318801605 972006113 968791673 989399950 630887179 985414751 496549574 849562809 855768978 928068613 923042044 946707095 340018712 855200170 21498675 390419387 188164614 568630339 181345556 353199132 465152060 660812828 993227914 994956220 387479824 750542944 988049253 993206191 362366704 763443381 602670960 861370841 54417925 86126310 5625016 528121402 845775903 881126860 774224878 851630519 996655401 998419880 56449986 90611872 128771701 339061072 995694774 998001213 647693508 986055257 354523809 662804712 909375743 923178655 6722414 974465050 741107166 964089254 613585504 974837318 629471075 632446769 244189123 543299815 82433707 335997107 568081421 956066228 503571656 679179555 49977133 689093360 424208361 601385482 330831832 931522322 720123858 754341675 825357683 839481399 127214252 743665006 646192078 926804926 968862302 983197205 107968802 297824879 36417280 787901962 910138598 992120075 777153035 920509346 394923261 494613353 461824032 608593553 815383123 950801585 677597980 812174857 444621069 462044912 108999818 544641931 195963138 575137940 271893325 825384737 560179869 584966698 333416516 752753648 800502240 848755811 676515411 954263976 432789638 744673710 801234946 903061387 806163767 950389428 663239738 971755791 363585774 699868377 365672979 726275759 17384633 749898755 953773579 997128735 889447148 890894886 197743979 703663097 323407156 967071738 947755151 961253640 5308645 404154596 958138749 972314471 921110201 931921254 262035716 452221146 378291338 547367005 564482609 810730302 977064242 983484200 939386749 970834117 814979007 856178530 165418890 812598967 450797091 793923580 150610151 398668001 400956137 855496211 713285952 891610020 931984079 970535243 546172511 654069375 102379731 247225167 342432888 809164517 275484350 283477740 739147363 983608627 298063 133140835 133436667 851142747 18513322 508603310 367982794 918434332 185980325 866195113 79692082 533507434 474881927 751774859 88286109 666350539 824803532 926097127 838384725 891871210 497545731 523502064 527283200 720773866 208986916 345032488 277110640 686840002 151960723 849259909 188960456 486959746 975576922 982862363 852594886 904395233 344128981 887964731 71471707 372337416 229500787 586079304 611416424 966619622 260775366 321391595 483598862 574294926 545521038 693248189 367293939 890654253 700295620 999293032 773219214 792589273 632841366 942693842 65442360 623120749 564329891 595214670 545919799 988393559 461178479 985210232 737172277 876044596 363872163 507367151 730091342 831363256 251075965 679389126 584242968 924812060 432655935 602586879 185607661 345978355 986042525 989092767 884692677 906896110 902075595 907488588 162160917 648743804 551908585 868740907 848462903 910689174 553217749 792171001 969894100 980165002 233636772 856010725 4716279 482432590 662753913 720866339 638389353 683859637 627432144 686021331 893214104 906485518 926387582 991779067 345124502 737739391 886834822 888117003 11069477 883861168 517751857 913244767 658231168 954419754 287623795 795014072 796107072 989644301 669797436 703192486 30309146 311167430 626452062 834810006 261710302 470559305 480149166 631969526 215823606 313709330 348601892 426611184 537468919 567326860 292412469 746994361 42610171 834164012 823510215 905126112 722838760 898111436 599537186 668204276 911128057 990285643 393874506 839302139 264006087 679245942 797515891 803578858 1986076 323699981 642345011 757381120 427618779 654910177 110339447 351518186 811310877 894517609 908608548 944033103 768379808 884339052 556935265 668442675 187351897 802909252 345600003 580251160 611638744 934659328 660736246 925526547 156198700 861218762 177540798 715369042 352166562 760827146 733779818 944768251 319365350 782176442 28817221 953096876 372053405 510372831 714639171 814448442 807695080 960861529 697659979 924384845 18156466 321110294 133585098 904343366 325947555 777804325 522412450 708383731 314031463 999799949 32318947 63557093 771964959 948168863 597717117 687010232 859088915 867789699 220337407 870946701 487671008 750979951 252976301 516784512 744221231 978983753 833090287 864284486 169872493 579580874 888773137 982396671 490572124 619699649 305084451 522714393 568536422 640616696 184833229 917589827 543658990 725760859 983294968 987414625 771213797 774236474 193367985 913867484 43483824 638194251 676865418 942276835 397228265 408067924 121169832 762566769 52565203 902897149 483600316 928158021 889221936 941213862 509184899 644058627 678672447 980782899 819170641 990074920 542238834 816861243 371964258 642710769 793547140 914108585 804840063 880111789 84778551 383202333 449137026 868938607 225700717 698508102 551309542 629730229 895792664 902519350 803211345 995955750 245640957 575440755 15188162 480279811 584511156 697310865 284537265 296376848 669279565 904444268 487536242 820896415 850613815 988094322 672863626 707100080 226633884 666096816 299149247 729021019 944361632 959365059 794874345 917179994 571430235 641098635 746733550 947080199 129000898 458530357 302361157 414598501 680297480 925459045 268525851 565780409 118333068 255353719 114174089 965024997 473611552 656557582 381031465 876445433 865095429 958098295 348462974 506096359 462089214 652305490 100254615 233064674 633721231 961973360 73081891 814272399 361626270 885525636 107963628 419829362 472387856 772193011 648138272 837433570 873260747 974382515 633126763 870995641 347593631 782536331 399530100 879934156 681575828 758922176 939898830 992393530 795466092 983925365 765127919 773265252 13542214 120949570 849031542 928397711 744104817 761181551 581236232 891880861 990686515 996022107 37695530 736319878 581625317 767835147 479357964 666014988 867684459 993719906 848949852 984203076 194501155 599954318 518704620 658194166 900594073 978702463 169471991 370619662 133512205 322529814 83419082 501291506 826875278 929794673 204611001 884888314 555270337 837482926 220849489 338669448 838271635 851543344 176223847 406877550 933866026 987506303 517197032 774342443 64504279 411711554 672496923 866403209 866772284 969109466 26644316 641537644 753282944 782922060 257210944 561533245 554782393 988412526 939038568 980772465 698482086 779793623 647985648 707134148 146739688 467599070 894216672 912118893 243056215 631245214 17469398 272273424 424173945 546570004 963550545 999476446 22636475 519488402 864165026 945483249 170536800 701877864 830177008 944970053 375266798 959461647 41087263 788840500 29463665 802294676 350689706 588668375 104040624 509687608 434948054 820058568 868592490 977310068 868620878 888095600 307216080 378961750 989037694 989530543 357212192 942907605 293787701 731151867 287481295 292493820 78044441 164786333 129637806 975344865 597965433 938537271 820296818 987637016 520394383 776313556 63393929 798161019 713240067 786573886 343990045 803781138 218413920 960437998 57324218 786556579 118385316 895452105 584464882 953120775 934797012 963107061 193364010 575645025 695937099 784778406 231483283 949919003 497798114 904992050 403685543 667126390 937529754 974226347 813851279 894840864 213865217 575914731 933574654 980953703 839970006 859176574 130289572 155199946 35864685 165557083 360206531 567988141 761151802 897813447 848875635 878228583 312540458 472160596 825103873 828448394 303044981 816626710 93200312 425293370 563721259 972818707 292434854 376502020 884641667 925796090 108895951 737817352 593274418 606067844 299979220 820023960 815552613 943389155 254781609 529619754 830206605 858903917 643929302 805404707 307920489 886244213 217382449 761190541 154343471 220398545 944161023 977368960 579659488 943474828 722409475 789536299 403347177 441492601 847395937 986295062 318922415 675548188 974131746 992948863 799208238 970824987 490330701 872038850 790762424 831787346 623963763 735124825 687860203 707924306 13830166 655364130 476476754 573713055 915671609 976423897 177081810 743950928 155668301 896299692 70771268 795618444 409614039 964942914 55075573 108975448 895210859 939975637 246083042 677201627 210209580 735496723 115572742 728354690 350379932 531088395 351544200 373493005 731176739 769021793 725614871 781431389 401503040 940364416 854840327 918937911 464735557 967841569 636693736 964990494 2392463 485559873 376803532 546291010 11589286 873401546 893489268 998698300 423170344 725484508 258387290 680204364 516634837 941845057 331665550 411540962 159504527 322666448 841004178 982003775 587744394 806264926 362423678 803454539 410123437 466623712 581373766 720904835 995764194 997771082 704943748 864809452 208689697 971668892 548152813 643161402 321584918 414766697 784037255 894678022 770318623 927852278 354854192 505549101 269586342 678733289 315879878 951729580 472492471 717104351 177409571 213086375 168486473 380136797 113795884 551374441 156854717 736985073 822211189 903328072 945045988 960514603 123627592 495448082 364959891 613666603 293729660 399528840 929990587 958246154 530835014 822355369 818762500 918825940 176665724 613781618 142133821 615542245 600724068 991145696 839047148 859099802 303652355 918850885 746554691 884190997 797344600 798708892 622017424 686883695 422669286 965105992 836195851 898714383 477351954 813783526 396133888 747898388 192647551 425376055 481757448 809928957 335344173 452140013 156370070 313702844 948859673 967926013 821040925 967736245 668197748 987841026 233723313 578842462 467984190 725972844 772766401 847650219 143936077 242725152 641761924 694586089 872785395 991853847 907397204 983358794 1332415 397857432 203755140 772432719 544527678 756057921 825899026 931416073 459428095 964767101 546644185 698104396 34764106 599846357 23601040 904723701 265930409 603040091 111895741 572598967 308097809 363358554 368060755 568932321 761880398 891660724 726726038 866028929 64600812 122846675 541981636 681829554 876139882 891190748 700234618 770427063 193676239 635009661 180112002 854715409 485610763 764817490 2683644 16829683 73540924 645699429 827581379 846189232 748275981 867337604 185201497 380458802 222592886 258668609 676388282 979671976 110088092 936076872 837125332 954915671 766263339 917079524 623366134 942362279 727238085 903618098 579383683 877297285 239426959 880660027 510163145 517271780 308875914 420452410 73108195 222856613 989460244 996700749 52420355 922642964 710709815 995853036 766157598 838526711 750113545 999328561 218631067 992762119 891680304 966371523 45169696 880027889 998167066 998564851 53681869 358122678 777871121 959373707 249185743 917970356 502940423 966958935 210260423 394233748 154818986 647659870 313866197 702544959 863863906 876471392 551426411 716507013 909811942 996780098 654316255 787033620 151088256 748757230 298265170 437320354 879211069 934135117 30745254 818879688 579272021 937722032 662751386 846621514 100964504 126036352 771533494 798387483 296437023 469788914 69496485 79772013 187602006 603578465 576371466 928242494 28786178 830631163 345935670 749404008 772351129 966401020 633490073 786043430 346502082 603537119 994544065 998271184 676663552 928046229 768463410 828162858 723018232 948351553 689439314 701151864 374787167 834939626 312066353 982244910 765038479 930054217 344375001 445564397 356917609 950258135 498312778 640299726 885832275 950941498 154753832 603099076 667543064 834664491 76699820 820502459 923484416 937621213 678643353 715007560 42380170 453619579 436171121 670838815 516485868 978843759 717804698 953726320 114380596 251381234 273051588 856336439 615254020 870643468 203580837 349567235 661485160 920785917 882774284 908078359 766154468 838975051 570272498 713911311 614324511 807480896 674808620 949994793 884907999 921264627 969600362 996518840 156565853 604358926 899192108 926616149 135860027 766367825 898893153 902503292 323651052 740872548 554269456 919924637 322493549 436652159 155719567 887777488 493578178 908094034 938446115 962682381 386411260 651009810 897415351 935775483 652489818 857896146 263875243 527183138 889874121 898397426 382354266 439128672 536490219 599504773 457559942 458142443 671994483 677913106 976294823 983779289 383196027 902024877 428149449 868787625 97875621 999686916 232585505 801615254 478620175 976183471 346713754 880050495 553573332 891897425 439124936 898162024 819487416 875143828 700804531 786409535 337330827 682589900 831185143 948654299 991568512 995970384 771186996 940165718 783388664 854266678 507823756 586330400 645610518 888049994 679983487 960749583 218848782 804834041 83279333 739612545 843790911 928602623 668512646 874832458 798789703 915579191 571130952 624569090 620822518 855048096 377882624 723718747 890065273 988399896 920644197 921531547 970091350 992652916 336443150 520625205 161413223 929290471 422191091 934022013 228686978 523861981 356059637 797382349 705699534 769469800 128643837 286743666 720347363 908287026 470764147 505431709 43504660 68399867 369341259 455903499 515852675 855507178 963380941 990098219 106562837 947590271 590000842 816572564 955359829 986798165 95403330 959079398 697318663 731996536 25325985 182269966 281490250 355156358 491759999 729503715 958564286 966509826 485003421 526378829 941239191 975181385 222696840 930914595 516556273 943608061 970147607 981836320 985368356 996925540 119010356 686174685 354132325 621039369 884046860 936140794 724699160 752586470 472352701 669175488 521165346 787727636 454114584 879443152 558491754 599609093 154238443 898269701 504481724 546278563 622387726 856034183 828476130 884642070 689404038 775421477 611450032 705206839 449227118 855936054 750208064 997688142 204346915 409119406 306567829 425246098 248342052 665807279 682936581 693172453 405335324 948560947 120028632 768260461 153381842 850523243 851654728 952846205 624098043 944295137 704052150 896762480 743417841 833270697 632131561 971471472 604137543 786732833 973551185 980039312 676002015 712080588 606263046 917351130 373670735 387514083 618252265 936893663 532412642 583442422 785235421 857949247 678571375 952726011 725527814 775922827 394097488 399148596 113586903 675665490 869560359 900549694 495619555 797132371 480258501 483387636 325983655 921266923 308743295 368050307 641357812 764110981 667826745 766522407 658293004 852526471 77695634 401590059 506327013 943672565 491649333 586789832 110901195 894471960 970170460 975795851 835615209 950087349 635311909 750457391 331118316 832365504 457200647 700735470 768954461 915671060 736120340 999018855 878913786 948451713 259323857 605605606 119989956 966779025 429398444 654023871 168343059 786185910 439252392 464036715 226192576 842913680 717941764 867011552 157807567 334594272 624724481 638826259 296514174 475468200 257420509 386751315 680204624 915721662 857152592 918876423 770164698 955734517 971342166 992297189 411811505 546883484 611759950 891904545 452911607 860288797 71333165 144089204 774991314 969258643 222353881 434012320 971856851 980109316 944033481 975719923 222128077 580414535 889141304 973948242 698610262 837636879 323889816 881241980 456179730 771083014 990029998 998056141 180352860 262175612 255939577 855936170 430553126 570709792 771157595 937743226 204353299 502070876 813449204 966669728 694078035 922830854 147980131 622567266 540520651 798593987 779363813 925920570 824665648 948750919 168378728 487655170 621376570 651213722 925981267 949121777 427024765 440247942 595802457 903384452 671406172 957042877 970815603 988590880 232128408 497345343 873801405 925096059 550994972 553535436 710714357 838980209 591938771 640891930 328828860 906009818 978130738 997907959 453012597 767433530 613983162 797005224 88087507 522065610 776451964 804955023 240849734 949463892 167688750 691157898 378808645 705549516 614434934 918188101 957305581 983010231 422351981 759629352 933244526 954370600 887172159 898458176 442963773 643457189 594076827 700540222 466806827 661519419 544282856 717836362 678898352 802315872 648789018 793551230 978444400 979326104 342781741 762262105 56589997 792193973 51394734 120257398 750530966 763049238 453077280 478031853 719477111 819222077 37082183 621010930 583185343 846782970 905227136 955768525 328135936 459241698 544868775 747766894 803634385 846779640 34839754 992552053 235718509 319836373 581228989 858297820 473840897 635647462 296698509 484434521 126325745 573159368 787216736 844137637 693884472 855472668 654602672 781907383 245409745 903625957 11561735 323990374 525774648 593705999 781133896 835991156 618678635 768898796 252737638 755676733 725044615 748430265 431188577 516365731 663392186 797126958 865158208 948767211 964876657 974551294 142782355 245283027 622244916 759475596 149219095 870377760 810220432 884863154 191426969 284046029 220423340 874549348 167091359 523048052 423604457 991002793 987706033 991045380 396282914 744750498 64279076 845672262 211189880 393009150 230296315 580395642 426324678 777795528 316593395 963399345 809914537 953680761 784449243 980409071 300388493 570987209 535270007 650872530 957981730 985320510 74251164 975695809 887125142 974144420 908789982 936312272 369782283 895408303 290010258 796709789 497753330 989791000 624731916 988807487 744486385 906107300 444327285 480820842 774852081 814648461 609521254 827123560 68418368 836092900 773154294 855948093 563503562 581565683 534304849 983703138 965959168 999161077 988002882 990437713 142870357 295530156 943163502 998766067 94216748 559409311 403276566 763819664 257953749 908454487 91695831 674337715 111606322 806354910 871835528 928294925 278359792 524151709 431880472 584989816 116925465 178441697 122062134 348806494 727044874 894695690 439473494 988246203 694564867 957500704 229288943 966238322 565834172 951567417 160308556 608454136 715004143 760167151 257435052 479758388 310306258 351092892 479660065 582554689 969356228 997876758 561756605 988541574 839715524 883464343 659853584 701252915 157332391 486427134 173994698 219038416 959724361 981186150 842467112 989685049 394328207 736471357 321904743 354055227 306317856 639891285 786142550 912309132 137165016 765058519 561114417 788153208 82559648 767953749 838774287 973918293 41630551 867207601 76746114 613627591 40910596 833214621 990052872 997801492 338463964 613078081 54881255 532348749 279972434 394064354 963012175 999371721 100699320 168845685 543935435 670167353 162738987 959123215 426057727 504333928 865747463 935419484 600760836 603218721 162379637 546087583 288551915 772398607 827359932 989550527 492390164 623193153 35186351 219321187 54205855 142383754 456673382 940812374 730542267 927227773 828764701 953409146 128690613 626624044 494065965 863662166 940501904 979386531 506207954 954776508 607272946 869191854 21482664 160269212 572449692 867079830 379204116 922418520 187034933 586984828 842840138 924723063 880634857 921157876 833582440 963841522 843193775 986821648 799712602 841145180 897790817 912055452 706341994 909649297 412197707 584445088 165547346 876195821 44259839 735939538 532664090 751092002 324592665 824401455 309223731 740893063 128320080 721566796 210625396 451470800 233278753 992809736 227966471 694741430 200624194 278487827 405604247 969586748 618261480 656449869 971855111 997189220 3465105 918511895 526551782 883638714 537722010 878817355 456023434 607835062 695918784 726498608 127780168 699192459 19245340 21464588 13342037 625082918 513592781 704940555 22846515 873660012 410095249 946710845 40800523 324548445 150903126 954653023 893423671 968953912 285374836 899149335 17943406 798713881 954130548 978719303 546918849 976478850 786064458 994117660 642330292 850278540 356001039 506383727 443146932 926054331 217263507 480878824 442484319 750976437 73848541 536252151 392033528 402135509 241376501 977891483 507224109 758820296 691095038 893213107 832646506 937074761 314636135 357047146 341866066 571971376 741608348 745272987 182225915 756314337 874854590 942299250 710591897 789138750 771266630 797611939 619921799 808173488 232550026 766690164 637781974 826786606 918530889 954007157 622273535 860561550 918345076 957531699 758221401 785705059 287304004 340607279 581177371 934494278 377251645 449505976 778623501 980392640 8791244 445749209 133531541 802675158 28687954 507593192 360615921 433324525 285461080 862250344 215855481 476007972 646919832 928305085 542597269 961821242 504494360 947312535 827870212 893220895 669745765 977657331 728224881 757742312 713054415 724187062 607957454 965261761 215350506 239003285 749586618 913079997 190009101 820651167 451293215 671020103 938746868 953851964 426681858 541590169 758194118 827594051 253352858 596674624 301904162 698219615 434874282 947666982 992602331 999546128 650121243 882813481 317465712 472714398 118803475 883433439 896935456 918383980 787170142 833620826 781381072 893139067 260515421 835458720 270494544 450915120 527815463 595431388 662612235 771761928 21952233 154955220 861059971 949407129 267246403 991967998 530193693 629611597 83898239 922553885 902355430 929697370 612369578 626359557 854281347 937807026 764963706 767699933 879367087 896900111 714168035 738206049 10152445 34024966 303367673 772546677 378321018 600081726 931771533 997344535 480571415 718691245 91466552 309795749 768458846 836656439 596839607 925678385 559104033 833510968 699348439 835381327 471913872 567974854 442759424 810874466 922392583 992165342 317361381 884068788 880954653 891146476 142515867 614118754 699712005 896384578 708183331 842711686 639878375 672604338 808381895 836710508 7022844 290028581 185992232 198615934 316553729 978752897 228689871 401579881 983525653 985279416 474328165 904981824 633023517 813117805 433789256 873897192 47873639 618286131 742964365 793853629 44374382 295800239 203100598 575118862 113146212 614117952 117551952 842046252 255304636 500979865 918799822 920875204 518424833 734981116 222215052 600912538 631192255 678289164 271241188 550460217 904123193 927392141 772160888 922051031 912161848 960870872 631408510 941467501 429696426 571027552 948412438 962222615 497845800 846870786 680162662 853690848 419128434 466943550 394568835 724517930 317372304 590946409 376757518 642588893 962454319 990980919 309455180 791971469 946956999 981534823 309661954 942310749 783049810 809150397 194011407 265754165 492286820 702189768 990861473 999360501 228388138 799522807 823452824 934291913 365064860 954128337 129377839 664329393 986775598 996911307 819772736 831714268 229208123 699012927 635800789 880381512 832227687 937064643 56889058 771326243 633383926 768545439 182849259 766238075 251386281 985850917 460608700 815682850 374170067 868216700 280888352 872736041 223914053 915607227 574861028 641690868 820757743 839811285 295989045 839165454 135215634 825119668 318577160 698467194 731698396 765969010 940414920 959052348 348472521 811723105 182017033 767400736 787970263 891480946 459038968 550040266 385633707 856836437 821048758 913797178 311048170 417303294 388987904 919449469 897411179 983010191 566382393 832053302 785168422 945878364 129365333 155656590 550594747 878428314 866086048 870892934 499731717 590603757 597814446 636148029 664605145 762023938 950994505 976398159 910779721 977086174 20196648 563563263 934452855 997914101 730815011 896925009 673406348 892364841 802354732 864663695 94171937 261443486 829484748 915320226 302464761 729978510 40812085 113341807 382949271 518135778 346433625 382466132 302377051 605595989 900255685 921071732 947976921 973864441 662313885 908575561 767984837 847735671 937568554 975430558 876359896 881132132 701874044 988008363 261876313 314645257 24305462 688751191 431889058 986744074 218933286 649142674 798440750 993808319 404628793 895711239 445024263 557948996 714982365 854334574 590420310 814997842 514055487 768071450 738390182 847506687 503479554 825107585 204605944 553801082 13059994 839671465 194410335 720947548 861421201 862588773 722997893 801505054 700532816 962337572 447406820 907824020 309847276 608592295 579769924 829951277 163884327 824644895 7190715 616164923 99381580 343147460 276559414 518327919 408330002 528089763 227554356 415945159 37919677 564591530 734775424 861554323 287677496 680316206 303284046 579208532 325172505 897299236 245735905 282361114 888944851 935712963 773381102 986677338 828015521 828106467 853508480 942023057 528073136 557364532 132501482 478544205 122590358 188104231 235463399 710276135 79114243 501872407 876125669 906196712 292428758 927421479 795354934 905795558 704030956 748743028 845288949 901704020 190455143 465143304 324955164 406786404 294270336 639754326 612655071 860358433 546871052 980598589 554446712 838974954 524912181 540531190 96627791 169894382 965512166 976323849 607502148 948346542 177162251 910189276 420280485 511598665 785012496 792988014 640909855 903848751 161990725 198478518 372838693 772475679 506048325 543881358 729090906 822996005 936679363 993877535 555615800 571096993 174261218 402603399 611291825 811733092 657324651 805076840 252264554 605889739 326813504 842763321 66876600 729707594 666166881 672213973 972465274 995477225 266462568 448773705 374454561 522704641 63738742 367583442 364496425 744840934 387560261 650333483 136712792 981484160 660841892 851946035 699473393 971670422 398820536 973160483 519432640 682413247 586370507 934426024 142524538 557051125 330633560 799923100 236197072 378970860 726388607 777116367 765960026 778451826 991618093 998148152 374273829 956351898 618116166 697203050 284983703 641884127 472218073 786031738 114044920 963225359 128883725 726639306 509012908 697199525 665777954 951394720 611850826 821819830 220830482 411367979 107071015 398042201 149953589 632161548 35209450 678742354 474692137 820111679 47342675 118143408 487101178 636465925 819504210 910475910 319086308 359007221 193159295 988831559 410371088 556245205 872460314 970957381 55108054 826227609 442515816 964786434 415073357 821684902 823928115 926809098 91062589 642557698 277427907 371633362 627945185 694539790 64140939 254641858 501145474 608427649 708825743 859218545 353310469 726620199 926217796 974718419 100855047 283159144 200546383 528559599 731292367 979496389 231225165 337613394 652121625 971381466 495571786 677957964 728501732 779359556 104461704 996267545 395124300 904719973 354668658 371954158 205082376 503161923 275880903 891438205 292945572 829468840 176225579 498945834 950743181 978006761 330473095 442149124 446946117 830993152 34282147 406400824 537859168 736652201 867968970 951707062 708293044 835813207 69881870 92915060 570195554 944298755 325271929 384104437 575519318 724953285 727279531 740569378 626814846 998450059 418612657 535257209 996709896 999063291 132840127 590191115 983173389 989017515 552490525 625681098 858798836 966141824 563998340 848296219 906189826 992200179 385359452 388199991 310733651 771863200 96162450 542328838 497759358 724309659 42856066 906886224 638878450 732088043 324171093 542706926 935495861 961549142 24067828 48772974 662919242 813601433 122430763 885068543 607965266 741838624 272230497 895522204 646267776 805036511 811931194 952728573 617172419 834205241 526089112 844067513 736641074 975905851 442868154 516755696 934823292 981419733 241719446 508446785 619194017 802761265 358730793 405528577 196217967 895528164 941726664 994606737 786936466 875908261 749408462 889760536 866971893 946153866 624828019 631083285 312162157 408464783 503578797 574200857 521918634 602487219 769557874 843600914 456029257 601989043 366530502 577902762 133955563 839179513 254637707 998188398 961441863 970608302 324714405 807901358 803207235 947138822 533724149 643314847 146269766 654365804 236558719 755386093 128586257 900424987 188924549 574820635 7470847 235756266 261030421 516338768 687640916 729692423 922717162 932993258 439791360 882827694 542644063 805589364 895972645 961040387 419544768 980778376 805977884 845493472 657074945 779911842 562058801 832436899 930813517 946227683 284179804 433203430 303906999 364198305 640230793 956749007 728887809 891692683 350332387 820512076 41021200 361773284 41184594 508038157 263954082 825377825 877871929 907121325 924645252 950995698 229631452 319629411 727336211 950653419 59388013 978781960 683277478 720495374 649724580 763500256 269643661 632363471 817185391 858955691 262478876 833854125 890154588 942113002 974400369 984963549 931597063 989098031 71703617 175130932 717564733 749820727 15647162 359602192 967507019 968715286 78622339 236063329 407021491 940357887 975500893 984716893 771932845 855047029 519851579 758186334 975958327 986156676 629466969 978931410 395787763 594911126 76864432 883956504 660379060 815605001 796323193 900422422 818785978 991218791 214076525 541659361 428455838 714144425 565687148 982110947 336414192 607086885 249216986 762390414 502844866 581702085 513820406 790519280 726654399 980773134 220601556 493714401 876549622 914596387 514406194 730847407 95131959 205734041 133423892 445474122 677569513 925221476 452942374 794554364 398137199 612774913 173120249 328361819 967363688 978454582 290099655 773430795 302298663 308059782 194103198 892675457 981906562 987757244 677477468 719983827 198952250 985249767 962359966 998751100 586752449 661056004 197392018 797787319 663664986 891233915 378521266 446831084 424792824 716307740 714211720 838203428 244174630 784308567 885991554 916651953 517591649 580117035 972372669 978970007 997013311 998885713 538224144 940432133 668908873 960977111 600499772 984896682 165495192 626340567 99080903 193492666 164440079 515851830 817156487 988355075 819791077 977802128 488990890 904289137 401829737 526344282 460506327 474773585 863512367 910642346 51397576 637838175 374774873 419065685 606761535 944612086 713757491 777815363 415489457 874542217 627013951 732342080 95721316 711657185 919673975 983897641 8189460 868403299 516381627 730033438 130346358 213070036 348825892 633696596 700967364 926764381 110893875 708317024 116415971 827172745 155861914 508217149 351068791 904966807 482542132 734739170 454160918 546495858 793892811 861052902 478203386 582414691 521985204 772434386 492313211 888434728 113032876 629626749 331283414 455149798 417708119 559506394 944526723 987301014 474586734 864138234 318647143 961959669 239575862 719689652 173852676 524873269 559118213 580572861 503397133 823269347 486323172 972179303 665344343 954301291 517244152 970899731 296305018 970757248 137710144 938898599 423621922 966045550 830362093 887765421 775037170 904014275 15536715 232917137 916067199 982981968 955742433 994704539 678720448 807747099 716478635 726192080 787570676 974865478 732078139 765938608 645845718 877525045 252467886 654460832 699805004 932540891 670137076 951362176 839986670 944142126 925664286 956079422 593905256 606083072 947252326 970965029 337989766 989380692 112281289 185805902 804132448 847394187 456564236 957768328 655371805 944826403 689534383 804280929 408251115 958743957 499661464 602421083 216425436 378268509 970261581 981209322 175407160 372341556 473714224 736408530 628022408 825414848 400258348 548454596 716297598 780147566 524133659 663430915 924605787 953716056 132196676 540524571 19378188 957299998 433861616 508222826 510390464 845980400 66647001 482793110 528695100 758393900 382496801 972537375 103447441 410808475 688215037 824223003 969393307 989834556 919105831 954834977 412123168 537887256 474616281 888834909 189915316 955904823 46785823 166296548 477275784 946235601 429861689 739682930 484489592 822615538 434944872 815617563 497227314 920739560 351496649 622116122 866137059 945953991 508519267 744275778 651272772 935832930 759009800 978986201 651594324 696888428 838744023 947207039 906974615 987868726 785282230 919970810 960696365 967530356 809718292 922125299 80356881 647686915 836248531 863401723 79925058 996023391 324788777 580465612 946915143 970295746 727441754 876764789 833254282 856788935 847453540 852256213 361161675 493097346 719215826 730526272 541247287 764155084 244151173 626426759 520947272 598915644 847200269 944466869 757438195 796982994 165018307 586253111 817408408 969494484 834882724 853285258 465019879 759247245 47688119 683082205 515993493 693446830 746163542 891717346 687332483 687663141 678593154 720061981 553784859 708995859 980683016 996615240 679754381 721768558 986644287 993897289 692473986 709961479 404585589 911453648 413210900 887071837 985565478 999178152 412756173 953579863 194554914 199357165 285223013 492008963 120924202 235988059 278483641 872700235 909411662 924912560 230187127 918720150 912017480 913893616 376864684 467404141 455855516 882661062 158252182 210034174 620084407 805002898 582977695 874289888 690211456 814320156 381730013 970595012 957448967 964502458 708831068 946461667 945464179 968955643 805258407 925057983 511704049 941712579 971329818 985977272 792473718 925210768 871086727 994804091 99101386 674870693 259367548 614541642 627459326 690874808 985288400 997161797 851001628 982188276 498958741 709802792 359531445 689580665 960029437 962304051 965162227 965933631 932853694 956864547 734103221 973277874 49270016 606848358 305558201 435567880 872565228 894560546 934921508 956741293 842263796 846433299 147042130 709555462 605951353 850954070 927246211 949364225 280018729 883315958 203723156 848091585 208869076 813582042 816422163 970424353 711707446 848054360 975329308 999536485 903575556 935317929 769609487 902366027 564261439 660694946 112383460 131167560 258927369 794694892 578086464 896999646 157570526 699751779 27034094 655607318 902410922 902876411 983776738 987082079 507568062 723459917 894102820 957741446 608684400 840012475 772617361 867190279 214497629 587741138 49904715 922064684 27449280 258357825 322906366 926582853 91117822 763357925 794388362 881847903 764078454 788577741 896688141 940900595 486489742 833480762 418896204 667286776 171048021 762486271 405872123 578570629 9842582 217766074 175569471 444974171 354376716 571068319 697474282 953800976 111558820 258570645 93309704 628950992 870207147 928835230 16970574 349123110 215029163 482871233 889352823 911450360 527291690 791821177 531288763 890793279 777363238 932422043 86170372 240498800 13357484 770434843 660208989 982873915 824748982 986583731 627712475 843594602 423986880 851318303 825762942 996765784 155933090 850157250 79654931 824510987 231360190 733113978 922091122 942874554 592476445 762695676 190211594 802308636 606362916 918025944 256554668 649898523 594948424 888530919 921672477 974836613 901338423 973192061 84513907 117629277 857978772 898373100 647909797 826959295 179607246 236885313 949998857 969997184 452098565 828647990 488057368 876137725 661186361 975107364 131637237 713742760 304068450 805888179 243658480 752360785 749040006 987091251 396871349 856550543 547304647 739358377 329348947 957844757 817177577 870078793 647503978 696281810 277378834 917650408 152934148 816060959 344102756 437551785 362194677 976402724 603732539 684379440 402636695 579757250 840998809 919077712 545961171 796681319 372872721 850824389 518282947 859823575 554807457 870589881 242477748 710977775 617763546 655585561 955529033 993725773 576094456 657108346 341022011 598281191 50324221 551478886 942114303 955447440 930065760 939699248 10853573 714445758 33303726 437092628 602561368 698033125 776504965 916341048 410548945 493629811 125100931 255254740 196021813 365234482 334278785 637053513 212093639 429944696 646852891 657307335 406919605 594395474 701782775 826658922 496594398 783056646 55655676 151170468 917067117 948584644 103065354 763842446 502422019 551194640 141232030 248318569 660994744 821548923 849278059 938157553 250720185 707748467 993577947 994057301 536735546 708020478 111609589 831968616 337979589 868701191 39019070 58933146 951167110 995781619 983597475 998313526 209631109 628872807 196862677 758754098 272647393 716327126 392192344 631036339 815867809 939576472 807646614 978378087 799676859 958847821 641584743 880741019 167517560 539945630 887589788 934134532 879910257 956769647 826862436 854779678 537159478 911759092 228038137 477622830 617450410 643228862 9669944 772233326 869013367 894131685 951701582 986372958 680137843 815710239 189304643 215548474 598511517 700214893 66050354 276135448 931061833 970207827 639257089 920947180 301459746 304112106 93102386 315501480 939642222 994265400 121677776 988627592 929055838 990395034 499948603 532807012 623633306 752988363 876207498 923870771 833232232 833409892 12582063 710082412 415245821 548899013 602048313 614678128 858410148 863128567 766202125 963469012 103078984 109958774 986971912 990968964 249369139 563687693 882692034 992717462 558706506 776887249 202885156 703702815 30655961 532481902 510898162 913219887 114957739 657346241 611833634 926202790 768866555 954379456 814421316 886903876 749623449 923157546 716669889 894507462 978551563 979781969 382474916 724555875 595894708 661759653 629334922 635285279 440100968 694673320 484002091 493203923 525012238 567521663 724092044 918762165 451155527 492043540 756794266 947206704 852339044 929049213 805572470 975867758 879363165 931563625 724550438 968561949 203499550 635024815 824690426 890807563 233989227 265200408 59350579 469343041 461769021 586660657 846120117 884763815 808607098 809412069 688541796 931967885 356265841 881427738 5912221 293993208 111144693 937516792 635979899 988835197 831345313 879193337 743035917 972632742 903166774 926038561 642083389 875463072 831167473 989239317 271252394 659298601 728008473 917980997 871194116 884305635 499935908 856911847 690212071 923921938 803984855 817572167 693553930 913545831 323271030 917386671 903202701 967022811 684532363 996327186 660402171 814742799 407958144 839581545 393824060 417705771 828672390 852340800 975800977 984376569 492247152 641980939 678192187 835515516 879505901 985417787 260814267 831300238 130519599 306690687 726463835 906427647 635787743 847560123 336446804 606131575 785386622 824854083 200137260 346444307 726805106 974003868 388176237 469594343 368505844 797558982 296654439 785468427 438104378 532548650 909357630 909534620 917919437 995601579 8547049 533501309 109159007 543459424 220943458 700400811 482866933 592201584 25870528 851908591 887713015 934508803 734774126 748335639 972060020 975312509 348298736 836126846 18520008 152803916 310436241 332048464 213884382 509681122 254274396 561520437 368227807 756501882 623410417 786894044 993023716 993928407 781475055 895985796 278944991 809112690 613541157 681198014 590929278 600456985 515414319 604106213 801472132 996452344 97166388 390853030 213912026 844433184 433159230 694677547 534285670 658521396 504419128 896938169 624416809 626073317 684909645 884531470 114983977 747109852 499664319 577591438 760991985 779248989 610686443 660683009 137277949 335949247 698249455 894742993 351780192 924634580 628706701 965319371 911061226 925259201 694495320 971698448 839203859 904988730 710633461 931805312 698923611 769121290 140375429 154441736 391743720 457430492 297791076 883869562 828857595 919837642 409902628 781033304 214725316 684422366 688213938 869369083 526215174 770354270 470295475 788884913 525215312 965311313 571794099 923263811 53073033 692693870 60627409 335968034 241090234 616283780 128093617 655078453 497474411 659365818 966179327 984027291 215160317 743917801 113107474 182037064 650242216 896013458 637966014 851732414 965733112 990469189 54835496 651848021 479765244 917473577 736445357 868305095 157488523 804963209 220397231 601579650 842199232 988788504 600434245 906417997 443377736 460552120 340782694 979235211 44230502 569379631 305879808 577595444 686537886 994609686 859624717 882784956 704507986 847362683 864180448 889430904 67907626 221956648 841577841 953846957 309361532 419707262 171275524 955039882 438496551 883630774 863447928 934632028 758379907 968214685 31798746 191309097 779106824 850856772 381016667 842541079 871853731 929082646 499325662 538392881 850280845 946166755 663439541 943446058 213290903 556444404 884449291 971756639 174697899 212077505 895623640 919914949 134339856 233069837 963476167 978570991 545642859 658584705 180760657 616058003 383416564 969352532 668507115 737535829 707082394 987701564 711772778 946830187 942782158 958152467 896753499 950602139 489116658 777555421 341251997 349548660 450110186 550380588 774119972 913549104 457440465 962614795 461313267 554546014 618311861 707939336 58541710 429078563 226664316 229249553 714209641 891536898 129477829 815927996 963495531 969805234 116716428 415373873 745373303 767606432 111101357 238725457 234300861 921612388 943531011 997954369 900849130 968582458 199031329 229394345 167682948 581436211 779849444 890956174 703935809 758308484 482015925 585977451 294326585 651060233 161092218 166229536 234965746 400800409 229316419 370825024 342467943 390786745 582072654 916900761 295687707 887971667 782126498 803171814 56648482 356160760 427319459 630989570 21300092 489122827 572391640 675407248 620977058 994907181 770996620 910880055 785385206 796840364 380421261 813656475 551314938 557425970 34014625 853849863 541970912 880966102 146355385 883145813 739678918 985851542 816892699 829759779 162625819 399141404 120667780 253604106 511685921 512353180 862591248 946851650 369096648 564132605 304949557 988401024 6315051 80150304 528828158 725396665 395839670 717712080 355552558 386402834 809483610 901114996 519740769 886085550 401035833 489919377 775101146 785181748 224172427 649149034 138819732 634994252 591638299 976555999 591380667 631719343 887015977 936627090 540630206 625313909 922241064 962054163 506743809 537071384 483392321 648017056 371663636 922675746 261864174 953524281 832304965 946485834 256854155 328764773 832255070 865571062 93096637 832645018 953372294 981316027 129983898 889108618 872595970 910146993 392239824 627497877 853620738 936809891 661156311 920784021 642987118 905588455 272065863 308963930 477647782 759674696 661000554 977634360 947976263 960527043 400484316 492636376 599308217 777321972 905122479 975037001 700663568 837484650 229004516 619273869 550331347 751725403 953305478 954219563 467032354 543359499 69642835 342487777 428872926 757417305 527036083 670524867 944687690 990811026 20064592 952435111 982235142 998414291 647955466 725607954 207534786 872077739 955394973 959065856 465204914 715525332 600546623 922886316 572990010 841524422 236145120 381804079 275824280 931376425 359790914 710472803 890890348 942210006 394655933 443204824 151049414 396992495 675771762 821855808 916148111 992419633 348604936 425262861 43368913 455288258 198388332 888452377 555229923 771363985 785447374 852098911 500517803 928858961 644267309 963422255 888532501 926178092 327562396 921347954 602818041 973686370 396404269 912933900 641474668 976232072 957954794 973090450 691392418 944034259 837099447 944804376 929353315 982148957 389257086 441410119 263634175 602883113 29399573 907704937 793632060 990604835 591987188 619658642 122656791 501715522 216514784 832083413 827998186 948807265 350351409 855534302 673958113 718564450 589268696 691937550 953827503 957635918 660458569 830381381 386286420 400900443 267848541 747482685 353280841 558602549 302966396 381574734 620641538 905025213 633088844 889102527 836107787 874875154 648951176 728275715 421913508 853520920 188970242 787135695 512836518 582030538 523141587 636435421 217908826 379173792 475471789 494420816 481914569 769786130 451944652 519019323 926301749 954314366 888685087 957123870 573981726 617509756 734591969 919423610 947040363 969242246 437771786 846172290 115342262 141860193 882542213 998972706 178649828 243869957 741373505 893054918 814245439 901173210 284039618 513978869 260024569 847332091 192410978 504014966 57430799 609272070 340828026 779061636 179770867 897373177 581381930 794760615 568487736 758117946 339112321 891081124 129533966 559991811 835677085 846963363 548397967 730261754 460523837 474268535 679043818 787646798 359412814 421270662 270245284 749752014 140413253 421812433 760757915 926454487 461190050 698281485 32699301 761264808 486017855 755067614 81774995 322099523 358816961 903092857 966366677 977752083 977401799 988204138 720698965 862019311 303751281 741214676 893971053 971821991 541228541 676006059 931795355 957083689 601827917 890391524 2782209 830197922 98919438 779168795 1580855 987723771 23160707 600761931 239610329 706947352 907368364 948982302 514119191 625292767 233082382 287861079 373944417 754190051 525152836 635984678 36507197 398362672 53631801 229276201 78806793 483255619 321765228 703981593 730324839 877184029 386629756 500038134 631842591 883443785 179976993 961621780 294470284 547428126 482008766 487595332 218990835 605028137 990375798 991735627 976483663 992600778 183829518 541578316 923045144 925744884 580718229 987412001 226983696 908203432 580972185 879588034 490129426 530206841 381386664 723700249 644332222 787558668 376183803 854075724 338454732 626807782 848983201 921065302 701251040 854711227 288112892 404741786 162776330 924314688 913273726 940878532 383058482 430939736 368504360 579873767 58790335 217726539 195629655 279258415 737950179 763791067 585966561 983059555 233438904 549582683 216328687 255533719 896673920 965176625 192211662 688274676 17706965 992816659 398172240 657139367 794330705 858598782 333222735 921675729 684075897 844930854 841425920 845386775 183354207 364481790 558506223 738155938 68993858 471926181 103165399 569423276 452379878 621819781 683257122 703117905 907674631 912414656 835613114 865249345 781492579 975732634 5752783 515166532 751193662 895131248 293985190 476627804 857114381 859552669 794296729 888151035 520516254 583650813 438965633 455809619 727847004 997235857 907570387 969214711 269874188 587690785 516615158 690681861 725285781 902194835 898354496 970040462 572626225 850744690 141329596 342955249 423307240 538415851 411830024 490534576 277934146 650922787 405177486 443960883 642747302 748966354 312702981 711089459 904985776 986766809 283466156 319487965 220065791 497837509 746396881 759988805 75365710 753761759 611516035 681314883 219347924 920264688 198912058 226113790 408485346 725453885 965162890 973260834 296524175 636907895 129869690 192523652 844220465 966983947 514073352 909454521 829686753 918259387 358704477 726436627 217736534 674971493 701845352 792231617 243660284 881665979 634813151 671593475 189868662 257304707 875243405 917491131 18054869 695040118 651004857 839493298 282478513 859349491 816488398 989648115 888889133 974877729 363601151 603033661 34539446 709272653 33878287 230855132 556912700 923583266 766163138 981738075 999135303 999357275 269337352 504488824 510263052 834366798 380884684 460951636 121197894 485033552 201227118 289023143 893781950 896640700 1216987 589124373 440885478 813241071 332080316 587604225 293950239 353399445 411541236 544148991 726403457 912362993 395095251 993912900 596954454 651621121 271944146 722452630 110263629 551661198 211681847 634492650 290862348 618664856 875099374 938668501 871143530 980504723 201866356 397662267 628011089 775054287 649629864 912757523 964353793 997272150 492861509 632496447 210863533 857860623 389850504 892376281 302467844 795068664 278219621 347492213 301144284 661357150 477879528 800309989 193053503 470597246 985082010 995546990 40161861 351678330 590666990 707362431 42644585 655297368 86450261 602226057 9815783 629226237 546775458 649676105 81238459 92657124 898362463 932672891 357343963 553201691 951296662 952460531 769280881 815933386 498641214 552162851 772068733 853324222 892958860 994810285 227002858 564798920 670201239 895258236 687955720 695473486 340760606 409155845 415860302 953417858 571397235 855123761 490787029 846576214 41088519 585476320 234223988 442773097 405146614 712592377 739497863 956595416 26105627 76753021 732767247 862367683 149905255 516777503 706032106 919419997 425368384 444888540 607811703 774306093 653124925 907508799 774218495 809890549 661766945 902787267 271662533 548928991 188025522 838909191 777521892 901147312 607414217 843889787 478718922 584784060 779544493 918300731 937492787 951311017 979973214 993933404 800587423 898957398 745465874 881445370 841021845 974871668 693824716 699819889 981436966 994466378 450641826 766557689 789985034 806198487 611329333 986473562 212780050 932123014 827255734 972507216 591939735 728258295 861769194 993188635 788414435 994654826 383317045 726614687 607277409 892912344 996169668 997116565 756342634 956527021 128237189 932174396 105894139 488846682 94423525 140498189 763603279 783336863 776040640 798780916 832253395 873108673 483816792 688181715 13982716 355143859 268708943 315458765 530622434 723753596 461827676 912456325 517544682 828293306 717859326 775594848 816687058 944457819 866024882 971537462 282994189 997147250 325589968 913878972 94650219 549684795 552999483 841892374 182610741 841732640 495264057 631112113 545910205 853547325 488671203 854716488 232763860 639095047 624743609 877528349 271475775 523839822 317710159 908185750 593079744 730877240 30280495 608205219 977973782 981771320 128463201 844300248 142668315 443488942 681357861 928295193 502624663 598261845 652021456 991882375 738785538 870632380 61110239 675836106 530759129 889566317 222685918 923290958 209803777 899968417 428187912 449347009 486512422 527238645 92805066 493088153 893894024 899183835 442783933 842687401 778383544 900661878 176575931 864219469 568148124 837525731 256955477 966013108 735481938 951114200 498942187 661181696 178352833 214094217 34385319 450159036 218175766 634511187 968993222 969511407 993294847 994615805 362270536 799014516 995696569 996648921 201676935 236196509 804894600 806495823 727992628 784574363 594693739 908116813 572906345 878405053 599891006 968834295 582066517 829269677 16801794 399505173 264735940 288457356 403989177 724730263 328159742 473783155 443346475 850588988 128500817 979774857 874646894 972515848 121627693 925264773 468669811 645131110 776868641 831098619 168653664 224075002 290212251 695893019 727673458 928804423 175348702 642146584 988885799 991179766 465784092 771467747 369517755 772169729 521046720 854319357 426723941 867997529 222932287 632826109 611412559 981943881 750285149 865075338 18450805 971101950 153448299 949997031 912754587 991493489 647680708 873146374 530607118 839089027 490996946 914349666 691775001 815825016 137209279 280762406 387977710 864533535 327117048 924369355 766575005 806249194 294898404 695658919 300581964 478934035 739386932 948992838 353151878 784983765 244056835 496031308 60010791 553210564 911643048 985643707 977097987 992848093 957506119 960325240 820237912 918105120 419643561 784144240 330460751 515614795 996211730 999705611 501257677 924800108 925660940 958579498 698395397 865181840 270017047 714316701 67366550 320958339 779322807 801533250 727912925 785503624 55584939 953689113 560328004 690700670 459716884 670759819 383404204 420671499 328815684 406635785 457068816 549984755 626792065 870127454 620504061 890577070 652094743 903946634 821477838 859213492 397556068 510429443 179448903 540679806 515996104 983931391 227372524 378319942 103299297 273084945 30942354 689831079 306661025 747070789 122986551 231466885 636850356 962141880 146757748 255618823 748693435 904109831 800763493 976373503 831956146 966609047 55699961 794127634 928823113 958308175 267830056 647700393 23014964 367121225 453579756 588671907 408687391 769901861 638645499 989106227 369721854 988544117 28851350 392160313 831952784 838298644 202439196 546703334 463515703 948876655 307341252 376712715 212438875 681254939 508633681 808594056 590957900 989853371 513091262 525221544 528631038 809357523 454055080 745256976 913251569 954270490 469122319 586117425 487705282 904133276 443859671 485147218 719862712 996373102 584432372 844216891 828569951 988768083 843614436 949094573 616564139 689398399 36463338 628669635 879919275 941140183 552155416 876059352 204352806 819046662 54339887 128800557 163728165 454777940 121453835 380224383 259429489 593000615 838526418 871295141 41171496 413083843 730971510 783484461 511844420 926641721 70172459 941825221 937183775 980228924 864674810 880672825 510792482 994327119 201532661 561027950 73883821 228702819 200914009 458292420 293128079 949131927 589364370 821838226 867201343 958372397 447160125 848745698 753824279 968435087 721443998 901346602 355445674 428148240 684098730 871339225 810694858 827294783 123386874 657097558 680447906 965208997 736278144 792980881 625125675 774587451 79141712 788261222 904759342 997028873 927775569 935408594 854647854 998799810 697743981 756722291 851660575 952251022 340070204 761553872 458379179 661284262 581852337 642926132 721424653 915577272 514158384 714218191 653258459 924638131 320989520 544148993 229708188 385780546 800937351 827949737 227223609 985298767 667655230 788298343 403033284 785554255 751714554 924666638 187638454 494518837 774064750 912406641 941306586 954928059 549833430 572989448 536354286 938113450 495959686 681186932 18879058 589742274 242528295 919138454 643597155 968481605 318907142 650071609 355911042 931796581 536790474 898985773 127263286 475877391 110584075 473949369 401719756 931366511 970453475 998735762 215394843 824047848 164260211 402235051 570041636 573017487 800657 181861168 640245647 834367218 937368741 981653753 6015517 585161305 739969160 931212253 284442546 884353717 657487537 869896124 708779673 801303173 940229262 988510275 592698532 791904342 917825875 975836169 704144449 971471118 93690306 283129769 621002384 893743157 540720581 975962591 819091748 924630168 621349149 927958770 149278175 957868566 361553544 429854082 150547290 987010950 546722853 884207143 232360250 679327174 681972987 781455554 140935281 960958211 784787278 808458329 38169142 758183813 944284382 981779782 879796417 963414412 167508861 233019441 324531862 811662839 321973470 518232994 817835750 877678993 104462168 196663132 845483730 898334401 182214406 838990298 642658742 910768876 753983750 945908162 131631290 912623802 843587307 982705178 511678514 854078629 684841477 926491190 169469994 894400143 388774559 603604503 725648026 858673880 866630414 997741800 721757618 899495024 288444566 468232400 618707827 640831600 170244139 268611337 621274513 705839847 345343646 386076107 629095323 713021195 470767941 882097109 90388075 565369724 351216365 973972197 97811520 365202270 283566371 940209883 963401896 984966328 414775213 778509180 540479683 773925928 20532630 821891033 369281954 860751864 475231483 725653866 987277038 999372343 575727523 733671206 622745133 815916422 157123939 206719496 476875996 598968829 222887834 382467954 34680246 227880668 705642089 907396975 357976315 452176931 28819822 846305870 594550341 951935093 455128904 674579393 958237841 997412263 290260946 866518278 64457604 880077144 614684237 946386805 329544753 933849734 742402687 978795900 844385247 958470790 412867418 473633878 530336451 942229481 684026216 778623067 80202292 541253180 622223453 811815183 756147660 997502688 436722652 798827282 567269669 750811792 767517804 771466203 423292813 645859292 907954533 950032816 870615261 885397779 492613912 679324388 193010057 544799283 427280891 969486551 114910463 193810126 807938412 813885924 804196617 903579443 913136860 969271393 962659443 978008045 527743674 614001731 438997795 738640634 982989143 994312775 560394107 706499225 523454510 959469151 77344097 133484592 199589866 578474143 282650104 899528864 525219111 842176614 896628189 904250387 384055853 472317757 542520718 597574726 908015792 920583577 899409595 935419178 805700576 980398750 805889417 993455109 356594597 880276115 354311676 355905982 940179795 982149159 30929928 343936686 370365755 849413618 824843815 869615261 310714298 484988596 274979293 321351066 938616723 985748210 95099256 866723536 149208631 558368579 196421446 890616220 973533385 978033669 122839760 376861124 355975054 818716317 229972837 682352220 965772413 999402151 571049296 970305829 669806674 792256333 525180494 797006955 596521888 983661365 263955542 697638864 629371939 907303402 274140763 939826315 378197327 515752858 705544484 897121125 841821942 947119292 553845106 627688228 137303949 599148227 239812080 767861389 832926954 963592483 378303369 498192595 297307186 818926947 475545458 645501583 288727101 782578479 127937034 725563975 890102477 928671374 450510052 730431473 626721732 844003643 213257609 907109274 125629503 782279231 57034230 535051989 710678635 852034186 372786810 384694151 284633492 417433981 336669345 452014312 917147528 986009227 292421208 642182620 499060451 820022537 887364837 891988576 249643261 551233305 415992611 986577382 754824434 978675112 596195929 965847497 287896137 753074048 639298389 923872702 683092598 836526626 600848872 602535564 887053424 913735338 309530039 804296978 526264650 716073978 662535590 946778268 379632409 609093542 39508416 426659462 660309162 697701245 5166475 520392267 63363134 980212105 336532220 636374620 76751845 463579413 455680641 472651720 555984129 638822040 27135818 49676768 700807301 800018854 862574840 924135363 887216135 936060147 338278626 586144049 682546 887512669 609950893 848297680 527095223 708896139 688596608 914869093 417243721 862549173 631008764 968312411 149890469 621528427 156947178 272465889 49068958 831552757 599535241 933477916 268659680 588337393 47297210 988803691 863886787 973055650 149806319 866373015 367453867 556366553 227278130 684070317 379652206 456840314 9932089 353632304 331569588 993425411 927879629 985205350 302383723 878046022 688477807 848633706 940383335 971658730 337756578 416888602 419773121 972431679 618468057 913020594 755389712 774502350 985821196 987715152 71311717 929064276 254262209 464732880 598317667 929610220 156397072 712115933 672734051 711448739 152066371 792881596 310469040 382597653 602556406 722921773 261729962 744327622 463675956 649342237 366511403 904059055 158267045 265041583 222187 2059861 324356488 876495194 302903938 420353324 127540285 364463774 97075249 793568444 120305389 850965184 849947586 949144170 577047179 950782393 538715400 731882447 80577513 620832222 20738306 448786074 877104988 988761181 255165040 702205542 999421377 999874434 38849153 129879011 627305313 743340683 705720161 996059441 648688569 900200053 159006829 635934908 908653784 977485486 791411818 958619798 677841107 990221135 71508918 829993364 196545430 479792070 199192668 700717721 351650584 433375796 364571716 783653120 169911700 769591893 586768719 742063272 81668021 970074002 697596319 915319149 239176933 394968498 234242424 494542445 678853981 968397410 12695952 845511900 543251835 915172072 324271950 976475389 652354165 730956053 746143282 995487348 81112643 290465664 635100572 908811189 998113110 999432335 425097601 791651479 87974630 325643399 215202416 981689973 763677514 805804184 940249337 941654127 46876771 717539241 895611678 964508116 872414889 901642180 217998136 590241042 542763176 838143492 371444018 898928259 79597590 200230111 485974885 589738734 178885200 967866295 906576438 994285382 367192936 944432915 763060518 815960385 920696921 934764518 529653278 993678573 183258436 391514619 59028460 449191326 559270210 848698840 894307802 943135228 276272037 834976217 956271863 996990552 628005612 956330870 423970930 754899396 886791853 957851173 80038721 420891472 232858199 826228520 443692833 814509907 374037356 829449352 952382781 979254818 704257451 980972968 139894804 766734265 788335476 874842288 665263636 907925439 432959036 508047189 462018720 543625133 975988159 981907695 939160695 967881603 381837851 734957385 779218069 927002242 294966527 346879146 699003993 901613107 539004048 544939792 210434795 393937570 282499582 736764924 444340258 757839475 962628160 978551128 229782440 849855872 548583849 846985918 290718922 503569645 350277231 845326950 752640617 945145375 191659372 677953868 204362440 966496474 11756959 362522474 258114272 327877641 800037830 984339802 19812073 761622898 631607374 809525200 998174357 999605307 273171329 665739817 903890575 942137829 827031638 828548846 290273455 513027802 1158908 240298036 881783088 966977343 95463772 671615419 516314031 694038277 760528362 815747297 723190237 816893935 406054170 753275187 927121213 955743718 500045496 866110591 63308750 951605979 216722933 256734300 658224669 989255151 859505585 922467288 733139185 760853483 434945553 708638190 434227552 799265926 521902014 933667646 916567328 962635206 532444657 940219560 767009278 831349679 122644339 741827470 532907765 747724107 903180206 955856698 377173009 812789385 964732959 976365828 718163244 922170026 269802121 358591672 135349592 611006409 480175153 587604925 398538705 841630930 803663531 920956283 949209625 951954996 388762610 952866036 937179679 949258845 335679276 623430808 803666598 851376693 290270170 895884573 920415478 994649438 501398011 994659603 887769604 975336298 882716497 953303158 155492037 979796666 967948830 991159158 75219338 102412417 173173318 841211655 49850712 331203221 512754858 571725442 217180722 289200515 141449672 387089007 8522798 472696601 220891411 732296845 369760945 803905256 361068312 444663232 795973451 993616122 213357816 731627065 358002772 690754022 88598218 552971559 554678811 836484891 635415391 988944413 625495501 870745816 229907579 736707579 730649331 756492010 849746369 873773765 664758457 944817679 43481303 230045086 107699632 736756126 332477085 369018890 686708634 836043219 599215588 974495360 125727394 218822632 693779819 925897069 117368172 926830697 789113282 929259899 444886533 584002664 796264944 944925488 812123397 849628767 413237806 985534098 545569695 945228273 876161944 920591304 206287336 968230961 611416829 897908006 65814604 205242753 32432397 136879246 332690534 509731483 475538628 799069220 790828872 863003333 185120087 796111110 692160041 704828980 57489994 198612563 510493467 811190426 243520809 720166208 311813503 889536888 445725084 614833373 897934949 970706714 761920881 941542085 826631452 989043506 709437723 814151607 337217145 928061642 904493031 966801701 752258969 981897093 76976016 795030999 84973940 963662818 7976472 360668420 306025715 783407658 996519634 999832840 819931176 915394607 18164224 84736343 17878825 603568093 546279446 759754990 304400075 940834595 917607270 941617565 677744115 920574204 725065236 755289194 235865636 801122660 427407834 895865393 947046901 950630262 176011619 330344857 826017183 893123926 656114163 888822536 718934480 879339546 243532569 931898301 657302295 874200523 780416648 963775289 537271435 742126600 539582646 769510635 2184970 57921437 50905199 791774038 254445499 415207198 412511452 856981604 626722561 879195811 917809008 960431798 610383629 910867259 143652563 961414789 441598513 518602864 665729928 949146822 348454166 972279002 781458085 906764761 516669790 598411877 984644280 993338455 800373093 964954710 134975792 291155253 193084753 750756071 590105085 989132994 94623195 254586921 510258030 997521503 618716853 854181595 971041508 977459965 300993809 616467975 623178387 726652586 913152657 937573385 747450091 754739457 421385296 555335617 826879422 960909141 710919330 784763132 227583646 537798894 517177944 745889886 150261550 465430373 988068616 990257497 193564665 724387028 247295560 542677940 460945100 958960723 113785119 759310316 755983155 796071920 157209016 358557510 759489508 929640756 418274363 908734287 203189433 948427410 956302020 959466276 405318768 820536096 900241757 937358850 149299467 931045357 475521510 793851872 933954864 949643034 841608453 982078645 790292296 828273033 936258832 941128749 35802178 902432552 605516888 702142359 176678940 442203101 533479994 869657734 552095815 988545346 750946597 844712026 976757617 977306835 836573309 879068130 190656933 218842368 719206830 724239816 986287507 995112991 120179655 665090606 866055110 917106610 326222793 894758347 243292306 860170090 28145341 504092273 268008239 858794191 972385871 993012384 818179699 886062792 323561839 864735109 103542237 713158573 531533117 584465817 212641532 498395425 504555692 788637005 53822526 424894488 425931294 970067190 895568668 944207864 911384782 915854808 356302358 374908005 953476989 991560903 408409672 539849372 685857322 690973900 41351863 982866000 244470702 751130222 429587622 868036969 532564587 800632214 769812656 917481572 410447627 628248397 295364145 793783641 659425645 708067877 373167507 492194846 379062004 827871380 459325767 820788347 739437754 912105856 709703816 765578752 51432321 530199979 722669581 744776112 521750582 899542978 21134241 608944505 869266351 939661937 60942220 226713223 998421956 999770156 628156165 869660308 849955793 980884267 843461784 886037941 502372799 805329217 123419916 702684819 358048573 665711542 949660187 998697297 353386116 957964279 334000537 751910299 892470871 990903644 712366772 761830547 610288729 726908194 356338612 997309760 931284158 942996218 129869896 610242570 340931607 945386131 173280896 448677700 878854237 978777471 35050978 375530807 325188129 464824234 843837699 898350579 751473581 769189473 848599423 975373858 326746303 477231120 95246266 192335518 818493029 993588454 615992783 700882267 448764880 670728777 1708711 539113851 561263502 573757494 745906410 887812137 724353626 821641660 329837501 456619125 622278831 622850076 782074851 945738361 169305782 924644458 443699353 522946968 775273670 970387741 74677379 514327047 440678979 488035027 7103289 613437537 577138875 989172181 461054530 494265847 116048921 578696155 996664537 997412616 140533608 513355678 474657807 879567738 571910394 572087189 668988032 975675939 101826895 180155285 82043134 773920499 651776235 961670714 772932830 793224406 317383878 521778063 767702684 861360367 108780457 887671148 520753697 636417495 494055779 865345900 939929420 947256386 98241697 654302606 937633247 989036083 542986037 665007617 993113530 995577555 683518787 825800633 683422964 756625857 297366477 459964513 112872114 159988776 145908645 698549470 155304303 920388067 164317221 566410117 656960108 840277462 224539955 626082962 900999779 976730965 860368880 914353911 913965699 975115001 452814408 800831154 475268484 477427627 869571159 977049193 98373123 743655288 752072180 843012170 671663258 672289590 99263359 980980689 214851824 768161809 698846687 823992106 771091943 984791341 511705098 592476730 162393807 820097820 838300450 990195947 721114942 867585002 769468350 934014493 751554470 915623072 838285801 948144787 713087718 793098838 404295125 550557678 384811199 546445480 919261321 973686524 62766318 452654540 687782404 993477838 118176549 321519181 770967572 842885708 692766971 764222888 401505767 576740179 540940220 594375437 771350542 819733559 942204204 960194282 979872614 985306412 690721147 859949005 509788235 703052280 575637598 760065220 894553137 939839608 223486225 264765186 871952265 888944001 39235811 528677384 484112720 612127438 530877135 945340969 677668923 715489801 195660862 482103253 61681736 452878955 362189384 558190025 584922599 860640161 760748886 991583543 715474901 948304816 759785641 868562930 569149603 900684970 966971151 968862202 66697443 107078715 890902950 917903740 120252107 679345842 379821608 428806057 40922229 603507115 275719183 905091841 899553048 996240771 538633601 834366672 607459330 641039417 578503481 683089005 30644945 348505491 541227858 836461006 643591542 702302482 765530093 821805389 53088806 319950692 551973570 698657628 245691781 473485379 746450023 873520436 521910506 729456700 792888792 835219035 649575602 796367255 855451732 860088571 606746358 792090452 626028954 709653916 444354884 523688162 20125192 295138468 224528567 767087822 164515332 936138050 295753722 612850982 525414760 622838534 228822255 800267563 307647279 719535442 242543015 697951449 783290427 908810316 376680532 692518468 444061451 858117412 997942776 999532295 720013453 832530181 476784890 838717331 49843443 581460720 139753296 664569201 990132669 990906670 735068471 843143207 149371328 916233188 177288069 755349152 599579866 956499379 796648416 952409446 757328144 840236248 188593484 329187106 887632384 978036683 481547639 913917268 455916397 688837977 663484943 731534701 908926106 997111626 559966860 786707693 491456380 606439957 997820114 999932219 836324970 839705383 277945432 652684299 851858225 899256127 719374125 824030640 836159645 914930361 562000351 618699022 985049846 988783070 356547870 930859507 320189125 382826524 619760641 922558612 201721703 760663698 391369815 481888084 599860637 744201296 413895752 653836980 490998145 803893661 137243151 628926288 822660142 997626358 38710 393519416 570576645 855436073 445246212 859088263 70953218 230145553 769348124 799915153 521789605 819394285 996400881 998687885 641492967 930475841 234068102 353906986 407383479 893499721 323676560 859684969 991247253 997317343 257231009 731972390 439423230 488388972 95978318 345342070 273641815 551364233 122193912 222310370 429404811 650795103 721363984 954454191 188700134 355168203 183700708 732776575 64163469 335919170 636469434 732826888 687872748 769861524 697509188 706797323 513571474 900332606 94912328 662397054 371245013 985035740 771209931 792003373 371249918 732932200 383970234 791625398 717160298 869544017 263520404 585915143 659061331 988540620 415546539 889466867 85296919 830895782 372897432 931427358 718976453 884319071 101722556 399238478 577334273 692269994 405663850 822847153 70257322 940945117 728547326 806341370 994803288 997021622 23656798 870509861 878160928 879221311 272640227 710508955 533264484 943302815 370716009 864493451 584970739 809612672 871112020 939046507 137111310 977059419 987668249 991115769 871331122 904364061 76627883 804052825 550202032 886531657 645073369 807789416 185122382 984576615 25581223 355615831 528143570 579517178 488621380 794729572 427762789 834704168 307655863 720666042 425461923 808812195 810738414 923613282 928877862 977275333 453256623 749064561 603236845 843028605 975436321 999718521 696889157 980455796 313513500 548678201 30619099 265361102 661270312 987416505 579443015 767491292 115665903 349897424 174222880 926853966 701599760 830487849 466011315 472523010 708275244 833708226 918260018 953751039 436941211 690458372 55960437 256786788 696425366 871267189 638226177 940976858 13777128 281928512 197285318 876340110 641669365 745255808 193656299 761098601 425718158 552191135 479203553 633544983 572074032 942702334 188187638 991787987 544362466 730534424 915200266 977202207 427253461 480922839 591200795 979836856 625219031 732120113 989567342 997673768 751150304 839465259 743134677 969444813 727716901 877471793 446735415 679446035 615809593 749587010 622795926 868687758 635888177 905325804 632309007 699843063 270711404 621148537 861239981 952383569 56805376 895126375 805827154 856774896 917641963 937655637 265030064 285268681 641703073 988220733 485401812 644961846 974746853 991015728 690720525 956454033 59929518 388956812 957654318 958673850 172404053 635401345 116552039 782154193 970255600 972834875 583340909 763994893 134514146 705000507 435426308 895753239 248356632 921351816 140696761 538927714 544030969 823826509 871068222 889264225 537364326 606993877 956000555 986147541 810958237 909155676 760305211 859584781 855171466 881663033 48889908 862273216 731557245 807887081 286661093 431119831 27194029 396893721 55346059 791932484 216884647 934349801 750186098 983660311 471297258 735206924 190622985 434741276 6678686 369697419 580062349 691407840 812971282 871527112 701128548 854578857 727180060 798373156 598723070 984727115 154294779 991518135 499773884 810586101 300284276 620404813 61003700 898876973 689671588 737084282 316594933 589781157 270098013 783873944 655306874 755285552 889292438 980780203 982831008 983609564 285146862 875909974 485852130 620395327 261492364 355667914 905916969 968527584 131036753 924821917 878092173 989732955 858499761 988993803 984012726 993420207 214972486 626471446 338742236 746790538 189068337 724359299 636801814 938168425 280752912 836415499 898305342 921132314 170868615 898364067 940223348 963514055 302029389 396868516 171014705 857544491 170264748 947474325 670494458 786280686 404140468 452766574 589619174 960716678 347477194 394952492 350585747 971909582 435487055 675477713 582076199 772482222 516321978 649749170 168637811 831404184 880673436 974696007 801257194 847496607 155407719 297145968 64175784 526794829 117335036 465027982 392612902 998605032 578518797 660847177 235486611 972765206 555992262 841425554 50880681 307913711 453610697 849563303 756877932 861301761 134813671 811082495 625490337 994181167 885871499 972920881 649658297 869652490 614019938 924371297 417435073 989133923 192364498 515616333 264816854 405447318 93388690 706336348 807169745 908188283 960644188 987938130 593787489 843423441 879060525 939801334 981085202 982071440 442428938 583283220 596575704 902194208 342924484 911745238 854898307 862550137 828479973 887201106 177335664 773359465 81646779 811796839 523192359 849387338 407954677 615358150 961942336 993628872 298613356 673152084 496292908 998830959 401637729 569526971 933113080 952648928 555811206 585965096 974780152 999919458 380409190 548232747 788353184 842582869 644180593 730358560 752350773 881246009 423930726 849942544 192284524 983226912 696533109 959151960 330232474 677119984 678036303 854329190 603401423 923638303 332597825 563056762 882635869 904853952 89078664 829942813 89032208 764713404 139744594 325960499 420815848 421395738 300215152 830505711 946768433 973954048 803310216 903572518 800518678 930255581 569496669 966002966 946403631 969694462 837048784 969712581 461620520 873752326 448719359 737978888 63346489 467644740 651071481 663313201 193301549 448034245 345110229 741454425 900278409 947331677 140595309 536452183 469004703 793130255 969637034 981140805 71633330 756774980 280590071 330824911 716298470 963440777 205038513 983530416 844569038 869218946 560246607 803575509 418993792 501401942 502827098 639639714 930167950 942496607 893053611 960643129 257939827 365988007 62952050 442857316 961057629 999150378 605843015 824065728 500220404 911140468 710586721 742583631 519374152 716106429 636639190 795199566 97971407 966055725 640379902 799384953 812014448 986618951 72199400 844697558 999032199 999619470 445797983 936954710 357880810 582793225 495404137 861054209 918718327 947564774 885297732 953891938 389348795 992316141 686183204 791603816 94474522 116607977 517715728 964671526 280320830 916177806 994096462 998038195 481835950 662268339 2595412 599031036 913466498 973339181 82849024 740889411 69165773 754399265 805046753 919014690 548650808 759135451 261436902 308007220 86265889 131639435 72870904 121537108 607556149 997218707 158240009 728424968 292633313 565161332 438889663 801601467 324701937 829515005 631316437 667741635 337688514 808497963 570101092 735898757 369139140 692956214 986589016 988942334 766897831 845401653 820532406 834189800 165964369 264991578 722156217 914874585 241555438 883096122 912251765 958793370 19018671 165099243 762133757 841793380 930996737 958429804 646309905 848770215 909359315 984981535 629866500 889219448 897764682 902378079 145111227 206228449 898171388 982020794 750508854 970039262 841342901 861067196 760175846 831067768 293415125 973561139 150309053 624165458 854639994 922740235 599595617 970527718 482351481 657653979 680712377 760405126 644178692 988577146 455864727 820018599 845326981 987217616 210043564 578999677 799295099 806552444 763362126 962028816 24485590 756694577 761139821 965974400 738118691 801903836 369754617 473149817 325652191 897436942 515023404 587259469 574878942 683500916 997743611 999479019 145155988 794060565 455332540 461405229 990959886 999370688 335004736 710522741 869425686 982334903 354445512 546696352 258827931 688619207 370168727 476804141 280006029 991596392 424688557 939167017 981433816 998826992 226437054 858063797 983900013 997980026 338227581 736566367 425214228 906212921 20832265 652258997 51854756 345620119 966187987 971522244 201681155 474331348 876826144 878840910 93624396 773735894 876622755 953813529 149807402 564074204 439033285 958403980 246053949 534791925 762179317 927539506 824275403 878537883 17871073 992083052 588179021 680139039 222814152 536705883 961034664 992304356 438676432 752303101 237746150 951914766 540431336 598039995 130821776 801342522 131524200 679059180 618885386 646957461 572459562 641905155 802947943 906909422 531141253 667391146 871390619 953378897 902962320 993743315 403421714 891767787 91877160 105086822 911493985 998580984 266765378 548513923 389944493 866645402 695603465 869883706 34729200 275545746 386932058 947749207 268469491 921619610 361423006 431928264 997414352 998100938 740224173 945213023 249798823 498651799 747414759 811613981 450935782 533854949 344108491 478186128 480687853 622191687 65917070 581927225 164859540 423481309 95451936 434063891 509243858 557894985 46975063 732724533 215584127 609209485 771747655 846711628 714337548 789120047 511031538 926617657 241968850 669077137 853723293 919667048 367094670 546647753 770853265 843112164 610774622 957621525 411039092 929540017 213385350 395050700 854187051 936484643 558958836 672857393 305265719 951200743 864262603 947876151 70404478 280035452 494330166 656679941 246446631 978530052 562518688 764622432 682692127 832414135 584319194 886913661 35112261 857199279 259373694 273328699 203526102 506484056 967631326 975946676 995047288 997435973 467129759 661519445 486968435 544716587 603352150 634323951 568043352 791739067 148697510 414648795 726909632 734540245 629115029 826101452 204859542 385642424 231356087 456895739 656080913 858392746 16459576 231248488 902553356 972600202 987940727 996295810 773454000 969021729 168386391 261375134 716282316 879983435 206783640 582900949 653452168 684462274 851119892 852054671 215851170 215955034 453952456 875646394 765639163 942574170 286921914 445872555 747338954 917368254 787908759 888705403 314289869 491098249 952944981 986369229 255762022 991498947 237741249 748514472 761368525 785916959 483069645 614239118 82364289 946198562 896829829 936940512 598971191 969968200 995468181 998472621 819961311 922465684 751375360 982534418 105662169 371069664 414788317 838274130 908166144 916137271 533947385 902864590 257407097 711542678 699508474 778067832 550478736 819156236 869761653 955548031 249922087 830447939 784803910 847565677 265437982 730505384 590455150 684340405 41210678 594363565 522146839 715410795 930952898 935922718 7391799 556713408 629751688 963736112 49495934 500202436 421466025 825088024 855864053 993514182 643451420 663526863 546238585 601349467 943593648 970252903 897497944 950346219 111783200 875554563 240278356 504557129 484945115 867592787 279608700 551219448 177957104 554090931 216280048 769200212 357723959 601651937 839333270 956792133 813893425 839575727 407062196 818470676 669414830 927000199 862130507 935472248 350806607 850640263 943420462 970206525 910890655 989486022 655546041 906844681 733763682 746676728 466107802 624053490 130472288 977489544 10884290 70254634 911344425 997126951 477402384 920368842 979148163 987569062 278368091 569676481 636061829 750587381 106978800 456361308 553511835 757859122 356753038 523520252 145882931 406858685 49250742 339727720 522012818 719643150 935153424 979505510 499709673 541331637 862252313 900736841 278570817 605822267 134840146 721192281 116326070 267768672 231226641 326885699 774682940 959819139 983203465 986600765 129996746 781872944 945113104 992455202 385403870 948375737 567339817 734079071 660615263 865275115 527606168 888805727 303751035 534864075 553344171 987361152 710203505 818190487 626938400 813075671 396440537 773480313 614925217 714737664 581766575 960161877 783494674 908280519 669752865 690856734 573038541 972969197 549672594 919736508 192121992 877313633 996765576 999677448 958218171 980437282 722588648 773795078 743436141 824075461 167611053 500641674 713684863 952438560 68181024 349980574 566195308 929326556 119480616 557704577 615048405 789015583 533242131 767749624 603481985 637042180 419219894 762455788 518271048 639568776 480790064 569641071 680808406 966270363 361115669 741451214 982366698 986319235 719484189 730617230 348479533 932092490 160370668 953666111 625416690 731261667 249093255 816230464 470717202 694250662 158918615 878658245 942465173 959042936 765307230 915757203 653159232 961741921 27225306 74132974 923949976 937999093 205707939 930161485 154410654 793530598 317998429 364353334 846197894 954545499 589342928 741049781 611635160 923166170 821078692 872423540 399602937 503623460 852910326 937238286 491298112 885472229 351056343 440017746 746897865 811226125 338203302 734081295 626475760 806522513 496952979 749457668 435266624 810640424 387971484 962889602 734310600 810981626 942906913 998065733 20749958 239585917 433347638 959958381 961582907 979032253 559770331 983202726 300241724 836163690 993153366 999619035 510243744 989003541 380770009 654768433 525953188 587069024 631686354 899845462 186071999 361824459 777057203 859901597 340937168 916254188 504617860 716705761 581449891 944791680 156026753 271831580 267008191 769074637 969247639 971399554 80382009 187623442 898535726 974291594 702155608 702890333 157939266 995674726 299671064 438698541 970282238 973347219 311355624 779290435 126554110 687945525 902534611 978523594 270271330 504233175 113379963 213116024 808613209 923329546 529929143 836674155 203363067 483755668 453819498 590207127 214203130 260646854 68409487 419565112 737172568 743216624 548814298 625826633 280448461 545412472 881802918 956703033 910063708 988258208 731505892 927661746 306626774 876185922 829098461 831862673 522788839 656806108 79977885 398798648 270421151 326052362 531522215 625486071 362403731 488493911 702841082 807493756 980399648 993176058 71855747 273178026 129051655 563665340 116008521 222086929 512042371 914685748 163201234 910720879 297979010 833169058 221750009 560526436 388310017 555570478 348056620 364361900 29603217 311000380 791130113 994033969 67979665 298882910 133798657 927837344 264299891 693121304 306789740 723684264 762344375 770273700 698610885 786573065 215018515 814429196 303595523 802597775 449893704 483480566 217375299 395260354 919635415 972459034 585290498 744933146 381296463 824922248 692210328 730790302 656112056 816873485 622963695 770659329 373043981 857656702 954060211 988468453 159761009 437823850 328370400 378425240 47866142 955725245 668396253 991160376 681985213 760198001 738211214 971232587 495811865 608720324 227218978 360639973 346694102 357363436 993351097 994851760 889246713 998295234 440462904 942080910 187275400 502340472 196629918 237982626 741970074 850495774 335886979 401280014 194003727 731674126 63363564 165220651 790319857 804215084 474303960 544293685 337356095 781777693 794535196 977537760 126022541 892910000 826445758 900859805 529491088 678820073 282526960 685407238 720204298 830233763 564507104 728389242 178509336 406057427 49640647 63386280 322227986 668156413 816995706 941358695 923436426 997579986 480872765 522799879 175668146 924556449 439324207 966009838 100405549 179613195 314128314 341254568 425308001 509102231 68602926 705053938 106206530 689790748 154448437 708986189 875796592 997233430 322405044 472352430 347853233 595362076 171870626 384907723 985691307 988011980 55683217 959451777 501534119 505575678 151333091 502846245 105550007 774881708 821632063 961441522 22628321 634914451 635901719 788677699 177497932 916686523 394331302 601540279 27520382 803518925 736498631 903692388 552006084 689262820 383018821 879077904 262280905 356510074 258166729 862017978 972181336 983853617 769958829 932510178 797840699 853133459 163222783 679032619 63765403 144414317 41172651 265790513 917867592 944176147 258087259 783719459 364047445 972127431 3783265 666006361 818605296 925396906 362618593 520471331 251741081 941150031 758081812 848544867 167859537 783923970 471328111 536042078 448702715 456604996 363617531 421611678 91997189 910294501 255143799 853152726 575770155 887135916 438636696 932732064 658761558 834370803 675316877 795622752 374725785 423904858 58722650 786006819 387726914 530352962 211320981 733294196 175060880 768601177 170583762 225880293 557545556 746870549 130513904 741938594 45035927 540598777 764630977 905982368 827152444 985646825 442048401 444870839 111933384 524405528 971577914 992690413 212121298 436098551 386047692 995480047 476728880 716020211 163685837 781842961 868569796 898322299 231244486 524851803 779494191 896780160 216407033 571652259 487953122 998575288 303499618 854350900 812891719 854276656 302364086 348705509 46871860 466199494 30910701 510949134 520504307 582810017 188344344 773687461 21001952 676190034 465526325 834935289 31293615 722233534 946521771 984321600 606457218 924879130 678147123 817069751 790174424 885652853 498638199 730200232 94265388 191486838 957040327 968123880 783077262 895829501 150703860 651886250 420535938 696484948 560071478 936521900 135761835 293038894 677912838 872267449 848517246 944173432 659151164 892908897 863368264 993909164 246762322 338241677 829845650 865731580 443355493 642955851 41617246 426976749 541372238 585665460 67954879 329067981 375153941 695222817 823485205 969884381 876753659 919664611 137831267 773956484 459145246 643126092 821938268 993778372 146607304 858701088 280416782 730193149 770992949 938097642 997221527 997430268 692839455 974656535 265694580 997891043 532728370 672345317 893233591 930881604 896322246 944265054 315216650 563048830 969524537 991277758 560472565 890858465 322421085 776052257 930737484 951333665 326549152 622223483 856976839 868654499 533045293 598639676 612504164 937614757 402464716 510805748 342862563 734372457 969923233 979284057 193379307 599085467 688971469 808335465 976332985 980380548 569745948 611158397 711706189 862681331 921162084 982408221 381353226 756397238 731695239 994841992 801752678 848934124 246750449 974356495 633646074 653856149 906629276 977453906 889171822 987088816 202540591 654733399 266588744 569858575 564146617 679992026 80502040 981573217 651742399 821349708 272760480 778470922 212759499 695438650 39842028 149717851 425148454 905127323 487232982 495453662 377678835 658723711 799220066 805302806 497334305 770851480 603471640 771318044 959910416 995682737 631303899 940713237 662703464 956788943 297612607 802911328 646196432 692670939 946079565 955249432 774725397 839416992 345153583 648470714 233735692 573342101 317250579 352271780 170259726 536757992 351143510 689116068 512689078 837379432 538704850 710087245 336831150 462403070 846101620 891543001 685260553 817858521 975232207 993482981 417038105 591473833 675475074 966553102 564177186 742171784 205353233 856233181 633788252 743860592 806561615 834772922 973588568 987519004 789981984 855580331 25915051 558581116 312428838 456618747 774529462 970135945 244116701 533618932 160912190 433168069 997186025 999464212 406705409 419000380 743462913 962858508 731179260 971731542 7607132 40837906 700304030 744053247 955621190 957953177 890510443 948585517 199497980 202906092 89768040 857504487 658381053 981643250 521637351 887097032 46670036 959277881 18552303 338718908 229500060 836937580 435267191 616846786 264972808 525291879 948196087 965387718 110063528 213514741 618899346 977121863 766024739 867725758 638256697 942909792 490936865 863206580 955626814 969138858 153463358 642007368 566687555 763471318 805377308 920072506 843239677 858611674 879428741 971061335 168915388 874037113 376337182 860237852 17138523 553110317 449179213 576059354 394630576 887048544 880312479 903301189 9087154 710719605 261363921 494659236 661876653 787059678 761891880 845689690 345791323 589857884 714977476 935067175 955010258 963785500 891200627 984616448 318330276 448158391 31210684 476243919 161890040 898788705 611343081 882598640 266086669 301192074 363919039 920254167 83914784 634374184 255140454 449318014 982659345 993751419 32816907 618892357 115657446 952349831 130262253 190728684 896514087 992248304 14110893 747757977 88557015 179733175 579393490 698479069 996597424 996618892 573692551 898047941 446173369 840092274 83099455 648676400 956975260 969082070 563867711 830434953 943082609 981533767 526315764 556301312 720413879 984142491 880659323 912684437 258206602 927910332 606382754 823343717 904757021 930582103 343003276 699765343 639532391 865689735 306292055 827428806 9061408 923302784 664702458 931727252 243814088 647227622 739709644 920865386 142263322 418827009 897115189 943171420 832376155 919822092 35544668 41763315 872171553 915613920 199640185 270832850 661362784 997287426 846789488 866025762 445283099 725547676 225301199 496302223 450444528 560844344 832192712 952821121 309575795 553588232 438527647 710640814 203179682 524983660 45428723 548062069 280365645 757072312 318694727 874331899 736696920 961868138 529978015 906307700 699515229 887516025 184359152 399077488 467279851 828292304 179583405 436159822 94912927 999266463 10386025 608684655 713880865 796331355 486878773 561833528 757177540 806454985 400484879 625812510 903560988 977733420 27407211 410981759 713148427 734331058 961081444 992801826 403237511 791742657 735940240 835856071 330219435 548813750 701775490 988287336 72836541 627951391 773843005 990243897 424318862 974567925 145468985 215922825 646406414 919494921 625015092 943411585 145857026 828938835 636833116 757004451 693674245 854080666 561622398 847039680 764720115 810057277 521016155 836371818 853632644 999689730 738391603 754252414 955693518 969233593 269896156 565325158 871185915 951213969 607631310 717012008 948553551 972457059 774387423 954049924 210343212 636288520 115937550 587811787 325166674 755108876 120168065 920888900 688236478 791143911 900889359 951402235 832794095 984792680 419634222 845134118 607190569 768200736 774095713 804270332 298536386 933132299 108903970 475875356 898827965 901238386 67975979 134751292 99116739 101097417 36172599 315878794 839393152 936183139 949239733 970153210 901143257 919461499 463546090 711458009 542858855 770918829 269781066 669297689 202456141 992945119 797126214 979030552 108677862 473638843 655481852 862774832 704063620 868609526 457501949 505906976 855779317 973251197 117729371 279111074 591095822 810340225 191338374 389671413 765943906 781515768 521913505 773710424 744008136 817389896 654739918 995271843 224921663 494286693 276472937 623093818 143650942 370765187 947675786 976395539 976990998 989704082 371828823 616146778 36785598 91147539 463365681 650326793 860702092 942704171 801070433 828126235 612793139 667750992 352155188 641521697 99180378 448426050 642021303 926514056 691672685 977355446 722940874 982903490 752908222 840742334 484178443 802762583 253011539 342188578 61189947 745729092 79723884 117827825 775624419 908783722 355021454 683011545 178924156 732963108 525180956 571681693 408894266 491151585 585144544 607261791 733720619 943463285 782144580 800923047 140591750 837683490 879857160 883280265 451175064 540063633 15716961 683640905 696043694 800235979 164448388 565246629 771843194 827507147 620536864 930671614 14748433 889234527 615125294 902212274 389398598 892461676 94861 955681963 612819237 984800208 905919719 923463067 701628912 922287120 557193946 656446437 535840027 928913667 470994905 670438978 224780817 410677852 667085851 747704417 588044216 908892865 765261971 876989142 12659933 913853262 61129035 974548783 661794028 889321992 734209292 747468916 760606246 881168643 332448812 753706634 819588490 838377880 620483270 895318728 180894551 626547115 572255172 878003468 811275614 938936760 715870594 927603704 923363030 938165819 132686368 409257824 415506962 947551461 407813367 538850421 863353719 925499222 324165058 365487685 679017845 987764476 134375901 344173953 868347411 922492545 150709828 257371582 211420236 806543580 106149682 791446745 552393034 601373117 180856787 651335000 97825570 768456980 779588294 800637457 594655269 707706437 330762811 653247115 23749253 112324277 818782807 916446050 884829322 976468534 913129705 938608838 893652307 936687951 725477304 851542401 536708564 559050307 719037888 912773486 540264164 804346480 973445581 997150012 338575381 567879520 455353197 925184356 684697321 750621716 197844956 404368186 122537430 710583206 964277914 973529657 536617670 891208484 933862527 951204940 361047384 394458613 456598811 543985535 397183691 406076189 718257411 875532348 271311831 350126434 267450859 571780937 340791587 521909599 861537523 943817323 833060220 920926943 530424297 595384547 204716158 569032081 648028870 676596900 532302972 812118832 190831563 223575726 274001860 925603098 891320294 911576152 814386693 848517313 723715052 975660731 294836627 365894039 441622589 490811219 808609999 818240049 268202823 698354621 24026903 316803811 9564798 735887146 79293535 794212312 291748435 402695752 419898360 808842292 439415276 951186334 268178170 325198621 563905210 646259448 745642645 988871269 938303028 942685711 385224201 881002750 5602263 461145129 711889802 972935373 585630057 664303671 949358149 964311775 481819788 875935418 9512706 14485806 116292307 942400872 352008966 639853848 446991099 768872278 926155531 956298652 308353932 871036621 522107955 936181126 659360518 905632394 931716914 966012706 821118138 858057614 910167298 954827767 641953543 867606954 981690433 982989603 63620553 173828854 498353480 663014380 833418074 851724673 193614341 987178496 776200695 883639192 738229253 914504748 493090304 793094571 318295128 775984937 381036602 389026938 995407262 999363381 220684628 274674101 956951601 990275474 254853814 733509064 863277079 911516004 75591813 702484079 128648433 827095654 596753822 857353756 240743505 505931702 936840632 993983638 685965084 831749186 390533879 853072876 479614461 859330021 697084312 925440849 678409948 904021489 964177825 987016487 940378441 964253969 857487588 861335570 643179040 917883236 779247900 809520999 562929291 655519397 741575078 850442246 505057942 518208110 413920403 679444822 293913174 482440393 246440386 655993552 891517268 956632864 75137298 164685331 737517376 759800258 877341383 889567804 492891015 886530586 435190732 546190394 312895389 396470366 337304763 699696506 891750641 985316310 202794455 401735162 296968920 434936959 981159894 992527980 742301293 973957141 542481072 591170336 782305417 857938087 616694911 716215629 149959855 277493166 670288030 672154556 949555599 974967272 530509633 855522410 143617353 385131739 740934682 989182093 125480156 172838885 63684209 86262757 869338461 993912985 606292764 955480999 694173308 699860672 595127473 782081932 691377403 983554191 126313316 655295744 753666894 788143027 269302829 463063010 753820471 855757280 26457978 325444327 200600919 469418580 996360733 997582552 357929856 502964480 75511525 162828229 785135157 994664687 171292197 298250826 761888315 846203527 983939372 988416855 828468753 852164908 292111906 739407148 135994495 574211147 668716443 726908856 814434903 990212292 940607191 944625655 146710493 823049502 608816462 630108866 675844925 748270368 552954413 824880731 740494349 873033722 897195173 919084177 915164197 923316878 464552856 548859358 234415651 728260679 574866757 706493510 382023119 492155562 595988803 716001481 354434883 736595357 158149284 238562858 919845692 959855707 520098532 697934170 16050054 747269975 664467689 847165750 247177295 339849699 290477415 598294576 206106851 276464550 631360451 660459206 270534400 558755643 498425072 791190303 187650816 330430666 663653253 691035359 558174116 780523561 647013896 773958121 751667618 999315765 267315537 345356897 626127395 692881676 167271804 756896651 388055044 571574939 760162543 815929877 422748009 954910358 623619347 902209765 393879237 417524975 668898691 884052767 518418042 909435481 669508191 889030168 636606540 690994313 316405981 819344876 371307683 894525171 795314255 896077825 911253780 914548554 895514931 987604181 124409826 346619681 988776733 993270756 627437074 839401542 546524947 918330987 17226673 317387292 989840310 996526982 121527023 921961622 364626450 931846979 30104952 65536223 489786117 592140830 765050916 959718761 783777907 959251754 52855483 845014879 773835459 858706203 253371515 415330412 485990447 884991473 688936084 762851558 522985182 965369738 784526335 790854930 309748482 337567929 264436323 308795424 231907723 696928215 558420577 745049502 866053488 986109932 498106857 633742626 256294437 922004027 896259986 954889365 853285155 986468152 419998501 584876786 832567808 944693144 256936935 362557615 734846078 752499116 620231045 901684185 935713 976359395 10232543 281802644 690503631 761723056 923241 176874817 361555274 565628781 530733060 555939029 83510641 214605060 930218818 998970967 46430577 875413866 380849794 975573103 30902789 119239010 392232751 721465781 508222519 533885078 809301408 898819829 918732524 948603233 952470537 995742428 421782419 996919009 893082376 962309803 904716084 959351897 512394485 654343947 974888205 977012599 957464184 990229928 725026562 818791621 415938828 793541626 161556091 965606891 949886677 988075350 977086974 995843304 101983274 167546650 745446547 800216237 575949779 763699966 227180279 694109908 867118253 912576081 140157639 325610349 51492828 66687523 788297846 949284343 708316114 732433044 622447419 881708199 769593744 789223801 571945381 622861936 981151709 997681496 60233230 117538117 961696620 980544662 154224969 366928042 491097358 703364481 419583537 438345166 929553433 949990447 632095557 679503467 128754838 543856478 646836299 907392646 645766239 779982597 828711755 982177117 801219596 812015593 574238468 822108960 127616914 136577239 296214310 814829414 139101655 838646310 492398692 856942438 582852126 613409696 829704003 949431256 422221061 626620319 727077867 903661043 323021291 669272253 17801706 621273384 955653659 965121505 834021443 887888155 744517306 936465787 786789386 976833293 261399458 796948238 883155999 969710444 164876772 863518553 654468934 759127967 655938075 795790022 141158628 436527672 911473717 969091613 666986582 987237211 147174158 709701717 171477283 978518477 881466901 949826097 812649478 864611630 251493211 265023004 322719682 483989802 19225013 619267872 882878465 885580079 808425472 988288956 571273334 880779845 223580670 849380451 856254360 934378569 475457019 493028824 172928661 623448193 91944860 203545507 117626080 167441003 624830103 723441300 522335915 686983341 428158661 648979048 691210931 786188929 969712523 973574665 338527340 415166431 414251078 960128865 463963591 477154036 552910636 598195450 949038308 951034914 991159416 996555922 696478341 798681857 454325768 468769460 800849977 946423254 49750066 885045805 185209464 222449675 115702464 134984621 380275443 885517144 21479445 133910599 953037083 981643589 175582171 768716647 102967792 114641660 200632090 448835974 263595133 569021203 807363623 911825538 274139368 941459498 963310468 998575206 205501670 275529195 285018596 479543488 907521122 997594153 969936919 998673786 843602403 885718103 399377360 851459624 331603636 754899609 56250952 553597100 391262735 452834095 74254446 566951800 624451368 704749876 374303809 757656106 343530221 425653604 480409261 855266891 962886474 990162225 723066103 822393996 909311453 991289062 874427142 919208226 621406000 929553610 257347108 446180460 862922646 914577711 346232590 854681901 974695622 995499304 278520711 534978986 588319671 946744691 959109765 965764443 276931422 724349534 587706700 814913292 401015501 650567386 429127457 641534643 713849184 852823971 77706563 207277185 594323830 685907536 501267575 693959865 378312486 733023496 457298615 630372699 738379131 933429224 770495638 982559113 833305950 964962175 29363168 969367737 622884696 933468720 428438420 661502548 113321880 428985168 166585864 782207611 624732827 685246197 732256508 936796121 817144226 851215894 316625504 365593864 160897003 936093095 236899044 729484951 667533448 910251156 920807719 948770664 667583473 756488551 499251232 588409270 989440876 995573894 313449481 879724020 515025241 793007527 440421669 816038339 873300253 883788791 970525450 990692850 247283202 891764311 449525857 455317316 950905235 996954953 90780676 280400578 864105247 902510181 220535884 314548520 345365938 708869335 978389119 992315816 934678865 997770805 259072038 739387202 809628729 991260194 773143355 865417267 18438705 456255962 879959941 925388109 270625762 678099190 463817049 842583705 949379528 982763064 922062872 937254739 478539186 721058176 909996209 961811074 474064642 501487040 720610127 810090174 102983803 948703884 46083794 392135193 442677034 637970918 225998245 427467578 782338484 944880774 207692551 488023380 127668040 215459376 772344668 865779193 934257032 958104815 87545628 615451372 789198261 963768929 564378471 772786840 377571555 938031889 968543519 968739294 352412858 639584028 12076084 503438054 646897784 935330046 27154867 130448960 294874523 694914702 456034480 581915706 47079738 73200061 834500113 876323615 215017302 269271145 127323634 446711831 752070271 781514151 269398339 538022658 136727253 151578958 407677955 991653291 783257291 873595460 490546037 804232335 866624906 966274714 546721980 619685790 255199638 361743811 767170160 836503466 851668581 947517958 528865714 567185689 999090926 999827979 89282657 464584112 933127804 940913949 467948643 890437273 693529101 839054325 560803378 613847911 659357737 711989872 281456191 806500228 767013849 930562905 424988654 704756695 997203771 998318024 458851991 640138780 648292357 999625958 285869697 293215562 149295462 747639151 125870342 256507845 250271899 493842029 692240078 808412217 389516786 820661369 562482078 721100817 47889401 132131468 464499701 530297105 715795762 932819277 591782429 663572008 324403004 924428299 6030588 490661588 453264969 514013064 992405976 993403376 389358329 926910203 482358660 940751320 692661368 798983031 344429104 760473237 450384703 457159925 992553300 992604541 727006634 766342308 26292127 598979766 986099894 989884571 675255128 696982031 415120614 747380001 350088198 428695482 356587504 752862913 101066963 692565994 209107863 217686609 444731494 581082625 716626135 807583994 40405066 706340301 749905402 760668979 837731040 958143977 595280141 646449737 653417323 706124268 601014268 754449327 92029996 683672187 410780907 777801830 593370303 677482955 967817028 982339517 150555749 307533873 410703507 508456221 410479340 434721827 807308888 880598522 778300532 868903313 799634924 831784682 952602199 991669859 393080109 578239270 192503565 361024849 374528346 683022959 620175032 700092324 968020355 978130556 316299048 949486151 52604765 371320216 931901122 953925089 233958710 408360203 791122575 911280963 369131134 388254811 617695493 672404799 941736318 957049213 703855575 857409633 412395359 627708001 80406684 199315316 253690753 884003754 307557185 527744643 112719155 769528833 127109652 501678717 186722547 471363043 514086935 784241636 454269299 955106541 561064314 600182601 385922170 786678455 111649107 924408222 505894413 960374049 920054156 962574246 64095718 322895640 586781328 877107802 193357414 828287310 729941849 846785362 555656742 598036007 569738439 941179636 370036101 478285719 91190824 994938422 966074280 977917324 53404360 731338460 869919849 894287817 213687502 884025109 334868021 935278840 115588308 558213740 453855243 729158801 52553683 440343154 733755446 784786261 498413852 797463376 975089461 988045225 847960396 938448991 233330367 800233849 572470574 741871438 981019862 989098474 358971573 956917224 60531078 918889718 76792266 449019617 128299741 406580248 741910965 898045489 221419325 682085077 644710453 759461544 914869551 932132435 665525852 752684572 917993581 965637193 75379542 703759274 727371464 987664201 450123952 897907730 372318089 947576784 980749357 991340023 496758401 581481654 38836904 793682231 927754972 969413378 337761506 439047838 279798405 480965214 908349880 960193460 160825585 870300184 47777973 105430826 301326608 329766146 877923485 925679842 788263023 932687871 414527929 848127453 741826807 998969667 28074457 489188846 14454926 659184608 133603865 943480408 448873353 756575559 430138553 655503908 284821310 737834389 119076132 787505948 97350409 693021777 588483442 723651839 577582711 793037743 799657664 937116365 265393449 803968577 765954647 778924891 748819743 969526946 209262730 812709709 936495199 973475728 584527004 980233854 25614896 646316193 228986935 977146993 169139261 360857785 262219405 288817895 135563860 818825614 76265221 312219811 666556943 732361447 525917941 541411984 392468883 458610839 826569269 988500229 2775728 342325100 106339931 647262136 974703578 995999187 204060417 937199925 115941253 252389487 851629560 983293654 908200265 952272175 62520352 912957063 161188691 625438762 140264493 907393931 737916343 877693954 921987807 946277170 746505310 856720773 206970601 341657293 227355655 953990152 753099961 886527782 111608778 921269706 101641288 637214847 889623127 996029078 991041066 992644576 521640544 988640357 177825146 660651179 607864619 826507819 683621552 886984323 675987445 927264124 135972906 449413390 185975094 607714873 460389472 871356417 944924440 954764371 749409648 951380884 347812426 860765819 521399446 986532751 522782068 858605924 396571985 921661024 272937267 306140775 300240988 639265931 828212418 978509917 181206864 746680476 585182733 688444716 821278943 939335808 198258188 609805573 842898937 957495035 393069453 671648028 802096939 909160419 405955511 809506999 395999545 503898311 731646216 828136576 6208242 766078661 698411131 915517261 828738091 853426644 246000944 410076744 819456057 856442561 32935141 205043020 669328421 819561896 328029147 460168773 318963546 927645034 133113467 424957333 322567913 962109561 317804449 634447819 374025458 635011296 113754980 406618642 838354926 943051458 79086542 919428414 566763076 665650543 933489673 966986803 14242710 830641121 600954367 686206341 848914686 966651478 246917209 481521243 662743244 862120305 961354688 968294551 843030550 982122768 465875397 852337939 962251712 993376473 364151687 980607997 528069112 775733487 273140315 648524377 867570542 919655020 566323601 706610418 289977082 475140060 671570528 904537881 364696880 402390686 441948821 639668940 6587989 633750001 202147504 623689822 321290629 340354635 684292546 974867823 923448524 926541423 590402978 956158553 721949389 856717874 464251956 609654043 628744354 680464913 622186631 732674768 261893848 556037281 622990520 849683763 240439985 726160815 277278752 885436681 28846474 770466203 945452298 975860020 36674430 351285509 728664604 971006037 901625293 989617081 855503872 988454419 182395787 546507845 514016945 747797013 800195242 998467686 910354832 937007926 147233525 458896564 729090178 821911649 542210331 814779146 664786462 904446784 878823873 930482189 580076607 777577401 822531156 848693788 427788151 828933749 838261984 930363846 296807115 442159242 717544571 969934549 510775762 873055342 855284057 890921770 782525360 922881525 610558565 864688536 834054648 957891723 215169097 387366713 840583896 867167569 946549178 993953262 699798411 782970060 51295528 171727538 236182502 346867090 722728042 985723307 470777000 974633542 755286657 805797861 868336362 979596656 561468512 819335928 779041655 812834023 150596844 543847681 263866246 650594231 928215045 951728538 290321252 370151987 191376125 964668959 634086676 706490794 276123226 454800580 182042202 997231026 457522779 522901772 305024244 840151386 12663239 222060228 293674679 651806870 531209825 727224151 804443897 833970269 277092251 940655225 806927898 954953238 618717360 726542930 809958267 825600220 357001534 445845974 403549409 776933431 999767261 999780053 249095537 506755109 819570107 852318966 686345534 695813676 584573761 853743659 310329184 883196198 336038049 930827383 669889477 976408855 127859489 527516152 483960737 812377417 894812872 910919636 835671223 995598157 873597638 912589802 964891870 982831544 253081215 411584664 712761833 731521500 647029027 846038802 847924196 858463145 852409247 966084122 244246598 718220592 913304500 945806408 345124671 730447817 787894560 929220487 757455504 918936666 945202623 946833031 903645202 978998217 883652716 984351952 293377802 989182651 864623010 985426625 852836621 986860760 70772395 920783672 458217887 755786076 153396599 792003470 397779152 829352560 431746129 481077189 473685213 815519508 338360511 727301919 533342365 687797776 733415587 764370980 722544631 881213924 918769312 947405521 93031421 903180621 18846278 615293125 386927583 854298215 434665198 493251944 251679000 896647526 98101762 122254387 997495818 998762616 809439843 950772796 896581405 960866863 855022532 925940106 818526384 964837056 389395416 589560200 546653183 962569821 209406236 685731040 185560323 643022015 293123542 836797533 585603133 907913329 158545772 540685024 470531152 969962935 257016244 485181353 524570082 563599886 415271675 763437305 829746669 983879279 517945355 715700799 818856190 981003909 952695333 983104560 79172416 489661247 427919808 944257451 938626033 956276310 712352969 795116510 9808824 998454292 472293929 751405320 378389006 804660002 184190493 213159023 252170622 370542958 44048271 109086491 921889266 927019555 972491 581344387 901797633 958936526 791389170 889745925 684586618 729210083 774609697 995751477 76463396 468610208 680799347 681659175 792372800 883095134 860463111 969028005 634610961 773917413 425511509 716391850 635974328 777000014 4046742 560269726 11381870 420649364 570172525 603820962 688767234 992221059 606133245 679988198 81022531 812719031 827194126 848497375 211089842 426132163 417907314 579067658 551664299 708698538 880118005 903221830 210131364 573518670 468573691 810961575 121848172 600675569 797569936 845010092 455922127 918147189 252998078 363682779 505218900 641486360 315321045 970957837 245114146 488065445 861560912 878460958 981347548 995662822 582339322 676762062 817669760 838987683 315172791 998064878 928090137 968965173 227355659 380901647 400170610 451247075 636060175 757137769 508017851 877916579 440754722 550805463 547245991 617835455 641121284 718997534 311652986 841937289 789912537 991087254 19059357 805814753 787764946 888529850 106162878 218118802 346717322 929859037 191930897 460722460 595749823 792282170 252920757 543906253 773083 285640152 183422283 629585420 245010359 482526106 721015802 796794810 450472857 647857105 606198533 679880373 795579496 886224601 853156730 923101400 310273073 831286745 294683144 558636936 361413515 653072796 798438737 889335605 138838768 159374736 205012842 555808598 48905893 792745017 144687993 795521280 19065352 536369295 721411466 978739233 293539298 317912712 898332980 986681572 633800472 958606333 191950487 757047174 690510500 732134104 930095915 933205019 716787336 743844977 515896881 738392427 516754033 636556933 190511495 818478208 612080764 885528092 140969529 642964196 482378475 576240379 969261665 970470756 559034842 742199258 107136316 396219917 410223884 964794656 365124850 867422856 555350173 946140082 103488843 156705252 754299177 942175017 498117255 656627638 558463338 700179154 12995908 901634602 775623581 867023725 288578704 340316345 200659553 206842906 492395055 532717490 801909793 998095483 692842680 726319998 35649257 632700672 935542349 961936866 990181415 999998716 640982410 780451306 184033545 827482240 95575613 870932481 335773750 984243050 612620325 751562184 407675758 994867105 172893039 537749038 86298334 145356001 594073668 878219824 194419172 656369844 968853556 994908690 338414839 511074801 975928422 977427431 71328734 462245931 879119233 934790761 996125919 997123854 15047765 370024682 41421896 449171403 918068328 937201686 758756089 968257052 788810882 838618198 717464273 770587201 1000625 260020086 145586585 634553438 579025014 815712223 201316925 291938910 491956418 496069474 15901183 507881752 98622871 793823267 224525635 827696849 884231902 949795695 245040207 556472674 994026692 995045533 706340117 866533103 712499662 742816680 145226309 709227024 532957144 784721811 400959943 787402946 415792064 732454014 614705778 862548292 866073569 905421613 554684935 976039509 292841580 402996413 311018912 909509851 575669673 855715067 660362753 752981377 221518541 639142436 821616801 994823566 314930325 741716412 355601755 503635030 583472422 832080943 73089159 938284140 340851169 900022710 843305983 933290848 269844925 611000387 315605377 893409226 772142062 978648381 22193090 171901692 365359360 702328594 813212581 940907895 842622945 885720383 685290057 955227677 81095221 982153282 359938165 445283390 111662378 432024694 465483484 675970158 688324159 694533558 13129244 29005969 882083674 945003879 250829618 452751823 692156638 863252165 659148420 835007331 972681846 980130817 882430027 961830069 889818308 988939590 648366668 668195214 567645289 979105390 486689471 796224544 32986751 187087345 857238680 918299728 431540548 622385839 944762460 980725277 205826856 401891411 538282538 560276655 374024138 504358837 507153292 703977785 624391518 753970281 109406803 446899125 274210568 425326937 493314000 568938431 587402561 618571854 489741300 721481707 639399760 760141549 911158889 979746147 264891068 323153161 344068813 447514487 280284095 849273429 896281333 961520055 538176986 794475534 220265640 959935822 676748636 898847041 838902423 926725977 318566585 460460335 3745781 994759239 76588572 186585029 532216286 580579518 382142298 714735391 307167023 458077773 927244960 954193438 106336061 535789337 849826749 871789779 22666767 655479122 20368411 869068426 623836100 698884989 855544890 888909002 848534409 858190684 348799319 693290135 230810033 856856046 244855488 681318880 375375074 796983144 11804977 594921696 328781441 468212420 897451641 946537366 387350885 638555662 47705346 300444316 20003488 903072713 209433150 433635045 228499973 301585189 629465434 780626155 96699594 929556273 91744390 664012738 135467306 258737541 367108705 652418943 798099973 987171240 622077057 669609622 575524786 965005427 651159684 933513927 19007392 528198201 123034854 373468881 818524302 978952815 363077645 464756128 739251018 810156180 173644040 841463913 858095888 952414368 801455456 858729947 755171687 823059864 437313230 677452781 990750208 991942779 224250754 532087928 722064694 832422147 470836629 951392444 477423379 964400036 341280270 628415635 923471383 994244193 188611450 923892663 734432069 974188804 990732743 997857271 453600276 985703544 190495138 394122951 87690540 673655914 74189654 408193873 325876657 998966748 243237915 442742028 263946440 670914439 750215 710592718 874321238 897764050 224196061 756976494 358515583 480684755 696959678 709418097 461779341 958881178 908388972 973966655 487755243 794563293 517290165 614137619 44159213 862411826 104254225 783968515 765101585 822291650 806224345 875146980 635331407 920279249 589607156 740461150 141492524 913778745 414845359 929961904 574520014 749387958 791593975 798545619 378476140 559947537 11549588 633659837 147196641 207416807 698913275 854380014 917264386 985336944 975410878 986599341 811257075 958672359 9042390 372941564 5172576 488383004 289586540 955500085 149993234 526110072 959815001 999163094 110362786 238717593 337503735 537817396 888349079 970804708 978729210 982521662 420165152 551317680 914194344 957809760 302079697 763870828 954805191 971131898 488013757 921708310 104425521 598928123 962699111 963636207 128898703 938962967 388664199 410437488 105232331 569943622 958568762 987095114 775540695 910885171 855366898 931916109 272767375 514458495 348099806 964326948 733959788 879716393 570477184 926731601 585457891 621209832 300039553 388310897 745254580 829283432 434611765 701284130 535668778 886405880 161605109 981704425 780563054 859500800 946028127 997796707 543321794 843451064 489392149 565741585 100971341 384300883 715454268 911283618 502036687 974352752 717251315 914122612 549064919 681164358 675603357 871884883 804575822 886403495 590879279 707910050 578234992 809878035 728642730 899000479 213815315 804667766 644557311 801904480 967076926 989767522 630264721 756859299 10883434 981926097 191209594 885959598 148028999 874491097 399249497 609142466 133594248 615083621 185849071 398235336 689254940 817308385 758819768 941575985 687264341 832724473 383815085 746459528 972197123 983358609 834194717 893622168 891810242 909689032 364634474 975974125 541874989 675883511 149599433 688339837 385572664 598552216 82720314 420681822 990099708 995291111 668324925 988856793 299097557 611929787 408787680 792447908 270941909 436297607 748705337 818735012 236709143 996152977 434469648 914025198 982279988 993666569 932080671 980300732 777980984 830613015 277020699 618817318 244568431 791681265 999385230 999530173 546364440 631167491 943809676 956280536 278589934 874945389 492228779 544384930 353955774 766089032 970505486 982958273 339704010 457652604 798571692 806957269 42774357 205670486 966963933 987414982 858253686 922053463 604208046 896271806 164885296 570969118 319284332 430487609 508826149 610503164 638826972 852002546 679999375 923715500 817883866 975244107 472796910 793040105 876375721 951849976 67442793 769491837 637339621 712938300 504913584 872117524 308862288 343572930 811930487 908164843 34144110 891184033 15995557 557453313 793701726 817685926 585631271 737846953 788417211 917986987 453970743 905808106 516143634 710286038 537799390 713139739 836004902 961836106 31148876 815924491 178991621 953777778 474039301 511670992 493594136 741808710 495514885 630846825 794870945 946285752 860806690 891277829 727775516 897425688 457619677 971166680 92233805 804523775 694319234 765639209 765777513 858212355 1377537 985220635 936338248 967300806 805294209 970926624 329686396 749996852 511706501 887653254 62515308 351195966 295444763 526504521 272038149 820244735 20314750 861629994 510707585 610575539 422846240 551919863 918022300 962975246 80221975 865993229 660440356 918323749 619978191 643692494 572939771 853362063 748151856 763523683 663814585 906950348 596172952 786977235 925911123 926495237 214815797 473078241 149883107 167919245 302705706 855968773 941096900 979367672 688147173 869086454 774755466 811192333 600892936 769651102 58670750 843215751 823503886 844771778 308440676 969119881 727034222 849081019 380501075 572894857 312307669 864942715 89937319 623669788 240790700 920052496 183500103 280190627 515945077 682389395 803259016 852682316 797375414 833256823 695549305 707901536 18507583 825224795 567964522 613835192 280400157 722316471 155185372 440193029 511514019 994695488 80938875 637244251 350103205 352764876 977738268 997225979 293378281 296511965 346371712 787402808 883853267 988887004 117412708 914518026 782432261 828841432 636791702 768425964 64542163 124328743 808446207 819565593 870447720 968604525 463905416 480553007 705892584 775145736 653249107 797833429 420226107 694245818 796077970 915081764 683539544 817571116 873859678 927763473 829433714 875966345 114239752 274855434 533829742 564295180 948006927 993721750 691001 985098095 506792331 716379207 326602330 421248068 522859155 945755055 662177511 718386308 687321326 829136688 771908056 932798052 622964906 719377307 55327398 376000248 515520067 625733262 918788096 946458220 543689777 563792828 576406791 576979612 178252820 605275965 672438892 678781447 333218701 475053050 69355573 472879980 188832081 606324384 243076631 486420986 604521215 869863737 246241559 677163680 59988349 521134087 170253152 470066725 527227033 740407266 359951345 655904864 293789633 655056124 739100449 785198629 746283871 870798400 251923956 629885670 195687436 881757823 314805960 542414209 144902000 405508374 873234455 957661230 246730897 654316169 336670847 844800100 698170003 790196408 156534012 973340900 880096685 961546526 130842745 507672043 989214896 997075682 793136891 867261648 169896651 170175243 104229929 254765470 414524944 702644637 233960197 582524327 89919578 296810162 39788673 563054640 154758560 197237053 516922881 867789350 395155997 459261986 711582947 919015018 602794698 644222620 276447004 861851189 26994021 160140268 871204357 900386247 409913233 876439490 487779612 791187837 199572559 807256794 183647705 776937975 10579936 651432554 797392169 919812246 609210485 933817832 878754599 934467372 254149304 678057675 741820312 887274722 742486734 783538666 6592627 976182986 406299631 583010729 766260510 803723498 168630978 963264502 41870297 42328716 982118692 998843037 305528284 658185995 826436069 984767797 790189340 948816430 607877621 946144339 641423007 895368144 34842130 741506050 324030931 748078545 651898914 689793307 332644547 981360958 413442687 739786428 446135178 535075808 264656210 591890120 162234787 650468966 799715226 960997274 288636849 494501147 31625101 190238370 343944845 392579545 665565611 872750612 505563647 674435111 210312805 344714482 652187745 923920147 867230486 937307653 17428173 581512555 669764645 868415393 212523626 447764633 923743562 953906567 362959204 551353068 401436202 742100521 654472964 936800105 862016592 899980523 247764542 939843880 826244562 966024382 366313292 917905999 722147303 819397211 14506272 935426996 260491161 303467246 835386533 996104121 443265033 747338602 761721842 845982824 516826329 615838717 965307309 997742362 598818941 659851198 928243954 990676648 295111297 341870862 517167889 963230516 157662604 424041342 542846854 696612639 739864477 853228717 726905998 856358658 160075396 990990120 269841481 352344020 335248168 440464638 539394966 822569392 583510776 692008423 508525719 510785843 850173566 894914915 42123206 310568695 951327295 962207429 477926136 832243497 542475570 765961248 66283359 729587500 121268714 172885061 681399681 939943324 268938763 652918636 80175443 181708528 246509855 412351539 890123296 893962764 849614302 986275125 837509319 857052761 677819085 831779175 232625289 967222967 764683615 968719976 190502594 727700691 446146446 599818512 246847554 905711735 81226834 354074097 374947602 721270373 890212353 899413180 112646621 133057225 320658089 770770717 132143211 651471971 197362056 293528700 749771847 797303185 679881595 978900330 814190235 892314823 57244563 846330018 298162066 914592519 135433523 627717409 475545038 540502097 550454826 773733011 563641291 844849176 308913078 749902654 917296773 991211782 550286391 623882071 857275965 944688691 498605970 692766176 467221021 496627056 687973262 706129119 403356058 491096092 582499980 833349403 445780213 763775790 259957994 706540781 224194342 538120278 436169427 578881285 946352303 981166070 116548745 627422615 727129214 928229105 568668894 873582398 572142448 884475365 769707518 843643486 946990648 968377175 46547783 167172240 217214413 731246758 170724029 301132510 739300208 911535197 179610290 356433140 219339843 593422264 481569964 568745226 102661683 323113533 687567050 861515775 486116863 595995043 64802231 459943567 454148659 675149699 54348826 849797649 314925434 706485669 237391806 521630823 769800652 910668838 372822368 756076885 620082499 990031429 253803759 967606622 465231331 893761965 81783002 294962466 744365927 993126271 87479133 393243853 520128322 701354852 568811151 827820833 622027037 699659860 435092587 682248289 538893406 952397210 642823500 810146855 645177081 648005758 188920132 636891369 962543644 985243909 111410171 827471213 424377626 603611465 852326001 928897056 59757970 363598114 44852705 837913524 804966483 993607009 459029999 952191188 972499968 977100448 728245048 982394747 205286531 580593894 762763416 818945732 803841837 897077272 10282830 444351191 949659652 982929226 485056304 930679375 507512400 685936931 376994908 529983898 139664811 818392802 760921686 972189366 843428354 974129520 817476940 842489712 776002583 923013471 11223958 687614453 375493639 518520799 504056725 583749914 946246946 999375524 411731269 837818019 850813399 917625724 747624102 787300050 352106357 842219527 325417972 427400821 980337822 989320758 229885285 246022380 912998100 994091883 922035177 979987388 709876784 891090458 471636132 472236348 940703314 990740223 202251530 791450177 533215542 912189057 470157098 742129315 640988071 907422854 406388160 953154554 678688954 682014358 771769841 952043104 692966280 749954109 793088086 974701257 699716786 818751228 222723950 738736509 796814845 912501491 637951907 835226519 68628934 613915886 876492561 967300956 791622364 872761650 364107100 440962848 679329134 696345073 984251816 990277557 976203059 978693334 2741134 741641844 262333968 914970697 668859113 734655699 365213387 714777706 192004072 647039696 198274038 676003215 953783444 980108470 973943368 980854091 667020581 836472691 12180094 749853902 705868329 889493439 889493453 921359132 153664714 417428542 767064762 995884800 97851443 933087707 973565696 978907617 790527841 955488736 734698974 818330087 200564118 741845200 936446310 960892240 504652256 529436742 825168286 906908566 573832790 928575132 184086194 932947736 421212291 522155179 630385355 802945552 212020212 472939463 734408623 783778586 266106287 845025084 862397519 958795378 951771248 992115706 329871413 561978160 838922267 953583710 86962797 402933128 118823774 516912290 769851504 810575315 824813057 870615902 628671462 791439396 690647165 826027988 563463222 607205130 106129276 790866014 982007164 983596057 94789645 961666926 235518981 863198091 625433457 834658987 373506557 646446352 713539273 979399112 274857378 515579092 224848808 271978533 617661578 735132371 690171798 771736256 470497928 813510084 798898649 930365167 288646578 732156320 181955750 365664486 665443298 723515620 1047540 586713814 266591569 320346823 540217345 879188089 774602648 823554108 645907830 871539180 732553151 850515313 527267782 990243457 724431971 865647836 696195650 819332840 334625683 425262266 2265348 540348597 624045384 683842539 112393414 809132103 696232768 702897080 213717505 396500702 186434272 793379706 951166446 994393691 330440993 577885915 260481990 303498837 441985764 583722499 926862417 974459279 95359404 238451920 863202117 920832220 318449016 411876402 379565752 882321861 418270601 652438880 512230567 596630989 347877135 493828503 455153851 649293495 347462585 608531385 461042698 671855172 651054588 965775347 578742531 755138426 570132182 734568260 2307078 778713835 94774565 352432418 516167828 689856398 152124607 253941447 174118119 536303511 993139609 998949564 777656396 786307309 515371050 673102212 16270658 982490693 971721257 979898574 964710504 990567055 253942597 713818254 28428304 597902866 696366539 704703163 339906185 679920259 946940885 962812121 624786080 740881727 213951099 944177721 347949296 495238987 932156227 947106239 526140405 831180465 254943619 528164297 396384910 433150016 575995151 760744675 354533550 698707537 50107968 395463581 964851157 981545004 741339422 885927073 726109208 748266036 390480558 601181392 627797087 894153021 825284099 972503469 205261370 819832781 399388237 522300605 666781955 797436992 166548997 963326288 987304271 999363633 838898346 986984339 411362025 652695003 410380058 809461836 923393974 927182666 985750197 987318289 752113394 964201667 191526410 363444393 733797476 792260947 837839239 859339569 600554390 954710311 477628369 960106900 564212302 843060167 868424740 966958892 479987989 976071018 204013452 227114895 510691351 665460252 376495673 998022190 33105184 853099690 510803817 542140198 366950994 596703862 808996635 814995032 434336659 513000490 83213494 751274204 368104298 417130604 746942450 942141927 289988590 815099473 418746845 924569016 575878949 817551511 182753384 482854244 902829090 957593846 783758554 834498404 806474379 874421890 543309410 784136288 289942706 400696714 749885144 816326788 159783144 732439279 927213927 945281508 326419625 385895254 581880176 845380410 71208150 982242892 150597376 521883918 903383579 978755435 394668014 535362646 197851660 447501703 595839985 952001691 38253329 492829496 450528365 938508857 57088490 829035033 485244562 711596097 220183947 455462252 993863292 995152153 426495558 518093110 585567462 664622481 448586873 573562837 619599221 831401859 729822345 748065957 786394004 880199289 106881958 233970807 833800496 945503015 128969292 671514041 3281541 355990872 688131208 706548193 852734880 884097151 646232656 969468393 208600503 661476132 702868764 914761087 134182825 480589484 842127866 941100093 663410780 793382152 343608715 976580705 238992483 511327403 553920732 750009248 304818471 467727006 752743031 848959546 436079937 450478678 393484927 546191993 675217466 833342860 985549632 992539109 753681064 861856949 118920059 152588385 274198161 880617796 289408977 373313811 521796039 685992447 1205131 806994056 388645944 856097100 115391338 625032390 77830478 178645913 830886953 987575941 189893268 607962931 830342174 887190126 827136126 899053705 306460240 407130388 660519724 860249309 967993353 997810645 222140495 330477873 615567893 651981835 510240277 821322021 489755505 869011440 153778157 565307320 158902477 278426229 632893380 634505280 685563351 853176247 593765177 918108257 478700327 759819595 940309706 956012179 703712582 907119911 502610883 892114176 654744871 898161073 232391480 985468143 344963935 482825004 850852193 985054000 236866113 344621130 440577697 977199919 268410870 469747789 666952285 681710762 713918796 934829020 822106810 853769298 875524418 962583989 518184473 784623976 632324472 708697065 433335473 955438217 953290410 976092536 207702528 219839475 331424861 595716494 552786175 873752081 746149756 789614395 931598028 959680134 19189685 996565028 801595700 836661131 447087936 563925004 686544435 816704306 524270658 525292786 273933514 858225452 298801893 640382155 70295050 789207393 129654064 834838175 686514128 950770105 793628295 839908959 743552455 977449465 946786909 998966342 309298637 331840912 756738464 825377416 693828893 825672890 101130150 306242115 988708243 991755454 904207036 952596686 540527455 634065882 853472524 949194304 681715150 988155862 174615338 889061248 913672639 927773904 899232520 925924954 993221359 994521697 490982789 727570297 552513939 755213221 55159907 228531300 214779551 567907946 242418257 375181326 87200390 558246920 149050633 303249054 954352081 974992699 213712960 596422912 188818635 532089314 124828736 315389483 338732659 771029384 906281485 950235370 759512348 828452418 901163790 921924775 61464379 515056022 920065530 922046794 223231797 732765642 640501730 771025668 226859456 886997827 471822706 847031284 67669445 223436338 485988158 622322849 101902907 281963600 689342608 825184840 664789200 909824876 718849510 796649829 289446116 464755188 230432397 601707179 485731491 784198249 279714640 356407657 132005100 638265994 991745923 998356766 88262061 632554360 284132796 393577595 299711070 701895750 963442975 975454613 371578390 661203688 875448216 998698514 902486140 921805171 902284596 918517456 997727185 998117303 456694253 528520747 821740885 923056656 594098451 666310039 841753817 852836170 184238324 946524061 353735730 409110768 988075554 997105910 247265011 617151508 223580445 822002127 746532715 855402001 384167082 928683546 654351407 775608948 197780977 949171099 34820722 757677092 295453109 696532208 545641292 743881919 802072468 849544425 30926486 630743160 552217517 804115339 317888787 413257372 373616674 974892457 433896437 910224361 497041580 587921118 737312646 992912081 984025669 990477959 933703868 999239858 532585735 833827246 54755988 624203688 177429557 682084561 651110360 827375814 682228510 968827054 737734871 865166954 181368336 852487969 585550395 648211116 855533365 889504364 25808077 930209250 790344988 986325598 417353644 705142570 906466637 943285889 514655181 812919978 287679458 802213838 708923704 826536820 998517711 999040901 972855465 989868646 248461262 729898171 33150537 522651474 867500410 993097298 806209403 964802013 570266678 969293119 477422562 933423581 79083243 682207771 13886180 920328965 80294219 825292182 837126707 966475648 818141192 954257899 625408002 873719832 989691546 993807916 70741097 784496272 105453096 843015974 522752175 562342658 207957034 753325324 576857663 898234261 290077756 801556280 499555891 762209421 564910330 930371108 278774080 556474052 806759264 876612530 862780421 922571509 423305861 971540434 710643955 973907732 894481370 971350715 348998714 639175273 316728845 769777638 739735401 873064443 191990137 491964749 420585130 852697659 167495769 980046557 603315828 979206053 981825417 990644371 171156892 741621949 287977233 591234781 542865925 970611828 354659322 622206012 592967470 753538942 525365479 851512263 10952415 21553516 747176298 756520494 277039986 936589746 988694357 994986416 667392056 690651350 24929654 349209097 836123257 903795216 394091944 803521283 622711740 884981013 564289956 763825867 371283193 733127456 579830937 591538182 15966090 181905750 542051464 732784656 990484060 998951465 705120947 774302106 251895431 967140166 145976371 905935652 31960172 806509466 615671219 985115337 749150664 942370180 278080327 692600767 172837842 437703479 630109495 859820462 692568716 794554150 122898597 989888307 231818893 233117483 191517398 280260210 252001146 513014691 961420983 973966817 5016598 784540815 892537485 954117159 792797695 919681798 921713443 991098052 961132413 988091839 250567534 275494631 114488007 484503230 216282888 924530507 357049307 525721019 973848472 987910931 641069611 900133189 908667225 920638130 772769192 870176918 522471860 839661189 176956240 620276722 574882476 736114888 885525933 911501836 851992369 982643859 210479948 854296350 766390208 970327130 126895470 895401116 987409275 987430037 22443147 940879192 209544286 685782198 487809752 855494200 711755754 734717342 774397468 922423430 681749574 977384935 222298150 564541962 154539261 453005667 790889869 996064225 433423705 522722419 769496782 959794467 504591490 838744333 480165611 536817193 629511924 892060776 185883393 638695375 457969456 645767388 790487914 955380740 682054937 821952188 940411123 972282614 169097052 820841299 540338578 871459379 429760853 462169675 470026021 511135823 351458381 749281378 829985658 913666257 179486339 419959287 915250455 961872948 946920952 996120235 346364674 941616215 493002 292033366 744853733 972490273 430915961 688286746 587937130 934823464 664652768 688869723 12447535 29710684 339439604 739790485 412491560 739183188 116126381 875494642 311231751 417047048 722946760 940772727 382346794 879123367 676305383 711468249 620496221 900826984 478920788 728527797 334420903 506422070 180122485 938799442 83568797 318729890 993803026 999167053 579105587 777291185 338606271 770516859 61124662 846070875 241971316 301210377 735975896 927038520 297025930 356562938 412385344 805644043 431639428 565415435 300862899 452050480 554788083 567709844 529560071 556380111 297847737 784582486 565567591 673679317 852237295 947144885 142484780 296565854 16068771 855835980 536210633 748581869 50126192 59304190 356806344 911401385 542215213 552474921 715756180 967233345 981779421 986223497 749695731 999556506 938009041 997277884 256711048 836477447 616150728 994905112 3223950 944603799 570150130 771060551 175337762 542336760 729089793 997746602 261297037 912135715 534890694 998788764 325343303 427277338 446583610 501456106 488520680 856571394 939334596 970463357 125709225 959872512 987485817 997741962 232969705 428873547 367988615 863403447 975415196 994657945 373562366 740428487 889301819 999632591 441693986 714662950 773980527 919223509 708720408 862355555 901671903 992900748 877093698 993576528 896565528 905788055 856105187 985252860 9470532 902367344 348536553 593726416 963565429 994321353 876191894 895828331 781397933 914499698 538997377 600324839 478326011 627458150 507818253 829159041 734861811 758801738 417484456 954433452 389705798 931862955 442062236 565465464 739954335 740453716 118099978 924320341 524391110 587363324 459138712 570320892 256872763 290356602 984809807 989956677 2559448 223015006 669112092 771446143 418174362 514763805 548943091 991743175 584227106 767753762 421284238 863773050 800685086 816469209 843958898 890547659 816162852 966584268 318808333 514439416 199374476 574458018 936977366 970391869 760213198 946087858 569620654 920293391 789566591 976212368 197917203 653019112 284759027 650967878 617336042 715485169 151788828 995697505 141143725 491777089 587549846 706441285 450860965 622660862 869921448 944759815 40670245 898902631 489184580 536476501 983927428 987404994 590721946 965382236 253871627 921493314 151575921 929312133 866299572 977246450 474708487 836327339 646611705 962853046 11542244 847308136 755537137 796863299 798900204 874516128 668584785 915713197 915566652 924687119 789488794 891020457 536383883 844536061 17916694 21548073 381923960 395184810 216032129 816883516 201597517 835436980 66131991 711013125 799436543 952436661 664591777 915859365 612299285 840711140 694329275 720496610 269064360 363338817 620304812 650058299 942077204 987098960 821430862 943163369 266872593 850292779 471774325 612269237 301325176 805680255 104133171 434417617 405838485 696344166 364084034 670515537 612630806 791732487 646813051 978191154 529454254 694825042 965075875 993575108 873393194 880331884 23196917 527657599 626127848 842499221 694586065 698502860 170142493 494123522 27866634 722809742 745157743 905675987 490888541 851210303 361289972 601547230 873472414 909234759 154013976 599680368 188815967 972966368 872201805 920872208 966507414 975966258 459744372 789408256 751296620 894341908 395339903 497874609 645858905 958361997 571198812 980958119 999285939 999442063 520062609 575468622 732868244 976324722 909531038 956433523 218713635 615773007 168637792 494055778 259332985 673032521 8267516 82529267 45450555 126725757 240343542 642819320 830450621 855581144 926421731 961622617 717484553 790894323 995244833 995342698 913721054 980336518 244441126 931030824 402821436 518716526 144260632 639730322 206674799 821088079 184419629 631711535 679733359 688383914 199209817 758820833 234709451 874945270 616046695 654497275 920029630 943757017 111610035 356332120 274423005 935572745 958659259 999295109 301690620 360808360 780135994 904429982 607409592 908836196 857108558 982963695 126884917 215137712 751746658 981209651 803285587 967371284 648353917 867495901 516157759 706429165 866703881 873634092 649845702 753585517 964730239 993302837 800975219 902290063 768636052 783649418 86549738 825793737 382682007 747255615 763854687 944922191 517419866 900897975 167906360 820537572 696597819 812158365 928519791 988964928 522405901 593362082 784460850 876921334 636960492 732811666 55022797 774834658 757296711 952068449 769673963 895047532 191068166 347927975 604054065 751607767 756468500 784551528 685599328 898263175 314989782 929418538 24474482 706651734 641020012 860842921 670121352 736035259 79908870 657565103 651881006 869136886 634288124 838684543 704838868 761369716 511700969 843182820 788574679 940488978 686376145 724849984 753722984 907083712 324637785 773887977 864324792 908449447 477525721 894404918 874966156 884977930 488598278 782534587 578044950 822430083 121712651 704278896 325368395 488757406 649735072 955298657 720454618 752569737 500058859 791398981 853539949 894946841 739184648 862520160 149285091 366297995 757692017 781980303 532649895 877541385 283118559 846724566 62810140 533461398 914568052 971975724 157470190 270883491 374887119 527566053 410575813 773057046 606332048 656419924 847774451 929672005 578990789 774540314 429814957 830147129 105771646 831170538 181494646 258037101 842816141 871560198 807997953 905139254 460715989 916604605 654267048 883200917 341378825 500721384 811394061 874376524 861333427 985140560 516869070 534864693 618015199 765143192 433827190 789122899 787776687 807195585 795922365 959550534 970269695 985578005 82319431 756638434 506730800 754793647 802555771 939585992 308439779 887389934 326987767 464283633 730424907 940569835 602698920 908968215 410223017 969927725 507094782 663419415 475783956 541114131 368721443 793405954 489000772 846336735 28089269 304653170 392674390 789613330 635456787 802234813 393542202 875971405 161249337 994498493 837378055 893356866 370731014 453255940 551161066 615026407 748758592 990291538 766708968 796745388 516895452 800524111 13493039 363654598 626950562 717101338 576307210 893400800 377627645 788286646 217411505 992753464 971977257 982571100 322842749 991129768 843310398 970571340 35250053 696284546 555671261 848702523 999140619 999399674 220696481 690820724 884434766 887387996 887680690 949086668 114701696 623668795 737699697 852241134 733245712 828050936 213622622 233095012 833643133 881357551 880334130 942018707 415880527 443043295 774139057 911892867 853606818 854928864 331769784 909448115 194900779 698887483 115677452 937831696 526892995 706548436 957607827 994193937 188448207 769237416 775396665 955425896 734720920 997380269 376539797 422311350 459973997 896555279 449061308 571383401 267677801 894016209 632732735 916665080 503659708 950060307 438742426 701252941 489300633 891280211 193985028 757084202 168191068 588972248 672869731 755374630 915304025 950010241 262804241 281897317 129075573 557009290 389143679 999943981 593054411 906056116 169297988 968679239 49602580 80516836 414372204 743832122 158377535 596867289 689938767 749823467 624023724 820298655 998406755 998588880 861668419 945597640 775290710 913448248 125063571 892058459 245248235 555416050 596635725 700776965 305242994 944896780 827733727 979514493 623790033 993286798 361010240 577123761 277866318 350477421 472046037 873976652 837289218 947893628 419921124 978254087 985551837 998975129 934998227 940768024 685339979 819394110 846935875 857486401 252408917 967460048 84985759 979892433 625369297 742776582 977529055 985573770 954198526 965713633 454681480 864982783 926329819 926671629 106674654 272156840 590887853 858204512 712518923 719937414 975742840 983955200 515162475 810632257 703263735 936960453 16351503 574586972 266820066 607061663 464405732 941278034 870607363 888526453 449218848 977269279 239212594 391564019 441681763 901380924 986399489 988153320 889217030 969478159 781995954 953482488 134245478 280228253 746732117 875940571 534841914 881637437 615576881 799901915 805846698 913928129 384629123 469433560 873102895 971944537 814035665 845090816 448241602 537333752 928563371 953981790 904744005 936939130 729208614 930465393 149366269 165076394 102598047 983293865 489210127 790015388 66197848 505619428 690856898 826319130 608450112 980737287 91872610 260120020 238492395 679390225 554111232 838576257 873571004 918683650 29890832 345310273 267632598 463060766 985042260 990297177 620177732 867409547 564809263 782215256 112562870 366870852 242972671 773335778 520925822 728874847 634874427 908301326 156884536 999869112 627617731 766910514 12594608 356733671 371109645 380759526 315632333 456044603 49580479 209137997 994046380 995217552 496518255 814729235 954123030 984514628 132777801 434754836 640420423 966772463 738914525 760047226 749413087 956699462 667059622 965966793 731104418 998564484 665040779 823277456 665944671 794971556 201798582 218955157 379191851 867297752 797582074 932587987 914091428 970264222 414516718 550425003 866646594 936322990 844231773 955112285 475547181 955415311 750673441 829954553 308267778 526855684 537678635 901352493 832702366 920616263 76278964 993745663 560087532 996018728 199836161 822288311 47834303 528296015 453790999 953075574 200960737 254004385 393078501 463325830 185654001 490621411 898986345 957034901 830252937 870998458 44801958 854022860 855495112 951349263 591258076 648556876 930552159 945569589 208863825 529660867 225267285 949635195 40934264 945822359 321061576 541264592 531931647 542130005 639729625 682342187 570110357 945342190 807225344 963690419 17739046 683465801 656602861 720108820 195663303 382920210 643520381 918954230 676301158 814132563 890932095 987996147 827667324 927272066 509215477 682091421 346693541 888810298 993351720 999292853 111113433 491256919 958397054 981894255 354988434 446681779 699846586 751118751 152551707 235965502 212777983 871548599 192711344 959286090 808800195 958743120 97345865 142101305 407791327 830918388 877803106 926110799 764355640 849835062 584527721 948060724 3098594 545519888 237367700 483428262 247152523 258264450 372709995 769156952 263819925 947648765 984030133 992670503 227565568 554472137 568027919 891912212 342454630 809773628 306256277 673196463 846397670 916455098 802492791 942831883 194179427 527924843 366754966 483776999 89830946 911486490 990608522 997978688 70725007 256808464 231460420 838756168 879352509 901938192 427624218 849485349 574672560 963206409 6160810 457481662 598223406 936213508 824797881 891300079 749679843 952231471 935497366 984793947 179059389 182033935 400248057 620302914 543235629 810018889 857697592 857990066 921186 332061184 554917176 555887624 98570106 146405182 526839749 592165483 827134407 937640472 38378872 325060769 672501780 753552376 218733015 629485254 841695520 926437393 419807466 547535193 54623655 843206867 648959766 967394710 257003776 354175639 264130049 667288638 407919159 493848995 802134808 833159924 129063055 990987156 773003347 831880505 18103931 525106065 4620199 727194440 716112763 900524117 288058854 706226140 569517813 662203732 534611201 874246029 788805286 868745233 973761518 993173434 870628881 943389698 985009152 994801644 154478611 580738574 479779733 846316449 583388602 708021176 956853574 963452457 488965615 567372703 965830925 999760250 472761255 941441562 93065807 638948502 276032238 802805718 122677703 830912069 349778503 915731390 205188314 523352711 628117784 660756082 845821337 924423203 853874855 980400846 522557014 937620342 378492274 444468088 952714829 974415722 466443606 970286883 198982385 332527379 598242904 709755471 129100430 503354809 472139513 668147431 192248495 340894675 686394797 706840576 204352953 421591701 440355848 738137036 730179080 813509615 999050020 999960569 888950605 897342643 826001907 876112199 826892062 924653904 438644253 588313004 37268708 747480708 464109878 901585189 151413498 990639033 38222681 162159194 70357815 479831326 886828458 909287234 625452982 851712362 711905694 891724444 621361048 771285698 877153393 973370140 602520311 863213695 347619326 859978460 265838574 559148121 868793278 997205768 157983899 975740696 212430602 948210268 740907960 749954458 642278559 851276775 2104990 220461604 738850976 905601026 829981195 831928946 379434909 846895734 550863068 640385619 563805919 616564390 504317425 995277294 566925412 674649008 330837077 760278205 858823236 869852860 555640351 986204672 371418669 641590511 866522795 934889947 863547328 984748848 228380073 798759462 946112633 989120485 947586992 990692228 110529538 241637058 289117868 878969634 565478598 720119610 966506710 969116181 505324666 841076889 215228777 548865962 139215481 326251141 993044574 998520301 312181578 820210789 876042257 998070266 60402172 579115659 861299156 949578669 383064676 889277802 773472171 823905792 553163281 971179600 657913983 819195311 293920456 709652844 803117645 881004162 558298677 902805436 489516000 950226351 912890908 928930903 766816838 953258230 274786199 676304740 55084459 414997062 781532743 983481898 97884564 620140533 889657986 978236720 993745597 997033807 316758711 554507503 101668428 826113577 925989827 978845622 638740161 810149253 749490212 861071980 245590407 592570381 291563670 720628324 803841545 903253284 79223008 924870310 401957529 860938128 212258525 835015343 896233932 992673971 722246158 781821911 5639764 544028679 860315599 967965035 830411775 941787031 819948822 923032217 530722881 786166437 215196106 326912319 255524340 969896108 639019481 684162650 618371476 716476425 251437434 356401167 87304696 390914545 624191791 777215736 834731043 952172912 623923756 838201487 890178871 919209548 823492497 909400303 430528552 896136243 925285044 945411236 300047521 782057809 14001124 462879355 867032626 986048075 336301092 765683337 281936476 923837565 29872078 88475341 808498418 907777133 915714340 973782599 546145227 883419128 404600281 845589174 744968539 853749159 580715724 914199189 239861401 495076112 235950514 366470964 829680633 902381841 923623416 986246574 730624187 949680543 855753421 872780013 781340444 793710513 399077862 958895261 755755743 875151318 160273128 637560864 692969171 944752956 587348510 750848918 412955773 413389724 706794942 890230097 265081498 384764201 251419417 893320299 303568238 789197971 341897007 399802263 911688942 986561444 823568527 945992266 174572624 243908232 788213179 952917317 442960964 765151483 873064374 993553032 413719171 452554473 139151217 351448430 327158993 332885215 658924609 777508102 768199028 784513522 274331612 669169604 401262401 705407312 331817582 983037610 938140068 965967606 965713435 987233922 899453675 965107833 399593572 703290391 547805013 875099069 498478086 840435918 658058688 807591247 602360992 896131976 827529499 984755866 993844678 993906302 455676179 702870185 526714614 597825276 211674969 491128577 627169102 695419182 547361524 927640729 267746932 375692428 401783227 569795981 272153290 676460704 66242891 364628979 180037121 749163252 899421789 929001212 950577530 968256901 916603455 985637011 126702952 603764628 380271320 830074305 687114246 779767246 337370861 899327917 243559832 939069468 93868961 443683637 388681250 728640294 87611628 410375026 735496505 767683679 717526290 826912206 800558101 850259310 24191025 816837275 843267057 867255820 228084940 891787883 370525646 399171849 146392606 245797221 559077309 711043610 858572816 956956858 341752941 741291061 743268582 848190760 570188335 873626546 760988915 844191547 177829659 525239302 191420127 433196506 181833271 936625215 571991782 588944847 479812964 922766467 315016228 842757619 311759100 953853069 728987879 907434128 175330028 589679500 150087588 153890759 679002692 921886272 368996196 456958247 489278473 961257204 683462669 988804365 520280465 894797445 847620818 960224829 397638390 967768129 190039148 318408012 412569813 876051038 62114202 988225790 512890789 831225935 664635616 914512461 282026196 491833188 159958889 452937131 48636016 548221181 743584826 819798026 671427922 887163840 744767459 848836158 511594976 706371822 704911525 962888209 440077816 800528150 639727322 761208482 251223580 797187971 367218932 919814367 533536300 788526845 473639493 787710874 739606136 848997837 724055632 982148861 700599629 719035360 787914516 947507543 778759928 873223370 76508860 963791314 910203230 969910257 652854537 732514433 116897009 206069076 304014944 934766316 260792612 445507665 272556775 668412147 110709170 807421416 470646707 843157887 699388253 716598527 927404087 969919195 400954415 513531171 732474399 886875012 506621448 670460765 746899414 754678266 405994782 564362417 869822979 889886563 918026869 936473353 707662348 753522542 273425003 740118942 443617667 673187731 862820231 958424494 160521442 954456448 376260333 951648833 716878167 853964647 241101117 999458655 743811763 778860853 746177185 905378998 495027672 698822817 236656643 538477293 637341070 771384038 500519877 613558251 56762871 814313299 192933891 578238390 647175785 785452073 53466346 844324180 169796221 971424772 693282556 924754203 340523416 748274514 235275994 265065103 56649482 576764429 677685923 978709801 774771695 862326536 689141353 942689210 298300912 798676181 14873923 222732554 584264356 878293817 420912873 947250762 822765926 827911181 826518710 881228734 562164492 624406399 559946734 581305370 341032882 392786063 661091881 782498921 103616638 759889940 162074996 550448965 645931580 789633646 685765198 883313282 775250322 785592833 451726978 925948809 4701334 594452164 89074714 631143098 574456227 805387169 998986086 999304508 806335449 829386984 640587529 820240969 563088188 705461323 112008166 565033380 690811594 721186200 724464657 827886446 898781576 983964037 599907983 616803118 693990156 984847820 708452600 723768787 998991396 999372221 330598 58072726 548590979 620831269 962016007 986745889 150707003 699799756 698542745 925480333 588433880 791962446 644004669 797987697 281826599 925780751 509082876 597191181 822648747 877558257 514523198 823492069 58682402 362787112 325602511 412258518 142409378 176503697 536351026 667807646 826974188 893937896 726458544 904647750 864020869 944091422 478056833 612323572 817205198 912888963 350308316 876593516 303529934 522361834 500047294 511685586 795039950 808900307 451960621 581230597 399520895 980175434 948411337 970227924 822660426 827316031 170206120 938933541 871613186 981740767 310950506 312552351 538032008 857189693 357234046 518824908 513909104 716741445 151283449 426444730 854442801 943239689 584648759 850804457 357031786 691269380 86929876 683281562 309709524 926427930 909275818 959885840 284654825 783865638 6253533 247365127 340240078 355340852 515577020 861169752 910615077 962729908 135158423 387874861 151400425 950309351 863350644 907994009 185899924 274130569 442142041 612259691 998176658 999860645 62126142 313770768 129035114 789214597 367798533 719354068 642034877 841821287 892310692 922175755 244681914 644363952 697837341 990166432 722812589 919793065 204287694 968450281 896140647 921397226 624579492 926324525 998290312 998933680 584670085 730150706 384348115 744694035 400225874 497642912 827658746 833832422 547835637 579865100 481131203 697254645 847431379 849625990 716112352 945364427 355644399 429748374 156943566 170642281 822770196 958732957 654401362 996971131 631241869 780840123 618306268 624960033 188022810 446457904 973778769 998234551 565435731 658584189 44628650 153142801 489877982 654811970 550040296 951909788 528353432 616860865 754775161 980877223 690072535 898920383 560827415 976021107 546936344 822291914 68059170 78151119 638410155 789304252 412875528 759598786 934299556 988650978 866635072 929967049 314840085 745554715 216971141 375498424 866013009 910814714 960256202 963139174 593597692 971943549 810398427 886623502 268699866 679774296 93063184 405907854 126065916 347613090 878244724 964926313 409752885 614400177 626084246 664284478 289251568 351120607 973004454 983453434 72867843 800280022 974916224 980921204 90477226 290598119 972071697 980204121 450407063 938100660 318694565 350625054 825578834 928189617 280538248 384288884 560518938 582268829 660061408 688505542 537537092 703567217 673339950 776214221 40090647 711051452 793390456 929454513 22328654 997282257 997961932 999224940 541208864 861066764 743556248 916959602 810086770 969245784 481244723 527433002 785765986 787101560 8553539 406005756 208384666 392582291 44267957 662835678 828017044 920279673 601191873 917809182 923252484 993041604 669295295 825647402 796404174 804567157 795664429 842341886 365103976 470268427 21187752 931615963 896520542 937729341 719688002 751887355 31034498 286903705 611435256 883162852 786512511 964592991 291011238 429413448 549551453 998600574 773908910 990154568 550650675 724328907 481639611 921339114 1569245 543007448 556781219 686251503 892235578 901366692 266599504 610374125 630553758 773779042 108087261 195958440 516023075 540815850 547278740 951292441 696574551 722262595 403210304 473879517 343962630 919359415 790292063 997140688 225633690 729428375 119609637 438933661 923991893 931449432 683587369 977919937 572031783 965213471 129246952 594892977 346953286 771922394 250550676 499350862 433635696 558114325 236228901 624546216 300552241 736294220 466388918 523763449 177878240 462003562 929179887 929837452 88740928 719288180 609582343 774238666 605128227 800686649 442084964 950135731 243293886 822399142 155920596 389488098 236290584 972360069 171415885 545363279 69630498 183143592 452638582 805824209 608735462 696235954 329586245 630214120 982889510 983857180 304835608 634059824 153172814 205815608 829648517 993120685 475482109 647363328 406039072 569166292 190562004 719927245 158771406 708806012 493787605 898385710 538022910 750050630 418002618 709634824 237859559 827417050 720148976 842319123 609771886 617601657 594043849 710223823 399202037 497919892 37580473 896169719 269201465 873080528 788273321 865535072 238966220 380398765 611517851 652028907 504228022 504413408 669157399 976991520 843701175 999442640 695378248 804667170 250739417 813477044 486349422 739369294 838730252 918135095 390518081 653547282 46480075 434641548 409553614 444122181 343494358 683647184 444104676 886449840 334781823 810149687 605055130 824809211 348659242 943689023 702064186 898480883 934972080 941698217 867825156 941594237 593623545 891880507 670235428 998182393 203084163 928810173 272588450 932233725 140006231 511752976 886332586 939775019 2255159 575666263 314671039 905513158 389823201 989791858 388160710 801591494 177419272 395093992 899542519 950055171 39882935 524060617 738980576 921039971 885551476 902314317 50866264 913555800 298152182 708558397 931426436 992207329 850493698 934439002 158265770 581841855 601270773 892592841 703486667 918276795 997918676 998998198 683355882 920303264 711621355 904631598 664142709 930340014 805051855 953457065 755257229 764416655 832173978 997237335 259736627 315378885 260077004 309838582 107989586 979599901 636083680 774318812 770815764 866488630 786761665 975945721 759411166 782118596 733845131 766557360 436685495 877620102 101476976 144076862 906123170 998435185 870155956 894493278 113214732 726468923 351952260 798105761 686521934 881586358 699634655 798554255 233082380 242009177 69779540 710183170 268362258 563786695 491729340 561371646 736089122 749959383 212046544 691882999 138008706 259065110 36490965 359747418 262814650 396599353 258545644 902884504 205919582 973788918 295079605 678153945 837712245 957875473 7959720 739043050 15062386 989064132 365161512 809692687 864901126 900404222 739884135 980957534 186933990 280172761 985943622 990873612 503238148 503518046 246671303 637432449 699576840 727875448 195194069 885652760 16193656 218602873 831377710 962105187 663313283 715812059 640982489 825553426 490955704 868931108 139765189 924798670 397917675 862791039 209616203 385999305 893522965 982989725 711960103 829597831 73213568 457456925 124038063 779850162 135869862 832569012 963910946 982709036 696382324 724218140 574339279 803569600 387445631 492666036 832822099 939093004 944644026 953118703 151097520 518320145 111497399 542236791 851787834 961261066 904155978 993248451 510985035 618439990 649239740 884866910 689824124 844303320 846576511 867079671 452500089 522794409 532413931 756071274 292938907 944068337 744152683 999034287 933400139 990338696 774218206 776107444 62813535 381282370 603851720 740718868 602808086 671536354 767812693 910609652 820926822 880499953 655020443 815274871 73742787 655395894 724434240 915958896 52170016 795444970 123702093 687330309 800036007 817870767 402068474 583830106 664393296 844818010 378324509 681003785 730078641 951940620 984766618 987831935 589808206 813350796 838764396 959684819 926947772 990100400 989124507 997354679 369722245 508673687 473539385 768303554 728176116 955073153 888362030 927794653 580434092 688961656 746387231 933721717 613878527 810582612 530028105 843502920 245058019 473869099 778633960 966868679 724812934 883172014 952522996 999527235 386316351 528364066 818836624 928262463 606679023 742405842 439221263 577087405 289151410 704327745 80476154 130628518 607817234 619779498 546510798 915242498 808310077 991726193 370688486 964836024 687801696 989557105 542310337 577204004 546920410 592100130 96990096 196455385 817548757 930971269 130229557 476815431 916966516 936813640 761307336 929424803 936250267 970479651 744787363 836663767 905020271 945430555 776137500 920503934 327489063 725993744 659062136 801750067 950226442 967720924 658041278 767462162 734493533 970978774 216404030 259020383 439195151 744008108 683235314 774367253 454768057 937861061 11184538 970454010 56247397 858946053 585411327 698133476 572428494 755505835 308619149 943982290 899502660 966993337 455470524 560442923 297118160 655734321 562499973 631983807 979681866 983190156 486810800 603606797 723679921 763785836 728608826 840716310 945497390 981337860 662423296 938316605 8337129 596144626 502070572 507120265 672831135 817148081 696151570 974438175 893427491 935041711 556479975 847973465 468425152 658987526 391745459 759365046 328301283 854377722 914410550 991242410 504966183 721080702 305648801 766900507 687308775 794486772 873690894 886709256 857233224 985844502 419941741 446929431 845932552 870130623 42281187 813074423 900921294 945765332 640983135 746227591 24409900 333747340 159342330 864438710 508315384 575251342 832058756 998179102 611543787 880231172 986814332 996330635 538458726 546278575 573392008 757865386 632691847 978723589 525343485 943154509 944874557 964103481 218227241 673538482 569315490 615692974 771148625 901026114 393892309 556566564 219591447 789027953 666502479 809066363 894330996 973380407 858824632 947755928 848081006 898114885 711389225 771169834 393658404 877796980 218952320 804367953 558478013 676931351 984037279 997856736 826121178 826224911 794541777 947016774 135874067 959483121 585761942 853293858 899190019 934192619 56310030 741516325 615893342 773477418 143657517 483236442 818590269 880995484 110764010 164678290 793212097 834376482 586035024 634177768 454195158 718481442 312961192 755713837 354877370 515378885 411109308 846304738 404915784 658562238 38606062 684034919 983194673 993194345 110038020 443858945 203565537 664289829 281279274 639917422 673784870 821844172 816572808 933515508 73911096 223478005 959661824 994218233 667168239 944612110 427422037 855522872 300114546 657348497 128536949 986163674 609942792 960306853 615591172 734481057 675764313 878513460 391320694 452572717 786105458 875574089 701706932 827917746 415667455 761393681 635637957 995673110 87444740 398703215 552104117 821208820 982824513 990569454 200277480 774071352 561969520 731547881 545742017 989413698 107747088 362179367 911444274 914254355 222576986 519065972 621296548 677870273 852025559 943817753 7279003 945132385 922969663 943065156 228377702 492971956 529150510 536056248 237417736 864901812 438128752 462457872 861934029 972583371 219702160 909329145 670752020 891338359 343196930 744674002 14262819 710156511 268102475 306742632 758771520 768052877 230474007 588852876 522520759 697543900 254495581 787303704 254855997 813314444 925864179 998645444 295780290 630166566 933080881 963726409 135731010 200842850 869283965 895080756 923557755 953102331 609293922 774488767 21665031 424769142 833489091 941394417 455839237 846127203 782804815 798379788 738852568 977672287 67869635 209197070 839152086 891739189 260571 942291618 123780455 451296886 463484491 995001812 816948767 921091055 987929109 998292435 205998382 414333979 671934465 793634392 537884498 895057674 304317398 449951507 672464076 700287784 967058768 989090995 188029128 342958303 97614717 421681757 152004804 249948102 598934071 840093709 986032331 990984953 158881972 876902349 392451274 806825018 150425670 223519366 502852874 667068428 502133189 632557652 563840541 683417704 377951125 737272337 395424539 701304774 665526895 952442331 88861892 519954476 638639343 682239107 879261794 976899931 647457719 930059343 794781349 844444499 61621257 581137879 974258916 996666290 677997868 757488568 84045899 498568112 845107293 859047722 711492120 808666780 877229427 953889375 8590940 629377874 617954142 985997618 245246776 959381808 19550541 815204269 415837833 654699942 828645688 836236672 886021169 966952144 56637255 361829947 836246064 938972407 640814201 669333784 992159301 996962251 205458646 292914465 603182205 620509111 689199972 881935434 845997086 868168785 292680079 566755076 713610448 721668046 643892372 829053218 5480089 781641951 684867302 707114764 320867104 484953559 466304092 506916526 732738565 743634318 524722706 866334313 871694046 904205602 229832657 538432386 320550867 582857031 898373489 898845244 617304926 820691395 778230318 808720693 409646390 749326875 642391741 728826459 532285767 595651723 431578543 951290395 945975075 991668271 657798564 858635731 635597362 996490440 929361550 948263930 662462574 860486443 835471892 918361046 964740802 969215899 414660712 817316115 401700453 535542986 731884107 832840372 256786027 800542891 962278852 973528316 257830474 628007858 905104842 959031593 678622665 785022422 97698892 542876261 384266332 478192801 850029091 862912661 37390654 264646739 196276730 714186664 456513642 800389395 969235494 987307223 678476990 987928122 304089106 310304157 207959716 313361965 669995205 801154339 276258592 432178994 906759830 987086942 50879086 745644900 813209067 890526759 692091176 896999268 61345802 407130057 61407330 395431268 143859428 342813628 535799955 746877369 221855000 319271459 336278017 412102062 837097708 928278499 991861355 997865018 927721531 960174832 267311930 419894331 584124624 665528266 141243014 577123863 415987025 791231744 767110110 956824518 59701324 690457916 978793458 982904801 957820491 994368459 452066234 874111348 657525230 738006436 78088454 911753069 971715677 988703961 175004540 447298356 790978147 817085178 854528714 932941421 946103316 963102496 640644376 641414912 550117355 915245910 751683193 990165040 705377381 712281383 3171031 779861246 705117481 786828499 111993432 281194006 724201791 886901806 538549531 867275107 951392925 960666919 462165773 753967982 149377528 480495729 556199204 711214662 351235641 729811927 650296302 790279815 998854759 998880404 603492057 912824193 808932479 808987153 547816266 770063516 76759571 762028255 354747849 621259815 677555178 719800248 504727716 514968663 738651371 855065140 828271207 961704402 523505886 862122586 289074995 608289297 110898259 449376322 322787950 603415296 155050617 784748451 721129959 781381142 895721095 973033579 649008808 669899434 974117227 977085198 479818923 988310957 576019635 760087888 465009925 572401450 58014500 904858309 734331934 736448495 80147285 884584244 713442670 922014384 272795131 548716472 272935714 303898991 882600485 928231444 301038619 990830903 671345834 852871531 79762362 163861885 575967663 967459509 230739844 984393272 332705872 409852227 986233723 995447683 345203604 939530625 63996775 950059093 66407419 512295314 343230593 383988144 265386812 537971876 721149310 935185616 252203218 684453473 995912525 997642289 516474555 606635394 359650343 423578856 929742145 991776517 399539939 979533599 899068482 946295794 770062565 882828523 599549651 603549490 167528776 936991783 892222448 899139583 428952163 754616805 953805732 995013746 399375782 453432417 834245531 883885768 280206574 297566950 320338125 455576152 637770407 903866600 132360850 870534746 59251514 491763703 705299989 709552899 221898911 620965192 836991116 854333109 676223480 976314256 913417211 972374014 579482388 639184639 592626489 990971030 876031574 879303258 411332100 581300231 277241420 998267766 584383916 780458827 997322769 998939525 884815576 967075055 942722101 946560904 253983110 382320447 708176101 728026614 77826383 886915689 94116508 523219617 895477839 919191214 858506915 896420130 324610739 509721449 321460648 409605942 166471861 640680895 242776353 391728820 799565582 833555376 902035164 954379631 102414345 443689160 359371372 662697067 730875327 823317540 924942728 975366520 338530542 536481883 832319852 910811466 79406842 650210281 35190787 209988690 785121013 851628521 15774625 559208078 813244064 981318516 226468773 708920578 875376967 892810938 684031977 910207048 896350099 943099622 739861317 768451356 422057131 804022409 519547190 960916432 597180300 753330056 103230181 761228375 460634750 716281268 271011011 313515077 807172599 818103503 830596096 854349845 32814346 884589532 608693939 984912875 556860482 873130884 337887418 733348437 123815722 820576404 698309812 894813987 403842871 462416800 104724077 726336632 216638058 783160544 655631408 688884233 500644334 707792604 937034939 948603933 582563354 813332636 256498945 493774786 904407490 968621663 903923844 944989826 73420037 757584703 689388603 939404605 380455257 390028584 83982789 703429059 281931441 467615571 564239833 888388503 779986359 852511552 554564365 861312078 556024772 903293400 320024550 869000965 338087997 503583939 534628837 874625505 355779561 616398215 853568207 936479885 130204173 812524291 18136369 183300817 700662355 702868267 788063235 998068966 698523094 878689444 78461373 108337684 455379299 668566602 50153233 725663569 482551723 779819190 614261928 671451509 930361857 933811123 226232031 870148012 834387135 995380835 411067165 808943412 921548614 924455333 517043469 689428836 981984053 985143969 629078766 852118833 943436429 946048373 781890472 807899152 745170572 848263247 870930565 932120998 750753560 827520773 366306504 959259419 827512142 921899758 36379100 518280027 676136618 901451098 766190131 799700589 369049941 719440548 592770934 736335908 481059101 918404596 395922222 997916390 104025236 458257638 181263339 903065437 667507375 748789158 798033546 849286514 40261350 397532750 58433983 661147436 378960009 536433383 882441566 919722780 314301219 989169362 510050435 662547597 492117705 562857125 759202337 972476883 406154960 930469515 815272299 909155967 728452716 785100573 588133685 887386484 344096838 567483547 87700531 600111272 611900661 790315891 960891102 979737889 418601736 618971011 56816706 488265005 951214171 999051801 428404001 637399950 925843672 970382418 994336300 996148672 389057831 718463363 302514749 777859376 600986415 726897616 552312262 567093876 432210464 917987295 553184907 797765978 571192815 779116742 426990031 921830978 208127650 368223395 973579340 979519572 458753227 739295729 700072730 844188863 549896922 846555075 704880588 738607971 2988944 36732477 525110754 953273887 119466921 457913030 423329435 670009110 210318848 908204728 260746856 565018839 563349231 869479172 750432777 794425363 7660047 980870864 761702440 979201300 972917890 988775555 490636406 727176866 948816767 977312963 879318699 895420580 874902751 901504993 894252781 919841073 274494408 574473345 901282941 906678834 17753923 387204248 987110154 997636914 372295630 651161107 385389265 567399848 441535502 718702324 160039093 871603149 305646118 370525561 715919970 833745491 538222272 720233898 573501621 630122392 288654164 776572560 317158627 623863452 784704344 941086230 731426822 993619886 698845289 843330326 133477859 425011246 577137097 653505466 340690939 944106754 366217965 678002417 464274401 659979063 434320282 633295956 498008976 945948796 302216284 589744142 107553989 525356401 148948174 577082391 232103604 256074292 856006838 891849010 84499394 132270393 265379369 910673962 510135234 731082319 321946835 482288018 447045004 844389595 293016056 308270046 802202785 930116132 272855170 874113146 893271455 982006828 760840735 798558360 269571169 449893177 938457161 968400004 372158677 886217547 830343483 989649411 723682993 895905494 386899704 976851719 373649915 481630929 536744888 854425677 612080640 627974255 773902633 853032207 36888564 631135925 102110109 801047153 104373993 908530236 10637512 332589092 941511144 979734171 180369120 381317169 85836028 195956951 863624272 942168105 919382487 974040018 57232877 421314141 425910903 877557067 962047727 987507053 45121638 96624472 62913034 176147871 315329162 660991269 977128051 997383499 144963386 397726314 170992280 257567726 458245406 924191838 300991735 533540908 970185047 985541329 962195690 982979289 867782164 923950106 465326589 971121458 223847563 283112488 159148658 450541260 706595787 997375908 594348079 774988491 719270930 993829679 730347792 775918265 585566702 807606776 683638247 836893560 300597651 637220582 463315529 471079259 698684346 848124179 476940563 691330537 362615246 879293943 614541032 959910840 309833462 743250949 140566946 467457284 755524701 987331154 583137956 857452162 211722817 620873379 457365226 717638306 289925049 699499230 975494624 983136730 144676289 734236432 917518257 938681816 158398280 692220519 935152650 936732891 52636164 751619545 798721236 994854304 479726571 724742891 9300207 857307853 516842603 780022864 359307010 772314209 640897091 827642669 76149875 287992452 591350199 802003467 221867922 358548415 989053487 990230298 337711184 436581164 976223869 992992045 800939492 871049205 467454737 607686866 335997688 791719308 782048855 940592324 103802785 718979334 340021458 719110421 863010657 932779579 28503576 808951221 376524007 641659596 881832906 957309859 712200115 969817234 398904751 746881909 941361930 978584167 55398454 564624863 251937131 428152288 854904033 895948670 745994038 855765945 348946371 924159705 671271465 698613424 245433893 604451195 364443510 468660426 945605809 992906997 75828735 568343307 503199119 565089597 911600209 936580173 650987716 954940531 825826665 941859063 242387071 851254158 645019521 822236007 632829069 844465485 194408077 711051571 996589804 997659252 845636090 996722821 627018823 846272906 514825456 708139131 54083874 952345917 195755821 221088492 532875174 760220255 428334798 866509349 824245809 918587910 442625330 932026278 325569795 683051318 287027192 765985034 216778028 522046522 233546688 440870561 567324681 617523722 896469056 996194551 531342218 694131562 929779119 981879996 968386234 975413106 435053494 466917516 840575609 936183190 254566537 835010873 792810268 897576052 926420384 939744108 611848396 700638177 657173472 685697934 499137492 535551556 138272102 534642077 189786223 846993316 973796271 998041736 54157843 863298032 646431707 740594395 625154556 965437336 107831672 777104843 863135615 936666022 200488695 906209693 863787091 994815328 109120344 405159881 670733036 918104189 728074217 782772960 278511130 938829396 460716501 618089646 638365935 666185317 733459054 809819667 796907337 838290853 946280892 960739095 488107279 501459598 594775206 962644979 638880898 808442109 423934165 657490149 305696825 444460979 440865833 802240586 231495720 835919396 336580848 580475300 31604614 884118488 899376413 922370712 402019274 700299506 869879211 926515241 223797794 694044750 702636661 960429792 166853691 851968072 22026087 730037444 731840807 788489566 690235270 813983174 541892248 552340158 262764997 391622487 314938062 361887738 97313187 787094772 804218358 810397702 370808007 942861984 478018140 549342077 778889847 963083099 498565445 976873043 509135264 930669821 771134124 886811119 463205883 963276452 719793945 866778862 462334255 672731093 247644631 345375248 673347987 964169777 395559021 785356123 476996570 538679331 473263413 553499116 809057738 987598311 398204760 647199204 75886275 700492117 97505593 633628511 210057915 574726600 331914358 468109199 622450425 707083783 987897337 996584896 450780982 798189716 955182449 958266883 704685282 976904053 556506632 668212129 303359333 886483089 367967585 763464708 678156218 847866330 341660218 527922801 123755362 890930479 837576479 872356220 360740510 909200953 58751711 632797956 322001169 614284283 770842102 928915898 967812506 994108345 462710637 542321427 718446400 900925130 285585128 722687569 690270406 887265063 538763053 757921576 208271119 907966969 243912048 815071822 355179010 853321665 678740855 705546766 539711055 854395112 371547197 881765193 270705509 337903256 243103867 896164549 816860193 840810332 226773575 606563178 263536820 589609978 34645005 795853134 640029991 974635639 410015997 485172396 474116433 708073280 100006333 464390998 289773746 819350027 692109891 782961667 93748502 570614345 219004415 384722446 639520542 742964086 934510624 953238890 806424897 967067909 913043225 970427885 769923013 896231567 459057191 536204839 244485806 555204635 509113831 774991749 263874037 753670774 480201610 872633279 742064448 904275634 919511274 972382547 231235834 275565390 282392436 338950496 247121161 761307169 979728300 984249268 165984348 218019374 428290133 499531097 795775499 891243916 651769025 763855619 996130982 997606643 559715363 872567203 34618258 324396776 901461749 945103814 738227113 890152997 747907725 825811725 177468843 318434763 611885223 990075480 606264081 888666507 267956664 781734824 906526878 928245662 372736067 714631730 706092082 873991360 904330072 953323987 717895466 840505209 927639712 977360715 825378580 934314578 676604781 974724402 977854225 984559853 42212859 600868493 280859825 661057621 361096680 476879602 637789733 679736928 579628705 607058884 377515459 556148372 707725008 865223982 252195435 578429684 897223806 907665896 158261521 827869202 637240128 945908096 475423876 724151231 528825591 679893025 454472765 572076350 964432174 980209407 550222698 963074808 428374045 462288323 26836692 956647015 565681946 813733640 312024862 392091310 681401646 727668187 116086741 712786168 52587849 370926548 713649889 895957218 224179078 462048381 208655789 617287203 908319111 910686246 285012895 781351836 788163574 917702149 884259440 990393250 773828261 881361733 92106662 445334823 913660171 937870109 929776561 996004077 704570424 889080981 994242128 995726119 277358835 491079699 446569894 668528085 835220418 992516027 293311595 439314736 910759239 926458053 572876909 744215407 15013032 814171586 762430744 917255231 970866814 983489001 833247021 841175285 277205408 821195727 194353755 265108384 911787679 972999938 427260204 527051235 151420917 210891867 392412201 760549061 38693801 112544440 984953313 986154287 973966813 984983264 532781457 753704845 228108884 679798665 602354925 664674971 155088016 390561259 554468707 791297400 723827918 990981808 288233862 711613171 800526108 959477226 939422802 940285670 646026914 896590221 702145039 914749325 145534443 293617989 813262507 945421271 510152279 812900119 181391510 255825928 445942175 630069087 640119059 654739633 334165692 433243563 464644209 941990071 734290701 830700160 765926622 855400947 667578394 971810330 477512853 983160336 360838742 428298070 729695029 967412997 181490407 540114058 435744982 615097821 1143430 433222779 987349439 990274453 454188234 582954306 949997126 972442396 662592679 828368459 277487001 444443148 740643402 821102374 62643399 988691688 52650834 531857933 374346771 576422905 984553927 985267746 433709642 775494547 234623024 371252918 756222562 799848292 963065183 976661147 431268566 607119334 636723961 954505910 177926928 523116276 513922308 630773366 869122635 995009555 202553780 735660090 355500783 827396268 743890057 944129115 171116978 747671899 367401436 653000195 85780298 990410492 158971569 927535480 607956705 716035715 975685908 976953723 778385503 954033611 919589721 989956713 9263027 522923899 524062474 866097400 842773650 943848137 864227228 919964680 229830566 924246893 778322082 915487520 214549520 825757777 506229448 930779319 249626196 997175220 410585093 980237642 100538079 937331480 165113931 188021023 124587608 338693338 789032477 816660274 739925936 746404114 755622702 905663485 502802523 770495950 457920897 728104182 429915295 894395637 364049234 772127245 552099057 798743013 634826745 749962229 302026822 595318938 463348022 979078228 647492822 898594364 154893249 407900242 853473608 863449413 955813194 983627029 986883660 995941969 769038978 940832014 974132436 976680924 810946954 936371503 472472898 638439753 106528468 855715239 725260296 953527451 566894963 646514952 669642474 847157630 547586044 608807017 12436069 57667373 729188228 992595064 197144769 474395516 664111587 765559611 266164084 528150187 973869375 995734432 510562003 584378763 461593266 996459964 229172942 256549012 432256629 937233378 828050694 886032646 749511383 865749508 394465126 844917831 526244086 763913103 796043337 992577911 364901030 937689934 601868396 957727045 468642245 692029710 96022977 466011058 560513525 671520311 902099322 969712031 338757386 794194986 884375240 916724459 859291864 960937877 627530919 824326285 209407908 828750176 772359112 859733369 656493669 874777262 323071482 560005104 169793532 928327556 516533981 893167618 837358023 889602682 894391401 995417003 896618486 933719708 953824562 972478915 697539909 734702968 431109027 520994664 398071846 497172208 153549701 627078867 870898607 954964144 263221387 299731682 12159707 450315785 393204136 404623000 888687899 987505246 31842980 297311147 74734668 351908641 77660429 704703851 24231387 621397154 583393952 647966713 430208290 914246947 774479517 995464451 367382642 732787814 727322299 988402002 343328194 677901500 54215590 230172307 568167247 574394011 813691932 977407724 376803717 974417903 610716056 798512086 190285558 874089374 79294684 374579670 240973866 585861441 961042687 966303526 530170087 918858299 380685220 840412217 974034066 980387204 408863957 830416276 202380324 287997322 480476208 826983650 817912814 941847453 435399356 516342872 44146029 152628452 3563511 566619414 912772809 913031789 905929837 991835397 774801118 894199309 506604007 660661589 117325092 238175707 383329498 953286526 709767266 853768725 353942732 543079573 843035338 974877915 580420390 902297280 200743694 970042496 593437279 780881746 830578532 959011540 39972680 136427741 773751320 920270474 988384719 995488117 863681052 961095250 831179521 912366151 396838731 608634002 247756352 297951879 827460294 918949651 134192503 351123238 712777389 858312335 765224791 951493323 337266567 398413009 824768545 876899307 836271025 999929513 345316214 938785051 161214355 460265761 458162424 841630981 950358241 956639268 255004743 378576666 326257043 661709780 898791123 919077151 903794607 905422142 146315869 650628600 163833657 469623089 517693566 785559822 448001897 622460394 717985741 822598585 563568116 636534333 185275038 912562691 182853864 450474297 909422155 924727665 353641931 977323037 251771216 733882120 597465810 869546403 168638750 979007577 878948232 918321177 185929202 298409672 321097375 633292577 198171757 504260345 452252822 784175431 593639353 724722289 903545722 944273492 639718643 702859574 962443890 993845868 875164004 882617048 895421718 963177337 398354023 608342840 218179559 791862104 892399539 920557887 258506671 635742396 346102658 614288147 975897592 990012714 336102383 631643736 243965499 420729239 175523712 539571992 370177011 634513950 978101390 994794389 100260841 656265697 792555795 849128257 820285991 991181499 734553296 984588362 115073254 685539239 855466271 954994159 486333148 612786818 57966009 957344350 891941000 995832830 699047803 937654552 200500825 207856641 285304657 648700911 896685468 936099419 498621323 695597601 798853078 819729116 135522285 229431116 577486902 791828981 404249224 603712487 927325419 938423910 419152147 607409730 212551073 958902661 947264136 993996756 47449176 155182879 700068024 939847027 12730547 483707109 525979680 765721255 458857530 662629471 360798211 946722903 568298418 971216178 878465497 884583278 79091350 522888049 746103557 747438011 546638989 909997003 485332325 710954033 625653305 924446218 501850054 683995308 666674210 907141516 160417089 952689404 39515387 118552485 30494120 85357062 408899820 981930645 57083105 361691771 829701510 960967093 263838961 636975214 935894952 946147575 160750389 997942401 711673815 844306527 711431859 888645307 666389392 815830728 468208966 952309444 335963731 654810425 30392895 174883049 178688907 590853000 245367704 972465703 247098128 537294309 186960219 710924981 703019418 787827489 483007288 590856423 843860671 895922123 735072927 846706500 36896779 391528665 154205721 446541126 230549653 250294635 50412041 709303393 218582022 494867786 485784715 747175241 439145454 785715216 815151157 881037888 585590754 636931985 26974687 200951869 151162197 909007243 310478875 802209332 625150109 885425005 969170283 988587455 542985600 618908041 827703474 859595254 358844802 541734607 712923776 777528092 990143472 992117098 956349435 958216398 85506795 753788800 405752158 468768267 734342894 763295265 770552138 965828800 988129126 995928753 592858318 786117074 828825228 914005425 433184506 799244000 483153486 991644293 219713517 541363535 418280452 898003607 748680203 865960728 489835353 930513991 343341431 760847020 924643467 983833508 70372748 682132889 283164962 587310535 346720363 788226990 628431658 668095339 518737478 976232538 217045888 941100096 467628061 681332490 544329729 599433525 817016801 856508121 930780569 977165402 565317249 865076719 196379209 555179330 327592848 371551896 826432712 848888154 274821128 377404031 703701315 898028150 776535672 955520736 3587076 783284503 781799401 883040427 215940757 485195030 172990253 392272200 61710047 411494536 813283687 934320424 785485455 840735448 501260419 506483325 657644635 783385147 243659644 646636067 255416052 327909047 644692598 915816790 345850443 722491013 136320002 809896213 442433471 967989550 971838701 992850473 683813007 813561632 194332560 434177031 603294961 742133370 933691103 992068623 470909310 475544298 870120331 972954722 140772925 248324329 344400161 555885231 995290559 996635197 477077050 584257695 627461757 715102784 193439125 211464808 160813860 917796725 331029012 803212458 254009047 382709876 110992893 296916326 280523494 982772642 790030962 954870284 9742920 340256920 359359381 465844935 346395150 976814307 763959277 937241558 213843514 724828312 867011099 867421482 328647856 743283644 186650570 637239032 887441496 890362566 913896087 933155126 611433255 911014433 37877251 75848764 467746742 549616867 419207082 430985369 506801312 852422126 439042291 930712616 504964837 902677088 908714305 979017941 346731574 999361103 419536453 688715385 997022557 997782937 814203186 909410346 22298104 377684948 552023837 844384690 136257990 577250915 119095238 442335881 587894219 894398400 463113354 698220798 117421061 919177134 86371848 182357734 546727743 608494591 528451803 656277300 729857809 880992009 214298558 591804202 730393752 766874284 904224739 993281515 624219840 665050174 771938971 915301479 258465139 508464211 723539840 841971617 30751830 978436282 700658328 749274315 510695676 767255956 228840295 390119255 657112456 969802660 750702059 933751557 818183645 826995833 457653338 804410935 759209876 904976021 843564859 910253637 126977876 358953683 112848330 600805488 932515457 983914266 374652425 626260216 828357509 971311489 625687218 647908269 284518538 609655550 989994767 990015450 920171317 961742897 804708569 917141872 369531177 396569825 264756161 775632781 680460333 762883088 275059479 791599098 57503875 290720215 368342892 546212432 524037886 870988737 166341553 408640929 807157792 943728466 665975978 778748120 813780288 941561444 338125621 671411027 751019650 853070805 463166270 558639815 267800086 280903180 232539875 875404693 376450942 754765728 163037826 868822812 968587581 982846666 150208506 614805484 600612296 637372010 388148365 528168114 536708121 690564116 347154574 956506787 485558919 819703827 377893116 822483181 840467752 861909631 149850335 479009547 249667193 965116334 909555046 957131780 476006921 480581622 219164762 258431077 743975873 880294785 674010265 923559000 959172213 972520076 890332526 999379279 702403711 881962013 400603175 498571555 545902725 596172179 860476384 945245934 340069616 372559687 787406045 787992504 539577638 712516930 652998950 886828471 53616914 686191320 439918372 553788807 319311473 877751792 875336108 896498272 482734048 855855256 538090230 950855996 100643031 167385598 254796125 336123627 723226757 971258037 651562499 905508678 26961114 577859027 379007277 540159545 507647203 960164678 228068770 335928759 42125110 52214952 642003256 809327085 103206478 541535045 455920023 989430669 602567539 744559745 790351865 961754102 308218488 961370145 201068700 878574137 679848457 886054402 701284529 863407416 96594960 573429628 473457848 624116174 462256594 696056921 410177366 861062558 418723853 915145405 356630513 818464061 974602242 977121204 931392152 953718183 409858175 711329695 310459185 735781019 223040110 590729367 90719268 264359604 306248087 730127363 512476964 680635922 3355967 914729983 288520197 954084777 99024104 959125550 213962006 380513185 434357451 728603823 814710666 864885970 141770327 915967101 907878298 935373729 200183274 921517568 554431542 783625357 206123843 829388602 356151652 754329128 200979136 292554171 26443001 784289308 282943760 492737749 171812914 308564750 217072296 363611189 656021995 934410718 566588381 868026038 218506316 524584073 450574145 893162476 206463722 462077819 567850209 902296618 737182269 963309407 516184615 978673895 175492775 623170959 614662599 766839595 408974479 966870491 987913327 997424853 916849583 946845575 835743929 925731100 281127425 968125340 468848793 907844186 927574634 948921579 285682526 455723845 526247335 540436109 291906888 922373415 352220763 990259651 339413647 964037157 320036415 545379093 190587550 521257345 151925261 631066273 791290796 804633966 218093378 471359134 61032043 730572121 354478446 506271460 157119827 684317784 431601972 783072121 550021397 569994691 249735629 765661963 197231939 972511843 890535275 994993480 463582985 529711976 74367139 147594169 71411595 929488049 479895684 692353243 198611709 271441384 374153829 522859055 760091967 998364224 508946328 632578472 730184760 888011880 536737256 578850361 136369187 650787437 9146727 24731171 607030645 803386423 867848388 981336249 585993142 767471312 624454850 976637292 37685165 728711773 92440292 757919617 305926840 821825414 420981024 737262217 425533529 848588086 456032940 612716686 673195652 696240644 69045957 841863576 65105864 143402141 902529132 953313371 354566947 998404194 605165444 716258621 93881309 263957069 293534433 424196956 10499386 862785667 300457255 793859742 279443957 608320379 972043570 984014940 940669634 998300015 245141965 439545227 936494264 965137197 309464363 680179736 544122100 692765042 303245067 888872789 203300758 563700946 590862409 727555752 464264820 759648757 676168230 956984110 246995440 907232606 291481682 369883190 489571241 933359747 418260980 953360342 903474556 932781219 714291661 818995064 269001721 888818901 932846794 933156152 944970290 960205066 300804673 649724721 458338077 978986161 56967666 416787742 804161346 870745876 694083507 923796012 141016163 576747531 502759929 506625579 739285243 889118380 317870359 532134921 971590529 976180263 144877451 898267658 392103419 597952150 264003695 844178468 525619269 735574413 439956688 702229808 129903834 468996347 763738731 965754396 71018295 349011024 155982818 945768926 302317733 408310786 805173459 890434524 173781394 383539206 354392636 562485184 321487503 567677270 5764248 670721009 877644210 951093968 183730461 594917351 232331391 937719759 268715616 557989252 602295154 878360000 763949807 859810677 434227285 932438721 372573715 768963040 889182516 890103104 553788169 834995229 958903194 971569484 918263107 949722512 544416555 894940326 545974044 958745205 345235437 369932100 376390585 563623556 173955806 929451423 926645354 941027840 563217920 748132777 493759177 904436157 453397737 491692750 494354349 717581867 898951542 992219169 527373848 982812180 189179205 717741010 411326312 748515925 686470677 692997409 515713705 758113150 926753064 989797864 715402445 944727764 149449709 246757626 371293258 673336176 543152297 996514705 560390368 618023957 951149749 979888810 190057765 488875832 298492787 518271275 560584251 802240579 246797110 454650179 821102351 988078525 567791461 587897353 627219646 826196206 628078713 995874437 371238265 983357869 765774204 838481363 291726070 420851412 2022631 359412335 498720733 873926348 403966445 530660555 61237147 594726750 342440551 592874985 786971537 978326871 885166683 996383323 769851447 863294782 21232085 169351581 980746836 987854954 604604095 708851786 54717304 111281577 220317217 834202827 904978222 911779527 730787699 969172889 259240377 892267774 373278206 923517261 902268252 920095929 283136914 295548203 507511560 961391121 66281243 610674710 657651439 811777376 593445243 818025859 556288896 924866389 882805349 960149188 232693048 796896114 289725865 742332194 595213780 978466807 364513991 455595472 676016011 770059063 510115025 515861812 137482956 265045891 363643303 642623930 378446133 701740051 766981557 913724971 594850978 919654654 573136936 770832219 637877001 723078058 234417696 299968374 44923386 520092445 607229140 911946878 774886115 890602364 265966549 635789713 957438215 994199717 998605114 999888751 617961145 891610251 422256273 424393394 611299336 827366330 979968262 992149118 106760942 343097911 770203242 818465473 10254112 646920928 825123803 921126126 853265356 890132763 109023895 425746202 795306914 887454918 182172021 227485178 378511983 500087641 579753338 599077189 589513137 848789701 961189551 996623050 919305246 936410933 874629842 949938450 848295441 983575587 665398986 952502501 750571719 805297500 4576501 267096816 490958268 496331156 199272851 365576466 836103673 857396673 806171112 877077348 706331874 766323722 198598798 472687725 941028295 988953898 913365685 970066104 720738492 789649369 129195291 286086905 466306736 812382073 190349016 691775207 425785942 438698935 683262923 762988974 974071626 979612723 976986418 980877947 191432671 468411397 430281173 752316539 805689377 842407149 512404121 834846673 941921943 977736596 835318601 907768015 28634696 278081772 75004207 917728713 771190325 853823055 838582422 917132012 363619632 506835482 100892559 720297602 403252006 975116678 157965715 735442158 433987450 851865044 643665406 937158257 232260218 757623439 36140792 292872191 392432511 927908529 621681890 920003773 698748868 964269580 817267201 933388578 618139680 826160995 356319060 558300922 993408757 996674472 7845498 877614327 42080906 405473361 365905426 805863045 643246283 987040031 937753726 955805351 57899938 286510833 456054027 577954736 781824974 783331267 681369100 923897112 886558035 926836952 148840433 516627405 430550080 816086293 202819796 765132469 577738975 878439460 322020137 489970983 580736304 667472814 181575630 244355566 924926880 978081120 163381535 883569894 823165260 836524848 323656810 356869674 836395797 951809296 872962032 937063654 996915128 998645107 923760615 966055246 36308386 244318847 364964340 914195033 105938120 440670947 103555528 587412216 996170693 998536241 438041439 584998203 382505443 727717071 411309910 935967172 99601803 300240620 274829975 783777986 226236473 276373364 369285500 600687908 113155177 270862329 697565932 794493061 870158332 889962691 362032804 429189894 404223633 442031124 346705844 659842026 434049965 764590434 175402545 852216835 198262085 966025360 60155428 899879119 540092256 694236895 325291230 573253752 154602881 293668159 381638809 794974149 706264039 756297904 328226532 916653293 444658440 462552835 293375700 788979057 179755877 181046605 388123376 553557511 475728180 697705174 418534780 478539643 719398510 906489965 358206423 531072315 966738440 976721408 397655104 696127240 160758622 383917959 848786046 957815828 677528924 763093970 664569047 777692797 157424425 493184871 580058407 831786873 335902660 426147550 327969195 842918707 742703268 763689930 487287483 539733903 297817209 548593523 949903983 976434523 921355339 982179521 944454912 999916146 791617682 836397276 261132046 849152435 885070323 948713022 427537937 646047380 735837882 821347507 891183898 970585315 362479345 959995596 883211190 946135875 221296324 580457952 465629752 824348269 201347452 978483917 123484962 136198452 666039842 754871289 2674250 229269437 671595364 820153157 265932298 339817774 829048570 900306460 97689412 949027967 74957598 627358502 418089468 507888423 760099828 848440756 667759141 868742222 266102851 430069133 264440357 919531922 648167532 756793997 599937813 832596965 580914140 649086128 168247799 795301392 637334903 987959921 382322134 429033241 220038336 426007055 294047617 483474260 391899369 799636605 356444576 973949192 154148206 246239199 596650319 746305889 427107332 587293662 133272722 625204906 301270217 738908635 657131837 724949260 511195784 539334585 379797863 685092131 126137203 768415097 816199607 972633512 630280191 693516882 749533823 971798007 362462493 762921871 842584273 855432124 351732177 833452182 181306717 201356051 17179554 330986990 413117280 996136706 801155067 943703940 936913921 955696016 250348664 788592609 162340005 258068254 967209315 993012262 323236700 767243628 675202625 692996058 842672722 848991687 588130707 602224945 363456438 605284544 30337006 243995275 9723134 333614583 802960674 829698850 12770278 75798530 773467042 776273953 600897395 780126106 496013467 716610699 559030350 624864731 362773181 655655040 439878970 992883430 526402294 711516399 31916006 516462524 297388280 461698614 621134013 783268632 349228999 705773392 6700132 366806275 70858779 176877874 361579307 915364714 171661238 771906846 403652235 668173055 369454061 677017766 899394917 926482393 41894725 338368379 513472640 579569969 697548566 919793103 675085858 899595304 25643425 488128506 803283539 998495140 717809918 801236700 901981426 962946714 484203645 888567041 133852458 730309523 147166337 887246920 296835926 371507985 240879070 333602787 119272529 738467966 935285148 982084289 492421353 873511237 363889299 412402111 532913396 800942627 686443236 720776491 506651352 700383486 44019603 762204267 803129225 890191145 358952726 996912401 964926257 980491811 962168610 967964806 44029977 832690108 108407831 990700670 725228609 819270165 792406006 981844025 851820649 859822831 397053950 648567524 180076681 656859093 438652840 799068757 100787266 571046519 658215997 775190465 983143234 988534475 577009403 971996288 339217322 847257744 443678924 449745077 560461107 570626916 756650432 999234534 682968358 703246740 144930003 788307957 860229043 925534288 468925999 491581978 592648534 603520471 612863180 688029934 233510528 688096414 722911947 748854095 449509535 856905809 857775238 981690476 240287124 776568367 955251980 970087407 381373353 847673679 481306136 954467900 434199396 553116568 986913835 989834404 830678806 941755358 455509118 827304603 924363568 982679241 451246072 572595347 31651473 501598309 567172543 660078738 87717602 443445865 452693192 661455299 684509678 765386351 39363194 105360226 304896888 775737485 262304101 931209315 432139241 571519718 483249831 896392915 292595937 899234394 255676684 492679895 922992982 986482799 237528477 448083478 45248725 454890173 646470856 688809475 677966908 695315496 248872895 837278128 733145869 758294736 686042526 979703759 279889198 914249191 133472150 268552014 152355943 736172010 148112832 444655744 621254973 728807847 151902501 227361869 723329826 913295202 639448961 843009064 211516198 962959272 536419458 871467365 395081655 674623102 585269134 942082151 638014829 699693300 590922981 733541299 974342141 999179246 493095937 504702324 893666675 905625707 19251308 525973616 196976243 329709252 686090104 880825087 551447390 890019670 554899615 784720231 373774398 821728053 4393156 137491966 387223269 964810041 748645335 872622512 405642635 555662317 92248721 919392230 611340894 900943237 124233761 632564213 886184680 938336998 970660874 973515163 963490121 991877652 379364176 849915647 678209683 849259632 111486432 994205545 994697460 998744071 433574706 888064039 706456650 806309677 708487390 809901580 912356168 935872462 620632456 910781454 675289585 791796052 917765906 961217862 101394725 899243279 237045579 798630904 437454125 767938744 790161118 918226142 908144823 953407301 180583673 950168685 610902969 938370782 263259614 300090509 706266274 825548978 529147227 892054368 275686465 977584821 722763922 916106504 127726733 830409585 295285514 752279568 879810469 893990957 320056807 999663097 933837286 992677718 242979214 623124690 817533739 895313848 298240607 890256063 468984435 997111210 655328932 792245873 609759023 935917167 541648112 718305240 332622953 603530192 120157341 550701258 438717131 837360531 503768400 581642144 807174740 979928996 94158231 649271999 370558451 511205449 419692201 821783969 360746253 729366279 910364940 997424662 623220472 762985702 997708148 999589079 728299768 882248808 777534287 926616857 483280985 822031385 577763267 634701372 673798687 929238827 375523800 581050035 98220157 334975317 658207217 983820033 811101082 853033474 203998006 692568708 181250870 918095932 295841907 317483321 349086411 586947372 557579773 953622219 563357617 645732491 623783399 639172777 437076075 668954706 313183765 865260467 202341726 886482278 67670545 413272380 886297274 936718914 711190584 815956410 290686508 984741105 841527021 841697093 269400238 398930411 379009925 815774796 531868604 715378710 479354535 817078814 855549497 984290015 673672855 777433415 45460926 723231096 196095010 962835191 735907297 788033609 660506146 759995241 950481214 988162263 280384335 811382393 487609905 814555635 370055194 687414685 331108660 753478902 958922632 978325660 605222584 771650204 745628775 837533148 885535125 950586321 427398631 864357936 786798851 909870456 310979701 818435259 87151694 855513906 992650481 996837053 714553818 917572899 38324071 244415940 925318993 962925280 789455415 986380311 865112149 960747703 490294197 519276982 838490965 907687969 134560149 345867111 5700307 605056740 504091344 859907563 13724668 759575596 703894964 929422310 501244335 565073134 503103718 650516397 81545209 854897482 36530449 591101578 399765000 825373523 186597830 751493458 552876667 672230874 147700449 739765185 350531669 359092220 977766949 999603829 987038143 995596828 410208812 471123302 453569019 716354891 760152024 822145606 838018193 841070825 47800944 485620094 257495235 516169903 57314240 134426564 815339547 987421514 18256268 456273322 880837947 975868304 956839349 991539455 346860264 954302463 614932412 981297497 688179408 856055043 347399070 756438554 909234804 986908733 789373531 797600779 105801367 386360301 714174025 768945517 191560817 909062012 963397875 999666142 581433488 753668217 696653888 776031369 947679825 993746680 203776397 982628510 416978041 755390505 963060142 988357102 586634390 742678955 956310191 996688111 288616301 698309642 395871464 784860467 919711985 941403525 589536763 593599047 899557207 935789760 625406849 974453794 543529422 713745219 398480768 422676055 598873081 760368050 163164430 365822614 541130044 896378700 978433299 994074467 938523633 989486411 775142136 984700158 733340562 814731573 387400697 914011946 692717420 953180261 898102585 916521650 556313053 991221743 916314662 985203239 25312762 798389403 21603482 355065097 186156515 942210514 944111772 971556031 715708022 857016868 614398056 934153986 553323835 864149627 696560712 808071271 67169078 828223697 354267756 660504177 943953548 956480226 520844048 825217136 571074043 794557989 956172529 959503027 273474050 645183400 535158784 719411064 548437564 969463658 391343428 931790952 728185643 790369417 150237925 583313431 685422684 810355883 895200672 914300080 343975214 793612555 245409461 655225912 887284477 964506289 615752423 856790189 556267227 941721916 175907098 751065395 757665802 846523576 402217865 445452450 376568624 745461567 803903132 929335141 956598195 990271854 846577258 858066701 17828268 851065048 4866111 42827203 106920280 925304731 830445108 854821745 980455493 999312277 827930694 966627775 599522181 724251773 669185946 739107916 331380189 475911075 850205096 992925529 311718278 897998640 742639392 955889276 477903445 983391743 84495385 643419605 106237384 377398303 803184210 955819453 236817374 650693497 37838432 111502292 134470058 660336978 435054904 537444793 788678572 878779934 616647761 826912473 520561303 980295658 286418125 457363994 101857903 827087464 373846180 630124360 632741255 717185391 292212940 296027422 490078449 516110015 105612894 466719654 539953167 748994537 675599393 904883583 662128709 926732730 426059617 743969550 902566361 924150437 520315219 797596477 617514568 651061938 424174919 637833692 845821726 941180280 671223646 836471161 698446019 893636780 903612761 959487450 916939810 946125334 646945535 698843342 14847189 755279248 302480013 640967258 603032200 889142604 455482069 842471794 616504611 744809506 85799009 830567116 265654037 747836951 285546005 862479925 238404895 398339981 975921430 980682761 942137231 975024064 865157666 978280541 358441638 944734325 192266499 964589796 668867207 917014282 598625577 760804560 406717483 845717017 754478084 851151016 411690833 815020980 535249165 878513373 377119677 388763864 279181652 723340111 748353042 867115892 822448224 828299854 520397521 677362161 78730593 917759991 552569974 701173268 822087791 920466235 189071857 727268871 15842801 289099922 190591486 887897681 477013389 584617012 155606341 933316498 90679773 847396680 594668776 866237608 832478717 978332813 160367578 634845685 26148769 783825210 619887820 925023324 795832020 860923937 240211117 259906138 246636213 612311645 263849848 496803377 711543030 867435589 662406157 986987949 121115695 250180801 78788746 521770713 668334808 733303470 516563486 703916133 615545105 741181981 710347297 811113006 387891578 444186718 745304302 956545539 153710834 519147174 778959965 923004592 18685613 856046135 468030107 691238042 72572068 490319677 624331794 824538712 490207016 888063392 567199389 766269292 992916390 998828404 374539589 854013454 365635216 882911316 833988173 904327175 520129211 876595828 157355270 611944327 74498404 368842473 972438058 989547544 553519276 994928363 131049278 592081523 273063475 442934231 251147736 632236672 465521238 739293130 895881221 973672205 389076485 475205081 860452495 873346811 457810857 758171032 585526358 836904766 384409161 946710518 999888916 999921015 284645811 505151400 200901845 619017659 436373665 608313787 718061206 778893135 180679529 665908059 248370629 398546153 773945049 854378535 484903173 693664346 544492438 758469276 39614590 74338475 449561347 630656514 330389741 594332689 9805314 451426906 559044261 931609115 572627024 933178538 942299347 994605402 686939024 780365285 571482953 753134876 714775970 721643325 266482487 808227068 412261220 444937647 375090030 553115359 511455533 928382328 29992735 626622535 745089525 811728908 173111112 507942958 106262970 229561284 309830403 476906634 738090043 828707134 792995612 796681566 673601188 947289066 764819864 927403768 578385177 926655085 600413381 784446846 56481269 974313506 213043050 413156793 162432778 865103148 874542314 919333073 152829984 781316864 11171745 125484513 972923150 996976286 994213284 996492127 3843012 335571053 117614156 692949799 590449792 811263355 15613766 480862137 453433078 556579523 591147844 960224762 328480127 942519271 947723985 993245901 762244737 995535321 740869616 864551468 774741308 934229836 452242297 740728673 623377736 840540792 83635655 345700674 912194987 992320630 856837278 909820292 22224824 92816006 587599213 861025555 846254180 941021229 594666813 818180029 819375877 860501070 381797422 525476963 703866148 719842287 462799368 736609999 387385061 681872104 506593137 749885048 109919482 965416688 194881464 528906006 301810576 383952237 230784981 914661387 350960063 626721913 399612120 887249858 542488007 780750981 193922264 492932033 309292903 670950984 443307468 885834846 358468577 585509106 778065556 958977056 17643889 159811525 233440325 363952600 713585032 775752404 285062112 350904324 28921975 734666626 469892009 680682928 352590074 562756257 381878524 721483229 970272687 991708765 304437646 687046782 265077559 916173347 14846915 727083641 645151481 920211717 520051498 854701389 446835586 959232941 434775376 820470924 482321340 649262200 433898003 992796204 785241544 850987781 507172792 719797877 231856588 333328011 731626753 801121423 95191439 362875141 971003016 986478593 776831079 826550459 336814055 885359732 575049169 819216086 717954959 883846386 971246561 983397075 46632132 314417577 911785668 994230854 426694301 976342358 892065503 902739826 645806939 796202636 814656905 950771756 469190273 768307207 690431754 757101273 634010040 707331270 782216697 904808605 438746943 975555921 973693759 989415939 820967592 985359267 24286402 421969676 286244500 372352356 302053068 916419854 743422594 771168378 728065121 995306837 491709917 897721082 642260446 950905828 422243354 665080240 133837956 200010797 330156188 380968935 324260002 626854424 657841287 795466187 643868024 911357628 753699180 758717255 601273261 649883725 442852777 927887151 913181262 934878518 955248591 982205758 990006502 995739533 734424062 987260522 903061617 967307886 310353750 785734193 262083334 959466628 679342455 897496867 444941115 505092050 949991921 963685781 211168890 475672760 446179529 999545919 420123569 723297983 87247185 891208850 618688529 905121790 150492059 316408361 747453979 979509062 5832451 46771437 128095951 475452109 834723399 965515091 761641074 793690640 802001505 804044435 856226990 926499592 806970067 811971759 602490108 947098117 21623834 677068461 873688128 978339293 484513437 526634168 995422805 998702959 121395965 327069015 99588043 537097367 707689040 963890979 641119099 918272615 103950361 345968775 347979150 940950085 283715411 981072417 527348496 944941118 23582919 579799826 243576371 357925892 657028342 905865019 315755386 427719447 727932177 737106419 848221288 897223256 636035402 931965009 229941904 752909726 7748069 338868598 739666069 870106795 829849371 947438510 981609842 981842622 46415992 667254327 260264095 738467227 964338604 980485868 720290441 762788608 663877736 733935525 778219727 910384883 297001023 455211693 774770443 885558314 347750791 929947714 731048292 911290605 39553197 400479584 553092862 559124622 359584117 408930382 279320406 373137975 251299141 733655101 245143576 872904121 32259228 454222428 762375548 785678743 304008301 884383821 186951147 712634585 728392724 967099696 257265988 405477468 254912005 602049679 638521636 793471354 260342104 585416063 255191775 279128035 752525115 776344523 777596722 794066024 653660637 666908300 729966675 831991767 475793411 684662003 862797505 867937075 869407302 870221607 895794384 919215589 694061768 728151572 359616406 409477362 419162503 735962212 113916539 350481800 683148364 904618602 928048743 975569715 812892896 848975909 880441340 964964568 817472942 861631566 385878528 863732121 504917206 892955980 912133409 965034466 93493354 653800808 939524203 980751912 148077752 329022492 131566561 493474375 251579755 539964653 935877163 993951020 360520944 750236672 459551565 508452814 243133683 869635595 386371474 456945962 288196168 803624979 582671256 919906449 710881353 926328321 629267399 727720716 624804808 918481447 233557519 500101460 323848689 485198872 886273938 927609344 502458615 880437703 5228635 333896994 801290475 804840760 278925019 471182366 109139242 159947456 536095637 636025988 739971205 801667123 238102737 710882985 140840586 380601790 811705879 873428596 103032700 156149534 456495218 930858641 665670121 884027697 120769780 326652333 257473331 760283829 177124482 871420772 440216854 464236140 16388800 619198266 960109106 980974871 948224473 976423594 660218830 779413855 232245294 329634871 401189341 530119198 509302455 869106105 201501550 915541833 264737645 397445628 194350622 484914028 755466375 805330713 869408657 972307638 902180807 997999697 835991409 962278812 621109499 651076041 592501424 767760093 490205844 831923050 883221665 940320716 429477231 825275337 29585808 577426067 439757626 643169295 531221921 920834594 846146073 944956877 895834460 913720399 549054814 751874515 744505063 746939050 602917668 751687449 770088190 904403868 778692962 801576322 450891813 596482158 764501279 969094654 397199502 603079065 875906284 949595871 599397904 788213549 876859024 896497487 689580963 888171087 734709151 939491303 139430167 626958669 932643373 965324211 149272122 165174831 17841218 910513534 772367028 857368659 938257411 975825357 15345987 824309370 883974838 891726865 978786658 986827683 63694129 243254304 761656575 810351926 579206658 709561873 103202783 110247753 846960983 971260359 625406679 693426890 478207087 589187751 934987712 970501760 672307794 680683398 149130630 177437269 877874244 927041237 333576430 453312643 885539253 979691814 385488343 601574490 315972648 340358165 361924941 509106644 261269590 928199556 424912252 795092697 154193931 826866050 131594248 358089001 312068487 418973959 262125150 689524115 164432754 511693552 51458207 453545902 625042616 803785551 843373325 890494214 674486747 817090626 533775141 849482121 132447156 918002171 871144852 923795624 667573471 812626970 527035340 930927624 855373814 981606755 136035454 501590817 445153755 458225426 167255068 939709227 935161834 955512385 12493844 903654766 317505691 701774598 707117975 729336004 371371756 714064731 621562730 649520600 930949593 989816717 647582130 898098911 628012699 971533571 45381577 368872964 975396565 976210956 451930902 516389850 665516591 803102163 15957491 655709148 223012140 587060832 859713320 978947670 826219600 964450992 518684909 667011489 570761371 714986179 761976695 942711274 708557680 897836142 660017909 882324329 48870366 146172325 536142721 612818081 543577644 923137224 104152478 416261240 74265012 941605828 601942892 784948481 776497321 840612353 159748955 271228279 396795517 987025915 258947319 477044900 981623616 985141727 580984705 694175171 448183521 681916764 125066788 449695329 661428626 709412667 67292854 219112094 671820145 853215593 289965168 734871129 957587515 975570210 688134952 880838869 238156117 846113800 148053717 661257928 861070369 926036193 5897117 130172445 545261950 937851127 176921291 875149798 54526136 664646360 947711483 953669035 633286646 900919594 428167682 997059459 720556109 946270190 663149574 806739313 336987476 629288762 184629082 787400348 560918421 880434282 751316612 833663813 862769552 955469245 536253791 817790563 196568367 639376166 996801874 998977382 778176557 883839109 743037611 912876179 897531767 975814541 324991312 358670014 534075895 588064216 45594761 247464769 47276788 313794158 419958542 674604565 249080686 699567013 561714546 935261033 343581748 466847133 456356380 880245629 170841576 807910411 645993524 885992928 806201309 831279222 152084326 334669050 717952489 781924964 390597213 476786524 246483589 795765761 418901893 851280112 652434897 812575160 197636944 352618050 708353474 957945088 421335835 438901484 334054706 352572540 87051122 335107473 303295862 784258978 11766991 419564449 250871407 403981404 566913751 705696749 310074876 509126434 640425502 939463331 678303936 771074780 153835457 675677225 346738214 914245319 465233280 936273778 928223403 983978026 155978562 992680696 30689856 849714813 487763339 979646899 478592950 958044303 514008655 522674563 761511537 889271744 896734813 925917178 168602976 673724534 570864891 634631500 711727345 914930015 983378446 985536825 753875056 851274170 217098422 694054885 969657530 986190360 280630388 571775254 977387930 997605207 897664218 909912148 523559959 598421967 50863529 276750165 685627869 745916231 823444194 840228677 349652271 937064164 918514729 938552075 511657380 928574929 699202393 741691568 402656147 662475023 79058895 584011757 730365915 886273035 554720064 886115837 303997751 759280420 434259796 819792482 429855307 521075086 151309507 829276941 470272251 483146797 58652196 582897716 895182536 899452391 822716468 894459339 147615089 794817037 403468997 711408273 740981383 843966599 351682376 547583711 693816170 801674853 976935735 978223909 407124358 545738586 521386675 950349924 23630760 676272907 661781293 928767988 57654191 697576311 108936070 690523972 860535228 947647250 831187012 888545451 176014701 572553771 793425486 962049838 665820531 985085198 329209935 870909544 448271834 894814047 360069838 936003351 516259158 751556814 902599843 923444619 914886219 961687747 390667040 700374560 556843476 750308987 631460 93475120 86275540 689594504 24587931 137111081 774082783 876787075 934129727 952742111 116018940 257525569 221416886 429574699 844357403 995456852 999651971 999919146 780968714 786474714 418708966 556582694 925279172 997794984 388650327 665917279 694237591 812754788 407419852 974490599 288175746 691822083 344799798 575377495 269139828 739537531 222575807 337431349 639037853 717907953 34741867 231134788 950327439 967059334 790236547 981652809 10096405 302884422 170815047 879786349 849287738 876345819 620085993 621912475 856145510 994127669 161863273 526295446 737349435 979735162 888636991 913145497 643027837 814697464 899615288 906493550 744252973 979548110 311200511 590105155 24331489 402255626 452123778 939191314 251533828 434705676 572942773 583180137 821125027 969355858 767679500 911580507 766884593 886765346 398271966 776648478 916444193 932576085 289761687 295103655 176711252 999151657 250510562 829265802 782471101 954764367 768954879 979184141 376984388 443979899 130160562 252317128 719607114 804287738 43319802 369342427 809343900 868714581 46226637 333633038 217035112 898830837 86852578 361699807 157871809 923324914 333568760 781841899 980911864 991051176 355513862 721877501 343564457 463377994 46975090 520856600 893251563 970723659 216722669 337712025 635280907 809685977 771767381 966617700 612213157 799991641 176703709 552602904 54537956 508579320 40379120 814143591 633231342 841588859 55316306 892438381 668339249 908896729 135135263 199543538 942205015 954536878 683571873 973796197 447023293 675813008 439924524 764008298 422488031 481763514 126023387 795824197 590601064 711874735 494810219 502410519 944783498 958794251 722615557 765805478 604237587 623268741 4558946 894715113 240393230 435335366 685263688 857893845 431373554 963020139 844512424 963285318 354588392 983695779 928315055 971151647 952702719 971282488 38436498 704502768 808664606 835677204 314726532 491612255 764085091 891581630 194176398 732334405 670392353 917978184 445768 197830020 39613803 720254763 657588732 747536108 109044953 838388002 66887839 653739839 465751229 593363092 505627953 986190471 509310473 722894002 899270857 981488932 908472325 943652327 994940797 999036312 407226690 559258883 28466114 548546492 624292179 781166256 438871323 765432231 125243261 965857670 635262892 730594515 108626911 337697875 568858485 740999554 137297972 784480706 80595373 409468549 447537357 754276655 478224342 816692726 888030989 974990524 71471859 433305543 696576832 991776534 353098113 381790512 515695290 854343271 619876978 767509848 603772300 745780917 654759926 848021321 522876936 851455316 139476636 378078435 632478117 697242018 41503452 303917767 352693211 893819950 174725393 889467459 204592765 923181105 165228156 370086912 655698688 923704337 260227711 358351238 548533216 723718465 933066247 955403318 286054042 969915234 417912831 476973624 71168251 211081436 716824247 814755938 244740981 809947944 851644845 898276458 783782703 850214293 466315491 886670141 437289496 912261347 482538912 597174015 765016648 992289700 465312135 693082461 904436738 905107554 427283269 995815720 370887455 964663172 18170571 355674813 754343023 994863148 249220096 514702356 345452454 871659961 511073930 554064553 952809923 958195009 629666998 738641866 545968020 630234532 680671864 683774774 221653643 857768736 383352730 930498956 53917154 365653632 721840334 789490905 291131945 865044930 553278185 747000634 953276667 962087413 727599542 751061435 750371837 817196763 618645814 709257664 444962856 701742661 725788117 751533523 682258897 762191080 783572602 964987285 179776696 523299373 820343940 894804958 136769702 527190727 908896368 939833590 703864342 891444612 214282505 591033449 971956148 999161285 195685699 441297034 848579688 960429085 690226289 843899517 57132519 470163184 943405927 994659340 362135183 917722622 717587728 967367980 694093709 909680685 629340757 631632098 258865621 480176293 121201734 666592866 155348449 437139712 99691608 657049318 590299922 888638668 332268120 657776260 417298747 522687514 931653244 957552971 316873312 608823255 705650383 824252837 816770854 977372865 869707527 890626345 706088213 751600760 868567971 883559325 613816502 837250919 132325544 884027229 36541620 984948432 38150721 265542178 774377403 937111638 383606435 539734990 669874456 718509128 854429264 943930611 452147839 496906559 486016543 595682488 918532495 921986495 329423187 575265063 756560859 825442866 469311449 802166912 714841218 888963694 707837401 916298466 428948481 581785563 74236295 573612595 201949974 221156163 707100092 730032930 689667036 795275065 692174400 820657599 801792547 903617674 593173079 725961206 31266808 77462982 237654800 475599962 649688624 770565245 814415391 951557427 436872790 510213308 177202841 570548369 389384038 948922759 662030356 952623194 894346077 921970838 277509915 571194229 649772824 947823683 368620180 933780644 318611536 879193940 46776632 97981223 413825107 967990536 662586211 662873749 333367994 981121165 316921517 875653316 523303179 573494660 316469463 604204927 112916532 789656642 164668074 902011191 403817975 729656590 263299977 740089014 835441419 980249321 864686445 975336954 202311876 731701010 640185735 849965652 608072417 936104894 815134187 859025780 779244981 849715414 674286256 895089689 81238285 851571171 484818955 805912798 412230698 655335004 518225330 777067713 216727401 613077037 696921798 962376982 928088439 966193984 20585688 408758866 470826547 915326928 150010188 335989534 170363814 179993848 419469479 638468880 430052417 820369584 771698156 969709349 516982435 841007815 567656004 750786178 185728658 968848083 918977742 927406282 754528626 976226422 252615955 996662716 61199232 587250987 308994688 598592763 946406549 966397340 32491248 534301890 942531197 960285702 772973109 981611416 260882345 705285305 597206386 958471605 411479873 924928383 283341867 453642338 665816814 891584980 468474469 718608754 636118794 900627373 582651443 902282429 377441629 941358507 422189372 779261755 25723657 740579990 874191649 930385261 523800534 693579153 70167428 209307594 556559480 730040864 900044954 934095360 350214143 674663980 338143509 502672671 798826218 896703267 56698520 178353025 658140897 736318525 609187247 706740348 518382178 945507767 968187772 968316604 604753714 651590077 396076939 468186831 650629058 748322121 594636719 974022056 928976310 929505778 134491624 570616447 733500758 760269382 294489618 522990380 2343270 985274714 754984129 861665212 870019542 950304245 741471578 943028443 408252295 741074871 439782748 498370495 331425360 416321112 943014280 983417262 556572944 899569128 283194808 650263520 630912330 699283213 890313277 890713257 1398960 304346960 525074355 607019079 424258367 641325597 720797378 887626900 572696227 822032967 289296896 467391921 519256818 793760989 842890898 918579561 405964648 453452905 493657883 944544045 978543214 998378202 984298321 999218569 743845061 790688873 544784358 823890240 217857189 556988912 714386374 825794334 122058351 863465466 528745227 749429171 850351001 851288742 598570954 718727939 448776012 670854418 366459179 757078231 745357673 954730387 139574080 664695808 678179769 836970671 312548367 361037408 295201746 335312158 701738234 957875927 125799631 491573072 587861420 633906430 950189189 953542757 261121958 847357897 557815707 732201223 79457292 808607404 775378367 969019093 293491143 323116587 290389000 951183814 558971685 840430887 442914629 504104831 664151322 724483952 115025430 388394138 873051975 874071013 114626414 399605844 736026205 746217747 166427774 567016851 865739147 941465811 695039503 695876001 658429311 811755947 308323543 488120080 999614545 999685215 856806866 862304755 580380462 918985145 926071775 959355750 576846955 829969259 800947806 914709917 336497251 918783322 814271914 876650957 192990655 650350706 383402315 992478388 222554660 763933448 119102526 349281252 776577819 872117605 582344757 729219887 790042777 836769138 573046039 626894598 532394074 944508743 730188087 834782427 588615764 782343157 471923791 976420478 728095811 899273379 916336925 993724367 470394137 965535183 194187774 485298716 197896850 776171730 417952240 651660181 809978181 969334320 998764819 999424943 427301785 956207374 994133667 999060732 245156542 614835703 867660473 906338475 715006097 852965745 27322465 224388403 267099485 430047502 375385231 647293083 826188668 860929239 917534912 975662948 2828258 740463133 127962692 938645040 431135777 897741912 907262600 910298563 792163772 934976884 828360248 922925500 559443553 662309964 519110415 926833130 83250777 718489786 987530604 989451027 581626550 785253001 3494885 429100567 955415926 996913914 903559974 927058859 405468575 840182720 410397239 814380275 389761209 715821498 247698956 722732695 276242885 931170307 180019915 542812841 533750660 954892172 95441456 715622798 841772022 891751498 221706326 722954133 956629987 978838030 396737707 979905831 535256356 979431837 184693150 726617582 612603107 773457989 70277969 958199190 660627377 874164135 705269985 847768102 979431869 988980931 365536069 473027209 407555407 589810615 384982565 563106150 493985973 705729922 22175696 768283122 539899666 619399124 501153984 530811492 911365528 915343446 142231655 159730411 645748567 944403913 787028573 953396155 505231931 750140547 245266562 358751490 395611997 681005376 413443129 695600454 92481247 113469537 553420763 740494421 96173650 268756023 429498851 651920121 484914896 726969572 849870166 996278129 228223116 492332287 876100022 882676864 727587697 853985477 803485315 900613224 53547631 644620621 92774605 320668390 491576273 757903510 611780864 818599510 324192543 546009284 648447858 750071921 603322699 748123878 257394773 875610962 248210474 429031756 90707750 542550888 507461920 970749522 849499643 902338939 190256924 292255658 756560297 885380400 499868580 742787403 759116160 986785278 207041546 685683338 520052528 679981319 454534083 883244084 176080621 599047744 416764819 680711531 295997349 840724960 780601234 928265729 988224212 996536373 422816829 795550537 397062810 876269730 765955948 980334725 237260846 777627826 318780900 732816688 691088907 892122235 907926279 908969254 90609959 637393177 683474931 687221920 985552675 989265730 167402844 802665845 63429117 701498128 131387032 747035427 644149799 972202063 429563747 485208051 257790842 916851716 694613449 714495009 690456022 961568529 252562119 797968535 98278175 571939406 984313804 998039031 592846942 789172502 95640135 696596386 350017836 750959278 615957932 747126276 684044006 773369190 907001167 934994103 26139279 85355225 770526772 967765577 434297259 816914496 492579293 614686918 251494183 926570481 654359834 721930999 15198441 406128336 760212157 780857195 128220381 984912542 82160403 505146217 53097485 298024598 845398972 847506844 174817968 852869476 242915237 453854566 597727273 697248482 899907041 938728332 5442232 235752369 825524409 827452723 216636217 722965355 768374733 886894660 908625297 914753078 112063307 297784219 903715935 986287675 509343765 937431255 413482090 615419078 146480018 582147701 452937707 916976345 670547590 776415075 950501698 995073243 758314954 806094660 605034224 897092724 717980927 726036403 632901441 979560820 890361861 906382416 678500257 770417359 192401276 965355941 731191865 751357345 27135648 78445367 513139348 577004443 126635812 459390247 818380121 955015158 627124681 910565658 56515292 922233165 566420060 659918466 892466541 966986189 153025689 199810585 37860817 52011226 621311514 981658062 737793195 941663288 7389914 519275026 152220045 251059883 79155583 266822243 336191601 665827506 796200361 975724957 666240690 688909928 906469329 940629363 640255870 957991124 218436314 402948245 270503211 658793452 160567824 583795528 274515953 497529228 863569173 921004517 141431013 544159706 787855186 936276338 494170902 834257294 687707956 823981637 35615265 407360269 420934027 566940581 342011366 355272108 730689883 794577699 514878434 672891953 531778537 911600923 886504257 919332974 167339405 516706818 959572970 981606870 971544954 974304303 289622323 876024709 176259966 355973992 694658853 998796981 648097446 888546908 166668352 880716680 8733590 108601402 587171358 863056104 873179662 971702831 281696812 440124950 240415965 434627387 268009815 710253829 504132940 882250470 355665871 929076214 223113799 917021208 241990656 428514735 721441247 851300482 655342511 963650199 288255863 974105124 289896903 746003237 611517780 782010622 501977414 772906766 621673077 834935295 501813097 999354880 858857200 968290806 858880531 993727913 124069150 221550142 213087727 635532715 339374455 994918001 941670760 978483945 803678495 868029951 108214450 434596210 633729170 714417453 488201153 802526121 915186860 972966946 548042999 855118191 782755649 821857651 44356180 472479588 960324042 976950444 116856931 558695541 856152931 909558283 753618102 755948260 48842860 627787058 544266996 890683447 559637810 978497020 998281276 998562121 218415899 294299576 102534592 388654316 959238677 979786028 429976334 748642843 530476059 971355288 802407189 841067941 956385726 994583780 891695839 933739435 171314658 652902888 160800236 338106587 701717945 716428683 311550220 533207122 59837847 330144749 290780009 751303746 442585956 844323804 370163125 970619772 687624616 845698632 401317949 550683862 38995285 914218595 809957724 828048472 847531959 876614667 106263781 697778258 144978375 512819902 88739007 192315354 721036275 952555594 376619183 714853105 787991253 978487840 316084421 721948358 353198343 788825642 319565207 588212986 494922376 876602264 727375029 757056092 883075805 896825590 154110756 446179276 313821839 680305942 153951018 368039459 298790090 626028484 223620009 997425021 94025288 229429293 670342609 804277802 992773710 997096031 225324032 705082802 715838472 798077594 948530441 973699604 273410068 696775028 176768070 945463845 804641030 852254211 635232750 681749583 816177842 920847224 242060600 480392119 707629412 744410354 644688771 763622130 189319208 627788518 941901117 973935722 624968461 962408985 350848188 540933187 261986244 379319317 376918134 914261720 329589140 838698710 619167760 951762206 290432406 484129669 736486116 856188252 760605514 991739537 434685743 832361121 432185130 748915217 300698394 602517290 415396848 948361013 519091905 991946783 219847188 762294834 43355989 167395262 262680770 896242216 157917812 238235440 137909657 470557223 108579628 683356240 476216934 784351757 3435475 668981867 702068214 762780544 844078275 997522996 509654085 772911266 819210302 891663822 41727792 506659086 877385621 985178823 488750752 720497988 20250206 297629794 796535333 987271784 10761600 956063206 54200061 134475546 532188352 805837363 427195500 616278868 520140301 703956461 295224728 771983314 474176914 533912787 164172117 975129359 698350978 818938492 74867094 163203596 623147143 788103502 144072347 316436165 575707442 849642824 473806690 796609866 714173843 875813866 337984883 830658686 980644585 995700453 711425584 910115575 654221018 888873356 747952683 925355599 203971476 246364866 167244857 783414542 745260063 890184423 608880618 979564848 825845322 983573965 670843703 854596687 226094746 729610471 624797914 709221622 879635769 992463082 876890794 957693101 517508069 868404648 897387128 985260481 434771259 513598495 218642261 523459384 541874248 622057806 230939660 306666404 371258142 914082097 39393261 627540135 123401747 525909857 774513175 854243164 717825272 822114100 239240118 625765680 542960062 997460664 31783358 639469862 890596821 938086600 607356104 746422362 517337110 580550382 740665572 894831121 32143754 165433964 907450537 939718139 334743340 667913002 266173990 769632955 663273977 668147893 748315913 850847642 873671271 936035833 852903090 931685553 518744296 553876221 26080760 972277146 17726000 451777654 495741237 840237937 696349105 778134842 159182988 993718216 483058262 593993739 995823746 998690880 452802500 922600424 298586025 371561953 33136640 539721778 862533797 985500546 209555077 950322372 709611698 973974525 281174123 451144021 402083057 738905855 951136786 959555651 676341293 927533491 771376355 781688607 341705218 666045560 695879981 725879786 4994563 700521648 914073156 918350602 197806749 504574989 775169946 975279107 884994468 952793168 765227693 797410433 302226046 833888529 376134773 753651650 947238226 971970770 319361116 679246187 423875187 526320485 234708832 765182110 247466695 752066002 249955149 443645351 980906328 997636550 48890426 612384374 172787617 377562297 799757176 901331868 491980359 565529495 145833736 984841234 498718923 770540873 652890302 791370390 463328252 526595721 808630254 924993631 726522191 751615799 491885571 492127075 616098561 632028856 658020841 996230372 673413525 967310902 773738774 808957659 785365927 851524386 351711484 729477562 372354326 427136744 791567130 852261298 205531533 402867225 469094809 836096360 183658786 418365583 383400368 794553976 829903001 881469345 446431498 550195887 37947181 624883429 945723448 978079779 613828180 913990707 612498068 681017386 412708084 890413375 85335450 393435783 910719572 986164295 71619373 415609699 112221964 389809034 68701942 786731006 187985142 293582894 35298780 523407868 541706811 796719260 384215698 693355719 763095253 901651185 442275478 603702542 613937635 823418552 17729505 597007784 278127700 803180517 989412694 995959404 722109482 758497402 645821158 690784321 400469172 541394524 690556609 913850374 665970890 786958319 934010769 951692816 939657089 957889361 795421214 991536024 289734355 979265218 787610031 981836120 419930883 753174289 388537943 644960752 340937443 702884427 708860606 964171682 699173055 834735489 16070147 590094299 895721885 896886735 930549068 934704377 874689332 878151410 225724150 346013036 21215277 29515538 370571484 676415163 993586637 995586861 717142337 870547610 855657242 927386209 978706606 995113270 412138614 458473920 462871657 841481453 23917967 72644261 352990234 729025076 631237043 676778825 934144320 978412096 639239907 759652692 185652714 541886189 850048007 988028166 308355712 808399065 621126628 940932490 134622688 556224300 340025563 879726470 4220900 589072778 220071228 385001349 316436346 452736275 655184503 741680788 913484566 951955484 900858235 937044692 887291883 952743271 106378627 744392872 526376516 591867470 805487879 819017648 121888441 329668620 861967463 975752234 237621780 331410207 394486313 902866337 808159394 875631190 708155181 771886897 759097785 996256623 210186946 785925890 867228965 935270834 901978245 908122272 279414821 419618397 255829229 268090099 885086214 910462629 453866403 955465310 858395075 874895331 457327090 946247058 321084508 416279826 640813831 781133525 36731704 430944455 151475288 509581816 506485185 875277469 495229665 603779334 779857418 833183357 253477979 521785494 904558789 929398144 950712846 993269876 771685196 897944874 828695979 858145477 521469289 966022858 266593465 467979544 305107583 925366971 913366782 920831657 787648255 843260680 593540958 929603027 761848905 908249047 890536681 914607733 346304808 709247850 618453868 646684732 100671076 229488381 782960968 943287677 798858963 863233479 338050901 732862879 294150305 992658819 580479596 641880276 932315629 969411341 897838542 934234173 609402125 664796036 326248097 653641128 947687798 991743730 363320290 907965653 316320938 824876052 127334320 664615454 62714623 887304328 358784726 875357955 518870603 999170797 924093031 926424257 585457162 999854558 152989042 913205849 795389343 813190820 869072805 895595689 96098293 96707390 581788469 601888357 327019142 770980122 439955467 852731655 711453058 998519404 487508510 810500185 78315513 544049689 784726942 928678339 605423097 895926422 407188159 930617817 41694940 540805665 250396423 998475980 376452656 789039743 544799557 602793522 713556132 962370799 869897394 930103102 285588741 392390321 670942844 888354623 242251549 346625835 126805845 717942656 664445633 865358322 414169779 833877929 865406984 968654105 142773525 722321015 532581007 677060359 342718421 608224537 353804155 990988771 668838206 982851079 891136458 994028820 682469198 947151741 680725381 701620851 906007052 955570771 525347591 893808130 123040728 137658748 442727458 727698478 835309514 871086231 929633843 931579373 261801474 770359479 855256703 920320245 66611944 875401611 897913563 960513538 383174769 969991034 818812536 983214883 557988509 856224476 535516280 617115571 281929767 738576112 660758559 751406337 403659093 536935735 232822198 514504696 143853950 992424870 245384830 628846491 102378857 853139642 934629815 951298889 868149119 905917905 639187214 842957018 107055830 626287481 868518515 919652340 794742826 838779835 811280711 932388474 508967751 547806879 843399276 861005996 946859552 985464524 833188488 874670355 803941907 915030839 288235584 653198310 909742618 934682495 343517346 685891863 688671439 702422238 762665365 919076168 451846262 546654933 891691234 968065902 224730533 869554545 751016689 969416569 293663469 897299831 510206214 762017032 318671742 372653863 376462693 954919931 740623512 773239073 319878820 610396934 992211598 992446675 481548815 832343278 76833840 458523417 857691463 942008364 136989563 760517462 732297881 846893532 326469455 597928702 182521998 974085097 186440318 909874591 100789327 254830610 472562092 544610020 962440283 973141496 449076759 650752735 23095245 544159729 515527565 997773161 906717627 984510816 715427772 927496102 152978823 852003280 15447166 628853848 982642169 988998028 622787025 719912933 445236568 953671098 37177136 516252519 240653489 494596837 632903572 811480596 914363779 921063986 439327633 723505098 950725652 976371474 108791513 882658703 433473853 867211489 570502848 781571597 535208867 536374205 575621539 769517200 600720674 771069242 529521686 876510788 443450223 965172934 37875671 88571982 820387008 885083926 871467278 962905190 226678079 374602933 781796015 957664576 513184247 554469301 536908968 606185953 380146913 684534984 630481553 988856097 455211690 862436466 167758561 845199142 406868484 554681246 651239886 811355218 516736351 573092028 168695022 420020918 934875891 958192284 866821343 971594497 759954563 958279986 581899514 600568288 286833002 546494670 41990166 108732027 81568333 157238584 934138450 960678928 610037142 697586390 984470402 996311965 191208924 810427228 968844488 985310820 393350601 562702668 278525754 473286153 390331736 609496069 604797662 645577710 128292951 425027244 899309762 913744569 487523390 565901991 427633835 792500077 281755704 816301089 730633542 822470151 979176976 987441392 296061507 508047063 336078250 618758286 46482511 97269696 331924519 810947489 77386724 522746956 715181153 807444247 967333223 975117789 636347100 967701586 522442071 599997851 699040891 998435220 9510753 698283473 866230898 953559265 185860694 240209214 689014920 973803340 671708237 878507166 389950483 604014052 67210278 207962363 264175888 750130607 851773825 934307308 712614103 762922276 577686147 622402273 294131002 815976832 115882503 869054496 181346712 546203223 795228487 878449884 779239127 817292971 34540416 772369208 203434844 615252524 687347240 844159600 930363474 938547999 44352419 353295848 991913926 996429796 654608973 872347269 420648399 445480209 378159754 678684791 292011713 951150305 571764066 949055496 668446720 830086211 266245707 998811239 369919604 392654546 839314958 885652934 165776898 643464230 212587127 722092509 532125957 729026043 534386065 674374473 353085902 396416764 534108858 567733823 93740336 214902667 246369032 690078212 739255130 798749272 646086837 859452306 444687498 634543054 796644513 982003897 352195886 908003717 885975268 886825219 889753911 952422402 828979514 878947276 155782920 291295990 515874107 803398037 664411163 862362502 576121044 719479390 619393919 983844140 833669303 999411244 882488681 888857196 579388882 593040517 472772592 569142068 18890924 187676586 274636946 306411867 439539293 495202175 196458960 853716585 959609667 960348902 977428270 977701004 729172821 776765882 458949392 511908747 76977587 597910879 886925458 980903402 511693434 711093463 943789452 991023318 444970971 553066570 670948437 885800823 430707273 818149908 875374043 964588740 227624557 734018921 788645909 803369325 501288714 812449839 138888083 257547600 880719153 910712623 807206049 831164831 316510808 597124284 350911648 710741046 248679006 575089775 973125264 986438435 352813780 372752925 221538679 224832371 67592741 113750951 698370216 957935576 305475955 606316445 979557474 994854068 717048609 773502746 825959823 900632021 32581450 206871774 305506185 848223340 871568472 883180631 179311067 792814891 269820318 598924174 387558907 997431186 626716833 683307057 824990470 924953000 457195674 633180136 464975986 893035563 132736088 233885080 163976817 505229920 929487950 932959674 962079254 976192268 542992710 658604294 564280815 678375644 844754852 923066799 943554541 979561876 731814282 896057387 680736928 976233439 982320091 983452837 557366974 596001873 940411198 996964807 175929245 216121868 57601649 824575113 727671611 764506408 421873311 495580391 519511834 603813863 690631644 711497743 912608890 954450949 5541169 42534971 68142821 288554437 856716265 954148999 662900646 869340411 962452210 972676085 335059271 941229894 1636057 378251067 574546265 876999218 175606937 268284142 860301096 913543654 773198841 787220993 381730231 765149887 43260161 971460586 169776532 758181119 219999862 687019003 225944812 278714601 810667837 841362480 457237199 689711059 378110255 743248914 691630785 891904189 686151039 834914398 440545158 999735645 84972134 252633469 827251424 945576909 217659657 904750195 84254699 385367656 34369813 954051306 584405666 785761536 159077085 416362646 42712576 863516951 671644456 720362801 710872216 949026523 882150133 909184300 828903099 989153535 207351556 932468176 453889282 922992600 772065775 928443182 686108487 802933757 15319839 935063125 995800973 998232153 920618709 927380326 132829251 876758013 810899098 856026542 814266402 901576724 216912163 393841580 605970672 835167689 307319275 334939747 943412261 969396815 856191589 871090798 647077706 668369934 539191799 742786363 213772662 973430307 407853109 670447318 871508731 875908852 489245687 815328668 649876717 936099951 884303734 926248782 100968117 608261463 845362434 877548718 558205178 721340500 103268822 257669429 774412186 830876756 774114818 894260065 159280618 965830955 131042031 936958219 953192601 964348706 487624183 574908438 812622806 815077027 452151778 992760800 819007476 882249591 4952940 837472243 441345642 956091146 477166092 704655959 231809613 552518093 588587934 997958079 994525695 997943804 515653941 914614801 941017719 991443529 214141167 330764909 516284498 634936389 931764355 985545477 914996249 995133728 247744813 783205603 255446617 308863560 555673568 665389201 91315665 579396434 327420518 932810362 846099092 918696306 374354209 881999983 815450872 894464644 450894843 880496392 922321998 974872076 297474204 377634784 244615108 750881494 370168955 541279502 563808667 993142399 380204814 946206962 550643688 944931792 283479215 984041039 411333003 498761524 657083133 911378670 928423667 951054352 424177413 903770896 901541682 977450913 328291671 720353905 730945272 859330791 737447664 853392040 757715149 953592881 584702992 972269895 767225573 963943500 313908716 810861371 616232654 869994263 369449943 824198388 167317155 424375551 348347616 730922595 814501292 988411334 267991528 623143741 197852701 831306709 364323910 709954292 72299892 519754611 212507425 546520537 868022680 902696664 23596926 560824961 196664698 717780512 899900911 914028924 727763193 863286442 204199307 522759302 642030701 852263716 304754913 731205719 861137832 998913228 700673123 861377412 968270427 975935604 365868088 879875682 603585069 648862977 365344374 703467581 411648269 633215678 290780895 615903815 897459842 924278920 195595493 851986704 690072252 694168055 701173626 703795082 81137577 624061805 218840001 899858720 770490638 863700432 109427855 823972797 467290822 519216032 254241444 522343884 849232700 922735498 545033900 628118931 736118164 807512128 613974196 767508555 844101124 998122367 387439398 912485662 861753852 863861784 119835305 920742375 907688848 927574435 665622232 690703067 816913217 849350544 951621029 999280387 967320156 971725680 165819095 197086235 730637456 739134806 161090141 817219821 555506195 885528120 69054576 518192311 243722748 887375839 88798820 734289595 551022430 682925682 452274330 828048838 185655450 801075256 644279775 986247019 90698258 504696953 604562885 618637829 280398659 682268934 710393391 868182195 234517627 970762832 316163150 889054863 268870912 400459676 423682366 880361167 769731742 903659807 532307158 674135053 682109470 981025159 658244877 772644602 763800510 834672561 434442841 568634526 395811785 538029864 796209340 902082298 833228067 971726454 23546113 472290284 274697900 446121917 264023798 401499725 324673369 932240302 298479601 656249877 306794555 448239827 300017331 730354143 917809426 996013609 507484546 855284854 217299888 844373321 333430194 801938662 671511184 941594889 557263790 679730937 688413777 710838481 627857939 944303458 329408234 859853931 750863142 784309096 784874080 969600043 38189374 319216485 191989783 377748449 462243886 523808155 529969589 857812507 631222001 913115856 819735607 996631854 197989198 877802601 17990284 253859143 11777156 323956145 931325869 940299033 574602494 886109397 738929380 884840664 519938176 705266307 91302658 246811381 386104407 720501468 58342329 809893706 714262885 836415108 420664402 879466457 729927895 853706012 58438033 938210835 940920199 959557644 625145342 814158844 30662441 383884286 48255202 235856175 440757328 658552015 757256088 818101308 707804341 843768768 882584346 995890432 737657522 904474745 128320291 724811858 530646621 537467790 41938071 364486395 51860368 598329287 753081537 791011694 814536850 952576551 114361576 898704561 689437309 868099588 997585638 997950990 963810451 970467341 755847460 800677960 471085772 786332493 870526337 960378933 314384952 550767874 24933164 674461773 280188626 340554420 631697460 908606399 229206321 532552670 788368036 821689426 194431425 614483646 311859498 316531341 128086682 956501906 789173754 932093910 907128108 987652216 337691322 743715045 846255716 968565114 802020333 973202346 998808371 999579459 69644290 141703947 905325830 915572612 835937969 954217158 199466524 890873109 333962931 476426275 904087617 986298100 813086581 992707459 289182504 510596714 714737431 789925608 769382653 778286383 588613111 985793802 230607653 671586581 561443540 838537918 82857241 598897431 561256758 618077432 334891045 838645148 417122707 564365336 283170182 943236988 973063203 994308419 477531901 479606704 571055384 790463930 363741148 964800983 534038433 925092411 739358714 989238208 400046845 844180180 92227514 381003869 439831683 925124801 866318208 932961775 665336763 890260007 946123320 983412761 238007799 880182032 107850291 373264887 215159861 399290279 568463831 695401500 930732285 934461040 93804401 282900580 75257100 996701295 126704728 675602696 115365044 392966892 389293915 675247234 504617276 726636607 621284940 844356004 711966833 875766647 189522925 367788463 970837983 971137599 860632366 904400917 172556958 864098251 460976144 681766997 621927733 692045004 963096485 973819952 617407797 843132002 616105157 785544631 452528899 957559439 313973208 821020751 168918868 302856996 83137713 707398256 939238121 959725489 356706277 943431038 52304807 919445178 722179290 998014656 502383243 548404781 854178597 938768816 238955803 692049342 367287544 543320776 997052656 998200746 538330017 948324097 397015601 686545490 188706883 649484632 383279519 543924013 414307935 477457123 614318401 849816912 268446936 577108823 785663525 876402252 120538769 736995256 798792137 956672578 469454282 555553733 411990479 919536002 936966197 990656467 774852116 870365268 671204508 756130325 757562346 770240201 31318848 947706429 382488596 420872348 421182937 979936407 413449807 607837158 457093345 896396664 936249256 937827550 468557354 571804047 262942164 596836593 487198781 503286185 114216770 822461173 705285790 947573287 356456871 379071598 152079194 466399079 255592714 530434411 262008156 809764626 845030301 852189774 216914362 865420766 751071936 869811142 433289449 787505863 749153644 924808068 354668489 684222039 76024307 937352483 657130394 846818199 497595120 511138349 966685474 994071389 392233507 978242698 810350731 909579705 21705100 481726691 732797035 897788162 171097364 206352452 512408993 651789642 831469106 897733922 866833593 949662131 532873782 547653672 875691814 967922404 90902359 823878120 66287047 256867965 91043654 174009355 598600560 638795300 660666072 942033856 369045098 753985715 298537682 377708492 501283385 604580853 67760596 322130444 627987546 732944067 432128888 780436116 345442363 851087623 256498430 790462587 866455972 947385299 448162971 815552340 51667243 418611397 603850478 963125238 704947748 988231049 998342016 998612065 597350785 646391495 341200801 722772351 597974202 651215576 631913125 738372955 31325155 898791642 554903109 692296545 526724001 970369789 862910666 945823266 740062771 741515360 27347972 791087518 867152353 982665489 592463217 870768296 557133839 768425064 860381296 928797609 553255580 977417388 713585542 762987962 236685632 635777844 225533439 825051222 420207302 536105801 972114393 994784548 868679660 969929270 22049308 706368063 978298087 983833820 556302182 656576196 89371346 173774714 218110831 316967038 903579451 923770929 821176823 851666290 140204987 457861793 743907176 751217587 986907224 991291952 295666638 383752856 586461103 956428403 846072266 851213438 542230908 760772517 879867719 919312636 965118173 975534716 201729666 654740990 913176386 997790212 480644064 492181933 308994238 705922819 773577539 847329475 19547149 549145385 530443233 832720927 808978333 856889754 653897185 949817654 612572104 763563938 864064637 901608221 939457971 990007506 162659274 384348895 551099894 822151248 597205542 704928858 16752613 615760073 846555867 882865935 157627023 502079444 690944806 833215323 643313417 722543122 909886961 932065222 185928721 390103361 400846625 447753612 59494417 719813424 934135575 977190743 35739806 916948433 100069957 788501030 452305017 698200190 750014387 772894801 956320765 983720635 335063563 878987863 694297703 939840959 418612497 680204169 497138751 960585886 675107273 762063886 964543976 999019522 426871748 992926029 502425816 985218300 533549630 751102075 540907618 543391451 763123573 925670492 725560289 858627679 916354356 940648414 387566789 750705492 692079383 937816154 244381354 335936484 979677518 985483285 8612600 762622609 15355006 70305761 475929356 885339390 672207585 990982681 522066846 872506033 29347025 593866686 168481674 797286272 554435422 776391206 424322542 765654284 336882568 732136916 747606066 974298085 555876444 611173454 584920766 744206020 101694827 104311011 847097494 913337709 205561769 418849766 60907664 645756779 205188655 221963904 937022753 949741503 317842594 959072883 987369776 998692759 954586429 977600532 693635596 729121705 637906996 993195568 138769072 653202653 761533622 974962123 340197089 588477960 689957371 815715517 927402248 980842776 267648061 504347906 134228632 741855686 710315687 999095877 650566651 814243441 944814322 951973279 471964258 775281498 16070665 33361585 784626095 808684059 519029470 852586405 51671762 736641093 140922188 643665120 851441843 995211231 998945402 999388220 261433765 897309117 90520714 318227520 448534135 764729048 914147916 988825574 697100834 785678863 57934839 431934443 635139532 725390325 399381287 530162016 739218174 898945684 498958665 935212631 119981910 830548894 214261671 895314160 423361319 446599083 689056770 824452611 643616470 705890377 123485533 141762868 360493509 402578144 405744615 625536950 24163362 493449424 511070185 866016914 305257139 453437808 242590935 680104016 511074705 600393697 67742916 455985875 121477347 571910563 11636836 229502569 716517331 945945361 527182121 908516322 336620614 975702788 110957848 960485275 630999745 999053746 421164176 635549574 280222570 656497566 163833054 643610545 328189691 459342977 430909759 508914474 593186514 924764713 677634978 740214928 435351667 603072548 284813557 472868979 970887285 990922734 846612459 866401630 968688295 989749146 639865002 910772827 445966634 552347964 213924355 276229661 506275085 742614922 368021051 414894790 706846333 850532887 765566217 809332149 319167447 798016852 872722705 958727445 929220628 960795549 77981970 714047459 417872804 448438052 218646670 363635845 821864273 893641980 356300366 573807099 65202049 513748982 881313269 997206530 875924073 906382589 716599809 811466957 242274558 336897240 540888552 611577797 80839417 345116461 850776910 971607113 373853746 724005734 288020592 503467775 970409097 972784055 876681055 983009102 135235190 232313317 846902845 896372812 922051324 932573666 560834268 731826365 650207727 874136892 657351668 937186108 593110468 719164172 983433860 998610478 852985923 992547650 547228646 615829571 215542709 698177359 363976963 885819961 17082916 418354587 958285282 973552096 109853631 440221564 43375165 463646429 42964038 845752921 889111572 906047145 701402905 851899863 402552718 609251386 205039070 565959475 191163554 808409863 777348366 922912723 137990908 638906470 467278421 493271043 209767691 307724635 446187902 707062804 934233972 958028273 20995599 232807034 552271848 939434427 168232470 286659170 214736846 608645782 384793822 702696436 435671593 682536666 33968119 476136248 397893972 836380259 454426397 505432676 532109051 695136392 869305176 872784800 424684470 846224175 967073969 987662803 4436756 961561629 20336229 779875975 121876893 232878272 353885198 535021642 188342571 996490031 619742928 758952718 246243113 520543841 779660914 990087404 311586160 776540001 153194602 698234131 27116218 718300103 618538865 725602750 313786085 939814025 630663924 921501910 207696672 745768575 117869152 830253294 61467597 117973838 994279851 996150564 225170140 992872700 239749088 877614456 349111539 763551371 833026307 973641908 334272296 581136317 328011910 631423348 707980389 809428068 505442951 704972286 366790748 408698506 629342126 647589770 589943488 674699123 760487305 932429005 303682036 470093976 16661017 974199119 1818883 894371252 297838285 320688480 983367103 993079354 610925169 860380608 811394154 998500695 945700383 953116113 40889505 726689620 826248405 951654579 831889794 941302710 843219480 955334432 422900348 888797400 805265526 911656718 493711256 859899924 337584093 835878000 19491708 228190617 289228197 870409460 353490781 944749667 226563389 637075843 829306452 855525172 687727531 801283641 195893843 487413617 717538223 844624334 907742623 975180319 287395533 316824631 882520777 887157252 652954000 982050455 140870597 683057971 6507320 73884336 636800976 712240614 472805032 814287536 144055908 623719819 240583913 408878326 739369837 994972589 674881900 788642033 497748740 624739932 243792740 251219479 505253073 526523069 693182547 884672853 325261593 682037634 526498329 704906683 476766504 764423899 13497091 720891469 811194881 851974305 494578887 514969042 930946450 936946696 342291436 489208212 695225743 980612207 396766781 916713887 533899343 604641156 513289181 801342584 890561313 966571066 836706310 969676578 165804618 915178339 907246723 973349434 744154277 786453876 961041492 998871423 750973974 763966454 539489895 792075375 747194831 923695393 758649625 928282499 613964478 753326560 533528426 632577002 509850013 935898984 162141284 818530187 9124007 684403505 640695178 716558582 875158375 995390700 767924180 840423147 489335954 968041003 356573638 388383719 547389452 921649128 57420201 310784170 528319243 948573530 643691962 912686741 196398694 826535922 388534122 689662677 589347669 756457724 71271650 99248997 740613633 944976196 214898407 241847184 134107731 623715027 436508861 491805252 249694076 634470003 825648597 827741093 423263779 962052505 901410251 926079877 906606147 984958248 868033718 971030040 356185814 473692531 539895366 594879877 596860660 939082247 280978161 694229049 406669331 934920609 106512447 275152966 648325721 907596652 476324512 900044070 346014417 701407946 433405480 701351193 342629112 427734892 505999892 536765075 377811975 500762392 141845277 797841632 804542354 960926780 504388360 542100564 909751240 952081767 679703876 985986410 331499606 704485969 256150731 917487466 912812780 980676428 983946106 990908583 278402400 794352067 991561635 996364780 166523499 409138290 622204190 774450718 212331283 386587542 47575266 702739100 118934290 996641045 230983470 692356391 545517897 840575320 496005852 913639936 186760007 350346163 220458137 892284703 873949610 896280589 686681077 764427917 300727244 459283386 618233393 659985368 950298621 960272612 431519743 667943992 187600179 610496212 243578806 452065910 149042850 661885215 734505303 853515946 952105290 999597917 161674207 382835491 66980785 692328386 913709161 996723145 241753121 724736498 209481889 584876669 193838057 916217874 563954069 671764293 591767355 916885459 640396685 713406518 619708370 762753539 732102374 923800815 405650599 704177469 930316293 990122761 996819428 997662072 551582389 818078019 888661124 946292579 378256031 972202303 262364552 998659368 725294889 726040111 673343695 982096839 958920718 998794303 119352824 246978632 810430607 903938662 155195056 516448646 876376744 876388684 289309022 480923710 150273715 387591389 937986822 985540079 289676657 629251717 88524001 550208409 302914591 699712180 739796915 927123949 820155359 848991842 944348732 956518283 53247060 783609878 549350341 562901974 502099418 702708032 931985879 949711607 868980251 871123051 486782728 932114681 585824358 745414087 636565298 800799174 19939316 144888686 63733028 344078201 443739894 733930034 289892441 958659818 555561073 706420741 73483876 873338483 975673506 984514106 936769105 946824226 112280158 590176536 747980220 777397970 829575182 902058388 447693926 901487007 825483330 887258120 718234167 827284470 521497292 777961347 453305323 928251915 591655050 731527628 551396081 905258715 541000778 846379802 804736935 899071407 545791627 552764182 149700907 874180382 231932073 532115613 861899008 919399382 196472516 446335941 433461352 575249499 945234283 949545594 211576598 895467750 452143126 619546126 280260600 819570045 639021155 983980965 506390721 945509666 80793737 422941988 891207008 942967366 4003238 592259903 654377924 655927651 579616006 982930040 459100513 993920290 732124136 824105636 47161681 271868581 287026500 391893632 299229689 960491808 1462179 155834294 811367260 839484597 662783034 949661365 191662404 400109367 750910216 805281876 19714027 998824371 55580331 702132159 252364110 515553348 471055568 691809052 421872002 683988173 756425578 812864405 308592079 710066876 59472467 90993343 706170576 829055205 68368149 959473949 380710650 470674743 84164181 565760865 284612967 891038140 501037708 949277121 495653304 951076224 542421530 980745878 336963560 754337842 775874997 806150427 100089614 954921220 267533764 881854364 294271711 843707811 584903987 708141102 271470849 794858201 220751962 883307876 3528693 87138085 141519580 881701386 685432991 702487056 519590021 544795474 437668887 874274390 600688864 733851245 440610654 859499908 418859138 659173490 760347291 888681881 562304779 828862069 365568449 587927707 102351210 290926868 329061425 437557695 12474979 581945299 612043366 817399228 383929338 885309437 416939140 839759243 626474410 704333545 223381139 330195038 526173893 839940986 663686659 717637789 287159045 401425968 369078714 406801012 78446927 849880626 138392918 784193069 510580967 651966868 485814057 622415434 245928560 290207742 55743058 417731463 969486382 988567158 65942543 570511654 640024406 660451906 485251141 602778153 758014881 963280024 843938426 861626678 620913827 911976101 333181042 858364850 713901154 979225124 223605052 527675230 927723071 987131933 307443621 992845369 702688274 821829579 801425964 958435343 982225931 987987148 756265132 880534851 321280773 913881815 871072768 956207409 785996013 901646629 98516275 189822216 628171745 694207444 751145594 905871057 132166135 888660837 570200374 743860962 396323551 399834841 514173986 984087338 716108430 885571956 574934927 832752364 262315742 396683629 474060471 606237744 174356470 401740211 816206439 852670380 651260329 922623069 23854021 281746568 201995718 683901617 976429303 997673158 506855134 873159011 727255774 945784958 189602906 312028065 182963510 775883294 403255842 784173804 115273482 695164917 443175869 604200641 385058753 706339939 156086291 685903217 390495858 839373609 334232942 458503547 811179399 877679533 781647 124511435 360382436 899269922 289483070 510905646 254005586 817605843 667662109 863866894 289281444 480681624 967571966 981266000 711708340 729593240 445764158 994698851 775698982 926287627 923577622 960663906 398491217 399740371 61690477 198282498 891455932 979008843 413335109 509573529 523590382 643512803 360631644 965956237 635729904 772753032 661697574 849073887 142058675 581290376 631365145 899756487 418911411 423758849 467436115 693996790 185975718 731620641 593704733 716826945 120771686 409203119 632657424 770765369 678352525 734529148 876669239 917568547 527565883 873145432 982525706 986281701 693890305 954646684 438227512 719037772 260285760 290390492 262563669 285142523 353150254 561778889 276840986 757619224 941883558 976180455 108646705 720371412 55527448 725300742 659795905 744759718 752613268 841336865 568841238 916021590 550014474 680868952 451432408 842831412 967206068 983150015 429064636 959975653 109275328 114598310 813158100 824687586 520685057 601308126 651984176 913132204 724563317 933525514 615257488 857745339 422187789 501500806 869518362 927636132 695288782 813063586 428554130 720732064 647974106 915574364 943182697 978273872 682332987 773700962 184985830 353482567 588497504 834358556 54574848 591237943 698165015 870910109 328519469 395575115 264464105 961627054 962714544 990634198 984763978 995770330 818049525 986598723 592465044 860281416 202410860 589215228 743338759 811385646 628871008 944995436 648582566 994788138 885454265 973491674 860295086 924644647 612465341 774888065 981574733 995767277 474209482 798340791 228511632 851562603 81769648 597907739 830923445 861548236 615232125 836523773 475830611 774309912 890866235 981800321 300078981 408565808 485851962 837692080 3256475 526407703 248166142 716209202 503957283 852241567 967399372 980822861 115880828 776084224 596039167 715963230 441923295 450827068 780826095 964137332 589561047 946237476 448144150 855079698 393552816 834240650 804362982 880265640 816722614 849189118 34176600 760706430 294524384 707432319 776460177 778031272 59246643 400235998 344289439 693255125 656857142 692215291 722135940 993336374 758586099 767967653 568810196 597970508 211048519 319162259 73139001 830621860 637152703 954330179 571077989 739668006 438354021 768499909 780143746 961163692 546354592 963013044 501066774 519500737 754589990 993522538 646438635 716857767 213491144 913574621 988192725 990400851 701775907 753923786 914441167 967879141 645227289 761768601 135219063 846320839 708499035 990393997 660094476 853970570 51685990 70737712 874030760 932963204 265244376 787802827 118811153 707104331 800589708 920235321 948032439 955780028 463281799 473416997 233828429 430135362 853110985 898362307 911522783 926560757 990294432 992528482 464340986 705307495 108058869 891896929 347745571 710301905 567019129 787417350 523891527 897485136 84098116 347863460 280006383 280153349 829616454 911862156 123641737 675037958 25117806 983734803 482247245 780771880 160982031 584101092 849452194 901889522 141863159 855044691 975056241 981267521 133437512 803703548 133651739 523402507 892911174 896709175 849335949 885558469 51526903 258714403 485604627 713256990 404744439 822853844 923354289 957524291 436610922 950931707 637628050 642086721 610164579 789952746 287417502 578786392 739446063 752739865 242267456 925121780 628661024 915119492 32668580 216200737 508342865 773477840 117573427 896422055 530463557 927738225 479752893 587914003 336309206 609795382 750257712 894486375 794567376 916197114 461465916 772014121 62342021 529736834 440475113 539582105 50690893 581711419 322992926 760817138 340601 29469579 734660566 790330571 220223437 692013666 628788216 992291515 969013755 984179477 396174745 480081982 744188141 826158934 456007135 828859355 854362257 893484047 893035267 911987120 229752193 794988586 486727972 806451746 791503258 942496776 747848793 923284011 714933044 900729153 387247284 438607333 481070262 801882417 138865297 623199980 889078344 931626857 744382439 911601805 874438181 944188434 793252555 937233590 821124881 932957429 980377079 990379753 372973982 964107095 490136325 912433302 170731432 838415093 610196458 748932857 553955464 698556542 772866178 774631819 402471030 443270591 777988090 874176028 183818778 243182028 197411098 372556211 225482536 478870072 452315247 836547016 304381049 797807460 344344537 729705576 885983999 962459759 449678653 557966242 206910960 619247854 202030182 538364986 866226668 938037773 992824575 998192800 244890792 425942149 76786357 949845082 694025450 970289431 325552140 643232911 913105492 960070542 117639861 281061089 432106370 435696759 775133601 958994691 634034490 849731409 990494358 997575792 904119494 981735970 274217091 944132790 235317575 559234828 926594024 994838206 599642521 603930116 934476691 985825446 167274727 285378163 577822571 890690400 424651805 519629140 210669489 700939513 914380412 955857085 257039944 308249091 304752401 682543413 206790926 714289920 873353262 909713143 973670486 976052106 264710113 512929684 9969858 353742229 119921807 630870494 695960023 871445955 72313931 118725488 288570577 926531897 581624153 589713647 494718077 720265318 297913007 832821814 437221676 890777034 895317609 970995762 858874914 867601416 639254818 640203788 514522468 960937280 694401744 881474035 358639598 992244416 781718481 895137512 435811121 860586649 221898539 459879210 502789669 870160877 654745617 771603655 790874405 816641750 965446577 991215758 695081607 724406890 537029461 617723805 829139807 955532557 389036520 730562338 464547153 953435243 329915516 743316110 174671746 793006426 299860325 761974745 188627689 430287787 936018935 938327012 276483266 924594423 119469293 830158335 547798108 947934972 586800869 896632357 871415729 970733233 530424586 650008069 87222607 538702408 101599253 239664993 458659898 837968537 797387849 857487081 911591120 950865098 122240612 635962197 972566943 982374661 799409526 836330005 182129385 493418843 57639575 428714372 64512477 667401503 237767202 847337672 537119935 639942079 932135886 984068484 922569166 984830694 273117209 890067058 917478722 962019456 462516832 828830037 644940909 795803793 135462270 360115158 630227919 934340407 695494584 945783363 712702469 763946267 999561453 999635580 527299002 756400041 21815553 228697600 472547551 857450810 304354954 358302295 762976855 922413147 877340480 966089913 691765213 941056855 635246341 744769520 321279744 784381565 221248567 533417942 250156617 702080810 555529091 881700540 889216520 923644571 41772639 237347405 546220160 905349008 783743649 950245527 489699667 632864189 815448752 902512049 752098235 752510691 749175804 749326160 92942039 466736514 334097148 488932487 15865993 961536428 834577301 880670336 650320026 788377291 651173259 931129821 735204160 897375086 322644392 722697958 351335148 716682613 324644236 677883278 196168147 749242750 546420997 689515979 543199760 721738268 543060946 785106393 616522340 819550613 932531552 975975187 696556198 865539331 44036726 145314120 431363724 897349398 616793900 786680263 274279711 830612613 791436586 966372613 111800816 414897521 750340900 799586968 48840643 251612932 873163219 922867082 978636176 990270724 946781166 956255774 207983071 556104574 437776779 681837859 752857885 808837300 863729154 951159796 681020575 810868602 962799423 991025524 617259440 624164053 694126590 704887114 601538004 717030700 606333625 922148892 354801900 896935725 274087959 683697103 668512211 922520857 190211745 724711871 105446109 142816190 262239870 609516358 391690290 459621759 621618438 887564271 684195890 785983025 724391212 995660802 228311267 935011160 644350615 682064206 914660114 978343520 915197077 982107230 73922209 442233080 963816831 975097768 241398474 766518074 316758951 468776814 379456809 664453396 150942618 608354116 912529575 945641582 453943863 958073917 975762375 977046582 235479719 504390578 646084143 989344894 137515088 544750375 457709138 862862511 856295949 860263520 539317215 543726218 56640570 119696245 471779416 970852058 858843704 954378270 896912735 974308936 203108124 720576688 941050434 994217665 606259548 862651517 719686433 739360515 140604964 753379546 600818270 821804235 649028220 983681287 505650711 973889878 539820430 546112088 673338956 895267719 128873402 139751424 278423679 316831076 322454429 588834368 654841736 723045285 915562294 989710076 533905911 713286208 369141943 579685472 866669405 886212437 970872486 995984568 798912584 913603306 132905156 367108697 360286369 848289135 63516934 134428962 302875436 686753960 136572732 594525703 895106193 915872364 247734814 535893942 641098088 823578858 109453131 659764563 835122158 981125592 447635739 783154025 39780618 145125463 744421253 892944362 253815045 683446419 904815132 998972712 575052850 779535640 73005947 861459456 960591705 990602391 183615043 500286890 300667642 843595291 816452761 821649516 110039892 397405277 640569732 652565340 993124845 998191408 473465594 996849865 384269385 781441583 446507999 496685110 275796893 665032874 723633992 867936936 400924557 837790337 392035833 945469420 860801395 877616752 900234903 980922672 345982020 977226824 717196096 789211905 849081861 856856578 936493027 993877943 798955544 834163016 445639737 572090683 828059694 893779003 249867540 802729174 343302648 485740607 852308032 963946481 263787509 601446084 285091269 742311667 554201117 586850170 801629928 973981967 166176247 495813607 501118892 626554438 624268817 882249607 573106479 680849132 811815823 935851550 248450222 948905469 80628649 312667444 1517646 890649581 539889838 992771764 837806536 980291779 122150014 389184903 752944688 974996194 935785365 944680888 895334619 945528972 249455697 417946188 903774512 972618010 594646329 931817452 859704241 955935507 835407947 960309773 37124981 254532917 573360407 668741814 169582342 231746372 453693977 817811406 783076901 813891748 595013945 634252159 461980631 623013670 378720525 383551127 67706752 359777384 690388173 941378845 90530346 633075132 974656889 983025501 685244279 937879190 733612376 929932636 915752720 967475031 191324535 250726653 475378392 597137173 346029571 549770425 504574694 790053297 182731941 444640981 506421807 991471625 783364135 980769499 632313110 757140506 937914838 970835519 869127484 971753033 424126953 859756892 26834318 484664646 269810556 730159683 986450463 999594508 908190728 932659227 825797695 928573824 37224145 185540343 353434929 399910726 393895726 630437061 183098751 703918134 763689528 863757543 210689328 382271508 947418580 966282218 447540033 612035389 561852594 796178638 218922132 632155606 324215946 889481479 952213702 988834944 733203125 824806443 290159626 603511926 114412841 285163372 119260293 982864849 334168322 833853871 321284949 743082296 393003916 736284860 978127812 983909172 617748164 642093878 35059962 742104325 135226681 874135166 240194180 470847540 750261530 973344320 703650308 942613777 583181847 661832486 445598995 595809437 689134390 935691609 124273842 978811685 386030345 954803332 687082997 879831973 869441145 992574959 400911773 854360851 913178923 958483258 951670268 967033908 960564192 967804120 959041169 980784953 945701872 971512532 601103721 822335065 386688224 960632845 973309131 980036464 865461840 957483050 237027776 285839094 376471869 386457057 33342 454727645 435218478 749456917 121407392 753694191 460114113 833539177 405088005 799431664 252974327 320595852 107697185 475796259 877414754 943721763 270459720 352819315 937465610 987793323 777396307 821790193 781610069 950711517 537123445 576052834 886633757 952505278 621139410 713716112 107208182 249525442 149790161 822153533 613067733 725822134 682112220 798715471 595226771 669647885 855776239 941066073 965404931 992972488 962457151 965576179 513113437 919636162 857438069 859474409 674262688 938705162 651958996 694756548 275297730 296795903 385778532 655206518 397780734 445376583 877328533 929897978 257456033 666107467 173485276 633163112 556962919 945527065 338088497 583369079 944610274 984637706 69927486 664636250 3702513 418709480 718560345 748377427 948491746 963341212 919302562 956026329 363071888 469974592 936206836 960131802 293435668 793493708 410724683 526421903 662065010 919865918 524852773 849397277 746895811 917623001 285949138 378779807 829495137 974192512 553891535 817454111 931678625 942278176 235460612 805271291 720114970 853385178 218692118 923973916 77621322 709973509 643247367 974425122 899872095 976017817 840453182 966202235 404917280 978990322 945680 751520616 188024708 346037774 975391309 996405036 173469453 712048851 571501126 677303992 301767499 982860034 581021514 723368623 779769647 946854388 974530527 991589628 281988201 545623451 611143756 742285928 570339004 852226966 53808668 517648915 739291867 988150196 158417449 536032003 603840388 878842202 531222548 789388404 148202790 578797141 543488960 966477306 966011754 975419356 138433904 655367122 530537835 857993687 534868698 879209451 588419723 683346477 581273414 774087236 96487479 995647638 178246122 844866797 279739695 721031115 56050564 689418225 20484006 293791962 378418090 991076680 600595484 680440931 322618540 652848278 602431804 694041038 111602145 414569664 307766649 929754580 537923693 636018409 747857886 821084670 66214189 192734434 493524926 799915966 898631708 978951992 884926363 905457508 511017152 806559831 894887575 967217252 260900256 268030970 371087384 882531466 423116253 893370103 571514107 584032921 215383863 464042820 438314848 775194646 261647449 490729818 70657323 889308248 385766636 560196879 452240471 869530489 327414471 346053224 311774549 724923295 468933095 590804471 977117805 982797964 647572393 907799429 792419928 997909331 752674974 808045684 39933521 223438308 126150144 542278241 820899197 865803907 214162834 932712208 969616946 980357305 185271010 354967642 511997750 512475006 165083321 799858583 538112340 931392755 753038989 929396962 790434889 891926613 961365794 991065084 932766206 943642471 558337177 769506045 213893858 280661753 885914211 954646464 241586967 763706271 670288408 754628764 298461490 783134733 16005302 567898175 704489398 849950872 985678788 999130859 410942035 416651657 732739349 824640178 730651011 738080199 392493678 989959946 643028123 827762949 701771570 960129162 78586737 850181929 433832870 908030226 973227604 993918755 297486112 856289464 376185115 714676623 822841592 863033448 777458476 928893898 514762147 600381920 831566597 958334808 481042060 535793526 990430884 995113612 852222421 883892635 897382669 993738076 799167895 803452305 527294588 573880915 369366835 528750803 558979034 922551080 606502588 995314162 828892859 852424477 652066722 875155603 91283155 307222297 330443602 607989507 432956827 981447227 232022287 723454944 108891670 704289369 824396425 870908676 844878738 905225657 46424929 656638443 791944053 828168896 176150260 732430704 833606083 924520366 408896461 660312378 488380677 695952409 801078761 920142905 742639290 944449714 337395102 985907433 144734985 605699201 761760494 804288373 170252076 708414525 987438727 995867069 140313288 482989969 483148504 930460442 469312528 555620021 428561616 750763197 427785541 940602312 215772475 468402149 66381383 992921928 8697870 184505831 659705606 929923402 190496528 667098007 266093422 890541070 503874582 767265176 227177542 701169655 87723439 732623794 460184534 953992686 193956215 916975031 111863165 332908222 663625559 704474438 72541118 854518781 68158033 651819053 596664337 805172216 227603775 645687901 868281584 913898350 758656138 905588646 181788977 399105521 297876570 746646580 679811288 911846476 349377231 977797635 672383338 929654674 346287050 883010736 880371079 921465553 368784536 716870467 602350876 884732543 670721501 928020459 488267381 842954448 94886597 610511890 266566930 410550675 798588903 865206885 238661548 529113086 733300190 907471700 961005204 986453502 482768763 483199617 612800688 775940231 978078816 996956417 532154649 587025067 178498538 883333357 963340515 969838403 221959050 965439412 646070390 659541929 133591417 975006841 809966888 863757541 703201053 997329418 544858446 744300447 27782931 478315367 641174527 737370161 569216909 873141004 948294842 956759089 649100625 834094019 423992604 883640278 315748483 774422696 63512603 605149320 383876854 706712580 570323641 667144272 518531711 746932939 339216579 981526115 119916288 560270393 383690778 645248641 580305132 604613764 571748060 644906145 756900075 888401964 604192703 627550006 5771802 76274518 227934512 602070697 825344097 983701455 593668863 610334928 750384212 828870649 821645517 989925301 498699168 796399969 779185412 781927281 745368653 760670189 196957300 750408756 371795560 817456882 319493798 961230876 290543907 555242022 828581317 894100806 95002806 699217446 942771244 978130286 145552774 595475102 599095122 745801815 417791644 582104093 339628682 744070565 695263115 918605980 770142359 928967755 196657597 416377807 694609990 897832787 407298435 996937698 422107800 623624630 715964443 970646671 219186002 884566269 526979250 920687334 422086871 668682677 466315232 591107572 232624044 987226797 762027644 811360538 191418987 890933807 838046617 902210363 567032519 901705351 444809050 494701536 616223000 701401772 527080350 914197589 198270533 262750180 776480187 826738623 349917462 869452010 709583395 926864409 411670686 425799340 934827942 946704529 70277733 551119868 401759301 979799810 627820368 835463168 406924694 981377554 321248796 465946133 965661943 990414085 625542062 686393703 377023005 845014773 104657121 642416836 888821021 967859868 978514987 981353451 334626884 407314972 101675647 516179594 285347737 301758187 83156326 729088527 616969989 719224914 854539085 894975409 781394952 848432121 6410777 116685298 772836693 991494077 804954882 864847694 664316840 699956782 420559053 714032031 480351803 664414989 666495749 914724796 166408950 277566935 459697527 814528979 329195851 738057485 557267843 950801708 514076080 942662016 466933268 765956468 649089829 983384903 733544395 829241511 776120271 845624889 15892007 693935786 755012913 891076170 758234699 810123488 105907924 273752061 513485505 848868555 761023273 873061280 966005135 995640049 62693181 103659242 742467103 819954391 513448538 546125183 902877261 961114274 311615297 767517241 115348400 643986166 548340451 711733185 32317034 622344566 697308507 730181841 308802894 373673291 966068992 980354301 577966689 738817976 887226993 890979590 536087063 828176049 697413396 739468109 848216188 930642689 442675545 869537607 787142679 959998599 265079712 381340346 44151781 510062823 352920705 696721919 428096878 635243335 132562936 137274965 241734426 496924172 519144138 707541917 422181112 476558256 62487084 883256856 256312565 793843996 156397245 473171882 905099246 931876913 504079263 607264657 936914832 951411611 795080312 843860645 731388382 899133758 114622337 795008871 800270858 989133501 366303332 704500642 29414313 541836234 223910975 649825636 857536025 917292217 610341793 787849193 738457542 993613974 266927912 997792374 235877937 663465326 537143824 908325506 119340545 631517714 379081911 939009698 677486003 884622609 811477585 836057349 698670335 830328323 465420365 565122636 163769980 672493098 783563709 833160170 802975069 835992038 719084009 891620929 313110927 770428519 691175896 745426202 787806984 994408801 808514159 890580012 40075547 275595942 901677665 999656718 615268435 632256091 114512937 461631506 439001234 695880663 376029611 712945331 967076940 999939958 726357776 969561846 541797096 920504560 138904807 709656730 115941822 869115184 65207000 722052702 143148756 618313264 998309712 998720561 388072203 430859684 458481733 639525021 819780760 862795838 935858074 961384568 61859462 797114531 913200253 919502272 543690933 678127715 788188977 934252773 669518766 722435312 781232900 882558387 550903974 928712981 486515368 663136886 601745651 690617502 189868541 321116670 950100260 971718641 526593775 992921828 645341995 834043497 350302676 479005505 866950198 956046751 610814333 969311964 139665651 155257641 393633743 588844421 504041169 677386170 232469354 509297913 839760329 882874048 515691535 624373658 472764406 593047859 113283506 700815332 485212471 947192563 701630054 754526969 435786675 935050664 537727269 868216069 604953919 913982289 383992602 974942495 362951902 602127404 223319150 533825300 965440257 995185730 825344161 914761629 187623802 580497863 252130214 412660782 526622514 551626826 842171430 979580530 749161735 792468336 654515331 844911093 472135556 893670582 205888079 993282662 32088322 855853407 444048862 943824763 267065324 754885729 308023538 531589777 505230213 559078494 779272211 825584319 260859901 350013183 663987539 767731332 991461181 994412439 377081694 668561347 947769996 996054186 668241667 729468683 269131225 861523516 104851446 236490722 357711560 574856907 794088364 935432253 59181956 602960873 440325728 726980601 55503434 198146352 526166222 859673981 715265750 864732188 696365838 952559827 876965218 907555644 96258761 316908298 293394781 654787260 505364436 547930401 803049986 977870329 612370431 742233029 709113331 989278995 605089603 700685136 870843090 927021943 38501544 286382691 885179722 933290144 356133715 379935256 743578194 832812600 407930331 715155250 85614043 560586402 401643675 763778804 54895983 225120233 478114053 965527842 411745731 776653990 441005210 865742204 251524504 724482728 478886274 683218548 363634981 750479992 728920723 893512807 493452640 669552196 895842545 934611440 141016734 147080703 739221832 862939478 425784825 624027186 998712296 999020910 675988949 953396892 976775799 979996188 340841868 955887890 2105132 766934742 952414924 981117603 188569302 915587140 160689259 315819971 42091768 592862828 536991071 898757294 903020998 946237862 307589360 436473384 817291003 879887651 892781425 928418928 734504158 971050605 881380364 959292379 298857230 756508719 470686085 554846870 964811097 999477063 12526085 268724142 448105928 577972191 660260710 888629056 310468851 339613420 189059417 523849134 187010344 616995323 895468910 985941155 594424683 697627666 37681258 741616278 585363698 771574819 964332758 994023955 595665924 643340788 843342329 864788258 851317732 926946608 72359013 727185681 935123446 963770906 387537255 913335669 305478348 618238254 689314474 835606524 379511421 538405667 754046037 773378782 581984747 629544258 231715941 845757457 799526098 920889164 925850981 943484025 543365572 847727160 266688295 376659973 821603970 942409152 801445783 843521304 1330734 922725672 502650408 854057203 25989960 601667297 873949144 951117833 194163826 527253737 699644818 862685425 367628967 992103254 580813375 817543908 807739835 916973775 948916507 950407768 950309856 987852931 969048620 981067618 81322319 764514900 389637368 496980934 388595853 633607218 684627119 962430896 289405156 494855132 941370936 956630689 713257936 805107203 448310965 584055273 293323484 986995375 910742572 986040930 181511490 792118315 457016951 981917652 955371680 992190250 84109151 509212594 362732906 382743248 991368499 998022494 253860980 930606509 493453158 943438091 825410941 859525306 67616914 822273930 850006216 904054450 751939014 879662740 296655672 876435332 70035493 752889295 453662368 914999091 184969327 761811183 779758320 825642779 233405163 970593041 85995089 779349693 48261861 331536118 62907088 382397885 377572972 432428365 945131989 982064679 934066575 964786878 229319 655274533 382116458 486773944 130081723 204270080 474667950 520061978 305642317 727803523 982801650 997130287 359263289 707019834 326038662 578135185 621546297 781600599 105579297 406718365 967145287 971346745 897871148 909724114 461436773 498351158 11311028 46196778 989699036 998299886 408572347 796518883 977787601 990752713 908321996 989032247 57864087 80898277 525820161 945261509 761253010 800318260 219139502 253787774 195007321 552262514 639058763 653244868 10177502 920944389 768691086 815056643 361533126 888978873 896093127 973470798 588302208 703758673 75092449 736299714 970553774 973648283 232592634 953061073 740960553 887040543 299327367 782222140 974158379 987509056 913761341 983972762 962353330 975764230 62878495 680670216 321892316 443723338 402110204 887844664 680069241 793670061 444017394 471410497 858836398 889298486 805967645 811809841 323041722 444280931 408667878 825801713 317174865 972732338 391578126 683743051 297830498 991959300 444793714 493563028 602072365 612767133 559251886 732241243 595493051 705381697 959038936 973178075 450784404 638828710 907382876 991122375 778032336 919323980 228564660 734836490 266409269 832853954 238775564 557017005 972013340 998210496 652472914 662424856 648835119 834450492 472824826 730432585 444263599 618829789 641628538 726625287 106890809 526592676 228377980 881803809 4581899 640470961 947701914 975958450 199945742 684147481 276249906 343971037 718066804 944968088 385297265 502886604 144512264 987049677 120121030 733053571 476921501 572354659 101163519 959307004 112332782 646926298 71843031 666984159 507425376 893084501 347430576 815770553 384940712 658390509 531669287 956260205 942751936 973603538 655015172 810382028 200320516 289751143 523944436 861567364 34068265 753612186 321792223 891044865 112830756 694816479 696950086 882825674 425782551 722626615 243718480 963888468 497482410 804488386 8850315 436347097 297231083 868826794 23400983 742987130 485943184 786482276 434029909 756456871 85029250 307056089 108543138 616793375 588682734 961111307 540711980 959627895 154847862 234807975 948585629 992292544 500049384 578200598 323102323 875815525 351359744 726808981 663109549 663723044 523697565 843286650 645320633 958895213 15255786 146272838 868392525 875096633 907669146 969329386 404619058 457596423 75054205 193774214 376349420 920027495 405336644 961161487 222425898 279327672 883665506 887968250 665971438 745399454 878089970 899360643 979870691 985121184 671290626 928587201 733577924 804244082 297514603 622013839 454115152 802714027 458583502 570263397 390175975 634078106 288981229 693334382 975283551 983622430 219847010 452951339 848342859 865758279 181875914 469744214 327260230 475668873 328268806 355056898 275751426 906950545 173246382 177151984 248217449 974098980 310599598 925053836 766129206 970122536 825403980 950890444 849494319 949781733 465027433 758278265 492123111 898625781 92640692 287181991 362965191 930682170 224829524 533987130 985828223 988573895 289143715 974928205 985771040 989063592 473187225 643164120 585792933 790578962 362731550 545464059 426008628 706670958 415120446 889260556 874636600 981683547 625107049 645164035 841352967 928147515 839412415 872786765 489617986 859763476 573113803 816306828 268903601 352852675 812957722 902243135 616212816 930045789 53430763 92402124 801864089 823068128 654605440 857708511 597419137 755437439 7213035 554198410 96820811 510172343 238817777 365822042 599731250 740979077 440816317 579828055 982517349 989525922 78538717 913624937 716917471 865615879 238723176 547654300 566224351 702410016 533692001 706416482 935889773 991207966 445053549 796689886 38984590 97209881 998267531 999555132 899141135 906273146 990774992 991731908 337910386 957339543 353037293 820529850 476312237 946937891 337404628 755511795 823642839 825610417 276889240 559406157 862719281 925071964 348429942 549435846 356502423 366750895 471957475 500785442 857240496 889624933 851854355 941239048 210765861 563735802 620167713 845762910 132093743 144572362 199286230 612297675 690724922 911368737 779916027 952596383 36131831 953334773 813930417 991376338 145319863 323370066 91209046 849730739 680838094 991775807 285651130 497704788 239452867 493878773 498529793 620363699 15653047 853274998 626503976 628339374 711514310 930215950 257238557 938401887 72527446 453320312 730462076 957850121 33553455 955123081 500393171 534090030 534665146 980008794 432016733 788426914 424246293 767971567 721560810 929966992 406239253 620180306 273278985 296536934 300635685 976223669 846481845 955296207 999927618 999964097 70855918 652826179 442009670 836459386 881648540 882408788 735746212 783837712 7213447 127916718 459939140 533928040 268668830 372680906 451003180 702685688 926296161 990857693 725854520 824500652 382769708 920327155 579894994 626873389 668098478 896414258 77508739 338102972 291653467 321003272 881267404 949344572 747207433 980632153 481125490 855093531 449516481 861091734 776221770 794491098 33184582 989317675 321420985 742073446 47219646 165000338 613608018 961196926 923198080 926449488 779595263 882137471 561316630 644660425 653508 602115362 739114047 795962173 578197819 713456340 90901974 993716171 20782206 368134722 281783729 745550468 602870334 868474297 29562130 517178093 285921310 736625309 937948502 990434211 955626460 981312584 381832739 469056919 514702854 559683164 227829677 744737009 170459930 882837813 292888058 965743665 571266167 905468441 341896115 759972190 473440800 744096363 802944313 907645909 743704204 966552625 354180852 742295841 260519392 290012205 342935334 819871396 278652583 783850024 929449423 953602924 356203963 968332151 917118861 964321630 524819243 990162963 773837318 886803950 387234536 540314495 703410445 762279667 207172760 966696187 652296717 713739643 242047303 684066659 587584258 851449086 741861208 820237021 24104660 99967648 173005141 217779596 149041614 952593955 858065897 921164904 900983652 960755806 238144147 402707318 886201628 948937792 36222418 612978784 244876361 501954165 490394857 599800570 261894542 523320484 87315594 530561183 418626965 440186725 845671886 984493329 33197897 970804347 195116708 401725514 370409935 944694806 282306368 316202389 919611869 960877183 582168717 728414891 28412828 839830099 38095995 828416019 726231754 820154046 366986942 647796186 453842671 474465012 150561722 575897212 306131462 573792473 686644610 871192133 768264211 822307669 909756810 982899258 430946182 927680513 776600117 855859579 578168300 579533520 847228236 966891364 902903050 914841081 456943823 592609611 699043306 901989912 984703711 995037104 740774796 961566870 298605794 598050182 435161943 550187865 663855048 872412938 783699209 948307869 473770961 842810549 662209454 867418554 703454320 959542361 694054669 739413147 970898554 994073870 313507501 682707461 193503298 924651123 16343768 637946149 997853308 999516575 347113594 467169276 31301441 104040288 45106344 146082467 408417050 665462563 326908055 332984516 595974749 856501190 704582209 723143731 735457825 836009381 770631652 816593557 17723574 526424566 267803004 542986197 262874100 280534283 739238517 775245916 400192947 856542438 193022031 690703717 758697646 988118904 350138689 839239553 260356302 580073577 916103432 992609971 163993757 904306148 749224973 913456732 315506100 327581244 876704556 913089053 482990690 758311173 233297293 686178696 388520459 811368281 42427663 377624422 56529479 368846931 238887550 264525475 867180160 877424012 136832562 553263255 772440219 918998636 455094033 727282465 428323077 931793153 326665394 509240791 375343612 934973201 787021875 879288456 153629099 489771273 279042477 293280296 530830924 657260883 232386387 267911579 768467298 857455402 705475360 727462487 479686411 687306856 217985752 281151082 666726002 784397814 744901727 829188046 502233499 975406627 230620871 787996875 877695638 892146191 507062060 612413707 902516090 963085001 536336773 685646870 203065876 747073906 143080805 605518650 396263796 772915610 859835856 907692169 527705772 724504565 180965769 817168394 886660412 912892808 193871904 432710863 467623251 474893674 288232454 999564370 224779901 770000137 638957356 987627968 110907175 540208598 541829121 948332440 425199742 989061394 55040123 285694221 225856851 593703837 744774840 802613046 455735965 564918143 171138110 718267097 403094369 619410525 97443494 729450163 404885865 511311282 932393228 980264780 485434330 894099339 877719107 894061952 4717761 873193660 345272430 652855574 654786298 880888330 825069999 897241902 129107641 497035286 775437297 936088605 562756305 858738473 680812180 738551843 768101120 949704142 686161563 705702902 916782661 972547934 451416235 521253323 40897957 242306186 199532416 940408602 760835621 863848357 406035981 637659193 886370760 929575479 814500187 830519094 565655348 967013336 53951054 505406716 767345360 823344537 507677210 926178544 163682109 577077381 627430625 803879374 722618649 971397444 187571305 383713746 852819953 935963760 540994973 991248085 837905286 863758625 370381846 377456773 352202434 413041776 752191655 856215111 864683259 868958527 920061572 954943697 552339814 824773592 492919337 506001378 819893425 936054929 646137527 694404999 795340147 835762922 539555403 994384624 932527160 954180567 981369759 990047424 969627414 969878576 549790593 621750509 563834977 923903961 653849766 886445228 851708310 865852526 938281208 966561699 141581865 721372093 394620711 926745503 433404647 884688858 465441311 884098682 745630180 935767215 791963684 927593430 568715954 785416042 317597604 733177344 755485767 963048729 349149144 710833826 763364901 892708176 716907712 765410312 17905165 746627014 995134084 997666179 922908012 944048881 14322587 80363384 572935602 747936743 209696318 689992309 394803204 831035060 962913179 968271649 327592222 583082448 929540082 999036833 662017550 703789045 940644760 973360424 996369447 996409453 478330635 785360248 566705473 970856969 684035308 769124666 506388365 754573879 350080162 630115284 175480317 427125840 381194255 952929726 254785096 689695026 432867013 790328837 710600200 980977033 374576458 809406774 612292655 807720144 916741017 962939917 735426115 740603248 178679123 903110256 150933044 448463027 473063129 755036268 193990007 492001457 26458343 662526019 625707392 907817806 137111755 143881769 425944211 731457566 549458416 615848144 363405868 366502785 75641797 657107024 798535187 931845969 176253715 573569712 520283723 571392642 617353269 952558175 391350376 799363202 502939213 729227557 504160208 597557429 511845363 946518082 247649855 426029009 121311900 138702104 306858623 570936953 226631519 984728848 359102988 843244319 994094354 994697000 831564844 837689083 790237834 804208148 211102088 589053344 911446832 966019154 714023423 955588741 85551603 106834603 253553943 391876395 453545570 491006944 278390932 419697732 879164918 931229375 862852194 880038700 637071398 835506470 395759754 833409968 100404332 871812752 22133677 903571941 661720452 762870491 319107497 639981276 852522063 997844781 720647700 856883314 67799480 447174548 505813947 512381707 148343744 903696599 144915050 988319942 624836786 897220661 512950937 624849262 621089209 927363573 896091542 987570122 594525566 790504090 751895387 896429502 442394208 638486432 328445665 752266692 716709984 774298410 318579219 553485691 389466880 594685799 572347094 755804665 151197215 657048605 827835651 993255669 707337693 818263073 287115161 780207015 368731951 666943547 275876871 866890570 112614333 738495206 427797531 896547362 175359401 903770932 143953456 339696507 351767854 671468206 400394475 481344717 257872539 288616509 273999102 324237049 524908882 879268519 91718150 660196952 73892249 866295514 761705998 772562801 387943127 810014812 942548419 985745230 382599257 682486853 3720848 865519168 837859931 916937377 675478522 781724638 478483845 959601428 44836116 536554057 224560750 690259094 111860324 951856343 505169667 792522238 186309645 847007880 379935065 542341100 969525519 999854156 860598263 906004979 117054372 419884148 565075458 720042781 415005671 536364306 789091670 858369682 277091880 830545684 528309268 766996121 975089923 998812631 362184246 642503491 634610689 956903421 175146245 295462348 530101831 968044350 275140758 847864750 672296879 725209072 107010191 376246104 532643894 869080900 191003991 372462377 550564331 670582411 519537026 824654947 695034321 770640955 594372859 904759179 581660959 921023437 242973597 755354641 220570455 331916857 742507935 905256527 905999472 946982311 203481235 257386360 307585053 439514607 96917637 513503400 850243969 861492964 702756931 735917440 137451049 566039618 83877010 500082054 50280210 251873795 916966256 967057296 185268120 835594004 684660895 802967682 400605058 535797395 536609170 758532478 84369492 160958711 690869422 823399998 88010897 193170111 232840290 670213561 157004373 634049299 520717764 779460119 709969905 749246625 53091653 424744098 241365601 382932493 737848081 806776229 287431226 753547510 286367463 331313563 284664474 870868204 659503253 670013922 749184496 822398353 647480974 841688112 500566055 938487478 906657752 956177559 564910070 651992485 684679347 729872316 428598221 479058482 963746954 980109364 656289828 701581327 91540850 772088773 637037913 847082388 527812145 665129565 596513268 899350797 727269823 880095122 390869344 455703195 623531830 796953584 415070340 833513273 813739143 886973924 317282849 851629966 23194191 407087958 411232014 651937905 575560549 841672054 869593658 874314607 220833990 810520646 457104553 763097260 368021239 406498983 947212649 994555204 543124308 857253090 715917664 862273426 38048684 555434780 790440288 821236940 771345446 866912779 696979426 822166900 84838082 855942395 676442477 726884284 93017807 701491269 327503710 378399756 591973144 605962940 416667037 793416467 51527676 617386178 790161984 859881580 417688502 561137303 9776788 105092078 613321206 735381603 488080907 936269176 559900877 750010405 335045736 936446715 114320148 676306477 514517497 928199181 720770101 753664449 444794291 520914835 135242226 476335802 499370718 608145507 438645973 825207488 602023692 968574222 841159133 914698644 705452791 813980313 716902670 982069174 509064253 837668328 375484525 613337018 855583209 963257743 225319089 678573241 383969264 994403770 11218085 210554605 861456535 895829023 842667666 861721795 887325777 971860475 342955848 954267772 511390181 808772431 433310284 977640300 739905991 773245297 654236343 665385238 100999185 450019671 731556754 922207668 978091242 992228281 705085785 821461994 379935182 643525088 746198149 762022867 265465865 644228354 940923456 975483061 718007363 961103317 485787927 755271890 250164874 478701757 594294907 597339036 256106307 912016358 688267906 838677876 827563463 877291086 843964721 886423686 380999547 672669551 685313148 869134897 879920222 912694482 423199385 586852004 263040877 772475010 728502441 870547403 510512730 897952874 94052601 771720816 630358182 968508508 902731365 962612386 431331081 669533527 397893698 762878588 892068114 953823154 921925711 977451303 760078129 879008272 267424043 581757924 820549063 989615927 189157843 754417696 262227477 276138391 809561426 876164844 920913212 926657498 268585723 897105708 811238356 913209863 85698165 473583302 939003312 965031942 700420272 751957185 55543365 795374721 318663330 453570835 615740975 829259315 918789409 932690814 179111937 318932898 409331768 709367778 637428308 668363714 623097621 690728127 151065268 539395473 544057997 761675787 72595501 451776276 454599718 651907285 153803730 794815524 348454586 446439442 934158469 944172653 491795232 807219571 553985525 993791049 791553564 974657724 809434666 839344577 749387755 976979340 938366082 986463974 901743746 970059879 215883509 517489265 940409508 980410139 286016744 873325575 278549283 324657748 104255813 517447474 198619482 897271565 395455446 995098780 527342709 959715963 450298317 548120686 178373520 585274150 716287364 941882132 770541702 906421720 946597426 963219068 62233533 810656280 386242032 665479915 286592777 966758219 883365694 929207253 339521048 640666930 632480287 736252561 647717666 846601944 868102257 988409851 994638674 998486304 252980225 370054369 188867116 564354634 752283968 889541233 333626775 967700043 502562310 865921602 920061406 956279933 54334966 56749802 79612239 498947572 274058294 486045591 60590230 416303202 440814913 956744130 449457322 634468095 999033613 999850603 348431413 929329646 410150411 563039350 777311750 950879735 710162928 877491870 95704732 152600750 130980362 385138596 400214435 475935168 426615085 638427151 914834918 923788568 257526496 278289867 902201809 974811098 935801726 936704207 667698125 702953448 840124216 943086067 105506942 161172871 930170246 942344579 161024903 308248475 387866387 914395893 629723685 890362685 575080741 883541415 736923325 993864376 552014563 717044074 487155090 983203346 903096170 917760609 308193284 925870509 48277075 428998817 478667591 803144273 306672174 352507568 24685558 936249225 101226054 706569214 504214126 858337506 376809919 717548904 443043033 797135623 923572987 951024514 57161004 407357045 583050208 769574833 210158841 757360093 713655394 795668027 529250788 696342105 664238968 755454719 200014704 202801720 200544527 528843137 116034380 655345802 609195317 670415721 613731936 622879430 179002129 272214883 484330955 666186104 747377229 973131981 88939126 333160227 951919033 969062955 225212298 242747841 224234244 653796753 720684560 921762005 465870721 968481196 564610049 821516676 15171438 612009302 699988911 925062293 744917459 916649629 331566834 439234638 888675457 976682598 718218069 943575894 791429638 912209792 194662166 507581388 691087444 855146585 228557685 350985192 657758147 993444633 71777583 294544360 473784800 771711772 528884181 542254300 697538325 792142372 615661290 966128347 198765826 895784390 652457651 808267394 454466233 519379219 834374979 968110296 650192674 854166772 226252872 515597089 177181515 309261183 974897343 997552644 999487041 999858375 186487714 229981906 637315085 831839607 503584642 623560816 152464361 444285765 363336128 579960408 471827814 712407276 696231477 983495591 356509363 659438290 34874873 325363368 422433434 964898994 686483046 948024509 457586983 792684658 616938976 929913590 370701897 406471440 722916547 889961851 481937197 981845175 351601894 550591448 351050195 523181288 699962325 887415018 39611316 832167931 219187846 894821129 953394162 964533966 52031069 102146276 479025872 831727486 302586464 343477990 608153377 824724561 916517341 989502707 629919245 711664730 490605884 493780684 643103012 715313578 139318925 177767044 721533142 942749565 578527872 628156035 247559306 341355201 967311751 987419989 31076644 715466637 636912970 782539199 482085112 568135505 207872691 992411377 237654166 364729242 868369820 979238466 378876355 515737447 594020617 921947354 786635753 837934899 247723337 271961114 561434209 916538708 158488027 753901947 917897828 975807579 6024796 47887712 399057072 443398594 958197752 987988146 868036839 875630402 317644768 388620510 174793837 599230693 63021745 401048948 857523524 975435840 895427136 957418070 500724388 795082712 531862482 821390335 522710745 812867132 537483334 962394534 593052284 757649708 243890031 967586394 411631618 849940556 511166751 858736283 482297660 590014121 684899375 953768815 740873051 983233804 885329515 922862429 622404465 912935963 178766548 836795958 602810778 687343259 412600537 784979269 627151943 860526449 66161687 783501748 394624943 472226483 581788158 738829390 530258026 860703070 411764573 950816913 120599194 555317048 538085872 579134841 104544369 125705824 478466428 654120105 896938612 956253739 28926946 458511977 457966086 741004939 272555559 913497796 585316759 975367141 163372693 249130965 817649098 933291174 990650970 999407224 786060881 871443651 666089709 992511216 6625864 333319442 240401772 499520883 457866017 498202570 37259522 502159021 406287801 879935950 337305568 879766428 257634190 276781263 913303548 958635134 440781933 857392554 987939563 993700442 758063880 912917240 419693088 595509313 552055888 575970384 509192728 584876226 233170594 678472074 998455742 999944005 276778630 889870832 486092318 744107748 798073716 971278952 253363637 297573666 20878527 43567826 227171418 415811264 506729202 881222133 244363807 256365171 721429164 765692056 71592822 621494861 638722406 683988138 291996055 356023202 276428734 717790666 231729883 873841441 832180798 927152594 416501619 652983085 215399575 888066363 508326321 944348689 78196404 476464940 517077152 949630603 291305557 416529556 607091050 765178625 649653902 869922404 67772917 473617955 407545808 639262970 442844415 559083549 394810920 658809186 790836504 990284627 122132238 148368298 183324510 458641360 999364836 999428036 525288825 932933614 691019856 744896356 120325733 293107248 336744803 732599637 297306017 729797883 421739996 801916120 826473717 850863387 416595144 784103137 533197484 840744624 833670364 839670512 295140205 399967422 579737738 892418628 124996114 818014847 753970900 953367341 106265206 256074890 174502338 502203841 10177996 33284371 443692538 600644858 239711073 709178001 387112448 880166435 195251177 985292893 244854391 430044374 209809073 619361541 46392849 987795377 265870540 868741582 803186626 902470916 752335726 814511611 79011310 180122612 691038562 968212336 312320520 791671711 558187771 802483652 159247575 629599868 733191263 858903300 787011783 807648473 15103167 950477608 440962967 779821131 878282432 943123054 390771077 867292919 995665955 997678211 258480673 591768670 658562604 963388149 625174316 701267655 902613801 991243157 586468614 949393913 409223101 748856859 733841677 804485074 155663437 816757177 785451143 839004733 720999934 764197192 141876732 470817225 969304262 986855487 788800118 839986175 815296356 844153865 483659299 640459886 269669449 796690458 723545984 985523943 717212888 718951851 208833784 314829268 915559813 957805493 512559051 938957500 526927667 814593037 492251959 791754797 470731789 772202861 805355776 981378085 765762897 861524581 633747638 832370741 110510925 170120503 361325663 950796978 748339460 769882767 644700833 789552892 873102382 902497960 624959918 945642110 13816160 572931773 632137270 775720840 194668234 677085170 165239895 779424231 372615412 382044385 438143513 935508636 964243048 992890532 644986609 792390075 563387803 636669032 27534070 109125533 164493710 458674492 322131977 329382820 255951068 903358540 296923342 377141707 520798252 842312670 507296261 924190091 852766393 876723112 198031978 288382046 817178037 955712168 906028834 983347261 27984371 65704079 875709474 982477463 150025103 227513511 488442998 695788474 832007505 900218383 222125234 871510455 44915299 48661235 874008040 974530985 423423678 615083525 61927807 686323577 952369223 996467785 816776249 834410200 850442829 992009960 644427499 693526636 744577805 821804144 887722660 966225685 95811614 230697041 410867540 547169549 255820234 620218476 51852470 334472537 885644977 991273697 765910464 840621091 257266438 979280641 605977721 755832918 157864702 459481992 743082044 759232845 3442851 317674037 535943466 869730151 327941454 410189684 49378802 438005238 611334182 737796207 93068208 517043723 339047746 947951485 758655947 826527294 188969278 677638294 289550490 655727813 558131521 700563558 960636524 995051080 1079741 68426168 156232128 256106062 529834064 578087312 989493674 991828005 947190939 972944588 851984884 898756864 765168712 848662871 992494131 992998203 553927412 777992075 394799929 828389148 672342418 747369614 110402819 628202808 282929193 789382100 443967090 690382108 25608620 407762139 427044939 885012939 173371639 389723808 658331495 686501658 256770998 840808757 248402348 780357295 440730886 714953221 42696689 973484532 510434859 792524976 77254612 817276871 200911044 894421851 556841632 588354127 933157861 995286520 996612854 999434190 791504204 793032516 896746183 964475288 33543860 832816529 222498111 278979756 367551598 793091777 469476032 492208472 195210268 909891345 737594557 880496749 379764405 895511318 786931473 954505827 518321523 911385660 404412546 588748872 19239685 555684751 401344136 918691751 606173025 775508583 744307470 860074628 300782304 447136930 230429536 415991390 991105550 998241082 447066694 517447231 303887268 866779319 530087382 823974866 891034133 901312434 71603653 379778903 141800533 353874996 28571777 74906753 446673378 911158147 870725337 915519231 775013320 925173733 791614455 892202738 1203767 200059641 797673258 921019837 910687188 911661045 684018751 851957151 338845277 634566706 900270435 962233642 460118310 877561202 598162073 735272463 33352945 243320743 603808472 732978455 440629800 936782747 216755510 699905812 769002548 893470678 194988509 373886721 680630497 835934415 724103732 853658818 796679282 907935173 278030124 896543699 165353064 751169222 448065061 890157898 45867805 587470016 918485543 923843818 768438854 987201679 940452557 984272493 22575356 767955334 582828361 701695524 645429666 727938426 584500334 662918132 193238114 951812196 340609997 640967924 150960583 997589342 710984850 940930126 455800028 547382422 464513002 999417395 271049616 582971079 512408065 642081018 141311183 332200164 304799651 596762758 871749189 949230911 301053041 393331422 508444384 957738139 155684414 721713197 933649390 980191364 571211019 995859124 730155774 762626933 392260290 542844990 241816028 871741523 621819437 757261920 838406899 966875191 712565738 767200467 309813043 937652796 853691226 926480026 927940920 994517932 344562002 936118363 792270110 792910114 715733962 869671806 231546321 402510176 344806499 593420271 742590917 999578494 500395478 756028193 734370349 736635322 30693248 606047489 884602100 994991906 795514901 997959982 550824800 915164908 64431724 569346584 508645767 593989916 4698612 290364535 437939179 554009413 905266623 931860019 682474423 930069124 549314703 763302991 921531983 949513169 547954622 962373660 573304976 579560983 646877795 770901137 14516434 724778418 400637455 552522900 764022360 958994501 545323726 756799821 108239468 895437100 991856686 993006079 407383129 704547178 722668878 944833888 235797701 541740363 242487380 537219186 670725504 696247650 342341134 842701741 659035476 968203179 985072329 997359082 99648948 372908643 70114118 261036531 941550179 995597557 423085610 564725665 889985447 942014044 699749303 853115997 636958900 811944034 29384849 338537291 925430136 986926174 653380725 911100853 552091996 713426620 40359894 767251302 851673758 898531630 813921895 864077082 191288093 360591804 67025984 876912299 780518985 837670602 677623528 760836369 955288776 990124319 549533428 803965734 724847159 850192466 130428984 718123386 804226954 915133479 48187325 890610979 622064353 829122689 671704695 716893093 69449501 184676009 668857122 865838858 390154315 454641587 261293384 782783004 674011511 862334884 77510672 203409620 78476853 704585715 991774177 992122328 319029502 663211997 848403653 918414867 933346922 999049187 196582356 223704375 921918328 973149153 642762683 752919868 995155904 998550746 820435346 836442418 149287431 498526227 646908123 861109574 239247759 534201355 67415751 522869776 700240847 830497310 506190904 658708496 813613156 826705960 71288999 294671091 457016189 933251244 904237870 995502063 421306926 726556826 293953699 668544104 117476658 950691268 439393630 636149165 189993934 790303312 602563437 864728310 396273088 759256223 723417398 807181451 935123925 944147112 292581187 626475160 686340709 777991807 251406202 380374298 380240898 561304977 956462523 972693307 184184046 911661511 814287850 948213826 871551754 998640655 966582767 988925849 281269732 469562007 254148493 961392164 176738761 951574980 805310837 825897029 641180831 738217393 485196236 811120730 605634494 644700320 7217775 19747262 695934099 935775738 872273122 908735160 362075447 534000604 850440648 997418682 621553997 909718246 327170214 502097685 894076620 971150084 75424169 880701810 740200999 817319144 856780983 898308402 583080859 742144958 215285763 960502408 555587423 827305856 27387981 801606488 513369946 536043182 294298040 387419164 89511581 889716914 567002782 707199399 996064503 998461850 374680832 711727708 419963163 888677382 32155364 616704912 179452272 847979110 820515536 938382869 737404052 791224654 470539002 671824766 171382036 209757205 88353630 728906266 95052784 170105388 983957959 998896876 991656138 999095990 490896269 763601520 120854180 872887478 752388085 815972296 970870654 974748622 408125415 575937663 286888560 343644794 734008508 939136229 576769346 815025436 328805778 585352767 606212946 703049853 863556992 958309982 242829946 815166332 524308377 768801505 541282308 603457161 47728509 213292594 725691834 799815322 599928546 699087543 644201155 870708378 169641627 587874314 130602499 812127851 634755746 788205315 643192529 852528675 92191512 320962747 444444502 610082548 627627141 810280202 601615958 698975508 538133556 731660592 500189069 941230777 608098604 728361717 330081360 864307345 638152778 891708979 678336302 830810094 85547322 549446861 27928560 392719123 734397824 930180380 598641085 634934712 567114247 832160485 808938455 990364073 572681009 759127583 984316402 984640169 793101274 970954617 548245500 764416450 841182329 862618746 184434879 765449787 775959958 826544826 314594615 700417520 719496783 971490839 236618815 675638869 118189706 370345983 275436572 609736294 848715059 915457199 6897220 174015093 979105308 992728954 487301430 717727383 434165641 531382971 288816298 515110633 107774036 763027020 806120809 855369383 349011575 692828776 630410117 735927537 821019772 853082400 407868929 456767207 993371933 997462689 378812249 670865857 273087781 961529050 708558309 733135052 182878899 640959359 106489036 857955948 486419136 647356374 211916321 828933828 286176051 421009769 679828206 955171505 123944130 950691460 560164464 731396432 677817562 693971320 152099386 323380927 360067479 591296144 566618028 626100247 23107611 699345484 80619307 446707834 274418706 966384688 500395114 582186347 689157968 781508813 301231738 647597595 981571009 988970290 512926044 922535284 969558620 979620793 771075080 998479083 35705793 775742962 284972016 855925946 717100077 949774203 131462546 377407415 45258658 324634972 757450288 823323234 555964356 849814943 22490979 744276663 940083912 965784928 695908009 834428420 258406996 834961984 676365480 906749519 847204429 902736990 444858528 450463481 737919212 995067801 206411832 380287593 361437709 898236477 936370212 992204259 215564697 456407391 713803279 759643052 587438290 621656467 243796151 658070311 601454422 862168826 737191054 847479675 326902182 802000621 411459605 508733016 523435134 951734112 684562240 945169859 235490611 492989553 105364941 908731642 31145720 653846523 587953420 859995220 730852059 814403300 313444944 504303704 387752654 582173065 44032724 400230408 74543027 377998223 387494458 673317293 973434597 980386689 250774686 905868224 564089710 605754378 509741872 729310176 991187261 996640868 482142446 691687024 173217347 948159430 94961922 869279325 882428619 971809535 350629782 753547685 116125854 463421681 821016686 855977587 143043637 480172068 897110054 961533095 78847831 500399074 809913425 829715217 428406126 576374048 647786362 686652049 745444709 944777921 243316475 620965019 736053377 798313050 282170383 460970878 446596411 897860177 298819440 868353743 172105145 741988627 935216129 940506787 177280647 243197095 911050837 965602745 665558357 955045348 340696509 844778953 323624545 419442208 930630038 976235425 277569796 579290528 317344660 706388655 80018809 181195759 167377652 901368941 143366418 663092163 309116358 672236963 767017650 811432000 961418305 974517118 855072128 911181541 718614987 839024025 638270772 669654937 878432769 951771233 948743478 983469961 823875018 987521437 836956044 866547680 200500314 267237516 915557697 959951218 873053234 981672903 680333033 822939326 48183760 779528872 765307554 984424857 506493313 849736054 467022558 885662564 799283003 878701486 417101284 574875408 859869221 901917836 946512767 970960498 886153210 979754288 841237637 842198130 280537133 942227998 533551423 641172501 916458285 957463863 524884476 807020100 844149417 884180820 463404964 954850709 756716211 862226113 317841947 334174062 768320411 923650944 192174593 737310343 924602481 952818931 569312221 830263066 239128271 669212107 593069441 886905427 294914272 622722491 884913534 886495098 281054678 624270531 995696044 999148770 494137129 582550761 885065340 968287866 799326658 933506670 556578523 654763873 880028473 955349229 111566761 214624218 537874543 574891634 168583964 484642559 720808406 725826363 3513659 329109161 63569320 838879177 36165408 862513095 728845991 751651727 630357553 729431563 777403507 838712920 600038759 723410322 906973050 923827429 910627904 988661144 343671890 682197129 945400204 969740889 402802193 722659118 127511261 678289682 790441693 805812853 187553074 868253083 486779067 574947411 306604112 335239554 246607675 247676011 144730511 763158931 866731837 998743569 523313478 603641697 706313203 963389199 717376983 943354232 23907407 307042015 638078281 648640142 770792053 940379098 292244089 910621184 906387284 996729244 677331644 999719240 665055734 818226333 548679890 587252183 448146402 965686447 665027604 819759093 321735728 578412097 481762952 499568229 478126816 517461293 416378141 488313354 69580161 519371055 880220177 916300021 234751651 812663748 438365268 441723251 791796698 943422626 456887505 841159551 303550109 914495597 546817563 990397230 327300833 718919926 38952373 367203032 668563037 690936945 8246979 519795999 609782776 776481402 211694154 355176421 737501731 880597864 431919810 709556610 105870015 220133047 342153689 975546590 866940835 917685602 528975678 953197552 878820974 934606580 812067117 930440450 996602138 998258042 867269307 886908827 14009301 560517173 949555813 953547083 884489698 907641815 842224958 864169629 16515988 262785607 947053272 990203280 154402110 559722853 58955492 648333659 224934089 989599168 913196023 946035014 122138970 557589999 51463369 808202087 23576566 229376225 417576186 550499159 839377306 863120946 260594832 346980999 93232368 469910970 966165315 977622624 236502775 362835867 379089623 819440145 790170107 867138956 661059416 940039835 979826904 985956318 734744909 758697783 340350488 651991356 383594803 794186873 327385833 943419709 149996666 978429505 252262854 681765976 73235386 971781285 6812463 261050284 211605077 678439036 503526658 773501694 64809781 829525891 563957846 724223497 35185409 223045998 169874737 204031983 514351121 810230251 229590512 655314802 53786404 935531798 902429334 936341971 750683001 928086852 351577970 824777111 684656793 895403209 76687928 958911389 42806991 64515558 298290967 798104068 422655255 924408348 885911563 916372048 754523604 935852571 540128454 932090259 71087862 316454808 402519022 726435797 125567542 701565989 566015907 687358093 34006454 137138040 880537606 970803896 774626461 946910615 891955024 936936569 478248798 644530540 872445526 989610069 697822352 883998461 591041537 709555952 48861812 702770643 48623350 838780628 777445573 941068549 371386515 429531876 150201783 811718515 181097489 893165612 732865383 895525289 638262504 934785552 200300173 514012916 39778 142142435 835005036 946378922 315973928 337576903 402246778 653821420 468670414 495111855 760345715 883063390 188309603 443808873 616897665 671935454 185989260 793745438 827625684 964868159 180946686 183777569 991418210 997321187 161077547 910524036 429722619 701154335 234660904 809340620 200365450 491092885 556062918 603854271 793422901 857754569 166802570 181438117 797781097 896297536 721207766 941944784 440556904 661440404 487293497 652750939 452155227 551962274 68111187 304727596 975811932 978246067 114721330 572487117 633452173 666692150 888823291 932071455 910735636 923816679 926467618 946746740 246767515 675147230 913536230 938882016 954672227 965683949 70816827 930967548 757371514 918731292 299583733 899683193 498806465 714245119 290235144 353804077 49288374 469634689 481072291 677790998 980427145 990437571 525331937 884845234 728302208 881163737 9039870 652228681 22494380 790624621 715496346 758944407 985358481 993559369 618738422 794345456 133431524 623515323 194103784 496479160 460551316 994482369 430371892 710413076 473506757 650986157 814110242 848058342 422237801 537589139 586316757 831690934 266219970 308922511 649277916 951895173 491947645 932717371 197227968 261140484 137255735 569689171 862662953 880333277 588252343 832467123 606020662 620135202 886836514 947844452 402061733 573462004 539639452 971771093 391155432 624418066 589144914 699055040 684264265 739182949 606524570 749094667 197902140 866486273 238736314 870907660 284804290 507948272 412319405 955205686 113355249 262102524 547771040 846951872 92250942 395091669 99204658 711147605 987073336 988517992 615571304 709261990 110085825 361635187 449240581 684977774 688890450 891012886 752475860 880538999 279614447 886515234 14855046 852266773 151680199 822485795 949268786 978644028 585966071 604824425 932652380 981235818 25920856 936541622 875417600 987993179 331786184 860666164 372679547 955164466 920331553 977774974 463106305 851234831 146015379 420635856 461490715 914201811 774395362 862171490 850173074 918354123 615686288 937301983 550163096 961613199 170807416 503824371 494949506 545321740 844023953 904901134 508101949 925370637 66744289 957506907 563757078 975678240 506327553 531184067 718153473 796658076 606204307 806267800 765252111 851799079 401215158 918640159 587162437 790451694 961543773 964829115 117200712 314128662 254457030 823206063 528340041 910998545 611709919 635186807 184856232 334403570 388713040 439902283 85473835 234356139 92427802 877515719 213799096 878100523 723696937 747561428 275660643 327248672 540002054 775023153 259398075 803339069 123898913 161056465 177960199 435095989 781578147 843112663 119251523 534039443 695121746 798842614 43183188 90616749 433162251 909225890 286789905 356231123 76716373 172247026 665593174 794260583 948242071 972599374 770313723 874106500 826471419 938435266 629079019 944484559 864269830 989516287 306440537 586993194 490813833 726546433 392833490 951157643 755235541 842225582 57016099 65457605 469687514 745281932 547918247 861499854 18305703 871578697 438308277 680977975 623864013 922674841 92121078 913794051 182250063 918016318 498335698 940900626 134290901 375735141 324298662 915269597 358380831 890359049 305731232 966352887 569639876 571139039 534810894 555677929 993321934 999718076 383013889 413493733 636794890 910996308 748916672 920477061 514908462 955625074 54890931 562515399 250035367 343235694 119096157 583856847 144066284 553736957 555922274 908332049 885831259 888844421 184080298 673023861 246283250 402090109 628564252 795228524 806427293 895236297 290285152 682833806 421010084 725976786 999242849 999615147 311314143 818767404 997580388 998377054 381036900 935339925 305660871 547562960 628543332 898120571 330397796 807088085 900033629 902394493 647406255 714552578 753190497 979366464 359639496 615621905 257145170 461566365 620781215 919788718 133925550 609285554 514607525 955357671 591500307 792028167 380029159 412879196 331407882 668158567 943999294 945516669 902136025 902382043 472570725 752654988 747446677 829311876 891868157 925636689 145015716 653465352 137323081 469620530 678655870 683948385 759680482 938238915 112757518 497638705 824025065 837534533 415691628 913128137 237889156 420771311 865592087 903894939 956296521 972031891 95401440 865798940 502558812 871759905 758793671 875995201 78497333 404279490 391149901 472510489 281246047 624873432 29967121 700653922 568415144 951887067 549087992 975592383 407286668 996285173 7850931 428164458 949701107 954542457 109486968 459137129 947095724 972809459 920212671 933873001 271940216 921871427 463834742 868242812 954684095 958785226 622759053 633950391 214098098 442318172 403720460 996249183 532132431 792299354 194004026 832839540 738139240 784516532 908889297 935840533 460834870 588745145 374254943 684374649 905590781 921089093 677393146 769716307 242507581 499801984 796204518 953645359 805863103 903557643 329693471 839016818 822104875 889686864 570337580 692585241 618555530 810864517 377116987 473416572 145010605 575325205 84252247 516206032 439895871 661860144 482819379 997240459 199438254 371950102 11828945 758026475 882771402 982833670 837698960 969436249 837520424 853010848 461129989 945448409 488766342 997764258 743083938 984659620 747141140 878691952 523020496 621273981 474372647 801594495 669239043 774137091 457227895 727447004 249834170 395184936 712470869 924353121 562897495 715528957 930964968 939877575 319049626 808159021 167333790 850776760 468382411 577688649 392579298 501779173 833399618 850219817 18444944 669277351 989119362 997684437 544227764 571928055 519472375 877918703 10979529 642889131 722684589 935912031 937920491 952235665 25594462 480941109 529273669 877658201 897070040 904247991 183094264 789705533 679974588 953164179 869031973 881991247 45134727 62067170 288992760 725809907 713382936 889517062 887682959 968261438 863684274 902863875 803256603 981844973 934962593 991254072 585020870 715208475 59263790 384692212 274375057 733716143 837779726 987135097 633277388 712736016 510642731 572232692 113335132 893444826 411946339 890914458 123741767 999918166 162976661 504054968 905651999 950161641 545811045 880116244 889941067 969107492 879182905 980152699 482097067 725188633 128028246 278409010 395334483 500880174 659044371 757799605 765262123 807719503 559915500 586003484 168727051 550723737 40166797 410124934 768970968 837809490 556296550 567786206 523003131 936535817 378438423 715645000 245275982 620385647 24919364 794109823 997041554 998824860 636862459 805707635 982976557 999938409 230799622 852391462 382632256 438741081 585863709 839369860 347957465 901636982 917285582 979265106 283950319 846751840 201560802 765244111 917947573 926212136 360916769 510963526 368127599 719872947 148573146 714224394 407847792 934006422 492125044 801355754 480735802 728840074 138221220 598624865 359853786 888031131 903527295 943753286 563822024 703143227 851836793 916771851 874218487 956475528 417928501 788128952 243550884 530841628 248590138 366774175 31219131 285960196 621233333 785183837 883660958 901996650 743172467 872123596 701242227 766413623 792736149 967536071 250227998 792487096 539494537 925500493 285030438 584273252 214046772 863212176 2741649 936706520 840059811 880927301 110376810 818167373 281383869 453032447 329190121 805269615 143177093 562118818 898428445 974055841 94958932 134145314 640940164 693755072 757017662 928704958 228204605 860176963 682296889 717878918 371344953 696068081 97356416 684366399 119030851 841535417 81730858 720259881 574093328 857122207 275600885 858813827 582294721 897630179 754277391 964957839 840246909 917708519 598996560 777507326 920824985 987937162 727353473 800913815 15978916 733699466 808581319 888003916 404243002 840402883 44125654 410548831 880992031 938887369 425526980 430728939 631371066 977432033 299472284 305219673 516840593 715122429 835682271 879740129 671920874 707852158 798826677 932591215 460192519 950077405 819313157 866311498 267610783 396503665 677218113 777325473 611384096 923557678 840153156 947817023 864297744 890622733 849067531 984427671 640343047 750379889 480070318 829893861 258331056 604304534 9975383 739406926 307016114 355736079 105372588 709943307 74833127 454165242 223911298 329248612 159176078 992907926 134991202 635565180 964817757 972737714 504660026 862149786 262663122 282273425 132760729 442398360 898516201 931249520 918858208 948879029 302273501 941390626 492476100 918896192 41876233 356391731 145966615 369916800 421915732 570598238 657237334 741790820 756506516 808489369 167108718 315574447 34742914 125117150 138821091 580826861 255636827 495255584 231728514 618199763 794636892 832497641 470790730 945667618 183075171 359232911 405639045 768587957 294351320 777189261 768780955 829700483 884867376 898954703 113211425 176113424 420300459 832602607 535894954 950162098 936154597 986059001 390252082 654997105 714679012 907271391 344113198 555226751 976525330 985552025 237678363 996629435 307199296 871932971 893646745 966851843 866077018 976412542 966982617 988790826 674396864 809360197 349702574 906323047 174627184 968411882 518640744 851724467 102741277 222863362 595858503 819420741 49481642 268755379 841554772 863363260 586031013 938234878 8998200 498962865 843355741 951445047 272673311 324128963 658477417 957188417 718067570 740566582 543195170 848056462 709486234 963658426 44159575 733794327 242934500 634985554 622935121 684803864 42941987 842567444 286341751 372254008 625830213 922874807 279726534 644516781 151563177 361148146 512385082 599966070 133928236 187416511 509185388 969331329 763362942 789483518 48040886 851558243 594362910 604454716 943006378 952857678 768015956 836042525 975049455 994096600 495595219 816654710 381402225 436053052 232140669 993578881 266476443 911048806 909796334 910346245 672278808 907475029 489238316 589568251 645903214 927780160 718773441 957646609 874357909 927138046 221560387 496083980 83529405 592775357 831009454 980791483 867640892 921461808 233902082 756835516 401354170 487961921 907280351 939966983 727754962 971341087 366670445 772192865 879662309 976423782 532584225 670089455 287871384 343318218 259694947 342685553 664657867 757213309 749232149 981455174 179243441 922878637 298298862 878836525 31538062 562609439 597891173 978626319 342521912 787763840 379114160 597308281 29883031 939038241 926511848 982865444 901146848 973271357 453548709 712097653 616397767 655752606 178547237 692906489 428044061 518089725 334425718 566187087 162382078 191033868 292351174 930705088 810190953 844497741 249341554 508635979 182967834 413726243 377646549 441209545 819994134 884524589 361783961 921746398 915865830 977875486 871192858 909545980 479377764 583053079 486075452 669123578 724949231 787727367 132151591 891271429 275529736 999844245 176698622 209485961 322726291 723847535 311059326 396746952 61909895 480202565 947396336 963853650 43680745 99380383 557834250 763179013 247556310 644552496 956129235 968520062 196664091 228279809 342578581 593166558 802077274 878431527 894518407 928314712 683236518 780063177 704972990 924566724 802174323 975776593 693954334 988974390 107768670 695979376 477413955 604410869 726733594 967273296 237387145 299551247 565215322 960638083 717983944 847521158 56797601 494195558 827972205 852867101 945049842 962121154 562892869 944968281 640338925 669599325 720738839 823272544 530034329 616661285 138575336 977181668 865545643 961022236 48601059 977987866 574627201 916976195 806588299 856966561 316617287 981889491 537794164 612038655 80383166 461845508 959979883 969726414 174442793 927912871 446755546 695822756 75034090 243910215 642921117 787460767 117088203 281179849 944970860 981894530 117029077 269251561 809415289 950177463 838768062 898600429 191682036 544571244 992792746 994523182 616327218 943796400 449904640 918709056 338621517 840019348 48177438 518001471 409629497 681749545 78862449 758629874 168493137 710242057 587555100 843818387 54642284 339465074 797328851 878352727 709019150 760143841 282907761 871006151 49257666 774747544 692262501 823690341 767635487 886947631 935488142 938056097 574538724 995367956 704260084 843175695 863797282 931443085 24295561 349228377 581310690 767625467 833026510 990330805 873512401 960542885 952660695 984484006 210256763 960080745 186160884 310602638 32137922 832446368 415176877 548041705 815359425 998294358 310503759 795548039 715609901 877895224 14464466 389039766 539798272 781017949 465884376 666582770 340978396 531955229 925006624 967439565 389134924 700367032 438952986 515075022 984008082 988695215 479292723 526232746 444806237 765464386 749110168 979769016 876180245 907887451 836581447 933008834 187840541 286206294 745141037 870376381 144032076 780047673 931161765 932379157 307667046 418872145 791933937 944531098 950897024 993613838 302741586 495164820 5675479 899192064 794383110 967754031 865509262 962169162 96073355 293807322 574099691 932669282 797187602 948271324 415977232 945521536 565464307 584861322 627436048 786191622 967809385 991673216 758414515 978364339 268194759 880198976 996729714 996810240 517718399 574714341 85661048 167853417 879458738 967758601 173078544 858542862 368910477 756122554 33989233 62099993 538741903 782565909 826857464 956193545 151051366 520158331 257741379 347691382 29838384 935134814 544576830 899344124 735264762 894944805 672208652 855810022 82289438 270898118 54984166 240658931 784043767 855045327 860143382 875938998 556854783 815561902 916678183 946451035 51934594 176891394 800647707 871779593 995940378 999048437 231073722 345957572 299226804 366478774 187150843 868370162 187692430 330305680 242816938 639867476 191244390 931935506 475354563 649157000 104618789 780868887 992734189 994211880 106525505 137555974 599690671 792709690 831346863 937597900 560544002 774096087 705325850 869581522 89932327 365653017 313024344 382828256 953049799 984752882 38581817 939326645 621490515 925117818 18604428 867749376 954532438 971992416 80754087 841031577 975615960 995263625 502308054 834875117 178263390 544556349 39293854 168911689 320496807 864342709 995076620 998625607 199460377 785983082 462648445 625841652 143061090 366502248 136126598 262095277 55590347 293746159 882473860 974066825 351287172 978280287 792393689 801028555 380134551 716040340 747646602 903043814 258945634 534941605 236059264 382768067 160422478 280193852 500388928 578555503 828767979 998119374 34636515 41274579 684686942 769013109 341377811 600285235 310825759 706403620 506301336 799037847 974546758 974981625 195968701 283309602 358222300 413402227 902320086 952059889 117311687 618182882 404984912 929356843 815772986 978219513 219127075 894935375 730144189 840008590 486539339 672314879 656943784 723127895 604277562 607004760 556210705 632608013 452555753 485366257 889341952 976418410 795538010 978246781 467365910 884752433 154482765 241109335 468709395 632537785 513740529 948772506 292213612 342472607 479618240 556102761 582614122 603446279 529753745 792582414 676094118 707131727 94803872 821469658 979404392 993056433 634789016 806336116 728947855 752466128 355719870 911986988 80722747 618962492 903258729 951942523 475440903 501073869 538710079 725386344 858179469 984805535 725791581 760242085 502435799 764145275 87954183 456397731 201262834 471996488 699144816 916978597 743243921 925570648 484637681 851675470 239476772 436340422 485774619 858210532 523865819 580594457 231242464 979072960 569139731 785988703 148172123 684395003 673293392 704692447 325304484 384443266 471441598 901616796 323067969 929431113 869943494 949456533 223624269 440282596 157666327 299389716 914449891 970642566 422274384 716872374 74360808 889747726 764267096 784993829 227847581 420096399 887008448 980389365 601398 66499075 244510605 392172395 982935279 988027439 948459344 985312686 949091441 959676270 893227449 923382039 19354584 57412428 450869493 538344554 688112183 739749030 609584155 910864466 401067530 980138304 747142892 751757242 628755587 894259917 603396472 922655236 585525430 775331583 277897407 748272606 191025324 771417122 128604075 802915190 581265772 997845449 109192799 221320110 50089454 715759256 31258263 451603320 674232003 735140621 625230952 956539943 172444822 626380465 154701380 172939657 678646489 863132915 267009573 838358295 934801912 978017624 353223826 848826588 368472577 538174136 306524686 992528611 479417425 780911067 630825973 951858620 627473001 630515482 40400768 65557777 691622927 766598031 895431811 936122648 180865028 795426632 292482987 329257500 218114494 522824300 248341686 903388710 427748437 907654184 955900957 974167263 382034611 485719251 64137811 331317860 231295655 662155689 123212658 479444962 749558393 759122946 89986681 879902061 35822838 839016664 551190718 915412075 935333533 960931400 810906097 825236659 5511022 177080790 5162978 822095949 649550685 676571952 284384572 892347024 807138852 915495365 679221456 973143075 615852649 785666259 257486223 717129688 209050674 698419565 963263054 993346542 703093799 995732935 595264877 891070285 333143794 787368273 858155987 899869309 581438734 694012644 520356463 566355693 677042108 810906127 905540306 972150410 273813870 531581706 115752646 385306199 72909470 580843196 832116796 946842250 113370716 173773780 778392790 955098349 704827836 994506393 396380535 554313866 784623020 980287806 974819858 995783096 854621642 956984606 115540224 538187098 941439221 971088053 362776824 473869275 351480403 448329907 878341173 986824133 265306027 777817587 12142134 798845231 946917098 971639819 986992641 992344993 888911238 914332594 521294401 731426840 507159923 853323403 454599869 665918630 584768257 626154687 472868906 904251485 518644823 654191232 858096582 954262988 429563855 528927922 117065542 862559139 586843426 932486853 838310858 866225273 879507781 951334909 307808157 568143756 740844237 893620520 98718321 715232856 940928967 983612961 579243825 981463858 55898077 966699366 119247069 501319891 584985664 685334076 67758435 580221041 238649648 719030437 955436708 961437939 988141373 999948955 367163789 509441558 516348639 812498593 531184699 678282640 771796790 968618382 431053486 596407289 662879754 861486938 918412248 984890828 677357579 891451272 96209460 623566359 243275513 530954021 887548274 940537811 489050653 592008767 137223564 659340778 768264773 896592067 664168781 882588418 642033338 690571417 795200559 884898283 624743860 989098458 66851531 902730061 981845051 987458934 280118641 394608025 857597620 943293860 429164617 689046319 159591996 296022185 50397118 883136831 693931206 750101918 799203734 820719274 200398844 211902634 15043768 568533390 375370382 538439204 191972321 933806417 670704531 893465579 126172837 770015006 553354100 839096970 553708144 927867618 785288236 909342066 788637607 983791130 411807975 447485191 812837168 831241523 177662611 482717233 282346176 722027082 878338750 925106492 747812597 982582741 507913674 669952613 634636909 852598979 820963886 946086259 284745608 469680546 744197742 998309129 877963613 966616261 537401102 610392364 147176903 205028264 64337402 373531559 247256779 268444238 828819808 973873232 644013848 706310269 630784180 928007330 350049185 654771916 641682905 906131850 898007663 908540460 467783197 631382935 266001955 900021649 852983193 972450670 427974600 794007066 398230461 579013791 436091905 860449682 308558577 546937355 777380281 948473808 231845995 994893444 906251344 988319351 799680185 956201180 798874502 981086890 667743129 742470561 981884259 993416679 632121829 816189854 588963034 992486948 484844727 503660818 264325194 595502593 216986255 421051680 349954027 770008164 85244504 437667892 183627527 725638317 331567059 514892858 221731341 489759048 211005209 413021126 555676039 932171560 687541737 886172835 359999958 518153082 65032168 910541847 987554027 991923521 609031661 656400215 829988499 905003885 213036172 467438282 76892231 975360379 490924657 964686091 52999251 438268398 209384978 451043731 616687944 842930143 799224832 813358594 551223962 870406905 451887444 599334925 553260085 628698782 176757126 425553703 300479183 336361814 203005148 605111202 482366146 871416512 704109179 873257283 269859311 872706585 76355515 416005859 172897912 912678020 215520230 883294271 861983038 921445511 52625581 405910740 825019833 950846965 254056414 707416016 163983716 170873556 830092282 888040149 642598210 767464102 584631086 799147030 322990570 564159288 241662900 454285313 379095328 657744551 45943834 687099805 705452632 711638254 769771797 842718816 273877296 784618762 35724420 751868788 307420764 862450388 988691592 989276429 415410757 646796106 440051373 783445239 134818944 961791459 972543738 996888556 374178063 540695330 579891112 626893521 443580954 487900860 618323289 788244727 433037161 439591045 622824983 630093113 196884321 316876351 936287883 945783017 690005521 850084288 487835765 706099957 545782202 670285332 783073424 949926992 165214586 644103768 447750075 470290656 311841057 563975396 840925956 876395026 740427881 897758666 945852981 975556843 29266631 656940476 275332460 282784735 225138489 606736566 197397743 930886482 656977432 775754036 205439227 365034078 592498325 984204519 488894086 541147414 595995352 754329939 302221083 385886791 678045934 978197947 725041246 798534044 707389608 759321528 720419002 978611660 363929003 992448809 714321519 741423216 676426816 903522784 697286099 894152753 500286048 704672459 997922733 999239751 731614620 929577421 683131240 797672251 755621466 976154200 156136275 227493150 923600972 928517989 113903604 941686894 100366920 939384561 865968262 957219451 888061595 975665749 966084532 984681059 621349071 947262573 105473201 966331951 20830644 759357223 188758969 605834100 627298603 666466374 526230356 978749035 188846533 300150396 34680275 109021209 645050526 943247022 524129765 570917812 64590913 274767520 344961686 805970862 149725201 277368960 220398207 754794578 49290649 481376838 923094104 963546622 55469547 519676648 223607208 544309364 103843163 739314333 771970942 845945332 232388049 798417950 205416880 274106476 586781987 765848215 567241348 709437124 572975952 744264987 290275172 415617549 138831767 678534343 929614701 953633184 558036925 814117373 716903068 735432853 233480986 247916371 197085122 503848200 432376356 513377784 86927014 978867332 820897476 969977568 363189879 948243556 419148049 428864733 812830458 917315041 406621997 987545683 596413989 986655683 532964745 599368455 397107249 683356949 934797524 934906816 495144896 782984924 548891742 822016702 170508727 555233543 578155082 632739358 255957299 647527550 679221589 951345464 309043404 984688385 605877945 700674911 374932853 971811444 964570771 974640798 943932936 950029122 955417093 969244667 712535678 970760517 946664841 989605852 825783818 976373905 926886817 977617800 473334654 749096017 512742151 728295649 148469062 401135688 696915034 940733495 193947033 632021886 207594484 644025491 888444841 990127958 182398375 426614740 998525250 999410627 856694988 931754829 210386706 266416088 609656643 870628122 639030804 659425342 303253127 309254303 927536846 999265144 898740546 950799905 302137507 700837945 583056818 672859932 449195630 976767937 769599943 855516185 355202133 990220088 993789964 994152397 184899808 228829306 583311496 679960774 43413407 56720633 526650541 595520652 542549559 868438884 701912250 884682781 661584309 958871811 592505521 647270582 629919299 653503272 923202720 931684434 671739033 977502315 904693763 962294696 217824721 230617586 634610625 686378947 100781177 524607305 715443723 748468251 201591897 785054771 632897903 672965262 472506430 724956447 433045753 822954558 440003715 669937466 52951509 628365850 912376573 955367747 770949246 970390203 615691206 910981910 152689609 485754407 502609858 750404570 774059761 841259740 391231621 475806527 425456676 915992990 492364898 875782468 488706275 802381952 595555469 683232230 485675016 554530902 723192529 792361830 257397258 979548275 770558259 826050916 958803369 969214275 184170900 657159798 355209272 524962369 938934444 980145160 866468493 955738693 666046063 694304965 112153205 468637681 356424422 650779708 131773193 935359404 635904010 867529888 847248207 976876412 47086268 635757272 31132021 947529431 492890317 544892887 528883893 711842468 278991591 460456856 414835067 929874506 521245832 691153003 893895503 916896949 629794711 912672847 446920536 929033088 242229381 582801310 931364629 972214106 371392563 901784590 132473585 834008565 320348600 530826940 997215506 998323685 352430089 480193074 99750082 563122220 714295814 893132952 790360895 870729707 406179171 996999402 906929277 984577514 205256521 885221176 431255898 660197436 896125409 902776597 830866444 856145821 134610221 582388829 457008273 707885706 769377265 958109943 832759522 958992685 202826558 934910583 77849412 801038746 770716621 770827216 78918957 735390109 633954292 946888893 497261235 662935009 830828115 887832725 237823435 965386055 364983332 453060980 544382305 849460329 720507072 745779921 523367257 866378388 123819316 830168748 827049391 950158886 501229951 870734850 53767024 162935806 442829705 462954076 536628246 870324730 286406465 780204847 803621738 811473239 724906781 958232731 363773072 369637484 347957364 944064568 742893086 894636441 566565910 974620706 662105355 964358151 411408470 792461523 76793507 808620605 56649000 119013725 442307812 483982039 676831415 686094913 280608442 558676445 258656585 549340035 639571160 755097513 517922779 967782210 885490128 998872363 249254617 554646404 475673748 532927310 213554248 372624185 47486528 138546653 683303671 936891117 802167879 851936388 922413581 960137581 538880077 706414916 859240675 965216566 871128992 939105004 46818185 148328455 523887373 611418204 142860201 735714112 354455080 609721002 275658719 567495563 945289348 986087372 168483489 524032549 215724366 768520593 876991127 885835250 237240199 542393598 569583871 852849319 251226956 306321367 265843594 368222492 385606157 749059074 27851440 684698378 793370230 803909699 170116561 733037905 629984277 867796146 230602782 769174207 329637722 343913148 946513331 947678830 38097067 277905099 160599643 802246415 818793924 923049193 253793453 493578595 325391613 919798047 48383981 236955910 411246064 510354660 359252153 470712463 293468539 882057035 838535780 978328962 527575427 931121814 17487211 78208044 446157644 798291830 911878616 995450697 984487342 990527965 304304290 731548362 731081627 794777957 514224422 578064921 404656461 729125895 156037143 788305748 972498881 999323792 580070902 610742533 963105109 963355001 131606079 456022443 602532413 823477159 592374704 732538434 126387433 702659569 785318590 915023713 593608719 735340746 241488550 489990159 355698894 591097730 778832272 970491164 117240700 484523449 276865664 860619220 252119357 931920753 284276824 494466091 252551882 464609235 406857495 960270782 992356022 996303279 740293399 872751102 399657214 929137654 380567117 411367022 799062941 971165212 77545613 202883360 594642344 719469415 746674314 930380835 530482354 921773708 741420700 843213859 122170345 425774811 100498978 693798549 483234399 839537940 787580388 917694340 579990358 916573893 482155809 551622661 978509128 979393999 662974722 732029165 526660343 678718692 648027309 783659887 764848596 892949060 117869200 230472260 107684689 409931147 220129757 828605226 701710441 747347060 489339517 934620036 289987262 511196616 473190117 826207433 59401556 540040037 742763971 895700675 901584467 948758634 455693151 574852385 24014345 593567573 912804287 922898063 512987490 629321124 676774798 977360294 76034201 366276576 735906996 929463948 163862810 385002953 738804884 770799031 549617805 853471481 577991912 909610032 355384957 713710414 47610923 203748273 975616865 992826485 560737088 936800274 774831779 791386851 544952648 890660327 891328652 976670207 761297254 774533288 170276319 762589784 313271189 795158612 376600238 630084513 585054570 953590730 726746879 757264229 878053916 953756156 311063061 960203036 455302474 826760530 197168088 518273095 438066779 964989925 159046279 376957132 344243268 692363542 493987851 700367790 164208792 396751883 466219863 481360083 74827679 733677185 332856633 711878594 971935795 994301283 922181906 976508215 461081843 657660336 736419525 789447186 44212918 755064799 309132308 508345888 83019999 880418367 647984669 987878572 283532046 388352333 594133143 833940127 338404075 603296157 561304454 947709290 735002422 865664348 495568536 997439055 726241390 959618552 415625578 972289111 629295566 720783549 915351724 950174198 505339578 891126762 277963718 938574819 359107488 609841444 341102681 957212753 495302075 987323043 886563611 928195815 235577881 656465999 360963612 446732457 366706884 850500653 844691379 972921274 917504699 938977987 340247340 361809307 72415373 262614149 417468285 990642309 565918297 588540319 18124129 652325456 140745552 839707786 595532824 919841157 252441821 744778128 197643041 221361776 850636363 923312883 18884267 367055774 461810192 663535823 131814598 890100035 767905321 838544575 722577292 890476343 961044116 995173780 536736159 581893936 665258605 960092177 900197763 967286813 773293911 963493563 816423408 971418154 978735238 994410313 280437399 733962961 342561020 760972088 430827789 593632137 789736411 865282399 56443807 914470796 384297613 612514702 27741915 508409812 401062059 904900893 726228825 906353313 77393557 874238615 231471688 858012015 86266338 592748906 809084300 819204450 188707270 320294242 473678125 740566398 509994925 983966477 719601979 984336713 529117215 924083078 99299755 362402927 639979813 867124455 402818802 419282228 429229490 680614083 204841724 847518031 629366507 823743451 486192795 990199928 824426640 949980592 453753051 584622394 777206684 865480703 492188417 864294098 658184256 973582986 935032853 980979813 684813267 942613960 697513008 927736091 976589010 999793827 703694423 974803184 356407920 861576877 488558180 560410594 354509872 384152824 10229542 836371352 46442614 342579648 142073687 519367118 566124615 811978866 78194817 472277133 713266681 802788430 753613129 831544406 391754641 729386365 487478917 614248424 727896912 794796199 49537860 910852087 451019859 964183689 781174426 794449394 55407326 740416734 688224217 820949400 674211654 763010358 457283592 640359930 579537546 717384735 529174006 919763945 675879257 690765132 480154085 763018721 80370720 689009529 630007512 649231887 505303821 637744217 904509941 955218701 273871295 559179600 710486807 807801346 274666619 669695716 224079454 312740439 791018664 913172594 362172036 381847018 38970401 762976746 978693868 980020288 554588268 913914624 102688919 905958340 92878203 476335543 729539767 943728693 363287912 898719797 468398667 496132357 577023985 654350676 962952636 991317447 226726635 666451202 693670018 709839125 341937470 421876208 475322043 533970086 225888388 822296428 860033329 954855816 769784228 971576880 182517879 640544189 531746825 845310109 646376638 943101255 156805017 932240677 784658446 825449220 340683523 399134092 815475390 917914725 553794142 819513968 218975739 524494203 896667130 981670707 378123763 697546163 116266831 421359932 285055022 799279987 972389706 990702605 604680811 775171136 466711023 896176824 168653226 542069695 300687607 672736155 916418273 948655844 76626130 125646518 526143537 951910947 674202783 808855714 667236258 675960959 32160265 803818107 662769007 729992758 877842065 912233741 528501502 625456747 775092089 984625684 403739335 730582370 900355428 922711370 293753595 696156608 788890910 985975180 383346415 709136294 122840178 248183250 590805825 671983740 10278868 862687017 688692821 777325352 741610244 910219418 554538058 945593581 772246280 802016293 903526851 968829222 462247013 801426619 741881029 970884796 776702585 792239654 23221816 994598715 240485946 414729925 689320085 915931553 128871902 561130091 907578486 947685618 960582297 964731778 91057174 941624346 811499442 930446112 484354075 808512111 190444989 445377766 533509927 688903895 623637111 731378781 61669834 805766518 856326793 909886886 444540647 943656512 757288750 971373021 910442350 941606776 242970353 825658194 574190763 788238992 446112219 861546443 62195888 161684164 717417141 811933702 445169196 547740311 234457692 718518669 30511650 152850678 345432502 772885560 735687111 771793938 652422110 999333625 502970587 741259649 594559261 747520648 808988151 907240653 148635713 410962911 175364743 583041187 335703500 450520601 993315666 995544362 879918994 960895657 886717451 889929739 539647567 715988502 24081049 430418471 380250657 916688313 533072180 841897346 58490966 386188961 442331376 831597991 963377910 977699386 820349031 893761035 348448981 530381916 189111018 518723625 942251022 969175553 197794680 380770330 151825845 952408344 235083390 807073799 332627742 840505082 190146697 359994920 259660450 428777091 203204019 952423297 20681196 732268664 66627178 901168360 917911109 936631590 243064555 741947391 356003485 493003579 595061135 722674301 439947460 903824078 813216903 986010086 980884607 993782213 899899367 931832840 310563877 600021760 669594045 834531903 387393052 771040283 906446354 977575050 341063287 413528116 607808665 712479159 744002071 912559148 863765593 989460470 255471649 970489750 285881558 525559906 902418873 911988397 793594648 928398181 717398701 901298642 508796216 786984751 941841324 997407304 382223084 436104708 28388888 624041344 199723390 784162866 644766829 888411316 661010465 898152698 175052548 357080433 96515753 277795764 63388381 78767532 178513404 237466370 487201404 760062163 469505196 826692575 26881356 826912074 788382116 992134551 842881148 844639764 349413024 956489201 227504741 496798904 795269332 946279730 425433196 764746633 10423557 537691070 196056768 608113892 640321185 813684922 543982888 995042331 286336925 682021611 19383253 55660418 55331172 112119238 190541816 337710229 468069702 982229735 971754667 977456696 358486912 826133424 777895831 848839038 591643446 829282538 566814094 909559900 242144926 357708307 99929191 406209851 850384445 982088723 244873303 294864986 907804399 957599357 639351409 846376042 794954539 928651579 602358582 818657994 96268374 162042662 170351053 653543952 302571916 542117607 153175196 998376575 417323670 991182102 124067093 194452382 672601880 920270392 750016849 762526179 156663378 773615852 928293364 967701759 349160919 578239892 240761079 365434585 66315844 354899764 736160772 880410191 605631391 699439387 786837446 984938321 486334520 996962878 368095294 773906595 479700007 706545394 498782332 604519567 845990845 924933980 985562078 990063028 437123722 973514684 275974069 555124579 902889877 924476785 503866270 778112058 941869559 942163474 450320851 782950221 218892962 645356431 748075923 995244610 240686441 508131598 310565913 439044514 353795643 822365622 119616020 809758108 666764835 767367539 428340636 961840999 238665998 312608875 450347534 923215812 900174046 936288021 764459912 927607579 245150612 678016335 564095760 748674058 167624680 974213336 725588933 766564948 428117656 515276419 812925358 829459680 100316300 893739261 415506517 611632423 505587119 616912081 358761030 468702435 308178143 332032643 906049544 956936786 299181538 455074371 300039922 864907095 269570798 654259740 103062954 718308567 742934072 877378653 510916556 958279946 18390231 373508816 678452798 866121493 959824279 963525812 84290895 625515304 154035476 417831515 970093807 990250561 930050884 954319223 816983571 864904194 749236236 920425847 938994243 987990771 381908710 437160572 917334683 987556475 269511429 729893158 169312 806584251 268980920 722383022 647582278 770437808 180677422 919183968 220701275 578847375 186082318 468098092 594057813 605875176 663916402 835747232 37198483 494415749 981592839 994700944 743345450 832473889 897180427 933348212 835160669 837108527 835720041 944915906 85816429 437168792 105820367 987985694 683951052 730575757 743097726 780704758 615400157 647602059 260738318 772336023 11343828 31873519 382476793 690603691 525575082 667443599 187157029 740983863 926230520 968264310 30923663 478430180 18078039 911370596 51134370 444996600 766121566 862661840 576511549 691678013 694589426 829209961 950321497 985928255 406357427 523982756 313366994 673214150 305001640 332732640 553522897 730195403 401666876 753403691 605447161 746897953 21498933 973119522 757488235 872733898 546662522 849150502 145348187 167036202 21144495 469153866 924848846 982982908 826828739 991790461 932091416 997827458 255745023 605498711 762730629 863718025 417084737 769497455 831661682 832048557 3634309 797763736 75832539 150332070 98022954 801702235 868454704 911690501 112742642 945423681 291205689 850120536 571391451 986951759 274380083 284366813 785105940 970783212 96971442 552636242 50379431 860351300 587726545 843755435 468749996 638650202 37487523 950035927 98345500 699333520 892333675 998518301 573960399 668979166 563816203 675660898 57246836 728161591 131552665 331310568 337901669 345838381 743279211 907204332 537431328 975113052 852031930 960478553 583186379 752283865 445020755 616153438 690369628 769822050 598580323 820645602 383156713 926757867 88444482 802685482 646217581 705049263 893237602 987953996 68921234 107523911 247947264 984707314 263427819 375899849 40261130 501766452 892651756 967662627 801167186 837918444 649146712 784688665 769266512 892259930 155402791 182958169 396644092 851721421 466507687 932104722 256433597 902557689 806039832 874867456 276543602 560079438 52712628 585853282 402081868 744538368 572492854 910577028 951148094 989429794 967240319 973623149 858135516 977813350 920818285 956068989 64173672 489214249 552213538 927144774 614849949 790352443 59551772 661346151 590942929 693590189 428251346 937480796 340159925 765027608 929199926 951160180 760985763 984053776 695974278 901035976 627002671 944204338 315297215 727516082 886425773 910273336 986598692 990947800 555837074 910065099 236203433 420390275 529603161 984628265 25984695 212665949 621640054 645945431 135453375 568054509 342246906 907000965 557868717 694164120 870572001 954892450 16154839 555164821 974686439 995025768 889362793 973442272 55073325 332794094 193750660 721673390 101576885 743656119 863395050 949884917 124463016 414936516 542184086 611499287 941718232 972030723 518784211 873371406 829371473 948648709 253107937 742802887 729631537 846741647 999546367 999953396 523259150 633504599 666446121 829597676 160926669 667351821 867280866 893087269 289630090 363074147 710865470 924119026 496036924 989049085 863716903 984497381 813547538 941965480 686003361 874221563 389713180 844745051 655874997 673791214 89985318 324356086 354551238 848823945 535930124 980191169 287223953 448900644 351348636 935331416 674334507 742028412 390138196 828183704 412249334 781706664 708313341 968090668 19635699 305496448 612599548 716519625 42625397 277407700 826773543 827102983 831779727 921514785 601269107 664989221 743044060 977881920 340642137 789346708 187246942 262945673 222785812 862969093 674143503 828666094 186341332 892692601 38625586 577775928 592582787 815928920 335573741 961698082 785719823 996044239 604552035 762320787 991675189 997711918 46726774 604878881 777213414 783923900 79358103 520626646 873130081 900292860 85160574 570533127 812519067 877820344 321648805 588072236 808506509 813279108 393765968 658817406 59560957 360405281 252149789 550068549 665783064 666953946 775393895 910605634 252362476 550124544 71725468 949002090 989306802 989874647 759442716 892107573 166259749 405335666 34746613 375414502 283687350 978937394 296956567 525670779 560413619 565345195 125851668 474164417 763970485 978921755 56518748 444460250 946400436 958985831 664789728 791971486 429169451 466960716 781110500 910399694 113765332 348859134 840443605 918074884 777474525 846268471 140758323 249921111 744156569 881092394 693421391 998866876 317931613 438300182 882121484 998348214 558938628 867134422 511423101 866483777 51851786 904701195 795317735 913079735 267869964 727863110 478370514 614082457 191216466 860297233 738667539 977187140 211072174 474965080 299454796 718187125 738561481 762661770 932580232 960356561 104890316 282959382 735863752 871277979 990094377 993340243 182541329 392632435 803485014 927708031 197067832 218169078 715787625 814911344 443481257 807751106 116359820 619630336 863348729 932177948 674049320 946576710 944712711 945341877 102435343 328100697 646867231 662552973 979071745 979567808 615451530 713970588 869274175 873805303 968434360 997020723 497109918 781361904 520441241 831707929 618507025 672196911 478158609 824512861 692216622 918292378 490761340 663834292 665128817 823146243 735039460 791622063 340942695 870251953 794953383 858374440 540083744 578446305 484614851 528237405 298064895 376894207 805811639 854254745 118643495 146152416 421832621 867309599 797166059 999093638 907873500 950884170 271364073 995277884 277216100 927048725 954450504 971882729 617085534 833437194 82521298 364107530 693303177 933214714 772137511 957241343 940657755 977175642 367020169 626517236 817240942 946559055 329149668 801457825 490675796 820312019 818430781 985566008 115115391 912350768 400175335 511848742 455589151 937798557 13249006 508832503 963608527 986771268 785990157 934620393 502796668 541855952 686074632 803797538 184547039 744710829 290228909 503042465 864027153 868016226 13944387 953339916 805446872 964372904 79150279 869280379 476161084 741185333 983155339 996309183 335510653 931049577 569410127 914890329 31988105 584375512 871770499 893997571 159632234 708426927 762758136 796803679 375650424 650421819 699137066 816521081 464891289 729896542 700176681 709430290 59292248 806086478 299808789 740156054 388733730 691772458 892903984 952290190 374954837 562570298 726626416 975790344 605598666 840863022 363327051 454272105 393167568 686156014 233659448 788416299 910416802 978613530 716674611 983492577 850747417 878356332 935306482 994641499 689901794 997515126 898664282 932553874 888380293 916843592 629741887 790691956 140423885 409693751 913780270 974409242 299003331 523414875 991758568 997574874 260793076 928117563 290683851 346764174 227804440 801258799 576234679 725338776 136985299 208130651 899709996 937712685 786422845 989974134 549949603 600981995 918045091 974159498 719028275 807911918 939094557 954799640 893854468 981749321 179726895 394996671 935954259 950469232 686294478 944095520 807786687 869579588 930772780 974174039 506435764 649622812 464620107 923663295 945667455 988874362 417641269 878499204 854135300 982020651 351828854 484800465 489797324 643714227 14478490 432975969 751947729 798749520 736808958 926567214 213873204 425395302 22597958 786075372 752209357 916345485 895768319 987598920 218110232 579747067 693248030 916494166 418865486 440177954 469906430 550494086 734471220 848499686 259438872 306957800 682966552 945899045 190135460 195272321 280466580 318988825 183930135 804318056 339760234 705999330 371913461 803874556 620505767 862182014 603489767 718395764 384157716 909733093 650134820 930611325 653658288 925901288 135543 34084419 70859531 445453150 123066041 702065297 850916384 976424584 897936198 954386258 843263068 941279102 719946902 916630303 7072863 628766920 202950638 820105136 80030392 796969224 864943948 902501411 723953285 800106299 254010133 645048058 59307512 884247471 28067472 340677664 617088642 838509818 65888777 214990263 506097438 604771851 431084148 587805298 617638083 831093361 547383824 589518383 543386922 583400731 551716795 977199096 746492496 769250712 42424028 978977941 218286478 622496796 167839118 758857402 485773176 814898934 717227824 819173117 796093289 980462740 131464549 280292402 48995432 794607902 665218072 796505789 542298079 783463973 706805652 953930065 717359066 768188308 700269924 799234893 529805413 839854362 766587529 853773934 176640458 422105187 963095839 985808372 250153978 386985647 843960331 885562862 668977836 749118922 272993505 970996574 18798426 23571848 457593956 590935414 557773097 586645732 911319097 934639877 475414722 845466579 360997230 901189325 429014547 882347192 785011327 962816765 547383550 696761453 500482721 667322513 221984035 994421854 506957350 903145835 948890470 973433386 55157558 245176061 126083536 977969980 115463613 218126532 397626662 599808503 183272446 784273300 716112955 726270964 223396543 359452796 681096416 732026326 957141418 979745699 920525498 985072766 582078781 722805320 35300461 424276020 351464023 684330351 77363797 804702754 409060820 946755459 797699840 809201332 430469464 666048232 144858192 550849486 945257710 977860087 889069942 891701314 819578561 989451968 461539326 833971694 412635333 828537290 569161324 698381816 850849724 955258681 76095033 97024682 964279628 979231405 459809283 957836079 731273585 836533097 219784574 568002595 695162755 931339330 290597484 852259494 513226447 529917806 778707184 789264223 155762719 548365170 874507561 903001715 28641765 299395285 91765116 233124373 323987395 661517696 110653596 796167117 259207783 931799247 569927726 691566496 899022613 971561156 301184228 596001284 101041587 347122902 582794613 596483853 920316655 956271358 828332766 992843759 487689158 965214092 580597424 725062878 192795089 390341133 234454604 493080978 493939597 740738895 319621849 954592291 9405642 420236508 107537016 186843928 447848236 660917642 804909547 813633772 646462297 857415226 852735467 866315567 520752141 860787330 501664605 820496939 152334688 295390804 505199922 523869935 823529410 823812534 583435815 623256770 425901097 477472371 772306930 973774093 667224917 920747753 850593918 859701454 681600223 903264706 64289359 278301730 585136657 969329361 809969663 979100069 774284131 965416377 134102840 480082732 372396363 703669060 187232023 269598625 837416431 868939625 766675815 864186699 242533390 550549053 783478090 878860210 358882083 638681870 215313287 431009742 348509939 409226330 395812238 422255111 379621787 417652966 50479342 127562258 521385381 709517035 94746278 192414934 669027015 669217347 389295779 754019772 301843803 589663549 599999550 901760881 46776248 697877340 253296068 885071003 941838061 972415097 851637878 907140313 435758697 437991681 503930421 862593464 632521010 958451230 284485753 980331231 260992697 581401564 20032205 35888671 815204040 961704552 824821368 828976769 261909481 995218599 317291906 799512831 182510283 592338588 421733391 498355660 419066477 433990449 490773693 922335842 152307861 247773027 582332810 941056854 515774333 920095193 410747979 921939227 112755277 377176051 466021806 694683971 547501371 877700903 351801758 690023866 821726372 859594688 365399077 833097014 117803434 856075142 918693383 919475018 722170872 850854359 112885955 174265991 331184175 367619271 142665238 668585141 985275212 992820272 345631466 561166173 292335032 777891113 288585817 459973137 763101874 978639674 80627745 589996763 897034827 961133036 617096598 975963825 228403516 267226214 770778474 955091700 925803033 949038504 455163686 499233640 843883072 884379479 893177722 984924920 339934749 680420130 601842260 870924380 322875843 497320516 797433969 980641799 76702615 909982547 653614218 817956821 837761042 916816407 160187630 466487266 588869299 842996295 91074237 234545011 295483039 680456239 489800614 857866031 131592545 593795916 99966927 452254955 241522236 776154393 696701496 961784225 950066412 966395327 333577164 485524594 192655555 911065144 854263544 923426339 572462558 652899129 93787483 178931110 402695680 410207248 876559756 908063239 112867343 854812642 960411455 965770820 540144025 964989730 883918281 962436764 959542401 977927111 304934692 429640450 532637091 822253797 221241772 868209586 664981460 777323881 241344968 519544793 979541745 987525960 532397626 773979878 229516551 725072342 671225545 724532347 673070686 858372683 833696262 995554328 552220964 767373178 970882920 988562610 659342239 719828061 749603675 957092210 43503985 449565639 151759139 583452403 818286459 916523728 613618202 813702039 322780200 942506302 358336188 637018296 932029762 936597108 727219751 777749522 817176203 843092505 15131683 316922414 241866629 531276551 257601848 943988409 806610096 955692732 342967989 493579159 186330321 545732151 481863783 869644230 801421304 833008296 300317205 581613601 419418669 865655544 907027353 940234744 842957912 914811767 381423305 646938347 792699283 919651662 234766009 377976744 18183757 444896549 210741843 407864764 122830767 418686267 620381938 917446502 839651720 937959830 588315614 948000964 291232346 359241149 675003001 840056761 621958492 877381522 573123989 763906250 239665890 262136831 574008440 910716150 719703925 932687243 153809686 224765835 801126852 984174582 21624910 730053014 33089322 382429630 765466483 973647714 247043322 314994555 90243247 822882097 582761419 669263845 181308699 985446476 582706494 793350526 303686847 605430923 574591960 942675372 742942127 897338009 134945640 514867095 197335312 725093079 533291742 737421397 411210398 633507157 86572796 638056268 70857507 543110210 465015310 601591508 262700257 569111020 649377090 947281768 324065854 427595578 539700725 947588040 630398314 813096721 848993914 913297253 106445816 574239431 222307594 640137589 582551990 988798440 29659102 443523581 805653853 811341612 936760746 978662033 401598554 672722121 412982094 573126465 491276484 610146217 897402147 925082642 79343436 515336369 248447160 717185432 737683171 827087487 595258452 935978860 930410590 944990670 917032662 983955679 480170805 892132476 845771850 931118111 803144201 898694741 616962159 763579071 371792181 398178983 86055492 810338854 775311618 905121664 416986565 626700174 98894528 621303695 308247355 780352775 62557180 629419185 851993053 868099742 186838973 296543729 25657583 426709397 744371937 797768609 338757289 433858681 900295905 993200314 327325619 390267400 242335994 746870605 216270434 855877682 413643091 475535103 552474999 643264861 11205057 490948098 540689756 840101745 264615685 934897549 945920616 982893323 861271050 967610518 667184998 911902149 39820469 411237612 395491077 559502181 731948282 798174453 754675073 796379756 161468657 843675960 815775014 865961059 664122823 988631383 785012786 999539258 301632400 370928003 430815199 908781723 616403927 961377584 84673485 891467047 890203509 983677175 765473031 818297436 969954015 976905437 537423242 746877721 837202301 945628172 43946459 713448509 946421298 991668114 961882070 969203674 607171082 696551502 78933564 637496995 648385392 962629899 497587555 583505245 18826346 624673324 356497556 642295502 510753712 753473680 930546512 936728211 180846360 458653814 597748137 647497243 242415400 748353496 146861256 900668724 684298549 988888605 610520088 765908328 380001958 758765327 542455244 902372691 515582345 983864405 950507150 978203758 879973977 936951710 268733538 550627433 987939858 988973338 525621913 670942485 152022319 752019203 214960712 295806211 425634967 974251143 571870699 882601528 177766350 732735110 226795533 920618047 855108231 994910385 971149186 972846336 997206754 998286577 522122033 980161134 493782811 760696920 218197307 999982698 439864540 915861788 184310841 424755382 833521844 935845821 10305514 931231727 544824973 634891492 258458825 280619456 805510938 845043675 529526953 872978331 285578165 872286225 677611774 992152140 821413843 957844652 726177622 792997469 458192695 743937093 392235099 791120464 733045058 844722900 507207500 801247449 770891136 863773224 345521789 733824670 580435987 914710224 49148405 162079299 506105500 862880775 222604478 653198041 934874392 987697422 488501057 723122003 452833462 623379298 255795932 892357984 779014787 888573245 446673613 719026916 474813736 514308016 673018390 983583782 864704687 909872258 997570014 997582498 456660480 759267575 939829600 944310870 835717293 889783394 327141371 499209001 135291487 892204144 213810833 863988407 345367733 633705807 308235988 940125935 642027064 702640959 805854658 820169793 584075393 918089704 848269062 930333271 276349865 743066017 277412822 511955447 409550013 668201448 238969542 915951680 66258057 364551548 607618539 819075797 212818530 872173847 377295279 710544208 640293054 773272247 513619843 911464156 820384349 888905686 317752387 782245558 29842894 155241482 335595260 412985537 787027426 849776624 305040896 829366363 747016286 870748172 638280564 795296098 316117234 994612089 561204499 675533656 112418396 291939028 385683368 771310691 136890411 610719440 929580381 955768509 293743891 522045059 135648357 949734188 408660238 730909810 491706314 990822041 592207780 733551827 698543996 833139938 561345601 730421353 594118112 865023756 777996379 837570529 155222203 574587092 226706160 903563915 929886098 959613384 996117162 999730106 257397735 485818043 977687088 987669846 294292232 569426250 316282715 621232090 978761985 983929173 375480249 383467699 249163272 576656173 442744354 656753045 837531634 890731564 488410172 915128219 810950256 841863304 786004449 857834219 60927763 695191986 100540015 703297737 932599484 941957270 965998087 970282224 821825668 979185026 152773324 569356003 620839813 683916752 805019719 838842842 348264832 354004503 618735929 864512650 350371609 439448964 292895227 817611728 692405544 698740103 700973073 832708995 100665059 423682668 529690840 773186267 828973443 888762133 261234535 383478361 350487455 491162318 995041711 996696423 125044350 963478473 85941695 276517073 281999816 523852226 176363583 238464229 85541415 643839097 894800330 975845827 373123256 976097732 137451753 819255663 782473246 865777935 441425394 498092149 519905426 870508735 40515774 803637241 596752599 932205500 769593544 790206840 851446621 967768291 191105068 233096933 131910800 471227189 928978668 978406220 984720846 997808460 167202108 353340546 480945660 762470830 404698563 467964565 278540951 291888412 317848328 630182538 448395861 454927503 489010418 497071085 310327713 828937890 564057661 776599630 613744017 678858546 952672822 965492026 408818555 996337561 228316371 498512440 306072367 699595766 945411577 973027060 16534480 735967140 971585589 988767125 149682519 638152371 259275983 319060955 941140621 959709677 512901661 624193892 569138773 798027525 307200414 962941165 419398985 491578710 253684707 728699633 182822268 359051132 553075216 960273547 200423311 680112598 875737192 974204523 635742223 901461646 74097834 948988962 703130929 715384307 650998025 994676396 782651257 922782902 101354374 596688499 903462439 972992065 296052399 814724181 149107047 533398575 244596746 681786416 778885908 939228523 86049092 716553524 958043082 982821601 237769367 880026508 436772696 997291353 713762293 958596602 222964816 734668265 8523925 47671145 129972409 617688559 210324160 647772007 635205569 870313133 569411211 743812673 154822032 196781677 519998243 630536174 14747621 147067910 815506665 857801792 345430303 401090934 916104760 979643883 534560543 697385147 393591729 446334484 682972232 861427197 921012096 962813229 91922148 422971279 662306858 730346155 185177055 369395323 606901961 774463893 290803021 747684168 61550424 821424523 714098133 912199258 52329795 56020293 919689956 982253856 651526157 891061629 477975213 617492701 747882222 910268043 851939737 874376356 174825256 260875278 399287000 779081198 385129134 967542366 178233909 585674873 905940177 939927003 758316558 978342926 253082798 887759670 226574723 553572900 329777580 804587477 613312959 747133393 350257490 521982928 478236411 733429920 360267503 989756824 426321389 725847459 62069812 319505346 699571261 962249672 520964588 969428125 911204427 965994571 479727079 919176082 356529033 880607937 321990479 932288140 706923330 893181250 15522565 335230249 103611294 490315716 397546293 398270218 561837533 819538359 727987339 774313756 63616386 989715587 936012347 969670619 321010624 744966341 925846747 963743737 886445145 970243833 776264490 893732916 381859233 715342333 203286423 609116333 491007202 709688214 497783200 655754519 24615585 565022330 162302197 982502377 920208441 925969433 155577455 281189775 679374745 770293398 592728491 953514102 48823616 143795083 882482732 992337817 362627961 592943230 728448900 912198503 854681116 896445012 655451652 685515939 76044916 738256052 157856862 222060646 763050644 823065216 155470174 631623712 355799715 761456560 468543099 715230600 120962507 196031673 874092627 907375214 305965883 674545504 315988864 858928537 846739966 881145869 940451884 957222545 286383193 462454156 886128041 975645960 874114939 960269781 490328738 801585745 818649054 854773627 859738859 900156683 506741892 572424863 474158667 605782422 672146294 706762602 695751327 937041352 738081903 819335277 13064236 489248314 266111130 774929244 404934321 646802214 1411938 915924415 619127562 754254104 506824089 647372968 903715939 921880899 548515672 956704602 385462470 395488460 128646829 790235850 931609127 936898783 334198725 650368130 537545805 677210022 19801841 807443407 165857303 678174453 869647042 939204694 45914867 368457725 82352310 492532633 884559778 938570728 392565978 713597311 918412789 999833314 527237720 875545213 840813858 989222839 926158616 970650577 922083029 957642320 93130567 568784876 832198309 853224391 710967240 726466581 390364802 981666559 142518707 180078841 596004516 940928646 147892110 245589654 966649280 969462608 696066024 795730887 723476107 804685178 371289534 566365601 70160413 882652369 103123575 682743584 28470916 947896276 261963625 831734066 416051412 458764866 51581204 287830189 795782392 919051555 499419365 679162223 547449010 552529243 164922772 241538511 149781678 297849962 693134525 880164878 517114273 524384491 459742628 842508397 415429103 569558404 744839666 842722914 41979541 966813046 602442448 799244994 192851254 332084963 447028023 688043718 105247549 503363955 727148269 790638759 641922290 883448913 617670189 920297416 482147463 496834169 502589376 781249088 195397116 228462958 620569131 755709616 907393402 986818613 521314526 743095341 246772832 967891924 671140069 837151248 569845188 770074135 646888272 969536516 433463695 567975137 253453213 339905642 879261022 908372073 226307768 315127836 733970832 791769732 864002886 873767848 682102814 986142644 983169858 988377924 368759778 777832635 836541486 869967137 63612242 731767711 800206185 983024977 904443318 967383127 849519231 950440459 681814989 954973023 665190147 933182503 36062544 263399451 972689676 981358664 312083038 366646432 32330461 121883985 640830471 708143279 929448760 976277412 14148362 877434045 711463903 926198502 294564568 426876683 357186098 990761276 945985230 987091113 114228144 359641493 139758260 959923509 415175899 487521539 709545201 839567083 917238977 987868457 906231757 960934536 922961533 988809575 84595375 683900972 197517316 497199383 559473150 589070445 801778626 886769438 528124903 783768206 620113660 642369919 24758236 191730823 948486464 962651568 496943955 759542813 280129492 895128020 567930909 743100017 933668176 953373174 600396615 965069066 694237551 897967743 519152462 659220899 180627374 672472368 235706128 479703309 847817649 862788013 852742828 858734416 976890426 988657128 915018698 958788199 693900979 876339502 510082904 914466698 431447081 696111367 670710064 695507246 72119333 600233850 760589373 762134115 243927878 841627191 47109999 220137554 596409659 804501451 621648122 739442045 929446369 985552997 226324413 508422747 158966269 609686822 537499982 827659505 463304511 722151338 326324532 942268130 358495562 380597798 893726061 905228036 459281279 841631267 183169126 689614563 682131463 692015443 428038969 963981741 793246676 943384160 441909745 677842461 971311638 984370624 588549290 812070006 512158479 820536068 57205643 817987898 880964075 891073271 845282391 995129147 655371059 932127373 793348332 863256692 522257237 534708873 463490104 812484480 499794309 567208311 453748180 887115545 716326301 891016775 772684508 785868779 524401963 879733692 238366179 925665116 765752919 791969687 775802335 988257577 684677220 700526251 274438020 478112038 655185065 992114885 461338212 880645808 863134214 960938494 823351200 985826984 208721463 420455393 618980540 887976333 262762817 457973177 261904309 368397249 548239759 742899974 375641117 833142082 84514760 659619848 357230945 930987547 266893366 872574171 209934963 386619647 154768922 859002812 498868391 741417447 163534040 675832346 118593503 564407354 930806235 998064034 114513176 305972502 972623169 972808998 530093559 884691162 620023279 799710113 507943238 577998931 179246689 243752197 977622649 995203102 523209274 951917878 481150858 500876654 513093969 979751880 518395880 540163645 193311124 286138216 647574472 910262843 907090261 918484696 964445932 990344639 766080022 822052872 849345979 952457547 135774765 980758980 271365515 835826161 136994122 873519340 719611164 832983110 180926834 607047669 592844376 898326399 269414927 959831855 892642189 997242321 915339522 965211711 406120821 544041623 207978168 386477912 247376900 768274347 91125461 841831228 455208684 871024255 702613956 830923376 901562900 972654292 77577771 165429618 868292009 947040426 369841103 678316410 975427850 989011938 273889438 744381698 928896448 931006889 69231124 855150314 501400922 751493649 271382246 640369599 517477584 601761508 230790181 888964669 336419504 815202310 242008619 740841024 354965196 723496889 620764930 829138444 815621021 895920156 948653705 998268774 332063982 663985517 656600474 929996791 129999531 683976284 779930896 922408840 734670419 989914620 597352355 864607791 324214693 974764893 470135941 998536326 414665405 577260397 879512853 995246916 769616336 956551299 79851823 896841366 258937490 473166529 113975591 762263906 283013081 451519298 778757475 826116887 691244629 909591287 162687846 899500852 818465494 905217253 59510956 182918598 590346055 968556611 816912911 863561124 296465499 434134091 585353213 909142645 286486520 745306029 671817522 727066962 572167140 941133050 687272231 829730618 429268670 592910265 993186996 995102232 25555853 811258077 857208255 996255292 496751356 931525918 45423415 300241213 269717455 548349097 704862417 906470164 749172709 920566375 543109635 831164826 46942161 255166556 546571935 707043384 712747970 814964323 441792791 596055180 37517391 261056536 712928534 799772304 316082317 685690725 737869989 982171672 927930806 994798078 790180531 970248280 107218387 186168989 27679357 940031810 494712654 618500452 398965628 562605032 245181880 965376134 515003825 963673657 448369925 817692960 546758004 762036239 745174658 782879244 620166028 900766248 535716919 967358058 814935616 976038086 529332774 847359492 998659250 999470614 452640175 843041746 495815211 840162591 507297913 567475641 865956131 998774712 91799724 741370161 382341993 958392274 417748952 991656327 214485258 228164834 233236828 556112906 833918970 911078380 894011548 914136965 931777837 985298179 916664499 981519066 500831449 751910125 20705873 963648268 797952880 890613374 237820639 568529647 183001935 358080584 988777233 998766730 343998536 678416987 201247895 676839421 966957821 995980186 635563819 855351614 441230593 537218706 243119490 711546404 264976490 422048372 157397905 367392187 865578495 875059659 249192658 586526938 457066527 463535706 739934694 847389686 699524196 845224183 895276585 896509895 932370684 956561602 30432985 830871052 219033433 378675666 483751535 818382115 597155884 969766646 634351089 894291009 811944253 916176850 132500041 346754006 748635529 761918359 853264757 881810235 556804212 988451453 583544109 788966901 272356555 460794511 679710863 832560814 685019655 876379828 349295441 767440869 695197173 857815377 335673661 901170280 198279482 278014928 512307028 626154841 127271414 600996941 716682844 970900158 949885940 966599462 912012653 959606621 981436560 984112377 116282200 261165531 805460402 866728151 249742754 339278946 810684556 974989322 392682236 707706487 749344724 972748265 244608374 314467278 436887770 993570093 217442900 760836088 131690661 422764501 912890468 914530733 664665530 778475148 196640811 492622902 755149141 790989205 626672865 989347514 655075071 754353300 542607395 722185044 704821390 729484051 730839725 850576668 609566241 918020196 252561363 440847938 284685401 947174101 337107117 963617095 905363772 949807219 914144661 932850980 204167945 858699209 454920181 878848880 601647481 953646860 994397820 997995889 568497495 619633701 591036230 703401215 690964290 925717337 12568640 917649334 169232257 274141324 907865634 963898065 238949721 245106330 476117554 830879346 342171136 421307029 694052488 972822518 771562652 858379813 870476479 912455872 174226831 268276070 588026223 860809718 316548294 777399696 118570029 373750161 206659088 931781359 983263567 988861031 236905792 651255494 696584561 741199674 339071593 923749686 123111243 839619581 628898069 632764587 409994939 905386533 910232056 915867442 77147399 119252361 939539009 991147263 661505708 940090793 172058643 179693728 487395153 924635764 722187097 771363292 66166018 654497603 760965119 854950904 448228594 456661229 739369996 913075325 649504441 957033130 158099813 512638314 851325422 968840403 119011962 939061728 197638475 540024632 121775031 603531538 57514844 841422281 881363265 950217040 44200191 832064311 667244228 807255412 969796819 997516470 678972777 833181969 721823859 819849048 732108017 873169544 521661143 530739848 193454656 658066620 598830236 931827713 222414348 739014869 903713877 947431298 626614073 907133832 529116565 872437589 334870405 584542386 959461157 964427603 505524188 576650560 162225629 465235333 779869198 851590103 352624047 941486833 469891421 689190509 810485421 921203655 88354725 685761735 106617769 457879982 542626635 982491885 267880078 760163071 171590856 412698470 997558977 997921930 961565466 964220460 82454090 92903230 15033985 242668683 875178979 890793926 299321038 318891388 720926684 892533883 590652025 963546813 523321170 941156109 283846673 629298499 341889073 847950513 542050562 638457318 902476998 971784881 265311745 350176720 835371827 886358484 160316248 206841807 146076990 802754602 649589250 773846930 700964150 818926367 939264985 958390824 698450950 982399138 607511918 724980018 137788140 648279880 281422627 345628502 56699454 342250571 57193302 430042121 150564597 832411801 853627577 980905331 602833373 687767186 289364994 949133228 147633872 681239518 836059441 837076672 675666452 851498828 921899763 922882846 816989861 867407207 60837252 742757436 751055576 868687073 742516618 790309415 726557138 843030565 620546 670671785 232552144 603580255 788647158 899178008 263958731 955991467 362599288 770235073 713939209 855520255 544086816 576397261 831751474 989698310 507161645 971510286 186823967 895086038 403519628 854214406 738230810 912690846 348455454 620859221 795984720 810173003 561185363 634736391 683706493 774549984 970229152 986120764 132830279 535894103 651943534 968453270 227013714 542533441 397164623 706953678 470459335 978627914 707292252 913612588 87062076 678779149 625808821 668035662 804799201 954874930 806580269 892087139 943373239 955819597 712854590 798306342 974514214 983240280 597277231 997022529 268645115 517375049 187569622 766358698 435044914 808234829 209236413 880123907 136680635 373321871 962001925 972433044 494947543 815175017 337283600 948527145 509796260 976523534 598664282 642575700 217912015 472647119 294789690 590745138 528256224 676228019 153518788 197962206 829739310 975664118 325802747 856704501 724237351 814927332 242704461 498633864 73672854 630327341 30578525 725906170 24237299 92486656 401271329 904141885 914775113 951611438 91051122 551846594 509058663 945025002 852263182 971228734 87920411 629167955 130409486 700406955 321739507 698454947 181934212 197119652 558970590 969725742 199668322 423131880 263744664 306705870 355990026 502646308 366450973 511089994 449260516 676603217 474180118 824513994 55959907 369639778 833457231 992513465 984724791 986901856 767971057 778553469 994396313 999983536 656695443 868621360 404478727 950270363 601786537 944529783 753037408 775590431 717500523 922350546 175460318 572874857 879545895 897250257 371018977 526641611 648796840 718943607 378874443 800682563 874436740 973338745 37670915 719287983 416720760 533565918 152023046 595401487 830950164 980764434 678629482 855472802 182685536 277570162 140808392 468111724 1945046 988721671 356244651 788177943 335405997 802933864 174899541 257491176 371327629 465627263 439899448 906672971 874251303 958038395 974600707 980006211 997592107 999496886 648291046 720664654 154181278 838750986 355261634 419170734 410724859 563705120 581303284 824395620 694136772 896179793 734856886 886763307 898531102 903223729 340752629 778699710 543593366 558786777 589167042 889970564 131346113 644284083 191526264 411779392 129890301 620186189 732068664 818866490 887218548 947865053 210155225 220069694 146456881 601969732 769028831 967612716 680432448 796854629 906023293 969264077 210987061 336803661 915122041 927120994 577339727 861242103 643069752 977281715 208548041 646837080 391184385 653005721 613618400 977304078 204632388 390212776 102424127 554686755 16899235 601914219 951174873 972028998 963515920 977385770 197857647 248051287 938275236 986165294 980855536 982620379 846908746 916484144 159473518 521997905 15784345 674561431 874813041 884902440 231460884 625154448 893803437 921868398 305749359 728227634 320264492 866369256 113394301 292146976 59326178 783759369 882194451 995355220 679553323 899459954 888901917 987451091 435789313 536157442 894923983 955602818 285694641 434632544 793285252 894346440 896366334 978990456 467451668 833700063 585879896 627593180 268022869 994045749 292195182 408090272 371113769 858226284 386371434 970316648 94476081 516041450 817844383 859329799 414578523 954162102 810542532 861084800 63449114 625371460 350403231 482275655 955917834 984895451 543578426 587461707 862313988 985599240 83182247 811064727 541648177 821492885 763663105 921031514 744291940 779222488 719406804 788481531 638704859 833566199 77317782 614707821 976713139 990977510 367905895 481037644 940510090 993243809 265572837 757705080 113838635 489190015 295466248 443780021 268050254 311376356 224069924 535115686 666740396 752809476 965020232 983940703 149152411 311331210 64899615 682711491 750720837 768561319 881866560 963913920 147950752 230669244 270330513 584620875 914773217 927068685 234957410 325087319 647628703 957018320 309818001 595471155 221196999 667580185 57959572 162963586 196774286 306692913 613900515 981020293 229119725 737432454 378890601 982309258 373807855 917316923 456415107 811460773 713689913 992284571 195085141 704273930 799543468 827280237 676769802 677107659 25503391 747857857 703025249 828475303 848229531 854872390 403173234 493881260 800157807 875217673 102878595 465535454 696872756 756518262 320819155 417724656 646659085 758408540 358374769 631574844 129696086 515096256 901360213 905195271 928618513 972943273 92818930 699507773 891318690 912203130 32576512 676814926 579852257 713504509 637901661 917874455 940256773 973381247 368393178 541996737 869045630 909750613 745456691 900170623 11466185 195368497 781789876 947115764 775968769 988243468 786050413 836603237 487131342 616052954 682792821 890521582 696987315 708927344 420817361 432778366 395033535 428431118 667080284 916157791 626015356 715235331 892936075 932429647 195098787 834530865 460463107 886317626 274476756 484867186 536703927 734850636 864095771 896658955 688474380 702307003 929801294 978784490 135235446 138910803 8037154 38091899 530386661 812510897 927993058 941632496 952589381 961948796 440488727 688469413 413915050 853374134 848189057 900411730 527705416 877460914 420201016 862027326 789294605 861149325 790811451 791913412 150783972 784185678 37713444 101151613 137461277 433250640 540111770 770651058 437259088 576768155 177227508 576810581 802589643 854372110 732794328 793133026 101909994 574593548 248514242 812162317 678361778 975704065 658337889 675269114 299393577 647163920 285537513 505198545 767956207 993585629 236754875 246650649 559492377 626194833 388624661 567719342 842223841 851637527 360477445 408219365 829454811 989516755 415192673 551658321 589396310 891346386 704791659 899671231 230952895 240503484 826327344 893699608 425470223 716012644 654236900 770837745 591375029 661035847 414008814 907327620 540589664 667570897 40406580 776497966 640182677 994274006 825494791 941746631 813733681 980757751 684087487 842182015 487416658 887707283 84677928 171143198 835686913 871394720 302136263 826298077 625928963 855986197 452899484 937135922 463546031 902567978 46342449 423130532 380674742 761330412 16552623 917627129 386817638 756372610 950981097 959791021 9073604 314231898 982647665 998676530 477919852 942883144 95028673 697396698 495811297 995631194 670134526 754342883 328506644 955761283 318687837 775497814 29676627 413194930 308718912 839763371 818954784 904243679 888514853 888648295 358157655 779835397 105285758 496814718 563841072 727834531 257530035 527250314 7375277 342947847 569267183 948180160 384455862 507800715 674618327 990980562 293483401 617624963 364139010 967515355 551332777 672838380 7162656 486809559 69319585 441278340 231266864 420646561 652846754 661910469 789484662 817175075 501609110 727066968 415237530 741863223 374393555 650682915 471247766 896248596 676157776 945678126 788817292 938580966 853029040 997384398 330676180 880359779 604026639 649382788 597861624 794649135 604321569 605319832 170034696 176353045 408265667 650175541 93375224 367841500 445318796 556581396 681326196 721051316 931894646 945488848 531815401 822415714 271099985 447572220 262336935 938851076 90282934 994557514 634370997 954993248 830991806 942006186 911084484 956366387 158060880 395177084 190078468 268573735 225687345 728895428 507402153 754296860 969808997 982712394 107818403 846580108 560968155 876883848 486264853 760964856 523690622 761571977 616500164 762053342 623188170 730928874 589932862 947426327 621520535 625013012 218984736 851444284 780539871 959193942 463165813 638944257 639091379 662431781 346816734 464795878 435411345 773914132 626944042 869735947 669802271 837156002 906618028 938228934 574244452 627398655 650327404 732399438 760619095 841488035 907962132 927532379 294052861 439972424 21476059 611885900 673833502 820040579 848501292 928527023 575875666 802886789 320544846 536359197 70410835 417059923 853813645 970232768 329304009 709090458 837970487 959578533 57258725 619099093 464977934 598136459 363288408 421590033 340186128 889526967 93893115 987351592 490302495 780499016 679239769 730948504 108998436 266530841 979390108 992403006 388712929 961964748 439614749 860369014 804419574 942498579 824219952 853611702 323781857 715048565 30867893 505401898 424970328 474831531 238149302 942652056 742249791 960150227 95196223 963856969 651615823 787820256 81931037 490016647 417871734 927553724 847733925 950634969 344118705 517769814 631412693 726588469 147301145 627233981 985540441 993346131 706661021 979324396 146468544 524061933 568340677 850912150 834678316 949369155 209650305 877668352 221833154 443030178 648812545 953578336 479733843 959370788 596286416 951123943 668849730 689241429 170788237 295445316 517492704 992029490 996981037 998896404 632768890 939495285 129522717 536154190 904722178 976372837 813771982 883657660 644570398 682655288 207261951 663498306 47636970 100549028 241754014 823419490 584060184 640550068 407150207 726752775 824727896 914802310 577522041 993130004 981124671 997807847 722866499 994532227 497051920 866002749 722759481 894694141 204882572 392914678 286576133 494131556 679533429 861861295 829072736 883391280 676389490 994483077 832708854 911420346 193295098 894670354 532323827 849683986 5185564 377923789 737530297 848975792 792047628 859863883 146398603 344502935 118033955 905876393 332119332 598274313 209516051 475936869 356437243 945590162 85187334 238236177 339577710 817373628 40355601 835500541 698702937 966283813 587011319 696160042 623988824 964760826 401966924 729806373 760187051 914564567 575035264 828787359 611642210 973306804 694259364 894708245 428362784 990627148 573092187 604760991 370722813 389133152 575912925 709955300 334483162 529752343 468250204 813093710 796430343 840253308 550740709 930722725 349083980 775336848 865931917 956070850 39314914 86552726 54031346 980966584 993276580 997463879 858406141 998783930 261968822 502600811 168458894 240960121 929354846 962178408 193657585 434982858 898505059 922660124 401656408 982072640 861774777 969993758 524204465 582501933 54914752 956827336 405097548 789634834 278229321 751173139 662771688 689352630 255660772 658825761 453953808 857566638 368819349 833991001 672829971 853888967 148247602 445102319 341687839 656881703 811134117 902610696 571793968 759893037 495455496 590319468 564351719 713449066 183089318 471939157 247161208 914484606 95318260 289962378 500851106 897036528 544062783 580339282 765313862 928329269 166344319 414284330 641490463 892504694 308014419 983139149 120405638 144600084 746458607 942933098 26769295 165095256 199168681 418086026 720818341 950391689 992166597 995708479 422564509 555157213 562268434 857341569 48124994 114013672 411330477 852792589 834760105 998998120 701630548 732499661 140288904 234173640 665249120 991063536 473764992 710649410 513957164 673163821 626167257 824194754 899488892 959330594 785540760 987820520 971495962 998249324 892671284 999014438 912017759 979069704 511681002 526146525 893006426 966962116 765581261 901325998 192504665 801922457 679813647 923649090 289452906 477918799 678339846 883852728 953419415 972151267 265190500 765734302 906269693 932435238 627312060 883582201 491919800 829076250 596124950 753697201 505942008 802319792 651365683 799852605 531309398 783629236 559229114 565280454 410483761 803595798 844523144 851574074 215068368 454091453 73805695 497717006 573648181 928944207 385279375 515875569 375952630 383474442 524449985 657504813 802649138 846087829 942816003 976843600 381210851 544429578 658405026 694171502 255239886 900305366 823203497 867468537 7976991 814441684 328057667 519945957 796358262 807468038 695212856 983845535 82239412 993349479 628336064 878959109 241524919 962921388 786345279 938296446 281446458 675463100 397167026 451068982 769526081 964671742 58067274 817533628 39979078 303878695 899561881 949859670 298482392 413497133 95664107 336791293 90383837 515637307 581227164 747962665 760878034 920843046 373417801 889569785 401792405 843304534 944126250 983465704 575140497 820132495 117031025 152497349 791376321 916077863 771085105 784542199 391717441 652811934 345410935 614163739 145879677 883956676 27702853 969454988 227854847 595215687 557963678 853056270 277164779 307754530 944634330 985934843 111408778 225954421 484357883 917156886 571394594 938575882 98216839 398597296 393722035 499330734 949554841 957585131 668271087 814994598 851342305 985345586 362075055 996044363 297936746 571828782 760704660 764476028 965908269 967576819 35155908 561576235 890781910 959418573 267555540 378848502 157400865 707394010 46784654 657945219 17359395 621911364 442340322 873973508 501448519 886592240 188912915 831209671 218748415 633949795 54297974 784987402 391454212 867373443 928203296 983164724 37955217 844203460 312223556 458059538 548584012 696260017 68191694 554070299 777437569 955620511 273706506 793874342 460515349 687661755 757984563 931648223 968259281 976921071 621103667 799373188 697738632 804540563 978973867 981093410 87887359 700097524 143087802 513476216 892013711 996477674 64106448 728679459 627739351 796873745 139761517 155671943 2438839 470298789 191578586 603733524 907186618 924417528 618916791 944783067 153358063 291654144 823507012 853558130 524591930 732851559 145287207 266453314 316963880 838022221 56911905 988142070 358360004 998093675 755166035 962892458 462497262 861473587 188526635 641022638 709698414 838082065 704035980 795029707 855313812 931827679 375001717 635802819 88113938 957810249 16735993 185592750 757064752 859164146 283467099 575728665 379874113 833095214 721490560 879983276 644794044 787135380 446572524 449453704 295560886 708881406 669293060 807511471 295240417 930439864 452926698 555785785 723875049 837881792 782398204 992380214 980158319 990124013 638989295 999640350 760428275 894144728 467906508 765822335 34853636 97829995 495447428 593417703 575676483 787016788 96166737 133083911 11120964 273270791 106168716 977264667 769497140 785692689 357243934 464412117 641855842 642674499 577125070 816391596 842088309 948081756 851273977 989993987 751234667 853290299 368649073 621962669 31743713 695354218 311645708 706073642 267465435 382938905 449928713 513027203 890333028 993302263 223037650 369326248 161191289 599907591 323361879 792239551 778001366 895772313 635792370 698154752 139258509 814828495 344399941 552697941 161274799 826738934 825271602 966248777 299695502 706277895 399312346 798655961 38572882 912014665 642244585 968436375 733293887 933138296 726858937 955883205 690184376 846081548 786915783 849397903 847629687 999181387 724020307 892225365 623530623 950526601 749321838 788752076 2273227 316246167 650861492 765140340 734598814 779938969 550594325 879901163 654890109 920797087 304290621 910753523 923119325 956182582 374412021 839175797 391738169 643285728 689328816 793500974 275991701 295908084 12287808 336645025 443847235 748525740 458025069 544389519 770586602 902907089 634650984 978204372 181947204 631204920 657844881 672741166 34804884 467478074 635252034 836981832 775825412 797016299 216029124 470294419 669214063 680154461 988672599 997216696 658996058 801670936 802649859 950699623 84955780 887991650 196974453 206298757 613802 26273759 350798518 457807542 800534564 911866475 95253803 715299817 149988328 750559116 221224093 783580129 847873121 932355928 992776796 999027646 252687346 688906094 597924543 607300323 569631121 856194543 81975841 510136010 665087303 710539577 288293762 289032054 423932043 795093469 801480024 899373123 635534922 954399374 61951040 75521024 226567141 443078506 99215326 901276581 330774137 443664942 513628625 866561466 579873063 993480001 469476009 945880174 771757666 840469252 558792264 727369580 932929463 992042516 538337608 643075237 397194577 941781345 720339001 853724368 687335457 790687271 28768979 122992713 662055103 834469526 179577320 207036465 247060882 647747976 27094471 530039614 885976968 923632083 696571525 884904743 961568606 996220953 761284342 781349355 601723853 666613247 377701603 837835677 211483668 749397930 524330904 819926124 753801845 990141300 592701960 616490894 140837930 182023138 278352688 707549081 699029718 782268378 160616688 314227210 758597250 895453082 116810569 296782418 772551323 963866398 488686323 995666167 413848151 770592897 653546298 767318133 321895245 710307684 687202986 696164040 855043982 943575149 563994426 606340534 744127695 945759610 206701472 357847886 259262869 843773927 180027818 842266111 503305202 702920705 248560154 579102517 722676595 922230133 269074028 739992403 777076169 787409882 41197108 336981229 879604221 908624025 874666361 948457685 928594525 963687265 33482439 793792728 549542497 879859481 369882209 572418879 503056297 783566198 239071168 658020595 503138986 899111407 579858348 986860718 411579205 703481331 700734084 869026103 455423640 669303516 717492901 726531924 612875757 647089388 645853779 955913967 373136736 578023912 416771618 639666747 42362142 495114965 207210190 519902154 415311160 629333223 751034965 983029066 619475650 695816291 144511942 627104772 348701816 879651666 462878056 828279055 958034787 999346111 300823634 574885833 851953843 961734375 915784369 926834569 109819970 466871669 323292608 577955691 888201592 925832570 8832964 191895020 172392136 836255578 880844619 952688931 594221533 970073980 522422432 563456248 27619505 450742237 916919476 981693912 459376177 581843169 333781127 633904125 426879050 657273456 525999031 810524480 424379970 915269021 669605983 765262926 581938918 910921839 421645414 486383325 682261203 847547902 155886322 993065658 451799893 707517430 968656386 993665214 314383824 462993722 194184548 197123057 338495613 492439641 471262148 490855778 566004662 778810824 182831082 184839380 609969236 663113766 279766529 846701670 717914918 851434374 493457576 526160059 987890416 996765397 235692622 307999856 169369900 372851852 313780901 725891259 26633918 789194673 377539093 617415859 586377082 765298239 990076664 996638875 560635727 820281837 342331030 480959675 483965699 578648683 364051875 398129904 179585219 846406676 922420664 994508732 83753738 971148606 533360077 713204737 65614623 587999787 888380238 968332643 391844272 408133919 580881833 610100721 697401392 973650796 745203844 921436387 618625680 893576518 769347101 821546163 99841161 725024397 278661201 484324091 32623431 33855110 188729458 794007315 34826607 563706024 268237049 429123113 14857619 692222783 373255475 646415958 707410018 876330834 15317810 986680879 58804034 74445012 865712027 910942839 713652414 756197821 37484428 963407632 61661129 899363286 261350157 433516314 118835049 455861314 989887121 991207637 484347786 560156246 962438223 975845218 860189127 939979265 784285075 882459262 981187700 984231148 541688898 996004941 763272032 879023815 965547694 989330709 720149906 977287976 569893063 631497238 847611080 907621910 508208673 606348509 279039681 303664620 578251917 623835057 320199305 914969801 904819857 956917072 943935980 958499476 117250935 705253097 762467668 799231401 615147945 642445047 786106111 863512957 230342704 581964775 573282916 823107547 896992193 902887684 541226648 748095294 348606137 954145186 53315974 495164398 938395005 970425042 94264319 704477804 277062755 890414683 388673587 503578935 900763959 939304367 186894949 446119000 65543133 834347519 542069579 793620351 5565236 231188123 865534603 981276199 875318417 997911348 968227267 973769960 615954225 722796543 320206760 507368827 546080821 629712073 527954468 686893217 526060979 563032397 472818118 614992970 604732205 605610716 145204344 804626467 577177707 640663916 823542322 929244399 306616645 838449116 163650092 298357775 996390518 998203997 398304655 829509736 734533658 960031685 510578047 696065460 713936867 994521484 746618 512591021 233258365 985448377 282002062 599666229 245295916 866683992 438880511 813105367 725241798 760050444 358395393 580244392 833354682 976950365 421636010 726924130 714602380 816244602 407133003 691397377 488645978 760846583 21252373 934663197 804671776 813625790 552283588 604233662 964452848 993810015 881390622 997061169 779919008 977082677 921262361 966899802 199558889 880986975 47787414 441782101 295563660 724517924 264608583 983546309 907274376 996039183 293826094 981376585 525540562 762292599 170971191 866910134 508436967 833221014 431866145 749441805 135472169 811449047 854307096 969407573 640689495 964751347 614893729 849549266 100994271 583713038 214201626 977110158 18751279 646016704 437056206 732888505 608842719 945419278 368867094 604289364 223838989 913703655 571420555 699915449 75815758 363364606 51776792 980117229 952377470 999976506 214377173 767359633 211892591 531530086 274236531 819733223 407653762 928745750 177728182 772961438 359289847 591651802 795057273 857333092 35917303 791908719 845881165 863768531 619969210 757895976 794536713 836453013 892588735 960622824 53874649 935195596 682315043 870206914 460923143 924792591 677578421 944299753 862267365 938918047 88781706 964332196 91062447 783366039 451296455 668867883 183229735 518534527 475806925 723089279 134043004 382731562 270451252 339403012 611313685 863742060 853464283 877103746 198227994 920267414 466803789 595340748 847189512 872791628 39720078 163525889 117989845 872998611 862491572 946510874 134966191 792154614 184482425 232879095 231674168 755001264 749118153 997112267 845705493 871736499 184743450 816653366 836836125 969107486 912370466 939549614 39789230 596347263 60577983 272879188 365307701 663284074 983893116 992022798 183946898 600723272 591790844 726318855 604161811 738376984 742013070 979940479 943799049 972920758 151161999 180661135 251797479 904917080 955109833 973871297 994734132 995319343 874479513 950291778 238015444 882653429 258976373 462143066 29366349 317825120 861140025 967958714 905624488 919945703 965355402 980073237 972283770 975794033 726670203 782940761 512663499 837695145 989811184 999513871 559316983 730612308 368522530 935031253 549630957 574405260 140477420 763120937 140033921 605721045 498926090 943926511 365931036 857388386 698230486 946817656 493092988 785325984 457052916 804985973 308607332 892375448 845189166 891433387 198038785 693141198 487792667 583297964 862394881 877723729 159605674 712649645 629349728 760661988 345782743 588618821 436914045 867634085 73429269 542666952 713009022 782208773 139237289 463712832 511092365 987851655 640571605 887066963 111250927 121974222 291946602 873958869 346015588 444830666 330546951 915010194 247985689 291516735 806064896 852294782 914432263 937510402 5598146 622986328 470079675 924163459 60784675 848427183 917039961 924579750 508869036 756334205 160077352 264136916 137874184 544958181 407009963 986321491 931534119 931946452 61009482 929240187 562605190 902684521 5022775 293315760 423062933 755686462 796058482 953139467 132187881 379488041 761097909 826334218 695066070 887047933 502952817 734083168 458581015 990643114 907542986 944528464 291386009 804140232 605837608 910384762 302287224 340222340 623650936 932554149 386847817 730218551 199615592 927948995 882467645 983764275 461131665 683799243 144977084 457246954 100340810 639274760 481049794 920287722 415785772 820136949 957930044 969249867 858596336 981685823 179802840 239516740 236408162 756442612 50050794 538372009 751541439 808226482 445398343 730572545 852112054 975961886 500244298 862657907 928913710 935336537 965899698 991414542 678140522 768518143 305110292 916255039 804770113 946616937 929049069 942278530 394752759 750357447 976152609 989948824 272491034 726023335 635680166 705827640 993657789 996962433 484432691 872956425 20819855 554641679 261424589 464089641 289827564 553435810 836000721 924520695 650410276 988976653 394778170 407147650 446012328 760411986 440243156 748812071 321569673 381554830 903394257 906005807 594319392 711726460 90768990 920070843 672909691 826001202 70784922 815834393 970478838 993538372 873191625 941593804 79151866 606189994 816971388 903154371 3217378 275741846 394422117 756750754 830002018 979659218 178632433 372920404 998495928 998880680 740686974 918592232 282286966 612157056 138027143 869352087 42166565 423963685 518517710 663593468 725505009 856375312 34993642 808977783 562322185 817508389 820071855 880233323 217277539 862562085 96123876 281632188 933875946 981732479 57781022 213638566 229916261 794641486 473420766 475426966 559794692 794595172 627259895 959066823 442949249 450987331 160233715 373457877 215660830 698528304 609855951 979884175 484549138 804991489 540882668 679648563 567305442 691696918 606641596 684127846 834724152 971039505 312834577 961250967 153087394 935610202 891775879 940401048 816136740 837964489 254265013 723529480 217186796 510358079 737420437 857547220 452513844 689441870 93105996 379843833 973048938 977928200 725307305 804500956 520400705 607088829 526677795 981257347 319548441 879100634 808598631 951814471 176118857 767430470 656975573 660183903 675561293 954773395 835551720 950035207 152987103 555523643 237204550 947477999 180150989 528880940 124649764 780730111 924506383 932924721 354132808 381523975 946816602 962701299 74698803 76852439 285562666 959783772 342496957 863305113 175957158 441124431 950879599 998007861 141512075 860043988 590093638 750633337 839892010 988930051 835679984 991282073 506884237 896798247 331178254 693226757 967964714 993387953 492953907 580492138 741130426 788903438 990601958 993265002 365247022 783839331 412804001 587740840 608202041 638378386 288404381 296517548 154951843 903309511 399785353 621740970 447428020 996238247 969983017 973160998 121333575 325115915 650010034 971009234 235964728 284803037 597482183 640110331 990264012 996308361 636919929 911632803 123067903 481858627 492290352 494535116 837999958 981612299 99296792 445122134 660764182 936437761 797923838 919546365 305593541 381644315 766936319 770260208 270496321 283110949 912246615 991064967 488728621 722750486 803875171 913563284 801305461 966030298 723171040 952876384 203784679 733605859 303061792 531324350 109232154 346786857 341427399 648011782 254087616 342236515 802039496 957610266 366092745 504474207 535360939 775579173 108047187 458917638 954668838 973825745 313801606 516409805 848096283 880583556 314419363 334767854 450534827 641967997 907864276 974248979 406946043 781197110 39270456 679368488 347162832 944303708 1140688 74809628 663763070 760184112 581142213 855812988 999185719 999379185 556306208 816976748 827706598 899603577 609521682 945849477 514590070 812350277 94011584 602867701 196476325 742283658 502706309 998406648 814772565 970170516 897591924 967471297 222671741 292831714 516828137 572220841 339130092 620836167 167519628 186423515 608740825 869199106 403347313 587570845 146293042 825056993 251948476 329384372 994108847 996882809 48753011 331459258 192412000 250176866 528638083 596476743 768772836 870353016 877272815 985178228 612115791 848531840 105697635 463749594 618143560 705018140 719204119 786504610 370668183 701870630 736715868 969541064 324290369 866454504 424613817 525367931 26459948 157257788 275772489 354134682 836495851 889706007 782901316 867513401 559091591 773813255 800782231 973554754 439555998 825431918 397596612 636428760 506683848 658040877 994912225 998475727 452449619 876402045 573541928 649267763 762813233 856739715 429512915 547670723 799497913 983497970 779318756 998043340 920055974 960185829 370946323 384079734 100054971 936967091 384168226 973950055 643587293 687166614 13559644 835415957 397663181 590116839 14642889 49555169 747788397 757625200 923738690 996005442 40837490 667497808 606258353 757611929 651203031 832845000 492682838 494551043 443576368 867582406 508600943 983127500 951655017 960709251 129199683 486683079 787791940 898861538 270188847 860361201 457512457 890283021 455103157 912051957 810300303 900605575 854262477 978244085 841045754 913013308 204765118 421267423 785420779 927930083 152814222 550081941 322323314 362059114 908665334 983904452 955057404 981799615 64104906 769327472 642721480 963700895 712061384 767847970 370420687 440342183 372586496 997437643 553065372 787575847 423158635 706511191 639445380 644614663 687925438 859872834 944539570 982437662 292298456 583931196 187017037 354548243 197102050 314036312 453951412 586982092 290076818 693469821 288269514 987036830 504581671 956211764 189043493 857455837 556452903 595037276 680942712 682085850 454285686 876907847 45313647 448062479 312089136 985343537 536104965 747461700 7821698 719804715 165572903 679759339 836076993 883324103 368725384 958298574 504675401 838681343 43258852 134886811 842918084 918275350 131232379 594078352 750968394 983892719 4161492 864288955 875791211 877597521 658782646 901042384 396034644 875418248 348796280 681979502 385111843 925331743 243564938 326916724 701172573 965991337 901125018 912564149 162024084 507284197 309638027 693970850 79318463 572601836 298122829 797535032 339192470 532933429 227561651 627133887 702822642 964527952 493890970 795791868 439370832 928028518 621321905 975407238 645643553 879346229 630903184 751340653 640812203 959151324 746917289 906198129 182165231 937184381 339656491 981309295 407338610 722318388 2414331 72033768 180281025 900088652 801055467 808259740 978726973 991057669 318085854 419869402 427706153 855909833 85109758 558393091 759511642 826322372 596013837 971313542 661425598 773045252 518910076 798348599 970137060 979645201 553666430 567846102 918894199 965678148 823024223 980000361 428833169 644302482 730396021 867645139 820113996 987095347 148637274 733626670 499571550 700341210 247684434 579162502 343542490 787164762 423399386 646450608 208133754 248882539 227328498 445097559 24340075 60036262 145889009 574526438 293908870 979542687 930153437 958018898 112799150 464928953 627890031 905057835 935659513 978403609 379068249 545045738 717749875 719004748 18878324 444557149 892727568 922962554 989336654 993240378 587107332 718562756 741758632 940017271 146253653 661700378 908299753 977067862 326689137 399167108 952489074 971813996 668153621 740388404 263656170 460801931 9406467 402015212 979461958 997876581 60278611 445974963 864439961 913249441 68703698 725663666 862951800 866515541 638439819 754150465 630181666 634063530 233760286 655092556 461484939 620845915 340452444 508024538 912829054 948001264 882350090 895210008 569437112 722928627 337263079 385891958 597119369 815723006 660525155 905379463 642414915 912272000 140648636 615314891 419329606 475925441 864902616 946546765 933093980 980178551 409770297 518973228 776311676 951342758 177956029 185995044 30468652 248913894 59876155 246188945 930038297 934118746 591080369 970623631 833291776 957718015 232142964 880786199 947870683 990117323 775815331 829560098 558207355 707268254 311966780 735711796 951563429 952353783 810167831 985611812 618824303 819463972 360145009 409168767 798447462 881288426 458552682 575693729 599461036 633412960 428431168 954180413 169665756 738400299 266008894 697048403 503675626 751000934 196780599 938345396 257504711 770765519 191267449 345761714 254553222 939523943 283571650 645010253 16969119 963060215 944357225 975757683 137076647 782470448 409599720 924483695 478274307 639968546 758546879 986269599 132401883 669903336 220600152 987342940 192916455 946996029 6487042 188829365 978304759 988600263 723480127 729855332 277482823 374686110 109677857 328826553 469828622 984850380 174208325 597943537 268801796 701739744 181835545 320628526 607274643 620183332 304630963 999379393 868015875 894219031 513934327 924295544 720053117 858205158 750765905 879169554 84640509 303642497 66739568 211405355 375403502 449646977 732884680 733093563 339292002 410424549 959100076 970359458 330349754 547598476 137722409 749989532 253253387 259845437 277956939 744848703 59179539 311435107 201983647 518635330 74563759 524596870 64577651 613505732 702827851 913844808 20522769 987882107 418017305 520606780 695228535 855514882 130552074 555265746 7393592 441921368 129185464 482637709 43403120 68125243 84159908 214018682 428683371 710679225 333578335 928194153 170048023 614270798 825840603 851654434 240013877 397535617 371652039 629215009 818527231 984504649 870430880 996068718 971805605 990191668 598715283 658935088 425673417 540235150 532838996 709277866 105277266 584421379 594214948 847151820 797714513 962685813 318160668 730079935 621399542 864261056 264177624 865622832 377130324 406267369 153269228 301310350 218668142 881487350 423812401 819657685 979595277 999875203 749407201 977904968 284872939 933189503 743649035 953825832 730708666 931027762 686726284 871573996 621928226 747281673 678012961 993078547 515974834 699493342 567465993 905719415 479122740 859595197 770445322 984049502 647870542 882889431 27031513 256550802 546402742 562638007 175287553 773637060 477692852 962631500 514334095 978813942 777457452 901086691 28068799 479962033 621155746 651672691 579624755 767690467 656629469 798761015 673874405 887845034 586089212 869684103 505119295 576332605 866118852 983111746 107369024 109902847 256070939 347969141 595031627 862865523 950531368 976955006 326127214 896609389 276845671 440918338 659712452 767089501 329334644 942348431 364749933 935859095 863720443 942014296 532110170 566459119 352120494 748427060 299291567 534360129 603625218 828124578 314392036 784342456 792396022 940602435 125607782 528736064 160413768 306831923 118118864 554359375 956696766 973377737 436236038 992697834 38806523 568151480 987404110 992506965 291067614 659225962 643090354 975313973 719666102 947187852 403363272 469396086 218357537 897027235 468139084 839051798 405374214 628042505 987561925 997076776 655309128 656733345 85047797 384786735 626972729 686498142 192849107 352492237 579453796 717288782 380170599 858498426 394685328 953730869 18629413 158118930 396825113 463193561 651123047 815125923 528643977 706947759 816478877 917717241 586312393 965778832 168257057 307801694 60397170 547596526 318418883 968775765 779538765 930559150 310397716 383586284 196979621 952945023 102876623 631013558 301718911 764142455 788144237 885770751 327551439 671051846 726809437 919694405 840504252 942929927 503664339 865611550 820355929 839520228 385583885 904950151 834707999 986374529 881881068 961411042 422029787 533730674 556409192 559294302 61471190 827427098 591530057 983895520 538334718 799025950 193880156 839030101 104645489 191299418 288287706 474878833 244554898 316172762 126573710 865558570 5829372 543290016 803971672 898623659 67589731 418864600 601403207 792607471 995031453 997186874 747987832 753721013 628423317 655190444 427231608 725233110 372897614 557889494 451364068 693188533 289434657 850032200 336629505 564173223 931462259 968030036 287204574 951762130 522464632 638147018 231734319 675223390 713318461 783659899 735866130 819421299 925122556 978045934 587679662 934106685 319356518 403777959 966939563 997423259 202898020 720939148 291032326 902673377 295394172 822244072 187459519 813134127 43694510 273608628 836711894 923497592 916268520 917533522 364736777 490709097 514750959 993550211 225375597 900423182 379265344 846356220 908607236 965634552 629073084 893813928 595891308 660494975 430337192 612331647 27008451 732061397 805631077 885913318 985031869 994562933 313598458 905091074 59661598 907429703 619084517 719639813 399557385 688180697 168286288 683982627 488979664 844639270 255947184 512864418 567972109 941755135 433563881 939916490 419178128 795436491 627991131 703410681 672862995 801472570 772750608 954369086 47029175 159794391 277078304 848463714 11100138 109286451 234536904 920685948 555507075 589485959 256231579 608786264 87056314 821641948 338593996 893825740 576154508 945734107 946496773 954054291 739617707 748026617 727240315 922650327 795362358 913909107 273595004 658193474 122555749 384451359 717055779 794167019 917325223 951585041 291280420 995612578 589600812 653911463 679381224 757612582 949055346 950267775 729591060 973221987 577713956 746669917 610698677 649087530 805104719 845600687 679696456 768942119 230303128 951673674 753721374 773600407 865512261 915447897 392980822 475735715 183621012 287404261 275431595 621064544 246155396 510008435 440703390 903801220 351599586 543027837 263707705 679962670 148835331 452740080 289957221 792002684 878909092 937954862 719607335 823792627 560535994 736811715 670126461 922460330 822799447 855672007 535718695 957515349 177444334 841787598 456759081 474493174 280337192 439783518 946670544 951344450 217545270 612211161 567856639 688761665 335601987 723285057 519539362 784689056 637509485 792989876 468234347 844417885 335575594 844542427 422867208 763943164 126829011 357508271 260315912 432706481 229118166 473689358 722812158 803080708 654972764 947152099 661988531 967847341 483665750 851896417 921932615 969623271 154698895 634332880 452475321 690985264 957480151 993462316 23209082 534133304 527922071 692026109 623357491 630408458 384127011 633937854 551972439 730261509 304368927 771021738 538771186 708314621 797746035 817148837 649948224 909030615 423959032 550375359 241122591 902810991 967591229 975792423 85121487 440640582 828648165 955725590 294210693 863660435 795776059 874681821 419865583 905901891 517646682 659746297 182280901 833997864 603981181 684717774 539250374 944020799 320531195 827560007 300374949 831447462 390382050 737905300 104964087 422729163 513619124 975433186 8016363 360569097 797445754 916717325 867280095 908154000 330223008 430213842 809519259 863072110 600252350 801058086 212932411 483860923 455495623 996183383 84692945 804472205 563296137 614411824 692412854 834170099 783745369 966503156 922646585 969988650 945120618 986702452 534302382 852594754 935864723 949914798 523011837 897068691 382717791 553340173 318767798 455667061 116577094 755719268 349045726 749555415 221322728 652726183 291350559 346759999 503625124 804986430 83637282 323450474 716178780 989987337 458950499 923541514 576865784 930402871 971837170 971982152 508973042 823941461 78373459 294510984 449795721 871547600 105452437 385781224 621553828 890837563 891893637 986228508 538435003 944202025 706518316 968729086 124051773 826431105 222305949 235364593 883697488 954793263 605504273 815552128 475573282 940565029 299461492 496071331 868549416 891410286 829476736 830308419 668372937 797345380 739750106 763416421 336931110 670725236 664951038 845038500 345906742 637687244 841408029 919179135 572360309 905633241 91816549 584792955 49017774 718258367 93612785 431149224 450538055 563007173 898049262 991220819 1073096 389486715 951327673 995229667 78242923 117041896 849570100 897353759 390269977 410116838 829938138 982142614 800428733 910372994 707381831 929199864 142614674 349274266 348658118 574431399 815543235 907695602 374392361 631387571 242804629 983963653 757190870 783780885 237054288 435681194 97973544 349336286 795208910 911707043 936733333 977894983 362161338 711987252 784285753 917396193 81864818 344611234 270974208 673155698 843328724 978690201 173285866 828760645 293518397 500552492 54353925 127231890 975883202 996022818 222989814 756151669 563340566 707108532 30732958 975464563 651564246 942794860 368576970 931941559 839628718 961288939 682073586 917508312 107658797 483150969 537226297 849174253 307073490 776963909 153370336 389557592 362192693 632016967 166131381 818359444 731990609 996652398 217629592 752678991 128266642 505294066 968064073 972192881 605902558 991646059 248932765 599251699 281681601 419828817 102197249 783468271 490240352 904159824 295187988 794911001 401951877 672209414 714187810 899694830 929642158 961654269 322345699 800292232 5031594 284715476 357876465 364457909 852282624 890898336 945564304 996968811 735558391 860887086 39304801 197473459 492442500 853512512 186061043 321295441 758364897 900063711 52880551 572334879 736337767 871773133 282268771 509708545 724049952 827514804 244382422 378807569 270626899 534841648 925013650 961044070 366220439 469868975 672568486 863018404 588403055 872508073 341393896 712092075 350014177 423551370 820340065 872779131 309818911 711856860 918470180 960800984 849438698 976400933 266265610 974130090 769209480 854181978 741839448 952089445 509550797 512175620 361913838 778663481 946623615 969149297 840182615 866213656 557613153 629530905 801364186 959499545 79244870 864452538 11282302 403540463 669278648 819050037 429504113 575012490 534555601 924144232 306989891 388565215 434133931 509348937 608954801 994007391 980738277 994977120 631839600 942218137 287185867 456514865 528316825 547002573 810142073 829908135 727361605 733297346 268841274 994888191 749918016 945580909 795741684 910835826 900288036 967051925 978960397 981229511 938967155 939950235 782554920 975654707 197880264 743215340 854359133 998912439 971131112 995374898 384388349 660916282 901171082 925050502 551693013 808228557 352073745 542729810 562607135 683746324 812045984 957519043 613566016 658362971 61286509 362364555 234034055 344320211 515972743 653695239 163915207 986588910 911290983 971792722 969422276 982543996 782466972 873619780 421950485 442170532 282540773 857396533 295377949 358829237 989105244 995863383 9578166 353792689 654832433 740194842 396700070 875562345 519696412 896837019 922531873 993208271 213704728 800835770 542829318 865266289 947258783 992333046 905254246 998994616 894872723 961994990 930629871 999928606 682257434 802873271 147775766 905918378 587708130 992277459 643363018 710196501 67810551 874763850 634705834 861061809 717940233 921254733 493561890 941357264 362962458 839558772 417357131 818683913 432675200 523819165 78449047 573606430 939052706 965089046 382235752 561491051 838241237 889707956 201493962 570289924 357719050 854851457 674497865 716509557 616520505 813559370 19304858 699658894 403968145 540725252 44249658 312219913 407670869 962213776 511147110 597469113 967889697 981116391 852833931 973109058 949972195 982638093 323525033 833091666 217573962 309831027 387079334 753547789 410185642 872005955 47144261 506853736 874094861 973450077 34664903 368274367 325763930 549316561 977693579 985096959 794771151 837827454 125521415 225558596 64092955 372373320 14950886 977012359 676583706 729724667 874756700 929514574 561882398 641976541 471798932 755842422 217263726 596038212 421745134 641454568 319523053 352863998 37930142 211265473 606947438 708170389 348698108 631100103 80826525 867705523 935572953 941020099 169027476 768039847 489992236 630111313 115051465 400989349 557552959 650054023 437104494 596252011 346240926 779803816 373671149 423605676 537417961 777751009 49216618 683136197 749355171 998154939 586249945 658625231 693208800 752298875 866585163 878002618 347190236 992558791 379380231 688583328 36455655 362139018 190967710 812906613 78141508 127737654 803892283 837142027 303829008 543925454 323993079 980415106 345203320 795627463 869514282 972408138 346707644 686120660 429101966 927369920 522361269 751962379 62542081 371459989 940210358 943898824 783276 971578030 961427596 996621867 349075182 839159493 870598433 910861585 932655670 953598522 62047202 354687764 766312600 985071205 799735410 821383258 873642881 916818481 993437692 998798946 288049580 424551946 299637314 897529175 81706650 645978996 353030845 925370878 440151383 467131937 220251892 310458043 809101633 916631827 603814292 655106267 640411253 820640384 257204329 436760964 757242849 977969067 383570324 684221845 493028969 786230285 114193850 939209564 959380399 978330702 577544532 832829239 282847493 734382427 385311069 523510961 147951512 207161942 959933000 976232378 958265120 992265193 440383079 567757069 43804474 322144085 290605201 712609589 721482677 836417000 356711249 769934415 690196336 868204879 239113746 736853420 246052669 371398738 355099923 622547575 698849660 765640651 666746245 782779411 302266231 489981633 756331810 773393943 306510579 851527172 174017810 567345454 992107445 992907269 641717414 680296716 907743357 915582744 968394182 992568063 128552384 778158772 81251081 286429420 420880331 790200462 546007913 787599025 20205567 436985172 584523931 778473465 97412220 966908017 396898045 666599321 633205322 913770657 53724176 724160466 168750423 314487795 480116566 868773035 112486889 337539642 744063935 856677473 460868503 711775092 457469496 530700338 492598376 586598711 155310812 484066081 671731594 919889345 538667973 960811615 618912134 783712259 79398058 433298237 580361654 665589930 594165862 963598229 971684200 976357850 984871356 998163951 125110235 989415847 615244145 779765530 429494572 974134648 269479338 325579213 478485551 774841749 683197869 955692812 314178559 793072278 337111386 379114196 986670090 994455279 934864655 935854229 378989451 530159769 104261320 825012239 833334732 851223212 316562902 771341358 823550380 880026226 270352552 961248583 763308929 884021737 709261197 888617837 114144022 267167973 199327613 818334280 525632734 846809839 681852313 869880192 964619060 966455917 159741716 501000499 388901213 477220632 563968924 723720984 403633527 665338641 197370463 502470821 818894687 989953545 677985133 689241130 985839022 998100443 890716585 999640229 851930548 980426412 952362570 992783062 744876097 802200994 552236836 915548393 498873828 775211141 194121535 309127773 631563412 766438938 928080267 951780643 674979207 740287840 114372049 595890621 858374968 914131580 596769768 651596048 624487342 710941031 967542964 977479090 681523889 946967808 509437042 673203461 390004977 714523156 19149947 923359056 370793965 813291484 357463999 902905060 128442861 603461205 762494240 788082103 582292154 637712346 835580165 951735755 886136223 919431439 675082846 874536693 855689672 936873503 536461681 942305321 207915224 259562625 564535299 958255624 545208002 701754673 258880984 695126089 761970970 999917078 524751928 967516256 58367634 363476488 297027049 793500251 828299599 911100545 413366548 514078363 71321512 599540263 892229084 990078107 442473184 642750076 440852717 631269380 750012381 882777224 310697007 634467490 756938132 937056911 498581915 765773277 720879899 931266909 169374306 820447964 273393552 492485694 970531578 991977289 466446311 613590003 696045233 743783192 119286743 256031835 872972535 920459831 150114880 515148682 650489972 969032860 452697315 687529251 234915065 993360731 517958698 969105200 98151664 530408697 852712053 853470367 481353978 904547498 498135671 519599291 895626422 951075817 696189153 966507807 181802704 375781286 646732427 814046025 818780833 841133253 44046962 876162665 3917686 597793975 453750318 863648089 174030322 451179232 652477378 994475445 13321041 633112511 240495490 617473204 169412503 342244369 815507529 918731860 272572037 332815552 662907902 920967452 371080708 655090052 235493492 340491523 412115336 972809902 820736913 962821044 322199044 650942496 676218399 788644693 183365751 670728304 936647925 981473150 76988651 459020672 411134296 837849377 516145615 711652247 224438809 860334474 951039731 996423122 278857274 748628076 738247348 775365811 516803055 665698785 617075931 625924668 482820364 774365155 189203415 931422348 146878635 775863306 12255896 552984707 579936709 724119583 654261870 746361755 428445432 608232008 478213658 892103961 483611416 550369513 50961537 976719131 424530656 545921618 377888136 856265422 705036844 777534498 127142286 521943085 949120422 996754893 589150080 839295202 833749791 907877897 92723318 365788721 633093919 876559869 473064758 509408648 181527326 650180327 809917967 880706668 141563205 317525746 954648500 957217070 795820596 808528335 27576595 844272768 891528937 975892468 878134975 913174566 823462192 837895877 677882752 859613296 600051640 682523763 43927330 123268089 800589398 940404952 284582357 392667935 508074388 785063893 530306835 951818761 129867773 788890935 184362100 805336918 290327223 457382892 497410562 699520487 66747243 415846592 963853829 995122231 939406302 985523815 955205959 958381181 731423980 748125472 517938323 812699747 380625017 495171878 697044987 996848535 464264111 543633797 694125471 969837609 146092845 472042376 147248583 423176532 863347335 902870337 316833461 877889804 675431224 940554639 44725208 441305072 707764998 963990111 889018748 970682663 161316368 221368279 493546238 897345378 686909637 965735847 830664613 888285184 952622365 988140830 320603297 574853637 512746174 638871625 388948267 827250592 523813366 798381404 386707698 812411843 723956927 990643913 257178465 755549666 793868999 986823664 369226512 888278335 450436650 807824706 832313966 837149752 796941777 829932678 854435203 999894007 640117295 764132744 903183569 905651299 799017964 866326349 307516551 562043408 970500132 974802925 37594523 714084537 441257862 679081949 886777389 942740962 475962742 651157760 960340606 985685390 468144299 816313928 311346086 678414312 649766299 856823711 134712024 339815043 436833419 700541796 9485162 891443623 975517635 992041950 87343514 875082400 425967961 849239454 702366788 892844235 31802189 168683763 307814101 813172910 618321761 818561472 502134322 533973290 600892220 911720493 620646092 979373797 483048290 888343489 653697307 968900798 400409790 890597910 218350194 814495317 601249728 798497135 749639522 947861886 441709709 998510915 335436739 476773901 431735699 751523111 305632720 694843667 724645729 952142604 519670814 724204192 141693841 563688238 694944683 951147246 820115296 893005217 35416826 380565804 634037242 637187797 86175937 398317306 420102147 496534062 63325479 772464499 745200282 767065450 622146421 681306067 389020405 801788470 241527972 947899756 551332488 827962769 165875045 328378259 338979435 379428111 810011699 957778771 754420917 929258207 531973786 830133780 95589760 415579558 891372712 920380878 934403798 978449151 931504856 958129409 592182387 906345267 462017804 701078991 507785348 578179817 820130028 820262750 253743557 321011093 674739554 853853878 801887324 809497771 11917653 792966536 577881591 987912062 244873326 758239883 341003538 834709023 415850616 889810624 999258580 999559157 852702737 994831055 428352927 890282570 904249514 925415997 955488761 964930363 500704957 544560923 466741607 921638517 306203988 487292322 909771610 941048659 896407068 935981980 718603788 796161423 951601900 982421103 184421116 689677528 243983053 779354813 464231507 528143780 229245531 851021936 141501819 794160609 511937852 815900466 835471471 884340491 336406324 692772708 704721279 914077541 177901619 385007812 533610057 780352900 60905199 476242386 461597674 555664088 285611095 764923960 739981036 811684942 6833333 538811241 337725739 946857535 707126776 921568962 746377332 857128435 41314079 256456147 643425906 865150489 651908155 920625349 389356852 529821996 906383858 937510219 966433407 984613016 390751629 868119399 504189760 861615324 22318261 661250906 297563595 451309590 240532084 616120167 59115857 563130788 966764618 987518679 816091610 960022884 413712555 443991983 873998407 893579908 311222334 350565720 953787203 965848334 152484858 293752902 250484906 486818676 575917468 729809980 407963870 909621515 712452741 949676283 750054343 986114773 920749031 979952092 132377563 313433209 5369682 7017395 893354408 895333072 12752830 148329713 913367186 923220119 560853763 942735393 395755149 763893011 959471453 960504331 919799227 951967296 640925303 993766617 865744406 936665692 161153815 796075497 295867145 584115750 360968683 801335016 887087355 975140285 542554401 733099864 357716922 858245604 865286609 946623087 501853849 815383969 793266865 904992347 716714098 787541340 31374047 192581699 701876472 924834564 504134840 737254301 643347888 912423455 452462331 578405960 264293731 608734455 986635820 998149905 14498928 30974725 673867979 930742475 533295414 784655329 606842344 687629485 283870046 503179452 239992634 814945962 310354503 755640673 998496504 998767352 814228936 929814504 188651387 563485227 517388275 548396204 88043617 765104122 968918859 970387598 244750838 955080927 865431071 884835979 502021008 599781753 221838496 691487616 676555482 939519024 38805957 208356474 664428528 898432012 621033992 984141460 984904102 991127833 307908810 406278570 434282233 469500200 634369278 820349248 551106796 987509089 142486353 607883323 695084667 726327966 721021026 894123208 348235563 360422726 829563268 962347954 732636665 741192058 255135502 524492128 516422118 724439067 288835640 992113545 774049023 844321648 568211821 909602708 353280276 964856777 632851159 943217579 432434626 809439744 115941902 446242155 670608016 838395864 465754596 669607608 584968930 663427057 630280107 838831052 366946225 987813201 233599281 402157340 366126072 611809923 626347926 797803230 21422487 581963474 48342971 473721464 839298205 915633861 281774857 676083986 992423600 995542967 207112454 234937761 509387970 520739692 763145560 889202996 144245742 631778795 322512154 632983791 864214908 920022876 626013767 754764730 346252613 729455429 144079656 539568483 332937620 579260457 762451848 945417211 111641782 891022737 742302233 939273921 960405927 975498712 929773796 965593110 869617936 990065409 450291336 806070050 74810242 486669121 396047773 640061618 741126254 980937590 733865755 821010624 248054480 328281063 421333268 848506763 739672726 914319346 113439912 362411787 983975047 984615342 995678378 996863507 443178757 806066981 424250402 780602026 929847573 997110850 897710772 972452951 553693835 951831553 382189909 395262430 253109431 944740833 592289488 952758495 942094326 985639844 128181426 210998278 23793119 330330962 330602069 665547181 601577361 763113975 681493260 821109377 955327319 976442802 760125790 854493435 867168055 986751343 647642937 799801898 206664782 264924118 491708125 801908601 79318596 248603070 663326869 729677097 964434163 980498451 707546052 835786118 746476193 911005715 398308811 978424433 204715858 227216668 375812060 851625136 605830165 708402158 283702956 439954370 576558751 763177059 951925210 990437926 915010250 990248697 125846400 397616061 155712826 854161800 73290448 934357475 134798609 371887041 267841684 679509723 234316379 632088951 539163602 769763036 645802172 793138207 811766965 942682149 79776930 692747199 102586859 885999043 799776194 887328932 501227663 858362461 442333786 787650236 829081156 931317744 969757875 969788201 611223704 743122360 505400665 783939687 884893842 982325235 533067680 751143783 179715569 699054587 923726033 956440447 358126426 769777431 84224226 698843021 999458400 999960421 824980574 998049888 746353723 864365319 910593651 990988572 333334053 929080408 328595345 441694376 215367556 226228509 975806380 977304607 376329770 913336932 998376077 998781564 702865313 949139872 78518245 92524402 135381595 588735636 562258251 921546213 744467731 915911722 336338116 570938304 549904332 935423899 169227987 596454019 52206851 530512851 304929713 868481414 178561342 825710049 123807974 923373559 728103790 991186725 456582075 513650969 152809437 881322115 193174837 447070247 430418464 538110504 53568260 470511787 62598045 513156119 89859029 267848206 137556413 676425565 101102346 787632387 758956518 989601012 8668160 348556543 160086873 510090600 151816089 532163745 62573409 213606282 253545874 360570673 722560379 908836008 204129946 566741735 399789380 575072258 391649094 987687855 471073295 797080902 199661233 720883155 642393524 932212135 784628536 939972281 132920437 423741996 603599020 949755819 796771981 843775250 28995969 715800174 202172510 481246749 902071785 950699283 517334678 697052116 460833020 715003304 901110445 960041307 306843564 346089694 434939876 803270907 607375882 616356817 725809730 827172618 378613913 947835556 665922914 977939230 885260626 985149224 51390474 632365470 566044221 736366848 626399367 966185776 898642219 925817454 210937901 642191794 370905895 881428403 610968811 763625261 826893009 887952862 603936272 647235179 548735715 722504309 721800606 817107069 276615576 598170024 280616867 331582604 269808350 637362083 711442996 846301167 817339290 908831599 908015223 935606559 881578464 926023547 699014956 773969074 770884216 791701852 569225833 885080691 212796732 938952999 501632207 924872324 695439090 979292137 263189428 483586163 327576379 934022724 408522943 731130027 830713953 958234933 70030981 201543600 412172909 502293260 240032454 784357765 237402992 363740904 615296179 844290720 12486104 570415568 480700717 973947811 808883190 952833913 724268541 763887003 350899412 662086044 980385112 987915140 313477277 768842510 983463205 986246695 365372183 943610714 590487970 882748722 243345512 670242200 80020590 767950759 336130052 692837269 814961044 856355428 907932784 982622712 841928134 898261143 397967448 879684813 866533943 959990101 957336519 981344437 967618925 985960588 627063250 852903566 357725481 846190570 649680931 662294142 784779061 964781824 663227991 734988462 658890671 666000570 633058276 955335436 584794937 719603851 288325421 317744603 712862920 978575525 265654766 493235634 450209717 835469912 507100854 898907939 896637893 998448576 688005979 773887155 553558130 922495985 972840617 980930625 773665622 977943489 284522816 970756895 923535700 972859244 176620014 270160380 392296444 725576456 335730978 931205994 479994954 713803902 408832076 754119448 504798707 582505118 627895649 788890666 500711551 872821827 643185271 958501254 674855065 735496296 27741023 768296462 423862223 730337665 837041303 918390666 30623084 176275596 320152720 955473529 636050046 693183886 881174383 896305672 820403633 995672471 612527468 722272121 158406149 957653623 63187678 410365718 276082601 458961698 159325295 182262952 159419405 863838093 659819556 906667146 277050367 768594870 712158885 718648565 804726782 930788840 10022463 605656185 745904532 866357119 500952444 742695494 553477521 965896896 673959321 885647721 173874448 206683183 560726379 593850370 725051358 812409145 933116961 971330295 380659251 829889536 373386575 870718054 211608934 954685569 295454831 970382328 629108994 892728181 675437359 936145513 472935903 912263566 306841784 931497820 208354762 880977333 458853734 595168780 955160582 988306738 788921800 951345963 85911748 254892858 351071876 397178653 870086208 885304650 125181962 755263161 687714911 909590920 252417995 810304153 417803056 887478559 251386830 440948015 622861346 820762150 138824720 636947547 940235985 952448729 696554128 795666473 338746126 409080924 777900183 945822905 729192487 938897389 729008662 898480900 725818364 746328981 422412015 624178272 844370947 921694490 486672203 881194714 320401060 604338788 292345588 428878615 20981804 568999420 162488540 957086538 17954780 715734840 946095708 991915234 869319911 964952146 349493613 614193236 193290286 195799092 774020265 978815020 687103030 854008642 375429793 764667930 840751274 894737044 998687499 999434314 457220821 902004895 975632281 996436132 495298542 506999326 965239705 971510322 366729430 803015962 255936932 642626203 493523131 802193550 311551458 813055989 985682676 995779071 66197541 719818893 916936697 938218798 123761969 476325729 50729157 773859526 372428026 899041919 642811470 785112351 331284515 444771683 791578194 939577608 251006076 942277812 637245881 871993950 620642668 888993103 739242376 938701730 545682425 922709885 177218325 847750653 131593769 828875942 610735182 854116693 337469108 697405038 384967358 838741848 783333349 951774483 145995573 630749936 447570942 914262536 718097963 819169280 151297636 601108438 997071937 997917814 423368309 836056091 392472683 837360900 893243555 907945046 820761774 981179569 630273821 846205727 349903715 476195392 82410223 939004550 488665510 801206700 13120749 54315762 376064240 752470046 759215431 929146054 343095173 905130648 683204455 843871277 929908864 978911950 542582149 891753759 547076185 590306922 969605133 978399478 462420050 585483434 895718591 952882356 916691496 928527702 477962926 954972091 539268835 861094243 77032123 616725029 658786949 898457939 756752230 938859886 579510491 849046358 368024911 838141900 963598473 973664088 1491367 323475851 157996528 209064553 154328656 283030676 937574006 977239070 333195419 948092788 651996917 909448117 868246405 935999361 19670430 997102277 990081258 993297683 759284490 858033448 134767895 435237140 969735730 987753122 780147619 957812966 294086974 465129475 895663999 982509867 562196088 606340682 994111611 995298117 316290256 995401003 385575795 774214559 546796434 989861574 610215798 725872628 462442386 651740680 576305223 939207239 736291542 999705920 873271183 999197682 761309571 834509854 291271341 644032510 246975870 799417626 539534476 975841012 658934493 729975696 982731032 984261821 689072972 876813096 596197591 821839335 509575077 733350803 829049270 870120496 665163019 946904577 941300549 985929942 190529062 340336453 234265213 445380441 719696365 793219173 93364061 559852024 576764390 682632528 307074450 481122837 681391554 775533390 307700029 781047889 744058400 868948479 154406332 634059052 920708318 928436388 52108369 445644080 467519120 520446746 866587798 992378517 579173639 817305767 626098447 854156557 312147529 758680085 291442935 978051641 559545021 896167758 798840025 996348166 596468729 614970517 646846553 903928742 997220809 998292379 626913937 792064514 184766837 839895214 842829116 960819411 752345144 768190999 593991257 985774490 371713852 669388791 839007473 933687824 570187998 690525382 262773635 513755582 897561581 979839390 196247483 899964647 491703850 734694434 728717351 825696237 898641445 905831652 885262800 920249973 442818431 532637332 467768728 991708769 695199337 920164061 281379663 310731867 55149080 111658102 894066547 926314738 288703598 603086754 809565634 847026392 706745306 955941782 255697096 954469275 739367808 931664543 301585213 404071874 268396849 524642791 861574564 934670825 274059262 515437714 861086175 995396421 399058077 993358423 776566313 972856175 25865573 66341790 130001677 545301338 518757765 979249296 597526632 727945100 650196131 650362987 886388260 995280379 717477253 770878849 367592781 438602106 523020660 597976677 295055845 758476129 273012920 796123702 129999996 978815327 641444114 693620437 819758168 929666280 509890433 594942873 148861692 963127976 726372560 795273481 522222161 679995206 640796977 861589281 104944658 243904549 211891995 287829013 464523384 772387958 676116738 923264728 745672382 818831129 428267599 949947467 780501651 788290306 952338987 981642997 933807828 934615905 32716030 403866852 767428402 871853360 475769044 676790783 501856920 810277888 982838977 986527836 600186137 781885848 500756368 543621284 820920433 878786749 541744589 697846268 366339821 509540520 823206190 862968780 845634176 950240487 120793043 555494122 298852683 940315208 351167334 663091051 502241267 936777241 186852816 710103327 644955041 670726964 41725014 932279020 708630372 735996364 184972935 215237528 200290702 694599994 515686936 837095599 511998896 728678645 786619555 803288268 720082972 825882174 233995005 600374213 487705753 927109744 78465787 158873003 676276339 913447556 54899163 216080682 352641619 886511774 799640326 819328978 471102862 813443238 17566993 143766801 90436635 166220424 285135046 722696915 817536636 955125438 668522555 980990651 137997201 878381619 685452534 812177327 918573970 999866878 626516485 998835057 320084715 568617754 715901486 990699119 867092439 980460720 925206700 939470208 158759819 173950746 80907542 578763331 552559226 613216419 168671651 933980193 653070072 743832301 684755762 688805359 171037525 735549748 449756597 548738632 390208244 685277185 33551195 950894391 593545928 714629063 271202883 455118991 146924345 656874896 188039773 302084421 670217903 999023572 607682919 903202801 182776059 259111401 217824996 258452206 35342852 978139334 51960397 868928961 749442968 783948585 783032620 887311371 518781171 853799395 60905157 412789805 782887539 942168707 846801399 895241262 276354318 871087883 260117015 931760320 449559283 702766696 740897379 937390147 668898644 812734492 996782605 996948768 927209685 995973436 244958101 602329347 838949743 921741803 623471526 864437450 770047492 904382744 448316383 953368598 267671777 338775128 961511729 964399703 532581014 640695219 574148521 595423863 869369911 929120008 329120975 485054959 701482044 831590677 165516748 594043335 183612946 459373437 381747498 530619231 706061018 901964805 764760160 766003354 135759453 221111983 492213776 844060039 139580512 259907188 936112365 944000634 296188254 646873884 798689169 968323566 85707445 893939780 158799987 747910985 792892187 879271406 52308077 783739106 875100752 938357094 678247499 767281695 83380628 144797367 905463243 929313442 32715936 782692175 570478407 842352310 303862041 988696082 926041441 947403181 277424392 845490274 942178407 989270144 717742070 869507589 367189884 639688152 533214198 778052871 127057916 895076574 837346072 857481713 574762565 925498983 40997784 743925694 1465992 562366383 123476058 689118172 245269720 591800138 668123576 741823387 80810078 925370178 598160787 734361609 632571481 961803493 333902087 402058781 275394497 289686134 559778906 850164925 886276143 984356048 607088495 947760315 995915575 997068075 188223884 478630098 73957147 213330567 665486810 956507015 555211370 832123368 647419693 776364048 258941432 866120008 569556314 918577666 469544444 929959709 187166886 985674131 46745015 824519263 908908982 980493621 918778156 937688789 929801531 952270812 801301829 983964581 749575959 767650318 234052620 415012819 536196780 946580615 119070914 926813390 904628541 908083070 969021896 983953915 614309559 704997222 197246633 769534021 47763952 827225031 932656999 974730032 120301760 719649064 270235872 992576033 82627791 550848744 886315188 976335740 243163584 357311472 737658241 920207329 110242106 291904260 417711404 644264874 973989710 979976223 885645184 965476917 719700994 723753994 724602980 899902148 452910606 499298850 609570082 957709953 668046037 797940178 31436943 680165402 710788017 848094340 96706157 707921261 370739933 842439714 667157758 811377913 412730548 800983700 816332871 993466309 94661867 155487260 207183466 508127364 148699235 479570022 854337122 920301362 28511577 747167709 86908221 246470760 268056802 303385861 768751927 847489446 702737300 767632513 703458436 919274306 27953341 803509198 383967778 866079635 989082199 994336855 710654699 932277988 700082179 781933316 343081288 466513418 994393112 995073039 228561177 472651409 158961277 394713183 664578466 704605067 656140787 857282798 319227665 641027357 912425243 965912114 773908453 801778301 818404971 839886584 741941963 912126115 741139619 824703820 896096500 956737882 735034241 971359645 686772933 887316499 648678518 794055131 852026985 860087590 909433087 983366396 475682602 944973211 910675017 969624610 420659975 788471158 678159517 813298095 625937930 642825226 767638859 985612307 46554458 234776103 561030433 690344052 766725238 875582430 944168250 982674283 630125888 962018536 208848129 483814474 413280237 924829168 352799507 604670423 887231793 908753751 277632414 602254750 947947012 998278374 953267954 961899071 327678978 771648911 161090511 399542231 971902250 994072850 245575381 533899528 381062507 809939996 609428404 924780942 998016414 999990869 114800187 240203805 841599557 863187324 55695627 751511327 647765202 688480868 453310923 920689547 677954140 935880202 44575155 93564275 218680119 806759197 365384389 762357246 574492399 670542152 134838509 399969992 162058059 378891353 410422195 452199763 802097493 989853509 692822088 838746159 7264097 515258107 216523435 498774207 947290128 995361417 3507955 701969945 758804792 796551428 246875287 837197114 527299029 738999425 322183590 671116432 346823936 524393366 615612106 668085271 145119324 278424928 759604581 983294266 482921885 838815661 704023567 797561910 781759897 824637105 977917965 986949572 959496288 999969535 90237770 823710644 486655237 624824298 782782421 855645140 215315193 791094208 880053723 944799688 107341015 588620429 857359053 973509084 178446086 179443527 246801735 635057474 726752397 781172366 644394574 968835589 591551186 780404736 534588923 740650570 403756120 507660669 124261246 912040384 83802968 191130599 423072173 618522201 156251179 623712271 717027147 918404484 634748018 850904655 773743813 827518693 794874684 952776665 199195844 820051761 160552027 198227299 894632576 963606709 41552589 493658696 933458359 971840291 980187485 986231645 962032460 981990111 639371794 751044885 808991357 860264611 59046448 822977813 835739011 875307952 769844916 858415388 495547515 539067609 232075902 502657147 97144871 418522778 539830506 724697632 353732020 669844606 200745183 839146842 193403276 294371757 250256884 826020527 388828134 453165553 365683811 616882219 773455649 811191305 638485612 872742544 226636193 973681558 759201508 969477102 267296905 770230713 605858608 809436298 673518344 822947479 435892772 499984770 684064649 972275789 624548888 696020369 854691822 893478021 828601391 934742403 509349336 986297897 46560206 401679248 102105684 308375157 476663215 496711156 194793129 465201751 396483321 398663787 472687790 764565339 69994828 225283076 362452157 748156014 707212424 715162488 517770035 929324874 184043754 820779941 69831670 667726612 323728439 825612167 697288551 829188291 338505613 685553901 922452664 959505856 878194463 936279553 595351569 820168472 346799680 715845516 46457387 689010374 152940139 686441107 48921204 530982746 182845038 410976369 584393377 708096272 971079974 989286193 38407315 216942124 701005180 975648500 64654316 961445567 793354912 885398843 940841736 992310339 40142264 810756796 583257821 757601360 717956349 924610357 45409423 438975924 437798290 584547344 981236897 991684995 743688698 853370265 41410547 866392548 45009481 521968211 879230640 978779521 817138151 881266705 937580142 992305910 976176904 982697854 928914557 954765736 195443482 743833985 616599234 774276830 581337778 921141175 21199594 929822197 758706960 990784071 791062168 838358770 661603216 938889817 115730380 140930334 138858147 632650343 691072868 862420232 149963444 346526977 158301306 321307093 326665980 827360899 573268200 970075911 821562919 839050046 806100934 969146619 195636552 630482143 433666111 465348537 109681292 364039476 569123302 945838600 656463962 806241886 708522152 862280935 214508790 322636466 436348421 896008824 57938046 763013713 839653052 917864734 393114334 508623808 651012405 990089790 795422720 817204009 947491491 971824811 90473541 245952516 314176550 751833851 794960321 821683693 377376086 639417289 59196987 922654291 857945281 900671793 312026491 516202895 653169391 883548376 772342862 821740354 686737394 839511637 590524400 609174020 417220785 549819824 344032335 628028738 446167360 566741989 2809924 434087334 688294413 870603218 204683369 446725905 218797962 251941901 528720802 775344167 986555098 997230375 324785459 378490155 631330978 999458438 1354417 988937815 740865804 754667079 302020773 843126070 460905057 796100089 71888007 522662546 87346294 949820886 775199484 819559326 656044373 941724608 849504054 854767036 222438822 494877214 709092340 726851442 178799176 527975744 528853696 594094178 316142036 734423128 762156436 872781718 907282365 955740792 854016973 885151872 893098353 979060321 659540745 765805845 396569855 866144207 409498930 742903591 264292871 781942115 88411464 723808670 664904250 955172097 366173889 378303233 200983105 848296061 161797086 197413018 762428280 873948707 234395034 346954850 956230133 973476534 966344683 998984528 929050960 933869929 665625260 758848218 346248380 424499158 377163090 631385718 901269648 969771788 494508550 838639561 272125177 729937791 510675356 638730056 866201544 929401073 211780223 701276905 382659806 667131247 575513693 886604088 283482344 623770276 49756475 937889332 499759912 950729412 442300866 845045209 452260216 653748529 712891186 740641168 96095900 173266305 967857318 996915993 517837367 849343513 262678734 990870050 329275621 830845211 454308492 480962876 48460263 678735190 5368095 881073401 391711793 889746932 191921019 584239630 205130348 924122098 370203171 985184517 215241225 574650608 633974607 668305698 479659809 891958199 862145822 904072269 598416259 689921760 789148168 971314533 189716587 651762502 4955214 857646826 990277458 991468651 986947817 991445429 307530746 501213955 247967802 511365331 782526837 920494529 471288576 615695733 234977039 568415745 632629660 655948884 494547266 604693948 969474010 981071737 471296080 924776680 867674773 966125918 149535252 705928338 934319422 938514804 516039935 759294425 141626287 721935026 206669066 825828875 959934255 970667306 387434663 459113414 705020857 941602613 147458186 482078479 68896334 374678954 871226838 949562938 40176259 505682331 723706731 951286330 524937691 993060513 81298174 729593773 209729804 582956105 328106721 511276773 349406534 739912085 643739643 937101782 698871700 966133572 232501882 748048472 392278248 551352966 593819820 775549517 147969352 585714267 174355444 537142696 279463630 750085715 323893409 370139003 697469075 806674308 484934681 813524939 802073585 839588165 120227637 233195294 595074799 754885407 187029789 430810369 593527901 717107504 714984058 794258324 30918658 793635123 621496861 690916268 151017541 273118083 63655924 76600212 887075769 961313280 141609656 582568607 163758780 606104660 284291776 682784111 384063151 833155009 796109267 995896976 223969208 896416455 205359582 268076956 141746946 740995658 440851125 851994743 205686397 856388389 938349193 997988110 444270751 778818018 143903403 387204411 153397377 461211933 281997973 478155928 684358976 787283386 402290780 604318650 161290246 786783035 503613862 843530220 691065182 787333318 627165766 926663693 576279202 969964799 38623127 233028883 711952915 763861226 286204097 563659828 750034775 835173037 830620736 836845691 497010978 678669209 531603174 557577532 48162355 708931119 227675993 344256957 865494223 870708481 447331845 768034654 676318371 746812961 379569977 584153700 235537367 957016798 977184560 981428132 254406146 636826011 141444979 618016571 305795617 785968722 724566496 729677877 819715194 969260935 595043209 803463650 112158142 197565782 102644802 611333122 952222469 955182908 750537757 926190951 861199443 973850736 505249671 616340389 225399105 544356352 550680995 973748905 497497502 560726057 786096850 832359194 175757381 218589615 630833168 633090615 702160680 825969892 370140884 963195211 822819450 863373771 724124609 832070918 923246374 932142443 167538186 509950316 577511134 809795189 155806476 583670878 594799144 837610735 366796857 425673680 830917175 923998421 836274496 914921937 418250668 750413610 139837525 520842228 253315827 808050922 165867554 521928807 360648616 602914922 689293956 746753025 586200027 892628442 526034752 888045762 363362190 808595165 775607470 931447169 307484899 588964092 585382582 942752254 559152840 616510148 389468295 468180844 70884691 327637393 729189889 906903109 178055959 443021265 530324192 554903027 202826936 375301874 521446062 760203007 569253184 953859203 761104225 961115991 412679427 555837794 779259329 983130997 515936093 724194101 291981511 662898072 662509020 909179489 296370969 931413376 696825386 990405868 263973807 277649208 318516304 892052827 501320740 793903224 498565374 618959963 202747388 614039024 524419403 692134181 873346087 887548591 381573125 873865595 365557133 522939162 300618239 672319062 119666181 971659714 368895769 774597289 394202015 742862960 29826761 90377635 778544295 817190744 815891296 934227677 171484403 693925865 489959273 812784455 274188487 848424986 72611030 934576121 268875819 358005631 302072492 792087964 417549301 969637577 96499307 942158714 215878580 788094372 824494603 958625983 58444037 695635652 768971904 821536032 197372803 448790237 83094437 253565564 772942287 894283784 350197652 539937666 89248021 393755943 430676624 854557367 597750305 748454071 837561523 842683911 791023800 918435797 152554748 574274180 641987819 794029258 938917100 965327357 951487934 951708416 323539530 394893405 307266368 310860588 301199705 951967229 328861755 983198944 198054296 868847118 458222622 485547406 577624149 586034242 333402707 756276378 973053822 984495524 441871066 507263661 119315825 146070152 759558445 996668717 219647364 450058785 471179907 976549308 267526250 978288053 481371634 594409034 141082319 200332016 153280228 575789791 997713674 999284892 518984534 835551686 69115471 121727314 909242899 965528606 646685362 777542769 373763795 824333045 224222393 337890368 463042861 709771515 978791383 984899392 237067825 677375590 795318693 948138375 266372188 771719469 962984587 964350039 864943473 962830926 852341203 870000967 957943473 984346252 566345213 798671888 142987162 958816379 172184504 716805623 773199454 908700889 449772601 636098299 21057158 457088298 666974252 867934275 622372757 866644095 102973675 448521616 760426078 763917684 626340742 642430225 631188506 759275090 943716611 994800781 589493389 702984345 325482612 538310705 123738294 988324861 799286552 961500996 184120843 994290148 42712024 185269808 481637246 926065571 475452358 555718680 395656742 989132941 987376761 987789295 459342116 913032115 868790060 965039329 313748645 638443681 160743832 477248730 808142790 859933102 731540183 929160682 266150111 580527472 331229109 584250070 992579462 996752525 819090626 959885138 32135279 730079893 53200759 845746674 212207258 908973133 570758424 687317230 515363756 656334095 989768403 998226075 68298853 676750131 141015621 560865334 33251876 183292132 764904684 982066592 903898115 926261706 9017538 227914948 240224512 245864102 225074017 253507000 323292267 477850066 790614925 993573393 82645569 503386496 97248950 799036675 655973736 976093243 297548075 653919552 847780730 892655630 617693398 900277906 189828362 513183910 388093704 432127171 972106803 981927995 447510290 813745239 631630801 635802569 703684879 753850279 119143036 547220094 654762498 979653434 480565968 629131826 766572663 895919210 11989183 396438647 637099625 796748418 970845096 987091196 633597420 812720803 38173218 903479577 773232796 900521221 737829102 912927989 765450099 785700666 113168482 298158522 908734394 948420939 902325898 962789732 687815739 703670656 273339963 843664376 890822816 966266346 728784501 956454985 517267028 757240881 789323166 831319798 232623405 466666279 543912382 869241986 144576106 180962877 968979744 989677898 167247743 796619016 51192013 513354558 170692258 728102278 842498714 907903103 294511434 918669796 739340567 785008646 334358864 456336003 567035923 718242132 205541834 363518747 613859593 797531715 710431763 895920225 913896573 999096284 128499145 706656901 947191135 995594459 354970074 511355063 446600843 481249832 6180999 84527985 166499864 426939753 725958963 726643007 953388139 955258421 983037066 989190505 510182641 758613151 952103867 957437919 216816603 881419293 453130539 738746149 536920950 870530492 858541367 867035710 918645932 963589543 208612122 740678048 225603446 481165315 873851453 885775770 211546492 601716479 400322234 595042641 627918302 755041596 770201521 839754776 315643171 497866051 741486817 816381003 113802709 182119452 578887362 935449039 204220389 343232877 551042134 746525971 750086474 994080402 243248215 645928152 110413110 368102224 338322535 996912144 229811497 930223494 470230685 842539275 342592884 545811246 549348714 941241197 274080690 345682976 258560695 541944687 783361191 798276775 536596453 902841926 601017962 709502826 514527710 950592601 526266630 566814562 92503309 400004087 539010423 755262710 857057330 931153422 74783452 521100513 291158137 850765210 942865462 991679665 769083449 908733531 812118773 854181326 195757625 483935185 728727966 861807378 62886044 294371833 391453373 652188263 28179273 694816597 85369802 130600655 971314673 983661308 693694104 816132718 678787726 712478505 302224891 556240069 345795034 405262069 273926801 956609427 909043882 916918573 780450655 998463021 921870538 995542274 393129434 688583300 867731102 967371875 184111147 460929437 855989422 942828075 402232950 525127965 333885636 666225640 284050114 722912671 523874960 638136428 176458065 356213172 232394071 439336628 926648154 999478319 963246697 980733230 994429331 994537704 91340497 508463919 4920088 643938971 757521527 779771661 90646059 587686315 221048879 550192638 819820299 899933909 722816113 761922719 750622953 853622959 846010716 848098145 152233982 611490881 599877319 635374179 987564180 987753291 167518667 256331762 619972131 646355716 642853779 767747969 129705779 329627952 771070426 940775953 635517637 896390729 167809689 711725913 97034850 203181678 494442303 880579856 512043168 956174382 253098157 686383535 573680460 624615051 725062118 868951078 288615656 680893943 890765341 915775026 48366263 360785631 368333841 600492946 790855686 929645471 831632119 915369152 402302996 405649655 909332426 942149643 134147580 375487756 230835224 233465693 853285756 997617001 635683887 668231987 902888512 953557578 946698438 979055089 458651903 853794143 561220338 907537749 454338291 585937356 201059737 417069865 773994720 902340680 944703191 993393892 459258360 569070899 753510107 764410028 619126704 874755816 144395427 626653892 725225343 799552185 326323227 339501478 877773818 910759287 582265457 720757152 293838546 312267853 435829563 874485880 669364964 890368115 173100475 562583507 745442596 926645007 368146751 610161874 354963592 610669400 174585273 705186520 106711419 814962045 239868073 775464146 240875723 974650029 343600894 954154740 642337490 831221061 773828130 778728417 302497194 782316256 71644768 948321438 244014217 784770728 169150364 676221244 918966305 942376220 15863077 606402394 373480215 433670504 935254207 962814759 19931202 833219221 205329602 630439945 583150826 835028104 753463805 990804837 622077651 675741595 947461553 982982287 714700290 844305767 927553285 952492329 349218241 458571009 729200134 774840293 551863765 857351946 673850680 732881019 287142879 388035420 28263491 420477555 105337988 321468608 99755311 930771894 549659319 687517940 237420535 813162601 434217708 735282069 39050525 788079177 204659330 357360065 306820160 392707295 66853701 997273864 586256504 759622440 10847668 135539193 461410861 790899637 610173011 697405172 511718447 734104126 725796263 819710285 950178979 953484914 958001731 968987457 306144318 955467247 291975087 481242315 662246311 740054681 385720961 458778254 745460429 936567900 234778755 785902914 94225113 285186272 980489212 986671417 54757927 940350983 489885672 846698528 372197078 759769726 459656189 804727891 972999053 983978433 522855065 917326333 776835385 804394526 839035730 965233459 983575086 991973060 817871101 974937748 339867570 558858728 730653912 797560324 375331190 913906147 381207677 537975164 43948601 375049806 972563285 994830171 954927229 976593833 569187201 946557632 177590872 478764990 254620721 384789987 103795648 990847798 216474969 640661494 828300935 920659307 489250630 895413487 87218014 455037801 137204337 403247354 422666419 485555108 742871434 927297282 901803769 934377123 81402374 264277132 175701838 393930949 182349204 934735911 417713940 422908404 321137505 729503633 602361852 936636818 974421985 978256335 21598966 318229367 968657192 989136288 824493016 864271010 781544928 992178827 35926542 593693001 853634593 876451070 150468198 343046846 618177252 982686714 898452446 963932228 466969208 844103577 354125199 909507741 475289651 541912471 477992021 876768427 719928025 958223874 749888026 960687950 676124475 696519487 169771135 464132064 322234971 934053352 521125268 593970468 677667279 834772676 364268090 691157844 847399768 969324563 966956487 997874163 363753051 610733187 953655640 980958028 320993922 803914353 802294333 872608499 398726479 745794403 272539218 434586128 959961050 980150006 999883957 999987745 320992235 567439852 596490967 872456441 806605257 998247918 411219723 593545131 864593096 887896417 819273049 989875784 171504441 512572394 955980844 972350538 732190258 973589577 748272174 933882818 310492337 471151180 994091057 995078651 470038965 751704024 14086420 622173061 371753009 999835736 51766253 500624047 766763276 839330832 918853735 919599749 307949556 408618207 10346412 881763096 936522690 938081564 520866683 643396314 625515958 769521500 449060665 827525785 397941532 426933473 500270319 991865166 698909264 701163020 472140956 882600456 518872576 792070203 170941875 685660664 353096446 419863375 985415854 988319545 452261188 655328002 859374998 871194348 155336287 195902756 456651352 970207980 117194679 167567678 476143904 892841801 142862667 758613683 743761707 922143805 698696854 943231975 459535542 875464898 900851183 970285662 861676441 916090791 854942077 980548742 105864291 386294513 280110325 831660273 68221885 186755591 257180065 893763260 804574414 827470307 293060093 734079557 841364234 916907813 228151381 697728111 828520478 895468155 829842197 964868774 751307384 873972906 323727254 914106091 651776635 895281484 921182550 999042298 72202600 889225299 671185095 953122743 396126541 526864162 114658379 273898233 597883511 871604879 876202939 974969883 639405053 675280896 631942214 845897042 557796025 921267607 415175255 693928966 177764416 626571581 169897907 787391449 440531871 991879713 100281254 798252693 80695884 551516949 130382188 657602727 492116 96528120 319643748 847564216 518182128 926898018 591174126 963573638 128731042 346300544 445144991 857374488 986332521 994934336 571660774 578408875 137300453 178811943 633688216 651022162 404201023 654370881 412193915 800085932 592165791 600339901 594426202 634429272 98582698 531395158 138891709 768849604 385639919 794227134 864338696 944974139 380276780 529019716 363072752 888407534 562773510 629143947 393455435 988485675 538592739 747479359 264513087 422027172 906439517 923524518 297492331 348852607 596918193 704306971 821091742 857797883 137994383 501621960 476634129 971907544 116265921 308946123 549864976 716484377 692898302 936808697 148989427 584640802 20201970 232906124 838040819 838557854 105005266 579779210 42729748 732493789 15497006 289951042 780234458 946039051 946835463 985004311 40959434 813732983 583859520 645569190 668281008 925522338 284974985 831429298 441530428 793077197 205447632 251897140 575546713 879724113 566776671 763107984 737274491 834415030 549181329 916279911 48533955 831314878 49669180 637109513 896447961 913781729 516839586 837687334 738338142 935437851 355944584 924452935 523224644 531053406 989705348 997418324 473711128 674841135 55111536 886132586 878268022 888861984 483386855 836990569 971645679 980747749 295470264 610869837 44339265 277966032 574248628 714712361 847570129 914767926 898741984 977888758 916296803 946497452 992933704 996655818 75313604 246404075 464205876 798854273 585110616 737561276 693751699 705005479 198491852 367286329 796155263 851530028 556818260 625205444 47523685 167485242 119696240 296451761 776421292 865543370 498533084 893312650 998329098 999248039 794751633 919331687 505623957 830512127 333542036 870711154 429498650 562532416 626298990 854897827 886023438 893706726 374757583 544187183 339936418 443016115 708261930 895148531 445505254 708566505 952568557 993062416 741612758 841290725 576731282 881193147 17519643 539858279 564802461 718320321 300159616 663498293 212372005 749443060 480702304 728355347 502616300 884131524 533868226 835136370 182144800 396160952 565089853 679050653 506989537 848615472 952822364 974693429 136682930 890131774 881974433 902684492 328864117 858518103 169948916 854146403 572058712 800171586 740462684 815727837 25125090 109676297 780582779 801104732 465028322 583045599 943342493 953184619 504936847 526486166 163525149 702806003 586459725 980934554 617940600 664906780 488455684 710419667 156208872 247382568 455025644 727919989 770691060 914824248 81253989 489182551 574323094 803501965 352489156 714301861 366906763 450638695 541353920 618334572 328611097 989592357 965540845 966031988 618669638 918369688 768130062 805346347 814790846 843205947 56464422 188493831 804243549 860988513 271217494 680417364 478382011 846224990 580642208 861992490 962513909 990570939 328886017 902490354 493980953 859672348 899616928 959124552 495919 540911917 411468695 813605752 469661960 739976722 90453363 522414337 19465624 985449621 760811140 786989320 432111046 551574868 840729891 907385888 695756989 701612671 839192787 906336586 138000234 663737724 451044836 470894286 304035771 825783609 75643302 332753962 806653092 927625808 788835100 886710776 111990566 798094011 115252725 888240941 9945643 362608807 894853335 923661111 636574380 823940837 807365827 895210621 399316870 464675850 683983086 979690868 858936275 980278370 259973397 501070302 865786350 901910466 762524480 806906918 737440014 988715127 74935718 503172213 199763059 829145201 498108925 503553821 971170969 995564316 244412953 246354718 928170349 992835452 558763902 619322241 100021849 718799797 80090625 869018248 511846655 698615752 281037222 878892153 36393841 446960275 300195692 490668039 430616835 610076959 182480800 598690238 743419172 794356607 777682473 988480214 569350538 952816657 660894997 970190067 988488204 990099227 278281486 673868446 201080656 956522239 106549207 624812162 702766331 951387291 631455343 938554322 412136973 878000322 889181644 964039088 317896353 341265790 285163441 775720106 564293995 869181340 352515463 698730779 387461507 597299865 379326523 564291522 932017615 940589170 96851404 377220993 847416862 855454997 112620957 655232003 375892257 912457857 880444993 889962666 802925627 959015039 892275440 988254024 51211937 807569255 456622070 940936218 235617662 622321500 517108912 776954722 284538441 515147951 932287461 985453267 404000187 576965010 479058022 717404519 764275622 820665584 538836789 929070577 125085568 487661709 221069105 687798513 687434852 751898322 25330698 400488553 426386601 891360384 60604575 276632348 256146067 805107070 201101597 217996564 722053488 730750593 972723335 993263781 553597861 788162376 874225380 874435172 304230001 408163764 994703788 997072102 835383157 969157081 114498562 116869097 652360998 717579802 945035318 981431419 913345417 949151170 620352024 843811120 159124297 697487107 456687904 460534016 21767923 348025746 5380176 619112159 362162386 772810789 775436294 776287493 852181943 907022508 495975052 635970744 660133480 761585434 16998379 806249157 866212820 955082565 511845667 722661255 216891570 884732126 930578679 943348536 986435867 996635922 281647777 657327119 415578951 584615140 393632186 616356437 224575623 858068483 662905350 872631982 20957235 185265630 244117365 486801837 507263414 547764828 670005010 956047971 952473353 978822326 205830833 879298881 176191219 840838947 854056416 858276452 315071527 793936664 713518521 886790259 551662639 633003936 402504548 964768497 17666318 490965299 132264248 229134350 544049630 872794085 65068161 455913702 29354747 801098062 258976793 616500436 275738979 542456241 9600706 887021051 946683762 995275989 786807779 927301400 746579569 814692451 854136335 901988418 764201612 839695886 195410149 262099129 306171318 456013801 120120396 762068364 598294361 637466576 575137517 706697583 158804607 722886783 165424980 176971479 419252021 852492232 395900879 867531203 567701604 916115453 922627543 970470353 15683009 768141399 218990324 307152173 338617201 544289257 893362661 984915381 932444947 995174408 493243294 844359036 897982894 916229389 240864643 761258847 809614320 959778743 184556708 849030149 480313135 757519036 930439496 945602683 661054933 985483294 476318569 762605254 251104779 547511098 761717987 951302413 238756913 877473540 436556632 959894810 381252905 750819504 796273460 970986945 856825145 871833347 659405447 789937435 803984016 883486386 401183131 492202187 615946340 972511798 819082805 992994914 491733972 537312089 730631776 745711560 310020477 508921030 243175160 345305508 201054723 703094010 27040238 465532006 696890180 714683368 454250705 652918646 40198089 80796827 934396515 985125498 239543982 912307934 739438027 800701277 542715874 937950384 538527414 858565875 458262708 898962050 417720598 716262319 37232530 372503865 23910363 978112153 237232465 751380994 106488126 405180286 706051055 897521035 191213817 390542703 556708819 766442680 306301517 883479861 762052900 958457638 860008572 990885598 960122176 975402743 221790548 823639457 583382274 887049571 749646738 967997645 390131116 691741038 29218173 899313283 188819119 382154099 322027524 834403826 391273070 685454461 331839103 347714890 423093891 482678906 496846691 688479251 227720918 902846037 818167672 910284340 173009962 485505663 893754516 899988574 199671870 343751462 201716078 484446186 895750986 920067406 539785210 926774829 513301916 794290337 895774252 954387406 341869423 417389884 279273197 404120093 924365716 925982148 86082272 800680524 946312222 950624799 618915494 875275225 885587960 997675282 359687062 645754100 484858272 995461630 208156234 989399935 62432747 677371573 137307341 879110535 396048959 447668505 821382350 861289027 272765561 728017769 751551400 762672625 464840290 740107610 527845619 932683130 459870562 803736377 585472486 825101224 565031296 965222141 873569338 949190295 644249214 759708875 635175536 770949799 375635669 973485160 855898506 908700311 822740310 943202682 29140226 92676195 285684752 345973750 432755816 639007078 129770830 233439583 144295293 710193415 323441679 620976538 400060021 730404433 932221960 938219751 826588470 967875872 652135431 868500179 856489320 868120865 804838092 849753953 540771749 831397481 172238335 630547565 268464663 856187681 712153031 974030216 881871258 978520456 159400862 936258221 569649426 617652932 238959895 534134650 466894538 922007139 174734512 236009709 582955268 908856935 827579582 969899289 124617641 652141500 927495381 931062908 85243677 522510149 494203809 883122505 139310590 321963656 13045270 328319509 909894630 915670110 344227905 813819164 109740093 240679154 92221202 716671295 18192149 313217456 666636574 966507608 640137441 892133647 487910881 563292131 589640865 596851487 749807791 958810748 808260446 905301102 512798299 823065136 453543637 882735073 767791805 909776314 261848658 629843999 268414960 675183247 250441073 352676538 761815510 946352018 196200257 344025219 863147520 895616949 409189496 995489993 435451757 563324014 794162541 835937817 294439241 816405917 481069649 900621151 426877801 550254137 58612677 145706613 889413475 940337639 596404507 824915930 842973471 865460846 246840676 725087267 48702121 188320454 32756147 321344560 676982232 936712608 605611029 692891408 368867998 720505307 804701826 905999502 593342948 639376503 258958465 538336445 353952545 488798550 218065745 582442043 467543517 759733446 591136646 947939755 614665989 653766193 839126092 960523546 743261765 971879028 248822201 306576202 58726865 896212351 887306511 978525524 615981025 976672978 932728105 986853216 883198086 935564601 80744583 137570684 743857714 782111256 64497033 599369058 88531234 100253392 158215061 189510648 882815463 997033983 618271337 988222576 869139604 992515169 790594522 970516380 551816309 721645147 32150399 343724705 733853542 996894558 105982633 282171726 102306306 149005730 815885973 907900464 647803155 977174326 745164275 942490649 819440082 825468036 539842304 610084588 68225425 662505852 29970463 846169331 462592452 568894662 457025195 827471529 657266198 851844044 669465037 961385661 433672699 624247081 550125133 706845570 852594318 985656741 763298204 998147028 13413441 100957508 762532965 950684447 949076431 959084700 627662280 797212863 183244282 710953468 922037000 993747802 598573739 991881102 520774033 922674172 787748287 841029066 694191301 801262012 979298676 985223322 186681127 874137501 632755403 802261506 977532690 990496019 465151407 906357444 630028327 739742646 162943342 443868478 168512898 997140970 669265306 982693444 301435740 624869056 469628677 732506322 294633509 429519011 163183523 976816278 739770739 931502035 9544057 965852574 848442381 907254592 356215854 889490242 367242632 680959523 1521895 939913707 763589756 786469078 407920646 642100113 574842005 989739734 978484668 997834901 781100620 916803688 224162229 386612495 967601276 976503773 309246464 394653528 336622179 602992114 170434593 427408983 152911079 209149909 1010072 762648589 455038453 986645857 465571827 591193745 780131192 930451233 954206387 996209369 463114976 566702090 887740538 964070925 203524531 981959723 692668044 998763389 472751106 713588885 844501438 927616608 437319653 862166520 128869937 711949731 956717441 961482008 137790328 247967138 325178958 553168532 123909992 949596521 670006667 773907220 911525007 936203110 641563317 945336863 930511375 972964643 175827662 643433867 474381431 869174167 490209070 839922525 753841414 944541742 735729113 862791814 966224408 986034977 911134281 939012253 603988421 615368545 735901087 762158127 724022602 888024681 92353617 572602920 682700379 840922667 420182894 610045744 911035547 914100933 971398268 995560987 966376780 976909526 12290622 371059662 913297841 998827582 454499132 731596694 518366574 645033092 113434651 935099938 913838787 933380001 169633760 581608601 476967326 979227500 578260069 805304477 150247212 397939898 351830101 498152425 158109061 285330654 609337240 845052893 462400096 480494109 422602310 556456961 441098309 611162088 70259985 794404079 111462788 224195699 488413966 777182421 946776306 947811034 927305747 942089595 896557001 945676174 592908120 805966288 661705106 801800870 363024240 769329554 226259199 447952041 748099500 959193802 636197139 836813863 879585429 934170382 278607774 503182582 642331045 693529040 545406960 758269044 721571767 764526992 114708898 265060094 247991922 306277083 987377323 999266181 803557079 937916092 696420956 838458133 769250692 899254122 917275280 949542996 458568463 581647286 605162986 674719025 514820990 716151635 556147495 841092142 100287405 257020317 227289633 901162481 135139084 329752367 368242192 417240091 185750412 522982266 507948827 890964944 168706552 948196938 247398302 666912655 380159749 700842277 908269882 995235454 800137861 925042447 429695581 672695287 107989211 212974477 602615320 714559932 923115389 953171466 460005317 968334413 17227202 617338078 260142228 663643925 929564176 953693625 726911718 954540524 754144726 995364658 925992463 998111768 628127674 865988291 841620472 892028936 791105167 971758012 795965111 970761278 896089055 964908683 336954432 908422352 900768277 948993499 792882509 958050416 934079702 966206500 91899269 632723131 79919152 467799372 601359223 842342561 805067819 815468867 761287508 866092843 339652308 903466095 566311624 596326899 69549292 424995497 454400242 734865084 974337810 981309086 886218121 950729055 812996534 978798013 712999605 908535903 23151323 630980684 336053283 847816098 747972356 921963827 967268488 999128399 167339681 434643022 815948652 954148076 879379834 895815607 937713760 941295105 523101696 986524562 58390383 548350131 188989380 227972821 413848861 561774715 35504421 494293266 602586592 961579987 384352994 388271924 592847517 959433933 996484886 997227866 537838158 633706254 282946076 953317731 190951547 968104872 866407515 904083051 280318539 846106152 105534284 262160204 842266090 947463671 817449805 950360713 240373215 551629624 339740548 794688561 195254519 520358589 779466850 874289711 667764630 983846949 367068702 726924853 849663857 998455695 320476936 821301456 817325957 872941304 315464979 855696340 498851059 614401392 874290795 912913402 664936547 910830090 619846553 957005784 769098664 870145478 981950943 983764314 745831610 921181782 147378900 197631167 145094812 571228724 248353983 764134879 866470379 944531107 926350126 986758158 394944229 813635200 791711546 949380344 179628628 622817434 257972890 267750260 618455066 922104119 405371912 603929117 814248905 944317542 651184906 922964119 183685917 340936311 934005189 970938106 378271890 683407712 645697615 664297330 866194092 907438325 876924811 917350012 514595861 624675786 773217367 897014607 322747349 718018326 971180692 987834116 377167695 998670536 990928386 998199792 846660047 920784846 15899697 494971777 650921152 824106061 432682608 744925730 758641848 908266118 206094065 886935863 651658723 759348407 728208397 762286189 643300442 738981156 964159510 985316762 626376065 791474533 447810987 663254602 428408100 929052627 134804351 672532878 991444738 993580023 647542455 662556722 59298295 349816585 704228174 829658981 468145956 818014496 300260750 446092925 142793580 316319251 199963664 213139738 405488186 754337502 315128734 742845657 501535316 579659048 487599584 558464919 597582218 660247200 194564472 857817874 185294062 530475265 903434149 993048096 762678984 849214895 949332943 968553174 859798413 935329085 828206488 888525049 87243623 406492079 68868683 740447405 450170719 479418211 887209893 889193508 824182571 992967420 176048402 771144458 316515381 492733636 436484467 950621350 295297638 984730661 498465860 772967394 336808953 670553932 473770535 901320796 649314190 671556345 710703710 719633742 266771534 733239522 661969748 702626778 679880411 917552488 861839789 888668023 515577455 549709766 695148881 819543040 982803925 997428996 121784355 827749029 878472391 931372896 83799575 749499201 543794813 551960416 235582737 380929297 663538810 973329996 990798323 996054610 544658546 713127136 365143195 815604403 730193694 914104130 402737651 967569392 522240520 744740369 59535691 422322018 637422441 692142888 546815428 966431976 95998863 991014003 808727597 825539182 310854243 898364497 719057276 989641912 536148684 621506409 740181347 956971155 916464773 931080845 396352591 850797188 589018165 980431988 116518490 634937641 18229947 329805882 524673992 776612604 298276547 739212110 260705963 951864711 934207479 981809032 696388963 797175157 473257957 807213914 325867911 827607974 852104453 856308961 948278752 961273569 424774729 940011918 297545482 917325376 990187370 991838581 907585477 931316623 43693204 333477306 715436029 724365580 848637491 961267987 379284473 566512173 582190588 902982518 901092148 965986559 305230304 938065170 983146917 995808748 326692929 499667063 658698346 951327834 861385883 962455962 726246139 863473091 357218920 803971066 976942821 982358825 798222061 854853798 799599436 870183904 452622150 928737219 938936979 985137400 270781599 582883585 493216166 716732645 391813848 898507175 202191695 453206300 374767785 446210678 508223813 565423827 433594958 890147119 950432620 962949113 66943394 687750173 830820341 951658530 586100475 591178044 572532674 909895678 42920506 232073009 317835041 982040373 917888119 985462435 175409277 998452708 717590806 944880143 677837008 742546554 115873381 865017696 639478535 870900149 635324927 832036304 315188659 750385871 291477897 482507263 885566495 920350306 709895030 868502399 849087240 869887751 511325309 825069982 398621423 746155632 366970577 748527002 587566532 999581566 543636953 602407490 781552994 826290414 823425682 982141910 428118087 689729302 964191364 980271347 569275942 804762304 59357018 544763122 10687939 312728505 617998441 644463539 966488579 974032071 115233562 642563316 495750499 562747556 330880495 377565770 109443481 284884836 430978137 832042444 829000200 868778090 327345335 694135831 754983498 822562904 366161160 739821729 771984052 948731125 467846968 552728298 227809753 767511477 502177518 677773055 551501554 722226914 334466168 716096916 500503082 808908848 454051709 559511182 308076789 880430667 302093664 611913369 374796394 463309653 62679709 238738623 151422716 676010417 371786663 712160229 503243688 596136092 785157903 850969952 983412569 999993252 458011306 918153486 352452379 677257062 79764585 620481121 125070231 900288291 594667769 894296435 805053306 850502366 435677924 584288331 550071020 966285689 214950096 711174362 825601550 936588910 823150353 949094452 398851621 896813676 402624315 601997370 889654254 995405103 900237473 998551843 179392379 929085054 599914764 927057829 657749263 946156936 343123403 529966517 301777151 571494458 238892239 431083875 737256583 993324993 524079145 973663441 632746097 952598854 123036751 621383128 139794203 945053612 370363929 857177551 478658666 948413132 883871647 981444227 466151879 501187198 584060330 630989934 51810213 951602392 13260613 215144239 314718263 675572874 556342488 935679292 200574437 645892652 934897374 943006577 707077894 854548987 283698258 617752256 68713121 255580505 381442365 967538885 165050401 166238597 754001889 894870424 319307648 770444256 757238536 970807547 704252979 887254378 133790261 369988327 30249310 212969271 455788588 652205548 408493732 441078527 291601360 475635243 361588836 454471701 167169766 583995419 790881417 867064094 938411157 963683704 22249169 485600102 895241187 957179601 649195475 985390732 50517895 598726664 121898799 876075602 464522704 801133706 997421258 998008800 506099435 741442988 608302205 689008858 120794817 145846326 322919106 723214587 11725023 712996248 627651321 636800618 275770171 482997109 768357910 802995347 27457679 802198168 218932906 411756207 955713717 998522824 351934508 542028956 735963779 954011276 739232182 999008640 680019556 899580150 864040724 937367522 556894468 779982670 829308237 928606930 447925838 957058965 948690583 953231418 219669035 284901506 297744037 808882272 509229813 552679139 753856050 784166082 759202708 854374890 446411908 614992836 241607833 826427849 863204664 904442155 93376745 210866263 650277999 793844653 962450098 983798810 81712087 634874190 299956640 825783382 759136422 928038534 100826727 257462046 988981086 989547801 31303822 105445717 235670197 686784052 817654194 874301529 489818985 941207846 958819734 971796140 604827144 695064391 152921204 649569240 974318564 981973307 643649604 984709673 956686553 981093360 861581083 871266195 718105019 917610257 602701194 791477513 902584866 990959302 990193604 995188010 761989569 958006219 416618469 875994195 90516368 155141868 169718158 651122466 833740681 860066210 331350260 982122827 875302355 911412180 275151143 934080413 862476523 892639300 822654035 960024301 568417560 664906302 822981125 951608458 502104491 583846961 957882281 991178816 561759438 906874861 376210786 696105232 32393747 485328911 344217050 486068842 420836054 876238491 959513351 985412189 810178871 841081522 920249416 984764915 841177933 892024969 789941911 835262010 905923662 970246154 112325139 231246497 292139489 407997350 606996506 994067364 42157615 849979577 305528905 599953549 655672508 761950067 657857188 744494337 789170326 849145796 880337450 987671051 769276976 849791049 90548029 301825746 172914300 744261145 709118428 824770560 297175241 513446478 255915821 599554641 634402252 731022333 911239650 982004532 812435884 985017188 737533299 783346495 447048931 927810447 543232902 549829507 208613135 453571281 171618552 180835615 755771652 808183056 629145098 978379331 788344092 889339382 530853277 824078135 601670332 956393706 968951349 981682802 41744951 332261431 692019020 763581597 117662847 776236083 39627466 851233706 661598366 806743495 920875392 942637153 298990596 387276622 561667777 851118751 260447586 363876908 989809997 995715396 656575782 838202444 169786731 351793893 318631217 596296267 136737189 965279865 11828836 561102835 110739499 483013398 454072809 738383846 570089054 979478841 558554229 731201148 182983423 558874802 23954724 616574270 604180536 808182373 115281578 727101958 479926654 632840950 732104298 917210120 3444181 402134348 603983346 637275635 823838923 892624466 381867203 438662200 699038495 798664853 864563407 972586864 387596596 613528768 777758080 812207416 685630812 816787323 754012732 814260228 156156118 828696600 912795395 954674244 501373745 531293855 713260028 885784876 842952484 888318173 740450127 827034335 694294022 705716116 753209461 864482461 408563578 971104755 419349389 910224991 140137557 323132358 121940772 551636258 95350198 127252312 47609877 691757869 525358278 661713844 740136856 767906664 466077546 980671592 109669484 846046459 756961685 780257632 220660441 944249998 928899794 982666444 558359006 640934566 814141735 956119422 716941827 794263627 962982006 964214654 279655350 636948208 820628942 972217834 137586155 999088513 944794447 980863612 810249665 935611578 743546050 787228579 356242087 619159523 44248079 233204249 138156120 307957178 809040854 992425483 219459689 644179579 764129062 880819896 47444419 364937893 111674863 905131930 210833915 249336928 619199778 824488271 170927574 802553097 400810477 685923514 755389130 874988713 37258176 955470259 876091150 979466194 555407228 777704127 391166690 582542034 136676366 532505498 709794357 879662428 628230087 970109725 574821816 654513102 639833227 718040501 379267614 440660718 690226689 969402967 745216917 772822727 459007190 875541525 453410031 699210291 163959152 235755380 721589091 821891811 524561907 756317051 352382612 459581384 665646332 778636310 852450026 890978725 676686179 944364228 892411603 954419017 672963986 921702507 159458221 866714363 780905839 953261999 848576875 949436288 717744501 746452976 131810599 633459130 461444492 681632798 736062921 985781044 636667194 646163444 23385092 160864809 446616074 913788999 56921767 928073998 219379513 778373698 568722956 978890157 298695231 414611924 958904025 998029109 759592547 769388715 221159933 494212787 422604043 743439130 273754359 891748882 141015743 258957508 684725711 903190404 909429747 948748286 730379137 864571037 947172845 994400534 690157210 808641634 173209283 529050583 133349929 319240169 388789220 807268817 367832518 673979197 848852101 851973595 336252461 766526083 871980929 985787628 74816770 439334705 584963460 932423174 206974501 302306627 140992080 809436763 959430851 981707863 582633101 626218670 617184576 984585532 375205074 831257807 575525267 656000385 754679969 904428335 340979926 902198459 717759309 776418075 415787307 678451298 708712010 944301719 44609351 826618379 640108904 948899042 951577486 986822839 310999680 917901447 613156055 732255884 608579262 710827016 53265060 809580394 209512402 690227413 936596058 940886805 680063296 956296644 330568290 744676144 877073150 928548529 829676238 972236127 436622478 489087586 30837747 36440453 797531275 849499129 714517254 983189073 367207420 675249295 410037410 774536464 124810076 147714961 305387092 681858154 17735910 435061097 889001977 920937155 648780849 839897799 186357137 953646444 430456483 554576626 191602496 435135750 134606806 287616968 719738776 927807481 180738085 340183751 407062676 548055788 426467077 822097424 468945487 948446820 744118760 920289460 715886080 776168838 248000517 562135168 760906055 762887298 678345717 982090237 720465660 820811318 948033704 989810502 305300320 551985551 174107619 337899585 648501247 866097675 520122269 624391624 555045930 789549526 379456457 506825145 966030537 979405596 895229250 922820869 562522603 679492768 522340088 638947124 395822745 594984228 61199728 206732945 295478196 840950503 335822735 381241104 598632508 776280884 631800187 992708809 59212190 752073008 646330101 760253013 379102323 787583328 554901522 701001243 360559569 575495319 670049292 976264264 601659089 690761147 33663410 429247831 998949552 999975318 447740345 931644462 294826564 658035601 937239205 975560373 423832212 433604042 856704466 987773659 417555048 778288982 972596322 991227885 897418599 948311450 568090949 685929783 311542534 616350691 824375959 950851727 11770292 992960820 373027917 559592232 653694994 792505221 378652936 423493231 616615920 689622910 33541946 206394481 352914529 969254393 34554771 863968315 962595203 989063062 227240047 992042587 582490256 906071592 431590300 447121353 164047984 653625568 115134661 302483570 24798762 347043554 745673564 769661660 168137343 231609504 630414466 634513795 19554965 771690774 609959655 706489917 712257748 725022439 339462938 583774462 912712782 961880259 170379658 419925067 342777048 521567403 315426213 758994989 763216539 973226170 86113480 315677476 71774850 985597240 118350322 184283983 488307850 548770560 835356662 898363969 307347865 745646639 815193007 840255187 961099604 976308957 546556333 672765269 350459682 684610960 679951329 692125381 521261782 941062463 798288843 818370198 10186020 517059429 59815158 850787683 81467542 776956418 160899243 457779754 144556862 821831120 723900190 814421561 857905091 905688757 344836517 926724319 316993269 461482693 702698929 770843389 75045029 429839384 754365403 795053258 127633888 279498821 718643942 876426995 605652038 997880444 760470805 846312669 256722869 403095757 701070322 702816605 898813423 934588623 333314483 482383452 274824586 543908985 214687669 775281730 823197633 955408611 640324764 929389888 721959754 748012589 849114827 998306952 900502542 947748016 806609132 956080951 197191467 949080701 3756126 716809487 238686231 555856077 357878575 964138270 837196585 896571316 138640716 919499646 770747240 816454644 752019257 850783595 642372875 989842971 703563682 886331124 972824601 994907150 453303807 710646104 269355893 684570732 426893565 599640950 259411475 482556536 115370931 215144859 67380913 537941653 48028193 588644283 902212808 949308488 419978758 623986314 922050854 976010216 553142640 631262811 982059421 998817499 4111409 544727924 406221658 916108335 377553281 919541559 15717087 648456819 721654551 910385167 15793244 46922531 763921233 850685696 331216683 382992323 671923999 695274578 454649676 966030960 715261057 916570041 657186172 892882005 439626231 867294558 105875897 513751416 425684830 566476395 858693306 960164749 461363232 847564350 936425903 990886549 550429705 870760691 364384923 730416317 679731134 835101760 267887800 850228465 774065967 821611344 518080096 683841079 192753491 970576466 810590364 871496389 855209952 970730279 905099166 980002717 276056328 417248358 815719459 947001346 272006966 377275916 913046248 925939783 227189311 725889086 833940472 918236675 861404821 971641230 930570724 950047058 822131585 849340729 765136521 818227277 898366458 985143248 12060462 976158588 553276053 556598388 404365504 599293166 906439495 990606451 930889848 932897452 575630753 651758770 928506155 997670578 972982581 997063584 48855264 642236916 996845293 997999414 801642738 830709640 649701767 842716696 222125660 587367015 5340267 583721147 927411182 945038866 890564831 965851076 621940601 981759508 486480980 922631871 709393007 879899225 964627133 987596300 715002860 995210399 430654838 798541030 707819862 790179254 601451593 707246896 554511746 635135080 191400375 842680963 399348421 908535977 513217000 597227334 906585925 974753405 218353107 242209204 919396753 923128711 649257249 786183947 400543651 999033003 412059038 468231372 418940343 743925256 681653666 732854629 840606237 964293587 95816628 130813940 254617663 866229886 325578252 753011860 261466324 268674288 235995383 731561912 105980537 463394673 495059103 688024975 638962911 640026325 670189306 787799913 184498435 513146745 697461344 763561739 57163213 182612193 796954151 887784253 645585321 673211430 257757617 455854482 98970966 918314271 165031096 375257330 649116237 891103233 671576547 957453031 730689336 971073683 706764779 860881103 715161519 884137703 726195473 924204377 650468930 836905604 163295866 887982487 427166236 694429207 90093166 434442757 37013178 896843222 610211474 864619871 159571608 177102345 52189036 942973975 655297150 772220104 135609618 926948805 217028018 267000307 459323393 757080740 580020438 678627817 93603626 122993853 562019454 774076694 835381353 838719725 730198052 931679979 313483162 734088827 937096808 996641559 648970315 915227092 746965649 790001591 715091721 826769756 75623774 869901458 452621634 859683483 840909920 846276020 16645603 732290825 812473339 835784656 718132865 734035465 277247857 462377382 429318248 768325549 890178837 958086088 105653071 425344598 199963376 859029968 819232741 856191153 227414105 815167122 303309954 642453198 48650268 745503564 372097308 700067537 594237487 645912367 423397788 889339898 232667969 770663063 459415924 646765057 590138750 859722036 947486543 987604581 429608361 464156441 720413290 791616830 598714149 852362911 549472412 921874925 325616189 472791714 147090921 536274168 964601542 981023271 53769280 810085979 711843178 748580288 23460730 296716670 817170414 954785956 276317878 280504667 884783049 905890104 545202350 717967991 983778967 996233767 204646341 654278779 381022002 533681388 497039032 546990501 663836202 839072923 721286894 823805769 267643002 795987818 455699288 474887733 149794310 266217670 315176963 796300998 192670658 343342594 690034830 810724189 20198564 523452096 854180121 990134222 698543280 733069604 674263389 776271287 558578830 837401345 245639916 369101971 4932544 643990481 197916055 266800389 817228559 948989512 523955353 787393132 416289924 887839996 735737475 845628513 685638875 816282965 951076579 980095087 917527113 945310898 894672907 912161034 340388181 872029655 884966359 947453951 5534503 537900634 648119455 649065956 46647568 596008616 862297218 942808001 548186640 698075768 729159339 809975605 730856246 918063477 612513279 995281290 743961352 996914827 332362225 549638233 805473976 835742266 979380537 987235212 479745335 736055700 386960395 663701980 178905819 406722235 839696283 987464332 965476772 979253651 634256502 757922775 785191646 792775251 961473180 971925851 8891595 920456141 355369958 717200064 871686838 953644474 694029371 940991902 266624332 279002734 774019736 970002380 426643788 581041721 412310828 918105317 509586541 996478122 706668340 839164452 181535266 574584947 757931948 763783461 159744654 385586194 751363770 937446781 36920456 370992055 228912518 561871823 499331022 634011130 952094518 990567824 447854391 559667779 836763426 924870705 352373777 420731845 212470290 254363350 9092006 477037715 446855995 645948475 428097298 612084174 645500061 941962883 388243534 734878629 767768505 838335460 669953725 684477795 870028919 965177069 848353057 872974242 599677091 660556277 589847565 665284200 673502640 860825696 615016613 736409903 751798716 828735199 74355918 105988468 431488476 840800334 851823031 896943656 660145881 710948214 95546243 854660985 987650475 989404706 801052646 963728565 491796886 807348457 152320151 447599399 325723233 712316365 848121610 981698348 248952 781483649 296959178 689637831 735969623 764161488 706364298 961511841 568514583 791867392 518812346 732968639 875987955 890671693 79896917 811035503 539538648 733325999 353624074 601833813 491389755 591388150 551882411 729516546 656950498 711089891 59961104 263047207 275120886 898755433 571368380 850653119 249741582 808954674 239842750 710378616 658922052 842537153 555253032 592541504 62251310 439000534 32836795 795720904 622379077 657670753 622736557 666732896 612452801 965204325 712364224 843316940 477729969 875665716 348781342 921155200 766700286 999742182 423001435 964817783 153517994 861485096 139266241 635476440 303029876 437259543 405262745 519043137 241703589 265363815 751471908 874598338 708906089 838069311 955166876 983100181 423531426 883763466 804612779 949122750 874740606 878994768 629742296 637679931 408047274 773108875 62572081 850842837 912128549 924205432 219570022 808047771 193815069 845433735 939651621 943774571 137051434 433244858 485767774 718348806 30430989 420379422 911211324 954261471 26579305 89028898 357875007 981019298 832375461 857388484 469934727 915729028 206320955 814311618 716011049 764159397 944184693 968553418 936083379 987913444 994731242 996476861 426950071 551089963 776594522 946358308 105852538 628425024 569226550 697163294 336714591 395728613 569535807 849868682 304535841 908437129 378903931 654903778 730847758 765654925 552600959 777758404 413678247 437704254 298146815 372823723 180065847 948962761 221441788 944218136 394453604 744369776 812398645 844081229 256743853 307417695 943680551 948302835 849941232 917092520 499488988 857162469 204579472 918736757 201472933 322320987 471007464 483264406 362484136 483886507 877459452 997980273 995339510 996693902 703753723 782185862 830489557 973969191 798082851 874406211 996390070 997025476 682902208 960567649 239818531 620188494 615774294 863566172 293404902 542004817 179970145 787517938 807428741 946120777 339619436 992148931 146940933 557468271 278948515 507408927 381305951 766036421 259760423 978967012 258306790 831239153 533798125 954623837 641274326 782491575 32649277 173903925 629954206 845031957 214194095 399085039 271965420 886030944 910097185 921810352 331122494 905124851 36205110 154759683 740817649 896506124 965372437 994559182 366443340 473447543 469714560 889035930 459460567 986217200 382357973 803594563 489323486 803937675 840918400 956181090 597303052 619283019 783199883 999428131 20237788 364711235 2709407 238435716 526923909 704070977 928574306 947232070 536239680 796220894 940899732 951883134 218731359 453070794 844178942 963455167 678943574 945100960 81422080 539624394 124330627 978137844 811803929 914807266 81896758 781099109 531354606 538647412 618686909 953366546 244276516 276577532 423204801 710953969 177894991 654549322 697545503 941760167 978148264 998081851 705946940 790947593 974046626 981093825 573929672 742266614 202503397 936344164 425972567 924845268 153866473 871269249 203439413 862067063 301731897 325217199 328520730 669516554 706884129 798366164 290774591 693097409 913659725 958141703 170256370 897055756 214022339 729804477 612618356 913342141 108672406 889368828 55589693 170972567 305211611 958911224 685215429 715678288 508657774 958166497 940785905 959151909 415268814 964142469 897550170 966452789 733213692 973928998 344689396 731375454 586172249 893673100 109639081 364305184 743675696 836500295 496728229 784326657 968346949 984699488 867844780 868045424 46046127 417723283 719384723 753349418 884772984 970596021 931264047 974915972 308449309 613251482 602002253 609033486 36324433 234566100 957866976 967036223 209832507 457915660 311833336 775929913 629657951 789627245 627462100 971739296 139286981 777717087 385822120 564432779 491309497 853843527 642491487 999803563 430152810 525560463 358047419 887509820 72264468 481181395 424644806 883616192 946601029 979500009 876649253 995735212 263951987 366387041 203811728 418428828 928417264 953851812 351460418 848496949 34519564 516234727 32721147 577868592 324171931 708764123 237353111 694802393 835427718 950382235 575649478 689833477 326928847 820470927 987192342 993308367 277045891 656365504 119816806 185381591 481524796 497397227 804523396 810444227 450401002 652169075 312467739 554806205 228937780 697404248 174624867 252988866 953784650 990850063 227036516 232818501 320054201 560989841 161687093 604962088 506059387 882712523 255655663 950940419 425143241 822539545 216462698 426324680 785824288 996262266 783525837 862169916 9630701 649572539 441191387 539806403 688489786 729455491 643735011 958989099 761408060 842956527 727473565 741855259 537118003 560469240 530372271 614566522 859376820 966998459 601068826 769871370 775837756 800044575 866034753 872600912 876119440 894045152 274870628 420298502 825362611 873997538 524294860 862140305 470864943 715079653 64984791 704497114 690069608 869713651 282673575 684712995 293093818 914030159 671047794 808429834 202288047 666588756 238220928 682123146 135210849 810410905 805674713 818801990 533926845 841969090 934073125 939742985 709861922 929409798 146479459 902234716 636800669 840915101 783734324 967301729 503360590 575673492 69481060 328668431 167528888 275784108 272565909 682132694 705375009 780605318 807503344 833302583 225373360 567425383 299761353 332208914 239270370 508078585 720243159 981733823 723033944 866627960 121238801 476512289 780552510 864963460 945203203 990431804 760119458 980706788 932818473 982213347 938966972 986182491 267921369 756169406 531229637 882630814 554038177 975128213 672678735 963765059 827989992 964395886 221119541 536445929 343780724 821444986 73268074 248696136 215699313 880639849 211230569 679815921 254433650 767907148 326581571 736294366 975350683 992645059 595987185 653087040 62135073 777729150 431845302 471852823 621712046 925394962 564297753 635919388 246177017 485536879 708385803 931894694 733145395 950978265 455134938 636707962 10967971 250663266 683549193 691931711 953671318 966940706 134872930 610891045 766990624 822411376 887085828 923226450 926446421 977010701 808889593 937208612 425967467 694211329 296498424 472887873 579268006 616144855 864683099 976208783 186884051 405905478 773849052 969406821 942001977 976589951 190757678 490339487 228632727 504329584 207941627 658715413 834573501 912329152 283626739 982774497 565246055 706999630 48269369 58150461 292238548 367749385 799827361 952867017 753821953 971574952 691163008 898439156 720367585 978485000 781841876 819738687 555318579 873197300 254808849 938913910 58456367 121654453 8046872 799106521 234079865 939106819 203654418 858030208 489122019 827519090 869233742 994601594 426260553 601158080 916849832 921428900 482556442 888171039 10907235 358514638 369211930 918832267 632022824 932904806 87167502 915236079 30849094 664992578 395215727 782870190 680050302 957454524 78968005 436724525 760668004 826649732 769317896 868824891 480684709 862462725 319116239 937960596 91093987 561867324 689711013 796149749 867508814 982067625 723316430 867412260 226663759 431157724 445394254 689746587 297453477 351109541 848415112 994116527 804955817 970405795 113032744 958242263 338459066 473292180 334398986 495459134 859530049 901551254 981321040 999270636 176400147 444179746 372093712 785501590 842245219 907139607 798112341 995893746 276848915 903896886 790485840 975037098 266495208 575312593 176048271 402960680 314896899 807291549 593793772 752909159 105001536 317298490 802348369 954050512 854837993 993467024 108341568 130104376 446076405 757339515 40820156 880104653 758900693 993737750 724923979 867571666 258264810 341183032 804608365 837556884 375766213 544807441 250149764 529718765 26268654 651642120 979768031 985085534 638643340 872114975 984285016 999376357 79880812 291019102 792093765 939103792 144734929 321879578 666602568 815620841 1491361 163205901 922791248 930409746 13481925 121027542 546181338 633992104 685965798 921480216 602331408 898411952 937184863 964643229 207034835 953355599 225692195 917545554 753610335 811429308 569409752 658330079 482807589 511110853 523911741 843563311 343897604 970058344 324820601 782175244 759236446 933343413 359370679 902448566 436765147 482762791 151072838 843244348 961989826 982153117 73004001 627947892 21919137 695657622 945978251 962883700 674124667 926350026 79692286 877065017 102483949 631200739 552566238 810035221 380351369 384934726 923367050 928384490 158573289 941798539 533689894 674103933 602943530 686084359 619842134 934807076 893901101 997155163 344467318 375931710 409369483 825593136 767256954 900783245 278074439 591211159 331641294 688655695 693095270 696978298 738985195 765439897 512119032 654869291 142875170 798424466 796518535 996437977 627737766 728706118 34983846 331700314 562750353 768288242 10014183 514904221 442357140 810027215 139143460 664491192 989764142 990023241 562862971 583532620 900211856 912541439 426162232 656018960 201035030 497587719 159160589 442792445 187061245 389098383 288518974 526013513 255784172 568985395 881114258 945313174 534865340 630071545 732227617 739450114 141617801 629806081 407425176 707042325 766008948 972544457 67609632 311402382 54002451 326871421 208125133 505319152 288979560 880439112 671915850 913831003 325444937 804489984 170854897 493707908 211831588 407117820 380284709 904384322 575849880 985053115 42037898 730895062 416888337 445443464 276574953 307234309 872796496 880243187 149328969 473690283 358745907 388003690 322658697 470557103 314888162 699775962 694236275 894160088 163358278 250500745 496502687 538397958 601332390 844286112 371070889 542530635 717546669 836959677 680877866 953829818 918651716 957332472 201311262 206296712 67375197 443933790 835050836 891781559 918822441 993736019 82691762 570130537 902209517 913218755 925065828 977287879 172110872 411830903 465420015 866882645 915725825 984220896 104177574 600899515 739378060 771417520 689651625 728151406 953797064 965240728 247738729 382319014 252644400 310730192 3569191 683884833 285375282 370475239 231010332 916383157 2275577 942302865 947342030 996610237 673768486 781802171 920797411 972642269 894882481 955474574 224451330 426663155 967800052 993473701 265964004 287622022 78698547 931395770 334257527 736761413 230958157 234036680 206590947 832641553 256140182 789550644 767093377 964453101 850759574 911288554 216763148 677467470 953840182 971904919 79215642 347356275 667990677 764757272 996388932 998355856 585358499 830061726 394125034 487626332 46847216 188634545 323504302 505159789 812489888 912094417 607571389 723047615 215497756 738005304 613562769 930800413 839072709 998077639 899798596 947355289 394723849 841760873 512480601 958900749 77006600 616259747 461733723 545378609 382051712 899319039 442548700 522570505 548092752 636616027 843600830 893908294 846910502 860506924 772142626 866069553 475212429 851421701 430576891 749027141 407138870 438329619 3000890 809398736 853197906 899448351 130664713 792896935 300948238 419088685 600000293 605670052 529989038 864480170 960098503 984362760 323800569 639913516 817463359 936856926 972389578 992387967 293821371 461482675 84700250 648893832 937490721 954845142 58674888 629535500 97299918 127999745 673594740 878172569 630109506 776797629 393135959 879728664 5303729 568592105 780528679 890601371 929398509 982459385 603085914 941403785 769247881 906493741 529557278 619381698 102150223 567550994 841967568 896507007 565090266 974668485 775268846 821183834 692080957 789584079 525582625 727139576 53927525 714930046 888198225 958812827 414825935 881834370 333295311 370882621 470258387 572760428 829922560 915463919 806161631 835803909 358204681 849138525 256786926 805562689 723390123 758078943 1198705 366491834 546375708 783342406 81123452 361632910 608289971 776348620 80769742 748307436 692804497 813443188 347765690 543654970 120128233 261454891 108182039 693026683 719381123 904644433 798256719 898125684 97950398 807836847 659221432 682949692 786581956 902338515 732157569 903591403 643297167 905624535 517929031 536095846 809284874 925450882 61472962 399571825 690656170 829469622 156149854 477277947 717352665 929224575 969378493 971205289 772641014 971550491 489013446 697581719 879811432 900510875 279201279 749113999 817999376 986832279 114875691 277181772 470396775 988851362 907870923 988503448 466545080 814010635 635835101 823502833 255976842 568517537 578231546 815427724 824607911 835709607 876017511 936399382 692591805 755074955 988603116 994919924 68867870 392532343 948184019 971577190 202496320 697168674 829167668 921862301 85104663 585734944 726538271 918319499 550388553 966068655 98764515 560621886 740276766 905399337 166778062 318454236 886808274 951309361 911064727 930476976 473132351 845602376 191556499 333524510 833071988 915699696 7574695 784298019 122049593 193803516 698980991 887029684 200966687 605690500 167937652 740238629 915842125 957520678 573421742 647720306 261122978 443183529 579061823 728006922 471599308 553675728 801468071 943052727 135688814 294042771 601770061 667028498 740816559 991968712 546840883 573517489 668837612 780485245 495680374 883909982 628589607 803331663 263484601 913972438 927438751 929815907 557261640 735820960 432104052 574130828 501661689 569176248 127000809 392593314 867785131 993466245 636959744 949213440 152075137 347740456 684822857 946181378 28303880 772552683 528809182 954839035 536472411 708089096 622843082 891594868 843312341 975330892 619376026 906357454 646235245 798703860 762216626 976692904 460459856 837361819 815013512 876065668 123762116 219341271 76495700 268978900 65951627 721104787 95251570 482173284 232000788 615140619 367020907 793425915 144655047 156247494 855126619 904576262 456484759 981123972 519133164 869503964 918733687 973815552 523213731 960715979 642370041 870839004 725888627 961997070 988462607 995851406 373457236 634572303 376829509 464205071 209735621 256631573 807237786 941155161 14688360 255505390 877680181 891537532 222038101 427275183 333404145 465725718 932707416 991096012 778669129 783030673 771224431 772903021 934342760 997728046 859109374 995315454 600107785 616441515 393458895 432843942 966363074 971265139 520274727 551798597 366556457 872285994 519361678 654833232 5588554 854996433 955151420 975645930 280316069 658746388 980536300 986936638 783981940 806911194 568181452 631284502 222335246 757009500 824391480 909004435 263413629 804909338 560224509 634331351 713141317 906451871 795901747 812354578 524426479 954183899 839369377 874333056 504417708 564300966 871579324 934308185 573219135 644315755 588092381 964065084 860850744 890021976 861837518 953682144 967736305 996139110 710056937 725230944 321952037 428792579 712945046 970844853 473427610 660018391 737713951 916092971 468909274 736688160 509167545 854046573 864256559 952490684 23778945 599758901 529832709 779831644 142892610 772455849 43591960 660676510 792012842 940170332 790010210 859794287 362777164 562469243 695583573 785267733 145540813 779179325 273935565 701135087 372980504 491492518 233925586 367355840 52132134 402709123 113562677 143447987 743958399 769418654 989088401 999549223 241567010 992712344 948831629 954545075 544493234 926071639 612296323 900775964 210739189 398399901 960944521 983724508 785611839 840880695 934676898 947794522 844777478 872316672 456070825 988386013 384382806 425162370 947009541 959903136 813704607 962039075 511392988 988113931 746140722 922379729 633256235 679488928 718137741 999875107 242904924 387922611 619821944 716012011 680985701 704475640 97565296 444048879 955065051 964214780 985366488 998061070 508579081 675560423 243966118 913498735 555305150 964759047 249499262 880086523 603439369 620032795 72224867 781985077 63778177 347279865 607370110 978204347 552451204 947198801 839640189 922390029 206831811 859079573 986377990 988901429 424358943 722728630 936253778 945662406 736619902 783256894 368880557 780753406 54532503 473429094 363399749 468155196 938603413 946443276 950934491 974493653 812470238 860619462 115886976 166816754 755938149 917645985 806707842 816189307 38871383 228969552 596386940 705447319 544404024 706386863 590642917 764984789 722496120 928612368 453322866 965965992 668655089 955269141 119014870 373355231 398284375 534015987 648409546 886271288 731585836 769744807 267780549 400925225 492495638 585683601 590801170 790857063 216015671 364347304 724872771 858611815 389014818 607486948 136005707 499221245 624365752 920218543 838921520 958439639 643732149 917806610 857039957 875726233 976524903 976782761 467914803 535362755 133375818 645829706 932250483 953224661 105698345 288752599 836343579 847908312 221148930 717225739 881157609 894770583 347368036 519650991 850339805 945020494 442660996 600646192 249055637 251765674 209549874 760816323 675084783 863909744 291034737 644363822 227870775 874905081 798912096 970222582 465954532 902037012 146607359 840631560 887419703 948662365 197588400 986642846 408813686 753608272 889429067 988673350 558372035 822831034 592833350 598359282 349258535 451485075 74042716 112106531 603775634 613128705 262122379 743303916 653727714 929054909 144246881 324032012 972563176 992554227 451949939 574251533 928926518 972579129 43028120 105684159 600048916 765417070 394310016 894934271 677073172 753932882 13421295 861301251 939158718 955846208 779716966 907883172 380157642 860711091 771805565 961158535 889418741 995192034 973387271 983315796 495126059 818366390 600793983 777002445 895444135 977668319 932922290 977103692 891911576 909107240 171741389 444275431 696494900 989591583 730363403 980966619 363617133 732419574 796659845 987417893 50622827 574717064 253068169 337381343 985956406 990915992 66668602 563914077 539744593 988777203 245891552 925823714 48426946 821448527 216223376 285806205 691534493 832256039 876795155 882933567 668942894 759033600 830051068 946791869 48196199 438235741 839908414 847048762 208599071 903299593 98555809 785303316 273203131 399025370 495191156 528053611 259474146 497765924 173392967 967950850 326828404 491844715 358072663 687722146 951347758 989388193 365796311 775925855 395354836 600972357 4390980 267445579 684311060 905523816 462104580 654859927 439275000 673214933 442056757 726328453 931778237 935467217 357442090 683706819 686643119 981268411 329930534 375266850 719169512 760708362 133567824 428997995 329275685 729435351 765875858 817777039 54509993 712277105 101620075 693787618 859057578 887054302 788979328 931125958 738041586 873969728 130845569 488532028 876141056 949777864 688812264 868902504 503061849 569848278 210884192 801814508 194903564 429387967 177713293 615210086 818994992 989928876 915088156 974328327 963035866 991930298 365341699 842118628 687867890 764018453 192928742 319960598 148792929 411471047 190626955 433356718 438517859 700733953 231278934 943928661 955128219 978548055 107624711 767222950 446889974 733082211 178256134 396135192 102549407 235227386 350145264 810427002 55768698 766040247 904087430 945049306 818293795 910407565 8679485 575268840 635970899 719908066 993513927 998647625 144981988 785372885 873565063 953817550 14370192 387992554 669909000 887293052 767261063 859317400 133528388 276276666 636825356 916987990 768123421 931463042 891184468 962346260 250899774 678745271 521130971 673986457 463487411 939741871 332268181 519742002 712535301 769993151 717872050 769438714 339113481 999315276 642127988 872263170 777945097 876633951 33389556 393571621 203521879 485097111 419617571 695085154 308414092 764637178 184492885 596987782 81918426 503888368 94889527 607994971 827307756 835737637 211833343 534512355 654934225 909564227 929537352 932311850 96984575 387530958 766805730 985760156 284154417 933022305 256595476 750013321 855313378 905758087 167957256 506117070 107528953 401529177 877149447 969022473 252503447 969335734 93242990 961828046 911721859 982952055 290117826 857018164 945889860 969055642 337031188 466222891 265648141 678058718 301248639 610921173 382710010 703791027 131594719 390599332 639696462 853258200 428341918 486728824 87662905 120694911 836355672 909373433 691635134 963123975 283785140 748439793 219002852 529874653 858941482 859537876 175196928 808070752 733758779 867453265 321073459 601039497 712781326 827498063 292492436 358182630 341257976 568535094 749023492 898334193 900404166 963231974 724728329 786372557 605302553 639647438 130749902 401747408 913158356 967859913 750722656 759618077 486667703 683822325 196527643 762819813 600757253 878462933 363253817 854806908 427097517 592102955 343688640 843306835 266970491 518208035 442746788 492810643 520105232 704175554 895808368 933351520 283031344 740444117 727664564 783131756 342735426 709341240 223479290 696040520 907878328 908997588 210646065 580539269 202050393 984073567 957001115 992143032 835004247 971599024 614777186 659456972 63957520 890002344 971158735 988793914 569117956 897860669 392724475 540396080 486859799 683526715 944942052 982471196 663230048 679997941 127695577 902973811 37337071 108385868 764652342 941408342 3250374 412019279 796047806 840124395 602393778 879621775 405309249 766612309 805365281 965711477 118565257 803181778 781947720 992385267 989997078 998224495 490079421 680902284 49765318 463501654 163215010 680153369 871244896 983765316 334738844 855957721 664392628 887922642 410345649 857836928 526669737 948985181 748135464 834365474 955937331 996726893 606424309 819609896 436546649 552434338 49380589 379464047 814932371 918207035 397433644 806323848 363327305 510474978 255400198 656052924 938496009 963835617 150785079 923313748 764704802 908170394 490164270 672215769 664513467 738256043 469361797 995439008 246240061 309502400 707947449 953036034 15318043 948458353 993529173 993838532 564258390 805823816 867650384 911784436 918654392 999221275 214370998 269843377 974029944 979584144 193941547 301452921 493810369 955107130 817869168 877438147 16597434 679384871 117511352 563798022 128757427 203998738 371321655 942569725 944699237 968921177 333169337 425686672 860747112 947943835 713305961 870042849 916574821 952442066 216005247 942689631 414172696 818751287 237463638 865884338 850598599 977082343 46467429 616656806 911983795 931018787 311381191 456258691 345039063 868449591 899200908 910430744 16774140 266821967 8671969 121813529 420752130 821032992 272077018 700640344 532310159 699195630 728656559 849841529 413097446 905569355 732310776 853918947 569189238 918078983 298840405 365468780 237755692 570666818 608653628 670216535 664273084 894080495 924283952 929076829 713453078 892286186 683556916 696657058 237427415 930819004 572328012 706275445 110094401 839459105 239214292 964367248 800547857 924189542 310201545 658483006 861384285 980238789 562551547 821262749 694029516 978812806 281280392 775261233 531975562 813298575 196679421 921525716 771966078 828597848 956197214 963064358 322601407 426938442 378827538 712756691 356500881 757967249 250149276 261444583 236703020 905961330 813190050 959981574 55748546 517653806 610826100 882414009 441099505 686100241 529106630 916140824 65381561 90824631 389037518 903773726 517255792 705524179 677512118 924368275 381332994 463008362 312994221 563052342 699312027 872442665 159176010 801840399 39279569 112688618 567554771 677445193 924840848 936779389 195000829 554221093 664744792 993848105 35974788 800696569 749194556 953418643 938723574 990685348 963631823 973431030 104579569 926392472 412382394 446900628 883019184 915754441 982928555 986457264 564333836 797539152 85828220 367851153 932468450 971554328 293558436 963426838 717058036 969936586 75563976 948213408 705311348 839018561 279765937 624353252 505027063 572831113 621990050 658124096 503021802 686943468 456411880 909392589 41534691 506112769 296037860 589362257 991624310 993072273 826829413 969760762 14861735 308355078 524973086 860821936 655897217 803605497 217831080 400771407 621350930 938479771 482247251 808805578 43965393 555146427 126483503 417573677 69138428 305080080 22374637 556877624 109547260 866017986 916265025 963533718 98769907 483864440 971075428 988715848 215536081 264315518 410301504 847921636 53084487 961524294 553246846 972915124 524603605 603709546 568698680 604227976 36873255 705504424 102787326 568471917 786477467 900333842 481175164 688687366 137720525 254441816 322701262 854402741 889544847 985017892 682473872 819376453 546291315 987967134 428013041 866298711 225822510 312137008 768471888 965434721 95262285 301371021 942422183 944358069 71230846 594712303 391462834 961887205 663314641 809285571 318247039 447489506 582073464 665112428 662519192 886621731 862154096 884871353 149617956 207508611 559113365 640630212 128820156 898988990 654545495 891115268 904851350 974759406 328645038 554360296 841025411 924453613 269870433 304931711 185029292 940621156 237560964 335821240 734198293 825752001 787571216 799413846 683526617 943673028 731516629 948348106 210613383 532284829 483229688 968519556 175145562 996054547 921017052 963034449 972541094 988695862 35834565 207736975 350523893 983930646 69431121 980877344 600011767 982106913 400047085 603868870 424410389 722914061 86394753 846983948 743281286 967882453 127128210 295456206 360977889 367459585 111750417 586841409 283683780 842072163 114830792 787884350 531050817 609048394 693561900 834443413 949467023 966096532 91524144 137227761 60665999 232988340 973143514 981015008 441961211 750748819 310052602 893133722 894508772 912411867 306107931 651171299 790981691 792552690 789045717 819420641 122037995 926819496 31377309 638624262 616658920 811826524 631025729 631831278 965497360 982713443 407997114 904843947 182282064 443447218 207079125 628088833 623429190 935490546 444525422 445646190 332166457 447799014 503036441 841201056 946692981 963424099 492663486 606379600 7337422 450127367 964498490 972736588 265865719 994230717 106428558 704632055 370269213 474940382 784344517 879855303 812056816 964320958 326438241 974018533 172845620 411729451 737621510 783768152 761656513 783543244 541385590 985762455 600691329 795265319 149318288 948022852 84552656 364819402 644074404 678724634 381268541 618869879 908414915 998584123 246867523 744784060 414722245 895014701 273196310 906469861 276925475 902825321 153302059 612499206 598301686 961385288 449235564 869493255 461082409 997770410 960784272 981680715 258544547 271239586 896169072 967392806 155118559 229204378 571735386 630131823 29682824 720060267 843148051 943588866 798193538 841451572 914676522 918770895 784838031 929900977 768214735 946271874 156357460 591406879 558496304 946796609 16553043 553465038 796963899 919208802 424986406 746963806 138164358 489607900 204831119 837077257 136712119 728606412 560630217 828296561 870248260 985266267 730279466 924561924 712210187 875375905 261884186 613495074 624767716 947251479 57420208 201740891 864478448 906725562 970877083 975041977 215526965 229867356 598319565 978556088 256632385 947195814 760473539 774536912 562499409 804082001 582859086 921269363 642833587 885319895 895180698 991965831 484225652 710138642 397753182 803926892 688647210 987598645 463029404 646409033 119899148 617414471 912473004 964604904 386976414 978553228 586800667 590887624 184167505 328512330 916107857 942335542 65607274 99902150 26368858 154070244 271167381 317740342 647977477 802737404 483523468 870573057 223284437 715011409 623528247 688379272 234524674 832409648 431915146 667381299 17429843 508882900 947068044 990042094 727473095 844172677 695174826 910599461 431907335 896971471 862205812 983265599 39797114 149061625 60910298 819589853 397483702 510925296 98555845 514560733 556091445 960952440 555451970 851159483 818638810 965827388 284163716 808493479 395372173 753351551 56868219 451761548 60610013 94325546 743988870 802739788 586580221 830818028 966344414 990318925 558379029 845670084 186723931 812111371 639852486 702203909 563631925 600090892 913143116 999783462 205167410 373161710 746368534 797032317 300538897 889276096 440871033 822432566 553976799 928443229 166383428 221410080 784338104 799127672 324707023 670783590 738940548 955660433 667076888 947092115 206214039 324298201 647393146 878814965 496191211 618374284 710900990 989154711 349391938 496190088 716503477 842473239 218465703 852801907 18835887 777883978 92539818 525245360 688090791 944952723 640492497 875780853 202625267 359223278 699075097 892327968 789145679 956941822 183081388 395383103 35048506 643909579 808355654 887167552 576971461 612105167 248818947 703203689 89915140 609929061 216681273 482515146 212703938 695221874 316873120 378404102 437720148 781206314 659823877 869495521 991670638 999490358 88477353 691790731 406519692 639126923 398212989 874105114 81163200 137290703 84491119 113543097 483690625 857971350 91171365 603289108 916513723 945181329 911889795 979017632 776926445 915164974 96142770 810856885 871076319 946490122 149952426 743087461 597206600 954076112 425348663 494421550 185418541 886087891 183801736 635271676 673224740 957950039 262514232 539651698 69703333 877643295 218436248 880248947 754069666 826834367 875210181 933812382 858459546 998782518 442593728 477857024 685189957 788446377 579404208 801291933 441494935 619091196 503847187 927110165 146194548 263575653 986242061 991733724 80012124 83124411 38205962 487444586 517760135 646572949 14275688 96960695 171706551 938750537 469729050 759271590 687144207 708986212 58193840 782022483 739479503 837799973 107258604 743286677 298579390 960219762 521641381 885335628 89453027 952679056 247573162 999938075 476478804 848805635 865342066 903201824 931150177 986076977 724802292 745145298 227242422 614588037 214328967 951328828 491479305 856900409 881908982 966770588 743263342 873275294 445816264 989671320 843994300 969089402 373604784 860365541 653843349 702093127 99528125 232515496 116365802 706830244 11664901 464130427 223761874 505834609 902240182 999032350 250140338 990109419 771789964 908128605 661437553 971663417 855686797 874657504 530503177 710907737 393322547 619524927 508206705 802495244 459250141 556813142 700626515 915666396 867789964 984878482 261731246 297286362 235766451 288078599 748020632 902018722 55300049 928226705 558147020 644553090 73830241 611904294 164617019 828446150 23540749 736112524 5325694 961310948 159328095 924565258 505871165 704427599 710246086 805419853 998906978 999898220 126674447 889871064 676683369 785459330 425943262 623089585 955953590 973364964 786158476 791050419 162906380 542527783 19368215 589739953 899320960 996710822 830182501 934875610 978729023 985636819 32300492 601048548 313361880 510255504 337403386 720708488 110807078 245794506 112964298 290298199 90564773 452109931 583694244 741107929 241245967 922580294 850949946 918461140 523807951 974608806 933178649 948166617 512655212 928769425 60471805 149985238 77918368 707856727 836649517 935203957 920553712 971425367 704605308 765279624 101937587 120621379 260110126 509428334 841593042 912361075 506919619 555759323 600034469 822499485 388560080 566862858 646530213 981493867 204455151 798130652 49856522 695347079 605270083 841133063 608587536 768293864 381167299 940227351 507976678 852737371 5395666 307847745 694595460 945109994 461350658 585953723 207174785 872347274 874926105 878866333 143185106 400416992 823095823 941913920 931891764 996397593 773405976 952827590 560376254 579375736 883104730 883994528 573833110 889791558 588700753 629829231 188206216 488398923 150251483 171643176 537018754 891620905 772954607 774933480 823796425 860807323 869116785 993376916 371890971 586573032 25788510 776951790 5864121 309826615 917197316 951886799 957963948 973950458 100411816 151089790 891027498 968034788 716585849 865513540 877748978 955564556 466358947 557568836 502865224 805336680 808276683 906856854 729062788 893756401 801567200 973462360 777594497 823565670 774263019 857378427 510575453 797720582 360700499 840034761 459639792 802850553 575113956 738734797 109080050 346705830 119511913 366951307 950019749 995975934 361994088 892857183 232927397 888530607 58015458 278550938 277586400 656811659 255805910 831561610 264608500 574853649 10173264 132999106 550051333 665424556 279428565 883180335 746556983 893579368 632225451 658482947 688589558 783545626 252597883 386888457 599331962 777446879 600862614 973366316 151495797 750563985 21570947 406807444 816793600 873170471 194836855 401041379 959127673 979356015 678684202 870420163 69968488 714467942 579855838 991593828 927794147 953216714 883595481 989711195 332370837 563926930 925581564 987843337 136386953 227871855 563537082 572000406 176136739 727366048 799684816 944997665 561935681 990013629 637030485 939133507 207805906 858298916 75276511 165296147 820082692 836576082 585639588 728548030 215941675 778652708 875044964 950684356 396436318 598470568 838076986 925126807 190082697 596058331 120492115 122973408 465053795 721018561 423777144 974548054 446558589 653189583 138858946 603979035 204933853 285778213 391675961 883969281 367031576 581377144 893595920 946060974 141750215 790626797 55933581 657139204 959021159 993365436 664303506 904821548 241610808 276267739 197837877 881908957 655936935 682317501 584057470 689001054 371789523 399260559 439698895 969251345 504429915 563265867 314273662 741506110 362341090 793194021 671640891 846548077 837226021 844580083 245360356 609061517 656805626 965999907 329657644 960706752 593960315 943045091 531759143 560021498 367743822 691530555 316157966 840048737 710650865 733162353 33950751 589706689 652649121 680977282 574309896 996398125 894308771 931202907 417565419 728743935 307844481 610086401 684565827 881508332 857419350 976058914 955885604 968255715 488351640 860717338 873422961 965847634 302274781 954450174 899668518 962963428 335696015 779764828 389313201 587173972 736525715 772476524 583276 378625858 103671775 540266927 474294724 531928801 564921525 596877812 51533358 170690939 10766035 229415207 991877545 995777817 680190497 906411824 142192088 664732547 279041711 383527854 331502163 450439615 215116970 287493325 856456016 991968391 735063608 948746206 130142970 162135519 16251137 510755349 959443567 986464480 736161326 890249583 269174378 463647349 37807327 627128911 668636646 784363214 248466293 335222086 736039064 830243374 610932040 649926175 982147211 983655143 362675806 840074688 149358779 227753153 737489114 868263456 480156357 704267768 965808543 982632669 387010574 896629697 803603746 960166845 313596278 395850430 375535258 596349153 476886365 554195794 631266191 954062468 787727483 912904556 740013786 921371723 847111736 956370064 640251970 902356022 907207924 967400101 23914152 790528058 319989956 608779172 186569605 453810598 895109209 995115171 906475543 956393771 510852355 599828611 628592978 663987719 988821527 998224892 427460353 880973286 114974166 425128424 60565879 400626085 347659520 908113126 914532086 984597523 192266466 401952803 776963408 976043071 875648792 957492741 631958804 632494579 836395184 905488159 905862272 981792238 566699784 953621775 143694324 738771568 449308359 935216512 68359322 82723824 167693703 180426986 862921664 879470164 726963010 840911019 66065583 200820922 25887308 978303969 136647600 554399715 885874980 966628376 895393828 918263196 161296700 407086509 886754972 991323144 993114115 993876873 644942476 760118499 484265944 725438553 538546494 622118673 674177515 965088131 210963470 866726158 256605365 779836699 248066795 358620941 560877238 976952774 234511449 315293928 837691178 863842846 881233183 923355736 620970455 948205426 717680013 785667891 309800732 834486025 610556229 867029931 374361551 854261366 798975522 846991877 13021336 735408257 859856876 894976762 139518998 166039117 552676858 945625733 927937001 956437377 484329876 725746353 464718265 484890793 165079335 452988267 222606568 798312330 377129960 632178814 874106745 999648864 412902561 430998263 697855161 977780271 130446054 679348253 724652470 752388825 95630156 97651047 468316854 560829921 688425933 838342291 12075559 722190330 667951948 975962630 664121403 689817244 909480213 960046884 921553823 959770058 606487805 968542158 408551812 806152092 859031938 922799204 888955870 892988392 192356928 281940210 336719926 348360594 307140991 819169672 4020823 724178097 538069525 677247104 93084178 194167659 99161287 971700666 375592448 850264984 570704145 907882040 993657463 999934198 921358837 947280269 818611808 870339957 978122005 995585880 184951330 299491594 414207892 871195387 446688167 625290136 27157965 879789155 301499493 512202424 814659908 863189970 329283586 350714887 532329691 549226729 409473978 875726619 72704000 865635406 468093695 714855161 851143007 988167606 614216879 948974583 107363057 622966206 100888303 558562756 709644983 964826796 956890436 990473902 757465799 877071726 652023185 770111547 160272994 205184150 631433354 859730260 813896887 861786099 829647886 961031964 692074818 884564720 353764538 555232763 77118911 781687405 510743593 817288320 943378235 991649945 214865435 573112658 127907612 158710097 136500491 779388880 121629812 217055023 994505285 998925142 640570735 735671622 789520028 915622190 143925841 893277609 328421554 795075554 965041789 970939583 808748854 853304455 89920078 676840302 694155963 967221035 596799725 826193238 566316559 757804766 471298336 871277160 331882960 932339882 78929106 468555354 625401544 955729431 391363579 591762158 584465596 991332122 933125485 957319496 919737027 965525978 732069780 818655636 74699607 519587193 579745989 699764256 319996054 614100573 477493993 629311657 192638007 916593091 789590219 930029721 362254025 643570858 15313604 365205606 524399653 818891838 34974229 913665582 472056206 676768049 295765548 563889986 359103576 396512124 10680089 408390988 305720664 332345134 445360710 929476455 265221 121748127 987301866 992900029 202177333 956135887 486216649 865823499 681705408 764153320 537203055 995205262 386592366 602664541 291258023 786212214 227630621 731480934 883001229 983316149 967479475 975684000 880895125 951386718 767814113 792825040 250314889 628075045 918869117 974270336 661088934 878477816 675653055 951441411 63214881 712335253 327052883 778824592 899243095 965217037 329976894 996590125 877832932 971159644 693092934 838000487 531968103 953501673 398643106 651664346 818937093 878703605 291995739 352792569 12303948 596502643 752749391 798552906 139950206 834017470 997633463 998684744 34297345 711552445 445624563 936293299 736474520 774511779 12566147 741415882 889758023 954027447 403112474 959659017 237424529 898094322 944938460 977378577 391741682 958434386 829120675 927372590 714081309 815128378 697619056 989713513 905254871 940417808 622400634 900181290 598222027 937619917 385593276 955485442 384353106 566028678 890135485 944237376 56527036 113051995 402294345 932277268 723457440 814491332 579515008 697275421 727665432 758369301 511575516 694973999 903774721 922002587 573065159 983110404 106379733 131073305 904871774 921740985 535614680 885844606 254833865 646166701 622492415 930570599 635618043 940910481 928300832 938165776 231499736 415048134 227066357 331734351 183311662 937813078 925332821 956691266 176886996 926638560 701874396 719519026 661058262 829494107 341186662 457701456 178825980 207617109 136874196 897709591 864703519 933543302 259048980 421576077 759493681 762668732 533945259 752839192 250391014 588312421 92695047 677008878 375155121 617337159 375848356 665616972 356832868 737148287 624179042 699709564 586832149 718628313 853905641 994001557 653122290 864892849 302075240 741457919 690801058 981435015 331688850 799461271 826894691 982911978 800677919 942477433 55281246 544950097 812098724 845626457 624233163 832483357 340838564 609941987 736959363 904172624 110760988 985538898 611247026 748670175 378046976 686466430 678727992 689071488 44214941 940692347 819924256 967402239 931281843 952675023 951185479 961460952 377868870 871536415 265534119 428736638 578166031 690764755 305100568 532940809 364623763 948661450 765053691 960301453 730602452 940428038 353982947 427666983 748441248 778520045 490861218 671271156 556354258 990582835 685676064 852365968 993020864 993748691 766771241 891525516 330835951 361642191 953336222 956575968 924685529 969926377 978884249 979622065 73806374 592893520 412028048 783960240 883505254 949816216 545173857 650401324 637417395 999816919 602593877 989927761 944530791 955587222 201655319 727594296 857393315 964899722 804262046 819311184 654568433 890423847 364779279 711694115 55555068 309492936 741804706 931850132 116579219 585729976 847210068 912323808 292285507 883275896 486910776 503677742 224580665 358992444 297203692 915045354 171297565 912158389 202259484 847811152 3540084 532688288 736433051 780729633 645394696 919052008 767224701 892746024 832809059 833461596 369797326 482941696 66523114 775488506 165054071 591813524 648212135 930515102 578064971 734689398 401846965 986917265 120499977 580515567 892253651 928385559 215808257 689721504 477103649 689488631 797634529 971160138 313732233 369711209 316014688 899964201 252933637 780906855 20450289 979010213 649105008 747350939 145551280 819385929 946204659 989604713 657376934 693186500 572579404 880194739 407012641 761973580 667423473 839364707 532825299 633154647 729637374 824407335 326764798 507861802 206475020 476195329 464955351 628986531 195765379 680768884 851163972 917641910 738282788 872608380 1470506 450229558 839311410 848669390 488784045 867365224 705732607 877726075 284240657 421129294 93836756 433548420 610736368 878760974 273804519 621668796 693228165 850237336 513312361 839534010 348579574 495632268 589015870 960779477 837643966 956568543 502951294 749939355 546149016 657163179 964871425 977246861 89059849 806439813 970730408 982674957 642723583 905805475 777291673 988678392 148943199 666359810 891782817 916976479 922821782 975375247 443834626 557609389 836016046 924396180 294463429 739663301 732115988 885223396 807831708 860813587 497286634 736666004 331332069 927516603 425242444 595211454 267434969 661554919 366721031 937351572 808717134 923299831 172926341 331170169 353026529 957744494 441968481 722007064 770266291 884491983 756291149 924847245 664815520 684433290 993956314 994738915 181018860 590978955 188957225 547826039 36838836 265073948 479029428 837063652 81874736 397432124 183222683 955844009 275900535 886780737 884846858 980152537 850552550 997130829 400650763 887571155 446638345 727590975 89795760 714002758 374020902 834670561 409181004 906345609 159017234 783710127 100319330 426353283 429188170 904752379 230865978 310687058 570734760 771833097 41839496 405164318 141676384 380488831 170688532 833917793 783666456 990254792 308744018 391398013 646867940 900501950 950065646 959456603 747879450 943569247 491358252 806967978 920421322 988337936 741943891 966854194 513045026 983670423 556320445 561966077 412450063 948109101 877260810 980102490 76917879 314817810 771051588 842798255 237000427 694640764 405805065 956547476 449467493 589390599 875630543 931070478 386209958 875790940 869604426 890636199 546094434 886570977 113409355 350765056 588937073 605979809 802639419 955883686 960494552 993287243 898923225 993090785 958294699 963947116 161821779 542067909 370302624 910602053 100691499 628013592 494655423 719027086 91983183 842768002 51477733 565966307 659334710 929499201 923253938 979229390 431057043 991855915 904708446 990220067 305896926 937399054 359976837 900620278 151779502 793959486 878463602 980046731 60287075 400983132 4387037 9333532 370508110 862093137 664551616 685256197 896560188 900519542 436503749 509244128 683712266 721700161 490469566 727786063 353898477 771723925 116044151 675470845 774095625 968917300 647882264 881418632 583747394 974777229 619436005 935259978 962083808 989716425 94970433 153433301 498380150 798640549 665103431 785570408 721860512 797553671 160457853 845924143 795153598 936901332 43861862 220781669 597297384 654464597 966518260 969094244 860430822 929572448 941483002 985618100 979566420 995930735 507147042 906998851 550262357 625253787 385309452 445286466 271375435 696087279 870322194 886011193 507295892 892139980 163305207 823236323 352227962 581446322 958668890 969488565 413253486 697499805 435728467 735431424 889548048 990092487 136138706 574340117 436952108 769557856 879572271 887465607 211062021 723582322 573723257 778341452 855211328 963964373 647989269 926961833 467225614 590951472 345497870 463358101 510308327 826963723 4664089 146041420 484448729 802425049 193521377 223058509 746431935 802380584 464226448 584152221 878320007 982794917 605902181 825949694 177984816 275332793 417037094 917350747 447271055 726116838 595173059 890450782 377349896 910218843 896014925 915089045 182343469 259655843 532119912 688139315 145269352 234952370 222152194 827478635 724598024 769754299 518865660 995949397 511035660 522083424 779694303 792046107 304481024 344599724 788673257 840332064 609071887 734564247 154960404 980920468 828356680 888394288 234861914 417022527 8796193 537052231 722743441 770183540 998664101 999520512 714652657 957050407 206141947 501365329 841038240 858401393 65216364 766108303 290282981 335072372 733823049 809616156 106319739 390874619 79529568 684356655 904281436 917541390 94400449 388840064 725126110 941548364 913848713 986900492 719169043 991073374 991090275 991226537 171249006 643026358 863772818 922077766 191551108 401142766 640289618 686781676 255090120 291181218 130344468 338165823 939389597 978658545 87806238 857444931 336229026 451402790 916481903 952861028 15946840 901711385 49725998 210685717 823170982 840713101 198505636 673020779 470277566 514696638 331720080 517726930 499657990 511190873 960352778 985706583 908364235 940689055 923958798 979287615 72568301 633546797 899002517 985364766 391642285 449177152 936799076 948155992 409012124 863635697 440847974 834914450 328815882 363404144 670106575 886966319 345412427 691193064 356249702 761114107 315462786 486465875 384778015 473912072 332901489 555866852 916181787 926033572 767720298 998196106 321191402 737572057 841737250 927942296 44116768 764673400 325716371 969429643 813310386 955382420 993900472 999442219 532087312 670066609 875753919 923940205 222927072 526316458 6645463 497463417 433205597 905390230 707085005 797357030 637974476 973917545 500332730 601302553 303272431 792713309 701290626 856508664 767285203 997517828 327941943 902337212 431054272 931194569 80943664 590279658 937027283 995610580 537646226 859438034 977911723 994326778 454403700 653137766 426688511 617228439 21357031 312609702 989989256 999609788 745891870 761535665 373831246 395721262 971750726 974622948 873903691 903523365 364280416 646606293 724108987 789319197 475080433 665396352 994549341 996359964 114898830 437233436 789820194 861817074 91320717 379414055 269204495 346503678 946435947 995101033 448869851 572012913 130980957 698773195 695052075 812961376 212014219 436638066 846234246 988933707 153881937 273529633 767218492 780588466 69133100 691884621 497569306 721068975 10640727 397533246 891502539 927649370 24142007 237940734 894736278 904644797 122367000 409892655 324826245 705641367 176400482 552052063 966246654 999346658 370016477 911823277 685592212 936360633 256874866 282571852 153371425 798930290 938887972 995070543 857380396 900656601 936258072 984728282 786401490 921701773 645336212 897332717 290082344 555727349 720121834 970151482 895862293 899271880 320637521 647981741 825774888 933577543 182517994 491142266 967035340 987122153 801396738 974289900 488871131 595833781 306645826 499250024 960796372 994327859 648199157 917033800 168954411 387198230 190854276 384527827 367216451 384146335 102677475 335132756 881165916 904588222 43727945 449701566 706074412 767951818 993093710 993918537 928122511 957466870 123890790 421209125 681645143 813828123 185776354 527047528 479431193 989291182 283736770 641161295 750788982 922450720 753166265 985515946 913381105 987102382 407781889 561716167 945002919 998618598 44481634 315280247 859385416 956572081 220236642 875638067 995761146 998991514 294268194 621448231 922507857 938525079 255883185 969207799 637221581 700255842 369988820 496872092 312879860 773073887 416626297 774218453 113812819 861550123 476744162 964309543 626012865 967754430 977962404 993361502 726184220 810672245 186032372 976589629 308026905 939144664 640049613 682795099 743089438 864816591 204796610 383615746 766215291 789585267 789940786 956837150 21784644 366272072 449571379 541892774 908732781 967827261 361593493 401487502 134739499 305700463 584053545 892717479 512043313 659865915 533720370 537826777 156724636 500661020 446840921 581091346 182416144 543101036 292175345 782226278 130824845 159990794 921078592 958963333 761266921 776544816 548443170 968060344 387002319 922653176 856205426 894030533 815703887 822734985 887030711 997461061 168575950 387144664 501967446 502497776 68518684 789395933 487070380 681300910 683225407 785556430 806975611 926928747 642289081 826871311 578659660 635910882 328499593 544456892 63441342 888395202 939685664 945308821 176006767 299605614 929238986 986056315 472902022 576964478 559345965 958740019 492984112 664118339 661676093 923363046 437288922 887793100 93569863 516675274 213583449 355598370 465946625 725732490 152046343 916801657 259599460 711515524 532086521 806820351 10919118 280283003 560888621 843532873 696472262 915284086 622152726 943320927 67256815 938381740 395198574 708361346 521722034 904368082 400989619 827664000 711821845 891608560 47388432 892666064 600425835 909738493 102243333 590790886 239205958 765420430 469915884 783215118 880115226 990642812 754887027 902850702 281125802 479029356 835737449 889377511 994793353 999301516 958286234 961406124 291369303 415492653 997744176 999345523 332697949 623672506 802407007 824455418 286157933 751273540 343527265 774238111 754271728 982726572 534650679 653445891 996701641 997239668 318419303 908354691 922061148 934117765 868426515 973521794 227845830 871266103 663817195 958865316 95180481 971837890 619901650 844538371 559319254 621334305 228352225 475324136 99730406 952660705 297169375 559910500 559220244 595227365 418773433 566297476 715754643 972412765 434369477 767294486 664776611 913485545 39267010 725448661 795730437 986040299 586239922 986809346 821472349 909787564 906271151 943585416 672080337 901348892 796047561 925504326 113049409 820447435 248864344 535703423 659459870 796742167 73905819 130702913 819985889 902767964 776739438 946593633 587788057 728148961 967929558 998682296 665200585 974412041 307899440 389352544 837320032 996625333 891331297 996272772 249680425 795644132 545148867 936450656 789678963 882373122 286352462 455596620 519998835 753090346 440314594 765783593 356976193 490409426 157945437 280189973 663754144 790351685 380638165 865894483 387855367 642959456 852066229 863052216 768588795 888894626 424796272 547294135 864612172 914471242 362399525 939983830 749275154 958752319 854790446 921904881 861744797 964217243 5534548 585487285 510904120 707974716 317275589 630574524 184910137 252163459 221529366 919311845 779426917 797351809 666963696 930099947 861434315 876135965 749391863 761689734 659696898 858705910 426904032 935393663 741462336 976270383 687024820 903187078 59402946 487931028 99788792 634788389 284080331 736525384 638319510 986214225 832841883 873794933 834007754 869014144 779633838 875938678 88598382 469277211 264260769 475043756 8276660 962282651 904479082 982468954 261146630 409210087 765248531 986572707 356447632 395042097 246936482 841844233 739210191 818840582 482724254 771841738 251476375 949278089 503398211 681449836 533240687 803956797 121816760 574185622 987886237 991608359 88169503 605887587 588920461 731321393 484087096 638935718 946123777 982622914 66555488 647266268 253125470 933030092 603692378 935668537 326389802 411405322 729136322 774519884 161315156 235007847 224114387 863820673 14959055 509701265 705129600 935075861 690236869 965204138 344370355 870119417 629252346 952987692 622445596 676438790 296567578 999765630 285249354 669517633 58245965 848845937 959777173 990359998 153603625 926250765 436690420 643628522 452539369 892863316 409790454 970071772 743106851 859817270 599793508 863543826 68695165 210091315 305743644 825609492 623078940 897593316 282496193 675731927 660099865 782252645 853093731 970562711 261806545 913547517 815145879 969844299 346958802 587712776 745768248 761103155 845759427 907650754 839106635 972829305 766352364 931068667 372509591 456584464 330187216 695725170 332073267 988664764 935857808 952218971 410162356 604556889 138909797 964516652 307816249 355178118 276166683 633408066 858379319 918512196 563404803 938505437 27313235 483632753 62620768 285773370 797948438 951438338 39026652 240871266 798703777 857228840 584045581 722195255 714667182 952459277 202994538 394184562 551807934 652204728 43108753 385291170 711777944 875099183 314181854 820975424 334433964 813479851 685945814 824278494 892115904 987124693 895682263 968181568 332356544 597407198 169085425 468248299 274513028 362656398 783964089 856637243 748684737 765460879 416999949 639344670 990543070 992475957 463673161 776229955 738213574 826366740 247187663 756410835 952668223 989675925 767870159 987347937 313859286 493346276 202374494 485566048 693274814 868152086 762784296 834680364 983975239 984100159 534727689 676142742 444958179 662215017 515096996 897369959 178714279 587230164 557304308 673998893 387973369 435926396 26127901 592441123 285501414 521451389 705224655 966851018 159590647 639686089 447060541 917057922 503149711 856262782 576465093 982368310 763231282 884853517 814109315 833569818 745044735 993537364 692259972 826161151 989304930 995111576 325124935 791679098 820635045 956930108 774264138 907028261 589800660 830391377 578013876 636448473 861969519 893225006 838706801 913633739 102611448 210214758 632510109 682430033 904368568 968317530 155522238 485104769 802226874 930414103 373713506 414259630 581125477 782542535 476447397 920611636 768119075 814588316 732394275 895411135 924000727 965577609 388382533 453564658 273741871 936093333 235168012 506982461 753358074 775111048 936895362 999532180 813299900 896238536 248644359 573464133 538392504 789827041 333249832 555421919 384693783 756724577 921975545 957309603 692558494 712546373 142970714 420119994 537490977 612058448 437903727 876040820 546954786 673774470 464522214 665754791 119077060 962025284 132064481 522418295 362655041 824567938 532696122 884689578 432936471 583338191 670729326 844567285 171936552 905483013 443345148 444263889 347906351 975711135 25623734 136810344 708567845 835934968 679340682 960688258 926832277 949984584 915842125 969664866 655159295 990646978 909610710 962335305 956221128 995055890 738256690 841543357 182648506 298661365 625735332 804051334 842597944 880506405 925363316 929047200 782929663 967385960 133801556 152282981 636747266 768970816 246344611 991828070 17787456 308593115 32419281 878310638 752812417 862127437 402413195 552003893 284596407 964834431 773534453 931808970 266169683 272276574 886122829 989478801 673390057 954413359 678501119 689578092 630863745 727851385 857571081 892722534 261726567 641621468 31611795 641259505 171312389 772978561 412021534 960893582 208508036 754954594 867151660 878991110 957898384 965911876 745647314 846625004 401441403 784777048 193827477 861673989 706316138 912296357 8512850 343839898 655166548 797565995 886220207 906196520 863052198 986388871 134746389 510858051 557338267 634332821 923118864 936801074 257898004 634185679 201666279 980091512 424819851 795164357 162459255 257887918 220806861 527421276 734400482 877899164 188941578 209329583 8014975 897901905 896632120 898180723 782390893 821857497 492113769 838378309 289817743 852681073 241718755 581309693 283386348 659284281 94720206 312632936 599319085 804545253 162822394 794860926 177450129 204761735 870006942 895837989 589482796 674988025 739293012 815573691 726403665 960004611 165646845 318680586 598526841 778186450 160103677 325875669 857484765 863493389 816046871 818369254 923068145 984512758 873176166 990078546 502063208 837873725 622832952 695630335 254245896 725369227 563100526 677706982 519970881 583999854 44518380 193757064 904424704 930990049 436520391 518392122 565124242 658016336 565531357 825438610 857103141 952430595 293555408 863517361 383128892 731768890 455146072 792040131 778788822 827273673 106389439 736744732 888284744 900267506 457071104 667223654 771833161 849821043 370764956 970075083 639561173 716506955 856358584 996922464 684557411 881290096 686156924 782609194 395309702 395834876 587933145 763374403 471243645 604269633 682505550 960508947 456059797 902309692 687301239 847746123 632037508 636081790 605588800 706961278 973141490 983740201 341062547 661290535 616199838 661820333 75505808 657657869 225984655 232336845 984531032 984928546 765689774 800651931 463530030 764821617 836178616 979864785 204195994 263400270 47202110 223469906 278967300 642868218 584398612 664484497 109077306 847479615 186713185 652566146 100414087 108766895 490864315 557230929 628186011 689484128 522504380 539611637 392704352 472300085 244420700 911928700 464516250 834220372 634225196 976006648 511082897 788493311 396111174 810667133 543128753 616642712 301698896 401338272 553142497 573920459 903439453 996645401 475501861 762066076 983577121 994670818 505644491 825484937 943135544 998039779 860230291 924044422 284904304 726984531 129818290 910540958 410300346 638241426 77422676 932975754 975099365 982219350 31209736 480173781 173106644 910033332 961675385 971438988 606205201 708495638 129416799 371090546 22511267 348377990 204375274 722686334 824297969 919177073 317551834 972392729 628916269 735142284 541312584 657753227 371310205 894391755 240712051 463334822 725932780 838490783 271295764 375179442 881635566 975425422 499641113 647895628 771987850 835936014 921520224 932429191 186139371 813629720 401914988 932218598 427798714 808766241 247266916 855551473 949369950 953836886 590250184 631981513 23610192 915302164 658062587 865769917 125452675 245007169 1004479 311689123 390730583 920092088 131407583 699564670 8071766 38900982 101221881 940324098 577009999 794595146 395888758 694780579 686993703 943321422 307099243 452765433 84630061 643036466 792357466 817304238 254917352 427113621 822265431 941011966 478445434 486983551 971777368 988401369 118746337 418155588 140664857 508765354 637169989 883449140 470350101 589304193 563849780 979418836 63795924 226375452 86477670 352662176 172225687 892181206 541288946 779182453 391228015 672608378 204988623 413297480 389893877 514198405 938852290 982395415 637989471 666084088 565020532 903034783 534088045 934580265 595566689 874313042 500583229 608287076 154619796 528830201 651485741 809550943 558623595 790387976 152965876 669050371 17159637 67084195 29715330 33111305 334797440 387897845 7756302 851657074 746347511 927658225 963104398 965504634 153187290 651038849 479562225 687781070 530171709 548319574 640795250 711768445 676359768 929837112 541146998 959138838 129159220 850959220 628567863 890700511 130403899 800029536 876089334 901614920 575140645 930114481 154350331 366083456 134296320 679267559 360329752 425760673 144917265 533570043 305142247 767375284 533169719 564074990 707301967 962568429 509806169 669998363 301635077 329391409 181423691 738530988 556399586 903491452 270324819 404551403 629246924 989679233 233345703 445195913 54676615 252990821 986571784 996165557 791127877 802626216 897180444 912826663 971015208 999938461 414621127 845314489 302241690 919681557 865972700 911998707 203256835 345383780 482201196 489045790 213008123 863977066 94949476 789698476 10621621 612307400 269863430 459010673 324669430 481360463 181638930 890901953 214719296 892168303 43931961 121641967 916532153 932443045 223374859 231604127 316583408 549115406 199468532 209204062 680368113 914877815 476271037 981852753 492851311 913873770 293424423 477080625 710700936 860490891 651835364 924917109 485915770 689900531 675595030 761269354 218676355 890208043 35163360 134965295 703894652 791871304 406013383 563090155 650479315 838229561 950846700 950847487 63296149 986705021 927094543 992831993 117726726 950051857 717145911 723930584 68739658 890687649 392951839 879238198 751830408 910872481 580642506 867349624 148337576 638100326 359640568 528954702 498550165 678191050 828328848 965455227 252568004 661768192 593184867 858623091 305433679 734247885 795435633 955093173 964653397 973102734 413399085 556202049 532024314 668745023 285824466 286079143 290090794 303306676 908299516 943777381 99699484 694943753 490881884 628592801 282258550 412788359 541839520 984361674 379148620 644076588 836743372 996352657 712912255 753929946 29893717 707575784 321147798 550138601 142194946 809073620 147797019 543633151 962832318 988253568 9400384 759300273 143535824 667573702 59773680 608061789 498468063 605606993 462537053 706043074 274241787 577472465 558588051 991347839 644408386 930877824 523920947 587336396 875965108 988287063 484059847 880371270 440195795 735510826 88623645 988710747 776600715 828054327 974234020 976798703 791071088 912709797 866637239 938012149 595502961 656825183 12430878 35873176 864303584 938655630 704267343 931805109 688846589 757463139 625774396 637081293 235859879 872966895 226402968 842957335 961797864 986513071 401669392 630772527 833042311 893384298 650121936 698087220 804225977 847955749 633462531 715254849 503550681 602703790 308556783 868445416 748253145 930696604 147533103 601043549 334970206 900849855 904332614 916258575 853500339 890736487 332142323 756286136 882868712 911723103 597821227 794799308 848409953 907686165 196557619 321216636 161172680 300775745 303956609 972420799 132742340 400370608 239578074 460034663 686577736 999687477 634441403 916777067 879707707 977640238 506855106 790675910 328663991 781382520 341886468 571400478 477053249 803821219 208044304 968506352 137982855 274331715 46585527 713422639 145449576 738864629 605627432 737650272 678499412 987296930 434974578 749994828 769109691 913504767 537941574 761190576 19924659 600799181 636935121 841441642 187039029 211953557 580459126 804395013 65734310 356425520 322635861 361047129 949948699 981346653 554019826 613193136 552037007 624551478 586826708 994882006 656636409 782665936 311786415 878331082 378125640 943725155 361498506 964177604 236704736 334711677 967834457 999336589 754056331 885561223 638882671 891340425 654314718 676267569 78461622 682470245 579546066 765508344 66731487 581390558 651661019 857405626 128591130 603532294 350038930 717826590 719230251 996084594 908390306 963609184 555205332 842683458 775332659 978305054 973277853 990928686 345945978 520747501 490904419 699831723 686092888 817417880 164290191 775165698 407284392 552170574 451857383 489415990 756569594 784744256 467086245 869495477 657671867 810325945 421633660 898311325 885033615 959229742 718163850 805160649 473510892 643372626 794232504 819924408 295688397 645441533 274836590 980081195 345941055 693459883 808598591 926571683 322664288 362868889 520207900 581688336 7839683 755399606 683114468 742571310 964131986 975185427 570817903 580519631 354199254 752956018 736074883 829528409 17545145 686669041 891067094 970480152 45411569 443389308 209936322 579791071 444887388 992505107 199851948 236755089 889334878 971790178 797771063 947756383 519163707 850222591 304820269 717682322 927264027 963656290 864658462 983469579 877054060 951196637 232596870 760826469 885313701 991142360 304187448 320263432 894078002 935659832 816904413 818868772 368187802 627623464 216451493 236403262 983004042 987329850 4299294 990822979 552332812 629388780 534096985 548928150 608218430 673044895 947859455 961690415 903837960 961542436 318091895 430908038 398445906 478738134 670702041 712256126 578930603 625923759 636897628 812807365 495438879 510637037 958204408 994760191 686085835 903235390 284735298 343322516 700138385 700673561 343384538 938541764 978601947 995867361 91316119 439222669 202351528 981942951 799186799 998876753 216968128 643197929 114010630 239681949 371393685 496409461 762594345 889825324 689454555 815568617 455104087 707138442 249605978 848146421 724975375 825722314 336897270 577469130 243331846 296620502 517910362 797921712 876504094 946740651 169711520 900653784 125313692 496785967 896182298 978585282 604694036 688439486 512122365 523061971 568987357 723571758 777231281 970824582 956675591 967869680 945667852 975489745 588963650 639823739 462728972 829423281 420159891 616547382 256397728 868470291 370656397 534761172 576689632 952635000 372960311 645690477 898031812 923577424 362577753 448586787 802978752 886749789 600386406 621888212 322668765 891845043 514333340 942656876 382285032 850764318 670848401 790369668 824054841 905321063 689230273 721909554 468860600 581165836 277836966 930411859 224052731 959795076 909159558 994141353 285293887 763644576 855261955 931220207 476993140 554194070 367405270 649418707 996954229 999547360 268109254 889522188 589908480 659379389 841609837 877508825 412074224 837856738 912326997 966939699 868189003 948200653 194663468 196374392 876721876 895647856 89605292 303336146 652658311 715114887 917807479 975219553 310978159 395652424 527603967 747579975 847365875 940547140 14042786 429302633 29733951 50759996 20518228 464521822 275539910 724985426 810061641 981409474 166806157 636106999 279366113 848552012 31572445 593108198 7202582 178282047 725958607 746867309 888381854 973199831 995464049 995992692 202112849 477839954 421206966 655403933 639784552 651519547 930656139 960628938 455157062 884172505 302522993 344013459 816207335 955119260 456096602 770584174 817182810 934456628 151913605 796211034 981069157 998853758 858478589 908858000 5639399 779980231 734573953 880810196 121243977 350881995 5878771 804810359 76169110 172887238 462162603 958499331 995210112 996980923 933359498 998567566 861106969 906450636 508441997 907686909 394126938 538696017 947595952 960790713 253698962 294076295 238595201 816108106 134127114 509057667 479421917 805875558 885794708 921941112 838776666 938653093 610929645 988197882 73704782 182842572 191528312 572525847 458353006 667535140 561332114 928218125 994197465 995434429 213344476 366507066 1686805 275300328 806280430 939923492 597990627 881502738 544286592 982176870 279552492 431679347 345176292 626995149 171235664 512576510 523659811 968687468 966539841 966788475 71009771 910213385 466848917 823999129 822341266 949455864 981928548 993242302 552037686 946488310 719779803 738115642 555265069 944124432 992608933 999839423 143807347 426176227 667759381 819234116 35455081 361418746 334035240 590255163 311214090 710981133 542955858 824611493 690011874 700141505 610817850 870403777 778155025 954626847 595982332 682803446 654165005 833170058 408774516 415797907 931761994 980794237 319348852 605033904 427943918 658589478 645934279 830726810 277469957 826252700 371243792 733854007 334416073 336354106 87828761 837520194 642908719 861899544 306808940 573827378 963625053 980895728 279394867 629113240 517159783 686836489 504646816 985817537 613410728 732455323 961696826 984547817 880425755 905527855 686951784 737379172 560492779 816420991 447463578 616110711 850036600 999223233 866868793 906580263 708610253 981337502 478580209 682964720 292849978 758505995 190227631 739027485 952911755 971750244 987349852 999725565 530934306 925179707 612191513 630888105 618632333 686663521 296888388 709321367 576399331 869723311 685992916 811433795 71767312 89194181 731349974 946576432 55111015 687711175 415839945 450126626 876909765 883471444 576880241 588473301 449350405 821766576 792820909 884935277 773087184 838001637 508080337 579139652 534760502 716783435 603436989 865226663 675236109 988883064 869888840 870151949 851960718 949674615 137392457 839626901 318371463 903527833 356466130 468923156 489003270 645035500 398655662 831540447 360965493 806466338 529296141 842291518 617157034 857975420 927236984 999768436 784376986 870517336 195887114 944849695 226107479 594516820 299503536 949465324 290151436 365729180 323006950 617616167 985551794 999795431 499755043 672690473 294497240 801425786 362682341 430178665 483604106 607357570 30618943 477200039 841822223 927834174 243532224 530434030 13300647 700989680 189796585 280659135 90634544 351248657 880370957 913238150 902215463 961381183 898283711 965834127 102130615 522026582 964119878 990164168 804847651 914112824 627100890 759466523 600155797 937504456 888262643 913034331 77786923 652968313 620472018 760021742 289528502 968355742 510371500 526465285 170871546 702680838 538214491 681617187 254891341 634198179 218825995 833051012 507141030 559907403 861032776 899484508 281057277 779739403 840954726 863778194 634099592 840707115 152156189 632437069 104305708 404705390 2219492 258458844 446931089 826076952 886710899 974434251 840752008 956358668 635826550 800135462 571228355 723687850 950770264 996309514 916888692 965909765 662565185 672929860 153856256 228936653 779136048 905180377 21223755 562193565 938237202 959355658 319175959 573630093 949806227 973278646 608587261 887195602 765571770 891342941 706802164 884117582 257854954 549597063 659305310 743009113 973408472 990575233 212816969 500398600 139376148 492850806 816609188 944695518 471199843 580482082 207506858 411164543 351904717 552860515 215144980 963109906 845217476 934064111 675288838 676942129 940084802 991534330 209248768 941811194 566100503 832463195 444167937 537210750 183700023 755816896 178848863 202885265 414149962 876738555 101051930 880054433 229883885 893044733 542714205 940284739 664413207 664525160 887821696 929265340 761616871 957447987 333118977 869526004 566358911 726057582 203575359 652047591 306936340 328739821 673531093 875223780 271582684 884316662 893144028 999577290 420580984 766996831 56566765 686852921 966851321 991039809 965925562 981583472 168360234 514664535 867824206 909146086 59076913 221764865 261095703 954414185 708285328 900192602 777607909 992697892 545090345 735842367 60517886 376337351 247923791 341156056 258302737 517263955 174395244 610953941 158509892 340475003 978436777 999486728 263432534 481685555 574644921 742222046 283078226 410424400 782153059 932871335 867394121 944083496 925452342 956475149 849978422 940958743 679102335 964704931 295596151 399024152 665912797 829598710 471259589 686733521 104453433 527686048 388863161 882219441 853368992 946802510 932847553 961566444 599592132 647705279 941024803 969293976 899315506 947969965 638767295 872881205 350648453 844116765 967045878 981693232 842982511 960974142 486714787 674100538 193079529 906819591 492738134 800574845 632901102 887527541 184543097 435549488 185044167 667074147 146815908 436688614 690964148 825588066 906092741 975497003 174988377 219536511 613421418 898738640 878054867 969183574 894747500 918627456 408433309 694022763 480425663 700162612 579062185 919969196 863585026 962832454 383428350 818910132 654357541 886396650 480969124 776753272 513908106 782283619 546570659 899640732 239941478 516016203 785260866 853166401 794381961 954394118 758004717 941561286 339009558 828822629 509080938 788150217 285468182 732764364 249397931 426901014 840739818 930506278 65469481 77952107 663060347 681726990 64386412 699799655 518660478 812960509 873634083 943982445 936439566 984398398 76056648 946487724 532686775 889677383 254940368 371817381 557199748 921591225 731879122 915774453 145826287 851748641 589777455 944893531 152541087 876152068 628666326 668124085 631856914 701065696 64676710 294616767 635324348 748658353 591364356 812171668 738147714 803558163 770816490 777448640 881420332 979865209 83887462 905618088 120097790 769013002 62535001 963918302 207584568 283751602 323134339 685438271 271145029 376415091 588122954 946746515 143138277 932409580 521181797 657400293 85284910 364241595 369704551 749524177 568455148 931738027 95298216 419592111 690178953 956892163 337157247 961180296 452396752 638368151 933164631 965304107 297150339 406860342 354822605 622101964 881522346 915576983 75319517 502333846 790721320 910733400 117350611 314035747 686022079 892108601 790575201 943390174 234156025 796473444 989745769 991496734 344361915 560025442 836379582 958931257 684746971 995559208 809035628 828836417 108473762 870689224 600088310 788795737 50479206 530475813 840804741 910880358 213699950 297151450 915547888 951319352 428793669 673539060 174760809 254562861 952609994 967458335 590392365 609968419 925542309 991714124 138624562 955471027 252057165 844562279 735240123 792806714 664773314 775270457 869525502 900984592 492969294 988971074 776281323 890547183 972960920 982280769 836344012 893551286 395589430 943155382 783297665 938449258 826106481 946718639 541217539 829196845 280587716 552381479 943297730 959383554 946889090 968167360 637519088 912299257 355202917 589397572 978606765 983313306 645632229 667259219 743753749 880067305 338378724 930854496 311489912 430450467 336544229 531022435 827024697 869508101 22016588 954172487 979226355 999365021 999673714 999917905 562436013 649024766 689232696 694964947 47176457 359425704 586070600 783087138 506782275 635472918 665546637 683520233 234392009 275776832 604522684 948814785 143479576 623761100 269686471 407618239 541316578 951457616 871151020 943775751 9177294 81465236 275936593 367322165 945998827 950686664 996572636 997588004 452055306 647127406 191367601 735825202 955512159 993943252 394314947 737118051 817850637 885529685 726150135 922363870 198586451 883492860 455924246 939621155 588506295 839806549 618338913 736769351 950978710 984199167 839731399 999099843 503324027 529292683 568529442 859847713 997173568 998437100 238798899 336223107 316504666 439618373 952120566 976167953 272147134 448843760 765939326 780953695 93471913 286320524 22219531 250860351 473184405 592311626 579554165 781061190 131982834 338006894 544871395 693161673 779872134 829491342 599759509 904317437 649631831 978097908 618760618 849796321 456728377 915405076 418932896 673308797 812622824 904718534 926796135 947349497 247716368 670965392 222638952 897770252 917450313 957284913 831188793 833806363 183362181 647389792 227759431 883090691 588440527 947413631 495066342 917252458 431883971 540333069 824337747 922947634 6392038 619983779 596416076 748451129 282385444 386059924 642674918 909928709 466503865 679069304 304091763 560672752 460222218 903397116 519885754 798657584 262920879 550761741 288721212 317253124 614833564 844787276 603654024 973607963 772573744 960099106 576545146 875409575 597673475 977112228 962306082 986145240 889011007 968050728 76154338 905738072 685538682 733728367 441693095 782550896 918401766 982717541 505289489 853950488 83394237 397118579 43522791 856420526 482419781 845005903 39223847 406469841 631604286 675315221 463957565 974369658 945990339 952149771 105695823 740793301 79817053 107271364 222092500 595524876 445862193 996768267 470708810 579775124 533549346 654574602 597144307 659511979 517822792 722612848 821638488 901479196 345434261 864433986 139907074 967272836 564301140 813549698 943393193 958050474 390992842 799401121 279022478 903170818 381167782 553574100 521677771 975697137 7404085 912424883 607634572 995715546 415075114 669195516 310641670 701414710 863653084 956861641 993903522 999251677 717965368 940365450 83175750 438962296 278438652 754689369 430837951 820140511 446069983 858458267 669306981 853017608 563135125 705785632 428894178 465865581 824718481 946276270 643795733 847355507 547812302 671312317 303834247 747492785 461036936 512739097 283268240 465541922 505055911 869583572 967930728 996879125 575922789 802912198 305562643 520527975 504237084 625495086 879800007 887767947 233895993 305310423 844618395 987244325 743056165 940218021 216240539 619522633 349324354 879169049 974441901 995376807 886430343 919902626 643804338 853098240 597647069 619778344 151461575 526461685 45770390 395976444 583492880 607544327 569049700 709517076 385569050 443055082 124566376 527945587 945379845 979776326 458546614 943737029 164788583 567468075 149289749 531150220 400668928 748220358 309898119 909873452 161960156 423572940 941573875 947476129 883558505 914139657 865432314 993177172 202187614 265444271 893197051 972125910 800922279 843469783 472275218 985626850 564319436 564923622 76648645 917377645 620219993 839403725 918211136 919389890 931814496 976965445 283256310 900450346 478999037 565812443 514318155 797882857 687293624 752754240 326353429 386232058 684124000 813558137 733539637 819073514 794393387 907233545 897113656 909749700 254578882 312114303 813653810 956426901 972718878 977973655 964893464 992007630 938609974 945025262 825192089 877720114 838837188 942910409 211266820 729932646 204824519 346918890 373947035 905681525 984633538 997036188 377984821 763570179 446198224 456741274 749161246 965966014 295879613 748927573 386706781 779103985 539142522 812468921 647678231 794483296 983807090 995738238 516457582 599220144 507190808 741508674 910604617 995064116 26577439 829848736 599900775 730070100 609576239 783428886 688491478 967645076 263504656 939467345 543104774 568572770 978427402 981259752 797278496 815964278 893499881 974596250 385445805 976247546 294220642 362283332 666637442 830711952 898352727 977496480 468465017 614643501 771223091 792244360 788812712 965399112 759015439 803762289 838178768 891045485 57210259 280503214 473245226 999944202 844611022 987882463 126076305 176091655 272160377 529604683 170606020 536219890 281658233 720542883 314993057 971580008 66153266 996829161 360887855 795501639 61639490 255322835 794397589 976641305 308122059 463207992 439444948 753015108 330562161 437261852 281042032 923436805 84820633 770634442 408846200 576989212 353205438 955396584 426013344 684842888 333449599 760085961 751638693 816432605 255018879 931219561 25661384 932570850 396035025 475138040 527420379 671598124 955176827 982037960 817011995 843603970 925161111 995864736 916821613 937626628 215052124 716696285 647580607 677952148 516726692 870302348 185377383 382474510 15802030 439460814 662480131 897102980 449824663 693775287 883179451 983502497 261913469 262796841 157733278 189403669 506906933 969876610 540626104 682228989 10549783 936248944 461410520 708185374 758138029 976315431 683675571 948507893 879433482 972304370 305268433 375365393 357980118 556705188 549297817 726993939 698799269 750355730 614316591 739042467 115019722 256771958 918549692 939096582 177916039 655766048 726173374 815755278 929693435 966369307 829761391 968513974 885045756 982418559 819196075 857658364 848629357 899947452 174988399 451951993 140500150 385936553 515592757 544521899 553316385 615964950 114581103 752745196 831448801 907028350 346092389 784580407 824328980 834631607 238074273 874492464 647880143 781139730 184393773 994533464 534594151 802209862 549867840 577326444 544739184 842421664 934355136 981338555 709826743 718642987 774619311 819117615 70341622 388970828 218787803 640747207 378870544 888393077 577031776 692159155 57921485 778831130 311737681 856723381 205049779 393904363 684956910 777695793 110263808 904369667 751946339 908588923 268932853 556958959 53283058 547917218 362232637 494775337 81683585 667197874 462462752 855115349 336357207 450997853 216656967 449972258 915445493 967750405 283390651 811778593 319495535 341299199 247288435 815852102 713228169 760178697 373236024 915412305 464125848 983749218 14290922 974409964 936979850 944841565 568047166 833234624 191055505 455896127 759391453 837820772 369728118 482738573 924943066 943540547 61190329 424627121 651652142 904646400 11011147 902180079 198871662 595556727 600682174 932706822 116517324 131380630 23121776 375424460 509420312 600292742 54166327 976413908 141219814 867955891 583182367 630404200 263344848 265383591 954484495 981159068 854069565 916835606 569186344 973740383 32951921 260167449 158463594 873106925 558979340 691412080 780103980 879588844 469928869 711932364 150964983 534270129 167576136 746115679 71255857 304272446 797525740 846063068 562322579 983251006 63282970 705435156 263913246 605897008 762937559 796344038 768258030 986684357 89029789 932630349 92430003 589226975 689515405 769747900 222497110 540354210 477565620 811992172 948957186 987565902 385621751 856486519 132524120 293969851 555315819 984929265 765613438 928120456 765483616 855610029 524868302 916922095 481662067 581621179 642343060 914219489 151515089 875004272 397539302 934669172 475258078 923508813 147816017 888845592 539772272 745259974 365572675 997061462 726770570 840290940 733858142 935255022 528351447 984746119 263826212 509399145 72444622 925514610 969945116 975211689 531668839 907577775 237387328 422730136 705102018 893817371 11165324 298516742 12345306 989088092 1173165 722042763 228260345 626664221 625463544 954061736 508448799 581617884 562474122 985614646 253965150 920800284 951116618 952175550 205607977 849778828 681863295 854351133 278340661 592638907 378475784 414005243 30242827 657227220 545837472 941516237 443376535 866950611 159218931 462081759 108506139 479259603 850593232 996515476 949764953 993095508 679520441 940695955 911625035 980074359 70144266 809172290 90051011 474003553 752186123 927059920 96279818 358339549 10779339 436522180 917797010 992101794 999785142 999879056 874917239 946480916 667052060 868583798 695714964 961903429 359510939 660956632 295831528 313751230 844080456 996347396 657069831 709622491 392726255 998873473 456978019 996089596 114439836 275929765 694287676 834766778 312027213 330993904 937255561 980726681 505902758 990516739 254388464 335370564 689330767 746472015 896004130 967233172 607326761 986479343 591649652 597690525 214805625 574963848 80850117 236485163 183377012 186614012 661702984 805374506 382905562 787744411 621572665 647417058 878130818 977730519 473041701 634794038 65314191 294164021 489400414 914545750 721205393 791681696 831252726 895149223 200920094 337377284 779541734 896172643 593234948 872036373 381659129 939377898 65808274 711987499 893738537 975744482 897641006 939825885 546606590 959246240 122897097 337624171 462125071 963997366 192094540 635163076 182121744 420744169 348275160 629076747 603258515 989321231 947508826 985174028 4337568 799451667 851406079 902629703 470788939 958875459 872875251 934143853 70430315 426663139 334367924 523436216 182352047 766803510 998584444 998755447 246566926 340625772 476396731 759910506 167776034 197103173 717001234 828547029 188787305 232753915 167769208 419931034 599601641 994215309 247385880 931039374 438245138 503124056 358369311 498801681 82385539 289311658 785166511 887444833 696243004 824769552 138758111 655429184 140607610 766459285 302520509 312375574 748170576 964706588 110118160 624046870 907164111 960161259 443129881 928861397 285632721 626211062 188769129 443035412 297759162 928348563 424936485 757807226 177280398 672326451 886238320 926226602 88912236 270680418 601590052 753488574 809237152 888773609 490908988 760185999 475837866 748949510 820915150 883562216 339662559 447002691 553039196 734112813 973104960 987039320 319403953 498552972 134884001 454525496 357134902 754073038 416307948 708795862 841529400 982598319 158496952 763255278 877090571 963050989 488981195 982090127 942438464 944004671 772837892 795174948 254604669 776949569 120818077 623582626 203842267 406754218 188852760 259489963 444146683 446321601 219815453 477428728 987765476 995861287 970377908 975291159 125728491 393995150 412680661 849109265 754560067 858640436 309217940 435760585 939055265 981698928 308675550 678621633 25506384 271630173 255232721 394028278 985950504 999244489 395216586 578304683 324727796 778050753 881858163 954855615 281913614 728767869 114460843 499964449 705023378 996035284 763342763 957140528 844554638 969177212 863986001 935805042 104399723 402722118 514811293 855919504 193295700 969892389 66113526 690527420 660286488 704824127 798137278 846319818 617465250 652963348 622794512 945663329 49810823 656710403 411145458 587115828 642399755 983771143 128572966 971371162 359595065 820898761 490428778 968567388 728375061 826746755 888607109 926230243 424685749 874108891 576951922 953279923 501702048 938043022 198020865 629019859 721347160 735163088 649934333 970689435 890149184 972668791 521581935 958414054 741320117 935315205 308533338 656925483 42840638 800549924 34283475 790449041 227172005 318446591 186582421 777544179 126006350 631586935 946930386 991372575 901746399 982164214 574936102 886454450 932364658 941935462 632426931 824869842 524947773 800593952 843104269 963326122 622577787 988685640 710008000 955515996 630408985 861924509 914934635 936819696 628883678 829109478 453953555 528807690 862697429 949651376 952154072 977968382 446762604 870836063 212488848 593188739 389557922 732483740 852878646 951021295 994806079 995385522 728024213 832042051 261383675 919525553 111643551 382990735 34142581 83403883 724595354 748508181 374423225 655911430 496781086 821275272 505315017 560602701 713140803 814397801 713368271 754210601 350082221 447074249 222154558 540788485 571431129 694522290 147516117 936334375 117985895 771348521 18845227 810840234 335981995 766012099 980641186 996213183 79493983 83475850 684925250 738338244 104196766 839395229 168935156 203373344 555122010 970936246 446571854 947136109 994271251 994449735 636978843 899843825 630525273 983791896 560610569 820991876 497646351 925691962 564094815 729959719 571651953 807595977 484230442 731429701 17949868 633192751 512931981 721063981 561565269 983535824 209706213 519418459 537374872 747692343 815226403 989093159 165213409 469161455 27148680 609707519 837767636 937137186 8293114 855545488 534814158 841355714 397222554 773908418 870449664 959041124 737208954 918297648 112172605 690861656 860859672 916874644 832620255 967901344 58419687 594381348 867680694 998694943 872071742 876067333 199225858 454593569 992553033 997736897 979428216 998032641 478732343 658388384 578758819 819332541 596428321 674128992 989466926 996739003 733870606 767405366 50364813 916689854 644807567 873978818 365636328 953849349 413129776 768361194 423744800 689480135 644980948 860048955 334510069 437362997 162827420 827691828 334617078 769960092 66608412 843361199 971889072 974855670 186683464 403565003 589466456 656057981 948015315 964236241 897908486 909366733 782650456 921817214 457938920 571612830 969987302 971462345 634703278 895187609 562157990 647289627 250638007 373049069 205711556 665819096 850335881 893961161 888398261 905811922 122290889 659027786 607305385 612709553 324455727 383367836 72678295 520664641 415071978 955874570 52969155 290668992 747286780 944729929 23720000 108615822 135494591 709224111 275152477 341822705 271548828 746142212 65210372 823660832 628422177 732874197 132129534 222262012 914505459 976432876 191584431 400253554 617780627 876587067 492543614 846555842 91991028 302112284 22929040 633193717 703571884 773699183 46370398 960603319 832107246 841272418 80211898 162957263 701761564 792192872 264638357 617643715 276565200 595018868 332851724 750539663 534840946 667383002 905740451 917599767 946615385 970605784 628096848 679201877 847421876 899257045 771354726 903069619 466978470 877248916 474185878 579607100 781462451 785226768 46067916 975365138 538637056 568038752 352164494 806705308 609807584 670807450 825824407 916326920 989261382 991832621 680375781 720922848 975837933 987021535 574366048 720062031 63119100 69737670 252134325 645967976 314844759 748459776 560769816 987191920 294565699 782321861 290271014 567016346 988067554 988845744 939582887 986492673 460442256 622120608 821501621 992694974 510162919 896088442 870538295 898148183 496142573 534015192 713609973 866225414 676421334 713926556 917440288 922904557 234750982 559201761 782083147 851516739 730187781 829956250 355516310 364651633 600528955 714123371 603338033 642157284 464639873 704382655 87093946 874192079 527127163 596664501 340542351 922786531 523064853 852872979 626488047 918643993 141741639 149173980 804914018 886471818 684600075 758417219 684627924 714578083 134877162 390055188 244424415 800216186 95512294 800857715 565418658 994905536 314213140 666542807 807283796 847753137 688812261 808585396 200377364 859098929 120545040 199805909 386473619 873829058 218641159 599799227 468213000 968956903 593761250 907428125 820929162 876892347 489699603 762537845 816336933 836327311 520875693 937390871 482409397 492731423 251933342 930766586 218047425 999969950 460482597 530723313 90360028 546497021 401057685 966041320 767708959 970140181 290864736 292922025 642438158 827288142 457792460 688206200 160404072 264958219 567670740 902905150 805018178 813914264 62261331 377471254 130878363 658150387 761033879 797868287 245295844 929415912 305916636 787392743 882903935 904856812 200358943 814910706 136756071 405209157 630478651 957620890 437070485 698789941 476448314 544607044 383036059 734545543 792061718 869503946 886809772 911923105 576403242 700365198 490284972 540128552 982323881 995372648 816914238 885285812 652072324 991356877 961641534 968101251 110209565 461867028 500670708 800579073 760407562 791662894 428296055 929449279 998784302 999919750 71472953 173403445 769545184 807169043 253476758 369888296 72311821 165014277 999592083 999643711 219015852 424441452 849808588 982813506 352821371 807541854 340920433 796093451 973006161 984600032 526947717 697639849 512563602 852199017 513944596 940613914 440005008 755279547 733696692 759923257 730546487 743913137 840806119 842718491 607434153 960164902 803366136 836628757 710680510 772320389 35628836 115857537 239661844 278216234 300909541 911569717 554046401 803477643 997640974 998506242 747856475 778263696 861209804 868382420 61982756 575868642 798779019 897273758 354701167 905173919 466229509 894476631 207717156 821446331 366161108 975039435 1430062 569685766 625481654 806632202 275928513 459322133 527062416 616572982 472915510 627140389 116253085 523945560 107522047 556777243 592683966 799065812 264875069 365681637 732044019 897482617 378989267 789466839 323079859 990907824 143698937 357852362 653348829 930145180 40955054 995087355 699019701 832267695 77594075 894209126 128363009 877742181 248991454 359073634 132283935 586806062 426139520 912359353 311406808 694189002 264205908 869001669 927631162 973468145 185289096 198308329 176454332 283459997 805140088 979331810 123420045 462458949 762134149 826032666 301962358 627694663 699173377 821721348 195710269 852654757 308552081 659094113 884889272 888229319 392644270 448917577 366846726 383018112 670935490 978168622 595462319 616167956 708545688 902206505 320455578 925670734 927494034 946087030 313970904 418772697 324619706 817145888 559331484 979345150 951726931 964646478 831208362 863536516 284891108 926791038 155440716 213088437 14472485 317135331 11760886 664256080 344730007 683935697 990038493 991036622 829233291 981611288 549402184 755719581 63368298 983976582 831727058 895749543 966531621 980337139 423551195 890107377 535082567 981919305 545664438 740856292 654814778 957887682 693182590 915975000 931330073 960728887 253718891 955017424 123095927 466381236 982491842 995309567 668141218 904349806 378683312 983873573 212317133 992022780 825286367 969602019 257902124 823565265 857643604 888128053 673779181 967802506 272604885 620110386 590237037 769460340 868900929 950488986 276657683 388665416 744535358 747075375 533517864 741936307 777011085 902182993 20622032 289268404 760768489 922047254 996445981 997977427 595535702 679169065 368077315 834264828 206304150 354370947 538466746 708701625 336112186 818983331 807698228 895266056 516105194 861440450 92072076 132958873 789626744 894108154 225934692 345591766 168574100 913282613 288804189 883401236 127262721 955347366 315543488 935824361 732139297 876542311 543611519 857769934 711017400 941317570 270086766 485646726 62427178 160463077 93153023 248750410 697705954 847966308 716056015 793111926 140727976 546207710 138153496 797611698 560419953 901722295 197934766 424301754 825244813 961894814 611545938 869987368 232765280 848380774 927370786 981686946 888547303 986249109 616684636 934373934 829947798 893466653 209489281 881077297 810776692 881975208 850980971 966030166 584651672 848496455 523512031 749458394 212831702 443083248 913748529 998205304 979397360 996222093 750726017 757448617 509192858 787520147 580135080 961632248 45397545 943595909 936441299 984770773 135482000 560248124 308314551 610699275 624332960 897673121 761922041 774199551 353300003 395293128 598142028 778795002 523674539 672538895 617830560 668589855 857644823 949832427 592154714 886627709 911498943 957004419 552080365 883528235 848232219 988948343 615531223 732563631 558017654 855029525 400396488 930350329 380866446 647436420 639428423 805723811 219688495 245049707 63120464 546092575 326525671 614533681 900861088 946898692 151065996 713229251 735364293 824912010 600329801 833379480 728942455 799695048 204641009 293310378 495822293 705924665 109066518 598418281 337740000 763225843 378841382 390417961 771247002 996338368 199897664 584284187 33014682 568813907 408187195 517984599 228900095 976872426 122737847 302047771 4298869 682509747 688564571 747063776 474864367 481530740 772986718 934769995 651014767 739484594 178631390 204468782 356906047 872413343 637753560 936001072 135851810 604802714 723014643 738682720 664204540 899711377 383560552 401687211 861740144 874126793 654467362 993693880 222349067 380151396 904558538 983211616 568105731 961843458 973196482 991116608 680934953 951886145 223001672 909963327 140337119 839646454 841622777 871020649 307258744 453422489 912637388 944781123 913066947 966104472 547232803 827388915 701140108 746456492 641165144 961579524 827659235 851212565 734982296 952391299 359618318 740482511 130431041 952907453 106774557 171353623 283797138 947201492 80483431 545248077 205767863 409584259 221191046 383131514 66321784 298453843 864332349 972867322 782033068 943952374 36224026 871845315 691687389 811770116 849049479 914997580 350537266 900431352 207023868 305628725 408299133 931011430 989610357 995125120 772445500 946725666 918425636 978422064 936867157 961683902 975504181 976978795 521706305 531150016 264281152 913632342 847679156 979785443 273428301 879201301 241577619 893674804 686063570 977525913 419268712 528382739 427361337 520964459 447710658 969109667 115269643 632506207 935592261 979069554 796159866 849084388 926677355 976626908 441512413 514967806 98776737 653229907 293521588 396701727 425687045 435486117 244445098 434151403 846007468 919456780 89199475 948557823 520853133 585621767 118065938 231657443 990934334 998987891 712060015 971804112 645529398 712623501 996373284 997240786 69312838 744429769 212193573 400115813 99126254 172997142 692199926 826647423 12277454 966804777 885413327 890360506 417697170 682614436 406874417 717407325 639333586 893195528 21089168 642558173 739909160 924417858 190761105 746817560 620413199 676989346 712474229 989004570 741732215 793966039 816407465 880940102 441228912 447829364 276419547 640211882 787845360 938611747 436170362 954950821 724895387 862466886 826520076 989604229 912760358 924387828 244443585 407714352 208423070 862534517 263191363 943174524 27563647 248796976 94263030 658084534 789545070 847976473 653314150 780903132 313371447 560136104 447564605 469442636 833496240 969025271 943836340 971051099 946772983 951972681 707676639 859445910 889883732 974976861 426141429 566299152 74426154 582242261 865007669 903092778 918775655 961276626 114901157 301831387 449673121 741086538 386750119 539374262 805740205 940946874 710897833 742697920 782995080 801343157 135135393 484035827 389379624 966317951 349409689 898585566 479374698 911058888 584989820 642396877 910192546 961672598 356337304 637237992 243134157 569727121 704342083 837296608 21272192 806213517 717764976 847391359 892619416 911156085 112330503 835982617 976045234 994099738 432261902 867890500 735892664 886970144 525619814 755258346 206269864 480943154 207378118 915863190 320379965 470913362 358277344 686136953 867619884 893910996 89574288 744213430 908901601 957198749 823242433 929237719 182983050 676963366 992403168 998125897 997679452 999589633 861769196 880004682 530424910 827484946 596876753 771239748 2755425 544671397 280269193 961066021 207646234 709488918 51061951 382326138 843056995 879070843 167707724 736914119 208031890 980450752 423274087 564416061 422499568 690275492 77615884 362315905 657726325 810807765 454075092 991679042 769687218 870164136 684984639 709230453 427272468 613011138 27101017 305670281 493546776 894536967 527750193 871598267 847808075 868599023 860434481 889523146 158785490 924368359 660922362 873510849 241249253 905400431 772082984 838873645 42733089 618163629 748053634 860399757 933566488 964849785 878705995 976274265 218127056 965246871 619665374 835172224 108078765 675417461 91539408 295562291 989397865 992966353 862437563 873288874 663885739 936872226 774174899 959909774 217839546 275702522 493129878 825406831 510909001 976186224 820349242 939533796 862835045 867680022 401157269 761213026 157547107 240544861 397075701 509687939 419297159 955580875 607687687 974950399 502722816 704855531 862213479 967267342 189280250 691914722 646759974 794928506 141746229 897605915 137528235 368893992 605813917 711532531 413853702 554678709 728842043 793244232 84450330 649323686 147135314 555121441 355336556 646273685 851376442 892344851 363820574 609971076 848169828 848534913 798971718 982385212 943315338 989205264 948317591 998231365 560589812 628086323 289827337 647232204 660777507 808505596 83098765 337898499 785418431 869095714 713710828 800636686 438652758 774348437 271715383 462104400 920965987 982846358 68842137 617107104 242952628 377119374 813946974 845091242 938255850 966628451 918154631 955455812 539707557 933263146 871339150 995880640 609610729 970283121 87053905 191411418 790137985 802692644 822338756 825359673 836628536 953811674 506858886 958608393 936710780 954484400 255399539 577717840 895117400 897188157 30684753 982319703 134253282 579329647 443484069 462566606 825236688 837861409 411680785 530257898 92048110 454072441 51036315 627255487 740534947 875864895 718979134 983131501 909730719 979472802 705606426 934599775 71422536 375204610 311626488 376456262 689747076 956043823 218416337 767361313 620806758 648433914 955152947 997922302 407164358 804682586 669492311 885888659 878419996 907926664 134632594 428495118 582539991 770962519 925311031 979158390 309299650 547756094 664504712 890654359 137430799 551168065 731946275 917927446 280027819 529676973 345588824 401218299 519267942 838579140 414488317 573593257 502196785 750610177 967298007 983230130 149874037 341737549 571728387 717095566 758023335 782190861 81096217 668753125 410429067 729187877 384787384 431897270 719548670 900755070 247210836 927780420 536503807 555572650 499692139 591417559 80995567 98921015 785432177 851670842 742168549 925202107 351837 364889154 70807107 622109909 360426639 638049295 577582504 899031543 332654349 536262874 362012797 624397666 578822055 610291830 107850032 448101278 798988467 845839663 947715745 950391055 845923932 899619677 863755443 864816557 56540758 439644238 857563176 936410501 490545609 944400942 551088676 713172567 983872393 995789162 937876198 991244307 167618130 724940721 30871905 52770532 89208050 310830782 698886732 781610066 972633343 976776260 959610578 964938104 357512733 817604082 59356774 139709499 53211645 181071678 280985286 915043068 637605287 933930259 567135952 765028479 960955458 997466738 113013157 755546264 854148798 864467056 885510907 921606446 229328891 475931302 177581843 907374123 826300282 976221861 786114247 843087006 5785565 685039247 722540204 985082247 575225812 970607804 579977001 869520569 721987191 781381630 114036029 260355724 736289609 828327319 743644882 853909646 918895273 949320915 204415013 633749707 592254825 686510428 250638168 562454439 415454187 426347463 535423578 976956857 285424171 541277510 370144088 895867830 478621159 962326910 74910491 754779214 887990549 992579877 340553486 687059698 546114015 667016185 278547062 942648998 26123511 107559075 634505894 763519050 977234191 993814139 975687450 979965388 548234109 551833179 927852426 985153958 279145518 790216924 421640397 790526163 429081719 942099664 938830608 974296561 358114779 819385295 376342527 603807089 733212155 761240037 504851824 728300434 689368977 888775582 784001100 931711769 592278345 767064396 797098021 964248952 940690644 953037910 97582133 637013434 401128588 602292714 476806810 594238475 970619653 973660325 626513309 714511699 578954330 874394298 390090300 930028308 968801507 975483798 92594533 629847620 940994053 949842377 81834962 975382880 426357012 485973686 992405399 998419362 663183733 978095228 813185726 996142138 391137962 756383897 49564314 999442802 238128519 303378713 440820266 869674083 337237464 707370929 125898832 223044468 245697322 418137818 357400496 987705140 838286907 867277606 96374757 636423587 736443735 932826330 724346574 865469160 632328065 778883799 919144624 996945098 925107427 963616025 390041849 624011971 938036882 983794179 702566897 898121330 325284626 883690750 566468915 621015614 263879634 417417550 972892853 992132490 468856814 807559113 800226896 856903582 596329841 803364816 670333779 949105968 302594274 685692233 192217260 628382378 300231816 586115721 797248817 978534336 416977190 656088209 52019377 814733074 517165722 754405429 974003661 980278851 556666961 630626294 373900895 956469541 744599405 966891958 552085503 878404530 365998788 956629835 61019813 914593127 530481470 776491551 135851868 635752355 989232049 998770205 783980106 791388952 378955906 885137956 129717650 306688021 684802876 791433476 476192461 500150777 876643056 942349790 296268195 530588248 726053869 775756723 471477893 780655142 787361997 926625015 418705796 582695979 6180787 227246433 302411797 882550763 973485625 999002030 702531648 916554352 832502682 992338707 973924525 997308001 963695837 986677807 783907288 980621597 812779879 943009551 928060975 944374625 610785172 957892641 584407521 588887540 999880928 999991716 537607023 675258335 529918706 738754078 655970679 868889477 2657018 283918897 274938367 632635776 432122614 805909105 194779325 845017857 243912750 787379792 471413462 912284679 256218026 912567099 578559596 892541615 132675038 595383607 803564026 991248678 332477594 526286915 910148346 964839246 243255443 976235439 843915081 862785458 528572858 811098628 798415712 854358226 744798343 816777495 601704044 688773851 986597644 987420656 189520251 717194876 993839031 999498226 726539275 883729412 589017033 598549549 377722480 811012661 952872724 961812083 734569564 954306756 303120429 331812305 286790124 552142372 386698193 769579645 588734218 595479529 925476748 988516863 783448813 969321574 237881116 735736736 702006216 837398576 309263190 674155844 355612776 717573692 597399760 637564502 829676021 948636107 251138050 289810082 950361137 958656081 634578199 805093131 843150419 927182927 399046190 477157022 193084516 535147077 715851619 926181421 349529394 976812157 466833841 715975941 706021886 839032083 321301141 821075955 375195486 417272034 206257831 316148702 536851226 678550567 673773827 821875490 518724071 641589388 59198948 575546543 689539297 800294018 984354453 995960103 834727447 903049070 87988868 180971965 521515005 685330774 481354807 743431184 660072228 721587129 671244916 800323194 47632306 904938448 844803676 918476209 447327997 811123499 693814093 754472458 186401774 411915224 798143213 917236921 343513729 669912586 285862221 909419106 133376864 254933494 231565021 519330312 114466486 543245112 951750176 961692719 632811617 650014201 723763042 944350610 141315845 865337214 816989036 826743322 772057935 912130459 56010252 840426275 523739456 946143766 539361528 839642420 704398450 899977155 260419694 383798537 962339123 991054600 195354001 317815410 446582166 905004292 201657600 623837768 830314815 835605395 943992718 987446626 237018187 761495502 14292102 106800958 323860889 465036029 64713175 409208089 869047884 893507367 99423835 737598219 743120077 793931187 498085180 578526598 892279791 955695675 774728560 903939808 419444113 839791319 741430301 888374106 763718007 926250179 616927259 902774958 737625352 810697389 877210542 980294328 81815420 696027218 212888182 542819573 277793910 612482796 489965670 562884823 98127257 520919293 342003068 774178601 369510078 762374087 952959731 973750864 93549250 286235803 339594893 721960405 182810855 932337543 829707388 986794546 797650887 808941917 124439718 870557430 106993301 157676647 46637675 300991826 432692405 846021991 111482296 484809957 984828851 990810832 981693192 999195111 971526401 978268712 490377758 999498924 210799669 560880153 517223698 525360843 689911172 828514388 144699017 239199445 838377519 950840993 561142427 873319220 16818323 888958745 234496885 953455433 142436802 894219722 54532304 720308990 616825458 946502691 186224508 774105158 490961320 718819905 843083584 905500968 223642149 971659490 390146674 761829229 919842891 932520321 336610581 895237963 349375240 880226111 311414990 530584991 569501384 880773967 208669721 536491831 7858431 716839629 546624500 928988522 762327825 920051215 421335455 883652632 66115162 712741876 53216212 760363290 149173152 314239113 31909051 87490363 521256765 828838966 977692117 985786515 455035424 826887436 741499612 790882730 906012129 931487354 956359390 963648189 722348833 790015296 720696677 849386449 653046055 855860455 844923464 878881094 469551739 489595887 316017662 836505974 451043606 586031163 643404326 744840299 152815039 725746796 805638645 982710003 322823487 600318796 795953666 848719245 400810433 582648201 663383578 829794153 137379794 807156091 26169000 470246670 440913585 888023765 224177428 456543009 394973215 925394464 646561112 777688275 429601858 513990943 365752913 822304550 824032161 996120947 80353438 981735248 439377539 966202176 331060125 378779712 904076735 953428861 747199713 750569004 918486989 950184865 784597678 970670905 768498913 915894338 123576214 521119353 788477303 799137109 419926990 757496994 301049215 755317343 149198507 619691642 795659403 988449158 864859959 919895067 651312423 729028509 849069690 996976192 504857310 912620800 498815471 555789481 130049238 891346468 996875452 997563684 786010203 925934671 432854179 699859335 730223060 869056149 582513355 846709927 656248970 914986890 474985085 696473469 614157126 937720736 792814085 869708613 351929611 520569256 142713833 492237946 322895612 794311261 72893823 359121366 459143733 611599170 64909435 887246555 800256959 995827884 381999848 983997605 108628618 811490496 708461073 729353590 15432193 473048149 392426933 599232283 197842875 884549098 24469975 128390516 694444585 735897176 883987631 976952279 882442824 905285457 39666736 421077292 228064547 359396732 12584030 977467228 938595988 976900358 802154607 920808244 385628968 570974742 953611692 977612742 831915854 893379387 216826088 969370006 363056342 445390545 226329519 761640911 626352293 909606543 546784512 701157099 894545342 927495854 20165641 814810812 153232305 331638405 869314983 898047249 342771047 398966577 849086972 928867182 879311621 922216381 616152856 945866987 509598948 795392691 149067755 853938870 377609946 698306752 353355100 372202530 637696184 969148838 915915482 928320879 640423370 858902797 665908917 836514641 430271484 683026941 758952675 876792646 525765572 560689292 561105470 839031324 451078389 708240650 138739826 695178814 418500022 915454763 624105029 723532270 99076481 925308015 310822629 754145734 515250620 891184161 552973419 775929760 247629670 842861784 442960192 509883931 132608522 932391508 901135566 918704641 731516312 793908538 30145260 136448190 371572829 380102550 575599233 599430250 401694464 812104791 435622306 475070953 639804698 946316907 541677382 897364664 99923740 905560004 611884238 835932495 737395656 870064711 742013129 852612633 45733203 757812070 154390052 766481007 524105741 781239193 783923442 932037309 708142767 928634030 733294476 984227385 489961712 758485210 813340461 853082736 14143962 867768747 903396734 995941640 92737877 661382312 631231383 837009533 425245497 865050940 661218362 979372981 784145782 826494022 720390943 998084287 499729599 922414334 625725727 783749817 571519147 649032291 844004155 917822172 425849387 542061540 892334771 896693697 763208114 973173251 720905638 998018117 578527622 854469489 667055323 933348726 370493609 496434017 197323929 439138639 993660773 995893561 166536885 634741311 643326794 698095217 522468895 696236344 148134593 623736268 899536381 967705798 452898109 686261877 707430839 743567299 565879931 637110175 256187856 267405976 778932363 858550416 441670634 576268802 326288266 502362116 613943023 672515185 917061700 985106225 717289881 782510767 727923070 767254194 644785608 802247012 239653914 604992751 294111301 998659028 450310106 931491243 141048243 407161205 326582444 467207120 975651738 988414780 45177062 776772499 767312574 857007418 230592533 778024387 476228524 633680325 546321129 685067567 370191150 702879608 159312474 351958821 47143993 922155376 281599794 353848298 809810917 875619183 556886302 717712839 842921194 977249221 269336190 305188005 687714404 747824710 986258049 990998369 438064376 456132009 277494647 663135238 474472275 818138559 145650481 890090800 158490288 295255225 113008598 863292972 852550113 876020454 240429264 373900974 150019263 751621753 898467199 953432045 176718280 180418082 949540194 958497670 608606256 699592850 110815828 837160983 973718598 975307252 27295116 490830524 557278319 669997954 24408375 265504964 991675860 991685049 860939917 894527533 153142569 493371550 518065780 693829331 906140501 939075634 285490970 421719528 807436715 870463698 822848155 919828358 224354952 456492974 378222123 856312514 245433602 569004711 431049511 882108430 361027899 666720050 178518153 379440398 869942086 922120613 633072098 805854312 45488792 823914994 447616737 574439179 981607442 996896083 249123693 423747000 994817870 997453857 331176040 476848897 147644562 399209014 394430218 454244632 996088673 996741609 402170383 423807445 638797184 730260848 438416436 765828367 256818327 482555118 440019590 696111352 864017197 927238261 619145888 913883216 315779452 485664807 885103188 949846454 533959385 954590869 699907766 832509655 210722268 435589421 527324057 788983875 669189303 753693700 352901495 864869905 102294468 616254237 987432175 997601880 765434808 832992138 290724949 338276386 318481170 715153256 426392118 722505490 524502416 730272560 94486578 908777003 765722062 995891068 446776356 551286336 573175742 586126414 241521815 802000882 438593456 681098255 484308791 819710416 801572356 889841658 753674417 898907751 585580061 856420073 531036396 730935766 422815508 928852734 644530310 833545051 596022461 656861357 635766345 944478565 510915073 815816613 321984584 369176561 318263756 737154692 967413889 971637405 749318389 879764084 574196415 702106267 112241893 904716354 704450632 974223287 192216432 572790106 712149759 736875462 637778271 872602833 616705484 998957382 783393792 810629782 678390890 747501936 696891355 748299932 778983836 985302037 954562086 959864767 10920618 869743184 710058298 750790601 924576945 974496301 961347353 965021681 91456291 299967393 52500343 984798840 776219842 966366812 623714531 875429417 96249929 892300628 199890301 334046880 631452465 737641933 468885272 670643678 974613647 987643233 176032321 427884909 461005975 537501556 297684778 752650602 496444571 852148986 963210036 993240202 442735798 471502077 908602294 930270460 921618129 976109331 598513440 768641863 376172698 561231283 852568670 895305257 542736320 969307286 222522392 238687232 609482027 838751746 990704007 995074240 895230818 992892972 21195702 378617219 57517695 639466031 144601050 945071071 450989582 543672443 268052527 728543942 369794851 509157577 461220908 788681542 741650114 817366947 124357044 448497692 208739121 554701313 483167712 920782253 285018302 633665436 468749141 659411123 336821357 993101946 306869614 507542285 463913713 727830517 228959256 586874602 359200709 674562217 51368134 550784379 926890197 945270970 565489018 726506324 599540435 669799540 732770561 805331415 361837283 798381850 616583807 767900599 560000183 922259027 636046036 901595736 918173235 989080577 321422811 747332251 221636259 574923409 217865896 289632952 184461220 356358878 422373404 510857383 844102328 847529247 311951853 622436678 171311805 428415201 800031907 872088474 837535534 914972470 933714686 952502156 344678019 384154523 412438290 972501382 81495758 695979515 773489648 788669770 288672730 700341295 263227966 881911610 78924070 172649314 753282551 812149937 794199819 919808914 856734758 938257235 823438190 956771332 948554238 953826226 750517310 928454877 781688502 857745448 597318889 605993162 135192170 798369389 748940742 825622651 480673569 592366910 535952114 586481892 837037850 846423342 649405315 704669179 173913146 710847742 810237008 958882544 900372344 912912925 62357746 675487882 516365278 877934972 564745222 996888180 255824313 805246958 852741791 939003934 938464691 939567451 193007445 964685658 624700205 809152070 492038221 855300203 597788701 972469047 509607264 809838691 452541619 879839124 338032195 794518443 239815219 306606009 998366909 998748631 478371134 606689493 91918325 342515869 341160504 389670317 306926257 772124426 721399428 729588121 572761401 920432657 944578743 954283960 569844347 574563327 648220145 700381674 403469845 550454781 275147287 386908327 964314258 994863389 166124618 813577815 596014611 809280782 717284597 727539740 157710094 381528112 717736015 964993768 994655069 996101679 166170817 287356557 60392713 544979593 476154354 670290950 917145164 950309277 660105783 665010638 714968790 941830108 705834507 956561423 149646042 625970314 306032950 926780874 565272218 657499064 985497199 989660209 568820370 854564073 92279652 632202505 536951657 564110774 157844795 241252903 972351219 999090815 458867344 652685738 432384931 808029649 64833782 673682599 526445632 800795585 341894423 941424582 143250458 147634201 64260596 94449899 324996644 766284919 22976597 540305157 387525665 852032925 499004924 535751948 940689609 945950124 740179948 826738026 699026439 828411572 459862576 936482006 261981875 949308990 218478521 963924225 69184514 276347062 123966780 433325600 223783023 587135064 120308557 860620496 71825668 791602851 551790599 794603702 799575717 878047160 104627899 164891072 917176948 966564403 277056330 582462750 254311449 611231997 995864775 995993900 751759406 837210955 791386055 863631563 517398237 573763646 587042672 982626841 441629897 768882616 519304909 567968489 616113441 708015731 367602265 388246228 150070901 403206319 286116588 567600473 747522824 880795909 90632039 107089610 265754949 457684365 314023915 817889941 434470905 894976238 133236436 355250655 770483823 931315460 444795452 948488470 304537524 772740166 384944443 823705732 712794421 827988541 795739828 980529940 202533276 764336867 299159314 508467838 198935772 818822582 430909661 499105158 532232925 748287730 547982446 785402322 535040648 643220973 197000819 741404942 976611406 992756738 83329628 605029823 131401629 898348448 514911695 983885927 248979707 771253357 540243441 984693538 23137802 476742823 668248032 714404072 639610530 845082779 356293082 427595618 954030907 990307039 86343899 313840053 910611851 973814746 223624761 898464762 671521297 988625923 822447677 922681093 631007612 764019139 718429809 768343495 520101505 656949234 827807205 993750225 434590558 849761206 843074129 900554056 501227676 671211889 880610857 982845895 621720564 698779216 486265554 911632811 169568261 638711934 481302529 882873910 556323873 945327532 997733261 998102486 653033471 843507612 317136259 410215530 351354533 357690718 615579131 706525756 74398823 404744861 977334877 981011947 978465161 994751927 660595777 974756458 131725978 919153635 631350887 811017331 406178044 778520231 660085558 851101210 865273799 944439359 641547880 739348973 975070958 994571372 362075363 858000062 542846168 964657749 925976245 989632802 154840628 340449313 835008326 968191252 556706706 841249333 605506823 854362311 248430088 840295996 553705952 594483257 218853727 265536579 539090479 836126058 492773329 798632944 289815609 803249475 967572710 982967657 883875772 909752494 581451543 846190406 868852882 961043264 333389468 880976470 363258530 639231957 772114699 821209944 408254730 671295847 416115471 537688324 909401645 967947023 41543170 480808263 132958762 633719319 219220553 909789186 923620686 956657083 477903276 613020631 160336749 181802970 91858332 301132607 263056615 893023342 969955613 981165863 994476106 996696373 106555743 621163960 125254508 816427918 758900233 828279712 57989078 311634441 147210295 739104148 848320483 910910134 914021664 930271934 246721147 703090682 233843301 457104721 355291535 960015720 226699441 681283778 210583416 847190618 71882084 177339842 649757479 988052601 129677644 424496226 682328990 955459132 504930458 689759384 506726511 793199660 277757185 602903136 992093981 999642297 964363035 995722040 116560407 365482519 477726075 819611399 227069404 282681802 409821244 487290941 506933111 616516062 842052881 889051995 711406109 818047518 307647049 400501570 806932937 833876572 783228265 799894933 926086214 984918626 489299410 505016931 958827334 991095843 57489232 292543644 882587899 935413757 219132307 812167024 770421287 822949845 9085335 445042551 483995748 913135712 189455532 296837298 210132009 880554563 283257407 916977191 501911777 725517557 484279635 804645386 392884501 975525749 395338315 496810278 560131593 741080030 322668753 412643723 340911634 541351553 978471933 997487817 61439784 810479495 859623262 988897694 733408940 803050885 597066557 959084994 537667879 936841338 639088648 848030114 287687532 436636137 210925751 817423514 167129765 591459429 887029195 981767257 772438367 806937149 904684849 915100265 306207510 659420146 377875272 561247606 803570658 949101109 701947555 729886125 734756198 820303452 938501923 984361880 551386015 870838165 923358151 954131750 228161073 825580101 245518984 962934334 37391611 127688859 108214462 764074899 336714445 579622065 42220940 411956571 421123528 589287509 230748459 286076605 863466673 940248884 873047732 918410528 237953258 864069086 322611482 429482112 967847274 981213248 822705880 897663212 549509981 935716180 529288882 656879218 771722192 844275832 267745970 660682386 995275798 997894991 89526445 165629898 583665877 727943642 737518473 935095748 984602924 988539257 76744630 143362709 114075919 558948731 70917714 953127462 63999313 349089729 340805558 473314160 719309174 913063905 218577020 494441116 826720035 878685922 787529615 826551434 111140695 689932280 595517500 743316965 634583588 852655491 594592862 922202159 301862447 794833138 788166881 999133567 903254638 938472855 143982075 443012633 729053349 996110292 74702167 717388335 81612604 467589572 773051372 889857976 149768556 370041835 192791925 760178368 984964161 985376677 816704133 979113139 940028173 980608411 58056891 240038962 590914223 810814324 114002799 376174711 688873015 913926445 13991432 896681702 364389634 833622064 566477904 914567971 786798046 850368742 742989204 864000791 212362580 700602813 613268149 645756577 933065489 977076550 462261526 959716121 696313598 867747154 722539239 912177641 574270013 636925444 253843119 383046986 173454358 235685408 965461116 975300858 876009683 950849788 758878169 934644240 661345253 967185547 912513235 979727731 350128496 676572918 659976435 683651890 340767583 813566126 561894490 931022730 579039686 797571890 985646635 994033313 280307865 448255623 973960640 989321258 426356548 978784853 569051190 734978711 213271731 357088096 948190222 957463283 342822892 900228092 588939373 985189480 903842520 912592704 279102710 928161161 997425346 997897292 369668886 965004017 346030469 775900204 973125878 977350337 821537292 944526273 926518974 972938975 522271471 626757578 516897823 656552898 725670745 828951216 412353016 946561845 59446379 462833925 60148672 814337307 348644436 632131467 435925855 460651252 647575304 996766266 693125435 735788582 678483933 708415885 178020108 746156127 219264505 819728112 510668202 767064485 727154593 778568926 315745710 812704625 772114449 801341209 622730587 736024479 918389262 962131850 644587765 733629157 798016547 985912586 585781044 903488657 281704977 893798455 436298505 554396820 285772501 684966759 899706298 981908848 353566304 991544737 972056437 972447480 913156518 948861471 299404532 321385868 880588922 887495650 191896001 549798105 839798149 893233476 35774625 727953724 46584609 129918328 566172699 634736668 150788104 948477488 737346289 965205564 633679560 945179737 680981672 846898803 236533878 384036086 906832865 907298464 6597051 323379760 914724098 954826934 227506556 481498425 670793617 827683397 814127136 850316839 474989102 518921416 591596119 651701115 488588787 807230203 943048728 990312306 880563509 935117516 118174730 812180194 195048189 725728605 755568953 862143880 899835512 969865181 635840975 722576698 62801747 553663402 941250504 942576857 278399598 490935502 351993212 920288108 320573564 773521345 753650075 913314716 893443374 913530544 840090352 931791900 209819522 996062113 59978448 61320615 508472607 574427259 265304936 934636609 397322892 436918662 109015551 580049354 558171889 753152386 900171639 901914714 658020595 689478563 79893711 535074826 906386196 986579123 969373251 978988748 18365075 823161625 294766038 578288751 646433029 840121175 293590859 817623021 426998939 708267707 156306194 415350034 421071357 831461004 929826051 978989650 715988413 771020106 735155883 959814656 962165910 973840120 656033401 706871907 225336164 930961142 760488859 890614456 640529491 806096519 870446058 905050038 871719297 965132194 112680773 127236235 744336048 883139610 580710705 950747819 446911467 559825571 919762788 925395512 804216262 896535015 245708543 960502872 446498130 908962660 41428858 660983152 81050803 775850765 364317473 484113445 289510650 616040797 572793402 784281188 827628169 863920439 171977331 893190488 946389299 981332366 74428461 607873466 408307197 819624346 658300851 905675365 6432322 572235646 566212399 832777216 686112879 808381269 386496560 611870133 488825068 690217280 273146901 631555978 147122601 901014678 10380749 712832468 613073563 661521528 632238487 855706176 690975795 873862696 365135338 741584676 817463228 881188270 134965243 868139542 561211075 913060251 6934098 175265512 534054484 898159996 288216940 628429248 744350244 747464777 671056683 904610348 42593212 803658397 790235568 984711570 429180659 681144001 952480771 958467073 601328036 912009804 250748152 832387643 904520451 961841421 760395228 777598447 436042287 727431319 231319257 472408880 39667152 200640332 206944606 390184880 556509128 714591142 988727941 998862624 325449920 567224339 989348717 996603706 544751898 610328447 267836451 848515496 367224464 757394376 756767967 838212757 475669116 742103534 313172498 999837359 435647958 979353986 15314196 943133229 417479438 837108345 670375731 748576239 897454114 916086143 548672549 746001843 379378695 500400356 635782283 649191657 666971959 873834693 803099735 867016895 969152768 982218093 669582919 849288500 493045602 667431610 112693301 244550166 434637144 965737181 380910713 738174782 777445936 875556546 466534764 992225907 159586334 640499188 492415038 983567118 608757132 619212213 877717852 951588453 163402299 182364612 768064775 888346035 15690550 179540636 587356188 731913276 831416170 980799665 392400157 606867809 970448404 982180096 99837885 977543104 773209465 774924615 289771266 546270953 353225925 596883135 534600216 551534005 666767877 829806084 390912777 485448350 92442183 915106885 638533875 775750542 993773953 997784858 130468279 652722368 493422334 824793327 957782329 966726332 758647108 826985040 311813884 630047440 574735759 870581617 849852253 935356723 489242927 709406920 969851388 983350509 39160508 696461468 477785561 614854441 137756334 201675172 628078079 933138742 196375887 524301097 782412257 934590143 506735992 743223604 505994381 607441236 413671399 825800035 782914944 887265791 996178484 997672578 279907769 452470196 327252132 789455219 784990352 991757223 447326666 720479386 908340973 917619944 131832070 634261219 840192283 979704877 625800760 673841674 235519634 685261053 672649459 925809763 106161207 136898094 477537741 677751700 301064225 741106360 674507807 753503764 619949856 957441234 33402811 268376990 902221690 908207939 531107272 601540490 132261530 894144304 455833488 514727989 126618541 336432080 942648728 988561077 902479751 954677325 488756209 634529457 691239167 772973331 193563663 455817471 276583542 390435538 189027506 772570080 498153114 570661748 989659672 994086812 743150409 979212047 333527144 367970970 407675109 922800359 52579699 131141022 734912284 995341182 824054820 996008078 459586759 936585135 343940084 721745492 557275954 688732404 794945734 823042103 293416332 418425032 463851970 724756292 261988756 286909735 68435977 229527529 364158107 366716417 72760605 467472824 545079855 700122959 574137004 669508809 914730 951236266 327703509 725534340 805992045 986609419 916344377 985889862 558972897 697525735 778313642 842652120 775008418 973072728 543809748 828359849 100216027 319974146 175882364 721580317 221472200 541752366 58931400 85617206 219653726 946043593 311249283 456429913 612674627 905345529 346218211 957003083 914263389 923188369 167612931 952245829 292139775 553334804 802994555 880899818 877873833 975751998 722302455 786538449 324478879 665295492 271973520 675983364 801775735 917949337 454082423 991303625 286829607 577340899 792277077 975697928 226229783 282462927 44715200 998894263 459238093 674728590 568635855 642680780 901978807 996051997 802738337 870245846 861189528 889734047 333452596 351169128 828712904 953033833 380441187 730318732 889733777 915506559 532152945 604948440 85653429 840544224 984662941 998890393 568883434 879800788 734470070 970374806 775746166 867707304 782141720 783824752 617117459 699035352 934012120 983068281 718017260 744259081 153965931 775699097 234500817 246716260 472420245 803014636 683326244 833340650 16640980 741337134 917080880 920826838 472613514 955415761 120285899 579679425 520469506 559884556 596592256 874539799 479575439 888699527 78740696 683112968 121985561 307550784 462997874 504190476 46698169 562877336 117467796 266117377 332447097 558917467 239158958 942196110 109729114 768831366 655005766 692548183 215535277 998607358 701040238 743521232 353118715 408511859 588079609 684850634 995416806 996750674 204138594 766536026 602547694 706505151 279182806 810186813 596251738 661287172 610966163 917460106 409711649 756177560 644880043 889488034 900193763 964424265 811657425 826494550 674585200 851202359 124528071 724110481 619981811 673062786 791977600 997078618 12932555 342052235 985207053 989189794 699767184 912357457 564515155 982215298 300598797 389633853 771528193 970559546 764371647 805041703 544756733 792731791 624746428 998817855 181893894 721640486 280572945 346607197 703317650 816704748 387637511 760489927 49750242 519563853 625838482 912766908 756651815 965835161 397478476 497330615 785559216 980645156 312865745 634813215 528614873 637513243 429348754 785767595 423722901 991730085 411726703 927927234 993318335 993601311 521568099 807874930 106403190 132446652 82519603 284708575 836930390 983177670 569743661 952291810 164602455 604733090 527883522 666840369 580689822 664940051 174104602 271209486 529483374 952352720 850380610 852966944 480586835 939992264 637208780 761175591 468711061 986131791 913605826 967299409 203789169 644578628 418236565 686575399 980474253 981731698 170881689 336140415 229659361 292657163 869625938 873013301 170610095 809424718 224046394 550083077 948972650 954186659 728567803 952985864 487552949 765831361 418774349 564659970 328039763 742323929 529268329 974178212 525933690 862904591 624412885 964385348 390811302 606789356 43794929 307191740 871258146 925817999 77792115 307126960 499719457 678694317 307950220 645009754 468313233 823371210 929835723 968219881 48080312 65974471 876783642 896341876 218242103 377323371 37739555 342127712 325001178 410313543 806939709 928187888 376939981 666924339 788390739 955409252 103992898 389660180 760047496 919187453 558512931 670748704 448265978 841237070 799590693 829191213 314668756 316036941 919861826 957003033 172693439 186608506 365401269 957948418 17824003 372587671 671941341 698885943 565963261 729421028 468869954 828085789 861753003 928207303 241752649 466016075 540149696 990151972 168782800 590937476 596447680 894876296 42965021 321763461 627133730 819474102 808761602 860505214 11353718 114854486 347535195 524001419 255901075 727093745 486172441 547629544 922634286 941519195 605876100 728101450 435391582 536647976 261213261 801547572 70972298 101490510 504192045 766436327 81153531 482231719 34295839 870919776 875268721 895223005 291090157 542738882 418900773 715081027 33532482 603210421 174639277 979318727 557361249 718898982 390694253 445460758 476765180 604735920 774610983 899695776 317037769 856013787 205603316 829975919 153682415 274583325 813163908 949247422 200450461 619045896 486261772 593707150 902314256 986880958 305471147 312205330 686869852 710130856 83291824 85167047 816392564 837075933 908725782 997567040 317043847 650943209 854137577 970315846 175910504 314064020 8626581 15973276 595530577 624701250 310763125 908286675 19110969 943024510 153149331 612705176 629519406 953546559 391463982 607433602 618053334 709641493 966608634 982796519 191095045 613549697 485075525 602191692 302256789 901179886 337901912 873432234 764541127 856004768 339749353 453824969 596967754 743500629 847721592 853927630 471472769 901888992 433560406 932372052 732223678 848440081 11422160 600813343 748433517 770713381 329470627 846496702 246483267 333495694 51173840 756151202 581642384 968618279 882728897 922313336 772542230 858760187 728131418 788081219 573517330 676309563 937796757 975361933 138048164 255170088 434178027 712505053 694817294 769956648 798695841 808907638 562721042 988778551 561039899 778546514 430486192 872240057 784784240 913409064 55333885 92489498 943909788 952089933 997222917 999401542 212700089 388898023 813224042 826291525 648611166 841177088 80274948 318275836 120031847 762848081 354976732 377303653 740905370 983182836 165591771 749149804 851823714 927846258 136995244 892072080 527811736 589132459 661653392 892304996 564660810 883207687 674958897 726356707 390610747 771166219 34067628 118153493 528278361 989838612 702067177 766563524 830625506 901690217 104950099 625410259 807012558 954645640 121059218 688302718 584515960 598279919 307436180 555971729 354523846 750237831 177988146 907379653 803402001 875571062 269508903 423372840 312910912 351072178 200129021 905048742 378946012 926503399 630166236 754709003 936634322 991675654 507037866 544363381 241180748 502350146 913324099 969406345 616579339 704462807 190547355 318494379 137187681 657609680 232428968 535225589 320574658 667619150 338250293 497999974 346506817 706091501 154456384 421113519 20011544 595217683 457347336 889830291 307208611 704291955 971773048 993613056 326858487 570574382 24595124 734062614 547124316 777345246 193805767 999952399 882711828 897322901 157091284 548165370 617499342 697492352 351702222 682722745 306852204 573451261 159174557 160586641 690848826 812313393 952698286 971029183 528480428 738098836 517801328 701875824 577911426 681532267 386879283 630662033 892699990 936983470 415706440 846421846 23630908 856121331 298158351 308249243 285874474 948193113 861492733 931721514 764644822 952011525 205752332 789273720 278379893 387190118 77559468 550599749 726873665 969757264 449655023 552785935 530776496 831285291 609767461 668211625 536704604 992275394 460216997 822741349 108348774 177981360 490776494 886389480 56548310 417617787 735037466 954433536 891611191 926036501 266998837 779874604 341664997 929133340 725680761 927876564 158534602 330205778 141091101 592121239 752267228 795795396 769642549 825995507 228463958 753279143 923907908 946517586 301313742 406183151 86826405 160268527 808821328 948656106 934553711 941934889 177015209 203431807 757372917 939116238 958439614 974421926 479097034 735499814 249150677 504207557 475224461 498648122 68541408 980834798 729140267 975095111 241919393 698643467 893807528 929993623 89181521 583423791 97724802 961163210 712977006 714113502 366754247 617098809 373739111 861805363 893518503 971114406 577342971 653003309 885535950 957309864 539059925 668478079 471546297 806943587 538580008 798987405 477705118 570942493 853207917 876288385 72147572 154130215 876491242 919190316 553509117 933727992 513985199 910150966 117489234 180883075 391369502 909260998 252835241 931340854 428005472 858949681 659513711 786939932 860697762 884557593 60584469 150176886 600635412 784862606 192540770 972416434 771889485 820725431 454432411 505604372 581983104 783256299 878308174 889906722 544120076 732372488 26502819 833114813 291802453 323884072 260704162 513282109 642815394 987874053 303634581 436104976 465589322 601200550 277677706 979477565 8534970 368537049 486079780 598864558 986132709 998792350 576453012 608302573 456121578 630631788 543653716 594721749 896575725 962558111 387523339 417703356 239981969 843824261 825085178 934514982 455831075 667954951 717223899 785263826 50875495 792164315 934199787 961840967 826380162 877381107 129746011 347181867 810465669 850922206 272472509 586553066 913333449 985644613 476553442 586164709 451614469 861171957 160361614 188807439 847777897 923332772 116217673 156492796 340843383 992111634 692108930 969776151 197055299 956990587 278653754 328742326 116767317 425481265 783112174 855309757 981295978 982889617 55176078 907193652 392749669 566621251 801266347 973092301 897086770 999222733 534735972 753820970 526449078 570202197 699858129 880472253 862033633 929799662 480871400 973576215 967118697 974588978 663915426 901267815 904239727 976272007 919874886 973268333 370317085 445725202 805032728 929498145 201112297 881773259 719113099 881494841 835612572 855936722 297146748 519850680 142841727 777975908 720013108 879944839 852261683 926553414 475375848 982429665 922258756 925040353 218323753 538541040 648684984 940752066 255555814 966103253 852765968 935985403 623066270 796934042 36521680 938083411 948179795 963482744 232813711 761073331 532532324 980817080 562261527 737399153 745300951 834249515 531440580 634752307 780435609 849333724 241230048 291781440 702706063 735869226 599401267 779331776 789623336 932144232 929265258 960961999 900261420 997241722 236564722 356295764 695528188 821660488 245429430 804651218 931148809 982533615 78015575 329496096 373849941 698364109 339964830 895263697 352844086 665722929 811962000 995666609 747549284 778250486 399733461 606448339 387436369 587140530 811431600 996963278 17489611 119336080 649660910 960784894 916997677 965371789 746832078 916434904 453027412 588542441 799893856 872938333 809770889 838427367 600988486 878959842 365442730 677346120 836072283 919968175 65129699 372855722 887614988 945197290 801512629 971720556 669957505 862952362 12839750 367388788 592632481 916178136 123878265 890654123 389067302 939693494 833417475 948840484 548853724 640040692 779612658 885852637 31778817 802249794 848180530 964454036 797458157 911096732 701987338 879111927 422080701 972107239 812548479 986845707 383422467 973156316 516857583 714408188 402359602 407226179 741764525 892340844 345086204 959695451 309365157 996837868 153958035 672177742 883471880 988306133 234054096 552503224 564919032 587054365 5712310 19698701 729813418 742465756 761059016 906871025 550694243 583220960 367168408 503355351 397147771 659984814 854537968 972404215 27135694 64499024 218286923 435409427 495776200 533354987 660168178 853167174 874725887 887192855 368836470 463749516 116818702 532066774 88605000 604422764 474329239 734849440 218244601 547413598 183248859 333239334 100016882 677527965 222269118 602215998 974005999 993218704 971596456 983518846 90287185 164538291 976239698 984726601 667679533 826291648 673929157 846397167 445954307 815821452 349522629 530905811 727116115 879662498 833376169 901444102 960450085 978672135 643342 996495654 972280862 994748753 627003795 694131844 956211076 989343006 756426620 896747868 775529923 799498286 438060445 799175391 564590119 768366186 469394198 543133005 278886760 921365650 92723415 888726710 966188441 971850390 290699017 911249672 966281762 998856528 415114249 610558009 106614850 713454755 635275250 748770764 899986828 944003482 874970421 942904241 112501088 842581230 329790321 524660017 970591779 979688088 600438227 651013261 474947905 571985434 943350602 972528373 980680552 986484917 267803569 718046979 673388333 717037379 110835307 218328495 620845823 666572575 825160100 902395913 137005184 435470691 417529724 647496448 986763927 988741000 237010073 255280701 928683313 987713938 79425411 299055397 700339424 757304295 264686910 820847514 396204921 834724135 755669851 907747720 462556624 495041807 585774039 943095138 644114832 920672256 841815576 848299638 360688161 868664118 529828367 628325341 147084157 967158624 87414453 775744161 693612428 942832221 5634951 812921426 945258501 965602893 680881005 800792055 279401572 990926269 869974587 980093835 221957415 947342059 211667994 369854224 967109526 988373997 28556572 564925739 702160388 793870073 769871950 877357190 365381158 609169623 265902679 513739256 411864840 904342267 391428755 739592264 486320413 621852699 946939407 990885711 57762115 935394868 396782363 858397135 434450104 515340188 26847765 772650849 998733180 999266516 784513848 827131773 20328662 212321814 887073427 889543649 218345848 640572559 235338476 629342497 440639472 497618758 488127937 825235565 258650598 312997566 978529820 985902278 514672581 804946281 812356672 855370693 59794617 690537510 526169785 902823138 1100185 206799240 898315378 989003511 223256796 349104628 150014185 536601592 673777129 776766952 641438184 719383734 404317400 736660386 831929657 961079897 49125597 453547078 293103166 813377764 53219589 492623735 447422076 803684519 872303928 943384394 362392170 637245083 618707236 680963708 69601937 431432331 919387499 971627960 915760160 945685168 971115133 976414852 60446279 871847088 242594010 720166620 544113366 908575871 27298365 580155130 744691375 856027675 87891358 419948901 453418905 916896746 903885328 970209126 754014175 840106667 770842123 955201617 879943896 978455244 784880139 980623437 432524702 665449437 718530759 960558224 669652307 808876774 623167307 803514539 513511393 524947945 276554726 468303956 735910348 915221606 364603513 874814939 386752001 596261710 828252223 984100050 903487648 910606954 303810322 468988978 774680521 933061372 966349434 974001257 93757933 592503999 923762451 996666172 788021135 885565777 204609190 483678494 152143844 981963182 615277298 667939707 283057235 990834654 19976080 557356239 407049216 817026178 177838173 770182968 506134833 863230514 561914910 731783960 38045610 425164350 839245981 943323701 521578248 967312952 538412741 769723057 481710008 635550007 733383805 957500390 610457478 627537028 17729531 612782845 921552947 960074705 826352305 885092471 865205826 966831371 87720552 351961117 887479820 989846047 151601252 429328025 750465706 872166496 900891904 998165156 112642622 570772133 148833496 673926507 625429264 927372652 277534992 564719287 844505827 979353183 575784406 720611424 969562882 991804620 529227787 960664989 870819322 973133363 343591361 639428936 869233294 907563608 149112672 216265446 307828911 523243815 363979292 549918888 910608520 921441682 234881640 687220064 128563761 520728770 816174331 817795571 180705502 905917009 395349790 452513693 272790659 662165232 284695305 428709456 689768913 776059365 990566115 994698981 588198169 600205851 352781106 649592765 666974813 764822948 716350068 740101010 106324213 941737499 304651003 971259937 624071077 857954930 954685890 960698666 95876526 761815315 3672752 377360073 78467664 551150120 183701501 656972669 884947504 993879359 263352996 696665629 295579952 370291298 116725813 971538917 378427776 758727804 969251691 973366965 687814897 738885918 228045771 486243482 812545204 839057761 307710385 629290209 207742983 957143810 838312709 912845756 487511390 841999048 779370776 959940379 609390033 962234155 630165556 747347028 179626589 636794773 360307241 758832516 19318205 585858350 798771588 815777707 919623285 974642156 168599777 772497966 278211563 667106013 367222359 415020564 461304694 555434005 346785710 791477477 318280549 375202032 576339270 878900851 598408468 672930547 401452679 551145690 658218551 795354428 231562498 716040722 618739815 681034777 552184523 656359904 938833458 963777397 94294107 511614559 125760974 974480349 446874660 480550347 184834782 846991715 674939583 916651805 722549332 827372213 424629115 456809757 395669644 854017818 295341553 794568117 295953289 728139815 667280839 807569539 81028749 516245272 573202109 764780730 730800985 856943108 613131485 803769491 567601746 947662506 946397230 968660980 853066264 996031013 975604429 993922574 895867512 980209234 797678271 956330340 118298445 782583105 364317987 536910801 435262035 851456154 643124773 892116349 325555587 916098333 852903304 977851764 678545192 690635302 435579829 850170367 406613819 821781924 411312871 584426889 825135784 870733980 283804250 729555069 830342 411940208 9359836 914477783 183940816 507924574 298303050 788028387 157897558 530664166 697431822 715917958 789497467 940569761 770742643 940639339 114435373 537790334 227620635 918673891 736720467 972584190 342119053 800290788 851891225 904455853 249775180 683464550 368624046 825485496 250342260 339770602 947113291 995464038 646011070 727165666 675283934 983785074 174276743 824293582 945469786 954743100 946808480 950886438 941515345 998507420 674008803 829178627 890097434 894476242 743186572 780584968 359230355 921525869 986155774 993893091 771604483 933676050 673530072 706212937 988170885 988993893 891785686 896458187 171124573 709403876 511197335 878520150 375076104 698127609 693849309 759006887 821901060 845939059 364322869 905669017 256156351 529177760 993144989 996766421 195354448 621165509 266927318 891461908 655312310 764026714 879413111 959154927 15336936 104337144 916735320 959662040 667060012 681879899 887234698 947961528 208991462 698251278 965847865 986400667 276353558 994293411 832136595 903440586 200657887 281670929 667730203 993702174 625693771 771039750 654827521 927304948 732887545 965379572 489420961 748598713 144003333 212262694 2671030 736216928 28719790 952491406 539496591 973754444 331065522 590543026 912817827 981478324 627816606 787149020 342214444 387642753 182830255 742724873 220111614 280899376 259021402 996358740 109564434 312539103 177636714 800756856 286391643 323293005 953435211 989426973 394761986 527691843 721252117 722132472 812180786 892659937 616059071 760784076 159812924 493679575 447134362 777689107 149145323 521543441 745733905 939835115 959143820 964642056 809743635 941719756 463712741 536923717 706942364 718722817 618016138 913820643 370399337 830437791 413318471 488516189 817010743 921216759 638953767 940495885 789710017 959625177 549355161 659768121 588053950 812065516 280092010 670083866 628290741 747605480 857415879 939460409 665369966 760155620 518367420 725106949 751361786 786741044 820908453 876401523 874024068 938334380 755912545 853015803 108917375 909968847 619828477 836729921 993896069 997491748 698294667 948442336 460614928 708798404 563936915 738995862 324580117 656073819 153074291 900068070 311463631 399950943 737807775 957075751 364961625 448310823 130562615 292781060 96094396 890917396 660876545 755659380 165886787 385451942 259271807 692214722 912955210 941440137 655862706 941053727 489257540 832496165 280648900 337057619 733814885 786119959 192776205 352374477 102427394 164366420 291903891 650978220 221968636 863749784 694428478 931929772 212646157 732874760 833013820 965813031 721283416 789191405 281545757 464806351 190855982 690814975 781154098 936931422 322171597 577030843 222126270 305243846 843631697 937733850 146215929 241223398 225287654 614935885 507749343 685982508 422855792 935535435 935961943 958167620 308313128 523816510 666464560 959139255 323947619 329978588 367383121 701124506 89427081 568542271 987780663 997913221 192511016 418300090 624725115 899715760 32481977 991129598 355275914 418784445 813762738 822427991 142140302 501219196 584136788 796174531 641051497 666285957 936183703 963554073 317387539 471327047 125109807 984443731 714595336 730087604 995733243 997149992 784603091 817324493 957521038 999538128 500947392 666381599 265079324 720511977 645114801 855210774 940609118 983036095 110590796 470057697 359569328 429189017 757496895 777860848 234809450 786568156 521764440 980625468 587131897 665592749 715523739 873576759 645910731 800080920 101784035 564111570 112692571 436261349 555101817 598399848 347525426 766299280 990566556 998033097 771882575 880051828 236552039 472281288 746026030 823791443 152319298 938591708 646403620 685850851 693174053 755119389 202120836 692265915 932374769 943329405 324100094 911209920 733398097 748151404 766521128 996172982 596220056 654636377 949827378 988976070 476513418 639313647 152127363 453054468 873486546 973516412 19088926 445434829 178466272 212847521 956322828 993110749 417459057 842756249 537412194 681679948 914952584 994937660 510566601 750915430 503753260 643773050 346246769 750634415 427396813 437995844 955427109 962495284 476243047 522092351 283841872 765546489 361182005 975090678 365728489 729360233 847852644 978081470 893145052 912018011 237213479 580245555 108426350 239648760 756797918 927918147 155776856 479637423 906651965 914770030 654529861 748968223 66077053 748319113 516797791 838318486 950460857 976321185 534419840 981008538 290484052 901835839 158162886 916135796 453147715 657986947 117457604 554596805 41987381 852021928 507033788 885449672 941128799 959677851 862656730 864434975 773929703 792964822 514543945 685407906 928474197 928677030 885889938 898973637 42686333 997360137 42340527 232777731 322399080 978243923 410591980 421049488 449390444 690204866 970839359 978831448 57562541 606810331 741219335 924396708 602316575 635496415 833136704 915137981 663630786 667638645 943249730 976835802 86303152 796243472 917144635 954771803 922391389 944341480 434111718 884486020 545132358 909248003 983736226 997657012 830437182 852481657 202665729 914015281 417811571 838163329 327179751 536652809 538676028 780881939 304649862 396601499 197822991 677190013 577324673 596671474 444156379 999654566 921506125 939720256 171168846 713731274 853031600 958359123 927796337 928063908 657005419 959470827 425513816 479255097 92974697 346699751 462580784 949805803 43308620 773486134 181782294 422683873 639972387 947526884 93685032 736101249 595441615 873666793 99617743 204224829 413999886 818967710 337252079 460689338 878710155 905539401 168280900 364099148 569287413 866286998 316650747 448083826 801923306 897312850 491798548 808296344 626403599 941228751 728059772 806925740 914796245 961185550 790107404 915304486 504032375 898085814 854202569 927698073 87599560 529890321 6850212 645243470 752793918 760357669 5686336 375287595 374075125 992242179 295645621 935654680 71425775 298145192 867839957 889115125 964446482 989435362 659250079 768790244 355238874 690441843 684266301 687160619 515902070 674066723 277995622 696100451 922624248 936317581 777274232 846228895 831302678 942629810 539741236 922245827 244486083 864611173 680734039 861110038 738169743 838300525 437937854 700072620 565561814 693460623 267608724 704539902 623606540 808164571 907996640 990620187 574489163 775997596 144586383 741934616 170680739 359867061 416004638 779308026 590413054 653505588 727188751 895086548 975175477 984619977 251831594 911509349 388575695 479451454 446220583 697857337 776180080 803931038 671742368 696388605 243278390 442180087 812081264 897273090 735352452 981487992 220612929 626305899 755039613 850141403 400448702 970206526 283816103 725873173 745060460 853730011 418860573 441508359 459080549 518657727 987706613 988452545 529808358 758719053 300349731 805409328 263770864 540780094 470807346 951684170 231822103 604819329 9761936 394779968 953023333 981882362 507248835 615800044 159835716 450995831 218692089 863924831 7676192 434153175 571960206 669333809 799364042 978618290 912895310 980845235 684653541 958853348 294058065 349605140 63252176 613276456 795953646 843586299 233038683 799116254 847740513 951285511 960781389 996872912 701857329 968730712 416249349 885131295 776198156 847826850 28814818 136365651 300959478 318792362 877729147 997881369 97303704 361267084 619450023 887506725 112257690 986848554 571810546 612996280 235821784 426502088 650995154 673090956 448777114 759255584 941007253 963960102 689890591 860918624 65357489 424348298 436203422 551984854 306296293 755000727 180311901 343127754 816846049 980638825 739121431 820196613 560979943 570515427 845489819 860136329 368187583 493514246 798015299 811808468 624664946 898396987 749248403 969215031 40560824 179341205 981991567 990375943 261265291 793303481 272271870 391729213 699522790 933137169 799552699 962213954 503694365 558777721 876096634 977315685 847442273 857432801 847687341 854336416 766636152 866920379 868954121 938175418 814589397 924234796 717733443 738540152 267882089 970747364 157528354 392904383 40968462 174515084 145426381 398060594 60457994 309141658 110259059 832015938 550524907 749230222 119086844 847935385 850062416 958744875 951364794 993487091 363019253 665969807 667740250 905939742 550088460 873648061 255972636 407059044 451595999 496051473 666697120 893205318 983654061 988076816 814617531 967406815 629951064 787260652 250471423 518192552 953607684 970101944 760389939 815001643 108662914 951491109 99015673 129640382 664450893 678588700 78044523 754413152 406292312 892167019 45805658 515671708 756380702 807784353 217301589 413197492 836723462 883191318 63682645 928913099 594479320 759628426 438473383 458892086 865008202 958610777 228047836 426834119 687577303 809363556 773469584 868871591 526630719 667251262 292846409 524361898 562485492 666285627 81024591 690363149 704238528 942473569 128563552 810254159 323401997 806662682 389268866 493025064 247698243 829846706 775417006 813475056 263863498 488880035 144342378 802933648 508192659 986237664 655263243 879956077 322897577 376019316 259805677 908142873 290895451 530017460 553004635 595447566 545608428 597898186 429557180 525008464 154178349 930737115 359144577 977200991 590566660 596934057 851370414 885299951 409295113 721676433 370137006 775760229 80674364 345836089 738487800 883833915 468880362 734340138 732254479 840749230 554051856 682048038 500994079 551251397 573195018 838106846 283567114 968864929 31020491 550357603 555807572 641584405 644139154 767504432 105526608 546869299 184444588 410928169 507886814 918288380 830447205 930103033 650339318 729982212 450770554 602055322 314108008 677980755 202554863 742687426 853263661 899486025 426777522 704481647 807611396 865043671 133782569 839887965 551828819 685350738 735482110 903810610 372258861 916550538 529772287 713197810 854937413 878934275 743521158 976093595 548310380 806955173 256645406 443260642 213967300 368222134 279015336 486159816 928804719 996427333 373985533 509656205 536398903 661151756 123179299 392551195 339148549 818036411 746918050 855194392 437237837 687974958 298469698 874651429 603363951 923370314 747833257 925781799 539401388 987706595 788576015 876774621 842584057 962624529 893143395 985476989 741795236 810940715 365016701 639556766 25668098 361036126 652749890 988310274 438043685 961564180 180126188 386512004 765612501 789000166 532829415 584257594 847521923 893907491 680119157 735983422 830446223 850742945 184071965 398283804 839121249 993905997 657462700 939402611 427859049 743901061 524587382 619468546 182128958 766860933 352234725 652801110 300926024 522666948 742575419 941775482 362472222 429535104 70339204 118705309 473904889 867936634 412266093 913240711 543165516 671494482 44585626 600015798 441505825 852699894 963482762 998350245 865506798 932558020 719600810 907336949 401720537 498429218 985383889 999152178 639214257 874012736 482937940 831186615 545578651 770353250 837402590 930993042 250473357 826201613 654583872 920632452 561808083 974173963 304438903 649192542 83761815 569342474 479499907 551721740 241835603 841210026 9945251 652707176 684773450 857737193 440675850 662755061 43780130 349064955 311653602 496244420 647320732 710085646 921733420 955195417 180323350 451017277 36095944 727959282 691477369 960436228 838362376 854901548 243447905 614909950 461598321 845785419 780784242 981102967 551980008 956504181 281781953 988077789 83031167 760393157 69636773 523666194 553287737 840752036 89758002 710477090 826687323 989731819 231434516 507963053 875135092 993852353 405664288 754383537 919158969 943072594 188456162 493140108 202129719 419528975 543049543 859469170 318699786 694916242 710578354 845989797 448412954 483961697 736308726 766319270 326682898 727233023 452521929 907881471 119476436 602921062 385906908 964470104 688005905 956042663 134352028 937689027 98566725 162167114 917211759 935394503 527771922 813327353 398401227 820056290 119742333 511639594 229406469 750771430 933366147 940755583 570796440 730275341 366833786 623807018 575637168 811023958 92524983 175851922 481996512 841455690 786808184 929597637 698299903 719257468 853843092 980494546 323033860 484620656 539740791 917436551 946107272 972437349 873551228 963480258 75582123 279124291 350000830 612934106 440652684 717423206 17426419 457556591 529396778 772081566 958143506 986000046 591041288 756162710 415518341 772273422 974509660 985351575 717401689 830055498 478764489 763250709 714260810 980023040 103826941 397481071 115757187 821902869 316542130 813180727 367933850 962980791 289490258 595072286 961113259 990769835 294821508 719813353 393339044 603033054 63909866 780499589 569320040 872003987 380725855 451250357 87113783 449231365 730029104 771397817 117978983 586401067 733038263 925472654 548840350 961273484 580484859 884470152 80542089 269650632 938669217 976148777 799750819 977207629 865384197 876913139 446207956 623100098 741844881 996880913 583150146 984197913 988189260 996786845 621419547 712557102 664146320 686106676 219180231 516450991 613001446 971126917 73251607 102075224 521060308 956191836 839815203 910787799 237737665 563288884 979595284 982573226 685944659 770067087 71489233 211890196 267940147 940740627 344388057 924403030 564305989 708609638 899015068 968232357 246013119 413040407 413281052 549324870 416312875 806736739 683925480 913035163 961853040 981171720 735121989 763297357 89202546 792319398 562957361 901965728 935118876 974341704 887291552 969360718 600169469 917770478 921511846 943081530 748670609 868187389 282525084 644641986 149928896 667823377 141717075 409160215 206302766 658827579 973805469 980695050 16673903 458073595 231731706 411705057 708436278 730320957 314602819 789684593 722130837 940593424 877265653 944225941 379147371 694273438 798059001 891897639 994929048 995485604 607436359 793310809 165508489 378498548 529043629 728068540 677964656 829632900 580985890 835544123 840664643 939968011 356464183 374883490 276363405 288888039 732722656 764131532 284540057 319191861 678973859 953575436 88366045 533160840 802218537 821011783 256279209 839744387 834098141 946741599 624814803 852322389 23446747 891261540 26438950 380989571 83579082 337155243 774421538 787495694 550012814 870610634 279801059 371229185 238129345 797395669 293002039 554433826 558679121 745142876 672105196 975015813 851948711 926707807 794086918 830496805 402708094 704887499 552186575 995569726 580795457 894284943 881799739 939779850 344232391 961566580 54044336 764135376 663134757 665872356 866084108 965482394 380278493 881561022 413893671 557856865 194916465 921027115 199903717 710222901 645981215 671515188 152366029 188057626 627067943 909529776 223756124 669566616 78728081 436833180 505017367 750321190 376747528 419715792 228122593 490502226 706240735 813233946 606250204 863088089 458987603 722889080 72451535 917523578 151750130 927258000 464887565 728827422 152424807 616734823 86510352 422687096 197833035 589709062 603760151 816918203 236280764 966763748 194214965 350631518 84517554 694779459 248165220 394195989 982337776 987860797 511414902 766157606 503166847 908107225 886620081 977268233 34806245 361599260 492203836 643512273 469737821 538842176 691787402 979775098 54715033 873862036 406118489 612749650 873923208 976775798 168884172 507374225 885449619 972491396 471785207 658350820 653894093 790230438 787906237 824056842 937242749 939198000 514330972 974479860 768830799 908379830 730134704 766008789 509088616 906267273 340377146 504326871 815197873 945153365 903519107 953020655 792802141 890402842 377605800 721678009 789828933 792802287 919180965 964576220 886743181 929619013 291746595 408695673 804077359 974242846 232048212 751053684 837662717 935057635 251278328 347818415 383608964 691043131 726592094 789273648 252155552 742512736 400919179 804228444 480307196 916182104 365308221 721929547 129178316 602516145 221092562 252047508 645224456 956581242 513270452 845417546 124992345 258722941 874886923 893535475 99207652 855226360 229556755 333598391 697735590 718067370 452466672 692490728 581744195 911448940 598688385 781987738 196517721 327565733 609169598 953237595 937388862 975587319 274981467 394399806 520089602 890896978 575735535 902590657 233345546 986810925 848726283 959555583 413852499 617535261 607817141 887290257 142304323 824072831 165197492 492812935 986545721 992456907 767293067 929209144 107340513 580522591 896894549 910761464 76251872 440712832 608763513 776102461 711875542 851265467 273486556 436206294 314610483 714512360 671809104 708532107 822614 149678451 458082687 508153719 63026034 919548590 679806793 775917301 959242607 979191105 404559896 423835279 685497370 874965048 990037652 995823685 224396218 328828449 689013279 994532479 887014640 909117823 8168958 191121206 971004894 998353229 210833241 851251348 856612719 966920548 465688486 501376651 794242202 834425554 599150738 842690302 160444980 985040444 215036883 357418167 607593109 745274150 948206470 993110250 411025220 549989097 278801047 605358757 236637831 723094959 752019072 793382419 44214273 995398702 109290991 126437575 972036561 997526340 287698867 417127293 552424010 651935541 800001328 961136878 818786186 980752522 549493608 788863969 184371560 764552632 95806964 686513322 919278631 967008200 348918950 661842440 165800589 706847725 765479921 950123457 621302322 998647566 43862088 837542188 672409104 724194998 85059940 644577740 363246173 403520418 274052288 599099765 297212333 860382157 168367021 633286506 254815499 849330788 298700195 765350835 872888621 994923262 711333090 908038401 545035717 657305723 11802177 342148448 182432984 983655246 832524111 939747669 783514678 792355502 746491014 885003252 885179993 940514159 812160724 945174772 894780663 976950601 659548809 827291934 913851685 927250009 9562172 484412133 200244274 385558959 321428458 990738351 723607299 765766422 195242644 281242971 278913686 587568030 440574362 657901872 747107900 933708424 745781926 838294938 432879060 951784736 617985647 869228246 737680998 866681951 321881977 767798149 384128443 609503736 164483326 769715758 144272274 205546409 984578145 986798309 792938573 921569630 750015949 830452100 661369443 936153584 416878852 919012629 810752997 843594726 121548559 139429890 698885150 928737038 209258169 576589768 675672465 707040187 354107546 799938489 856257680 996435882 302906403 677810954 152456351 335550279 233267534 558102679 715856563 966357833 919821618 941461282 39655421 299762782 928666778 985059950 182629495 731604452 129072394 586415207 115925037 195435912 92900783 107599831 414228612 945534103 36980108 774788945 280897152 943082678 820590974 862524114 918661361 961701494 312224666 576864197 975092173 980409072 394621975 405444076 884784183 982904027 339974204 471021290 428648348 619236337 326460219 614223405 440158936 477412746 762291090 845764397 301326501 606338954 892559646 965205230 814561544 868490536 761224270 905728267 270363730 432206318 355095333 838586092 912250966 925455893 209339145 364454094 614962909 839346472 532840673 756991891 913587790 922731581 154509783 239104570 593473143 880347192 51493919 252763714 396018818 787196044 691582411 838829876 540695321 779290224 425830257 862941078 136346739 692159276 222589853 902231143 175660927 356828621 432281673 872353511 272060921 939281393 285173729 422259509 323340197 974316881 748741214 766183929 634891524 868220192 412413287 806129690 839207161 981673860 48772571 373808608 8478192 498048430 482214513 859680761 800876213 863600841 678285006 901760636 819711717 920633253 39470624 651932797 976296556 987499863 847740476 906009192 457112237 902234020 808803047 826948701 328277834 347695775 223930416 968273969 728696478 972261224 478159982 962648727 576936225 868628380 111102266 203594827 165662725 630303460 7860005 677620779 347634572 732493657 341842236 579192050 897475805 976422896 249169967 762926359 772433883 797814894 633992030 686247663 462724618 854609152 645961869 699118516 869500196 872793620 391025559 582200673 82790691 958951642 811179344 994761561 953011904 990002182 141215520 272237152 540416483 597479071 470687093 804199010 959744394 972013839 820016279 987257640 104317272 335817349 657104659 689312798 585023014 727150924 153316144 346029130 552902256 769284823 822822096 865599659 344926455 725367541 944372967 946790770 757609011 871675191 52983402 489274084 491932957 583107250 615733799 883163931 535900735 897063079 17176359 627460278 364964663 718315351 567560054 748536284 592673822 650807567 502734213 523059540 546847031 950386996 696279307 904358350 786240926 882531180 917391784 997736970 304314471 621008517 761747408 962839053 688746648 929878899 273539753 483174313 807243371 848281546 422329678 739784046 719992127 827597292 259707163 547091189 873319096 900316789 485557895 909086430 247820279 716419902 760664711 957992006 91642353 729728180 250604142 612641560 698348108 961201892 428965855 891989675 441388980 803995524 648243844 953388428 899078754 993562780 965881952 972303354 299195058 722630434 523185174 736470845 9248553 913445536 759711056 920211846 438561086 575634053 861810838 950817520 880041401 937434205 292023252 911991741 247068917 666934859 622232175 728412285 354872634 628029860 940500926 946837833 177156961 620154740 686183639 996611888 335899752 802761256 418984714 800889562 110662179 899780467 144001930 811253688 235818202 598735919 339299656 385927614 326613208 400249674 659987349 857799458 140404139 184088386 20766231 874339073 32617009 708534124 527374480 907238639 35258371 391094072 484182185 658056067 693964793 736721042 152941644 376132066 632573768 870079219 398820198 947461169 631274887 696375553 403184267 907959168 923494138 961139447 740708575 790602974 763555019 814820991 717773465 817415652 343500787 684471144 947550456 996478548 439877967 726634290 979409499 994141543 784332825 852122334 890530704 922325721 149451268 266776049 363030225 766574439 500076606 935997617 510186239 591559487 924614831 946744138 866882776 998511126 379946457 720103460 273831777 727573800 623246103 755549120 394839527 578817812 877691748 923370778 818443365 838614441 522964095 937451859 218737176 292257952 728937153 754550111 515134282 765218321 882432976 933990075 295238120 547902985 126880136 657448124 931199502 941439595 743436831 881308168 826967230 945814614 616822349 756929873 249481460 853999748 670951374 787435733 582213854 629531438 197909393 825430806 214943241 552302904 866479214 938857734 1905735 729538169 818199473 929394913 267938962 847799071 745676145 986657041 126964136 156395995 290448500 596898355 82716273 221696720 892706638 989813716 355865776 625397523 839117724 864157946 115953705 248771875 732598135 973974402 120660201 517256884 204243266 734084017 717375497 738654258 781021888 805693326 128722950 419858302 774323093 783121083 303976360 684403042 687212447 804774063 720766020 816519741 659258662 701365748 445124845 639853102 874896569 983593673 55901901 270355118 856615246 877332843 985487616 991852480 548523393 932519965 604513550 772953496 651988934 852724364 236137479 245585714 848881672 916938119 467174970 871814149 5835455 559787815 602173639 698885570 29061336 701510038 709316871 923808936 610343037 656452877 25702871 832906040 475575627 659085170 460833107 670976735 311669379 659954640 695172642 809049734 588518303 890301605 847672508 975967385 660012064 785606431 403109310 503412522 608407121 910328619 5200976 298388766 436600341 624869064 919182516 979421388 119817045 277606980 223523438 414750345 89541869 713317141 911210485 927341751 392108059 671522365 159111857 537163696 239104085 723258675 143246615 818284454 535117865 945084957 14538480 971765885 752249533 886282801 93880188 325428161 952875204 986273289 328204477 660133467 502779775 779460967 396470872 712767392 343114335 801563931 576176214 682793184 32292027 52679565 880408000 981293960 268452456 406567445 104358313 486578089 71921075 621309634 996233071 998783647 186630804 859275273 176317019 182419490 401647009 651944510 799074340 937345146 198849928 272020195 477998640 539944602 8513101 780767003 271808343 935231168 326338774 351876871 680804719 746178991 497443094 876479976 306618966 807998483 318276255 643767615 661755716 934842984 838472973 993940101 122060962 170296005 137951873 893571986 135050649 396447121 137185383 472074901 980231188 986564596 394887584 745834133 230248026 931639040 153820375 512295650 53212944 305978761 195500899 991287669 962852140 972298506 637598850 975148855 993605543 999227070 434895775 848761951 674559951 953989116 297179691 379908884 420520171 492218919 208140527 757479722 611747098 937350925 160807060 406321512 617421510 904126972 796177705 842335514 277003306 730279317 80475548 307535720 654008695 964949112 123062385 479930783 738595865 891773935 126507231 841526855 211533023 365285179 282803272 947813741 217834294 675589180 133690189 601624582 939611072 976057386 584726557 932884006 218412826 975681407 451279046 702806123 195242980 406876998 569480811 781976711 795259022 849785355 19032736 777490047 240427630 927993571 878841856 966055538 961890484 973569741 946192479 969849859 301453610 556645137 442642661 818857535 447195189 644585373 932294354 953163756 324635105 769202790 744895786 785719006 374943649 753120762 375611155 704641359 878105610 974651944 407892851 711876323 533706183 575149347 153372454 516227672 293175616 638953367 786667858 851317302 939127823 967083951 656871403 939568431 938623696 955370480 493198558 538964216 152893382 237059873 19137863 657851348 626697246 742584714 820089980 891763737 392141400 784340643 30907742 805964300 27479051 394570810 174216974 397941380 595009239 979234315 725229735 782571796 677367680 892646153 849474525 895303041 260026281 943846096 30235533 712650841 297383427 490819678 458511654 758248314 964902176 983551608 568695651 617164562 231756604 882033924 707195766 823889684 257682510 426247559 602727438 676077462 189944545 672100767 307742601 340585411 372725981 976083278 178471746 511312870 128310730 957794408 952550430 994668204 326238884 382076818 192942930 964364271 943280283 949435119 2878777 117013722 347351974 362066435 122527861 869499440 359769613 857172792 15306672 981275356 222693108 545494180 449131736 769822850 151708112 209518517 68680511 958429143 673333303 898597897 776597836 792081892 399847852 803529757 359837303 414931841 856098014 863476147 811095832 885259925 407883778 839886160 335875858 845792446 234557073 746869760 120768131 722993319 575307296 697061473 720897103 800394013 701181142 993745648 113463045 455548773 905756458 986928047 544562089 796416145 188457513 208059136 855266355 885657745 490656470 701763152 211672697 283259193 893960968 915077484 641002768 738367515 832695829 925372916 154215038 186301069 693238122 991153590 63777571 125254284 548523514 982237523 843116078 886972409 156443172 986585969 254386653 502548829 780113276 780829520 689514427 876093546 9566663 408788161 958634632 985899552 96855302 520072160 856208526 950464357 854947723 956294052 899495877 901957950 878531802 961058739 310709426 864392235 835698357 958244400 433119193 450333152 619411774 859919887 447871336 472229286 192431424 270980763 977482751 984725044 503567882 567733905 241418247 667271095 918132257 982270087 854411686 866273047 778985656 874080870 611270207 915008456 505609289 810437663 668753133 964354015 756880725 997489374 842569467 980489620 73298723 528443276 978287676 994363314 570923346 945292084 845646864 846804695 515652135 836166508 697704052 791511834 86884496 298015186 998875519 999524299 763229861 941732848 117386959 826168233 952505905 975312498 866059575 962668860 194665771 974360129 170721561 460164522 656103682 805363943 912996445 996348476 882138379 931707624 817084893 933865536 397754445 737026760 180853350 348750163 928510744 993097141 687253288 957977982 14198695 194347806 665962535 776763989 257816976 908428346 18405924 721626359 785815540 839257867 606702946 805506504 338738353 915553530 188182877 898121488 143445282 998535779 592596726 603910313 905141721 907194307 228027887 440371018 567468205 848580808 457972239 943721824 491575249 949883095 86134793 491644924 155580256 187480993 977467553 978607493 934684528 952918168 536534848 946275565 455895731 611536786 531728862 883710066 318559715 477181202 357187598 960800889 762785315 862638842 73368814 561493332 634159864 784952090 766644560 868358984 215681104 650490326 230661868 661717094 997312708 997438420 952709097 987417015 113908026 317268556 272811000 680964949 937519596 957227224 285426416 975778257 316202255 876823475 178606967 725148397 102040855 152007899 27339053 485074936 809687874 832086857 624225293 822132949 267396958 358041957 872379185 925098314 799715865 910201067 168277193 651321110 6779123 988088601 872040126 958081332 525181762 724066994 986311561 988154053 980673378 990231811 953316914 987200595 251965625 491358906 288438009 463167860 47192700 569608133 543488284 840537622 570031138 618183846 726837699 813525775 2827234 403924487 633110676 703072298 868260982 986936517 515776337 800425589 622256762 943948250 602426145 735772650 594310756 902623207 824118033 859430887 652439671 772722637 182216076 649304173 853076011 928250446 10612458 390144683 441759862 707121761 6107155 988508876 569143215 741283978 233794428 364559462 918519440 969373402 901227219 946348352 525167374 617003352 7809428 673072759 350882356 926834984 149953271 608445739 541979026 770647029 139872374 789275792 681892414 756247735 411178151 711581844 980153456 999528375 698942379 897572511 602718874 760781437 945566715 955878163 539148399 608478346 813283522 822540354 585968424 808449213 138102987 350998296 4596111 948246200 484398145 575024402 729815777 879021687 447515458 843765718 715452816 814008773 620950136 973949840 329094229 889175361 726486195 959278970 965620694 988038976 278248426 753468437 85096972 705593243 275929591 326840786 923083370 943779198 18767752 73857410 135130984 530696466 182364249 233283637 896731579 941848122 176061006 539646055 560778899 936060298 482320649 725299808 64812199 85152250 160800530 710064702 710341802 915830929 812550828 871463496 499624677 741334483 225656810 900781698 414925640 785947860 339644166 394060262 705934523 886471667 568288705 738178964 737754367 896446510 800154005 831683804 518098594 653124633 757119527 953253694 911450280 934081134 441811995 578356207 384088806 666731874 158411181 923887086 419250775 438810980 511436267 900366300 358714703 596105036 152955536 621948708 184200711 321309113 807935183 861419848 234090845 554381114 815536636 928348346 64248643 333376359 622835038 979867705 268409793 400777227 388648463 698941482 770803119 894370241 900372212 987588599 685679811 929951175 899901236 983248171 708436072 856477450 621825051 704738494 476441223 628955955 793014515 869831816 785749540 981645799 398475352 885308081 767769654 941912337 578339348 863999179 106253997 733590858 841915978 961626130 331312813 818640770 690869762 872355585 329643441 458505484 602027287 669351289 656864205 799398027 30332702 693154004 50738739 582327795 360964081 569270901 789372848 806437810 828832037 941457050 697589590 869835279 725028803 971773667 23954288 714302953 160280412 711987259 486753630 960397388 195458070 712805075 384209823 982100429 212513669 798308055 314790759 988818911 36251941 628195602 718830570 809734677 732077429 866208389 252627771 328393667 129489153 190723184 712586741 928875249 8741583 47407616 673525611 863911043 753991099 935044173 607887801 930846640 834486999 920984016 82451882 730588986 262190663 584459562 906289115 942510339 262209084 862077851 659612908 975935864 586909602 975465191 910249314 999853239 434648603 931486609 263275763 529417756 782104706 802832432 605712077 620000780 28429362 569768137 972391050 997128395 493275864 720479873 870035105 927232849 113756923 566167282 75728677 680039067 443779029 869045321 811743938 849824784 63831060 120731761 986605409 993489430 392121514 506342490 791525001 986192454 862226614 884002595 910040893 960959450 371203150 580099149 306548722 696342002 790236376 908533419 282081214 308059382 179065007 653834831 604767869 765188047 615832797 632741478 571151465 724352544 859076457 939229327 35589577 280201536 298004383 454419256 94432797 411613005 207546384 273744358 73538459 952764520 364914879 771083842 552575125 972392714 356466527 792226628 280392838 290290375 938345535 946042919 272872158 320303971 535861361 991303377 492818924 788783142 27418950 500744784 244032821 434613214 51634236 168708950 60348424 898012491 584827420 782933314 579434199 612390724 782327268 879721685 130233156 241565015 551456167 795087640 973573332 992705585 608571973 833778079 842324233 885442734 276574801 884324557 390709368 900063599 833296706 858598331 438745354 760345786 71427146 383602671 186925404 415864985 464552656 604638003 758373032 922153212 100166368 322774082 253940031 257052804 770934914 868856868 405744790 791459269 464085369 767019887 482206600 605310732 587997009 909515416 863334325 924205375 606417331 936527914 25243486 366700510 351621514 911589633 21057134 828206014 354734738 587197047 509499998 683729042 639033645 934872379 746277964 898776579 558581219 604742114 342215608 874174301 887841445 975719271 85663554 756399667 173090689 778165570 191254727 418805844 149563360 488436760 571060439 679607678 752592194 889312051 285700498 638946303 830478034 846705725 839923508 996315760 967406031 993225658 863937443 926723720 715073397 846440766 509730802 702207459 900161729 970469124 798112139 927692088 347848833 531550787 152319539 592266635 264613428 376213290 436348152 928969861 869048567 903261014 841967939 909943222 593089213 635614450 250427716 990397817 972946110 989599731 513649460 681255101 326697496 582499375 513205748 608067930 815287800 827574740 974078568 992650013 513350360 831885429 360806998 383333703 193716847 601257623 192758784 326596673 775616819 928529876 602490840 897825833 286221652 841033204 161140612 858915139 758713679 767291577 559999258 697551955 219130615 262134924 61765320 622942267 426192049 724463251 40855532 928117418 437447760 849244739 866310571 969109273 419130527 669101082 616770576 840604984 674433880 846335168 451185971 745831408 280616441 733007150 531238777 660730937 649381290 678947488 937893371 975948450 514927620 551671489 35427061 862576601 169097483 614264089 959981368 983921534 903858186 982904005 139015483 330251970 813386577 986686757 24093250 322257928 315641783 548437128 169741588 805416312 679815090 916184075 325895798 338651661 655910058 973044302 32408642 153092667 225199398 895226658 961952377 964315923 502372928 542878293 419535369 640299535 347631947 760608624 745973554 987002519 289406939 583628065 398729389 613686189 326279373 717303011 526881296 739393576 104319768 116412662 966600766 977572847 770907013 960449180 549524199 748427712 369134755 812356735 494345499 757302111 92708789 418926857 379445827 664177240 966588092 985387093 278402570 463800011 560877934 724627066 13008485 565815374 534319136 596258700 683412061 982784202 818168997 899875396 698573143 861639333 664596972 908731260 566374120 894210567 309539575 929628969 822056471 910934153 282559142 953232622 876289365 919794210 462765761 595321351 199727044 775408638 209673213 549001853 456711602 841496538 256830570 890003735 773266958 952436314 99287183 954219106 58360490 224945463 703040551 903722662 659084482 779345181 748516002 922932567 675910473 809359218 664350371 867554521 869786464 869829638 726284303 903989508 470189654 771981683 271845067 402831384 727930192 992963137 236340317 473637730 761180712 994292042 214037690 566644696 691749975 986209563 750716015 850265164 350344194 385580028 602215268 707004579 304210164 645053520 669751659 816221654 418166429 506481171 762800316 832166850 80126300 551544094 156452451 549397810 294723480 869847574 474423843 697768372 222833493 980381505 15908321 797705255 389701374 964762733 72520013 602644514 298338591 983618496 587135969 998430987 292038165 676361157 983491717 987393941 297330326 996580858 166633067 384425616 364366910 406582184 949103019 972183407 551286790 644608934 358171336 632913175 217167560 513449730 859349223 984086728 540741177 830102456 312696073 798070766 989659461 995548910 226444501 369245539 50223426 844663743 894930747 940550327 281129519 558801326 200039937 686353617 465819553 783655161 969883450 979431836 171758515 703996629 888956089 998176233 708717070 710414795 266393096 341320839 721112647 780166703 11044156 167335474 169314267 214979156 732631291 995454835 200335868 935008714 635936234 998190460 572571892 961118994 42546097 276395983 872949029 885108473 269709577 705294909 417925893 898052629 667794523 912862202 360640809 717762151 515961328 834254728 125665204 961398450 282223809 993907553 25195162 805410851 764919639 932471034 502089446 528480776 100679859 894607787 211175315 488648769 909852383 943580170 235783993 599667609 910505397 961195268 968598884 996889466 963002843 995156408 74604333 766951541 220492525 520894623 220246218 275557770 328142993 697859108 567678059 702841690 15873062 197091147 949600476 992280708 392275464 850323643 420147207 840472182 479176165 650079685 785568658 942054264 649224118 938130855 871022589 909926505 117811463 223314642 227854300 707617247 893195598 947535812 130121254 279362268 802399402 956444384 703526097 813974475 206306757 388190819 968800003 981665150 578671452 801992713 314918210 588144519 70470643 87199444 415708490 970932980 15566272 96514874 382712806 466737912 138463531 873369454 527186848 878007749 594527751 947011141 462907908 578352812 54004774 793771567 334500939 378536685 200899390 911267613 76866588 689869616 351425807 904522367 76155390 543766066 170479729 303387140 67354444 451454614 599492664 602637399 85277403 430588072 955285431 998261665 108016289 481205720 826300478 900255579 635130346 642627736 122439605 736203903 609548903 699695076 328442408 805919437 744035846 881127397 937561305 958951241 765813770 784596841 417208938 563174393 261236927 662328161 236659963 347272719 877042656 884965108 592040865 892573115 663684941 966160257 504072492 683534496 245585733 335625979 624468945 964305126 854909796 858226750 834057906 957526706 444988121 956246343 950913647 964223348 963296857 976687960 71920178 641745870 748682885 982838179 831018587 862504789 503912266 828496307 821426281 919331185 732262314 994027502 988597617 995612741 178366858 939965166 829742465 990143776 358187362 591219503 888417168 919873279 739375666 948654308 896167876 954094941 193047884 824625264 640023568 975179429 52152952 101932357 792159736 833726791 990439982 997189119 700891267 900745902 263129735 609210184 954338025 958982153 789100344 932616031 909306560 917318858 124213749 566756866 694710859 743224975 486358674 789647403 493624250 787574625 986884081 995237007 477645915 784559885 254685088 730715656 253122960 323242180 239475732 644735309 277098803 917254016 87663004 626627426 724627043 902926570 557035019 703198250 996131533 996729108 510028132 895284839 98687709 264023786 107461086 461011417 534931002 604237807 800197040 876387273 574778831 905443635 428215019 534155076 700253897 826953136 612730088 845840379 401406306 635444711 609182423 610790951 392281141 799365435 77263484 564572913 585006806 781172232 675334806 769500422 229083081 858519040 894568227 900594816 688298725 744027231 690597068 758961913 407856133 964319414 126187623 279811879 305791065 624193507 134185988 475934795 922260934 940753296 13964108 580286276 973320622 973613638 494013178 978593801 42236109 280489194 693985994 750572858 814392126 820676124 785132476 929892065 105865339 322668410 371066991 490561224 730989746 981933847 720042027 759777797 860090287 975376049 924120690 952155737 68052586 546469244 542758255 716936411 138425878 722704449 408504219 637170320 609075203 978957176 578507931 648305032 250618981 574378644 794853904 963991096 906498130 922546730 334468237 980387181 699184016 919834278 8889688 934139423 147513849 803714124 686532620 763040527 502358610 915441419 127647318 587914113 53863535 785835861 579782437 625319324 587478205 674948931 314093184 821128567 618969908 904832610 353088959 764756751 849246619 969133035 650042306 862986437 282745526 850796462 828399052 891134701 827080946 957135881 629050018 827773571 96565070 682123135 580020907 685057289 903848099 967357106 511662969 862699592 52076995 488100912 200650540 844449264 303812380 935911633 725940818 998588027 904363887 951742689 1449975 96410535 66150357 286999272 201506744 921752572 238793194 475598306 6087344 613161855 39512385 399043855 186672466 920642377 805500338 836306056 640680545 791539366 838865435 955027094 590060346 601464238 220772415 959969138 913352603 951439987 954057150 957194626 271680848 988471500 853641119 994232902 505013594 728811604 46679117 625731022 184390166 718904869 992702715 997835435 660795702 834747997 199193907 921799900 144984145 226382715 346980952 662373635 282643753 489209692 588455629 684715220 257110045 634689857 867595371 956149243 784774525 927311688 770089720 784076586 657003880 974746184 921608940 934841517 895636346 991196704 854825683 883778583 497991855 644938441 146498033 872609525 969943359 989446932 634037221 635943598 608756204 760540192 721596944 775923779 719702988 833429528 614485961 889793040 823723669 914279960 333628220 816106696 22119957 841769905 567603381 857873524 308488312 750848277 332536360 918681042 139784441 281466988 966156573 992757459 461613617 525225715 605629426 733432682 687626891 853242998 918223142 970411725 211670006 988051951 753841295 999019721 527114658 758687638 677032958 850178759 741161529 989775210 311646046 472314414 977905793 988307153 75579964 750676545 581138167 837508242 857669882 929307997 888492306 975091971 327639927 487502927 342659703 715216929 573884567 901468858 241078943 380814940 338066534 719059960 911588327 965264565 302706666 874848516 863783753 948651703 464180823 484275673 524258548 619801387 145840230 664425703 524235786 614241096 413806031 525136647 153074317 530872323 753183723 955954111 238421889 857344813 424898973 561890869 17560203 824408658 755261064 998254926 834971995 933742712 381021661 473912323 477139876 533534383 713569212 969395875 812944682 913642061 874705795 972894203 65497828 605890727 996938380 998445995 368617931 425670414 863089926 986225256 618888214 919376780 813067010 847780453 973351044 980399633 125412149 174501001 564673281 856828335 334966939 765607063 653241197 968935696 627278721 859388188 612465182 709186375 157466000 700072852 724694889 949657298 586827352 616921457 652532183 751394082 805661920 864879519 384011486 790517994 819207399 885362807 166849853 918467305 895716751 918685097 221612156 861717281 963168084 972300935 447160257 451111162 275084721 681049110 698124869 838334598 634859648 800448763 91214002 938294254 875546201 970203119 165109700 276559065 878863242 927850449 650425240 889426985 828752217 975131546 300234280 872331085 10002815 127916589 841909026 942439747 631802491 703338726 802261343 802973513 671679443 747267371 688131245 943924663 75474112 143794648 633401363 812415192 445869926 990077896 522033249 913287139 718289740 772377341 383463440 639434091 147742442 219134178 493911539 851173443 3720967 766645173 756318508 896418122 403664915 616932217 415810267 991180576 39187570 355275503 147600801 843251941 541237809 659679582 161386711 750779897 238542438 321347799 715452906 823439435 948241669 954878670 688337706 912574099 940472558 941575746 433807330 879510656 700781197 731075545 13208383 64004881 678903386 958161672 121201699 431172124 572220177 771708148 950127266 984589015 60279488 989845749 765389154 893241032 279907351 420095014 562477867 939003146 900263312 959850612 191402734 885868263 310914243 797067834 268329283 470806317 39942481 373358276 84461262 568723350 388054593 910373849 417553424 939996201 842031226 986708869 444716522 726067652 949243179 962884757 997727078 997884207 561810140 853970999 390819014 659330786 624997167 979045128 888109902 898160778 321265230 352560759 192985284 585290085 414508114 868565878 925338583 970482895 268168341 789239658 554474036 996900061 702061685 759895101 412510036 592305227 79738352 244036178 370163307 531200505 555497580 587551660 564341686 975774614 708250940 865279605 42269354 779790636 342699131 546205823 324293941 606709898 306167090 335536818 94618330 522734248 795926649 956095454 164850367 834802855 546107410 959555512 497748262 613125778 2587217 854195638 68622141 167673842 151732444 225321092 635192770 805008112 861259018 968070269 110855283 323482820 332150616 652313202 842467801 958097922 520578686 883938885 469815034 591620642 393032396 508264562 402623166 874101102 559948872 899890802 43999962 812855921 917992092 996693339 507859607 803859733 189577424 443156282 614049278 938150378 137369630 996013969 839575397 930808665 207078665 592340154 5993979 837926552 234076037 634630294 804847946 990601580 109177405 916945237 493522372 524462416 909096490 923886710 914052198 949827997 929601087 936022102 910323667 969483179 515841846 756001526 939028607 972301547 605763259 686041335 541933295 939532979 587815372 620484554 976786195 977239583 33817917 401596256 68527024 991830242 417277289 878354089 474251537 913343454 782647018 965644422 721793240 749826323 199005547 478902280 552380120 846731083 637526812 853351822 821115400 887268500 838763952 840153818 92118169 163049256 78982850 617034044 634474288 679167695 443436439 815959407 465946227 536542392 675921964 687834501 493278218 741931067 264214672 500941790 135443785 377406224 123441586 794365434 197823318 717635933 342789947 992861605 689360932 958302976 978161561 989029451 264424932 779626662 265950265 395351297 647392094 956215544 778369761 781758186 848087182 959900697 124371072 433391655 500501342 807883737 430738677 762035703 863992149 952422100 938066865 957512208 811091110 987939874 210170845 351872386 712918353 760808629 452487000 804509953 819296504 900873719 368185320 950941759 509741177 757145048 719524718 930159205 613530336 742072433 824965016 900702793 582150824 992854747 446635955 590397858 365168951 867685939 996987373 999328783 332469189 703853763 459333361 653520298 978149137 991939638 661468821 812911518 355128412 621029034 220487544 255833088 844560512 956201451 857120802 950055697 856784086 868626530 376798646 463699191 586473590 850752345 65062325 123856019 148732760 349794433 295600455 775600047 159587082 191115380 822611018 980331131 778877424 988889981 106018956 129701913 524559194 676159922 626005188 745178398 360315649 794832740 462968337 515388891 864354223 899849879 730510381 823592498 460194172 953724228 289297389 689499819 203246805 792841469 159197764 175699953 44536482 86484616 715967611 955075385 689112711 975834873 384560584 495521528 100455583 202405477 184961479 880179945 344141265 734036876 318069595 929415990 93593630 961545601 697687861 902783632 961986631 975815182 650619388 946310273 974310225 989212607 822294078 933088539 211182379 459077710 616985055 837483657 260695888 346474306 813031808 868331123 726218511 747164803 76930488 566171448 556438796 582695717 972626977 981684082 868845634 934368221 346766751 939734967 885824630 976879438 210464303 219645561 84380910 98581089 421731362 431015945 603464285 654474104 920209173 924512790 727629974 730755465 773772821 808901476 390354516 965049400 151639371 582541434 135675000 232883616 430284567 588108400 167923878 194411456 840620539 887664512 138059440 966691677 535136685 988388802 757761316 959106548 356048076 963473856 557549629 590812827 278807588 820351038 16802952 844804985 560281582 607629584 259747319 357782507 773871954 869853157 673636312 743617289 209535457 949839970 464246439 771745963 387901958 733206833 866500166 950242219 110665280 890658780 421820399 985838222 974696761 982107744 867495619 921237392 695458649 750307550 597426238 974014936 54214293 786299131 377096586 899305593 8146407 885133901 100401412 962606499 638554134 757424999 214130118 257812676 979436382 980225968 194884464 462754288 753447811 830038163 310547086 525668888 383154918 662388547 866674696 977203212 84645043 294784503 862902301 968756325 66873934 510425573 114956317 512539325 906524800 956429614 36895259 332777568 101495963 275978808 634927584 902153129 558450392 709392135 271523414 580346625 87866915 643277900 658868167 831333448 749594395 758274451 811222593 944834035 733012804 745782044 649711510 878077701 425996928 521311990 744290787 994451145 690965186 847359535 616508654 658185998 990648207 993819359 642434526 985186350 706153839 941487317 403032147 657519429 922139524 925196004 745774524 833427192 433360290 965148403 147063630 235309339 486637529 609046691 849287885 988340949 116587913 722829815 246272888 471969186 177235441 763227596 979013162 979715129 130347746 832116884 35768952 722631803 956328030 967579903 966249888 997743700 508725195 715607054 214531438 886046487 313415356 356138176 25958104 847246942 427431027 809010203 723106003 739109822 862840517 987597963 644404728 850096609 258002392 799140564 198203712 768234636 892891088 925505632 433537822 539551243 277694320 539273399 426718440 454213924 401760481 788047488 137610121 185492304 158227975 398820065 791947953 949805244 473941226 919881996 815476118 914475780 59104235 117179525 657885815 660986371 635556089 879288415 656804819 876852709 427040505 617668240 429405363 932681666 326612365 868989937 305671376 802073255 900228212 998034534 458618408 566557269 452506711 492568404 334807099 846940292 104719036 241325801 673443837 674006623 530135777 983070576 2426094 168769702 650034288 899233836 737573902 995251845 583908393 812052542 649952563 822362632 654988297 657865666 467587987 526128192 556171424 625977916 754828827 759037058 936297089 937217620 426747965 618318534 499711518 698887752 832481077 922020659 40322687 883587597 633249681 713289770 399480313 865420223 281731335 751950146 30134330 944432108 179329049 200751307 190754738 741847044 506469237 886580267 546211941 570228303 432022843 979251263 194580128 794445850 169290014 526690594 304672700 840191092 727059732 884232380 555063532 812000497 726919996 944634658 467539726 646425253 685389582 968384519 773804096 998359704 642030792 702983249 371092461 685082010 662929477 890595223 446363473 787950181 352473774 458844028 157290811 253777793 38393377 920765136 31047259 764329034 392998631 914211738 772948839 989573502 549363953 689273381 74177454 132178035 197713214 916704789 774511695 895815685 22919629 91313554 260480983 571517807 953647709 989309802 266345306 806041364 271800460 519345529 350689009 995684247 744912783 760669996 932161432 948566078 781617512 900204746 48192016 255137489 667620191 780372507 197042218 531449787 51202911 785569681 242597250 848211472 724275440 882116998 77439138 384849016 541527678 922732710 38926671 184947771 388320181 809604320 555210986 582638439 828068465 946493840 897636368 928764804 481354857 873615607 366577935 716975127 993740418 996485037 157767174 352434825 812591748 877587954 744117919 868726138 258295220 914727440 100042982 644353540 188839595 501793715 940678230 982783558 44851951 133111722 915178757 965672190 829273124 936094925 18931256 856039029 859254111 998341595 122279147 863338233 575436329 783069069 36327469 185251216 256743694 353095189 967998865 971409871 483961127 756049673 828760091 983007664 935781705 998979842 409309315 654461781 616344350 712003002 612254652 828841702 165949184 207792699 786271725 825647405 402098669 935486700 597966295 624166817 402277436 640080756 790060904 868682221 3254493 567153785 487835609 881443505 944864312 966397419 210064536 411986616 32714357 576716710 730861513 933369044 247888627 966831747 586825765 660119005 170520650 806010933 739570107 990109588 863803015 873860883 201095177 762035505 329256481 467146967 202367207 689198575 344620240 804050986 60302808 761898378 678184476 839317541 485155914 752193516 172581439 267212645 440826487 763308926 313801067 726588451 312814604 494810437 556542013 962131185 740789346 959077664 752019614 806736157 313836394 527511365 712256096 870743838 900680690 907030691 30143975 395379644 981963662 996453543 915787626 992167789 767013566 885440557 813669959 998160453 534724536 693292587 880574551 908355896 80641340 910994608 267545596 666685952 526030065 740685505 323321272 622659887 430528901 945799508 949014078 966960908 312125510 689377571 236890011 856785954 91204079 900836194 47075465 108011817 621389634 758632593 158269119 681011885 290636256 955433368 619575172 885769537 537579386 961638609 915880408 990667988 124932017 991147054 898282129 963314921 743443612 781476768 134928852 572439945 305550748 624041424 332518098 773333667 888625584 972823682 665217428 747540441 728809641 905749118 733855613 803699751 363957609 586748814 181435936 325750438 487407979 768938329 750179587 826358220 329092555 371076504 160279310 495574021 233852685 638253498 717838647 862661525 443342073 813713863 653255569 800270222 541472541 657613788 765301383 801718796 60261510 700462547 918766323 964561555 759167720 842838785 584315938 964004736 702395940 786195046 687253339 825294757 292157354 835932375 842354965 980567349 9430251 214857380 790862606 829375884 673606385 715676929 297512642 500870582 926532225 948714155 560709926 813836543 344207966 504879270 1419131 86589902 694213939 789362460 231647506 233330502 960319970 980295029 117425176 482709158 996534057 998424797 577948038 881345828 277311797 854237673 686408517 801745052 104565858 239707144 36334365 449978907 754023429 847328608 762053331 772727416 436866402 761227492 423186368 871395330 285454065 306743992 364094071 772684665 789758328 871509819 424898690 587834336 378350220 424260302 438401801 859547767 418866781 685824953 778069231 786938099 368075822 681990673 47003018 980395348 117442491 821111194 722527931 932710570 387384936 441054671 74899899 347175846 154884588 302975933 310842794 509780105 514268705 640133317 49810009 190356173 580246305 592694335 79776289 949098051 64069688 432162946 450981981 643526031 986603627 996130129 384527102 872079761 132600791 158639014 934953825 951516937 63886226 904159504 875397054 950785646 134805428 889190325 831223244 966622651 745920286 867450587 807746165 854237073 140269077 617069373 649954435 926212764 29040653 287981532 426127813 682601928 449510992 924292408 79490340 796274607 322618395 789998358 711897359 713151631 758644134 899638472 414555555 494240793 824732802 880304407 730861086 799290864 857346860 870586782 53033057 562891475 315474783 923279570 820808285 887966690 378233784 436171106 583471714 816377199 295447690 776343488 609757977 660806864 825785313 834431125 92475125 716666038 643105394 863860701 434718074 903192054 689375098 794336135 704196889 746851283 954978052 968178674 909681027 973774117 782680443 897621763 687779169 810251927 756332087 975857367 843281755 950062045 305373237 969459132 208228721 473936035 852953218 933130861 46608316 642326737 770026682 923721113 305445791 341590724 96521874 373199720 861743033 937789618 362358418 615299093 383778082 838855300 665297000 963625885 611799411 743746833 224756659 250116991 73726275 593599729 126376230 543030669 745264367 989398717 511127683 891664039 442531372 869991613 329071524 823219707 507804142 913640723 407471482 863986999 157738052 305664184 617749553 791138457 569341328 662345735 923276326 966960840 295242753 906654369 61713820 810824644 477549232 649199848 8748731 505667811 12890850 438941063 657104148 860360514 539542434 898178667 782641069 918389383 542209004 838177059 133496248 732804186 704842139 923008203 16116917 150581155 829042668 856183567 791942788 868425816 881550817 970617693 595339631 792626377 806194753 837075512 708271499 853535286 573492501 841243488 140003856 191849166 139855849 742682655 161541204 501306452 959937438 974701713 63576380 423956862 89720102 465886498 744418525 936544266 22491986 996902309 938471085 940589721 628254655 750084315 800267704 961547872 424384239 558663599 269860660 949125660 560017754 581785080 436551204 677140096 346279535 363169898 406073913 588044407 754082674 826491181 833756471 980253303 756529445 817675313 65059048 605630683 482827671 986672085 836492167 874441139 156504283 673066516 336555624 364888381 203633883 655371425 239184989 860722229 210157253 857906559 593060649 866435101 400113982 515156495 797551866 812809449 536560580 955482912 639440188 908946903 48179584 466584945 858714514 946805278 987688495 995528466 584006570 797693143 625740786 992578693 292238749 687791669 125230211 519568040 708375198 916472949 478033278 829523378 207420828 609128172 808147345 883710015 567360066 597520679 389864734 567241906 374335622 455382077 836674080 863339964 317103068 770685546 802822519 986558733 972007520 984787747 274560832 714880937 777370445 891150521 767719562 891532755 11080817 876873069 415323008 459955681 321230556 440457419 359856335 648953900 719210251 891615196 385588170 501913282 765419823 965814417 678482666 789554147 508195550 731905449 799913873 996504858 718938281 907016987 83919986 766740141 655131311 961572056 688064946 966160652 485095930 877814818 156788192 964198343 810474460 812928731 926322360 951509103 511021852 694691556 325334837 789700947 938788975 952504627 510739569 583729020 257349388 571714827 824443052 933863002 985775497 995164746 263916269 309368831 883624858 990047427 414451825 550893623 644126000 948694859 922983200 956807760 985376649 991223547 371254165 812105710 598130847 974325976 947436501 992351038 647954408 789738654 118874158 498956165 107480835 209471900 488486531 903844239 259538684 934617982 398464050 768209847 286957014 596950011 837886805 991610339 109583843 595666960 247200340 885019939 218348589 423443209 845851998 971597643 874729993 890967186 136425681 988291306 674338816 955568114 399652359 514024155 313079604 666927106 164526847 428505796 298692540 760388560 4457781 568161663 270649055 334351678 768680311 966812200 111093233 395671931 532789305 543617408 622250352 730625698 312840013 651731078 508433842 997863967 968555297 989291874 405225650 987876225 304037140 776003038 142394679 627719135 369080489 389567438 361087715 925858785 159349037 551027528 909384360 913998807 15147165 573563812 261568390 350733469 828009377 996342233 441640659 451689667 81994453 181473952 850420335 945629335 827393874 835510222 508880504 601183819 248495909 892201371 677220870 764883875 877812828 954856846 916439804 931963096 902835421 968870746 174350089 563284829 385086621 508743604 184456970 663742521 142339817 829452414 50975437 522836438 267022313 599955299 734844092 815594474 882835918 944670293 304495037 441963406 497912246 540895678 391471172 726627814 920680727 962389305 193064895 629880644 623699335 736973883 551829446 749035323 705576049 732958015 183346518 869623590 959213688 971144251 555196692 971225630 81338349 906820574 114495521 356744253 802386595 928891424 484045900 576561673 497970785 745703986 425025057 586991566 103738356 664011526 382886442 584925515 346799703 678299806 40757295 46673208 838936165 988092327 870734814 969004589 931012738 998389918 488401842 810640789 529357719 736447646 417652824 495608913 574505359 680348229 946903779 981121747 383237598 638910253 926840132 967191064 82791012 563117787 819357180 992042471 645729782 751731329 266296890 838154108 734054581 911291974 432566818 560772042 934082703 955372989 668691122 868808641 581885160 921280309 542300401 825440870 290285042 843044551 896033125 935703584 672170194 765649526 188560510 966831598 210696263 495895457 46245512 103432923 527635167 821480269 238765937 832275881 970257828 981573505 16668913 931313168 469502281 544648594 70743596 95428394 906592735 914940923 357725673 689198462 689443520 787222455 377776432 572429883 753163426 920233260 423183148 785576645 845920046 880388367 908572266 944575761 150841560 260140733 288273420 621546203 475498122 716434977 185529843 190788802 215768497 526103787 434716852 987105548 708943189 991811406 718485411 958151941 141696799 995903823 442977597 646008987 16824458 978790753 588068133 905634567 417611627 781125044 672148751 700397756 961371316 971906094 981514260 991720334 751215307 837349140 331321254 485393112 375242471 539232220 683315689 765117653 201233349 363768345 43010637 240859156 826637520 967660165 208805835 353557109 157149025 368478056 969402227 986851749 444306993 825790853 264654667 495353237 722296370 739566509 277152017 746014288 167616572 904636141 927837949 939739202 371103618 966790042 571172026 670197280 175378676 801279708 577373604 865706568 811193193 835471381 887466335 943497914 970593333 987231823 252075900 435520737 112530904 405099737 241369607 259867057 667459551 963829671 397166300 635682368 910031380 914529731 279209450 484834381 976129419 982582145 787921167 805136113 695204127 986966858 588718526 619445354 848927444 943212108 188820529 610269068 666343986 868293834 645517880 995810568 160467953 196096797 603216806 840797571 44989070 247110938 315914249 969598573 131641425 469597990 120410218 356510975 810199234 987152404 687981857 914156244 621541801 903964705 463218754 758808258 154101736 343124350 797160353 897905997 614094468 891964620 228653330 984664256 667623003 916927738 325480820 759051673 706308811 964405489 939183442 970631933 991986367 998466855 818299527 822191523 496339432 763295482 128539154 269247121 501064537 897774588 741831329 998736283 633130737 991469907 589664502 988392977 468368921 916749925 877133511 979964291 696826204 808561239 646913316 793168618 555765730 755028001 414913651 568822088 681441233 963300165 851012490 913706103 206774182 944009216 78345434 853647976 947500455 999920009 500251218 555857531 12819526 834664078 402532268 827634112 272167193 797581536 558808695 838725494 126082762 258115698 628503806 947931309 439083922 569106274 909930689 983293205 131270771 262175518 501598194 922740458 125544112 650968432 160422407 740082570 471626057 868634313 105745761 300159711 419009767 551989601 572124822 850466310 183120990 757135398 858898385 933941456 110133373 635764686 803961589 938447954 426571303 614692290 874022194 909079474 55183262 493539911 727952304 739090623 155225092 629790626 130876721 734543957 402022147 753672300 859908235 983445624 817889649 992674057 392255678 931206723 848129992 870766166 192466671 607293532 912677931 933238761 24852005 65790147 279597390 866412486 824233634 940671154 182490864 919309559 832962778 916501591 931166487 965901365 103727494 779476917 71484108 503006533 205210990 375250334 880769918 920251111 613142654 836364955 201116996 441811497 8320064 906058351 615736602 714647282 725643476 738810853 24723272 88100213 444239454 760838369 188926429 503518087 895970752 930612068 991511198 995611536 497804615 667898561 725115860 917143867 11755846 846268445 218360825 434386338 329915843 740108149 232757671 407738526 132559393 370329254 537106889 754617983 426646772 574973363 363179693 958477580 113683868 773613605 552731713 734286937 16822276 481870104 993776836 994501136 829789775 896345190 663321766 690516387 220232902 465612976 291201742 757656947 658025806 817033161 994367233 994378100 416871741 644077968 133714559 280996208 470878012 881448966 844933187 988481999 71037019 991997329 10397938 866263979 364549269 522112781 121601595 589347464 129525211 783479533 637357183 776235857 492681700 794245833 19806385 572280367 285040462 866977472 37069128 579483430 511626149 850966898 936002856 960973640 574327229 723434722 712208240 943360803 154376101 320675252 991441648 998509011 696204232 820936286 229825431 798825391 848442065 854677425 279775820 890636680 373458504 547378440 493676844 949759364 556451497 923705606 783417829 834414284 83932028 811037634 97217833 908584144 514340064 568323896 484400232 651462652 552675921 666540622 975807350 982856875 425106921 868577078 863277935 999258850 257408272 441957208 323291579 854305031 254421664 479784150 295562656 678502681 918346510 993722711 119923348 934112223 627556290 650022102 788201629 898767530 225727182 245718417 968746774 992169905 793642218 992828210 127812896 734427911 819575331 866293757 68481873 430247240 204202989 711312058 915268411 989043697 55142021 357422555 408950366 842263684 119947171 873430786 676476126 908689378 970374146 971142463 749638650 751401363 865407773 883125436 555200355 856444975 57056724 952469002 137481822 839996988 120797721 745716382 147219101 911630841 125692644 517702962 112510460 556338270 409267362 696282338 998745559 999938226 872818170 910963952 231983665 334847907 126648471 920642871 876464591 941771463 781085256 783822960 801065671 929058767 744324142 887347163 411059345 749256168 56050169 593592167 537168467 925126965 66587559 214835370 586676315 660166044 3058693 646280896 708992593 804996797 304819541 694176276 277602730 725497197 290311431 354686346 956515588 957083910 458526087 772372378 536740138 863775232 75432411 260669343 958149706 958294673 903109832 925331613 642909745 772829362 764176312 960250588 143811968 341559379 62000675 556821332 365717790 672688200 989637136 995951526 84496775 958186275 578048162 865061579 371967887 460320407 662134761 818103483 304272991 359754478 518620878 831472340 321543923 438247300 416113651 998888044 420144715 430920313 703681749 979654258 381340582 765404787 264229733 412638136 362367675 623508532 208027495 805648963 732222454 826540603 873266657 883359646 372107096 884226282 7905177 727429990 229833505 641316311 959377400 961717597 232638051 991386511 786856217 987157742 249486857 873122576 621082805 867449610 715967067 992534734 330942128 646367212 4653504 436347682 473458664 599379822 399086410 504514590 517065425 698876763 428922534 446687604 500520749 695724746 778716847 945126283 431365745 762907316 931603954 933383562 290834332 695869168 638670670 908168369 552049632 851159817 318562728 701299975 633353166 651790784 288545147 424832556 660352250 689650089 499553067 667171992 206827897 526861546 497570141 597765781 984624192 988619674 851788132 870209001 45150422 254874856 901186041 967985163 959383985 965264032 43433460 351000106 829980750 926950548 388122112 551607166 132746977 331609733 293968346 911361621 345980904 541294593 150300230 435246064 288378512 478866301 27018085 318083373 116325065 611339683 437729111 557518329 508338466 992470007 612370599 805434988 311451465 995287712 871947490 901515986 743656398 766210588 597594274 793835621 363582120 800251047 19700408 816360486 546556654 692880003 639436118 877516465 591062019 905156481 53171688 619317868 898093781 994679574 814871634 824249844 817863458 868334144 213824992 974327384 890731454 983359154 432773060 741282718 75975835 222222735 610087938 727901785 877458395 951914922 601994243 903627059 501811029 645418154 25391466 272802433 155900678 425347893 825865209 865253747 782763280 875464008 453633523 735360931 360812074 793260554 712785947 819208232 863580851 904984082 444352182 671165913 66902620 627947378 689761262 774742350 300361117 439189712 635955458 991816674 903822410 995200528 822770188 944569270 342229004 594648395 19061419 793579416 98368716 725894936 468225867 571970347 933484540 937379651 550634339 746017788 74838462 778128411 233290487 679047511 936381218 970309987 170503193 544264926 711763322 717296124 45709275 45878661 514902826 687741165 499376152 788604838 287714650 489063165 137116018 349415600 19560623 864234198 288434973 649714363 17101994 274703412 6070312 514582930 657115704 910598974 648093923 820514027 62116695 171294441 759241159 920567719 6198324 404554037 98370243 940139876 406298038 754572530 904412385 998431933 670867722 805275986 775889734 898943641 497952731 871632751 261295706 324210181 507127643 719434117 644535314 952065909 195409054 681835313 612791271 791737603 822978979 965422433 307196682 860921272 624102921 873132023 616488197 729624426 593744878 610787348 257154880 456880461 346849918 448134627 95822016 464576320 623933755 879947338 791692887 892675432 768248418 854057829 726764473 792226302 173787950 457959429 261455383 993860602 320262989 977396377 79085067 98925851 558787848 809891616 583509300 645134232 389583763 503629138 771478410 894936082 304715038 591225512 495252829 556695556 369602225 791875750 358282445 584341718 501701074 636206936 285557792 852562804 911864596 932173859 969385723 973650913 375377220 476773606 21394859 290261690 595803061 730658650 715041224 722838790 941689747 999278092 790386700 803157083 309736253 823076901 780272533 801665239 915390770 957179782 79855950 738521779 382221330 446345918 45429558 161839549 60165728 363686770 88321557 954109572 710621168 886855877 162842558 565263810 855648351 889610863 817098569 820227911 423277367 967551385 29110339 253737618 594892847 738377809 892654462 986708240 208650061 425937027 584951348 819432590 247615719 372159210 484639680 633826337 759632514 935077720 1036167 21365647 776881966 790303714 965144312 989866215 88910661 958757542 887356339 920408912 510422162 883096042 622065562 738864493 543731775 595328143 968859878 999716939 629742000 731272338 882480802 895959501 54627167 739315356 384197521 466667663 538042388 553378352 110562999 809867613 657710069 959532385 78050243 414827776 718070996 933319116 869414679 975633077 767851301 918565550 759297279 783894977 659380805 784365569 836384406 842353328 505842262 951889035 960868334 995602505 376612891 934290106 291927568 858472847 445452349 446736490 938562591 993213936 763744262 972300666 65094137 133911784 313354346 732385873 579429061 803644847 727487807 911775501 688818202 756464519 820168460 923080643 488223657 715417887 490353005 508996096 886187739 954849184 793222462 811587980 61349232 196492059 12132705 907510615 663062668 758354630 371624624 566490392 20042752 620904826 834342256 906820574 184597242 972682467 703716329 833172441 233551153 582526763 42927876 132681169 291087086 724614951 927510679 979024908 945643546 997067991 327257742 942052897 857028315 920307404 4439107 68191935 261651795 903341468 945332277 966892474 609565382 822252585 728184950 744955436 567983246 792478991 210031832 977567544 160341162 235147106 706285528 975806203 517422583 531156668 388345864 851826255 136165801 997056726 153029428 161034809 780078691 889997548 990040051 995256833 995706483 997123821 266565450 369511694 362229153 403368656 38205672 987783398 927607626 975058342 621520127 817755082 906689155 927320133 765183008 867294609 628256592 677746886 687077915 803599423 660208972 852667223 330746948 853527074 261972252 447512342 772735583 778568666 142647568 285379575 565771883 968477922 489982536 890015062 382719664 741356860 152500756 415127267 698226676 998337054 218821041 872391889 112518447 180105213 507771458 856279500 55228543 160614396 646126236 914930117 783486289 833755959 726093292 804583727 351231951 607613574 273735749 339485259 476954220 859701165 626285849 818535339 481052540 597472581 285548417 662900804 657264062 730510046 825163771 836742103 679221097 735274153 408221361 443698829 348748929 611482489 463352225 817542863 299405461 534816437 635881554 821803965 701403033 900378705 736737070 939677723 552673019 859307497 568215536 684343655 652244210 737760995 145882881 665376780 801720293 841359682 323229225 736413062 318702528 544628621 182191028 335074274 677239781 833677287 755607767 960220925 401974632 994982476 438073455 940442647 448528429 888807836 259645971 588345250 676372647 801495724 614303702 840118049 360732736 541030883 177163652 355910943 508251177 617487006 329031132 454915641 453899223 898323928 407946299 870328049 403027867 888045236 452167592 554229130 577387737 695053113 967380433 997054952 140797578 276575755 243235840 770302721 396632862 846332596 399079179 740730226 678759890 935376418 177120735 588922071 142682163 996178958 857323474 979194196 494211073 508596153 497918639 817709066 376164480 500874765 452105763 544112783 157368664 405722213 467555250 541190398 250903997 369121812 744167784 797187283 517924255 885264382 851391569 992202271 181404777 185642391 809050934 892330753 426638109 562118295 385085563 723328581 793739117 807551741 309164309 871502067 775677869 865590037 820530092 971584788 234917844 797768677 395495044 704789103 182004671 889031990 26595848 347000225 938634611 997142221 786762030 917191346 431783721 688923495 815625347 847158353 541989033 913231629 645706775 887017972 989011305 989402204 196925158 478921864 316988642 450125755 237602844 523217764 196312070 196861216 700112404 725388173 244636248 283765583 900109544 948307005 983783534 998307780 166647375 975268255 113435925 322391217 466421409 496466557 760672668 926635697 532767741 737446498 408708288 848964550 870010581 880253735 182589167 860737373 637662135 735496947 292641147 874255761 765563498 844741950 391534616 649802076 688911513 798034297 383232084 909902113 568704561 843772441 622911683 902550793 660663768 740501091 567530240 902499524 485330295 839595099 765293746 875795790 92600509 348810145 415547296 964712731 218709846 569682485 581480159 613048741 745122691 884544664 911379976 966058563 160397409 781636833 163736529 221447357 628626976 993940387 224094445 262583112 775661057 937964130 167209210 879644141 472228273 578007751 368659749 526388724 730808800 990399883 948346723 977547804 71541881 259025249 264207932 797670591 7640342 287470962 926533356 967267901 814974672 891749475 792201548 834556317 795059931 904929045 236727310 455408951 164945824 679770619 903876360 940123796 380407063 764529583 466871424 540526770 931818336 957280840 965060343 972070708 980982963 982084746 689146146 770393363 363964802 487905853 342779501 368610780 679712339 736895813 146489142 805426697 750076817 831077114 958180452 997219430 76100344 299480225 861644963 904762103 153125399 845344269 474355360 658739615 601455620 800767455 899451568 949803749 707683629 805751878 597091188 912120024 163227470 711221582 298779037 972180550 623132947 706262393 24754555 708154813 54754752 364080415 210471698 558213790 381592763 910091911 840111079 866002798 829436090 919180467 948409615 991901999 974485555 991847050 461594729 540631808 356490939 528418696 614014060 728725511 261758344 920250663 563888966 734190570 458610533 717553071 105982650 672176751 191648160 271509399 569787790 687104555 320064666 558603949 260092257 470421491 508263179 511212318 969597981 985979622 343832332 993278738 660154756 738302504 377991939 757891289 358225463 750832921 975043258 992249012 200219296 697319187 78695121 984506460 739388908 992322405 264400237 320316076 927533396 953594307 35088592 929959636 6828855 176281643 805909720 890765994 895461794 981795716 936054850 953975201 275076642 899112200 896065249 987531705 307364263 445969748 830382344 876607122 637614537 888024374 766445104 979129236 34081520 625068192 976485764 979608282 615414698 759352471 482044674 952542257 636707779 642019591 948691224 987139471 368800314 967145074 525456955 698181236 60357023 347317829 863882613 946784554 125116195 535659729 220272169 357933079 725932805 901986637 142198216 409693077 439760170 889548658 721049289 953645671 705202794 963756147 483808556 828906606 374931997 440716352 474605193 686732365 551011311 559770065 844691854 884222116 345205362 373429089 81372842 263300699 292471479 880190699 323980724 878378867 762996854 829358723 648754421 762698598 604723005 911968164 838513279 965444293 613410678 693242685 505933611 727052080 440216789 861823588 52418830 485158821 180670778 465229756 615320541 882494881 568976104 638051002 465527334 766238419 994249070 999689504 647535699 677618432 961449209 990559170 143772913 719610392 287698257 884252640 6229862 581340782 671236289 922371527 635280377 656360899 359103113 705243905 766016810 989239789 716192156 974156887 364362056 927690728 626521167 807759330 115705731 903059352 595943255 682636858 925713671 966795264 7327719 472647198 396204261 604103950 407302628 762047739 393886692 493691416 133384627 297699663 569410098 912264867 513707898 858283426 597848054 789003543 220366045 915135374 574030767 962893660 560105251 860299838 202931848 622859706 268761130 489112668 47701760 663475427 123903034 733034486 238550461 805777394 227835543 751837845 782040836 852290416 915839695 944958464 77719513 736916114 113445133 918611309 446894036 554616853 594562513 742764507 214403469 500704819 364196167 687938768 377435829 742574239 866947959 962630266 692231646 976753530 397429145 968996842 525062870 922145484 72685768 378391968 130111381 595330560 337918913 506320576 243341062 636838375 50509967 646359230 81160631 691808063 564494545 924819634 338162826 748595251 679016282 872727389 499429718 511253082 196464538 934624863 501261066 582395453 812952721 937977890 585142132 750267605 309892927 709418848 669898684 687463521 927733216 962280832 336138652 629226549 601535497 928030920 870184188 898482129 828983594 937375628 451567773 480424569 116526753 410322989 510329500 663732461 158307116 838359803 706146134 916815451 19451242 323817961 99218238 288176857 477838403 752674473 390514253 770669801 624945743 698595962 755767975 946463325 724888042 850475064 287222262 571236016 424656435 429902264 156313076 579766827 817778481 836856667 939403259 940994720 810244132 939089732 164391658 379133229 610559436 944119157 529107106 657841555 669822013 788174597 868638773 912928927 983153147 994015136 302280355 987536989 333657292 981973695 25719889 438814731 697803256 713711760 26047299 784154988 867317159 978576713 82731594 393920649 670107803 977894615 509331611 632771566 206809366 875614505 988378289 992785579 900669164 979556795 350337393 491077309 431315792 683102787 840630661 932044953 949936786 997793786 378873552 989432337 811966793 890460473 361746163 741941080 331642927 519371936 597819855 951471012 756936560 761622654 911155865 957350153 875153703 955777250 78246682 458516401 208857146 828408094 162971002 219770755 239770610 549356012 601475139 843725712 478346114 743484810 749330268 763703166 516865410 781547351 207536008 260079591 768357502 996956561 970511384 987910721 828994641 939942183 373241286 629570775 546341562 555185729 565920730 901625064 775079213 831907623 643098014 893882499 745822885 812971939 986977002 989000525 905069507 980874840 848064507 877769414 695523965 926611431 746517651 809126426 333297387 364240299 336446139 729107773 998437166 999642611 456430414 982668215 139119020 858452091 493407218 583126560 291949215 645432845 962225249 979977701 220446180 241907579 622636625 699087170 722424908 764695881 328425298 867277874 144890082 302844788 316827174 959780323 370592775 850542243 998220165 999838646 985607737 987605570 181145824 353689256 4523050 277273665 588409962 628992586 407606780 874557076 792703102 824242289 166664507 802537959 922505289 928845187 629458053 974774663 332442834 866746017 356792258 490328216 808030848 829618554 866435725 886977337 151384190 357507679 965625847 984162192 314206756 353896315 825514526 942667496 934511119 938933120 274470916 494483120 207013493 948543688 146016462 926162217 888990259 981590879 172041574 607623761 672415969 686761924 245736508 587726338 175804540 614729652 417813925 884324794 426082663 710975651 618676239 757399833 13253148 263033925 927593559 949538074 478957943 875062414 188422963 337195944 982142359 997923262 886784208 915609310 525099383 825262756 793203756 922367312 54853385 589313135 369922579 762691718 457020813 861727595 445987720 896404308 33695183 473378739 15572802 77760014 903783312 939930422 192170962 518863115 187298706 587611452 212728110 702061506 677136869 730535483 682221171 797389685 464852540 698222899 251653610 380482817 111705454 229463420 615801626 964031616 116404143 748513122 301849229 550583221 509816357 598182714 986694810 999512745 762347822 977124821 421761022 549956474 743624848 770638787 408988014 916474319 943130179 949588476 923419610 993778069 807773835 842355576 358261289 808871994 411044747 519935307 623700673 886680989 549350895 900331062 965237428 988153953 792668192 817062736 123067958 222843464 906477880 985438039 490920054 882394444 931585942 995408117 620945366 654185479 539237572 552425679 849077340 919741648 714822906 961880518 292381420 536886878 399243753 399569896 346468301 377079795 216206548 535390602 499241166 982106088 926275583 946355245 791659971 999787996 217436566 541767359 21660512 983204482 390111223 706897788 226933548 827860210 669311825 823703222 427660159 782226831 477634708 817134365 576677242 856754847 504158801 803302330 369499640 789573314 959624443 999456811 488376542 609362759 743197111 879975338 612495454 980811426 737184898 767093777 397853625 596195951 171230081 221656842 232158932 625234777 480385220 734322738 978454755 997643595 363234283 757979393 996940712 999046887 891903241 925944942 297555701 731318335 675715737 744999040 675267762 818602710 212609863 589247593 168015393 322064399 319268297 520937745 957422217 997088002 641184066 803690024 29599920 820315827 720204409 873627257 953221877 984335852 118156984 388863048 633327891 749973024 150933293 439302398 929732536 945895621 63613855 901281497 487463481 851884330 464584135 916378899 362012500 783334967 423572938 700639749 583502793 621094491 321901651 844645959 738157363 767899122 488126276 510759612 116952792 978278519 421131945 597389086 898874449 969239932 472095654 554163818 437538886 955439062 626480953 970443661 717324286 942451401 220346324 968300497 658011188 782215954 157649459 317276679 655494686 940758587 635161673 772536742 619820557 728853352 604364151 900894040 472951402 622263169 307953411 849924372 924597094 976524524 476990533 754691149 163324315 341952707 842631129 984950522 132262189 695839601 722240497 989396711 917983134 925621443 800942178 840157102 689391357 926080071 69446670 638557583 563093093 696805585 685662984 792211303 896491890 909070454 768479219 919865579 571906462 825595479 66021475 544944461 470490733 837401638 723999705 984175740 105602723 491263219 491045599 735808416 834002486 990941389 259834686 946606354 554394102 854159770 349696855 523109862 937100844 955252596 123040277 222002492 894676903 926945336 825144550 839866852 527121047 604237945 454362880 793972355 169782968 312100478 717475366 910944567 969310594 986125632 868550144 923964468 981000972 982116972 728261366 896403124 550158092 600881568 569004153 574098401 298569661 561893210 661804389 865022128 543010548 887213654 368815446 527527789 448965808 812962026 563428165 598673134 929056170 994304611 824017516 857805598 585953498 812859348 380523409 738754869 141740133 488527975 920736311 976326685 766940259 953522075 89996297 403071550 65751092 832619166 102731554 128923029 719903548 818595853 720351352 954839498 615044292 807208855 903912462 941743897 521598677 562827613 18339845 761476903 679020077 868036263 209534784 875624637 767989643 952654301 476765152 889642858 692752981 957209462 610600228 659022747 571331956 842279559 132909691 998966557 245906456 339328267 935812358 983706452 527272729 578979704 688953918 726263445 233330518 655503268 74424453 355054094 682936807 811121527 542431291 879442719 301578683 434738673 759165722 830634573 803655674 822787807 502607053 807114946 895217682 910416662 694828951 738551458 918700786 958464959 750033105 949290605 433410308 651287384 776351280 867636149 118858964 887023003 652161883 685807803 725949530 729257721 836746339 886983138 264390403 775374147 510767221 677368293 679040052 715317994 798772473 819266830 638472807 841822270 922436980 962750899 776770566 961282452 809909510 894902655 479889453 929176622 597703828 694985914 475470061 912995185 428254280 927229571 633613476 844265320 470166197 824588613 768216344 974443626 25092254 449030079 880549703 899425048 153276894 223028961 427269838 933931946 145016399 304689841 692416416 820735428 830690978 967652086 495371857 978649693 363831743 661180675 538936352 561067938 410642611 830511001 790198197 842887592 764875114 812213911 537461187 672659306 805000123 855533066 961746433 968202445 663918597 780391247 219572197 233319529 806602745 841332943 836362894 936560162 386580604 550775449 991794961 997658838 432932581 581717454 452891569 844340863 378778629 933210922 787285335 965034716 635481183 688339239 645247571 967362742 289426594 471080106 524043774 698444343 511611302 563527774 588204294 946659445 129758571 808090004 742400199 759988748 12996591 118989173 9497253 445243322 972192919 977880318 167874315 693349591 971012409 995691237 716382909 898572338 207189410 987844603 605960587 897076730 560513949 888139344 196952936 465714214 978027724 994284415 641554410 722634187 339131896 583263727 65671521 512237261 667571228 849306489 296166062 454319089 93245290 126924756 738473079 813609420 959894076 972409119 21852085 776638315 330546113 801507296 825444128 895679174 761521251 801159197 79759462 387300706 453261315 543922154 29656350 720990405 693590484 843807306 95610031 771879536 314939824 772289818 226753336 902891384 80985195 765557958 352350510 400297577 922922816 992725052 190608430 551633611 399568034 547906444 580355035 626935985 745772819 930919134 952525843 961512617 751481408 987050272 715467889 840168607 160433059 387855933 875365242 878784386 732060225 976176587 848019421 854216840 147934425 738159497 787794671 876993042 555872353 895501742 211834190 505716627 265122554 625862505 74974078 680862879 785155639 875184902 119773112 245675623 978046125 983136323 6240518 929951562 442924743 768202396 266967961 765534188 204566444 500531582 240373735 999894322 626877805 975408579 31801507 230184502 351190421 858522831 962773735 969498820 342453494 344349292 379494925 463072037 359317095 986491415 28272027 772906702 363972934 796776736 684893842 959350302 710317157 817591770 720540948 803485556 637320923 855507686 171268072 368221075 75028286 786843453 608599645 692459200 922573323 953041393 224999682 744177155 640135072 879020765 166630002 999041444 477610684 541038961 754888978 895947917 767960424 897585509 395875193 685767615 118720450 559460257 589497275 762194594 670775574 800332210 710691472 808956829 972520925 993649200 596893612 670778716 696577358 759141187 797708444 977507435 952188591 985548141 959250431 963334604 544059147 987055920 739079916 965240482 901430496 961318633 628414443 945515918 205097456 780841915 355074259 800086054 366461180 675677242 965020391 980710221 492538618 687525114 838743894 846083891 462047607 466906027 526884758 637745911 102601764 965760625 560265915 840031214 244840780 410984900 105310093 644725626 117248407 893254052 639996511 678626110 163401952 878810367 49911792 726504088 788800477 968382604 860714960 981616225 396597832 504905296 646659846 828961645 780624477 912292983 222440656 714270680 955260774 967029550 246989493 821940242 979705956 985812544 62404724 622319043 632348216 871641817 978591713 986032668 832970356 890743953 911373307 985214126 996286035 997180184 416437574 624451800 846974772 913261527 852581117 887605972 58785024 977589634 644392826 666384278 123278735 701841406 805254273 897787998 876028368 896544525 200884601 353359882 63789330 755189018 740461669 964706567 436173621 829080930 977084022 982649964 547908557 891810427 965676721 999199068 746009319 778859841 585331670 745017383 786494820 961602418 423047328 805082594 938977221 986476731 134016850 199771661 203100324 791308600 809267276 903949159 453585621 877552778 102055879 439005648 148429903 339523992 31599745 200850921 90718136 845871775 734574290 835989503 994368232 997116363 554267412 843058466 859845652 934150152 902849926 962854046 822626770 945332203 489464850 670052136 279825653 328924024 342705465 742196757 476056232 591836617 304370676 847264485 687597271 954038382 117581798 543925026 978857383 993610067 812505119 845370482 217589923 556656480 357176452 578751322 421378212 658727483 72753361 607089805 65427582 76590620 952892080 965960416 828869107 877863969 408273857 696778694 926397155 973728174 331133303 849949020 570363776 883568538 406025721 729679291 230393147 782679297 68112784 615249415 381461746 418367966 299999207 496253126 876988627 912430524 575553031 886509196 701492921 814514388 881889759 983681112 345892440 564723226 444873650 940632461 292201739 358581725 360218885 370080455 147944844 353097460 353089229 947831854 380331018 403212881 400411643 830753629 879016024 909267713 356623423 673513378 620170382 668266160 155853122 547819752 277662111 498013172 146019720 593504373 427822560 741138215 941630906 969647241 361962451 629016446 163518800 989737857 89324704 793531846 841217265 933568450 96509412 178134193 948739380 992546362 895353262 972853465 787554076 950085538 7068006 705714116 996451329 998716507 803109926 906972353 881752077 944912426 784700706 855337940 796907205 833855324 518142565 607262475 974612378 983003914 470205938 660930593 272189298 859856533 402819797 418134090 360782620 502318054 80310705 447661262 928342793 956337817 404407756 829157148 276034801 821065151 629559683 734258478 255707572 426699759 685968712 862612554 565468821 643588696 579064049 895692435 369095861 759652328 805834831 853394301 711092587 996913438 41830907 52284247 901822478 994319151 502160355 977793543 466101705 884318214 158463608 613437531 388835613 728815963 342492247 972204680 861476328 898231507 34733253 318710654 711301369 884082930 43539906 698316656 676211402 996700389 997834801 999246119 510367079 957188441 529499744 623940121 865800866 942288307 997954538 998096217 517968168 793621821 68113711 885934518 71338872 718016522 606805326 851168690 80555941 221327225 212335573 883055148 693022707 704760498 820936219 947496148 739092854 790594262 282335394 858101065 575930890 880921229 677088598 893548125 463697012 945144428 548012012 661778418 262508977 585534935 358496818 474603045 613009139 880137775 172255069 414802794 988448829 999508747 157843802 874622097 888496683 923177238 566100146 935533747 185304077 416893420 698644639 960142042 143031982 492723485 563481100 851655758 248316594 557060481 741152696 780260913 280471607 547327904 349459258 605274633 845373493 874827267 546172418 786227547 702549737 744513410 972417553 996969209 535355907 595104094 379120246 396408100 596470985 877341572 819786591 910892188 880138778 957782382 115043452 584445630 409550386 866088828 876899298 955989079 522949172 976585821 574656025 856255832 296724039 370866453 722648926 938163139 722344343 767639156 965683477 968967081 149475775 782350956 595290092 769341878 175612864 506290381 128567583 451520550 135932408 459690410 702533040 869321576 16433800 350518484 564556699 657721079 604755150 618302013 768734600 954284008 904139829 975890972 357783113 788088387 8826284 541862582 705350214 837325375 248915802 789013916 827748293 930809628 779470232 817287976 732894411 765778877 349404916 925316260 116474314 656550081 149222195 546113211 822978793 830650041 588221791 878756578 228320444 610361512 611487407 777774442 204731391 683644647 403035864 784243259 21246381 668820466 366397520 570539162 198951748 414656883 575935198 681399823 316586599 826352893 970197261 981966387 207055788 310773291 169130242 217335608 214788215 778144831 688252950 833612961 69152827 571298621 425751467 914895757 672030601 902888465 297697288 833229021 790064563 883412214 682041643 801145447 880117449 996286186 895871841 914443505 966965571 996150728 431262363 675785775 301035482 480588266 617238871 824712105 137464176 478557247 678111913 806511219 156677504 349948079 970938607 991533711 806016028 818293683 675210184 796247598 355730867 668344376 160044694 202591479 879043661 962974397 630284546 801792072 46418339 724654504 376553334 917423340 69608726 549812364 298094693 380337445 892148577 969401141 955139036 997426194 247400264 358492865 41257922 491421585 742013309 935729456 85504685 493388125 959235017 999865879 432605752 955315554 605850877 724277807 714578334 920062399 630546327 781340233 507725428 688749042 136011728 355794463 854907701 922465826 543492457 803315668 428702147 582463836 637257938 698762992 768261386 815931399 25891348 398782334 155717039 849169166 889720480 966928511 186201515 380816915 185680759 956442864 874392504 992297013 380782577 502411001 789499704 927610354 949402120 960211199 599031816 699386286 587658360 844300998 520940938 740232689 984101922 989368141 561033664 731299363 856874033 949437693 843274369 914462540 380195117 559406043 714041628 893704700 471416051 666064596 244228245 810814997 325737401 514704207 860846958 934984784 2513125 933936522 433651206 949032154 565052941 638014300 923410424 974937306 969516032 995856755 270510214 859762725 772752823 851782829 704382710 993980879 677815608 956342180 853365900 862498873 452746687 966851730 308568976 761252921 508687239 980665620 189062797 437411829 634768034 856543961 123505978 315470308 254848393 575124612 298220468 950989634 262483996 916017374 943765635 991938849 782967090 866715096 178142935 639239710 588898139 732949374 371215626 387551555 352488928 640196855 767643293 841961922 159809553 556383093 535014103 940098473 267225220 852652003 331163492 633812352 591974672 650376866 133634594 245323041 651728222 876457751 278487792 897895406 780551678 879393237 11438341 375312751 781468979 982415653 201126458 837210491 28226703 234800041 732778263 816472806 309923939 369777769 824017862 936301435 564624320 821653175 435822093 639207188 686602229 931796514 39536777 332996561 649609562 714315692 677872338 738764441 932009864 947092795 86050241 980991892 238385242 521535848 249569034 877644377 365988436 775790311 578689475 710172257 975259106 984746026 739070677 958409920 658552011 947208307 672620826 990806408 224072828 977403138 823372424 823908902 283147045 759923904 153305159 253119735 987462956 995489365 787767747 909715169 940368352 979214764 619150778 751568072 456591415 459721048 978009979 991467985 787067154 983760560 939978816 969687476 663325849 814487204 799379703 938650472 452608180 824077443 58606486 604506051 983975972 986466585 715393589 923961923 478850010 715009693 997529151 997594596 900225542 944357868 517506400 730994053 439113146 504778186 743269432 975122283 194805029 990872457 76064935 799184174 37665931 374558025 170578680 827751781 745462096 927343249 817968608 821887365 167655704 833836080 37893191 481547748 342802137 395508986 497675170 645695944 344326598 970506780 212410452 647442896 320939539 989988923 797212224 916163926 512030445 801738413 51927082 823033341 830103005 915919492 906295921 925696925 883658472 911679919 54062668 497700223 275300694 925660099 108835832 885791015 205934050 529682310 564615599 896555425 471917796 845951402 809648710 971243930 833163634 837328343 725190689 907544922 50140836 127188758 798670452 962992783 180806098 898119448 439154636 459693154 236002229 810116904 920784526 960522131 561938502 574794860 602515127 641922664 291901474 532240485 24745170 881080994 12597255 264265422 561434892 636076978 996984876 998447444 421554855 834689678 54649726 600812926 456743731 846471058 201934463 413826192 528650594 702037450 722123115 771935855 637150980 838797885 552313692 582000768 856364874 974289191 322649706 562509921 612367501 737973328 492324021 564411099 115731324 760651341 359217179 773354025 147870808 969333740 955002967 968092282 41032948 206368502 317502087 633377207 682226299 767527330 806323775 885023504 255604523 562296274 958407385 993151713 530099416 535804408 487654521 658711469 551792230 678983688 93209627 945275316 151813592 919558383 799428335 949603446 648862600 791590124 920859516 942386437 487151816 536825548 85388420 339606228 822441902 946371692 793415452 890499467 770118943 941890040 67107176 743739991 135952423 818656129 148553308 790609197 855211243 923045185 757583704 808421294 509701970 880580828 724467085 833017030 59368440 539562101 510511662 896591328 895038293 950139653 168199513 458012702 805071097 894472142 522043953 545737012 795675017 816901705 340441331 739528968 636395217 740276767 324809248 603125199 815134011 816713612 30794087 441880612 993485472 993517310 848381780 877397636 393397945 440816053 216076267 392037331 474144885 828048286 714809197 754310467 607492856 901043647 626880972 975615364 889279093 889459754 124807255 450596918 806697526 895992010 309088114 375815388 607399652 961726735 305458034 972079535 668403923 703691850 252495449 900550649 408042068 911211504 313595166 835533111 297638670 315142034 459219710 674870340 597959360 875602687 662090518 878575033 780504500 947908513 782357275 887054961 778730764 871520001 822390211 850558033 623652856 936031269 428851063 656359907 977618960 997885302 75288765 737622588 830013324 974186298 217674337 621600617 798230678 883884635 676987852 834277466 294022308 587673686 522007502 583074222 357856890 444390357 207738844 393611314 35007705 679505799 34986768 190803879 646423167 761317952 699247528 732436927 32368460 731442533 769320464 877619935 379935972 844435459 224742174 506373987 352476524 573885321 444293024 710157024 81572210 914597894 718468281 829779175 142557293 799939332 806904132 977548813 975430524 991587554 241419014 496233147 649220267 762122635 496533104 536128991 745185773 985757436 818963153 868883401 348011045 660736518 908450566 973499829 277835943 430272704 856815841 885289788 207857725 692518295 54176157 121548461 827938707 831448188 58471523 702106010 761944807 879986825 844160513 886602954 969260465 978899437 957550547 972540469 792477747 914946946 621979797 856662489 166032150 898023146 719550887 728381894 645466385 801340056 866532670 900776558 772095706 801250814 679725592 750514477 304988584 631059735 454888790 645142838 837275401 956118939 149986667 837100797 116098257 526756436 30487742 311211232 479787566 790721763 796352927 940732688 777174193 907833428 649620180 980577391 804805120 950248518 673785588 792632627 233676896 655567533 517373105 809755904 404167417 632761839 255439645 968448877 54080359 138377925 243550408 644650191 453569322 610546598 288954719 442300663 978697573 986581206 861649903 877224612 941723897 964218319 898954212 961867959 775588868 784165915 251786124 681797937 730705910 871604724 842472593 973974495 411566853 438507399 486389716 585418207 310616665 903836246 40277993 666011602 154660429 940313649 744990412 945044267 577482125 896491018 377335058 443189933 841911614 863893763 224062706 676489560 803415351 938150448 552408919 958382439 282817486 739173627 713954630 830828024 550402450 748984539 248375775 361939716 579544363 940437672 852094597 883297549 169815458 997345239 827112132 941724125 330401055 901835637 954274745 987501876 749279026 894506229 198109627 929997282 616823466 913369777 959635697 978451376 939328235 989802006 567066805 991321823 548763447 977981515 361220327 578638158 111872213 590758813 231331376 988443784 305238860 760207428 549462029 714470209 371328506 491552857 859408828 902396538 506050630 998374831 173163609 520198354 668440629 951802065 292942483 556363917 963539177 975649055 521905608 591865929 977971053 985708270 403415733 722827559 135870588 882332281 842389965 898773848 343111900 537250417 361210693 603583127 862615577 908147973 425970296 442525819 972406553 987964879 50246012 221932378 398809850 567424826 822757205 833293256 612546852 955426369 107836045 701689850 17185099 952934061 302890628 740418433 113465192 937683690 592542629 698036419 976754221 994696854 136489025 717983717 239148954 483170489 825506829 903295253 740253522 918870742 860439983 975970130 682452887 695967516 996176178 999478338 819696552 980869231 656372663 962748670 753224849 863896869 151423158 580065001 133154647 481991949 659664762 813407627 860066630 962915095 107569814 878560648 2025346 996352509 592637994 933623561 754348085 988236216 835121375 894222869 193647137 747653298 487624173 655775808 30787126 188577685 795461178 921377746 990274497 996584194 637006930 963920684 52088982 310005596 36455457 470029355 331315777 852048785 778496305 941015407 463775716 990018579 346403764 671277606 994785960 997614331 117447971 420825577 962366423 997908031 743097952 985824472 293375605 836807946 369492490 665735931 129535344 766234176 209571501 582271886 953977028 982656716 438011504 933452382 410182669 717556822 280804068 874335652 429728814 703801475 750324263 975770231 895127527 978874320 648829702 841685960 199805882 791506047 88362458 541707065 496725968 964218849 103148788 860441632 840862452 911167687 961660490 985684463 877634980 911985694 349353014 712164424 237055191 375564662 812307362 866753246 23914070 34175644 462436375 976443031 141420062 585478411 103411910 366253680 873291186 919662637 689567149 958873590 48413141 836503947 547209053 637914176 172446342 326047691 556776153 685449987 240979751 720681570 842350355 964553172 390126263 430565293 233658183 954962010 525417954 862388145 892664187 957717137 505374662 903285512 48557684 260562013 368063136 474774661 145370552 186536371 833780051 995113663 87763748 648307659 817026467 957840861 641027188 644464571 356340215 405709181 62547603 484411449 833831400 944352674 705788647 743018286 397379756 609264311 135193862 412948555 572129429 625553123 439031900 813405831 554984295 695510809 109654251 576189911 15423068 243208107 359297531 961847137 373200542 524895778 125642151 126249153 63887605 215352154 929678758 985346352 827065306 991958491 455163048 804687733 678681863 930077249 5401064 846201725 16396749 951166484 900759210 961221814 698322386 976190264 376993924 830445618 940097428 942309216 880954310 952826285 746310229 754571268 418319240 919210401 60382224 873823056 759869199 845367197 159918164 166689531 961741618 999859281 937228425 948002260 622521249 967847733 706370103 784547246 265183673 742724078 868963208 979895321 100463651 320273715 864687815 922867103 114756761 820990556 221651623 476279357 633393937 857831583 13006209 205874571 847198969 851711822 373912007 498110760 798150195 885846054 448119888 837764727 838169528 911826523 254022162 752614291 71375989 420119388 832540486 977856832 1366660 544894983 620327224 795126875 816415712 941732547 247464710 598345657 907760879 927132061 249034740 855524691 261248468 480675798 664876684 731933541 383899241 418206453 826852595 995996538 108374682 814213982 774950627 926582165 480866557 911577158 785781351 895664335 304633341 524760912 20391947 530437267 878551644 976183251 672330015 762811991 718057921 752135235 427099888 477291543 428149142 486403136 446436228 639548510 94768675 767345201 311249188 530561945 699985329 872344100 236770186 629942082 687177780 870009680 80639227 365538195 727314065 802860120 409402265 772445265 134862929 420878490 392327698 658072697 986389780 986536714 194824436 285713412 327934208 596631740 436612796 516856621 400982398 670238219 152847084 449966413 229698288 557221810 672745841 869825488 658269923 987899493 720501979 741446833 701605816 891318615 105532296 393091591 823867019 989936274 108469293 850234071 248837730 902445865 648208899 711010976 587894017 898313085 540194098 679328532 411147375 937416612 846390313 861627171 371578402 968614632 579888776 897319709 491479060 951809064 66986663 964947641 161990545 363697274 455232760 669906206 905887977 973399166 768629225 905650470 919457961 986945640 486522561 695578127 813574680 936196376 617555400 866498382 960960705 978309548 986649520 991486491 918680121 940788065 5071765 821440934 331888805 615629051 307987279 322756173 916206980 980172291 513839646 728866063 34661543 174084421 462709563 790724638 6415686 532172821 699023513 825241102 77038471 933562513 45928830 426978451 508114361 863693690 672480588 957820228 843301551 886318606 567526396 728791104 464231060 646014582 485136588 790890610 993855104 995080776 364098064 701356892 436812455 453649668 112893293 419278665 26466135 104767286 669068717 843756452 910663566 955602435 8061387 903179245 514619932 848150703 657018061 714677083 568015547 868003047 348597944 508896997 267965095 580995820 550935896 983053251 959662910 970421294 81336151 257053890 268019130 991505146 566626653 835167697 946947410 964574567 927300155 933813011 129147373 202368523 852300517 979381517 760599108 780716752 806792691 900661158 599949238 634945105 872339672 944984099 748793406 760628716 887741592 905933020 815700514 889784893 889153872 889766342 719679756 762296952 270136691 811693291 598307373 690815219 794804760 877754417 965642957 975147587 250212982 643891008 3032160 213244865 595093333 811838413 533141301 850260360 582306710 769664340 906914333 951693200 675990711 960921967 897660423 910130335 514569530 801917912 633995475 829185544 269916034 530377541 584027275 919257389 91746159 963762709 303512977 843717133 125486857 629665357 83906370 887140723 63990758 64108995 624749223 633098525 76603865 332333441 526220528 835768788 945089001 995660025 235301998 899414089 877647092 880227292 435130508 588026764 121491020 931886567 983858591 990298100 372299149 571073121 68519485 90339182 850029520 893679001 541721511 836296614 223215578 774619764 211463917 271046393 441230737 706721779 877704565 950690592 946381287 999265909 561946376 631966780 548985628 907085050 397646163 807234639 667005561 806740034 493808826 892071751 856878870 962972791 406530453 962631703 672645385 808343308 8958602 437230743 48111837 883473758 420449955 749373799 344529168 530711261 630155511 717298956 720138789 982095819 786218394 986312057 684615003 856014202 643274333 812684922 327081835 860504128 622654170 819106752 496943536 542243014 71924837 760536740 635737541 727070991 937571146 972022840 236166665 490181693 944900431 963364400 322579349 613667904 135018422 388466838 394378579 901369774 82891315 196024203 578770524 774094430 574030049 959972969 959065072 989210582 695891594 944916116 504033675 979223670 624146560 708832068 960097926 985140632 59966980 253968546 62966939 66414800 66237605 636631773 904080954 929254053 451610406 687986243 669662819 753616280 17849462 786668783 807500257 994058932 621652955 920797525 915836532 935045334 211465004 641525760 876796667 905896684 97593903 183891571 753675330 908235696 6306335 502242030 487914994 721992489 987678070 997169921 830844380 852937540 508311791 773544847 601315971 818045991 752921447 821938886 40236980 58068008 407477726 444857359 869282856 991269309 346834414 822990846 468139513 759837291 752884152 901863718 98710382 464927312 391851728 750154339 898059941 907058670 910498412 923452034 93919027 575287101 230869229 763042875 103887299 192023988 692141724 886358556 355479063 746715025 13409524 128796149 346041510 466724280 153023511 975013543 765987668 930260083 466460700 947014695 851230553 871220868 842831432 896354075 137458895 971903369 596119935 979873011 191271427 228856339 361631590 433465524 590346491 843179380 977666377 978938324 799668346 884775009 321864152 544570925 881900832 987768397 321569506 393664444 248809331 779482488 325205578 815911410 643414554 848886711 204466009 556301436 712242811 780260629 65535212 519023187 244740072 900568716 27724328 186212468 958662347 989666355 512273845 554509021 956658190 968622835 465413671 677904465 566409952 622355792 209552854 935995405 952664416 968473799 746575961 957724988 391245694 711941558 987337745 988522484 857198496 875944616 752445877 967422820 647150470 708851157 721027256 910837206 27740987 775036595 243528300 720189947 503747381 588212680 778031847 807163591 522608001 540825036 220156038 962595628 311942029 509863514 59393802 287502379 306651645 670449020 74120719 881408490 776651215 778668667 571918235 741524192 590661660 736879431 574061294 703473568 227497345 407528422 617374347 862186146 191210266 719369055 231307764 296107741 17326908 385580387 802362860 899543856 678250365 879861015 963063970 972608934 527212760 945672512 446995369 857673320 724901371 918775262 199445723 315521716 878781465 918223191 98404502 881292174 854439233 994936792 135771955 253964983 152763964 272177894 756132637 983414284 690349628 821156819 843538500 911268416 378696689 602426002 808019953 920388809 41896321 524641546 138052049 220651117 660872274 719326882 534312994 628271545 291631298 920924129 8831001 322770334 920584337 968853482 258987382 769786844 403755367 905727010 540957550 658103702 176583639 728543283 855939175 950798085 271217856 322920805 289536016 290910292 228663692 837732916 84417661 921900833 903216438 995481241 349343028 405340795 874198258 902085998 717081889 882936410 111235688 366856104 892607570 971561158 183777627 680029904 273109825 380593318 180444685 586410845 525508551 912118089 606402932 659453806 151679888 820478833 240798873 246584170 176361523 512631500 893976957 945853645 234927150 279542151 556829606 876570133 845276139 923948866 241973036 242753418 32201923 185041668 335081422 868733899 690214126 968705730 863361021 919195149 691960675 767418708 495859125 825239978 939060246 984318134 894114586 937304518 139843600 276179515 110727906 351891928 342452680 540801588 433883947 601879756 484342257 542140624 585646957 762183490 505704977 892852872 320803724 374542030 427076232 926578234 1974416 615051888 99618353 244992227 566290058 863473442 233475294 562235663 153280889 186762546 839180522 935618284 102311922 938209730 627783875 779115869 824768282 885329664 84037329 929057258 875911256 980206639 711019331 869425237 182540670 959735683 342757965 974366930 63514998 361969499 756224734 819664549 160610579 207595052 285930028 444936611 92537846 556839825 291193347 354218190 341118266 690984055 62119047 588429438 951936292 981443844 879583420 943844924 350794269 931754544 466468744 467901700 105314217 301905834 929705219 940481818 326334339 775766537 480471256 491640940 505632111 801184799 921039285 971630436 716196683 803992827 92114978 493130755 789798768 945136154 111158426 411182920 566411028 703414384 845025577 953370370 719330251 952993512 120266564 238076662 926539970 965510341 613227108 966909692 49342821 728141535 392629456 748526355 475620394 527227342 735154474 973112083 551492367 789974202 732819009 945340982 589175012 976498700 161757064 406726392 714833973 739695582 551623092 554360626 800840965 873544232 402311236 998408229 729613107 961462337 583227894 941797800 246818338 598354436 427613082 428650011 409944850 531280451 56511412 963359916 79568172 455290548 59675640 396973633 289689523 769174048 570748740 613593406 476542125 692222192 862048820 927338960 891225294 964116436 178012564 189679872 364459937 677677239 649504871 676799550 801821557 943735816 406792302 821542872 134371749 654324964 140307902 495983077 633926109 812313371 954160698 976514570 617157569 910878702 928476714 939587867 682040877 952154489 548450974 670625696 26480722 580288331 280321549 978916358 209232155 976644290 299893350 689672224 501071432 855295358 351117492 558201497 901676960 944160880 778776181 823104721 59239131 153598316 676772659 951953892 755441650 848902509 730106151 804723053 250493311 531050173 814457977 906144268 514255787 716846086 392289112 536967765 269573431 927192618 274105608 509427736 867930900 907806813 76740565 363531031 93891459 415994967 397506024 713879104 632720893 636486371 638683088 983869434 952840227 986333145 619787535 830208317 475518377 608982492 633594615 750973685 986399615 996206311 955917167 983123016 999300239 999980803 488556297 735936314 918655701 937749276 771663087 924607215 995221762 996489133 632581828 836266719 407801474 642687597 946115622 962782529 189584404 284422142 553005174 578488268 346156339 716398647 139673693 987027641 499370991 957593729 690322584 916297788 129873313 674460517 258896150 293482896 759134145 875197654 807212179 911132186 793717040 964600654 234111056 880126200 664412364 842737315 27977917 541394066 679458771 701788779 650956891 997915662 261967358 375257082 797622603 903161650 114105562 129958967 262511839 484752138 176373285 829692053 135855479 270237560 688002132 891509042 455630252 963940770 439018677 994838142 620745730 894143189 75971648 773759729 729768978 891253471 299032933 811073444 661716529 698351938 911609935 930617435 593359088 960635282 858998508 997741001 476687055 938662266 237918265 761257697 511333654 894990433 929336631 954754022 541598089 576237716 269059796 886574773 239439268 395048326 61503366 476204185 902273389 961366981 70465955 803458342 241617390 677541005 440420139 957967510 930160839 991613798 921216632 993716812 11668046 634901760 315650217 912089402 114824595 793522336 584525645 981684361 29495742 966698583 348805041 531333602 748977348 971962965 560394847 739474059 531224877 689817828 16808775 970180207 204959374 292512329 19277608 163000940 283198929 967327398 691594267 702648094 536426424 683811351 626986186 860647260 305490570 771791089 754495895 801847461 995566230 998763073 731484536 962158392 986564241 991123269 879638109 950982936 704511640 911491970 372366314 849404717 795138020 939816159 464857268 991345742 807470095 926754440 725813283 871961698 431532916 941771066 327999478 678095141 129949849 295632000 255203740 945248247 103317826 783577301 608664008 727400054 177711086 328310752 971843214 979113599 827793747 927521639 457398198 896681589 528858804 641749217 793197599 810130664 488238728 864303836 944612056 960071540 502043896 503589897 283151603 385887658 427194472 973872489 440914143 819101948 106432353 786332163 28646442 85102530 955553492 975749239 200629710 832432637 558374355 681050353 813989941 873039685 586120588 675594212 737497699 900865015 107870446 163119153 3477515 612846203 776001916 889199057 425886165 906058607 403285655 891733462 116025332 193276563 602786892 946585173 60601021 982197429 647621073 674618250 236874835 754267684 423889045 873727090 322184794 799788240 756344709 897269108 270998052 790934873 120363992 473023652 512755950 963562592 247489965 675121184 79540449 690700109 231724498 910433890 9449899 739710474 207639616 466353833 294321478 957728868 538583791 696611112 272062309 525720631 815412567 817766999 500320773 561860431 161419180 857479812 967955097 999790129 250844247 360385321 628857615 793919759 239503891 727769948 895439481 947853377 837086586 918711062 691635710 747469348 251372475 470746024 723860533 731311367 769669928 827915252 198240111 396471986 554852531 960347391 416744037 781896191 670778263 814460547 898497594 965036089 159564627 206210336 275545082 699335424 507514677 856801733 960555340 961290920 162896738 989039408 299550652 360286953 335490244 410551994 896644800 902401945 105033686 170238441 695531201 823369118 931862053 973130965 18227328 249403543 475464708 576549908 203371362 953780719 632046462 866984511 365804761 373647960 658119643 899537898 311109016 523785658 906315372 907395701 350612354 732700642 312039587 453573821 94422173 834290418 708807612 872102050 722421664 823554484 270091671 492765570 748063426 950897141 458109934 811609461 576892047 667229815 29961495 983572057 290831011 968098880 259145332 662424971 335899006 539093570 3627015 228125396 178392991 411306671 916432906 987039559 584453995 668757234 93928613 285744018 304443524 471004063 949678731 975279768 24828921 479932298 462855414 993828209 69595538 205979895 52409317 728981368 267790489 995799102 413183428 560995780 915979739 946152838 836687013 953136827 478237733 659622942 521064927 826509912 259994526 990169852 567764229 622728199 749345714 888010353 643883202 700393594 89746784 740408211 775686016 804367743 92982626 337554396 176786241 903591261 486425167 618602299 590552679 726527887 918592401 930009314 876125779 936805408 80665231 702973791 948308660 952649876 29123377 104210927 10487977 273502228 633173161 773974201 880080351 922228466 999661693 999841800 831900416 974233843 48534320 320359199 154591968 780936622 951121527 978650919 429519896 573150017 278019404 555021920 345200593 362258386 910601300 946269661 906717914 953532075 264704795 449444542 521904399 924167146 293619978 785624253 207339414 374141138 423048420 557687348 259413718 974732506 52776920 957816294 105134349 636957946 826345491 898963392 242615863 742933668 155960448 414660043 864467731 934558930 88664055 938635003 222700853 623494534 733987543 761091933 921379778 963827413 489228241 822081812 333549596 958929747 981292305 996976779 536916467 982505708 277843644 704768896 327895001 659695388 686218879 711985754 546527639 942091229 80660052 841065915 386006021 913609539 324496213 759632470 162218467 400423522 502930821 779667402 811980307 943473626 917107410 966826242 946803321 961382334 507206426 565862525 709935141 789327499 932341806 969966377 461159454 625940920 460995247 539457366 881035026 980031174 647617839 768758197 692239949 789052827 585441766 643128693 356460734 419743954 431340467 738628410 927090432 932171532 156069634 303452029 177824407 295280103 111755349 260601267 714987860 913924080 818669314 846684214 651922255 999913323 106029119 757162198 39700151 999628705 287864764 885799005 16607290 91723689 715811526 958428711 896150277 984331894 883448715 894608800 953067862 988475550 163109221 353959643 695679942 740615384 127783105 529174757 379911433 574501522 962886355 999265696 748897953 932340334 138007444 312033987 906847688 947596575 397533616 630844292 484745492 821564218 210572047 547364873 404843522 895943599 761468698 781556622 388134773 546473329 345346671 971044868 71990292 644904287 345164426 410116349 853984226 882532833 755555949 856375360 580262079 677430989 768480497 917137846 473507060 613661807 844135290 951581760 85478170 650869464 276321360 757223057 293898712 341551438 114313149 216062406 545381599 681362272 87550106 740475906 83012830 507464958 322023593 350091919 104407337 421751723 462306766 826067852 330395343 921301695 951440096 973195646 190650669 197445153 367087105 486032003 771965829 931561039 526157993 803842354 254610071 970832441 133600550 455081551 349053970 806460988 484795920 718942485 787567018 788780997 271568019 392105181 440774706 657904944 121891576 673702496 431348848 883642487 205777444 278800473 535931271 699449677 734495292 904868944 171449703 904360620 775163257 969202388 480508549 572264972 491159144 635460795 312897558 422674527 939549216 942552358 748687567 750688314 276513682 763861295 976512230 990017069 485676949 715221737 433744723 841901696 844837901 884946158 132622402 625327787 305070673 503032422 934502050 950709000 507852255 780942173 598042165 727608171 137583616 581396254 337850383 410477122 399965248 416266100 263876581 815331768 280688331 979526262 558826378 682625592 345664776 624236028 80086721 516532199 520039249 886521807 632073490 821556104 500875593 550439722 512329292 979531313 663590185 737424489 507261001 963818031 636450856 646277252 645072541 683344116 208300207 680726575 384149704 637608083 874225935 973485105 429891356 480906827 705955841 872047622 773630096 953874454 377672055 466830239 292897211 507922471 28705008 792261578 890446454 913043538 653734698 848302049 338532350 575853639 570169373 911582987 680339217 743335626 900207418 957171067 582055954 955883441 651687059 996686025 493013910 843682114 858340183 910354462 419867735 999307807 28667394 74551677 266455790 389771971 731249155 822956089 207066964 809429065 913072258 944740675 957197424 974968489 892470243 981445092 241364130 972744054 820856218 867226718 316853336 504980231 322187991 818115271 113797131 225916221 550214349 592219700 94226888 221419472 592954998 909301377 595406408 691548314 317180228 665698354 978198087 995378956 974297847 975151756 574779419 734292940 396019011 922931133 302616315 692406378 681583490 876134338 634337923 877628220 378065104 901396280 786584854 906394971 609300603 672592089 754023189 801325251 225498265 498983711 349459016 637679654 267245281 786816316 49609856 957376661 184175894 257331693 580323603 885144660 26406595 804784169 341241272 508001049 793684643 862071455 998959283 999234994 964828645 970537153 910901559 989647223 122474264 430569362 723195565 776146258 212267020 660791524 134279186 456765074 427371703 547683620 519489819 671615734 924189713 944873222 552453291 829745752 331212362 407047077 138972393 502949172 637380364 656245367 28846503 421334726 349783474 987226192 247579527 409732293 750645824 799460739 864733748 914701979 124321003 422768183 704548963 933802135 491172754 544807507 338056456 710090750 706311206 945546896 327148021 349551342 2584416 653756024 367155722 582735427 30607661 680339028 672117656 979540793 204454189 958359215 13390733 119927678 331918871 468951625 697018544 886716286 701798968 948915369 405203449 851015930 802133515 908146527 650266462 693557653 97457624 277497614 341935904 565863436 706892957 764025684 460951339 825526198 576615090 679749099 825850089 944382619 718013871 932314595 240840639 754228822 856808249 954818831 498384431 863243194 609371742 763475996 317781947 616897705 698636524 700474115 131480121 584646042 202989689 642878236 360621651 629044486 10280249 152447565 97183816 744351304 155824199 885320905 556332282 873408159 505909657 905717347 433528893 467459946 277473189 299139617 866783024 993209780 37455401 191801975 213603095 301084049 843141938 860506598 319816148 488027921 379794925 896865111 472060643 923394954 550028763 812663711 551111509 850780047 968192237 995599647 68800171 971315621 653639711 721182799 25229017 33290246 247423820 622963834 287727040 290184563 513606807 694109290 22037925 870181979 889622970 957560188 202007388 490232717 374250620 771398443 925997993 967753105 682791460 976699772 588829584 703904437 866103315 923448633 160062400 631712052 877557826 986446190 907942406 990411030 766066296 872507959 198527401 709889760 104200681 141345882 932963444 933058785 387222587 641610405 37283719 611274298 700865888 819836115 328331278 619881224 833701687 991727783 886169426 899044939 433666629 825461700 493737059 562103519 544155044 555730652 671530985 691179525 926065344 997732663 667021231 728806617 820942378 944182382 470038900 937963893 345462907 810471950 949173676 996647085 947005811 988330918 467250437 845467969 283781249 540171288 938335380 957014571 3194017 616854556 733481394 929690170 352600425 495273512 844699482 903587916 875758197 880392541 178908237 423677211 774818916 804160223 326676925 865436506 141913366 496025614 924413196 927768986 781991864 919216766 845009323 961057063 58117283 409204618 80798654 243587584 146087969 523446389 923818480 958055759 171161893 223177188 268674818 594145216 221907878 250904020 753883540 898390222 197823295 852310569 582039144 612626558 972546962 982688891 894671129 999592616 259565127 583128904 269112614 288384588 990887937 999478937 764940469 835913363 944432672 953829544 78603768 95879917 756158733 952521858 606197792 764786738 31505706 808758987 834821945 945266205 235758846 321132872 646008494 670709378 351238750 436439727 583946684 785776158 667523965 716266857 250312714 477226266 565495773 887157281 906192896 965423428 93550905 487849589 4691235 419484494 517624905 631045953 746034014 891050755 57217819 530473651 417243353 728703475 393579483 761014080 510092281 618481442 346701529 403154007 797268539 964555134 338155561 905480326 738127690 910797359 182554283 826599722 492804080 551359437 565724215 642582023 418996288 661010539 882970293 883740906 994263438 999373482 325619532 506775737 452219785 517213598 408732012 643421875 553883936 923733507 974690722 987967595 17324661 316007921 643351288 828693099 95801218 235413042 680805501 991807751 18895391 372553460 228638429 654044896 702031129 737550407 675968135 746151241 863439397 974182435 988111775 994435169 615943574 956547396 848841253 860346735 812250485 868797329 529574030 666058581 312719513 782913278 446250110 532882575 846829408 926916149 675498619 843921936 782380881 835887464 30537518 415764227 505011428 762714456 43820617 120835433 713729542 735376491 378316867 923240668 349495892 975719460 353373836 786125481 646753778 647946492 221727495 709537168 958408151 989942970 387607611 939922330 416657518 791034337 695374720 807745489 362190499 863805155 145490219 890014038 630733178 666312402 19665460 99679573 482341785 568992882 112172835 390986634 908131710 958850910 813359821 998978580 954984034 967991186 817593484 960094290 87838440 404965459 956435963 988411042 860180455 998801250 444972023 696046535 480616465 584481640 923094632 949779591 764148643 954893806 104467358 287605011 845009524 883275953 569137987 646664320 125676742 765172516 408106469 994836425 222607275 785967912 843388312 868196945 335329224 949712457 740924192 746932296 151077104 252656610 490924588 959310804 154953334 393018551 345099911 464129994 904120548 980175447 34360315 561389272 249658611 871444883 514287097 537367501 691265618 918541552 535090294 765835349 477346137 649659689 320762624 884659026 248917683 764574997 730364813 902981796 81967090 163840828 142949582 172481557 413881151 879921046 873267840 914363005 153461438 956776726 803623934 904301583 156302319 885998091 576567139 619990457 984416043 997055230 460887205 606486961 238906060 619102595 653051114 834197598 411886073 829951206 943097455 984166250 177696189 828128011 721742915 750980754 353236972 492077493 618502345 691108123 474088228 671557825 578737743 981585617 55325470 663997088 574080303 666823302 18032413 459157658 282649759 613327717 458871384 822380024 682219524 903912644 739651056 960003761 667610688 995880967 792409719 915126128 586552824 955762482 140705815 666557358 31972434 793606923 122407873 593661799 159604815 851372939 820857134 948095639 715747875 868181852 712562746 936133697 348312625 636274483 999193359 999697352 618232603 694809728 96236764 576359380 99601181 936468873 1396867 993466188 835954310 944942945 865620212 919174112 39899582 386578912 302409549 436939523 477545527 579620788 360147906 836431885 200580024 575654415 196587486 852991691 840890005 959421684 219878397 527074669 215130474 603678044 917171273 978849536 779044081 989674304 733392548 942195304 40643087 421022171 901343211 937205199 487466422 616996136 673195889 740394507 147110901 976959208 23112068 122504157 951730639 994403602 321787767 484186709 535915662 778789315 935532054 955997510 772066711 872982113 678884528 832881443 728462817 855339305 178528640 984215076 116727903 466607961 821456802 886477382 871731674 886610138 510434619 635637979 385771837 650723671 106061814 776696953 707215932 763195288 46479670 364797515 658737753 995268005 387712878 434339610 373061520 792479195 825348472 881874239 95299825 784036120 782864482 955446635 85848134 895823580 595348281 679867773 304480587 896973867 616022961 640192093 300421577 664129227 662386450 752171151 6774724 698566924 488603750 798074509 628420813 989840597 121034712 325622439 63721667 608968504 688020969 901842801 476098822 650972922 338609115 626556295 833244367 979058536 206635433 621579487 209533511 450966208 953740791 986035391 638999702 750761328 863592322 919375466 155489844 908058258 709359629 931256146 8834255 511318459 769070786 942270056 434945523 622625721 245868062 413978561 398283271 730152122 718758881 809368205 751835018 845504340 989340534 995550235 552304250 718975895 798468525 943354176 8813662 951480068 237087964 873715372 880170648 884001933 624167172 986363843 7914679 541821903 469324279 790058344 417578982 597159914 285357290 775818301 252834347 856169851 591273405 704293818 354039375 371529901 913291682 921066077 34792625 471891752 550237297 827195660 602156309 685036510 13735711 171572489 145082466 874625937 985235017 986967680 133533806 894879331 169969435 413561039 670509918 918940041 218458241 854579843 340539898 745175770 625348690 767331526 934069469 988349219 934700744 995569496 565386766 789837625 602759296 951718760 582997452 890233437 96669438 795760185 915050782 936278603 372904856 737230072 868248036 877251100 28965123 653609377 103031671 248588174 15064290 340777875 628751454 843582018 790205532 970683289 645293311 834876423 359207163 807600711 2313950 417307450 641222565 860898226 200892535 315329070 253297394 759664958 803203445 927812087 270820999 827153395 941405797 963286804 993755783 995532973 367999108 702026219 343004966 874382003 457962648 670768286 396826168 820535663 512582637 868300830 464501887 735348344 184362713 194687471 320610175 801361153 665278526 687998158 627936090 980610280 40614988 216179752 842365768 845970523 948143354 980211236 650186746 828164902 709429750 994709776 464234604 524523169 690377339 912668846 286334968 808293177 723312339 778116361 293542628 524895098 404438785 683678738 962178877 995471723 47651502 50469441 254691686 290697874 192126019 221817094 939304963 979364383 923936447 948301150 90733050 618000348 153523335 461458248 973556087 981404794 269000115 761636476 833713274 856744178 715211066 970427961 101553410 112302265 188632696 981858756 619004075 852257436 787533678 943262210 461895297 649246537 57422040 809945253 565649153 787691477 609847208 699284816 510940295 780533789 793526767 868599529 819969499 990050526 194245997 943528534 174404329 675252097 987074785 987951002 481768728 912381884 7096535 357826212 81106568 694461359 476720961 481904991 445546620 658641964 193204640 442019932 746542336 832101873 938520502 964570702 118803561 461782505 250045883 736633211 576303650 645355179 777162751 881266326 622747520 905192759 513148012 665842339 279399145 782832494 318209045 537655070 830911046 892794942 80604647 226165867 508440685 529724273 259151944 851973070 512480372 751063128 463949544 779505735 252570819 618179668 814069847 927155026 103766334 743529838 748517933 815184389 223210924 782373182 505302692 977307253 292487259 586341243 110998084 973105431 440442987 543382264 569524019 857456604 972215606 992080178 81038599 730183529 611234250 812648342 618977127 708349852 298399675 953681547 885518180 970234384 556586229 698911400 849297550 982989984 535304047 616963455 43863715 838479207 27678526 363568557 510213569 956033771 549588733 786011326 28894894 337071601 72511207 790081884 138876965 861822004 815975324 837400145 891142411 996368865 610075769 828262330 864166463 985359892 97397756 929181210 55294343 568010728 265706789 613395935 335827762 567995240 467561519 943389279 559001550 942626989 767128333 925455262 747825408 973147463 123337689 956483470 86691031 464351152 311792183 860465125 873335015 885697033 195843970 384083870 902117417 984341022 989510000 994511455 556100767 838521535 547082976 692797006 690592737 950259576 296450056 498084950 639318180 659700064 585063933 754681918 572409139 793372754 644293189 711599116 296890619 303287725 756661488 999961976 113750065 505896140 474839213 542965846 990428104 991174614 875995396 983151031 252896242 410510566 287205087 329607612 658959335 977992307 420710557 529813558 996240092 998862054 340801114 505532466 737998373 771709654 438312529 974788015 671761529 720440603 611011186 849648879 985525717 991096099 666238214 785243448 801943392 814429801 24680397 774147475 662476972 709375291 367915505 761951082 293770975 398407576 7100576 951521580 693954060 707499374 210337611 821711165 352103406 471247650 3271348 140839779 861100057 907721798 824219540 877194956 781976920 960903190 710937441 909599124 299915744 944495657 643603874 740137324 996601204 996806558 289504247 827550105 408034176 872492954 19052255 85692130 982355744 983563418 970997656 992161757 861978488 966137606 349204000 884059721 684429132 856398553 766046140 959316369 963840762 978591391 314788600 662536226 987894797 993187946 711221621 885511162 577596075 644874463 635790738 668548743 340594031 451080296 427274482 601700347 685707627 980424055 365558279 665372184 152352878 796101699 102328000 857481525 73766950 904329370 200991525 553218839 189392070 655734245 652644961 833255883 531898234 633823076 323758314 830576461 864351758 950821596 975179516 979267901 361503139 847491680 63795316 370989628 947117144 983115507 133089837 667688499 300747082 809300611 500727836 843725065 263771093 555018083 331667762 512957604 65928113 353205455 363849521 438916266 660787174 744028667 650802562 737288089 534833648 935285365 380040 763577955 851897916 977701007 33869945 356715706 558739362 678299701 567522426 688275777 500882484 848022320 35477798 655994129 568254646 705390520 704015675 813537882 426135793 467598590 236889451 242626335 385987696 673812039 746898927 914468085 913289132 972116189 571112948 832489029 94513007 231477714 893646581 986177587 426083383 433100431 923235063 955147784 278847804 664716094 195434816 224334420 812592561 872365233 235613565 719742686 859642293 961087644 498560103 877278810 814905251 943252151 575612951 780201432 998342132 998403850 914540837 945922900 19740032 724940360 202014150 650925667 478479662 903373140 873861834 968612736 511906832 736104609 636084760 936139019 336378766 397670299 671441916 708733824 570915617 775335009 53230677 920139462 893377942 899086912 966888272 991199810 609374914 988454968 719818939 839448271 246352682 971400282 487696279 550391904 687312820 997480188 644834564 869547141 85608279 763459543 421278508 603067382 34365965 345966384 465679698 792690200 161935678 584053721 291437312 902646697 12184718 245697944 609704906 935469558 952251861 977600048 639732728 958161385 763018129 826510887 901320521 960959326 299664985 885109084 665944966 760328356 220376724 872415234 972290292 972978518 921300843 939794966 355279201 674413581 715597220 965841070 931847388 940650223 739739801 802495551 207626743 282686289 675866238 683200515 57146464 654306857 171636167 638482989 197700421 228486251 595535322 953698325 426143877 935766837 73432683 219023695 672132429 989358383 569269391 867691567 260507143 281498330 6399662 798736062 184384493 226537473 146185748 612744192 814911458 920347765 626809907 691447710 359021660 933080609 662981366 728879240 809170302 891357478 810115285 945631555 756023017 935757019 257744242 856552392 132313243 189375640 361315586 623201947 999105894 999667752 782540070 806710985 747730494 913107072 24431542 951737663 345846062 827788912 586885595 618267633 60439883 400038495 175454371 598220870 590562599 627860674 111262371 195021842 759000578 846945850 803303707 908924008 796772455 911043098 645025677 718987341 544297452 720058320 738665597 772888525 764750448 907831754 968149298 978126221 998884221 998979930 136774238 736771467 225067612 732722323 263086578 594767138 74610432 942189218 872011549 943031324 780808843 815855143 829788702 962385670 346520786 863151951 500746128 819318742 431121745 716896579 965081016 968656282 686909670 826408522 10146986 481853190 645098476 893131524 753240532 763617229 65227498 739810147 860645651 994526103 70791365 794401232 142137397 693570633 895213094 967288049 151090568 626366866 143236278 205496045 280979680 730816446 907964190 917496020 787562841 998963913 494516341 642686189 424855003 539890644 833391052 989415363 211027705 234610994 960526619 971855340 227467338 521893926 844459342 944701796 978194986 988832343 983071073 987009432 489522889 704682363 670394367 841556199 124772438 592796659 307704054 428832935 344311058 894550421 142663707 921655962 5808472 282611967 604270762 679880144 876888305 990435910 836715649 949653587 341941683 557072971 752113321 772832386 997384495 997716566 58026672 795356286 984714183 990355068 293920382 800984598 310221561 559039103 658307914 726563090 445321761 999263490 277349060 689591465 241245669 544410171 415585580 779517071 790852783 897428153 938233835 996841209 462572702 694640929 81008972 277054752 353220958 951812317 862764926 945775810 286857144 721075210 808447535 881790534 339386597 551677592 729312060 871850482 974899757 989716608 874833017 950621843 624550176 853694983 668398228 763457833 244350277 967436305 42570963 158376332 944293833 965107201 304452705 755059992 963959173 993625240 686229810 924223649 630503680 710330430 494670494 657322837 709561067 921316241 852472331 912668327 428272105 692933748 822166895 910595879 144770943 907098745 201209444 218836832 505676717 741210732 56612852 295446574 383557103 596962538 281118305 702671322 332598827 965918255 518318262 533344707 491722280 977144332 235183149 924171798 718318315 863741913 423050253 572396894 983876537 986835282 598435067 977998554 100234662 961171379 326051859 513425448 500150868 729020276 480760295 878322134 692016672 952384672 833408199 856927603 94607634 416077725 984703777 998215065 965537952 984008040 397581009 424854286 961072149 972214410 126278831 861761519 846566802 875643218 484378421 635572995 407746335 574688528 428646435 874230383 415340996 441397560 657921926 835310776 259338054 564336285 576030745 576861690 860113920 916245859 936447907 947732283 472661852 678224368 24020456 962432912 38363120 259793156 978968822 983474894 314825014 977977723 479384642 694044423 9705114 473449944 586128224 728052799 485938279 915333117 644873959 763380140 702453979 955315474 829657199 885561176 226045711 384533602 514734960 851541824 382330419 714180099 26634763 234388432 605671378 743786983 998080665 998853365 945570595 984490207 113756591 753449089 236418304 925839698 270188932 619428592 561395769 671594765 311645961 672075696 856415041 932093636 63225885 463429929 539246757 947336092 643752284 895976335 996528723 997534106 341639456 819552973 490019924 648087812 520820636 742282169 465364059 732521690 23268919 358297747 93431388 392249529 967518960 984665670 889684725 970329784 948518165 991353847 281316033 842477144 900538150 901643147 457241460 921704186 916733622 968784608 98277633 994321023 981071886 999682397 145689188 544367394 746666080 889902958 784453342 988828966 251746962 616687101 413458336 476751966 471996729 816734677 134473572 277099350 169031355 958394473 73965602 245834866 305916552 918521131 80529983 452084446 735688724 901320900 775142864 782060350 787160624 861188737 333661780 458670999 389142644 711893880 267607479 267914478 891326011 903434089 213902573 897857357 725891001 958891620 569807024 932990160 968052371 995033215 768963168 769057604 222236321 282825638 11439142 470539085 410945512 513756534 271963014 509220984 30444114 201310205 813485810 977075849 190440162 952835809 434507024 578675719 535183635 587943626 872151850 886851078 876358023 934973321 88134012 709825559 877439196 945949584 620509887 967632415 93820237 211864288 286542974 562710957 980042014 998383868 671369763 923794284 288768954 417951906 628322723 710712548 963306927 995756320 344620649 492821154 421054911 451502157 815671424 962929511 15410492 565586596 861415295 889622441 218590477 976544023 638173841 748664076 442324294 758107069 699506423 795570134 580856182 939463274 251317955 689081058 411831265 515696188 811692806 970431157 311753207 902574686 204829072 354857408 129142699 581373154 996485338 998045114 802735475 938105193 94492495 366390917 271596096 934188821 60834023 630863846 974713895 986402384 482063187 605330275 974851859 997237627 941768928 963142398 130461363 476486308 567031131 796773453 693951820 843409680 591886343 908195196 880656920 913736737 47617623 558873600 104913752 362133191 905666187 961808445 581907425 683834314 352624073 645112628 814119252 870710679 660364461 819810157 695919722 730109879 169810073 203753196 146475304 864994294 853934096 889571738 635254286 842637549 397391556 456555504 616425186 904384206 216777301 878196477 212689074 991731316 482402054 750359604 705217713 968650957 139162647 527300308 361680511 628959711 622451358 878280952 207462021 602626496 990209335 991364291 773679964 999496140 989993375 992064744 175215128 313169412 39742499 900564054 424186062 712831090 499101715 747285650 870693805 916755715 834801537 862307296 316022754 739119298 378621037 496832536 262661925 575503403 581222242 691797377 887199519 994910658 38489362 597478572 405323291 757292800 206152381 580321535 423237128 558651457 259122525 949035230 48488119 580049114 877329587 999937072 893200903 900038889 814204652 883191459 380609059 760041244 69538990 193959417 820122400 836828550 568970566 852579526 579000468 804327737 809037555 853641898 291130180 308625507 792195397 806388035 394164048 597830199 837219675 991548498 500192726 654365307 951246286 965317029 334169943 556983808 556015590 985211524 806005342 837103161 968495399 988997350 576064235 644378981 876793402 896649933 116873062 161239148 950351237 962856054 125379238 480163976 824636346 919079162 218692440 531159322 365889946 633114721 664851656 927116958 271339891 487908987 165978314 964418327 844860522 961466867 551061576 872458433 29835706 710247751 842482244 916201376 352550958 411111289 86194642 102847138 919612225 945473636 878232158 902886382 509304385 987678562 499132674 633714724 191800361 842581589 627707537 919969560 660646116 759744504 355052955 947897097 166670188 537839004 974631602 983304977 908334489 915362805 445306815 597424229 68266340 449871913 840736567 861360489 432490565 799468590 93259542 690834611 669385126 804857269 280753121 681574760 270069432 738135930 595352978 823409398 726030504 930021858 119075962 959670663 664303484 697545947 374481308 968082504 599616074 686982184 849780293 885438124 804390920 847536120 574067716 857554223 538569849 824180164 11334773 703648896 940578310 957256152 230751131 480350473 513775613 564736193 843116885 860065181 38494901 734873902 511178928 892242764 382802723 623218603 555681434 982708124 688004332 903149615 311065715 573135114 260604386 470993496 285232850 457722675 604442734 917959320 608532752 671277887 393919278 643371820 141003775 532215073 511390316 710273736 507786789 783785862 268502691 790077348 229947339 784909784 585309138 785880791 261949060 645111357 763488365 994947891 735375242 932502546 720413912 997003039 23959119 222060243 907574685 980696260 476134530 829005270 48152970 311424577 262413283 972186769 217263824 232127619 72324738 126912679 554248442 889198541 398180869 966259422 363483306 733388668 504021811 769393702 317024936 381781744 155659207 630393807 575473672 714882823 48094847 928795008 287025924 478214642 363772435 370633014 804051602 981332165 8088354 626882321 93562930 418001040 833043847 901489977 488247066 761271770 961974197 996179427 320921121 587406876 267628347 738867052 253566444 734109242 99502891 477490770 529121238 900481529 768365627 915875647 761722133 768099399 776231192 824250736 591906807 777155444 64099661 937752664 185636013 441134981 232854418 879224523 263553047 558105835 395097070 991860334 6940632 536983905 822127496 990974609 693042573 821930648 785480420 841492808 618342217 685168099 37822190 511704545 129839930 809268311 635942539 787916590 150977544 413369799 85784275 828525784 579586593 619297958 517790630 556919575 891298568 895364073 598281530 781623880 29226453 681277349 88247552 540914182 730077629 853755695 610289658 704316782 608236270 808046730 230527813 931673478 516270674 887420765 371471888 845133452 48493082 600423963 204443453 682603286 218083234 850911760 714985348 727028323 314823676 609004001 249333662 594919119 993030034 997578405 241655835 966289618 293629016 967035171 250464520 866515203 355401652 752933944 304145995 763518635 440142136 836240828 859969127 935021637 367192736 888421890 318402263 597398256 855328249 994470919 197429998 646920617 983489815 987821981 652771250 735388605 401687226 468162365 269895591 861977362 864871802 924832988 760704917 838600065 86886418 271077100 173122731 920274873 689716605 704473986 271504331 799978690 466768256 591884912 472363380 713408847 9780219 999954676 354591065 420862078 9534175 168368084 802693266 985295512 20409782 639051503 567933688 937195048 404399080 617223296 696555822 897996140 885795202 969604290 520929898 610359757 54219440 412170200 406643159 573907610 357861795 998822564 506174826 752500696 266365907 868569045 326552119 480108921 376864286 807564345 815397656 934912930 594823379 963579801 548669705 912280622 450132572 643233013 571178725 756971351 145120699 412877867 768961344 954585559 140009165 205549331 836938744 903428626 595563146 824558464 601963898 739768743 532464803 843045388 799869866 932851767 980915628 988481677 536884255 813937394 796859748 987860137 166995278 901498038 745968707 983163189 73965067 380723441 552395119 823380998 643564238 867807659 448657373 635676805 275490511 567015431 29463236 807918384 140372874 369079289 975505810 979713612 363791322 787990181 310458 897613186 212751899 504319799 178829164 238288009 996757475 999666634 85470267 781758459 507946954 538845308 571860584 580249467 975122530 995136775 42387592 687245315 9011366 591642639 12087223 17754353 59362150 182232566 66694446 711001017 168618395 495789508 4934880 330093948 276296546 930524002 343475609 390540930 908544364 911030831 464350667 936243013 367342717 850474019 832391031 887441820 762165669 942548773 584968448 910964697 917912478 951239109 64342318 637499871 805975663 883787037 123783890 236181838 971992963 978881339 559998474 974842826 643333193 833719129 486047189 772620134 833308788 838722049 837217285 898073304 431820166 676536854 722809402 810169807 762928400 894211951 859209504 965734897 493581326 513516726 820032185 867072080 890416074 991573564 546756626 772746358 844283127 941067270 471235687 755755355 247667217 560871747 989133908 995031757 878328444 909159366 473143477 676241029 271774337 331432450 278151244 850942693 571351338 682995119 568043498 665216919 44153812 593743592 865658776 937505269 626334342 778152214 562466204 852543130 947038867 956981446 136895491 666538327 129918954 303976110 857878804 961473933 537482185 728063519 479720549 884017997 628070652 927478351 357332994 722193664 752823759 969151392 216177082 453520096 260964957 494539622 320482037 676617164 74945013 845143391 410375837 923613379 124286969 725569141 884157326 908793143 760164846 761363650 440034947 939491812 965750504 990593031 218820672 681156056 429997174 743656219 503525548 628360580 377804473 764054544 687582450 783322807 521974869 784226593 183282265 713025224 733425134 890638047 525520387 663440396 726085714 735350589 876049685 962439548 53120676 155491904 935469225 961960314 358930797 668554065 490153994 501856221 797462434 924264304 838356918 958692702 463066567 468187071 674962282 677070385 838464556 943248440 357711962 736038914 694747876 948648936 888537134 965642521 140674551 771808163 587410367 778640905 332781160 890492755 21945466 367950702 792689036 890066659 193151802 749392432 600751766 970552395 283705730 715312774 944861657 969563383 566348271 670081596 255618488 491866402 722681003 876486011 465320157 724766269 590596604 891380149 56888948 558100301 128268398 787738732 175330275 269244778 597557489 707832636 649820911 855830507 929518078 980496728 242708374 939671646 703652644 972009216 338372834 686696996 866725732 996668959 899048527 932193935 808891775 973542938 190618954 525972854 750960365 946899501 527861409 639084129 24048729 410349318 754764103 903757518 748309995 855357774 409684477 491538773 218708678 502629457 39680031 638095451 325321768 376563859 502172009 635316848 769879692 802260274 807219943 913843440 40207243 973423090 223330639 390055304 77268137 561170070 676326899 696292428 644755718 894510966 345181278 429213227 982172681 990067911 698314377 821240835 130101363 213543206 121297770 995458809 860816163 892398820 935393437 953107508 640837945 734662329 4862339 130141714 938048358 956452142 722768133 911214073 845199850 966818177 212464447 317589453 605296408 934404221 109784548 587512549 315865502 383598452 905726170 962133921 703855300 839413988 487635926 964795757 367694887 900994977 40617581 362190039 325992013 471006240 1429266 113565087 847915130 899007829 245513341 957108171 623124455 624282511 575807191 633619070 483385073 751006792 906750244 981015589 528017157 546213955 651617726 842977753 375097094 469505611 712568983 909121561 672382680 908009416 361259357 587279939 894213643 934283215 784809529 861812518 763029873 961257724 257491516 950276393 711508276 885389026 426854021 807819117 946195588 975832327 52180210 401061304 415656763 425392579 439395887 838140155 210898361 446756841 61832996 647689475 634820115 887433721 451901224 456217450 827161880 943017735 415662956 777480997 11077133 415741258 837594802 847248124 615182460 730360216 908240817 947668503 659142534 685122271 346045772 801696673 88428580 317288233 111786571 332042436 743892698 867646353 658081865 964202131 987165125 992655951 26066754 352789825 963952380 967514158 372386201 509746737 442635813 706650958 485685112 522447676 976339165 982460679 4058487 723691751 261787586 499886486 382947387 647466090 933424828 998673506 225675017 965517004 772808033 795110668 588215607 725807750 349219575 743464665 542856962 668184418 117167730 150297525 212696960 856464313 102237687 225021494 263735416 293938281 994036021 999370525 661465300 747113468 223659903 676742151 747652567 865339063 526899878 984858838 740154811 921229632 472557561 911486732 48583520 322731955 873322099 898673015 496824256 569145880 661334383 688259991 441836548 484667647 241511281 666190309 325849374 558742449 315513337 839981243 991378963 994123716 852244937 861699365 407992934 455198546 468094450 849402002 559059822 569121244 386950813 855418009 486317103 775318002 875903974 968051842 862374630 886585275 701494465 838017549 221075236 505630470 777954760 981745293 905579186 991832207 658012385 659094362 801614259 908853442 821495961 826016079 236943159 938583069 257450723 405566727 222453798 304585732 377595423 399684626 889854769 896227331 694330944 698889223 789895083 972631043 497673046 570300568 879255165 998152389 114126304 144188349 77877756 937524563 155962586 237228191 931104711 986512121 955629906 965665938 902685813 907826466 807210582 926409957 659135908 965771434 815727837 960509179 71148500 262007571 12179960 195010167 189203558 723549028 458638383 588977603 171783012 927429196 147413714 499885203 680462855 969333937 362748515 574614031 172906567 382477065 494622139 575797874 202709527 856316806 133806859 286969471 892937585 924951093 53866418 860526366 278387202 973422504 217393650 642758164 334083023 359374614 273700648 474300913 828437031 887004875 256566261 933377402 214835793 784824970 153896132 899544861 942467676 968161761 369226276 532006623 637008374 835499279 68364925 233965087 583938922 707643605 463538872 905287681 550078794 750396718 900940123 999790534 133859877 266422450 910223324 943527339 836974118 837508274 773578146 985410195 356330114 596116582 192754460 684134343 505355719 687751159 860639622 893142270 243979398 846946123 623230742 764915559 337930380 451862435 659191739 773850096 346754307 989011068 832870150 949699966 442534467 861804865 693107766 989886587 961332441 979261359 197108077 558480000 205422124 346764948 702328628 936954645 423720923 902249819 7078994 842307162 671719758 740273286 146005379 414337289 155102267 470897484 115118382 777437089 809170628 906445935 71302047 187256055 750316103 838340462 570183340 932692992 48520355 274606951 861855332 891314539 53079161 458823212 234858653 503542181 123465399 739375451 238437919 542297235 766056490 983393336 194162632 333012754 604656835 873120509 228235907 476925726 220272650 319526097 120914875 556373733 607095548 777176739 82961620 940207191 795782721 944387187 672420096 766686975 259090786 451273070 88138959 481303696 266438699 333883523 544443575 849205707 557965894 760329135 872173121 981760436 683972367 748872117 446909244 952095396 34028921 54604842 648925959 896895129 760021342 988342461 996695699 998046506 818188899 976318420 425187897 800731205 140935301 245586364 335873924 745025993 70369047 782663429 409509426 691788573 149321020 158060151 123797561 850209553 407670500 730020115 266885330 465079523 779528771 872061309 459699477 542510534 810781181 941878683 353003117 934401580 644294766 882889344 334820913 958854174 190731203 975187314 232100664 626610738 353799840 793644046 231784346 705857948 493230715 796719307 8009954 319826876 781881939 951031934 122310154 146767806 775788192 834769148 797255458 882500354 397334012 991838515 315106090 848472979 44596684 238441246 279698389 534226766 212409856 266382471 639017440 766476293 921700709 996719770 446561669 992672478 262526602 700682631 51916461 650142170 468794628 545088498 714858922 986961044 10871872 892266330 190894950 470898903 418523850 957168830 848384801 877762325 531974390 705364538 369351535 635344450 580099308 757995389 667064321 774272093 172532004 684207944 787453204 893747131 320901452 846607006 885220541 986414972 434128347 754861735 242276482 390340054 519291953 836196412 334757853 405965407 129139103 612365337 447389106 489542563 194834615 609735667 521654962 686091373 56725555 328017338 486890040 679189476 530829404 721313453 789020260 972255324 776306204 904470197 905465345 911854148 845139764 994801935 987030154 987423983 955756963 980921172 157390262 460076207 691320604 714698454 638071180 842032069 371838158 911771133 849027690 999446615 256972016 644131884 436799243 519426338 728249019 872435136 928081530 980153386 493253814 837513537 53299775 867841549 328176931 792405213 290558307 536423475 364416534 643338360 663882209 753089243 271205535 638353784 110847450 645832681 745051008 996303082 924991361 931991112 337761591 880059619 746884421 899080340 956437587 989008563 221646739 751814640 316402285 816078364 523478479 759240546 914398155 981221660 17072445 796874791 234697216 566644450 62589782 635624467 598158358 945477130 793196364 964061040 920115102 930837240 519440977 556246020 90261149 171129982 246776446 494291655 151889826 181910145 502506120 971492554 205800661 982024060 499260210 962611047 354442221 976154630 363866142 457802986 499216614 705560113 637405124 839302057 765811424 976697059 933015005 957377705 587040609 713487437 410745540 586507740 777929832 956618836 232214374 314232053 86480564 820509427 792099582 873877553 176624340 856626866 577876390 715584749 563837336 666403168 113567157 595701398 673727165 924210211 916866903 968463684 705640172 966322824 398258780 433091166 554767818 911065553 891202160 955040740 399188538 871883212 529492503 831791811 287745622 821104341 492982544 882982562 99163745 903547128 517414219 944483119 290393574 696122479 875398292 953408974 41891028 126936879 753643219 795476984 248148420 403715100 990992745 992375152 793523096 837741085 822439316 916721187 493475320 783471941 696151746 932527722 737321309 944435313 759520998 916229418 765644832 848086906 54866870 167536660 317921469 985095848 29323735 215564386 788467220 982485106 829862298 987358175 178600987 406216348 571090362 933988356 124015054 190804826 758821206 852990006 775252470 812972833 981516323 986623919 223541890 992465513 128693995 608606138 721966461 971054226 266637817 649896187 392938204 919227658 244780758 783464994 989799552 997898824 349542565 854874882 430427442 645115241 478745398 656483188 524016342 731927672 725390268 833711230 694936761 728781747 769128985 784883359 193113544 358624249 586627639 922650297 42417065 575882607 891605247 895037071 33844745 856854276 861281593 951747692 699194486 797670060 428168518 688355563 372474220 380549697 490739063 792077541 794580379 876661974 31581425 997180685 224695185 328097602 44451675 395173424 663708842 742398506 146570849 915603891 457163834 651743321 800649845 933852119 57013262 868480874 667633058 703554641 315911955 785862495 214444365 327177103 504909548 965962433 23059495 733667235 225277222 441871272 704772137 866640784 275705781 774691787 121674206 478879702 670970382 938463966 6552097 975893596 746251014 815302431 612747046 802198155 114964476 476149441 972399783 995128329 749720647 757529305 101887200 579319670 739566707 990917363 901419727 905502739 113489525 802993717 707915367 736405611 105657863 848230276 660569831 853127863 518347812 522429251 98555482 537995077 240525029 514991951 843653643 962183949 9831038 247211058 115235303 288043798 498719422 506217004 324363380 769195183 699370058 998744854 708223678 938295181 691511277 693386407 684689558 886323659 894597179 960289121 117972027 702292831 90164599 390762675 120214461 147954638 193619922 712787839 610884346 618895857 435930327 816549628 23358700 878636982 760417187 909705161 640801760 746441661 655787309 656703879 32515269 559302348 838510971 939921816 904547883 986949768 912706382 997865327 565333929 591901293 506073892 798205106 724293686 730213424 474923113 924856843 749774568 839345196 21671720 347130487 493700235 678973179 571455813 725212006 998266394 998728511 398055438 613498926 369337943 371725642 487198864 549749981 162057907 800896692 485969106 674201559 495360254 507388895 87672271 962148502 670084052 742937146 259487851 761749623 415814328 900055823 245685038 624441023 966468713 981588662 923701612 954620968 921517476 970281285 24134910 818284384 136212897 902148660 719110380 919262318 48584724 658574616 371215094 931481252 908254360 965180569 450024393 938888879 499086400 994800834 160276941 296126301 248057884 431009750 636466958 723754295 89414525 677069671 602125093 951717116 646676747 780571817 179810214 203202456 135081476 241817504 280223556 383478225 520811279 791959444 553303916 570640684 652513347 731034993 970696385 976630486 993211877 995107699 875932015 944055745 281803921 741779953 884357247 951454202 793957990 880997212 49624078 434234680 182797522 216799055 691890788 925945539 492274452 837651608 76360034 924163766 388964236 883009803 94290204 909384297 624233253 667999050 592086561 701968927 218378215 419312370 758002733 902227144 175082324 621936634 83568621 732135305 188712222 502505202 779264835 946766011 314553451 476508342 364084824 474551608 538468644 683865215 256111054 717184127 577907971 981803670 958531763 988735678 805521060 962987626 144786798 354271362 136604545 893380527 769538964 922910486 866335990 938995728 746960801 864957252 984280872 997257233 100863924 190300575 108058412 473872318 343377997 711333113 311192980 425809024 904921911 975928375 619196300 762994451 517696606 699105463 671759955 947077760 584320350 585455681 803377251 957682153 627471933 654746260 216403683 816258930 647036853 703632273 369017210 507263693 774550811 932383844 360628373 731358581 390816125 570803895 240939817 767032929 916277 367733886 562246364 606101677 904169954 943180295 137038480 276564841 765561172 767194987 58173874 358568399 807232224 965750139 261239532 869134184 596587767 961820344 932232192 956373472 353327930 751685248 459703956 883790654 386635807 928095284 389352165 829049437 504755806 527705756 453622313 474885389 358797198 477616363 828466499 887072031 170880074 280268738 734221024 850699860 950507961 997958650 602118333 839227262 448796835 912090818 712084214 847080634 300575075 851156727 793633341 890861690 702627944 847695737 246430564 357125826 230757924 946642845 201149010 545127334 130296082 203736174 375928262 418972684 936456303 942106280 985553627 996273976 403663322 814118242 745690218 885339621 350669543 915766956 65717983 404927668 378883692 707703396 149911350 723182906 867281543 896717637 491836625 776512878 285218220 429711055 530179689 592793133 846509022 964614238 46012120 248161070 745673305 879090447 390048078 751449150 419971158 427622978 818793972 905346559 657376696 999012445 804378825 836832980 49073161 541918594 628228716 765861949 169588756 314600021 732994821 753828354 283399898 400289167 107584880 949616084 826251695 998045481 357201482 555124759 622935770 979303142 120597915 984729730 980755739 995027334 534597996 573468491 73380552 308876468 932208461 966254672 661493507 812452807 89464841 337326663 940679023 943715818 624668761 751398830 925832858 998360389 57728513 484666124 178582041 347678695 20966012 623843472 851841961 972394029 812670556 983313798 202702282 427194335 176411318 400134025 680876408 952310417 388998470 937404319 532701551 606023086 104021872 716332325 490850202 768901061 787216840 868778105 616121028 836163384 353107920 616884183 469747008 569386934 712047467 906857272 844160653 929271569 578871007 757841177 556227124 724924053 255304799 864975282 288331744 400632236 538962087 991278524 163998090 299084712 744291202 899496665 121884112 183141830 692974591 846039120 495454451 505808824 708946374 721198945 228165248 723348763 9965667 109856506 917242087 982026643 432256797 657485360 316247924 439664788 583441106 701750328 27879607 345722769 508892656 818247006 64695236 104182345 13619459 554710845 790493781 881697202 602215047 901875604 373713219 569938468 416050035 550793017 412652352 854448618 786001693 796431624 367039434 764263631 708807650 777641464 97623009 692218089 708092604 745938342 645472400 701416182 977185485 987244480 897846288 948165557 14156214 942660404 154398204 590717909 262368436 588117684 539464214 733599529 273061440 333017767 343057488 940566292 159386980 748279696 706101136 867214933 601241375 957232868 161056298 721545020 773043667 897180425 19570490 59078470 56284506 429243692 712736571 765655872 293708697 792983799 318222265 381054520 273321429 725178326 430422694 602470728 412751070 619481585 417500493 850765684 876147655 991824032 933983123 936301543 67813967 411721097 710857003 758311509 205095893 636137339 623171319 866638935 984244019 984380231 433331788 650059064 136826137 391755200 557315298 986758030 584417912 937466023 181301996 659073694 98171572 465284220 428142031 829107185 281695562 489991998 973544738 975365915 707709351 721099434 39336906 344894215 147667456 685523208 966890734 993075778 125843221 737055760 392057451 930416486 649896127 859402193 665361198 719454320 853877366 981951175 264135372 906581210 372610283 463046416 124323673 726288329 584034947 641835761 222030770 609467037 809580902 872250192 847820311 919080018 903237631 918737917 785185198 969576713 437475999 994341307 366092351 698209497 371999470 530051920 432297905 804507718 840687802 921223455 326547169 452044852 919398349 981798357 525136062 557581008 120761438 711430436 626029463 772198054 450189214 565896584 271649319 573273632 537968487 835996622 599540981 964904273 115606828 165898239 336359626 967200465 662780728 700969148 889980948 969650141 395256791 887314785 106304438 671071668 2742581 99771991 780825137 847259898 396843852 481745844 519889877 872919142 404121347 449439234 369172413 452752823 844657662 910355288 887242649 972289221 532416309 583634838 526790006 773554686 977240173 999036065 271348620 574114363 542131356 722631863 148619351 622563024 362050083 668827585 965780782 974443409 701788932 708258560 307946816 670261396 687657232 952656515 845507788 910932140 340274594 464147411 980959954 995090248 897378423 946779967 205049309 262120745 168535831 413308630 440452546 452251150 656369014 798044341 10958730 339875034 99476536 320304279 914807831 942063381 541119428 876102343 945429326 990914880 716469370 956711565 790005855 883673842 772737967 855476800 567249803 654660019 3374994 561988096 469894498 906361331 215970756 265487272 661345855 694323080 384744949 848716003 315161014 746814215 705822858 744219490 87278669 274127901 415529810 809938951 857341611 958259822 748613245 913670229 811822661 891177723 132631446 458575268 152815382 209530467 217477682 356512693 171709454 314958075 173923155 641903733 761456199 781837766 501936921 991184221 421673112 446183349 924698664 926449598 970164547 997241366 598390881 610399499 152251319 692066444 11660011 941458767 522755671 666423847 422127660 845458331 372636300 941220948 893030853 903936391 97999744 787416504 289744715 485725897 250586274 747537542 404258681 617039656 101126715 515930968 832310463 857147213 13342733 960911808 424127840 730419671 921905520 998891078 424726140 566728297 276272861 551615352 291080834 568942450 296825948 335835079 277161313 654851420 537260824 701248870 485873267 799776792 155629192 989823545 806973700 908637923 425813115 436906541 639678184 937986161 20637740 182991667 817222651 955102540 798240813 986730656 651581208 950203385 83866889 226996695 270526112 757897346 359475916 368887997 968105621 984913561 63544523 605953782 736730086 823434775 902881597 942198899 576939513 769878848 75220536 486188582 99969984 429546127 900687775 922656893 321121567 565154992 199358706 335362675 464551536 650927013 985045973 997256470 878672232 882716968 410982228 922931316 893334243 955348128 562351408 938594365 432302911 798697748 401061843 937714238 640063134 944675178 60658338 506324605 506194511 608082646 210797282 574256504 675675543 974998274 688431366 925632809 786515256 974060053 973112507 982708745 69338095 142901164 102250041 903899875 233154273 443172806 239212130 386975230 253718248 910126133 463302063 836010391 669895982 723866895 487362393 547091536 762009088 864114298 435598378 480844644 821795360 935680735 919289261 941540924 254063586 498618806 272589332 651198631 777548518 853202912 638446030 856303889 211374698 304657664 93462137 898760630 785666703 890675704 203735447 981247950 763734524 819249347 93263776 763109331 518518102 852686732 377056769 698701455 480685002 854383080 327925187 818719930 792409885 950442439 633071652 742811283 801498258 831072950 291038638 406732864 804127505 928065613 309654560 937308623 350717071 460977924 950997405 996756189 221422748 746299054 876697025 982500823 613728806 967361218 1801689 326509465 810751419 934012308 614815396 928513719 899149582 967327854 747319202 804941823 232720686 416596308 580516873 638237877 81219627 727204464 959295437 993327755 885098829 983835903 755442078 778632424 430617090 564606170 54465721 623849696 150189485 556334821 897930395 901593076 252605293 276450411 477962606 684258911 22753536 142170908 290003745 754990340 820628871 850846469 589873815 804584365 883641032 889801455 692152621 807779317 681899622 873148604 948098648 959975903 900318612 981082333 159177822 736989386 282501832 966139891 872707946 878224803 252495220 701826463 871186667 922719110 498948422 794869331 984362221 988412636 996621580 999616174 389671741 967599231 120516206 182406113 437033832 711321260 692348293 980930245 75040682 929520641 519280129 670280169 911993692 991698449 488213212 528057400 741122181 812736257 745986736 956727150 926573655 930154806 217861047 668781346 560062853 625956374 734755954 943474602 354357728 696555560 463664127 622474441 910988420 924365132 943210455 954165062 604324826 744132776 40064443 308936867 919758452 964170069 136023662 891026586 486030703 816339598 540321048 743262204 489947759 921618721 743719071 812698489 525537238 813473713 902918644 962921515 241592211 308278808 250950599 456108898 65011339 539774127 661890780 747838999 294150512 782504098 566748613 794407633 532228319 652537213 628175337 920361673 597270271 680397455 319363338 354795212 366368451 670052464 865783922 986414995 345697627 423021768 25636709 91068152 145772016 471383771 568449741 670622995 298436899 829983822 738435149 920425787 250853481 578723022 394443816 871810594 175829430 186440514 511038383 735382735 871627920 983792099 507815350 804542541 133750387 220543903 192407762 434901360 16131071 941575420 755506822 962496393 16268652 404185643 228986943 799673108 788959286 925681243 734625774 948472117 134948159 722764976 81259491 912371809 799926807 857147955 463294616 467753471 199425629 356199832 100173975 836313575 186984909 656521413 73104430 788530960 894089446 938169607 207721374 465592465 684804062 906312351 337188206 418171445 468535669 793405657 145076984 837148038 455824663 488423762 722801431 750376966 987444012 993171778 826530088 868730836 951575278 967078440 924054393 927320909 491679593 554014934 705535730 730333823 727505270 788106770 375576501 653140253 513961710 532001320 336854624 590618510 752815473 836910904 808443023 904562663 626804613 640313365 212303758 525283409 15036114 927085431 939679397 972048887 715922596 807913951 580081836 836195223 540182550 680054880 158476060 497263798 806967136 973741473 938559762 945777221 552623617 661049825 96871277 400568396 749861007 769069395 466933762 803164901 838145496 846058006 854113725 961603386 932311033 965202730 493552417 766747742 170816246 188452843 137780833 868224822 242262932 964601214 971759813 999127379 637455970 813666314 762633741 982096821 893424895 951277059 903571179 979080340 342804812 828403344 490662529 917045338 890407636 980943441 807402649 867888594 966154862 972358503 685168624 933372195 677132155 800415007 439079717 519777713 360204493 950591953 729100288 998015923 252646978 261678638 650790566 846774095 972410196 984777370 390626075 937382203 181947770 295094800 413225016 835255665 918527011 997676242 814740420 860247145 898566844 989167299 880368723 984603765 839278516 917696424 433404555 597389561 791037294 829991102 722085642 853370430 549978098 785276552 588382316 655721008 177480551 350373553 806422033 810558254 982957116 994536208 46645809 922355365 614072591 941618103 581305367 663373114 790849448 894040162 406703597 569608670 382997221 996736189 280234246 505007309 881872065 924927628 93001644 683943603 605741770 751734243 781682015 938700935 662295738 999588557 781939081 953111499 722392780 839780928 541164849 992578833 503266627 517599012 203223470 387910436 661047078 956570016 731293055 952939055 465244899 962425409 739247854 967204803 407071125 876081314 311642072 467122732 891563775 901627291 606577278 875832172 558955025 886822790 921182591 967604010 345856233 421955208 997422607 999535987 656544294 924739918 135536223 249738992 655965351 980853053 890015547 949160536 762720565 987997776 384770851 560844483 734640250 959342480 933341108 966591319 500536142 514012348 508277446 781765101 46653247 830627104 453568611 488376475 620537476 871783448 725858247 743182286 759159529 799153581 305091873 585671014 166081421 692792845 289324202 916983012 513992103 963039422 379051669 768066726 524313249 537130922 351061760 470738940 328845847 373193634 541737131 571321365 824039006 894264513 465396135 963326348 646626446 940683686 439740767 865569245 649353305 815632467 981447220 988248416 164453874 496637018 219055080 973344220 415076346 642133466 99076370 869019704 590713691 620872654 129844840 618364584 183863051 588516228 662440135 880855276 949957385 983935680 816314587 896927108 588253373 981821504 117736368 668723501 927535192 974045513 892838604 933530015 250568563 307900386 832763035 941436832 574927000 814835740 312640231 691917747 118003075 207159637 498058824 904076640 319902208 902290458 905433427 948181274 621560607 868489307 300090015 448945241 958545568 965081261 180439359 198128110 495547025 996499164 16841152 286154030 929668157 968288139 722507296 780974887 113107101 292770454 701772307 787038929 77317609 553647364 375770135 469566489 84836556 499030838 476052854 537420092 116175106 770126070 563593999 802999362 595325365 775038869 198465192 498866417 536743705 649017738 168302119 618282089 440843052 556880354 880991574 986504319 769674591 800362397 330247613 537893138 562718 902640654 352450215 592881920 160182495 794511987 251329032 255611644 573902673 786725117 522552798 617811390 287896417 322931822 331879865 637129890 84590101 627398368 795487627 880655558 608263360 880423776 929120791 983375168 986200654 987797850 689735841 821114227 632253743 884528866 379013830 404447710 610465426 701203602 282557294 652110026 286477344 721924430 503686319 606146221 615633721 858238110 561966067 850944369 41562488 703624700 112176847 250133598 960665675 967549524 290064851 658585889 121333747 278907265 808028345 914962876 86497414 888961088 979154287 982765508 380146774 630836242 524384042 770342787 103352426 848825012 580252938 873170122 635279943 700506289 895351946 916812245 64704674 912051208 918974161 919128429 172638901 437802655 231641430 916163278 603857542 626629898 491355145 516602872 123451360 346647394 125371532 666515863 667377748 938140708 365083507 624241992 468572354 688569755 158019908 695916930 659486725 798216147 796427077 861593093 606036196 694299266 769717035 962964643 237176040 624952438 95278313 749956648 81125251 380084210 467314781 930574052 219834763 987559122 528074286 652199982 868709595 930661255 93879378 973793256 567810831 824463368 240293334 655615995 959100605 986097741 24900627 600900637 179748678 553593892 318488157 461243847 498547659 825883858 996051263 997678503 989101106 990651783 630150989 806506177 302519023 895409840 453961654 652486078 837117835 918984070 675315295 724152709 806046167 952310773 694640756 783284116 166140871 359974837 978864097 982373845 726765225 932150857 539990607 989232205 566596199 685473223 444146221 865691637 587176436 936922981 289523202 324534994 346806292 985824569 708240790 974831892 100150642 270853377 132827161 316787683 458650013 866298287 754506150 850086296 872102594 926055220 838059212 920328987 247963556 280678409 621372433 632870604 478425432 912978804 499042309 826522808 232230593 357866606 967652977 990897734 685585888 914592433 577166518 620765217 294412835 734130546 746956705 918315048 305537466 396524698 429924875 542849703 273770697 977338175 940875145 986281280 290700125 692252091 796874247 923281487 654537876 727400693 269535929 965650431 67406801 668660611 975715286 980033755 716768114 838576977 182403019 966019768 305109637 610433455 378758141 549438958 759423985 914327338 12665238 838126019 914181447 921828395 32005674 989924430 298635571 508087750 61429440 521987232 819877593 841979413 364094762 940025009 186076322 568123153 851736131 947109780 752598286 797783378 331059246 888260072 243266619 804831895 766990235 987431620 785886533 853657142 840777346 945699626 3814312 599770112 742176499 987689256 353635654 651691979 316519429 497221726 182913897 812582665 667671391 956029511 655197680 996403887 61685849 512991879 978570387 995708123 426315733 467553494 903398117 906472457 717065113 718880610 904243788 957138570 133329307 736184858 940798873 941666962 448185508 924883608 116707254 317982005 986485989 995499583 631129754 945653069 116702856 712568260 261274255 905058767 441876028 738394560 427688861 923524030 746663878 990949264 394697880 700083149 26070482 924035932 251857717 364286396 410914634 603793189 63759589 442036407 65296030 461026731 556820789 897474969 250530559 541913979 416120386 903210080 906389960 924742030 776355347 911515314 843843831 906137238 546146585 835910251 620585251 706511308 305165914 853716115 495798926 922520154 831831952 903744690 306475309 742784333 865467924 944031467 83031677 457405322 757219191 816045211 602453163 644667485 513094504 814754273 961740440 970098492 809721679 995035557 2145291 933447415 13982849 547229268 830129500 951649130 380167620 548718141 275283890 676888255 46621786 515673111 330134503 362566477 540082662 839631743 14903154 376189143 154466346 669311890 602249291 974099238 606182539 912936253 466211119 985872947 836197963 852697321 171198172 821177619 821074726 963998581 32532262 501039925 430953867 614994016 152246378 933468811 209282554 857024703 984002860 986688312 472898114 757404002 203201686 748592445 536328753 569115061 786549318 920126193 113147850 398768853 851769411 868779578 231042149 672929619 585257075 777058465 408856255 857955052 219771920 508567509 634081690 956190114 325745688 510243937 293154419 896773171 62480181 468991759 578713580 979202615 747293757 859439793 96343744 473063370 836260026 933160700 621093390 824344550 512482270 925476870 244995076 808083037 824732451 843288670 630138919 632247803 242415745 329521020 50811009 994836216 508411785 709662847 665271346 679268692 481953944 573447414 78160240 574603163 244104194 261369862 577077482 757968404 152540807 677023811 686343683 811477678 524355668 697518935 547644946 774607487 93690414 711726897 662228268 998579229 287031184 995621889 704538730 849076581 307495021 956856198 421616541 781616336 605355004 872534244 99928065 216336389 209804234 947575096 496741521 656224788 252446218 293329456 267854266 727007063 610533759 758501392 987499826 988546000 308581474 589419993 468537712 838635233 882733102 958851672 763440765 871366491 860263895 918545730 373763801 983801078 718802869 795371136 830791228 924296674 303311559 881304084 644810740 847467610 753631762 882520779 357104655 745981042 644881826 969447009 359929349 951300338 118460579 477752947 316975095 903024835 271363367 348618571 266366652 755994992 710402504 762295875 185995233 235315677 867526439 998864483 727372016 877492876 574486294 953986043 66794959 818920960 900065847 981862386 365391369 984171560 381808462 505334820 240775706 259307778 936995643 955358646 401396021 764048089 247218665 696495269 383449266 993880293 900692922 935650781 721123172 832733868 641118313 665186254 427431834 447210510 985128138 988831149 608204783 621719529 860546755 978398356 356735577 874149458 638342484 819965519 919626947 939331851 455940398 648284413 10224700 454894675 688843880 870181826 26571653 56603291 612759888 920802511 19973002 836267196 630156641 700158617 222630550 909178236 392401566 871130686 525809122 963977871 830618381 906750620 150144789 368824876 602631616 929145834 587197199 636594200 226562979 527335592 14509304 22092899 260767760 418204546 860593366 943876078 769050976 979552577 562584630 589006828 179193715 185126023 740999024 999753896 487425496 490500587 225448355 508917821 783339730 926037766 744548705 871246474 727579160 890854851 640947223 927187700 575239648 644960232 116911773 541195046 598301947 675016712 253291064 687292934 972308977 999910413 648121769 783424329 822234302 948497689 162677331 536593058 546820795 554735799 27328954 647841010 585042121 976817202 627759932 914625670 129378196 568005830 790819467 812842376 860262651 907617250 307081966 469439924 286174462 455390623 741480751 794135451 664545242 997475586 442465276 629331389 191633867 334191290 429249963 971607962 111794974 328655830 961091704 985128374 482268533 881113796 212791085 843179724 684337110 789233179 693421944 958863830 975701211 991512187 341700710 808054205 118310562 982991488 54172045 744223618 220629336 464914647 979073510 988784198 255467939 668322799 778141251 885641256 239674376 645827077 716288333 986740918 624193139 626270220 654402529 940752433 746677729 812236678 21262260 433150502 12033374 932698550 723943628 786009248 38967647 512560235 558877219 933677125 984625426 993126968 856543776 966786872 892798888 967538203 874228338 962846518 679417146 868256863 95864995 837851229 910044844 996405380 429968464 766805274 872997529 889665381 708932691 813713830 297707384 982373713 607870075 658931358 760922988 975193458 852638478 920319081 81307839 786983615 522584618 966467076 585858549 595630844 223330950 463570003 522214487 622707898 861548501 872602569 754797692 841727170 969210501 986768508 505139554 528260093 159755214 409100899 907146662 933801585 796236022 946944564 782827236 845259241 328120775 535280852 45940014 191748218 462387335 836060446 489435584 895826082 191286485 458296030 385850205 891467827 815873752 858552197 900367407 924068827 578118957 792880465 945355919 955756395 615213986 982287428 522901172 767977834 929066192 947846855 231531000 424997702 760768535 904022908 584827976 998515897 16366325 88934379 987796540 997117524 159690503 722545003 458449399 482021785 198318282 908901509 427414272 924542008 271780626 723536717 984110398 998624343 369302636 731442963 882131260 899000987 247433499 754221190 434696857 589332347 207297639 848281154 383329084 905615504 916803298 995877309 334666990 909204174 921962306 983245302 168419990 629819779 521976377 781503483 373769102 939164448 600395113 620273146 316389364 410594385 342670817 485293016 507365919 783485888 861587977 893843273 412451791 606805431 724817114 935877568 690345302 880148495 322301859 807924582 954239615 994229303 533998808 921084149 688637264 915914358 794256981 884110753 305392762 980588510 800760294 877796856 349539187 888078348 788738255 971410831 964352554 980854391 42423361 300256617 345889893 914445974 106151081 361840060 151411812 394069463 119857305 398026277 573253824 673191143 419934908 859787574 851367884 871326799 187585258 536200659 9157539 672041362 956020994 961260557 601793038 965317859 803662135 834261922 830173992 917590694 926944306 956681792 274206015 685196354 940181607 944444797 371161074 700729197 658378031 845946977 934467837 957715237 512341660 975528626 595850189 925692125 317750010 891932047 585129934 697704787 775959045 968169774 542670050 686412252 773488047 882323189 552062880 816155706 763843916 888827767 633180550 855582690 651483197 857104063 748780032 923313498 263236152 476779586 646643277 765759703 293152454 986323137 635397870 670981227 146691 431054403 103550575 298570806 733482401 811824636 212413780 238598556 61103660 586858624 49838077 611964249 842791223 859416493 585198697 965170746 664835354 831683090 277118514 495233330 50709723 930471822 830216047 983550944 475420195 943598581 330627011 949310318 939269203 947408306 97114050 822149467 814029901 869332260 993529024 997183958 534884621 787479710 626601944 959651704 931927323 935127193 469486890 734181590 968326741 977829301 628758005 657705212 977796690 994126965 267709522 835726393 299073080 699656311 243472794 943445399 275273667 367160841 106108491 569676814 676041300 687277498 592686592 685605679 316865050 357145922 641436521 644602423 176162526 699886097 846348108 917892981 777212056 901725335 111473983 361882610 878481772 911044620 129310145 931250891 603832717 891953014 239649432 918630200 977688738 992885502 304621042 787077998 4236951 418100182 321530028 553777864 746062570 790236030 951562793 978983664 921885072 924575348 976803291 997731104 704626118 973096608 680482353 843752974 515518847 711172270 399446641 669358737 994160214 996574569 105973317 154747808 549154884 591590524 979730513 980939011 434696681 635408528 981332588 988964106 991033241 997312785 507904283 575919383 801608594 946172208 72914218 178800179 3905732 150498777 514302817 794548454 873531640 936975311 703119292 891400135 961107028 978911902 447515517 808828024 239696757 266310528 980030015 980663999 108730917 297535378 59777894 626804655 143393957 697500213 677479319 904393865 66095123 557001906 974988811 983414197 830780493 955894378 664769397 843054562 823007378 998494868 983288923 989189534 968121632 973810523 866166644 973126636 260359719 501625482 152589424 692748004 666838945 814353058 284029614 362557739 793621835 824305341 247848433 769357240 913192685 958715031 217276841 580903979 477999437 698593564 710638709 811340332 836171198 900194210 389112458 583670887 563575961 885194553 777721263 849078470 318633218 648885219 68985829 168779345 948147092 957412302 850867627 987344256 22785803 77843370 236689169 637896737 406052968 511545498 534545400 904319813 121567038 201419194 59071316 532255570 812497691 818102889 937618794 968954370 296711338 715036777 642499821 685276797 390036424 737554624 810195163 810230995 217314866 828944351 758557356 973015837 479441367 846426611 717175963 771843012 594757521 597269008 8463992 394039658 637936293 648789518 835214231 837375280 692738580 819792735 815321677 856975748 980856083 988561957 98604616 636457276 816582521 841376172 533255433 813963679 897780920 991087829 991257732 992394915 737927229 929644957 730266021 903354436 673629218 826900730 821072651 885396081 766391207 866072434 608411866 727426941 606920022 683857179 291163000 837485673 75080793 739356709 543041298 683477073 92176937 603998071 758322512 924990452 739657826 903407101 939213454 966596164 767504706 889576747 245777890 594470221 974416432 994474919 243154756 276138114 280257794 612363960 441637850 452134805 610276689 681500274 738304668 896558460 348461347 928983599 195942590 813737351 18577826 939725118 124528898 129955452 729120130 927826060 334519490 414364880 610847521 790062482 631115898 702490992 602171089 988944826 394851586 883165621 906260961 952538551 247635767 401951100 560238750 721000810 799517123 883169122 547643113 845339420 989637081 998802235 328495561 584225505 893739928 976840061 559024579 758150263 880593247 903224459 835440440 869389448 299343553 630590660 359803419 720127588 712664407 751106357 701977050 929887777 31756997 236867453 740942266 898082904 590593974 852791567 910955415 939805911 844027597 862250649 362837040 587724196 770868916 910808169 637763938 991066888 506212674 984206239 676100229 801357316 493760513 882159362 55649642 874594997 808616897 856634918 330404894 958524001 131197071 492185750 97357806 785940697 114408435 865820369 560678604 616285385 889702880 954477205 751494148 801160835 233915401 773799866 34065185 566133851 171180791 902967657 864696082 880105241 265661161 648171108 532770094 575957758 555852491 681871738 337554784 340068659 841533629 876358120 443874622 999629735 476620440 801627494 959181443 986552514 680825194 994308550 111515221 690711233 758960959 823939034 709986406 989919423 445714490 996343255 856581669 925849222 785191610 879729955 608857046 774755880 353080295 936121632 898000969 923374985 38951616 692707153 453673178 601485172 82263228 616441530 240042846 600854122 365022784 569000338 17503707 119695166 31853077 955282636 608422789 822184802 358494083 880451100 576445584 791998145 536335379 576942825 199403212 385655961 577291437 621215046 32393196 887804431 390014564 510963134 139990298 641585201 646972195 985443539 883927150 898344728 569150157 875694854 988583925 989328931 293278246 383912742 987974244 998629561 780521556 932675646 811601563 871205200 382474260 540920400 548487543 610618067 779238843 942476465 935841569 977033280 901281886 911932122 979960528 980756011 278466048 499344259 732419698 788361192 6206654 865408860 217566613 952777979 874271709 963274035 945134497 995493098 786328151 838994884 752229060 810627771 876360977 960698590 609525889 848725690 319790645 869709247 33747524 191366742 100087910 204681662 895756970 937904860 397550875 573018578 265080751 507386511 674707584 960625759 976773367 993375985 71278216 225897623 60011784 748875733 465287851 743941929 364546472 698813991 927322014 945362601 90801443 804759669 418727735 474275543 776144994 888084569 215397864 223832078 175583561 594434356 331035877 892040949 657580293 809806631 737135286 975268998 644466878 910765183 352846947 773839045 399470045 433966310 141578421 756533025 756962482 982164509 686991469 890507829 453381788 534141482 199425539 802922501 739453313 888619587 333415231 707121404 53116349 908292504 215680975 352003472 14135055 522313334 628193031 792579273 398014425 989346638 382119230 710478689 167142155 377351412 784500112 959656242 594237953 715557430 663057043 723398658 747241148 988421705 70572151 874028357 784396806 905216425 676434601 802117572 244149582 584841568 830711586 916474192 119196499 208448528 32778066 652304784 631579045 813389673 15100500 905116429 681224027 899418792 189979906 947827574 127301676 808555261 18192746 960932360 968394390 991265710 324087370 592039038 990132246 992685843 898301274 907954250 660998608 814235880 22050660 438750605 164964799 803713341 613098426 674684614 361330888 485057113 681670881 831520269 358957977 945400657 242315881 647493509 995109825 996548996 514578060 678784086 279833396 720155475 902045673 983207603 769096762 913953628 142511763 397421502 908787501 954327694 748896577 770737955 949638173 970040226 543913348 576038196 954789353 980337860 942215144 962985441 76326875 687417901 803148487 870014069 943401568 987586136 20401931 343525275 683369527 930898373 60834426 283444555 402129291 889995933 55750999 81391916 269604234 922306533 151353615 166036579 590741778 904529425 106827493 989822904 754445379 807441712 841250794 873096136 847066017 922504611 916798026 960253828 519516085 552983780 822690291 862653968 331120049 433646794 882647353 900488734 290852903 746955436 866985773 955230738 870209127 948544177 868563581 945952872 56863980 377269665 138662070 228247511 534583776 587935797 131161502 747719533 280646468 825149235 517773214 742833313 912149991 975522742 414383388 729941795 140847889 422631649 241398071 976726489 701401978 983755116 540577943 910804043 752122377 937434350 43666802 272478293 630471235 743412701 150658354 573128474 397717971 632215264 568608696 896867286 600907644 872728178 1366266 654026959 858907704 901537306 194735766 716922070 785329106 861363698 778443602 889229897 765481258 963030162 666190803 944438025 604605412 947730905 49139992 951510417 997668302 998804871 915902746 928782728 185518968 541212937 698477350 957518775 312689746 933792463 542667579 781173045 947253000 972253165 757068566 973165175 42816235 203942501 573867262 818746157 474804965 771950740 254445297 286588890 865002975 931310456 839168538 846968838 782738204 947498017 895982969 921941673 792708683 844998349 488223071 762785774 744744704 921410858 209624964 297839190 332401790 518478046 866886267 951160879 171942081 686339059 572394812 633309926 165285927 947775239 592455937 770343294 593476144 737308126 590009489 927545644 416978151 675540908 484295002 884530875 954109214 977050847 970163077 976274997 418012177 761154105 836789309 906938444 666325981 707813549 425909379 445627471 949637498 992625764 805105723 806796324 19247439 321087811 200542712 287924875 650390501 759502043 376911965 529246789 490875906 997022782 40775683 268992729 410961378 421379674 815170081 936561890 14440387 692453769 184122744 504833789 94919107 655768081 972784523 975480858 894548352 982264120 272264225 345413913 284679065 849465150 452591954 710393189 838628221 951426784 420332469 951374614 112902155 422858582 26863704 424088073 751673780 999790299 846995903 943216498 228759782 528258986 708451784 827356731 151492151 264315857 915471001 950961855 43401725 428823178 324878611 450373853 445768051 958058425 297099967 840537833 421629413 489570584 897663354 906235911 407920678 671561319 57805320 488303907 297524065 892573942 617449460 847809682 953262386 974139249 87343758 681998329 457217545 694324415 342895498 457280496 979530463 990428731 835409318 921270875 820425979 888517879 222991504 721063652 220702193 704425675 648056988 813233089 733423352 894768479 80135323 693144924 544198558 745612236 447533711 957143047 214414714 532021519 74873412 938917778 122657763 404191603 963921487 978252979 667684625 871976303 968338267 995436761 258010080 649577588 689037014 812987583 954243974 994623811 578813315 870166420 300444784 309742540 805380982 920889518 390256456 876363068 666112897 951433412 643340406 702145708 189000362 411997101 798425611 958167696 54125312 799188019 480412272 773821547 248685183 553863815 824522406 879305179 840459186 840998759 889988866 938824424 882250023 909236445 978390644 980818871 898722930 942969199 432822374 778797168 744534698 787635094 243283359 734790013 25179591 155354564 426378619 560308995 272620470 486933296 578630217 737887158 634345103 972804329 267974357 782858228 773135739 899892739 123450917 725994643 636384892 751736581 519813180 804057912 804068481 888910945 633126810 667774988 792481450 957090105 10739000 747143577 15306385 97876908 113456690 943816016 645713290 838118674 214462960 892201541 763763007 816032626 39061903 913156934 480890053 844140001 861397694 911370416 937500405 968852372 65015708 555138031 89612465 95687158 404825435 782583937 173547173 802288149 410257054 662711696 460789100 772772110 436452351 951698201 70459175 972179574 867193618 880169891 983463027 983852715 172082096 712991748 655513799 811903504 950247466 978013871 169846175 729997698 991807768 994918353 871253357 932571745 673938951 837811149 545385926 577734296 883319658 894396489 290096954 490940582 896540757 951674069 477046274 671115642 537439473 738254549 614332257 745020190 690436115 891290717 496878370 740332681 707962893 829837097 70804928 89804364 617107704 689592460 604750354 917055185 779768654 991846665 961651712 981627674 931816101 946241323 161367218 248208752 553713707 771451660 424366799 880163868 173991874 604970159 416941818 817326001 126430712 849581696 362629347 866867329 196943538 934783448 108992376 476656168 130745965 924897469 388299441 657081809 694944971 749289787 865004194 926109387 827493914 886855842 633976974 748221194 291313736 422616496 988763578 990304391 949557978 949616285 435157646 575416123 102071794 203048659 242952304 576826654 623225943 695051982 749755759 916489369 619647432 818168714 333491524 907292330 940062466 999129931 579451099 607734641 330680132 685148916 462074159 920826699 792701625 880395799 794802802 866698903 284590010 701732726 271524430 300329633 701288102 803906466 82475708 583426586 838285888 871692358 695521108 972916438 152735195 284640869 484546239 771600486 716671656 814234847 268853576 785527956 644389042 949119619 289445579 845833155 560406366 811763923 196458174 519617983 396774025 602470528 888490514 996620110 516873514 956809571 426288052 716193654 260256925 366970450 730217372 966388460 282463202 836383385 987535639 997659368 626237049 806200907 67068853 885072988 897773675 946821122 178960805 549194525 608114981 632236202 992488964 998462289 490045508 726650344 826053593 838003703 947319106 994454268 599720689 853044092 660183796 851662008 441661807 687565608 792371712 926701128 67386074 759838470 17514556 244781232 45708458 530686283 697519178 809209428 984922191 988870815 654403809 917927109 617020464 931334417 331573787 959814186 578670629 672800556 862935563 912407927 222177888 665271137 594869066 962674016 973569476 981724718 939755246 985013261 914198495 958532200 990284065 999036341 867431325 932272543 599256531 940252548 593847616 883162871 477799507 811514744 468141056 559338935 365698491 691264537 484148473 741646843 226192721 315743097 298668263 557370059 435528404 511350033 481870670 508732638 669745487 719948375 978525468 979966660 845351191 867451705 714643965 735497981 852868786 926636171 440364876 811904662 677779247 845694760 561668543 949072850 397149876 703240815 993970470 998323705 189337972 394334373 823274324 864744275 740910601 789873335 463917405 944374181 892746933 974565030 118638644 677541790 705851986 875926462 846138817 915684342 53417689 749320373 846968300 902762084 454953739 609270211 731184417 911963747 510548027 659781782 737648542 855506003 44183385 931310900 530156507 605779425 121605506 317361846 259316568 525805781 364748955 609047427 663235768 865568612 959150314 968094754 341557845 908303691 239827150 593807423 728199212 805411364 611382238 859213123 548561993 839970985 665012956 861067954 897277338 905003498 337304129 349301953 548502244 679871795 371294122 978565984 101769002 613678665 33350064 403029084 318066489 330960135 607618635 744841748 397873993 813840233 200190669 937028352 77163823 274711853 944412435 999949579 229500511 566036316 975518563 975985401 513074654 901451143 22772903 877901171 532619846 602959481 139369185 673806474 659590684 952425227 769859380 855632346 507085514 772495546 279719123 955380554 678176932 970515955 161011760 495220274 828226035 900980297 218474645 462068068 229593989 698449619 761860976 973402821 527192092 972225361 616650371 845283231 409777949 603041733 472741548 516825157 859548455 975296496 689891499 691693164 493547464 951973259 192331586 832444970 453848192 869242642 619204851 980189018 833819511 855788094 482953502 680398811 460762136 918302519 803664254 962703367 541314497 741864250 72495081 769788809 938772107 978695186 561841278 823376124 998950019 999561421 726654338 887254671 176704205 435294528 981815135 999723013 945954468 997505129 710632782 914113061 346548120 812085110 785715310 880075410 950235313 981547410 467469227 861233819 934196136 959194538 708598627 913598365 966206907 973063066 472177389 652115500 436703915 550784375 564717601 603097185 859266705 958042712 478912779 698382846 332183821 660073117 554367695 757068557 960133958 975617837 789750431 882694088 806688692 937999304 516475776 786424589 867115650 934523401 283169733 898945393 921225976 984267172 878149249 995711553 341176225 851418870 935074479 944304081 167671401 480694566 406464244 472180960 995679280 998842868 534652068 801157822 970738993 991011744 720444474 962903864 333016729 788148112 88120112 979565269 976548030 980828323 541439668 589228669 97330864 985816906 654279793 716473226 309867385 864748644 455502579 474786089 508593842 716876366 455394592 813381297 637534024 908240974 906076672 930754657 712255010 949852925 297160593 574576151 821068659 901763225 166758531 378514201 170945429 739571688 838587180 844162956 931758819 995784022 111947498 876779709 98809185 946719529 322340346 493185223 723141194 811616792 959705903 970214678 89479714 798399629 372315100 630251723 289594137 728261542 920861999 978880148 4940579 679124050 373530296 677430271 967918973 968010626 702254224 965216017 672291362 855073519 87348317 113903618 781653365 882848165 851281452 959534506 906100605 933779824 476406408 651547098 289623489 567864443 209601554 696096743 857833560 927474792 664120093 969514225 835185351 866064065 236965838 692907601 330375902 940010156 372103126 659884999 200198362 748789412 331337169 919321372 808933521 938536490 663114304 825175381 388010913 879271220 315030258 330549270 119179891 783546676 495770449 534845914 83721588 243247311 251608785 779662199 37932336 883808198 4230044 893777573 867165582 929764202 666289430 666909249 170356823 432316131 308022775 813527462 428329955 718226425 768373120 770640343 4077474 893497672 444170099 582743739 894277676 899501288 910756342 995400557 68010192 810869176 121554146 924267146 821515612 927960798 648948730 683580555 985006603 995641398 823389047 918633072 842298607 983450389 210356625 745525897 649076895 781229775 854661526 856517999 170770764 967322605 180352207 702598489 159545468 690205297 979515905 988441291 358861383 439010306 28163291 865143407 833646885 907294664 938378291 996745160 97657897 332330538 24077380 564316614 850614236 851358939 520089119 891862671 297404066 339027218 872016375 997026797 532404746 905625318 921150194 985893339 720619256 900328408 527396461 989067686 814520591 856647388 584816239 755704893 358886297 491184945 121244553 766218351 443756862 757571274 792093621 894015595 433214232 686608994 809473429 984544967 492238752 648372443 576120730 717163447 194053021 752234892 385907835 803921384 432440138 517162740 594775277 860378855 762805181 867894867 214514620 451265833 973507018 985104495 795777819 904127917 910924057 928138013 993274752 999349106 714479146 869162070 42659157 198271587 593207619 596320905 682372847 790917076 560744384 919202794 148791345 207447448 190013408 730899996 129860777 491200705 454330863 803163188 149934359 836194660 510938692 728426102 38172292 121288898 664449035 691736016 656068702 772350982 907068583 941239354 530137435 784653017 609927412 885838199 924624623 994423636 383986069 500395759 297003042 722505581 450845521 501478027 245193431 702997086 152352959 741061157 18088782 95127436 203499948 293832787 392817535 813778698 305465283 438059189 266717251 517416393 176830250 851226446 756117154 822727093 668626295 890240160 656585290 977552998 565072306 919650693 972757763 996074320 743260101 970345440 755214686 900231682 720021105 879851176 592759320 846715680 816316511 839655145 921304580 962369466 997299970 999651233 600708786 680573511 138051215 163555064 969992277 972420929 688022226 951113916 555474038 586630179 325569990 986982149 620088494 647087038 243021679 563948688 304476886 737348133 621343292 841529887 753560828 893179428 630746771 963696692 587458272 795361357 655827405 900874547 87945685 657416795 348911558 692253720 528968989 807644664 884573287 971190621 906015098 954831923 394452089 928518829 656664671 842302818 398273372 607677904 197648266 755427310 264295855 331168033 531322212 699070664 24623113 305309052 430282385 455935352 159985704 551056030 25131887 265911880 598963477 916274396 200694180 393151843 283697782 836624174 756132028 834421540 414690936 897279890 434943880 871500751 320507952 634085728 469974941 654206848 462014389 844965680 98738210 407676895 412453815 987554973 882848199 992939222 363018132 553521715 327648467 621398457 922204924 998090585 78835201 999079732 598990708 821662417 66239996 908534894 515445333 777381362 731234268 984303390 453372797 458035743 375616851 862447765 57522570 517533717 557504689 927264209 171525434 464420314 502739175 692665941 55271039 398450582 942120585 992479627 56846351 592394696 470615693 498747654 603200303 620427892 438912209 536332922 421886086 458563997 386899682 424719577 81259259 245069814 598334258 975108449 477742469 664948104 849790751 916458478 944253483 964106638 954592109 990154558 472415925 806814332 783018009 796142041 922659485 996003228 115135535 220636604 98070488 270531577 273997013 826160914 483914787 565613518 962532205 964833438 950513194 974478249 50748397 985713314 256247350 839171538 23717687 431408111 397995305 883606907 633932846 704824769 972406066 985655353 330786908 572714390 32202976 63545474 463731015 574320713 817213736 887232242 230521226 335641788 843902381 846009623 75011601 712593599 974765389 998957154 628461615 974046853 365098768 382110351 369461324 932776297 737579200 892129450 7974340 720003804 230467871 354256696 717206880 794160095 431871038 563826254 817698645 960934176 407112539 587025143 581753222 736959811 161563391 602456726 70503621 896424806 793937612 958246360 926943661 972468269 352405996 863981128 828411553 936092925 293529183 883233070 246660765 316036288 249893301 984967068 605122766 986868946 601852965 612021340 816338493 961481480 336561342 748107714 34862210 803389982 800119555 815327490 645721627 765036878 160692435 729203780 574724741 808038694 68810510 381332999 981390298 990619599 544372276 943089056 275551602 699183088 860564928 987984975 603499180 887569999 900192767 933404836 725824912 923655704 262243606 608163574 297074698 707871089 388458197 965554712 178288729 267012227 331502778 388981392 359469998 743170503 920613850 921771497 584813914 847021453 344356307 623779729 872918634 995422884 717352147 937249419 848520680 957185078 764926900 868815446 5505982 934248220 431312463 593706648 57339394 975357310 510544928 799997956 616640083 687484375 335682593 346979485 300159953 992748217 4911695 219089510 351565102 389504182 856412198 922881659 704180930 918443156 615931348 979595414 474511417 913945632 57544007 735812391 996756578 997987486 143892438 934573280 851289082 941345906 653178472 831930519 692379927 840982932 287468104 412550359 323359516 347832424 415672563 658768972 170989757 568983368 248083923 730250410 987697890 991590899 339634768 745044850 889125330 964034311 941454451 975189561 581986111 595108639 696216506 904851388 441986208 621882772 570560077 953462130 513293082 555135588 474310224 788889240 240753630 824550025 162152901 550000467 622948787 913291549 656391578 680958472 560453499 670775725 583005824 961181750 636035980 968905797 995199692 995513896 755242225 845650903 744651509 855765024 6408172 940931446 349368565 490435832 503988068 861844760 860451338 957071486 828516992 964560093 378915735 776671677 875465638 938312010 256903466 611167512 405719051 435718853 219833737 332469124 532825841 594698710 133438828 590079936 123946993 887304872 704646177 776180562 577182371 983268559 572079693 586246666 372364378 486051708 722157284 843004742 379062410 537085119 691269197 724050707 147785392 321640943 945677234 964056804 219052748 349195937 790537754 981816027 318295216 689181605 279369959 835464678 172648414 777453941 61813457 261912121 494134110 675540760 697455717 979251927 432634012 450733913 855397431 967337295 818160697 932353413 964237067 982299112 487205362 961657481 843051553 941637502 193970207 280415494 486096099 828799804 133390444 535521779 48915605 764125761 802624686 925306389 387885427 620462832 194160224 956054273 47287528 387349334 664718224 989786514 933238678 963304667 729348399 871864582 61123546 854337707 147804025 892914290 805721816 990474647 381468371 978403628 659817080 820537470 6233381 519975104 219742502 460367459 124916378 239856586 806705955 923171634 776159012 908624850 850040220 904864050 616239318 713077907 521077633 817742286 487149198 594254748 615760213 719190767 434316570 642196145 323024097 639194528 630482 524268384 153216886 263776288 803370178 904447011 709654103 965461079 17373606 971605477 880861970 938884868 466117835 875820869 81871929 421810899 307488053 579053068 688672424 892555943 450467990 798084839 27687405 766844632 747854024 986644821 912120862 930268703 794041998 950639529 956702559 986848945 820538888 982035779 497444906 815129057 249924333 593860583 219633823 526223131 202502300 265512504 47067158 371086756 584273833 994030777 586787746 765878714 657985009 707260467 716046881 831372355 322928072 708998946 120875603 413956975 774013443 809646450 852559641 853547585 427977919 793302217 397226533 960463266 519768150 821371774 821478343 962709783 557682058 940465711 189062617 565390950 289077819 778687505 526960115 527013599 544121772 758967624 390803480 412175633 281414326 701480411 633312838 957371524 153527949 444552533 796195808 980876468 138173282 152608510 289560394 305952967 869483661 877062862 896664524 956156932 619639891 813100459 153582754 580768586 67763753 837218954 481384777 724634835 68383281 826214324 901062430 903606499 675562043 833073256 576692008 742844569 753621668 909517826 464958089 982622909 76367672 956018959 391997455 860804660 693428785 739280841 116511931 854505454 479507348 969221565 551559845 941337127 683146243 700043603 779910473 970185251 160245319 406261252 477874915 872495339 648597985 970718006 914442593 980563953 388264160 829675403 35468920 855236070 364739913 800731374 343076780 452500650 855078232 863382389 742952684 889440987 264137452 934926353 466553876 988236566 577844216 786771954 588940098 825850072 17853668 655631754 552024526 801097602 531982282 858522500 216995018 993212151 215102215 781462635 176174026 796307576 443256533 731524124 910887348 954708997 905943841 909726227 576688138 982092513 931844018 952324170 256800161 714109520 79066393 273383144 630004081 902929845 126510158 884865063 372772225 596876949 480943241 524450837 204015350 408737792 703720622 842491336 972072603 972739257 351282276 902644106 301519979 860662198 865533600 877931048 818253526 891421928 468841528 602877754 632938691 953351205 812072518 950334955 724882176 765013031 844893469 880993637 345117143 519731878 836137831 862949672 905369200 912130154 465720988 509660920 930471534 960648591 136625215 973022072 88937256 495382809 504101712 641656648 976116224 995946191 825918210 954804931 803678936 986442805 969688378 985017098 649705010 981937456 695682916 800615639 550568089 929354716 620026448 967544951 783087518 946606219 389156408 508710884 63530414 251800455 73843061 509193627 442642383 631514058 71900207 518162322 815509797 988566628 815470775 931667402 713538820 855499199 126209583 545384732 343190682 641097984 230220521 566650016 209853241 753159847 646202849 828330093 268673186 319777706 913128129 940849301 179902733 569562777 763192817 926519527 888141140 920655542 514982170 781080812 448483032 994437893 467120333 598360499 112108140 867106118 768537539 869112937 881445457 997291629 305781271 808593018 671918509 680946132 869570964 938606942 69761338 79577558 384682419 531537474 893106555 970682810 777390085 805630657 898344980 936366939 4377494 701622562 315522499 752582702 649051921 719842898 838855772 867338945 371773150 855215849 437565327 886717890 574050992 932418196 723150408 818244774 953929952 969465762 54941228 700967046 678398398 871805150 315659290 356795281 518829361 545380369 311266647 993457795 905699158 947481961 61452522 358191788 490766656 631064409 137364838 373358827 133994330 770277169 677656194 698202162 265692697 552021402 636304516 642731753 304228781 376584858 771473427 806454460 386869497 668255467 883340983 937742807 23496399 38279860 474811482 712642234 188347181 397774141 632808575 985017126 27231588 166757402 226241469 431067803 578116829 989647610 324504424 429506398 495846306 752301307 147509260 834514328 678271708 718399443 340270959 450963228 97325812 410773800 412294635 849359680 734462082 840217749 673228179 833639292 992862219 997830749 414461828 845631597 793587819 947391440 52598335 502700333 259828561 864916707 187962435 810487113 786184797 801273307 743959792 910353986 269321824 959072509 819634789 920062229 114256699 443348685 768296001 910941938 126549942 926516546 101322250 351600903 754499122 911980253 967497538 976836438 574070871 832056502 642791475 787153973 869094995 923747995 545939096 636145417 760303820 925516300 439605730 913525662 543423785 651450135 478586160 494551241 248768588 861947218 666957101 697495157 639199266 719081216 966247960 970245863 80202587 388317936 814857502 851946442 309893107 639210257 326777143 998558251 417084667 977862820 600182536 877161495 604836425 614099895 397543126 941578278 482708523 787741085 614768054 892824715 823891137 932690870 689331692 793841091 619369643 960194195 694119710 887672362 798729827 975312443 780248542 930357962 950790544 982555792 418234451 423805084 608939768 722807988 609798007 959876974 959045108 959272653 894450362 973821694 366433503 504932233 586960352 870815735 222312864 530151151 952051808 958863842 773540002 952509620 242831868 726460087 613009034 636218122 713389882 920491719 911680460 945791101 99793048 689445825 641247156 981141459 808308423 816040456 268054656 502433217 77010891 996494362 446891653 744072900 7359858 244230037 85408421 331553697 871266971 987445165 672667382 843127919 458494196 969296225 22469832 495929264 614912742 907863467 891878325 924626289 30373173 920645338 308015722 822273920 731859019 823987598 499321308 588828170 839816106 915248141 531076706 851766314 916376192 923186357 915990571 928479341 663816644 963567529 698211977 773070045 184645028 763191034 472492772 491468946 223943359 900444634 248654364 342953980 699198562 957227566 408319768 480986606 250295990 288752773 462136087 934640217 92474704 617616101 743694975 773117299 959718885 979921816 340720999 977268505 72090277 87590020 743394460 807393779 477717522 987823117 177511557 654044983 555169494 832238627 480663625 948359300 613144281 971654299 344506639 896367048 465208502 635040455 323580249 333188061 703817908 920832337 559004953 564440652 324466982 987631454 564503517 975163531 871914866 953696206 358116864 787796946 830543818 862271863 385756176 618310120 329871190 534831841 156146112 433043788 602527560 647682789 110457619 266199096 943202480 972961031 6442552 395620081 957812354 959733206 144429214 763906925 51137820 278691813 155328342 476128756 563752995 840971246 210182449 674637854 763272174 872579970 822311472 892451287 779400769 991504369 192662359 243011447 620503426 933100305 851494725 999884259 754053222 767346025 593183323 974093336 465757764 917393939 836428771 904174691 267669134 867075911 874360244 917011367 667014611 897652459 278748911 747083753 623430601 965107919 366719712 637908719 135784216 240476140 618493693 942029568 153454885 178300383 770565629 896332609 165223318 981741762 935673228 962834531 553647727 591030626 306289349 426336282 404441634 591188007 785217101 840120008 783166416 924933893 729042350 852189437 160977432 270727973 272425561 322307266 902539604 994682411 690452775 834221203 727124440 843990026 700327485 872544422 455309250 623485340 180785975 477453973 955273427 963618775 209599213 578597044 483369376 980593275 179920915 828169430 595724662 888007583 621157648 630708978 79537024 649966575 939590177 986476645 975518777 981828350 190830766 677130427 235702364 879901025 54920708 695472476 28281112 901022541 693606094 703201438 282162934 759051277 824191070 829511227 278184727 355506725 507312574 709927149 860679067 879467170 318409087 567651000 524722852 595105043 447765806 937925716 587941571 942271237 275405570 884332846 77420366 480927778 816248870 996668677 867530483 874303268 340651285 474354487 539659052 598845194 654543946 682436554 460186569 881398436 562588172 614364367 16698834 319763655 375902622 565973913 498900574 913832642 693974488 900998366 60169459 769097511 119709747 334516254 294806284 712966253 877316770 943606080 890560877 941299849 765216880 878823805 253880379 366726084 416264337 465210042 13398605 701722312 631107910 898190775 692982851 878835308 214336891 971525084 122274849 136677176 807141046 940664735 328634816 435163010 625680204 709653439 982744221 996163772 504175723 896099860 218156626 582809828 788061823 868247738 65237869 147312411 423052595 729370521 551981513 741838575 207149332 457449540 588016000 798663387 282509730 361638656 657163952 882155363 25672993 209388732 428854114 539278350 333381975 650130678 980663401 997715140 187445088 762258641 98122954 559865427 381580651 460770686 648300058 856835570 325970292 524338638 969056233 988552179 264544142 289697179 583051158 654645629 27208547 258392900 584038563 734967053 983093623 994507484 575825495 717610382 763572977 871906588 865440491 904543982 66384699 389989098 440277557 474715697 974790759 999119068 549087370 648234015 955355661 981563646 120983743 594074056 527691496 559738392 589759568 964138267 530371568 742781057 553367547 723565774 701307343 760657273 444369347 894618938 581269672 684912290 439750093 514151145 99068532 311557464 160063106 278408774 695370703 815742496 787897108 877112267 176822943 529549166 411242432 883678406 482227773 668525742 357184082 851007959 237611056 547903353 641048259 831282948 513459543 709901407 729237618 966189682 930467295 993490411 517767142 685802044 317385977 802932729 512571673 723598961 592572783 674979372 331862199 850434645 723771199 774158386 670398816 754743556 837047078 969559236 576519904 887683801 725416152 998972514 777348960 789684823 133782746 143832672 985161179 996724078 327030416 354516439 698954632 846029257 701105015 883408757 114442035 325288130 963755848 976261299 898126751 968880297 935106402 977936666 403755559 958100575 133065453 295400164 477686614 933794845 46501451 491372235 214707708 764250916 716227324 820404359 829404862 939123255 545625799 947465916 443083497 669083473 337722182 772977563 45503644 810303787 552847114 949257044 217189211 494628304 808433615 960338448 392116547 839149443 481766679 730148296 349865153 747244942 146089360 336254361 111178129 537307430 242988662 767172769 785244206 796357804 886160222 919235568 420729089 891922111 829981343 959884741 252298744 418858580 401695926 642285245 747228925 840203655 141289581 919980585 936981864 959725331 752987590 970962535 302802921 803739231 391380948 747790630 593732374 614839881 991844789 998301192 808669879 964105080 954406360 959434084 638180384 948718442 983316871 986654605 355914306 355916486 458605063 963088133 977068600 987803906 626542306 744098009 973312831 988294754 982147413 982711385 545495788 546131961 382307055 926020734 738276122 783977903 666145129 802530512 100860129 173656012 128561198 877411575 830332788 830677155 338683792 622287476 481392496 591464710 721404939 895359433 382804051 498886997 738165041 894149310 228639995 532600517 639993890 871886043 951460716 980215728 411862570 906577383 747263344 994247383 70805257 762879235 724064236 830369735 705811767 857597754 938506110 960262662 412056955 702902013 948962640 983634956 875469178 959143413 749942256 842994873 399213232 725852412 363298146 916142118 141092336 847118765 859183314 967834513 955802395 992334772 935797715 979147746 681950767 996390498 444964574 829716963 165958407 686749849 516203784 648921373 800893747 852928845 671207616 783583427 181176267 460405510 606371944 877766425 179122466 461014928 860062352 985922219 800674178 939630584 248091851 691729925 545415580 844403116 229828112 916733288 85730057 887932237 492137591 724104187 974704765 984226440 986181904 992924552 901007426 941530417 75241200 961289825 383652406 863619311 624127430 849676962 672756642 672796205 142754053 595325064 597366519 715818874 672408781 947916375 196297350 870114207 847756698 997859555 840490584 984047853 756499312 902013508 712709477 971125784 476616758 900896517 10091474 755110858 797158382 969318504 804460379 849128303 744304858 771680334 829811855 875898802 899451925 941860142 176094871 799416779 151885416 157443677 854939604 885334279 495860465 693405841 952721963 967377626 254166383 586414914 920124691 951665563 149297784 744304146 290589861 552682087 949248611 989886744 183548597 843229307 278186377 702885280 938040222 954694241 462812994 885521653 288589370 605502730 310748529 615676267 214860055 218714136 163639769 179320954 45386604 543188268 335112910 896749203 373387768 986442705 550271044 753154638 922121881 933272029 613011269 644443893 129208767 850327393 485562661 885434548 362757819 498546042 91737621 227218634 546575339 632601287 578834508 635670913 481169849 884529829 486203203 806601936 347080347 508932424 644721625 734137608 854818639 945553704 695691865 834127573 545899802 706924357 404973141 820205874 44118895 143521170 421345089 549340708 884491909 939269265 567233577 902985410 921979724 954949921 163624037 544454518 163760384 227275670 189212767 651642588 393378073 634773821 955585206 971104411 441000433 783626045 237499032 649464040 839340806 857874662 226377921 309346775 844224861 975989279 595961272 639664458 870891339 897299266 828231501 852309322 559837577 895279505 449127609 872754068 809412888 823307272 115944374 625846176 82474267 644598433 104023288 177652458 53746295 959486781 576792915 678811331 471615618 768046269 42815509 915805305 177768673 558764552 853212169 920107462 520031758 877535149 417686217 733521956 306331783 942841298 377229626 985566311 85212902 716046788 657874226 960864751 584566259 781712001 257323066 695954179 510551538 896107543 769270404 804450209 480031584 940776454 838511354 856188640 891260946 953837378 867324732 976624286 666324246 933876853 528279625 893986012 914454101 922690163 605801113 798472882 36341674 437797492 343574081 512578047 206029894 953484034 157735890 396725339 868935864 940015033 809361374 824446088 241815649 430132837 441083138 625689047 687455203 973179180 437644737 584969281 397579673 482395719 786772575 875944539 89904744 856047319 338158479 677988696 655803494 938328728 110276214 163020224 987411829 999257732 157030431 201035377 403657145 428856034 831066880 929581503 555747355 649210736 381070985 503811648 54400168 545624988 170669019 520579751 298369855 342495501 630088360 759550819 756577639 788225643 550972530 959544322 655930869 831570588 642686493 765563776 494753147 786798011 462493826 857288741 38529171 778502243 788398079 947505191 486155788 558977512 590154215 755900480 650124124 794397604 443141887 862792073 356066154 663063305 845187563 945480552 459128318 938046976 398499525 814571684 333411895 876319156 342909212 709435477 58013770 462578187 711431850 777936075 125766428 837524964 91114358 760640116 566074680 722942730 737671819 958414516 113172362 847729320 937161685 973321422 124779479 815013173 511156026 709511342 267550700 926078534 234892256 358335681 591214158 871605921 967197201 970180820 387461170 480858736 427976171 679869253 411628563 640309399 851484388 916779221 685706555 831757402 289238327 421198990 867085499 868267055 114738725 348658336 239149318 798074890 272168265 920150902 155911675 297571492 601105084 917528325 825039787 879472875 545889005 995425752 287511007 321882258 944510711 962067092 879910641 885807792 158992333 856303307 697125254 738743391 595194138 801537849 619390384 960865362 503322042 695765434 635064206 906935305 515275665 672343417 661851560 778375347 957642294 995058147 462530045 877668812 836377533 917326494 83545119 658330766 22404904 897317837 483084829 545936710 104044035 342480936 16076640 284093127 468867237 735477274 530113384 710739131 755123749 966981336 734229147 767513927 850968083 876485829 349075585 486736638 481966749 695292554 524000591 883218297 313299138 483176238 22900934 751828715 261225342 361110467 158117310 334858708 727549189 908014346 965831903 986082450 118996772 127664843 324830130 653077076 22204096 103639117 991097308 997398262 375074580 592204904 744837350 796546958 132806992 394251796 910566692 910941040 244023548 621563926 373329936 963950697 813738375 977703602 234257541 882520034 597983550 703633477 476589826 491031900 935077058 992352564 103126537 204597536 236944283 947100927 364955009 973520571 62807276 926686230 293336120 448456154 456594766 489009569 558590865 644800133 979876026 987525406 488212566 754419954 103592980 349305625 626313006 770677814 631907103 833359542 577997559 977070473 977479291 978744983 418288306 497360083 899996385 988133910 661731740 926933552 534519992 662703549 521397968 532702953 419740736 421133433 365944061 664949516 972475052 999214405 441695043 953153248 541490186 577446346 60527884 645563535 816930907 997011970 278161305 407783159 397996725 423206927 525840688 880652672 550309787 811525143 999676309 999870551 922134136 935162078 402897091 599991823 553016102 894277647 433595197 681550779 7674357 802341854 258016907 538150186 458064210 618238528 829110159 958463294 137563682 882239277 92201990 958990303 303442393 812008213 958275350 967294728 825705853 883872911 323979223 973921345 923906963 932733631 506768886 873028673 236430837 342677380 305834371 884288669 343601462 964017026 982479832 986239977 381585260 834813432 63504439 100077167 498847025 644400966 448230813 506903377 348912733 829084119 965903968 978067777 691855360 753432573 196407645 617661785 922679710 938454174 306824682 338389595 307127132 339373269 995301252 998799192 325381329 685848953 191020306 731854302 285808817 549289107 303944353 595256602 564588135 842339787 811108785 844242433 726980943 899866910 924736456 952358216 554372218 626485163 482136320 595773926 900846024 958133079 799265674 950892085 353210137 843056550 385433659 748838000 254476774 376917692 791252773 968601763 334323911 855264168 114835478 797084125 11155703 341596520 450138510 587087466 37473944 204224113 599331889 883893016 294253424 754531062 895743970 973766547 609785361 700689549 503238728 758891027 907116656 933499824 131930183 949261745 339448943 842007508 351230226 649215802 418512608 922798959 67556822 983835242 95922303 778759907 507533559 914206955 299571623 456872961 289713430 331792963 669299535 933354391 107651492 876333147 618360053 920607395 791411118 926095462 25862452 109945445 863359034 866889019 994850781 998003057 840892652 928412961 264237853 499835856 752641194 875077979 691731247 772072571 249151062 696555630 628319626 816690579 850828382 974781515 548600336 880445744 813023381 927754424 720857669 915961812 650398996 822399640 474070434 994046299 558866317 836061487 351844045 510670837 925699400 955419066 16303436 577443251 617536731 629827556 40614798 511519264 521986703 788876076 320673960 678870675 672789418 851623447 715039931 911702323 423626409 772580377 6495584 617457509 586961298 943783696 731672211 836506379 174067407 406025386 456076759 519939952 115520111 642860025 72516850 301809521 318030191 786470662 505045773 525585174 476823288 503891807 196657855 765137322 348906176 419385643 569531914 946367639 767348797 768114850 593696921 952258079 687090102 731728984 865423724 906008408 312624340 332997960 951201521 962933488 558669938 920027435 453078793 598620160 421806840 817917602 852307794 975931292 518374323 812208836 877828200 966665310 380357014 709478302 518211702 570092827 907793606 958653117 39439750 985795692 775537918 910466997 535571995 873722545 318581105 387457776 439951454 911264555 65853655 308863447 113480211 685198976 222994141 758009394 973692038 978623212 289706607 803593513 35465239 92299505 343805742 656315627 665708142 746721783 559010332 872318487 385654779 752941181 741413335 874222067 108918727 895474287 699602875 723828455 448027091 789454020 565527352 838551878 375177351 716496516 792193328 941053610 327123504 482087582 1153373 974510763 772095286 823258461 734773999 895609364 642279397 757759671 193630090 203779346 334844085 795739314 605225670 986648823 168200872 804929051 844135680 893759532 564193914 765972771 963556613 985837885 359812320 413150957 9055638 691226281 649007620 964168218 168575408 512253420 683819942 701423218 624112129 793878677 255434430 989778522 999093429 999928895 37338883 812274215 185521783 778264936 70990507 376634305 36394714 103224013 247016414 984981361 724201526 913530635 900873091 978913959 17585930 55817510 369181421 516382247 495742588 993645290 104217061 582041240 576856252 868696488 348846327 963912616 824409125 906411064 917239587 928510861 702354986 854012106 864970248 908202193 738309719 742464230 989295152 998038188 777249246 897203593 161305653 924663922 188511303 728380629 978262275 984611889 71396883 527993648 794186707 880316236 57614461 807948473 12624852 548616555 613802546 804065612 11756103 996256464 517635832 835859334 888460346 958022969 398984817 668622745 398572061 638733927 262328239 337732371 575547520 703493852 874501294 943629168 907730990 989731778 418610081 643744029 789264453 999333084 889508528 954025450 400168851 853663609 941709062 993771403 905444628 925154286 385992366 816315589 69945082 140267919 905906420 942318210 132475330 488465540 757198238 867201495 832822341 848715659 116913510 511791047 558750464 843558439 978923270 999999433 791503120 965389751 164995473 334333012 109792007 477553718 426178244 722688286 844316483 967645392 854219671 889835094 614485612 774023796 49016408 414945465 585389433 607104447 750213704 984368918 418881620 489061687 261657933 828958697 174310488 403827824 433921339 615546472 684948557 991576652 271862671 881315675 293444194 404651200 592393217 696476719 451979873 828138817 384273587 980699273 610489917 829547176 308474068 596842238 382068677 406617221 774256739 882685643 327792264 392305462 927152446 971524434 326754916 933853819 301668006 841236265 722831524 725619733 952394417 956557146 197110290 260464087 31358473 317846356 156739034 677743966 620317789 859002597 940622769 956601465 313179657 617441980 320608429 493110743 687693918 831924838 66505198 379503996 347322672 821287824 950766051 980720352 53941983 411849338 21685936 276918178 490694058 777127706 565063157 696141233 253363701 392755663 961105233 963843355 241097528 360349052 79615604 610217906 73038822 241590340 324980343 530084513 881579761 950147557 429757710 906943853 10094305 361812138 762300735 966629193 564999626 930202076 308230495 724891083 825740578 862806817 425757284 892599053 914503899 918317674 739315766 779092240 22442885 381667383 473501852 480628738 191056265 780014444 392882976 618401255 813726325 915745980 52628115 273622819 229542595 752123111 759430335 997409960 787608358 890598468 45557651 458720216 737472220 766388949 998207908 999219767 865508122 879404943 408613866 540110111 395801151 899380287 348346206 825643631 695230707 775366529 47435316 674902023 469697861 538451247 811354900 956650882 308860144 825518438 457608738 866711280 245045689 901881412 872266604 983576057 812751435 985043265 776523503 831891576 182310366 492093876 874997251 933593322 727134062 739888246 960394156 995659760 343639749 839267418 265420893 745607993 360586807 510180472 566670916 592299972 166068084 497606222 14096312 534594275 12806080 902693788 69636992 601971594 554064574 937703252 722288022 782955171 411774496 671068370 6191409 798156820 535597435 775746609 971187390 984296524 888037977 965524031 725166154 787437792 617557239 778182989 984856573 994172275 77535888 379811783 49973656 420625887 986648260 987287925 482960561 634326610 647267613 771870045 274097667 670018397 232886544 652460574 154063697 360015151 992231453 995403666 21212326 117198855 715016645 895322986 71513807 977932630 556456444 641453746 989275746 993816168 365074462 677916120 64518713 578962726 12583617 773236424 623140477 642489250 188455864 851696803 133034695 178316147 321467736 625312190 394752877 593891494 266652586 795064497 636011973 868481638 193770960 978679067 591198562 714804845 320025105 889578515 307651426 757176421 234849876 816351938 916180561 984656796 550636489 668873386 157107373 850053040 33124477 326503025 502786373 940890208 898228025 928796877 91486425 637985316 507999753 998445305 155047553 620486480 487908111 710369085 859772748 893666428 863454140 993519042 481372649 991589442 331597210 433222849 129894396 580122225 671388847 782316377 582107899 664593993 890389060 964643169 23656137 117215780 232232016 814189305 378361256 860321456 599159864 795856304 277766492 317657925 439851766 747775608 328852450 986126295 725527718 797575890 489739197 680963256 171412903 902378107 248237205 261080117 671568092 732681178 379843570 465863926 667017692 890028601 458636223 839108800 297048986 500441541 350944437 948587007 419947337 454811033 71662231 361668838 369880184 888093633 176888775 376284681 400519696 423672866 982144060 989771054 805804414 913071620 445558091 833923335 388540067 673149254 707479820 758417770 285953137 945926308 803871084 890505193 230126549 417064220 242022643 618493537 501260979 835879550 95325493 878277549 156720364 479507814 544954210 973076794 212412133 623791947 947529514 952928275 435086572 938289609 764100406 802033599 813241465 845780116 176989811 916647024 80233504 314971108 310830055 726004359 211008429 853887326 421815755 448589340 145581549 515757318 16392919 464204100 360591522 749157246 614067097 849629892 997493021 997923258 42623995 349504520 645735016 735165908 707458091 807022588 605782518 906921474 416686442 699537497 454604173 802453583 210487316 752571230 530287484 984035989 784011664 822228343 521513675 708969712 287249168 673050633 110571581 606545254 425440934 980482796 478352634 982604316 232695118 293814206 560370316 787797589 853086466 895850026 553604301 935244769 995792542 999352949 989870071 993934859 253953305 787386423 697364148 731635107 333548937 867929071 591877104 936081174 640522629 982296026 426413032 948743479 459531585 919507044 960257992 960855924 277216944 912013930 9386613 427432322 169705097 409315892 249139449 838285875 127748838 635618023 739000149 778626571 612789984 970779367 52066940 679713731 744867078 863381681 789816112 942393170 548364213 755226432 294498456 696639512 467031635 709832726 81324774 735064442 729588387 827324163 957651676 970000287 492930853 787184703 778360957 812744392 71993875 210240327 363539476 451706876 43584248 995457948 386845690 862529972 741341678 789457541 404176524 800777651 483290240 809171532 306021771 990646170 652053512 677975507 947042626 997804560 156482304 185788652 809225344 967724060 771008966 830367507 789435038 821923911 694365947 897962179 846590884 927772369 434077310 907217391 37115348 443162108 128900701 516530632 641804335 996358564 64735230 883166621 468735790 863095819 567527514 713940976 967196746 991819394 728220521 848154009 983700835 989600814 557010358 883194091 611035613 780826403 692073579 997290448 720807977 819154364 774212366 938115430 666374982 706476271 331551141 911945816 239638292 337219696 910858884 933421253 661633993 823897060 470023952 816525383 90798952 570976575 930075011 999814965 230224318 450901475 352013979 831426147 156288334 521357596 469812202 903916947 787948091 966374831 228518997 390588872 714898350 808444289 11243747 471465289 943275237 975407111 306993316 714793494 657871633 902606182 376835568 757012454 582693423 891191595 448092887 658180976 57203380 146335841 118434086 914479688 330469736 444348671 931533039 977784217 138119328 687659897 802415310 925054447 431982897 952607189 454110629 629268609 676053918 678589182 828755478 997560755 896239948 974117973 13142505 798366963 331419827 969890331 283004110 941233708 190757780 485867369 627143690 821957189 582920192 856637769 387024650 641391361 906218836 982341427 532131040 732209407 573804684 891170517 679425840 799697699 647667341 648580257 563114478 857050158 694706667 850321063 213410823 959895458 997851935 999865435 27532752 135532897 773769615 880186762 283796067 581076424 231954734 361840192 397974946 642331065 664605599 795384431 674686153 764495724 635596654 760621190 94122708 238039359 170287687 423591595 965514350 994256221 753080776 973380989 591218504 885229164 98511885 302547810 910339262 942338815 35509364 906976296 585017820 838386618 349580295 996078563 103461251 480120049 68967706 907030141 470861193 926533042 528655979 543827655 387321227 748781060 63739607 89291623 791148345 904311113 811795879 851478254 705095407 867868047 823115970 923077038 906497685 996936726 553645560 787642299 404088714 421781057 800154751 891188360 413121808 766338516 751064197 927919141 229432634 937104928 956150579 994657089 578975028 721602626 97812031 169598831 223541636 579131404 429246932 794755521 899633818 991366646 838963807 941057776 969902491 995491802 832603834 932151907 304342889 530366156 277282152 585900910 151996109 857379024 419513631 518075947 823781751 846589760 309557093 773336484 319048905 501050901 139415675 885033319 846520612 954271601 353482708 954563582 944040841 981568965 771606642 801849256 109285514 338972285 240489313 816432686 476346130 607481805 787657844 959332394 308204948 518152488 94202243 565717189 673616010 809004768 624073514 897885539 72749309 881364868 418883143 993798931 13627763 133264472 272760491 346897275 865843214 960316256 400759209 444203449 744192597 927706304 732903671 824787948 785644727 788869617 410163015 661852484 710692388 954013236 468806988 781606708 728258869 972929887 597909060 804492324 518239940 563271621 693032143 837559125 937785956 972011357 286914622 830137210 428581026 536677426 619184716 796317238 133912581 947196758 168438115 658429672 606310625 798884838 283997858 713095349 506685194 810137449 393802414 398682783 656005625 847498069 962577033 989275906 455108707 965485298 750407815 772887464 149900415 431683234 164369490 195120799 112446917 258540432 837618660 844757884 882536010 925940344 131783075 509776984 42940034 522071006 212804332 826327127 221418238 733431747 478165461 965833773 614939598 987212362 851130930 873500884 978458428 998005545 4519686 614806602 926083128 955484244 845425670 855084176 642395388 941870212 443637097 715076637 909623389 996136214 572989334 916915855 12236830 296935135 274053183 603803638 432264696 600781012 723329919 798234433 190045024 617738438 691400082 713540076 200511723 570064797 295685854 895782234 91610193 196841767 364693897 938986323 478451930 613647995 590302438 827703032 443937548 519070297 109277918 422471133 846872607 871059410 177613723 699913848 833405923 888807293 487766582 805467514 474709880 873718081 863633925 956237818 822199951 984353291 951341373 987951141 754456272 863142633 807356834 852259286 632957736 893080503 318583612 885272770 235466245 530460842 348904246 403883060 697631213 894863102 245842174 887078828 951190563 968883103 94311665 716860908 604423792 791409226 303538405 808188471 665295242 936079989 295689225 992805121 176019139 366048110 468316035 640017304 84235064 931140352 485278252 656292663 983224412 990822004 993842676 997436643 692421989 978390084 169259582 559413132 698220926 778425556 331065923 976594794 414110112 995315735 247883918 539814319 72490553 780249174 445526782 733851178 372689494 816618357 672496479 695549711 537321973 986994387 432930902 794990958 176668495 780242517 47686862 688291039 455915050 626846869 99444009 842688141 84813836 876886941 642942397 969939058 76104040 180090508 143700122 416192839 855966911 942799578 147392282 625572447 681709984 732414902 516489039 895842759 200862899 838259729 21332887 125551617 939742074 963014622 429143774 853593060 127599181 274395170 525110814 792957756 630161224 778351934 232025022 552910632 74650079 339070854 40426444 753080554 811275925 943688230 765054918 849931764 789433865 947737602 271881864 724959187 159998049 780914140 405786687 857076400 51623001 242757403 783260755 818050640 366648673 575944339 778580934 923804296 433328455 694902678 596357912 629491368 930681867 972523149 652498694 770792820 37904688 556481220 147178834 642905783 756546887 858164591 809039042 964947129 529899788 790506233 412835128 424011405 713045261 873793663 682468115 709826412 504460528 519833634 191595100 828566407 985742730 994021342 759595361 817765834 245257018 700987895 524497923 977068190 405533522 893478517 442417328 912229196 436897627 872779722 221251825 559335109 319266701 711897380 531788425 540797813 426694391 780100038 951255098 962291358 937688932 972946578 44002172 642755643 294131706 612542129 705378591 995951266 834555157 906571386 933065720 937617512 410853190 917598333 768008617 787147031 986084026 992110949 350747433 816733520 474899829 501284064 908083897 991416922 209891355 507605255 428922987 596451261 758273778 946627288 956918346 957593486 500710264 967326759 201124060 627674488 370250747 860357548 256238468 753121155 953315900 994529392 188738704 789274357 572913105 820766203 875216804 921742637 656146432 831178528 513958549 956815695 780461531 870996377 655257492 906211367 732686174 814253948 411089560 460700540 194674101 357028715 981439832 987344268 827877991 980722132 165876293 667339803 280662269 987185623 60681326 80900724 255390066 785100920 635995408 997654319 891088643 972860920 45819500 868235520 978729323 988627722 95474576 175243626 276027895 681880798 42304048 528014635 854070488 878402345 73972429 944229497 14974439 988871939 569362733 816990533 946127080 997799039 626236302 811492122 446111959 723466051 271139300 569063981 832662568 836254757 627324825 845990445 709815814 951408189 296494751 298658873 513634112 976446316 37514682 965854772 294650343 834978476 625364008 770145229 762131221 893972333 125318809 554855484 170325533 455964515 654045026 719722572 27550957 288947141 216160740 880418419 268512231 614585625 980078487 980665101 961656111 978665127 242791399 454665317 611485501 704881380 289725555 793958528 448770719 964237624 325522252 441190170 762985101 950122737 117866321 610071231 534676465 733257705 532513114 817919921 2368267 484479132 742879317 913055625 210156414 454680292 563958441 706540939 544297044 691928396 509605149 957394588 205592776 973749087 873027534 924078020 46864019 606034920 768903632 880952197 791474487 977192542 46917435 332114479 915807888 924477100 479488391 482578096 842397809 892678565 941325564 998545239 740595377 840071399 169891537 392278186 173745662 541146740 404412558 849090474 677557760 807962592 250753948 296023374 848381364 999571262 63694238 177961157 567924583 827907531 389411884 805856506 116825107 917143270 60372629 341783970 380245735 443071537 135349009 749155174 511528433 761101525 632544461 681445338 368788903 773958942 9845280 505950094 38869346 285297460 48282664 405351065 598392526 713558567 606738847 757453045 287599001 857710422 252934797 833036010 677415449 875334355 885295121 897035617 719737616 724507433 282744532 628851393 480772245 573396507 727976763 916415060 551499374 694291428 301774950 635121649 330364977 809955885 357044092 865706622 95713350 361307887 804017263 962029362 665407870 866589520 114344643 861709657 431725552 928121667 170625141 348586992 405917007 877328072 809220084 847117622 901244594 969941611 131302509 390983519 581481987 848296075 178288299 443370707 640988413 788888725 236821723 865348303 516884744 719327737 737023609 864601609 153817076 469319920 469980318 951952279 861852800 907825759 14038598 91447253 136519146 219009624 295181956 958427947 629611534 906309243 2834351 329581274 790043189 994494822 352719291 468935186 146803244 556998905 956310610 960873016 478713811 885050825 209503764 842416296 892252594 992710390 734925743 931247247 419490201 630985113 826090903 964468878 896140464 912811846 539061836 581277734 558371069 728920375 330253416 951033395 455741932 925701445 264102098 424319113 972027228 983086421 432663337 549699103 965661365 975099745 7448340 795035742 986584202 998999616 262297358 749114920 882087273 897076668 908388652 991421269 20311855 994385671 619947507 799883421 5600062 216507436 686183980 738017132 474393319 680285174 578866610 976764375 864572128 865859701 460400988 887572095 517486191 579136691 273604102 293337272 759503035 967824960 808452512 852196905 416135101 548197885 669444460 785334928 943484330 963776249 952896972 960180623 50674258 496927451 868738120 970378239 425936989 427711151 840121469 928558814 729926964 758568817 955068690 969492570 594710512 725897865 492612372 587956457 467684960 770309766 245332097 945835443 747981643 804654871 40030958 549448507 708057758 739099667 803893449 924828305 808572207 981589998 601962113 695458645 407734062 820263737 998415769 998560203 976157238 979468472 260137038 799555895 805367662 953783253 855392710 869127255 46866679 931223232 618845040 798273663 102658320 864247152 633876551 750155893 595264564 692851928 573228879 746594555 104006298 680665387 786131507 886472104 635450524 998085942 463972510 482233765 272885984 452188713 81287038 334588732 977290187 994478600 601433623 785764965 466022135 650371356 147984055 562540295 472909821 642440112 672029686 969046334 884613572 964147020 222434036 692538545 219618447 588045947 794144420 993614421 109001340 590697104 909445492 935774147 784337520 866824997 611428121 707133673 381828037 712004586 778062086 852962519 184984432 758629331 615324067 972291522 38765558 726408578 924578922 984522383 732760189 820335132 850647364 992171248 466605717 607098380 500515098 582441228 678939866 750290293 822958438 896624249 131660579 479829463 229449106 550991955 727864874 922499684 159517941 843885851 694620687 741223441 8794893 895322877 62109354 401799127 168414274 456258841 357679656 492352409 525540663 744618715 354062004 581359467 215344692 405089856 941629747 950238620 557058784 740706145 429415310 547663517 690776724 964002256 92448559 773995166 793370434 938443849 316738601 728263996 91604200 225987892 949207782 978864268 942078805 944442517 766244733 917361604 243444446 391507026 57114997 718865693 403493411 646388112 74856480 859956952 916957114 963420950 466744598 670688630 823014417 898430574 413163916 453883102 994562487 994688581 143334522 522682331 746447409 798274264 205847610 696584642 579389957 786008545 794652513 797799215 67203493 423184148 527123987 839230478 712615542 976802517 272499871 973454095 578439057 850831276 281399835 529658912 25222171 692248041 874972904 982190932 918417899 934978872 375548059 489733501 427243312 945873308 134071049 768556546 899946190 975264398 937728265 976125068 534127499 629889929 800381828 879237611 741708959 967963946 436247097 602977410 296031495 393381106 104727535 666197709 687514510 845971789 270282820 647125496 376460129 926284541 848484841 925841729 471326628 521851528 314647348 868465607 44537870 548077413 694324332 791138633 377958082 497545275 784946633 976149401 432965209 643162191 689138318 937656380 429766594 852525471 631109263 637107996 935300278 998723188 580646278 586477598 376711827 687016741 393111619 896483095 952198700 952407344 239522318 651648670 244491990 621291499 70198468 279644270 403041674 763310434 980929259 981574863 890221329 913505497 830638799 892407832 541987072 878004649 693629529 774569332 96784778 543918576 288122594 619267791 725962712 867800056 35214752 822949823 772786974 881477547 450984777 578654194 570144332 939406824 723483986 920553984 11955302 131829846 194224536 931073482 53764077 200909476 941546646 997390513 803061807 925510636 631623973 766804914 310034654 507309401 443368778 851655243 60448512 101066954 297058360 774527476 83711935 970455043 609426885 731186190 232721752 793818234 106324339 432146007 607419383 905950372 117827507 938810640 603157504 788793153 905950907 924664845 809278119 836672908 280463963 974952217 93627303 909196671 356926499 757159710 991525300 993342059 709727195 961703574 809025579 974222599 765932368 910596155 792859422 875478444 930105648 980546786 928619300 976322322 609691724 870756032 798068845 965214334 120645252 916533806 927410565 955308690 526071195 726663767 761707658 923034760 275027931 660738160 431693798 459627151 40768768 237449169 842543838 919513467 616216020 762611746 767054019 954299893 310787096 632132424 270682780 599852735 69937670 316705516 355720245 453718860 509481102 945007962 185293803 936274678 682754286 794907984 107713184 270479305 476016713 846216715 611470429 896760879 841425296 936973295 504326852 746428028 827669438 988123410 141629933 548131699 560292199 724317958 417406026 625386288 128948051 191656130 436864755 485997429 103269257 675690197 540354546 881543936 463890568 581956974 498633984 600530261 584242287 894306504 988709569 996335097 949698274 966804267 254967350 512277350 886360767 989659791 50061200 468286111 719997875 981454827 835413926 873386951 789131803 888965723 901282743 999877861 612424303 696210362 589612327 988112447 147324636 244829626 330914818 732424486 87343519 206724082 494799515 984472380 93706359 650802711 431779561 498861794 870415932 983236612 298651306 691713517 531955853 769463022 283764896 755760847 551065919 729289663 514996679 773943530 207234837 687344176 486802207 881301203 396087781 732606648 79780601 363073540 156350314 307815353 43430951 102759517 464199733 535670893 890314320 988963677 678064260 970094522 412573349 511255999 141559054 248928111 592954972 687212222 637026049 678375902 602596830 980536517 204541220 725854828 989972279 998883655 630219699 832372768 552559818 733756807 238239535 282169666 688527872 789544801 267690676 938131292 17396431 677829772 726703125 770699839 269398817 694527320 745027149 763650564 145238660 683906168 891992275 915339237 68064242 966986159 336550371 576467259 24418445 795514330 599970422 721565606 129845293 501707755 85135510 602313019 43630444 384254721 357275753 489053006 830669948 940785939 220349266 267810469 653919426 784582199 176080299 863792861 882920191 944782211 249598079 749316347 632124344 982353290 314763784 800854614 399798725 751328486 148815656 456881044 301102129 672550661 178196935 193370825 385976684 550221198 132394374 841428247 232027217 348761126 446685857 759482321 80986267 544644031 709198050 813580048 313299791 955661558 997150243 999620837 689741330 937986257 30691430 115604771 561805324 643194483 991456517 998568416 878364547 900678999 766940161 787945523 807171598 819058999 81496442 473144364 39205507 865885395 763116676 849590353 756316239 925405005 651080147 801772281 844721467 848070723 118224248 336151356 736165120 898720801 424561308 648911498 337243859 542242317 604807761 733775826 184721112 453631779 128420131 232610568 677702859 857387157 799691495 885311738 941572465 951280108 405507579 780020488 145376909 390053516 369043021 645457149 566431670 596342977 444893214 498868629 678655870 988411833 762903434 999085381 300645590 584700278 962496739 992908805 389311548 866253792 315221478 921019144 706634760 791272655 977116398 978924483 631142075 959709419 574319505 960817395 347439889 742712745 919549739 935724538 299014127 998520251 636999248 740347240 683766491 720637756 158468241 287926976 373627716 918166582 912536082 960556328 218684907 741732525 957480985 965776493 859148630 907737111 180476499 667516855 684040015 775055033 863447491 904536651 245144303 450478523 275908047 869904091 621132222 738550842 19496847 522657209 585824829 987970507 697419442 998058339 280755137 941054181 552580800 848294807 722679934 916093669 677153797 991834701 471424220 946202276 253950810 748513761 631158239 792799693 505109028 677573933 590738499 922860367 874692828 940723545 6719670 468158127 806454635 808106996 239549043 614786158 439397740 499684436 559373386 857821093 395910600 482941401 120388552 628866566 814210488 824132173 641384470 849578891 763818728 810358274 830312403 853192402 17102141 999629593 837101397 958850811 531772156 821340941 421090983 706407116 688618683 784517686 317516982 656167778 867734207 878810743 81513037 775466695 976825279 997064128 759575331 873431381 68999811 952711754 157040408 949532390 14170589 491538413 625309777 964511749 563853094 572938891 162968668 448445840 593393672 666541228 82036917 89709055 947534872 949639245 633031820 742105992 194026789 280642821 862518036 900027799 494266562 670555708 349450109 779247142 603225748 620818003 484883669 949745660 608396584 834943581 556414280 976568912 178975628 374761607 327441573 561514546 583607308 999684218 345160816 663964214 933031764 943633830 255138613 602577458 864410965 894462681 900509186 994618798 659166290 687840936 474220454 566371153 616901994 966696077 584482332 927797961 506957464 528065571 696240853 981193030 907654934 914746129 381149348 784119379 941466163 998982510 234338224 826955051 638931637 816082303 91338523 450695948 41264454 868643556 645862918 695734561 475165192 865769281 176960254 289551361 842490935 939783174 315408246 367883802 945493514 965687583 760661372 915837665 619537876 776039245 743835201 933127367 913271402 934807811 359181670 832006681 13472264 15766652 204887125 211776927 891540422 987551057 85270947 883848710 341457004 902599657 826193063 876288148 350030881 827204496 781954355 782886955 19152581 759090376 687727430 964483847 565265346 960389451 692851613 810944528 354690311 404356932 92382021 494707504 618184889 763762753 618998181 837185568 452429239 709010525 981215211 996056536 913340573 996804282 540120808 550602077 779313391 984881653 14233046 990030413 598354759 731479922 63277441 478632015 97568765 467185157 800065527 909104761 560019098 923400673 175390365 915107989 829889807 835132463 676462858 776334010 877606528 892222847 91938721 484821566 249586042 702565032 469093389 805948298 999095988 999358650 665224393 769265271 122057014 469579876 498512782 934741343 519756052 538065135 428805374 760240338 822775472 846808884 970011386 992272117 938608167 941179259 220908307 982942252 346576342 482174242 431504427 957243204 651580661 809131249 94601139 445226413 77604692 747529798 316656290 454178387 643364334 964007709 650715866 803038739 704243733 962278652 673795850 807636979 3901166 346097980 317769201 958122842 313627635 796233157 703243676 786370243 834958311 959392917 220110778 859376741 802294490 993687551 254028714 505456169 263141760 594544788 863065806 920780179 669349218 984609781 417048589 742039767 896068597 971584405 431967712 752659362 391768603 847337892 703308271 787212581 167349638 767209805 286050344 972194782 447353198 893295737 740836690 752634254 19347702 667912938 207000965 556757088 913067207 922066966 925248541 970403001 747325798 916780136 722643083 840255003 116639360 575701345 576039172 980788414 15454527 291876812 248281126 956611060 555321337 669469984 771577141 992654938 423387015 671073940 883324083 964135091 246864186 903195639 67306197 452934781 974836034 997031437 30083413 986191794 415011757 685261681 810342132 835297877 680483624 701437258 140253201 344580977 862879879 892396982 74171814 975641488 446771059 526281818 599870273 852593818 901338225 915974336 139467220 537465375 932864154 961927649 167227425 559083418 779818655 981135612 588868306 721769580 654827806 779509922 368412021 688197116 691066266 705987897 573277265 978889868 771079343 789777227 337907179 581190871 169673697 974773859 897013890 992038867 804952753 849583287 867425812 871574898 942337507 952266617 329496650 335274525 576412618 671050110 180708084 720900602 518840497 933804847 613776451 766879202 912002832 948184962 618826728 894021764 525654305 563957390 532011556 653064939 148010534 396319675 384284905 564724633 590712145 758513126 950398970 961477929 624447426 660981471 524681957 852462431 148255860 810839813 725735542 781611925 114195700 323648697 936175189 969592509 543997071 752336465 984557743 989800440 359041559 669681605 775147930 942877841 307464190 969768235 383136852 855536589 555506510 942754907 460712071 608903710 636538668 882157574 981058986 988191844 278240909 280787762 582503383 879518325 825641123 945140917 269258279 579951429 585725536 794161243 621130021 902167557 679530041 745242375 271393300 958386369 47131476 614268572 839439586 885576432 199285675 250023682 831882231 848627960 552128636 851270503 836975825 920569224 453222061 667785751 117862607 779114735 828791792 949964921 954306412 969561956 885589910 949829247 393931876 661755862 699527770 995044979 406206412 937595546 791854949 991808502 227519722 915452014 973673953 978441197 587185865 690067590 108098602 368841661 786323479 818924012 83007517 842644422 972044305 980548837 88905967 857446682 124195480 571562734 814064944 849560744 71407343 720860197 689551058 766543998 151252199 565652729 458221053 483761200 97587216 406284071 695840631 739192253 875545694 878168597 184134171 347570493 637662025 682813976 464917889 618262955 713791523 854299872 69525318 880094590 610230432 830624765 373224156 515446994 654133151 851000276 27725971 973506644 90506907 722367451 863199586 919313733 553292129 666199808 20346366 933361177 184251881 261449487 949675938 957995933 770237294 775329656 850527340 945576788 192595270 570488178 226239265 923551686 579338820 967443201 283783906 789196139 669471116 853336942 900864077 962749181 466310028 956889595 345861032 464514530 534956381 972081233 93005359 845797956 250947793 289258164 455487949 698465376 452638425 748136907 549012391 641838179 918197532 977860174 364378777 719503752 116336007 330182156 916355217 962647966 899120153 959321644 843828553 860487931 655565664 954288491 339129465 815029073 489587455 795272106 46139934 883619024 691576171 748661260 675682774 783372513 977299105 986011971 422741452 967352364 862983023 973349551 113614667 806952213 314511030 669388437 26028056 475420246 750691307 946887398 597917034 642524183 572368326 604716896 64426567 250116904 564671583 918335566 688512244 970052272 442249435 912081047 620310953 640047719 932465130 933088720 946997703 958843646 540194547 684803763 600252920 937867839 296565862 369415290 491569539 601348145 592471022 935379902 496985739 837662043 375877677 715774150 893044812 929035843 924378199 963147856 333927042 726046144 38124567 299340726 758391012 801457345 476464469 515455809 994419520 998644213 746288354 750955846 536201919 782875868 613619923 745573763 628229097 748431273 260245231 892933375 712185984 962863579 118644433 247593851 332031143 958022234 21601939 204616105 465528022 840622453 848823024 887458363 420339660 721696104 820963903 970038293 262201050 465266496 975991862 988817780 787157617 833851232 925439873 928550906 707629952 772425362 157491638 526801734 185557778 238578288 584740334 728265276 956387133 961400958 702188361 813087128 481903554 482889706 836902741 967881318 327655864 949982372 749245879 975687320 114550019 998077864 296027829 994008407 419527902 846177313 318629613 528029074 171794225 314487740 370540115 855759286 556695838 656116629 850075872 874921416 709381098 905957703 196239949 846291088 314270691 976936231 39572535 413539981 254710020 560730803 440742550 561829598 56292723 678738481 547053069 887978037 351549661 633421518 981142788 983747926 709715219 999378824 4626066 441581008 998138974 999608268 354465932 721775912 309530179 589896075 728755310 980456803 873349854 875252249 472859602 580146546 418328246 666748041 413487209 627101049 667085977 687245170 52618170 978821387 936403161 982632900 699310746 987677792 961538972 991631240 235404002 557518065 960223282 982655796 953806690 967310755 753273925 865906562 693592844 847947644 59851945 283889244 706629655 816341510 997761463 999450054 390572125 833852541 868102265 978197092 138040055 633440788 899519491 949955712 771604286 839367566 627188444 828381420 362969193 935118390 71863540 89718700 852354230 964145368 532748800 922811969 57901981 653660647 346107561 559686979 424282434 898797661 988671199 997697981 851621575 931978866 935265254 944384711 612608857 825079726 362456155 676715801 753819344 762633067 837254596 917315010 496426741 657414630 874034102 988578211 853171289 853747681 487947631 907325435 833854496 976667807 449231142 616185471 750678515 898650804 344378517 906479078 843149430 872665560 918703104 992778608 192032230 343931914 567155976 705713998 7394719 372424391 563841497 979972178 80188200 445916920 516370163 903251286 460836935 893921466 776382995 987065391 183522228 249371639 84253481 499829030 208547555 569810759 994297231 997662254 357567677 845763379 577641950 844374175 775269214 825684302 759611750 974578642 464659226 829059589 591999678 981872692 565792993 871227475 790381791 951132224 789170488 867371307 568944977 925472922 464972532 568703681 483004333 484925295 391279090 725391856 60939925 517825617 446805160 823238350 818626089 960774577 713528283 997412201 383983156 681849755 473587014 608533552 412378372 507802938 222872954 269434524 441620684 515912266 428087853 649118688 393897168 520834729 927798773 958094127 762065155 844072507 309972738 843977311 325565892 814228952 853029255 884618402 281734294 385727191 994579802 997598889 208728442 634767415 450535506 950026613 94046311 255439887 370329284 566949357 911105437 965597573 162873427 974648446 262990791 753193992 193680737 975861389 245824264 983619437 204479485 689410184 757833831 980133435 940855019 957352544 744982767 859734335 221242535 592869752 96464742 622551325 347158879 737462346 734488394 925831398 475713852 598881893 338532564 547237118 345307254 736958357 805038462 879325602 266473055 843492599 38634052 742476973 626504528 941055082 87829304 801006558 904648722 905072413 764459785 827228270 160716533 912275109 421802852 448609012 244156614 275775330 708462375 840495673 376480016 910936397 703311545 770538480 559009752 594300830 170441240 538128497 401600374 504622367 124664148 125816476 790398164 835741650 262513198 401705903 636715137 694355074 837185062 898623121 802038419 872504686 862225210 947287501 352963613 411481794 794916319 847354577 252661206 692584632 160706097 834485645 896797089 972049483 631764905 975047196 405267041 406196673 743772692 764085016 919430785 988293767 553493277 767916746 580607538 862334243 246647125 531400951 925036744 936742888 915439204 974843719 990569381 995754087 918169138 949593422 357889336 902690043 747673655 809916535 4128827 883280113 928468249 937404067 559056051 905397104 574367528 929386311 222952844 727989053 821636872 940530391 251290865 773754440 479814065 903753371 648578766 828610768 343929781 441144495 391755642 607804835 81743019 394466804 576310912 954367050 638062842 780992129 856551199 892632327 524310876 736692264 613481762 894908968 50618849 949684073 463965975 733658892 270890125 274303889 498835499 680449793 667617490 782421568 371194320 413156537 66286745 353557047 168891074 643746798 706867255 829604114 722973620 894769365 994342647 997203050 964305090 997762864 861380199 930989933 334797824 546893487 357325679 932838910 87880279 823366694 457181115 806020257 854647885 872138714 130805682 387813888 672232374 773008760 511095153 805171930 999487992 999610322 438153354 469448522 21342924 666678348 458723688 805121085 554224048 608544589 292578073 477653280 819670760 873394458 737231107 883666674 170215563 535839014 966627276 987467876 445540348 831698449 792624801 884170813 662347141 670609572 356352153 915167259 209473165 546473258 471906609 967759979 176047487 559664524 183953745 234701709 928547641 958601363 799945700 822907222 443401706 939863918 238370002 890571527 367707760 575924176 870683127 879373692 858368863 931033781 242868796 727492095 638784036 869535873 455754338 596386323 397639995 554947999 532428301 895062527 217740379 679022827 838445160 858070171 61127470 92773397 845170720 870473083 113705937 537882046 700445500 875266383 488535201 878787504 850395601 900205766 209126269 370501973 431701105 853893001 12381755 979053899 32073512 634275628 831584132 850080591 235115157 852453790 500989544 601342765 657309886 931640049 177969173 715902739 165424041 449412824 11144729 910465454 965673117 985434017 921916558 963245540 738168567 947846474 917238843 940227024 327347406 819126588 490802766 904857000 644159745 968066616 265923844 528480179 146747659 389002443 311627130 769314667 20149622 55409132 727374503 824980585 924126780 982813064 114544820 660338262 408666411 481685085 233931037 250443469 45855859 71311696 495529834 994655582 718515046 795370929 571229422 884140381 201152155 741360706 966192473 978082771 213121056 608712695 371484750 978362343 112003653 369043428 277760712 416121553 911770448 914406943 740848946 892377366 412927390 698232709 702086194 816858697 113237821 844960307 637706961 739037102 768775275 871338972 399144648 505024136 174188354 685477056 972222765 978239291 75313442 802569136 690436561 910155863 862778685 947374681 24247697 745677929 973740519 975253866 155174334 303737607 573997712 825166755 282752315 314944135 276890611 434454951 799546471 859360138 378622826 788448128 926064441 994140730 95938209 541892777 919860889 942769510 189990976 496254354 986735436 990030893 388691235 881785106 151580288 486522730 551009488 918587424 682057644 991824794 745038986 876248198 478559225 766849573 115886103 849122889 127988687 660500175 585396119 983759325 42089244 507421339 85978211 836518104 16484836 757461448 501426814 712315714 730171434 741740499 517058846 681304707 178106389 922277270 572218218 734384283 594238216 851853373 514197144 939762931 234984131 774861814 192446247 283421715 819929810 923740168 820878103 844586237 204844100 995687789 50129905 129049803 743214404 862956546 480334079 869985176 185985613 350725309 928450599 972256806 724413472 811688662 452020818 558324503 686907427 976035539 170950837 998516849 879698587 946359430 871453491 919699461 525159179 773542434 827589200 838982887 538862354 949991805 487376610 787993815 139435221 426890241 593365276 781895480 669573857 750128159 722085446 861295214 981097924 993054924 775164172 982742940 818489996 897006401 284238950 443150240 379423913 756510019 674497817 960824340 871658349 922042247 794538119 898678685 695097596 758762754 588443370 630954597 974053908 980814065 755806389 807795651 696148288 871543019 394602422 822275374 333019477 529095471 282453237 947223468 349553004 936173178 362954630 708939085 661859052 950008170 203461846 603334270 403758286 988597224 184193417 632481018 359358261 499073565 659631102 682671077 809796326 894317336 700590802 942362581 582317936 871723711 64077437 710155328 254543174 382970393 303686163 814910581 358206172 790850052 341010129 550877239 465545452 779479761 162404977 567399100 527798370 761320449 962952725 998877783 261813916 771044864 857502426 938517506 89183512 918080110 643243803 728333949 554957101 586557012 682521604 728619617 662761064 723572600 607802914 643555471 905873491 928298520 385523141 911552869 506816533 948414727 190291749 894380052 860365148 935993509 773796932 988013537 178706971 574050339 778744911 997239656 347407650 904988392 661137088 859059305 792710144 909594411 166562141 240809033 265596558 465089563 489829569 718539331 978407492 992434196 927096211 979210180 42160257 173181134 259220564 319006696 437007169 903336408 501827614 747094486 693726356 928639754 765708910 925035547 899497400 903399329 244460524 636039759 574933541 885712575 335667751 970379565 101385075 757539394 901977084 969376501 714984936 856491183 758568790 914295631 721484007 844590505 433982334 502122543 772581793 948498558 469946889 495564044 602742306 829484565 256615129 442359325 206721873 249402524 879674726 956813367 793715514 826695179 544986371 895475297 902892580 925793916 164148787 735661659 229653039 708181633 665183120 698848073 652555473 842241092 338157650 585987014 946864677 962728758 95512251 619793287 642663639 882928910 820223526 976580066 673089999 765840510 186245914 983524074 10649354 309060071 211443690 528537941 767428499 869295841 35367432 422574548 102886155 793090626 253539826 268965611 511402703 558077451 265213208 341559414 309323092 737206713 886579079 990805977 919716434 967795875 822607664 869720680 448178301 761813547 824531457 946350350 758442829 818115751 815462504 969388707 145513040 512167254 651948518 800646710 700751665 906244441 327309899 340070302 895664954 990677764 367701793 744774141 269792065 985032101 565972844 691156785 168351765 438173434 198525938 748891580 805357326 952352611 74167942 431304705 739419574 757007918 215590191 990058919 45276166 976945281 824853904 837696390 412197308 498693676 770759410 961824156 892776632 939841402 44105472 270945109 78221542 947899737 659887487 926892362 788933453 858055025 13803699 831241961 564292194 858747024 213638759 901849123 122372643 975392253 81868611 317896169 325917881 990646206 389061301 696238366 808904186 865843489 466121794 780377417 613468612 717299697 991291839 996748238 984056385 984328181 993450088 994411808 831283436 990704777 795647794 808758499 558378502 654878157 310769886 735961955 202494971 677922638 603134398 684228894 602330608 881287034 997623012 999545443 228590031 880156699 796890011 962811292 301392359 581682157 373238795 853345124 553717319 908678088 604822902 807795167 470794889 472314540 504928837 521428565 646848147 954882599 721862912 808724411 691229899 716552074 332630133 962384886 130642631 670157308 238984107 875910913 487296541 935384977 172417642 239009691 704486142 786034694 997911446 999968185 837330 694020615 570295163 601947702 876046442 962406865 886065533 910369008 530820053 938924383 356608678 830652221 854754350 905881704 453749571 836207755 558374561 682297271 155146820 641822999 236490451 989264667 765258464 870139937 233522071 933377733 500973691 950727670 107971875 734601251 312694512 920230828 49987280 323154317 874455995 874552136 117267371 357574592 883592966 989456527 576590799 666356142 676207404 913997527 266401776 424093362 205748197 859445154 785878558 990043976 170237322 663382394 980266026 995215473 995916694 998462127 644641253 799933739 390288958 990469053 248916110 401761631 876409026 918831028 799238477 843854225 130935120 762108082 203902444 402357236 539315966 600624299 531119977 817181122 407989481 817309120 327394681 965316170 102297080 103915616 795576014 809203670 684046914 742127276 465716239 553964070 778202477 780513269 386787099 848247724 593772795 646632518 486799077 812751580 47445166 810457740 2850798 499260834 254083437 721489461 636196837 637804273 357931025 614033364 248412785 365720142 602592471 905063133 140208041 320570489 331065558 688915661 905510205 997046453 307693481 988913771 782554459 785735087 604737430 768873335 817330340 983488802 479556894 960162783 537017971 678812933 484903053 711157029 596166048 992888723 467808567 998106498 30479484 669707669 755962091 869242117 662453060 784769658 274583072 642724152 143172149 383553414 979032082 988840645 94886039 421694602 217537824 654321483 476957740 492291627 89431655 504637039 234099121 957662953 858439138 945029420 190367427 284709628 997019233 999351430 840485687 842370033 780662098 967091607 983609856 996101229 109446360 380387344 225736489 814053770 42776008 830578153 2877949 260731151 222447818 592182471 786800797 994027231 882820250 940559097 392455909 946683540 995513230 996814961 556002401 831743146 578299421 866237352 677905024 690189580 437026433 615420221 434134386 497084889 335656987 549778193 936598580 968108145 547429246 712422436 923099589 931227104 509994503 807635218 335242236 884622765 76685605 166460382 626758138 952732592 844160149 968955076 434233859 688575512 919031817 948330372 481079989 806068052 332095784 602654824 979368358 996269587 201866946 746035828 192182363 484548903 206982481 537184539 322544303 486704179 177255201 527203349 380635334 757178355 216052832 370887709 410766990 430678044 4697443 545915733 3301621 439930090 598397059 797355071 765449229 903721740 469815473 741911586 328503296 501723565 51428366 414352239 503658343 756903175 820690044 931491861 831569258 947130384 732947992 776212428 898767212 931083389 745425593 832020634 521154932 743751854 829543073 966197648 204559132 709035512 332983958 411839687 411548427 717135466 819946318 883058569 948842253 983848242 662338686 746713952 628308442 712847749 417742141 596605475 608064634 705406136 725895345 900329521 643649257 752665290 939879978 983159341 962529535 985810705 9260455 312124462 361276616 504759101 152783272 183656822 335476989 366467765 153600079 615179943 457505998 586021211 236485582 505324507 639356752 909002702 694008470 975323729 655650705 832106438 291071648 830394834 125107482 947585178 288866193 341153379 273235461 838742556 252204523 963767927 135458053 142224687 972721351 996718652 17170526 552995801 875035400 934518035 931422438 948412468 367017223 535613669 586178613 611918001 618721630 917402493 695229189 760750972 751097957 941258219 782698199 821532545 106999735 472876189 203298348 246925135 72550632 330105262 889923556 907194770 641429757 728355548 646925194 840450716 625415118 861325469 460999469 519552815 339239847 803700107 628853277 714628725 449862083 512194895 940259632 959152979 415139992 989211125 34158035 980966710 226666393 653918090 159958592 434422733 151926245 916362602 412701873 870190623 10519974 815339569 493479682 544042971 998110533 998492515 674660850 859166641 341720400 934718921 852369960 993155141 505538887 639235633 631489303 827877502 496068285 865323288 652095204 834124122 654427241 788818760 186064548 623297438 342895582 627355674 458403938 480514323 178535625 539552101 509995782 812110338 834348281 896822837 636175629 754484736 393505975 487510807 314485019 990583398 628145680 923650648 947702369 999149046 591517578 911660314 218597769 989152263 566993675 788285772 558946421 757609916 556079638 866858998 16665384 493174591 762773760 869154824 670311349 983225458 356164457 803028012 197953922 932642302 904254913 921692869 869859612 952320501 451972996 648111972 362095428 824285915 850660252 957315557 472717791 913508026 418133547 719519018 616287852 983131299 489013277 964190097 885687340 921411105 531330497 810794333 304255578 762960565 760629480 767401735 564577070 665729180 423102199 789480709 248077619 670746010 632311360 848555006 913021126 937863031 108217027 928879052 730804621 841084980 944312609 956193508 615044240 948259698 409599409 993892631 711221051 826797520 798536202 820744377 835526502 850105640 770957455 795112273 74715627 880940017 23203649 575985810 13522345 457415330 591793129 676491991 38216813 268360366 599778710 721904047 947549672 984661945 174465708 993647818 707449810 855063174 973446992 977785072 720879801 795600314 190439337 536080842 880795001 983638239 319525562 321066781 597353728 793582289 960211351 999548691 252864858 560246715 353254433 503242544 169549818 804412267 164779334 876057298 244271218 764386914 110438548 618905134 143852506 634918221 718384855 918937275 730891985 897423091 612223191 890075196 118595067 908206163 920823629 956641489 141846829 423680029 317447271 990317579 512765724 704386783 637754777 969091617 134307247 688378058 454642888 830499008 105088802 479380655 631595679 809931460 251048932 311713964 735731154 766053962 492589832 922046158 266616848 694382541 949069056 953334545 814392684 817393574 644983325 870662166 918571463 999542319 473327534 948701023 665686652 888779795 246029949 577083369 750039019 998321251 566739934 668333714 849130120 904635741 84531963 694056026 355406513 532715148 162749634 996443344 615640212 629599183 316204892 512806600 66455279 635542462 653287184 680249503 691905440 752056316 677235677 747821981 159748659 651940483 587739037 621307899 668995411 919197387 348843979 927445591 552195882 648018408 404215662 940135615 797182455 800145499 162021595 358390060 77641903 453716048 952762628 957930251 452537921 994751349 936718436 966831789 516229803 822193593 792421979 915264702 938514923 977749185 111299311 573882202 559003672 836094148 393578319 539261053 518791740 791086891 834106710 900893574 51970458 814434319 122704719 677922032 331586473 543255207 965215937 985992662 842287873 870549849 961297777 994887945 178023390 850671057 145717165 367067062 995005041 996500087 373405765 884078585 413786175 920383446 503944120 767696582 265219543 861657435 13666713 565800088 239586682 421768536 333252320 776107683 312953898 324520077 203612039 386242154 794523506 822237604 349618788 635441953 719768922 746001345 156625277 439167866 883925811 924927583 849052751 921234619 81610357 676802439 830310866 937382867 236537033 853591100 169723070 927833505 913357487 961770020 564692948 627435744 363839845 474993188 844715543 897617021 832823174 978132730 24077884 912443545 472913327 966748405 527862027 857151068 841708971 950903969 727987764 785376181 442181143 802848445 760991683 767612326 703743506 855977675 14772773 69946496 412625817 692688559 472541572 659902998 126150238 564039166 147676006 827623584 791191503 910558400 815459726 900176195 528531688 683454311 225743940 904398449 77500572 762932201 540332904 748822842 815280262 987855593 420067669 730476518 882373954 911226209 370673803 521111103 243404089 766896749 162852355 237810035 136388740 792142255 29411507 772978503 504247727 940413613 37610684 88403119 82501951 628724963 506904783 741380103 615683670 889678333 363510455 394863819 28798855 164620900 867277059 991123145 160674993 477666151 223591201 590541747 302174395 562177049 868098591 969987442 478628663 872716944 229224262 431439819 726902839 933152763 238040159 256016474 510331573 845806264 756057277 757193564 549356319 627387088 500338330 575371962 81737056 327501242 688335132 875417206 842313839 986305174 689336610 760547894 574573933 768048066 806171950 937489680 88600891 597816798 856840475 903196774 758189147 791746335 145375095 390265900 972734237 983756026 214729252 803500832 108538564 441146292 788206906 929224613 535082453 569544991 794849963 896380928 809221709 974915685 935752270 945907689 325777548 458767621 230409686 466100579 254007077 506505773 106756156 137648873 411086931 550923310 893923065 988689763 540179851 613480518 471673004 492457134 719991575 738530702 129980089 905220062 79564270 596606346 736445778 798011800 957153695 980269273 525524107 708663717 768876816 886484604 153816216 862295890 280011921 413295141 380194354 558201793 611900576 883566727 203780373 342600722 471242833 813955175 479440992 923939257 972296471 996919616 360888582 470986468 989819172 996316750 384150242 740460081 583332303 651677438 359813411 760936538 187745622 611565332 15948127 312590036 936361107 977223953 837659323 940460545 561799555 664278287 222795197 490955717 913024211 914924256 780972171 858928576 639287135 954831229 23476100 402671517 377747630 925685948 572702046 827590548 783217612 818103052 520311700 939751780 898851947 995696737 589544921 626590244 623403825 792318030 283270285 464644174 688765207 908981841 694347336 929771912 159040142 446083690 99304979 339780564 997056363 997916756 909351818 976299860 451075198 827863871 681862548 853838706 111285631 405458409 120924904 663558922 839798034 940989364 144680099 984076089 203407297 240434203 382468795 879251481 620699974 790853531 227604600 879895394 276314475 835135388 168676015 830204614 946831014 965878885 425520259 833142057 665305363 818905982 230300884 714376596 677356680 964711388 54585844 711942081 57779394 267424055 73589530 861435889 778034372 801986621 967432396 988690221 554611241 701163637 870706573 929824424 225913759 597136487 82402556 687669935 397453240 804487219 661243972 726381731 338746751 343516445 950458109 989734388 285403159 656410632 860821233 924864568 899956453 961200866 505847646 814106411 509125080 788832335 103384572 390443501 55885840 137432316 928822117 952583472 930672727 950262870 710733082 938883300 119672101 952838677 396236751 839850767 206100947 323172861 420911951 473174365 608519978 799957009 55384489 745488232 939790026 960729816 334502599 441181333 591886290 939930441 176751448 576771924 888410815 975409808 486539910 715265317 108428623 126119385 564094796 942155664 530791501 908845535 969299918 986646959 379704214 574001648 700261970 896046801 232418702 991180176 170459799 651361474 222543811 540729855 371487581 915773575 704276596 820597226 988668930 995515337 611472717 896779173 91738624 874489024 833518262 983722816 341954388 985464422 73995653 550956855 275474118 411555734 474376164 816388012 99434135 811051277 941908042 977070552 563031297 778982079 137236104 404670558 246219996 937789291 170644309 229693203 746674241 886578004 63995250 554574323 111261926 372340738 169517872 226710818 361148869 722260130 11452340 36704421 849288863 978427467 504697447 725566012 706681372 727152477 261501584 983055453 953912975 997849768 943575898 982158411 133512137 259076455 790467803 900232848 864349537 972329359 100825578 641434953 703859057 748335251 480298387 928584051 174162241 321396901 250367441 261907501 881118140 959835701 609036848 753560828 637330016 905498330 638661625 763705988 221083344 457744713 747067760 832389387 640812809 877081794 174606334 443557159 991012008 991387226 6878296 254884360 126580182 137540179 207223606 506558135 651151553 859491086 569535020 600315085 226630582 348954352 482685428 747683573 78186424 325104537 185445366 716572101 967486362 983352476 656998998 973271129 628683547 665695871 671340978 831883102 159384562 881149605 641757441 729517640 971940846 989375116 138010837 389090407 326555720 722527901 928545292 977905258 23322937 725997439 684426871 809725479 532308065 869039366 183553889 992779000 209841500 448719205 807355765 864648979 178540534 662899290 144262494 557060425 700131435 877605962 579561943 992342780 148880033 153987736 191875426 743298195 72636104 224695300 773133401 886500165 634352735 722798845 798379185 969755052 21925142 213916416 239205752 644467902 321362791 890257588 713852676 858086874 177956350 259327401 482649271 844606394 362877206 571446939 112661538 642900722 133254974 964700256 736412174 874691483 30591721 131729392 376037557 487794263 64740279 676568847 377799187 535223708 393509674 831831801 457260101 476324250 730250144 739373692 911302731 938479334 377626929 794139462 409421490 799879092 454904850 744986957 293002012 866262673 598788172 779230046 788352374 855084475 317923331 544661204 884255904 986977883 826245935 856386712 710427953 790312906 429002174 780644663 384993815 969143547 492375601 506446508 423006716 924892898 166349911 713023537 248366496 841126532 178263598 509261093 219993725 634102071 595345292 629239462 205824511 239752654 348972485 416869357 831053293 854807747 814596031 986378894 718337164 781101991 526114000 681515975 888366257 994362340 575824629 986197018 721114694 857085964 378112466 478243305 468031285 953655479 854216465 861557751 607017657 628476417 179017186 826852532 738006030 777847696 122700799 377985117 127794053 307866062 61274862 85812708 660245894 878533843 63296374 735714614 396085119 915677008 324532946 938916688 679136429 862449802 951064944 961553136 686500130 879367134 178875497 683232522 439343599 822199753 806853019 945449699 702534553 919426593 517836984 875738341 876398725 919016109 252258718 451269556 637248297 728802672 676745749 719015709 474777010 877940557 713190476 998006532 110291025 648054263 783525037 825980482 157731880 327784723 656505732 948583563 607937239 934437274 115584231 997350027 137357585 382169615 778595522 951675100 123570155 198465472 456030976 981263033 608042790 879597872 55528775 307379246 870483180 930498742 76516599 794557797 870547181 937208963 461565820 935738269 482380241 610369625 996486588 998478194 38473205 445757135 267759881 722421734 136170503 283885047 962067985 993343307 724303714 983485330 121182850 411555398 488068040 922645621 39188393 511102686 167731158 208690855 198774772 635396427 579555506 762915216 172583655 504789418 377846390 531888354 542671659 746802115 353267970 947512302 980951088 989950550 257736348 838857843 287500226 466577457 19591772 37662114 107502535 732230549 180549721 605717059 128289863 425846545 260918622 275904201 446826198 910692096 55957318 244581788 718734217 791193252 743436604 807910823 973715908 996916218 604300572 921688726 594678415 852032032 992854867 996348668 385592478 614809213 533925636 758967930 708280769 958733496 343710752 432451766 482420440 819854560 197435662 711285872 303143923 865041060 437874536 797958612 645009048 833643912 25334726 511021330 870560067 951526256 412832143 986887504 183310735 826802655 476036980 946058752 437583023 843570658 487125845 851467386 537239268 960937017 374602362 643066359 172120784 574790843 519642435 590448977 112248646 327119004 389936754 921816827 832976381 843193348 811102983 902432012 455931110 813494389 668543231 787913238 229647611 349031972 825445572 933302636 890617189 971399758 373058843 654885100 124522156 778171796 569062833 797231808 446448756 597212219 994725508 996152403 895954331 951586447 569225924 888485764 806878314 962020046 207882508 968276572 837554049 944845758 169732716 998536564 371594375 773138291 894941947 964986399 755464322 951664154 814742888 906338108 204227817 771804758 225937336 574651730 455894423 534175001 334607642 520743138 867217190 885203853 732856162 735672085 286280425 339496959 752118382 926623291 3568776 150332216 218295260 821460806 461134938 511455894 79261389 661913106 458436022 541421742 182601193 987590137 693138433 814779065 35717966 232909967 724479160 954588484 834014099 847685330 170947775 614968278 15381140 286129250 990993352 992646090 680819239 691490193 234615459 451217554 427121862 846327429 93973725 222798779 948653447 954882506 221275002 563960537 118734982 583713602 912088518 923300276 415004298 558988427 854112043 934918625 575239717 960547114 675095416 806291367 653981219 978912641 587125896 674094162 614820576 640306414 599220596 624059463 65664352 280711706 599352743 927695398 148457844 231381916 901014324 915026771 174331184 595369436 415466661 560551837 996708628 997007818 366636712 722175281 106257462 381342805 855624765 907169208 177248976 899105864 751366304 863058189 910025084 962927635 959817594 976464667 191238657 305529217 717040393 932772541 143908321 590616712 519030409 585241978 282304624 341776880 442295748 578113417 131579198 973059416 15694198 907381980 821547527 878978118 756347913 953652527 120759959 202267704 454364029 596228420 289872847 920030049 588783122 614090467 38925952 855392609 723513706 990077171 367749489 586755346 673903904 851148033 832720790 904708778 782391359 821794804 367846838 562934913 496854672 532502732 234403231 274618672 924091626 998817456 180912321 642668398 685755948 733821539 279223172 780657640 361836319 923836337 884560250 995372189 725378372 885776360 514528438 867218900 171643236 973536277 136404558 572227501 100379326 156200174 433585937 875473147 773270914 906194454 134347850 210242121 969859105 979422338 898119506 914011251 689516028 875446615 783779241 955400272 560239247 761206446 199001563 338971426 889039939 917275186 987569146 988501347 430396511 525353887 132329551 716635262 385362094 549881285 206808827 376606265 938264906 999519068 736303913 808223623 307164325 841052214 746528880 841174602 435801767 842064574 122090490 815087091 146914345 191034530 956789647 986097775 145330231 996957082 346663453 782495762 628983052 640511933 979691540 985664276 406099291 942555240 218739722 520834653 533977291 734672993 908977924 933445640 15564869 350705224 680872052 972806888 531151781 947131281 832615885 976744573 39588928 244015593 763936705 860858629 550974791 992382101 80908637 619466709 997425410 998703503 36922618 955662283 436637316 716122723 421833070 814377275 334786953 671566666 627655177 866341383 828998758 837088021 945677771 962377996 360716669 407828341 472013550 918881226 878628018 946190859 907096154 946951290 564751956 614675276 676546179 796097855 856634311 958550216 949621669 950032269 14827390 620053401 327950588 928187787 173001999 889605633 255501993 769596322 631390770 849225192 281195977 802835758 425458495 499293005 692320251 946668003 352058644 728225748 135288533 157697385 556961405 903428958 704482674 759613686 737175964 786129856 235487045 729981513 152683573 361961217 523361953 598584392 138221232 329833044 504937423 637496877 169905215 219111919 700095198 848428489 379368093 578746590 358744365 649911174 755270380 829424838 532542999 909844477 535764217 629503468 151705489 698352975 409216949 969137983 720132004 945073699 866764590 902130636 460205584 902902061 188705067 695712551 211607415 339069391 708005237 923591796 964001721 980437828 471297413 531239125 177231967 473921216 18838731 842400905 150810875 288898804 288844196 919401887 104114305 997995984 601799413 920528019 976551968 997686557 240781686 740578427 665503175 772539609 906892731 954351447 336862921 604993698 811853538 913648646 85359223 796972130 975622527 987828159 843311413 957961409 960898118 968333502 287188884 382300219 500558401 538942842 783397271 894627313 553611749 846480269 73720732 390215075 618962294 979100877 126643730 436726191 926213012 972270260 150834975 951192707 503108591 764046018 459165807 793753919 417349966 931437221 278314310 870941717 74388148 366171031 482585994 615193628 631512573 640778850 371702365 640958205 936954607 985188202 901977703 975705331 449455312 466256951 295390404 788483169 735070912 978167411 785871643 802950733 186885916 520602999 861557236 963744900 284243156 905996646 365351626 787623869 298522298 416821246 123329696 377359662 967913412 975132395 530024796 867479420 149291599 739292251 83671117 425172452 854780091 914344666 463975796 511075615 719438335 894149695 626054243 638541205 310347970 335308022 673092120 985967913 944547800 946627127 187122373 319191869 752131309 854118811 958822053 963945376 235013517 268182252 626439494 728465278 729974476 790190775 525568816 603296151 952413290 955618963 981379598 991042216 866235144 942668424 791805238 817357469 480702736 712762491 151919831 683660139 617943210 937161583 424975058 493831711 337695992 419376123 244671659 839511283 828426784 983180213 969102833 979756346 801671944 824722428 123134107 132972685 98670656 451572538 802855020 995443797 43550032 716150912 67773619 425664529 420054037 748330195 37107941 813763880 164459290 605904234 748813448 823123507 990712119 994012600 334569697 521278981 478542352 836651546 216499256 980955361 384508459 884182105 344098101 841590496 444350402 947528917 766306701 869086706 861124145 979803240 230976050 366791978 529115243 755688508 988467681 997158930 326624823 982577787 47214810 333659629 94965226 291012621 213063134 573444287 3746441 190784285 932643032 984424379 743201557 801326957 520879217 803278929 458432274 580785451 325374799 448005587 716648486 908239913 399522865 774076974 761029162 982819254 114008070 996491093 945479870 968375158 732414676 867928823 582063953 638486538 567068894 863575023 317932216 463671572 705364763 884310964 146462387 830190926 228374824 400256744 203243996 972781443 174414918 571295536 258816946 519611110 598118683 922240608 244957198 305333298 741624668 949281008 140676191 281063967 735622223 810851005 792689287 814719288 729626702 943616041 914262590 936707453 924895329 950511032 201853271 762040445 567942610 619105554 390888167 765057300 794679481 957708229 354642038 414023045 256707804 467683310 781302256 926222739 879188725 999826973 642528022 867166423 171746744 436826699 33736074 67317444 623626642 784467649 341795121 860678948 484570062 779005711 370350082 895052623 963009384 980177828 604017139 613279138 247927579 273754552 992613274 996530753 788329431 852674898 336846331 555796412 392716799 989671382 795937003 837670116 119548270 176517878 538323281 677437721 628719707 753983963 934016609 995698457 749218893 933802907 227152683 968682994 380241 380610384 678074780 825473448 749572509 951179828 504189282 685609168 759580485 849340606 705183317 778406137 117070851 508431037 473710773 924945591 776934458 817822822 775164594 915252714 191650329 355563813 28868055 192650461 347381321 722235140 828702856 967185155 409774778 828489013 239824358 781186670 777027370 819099251 756557533 820474063 690498886 883491887 377284180 897721943 464095884 668077202 703746325 739702568 914877791 940695732 142270133 429417364 862411106 951938172 888418948 907036156 784036950 803693279 522257770 674138205 715281557 729666054 579609526 894221156 192542305 620503148 239561223 313981994 651361410 898783844 343806489 772665547 67308453 685677513 300691741 469256042 401213736 634632612 299154408 872636400 578231190 642858584 942559065 945959874 67083324 850032263 865934059 867034070 997977234 999782633 55126680 914447964 81015542 372916159 507630062 628063182 125271750 956640694 850704659 920892090 366643843 929300841 899452733 922555613 834481695 890442402 137744811 729488194 388979859 857022903 75020847 443533003 922115351 955827433 529606427 603167702 670384924 814985664 983285231 987156674 609764981 729035632 147099453 523080444 574122889 603974459 9814158 533708143 221590836 861341927 676211867 708816817 929764435 949657710 358323416 856152736 439631959 975561433 134979151 991189867 276484452 798058076 418824663 778296854 484379266 813018249 568225946 581678923 694726263 785383711 6901514 212394952 885314587 975055113 691700714 835825638 915440314 929170533 845246854 896025956 139426794 751683485 344358399 973115900 369912613 662153405 184229398 246512183 515759400 910168613 52037820 842326702 406446695 726194668 961925252 989983750 997136926 998056076 699586702 786417788 325490631 892868400 410256272 651553586 788199933 836534416 481536839 539476167 551478268 803558706 963859587 994753320 425764176 474566769 883001155 885298599 924551484 981625316 618490812 766613666 967201826 972668801 548646104 899720750 646305838 818550783 667053700 971457506 278297863 789490253 165177442 911981465 885997958 988563034 636900603 954168468 121015283 928815342 594064574 958288221 71672456 927330616 657609306 762483834 836448656 840026979 130454050 632150300 913655441 980741807 231031005 997214624 249298990 338193028 831676683 911037072 775724836 823027900 951653964 974943140 7311702 100046994 676697804 829466755 115334364 317830860 155213651 417124914 805660646 851407466 378499929 576116682 359339189 787252461 28073749 379693260 921227571 965964181 18753048 558339119 898645403 937662914 604804119 718443640 957761341 957872825 781979061 910428510 930205836 940225807 157450683 671095326 642571228 757161288 910362656 968499441 881710553 945377081 833599151 988566339 944360525 977908645 50106372 736375177 735177634 778890298 291586271 476471346 463182558 710084072 204012848 925566521 395880942 415215508 306320974 527298342 709356443 787165966 241519078 359934310 541705131 963169052 996627306 997498836 13138348 893627865 840764726 925519666 598740365 677000440 119266617 481948700 541927661 773730454 34820720 43083317 251396443 984707791 905243880 933687693 472000636 705281447 685154432 772261490 102932760 589671111 252295529 337792735 78462850 753396261 588970243 768086807 493853094 809806665 994725745 996590333 860088941 950161571 24733983 357359708 809457319 957540124 274112145 614780590 932859174 959024255 628283799 958088557 859832509 995794551 667008842 807592082 765981031 809045702 960927369 977671409 496690567 833102898 832606107 942971942 372860579 807450571 980044205 992735099 962113994 963035275 66303083 186710413 843561708 926218746 158449260 808619241 456081176 603586683 531037001 718825872 573410386 984491663 983829595 986531078 137401038 181743520 269997507 977871239 274574786 785566063 893917993 944467767 12146122 128629756 151136385 348378766 822883580 968519847 405126896 758538782 158398999 263887434 956594434 966381150 875860557 995482739 448381950 599776011 416109833 996792877 895950773 978126911 639055990 771679937 676311145 906263520 207210894 871952579 213353355 696016285 775184359 883999286 591362330 857874517 857085964 864137328 825463207 878475383 975456682 991054656 186803681 629048272 262710323 390288788 382463798 470657122 872074808 918301619 129237117 834978443 288292021 660652197 922245465 992695800 798919510 824076311 615373684 739251130 869652628 876461727 687897082 800862715 507338060 592745677 207790391 670068824 172573863 396450652 24552331 727332943 877237785 882419702 848178568 966182156 820745657 965036531 266971994 810939740 989439873 993481627 200194836 641356764 200203748 461324178 31142293 858126885 790868091 809157717 276431087 584172025 291359028 850237070 250055981 701587786 398853482 870652608 245487999 776539732 618342947 862007223 577560132 817402473 127235419 714503666 680361861 740688666 982105076 983111111 979840919 994929132 276867990 875654591 426067208 982891650 871285442 982290777 279293597 653393969 142726463 327637230 653497347 973521654 79983881 756349388 393779780 854016577 715243996 901635344 373909732 501476675 283255675 286556236 84890314 85193368 822068347 877316516 832632132 907450504 67674190 253712000 408391137 605558807 59100778 722892516 277807221 568255959 159651516 937836768 985387504 989082955 393208471 540197857 228368481 475950856 892733927 928561357 890889368 958177425 460376798 690680474 897851008 948638595 227883643 591713981 565255717 855446951 801889922 889916509 965542672 993266818 161734077 869306964 187945784 930473556 951943864 965773879 926283155 956867021 59237561 91617520 809541801 922187976 533323970 698973822 27779818 255845115 406677965 578748358 247765792 638921751 826391858 954323722 889430728 941557208 491915504 607754855 679401760 880987338 547885767 633540820 327625853 929044203 610837301 774546094 429411538 504027895 164941724 817893485 560499126 976249439 490686838 532381321 449864305 640794863 742525332 813899918 689354792 969230902 602686313 801759755 946614852 983890104 877035361 968481613 485776691 954848391 398467131 986400770 270447008 447754872 138407730 305504482 997320322 999519134 199341388 269627539 232047941 987101034 47370827 147261839 836603802 905281417 259856508 725022063 489210724 658057559 610745448 673724033 450513733 745119502 317581086 342000923 698478771 705720896 591247245 823986032 926812607 967191478 966359042 967941758 238916912 534663997 773622028 922899828 223348716 399553283 861249042 935075026 853032672 878343865 184932379 358776223 912022486 990330031 231826830 743367256 171813492 189459047 694914037 961594188 138285097 233483728 235239043 448367469 707703722 804440394 813968242 965351901 293715754 354734946 648009468 779256230 996227431 997071469 116870908 323688802 705186030 924185970 188058987 340321580 503745011 567333025 812385593 939757155 306869834 774365080 525628757 617551353 92452418 404420807 720534435 982660655 599812511 775545544 824976042 966053871 422651886 452612855 463755787 872056905 206607677 792897005 670873806 962906740 722531433 951970913 520929562 748935665 759888792 971785403 491445854 548251176 679195729 982064657 620807057 796761933 314274155 504576752 279893406 655081082 774470671 785505428 330790965 370813350 604946597 829199604 970335073 980601411 265721638 911391574 137872271 718520231 440747566 551978459 202200536 916756825 254237386 768194333 225553356 415578634 159038306 481541835 146408466 773618119 16781437 265633047 864159834 939379089 94650173 363590352 322974951 380630253 716060193 831123888 331778651 508575767 135068786 871046321 339120804 522512116 163223676 182404216 135438294 220813424 859697163 906457260 575917692 649075940 207768847 384142751 262697714 813681189 715697323 841238782 38080831 334438316 714508581 936472688 764786218 784607799 183530161 598853422 107678768 498014805 506633793 713252113 554143617 948859915 238444795 864725239 198527352 450737146 176418361 563312265 752082538 860675520 297429791 722048335 977017154 979031982 541894776 956520973 544550638 570144820 546365540 828960300 302553064 404931266 209795936 712495201 909782412 960152286 68904078 441221102 42512550 732241711 764148437 769435003 999987046 999999397 200236525 859999476 868461841 933346858 654036749 727770004 357103499 789273357 293475701 541499192 386562100 963500670 784414916 921830170 13438173 45582908 140261879 312771068 715112672 942513208 549444518 785460699 846480684 906176922 911947934 974392659 916500379 979873433 655314201 844812918 101943040 933482423 858199932 906998650 623763330 677350894 129775404 553461996 469488525 864131714 841988601 966469501 241018598 583571796 95349472 298064330 224644057 864891492 439165378 867169222 339162508 997889308 886967636 903941735 395627140 506766446 785799331 979858218 198227412 417672399 126175526 876483494 437698123 859158294 181168608 468303702 504177842 764293579 442704595 616545588 188998306 220083202 946319367 976388962 840913448 925699564 141761165 806814831 380219358 732287572 874065273 880206230 682927404 992442380 442441030 717825675 446465185 993935671 338942528 392972365 731117023 864110628 415035844 988141026 761462631 960560791 659275241 684275788 456543498 801587163 433728842 581561438 240918535 472633991 114856980 729295971 260342094 686798966 382350603 953218358 309530226 960890617 907877739 990740614 345938089 530560662 180565620 487013577 752067507 907428068 735772423 988366134 411817845 501538778 908539493 949989780 513277886 823918882 815804666 902528544 648641925 683059229 890736810 943801912 858604254 952318170 510740579 936467356 792424047 916102721 375246939 880423373 434500798 479737790 218580301 991162680 532912885 866138404 477322648 605885177 422555298 506722235 306046149 653385969 792977345 823663362 377984167 987563517 956268202 984985723 411572113 701749932 203528575 694811659 112452777 870611121 15486665 809048329 232378641 522353306 533562162 921465046 537413532 618967958 77649854 579061397 266795395 682264346 478424832 581674523 249609170 255357851 554843575 861531255 831387793 935715481 148856878 691406250 719245292 912974030 49032535 316564793 780595716 849869968 407756880 546888254 223769963 962333524 653817461 932873559 655348881 679106968 927463378 959090620 840720437 894905380 27971188 344712947 984154903 984521162 719271412 848099591 764250605 839758259 239992759 723786302 152628563 713269563 850145548 920961173 589300579 852945814 80984734 398027108 81027522 931509766 377288207 389979050 602974719 758735867 332706366 509674135 60805143 347298237 478752229 809865383 556503949 957466827 906283900 965834521 570076732 673204119 610455853 962030411 457430411 719930265 126011089 316668492 730073161 785111490 822684476 900310983 882347008 909553744 493980797 727743601 646163429 921086365 887253251 900565292 557081283 993509934 760072734 785908266 611140865 862580976 950186137 962054357 296393425 842767170 686471597 935052103 207895719 785860082 185323699 901608912 632854910 934121923 433023086 689093299 261561915 431039403 682049479 851988656 781661606 901647424 470829654 512796219 680645109 919759183 398473160 606811315 217191082 376744355 740704126 885756543 179798052 780228035 581659405 927901275 330239597 816578095 167858772 778467479 920572128 974886523 98289901 379103224 263221132 669245936 799435638 830119913 855415462 879413813 639874042 889008500 903388639 947888853 893637807 924791782 637204676 925779443 888223894 910892911 498362714 701517668 641348617 808216684 439013084 975986881 438521190 620418189 568779835 738404920 142162224 294455104 195612852 824809062 886659534 918001513 165407816 864980323 618788654 742170926 725545702 825433713 127014175 851642511 175835056 402936784 553200779 666918111 112896040 930076021 570070907 573664114 428711950 874433923 497318457 956642425 545654488 934086916 858534421 996207692 479044416 657821173 764190755 914413639 918231294 931362119 222590399 527086153 449459317 904146062 181973258 965034608 485980645 841719826 790297155 967451400 20935274 402036674 739314750 947772437 87300375 673457492 659970939 908921339 938541523 939114447 412310091 841538227 890840530 917163502 921877618 940347015 614948618 808649545 802707652 985678680 823514290 996643715 193365142 670462297 776965206 895397953 516941315 799284094 941395398 998779410 353379354 827969714 513899461 846751334 127635616 515074007 289294023 839417880 789470347 814993777 657930630 817730059 846548249 901477328 44975876 702869553 263714963 867828962 410742927 649589230 521355667 657284208 688997586 966074044 935213633 947102839 699022872 828738791 230224433 882274704 654349399 846040930 852066528 912623760 968336761 995418782 554610483 976831954 974800352 993257202 700184498 759460647 728133253 849887757 855064761 936774202 356826379 652061446 466993670 907413844 902450159 989289906 338510042 796666684 763224295 940276033 536533289 908730173 669854412 867138273 36751163 602063441 419184650 731770503 539373298 748123831 49601717 844136959 789967955 851279369 690776325 933523659 994584952 997350409 787671181 971522671 445291348 476363796 692994734 797374753 533773511 817541561 838406501 957774617 728347944 893317882 692224922 820783540 510206534 538851853 756336889 990821857 655177336 927478059 167198843 247392951 627929097 894756322 205391667 735961093 250419171 349897850 782790000 787618945 318371393 762265336 199207505 876387845 254351980 600975559 154566581 157692593 283689587 306143376 14167811 57184702 336782709 488262585 653165589 727483786 81654253 265459013 107363997 413645942 22364516 894430484 194315052 308506094 923406366 947548162 889783514 982628396 26736198 114429369 231447945 363447133 576276984 887300741 856482747 980208417 646192042 804108635 177360842 787036302 688379449 864702687 868496258 948102114 414537932 892864902 862263116 883953880 773197777 781671278 684293318 959722286 147217581 920451819 585581447 890324663 673208728 896637485 908885487 984529390 517918320 785062554 352538603 691348983 157472635 478409254 580511753 638007785 4803237 191569623 896980978 954147627 826148026 966692869 298344339 351757686 221714958 686559422 240948663 664335311 749971855 798343124 85226130 733721827 966442876 982545538 653208086 939578512 822174940 884006598 980504922 995492122 395791691 920577513 679213660 983946523 486525683 882627265 482078994 967719558 415054846 628931167 949906108 994541470 546954985 734027635 528361450 722555195 740154596 799825952 668536993 784118526 242749562 651591364 72772367 911793917 295519933 464219648 88218573 851258918 772600037 967689671 732930894 802843844 601801771 745473820 176425207 639926434 730226515 923787666 999639379 999768905 885398143 964903718 332584351 439899760 678148146 754503666 695645359 877523983 359705071 656678645 362343692 975293024 720077748 787667812 29512037 954181094 4828504 344311034 682725012 732859568 277767124 775277779 97595512 115360905 81297812 608334660 378394862 636474999 306181406 608063615 557589125 946030769 634250615 875580544 172296096 202938240 533653786 631658515 857428031 944910430 245583519 507799651 418932060 615086512 295049381 353208721 149591658 964856617 768735810 849802134 506446058 880093191 217656150 719455197 42087260 140459283 746337591 995865451 53079638 725956688 874478257 898140911 432774232 531434964 867269809 972537566 596913663 686817188 86567725 266848636 508860463 712686173 289139319 480038326 592082447 956133753 576841338 823800649 145644885 623307521 797538571 895224581 34647015 825778106 966031520 981231894 255037645 593885080 317764095 555059924 65923511 856055971 276711306 956812467 845014415 999265705 971268591 997117111 542260886 727688817 660826627 743903415 469610128 999340203 560553860 767784296 153694271 692626509 953574016 977319841 781544936 827697707 155618699 157118792 562200332 636717111 451750735 985370690 994020474 995921019 600223972 816962079 361614856 950656914 235519604 925665623 758856047 905263892 326353517 707737204 548469241 772312042 321954175 990814654 820485102 872161212 812152984 932851099 776207065 942935075 251891853 777197300 510005064 531715070 167438170 390238970 614742358 669873201 520112100 718062344 804908001 838145330 729561598 844907570 994156865 994698637 388639866 672464686 497917421 650025080 573281802 718672848 21352586 107079398 23143544 156407987 686505916 723248022 965580375 999218471 470610514 915482088 622503119 869550352 532466879 711995519 958254064 987797872 371803145 513661578 771467442 869842234 543573863 675865905 371876212 626905287 585918570 973940975 774496140 987343915 979991451 994404470 442244762 720053157 464589564 768802556 705668305 958590383 752967050 957995024 172544368 550451998 357127572 540059822 718337954 925762419 991056162 995825710 432037898 782943424 601495730 619370609 780238085 974910985 283423268 451382349 180887290 767563315 380526778 383715652 506265867 935907611 213010357 475653285 335067756 944479164 609584809 811374032 857470178 934780781 575966883 896006928 280099239 858509643 862166822 985473455 980474158 982940781 452255536 810545495 809147649 967160269 951878049 978238467 315283826 939091185 71231317 87319695 719191475 749407824 109891067 768090453 91501274 800389786 990827936 996943479 953777875 982692912 322639773 576667537 700451284 935195393 96470032 963516320 880669435 903140942 375475208 786837719 828083433 860376336 898540757 934384134 956010381 984177666 886473142 944199706 889888420 917549574 356848708 358510349 919710340 980162928 182429016 852236747 433266771 942298568 248129726 598618494 3271711 374665758 707526178 753579292 377439755 492084389 786841028 945550461 185922606 356753968 45051943 45387415 855008368 892067518 534436857 611366984 967134618 972125886 80676020 807611867 440031791 550404531 80720697 333598414 898443748 972997004 87537485 872304438 576750073 748211736 126661278 852185973 572918803 966139526 838307806 918897375 22459276 612934195 524721075 848325728 959487065 973461444 171065838 398881641 438827931 999108333 514861388 556193626 850932331 917255136 284946835 671244333 500711024 566684322 641395146 717164237 752700139 789478067 945389152 980795220 114807490 482004315 950599810 993410353 120976089 316311460 820658307 861627354 417420255 717157463 880886146 906112011 29267891 852705211 631341557 672513475 995848554 997813574 115349085 265668423 71327516 99673200 519133052 659455490 391619829 420713078 765277256 970173656 307150693 858444696 590085689 788087545 441910877 718833382 111666035 285552888 295933977 668363506 436176650 505048666 601698821 997987173 790790578 897603802 49966933 502934976 950774663 998376150 840029335 902305234 508102037 703850759 655529306 886438400 499334393 555399533 430989591 824948177 467923482 807456393 333052245 501129904 601184196 658179235 431147889 572741707 713800184 780720230 663055966 821872901 184478171 752979292 465876804 501270029 582922449 948636938 456007835 724962244 719755847 970185850 902387621 941906457 878405559 921387972 349070601 734046932 308559890 673845354 218631751 719380174 51576458 480215258 103505502 454062691 236338873 850165046 190948441 328238636 28180006 930974115 610015442 852883957 127223747 229398105 769734409 810059314 254617071 667324964 47924119 846268688 113834339 532721000 897274299 949821228 625678108 911046993 940226745 964489111 193569850 544064456 967338568 976194220 610139893 684022059 150767823 358718589 911236997 942193358 765481524 915868031 479703654 634967561 379885600 790352757 930645859 941462406 11153167 292929086 62185096 284722098 796720697 851198668 690754528 708543549 458201742 905467253 205800419 464066478 13700563 705839139 850733422 939597065 496994432 645751870 577229084 815502802 603996593 795743379 779824436 848710885 331846825 862261554 661049720 912298160 413740004 655665214 941326810 951305131 646809217 959841134 716375051 834722110 28470218 942110790 438843970 495627417 537006937 688120103 236017781 488891542 685726563 797326639 263295093 427949320 739351406 780274146 627925819 852201688 598696043 891240192 311844652 314348992 165736949 416301187 120455109 896365787 917841706 979655571 232445512 435340948 732462705 755978480 138529121 165857241 719779735 811357257 214724203 721628909 948131631 986782455 600717948 686582275 28426999 791179742 155761653 951435746 905981278 986032490 994762722 996250708 820490730 966439028 826587164 892187585 450487128 772588092 276361549 823850391 292724900 776050769 982326709 987234755 841492456 850682012 845549521 855390638 643903117 727217442 546176168 793164654 708486179 855354161 22603623 37748496 692847706 778410862 553777458 584897241 824793345 929739709 499571338 664386479 352280710 955942444 877570873 979479678 864742620 900256447 180857817 923071784 243846480 768856619 700216173 993968296 951701799 979800373 441521664 955012507 845178781 913808595 210884335 247786695 318979782 484039126 184129084 362516480 640617506 805164455 335445669 958920116 668277439 849150474 517921613 854979757 106589976 936750186 700962630 845865941 204757181 311076328 473774881 659735345 893988428 974676063 64876857 877363632 819184612 885819300 240640699 253591499 638158748 757882026 984225110 995236383 637652591 684217608 21240218 332180982 451541310 867112293 287780595 494355461 309226895 673418020 20849634 864181194 7706412 247347873 904702339 951451338 733661998 800168629 565014551 887449445 899326882 975269084 406239942 972357811 12017480 314384808 127758920 377170133 692365590 913992566 400486217 661388773 321037875 713244451 258345069 513569390 534157426 603998124 553108959 954483881 561600364 875027701 330823952 682327182 984512678 984596194 409957547 487160344 894075234 956049623 953122175 966354513 317177069 682473307 721510395 799712009 426135912 890578846 210599939 926929377 789525302 867039544 881591641 970338263 73058078 809792316 178300304 445927520 867033179 998183381 759344275 933102546 405733982 526150093 781430092 834802486 764699541 819199807 327541450 863389056 348361657 733953070 112201006 117819426 61391621 728912808 365460361 832645895 878429735 989874219 555473550 804529562 822128601 881627728 946119930 950830746 850522536 983618435 233959728 272349767 587241925 687235159 107484330 115984139 746683234 804157759 772196827 929771936 91790494 854706475 590755885 761859255 740490626 994011191 194015078 263946954 222191594 788720706 61370057 928985800 438602393 756171856 620435856 807613067 381634803 890156536 689465813 859065169 939548134 975513618 9930511 437279488 113866240 920980920 44896353 288642562 714255653 937444883 985815977 999239262 254544004 667028163 415604880 769424586 932457580 956662925 527917614 800292907 304913626 600217487 557947280 719906039 629300499 943089163 307964452 961353538 855465007 981941724 320637873 528583240 725482434 984933757 116146121 850808222 805133084 930977349 68116103 298195047 539152722 738120853 654460722 971549873 206594196 728597506 680807231 953704182 360251995 877651337 588772642 993727340 141290589 996808420 802914426 924993064 155504931 285545617 296272251 510347011 468185275 728840663 328440049 894067985 410724523 868341374 934365969 961249080 328434290 888155975 360711829 789417785 543721406 764674796 234292893 896444401 863825653 956334586 448136974 837424013 515694875 723056442 558843095 975474657 637131631 761412665 392080228 594099035 785722294 961651327 938951854 958562865 766440958 924364262 554772248 959483117 994549041 995977497 127008027 153655261 156447188 418979438 74008828 411198233 714305792 982985573 130770473 832144762 277728057 292596998 41271487 973231465 217738937 996802444 510209124 680549724 980320389 988486339 188070101 860177109 974285325 985811248 929551213 988693610 221943411 396050581 850965378 981614521 154976022 781709479 675930189 880137460 96767970 703414783 917955443 967454272 686270893 926562010 248811387 706117521 419051551 433666749 278694567 377901842 417551077 595686803 716854727 745735174 802998514 948018305 24563592 77410963 989780886 995302382 968516086 985939599 998571685 998572501 167437885 730770613 824365557 865350972 846440489 915181739 955596817 961886937 18484721 586292291 933738618 985401893 151863305 526009629 748079022 771362568 841815127 959432320 786187747 918222187 264982545 423213872 955715211 991421590 185722336 497261824 760989756 799764836 371705100 728026692 875710495 920476333 3426634 201845170 813861472 821185354 635594340 972540514 661047242 780653209 403984674 524476042 121748083 857682086 428983569 908175681 196362662 529298360 495542805 561230866 212626820 673926783 263828549 532487843 948238059 972638872 239066897 968875823 377448612 528321982 568544661 754505743 656746311 706854316 603315578 969130528 52913241 198639479 639129085 778042319 461584694 502783071 453066175 710496766 290048615 723050965 740885170 816815312 588326041 720260914 966052837 967741857 943104232 949224749 782573022 814896257 594368898 764096620 178246178 529167164 759495419 858548683 342341931 811008423 230143819 263914436 41544958 654467454 905756164 917315396 589518010 966336926 923899411 976599793 302890316 563212219 878685541 951138915 947178764 948313793 666013770 756368471 979586785 986826802 116493492 859084329 455057897 805617949 787098518 863895777 268456506 716437896 906623451 936680987 29714057 204901017 189554676 729090746 712893097 752306267 868762863 930818238 780885174 991547099 62597782 685825112 511334952 555299001 784703476 919089742 129744729 141459303 426665864 673743872 16050195 882799960 248127424 742812742 518150157 930387234 864148316 970292839 128932631 640943559 459441095 545606430 84007593 742433468 799263252 916493241 433265910 649490080 229903976 868509397 693467526 795498312 928387198 984287859 249835176 311267009 188782101 635507171 741452888 812304117 130321858 681482345 591159570 739830811 503461366 883471082 883563672 896014661 214036778 981547548 847026282 978591645 97558458 777702661 182822457 502063808 951836802 952284229 352166090 599772628 43996791 852820509 390543150 680294907 90689030 746024766 907935807 980891882 636610437 738147775 246580721 588796727 574951156 823118301 118325855 973090996 201498495 915248029 988722377 993776922 326638545 676858749 332429829 363034359 794093809 951208229 502162762 772170223 434495201 541505397 530808878 873611492 887945572 977966841 865475194 882019084 438274751 970359068 585000102 807920070 66134329 893844369 221154186 344419371 922775101 996056419 786389981 873542413 751950500 784906308 611575675 991273784 186785394 527699487 603245104 846433460 248388947 898391929 691702061 944737245 45229940 498353404 146415247 415029908 365485163 788670107 985766168 999239843 323752560 779034374 320368824 736587777 506960317 622476940 632027160 850775840 7525599 588638795 542843102 772196925 483518563 522951704 413449123 756687005 998841981 999556497 39865721 106274095 431610407 549319069 847157213 887427004 211847830 391743329 503277010 641436833 26577898 478359882 276741445 810451966 372054165 657037112 992541377 997224370 726164069 870055365 166616719 608812375 685678465 693139018 95588950 317612812 891943510 960605365 693198731 768993769 984903651 995708934 544640334 825962031 896247391 934006148 667997172 770731899 652397294 948336629 463110442 478280126 3968895 439120178 168234455 806440481 122925122 905274668 972950807 978792794 434406661 456201289 637284062 771585916 794820668 922972721 814708623 837129629 854398709 946492159 493302091 589908462 53964860 249066727 580659962 581363955 584737473 792310016 210746536 849378271 35940721 783467459 909016337 917513875 634548536 834316327 655157215 698498829 462725479 777270452 128550941 383552969 702801683 912848341 562484856 694458457 233882480 897733928 64201742 959738950 742870137 887785369 159360369 670854527 540610325 791815681 624966883 953990620 489704629 897617559 483969385 833162696 935148310 961996332 15527112 331105701 204801979 651400042 703076001 943353327 59784115 380454362 337827031 672806467 66625296 117101336 260227967 935875611 522727986 924275071 921592336 965316573 627715568 819081438 641715928 978955711 460123151 690571544 569002105 965982403 601856697 779564135 248408963 331002048 926847104 962797652 754555291 780106825 803646161 879673558 925414896 958145480 576808216 761344519 99668685 808340144 619012344 836389396 413094927 822669085 462149945 878386991 279457205 752065802 403408019 460161210 499684921 588412772 48889893 848343526 816890142 942762749 141315412 268887336 585645034 685829679 368518327 701173263 616376999 800753022 167190504 580126546 571349834 703745488 369419598 746045150 577296951 855819572 894138537 941494244 459419578 934703718 324770665 803130166 463452123 652856656 393054651 677758081 72202228 927766480 259968359 445436069 585910547 592089618 122467882 842714904 841179739 852360591 546818778 912012665 458253503 738460859 280672035 876587891 172484373 789642266 624773689 861760169 862901332 993569769 524325521 678824482 323326179 759669506 65092978 708724037 632230078 873508301 660668840 949434414 607529324 783458283 533445070 706204684 458256424 610329508 826849337 990517785 308466987 916312458 475991196 644624861 69334733 304934094 534261136 929619962 796273546 976920925 176578274 526765611 378220889 440524886 713183046 992457890 877353408 955950490 288382900 965690902 333959272 892653523 182997911 642200083 123160096 594319503 930922034 938098585 764690302 777499481 555443327 870224488 868358125 936708080 825447431 839834057 387568063 398161866 946556690 965876641 54858604 349596033 391772841 413484250 628885844 738861919 285103422 544849335 949421726 991803163 236921132 509378759 414586051 640002923 98041758 969450563 115763147 391003351 248217383 851169733 327113019 347943419 282755412 856882060 739932268 886412977 7377661 325477337 199303479 898094270 811279122 829136121 79538768 435611231 758106403 878556006 270168760 332018711 7815407 510025679 143428483 788563750 955931927 976708276 996850790 998615926 689147982 883807469 697010688 768720709 905874517 912985774 476434997 985068408 160553733 432011935 296966496 369592199 806619622 912969674 924506522 987121954 585178458 930179182 243666044 786036246 628725502 956675866 864752952 885553037 150401007 213824376 89411429 892427920 274505765 377460951 66278901 323795111 678117608 883614568 102710411 363396432 48404809 885982965 38994575 578076069 400166531 761871829 834298499 956759255 598176412 756026187 635017009 802726378 276757780 463257488 600985961 691451668 440216288 696571182 718689188 928485982 952302429 997575051 719842985 741416165 872042058 959519738 542021952 849349664 684588582 802191909 674343489 933498454 970916845 980789235 210496909 357037294 716782218 924763358 278115807 354837161 480352078 861853873 397552240 975943376 380056956 383951560 814537592 899712165 185428723 589190707 278366643 458957631 558723872 763662948 135125018 637115009 90026970 388267596 944260826 948689309 747980679 882320748 881515542 885715389 235049864 778319930 311760045 327811900 598058831 980015345 812602640 903923630 460128815 739352066 18180251 104634022 50299292 728867986 869757160 908959026 305941617 988753027 504761984 671738694 140978321 802062737 595205750 595668556 600950006 767704985 85868587 993006731 982534790 993528096 242339769 458852469 862849731 888875269 146535021 753062397 992639317 993598517 173535255 980653147 900278196 992250934 610902391 971390845 83384609 903129712 876836647 914489170 437214082 879146237 145905752 205641861 164273675 271693434 75289988 947064916 415133429 712024276 892098642 990359476 895834080 963841229 990871422 992091851 869828586 987672653 209443540 687400624 637036357 818340651 890565629 981223391 102255831 887967049 703809461 829556939 911404668 928846544 568816231 630613014 508254743 510425483 860446905 914786504 956055047 956866194 756757331 801028485 554743454 903816123 354795383 706173420 507247241 833761608 743876545 832139639 5948502 834412096 35963895 583013377 49812577 351180346 139874407 239828041 568152174 736649316 438603662 966918930 444055505 770246439 807086192 862597740 435410570 675509148 312717338 773058617 718909022 851070007 724238832 935413416 337078766 767135469 172303329 248437119 873691267 902570536 112503231 666935108 956787818 995984679 833521051 949480551 342336129 594859868 390909713 563464431 793480523 840913072 769281484 881204049 345646554 708495634 536960882 981269758 804926365 947732722 50460573 272504872 731257767 872809930 457841638 514080057 739269004 898140279 852266032 939434789 252270364 426633918 474388371 744490793 237711568 594623037 127543370 254794251 529054629 581530543 602192711 662187078 417077387 711203890 371334693 735694251 368424760 369354847 590670191 682826997 221851432 368993093 397719942 423919372 27418119 535833914 582630199 704185405 147941233 941982367 94897020 418545513 901802785 973558487 700870359 887767089 980607014 998081070 251107340 397479773 301352123 577942618 878585881 993237094 859473758 951178364 531892587 779225552 123308904 997029012 115927109 669600812 965632888 989387335 157784730 310816856 488784347 993186024 413028978 921364499 902338452 995355332 966932660 976521864 59431788 571321606 280655970 712897191 796961109 992461941 921305533 951085766 515644597 645703789 56116425 991896125 320010770 600708462 324881188 725440264 731430097 834457924 925348255 946808513 349837436 481181762 4150008 857252706 93709382 338472389 573352627 622371109 697759452 701645010 485815005 890607319 704851987 787893100 510154732 936143366 714841711 959820968 165766340 188646646 877596424 905966744 999825348 999841709 447856886 545940593 928434202 959033398 131923792 378010624 866893541 878997516 404576412 977935488 368326924 874005303 528908006 645791384 660599740 856930079 151396623 912182769 30826797 675227897 703537852 761987965 615300129 685300998 385917671 604166077 843351181 976478059 536467991 577356370 451464617 984000795 863807927 988468178 783064295 834427572 288809677 549454491 130280685 518578282 379223665 880691556 365839751 435182468 952010467 996052788 301814090 562349689 823307168 989976861 670652237 914615917 825602712 826466808 938320303 941878733 690167890 792213936 571235266 674714152 689505318 823159281 142462001 393102711 688714508 806795746 413132417 463742214 275002385 485395313 412913528 948123839 353443208 615607180 818211350 924978417 742770347 998929069 400256004 610816200 618447222 755951467 680145411 851543230 281260413 481059823 329582489 508877876 934394822 988843489 840765347 869259593 470467936 501931738 167920380 813781879 233944106 518191754 353887733 612834889 253539946 623421218 168300694 328725899 822241173 932222686 498738697 857052784 523832812 847182499 451910045 646187465 400838975 766465949 23316603 957084401 524397928 986513639 328962721 367259859 505621216 863353096 834784366 916806725 737315258 909273557 14723414 399479340 154673802 172516153 37555973 765990454 30743757 686737959 389899208 411333160 499027492 943328386 285077016 617872854 842562876 922288419 599846345 784983045 786595771 912016747 584844559 660316971 157294593 590020015 799789487 890064407 128378872 513423970 614713314 752519875 277248862 371810564 233526076 636414056 559490521 594292482 332092026 345133100 719310594 876722884 755461012 961504858 237245865 557959353 387910324 814848263 168210629 636916137 80918559 565681580 682318429 930872085 275229966 468905498 865243018 986143461 420152699 960473486 315369808 666291880 965696939 982815554 508410798 871971195 987067724 997292537 559139685 645212579 891501999 999832854 186106061 391322358 211992132 841455235 376080344 869042073 31179544 250223928 14281925 936024264 671739773 963578243 705757808 955686113 494712981 631784263 361322123 775634499 136678907 254846949 200411812 622349070 565722845 957678252 67088050 115396065 839259047 913461958 64691916 179836476 508602150 697633733 850888352 927453881 917755552 981456115 292533400 646037288 144139422 641121853 790906895 831703754 536803548 560348729 624126665 954293225 510900315 972219168 21032654 407994152 541500686 829013972 775795245 792517153 35593836 145790690 530780701 859940116 506851621 519790384 13487607 434272129 372368602 657634830 100391459 114653727 321195338 471836827 736917063 764803816 406832595 946402875 395069574 462138172 801179099 987178370 832472277 862599282 456009911 889063994 17133074 97367747 951998180 979605935 788989552 994866013 141717377 337023575 751485026 833816203 397225592 407760716 54888619 765855236 122084261 831391299 491459597 897206640 335053418 594968481 842811260 944436801 223851334 712328453 571172174 664651057 87834674 146187945 813045631 963145314 522712863 568275595 671021953 907252257 853729711 870742985 520764639 868373654 637175825 829450339 93209731 906054416 269558499 448182654 553131895 745272749 505488750 693595941 659981805 969779519 85195827 914073741 880325674 988564514 547177624 909038750 683123149 968606596 682399906 727439550 699853740 987929200 504155011 982057089 375862914 638607890 920887867 931308860 391206777 430308073 422298339 631444874 22968369 818576018 464764552 868664819 307915143 968717854 108074109 661121231 841033726 876348263 325432043 923728854 491966961 719749405 162958358 980347549 887273148 913046796 797997965 920173930 107714477 217720642 241246753 303394884 754092434 942637507 568717335 849209670 823283808 971908225 194335086 856394230 279526525 936723062 375537864 540621530 888855530 935928238 529810094 871521662 1104219 438090109 432380015 899383675 664121400 715485680 358448238 704708815 888871600 911060033 249930992 681970008 944400040 979125465 965159644 997593160 769302911 861735100 674429390 848880981 72849091 660518739 985974002 986703902 986547757 998912043 908172864 921006304 314934316 596388351 234176138 421463735 106288098 402694593 137259084 422084979 766311405 992274865 901555481 968953528 811879387 928881097 46143556 362581712 122349882 831436303 684974467 786007629 652418271 901722401 884898071 961386649 416622352 571517812 895679958 901924726 930334100 958547821 111464552 799041013 546332346 834287158 438357547 969569804 537613537 562935715 235064216 297575991 737098201 871171217 430206784 810423059 328707446 413671045 316588111 790381357 320574121 356673023 707671625 999175356 749722731 932826534 165068736 384703601 748486278 846413153 992762565 993967749 227331567 953459578 262464532 301260208 353350760 627974250 950243832 975211153 212966984 756885478 375930481 425157676 802901511 846645773 160599355 730261593 695869442 937062671 824171433 921277699 90314487 741365161 964964479 972387835 615686953 738980610 484227602 882312890 536264706 597817833 956318121 990089798 501760615 726551701 661157435 760896668 650245258 819632796 433263065 761773171 999659097 999907774 888074860 965583520 106604725 395332669 897966380 950644735 380757336 417206862 767501492 773028596 878402234 991965063 384539891 529270405 981969049 990496733 794545267 839671898 920678546 953413291 919407783 933411109 347995828 685319528 376623222 555188929 784502471 930251897 244949713 514264525 321652112 971198293 279107781 856083101 945472391 946287152 63555245 706928727 886620793 965247512 514594150 544300530 604579932 806296844 531494896 928156460 792345011 880721224 809907250 942764153 744171091 795549273 154367200 446058552 181380419 410903437 128031907 996236475 54815616 910486164 26756186 582763355 481378326 509988544 327583887 619211492 374115197 912116050 392802749 481355383 631946623 799985732 173152136 582843797 386747928 854990342 565111732 630645920 136923778 239284944 28089035 70179586 561181211 647951549 50741358 54314528 539305633 822734290 283496961 595725013 564759824 752311641 840773470 989010996 728284918 890595947 971173493 985700619 456908460 720163647 277026896 530710841 836200316 841044086 735691557 857844360 33691183 840052122 224162892 721524082 277974897 769938500 548984441 912468147 4249433 86494994 418525432 447842890 754917813 806135659 141457668 676879887 705797913 759255845 760155236 930259479 213329710 367910813 815041113 936019122 420866295 884822045 110614952 463967439 534037384 613609613 80534422 821510054 161344273 943436662 513132972 550216204 309661723 363900051 547317594 957764069 111933569 616841455 651292657 910515818 880409653 897497982 146478232 330322170 545628906 645243241 77073690 857312857 316092008 372245544 36380075 490983247 793154300 795734158 591442209 784798619 472002011 657734088 332794999 961171637 21829373 689333185 768479457 795623266 524983490 822831464 791467798 855375544 652390671 833675742 659115571 743633731 264576588 648481889 288964982 294529603 952181195 990436919 96066383 740938509 970451888 990588934 317352808 384814394 803081853 897136161 975964080 997326708 631501666 648039337 356238601 672244536 802897952 996576522 337324459 890170186 189822148 924448659 786326750 950727082 65204406 356276579 619852931 754292698 299487290 626918306 863612421 943493661 255121794 313387874 702578372 721434374 661671512 999586210 568642705 893150000 637038792 851424873 607459743 882322404 458331053 890966039 638724171 840388967 655484418 737652686 590390826 805732421 172591466 878988358 9012931 762315596 562825207 601284202 428804758 948479199 488796826 673792687 888040323 968571546 485307183 782930638 245297092 933809731 70113134 825321115 805965792 824379759 56919457 856801983 744431336 875590885 493538516 565306883 834467119 869941887 609007601 806000670 290381073 721988339 727382913 914147370 18259567 272750711 817424614 986541727 597360919 618582673 45854137 521363858 112489590 697671982 80698502 597386430 674090838 934959571 595333778 738279677 858106449 891248977 838090333 877281634 263520049 402652550 296955094 909470500 231881113 676305898 970646548 972292163 517489067 663604752 346857649 664797587 378296929 519576191 470286207 635077847 22517191 332750756 73710727 691545812 506868055 627881764 2561339 958497566 194154978 881667395 827391979 934893542 827405007 957000384 731687326 917320037 458194455 917329514 667224978 675274213 196973400 790923739 262769501 850445083 515214013 754511869 295738251 406525578 942305347 949273066 600629373 856903991 75188492 466347976 393700041 856610023 910937373 996305174 464108882 942511489 642062055 740383457 288403176 440922605 467202904 861754912 242089760 703031160 372348163 819947494 213249916 934629767 683804677 985750575 881327060 981163607 228059878 265471502 392511071 878100896 250484883 296125355 590154466 672413740 519033517 664418360 518183516 927701924 800042827 998863422 835841953 861708129 121300084 758684233 123852390 856829650 360962287 559625284 270889070 926552569 567534830 819414001 279225049 404676149 379597178 716238181 237529016 716319241 134123069 242761284 721936009 945335904 711835317 803969788 685459646 915071530 53980498 546351875 98233529 448861896 173628223 488676123 287079861 520335352 633006198 918229959 654606132 838679366 234065609 611858848 293006961 597053917 706949312 876048015 201779377 705226002 208901678 259105131 994404643 995865160 491359047 758037889 611577470 665763980 339409392 822998169 497201792 803481214 41704051 960509013 855827399 955074601 124939396 968035766 377506204 459153640 874881091 883976447 94785656 815819798 980750786 991288689 915617749 952441945 852052198 979426214 358756507 812567029 24356207 954141176 784853594 812612237 836620727 885834501 702773452 879191631 439122858 809507381 577517977 822038737 326121028 623115443 109014141 435315546 744232538 856727050 665455117 885120290 408128226 552202918 454818503 541066678 937479250 955427513 707621131 716950402 89977330 375304375 336899270 693089018 358816617 861890235 894691668 909928231 996922984 997153938 901116873 997899334 925922030 982072373 522408975 964088048 381597619 991972765 349621666 898301264 329313062 808407188 144738211 292380764 781065828 986612870 136230223 738838838 890206926 925920167 388865259 755502076 82377066 738286567 397870812 604000718 217800158 271155432 979239807 987593958 299438133 820909741 19868029 333578998 678006079 816462403 382306921 546925565 124047016 597565062 112081199 862829533 783441113 837352681 18892172 282539988 30974073 139817383 606858652 853400742 411743341 837381863 210846757 364417438 320588104 877429192 564062165 703616286 783294010 935569277 537073315 601776837 40126060 117568010 202516029 559823625 95208464 595747604 337231638 533088436 63097570 996439809 117096865 667436133 825944439 908252323 977989930 988768241 829450787 996104219 789648239 812559341 830855623 843835391 811540049 817413589 921736487 987818865 222306758 912955299 570383790 570538557 196065426 938457179 749921626 883756101 565277447 944017656 274655456 351277901 846238365 894282577 742794873 870125484 216088750 927102770 343824143 911302752 224142869 643450543 149032279 243107733 120231646 241258115 359867707 749992306 673924500 955187708 767916064 827429466 250425957 549008830 375072117 487427110 726894923 772824412 765692355 887196633 307013995 430634256 481250526 615933120 14805032 97748575 966405307 995202928 220001384 710832427 32876860 769241838 805131869 835337917 296933825 504624547 206188954 209957083 768878133 819232369 842576557 966081426 926763710 976389922 77031592 664680153 390012914 661737569 966874663 999626759 657916395 990511523 286161732 573012416 902017438 941213203 331837794 802350327 854679451 857166250 250203524 543990490 703058038 859056283 684581432 781336175 674068640 946620114 178554774 691825199 526723967 887619800 454301921 779545791 323864806 423627085 764259415 876522568 226840309 809097602 904385203 923490060 9099619 936888454 25975400 926349723 673762209 892413405 675447715 865691940 953453065 973574300 882498472 963039708 337341007 471286802 605645142 913962932 728487214 942976990 421208083 568356953 202750214 871041740 216128556 879582342 375937038 729381770 790871411 953818075 219848784 750956607 806251892 962805308 506689687 548949073 632179513 804345214 37908749 983229148 315269733 982168675 467143096 705249622 187214156 558973270 179712218 358898975 19088377 613127409 695187445 975074046 828391849 944538335 801387707 994743154 344070339 533086201 143532342 998279423 738586002 952457980 944198187 998449956 875314561 935683053 9994906 327739732 146103377 854643080 345399306 844790192 480181506 515173257 667079117 686389779 573927042 936509401 90126080 134533770 433911175 667954952 534825012 562128669 249724658 321567934 648820294 834619857 960856048 971984621 913255385 967965190 350799606 637262183 40220972 934705090 593519964 766818154 72189744 714938366 278658782 849533353 583424919 772075962 296274258 363369500 909788854 999954149 735777461 948444174 504988091 777698394 374974611 836554656 802548937 982302459 143473546 309505549 512316736 912822204 509227562 646285141 192810330 927727756 949907505 985013519 407531176 470592387 228559789 878713613 802959660 999303539 70622637 671727674 244531889 926833923 877232883 909965327 395221580 711149174 529347747 653541924 642638724 713139576 967593233 988006547 840058531 947994943 523134355 531594719 57754224 245981422 629941952 732691796 685948851 731428347 376466400 555671189 543873331 658919660 758898618 948859107 401748407 919901585 811946960 856941116 203010341 537334774 511681666 785327452 168186870 237432031 704009257 899049533 970438767 988300727 686433522 828924952 530212565 868877375 669980791 749619230 790048814 807340576 136747398 835120910 78379328 854871943 133149710 433054404 785170187 816127330 455841585 789438570 426854606 668728766 993765118 999144213 752242920 963670587 562072326 680250807 542341649 860625126 78014468 234413106 540086292 602364185 798580139 830395508 497219119 565183627 809915273 932631156 464233344 562780601 210759565 731748487 400522951 878846800 775496785 883954400 701274410 913255872 992242540 997692245 722044348 842439596 877145275 881211037 640585532 977491179 990435790 997386365 280982969 539633294 822531161 835339928 73549997 322301091 426150260 650372488 288046218 320736252 64681086 80966195 469238791 827133684 313995373 988669756 787856172 982742304 438824904 631116690 64227316 871366315 453607901 874406661 615730872 659748267 132235363 567738969 277133355 301798376 802666938 827352425 976965598 996704373 676464051 911443165 88155341 659788250 253835463 396453014 442747347 697153093 66712965 680185777 716509626 855259372 546660710 714018270 318798216 594898758 49569235 817444095 953173441 980627606 716621732 747718348 92591510 996020348 256514225 640346113 757610270 909990769 393509020 510049997 73589444 331578771 123850048 948842522 998147436 998318712 961372698 964640709 207103821 786100160 55667959 307209104 137279232 368993359 870607068 892843807 12045902 295609826 790743738 997568675 388117650 603452634 519193784 877460601 283626179 759353234 736688672 930515943 457192816 894335677 34581777 996910204 797079268 810227161 274332220 517079746 535238913 625020846 178070607 543908758 306802438 601808046 476156598 895382088 963082736 967283537 597621268 655019994 679850718 957875136 744735197 853662772 7776002 57746349 610645384 679107647 808481995 868997638 286454428 775326558 85700260 229690123 981113867 994005844 116416936 182552911 922150925 955753036 577983921 778900782 125440515 162788891 694886703 829053657 257608103 904126246 107344294 632995821 909635492 920197959 122914112 624040194 969177250 976790841 148672044 647771671 591711183 893416839 867048491 871443229 744239791 905872116 48895241 657183127 656163037 778810599 968267151 980048221 226769150 235767988 488173312 700145097 535407148 876280930 557568116 984677140 771454867 797246242 840813993 905650754 483740522 946983544 35245410 486646548 294547814 594474170 746686117 796071491 33117180 238599788 185661310 687960353 923839870 944699707 368600216 754889260 278007351 495194461 946262326 957865246 456529487 934279784 280384785 729911851 485841144 706578420 420284452 867197964 41400102 191688788 190505700 684437094 780556057 842732324 412675535 831260541 880991877 957811494 105014228 648930943 150156391 735948738 987268039 996973742 66886320 624498798 832534726 999464456 777030784 878946532 81510143 908624049 853713277 891464473 748151513 908375148 667899783 964232902 816407000 871859210 555641692 756268428 261021371 268395602 164073905 871054070 444431459 976881852 434007750 633347486 811193099 907609188 461611493 731293352 469407862 923541624 954102475 959828626 312347867 343765886 865522534 947533781 642772797 876923871 441044535 599905605 400750084 647420475 895183601 913101165 820109245 836147601 567420378 678531008 270811256 744972841 833695891 966708607 266020242 268695233 551306964 961069013 960000275 970839170 467806063 628423755 216257301 930545530 330721148 343737343 10436025 742043257 412727158 623509383 761119528 827229216 276191300 838292681 251417392 339097346 78251682 212870880 81375581 944796424 775517948 779044795 387247675 964913060 37554648 802990587 775454978 916099168 268513557 518415395 358061444 634691626 788386679 905827326 218833422 970239654 791973735 876181845 744751981 770646052 82099998 440639938 547589077 605398000 271619028 914393292 35693976 102715739 938971628 939876495 873192197 880105776 622746803 949311033 61879273 339183534 218596612 770582347 561882630 952875788 836585838 991616591 750173314 851208293 57912508 588113173 373109470 807979315 410136482 946203990 415813357 891497298 849007999 901139734 792147549 839381420 359881312 656785823 553441777 555745182 186061438 238886325 251064938 591476222 120604844 330981873 26109432 767476142 166409 218397652 143332637 929438751 108470745 712198421 225958410 879463867 114630221 821150110 554674428 860291788 959034296 976933344 893476758 986637332 338025443 730854480 83489284 637961277 225467937 459875759 733075048 733936402 51396910 183546009 789441696 907017400 224825876 970645694 682526414 834909299 792383403 797153457 668857716 958668703 517712804 957093990 698141074 739483961 616791207 947919104 94009724 597817151 747617442 814078126 900691825 911942548 677355839 761269880 317382497 738543051 343528588 715648471 23248099 829787995 626484323 846546153 938522361 994544373 971075369 990577110 300206486 873599546 618891156 978518202 821965443 872991349 945354000 978895594 791203817 940609421 185680678 651774478 592012726 836813159 152485830 296401889 624058985 676705038 501448671 658633381 722439324 966916611 826859831 974342713 905276968 955717533 103831261 993057025 810982713 914033034 895994522 993278889 274185817 767791918 766331277 837927271 28378990 817588130 339797556 424358042 11091318 577197021 587060569 939393844 435648420 666412727 114264973 522210715 988450902 998118491 891624485 957355571 267204389 874488625 512400444 759509583 923687705 990286403 746955153 984762340 46428214 685248574 577472039 903133760 617240086 992121726 331379651 845059948 660467117 777400870 258941619 461727782 719036276 973734257 180744942 556921166 450249028 767442377 153525314 765314452 390692072 810536636 537915996 571826001 801571884 916718856 426788941 703014938 153531591 635000423 856624467 968642892 433160498 904493447 539670240 719571087 857069134 884543106 981445142 984016967 201801338 877726208 810329295 955687094 369778779 970073197 275723438 521539838 35626543 309491795 19864330 664921051 381929109 526864761 631426298 960044809 568896465 674633846 402583233 865497782 482859007 489101766 915423080 972922123 122915517 372635382 32405322 460717243 139629331 924117368 327459084 444074096 843410606 902909494 895755581 980307940 997184820 999176055 953590808 984560176 524625454 530726065 467143530 500598419 894654045 989189570 993831254 996440159 917096033 950318863 351532047 630807493 616581087 652248655 447878892 502097015 326730128 591810904 423989636 885551692 324079285 682431160 918202431 996598655 640217224 935511236 138424818 556052404 944833084 959535725 1201857 576879977 260724639 401082796 227373615 393681763 577415361 660017775 556469830 715211064 290571204 408382121 308768293 515262717 727212888 913398255 854225450 924995547 349143077 628258308 203689833 764479089 788435422 832121175 852787584 967701406 318762501 759787076 670371385 962957443 779657073 947895190 190236553 671414731 144032136 639586267 806085263 885809996 642857173 754885937 456392759 502010680 504748234 590974192 192467504 800306953 976355542 981287291 108295288 887099976 667511668 873288505 338026429 575297992 840331960 979236186 520860575 692155713 807682653 957452892 800955875 960464449 747625524 931643374 57145944 276102148 726986701 844388384 671343065 941433339 344387332 916350724 354840090 882471983 562735152 736620083 632131293 749436483 351090969 419024359 899144943 915292286 358564496 609127756 266767037 866122669 205988471 687019556 871357904 915373061 682795659 779275081 166835630 720931537 322489613 639934227 178875707 659855251 955324305 996317576 188264102 262700490 109770950 250958156 226185471 508328207 161961024 541387295 767711538 898451875 449759386 625965776 931025556 990468853 373926127 512529320 65907221 219175387 151437189 218173928 257774051 411022111 424217368 743348854 413866165 613544180 414177053 535272854 374344626 475524723 883338946 991691138 805799553 889368096 234038582 674650725 237958478 309735766 880015307 885495176 437073980 940210084 156783306 832122593 54130426 632931779 417963173 992258790 707602932 707976717 396486404 508470074 525983037 772464500 166623061 370560469 671511023 760827301 323535288 883196873 177825169 214863315 508239134 761164711 107599195 500180135 421541762 939273032 400682890 819211669 638800965 938065709 403734443 890979943 433191088 844954021 485579095 539449009 365183315 462347681 757039836 976396191 393042853 935248043 193815283 351321619 659397088 968047064 767092770 790968936 591556999 723215432 83512907 488018706 716242557 753753469 110925663 821248935 524935308 770080282 529618553 649331618 102046845 195499952 19436850 541639935 281027794 893453114 953722877 972274874 950873231 959262969 530424749 889474246 212952066 916911928 258864188 440669408 256349744 393948374 50594937 640235017 81921453 659111744 480406822 544923724 96566731 129256405 296095727 342072515 194023275 723572775 467225887 649926482 125173367 126046461 898284913 981547325 532913584 565495913 9737201 289657930 590225705 833230190 548301230 811186849 1624364 194801252 909570809 925958786 351987351 439957035 95268654 647618864 690821551 959454275 861185058 919565865 413959303 948686653 645627205 665555791 993909824 994536690 187349927 308445551 962228252 985892133 661624415 960724096 741895938 942608760 429284341 651743032 886655554 914933064 515739267 643103838 883626445 997530892 121898478 928518537 124959406 459516874 10763948 35228553 320783670 865313647 735242790 892343987 920466495 978900296 773868300 880196734 446654669 932303627 65522855 761996957 49668180 385063823 597271188 931787321 463995409 786111417 512381057 545825435 445509558 479550420 262812191 334652450 183051973 312494795 793199771 971304678 402969996 500663238 352118377 446223545 554825341 834109321 118766153 415418285 742395111 936278175 752913273 756076447 629074073 851192407 356854227 456113256 533674875 864460585 418631776 540738583 530645129 966383243 59801094 501391927 761932690 810880664 74938234 548291092 677287399 927008985 310138172 871962959 757690540 841015044 138784962 893841964 486120586 558301093 277935034 658539152 791835301 926055801 456371097 532641386 460347896 568744622 119728321 705340690 379732602 680958516 854811436 886094908 102438547 344631779 106393290 818431174 407476530 937305577 5940605 57768055 358127336 541177593 381962235 881614871 948624462 986714196 772138290 814376916 25622243 992654439 706522185 933108861 494016421 696191711 268209661 623000813 246735725 452250553 494976627 795261753 200452527 908962278 754677370 811736736 632213621 905379670 548977032 679147709 215657573 330763657 381540876 933142282 129654335 850764949 232377616 551206059 203915797 459053232 730859058 832179284 777359252 923660184 941945458 949509792 651173460 793205728 161529510 691402753 105956181 254180968 243275741 784201173 501699296 974714700 195897591 773588144 863935004 905875512 27957157 718374961 866774237 950870266 213806052 832015227 551788384 703866387 424528003 881090386 165695028 630640800 255998131 959046937 574534506 786534008 541378257 749347259 412154561 444593628 704315713 812119264 690042267 850153186 266177285 536234829 123705332 661117698 982798465 987076921 688529294 894282955 379559858 963352084 401193181 828266603 39638361 460637413 240875427 547612632 601972614 792385805 375820005 560500512 245258059 912756131 741869383 881606444 642853785 892337680 891872136 935464631 137984353 356678315 409989680 887216183 852829465 953815324 686934205 752484290 227600553 594003461 706068807 854235037 966231486 994313147 450567184 631847048 764063398 815577691 87319346 970615550 326243739 556081624 94118667 411110410 977523359 999388994 2207252 681780716 156215234 276975812 48534834 224740271 891966939 910425564 121337168 476278128 436051774 449450498 188358068 982092334 646294046 994733020 283196197 776159637 784561303 807953010 56030682 150243702 347875440 589629611 883991657 918252673 197455655 804429904 979194264 994866314 686918209 813547481 871793859 900617567 504299244 996727016 601522177 860167009 798521669 969670091 789999777 869640004 461124451 800447409 367847680 787719099 916235533 958931707 78213670 492645955 452320917 963938554 33182721 727045658 805171077 949250638 446723365 979677609 33304551 558992572 778422203 808056224 60352626 611000883 369833564 458654053 337729471 619179715 484223510 607087338 124501484 829876586 873978860 951530578 352755509 702743712 751549245 869580297 687628554 953721823 989236875 998984343 484837002 766362548 616169742 961508607 224767323 973345238 531959338 611123565 10326614 784327401 554797257 717668352 544317984 732515999 818283138 870375931 680048833 894546662 96581082 352058305 153265519 942528551 942812020 973652117 467071073 948948715 770278770 770868624 478701944 777217839 792997813 948332692 565194660 820185700 351747029 959434809 365677593 863743159 515247415 785956829 101615963 778604681 838506796 886540293 216454535 359898552 922293648 938796512 518695427 716000015 218123309 482838962 87916772 979149882 896742306 897702076 488020573 972913222 337885086 924285972 562681399 710385804 720634693 939042880 962907175 983248155 699639633 702463284 404959129 531534701 973589643 986142726 888778829 974394823 885552312 930072505 481438984 701010879 859061095 946324426 466885974 764293989 31208256 226627215 715212619 986092500 254955260 420107298 268970581 271018685 871543614 900574917 844668798 999880796 949084728 971398527 356199555 932651160 722355029 787353208 342959053 917482354 442825469 473994300 762031315 810024332 629143348 725597482 553894659 723394914 138033310 247362933 306538924 425072207 937817954 940559359 183638566 257926606 925315569 941179445 329144810 821643210 501483131 910923533 327418581 499505960 175354335 910715167 621531069 840280555 738298327 849334305 182963808 537693202 117402686 330932139 606080077 889371281 940104659 977351819 973525002 984190985 385277377 914310685 903827601 999119254 612483825 735713181 789310190 926390084 870372213 937776965 824666858 917976862 858102172 928357754 970712331 988222544 605601508 747685069 246890661 720840930 24497918 440603877 126430673 453431117 733882904 825080752 16396234 269173317 920543044 932124298 651102849 983768365 812800543 820590563 490659927 557436579 39119403 180152959 624187772 635637617 136374092 565264908 550783681 942704049 516802993 727327788 577212633 966684668 169935702 757660926 906770604 987701249 656778499 842601752 877787526 927129507 427983892 483454641 901951796 939439951 413642456 897322154 247529085 744081840 815324004 916678892 361379047 762580243 388601035 666671489 855229423 891128779 434259076 516258203 893508632 916856043 867633002 893812563 377197019 523170807 933615423 937244309 457447712 556798435 948877254 960583760 565997489 623489849 636230255 792239906 733733708 886594399 8385789 339428631 962972680 990104962 450390623 523606078 551596286 721832591 24193805 534089247 102478678 353601657 886214955 908105732 366936772 948724084 954487004 960499489 142392544 219245479 766944575 996817034 319467915 936686175 60209671 542045804 767194849 804862586 634164872 987803425 30393096 147591872 12460571 438114000 891062377 919084278 761516533 848746039 804672281 830728378 333571365 386145415 489592565 898100445 56005283 425801096 726694828 954979668 759312469 883811639 800367308 803482782 624926249 746573834 718464856 908844522 449790493 974082463 800817175 939794632 84858242 816809483 401929360 821331925 99402850 432412746 633698462 915517376 67089827 719477696 725482996 884556377 936712921 945674707 169612954 701951813 35992090 530054001 116456231 209040802 852177059 965521630 967188390 992056265 137042975 384467175 816694876 952269370 423588506 789934219 80271965 147440979 864172285 916262929 960408539 983214742 346411072 360523743 482340799 993502761 176430927 623868801 67089329 932201292 627704572 788687647 464720523 608709917 916974439 940947056 84944601 158590505 759721576 970640742 930958729 939303379 285463850 390533817 244549018 579179574 54344852 897539285 996221198 998443822 819171247 934861982 899255529 982110142 28142579 262047796 184206534 194387857 264737095 529401019 591611117 649204802 243914764 329792187 146144213 780517481 106103185 756652607 456412537 625904870 22769785 264268804 734025670 921455309 471021140 560390955 738893636 857607729 924893200 957864655 553480981 808205495 906168312 936783238 977962925 997895318 51409086 611893002 397548505 753643102 519200707 882335863 264148990 833663771 777245073 884425568 321948189 434889731 170945047 935771816 489653091 647963082 663168736 963320258 781733081 837572198 99650666 301012916 62204633 644559398 140058659 794740139 147184157 770719958 976879780 989371396 297087235 764511240 806401449 850307733 123861312 473295971 63791435 947607481 759329640 926086027 638090494 888308975 85076571 151873296 543558861 663434737 545238669 648492330 160337337 416715729 548853174 702519353 151229335 947955929 246976427 328506169 250278937 455139171 244141112 993993823 125018697 202268657 69659169 755503300 42147067 745859575 391786184 950589225 84046209 464109375 288239767 844379900 880673363 893130555 852411086 879253666 268437291 769899231 360693626 634782707 975757743 979935135 315395060 573340031 758034294 978187224 564652801 597550237 741975393 806298343 198581925 604702626 987425859 988276497 229549374 483939340 272746164 365639649 699757903 936675126 565930374 711594483 489151070 992354808 348282489 764751195 864516423 984742233 924626641 950287115 594721387 658080915 62708861 777938945 938205002 961540347 343067225 747182973 935168699 999307772 908719375 959260065 584024248 701971339 75331175 748154700 854188839 925877949 227383600 352855058 41354219 101594144 726065133 962346101 205097858 549313078 156678919 960661158 430535197 561831227 904251429 922967477 461298090 467111752 346689230 887279641 38157238 648309753 844550041 911628244 634887577 831203694 730338864 876895901 1419579 452514853 60176060 260536299 828202351 974022779 280508589 456479675 455596630 696628494 119412734 167323692 129685123 629348766 214571823 984683095 134916300 974551750 403528215 719103889 387616219 626161105 814129799 994845905 417316111 801293124 100375621 166854235 595288955 898191413 445721486 694170304 859067111 868411658 300965327 696037909 720171378 946261570 701873344 938301072 33786159 515808033 237419751 811660996 852787098 978556772 484354256 756224541 693739310 970039801 649853580 764289230 990930434 994353068 791665258 871252890 587192774 939022364 55027564 893261181 93898588 103822785 821708047 878846641 755505752 940884567 798298570 836942280 285564614 989584778 263757482 561467276 545417129 637642550 468263681 569687998 469919996 783091807 633297877 949703906 626704976 795166588 130760421 842214561 283593151 338190182 591770125 916156293 813571792 847918622 766798423 814093349 158998889 236628303 468532166 908772586 287193437 578425289 16342989 515716384 245930918 392486587 480318938 834802592 15544712 70707872 403840563 544969493 867288812 899393632 85445787 249764414 427919227 670993518 584763873 840261894 700996292 734187763 448290827 483068759 184375386 412193257 142496838 864904447 503577720 696425106 549913256 740178890 198615323 531277719 593051695 957621006 637817189 796109331 732957 723905824 841638143 981410844 646464298 747496120 924554826 934196909 752159712 794927578 774695143 966817186 640589588 904365285 743200993 952926824 172880801 206701541 881953684 921139516 901355314 918999054 296709149 832386622 85291363 425196421 949160114 981480006 542953848 606015962 713340790 967536494 210201547 346045950 643106995 677002868 922335644 994200392 815595353 879916791 901370469 938530933 141102691 181460281 135253907 704813365 601941893 718708143 781483321 896236703 878642628 956040445 253582924 621276726 5460671 305308982 242900536 455939901 153696302 446212686 416784453 868742575 103199639 871429879 53085370 262971938 734605270 903081806 230517023 865671718 647896208 961514376 343421760 815273800 854760351 960302857 743214455 790247042 426723857 978109741 911388 294197079 639940290 934730594 521240945 643292506 231075509 337298121 44507370 47584119 183009885 760067102 221821000 609118416 729530674 844228351 929344342 977416747 861400520 909400477 517858117 986260538 895129764 944558282 426595293 617961106 39953234 614449045 3233013 360007014 143230531 721768817 338381836 794633631 183345941 942687247 221892917 476686381 352517488 604918694 592122533 727778552 447603426 581482025 450244028 948709252 446975541 908075368 356248944 952267280 381813542 566802644 753431819 815346097 507302616 519637422 188904433 683794973 646414009 811512321 702286013 792400142 807675859 979058668 589661440 677447924 455760327 959557256 841361362 842235691 578509121 897969352 66366215 131418629 114468461 227864179 543252100 823617766 861660886 880768577 499763512 853802078 678714252 695009005 8009955 344430269 165406455 809687702 57557351 362133755 753052609 882630337 268998166 740595474 857519064 936485277 589370129 856436760 964148569 969328101 705074260 976506799 495453225 577216384 79710739 677633397 126681893 603750583 370232303 518841126 221781126 336859363 258353874 316252582 978453631 999485850 886302071 894474267 627506077 977067565 401864327 977687943 798815901 941715922 601592015 655689929 398166618 552912707 504736347 981750804 503195044 758354043 901866816 950063934 674510428 974434677 189426721 292925765 435621363 654344913 368873366 777965797 859958739 915239282 819775426 848872679 468106300 993055452 114884587 694410866 829728206 982776617 491819416 627871871 436228333 664769606 658666743 684890429 815555082 859533502 222824486 238461210 241988044 693011341 14480645 922022262 663863897 923329137 63907181 72882734 893337319 937376148 20199421 517513493 587605747 965262163 838237459 964345045 38596771 196889883 557992621 735248221 731288244 917921173 687367482 765730811 991229622 997922520 70020598 474079897 117245891 984671094 551537285 923377212 272265838 471030401 285478020 635171835 913790605 957684133 585957207 818625181 66558900 976365351 890890368 963617918 156726228 349617192 881058535 943417092 755382573 837735664 165695929 237103728 524686541 785480474 978324158 994532548 60585053 800524763 925739682 976117337 495116116 534060671 296955278 479391297 733922289 922897315 858613070 943139606 646336165 828729695 41079698 194072374 12172328 908278177 229269138 650811592 762403454 814639757 715391606 749338913 175555230 724983757 601320744 921031311 34527589 550954296 31789551 418636555 707980451 977880777 728146193 812963189 218786209 268069798 846133865 917848706 40431682 79916874 887147211 966917015 565686918 771556135 324266706 853701435 115622532 247412994 490721822 549314531 787535544 974294996 651678989 712504978 233459934 381153488 808743677 831508682 54790346 873477819 489988998 841346749 660464932 877817450 277238096 637829177 801872 863873040 953030280 979573752 963568200 985452599 819139083 900903429 561454932 697935015 244012378 670795029 187797855 717865820 311507854 492003867 597610728 851863980 980962735 991186143 433000709 714949435 819639206 933357611 233112903 753417583 308061477 397764330 810824251 841475411 916748256 918921848 892575177 989376258 452972814 866649590 430342377 852250225 632002174 745927794 261124442 563670724 911222687 936555387 313049921 764425184 270394768 395287156 334504443 741329216 118210044 264233999 241152336 416032560 913014112 932429095 778300296 835260738 207168024 600682399 529675143 698373911 34710698 799297314 471196603 588115674 249891523 449186021 255003108 964097710 170788605 620570832 43457199 496711532 76718247 232385668 708581654 837714304 296321290 977006321 289944014 345478090 151083573 647798895 197827995 571885024 349316364 865823038 251197195 302831101 934844348 944222278 170770471 517009488 76646650 704540109 116314609 468186337 483884120 786856221 209979188 493584570 879986757 992268967 642700185 730787353 280997482 914412602 109926343 434542715 607252442 772217121 967171980 987912371 657493455 986823963 543830203 958035851 12818711 838031979 349386198 969932033 695141668 699565071 764279969 982334762 456386090 509740786 872130175 944033478 676533586 676610082 475927690 829147120 667347191 962026409 423446524 760088536 620974469 910304308 740881348 789994527 489937135 756319990 532504 672764385 114076004 936927862 19768412 110475619 15508820 200248027 574862159 899021480 7187742 764466470 500251905 813567293 602819106 982668957 928704919 941428822 786695089 850022005 639957115 749101073 890398936 960200049 874708521 887353571 233419734 240636136 871407933 914724372 107039495 394193118 255842719 814369942 915036913 999960429 213753040 919030643 3366822 25867559 397619625 675938420 290762290 950290909 894955187 992494230 620893909 711971412 213515112 270167789 337810331 552282280 816446754 890963926 969855700 990762043 779011373 781360433 634817062 921284046 423434447 673659194 316626236 953582486 430788776 546183108 891408604 923903663 163462677 699918009 142507209 531156895 17124191 797229963 990133098 998146303 769979458 920717569 758974341 851582692 298008741 310862171 641645357 785841107 668319271 809983954 152703805 320375416 226093081 680586828 436502537 738274492 213443936 341702612 251803727 411131637 249735433 268328711 855385352 935199891 77005660 736909748 502147659 956138201 593212834 642666440 442369 904633665 628875015 814717798 592133544 770111922 222548832 456603708 714953003 831377348 738641558 955356012 646543363 925351734 13483373 324994263 723910562 778548763 308932526 669258011 889029609 952870202 268982261 532944066 99271200 914977459 692857850 870391441 682044642 824358816 362131916 725364402 512641321 873624906 684063353 928818804 537547320 909255006 726499795 810458358 11890971 855676614 119968687 936606735 206697781 849588638 883952019 893597938 867213186 958809583 81007148 331858948 982009514 995874061 211545946 415570105 656814517 827897253 868579843 874854838 943174131 950180026 369919751 880934328 262423921 341054942 526889478 946730108 881960189 989716572 134161385 663447129 499592325 537830938 164628818 847658334 782514269 829516241 70813045 799510041 870185055 992621278 568328301 920288423 45835129 831513531 243646353 816705427 598532686 985806731 146788016 686016049 751911634 925891762 189304029 514122269 738930805 935771083 805994651 882100475 585001844 685081157 234819252 605525098 990184561 994521497 927563007 988714325 898643140 975604742 932485191 984470599 489209922 941753996 801430829 889562897 118354199 902205084 819690499 887550732 349165942 694307129 588836745 589588580 489263274 966826849 411564806 960306398 295266741 413903640 74872534 664173683 151292788 176987290 52106559 292045601 84786286 147102974 613916333 621691823 904725400 949805178 115057314 285434667 734176021 769921039 621418792 904082704 733680590 745175330 913379938 918153825 223062914 960827003 366080291 897504617 948481494 988685576 401212186 888915293 574936279 924425319 559582931 733357756 80500372 508392046 154670881 783792805 514229641 791430750 697953325 852575559 890843502 922525742 745240434 933280865 201879966 277775945 124020595 650039253 978854823 990231191 818430498 932003806 660298205 988028082 649816831 942656344 138882496 140481813 520967184 596438022 724752719 872472757 17292939 594808974 590331364 924719687 126196423 936228691 354658929 891029328 809675591 850430263 659695171 720212461 612307702 788581345 111273428 405547490 783594861 801789589 890257239 921287698 11428622 308925730 484209591 738433963 473003924 913950191 648613510 948708257 28585899 639584123 496734740 908797299 797595051 924866649 854377868 973178938 380090308 578641951 854874748 885062671 870514808 903402221 603866689 905400250 883505534 920893937 441298598 529263492 577852127 948463234 257044867 694896722 805877337 829789119 572561888 711399286 8284811 632851178 205960134 825923446 715540735 955664175 726774116 926761284 962893161 981054569 924528889 943737746 211012939 470003205 252120976 577086346 181035391 822632326 258283604 683060707 718839351 999891128 191959854 430998421 805457625 899813678 549268771 651671336 474594993 690130101 242206543 458508512 478669130 846365947 18248577 299371624 382609882 505604044 984399004 987505610 454696425 693913499 196850444 544212687 645521097 662427636 327053177 527845848 622687278 737912364 503003922 758419133 901929560 984289065 427477450 601421134 635282030 720035849 567320865 994282704 488604361 797997047 820522337 861179733 459586519 590825763 326473319 552808950 339723904 829994548 195769723 697807995 348075577 870034195 840722516 948113225 985501630 986423199 344969436 986566802 633024599 779996705 57057140 113378852 512075516 762351555 163980243 850818317 933772725 959819609 540789409 784615394 419388706 595089582 814691109 950010002 61588952 317190807 826248351 901938751 845035679 848978400 577269604 906963575 185030266 810142914 978695284 998822220 453182879 617762670 904562553 908524922 572504333 688146619 783144440 930839969 81295419 410725396 827874350 886668873 815636242 847197699 957782995 979542371 356525139 664442930 659653700 735551664 717630629 992277920 166666758 199232261 264973788 366682407 308164792 838255280 327930899 443642486 975530508 982609390 138229705 935385722 553756470 656317845 331327815 848228521 688845447 746040659 448226135 452603674 594256038 898176113 833223525 835358321 87421172 984747510 14683630 642998858 772557988 800230454 32503499 655501992 723148294 927112089 434365987 608075621 882551454 911967933 261125016 792679538 50161329 929023649 852644521 853585334 838658532 984047486 806049775 868274203 491410049 900380667 231580570 261225899 471383912 977884353 72485573 741661414 288902665 484926425 265672256 951376001 824054470 828796987 74982649 169227278 527028615 885539460 930634473 947765603 933645551 955965935 148870883 836587220 304295845 457191205 320225154 365580967 245529556 260814299 141036148 717573609 107523341 446943655 492823403 721646379 719179576 835012041 570371175 816863476 961758587 982164834 996597403 996826390 605313102 693467884 592298409 982964774 419247154 874691268 650633794 988475457 489645384 933144087 703516655 906317711 449177651 801598579 70598472 594831162 756029054 909947544 727792940 994487772 483597239 809695651 864982389 907017779 280889376 812775417 970171670 983435044 168904424 869120155 206893898 567516508 80148257 345671407 242238974 900818816 772405443 819384747 201242525 237609835 268528997 869950949 807089285 883251781 669075885 978569710 514765054 841236019 414178274 908420383 461995428 541446996 252712213 935571310 946957510 995269655 142847422 517127458 856258218 941086772 289731549 932613220 430938034 935245287 744290 192094724 304384677 514266503 401112410 991855866 986057464 991233150 99034550 634988959 61521437 970274363 512766357 528462796 762956620 972285705 735144141 890204828 330128795 348385880 351870055 973576509 511933072 716717794 641214304 830118575 262379723 542554282 165435833 701336360 915036364 940434910 101110520 240746125 192970169 709611235 865575422 895663564 577804259 821346154 577331222 975311326 440589051 621751948 334102550 644436336 249451125 959712288 597918059 751883970 115258500 154146047 20268172 485240073 84978622 119645529 392882029 785845869 329038757 421408237 993829429 997329900 72151325 698821738 467968748 771018098 543618510 733605107 599407040 836271006 558084494 755125596 819095749 910101146 311780806 915127285 40973498 150075105 486525338 540727908 857411565 907328611 747443454 903650359 892466476 901258260 318980518 907153058 494383473 781236612 290926082 961649360 575220580 654345360 114638890 599288027 946889040 998965158 602127775 835536262 274741026 277136575 418149600 461098923 51880002 889729574 910659777 973060133 425185733 858079507 414827847 948929122 513551137 532666466 5570462 509170035 425562756 673712090 346399056 379499461 386276654 615423383 388141367 398743445 358782654 907027441 67266180 596732944 108580951 729048108 923917858 996516318 451831808 970212304 433806608 477892770 414117703 834539029 495673992 611545943 280098474 958248030 669501938 950000813 683065214 955107123 150555238 370090160 311811975 894268982 728690452 906816520 529672729 665338926 144847590 717457763 813719187 854708316 406249616 423434876 715216157 920691779 956494618 990530117 784146589 807526710 653089542 892043967 587694146 906391681 40283542 315831015 954078457 975986553 980961185 986983381 742361535 959346263 192288911 348648472 287292704 690145552 58523545 363066310 115362350 615310523 428144516 498226422 245594683 600974587 660294838 815158766 955170143 979953694 33467455 79139409 652658894 655212779 976500571 994984975 301007342 723381245 155294101 387916901 116512989 766500345 726746958 856421540 392350858 853703193 920632577 996681879 985699286 994803800 726652680 759623662 179142574 314824611 826077259 869538485 991274508 997270642 884556292 892696411 480526273 678627863 476188489 926531023 945032651 953182488 998062360 999123559 497698870 565659831 112625852 711859974 788244280 792437190 822213124 940530952 499512129 532238168 981503735 984572518 777680555 923162021 182856133 963981459 492488504 513826906 293852921 606452989 719432680 997208155 855514856 961175481 951395430 957059880 743913404 749843383 599616859 931649023 850425804 986749872 912237840 928625496 115607711 853367136 562284249 939242115 223067752 559226575 96824316 220831928 395726002 701439110 310158732 793595390 12545898 477804526 309620238 741563704 262297967 709852259 519368849 967793684 945440028 977346082 515936426 576082903 523191396 619491063 554592024 628453625 897939632 963016392 868349185 964081761 174523884 444613874 852485188 996018969 895425570 981241454 934150127 966646361 947098543 958694328 750436275 948522756 534919332 827386157 487649636 814021565 335278918 563980585 111963777 588219673 835777624 956855944 244692708 554607416 39855086 382198507 599390770 805400796 541109558 545579027 599248913 629793250 913353196 917525872 416847460 469389615 122773804 527434518 254560639 717998815 354359719 768215632 802166980 966137611 817775687 923624820 174947181 669681248 761081935 922372871 136013278 660290334 924336166 971432941 232775184 513095240 291315252 417106211 550339830 849529990 690169100 892650595 565154013 722401678 529002475 890245868 1703227 217141515 581994021 669875659 320772411 945795860 624713262 855522127 70041720 532300486 941129472 966945078 582860659 722102246 212473780 465946812 717296970 774181061 720788960 952859824 235641441 450255682 162866991 234864455 701067243 829003442 131803770 487295318 6065317 67137456 19817454 862981481 370196448 718848297 393580264 782772271 532069108 675787705 793039175 799692181 472517308 538181792 210007003 335438950 475081966 937691770 238095064 861327487 294482847 976411733 139948625 481015302 812876534 925968474 950414896 978776098 687249661 831115554 929073029 946104481 492007024 629831230 952345377 991336075 261134306 662787350 151288724 384374623 188540406 255388996 250578075 938767947 183863038 282880202 305359438 804491448 131386459 672666492 940514143 946621643 468324140 612960557 463870831 589771138 73583937 645156179 989876302 989925701 974435850 981692506 847924607 980856463 940976513 976235730 112561426 818419352 358090715 920875084 39660849 383514176 386490294 646181471 321896957 371217750 298887464 335558503 124255384 859404497 71619116 100362096 568049593 934413428 325312629 724408910 684176170 977760129 726583480 750798287 370963772 647022280 348379564 518695830 115964891 924139219 19236758 969546412 949978874 960356495 500383015 592907780 685748551 731809278 78983399 916843722 854017085 876947554 384423584 937459367 59293837 245054633 98340183 439271048 825551697 851510243 448753107 949815389 64421071 696593690 772515082 913420373 999421443 999822257 973632597 986279269 154270062 381175135 943125606 981826922 220542050 753915379 190747932 444666697 98080564 831518994 912587789 953908580 842734726 913410576 230219297 517724226 371933184 716034678 754726940 939357072 108992274 307132880 569415099 764618340 521503725 789541144 839712909 952002660 781517917 833416252 36558470 395180381 982504103 995444046 154828956 677037819 254675451 719710814 178443533 292746166 294729952 750212907 737750924 756225793 152730679 233447156 528621693 960353553 493240206 795575431 408585852 628815311 767092314 880855987 813981433 986760708 199194814 820019475 514950645 780722064 628419394 695561043 513621607 542342057 58377882 726942984 249667942 963546326 71586372 673471485 371238639 600563891 379067790 508744537 273520835 611912768 534605851 870343700 701328877 873056312 632549878 733564042 991374068 993480091 163700918 442533153 672096544 862573959 46978576 128350775 684790707 946124821 417434980 870810586 723796865 992028199 338735482 603956786 350617121 671463435 381099240 776876451 971020065 991472313 294547692 877068927 391544483 619955671 338896903 668420898 410697862 547116300 767805757 990787094 119383638 167375250 459266232 561916726 94026338 494455841 391313426 685647127 637960821 790060577 174636333 345198449 627038009 789627567 582730668 879433088 296072369 975863626 692142834 930787994 45057708 275690589 266543306 727615698 818100608 937233028 943785589 974528580 915730355 996795407 516199827 810584207 482299117 789355019 668763112 978295425 578718899 601955914 734392149 915273044 402570023 427457164 848043534 983935418 607601291 662053016 196300665 974210884 799835680 955696432 664896816 925287543 581886759 987491593 70031006 572788982 115282175 734568396 121939636 353607916 937569761 983323320 190997654 594381362 973580873 990318605 580322843 811080411 944086801 987654126 957570863 962887549 157090690 946405317 377297724 975897735 424526479 578632080 236257842 577692190 473682491 783204885 231465795 410143554 431302552 505857496 244965486 384267572 70740956 558602694 408727114 490740710 93361100 681642419 833733688 897430896 267159320 515260746 99984597 395368913 543663191 663774571 905644465 907465077 822613018 970860695 325255367 699903566 892154197 939757281 959749905 980114135 815815978 870085780 454793400 952775586 36493924 369730918 721429858 938088414 331021101 686353489 875910165 916161917 12333442 644499778 935074353 975019598 802795131 815538626 837477369 948935412 146819300 802527356 164781215 655998597 244317197 790605679 112783263 314708441 633632559 786557872 352289490 482475200 96441492 492824772 364009902 380328124 64172220 172115960 490177050 615119328 212752204 837319172 243414488 411362545 406180739 539274335 199812617 341992484 284022785 827272429 517126761 632541654 724394076 948190263 714132697 849183532 545221392 834066082 164776604 538316521 878117684 886795270 991763188 998384217 973131125 990470143 969802081 974715382 700666679 936162021 119197531 978115888 620823986 841434684 640478641 701442153 935333184 943657425 189084713 508883848 94333551 659127072 614214849 849091109 8404169 352866790 346855121 987915638 479879487 980770884 408267386 734003489 387433051 417751657 167288970 215695241 594485984 731411788 43751565 370424785 989364346 990510729 591405888 759372562 410719599 515736884 971058168 995458042 897133593 956028024 200147911 690488626 685270181 816236252 864921365 934980493 307247582 914079845 150334346 496296505 681949444 823344204 15838939 758276967 669191724 796329274 365448146 449555410 825363286 944857024 635665631 917405360 310602977 772824176 925139891 950960080 470398347 779919832 881493233 968299699 18262497 785322546 963375521 977840369 58922766 512378213 24833090 148629283 506210743 734150049 294629460 499736396 446635954 777192936 336748221 342999212 154890512 873390625 205676871 306286312 171465169 978683612 219580406 451059032 447036483 838031218 187721420 410932967 1475212 641955658 543705809 788899887 201040706 254530116 572722176 942181032 303496650 619013812 870958185 902363955 449486513 978036356 321981611 780264633 171076009 450641196 669170089 906694695 103204130 720505887 859263222 998866901 140802436 147943355 665259569 916344304 188008347 192744283 898998917 911457871 154784399 158392006 633664423 949757787 408562595 838443429 771165192 838624104 693286031 960032030 103789861 488912047 426941402 785761538 689407060 845185526 412820011 657321816 532233169 727257678 563693619 710510176 97803092 124623640 819694402 877260406 928697411 999448487 490573876 561543458 728693809 853748239 699108442 918466378 37181430 903462508 371593129 503504222 32401338 977541106 739900834 835048888 258717158 956773208 274228673 509694434 426744624 576114423 827698510 946696155 642211909 973767836 702594253 811000605 770618641 877360168 126343808 795421652 392853891 987546329 585061458 729711210 696351461 708531088 860467021 927706275 828906393 967199387 940340681 961561605 320196212 608900192 989118027 997744462 890422348 909107279 143717897 874042189 473086075 764408096 12596690 113769911 347493715 595916909 676004127 843932057 322460921 760043139 524480470 674932069 706959603 901739750 642403651 928557774 181210093 327492252 685984987 780429253 467725377 741002181 199372423 789700987 191293343 907949153 857135781 975545467 147952942 385037657 664124948 971120212 795574412 893384926 266522029 484062064 23345626 225262894 626390774 924672571 369161878 654935435 635534447 673804855 46338219 368538941 986149916 996553179 722586748 816459845 238175178 568888291 517681966 945593215 276631314 735193523 418460739 892256213 362751587 455764976 503947301 804867566 630556653 947967674 122382701 285362297 313545469 554381342 48900457 405688911 3610321 173804623 353225508 590788594 511364204 588459438 919560754 962634836 361334442 390701873 546423761 643898285 975786492 979493384 169401325 439071275 574361866 924831273 577839186 865429661 515051103 872243126 852588993 995470298 386291989 454486370 964901508 965449447 614234853 782116007 222801681 690097063 568963016 912208343 815208328 847966218 23468495 533603345 579995738 690085776 741559099 924416956 242869597 846831962 65545036 524963933 8311340 98578830 582352805 846761212 145646618 257504772 848000293 952617550 39421095 191173232 573436920 642720305 184866517 520900474 353664105 556147999 278050543 459443277 522235091 699287955 149361414 722452531 566438865 712242713 90687288 798420972 334059030 467949121 266651987 948331382 185466079 968583222 409216808 815648025 370718675 848373171 11239075 522339010 234545782 834797953 205061455 903588230 959901375 998132892 954765106 997211624 950745597 965329753 623858616 651425764 802566243 882116957 299116761 784370071 354072960 671873250 294145107 535419626 294093534 615762945 839341700 989935772 842256207 999960169 553349968 634395198 818208956 893878435 339310570 759361586 229477763 671479165 680323404 796969868 175543231 551170018 954529924 980596992 785834319 804070979 937096889 978683915 809910305 997920836 287271332 406270576 122892309 264029412 408107922 797803767 33304138 928539264 259075588 661645644 8827901 693380948 260287631 701233958 209803548 949584041 603445026 836891419 824332432 885401526 40139278 540736067 688766029 766805356 316989919 724439808 299740173 766457042 526285555 786394082 404316738 574400811 898535517 922282744 602627925 715853944 575288915 957231954 878709701 964662201 673425928 737988459 971362701 985432627 619174438 675386007 554920882 611667447 888384185 962510526 357064901 618509191 303954810 469770330 664772533 871078007 538632529 623913258 192272510 893560855 846130041 902242241 656445040 794128341 422712079 858944072 849868705 906037116 265823265 548327741 509259707 698342971 938619820 976098185 446349689 810841163 675368473 914927955 186371077 275997820 153320385 387181623 429097860 759452028 550017302 847085610 303711005 928499035 930534454 963336113 577449729 659067412 182719546 497093223 284820368 443397236 710609184 723698370 541977021 759506566 999002914 999044765 506070908 648065483 634365066 940868882 934466822 993651077 400971476 713302845 904313754 916495344 373808085 655078858 361613453 369727607 42731600 69905973 100774436 951079535 319291062 778368651 421977794 551067549 416724417 877435925 690555541 983703596 408292774 517190908 740056121 902749116 309292333 450795542 504379435 681871455 925041091 937088232 259828686 720688474 814696503 917070331 33000653 231143209 410788476 524579960 376348795 911890101 204424869 876447348 573099857 882820568 280312497 671990623 395788130 978488600 418320061 540027332 465100804 818556112 55599464 933832158 412461100 427588419 714195871 933620625 630727772 910082041 775818800 814873227 851952942 980117718 438711415 961170136 449648452 623965392 891101287 952327447 311425479 719741390 241991543 651492331 393890605 602402045 59479739 531161659 166200268 671546609 148382373 804595191 257568228 639595649 154145999 821564316 313320444 465493227 416529144 765949945 702696194 941953697 560794974 695974553 388033689 797678278 36938434 905974611 495702338 912574474 591244391 889899824 297673086 866756387 962529543 968330745 479331822 993892250 237702069 839970771 368217408 755786807 346136410 709735828 168584019 336066761 102941042 417264307 491343945 539970188 293479235 611091555 872665925 932382527 78221059 628133070 8499098 539689832 846858264 994429748 116321606 748349593 526573415 656932095 203936249 704994832 900057387 988295604 352522263 629320858 411747187 678163390 943999942 959366333 884261048 992730170 175445268 523487752 113754659 421876085 652564018 699762948 2440791 167497082 829789685 959799554 65405331 319117921 479282407 680014052 463835427 845228192 412939976 629387485 860362842 868177323 543060488 558026657 300971366 825177794 98164546 738543668 936434705 988117910 415236204 864037179 243377477 830601815 48340595 939354504 509349223 540991471 400187570 510793689 349765646 992730151 169315651 945561540 166683902 187953892 79476103 794384148 753561785 993753976 973398366 977528029 698251650 887174463 640708313 904053271 886046216 900030843 333091530 602332999 846122023 894485867 715572223 876594637 278997669 905708917 250918834 553470098 974883797 989824530 791285014 823014642 201256929 655963337 113144203 540589564 479690239 657066047 633012092 639052969 396320321 446052929 529661239 764375661 285457470 857617242 494011337 545693032 657016983 831264492 296864548 803161293 816495883 971239670 244290114 905193038 288535477 329856896 576709822 798401467 352392341 968998667 139312022 758937833 635104273 896485173 906456249 945320207 130415605 570947034 80493245 495386597 737677192 842234204 510679765 595411855 634638522 773989858 188601956 882013273 320969334 750654203 584810532 876404072 328085456 780307710 676670552 719862725 117014583 749825261 319111768 605680918 666640435 770673790 937500644 998204491 337683636 360669727 375914719 737614024 751193103 922772526 466762665 927362029 652054153 749585202 563470043 659657823 539016700 911957073 317551938 682796279 353390565 586065865 627809130 666344370 787091392 843470768 214459273 521635247 816142886 834860901 534372722 891353672 447001800 915061655 396604473 656936516 431466880 913596130 394440458 508388887 916714853 916757327 324519014 440543655 34069905 212608811 692890676 809964857 611651859 896002889 675212418 936658007 753833588 926813210 707601031 744974825 263912034 590538859 179967393 300721336 519472930 532800823 470486890 541071083 155770486 875783677 954141639 958933101 606435872 901875530 644623039 898727963 265037569 902264779 405901586 635441848 353354286 841899538 450489807 521841192 77147809 918723957 352147847 485730109 527997033 950855116 312120155 935181586 734820600 761050035 262796497 390410127 222490698 540311872 924690390 944406556 253896977 423284606 614403465 701516158 455089046 654684469 477394986 821376009 652565387 826554056 89480664 586229147 807728917 992787312 592116992 808590776 536626628 647806997 46056917 137711850 93143481 965642321 458428219 676706389 312366889 782426404 46453505 275706500 818680133 914976283 249057840 820549253 989761261 998722051 869340613 879395658 924876969 988796022 55268962 637346264 426069716 505474068 756507568 841088130 245015036 758193611 491098800 843624297 211956609 366737148 21901303 487511408 993880239 994688743 279818714 404226333 941544706 949884432 117512895 470950640 144242732 366310710 469935207 479453860 77802045 312123435 959023268 963763875 165855948 344247057 415808364 761650904 279734678 368119996 26386874 430967856 212876943 539553110 973039202 977371504 543415956 811512314 709225005 717786129 253551261 921798808 952690703 990862190 667851982 956536129 718329317 968039374 680259575 856268687 258389956 435768231 824400264 848744538 514920968 606138403 752709093 800508617 912643517 988572785 212779551 866175453 887430008 911555563 222782385 553196740 776545368 846685299 98791195 767739909 899470239 991345772 804454741 935507234 150575622 876867232 273854319 294783206 132514574 223713457 785875080 928250880 875699529 958306411 928081392 998008142 449886871 921018365 465662922 788940668 506828839 704897662 915381838 936187182 778158072 832976414 384433942 980004218 364110512 521392031 556666810 981576465 234465205 584195413 228905084 964910333 145861406 935896561 64297433 689230141 938919260 994671277 260985212 617610485 175758975 765340012 786714791 916053826 771506363 834632106 836332625 983250447 504294652 588253063 226327813 681828815 661375714 983816910 849319994 973399063 665462042 964960279 876273301 909145512 757750366 766160228 176830720 537938472 310872975 658130929 305772673 996880457 313957324 977454461 21428666 223527035 544694175 594245400 201119436 861177104 890918871 976596007 190287461 482738399 358761823 951589271 530740488 603987017 205162188 228048816 862179798 902812672 960198266 987056015 916019171 990185305 256992589 336312379 650864484 654717313 314852704 556655376 474583165 577554785 623893383 869337527 83611460 993846524 619922775 807538251 108258336 620545103 87611266 568650756 587753023 922665636 661915248 697945725 145629855 372859703 594826339 955959015 489919484 860589277 264788108 748965828 678948274 996605907 177385854 183283690 951555435 986522927 529942240 593284621 54659639 141988747 382496449 478310446 323954354 920521996 363412030 888339536 428659422 604733178 531002926 622135565 818016321 950824156 131798864 372885614 523338924 834364015 128089783 951194495 523991343 921158622 762500999 853135002 882225694 963919758 512428890 675411838 191058234 453243220 75493204 725717733 384894587 758601022 66297566 557653558 252801884 544121390 839652002 970616329 599415830 964897768 581337576 715733902 190689958 915531092 725236301 843603686 934392318 972237337 714347703 887917649 98946411 860479563 917779459 926450734 521571355 685093954 39617570 428504264 495471343 865579898 30039385 962705799 528611842 872206824 404025430 918358182 958358796 989081572 872879566 909215215 540717491 587531118 23201 570967188 107261887 636320024 754796761 838527988 647936553 687903690 393093715 817358769 567490882 834451426 790599570 805772154 838647841 920839766 834529502 889056433 369391334 553800404 600542988 992859983 907618674 997560836 295119033 859090940 327274348 359408456 332526140 374464781 389029137 491892720 50839516 828097724 116186387 408869173 625882639 675459173 875041867 906183906 155783277 540580464 244579041 254237805 661850273 860478279 260568078 430072403 792340776 824605459 625365208 701966828 771533461 891090841 397316171 516810111 429272236 573916869 15377993 201731744 968033615 973664317 925284363 984365751 477469193 980200327 816590814 874732914 304972242 868903308 484078902 852547458 760168901 790627276 291396914 948048642 743426013 972249456 670252904 856374056 266243033 957165545 999808414 999918675 725714172 811305728 431743534 710144502 479988358 492974566 170488871 847305419 965871139 971551469 206184701 981773605 485235676 733662906 413889821 446776429 700103937 958348592 457455983 543280898 391008714 518264541 657572286 692114182 714100524 829098890 694059816 989377493 657597698 792516058 700042152 935262704 145451557 570519652 589917146 861568362 375163856 932236307 751980337 782826793 668978675 786017452 85334552 357524648 885530091 997449716 784698060 813072809 104912036 799529172 258222344 427731452 480292490 809342542 942789351 998951111 438710371 510515045 467015502 786475944 334922374 543388616 818470833 900381607 140436493 977604592 845949411 911436681 42914695 241449262 114353017 184333006 20228945 332083690 550718587 714881178 881019799 989844935 276875482 296132269 108246398 762127425 794306642 894751436 693876485 993519240 477483885 532167261 692458 130210678 723673695 961822820 220676186 322379670 276759748 457492393 11537948 53847380 496383023 920207250 762614964 959130568 702252154 851135130 978785350 982149195 805145511 805821847 335721621 344982068 634948687 659452698 459845027 846406849 267929708 667716291 471571987 736172063 923202070 938086758 925354226 968737977 397251597 590233763 518865542 523540456 833574803 982764902 639595718 841984830 338083586 358109378 812245765 949157545 822091325 824333892 597551010 962461113 300850382 987387195 831104524 888865673 424117193 784026846 740938612 850136952 406097328 921228364 684708297 976188305 363540090 599798560 474761138 563640918 674897961 994319179 978829576 996587113 496599562 677569887 330631011 687290179 576325957 899098924 982227686 996383326 441815823 549722237 724122179 799262563 959652362 962644453 905907492 921730238 674970988 949590939 391361569 893915761 562772291 564330791 716453280 966874686 87409890 669814912 52943987 561735305 287117295 719136358 284226624 991517193 875380785 945123893 758602150 944618125 109954986 703787623 827672182 998193072 646160136 953763992 566364146 909057246 156669033 889677417 203343004 405222773 921895975 960084631 329823703 520184177 812873126 908452414 473147424 518072510 926405360 937107794 427288815 599857084 727202461 796311626 21793789 372229383 177349794 180639124 368748305 687406906 511109381 985497168 724278938 928577195 325753700 648426821 575573155 873060527 341738931 673461158 305069873 948243481 781598512 815665280 865905196 938073939 206171051 452047625 345162739 962086774 346997436 509069420 28192819 830770232 390805285 413090330 21128406 391804764 374682523 955053260 217944393 294420594 311820516 563943643 812693673 870770337 89658332 245618577 268148749 985859841 971521846 998326027 500679450 722027868 62776030 338405186 170429043 910320141 432934451 586963356 632111064 763955029 79687542 151173032 18452476 145500992 71229257 903705960 767506119 783448525 950320740 964416916 64646148 788259490 300801645 376298704 453862693 971902931 589576649 652208302 19452735 522145089 830802594 902119423 4073335 145693757 642944730 988728654 296385290 451977102 751876348 781758181 424886902 466639559 502905287 858222880 994857098 999021987 872074877 980305528 958399680 992654217 616994356 682586533 830783035 847116453 636513820 684397124 837556255 858095364 208434254 237932238 382524375 821562341 300958353 765743063 903217697 922229435 78098109 944316616 569573093 625430753 52878171 163125291 590810644 805918788 983551541 997573695 863182652 950740003 544720774 998680314 65679732 352161130 248690329 734015104 615439629 797034895 841210286 889034270 260034430 498956070 34385208 413373700 209274867 831413415 535067854 741763781 312344015 563410199 812482875 844407702 663803224 696742447 173327665 981032174 118538805 703038518 131580709 919988073 136208114 147010565 900908689 938345531 16128633 434107531 962555287 993646135 732607631 785142674 639298985 888373339 783015292 966891805 254391618 850856625 187978140 786735897 287243865 626558286 492630426 721227706 182749444 531059224 925623804 999274092 498848600 987571865 683362272 710248954 152719570 614440593 444732221 926453589 768176083 824470257 901527080 921361338 825365457 910395698 783299329 943552149 83379556 221313359 49372261 326145467 172450411 750073133 229453435 337995843 336349876 732583425 490537787 917502307 896864431 954596035 302773396 920979972 857593245 983449872 427342637 486424997 654728973 900753404 728414862 840391749 133050545 678453877 108761443 830913806 748458502 897824046 205843487 620004187 462153627 580602599 144019385 620504074 876324061 885829398 26409908 146370450 117421556 693846320 532167860 806547454 352311512 614820939 677932583 799055056 410307665 693824729 545009753 880000837 307535741 706154942 738862486 844123299 766532491 804964661 37876393 342908098 354815163 489359708 448892128 678066694 323583051 754756421 995970016 996503446 456250813 545469928 334897856 498962582 933632516 954802722 830733080 997722300 267421810 463044404 169880318 203881037 768501882 876862441 987892307 995236148 89399855 816815928 295666780 981069766 495355950 635297603 68902096 823759348 621865008 623018270 910614055 950206975 992974415 997942961 12168329 181489526 569491949 977670484 814687034 891255633 569175635 743323876 54624439 798739691 440675743 647704564 1037759 103734288 939676682 972198459 540254790 650883118 874129672 894958133 506644702 823074267 395624609 599968758 332827610 623172594 761635416 901069390 842225854 967350723 40686401 429177288 601426368 927653979 659826360 887686447 570126548 673854970 766476478 876780460 170620956 594311839 480975724 820131478 415518932 439411800 12731230 104022639 870581262 941570460 144622435 753433398 923504483 971163575 78277430 663011311 489467528 676114281 889344147 940833186 637835273 885613139 553333772 976122683 760337455 886328600 166003516 338008511 870911153 874810093 239666875 901685056 817643281 858400731 246013161 743865337 483079416 982215219 237615190 316845345 385357802 821919550 13554989 861211465 559738563 951149082 354853893 434527602 722684610 994975368 785654148 962305695 933526349 967165127 456364541 737382474 579112548 661962932 520471460 529860375 686967096 774449623 305827269 442911353 420997166 715875848 68305433 201998630 897186200 947095887 471881191 774160723 898944904 907356849 772001985 954644389 759050715 951379031 697366601 775078751 350871323 798052463 805889136 832637466 415851561 476910080 163391060 193034769 142752964 389324359 63849811 155387714 569664255 858450489 141044649 568174774 968450165 979953552 751600207 985113438 317749805 982411969 757419424 842261762 363957920 804763067 485517458 602875095 340407956 899657725 374299976 654192358 803512630 994915236 273869150 738004237 80415536 549440560 965363241 973898657 884104409 953426370 591715039 831192811 116006087 284614737 801825868 982669369 921025104 921753801 813770179 924810848 520185453 925939451 5128569 654395193 144521705 913230061 673886719 925384054 30315957 86331837 803830419 987522226 305669689 678036326 356565621 888132634 965558138 994336424 479219148 741322598 226108402 711708731 451850593 909208493 943531244 979912101 936661673 970604612 127171619 327140849 86368873 968857544 278631860 838605128 79726173 583310025 834986955 943581863 338798869 706757044 665207800 701223304 196532493 896389729 778968779 987362761 80322605 537223082 173988542 655620433 795299589 833288912 268607457 384915052 173789227 469631687 880542977 887669539 679563592 724852352 363558357 997902780 589967475 609823318 183411448 633882587 110585152 391667249 568959534 658632599 419330591 675353193 605978555 817950120 758771439 956245786 313391311 466720107 774474334 861177864 725679421 832199722 533935689 728560396 342351371 559521951 32164358 571361143 696912808 987555789 246586059 316986499 878553621 883205253 284877971 505319698 77658226 348146716 854131957 995678510 711803130 784078560 856667503 995048619 915073642 960112288 588043392 848859848 338645036 695501549 504392467 810909976 577333339 794117804 466380616 872497386 837299206 895799353 28372651 504607578 701304606 841684978 197460088 619636672 139975811 469436789 320470079 556272626 240115200 583081357 213634670 618182102 159927966 260661922 246482173 452453736 482822671 576424759 759992888 864634295 179023364 730567009 545550556 969121961 157360781 233812343 157554516 659308295 571660560 878622636 324834799 817560842 487654751 710352139 720593501 730169040 526094168 529097837 848603392 868000792 241153562 671437667 950908386 982370779 857948337 888738512 106798172 254424233 265186782 681122092 716317930 967578257 174349479 767533866 156707966 612153235 826831072 905300188 970984825 983728191 112091977 955159729 278922518 682046024 427662029 619887522 354166689 748823554 558565192 908811512 615231910 938947064 767700534 947999155 22189191 59380647 679999990 984913625 910507474 985424693 606248579 916742781 221215692 562704218 658555959 919461567 403359229 410169081 343621087 718878209 251531365 346287496 976759751 976948332 406563136 421676043 912985590 994438393 287430032 443158261 502093295 757517007 374627855 828446984 681823927 800252325 50168552 818886256 170635416 804697718 349429328 925335093 64326607 347508160 935439675 969852709 969178972 971291009 45319542 186842127 767221350 792139654 284196506 792711220 101109418 312966734 543763504 850583666 589639479 615833754 595550507 817981531 502163044 509757851 199295962 723970145 828363999 962221921 182367428 256781235 875674335 998878365 335139132 968273290 551327103 590817623 620039521 911751011 877969981 981468001 959916855 991019397 692684285 988234367 482137279 763141513 405997065 610604126 739832727 921574074 445190795 716746602 710168853 791998381 74988477 340674098 130440673 857484379 571014650 938534865 287434301 305559372 753539983 860362423 354000603 456630918 501060761 799171929 370525174 675495201 799080190 973055746 646143674 829134542 352959497 584007859 959618833 965381356 173881753 532211721 809388732 842416018 878186166 910490461 808938658 875827657 37752713 618680208 322088992 803516667 26493557 41688492 767175039 806762731 354991114 579402616 404564857 607791632 198678139 340677297 173705603 771746577 747160615 965028480 818845466 968810861 975055966 992123462 653634111 773560961 797848439 830914760 121338656 910124887 262447732 740307904 180836632 228073816 32719384 121166379 684465531 765534431 201852834 546348697 904017507 997228689 352948705 845388786 955734331 962464756 193714996 512976518 495090543 495477582 952311473 990659772 970291370 973745206 58295010 965435048 236032908 505897112 385253416 755922390 458639719 684407496 497728762 803666343 996899864 996964047 247228711 692049405 907929303 963746895 984136196 987102621 917648063 925817597 22120789 419109643 624977436 639211812 990508117 998587615 478117141 946757463 55793779 59403407 531462539 952306747 48207503 572500990 426779902 481052359 665217547 670093931 994549262 996931966 813273144 940369748 737207988 900016138 895450156 896729378 799731549 842531169 647275738 962690360 890079639 922628539 905493032 918481364 759699888 854798325 91668657 933014364 357115063 482447584 412508441 607806819 358799665 382231173 794023284 889484324 562010498 608522550 719750800 767939053 639056643 810266428 437426773 833179914 735985109 773560044 791778162 937062819 943259039 955800191 739080658 776707206 989116216 992085781 432294353 467935665 629177048 975471274 102294271 826951391 23813809 30471797 571831779 985703118 712552589 717613111 542103737 774619000 425721260 464953382 720539676 837180645 908947277 912185067 985518457 998765643 779139687 923159583 990233330 996944816 212996837 329533554 675244776 761734681 292120531 829047031 815870903 818843068 663153690 708532863 63679058 324805199 528035417 872778055 533830520 778141069 225608663 883468956 910231289 953640571 931636230 981110513 588243749 726315961 699584215 842278035 648800472 747471772 727026267 885515496 130019530 657250786 466568354 806776423 734548091 768485697 809280307 876857624 860903337 946705937 81829760 528713786 481646692 780771709 180107852 302595129 336356022 869381921 762460785 915847414 726973223 813692867 228803517 420647857 481783783 848171852 183480024 311592929 176966140 306827168 751440738 933976836 742639292 759855750 421168908 453172630 499475470 613975061 636877251 752024452 557182320 963425191 321769275 598298982 749867877 931494417 750275182 915484150 494929270 591628659 30936871 821308327 565794880 825893958 798136702 987320273 364196085 446587701 422524079 975330436 486859169 719646880 240603561 758890000 367722484 605896318 343113491 642441927 453586863 706778312 26565519 391651370 937771102 943064236 342607734 544834661 892212880 902670140 639438016 882810218 275231308 904599212 965137132 984668968 409456579 496762082 713717923 758430922 295446482 864357983 737758173 748320799 187724115 874524465 107759903 984204386 63594822 888401058 761431561 813452007 15347827 546603970 224153909 764423879 105060757 863789820 909406157 983259327 732919806 808442981 784832120 793604572 62499811 966254487 959946821 981697836 524083342 620598221 533325532 889629185 560850160 868962136 598947229 788861502 798185131 906141547 53371410 966727180 640716736 908749334 336944522 427380986 792677308 951447950 348852720 604705617 718739897 780903866 846059123 858873536 997591313 998311661 139962263 639568903 542902 521651971 143251399 810627928 134009053 812904446 60881318 433927066 346709544 645314549 912079557 940890115 774608378 888659673 769326496 947279502 873720873 976387705 859412302 895951433 975522885 986177279 539207614 551965444 434869853 992460621 823430494 952926270 509066802 693587023 941306656 956686151 92883553 93398549 549074957 839998980 937008284 940228910 947919825 950575963 729442758 946893269 707079264 730869550 705868402 726163659 954489600 996888026 325118946 556080515 388259219 598839527 365401865 803729278 484401277 696646016 260341027 642794804 833772082 993493453 315554710 801085313 375965002 650928637 549964788 735426347 590195692 979438668 679446960 884533089 997236686 998787852 689534411 878494244 987263356 988030709 245062729 482376916 999202067 999334376 279299000 463683431 818033931 877264507 513672284 915113251 563222000 764780425 992061258 996052926 590896270 759630187 127094041 553128875 490694139 691549922 575982866 828646211 124479247 508462656 394720535 558008792 159998423 922459157 336219518 700708246 722544527 846098188 458820234 844123413 332665057 606794770 151800467 925486557 602692222 839940808 923767340 974575413 678514319 854838281 462131799 962745055 333338745 684166439 192226671 364050099 327078605 518192563 378985978 600659704 122715156 532859040 868629737 910589669 202375315 342974524 630765829 828431935 856889600 928078517 310072797 996745388 481913408 716883403 731262498 753848305 278445798 644037254 704678250 778138338 319739821 587339914 413835979 630902279 661029012 891244973 106979072 705171319 64551666 428792138 912843381 985861917 320954509 563079218 107827751 384566486 927491463 978094525 428750436 708199318 468161458 945828006 13356030 573861889 633741354 779437737 10450872 420381374 433462926 999080159 624564496 719577347 836133703 939285178 896859113 992373446 715951036 842700528 412265761 790287051 988576368 990953174 975644051 977113046 192133749 488572242 327120917 794338010 141297893 674129623 679325882 966522150 893143537 956464930 506265421 651177927 305864802 580886099 372741524 791643724 420512212 925321311 879013332 962492567 276391175 522127421 341816759 707826316 974470853 979960701 274832123 954989302 568248797 724158175 437962524 927411686 645396687 974357483 941579685 984683685 475345322 848121837 592217306 815163154 659443273 937790867 864644443 941919203 597592877 985860922 870189438 955744950 842459042 948499350 531345760 931983350 312988784 817273642 53616412 158395734 493948621 642816507 554483150 595031375 270439648 971467858 225848682 822554615 487047216 894217524 87238900 557258986 398171323 602688075 929054630 954140959 479369659 506323771 605235886 712287213 276058755 295966114 692034789 833343944 240499397 728112038 413518759 428084224 855316794 908441956 531201412 663159703 72545331 587729557 857255998 891990827 398800681 907067402 734725488 757104490 157944126 168970955 815322740 907481894 722722290 877061464 243344552 997643300 819396459 946033185 747429850 906702387 390636922 763608330 308501478 694551315 11234536 889360083 33712402 505594465 926333769 996510082 429640276 457640709 566642537 790488942 83898643 801957200 875238731 947917972 484551277 615653718 968589741 985668060 130565674 623077405 333446699 908860795 660992690 709917031 24801101 560185155 342983978 669305090 322602920 923490877 112009939 127419838 468674869 534767091 684794528 929585849 572609849 798286390 62952202 658679737 158430726 541085366 342578572 807680046 485366734 652563053 686945890 780071227 894909107 963800083 447949981 488571635 806195376 818989571 919924141 930175135 586742998 919623385 474492851 504698962 548175767 873261847 822729457 897942089 72819090 663095716 542609626 950308315 457914289 724759349 91666194 276755264 293941670 849195930 251688396 806748075 948491211 999438914 786182334 856356013 605638575 657345759 119286700 810236723 784470024 920805783 449744553 885180887 386346099 652294316 272604521 850151437 53792219 700649149 85634701 815271327 445707590 843968801 659434977 952670413 163184435 972965822 740064081 764476132 661090861 885180344 436893784 474287982 764481109 825044663 121663592 790560637 849416928 969117430 9957514 435694477 411992984 598021481 568825705 713058428 870526739 999835870 776847487 979604996 574299248 868775284 847832863 882157282 676576235 827609348 69072988 588565142 532535666 598420116 551742667 940753898 117710459 290815824 135475920 517766157 695198538 739029411 864119313 997664861 727698175 736308873 48581710 833274478 275121482 340209118 706016503 791015419 797304766 814781403 223111919 417291261 40940514 429651696 850228968 965681677 593520202 847279217 467689096 732559008 769492207 918742210 794396715 997295539 175012822 632328731 175042926 307829578 473232796 518829397 593624132 933352615 235616093 822082668 156751480 236535971 163027247 687908647 345410054 702172203 525941623 698810684 293479619 483108572 578233496 780394423 501747976 728396796 308394054 746334843 681039910 847917522 167353488 465319057 707607993 853781693 864011450 880130462 64919508 644959508 790256182 931275824 656416549 997207322 942271147 950468495 452219913 593755977 171910545 458731443 81532653 571069794 105629641 210834981 741741509 860760108 618199933 857381647 509480709 891127321 723873732 820884159 171772581 415534905 740456556 849862430 375059817 728652731 259451374 420254145 344243602 368456928 556103065 588877460 438051212 724729042 286646527 743452973 352563385 825277153 596459711 708509175 953767747 971225641 46148002 679306508 92683564 600022325 608719585 837479725 217329469 359870905 82804969 468081998 721518782 870687349 522930478 706987812 774626861 801699096 629568801 678846946 301054431 829450650 112118158 712120321 90640290 718064504 470768112 752449033 985128087 995912521 182313314 607066990 786186766 858790790 676607310 695104747 318105044 763342193 115482357 639307649 438615038 465346094 407844569 753566959 392107643 888495121 99192520 621664878 269844258 840243262 60947720 343058573 112324178 277013859 448749316 972782930 427702574 969262730 392701243 515592323 634087951 970508422 393041937 620271990 255836797 993948534 968851906 977222938 748249163 796084017 78633499 491491731 583255936 910534289 260404033 971496566 50394309 54434443 338502758 984683348 319977004 412752087 425674750 481986504 30735880 305545971 761218562 974810932 308062964 847707609 51741890 284989153 605872232 930886319 626384918 733138507 874187554 894787611 964466293 996134403 965698692 981879609 769040555 979637941 28048155 884447381 33550041 374868894 998204709 998226890 984086028 991273573 710023483 865893961 353862229 498598760 741528186 933807566 91324663 165394697 963417401 986970220 377108314 801293726 120323047 610161882 820670721 843341358 865400032 888660171 98375871 212557615 848282160 888514693 464452380 735958618 965872152 969067039 776013317 903980306 296828713 435857104 229368873 987203942 501500006 973600641 306501763 783243155 717391196 749508777 423246028 511813160 887449199 925687035 777877856 921591639 885292138 887005184 51139761 223503020 948575068 950408955 43234344 106788092 916699649 975174922 256334754 700305377 457755906 507695698 911172678 943235143 698693327 977746485 198188992 366082565 184734944 737439995 674966809 839900981 6471256 485462777 97967584 802398614 808253307 865294045 695754844 811741455 59487076 273549626 923812419 931772400 400718859 461159389 771040160 992114481 290821191 464304011 54901879 593599431 509337419 972363119 713832928 858930552 508556588 689772599 53956163 441016412 904422056 931997059 750892718 993227510 167948700 887327457 876363031 920515354 759599898 942333833 810647439 900397133 790740688 936104176 481172025 948182419 574130944 943364551 721292905 797796276 171538641 557530541 359660055 421312975 628177806 783821353 796369769 826080968 142934508 202711263 780805010 947915963 831760125 912887811 978727941 984111080 399990312 965888786 961170753 974385934 403538649 519525089 259549209 702090924 46582782 633159966 234397750 419563180 364209061 789861515 978102146 993482588 384206822 989489404 274839124 661800434 577486037 997377573 403702750 541306035 524562397 573926031 467307736 530730491 15335736 465538850 159258099 406851240 382855817 468623127 636322238 937203199 309345615 944831938 825812337 973165125 424067021 612183253 358947090 855570561 306709247 542727730 348307310 834745351 276004026 576053053 915491592 969356274 610986591 931728519 8362829 157803950 268751520 565814292 518895299 909002739 656809192 799489812 456569554 945774389 145925426 965612997 595831594 703693886 467569768 823793513 687836501 772532273 964378180 975525972 905276630 993585108 998261345 998330122 759619125 781907753 340585311 788894465 767365670 857365982 673472400 724322611 69604335 296734540 178470349 818661849 581879164 583008973 950915153 990110278 141246448 613800450 533057292 575559195 550169951 582224538 450258458 661237021 215056711 749360588 738257777 998187653 616864211 787984806 619207790 702910190 518215902 983102035 15299279 901407579 375487329 733774408 741613260 834579444 225533675 646788953 422350324 810018985 322628846 649551332 571378346 876178378 316590526 581251844 444429418 859273515 722746598 847403488 621291122 922347034 482792010 508366322 14890747 785408187 314750696 585092951 830294270 971077076 831387158 848529899 664246772 719165409 47958802 387384205 243823086 815850478 876082404 964846496 891031226 999848028 498745480 612358883 598790844 886860128 120309096 520070881 662304524 973562650 383755579 822577982 967385779 996820199 52903703 301909563 160491262 205097369 311972941 710918323 629457336 912796420 58749452 995393892 97911415 973678670 559542463 773432058 418735956 763295844 377466403 728646335 940463257 972387819 649005022 789466994 708913928 893721818 684219399 695441536 951414342 963154261 416802145 645351375 926111699 938763723 525706077 786826912 75065027 937955869 997298923 998114311 585142236 756755065 736530578 829238021 672529098 693465852 872671964 898996176 497894642 860891538 509514760 987730269 428816551 602811073 572678883 598362331 285390208 537616839 559957233 638725772 352277163 456669550 601119444 657348322 924265278 938631063 569089370 715922450 307021034 456713594 458568553 840983659 587072361 944264097 317861876 788619488 49563750 789829383 440835111 645740854 646886779 801391393 769887932 956965696 868812693 926266727 508064283 979422792 543727904 901893357 80078181 809469160 432179911 707266656 31280142 54547611 592147938 747797040 553331753 913101220 802871779 824161895 754335204 800706765 985501136 985714490 963133133 986332091 556711447 907379500 210009681 357269585 395681875 647702667 189522648 411716168 911520121 964421997 178238939 214949773 749651311 981951992 738437641 969543449 959020791 980935224 773585803 937630105 631770927 652760874 501567759 983906351 759343546 932133271 659172040 962090692 130691748 649041591 595288310 933571012 634992144 704414866 681970737 994269788 748685619 775243309 897202379 983854880 466678209 874409653 23131761 695497740 920225822 987633128 232371518 938052310 319867430 783136682 673794172 726306120 81078503 718643671 914255392 952078341 267378007 339615047 167689523 419632939 546072081 900441775 4609330 443023180 477261263 942374138 585119347 935522167 315449744 557956518 299127240 753179522 834395650 953561900 446333546 549577265 658531632 679055828 387022751 915204488 66138353 892704583 934702835 945473427 261882480 826032836 593376327 636016364 726357268 947223437 942585250 958836710 961787940 989169353 988947628 991481999 949031794 986350516 954552843 969405917 263288632 282596733 592815882 603597708 531820496 803075618 747221778 969727251 991393752 995770763 938984127 940841504 770644945 916269385 153694111 658835151 911966570 918343658 688825462 742543809 339320196 738388130 711784009 893840298 285591991 647308702 104514771 756981124 160927143 932907301 246276439 329094533 157513104 490608703 89922060 751588311 155407056 723357541 271611353 480791385 939169477 989963079 288906872 356274857 885445364 940204855 137281551 771782956 464967822 485686788 613175702 760085114 40637797 86277718 108974039 249482249 260621358 652651757 24371001 181169841 60701618 806944734 286585762 655741777 115322356 187874321 130185582 791180992 679962735 945171186 3992326 80977205 715861717 922170589 901400601 942423173 583258634 780229147 522042392 921176173 54650763 713069102 618345267 766848709 993021731 994317105 903907868 912579596 762794138 784778667 704048092 782614256 192222558 860614673 821864093 826533629 163262713 472021596 760980748 899871543 708752119 806786450 502933647 566283265 860456865 985744789 149994017 520326753 634583245 834741678 753039892 971111657 236461212 283257229 306257900 330699078 775828181 994598756 212873457 530269161 710222395 993776077 149964879 720402202 5091722 169249813 710811014 854495494 546149062 699587764 555029411 817707378 133571534 993818358 425425774 509226497 559500389 704986146 370455054 780869278 776383088 835513401 576145899 587578930 132976285 527637200 540853628 760905981 162553840 922049443 814049105 962517304 341994742 913309889 151355113 920561904 881149303 942806812 581509511 714932532 125915191 996676674 899324567 904047733 207911747 440370720 45386741 752636146 279260720 810793426 739953135 777422044 635778179 799120839 414550128 958311351 841539496 872479959 670992401 982670495 520343800 674935212 314032873 460026759 71084565 443203000 527595294 556996653 392998780 498665017 552623061 921803663 374926088 473748521 483534551 519140397 956097994 972049774 474820846 929242082 587937632 713218141 93983833 336462955 994288624 997452223 242685626 994763568 660018181 877589520 359341544 825833807 751156108 901660341 28948302 730422172 123913234 487413993 423589393 912187307 321994298 610939174 173912077 401664174 808129489 983723644 465505096 983355624 908781412 948274657 818012595 862043386 97386467 837355899 655045323 815134938 992884742 996747890 308031954 470831872 776823053 783205425 237954372 818452846 991583948 995387906 168960690 669856454 704131892 941952047 239127799 696047129 23910530 448847325 229921924 265326165 504066591 978583805 351049998 520495359 26069050 879103788 451998763 589170669 43651927 486599375 291524302 766019274 369637285 734818396 78139777 860351814 32044255 772343072 477937245 995478564 941667527 946048347 535276533 945539088 404401451 898877290 808814491 956447157 577010775 633445612 707153621 952728950 38491689 415064737 839007975 911355602 473212072 780648187 191090503 227758982 750830970 840989066 865750288 978343217 719791011 879697515 706545492 958263358 895839018 918457199 532706676 609278256 127178421 259369637 688644371 963840493 322715593 730293688 5587715 138667554 696948872 878507478 781674040 914310795 230589213 824747090 221633267 499315752 758555058 994424060 194304757 807258827 727427104 771642658 15919370 849793435 505309765 954937984 437205133 620354116 791082346 802380861 155068221 796410090 190575110 335915347 791854662 865144927 737260573 842587517 809664945 974858636 203083205 240080322 451311130 647499000 292690728 810377548 371402680 630766366 913330478 972967704 374463565 929296396 111715095 715808598 472572649 523761538 534469597 599879928 264291760 314198678 669380296 838353774 749495882 985831155 109102041 758109311 130594636 999600360 316648207 538248790 640391112 994231787 177312225 949899398 929752298 981997887 323009229 444163425 435481907 771468069 687109331 991423490 78670811 825460530 869527586 976566097 808727213 962083567 358613015 936994773 880798808 953768374 622161484 629940060 437174121 505227300 769686722 844960665 682854647 687698564 501924956 613548344 864489069 895279670 996666488 998426858 177917141 740414710 204968037 211605523 332557236 993150870 453172612 871152444 687412455 973150527 546921025 779908598 931181919 996291112 789604620 844495145 57244438 172025584 329599302 908737133 943316838 965838413 821705666 908215450 654194364 972989763 610774716 887900683 368708592 447886134 148500939 674542460 823168908 916687116 345776307 715859510 564896782 688590782 740184033 835601279 215048953 575437474 140672443 909147173 23784589 200097579 593298652 644361681 517996425 561430551 974461531 978176188 421366778 926472716 580933648 751061836 197063703 552268906 758388984 957751849 934678452 954402659 391401108 915506353 996870222 999456651 600879528 734189908 292692848 714838809 971161902 981283479 65413378 292332222 320769387 801581641 933321142 976710762 422212052 802598235 10456413 717965712 990660857 996082374 372365861 385155988 124190046 682134447 547297523 837205371 66480049 736649916 592090749 756021172 769821090 811215705 743344589 787269571 105304548 283315078 26299723 780680989 344058414 983971849 446134120 877748373 873186624 953677094 872263843 874750270 64226111 639674123 94818 586963513 197632017 239981288 229033842 868345594 137918511 167238939 967606880 998719537 66887999 348140860 977565775 988297314 655002994 932228540 807984806 871341258 78484684 925972817 59422802 964803943 706083222 900514302 575589989 803966215 530113782 796815343 127056478 767428740 350247384 848453472 849342622 899290152 383110405 727109767 234718622 590265170 869685600 892222450 552302092 745078762 26625281 196010766 759264235 975681106 41125990 683877730 686124058 696035201 420347901 807432587 428719645 878643606 100858800 126933575 417231366 786220424 651390726 890610882 172462444 387717616 220339645 507304862 262630151 866275349 329353607 543030290 658305123 714214447 136331584 650816919 720078140 860918361 784062100 928404660 752859873 840825168 475988766 928516572 818970100 982559642 884520509 953955566 974110718 978318845 414344877 512920642 363221660 780051231 480470326 984669746 692326592 967235665 477341289 574665943 863189826 865162778 67261048 223220310 185513538 689906236 590570767 876575424 431847718 549575475 806795353 999001704 138083871 798089486 746452742 997437646 865158279 952784978 419565508 998509488 929160682 948290965 43421529 809932636 748992421 979253025 88602359 695194563 746339808 977096210 482009440 959729550 576405832 954604757 800630719 943356713 252957730 851361654 694428964 924693897 154414645 411358438 395852146 821106721 974584103 980409998 459181439 771477616 362016281 824205842 44546216 592246412 425471008 991804601 890877299 979511712 531233462 899130925 458538353 722939276 587192209 737405101 994648059 997256650 465976169 619748247 960602941 995701152 684545045 811917679 407757 672806080 282457534 611269806 25880836 867759836 947031572 991162932 153706509 609033556 395687466 928777247 348389286 404340845 865955621 945500583 321921287 646616825 745502376 848656047 502250779 546450641 303160592 493575312 121196662 847785847 868304730 977296457 482498014 983482311 918959649 980787071 228619528 699425731 860649562 974073502 800864766 966855423 224873183 538774874 935138799 958787334 977915077 988230073 833896916 983555623 154812188 606952804 235593762 632544617 89256771 929590103 310534559 493296320 235794429 869396752 654479708 683713146 222059762 475887110 606884011 932701010 632731317 949437779 496018111 718635315 704540222 972575444 823347216 875820881 945348972 964715551 959819737 962411424 383386843 611961127 87063045 392187901 684332178 933898874 968581315 988374464 460321383 665883006 764196256 942415385 454179776 464359568 223615439 707817755 895829630 978598754 582286387 741065377 139201059 574626235 293607787 767213913 25965204 230234389 960756972 963703603 271861607 280671249 231769693 868675705 800897126 864108365 825765108 881573487 756020477 916916908 691793834 876990837 71406866 139831912 504811077 524441308 498022267 795257750 276088983 800027410 709117933 882058119 129708594 252788107 528540754 903980520 297920614 608006852 923399936 927405951 223901931 834833869 128319281 648538881 49205425 189314912 609753981 835083774 295740084 750676293 78544026 378727533 366850221 933245505 757451301 934369251 713903873 919563875 739228075 992683872 535830334 580333637 521004484 664267943 504355828 561148910 984993319 999807751 23180462 166659838 137185973 877307152 775996727 857345430 342249900 381754007 846865898 909789415 650134626 814088673 627780972 748885924 576222164 686709409 719772033 759708594 375825558 381896271 995757586 996255850 524690837 572584501 894887542 920112151 537594472 985610267 339681595 600782056 807310507 876074664 861117726 934369463 741051664 942770723 538891030 569777137 553169244 889726805 567195250 870821993 691516346 843515054 574265656 968792104 440056938 934922831 59987703 340354088 614852553 718294064 475066193 947145287 886113808 897175458 332380938 712806811 509936192 792419724 362433679 417241302 870632412 905958239 286158905 717741071 907695527 998844236 785994213 956959955 574654845 666588853 148593672 576250918 913337078 993148276 702942363 768493881 491338897 655459387 887442073 928342408 366405052 668439329 591536537 732648252 741432268 861195278 748772775 975204247 866106184 933537088 123874828 896467475 35251053 445181393 920146667 965946688 937177567 961958600 985755434 988631511 156761473 254150638 168816691 977504636 857101283 932096789 586184284 740804077 282645107 321904149 512050954 754817672 540611345 847461029 225577941 417447346 520131377 997384832 939896938 950785929 822858741 961093500 654007842 897535101 642280246 800058721 908529479 953060183 203022282 341062549 578970411 700681270 837420228 951332366 824381082 973918476 524904676 797397400 342415564 931396469 917660903 995078493 125134339 953185956 857956292 882638563 781725411 952132446 555392438 653099117 228463343 389001756 331997544 787604170 635570201 911883900 343067080 643975340 912288201 920046360 790697491 840079703 903813444 908487454 222416657 241798125 599635872 921021053 981919498 991642122 946491021 950714433 613173975 727862412 118053561 491176776 136835862 405468349 873261766 885972788 626281307 692037021 686851200 689013049 272824267 435694117 893445972 927451125 420804100 644325909 752907567 842812709 359840652 471131501 797495862 917065421 262788023 410652641 662522375 990636932 409746686 897155322 959534413 979442520 707439337 827850949 97193058 463608879 399323729 439938240 266109182 549980039 974710161 999709490 889482121 973417987 269610835 936639143 419674126 450857584 944525959 949518929 843577571 967861286 816272885 839975751 57618111 90749605 318842332 693393187 859503719 986264383 852789094 957553684 512202263 902381077 746200149 886025654 856274594 889489239 651276091 926755763 3170073 283736577 418262882 682553675 773083737 839688010 601252386 618560480 279966486 466225327 99126039 771268732 803454712 912090952 653365631 682874444 577181013 970514007 550170794 628784271 696215489 928005633 327336698 700080867 460607592 940892313 359364784 435341589 762654584 834402248 106458443 697738363 401334709 623466926 759327687 767735277 174426664 840434476 373317997 455164023 219830366 570518706 676946303 931732698 514755304 689443529 928741066 975349696 917232234 991160020 378720190 616980803 495531495 506852499 270873597 875676722 180438663 911224087 333527084 490614496 948686729 968326885 252811471 781469461 958125959 990282221 277804925 973278383 282666247 934565052 533053362 904097318 235257176 329568887 531758647 666521074 572338172 862339880 723560997 981842126 239832185 346899062 161956641 921329292 738287754 886013653 667283479 671526505 359597631 914315849 179682198 275708653 59821182 86973194 964965053 991775725 743405469 927055773 496205196 944231241 780500071 992241959 417407992 637591930 94455568 437593049 253530521 555804051 286225064 933349739 264658466 820153072 265099966 297636274 963730550 972791521 253379048 366499184 24036403 230736378 975475787 977605688 508658735 551257105 64343474 980294115 517968662 837715264 295600306 388670241 546889694 866327922 756862064 826834254 696492282 928082480 319833287 413985186 368751112 745109504 561997382 879451723 481849260 856107147 771857156 867169501 516356624 657040252 276822189 724497068 104587494 720483806 813251220 911321874 909148777 949322670 598632160 639282700 858955154 871674910 20000401 804053394 920490225 943140948 559300220 820655489 974898470 993283912 324093394 660646718 721550787 818099831 453939939 707419070 223674064 512153181 756948491 903046015 439047850 951509591 799275224 876292416 209946736 639260884 528697643 826753263 705073969 751267346 242120767 720463351 447133970 848845850 573034888 946918368 433849839 748534231 363770078 956928743 900263221 922575312 782109946 912910639 503760501 992275811 324764906 746254750 537841096 589431127 881317977 927716460 830731164 832346407 318351629 411890276 487216725 634089875 233811530 955469307 410408583 449906300 570501171 577135954 596095097 864766290 685220219 916643604 634249841 840243247 944195777 985762222 504658795 958923101 406370806 418642357 573736621 807166334 643808806 761004191 591121650 794603740 28944365 483221179 136133454 175182944 64599699 684201994 564901906 840025164 338910928 849555934 412367242 961972849 711669243 837365797 553503315 594882926 103145812 524252556 802390568 862000537 31438406 466860922 381211554 930477895 66335572 184116441 103696781 557349978 745118289 859262054 437372258 535028841 521508635 937948203 363874339 947189788 195800220 283745130 792406402 836251011 953511106 987570699 979647530 998140795 586373529 759629645 520923658 567664404 544609176 682409338 953150321 959020727 2765266 30498253 648788841 723724015 8600961 400948348 852418513 859319861 865528558 952922949 489229992 570571819 920197876 959160057 652877085 886801039 721794592 783395180 809215952 998758836 706739910 841817991 789619812 940632415 593213364 628268413 466716093 825011387 954912048 968619895 379428239 612378170 849428101 872195053 536053138 948224782 443176085 556003133 740941807 797341285 634496988 788209831 535005816 693638191 254101157 307314160 584237373 704783673 797436736 981974683 190197739 937838634 704388685 862220689 92097107 457503725 376310287 417939790 450195853 925070682 850189802 902062625 171500098 667790251 236650159 371657137 48953389 747704260 370776126 881037841 887763986 915320977 372143592 779508566 235358951 369983173 837037280 921660792 839643766 983285664 228858515 867765896 144047982 956515445 466552761 604322440 981888205 983336245 577172331 992471137 445833188 727963762 168037799 807551735 432196727 821825586 918941911 925132476 965631837 994252676 602390669 677056917 219388886 221975587 594550207 879448754 348083013 989870974 445255590 677074874 872116936 951587384 822246014 917826339 259524148 795011776 623918675 928026633 370990608 505846718 140360438 230123537 196400471 540597854 582444324 616043502 821638530 957521492 116767564 768743936 614277827 665964533 376193673 760888202 577187122 815931234 287399610 680894732 165424116 373432493 423222392 648340084 191305315 995879832 705781057 715819036 772862152 970445490 319658615 661186928 287384283 581495269 874713020 953779080 561537987 591273059 208871920 259715696 508103149 720223310 659065454 737574140 91146781 983538346 178535643 434215940 447702032 839302091 860717001 902152350 446989119 855876222 829589141 868444655 378563966 925988046 798691582 926779107 100115066 474059292 753394222 936845432 72737400 434504782 145465162 460871454 965609719 978827785 502669344 713853845 218197849 580095576 100878895 359931127 91171155 884967240 798411645 863702968 770208346 831173075 390738273 858130876 844163809 942711539 529774367 980394631 999574155 999773878 199772346 226126833 564732896 633688972 407414940 768544868 732129320 748307118 280575052 865172007 100519912 916275733 310762651 925379837 659907176 942564553 441873673 894434403 88731570 731238809 930463852 970076423 301228964 969346133 832028006 924756352 682503271 803465762 57427280 610807931 130767420 381222982 464258112 912685954 814349620 934968621 783293509 835785027 673106152 767836582 907695052 918459154 348724459 383024729 907497112 997020350 117125344 502290592 309211675 458044391 135087139 764932190 332121381 529319113 950703056 998230599 599202197 729013415 612354849 932905575 620968321 721240123 549737619 728126557 467744226 711438513 115984240 770181371 570229983 864889240 601918712 650246457 672079305 952055606 62412070 92250346 483706322 838389340 367774280 508136476 88191974 497892727 319631312 908000295 398102916 974473847 246011478 357604045 731481128 974444664 891705515 961608048 734617580 890143591 90189197 171873025 547208438 710229135 24191705 563511524 669710539 955790094 101008315 984499220 35593601 605520247 234254091 811315077 195339045 705785259 601832304 962968068 391091854 796473271 631001656 704789697 736701073 928316862 167532329 525889441 428229471 947157892 947511306 986819157 693661503 747688989 164326534 618187346 379468326 389072207 646022475 825375099 471145667 773327926 782723881 813683138 381163117 887479848 101729188 119567802 579775021 685236489 328996773 783096489 326131937 394536529 579327526 959539820 428033195 608143248 173972666 343483336 312021493 765848461 654365355 917175994 514453109 937795335 966052727 991900311 120932864 615180004 804440627 880954709 180970542 233565253 218974024 444531520 1943413 557808339 646719353 841262595 995903711 997851401 1155721 740738503 681951769 912023966 243086441 546149133 918336158 989840802 400117069 437862672 725900190 877367737 948202766 948940782 143447528 864847498 183053803 958453422 209334639 892803434 711634959 941464281 184699135 996142799 333453591 938857297 993168537 998997619 934979204 973627058 744693096 907913429 289549633 747951786 870109695 885914185 270750523 453218720 349571071 873975987 191274722 505287832 535664965 859904546 859410565 950006776 594465310 700225529 223730107 410715594 388916501 442851023 621642333 702946424 849926495 938548352 606622920 885920669 431222927 539629454 735144471 895480858 56457185 705273095 15227698 879496272 961905148 978685211 803351536 871973867 236083325 606314484 626002841 924769667 549709653 601852935 30211003 396995501 645188134 923698118 615776352 943647847 298662957 929856290 323228547 710618905 940722709 981095468 412372635 921868369 943776066 993205924 261185535 523221285 296190305 982221301 141154327 864452369 324622152 701733966 385132081 567078264 901343009 989620347 297308303 881675917 938840740 941002031 144395989 443014205 764291521 808831981 882095765 900465548 658606948 716746836 491873309 725809009 666375770 761616608 865850689 922040849 93326385 945821214 890586308 925052494 676064732 745124273 918364819 950501187 632499008 990392142 14910231 677022632 366235106 425898478 156228950 481575531 652488492 735107309 359334772 682753708 942154312 957533852 955231748 997136549 764552974 887766544 172823396 910118454 237621099 478498688 354074080 674258937 516217677 973952843 835175044 868610413 228418835 790640062 80859440 341831013 52337354 346700857 178109797 703423724 301257266 488721314 89474958 730130410 820682042 903267077 73740039 240398843 629952491 918082849 851618670 870402620 55879013 114852918 845442644 960362818 583870091 617008197 278279988 564887016 119051080 947128158 622502747 973909569 525427575 706221856 362149696 389092795 142166610 808411910 537570807 689848393 401977053 514125223 478814396 494088871 701922751 832781513 611751437 874424696 989922139 990441258 304272560 685359409 135034248 834790251 519274064 703046115 396686756 667830088 715780937 728643511 162114612 592780565 988896998 991739384 828420529 947946473 701753074 770151764 5870364 163329311 711706743 969862604 357712700 532642225 849820873 899649697 567046857 717822039 158488015 601703856 880611163 968283440 228530068 821413420 988028911 995625072 549919664 622112935 395905964 623928399 270875227 397346763 703646811 878181897 643512130 690415077 166396192 503611841 446019755 680532855 651962089 723913923 430636581 850539723 23054177 651013010 288063828 809131413 199211532 995861404 307953811 419696211 503956657 849950158 278113830 873185381 372519632 990192707 984104437 996689031 215717270 819316394 965701629 985527261 662127129 850698305 443192476 833836755 387808039 715373898 837841672 880666103 383146000 766289908 35126796 274478831 737905657 965940334 549502543 984112740 905767162 994661566 780622261 937012044 741242344 906024440 271825677 341595068 763792805 870165577 951833435 994236240 574196264 922209795 64844015 756365272 298829764 811213405 852842875 946473503 304387578 902753050 607214439 741561082 973721930 981025065 724055320 985228654 771911068 906501757 517412984 787003910 604882450 808537741 876468352 953805926 876960433 881598078 902691937 960957824 237754623 672167316 958260359 968210713 783001627 893974019 844685479 997701131 9093826 195860053 983851245 991570691 68408555 672589503 824416526 864971474 400421474 976978190 20617853 218559846 75146018 663165327 691760801 752597463 247024438 489238671 362731390 939977052 459677733 777879574 848182380 851369709 205943668 319692949 506182168 594254967 457188195 609987869 457571670 667535893 233899576 894757840 450968027 752301805 801388934 865122209 234281031 473448432 479383184 553156902 61868978 681102199 576188606 966248813 593849143 648523386 692278810 968760631 855293661 926962455 905119579 906350188 831719195 832808456 138683001 297340700 513313803 526223514 318692093 905323017 851286987 900081468 293909952 463425624 542320457 988754432 271004102 926479350 794860100 910352999 338705077 913144581 35889352 107180253 605633006 758280770 672199026 981330134 109056278 833209145 795644583 969546507 920355195 947703928 550658894 864082513 900442631 936802931 186185053 844129200 270175950 461902738 666472107 977470808 186734953 497585597 7203527 589632639 120734527 310091093 702871305 804811819 363742430 588235432 573701341 592254918 150725302 933638372 443615833 812978589 814777379 950816565 757043000 773934033 162522588 721864241 13196740 857202381 571547353 849662629 985594084 992479594 600624433 909755694 176602929 784395131 214050460 232486172 666531396 995290375 875783502 899943003 397160977 822718547 132978362 436068842 678135510 763653590 124426236 949087799 238892014 558509993 169398587 877144534 241222257 787493752 953286606 985301571 403179389 657526862 557103184 742092869 871573885 895639505 214673532 270657955 530664036 714001417 977310258 984704108 314154536 753350376 385355038 545569123 896623112 938526393 867946619 946676227 655570061 919799011 131118760 914157307 260236705 681802384 5294324 442329493 853178689 897332857 317891818 992942915 177797511 720131133 630963466 813347372 232474471 766827585 737708500 895662841 339080807 431659265 82215194 551558137 362941193 973429209 502868919 565145505 850418164 995647124 389916152 859775486 191357700 792766537 889062466 938552717 460221804 975355320 558695429 621467497 599646439 851961075 735155071 838617321 874556942 994193294 329581334 711858354 764681588 897269742 503977767 717013838 558853416 684491740 643597970 978741379 342415846 508755340 445465836 640781675 885875057 994590763 419543566 637346110 207570441 472467507 165394876 641313342 912054370 943327502 275517713 759409705 233589344 534077074 437054027 589443568 269914182 952081070 276108333 401708930 714104046 984384482 558419525 611304000 999679504 999818860 551181217 724071668 201122295 986705474 825461958 911814452 973722162 975820567 652479737 885173406 200115942 286340555 658135339 817657879 710820857 725413717 483961282 567090421 895320018 955826475 235976313 786226956 138420771 397470574 557104667 906206764 517545057 903069374 991228474 994106282 759829249 872449181 777717019 812935384 844557651 853047642 714750575 925349109 181534194 988897683 866185489 982700255 648426310 723133870 846518381 949699801 847538663 923851811 114011410 247670315 556192701 908003388 180347369 667965854 924113559 939713751 29201273 348290057 900701876 961999213 483219003 746716761 974174065 987954616 846905989 927546226 873750005 928306350 298661890 812683201 8579083 258026182 803670535 885829082 187955518 943261082 937663960 995899330 198805343 607245424 804253061 885691058 87431788 325616027 375128246 761395120 877585196 943079639 690135839 756585004 227691309 305294254 498174603 659087622 43043621 163725031 626451371 755281928 632773998 779973580 308233205 596273856 277488495 837854696 781608258 906402325 970556685 979446265 241184826 663117957 121038343 237693371 639989505 732662669 360808418 872422098 141305956 695283839 260587977 644691612 337628592 702242091 746552967 841470447 426144407 492001919 392181707 398818188 769837001 937640279 501880677 957812186 526895907 712978507 502874738 548197184 92978424 711639110 544840076 868610199 381402457 467416317 592520611 955513382 801002346 919565980 394388006 773606461 135834737 399501696 677101215 860504200 754632421 854371744 429322488 765902769 326804831 542807057 400732725 457642753 744672365 860771564 461848061 959736508 229739018 876500621 10708468 964243923 743305442 837452806 63241349 370802676 412487095 486771134 455514110 899098628 233184649 423284305 712477875 777791608 39680337 593697533 188091076 426600253 637518887 917889721 217224190 407112523 751979063 789514210 337928061 908095822 990466301 999211834 116712241 810377052 609539905 854791790 845202029 963079641 494618984 583598263 242204006 399946079 554136739 808801451 156878896 195051226 515848259 771980246 932189904 956366884 676755719 831431456 809444085 906585793 450328395 573558837 496018216 544913553 95202105 469344336 355401529 505926359 406964827 710710128 630040723 753765303 561031401 648691858 197158925 203029024 361300368 881262342 213163615 438098108 713944864 991160777 874709302 879734398 931761269 996663859 786402829 903619149 950968555 970245690 341814871 530348070 727372445 848943390 562482733 643875041 880158692 993211394 691923475 742262218 84685590 145975344 351610570 806452446 573872802 647502469 282671104 910401104 673378205 819732706 251014309 428926933 147492024 651254513 291148831 859467876 793078749 945461320 118621181 515424920 463202376 587729242 568009698 619263580 92731380 950809282 591137048 794976395 158038526 190878344 368540741 894248165 114577743 230783931 912291919 912338531 904577903 905691020 716726537 911332953 993352459 996527634 546237699 883066685 603650933 664882185 574578536 727883656 291560026 743156727 282826636 669710420 704366080 780198062 303235078 812043265 977175515 984076228 576538318 950817192 48709171 765213705 168227180 261522903 676557593 850850290 190218108 436404470 976767078 991172788 97194811 183774666 203872583 913043784 394523244 592623482 182829955 197285725 774044285 812484440 571647947 642026707 199812337 400485345 980003211 990944620 634671068 996123975 459128841 686668154 732442143 739672004 755885279 970809981 122960609 842504489 243740896 777850379 813180381 880874358 172842696 551613826 412785574 428027702 367237614 630676453 992088625 993759072 134073081 324184694 222498079 900024394 408702078 581179509 585566358 765416120 262972065 931620282 635687246 918155248 667025013 808670997 955767202 992423139 590172693 943417750 68669404 508598502 542473457 801186764 649126472 831340831 569024773 913118878 921378162 945612916 133157711 592118469 700871122 741169745 173768014 557415250 489818648 887924823 693469649 752757033 659940027 948637634 837088602 922428936 234651209 859864918 360016859 361444728 6364270 409603804 329025807 835185904 329425554 376305271 835172264 869368689 364947910 451856175 270164341 483459881 71599151 329200300 515326520 665909037 212772283 509374359 233615370 411659561 327084220 658126576 203558526 729192596 129621494 295512271 558143754 986610883 209103847 909531855 821680258 827476007 588374879 595731276 352583248 882659141 452600141 576661987 990474485 999547026 818057516 835290223 669680826 697122333 128975352 664529118 384607635 700163616 559762628 923862651 829837685 996708883 922110244 924820094 621774763 864199740 465975020 553032432 501511700 614167857 908107987 915561978 80040083 440037421 581119640 671156925 710865812 883471485 11908141 228185231 324554835 584008618 839350838 906315830 240347513 377678502 556900519 557236452 399167674 563335218 693416726 707666714 649066176 762000671 252965226 763304690 123357212 269375849 256518118 870039954 714121689 870845550 964024269 989993403 847861275 942275913 549441711 715695692 444812294 645957975 4601681 433759284 421531610 958493621 215745261 663762708 774875717 804872724 736437347 905072707 977971305 991197679 48152025 231142957 515763420 975402969 912418435 967032598 508769351 992062337 251992097 713391602 457130547 577306199 903886209 985383369 24076506 745485900 323334376 384761674 495973227 973046950 445079203 559191652 934682222 958537532 634322984 785019264 262984545 620133777 852543955 947008197 738856915 786574423 747413921 878864389 577448610 673000297 373775823 697443702 84349838 245298580 504741746 795510134 82232710 727813539 237465851 697991117 21109220 24864117 367884221 684989104 94448794 139486023 750065512 756267578 278720499 433480475 261041969 778839342 41445524 518930448 391262942 543416682 768704065 969668367 923433780 929802940 571986521 942274506 922104349 957472498 789092080 965645111 913746599 930860502 32917610 559669068 133884825 651119765 43905967 641644944 959387908 996685438 55528324 416001906 305900950 631604702 619793785 622176282 270258738 308364463 794174450 865425177 276228526 638936244 328404605 362642085 135518097 209732174 671873460 934433009 461221108 572572019 604907338 859373502 369583606 765348553 535635969 789776648 332644352 954698604 656674235 760397167 998325587 999205067 269792376 814538282 93903570 657527631 467525389 700128634 434747925 686252992 700265736 864060476 921267731 993901296 560303114 728231370 418253397 857666204 311086501 505517399 294963367 399399470 279461398 992470369 603069648 736155437 699828478 987327687 804814441 873204623 183945609 689334955 785214216 989606217 499425086 576880938 430415347 875061307 768982919 937905694 386614723 848317021 165862656 756575468 115416634 373053876 965915445 987445129 521183778 809727270 129898407 918747315 462096799 616393499 165126195 838116236 578216133 912867043 199356269 566627152 705142358 926827261 989074653 991710853 256335188 606639771 105885589 504397697 344272675 458665889 711828173 859185875 36655981 170253139 208678547 571032817 423846313 929343893 865731437 876332416 88243463 865306045 197571484 421752632 126350845 268838131 950754777 990063663 679269853 983765870 840173637 871013406 349321090 550024175 665406063 969406012 47278667 408899279 98303030 179405279 307440056 562413390 22716450 510059299 916835975 942508750 718901525 887821309 91811505 531440115 804683070 952076174 217868866 821712685 891978737 902011630 606296232 839964399 884702623 932066233 921032527 925705796 235652098 359144933 418803177 634674821 467872939 829389288 401955280 919904782 569102933 720603519 557771654 747346796 597447173 989696933 338265993 546382094 510996774 631415583 919638528 972124434 901223782 934147908 515115531 625844397 195964197 823045716 342420874 918068427 701096046 905103428 442091552 593579192 60152429 712405119 138101180 632980341 44456149 556594116 144078569 786476079 790624775 799089564 787863749 890936882 445571068 683352907 964332770 992826550 206650164 211726149 642410955 645560442 612421740 898672284 991505785 992406269 160387813 396094727 317184915 580852804 165818793 720209511 385435157 908667936 431919929 922400804 534314899 885512920 829274542 949390848 851633326 984234648 752223406 961986242 894464581 960418354 542463299 599043243 350160979 639888927 628705326 644124877 644894612 950505086 955664355 986591980 159409689 517691759 269347335 995438845 166941283 382027690 883039356 923277965 68179968 172059225 939340070 988839540 898884930 933267690 420179867 551684581 597865600 753003364 833934408 854967440 207612186 876686480 667192562 745302622 264070190 943878243 888352360 989191720 937646726 962648933 865982129 928960323 397002553 950514248 222724495 496669822 458167273 956451877 891738101 944814249 83497902 382873180 767182377 774774114 474540376 811628558 584582207 622676403 986161661 989291270 310837232 516040250 6851312 831345282 707610150 802312895 650411896 969246154 117493447 376819521 459007945 761080003 94925052 480910125 612133822 957157139 191099574 474935256 307878139 851772792 547855832 818953095 175926120 376183561 820296038 885529003 511966517 951233838 930370697 931807079 549324985 779796681 469832576 820595971 682021335 859945310 631208049 757188034 606258799 972250842 286954797 902882581 405322363 429548868 781335862 898048234 687573253 894500095 883054190 948074871 284317309 706474740 724864070 842369065 384712422 980414862 367009407 490218014 480395838 837522279 714639434 898365825 10709991 215078122 334592416 416006214 485504867 842932749 89271354 861404530 603066350 755603983 627626872 850341640 479285276 625651967 449873101 759942900 405072270 903466976 339840830 932441408 530859238 715584291 384664844 986473050 592083775 671135504 289227858 432464877 146233910 184424291 983517568 995843150 514722009 545220023 38538823 548348683 871967088 905592938 349127038 378960029 396511227 686314958 549888037 583045338 313100980 466052757 379012050 781945611 175037696 369009910 124423449 660209915 460998349 482649701 321466305 815754146 210171872 807142226 463722659 543217362 936910566 953409970 315398847 348612451 933300411 937619547 969724874 997472337 239965215 986710492 410538277 730260595 555672226 944440906 337765777 385571074 26494599 41657110 218843296 264653671 980924223 983794041 541378076 628843829 211821399 401837198 630203922 674986567 206488195 473230420 899366700 941345088 394244682 991241155 168560096 449607418 683827526 835558645 818879038 869252856 103967453 426978092 424848492 518180503 347636961 374683085 404630986 466850834 29726464 981252776 383345184 507188644 542528061 628087503 342341082 434725095 801424054 854650663 572066890 677269863 323655565 608264257 266454837 484673675 937045741 958238013 671414136 784127219 650884539 829367431 122653971 636272356 387684710 915228457 682037198 833429873 391397364 578941929 996966373 997453270 767153279 914197059 731659393 953026935 10095710 104305986 682637695 868812656 349016153 375774261 874766496 931672214 259961550 569618579 548540951 821610714 412489369 960464785 608255768 867158583 509434583 899676919 778892044 892316019 749750578 889710222 695841329 851639983 869142941 953941578 27864894 780824162 978902907 993839696 239539241 331068285 56124786 308093858 644558341 913637945 516471879 582511180 730066864 963702640 161704407 667808188 314363404 497155756 805225727 851851744 960657490 974571569 11568955 940695730 86603476 570109091 531051923 766626500 244169256 940228420 84410728 535225850 937434115 999717636 857544203 963319185 537592781 637668095 167101517 849263215 339744563 560148754 348789437 842328050 417532089 761840696 363312346 684398675 86647152 294273614 321750125 702407248 205265819 772445882 293270562 461158012 134670924 908670417 997933661 998782941 736709301 866967640 542217962 866034535 975052348 991791643 584219976 990344742 535750466 585537663 900593444 983930520 893990376 930825410 970670223 977082839 753035516 879398176 613204631 680329908 361753752 775954034 888886 633384088 107108059 924608571 814665881 858317582 728420865 779671297 919487185 921855899 963917160 987405930 495510750 558344699 502186571 878133099 167571133 957665306 530969585 689561987 815180029 918075813 532629972 953633829 585411237 865981744 920793994 939413838 121590034 430639451 551152209 737337824 207374210 899774480 772783898 910370182 458932508 473579839 304992680 729484962 367892235 589917059 50437533 239029543 56278823 986327561 241254874 551110155 950742724 980530425 167935625 874110067 443800050 562395783 869103509 955365370 441641007 528923765 681334922 705545878 139176541 996549754 792339177 870497707 869082230 893262541 886240771 988850766 278092676 414816899 728031093 739533441 685543703 754179401 929923943 950248665 613125813 820209748 676089458 932861123 726927991 917691338 571369988 903899555 457983504 484709563 267489783 381322044 141843928 999904725 875477953 975654894 115225141 715890545 8298552 158148019 379095935 897020222 71875691 470234531 515759790 703611181 888333205 981755610 709117710 901026627 645323299 646169613 469395789 559615694 805423085 963875611 306253127 320687304 701806851 895836106 329041809 493763023 958480847 991178091 422318584 526388845 498371362 996956386 418258366 621883782 499205408 887998682 493869651 959468663 732647828 782047111 378222032 751858809 359718311 686187429 571730532 919583927 139487875 874172418 344620165 912362085 557520519 581444580 882922605 956012915 484048659 652094854 505152566 966631660 258348109 315462718 812650599 914143349 231793578 515469651 176827515 931348699 574281491 577808729 573515282 925081888 179663246 941037925 964013711 977856623 921781337 926399847 271807449 990904256 110595430 279486558 747713599 999303212 648672513 971293160 795556047 871111124 202844282 228328463 511055091 594082729 734780634 932866120 429373847 717913051 701582726 812580543 295069887 997434633 83171492 947736977 8543070 823165062 287850629 839689794 900461933 997670041 511223610 654113743 395177201 648800100 693404703 760297192 946623407 962625607 948158350 996528683 745918335 814375965 967065688 971767203 557301996 874317612 834723981 967404894 296903459 526161875 716820207 727290468 4638764 991199334 294500371 514198336 927685571 936121855 793927301 886417997 143545224 362759382 784484025 855868297 782657724 920169451 435403169 938753014 242498289 945600327 261922656 525370257 736691583 891705350 205917529 713994831 298425659 706068275 116778306 302543146 364701968 777775158 916272938 958606259 310749299 481903400 102826856 699114510 549488738 835639676 108525420 903166549 714693609 968019022 100512094 400943786 730231195 754060819 716899854 778070976 665910369 735750805 244592386 558882131 638354744 741632483 63172668 642070834 22102719 893055931 105952886 846745796 514180850 874215130 94536511 304322971 535708969 765301326 118342387 594868225 437499754 628998192 827009751 911326424 74761487 457304626 634738152 734267534 88202689 246563656 841583655 850790212 997986734 998744892 200242581 260509479 330288467 802621129 750092916 908201643 597462853 656608815 992429812 997578861 59866225 500684224 826989139 958042587 506238791 969429253 987901462 991687604 44952432 590229272 667587704 774808343 960015702 991882303 205492776 468621817 983436205 992541191 594415503 615994134 213539750 522129759 67586593 977084511 821221256 852184534 203969218 284383823 942109770 968283064 992920739 995439088 922464793 958862938 57811649 532624063 690148878 816294769 95108818 804981419 882735568 990173372 155441684 547860918 295049205 686390849 640051791 879328506 209407697 575433438 215167543 396975403 832915337 902683864 991940026 996044483 923913436 935348771 366570519 884639683 600130256 893700168 699345632 784264099 983812808 994467096 27608120 78956707 582357647 927829225 624761524 873194669 606277099 837731274 465503514 652692675 487330592 867904243 807168571 942085565 218257126 356681876 350162773 750474085 216285048 870213179 202841968 321078815 567207447 937630121 751658345 959513101 577607820 761375170 918783084 948784452 375357487 811840982 309700900 564624588 898225798 925084338 985174606 985380442 355388202 439219825 672690422 825081484 195448889 260043222 737923368 770422379 192085039 559323060 885146596 926452309 500367587 946498742 660389922 858618102 210382576 783740771 419699958 974529586 715191691 919241835 462801118 941929280 741495113 924364223 167034245 768693578 139494153 781761627 573674273 889677659 759798372 918506749 646555564 649557643 858197592 876295761 31094284 822113029 371109290 651825914 455136739 992730989 429102774 914895718 731949775 792271255 487181151 672873328 305837203 946085183 748135759 768814641 800010415 957294029 976176752 984214343 826931415 892613588 701855315 879279977 863595885 989685687 554604326 704782370 33763668 160399782 24159780 720476012 557581751 972840268 183466408 996256418 894003096 944350920 818774507 912254539 18082206 275048827 707052912 900785334 522747336 612385704 524807852 906474901 512679742 726184277 971614757 999101462 799592460 973159816 827647981 978707447 646312073 721053262 744225479 981728268 670717744 736792249 717213291 811180079 78335868 825358503 246045002 529382932 366373493 392011952 571507 142363877 136398144 361223511 26947621 766784781 777327025 991176054 522361310 992125894 529009888 700702637 916965737 972856890 651654847 874679359 590827663 781467753 156741967 646657068 595376167 761727751 144256100 277023994 28026861 200168621 353451317 894409529 745287869 965390033 566329952 844413363 493461433 822377613 206998003 888824673 981207360 993754257 122103980 343489661 5036069 715545297 306584906 859857759 530328768 587096158 550485454 774134699 182504506 911296943 223259856 628817588 121416511 902993237 835995899 902153217 16654767 760447283 181046239 435919559 994911737 994965641 837506685 984962637 385782997 995884500 295448716 892956915 992479445 993099816 52283632 678570530 698746788 898554664 725922911 782405055 669045881 885346430 970840677 974884581 803487702 910930430 319731828 986175897 526122847 565209544 675358645 689324051 270637454 353744164 273716123 499137064 745918494 771626882 587637168 890052866 233682495 249689733 639357009 818428929 868383328 998532313 506087788 618255833 932556318 991458027 319343151 694923230 784150336 803959557 9032394 957719382 316928689 836946755 179952939 256816590 257129853 540678749 575368685 830290744 743549387 895141972 327645948 773712779 501564784 763678900 701295048 802595899 644996996 673983190 99508289 108860949 202271425 884347289 76763899 984659989 465531650 686024240 57229628 318806450 412816371 894376481 139071317 188949964 414098129 760982726 23782054 996104039 585798616 918827733 304643040 455828164 697193489 706678319 594556570 997960076 61070034 168924310 135880245 766879452 457366565 939650242 939838769 960023990 285924574 806365391 70261837 904391554 204731993 651718053 466531131 489883648 589317799 831912107 495797505 717085870 589530217 854930676 397145937 431391231 780245351 878253594 815862463 954031110 960902493 979026038 782706566 923259027 863935790 879216164 850019302 918961497 130809889 536459121 554176312 572335819 366797731 429783660 854370007 871995585 757727822 924140413 274726327 498061260 900388483 930729025 790829413 874917731 723294867 894738251 205942219 949962134 13504972 672691208 660708351 938024696 81995624 431492772 524446152 694700698 386452009 539317627 676031710 707395491 516617914 542190822 880413173 900861927 218784296 453031199 926598560 976013107 6787623 670611986 354556226 850528120 789675199 906873972 963702449 965962588 845451793 941347220 474027647 788450642 847455276 884342938 389528931 420667764 594465891 719220956 111371253 319582584 722329984 826913398 838846247 988545230 976321897 977932946 870297285 982097369 762176331 828487733 224126176 355216852 821190791 990867651 315276686 766199417 140746302 298596182 256256193 885419707 668200088 947281168 351455067 656763195 574931914 705360449 847246447 945708276 671382989 865377113 253280901 821729446 160999956 547506962 160173390 999905776 810192125 836990887 909913203 960112034 713992773 911531637 226747734 603541399 302563204 906387131 879198184 951559464 992918825 993739337 995507425 996163577 199770716 607709959 366739618 534021935 196648450 488123109 89914197 687382284 415920546 552391284 806440340 954853370 175426922 888435905 126480249 779995793 644764293 766665671 634415166 739647155 723172090 753229355 184069731 968875355 872150828 903997350 48392432 433020845 695705056 969242211 362275905 631344075 740839723 764303882 739382142 971429271 677779826 877235499 214327774 216604878 799267586 997026203 314281699 871404529 927605031 948886431 571456840 736483156 510771104 901771300 160828687 617495964 670867635 946746392 847034608 954091184 445726083 678488222 652418220 714755027 392930278 941972500 261675609 376351152 971613607 979554616 997694860 999559810 267287296 594029675 486832456 857769545 497731994 968717089 312138803 777018476 250733889 497920568 301715715 898074075 35920080 78193589 764238102 875462866 92404908 633118881 78575793 418881784 965344263 972557590 34407941 124777867 499986807 507297519 582909273 614507620 539781989 962891292 966547473 975277977 408823642 430922580 259584451 855161510 962072309 993158875 534978047 949788013 670790427 879025945 297898838 988835578 240140242 305835845 660314475 951848065 82013108 889585572 115408215 342169227 101180021 462200920 916758698 933500642 509563609 847845607 964982524 977759390 299365626 519061475 4404900 775888107 762624918 778520203 393685752 769197820 134906165 687904945 176728539 653216821 747291772 762861547 994199976 997060216 605797916 890383712 476117593 949744737 843947858 994752413 608087690 908784090 779701015 795432243 407669712 478192623 962463167 983895688 899986502 988630096 485180792 835191541 305862239 564513256 794406673 882955554 20059636 786302274 755164436 895855313 225096928 476562403 552581761 785208907 400144870 562387262 899386919 980125673 765750376 825123044 537402538 676226379 431649971 751792889 50887588 80729769 379956293 645649131 826283524 895385671 639298957 892189773 789537211 943133737 528299168 578903283 381580770 707624112 563588540 590705817 311171240 551842962 665512892 787760411 776891201 936317646 575445250 646158817 697878327 768157809 670713239 728091332 446144655 630441548 12629108 763014002 195558160 760834744 725215819 831547048 868209106 993311402 995234009 998035287 85309534 224436250 749501134 867661270 163774356 539933783 509651926 993418069 300075463 644752374 394020544 913193142 350039152 817867310 284990539 662001070 849808828 907692654 345476468 440591197 260060948 462062710 664639910 698127060 482710152 943136574 401590415 680152324 143849121 491066431 181158138 398430366 61584658 943802671 228606021 485503220 411136567 901926131 567685896 972225378 195826578 293319554 391958727 447380084 761194117 883795576 755431541 895964564 492896718 535773645 626533459 663285134 304372406 879830624 742730254 984388990 908019004 991181968 422807303 713636614 482882167 547743826 633810744 913414602 365838102 679139747 574290320 617775996 504100654 635115628 742957135 899258096 152813038 290425715 742613430 854333914 93656302 705342682 205304250 400101392 655599371 692975885 663699004 664377953 251934267 502844592 403763644 440140928 299174497 714283628 388318078 687277614 547373664 763762632 461521018 682353013 451729070 623384381 242123211 561058120 5842447 840967587 798182368 842984673 557073562 979645039 14380762 292037041 311978712 446876351 545093071 969900840 123016858 895860240 198270009 752108697 141919587 453930307 697717954 739141902 704943888 828761279 355211124 462022319 832297672 955006299 471955264 923319085 749218420 831074160 149679533 618571057 428304059 702423266 509187297 642576979 242345576 449691409 787162045 790476622 706134637 750074804 283864369 714910508 793067134 969982446 431041895 811234949 428567834 489352144 468233150 816353633 553538025 672732471 212682148 900117773 119642865 536979609 91229251 125248070 412297286 788543792 293087875 679403649 361164235 740379752 134545182 179769973 747205707 805063397 503863375 661832555 513769154 767144246 223841732 347005456 948813605 996184611 657263336 802197192 684242527 814125163 822513233 926723273 410092584 944285449 234239546 290525148 377729932 932705872 149688837 853413261 84470214 858487819 551040887 849394951 589728684 639584567 575509280 738859024 933603912 936586228 792526645 991359760 504454831 635048928 441376789 521956084 901758163 967936224 752374076 844993806 108407648 395024672 76508027 665541706 18770395 879468492 866600741 900169643 437702008 933267544 692439957 728365666 446061062 874470930 927653197 928033788 938538369 948054722 761214796 987997016 980491744 981442638 291119875 629663734 482236055 813926184 239711763 832101140 280188408 550460468 528862084 528947476 106947690 170018886 915641555 932036959 391626097 978774330 497423697 635698795 636557542 664158197 127664858 152965035 435117179 570421472 544104800 828784797 358954571 469346418 307316469 731578346 545378046 921226546 84048273 875722684 716936618 783006684 359723215 524322717 456253983 799919032 314312514 922079027 667374809 756657919 708788648 714640415 564246546 607771858 226313885 716442461 778568289 946727692 409814129 654388567 944007710 994797518 144170274 710223702 531204265 569844357 533501827 697408577 809968554 829178332 130345104 655211755 976879163 985941266 994432416 995950965 387113393 687661636 323217629 613178972 80865814 206241925 264252103 890074593 974121182 981258668 776633026 988778931 846151920 939190659 243833113 614075087 579757115 962501183 590701974 779609854 681621345 790068709 573890015 802095087 37958551 839050613 922415306 963700295 651902079 926785512 650137811 802028242 454212711 706568602 911711671 996214024 393695609 396932388 353846783 899701813 376778236 811666316 906480420 987223282 726443739 932523102 4535768 413603813 290844898 793274347 103635525 717810487 292014239 497203496 992613142 994153157 406178772 694779606 997679688 999120863 672147346 902225700 911274083 999393763 464126909 468001704 909734529 974716464 655850677 887511977 617571340 874232295 43939966 107066404 18228136 310913531 505859879 582925806 972396861 983407381 752579192 994934228 113274488 261208161 398614755 772423006 376833387 982199746 232461793 264371710 436685427 750457143 402120170 585100174 874282875 893043936 376934155 846789899 156368395 489460344 240246624 949798200 163144177 166583729 417298737 503321130 572331131 955573025 744401368 835396363 913227683 952693158 930613204 972011037 194726525 784249775 12402210 634005185 774406837 991788193 561244140 866184936 935801955 981726164 751444967 953696816 207235852 281492477 74439450 360732131 547014205 692795554 257374602 297533677 643112111 645500847 669251955 870181509 171106242 828836229 382332400 857152477 383209885 984700801 130314329 907531594 922412415 986241342 605143569 818300390 883440084 905875431 466368182 736210108 352857201 433642632 359348446 529072196 712847022 889235335 170756009 593326337 89232133 745695136 188495564 612350973 533258316 659028547 802684008 879172284 540106599 564590875 345875346 432060135 662571595 927433867 370408332 857773381 807548451 979109530 186676095 957871989 666737731 714203595 34128616 471838146 624229011 635496216 461207394 788349677 322683315 501003666 546769536 787298658 724309588 778688234 804548585 887766041 229208513 641438373 490853073 512295137 84233260 678399709 673518549 705140489 948933073 998899736 144830361 993841986 452203780 920358367 127758376 361072742 789349079 915437894 247571864 349992259 745833899 750563262 565987909 922412383 24588638 589283909 276925854 286427125 981525401 996309997 455352840 520527261 71806055 381994150 165524856 322114052 572270702 977913128 94400813 243688658 888137424 961527214 923209886 940329620 677003606 742782281 333932890 906390790 821524481 873184453 250951064 450168607 571028926 939510606 439235838 652983351 246908669 271015729 240384782 596714628 836906958 952244069 484881496 905850862 361805001 961450153 476250172 876417773 181423772 505159943 437199552 819484486 759597237 934552445 68611669 565033286 93684330 395527722 54818288 595870517 710660796 864860710 368802763 662830691 707202822 772422787 24320782 661049936 116669388 580490485 444951813 829335090 276989708 674487892 665212204 765532616 413670118 750291104 14050195 495823891 264002695 268594437 394929618 918540704 29248456 712562516 789549103 809736769 670996508 735407466 496339371 688563751 717446152 970624490 542825283 767445092 359527867 682685330 645234674 899657392 701037921 734322538 639738307 691864931 843788426 865044108 647076324 768045869 64295426 305683443 529384009 637582794 571928565 573048926 987775344 997613866 290241124 364362387 487689298 980605630 287704197 990820223 678113091 780834956 694326083 987083017 976043460 977325662 900842522 980152795 931968155 950886434 673095994 675393931 898007648 941820251 778233344 780922611 842112355 945320131 557899940 752276331 536233116 995778138 202361880 871928310 910790282 920560946 534311218 604175056 715505886 750121468 494061926 976466010 786548270 909573909 783309601 947952240 77215337 235655630 697246365 746649477 261232167 546416462 982429869 983992825 141510046 573993006 29100025 599567781 297262634 482360347 408374806 593028399 684389610 868955776 740702869 750898347 906379176 950172881 63029990 423109023 520991308 567152251 222448472 483309078 628247944 712677851 531004598 806971729 579861171 797588466 659586418 946890606 449678780 762631851 67894535 359894181 122772310 480951541 178174470 417883155 246038747 580883715 769678378 968404372 438455256 804782434 33694170 466018056 616047602 999133422 97374796 393807601 452391727 618662657 939782945 974614815 763745557 809171264 944437919 963835811 370371059 377232849 659561916 929385716 413420745 549257789 179900939 393101253 736309904 903533101 281919894 898962623 237160015 897358293 627283084 843674995 466719031 608003238 625382293 674592411 858765937 859813703 825713786 996561386 857766805 993364830 773565879 807254791 802757669 981099931 623976586 772806770 866548111 883375358 891537436 922364712 766701984 887058622 567831707 711310214 47382239 627275214 130258743 293663044 279885734 621842042 7142773 926686848 399972036 935197620 843791020 853140203 341121048 746781895 929252270 987711405 972212913 989087172 782055199 868107905 546615408 900392663 676118287 735590035 465627466 673781826 229444423 764476015 186414060 849588957 98956639 648169004 419756306 984903754 564636937 982703979 702978977 936151122 153398250 680220763 516578091 640911199 960149469 987327843 332274047 343694653 854268574 951038982 934282844 967285055 960065025 962651511 317354889 323287642 997196570 998876277 928185384 931873218 298705267 539987898 130015133 508425878 166286378 470450337 386110118 519936679 517634286 554861380 479375513 704572775 76660700 331371588 342588505 546516474 596572486 825671114 503462025 871230803 338627827 892284567 811354115 901169907 628588917 731011995 368704584 767232495 873721199 960545002 229727871 577259641 975394817 999466261 195414327 850619867 730889609 742761544 345383119 696267503 507662922 825211760 378490465 380658120 250300900 855917916 481360461 964211758 533573175 547488818 453102862 915345249 419206824 829410246 618564216 661087362 649030793 800943306 435243178 588777688 136396891 532722216 418996649 555127844 499170685 792247970 768566781 920491078 502786876 939140244 998792060 999662424 606847933 855772289 361957731 458211364 499879850 928159867 169089490 976232714 75066546 723992066 397846039 792264881 718812304 721788664 551628333 696573301 133572434 223531572 50833576 242245888 663411569 699801531 744473380 989758364 340407786 700796643 497378242 858656179 295840117 858860054 328641909 738837973 360723932 867116436 802626922 981595280 365604425 615618771 862969858 970301158 285636955 927606577 289336654 503541826 517082796 802772184 210467825 401439369 533329913 765046183 484487687 709765109 484102558 898789333 396008034 786012687 435492222 529721237 239658989 445160227 561789083 880667245 45161875 193601002 901027046 990127746 391573321 426288504 505384227 562128327 93209621 155536024 993515746 999200264 719113180 762795287 814413887 834951106 405273930 805561615 330327128 901111164 209751805 600096660 630200512 695726838 926166708 939380990 878051938 978206691 780054413 828943441 762657515 769769844 291180596 669878346 377090739 773450119 938355431 994125960 542977220 580131431 113741041 518361588 478992563 837887902 397392094 754264000 824409251 825522577 333182761 364118357 556058730 584021241 681230313 967967643 740098136 888668931 939291887 973257817 136255658 541449654 525380996 638858034 115621131 898736119 334429193 783251442 914060622 918176358 788298638 956077394 678126692 999538410 28916594 812253174 692000862 798930354 66254995 575429742 930093344 999233520 848572237 856744641 667316500 761267715 926257682 988988980 566594749 737409688 170615142 799018882 800950188 829519192 759822731 822905342 354294104 989708931 798292951 953845345 273804022 652722334 15397265 967323310 259083787 998227983 867521299 971795809 113940660 914531274 235385573 661484277 581448950 735864738 659855533 749275495 11853139 27893236 228331076 884761436 219901510 589793971 692182176 791059690 740712924 787944594 274295662 330650500 698863356 840734775 514014179 706029476 398524054 612917603 121499101 179477795 768491904 889540914 810293262 878848478 15255501 483802498 776884348 992159094 303836001 707780337 534301289 947562391 89391235 112389535 666141169 840080812 465684458 604973349 740039380 822839892 242290383 378915492 883616198 913491952 314846529 579195634 552508785 976950730 503421923 850165812 786735773 874294240 880230086 914485675 701184556 843618034 32655106 555685153 446861197 973155307 188192291 694089718 665898119 957207893 330811254 842515323 545584542 757979051 671209274 814199435 475813564 623025331 817609971 929593589 595410994 746194962 368798702 861794865 487529331 694229416 775725114 950328399 577743972 901427505 930697741 975489285 474724732 642444217 701561480 823586705 702542783 755355738 231207851 890182139 104703066 940776860 779450150 906779233 558778075 708902966 209593961 528945145 166503710 949387390 276611190 662774542 298048072 932054584 726148271 972331731 586629096 674814130 439494040 612533501 963958310 969292735 17281430 154863670 531725960 648169706 333986037 730938290 500079934 857581943 620125448 627074726 878264796 992092367 507279169 638742680 952708156 988408930 954798686 971082327 580516397 988199617 692814549 743903794 147050338 462176252 321547542 828515599 94086442 591514549 45063225 458366413 727684734 783780986 558587623 609966671 878168293 911842111 377500468 803647596 701881751 844369238 333620551 761238057 268223753 853596446 977947898 978658582 977665197 995213631 445109902 810982075 250900312 405603943 678874186 803050959 548637686 853441887 92727763 697860890 567096089 885889808 901376649 998638011 967239043 998911974 19799656 991886169 941653551 952892200 818952536 869476690 501880035 954106701 53826208 289819561 56774250 135093713 931377748 969707535 819856792 870416952 96537117 673227213 915047730 925345419 339657859 496777606 719328127 726430395 386618068 704917042 882307909 900437508 179514505 680288376 643877908 678639176 183065765 966852293 864463541 957026864 266495808 299117289 992865830 998566156 955324617 980675108 938591030 951343550 72394473 422166510 176663126 299340991 205341189 570961199 302870036 416069022 912817717 929676813 80763191 547392576 348487180 529208224 168633879 795170642 445012121 661670994 252814053 999393958 100607490 606006699 945014910 984298232 225356931 920437475 990097193 996087986 676012668 879313074 100228742 854931385 836792352 931964643 277566213 315678804 809459392 922936927 812574676 876689892 4318159 18642990 221079823 946222444 54310950 280303131 932486841 986988007 109998258 154898017 497865747 649410208 20380097 156964799 48694699 543554724 682650040 800712326 683183017 688340648 562410960 612663262 300541084 606739834 566907635 842640265 193178361 990584239 170011672 190829335 713237039 933087879 927056487 931162330 15369147 871170676 486685175 783377223 637095394 995260097 227673449 635255253 763470774 958267949 180447725 835220920 788815712 931533761 397604291 457543571 455294312 665731298 656680984 888840115 395217027 576223740 249437762 930861783 896728161 984469794 148273507 998595057 876922601 980590996 875454409 909647821 582598694 656928303 751921547 949275741 193183073 620481744 330928205 543729803 311821639 729284609 181081421 945269521 20475251 687240030 501193313 998382434 412322002 789780299 442752287 550384142 559040245 734946986 28025951 244336619 877698529 906383104 459342064 605576659 932688163 935358753 390513845 647928425 467027790 661730775 461900486 600507520 348511924 645050710 967065000 978380717 885674034 999899989 676767978 797008237 904454846 952430894 767143974 982784540 943490799 982648310 974308562 988356378 838818460 959550761 773933838 931804548 230226487 976582876 457821862 650311155 684831956 949083746 263424677 888886677 556232231 631294707 398819959 732016638 839483559 900177909 401831513 855244634 1800579 130760643 440549368 759714040 302276678 791784095 666353537 692185959 944625918 948758111 795163465 911328735 433087886 492089002 834852610 875600232 701172682 981160860 244122274 510874036 815616785 846082092 984420075 997103293 844074049 960235146 667351883 943196971 530249029 599831566 649693227 672583230 601122700 719411969 113130535 260234895 846611670 887915308 291119578 421818900 465490792 735630456 171443110 473700906 969226818 984713512 162196812 671935189 357964471 553841114 993213739 999258154 606497491 651005552 217270722 294009111 655774282 991477430 855792236 861273973 721970732 941877818 343601695 739562604 860190315 985624036 519541100 751077707 105826365 420531232 537951268 924069470 588081674 632285808 415072957 776607983 560481716 695869736 983021325 985403805 796566962 802175928 895889750 926530108 510715301 584055428 795355740 813457433 880099941 966376548 184148526 754191360 593344170 790238435 438545922 664945457 24354946 973118239 755319111 908541886 959884813 995926939 613251400 728363937 721851213 913169981 768191424 863827251 359731775 888778092 375215288 936777312 448240907 804787369 486990969 538115219 336044029 854181624 507034607 772834408 256275404 532279850 200739046 886357942 589807505 795565936 940108706 969088292 360073742 991724989 993194286 996040713 739377480 945119784 884954086 960401168 542876808 865458804 318192254 870688188 881186040 890009405 822942664 869037007 368227517 628263603 954762111 989494291 595221875 665172939 348589861 647246649 494521533 785658897 96279544 174217781 703497277 988010291 836947653 903576932 99996050 891027552 923450724 951952052 637855915 849192508 221711453 522096372 624076118 746741268 390597771 929377640 210795596 360639966 557510461 967517926 29720890 203714782 254218619 963548693 811415180 930630729 327319010 921195854 31121895 501732903 282738659 638592644 645421702 809964342 587489701 739485886 435541849 871558657 125958383 602101622 937466077 952983934 237587354 873672663 794177854 896784624 100686921 973690401 837189405 896672696 900126686 979615174 339320631 483869884 246738301 797076945 451725161 687908944 650216110 728851228 248465046 641429473 167281995 183059192 319750132 643882869 541118900 547319208 705521513 938998442 912926602 986802943 918258330 972764628 279274500 476837192 571418479 879423952 21267335 903467056 390792455 980673936 212033919 605470377 884924734 965607024 728542533 769449913 526280412 867590603 880764586 905729676 631580946 714269604 198119383 698582036 753512340 780805740 385512328 459804133 550221022 573962341 574913541 922881587 195871769 308801772 58519647 127025320 940698042 963721351 747524128 846012313 513330092 677446857 415317111 599914774 673982199 812419023 473793342 624987697 762541063 863269283 280939933 852857402 74615437 223993954 181377999 232412485 708170395 722815532 472227905 502708677 791330394 911792066 498869559 637495198 476547960 904951920 887011280 971349925 895124846 933499990 255351774 405749896 537263605 753145117 765695914 930467407 295963708 464700606 255838114 367227085 425401483 743226061 128757062 716464198 44659395 715516422 443629648 552650984 978141007 996238108 434279288 698166544 403648903 918162889 732530314 809226900 348112091 839058925 459448768 862726133 377401032 463483025 494585321 599050785 568123435 592773127 629816495 904331090 504788407 571691624 430509595 769722279 724206094 820311761 708372731 721553005 627709641 912212050 451813905 468291128 224481029 309361026 139560351 871583382 211360308 362563438 150817140 668618809 55285931 160173894 388812135 841630328 186800584 444145625 448503044 918724712 899387923 942964924 261042449 750365015 379754604 733693818 555472315 855718357 655019376 685427950 652167426 999749611 728965217 745957759 539045728 631246415 358070920 743440985 791035096 981935301 35369788 696246342 434182527 973255751 833286041 949885960 818611253 953090201 285595546 966501728 848433967 941375544 645154013 905484633 434896009 791126474 142650557 999453255 991388415 999167215 814739009 939454553 10934986 598009895 278432910 592870930 157515909 495335844 60297619 928821788 847154923 864446049 141596676 259152989 703629661 765392989 139885367 509128957 767119697 908163713 41735129 624832224 69216096 822572282 356968558 718079629 984621011 986451292 227272705 892399508 920442245 997055374 377342582 625650829 614183080 852716070 854420832 912972165 631712945 851948680 586478217 654162607 109925380 116722097 304973728 856117085 328072001 833047051 88383539 597829759 785528804 806994708 248003597 834760188 771893500 925287348 176911536 767977031 690505805 841583469 156488292 777125869 272975046 325403867 567012654 638053421 109599000 800043057 728802972 860376852 274003971 940419896 352324094 706096219 693277624 780028469 683031519 834371107 842403738 916111505 113402344 619564681 763007233 817828316 588418783 595472043 97794010 986155947 268138217 381788103 506366215 886680738 410950410 909463890 940177128 956680348 841473866 872425493 969555928 978956447 747859652 774648809 943847821 967764784 68635943 812170938 905561590 907721407 937047120 980797424 768550385 817727440 970526834 983375558 563707908 974895975 469210115 923819975 761790387 797229816 825872286 917571095 908652374 921305409 571047370 601773280 213540542 214997478 742122189 936428868 944257661 965223347 232085612 404432220 690916303 719849593 732129019 812459728 856412459 965918214 450508012 565379265 637506187 677768838 671378933 903331375 133194842 752178174 188703696 768032163 896104916 906603659 722480261 835904853 325955279 427549498 300788944 388378526 996106516 999899665 508098774 858889607 982282426 987241771 109034678 715103850 700180866 879121445 60960973 119001910 281998089 796259649 560257445 799615892 267898664 885377476 802844151 854499231 368182852 830849531 814863233 877012450 49659640 118518512 884662269 886373494 668398898 983344991 892096421 968185128 678032319 748311708 797833442 990463812 667327666 921360767 895305317 898081620 462112526 877568779 73273830 365490818 750859321 808743708 184635479 759433857 425925131 996821186 55987802 129289921 871865783 901419784 541684299 926034064 292240369 915951176 92515332 652908034 728659282 826326250 194312046 881844254 753009701 990042255 283892526 475058531 741017788 781314078 52705517 917728046 515380021 835834793 38829595 264210488 796199996 909732599 769520384 808823233 809056151 956798955 958514268 998959167 69585211 970843311 35496755 564071628 151487739 319678442 741386999 805268491 585996203 790474670 13911040 522466279 253122482 361873159 924480446 994529900 884668734 990289807 621245860 648512321 576627585 857285332 549905452 994282793 336012435 703885526 570707051 659110512 865994701 980981394 574656593 626901106 291929528 547107157 862835013 884590935 824727371 954952081 914421114 983656173 375050969 963427067 218316624 569899297 698188586 894410538 61461355 418038799 710382435 874443881 983991043 997005044 40280276 249884804 878811293 890950285 97446967 376911173 755707655 847324182 625035110 756222746 510027589 515464604 534624481 889017835 605417976 825040095 995689359 998215395 196817488 713132096 627163103 983722588 117830739 927707898 940902466 977110697 942810624 959052751 480825910 966534219 38315474 727377297 3844966 41376896 791201228 879410706 248507225 572398874 53786470 728003452 385944007 694861449 957231186 987350025 418040607 482375341 172175041 649843310 848288946 974057867 12508927 260436984 191692350 576446867 496468212 743975818 288835994 479349007 742724122 901853602 497305573 570910210 600162950 873917254 3278786 937190368 534989483 826069420 477475315 986035742 791232488 987503951 930800731 968910504 87965235 712469650 209514809 278754381 660263259 875172219 704112903 714747941 92263679 574730210 840368388 859732075 641053051 921763569 457625093 590264849 510781923 661300912 747696631 872979082 982250985 984926196 669995874 902959486 626510715 820415771 989829738 998677275 235564602 462054820 803023394 879287379 679595369 822667694 897392372 976383745 768252332 824512285 664121369 903551527 475801530 528293815 811638747 880121084 252891786 515024584 448393047 971954328 669941790 973034263 175371991 860930335 364236193 480187418 857729820 967408632 156899055 419459238 236705987 847281266 725943892 937808141 19327444 344841769 646245756 646744485 402369054 763139762 135505108 833512534 950884989 999198988 378278280 760508620 134700711 195101635 123715343 551298706 573140976 661164010 645971216 649254664 723434699 861423266 942985522 954296017 984984462 986725327 706790127 809173798 119587975 911262944 824374772 897158377 661820558 889190387 709106408 743794181 134621462 561178999 981255762 986620619 661568619 826469255 768133147 830027247 313655085 459060032 767793341 905577832 22572142 984365315 417632081 598828565 50188308 573580774 52288756 384256013 714605291 812786431 251581682 259429810 897555103 976962547 130946612 640313575 308618502 737011776 588820893 794022811 582414259 962068996 833132661 834380328 682704313 851543768 708179057 867722929 222152324 705527910 495927787 727880520 341028630 785386864 346643889 380693644 851269255 859298118 996863909 998887940 504304945 906767448 750907316 964313038 341383233 593340432 103574813 718637806 954925043 987379655 632988372 961352426 713723804 954977950 374266401 651059355 147806093 227163311 675493900 904816034 982888710 997665269 363253598 481783000 791692968 795410237 785634017 869645823 924236389 929876339 635511132 932733203 129980938 925990925 123535679 884941631 105052748 193787829 865080890 882225204 620224903 674690412 155240372 822739090 141070216 977390262 649872323 696949483 323580539 562490259 806605051 911778734 608443930 871026286 955399660 990168292 329256370 644194764 188313836 212644020 237259814 619215451 538895764 987054496 431584867 506261822 662226605 670940814 172124447 476615417 664182041 669514277 513408066 622953091 890551190 974468863 744438098 988625456 982560787 996815504 800157232 956398352 725461460 828690616 66165636 462316927 249251971 930511468 174195658 512070267 639888829 914242660 564336420 603795179 429911693 772550489 255790618 427728112 786779061 865195994 25956150 661966100 254845709 878245101 274794011 372790851 42418920 453972429 133104972 574922386 354246300 740624624 678925115 702845091 81147218 196586867 22308899 340693193 549715675 799326146 278406596 768073125 243067842 403458784 646401983 682933263 402677906 646721165 597310949 828483514 892448830 985423387 716372247 817414364 716558854 759240124 689116499 737568167 942268818 984116520 287530214 648829822 884922847 889630765 809202719 893883143 404371666 797511677 386783980 883324077 519014262 649652587 881005322 935310727 549784297 987227530 238034043 804885879 331613792 461512539 650118889 974595645 866227063 909102342 850532007 911314488 893076339 921206962 568801103 652480565 671617498 879701692 271993730 393218285 771439491 918908655 789478409 794426602 420082279 733388762 754403481 863248299 743116227 878778500 364265520 999938997 176178434 818363013 527131939 900032715 154509982 167605009 921180960 978520699 536782920 854682161 886439343 962382780 730586085 735155489 33255973 786346178 249708359 857037069 108667619 224365377 991630717 994821992 196053010 734680734 994509442 999197513 594196862 898449286 896308175 907574676 435719860 561635192 523839590 881509954 492974966 736059415 62371486 758304415 855216006 881947064 842846822 931085510 89719190 271344932 271079932 936220979 909190733 966054138 642905800 685186168 56453354 985873642 613315556 828610576 948780432 954933640 504873394 858422388 558217431 847810182 803617144 912278558 421557593 541464032 140946230 511768532 44542816 965570637 566871558 578096360 372938124 537167652 911109585 933396062 411360589 644808971 540332820 766508251 666138355 729115964 586151017 916224746 520599167 864144429 669499163 968030141 889656677 906067166 398270876 528550200 599646066 855929477 558447523 660965746 924202666 932845847 635346171 997029226 326447106 839912866 816802815 984098456 868700593 879969654 850844447 934034356 78167428 562680185 159118899 201748989 983014675 998632191 50288256 662526063 381548005 992206916 823286331 877727767 121933619 717398606 162547008 533745798 457139964 501957305 585860477 741576830 440632983 493608675 311922834 958272543 466150327 854344654 212741797 406690416 467470919 919882279 597538053 802707310 96133380 123716329 527416024 631263655 61838762 551035779 705656617 808956668 929044149 943087414 550159899 658682104 678860647 886900318 604067900 936049945 789293738 988284312 322853671 906473341 932362212 991976586 436334399 827005945 54337858 757332596 805816342 983129736 177839252 261858637 698243164 956882197 756963945 850291298 693555834 764327589 402637124 420566432 840988698 964552946 677363934 794527926 98439908 118482090 535565403 677770029 319604035 389441289 944632819 991333751 461324349 754906232 492734158 915425258 427695451 892446052 300066943 707478338 651751141 684491748 964865872 992311819 124925729 710681380 335601257 941987203 341696417 461574687 639960764 753654150 987230544 993669232 161903194 994673673 286543405 854709790 772075159 836756373 409627463 769950944 27351703 929796181 897792799 999029563 412048360 675106570 475020653 861928843 455023235 475826877 173944124 800897559 963661343 999038582 468895193 709947863 839141011 964355377 690216451 978538241 427408179 838869516 82237411 818930167 358892643 982508054 624211529 939406523 648878643 883287746 473455694 521500448 615372246 884794582 362279663 485719752 265852223 632204405 933438224 995342369 959549938 976118448 873637499 909624298 210106276 329429650 196858264 635000788 837097698 898539045 172236195 581469558 940517619 966129084 402777104 835962890 14157032 761786045 121696796 426587502 84769410 339172609 373575612 859228151 779068920 974139751 615168324 941222121 634080815 701171079 634812686 703462433 679782438 852897216 470438084 944144189 245738870 720958351 102885693 506129317 959358577 966010004 118318996 137345290 916317183 945027124 455587302 967329044 879031478 926999617 598114089 668907015 953617731 970668507 921616843 935612562 144898921 830929241 135543779 329504831 930050330 977323974 83310902 870075229 709230987 757775738 575900296 891523499 660573829 965625695 49271 577995600 372106140 770495141 799838972 881231301 701810485 807777740 336730129 577158160 431838424 516827865 501069717 547155555 33897506 733279138 552833171 555616562 191353212 951706323 676803695 868598858 484577019 991451789 195413491 625392242 659664699 755584193 31927277 98697717 463034293 744298387 533343627 776253855 385954308 964034058 153492018 632826487 914332359 966029404 448408350 741656805 561594067 651858400 107960533 357248601 142365642 304618664 202798480 581526675 591820005 612851627 581618235 857808835 640780658 935398974 534919686 780470608 40691439 791379430 353691479 964443678 586007460 607729357 350033969 625714983 727539522 741841271 422080401 898031390 657515533 896857807 507429325 673645155 723580808 854969012 60225613 995055710 9034615 27115999 12653505 442339352 690216601 849298043 224905975 490885458 95058448 480932930 676117542 700121816 405714259 691564241 991327887 998251172 781936826 949125635 20632271 350683091 34558646 774673881 399734184 654249964 869098620 924443409 732600937 867294474 223642807 966888001 428328219 716097741 5672819 646789355 389730071 791317504 399356121 987115118 618528623 700970335 598878949 778430622 544931232 575856925 946824183 951763154 363742739 874806717 896738196 897971582 131079431 890400563 527213437 809398502 887136127 934062131 612859981 734630364 281960928 622081226 564482289 985607266 834141963 989088696 236443289 637404796 239838879 448121941 460564282 578425502 724605483 987886301 3363088 897824858 189836453 367074005 635384057 977969600 394592397 741699262 456109160 692716825 107538130 941081840 714767398 960683006 322471135 554268682 424639277 679021766 245503302 767198548 964646079 979817622 614149886 712876575 921320563 935188283 833156023 959445619 367638168 689226641 772161074 932160736 390678726 535836409 982383911 996657878 108488571 773210682 931315995 995976731 201071456 388433620 888028481 945693381 459343466 498323391 694224814 878951068 945340907 949785847 542684511 927169837 251607011 368485758 732602979 819983980 211392213 734975230 416564941 546152426 330231208 779569496 189908932 433870190 820202499 899556626 60770513 800821163 919245548 943957291 802249447 932451884 856822279 964042259 367753233 956387599 52204651 763564442 501108231 731653203 302435960 311666384 190451243 454969863 639845478 722295920 182745884 612772133 268176561 644101247 846749256 909023363 254661047 984175358 495785410 852719036 508768020 894888339 451346867 524220964 861865752 988628355 289614443 398334372 287001906 775061470 871257714 876050477 876795158 975315330 749296857 789161135 539901801 782329841 736630623 803761853 407871186 649312397 764845585 891126443 122673115 577416333 457447530 590982739 679331783 870145762 629683975 775030935 958871165 970232898 853588520 982651870 80420023 403512904 420518882 436864364 813672393 890089837 41354599 937807209 595584691 930960346 31831152 735047885 681007146 872920912 927691306 946857112 775426516 935772073 739945513 935956215 294708200 649357524 825140747 947763884 665568997 810769972 268851234 484531860 372232606 948403577 574707827 901211686 649541130 809977690 910593324 967434877 880513172 996864491 106114595 742986283 127033975 158256668 9989139 434874993 567849937 976719021 22521375 286627937 252642414 500471743 218958550 695927279 396721647 995414166 324680085 956900832 49738722 124107249 134596928 865736984 702022652 856146175 275290677 281355923 814101959 990886677 139972238 707249501 520755203 531418515 363876424 972585057 902051216 928483916 738124229 741601494 791985236 934337675 252076095 597805065 186859295 697926077 484659216 780718865 627225826 805142852 593111705 935326341 826582641 861647926 583214085 663633245 290489682 893832455 312263659 815693212 785888701 971265375 348205131 416307426 879593522 960941470 975918293 990299688 698119729 934756609 435944380 848216174 534049614 683693747 13378088 476488671 725497236 901750614 492124628 697007355 552090693 760281795 468365670 780330277 524088840 688479452 401482180 966915769 351692689 737878531 370456824 961584058 140051047 799950719 397201649 886132479 737282993 768495664 354508442 438999127 487711256 876443890 321379491 484219413 92828753 958587031 914575876 936613168 138145552 590249188 400107315 541447450 472124264 950900421 133106358 927088263 621788063 904869512 592292913 735291206 862355553 981555611 576223685 994572868 875364099 917876806 91981608 161316515 668000116 688882068 130221585 793808720 484185941 878382441 286945496 869263448 91658610 358120875 397912427 727898289 145792909 679238788 141438867 545241094 75246706 209873303 76913447 748988988 233673952 246406870 802446145 839646849 644212310 832072701 882847574 895699465 259056612 516522284 295007158 366504711 357780369 596002107 654947295 938939194 811114091 908840274 816408479 942035336 156405363 558755261 403378341 681428876 622551171 890903636 218274862 899687729 910383210 921767323 20677384 819860238 30459188 836035366 403813544 809941109 133932420 803257466 855677883 901018507 940339682 987111997 95632937 592243926 107422003 466699704 277608471 560270087 655195489 998736541 347345701 876794943 657484167 880482263 762520469 970333571 493196232 747988036 423570662 539661173 609940119 809477404 375771234 515595480 792560712 819224994 284548987 682721379 503073405 882482788 248786624 426957424 412523821 899400862 691571759 892147987 51204078 248611136 474029221 725905823 323009060 344461201 959660920 984753951 38160366 493277061 497682608 859371495 777530266 855334047 429199027 869308937 443717793 738342224 540484625 719133395 153809826 978779424 889609889 906324839 215137505 578628999 145244107 815869280 688498742 908157222 620946324 983201197 677754211 680733633 326515911 880892528 529015618 929989913 677716184 721329727 636804600 710695251 101981634 786355893 46310024 312163716 327268758 989347466 466704329 983873966 37450350 506967191 44158223 799939047 913339269 994985690 916158050 924124913 387990520 400162332 347186985 534269159 489613074 749669480 703207628 736695833 805336740 953745694 907288562 985691720 957593385 981407279 863178985 912378404 591326801 995529891 508908079 634627800 374702457 692792178 546527429 724172373 73716168 966153066 109286494 294758886 226717291 991004920 431260214 749634582 348156063 522134840 25001521 907888343 58445922 199156460 346718579 957915910 390333062 791754891 117978366 726736085 858991906 922522041 478453489 999074913 620880987 711479539 408513767 658648404 736845156 918925886 976856100 983946064 289718337 568516880 905266249 962085601 718134391 899740326 783072767 835386086 451954119 908448537 103003469 690298153 652362207 750188417 237689633 677670360 640802457 765387738 762160500 779375485 589320771 910400998 32512969 814737750 790666119 918267717 221313335 755010537 399629127 961939215 783580758 933129679 563526384 710976613 9661489 336065509 542752077 761388122 911036432 939442628 716206996 797788497 821561351 980465748 949224486 984604202 959192181 993351495 514663187 621557720 29824326 213371139 963022778 989509782 350201927 964854971 406922430 715039656 206657378 288601809 311074861 612533411 941743390 943395540 946862395 996120554 594401842 793487186 793159377 999347052 91238638 984498116 811615555 996300815 170326621 970178445 622193887 808000377 987812311 999105543 365425447 828119812 667696248 811268075 592563127 718561259 686056749 979749170 981060946 987287093 825006257 831701630 173891115 277552626 285252876 374541549 47505563 458122327 350756034 411390999 687724018 833732498 82387077 332661909 336504267 460381071 865636928 928707144 590451472 882344704 588891429 939880110 58086785 534047688 190562196 852793393 379908475 417122769 437525096 896256952 632147711 997251868 960418958 978739905 184164379 578174676 191971242 721194153 229848679 995120808 473937698 894122293 749872174 980779006 69079991 610289424 357100636 861561253 536830979 709120224 743500982 879590653 359849146 383822619 807277248 857040617 85468808 93672324 195082285 841883068 240986892 847853172 956362873 974365019 106647626 199095986 292289561 662757223 660168759 939461473 518728399 920230947 923555882 948754535 381898225 851519284 847092078 935947599 385701271 867889039 715583547 891247178 998984191 999566727 369061695 580563476 623990745 922098588 322181838 984736382 334496136 371926141 608648319 728609482 267109410 427291194 796662600 973868583 218019206 532896441 985195994 987029133 934988175 983936546 434988561 661275447 442964057 558105532 480516697 683817921 499133467 830795589 825184406 902216237 436206856 769598731 212293694 775045272 571926915 736374153 795934677 857113393 93853974 155915664 874497271 914688018 56454597 641338785 515022300 637386552 939559199 997298310 936840579 953919932 430032401 559311866 927158799 951354952 622577090 971312606 697635870 946700192 975912872 996165495 235199766 339410106 761860548 766847970 806471945 827218901 717141440 720935954 630723588 910234441 510043599 627404114 271712914 281205253 632823180 712580256 624933394 745631473 9581724 302986429 6552914 607712444 168045710 976217310 859151130 869925785 869039152 995200532 941584781 963211075 10766278 982027004 140628917 817120345 369350753 662791450 163330519 637477535 383987091 716973314 965992459 983546266 727398944 992630688 471919370 529734305 777160854 888569212 774186387 917998972 270706242 716663094 953470213 963221780 955121006 963212963 630236580 695281000 383984693 649615071 355862487 566618692 223858589 556840257 554002495 618032299 39355410 253029260 627300788 992672821 808645455 996457030 425088985 913826394 602501968 909123559 543253518 975300622 777763867 986813218 428893850 971484128 985960554 989194647 764927797 873281242 166047645 759891056 665683494 901116168 551193750 916808118 599119504 969857701 625782623 729696505 92362496 601568504 10420266 576088768 981964113 986755929 493362825 582234181 220476219 488135489 510673879 745131178 910134182 962590001 54295425 666441396 695644774 885772543 339532112 844992521 570324666 642175111 825256095 841243921 643101018 959342253 284572800 575584689 355102983 584487297 391301600 592220333 420984072 775896406 513961466 619855819 148603312 766683553 170672737 900807784 315871966 997295505 581633872 631653015 498136934 926207656 26735738 132922780 15706362 739004695 805579691 843366640 757292165 792177717 852712128 971688005 462997928 608140311 588939624 875686125 358746287 561582610 384346704 883351067 543202023 931213719 625614553 992607866 565279904 680706938 358621272 853838014 849069279 899733481 785930501 793996954 159588845 355283687 662508061 845836814 248861591 789323652 44124894 846635682 467996197 755256442 314565918 632766961 37836466 552852206 767637812 997995590 950802187 961177279 43945079 827122926 796466549 842144758 458186432 688476808 205258186 399329347 471055832 571810580 187957320 870970944 524905135 958302752 886957564 902012870 506150495 740229505 761554255 988220529 527014449 558109455 581221661 889472667 220242732 338934283 744101815 776242329 241433751 492818076 220553183 454260908 306219576 732519923 974115360 981892969 627413312 811330648 74700749 902129608 965563539 995185717 219539676 745351316 360845691 452620689 893031309 953110027 605438023 806112094 221259848 425308037 854854630 906003013 55910320 317174062 547079524 950200859 669036730 758602012 251825707 983615566 439283104 508519503 283536854 387715192 862472163 891884249 60714588 248438913 728285649 937989029 744318205 993804334 470871537 471531629 288276002 694709762 282016648 655645736 572509626 651266577 203752230 525722398 726539983 903963822 43431895 813258373 920882764 941306600 26226183 78682800 332386772 680491527 18365781 194551800 999868486 999928187 130365056 908392034 909475265 979284923 887898175 987316146 942942014 959114056 626032319 836772387 503653048 514277650 631419217 957209363 969856070 983812921 372770511 731938831 597696523 842220895 55882284 881872855 237051699 836803087 855963648 968653688 178554539 612855726 10307825 13156745 873374830 953197134 152240415 470073796 743046944 877295411 768293398 944575719 430804875 906705235 722554393 968507185 565817878 632392418 173496585 891653380 700027397 983659064 223975522 696163344 240797491 438112081 665857197 992172226 993153711 993395406 543741568 886887482 575521213 972058506 515733518 681176067 660264753 883149126 740213884 910864503 860854971 961135221 341304598 341359194 734909954 833714542 874290630 946174920 916549971 964308784 483474285 605368027 590771742 837622090 315809590 458162172 524124434 771170486 580069371 934234518 204668590 950877900 275831198 518896400 197279070 613451329 731942544 846491889 315555165 705364821 55096996 214191310 216701096 366656556 231538205 979560833 940602844 957660431 163815962 792024907 582317875 584714170 982541954 999313533 307795617 990878860 960940325 980541557 793521608 960513354 626412538 737054692 86151586 235440092 617257671 620435008 607469095 829666125 961632698 962024411 657595551 705307542 961930998 994499403 301823199 387673168 9624649 944539382 944019918 977359258 509344849 742917834 415306175 648501179 564684911 830261208 287870520 298940835 367327120 658588759 621907122 975667891 406551695 530214738 15799121 521771489 530627779 920723161 156715516 929923376 602102794 936329975 425449286 638413125 604454397 895139672 256823816 264798268 629568891 904933291 171221316 515070821 779555743 962241446 475002667 951830171 729938228 785366355 731314695 874609656 629403227 993989024 369011737 441331456 733428360 996345467 92630042 529130311 309098203 640385974 559852716 871561407 166079634 318792426 645916734 959187889 614613128 948115211 365386191 456768617 268990526 319834737 997935654 998190008 585551574 786282728 310970471 968575567 827872774 978469589 294865960 821340787 128622301 781308680 713106351 940078611 90022601 927942264 275509771 676332521 963355928 973832591 870825144 958459960 908874581 960995895 620480948 797280574 877765167 938181916 14033884 513550636 752410882 848125627 869380956 869597574 299677592 675316459 310373811 427000023 546751247 995474020 9139443 68997213 387828833 751374515 956395772 960975432 30571127 716539922 194245580 636869943 929202047 969300040 570356440 784696480 584614576 837856310 745820150 805207028 526144880 934302155 922431108 994270365 253491863 304712470 900203785 952461422 921927725 993914626 516237478 779132704 155183300 998070228 270556380 663528070 664503565 845057757 163269264 556787153 658591086 889788371 892555841 922863434 141902746 670156992 186471056 436273637 461122885 721013684 243405724 754392194 551597201 712491246 598367062 901819042 11284086 573107678 244777625 589852684 307352776 522491389 393715556 863644854 355040582 483660154 101472657 442801883 281166150 475069488 505623934 858330850 110962469 462360242 657973159 982259750 839603638 992303477 421885634 758379899 222464471 329266847 567595395 906038246 975514580 989686918 659122744 828532062 901925756 929684679 153382324 761653262 863918043 892461497 301965027 683862562 743904233 939998957 970413892 992759332 314083731 779022488 951820589 975664392 358887166 784271358 644476093 798922491 10383448 694071251 487773 384790983 829119852 988613503 790680476 907733234 376790911 450490973 963503620 984159628 136329229 137349381 341264527 728912922 159472646 789898099 1775260 827217472 967215525 969768547 347745868 358043984 155086661 879578146 448296012 775770473 861420968 923532794 911606941 964848762 510751749 555798991 615559530 799663387 574483953 872777696 776675295 793128313 437372503 746977795 219843713 673324271 885082221 984547356 47863818 395188269 167696696 365257161 151346291 374520485 317931354 358452039 925661108 962720981 503492758 968626531 283999997 455630105 56577433 547266117 363003498 592609644 872152935 937388064 843572448 867016968 65331962 808541839 247701084 836334735 415946475 790203351 600783463 963675576 348113232 926845162 660924507 968043140 699721636 781862799 96171981 221576775 877399013 896885684 506510980 805769048 81589552 902088841 254817961 709196036 714422277 936684964 635956193 939146805 513719493 934885305 518711510 897629513 43277413 544147556 293199368 889418514 588768175 671607487 377141106 886754169 93122585 156923976 366195446 967349311 565688649 796926523 710063865 788561493 79303491 470646664 167630705 349763940 666211210 785457080 995052875 995716985 797144005 856336484 930769962 986350062 530327361 781926822 281248899 767873095 819820393 969094253 209588191 419442720 483598386 596047506 202147115 233762842 27361077 41963328 782710370 937009925 977312017 980718739 937336492 965787658 121979905 403424529 884210491 930997508 116948290 933340537 379974297 725783957 10481882 537369172 976336843 980643290 245167459 281883891 25448259 681388818 537460998 950095734 775357727 993516340 364385955 992323402 84291567 538655187 60411539 192995916 730697822 755913040 779630307 864858993 844901376 969615069 120381937 416209593 254712220 983195890 364603592 850629551 37112997 905581866 897913805 941575615 386442488 565233758 610348600 836124275 34520986 493610946 491935469 577841742 633746139 734498600 937578607 941185532 953388467 982721139 34707318 926864664 270036352 965216182 684600732 963454599 523062615 540296477 278706072 414749114 917568740 993354895 139745508 189816305 853489386 870819753 741283518 855951760 548700709 551905882 710142216 950045182 430521905 557833538 989552012 992065265 336989661 798103558 517033208 887299342 396567533 553416122 764830955 863933571 825609968 915616691 511093941 865102295 326206129 856051237 346013924 831468902 710238889 754164718 966631157 975432108 247964037 541196086 812807781 926926663 72253943 720061150 247496620 955497565 896216491 919932758 844941509 908222430 14180069 342010995 132747505 837680191 227259443 472046616 825913831 928876146 979948688 993857744 848954036 943163133 525058922 793000936 33831536 234595646 458470862 727626592 220273930 836080115 899413681 926337139 706548718 955375508 171968946 818876211 43201781 139206641 734660210 897791792 131945402 263578933 402001684 892977624 749886666 936495071 83575987 130751900 915666394 940880208 785075143 988826464 301640685 758363126 649456272 667625233 678098918 819207595 646167925 999277036 261781928 491579705 275213680 934929424 163380362 917952549 324769788 733296718 108618155 288846496 19369526 527560301 109421691 552313311 11640986 12788435 756434150 801746635 353457756 724519947 344120289 548396627 290509800 495986748 88409707 757944803 879730761 901415256 50356200 505244945 931483198 987169061 542811319 940265350 805639367 936715389 562867442 646706384 682079016 844319228 937352024 940707589 389832828 469501581 251738187 638892510 428931163 808117906 554166916 817032815 450890508 723615625 123875472 931518637 384704482 443572432 131656555 841769337 844949238 918298353 817273052 877116994 189592304 759200348 955823465 994924861 542250874 833234906 79735651 946209479 17435914 331026341 131990949 230607433 292408451 626957250 997955557 999854712 528690306 695096207 871798048 989979897 488783392 853590738 704624082 980553960 975900109 998942389 454857144 478002452 546749699 697844027 135640593 771790896 589503356 771782191 544608594 565543028 524267199 723188476 793294976 866484571 75158218 640419477 953050393 978918992 26075463 815908206 76486256 446929747 646804369 940177304 228999790 732582198 456813730 575400262 769650434 916837759 806887091 949842978 978667593 989728280 28050905 33082530 340091805 727492653 427207027 791621513 342543715 826909014 346419034 610433092 8489119 780313340 613537659 980797920 822916634 899373004 997088532 999458114 371125002 960135183 163616352 459238921 568226723 575367491 527765565 828607874 595737295 603049311 785029901 848937798 992968958 994401183 801300488 971130444 767686327 828967331 695442035 704392187 603942306 662947627 604628396 708698247 852257779 863211654 8614098 582519740 729667756 769823480 296404817 299002465 22676686 295460916 274982677 879100836 459225801 765193175 409828082 990911697 109011314 124469217 215091692 897996644 866962122 998167834 861159560 972719113 306492902 734121387 651566213 689292977 414530048 904257257 745679348 817990741 679294279 939461795 448680344 931470430 430675814 937944286 879447621 930809302 485033955 650983826 40103366 734206635 746439736 952225508 293595948 631394039 299360761 543103278 697923457 770036186 496550242 663014867 669498878 880484758 997079097 999194970 763278211 994874034 764314070 806309899 270534311 974860096 841924749 908748265 658327985 891968294 91478057 519398447 500556134 762905338 418188474 462399745 735984377 992392829 367259554 691959706 310478244 430982363 684693831 887757156 786669366 844070008 914340825 970298940 60214327 844173299 245539074 697242764 323227791 503208813 629334700 669031158 453977342 985569552 98390008 586808606 67057414 606793572 519319329 587447834 123108196 214376904 572851937 645411827 901409067 998018600 670243381 918121306 996863219 999084304 737205848 893128151 699038626 980072820 287670159 819895474 10390502 858024057 530796683 897170623 151019101 307915421 359958875 911492774 157332325 201682721 907547506 991504006 286247244 671011649 355248410 894324211 692380581 982063805 815883202 857932265 988233987 997902349 471676442 608031923 550565914 707417569 947001601 963679342 122062353 630852762 52867341 243880332 122525966 924702403 74875481 426891645 127694174 424733023 489481056 808595176 74879067 849899394 873430809 970828872 536007209 985186350 483954563 823458916 982762693 989863730 30284886 660833763 1773746 562520119 440992443 985933629 282576695 904889264 717408253 836759022 391488093 662368410 243413779 439748863 682526329 778094769 603418238 709463160 209300344 468902843 425061600 915291630 659130751 896443867 783163902 841269135 616435191 836517458 45056306 572232380 125268404 352356189 298937038 820902328 767588907 955867024 12808139 806765209 508590072 695903871 709962207 930878788 291778567 447335938 902872640 934891928 361277196 747362809 110503509 439892019 744593837 873398773 931761141 932908464 110265435 859728840 479874385 661551156 234844789 957017834 384480270 570875005 418047216 735166418 953697284 964797104 807014771 807287883 398978825 757324268 872540136 979283234 748259027 897325099 766812112 850306962 298374175 491344610 659280818 793599895 567966314 819045622 852590958 943647913 570051841 926205613 79357809 689758139 862359402 887358972 504429466 748013982 645806637 726927893 372822049 616999212 324427217 665171300 707058407 810341477 244001646 638620538 768927951 780411465 843252886 925051634 959632486 987806495 609660220 622456506 146517617 743696627 395508006 695507980 428162128 438476033 908111934 973991137 14396392 817744357 367639673 648711071 327636568 537802249 441715724 650161896 590049692 973957410 454530957 748405560 574173796 863097419 851837310 869797788 354669141 553576361 538135174 616112453 841885133 850852666 179672239 429451801 839753683 878251472 595334966 811548608 921434306 989942331 404735823 420964176 813567066 848701288 713395952 926124110 507329416 631445710 919213735 938331674 551253187 557218185 538471414 774205697 216372462 312918572 7193745 281544435 982676790 987624191 930055302 983733040 10591591 148669015 959070143 987729571 354617558 599139971 206976276 248908200 822183121 856839571 467620234 542561420 921111722 981098799 819195041 826622611 167261724 991385129 211859380 363018556 494809056 566639288 448122817 610615691 364499028 835848970 4296888 675177106 928980131 976635928 892632303 898881872 929047866 982673244 318281698 844502130 196210368 472707108 914957299 976107080 267089951 994194290 248428437 589228206 690890757 808264458 62534524 496419845 251969851 253775059 10049954 213783447 884186654 947210909 781239880 807443564 406763741 915947771 722059791 840166087 709076830 709737339 965542563 999596307 995235334 996428276 599360661 637468967 123430449 782018144 518121306 712073176 729460486 759568329 961209446 991160470 358071229 366562602 583797130 614269207 47993459 650068668 264501836 809216202 902463534 914384378 942337260 986697221 79848811 912935322 923231927 984561685 930154993 939613222 439513262 494482395 740674991 808385976 236512414 846038767 505569688 882890195 470354783 930553632 898101627 967095299 131733206 714404447 864219592 921020488 263142940 526340569 629106673 667989897 664330061 754541889 480587168 662026816 339777997 977914421 990508894 991746856 28816175 883626792 430634930 743685096 300977109 423754037 598387623 684572222 394298290 881374907 785962392 923992046 336014005 592074292 457859591 466430767 845422181 894726647 855523267 937696433 864002309 935351206 315555959 983210409 744801435 808057621 957006480 990082150 43891713 274605963 978980898 998749444 521648161 716989497 705833270 891266461 662007269 975496134 231432019 965782792 663016163 716241021 949420565 995891063 783992546 890065677 576820137 599184984 768421920 886837560 943279305 968880823 682623060 883134836 853411907 937951247 870761116 934781154 152717135 382270853 770269369 783668840 867623930 904190039 663097659 911001753 565980617 983764757 539537538 939865748 14832422 100405361 988659459 999700494 779918156 934931060 775243551 958142959 376715491 514114144 850250255 862410689 269375699 427058509 813865123 893094292 784765922 992418763 150670963 653082228 851205064 854674150 726578942 943868810 687665367 978477668 206788599 533069706 913464945 965407552 299348802 875151486 364257205 905656016 279561982 866506056 623013502 640305524 912793051 942592393 642843310 832712429 38457877 263744939 855185220 934602959 134890142 581708114 426938606 578977129 882944613 909532870 914360276 986458402 618448348 952829978 462953985 810633544 310564606 571791944 995905417 997006786 485860471 647389489 162868021 406684356 569150176 659942513 181875006 566591895 709305283 964315552 67974542 332594969 19633470 616196102 796073995 945560392 675312056 726061940 869240287 896855235 926090481 930894062 773206856 887736372 727252054 871398007 868370292 946062482 223504177 613170548 485141635 508286557 118004770 808538467 562545447 706524525 94986914 572824969 64161385 937788238 516450786 674908087 529570036 791538590 170157703 588097060 254912634 909453632 225770685 437262878 669170815 744460934 217376451 737304655 438283654 886553385 844769891 975715669 39918440 872603778 593560443 787743661 653305921 891783941 500080802 993273541 309537463 706245725 204455980 739297701 947886210 987383711 116465755 926144386 464168259 907393944 681794268 725516613 115251077 851581600 343538007 710260035 587962611 665873901 710492630 899865664 193043356 714533260 398324850 926610276 842399082 922800781 616059330 655410335 16743360 198162873 237011933 934147535 714783072 995358446 211462885 409102117 347576959 615022223 44296177 313735482 220126398 842587822 127625830 363498845 274727582 774956316 831283825 916874804 806763930 903782966 384952452 587969939 350577528 622667160 271469384 276274736 281768410 485889338 942455209 998839493 458508801 946461796 99614904 413364521 394111990 409895021 872433432 884429438 886983088 944768446 112779235 121413739 855268103 981022949 350346119 453969489 862245697 882516778 888459212 966586227 286559138 368919555 387205030 637024643 253733168 996405599 110955168 657365247 933980735 998450719 2356094 382601881 834716458 919929231 973923986 998942544 734861534 814448379 887040492 984193220 34563918 744282270 809189300 861813918 648438961 827791799 967318878 969734098 425397207 492352529 633337589 834095741 183743001 726521196 300737782 561197440 249965758 622017498 74763401 866335458 992839691 997392825 860086244 914744969 104056540 113366737 317900118 412718406 589485913 635449955 49679903 672026017 504772956 758127147 573637630 749651253 962384057 962991392 691156941 735013341 411341514 622763900 236158679 384299132 340664236 760824559 912112420 995617577 28139294 662782705 600914226 926809355 838996573 849015101 827859489 950431756 189469872 764075186 295004148 707415965 734260319 929463476 871690213 910107199 326382204 371620827 499140937 531468764 45133339 265181298 696688648 696892318 564191316 856567740 590917053 641203401 994047896 994149119 13149477 415809147 103389658 793173391 281208887 454726172 40317079 175697391 907317791 979949826 986890599 997049534 385448296 837686160 956822113 966298213 167759813 633261591 152216746 508192946 253349574 443610213 89832349 288301309 457131615 915296278 320287931 957166266 680343121 715124825 736569272 964438600 990836136 997844601 170121203 482836781 910384453 928022915 321088556 640154913 729137398 873488752 863517263 974806520 925466757 948376035 417917520 632003206 236938306 676028376 409025164 666180221 281023455 934964377 739686585 890676431 696695198 970576035 714274556 750096877 515933834 611462035 348635713 478258012 697776621 749485165 321151246 594661309 47903638 131350337 620244020 626096824 687378108 769318470 280550323 813295788 690161679 969825094 516545540 569108084 422428689 631554090 424469109 691232774 710644173 898801695 648854098 740539452 100210452 387338580 661976679 742250672 465454463 839371520 73302819 474645760 534361189 911550476 265482150 924642605 532573847 933394973 891488402 960835355 172887128 241675596 972013061 986555647 472376385 652802542 234339868 466403320 438949960 917079295 465446352 760365580 289489837 710803269 905513878 907173570 698485018 718292490 104113307 678474872 115901386 927522256 531303023 834649438 836372944 991972311 877001325 904194884 902651213 904289136 887881983 950211866 181929107 381888319 539098072 843783761 333670139 411666668 780366079 975324524 328219996 880063934 652975644 687730619 306765925 637391920 311574903 466754330 984775166 985959702 470131831 529794871 695594114 967697327 75391044 277294278 472059720 554337914 838991460 893785541 753758693 885995994 17510829 118070336 450407878 838600631 482983867 916164260 615066636 636996463 217709015 632937889 739099113 976054527 329584770 468365186 521409068 681972718 417249677 972620123 986329856 990274682 801380630 837505028 234493568 474413764 920935048 951376574 667783796 724192574 500172630 571314676 817796953 904497982 391950983 401072702 377358175 784462712 412995885 560568685 349739022 699315206 983105314 999827759 856836460 970313604 131702951 181504820 296614228 877898775 225372838 951845908 949261865 953666994 880063256 973225554 901159686 990735587 162414371 746359058 3052103 336856129 592869806 867720478 144050647 826720087 462165929 959106449 433609808 723205316 731441086 923834876 225590656 990167083 612067246 957587311 887129971 922661405 191705840 527462157 706923171 789979579 800608551 823468683 303629150 336612816 56135093 474478244 132146243 854077818 165542277 353483193 969124535 990715389 340310922 667272019 512568743 540282275 764735991 859573683 408325752 893076497 42563372 323265911 859768868 894152563 704094925 943176911 400004893 570165183 999443001 999786597 176985599 831344648 650264008 679840858 464085987 510136926 424208846 472789274 368477292 516660088 24153157 308886129 107701260 137382147 315874139 816428895 606589592 748367565 532594825 603308603 157359387 226507552 287194915 414265652 104591260 341065406 454539336 768934257 392676558 505697397 774250709 795686370 786000867 853461310 527602475 975932206 611092594 939844637 682997787 742632581 452290731 856280920 367264531 447230475 582473149 586173723 125918326 908342421 127410341 625544347 289373608 949832406 652331144 926925471 352390982 829858024 315457545 941026420 860431207 868991269 660129400 774770048 68870985 405403183 147975140 203181312 528434815 812283307 485442615 929772579 231876910 687918244 366189547 596471252 697043617 843717198 29403571 872500598 523268833 902295166 346303146 543905145 495944374 534246823 366963581 806846203 247080912 487832824 952651440 990083606 11315877 42369366 713607601 862749715 470008292 482157678 343982903 998550633 400803237 570130675 607241914 677696606 108004776 191664978 470527958 743614564 857788614 914774453 750662669 936322489 670707340 895774080 436491283 542106927 332728437 494616602 774533110 866374800 364600945 944200336 53921223 980589203 443463458 896353123 817642913 967354208 621513645 632511632 818662244 999583145 422832224 863589533 254792744 978704527 991880002 993779715 641410589 734735692 227672167 563189776 761189239 907390064 537850910 774578727 935743 190790736 503541745 818160675 847104315 860284850 773965234 964362785 283387127 885144059 915989200 983156814 139804397 818222298 651139064 922345879 917029850 981236977 237175110 901673988 675915252 845654521 124797716 913381792 96125386 393117755 351874352 415491393 411654247 654179425 413607397 877384333 319557903 904560559 750718889 809966130 721631230 798747682 66706124 310918773 791150724 791274054 435358872 490774724 432464748 521992157 535357826 705448401 245150549 924190666 949755523 974681752 984392368 993096751 939287338 965920401 597926885 844482294 566626530 886897472 556160839 841632819 999395581 999857036 299673955 625455428 261210764 439700028 738788884 774424718 243118261 765939924 270279157 589280912 999390294 999571405 856452037 931154759 628438639 831864231 97559222 701403661 377619826 447094319 457784233 686172860 920156179 981682570 7457807 862916474 208367211 637602558 407399662 696252611 708308726 750981315 456594264 997858643 443200414 908532357 883392470 916931853 153863789 723843776 787956207 871109063 104813770 415002906 551921495 927413126 652083947 985196264 964947581 987550754 16503554 258813697 207194987 708893579 857510122 870266217 980192505 993814894 392055529 534937869 761198595 813335756 165315895 476185229 354505273 465737292 104261535 179679280 830520289 994348157 618674081 985657547 918056801 983355264 917111370 963429666 467500391 490692960 328443624 699312656 602679296 789043564 298815150 586610314 321443787 367547171 377124783 573731906 252655201 261587729 651687462 815236449 234656648 821845849 825671676 920209978 703974956 747803336 428700550 611259567 970696421 986111049 387277294 591838364 373140547 751237571 4310289 374091670 312480320 767874994 747324244 917322212 6260938 855506172 695674620 729948801 465217481 621294506 610967476 930872302 27610846 752583838 414836053 515593455 605640996 994396468 647220361 805735962 789920856 810525634 940949435 990967987 899636791 956586163 746849876 917495080 474343161 781301570 829420852 891224228 584934924 818779057 915946542 924845430 953358116 998805862 845801883 943135567 429762012 748053513 575721993 871202938 167234090 622955643 733290725 943640009 357245926 828674324 914997589 979471555 260206905 944020766 743403986 843813750 286114043 324059631 28533532 913178834 695688226 708916218 995246424 999094175 479224947 481514742 428753897 463796852 340598958 752411508 262835554 788624991 856125116 897683227 435695973 806963659 264858276 556453526 800395206 994115813 7911091 571499583 640518876 957855956 645423591 939670682 360567633 750358063 13720247 92722202 361622213 861319444 879426926 919049492 72081340 847817723 548391907 854727742 436394864 993752252 749266675 862911847 687536141 999375302 263068016 986183255 208490375 405945093 465437289 883540193 668641004 927016800 163481894 342863893 872974067 938890069 260099450 833926572 9333159 54164925 744343590 971264358 737048809 737720082 816608872 883174457 493032027 690482714 850338774 912000928 875612057 998264712 385877525 766102418 739371776 869700624 170380043 208526993 728490521 754469285 63328834 757960330 966103038 980148466 171846014 444697753 968004111 982194892 743251895 779986173 585073876 838978566 673277138 961984538 367657946 883483484 490620017 633395448 198906083 990664967 722320190 836316164 669761782 746519176 489964172 847498058 868808260 949137389 623512102 779995387 670347164 813201433 600010555 720808842 749660535 774313626 538159657 830173781 880727843 974591687 494678056 953048774 103614700 358925968 490041568 649839004 702311620 813874253 248087833 466941040 822517207 925769468 625778499 961316944 91742750 504479477 883228065 971070836 854226002 971081658 274770014 686360469 82736372 374394939 855404958 902602938 909868056 959807078 859597997 921617960 873983365 986634684 206667069 757541461 643813093 748920165 209484809 687765895 441089070 963651592 431373686 450351049 519676741 676428834 442159954 506466002 551583930 593200664 541127212 588913916 983032198 996850034 859186760 989371170 375734424 937806393 668151337 787616887 4987010 321821540 876096539 961627062 427407814 757640916 744476036 813848023 268855618 402202800 658367865 789264521 747763032 985882092 361848492 979812773 356619133 412537176 51042742 235708893 779898434 865176400 551000557 830016385 764327923 792531640 204255345 686662314 290110527 662344387 818653625 962823735 299257747 803325911 447426364 579199657 740352772 781726343 755487220 930849259 722669103 753202298 354594762 634637852 845780805 881401332 623312735 881122648 692694065 717900296 726951349 920104637 695735564 940663630 687169510 914533729 669370831 922340622 716700187 717578512 896312296 963279680 54096299 490620433 742992788 845033360 657403662 810704955 866002411 935893612 697143169 739188250 3213023 232228063 976829713 995531863 712321905 890759835 490446017 788939960 986076925 998730939 594162223 758482054 693343441 841922858 161434010 860495745 997946186 998291475 938172611 962618495 373907849 521638808 587626047 907939231 400159446 490476843 328289201 779890333 338966364 968460164 655425912 940849092 149502509 220855315 73399551 197786027 113155015 781161111 18511840 865671154 942587861 991515054 535909222 751432639 520400407 995889607 882629971 899002283 126840352 602664267 983302605 996441242 611192241 675314593 171683085 846203931 459651897 883013606 656092609 746830099 920534708 989022711 596620165 719888693 837485180 942659608 625572308 787076705 583235024 676208166 705837530 873998267 559464218 622030843 789420915 929217761 935225315 936089636 452092472 742737764 793956149 913230178 322446528 997106789 266904893 401664383 378546497 965503552 534762405 568354898 455277818 736754957 638543838 703797734 96966819 422603182 292718285 374009247 859393089 891155271 607382211 687367922 726646179 940677123 84392413 676790367 807071065 975554540 907540590 954550961 579863005 830158130 97967442 734750633 112400577 713416462 810961576 846071580 324719809 531573115 737843281 797688024 148066567 755986088 980127768 984110094 856984462 911887609 785837840 920340715 989031994 998753383 2380116 516900142 456556277 518364215 179988294 383270137 96934090 456454306 336772033 674121225 427410301 584840279 88305090 323558547 845650003 919984654 336129744 511036828 62477084 271763081 171376148 921816781 964035619 991005174 464838441 780568185 109838701 733681034 700662706 993583251 11371696 245143095 212108462 769414460 90070083 373767626 405580701 686877747 122560314 726327542 843910670 975677628 217348079 345050933 426268688 739682815 147667466 899487789 563222698 702560896 483415863 910262460 57119152 226326036 854058985 965207491 168829852 933885319 664495573 846847426 172296747 611102778 150473164 208357753 553988436 659548261 639236279 896698568 952058943 969866751 60963386 631402038 445257213 650896672 802595955 870359791 789875627 853548602 80505259 160733349 587197796 947256601 128526664 224828194 236104914 598146657 333423796 811385807 578764797 713104608 345220837 670667870 763976560 785274535 870462425 954714445 387662496 449336323 126652747 759954543 540365941 544965115 945306609 969711603 411602260 979684196 924963045 978383635 706877746 940817214 492166106 963759380 14358713 23922108 876683279 924143567 257824548 886608748 623660708 706924350 663470197 731060283 560815039 584151457 160612376 673108555 848569198 857543001 352889393 768580137 174927088 544801824 523620615 780462623 880370609 976406800 163386111 298741338 273239845 884542832 308080665 337658236 293062159 659528206 886009970 981865857 672801988 725551490 205776167 628240004 97172342 567089628 302298581 447154820 405384384 995112848 13719790 641455920 763709668 856401542 74055756 790515017 966904180 993574487 83572164 254399313 129473274 806834034 547345972 951590237 619790759 794960102 998943280 999175962 347786618 730103128 726518285 750447163 590126923 907518073 656030906 914737996 984148974 986535370 671203332 933936976 454500928 828868117 704347943 781170956 15683807 626684695 356643145 533874291 61999613 502912599 534114562 791938405 209037202 716699075 124466267 696786956 757689399 996005747 10935867 41043012 328022105 730178304 611037196 823212874 149984294 339504946 322039382 881095340 80598482 576658682 485770171 495489274 117254157 982480823 855255955 997318763 885186358 918509439 52955981 897692455 238099829 873910546 26173006 865659556 785738483 963865356 910190698 911624229 576763360 652432873 42736954 442014381 836564128 966901375 787017074 917787838 215541852 881414034 224729323 770840806 977834228 989030197 897519603 980510397 629039783 694690606 974197785 975728413 626322530 925330436 489917705 852344412 476510568 910634309 87526212 448222525 676105751 979863558 206521500 996160649 13320762 503288803 518897200 842579197 547059615 598032931 437217864 712952285 136787156 433116374 236489952 752627201 457870832 549900278 286699231 478894575 944534941 945397465 764589868 788893074 432815299 912441785 778615606 938154008 933262803 954306080 644100635 989685406 392263606 813191509 533848065 727191872 22652836 791938618 495388055 498544152 162422767 409633496 338563841 830112456 964428647 979903970 576606718 664535223 201148754 641803789 760253993 820815082 340733864 498298541 171351133 990607441 992839581 997849689 141150732 562147956 541310234 944108276 52345028 339833903 165954658 499705396 282721578 995587976 870543593 990483263 385627976 722192393 215717581 631220494 545881353 551314165 607340760 992442669 220478651 943222564 284858200 461100340 215581037 712696057 193410430 808778722 466215113 948087433 317940043 624298042 393758854 621046015 847151886 958419641 100838475 139167562 416234919 815985442 454096422 748454118 694029247 999213244 887020821 965808670 185026423 871765325 300670439 545450581 684117924 979154309 839222798 879942187 202833265 385684488 668933735 721705645 66504179 705529461 61320781 938191916 331625507 769107358 370417349 795733658 146751170 786766402 552783560 693465493 935959938 971295975 883270349 900470232 180721384 405312841 899356824 932726485 866441604 877981053 402464719 948620792 95504860 551943352 989326866 990698944 755670241 843661399 41812150 792391455 763322534 901767504 230475237 461643585 400950688 644601418 812576735 880642844 741146631 891849151 369157871 660050375 439313408 784434491 158229653 197235916 544392294 659525839 495246211 623958610 125481114 984457954 360211808 625967783 33409476 581087181 139012413 647308249 381031425 429155716 159769485 905995456 298687087 989123072 301970897 351103824 961041504 962419824 201747484 718393992 247265344 731272986 908268604 953270191 46764917 56359049 624522196 758305018 15721473 426128934 463910299 610082573 743673507 808019358 673689495 779968567 596469206 879315051 102124746 317611231 139204528 697891549 988078623 998307484 759423375 965997770 681660619 841808817 181265320 916075356 865217799 935818750 784012853 810931380 270419411 308193954 563883620 591748327 194808886 453278323 547834295 971528833 293771327 454757784 607855487 634124746 315632498 881721578 336967867 338095755 145999998 422961996 526970685 761669020 828384346 907352863 414800360 490978234 721598572 728765806 14706285 466951738 421146632 759712671 756232584 963491654 174883253 834318720 96952304 595459286 765178284 880578330 85742025 882233280 46386440 454314364 948743626 969552862 64270900 631879377 739541325 974270765 550973998 783987652 47232384 827527172 232602734 399171908 449422778 468546002 707755126 984796450 388406065 574754549 536323082 942706521 581900228 901536843 688319519 904446888 246111642 831026763 227649127 911313547 619481447 641684950 492967627 500326941 345281223 707683479 744182758 812889177 497388070 760190071 252165940 744956850 595051156 925194285 237276431 514307212 726145309 797546655 817282547 879379508 930207025 999889386 123535217 715700575 879980846 997740786 62925310 317728348 828473409 918736653 827082408 858104795 333429937 642274000 704912581 820825083 191500828 463855214 58073879 695637245 349597612 413793228 573632879 642712638 742520321 871055920 425488757 432553946 747972218 907888199 842747918 938415939 504871444 506771017 485114213 626000168 8191312 208348968 191933479 852511652 313896062 604438324 287488493 492628589 364864569 993076188 685875337 706473514 347248313 370115729 286102047 419406879 730658516 915371086 688468671 964531176 427517274 484238643 108561705 380464196 536151262 996187397 656647052 840031069 144094498 194176407 787293220 962828603 409081963 972911669 325085420 399721174 288031428 346561004 305286017 654440528 113813590 814465214 571536789 767368442 597005655 695354321 451070858 751024861 82208782 422327813 25117209 529213998 629034213 665675806 292738128 391568265 233492252 721983016 353683064 728725824 496476707 504557649 137613557 979994135 880836245 939915450 466448521 682808710 677343679 687491022 631171624 751612558 905290850 969326699 461473088 778041878 522968973 788192486 583651325 654020393 34447587 509179860 346542327 872550868 143922527 869767190 771975681 895226213 64283879 245318020 489360327 863948293 510052843 812944726 813183969 975257377 47338686 351830953 428845976 985141762 364189880 872251306 636898370 923801375 151347662 814202475 695142499 907004404 747335341 832282347 142163405 429000086 694054700 995603272 350554411 625076795 475065506 953480609 820621850 980955360 427049747 586774478 365033667 877087880 211163868 959311268 448304368 741166459 41020887 584493077 356668112 796632263 739034491 879897368 100551638 136085506 747541819 839011894 817687663 848146187 46619586 408278270 937954953 989047711 935276136 994206898 853307182 989748152 209394662 284242436 213963954 843569520 797431348 951972476 336246641 689344278 502534523 529781438 361689160 883391432 22899779 621048784 735601353 828779092 477497315 842201731 990014055 990714839 885559251 895063794 420879629 608510398 936279261 995898833 865226542 957102372 646556713 820372283 433495753 801718381 821966009 864231472 386554405 431475521 555835293 671461188 985286470 985875576 592910778 806576950 748442270 925726875 638013604 739780269 256884104 933152922 258587229 351618634 870397405 878971343 164690410 406313511 436484564 550064768 953023058 987165777 567403138 981554720 504137934 574340431 3024076 671748380 133787327 602186878 81972221 200793292 182016608 955518143 832391830 970249859 611361358 928488070 455841043 774698892 455807481 813055055 704103267 964017599 689377807 762129537 234198123 713795467 193810147 554763995 493394481 972264773 214234867 976937068 543297750 686960903 498501303 926192518 844968611 847712117 289762594 372602663 470530025 915458779 699222288 733746731 731547889 845584416 254982595 676007985 167702730 551995637 255983410 354793335 996110557 998234774 340770693 653285940 828351340 858327055 74580876 941449755 234070069 600199453 895601881 910471887 779395141 925439870 460713094 895221808 952059444 992396233 14526655 35154683 542841332 834652939 537207466 706441918 374382043 669149502 911827038 995422215 775701962 980635522 425477647 921909350 316012076 980798353 495705579 752829270 530437727 559541403 204664854 665200105 868952367 872868364 184469301 748163209 447234953 804406828 121277667 488442709 723580546 779275281 296720088 690201807 132387819 919287950 584768107 987204168 480219598 485951169 188276049 248397510 742547122 798663260 759502453 813578818 665168442 870699792 879869523 893809417 443246719 861251352 523113605 529759177 585055185 652784250 854443288 929086250 961084836 993160540 391008560 989912792 615270710 652266224 444618455 746733558 817291775 945747142 860327481 981650881 434162463 836278296 803908020 925562205 46570977 757005337 891891576 951571306 93096679 816776985 728591786 823172821 806002880 823756946 7198081 778051810 157701453 329914868 603107495 729136117 456369868 747632314 212749577 382126798 581594157 918096576 938571016 952462898 153806799 255284522 852110368 901394853 736855516 749020417 827690297 919257086 358990261 959726148 184541669 684185515 835738150 997882956 518846912 707537276 409433165 712729276 518995079 781036460 305804496 408475718 558194363 567397042 374413046 620751635 653676657 693463093 11599696 593129766 176452219 875902365 446090848 994758078 44572256 891825712 466660274 573348670 26320759 555671024 158023658 623163995 279062694 281185859 234831157 670208645 571735969 650051609 254486545 896431417 722632663 801221389 310757992 406375701 260754734 911283837 376657185 781722478 325022845 593447742 956042542 958264760 438454699 957864566 90168727 916102448 745699853 806347655 332970744 708110016 896086586 908992664 207225624 292832067 469282171 953229771 129725933 451662696 135875453 151859195 49382825 361402738 249272621 826007401 73481019 484212702 539914609 563205392 763068822 833366647 681549304 716095409 397952307 823004404 472234582 478742239 888092747 951949386 171820045 311751634 879467033 983824934 817341779 922009053 548862180 742426435 899315830 930279609 945786548 989553917 299588937 664241721 875761490 925369127 89472584 692022816 84916015 107460687 54963908 221697936 821598654 876011350 509400798 523209927 838163257 941120054 954929879 972727848 310742872 326443006 457229001 482547160 52320554 212919218 954874435 987135935 151917075 906555451 737299612 937342779 765742343 790313952 21007679 898243952 950322617 996783871 88367064 189887544 79792156 750040242 9639865 24341754 797779098 872018004 975705032 999996758 812311235 922364522 370600443 934849251 36779230 687544895 291167887 463394824 542051777 899989681 585610572 998508921 865338793 973549341 815000085 969736319 83345509 561002156 788977128 926295788 254355129 427619126 395647497 411914008 591557065 997158648 92897958 917518545 302523309 962156255 291921230 338986747 599129780 734178293 927332804 954445861 597973317 747891388 70834991 677282499 500925915 663421773 877782752 924938266 136586280 433256936 15729898 150723034 853397179 944961947 246242034 997659123 500071513 780138404 807766426 878243229 243917738 395324730 595589091 660055724 275307682 359156390 809089378 968011766 677123670 822144759 443917114 886781497 496166908 880052845 476033205 541454293 631200065 792705731 245480546 417461816 469189850 565754084 632782317 919178598 955737893 998069147 862459108 960345100 515882212 660292391 445427280 724258005 394673327 394950231 788529955 848576210 281376323 543788884 523733601 613289487 308710022 352953537 424338803 586789902 602345699 721086254 788558819 791224382 545046985 678971513 29728746 369638547 984361036 991871621 299873214 527427556 201215271 641908206 102853850 109996756 510287428 871359776 465495258 802479020 335447366 571218943 417258433 842607264 465682380 631604072 225824555 254097980 175670333 754529027 429421511 721258964 581572261 779702045 117737974 393798874 8067729 379496600 8438537 395209769 632362214 784473193 24637113 317573565 997092105 998882799 519520045 833233419 594965191 950362819 204477183 581288228 472557079 936304084 546329506 565171544 145180540 867327839 632262451 836775848 635589651 789603574 424433082 822361981 416986 328630741 293407095 659625697 629628353 766806499 571973195 779202443 79073680 627034370 882936613 997466373 676249895 839267283 928598430 945648909 45307868 354322998 157320022 219909550 629264782 643904063 395050811 961177955 361113322 511815791 546194485 834393757 293766520 970116684 973503348 980702025 797926314 800636098 749734366 931511739 254297624 623852613 17366554 592214972 522471948 711946332 477039247 644612913 54634668 154779170 5489050 959831772 19567317 792853977 462815246 975371914 554943879 564918518 932926326 980101150 268828605 309002508 992101285 993854212 715439966 742244297 302198364 322486774 700577310 751414867 917193465 945128613 936863239 986452582 51690603 74856005 534947239 874048079 94942778 422064439 275111240 660243045 198591178 961128854 816432772 998516353 943246744 959386606 898238778 907000916 570023990 665984847 117215022 844472131 912305156 932146616 96129657 679657505 356862332 451292472 690446553 756660870 260727598 522109923 198620834 373299905 251773084 453350507 968595545 983508768 684292795 920062885 865176541 905511122 37294597 215918926 360928623 982931410 28020284 857123258 693765884 863292417 687982962 729471162 890887762 976981990 996296720 997542086 793290372 904968457 131558036 469872158 41379375 420645813 11491901 904907279 850864798 965550295 477203266 502217832 204094507 331854882 702634731 978339678 42029791 103345049 759722311 882832765 338044652 590774958 753242391 903950246 539233965 822702181 281722272 938335520 119128904 961092394 897770905 976528532 566192713 607520034 783368897 822168533 564213126 811070366 577442378 868814368 620948460 857179883 726685865 821339853 479908787 774312588 613998241 935451119 727139355 929530812 186103385 279582778 963866848 969013800 588507606 719433735 507775018 922409628 625221330 645008038 445569938 552716985 332540691 840205818 135548210 910261431 484998698 786744929 985830864 999339489 594996590 844948765 171268386 482741219 994063447 997049755 735718001 986813135 175961014 861479886 818679450 950655929 80011195 591135556 989877881 993825439 420919650 796569473 979954621 989677059 512310348 604829655 378361137 880324098 83413763 940326746 152133497 414692121 970424249 973268811 333787997 638195475 430056623 815831808 240602603 825407215 813758679 975134278 373172135 619524356 210407983 257262717 612636789 865585905 602254773 654079039 472789910 846913312 494569384 880211893 270812687 600539362 111396926 517704762 344880288 454890405 219394323 416682140 676916586 764101384 731953992 898277130 252109189 349382998 241995080 954267341 271672035 986677170 628656801 810687271 132448635 160537251 37650165 239969385 497392372 789393406 738581378 771613900 966983763 993704676 279765430 639034571 400749629 822807672 610118634 790891520 476617625 732111722 515513824 640600583 893496890 990383919 257762509 262429835 830654781 974179476 755771659 807531413 571798339 841626141 66475372 905868960 649828843 856484293 300521248 677765116 482565855 995760135 266117368 576620157 50905129 75157644 633318469 719513816 796100824 875632545 423908782 559996406 879802648 943786713 457381236 610926502 505221897 622255670 592171784 676296885 22606174 853631059 773337170 869259525 456490097 709428698 711955492 771001850 79928930 106809261 948156713 965644743 160066142 588694111 485134643 603030855 456449869 551750044 661366937 759760226 42070695 729266118 120776973 831145012 780197647 989605105 325055894 671993718 194347726 857177812 774299253 788181281 871687282 983476262 326625871 405041959 158812170 780614730 222722895 260284049 480661706 861742604 450511141 536517878 997699942 999834568 934217192 967494369 329539545 805309052 259108296 641063501 27506704 924802263 776354212 844961431 437574698 531235635 695247482 805874049 381334361 506783854 803219906 809410050 34415270 883061225 454089186 837532664 684953989 962524985 901674312 930158254 658933835 891026490 255939628 749764662 909737028 994565309 179055390 275140335 183780532 412628458 44177947 587968446 718749915 983828653 682644477 701760464 912979089 933218832 142354928 820927523 12498196 85070994 591853339 943153333 796449758 945807621 416232437 445187853 570395214 946780723 638783986 982783273 227219731 948344099 113032218 905668605 269282070 335193634 624173339 930629548 262937848 392407701 196109377 231304328 424380198 461574828 716143817 941064782 268824025 778591742 446248719 773109538 419804125 965540619 736681463 866389545 527860731 764794107 214971195 287537668 105089009 781189757 207150079 842263355 675576263 779681631 580850461 722736478 772013285 867034792 255828802 592253965 357342801 851915699 795269975 963694475 79009433 693546859 434972388 582163463 884509093 989089460 872755202 885719693 454327008 982213660 182336629 495092998 909398845 944549554 240772966 320646687 673349885 745389952 596304191 830813136 65683580 462584318 610803509 991124294 11454608 560736268 118755890 218047643 445531662 678886716 450547504 468202511 292308361 526596398 665718716 877741101 644666278 704666800 68578597 823008217 738663016 753831988 851936984 951698755 220403269 813216029 310541953 668173067 288245733 438733195 979027294 997311287 1465812 419677162 496399711 646287117 803997122 921419925 280408395 818892461 550421947 794423119 629734900 912203372 401012636 902598017 622480631 791185253 571760403 648157184 935173841 999874171 648851648 938833172 401957288 806026144 939064517 973352814 39050921 363951630 823812409 868426974 256784559 297049496 49380521 837595115 203819034 773789764 431869273 667571183 731193654 757039346 1259675 901014142 221919082 834312990 912717313 995406793 567857134 905330026 341306241 797912510 377064231 711796062 432943677 508541269 128199780 939471807 447633667 576997772 527169476 970329586 335271208 947848114 972652021 985506439 370377268 808793078 444520439 961229868 663116101 798381971 823594997 977958976 589164923 859495328 927746280 930008450 310555531 339199328 105022443 675182461 285698957 941657874 574973740 784559473 62196796 619023252 71838697 84097029 467395464 839606809 11083424 388033290 246345978 949182331 916766082 992522299 417762430 562281625 989843474 994595140 311823037 476271347 312135255 474946020 738188594 984941226 557031401 558964076 552936748 942660195 14440074 208550932 343412366 989297068 463819581 757220929 269965332 270996451 352671541 643694673 113042471 502878546 38855145 607575612 355675978 854301838 346099629 412194861 204599119 303460442 865816918 946777010 174078922 913405681 33906190 666946031 332110575 624055844 228990536 802420219 779486377 807024540 444082744 750365507 487718001 862325278 694479729 926476515 250894475 634601878 83477335 732304272 407670141 556445076 255131115 525847375 812989713 814869758 921353800 979192640 710595010 783174863 939502273 997159447 466894940 521507423 821535338 970439273 36104689 516090116 457047913 847015903 779081723 899958828 126081896 383238689 120236102 983095500 918666627 932619783 236274568 476152219 443474396 751612290 305304930 959178451 892557009 949509978 194282011 290159815 91927294 554598105 305993036 468949155 425408110 682707037 852587304 939664459 576625101 768378333 829639619 977575872 444780492 490838288 389503502 689374837 990479969 990609690 498841740 604699044 285094087 882686753 576219891 952259476 296276841 531667305 100780633 108645053 375509302 666925447 283903600 659652666 297595956 545607406 924650206 962340067 181964957 439333052 534028615 855690281 517962958 965509043 620587215 791464013 787903170 918790424 874654739 929676257 168184225 864678264 842947335 992125986 808244032 843916193 914505834 999564031 302332757 351049195 657538030 980862123 16112057 32385614 672916271 721988126 934778208 996583309 214426606 927619592 60803214 465759526 646387490 932101420 616107836 846853005 340892131 424704110 882217129 958934830 261974356 398999033 557334356 737918162 40909476 433533476 104007736 670576628 774728813 836885079 642260405 929916413 826356890 871175832 75610294 780758511 520294382 708451857 211940426 978393724 930829911 958987562 663544927 850467918 170527243 349869724 523784202 848693910 829977352 973879393 311880286 938889409 88568017 767375880 566662443 879075443 655300788 958213008 715661109 829010756 561225078 667734872 454606768 692823437 231091398 812604488 989416063 995679177 149823820 726397432 551011157 800851719 738209951 998922920 775434852 817730398 39827979 319884346 899258990 922895738 170962652 853439374 807623432 971651111 990762897 998223606 333564730 529512314 207980213 474349235 860628842 867386399 1950782 632483848 642894744 880007643 410839358 854844658 392614506 918504575 441031 543943956 581143330 714434891 949171609 995612461 574687276 682733875 489260749 772499794 226889070 541886063 777686204 918049618 920700350 990335482 308674181 890172965 66391166 529863047 331583897 826085724 45454428 487513336 611247939 713969218 315900766 698298370 239430639 430510914 609575235 620539579 419405857 839713929 87449347 394037301 269852770 456681904 451127529 789579132 560606792 798080432 957626409 962402425 385533564 783700712 484418606 931898075 714252266 795486885 867852200 915833466 624049698 927768262 824982280 993106637 107662491 524410236 52470409 985379192 641976600 886006197 501267644 920194327 977777130 989476677 172980020 191179909 215561508 545799992 185065832 349349168 523287534 955113746 881415921 999512197 329824520 416533587 545834836 785893006 540075153 750761896 533154372 795358479 514234530 540026929 690453565 959775998 29927614 344417710 965740475 983570196 395577081 818399456 326427057 676553933 204194168 579934475 769651864 790701078 360828626 793969348 347139109 894856055 638665038 978155987 524631048 679084822 632163596 770477982 340450736 671031706 171690570 927361132 673096014 857280309 824689949 976669604 623049844 638942596 149210186 604249432 748537991 958803597 622926397 873976619 602699607 762244990 935683841 998986385 603205249 836089903 649378280 797140815 603649696 886178424 288441420 295062499 362312121 668682222 375910051 879218258 376945578 605515723 11673873 796807621 735910532 805348728 788476699 808690114 36982701 666940194 655812891 749317576 720160627 878099903 67735010 87349543 750316359 914747627 876732564 988485923 354125628 568807490 130520590 146160410 567912540 824151552 535507783 958267172 141582358 437522450 792415949 941148691 11582645 876361347 218647209 847812525 210734371 754170017 596805582 663750639 295614705 406980660 40772810 375652603 605961584 612583874 462634874 898889901 294098210 729975674 233084065 799392477 523244215 869410927 263190514 379053484 700882343 944400637 11943437 878078711 420030883 954831928 671022551 816921726 270171966 482139702 906140113 916211258 945448208 951970182 257626729 589302978 548448488 807261075 407354363 481915756 662517903 968601029 805871967 935401012 371734944 872780103 804289424 951461236 46764204 71449453 105340574 341528065 490311840 537474085 775463016 950376736 882501436 973825734 535979326 991538222 948307219 988160456 600772584 748670323 470614362 666440850 499015288 522577482 973141222 981536884 12555369 235014212 921803276 956602267 860755297 888332680 422912339 502500158 852977263 939486554 674859872 744408220 652217954 920368186 732288847 992844875 372704669 855765273 653857832 686233697 270213731 371400063 179297659 374988404 148386347 228629204 883818087 990903714 132058145 327929225 432399167 456074564 198678120 504019391 100370747 303294380 800110480 866549172 490442578 705016292 98354145 556013466 75874881 909483490 549074428 843222038 358816757 960456325 157190175 818658997 991197085 994440097 139387995 821795760 348035006 722609673 251923015 840076603 13399547 884182481 656285008 668190034 107630436 646468048 304327372 597573250 50588110 700576671 913330880 942782768 847956500 908040105 29954595 324467501 288884940 889103051 33552988 100389188 506876676 869577297 504197564 663904832 79274692 338405907 757287751 861982592 651030758 740472075 255078408 739659807 937251487 999414780 569219462 929624636 195353740 291932280 135985541 574221680 907619293 992966449 591656601 860595824 319344673 358439981 335356696 388903456 129277769 541626305 18460178 785051686 396605171 797246889 233060308 351941210 564008700 651547872 504661959 965815214 791988344 809748918 964013176 990276036 850828191 936883141 763877798 905374492 629450403 729707490 560367636 677187520 684008991 813803249 114482703 960331361 372411196 821723482 953656570 976624778 202363845 480236071 769177630 789201503 24651315 982321178 497716270 976660935 461891976 561156059 594411672 712177092 89004957 336656596 942538004 985454004 914643434 929808338 455778932 492475067 216314286 234799335 875616198 969300504 963069452 982650354 695951938 988670851 362368876 962155640 151458881 683949450 444162985 753813249 591028275 676214134 866845048 920113738 252236183 701488246 29800114 333141671 220353535 523390265 609374237 974866308 256063576 296185221 172929142 534022232 168751390 171203137 812536188 948573739 700375630 930042222 526524361 713847714 196671814 448869417 937524729 967697831 218552367 656077206 243374247 628996057 70486876 518640789 324464197 589806502 13467524 389839082 674046484 743825937 183569907 578831434 765162209 820650296 854412935 969901901 663205926 972667262 203483786 265588047 63257340 976603487 986048049 987320226 223876661 566473553 854577527 888563454 404064773 966733665 579018706 694627615 948819008 953421483 662000407 915852041 175223754 622069841 149994154 603006452 283720775 454398846 306333204 520908479 72009900 160144497 19784208 619127223 314972014 580957274 335633734 623495512 367252993 437453327 787897942 941318854 517486895 525928228 481649470 806258949 582487710 800091519 853867929 996592968 563616386 926876827 356354816 423127815 970748684 988094122 753274408 835919163 256900850 991604996 516597538 737962081 598226617 663090953 554559469 865722035 775066648 881698923 732659636 814158807 550790042 834717978 877043268 903535237 61959159 813445769 390643244 737774452 957575221 996691300 596505753 836709201 612985685 929318712 412633438 460712025 457327919 859633820 574695055 943011124 880273029 957666558 423131770 590339347 236431090 583300863 237047824 455665512 203223636 414088536 784158884 845548668 404197456 666968708 309232249 582408882 779524616 950074653 63444377 317944844 312388409 596621481 54113498 317874983 273832330 387249560 349090958 372474677 175394314 593289021 996747373 998869077 865215778 995621466 428621827 784002539 367752322 702638155 306355824 487180880 725853781 880393223 355062934 840126902 986644491 993638140 812588660 859640084 954628775 972789050 751427222 758592743 900200102 933681144 176734099 459599054 636996299 921662475 34424525 46389005 116845151 274728238 971755963 978872705 546406716 941239431 453950365 596566403 325378585 548341768 506106913 701536910 671865297 756924734 602858590 652964253 857879047 945056056 680157512 723784998 823723524 973018603 363603559 921041216 807116526 966453492 915491898 924947961 645333519 659816904 450501876 487245335 598510673 629643068 325871746 886152495 601231651 743410399 150952415 722244476 913257183 999628842 650359158 677471146 254980474 885866259 44854340 171359118 608658092 636099354 427530654 898100399 474344581 570279173 365883204 602921628 211814046 525913318 478397969 990509013 392235463 818058107 242213416 519449158 247838084 252454208 837093633 972316878 893264256 894768226 162938591 996184609 76887555 627323710 589640537 908115290 708832988 897210088 165239093 956239905 266594032 846504259 648550939 935611715 795195833 963350724 124448834 662349087 343455454 383689448 626891217 789230172 73873416 677371740 922802024 934380713 633059845 988996326 846115520 888244083 383808356 940009944 937210734 992973808 859880715 989334428 399037693 465094817 13755788 679266515 274205980 856242979 199773607 422106550 102414125 518022420 329726608 751894192 670892826 704376259 317545900 454718047 145987573 338864991 618697478 937667023 577189692 823991906 905983201 934346000 558762957 651450490 736722060 790980991 578333081 792246156 625504173 653344884 537854489 906697971 510631201 842562680 347701630 706399923 183041179 212431897 36607003 483393050 727750001 841572839 182921930 418793287 462997316 988709521 175000513 182484562 871123558 909817380 965373509 988809573 555679418 695371094 982646887 990300701 479715639 674171524 425255565 671682175 482187877 924276569 610051268 740577704 757511486 887817756 927252179 951821186 475011012 710360933 456949951 641058667 391873179 472586483 482915895 656982058 422729340 993157525 927868034 964788471 256547995 353353629 693948096 765101678 796618247 966716518 406008582 836389215 358000344 965278438 112914144 583041480 257829501 369962898 171025469 927536511 549044180 951053422 830437716 875555947 686589344 694349448 110276346 379805519 675081453 734933279 867812240 955514586 783581923 841325542 220319746 839532203 789453988 937431118 569429226 801249613 633989627 643676537 52224395 795288609 75905114 214726968 938535235 952036669 289588056 935074005 691134803 764364082 526901979 787059014 594543999 811599996 368285837 912759209 877642616 951430621 678800061 860672754 675412445 780835393 553276622 691320505 843275596 880804363 624431866 786821667 403081193 691172332 883538993 910881560 668044111 929923895 335423822 816260583 454252894 765277660 950543991 984120708 662824574 912780010 678623951 989170512 456112675 627324861 867389698 893971646 352568581 386652496 86677950 345706735 906547337 999549163 470975874 489037240 42973910 147950493 895811942 960051517 501430011 837476794 199954161 371862711 82811982 187947355 760869549 964169068 171379190 882599091 822921632 909774826 320653026 578672594 114128973 350197426 301479048 463210983 766953183 876601974 362294040 705160330 217399450 341287498 543119128 555680881 603712922 639441348 982629938 990290418 608612562 840297486 678053454 757429708 541960699 880200629 717170399 860826359 46334527 668388878 753875077 832023020 199492385 572888696 488295973 896144981 608517127 996066533 843811760 952733759 552233213 581409442 63273460 557057683 822615736 830211557 928829761 972127016 478886785 832786682 650947073 914314303 864861942 939461515 248985901 405550567 186550373 628152000 675550964 816505742 344653700 957331544 598947913 784014621 289071646 664090172 313116091 925202865 510620473 982342150 371303778 980487151 120410133 596379012 356794496 440400164 57116141 169883207 456434790 850148234 343695710 596086407 80036455 404073363 797860492 828986020 187019855 975753747 880049961 924193591 800487071 840925761 721481372 808574831 447670833 724283009 624537166 694138207 351679961 677188910 249366389 730190843 414381982 687513361 264083200 817180346 51235607 884341196 648527 445406310 942330531 987085171 23299335 216268256 59974654 512792376 84481791 304112369 305923160 401232631 242805222 721434317 447096116 463364058 10777243 85617415 915348998 956467316 115732219 735102126 965748633 973905474 236818661 530448629 396515560 952276202 209746358 450690137 942008515 946677840 285064296 394480394 684408271 749757095 44719319 86080431 509168523 931845291 848002898 890174579 305563683 812282194 288108132 395447193 229984597 615202290 785418447 973867181 873492461 999228266 16488844 400782330 384399967 560200538 250884018 774440331 796417573 916518941 957522686 973971500 9091581 314900324 797351452 919455944 140562914 208784077 210307133 811168773 186726679 869884305 177513497 525571854 649861883 676714986 546331371 643964981 65873143 294042703 146406137 511170535 857631918 952195242 594750957 729244124 607735760 982297315 209851694 258372878 919984081 998219578 475701457 793585188 821025300 938379441 198972827 806853761 600250869 733075385 817388491 861963961 842227915 963132132 338081251 814752117 51584408 679519330 658064052 848300925 739058415 965705190 420053101 651489966 786379952 887498536 174769249 715230244 742846369 757414505 666358456 741505735 652557992 855012695 852362025 997478493 642458780 969214015 835199496 945592404 731643970 913531710 668176830 747393292 907800086 959513782 386193591 422132238 490482469 633834669 535572758 679356863 645576326 935746902 862726151 879834879 860779544 911290043 898985761 974486390 402469989 685430509 874131476 915743884 791159681 940270074 463544849 537918531 577118168 650741766 257287305 368815684 860765772 971142251 260894833 775123606 410725374 650624017 942779712 956991234 189726145 260507256 285035386 358066670 401254613 769958091 210656320 843047723 71922179 548048853 211295527 229674894 315551770 411984549 779209207 913090598 109120671 592078415 55041954 990318715 103474065 978487786 505026727 799246330 378819189 460188755 949689316 962815340 775158735 875822937 388488045 993662529 915423482 965816434 549018089 870055084 795720687 902034160 342541681 698278280 757782174 996034852 872468949 930451410 60125325 494169954 81933032 597591337 776897516 986029035 335862959 990433607 575523022 830256847 364054045 876538972 984991493 998034529 453057065 943472185 408831161 694098190 928198752 961141592 859145228 878211156 126162212 153723649 491225101 843821610 605294356 645513135 315521839 675537499 765915404 819701267 681210872 798010768 218048128 494133906 727948355 752861146 198523240 525557325 602581517 817843048 794793768 848368375 505188145 898310149 868326227 913689373 329655068 918684324 49474356 444682047 692739288 927887589 74562168 105357917 581335272 603601573 264140648 915848984 342535299 753489609 283242496 964035087 511413703 922346495 88871023 296563051 871739614 953026946 694977035 802100327 820048591 970929520 337704399 897130708 158698306 857442175 717148903 955229919 597123534 690441651 430609608 894248681 407011122 999730289 512438507 558318543 256125254 660035052 259118535 628012364 21630104 361716250 331375612 524452548 907257342 982760793 743621366 940668513 887751345 945680983 107152394 949719278 243748559 265484553 845414676 936464314 547607147 888353048 44828595 118013282 206957651 653120697 83498695 833274490 755066599 819685599 452784249 703352266 416622100 455464806 311303877 979760183 899382487 973888291 973615954 994566713 42590674 639674115 71971375 571679347 846021318 857860716 457250980 570615030 176022196 193991943 464301099 796105528 46067132 598907132 30192447 459749619 457062869 852935814 450345208 714210674 924355194 999694814 616415198 837470083 750894294 889830495 603756483 852797446 895428828 926446369 692854135 869896914 891434266 982019346 459364451 554389616 739355724 793561566 255549373 950258575 79226597 638223808 149195472 224447520 349577892 529869557 384793746 600125106 918034317 919571208 693480495 996644168 643265603 799161354 248940652 964636376 964912088 983940399 149996828 278715041 459428091 532316339 986518273 987706147 28688168 180678710 185989606 634479599 86235412 639526064 810322819 971788607 269472851 414026017 345058411 938931529 951763153 961607562 130312295 285837937 435316180 607226236 829502046 910134710 942917012 988779927 445215712 484069489 276496194 399193409 405892528 629468706 317522113 542202843 369117255 875157341 57263266 494716693 714631732 715480770 453033391 957205096 539886974 551051476 982050813 996192121 712999961 749823132 106508714 649075534 585571250 642120685 314101780 706329368 422447873 871134877 904949586 958289425 617538273 632414816 452562916 957062275 453145080 916179085 352316044 649530659 830441419 959680217 233601276 492768942 544594305 679270821 830680050 897566218 74078249 100191921 289416032 412876482 517814431 948443050 679471864 817136368 977817955 999826492 745712043 793143995 41595192 881238639 300967964 653803540 665611361 804825550 299408055 787907764 917757628 945033671 307513324 384787988 804115696 909271267 1754276 680146465 50783691 614590448 110754647 117735072 272894239 585461500 253216727 590421971 973159885 979954353 300536336 984425823 727132512 984617275 620908534 926882021 721698889 977129103 423423325 832387933 965450099 993826906 617190138 794096526 414003157 630470933 782220150 886647476 549410132 972176546 187756516 772285878 327848880 832275898 688387692 697475946 164518898 256936471 608408377 905072045 234301528 725866570 921443883 977863562 325691415 597582001 878624292 985502863 756110544 760076542 326400013 942870498 753891918 841241837 154349564 347575429 23625006 850795329 350333551 884386594 614529519 640242606 984257020 988111257 107685544 507590619 920066576 934734547 263350166 472844913 436644353 838031751 914022240 944301707 368990446 956062922 106521524 945599005 599810420 637596986 551467507 694904810 990535734 995456455 58522541 174128014 855625556 909884054 655869861 840492883 363050334 739971016 723305066 811712288 891751409 940460972 511312370 513427767 406199509 413459248 849563319 977793781 873352223 983688754 539581402 550489632 772118536 961951094 206115806 275028013 306962677 946198305 67016335 185068227 687500331 823889655 945922164 987031620 302711630 682733101 487035976 803129908 188542326 405623052 758934573 761927965 11086417 907455884 580401142 838034211 443079390 974061822 307235989 801285570 869395653 953664992 263415031 274624270 315177839 874385890 896464105 915907929 266368531 782131449 459356745 906272283 218842991 307501155 659891765 802951306 541548145 626092413 542018657 768302381 436625832 643382485 652355256 751660364 376205561 775333600 546860664 721837432 39470762 286462673 169905146 608295240 732027682 962776128 782830564 986436135 415311819 876203282 326318308 364845048 905734352 987857017 907271012 913645352 26623055 582154715 473768041 549348165 735102725 986992575 641401205 880642682 530322134 640488888 864969507 951221203 368848019 605255850 351744127 612356033 299329082 731850770 184490725 548032971 237112291 685730771 760295012 927927906 453156070 915440008 15492781 765294940 735506607 839278964 184396679 761433264 168384889 644458956 351792260 699472095 112810841 821245376 893965842 986764766 919634210 960478210 445787538 802220931 454061795 579005931 239439996 603808638 111064897 724923003 9800249 704325643 275113259 622332099 42399550 835976318 660040162 837108709 134854221 558675436 373280408 606747620 144522566 273813810 471591091 976658265 139219166 972639706 508806094 596759762 473500435 876980001 345154789 955389447 991842991 993263218 306319925 383304396 118860669 985743243 943780262 959215199 701330696 914801311 789804255 895772851 51430272 520352728 515317304 797430993 478033509 861187145 853667622 910048712 853021487 893900788 708348409 950623277 210849618 800378225 199478697 234677029 461337894 637678392 451626705 920073572 165860074 970003728 41710989 857128550 926484459 938649911 819167208 862418495 743319387 813918829 887900947 977219444 183849441 194294271 854868151 916781761 621825096 926151752 986845514 996139435 933237887 950500080 264812650 568330175 117369985 585513702 248424211 275211826 139173804 835569393 207799723 843935999 322569368 768187685 320973216 451037550 205046303 629815461 745396042 976568212 699991986 809421783 284654052 297220401 831413935 969186991 833884283 857535910 631181203 903176580 284559753 746845322 361654720 748504695 692421786 793877291 438020848 527721101 757056935 967708419 496295773 544162840 688586808 781719936 462582418 744034311 400714578 489434135 182279721 774444142 81408195 541175364 238699216 531053576 789945232 813639171 996584195 999268763 899460029 932246262 501470878 963423910 218172744 621186049 655221504 668886306 290716301 615113271 991634362 993925674 201616584 449381012 470432807 491514271 244440040 436992051 5253928 330147557 475418209 517678959 916503607 992719845 351534224 755201632 384843834 486633649 617457040 681804402 388480571 973195135 563416406 623327582 496091588 941647382 289160923 484736652 868906007 875047388 676904213 852147917 650134237 820198727 199438422 416162246 283323409 995764049 137305355 838758580 548838499 909284630 670901340 826211573 726177363 770652813 440865042 685615191 336992153 857700842 220764202 315874416 540368219 869478077 45114862 205127572 130811400 439988889 473977299 574849397 885125465 908514860 974167881 982763717 998130226 999269922 638791677 942657046 980275715 987225887 306746311 779651491 970503078 998618527 436329376 878932246 504029314 768643442 307692688 553216655 739974324 875148279 462163520 770764725 761991809 924057887 96284522 142495248 666915156 673952339 220944151 862435823 837825324 894551171 219181386 752719619 332193492 353859118 250089521 498670561 735968771 931725441 669174468 963084569 171560502 401404495 506012701 855160059 149422498 270191076 557549882 969355193 476712289 978713195 64916360 904117483 403922201 848155458 963145851 995929071 715390745 840305808 860835455 932104918 988546678 990292207 722605502 948909795 619154383 712697815 409117364 824327861 327050350 332436094 800184419 914740092 692406924 983528532 360668872 806424819 990589223 997450169 796105883 990976908 772410217 952018886 271933039 994213500 211957436 446224384 557227546 834490853 500994315 861492314 33600750 375072688 206379906 754737446 766445728 938405357 799289230 958630362 857079309 976918076 926531862 930023073 76287400 429923776 402957814 626531919 163081788 480148886 381465216 397992623 37978014 850089109 975842645 998991503 95456261 845446831 185094731 784878186 410986951 945064465 147838755 777486510 76524245 419050005 300291299 748369448 800826695 965856546 98962811 514141656 587485024 997636343 210934714 251092243 896697670 917989922 184677704 611998904 509262417 884410617 870997556 931270669 930582989 971442698 516292054 568989381 515670794 707113916 837278607 888248322 890985255 906685848 876088279 890452192 248399162 767576288 688388820 870334805 884491722 895809891 368496987 378616039 255172323 704620262 492995778 531580785 873848839 938170674 220610989 254108773 322319606 823019693 221109048 387816672 665356558 901547235 689563792 847572986 294247470 892166178 512986457 800816684 705488476 913568575 527131990 947363834 637762891 819778020 413862001 450364375 530566445 792702824 512004611 811058324 43981070 78088827 183852074 187327238 871150229 950630154 844755934 889212826 663722898 921934179 708595982 936486543 782718082 884460914 719462476 751824256 757541890 936244725 616276656 714791874 270065165 616898851 13474393 551578606 775965635 831300220 454427664 903365402 32237385 709546527 720957988 960542620 279405539 410546140 199869461 274211339 689602833 740025232 938031945 967956879 21341347 644800100 326042372 410316234 953568596 968314571 688261751 713895010 586294567 634246745 307474672 594463317 683645504 747544204 275169571 811571818 730914511 980129064 552830952 623104573 433124048 757393835 480433766 712237289 265425833 495483863 449449229 995606124 896660952 922729635 69407004 307945656 371525464 780184048 177492895 337497968 47085244 386730975 52350983 405265734 657231608 857314372 102907100 283598307 700376635 769513540 355356445 927423772 20965002 384153452 465622180 856329149 867007880 892201261 88733543 169216611 257309024 465765037 722102640 833147388 961356285 971978373 737470054 979661419 715557567 737055360 834538660 920089273 698814579 846550845 375789035 449359116 241330411 841569790 177634476 708120574 996181744 998466239 834573569 892422355 29879358 886246212 205611292 664408371 479325676 556177880 430628619 488757835 499734568 584069967 293458657 518613287 355010932 808368182 796951450 808994529 981484619 994465459 747538747 768858407 620516322 832757955 793653522 797002729 532270676 641403380 703469014 842646628 107504555 701978166 503982644 953161505 18058820 827304170 53869207 672502455 979725439 988863475 698678677 760200327 661595156 989302197 400034441 586277938 493465486 619479640 668585453 844732532 115387361 378937686 995524695 998056257 406940826 981628460 496730779 585425403 401781511 552767195 590937503 813162182 105983818 381793169 825444604 836288380 467959504 684964219 504726459 918406356 284448326 568088950 925369297 952844781 259296524 633788929 381733696 991800443 479279801 919233866 355633332 870430439 900436344 939236700 573704912 585212520 84528033 89669703 204309937 668617252 205905747 256178858 140253694 660188096 640782260 705702951 842447958 976720912 151782728 510893993 24899203 950923436 227706756 661805009 392116919 628400162 473864469 796146345 744659758 871844779 748254312 776698968 88378681 389423412 609845725 805094411 769990126 817762060 502897491 878732241 113533137 611359616 303760913 654793331 134434604 153717551 114787343 605238424 990025678 995271134 883710743 960471021 963089499 985365526 138180539 822892932 305753235 817341905 806700350 845295601 336778879 741135686 659172439 735699044 733914627 858440890 912907087 953930340 898896583 963883842 253874556 589320530 165967879 207009042 367074024 451397585 692272462 984052211 380668879 887856970 934354987 946745131 740121721 964248863 976517880 981766530 554060900 919318427 711495873 946927310 49659584 109501366 655382995 931515810 367889209 600626096 634799242 937463591 243798368 865506898 756287440 842885773 255854001 662590025 667331753 947536775 578737296 605182765 233912360 236714620 915360842 947452278 679749333 801717957 779196890 937501619 998792806 999652392 501618882 822185322 973402288 976353155 398542674 721541030 77866765 546684840 703410014 898896124 974110677 978271380 2864586 951844790 926182589 956185118 758343115 965001280 856227206 957989163 506888133 643349869 713524008 926371364 729263637 866892368 67568051 179638255 726164029 917489789 731628651 978773072 792052862 887841383 161158995 618299002 139605440 422014341 13640209 692807999 875105665 977966677 863157848 911369927 284833078 479987771 327409929 437971397 761205064 843423727 201379625 535359697 470951125 807806283 294692269 910013893 956712753 976493439 179222687 948491438 656858810 776406197 629353443 767437281 484546303 522516673 144838261 944804893 546363561 585692287 781397951 881454230 535036677 696594530 654306865 953964811 778738815 839500477 4963479 402374150 320377542 710057413 850215660 997223923 502060685 573750612 565676705 876011299 830378658 965331616 540330408 808583023 950331240 957377529 846583532 899605913 682061108 960860333 628454884 765437288 647830074 709169802 387440786 734515608 526435096 787282855 791382441 905857878 149303608 884144865 313274457 426803021 546360699 974542964 985086848 999270362 767581475 897733853 707586194 940594181 957728264 993355051 547911421 764768630 139574966 156584981 928752479 984307067 429555850 968772286 724324574 749424354 8844912 309417202 675724589 870033752 139163495 861273416 451078166 519914191 114049619 253361292 799043451 929989456 55455112 622586581 197914914 450083765 911214011 921643927 750376821 993686985 674927274 780233136 158252611 726914264 651464467 985770934 432724005 565874377 489266892 571906113 925110298 998997594 671130471 826755472 571337751 580007345 668687309 773617010 641403843 812108571 723825373 898586182 502815208 981432380 399999529 617562006 27242770 825985212 140780496 631847498 86827910 629386836 68877038 176904795 764289116 775846527 558333120 566072062 763396179 953166678 202364292 238983761 768346733 924769153 827226011 963493452 194911289 974210744 607105743 726437073 75652025 792231634 605663139 699594384 931479124 946058223 818382220 881888182 314500278 948018486 158039197 643915980 245994136 661826063 917837794 960343714 893763817 962919450 443565312 797939584 986346445 998487777 704004789 875192883 108450353 443898030 630090445 894726050 496517882 727823781 760560078 880485824 243288850 912593830 829427660 946244200 828826433 942302331 862541618 990271047 611976034 873707373 641499058 797277161 181518341 215063326 39088402 985755947 718830692 857768804 354722197 734095626 373338538 478304461 91909890 351317615 186763614 645820362 818116623 927473153 370888446 491189409 197434778 426046312 991457480 998522390 847729138 890559526 824995987 964954479 227764725 292443998 11180715 160026120 301586604 614343478 649171035 790336981 997855104 998943717 871463964 915320511 865909142 977488495 867833756 993070682 647307559 925025486 505217474 711743142 510302854 860640326 793606159 855840015 637942162 916206295 828773038 879867763 729836939 960422212 912470203 949626485 365887465 770125002 918568139 922732454 796507922 799564332 759651904 893595177 859706100 898132272 264580148 916882048 53826157 945384910 240688912 672810552 831275000 876959981 368060018 408883338 893674257 913154199 525982461 586175716 595452115 878448284 638467396 933028474 239494259 261784151 218049192 261599377 287059388 900934079 421319223 922521957 796185289 857516016 634745480 713397738 566940143 844513182 70809280 733807790 532070572 542636074 334191202 466668890 934824053 965505858 68445315 404014480 970434458 973343232 696183063 805123820 369997169 762114647 194942421 952106663 360900304 819408558 179579692 732286930 444241230 783154443 427368996 836471205 130590639 140475082 474228999 883115507 253455881 471359384 454866120 656983168 351343502 579118410 590507337 998334861 997821 262952215 398816241 712276564 48384224 77519192 523330668 616153371 79241160 459168599 866498711 870103568 597866409 773772004 218773409 750124618 505350421 659194170 556027450 709245000 556713351 596976656 392910782 526372192 564849508 581390112 626570853 721438953 989969716 994652601 52728137 903784953 431235004 955640183 903527873 960462233 745807570 898686662 423515472 736771765 409573832 849146241 126069555 793915712 97488649 363751390 630373052 811210799 370098170 997282262 213690800 527051383 429247614 645833560 488421517 595298610 409847965 416465539 965011928 999120200 670854029 695640459 713855818 922770730 615695695 865491378 88354394 952605514 474599741 818209436 590232088 651097712 499715988 850002863 259161521 822708800 244466214 528748691 791508232 880564402 247788414 437919190 254890208 740739364 165844499 398577563 658709914 676604173 596923981 835971392 243844684 474301403 603225059 817690148 369484731 395949526 117402399 360935526 297164045 941586785 521708862 871923276 231556232 487024915 66369113 851580884 61216001 889597282 879778849 964343691 977455217 992449283 156767015 242435099 808881864 919717384 404583880 889801828 106711013 294212138 969581124 971998163 431642206 646802433 946181988 980362607 810576188 932003764 32380384 158423195 773726991 907578102 129468192 967671849 38344624 75126389 694857914 934809567 699109912 740591569 252981511 772728154 510429458 983712808 425255163 560448311 546574576 764067011 199710597 504322322 809660483 905112355 203261217 847789688 345483759 391083037 629030763 706719187 926207522 956118242 635669348 840949429 667841656 942976478 702501618 857642365 168944478 964861276 679830427 741344632 520371686 997148805 262416653 883578731 925300781 952261849 683819129 697288852 91743359 610533253 504723988 595494709 923254157 958197928 424225184 448018780 667767508 892957064 23161458 96158788 548900313 572174521 705173086 814677920 487285166 761118335 7339565 447318593 676299399 716844781 951357582 953007462 302030365 717865411 641937597 903984433 430485951 446699013 999762713 999908845 541128063 900567279 254513602 804187815 661129671 791121902 476454151 584534821 487560692 943934468 357691281 532225606 615373997 887125105 279756025 393911601 835895713 967938104 949863572 954901515 771189487 989457282 133962595 923888531 411237384 688923849 136046469 682544507 91410996 584632167 222526924 294381805 74010696 903528196 315716539 455965797 925595173 955639054 493099039 626103455 479832384 681676601 670954276 679647549 201131764 627082403 21751679 506897010 933295976 970942686 544063251 608230558 467742040 583303450 914376209 917751323 46920753 799777826 669939510 957940267 397710974 419507070 768269642 971943398 507684045 520716784 287801434 838591174 180891355 633020381 912585775 970978357 886041641 922532051 902663438 958399357 461921677 576505382 8230799 490339801 382661489 443465708 489674761 873254358 477470159 480112112 210448709 767359106 418020479 749755420 29288904 633604235 476104552 509238426 25919838 361449098 65291053 828769071 965289045 975516423 803898950 856881499 173826539 814133423 644474305 839714705 78838438 880599772 147473549 550672307 955184921 982966506 642805197 909918825 652950724 698604451 468054653 785817401 970225573 983461130 877099772 975918989 782795926 860077913 595298729 631887131 32025556 183863879 880443980 976824579 614392641 940402603 962750963 971747629 93320507 503853636 600208613 641855131 94029074 632562163 646403596 702706844 413228992 427195159 777546357 980329558 12350596 749245177 704402986 919330332 509945308 934440003 331494769 871380270 387564542 885235620 656215553 895275703 830341334 990553117 251418521 420892895 989086760 989613103 740787145 973404735 418872991 622761892 678533246 826061133 303738487 543231328 315229317 954783345 12147913 129018963 479571033 706019543 76424926 243974299 454532773 562518729 642044993 877757555 60797167 632952471 815295120 970498211 327947453 822750256 336587531 499847844 207935263 395530527 738242830 811232716 701019012 931139675 787781953 998186032 333175883 836775026 496017873 767286793 746205693 945898323 402094738 827749669 202587849 515210323 570388943 660813681 772664198 890412523 420082354 522924566 339656489 469410207 979440448 979984537 98583420 566318923 782499927 941353607 705842635 712852796 843192104 890778326 557262135 907044133 149246772 232873179 495555397 947859329 565928094 901747123 983168177 995854444 559237205 901595157 127968253 251400030 160188432 181523413 217023475 415323361 494512348 627264159 670660094 847669993 16735651 329173591 212009465 387150681 893400534 906695473 439747348 446861867 300279059 331085679 973582687 976422694 302281341 865117817 434573031 702622521 226077840 973928634 104720049 741346646 55997990 881122832 225194121 567168286 127353547 697827026 277409906 281415487 156049816 681104461 381311649 507029054 921097119 960567939 552441756 860377225 420232727 761425721 827208509 920229027 844979858 973067651 724274157 911652986 853325702 879525889 225931370 296176488 732865652 772349803 432983922 977493150 674268749 945514194 891264942 946817447 703348691 946803645 915311540 950198963 661902880 695482402 717317440 983810284 193464957 457572997 928595551 983490536 455736699 782155874 907483387 927120563 117372931 860100441 205198357 456344278 836484353 901142190 225312008 905110872 146510116 739519243 970677533 976584488 491381434 672783712 152249928 681547242 70651941 922699551 781490333 973797315 763759080 977635196 698998128 874059937 336463283 439067161 870829954 923690344 292937918 436980719 102611878 636693959 651554041 704237473 796099773 935174203 756460296 912228913 445203835 492113496 190769067 391182561 743511485 780136281 44752133 812944420 937971186 948529531 140224335 576357732 772953019 823809190 688993105 983583049 818100716 860695690 382836323 854522680 868791856 979231509 869611506 958795933 304117311 562031719 183862615 433206483 803240639 834665874 862510103 958671605 988407281 989259103 281842085 730076562 390947600 512404796 699565681 825669059 183417021 460463102 39640289 892064665 799622981 875329999 62721161 151947389 480637869 613160594 543167509 654065312 509644202 895986703 574493243 678500469 43127343 612372567 350626788 711938266 374844096 388892273 587271130 922912781 181191365 938468292 217209708 786907868 288361789 819744233 494081744 930405183 559563501 659722053 754963223 962926645 420906375 860137597 618339180 733351019 75022881 168654257 957490855 974445334 904212741 988602660 297561217 865955327 240083011 522691702 160233871 212440630 660817737 889702396 920930505 991023961 768767977 807112509 284199390 536273494 889417103 927078338 737347383 927062250 636645850 646405741 110513509 916161276 252247210 406593259 308649827 370492203 156384998 825380054 294954536 890671709 811504057 980906026 234027626 465020685 383278152 615373152 12078157 863141251 621039074 963498498 833376334 921603252 813938138 832880050 118461190 819493690 367697118 610001682 913667413 945785954 603473369 998909611 909481344 959950073 187285855 732623904 970106594 977408742 609954280 935274739 553197908 741968725 661256128 892829670 901392311 977931301 236608152 838009769 898360750 982624994 221162206 886123344 682850049 874223447 336598914 655977049 307130026 309492113 165332279 921085424 958627975 999495404 131775248 246169781 278138562 464865966 67950729 419814689 351172812 792702375 620803175 628166435 361204613 603302863 435219270 443123462 527499430 733446745 785144878 959562781 881888257 918953615 175380051 906269439 311047369 426112822 512762691 978189145 851573497 918660162 656931632 725311803 177582346 512678802 138935336 659677710 43522682 741964739 661142990 899624927 302042756 398975619 483345095 969837253 464129507 556367959 639130648 950110398 396219099 559596212 692765406 733783910 387218002 764148872 44870734 500053228 925293451 968505910 668429896 900984135 116209450 195788672 383546795 842756710 856531408 986797654 736150227 766388331 104142011 437167654 786128442 824507502 601259321 899619819 235575455 573074810 682557348 875216169 951682690 994319684 669271174 742031368 410356127 979433512 906702469 992179445 460000550 948780698 868937298 968170341 792513464 956999121 199420906 777020179 290442915 348061052 108582149 136444223 919013285 928827975 919837423 953730774 649709925 985940452 708599798 989025935 190494211 390032234 522379242 635152948 721430481 751343309 433748448 553270833 961714963 997480156 802044762 875087307 185665999 694397676 737720761 830170024 738677527 781048139 997547011 999532858 768357621 803425927 903614332 989258065 210855992 357448101 176440029 868397102 622301171 757064319 467328851 768582346 298806946 358349320 868393080 876629663 91178787 955030938 641089344 945697609 522663294 704714713 280142269 656766315 133099231 228610877 612385067 681852395 466346446 827301290 821474707 975239321 379293884 397807159 540628727 619289330 676317368 991396615 381456882 513260100 97616948 643305046 14354008 895067815 774201032 990114306 306970508 491760127 80097549 518683510 320139614 918856925 995337058 996787011 528897628 921449576 709512717 799842180 617092378 668657013 119154547 841174277 615290558 630584550 376972565 852633219 730766694 801049970 710934024 921518386 445674904 841542694 915326488 984493612 49743631 720007752 889066480 918689336 352001110 611967762 892441582 976795019 260639953 852401189 298383895 707225067 446170074 836567061 899138187 995962779 553649759 652348662 45502871 598245534 53758560 704441539 731685399 830922955 812229277 939335061 521740487 847693893 290261303 502762214 344570617 425822307 973050941 978662984 653175506 756315749 802183001 926739943 393566597 630861508 867348117 976707545 819905364 923906306 127300856 563766301 210922220 590453373 351444870 534746367 690952439 757862419 992773326 996091576 541657013 626423009 178578821 401737025 255433666 740703859 638024465 742873958 518190211 769601371 539998259 877162927 496302689 833774906 764893486 773748656 822474640 933227223 912005492 935943671 113029337 590385621 329526994 424879145 234591273 954587425 679075438 995021304 773842244 838181035 463532440 564552383 968552597 979822921 176700246 533736048 714073046 766786830 693070194 776154512 341170123 413815354 745929391 808711311 982471184 984783956 321949672 417921301 973671795 991873523 316470610 705344947 292222324 939378331 326134620 357460055 580291255 795139408 717918262 788560318 132437539 573177601 918645481 973664197 124298868 771131249 419108593 924120212 227257466 900568497 972960663 974072070 264458368 607456303 578615433 703766820 716771583 840120835 878186864 888375064 371029532 564373878 646277162 894374754 934007076 973610089 217483233 474364790 175244523 716204578 79728530 821462752 467011718 566199216 318169240 818365791 951725102 992499310 159882471 439850150 878955787 995393408 118320072 242079245 301736821 796691718 489478479 821758931 709157273 764685837 454425589 617002776 664722786 896927067 258688181 263040728 150528846 830996928 122509011 929617176 855708115 906071733 606136041 899889074 55221861 248799733 612492631 724301899 260062420 426304904 771404338 840130346 538673267 707216110 714789301 993515383 728470018 965457486 674646838 707339049 746284823 885093633 647313516 768798713 971022431 994536874 104526163 928601358 156850680 891965780 423019317 680039028 381377040 606346684 402694610 460568752 457474637 690693812 342411956 610750888 494468029 709696605 9271284 587844693 679531302 963034460 483894631 521615281 772510390 988610283 974378498 996121757 698206168 838812399 347707415 575046754 395190569 633610822 949453389 953044190 452273134 607514776 745719696 768426506 91033212 803394959 926515180 937579482 915115350 997627525 452544637 475405217 904133089 995151217 775393431 975793044 427069542 594869954 974561654 981781987 374811666 737802939 98425428 952779526 659609702 803933498 165674759 330855031 434105142 762753903 782211870 817778088 180532395 920806313 110125559 601026747 11232457 191406184 739028374 996618756 644754016 858320074 737505552 805401257 879482888 949478883 260753008 620848465 701846585 987291804 935973106 995270293 922755003 989217562 504906323 992117938 699471187 870145891 272601395 371328739 256211209 934934940 498635207 606728226 556965687 916968942 164325497 799269989 636897515 703855002 751003337 999501643 330743148 587059259 595528988 924387009 201575411 891385116 979542135 986344995 142114587 777381730 78566446 857115278 718957950 881272226 623519629 638194443 211890258 977977390 688404879 728530978 700138901 850614471 916102357 932538965 568580073 909360957 705932454 974784325 950300581 994162977 420329475 504877407 468856570 488527888 622356954 831944404 970377175 979108662 204730321 869273834 378197527 640473591 384728991 888315851 703251033 705154330 154012233 499791803 370946108 987638027 322862115 365038960 651087329 668247882 695126454 888347388 454152607 975913918 513422895 753722488 216496579 882091916 276440811 372605303 619828985 629141443 964369918 984693271 347106498 555819967 220150807 747400987 166174953 633872284 259600973 613343016 303153828 437636206 16600900 962938910 742059366 900576348 532827429 698748604 981509308 982229545 266712396 840919267 372914587 786549529 398978157 835757338 810153103 969006452 800323236 946755281 379277477 515902920 594781060 855249050 881244957 950942469 417343208 542067662 721973627 893298211 909077897 959641922 457968038 575296560 802735928 960933384 668205190 750057387 676467102 949881458 437878603 766676449 287171212 942459537 868287819 966599654 189690361 378404471 936874538 997060438 925249537 959361072 954847173 999840711 699387755 706710449 226843782 869018423 611825977 950197742 482333255 556990896 36506323 572045141 420938409 679319467 538499779 691945631 144021755 577865162 285642038 707786493 723665871 917018931 300383626 347219355 212822850 435971155 329082664 379052275 811795418 973912968 432728547 767626779 294349236 549504282 914615774 937792697 892516340 932586738 474414381 811610214 342457712 626790360 764367810 808282989 931027325 948197948 674556633 926739368 4690556 96003895 87347850 885403762 383125064 414911711 399195041 589502154 942123928 984245781 999255265 999824413 90994257 585243026 237053523 615461358 308653243 813644069 338313924 448308623 538108252 974155455 221913620 244880958 999254673 999510850 599458665 801635453 724215926 960885838 771233591 911111749 921191955 952951259 584275113 630827302 369669883 802126153 673481652 726939236 61101339 751812631 327124976 405365792 974644206 999863945 812662054 869346741 224678792 596289624 172079347 958565014 910512764 980337528 843887680 924392564 612001323 683311485 89261390 264408501 725689951 921969429 829974060 992663805 259079787 705203824 37826717 128300418 689308965 770268226 66716415 246948291 329806946 489021233 501490282 996517003 558771482 882482974 800654209 976046751 88518995 645401702 975245913 985662458 198418394 286792156 862450786 932450487 204854429 397779784 200655629 930568106 763709190 918748275 756649595 850000829 564937172 579906933 703635026 964128985 282616193 597272957 331024818 507229554 121607796 348963179 436263433 760337909 326272811 919598305 103649958 807944098 541743491 707315744 301817618 931071022 758452834 795838802 337868633 674647802 131069566 617387282 254222609 453791085 624839996 898542011 440253548 818112578 913585643 977238508 910258896 960851341 571260600 703201416 839472984 886077436 250227370 985722283 631192189 922133881 30861830 391423925 932246010 982813606 363039755 759832111 186885453 999375243 909463814 933899842 536914919 800217418 854891850 946570369 751053855 865887583 880023463 959179898 803016901 974724924 721732178 772159296 222458667 715450546 248893039 533460253 483190294 946226522 309120497 921366805 960338811 960523180 347836459 410279448 719798295 906534240 660379282 756158652 923990464 996945140 114659850 248023323 384590487 542658161 464992572 638646992 620729487 878145588 389903577 945976444 914344361 924858854 564525199 738025396 952120827 970658168 480344554 932212087 145471582 482843486 895119136 895697233 616754071 812794459 273887834 399930671 347220265 887243900 16466488 956203936 15278779 540287723 739540666 910932933 87004019 795197914 230699179 346754589 5961135 799609982 835885911 962548452 188506627 393478937 488255243 963791522 943977638 978883889 60878774 76997057 434254391 850993915 435900458 596406613 60533827 215913832 748807445 764795440 590022294 928581144 87771951 265590467 769947649 851193779 925855122 992049724 849669817 987887677 490868901 950143439 324808889 503945391 81035905 740540607 340419595 907788619 850673605 909018358 873314020 984937817 725947485 994078435 827664098 890232087 226321508 942717459 69628870 952350862 306915784 515856440 769517939 858719224 861148089 974373991 766490980 798812102 8990528 434736492 823651677 838616700 728573458 831215767 459049122 504723868 915035420 982062419 547510429 903153516 895952065 900187151 812513743 871579047 256343570 910007862 996528404 999953736 440887096 825801757 428101108 682988343 33864537 666948370 790105828 826908186 245395107 970702944 871914904 964357694 345181909 823864560 786114115 914195071 519994241 745543445 881834815 925218366 555812420 853751301 63021228 903810199 227467788 741823382 451733019 620195638 170089951 546919875 124014773 538334251 534637876 842260981 797397057 953787471 615241071 967073997 959813123 966786749 409707088 943012978 181294490 589595569 315200118 488551436 504993274 979460686 154249324 717010827 29554026 483130371 890117144 941483323 166457248 869814621 437497936 513201537 423452585 648421435 561433140 717575619 113983882 472937103 258630423 962905295 619023072 648869618 255934122 548236411 578863366 681098356 878324831 927661205 643178994 793296324 996835872 998139203 949726287 990752350 154742114 203159089 537303468 822388899 406676468 819752372 991343379 998360580 132429420 578350099 815336102 963503788 357449354 464419579 985555872 998234764 189678632 870131585 895427255 927172289 519400655 549018122 606287290 610789678 558142523 936576210 628215324 700872394 366603593 944696585 446364268 520586880 93540849 704429542 915284598 993220408 977005860 998624297 730339754 820204796 721820106 749282027 283725172 843435724 944069050 955957010 347384228 734695603 166561026 717003581 151696324 381045082 164615301 568892021 350400042 387139082 622132754 718030668 95752061 382066495 698963686 978018972 505170573 833994711 450065687 741974275 510695486 747078303 83151204 469098878 415566056 967814102 233833209 254716340 378066602 981398276 989962596 995708767 593781797 957899740 770899536 986493921 997213886 998688602 110056484 631932582 584741576 738474320 71309722 232117821 916264985 935255134 818523163 990204386 494735608 800466369 431662863 537720682 257499169 360865842 581390187 979373363 945304899 988928114 858084260 891677424 260363561 368980324 543780715 903397555 917045785 981611807 467402332 718902960 242014734 804524548 520660335 823607942 201139983 679466347 881733966 920865336 189160335 318775738 964130732 997823331 160920646 905552298 662196466 737508385 846568362 968496064 149315026 642435649 246996235 814144600 465287464 586019981 919477947 938744771 972520757 996206051 115119738 717721096 709870772 991733602 522930975 961964842 891103827 995580686 126704591 589531171 244942809 369847220 789553462 953915420 772837190 991559128 652019672 987499662 353408267 609168124 663204127 685862942 880503420 942736235 30074366 347973321 747186181 980345498 437248430 473896369 485826273 801162243 923285020 956990235 792512369 886550063 513567368 727874016 935374596 979288684 467050604 570791712 571048927 653612020 880228979 992939379 564460997 860622298 582156221 958523785 147806216 777889076 828150034 878472447 247707558 735636800 515366992 703478844 215214747 507757681 833884165 877732958 454054768 673083513 894494787 929379887 845061607 914347743 360635875 980916198 637424836 682411539 629135934 738790488 92125162 293383937 779629718 957501944 880995047 890042036 93809245 524565709 276960586 519908927 808319499 946418988 462528581 484917404 612446567 864328626 425865055 701419437 135116977 918975451 293194338 427417908 12287678 841329438 375784449 642499919 540900285 987882560 62072943 931830637 5376682 981791216 359387553 787617833 524492746 937978997 777150227 933292847 617163706 834033073 275349520 855727623 267131199 449135545 871172137 971907492 270427477 316124138 342975951 865062239 997051804 997063150 501723620 559995201 475247712 501359541 951797841 973996256 122108339 504232637 805178879 858448522 953191422 989796608 886452992 891416770 381107318 638461169 241916247 711595538 390372460 576416093 421898459 786839475 985053987 994125671 132287711 925770215 228963099 971507960 778440395 808863768 400622259 966007095 764534990 972241541 17360162 317121958 474945499 799577745 409422378 495767575 20568986 941208799 701929753 830617225 621704200 811461028 231315497 858325307 138428311 350047971 707038275 768059754 415881017 964864441 614353591 875442834 203356859 938144968 348818216 539890021 826371292 938985025 828443587 849775593 483927474 992631776 519349308 853445227 497064796 749959263 499251077 862273236 66943902 645181818 990255112 999265781 508169043 719632817 776159333 963889266 138068717 152881429 535856939 701106481 540001860 908383546 817032403 873478215 766105258 861553788 138136453 553154528 604363566 865965824 830109304 860238838 131636418 509928493 173337135 854588586 49277830 841916035 682078209 874985689 184357501 628471963 66662570 502746292 819897428 984647589 655947261 898398523 515174939 939274615 450176669 884085283 495201267 946837076 203020795 984135246 977839661 980870498 811800470 989674168 156264061 764455389 978923272 986127464 28361828 169589778 128615618 802192477 179824990 907972510 438665913 849970927 33970452 649301411 664325907 715466302 657312733 905750267 561471059 678014743 303377967 949188809 550042831 838697304 945100400 994392504 494630555 725643539 437217605 955027854 543906425 852741934 33765834 952178094 217786853 296628591 206578811 800961789 45785788 241743077 652414492 711734215 802480418 865083100 577586329 723077289 29874039 995641527 344344100 857597659 714512891 716328149 274036930 384945889 829959657 895613027 428785788 593296840 293939507 750221191 598565247 916341242 120373192 642920100 680826085 782479099 197972623 353341225 477796268 944588156 811870520 940117222 491876724 581423914 456177434 966275259 817411193 997475505 590020034 857837821 909021312 996735010 364505885 769043044 294506282 497472436 131368832 999864563 328133409 942816455 164819573 704679238 933312623 980406264 267751447 389549383 248437962 477289218 766371929 871854994 997021348 998956546 993257658 994006788 295483319 819564850 992544381 996841500 451180908 837706578 775548546 978655898 624506542 908725077 394931647 819837859 366934980 386909021 49619449 770718284 18585202 130661478 788935569 955141893 706478475 743625073 36058099 422364180 329729400 383701704 209607729 363578061 11349571 29692514 477084928 503502710 707518631 778863212 683868303 693780386 310061559 360829714 570055057 961470339 521897484 647853135 426565603 971596915 674594452 854002860 349664139 735447259 267332297 364025519 63638850 178045365 110223478 300664624 852441565 884504147 610500860 740655779 429078441 790303572 509668114 783810462 510969238 637079780 289436358 304432204 684991463 928437141 75139133 187211781 10444634 426235988 434329717 828767327 78849011 633905099 588262954 922421617 861863583 951545819 834910401 952640955 867016105 947018170 915634185 987428964 640165176 687113593 350181873 978408508 35448853 147459312 947395824 952150943 28508332 889831091 576339456 592247650 751228750 982893531 130298277 397787443 949882993 962169116 193724631 264533814 985263332 985828612 702845378 723455569 309691671 381550778 972913144 979840916 815348574 894844815 777750837 952198233 613303137 742443747 529584371 638958439 389996666 554832392 711552797 756371305 308459277 876832699 181401509 874034152 259477749 566102316 300011623 445975680 857774461 975052668 809033086 911970584 740275236 863295810 317733542 916466953 817440141 951915518 306901923 774267559 35043053 462007561 619048784 731350467 623035616 963637753 532295912 589904211 275141729 791654102 233335509 617091402 640852562 851485727 196591066 541041770 439706710 566030732 667414885 771193098 963856580 971106549 537727449 933763500 463665111 521872136 401444831 524114524 580256315 759573856 65994358 113288513 856160635 895324279 641921819 760752438 786780458 847946071 665248765 733653794 587008105 687607403 675570317 979835104 740433679 927350579 536887016 663269358 900914761 982211000 690491487 726383196 836786588 921133780 119623239 573314015 425119218 804120689 697135178 801499037 271693108 782873896 963043134 998123914 144272751 606514349 598087567 675500325 379066457 487173452 68286107 892491371 638346178 810230663 980227396 994077646 329229261 509959998 430377265 792913423 814690808 912392888 929151073 977523669 374237819 919279727 61086312 599585649 720669882 741807337 774227607 940122912 4777852 902105331 969506147 982068174 670823173 813021623 686176705 908218127 847865357 925948130 487430085 502090505 632442704 726706230 827121959 993550778 650298076 849682062 6952089 874867704 336957916 961392744 771822719 833507544 988237801 990586597 496018326 773034350 115072621 142041706 291467701 713093842 807523114 967620955 256411505 426242441 324662089 414488014 102527114 524060010 191181262 314314825 992429173 998780175 196749240 460416992 96355070 475738835 198934750 772645780 57575634 435768365 936746262 994925263 719423571 855141152 98734803 744481011 92053759 107547708 878761781 952302844 721165224 924982383 336066216 642162410 929679532 965213658 50780582 174341880 834253499 871494627 214706394 414280351 794486783 807664123 410960220 454155487 162318484 625304927 998860272 999716043 293648125 351401382 759312872 987929301 164289038 861305556 311249120 628606877 433736046 889579812 814721967 880039685 564430111 875151014 278773588 944960418 777381095 900312346 385105213 984011373 867709467 937010748 856254617 972108470 718867236 725564712 573096652 634133745 603836618 890331987 977321140 994881238 677066794 763074439 849576815 973168745 523758963 539958193 989959141 997458204 254717682 649706307 31782921 648252052 773353412 960379113 540720263 752155527 857745271 878921311 578676255 974656249 397572465 556866915 251940087 434731720 825507473 911016858 948296726 954828729 678223002 758462238 289896955 992984672 484507542 672059642 962556864 998222427 727643782 890381343 951821764 994021935 178254719 395540792 50371058 512617960 571261180 582164697 49743103 787752820 970097609 995837775 865782542 984058659 203573960 918989249 15803308 779293590 159089213 971858125 856692548 893856735 191358028 285100692 924825872 992759567 246414249 995383790 958864007 969898444 457059529 887670496 692930375 959853260 897401992 984056323 227691403 914555353 556965765 898101701 223617653 692826461 461089772 766447891 78806754 305445552 374964069 626027442 62989078 897244143 466461472 519638415 9278669 313831521 141748252 416066201 295344692 341289543 334452675 940191295 169343375 993903622 688945906 713687555 709937364 770682187 955883140 964189238 168105494 384791931 645686288 746338139 44083982 889819317 423689026 618566285 382582307 615000578 698864583 817104017 674565735 882646871 202625810 686267365 29103575 872064756 19711507 715448670 589477034 814051350 441782290 598154516 287447467 748162504 457799201 513520426 264082968 559525981 778346082 878926347 875922720 889406881 273509409 661238314 733328021 951539912 760836599 798825319 900456621 961929417 746347485 793000460 900332365 988503638 360035124 443686763 998792498 999500674 446519177 788571411 875887303 926864461 887131208 968265675 79846755 831345434 493719513 733065243 80144319 639609767 658758349 942367320 151443069 706948643 321520458 781679685 613644715 923308401 453680162 775129069 823793267 948225865 537195242 576061976 88467531 656607033 328967947 377938059 356421859 637396642 605041511 763693681 816227589 924013368 374653076 855574560 972921486 988057919 68270238 72469932 586361349 723338518 266141443 708244169 495688691 907328327 174461335 538406017 589038464 759460144 436933312 548476379 446280866 805569277 126471584 260637355 548587233 549320955 53128256 317825384 128661514 540902842 855892482 929314986 551648980 843028872 432856595 850157630 425195468 984287392 425269888 947787964 105329470 840398197 99539303 447184866 341876145 975777689 346581581 455169115 131247095 172852734 928841289 956183373 220860330 322821513 166237901 520781074 866882432 948851057 45111559 673900328 937667724 954055368 302287882 628559127 250166896 484832551 651040587 930668711 748201669 930163812 190562596 204028106 940314066 991275404 109511034 610482990 240370817 263875461 689864219 786972227 232900019 930406864 108484997 556333516 356718685 395231245 87603194 327905545 818044218 982454259 776240206 988867721 799278199 900555008 193217551 315862175 972069508 979297830 228302378 696026113 675112231 883874196 271440844 501442131 673284772 935943700 784151377 792490379 959026663 978449111 935765176 999089429 90138670 890132443 568133120 997757489 952199439 956154411 708234928 898879694 235075678 696202330 634362425 744411428 64687277 603500116 693820868 734615650 7408281 543292003 882624037 971658792 249448414 663186409 842944006 872070006 18653205 792275498 797308448 985449900 465482336 866899761 84822996 620762944 894003161 975894794 319741400 790663377 328915674 385855748 710414260 946469291 913604599 940726978 622565244 997350403 942933663 944240748 771902415 917217848 668506946 726395762 230451657 506472963 972743888 998861855 497948632 731865870 209915051 297880440 165744730 500651779 815887550 926479672 5905725 296568738 758694171 937237884 488160758 624295038 148311602 272515365 676443451 771843039 530711891 945216288 376186632 721724275 902351448 988851309 311670178 637873527 230531551 542730354 238832751 820991403 360078239 931200165 732772826 824426048 189315609 544524304 215414012 238657272 393183491 487278988 492616924 717675749 937553175 980377335 362805223 762556565 778631106 827335029 340230780 369167905 58634899 345465801 313153792 366982174 181285186 759502687 467797311 774338221 986214180 988195844 685098553 723513076 591232933 829045741 657076772 897414577 930738717 946256510 842122931 911794088 217135716 806488259 34162827 923093740 93776890 251911635 518592576 816112870 381476104 729355735 635904554 869331943 724177537 909712990 12172978 654683253 634282018 771855141 77738606 801840432 409166538 981682582 766297175 955995637 343553696 729304063 611646481 844943199 229903230 618856611 122430554 291146869 435026672 591703403 522416457 893189562 824747661 973947562 97691191 659713007 349174214 749891675 707722957 989937774 928335478 948647157 836773166 886401775 738993658 863136994 982164119 998830630 850133593 891023065 539082055 612955208 785822546 982707114 344574752 613253684 669502376 731993480 114433751 701923904 123059679 298551228 992802511 994710630 325802112 475907709 230583566 619385627 775178467 844258805 643943605 870061676 37474174 833526267 991323762 994624762 79839851 466346084 782745126 974641184 806176105 856122603 683639379 848763242 121204431 214282908 955135907 988890822 847818220 894573554 297835942 613482724 496625384 986970644 177328029 652983399 302519212 897589863 658793580 951313758 724223832 770550676 925449008 972844853 168466868 178870741 10194770 287538976 212324155 745462370 740583281 940172361 470348764 650424037 501656805 701420692 984923339 987908367 913173243 989805257 185867572 543917063 209698267 778851846 706465427 723369657 598007388 780800467 664725969 892707206 807428298 992404862 613395964 844577051 960751282 961494617 417618489 902787475 746412127 820503698 572561100 640353635 435217293 613811576 292507748 916452380 536193100 820331335 716236615 727150419 225786464 460359283 82846784 918303966 504325097 883989809 459308298 521063586 3389989 231816728 143016383 483894848 733150489 974344931 658378267 922778683 766253970 913160735 629352258 969612639 663006463 700647315 923035740 925821776 597924909 658182855 454862740 889422611 33542393 452709236 979654816 983759523 795320580 825876767 345716165 563713588 566806889 638954830 394738492 587295578 973411567 973657344 121119989 368041117 205161073 829598788 280524695 423919729 21685040 823432537 759110592 912216450 439209974 971458907 640988243 716563907 692102443 703999289 209177693 303838895 578239725 870756109 700065785 957477115 767376207 845961483 701984321 979504812 676154066 899163003 985035094 991247868 416095255 752313570 948813718 990679129 943129362 985637557 46627790 985182425 670387821 864141880 925735207 995716460 216511967 810469827 405289948 447078044 403093948 558520981 545027616 647583494 908063045 932613354 731853685 862725053 119660405 602518584 606203238 949566825 202007698 766294775 834408152 882105980 630289277 947125781 34736874 665567611 616847203 952240888 521470329 930835693 306505828 930042448 245645178 446802438 789942612 943904219 179315650 673076378 110924958 329858332 301608398 471726412 552252905 652844067 704915428 878405697 375363607 812138791 96118860 410487771 160481644 902856991 618318267 786751461 731929431 877908017 938999202 972490788 54266565 439936343 870088869 930326433 969660137 994121331 994835098 997775622 163537575 767124125 835722967 966573190 638367604 799441281 113586200 615865659 908385605 996806120 471838484 493675174 730123150 796428973 591033620 669554257 168281920 805398868 880886331 999555376 636379936 814872914 907616715 956325980 647206339 739719836 301409841 881599464 920350730 948190621 403777258 737039836 777551212 845449374 708320942 806523450 575407237 868862745 934402339 967179112 726650227 787949462 517815800 582511752 519761791 795467360 297888148 994657041 402119364 945705168 776593942 836274557 944582476 972168983 430786014 758115652 892375048 955901946 196030326 536164344 506185424 760318680 969658550 977543688 191031106 630789480 905228747 973189426 619448867 658297195 366082778 884528717 120162320 783533453 426376756 900403623 591827557 792822720 161266615 204288510 685618482 758941618 248371089 787499524 913676058 951054572 260911940 669526023 852455233 894502652 984956655 984968371 31396927 413608101 783153669 966954856 397539542 934260717 574854039 630279023 833492086 918952340 306375667 372680399 801544878 947541401 995358817 998133895 177936150 687272323 912241108 958151076 321321206 447659797 666385996 821574614 237338172 374836473 3220564 342453918 690928929 961061938 9465566 632949044 889694400 925712705 354468653 461010610 673793302 902796706 679966468 776868535 789587282 937577916 57811273 393179900 80286523 279180251 292880714 595939057 463459600 571121931 961579307 984388435 834455185 966050999 111711749 296675978 671271729 799512173 903801801 986418659 9286869 678645572 575625373 632140186 266061494 370047552 791546759 907877893 662099796 920907316 172942533 825332627 339844332 549511747 568154594 580766974 328035483 866996993 661177472 931352500 265279824 315851420 928542473 992077657 326812496 537507679 564663511 862901221 312463431 958094585 325436352 743187858 810912547 977528911 20118708 903960457 391323509 461888060 150360319 517916174 660907071 859091636 329603088 579260932 33608885 779627984 994963680 995033998 232240082 378397975 562214103 824180316 930767143 990027194 755295364 875278937 75791445 845544544 898284569 954036010 904294780 995242126 423567720 933567085 209382975 643040307 615321525 876966409 94507811 384364508 382101941 825473919 24989326 880258819 922955258 967184592 400498537 727021971 15925026 924397923 970549793 987298509 2350578 758752003 688274520 936927371 646627112 840207022 108945750 853588017 283647832 922341738 849825029 916042663 871482546 984942441 82819944 765200589 907019344 929081725 763994830 769893180 120788388 958578993 698987808 936261490 760426736 816073340 922944201 943541958 323585230 616650938 646735123 689796629 713320875 777041939 766800858 978491770 614970582 889761861 300573116 543693190 566932698 984486027 783536580 928560450 373058170 827232055 28276657 656334585 561517739 980128679 992208910 993642577 500092250 644371308 732810659 969139909 274965763 453016323 418164879 822774664 157850150 547923000 925308047 950097066 424931018 685086002 207386954 770277741 831834454 984555952 218460177 630425631 710436771 794023611 73094851 74332999 672034337 683975514 75085419 357375662 654203365 658705070 338850546 511310520 513072030 995409346 823083509 988022178 942349642 975934820 303087968 492881793 683759809 839733396 678075885 767700665 292644543 602799115 357687701 688814240 803472959 845310944 874882011 875065851 163178536 313787819 816391233 854461654 958768365 977064102 544417704 757524815 148843270 604943471 409190553 467036276 363340236 867904816 336807096 926999176 281240478 503899412 478957695 727258324 351620000 868984762 376685749 499701978 508639247 972610383 762763143 873454390 260258896 731016484 729334163 958259991 311281659 321665496 597750214 623319283 474720465 556785406 356725825 534741019 761047875 788518990 458330563 542996758 958418729 998554544 325793796 649691806 317251254 679459083 974497198 976547410 79083801 816007364 352046079 470419340 121083544 965886993 116787474 745211294 578831688 918816930 480560722 949553346 967267338 969681859 49602742 851540884 264883559 763134033 777905735 921901824 196975737 863964326 785253016 879571039 576742326 848061885 397160727 767379169 559895008 657105398 922748488 959168737 193464688 814350264 697611910 789119571 677954210 824135987 333339077 984491400 969614886 969861310 16482306 287819603 380816985 625426053 385372815 418436606 159051420 233313759 943322581 988224313 333542169 547686281 360956636 463175089 102017348 572875989 483587103 813311530 519623605 945892507 263354257 995017735 312992936 791680156 248956916 474350248 725304294 981287815 879900034 950094608 92230955 501639128 408982149 526518934 896206009 959049480 195409119 904532859 968840843 995426584 181512609 535131843 243015433 800616268 612023992 905453848 600392801 811575548 272168699 662871717 821188846 952145678 548261452 586256603 776583552 849841247 545991052 978053893 931351986 934263897 239253185 269234506 573460722 724482626 309337614 726641034 501529228 609389838 514978645 519071880 218087180 590135364 947716044 978298423 534895002 624097622 612910828 888992317 263198330 553887398 748529851 858027665 893526883 946067942 2342706 169226324 623284149 716773050 6322156 814056461 792394621 814505817 664780868 887160098 498660212 916628021 58626873 381999000 134396077 331050109 802250781 908443235 820574596 966438930 475835670 652712865 795808927 890468942 280408937 886214837 336963125 391888884 827255807 946039847 9981648 448758522 804533690 836520351 634691737 841178434 254750721 362544301 47632050 440092695 559831527 570573668 809723768 925647904 442298570 444643283 26778365 655680086 543477350 708177561 920965663 981845367 301141226 843800683 576383018 715805228 472387663 821564534 106506386 742411805 29454640 660349483 986025428 988103982 109927339 924267680 488842629 964286297 449542384 644463337 907043836 916342773 61939729 859300604 239874406 682283017 486416471 941271369 194966492 551846634 587280632 884153815 72437442 552319723 488152654 780495541 763241423 996633369 858972219 987473266 100792600 758378319 657404582 706882998 845066216 899900159 142967906 880663658 81255647 632379654 817131680 907930384 965248676 989976742 55124740 522929914 979902236 981539076 577869731 715891571 306236483 751192485 278851386 362276037 373105674 878203746 17549429 474931639 546520719 688429684 596712917 844602093 842126754 942938519 610647425 711287892 147158452 725440559 544541796 768025309 184245571 730361584 979449006 981061553 147935510 164962060 743454317 919412081 124465759 315564857 830634906 968666590 581897461 863999810 504044793 536408261 228290597 531330067 236260381 471836653 106863384 261421761 469573482 483383826 965259760 999483474 91974423 397669220 503311931 575319648 725358212 865939902 880706904 995449007 296593797 400217093 143978303 274819804 160685500 676104051 859110591 938946128 123393701 496861190 545537079 693235229 727499488 922871724 333683266 793099249 645546023 925177159 50043476 345462362 176096352 537855806 709259206 937515108 76710095 199597929 414070126 462692706 286757753 899444670 84465338 861103466 485441295 912182366 188474865 907011284 662608497 858965181 412161462 822654256 73811581 155139636 381123796 837391126 106450067 517044459 480090440 520104523 654145017 674569929 296061245 627344988 309310785 811088169 324040978 571744293 473856586 641085122 213667257 244645628 766635223 873573940 416243397 943483545 395943423 525029381 127079158 239562162 459230571 604675749 782833571 841726500 131199983 469669069 182746465 573424736 856294247 892928587 863285785 964348444 542868257 657185668 576866587 970797944 95739149 186140471 118240548 467442063 225090326 509403629 407295958 879106663 576950844 642664263 342510622 376944165 560978319 577567486 122791440 560546068 135423481 918020524 990209132 996646450 692993078 866514996 921927488 997640498 435624536 880845571 208203154 362596761 435587403 683368080 648377312 905470845 545121260 977175747 804101617 863762754 154162631 188951542 934835366 936316386 332151856 887490035 690575499 823131377 29978937 187468744 344610431 584795118 759836600 786974770 858787612 998400105 229787812 538701902 189850910 556234999 403939973 480164406 184834860 920939633 703080425 721899628 911503029 991968196 716831096 994505074 372792456 949921428 394025798 549556762 629021654 653508835 221354960 514032852 387050897 626521835 270512604 890596252 859297522 985586440 455364705 968376356 80691882 592337203 799329499 941893416 829892134 942587723 499204951 919292818 736417353 782414709 824637665 976275629 517846296 807725798 794449252 848434774 686920875 865176467 838305342 958683437 303229892 709081924 186565719 661601086 70661795 466692600 493305404 537631549 424542936 663493482 900191477 928259629 517740865 850157861 169445378 277577361 976217004 984848966 730844288 856284893 208175262 222217658 837095412 924771079 166042359 843310070 234206779 823247865 963083177 987902851 449706449 550763738 319618458 738992293 934199632 968166222 240692443 988535813 21135383 301410244 18462942 695426325 254756450 726144352 834450260 964256637 841002596 965979135 233139634 721530065 37459371 325389097 446380319 506192314 907617277 940730893 334499705 778196852 999080635 999837569 80806037 373559149 852544308 972985012 293743464 871309838 340706497 856154315 770894288 974369712 796934350 808908605 863377817 899866125 513150635 739092420 303782655 986158163 556426972 833607048 699897444 888147627 240132562 839557521 733351642 994824964 609061061 730781227 652528044 761611645 861660670 930133635 882751182 990665810 907710631 987231990 894501393 958447420 395819238 626644331 395069046 446611394 540685830 664569290 298889027 674052732 741015556 911405679 625318059 768220488 928323290 942936595 290110329 300207364 243333378 803747150 242300144 746693204 39372213 159869168 823867849 925429606 215954754 884853787 593292246 653538542 312987997 764569813 197511631 480913665 45379368 305381969 636316013 874083034 365203924 970943593 758791147 961382407 692579064 783632357 540680397 629391813 777034584 893953553 286152804 597067711 429218244 912219745 840960262 869870628 134172848 215577191 513806108 958265587 64712110 310783527 91748805 120142298 983883916 996516631 135555377 929482264 43173019 683772494 545973195 951952277 697158038 849583097 140691421 700595308 531902358 763102658 673358224 812088353 707873797 957101610 211849544 825407932 313763531 965339001 102370419 458949613 134211134 258945068 904469816 971984816 654187177 767984237 875516739 975222348 905039177 932881520 708719253 821215859 823391650 887082691 259589605 550706356 798364794 902883198 72301858 258804245 503762583 882221568 694761582 758074424 902006669 986201827 631024423 768166933 359116485 530335672 891718325 995418955 504314692 539851605 361510046 875782145 255418340 651428381 376646821 484271727 5797376 167272297 178585680 844638797 302885960 578409458 228418512 807119841 45469588 789969389 946427820 988004962 545510868 560599300 31625641 742050685 609172641 674852279 337492647 751804406 584734895 751342894 640882996 994240694 235730033 960565948 187303982 798191362 371685644 794792846 867234778 924661913 770439049 918120395 562335706 986820368 979815207 985932043 779353990 885268582 753123510 911097283 960174445 970260144 841117320 924188634 686237057 872611711 241146022 516330588 365049129 960236915 889501003 986942557 925027001 930460722 440768126 666165005 550105548 990507031 662950808 956961082 801895804 991961997 61325125 554400523 240741776 502798017 323360390 646712668 524654912 966947134 120550281 504917053 30137586 209696136 282976073 701756371 453196770 738835407 390691710 628027726 590452464 924207511 382440502 860151337 238421564 727865255 545148583 981559464 471491651 798844753 936351278 963132063 656613661 905863742 228476659 645728983 310804648 350413508 99150124 426337855 445808510 707825424 433854069 984023857 987189292 989849623 161166193 655413253 358198642 978511115 532569804 766647756 877493894 887637163 652159076 817080287 332328488 655720945 820183698 821379561 114611851 550546840 176692985 891358327 420698912 433573998 2430379 214390021 38775548 63641551 625349547 664191294 348121960 637212737 442494959 470813341 127033877 821596011 301118160 728186408 371821446 915625205 796549555 917286835 804914025 812563000 320638941 507198487 877530498 940877226 578952120 975769065 178647979 675759225 902699717 949724307 663348122 823327339 419030095 530095020 249304284 255083963 245403939 524935981 572364592 647248795 823030733 941676424 593964442 764402013 146615621 321318859 743330164 846157834 598715205 630199773 920918803 932851951 808272285 981969936 970914184 972890484 612955379 761322286 690760897 921654492 91097636 125574420 922961971 974806228 542643797 807914612 3124835 409810178 635767122 711928192 1683664 313071158 302522547 449253968 57715174 154899130 253850074 901291499 818728682 937324547 935493429 969843729 453240840 881845030 463626879 563661854 497051701 558451771 673698986 886227436 426020678 805005057 350430206 408779885 310463839 765629825 567490394 716050059 375780679 386118250 147953042 277485688 899258869 912302424 306066827 514472193 157329666 481873593 441422640 712956040 836433584 966473960 576200549 633581072 164984331 387633770 318089846 645453556 414266513 809243336 47274582 463700979 761939697 918797420 447492057 587888070 638587143 854189248 17387311 265528016 369496438 944521063 27422322 412106955 109033662 496881161 262725422 292360551 221546168 683967871 272235002 770139604 903500762 903805370 81152022 124490204 180556046 886011834 710273813 863823131 378390418 427674613 469850021 896733749 450522645 944776184 90879853 517728633 156311520 765533970 964614350 997601863 809586781 888412649 153916712 322183794 12554548 289511131 820062806 967781300 874407067 952655941 813136933 879964710 542702984 605933183 806790589 886954984 208723789 701372583 191125138 669764533 365983699 957715243 3945690 928752268 807568575 858582831 623433295 872834984 508365088 611590449 324021751 535593300 233367655 695965985 38757093 515960479 609149205 834438604 811465007 852149493 648887979 801729002 509259901 947502697 156245180 521525950 684763956 758397154 4026533 734927349 959722437 990820923 256730514 413984589 54802303 764942626 185336088 662015081 495897652 564378193 532256953 756174838 627973739 995827092 164827886 694533423 590102219 998350303 78650679 667645005 782241941 847112410 626822749 690278758 280437269 944762191 647204830 823633219 640441759 767525663 41604878 547885590 43737334 960866190 678894384 903085783 927868672 955393079 350169995 577044364 82795843 882648281 907744082 964146372 630617074 648875585 625069339 818731963 783416875 924493983 955050000 979525587 666175151 710737746 385972185 417235764 47321422 283446057 220399817 683682610 145657845 794578570 878784534 933825650 395005132 788101621 447069479 686684793 997912811 999984990 165639310 301040456 151608260 478471194 179452576 719384252 844235769 926046653 226068734 940808228 78190943 542725622 382881747 844539061 134763321 315344830 553567545 634458453 625735340 703703088 630660186 727085432 432957945 718175755 87392588 284549115 325625766 656443913 993422558 999357001 567901352 957239589 51201985 112157446 389836128 653469451 712478995 778690911 74169058 941850085 489829097 867907622 120739254 673539566 108360109 215702064 55218668 374798191 608356894 817584016 109744749 448246218 970139172 989889316 50517651 594019649 460345303 605636680 560080425 866513945 449451034 527854854 356682233 359817125 146738765 782240926 74636478 420072331 532067928 732017716 329476684 396514790 909873560 985739233 789844157 799431311 839450821 959244929 367545212 476844375 611658243 611667089 132543601 642562256 211429611 423254670 890449452 890883087 217090675 384992532 496986099 713939848 436303193 854174721 619190617 856629690 35615006 911959755 432695055 894849230 633691855 915367357 959158611 985132766 541255886 667614389 350670906 582180605 137623402 197442997 476628167 943221666 944052900 945051934 149454743 369858884 649306074 884591738 464158105 698845578 653381015 921017667 513920131 948107496 803959449 913781002 337998786 819778229 335738482 854766698 674700155 746249831 630280410 916488115 166384063 591006400 48052836 682793976 182582914 725219760 964419190 991091651 993942323 994787925 717696757 779269992 795298496 813146770 164753602 970676920 923367816 923557863 862814034 892004001 154345072 445020910 698484363 938456702 778166169 833446740 261682406 597055283 373754595 474717993 744523321 802802345 415987283 853127215 856611854 991731131 504388867 734762476 511241834 758094812 168414303 472458169 958272384 961108224 66829160 193990513 913047114 989155668 327453833 576036209 723209526 873396263 141731704 409321685 163866480 716898741 486846652 654629500 728080358 859427217 282609613 313751893 944048203 950887220 37031280 635829784 413146024 827393828 922755374 956426109 53137575 956968161 927439812 994966597 456509714 509812690 161881275 327931601 291875594 861577585 887771178 939177503 259072872 266213334 841491628 964510036 344146411 708806295 793330978 805053217 785358630 983915411 533695229 815316252 389438441 415643300 573035491 917174982 36344177 53980308 200466381 375430532 397924046 868144804 143955503 649049428 255716641 923685323 726030627 848729196 145659121 186668013 764955097 812280130 273322766 301745416 491969346 758895319 887124837 918267610 919682598 924178957 564386218 659628589 483759487 807704804 646441237 860959354 616615274 715893987 357741734 913944988 270198505 894310192 972645955 993051744 161666340 220863485 42164271 385652904 669850860 913394299 34606922 992139746 138216451 863273549 844652683 887449223 287428006 943669788 936118261 942053514 676101581 813379464 62612709 367852327 185584642 215916396 506416597 773438435 641713989 927030883 297694558 989084050 354374191 378856251 632751973 817596557 185480656 199250145 602517531 812563910 879208150 929852097 849800241 886415904 863163895 924822838 629657733 714489254 510686065 895581205 49072713 849573414 541755217 932899586 432593283 744117096 676804286 937256591 615790006 752280232 268726115 449826123 562305490 928530493 907649997 970063794 818057469 847758689 682969473 885788836 595084934 713665391 786017194 948714816 267352708 872963581 717653726 849132403 148951328 653620557 882283154 919652588 418285529 952755442 618510575 963925179 125204936 194174216 543805186 973573324 759063936 903096682 811001419 980244121 879248514 915869534 912021298 990515370 436578816 522754609 524408894 595594996 990378298 994163161 697720479 745947522 763804501 810110658 883654515 954666417 469860146 595476392 45459780 310680594 865805128 989563672 365547254 973405486 159413831 302873246 843185353 976837050 446583358 690840753 992695865 996072088 178041841 981244763 818500850 972781446 955969933 984577798 997124223 998193408 367077168 775856601 85545791 131143934 156445605 490813855 286373480 878433235 883447099 897032321 794135635 978381447 350980135 786964188 844466916 855040564 891594361 896139801 857758415 861320018 607088626 904536899 706539004 855628771 282548758 521517109 693487029 832597560 155542373 575217538 953479309 986238048 295876356 513134964 72047524 794167448 968845320 970954955 245575500 557614608 748811 283856250 324579361 932550945 405172318 695975021 142868441 568235981 985192742 993545101 131953754 872372036 138406491 675983493 557408529 764637302 957649199 963118739 279540598 833688150 5668886 631347908 240776705 854885711 871776789 992322156 43945468 673680114 594298142 713725215 643967662 746857973 526675499 762325664 899931487 900313563 360439703 494846754 553814644 796391166 596346185 642684084 56107965 112854833 911323504 937890590 824639878 923593009 821523638 900119210 815287174 936492013 274083656 849933628 537021752 757939082 874815700 904658381 278537747 481198715 616576938 721431784 462759102 934963720 531674581 631491310 920826469 931020974 476237426 854475192 504352327 569840584 707468363 708572800 398981713 821356202 332568893 850329916 732332997 770887295 720230155 899815022 646223009 759855083 203942184 686641829 672976516 709494901 599126807 685142114 676853993 975628105 331359288 972041908 285664421 506260429 873596263 957638863 661342613 710278161 14268410 276840934 863054987 871792580 166769685 376851728 500210545 577727675 228361127 237799188 781874360 934686126 453090438 615591378 679196698 897819660 615174767 939644053 941308225 950584765 595707269 788250421 516576179 697174389 559053906 817431726 830332543 874330076 487373884 756296494 932513033 976477580 124360120 780725751 880748542 956770697 189204948 461076784 978977563 986775248 128264380 451532267 750056960 830968327 567659084 730209563 223447146 656989063 785478142 849334417 607585103 851145424 986875061 998574223 280964452 969436292 805060921 868378780 621322546 868047958 815864850 875912418 76689543 576366764 845871286 963600162 122289742 490548037 429034396 672461047 538218563 736149336 701063209 743882241 777727470 958286366 117966892 214491929 997351017 999349486 430769280 894690920 294394394 406640617 979737417 989386402 342984082 766445504 584880138 889354103 719140734 793636251 813116393 979164624 87783241 234488581 644901302 833986503 819510854 948526280 17882059 160393810 288299660 334509671 29821058 476623083 59232885 711920872 951512444 964681478 403636903 443367832 491472988 895020431 962370762 987413291 365518773 565266865 301042359 584571352 231501005 247693848 68031548 696581980 676578932 873824426 416632912 645693079 938301341 954179650 821537307 822445972 120166922 574313462 242496808 921029792 538910479 954006131 216590860 512059100 568762608 580003228 595416994 991930359 325611028 721182001 70747628 645140534 437906705 638174270 209471684 990395602 47035548 92406812 429968644 972030656 230077509 452518044 984999451 988178927 895400797 919900604 759884138 799524626 829175811 997786016 473891586 485877162 488820712 588475391 581254702 832224770 361368554 570270657 586561077 669147257 290450850 772233188 666312865 773219003 125800929 257905076 580421134 818269378 126614568 438657127 994664512 994884610 965671735 986155487 321188492 604223454 454222527 644331564 237203473 795745074 744272347 899748379 794966497 826199816 682467851 862352260 737396941 763992802 640966818 683826630 830038201 907434067 996471088 997331217 249906545 656202813 768544216 996136098 378248534 703135247 703165262 964600705 160156086 192672421 601934157 918083892 337267645 574359808 778192179 808297927 577002917 688385851 453923578 516026152 715370462 973703784 352065287 367808734 51780758 128288088 535794345 743493205 232665386 984764764 361924576 982886321 352769908 886274048 698928068 803113420 535331438 846091777 706798480 714107117 271731256 514697327 767616906 948777402 661703428 843230528 938637049 974442743 23836599 337880754 664465237 786958170 690746747 970303166 950093877 976104929 712825538 851694830 587557296 853251224 968528776 978673702 570894742 610018101 862437769 923711303 272685442 744375768 680044909 685324378 55038387 303673838 53992283 583043720 792587264 987254567 157272262 561289035 849832313 898433130 384733162 705510777 709382898 879969155 671680693 889235641 519275588 839320633 392707371 692057527 789133911 955414876 948364056 991044536 867373285 955865362 176276591 870846749 525980447 851627099 101698247 396194917 333401950 549941986 841034995 972314609 828795520 841036307 43441020 352782409 982857743 999952713 811582003 975973612 677269322 763824005 978407460 996382858 351687447 627545502 530174224 880356021 261213801 811945306 388922754 637871190 369153347 932459868 520437295 831172910 572824563 628114660 993969201 998076244 918874185 954456046 58840622 850061629 51756473 408858819 666923321 919771719 768487843 874541987 766514086 777192963 195543462 548335535 296901423 427325625 154110554 929549850 332503194 580500041 60516950 405095249 921181411 983003645 860825764 869172519 287885955 366579163 116588302 188718952 495947049 547747681 848944460 914169115 125469499 216686105 102858194 381873324 33112172 381592956 75154933 800060560 332599164 617283995 660786662 970487527 149432955 623865960 85600808 142462838 716596252 776038769 771023021 926787731 884790712 975217089 345572018 571358495 659785616 663480384 107369597 313710923 940053706 947232516 845079414 897090266 299870840 449124247 383627651 812396097 756354874 994310345 91552987 961533327 291868602 377939989 949041207 982958004 201218484 586397086 865900688 948649215 410398283 627874845 710253867 740068309 725427654 977831432 268799681 978231058 65478802 445787034 10933246 390407682 664170763 754035023 295611693 451317350 494182004 908895198 662709661 741384202 156724004 728462349 455834311 483191975 510497019 836204865 661603252 830614577 471348639 760367740 336260685 381734848 203970129 389631018 130711893 717363338 182982599 596162442 270402776 320300703 39638112 433235886 399758905 452183122 46555475 545315669 48354564 519929210 474467228 807815765 858095370 942733233 902195196 905996790 978708027 995306523 45168513 788748174 702815381 836662786 243878130 334584838 152293222 592535782 401982609 591543027 643049570 838123575 240301479 369434479 263249380 682026509 678937747 713709009 500098903 589934228 854381688 975156475 940968606 980630337 569368328 705396700 187039376 773174258 31175740 355388912 370101860 557860450 740080993 926798451 459561608 597444974 946680645 998199652 23837050 933862213 890548670 988063998 143696402 833605192 223132650 816235576 489472613 583346607 406450306 480573463 207329968 971178161 951941105 958936226 803008044 826035266 117339536 839637648 731742470 754855915 719545965 780765911 538330328 673607642 430562448 809153576 684329061 733581327 10401236 119371919 403366509 672763255 467089767 508143750 921053955 997320677 113207765 832026872 180195482 568577787 384334029 730339302 331380645 949224535 299951059 942583316 312970017 715602395 973281046 986701463 13110994 655899173 428499174 691723685 446546397 686075134 851087058 922974444 891055420 974465406 211638812 368568696 912886839 993024106 286649526 417710034 419544838 927969127 907492295 965190294 816235019 843963150 527185451 581639869 702617061 848182745 519800436 769409553 38181024 603951554 775984321 794827049 308843391 364783674 423519325 986552647 399510293 421354358 682804126 946437402 678439493 779985455 618352179 656441623 393244951 713209837 808594392 837532932 950732224 978716501 909900442 962352699 272475169 938785731 505610650 777408184 794704653 994030470 338367688 840944596 455066041 733087603 708793228 970790374 943468345 989235471 862113283 921527114 668544209 835237702 290411380 983426414 322330162 853459565 161956787 795464046 995182790 998519651 972075298 987629647 161813736 849028792 610229312 819293120 322524521 713843251 676524198 955564232 337819999 744169848 435085509 529276236 232578184 349761587 708453863 709617343 130847564 591218858 196652205 790823956 165117069 255574076 389328338 881187993 752857851 956006457 878516663 916812633 246525049 919863976 688561278 801180869 630963609 877688723 867965865 889633876 164936347 649162701 749905020 946138458 76548975 351591689 478311130 514202232 650439154 836430003 492363227 760209046 734362876 818893144 758873925 927455005 378084459 835739693 243869581 406414800 147105657 606479866 542174940 890375827 910810751 949588773 726188941 806956961 718677970 856573150 386888187 482045010 564576663 608995041 635300022 948021901 214964327 580113407 464308155 680298479 451897042 786944571 107840839 549172429 325280581 993279754 257744392 745076573 338131273 802567871 780726970 954343102 118907077 151758245 785488945 952877238 424000511 488847041 462959862 769184421 948923653 969598801 659646138 972809023 70512122 251200887 259758520 555920390 480399416 936347048 434025422 474441077 186608867 440114596 689932537 933787384 659706336 874171304 303203730 531110557 567626571 913635417 524712601 706650077 200247241 927207837 151460118 346922898 239906649 285856857 274145133 680221797 535628946 677420486 230101901 246819726 599312234 961886745 368817099 853930694 633866859 797946951 501005307 629055938 353850852 373461548 942808447 993433573 332297791 613159668 974299333 999600879 944016342 982458056 982360902 982582591 439435120 846020717 79269083 289164362 79164829 822915664 912417572 963323517 249202829 389953691 481414779 792653055 146658554 909991552 712355717 891014394 822744709 835636670 673968474 933652145 648327894 896669716 155106442 342646380 46832513 852325958 726836792 831639229 621645228 753250806 56558171 597461502 964686871 983997089 624812647 940003136 855648122 923733392 115259493 500255387 706420605 890774723 143526138 322934195 946876452 975978375 32299824 980121644 112642397 875333804 184654129 360940724 697803576 834207189 821872068 984149095 733410277 905474258 213339178 991582652 854610714 957063206 623194043 776106217 955264410 999141402 634917950 976361114 321612718 702253689 265922155 982367584 337457606 603014154 793595981 806250112 289528769 560077643 131883585 278530839 826676480 914007465 323933990 951073907 870876998 974617603 599649441 730591696 675585967 717303671 488170479 906975038 267800043 760024922 654973252 983414553 336559298 699993393 849517445 969127874 972493613 998390111 240728196 383660202 633915605 903129826 880352591 942206351 892615739 928252876 630966701 990685458 88800731 254565838 529226710 912718537 13298575 466303970 300352681 516429847 830407907 830588075 840754600 865996940 441090728 577213717 800010280 969449008 807252257 946238931 889213787 982820106 190947688 717503644 33598113 881592561 661083069 732736074 503495222 895800372 312095714 348004471 414126719 854732049 882985739 962893772 714165766 984658472 953111093 967013893 880614299 895710003 719373539 725482070 320560524 332386640 138599518 679003721 924012271 925333085 433011317 586031681 769319666 802086581 372950593 530635077 831079108 845815940 627700901 900946746 589909097 886204525 589571783 646664309 278068574 747790693 983516526 991774513 160827593 578468870 734642106 916021965 273839500 641373086 540226584 932437099 281167527 932158028 205730031 786939788 582555844 640286868 504199055 582615034 393734802 588686637 298870764 618430414 206698389 391066361 157527179 500894598 142903513 719609118 720979781 894428185 773842368 883344066 591078825 862364243 118850664 566914784 728973994 785439882 618003038 911036167 676760641 719187685 448105717 851981848 256222559 672096519 627000205 663494245 624211097 945778670 562754939 745090639 63884426 111007696 840200263 915526102 932220212 972008446 289517497 796505756 931079159 938977357 570173621 648765914 824716509 925761956 584741231 939537192 228855223 441926514 96003965 393808653 939585857 994294840 199871962 234457974 626157231 769219123 418507352 827529961 493681824 550459470 866133045 962247212 33719671 651641799 917756878 953221133 802617188 986941843 637606675 947968974 818201580 908439847 648283777 723463957 31576913 393444868 111177100 647328806 928759885 963467743 887553388 979376975 228050370 474078506 839306775 932143250 655533915 903618583 582853597 759177936 833189050 876237283 140664417 330641839 482162221 963312232 186110004 544746745 727019430 771652695 134849167 735704775 634659649 674434805 119309737 686911431 861094822 942347747 423787590 445169331 66524320 773212445 446353864 737310441 403293605 458480527 955328420 998218541 636017833 657817185 158985200 981199465 650351931 762533610 774706281 781313983 308250036 670109869 933338465 952400081 988864062 995927600 163290990 329873468 743695559 968955844 956567918 973276224 263402534 590648926 745302640 804513249 534256410 847696394 597683409 876279520 501042281 822248467 520339825 950506326 3919265 76399703 341754804 964826875 782240790 876140567 220303301 827735511 136080064 679330519 946538776 946628923 346349939 547223538 788807553 885125284 109150623 829063917 102634953 774802668 950755166 976956565 305916208 770121993 435293132 460765026 24095703 920241228 190994363 304666619 535957354 614442998 270240916 643877831 441974940 895666380 89772574 230769435 761002951 890875407 620660108 762989580 633831448 668803177 876703712 952281146 655749672 715680116 145680476 413918580 719594678 767805228 30893744 825358295 155433056 557895241 224899754 416912048 881063382 901289230 691821216 828574950 903439203 966148727 193184119 703254788 527846465 886479387 872598311 968151563 479912144 730197297 840374127 870129561 532872449 736191518 881757172 973113498 875663873 917554851 494731690 661757622 655363351 680780693 913047929 936688654 418671455 752924320 730490849 873885883 206556811 814547338 826580809 908011875 859798846 989726064 224316036 965053945 761757221 849942139 213145038 850839493 270992658 657411954 508502594 574791240 571839885 945456661 122280654 374462920 925224929 944059268 686112066 690028010 806670055 874174832 413997657 882424737 989194437 989199370 322553893 522709321 387900539 945447740 652476681 805756238 809284209 863597599 985332448 986766227 207326375 603205368 262956333 841072087 756908832 964871272 470663633 569988845 571126816 676680299 380705219 670644227 75496469 954500783 978547964 979957794 30516143 388618680 164095048 560039127 129618245 452966953 349312094 421854008 96042720 819669527 285363227 858389904 845055016 998081351 489663176 712280290 59386029 854235134 218594375 266870607 902868837 990461011 384186348 944334640 90435523 764572288 520831346 559605271 229825784 668206538 354674661 595772130 734112260 850419155 233479399 763294321 540379240 648312559 361060031 738606567 562451539 686510241 862191145 910195450 468550798 589520439 697630990 928758435 205665339 716714852 121024704 179711713 659585964 823000843 970977116 981904888 339604261 939992464 425505672 779458799 964157032 986293734 858700812 985719943 940511641 961951785 153307491 247496110 809590640 862658286 360302753 443482465 676601629 946057024 346538872 591085605 205324669 374148001 895878590 932433382 748244313 926866671 764373139 778556797 67016883 245460147 226458922 271254667 549884852 611488802 819039284 846259137 629059788 769428815 874960573 881159914 535738389 798677036 961859127 976776830 333841619 647622499 989159997 990598935 935741545 959938604 322365774 984252963 472151590 635977268 820980611 927593172 452063158 539997623 527042986 661234575 146973633 351290692 904640793 943371508 790016254 811290795 576924020 886999758 223417045 898550662 78481707 747696779 302111880 695159763 5972140 513792891 486564030 879065399 751410839 834265999 423114341 819779630 42998353 730040073 513471667 733247099 529440128 695042044 193872046 817178854 255663795 707781465 398257277 934900893 981097134 999080990 832625731 920334817 745589449 866430014 693378963 842695360 385048827 614996025 328169142 729462007 244032537 925334597 313388725 715160294 20127346 783394975 988479116 988621945 840207303 921856708 566630530 596925409 300556990 623039920 748316054 877700762 828766000 870835996 529579406 586413804 608725404 948487753 710885941 927338537 912574638 985847605 399172178 754844591 6810666 572158833 352016201 896044268 885856073 988114287 606546024 961030384 49031519 826161326 62322657 427640474 60038614 424072946 251390680 690651158 626584833 721394238 377819030 444168382 290617373 329135659 834763520 950827978 572902738 710572130 446775949 682330806 161185088 981070948 301961071 550200832 358237788 890012117 971590356 989295202 857406365 930383814 72115969 993441224 924067817 942029504 224504550 322255594 879761909 976920323 280077034 350271341 897103107 940654592 736598506 763646605 720211256 882646383 527612458 704356281 832667465 879911262 188678036 866822134 211887966 695588171 207434421 229786516 497442961 854522793 125186829 921448132 228889918 575067028 606650845 709255313 459340110 757147375 878593559 895719570 787999415 878529354 90587794 220596322 175078342 603818183 147600324 966846703 664028626 757279660 244650340 670987824 41270960 916586038 980957224 991251495 798246755 807945960 467747693 626383203 58337565 583570429 88377065 419167942 158036636 159442882 915483022 973545264 698943103 844381632 499584 746170406 369470501 411309388 925471791 936722428 793542388 980141035 968837776 997495312 76979794 78901358 346205706 815076148 813777328 973382525 764440666 847642220 793213889 912146553 997226639 998352630 604112367 663082324 650344412 956608102 655346125 720867074 983355984 984020519 443446681 855977192 681634491 856287638 867010864 968917168 952115641 976637560 407587201 517900402 831793667 949420354 36765422 950001522 108675029 653647189 176955836 718437434 859932587 922295577 712603944 812632683 22756670 444897451 230011380 566097641 143653758 956136446 948458339 996267271 586157576 877199173 91506762 924042594 606678872 944211138 905846720 987650195 614619018 862504914 396532361 564955967 416459404 732909773 394315737 910149373 406453993 447202078 212299249 284568082 340941725 943298467 512184041 994847832 115008045 400147462 437175168 687263475 793565945 886161780 817864366 986187809 686711004 955379288 624638312 624682750 437864682 504467931 962473445 996173283 305944732 401275241 830720947 855514293 575315800 655528269 791024660 858797038 986014377 989810292 773239997 801021783 309416359 566700677 587098521 826388824 551248552 569171264 972022194 980515233 680954826 681078570 294406791 422013250 334763251 993710791 856233237 878575059 206234268 847846947 88348007 484541549 29881828 980739463 604251894 782586746 438444434 654951456 578296377 675695845 794963254 873520386 108826972 891256985 115144716 787349524 101236916 681993671 368518649 581930086 490993278 503307130 686589477 864928691 398335374 718829901 78748134 462268089 653901519 927696294 361145585 854982245 117071215 747967264 117321261 338808183 624549891 815027679 250631342 389382293 399669742 882196813 952787242 990682809 323099289 925531155 801192394 891181301 578097979 578629758 273480775 928620723 714628082 912128408 290843562 368262337 51511739 632177580 412709974 854018712 357446202 462402093 571436405 955414517 704465107 991496835 146842675 654107455 635636159 966783472 274799133 968257766 775714055 907885667 908614020 955777805 891587376 989722598 149245831 526224978 154321593 952337020 977259064 986777338 408064111 534083670 334956698 796028112 180313139 196224356 582064516 756040413 118372545 185813022 495340640 513099321 478995847 498724599 111487961 381979025 121086775 922336422 233997752 262573246 385430058 824650764 803011246 837697064 668041659 847857415 723177417 747424029 155720780 160897518 844152701 918460488 382744577 746286480 47448146 350695098 237233603 291478445 695067733 890877104 110895368 320215604 40588704 112898631 567557148 904313343 816182556 986821581 337049754 348732688 453405215 935105219 915459183 989861555 940729002 960036375 142984932 818468551 404761062 563021618 250862445 454403146 342243458 466042038 153530176 763702685 120823445 755769516 663924695 737786197 29425999 869316275 764130988 917488251 832775943 841002612 592602285 656787974 154531908 492613883 253496831 993085014 988831422 989622737 432492749 606126420 458400619 484864333 703483914 963451599 517202386 998967995 792550949 938114066 34316511 410283077 536187166 550526919 134854941 366033758 483116832 822494361 754988875 891298206 398821708 756175767 225143147 837806611 994620898 996707917 250790722 572913722 549121480 670518071 323108594 696475385 18955438 970688276 310170175 646089708 823132290 979324303 162838355 468504467 956815150 999759740 686155745 701395119 487658561 546759742 662474058 878709922 731867757 980875930 554057853 827795894 302957386 576719264 168046308 464620293 928462605 950757194 825767064 863955558 35277728 684272062 194244718 381455004 365876815 995997176 915698406 991040553 867599525 986548903 854325439 900215461 891618299 910028629 583245750 617454398 350458491 554666068 183426019 358783106 511261108 611365130 312897748 405184692 209980292 907839719 361624734 519071020 338845385 762569836 77480260 922924168 751074282 884146797 104645755 249337112 433835066 679773628 971810074 973848144 407233158 630928373 74486165 576941947 366032650 760056070 215471023 826089299 565611637 740387616 592399183 969566609 838425293 864699261 996596988 999482353 469389620 655958506 991715243 997515508 116354057 158081300 433596876 504861039 188710293 830360964 765938528 941818560 348500756 620429167 346784451 362827693 115626428 604269650 417813886 593411862 441423238 559136607 145127786 748107746 684637506 954185265 508176889 717499029 792519642 836366633 314385813 564161314 490093932 795484412 995073274 997358396 587316997 730390312 656164478 772178420 679833501 873987476 517849046 854597646 217050889 437348317 542591114 593874189 41884337 337259120 266224651 973409549 690548595 846913657 419273439 504180990 498529984 527975397 327243167 396705652 852040570 880346357 942918716 947627263 337532468 657644374 724883890 874352873 139410094 198226819 97124850 401258617 846991757 926427819 168665959 362981651 464719351 666953737 835538766 984520644 618222192 802417639 725053803 935738808 797054581 997199282 627661431 746172858 802935343 820852816 142189149 828649655 827236594 854669169 816488603 907888209 940087125 963658545 19812112 386111411 956496438 986927351 758943582 832279700 140614559 522769129 670017426 802998393 974255940 975820372 9967121 47857008 840361287 976263831 331460543 638124263 466086650 911265618 737365040 833404206 871181790 963697978 731469864 804995285 254603589 664760838 486072473 816083253 632207530 972210052 433882914 874138505 855384207 945348153 101647386 711932450 916959481 947332458 642293451 953507624 342873597 666837724 369347225 394836882 852225411 958490288 506397504 637921474 82197493 91977082 542843110 820677345 900837443 996813496 776037711 944774987 782961523 812444661 101069367 191136101 408623002 899711871 534457205 961635826 349151147 762831021 356532404 899483780 706621018 831257091 604234470 882171659 238481647 282501212 313756557 576932831 508689191 834445485 38608217 506595453 782943277 799451224 773464533 972930160 141531644 508398674 585625592 677759545 623660186 985610488 175852627 921392986 320390153 764337968 607704368 754190422 957232585 976240469 230119884 994704972 533346242 715246060 455517279 818114883 920431494 988728871 68281056 432905152 105244809 993191126 151978734 623047247 596995536 830318649 472318859 897427062 304072015 546161920 398661044 990342328 618316985 698837210 482360307 638827782 610786714 981806052 304699725 453875464 496622113 805991843 517750548 653683021 857858985 919749445 949612907 970172989 703188435 799164155 33421092 198970339 489633962 675080767 337126069 910853015 119667134 868756779 514665092 815644154 122109761 787750808 544880638 933955133 147455408 307047874 300971796 554353736 623093633 751341755 360298080 422051892 175511479 437975824 324632127 492608777 389841912 659085475 419276191 669563358 876727175 966820134 81217163 842000284 989847029 994488088 260215419 579312998 697853927 923776275 482181309 971651524 216224269 737182920 811223229 886795314 805599888 898631065 809892532 846875353 812920660 928778463 965751814 972696518 903713557 959337042 203786179 552625784 751611767 978345299 139899844 932010939 599703074 899977174 815126860 862204531 442485826 892989752 946949288 969695231 223950951 895694165 304200799 824281569 462628499 468178552 587690559 733005060 738844665 744210820 400230637 904268387 514663810 706374775 93963252 124225022 858287015 941718932 22196077 700676408 247647793 333313403 281948269 584822700 923392948 961736421 801942745 916835116 442941480 831767478 217238972 847130364 766134685 937857310 572488066 707544488 715067857 776374749 219946824 788103017 667407837 728954682 426017984 556554867 283294840 837741780 732797803 805097807 77630268 421179273 661618174 907184730 401049920 798651530 170498435 964751537 266903056 459846064 162410958 864788703 603935478 744487353 424111115 441996048 835581112 917517881 853885327 874438962 32641001 100452767 766107219 822203130 996920042 999230440 716461602 795960263 236646600 310523095 397031051 880809280 929483096 952287380 234591873 622581230 165047820 577541864 230997077 256521034 547497088 860226873 399481062 850386315 605234065 940231405 683150718 781131576 848810507 934808770 68545517 499522524 782711008 809449443 742837988 772322752 277353030 400304123 982487193 985711130 626005403 932835470 467233609 961092803 493345473 899610817 65500738 674260576 288318179 319663533 816755491 947870074 156955312 877698494 133052665 166240549 119116372 648901469 742120040 814558263 34499741 202945238 713478324 740764950 731333607 880134617 990505999 999561457 428872623 939954797 609128930 879315148 726699450 934648938 687771820 908697508 360149220 537496919 58857480 354945757 670118604 869562905 711734137 923839490 939692755 948945683 704812230 775063791 295104133 832465295 895866365 962935328 119898553 735811042 105213336 947228828 11053567 433335751 669613894 960896189 239835146 766718409 314069314 367626692 362247062 393938899 578536551 596965060 876899907 986855147 370627188 654502734 907998646 921472362 583667835 610451467 962681218 963832521 505135314 925898957 762623322 781071364 1779135 704937968 917955950 942575480 903286249 947512089 345492569 432391862 638949255 776080974 16562230 871186399 655832968 988720848 350603231 721408647 284299277 820707248 953180724 975096644 607158764 685828053 899224668 899410682 544095671 756451137 758432721 946058734 99851218 873476049 621784148 761822628 730312315 960857934 796371821 817276933 154372619 465450881 337927622 687438885 366649537 438707556 118392882 484835772 890946112 950892878 281571421 970285230 963973155 993359406 119918462 250299346 964204854 981085672 323109290 710980582 34556348 613515840 674329736 764226119 667342570 845349052 290589187 653847933 258234486 273800709 699095408 763963246 714505512 807171171 825398812 831914372 473467049 709853581 717080955 780798049 535270683 889210121 642858894 868979259 773078681 955411821 562585168 684887925 66624778 857409753 459718684 567136510 378612889 649095244 913968418 973665073 354604313 844996517 139712124 829970280 690369571 903758982 711985531 727134460 318221502 333153612 592282741 707234149 696572883 964281742 198268629 964929798 351654471 696801079 208337753 616697854 61312110 158845663 526233661 957419202 195226488 585201589 56663403 110789142 503404862 770146216 436259817 970397840 40757006 572527013 516038526 884802706 675314620 999661755 758901696 955376923 79540947 998103353 526679878 763320820 310407047 836798272 905355274 924105797 83573236 847562307 543181015 907550971 325652983 330060300 285580290 398348014 248388619 377690075 698991425 851372996 293892781 530773345 369998762 586556585 677594212 985613473 975106818 999117341 629285741 883683521 118139632 919285365 750606342 849739363 227478033 511393457 42783571 511172553 753525033 832976269 1014538 444789956 15063759 501149409 825945694 974095738 864717314 946015698 250089711 466065513 253008081 770705926 720890268 990079032 189372890 813716361 966784520 989839835 570165742 835029890 35723367 421290120 242600497 860553047 98760528 156701010 626665456 766682415 82065060 940909130 198774862 709161829 889418864 916053391 787188652 811691585 907446052 976551907 33364403 596912107 64444712 717880626 365831438 943839328 859922304 880308219 298068428 629240303 455100347 967800701 376297436 973988726 48612657 549068825 513058328 531469742 210324243 645249034 770895183 885844517 146361545 902182669 53197324 466868317 598198172 893891581 116713361 948779393 243985944 759650553 509985920 682923107 362145502 706084433 479850930 794746885 779550847 990778601 54577285 584648488 10405005 52451764 429627634 766112912 759024105 872460593 64504428 261238377 344692727 779197593 207907279 476154247 298819847 898911942 272743252 842061005 805683694 839194242 551561675 664679880 427204317 798404798 868815227 892637800 914633250 936688300 67495179 869510119 779130037 985709517 205273297 641052841 852741053 874713193 355824895 518452050 306989387 368741786 647539773 827919170 394501083 929124124 162921725 326940829 269526567 784189134 112697246 829775033 951503464 964806983 860132403 921645132 617924349 689863294 425886272 631216237 124427494 737283444 45457394 999248664 787846809 846898059 760029341 978953011 802675327 836622828 468404442 600608671 38755867 995120999 237888722 351119270 595585299 786509556 598434577 865715536 977141387 985387898 421015 765084570 356549971 998376548 343137206 824132305 793750993 848748270 421974500 893787179 134011110 398610481 931728812 999796071 668787546 859971395 381680834 725381536 182745218 580857407 507764408 760402996 50829637 265281673 629307834 710110815 854303783 972792852 545815423 785576094 993016369 995461102 338813039 517633155 44049117 507866334 415290639 719669601 9994708 966152199 558053852 673886765 19327277 612811551 389562723 600818348 534271402 992679852 675187320 710683256 889750552 970260376 26183838 146098507 977337066 997222953 957748780 957916067 515592153 694734268 170900363 302665059 618397877 887715346 737632672 739558746 458026050 963366575 783535690 840543952 386934472 935308496 304227967 945968853 934560960 970815652 618996396 654364402 260202219 647785351 459843166 549749521 131005487 140160526 97750134 832953284 209498342 774916764 99600548 405096749 905414157 924066374 148264041 281448420 189606519 330105060 161904288 226330301 856556708 926285271 381550043 722599872 300547935 528084825 669787659 907261485 711056232 926249105 596825056 669891018 302246586 706364187 614552784 767130123 509793441 737571551 695475926 952917424 318641135 543546484 743219937 961685029 221628693 779229635 206077574 426220123 666297193 910068186 888583982 891164414 665775987 829217068 64001208 889365980 969375103 998109051 564203220 633935742 212305912 562973590 306906718 694842176 23530927 210495529 330930096 519459182 297423782 771024829 658844374 662260384 782983165 909519387 845420295 907753378 212483991 444087382 902265177 955746202 153102304 276271435 56416069 323076611 218082104 505422694 491126104 901440460 291712747 400004213 846369038 973908421 217886351 270679388 424295030 603303617 816831803 914196218 752541093 873215642 544529207 691991284 439136616 575515917 157745860 945993344 850549067 877695537 313093213 838400465 848704335 953655552 31870728 462286690 220446274 590472033 556016991 574141811 911588590 927234638 806633572 850688793 503948645 722319979 79747702 607851416 74945097 557722334 871517264 963156114 31160900 983571905 941495448 948761661 98746358 904509548 659308526 668929592 987690622 995870945 37781470 294786024 326947661 830198510 459367304 742385540 625404274 985421684 665186353 839124756 436860042 907826429 507736513 789262554 902163696 952647091 203464582 637211974 202483056 372377651 632453434 842198896 478093810 483769272 248796263 594832351 110241668 150753892 111776855 926921316 612314670 713862117 193395412 503324655 338286456 963185155 57292999 948751477 330214423 905820292 945170470 955408813 793868549 864540271 994044009 998914593 648069973 809373395 898754693 956399605 781570843 934274271 751713079 948328684 237516037 509091052 79590285 322103433 197208358 611316022 779463750 888677592 166773214 944256097 426208917 695818685 375294480 464168726 911737287 957155550 798658333 951040968 76386400 516199743 175101608 403877191 410520170 932030639 847824963 991549200 80001599 186510507 364530149 440973232 250960262 915596715 49035129 761695743 953387462 976538329 770481992 979390228 144814553 936638892 382239522 651519581 829548530 973303846 616591979 766495070 899712335 998169651 541055377 702036010 743873000 982823360 502856683 960988088 21444357 157689182 458270583 966069001 813315065 939189329 857011640 916864231 269975522 990620686 97838658 828296489 913287731 929797963 230299540 405736978 816897999 973224818 381733794 735527924 114704405 905270538 927343838 959482558 627970314 943293041 577908460 595171648 917580768 923792733 482814336 588376166 427905516 455516993 439249697 783869705 931883504 932879735 749235474 898081796 214104618 442592198 747698172 811321789 34097321 939279315 76943666 429410741 702948860 915594805 67937444 574056809 54014258 838977761 262974711 421325054 645251763 893527211 953146636 978686663 788051666 898297747 105391308 227168731 322260180 811899634 29270598 176752260 569559851 590671137 340370989 393685824 801175786 912567494 324461299 749103422 737548405 841518918 330055964 600249272 477455454 940596321 725365529 921390720 247420435 257165109 587446444 596469608 243512195 256747290 142699237 445750205 541647905 852880785 502472236 765407509 329666024 626831135 69547147 431374925 726111379 888678496 30808449 637813063 992347652 996647682 314618568 320107230 398283028 629763419 392388723 842908608 590341286 983411220 865302764 868196793 87739553 736090612 9198084 562729683 935150045 940138943 334671734 581890986 170155611 531740169 251111256 853546278 534830971 607197835 176587084 736103938 415499388 587844116 409619137 685189954 696998514 876876783 185456719 624931760 819139800 864799519 297322270 963914058 736737699 831779900 456649758 523352913 957087341 961359708 257693679 546686485 359488272 368182496 763918320 869358059 515859579 556984338 260725572 933829042 777944182 857655313 769370514 798424625 934861253 943707649 658397878 739096535 50955341 51112241 293984086 475436892 527815797 556469474 993546642 999085626 134400074 318501947 100182920 426012009 133066447 707591639 573718717 775353301 482869528 631882699 517934337 761906331 176636116 971635447 37737581 203422917 932796038 952527059 815091673 931769946 639617836 880584512 534180023 813171003 307553720 480780260 267228440 461940685 402356934 895882476 782293121 921771348 497452279 499744429 474767902 597909719 277318313 481495808 220807493 849507911 775062204 870638691 199650346 838445191 390677865 491190922 668599842 678930384 128972937 560584399 717689030 871430561 859894582 879635757 154180825 218809830 302659970 798694274 17213561 552317981 965627074 999562171 111406196 709579483 577672950 977045325 133850408 349595732 360962149 818460816 515446364 938434083 641912344 700749198 854354064 866730682 943295576 966048274 325280475 417894982 669578246 847220986 992961625 999999546 164709053 855672783 944246148 987320181 644419108 646911085 874226382 962989971 856919023 925727178 55131786 747821616 739265772 838802698 883750388 927084082 78765007 433745069 252148394 555465764 322156794 490867311 490893833 723085073 994674494 994764480 31837652 741064196 856989093 922245131 68464347 430367563 248011209 907481895 720958267 949562056 762782357 826075239 801623620 833888811 659536663 725626304 436871931 735580401 866087405 884488379 176049252 438924151 212023896 224038605 528512488 752166378 331695292 452726573 320202017 846331602 20899672 292562846 950658969 983372103 314133587 643141568 224011899 532839758 865658624 990344691 642463028 846140724 447515447 652306279 327163708 705825527 936565874 956149062 562671451 837002300 392521408 683230317 578202227 860400529 621191739 996264958 945567155 996414151 877410040 899544729 541121815 894483219 39227935 537328619 246153038 602313430 455679604 795286001 226139754 819091268 814888073 972748354 755954370 878090454 222459500 805426356 172458081 370943477 835162133 962329124 367593521 776850080 662907013 823108348 266372867 996574573 345356793 656585210 67606345 788718037 640889654 643497765 493435244 859174533 225155034 402826177 691575461 922071328 498616580 762768595 190484164 934202821 243146869 741049262 374688402 674731720 784555338 862732989 829479713 918408883 49416982 551466391 610645902 618600975 656735021 910713725 711600554 871411435 792912754 858578263 636380472 974640289 694189874 800499885 974202761 977340517 92701726 680943523 245829582 552095693 188617448 791133618 259401891 764114296 422040610 765279970 456786920 517691638 298605397 610025023 109915504 764006574 414159758 589369079 411900261 782664848 927355040 952938715 654252378 713014354 37575176 978677000 472996444 609688521 736768213 998858981 627177691 770008002 225583736 649607620 998038169 998474792 951006236 998805182 407961271 636809663 236684670 493146329 356340277 579895195 729646858 944385862 277926236 922111016 838802718 863895378 971962498 981301561 318337973 398860049 636716913 860862736 132968760 190257314 697495281 831599166 586122567 794857103 406179155 552344729 920669732 947387734 488352264 967427788 549090401 723027871 124365339 190657423 724279991 753537892 285401171 735516930 615840528 915178413 17732422 671504736 960694550 993793138 919452921 942581928 95877015 542572436 36999985 38980033 801979476 895142118 794857123 843421716 648190166 755209498 410681208 982834487 913949567 926478425 214312592 863027635 449141607 984210632 246953796 756956310 822877238 971263389 901174871 915350191 665953442 757863532 263629529 549310226 519145238 741691639 447598050 670808213 847609568 912305229 131506811 161104522 840858538 885191180 494148072 567222513 272724206 318005073 263192216 996309118 248606536 618189317 44997469 453316406 259888356 655962141 750339201 812264560 671973244 736383494 528576720 605181364 340148026 811162372 266654664 425359457 58414276 908475559 850978499 990575603 590348566 858086368 844726942 903335244 842245089 885045955 956904737 968368991 431987531 609925082 219767837 470757611 728129269 991770309 895018761 988402445 999717977 999764625 148404435 576839223 468681113 525220750 303443955 896973726 42516552 816091342 83154353 550633021 723013865 880529746 608812406 755069884 583963637 608717644 222621618 436601382 987124050 996098188 585267439 869153025 96547543 936140034 943603954 991249786 532308446 727253660 922556006 945919744 699875341 898731376 572457928 667402972 809516101 863723340 404332981 892231097 132190666 880486177 191018526 598324441 738888488 754546140 18116607 732257000 118729754 467029607 761947801 849055159 527493784 736076126 288840700 757657657 915150296 964358990 17587805 989590438 121696705 807307704 307344723 750305054 847659051 911498364 270439912 844375884 254176689 756722474 965622418 968182962 44480897 264020807 496933035 865390942 588222733 797531788 912986862 923914798 367885053 724907219 369791765 719855050 575638009 803693571 80002314 556871398 990045812 991016460 586342089 704232274 845122218 912093706 290493874 619873275 577058057 967118132 660409573 933606753 516277415 757900739 591217933 765490471 696338504 698738312 929261570 986496591 61828542 262658704 675922419 693889452 819317258 850046044 889529181 983224159 232588336 366336056 49037160 295821587 691295502 861309552 345273335 878915858 270188564 884342518 983400739 997661692 838382188 999627023 479922722 485798997 848044268 943095968 795519743 976006361 296435223 704506862 633293798 772631635 880286760 962279607 727531031 966417472 472871749 916637045 77861878 759272564 30921544 870272390 725696064 814301961 211946131 944452753 140798820 538527231 959159954 983187089 574016545 614942002 52895199 307990055 663918958 791625783 120941776 876568439 930729609 965939607 520523677 612240261 310738636 790268946 851791784 925507676 592548548 718310081 970549958 987622803 686420883 830099357 139634104 695465216 160903531 862956110 541312778 659127197 184458248 960973231 818025006 920180180 542786630 849295315 421109971 804259482 106507807 597134842 230014932 241651010 350690717 690315285 719879117 986105540 768350037 927095323 6269067 901486303 275267731 548127252 518514889 924689001 305705661 558723674 562063931 706432904 173470780 379983229 607088295 870648494 935868396 970535133 371182415 995397348 55524351 383919099 666692034 918319455 668627437 808670052 786663913 990598004 872812744 912197439 63233984 996903804 756099705 797101699 857932725 878837540 482311087 807697486 269326837 341063230 27685869 218049375 793897468 911181953 158386325 540186819 312966643 336373737 414145032 778715977 50610422 585679096 919760045 993216030 503511426 726632499 934684547 946090453 7134623 396150349 813363219 951877665 636749831 655706914 777494488 914401081 504000949 727101743 886339467 984322775 838814633 935887999 805408622 861551722 400359060 656690381 853837365 897390052 118529208 295447339 119970903 811897370 563176265 841053311 348413314 813402986 318805645 548398936 789346625 825080810 741375391 795897329 414512094 482116557 44025963 614209607 747775281 976239741 370555010 619601399 18120503 451651579 592918486 765942121 89980343 793317218 197670006 584476942 349196177 948118275 979574047 994970908 449049106 751040792 677137101 874692451 49571007 533344123 655742843 683397143 53483187 407427242 825247627 958848760 151834347 289512991 324839342 623999784 710635582 961865888 906116017 974547482 962876741 967912548 414626579 505498506 973656358 986568091 694523501 948470894 65981812 512815024 742352179 805750716 815527343 937228631 557872487 946130683 905916018 973529199 914921875 968826121 707346036 980004647 686002807 966571165 727234794 928583720 291149166 715125154 870024389 995116174 339041874 894573642 813384232 940580921 86681821 814716565 447140060 724640794 928340630 939864382 110742860 630992020 643157066 746089646 403283161 700564236 841255122 919827706 448870995 660609119 780600135 991508760 810358318 835463474 519189464 985730900 499533950 559400581 880205947 985253284 114450354 163729960 360914331 501657304 763916842 875885638 92429641 139602975 917897118 964425198 395612526 737392215 745863490 982848875 576976638 590965529 328508434 683276954 529758183 928152573 845949605 918188560 334715481 524150124 283118201 727082123 26657436 927666017 750615304 808167783 759852391 850454513 600503447 716523135 515481103 847843224 804511032 886000860 952821261 969882745 90669847 887352122 191653851 600668655 583297829 865670819 578681562 735235615 121189393 395661299 431904038 636746489 416421297 464449431 508411856 543306521 678494804 710332561 352575772 848986398 981529094 990023778 799944910 873144080 821768670 977238544 293280108 519177975 179406401 308000711 392062282 549461071 983906006 988308531 218919972 233042605 195962274 348557021 817169591 993385408 454445707 456009019 277696589 655688125 885091129 980717198 168587662 674298246 182613649 328690344 947543181 979015068 33996069 693076887 728372923 788160604 985833555 997842007 434800609 586333881 147862262 208289003 834513589 908664429 70396168 205765247 253268489 355399919 288496511 649367819 879146894 912367561 95796844 852301937 598777776 972224459 134208772 675327951 404885965 902944259 633517159 955568144 37498676 41591829 927469008 989629879 748569849 754731248 970899072 971583388 248892684 584271808 505511877 976498102 614090162 966593204 416089774 945502696 575773241 799642371 285744875 398997557 749931799 772465146 823132632 864479621 680448222 895610965 995022734 996172510 427384561 779194789 927591782 929882231 50684788 856044645 615465269 906413077 731293574 839653101 424014978 748692999 798580080 815223929 617192191 734873679 438231991 563498907 220034283 272718580 644798051 749733738 205152768 517957856 552223220 955127778 865599534 893360207 517296766 663392581 119674359 458551263 421868794 834604667 481160249 591428662 903828916 925730477 401767808 637448283 538758136 720141986 106976227 729473225 902729505 942590313 93905707 862715549 497079024 723118349 835982328 929581770 334098628 339700613 826421585 896752856 63967869 683754025 633693338 939136893 271838115 639395244 240454147 917758870 457862861 894392821 452053157 511182979 727279739 899795340 190399992 217380254 53910266 113667092 142761881 655298622 753632264 993995288 358177388 814528048 473070074 592406236 505906263 826742912 429075995 931839475 51409606 302115387 947454777 970206399 921449558 982463553 281432972 898754095 673924653 842529364 868023392 881153964 996576951 999534842 712969925 891456753 565910473 866604616 473201594 534229463 620601449 737794545 901335585 982939076 934404656 974795143 541859072 744580632 189699084 421194900 806281711 875558957 262847481 604081037 809127270 831602181 722552059 840886987 457974018 667225978 159890155 703249279 841744983 939629156 568255124 666444221 440084088 685877973 982452929 983182449 44554972 659193981 5095886 546699939 341780147 797357476 311130539 746638630 33843198 130590029 283691815 986435990 732174543 733192041 877567708 995671544 440739570 528520635 944736605 956643706 348555281 408314265 863054701 879837693 7032363 960193792 60144545 100405336 164119471 705367573 865806923 899278710 527561814 760486009 642856897 646676403 341122744 825097573 494661561 851623832 502085338 947684737 288988435 743483622 512926932 677246557 903358365 978596485 203792141 786489841 663755810 732630634 546294372 946024193 981829228 997914346 899006869 936719980 310841856 803792290 800241125 982872612 977193450 977971201 436419747 680969673 589877316 664939434 645567586 908028254 892674912 901937306 237224036 684759531 26811175 457974726 994511523 995119328 140054334 645838243 915258961 951562542 801493520 832865411 597226460 818005881 328054836 850205357 777602553 812461038 629318537 876939080 286909241 722884097 8508182 164425251 317500412 719881775 718511014 772953450 712525127 996190540 845156320 898152720 193397807 941867485 718700237 862176960 617240753 675276154 523521435 912482613 976078885 997199031 610569249 616855741 943861027 963206181 275310641 826531712 775345477 794260502 15983947 605316545 964771699 974119169 975321883 991916072 803596120 935472406 995363410 999421476 60176240 976169062 783936542 918025111 244778789 252686293 974619213 983097060 989950114 996302330 287285716 573808127 608592171 874734574 19287906 503631737 488118507 954515178 870581953 996773009 863367600 875337117 338884845 640898925 274701301 825462484 140016137 995019901 438616480 977809387 826288198 841113340 107302138 805868715 210560120 588197148 924412046 972808244 770089961 815229843 726661958 770640764 38692181 595842959 214907424 526392431 187055115 445849596 691537771 858777662 638870405 786602643 624712085 733242531 870478840 998469371 101945037 923036185 900564001 961605951 648151947 774833062 607415238 860288619 529003457 574423977 835914333 871618416 582924883 587579474 440406695 691605320 4778058 629725251 116983631 164019118 163348935 401481633 988151868 992226180 729390397 743626463 925871773 939419521 55619706 133609042 624807499 855439730 783847564 846358603 276046169 342425108 324389330 732113043 881505685 984321883 609941271 619142223 725656671 812626779 764818808 826396370 704236088 985284764 188405874 677279822 604755500 682711417 972780211 975619551 559488690 861958603 465518670 516861288 832748712 967760252 345668613 487338074 982707810 997083971 29882971 543846184 965393373 978352673 359741252 485206372 809310200 865375619 935791135 983098361 884713492 888336799 23699548 714801716 429362407 814815681 895474352 946941199 350348351 609231427 46003730 454592466 254943261 739655935 706103752 890995255 114147555 874058247 929400907 967158394 237701508 771110166 625176497 790483391 202860371 389473481 754047052 962045448 20813653 381577505 128918065 579258404 800429085 916254320 648069876 968341297 742757231 999349276 621869668 808279344 975390925 998453245 287145703 299370541 239057489 978585351 145165187 394946929 739116957 854309647 314648412 421317593 620951260 993414889 559811717 995378270 641192209 774530363 774988618 834428067 21386979 156965965 692343113 948799364 757240202 861513028 378228412 461622213 163143055 339619714 384490910 615517996 372119862 605238584 456630627 763166932 100668482 909402144 581458477 660819134 865326727 909185627 456033444 543914659 212105762 738308745 662147589 777355301 95215689 210324326 208062370 249591681 303976254 476320115 204492685 608158932 865064108 961718287 11495458 574330878 693127047 978817314 211843085 235759150 218278145 335858205 200935138 772571086 263569408 701650199 132928019 244390344 469462658 485764869 542771260 610750490 158997405 485555766 781180018 800494056 398901748 989727838 566288126 939650340 455525395 848830606 523250047 643256807 304540681 546821101 616926711 894693247 25549543 955989834 484441923 827393345 219755614 492144651 943695087 999950555 447509343 749113920 233880461 878358823 797994795 919219665 551382091 614960754 38830397 409071177 647143018 669637416 967869008 990208815 376682809 936085311 445142228 911952742 455290766 560390979 419828759 994168102 245175171 470455942 73984910 963116551 529273831 711206374 338840438 628719370 241663123 684290159 733681908 829156366 553891390 750287197 990984351 993284361 438920082 905504085 329163881 956164905 978521723 987847113 439189132 891443669 727541054 840930176 985595954 989455997 99503345 819771215 370217053 555628580 575484635 932914103 461051334 462699692 402913616 716432351 756131577 955458056 26901616 164302747 716840134 974748117 919105186 945455774 832946380 988161016 723763191 769972120 534229560 992811987 461113555 853202682 192503156 936568365 898746681 902558142 976845360 983752140 371859866 669952568 159509949 767764958 421094303 715625444 298021372 650207651 196271048 972279487 898906643 920851790 232658291 766527059 355669505 546825661 387506481 983140897 339202989 574518317 653036998 938525537 364991938 959286883 151670167 986633498 210252352 680244954 820014412 931616558 577685930 876076366 647657528 990416955 159580261 721086887 526243775 605529929 526113245 844897633 230628250 687734510 765709897 939509590 479158683 813266589 733470671 922398718 75678239 919039132 275723943 671959047 133614656 667949677 289858728 865604193 461221072 949806171 238303923 252965659 829963505 985049775 901947443 926115135 664886714 696201326 933011361 975389166 419535370 523340041 614601548 656735705 420118331 792707181 962338248 984643352 919377306 938203959 424609870 883913352 945231489 962127858 427659255 845507557 713491386 912046119 83862897 240276849 865762127 915338220 538788416 672523535 495715130 796337617 340922671 558592901 59124270 883612228 476562308 931541596 991329253 993177838 975456108 980658022 83124583 713226994 20780468 446435984 850985888 891378485 81459589 504502383 271011060 458269793 426514814 827114612 983940972 987132345 177685843 438911971 996280012 997773512 926034738 977010521 332889553 469279635 879898207 883744480 720347764 932864040 715417268 892372459 951831557 986647602 986166680 992977854 769624600 951407558 209487198 997968010 916493146 967520046 539743606 988497096 413289983 460637928 729947405 992163376 104734811 175402180 35612601 436250500 235072035 933491722 646777275 930590961 947734230 985271493 731259626 989452166 804837830 807237884 521144646 623980959 324855796 810296610 312311655 648255394 680881098 847718063 868929752 961196735 233574152 658939526 758234576 945167114 622988061 993875057 63017871 254992363 86731611 209687641 761904135 945333034 669108111 752809031 721805103 998988238 438901235 743997772 86778622 112797978 201965148 336575311 779818944 944221071 187946167 660478911 279320303 910878859 647843737 672499639 158736103 693749079 281685826 542525992 634760551 934259052 709290350 800553119 227063852 695889225 283920612 882090064 952351659 987906571 237277776 698222474 301196656 608110966 400758192 766950608 263056077 759429773 464168326 734309744 322594961 698907682 298887732 444432379 54667722 617156741 919369496 926214092 574799237 878205746 13763238 660059472 234807170 566974957 487721447 591149284 156032545 986481964 726778479 974213081 846109355 913839984 12092995 673711860 40548111 134961641 408643651 862162776 18706797 222330591 838487251 942021397 251387985 906336386 620517112 795036385 536703347 608280345 908517334 998628324 495109734 991495007 200840555 377718036 467440831 939698062 731424937 975562167 249482048 883972098 337611971 386393997 457780627 909409493 700209434 947790391 337678827 758793262 497530631 933186256 418125975 841428169 655773915 779236557 393792063 599932441 971296036 997108073 661772775 669722168 446785990 883585773 747302447 920990010 773011297 920850152 463435765 697060042 534844725 861642001 809133963 856262052 260879297 780304963 330911799 928662738 275787543 891607258 48847744 207832648 74428498 310126064 889964974 892141010 480322950 609626191 111120714 944010865 918716969 986882076 509123623 916421716 11198757 855497767 481959496 663301732 738267255 916652215 939801377 940842430 473337001 487472293 326610342 469249054 279383207 680130955 29860029 589212007 513036778 725979949 948125549 992237821 958683525 970557437 457817957 527737969 459193649 658120548 366742206 562204117 651294300 784589269 379484811 965601173 561024523 844385822 688325373 799690785 289491589 642048423 735557905 982944850 943662592 998415147 672577277 896134406 220548132 622980144 68786551 945160376 917312081 950538824 981661865 999772524 822597044 863622954 341372362 934749098 746958404 934230315 75705179 821672613 609510175 766457127 779054763 903396854 807962682 885927999 897685199 909476409 209034024 239829212 639298407 713751196 493295708 938863527 272431371 603353279 585156267 741302704 690410981 742480680 594341298 825064682 283209449 415527402 522280007 995842183 763300324 852562515 718716259 848348928 33961297 199404694 422555132 511127343 543010401 713597729 200528954 795918757 577824426 964201831 599599026 918358275 719566566 807834396 365501053 517520127 70157451 242251125 515052228 704502681 972989581 990052799 801154499 805708563 244203095 720333201 656290097 958950744 388280284 794298313 799173332 880382362 561166738 563505955 378757678 386775988 348229193 876347094 810308353 987774330 938706342 975799521 254914638 872614114 392378724 793332916 852971798 985240773 676327528 771914937 461864778 585462943 219456465 330708591 397130201 453643407 985072757 986374049 854328043 990232052 963693242 988195433 463836689 954753060 510957882 924778914 486863284 794008701 694691251 838722986 48377694 509097047 563870362 805480275 515808589 539633309 787270644 951221991 536899748 723274672 814386465 966908671 27295283 734655787 592278352 861092383 406255527 531899049 967221770 995885374 60349097 848833122 803299633 865672534 324187821 446703608 996525412 999837197 122427967 795488602 462203018 733258396 679614961 750455512 221853381 613578815 32168385 275773115 692955763 885383810 976828413 998664156 641251679 751826898 776296731 904105280 549993587 813515344 798944131 810489910 808550265 952154794 752218181 922078676 175475582 566150493 841922203 904279442 821941610 853323498 702133347 899352578 35065966 756973455 536756637 568897755 658417627 659611223 965209522 970876277 554515860 818334467 692588538 777489388 433241314 469006844 541378495 683139376 900837981 934442992 40840124 407614473 806135291 809811119 884721344 974427148 118016539 229189256 425491499 753470278 442690878 700177182 962998279 986738157 110402392 436212291 746524508 956018297 657891784 790314392 863218309 939376475 516331434 788876046 540727636 913931740 279720484 765478383 651587446 931522806 540107050 843393007 954427597 994008626 417403388 723103882 725119515 768832191 340541326 839582701 664756574 775406586 727086860 986061117 915221746 915854180 867331311 887504524 546280057 603470513 633088267 994737342 895658433 905237429 394147934 425698911 78925080 333166288 583182171 834047039 530423542 813389288 730285730 890924395 34057179 638534565 514262677 962208469 193311202 196715758 714269153 869357806 281739455 410634591 615121122 756088686 420798010 942307430 853967448 860491116 210390583 745896360 384713355 490936293 854840851 987867621 936537163 937290233 27099662 306530225 788693456 851736797 893576790 926180069 150596216 559882962 952326854 956838472 416713937 848654244 775629204 841217547 67733676 383570755 524654673 775576501 845139243 963618835 960379366 989039216 241911019 620027412 456886844 799506285 304781422 701881502 253190308 825451783 996449045 996834059 25703247 224371508 770480014 777832165 142931894 769445867 250295215 600550017 184079583 342105520 416535151 906527428 980566170 994549127 209889465 536347779 272783483 582560436 94458733 279923906 530938641 759030114 35293736 49018545 827519761 970026021 944129252 950253733 502562698 729490963 761435016 954230599 182359281 278869816 356321969 545604643 319588994 732741062 42058851 822769943 583130501 774142959 965749994 993530249 797986280 976414349 877869441 973755365 912050135 975194852 915333545 971482328 102517608 812774038 404401813 540176170 268573362 718249750 487011007 819061174 814142938 982602819 492697738 920861533 636830510 731669096 516635475 667564340 338575622 561728629 617032435 678322120 372998055 517725822 972571110 988450687 878721834 998902694 779274710 853862542 221424504 867119769 903471380 986449005 884140786 995496813 580813374 958333139 437971915 511637981 380340322 477816534 402379877 555730042 915549085 971577871 80866095 316547548 698472919 935288306 429261454 561616208 687638503 694262928 882642862 895106839 716457962 866495125 41155143 503798360 771266874 872967432 9416806 411800074 306515517 806396582 708342650 760346276 216903566 855071691 637875201 799976489 34533218 351089804 467076698 935658686 219621136 457602550 642170001 861465198 196245608 674697618 234064780 899131555 948999056 967199615 309901291 954971929 839122463 951128381 30554395 591924376 746732528 867414245 449825988 569422545 410422696 625934228 241072126 587818259 844459012 851954656 530540327 667150995 55644486 81257526 142516893 735552229 594998614 712412372 859793532 900204542 382444793 421835958 431734390 484588907 278721475 921001801 994332350 995805961 987688212 991697731 956101411 961982842 679445043 946950651 769856527 963569095 314482287 804664373 897409212 960111887 809723839 987619883 749013753 840920162 554984437 592687586 761701628 892163166 333601255 377779592 295827471 322369273 612698328 642936761 983694768 995994239 583272545 691325015 949318929 958846915 871219410 897807492 535882630 809468018 953614402 959293288 986525638 993328683 399629794 581304186 915593884 999017330 114949023 119693377 356603943 859490234 929794322 949624273 653181553 772708882 388612321 556099627 551704693 990531014 284965382 643130759 422865285 448186591 286549622 290876351 334163138 487364222 950750714 971059231 48011601 648830827 720675328 836759414 965449749 981213040 480199935 705946385 584346019 835334382 683457380 887175559 489619122 535532914 99096084 654284150 991132660 999264530 516749879 831562713 57425101 822992311 220656494 702403253 103699452 704709347 255606290 287324777 768160423 891297945 602400543 823532663 572654538 832358692 347700675 421806470 644040575 877992848 506878225 904693748 647525746 990774543 98277724 870837603 990156543 992281087 878819599 978325565 864614440 933035810 572586362 929252434 974371474 985016187 668942026 846514519 850427317 905599737 454140109 478964421 135460093 163003767 40528836 388576196 448364676 552419746 342737839 917161384 414622641 638229400 39676684 333658086 189546256 499460945 63778284 129968861 95987340 795094186 921336955 961246349 533970545 747486902 260888237 575216855 90105310 102267596 500381603 942552609 532461510 813765407 909075671 988891794 900918590 926680314 60847733 287701988 785777377 939268412 151144023 604768242 156314200 718012950 61072860 978890539 3360498 87985942 906624655 949983540 242399742 573117858 219522155 508219524 22871586 451859980 649764787 717845315 480549457 506477739 107556039 313363880 6777594 308576528 919774249 923082636 248404588 999198321 639677963 970117351 620658728 681594900 122470738 710250183 586977539 852900075 22044518 413383211 64830097 326641976 487375276 615422056 534106688 957250044 642015955 734202457 839405514 970594078 98370520 128239459 161907184 890897332 787040934 990726690 911569555 955233131 217186145 332880598 481514076 757656383 467381870 538790588 187000908 296145430 710724250 946133714 70860206 779497960 217321501 227800709 264653889 478756232 27554477 995485869 411985895 487096356 940691311 958383824 819969268 892593062 968552667 990980794 150787493 627198576 868227953 921614116 964996754 965724091 62278643 725981996 203424435 849403729 143041702 490621559 377002283 644775730 969964589 997661879 625440212 694590930 424619182 514699563 41439170 654806511 582494049 887415001 415056771 442948669 917948951 962367833 283805674 638884006 947807131 980091486 270234748 436661144 654547977 764660661 599820533 804445722 386123438 652392649 600878338 895610629 503407567 816372410 400421072 489722978 623021108 690220234 289650111 969424964 42632833 456548897 739333142 923128588 112296585 290653707 184883349 902245051 199214332 426459128 61896233 600587618 111150410 622858025 756789462 918765063 631902631 793948379 935512861 967598307 809397997 987978390 91777500 600667964 753661810 972528346 463949373 905886810 158288557 580684293 809043787 819544910 43869897 596121581 161304858 996735321 578704469 893279995 11363072 818510619 130617701 292242094 648729624 955853053 846095288 897900021 978441531 984482345 944319172 971383873 392341262 469767366 132715208 562775207 967092008 978597979 148913742 338240440 639523664 652833202 69527822 316816237 449294135 649196342 301458723 453897861 875240662 969798808 636408091 765074645 577660903 802662892 263556946 385520129 74312225 893277988 283067968 442188894 631212576 948784699 569813305 617436554 526312175 554795912 241608241 734688276 131159311 799855456 259278720 840078102 230538728 407751899 874662921 883578056 364487196 812912198 951696618 992068174 328918234 881363190 384625894 394288007 514096614 536622445 423824756 994861250 708111692 988691484 188919331 605204287 455705928 825823337 337133325 624619246 957529845 963416324 902599121 946932845 658456587 670688911 203024107 927737877 129367361 703354409 573134218 736147594 676248714 905049170 891065603 924786533 170439194 196249834 651678521 905398616 287087692 737846927 837392538 985454867 852337095 861495153 705371752 793568217 291900716 845530377 301736217 476138998 116693667 541028528 234114809 799846965 456905028 882815050 792697061 875665804 38011281 73640968 547181435 946482105 399309919 439818622 435071527 680111450 566054818 902634039 45255236 705885260 181820686 683104501 591431765 825040778 223543680 532576334 642956026 750453501 641856128 993093249 896120645 967706003 207174741 576191435 933857660 955390718 603813349 630429096 761514854 941628788 322522044 648661341 819564080 822279537 848408237 859713339 261948700 673191491 439813113 677817199 641544674 869914479 428132005 728469570 697724346 708648516 86287285 294488975 403126653 650176905 709062074 885731332 404844540 505107384 609691938 823281601 402155068 574222682 458977573 567931547 609059659 802635279 896960492 961415713 707278126 779619613 997570075 998324451 594043603 909302450 923930098 962790926 969557139 981915580 546747185 972618441 494953361 598628252 481911556 577543410 199038942 553770135 207869642 548566579 452639965 566430453 39355204 536557603 554747862 586518004 743211005 963587979 433383623 720299769 281789108 882548855 57594265 889478788 336999903 797046790 585853741 894520546 450115112 688367766 470100235 852576883 97963482 863386156 635072651 998819138 675043358 883611164 557451271 917392348 721231736 733687064 537401213 764016079 123670632 184550769 476614739 901796291 540764299 927097581 174969137 934426747 564120561 884748925 595272456 915131661 56255377 852693424 610873968 860372818 1347264 487678541 121535412 424254820 927499282 995327684 891239901 983375612 244387364 830474051 201019117 347358173 155209247 304095681 775899455 845688839 979169982 989517323 40355112 480949801 37169276 781557921 104938550 814006641 162063155 860095100 158868572 349742665 149483370 881145653 127387947 963685687 505247480 881545679 868078501 932880166 172865595 710235724 141026331 600222392 338640565 949596439 426215718 809180395 887147635 966050973 616130812 841401663 976594066 981046136 838181733 926262210 685148415 757429529 974859817 997648853 216901529 379909553 715560845 956947688 186972020 676067014 606447113 861830196 544698526 561237313 252875879 284119202 909319252 954675235 904442575 943241596 953853874 957721032 93653705 875925900 100467991 817089243 988048200 995402945 54188039 333563729 406488551 416779206 462427658 614631025 702483440 747909946 685381044 694804189 659089563 895011161 574603903 581798455 869355537 872940463 467984450 596431578 711909057 806238698 165736035 510937650 90950221 863997392 628719332 882682799 394108290 777612260 604734691 712376983 65488168 241896910 791692686 839987615 846239070 893227847 571592480 765716181 875662562 913428239 82010018 549001329 252529073 294264869 171008520 856398109 737041400 785205298 514147374 640394582 972799192 986700444 779212938 974709212 415085520 718903552 184482709 891207287 587500924 729892493 337534258 632505063 764406473 829613559 437711010 547812007 570036402 982464273 467824311 912162394 525922123 584622884 541769568 719910210 29166552 626088518 11196166 203663218 156083559 710093570 799357542 928716110 892507609 980217323 228441694 304996822 377793373 481229353 671996186 719708000 651622985 725250767 504078959 613689325 550845445 574871949 666008815 845924118 937710155 962856191 931162756 964463301 297673692 622426812 379113326 906097158 761324623 964954754 396214676 851401184 291843558 581633549 999063738 999149546 827246968 856349519 63745864 492395591 257974245 286383670 526290497 861745799 60768684 554960902 861549402 866648453 545056138 819947419 499666363 955902738 355463711 413036886 486831612 889743589 69289326 859546621 583453198 738087264 355900179 592266914 988855330 994794721 634786627 703128513 398985889 776985838 820596559 918004881 447608720 896970668 996411918 998848520 451986397 535044330 627626012 720470851 129872584 894361024 520241736 627059551 351727276 828897250 665740154 779872943 614540077 634577098 663872890 841640931 489819020 854116983 196277855 604335589 395533491 709123406 296749559 524464985 379682719 558163800 407879315 559620678 291570206 823757325 606525307 679241416 814488030 922441075 850594781 890696453 392360458 853570426 669672087 738573815 85106956 776051100 143320282 601757113 961751247 994162892 788867524 791754600 670857423 911632257 617901627 639320329 554729829 586854009 746353340 875246742 861159854 929867938 359696507 387845865 421434769 659762289 732148225 976504255 988972773 995772079 81166772 307204046 45074634 496678868 978808515 992437982 189804262 307805594 432805377 799832739 441829037 885398536 451769966 755774416 381296561 680837543 775385384 967841401 804109692 945754913 584075523 756848311 165662672 633373543 753593879 777076545 954127845 991858997 805098203 924131131 680194830 788352143 689963493 882270610 554927944 575847043 921215473 959828520 497682537 772339905 303759859 566011752 451267233 510110868 818519984 824286260 862375509 977114329 253439347 654020095 196231749 830038343 225572352 953715883 133476303 695838604 241616169 799775465 788644990 916943457 648956591 765890824 434597821 564417451 453000419 979386175 167318270 300462103 618795977 971838162 387397943 861939439 926136452 989183818 655356885 973292972 55697594 165711158 693691676 770744699 485799585 927338571 533619001 618048604 591421909 657667693 620814178 850237351 406710134 686726055 748266441 902571034 46462230 251051953 283024088 840371938 86647549 92537458 63620165 193700619 311035620 785361688 764618111 930178416 415320442 930994208 938345502 976611207 803432991 830413875 854576547 886515001 803201354 803819705 463840177 765635936 289802257 559642609 249900251 259856461 78677448 303825162 901471268 904975367 28376582 802252458 542510137 843512067 754918400 921465329 274239071 882978021 133578109 348034357 177773883 767911152 789749922 951221994 893619656 982914838 103393675 138834972 278872454 455855351 809682106 936045244 140895043 784126048 527734656 746627504 262647261 497076048 863104116 949816016 893098123 935004743 489367626 892721951 800981854 868545043 986194981 998006192 860125588 976463252 817212028 963252995 192012157 717562445 808433903 898075683 358617468 923859381 813340948 837934474 236238205 356988040 872755735 888649235 818392704 840314057 347873489 649321744 768631452 817435653 437913828 942890986 238326705 553870122 520290027 895630121 586405849 628508771 53267407 209475995 830482241 954887313 270690056 697987898 736130749 800189074 107796413 256617855 634705041 933384793 337093101 835365957 618648685 697210849 39250712 855364286 534472969 748190551 364702578 768851215 94603615 540704765 867154493 884263491 434814414 451300352 720075953 953425146 163206786 585744324 461560258 628485695 544920463 794257391 737707914 961244551 716115529 763099643 678094750 769139016 881644682 905715185 527444487 978291467 317472871 835233769 897251286 957082740 666891478 772953060 161387300 964818338 195744311 769748011 167597115 666040701 864653357 885073004 330581088 664838934 57103383 929696487 715039028 940032309 511829007 568493217 540565087 842889542 563095991 810968466 78996957 485104496 104214527 788156984 198432723 984757552 130367163 571137316 317897967 571921388 365355241 983657348 458196065 563872946 249927275 267594398 703364592 812178290 555457311 625479240 22099789 45025128 399655157 995291782 186246721 589123344 580222735 820372720 2407764 371863055 859042872 959013038 834803553 841260165 275511107 895445106 263249003 900497058 536878376 811532870 957266305 998949374 700716639 778565870 662315957 897862937 483281280 780623032 923119305 969591550 437867111 669812975 17181420 569248071 552146403 928288162 478171824 659856442 244420419 595563171 239599677 242499467 496381143 916805335 183450507 259176281 581318234 643451791 667371368 843400991 183280946 783735207 702286238 750437998 195790341 577527693 350672119 484821802 134453796 295646391 358762134 960208245 745552447 980524067 821305252 943367534 100496426 505840137 625476705 649796806 32825079 46858655 610659065 691089969 720709862 770323346 323750449 768244032 894066094 982969408 86104212 918661440 162158029 775168209 629813668 639036652 896845205 953516883 514241916 961367451 939525198 940529156 849013764 907529288 738043080 817143329 910005674 954781618 54327453 653838327 212272528 584511202 568362253 599190709 683952200 821125211 867089486 912718740 852357147 881958081 447989231 702671424 351668271 902306780 709101312 961637143 563850176 947328791 91697317 852788879 730867247 848123193 610465844 667291615 982365570 982555140 294934322 517747769 828807006 926270605 47120904 567494919 509067478 582702696 981995989 995558460 354638211 946166163 482545894 843801563 869314894 920855213 59353298 286392082 7416190 555931117 520585342 671801876 693881603 880254504 269913255 771155657 104374778 674472098 873939817 990954556 763427033 784444189 140703173 860492041 844383529 934076641 563146310 751486346 477061702 847154255 258313155 358873330 315272493 910824623 996470351 997721414 127819222 717520486 970143298 978050460 248582185 253455627 981629743 995927539 490558970 673956359 439563809 771612798 261901103 447802397 349279439 615831444 778611745 802204198 334901569 593119887 540122482 989938214 444419392 628604928 119354696 592635887 681374692 900749157 122304883 850652684 394344172 648212605 160001428 301101145 476450440 764990177 390856997 832645442 476261134 664402542 994714441 998650411 370563036 910601171 457218727 573209087 147174906 550996436 478158683 544982803 911244558 935161645 240678004 410963068 149507847 413868428 877432198 984442171 769719225 939181551 262035373 633779877 129025287 133425162 247305503 258973271 766548030 955786482 859745359 924715456 515114720 728878136 440303858 465312260 465770549 531268579 410162143 914134368 376410059 732282073 301492613 481533712 993241226 998322507 595898873 934582235 793612621 863718658 293229660 436767915 183765654 431267515 318029215 746934025 95352439 878843773 415132838 539660230 503490455 970438860 261568319 776850551 449255041 570077759 430341593 983512201 622179190 749093077 417684394 634796746 560229705 986354608 827568877 891216598 78558936 728323294 990708090 995472421 880911418 899096162 93677541 241462514 137383671 815813080 639249517 675308063 454083955 753019320 170389329 338853359 93497337 315435836 39392107 725334559 528896670 948853985 676741715 864433708 450939244 741312166 944843269 990582101 127800599 547410048 405964859 927324929 939135977 992570808 200018533 394212767 547961477 943340348 62086969 224885457 193758919 898157291 644693564 667621995 954190286 956760636 302882584 716193225 895142363 975338601 238397809 576352448 491250311 907254772 527440619 858583951 826732132 905435245 579274911 914560948 982142497 992887488 988962011 997353403 171845183 440661989 762909900 811208492 36919295 727507731 751293393 864114593 715940548 716611140 886674553 959991053 434490987 520912916 673347038 878729757 187373462 446662852 714307152 788541623 190617934 512967569 557207510 631275529 417846590 699105095 809222168 847074407 773870466 839370931 54362824 185280606 995229681 996798497 307017306 972850883 160433778 161117622 962989695 983211497 886682348 993061094 853902664 915928474 414450967 993835510 900410622 995071948 900543459 936904755 888398198 935582826 16008432 176102665 374755246 639876230 7875710 777454896 652752182 942044092 121330258 880514585 612255299 864491325 906894487 980861201 638727460 680938664 461246998 781490252 907302504 956316886 328534495 494570110 953600723 987535738 414731753 531363169 375253328 530067516 439102618 914686716 114753928 810784798 870752569 873919347 586507100 771001870 354277884 357584332 888309262 980436344 85280367 925364682 987451887 992734248 333074458 558913843 896062113 959823472 62341430 544008171 815829690 867873697 193974349 771528823 900076221 953069080 529345300 867942013 715097235 752176417 959894795 985232788 125551548 495743140 589687928 999037978 957676427 990961813 196109956 737845987 846052301 921334225 815740261 849549749 493643937 841041260 946435865 983445287 277675484 962067234 255328168 502255158 19765535 674025446 276959595 448149399 635734675 687298208 66127818 213702095 395351054 567778479 111872979 187818487 510633969 691017569 698734400 800262427 282196547 624566666 659342140 805229301 210193489 408933987 19785690 298591208 207279049 388369392 574539834 874844203 222614124 574677993 852710122 992570056 604477103 823545427 805952799 997673570 680544882 720980594 965944646 990900137 791410398 929234586 87132588 569199181 709349298 880823191 843360476 865942794 724652209 992100354 726649635 938722070 879259712 966399898 140470570 259545161 170817451 178032541 772591828 823907126 465721242 539825770 540154660 794153066 296037903 791089518 344467997 528403107 310382357 709916284 887764627 901966265 924701837 995666164 154343238 802313327 448479610 751987575 192410153 315281785 745549532 914420635 55830149 285556341 729042613 942366147 959109311 971665578 886811898 943849902 998762514 999621477 243232164 255471106 318713128 678872144 476517023 728008892 195785314 621622072 817066672 864557593 413437590 825071435 317406973 406218401 315285411 788397794 60546058 478197055 926630143 949778088 276197752 326667227 769198483 871439812 814329699 953503042 538663634 546269894 527787498 855771506 742189876 777098996 465180821 557051698 763079425 843156462 387959865 485309921 689534693 725775519 937565543 951489371 387685640 891611021 489930044 949662035 301753774 460007007 330135866 879331270 441841528 648268030 737555609 924260410 834928111 995421453 221151292 811732164 277723124 650937118 723508849 752253039 926759302 976953330 99872913 544772671 985410371 992040732 295244237 462742124 882548 694228087 880960914 992387170 802226170 940417167 480613840 641090476 328750426 900318205 145857832 933095606 106837207 128047021 663038322 671324625 447776047 943965671 527182879 536996750 910688894 942917879 606974939 724592361 501719486 531723292 968538704 983881251 776975115 797295703 741115187 837895460 900419675 974135900 78441867 798244983 863922960 927197893 548243550 721971010 386674465 411540932 376327116 571238530 991007051 991759317 487270986 986832963 143442574 257392108 593963413 702380953 644015724 796365747 186422289 548106826 831131700 882168276 334718992 647810279 159118974 775291393 377443555 998126125 86727242 368968006 676088596 887279777 754457912 800269071 612564087 688288701 247619871 743640789 642761346 718096153 990129080 999781555 130347290 477703807 827500049 889948167 640720629 966525861 925433739 976030394 412004165 833159687 448771756 628565510 286878666 601901201 550959463 788257112 235057036 733336682 21866437 478202165 124768509 487243594 270540332 704309585 825962284 890702710 773923949 809822714 120099359 305536368 379686783 571902091 720513673 855077214 245389112 607073602 439369357 573165005 512551948 542910385 920341312 931291709 535543739 846452896 350011837 954529469 99179522 937109578 481260854 736820100 829565870 861076890 901259722 907830587 628795621 695163936 568332322 614447656 200542505 449099346 43446402 155794614 22393120 60900445 598255768 607945275 994040199 994797054 249135687 592649996 999616278 999656499 85978668 395487314 369837678 677539473 154523097 383978136 325154432 867224242 476878348 692355491 815002834 873474826 95892401 664526273 87201346 629642361 352619851 519711860 305710323 965986334 471978021 698859347 218819818 580349752 853304589 861345330 360614527 862128347 844222952 856427842 285512292 733129769 953920364 982366261 907621348 985709878 79299646 275313996 573866001 602004250 515407166 663044528 202323798 975093245 188747526 312942665 294159867 715100651 402385119 926476430 700297223 861062117 996641610 999864630 539414660 693633048 958432724 976729875 821842537 918428704 40436113 920090994 16559433 788634126 30809039 829870438 275333749 662726960 192827630 348487132 498981804 943807314 674448986 785359173 896561734 987516833 674742181 857183595 830358076 899306275 895536738 956373231 52875292 862940266 601133553 796807252 647269851 988000166 2298674 270503017 496532639 643755694 208590644 834246851 792956226 974376574 868752802 980386199 918153519 953690304 152567231 864127321 491124883 699048038 928248380 980794645 393624845 863868788 348390580 895542450 13727398 154868591 386797145 691267587 908444283 951397345 756233555 972443188 13705075 737622672 147471128 543575063 258352137 370947105 345109400 923481378 994188110 997448494 537753802 557640423 880027436 913371240 153574942 673030370 976331943 980481156 779190987 983347720 744410627 949580965 613019995 665029184 116324915 939585089 505702653 850611880 337827827 598640347 211872241 366008592 977607421 993836820 782450259 811712195 964458123 984837962 564638524 693106075 597983986 729200651 256443577 771080409 29573757 613413789 212110666 721632231 931694947 965939907 611996825 955547607 519486022 549417413 719989341 971603597 431869168 962451123 342257242 628885266 60135964 134137999 785873836 891265001 468303502 867484062 128590423 783100731 399661637 553508307 985963139 989469294 756158770 982183957 860776166 869026046 3764841 457103712 957245938 959238819 474626866 979210694 166444031 650671565 738220218 786817554 666320910 686260365 953018749 989745798 351929829 534529164 902930789 933783257 443574100 449296783 474937133 710606719 811571894 919901705 263139360 571784661 58745601 172157659 547996059 561492210 545908352 895740370 621548935 859467866 121321144 285287388 479161913 943468957 825762427 977705353 301764926 360263966 807070043 984652036 261627145 318704634 700847991 785286763 204688197 758003520 495283616 669684324 165131316 783915536 210270814 973623824 816159679 926306145 986249140 991969499 791771733 918111314 932677417 947589461 633663840 902475870 132705209 521301113 107925935 896470318 455033111 475293104 777124610 778284192 825552408 989336984 372914833 785701608 109465128 891116265 665315830 809663696 609894401 954018980 619321086 805636133 450673978 866148214 213547038 899111718 658464284 830484519 393273075 505791056 879637596 899170252 155868073 459338366 635532627 887665206 246083187 825768426 109974501 896226551 168969707 675231819 749868734 810051515 292379738 793488505 354405412 497694402 622817487 772688971 837443108 981006498 84446222 342014899 291725923 318816592 667212524 672891063 390343475 640724100 787596375 805593732 54262910 878721616 881065030 889051953 725310055 929647620 854376839 886042540 382622362 520444742 788114130 901361656 622259097 754088289 91364724 680410145 880401140 968325141 477154427 674015872 320447969 563404915 285150681 802257582 844941951 884157634 839315001 898398313 216801424 726453165 183232147 969063941 54443620 939684808 126348581 949211188 677948550 857583324 824940797 827162247 48644803 667835822 382080468 867496298 662126941 735849778 657645371 862272266 151531844 726039916 702259210 786110192 295404726 868345506 959676199 998683407 59590730 551985676 847031188 987356161 192998103 566934722 563236053 618365569 540844282 775790810 14046301 119219708 665493661 745341216 102596201 426013922 844001247 958430346 313448704 929438210 790816924 876049958 424703472 769017811 610727861 822536381 340560011 837415798 587623413 647845227 50730689 96042833 19280066 715467831 55255474 816219787 158523335 256019895 441303879 518499417 129137870 152419612 788658582 891238028 933819121 955330313 255620729 300735506 971099601 980315541 707639091 988414986 196538683 369755810 991489275 998107293 131812173 994802244 208584161 221219299 640662739 681585304 846359106 899740471 891491868 957937935 682787562 764029059 123005575 927150940 814580774 868712344 586526945 736552582 291524131 423465525 866579682 987358399 369747209 555915175 497149293 727940805 486285389 942556782 493893337 626634857 439514848 901881327 865576920 874592586 217058959 900964292 718857889 764600877 97938756 687769124 963958444 997649762 676963925 699490272 155778320 633447109 672486266 789746783 933728050 992821540 734303297 993226048 301735037 634753335 338593578 414496468 13631539 544863886 7601145 899915807 231462752 941311786 346555901 395452595 891606272 949815587 598053790 661860340 223398963 802715335 176511728 500847385 413799699 907784222 435244370 586096145 867271086 888117100 582823971 921254567 920972 27480638 672808546 841245307 31234387 433404472 76119020 412976790 941209856 958019791 528680669 832232490 985957153 998666684 548525441 676715867 414150877 525660140 42449277 693018690 361681191 397182918 79403831 190895179 339993270 493060147 30121899 838845966 792424087 884675160 479995939 926503476 818823767 981964023 257616512 616362471 976466714 982732365 549637821 757792006 966680124 975816495 469353824 559749981 97109717 675144594 394967540 839082769 134172106 188684273 329667178 810070396 299507325 524037225 591491728 656564355 477552832 939608250 47746868 298145077 505088773 796111458 322649138 718836056 618478032 954171172 386812286 966435490 447263544 447541090 353535712 925030938 422901107 477748229 377777134 788280553 663767663 805535854 50296193 181951684 111163782 183257933 584285310 965407345 216146938 504594325 366638962 790523694 704532845 895875522 650358870 893338543 881187469 974860588 264639828 578777831 63474319 427035871 197863507 400695681 572875306 627511870 678429684 878074902 596849655 610412415 351483410 831099408 356792652 748865669 778922033 920969217 624276559 724681314 109489622 416265909 916423671 949405825 74457693 851118303 414880580 520190657 106640967 389728292 810887707 993169526 889182320 994004587 881791505 981738916 491713919 650781176 279305665 692635783 832272917 981795786 873462178 881162544 382338486 772755154 576712843 828222768 606022639 646742044 954951792 962718783 370127209 662411139 461588563 635349628 934663415 950792256 682906727 934112493 302399823 372578370 197618922 314370033 45229737 206637965 41452223 827003570 501542608 957972528 557516405 952926741 661879148 853004538 949860797 997562902 107660238 729729177 229457658 631933687 394513593 793562573 531760196 766720358 741472621 837005626 197641644 835179471 521311803 847691621 295461351 552243727 519539262 562315459 225537180 622614111 123756246 215362007 255666738 461362658 375633164 957839353 744125255 996330914 629183170 754226552 862714209 941371451 279249485 610092728 95223621 545368702 153844218 468154640 921517057 945498783 375847800 825602219 95807761 198558200 571779167 784378268 337067810 688866909 477361878 916234263 629339020 792313666 918043136 950653866 676196838 855487272 16048680 301024810 3202028 97662746 293919514 702248193 698550630 804716875 120976190 343543519 505238448 558449721 716907656 733503351 517515275 779267767 633477195 831816218 422737111 539863208 127417459 165747856 735414123 828103919 401348262 755880769 907052164 977262421 41310606 765615712 961515488 986919975 799947959 939925872 929667160 948648494 576651126 810217225 484040409 659598792 532620889 728429551 933208329 997270718 606183812 865809494 627483946 802740404 169344867 714872237 765593238 771259021 695802806 978071281 563953312 655235174 474889846 479161336 193699329 937509892 662468660 836499470 306932565 621304159 658167947 909660833 138560036 867197345 220168705 324226411 49230241 884363446 253116028 721047871 420975367 600758123 67382541 493214355 522638050 700882115 821785916 872278305 571218409 680091827 519071601 905382354 397853444 770212328 226988648 461568095 35627781 265377641 998287619 999827509 951550282 983554347 442980201 523826056 419303845 970141909 77431551 903555237 670795850 966258468 539399082 777703669 106376562 953870984 850824177 978285886 865646223 924670463 311226595 494001291 909025011 952306092 703767077 986561562 702865556 991974877 279749143 677050056 779800109 895928328 413496531 942804327 191626741 563098510 264565563 371085617 837038933 982314873 502710269 865580078 703596492 934332940 936912637 990255060 858860980 918532613 418681567 607412095 438891746 471813336 893944247 965569184 919837485 994807923 957997706 985590688 315489093 734955609 104217604 916139116 199623162 293893387 406560455 507039261 712199684 964583719 440800050 991738686 133028723 668937241 404816706 948104584 163540466 210721210 389455263 474023201 1771568 569507089 876693319 940888298 449997447 946641751 430623642 577297175 471551922 660700046 793203239 953956112 179029439 878587236 293496266 635251022 56066119 171428390 174019163 686116419 711665149 878803953 556472823 813427519 742303515 986489888 549344068 637129646 744531881 881010589 315375794 886955836 696786475 936615996 355723510 547574587 960855371 982311670 812205978 887050888 462293599 889462075 157965112 977561741 6681216 563440976 640076525 939440551 23681736 678693921 842779550 892772136 459875135 748790309 455166620 611181696 282467770 497471551 549956236 951297043 674195850 892998121 11892732 630018200 509329315 746759026 675480126 947197950 130358499 714965291 49120972 950249056 473722119 568844491 933940949 944800755 685061203 935006115 377231211 709377569 720963512 739515390 436225123 673181411 270870142 930259212 645873200 729784239 814877965 968471524 846334890 876098160 13037140 566713240 409611790 937540572 752287986 902108330 316110954 898117437 904872623 927761464 685073215 968547215 629125069 837314827 436833547 963898614 493148389 529401731 439070509 745190791 425989629 825561885 933910578 998188799 316788434 909461818 15041217 929089531 66833091 931779111 322211741 383918810 140992465 204585120 90221601 446545217 805170491 953193337 968109395 969359248 642442168 934883023 520317272 740392010 304639294 719589125 549288464 864304891 468559951 731453821 609434921 618912639 674081381 694813149 365442521 550499023 986123860 993034866 435377198 918239574 101595779 373883719 702373008 924294548 504299638 997593854 643839806 791816657 189509110 320625741 7436048 670542072 723538895 801482390 131868512 960485189 300471633 988108735 423408381 668677907 411822227 455449192 834797464 976982112 667788932 858382074 648880271 688310777 456745156 995907901 970665890 993490382 682152120 768553259 221696825 403355983 399807415 425230497 425467184 751013693 477459297 822383453 472308489 956098493 581633355 745987247 972340083 981892573 993353062 997612708 108343275 683716392 310546183 578173760 857185604 998982225 136884147 794009058 239612355 614757660 211680132 899716372 876483864 955739955 67997402 683819464 31763915 332274957 912230520 989812560 33576272 687132960 854879278 917660331 588491986 688382012 969976505 979277758 920538161 921258681 973460973 996826022 398100201 716427236 143038316 282802504 698711172 958973537 201386899 585003632 656577696 730719573 213066008 659722150 60975328 470943148 261953815 500553288 192969424 620575729 434340566 567893061 785854849 815850802 817335594 866512558 931446369 963305127 198470333 629883356 828619393 904658963 964258656 971354592 388393229 753334544 110356076 206311610 32705234 219999696 561205931 594117402 972185596 977909749 281064627 767011261 712843333 777364970 176921136 359900495 767475425 954146180 14511473 428318903 258715741 322550597 669195418 670526533 162338275 918080487 371940365 637465889 89154013 629215610 231944924 356870349 564579480 588961387 70264654 625401368 329955811 898480880 173016917 723606142 625582376 743223661 36824808 198131998 83689979 106781855 96065310 236843284 234415450 748508087 467567390 481561783 596756790 621238710 205661463 504617514 309288555 855106399 64340208 435135665 19041338 466918065 406299496 467797426 65982267 993847288 422015653 567720961 446418834 545817282 491812545 566201659 925341022 951411783 591860389 964894738 867084689 934879154 470613628 999548425 154110406 488423158 183865819 875605801 462389757 629220649 244072629 830664066 335937623 661186348 913887694 977603324 436789469 615240318 57504280 195557648 114202736 128212343 441074249 667024058 390560737 879424271 97108130 141105073 467029195 935672859 452622358 819446131 972158558 988912416 766902490 952694176 983588468 986708210 734120317 830855762 694760944 997846760 301418290 375564622 112878435 798398159 749122052 863249565 655756947 979921039 580461656 997325568 9095163 939263969 716620048 761707575 694891645 876196712 424619612 608119975 422622501 564949879 678822435 966971688 615332964 669758549 537315664 595804167 361888945 823197887 559042825 631346347 910644350 933803095 296986001 991668649 327806873 671183357 672631777 818478417 961084535 971338429 967372923 969557747 848300488 849098118 641169779 655615914 67749327 898432791 741711009 868079908 581274953 623639855 682967066 817583574 319551655 374640063 560625352 908281685 717290024 854641088 987146107 995097633 12698317 545285442 76751687 754687387 68165489 555309994 631028206 760480238 246633702 539458759 825815747 963798144 748391137 980850941 395256214 471258755 4146378 308881671 444897218 510362958 529476831 945233178 100521296 193100610 428244442 450378023 609360659 874688370 148994949 853666385 547384735 713942615 805391491 877417010 915661532 992954200 801606940 814237403 872691817 972493824 710827684 864741599 324034513 866375351 248694647 471136686 890206531 910715594 185134251 392627915 372474243 903917640 646806782 814465321 889611918 899168963 893712124 970654733 871628455 925399150 907279109 979370327 431401660 439133487 420296880 844104843 937997228 962419540 596116029 964052919 943402799 949227069 937522390 987204373 820357995 979294182 787393311 818991182 697545213 928794417 747858252 780785800 270516549 806756960 486960189 581472623 160820496 696090559 574124934 744452798 60901089 778979661 209007076 381721546 52727577 378665339 643708359 654199469 264679085 543975463 867760212 904138378 962271135 983754833 427499594 888170999 956375814 957009980 940069161 989212339 935297389 994769471 428558295 554282541 684053580 853589113 135945947 648659159 86487122 242167366 729536143 759461561 632751558 704394021 29682783 644357057 628239849 787737946 318346868 412596188 790765075 890343002 316042367 448585812 556970637 562133322 641968492 701613690 111617082 581001342 355253874 989337449 225590243 904942144 40075687 539953946 81721946 144503287 154475968 517738270 821950581 931044212 455066859 506426454 160868553 823334156 77062517 445484277 343296408 387096053 821590687 949200488 787374368 856937029 210824061 498179955 305658220 449589952 819832309 945919789 881471364 886729033 905636790 931109198 890573244 898212637 441947383 780207027 663393505 969253434 954341603 963263091 145574013 814742929 804735894 915473770 695881260 895716298 388280209 816843150 897918437 968576016 665448685 819847698 465720587 926330349 428307691 449322206 810121802 970537293 125098745 694851484 786361976 947767278 465563885 607930790 965451776 989706188 779801596 844684628 159527717 476281143 159488610 792739278 438376530 767953957 800832381 995460788 331626207 761439372 485233408 826552054 983793341 991219071 626620135 628758604 71614066 833943060 670739612 941778362 511209577 720782508 462905191 984221251 835988218 950368450 46270328 219109790 848364278 864509648 447553910 478881740 544613617 968035731 727065963 908664596 592882162 602911061 882190445 962012652 993585646 997351226 783102908 960766685 797544512 894837809 323985693 628857674 375762130 980954494 93857451 988604910 747468365 839980773 826561450 902891593 20790080 170990175 411989965 787160605 430092012 669670097 709051148 938607460 329691708 680321994 860874235 924667025 125055512 532067443 691444747 865966882 648250772 770012039 272229901 692363266 721332164 772591344 765493746 836925417 395590182 479609608 717590768 799766270 521266242 573381837 85492120 982692550 423415777 639167234 500181385 786162766 609473786 659678955 606345232 974290903 466609667 526886799 905820876 988230202 458462903 573954978 158499001 218095121 681899682 803590737 554570086 579746052 815318394 862033639 609070809 895753694 668724473 870619912 444526977 950083525 361245473 981295225 939823280 956997244 355084678 860235106 3992714 632720074 369997492 569788759 356171201 525387233 885754071 901174065 136600751 336382180 719500923 781022169 615418507 666515011 98181488 854218127 212307054 399414432 312941948 959556987 445717789 829407026 981296036 997845668 855719964 865234857 339915894 949582940 512689607 684514821 262788988 952479963 573977120 667309958 750795672 793531898 216122211 970796889 105974729 542378188 820222753 880106302 405949186 712235544 275416413 292698071 523620852 712886274 767481638 876441003 400898589 952761924 701365225 892247237 139490772 679561356 452212752 952459960 87885473 452987031 660076676 789953738 411448460 796047142 242931003 274825684 982402487 994082527 865366300 910651293 471300381 632526166 979644485 993870541 123753925 263994424 768293381 783287693 221443444 963962300 263865220 737285341 740315352 963731123 260430684 950752263 890889963 905807806 588723394 863078782 878381794 957614800 187240919 359978442 19676933 944091986 447460815 456899699 499455184 728125876 26087032 644573349 970033543 996472643 491960357 566160237 304326044 788471368 858745142 985615372 383454651 576787119 314755607 814909311 894511838 961228540 264055167 871786924 135517413 993771966 519421066 960984698 862095214 988981580 558481635 878798517 963786314 980776574 156049102 752634740 947257849 950923727 980316730 985842206 215490834 253565639 389871916 434238147 525148106 738619410 466304396 778861641 535577622 908065322 461301104 753169123 986657604 992178967 98145411 201506725 699312806 742991138 143468225 288174636 801353349 848697889 648590534 962330817 779800970 928207585 696505105 743882950 402364154 842959768 543214766 735736728 240462521 497869025 111726542 293372339 773624694 862732844 470131395 874842358 603424087 692759921 731144053 845029264 11383543 890778281 160328582 983873070 573519404 584661101 193873206 664177718 474372013 557382851 332863578 893819025 559038591 777092458 385502647 831213722 791480885 840530014 379422896 781675246 986850694 991311027 994434347 998377344 833908311 872899745 751633198 820214181 434578123 494946376 122116595 761032604 42449958 100440995 841324466 917721261 319502891 589679438 868844457 872102876 372062939 966554114 992291806 994409643 657064095 945172378 69361798 849693135 489045314 500551629 634495242 767948505 25955205 117174933 823043834 851773159 90539695 272486454 412392739 530873514 965241970 985630479 409906152 849559925 1441319 604127466 487672486 891018065 335063259 391204592 248550287 926645273 144271026 878249725 94163021 504222548 302551631 599036691 17250659 903802091 871302857 897497754 903754033 977132913 287520769 905378479 337857434 629070946 508994667 648593372 859420616 886443730 196238867 309712319 379890808 395412380 236373683 430286611 681665775 909999762 583991856 969147685 949563224 983437451 715960024 922548321 827389586 880127983 485578020 675069162 638373988 878415249 706356738 989249485 379340460 417621256 490548718 715224699 190532326 565494190 945421964 946348571 824323137 831067295 717905405 929006299 640398485 877242950 333970440 607997052 292814566 814494599 92163700 543971762 211707680 377543140 743177807 887631474 631408359 840176943 483197193 778406286 154970125 331042701 596262786 650639435 150514170 539727674 732747227 864858597 704016475 870804550 796677358 854836460 700012075 936137020 742435842 999755613 231832460 639117368 217556905 651379973 541731112 680318411 202826799 240652971 534195743 931415855 717096828 860929637 624165287 893008029 526269049 944091774 731540167 839351841 667169311 695681108 589196760 895986215 777341599 933521701 59587287 618404190 135929801 241799098 812406483 838576183 7878028 734637507 753462393 805187901 111336426 140575734 64798041 131023333 887222477 902162943 463774892 845184748 388166140 699669594 596333445 959663489 856464585 964791224 170007333 601903886 637896796 981697745 118668890 641527458 15618445 364439132 366847047 681686452 356641273 681403069 957881368 971527440 772818797 951891900 757682709 816564076 286082877 661896416 729702507 730602320 249750545 785413174 597373575 896860038 991738689 998252797 938292241 970365068 499445641 545362039 595553839 969457419 195368997 234049148 485085757 656187542 942716302 962479878 72373104 916816620 284026852 828154076 342212048 565776738 826381765 864556255 183409400 877653205 834254387 846988510 658979774 779253458 259575378 738736382 949350193 953141109 657073090 699799325 444116654 767142845 370747303 764277768 346453779 453392306 946769771 950574358 690106503 804816130 153574397 815205824 844397752 851499502 662448262 681977498 9181733 248427625 228791832 884891974 973153563 984030797 576898020 705619236 808629785 922668560 608352681 680487837 598953980 875800832 317048767 455362944 866836859 875246160 690028027 765228012 350816022 544148299 402182782 451038103 687397964 950570734 815044483 825311862 76308624 957461919 68191907 995201901 90931964 953176284 774770150 910937950 884175109 964296158 687284251 706956321 640603911 862642669 188247441 968936420 99776425 422669569 540501939 662490028 533567679 665368034 220381101 753189952 956306156 956860563 640961674 778618469 206606556 433304294 713608816 818680148 479161404 770659114 914369192 944566809 544478202 678356401 570565965 628553805 158977625 595321306 370083752 589571529 253574793 969682995 842258547 877965590 331618102 485076875 785093995 889404011 139185069 759622526 707533630 797184308 617643307 760269824 700693276 959452382 327102803 871102613 968676981 993769598 99085164 453813020 89128423 620704756 653492562 889531820 52213213 132160203 274746859 789719591 186684763 606343722 367014494 900188728 362794924 663520744 38009606 339377243 562574044 993235930 213960370 421164055 135955641 267133446 494244364 700562421 808686974 836093176 315608066 372282416 990589936 997780729 682672139 699666462 980318713 983494789 957244604 959534559 267779213 799787106 502667836 781752425 733943193 909606909 206136089 705162737 320890167 726692146 38099721 194335092 664074440 769833171 372836898 808003398 84930624 264886373 839938518 952105953 511775667 885396570 900339923 907623424 465025008 789021452 19941754 36565905 365329441 522264640 381746513 790721094 56830477 188289140 410099800 427369253 455485921 532045831 592158367 887663995 475287583 787131992 308826187 497676576 677615597 836041793 332422982 778186299 70200550 211034133 816392583 825210473 793555031 872735237 693224659 992176844 144131523 240414042 137629798 891910657 939892115 954535843 580810371 683636218 788215928 802112341 884855504 965594859 856167209 957707825 788834340 817287283 677127199 867834621 120367755 400524772 398321327 762962510 36836880 819754978 693714827 805524344 216487633 969033221 454366320 623431563 177864528 481463398 189707654 447249226 143894084 572987920 980164916 999193006 6920295 351532280 19420864 970920649 913617005 922334084 585452016 757066015 434626953 926375690 309712008 817480193 624798821 960006848 180692591 255861442 579577862 632568264 282082516 682664090 397910898 882173417 379328030 720425168 972754152 993519471 323675044 427443752 62622872 861915492 792505512 963791874 140276330 346899534 797839524 800994435 889556733 934682870 26615695 161234752 2396402 748134837 22405245 293999321 308556156 408203544 297531626 311652222 27342222 793763155 551100465 574997954 53490966 78528270 909990013 954648304 614923927 854707953 718978564 847012560 29748022 285925372 869436568 965247454 156901583 602247233 96082820 420253511 787065663 882251282 877929789 885550450 341297302 987317121 66499509 940448413 535829476 619288350 595199169 744336559 279441668 297424029 400263466 695777486 535290596 918647024 81298808 563322951 291735045 563370710 870172476 942216131 542219301 839976581 523095020 901725539 424161359 879086165 348109393 392871880 871168107 891737157 796555833 916057019 191351851 863427843 500494856 828812374 942825568 979895218 29589192 881601584 90274731 975652041 252821401 620836141 54154800 641110047 355939359 393541967 751186485 776512100 442029352 779836610 393838844 671142341 134584978 991246234 702340375 952970386 606843759 870270759 828041286 893466079 534239159 637521827 329363350 761551568 971088005 980491664 106752960 636392270 257485650 522765594 595507628 941613356 989430800 996286987 977888837 986605487 661529359 892893567 234503950 712238757 382873540 653822303 132169065 466859838 388711644 801637699 273295984 782644649 547302241 900751780 495465708 998289623 280867650 382382594 230506759 796058050 647333987 988513925 324469220 651505606 450223005 582465047 180308268 192249381 906104656 997967917 888832775 911454128 612291493 690149886 129819079 196366149 463706253 553965060 376434043 504380441 629195739 669132806 239968282 829149441 203787592 700533929 794862355 986700834 269740867 938185952 995522706 999096439 958507577 994128568 912499067 948305283 815320030 855513725 778352023 952443738 113575066 842451716 603593113 992543159 204025059 787134571 502187173 873559720 327185611 424034928 155790219 892534223 151091583 367287009 15910512 277827227 738211673 912024716 441375610 587498443 758129319 880377852 937302511 997343526 597381910 703136686 972321927 990345656 119464693 440492877 998407457 998834251 271870840 845328120 89721611 936732670 5775956 831584533 873634975 875882832 188238875 982273959 20489912 65687864 243170158 832235551 264716740 417935875 278253041 606607510 281055528 830641304 847414249 935101539 744124628 823068515 882080752 993815409 206592709 396910917 187372804 668240834 898695701 905551546 783611885 884950080 230206455 426433973 779728834 900373929 476214584 538309698 96047458 161588983 354000296 524468965 827077517 950202489 400594673 448992324 776540879 989953656 555287704 911684302 934032975 942788390 261371716 353763034 144196804 884888736 762058854 955404614 906309586 984928484 853675055 921261406 49709856 375574297 419656300 707922238 539618047 936366720 170711424 463975263 517866117 982562397 627346031 662658969 318712516 862298425 175916097 455369872 160792212 848715417 273245104 889195782 561059094 907062283 737207948 739059921 244231106 699803745 1217680 343900575 766047114 841832428 119440400 715623642 437971773 693913642 927374790 985276607 609920295 753446880 135207921 881900368 658483560 676576359 900215755 973654218 770815282 862557958 444609818 819440893 803757384 832749392 715807559 870851966 630388673 822541096 391664154 482855233 825390889 892867027 940422336 976440887 817324646 934234302 973072211 999585749 364346232 388282879 786537094 859650210 62265854 471890885 595345253 862347597 827976915 874977757 313530207 954071831 33986919 763671888 263092642 704949222 826919612 948724135 116232017 842319609 894522444 991060324 149893658 261270988 349154001 411901574 861357045 930654334 735432979 968086555 261797258 348385891 110661693 354102516 345435664 933186253 711663733 878976572 593011711 966038283 75830008 227442452 560004224 695537944 956889243 960641989 91645469 117554345 7499339 252662589 596460951 939386862 757725850 949904701 763730777 970952450 413326143 640515650 129748386 834816055 816857401 849727091 710608326 829446443 849786242 904719051 133355674 699239274 609944211 739177734 301223773 919473972 783290719 999769606 270516950 607210914 402215425 544894605 290145734 972647173 55148375 486342418 825801488 896422854 9125277 374719107 333893573 936833029 292430938 571025857 581676756 754962759 289968215 974825537 222374078 530318382 374789476 887190570 528712410 713679263 386294878 421871695 377653796 787722007 987674 394272060 896450204 971306796 832629065 945292916 382842424 818298690 442910970 656650775 122260269 532904466 242431936 820649884 375961013 448080230 307174527 778910686 956289966 986142757 430669773 486091115 523788214 800974345 619868352 622772759 904370147 964960771 266237910 991703083 165415203 647772345 513247382 941902918 538733245 647209792 429174564 769804089 288855873 599253327 286863917 961342788 626905973 985376036 221834842 819456656 328097953 490481296 207303832 344249026 817010702 856871434 456362332 926555798 877392440 993044159 675321168 723030079 214073419 540417981 522564693 647885888 697500510 781223433 22140884 42174345 61573697 775983762 979748106 985219316 649037377 716806926 511145986 930283606 678019204 975289546 781718184 844743587 194725064 230926059 507873946 585803969 507106473 985775121 510911535 545394863 918243234 977617564 218506389 613253072 333316539 874249181 619206052 899053275 164464560 811326806 376229259 631578806 846739248 965044372 244501816 623800081 413942148 494180502 45746805 790425892 779142666 903143330 2292842 377295729 507679618 691274539 334783545 630488514 336264389 914048808 684782694 879031158 608852222 646335398 197894513 305537033 783102235 946385664 194598953 312264251 259242772 714919830 173707512 877158006 973655258 978177955 172971405 418958916 229421351 401501175 497603805 578768691 554728573 660377820 300172438 424228913 5842136 331539680 749544164 848612557 846548260 939991681 763720922 862778896 684334848 882350937 628454932 948171877 288279020 439749798 993791994 995626812 925264752 970001876 561583424 799628629 250615071 517012931 187098158 869732640 316952250 741323920 166157485 651339183 643183144 840701417 342172902 808958779 577476966 858353759 679190193 755244108 983984578 985810009 813842844 847138607 185448117 418902378 680769282 699359250 723962475 787965418 524477762 884528850 909772744 917125194 607720596 953283543 263560262 637236111 957274964 976299602 453010102 630322972 939533063 965771222 14931471 794531126 428401486 636831422 249099862 895550202 397828292 884087975 754719855 773994910 563701229 989436234 574367293 767055686 635751657 708508163 626733893 778894824 529177449 808654621 477314812 728162273 887774252 919586192 10209935 155644999 331582804 784908763 530652937 549937223 677667251 689291599 562609775 925421891 830276689 833557021 556456031 916939796 434933095 714919950 131495946 808762300 189229162 607916329 474176624 745851576 281320363 739291310 406348886 733781039 698682818 907759834 127271524 473813142 801376041 953519225 536209601 665857995 273151803 751762205 668708351 870473351 43115384 922041297 344431919 546149025 805764002 966696230 517187843 552747361 76728924 94989142 864975676 954478202 996559334 999404188 337497872 762203080 52985364 351999274 890454267 898600370 738045725 918306503 991926424 993157068 117085356 570333271 582866062 867035835 975495174 996785557 321440150 932916216 504281743 534463267 233603623 497007310 688453473 924057498 418514806 653714066 519796728 651631297 918616420 920811379 923409259 997063214 765827075 959121334 836659768 839185764 502031561 908612865 821690264 893127002 609509162 627832048 923518073 968466735 554818173 794603934 140316270 452026548 221885709 359557353 837484990 903741466 897314429 999472232 211592217 290277312 263046884 382691148 821357850 987135205 241369804 834924670 138844982 461495966 936891187 991140186 235042724 679189561 46912258 795961760 928394534 932059068 366431429 604242855 978992071 989565497 620388823 827426049 783227335 859517319 907691106 987004361 285658217 894914030 904713976 981868020 472114271 882319669 679711002 869255882 669824757 986676060 564143109 857551552 885043851 948739311 605379513 918762386 737266219 981534602 704279594 770411592 234460793 682531212 212668266 314696226 545717932 617702854 765125492 803865690 925581959 931608587 846425778 972328313 309743331 468961253 774753053 779461715 649208294 997144788 469710471 972698749 307203108 424461639 341491811 727443560 528640266 729052483 359188733 986440831 10813234 783306127 305233540 511166432 369674739 827897794 488574191 629094982 163117597 172140330 927323717 946370970 764128145 993701038 785516159 878565241 302762569 868883071 806618171 915374014 729090025 783374961 315718211 342580724 900061677 954410107 734131327 836589648 927851450 963361137 800137104 970567073 747578154 879254824 882684101 983932611 908276811 935508519 330101738 454204525 507635973 877843815 998242107 999328398 373390243 587935099 136355633 591179046 973269233 993443346 507065757 634010188 325802379 688221294 842578054 989929353 216016010 582251348 363875712 670688540 11556693 425765226 44467698 931089045 303309118 717852455 917854561 937909078 941318057 979912610 735853002 830694044 665454671 821964119 197426124 531193951 709727704 851918591 432416228 722278380 740901944 888877741 899924770 923677836 788736367 971081704 315140841 494831449 241929344 875293210 6021054 974422729 804449420 861053969 591462430 940951039 502516231 797792879 822848711 880269501 4444282 930668750 862684718 995493223 771196990 998979744 523679776 605350632 604837940 884929941 415965451 498768470 165488810 886631817 784612949 912988324 489337974 965294679 914204423 920679924 493246492 763361160 337656752 449042974 636742154 768191021 517717109 604604270 190818863 727135409 640894103 810572269 667643271 849304716 74461235 313531887 186576045 253481228 8524811 750778621 477030973 749534819 514745797 755246592 274512984 923300466 880117339 989638638 4570554 790896932 5002384 894892233 773707185 834985448 969821620 986221337 548477797 612027552 1138180 372466238 982128895 996253050 238739485 252312459 766978771 776326299 917247428 980304256 590070252 718600967 92200115 672748889 687169115 791637478 395717776 424797102 903434137 973331360 247938944 983592324 274779559 833056497 822936361 895734172 8102016 776444483 710456395 801194021 756776567 804989883 967366892 970361120 220756551 500113426 581416661 644069300 34831552 177487400 623282906 645947551 40526447 566238124 131410293 539881532 574421084 612057152 719421699 918026724 354196952 691220420 310101965 349289062 26016527 71049624 140405514 606118137 936852326 942577499 596239741 835763636 752612588 784262597 555664294 653253803 306169947 455226571 763278170 781654880 741583093 991551918 976508146 988654055 594557073 798791290 556934002 979440349 565153293 762874882 375191326 510999790 944789155 960313461 646739882 821493815 678324810 903641319 333197607 358281121 744804653 833500879 514056193 607203336 468399862 623916703 567040602 855497880 400970919 678904670 812640424 947461745 788827049 898773883 309228427 351305404 590892980 918807225 530028436 597139216 929440667 995550933 520220631 690081006 563782103 882708224 733582960 939985691 671798475 733896750 196964638 635264376 68454585 321947341 807662362 949021623 473557493 870935029 546199556 885702320 100406046 191928197 245153581 748405476 543342002 793515970 689561585 757025281 269036782 643149922 356563873 360508779 6005233 283893880 302288705 511031934 7070877 95073221 872196701 949980312 517182487 898793933 268776820 302758023 493865105 667540003 491018836 846467772 609829777 668362991 634281691 750791423 61106251 345329031 546723777 722178168 864347523 934772410 348210540 493021265 85786 432122175 539676243 615451829 346754109 538869684 996831309 997959073 44246498 291660339 568986861 653823054 334154541 821693084 38463317 762120728 643451708 699696039 559832804 934745839 22447222 748435021 146157529 669795355 959476731 973570661 548130853 766104537 227586461 253976278 550428714 982360839 191258123 917176136 863721551 908476192 355102953 948728266 822693975 915676859 676259986 951790277 872900058 999823992 877182923 986553642 706065548 833666147 495176626 600214205 550990204 809402251 408825278 845510234 712031962 800284583 489207438 524501766 186532984 279950990 414165355 674426276 440792882 796788786 83949515 84399401 194100913 545006263 410513905 749057624 956164373 998326394 543522866 603239865 982450215 993036076 587469929 643447614 465182971 924946931 429706754 433128837 737571833 889581939 778216776 922633261 948399819 973312208 155379613 654938646 545764315 808053792 451257877 451944923 714642534 946655711 252077208 399364811 803356685 995258490 908598601 952686818 349539493 560208682 514962276 851207375 135185524 377518280 489786882 631596556 887134033 999924238 156846519 802474262 313855624 822236209 102999179 985280790 310545330 937199327 250154539 626325827 637604940 958262303 372407128 637881659 572386126 908476253 961410346 985717594 94332745 462621078 544978453 958031314 69109740 743616143 982947288 985062113 623748211 966399702 872577690 958157716 799525411 837758279 618207622 918963366 56275320 723388375 126876133 766321169 689523428 735874840 767692643 775466510 675488725 698535449 797812286 857193579 455711593 671887660 569888775 765314988 994575445 999895620 684231319 964221042 430229711 982646243 368806619 677736276 842441661 938624973 775127992 962133559 144279596 649753294 10325304 830024407 255952982 774189937 121124438 337372976 46109490 487289210 694919329 824846830 828165663 913553928 69403096 391789457 496966039 843927241 485398431 496097914 658123995 927294035 367196366 466935579 858664535 910745115 831887703 967695840 835277597 875865627 617354941 817914728 68931572 507443939 589575960 726484509 147619866 501899180 845291794 940000850 412870277 430534907 850644621 873265041 98061039 860529288 860441523 935509969 820094063 942868210 844886782 936101810 914670221 916363152 801841789 844406175 536826803 705535719 494030809 905428247 945981355 954214124 282781283 600467591 602087505 728262279 961754624 972923873 132699979 231957268 879307457 928411523 412272366 628048126 77445931 395857839 741796933 774235940 96147807 794119551 153771440 827084837 828831461 951465027 660959023 665744008 436807110 973072252 283545055 551895321 967048205 985380796 794870835 860901647 617880573 789783717 352470211 367787683 583278255 863547686 509813838 794212539 566361120 823578919 221872019 837542275 494674233 614218621 785170401 967021883 417238219 543238006 271623938 873714667 277919291 323334622 78656840 462070307 222905832 650515840 797705823 924297261 620354963 887389104 781448198 918317946 890991658 978053422 824671792 980914702 309783528 862092214 820520371 951553227 169458822 212077388 355614304 769301534 143480651 539830996 742397139 901050118 640542164 794710656 75496258 171720831 233599794 634248132 323554287 591836162 777365143 784065172 954777805 995628712 257829521 502779040 793967410 965259279 45637483 543851606 848575591 963380920 636698268 696388520 883216953 942376113 696100418 847754069 293293472 757433185 447478143 494824935 652578850 901523923 226949556 325141345 108989772 134846090 590291337 867209388 258366888 414115698 634652182 666384699 348852662 701190230 999510119 999716941 74419971 381903232 500470074 560598341 942872385 965184792 466759236 834098663 677934279 785590915 190953789 484792328 139870830 730877694 32521820 709945270 613160183 773787210 862410663 983319723 153668463 223620524 297511252 693178083 109197857 533307306 705250063 857641156 284521340 335843641 94796031 389786397 365568299 423252443 23693198 244709852 919561186 954672651 623862309 769131388 929522730 993738374 691767513 926379863 595981305 732110170 773296261 869865215 960038568 999099627 584080770 798207807 425199576 875732259 973315524 992249590 268139898 911435364 304071911 322534882 331029680 943862847 831916440 910791074 693818933 994555257 145507864 197793355 543812258 572494016 796396923 980732469 728677392 796882480 973113250 997800356 6682209 836509905 96155547 714220150 416051199 688924210 294273747 699778658 177869031 608076146 751606889 791792866 706177579 938737481 707769541 838300923 30873212 446952016 654545156 867127065 263445117 550672790 948289687 974950362 229611740 739333806 186543991 413346540 34558817 777324342 948049296 999625727 249146700 588987806 434275679 853531610 213715083 745749500 84146402 227128296 289367699 801121487 682047394 692189387 512780946 717392199 238962518 549213480 427803897 523180371 784499657 874208136 560190630 883485692 748672611 842986669 861290372 986731011 55586359 122564221 306434476 481214582 868190578 890386525 479499005 673659894 181314821 194122660 751605620 855869555 989934485 996594947 748510570 761641983 616945628 866892241 366247490 859633978 427500167 703640176 24986578 123676149 159363607 442959887 354525012 508613283 593113773 691728935 341583744 410681368 516746475 820042632 34291424 814811047 651770624 896180195 532955218 713407653 304799264 912154756 981025093 986635628 370763280 539824210 346654847 895358654 812678209 867627899 13132349 851188785 302862297 814305801 372422631 419591691 790503901 997891811 861036474 940907417 348097464 828773285 931147402 974317104 971681085 992099667 602994440 794870866 247377624 966916172 151006905 644582130 766842025 943440331 563600937 732082699 938725086 972786316 122359852 795696376 66393404 239131555 176015836 708191605 944307902 989183326 37142917 415722978 943449505 954162036 409406617 423169186 277398681 794082366 606084729 615857271 218798396 467297611 878308370 983264030 65144349 885171144 214091825 589866946 590586463 904353289 815193246 863173783 705021861 765319295 913676710 939690845 246129921 847862501 834842922 911186860 916041607 957581516 797136879 818154798 814638311 922538335 896454188 929833035 359945087 387380428 973783808 982686581 505905847 803187500 441212255 717005354 362161671 962795178 194124255 648869568 988137676 998141437 649550221 931451847 976117503 984061082 939894657 962835457 93975243 545327252 234437219 369880760 941815580 959251960 898594736 921804766 302724463 319465141 467113779 488782490 786073040 922217068 703263567 717006706 306852712 384976054 431844377 625911724 689743270 704296256 85827534 542006504 37391829 367916053 742657040 939586059 844264219 864485760 485924727 524930742 966819136 974082514 454252391 956736066 587699972 662719222 898519085 955383119 262403261 752680002 780115998 915492317 956048740 973467492 64915316 860330425 266871901 723151398 428272731 593029462 685878837 914530969 397030210 628382219 662566483 892021462 262511341 505118590 314641817 723875222 265923485 753525157 103655879 134188778 297023859 335408966 447346703 629279104 67140789 884274003 97585537 950945788 405714191 831451725 947719789 975528982 298192000 851331448 828154735 993213233 797020329 943847641 344227541 679668897 410110222 726333965 56297259 830772046 861905091 982159110 668258351 905951486 355948197 356745402 466785357 618640941 999469515 999550832 969229731 996387139 596266984 681139341 677141708 856555108 120362588 227278102 862294676 906267673 986125030 996072994 370584205 555402785 716980457 918245812 177715054 250981755 185589581 438666924 245202321 975989909 584985737 970736063 931591169 952487223 587165382 670768898 582782777 762326342 110365008 192491168 847496409 899014052 631732025 703552792 421506645 698308989 212920067 335413283 573849652 659053907 443576493 926944456 59320233 479806076 686361281 811674945 238154809 297039555 48863106 334702782 664042733 816620021 911476417 912101641 335879940 583540609 534978123 845530917 609265535 833760752 640428981 922496376 646797310 799097951 261962853 649347880 797056719 829151468 616493738 946324832 300572265 687392868 570517726 596739525 474618838 946712375 161964655 245554158 495524524 811253296 532752608 594485890 875290938 996913530 28038547 454653286 806061030 841301840 473239027 996971682 16240519 259976294 488707200 497092973 194884667 667785836 313304375 637154090 654240560 989644406 270809234 792772082 436918697 772897338 49060652 71121676 126741936 282327459 873353899 957381945 612611641 975560232 22806433 614946146 686971541 729093002 765727435 918535613 942053782 950824751 457205521 515063830 736598049 838892785 821333828 898431340 696720569 907546498 217142941 609493522 361905687 903306770 119333879 277137987 857804042 983588262 741951267 891178551 219938510 434254826 451100123 981398659 295661513 423394125 36992848 455065602 385323016 774604660 447646926 813756770 498823560 666456880 970979236 975406370 868799691 895942607 185073235 206518205 123577395 509422626 131888305 596405997 218463105 943518876 413351900 464120966 656433513 802212598 462707567 988887087 156947012 418356769 933414602 951566149 185724601 801698591 956826112 979346279 711166407 927132771 33725646 920582265 981265195 994581195 628460031 926689359 908690587 993034105 787048849 794201879 252489347 493653052 452352629 722969625 285050700 391794957 132869694 930333606 563237933 784972821 948549526 976903897 643251577 886571859 928633862 992418973 313622830 672597958 247213823 437697438 410390588 956501683 361787386 498727202 703524815 788227320 335757574 577898459 785668076 857478268 805854229 860330188 633074957 835114622 257634503 679679727 383284224 987907778 337063132 603889746 922193610 990776405 604939919 704318666 879305061 896563791 542091339 722537597 184246811 514355045 127567789 390198149 677643571 821391341 356431581 399100403 47665202 588480319 586954347 913406037 240207559 490585382 763802293 937173366 155042221 616331418 114321963 636429972 674176208 848676782 524287047 552491935 328797096 549921336 585234126 924167277 796551227 923768964 926682002 962606922 817886122 927307653 967196991 995626434 419875980 662576474 907143843 949355668 105901544 320128304 65135248 594986350 578624824 713224304 21771488 262378676 186097892 783604090 136908388 525482758 720287842 802985410 22038533 254934163 534519463 602136412 157361239 716140043 527262539 895082955 150374433 813435755 474771021 844627823 352513114 729347306 981825226 999475553 221324134 685040598 846655612 850695771 159997843 723968426 749053461 848823312 948375348 973312004 445724534 966466350 838748674 907360011 748844381 980238446 834358769 976069858 931587350 960815752 589954810 591440103 873817634 875917455 544082169 824382999 475779667 632423415 441732202 531997464 482284709 767352153 5971565 761199808 455307565 528419238 562006667 917910306 938089286 994724867 390231535 531521563 516625892 753862177 604819892 651484041 180994388 815365723 48351525 456216424 232251061 308818466 345000577 421973173 863707758 978035914 139822471 724501919 560265247 819698408 167340243 400360066 1903231 962182404 322998957 879724983 878233945 924081528 304049301 478737385 288638989 973432375 765109764 823613323 427098190 873548964 784462028 934492411 940440445 973151758 913807690 998734912 841598026 908556337 51329805 613549527 505296822 957949921 116248870 909119779 653235165 782051886 809189387 977597454 623155535 929988676 529725800 548127449 848764434 963427610 456640796 498320648 918023635 940403478 854846855 878115882 600091419 652087793 390317567 883460535 135484664 599887684 107475014 523111565 872617466 903168574 756333109 852534441 120177283 998044597 198439610 905124634 421287177 630338429 666200611 799841096 90323014 311793735 963996883 986257839 776553408 855421034 853517889 924698961 843783971 876903085 909695885 924442335 924626500 978651798 345777114 827140617 282819503 619541816 156034479 188078968 770697529 958769700 499332594 958512659 842468065 951120975 4236949 984446922 259287396 381276992 710628119 766004280 641037605 920584419 640755665 686058950 427625412 987116590 108031459 128328502 268119122 628888064 892580893 922017018 802423030 804990887 707928157 990409883 13126116 560406546 852470851 855114951 455369950 619621904 497069009 558839496 247267703 340831570 678542433 679745601 448996620 855833865 898431051 926968062 192501426 453336902 637262523 797036961 341618916 500409733 281665005 414069737 803673757 840938910 837283683 946680981 798940407 961768617 358223542 875655317 568331146 828042168 692295742 999696340 447706199 568551502 667803346 747143841 53584125 970300350 448738313 699263846 234377777 774180154 397035580 448895354 299591457 909226432 915619051 984452419 685661304 841440171 292265754 486254654 297175588 990543852 466814010 852541220 814874370 997863831 64725584 415899571 221529535 275289667 39169071 655850792 714109859 884472562 94037561 933795207 897450797 968296072 951975894 998253189 424611702 512178724 664870026 927485137 678868566 881306794 670930611 726741841 510767484 859816921 420271933 990700398 593132547 990011022 157232073 345470227 468920436 490881185 493417613 860986686 684162105 820787496 851128497 857810945 979797189 981664154 825324260 909833801 734651770 904407803 62373531 856093160 330924804 392203096 138313752 990871794 802355323 984883920 928301163 956303876 374163336 661877780 62516049 522767486 429256762 766280584 168663566 938085334 839966089 854842387 841270925 976872469 511763172 734308623 426714752 860217835 981961569 988535784 688381757 764544985 458214579 675902943 69266152 885868866 532227838 553555461 357637882 899710572 464759414 508919893 705532673 750516610 998575846 998588689 846211006 964419296 17524531 254251041 16772052 157670830 860322631 962927551 530082472 905826726 869449038 986210117 226984255 860892052 550269820 800105434 392782913 835874345 129632623 235425174 443981935 513470740 21036985 63311823 244085272 960169441 76007192 510740137 305493279 490682008 818529080 999491352 479035326 706747821 940763129 979053165 400138348 584627558 367031473 840364925 326010216 994087459 651682010 892317700 870782152 948246709 899098249 987845086 577097245 724655926 98980821 234421120 507865579 737532523 197292845 752160860 935053419 939212224 813753313 987577490 25323738 52327269 159288179 603394249 42669589 547198098 984569520 984980771 54559942 229654058 430599605 766511460 896719511 961900378 187000601 326991900 417159073 957926786 10511208 762153213 683480191 802128266 57038240 727576024 453256464 714165056 361242779 538053389 910293005 925120518 483651709 910133343 883000974 949218379 701600405 744378526 433998454 888035366 882579152 961225139 500546309 650781244 67583863 339397451 957301349 980811197 791428190 983201571 211271129 324914808 925076086 958894572 888796584 955863343 82403768 631951050 874031624 995798736 342902790 502098136 231655569 256346202 642322571 921524444 617861015 647726915 253359539 960857406 738058541 971347709 554014567 814769836 149887032 642648648 581568521 631282038 962984694 975479930 246561631 984243761 842219026 914238532 806734122 948521306 427613112 908268560 520890714 621403602 877152070 952598658 411663593 554319373 8668712 854785542 576980458 714460002 480894825 922533349 36332495 889808886 908142286 913119989 335124589 730191343 844946995 995639711 686838941 788780871 497470113 510210366 414893538 501171460 11489166 290230249 291778322 625521245 773501319 913830617 715192163 736160863 764115623 878842914 219075904 541685088 696536788 752097306 499154210 654519445 591394808 984959941 782486252 929895723 935833489 964167610 621119598 888408942 933222963 952845147 513603637 837184364 741826460 779960788 801863274 910899273 27380640 359748734 49616783 884717231 411150925 472744317 393673564 734777161 402967360 966335095 107477982 632723420 855793109 999572436 995544297 999158286 304947024 540087678 594450538 938313305 739749220 817982604 734021499 898166020 910962133 916690166 837987482 899310654 923328023 952563020 217517142 272137605 82569701 888064946 723830123 907667956 384133865 998145872 681058235 909180557 928627974 966941915 181573602 473131023 421522100 433211629 55166719 685271449 64015669 776784204 885299997 899432971 10201030 271744050 635449205 852722577 730059048 925495511 614874445 732104740 17463485 711787879 695075625 945187452 635428259 656060075 974474432 989093310 585838149 861487673 759883901 771864558 899747397 961887965 17193928 89963273 574861604 646635943 418894254 844735788 477354050 586251393 383662796 953458854 843419029 918692452 379147634 683333961 933586302 964211868 335833107 751702495 694340447 854595558 423921325 852100950 72435531 746400747 754197260 762378578 957948480 998268266 311669590 432334835 921808173 963886094 444863544 980507043 413243694 843910188 829554161 837109634 968974443 995219279 360153322 681464848 413891295 423467499 206417258 373594305 722090000 846606357 373308571 786347498 790703288 937410058 839145281 980563542 283500241 865245547 638993094 923799372 475864879 675929602 57769987 180161466 322958205 783422236 449990130 473220917 159700298 182702964 612033499 650446548 892017000 944043699 647500179 710871452 300848393 433739578 700155401 792078043 31587184 492696592 130707592 668659989 269645995 573107296 892276496 960998695 886318142 909978185 79352312 760622539 862776153 963862911 889520262 957749351 731439010 816824360 160832919 272951703 639676940 919059799 609592019 649208602 760054089 785700178 68616829 883417217 852662622 935868364 259207498 716940130 200960822 730596793 106827974 538167923 642173968 660639399 167561623 801434803 998116369 999871087 767096134 951369637 548361616 944813361 334242464 520631419 23348365 546121052 144621515 661855176 663412335 761025746 882770626 939813112 326651346 984553979 561495068 598535109 344840236 892746908 245745970 661914940 523872872 613493111 457623361 767712677 254780188 414485930 207316843 504273562 69481210 186107159 846191097 974439724 541217148 549098081 360321357 891629285 184061360 730971208 813229150 897595468 775631935 852808431 311526491 898687325 669286100 897705993 601745441 964873865 617849122 712059958 67419633 289137791 244080360 714236993 475149515 585793538 520563685 611179874 141526108 152479875 302617618 908350935 476644365 778300750 635539527 837397168 746649137 860375370 343304501 544374901 251751560 482182523 347448867 783621859 226482164 810576387 247207434 532225017 95394690 293028846 226465754 508821972 211528903 895388375 923497469 952973803 659899807 774078437 54838785 835078217 808212586 998021357 890344487 990378006 772040685 936817459 816339710 892414893 157019054 429391150 649424854 824208791 366630845 869057224 532859820 896836192 261505021 347343626 476637663 974361527 873727570 985494837 701100056 723490103 291756003 638600427 948250154 993107899 48152024 653126211 15432495 192349108 905226215 946903087 621044003 906154366 625845920 799505618 580681500 711716281 901104961 990741050 328834626 834346299 353008701 775966084 155889906 711717564 794109510 866935655 378655001 996957594 520699853 771693381 733117932 948894060 952033742 979826000 423997714 881859409 312092539 827944783 601273230 821901588 461941182 635327237 362882180 753517188 179928375 926259918 475929765 521879213 186803387 440766671 138145980 719743281 728569707 880436694 102448013 537223252 762483844 803813119 978469699 995480882 268813473 837175896 314163096 547427309 999069372 999884943 632405943 674666779 360627021 902500578 935476685 938098102 911547575 957150965 198213610 375302434 199437374 286487067 421284357 663977519 540067106 838623456 671492881 919770580 322260738 752028802 578476642 591953670 715017201 909362316 86017109 610824978 46083179 60975579 459208624 882520877 742360795 914561011 290947039 609834764 333157208 897205776 808674798 956560431 771472239 917628111 292275213 823409187 690340899 702281909 474476434 763218469 39366023 287108418 366734939 426085672 397711727 586533996 850893245 968167544 270791530 792445572 134249828 345366954 158444626 191345596 749155613 987753933 972607535 984353830 38037965 312202438 3783427 579023187 989213497 992695005 697017677 841708644 892442679 956774245 682488935 719871207 686650225 897791942 276350498 529669709 273366146 391922698 523308585 860107188 173561047 719187030 635684745 930983687 134069698 181230598 871982377 959024823 487301796 629182831 826651130 875831019 556637129 606105261 113949632 583440035 456810138 708460312 498390912 939928428 596642778 904179363 566615288 911769063 356621967 576331367 924538692 936387968 577747619 956507720 562227132 811440658 883588330 923549346 659633022 923386397 143276512 227804691 868523493 946443951 927628385 997550623 216601657 758560636 62046954 740468158 891107078 947029925 602062644 610714174 603757379 711086375 893162102 896918385 339678008 581041030 399163861 555312014 226910958 782948035 833011131 978370846 135168168 700030422 898822778 976488577 314705009 686639929 196064048 382359450 885676846 979916933 986395091 994827683 498807028 548696176 967872886 980804156 716173834 787864853 409465170 603118002 846532818 959715209 448661288 977310722 219456085 359093746 801724782 908721743 579362199 669155965 426932990 855217158 46959612 672052461 427188086 771097180 944715125 989116561 115748395 891328593 233159010 779896648 718670881 805906192 35025375 387080218 157079697 449470235 461900234 545035920 105415864 850159112 980669133 998014366 254721012 364557435 965974057 971918165 753620948 795158552 820111572 929431787 794782974 967784145 272356141 500039359 584989540 896084220 590958326 706040890 7543366 543094873 782989610 858603904 595578446 994964210 607074282 762292619 310447045 404559475 366487747 769396700 743894719 984827077 261130523 687296781 542116070 617348652 418087877 898579582 846399596 964925405 734514553 761004808 929369438 994535967 558250233 823943051 50242221 80886006 277071186 884881151 732236748 912665314 944556896 992405177 507698200 696509331 600668755 945198989 417787262 962919632 262113762 810615661 648546328 897275667 263626043 779016087 586234946 672374399 921253379 943209163 305505316 650201280 626788292 771486317 75003240 972863269 472413581 718318014 945050061 977378531 554409426 970083350 969069661 970797634 673143166 964422040 853920472 962258686 754366842 913930231 214777950 620669792 82778886 259175730 456265662 763957958 511489670 668221440 370598682 816110736 528301572 958126758 426971649 947321234 132770961 630045239 228292475 529590122 65014526 273141063 196173196 782330364 895372680 901366810 577291120 900006510 633543326 848594194 447547970 670112156 321899698 853623103 951853781 988294973 354476258 953149219 248149818 512435816 203335549 393980948 656971802 899839166 175528964 740077160 293200893 560093542 332324269 445388612 224051202 960548601 877825145 936773452 57505272 815514280 750310691 959235831 680186285 958903200 300793161 642594400 569792920 778058408 993467950 995720432 864073659 947838932 442904331 712325414 855085274 879554951 112304959 740977683 661065652 949279144 942844302 968562699 935702377 993912140 546716090 585829841 672565670 788213133 930171328 955351335 473651235 718812211 211010236 519144935 45510864 661109105 547858716 755329512 692602625 693227823 34564483 524115478 923563318 996316434 390494220 590811682 933633424 953779934 987124753 996787719 867419606 918999021 389034320 653708891 110491782 299390470 512191370 671080652 660798391 704492357 885561422 901278856 667402355 775251400 553531172 762807749 198038838 563529111 143774317 783355435 888466221 919474554 669333858 954692106 499598198 586467912 108934653 380913345 132925553 164689146 115033513 197529838 71535351 640252836 810161302 921364757 251603808 373266550 231107426 313127542 989077216 996231404 327687541 765012596 815959682 949292345 337231475 591479880 909847038 933902979 227070200 655105847 357764923 686601482 11865726 34576898 976233522 996864123 569648477 675779670 305446255 516023399 531003096 770602270 504128283 869994785 351860404 605470775 717819262 960426340 162896479 529048165 153706576 788470010 510043663 900328852 483607314 988909150 877145543 959293098 695695111 762275662 686653386 698970188 305550161 367178634 398847317 476955610 711992970 887459039 960157806 993314124 106984264 597977157 241767594 715710992 125497755 351282021 519097882 692506263 475746928 551272594 139223702 405256356 962787606 992082771 54396194 748628943 388917951 937358781 777405059 987204047 337964467 433951158 807960635 849607643 504279200 643400129 362772020 580517531 690228182 833428636 291846961 872945307 776089193 776697969 552170942 643796151 850537952 962984860 445664299 812077993 206350199 479955676 500016049 645401954 67724973 185180885 634932207 670866923 749277404 792339471 325750358 416635850 251260903 601983987 507711290 600349815 927902514 930993390 983970691 991222322 879517300 904435736 944435823 991842416 167110452 548867923 366763141 416134909 994049473 996208628 310337302 380672397 526883925 790918786 84286241 150280043 953098027 998216378 797289856 980228037 249159843 375111989 927895243 956108457 511823484 919765849 391545229 886013501 258945189 689017093 120194089 138341789 147054591 222941046 871897718 895037272 677071853 990436026 331500738 681162338 237165314 860672911 274708686 862166107 330603170 618214095 118260690 460735998 449721991 553369701 2783239 174519703 591697021 687954159 456882963 759298028 28588046 490506464 144223994 906356879 963796150 979583655 876035536 876385343 967952337 977386686 383437025 590895261 798831591 848973738 819856939 964509631 52227034 462597935 206072852 467382688 645858572 703592846 614966956 906921148 208745147 217601456 42528106 856723122 155215996 337865566 855401110 930088904 328042126 803709613 545201823 578027371 276504912 580554013 34080652 165984423 182584287 916592955 684119382 969229983 352910819 650329099 334848930 610922642 964596778 985667195 516068789 729079936 240496086 455039701 524723872 792611750 38023281 248760379 874309487 889100381 723400765 968403949 113021690 975343981 440655094 895809444 699328511 757545452 476949837 729709329 846972768 854494099 794258117 890685595 301745865 704389503 506247039 921139075 50859036 944840503 427600593 745784593 285442763 637079583 414384497 838045639 981403801 986212330 889512491 941256153 356405091 876814447 459354318 926799432 339796450 575658885 454022334 503559732 626362671 650319241 72155332 302729399 849325867 961828289 267595684 407816597 116789388 287930513 366526210 564768442 43279703 87446306 54178352 248319745 262286327 625601059 818284515 837223762 532768448 743230407 770899708 905653912 478674473 725455299 477712458 634848583 463788530 871998513 975737401 980276119 281553720 687744244 137239385 756838914 629971400 634549294 722696994 733898070 741841342 878582428 677114383 991344862 193062368 928129400 412831807 705383986 884156133 919808577 246719968 986501881 924553421 952278910 588173043 607729198 502193361 615071903 34499542 342080431 821765907 833851243 234464198 422173788 983367544 987260999 356227679 827036738 371426838 750844556 743002417 770865682 360610008 880187629 951201816 998986764 206484382 409767962 552302390 818481461 135423170 457095919 984693970 988201985 778617539 798368178 742230325 843088875 916417958 957958949 444006216 636973353 884450455 911102418 241720045 990653552 693817002 865887224 388607960 715342277 151426456 599055647 652730721 653864547 851404005 915399035 593048239 616828302 443010926 837125136 33590395 762851694 414544154 544583687 114780804 131190760 79050169 806964608 766695619 922371444 537294930 818025549 708589310 903990666 466847941 515212662 145142343 747864143 878995686 951751875 662366492 763470137 700972131 962266065 698258901 930687058 672891838 701077908 514453957 656803726 294032926 354057817 432789986 877947784 996133232 996637487 17950831 850157180 174901311 813123290 765292871 955951927 357904806 378277434 690018771 909102897 255818172 595353489 278126510 337932992 64433617 68453766 15216732 300246212 545733130 833064186 741553970 846166642 722646231 919095136 474574456 538487521 464743812 857017839 838851543 875820865 992343715 993731046 876855496 937361753 525564358 613492349 616750202 658688475 47199918 384232850 877955300 932817799 620550329 759679000 960678773 977086279 160863016 903006807 738193909 822548059 358759270 495990698 900778568 985297189 435286614 918304253 689366544 700691915 712770363 842482978 967873010 975505149 394894253 797979941 717123087 950944718 790091954 892795416 211257561 770885526 358967898 410641453 561010938 620987807 611391240 922704236 454624459 601241815 94441065 152306374 694254291 983364715 385359936 418867598 282809487 721450764 639781520 717259617 260914541 476577230 978125191 978406599 360967516 888636749 499070267 726304932 460880769 500720749 472662147 978776126 50763499 688256249 202015404 969189598 427768651 693701406 690963193 765656122 994136506 997280814 480184764 892459751 647447523 850711317 673969558 987601252 825813197 851988463 443505142 816715597 588364059 720843229 625348568 691179509 824266063 832886648 31284138 215448028 630098714 863802031 857164941 952956028 252672943 751315381 907053525 989672665 77278866 643409303 66513078 662893542 604957295 930441547 766858550 968909116 639917241 908595400 467900287 634007328 403272904 414876296 736354440 789103328 480971254 609899292 848901298 951098971 380702299 956810158 800292362 841380470 775208232 936973097 756428482 779445689 154734550 542833239 380716292 886403321 858630916 919519293 22461023 41833405 704440911 901434239 747749318 829474515 102363256 923269139 48137033 475184664 362774967 621900700 577372229 748484311 467415763 838132443 239379729 470537384 579639037 643396565 458687969 661120819 410561789 435549745 150259073 239490749 487228962 721267640 183826965 572697136 530112641 757664357 732340937 735415904 142498790 824099669 516988846 573736124 571070480 692151796 671293381 753354798 751609263 753113754 568029602 813662111 380616581 622815705 286731369 380342883 23588355 255606352 725305824 835042344 900127357 934419116 792787548 844559871 192250265 939629817 726489117 797463163 52067586 430780275 68222556 468993112 347188747 955244666 723670962 777486052 819699633 946370210 511125035 531165500 315850004 345697434 17190572 942297292 847668389 956543610 146692970 992155431 272272559 385908256 692091005 916046498 515618468 618398144 805746489 959233377 646827250 901955304 658469730 948761093 444594983 565403484 873654671 984797187 598441733 784327954 930001925 978225356 209929298 586317948 54863807 600244901 893850440 986705604 724875917 786023086 705000477 837708813 969501853 978076418 943615354 995595291 866036167 958455205 284031673 611670038 524104829 978600210 467840661 751244714 110268392 874936540 415055656 857992759 96505730 767649928 110697199 279235118 73801385 194669877 370075908 406334378 53548475 186408337 406664847 478974039 719243240 723259211 581046862 711721217 90686973 606037722 76094594 331103778 834182079 901247953 781980150 929184325 737501503 833791309 546821466 590583951 195080224 330058284 183239823 666512783 816583306 924003478 658717440 757368392 947504828 977978219 969829860 989644128 917267469 995707969 558059275 786028314 417884953 813755054 699676018 716110974 809598461 910824651 256956916 676511440 821988423 877113834 334749714 363010279 691792027 975664817 314912640 524598746 760268392 927796920 927866182 989841243 652964829 768933955 919362949 979541699 240804024 399637139 373442005 655477563 59445663 307355893 489151467 975593763 565126098 977361387 460261971 938036246 436502435 673980407 475213700 536531055 366918535 656757594 21628005 864863929 475345247 623978336 255766489 873917345 861121461 890012158 577113559 603967560 911121511 913214033 461027526 506881503 163403070 662174077 934772486 960539141 430566291 746132050 40687404 166286761 458046703 918622176 424999133 497001311 478789489 709666265 417092480 475814802 250075441 364581918 59078895 894293852 254872011 984661477 489627394 513174026 927969212 986460099 300562148 385671859 118133534 593902417 489969010 666466489 470933770 687001038 992887811 998225827 118097841 652820247 642599064 966264080 710602450 847019106 342197593 544018885 496053051 764635484 9484495 67803665 30921411 754525112 298554353 957581062 278645940 926274101 347483117 415247769 279189461 406239814 655079497 928092691 731668537 819653394 954379390 962597238 187108152 979078784 524498889 967816933 588844918 833060507 181237315 618684742 186624867 893138560 6113106 324395366 814452378 907859900 878408458 965798740 543479844 728291431 552481294 648898275 317280490 320883441 459469258 981577532 810375713 974796588 864359444 926702882 997956666 999459471 243965892 618612728 26240612 807089314 410153186 914327617 286409013 875263413 830967377 849499997 140931974 298562694 735579782 838951279 593578332 753991229 833887728 986042431 262466917 507144613 207255541 925033651 68576687 853088198 153247857 725608474 215960856 867847052 688141532 806999937 341492105 686326470 574474853 831902253 377396921 613655001 17118160 949382692 137242797 997755043 196879535 486477211 394885117 751399214 462013370 945217221 521707086 556779706 525462205 846776664 457827791 688551307 751983585 835001800 275380407 869615774 788444114 984528459 634988659 913973450 520876425 608225662 532950300 895646612 562728926 732669211 491977865 599798555 242729115 901516439 282957571 917508990 849469250 934647213 270133141 352540836 859574058 892082046 593175611 776145898 687841479 878162850 329388787 631117320 942787846 979828914 12995159 290291231 340733039 523129380 728217072 845958518 597637467 843103353 924673150 933447033 525756008 863838077 864006002 944385466 463963737 530103541 769949229 868338790 373828645 591915266 338260444 339466547 850267668 911971751 818138880 970544625 519102101 981509842 678723267 899717849 599470272 928724172 804281734 991269478 447349466 813710692 853625766 874245505 72898685 629178225 451140104 829567766 920070641 953632758 682773732 785372851 938525246 992616359 932258405 990795382 375888030 758280697 130670419 592553053 414385947 962312049 387212557 596943238 955346684 997975854 729931332 899116498 101478088 367352848 302324087 638147735 102979244 106055601 94524077 473277193 48987009 802252388 342548093 605928658 488275084 548151648 75479550 989646492 774428171 888173831 246017822 559450159 182734323 601668600 221115616 342135883 223396501 343652802 633522553 728709929 579001819 594494296 757755655 992855746 251551119 844646786 183570808 477794900 171719475 663459213 257596840 852412847 94596346 654889183 954674593 963311629 629714579 732870855 160627931 950288408 884104482 893367255 685303919 880439543 863421421 925257476 744592761 931322097 968139263 986719724 428842725 596930826 660894091 873562646 543245188 693605468 304782782 493502162 484815898 913800232 501159940 560154820 75426368 145478695 994441110 994651008 457364049 587505847 142420878 246552128 42919246 928133040 833462706 909142616 572651372 579985955 212555943 605728767 101409986 813471121 838467107 891344553 56457534 508021298 233959433 897385929 574656731 792683316 694001939 999949872 41972771 593161150 319717102 449058248 762832987 985881714 229343698 376091571 723741822 840392987 247954515 416478473 929912405 996859993 870781423 958197954 930090083 974956981 31272464 424284587 560909367 724570117 935965867 965345330 90256929 195923281 941559832 964216190 39379194 435798023 450175527 620659178 662490739 890062782 712212654 795248372 701889998 733235647 86650826 433170528 345015816 734623034 313453922 437111948 902415533 976924938 664539274 688973128 218355945 555854200 283345827 969540364 373333407 972135593 989360990 994067031 806525932 818794433 719884228 732525741 981566426 987580450 245324934 349761492 321582717 374179045 776196579 915280614 889711338 968101104 434687353 542626419 262209471 400303854 788188485 796296377 159086936 864203589 897318066 975034725 574100638 883231385 402733816 603796333 681667269 918278295 818366837 836679293 267662011 906606792 237138341 999952524 711789494 714250353 388551350 511249704 174290900 787057178 619747898 802029784 301742597 565328413 594003619 810877789 79670950 423847995 338707932 526929182 711748975 983430960 843352494 856993594 292558647 420362445 169880297 896965232 848780120 907728166 984642748 993454886 682329468 922831899 548733500 637415875 366098372 697933941 413579420 453829638 994017441 997092900 176608524 602763020 208968527 977835173 247835689 483895268 597408330 652856909 648190366 666272433 818896861 854139883 274706408 987964628 663076845 759625452 209699587 741842193 708449067 806268870 531204499 580973104 71691806 525166224 474880813 763645340 212062224 590243884 487412009 897726790 276707316 996680365 313499420 505919433 793886336 883995501 950002594 967891136 584063412 885551092 947153777 952676386 941365383 966052205 558671378 620653093 605241323 861966037 191219312 714311016 602915361 727896457 895950629 953082082 750477120 978562598 398111780 507841332 578267789 990357272 978755452 981363373 598666098 889053876 608245090 805325068 52119074 188162319 67227898 212567857 665711294 965224624 824325792 983331718 443561754 599349968 425861780 519144076 453083473 839717360 415525072 431477521 304705359 963947163 82696176 106612522 62492198 133070433 955550754 956819064 511616137 839334325 803432042 968753342 960520598 995507880 445602635 571033297 20787164 304051463 467755281 993234592 667679052 762197517 263026547 712927725 604873635 609690123 650085040 909741545 316527868 902857587 744770778 923063935 959358979 971514915 453832449 478818644 884149870 889371529 776173604 895108881 865069858 974950060 959657244 970050975 417017893 660773452 548989921 860773821 863155468 889494567 922770389 971755914 571785326 993709455 828481460 921120078 558382436 825506245 609219176 776708309 675528740 964764628 51790533 751957091 777302366 993940176 358424929 365111731 335637811 784767357 241727839 961336155 819052819 830336741 564789371 753188183 678968652 860052252 538775456 725710898 624771100 702126260 104702592 106980976 554382669 594227594 669444009 783015203 317110996 366901304 523099572 846398551 476846826 679247623 870373293 911423701 655463124 857830521 740895625 839009860 325466437 773223701 388972226 584723048 327737332 661869454 632585263 787207137 677586574 922669841 121281954 532677042 651817462 708035088 443838746 777805022 48567135 810368540 254502097 662746611 93791289 98546312 254378154 689561402 123765141 300273945 110400413 986483862 246552291 978598553 663586398 683022963 703732526 871839051 895455747 930393229 651246787 828700384 763582671 947195094 492987433 538213381 456266729 467076088 24328801 470099402 47382213 702480216 426322349 547147075 999025102 999198776 656214588 987917746 391463938 665651915 579207709 832428650 610902674 632912695 970527479 983270028 899019998 988684710 325946862 777062478 318027431 993774836 447938701 973126536 968473265 994569685 74492986 432746403 681431876 729580096 78124470 921537607 592581911 716778878 437952943 517663274 300338254 619219861 324530999 464836668 678445849 843224433 4404527 75192218 379850816 858552221 870562454 923046406 112457982 420174841 716826791 776499833 280170844 574858425 418320854 489705023 760859996 912929907 125698225 551594657 205213455 426709622 845926794 846957583 892689105 949508555 755797632 933300020 242206847 792822754 47713741 787550470 421087734 892009275 725991889 807843555 154390926 551289390 977392434 979860112 587575135 781234317 167772603 324816867 661261423 829948026 640921219 710146823 558973566 562747397 339389091 552242857 941008812 986326874 375804226 727585701 195159569 220819217 90868163 116054688 779256080 920996835 881299528 885018932 922722196 976165445 502404605 622568544 712309867 956085754 820159826 890191945 736563140 850917758 927331382 988066366 192711058 806096048 763411649 817993065 669498573 739585507 161539475 589977434 925714418 963904037 294276478 718794313 189803052 903666329 743160825 751857225 761508124 902963007 870177143 902847075 981528398 994675772 991491204 993830609 129390614 956154574 627622215 665368331 770179231 820830156 380974580 522552244 283865214 729911982 693763599 959375770 688819067 740392570 694112375 716623008 742394515 983746595 306931205 587355730 312948642 378983708 309680254 573069763 185023010 567112434 397944610 941862662 48796574 750915315 967028759 977250776 816223890 933580480 881364136 983060976 523972259 959116643 394431650 842517629 143096877 367090745 488389346 873166607 642202885 893728846 581614942 954953381 161250631 685462511 273493846 603897451 98618072 505424744 622464679 879274824 725691053 926338326 896758784 952802900 816609146 945184655 624479389 769198083 778516334 960888797 944093564 958980447 977479331 989569411 525230327 586266158 374805157 807314083 24820428 762876757 9216955 768847805 888548664 961252457 194010095 399465184 150662167 477158291 157075843 425704427 496245033 747202267 979111257 984066889 899306147 984401893 426530704 555797403 47206695 673945096 74693988 749637118 311588137 958947335 23747862 144235937 820066100 960097646 911451996 958727447 170878255 992366676 2078898 198973505 770619366 779440209 531857412 622080853 330211613 968321147 533540193 893316138 503243740 899475652 307617846 873148283 827708955 964481068 541598516 642489025 689359402 921060835 366104179 695557683 809784993 959079685 981962539 989419176 776201237 966034513 328781912 630692728 659042277 968069521 772911835 826426416 845517090 965762528 485849006 729604401 945648124 956946739 169510390 462806056 841418092 909758731 742650990 978012551 733684862 844380033 824218888 997970758 268997417 936824437 806779182 871966014 735187943 776755841 735073330 960376466 411367982 949662885 579576780 633423510 103818855 541439938 17184182 183007767 253455039 691228013 198777998 590180918 922606831 958148937 391232271 740361602 642702983 767759269 95202326 730840772 718099833 940261684 728541455 858132784 109097582 373018489 947821927 992858500 452425730 483258089 162804889 667060798 227072858 775578384 928133695 942838234 908303708 952121051 854486905 930849059 60840452 173915518 627298267 849992574 872348727 973250506 751108503 878676362 423305590 453727365 503498747 595340723 740524642 846920324 89833871 419166960 166652570 800576358 852991663 881944544 963277174 982528015 635581819 790129068 205945195 652531732 847933224 974561721 420719766 523836984 6959242 265706466 265811813 711981246 383561074 493888780 889042674 937482422 953330629 983837920 627691441 941400769 394295952 484396939 57826608 795863006 811620058 959891001 275831321 810897232 136463511 286316843 306565413 937897707 115457041 788746314 61025339 66991680 907364156 923672040 5745798 332022346 290711962 330965193 96473359 744456955 772318005 804784407 708010410 740701237 84541821 512976860 532958092 780472034 770724643 777531198 455631246 870186978 344945673 346044151 113782615 543876012 801609717 965912519 775419499 777823809 396209932 940972254 650915363 958203210 68866523 957676326 66329304 75906174 476944851 796040731 767254910 923687659 533933632 927532306 765146518 799306115 367081962 411398185 961936286 963693138 634230053 803448869 241239929 433549392 481192217 958311072 731305714 826402591 836120210 896975864 690727553 883330747 627061943 793430603 532902819 589890223 776052979 905901897 929039409 942867639 551586400 591754005 975379556 991778652 677760971 843097461 144828700 512204845 831378146 964115473 681178799 875025085 313679337 939321147 846160733 846267842 486719439 881164338 285309697 327501042 161930268 364560527 895741301 956089843 636904940 777061509 207935418 721900799 575887297 685734098 925466870 982526496 328889462 406074321 215741456 270705599 47255636 827538526 767049535 959283275 823132687 848906673 911712206 934733376 716834833 905818878 752146008 763945617 117206161 201963448 316422767 778028615 418399136 621813421 662013035 881586169 534319259 985525492 295032746 905051039 54539117 357269504 562374462 808530694 770427536 864133261 818677500 938812555 571115610 867709972 289972658 899884627 163641118 559053828 517495370 529619554 916003017 979903150 846043032 879425714 49919642 987193615 720742331 904171478 40424897 796402834 171879148 490886595 596124815 901956929 450839344 935321320 274853770 862257149 911732374 921813178 765442121 831729268 688074605 755429423 254373089 980879251 52316100 201093050 811001626 984471719 240759010 965143743 310186322 396235423 49077709 52992566 96963432 631645768 537524585 624747945 512308897 902128340 733028133 930433887 917598196 924887999 245617945 435171876 934017082 988946903 168384705 922789543 280003439 291299402 349655840 699470222 535169574 949458815 368588180 478464052 422748486 659835154 817555676 888157392 968026954 996556817 382641248 988886577 515592661 612127046 631304376 985365340 368515979 771867362 94041298 719677226 436831200 688206314 296180516 638378719 77642132 760008648 99897429 960529809 606564400 986918808 137997266 221093527 710313234 893073880 629113576 803849846 849698999 888213355 188068788 951095724 958609535 983282283 656254361 878168203 467914143 798746195 703566367 777403928 325917414 541398603 939384060 942779274 802582708 865311272 228024372 449039874 856585560 897469705 62088618 721765880 787598634 923793993 720719550 735583276 702745014 922331490 837069223 994942118 116239454 462715058 471509386 690738505 154529564 178021161 45725638 205029152 285964488 532327930 160009059 774649215 157169926 842496478 962193422 989192113 555480641 881585900 402700308 504901006 598439791 681825975 769820854 904692122 691631278 895688767 3010062 225948958 585387507 684473386 630378684 799811737 194575712 622071359 118727732 563277551 909784272 951890492 987057418 999487157 998232959 999013325 347312663 843070088 223084056 958678335 850687756 912013605 915272845 963548537 458405317 916367955 708838777 953824907 711013665 879342601 150237934 335172471 953204874 980447972 505753585 899503528 469379437 942226514 218207036 363125580 849633246 938664870 842749053 912848587 421314689 512152909 70396458 930321357 303115831 527992131 867078161 943896183 841412618 905221522 33732676 943808598 593623109 600397376 337311653 346831839 211772904 677599721 584332657 839926387 254622381 592311933 520049528 806093500 160932571 594996239 383256489 531085262 189437416 355389257 802154305 937035240 829530753 883553711 361861097 634139132 851193920 860686782 872864285 922630011 308384078 840172459 942534501 992251759 452070426 646954978 492668781 600486150 295082395 495314280 163245470 240330703 802074794 951208179 588278061 785767148 727042946 932364929 366174633 528232037 896183875 934248471 223133650 235257576 801026952 829250517 439264030 558399372 152146186 525620961 581932006 646626319 689675897 886238958 555494594 619270381 373021457 565240475 533748560 818013285 171503533 819954418 876481812 889480499 480097061 830342926 526608066 894692111 403909449 787128280 967707265 996886288 393096702 521843412 895614210 997280544 42991474 843914554 182901272 798468339 700486977 731905561 678690200 879858743 835616174 949677081 662497764 994733764 71668051 130818203 119904594 573851313 429730314 802168288 734001638 886410826 575660978 714714528 552341176 577187616 375677376 863885234 212204005 519937735 850377514 992051775 91323516 594257064 753010580 940900805 423477357 571032349 891585103 939446342 332619294 691759300 480207681 595872820 717639645 729237401 66758992 999070242 470473509 987426853 47859684 864210599 442969366 908517957 310535937 474802380 783795502 974648463 697649816 993317302 105119718 680410487 683876076 875597731 9040693 988386757 938018996 972674869 693236332 903126803 185109763 955643430 112534858 669498429 127065648 489279058 253154678 790230320 289551208 701551229 758772686 964151605 358073362 408176778 221998970 258518114 570691903 923292928 794639518 872552203 226379809 950980298 420821431 600696917 266037904 384852796 946786899 976778168 327861730 797710332 121488298 957614084 24903099 130755534 595512056 969008572 649386073 989151115 1321212 247567359 82368624 810653946 468564811 847193991 636216950 647087187 246719980 735173138 39352900 733337594 283014194 677158003 4126991 959588455 945619957 958761366 921228827 923956585 743525211 874938721 936323599 999096688 197648056 935758428 237796630 325837379 830872810 848589837 65246711 983833873 665959716 705570526 741887033 844489936 113310582 159551737 100048849 984946053 709562298 893386372 392630705 645474270 163954372 966446443 617345748 651542883 10702716 279875612 410226916 857803293 679279175 775260611 464600018 627222919 544442637 988023272 713828184 729808802 374318455 911500131 799153088 974527280 845557969 940526025 792928080 903107830 500772079 787810924 787841107 984511942 642980719 847947189 7520337 135559901 601381334 658703770 529407658 746130031 448413488 531062221 816560124 992290358 771743503 963756499 42754797 77901886 141787405 555451164 86922913 888750846 951962108 998414060 451729370 666412509 382389878 421868706 471789485 704875580 607753745 765591546 385266352 873515450 917070564 988974519 420875748 495752656 935443123 955793708 67193286 682063604 260070913 313821864 77734210 178083889 405732019 886804898 371381355 905004513 70484138 112643928 581662105 900835208 163314314 956581434 213445024 879268795 960695579 987878450 950180750 985489886 936334456 983094452 340107835 956694670 173151150 935914351 780496175 913850834 998910997 999638419 153152770 873463166 608366309 965877615 96858823 868277470 650254647 679125142 771559024 786761053 583857746 666805227 270770387 689314376 681721046 870752606 57054052 261426205 21947632 606060495 576058949 676325599 847677165 868344590 315567138 687226282 456431351 963241823 780378235 917558599 113819561 350613825 250672260 449984147 511242457 922698823 291771031 482004157 879049385 921052805 718297287 903649488 256846742 977788834 814821335 989717797 90585094 128667182 413642502 415938322 566388807 834203784 636458389 816950392 433196238 599093118 226596927 413663733 416421800 672718796 988181369 993161890 365920787 479990401 664233184 722564806 46199488 260532333 81899167 876896052 715523664 919433143 796365958 872577546 513913285 816866863 97688385 105709270 402224234 915842990 807717967 869357599 294496856 585568557 852074474 971832246 424034574 509169314 537239297 817613211 853414087 874189439 420410687 867446711 801057368 921970845 754645595 853239073 847041131 976544901 805560686 876911728 642459485 798959556 486905148 873617034 344064577 723636104 836323385 927199875 203515767 544368621 835246137 920226489 455782621 812414045 275224033 979883461 912448071 956062793 19110580 656673235 328308657 720599857 163753737 401154339 854927262 948921610 858792754 924823906 33543159 513665966 211934837 549289514 183030031 446105095 756176665 887200739 78559602 340451741 447845648 644653194 856211767 863472044 76355430 839566647 747503748 984663407 487374443 520125872 749263502 810149988 848532748 994390536 603353063 850315667 804864511 980104328 801294525 998657125 241907648 492528028 609039446 909473340 566950646 680375594 609096687 965566755 194775792 324399876 488614478 505720500 690450823 810761677 631185917 958296046 687490615 720665613 415116978 903377535 535717841 802561022 40126761 766510801 330034753 694553236 183397388 395426435 293399475 754608442 476308286 630581222 770063704 868143213 472497326 741140389 3487335 910599152 629587753 921800309 758339602 918121655 450290977 596311062 528100372 774433393 970772778 987716242 266792572 514450393 546868758 687857989 210590436 825990223 548009958 993805220 662964991 925951313 726062633 824951684 551869557 936286195 1711538 334907428 946922415 973469330 325665602 534827368 97135455 761970638 596107107 696740981 981894842 989628837 642077525 892876594 604062003 631689396 304323491 461632377 422944684 666759698 728006569 846355045 341672646 675149160 622486047 822075411 371123660 609076829 959738349 962729742 940238595 988933547 635921895 732540248 491882218 714814041 166767125 460315614 778741075 791787365 430438121 440272572 93324082 488614327 622420472 748537572 776022571 819235869 612744911 623714570 528395870 730062642 706169764 923533003 948907130 990524826 559481284 744747600 528565750 959097524 295297577 589525027 759778158 995501113 819254548 871770505 568274462 999541609 148037352 478767075 594300569 895712238 56001786 734535510 962678106 985364088 422219545 675566996 607976622 642361414 599136370 608084426 859343996 991810567 398321471 990832766 166363484 908807611 422758754 693899897 543891378 944294812 214523902 731332887 561012172 629924628 518543517 732148495 450161517 964870584 332543724 564069421 279664977 386193149 859962211 903037418 407931931 800068715 631140826 674668636 50244236 510766098 243237823 919153772 464718339 572679969 635955854 915879441 793822634 998378496 682924937 788691525 958855551 965143505 110012402 140954262 729761585 986813718 983384101 995456607 979303415 987141473 451679462 958791766 835737630 924494607 876072530 917182898 594800637 914334760 264428029 857200477 608137005 914140101 92495054 633669656 865146978 886350165 990952246 996766091 976457552 977443492 164006372 946545646 158579977 439070945 375263153 658311057 322274137 671628464 354446022 999619808 209549377 750774799 162130442 617619733 676474832 875489330 645418373 996708920 420493795 789810209 106335833 467691657 396412968 902585718 180137071 686832253 318068085 790517191 495993838 628896281 608156215 609346836 949971574 995125136 57576458 206909452 735927464 809265599 254448414 767260224 942467438 961700844 40192671 147464973 574925996 656271877 401471923 710347438 181246641 409527688 450004762 911961267 617361607 973137497 906431308 954407281 62363681 792362540 946546770 982600964 598519851 878974053 467250658 815939665 878759469 923424410 26279106 911706236 877332835 981505819 857930666 860359818 587558521 918663222 75946257 264938562 523613504 744632924 758737425 772974623 457708497 956426065 395706142 552566832 68163831 120763713 273428421 817121010 145971029 253489538 712642946 794418554 900063852 909927168 895432540 922864866 998310369 999734311 579588464 987191740 702118995 822222505 602519422 863680479 299383247 977847228 192608646 997198640 623159899 891596935 203904834 440757625 987834570 999224109 352620408 904560119 38938759 576111641 448549089 707064203 729512411 927829722 5730913 51664888 152971107 842343772 607867291 879495493 903902905 931407277 146313980 909682331 841451481 909251818 302102813 340612847 999666839 999671527 683909523 988903052 123613500 416987905 67710203 263137311 829313793 910596952 625503859 898390618 483320932 592995975 998331163 999689373 687934280 964489333 786198109 825822351 503082561 853472199 174555593 741636574 690124514 877997185 617371709 836919300 705044977 843595774 516734766 760135042 66558129 951046596 44531236 479125624 982752596 988417198 679232901 769787680 810638354 944754890 543452938 829694846 947823862 983474609 736105302 823543726 426022841 861602225 67481918 977020909 100734500 979131271 731394336 852451231 974343077 986441624 208681622 957951823 497712770 874785552 379928281 743339451 290732533 652031967 407564360 920184580 883651642 899308882 2971527 512932507 20460912 436283854 850444128 923407992 201719697 337043394 600519635 702043119 474698352 766062342 228868448 632990296 88623805 516849236 777425941 952782725 952275529 983701722 489967986 740355940 871792646 915757338 367826460 491481995 650006738 941863501 580575231 898152352 578831865 802763984 847455594 888437250 630061628 655552731 704338493 899640036 200980076 462087386 810721723 915147027 784035302 995751423 483502235 872135409 221101151 600072394 300812144 374428268 680752130 787709805 710317384 858347194 332190318 610766555 722555632 993960065 222480245 403435020 468271171 991287843 801906187 841031937 437066862 925759599 823287245 829828161 867794273 907118217 311516013 330560920 972692762 998070221 64216053 997922568 696593257 982005027 348544898 425205843 858963644 955829383 29617359 352590273 253645933 326920938 685284489 930070278 163225999 231979377 671181872 853708800 613547913 767189961 817056824 972033086 277074771 750190474 830743905 987676102 542978418 833029890 326799016 984775077 587752747 894763308 544015426 657135771 235893251 428638787 1321935 664639938 160834124 624004661 149378083 287722125 661564138 755450304 23291306 854579177 375055081 763781297 405533945 598717407 199445581 979030355 133638775 248556648 626449845 684637929 27699759 312347275 262881057 669622427 143268735 680627534 770230848 948174357 286838985 873493700 695057408 977455610 538207555 632006332 684966518 764092257 512045031 892371067 496840375 786907675 24247399 720217692 362302742 641731256 997152284 998971473 315071699 640771878 352577087 895962182 785230520 979339302 445637306 479734268 892265709 898778311 586780778 910617302 220658815 463984060 207611128 699859257 122683500 337531913 232381072 460279550 333031338 714293749 689222525 813977307 570565624 878468299 620535898 873641886 29908914 853843370 678093378 860762120 768466210 957620488 28986120 534987962 375520092 781074607 627029812 703570905 613609204 615573934 344034426 475183285 877706941 932195787 80961315 249238335 535608653 551340405 309037371 400940832 896901941 963148940 261646035 331983053 444561891 539452233 957401457 967315333 600737265 827414795 107368950 408990088 364905591 611359181 900870081 952545776 841095811 862036259 218225047 490273932 792089461 852321067 349093782 578990519 680908180 873744346 884289753 909605604 758135033 850463125 287573278 528677450 630064625 826606527 994908722 999777207 328952394 516950365 849207697 877591101 718573641 817350962 968331552 983803515 337649843 869010937 652238488 790875690 103717523 778257676 803986055 924195388 655635141 982796779 53029258 334181082 71401084 964298190 36449278 944749073 502614320 665011753 869570346 944708113 803119919 881648417 868979899 884295369 508643043 774112282 260801148 315875069 246724216 983596253 96842712 304613544 394134478 435845256 406546644 995422406 333004751 921264639 454733330 972225095 759274802 760955543 392221134 829152877 136832644 418649649 61232129 791862368 514247313 591873482 404048966 711170032 219376599 246432325 443038864 671508430 397946648 805882668 222453545 950231944 994848944 999716826 14341571 160823138 745436560 911765158 206497853 514148980 572921502 792939475 566628694 720826446 716386904 766412796 878196248 975423137 933546586 982904752 594133186 649910811 376885437 793216283 136498725 932354938 231633973 505598090 468815011 766025420 4417731 289322822 974143131 994410317 557600066 572206616 904376989 923390724 995094639 997127646 112489975 789327632 995268312 995299601 470173614 745194445 534248741 963119395 465815203 919931997 219277924 779771629 160252671 713940083 254356625 763660352 947369118 973311149 294835460 427299570 359001000 700328656 756250405 823210691 589009085 916598489 837924356 901878666 793837321 809691521 679187893 921990948 82836758 913461750 406567350 905984719 16168150 471974533 679564205 997174526 891792379 925905577 107389951 702117320 176979653 620133555 872485430 942955369 935885348 976372492 132098352 420599497 472614287 762818325 914707876 971261576 956281444 962696946 816900079 949015315 765784324 865077012 328706539 976809121 665253966 995479902 75501078 796619489 665132335 794074252 454404885 479469281 386239786 933111519 145127664 276757043 153835128 863076393 97850431 700247378 276603353 435728619 469281516 490451289 106522200 507425687 233242315 776465919 356272522 436841575 48845662 379332923 418646482 543596541 419232138 892496986 174601936 495216450 238399743 709191441 227840134 685862855 161600858 290947349 84926629 101653151 997107965 997441402 730123180 937576782 804786988 817338448 391122649 939031900 731808512 755899417 306958132 403526903 985186910 988938743 743086414 844569589 400066630 509347881 62314450 961759596 766370391 963765155 944368930 958976950 987728848 991525522 881706489 990959186 234928404 873325389 197149811 695594250 565180119 590544582 661309488 821097171 572738010 643898933 955923460 960935157 360802807 576208749 134628259 481463005 19317179 57153641 543674883 938437322 438950577 708316495 616540213 786952417 886194872 928839085 766738428 860397227 320133567 916413992 95512437 446742063 740242586 845152000 303821629 649791148 698848183 901220514 897137501 899211563 316015454 667065799 974691208 992312287 577709009 826475808 556600792 776409074 254687722 481618467 413264566 876072922 377818370 828999816 684825793 686087208 478820151 694060900 261308490 300161594 391537748 436437308 796563094 829778906 62963468 139706860 480979219 873131276 871852168 966867860 113979330 960823224 89230385 334878794 547250740 685584541 608095635 678603007 978238340 997356784 203744754 565099237 77277638 691709256 438228788 646334663 241958335 640598903 11126748 386259034 132174287 316560681 999441355 999495726 495765924 830641841 321754422 393845993 240182977 717753597 366295026 931988489 529533281 590987308 786030993 844429293 962415311 964953921 42696729 613926229 495057127 870649729 814615769 877587658 778920315 980610907 952470663 999630028 602360163 790439444 573482329 703222778 631878672 950284687 514005108 523374755 859673291 956136559 580235081 588529116 118864374 708192059 111182057 186596023 152664630 425603013 11790113 231088606 634234556 905255172 725093818 731405678 415410713 705909222 387058749 952161099 322215787 384111800 459496859 595274932 173501181 707291854 973914250 996655233 567004333 631228548 150217910 355094521 919061109 938960780 658577291 921532984 538551725 591494810 241832954 953204009 776295308 951372179 872235576 887709932 887824660 931593026 727305874 729284596 249978079 883071221 612022364 696480525 861885157 950219873 201829811 490220449 132714293 148411363 284776380 382149661 42673406 224409445 45437797 277900711 202096290 875475205 296065114 380222900 279151078 589761201 800063747 852789688 12570831 173445910 109373673 698832373 22114117 569402442 58531813 765584920 243278744 295205062 398336225 845888794 585515347 764700650 444979592 939658195 846704255 982552681 964600763 970510980 974347362 995443983 259188483 864871737 617055294 849916228 730658442 755891051 331507956 644393168 523933107 572679331 668296240 975570740 272570284 599168235 495688920 735120019 815860420 882953015 845880268 932311215 414237321 743133998 473212625 524797864 22597757 291976607 876540355 907730180 85596749 724253171 60074235 954450969 631407994 891115723 388201359 911005857 141170746 625449616 563307886 791541898 313917319 607414064 885249198 991344467 607245172 787594274 730788314 857692311 933439062 953681363 8375562 853425175 807966559 867522361 428983013 786473289 554198115 855954161 224626317 305024353 664347048 818268252 103669126 840990913 682706301 909039230 24318393 513738431 995293774 999860962 701662195 885286520 297863979 573370164 384021436 579181628 158639772 584962269 161613762 744171883 337823963 947303629 90234399 851359435 919080620 930778338 261390474 935090600 769493375 811980777 988231625 998732109 266106208 296785836 986564229 987671217 125299850 546406239 963603370 971229758 336329088 737287613 201726699 902478374 516670655 994714404 964761230 984198988 398942972 975404121 507411841 566542943 390841027 825521768 609393520 825905892 634401095 914133279 529346348 892023598 215802591 440613249 581150630 885737892 466052045 608338401 641823749 824080945 739696997 888988630 561613184 822161628 503492186 977174269 656493407 841088526 427911448 949355277 943709172 987368177 572030523 946389561 925127970 989131977 350199938 937849989 281704176 408204347 225650916 371339381 379869929 953055411 31858019 812603114 770316840 941053891 976173356 984749973 516175498 773128481 403742429 577393441 344607292 965647030 17653548 685560848 97289981 577266979 943450349 984402278 578403193 982045744 716034035 737198360 393906745 688325061 376647631 434610150 811501131 831730203 672943861 849576668 808115080 847113378 514151664 867192025 792160653 856718259 172153511 715096621 282788778 694247035 107458542 377719484 66712835 251844557 883752192 973788917 509526490 536310390 645199589 813896814 950183662 967120620 784546621 924860952 113299097 370068256 272349761 659835764 229526643 818783233 334465566 813504319 409189976 786111138 575443423 642353216 566759477 955013429 596705936 647000796 941616862 956892120 856081997 987560752 822117299 881211141 127661979 461469305 914315300 971986044 525717444 593716399 359004711 860564887 573889281 897634205 194118420 967237695 639039397 807926925 973642173 998597719 323684277 912192476 56036733 893877255 196743925 716738100 199594635 682642706 60939860 373930875 93906951 151183459 672306589 686147117 679167563 824317787 468752544 921402215 503711264 575546621 754911729 949691218 101254909 860028735 427230907 875645815 248705904 986250653 540248481 659671231 34605324 177383936 759479103 769312677 25465622 426289834 273091612 937054112 44236289 766548280 218652189 959912635 337840364 688966724 971180103 984201938 935639423 963581438 849676768 974478665 959880889 970927172 478891110 900167041 973462596 984483536 179649139 779213977 608761890 826233265 698436471 809834842 477419961 574129054 681583307 993408318 503097613 672480767 703708705 783942406 922497487 961098440 56709040 973482381 6918185 621692719 383681695 848971374 824496544 916693712 688323386 822792411 63552293 836752052 19857852 890643697 194771872 443695728 256198770 951124769 659551819 709594489 373647618 880047695 431730160 513737509 451427196 821673366 53739290 105672445 808929678 990884003 874696951 939811792 515065248 697617677 27477574 777627952 760498505 919082242 364807909 756039254 609312030 914241472 220214560 925907568 511162211 580696119 258908506 437119674 120432150 702608568 799621468 866715352 942934120 987215540 490679190 607980149 324912870 957470592 216901001 852086438 478644571 882197379 689235223 968974668 221873004 783913375 455383115 863500101 505561578 883053233 427856051 954217503 394231206 917649432 365545018 845774396 879658670 937526154 925307687 983391990 825845773 987703222 835030880 976396573 301120443 901990494 944699979 971286672 730518690 735046230 894129518 974657493 524095431 827646756 932225053 950938788 279172628 829086063 541406262 982098725 950327499 975986073 627990367 766303057 848728093 855624238 114453711 784018575 644563896 756013102 572805288 621772623 164483551 528887211 544069577 775919046 881101679 926393486 104459052 490036974 105648785 106228642 515712236 651621278 642905858 744378632 451187017 764254734 414019799 620506369 806230046 901180016 740992541 992124333 867690879 900554387 920972991 969076151 628468732 762258250 527206512 915994485 428866826 482318899 509861585 765438206 684004679 747820729 242200719 869260475 129769007 979479794 425479594 838887491 866223935 907987739 148455019 817674912 708139854 865505993 498652069 831482191 525570788 595523658 647083632 821543955 501279663 868552276 863145201 937579772 210265497 844572231 106455606 133245904 967997595 977216886 482437994 870858041 698466245 699665713 968493743 971476468 88398908 139532487 693813828 752620050 789536113 931922241 285592856 484574941 320331675 380877131 762131156 915573682 304421289 328020078 996595272 997228530 113555278 931618563 625211331 694199174 781505811 816230270 955233234 969991303 880779143 920104197 61297474 550670180 856292688 962585338 271415978 548281498 38171708 712338508 955057358 997395793 577338108 976449785 990915147 998399840 788080627 801103647 213767679 863507041 307325178 683135768 943579848 984775898 334414848 746874722 602852905 834606226 614973497 656675844 2902392 367482668 864048572 930858308 465932285 872821802 557510770 829095842 510266991 958193163 476308365 722346219 836009188 973991515 170837814 223401596 74275217 216140609 588557843 764846950 317133305 840040999 234607260 326990534 641374585 664076592 456353376 530945919 989403633 999987776 78680427 984903041 50973906 601061888 691264110 785381162 969583548 982343876 619804027 745488430 749790130 889402124 348987008 471679853 158604066 200640364 480453066 621985392 491933184 642520853 561925192 605016596 727218241 766365826 958222313 994776751 480665865 910183658 91179269 392388954 266278848 839119841 258410921 991632603 377650623 531644505 257728575 873671308 158916037 445614411 436310767 868764898 31773414 67270483 698732674 985543990 239225866 715218663 782951846 943074811 644476661 947210210 722673044 897507359 546112557 627627121 408715732 882734801 851698575 964895773 660447376 787526131 953123022 965072504 906252439 970763683 890014758 955987040 950758423 965775355 346833337 941391608 748764388 816260468 98572871 809440603 595738851 924326675 112001658 290117837 421307497 715474246 602045283 970253467 998527361 999720456 881038999 980842964 221156990 715845550 763990913 783373838 526281662 989218950 966092144 993473765 565762803 591543274 731506766 888972357 144911644 497530460 301243295 810539247 54152944 926327418 70120218 344741618 156198752 792507177 784786587 941778161 828928576 868466126 133020001 916582295 700601819 851094233 821942409 874390372 147754390 893965463 793823315 996052763 230508969 250747141 901297668 967654226 225161569 965486708 411712984 681408264 666180340 975488062 466420914 652584160 138723444 767719779 952766611 990262054 515670700 745021130 210424885 697088798 848811755 973616334 198647779 965510541 761427540 934160919 203347652 862572990 663306017 714538594 384187145 675779756 617397921 730626949 846434749 998887032 910840320 923184672 867274346 878430978 552449782 843342723 269453960 308602353 685244561 788785001 188177753 489252832 941339422 975876752 512191787 888300633 551160305 715263115 293392512 635396705 190580607 402365860 523751459 937429654 990697003 999518611 444905726 663256756 260054418 642887888 963451161 980155065 733239822 953511236 401052527 917487341 62229703 332948084 703624644 789604926 777483498 849079898 479000710 950393564 79100878 844736369 508984814 715929559 43814974 794030843 947789051 970683995 337798196 740127069 791415960 807111060 175608743 945146117 436582381 683482115 792757934 965395025 397056930 852727493 893531741 943792322 223735302 860273037 277436400 460223236 786415374 967736882 815388421 904009852 436943713 781222615 828816928 861107962 650138480 732689342 277710203 931475684 11770028 300482399 542553747 715045727 79846737 445152761 960238769 961477992 605230422 746257228 20783826 221440660 897216322 998405968 169147698 358365424 378270533 502059435 424578722 817505261 126223808 372387339 125712545 234945638 778972081 791148060 960252377 994791700 546114739 783406280 515072201 889856972 878698193 939382418 549711491 694999243 396740100 726514605 543812588 545916203 999564560 999922070 466404913 933695663 539617317 547065748 496249594 883946905 289943875 628653489 990638498 991920191 398993251 634426011 558761082 718733282 881338980 963050108 308543615 324358912 732291387 892668132 188968214 435884117 796931136 830385663 149558446 330826469 255970707 909370711 107698832 612318663 845315157 950801610 209005122 878497443 149919226 874562412 768026116 880052649 420752232 626974279 989444954 994210048 193120287 886434828 348295756 893368233 528607824 869545073 879450880 897745555 386757044 878256030 714774777 846389416 101103503 752765451 227834978 256358703 175981255 942682612 86212530 302478911 30433147 61083399 557073841 785843802 279474 197439929 275940214 777338204 666380675 974315161 144762395 382040073 128119458 504509936 510754178 984008839 328396073 712096324 30336283 665485735 93214952 406312535 609630082 721965781 91844471 803709278 966778895 984561381 876339362 946112502 692584286 759101602 802771598 808892033 866480714 981388417 798138684 859600318 935525908 962600718 571536383 695250153 798788222 935299800 838078164 846913720 563934782 746101686 900794867 942915407 92052724 650511332 926169035 935456807 275727037 947197045 630533374 688009728 769769364 885373606 272418710 714620716 498297156 876387270 812172446 960355298 51167178 729304913 581506344 984044710 234374988 321203745 492952439 665947405 378125599 447281679 657167088 966442651 8828959 781755120 62395013 628957256 206478405 298197408 188439811 911122265 612501211 895475527 27679389 224432934 427081576 468572249 979494610 992800695 178764859 629242408 333964843 991494515 31817881 127690547 934822751 951453165 64932722 205996060 694530632 748724536 792677735 800374381 815735950 843429644 559748895 818834890 297637706 514957747 39882495 306489712 875821918 980056985 50993894 669129965 467790409 721862174 788090399 927483388 697465827 881014048 383560515 644120164 25617071 548360268 466498478 594276713 455088206 958569268 808879442 975783220 328830168 539129551 393109592 765122069 1425157 726186833 42817972 315290459 325672291 916237034 741338217 895235011 566751214 961423026 809994328 871703855 700677535 808411617 256173320 684736568 924027718 993358445 836038047 912522543 85293502 132699655 796058530 823683598 6402449 185830570 252272038 953982330 318002063 743898913 901646960 958766600 696690703 772716645 14002974 963911095 631318663 868704668 510784917 914962518 531910742 881029208 903778781 958966781 784159153 847946328 461676244 516767484 922590206 997664172 197514978 614094334 197151182 226965417 579604897 914759558 182213256 311460459 801766569 839209287 742703892 922146563 569653882 739486145 137742391 560298292 411246096 783631992 832756517 854621299 372520250 805557891 237769694 413266559 15300589 749136433 359537881 400725443 27825012 799164165 500553126 591300166 124317071 985931525 879661961 979346718 564495480 728435550 358934310 570216846 578717888 991270546 672765511 812779684 959385519 987624684 270094125 345938564 979397535 982648878 256953311 337646395 276314312 582501368 556571279 819263534 114967840 244732743 412346323 768537027 902538237 986598932 469910210 966285055 668328574 880700270 679355727 849045499 904774135 992149283 534283989 838729153 509773467 571496247 304736115 747974683 166677941 474030271 413557498 736262856 864723419 978343188 492531987 867576101 805734545 929489190 369356940 989449346 687954642 842132770 604832018 915549212 208983225 552797007 502187935 816695736 26461188 429893000 935110741 949755275 550970631 949885980 566577818 803637317 70976173 190619852 624213782 773841497 798102677 967826436 329774928 601742091 234642450 393150739 431590815 834272063 848817603 890265121 585952296 660102481 356564792 846602090 756822732 823491914 213709295 777881784 416600716 660060418 869611140 947155659 994733435 994768854 850123189 977886975 122353441 671664207 268879807 779525542 987859955 992552618 120895563 780320620 16753525 455560763 308599850 522263305 733166738 860018964 176402099 978185030 292788544 782293161 307882296 666079246 689886506 858243921 578259620 759839633 225774347 998754658 258676497 889878688 667770852 741869137 332690487 772136711 847252279 992655295 75422939 238898058 409438561 486244977 94075428 708346230 143123530 250425868 323756797 594462670 863153614 923869149 674024628 863621910 521791821 807919989 775540305 841433937 645123862 650675080 464437978 760098211 984055736 990514807 972977864 977620888 838554452 961127500 361792206 610698636 321616580 933532981 43956354 999200442 61664970 248846652 221570637 460164006 837103834 913977715 540932443 785948600 952275561 988511722 566398438 642004011 2823754 984597658 49964138 252476921 881605022 973191398 89927163 550872054 129752716 944553283 889274995 920728202 507765313 751467743 688599575 892880420 357017117 869770603 102539232 871215129 416570780 668753844 391991653 566704806 662124387 854323323 142488811 495364810 268007382 715224522 689523750 872510029 335417900 644334537 861678516 941295623 318366955 461493002 782427530 922106627 216822765 869658934 946960059 998189460 41485766 653337385 192249086 816413241 213591332 855675486 945795294 993775696 435302290 659988609 919624489 960350394 14100023 676933884 672165192 978674262 929654868 935548431 366247689 467991630 586705003 809149065 803315639 927222352 333233001 370100488 458089318 530035606 62646247 711962515 61071564 237537753 526172560 987244932 769408765 928390739 692588956 708164616 657056211 971524607 592970224 603809459 304919196 342520925 134190031 490385467 452685599 559302225 407079622 868718211 46470530 812633392 912814871 953788289 895989117 935951199 482109220 801925217 732570346 836433742 564789857 958406439 279367215 300819166 477976520 915250767 555637089 660207951 748955597 797870228 49134638 936553537 757685682 933884125 320612858 990882257 825640101 897954114 18636179 210554724 50870866 653566043 932093016 977706996 441309701 630269350 1031805 387751690 178917813 533829153 323118524 590787992 370464013 565594766 766884889 971268675 842972120 965143418 800551410 915792362 502956908 517358729 60736151 485775656 443654277 642182379 699372290 713973801 329628280 792584783 151366197 821302143 891275049 939765012 114754402 320639281 908796113 934689436 176271191 444824200 47535874 800580076 593522519 735775971 342097339 535311484 257276311 875691058 628019579 701417379 232967371 894651016 707831598 996894417 819535746 955690838 379457124 752675195 238817519 967974033 563825783 951369042 376667297 598677819 469572915 954549668 552971091 924190653 303210731 763960910 319313312 742965804 742684299 782971385 173191109 788129047 139710434 658851024 477495716 593716989 946016740 952576648 407789339 988599017 57199278 764972276 46754828 125652198 263730674 466421346 332443464 372906670 726740735 817994641 599160588 928563840 665391342 866423943 369429894 859508972 295130766 781594158 880002089 944989498 913584549 921424105 153293257 972878102 278620088 342602706 189775424 288872491 292707948 383235930 233739868 821688066 762952387 792180891 361009122 395802423 880288055 948634273 221737825 737429715 145132389 334965436 380152706 673648041 584026153 843875854 371683852 969578007 434735895 532116552 201735078 854652993 383508593 733404164 655786055 781228540 745870542 774719339 392379426 414805453 746668897 761342088 490612715 507786506 43693905 763931949 706496715 955231557 611224678 695970323 24814216 288742501 79154224 243632095 464168161 621719505 646694972 932523271 64021192 202285465 408883144 833642070 591682577 598634094 610256180 788246906 782780831 797609383 606205451 747168005 485051629 679597552 737895099 864669685 330712318 432790192 953823242 969987831 127161700 524483933 422668412 478302409 552973712 712000964 863101210 994551930 673367218 686679751 91980529 824838175 527661379 825895603 603107258 881798281 759324906 839703583 940653995 984422747 870783802 983647127 870707299 919820955 9651511 350598630 919909945 964114785 654341219 909258817 863680335 964432806 821975275 862513449 954059311 969135961 800848531 850735255 900033244 957509726 436961121 674567061 891126330 948391615 29832826 515004647 108652366 119210113 48953100 941342682 958617260 967741943 280603337 372394985 194603338 400031050 185950222 288333793 931175635 980638647 815934498 835423331 669041992 842148133 20350203 523457843 875593331 923428733 375177113 426655448 450750299 810811111 663010092 988300104 568189162 610781141 872291999 997298773 69798482 565309317 611969146 882958621 423137654 825212148 221871951 746779189 978323920 997149665 721189816 932295021 747366003 993636864 951575005 989822236 834018175 871772955 586982338 892654656 687972306 928409932 979905509 990286169 139466825 909637613 150176748 278078760 538400697 574515239 770476268 801285798 128513117 864929932 739563268 824484259 490779866 791441453 244366742 300192942 893672710 988360547 822649910 873671315 165010138 675195970 471588331 709079261 936410904 985619955 310125743 613464699 541102843 874300780 804814187 879252912 231149659 318131208 947567787 989960300 222476049 362591199 559609731 752534985 108665306 798649965 162781422 394699278 391546464 589995667 534162779 957092424 474133432 781875295 871008891 939815775 664373094 782347705 836269073 936587012 540992045 725934377 702078807 956453995 514386406 762670807 788854008 980834207 367347776 582036564 371323160 608946929 901540708 916657944 538270197 930837005 51531552 489681789 518031838 548698755 965848315 986760749 479530383 642029136 878718003 927438352 81010699 909847723 360666572 723848726 601591349 905809306 687723188 704975937 801178640 977313068 781676272 941708560 757228207 966216289 472352032 703856125 571643 959745426 916725741 988488116 794321798 882477290 487469771 893335268 167587478 705291308 180277189 232508041 168264 232939783 172239830 826135330 500854616 758367092 480792490 497389716 426677149 702731237 880677919 957187335 512331876 735592153 554256661 786538935 953531935 959247943 746743233 845728566 32136002 277359840 308024489 807825426 780000495 805788102 826316527 989317874 15025344 790848298 967372689 991606753 119809293 836435629 613677664 928681033 805710701 813749039 520525920 608457136 636820338 720662522 984435167 990507981 998581446 999096232 824472002 998791466 876678579 985157619 741800522 744428007 286148758 665816117 900189137 944262729 433690447 675578931 414107459 709493324 58149863 59904740 250426938 951291273 617083477 938640906 276633178 472327984 806325406 921204290 908912642 964588262 605547005 898636671 101136257 171216032 622133044 746197486 438402758 986569085 433871325 695305627 82490113 928184540 433666809 814144622 648199379 761525490 17309269 860527497 608080890 721598940 965608988 989286085 442581004 846587370 102644489 836537002 678518570 792599581 693178849 845487526 486157514 704320547 683407847 735589755 567591765 978400701 986529793 997644378 152972392 589201001 764177944 929727480 988469128 998232036 918983420 967323841 131171416 389052280 500659334 563512236 125715257 223664935 96227276 620440551 576049250 988605472 252843751 836028772 455288515 504705838 772496327 899047415 417364506 553396367 54617626 894089168 68302790 446714365 961006281 990036622 859895504 919074479 141898412 780834976 14643356 529240198 468510479 597249250 291311579 314973825 66700539 620315720 516447012 838395993 817995135 875324210 175504500 865805872 670549852 880336005 713170320 894310815 508429761 949424444 239269354 309892938 599580629 835050956 342980995 962440668 22169597 617912559 218466226 406494685 369476632 965232765 673518564 933521155 438084994 672496860 536640813 590111281 166882357 828432398 469835714 906341545 522349742 992898559 984110314 985319510 268909657 812199826 937919154 986046896 880289864 937749126 96568779 728077963 471429857 536274934 9938624 80994446 197325901 636942532 281570404 786623600 122798410 998937556 367725645 515962686 274696224 577442580 880227266 967319916 162703483 672217430 216304393 983113617 592793862 930456411 934485588 988778469 361545346 846092036 957044324 979931060 457746999 515109512 875958617 943114506 60585327 163268916 717021456 748073936 26410141 129631466 754755232 951161732 246164279 590013242 948110714 982118233 733884319 892169088 917754534 945992112 893244465 964298835 952929763 983031397 848333945 867469086 503355791 948205630 825382977 836931088 119030782 862348618 796621629 807779545 680633291 921017451 690420614 886276280 661071521 901330178 472620233 630149640 611434421 963676263 495163524 509593120 123949646 681737102 739127064 805716600 341696254 986420261 304214278 863790974 267568527 982505561 770147307 799526736 593196663 719024722 701671456 946767868 479639920 524511446 494029669 808558553 595594806 647573076 705602715 862801867 591538581 818226853 846497801 995234960 458774144 868362111 709168359 999800426 317841796 382592903 997903423 999150425 648400015 658733104 312222463 460234145 379760321 389217786 735990655 741958970 561452588 967372848 204743353 519621260 290175582 392022937 707670738 799946987 812228646 978365015 317494708 617624493 489209794 720707980 664272934 870767378 973593065 987683840 481198834 529578928 526086505 684725612 553243061 648791939 927628632 981862819 717121990 980137941 374173867 870647103 965998673 998225128 897599331 968690984 600206332 781991256 953980298 973320430 912719224 960861588 278685282 691224749 24477971 580295287 554516613 968842648 184414839 808031453 302620175 895261328 210476204 440807679 902275379 952244105 167845217 943104529 473805078 684575502 416888711 484703203 99203858 515187957 218907541 335269147 490280905 850744565 104911508 959427179 418736397 665287440 893392629 963896337 573810279 842765632 743817067 812274766 47943579 906024431 747627986 780037987 384466263 494656603 328996153 842330209 570741504 647855343 331091923 536804136 989424028 992816014 480916964 865375506 348330950 977701123 136268301 830149220 333662545 761720007 219404842 413575565 360147756 857334227 438527200 696323270 606569200 650637610 792276049 854880936 430797625 845555760 176822767 620225199 356565876 637144570 706678639 784603867 578696211 718437308 963123582 983167357 823072093 854980855 772033931 826690549 268284859 322996079 397574998 434413941 737673488 880011140 330184991 339026723 445862095 626091579 724135875 988289187 815245645 825808002 552805605 776256530 346367401 817919804 617970053 639059507 979535992 985651442 418119580 638456331 500207784 852247242 863312143 918749498 547191245 612743840 65235849 789472715 62312750 741415900 484052376 964495024 918336694 941676242 33235175 464675152 892523902 917239621 919349120 921512115 523919311 837142651 424106398 488475909 911230324 915150294 772065556 850114334 717170089 754245006 989219196 997353979 633729854 833961768 575699990 881146702 47830396 449690137 762640040 794978991 76878319 264756013 109005699 887673990 168878165 624947739 901548660 909160908 886853084 952073094 288857701 637395367 901375404 915811413 340879164 810731951 831370543 842521571 882913824 928854100 46583953 237761559 710645835 928513364 460963499 591867650 41142283 282491055 308444503 733893200 59383777 197472850 998157270 999347374 548561865 601728919 940138177 964100395 262162960 748730523 645484661 786263866 506702020 762732609 532458843 702209908 538386777 850518069 854085696 894687532 576995337 971381037 924855806 985740945 423621183 893811017 541272400 849676540 244503406 687835198 567624786 748708348 743821615 850404443 178909874 625603458 804498582 981417287 417200341 741994755 130274410 963650772 888284355 997410672 930949111 976212931 121579380 930065790 724422944 960270502 682886919 879506256 412867976 444867847 108404980 783068701 414549215 824933496 975417831 977614824 100900030 343708064 680682130 811233478 292033750 641010654 343413408 718890374 473035978 745220663 69849407 551412240 630743050 756709504 117966689 641645607 811865193 874649476 713370318 895957740 17482255 502495774 904528419 937186639 390411299 916750096 582087604 744356064 231835761 417107943 566843625 936371785 567789984 920561987 989616093 995241953 211878185 583242316 194362078 836546702 496161593 756082689 730656295 832854002 400949844 505506052 405543050 477746259 644239074 816785311 59191927 440556682 236521746 828205061 779593142 836001149 281848308 628523090 921964295 949680734 462046316 571710644 855291021 899435862 432349806 810302124 224881341 889283162 973173895 988142661 382793316 756396642 595475471 704456676 105637982 883700154 529000041 603111076 13273014 760172487 839308287 860244904 843209700 867293491 842437155 909906986 415032797 802748029 94555423 423942925 415101096 970441754 263475908 499275110 255605948 546045360 548553845 701373516 833071702 979543250 682678008 995002212 446835423 656686126 561650897 594415223 650312989 854175106 716979225 764209836 987120232 997073639 800488439 886978332 323870695 774600085 679670278 985932451 77052817 436317822 727000858 915115960 468467169 845009294 986289493 992477437 602790436 800730879 507883598 904013596 806781345 892367358 118133455 244853832 507890745 538138772 399116737 940239747 946622329 976083541 47224262 627177440 43581528 576906251 362325906 411342864 356508956 477235301 5633806 20610589 922622541 957115227 261117399 728902457 112056552 587502918 153129557 183703291 83255403 603166452 684800653 950815066 603556485 835532035 260626742 947254332 774142623 995642072 441299704 848726778 29625986 446351469 516749515 530485930 522141874 717759771 254113186 423888598 958972353 975418040 825693690 889124657 55728507 476954316 960674984 995902874 854516392 951434027 590015151 605527068 360606359 579130036 14106255 583670907 358937808 941717202 542321219 935679900 565731014 978516876 7072552 770849859 139716994 334456090 718071002 974947373 843352259 846303184 594619973 910406667 218078291 428270021 956687357 984336529 12442125 282428524 60681633 504466079 202386905 302410314 747642909 799593770 878881635 960114614 959398848 987860347 524462441 829512317 85513571 902456265 238853458 901979536 589398449 858543921 314740277 954768259 449992767 534980636 617848133 857824425 859182078 866850231 18069608 546945212 587219171 790649239 54300029 903063821 263231649 463193263 828570888 845349131 527267080 994458467 974141688 985777613 640249631 661911927 713902036 854266956 220962571 459660230 254128048 910310407 106260989 817086145 573858654 850363364 972890685 980233157 134826891 361742005 797849000 857279036 994710947 999126553 776381708 945542942 773456219 792558749 868490759 982213789 220396175 813704766 302850775 575893728 654325054 736397060 772951424 964703982 476560652 966046256 209269957 980562530 140909374 425560836 740837681 776522968 605230120 870283241 441621855 763737154 917383559 933432364 208883563 815122018 268481734 392053446 200661884 486062638 504195992 829199479 79124647 849779317 179519661 958902650 323980327 892886315 819255731 891152256 448404364 773587164 267469324 912322579 379941069 465045569 450611391 976272784 36815260 933739924 543833428 653772702 121181019 649556175 239613821 582439267 589624359 720420440 242667314 852722774 213207032 420052566 17320530 961375044 970446221 977041729 380091914 612861394 665928352 832864328 713099379 765482344 424233140 427360788 388400259 656600439 867279070 930481738 854162434 941840662 784732764 887898176 648626382 907726397 249384107 493438982 997900481 999082737 21998367 30554705 39666229 954664127 990213963 998918531 320835545 603588381 603163832 714166739 185122963 563655643 591951775 940123555 491709596 958428287 806310595 913858836 532509271 864598306 43976542 659364211 406638558 980015953 85873533 544354945 375318728 649417162 927129079 933160391 346642758 633739077 538589651 793271000 7033770 123705390 522880637 814509013 505391582 807314952 616324768 829342396 98489555 595688143 254347837 295322331 54140871 303418765 663371285 997433022 324863667 971694364 192349971 253678519 45852119 826613732 814551512 887981059 256652715 379861834 394311454 564264727 504668375 979130173 474995014 654550527 431866413 757525027 124050522 763865197 390898983 434219240 897870973 968504058 697295364 741258026 21614956 958833843 925879683 993587587 835834892 873037126 923732127 994373251 813705062 876360056 729815761 826462678 820428033 907823287 97256937 271945573 701795638 819680906 90019592 201249511 365809629 545060114 761296969 827177563 161538079 423996195 550285535 608638578 830752247 883879694 877320456 901479684 278758076 959104237 613239173 697538613 782914769 909510214 45723417 698324317 9540019 122292575 603626008 985186086 896267759 970751969 178922273 528386305 361016765 479046177 635266769 900238243 146515128 583671149 359686683 460112598 732403283 882660708 767642338 887174896 630088381 912359099 609769717 659561523 172170491 937410647 295294782 952681731 256265461 748506144 156578899 508777356 131583048 513670024 517448939 652625554 469805866 805586831 284483749 634908192 107260083 981108198 559797941 738691473 603801410 736506919 694222728 867984991 423225894 445211915 380677865 573852206 873485026 973442777 603526556 829502169 142026362 994857862 590813891 707029483 918503553 947872675 590772721 706466616 385611352 892412339 127955615 267139411 115457621 993854795 78359871 829581850 320242578 807883374 481020666 626263836 701892148 808489051 453907779 638050968 103187372 219663791 659831964 713055382 156673971 743528975 567388408 975891261 836996440 953202572 219431329 587531593 493201133 880054075 991658659 997071394 952754578 990166784 230041938 548003080 914957102 948512800 734332647 975265422 463248701 556233474 191078997 333549283 960113857 961837382 422688846 615604236 25371401 934747034 29869001 442303413 292016320 868462070 262186964 398993706 678003167 717825205 200165618 418268681 965831835 978804334 322686970 700295901 125967314 572212468 384208711 468012322 517694344 858253519 292419394 628823131 227152704 356811477 924986717 982384793 268964738 581173377 647122851 674419826 175316498 643193692 729880033 930482279 30036569 524692818 925659108 970453804 180545714 406340962 149416969 157431863 634462630 960498045 351485963 737706071 970416348 981837537 504399494 897697362 262381989 749897657 732246537 789824064 357259578 828097807 473972428 949524204 633107338 837307777 921806050 998915498 209236289 363039549 364660744 667268918 332345491 622941125 259222945 718484326 331425313 979324607 26161665 671821749 6508579 858821182 227187802 452194906 548094990 697245240 208923066 712855121 526265075 653054790 725890878 815964621 929410318 990566026 340888891 558275490 182678589 463769642 810961402 944857629 453679811 823419334 266967091 718244243 666453009 972080189 200412523 839471697 856831746 936791563 943959295 952723118 518182276 867721232 248352948 908198031 720576707 995678453 268279207 980807106 840835295 935992087 768243659 959151544 209985615 275428951 169920578 308939893 8563505 586940325 100720248 221620954 960943114 962542897 172164469 895771574 319850862 906209490 56836354 697145339 758982856 891921636 721345377 984915799 484626170 532883481 21742467 304503654 193048559 362752714 762087554 821037492 56763162 183167735 172551349 927545424 262870556 707450335 742935953 956103826 573099824 727306599 957861152 983280750 315654119 696441211 106909975 528516957 749809443 841885579 796404525 978166919 840956712 972236132 448489334 839910141 58312694 168493608 456027474 613035621 352811240 937334220 623435909 992805632 623756596 654090123 201802056 414747817 887310549 992910459 596730837 993939217 652770585 871234480 709405700 970827294 127480461 132998504 480388031 771838247 881551057 924470693 70441972 239464946 865536309 889962640 786443527 926197778 826870338 872048792 438010085 837815102 369047819 376668690 957174908 989000156 162148037 966602880 407103856 926765564 172624437 861581007 651757667 813338236 445574339 684437125 574364499 662022201 615522210 856331251 690671855 883453162 897632270 941920722 323292614 893298754 872193800 954264448 274006914 503837188 673425048 847640728 696724410 795898240 495386418 943651388 919545516 925961035 139908086 320780869 938322298 972354713 294551438 330287289 731736868 858143234 489857984 495639172 843100881 961603336 647079084 929081529 841414779 912242327 260314227 338477291 481179303 532862368 545254848 750922683 339802675 986625495 506223427 977698074 665938698 791159732 11518218 588890912 378480464 559789708 336892037 536883891 101773815 146072485 726142080 908553599 963856936 983243056 543223184 640622211 585827258 913246144 485125420 741060878 377569894 848487102 767341667 802539793 991547310 996390921 478999869 847200544 494880064 980045335 712178882 731903986 727562272 729618136 485337918 719743580 713765701 815649296 61511108 790086649 469627807 485869745 241480860 337119522 430581976 892933832 899628457 995461301 86827047 627799724 945134864 986716669 681501716 950525809 215076463 766821120 526834438 972531460 272539348 663490610 386638826 516470218 961331577 984355698 313290514 997696362 320856774 664968573 746671130 756356152 817624238 965790191 761392761 822302433 756892984 931078578 758468266 801651796 130248184 241760237 961531356 975586762 273166276 313243439 613710497 677814921 75965190 606082073 936149989 985427344 116542905 575005621 463698016 658538621 161806620 231075823 635353862 653636626 766913280 879292317 570992898 639133153 261387058 940034351 55384474 246798201 256249722 712325571 572920203 798993327 214961227 726357227 954225030 986670722 411528246 991825645 402327882 718084741 376109367 547917991 991299583 993504259 918171126 942490160 334214958 930856898 725066439 856917038 164028504 265782405 132698723 314411910 87991034 268433317 575831029 578634929 947633516 957467671 105116699 353097761 803614547 814499027 468999261 801436010 856140735 918580380 823022901 831097264 659894049 863366086 611488912 984018301 176755311 997600925 904346214 953422010 754879867 900362848 972757303 997826312 936152116 939382730 231947261 793504799 299265602 805796493 171564582 662839905 288533710 531952404 509955069 857627275 609511018 758357218 979955997 987198115 689974846 940468349 912901516 917085894 83451193 913657727 854120612 911080964 674046276 716242957 306140117 476008430 921915856 943462309 140370029 945670096 747214097 942635546 801973360 903881020 352721230 983986210 946651862 959730857 81085450 850349763 658886501 965324222 983623607 987502770 852972887 906588620 952082727 965909741 628585881 731909212 195430094 899495982 474534833 885042715 440127073 767308051 574396618 954779543 592378098 821736021 954725663 964956459 808564013 914307082 589081548 803192921 491735168 711477744 278678118 349022914 90637894 201242285 935105902 948083554 594896202 832776368 491109589 528943866 905273544 987260943 194559286 395214447 558143905 881230143 385242185 744024173 537006727 967016458 86018830 245206150 793627231 964245820 996625724 999187350 859896923 879081823 982610003 986147823 805210568 896016106 888809991 927326345 13993268 328442392 292429380 969011969 982225053 997007649 790997264 827893788 419284676 949270529 150362140 174529691 360100136 455896675 660884400 894605455 100320272 852822151 674649649 801903795 379556430 851192529 597560578 833498480 234823257 262945395 447451548 611709420 558890313 909905893 39657315 646686990 331446849 553397933 944761497 949318811 977814809 986471764 779231880 910745859 91353135 482559958 391332165 514445163 31719672 356667749 455061027 751246761 301458851 990043358 220402433 838435156 354763643 501802277 58305577 365732205 365080530 761076148 335108436 998764881 899489685 980869144 328716697 772559185 35892121 549799049 471989379 778649375 531432475 995321672 781901712 976176521 368477224 931979710 176699332 459079408 625306348 769392311 947803183 974709566 964344980 994841753 299656475 466627084 516443929 537644517 933255503 943670587 731955075 959718075 42930361 194865969 233572241 599600906 698454127 825438043 47873673 687105125 432762917 779027865 519610174 983306984 873467741 996737336 722666469 823998792 246339669 931641608 423114186 842069790 476217349 859264457 937970725 968438229 340584649 958936952 67917696 764009878 918945589 933700875 578158898 983562242 202704444 701945601 786703209 862170984 185448051 217054656 688392805 891166487 387372564 446809195 295128770 852249640 151633269 241989088 757328121 971054878 302031248 842369895 25049496 993551491 296211588 871946101 221749461 813190669 903996051 983917851 295305824 785168254 498143347 930392706 458545668 837281933 161695969 766947515 689003505 877879440 352853986 563954727 884733734 962470283 301118698 566709800 747483911 843568864 553264096 721070319 622393863 706278930 475906009 500265329 625337854 877293150 817890201 950299653 792970328 948750780 542826966 584020036 537225529 546039233 817069967 944756596 751738780 753738608 595089930 618531077 145784347 560842189 861223922 962384354 653209582 857048400 916774588 951565911 52840138 741087180 954937902 999996541 354139954 876612518 369401622 423360967 61462213 964607992 170219262 727689238 265829208 337968200 590057427 868567511 747140230 926971979 131892888 179775208 185673372 679976531 547576153 582227661 220796762 752212525 569513784 640963563 963775835 992462379 670279714 861226904 783019478 957162206 253918423 480058467 289738328 630680982 983184440 989138174 902662915 918174400 133522168 144833077 843345942 886168123 449711869 599568565 650528157 716839128 990882467 995449979 119873061 756973850 862039784 983342769 697932713 712189100 711148031 747115989 332219581 440907692 348349246 441526253 393290005 574818427 881009897 993986294 801118395 995898936 629199767 826023564 202492493 928692032 539460128 866805086 350621221 495193422 259359060 621183579 737076273 987998423 236534436 762894547 322453477 947657203 794468146 979430154 332267524 631476688 506846991 966107412 90735228 257727009 9890180 127139920 816479946 974660197 212946652 919751029 837800402 970877140 816450856 929835501 239349457 909699207 678484807 702057591 825924922 956130711 993833508 995315946 491018220 749929044 717583153 805897758 193829025 604017479 490503388 790193295 676044936 999534531 526172434 608280737 792939713 915893893 711045509 859101199 407158911 833272155 362149335 858282606 85639118 239500069 144177123 197100005 327246675 461133586 60353019 811978706 618595512 870495094 918720878 929602935 841365963 900143813 771231792 853975870 782217638 947625199 22133676 118810649 655156900 903548970 703529766 792425796 129147050 351292376 461515548 778370725 639034626 980152724 691061504 782236983 255612092 979209322 2772933 899278681 353463406 633763971 802726313 954940421 139818784 186676505 716861457 950610182 440967853 662846118 686302183 909585788 666745017 773098252 950025332 973479996 525125071 975010500 219876442 467730467 255979209 820041793 191507699 579681178 236859125 909734533 740923566 903257282 768426856 933592946 235492344 880524047 874395527 893475847 443857956 591416627 635756182 803657290 823634138 852829968 640845598 779365711 953077403 972407388 928723807 983731498 6608276 390041123 735496766 985234631 38920457 898349145 485892612 560989689 361147456 948766153 981846496 994056764 832873345 924335229 594985600 931705444 869644387 984480669 449721297 721614631 186716891 257251174 263692980 960727123 868219349 871561004 947500938 989969491 557032292 672632313 479727015 814224473 443920716 742906509 899364731 949232692 314784399 325734833 219465130 262547311 132856652 715820003 552027108 788679891 143555831 853361029 533358348 712908740 362188661 560712376 771294064 839557034 677370414 737160263 80142701 570288500 725971095 896402111 967504262 995029174 407693525 996410497 645236975 750282155 117135682 129564623 659009809 754583322 899720103 930756700 790717413 923995885 879721530 960749684 459236259 849533570 20485611 213461033 953698558 983303179 437488429 908227255 308667750 561255774 625897397 752058342 725581257 822671854 686219837 869564497 966580082 972553503 17827197 328048586 21459069 772826148 791674858 893524523 124025722 400120253 356560335 796645309 55392294 631628996 564984215 963857074 494893185 654689405 834574615 893988409 284519095 664346300 100236359 790590154 360414212 885143112 154844575 237689112 75916602 180921493 759530084 968822824 334297099 678031232 242331232 669597183 941188864 998066990 23895032 610033351 714214592 762344115 113437217 410983329 78529418 360822501 589133428 803435262 15447515 408596358 537848557 853259081 308240909 881189535 120783537 934465790 943639962 983162902 742650298 770518700 846932308 892971208 212767179 622544925 505784234 828839389 563997590 719284068 211866792 599686092 419446512 847551089 396836635 426972851 164481621 996897069 690802212 739176876 701470517 799175170 519539174 828256151 240249551 733232127 936080729 984336149 851296400 883434537 615849061 740347684 914196169 993457903 486107019 980927793 459132365 761235183 22186719 31343031 913211934 961405600 794338453 974588544 307443739 916850291 775532404 779887153 649669563 736880237 459297739 564514565 290177996 952227234 246337758 788601905 811071310 913157541 113505488 310251049 693481967 870860523 735671539 817848645 337054484 351163732 814927 399035311 614371283 932872102 115532254 382328487 398014120 525851784 691404969 816199050 291528461 454656021 597272073 903489727 109472672 854762116 773575695 851396324 532797946 550566827 247524176 721261387 637263828 802109441 722345571 838958099 270091061 816227331 638609787 815760040 74601274 590952072 492884797 969536868 407635711 436673315 235964762 883955526 823245165 998449030 309126076 803662970 973142703 984144643 290791060 812318183 592729823 945342750 100186902 269414677 449461246 474650696 659797048 849446580 439516539 738514013 489019119 861620404 702446237 849093368 979142770 980389494 152753443 567979763 419877279 785661919 243480479 653857357 832792221 876130112 591629029 968294238 7289556 185311833 765091929 875614695 953201251 989356134 725687052 743155553 878549746 925934545 698659389 766647912 950982028 989640662 755812277 968810980 279592001 353310609 243929699 341611940 592327257 928817984 596152206 994722375 138411190 694290551 726321513 743858119 138061756 986462874 387145747 949292109 387685600 981688531 77629362 975524087 210776422 870576482 163395131 897796444 581167262 785477071 296410649 562557063 470049522 525846907 182062064 214889408 4169965 272288640 438956513 453880957 386824698 726200021 613141045 770197517 290280340 672210416 56992805 146874361 291668129 464020401 269101820 465784717 662863450 971973562 836154761 919320956 184145860 828805816 510940474 796780864 232706741 645498208 254238012 638804379 706755254 939235911 182360773 473767262 400246944 840222368 365586712 938983493 367559961 434824516 382963827 477939333 291948043 902264194 924148214 972198710 843014037 994549501 41078380 725751284 356361369 411164290 704973142 714549338 404992621 690266674 748539980 971546054 92673501 105927060 897323526 967734206 929455614 950001619 626124149 910545355 136614168 940638214 355579411 801171401 883549628 925888917 482945961 894166481 722237713 940540513 617870091 863787096 265361254 617684606 845832992 904922636 267970090 810510175 483282491 593387741 467983459 659490806 780237557 835460265 63508470 786856233 587802644 984483235 433594150 684591507 287916485 550646819 215307616 634924487 380419127 498971257 121127849 898774010 247622037 340784527 614401684 819442549 108898987 238033042 729672019 738026024 958072637 998204000 525521416 712790321 147549002 852329922 8176217 921714620 460056076 515614086 896814975 952891060 811489292 873397762 518638410 670345975 901924170 983922353 198345853 231480850 117468357 894254668 416446330 950653833 526935223 606074753 788797552 961965466 513165491 641450325 309227267 741253344 297968865 969489702 596398137 930518210 113308 10232266 712529831 777876687 996873062 999221961 809678147 973667871 222686088 439395105 921736283 998686800 216845069 494460924 340100910 582329375 413614331 683241283 790061709 841387754 145871666 757073842 929644620 944158113 777806309 973860017 197070930 796901654 584844270 747868598 326344635 441314649 133692139 628434308 536694216 607691540 504156983 520559806 230493097 693872981 293650813 843649154 152486845 732684756 793091082 903636624 642490663 729828933 577798538 705827837 212498743 315529029 999341261 999834673 719573896 972633862 898816922 948387664 491646015 874615963 565231249 571914165 703704201 784457427 25575961 209010672 407590694 653452514 172121287 672671138 298452621 741706857 326892354 856335526 337922422 461597444 456367344 917804282 446144647 887761255 398557847 924785321 364508227 863642626 261532130 719421615 884164342 919128916 290162158 335482320 901907101 907957902 197072955 856177047 261002010 291394158 963406860 979109945 888098080 899246562 672083329 981349606 273115141 393472527 155295153 926116084 570772905 765253798 850621754 987467208 470685245 694539857 272007327 767218632 433055726 534415632 183097298 212477156 686949894 718588522 27584972 580092355 758233535 837451402 654276086 689643864 36440563 720895271 739044525 856514065 702842053 805717102 168252818 532236791 25584588 558854491 848087919 962664543 150778431 657813118 581922432 877225899 233646076 981198410 53368927 431716462 12823852 821813936 923910034 929738232 426462573 788547757 557439802 898878116 964106581 993231381 512390940 863745499 443059563 540280530 871636641 954261968 115739426 760066330 610692902 789331935 197328151 344336410 723398929 751060445 62996981 796586508 914387252 979419877 249065981 250026814 462748677 684456282 501288638 688896790 642638844 800787338 180950623 761268397 850815714 944519868 121623592 987683448 681989974 856959650 354721669 662680289 814555988 967306035 375043077 543847954 488462434 703549225 745686164 868192543 921026748 977890376 603765738 636697365 282916253 858541968 40365522 964298177 895979215 908614329 480661647 484966614 193895980 478480245 378820863 475483806 46388365 365666245 541755723 727591735 981370990 996586228 448027473 633320140 320587199 821007223 756988669 823411775 204149728 259420371 883358033 943188143 702313244 951844659 461537628 688137529 659701522 762608227 963095739 994483606 675671608 886812648 875651271 961047901 281123321 908350685 797719112 852389372 254296358 656091658 844669184 997575280 671051782 707173664 356171541 502448800 640541358 914227839 210563744 805444082 457350465 642965841 496119756 762309316 406690111 776753854 982286916 983039290 731969663 736581338 484189857 806118147 259642646 494629458 331427978 401172204 248394522 465769365 983239341 997797211 968973240 990030402 839170669 969649476 713139125 811492964 610659816 985760529 30185285 791305451 800051552 974542755 566889504 602207008 880521140 975266115 929571886 969064366 359235450 828373065 299463426 562695473 886797897 907553095 328564108 733192380 309730716 454643029 629031372 791095636 712725629 906480120 52141721 621840173 799906654 867603081 976763911 996940155 491669990 792197363 571368417 739645912 262249224 779284964 168298032 707615964 54416586 402961412 129641765 357243523 509198250 518731273 33763557 497534575 639356519 689523024 962121252 972254546 22978896 312394455 47546418 622350186 339462359 642266661 662022593 819312535 651260034 829062977 185460087 568440743 580489425 722998547 953801017 996543208 984824835 990552587 857210933 988116617 619766614 729987078 609552470 663959559 581499981 871611914 646621733 872315690 949910332 975143303 459649734 802441813 587864204 937959276 703970091 754009870 869618992 889481258 836435597 937526494 973759046 975441611 936802574 963522089 567595846 959187232 401969650 475896174 200115190 762281283 973826821 978840620 758241910 959068515 940397056 983313440 635720666 746189536 797150909 916903926 388325804 637947472 112429312 545396388 445737139 625281999 272936170 380158303 596889780 639104425 160320891 778342218 101767231 889183124 117396950 831674829 328407134 780859105 280328453 305176586 496978701 666639024 154924945 624835789 905615965 974326610 928352280 969998714 515719560 902122400 495725545 887940592 417585698 501906852 43946370 992616756 471793047 763460663 814779809 983065397 485629016 584394329 846010955 878601789 16414618 251767412 214371371 940033525 718089943 800385805 280792718 308456734 857302048 913398964 536843794 831883023 776324699 877962623 239084711 275890626 573370205 966008141 84198210 219732263 480242948 769554168 71725363 753177722 770500694 953169212 409579582 659660433 318326653 641046755 595911224 869023629 104274814 151911022 957091524 965886489 318849787 593902084 17406443 961149357 43294392 43829963 236940331 321971689 935526072 961550080 323596954 429358479 650987903 862413571 158429000 197414973 896262333 917171232 811022569 921665148 924062799 989322751 672766897 967238908 700581058 848424064 803003928 845654244 841077047 991962736 498632970 672266478 115234143 688540583 15478570 581567490 110577956 296926286 228076303 295395364 830171272 883779321 425034003 847106960 168819617 915671754 46571993 714754901 120697996 376886948 292516636 747331331 796117307 914596356 558821141 922038550 840082841 870247797 923103089 960191008 314719801 379307686 232571716 680721129 148328974 897229531 209873302 967336643 43467618 558397232 784447130 978809376 329969004 583503054 778115399 869879025 956707428 966657592 597021349 831130486 877582977 986792872 608059419 631145109 936027361 981572664 826853506 925575334 839063868 938677774 514091324 917013558 461670558 919739375 278679829 444490355 220675743 691085398 997463508 999947967 81954816 416103415 40712597 419934934 301359269 494062102 97085939 199015815 267202576 761547388 379102740 627969739 416538617 944430919 561885339 763311036 54042722 541694553 142246658 609888572 816442983 909081700 232512155 560928892 95962726 726679693 804412867 943221456 116514355 573626931 356566870 478599351 830992865 956583579 724967424 920222871 693142930 727492803 723129486 893072668 36799049 476611891 455689203 883461098 375408766 409476871 832436221 923314532 570526350 900645944 896925583 951103267 354071398 741912852 246557097 832808995 878414058 992006258 813216235 925694984 133231342 409824509 814302120 865839897 965424174 995211646 73654966 492611047 792762602 912543577 777886412 882323936 500010281 643225866 131711993 710220409 323515771 335158292 409305628 735913607 425231413 994350797 957697979 971128938 790814546 829251588 457148793 812803235 95333416 222105977 206653632 908182974 467428692 549252926 856591384 979309373 262355951 598930466 585309038 626125878 692586890 841644281 981668566 984993855 357777948 454373440 66935917 755511938 159363966 469779993 867171298 918449487 483922832 736700782 919767740 967737161 845215292 877299213 301715679 350692134 22806409 904268277 962959135 997399099 782295596 944628478 683620406 937581186 863099990 891184424 404887562 701922055 791766584 880008778 822086239 838464747 929032816 974931528 77465201 549102169 334185518 595960414 933018228 988242496 556196472 663857322 989004078 991355405 860279229 882702051 862298127 964255715 524220202 951006980 893553702 937731688 219649781 392722049 977685279 996996052 708205972 745535620 262277868 522895813 948248944 971180506 459872750 613284831 719557280 878472281 902503729 942137456 300336680 742625682 415410777 608487155 523664872 959165397 256739022 445543302 52863126 555605298 565573639 697232634 934166254 977598100 801685963 993899884 427175448 909320057 861241207 984450318 740863950 949260477 704012391 899778346 493911854 526014636 467686900 977829786 277351318 618515928 207288657 838828171 190195533 550448172 909633383 957210342 658522767 852327203 500196493 927014223 197781284 711629798 970723556 988757489 246688458 444372952 3876755 995010974 230042688 733557083 572494428 878058885 48270372 774772401 723541520 932573113 458840296 605933964 567417450 768140242 94437316 490456267 804424391 849633628 393833228 565682092 929859087 950422052 786629469 833178284 41011724 87435289 176411594 604032661 392306089 867356569 200228816 811521432 313887215 581436922 230872793 724896177 151481737 744880870 871614162 943302037 872522294 994615522 753289942 929538978 980378504 986090798 360915863 378640003 744568813 916068952 563700244 869018148 686277518 840896870 711291634 879335526 710392601 975639407 310946079 756061889 871441934 993899869 306368328 618807051 607918342 860942144 827459913 948720139 460318973 546367511 826442050 855066978 640042531 803855399 846153618 888877207 906900388 938565735 254139247 796690482 2903651 981479153 39111899 353493910 443090317 576917332 374378821 808636180 296927581 950666082 135626116 570653679 464751410 615429346 902021408 994738236 600809012 886079979 803616902 961449130 184338955 229256385 559539612 723816945 250778426 813608436 543428396 860693425 178104526 426258626 731084110 946018376 96751310 432489813 53024308 64202897 412675160 487421000 181755401 711265147 631029292 789010985 855878622 860738347 618313402 738770774 237104554 607772099 457075095 984396610 320911267 591244493 991939070 994284060 40687729 742258983 694160378 906538818 406560779 828504509 904796772 961622275 16628582 144903332 902216209 964136487 147250601 863855225 830790999 939780185 559562742 877471548 58498323 854096124 207293126 522815981 111856151 468700067 519949563 774507414 3830786 773425045 207591803 378584941 911320562 990086337 5425257 61559956 984534336 991052007 171552762 194794471 586556457 626739185 723332880 919344192 773095948 911949988 607874410 693368773 379187254 909297781 499559970 870733848 723867251 841714170 556311292 706178383 492818182 701811008 620878272 720650530 268968564 637162312 15158025 789011752 802481929 999642057 155648883 499968315 580433146 724671297 980657681 991860915 230247938 450484347 451969911 827931049 873994232 911212591 886607276 985624072 739923364 748050829 685900403 872602252 268860270 773601106 865695603 955122014 433797824 806966967 902541640 956924278 843380720 998728712 998440915 999453701 118816447 541837269 7755497 478489053 763904360 977969654 772299402 811585759 722954904 743611204 19705119 588772381 543301231 716888799 386173915 857373933 980537213 999662707 651622555 842270239 511854385 871751839 858638758 974367568 118958881 542713829 178613183 312652071 129893131 800925202 769840362 801249776 772387990 891860103 995890273 997516229 593050485 904455563 483787007 889928378 202789172 486529155 875035067 930987766 29258147 846412045 768452549 783384006 738025287 978448513 663508552 903675979 795769900 872530380 974484760 989437815 655262310 769489869 713954956 716437943 376700036 650906331 61511927 826852583 280478297 558265922 891421407 952114544 845940533 883290269 570106112 736935049 402635780 633538729 842835754 873774329 966317147 998117900 411855760 963894373 684708545 939756937 137531939 976192453 873656191 947466664 325493035 733356384 923269101 973424447 987180266 996207994 58638983 257267688 763302763 938425605 163460530 216015099 839414670 848626945 534865267 741020870 678838651 963019291 91586875 766157801 857838750 915844413 619778676 815905361 27329972 421927672 907114801 935681996 181794252 436539324 551431845 704283649 464708532 719979107 901773058 953443004 479873883 840262996 478199552 979356901 829380756 952433993 894202836 948430575 823127570 903196584 626306006 985202467 180629394 656647873 339801099 875208007 518992816 600338970 160706626 629307782 436247564 906966831 620621025 730350064 240718844 482254738 642001217 880534151 367493172 686585245 247121981 804899279 434222336 935417888 56919307 321068603 205416860 703754098 894103163 966222204 521892429 652644948 966377038 991365217 839326338 893541649 174412306 240036250 172234847 369386174 439808519 669778522 204318907 285519576 312725532 985791692 408898022 806814632 217171405 786384078 161018103 639818754 930778722 961158388 164809613 686040592 819788326 896256212 120287779 491632303 81390466 215124013 851746603 949776673 388435520 864055925 318929053 507551249 613408512 891101960 636894834 675189017 342235223 837776172 545020098 558163239 641452524 645062372 690767161 699644559 689214653 875035914 627610858 653480154 936791788 999167157 569469483 659782717 898561244 981868802 457830427 555124194 142615153 218717370 463482839 689741985 987410696 997866790 24312469 159872855 943727494 998584029 547420519 861860997 538262453 728581417 703486254 788964758 397408509 916496017 358689660 367794689 944894819 952336310 528741111 763104910 739639790 784863688 618996689 722470777 991751215 999960884 950934736 986893024 858398229 967764265 370687735 771246385 653589823 720103859 784562011 935643335 522483981 753117784 360627402 938238801 599504237 897211892 331116632 610081935 641659946 675723842 675336758 801107496 425014806 666035424 945954212 955468721 741001494 859376114 429804703 441331433 362324575 989226140 815140196 847338403 28008479 183865211 936784482 961188604 283318351 850040727 690217340 950756699 261144430 337385557 896081499 949262214 178886781 567890708 959695311 999967357 23030002 528745899 422438640 645005317 278503937 948885838 634993448 957400327 21779835 432573645 389663154 595581995 521267343 775648517 874307819 997064238 210834478 680812851 80260177 273893025 340371349 987149241 59312601 202894195 827666983 903798251 792041467 958302764 200662848 374272582 453208840 748428905 634321144 963879461 679532401 770140531 120264405 650643430 682655339 728173507 840093241 909877397 823070466 944731801 133799525 274195334 943878702 992492065 613834607 953162697 86819759 418005564 706178800 951373410 933657722 999156179 378522503 380995208 100781754 585646173 197728113 691830941 934897580 986994637 784456865 981642137 243142099 962585649 20143375 387249539 773668118 820356220 899183297 975423594 179030097 338511468 523621969 861026988 618294686 629558868 477154475 530185596 342592028 757900727 514636985 690649889 133404469 329305747 305540769 999959838 36541871 619959484 989627455 990352404 783915610 945401693 430223462 833083956 281283195 327631607 463241100 716555239 688462639 795481111 842065631 894566159 958104562 997951943 864824433 943726054 850754815 960202893 660759459 798196904 777976720 935648605 244769913 838022681 524581054 574691248 408806651 513355940 455942249 806066555 834314365 869810343 73188389 925556400 294871908 931654981 767545094 899245694 964083936 987668902 423032516 721296867 41449920 768813626 844656177 863943446 771965554 900365675 697021607 781613495 727026037 896400031 814751136 995499657 864851571 867093804 192592344 664095153 481758029 963591198 201130346 482752841 731833225 770197838 383240618 857293994 55402019 538040511 210152168 872846685 932635352 972546146 981600794 997092471 357002579 665992317 788158129 885850912 131255916 898814932 627915426 725631472 529598568 809421585 814359498 827334762 338944093 737467460 864182574 926319813 269509290 812678126 524645433 550610558 101730963 877725049 327199053 328907556 1634782 387207063 79305049 195257240 866491578 936720509 138342304 239785695 262781171 775255657 706032123 980393997 605274600 924461143 760147264 906693848 473882863 608931334 330636024 343613401 13429456 996056344 164739646 601389646 790641686 892280766 990404095 991668135 168408977 338695502 55204169 203384747 644071482 794808591 259660824 410861020 730427663 866087170 976090779 996996256 170591763 509995406 619483279 958442715 892767182 905387857 83545675 632532472 385385165 869880135 942983645 956304703 473929399 538667200 349720526 794387856 684922074 782951878 846681299 883343058 374961449 928466212 913889170 919413182 844057231 999541692 391897965 665431760 851602843 943826298 898207391 900374575 40286533 287280086 761278808 789216901 591598175 623959583 628510914 632786195 117394406 759259228 319687756 870716969 53305052 768359009 767765038 951011854 288199979 838581257 639763119 950363301 922004746 961830314 785597090 996878993 737464342 962323527 365056121 411319415 725224636 732977837 141561179 498711945 300823955 924979514 183019244 859891220 96671686 125342444 322488800 842116417 682967943 693200358 250346133 941320234 617726937 858893845 373617953 609695891 32150303 65551508 910125615 984094325 396651406 670593478 952135623 973924351 819711000 916012116 544119229 668087060 828695760 948109220 14151505 739751527 676470616 713028719 758732855 901357333 510468657 520339268 959876238 979977006 508119093 607237265 452675179 909934071 352472455 788923294 354980277 691090607 934658181 988346983 550151703 723432287 977654745 982798244 596313951 909068838 471851053 490591010 289571951 902059666 654002149 980042877 780150695 820616912 818244869 905380222 104436645 827017533 92141318 462716998 194019218 410699394 285578869 541233788 350850820 599148987 834268212 967468621 131710334 637749821 137761460 793526279 22366144 918541650 72017695 191893710 224760238 467049511 843867076 857740985 249788302 720275586 248630256 828332320 370683830 871512895 942124649 989855165 858944337 988213514 566170280 968675879 171724013 226532063 458140416 886106358 428993860 731377861 778347810 846585066 173280040 467555989 580627534 827285519 414061426 420095797 789169193 843277030 778512496 839145649 568216535 836973468 244223877 988128836 757101058 815414841 914370588 971666924 699112066 893129573 164532714 983051043 218435205 639882807 126520238 552118648 408319320 620175604 322324339 658857536 344152448 939637386 94819242 327746445 765392061 854571810 700510026 849636091 3395047 438297538 8255637 962381386 282138405 682280134 46957504 882116314 977789877 993548955 488808011 504032556 891498685 907715027 196570644 805076625 342676274 577891576 650491930 764225461 755469867 857119255 240433647 395259545 297186394 590174314 20865127 201253048 611418779 973067775 665792331 916132707 583059833 653009711 809979213 934111083 491098980 817722441 381627676 995572952 250518428 280502448 450356713 615424697 557133352 637414823 121674267 218711313 496507687 878222487 888804218 939230840 578902544 962367550 63908 32387569 686487355 708618455 193342001 988239856 371284682 851039017 610436332 843308094 817977045 938592257 202390953 667613837 929386277 965711327 714568524 932214219 209104226 240337909 339308379 867184986 452870774 482419689 401523979 624092565 702667382 967045059 174380443 448194656 183944774 970618641 11694730 311261263 637721339 985507412 782596372 793203341 320273712 457709084 883453481 976761687 723182867 973819714 621957788 732695830 603338920 948960958 181335209 798589416 381791469 626977263 52119745 916124720 904348250 970276411 956939282 990599700 667762677 898104627 294629532 547193281 195693113 581090889 827394551 973237315 770864720 808213843 17040730 390523498 841968449 927824406 394276259 559781392 245959646 955086480 511294859 819106961 527483948 761598189 185537790 800294820 309670685 572836521 818624368 823451698 528760976 635575505 885988753 913624908 496948653 795497717 551528663 929097648 948875943 953656121 732054734 867217956 742463192 866789979 753173774 786032532 343649553 561263851 647907552 840800995 469299181 905155100 709969143 739127595 372502233 377685362 421401395 823622117 65715923 917514511 416614590 845229138 539925891 963447913 20221107 991603444 621186002 648349310 977790687 996192148 546526080 937360891 990577178 999977685 461225952 552215017 285197231 727131527 600459629 909018653 903321638 958364354 171858824 816885550 599992780 884207887 552093419 706538729 138763783 908499369 60304314 222782292 441933995 819835999 47689199 800808885 621822602 628398487 657363235 746920184 147915366 886953393 242653832 618597010 95642631 560944514 873920838 929105099 115874947 751128780 398276121 981208146 232671243 328776591 48490130 189315363 959526849 990607698 476145825 951116980 284571916 641836044 423000469 644058274 326900868 729187924 350960727 390342452 764316956 995242924 987156055 989893220 340711633 376956429 771876830 947697979 962884748 965279410 397736997 743319982 201008776 719568088 678151127 950791425 220775580 434217233 717366565 774914998 43679712 385977387 765833650 791746203 720701324 863582650 32790056 721139133 979113152 992154650 43717005 141215087 67765971 651613122 967364331 981222711 252154762 254625669 176243198 421031384 444030894 592281476 729503345 986886145 384544772 874945957 703374851 989791958 186074329 616112032 478040664 760586156 82706238 899598913 954271510 957235449 546127017 837716704 282888108 669174511 476960230 818556615 988283733 990157912 146459118 794658717 514394654 966491201 567102029 660057976 497547606 610468805 552190888 761236616 763335614 789081161 19368202 147614013 175969811 993065724 337473007 955161298 435249240 815424267 546909507 965350056 357954479 591516386 580926430 779778906 29781638 662522953 729567906 903698712 122234473 970036820 615970728 808969832 447230405 761442390 428055566 742783740 97275143 354688378 297019952 708428647 955480057 981107820 988574495 994437570 27569685 82047153 901471088 923980112 722042978 897837697 274511550 509742022 769756458 968925415 552765093 670950645 874276566 936603027 148033386 332351625 370431210 662958854 392587792 405669714 336264639 582182711 109337887 775095144 488094020 661295639 588199118 980919598 244616168 487828209 821599027 946976206 926947982 960667350 642558625 871864429 982599342 989435861 311273248 728468573 923669434 974503298 642557218 799509445 821086048 930539005 775284587 846582868 946539187 990590812 422794421 924853715 937196042 957739575 916162718 934217544 646357718 653891079 419820554 855585235 193244941 283407975 190782264 652750532 335494046 816294724 914194488 961193023 255268760 615203338 142205598 578696605 558012534 588347222 691797428 703840465 345217420 405999499 679233591 825196813 461810625 978576920 529105124 761041160 788583334 944126740 684338877 842960761 394076517 811731908 671904638 681902133 165607509 478707402 548928194 920257763 443261366 707747671 404863238 545444645 401832225 527029799 270108834 851975833 223538807 608433548 720689100 754798586 616342834 690393107 622079520 817269333 696147303 901989443 824282955 993222736 67281573 892910304 462710031 900550304 794362992 853715923 851139089 938082917 320686292 521598968 536210376 864793155 711587999 806188041 267233057 285939948 296661540 632219263 705788240 923012665 593703056 635030759 282571038 794965084 488188896 681391499 384165845 923205470 76845161 669078280 649539042 725493070 999104694 999242071 439430186 853981289 110580425 669626571 903505091 935190728 848902312 937102476 404524456 968622357 618598866 883022415 463877313 833561024 951342888 952547317 99451172 639218433 830321184 961603812 937557883 952923096 191535998 196974447 827617498 963775873 111960892 487022113 654595933 693554607 228067582 543094881 707266724 921384010 68804065 110733250 932988736 950527750 816059704 856632401 313918385 842993332 359671639 431391390 671827601 921490949 84186854 693201120 518192808 696539146 704497814 713685035 298965995 836029514 168597562 544707264 123546772 982134334 986659541 993932345 248035937 869622707 953163403 972278523 160598869 850537301 53612482 531497242 140310036 780373949 571154445 976191674 755473945 818056553 55332268 976867066 452365204 453628611 506578341 647043740 669969333 708619894 382679691 987571760 566530912 844894593 358240442 498946143 709254997 776406075 971770068 981927574 816708176 949848860 454565603 980575924 802533788 854207248 64345503 190310340 316084626 446967531 749556923 874691307 434915955 747011043 861379674 891145259 829801908 888718187 45562226 603932035 553591381 706498941 976464556 996132262 956007405 958654378 645756572 976558140 389938262 452225249 375089890 398855658 125619283 640261352 331463279 773137136 778236970 997972340 1561595 895847048 307385890 799809703 458286308 496632884 7679789 314009566 187300772 866467173 475363992 560365398 16217399 962028419 541483694 928354297 36777957 915307536 729996020 802845350 200851413 954829495 704051845 941470382 472203822 932343071 105889108 583631242 234863623 799761516 649178588 696033675 968172467 986445522 804981984 903210364 118859517 939052730 200951955 697895583 928791940 947371355 943817655 967553309 650879550 749814897 941213862 957963561 751843823 864945375 751014791 882524046 139464144 989547673 586035104 659866438 968157287 999282247 262659810 408282161 363087964 953016872 814662723 860059237 512746487 776902474 927302329 955002352 145834149 443884431 918509600 926677753 939956687 951925309 70773501 577043241 842085230 983302646 464187053 801460463 240692899 846170244 533359775 847470613 113651529 187899714 56308445 266047231 650113384 955521941 459016858 755707146 33685007 777179987 632601885 781049754 823753824 902359091 819142027 993843434 133813892 690490838 983072795 984178743 54598972 895548422 326942271 716438686 569969793 580716983 865555940 922693646 872263563 962541308 453617546 714669044 460126762 558915861 921083517 997716598 713262296 945688344 17293240 563254791 168969654 436088015 633622941 727427679 687063346 886116809 88839586 298545954 176756177 606155936 582760451 661819500 914374065 989222152 546741214 651686005 169640464 286999870 697761885 948234252 933199719 955651702 4927568 365016804 119501521 812374205 155863981 322934862 970148109 984707533 87303270 241836671 267536439 562703513 429332024 931986952 171569287 335334132 727168135 842111541 198048938 796294489 764428966 795147782 149909787 894097425 416347646 581833763 272848471 873333094 647691803 896297584 765920682 933560946 895196313 965465592 418607306 774654939 214983703 623109989 46780187 429884588 389240227 807069668 797325151 940810096 97367571 250894339 845160089 988441893 365377275 903943450 31578712 147501819 267185153 676522071 945616415 968074765 786699551 790213162 703802117 931778641 130557655 729373401 512405512 620111119 451968591 607210467 365084990 592103986 428687185 458573543 873153646 952326035 562591850 694035581 974381954 983851746 130307957 479442967 222632612 266070333 253474912 675166040 854772731 864752284 22612894 934294231 221546048 868117903 476014125 786886255 986701695 990737957 715528039 757286386 41880845 340030705 675940479 873204877 446304803 880359954 255320391 611742418 807458159 865084171 659794000 893267277 535647361 653768522 711027690 869556475 895296928 981317971 45024257 520600602 898217954 954684579 457558524 871124549 4767057 553785395 621843930 836970252 661844976 778405940 814497278 891336685 418907475 998528379 886954011 903200268 602155773 782685544 177493614 704756487 164077526 598888753 920946246 999298957 850274670 958833010 749849001 949663690 286964560 702663408 647971194 770910656 439732532 485116089 353190687 674577860 96054534 516177928 423090388 694674922 582981188 813432925 506958615 935439495 912016095 965584483 425515912 958349200 130791922 800926303 814772727 867630447 226373560 543385949 722469019 791419302 605843511 938176995 61236160 997283212 345569210 373916007 311757726 903084085 993619399 998294989 204695973 794261777 843033535 916403150 110387265 875348730 942719022 955629690 36015039 994437038 839742497 916547845 573508119 896861089 778641516 963943238 370016933 816443983 41264265 701638820 58318133 429470530 886746116 995694672 495151600 961923427 825481188 878388130 656368960 872823335 479774762 695210111 838839128 942041544 635762448 726024901 908589465 961903066 704488376 937608938 998006440 998055219 924189339 978072743 188663485 695855844 152640296 763895883 516866305 754622383 461020281 643450101 585210089 977797073 782233650 877893327 150765965 500622742 295775319 961764343 5527305 701850158 483082470 588959905 359149134 445412790 448159794 649717779 529950783 673412569 555949822 598050898 798325658 820878226 661987896 852042744 6657074 855099656 960072858 996698467 356730886 479173740 547334912 857499887 157846498 870954227 298382259 361726764 585461564 641944694 639836317 921128293 222978632 613772461 806549371 808000061 800724397 848742311 270212866 907295175 28241625 767686734 472408459 881654743 943701548 975010091 328042195 491837115 481110952 971662474 133238437 539935060 258528567 510204497 75002371 920158037 61578214 878672473 542813297 832034463 928671650 985689199 76280543 620371644 103122784 649243503 645008361 755825933 331684830 931540809 955349771 977534265 208094689 550868590 939267802 994419099 348226525 629421199 844078713 987179664 940860388 971699932 979734676 998194962 365461975 796807309 911091775 916218159 508810459 813052640 289738058 673289013 182936421 517015759 737298314 882881725 671413130 825707337 79527004 374577688 756105899 812340305 283305453 760423418 307002582 705971885 9483826 673120101 435655179 963278618 957458771 966342674 179140788 975407807 653620715 894076556 353815217 909371982 513195828 893760084 177817747 533690837 997739734 998406787 521289309 950157111 65922306 314717807 586476977 969186172 641231461 733212432 731447264 977061715 561540343 987185673 633512880 926333196 14912706 120864791 482931767 736093671 799812458 864166700 149054178 208429690 981593790 982601058 696011927 990089033 638489344 841762858 410433831 790716118 512856764 954858244 158482530 787065502 424712338 983111097 617542214 748740975 505963910 753479593 505363820 812561958 118184359 782125558 870062569 936268370 50169500 599286607 174260293 848218158 188035951 638991042 928272511 980724569 164405700 466034695 866125939 888792136 487670426 518366129 818966714 997892344 705148554 871759359 294285825 609789151 18038473 544275846 728185360 935660872 507919861 640797193 782893485 944267645 21992170 771646260 722945999 809692025 460079399 952519784 963966448 977329264 580455416 915506529 423840468 487210795 529174938 978061573 485733371 984986006 427486442 673676619 986011565 986266376 958930743 997444952 413103934 827892379 815193799 840989399 609022063 701096563 575108859 616875424 185132491 298613531 965497042 974368208 275272376 303264411 748144455 946401116 571460803 651660409 637243126 771047314 519092846 866736852 566888647 771506423 843383199 971791974 363363535 866369017 562028289 737529482 155201925 272280373 533648677 770383990 576003278 988140934 724568751 992042984 914095283 953291891 602890541 657186240 706175456 932926564 645578831 678460361 617994090 936304131 736221514 968792624 178199851 781133567 346994462 867587026 665167512 819644750 996037444 996633766 319178558 352776150 953919367 973141386 272907439 419350647 51305297 982180035 180567295 894821015 987329689 998881588 115618356 945572481 557562212 988152498 364067202 868777222 876591721 949157137 66193181 609224606 37314958 948431799 789566207 849319860 976277262 991200748 868987000 965485315 794186327 858114984 418847550 501734739 993188716 998628227 19729544 557361372 863012093 938477777 917618523 921976861 870938452 890490295 993899749 999236917 137989106 451970469 960029956 971063181 763230840 840260857 186957218 715001561 975286065 999378617 137007684 285253076 699782329 909340246 13262822 285083484 579546056 872875838 52336179 531481475 899601656 944055565 694983829 979756924 760889680 828736364 660815153 868463024 376242206 841101806 311467829 985284313 73406553 890796751 409214704 904155117 787588897 848973996 290583516 829131968 140865408 172711779 431484039 660425865 825964776 830034109 423174557 481907317 521667511 800215065 260269609 770594737 407144185 596713732 825536012 866549674 993366806 996383708 424910646 833588027 63238643 808774993 23284637 157453124 430994558 767824834 992003640 998613936 52766585 930910414 976598580 990653652 933266393 949645589 130976948 489932665 285253364 475656267 599776586 823501186 226680160 362786216 997247551 999749588 762970390 790576432 761501104 828471385 778975716 963036887 261446531 306574190 269485630 741650222 293669164 432102621 988374361 990765841 615090457 968391341 345382453 578092377 304806840 659127451 820512127 874410768 210269605 785218638 449491840 884271650 56812280 362444158 526423628 840516861 785080322 985517140 717009390 969726900 144722786 317671532 870813252 884766797 927322806 984800401 309757863 956508772 380747697 551200146 491830964 801904237 779130053 931319515 215635725 743546235 995676756 999737553 66485513 428169505 724856146 753973254 894794820 935962164 964454131 996773904 18238367 889323361 419614201 715321982 88675615 784997386 355824135 577636373 518658629 869662317 991103812 994635037 792895344 982640668 227217999 628513986 611355562 933752873 785215415 973133957 27221470 467009072 89410310 432540092 426246724 659857375 729306099 777784267 132646919 265630971 246072590 589915284 740297262 746364714 885653690 944333569 531597784 857948451 733253535 850643118 224602479 586527537 352966627 693140459 355076627 581487745 863461102 939687992 140916416 293338237 58066615 546837214 645201386 938131059 446325065 537789826 905342335 914892734 758436180 834101072 941268780 982661437 646085455 864423087 689260273 902147880 165325462 325477645 527815069 594811719 513542007 552299397 279138723 871666308 261288715 715559278 517377000 757980643 213946378 425174689 14411215 167255907 302404713 567292237 686365572 971718307 774252375 863891557 725142838 809198338 133424386 248916196 338569225 981913031 441412376 964308434 2289401 584653208 73794758 244616491 94114 584390367 14013852 991669641 847023013 847072972 566214005 622101314 686380330 897425153 691455166 856781155 917862378 998623884 411747680 521913353 153245045 744296009 336194758 440000186 543536723 995566453 611293002 763109218 220941554 592782246 863650227 881477997 444588694 818388682 714185735 993358360 714753987 997218011 415947940 656212676 169832011 356659596 733306905 800873942 839165180 981062148 112553108 585525680 810204555 997896518 586714175 602794361 865947484 879116816 784326606 852301540 381431007 633251057 120764452 657346400 802695008 961316655 666278305 868724252 82469108 658951569 950321840 999170774 828988071 903425758 229010837 598324652 29174858 446315529 208276801 981220993 943626443 969347558 276771600 653885375 277725998 759913637 770616708 912287279 274457909 281737583 270221452 545239573 617654541 669112077 998625231 999312453 636274535 820272221 145277640 732768910 47792203 397640903 956835859 970479292 846690643 976384683 875260902 919506116 9916194 987946895 169220358 838946574 739248724 961620890 433105535 467351141 781004259 822535437 173179640 842138980 310336456 923938933 207278856 275424798 447135887 579670296 358330346 534938414 80550838 750631752 116494597 356336665 914224042 942212796 487189829 690282184 915657603 943984946 482663118 765290217 868360293 897742227 400194577 642286387 53785762 845197754 338574695 612438625 910049507 976001172 173602628 732728921 840143110 966527598 833444695 875213105 834202759 979874017 801136883 905687411 132215387 231306117 879199122 916969741 545695640 804751105 319593815 417914102 897040965 988550099 805224071 883266279 796024875 830451161 498800882 830245303 999206410 999929247 686355662 955031831 520129983 585596261 551560662 626655224 937234393 973416192 177652831 747300372 538898624 818390892 892942741 988073281 183974362 392974083 783800146 820598487 875919811 906845947 303079371 640879677 30073197 83101780 347056420 868543794 187688572 969632712 658685656 800327844 905438484 991670074 64435493 496433897 80062751 876091451 593894493 748577481 42825005 184685311 415532073 773843832 498265914 508094767 668823580 894164019 428378059 747971444 52906471 56911366 80235561 378913203 506742391 957446517 744364710 780409259 190956650 634230599 636138462 905803252 245158011 701804710 96512264 449032001 651951728 858262712 45003091 864434572 604966234 808576711 255875666 921002742 466106769 807576527 619985788 940285371 180532234 560121818 997122774 997502125 440288368 557495181 759264508 927692027 260664191 324357033 874101247 912847548 879497024 939784203 916287348 938622722 17710099 557775457 653368863 888929905 791968077 810946538 727162259 796241325 472656493 745979384 800924134 805915573 440642818 891188753 247634557 730507543 30298812 437965051 464485719 776962383 409112295 821500345 190842353 555948755 165332235 881993667 538784586 773855132 913618675 981550328 866903665 886463903 610545637 726397618 641715022 893299684 852797591 884536798 122642533 883206592 89019790 440462074 485393734 939921503 229107032 326329852 444052893 808308256 371558452 955557046 972444878 994906531 829585437 958317049 599484168 708354820 971293309 981545208 486725050 715401746 639969098 831524390 550323990 948894021 597937154 799516894 276030229 736968953 829225153 895237242 287546957 719511493 732798792 810464804 167789042 291299582 652063212 746727199 241718737 419462758 257728648 864317919 567536630 734833868 938129328 951204880 482150930 702161752 607665498 869225424 613235237 840481008 289061444 417194517 222824610 999598904 792951920 910349997 936751322 998838309 914178255 943452717 185280833 745332568 31716721 58177814 745230864 872097544 86011353 182692191 348602521 622651320 815201199 999158337 60521472 68578679 456596683 655424447 849763843 869954564 305479446 568750874 657146812 826390233 610639429 738466089 226293580 540419818 161944148 660665383 696677056 946939278 167136114 539933989 992953545 998307042 207780088 477884464 609865842 727467939 190423433 514683242 369549763 788164989 386146808 410294061 290750519 928439069 371738023 500188480 891893958 908682691 840809183 901528725 582465610 966614444 386266993 477262808 72587463 928760640 236839629 751772226 978761201 982786695 403313770 498725374 478100250 655205855 287673696 944753683 511190794 995739912 330316446 764484636 728012018 835845893 230296495 624761642 166139723 873654934 373897069 674276364 346388670 847512389 816591287 832677140 527908330 690381139 505997512 719296931 145004614 367405873 289600773 941964106 403891193 492561469 188580063 391595420 115163223 685662315 356119746 465551916 773524016 809057256 843590015 883821587 327622590 740309978 833549946 955760519 138357574 396399278 157605564 889967503 820392489 963040518 414489158 541129226 529461139 920840475 392337979 613668740 13025029 371911308 701532655 779435839 296274286 924323160 778978740 858282392 169163172 436121945 597745718 815615603 424901626 996355930 935456098 940664370 989962223 996226624 744452163 781710924 205457094 918277960 446233986 846886980 174047968 482917863 527896369 779011476 999076585 999739609 212136089 619655910 899300797 914272666 324693034 631195932 254710163 774679169 469729223 499254425 355426275 854891035 713069750 911193497 433883605 888427898 710961109 807365239 199712746 652623297 735859358 834421851 140872639 550454495 180126736 874155118 153148032 895977676 728728457 922344731 606049901 749338971 561723190 664662351 706610619 728010060 181231605 304970991 845498999 903650960 761226995 870915403 329799607 928682558 250512467 280863678 810878812 964506590 432421865 973925126 858048029 950710634 521394457 959889316 196201839 409663062 801047131 934039674 129267775 996246090 472632454 929801336 497987878 607170642 624992703 665754222 303971265 985382494 256536770 769708683 744018249 940290029 256291053 716640613 199583326 896256146 145123440 927235706 383404992 717159012 665001929 987580685 246654762 521755597 708192320 861858696 668908703 818238936 300282616 687375222 13977701 243433105 385744303 825606358 749050142 875532240 695444308 863156715 104048235 268213018 67426501 571307948 474444585 908749517 641692779 750340668 633893369 805407043 455885693 773183112 273913984 533038204 120904662 782735654 785020591 924608152 145778380 521028684 840358732 979755522 897994936 983172539 369338966 878309140 740206138 947096305 854283547 885868083 556072390 739809518 622464212 726333111 475906627 536671011 949702196 999910167 885443806 952621134 671106783 812768981 892997545 985729340 344551026 346770000 507527856 519752185 965065735 990437244 471711440 785636544 753156595 793929742 515432895 591919289 599694567 857707146 862801595 992232182 932841459 939450776 372690548 451975557 492339395 592831856 145303040 986224729 645327300 650416694 596381074 886566587 778995207 876659727 160506076 166257589 775893301 905093018 92561604 349630180 547589355 980233776 986762445 994812402 948398280 995990709 158465318 793139226 517759222 850334570 736084528 974237501 719736730 724376499 170970167 419874213 215549198 357945493 933900264 984794535 604479133 780321876 528534734 592257339 152856129 787253598 458174782 974671562 332388158 525079549 290312361 949425197 69808134 833711386 642195850 788460495 703399331 791656053 892020763 939151985 719612549 846517692 792477407 832927047 712044605 884211398 992471696 997146082 236754935 509634917 716591485 775114461 528372547 743528796 541629602 615707500 972107609 982613683 497306664 762817528 886494870 950469020 381681009 820754815 718448769 816381756 901008125 911952894 643074848 752727771 206234837 314095063 296939610 359274540 67014335 507405065 368676075 876667718 551817502 931228736 99048591 398858561 555249824 878857891 577631212 917409476 29654310 499717743 822876431 840516769 676226816 971937566 852407740 889886438 911239976 961006334 458778959 884919718 795151634 890374569 912626765 925420824 984460083 988508401 878296809 907373585 169046689 585714530 153129631 531448655 918147137 984772885 781267539 792695451 328232717 793549642 812899527 989018006 828239240 832260449 317977931 400938848 341364594 520162147 496627680 542966751 702253619 822290155 37093140 510264210 612215912 965514064 935140293 947998473 366847509 853436971 142600112 984810791 629758921 789730995 451357025 670810121 15691381 967599116 527693530 540971601 426065427 909881868 118483166 447322823 503347816 733304828 534042493 916329433 646434068 740176526 17437536 719246859 741381207 899339399 916895084 986502073 866694528 911163710 360783025 984996074 266232535 460370007 996430771 998812519 962821226 980544526 471063298 590178768 432324432 554200723 102590847 649815834 610346673 843666159 232333652 749708890 859391860 986668614 701659593 701865077 199569238 618184745 74912700 789587763 100016313 404850309 102246222 939675684 16138183 915524895 972048730 980463596 635037947 656344149 158912991 756153984 496440552 640251125 996269907 998956775 115488300 851403888 518105750 764010948 306042543 641917505 657616861 817437680 991093574 993991357 352984985 895471581 335100581 443228903 90100281 562047034 745386441 853844370 602356427 852012864 774496652 996318523 26757354 924377476 612920142 823497033 938977171 973880071 104773705 142725127 650270418 835893654 968437835 969684072 497971519 546258888 797040616 831079839 939943628 978672916 77447195 670590348 818883293 893978944 205555894 305507356 280874914 694530161 628580182 803800740 128430075 976534856 805829164 925037432 530091579 844697696 942072602 986377593 522598648 611711807 938066434 988409874 31431920 229397722 479723922 585869486 911210631 934480871 960953411 971173268 105225449 485805147 200148288 898574874 250780278 992782903 417403070 640605196 766869753 777343015 265311173 523439998 206270903 830216958 323213160 733519240 971938531 992575098 528960948 667176894 406555519 417950586 736178082 841897675 523498887 958493377 993661167 994285568 698256715 748865587 972246685 975668213 559476375 844003982 509730113 721766470 672770382 734383313 306995338 510376640 311034341 814625332 409233139 931544739 301931617 980365379 147832615 334767261 482337819 837312243 724641116 752197051 677354759 770354929 661501195 697336037 314348118 967879109 249523417 703350040 780692891 912670807 422403690 597571888 150985009 678357843 668839567 935832524 547085507 636986040 629957356 661091763 646378407 715000414 484699682 556438680 583252794 945949805 974887259 979589843 530205848 616134418 171993493 682494478 989117787 991379492 142449373 163728380 60039543 401197172 8541249 434286833 565799125 800418349 316173113 579349677 738124787 775817027 640295537 659694276 132636621 921951513 159597970 977902451 611922196 877243251 433712531 893033844 537387528 932242946 795532394 798075245 625039860 962402447 963363406 984910171 435921868 621301833 868039456 964526259 844701667 939223934 720243229 950299221 393738346 489903752 971577944 984347947 142228212 501295291 558594644 988455444 951702258 969843497 659286612 799899017 211669857 754713589 673960435 950882969 342906426 622474014 315905560 916413932 333220037 681809123 290792112 787188920 479145684 518728175 65271466 86483331 334544149 672168741 935275123 983820229 75324236 157547280 583956068 603758478 518305098 539073172 388725826 471165644 401665909 754257219 519131621 672589790 59374341 925042374 237580831 768812688 8650851 730694796 275705198 778767485 871448307 957546836 740288958 747802283 805744304 983610811 904807075 944771857 963075104 987304003 629055697 879246978 616297396 882110790 121304147 709776188 473591177 855539853 412419373 743902338 935525905 983942133 879074308 910514828 320813845 475550127 686623065 838896168 115769319 944972890 317991313 972801305 563864989 607047971 985622542 990722377 420955995 825168071 175020283 380817922 779507058 928201627 222828899 430577662 949742940 954748066 776372208 909702080 897504295 931804409 355510431 815290962 72126402 836739552 785366076 815878270 680545552 911896597 878203926 940420265 370193492 870313969 183101580 700254776 654334921 905405973 749676432 760021300 599769465 634455794 369905187 780070108 778827473 994469933 898721596 906857225 751098696 901390111 700006090 853046384 311490685 365391062 138319780 540275734 142843729 867689862 525054861 940458483 551015410 782174074 203943098 368014498 783861944 794473859 725851281 726619929 347918935 535653461 145489278 985293554 532842262 727707978 230535061 671842796 574494582 793296137 197622199 631842987 846748723 865808717 192091428 677576057 824313717 995531652 35981164 646077913 802333019 838125864 373528282 653821533 982669973 995907682 184423001 998249775 316025011 382754527 246090525 720607644 316971756 577477270 766870872 797647241 33259429 221094626 657192901 782066271 703677661 974327154 900726617 974613781 750723893 757704459 757933091 804953024 548762422 588323119 192869680 589249019 46860298 716605080 54493766 501688183 526241949 906450988 529152911 868289318 229146168 457032395 641520599 749074561 429951818 944659530 89576411 622841402 826074773 866854612 119990074 794598538 990297967 996119152 489734149 496906525 50776950 394126778 401282034 427567622 216074716 966918460 292666928 752347723 907973293 946130469 137296196 847391062 934250852 952398172 494247122 778930249 245864994 567408544 153802619 259545119 996207011 999504493 313851074 389334795 688237541 704872451 842942626 919134869 420214528 499041929 353053572 629548488 722245567 724604398 265165975 503957907 182265643 858652395 894690790 983472739 638527683 759395999 247012038 840715322 680321726 855854488 233940671 500017991 150506759 489258720 203871163 850529642 422217635 827002130 997794229 998555761 52800303 391483485 381354997 670254354 371921504 873183746 354806454 510893482 85863388 654087586 478139788 554956362 245599021 599407440 798881128 984028544 86035232 333932120 968342852 973367820 623170487 819998012 436357429 965108628 86323644 493547892 712313643 815131517 168103700 734117521 706623558 922444911 909200534 979699920 970165821 977268169 682504892 887091551 279376896 416357947 755743480 930623175 439997314 796415271 862226079 862468787 924846625 990901748 919418400 988556692 908238743 949666696 984339237 998780862 544105820 711344787 156952396 884235773 143227671 385959497 563045701 653040908 756332356 906971992 8784711 835438588 561971468 662781934 513703114 606420860 129287869 329975729 834744663 928369624 389000193 666726963 253842195 437963098 402010580 529296115 466598548 691550108 614249536 987471439 582174386 668306050 47525344 914532021 583949056 669710463 361453786 680319035 426826813 771936919 65412884 855904147 205942553 523211837 287671405 832136852 619917753 872807531 319946099 809574111 691236189 912749224 440335119 772003800 671321548 792840666 332442261 400620681 393401118 441303086 240190779 346740727 589120785 879633118 219359019 971404806 511584499 539768875 939075396 949615392 83285576 286183560 730615219 913953201 970677318 978368998 639600208 678112562 177229270 232365461 801883049 917571471 414703059 734824107 487911949 873979518 598089362 978205950 27997578 125232809 201900204 250490923 105396165 385618002 651237867 806883155 118321 164343611 755877997 990720385 131559545 657390863 622929213 884753874 732141853 960488513 426050957 968073229 727357932 741379093 194986313 511104029 245395756 754974551 414444156 844773538 86865564 927868949 459305127 469478025 78214705 250840904 294908515 418855349 762153893 915481874 990577406 998331373 805191435 943400908 149721650 864815548 792511045 973877350 237532023 466269508 76337040 433888647 1534124 457275611 112390840 219866773 206357362 346593819 903227887 948279372 118303521 471513341 642622496 936412632 335216913 719141694 458561891 634752588 541317870 655316499 646394582 665854249 761582645 874799163 748492986 921244591 503110809 718424524 180991569 812735512 880133177 899952682 241679291 614714935 943218416 960744901 136393397 651964674 582370327 973105448 318391746 466871708 228766483 742250468 795610917 973221420 5334394 744687140 151015987 919731901 956906763 971383636 284412864 582878518 309534013 551466930 793238340 917376532 478778110 851500210 888320571 994123981 403358610 581954139 924890320 976611939 544315144 661083285 631050029 771170353 568366184 706329073 300095927 499251770 878476620 962107720 86829909 864578274 824801461 870648367 218703523 960713669 221861592 400133249 508454769 583915849 952327324 992908685 863524687 960966499 441940603 652956520 513851984 863966207 986063158 997162928 213124292 665371508 302598950 833149226 586052687 817499690 425143278 494835300 733491052 791229997 177755436 453108375 870230185 981956164 73854908 915376368 894011604 963223578 797046133 905817575 26379903 413221113 766122779 786170464 707631708 773771713 259172304 279627958 797268584 968596019 718037970 845360562 326987371 814299797 669241477 821481351 619385876 662253529 406941012 716414250 533562923 636066379 488815518 929070215 294742293 616615610 464431620 797164146 589702584 683925676 46227085 808699967 523575609 680981219 518296386 743913843 813436657 852064041 793442050 894705729 989315281 996051672 209453409 523705517 139393999 208460784 389091174 834521517 707039895 790715053 456592774 510894359 9548988 696616678 463338299 533467477 532517835 596623229 606464729 770782832 675471514 931342274 605858918 975681382 732501280 759352152 78181383 730564038 584810639 660935421 414246513 470071841 585146234 773655916 799230170 928669006 770655801 914746756 160385662 603068613 338730116 545965738 401708381 508375865 682506800 729186034 377493536 814389373 749131404 931216963 811677272 951767787 143659638 354679239 699270258 893096385 517808036 682541753 153900755 767833368 143430417 222057578 440857617 917953223 496008380 703807528 476360294 637551062 720860221 819896922 280444979 475787420 80528676 410811997 763021723 805555096 468310422 875601804 266569712 665181763 832594290 839955327 5291663 795319440 447227862 819512909 828744758 846249458 610102047 959413797 887678238 977393508 718166742 852301769 418445178 832673044 273470646 773458647 635055121 638452435 642994965 875264782 27380390 850518426 480704297 690758956 816182453 928685132 351200362 558853734 276912531 655999282 560592656 771993486 571925128 923280996 88502699 953533199 814997251 844004400 510620575 997727326 769142502 897167808 870315275 962144042 741334615 928791565 432988500 436042426 972472986 987695112 753194637 903784683 192425408 285214529 95591411 166236897 372661793 749987736 763153601 871463973 189949479 966854627 585913814 690176338 940741516 957512852 778850516 804684100 343538124 960346459 366602050 909763649 98317630 301240500 38923379 237655981 425214374 464801751 715482466 834109852 200823131 835865654 600821152 732584222 394493103 928634024 332041651 369455265 162628299 173022787 167230305 341225085 931655825 996686032 947092290 964141726 417466352 488633833 125976772 552399438 538003029 683501391 630791554 845313504 894103892 959168444 847519642 970075003 698171728 718103049 665929139 903729071 690241615 785630712 42501486 90798345 201573237 609995597 366641816 754255419 34898459 378211049 489585882 626126883 337939143 358541642 745654302 894195864 529938087 950852205 922405722 934685967 931478149 993539018 942044349 957721613 629768554 917363797 927424821 962142798 36352269 674273087 824805255 896934380 64135536 541498096 412802756 447768259 492359003 597771773 198842865 921623976 330250874 351716756 787217130 909810097 739578133 919692088 982873572 998057778 157375987 783959847 470108940 844002583 735646995 767448777 65472952 962121912 655354325 725332146 153042290 812262542 458356676 644948457 599883129 882716007 415146309 925896251 139911543 304345048 447941102 714144079 771841093 802160743 825249424 912179300 325558276 574711323 846325257 944037907 376121321 795699028 572389601 958738715 132157123 557091402 784454115 983081382 569448893 753270178 319779791 946919139 584251472 994602590 13201051 793567429 729603896 912144078 314679090 568864587 331926556 734096586 743834695 889605466 924868990 995736735 497473892 762702260 915979819 976146956 281272859 902442134 204387323 956626575 767900730 833153610 984013381 990110444 599767709 667309249 678771261 797356203 661792485 994710573 620195609 865305602 797037286 905265802 123497148 701378113 542161195 770300628 186688985 578175999 747164930 790659509 108824498 155993773 254777507 536983603 576480747 722106684 363631887 471283650 610938366 760083859 701183509 739432504 768112415 926371367 535314090 880778000 328157366 498339313 483140529 727750885 943841903 985714248 648806992 750953241 629262305 689408881 443037929 615333097 225173350 720492155 742280290 750078064 224701836 840112826 516360550 945330678 891160270 931445660 87647345 350147897 796864259 884890290 865172553 892879799 44822638 807334286 223549414 260779590 788013526 853200917 301573299 509853817 929103502 947900345 865516173 896027591 622042690 957770668 563397561 582072839 328575513 419993265 489322150 877005613 836667351 890215298 686169089 915434503 751969474 851316475 284481691 759301912 297522362 549850389 515098843 628720241 145084414 149495655 247531360 320408905 699311917 835187492 637196899 835733059 640500025 976686871 506928395 765363504 689231478 996686754 616233585 631990608 325922883 334848150 529582494 701071528 431076844 860902483 210751726 277475678 522561565 865677605 250087911 558217072 809364344 885507852 758110347 769352965 749227977 941621528 547726461 617741756 280876749 764455497 192506608 438078619 133934628 701983441 808037114 916782140 174084495 801045616 495816281 900215428 226212237 945298739 956322745 986418891 298274313 366756326 511540272 913942420 338980252 803998514 230766836 695782691 686731234 738618999 157386445 861060563 13139573 563885410 508694483 601083475 45988583 861794341 688130383 789797639 359975426 825288706 523892609 939968843 838909741 990210121 711567937 851356125 13538402 258993825 270924287 843121398 855872477 988184791 804216702 909173434 830095596 867377557 253450079 386246544 144024091 484755060 743853802 911620247 664826442 932136194 784060796 995321791 557784301 906347134 349569474 813994142 535323158 867171616 204668505 408080618 925407644 968436520 506185292 532243815 849565497 909699396 574990346 925348955 508838270 963009778 726919410 776909507 194141424 250107776 218445785 953940179 62896288 941034184 244969170 602924645 353370843 794630719 340455174 966090202 793675203 846161388 374018708 479141000 315476031 477860355 751609388 765866806 94231879 730631528 109797378 473915055 620190101 728767317 300027793 928636393 499112532 914550238 84095080 563608895 617972809 956854518 779447789 855642887 51201411 157798973 792726347 953491292 94029492 333452509 828283681 971042398 428761908 833001482 166738236 901194387 292320536 367366838 336084615 799110199 520236386 929815499 634446743 866533761 304027510 806861645 785302569 812574334 69832985 341289055 345340090 859168712 915521497 960014277 743094086 859793480 951737628 969998533 667247814 751839837 994281421 995793542 268585336 706716268 822629111 826851807 96340262 154496110 457986553 618795314 44269273 274954122 709686511 799430106 218122317 867671193 969803005 995571673 224373855 643645228 367991394 464438667 273066128 911393322 525492688 710724852 443178466 929416732 373929334 804604489 750273511 792462438 617564650 890415996 518145471 691707548 549863647 573989728 503354564 777235989 624002948 745210999 773392281 970552521 644148997 871889340 485118041 519151270 99056285 745761854 671308955 737905058 648892084 971814952 648022500 958675468 152626927 409711544 589997122 617959045 930779481 987502258 893395881 953467134 336377670 883222454 799970025 982467900 245004745 667790075 709226053 758712636 370029374 931812118 798777207 815309315 296542253 496084525 751198317 758784938 378385951 561425574 949179068 976109586 159797034 309094267 678649439 963707186 35884866 320386426 29520790 143035126 530577026 718276697 422343361 799434203 636222055 706928409 185706899 613415380 893406855 907337249 346868854 485214400 210681128 778651505 345618686 820420825 501530646 929485132 906463896 985171921 358878762 455490937 109593620 940433995 47980776 855175645 8841899 145220031 112877827 750261895 851740643 953205045 395493766 532998560 305754619 973489684 473286517 600838508 287083061 554394931 346913942 353214689 798104100 919848587 348397375 904617491 773807694 876446206 823868666 905665291 457543071 715540980 108284440 938003882 693805561 755082843 590903127 664470422 372529527 680345582 513640649 918883411 147543554 669094399 317460589 793625967 724629294 740493457 62256329 790210724 841722225 915069868 871744383 952884119 333593084 614090691 120281285 562768363 183361719 856731403 133068122 714941350 285482515 832924179 872209617 899621647 88342397 430438028 598287392 913253799 571830125 773577124 24881452 853541662 865298087 959810467 916156381 924981255 414209719 639689650 5601688 14571484 168177190 530528353 449515370 668139283 497602875 852040692 686225894 781188729 515937682 524510014 109608940 353724736 227743993 246693363 965771376 966217530 252065280 338778992 254839051 971228001 235281872 772455249 715320852 879859608 311121776 544485697 40717989 319983521 487480293 760432300 623205779 648285503 520078155 803036103 917354409 975207120 352383262 889583099 785220412 919769867 615733590 691370191 323527262 486079087 384808276 565484031 496413053 732828499 852009676 896631473 155929318 455862850 785498470 857937374 629831316 898795364 547008937 783988497 438546062 772066319 548660230 619218609 180838334 315098634 975066284 990874125 128099688 492761263 185655583 637955211 155271904 629979558 760210850 835096042 3980691 604416224 911832862 948866845 613941502 757363204 529105038 733464509 500109529 874023543 492944133 822453701 615626360 835286099 387255674 444468883 316478522 468549528 946060117 964227293 791504238 933261793 194720919 765445410 439011096 983356354 164976156 865111791 406395433 631563345 515595734 948636376 970252084 994928951 221851611 318730199 827278844 867641462 966208035 997910390 268918856 285699576 942703284 975494251 172895736 216772736 912655940 963223408 450901692 835318754 855763607 933848284 261337987 790028277 108860791 412182053 718761676 784612508 750594376 924463047 44645944 678150820 780025959 932303201 954478743 957095293 953829712 979665516 416434485 477313821 985968249 989033547 40249187 924611395 969247647 973735274 71233067 304399824 497263185 968625851 742723003 773063117 113856378 366951480 185241674 620611495 875030277 964096168 265651188 865886054 448772422 794859571 931349553 994358227 950359921 967722459 442952154 807862581 334268297 509335662 267327010 904528725 993282692 997125098 14517037 711362529 866900581 998290218 638429979 750135401 89682416 760608456 129553547 330707701 567468978 572282729 361942974 884322224 223329879 339894028 539016382 698418522 784646633 834949932 890862891 986289143 771295225 933789773 654630782 939520129 799199441 922797174 150306006 286498421 833039634 859804094 770217097 955164394 764480395 919560143 36957005 393037932 81171818 942228969 427804996 761401604 142112080 494819979 112059796 826407895 257790741 992709565 937497709 963298182 193709124 618426914 125043695 681682757 274513367 960942535 437877898 811817414 848229184 952035497 917206587 978923510 47366191 774802057 887076625 914573555 361771230 826591213 164531818 551413708 821542004 834525706 666634395 951637923 377662241 934306875 880246533 909696928 954712570 981040873 943145407 953844004 766411391 862547111 817516018 847191821 569540858 812879935 447655979 511815416 639206792 861485437 130238192 832630568 591648018 971712946 837528895 906408587 261801574 362716784 495682145 764969852 615599827 815161744 563855346 631628058 804592772 902010552 168196665 308560184 892598341 976813314 171738197 318118096 465398218 699447952 828439699 844302579 436594919 702242717 354416598 845416789 515283073 997433424 385025449 546485587 653882604 875932470 972888231 989331922 133174726 369347438 975485532 997320868 800062953 968503859 552579751 704600405 626013192 839998810 88906363 260846662 386442227 503049551 108599525 883844376 984811786 993055417 408757707 962763721 424490317 634080650 494310539 801085415 485376802 800553814 400754844 905821780 970994760 974712042 114603962 208977771 896335822 930210903 629397523 914694932 576432945 759169993 342031542 671719258 9291320 653828704 307828084 703951588 276360901 605107776 830252665 979983390 682640491 741607154 573314654 973089107 40444232 779424351 266687136 484901652 53768934 123808966 557064376 686554235 885069624 901987853 764541537 906859996 218371943 357417800 972531362 975134283 53858481 301345392 348143493 518369129 923642752 944741427 165403383 739905298 238969112 803514522 729845679 968548440 448118451 944091680 971876781 983120834 448660179 948497323 859129867 916083472 967749945 984217897 104110532 865681272 33508481 34088575 742209835 976498415 534819917 583213598 119128258 555286691 567934141 899132342 934850834 960199461 703202152 884261250 984821799 999428640 681408107 885974114 714316889 822472240 1831220 179585946 661641575 723898133 442186581 497525519 965135972 996629528 995833465 998180240 820720329 899278890 371789125 814735460 377714770 970902995 913143985 997066353 538339693 918311955 840305828 863587439 570137016 662311309 786848504 787395546 619343420 834759401 29187061 145174385 294070848 906062229 710203552 732233553 457330967 976161508 771711253 842276402 890181181 919889650 365691908 500523510 864618575 941732435 928674377 940120198 854938441 962727484 194328992 596188137 643973942 651518497 602276964 719315153 353350883 819869192 521994459 904108576 86777627 838278777 698455808 765946445 762188941 876609170 691260953 947685842 503685601 793045428 550759177 640940983 190019409 730266112 800976353 849048391 204320740 252305527 789701142 988353576 244201938 879849885 25753728 407388576 424544093 694205850 157321048 195178842 626048258 830712700 748829768 899774327 6986744 107084124 516134498 970750239 971225946 973423305 695807329 767779759 583373850 734830670 272864784 475921000 78324232 906322547 148443773 737822461 275360160 727747180 725844754 728024704 563745444 739374330 716484395 821216611 511573990 962491893 325438909 976756609 566128218 761189060 158438896 412542263 138738506 276934763 701292204 925574276 103872018 807072349 265850595 729753725 36971889 43046027 162098957 741610444 527281334 894855614 249405074 361323542 964836567 987515255 696344519 963688708 392387649 622153953 630993188 663693696 836880383 931916687 59231058 993695096 101120137 617459417 958813726 959895010 721265923 938925878 570029966 696394167 644079720 901063111 928990010 949291447 6322654 314154829 183378556 716661401 559211399 620452404 227618953 672136842 151729592 477273252 339755329 522923709 556552900 755045246 626084257 799500438 684822736 868870120 804278674 845142864 206261379 722479642 612436020 782639244 730161250 910714776 29103766 353386113 577602516 741145898 12076578 147166506 831452695 918821173 949656995 975100922 474609724 958801320 113323528 199037486 71271804 519567516 764339562 964126090 475060829 658616870 661760037 814238449 627045023 721090890 190502754 766576936 98894022 959299522 97607740 627175162 759658036 863319855 517055232 756906493 388599489 859973539 245789926 494683401 387361623 767770290 404701969 776848639 92621310 555094250 128662000 872208093 643174676 995383931 144428430 625812983 117133862 656641615 409928663 415874136 903481054 981340368 937154710 979659541 659902444 822341764 930336143 952380832 270797273 349097603 582648979 599706562 346760949 776164846 314057745 641064136 919013385 993017328 848054036 862093572 777729843 923712117 761073774 783717410 669485246 807607401 452756660 851121573 39661311 651633540 6614309 467913345 166313007 298038855 413950865 947964626 698045170 898466279 914091953 984003084 554062806 972218455 236878546 502928361 64292773 279368095 271012853 446478911 420597041 508730372 745338987 915099666 428195192 700111378 735899183 971508204 453422692 889675527 777770482 924960086 406616316 859120814 66240737 70094373 786734464 807650216 653660239 659266414 227480973 900393197 763292658 866543247 437651014 615180995 240443642 539309161 232412783 909461266 300347781 493911408 35549104 756472012 132660658 720075563 738644404 981300179 280209152 406664654 121003505 880095420 464268208 552085741 616417943 649865809 598939631 847425696 195416146 266124067 914445584 975112598 480192105 965809007 648279952 756649643 324277572 799375073 464220458 528926588 99667335 630016690 209657154 367332501 160588083 710768982 960775365 968168593 467839560 560413189 463621569 969444779 284921981 316065368 577413802 696749642 684692520 942166100 262035294 580150925 323390841 899970583 798326059 882779142 765218599 913505070 471058621 895106919 170412258 549096157 299682412 957276264 92092579 134375197 772568374 940835235 175663562 513604351 519026994 785569117 136326305 591811043 692382165 831254696 617853523 691938126 3338257 133253899 452511488 485119140 2906439 498335280 599669044 790030654 705933647 712490356 561855166 644039027 54648717 737354189 54585104 162148207 220179040 548873520 895999261 983963112 547912383 747208553 989840142 998486505 837538076 932894515 174431661 812528202 711368604 844708506 980740801 988405496 99833929 276527752 99975188 433921450 579057268 706084653 913845752 952581580 345441581 371727346 113349177 406047591 962211566 979477387 828085773 943010955 48523281 316895747 146734612 892546007 187244571 371211464 361636668 511754812 84131025 828539949 671491864 913538950 834341927 902364446 660299318 736804405 189477115 329808611 571453866 625642509 684235723 786269256 275817545 339647648 756137156 838284373 511226494 906774678 540243689 846686179 613386820 825315778 635028529 964147818 561888264 948103098 191136478 355452669 470728327 699587823 955278750 980306343 322604782 931138535 973988410 977709681 718190379 886333837 223959222 230942110 966507994 985679521 73839147 909629402 644362231 926986893 924819238 940522279 241048687 451667974 231473795 998457292 169476820 956164732 583017626 796216841 733618309 862420821 365784547 931855071 233280643 995960984 200653725 594034871 902083767 972036945 191656427 638574016 475546818 649802660 891219641 946502296 451545598 944887576 770560980 872923536 868836821 992897973 439613209 939207697 792769258 804325211 635872049 777741179 781883742 874426220 918289623 956079750 620580483 737137439 960977855 972006783 487973199 930191758 741458039 855239456 777559393 873741472 718913106 931306501 670153826 949119937 659464151 730005763 66802526 984601535 821040561 856288642 260178850 724982771 171508009 410610619 165096158 891611927 112889451 890305376 444422099 643665702 377021680 429551706 632128089 736477621 720033973 857210972 189945180 840366054 116102708 935556922 576324518 626061530 848632411 869386458 275604071 576071757 249418206 260203388 649443816 787316706 426341408 644838595 836616975 992137116 39065029 561184510 769664771 810209821 154646155 294128574 768023140 802527711 594217584 646033251 99493926 460520587 68678467 706072435 667339742 810347093 560805423 949650935 591199005 655127922 948048917 967246661 310857425 876078826 841675524 997409408 964821275 981047153 757325063 780674339 319972065 958363073 143446870 855906632 95836926 899777127 385172938 599669061 381284003 452631446 910054384 968463714 971353380 989847569 317130970 719124985 284382421 672340275 656617323 694355760 507895506 983483962 866950946 921742340 605358135 826337557 948037519 949735277 938359059 972020162 670559968 916586807 8254323 599244801 975041315 989208093 283706926 502399399 57076637 482361155 899600176 908393462 175292567 266956879 201221247 325545070 93051543 680077061 642363179 927951177 221594668 538025522 115157646 181667877 84523790 997363267 802097366 819474027 749302466 965314329 934764619 948191833 979621074 980342555 159782916 923989641 258187795 598771870 661862873 792549293 259353800 647325958 566887044 754577843 474943498 487497322 969660106 969861577 274316781 411331314 7501970 16922841 212795633 544972738 34594416 537526998 509392639 789430157 296564322 686021592 711434946 928739076 700810699 906805848 14036817 997983273 775918374 938244244 90642736 247046261 532602736 684327295 745641230 941701442 769779994 780152635 652447773 864864681 460342844 812714985 580978348 627099150 715158570 884366164 755646410 828061739 772234008 997854155 422093171 594991047 46938810 932961809 573483109 884978361 387676301 411329647 291743058 310388462 300346011 752058526 243321251 387952999 112542250 768301252 830641875 865913976 883652462 956784904 517807821 657320556 355859923 365916123 743131568 901447172 310649161 373963502 985637888 997202086 149142315 414929053 404964906 895338831 602347940 602990294 439959328 858889267 895415573 995961223 803998050 827316696 626502114 979648830 249750805 630032890 591762500 844850082 968381761 988929315 131362842 431674172 308731269 466971741 122204090 355807179 239569420 324975966 38521504 133870138 267599485 414447152 549127952 809097116 137326278 648228564 216758113 283205310 505908183 843469148 65596141 213034992 536943948 812337977 981013258 989329445 764870680 923867307 974063598 987067067 324748633 931991367 111946718 224646037 333900815 530887974 294639461 873531448 680978941 690940988 719577645 964632801 559682558 957593463 875309432 959765522 72260039 430341020 535663307 609574068 490124218 503285825 188104009 710800684 976435611 983738357 167715049 201135451 511111660 699321762 222555029 482373661 463150112 729986295 298035971 747315608 856068281 875503357 578855768 835518507 511275357 681849237 202290829 573131493 836995779 847437041 697842075 813046682 771501229 960579863 217514657 289882957 937642822 994148436 43025859 79460493 548370036 927847225 943834154 994714968 752333515 958173377 899238413 960240915 22441536 892643998 807422837 870746349 857376078 954203746 774483230 898831482 321369030 547563448 62897569 185132184 899760597 903878095 77261880 88344286 322828243 427671785 256856185 276251157 781432162 936068761 3122782 847865367 421552581 538951256 655600147 932057671 457249716 523735515 936906531 981903493 746154899 761147352 545268046 668571846 415443389 674631497 170847047 180400624 315055099 517213193 642492668 886300968 458309535 562103657 699537329 703077910 237485257 621587317 673582181 912267085 835341298 952722116 291537230 666102483 425567611 950784131 341686484 780633156 864797317 985316187 435945162 970254707 54409047 377119758 213211405 849479619 293199564 774436039 538102424 989204913 436564016 517841320 299177942 874685658 810790908 859817936 651012235 740563678 536276819 600948524 834531916 973790496 228411332 796662284 538547079 710911088 856885048 874781630 640602237 673818490 918347824 994641609 413992721 440359179 618581622 986449818 161800472 966176957 250014632 962917395 150261521 407481151 159604503 650217008 840314750 977372257 160792278 251604878 489249215 656381645 603059151 664158708 863479861 871724885 43343 371349561 768506964 841430036 744447784 791125485 804125662 868869090 26587664 691016745 86645816 998116673 259568008 556733539 76708059 906434157 614928253 867848486 916691639 952479545 645376083 681250318 399567496 569190552 146017272 926084347 502607605 920489330 640420958 878069573 354938417 613138446 3595079 324578956 229331294 848660990 51662186 855629533 922163492 980606108 498141708 612547741 767110349 996632710 652080181 656846996 577981964 630182330 884161149 919985782 127614907 941121711 982394992 993050310 223555704 929678381 164608804 560888044 931241948 998029025 660797078 726466168 450741593 639989320 985829692 992226149 718133194 860144659 516968481 545910481 611555841 923260695 801703212 912775457 952106770 968478614 691852257 823167489 947269248 997561404 363703847 504633601 557795466 735354017 161651453 223922766 794391796 891700645 10356691 655613118 713271469 757029537 741164145 749403861 798683100 964929225 900458044 957215064 945529757 959629042 978047188 996124050 767035206 972750501 646906582 766777051 996631250 997509776 292912742 425599813 782722531 843635203 553977352 984991395 939894636 948946698 624398760 693670067 935647918 947837865 189123901 664880534 613012287 902658775 68417213 397059192 56393683 69613892 270480635 855120245 392942676 412247360 831413731 835366463 701883418 865869472 221225096 736916852 55988519 82762737 229105304 644409624 603951420 895189418 369231547 406218664 613907141 701215255 359713546 900376421 195646914 710749524 224237087 739556145 105915895 517857349 633078467 926502737 697000430 926938403 721121276 851845356 70166223 79102747 190596692 713083979 948842266 994004363 457713372 694404886 266885216 505600646 921736925 932631255 106665657 626302096 896623567 972584448 361271350 492921820 522821310 882611884 80704356 430124887 647426794 735624219 494336213 610696686 284404101 734841804 957568563 992744516 425923364 510937448 398056083 697283075 441471560 875206619 65919706 251135307 102266330 902908143 865678903 940841019 599898665 852665014 932489890 987180003 420280461 851602408 395269836 786925841 796745084 913905714 262060269 700248404 377563398 776032622 420113582 739579510 691752516 886387731 365016156 715440401 802766496 948125480 153483906 932301955 849413896 888218863 727989531 813667245 214897308 803264192 5339790 825759834 293197580 677063297 63634013 407954216 268596176 402563523 692396485 903880363 261579475 738346858 907176289 997912038 725016104 832099516 648710115 941281257 321899179 928973525 470039666 893847744 208419052 641933624 732507090 965891815 791601628 882200808 664011797 817788429 130996822 360162918 400884791 578581855 364869659 997479852 610319867 890894239 894603457 919576800 802451651 958354699 904438002 976039374 129664730 984086654 234719771 664827278 910980227 973286464 762781849 822321016 365654751 733026221 398371440 491796793 23590683 101245933 332604383 629903244 336959567 809298976 296215934 406293144 874950121 906663580 627391873 704877889 174698664 646491529 97643050 677819561 580630550 985293047 759145532 797059204 245344026 655019249 859568446 897099179 789810968 980508093 643812985 886746936 604281947 661845814 550804292 737995055 985350177 997838421 631134913 860984823 930348569 985184701 313686319 394017286 58915084 434588848 345763235 847139828 968091833 976012981 490701727 686963592 587426942 927381141 581255095 707785022 212008403 893536517 370043995 923853970 372565986 565175583 191811959 990343714 962127972 975980001 385799612 498173069 745634920 768005629 410524492 508784185 656467814 786517179 415036291 853409202 831734595 959947041 536445045 912460741 174898866 923784759 310893543 866451372 423039484 874462931 39908239 946727544 820601855 992877989 935824588 970798376 742890800 924181485 993023694 998201702 779823398 831366348 900548572 979676555 129145231 322815386 797497911 981797164 247165250 561808474 511208327 904089176 550297413 557552417 407545213 825899726 3401156 171311515 494690733 905890330 249994112 889572871 73017868 945502000 72880527 757129771 22936623 863539282 335062539 568099969 226693696 487018041 876019950 950320162 593405799 654044770 735739727 922631295 2260284 492390829 142268489 567300417 313754247 315391430 365972001 938688029 437271397 930661268 526876080 783763538 791494472 888461175 147960034 675607312 480621584 930489246 651206225 775028839 929965009 963938195 161513437 347980372 609047346 876684516 151750416 410614691 253372463 278815185 628013676 788064941 643178010 969087762 211845304 807237046 856543634 898244755 620414638 849145070 910419540 926114140 528898183 601978252 859905921 895850158 816935802 958693799 822056025 902535919 634307745 881960841 730099574 973000760 913567695 923993468 759573288 860698733 606057800 995323012 2971847 316766904 213430267 608765589 261090114 597956499 552255727 960575268 37737471 303134881 481491581 683435319 849533920 908647020 541195418 655210949 25031749 284634485 652956264 975142495 421852070 476562373 28081262 481160712 761325455 765821151 913946414 917337687 740777171 991641821 961136678 968727444 321534533 988610763 720768563 902181404 632193652 635921504 752765309 834236543 455694570 721893067 891180522 957541031 804320145 875941258 36351163 554444113 22417745 992391663 779093424 992103516 622296859 991892648 649892913 703376085 245957144 953598169 541795980 691012061 682238792 790954169 241180382 577596044 1138628 592067745 447506376 541708286 889713310 980586039 853236365 971265395 547391561 862549114 640098581 687674967 345958067 867421413 152064837 189055205 217511119 829331632 552709359 584818971 216302534 464640975 681827174 753971622 481725903 985392450 969233143 972781942 313236459 400271544 786313079 958155065 663288682 766293782 772703511 808076160 599445903 944490962 471559694 560739011 679031163 797640437 964990590 986337428 522557054 967889838 915886904 959445552 880440571 979118329 587109591 866264464 179725008 722350701 805611178 823011489 40384586 50761059 842101550 864384640 236878374 903654901 430755829 606999213 913122142 987676333 65337635 265147986 302160421 684099309 676641561 931888761 612404178 896597471 990433938 990556796 386187804 518735069 843352223 939815586 979680986 982335602 687258263 942106404 881546852 910838036 2634281 542094921 246278185 474321454 242091448 572740014 642094654 712797522 487424023 841812926 287074101 654648180 98681156 963879277 899117631 907750860 720973782 801981155 673123130 843011062 504904323 566578633 861686400 927667613 681028449 864726268 40048370 174948601 251628482 384848913 187942587 458324458 661045879 942794866 495026920 896593913 356591110 875866486 362156482 980375925 249284714 255876427 800926687 842038061 340131321 366550487 470897764 753973668 285764194 313450618 331243538 882414598 450553174 981488243 577739888 734937562 669325881 855101834 763757203 842109277 817877466 934324972 387269107 975865396 110302562 926627550 288130254 328945246 43006322 733355267 555754750 755442175 980622141 987574556 361083027 432391181 444646956 670761492 671837730 843301391 528205799 959148857 49931053 262364827 526214394 610816965 925090664 992323307 595716759 939060458 608847018 637496233 743907414 800954710 709324181 949559519 128174489 842840866 283342226 603635940 432849354 445772084 33133776 937622073 675384311 733927640 568734374 570312662 437404720 759834454 484544818 826315245 242664861 507228649 152768090 717512734 775772043 901148971 189751311 640339124 687577879 740889073 899897249 903522454 830453189 925821036 930690104 952200182 45988362 475583803 503735998 577807540 785893981 789829278 694437403 884611137 133410438 401143067 205024080 960111657 280698163 414267597 653937349 925102584 671704693 838964504 554524979 591944727 737097088 790392945 611472738 880882003 928445669 976397539 623801526 877717675 376698925 723904907 215979853 432639297 192328288 649241544 287847464 815569074 5217076 559888161 644882972 742466157 568739428 641179625 6257351 108209025 887497995 979729534 870923295 905405938 708394158 986483838 200365556 840518566 797268821 915485841 200723049 348603453 853124834 880766794 226576469 936641594 160306049 510385602 289889453 539508340 923190799 993044297 779656 647584404 851028025 868950374 753704898 775516842 803932668 832131928 544229440 673169742 650363504 833741227 408119888 750707800 377657684 860401980 854892462 858467462 840444931 993893915 851213110 915300421 149850759 902130382 939777746 951094420 910525035 998882417 317925540 967515916 103217685 470037642 857853934 948650743 141686891 189929960 126539066 154539555 661651868 953586715 341764333 951223041 847215827 965415362 894064814 912365150 441725665 802418362 694863042 702699206 650886081 984617838 485852920 587026204 347926021 557455739 215612635 832194740 180471959 817756281 587074466 675420404 288759024 664222451 21056373 776519577 604088396 888894089 918564077 975938145 998085266 999782732 38211107 702644861 736677348 985237968 84349422 811698188 391671050 772198604 836956015 926763689 912557672 921281449 226462065 968000069 927727145 998004992 993271442 997665283 932045415 991921195 624085814 675758667 368014943 624027911 448275249 473411835 76911548 461478541 429079180 985993133 410109080 861224544 442201431 647165898 34611258 362147559 87093871 949472681 632053698 996757858 173898904 615285631 708976151 711359113 213144617 811323963 324254215 413594765 228355235 794427873 681914708 867428554 723157794 985597078 387666402 898506540 227493745 648961495 270743493 988197969 866730405 985213156 193652662 639045572 316758506 715311026 22259969 281998070 205575755 329836476 848722404 966879063 433602535 973689259 864713941 913955618 900183829 948094502 840765401 952441924 986896271 993096678 49343270 434342523 276533489 818165249 628888698 913127013 662199359 704775725 177183131 574168281 98771622 114296671 17332903 61761021 978519235 984108849 247305545 753933971 695804001 901364783 17381257 795562108 199938290 819694813 90070001 757462104 439640454 452822754 434104562 956801761 707011815 991035255 982127531 999491447 762706436 972279870 248289537 931122435 451604764 756781777 276450292 807846648 122280416 516393800 656800276 895006742 983516823 985333859 234451106 746588409 955795653 966186445 173585002 212963773 353461564 884417753 161660377 595575874 852102354 869183371 487760185 589542321 26601921 261842468 991295805 998776251 15701310 464446020 357786852 660725636 972108934 990077526 313622006 549373510 383631227 768779616 411539852 981973239 463724726 905466560 225170562 561564954 780902909 905023951 896824155 977349218 921817968 961509633 39803418 496005881 158583292 288240690 87268963 864446371 618306394 755827541 494885090 629338750 5737955 206676190 278088024 657410845 651235639 772752915 869093511 949354226 826741195 957693795 412557509 916145019 766981819 882805100 865344115 973196671 973929756 995326531 214400447 611058399 251059179 675584283 374689713 985112834 225464966 695319060 78677322 929470561 784469986 884500688 797291506 941434608 457321656 907395839 209820040 339185488 363403678 682240117 485057822 568573627 241748200 262521475 767923910 898136732 118769042 517313484 620572326 783360787 608151912 851240005 551878245 714460568 157614703 900598314 360583451 591086095 510149080 864913857 579673939 633035966 571748744 679741891 46717720 902557921 675185275 864701023 964625812 969608203 12833891 172260919 771183486 883291478 850890011 969863907 521322564 574776992 143533315 294611345 455611337 668897506 536110257 951141328 622055293 976422497 648038515 741168845 664601545 919330454 172943092 212408437 940983585 970803711 349898508 860919660 644653703 781401005 635387029 725815683 204089364 658680346 805226683 881119303 404926629 973836133 990230545 996515080 439868343 671820978 998626671 999181488 157325243 775112124 191762985 739848874 672466839 984640967 633573952 942116324 67695892 952250099 685187793 785220719 271297589 297918922 818299111 990634617 158492425 765408652 566115297 970834638 958383981 983954777 208012766 380243335 352562597 934425981 754305970 957703854 97075334 650274192 14364478 614717901 775483618 999144208 492253731 559541465 479771129 685254074 444050441 523515074 419255913 633085461 10548505 665852790 923709264 929323126 104563944 797632798 21670709 570826419 598203476 952062397 556843979 672798400 55291583 853172937 932088322 999387948 705475988 742434016 676230143 707935697 136715676 308382341 728967390 762887877 599364273 777161602 416668307 988839370 526170119 565734570 565530385 683205375 815353571 898993699 315099421 471297340 228121579 569409933 76925002 961245787 563162112 702714796 714550921 751767622 576572428 665499218 164158146 899918191 312648854 797831126 846916572 936969378 796557448 974376357 849214375 971959544 700366320 930326584 56225109 537797625 493363563 526930227 388645066 901638843 685836600 773258992 494812656 721574299 749644955 794084414 587961020 734638294 567990878 851732866 135876905 166175838 145292553 261518127 779780973 805188937 481343156 806831445 491869955 843354194 590095555 770940316 404363515 737910416 179435863 654534977 616835314 635428618 462502427 660883470 15953238 506119595 595066832 653735644 334606438 386994961 858273560 880694507 337404775 967389451 580598342 628349298 982080260 988268929 614878588 718318537 176857999 839853491 316844207 473936157 737800949 769237106 762776750 814393046 650617042 932179772 686683751 949836268 838445597 942464911 653142989 929460431 159201671 205363773 166983180 424414927 779351260 885675990 899326978 899827238 760763910 963224492 386490723 861958133 709538335 800767915 774488263 979396215 533903062 785466524 48809121 983026407 477927285 633176295 266720466 646874712 962603487 967955490 802820153 807365586 960605230 998325471 771105345 869392782 664104350 665353867 167793621 729408081 443668723 503247804 700621639 910686957 989479314 996278815 165258639 822940977 993684796 995026616 488041464 804070236 697874761 811211741 989254972 998396324 345894598 374895316 602498713 627376803 333531063 663349338 701699469 968737588 305071684 821820555 405555064 655711577 865376180 895481029 937167082 950475722 999342509 999678274 153859634 999573654 990300042 993317677 479035880 994942866 232908968 674825299 979767527 996890018 598548448 723352207 49632249 54221853 248994613 788894598 758655910 858659100 813022195 881022256 710976118 748497709 489374649 715850165 730686738 979526592 292376094 839983090 616642008 757944900 377217025 790244998 331535278 437555103 147690992 272689291 969743035 992358964 905027285 937411810 920170734 928729076 903264742 949831043 133209594 988773698 229643593 563392375 645380467 842042405 622240162 819784192 539472861 962581152 939005814 981561634 419956959 540490939 557061233 711591182 257969521 283610996 224087717 746385634 262274464 520911961 71283690 449606452 934803315 946311486 888625487 902170293 768725857 971025953 454237301 947885506 288144668 879031507 499113154 859367874 623577746 865830293 375864362 540083561 44120968 684275130 652405089 828669293 53138763 163270064 857888131 882343782 157406296 430497965 123615347 570863231 260307258 388664237 160205091 686394277 666771633 751787851 401417576 478018017 107549568 641477885 198099928 994223677 10073775 554597894 78714412 986971732 615992606 839180110 816642434 879825693 555094483 995734418 197665173 254846278 953427850 969244676 280520248 963851572 112311806 568455470 191600543 394237977 604066602 699099130 547679042 667910032 95852500 790608491 945978246 977497817 333205797 714000081 96461015 771406657 724837630 861047087 675500609 700701399 912365264 941193420 426145483 661475468 793360812 794136442 906386803 956528638 202150700 629125266 334744003 393558874 481696431 819930620 699553176 725919619 287300157 310066812 987368540 999132067 670449469 694633777 391929547 872164916 865501481 905454642 221208784 616007165 447987322 619080830 827126305 983975899 668497282 861568414 472382728 476838347 901538519 933777113 958008054 970837270 235749339 467739843 140630790 314478835 689900990 997497789 724867777 880534853 961545515 977762990 815414076 847181496 527948602 602983256 484103166 759363454 450171553 536005246 502853639 998093588 554690796 924130583 709042060 790380329 741376004 969240029 76694619 105413031 835980335 902925823 454479600 587707808 793992524 901690466 927061897 928116216 378823370 742503961 771231270 937729337 824342458 892142797 15099452 787827411 442838414 528972425 73020164 519308566 110280451 768585011 863350257 864615113 606240961 902469181 299107966 659656764 266820084 435360835 30712942 336429595 131745273 922204273 508313719 782337482 230906834 686992191 488155767 631284127 761775395 817276126 557555483 705580543 479990839 819683767 79621121 511527593 811525540 835710147 63707493 511495057 313423553 378526111 581037484 589245633 398111957 525305596 278760273 708040360 47555787 382131160 319834776 752053770 440243760 479982280 650748206 897752266 275460298 423060400 75904984 673363170 622708376 746281645 724242908 771333683 804571813 919631567 793049130 845739551 687167891 799390662 227867515 323541508 26938905 908489707 653990089 903066141 503134257 630199313 316162855 929700134 780928124 941939447 597038766 882177906 544527261 722295539 518873591 563989823 153923127 418533733 124981719 728284206 74206111 920063020 131775943 756338089 3588276 351094115 270278336 292940253 511042013 720919531 548499821 718983619 792016740 883676124 714713734 751112549 659258900 704099360 186727913 795116154 583242761 798150785 562204736 926142110 79073288 640001819 444078848 656378415 967180808 972740572 733566812 985416551 26348339 486213733 644545839 937440033 558267261 882854611 666263345 719663619 681307182 996612554 363284669 845110626 78147343 191112709 202452951 790117623 535971117 870778404 182623651 567332064 437990622 716268272 378923759 575180188 503759948 677879231 785471150 868338490 146836269 920804780 965288097 969923242 17955063 873498797 171831799 267067404 667163764 943408425 539679138 543526108 520813111 845880574 309943718 866604480 163099675 505234304 345787719 652468372 920665482 949701567 819192303 902893535 925408479 993538587 137769563 366197222 608028684 650672282 369768960 410580133 536670949 722947507 965682385 972703000 720726258 832129363 43962849 706781139 386094279 846953043 378822731 716878652 421617504 974232112 463324440 675710745 21900787 519562786 533657475 829972966 245056434 751814080 195771067 413301957 173190327 471203536 785072405 826419495 1973366 743476036 889667211 919669986 328121317 963974118 997235684 997278706 786554814 893403401 741597380 864885303 272955553 825124540 200280051 748832374 149916224 737257686 743719747 793278954 865206392 869851849 608207353 813860785 615901191 677157088 240056503 402825263 759933149 814325458 263466220 668233388 792152606 824116122 683424330 970045741 583639260 803677587 719700471 738371070 707033516 920264783 782877595 945978794 115661776 386391696 300002681 358914207 322907568 844917142 9942616 197521016 424773048 792457441 623597605 802460344 169441360 395438498 538535925 594948381 749754517 786439617 787399597 998559820 704561355 710037649 273270892 968919431 220497875 731044960 7010107 214584315 44108193 344184451 379187620 524168309 38946744 926781752 992885240 996235566 719167187 893192686 416355985 758306791 585380479 888024294 814737774 982168499 248981917 283253964 420847358 776670292 814435550 985076487 687299118 953179680 845866629 978869629 559300131 637039833 213356405 692533767 797191547 830796395 834647195 941592481 509311513 901136742 591650205 802060199 23175027 258933484 580161449 595091533 163819987 323071066 230449148 408014915 540866906 602345453 980606440 989128135 248267108 810292293 930995068 979196778 641797168 771131048 386230108 816268859 221201316 442290417 441120835 728309689 431846237 702662140 664434004 744151455 940531400 999828308 278713865 502969858 953254208 998452634 517183542 859396819 586791266 677164840 597578637 724755999 179147936 550192083 212163591 318332726 636620901 956417505 303987093 920755687 923732301 994294185 683409971 860707720 152430639 570020060 276824183 926879337 982402120 988047846 840455083 905455563 59450506 592795258 966890418 972864495 586396240 720519381 881064765 941103216 449548575 912198346 638482770 781224911 856751528 865200292 136039401 148328965 763875778 969350998 732781541 978192116 686448561 857154423 201227511 477972026 840971469 962869970 575681246 642529844 202967889 996496802 307432509 989199000 642423037 892711179 114403656 648075491 640396412 934254035 658290201 853374371 832226582 865394328 217574635 722064618 419310628 851116489 498146420 904727350 214176166 353648796 633301116 748564933 503132920 611136174 780182647 816053451 540146951 692416267 811431243 875613602 993489789 999819196 808067206 976481738 763405629 928263202 848803878 868311141 603547457 756227084 398156484 563498024 868019283 976852356 899986716 990249720 649418819 769333787 765363175 844428694 742562024 885961995 715649339 975158625 45084469 662186262 812794582 989242886 618810107 629288080 164525138 497885379 654790509 843184117 320420706 939651858 372560570 518859657 307354982 428584278 287523531 600989023 219116178 293333869 865821110 923283614 238081028 823293567 746534262 803206829 336673903 340353857 289616820 891045484 308978051 728876142 395097584 710450895 990036904 998306225 925450732 948855286 204036643 813973178 847564072 868244853 36462960 290287615 363365183 701443941 647740029 696216228 311643958 322196967 412339731 706325772 19940384 676621572 700027916 798714126 259469180 598098432 310718283 999894656 793995348 982752910 448834950 575078844 64967976 994805552 134834680 892611755 402769453 974278130 360469359 521935152 112299567 782980245 476121661 963927445 658370021 782461044 856453914 992027555 761836623 951943590 945917272 956683825 909809499 993983791 737987888 745583425 814413385 853955402 350582552 978852711 696095151 752549579 351756815 735724033 913925420 951355721 496269754 678801227 926864581 965093544 292223735 385210247 755887278 863784300 876957596 990329649 42423603 411650594 875772991 966305123 303426674 872566693 122148793 544004974 228432868 402255102 43192677 235999407 305416270 852937628 659820263 688706928 157794128 819778709 170856306 349051176 103216139 144935196 227241065 812553889 514485444 531616522 925142657 930729105 251588196 349298328 90714116 771539928 743462624 908003418 892774158 909526332 721259505 947150094 773875832 990138551 784589485 805867211 703474961 993957940 788290322 978425397 327631258 989156336 677592453 768585747 458098197 911636340 420555991 509610744 515165038 633238265 343844889 770023199 823559269 916944437 320761982 527003936 991580451 996677080 212795043 282211769 551087720 709582871 788639072 824440214 516882559 621486659 925750304 940902399 638096746 676191252 101059503 885582811 867461365 943936375 891755025 914931009 470234775 958930755 51513761 382066437 948466400 949746360 712329771 909132544 900495340 951232111 770854782 817248499 973555512 995581231 743796182 976098121 474565019 766826924 80185492 321805734 734355315 912370888 482508349 842197636 415816202 881773723 508884383 776202216 590955773 741059669 416823235 589958463 895137174 903863511 443986745 673866724 579502691 783021687 419728414 811114162 472793346 876763497 475856408 963496338 31625469 402319968 172677922 733432637 938037797 992141854 879855405 903696455 271689353 539981649 46819279 312770918 444493565 674853473 365445935 387575964 249965421 899522549 453312710 792967491 308117483 483957242 867848659 897514913 183395274 991348261 674299110 979750542 630086140 799311768 998671593 998991670 403680830 505431963 603992178 739580261 289380692 915658391 863257827 998615037 995028118 999290289 651993834 841203538 624190763 937804266 701849283 874638471 107743209 302940879 45869433 236375352 19607352 906259148 659619337 811077236 161096895 347425807 340500601 644127613 713814544 889367856 306478316 886479964 236780939 298593874 135103374 726175484 137126884 994377995 342725828 470917558 224306048 944332889 32411209 781596572 351673121 501651572 99731280 265207882 646810758 833496544 990413910 995728723 678772561 910786767 32222117 444162999 296371660 472333213 351730078 651356692 297288483 760040703 969570628 975614948 428895049 561485577 542310778 606605764 139870426 618484868 793413802 941182855 942650049 971222363 789930562 989817583 410475887 646749916 508951477 883213056 744652051 876293545 752664523 800529415 379554647 693757471 370449386 585071305 554047007 681213804 845908028 875929487 656111497 993930919 277840129 962259332 88333079 529949245 7683409 279364233 493069829 773970875 78148268 529170112 116510651 383944865 91387629 676751144 545887678 863828308 72262423 453138560 72373281 526939247 232229156 401649736 267841840 476739310 903582370 922126586 36720500 995761146 214892210 551295547 372445097 875175744 417780981 836277121 965521671 991652713 730408379 888359196 941750523 982193383 489695309 835798887 878534909 890553545 991725373 996982565 310358104 850482424 106944613 297023539 303547597 731105969 629212965 870097812 932393390 969028140 328244274 556822758 502240991 644463793 523923086 701135523 362504979 879800189 402054353 486328498 186869444 780229564 668637322 722752259 591883619 850052258 62562691 474461457 388100424 964870862 277899199 372936662 515562420 889215860 163120791 215251167 88144774 220067249 145539432 509783147 185599786 890006989 860553475 909709168 990171927 997483172 723497222 874724919 243877898 694730270 72161650 298358760 116261986 294477799 326716305 936445553 134302772 995802815 304647149 363905685 682551638 785193190 561584957 671750802 913177115 985895824 198859301 728228374 98540804 733627394 637424930 990880137 627244271 702798490 283056864 960575178 576953198 970120056 603131858 610680093 100784973 918433195 319799422 681980679 685694454 762980561 531621465 734930687 537555113 698819493 754737779 803829434 734853971 819895123 423528384 747847082 235001035 938184052 831432490 903201797 923224362 972629995 551778964 658601511 816771850 968778378 77617636 497873620 934010791 968579538 720578981 748093113 437093183 866778130 691651148 991213705 581154610 777017063 547198117 927868939 915065179 990447110 141251020 506737356 25490111 486712616 140165426 480270790 890447287 923239095 444647720 870080665 115799396 181332851 257227981 274335781 878416397 889838354 474223491 903149992 549451457 986359907 571445567 733616274 245028778 880401089 123910822 219552938 430985953 793227306 602810699 905069775 988869722 995942369 861905205 918312706 259761121 841339080 138424361 316958940 631203856 886753448 499043098 763644589 460412356 549408413 7269967 132851422 374193072 852586344 478804934 919254330 726812245 809127717 86826090 784950152 251351048 682227277 773415061 853250806 981877385 985989033 135314742 484680024 626356679 914585552 499760853 833325837 388939925 633209668 340326536 404869842 664854278 998103732 913927733 967891846 76557777 826338576 147527886 833111106 393380027 622060222 156075528 729461605 240816695 448567148 677407613 776699693 142423745 846970220 309981806 382747172 232250176 430076526 41621856 746916977 908694082 948520976 728178779 840507152 592470671 848119639 905949905 974298340 574346740 884877834 746658822 782946271 425860220 862648984 954012084 986120974 739406639 791770914 971086263 993466948 326517039 429919475 352228928 647514271 534115375 592466527 521359987 598766804 143962235 247799735 271533655 501508479 937442809 948805297 224745823 808723068 317516927 503386461 690165500 879280807 592758213 877525583 365601786 716640139 805681628 926575210 834524935 917156035 293401835 691315510 18602900 852538461 758682525 851489461 342631189 361315335 772520486 986754357 988312012 996597929 717240172 945658880 969406190 989403022 256997262 931233347 665883452 920695703 156214537 846119925 127511427 310243622 346193731 655942857 684618312 830664143 488356154 559105567 352743942 664157090 378630945 554258543 520099423 535739502 300791136 341164017 751555172 818417704 631652566 919095356 895898235 970959390 816674585 920310541 561858752 761793292 975081478 998203364 870986080 881562474 48414496 392067006 596184440 932474943 902213740 976457729 139935314 664733439 620039218 808680578 431116582 803160204 113877640 435122502 122765768 433865109 590132277 788158280 280097686 560701501 35682206 37819432 397388149 527022888 231181598 326572363 318451009 939726510 695846825 901946239 411996364 451356693 509285657 975629024 15765610 537969824 895951980 920398851 406341547 705949148 616513913 811027507 823387608 847094194 448676503 525927567 252352122 876739987 835170018 892277475 932255337 972626593 174336686 787020002 673051478 721151936 391398082 561469974 761892406 990548771 323818286 668149527 897633623 994424713 976908415 986376458 96534850 468638058 840530847 951303778 916017362 961996104 729956627 977739092 316950805 601010979 788545362 894004240 664986848 936856251 74789488 215025795 735891507 756808045 48575438 327153619 918788586 955433540 72164556 352569987 629486127 821210057 829833458 955689367 492716630 650237949 770964668 887862618 379408519 688080328 880384164 962084077 978128494 982051642 143128034 344611800 817423055 822679241 581860293 591221631 287661532 544223630 357652471 926769425 535371349 621029867 748077674 771360693 231165391 651442936 552759977 581291497 220982180 610624059 452204059 502385180 183827150 835389073 535804079 728061085 656749607 742540065 965731135 981805450 633494829 997820441 164723000 915502042 359697062 361247573 7740116 984788553 966009124 971663543 230961945 379988095 846345758 975492781 614601617 745407098 322181205 778132994 380033965 422775194 41175088 912285654 372408852 990267449 965575256 970237349 432239061 614454859 430514402 876146073 111417580 973338545 677041977 685398117 135229560 734097794 272789253 532455343 842057459 934761010 150714486 319097918 979135731 994314966 538422875 777208109 483665694 611078715 358374440 604185065 482622600 966696800 732148172 895435650 192972893 425030621 859697495 952680145 12390044 583667812 864614056 971047784 605565396 691730283 271664633 940622358 694936559 764636829 521101480 627132808 606972830 998659912 175551392 256662098 525888633 912315987 312395659 785769722 886634865 933637786 246227108 255694319 605240342 736472005 548141084 818197719 863328606 867895092 313436030 816066674 938569663 960788984 772313744 939040486 371137135 402659944 654248066 663686045 832467267 847993868 486617758 933638049 452309418 627839479 794410575 981674337 593982274 742317437 77492320 274653213 883407433 982310878 178890422 345420812 233814888 595390091 178052095 296997201 345493668 569257454 241358024 595635374 19939613 939438842 912135096 995707611 836174581 915129917 642531804 663474557 502400324 613823134 951885831 969301184 213689441 868019725 335717655 716329484 577187523 952534391 514127546 931818889 149101324 251041254 690264703 999195438 786729583 865410583 968007422 988250609 486071052 923311450 965190988 998301593 761174946 985783059 576989913 928422986 50319093 246236980 840232248 866191122 143541268 979130627 871665074 908903946 816266793 887190208 239917463 813245557 634485351 635015171 468880765 561773262 115922956 215483309 415192414 440023842 242397604 768320519 682632280 868888297 350587301 386997855 134509621 584766800 142159874 950885484 647564692 852051410 432457574 563631195 421163936 750647831 323000839 662090984 187106711 911981187 660540000 874838404 674247523 865169166 759873881 806194914 234206595 405907778 641916455 650164412 487314110 865999190 409952359 968438577 765404465 831798153 388551455 555935387 72060378 441152135 283186527 815369933 135542468 346167913 249042339 382843990 929239735 985943860 126850706 812007863 528321074 679512962 514852603 966829497 18363979 981257942 867426513 985652916 623827538 881980857 917848865 988743279 507786312 958208128 960274729 990122115 476401349 934756190 688830988 982877404 392455149 770489029 968136048 988969420 599151094 716825090 700496824 958607108 477258005 815013962 432691410 609693931 344662025 584655224 262079412 760800679 505933232 714827099 313952718 370947765 496206384 741112991 24306028 980739642 531629203 680089540 528028757 689087574 941005760 966194582 619960761 650785632 333881183 937778847 673544862 913435457 196292085 412035699 353642630 956752507 425612099 728868478 280662018 626506583 369188465 524309622 402556210 762259642 691420248 910057870 118600001 921055484 226032965 340507271 343180038 435867255 653131008 659248417 598459679 793486789 753061204 802950553 49327498 408167162 325414837 759832610 600181813 805305838 106641845 447049249 398647832 751453984 854282995 968177832 50669807 275554013 803143148 982969302 599532535 624073277 629815270 979964400 293362528 468243515 12125920 806466161 139735721 715876432 214208915 777139691 839495463 865679787 35233280 347393183 290838625 528955188 367615669 617097806 867981555 933942604 280663608 434441781 218581725 286432259 227550938 322568840 859569651 873132268 129466904 641081689 214298577 426894839 641823724 985661019 960198437 973793099 231988431 770762339 754535873 878318789 726906849 811631538 180866977 596632276 777254741 889139509 822128912 891260114 77806040 703085196 254144975 538542456 977056263 978138463 759625721 913073818 680100765 924149221 739414239 759895880 55405181 641856448 3848169 353011153 637721549 838232237 75889411 419138987 574497697 855721187 559598449 992655665 29409503 385961008 702417879 957188460 761144995 942596721 200374909 492181282 396536757 931081493 347117822 407496314 989754592 996151437 435947392 637120826 689906403 992416339 82735781 145995795 245524111 369198128 260449452 334245397 537687802 596938080 719881852 723958959 219662089 340362753 139645401 965908730 423461170 513412689 114773492 690682196 816429327 941919659 422534929 491867848 96017618 255373425 516189849 913290681 665082217 913181568 609111720 995867009 771807989 868073748 716560411 851117236 10771121 180997735 155489827 232446513 646180804 829004816 302736862 645523640 515614474 979663231 665960134 951199221 730898207 849082335 250009814 351847567 848010736 982475180 301991109 558851558 626842144 845480619 822854098 859498719 95265924 789620402 339428199 549272151 54344219 268208596 488455933 748690426 240850913 812178169 317841197 914767892 275440337 475488905 809973207 826847757 90147315 649987354 721888005 923430427 926073353 992763391 525486497 819348381 834767321 895413240 86096993 857403076 351275043 744901348 632975006 759887058 892242020 946840342 504605410 663007128 976111009 988775359 535206351 600717602 675559940 806722707 272961689 815143382 468782709 999871692 545862820 992913425 451724001 480451777 986726301 990144272 671668411 690487319 520331770 817294385 439603128 754145329 680936273 938996894 67917543 987192121 578846230 757786272 467965642 655151900 745703826 904207169 732251957 988880278 883474544 971330918 705212072 747685329 458072635 699953122 981634754 988375028 767766138 800884321 952743563 955666187 561996617 796037939 274034186 777308005 298598365 512703692 793926502 997497342 76912495 688585540 231805162 836415794 298495917 344594954 900714110 959053124 239265363 309257002 761486797 930637086 552602872 864662826 605157304 762541482 159810615 192502108 49778517 282584738 640419601 917039534 698910480 752944070 335703479 757265318 549429376 605453684 277064555 625926061 578868284 812903855 422891302 431414951 697947099 809508938 656833125 840282073 452384854 524199426 473364471 794961565 294445740 926101007 282108438 795050150 768682693 860672903 818049011 979723408 621237297 901048459 892146822 996774166 9323822 408663595 558954921 586521274 278331301 388665527 391776214 906623722 7030027 441556274 702776544 867264786 944148503 997642769 186246095 658278564 241478509 878823877 822427594 967069996 309580973 628777731 262617798 417518836 766335617 944078737 345633605 442198431 845094502 930377058 913832408 988687941 939227487 958371984 527782732 917374005 98835152 539034334 854881695 912841445 790639286 811310584 382460 474558167 623161705 930674557 298129010 710822067 798965348 996982656 494064463 699230246 961048977 991084689 23750291 509535382 91747758 846000633 6381491 459092321 850467824 895001717 146151938 201591290 300008752 818405626 254757025 966654510 376600529 618986271 898768260 991545781 772358989 801492025 737341991 847462248 791894603 931565584 417746202 731737612 4715679 839113737 643961386 647333538 100523751 204920247 562423645 618142801 902035821 947572620 467096394 550310880 776167305 780103187 380897301 594892213 781236138 806752033 566842988 665477896 454764324 714890165 561564311 588821906 739600196 897382332 160044280 713421126 691732007 917903224 421208866 905915508 804313184 937527773 176494597 265168493 543358285 774883561 860834037 887069907 16316353 788526896 998392715 999482603 312132490 600587352 321195750 419268269 170961015 191367573 617653503 646360592 885961106 946736051 836060731 972692440 708121784 903310327 543028379 670998455 447478125 933477908 707225090 915369726 34816279 740829363 945334279 986579386 619751932 686398684 205202558 316020621 357374033 836642591 41628633 503066433 692427163 875761330 479247798 630559217 239253142 677283906 843397845 868809249 143002664 840261311 478339698 656935219 166246303 599227853 375072884 773873758 677949622 853763595 970151485 990791333 882052009 884051602 850549312 983525777 475084565 604564399 467964442 920998100 46385601 243133621 417617168 965880215 986079904 987411859 135942118 474254310 67182219 650245545 633552637 850547986 414094322 498317007 601322876 983867152 18231519 766123721 645204062 854563070 643296318 893702600 408852297 678829356 811682953 947804304 61664771 290537019 381409256 405131559 997002852 998397078 129606876 721998352 699734555 752043513 341825065 717885561 276586013 464233603 505957300 565265461 138292099 232141393 960110453 964187276 877311006 906506007 648501960 801307722 757046313 988689372 940056216 985537772 353149991 684707739 565366613 852525869 363924048 896559774 870451469 957879850 758305519 830441693 357445521 568051742 596915759 760926565 863106335 963269189 442605597 956450091 357826323 481453852 532428201 791932353 530832084 584609622 10980316 964332859 468101865 503351564 159755959 393671327 783937867 829767441 130228252 816664167 172147661 513812351 569005272 705265946 254768092 427610521 620725325 655394665 937112763 992722305 490313169 515309562 661026535 827548451 658385235 958601367 134539260 964830344 623280977 839950038 598379935 949681368 887673212 937483161 404199229 581666185 212795630 652228764 326405318 916321355 936536448 967211405 1694673 26596551 417409095 733269430 553151606 705573817 523758744 755231795 420466398 471109792 804681061 889701202 675825982 905226303 628719947 751561371 52613306 987407213 691959967 948429148 987334165 990424371 623548656 809653457 830094601 843550726 726837289 789484678 415302928 676444485 818952437 904173897 145302520 473477911 249918226 754590249 292651994 395297891 652353843 804469674 399095990 647633903 668415764 749904780 875661262 941571073 72837486 885395067 34990799 323946721 977091743 991667037 370187288 413655587 844881881 939312019 423870305 735807430 705336921 891691812 854966323 968998258 500038621 764290783 382237750 814866999 151783775 336324444 14864623 813559026 437763918 956263874 233329497 922798767 306765434 668633961 618205846 652933568 86323989 324728730 77117482 745745102 763042282 802903825 222699812 985163689 659918046 901124070 994846854 997019872 752335603 905996508 716979989 877871627 117285845 233352291 863905207 865461346 610949850 686275680 806450921 885848032 501216004 584866549 23488251 473984238 426603356 556756301 929107604 954006431 183602063 598805576 224832835 746095053 412969698 480728428 208051446 603871380 352412934 746898713 783592716 953993121 400954451 437170382 515795038 713967365 98555047 970502204 820250231 859764699 606284582 827036929 573111055 710715718 598395957 700395255 932670628 972299117 817164214 952283983 193855636 548336720 400442263 420017319 138285246 173453199 924707243 944522683 280052194 949339035 791583582 897347767 444403046 614250438 378774790 573862645 148911029 458804520 472732469 712064859 55013356 164322420 782689994 964043401 473967940 476304854 388363012 740544502 439269867 923046846 854573504 895849427 117717868 696986653 321850384 665825383 803808828 826302328 589351579 698009145 752644847 795793613 383192330 983264804 256436332 464188984 593654873 768100046 388741403 777041858 992822836 998483021 882513634 902104049 576762423 995144164 683085359 976957899 196325125 792388800 702354243 711190034 39419083 274769977 272873160 546615795 303387064 538885658 762729552 881630067 655102141 759891231 507585871 924846644 768811914 888108891 691077443 883420726 904097070 978855027 778641105 891343299 374228021 457409028 185039548 981751372 592758266 637810364 203641220 380735578 988908203 990802493 813707182 840504485 435489340 461265926 216336003 864058939 112471363 517095999 310855111 607601384 761938490 931503903 527327494 723397134 270380094 362150811 412317834 934231950 446058429 965463352 603390361 982617864 365038442 742723789 428645372 535435586 629052145 648926365 748656739 998694306 765031423 974310122 175785716 213410481 203019194 960450517 336594933 484392479 931840927 987138103 553492751 723846202 328674421 929367882 723667173 749556235 571375046 773117220 989080806 989456866 131191317 578548414 192432719 872220453 739311399 927207038 761273894 936215768 959788303 989485453 333821565 476518047 772906378 886276724 161559843 790539085 207899689 966915146 107368116 442057705 915903507 922029148 555557607 558068071 168102048 612285588 332321903 420645953 593152647 827965544 900769454 910816648 498433307 878836765 816533754 876462618 240545435 663286834 397706468 797017403 382867532 666823755 124201682 958005463 551207790 924560411 770031213 826098191 72172556 237874950 132112262 671204026 880536070 915095130 760695133 823912856 9702379 755104582 449469568 788234002 783267760 814153999 213336222 523802366 248457883 802993806 286372898 684894143 411167239 895670991 264885822 351819166 502299824 848995850 381999996 550045069 941215552 997642957 234070274 647245787 277695448 955404293 238522840 837102515 419317201 616375915 158731377 591270753 157639710 207928627 635722603 642050267 528087225 873413761 4195322 274048887 823761341 956380717 171076993 476340333 309368220 630592189 820992682 925220802 880412650 887168747 874891811 978084147 513586244 996119621 29640317 331835873 808613593 846826818 808363464 893114547 150776348 291944060 114635147 168627955 757689017 867477923 20642062 446625688 315055515 587990393 656355955 896865859 852383284 956382615 958880795 988117737 514948626 717339061 864418282 875828957 268874950 328971700 407864163 841286711 312178187 641759904 367737580 855536571 781748692 947625795 427473312 925508704 956441518 985365958 870578784 963473519 264123490 429596569 782586957 893214820 583086202 931477140 158843357 581421783 861310389 957339662 559756424 866415895 695527523 836083421 970398538 999707752 352233272 649134393 685151734 945531220 827606531 982916769 501376591 810186794 914424222 981183782 349132607 854893863 820677535 846909886 916533276 955712658 895178169 950921813 557278271 994913831 267006017 368591693 980145375 991116136 498793744 804576741 821760213 831044592 468449185 752267691 577349444 614281717 561987469 853044068 189217139 833225629 149236481 256105192 309533443 419888085 24028195 658410477 894390747 931244637 58758147 464809127 250044078 882885719 855686503 896518696 803722128 845339834 956404768 989483456 670901361 714149080 566492921 723499863 961457181 987303181 836038203 874516874 536942000 557528071 43001579 844638324 832721688 871324164 292370813 927659690 866964483 903082913 234580768 866768229 803270749 823004071 456342547 960158363 704344681 996215501 604905041 968404199 296717538 571696401 60216744 572302333 196406534 921290616 887494349 923348416 321497485 416996795 880972247 962774066 921757751 962771182 753389347 941027857 134406630 746083387 479542729 614840245 904288519 918038735 558955073 694563302 692120184 963809172 572008921 760185243 496584710 586735275 270561074 681258667 54473149 180498063 383478468 850183937 990288864 991362953 530045412 883307087 118652649 601634640 441429371 793628077 924815266 953491843 941395398 959445911 245714082 921127369 525815428 902336259 821804813 954478737 400694786 765082570 6055726 249152330 805162048 808755824 526769105 597363354 754528117 835528881 637702467 840705056 520460613 698681545 561978454 848782569 429329026 779675446 24056065 433604061 554322498 626884214 935169676 961093460 749443572 867937321 437017183 628368823 956663586 981138000 114974141 371945625 900823469 916062094 778954629 846354367 409659374 925988792 933108647 934170063 829219989 985571700 603875640 885747428 632782536 991082987 641501815 869313588 438666359 516280639 367272605 747396374 953686233 980167199 156003770 699978508 429147157 553141251 42487451 985870840 681427650 807773823 857189645 918731168 4713955 567588634 484724671 931655644 14880470 399047559 68666572 915900026 205170989 733482035 349632235 731956317 519653827 945396838 441263963 697070045 378860776 973994623 236563457 781935673 725425646 961641997 605836621 710560017 898535026 973417660 610072796 803610780 646267004 900899688 30490599 580718102 963689367 986778712 10907800 900562089 24702586 266561579 1654961 807927273 224634841 251532936 53992594 765641383 229472796 913590276 51228830 769921170 110894963 973212715 893485662 975731461 525555707 633756124 411164692 839608208 832471614 936110575 352674951 925402289 269766920 765682122 385466749 883756213 560417733 877526694 215293781 539693925 218784405 986890920 317145592 339823319 736265186 796197213 539902128 624133179 363244528 584851601 64723576 514598485 246581449 449671022 442106251 590351504 918546416 933731790 897670353 988148939 942655191 963006808 536214308 957003267 753831965 769303182 705037028 940442623 873687794 918378409 845029868 872733259 118809501 330513863 419808578 597170922 899359683 901418471 101824488 643627423 681109073 975791627 328856658 419079145 902104211 994940325 40537468 266327877 705180822 782054297 700787524 903874417 773999627 788471938 804839236 993225418 185160084 440530701 146862538 812600202 999004131 999649083 781539569 962574951 117177987 294001107 611226220 979908519 512763572 613912531 29385736 650459854 892385900 929965189 278218215 547548356 196293960 786237400 667577269 720433086 593597556 795764280 154006958 240414843 978590367 996305711 956641101 958790094 397874613 510617886 12685693 217684498 197781348 622372234 609539556 887632002 358417382 623421073 97009715 229442257 955266820 961375028 814639896 853390347 659765649 976623746 437009007 764037867 727744665 739624719 874817505 875256674 223553930 318072762 497041442 667484727 112151520 611169744 754973894 852263125 227287493 639320620 408595404 744930767 781744090 945150512 30685301 753562174 685464879 779254197 922325178 954641298 255291553 778856455 886107184 917519440 476585647 782561540 312385183 322999712 419425893 515023673 445398542 832048839 498469504 573016336 873093304 894124281 338885051 508989524 646663332 874309144 507411106 805037824 569368016 859826890 93383951 153534971 688239920 733003210 75730313 166231791 480571743 783790370 613362670 710732151 842551592 982479207 811899018 949847388 703434149 893398193 805363687 993753943 258434437 359118473 842354642 901535729 961342863 964504281 174529530 664370409 176076866 350132590 920949989 968091810 194860642 506844978 231059089 757351305 96085165 876645190 246934876 966287544 192110080 393287602 694179209 767923105 895375909 912314514 380175787 380450568 797466998 943013810 548170020 950737196 842818561 919046566 847132579 943333273 258189215 329285139 138594035 697049019 283998365 368255821 867185833 986129001 27094658 77955104 613954695 681254636 383307738 732215866 950885216 983020896 196033562 613470689 645415407 785655876 695979171 908021343 298656965 472872293 958672271 986025231 864709149 954235311 606304097 659154999 522133652 568034924 516125742 820217269 766325602 795787503 39379212 997254021 303219304 324520183 529121591 958823478 662015298 780503228 315344682 322879879 830950167 873090536 108586576 301635788 160817532 858344070 647279520 748783444 784118105 994995282 937433020 968725570 650916148 927114391 146947273 682676110 56112652 528321931 807033559 891762518 89656513 586969398 972510842 977802774 675105412 963303194 33817569 582000209 243541394 996204054 876605211 981715497 792048598 812871911 772202735 975818343 534335887 886528328 678276081 819153030 880345267 936686755 204446769 488034072 304074155 391031299 196177805 806955840 776788065 879130229 785558569 928341716 936683437 970311550 230427831 424921528 811013248 820278536 233853387 804390796 587197493 908875333 92334715 826333323 147634903 180012776 523390356 725063251 166642851 196392659 891802575 931710531 219054575 994324777 245752124 991096998 695734652 856185009 815943390 834840993 632065599 719890034 417426028 706005018 692876270 727865636 586309324 801325807 54834392 480680354 878233541 999050583 487426610 961801463 601502910 679417771 795770115 882223663 405172898 742648598 556205895 648291881 299636040 956782274 591997637 856158991 114677933 193493128 741819307 930459727 395715564 796067936 692329519 906095563 167659346 318254695 687071276 781606209 386534601 798620052 69034042 847289592 127606812 487945363 547361828 924441032 367767595 710333844 104634078 643524158 955951297 967220271 53841814 290107201 3417629 731049444 796246381 920657147 774811280 949668909 308357686 725244047 410740351 454363970 14799186 839183267 387588143 801225171 430484384 982111956 935771504 995733004 687475566 848549759 538724582 716021140 378138765 923302777 585491711 920814448 972044830 973702243 109665614 585221965 574041752 912268743 608887933 937851717 938091026 962134375 367518667 442983191 889469836 892230784 946681364 973410771 69016744 676252360 331997400 672247226 106717160 274790546 284261555 754204849 984287539 991066825 425137770 515540593 672953080 871292215 59816673 929075880 106416910 952462225 954953859 972589006 717918153 799534944 543704814 560281366 15277097 89898141 893166022 950639715 568724753 920208859 897002893 925190617 929773127 943798214 23020667 666005872 537383141 830114101 712773392 856395112 480880471 822833300 138091941 400347815 821158028 975629795 832723122 889011172 979540813 980679566 629200188 750047525 391311192 830664902 541119380 834877078 905063844 992226785 548684596 670502234 251559148 606410525 886567387 905280667 324200452 992207574 396831103 542837728 638603847 670002705 551517402 583936333 306854584 862176118 143408704 965743163 733218686 736895524 363571862 839514629 345653966 642049560 63551203 314559968 906661004 988329410 197998131 617295368 462720070 625878613 110999048 654461104 908671277 985009890 300589881 930683561 288121916 843820892 729539899 866986251 311641478 880370389 435069861 821373934 504716471 509062015 634045797 643397961 943180860 997192266 308974160 581783052 805899463 990516712 538092750 804868847 505923366 980011648 427951797 485036426 956722580 968242394 743765513 985397366 870255866 929227583 423475886 756637399 141879963 902533486 908101172 976920720 583512414 616238906 128855886 343583435 669004732 712961080 615922142 701557643 643008632 873521643 332306705 374142532 953225527 964651374 482279781 829076201 594923096 855368961 250702022 775489294 411359645 938151752 176584880 538204872 865356223 879977927 840158076 946913124 245199348 319910527 889944174 907942040 929158839 981372428 24298712 393375914 557599676 651622478 719032259 919867985 212009262 562688936 589368875 865940868 91413186 290585237 170272590 233979872 961494065 994590751 473210464 614637918 676039270 827318047 116306041 663477460 756440966 974458189 331739047 836754903 993655461 998405465 910237949 942464244 797348290 965350254 855364877 877908934 465787863 806679659 916925329 975580023 920552108 952735042 961964364 992058372 386089603 524192214 153502524 504396619 804718231 811884558 971129440 987225920 307865539 326206081 271135303 358997261 13926054 704369142 285325894 984551426 608069236 731401770 219236027 727313945 928516030 962769156 310944767 465536297 175191751 522868943 615336698 848377960 672065910 804821305 708297098 893499557 474251936 578883840 346102776 461079558 884336590 949639832 270184292 954221678 667180980 836841864 378644203 779685833 315891737 444169380 493871298 549784965 776443363 848037676 268766749 516178073 518351547 614974138 710215230 765128609 215767168 588217755 21053998 594281854 214953565 424728007 766744377 845629822 196604431 386784446 932932233 983225791 828873744 955207993 696968848 799014873 725334110 885845092 604541818 753539704 190147556 274188458 63326250 968473338 979706777 987152105 694867723 745914774 87950711 302204914 372560739 468166818 933597635 984701109 712211683 871302555 324234603 575125134 341434221 941483527 963183320 969263977 6680837 748688680 12783840 876016398 698547558 797539122 933139867 977380069 762708064 900923447 999188873 999257355 416629131 835695010 589987583 959990871 367653016 716554082 974855653 993631491 965027122 978359772 815444361 973359791 860679933 959899451 752236312 977049499 649978467 981113707 578616847 957028156 178378762 851738823 544801782 921784253 948257120 995634111 786481241 994713567 711918620 985862750 101492386 238499539 789833516 919166100 187411414 491463958 666767252 858861912 455890512 597355571 866990307 977431345 657925107 854994888 281447812 512419218 808737474 839672810 848458302 980489200 34380956 788477308 553718835 702613566 208895066 941281278 464947899 678552544 193488808 690208150 97599706 772654137 424456552 631918321 286150713 928927559 458708708 638055718 850945112 886446333 787982003 884653110 941738131 994790415 308094222 668352260 446016914 971029733 364466547 616150809 585906099 791698858 401527457 818666509 441695458 871613727 369724978 742337695 342711213 897887625 135951016 299919572 675631471 816816943 164659865 288453750 493883493 869799051 760911598 928873062 468790920 699869352 531468174 809543852 259404888 466801514 486027934 673419098 811319425 835105644 899436118 922401587 228629377 368777374 167001308 660397678 500685563 672104233 895901959 940622325 957075293 975983997 675977701 823376831 311437601 712303995 351680905 730786301 570666278 785248578 912379066 975489925 825132717 948581723 505441336 959787464 261549758 744419332 333538405 579191047 426647617 450450067 24915790 394006603 442801918 515729933 72127799 798600603 285077415 662976877 568689608 600561276 700391712 999744838 857462344 900369641 639399149 699381364 504799916 599793469 327679179 663307004 373294867 596583958 135764083 365526693 2676979 342670888 111985058 583911346 109318385 200927332 651866338 959224781 930281014 947134400 767339155 888382226 127304303 693903889 345388409 427850933 866689986 909561212 888064468 967237405 873934851 970438250 539873582 787180877 292452768 911004582 140984473 457515625 40470849 895835732 293438840 983668237 87552861 506333394 304889168 619350089 460418019 712845876 485532181 510754156 864940268 902362635 147651886 897875466 36315492 478530262 972999938 975637984 625672040 868106102 296273703 937906496 656233969 767177155 449865461 674728601 825091296 834563003 49217861 319615198 589421729 940546304 535093004 802073483 989963479 995515660 987871524 998746186 130204714 667556918 209683778 656324014 781869726 843224396 977209818 995110074 806586133 912103342 592003897 599156202 63543040 531955896 847683261 975104628 892299579 894545696 269380559 814723957 825185298 971061296 224124261 531015332 389919407 521952114 583851597 726144926 94644399 161430994 111094138 190880595 889387099 995024143 900110604 996973984 988692382 997449606 243209725 450643594 687869482 726697697 174832413 875775470 949672860 964180335 280751906 637034585 262610193 939195787 452063160 851818613 698717186 946700302 241225881 935043165 393675724 759194695 873720854 933557346 632721883 979848552 127690793 226694834 650313710 707608377 638016299 961440547 459299653 804329658 98290539 125968092 766909513 896411533 210184352 307152674 299762083 844840507 486237856 919862610 332311113 986421273 574982584 694007489 489896799 816977536 790090945 987491416 81161423 274330111 403939494 963753642 502215419 631862941 535963702 611206427 657043826 997977317 368954174 460454974 183794634 304012992 383102103 751364160 142544108 942087029 54926581 350957731 933360322 975933469 808026740 895992216 577540757 931133606 631298446 866550067 411400026 523031651 398275574 657269436 215770924 481462539 351553033 919193081 701820092 780544197 61105902 569411631 902436725 927562949 260088682 957552019 437445243 820288895 549117822 678181320 959749257 977416273 783254480 864404144 291324853 551069291 623771791 865992852 163819440 950237613 580833539 993814704 792813641 949597575 617888116 718734789 602228755 907972267 335077228 753145015 834571282 944381802 799441725 897568394 693854327 823961386 222040094 675374866 704925626 995629843 742091115 902724682 913257372 982544926 703288589 722556422 573389981 738665437 610257094 613042043 104618989 708948757 721131418 777989875 761371232 917721629 274003381 417872453 749784755 780528950 939884464 982559591 586904095 720611763 271129533 351416630 982265060 996795640 431031671 681337159 95029579 652033909 677350238 962324302 608452204 904244260 422600646 830084345 662031438 746076721 328386155 743499162 251067965 978124735 787326239 936852528 38382536 879324951 380086548 969397616 61519379 335570102 989594837 995569803 344938173 546506887 424975521 918431922 975862835 984874639 440285654 563980655 124935416 376522180 377058043 687881135 699746475 913778639 187707139 905816703 695387029 970014852 925046029 958598055 467089482 985821050 690136982 790579384 600256553 749808910 590022732 989776880 978599890 984584874 728963900 839552160 739237752 792899142 723428122 864869741 143383538 682399343 963258680 973584139 144431636 970869104 763282709 908285139 694301843 824908569 601455913 913911262 364191025 418525059 539619168 544116316 338154050 754384668 106827027 837934374 11504051 259049760 514628371 797479751 434215183 962135762 141179046 704813985 196189278 635135912 285518062 959148177 648423706 863670783 288552277 448748309 895349892 958616457 424218889 770401389 297398652 434263008 829254600 843704967 751810818 756900794 75494688 614420610 477130943 491066382 962145741 986066096 368756409 768745308 259549032 821261207 289256652 746034449 956805782 961770224 575662594 858848319 402824963 536516393 548620756 817906573 586505308 728660880 452337180 990715471 721350000 797656046 620978022 979944965 424802062 985787164 914592035 982514339 981288069 989415316 833549279 946822678 658761 108684225 515033541 537102684 263653434 649967848 269530522 746112579 932011346 994928412 135754394 550948998 638997978 669905488 819606474 823764362 917609558 973827014 208870487 842464779 10402872 412358932 332213271 344314572 527741712 935739645 490295288 829348662 57078151 983853440 621311287 784451758 141300708 313247320 646114056 727866356 802033566 956933840 270454544 459626020 890088857 952909895 566083655 566948865 947563273 987767669 212697530 506981631 368044968 630445482 960380627 999590118 114856659 764256222 874157735 979906592 88328168 940144334 805910854 990087245 992114936 994636659 232466553 917861815 296604015 442659415 199458047 452871658 482524149 529336557 188985058 803931514 68910833 431527309 828201875 851319690 627572352 946955532 657007984 839790420 363561289 808745875 566591509 787940536 942257800 986895900 111808419 857732846 166528543 892864370 294205515 343866570 91286468 943706604 75961246 382802267 908963053 928935449 50162454 939994045 379230138 663047598 211376954 410752262 48141058 356853372 442342158 459960234 171389923 900750224 107550453 260949566 517261158 642152474 334423130 941140029 990499738 998601682 950929453 977200029 341365258 370204237 724597345 776000338 829923716 921690584 689967751 705230650 69857223 85694811 525767716 654896509 728818804 939906796 768331598 946655994 981254344 983045377 924825140 935182555 127352870 246903138 169534488 915334074 402883146 674512900 75960493 867993639 1328344 166143221 637549353 724759899 199110567 710478921 661413658 814329404 205031692 575192881 772660964 920029247 827544774 937810221 557736095 943765333 100685495 859962334 859614229 938789580 824959425 827274731 136989642 167022267 786593578 959974260 342593262 626342655 63686473 340888685 216560349 710386984 674445870 958686240 736389188 759340505 416373751 895077267 854945224 990253997 925510687 953131708 768522598 891122596 241785248 836312603 391461331 650935670 628748111 796914023 777110409 960096593 752302898 911035337 331112909 463457890 902815705 983210468 529478505 923770576 940532508 950059536 529291112 730951031 96630581 579190177 493900828 717368690 611988159 791885272 335182315 347797233 197456447 732925366 174725233 227736695 668450220 885867762 387478740 971626068 444670591 505966032 903703042 924500417 265020474 698265252 598107499 879097575 240443694 310885021 801016643 907942773 858692363 970616233 108004278 622563757 965757099 968119983 656417693 946026482 244803702 343754008 683814820 778024042 370021682 484137332 25053756 844273776 463344419 957762798 876917857 976885061 853541274 857090630 153349136 548961731 711286112 800263471 120266647 414783714 848183750 894383691 163101614 960129841 526730228 768094605 987338469 992242274 282995449 980346703 740328531 790968418 5184912 99150793 619976647 673156960 201637468 697985417 437639826 995445140 399794018 591998527 474160105 758904253 535419461 645162903 457021537 832748761 477198744 707957200 764508776 859271193 517611033 527596281 742503550 974252180 682349836 951023986 74774592 833486369 478862742 981849136 371158587 805846083 500233627 784940757 260056094 436646549 987971926 992101853 872641159 973062449 477517992 817313648 248959694 373159740 66601297 427423704 577779053 930111269 970216400 992652155 140116238 915210896 689785767 778734152 642774701 839961185 597450473 699158818 732923919 749156939 806327635 992279797 354577385 709619618 6878939 966270037 892783915 895302590 432835290 790089472 687740266 915274048 373623530 692420927 33517445 833832682 450629327 502680267 192440467 361584257 345251696 357875776 916475442 924892565 892774321 900381932 512121041 833048902 263930708 652530000 111175110 232106014 668608273 692750327 299094534 880372063 381969239 712335450 375037654 963691671 817776638 877500837 724833862 930208421 148092211 378276550 689068493 943880058 380584034 861876527 703762432 909273121 296941649 735570124 107853283 114041527 997522506 998956670 72069573 467215593 868775583 912252135 604321629 944025676 343314811 961945536 125856287 842765779 381102114 422643919 67992168 92607015 938978734 986756040 973910463 981586212 800475604 969335952 350900431 356077426 89677961 520735031 291074810 461500550 416266974 986925604 727171855 773699331 262518935 979407210 562609239 785458692 89851636 226939904 411622450 834964978 804036323 817029907 138411488 188573067 693625237 901315046 436841084 807629195 977173115 994601259 94102605 731033182 960502755 971195784 444558583 881605175 321511183 960587347 819283562 842900898 383265964 486278507 567070623 843083339 196632295 601063389 713331684 751236703 400818914 569321735 417227522 961970319 391426836 870188812 806356798 926913501 720324318 835015014 697089468 798036035 523231193 656861542 524918 567233596 567174418 582384738 595743939 688868317 265154783 904125655 629167903 885667996 899962537 912178456 202054704 459691923 861087662 897644454 542720419 931194068 956528841 994079266 648862225 841325222 690049954 864162763 65748160 69413439 840196765 902433852 998097173 998458359 284532475 347442669 918764061 966904147 938022977 944821259 685453699 757471106 478468342 879175318 182020594 926620659 508060542 847211609 328059404 626872935 452814516 827851424 950595347 986218732 33877651 337816382 19543618 505713439 262850624 462288257 296080407 517623945 132713391 650664574 317104066 518120946 74590474 534577874 750830086 776342065 808435776 940600818 906415096 939674940 611221670 946685580 53359899 89997151 57470863 282907906 675014972 941704556 959567945 998071463 856660917 909651210 223900388 593872752 851876461 949592174 4552643 56386949 169936950 232474721 468555621 661246388 18439334 940128368 880763780 982951760 802178998 962219179 549175615 622619571 827598199 959855738 19151118 300656082 905230705 952475303 151955260 296352452 935511144 983852404 928579283 932083507 277064737 880498767 982214478 983284768 862097487 920385877 778923404 816396741 241669703 823068709 335660341 535619834 268389710 678651867 14294029 640488930 211568468 582205451 52682485 879078463 680637283 967042243 6036806 928402792 697141021 752147093 395451620 620387681 394205808 941785112 558006424 591350288 388664687 577484655 240991477 263479105 194855874 868411288 556113785 792438596 536283115 707216893 891546371 979282882 663556183 759547686 583583071 749354024 781510287 997858469 654557280 702211533 204076940 520903764 415791436 501852786 194352788 822175260 597806062 688332863 177427179 195505308 468269660 567606210 791332354 837579270 969009102 999017236 200665286 360171973 666525961 982198109 560851080 979871428 972843014 989233336 153569181 790202463 407872318 469191338 63842943 65174820 920948711 937227290 485427945 668536811 855742292 966623693 682112787 752703604 802614599 831804521 916916550 963231915 440762972 995563254 799501433 857012774 561442791 686033862 968470408 990352802 221764703 832061188 951081521 983736272 331935253 787211198 682462665 937108975 786720507 902764981 711563725 967138312 467084007 713558699 856215419 994417364 14022497 856615199 914899279 977797781 681136173 881911380 407321978 760420650 833749608 927311457 453014559 951959510 59144327 262663085 869795802 979590268 480106487 650533654 938785038 998431932 953227585 988061114 803286823 815197274 726829237 867716550 227197503 429149962 714805668 873338251 350701338 477666071 549963636 565420026 680788665 829534375 200936216 558305290 853617115 869725762 163593535 281743665 196795612 346865749 93022712 486044000 40960719 509866401 801980194 981855224 530332154 670307759 259990352 778242098 480322799 921106227 824326156 850583720 10721258 687843220 696012878 759031915 584148229 849692751 186742487 803430646 184315214 701001335 738058538 843745188 215832143 420657570 179277928 509554992 437885241 540420688 451784798 595228999 336150157 354109834 446150439 967767114 414848599 670955648 552059448 619490700 877551102 891068652 99463758 807996013 577850097 861229151 843309403 932077514 135075525 794660156 38296598 962531084 518914536 652758135 917394088 954261412 987826363 991468231 899986352 967331185 302075920 623478686 696019237 727456959 725708272 977151965 328022156 912161751 476773275 650114716 446324937 697407658 332590756 829987373 407693133 996394881 870650906 886854427 264276324 671715378 529204971 762183211 102245851 353942076 756727503 806027027 769765146 817105558 368513183 585305199 532483219 902589099 507989758 988998149 344751411 917908273 662405504 762857891 337522510 378573759 679902597 790501033 813526378 833490876 371230076 819330619 699480820 768489294 805966588 904921797 809503142 878424116 401278538 922463440 613191892 821554913 739491425 825130697 21704095 278126828 671551668 728079061 452835142 800278611 359482076 785808779 796544457 919433392 218464594 561833584 271659196 573665838 237490426 553429267 80727830 133864132 424671460 985359490 518988551 592395366 513224017 773634273 695024684 710276158 349618349 935381895 231244900 517690290 463085822 936104216 844381180 938850070 650796743 931995139 350883367 409411441 342816869 836216293 836638961 860704297 631466948 868890480 505731689 724283963 523830570 845657873 381308913 792829494 764073870 890950505 766193411 959091281 314400582 599112259 633173093 638509901 900125844 952289475 846361668 881639135 399725297 443424776 46110303 133853696 399010266 961542627 350001791 568730316 279233972 625384065 72847751 260355137 275163151 316630617 599936840 796407256 516226800 692229559 620898870 911921381 258417781 993696389 349766019 836579549 381432224 488338914 115607015 495826397 758636500 764852847 818120403 922824449 382842087 497460184 777620593 819702615 212253272 470927176 130280097 193249943 459101834 825042942 464061884 861294695 488538035 776836247 500972514 807873813 216953544 513729051 190163250 696126434 447671894 956182384 492206254 703168507 743857261 749571662 763042074 987259947 651842990 882876751 945778460 976479268 557846005 801326704 825080971 886228512 252598583 513777667 86990226 555684791 581733022 845508623 568868065 705171195 324467287 839372068 497896 67543540 526486637 744725205 613497167 762662284 477431029 642706931 467662767 867230599 169878388 798049262 535994344 553749536 607803045 689281346 816774567 977757657 339858245 720438150 219053044 602639351 792931839 950564771 841883037 983503960 116170001 153908072 222362967 264757934 263262288 295746449 24188578 356240567 666402794 743186654 871546871 885776670 187619954 651016292 731452467 872660058 97007255 804986753 764510760 999334456 104823935 333157760 156543606 795429381 502995768 876688998 638218304 668099653 930569944 973617828 469213933 563136797 779038469 831160557 696682853 852009952 652285556 839075516 344139333 387813174 357127369 461682039 159117315 211045560 358858709 981881631 905155679 970534484 359802471 472101068 977535764 990937197 292359178 536449771 575677766 729356605 573823162 941695407 727750402 763650908 706590202 938174768 438234802 779506576 500622506 660231406 956384268 991049184 841697971 987719331 54668678 420907282 103227669 250978164 783105098 854734492 497208462 602433787 885853256 905772135 915165033 950912513 749720262 935425219 477410427 802146226 412787495 418219607 689132877 710313958 830326742 904132948 191814511 254725921 499126766 672025510 889970195 997403797 551200014 916542036 809972551 838326480 346099033 387110806 80042785 419819482 326140537 968578615 70985855 798829445 660046674 860266083 752581203 793043286 524134880 827505136 164097587 516723391 240447956 492844440 254613435 928273729 572034617 953395922 300263484 761656326 617911724 914167700 582796116 683855251 103368323 538906633 32842712 819043930 69435051 360818639 325932085 920828555 987428058 998983454 22934859 635219434 222237249 377473572 524462368 592911940 339705443 985300004 355761843 732953690 443063971 780311759 552689055 998015974 840338297 962220297 859894155 910763555 987185242 990856978 124210093 875975655 6003855 137972510 399459407 742047705 487647161 689412345 537680054 580030252 707193984 975041188 47093276 422497499 653313511 907456527 484961918 531896315 970958144 977814697 877569817 892945030 78118890 561014838 315377315 394368515 506902084 930834417 282091471 904575565 277217893 699018030 286068876 368999257 381654272 837785239 60865987 241286173 612834004 965435493 98862356 937012060 674899242 759514828 806056381 946573324 728343523 770764661 342978859 753708613 355332992 780694536 649470135 883493542 666303318 706292148 673456818 711259870 743569768 865615853 886358397 971027611 396733895 623165904 953533730 983432194 242969434 972039919 870570576 943845203 163066746 727398543 104465201 450520196 834212231 908958205 226301495 487457888 122213279 147792170 642485565 930653336 590636501 665183477 610784622 910134232 348665160 701419519 453543078 804845693 428400744 812257515 29032613 885921823 545894186 924200271 610634269 812668674 41051336 376503644 30294485 36450259 447869538 909922601 342240380 647470024 796316081 917613480 486930382 743342873 799299173 810504271 629619863 990907518 802069100 985037626 866685595 875260758 786225545 939381811 375101579 744180784 425837167 936530821 621648612 689457463 830183456 966387849 527526892 752635836 685696106 743292643 485515096 676837748 741313409 840293479 531566002 759445431 82619567 676814804 533941848 786233850 339655014 341050283 223251276 647984109 836965598 885707440 565031952 819753303 28720356 468845636 950894886 958599342 352403513 477303763 101757893 282520687 818458162 874164941 767043609 932288407 16424636 35777127 351298399 381863016 872313026 917334078 97415272 618326984 459445541 956984962 531871773 590792624 596621109 624959786 776157400 821250777 813432509 953811016 941669179 946044408 616781393 809831970 166280130 858547538 512552475 887532403 825742814 950829828 35985580 812310748 125693089 660650509 991605911 992909717 665409270 900476811 651544037 977065844 496808089 946887147 984770280 994485051 904592056 998280059 831213663 838616648 869503915 928617833 144119931 664407036 768852859 913759511 143717813 547162595 43424493 92134505 627013084 913411309 134661363 743448022 935921395 948002819 987824610 991758955 666376926 929756165 112081465 769610218 438765584 596851502 436070923 639450936 449927799 598341339 783527092 957365694 844711694 956528018 153217116 524151208 618030390 856464591 52152195 87958094 637561680 950318413 22853604 309601085 584889770 863154570 262771906 292294211 348335856 899326494 692397384 925769483 554516784 763020368 255948420 591449313 84897691 297966906 59890541 373798731 956524376 962815814 377906894 445955087 8149974 677198044 287520021 853682780 237450480 992529997 119975426 900322269 462191752 534978026 740160996 892768388 875556855 964930893 633019202 648218952 437704792 962942933 791926201 800930740 202311255 627486640 82994616 856953116 476627125 572056132 759829497 799405493 285234627 568144562 621756676 706340175 44870893 803209456 696182730 731054809 664243153 769879552 223353974 593164241 207860060 486871432 636395170 684144065 309033090 838743886 228440402 871231304 79383615 122845712 859644529 994181720 542550407 545368184 283124931 964087011 379798350 400980500 407383659 659824785 662614567 814206246 875867413 902722755 881944184 960600689 553259933 999878696 224778147 326856179 886631364 990787836 99293736 676030002 350198063 984861637 286513631 347601283 176433674 693710370 263139505 313077624 945489039 969096146 619458918 918460813 741557365 872469466 502587086 964276864 214633679 624375635 489897302 785073809 694795285 881747989 934787909 975074932 575145132 623485332 213045722 927231847 356911855 812262753 356005535 491948386 85564954 274628770 738880974 819522980 852420398 888120847 879819838 920409046 146480531 480889774 313982243 886526156 677257620 780572132 366806830 775643693 433947190 603135661 600176851 872747640 315237621 467753662 680957099 710971215 510027126 683749780 210098266 391659102 112452939 716007316 192720491 671215495 120044904 416340668 691553086 757084110 502583801 670612521 132535173 458022508 954948190 975047416 333090925 467588968 587136974 696533758 821754164 977199807 586243172 887975818 19277732 57996944 397042175 528673356 195917175 522708977 506074029 816157072 89548433 193529265 349863625 522090661 369790960 515574169 381263153 459749222 654828489 886525224 196243621 266402510 506398458 711586498 892794483 926718380 490438327 779314093 160039531 914656774 112586668 344844877 729133243 824253656 151600899 590444811 440891432 583638610 530496742 739553478 458247597 746882527 198516229 729696696 426840212 558580086 350320472 411727165 796443382 799480213 200167958 548227317 705870616 717748119 275634756 465797017 743052090 889050274 521446289 897008489 997245052 998556269 839755928 863728308 205693416 831820423 83435556 99509151 204137334 595905868 239396821 294654905 546310686 693227687 194701206 811263330 735767752 874217001 827673397 832267702 713302685 852113659 733689664 793498501 583908676 601181325 912976638 997112205 655522239 895048612 936537298 973593901 129622931 361596112 851085744 852518962 890904250 910214311 124119854 149415875 165324282 208377526 804082234 999606315 939997602 944363605 167970373 397887763 983458172 999018977 439671527 543995005 880982104 969657722 142386730 975104969 226599710 810291488 61580919 101553762 718433814 812599660 482980362 603105898 804899289 900418141 992056217 996289304 639410600 990432167 38801450 437400244 152534480 269998809 563567246 630947629 81383155 176369056 980899384 992096450 823555603 955946317 304403068 648588971 825308499 897959472 845018297 860357061 137772772 627284844 689228434 849926813 713188628 794473121 526618028 544581212 35999847 590655061 185928526 547448825 210488186 584104213 919047736 936568630 727141569 942394040 438515701 989424605 986313285 997677089 804337250 988740957 192828869 494659871 724741650 752018631 957248286 964675793 181650401 744388573 771123191 924601075 327863871 968359156 55297051 598268324 891484380 941908327 26516444 943360575 117949030 465910405 672822163 731385421 946247188 985373771 601914122 602490999 169285219 808520387 106522352 977718052 513977564 759778190 484776639 525187480 276423854 949022717 17767785 126490502 463015373 792286629 553153230 824141883 55652081 918049192 104344663 165577966 824800850 972499165 946496716 982461067 365889266 888179052 493467420 553467776 787067983 985780239 295849752 366616307 222085612 862560404 196402074 785328032 778836223 862900218 95640966 373001826 481667031 672400194 9533538 399356579 349069456 822631638 835474170 973511807 408210256 756909650 660252838 943055220 685902747 925138253 704139694 793261781 628375055 931320954 94372814 235061706 969341117 997100302 978174116 979833772 403713840 652076493 21910746 922062113 686056331 995276762 877289888 914214339 864651623 891648460 432562484 602385273 762626821 982206632 359134824 763750025 695250016 909327807 192111952 245998276 243797152 569310947 387307279 988675564 187555441 393553120 343863392 531929074 890456290 914938177 880895422 903218533 318899771 432108970 190455102 259153160 965510689 970342478 776197094 958902857 262054959 380204767 447540994 816396543 782268528 955620513 807471959 983587125 142251702 829725880 699320085 829267309 892973374 935547680 986892271 996868465 177411572 324880427 331735370 526045543 7043342 138533131 638578914 748916337 723635141 873223699 626001299 890806444 715767600 936829864 47787503 954855042 172813380 351478198 825869007 908876069 183443643 554112354 849690768 964899735 194703798 555065409 732181021 776542414 103843529 123176377 854459171 879244507 130810089 947720089 141724268 446360790 469717137 994993123 773980087 791017296 517736291 739780034 208725203 510536475 695192602 924063832 150106481 160609453 992175431 993451214 948365500 972169573 654650080 922819022 885771031 900271756 644622463 827717910 862152508 945704736 371583046 773452411 276208819 463295530 535102371 726855641 32140507 280471401 4245879 365853108 783630823 986762733 667093487 867036077 973997024 988839396 569635743 888229524 898477144 951414837 839403771 914166688 924355963 945285069 725331197 754412163 158054034 647232362 889410132 967701898 453810831 893134696 326892708 561711449 114066373 883863150 516689922 623446337 704649239 876345556 649510379 967061666 396852171 800213404 317880494 966148931 721202678 768864330 497538152 854391300 621975266 667247849 929211095 957577504 28247833 573982487 939645082 995418032 23133965 109694289 402968744 559577029 89139663 127257201 473227722 651268285 370914561 798354565 553981938 773304743 943180481 975684922 721953546 740185328 970497099 977195551 531469542 645277510 780402910 865762370 404021767 901291926 850428576 973310949 944033825 983144903 899026343 914974717 121357516 848364702 849677105 878919901 504228480 978575118 427051862 918815930 150429422 479369816 981725673 992218711 740459176 976781163 575117807 731303304 605835731 666876115 900806458 957605949 240809453 778166305 629586440 894925391 150951418 814735856 755992399 764389632 865270086 865714401 337668117 519598711 514872692 768071405 737112250 959849579 185681422 204528948 299407107 810962077 433033081 721450817 450516388 513990883 303895463 730672994 861082896 926479277 510927519 698620939 178374420 213774380 393110461 551256630 223423066 353641669 620537795 801871131 391298534 753120080 859377866 870949024 431784139 789141468 166027789 876135168 937498239 977197577 945783692 972333794 648025103 916060973 648115381 845111075 915812920 955539204 768999892 972672104 309838430 631681772 232780277 877843179 88648208 535531552 697156973 986757307 701218838 837365203 737026028 975246815 342039048 855605117 417180063 450087432 766429893 978805357 365660822 717063325 681588544 874559035 414436811 552920051 687829452 830304536 435729061 460925892 251869997 790150704 809444471 872868116 593202778 856282885 641450531 704026899 791277436 939406023 248317154 422727557 216715194 289186667 286931373 808327141 679686435 841593357 575902029 804542290 532191935 604624209 39977630 185239920 336551670 806456823 132788609 450901137 954377879 959865587 7101072 854721534 889627284 982431069 763723066 984276227 95529598 440120236 635529297 894401190 879260491 924889572 846217397 950315522 355699679 631317548 122906424 453437521 759041270 966852081 666454886 908287151 415184925 910827347 215608977 829872632 508153061 974610419 694929080 779801246 35808370 754172221 669415922 675487141 300203109 611807322 622305395 628738096 891480827 891549599 288179904 684501481 820678262 864301351 835420147 901966366 292087545 555749103 636897308 949416670 791865477 837120474 439364995 923871507 555015328 881919348 960105940 996865016 740484243 985903848 11443466 117933377 437062107 951813362 38331691 543380825 233321730 554942520 818315539 825889061 532513150 766872022 5252914 965593370 768307064 812292341 345960543 593583176 903945076 964739180 542435804 903853959 473752659 629644975 484839054 624819947 740955195 958897079 727064593 993774564 548820361 931077820 895792662 941884165 550527128 781222506 770773261 952728374 974363289 979989382 84920691 896833129 773779948 776630602 891648575 959286720 316948267 483374655 715167101 748985076 885302734 994757405 380692217 792658895 54832330 895977369 271304357 560723292 597161603 823800680 82113524 964078746 147383910 198095014 362659862 550291414 84068438 192433092 814686382 891983756 591088913 785099849 777529341 818777232 200978222 914659673 444309622 911098490 938439544 979511675 299266309 982153913 243987420 781808462 351104030 475672475 908375150 987896519 553223833 567696038 357404300 632506914 223420211 281676303 190646753 663770414 997980892 998894837 130225427 341965413 284554096 343354181 714436213 870635816 677494478 958914054 993752017 993905882 996634880 997710695 340842031 363720347 169709335 777782060 77868948 963857580 55065568 510346760 925681136 938013759 787065996 966833024 408349708 958023330 235237251 524763447 882475696 996817677 212560421 256976885 768734890 804429832 219374559 641488898 638960834 645490487 910432714 981701609 58214608 796844322 257017426 429431975 570485212 605747630 421353227 568251617 715018212 925873343 711427461 791518977 277787124 307455331 315442386 505186194 726297776 799111365 184949892 848554424 903174505 957881460 686489750 832257327 926813958 954229238 121660258 728471924 576015101 598810198 654519736 879201454 249502663 869657040 541554318 674305384 808189606 854110217 296459942 630276465 986184742 993729255 222209529 301447481 568150240 746766429 27498572 194280988 414570094 646921958 126490831 155532605 781562979 868749411 50980593 433726209 707599905 838372835 686507336 929317545 186591852 465594349 68445230 451261091 626931843 741775416 612154790 789525349 923430348 947234744 846571179 854262861 232352524 608648031 718995117 820546051 233923725 487921256 691960213 698358619 165646227 532498073 680265256 929907875 955265328 977982285 585961554 958988614 360506260 538445456 857686333 963976489 984892817 999150161 826049519 852855365 113809517 221236676 229197729 824407449 955617311 982842080 415483054 672217886 968445234 985335158 900135050 914716295 674063807 831308396 944182063 947099998 560579356 578580467 565960872 596270280 45370283 800872309 120945663 925030349 941591424 999201687 702907370 753653790 785404543 832189534 298696199 367625911 777380158 862573296 502334298 783350588 470794298 872981358 12423653 713822836 440050959 506817205 592766745 786690787 578975849 903019240 818678147 996525021 143439640 846143741 319478424 618552053 136204146 426793191 843899547 928641035 570145214 797689444 337748822 968891929 513245627 568684089 627879319 894450276 846096071 991900867 625768853 686230593 23727396 281330596 397173647 484159299 119054277 580586230 218803469 645813528 796657601 988885374 349760090 458248974 533189252 720309743 697019601 777421364 206527884 776353200 125737313 582929651 858049488 946783596 777969751 975128808 817155304 974457430 201851231 254419182 428734801 679920869 495932202 647299627 175003555 349769812 480305963 835596016 534924752 553152968 898158930 995809309 804232262 908573723 723278753 852363897 757096501 837919368 268078261 766833708 439831945 675852177 394137002 628914482 595919160 645907859 995690041 996294782 794056527 942130703 915847509 985015607 55520888 772410645 65064691 705213176 800134070 914268253 645776540 674111732 274981612 790730721 740013054 898615454 107430155 486576783 78969401 241165335 272440057 426905119 410392937 916916148 611861109 905876549 421939863 569059294 320154078 440409960 399558960 852644858 431001388 761760558 620522258 624341579 179534099 331544850 235000735 575750606 460654284 731906692 897808295 976035252 364290346 404799206 624566726 995499298 215500619 587948013 385209355 606811658 387348317 419828252 172369035 906237458 116555977 220067730 565109948 656496462 454551952 695719663 897806708 925477272 662025586 736615801 4257328 788754873 293053560 299388298 474611195 530105100 453090704 548621082 386025526 792737358 287908457 669181230 293699756 530410708 820400640 868948328 652004027 818013051 298033411 656162667 268542444 793565612 421248278 450743316 929462798 957610472 721267352 861011373 742029292 904085175 935242472 956170025 165193339 262739948 980933129 992053055 749898462 874691019 450995610 995010298 775235062 786148841 403072071 829904668 925508407 976099849 357912828 920460832 76941532 325981749 72971694 891892651 860742850 971097706 240038887 837397804 262959300 292929057 754682020 780835165 807960735 978186526 515780831 791853135 315668753 807886387 750513578 889182361 464431342 842835318 164035950 896240372 347757154 698684269 621766571 701810299 61696321 642342914 958823368 977005570 571988870 696193609 909401480 981699190 195408592 306725284 593868978 853689358 117348172 315679822 123990502 475924102 12772868 845499670 774063517 883946662 372700105 683037691 813947875 999818186 582558114 784525874 35398163 817510715 161239033 725143957 611589432 804103823 509696840 699164723 640302020 907131516 765338109 826924464 289473840 680747712 556279954 979052052 455613182 639255539 222247146 599528504 181553675 924576389 175915359 405354478 287853283 841410922 918740861 921542438 66472456 384511014 653375007 982960737 757222473 966463067 80386606 874608210 550139324 685223770 433026851 606523750 342618102 851441916 490699441 605342838 157278054 635401067 415447335 815004334 679745639 752394542 922809030 962344142 587451781 660032746 878578374 880554707 357667514 740239036 423175479 911582211 764434973 856520602 711491634 722106005 354105500 987804774 166566962 508775964 465436241 944034356 441899344 515222759 859348133 861228723 482502603 735096764 393989475 886910866 493412724 560390463 2023685 516844313 171695712 422529668 76937695 403596678 926527668 944292501 429026760 513509928 574893555 656237125 171874593 590587775 275555083 878531941 642172754 791719365 362309191 747679744 371834808 750908815 536976380 538650776 243738411 684372862 786512579 896170575 611275585 616526645 862066401 943017445 416426495 648622895 45767107 309458008 143113307 801909469 623094163 938454019 615932318 983189080 230543403 851021608 382840183 410520823 215083371 933360436 461738296 585405361 721771769 850831724 573193597 995032678 341537929 901503599 669759727 785534666 473357406 813287806 450090473 955572450 992413913 992786833 957406813 982100216 549636643 609194064 231271343 888428954 212231678 669369123 873393183 911947515 867458491 972993743 865086785 928965575 969113943 989944305 58186686 79505273 604279039 607322161 250128588 886719287 832877194 856661478 250447645 950891605 159763267 663040611 519426152 610892350 256101465 652402934 417033588 707469253 277539380 481288817 898238530 934681295 307091814 385068076 120140189 934393982 735468378 967976035 526153738 992677624 992697620 996853494 327876882 492609199 196524361 346923161 150010569 803727908 480980642 829580881 711518644 855326396 750176554 838361890 202117812 728647592 651601327 910155886 134021839 620957385 837140904 896350154 301685950 381717598 784856795 881251814 257029715 494170973 340855787 612193358 500192656 500209449 181270627 964720214 375498198 625798887 444133486 698298165 461393093 888885431 483675016 638718730 292714866 636804646 261209080 368498584 473471936 553712502 697807399 936319717 675500921 790750730 680960870 994609492 876384011 941076605 395456550 562374494 105574298 743355620 801248389 951367790 631825200 843277776 731659169 891983545 914710331 967406563 635989608 817965122 298823553 442094067 499951922 523704767 137869854 555314201 924164497 952734226 740880328 882639747 112831821 791230959 311766092 759720691 466592827 941185424 786539010 928030811 497496018 576843701 457040510 916061152 706556023 815213229 79042858 226749498 199169118 334402132 143064779 522227068 64282166 357409709 452695848 720191574 213448508 779734448 212112672 738187867 314466169 816456066 853022162 912241562 432348862 598850970 330669963 733487372 622887689 761735737 612266372 849926565 722645198 973482815 382401050 974686797 161811319 330915447 889503830 964404490 743297554 965292984 277185110 430822138 565112223 637683495 613234309 724515808 687088793 993937857 598357755 814624767 310965728 854067929 913763584 966052612 189099191 487086806 106730349 106730718 958491628 972880689 590076981 810431849 678429605 974627436 373731173 390647771 271287595 795075277 543714259 987192605 878387456 912446624 113384406 590621276 494132328 980544600 637828216 961477937 550796672 576438602 879160581 928560711 836248675 934198629 434098234 830681917 974964166 981959773 863446043 946098316 705622109 983534860 470615685 756346544 174000584 242875150 761042828 804822541 604686607 699658996 782222976 835892158 12261838 486985613 167466227 993149947 632172643 863825428 734930497 848386196 237954583 544950407 418323499 657073715 417783830 447961494 897165640 938068926 931645615 943090007 751603611 776583903 373589627 886796475 133972492 889430476 688090362 823819265 711571902 912735119 870933816 943900895 808299847 937384710 239711701 922614030 464361824 952558325 112035555 311347304 791093314 910662181 243359064 845216480 595546016 866978439 503051767 737282922 781558614 880073623 29971140 553003027 300965239 599082524 739952769 759859785 739703405 865717740 215329193 905429410 638617563 937027188 875505777 891586141 856844219 894174969 458639315 867126900 430984374 571632425 805028465 992088397 357696562 366359845 311857968 400264911 517463754 997474287 278114109 797391066 175182938 501963681 963245935 997988899 435121303 826150842 962800828 973009602 80486204 510183140 843287438 978891268 682798248 997169108 132700891 157487873 292829074 730815544 574484507 645293136 207578386 590268919 903786374 981654414 566233829 951839333 954585528 999093872 251984116 676017313 786033257 990396561 202449703 965263732 778727503 862834104 113010817 841324729 241432501 642813236 824678325 904317387 668176418 827450051 598625483 753340327 256150015 790410762 665682541 826270512 815238843 901119704 852489291 970097713 593922751 871231269 793135273 802251159 499688629 660084168 803532406 899961687 59123629 941210306 833014047 935800726 228941274 954718222 137135888 555104419 421292760 787155783 551471869 923183336 743307579 928929214 70311082 914502211 192197019 932003983 420193689 671842168 266444446 538923357 489386710 571379058 92553680 238731987 349134940 596691173 600980580 960322507 139084326 232707006 486810399 720138337 695555906 834162336 698449368 875145144 748620247 986102234 174629767 816692530 666089891 763161757 736450474 847254748 892246365 918780452 545353352 916549288 518490817 697562059 566044632 568179942 628122750 662994889 326497283 880945776 322349550 543128218 725876444 875615219 187824195 576623110 808377064 982380406 734504568 858492441 100219128 475469609 821783514 834265681 104367517 957234075 54948301 378920542 807008090 857683428 427715818 513572539 630543681 803985060 374283519 446071007 243422014 305048920 775293490 890466347 646251918 890111407 118806572 293539113 236506662 721625689 214221846 523731421 483802962 647107332 40068174 810570385 125627535 910774657 184357943 240102024 242012660 533404222 734875497 817514783 103600950 665626787 155451545 496969516 783357879 931648047 347770762 662344663 43187771 55540874 416847057 479244896 799753387 964689183 40100547 871423838 566340617 660455559 900605792 920529529 616525497 777782629 282957689 598727187 438498561 479220156 42140907 888715161 827664660 974285627 719670937 743929875 773781743 966295727 384972398 718335880 271532070 398559065 75806104 709751039 785644585 919078043 794229242 867353380 885424289 947258807 316278612 790771638 11849119 491452783 43752154 753960914 290431695 627708353 472887529 869052362 264572900 522964373 134901521 509518563 401565718 412559265 459867280 526626132 162113230 176461994 473916050 910838616 577386883 753657196 196174372 740494246 174359220 414294920 568090940 917279046 539764980 646254869 68416953 171167157 524327774 701722125 379573947 488784769 194452582 207278779 535314434 558367672 29684629 699000309 680174624 817360670 924763227 942393042 705896213 964165864 35969351 523770030 540581492 687612695 916879294 983392733 268294599 396101873 595184296 613909386 768068466 838721224 237568178 983485800 585726791 836669212 709696123 803548417 714873460 800836532 719944416 929256231 75019743 532792024 825369845 845179307 12530089 301956406 720183289 859628383 711671472 774378283 614945795 897966613 301543369 999252883 824712852 980304675 474188717 907878481 697995342 753805366 226019675 479017510 703358522 998655495 634304702 707755404 611006612 892177490 552668836 602359579 827316520 964186306 590164250 722739621 138873105 869604062 820531420 898442375 682667143 824179565 635764494 917267012 181404136 201599416 39677916 861722762 368692756 692299418 844204556 866485817 849537279 957688332 201601127 580358436 939295098 959352631 973295599 976501125 208564802 578598855 628457302 634498118 681957690 899401610 605343238 658221286 986288235 993364365 844982962 935920382 625606351 876989385 702273988 928629388 380557792 669817796 985362364 996282207 390429707 593605467 778979864 814402045 893854883 905416075 506500984 863533467 508435021 963630431 870049392 918803973 280644882 775161464 695610274 802938359 295890138 432610598 852425706 893195895 51956078 582567227 503362213 764525768 217474576 534361008 122883061 542388498 154603343 178647955 623782757 989953231 955108149 996134353 206603464 372436522 220194082 245983384 147946608 699845833 223998899 311852150 247682806 499565987 871468696 987073725 753791829 983001470 331730117 389265805 476347722 679766848 290257093 329203441 323066730 444568410 905221059 985582707 292739783 801423208 618793450 946096290 828246405 869561837 117794687 392688417 421520685 741504231 924340271 939670844 959705846 984118546 560201074 648900745 672045167 695146653 263392919 723325293 83551915 124675740 709261523 786938286 895442596 945250144 360862717 364413162 527725501 663719349 477097572 758986639 808565890 831470482 961946916 993253405 631752497 790213695 54531312 637867460 813478534 992908999 263185782 837143663 273857687 986227453 657347654 783666356 455651006 883807022 322126195 775714404 28357141 341564264 478914583 575065722 681145152 684364091 528086112 765550658 134344457 178381671 414683302 494600063 936278772 976691551 429015799 908833518 352637597 365930561 147260687 677547766 751558712 900079862 902603802 988262811 289501148 659078857 896575592 950529629 994939266 995440396 738782216 979228471 510436798 686261608 169965427 807789814 424979418 770968165 867477517 897384731 959842458 979632700 697181253 747207800 31484091 508942947 772239351 883556830 144089478 855199288 239932883 964225629 320181138 332578941 983370700 989452237 779551266 867491278 742701080 831250687 103112531 385463486 460430087 523035891 546541021 911964414 73740330 368561354 340861277 674146560 83092651 588978663 749497218 799538142 569838766 597872436 770705667 840594106 715122163 937866977 948068096 994644675 654256531 672304373 194385015 256663459 70478279 291580470 811150288 970957266 74602953 879711673 93160053 543359598 824769742 881688020 390074214 563095015 419713586 534402946 562026753 893746619 931484961 971804432 425456059 945307149 646737187 930742332 786141112 814447712 19612715 888025491 323587664 820505309 799339484 993494582 917183603 946071686 750422073 948014939 983453237 995528847 31592045 459642947 469796153 512004875 767877475 890951970 782168416 852056324 739791250 762078444 132223057 570304273 362702761 747790053 227672566 956358545 556386753 694292458 116730560 414162913 565921560 997820232 271856596 699960918 333394204 516645466 264036024 467766794 518308700 910189172 877625655 910491172 936037341 947908398 337545703 565484035 810449585 940291773 69546795 665792125 256137344 415797728 327781222 794280729 289940594 919764196 434195364 589084164 633722810 764192829 869203928 900203759 449407507 690852836 528940402 888388711 778230963 963374362 841548801 964864262 718744116 885298063 553796834 686050071 533679162 977921260 930185440 956300479 568725905 661292818 242333775 594353769 844674333 877090887 75496877 774873162 886445061 964942248 135306155 444699531 815615697 992435342 695819806 948630651 371586135 601803246 727503052 790898725 230098134 690724148 133794202 872257517 986363268 990625408 260126257 461731594 43948786 434918826 211676947 349153766 505054897 603479088 891231044 931122661 556924588 670600326 422049642 657150569 176013258 817930896 722213732 818480296 707209058 861952609 981242395 982192089 787157217 930623282 710297503 980739229 217388380 582104229 63908204 439555491 888223057 999357640 301629325 365505606 723222780 915628163 289595105 746777554 835006085 869559520 200798040 916678324 801837109 911603198 89504022 551442787 282872210 555905921 62068071 131844268 334454303 912868039 501640581 909813738 296885297 373524682 252168615 908707085 975326225 986938186 632829667 937682470 839203239 843824863 795701178 966142972 314798349 849068100 734668625 768175056 672543781 742842631 460537199 656996096 759096718 834426270 808523032 928866794 726917305 735370508 236717631 966871484 157280763 734709831 586467812 653300071 887855723 908602953 61744212 132700460 382057032 382440358 676075269 715123234 688908274 880942246 753915876 941965537 639316854 671209387 237619880 279129321 723410592 856041161 926806073 971097261 431750746 669527858 906507598 934978820 819668220 846039628 925446621 935439205 242270168 716210923 753785399 908220710 954592898 969919775 210444514 383593114 490055868 708868896 160690308 485152474 815391262 991439179 598172881 810831861 118051924 593180566 994038750 994908998 622821321 797647536 19923842 674033163 309752887 462940003 745099126 971710568 937482740 995627715 262076153 798760613 961463871 978758127 817003424 818789582 518468359 926914743 302886068 965992138 407662205 408503273 935008418 974448497 974873483 976817566 186046832 277880744 144384110 818347505 879390716 944609840 908441387 911401005 995670111 998328530 10453734 432901685 916665215 939973332 593954561 804371578 354599002 941362122 941426361 981773061 53068335 81934329 71990558 538241677 576924604 869306673 624697349 844309207 822130469 833932788 738013522 788411150 948637279 975364539 198145279 752307936 796879055 922952718 913149577 961150184 914603436 954106296 200472678 264679125 46310254 954888031 715101558 818496010 252358095 391782847 275564102 412969183 168603071 900168594 177956139 314875649 488657527 514982099 822521159 888662418 259181142 735648767 689670627 986578893 363945625 809589389 294801972 470573699 39904696 433078170 683936450 901342601 201399591 780881880 293064969 589375904 108367456 142391286 581919261 869444826 15176273 864992580 856528163 913176616 929947225 934765494 826407858 884125665 940187549 940333573 88628547 882329102 226269218 717245072 436236983 470264924 96716354 611198703 65583843 655322992 156154151 633606250 672633129 811133098 515051306 639457594 862573398 867752685 353031765 593906514 487520601 781926228 98868421 927571586 359280073 754113648 148106537 998807211 615446674 993182355 655861370 925540162 310159122 635670911 780390812 989417630 634419512 777133258 917385206 986021481 424647188 583425258 95431625 518939600 870100120 913887129 208372979 800367128 79119802 587963809 790332507 841843646 742471167 807597809 928201685 931714864 664849720 803498147 39373271 585225615 864225867 964663629 958498061 968436064 188532172 351647566 198400435 946677002 13760282 954904109 425149686 763258730 701567630 865180819 895906348 896355907 794609941 843541728 397324531 454466112 987693189 995356847 176002847 388157756 786447538 883964767 801276179 934181051 902962182 931794486 671931372 959491612 530749395 679116387 319730095 411635182 199793799 410192865 739879333 762645436 999020352 999619377 292422910 674729263 161224526 217472036 490046586 584720060 143798583 473522112 254809674 903007436 657542014 724942261 396482818 495264062 186445990 364324807 734680145 854509831 792038668 843600591 480211924 838468093 462530527 892091479 737773318 900724341 120838499 340416284 624684454 935952165 69824458 330886353 555897888 647110160 513905046 969315282 221266240 895075669 957890384 983022234 621740112 799351196 950380739 997745454 873060770 984408737 972648724 998112201 903280660 970281928 59402198 634215759 189400149 357763058 844639591 925297134 493054576 697735975 779484817 965154085 707830822 787492542 134840161 594812776 215699148 561928452 404484053 671959034 270184901 771187541 741421316 788793757 85636786 701102755 381412963 620538165 549654575 896602296 970386280 980802435 262562731 276269860 994836778 995055865 187885864 689362226 286485450 903064319 9346414 131660904 553968755 883515956 480847015 937619417 926213743 947694469 604871579 645165579 378817455 539748665 384569422 543660743 716345923 919079020 225280325 708960222 215921416 649307457 786828598 975146541 588440074 734544645 488454167 702543023 437532485 705387037 887284422 905776131 475315232 507954880 717419512 743952588 34060948 437456131 593671390 969193368 666368266 822266760 42179737 166488052 153397480 677039091 830027487 842995479 287252093 711912262 295363656 806715257 411945815 828590899 712305061 884196882 127162923 400896594 549461801 944511832 508138228 639541643 267092432 657406232 915872726 989127892 64844781 236981615 151898409 512219704 190620627 804793610 13095412 568154930 164243531 640305125 5506173 673021339 935824798 970430353 466954993 556684092 907943913 920171024 105261271 188749089 522431300 746224480 837992348 947408265 375689876 552356295 927463035 987352390 73017588 306834653 718867950 762678462 485649303 615297640 269138163 281995070 567776675 755723197 167908666 944198089 309859744 738280012 761875718 962451273 824672481 934883187 522973142 663936701 693982663 709736731 871794313 873147632 512530836 846650577 624400130 722928856 441596513 832988780 215540224 669697975 361489421 812012826 468385210 961443393 899612121 954174483 89196940 440501416 911055176 988752534 526945288 980604129 816842761 932227265 46945684 297060757 34098064 246346686 308661987 830794293 598508395 801063541 484059499 711813725 117567967 666182622 522728092 745816046 100987216 322631698 860680261 937522032 688954843 779951189 508742126 530796524 356229785 479750134 748155735 779263642 134701072 499180920 232957710 337950082 655820816 972421361 699406231 805791634 445644786 981904754 906016283 943653686 65226903 779283443 789223158 795080689 178064812 911076953 686982279 832241614 560589197 688862051 57275961 502484956 433526735 664227132 805878099 900677910 88859644 834145263 391388425 849327246 545775916 701144904 437267000 921149685 685109075 897291497 377916964 840740128 516052505 645423632 233654755 606364113 956095978 972642368 514868493 684693153 962967728 995791338 66633643 111897348 812608700 977320179 231537665 953532622 983217387 985944019 432576100 982862588 664972604 880261757 969383193 970423077 370358920 999138515 871691478 976864060 808259411 920747809 458272175 882200775 538762854 687637821 936003672 951307193 75840909 326301379 89646529 505210794 803630900 976452592 78784734 275613746 816334684 831597836 107890975 768341637 657866126 993413794 535740724 750232274 131036605 959288474 785137957 882589529 343549741 795158256 412687842 959661542 133865146 927789994 87700141 101956980 182866121 795075513 99512479 425406594 250841573 716247684 9521774 12839012 451027020 620931337 320008479 443472859 793539701 817531404 34113172 467470803 541151477 927708414 787924488 809137769 76714244 282725554 814027182 882287410 131787838 836741452 414201762 661240369 671394711 855000020 111619520 572041056 349564636 716582064 580381099 582354342 837587247 961580976 384220765 928568424 599780480 687028475 866244575 914670541 352444944 502557702 859090958 901912757 256852380 822751326 334914161 741907986 585636911 938055732 410077118 969240812 712097001 769794806 903320570 917197599 556821442 761735705 791947661 829549454 167327437 955106714 615206528 721740000 448118744 631774226 145588917 200639749 721683819 955427938 602981466 837195464 756636493 795395209 460009355 873268034 736362024 764140706 664449472 858151700 442933601 600486221 902025198 930795998 563154044 565820716 187971008 542951285 482806843 887646814 976304714 982847231 142730266 950360985 746253076 844327294 417411196 588587144 638248442 824512745 341853754 760930673 458550537 748210989 806684547 928405099 369572314 927990165 590843622 846385005 904348430 913515572 154980070 497883058 349674655 444458657 257929535 487224239 543243118 805536381 154794346 816512657 122076400 610857437 414698777 916878349 395199478 966573576 616223093 725155513 495208595 572649418 666503862 683968457 578580029 651556173 178243968 991854879 480374987 654577858 44776409 715950961 14414882 598185128 746902452 887471426 986593243 999413172 588667760 913124730 408367345 979162780 927804231 961146277 735618940 863198548 909040622 927912667 822205123 896240293 75684775 972077823 812494534 936328531 394618209 403173254 199406883 592747574 655607267 957025128 238373237 265163915 392770584 721913095 238343893 636828539 359492947 877076775 303256037 753283743 783590242 883235046 919187360 922471083 308222717 516656400 690853980 827882478 556257948 995165826 631190228 986400372 956243786 982883242 682665943 783173746 728181673 949129903 273865712 785165949 371723512 622290948 998337999 999463149 752766786 763009698 17715238 288841180 956906845 986722384 224921146 658681144 735286879 957282102 366534481 491868660 569564639 615490482 386197439 450728697 692936947 789234470 207087716 240394632 552633708 701813937 256719992 990147474 954448903 994434280 400916396 882413781 977109792 983942576 31158914 501894546 347771419 750310246 980600126 989298651 15771658 339669932 343122075 607039219 712291695 933666545 569354028 709938729 750829051 864793844 221315074 740285268 485012135 800385477 374217609 679028222 963603693 992959548 895867237 921957357 915502343 915768138 56678968 629766028 293648462 489956150 93568442 797815122 777438798 815840305 63035639 415172267 286376303 318603596 850075813 988244956 425078173 687262041 646429818 667619955 244451744 362889909 198469264 914861026 367144132 685863469 62444239 633041765 109095821 675071950 14385098 254605048 171319878 992416639 594677558 937485784 128422462 476940782 417661458 585573282 144910214 409570775 928954560 982474168 656995984 935578945 250942669 322011153 7526740 218247410 818471091 959440380 643644182 770869068 208299934 439242716 604833341 718162909 219772285 879893034 726460932 734473954 132142767 698672987 157289079 240053647 385733148 657828421 546227242 959454858 441402709 937945264 233352852 359350548 222027463 473282026 557246681 811105198 295535319 682930777 871394464 894722882 464050502 724273333 313502892 764320711 126602803 437811935 411040636 436685904 432025643 543337860 853579578 967544233 936480837 947235925 381161137 658448033 684330275 827623043 292765303 821403012 196947110 469385078 537060883 654972014 110156562 807737443 417303008 619533338 206543783 402232737 546731482 825612479 782783922 935615797 200926117 752462092 630372185 736516642 379174298 600470864 185202679 217947661 849676943 978975834 598169746 700629122 44395035 886962688 979562799 997262808 791870476 864291799 920801237 963410219 768941540 894762250 195165902 296785072 760493659 829799667 933772259 979574553 189002708 606428829 952228965 978303739 407279450 721660278 805902670 971087263 657450512 904877699 389279862 586900904 402352087 627599635 382234314 547006587 412235132 424108686 824017921 879580571 91387361 339371187 773535753 913573275 50768609 544916879 836252407 874255872 473107323 536294240 383906008 814835182 418969072 791003478 430694283 974131564 853984817 889773437 770221426 973502353 604998594 976183292 333182200 900149450 639191515 876983593 176350027 194668353 655857401 822906320 548728691 560053319 639106500 931987030 531080816 765221490 663565255 879017377 266865714 496823502 882461477 929731184 192790345 561892372 86608645 557258699 297954541 396450068 405592461 731610154 980192367 985045739 531469797 939611080 997626085 999890927 302090215 727495465 481350640 489995077 572215335 662103599 483117622 693210187 723508251 835447116 281490698 886998014 506521543 713892209 932056306 964655614 442174029 508755984 858182234 979731125 815599715 936643725 621950889 622327073 666834875 983695772 610436406 916067759 591462862 838005558 110595832 442298615 978854687 995357753 495552456 838774863 47052100 593118566 948334645 961793482 192906122 400330073 647042050 659271305 435003485 995844185 149455825 919919942 813403857 834056666 514716300 775739829 247286589 939318374 495867524 681322092 146564868 767009504 567322425 847304461 907317111 953599637 673902611 949209237 999084157 999880785 554364859 939524646 189088753 699386382 67260270 325513646 908319544 939880730 611026458 777593274 794820638 859035761 350037913 519856136 527333453 698457839 259994020 347038155 822219863 998348163 187316790 729174234 182564567 451906203 728919356 930796950 706227416 714933452 588155045 835669169 951973417 964765947 341694588 759451097 957755217 981185536 428391384 670988671 327138270 921272852 198586316 453572020 145912359 152310313 926502174 968299137 718147696 928815360 179851448 964714523 620721039 695979940 580765472 994108732 390838405 847403234 977000244 984173821 540017587 899584533 664821289 674436505 277895602 657833849 316629156 512371263 277861591 524339230 452609251 926670145 478662636 989339615 988718332 993925423 924362137 956890889 895442210 940402435 563497472 821109006 299336203 832228395 889315703 965869336 134598410 651385762 712612127 928935152 316790462 990739163 816004497 902676281 654029878 996805272 825787860 963989169 803170832 980037579 485450153 632033233 533434938 847366910 270089520 562724842 753313815 758525223 44792211 885005080 831177645 901062594 804775139 908346261 471998879 534409742 830170352 876171632 118335700 166665883 768113912 855701639 96865459 798216593 552997806 907306935 609241851 950064509 443148541 668834386 468961599 762818846 98180017 566021749 24426344 719092622 469044001 838360207 482917138 592874635 110174916 938385716 115301188 810704553 151602786 725480054 760896478 809278734 367942148 778111972 23321301 545643169 176182363 392571958 946790475 951102548 512944260 517154865 501541055 922447518 446716364 838353119 161616488 557676717 14418329 585838830 229779947 672663491 695343347 866592076 794308504 941594137 694789979 763357738 12173579 13871506 655719252 864992913 425072669 483504374 134117233 152479316 782210036 797823146 839815387 989499783 356704395 895926685 535102152 633028330 896385187 972720670 637454944 817250502 911105606 970440910 716252251 972090145 760054157 761417706 26949760 649920135 921104568 937908188 697261525 775768479 810585382 916782344 953449269 980370014 554391366 612658537 34935198 498558478 94690461 239944073 801798033 891166703 710075026 847348170 23337820 561443229 443749443 901687424 246680270 717982190 523119509 925543869 593214809 709077432 729410522 818153950 264039228 368413087 528529204 538628014 192773837 575054244 830963236 991732325 924949054 942459923 898854380 910330450 47470151 721557078 34322383 339069956 502861847 552841694 172923100 540720181 611531528 919145399 802090973 809774106 819085671 945444400 599914889 799599356 990448960 997212983 506681606 526456855 35590840 862283132 762763777 789128660 258484048 450812556 827917159 837157682 774042635 989682053 699251738 800914162 963295774 987652984 366376599 370804484 676338280 952973000 194514716 298814566 559156514 872470133 142425566 745446427 969586109 989818471 806177730 841372146 62458781 322862844 448927317 918083250 329806604 829666939 276872976 584085448 18839094 975700852 224193469 545526546 609544490 835801767 18622911 870079358 340127528 821386980 377264301 604893595 952214157 990642506 685239498 715625483 341901602 845608320 778405071 801971685 149991366 877099279 736249751 736842144 743587902 824259298 465913109 858374528 144164541 231890571 992144476 997271995 983066469 996873238 662906004 708564986 228044596 316754316 419472203 953697433 198314593 222429096 452355112 559645908 544122332 790069391 793438283 965461228 523058673 980731466 815098635 940679186 654114800 710799406 97010558 261431011 182244987 672441565 771771499 999227518 473771085 562853988 778188437 977475468 376409001 893544502 152498212 390801159 742368642 880412707 185021044 245505953 864771919 888132955 511339063 850008155 57196951 174332936 523871634 965320116 249481500 587535950 421579492 855738972 832618455 919320771 432338449 584368652 283678242 449481288 579406495 890108616 679937099 812230409 737577204 772897524 817359554 890818575 736948484 811732871 795573252 995324352 83976974 503082874 875303816 988346305 360664972 548239667 37791554 984878377 489699976 831696879 446685279 967535649 54033109 501971780 147185364 621208784 540019994 605236961 309319171 730826590 657195469 952125187 827622321 853207482 885958079 944023888 395589945 837497750 929490521 947009654 642118737 964524575 439769645 915487367 533843895 785576461 671955362 723094442 512652627 666460019 992084972 997000076 799973931 992120626 411325681 635817782 196893383 941156418 775764897 936352128 928866961 947267447 883505080 891743350 28388769 887646046 637988817 935708815 625180391 959794754 810997248 877358658 71678393 552487127 820549547 942427604 371667192 813089204 156019270 842748656 442710297 736359018 444302197 669080036 331606400 926721464 363193302 529992028 800414655 813188235 822657270 869835974 108883230 942489889 694178617 969595055 455837189 487742406 525416434 983159269 232680174 406199287 752899133 843053441 767258682 855462756 476821408 806107544 469843247 985018856 221055744 321979993 91091469 821510418 290006693 933737971 285304031 292090263 16376412 955749503 533107368 918715730 243552571 965649064 875522812 917901628 366931096 721007052 241272907 824798760 523637463 559331334 414948891 899626032 627626399 940115896 621344298 728579537 926954549 980505589 204625974 700362316 443548331 996020994 668613148 781070684 563995775 744335074 936684162 949156943 600631264 703512686 636156252 738925746 202820394 970290537 948427626 981630303 408328464 717711860 295436869 648479769 116727553 797330100 797666445 946642029 653698374 756990330 729492824 952315137 963635260 986529213 283674086 930303003 481045194 820411574 892214873 981464258 241064006 830329865 915132900 990993697 222526139 417130596 501542223 883070467 884821769 926725594 499436184 899919569 229076235 986235797 515953696 540298201 199727803 383344109 668942793 781015613 483698563 611179726 696789792 794906146 372749979 402638532 362787306 524517091 271393665 808857608 885224046 963452936 918151245 946200132 918872257 924548365 831776423 874895128 724496671 889730719 446033742 929311534 128813085 836859283 91589757 550556598 100427173 299332215 628908838 646856410 600516845 962853910 943469407 957876951 510018424 516090164 921549133 945194757 11877303 242693999 381924527 712106695 898734781 995220982 441312459 510226111 313346445 639517745 797348683 969351773 820397067 956292794 175881223 314044172 747142225 924092889 231657111 286640359 345872373 844883312 159128514 536924644 342823235 615818409 668577282 967100013 165002096 526126881 17469460 879515684 774300941 922054463 130145475 358419126 272178009 282016481 772548108 871005672 908892342 947251385 42019434 83625759 791972834 827349710 731181126 868805007 446213852 517239572 9738060 128155425 628491656 645693919 160543975 690589935 998488481 999638941 797744913 946510406 18184516 695309010 921011790 936073246 484712384 584187887 127196222 751957456 159696393 648577007 942095546 968492077 474135131 624510932 661233559 921005912 484953366 666365070 46636092 299068286 326193951 935743706 562710480 906375749 226422278 384811503 280182814 327423038 507746789 915310339 972129536 974074076 561847497 755479888 693673079 897070467 621538795 647907935 243349517 716231278 112286359 544396623 484416730 881355602 503865613 819365018 594399159 934752658 195146610 860070607 51014210 652517333 14027221 495870130 559901458 610597786 669032414 780285426 935007681 979749772 903913355 994251494 461100572 552967312 303779546 519280283 556972077 773646635 923614578 989988673 356595141 881697971 53096001 825127616 182127141 595287173 425452901 707036277 782426842 926122845 831586266 959296189 268379210 512561941 555531007 659694606 509487190 797977110 912163013 999798065 50830463 968645458 728620544 747318472 85238323 649273651 443752976 551576159 750436913 895077533 497111098 544244102 50161999 545486612 494042418 504032959 517016851 540121030 776145504 852058551 570911396 754172593 149218737 528489383 559517798 822860474 306344658 604733518 338837435 604476370 259299734 821684036 859032588 993195103 182048100 305029038 521627272 636398168 156279586 871492112 606624935 770381883 830587464 840192311 362303772 704935188 42447448 237717167 218307230 803423992 76650072 897464230 436176412 473516124 80279038 909704545 960426073 974042235 336803699 762854513 996699384 996735268 729799121 790161586 65600852 247857183 849190491 911549212 946609354 988277774 649257626 968132698 332916175 578927702 444017410 880177756 388864669 389876700 133479346 471389331 475566679 967399160 833121138 985191918 576535747 768753552 836092190 981806236 562675142 603448872 514602418 669568765 708849849 836569199 304716317 961108024 653962103 847585022 64843953 549999086 602083404 924032722 868163466 981058228 969628227 975846568 14104300 568523162 11367667 287475630 475542630 914296273 196077261 817751600 910017099 956807579 534628674 626906184 728061765 916492430 12248106 104473226 953030845 971215877 410926816 722928495 702665151 767276769 801276581 912904632 717923343 909286836 93060375 743134823 633338628 844627338 164276281 865497269 437392865 855431886 437167502 617142444 13437085 713409037 764197531 852701570 560909034 734819186 726220657 957579227 203594726 866508072 966146669 979533666 492208439 554130534 31600465 570984165 961241199 972158689 896118221 977364623 829121645 892906344 97868183 441758527 341327184 863390506 813800063 918781722 997585442 999254640 697369233 957780889 12640776 782059955 927553037 940505397 831153814 852052860 652878254 786269595 879691577 994729817 190635309 263081300 362961155 620417423 320037529 997865425 759403127 942648472 817463767 977891817 792615604 945615154 216749749 946744113 270081631 861036240 909321293 924577475 596831313 839243059 908309642 955300841 661401243 846655655 679946286 701352453 651486583 841961057 983139823 984689133 727922285 963152150 157109161 502025299 323043581 692753555 293282253 379468375 202540825 673694696 439928338 642331647 364136623 857480902 923794340 946484575 882737873 914483361 89882872 610259689 406878655 604481471 323933642 501521084 225981269 704265104 20119244 444143322 44429600 425384855 639037429 700261059 945097012 991832630 638827288 883435681 28723250 616314290 591979202 964678619 541183924 902218081 958822215 968884786 260495186 654079204 619807002 878424418 88891152 959137700 868093760 875379994 711751312 926546884 86167380 824521912 186329890 513039691 516112096 591730365 253057307 937715619 467115640 500035766 463077867 871022335 581818506 611739791 387583490 988499020 543223357 751775436 213292793 752483741 435205142 743146637 808739451 923056203 544005663 983399427 898374760 964771835 262725280 651577497 21032688 759143015 901945425 932634229 650000844 853005492 480546189 891218098 516887347 979179370 799558765 824001222 176996556 710840388 853531392 856169854 993209423 998151210 45241616 770949016 811338203 838403261 932710630 994576340 655774180 668848728 582962612 885965512 176415419 287686278 673907148 685031677 829638357 874799939 704035747 946597244 342667588 613358159 797301751 861382931 76179855 158729227 268982572 633615936 303365122 434478525 213127667 450344798 507256619 754688456 777560412 879416162 95810358 974264247 982145302 988285015 164673873 610243268 430870576 667607873 887599467 905188678 209357932 668975160 396423435 552122597 302521671 574157974 705961597 718267549 791449770 840880823 386748102 806980163 207253811 730134090 227169464 741598645 160975908 515047694 202888124 293866599 582699165 985067777 251658279 792092278 528733498 827731988 282497179 448103427 615381933 870508045 789947925 838605753 200655821 550649498 685354019 723239407 29086538 57229945 971086444 990105449 773084953 775821653 959629386 995720697 404372178 726589798 770099362 914773271 749560201 876729578 361718142 459109918 9870473 724807449 256743271 971737754 738410487 987042446 615279632 814170371 149017808 859651020 660889223 743924953 36114908 782807930 528455090 594501220 512853030 826538936 350565082 884326131 210626884 634854682 809809301 897604021 718075691 981566674 69137897 122172635 750919131 909279820 414047311 451378723 84333525 228257846 332613727 580329196 163264358 882380934 604086474 922833903 807320857 823181753 328454918 380360557 650405486 943949828 751068824 848958310 173138133 759898642 965703777 989284958 82580943 965198230 465585549 994899817 613381953 991077064 810719109 887768458 898154553 944621639 18138898 390719319 308477052 849077714 750981970 922011655 173490186 361852892 738004552 999890131 414476358 683777521 695228329 735906832 549141844 907530160 689322276 888679511 873908363 936471448 919259255 982780514 151738137 260496371 993066421 995639558 212167721 447698480 370059685 988765432 241634376 278700319 793323277 891303326 535061715 999449654 256942586 521661880 553196365 850160866 779978798 924884158 239881973 472247928 264927756 719766448 876287365 930993400 428378545 559897552 777475215 902028085 302555149 875582281 805175052 821158695 254364230 854978987 462973728 813477476 808443325 944022599 720623970 994290686 437293626 980755767 6153095 120530743 878286134 997786839 209043216 316119962 991501488 995408872 588819077 974739191 390742011 673472638 742444929 857111356 21038143 424036530 952626007 973847581 268244117 435235816 322637848 336108106 132656708 708518943 681483342 965841779 296103145 574555683 288791763 746744339 542883390 857724227 731187979 895837829 790490142 913192790 939902035 959067415 55028676 123360222 845590422 986876549 173644968 191328303 415782147 900019537 107117814 650363113 675768933 676979122 770265969 890754585 820980578 838194398 340152374 500353786 262749276 420781427 417043798 940991456 165864270 513496541 366238652 528003302 950774455 974199386 602537523 681997211 12529638 536955150 126146998 399716147 456142444 871347287 886258402 971781461 724430865 901427235 755691672 874050333 304800864 342259695 758442317 846212556 183687312 593004628 284079372 814757204 578328331 998551570 841129822 981166141 194440243 713094741 221337669 450113964 232361843 772538330 542865264 822194748 878068694 911968359 764384327 885313390 174394912 563041815 282715517 976714424 932065778 942052876 684585161 739207403 140374398 857728676 88315645 547778687 519950429 912173086 44260975 607762517 548889420 712771309 137069714 272239708 393863183 459233584 275331365 768160651 996927152 998464304 415606007 540409987 442493959 976257029 703155676 917200602 975543794 979001964 659270217 903850029 712133051 909435153 835077608 998009915 11715052 663187299 995830283 995887426 750263785 752228785 191668074 830059613 390918041 873404054 390289489 707264274 785964558 790045602 316641246 328613161 982951840 991619147 920877113 953839304 896142889 991292401 802008241 900761524 630997739 920261707 59955911 885141407 506902657 520952685 643046180 698900672 77216569 367389580 544453608 808134882 513462230 772664530 264292083 423880024 726848672 757410110 459442223 853712913 644954106 892698701 721735135 751719960 775465581 809038595 222319615 733485324 25786561 824593761 928106446 952190922 408228045 887738489 293434887 680449647 762903577 838502806 803788401 984749657 818532174 883369475 991740577 999574636 798097949 872750472 877798430 901744032 979524231 999978323 240241530 882599490 571684013 889213952 957558267 989952048 114332178 772974900 737854365 978472624 652207529 788425753 324501103 803889629 855267866 981065907 708312745 771159065 11856981 442839364 642258943 691169272 500556488 878303751 250509243 627163644 759941518 873675803 916603028 996957592 749799531 758745692 805374549 952979898 12466049 203900679 109146785 562621682 348407001 891952409 719946207 752294992 94669126 397140313 234529075 293275481 177216406 989772690 107402053 210069679 757405199 776918023 403373064 864767028 207908203 975084536 444302182 912273267 407849835 683354896 737269624 927990526 449757925 570464330 696926176 945737408 184315429 464710833 447437150 515744238 568503956 619656960 432513265 735071454 571453702 793959969 126368382 747013433 271275470 301957092 99595960 159966344 146023443 683809147 85424108 440222738 345103185 930874307 692811349 936477519 514481690 643337887 872069770 957250791 291371468 648039210 407369945 444251671 184492497 379594073 968351951 998354602 816743964 897396216 12374506 310279765 384286165 741140797 58672439 841162228 704394944 771518524 198976493 492152956 754018078 890178488 476004785 811289912 353383507 657321468 885017462 895463996 741835972 915902952 479913658 500888961 559326020 820813767 785438080 890232508 714744445 887965894 737615897 871824507 168945420 611847135 933063125 969043193 568651082 758346565 176592269 325113348 981676104 994463180 450722741 905312267 711253795 741505875 720173403 827450429 489337344 703276076 65380368 379688785 698368087 816927259 607964001 982504752 553494304 972499919 19126434 582787856 683971173 688713132 598927126 630862959 179362986 737246136 386513071 686277139 569175703 768772918 800175972 982841827 200912566 528868102 131121863 850888047 274303149 347523548 447514590 758742935 117084544 749289205 830053604 944931941 805841832 921639309 756948505 899910169 327167778 870577604 368402739 993955779 259454341 858825508 38078988 558905798 472660141 875336280 664940555 732353776 433818168 812402895 944367459 954059916 289519753 929524069 171040840 544681830 555690723 719952725 547657024 727750345 899364394 967783207 159262989 796587688 539213734 760902796 726351225 747106490 449392578 786801261 614348309 638611934 210033793 940593909 82269939 909922471 770904036 883343729 54575954 435404956 412772028 968680345 638760921 715207273 355002144 699205524 261698974 288434023 520818506 956830601 762814075 826686660 353626110 618006565 239064880 883919255 569246105 598133117 807174381 875490931 541070297 735678460 567407055 895251152 247503021 582442467 477195861 495996659 19975011 36428811 581986704 741126675 310508132 406842178 996858121 998684742 571052451 688768611 521600380 836565460 697002249 760850235 565266704 826624581 650177332 701368824 255854057 474349540 975550822 982473502 607973652 663852997 157403789 642188476 337204488 552474008 345640687 948254332 124731337 559593670 756315187 868371303 628821703 891580695 575299173 871768991 851571692 929908239 895279080 955469725 187099828 552094088 909148460 916214899 210033460 688620138 532391378 727311778 441316210 494395083 172212811 616077352 819702139 849134753 921389682 946067316 108283611 531185164 251236035 844265416 770253436 894633208 857565299 923467760 231124824 709918984 265442840 746627595 918479542 962969081 813983940 846332945 357457025 440097005 443997466 968149987 624403492 715742641 106289957 684130656 762089344 867690473 970225565 983509362 364083427 870382188 628887831 825001814 321841591 685524810 958345737 988429950 946445003 968240013 711805761 887495074 52597717 706144138 874037351 921238273 408206265 591579004 381955682 434943213 326246213 769227491 754946016 776785126 167487691 353782948 344357864 549976705 905909475 968132909 343667241 633452262 564339370 735759000 389577836 696520728 501204309 758165011 895618873 977266330 368708884 930930531 692681806 801793338 511522253 973503749 720252325 828552760 224827981 617196557 614652598 945602007 753901690 820497637 369661082 978531209 101082065 562838279 415553915 433402472 475160278 999493534 572483377 913855358 287342744 666897699 881498849 963217940 708973326 977693178 827294793 914634871 244110447 314857584 204307389 551414556 325603772 557977449 539193362 683649191 945631348 951974077 91307643 580943009 541502524 873333617 878161990 940296049 967915627 999629733 570996202 779040847 110930810 173089229 288142944 491580580 427570646 442692912 659063677 738984892 825404857 929806029 898890915 971784388 139932019 492640430 147701999 847299381 517269655 798082557 99209027 144216089 43222054 226505622 948234190 973601280 560172510 952270265 880549662 975361120 576251176 732501112 189818504 673077811 151327438 474905531 626859113 735697550 556640359 751343824 793803321 867367042 203335391 859562095 816369355 916742955 759891053 959397668 621059165 861177910 678720298 736609053 447077935 960435760 714523435 916956542 549679383 708219697 310883415 529616055 721101306 868999747 51587975 142811652 508185153 907847842 693517394 993040582 879514457 907169089 469473350 729792178 102520376 867189182 192361887 942980542 945493284 973730799 552199482 788795259 65017478 368622635 944721668 982447992 91747836 231115612 642230002 880059984 280701602 440450741 223533823 851417666 31221787 480037416 854125899 902128959 152544545 232172615 491903379 716431898 606127381 865237216 326961264 736874530 269309360 945196967 618619231 870050210 27895865 416568800 584392833 755136866 460166352 908095328 78223404 346097120 382408037 504050849 608653461 755860349 885592613 886092442 782224382 801032056 878628268 920810314 882442548 994822714 600039506 799075057 945300010 964453021 524918846 930924133 623895132 930687040 149691229 424910499 556853520 766061026 38334381 48831716 894175951 947445348 521165442 816695681 585567941 596515281 954662637 968679476 359520211 877522700 864064385 947862842 96163900 790900820 106352279 316870859 140078191 842650117 203998614 280758565 755514408 796932611 132080090 640767709 536336186 592343187 519087558 942779367 852480965 935787149 495518052 778989354 386139112 578222244 569681200 739920469 845152758 848522336 765017508 811579587 397434848 765670425 35444199 330086035 138777584 306142464 246682161 862075034 525767230 859907692 982633650 994024542 791172733 831720909 68803863 788592150 240900565 256900847 509988287 601205744 705652282 884243442 549894437 965966924 231895063 970364603 183375 337503551 470288453 886591563 2098586 663648765 564911672 862037377 999493577 999836884 528218635 936270121 437116015 850872198 28130572 101189768 183803635 931698945 628091372 891802670 520056479 943809041 912099414 983286559 351340517 451957195 839857115 959579595 408139088 853112566 953234184 964190004 278783184 697793235 724580931 965674659 611139800 832778549 955785246 982590299 983264819 992012756 118574925 325513061 964507326 974290039 461044351 701078011 533664571 941500245 868090059 991332066 638167202 695656461 926113084 951166959 670577350 906441126 419395122 486613479 148322885 619738488 680379713 714300133 29256023 744899879 832957160 912433215 892046951 902733790 513822331 849533583 404500976 444837901 691030341 893091403 173830448 562028608 40072841 987290904 687960586 932388784 767660475 946702728 813895390 870220315 441578355 676046079 410000520 500904893 334794610 855461365 448986378 822761533 997108792 997610471 706422781 841903458 55681796 805253688 548583748 711463592 271963996 958939150 311144119 632387484 761303765 963917570 575268121 674582768 32739665 195147595 586559051 974100877 671834110 975711644 773633805 797198299 325368750 541573312 441937584 558955255 202208838 622128887 153420062 558098276 84837093 370376354 975114013 991964091 877042427 946304571 402885951 712367229 124189422 866380249 567449399 771457542 979669194 981285750 787238612 787252527 204453294 440313601 343318947 547176347 657916029 972333485 739728732 858444357 321395540 744048393 374291787 840277311 558253916 756883843 934773039 941465457 242267737 768920429 670248574 894337435 628428196 889512798 212748920 249269571 486436002 870677221 14918619 376937900 669242315 888444525 664791937 870784823 760106224 850492209 223887975 939927413 487283747 829764611 740446622 802698488 742365338 970272436 481789170 855769062 755451385 775310542 262459590 877445722 45591348 171580527 28958161 729421313 51007424 275629773 896202175 936325382 460023410 588644507 704217146 755719355 712564926 889753575 203664554 748176233 740519576 843764533 75876875 221874132 996111053 999024507 118105799 194277357 792940636 890897680 183025027 971435829 170555512 630144294 378613192 633148128 998330805 999411058 13145859 121347436 104376381 858331774 971496924 978032367 237690918 577960063 665724402 772128352 787980258 989024441 517679454 607762672 170061351 696579674 331830415 452396447 324946025 389749286 394998602 496816909 353147167 677464182 278681584 449250256 116510471 915863107 602464015 996014831 328189372 780848320 624967361 711661847 570922541 837559714 464354956 918318309 865312879 884152967 68617147 286043153 193813089 505897862 379900460 534424690 174392739 750336489 40603114 384456161 50979457 97684015 445457311 518699980 923189707 939940511 675941551 716896983 615735577 802932245 609610573 936570257 153890597 608116675 325245377 389325479 840540980 879101887 227333154 458285900 910465670 982164956 745207980 984400292 268089377 699053789 95504123 822909824 104610945 131007529 367905065 875055437 378100678 861464028 331916519 944334204 595433835 894933699 887806523 940137028 429912025 903733976 571718853 705438164 496502565 520768525 679707094 826146142 857607524 941668048 964347719 983158194 434782052 867993492 813508403 860723344 468089836 827197066 163750918 574110000 299901230 947167298 970284971 989654247 717781973 746111933 549101241 714110171 604650407 723189863 322516283 457041521 893147577 989813792 358442499 822590431 698080089 950797316 100434986 774445931 912492139 947915372 606074339 999213530 6158078 560637100 258917749 630122948 583259538 737932718 436595988 989392642 467192903 538982961 265841128 920700479 668807605 844320756 493640576 797596381 675348420 873747054 318207010 536676850 996321229 999690576 163641110 284139751 798980955 895100359 417279654 420865521 40640442 622470406 898702478 907364516 940455082 948390352 623087409 745993693 574629643 997210651 412295838 724246559 575592291 938692434 829161859 865829316 685035740 950140775 716315315 891606371 132533709 512483316 855310488 944126351 527217702 638140224 13178472 862975233 853217599 867612187 797218875 851180393 269848261 826190643 118653153 609382260 970329525 975472811 398206791 873141260 648551911 776075467 714332025 893174814 782351400 964298094 973545105 998936897 940384325 975858212 976192058 979582795 504254312 912274215 864217039 914577566 325883948 949433379 466137366 903304153 539206586 661463930 494510051 651101320 693682219 990727246 526826669 951851231 744225473 835704964 874359553 907615622 491345561 944302571 6155980 926307307 229277122 550592687 639466104 647556825 723974671 922806425 237943019 987688982 862364477 877436300 363742250 574543472 287134658 782361395 68219169 784477324 712236195 962172055 522517823 590044868 916213008 986532786 939949986 955146818 292473448 548797318 973041287 992157764 561676645 777662088 277271262 381202734 924536938 954412422 544287210 743723061 196033849 360547340 237589316 567008434 864535528 906977644 431252107 853272208 144268460 518432164 135310313 838215952 502560890 787963625 356005607 600040471 434065715 597974551 724551729 991294888 348412361 995570129 400598927 835746098 183884684 931082171 134815716 913267536 249928172 415056553 403269440 687230430 537290345 944329085 942975459 958470169 363038292 975366133 375835729 490035283 914787398 928264217 26548338 952950957 690342738 829734164 902501022 939785592 387342630 927337363 482074485 937583750 436459209 521599445 610027865 883073465 233605166 737193271 290795063 925132628 817142911 906129988 30851972 875131947 601318549 617640258 684149243 703607886 360880009 953461423 254248235 636289133 752304295 979170355 374632494 911718999 941921037 985700086 379777603 975854879 318945409 478431915 959049908 996877180 369389661 695572107 919425223 992920077 925220338 969648613 679310094 922589396 210173555 877992976 745997934 916148833 534358142 782105434 330097898 393125644 410329720 860617306 292855643 296891845 333207598 887002216 946241421 987826700 828640605 917699815 624910523 819088101 210166375 533975688 316722698 455391188 442389537 968234907 942246919 998540662 817174365 914245874 691050209 978402100 595310677 603892986 591539872 772580221 682291234 890787133 402874152 702738763 759059233 990584300 689099186 924813898 104547877 434959536 464795715 525439758 15279615 995597351 3763835 43523600 679788460 936742747 676247850 685958628 746718818 793289963 251418425 291245636 295305328 685187140 789302255 829129049 676377793 739254974 865918884 902499274 799806380 825631101 340322505 748616859 354246623 532337844 244136239 995009300 467272221 942177283 247106305 567940394 777416789 989683127 227936291 666053469 60447409 866829860 337700520 788682746 325676666 548088774 384421315 934004514 461411235 653504844 97973007 962104697 399763959 595930970 41178708 207912221 852499130 868464840 696222649 928923869 468232529 508481005 334437100 836597532 181400674 328141822 415822922 922883245 752804138 801465548 904440531 972928157 433792627 538926004 944531135 954464463 244319826 329537545 842257376 909403307 324610313 686018097 789904982 792744223 532257602 813832598 64095350 519377987 905219731 993560916 400061051 461018461 737799844 868271082 660755417 929183680 501246474 848388718 156796869 505191223 276110058 891593921 289813644 875199181 690775580 869778030 415674218 423805334 790046474 923319567 949014218 996571799 549431308 834923233 679745764 754308378 139660614 259111314 438098075 493846004 912704825 920099928 674851641 811231268 672893372 969734507 588520135 638609695 887853450 912379651 81342967 337008396 808620145 905234946 117023558 822834680 554420417 929799318 903342181 990828967 905778232 995760142 623889637 774364165 288597306 458152436 629045037 764031690 574868396 637444406 755841898 955640127 27621864 127575948 765490686 937742992 882294230 963670455 96134976 434333167 5438549 540150563 26778953 262163880 388751546 896331266 38251693 710267347 484154619 985735855 381012572 954094910 387248088 461066281 558182845 888135821 588308072 937011492 55176022 586931718 55344253 293560712 637738261 942793877 372244329 926475209 237566563 762072290 46565049 575899803 37543995 174321376 503759681 615635100 132266385 476633881 530181797 703709657 933811360 938173406 838996837 951541857 327217721 479851989 596166595 812163107 571215711 644940650 187767970 479730702 502087380 730546540 3404439 874340518 708135733 832660539 168559953 729042331 138069973 317285962 294692883 672005112 381531311 911355296 656184550 683774074 625285225 734064669 474956991 993360867 878244681 895614760 174441098 270412775 987586053 995720815 390706576 594738884 686605111 773000974 275619141 644695367 701618744 882350913 982342903 992640478 333020206 840404981 153986292 387046289 562804169 684676954 285749003 592718307 206900672 521785030 411802562 747550512 951557809 983456246 694579228 912849179 780075190 786748893 579507436 835592278 137050437 687846595 583465671 623343864 613725328 691280622 847513851 917261423 468014303 813665316 208653066 237418036 915888232 950363249 726556118 945549498 999866390 999880604 360674327 420681012 509886450 766709088 508121150 577634030 38700255 195133235 921345745 925749672 295702592 353129023 142010306 502798571 584645954 640907984 393295319 702100026 791148484 818378814 366848905 371699846 422672067 530132164 508815883 929597292 525319828 634646813 345477849 359287635 124144036 232852150 276190617 652971345 288452519 910597067 566773473 902618881 484520189 802344340 813656568 956622850 158193333 804434727 950746556 961343123 914211418 940671409 930129219 941012735 160111703 505684636 334018893 583100988 500372469 646934740 361283125 401588835 241221860 242830192 212005323 736638750 736100711 943864653 56490330 592772288 859450839 948253936 263454170 985462614 789838282 951792063 357192794 374182730 590577281 944047939 758269410 908464099 814175293 900793279 299240396 793476996 94985949 758696564 42067947 358059209 129396883 242905017 390233852 950674863 580671435 783005165 328667007 459954821 177352307 495140291 227600693 433320309 878773449 927664330 571236335 814504322 797195612 995811608 316428137 373779144 136200618 792112748 720710386 902558882 851145701 982521669 510169871 736272889 434907409 618919498 152240080 971052256 946284636 961301940 641716730 653750248 190986943 883858749 455395418 706110872 238353286 994656304 720824916 916294134 119665490 668878143 311083947 959272742 151861722 705202488 674061214 828161874 204805472 889139651 805802605 918963850 169694510 644651052 270919954 360729342 717376685 964934324 622455110 893224135 770114914 916429744 659640904 662758255 417308118 529592581 33766464 37083916 750971707 882778565 538850234 655391038 938973635 942678673 760891302 774194793 627908589 956210065 20593317 453554276 688632561 808976579 454131099 819528770 100731283 405415571 712206891 849883741 26711855 838243489 641065202 797546998 909688249 987597978 208411143 997247658 438761103 536310781 589875384 768535782 61484238 850749963 462246483 633954808 417733898 986439332 984217574 984511448 662642157 704894505 946528826 968618008 22154426 553962995 127902116 441071269 832382090 943527305 484212095 940004763 570563933 648493199 598863999 680694699 761126096 918585646 264906855 983450075 293717319 732655301 699713281 958875458 176914987 577942088 684254838 998692974 429084285 877478297 243663961 474472822 917179506 966804863 621361207 639400526 431897088 681999293 342730254 417853705 577899159 609632567 257789940 923101782 440320974 916721292 111862821 933008686 281002335 532494235 415195457 718704898 709568357 742718619 840002575 954600887 200039289 390501282 156231904 498476057 521477676 782790443 6480083 494671575 957668418 993882815 245177739 995299691 404761994 855852621 695802191 886055249 38479825 571490390 59866652 253270608 408738450 456539966 184277238 189827803 653509108 842606635 956295540 980585146 627736362 801704576 942513851 995916851 962565422 973286779 534662416 865785582 985081351 995543941 128039909 382789525 182952743 579826803 64195343 163165730 428984039 602800676 146868114 294277927 176701742 726274218 527584278 870672665 673632196 765405188 532452850 727903423 348629957 943616204 868679631 956974784 812097481 819861893 705216741 916024281 441717000 579079170 812761906 935899658 26395361 261506361 749611494 932717025 447341525 821553795 85538142 764767324 930341561 967905077 847337784 954410661 853969903 878823563 359663564 904439857 772123301 979323497 961376236 986649575 520568087 963832511 592417888 702324987 242142880 775338039 278251891 529014131 621962198 988494706 396689726 437378423 229702182 415244491 593562604 650477326 146079072 240558433 389353882 877128158 509416939 992923503 882743548 934383850 305952625 745699000 578297493 596508571 789873180 984911164 738305208 987739561 389550574 647855832 267987054 970581478 121144294 158348789 916627910 927635233 916405447 996176597 956989810 987451700 446974309 722311857 29927071 719469332 259115362 419044296 373482320 516640395 519012836 993699967 19097283 790517113 812443977 834312679 282655539 844000499 974453331 988584608 166104342 592760629 436948190 975934293 252563137 641540713 127599886 823571330 455061848 526322394 701992855 886809600 534253050 644488827 763333173 914373095 234164581 944613680 98078632 307574450 698246525 837442952 780651215 951211386 594766603 810390552 104816477 865664707 323514944 853036626 177934016 882420379 569799562 837499816 15427580 604813945 670816369 882303483 797495949 838959632 958557403 970887543 204139795 278627648 13942284 885122946 545034835 873621655 156781805 712886363 350969035 464190430 699037789 804451893 403379799 933958358 610787891 793194781 927031771 969965562 548656980 884515977 598626643 896131966 111201911 378873408 169579055 984957057 641583835 675821458 986299833 988975637 63949977 808883562 246949400 753334953 131188960 522169957 886389494 950846705 890373717 965791765 379400983 745632106 3883734 425242155 313972445 855266589 26481140 262204211 592164669 757206138 651017204 860197286 491273691 867991264 432606462 628350853 570025018 701920798 768418755 933813329 442747084 758591555 758896257 838320188 162615145 260935482 850862607 875857401 834701937 860913001 409066901 423125489 977801075 999526592 945690753 956122418 71697742 829808136 90702190 745810577 51971241 895353945 930982651 999548781 930030880 939070634 402320461 798324415 798901909 917964426 390249361 775998485 672235033 815083204 319502978 919997327 299789709 418376090 359507979 919970076 402323671 761961840 438535043 963548745 955574235 980394980 522338335 702513745 550350391 779072825 154056425 799466249 724808006 933373034 420870132 830684649 596201068 978474370 449179416 513594236 348934053 778818330 865594635 980892891 611520694 896181217 340933395 398915488 395696247 403160516 133948608 903823898 335799444 808381975 617692063 953056807 963674861 977189738 984869676 999889853 404141308 600171680 10041663 551702668 603183629 657304228 752649834 932312674 961501381 984739443 276685159 750395667 519731834 579491555 83550336 252810891 504077817 878416024 890976287 949324408 628377807 785077731 852584597 910120617 61085467 742004309 376415381 635668599 437746247 860189446 830589652 873263805 550226813 626900335 69948900 559028814 181194492 190469139 681385426 979079182 82265123 621527896 281058829 529313925 721698807 875051266 927256512 942583297 4545384 955021682 928349786 988619839 620229154 958086882 774140889 938380386 677473884 941363229 127660977 878052996 171256061 298993348 50813460 205978604 459023728 720231403 125220138 346027042 533714254 889055843 717376779 915716528 439514268 856197608 471608683 897982154 699849940 874861768 290332159 717303313 751705490 776114251 593598010 772039154 109473029 189099080 841417423 945304407 254804217 518262720 948093486 999622444 783031584 994382329 476957969 839175384 12247053 83525466 921454708 996413234 283170306 371212118 397580878 553163989 623613309 998357668 313593442 588528365 986234350 994588002 894921264 977401668 948971553 978478659 779215585 919855691 919827624 985345922 633976994 688340536 2833055 360088542 570463235 588999720 480523740 565186957 934432234 946026540 979397233 992147794 12049496 562139172 842956182 958588366 276311533 464023735 443088584 450711477 626459307 832221387 88560717 446872653 514488614 894954775 337034585 747656484 349277686 949671291 606623808 658878628 954482770 993192805 718425098 798501017 892200566 937971638 193917151 449891159 202412035 756009519 330671156 412126861 100977466 662216544 293025434 372450678 598689131 948925573 608168297 619338502 677374225 818733348 906520963 967920610 416222052 484048652 182501416 291389698 364965625 652396534 109998210 555291296 494789937 967609732 677552160 819579831 768700617 796443337 938430442 992152521 792140489 939148664 559884199 907170303 110628892 121383387 593834529 764232344 538272482 657909241 159160388 781246392 300775969 472328176 832426979 978451909 137024594 287914030 803108744 920044683 468076921 502339937 137300506 249863754 127941269 858888401 496717832 983021418 269236282 949942348 809269886 873634604 739403441 965244424 296728690 546190873 869162069 911927550 383435058 788915305 277230703 647200548 558283659 602651589 180048458 499717916 34277590 479977709 181614714 591954705 286532941 677539720 787370218 967237724 856554235 876974419 918937934 961473353 844658993 948069052 137581355 193174509 220773357 232444310 798783387 810320666 209887206 842341937 251654733 265854785 924126314 973456776 356312156 883746952 552824526 762738443 343648850 545019860 508116296 527852416 834292810 933522468 446551055 490114660 614923243 832115413 922280326 982252878 110859757 356988084 273666980 611768070 535310992 788418008 460608911 701506825 903252968 995116005 924841836 984306543 147245645 598010020 658290132 936767787 475327048 496929063 238649622 280658609 196905849 556447733 894379091 944193666 864460452 969684578 957968342 988330420 168801869 810501986 482329229 555208885 72677905 948054798 621068582 648460702 795173629 832489928 563498222 689455042 941538482 949001505 264035274 572436534 690839823 877116617 409299185 483882342 689805315 775531626 29677858 399645904 764049223 887573904 351673543 430741923 935225578 943589197 961504105 961639968 805299951 825526093 275625655 427446206 933051934 974133815 577578030 685483072 763565364 857152450 909791167 920943022 799250595 856822676 50935740 936885746 261276954 605868533 31002655 968839170 174469161 398129505 312289260 895868733 635351632 680502097 71352492 323522675 746257365 907692681 155661574 737190277 977665842 987275797 118679804 254392283 199292787 230353233 928614485 978308330 105282023 378337723 362621807 876687705 798620726 922372778 810089850 818080818 882573123 900501440 88082728 99610297 361547613 683768261 872152379 899354525 268428971 992052504 528312512 995863864 61303333 211690993 871796593 905639451 891986738 997155853 980235137 996310868 194656941 449038725 688774610 969245273 391499707 514688111 769793897 864466963 754887338 962927966 41444406 452017613 881445277 961089969 341242842 818938370 111625320 156630680 774518283 887667206 101791953 106171215 587756037 701970748 326594826 814814318 507198887 878725313 809736243 817764547 476249189 597948603 428236341 640652496 605011986 971085182 204472193 445233273 27005117 926181857 989021548 998047372 972077481 993500794 835640889 954740376 245890651 666845883 50927571 985964838 375300909 960958802 896297845 959778198 384354049 613905264 964450775 983152830 219539733 443256953 336679060 524837419 321232360 616186625 276224646 552896796 983622358 987553945 887235311 964012894 925402480 955954931 739416370 974141490 227900770 768715469 653548866 788832460 718339279 939033970 93028529 358679355 378456899 825693174 674209872 809158358 914373665 924575814 182290960 550522236 944003914 987576166 496458294 707662067 670745923 944441005 306905976 638163508 280806553 860531565 411256482 847383557 375104032 673893479 845264041 899090315 555975090 612644188 474246478 868859202 388732867 406918912 867659252 917967214 868598258 967749865 179534837 248287520 175655798 320196260 779011914 833708268 510855197 816848056 75341948 238413164 465285880 522084926 287385994 716418987 473746690 604006982 328412396 777786084 700987991 762398456 228674453 651443928 640173771 892547722 362510368 413135401 132141477 473421737 630372864 686911894 388149876 885585032 537593679 977215697 198845978 590502845 449748743 667610317 606765972 743354242 361082240 970892866 528791778 812684714 251139476 738883930 933261320 967320122 741398483 850453657 630577128 922756734 164907707 551989712 821929980 986936616 661716527 984083490 351830002 813547259 946407139 948803879 669753185 900502229 175235217 398676669 53841388 521774488 73192857 950987004 598930701 754674750 413189678 506056047 821573400 824550142 428336669 793670871 918263188 953128756 388761510 832222580 954208784 959422494 247592709 948431641 365939526 687986818 853624808 858568584 227895001 442446562 825468029 959320460 264805854 721024100 107833376 655624240 904973475 911447674 286428760 836711723 362261145 507583870 917944256 959610616 954015311 954886940 451461131 786132802 397981148 626950583 797666718 910154420 771649708 969807746 404395365 496970547 577249930 896016273 908597438 982791451 548868114 683889100 841401350 871229012 766634083 797989839 847639580 986809403 236638888 471206250 878664897 920476406 933722840 952927233 423656509 925887187 888014948 918882482 805517592 892287481 27830726 527301497 416769650 859238695 157380751 621500082 779770193 847023102 109399639 611586053 47106831 198340817 506530938 979622054 67009411 118011954 719459390 870233257 440777970 892737306 193663779 514192591 902209854 994696747 306068011 476405118 135045680 698508681 9426929 38398301 416774246 916311040 876625550 942079174 526077283 836077578 47730824 308005994 343793793 542239184 23137283 644494696 103411453 388373972 889638785 890515094 684486595 991785058 834701515 873447692 133540580 419532226 89551145 724125631 620475836 723137043 473573205 504913372 953756838 998919012 702425287 819477483 487306408 824110058 697524658 781240017 176160457 768617676 652615680 793161007 44689242 239390171 692146881 940565634 771013767 856398978 959263941 973663033 108098534 967824429 340740441 870078406 528917253 748073608 891311376 980324827 842359422 879378144 459641159 614207265 584608191 778876967 231444035 437824497 471187741 697566112 570393039 884617676 868573121 995119041 148693637 728939202 404543545 885009347 637467785 931844138 973065713 993435509 269583143 935892225 247509677 945648662 310795855 552511800 18091241 629092120 637808601 881223537 631020 756933665 617116564 640492486 327391714 780027917 755581363 900650963 8038402 326777608 451138657 978557902 172389761 826730915 41137128 978074217 99022742 173065838 220308680 651686627 250098674 313385035 857687495 974895124 836075138 968304969 158989300 182371546 195829028 202075729 57487703 353710419 714774805 756219559 318423640 859099718 482666205 644698612 454915058 615161033 339898881 608852778 991723943 999096972 830780159 923580469 547191951 701121981 42047198 579006596 877849949 951973568 5060782 520599473 320213655 550409460 61173189 132192115 322994346 329004667 963218078 995006942 910572037 928390950 772507779 806424122 573550382 954090611 991270593 994601750 384261073 760149351 701879932 744847845 308399463 972252991 351610168 509178706 761283719 781034837 389149608 717077157 97080769 617582605 785163219 875771908 492736536 895441699 425698096 632850569 16311923 697725290 781758140 946238100 471653766 512319547 247942526 793313478 845045144 910515690 885359292 971175048 529504480 831590870 130591886 825370116 898510666 986785167 788009803 967474930 225751520 485900793 351894903 867248179 740366487 990624696 227524234 791261055 57072764 488045913 147793488 825481791 116472952 463763610 975469376 988401267 954614939 956013134 589589194 806857915 309657599 598023940 369718579 788074785 780085648 972097548 432055905 789691936 56238628 290518628 910073541 955791516 828623295 944500772 391320608 685245883 485549410 966986223 888733 619310865 168042507 873652089 280662369 520154526 150805985 806357584 960423073 977272147 896727794 981245883 540083454 669178195 336763114 635082008 443300252 990029091 57280897 497142286 621307567 746522726 320598116 505675411 783735741 799949153 658025104 739429486 246288877 951726032 164902133 240906287 131733643 557604806 858951894 889421631 704389730 772219826 432832347 734070917 449782142 690550996 507847255 818355431 530445477 888376743 992809680 997622350 651831816 916780490 232778728 851308128 608692094 787293979 2699474 413466895 534136777 703464631 180455812 362049084 112775444 954958341 641028966 695940114 987808929 996634891 765131856 989824373 385905454 417533864 239125106 288168778 773765799 885036482 300730074 976511941 649951564 675185532 634301069 777206677 157607080 407605467 611473468 809881098 417081648 647967008 835215719 930491300 267598808 473002619 93151510 443189375 546056748 753425123 571438909 801707564 704314616 989111490 896587576 927272000 710534400 848774004 81147098 984636320 164636805 853261290 786937128 989366075 444009023 505194294 563252026 693330219 999440049 999650407 642306157 772925527 186166097 492073302 793020293 856986313 80918360 423532781 62084859 581371210 660600016 865839901 61290848 735585549 310019538 868079361 404597225 664439842 617621539 832302229 549229526 961078968 953392003 975766693 447512217 540627063 544649116 654652512 622130053 913167161 171913887 721165351 542894777 792740512 183422925 287369138 375969415 920739472 462211642 492558080 283591608 327353665 341471794 846464897 303999480 430988756 640739921 742889424 251168830 923684512 861983913 983085668 856250850 876672016 888457759 928954639 792017348 818486996 107215054 575826081 402183843 587994256 471770636 547819930 362039854 385225854 609083210 979199722 617402119 693960324 28611028 441205275 774859969 965973417 758444007 763263124 460556465 583169300 522534954 876926359 654745997 762720136 646417389 897663588 787818209 999737956 960783517 966162735 329416642 882562798 200801048 648446693 213703454 550963872 391302037 850456536 699272129 797273460 672077169 951455698 610680787 824440185 95330929 983263594 733714565 868558417 1172027 758457109 505948110 536862027 815576383 849583040 919842951 931567807 352765718 607938852 929207615 962781464 918130748 931280657 970493135 975626693 973329544 977549666 992059018 993663955 784720237 795636287 760792581 766650168 666495082 872855973 649830962 827294910 179653657 698950975 633946084 696996364 281980980 370025646 754633201 880257458 356134063 940113718 397712342 787613033 571867321 892416705 74640026 895073533 720446091 874827102 365707486 804196973 659432881 964763570 134028071 894438784 303475312 872043121 996948849 997494143 532887197 755945141 972336912 980723001 486833026 679928147 369586494 888129404 209629127 635667266 928833421 955752742 911543373 933663709 545831144 686706423 630704790 857024848 68277960 752597561 403511979 597872505 475577796 644305749 89945489 793890242 821885667 913283239 441362181 876355643 638141126 924891124 901956555 965346875 834691647 890238597 11195572 405997367 969371527 982010903 795810542 956078722 348242871 355151871 662243024 668409689 939514423 991832409 218285988 840247828 355779075 926220552 894640420 904845951 228783710 825654050 201779747 471873714 451923876 733069439 437162282 531966293 501927744 556049571 255427714 737500760 482558991 762616153 767226879 992246176 476496842 889659933 497793997 617597655 196363613 752212716 505289183 702465988 753447490 765254929 333475530 648805209 941426567 947546198 604437967 743369159 719659362 760644960 307922096 557441769 378652426 789581185 135951467 581278404 543260188 608540780 332537743 724588728 747992483 761822976 967419438 981414287 337567963 357270539 101293952 896572411 308870648 898338328 686400993 818472158 648051938 882208277 173019526 700019897 201841018 737582173 624367829 747311672 486591386 782438858 712020855 846995429 455558362 757659457 644743750 797221059 458998246 935115606 981376747 994204711 657415655 789969589 141716359 400571806 678237679 736108551 524081224 781839528 718877582 873069136 513107822 554001248 10520450 181062350 307809229 428566754 89461566 412831863 657826091 701004120 574246244 792586274 745646364 942286924 483707194 930862944 779290109 883350987 439790719 865347358 269780187 358960313 285359928 547082309 16844152 737293919 203541420 974001631 592981642 715701320 741571686 793737458 749776162 762485618 210687388 966583512 7376371 987775599 690000631 847005450 124042187 472585728 875845124 988790096 140404058 877644193 138056547 359681556 594110034 642511398 965065808 969095490 552228428 774296117 104826989 617157627 78733220 272533746 686417361 797951838 882719522 999853687 45134038 699332111 222000859 777428788 189433517 922129561 286527799 859133683 283646678 606772295 937594389 955611964 691933361 812162975 686968787 931431255 430598863 649922197 742458078 923323321 739011644 846075720 538048405 952857125 851768367 889411160 196702869 366515678 846063980 948857978 124150655 665012481 253582458 963143665 866509213 904967218 875231912 902038401 103987982 213489324 138935234 619551112 441210981 652694314 11550493 37357533 615716040 662236771 12777140 973502757 750744617 993001576 332403364 459747661 166522999 431313005 981693006 985157867 894338028 932983562 674308940 821920711 80345216 469652677 333070381 860813723 788380452 814167362 53451235 523221419 27370872 115552407 224272347 524418408 49597784 545195430 297521593 325128674 961500933 986261294 272456874 774442067 156590571 983364480 696624896 770417509 214754005 655728359 642425190 901080794 146917553 533108671 670497706 929726163 387753756 804396140 257244479 812922583 384799707 616889817 622495218 831942621 579125717 907095414 401030604 733657886 830839789 876226692 938212104 940259301 885579839 928752579 872232700 902645167 50282051 956698704 531229143 828662533 775743639 776175034 39769895 710170604 909319155 991611706 483518896 896734481 768764101 803000145 623524512 673229360 348153692 415060051 155097872 599630254 745816167 991949066 102671145 982435316 728178992 828836940 615305205 630876650 73699453 112908110 591840358 776021980 855954162 916906159 921733843 978177452 906199798 977240602 913730226 977615419 159899260 610018290 700794849 876252467 223187015 866240845 720002215 769702002 694919908 795330818 657953602 724257772 658097021 887690898 762415754 792225485 114773280 965024569 816516610 854745949 314095355 820289118 501359830 862520157 548576948 720856654 315751086 613504273 970747588 979121668 50593958 982220557 333929983 759687691 113423213 553519301 688220839 892912647 835734025 958931989 65051526 207722402 894384357 973991642 699456596 803894507 397359668 836339249 332762087 570347786 378451046 387735595 741032687 810075921 151016590 432868533 916377149 991636003 234370334 765574389 101792283 911606418 692707077 707343517 176697294 927602087 854841421 952879197 765107382 791175291 232495160 942329190 183579003 430147889 30059737 967143813 362641800 445464191 630222786 775484162 64845848 933155724 413935175 465524508 300029850 544837364 512220478 982039298 752275170 799202519 995228436 998050027 628400784 786804363 585231342 993242061 375086453 564427883 883247477 983900225 513946447 604675615 480850321 929950917 962493056 974379807 485756634 600179089 148290359 308244971 771075060 848878503 99586158 952312356 64852803 829282891 795436607 966419905 230852393 257139936 545494303 737183927 711878159 752705336 455167757 468227856 67543177 849232007 896267628 975725902 496305935 964033766 548561140 862967289 28734145 267552316 762421581 926521243 594721255 674745714 459648326 890647073 118954457 637483929 71643401 676734891 525324438 677520445 974324485 988712560 446005490 514539397 152882824 899420806 127937096 352021219 516232369 865042313 88573189 758050112 727784373 765363997 612542903 640392372 410465170 908458617 900650533 935574354 811641739 962791156 173577612 926928225 186050511 426859395 986788934 987430393 440793080 642131778 269258280 955709781 838794543 974213931 88194474 795253180 806877018 867799799 264753486 430557523 328173088 886475949 311178303 751143717 955366014 979728722 738656711 903269702 815611423 902455637 40545021 982476426 607920827 655043736 732653409 791299806 202662543 655171198 311628422 726612332 325610908 929748154 424443184 751538152 743918351 910552167 438621776 498505866 697209395 888089465 922630852 950852513 346105849 355115874 133026028 684720860 196278940 998870288 192843754 475928039 45895544 797492978 271709900 734448496 656519439 932345404 651617081 751913043 954264295 983937445 173084810 637461240 278527839 950099702 70445133 985308165 86454708 445977102 324654918 613530966 210994800 993705233 536256541 566597630 729080111 803733801 834164341 937041342 82181025 148906299 462540617 903795928 509158253 782826407 604012999 712777446 31879124 141708974 421904054 802213565 379270941 681898470 989358636 989595945 726543861 736081961 277535059 429423234 161956001 332878646 162010309 408685494 770454580 983108293 720537235 834301179 844029816 935530866 974319201 978097603 247733383 956135872 258207721 797679413 581054623 929486366 69051070 213568699 183118960 902255648 57833120 682707160 584881038 805654797 459128929 464419058 816571406 993826273 681515609 999969296 69893387 355076628 789133240 826030549 549954066 756399768 195158813 631269489 809689555 831700808 465963283 665846034 835777298 927469272 131198749 493889878 289647907 542123659 998425173 998508330 729843604 738813034 80513573 631117704 498513484 719911152 763251363 792380818 105694302 653187366 528669129 873254831 205273979 283768626 852889701 979356115 531992313 600655857 804474346 974546316 837560450 926106970 243463523 372925843 112602020 182714788 708303852 980538021 233683019 495524014 579857210 957983032 317007946 726694272 638477351 968033513 84338514 586672766 536634755 640014896 6497040 479806538 451538780 869346090 614894956 881094409 556749003 756948693 6790344 606295713 466174674 913727470 403851665 752701610 499776432 574225690 932636860 968886297 959881586 970945611 279065861 447899171 553287711 868735387 295234867 460425966 348876722 777274229 474698858 524707137 686761870 876788897 746999896 804153409 763262089 994508650 777791322 964593581 737146298 786556116 785838247 924349718 616574729 875627673 581611688 906423187 199178922 545492673 946835439 949441097 613881318 643501468 793827960 994097988 95304395 669685449 519710453 537741485 929026330 942361662 960145864 998100785 116818510 916957571 696848911 701971228 614364030 657865694 329329422 923838435 182142542 268663414 137451010 138019006 444569469 631867126 707672282 900115561 937307465 973886107 710844348 845338076 438179981 630497741 853404697 967005310 953712191 982169487 203336982 300152669 290865419 323825370 393195014 613597319 825438278 929473666 415397888 659063671 374842297 651362714 579657796 636678140 267385687 818509281 669857520 723923257 427980904 675195185 205744418 611070048 454639896 627159594 337252407 378620461 377829093 443590452 867864393 931008824 105475694 866717485 172391258 670955751 223044681 243682648 885491470 915260385 839113434 948018726 126761418 370614161 387030943 438086396 686068406 829156539 253794085 648372548 270868435 388030052 267227635 576036683 343088653 496365656 207658376 558313692 398636013 536699475 673397224 678193059 946890952 987951416 949722117 993631479 339953707 670581535 215143602 904841893 532437725 914375713 142879454 957916912 559524619 717298737 577337969 855753851 745716610 836711607 857283989 972290641 709391005 955944287 894227847 973504835 58415712 180369267 82392857 392057537 816267144 989970120 568407584 610191070 366863339 675660563 36021021 254961628 623358539 826492439 581275111 848486362 486176290 631017735 4105744 355681003 386113246 905167146 970969748 979470584 924313080 977998288 960928993 988616278 759166330 999892741 136273983 386121239 623720632 912989887 716228680 802358334 861108466 950649794 864671928 956310455 477122755 707491269 749879047 938346499 461908651 472060107 224602364 375832869 811702374 988068302 456523761 665087420 3817142 241922167 660563571 964446306 55983815 437899533 106503670 892676967 48853526 622438771 16337831 901870115 37538276 268716215 567241915 585865898 492433172 591518163 875818912 936107489 958865627 993950715 889813746 893328315 295205934 827946360 107334363 537865284 682443256 946064353 964982728 993593324 935359910 953943578 918041782 941156728 397538947 667985467 748316896 787571587 890721967 924312036 669080274 988122975 964263091 964389486 563444107 737477736 503877204 994716517 500417756 714246144 993031256 995184119 709086653 942520238 88969250 822329857 764404309 957507654 748295712 766645281 511456710 926717857 346429429 895115053 577350676 681285071 241104090 249157668 381976854 581095091 358353087 905518762 144727295 318135538 690480610 943955186 763955051 941846829 955472532 969234681 480443228 959245565 523229199 755827524 133511070 261356316 299466972 633908806 244318603 342733101 235971294 576592432 227956795 394514504 509645198 987554076 826518178 902192180 274470378 833274035 743237805 755159555 677019701 847352047 268891867 400587453 1327263 452848451 514787849 962765307 580335941 799428810 574170452 664791933 603945588 952931661 245814965 850784535 34761816 599426437 569054771 796668713 368273878 956711605 222492707 308800425 793604926 927448442 282044585 375278034 665062945 930705024 971894585 995244571 419178031 729007657 736053117 736076185 164986873 668920857 966786066 984246713 107837254 353644066 966198412 975135594 982578104 994784851 280092661 553860986 406606433 656874422 302724977 575171630 240678314 970894087 358658089 991427723 642215683 737433073 922508849 936913093 608362567 863868772 933156791 958809916 290339134 450628426 746757585 937663969 220115446 984860027 216907707 940227110 471862609 877807708 432304977 611396524 897631302 984977004 434414924 864125759 122150761 728062110 810647307 926963275 709194747 892265467 492429569 801132099 448100441 912796775 927709503 998199039 251909921 659415054 64604441 301496634 226799523 348551129 141204320 658474963 808938971 931604177 259877841 681110894 44344067 555358798 927208372 979086806 481665822 610905412 9941712 511291108 420334416 641337404 563798859 655173027 866726885 920865767 702902037 764726899 590124759 706194727 972506986 995235440 201726494 231921907 946081200 984371827 489188150 976376191 405801929 754457101 626303883 722907660 489901322 808112910 32643277 51561352 316509065 765712919 824265553 905227059 926305971 951698368 284986349 583473318 22928634 250559620 650447473 780167865 899224996 981356526 108394528 350924767 19570102 922470597 171362942 916812870 51092036 117544462 348419823 988650945 23043876 331965242 687899574 723624310 561862996 941505948 513626623 979768009 853914900 866234522 637046661 788711422 996360354 999903539 874391291 920047164 365719387 368629343 219755461 385734717 684758198 790517415 808467128 984160307 567380191 842598441 728000877 891555417 323447228 375517797 264375019 306645816 235616965 428772630 340862167 664278473 315349039 364405355 292276313 506210092 516567297 622013318 815267782 931474265 468352120 726227654 700687322 957256937 370147150 847608632 671235498 746010842 637191136 733040411 657308191 695988423 114144953 183461039 687724182 726298868 215095712 772047747 562906068 872774018 548538796 737816759 21480067 183148133 122850334 787208707 410733959 422656029 98903552 832496621 48679540 425297738 188535058 603943324 716987874 879156323 390141161 436326395 251235721 673825237 307061927 791259153 937791830 975564555 586691195 892949536 931063047 982507815 592890911 970922760 426428875 899995624 84448074 667723218 33062007 759451136 113439369 529242408 304915198 824972394 157068816 485041962 920651916 983535507 874336281 939343987 684684277 984656533 300185510 827025175 13925842 121260471 399927866 544095250 3552056 736158606 484104739 833820523 565523326 716165509 867221338 879786567 610197646 789550744 38225288 866395643 984915030 990774649 151586617 936805293 450925927 454519810 778353047 849988042 544133494 595993631 894073718 940775390 96865972 630928359 654986955 801389817 224793703 933641267 294333664 797091031 228101671 239339851 857947680 962031112 156292694 943371092 213492602 969256007 528606910 560984504 295528491 647045609 469121018 586632043 790509978 799741731 68797742 841321938 520427509 910012962 531559720 693670470 284125985 318245572 373929562 415451761 445774750 877339346 56016694 980503160 732343262 920829786 112611929 594722508 994412810 998765492 977931778 996062790 331482063 879852759 979631961 997484835 459979619 575621601 658248246 906345155 631692810 931557555 942700165 980691914 162367799 626396743 332551361 488639101 933337619 999057476 508915075 571031745 721690080 861778274 65689092 652671696 636901561 787803281 16579600 643562359 616408205 905618854 135010995 413110643 925265716 951389293 583545002 802830190 665929623 897203653 810399160 902588190 592035252 975813239 617456270 790864669 400534091 910446656 473807579 523418025 397181946 702843748 834572490 887541425 945020877 960356982 473520010 586714194 772796932 832166395 108381106 580941966 424063566 970566146 194207979 998032948 350866622 744270439 954935897 984582323 762390024 814034667 624808595 661305073 129166280 746251754 105777496 285942932 754020833 830255402 281830857 561655584 879168704 918418692 778131525 943415590 849264939 996105719 406190599 627951859 175697322 725185553 196214275 364440687 485583698 726508419 177644972 322076213 775823771 964669908 692221648 719486675 100596803 111731201 657181147 940122558 903642730 952828504 572937377 911005136 12634500 740961751 881006615 992208532 153104590 258833308 794958634 816971390 401389728 888532132 300126846 596918221 605641344 711589534 901474599 941705539 719576572 833682664 340983824 499200057 238698092 735179940 32460867 464924495 664924511 675615215 697782653 699243981 481922705 710620072 313006319 425258134 277124604 278171610 346752721 418491874 190802384 987546887 218876518 968762841 193134843 476480709 188554450 893418438 93500863 152068716 836275755 863666228 887949659 939358681 69063757 244769626 722969710 732489425 980643144 986145765 360147181 549136628 493736595 607350126 402628330 569692169 218281473 580812647 69493086 593369301 363698073 753311816 417209585 957838729 885911876 985230011 764564396 802703137 774066992 930069071 544246620 991597911 706970014 832070661 437687660 831160643 999184924 999481500 818289581 945343278 267577428 747461614 229779227 244576186 874229427 913917769 363145337 771973986 976178590 991336061 679283662 739269505 982943827 983337430 605514791 620214278 256127166 566995375 877064748 960087694 726032689 972819595 423205862 866558228 797972317 806683075 635084320 834070353 258179428 332941607 29242302 566996602 778388201 940209371 84783809 584535772 547872108 948512710 377550253 646954349 807946108 839442204 802573464 893649797 167583725 788697694 504951011 768741721 663627577 675404537 550363494 682767524 609148856 632661433 560991047 651955496 628459830 810826438 419533221 683924013 539823266 840254809 525164965 934493738 994240310 995291161 8487123 565819185 484589825 886566890 583793360 879690616 150426802 577814932 516917726 595800194 698221706 845746983 628640436 675743019 826177357 862109133 918200617 950177807 971792386 996704654 945468051 956848450 593857497 724388799 731977815 927426253 293110057 951771142 691469107 771003996 666423929 933072924 150804481 323450714 500018536 744385718 47949092 586924611 958296911 989374152 769196419 957387803 23462731 766131613 440398359 937687624 288487137 298260579 186863715 702215274 137277984 699019825 797772689 880939863 707310308 925224408 225072756 739517145 451802199 501328131 233440997 830139840 981480905 995948797 257250816 519701598 489355178 506226859 699896387 794818402 469144462 727923648 529742838 801703015 654952446 939130295 594752409 685026698 764835103 987130966 936256718 982234126 733284903 907418995 6948741 864019103 351045708 616501882 711021324 734583671 118168594 971630412 70881031 394115956 190168284 445768844 70902799 391118071 948251208 996646685 2033095 634546124 733438585 958337262 583376433 615253459 564464370 905944246 710234447 994656387 422012871 787316372 424760765 843873296 957395069 994083422 149038575 391213278 16195560 316264044 66847234 125260448 471070392 600771685 255605700 926289577 897255067 918477247 705259236 932928914 963752236 987185100 953465686 965714669 772022029 831796776 731597746 967419866 38364017 158387083 803491882 844981078 479245147 600695934 526545979 666842455 194951671 953911165 299026397 696237048 808233119 923526469 905977164 977077302 207366896 900882227 117669815 746258720 334512687 795409338 430241259 525382041 834253489 958814180 449278564 802912896 156498799 546581266 54079503 780603901 609838943 661127842 777575935 867419189 266705054 512863486 233475859 752992489 140528619 326982845 29486915 167475581 672508232 862704533 124959919 632122907 471519928 556708846 902143325 934239573 93360503 325304095 344768160 601996596 155596505 927487610 304873289 366803757 249721346 655062198 963831073 993556287 865390829 990389799 401773805 499304465 653166404 748151574 859960159 885215581 162356952 307234027 95895218 988381021 533780500 736813570 435366496 867150599 522331318 736333468 335729740 774248229 870398662 990146387 69302802 180936857 553249469 831622660 874677527 983176260 112672190 496455716 659447601 909315664 588110682 640820109 304857131 416548236 782170206 860341299 425294648 492490209 211709981 539236259 914336453 920630266 663292523 997230325 29475481 928738155 211208948 509283300 999871076 999898274 816912876 881706929 996613129 999545520 580505914 831223937 401256199 719217895 400232833 692915052 716430165 873514332 964409555 990319664 955350227 972507851 585098000 975359272 464518070 815272305 963350798 973961793 443187406 597454053 4775518 340158674 452856726 482196011 672699931 848988426 904679506 996668049 191248294 201629587 441118685 833281152 231280447 530339705 192235413 974505462 644699312 962690024 289109573 824821812 789204098 995197554 366968849 923581438 983668289 990953566 227009858 392398979 216604516 431565491 568624107 789491325 671508765 991418095 522569116 576380567 444139697 906043764 120429893 782066368 343906833 848954636 45158805 806915293 540206531 634964142 316129557 655563843 256139335 448118734 557092031 603561713 124894875 920174724 297325802 693110114 359876135 798251269 297766291 618161244 653426253 781571649 685438554 801255702 972392583 981033450 880945071 959510207 297883277 764827515 851791250 933307175 487363915 675284951 491104054 601816115 580040917 779102312 409072338 474323236 337609789 877823451 905595733 924657713 709254247 865368529 359217386 476073937 143920713 440913006 162274053 332107422 800874385 898610130 64295596 726030679 843539776 924480893 992586934 993737652 548093878 652526051 402925431 889959947 176419188 214451342 118471737 987473735 511385287 880454517 333539397 484199194 430406940 610081687 255798960 412561085 620249999 805516667 249757640 284482473 77461188 547705135 801082416 961493838 225114128 414765821 209121059 491082681 484678042 903068036 856804218 879874154 350845046 721451124 403483380 434059972 864191056 924386422 205103736 754137376 521534699 787661845 263703248 379904251 721536232 986907457 996316512 999715437 277556177 339161882 355679836 425373286 263494352 677578010 419718033 450705487 373818472 772238805 188170819 399501093 545709583 961269408 442849519 640763294 227429346 247087385 540988558 575542747 334882164 769120184 310337917 415587287 118522620 676372183 267748947 634112374 318730766 464336716 236695501 351527683 547351227 586914872 168938474 829515954 766792976 936448457 374064871 830107625 769488287 844949557 162109327 938883210 233937392 779405358 810816779 926688800 178137250 862885428 540038213 703206057 733824437 795534117 119268089 559753914 27979090 720311029 19570838 776440361 258751102 769576438 383902878 388690284 455875839 656543379 74200228 837592398 659143062 716040511 691715275 711080159 614284898 732434208 936141161 995003756 71640521 268713053 715116580 789169302 316394120 882203757 948198433 963411229 886216185 916901597 762319968 959639698 959206921 971589110 612441759 636680068 97663455 650816098 829111763 856933385 470932115 565006825 244384652 855457731 99513404 217700783 310805138 440488128 720646038 784057984 783686701 815902429 215550870 771109136 161557938 643301917 941953458 986108855 669715180 771924695 972472065 998527399 322652314 788095592 234217059 407504505 926916895 936157046 180840512 799962030 803383440 896238002 57812351 204644227 417059433 549477344 433712966 621287488 802388813 948760928 102897702 600511383 971955294 999972071 650214043 967197007 144629785 323250729 15446372 874088062 963219793 985143502 904945074 932063964 187921833 491392577 460167889 481615359 532341304 783343369 606721791 963461222 955732670 968066577 367497194 997487514 866017571 911338286 621822749 921451772 62762815 138803435 933007212 975436799 625375389 731962982 510791277 718923936 109863928 288488466 415792972 597019116 170925397 965000366 786259653 840225126 441624876 933818581 724556231 955242763 577036899 904613527 143258541 823474471 583391438 925271525 544147101 593401835 629025070 879413140 537282904 577534356 394790418 879478355 726676645 969971555 19180440 777767759 456415264 843527169 293970016 885556315 92140362 288587498 138807981 925786077 351431310 817782781 856877882 958582977 502798741 906661540 137875723 144406864 114964937 425655019 862346877 942812802 590978485 784455871 787602271 999275381 740944984 937783430 389968311 600363877 759347663 773984371 453086113 701193131 927921770 929206208 240857879 906560992 579233553 819480929 200254526 253507582 359947999 952171470 253964702 963861862 382026391 792267983 837957245 853556865 121356073 887844474 96461299 101923658 507192612 690301359 741931046 811460728 615674459 876040853 806185007 992587703 577086239 897208317 520870152 919378446 796817611 814697153 929357544 989080365 889411190 909554635 204475812 943114133 378839361 728894928 844012651 890698056 744762847 923525504 311717063 557249893 602445800 809565589 612732646 876023407 252499950 793562722 329489419 727884820 530327860 544697646 692251646 760212648 425071635 446201509 732560800 938537319 284770875 497459203 337265384 516675503 654073976 934103202 134374461 906434251 513083126 530365068 751132277 786429980 842163911 858956078 63926644 789884327 961756700 985896968 63753230 914810380 139616314 939354407 321699588 411936567 569324104 987231628 10163716 867907879 236559416 519332522 325757738 751738351 601126846 845101152 745373164 788822088 780998099 966845531 548130214 852967436 961406428 989403172 584497272 713172435 260233470 261169627 107040654 142058740 810131150 992105531 453034274 809019112 787813221 837926551 434710269 776121056 154426567 348919016 57803907 394129146 279238040 743066144 260204082 821276649 63583656 989128932 761080943 787868928 979304297 998723560 950453948 984212110 163826284 914203531 351449473 510232994 456796827 925542109 325193384 572430022 57122043 471767088 555142845 857176345 505627642 674949749 685476897 735516364 693330087 906255553 499305259 594347644 76514585 358359099 656833329 717319731 15914083 839471463 282709409 334877817 1795344 84786624 359978211 429236992 587828729 824418772 22380028 101642478 64549750 157276548 851762547 928719281 822333103 879906881 54520725 699450918 817688342 939656256 467776717 639163122 738029443 809801418 501989755 507682261 669467863 863691679 938598467 970133974 880532159 927504675 975484325 983861742 304383990 472165414 758912816 794176995 497337003 928890287 930614126 958079222 758310089 918748637 460436959 951016488 857256500 889966319 717385924 999291973 673558396 886912604 111957844 393606003 947941167 962880145 233731953 394554734 903584833 913344230 123902960 944465710 252443641 352562201 527120546 817400398 328297584 597788076 917636151 976664319 813284823 926718556 684987747 789037239 320550081 654072312 481153474 633675959 797043728 872708372 957333838 969911516 369000777 680254449 655855683 769694367 917790620 980498857 565945351 797095857 918133747 934876869 438156561 925747740 547147331 855991046 531946083 666271680 216517901 344285432 977569909 993281679 666895566 884810136 984917111 988930524 526274093 862592934 899350821 942007106 380272703 464513718 310533489 966944384 247704389 666182744 895850619 904721859 598651753 661925134 870069618 893086343 812899686 948279366 815295680 988272219 674832667 984359953 290917761 669205121 560000431 943976777 311743241 557143661 426444814 621634430 586019123 972148164 694225187 701346420 783343082 994387903 799187283 992296613 942075252 967487331 511603620 987593034 431722200 561659504 338761882 555014911 161800930 457954345 628996349 805227840 109240580 574067430 459367135 777267462 152714337 674331750 742019033 922566604 294484470 418194270 801356514 915944280 989331590 989640012 816372282 940960475 899891402 981041206 252597197 813502024 835472528 981384496 198871984 697824645 315213730 882760287 868506548 931451358 169480065 215824065 601035398 618924380 65196341 254060015 76124049 835539408 601119685 837723386 911682833 925911464 587230355 708410210 806832941 953992645 934717672 973605741 323541402 451353010 52603088 776158911 551709518 620846154 358398393 553641597 339413537 802502830 768242979 842940188 541665203 688691185 773781730 874264146 94608123 483202422 314872881 320603214 445529718 722584441 94773395 899540549 549423714 755215688 718533966 980882113 306375373 945114957 369585482 629463821 189510359 912256614 130794461 793627459 609295635 612563564 55167256 948629528 377156140 507737805 653816411 838500830 774400594 779281926 21176937 596097414 110443471 413236765 209668986 894711926 953752149 975942819 10308921 780665703 369596151 721233397 841405616 983512017 299929104 402541170 837980080 948415961 606964625 812713379 765648074 801504976 838978601 841079097 228403717 234702688 792625748 903644959 335286168 893985881 651905836 944488554 541776841 920762912 762943995 906382875 279451893 411128230 558994284 703948066 854273125 953691268 828637796 930383251 427774900 695363364 604435406 825609285 272853160 385870348 617790487 921649919 311085843 984997821 139276618 394586323 217022343 955019510 971873235 990478107 893464669 988901423 527340200 548459189 583059405 631653923 374178905 695579582 286417269 559654738 446860735 803748981 272722048 622644445 745047421 903141208 272402768 376555755 612930427 805715926 299703660 370367552 888353093 986484698 789008772 898076111 73361732 183754617 552865495 867048824 945507295 981177139 286643953 846890760 340515726 458645970 211942164 692816781 807756616 937050443 875890924 997816298 837103217 995224719 803410635 989506992 480040114 814322201 238381247 935965002 593475348 704282157 689389009 779012771 442573869 457400536 239694722 755755257 135137822 232755481 636875010 743044096 327636420 478524895 362396125 702874835 265253048 638577425 674206629 779348550 169734812 721838127 480131939 747611475 796712289 856755336 713791543 908567318 297784344 565422959 970316010 979030524 437281082 454508039 314178061 516585421 471404440 952812097 942231612 978581818 269763486 896090507 600943199 873288828 591246038 700184756 557043515 577401488 114962461 563054433 475277492 841231439 598694763 657989461 565414408 703614249 313218018 884008874 988801856 990663798 566228078 834705752 950004846 968256912 431381669 794592828 81345088 371462877 435581659 901658372 707918771 854608288 576787253 758966515 777945094 856186501 266315710 310340525 948847562 959789194 730598303 981167310 710618583 718233509 933172332 990846689 207400346 823020875 320596067 348682241 440240772 722437754 945029209 973679486 673255493 726453661 31355322 211458176 301986599 447166737 723857549 891162151 506524696 994202820 158217503 201750452 445326458 551129749 993430437 996610397 4522048 809492191 258584796 312875274 788863795 981817285 249272395 502909681 443990890 674827504 801341196 805305887 261816940 272723488 802809601 917630274 798000969 923540484 78132570 341538583 876639878 921431605 352705881 458911614 189911420 878169816 128002798 889368414 529138599 675335237 178918031 463821691 33173853 520955735 348377623 819648584 425564876 755166234 77435477 521257956 43899136 539616814 442347644 992778008 763638672 908363254 255081670 933092904 345288526 943361226 635571954 696100805 348739153 614556646 364280750 513552779 140769482 210830185 94698888 588393287 393175832 961541416 690547492 932881638 79638234 621116650 5057362 480337132 514405449 524986836 642997362 722762145 120024734 679084355 433987524 793920003 895040221 991521343 899608200 989923635 521911189 736832943 522118518 903754362 914742386 999641238 624809478 954334732 708994013 986150924 77861320 528404272 776682624 901239670 736993637 866065926 720552046 817186403 526106998 553030947 629534166 970606875 732479672 835030486 737019371 983297794 151231641 233663457 829207771 836867115 488852830 938765051 246158835 351410380 946673876 976080492 340037218 455116921 246090959 306878579 967355299 993537168 848530871 874565537 256113814 989783942 876455457 954311332 483760915 917094117 697034134 914296865 806548952 929965981 861350619 912783666 420847552 996910088 950621499 969620706 126319158 604553864 514921997 908602125 926837084 987005276 136206517 836932767 624152656 848856050 608424742 863409219 306605926 991515644 595988292 882510402 906113906 929671237 524657302 697001651 849299577 989426299 516125097 753923059 930797188 970120201 861969336 897801208 792751263 926075549 467903836 507023264 493498176 641410377 547051812 995703236 743831392 805266140 632259856 977877461 871709674 954779681 257697792 881475714 262202901 649829488 251502494 261645904 480640645 959625798 588962436 607276647 373782488 675027389 316135562 962883487 223705187 721051129 490441361 880643739 867445035 991122699 946623150 984416070 962859168 999197516 710121570 820803433 703281391 825861762 775961870 972615977 248129609 911319467 211174371 332528637 168379156 284873755 447052731 661341498 325494744 375514230 888827448 921608408 881491086 934776408 398423264 939908754 212323881 486069175 678415987 682576055 697667240 939169236 121781088 291978288 196392731 844038949 697173253 890610077 142503187 382073549 177422664 573879871 159703937 703463900 505258226 637849802 933486985 998680348 125669250 355007850 452940089 554750461 235321783 323869936 742891729 835278187 394866657 852581913 534959202 885521450 745616202 966815004 635125120 771495743 559858850 846718487 115542278 239329668 415811753 710682650 685440870 987920265 483878402 990789777 998395699 999897118 756754718 896551351 522031549 936102254 641950462 757595075 929413663 965846814 996587240 997681183 379482326 699557058 496472307 865515609 837535762 979585181 990057471 997257049 667392181 988361401 100719326 785572973 267569380 791913648 489023679 984738364 836244466 931237207 169755349 291808220 441638285 836022083 416451604 680637834 56706671 170572972 368337681 967876850 736033675 948018656 302195619 888697454 79890453 522270767 552511500 592391000 538449376 863721314 241914848 875056307 876562250 904507947 385564059 588835578 491430363 773510897 575740234 861522296 148313739 960618812 861984242 940450285 747617072 955342565 15430390 769113370 196761111 943340617 747303313 917470393 566132808 931560131 595772487 678779688 5251928 547054517 317005679 415102259 613068167 695999820 996543427 997014617 375256722 960428706 23095496 898983133 770117744 798730805 448780204 850120093 811418737 926547417 806044889 902664423 177498003 964956120 377769668 862158171 639964395 829696879 550955235 916771515 795084844 851771540 588251995 682394866 980903652 992724870 577622159 970208783 50382779 595426117 15136130 753001390 672381734 798011392 609630912 610031605 89474327 434469983 666206467 916879716 435385189 725333332 572215640 964751014 187176567 929792036 583462533 722004511 159390098 458330373 387346174 419233181 348694685 960003902 386286561 522413933 680594219 871196874 553081941 737100074 22663166 969868308 853077122 968234622 670769018 916940982 925760710 972224501 478806935 691925035 956420145 998545180 760375945 842475576 288176820 694213526 587540372 821883822 661893471 858472767 973646947 988726074 118643248 839334430 177632948 883443492 253987421 282593825 370934177 898890241 299522248 569590359 223090298 638878106 989281990 995021323 784822614 818130439 316203762 693388828 448482729 542559343 583481643 984238730 377629865 445419114 611234481 895522041 335536649 605122915 324119902 779777011 614678085 795504184 650437928 896183188 202322177 539960928 711972432 810058518 989067994 990410943 816293316 971744752 989047584 994066622 27484460 347471944 658133939 879363147 961888420 991533620 857750512 928987743 814938776 943958337 635276295 768945578 254230354 777455713 719738291 915457467 211632144 248982091 655806458 991954730 950948956 964802592 735027431 911279830 537666228 753368086 322701504 587085101 797810509 831166335 296221862 636692833 675403932 797614577 901734626 998929808 474451169 868558370 741861536 788975603 652666030 768847494 800037034 861925229 31090576 620052915 396372872 429080495 168664939 972289620 302123677 452244151 173776181 286172235 514748303 618301851 292877977 610503746 552711317 659509491 653239494 827918805 601811056 933711577 990924067 994775306 167329303 717647831 780390164 866282208 26012231 479359183 766210972 808453479 663627403 705469669 957021635 963497168 139810520 735292054 402235018 406587686 434549296 802485915 428516031 647510265 495919186 545578108 553794213 667940112 502044852 835203806 648550610 659860859 7545874 355859097 908053310 949648460 6924464 596967637 43439714 214616781 156958915 618587351 458286243 578633882 497303697 731387116 765106050 864750134 870290804 954432338 17149196 477556171 613327737 696154939 255209573 737359880 70173188 188272655 771199677 807764635 414266722 898562135 741141036 756438367 542260654 783673158 388790113 974350183 28250529 459350367 287471260 540305231 349777802 636113554 787768628 813440885 465387553 536746505 777917899 924728181 145025810 197779950 540704929 603237593 894890443 978707799 620144209 899802749 397848554 786107113 644582551 670923287 287430007 653135390 925532892 953398694 442562537 444682672 606390847 875670635 56568452 691837391 72459869 937370310 316510964 929148339 20414921 464266903 543785037 775028167 18970950 880348358 655604628 958876294 669802323 840659603 405379239 634688425 571663554 760101738 161924723 340155285 897076462 900596922 413118871 804115584 845459844 982746581 719730757 908853796 193699097 999646543 974281776 999554964 301832058 630296743 369416746 536106029 765210843 766561482 261669569 367528283 773058193 806602538 345403452 509411791 496823990 937859182 759785192 947655300 493301382 854433755 6874721 617330330 877498060 978849214 440918100 554364091 4260677 565198938 137998239 367320919 937230131 968381043 686595897 959716248 16568740 67860898 662174668 741775962 293654065 728175472 38206578 200533747 149457606 686696372 542242399 569320939 856923427 979515177 701289441 924668452 552347158 873997872 232956504 563788140 968212625 989867163 44779122 489211812 360021897 578872024 986901029 998263896 796346144 812586483 493427800 856379964 435399959 578246682 933781961 981353178 72252751 487644007 869985602 899615302 787131377 970691935 950549848 986883152 55179523 764781557 389215693 520914449 646133159 959076708 311953922 330580528 253078486 275790768 591050085 972217394 482884522 643313780 195418063 746982633 186916043 834538053 182539541 277184232 900523212 981005107 331367684 881924052 191157812 343690466 899178182 918902694 596807496 944254746 74376388 687956344 488524676 583377923 227617328 624140522 341769956 854188253 674954829 704344577 636869062 949599434 54447933 326566956 837074108 975344242 684993758 821902847 226477164 443643788 912713152 962046398 254718696 838552533 819045293 991422712 743877092 850246820 34241985 180617973 922000780 985856156 308000599 835951226 866934789 922725619 577216162 656727993 783322536 962026816 361650135 800241380 313775590 388407214 226052782 923336350 882923728 945336576 661955129 934340678 774426573 975386992 950622369 992412191 243376059 764833048 194299918 860104971 853763329 935554682 805005553 886674382 85704933 929594519 552737770 891844047 186539759 263267605 465131542 593718911 435423765 903499057 684203883 773710673 334160582 946516357 622664942 686532644 660881437 796842191 598368610 982968383 631236843 870875342 737749101 812214004 321520689 354255976 672267281 827913570 481623228 597281601 460230690 806329352 406375058 954328969 69750811 435858360 26779416 331403328 101067149 370688818 894558854 899222327 803767195 959117634 322827019 570611000 441486166 719624380 67400177 514662695 393288827 685400486 442605801 610794966 368940042 386873723 537939327 919416758 656430119 914292028 53791426 776976695 352802027 972649726 701331115 969254824 717303904 879351729 77874834 644225392 684015605 895915956 606111565 811402166 627260943 964120179 330916983 468464199 693531038 816060978 384156160 905780636 791253945 815326739 652916079 721634517 882047393 945473547 709841662 894015917 628904693 869786956 163051988 928657720 267442301 813240031 61616293 522294995 768918860 967837809 811663004 915455757 302954421 861550881 187920615 397281318 131229750 262728359 182525032 634914030 98659697 838113898 160948638 893555392 251417432 994763157 105146492 746055381 384370192 459749136 192005349 977343216 210181493 938478876 426313095 773894835 936857933 945378911 505500832 639366696 268496999 550549502 86301592 977951383 481646756 510844017 671605731 883952232 827070662 991497160 28950651 998269425 864583749 883197046 611200324 854767852 997023795 998294964 971024327 971916955 423107194 887474328 438147673 728266205 894339751 949028027 680821008 933677080 605381924 708338295 784073532 874975807 997669126 998127795 433101136 923820486 100242228 722651687 560545461 648383878 781628092 904580162 605501856 691590651 785054644 867200917 76288531 610416136 657374399 795361961 434143402 477684761 447605733 816887028 148981438 741585072 614099208 683051124 816108235 861658015 261922247 368729935 358056110 360016661 753805518 795481615 181231290 271027453 506654548 887593102 202765716 534858040 38364500 578607512 979032188 987766580 684360798 982101631 71628099 191467206 23486523 36142213 191389828 974834426 268555171 862667956 37560124 202710264 773110078 852610620 806548770 989234517 406736817 610497067 989757637 991026180 559265748 703046060 69880408 822044107 759686016 783224774 547514419 640554126 335967721 456455788 812549643 887353239 377857281 614232636 619809215 719238537 57970370 880153338 134321431 611601975 257886476 284534775 964434586 964668443 746680363 797102052 699382043 730185937 545810677 667049846 867495096 996337744 468313623 591606498 868923322 870333562 109450096 454794038 429771221 699592734 781331685 791970902 355389340 916099663 416213333 769380965 143826058 415443451 450324182 661905886 858841756 905312334 671670251 728950472 387071885 768198046 987239888 998637400 744070105 977535170 589686037 949163984 987000254 994338656 963145454 991396138 908543013 991682994 643828443 715963291 115186060 293272354 908706495 933216246 612296742 940117297 594863827 872640265 921436170 935078879 361051608 538836099 20884788 635151272 190306557 486481365 471578366 709294609 544130947 581853994 975558113 996307625 147207474 500591115 504289716 644374300 822439091 864235449 494430334 740604751 217976377 748517116 532518292 571655496 689943671 886341793 111093149 224021084 661783867 671831714 457228402 853944296 982156031 987546119 372549752 610500485 688758850 761204544 835983159 943502884 625055166 791295109 386156769 770223822 685623129 966938272 372210988 785946234 706627600 817616900 660384941 963024009 277729357 755806905 138134430 384254140 123752008 232805773 382699137 533900097 90770231 165140822 445161842 853353091 62233206 722539143 366454030 605714116 30870478 267012258 411823769 887615358 508125210 683274529 307834428 387442203 733757945 811788982 592205820 646479796 948042950 957425996 151623321 402061595 59970515 204120500 813771447 842495778 634317206 966503030 808594606 840809081 752375975 825126943 254391740 861215279 700062398 971030502 713191077 790509513 60540789 628178527 336547683 803965764 704718801 896726802 790698516 796005627 628292033 737252626 478669689 567272222 635143999 830992279 680945995 884887492 486786972 560898780 124898520 159450895 897091526 903398081 918349136 981428607 377834202 909267845 766071913 813473206 673043847 944717956 458075255 690544561 59746454 366745210 163981147 361314143 453768847 769942583 772707106 913045685 221965818 388258587 564242782 728876907 874951556 994330476 608902479 638311162 188263220 603986791 369534807 458018405 855832055 988669836 168087049 280568913 634388115 963408013 999166970 999376666 371288255 923024053 658424657 723064699 634298913 806829496 138699036 189778535 545197967 883118773 867009438 908940022 782523183 999436016 579384277 739529982 291104671 392389107 800723510 976347637 504724737 508685919 237034332 700754360 725861491 748032429 776647680 820156841 421364805 482601052 430455415 721742228 633737125 726204730 896408991 982727628 754228224 895352907 161520775 351119724 805853831 821930240 503694578 699670899 434582126 439765159 123716243 387777057 542340902 885105086 337186103 452980860 428993681 834308477 721958596 900809305 638465079 698367897 26206434 144640274 576805693 730008570 437032431 680488652 540622855 860940492 765411113 901427860 64472160 515872414 924769077 981121023 350990735 709700893 646930666 809077344 26864885 965765316 364266187 560617846 448820743 725594104 270338517 943778112 9081524 774052840 121406976 556352785 149337730 238147156 882791939 911974223 544503168 886085980 933869527 996594382 662036742 995791224 840617959 910195579 346890782 907894297 214543319 403134390 443154518 474956269 271411591 760999124 2748511 922609309 195802706 536171597 208883000 489165457 987705159 997947201 816113270 908162833 79829178 687969215 301994621 598805916 801793781 820652910 270422278 321303529 810971388 973264357 380370499 671874108 879981713 949450765 608502520 972813963 374553310 493223487 942628831 981652282 343891973 454243232 872802788 997800992 297253271 831825807 347976700 956862238 941829454 950653391 170565113 541557175 55881754 406164111 450504144 836623633 449342757 706656830 695285504 855360508 595918856 784976420 643136572 936179887 836678919 896413373 911492804 912943059 539970683 695336253 152476635 258260702 795684049 833904663 193653337 809821954 331862618 897650777 583531392 601699794 478234636 652624459 59001147 165834233 289340282 423244761 720070173 794577051 186011155 482041228 644995731 689226353 562311229 921591701 911960206 986677960 455510810 987005380 488782598 796820127 847028302 894574125 282651648 457814967 223813515 614625597 104982004 617376821 20302294 478358297 887718176 895084509 595652019 895513811 602915505 679586214 302188112 341353159 390017519 786401708 691126534 803471922 71829465 117762728 751204534 983306697 287657644 911598583 549104893 572963329 832506724 895636275 248495185 303693971 12097842 431739667 363629839 907301683 323526078 936490674 959185969 975781022 484579492 679333628 107768905 867606489 366032059 869010013 529220240 837059478 400029568 948001059 46467116 377576326 608429965 776307605 597373153 773891033 84878280 273856981 138236048 840354145 282670278 306986179 61277651 267852373 975912946 993403303 383198403 616351372 132216933 857627169 715105988 912548176 387924823 510458188 448734119 962890843 888776015 907193387 476280945 499138534 306603091 573676634 274301419 748396307 684915603 765364775 918023731 961072272 280728725 716246703 22176493 780604135 966628404 978774212 184798823 614996338 410921087 989024823 748760339 842778914 698781043 794179464 125666220 800922262 805812708 948584794 878797681 959163112 238465329 351520482 390241747 551881687 59406899 796953573 586842443 688595597 613147332 884326405 722612055 915121655 247535025 757311758 822375078 948856854 588897139 837164244 835912524 948649095 512544796 697615174 49254105 208352523 8882467 538126797 522455718 705411765 509069398 909487453 503553406 521323384 175250191 678901287 871498923 944298645 113643548 261714442 752981153 810361940 15399347 508967627 620744521 911036917 714780680 902336573 15240650 972951037 519060165 655294621 119924247 223129650 317933065 725996759 203299887 650772480 311174402 547425323 679348597 825573006 379051431 536791579 167488663 654332975 870788619 908841626 797358909 894002927 254640036 547684715 810442694 953459043 812195292 978271132 280269206 605974454 877100446 891498622 657389705 762847653 248682353 882999464 104943422 440934030 818250581 995659981 965670654 985778599 190171630 680856480 774598349 903925523 207777125 688600348 276157598 794023529 984221630 991910361 764286702 958379310 904629497 906505743 68331065 83269565 522557460 736385729 498290770 998795294 245011488 859552092 761845236 921727579 249327133 522401908 98653548 154326008 216806239 628120657 890849054 934964201 215576062 902787428 453991 967202760 959069117 987433621 59752876 510942909 304520457 644929373 885584536 920688118 313248227 928756680 682176109 925395986 107284958 489755595 333731343 482609153 551676745 853676748 274358854 690992629 972523160 995614510 297779008 659855752 513409468 817129298 907104240 979921109 118162714 180398735 565272571 713894502 11686300 662966256 995003674 996799559 869883449 875455146 147352726 988648339 213048333 731616445 675832718 845774365 322008932 381965037 556950557 667927691 951186899 975539416 483562978 747960583 117975932 248899109 820784534 995558199 758071762 953911584 125109159 464721206 631169588 725781457 743645143 953976099 396517704 425411234 46359199 957822048 772998059 929530874 531416779 655959041 784414399 972797134 419861972 894089442 325121572 999662187 384241426 773890480 196853184 624169935 542388605 928554163 59687773 88951475 1978030 391409662 807563510 897747283 421561436 672871296 434361902 947223087 941630715 963465987 45068650 462176826 67505422 243813883 696630965 730598552 52643192 922495453 645821528 756885552 912079884 921376266 948172210 956868005 898726798 900854804 123949970 910014392 1803412 695662590 587558209 836960017 507492055 827678069 906804172 994981929 383516230 852619637 282072289 321727221 807425691 811979349 289712527 568582936 530321756 838863163 597948599 983874459 315460868 591399696 789608161 819939956 557087789 866605532 882158458 882850088 13274033 711079324 424833283 669731710 629872443 845193375 799655070 839416460 480202403 492710380 506020561 972469706 672446940 790728705 175802935 956278696 772523686 841933082 723006417 756848621 503389502 927538959 445037319 907948078 641061528 724169114 406699703 877570831 325866081 529763050 61635432 515459083 602021265 610512322 462686876 558315425 457118212 763150177 812042235 896092341 643773590 644987401 792158336 863080450 117132065 538137535 614026092 628841107 271631454 523650808 285162169 676785646 659391653 734442532 30956244 904071664 941641227 995336190 243616461 468952861 660878082 984191752 162084657 549788221 687919314 763649515 557206086 948046009 234347589 273725839 898541845 944912387 413178439 449431239 800786488 885741263 965272497 981300332 994200857 998934830 765658183 857176440 494831247 558978786 791492859 884916111 284827078 707473681 30543284 301580646 678891290 723090481 270736554 906357556 738648940 895439272 688063551 742141815 540431194 725411045 662674119 854911704 257752179 937194429 119464489 939803615 812724174 949392410 454525852 673038914 30821817 56943273 620867598 689403810 711012506 922634581 550545654 972855838 680393991 817169818 933822996 964741217 92991820 550828110 258408431 319065007 766287188 944001032 192758715 412233755 165952724 783479326 187688166 519006984 128131567 319405419 467615702 938358390 42683878 694127859 119654571 923461808 96399972 707869637 977865535 995455149 728764000 940225641 784050258 980107782 554369621 856955550 908215507 910846677 344762535 606766810 404865149 818847281 927795509 996295362 795116807 977399567 349911589 909226136 120325698 938334687 145496317 307893170 95367300 489748581 407874038 608190129 258146136 329688688 512746304 517947498 127142302 186877778 238470958 540433681 135893050 374846180 178577673 968707820 635198089 709232267 310286887 559381759 839032520 983410766 179740290 758872471 840722267 898952712 67241923 935645648 690680532 823595087 56683128 547567970 580432181 976233305 706778894 738397710 271018656 942789679 901802132 939121555 793662808 894152747 793987363 813868344 789147393 939667897 595085840 908607244 170710172 599273880 113750177 509421500 655471627 864121368 820169418 875517023 326832315 347019364 7219410 715746936 585136674 991552015 624176537 934269303 18667658 780973815 492774037 976929465 105162339 510817008 112957467 228299715 884817631 930493690 178039294 862297068 395477472 604976610 889688891 900787215 17291173 59907848 941301014 992771095 387769656 780075428 264386910 804703332 990001452 998649581 362478504 937446449 629873962 898933733 32828704 830713664 494303345 730442767 457931518 684822885 855996253 886898411 205337614 239851167 521109696 693520632 884720397 990500059 294985097 661581774 778367414 923731732 23955584 787009078 816203954 883711159 333855788 880259956 277228891 284441452 927824672 983227284 902014021 902255885 629675042 688620740 799775304 910523278 386989174 782912689 481449595 911585105 459612005 814374985 143829435 689891617 315150203 879839289 879587009 961267320 86145686 636129539 736619640 737866178 665245849 672873089 711078410 988764856 530018523 609754579 178034865 641140778 139147303 156165240 206024412 685775817 703116694 949802296 267516643 857382349 650152732 886278579 958015209 971807868 174031220 887275011 851324904 863727431 251658182 321585207 68895505 209981929 988923366 995996262 500135447 699046353 224281087 850466847 129934476 821383637 806483379 960512876 342544633 937627364 427261246 563834997 324241698 503012520 777694381 987543834 540143125 596808166 575937344 942551990 223976142 224606731 408647557 864739541 675459629 819740405 175620966 396566266 281129487 483348320 814713933 974494979 628477930 895566867 631866282 709873095 635960687 657665580 92999764 542210953 665044418 751101557 952336563 993167129 489896005 892092558 966806030 994339587 220047710 713001298 94055828 486554914 428678020 537033597 971222727 987991652 746043485 861910404 91008194 329882680 109221420 732118003 85007245 434473350 735514921 899755081 582990838 885946823 99334680 889896957 22057627 309960904 79644690 515532737 418212365 445965007 354585238 518753894 734021977 783581376 260698908 283865906 80658874 208895913 42080757 473455656 418119397 607337549 940828969 960339043 176382211 340427201 721563724 795560077 997004098 999431296 187552913 716177803 86745522 291610605 825868687 964940374 479698454 826952815 827286562 991214772 718048574 949247665 282349441 976663218 70701489 821659371 182826742 626519465 172262639 743826083 807472007 944265688 946791890 997512393 824464713 871324127 669560498 845011844 499621983 937766591 681708077 921311991 529221291 839618025 423806366 982344368 994355473 999456383 434749767 964662510 901538504 965046795 199576917 839233320 278921232 337629688 357402034 459929226 299479011 426833963 781736209 855599111 42067853 548487967 612387796 655498412 753278536 856210849 346532960 748889330 571638919 857161893 732134636 878241611 681018654 990511770 459547497 810616663 598299176 913399256 649491202 845294213 815279359 981618280 769563812 914239976 930388566 984448907 335274305 838547450 756506871 792245952 996261452 997684566 511177151 734268030 185073037 352087848 123692788 877542153 226115379 470761869 299663938 634849233 415382372 757137710 770086903 960890582 182510832 439818686 134888574 813244591 209577496 867653057 560862617 685376519 744458990 977683965 434409873 620606577 152818092 685031360 446952866 792700634 942826150 986878608 538822799 900471372 723555799 874110881 496951803 898836471 675961951 999438244 878594491 962389658 496046828 541772811 238818161 655629830 917865169 952394643 24365474 983907505 378876160 748686743 676110054 856037966 727833512 898503071 579335987 827092995 50206231 985626800 644086469 804614302 915941742 952436589 979315446 993465770 465268489 974137673 513429726 703041388 413959256 653580018 364552402 663303425 622654389 902196015 50175945 552262703 717733475 905118411 647167115 980242136 292087285 487131685 420957036 486959408 423711478 572128206 77530581 800666652 912198871 989354196 574023943 776490951 297115545 590102266 757745351 874525337 254990079 485127001 465457703 991160823 848623741 893959371 843462682 944876689 642484465 742046534 611129921 712027323 298783657 303974409 537188710 565597591 919107080 965028628 283206751 691033238 2564522 131680537 346831297 367822234 850741208 852907502 828703254 996688295 108186386 688849130 880297388 963876772 984181893 993498077 934195114 975869714 885337764 918650676 496572784 913842835 30870954 621393963 568783618 941592251 315415143 936582193 967401358 999851365 900692201 995303948 158847710 654274195 40475088 102786589 844406998 965007295 389725251 920413357 678841112 821761295 861031986 898776891 91997820 576620116 753400324 843217896 993036518 995045210 316369064 454944561 651352071 937996112 464682681 527373767 508207966 976527782 232435314 762209143 494263464 887842673 874257835 988728616 320224157 575025061 588408544 623938054 156797437 467495753 399949072 547437471 752220715 920026922 787738972 953758026 218178333 298106718 317582752 474640309 162632507 454818513 526299185 704442473 473862464 540075563 376135323 726904217 445225566 602042156 150953691 998180486 941231407 990810593 946837973 992025304 577145710 877426826 870338465 930821638 434229747 461090269 918069418 989574965 893257504 900485872 451345773 697652503 933909190 979330322 489125943 739866572 891860583 951696849 775993239 941608391 318032812 651774472 433232866 473211664 246866167 394867423 745209702 857260224 679285630 688642694 254491297 880016641 169786759 394859168 71564932 406171325 347539762 768742029 853384122 860704254 807903454 883846921 644562332 833326243 891905160 893077362 950996630 998110552 572783622 752329510 725603874 733861763 184440758 464869281 721570184 760253348 309364752 842113228 312734208 853730663 391013150 854275509 153882372 883660978 756656029 911546491 734018568 881690467 574659699 675199973 886993648 954409061 622259673 746098821 546434684 826068363 644953777 863765747 820169122 825875488 270831007 911027773 80640095 298773833 501444602 537490509 255501855 688290454 367964248 831889477 908018133 961465005 996887993 998379305 705417263 759401815 819891668 871401663 265035170 659821495 161063346 389450729 398102274 998990221 638311879 669879575 616071141 693198472 333069757 543496386 414185096 618126153 823467212 925592132 831144786 945395785 932116190 979324604 10467025 401487465 198456425 714566720 701033869 701628840 181153435 947953951 804503360 966234522 560288572 603770310 250983413 534716656 692277869 787903269 21422913 381617160 337270109 589143602 893361047 968356508 631840744 682441427 420947035 487717406 967034417 979106528 820477697 933679122 646484022 670689604 999036082 999990852 995690275 997794748 317807536 670755452 902241603 974178717 474115939 747202872 972734812 978462901 404462935 688985967 610506918 998983763 790466471 882462336 716904199 772227960 549039589 587066611 858466826 920954079 991819730 996309593 922852971 931668016 201474171 962854840 672714249 735680294 136490946 497956045 587253373 646847091 449339447 765486268 162668034 734763935 481089169 809315818 21015887 56379317 419186827 989714030 808020030 859504209 564173411 745586574 896891288 898995831 274897171 496087150 916992196 918796995 634955172 995922070 516475206 905588509 410079701 978198179 729377175 816546765 223030138 619633118 68279406 366230657 203012519 496267606 954544287 978671041 770970293 897587928 216259951 883886376 138067285 346490513 230266275 520373242 602803164 915549672 441400429 481767148 759348315 913855740 417289569 654899815 462666381 965993804 1174968 656863459 745626728 899487026 125051246 343788945 829698446 836474202 97001955 777796311 776967844 864402021 524619004 534289284 184547775 226275107 416169402 596886190 109558569 309217036 104478580 256396996 195830019 574997823 256577631 838284022 908546642 913290978 122663518 564380196 883981514 956416803 153278602 896769018 379092278 754785564 670399957 791431295 341657690 655852416 771898797 909720297 174130620 725348327 968453794 998676965 705525264 904548206 95974991 210473126 708714781 885076026 366358609 740860203 408552453 881546941 137236043 549045921 233306537 302598794 472217974 649976969 180914463 322693936 433744386 723607533 275813942 837329144 719616195 841737686 916125589 925244061 492619368 946606341 409550448 440238065 805829570 903289521 65117502 79454638 847775681 894903173 696776673 988012223 12433 646575903 669293073 954024574 251104913 561237555 752339299 956039844 905410208 913569055 226876216 487332422 748693622 762898665 15202330 307715490 842313779 859491775 971875939 990156851 810542722 966855220 44481997 645264186 7196985 608296306 367442935 758230364 825527990 960349566 40439998 342387106 635582930 991765333 166950887 640539667 670195409 692775753 438981720 502440457 492575999 564960468 857582104 926416153 250987902 581917740 260267298 432891430 946825691 983183007 250904858 584786409 514983117 521134038 298232389 886617144 536331360 611163875 631271377 811749285 402623202 549604235 949279990 969757826 895782426 942051719 257445967 709130399 716334593 739814943 309705222 611690364 243212611 535566879 656236782 942306188 625395444 862632671 571795054 702642270 681476208 839798762 295347439 410146965 16794865 244432886 328841667 971499168 797135497 890372420 643827668 666149962 554745205 957797887 428698697 608179378 852416668 858857572 360009974 833278732 419383126 982638708 851784542 931534652 533850815 846803486 713002499 788993399 395581892 775764925 741698531 762125946 352983140 886060290 694765684 898523336 416676836 918740135 521376127 653549562 795087043 932512000 690832336 860871044 757159177 860733143 474114503 592805296 627083768 698869006 361561923 593156872 654113073 769557954 253234500 290615576 326898775 962352818 312155090 481982201 524352455 605384570 674610204 930035292 249322546 253492722 510367088 793103140 501190464 827861054 206419037 772386160 662101009 768104055 103551160 653421120 774050692 807436462 260639657 379305073 188199849 520059651 955140407 982515999 324529059 355039170 908298083 909142271 685785939 709661071 28851089 917165090 610276205 664063446 634118629 661025912 617379913 682632972 350926012 744241905 39139477 658950960 639206354 734068645 831238637 994789098 951960674 952120558 671685100 799660969 573389977 795295611 200016085 867890977 906206312 994834304 809532660 981011827 699467821 758334228 969650831 993291508 928515503 951232646 914736406 947598506 898049420 942607331 569267204 786587562 847502262 954832436 255811671 883764690 366180465 486985431 447451534 859788644 215560096 766530582 568880608 770378631 190262537 895644785 893140176 952156436 825269525 975976334 842898842 942079708 823907851 898402206 841417401 882660900 790383023 922576596 46846277 836679829 258332372 885758198 626599296 978456041 124868325 437954156 808177078 945095404 85272742 798606524 107969315 123074212 192678390 771400591 393082875 662924371 688940052 967939039 245618083 980013900 147099066 800435334 254373918 827346541 612852311 699913364 57596883 842129768 936284714 942495169 845361115 921561369 747224252 893552698 250261932 896955451 66012471 703941353 61363661 585042674 803635879 911614390 557327114 981187833 881863741 959522784 542302594 765932549 522249228 825619880 179330837 309732069 984546046 996855222 581566043 763719661 862885762 980951979 489948312 753649973 236730119 717196721 570790166 848579865 694867610 726602934 863285708 949940668 236220823 813337428 927996523 970956119 592289621 783272955 458977999 790277554 500875505 751555228 85900868 421756097 879452832 913759956 807522288 819299975 230129288 993377440 235255487 452364775 420655848 975855494 254115976 574928294 895401770 985725241 706726773 826402740 723571675 843896157 171808418 709801961 129281817 553923710 9534628 479054348 841406143 865493046 828436807 924212963 266609847 908839113 293641330 327524056 764033281 771976089 641467212 717835980 436315206 740806907 652609891 897461648 73146755 216591453 458684468 932269653 158293723 931091005 602705105 901446052 910752964 930701247 763290396 967882229 118180924 455908980 283565905 760079358 28460358 434461275 233653364 635258359 68650662 129130660 719533101 803937442 851372360 874111563 218731003 515105893 481017420 570640901 391502567 547614212 547601707 889493346 719613672 996587985 612794616 770854742 616685702 684415196 318192400 833992376 883522096 884639352 108901542 606631063 608957725 988023244 658000124 847532638 466821427 630406294 172938941 840896413 149060344 696713532 693044223 815442573 745726210 953463725 707076652 766777205 53480329 577926785 875515657 949630563 464418035 597621359 985724848 988713774 490847638 757804400 747467919 871679051 804349183 873720851 176095461 531972665 401739073 878543180 268419555 776557486 707229916 762792353 822945342 845993593 345785414 974727432 425475329 987916562 515453051 645816317 698086805 814830389 662088098 799555556 921899771 968697629 330177345 950929591 580845448 940652691 231188656 355690643 85431272 856716832 799643899 917105034 960367596 994661536 917347879 971019759 719068347 948265828 233149543 583433006 970579608 998916481 576410640 925245684 497500232 751270726 475105115 713755636 987323966 987930823 659253879 728553011 253066894 777211953 956374684 970657531 177449570 283799708 249418715 779152330 351739377 490653731 111939345 140066283 557664223 928218899 871787456 913887763 692698693 916351984 260608625 775842944 766776983 982733908 283220887 324028213 434354979 992682513 59923517 866596574 733951901 927840366 15383011 192651546 148448372 378887649 39066218 166860600 210182785 608132363 564877799 843222147 18413381 41668978 379612260 400658148 210725961 803782313 522719338 794700967 127377109 667622153 180153205 535145403 38032150 699972846 247261156 737894241 245877744 922349638 400226393 793924254 622131021 696788225 68517668 883476646 26186478 541434261 537036703 921961102 313763385 366367811 389864043 513050525 938436747 958519114 512714638 868619104 495702750 585652482 391974239 856424747 385552011 475360048 46023866 607932415 105889813 744338268 169823486 905012697 659570878 973580264 733239575 825901427 38940464 846219682 447914349 709910333 652598610 901886529 12437173 847074711 276396241 537743545 828408135 895796862 811468004 974696914 426958203 459515261 639240255 909400013 250535884 336342817 365209797 956097106 295791241 722522912 321893318 463474016 745500589 912534346 403024482 943483751 417460796 583182431 879019476 999191563 978194875 995709544 160957078 390010152 984976179 993876321 386280505 463698743 734702722 795183582 655444844 947190302 133295377 963897814 813343202 854628361 480527594 792683483 523870205 731729790 11678751 878069587 226223054 582395787 728207553 817801993 11283523 683542426 974695493 974917508 210781052 403376146 828932942 991522614 517569642 902445736 965465898 994045344 424640381 771070493 765820096 821582320 607460190 651994532 710832716 952937532 501867565 534146659 111454521 642892546 600423526 686837052 491784939 976340046 396491163 437836614 905645705 948501298 872425314 935801477 993013795 995779375 222616288 816635674 204493997 773118282 147007180 665205090 831587851 885997033 417312164 527519443 666749821 703209442 650001663 699398755 235968111 247795123 63809008 396760141 751731763 873231760 835629781 926503004 933321515 942868829 100311504 650283122 872731403 884732766 919219347 969396168 928925780 930145636 246923220 922515795 363748150 559155342 549473752 960207937 881749020 908351325 17989116 817243228 582107748 974121332 34966494 591575689 788623464 790291499 462763898 890698069 893281488 992654660 750065369 846778805 68185668 115944516 759441739 984963301 470917684 531032906 826757805 844104020 130305527 569135419 704463572 809586514 186799611 656296297 616380038 945184092 158504183 586510020 337675676 869197205 923633306 943333046 986809181 993759864 98871941 905951852 252012694 311555977 891918757 921902385 876897630 896444292 825676090 891832448 309164410 313266252 196666581 476132725 764143927 901374955 882761690 986447823 126478692 629374244 845849576 868255757 740250685 924282723 55453386 892636526 164953708 763977649 748274107 955561120 569362949 719327096 42166330 230515035 421308491 452911933 873085346 987866658 523783792 771087326 329919554 491150553 693855293 821898177 608476862 888408387 753839367 767304050 194113732 730089953 518827466 823631528 737037591 993503320 368232173 659662554 881411598 936171465 112603640 342046237 587746035 587869682 287388840 820615999 872473037 935130026 46917347 200638806 57280200 356644045 993900532 997348009 215918871 694731893 821947979 988277825 814080271 958148845 172806903 229877456 245197654 848281083 495880281 562665056 570958421 633158185 161881941 780548996 679124167 986413120 42458590 626545282 242147541 585478326 442282690 490740395 79360253 418030068 780500828 829451518 96874966 442991192 72168138 885451985 928041352 969317658 70523337 975189381 461951293 952395974 524973184 581876086 355735016 591384647 615284565 676562808 346074929 453698059 442245420 993182680 365591932 434907144 475707964 548418067 796741296 964208178 112320484 535446927 119149877 870198977 692291060 780120301 776725313 962851094 677659655 892573941 470050840 682649746 598313015 859879332 993338431 997910518 257736891 718846686 889478027 894267282 939261008 997572456 785310016 947800867 644604989 688525015 89136153 485385822 901300078 969769858 780612935 839331570 429841160 809686809 208221195 652183717 321406276 918962513 692426168 996561118 373263509 695778230 710171691 874893669 945415126 967664888 773574153 865869308 568576064 578477877 198225968 443076283 389628919 698248224 694299049 710157104 685420354 998376204 659646424 894969088 184499177 331067117 860686567 952252640 387458031 981706473 861807527 889871972 386474707 613596688 641188198 760544511 421835499 457339671 395758108 470140482 684943455 955662054 747191309 877936464 871787229 985143707 390766045 449152153 164670446 494613955 452925673 811728418 446647592 994632399 677106881 939201312 359375408 706376109 551393281 707332664 874788663 991303285 876840124 983373924 324593263 383998774 512101552 781359702 322044853 852828946 988219896 994372685 64388339 716703171 151884718 448600998 317034871 465661734 820293992 859855959 365334154 603032019 15770827 472539353 740065854 991902805 400205959 660401692 415791385 668930622 996161863 999050082 34495558 387719081 205348309 762108100 917730587 983145731 159515288 183066945 824119383 926387542 884011061 909117768 233602581 893677734 834860587 872570699 86494142 211951520 381818054 555326726 581907432 778931416 924252340 953805878 979866317 990880282 993655644 997446961 78844769 235214092 261558100 867778904 212186538 753531803 909506720 964078859 887421631 909165204 226752988 253203201 652432541 964397632 86037099 828631353 640733916 841630399 155940008 498207008 106509687 287010421 683434139 805054117 568056065 645236863 289262442 864661197 206389052 468679711 152646329 372247835 694405144 730376209 697432220 987388297 824746373 925584292 410177745 774899581 372694867 765325136 251658621 599442138 396109897 440352802 992525744 995387862 971118403 984855125 228398211 528303839 792691553 807631375 832404368 881649620 541454918 618576716 821334602 846329328 674024512 769932964 79798235 318139385 990064417 995440619 385938851 402032396 485915387 737640358 227114519 500262496 507428037 968332000 929022197 997998861 418937093 658103175 294218206 892035800 392910291 832386914 70264384 526347629 67759476 806252127 963991161 980965433 570549166 630833012 966906676 976113615 412221497 654778475 108912780 553930687 176926340 886043344 2382798 825267214 816369915 833807706 942641180 967644538 240161314 275861394 688723568 802675856 193987415 813723193 106632818 458018285 760916828 881616275 789682141 831308357 521683896 950179854 449052005 569831957 547179496 645257682 950324890 994698346 323363803 778122279 158329711 994413776 849414360 966099899 751119395 780451214 88515641 300708744 473700285 896010172 845482788 891626078 140243656 635930080 616874503 944588246 745530963 789451348 605972504 692163570 660501296 926637682 676996822 729744894 850806612 903212095 828119909 961498155 275636725 515685000 330814562 732291400 985138693 996800305 84461482 722342145 450293625 683035718 869850683 928617267 880145472 978108848 725367943 994467086 359551801 867460478 193371582 389254638 611344165 657543091 508712008 911951882 51731435 541075306 557329594 919379042 88105008 803605531 212913742 598998461 827237128 904804569 63981134 338950294 755791082 949337361 471124419 702939027 26787810 844737001 655219604 843847815 336375854 685183600 690040195 701244607 839676473 860486091 267971171 919906908 529319253 918231970 550817670 622901719 962921717 974199474 841787045 977633369 904765626 918914175 635725658 829783427 515975650 983848285 220021885 557232831 831185157 861325626 27519096 69381002 138918821 384152779 560872223 734488043 331835300 993144838 505853692 629756738 935503974 986259797 130109996 926569065 487356737 566687676 269962446 971263984 674775331 958087436 387527456 935315539 601618701 676824297 536719104 865987400 313744249 821953389 599875881 998554452 974102982 997153172 818979230 827162843 679189301 917339252 889561796 959173160 480904310 978817939 833532219 930568818 218083239 367222565 942837650 998492081 810225184 818873571 641811160 750568341 533494866 699337608 656146821 681840529 87519284 337356214 205956533 835811345 471128946 957048028 311633400 971119381 396518596 748611069 941673700 977462922 257672207 484106668 631668920 868686001 697656065 752351672 176673580 860838007 880128038 880610482 110440946 173013640 262911858 434453928 697742972 944462491 933708936 958880714 163902185 771440602 610026836 685815417 381407838 578295771 150180716 462727903 26344009 409424978 590860681 770510659 612555004 840128970 476696032 884733206 772796452 839207121 274108405 779926496 534943984 974194316 720356771 841947893 204327242 296326096 375399030 386415114 646050429 650733514 832694730 917013533 406133368 793344895 779517247 988102846 626382378 836470838 846123212 930098826 11578655 786463676 901780125 902037363 755777887 889526550 767553908 850662119 128708146 299807981 107399462 186078266 738185625 781077148 949384710 950970069 223847978 292643757 329898983 779885204 398132357 778031951 590828664 892747194 151500795 947429263 354557184 791843222 569162928 826131674 600421703 654461461 680358144 917804066 121633864 926886078 488951098 733780674 431113992 584353915 457762387 646697439 861570612 920399567 503388332 704359359 172009137 858234388 967664244 970731351 95653464 503692049 486730425 518737846 171564633 365087930 740267281 769865396 236152774 949976144 319836793 710962326 151644809 530777794 633507328 926038698 425747102 983461162 690714424 694154864 328958828 901302970 168137223 201096069 935535354 940710222 654264120 844003039 609784040 960956750 848142328 959181548 734062805 970327728 427202992 675578624 300611884 915984006 123570027 250265359 995325245 996339354 62188379 749731688 786947542 997195033 966691919 995208229 966079814 975246075 111636318 418148035 908177675 980830833 433929004 489326130 621887870 903368994 575015415 979188326 252877657 735402949 914936968 956866020 843762330 906579827 372062564 629573356 428385500 757165584 371218988 902429979 888609694 938681113 930621819 938576136 745203675 988605103 544825804 823363989 968237588 993064143 578583094 952354997 536435724 889921363 873556490 946317229 544773246 579087315 536580322 548272708 105311204 114622807 183595037 353439323 573461671 870324736 824887636 828341197 633411727 753092536 521255578 564256292 945242456 946468528 213560473 254827727 55670539 364427850 890658677 899378377 843659144 914975273 596514594 966098090 871514035 903478787 927041608 998518354 331538537 822854710 148726695 864821635 255683415 506066163 500075801 978524989 564046112 648698889 558915308 694883699 632170708 752867106 174141850 400120781 907043423 975630322 445479889 619393018 89368894 417799540 682407673 899449951 97811466 504082558 142349533 502066782 832040989 850049470 916808474 967549424 527486334 931865375 996293929 996719939 93258385 714854920 36671389 622578955 630919568 653780447 22904506 549029616 937503052 946194638 477448863 970989795 406917481 841927492 232782335 924926281 855902826 986156654 783098370 801030740 39607059 645163510 119976373 692909970 481623792 527803545 669958826 762248163 145218639 305498181 177033058 456408722 272681942 476774374 925199559 994268948 124793813 703367016 628733176 975945195 566292242 868026213 118181996 214997990 47233603 52471273 867216216 981975472 682701734 746637208 282488896 385893590 225164065 531106428 906266182 975417617 75188649 593986335 689448058 741821573 490896917 752628246 161001086 755934336 633009542 855639608 849038355 938703522 964116822 988503162 134772351 663188197 501951507 590390055 579718161 822015258 568996839 738267713 945984617 961734578 290782700 382597945 214821268 384534973 358506558 729670819 22258159 395434299 794088434 991210695 504718087 730019418 706337878 839755727 939627441 974980005 961680627 990212233 711613196 857038753 749496656 953160667 47420400 917502106 213083591 824162118 459146590 640102421 464548369 886357878 482086124 856867039 238658898 795232935 499075006 911932300 29153067 595075676 183530661 711547405 536469330 751244114 637714844 864698653 628302483 772530649 893787804 922334362 835821561 899040860 14221735 600652294 99993278 589528297 986267060 995511456 143851291 479108358 124964322 281631477 362100020 766746264 625747359 834356680 324186993 893445620 226550112 414731546 376496656 826645642 895660203 903032234 132432994 137355811 434840078 653854189 638792474 756275022 147493530 189590556 293385780 611185914 680030384 724010849 697891132 997631054 875838488 992816993 666750728 953159381 729726845 832662444 852263834 895137122 354831960 905438939 956722525 972844654 960186155 994224437 53474278 250957128 920893690 976766805 288777920 588666189 154635204 720215792 417480340 531902273 709259833 960377013 48649166 863567611 64457240 260651090 391760553 526269424 491192200 788007318 164060827 495000404 912834581 969738359 473725176 894516283 512481810 812951343 238046915 650781636 484880135 969903798 269765380 676060511 845691686 848422580 727047659 753997704 414040812 416480647 279750915 957517239 636873335 862068938 857751766 901046451 111175141 499959081 275070203 912399116 904387644 969326761 162691833 427879869 402924640 769068307 685821694 888800044 904159404 968705412 382364210 865030031 875082688 898826818 571273638 641142038 604967973 696796767 63279019 339816531 720680653 957708322 690165301 870469179 36365967 250212466 490753954 757458312 192977166 872546206 432864850 902242597 166131064 274942570 179167104 634040465 686776589 861769799 77112064 602632012 914183780 971141625 166131739 468993641 77324464 251329120 181135126 320464251 40086485 104963650 737569707 860879354 543440032 841454971 923970881 959681679 348332890 948230030 678181174 764894556 523874709 671865237 142815056 554088260 657571262 819232955 400289629 504796266 306385870 870397009 204432471 882715247 778315183 790951276 482468736 689653982 194673773 776108399 721736632 993084908 422936404 917808476 27963459 752489413 866743318 898383505 906858283 977470535 491285805 735920908 779223188 795735642 535845621 783358032 204817659 395735826 299421635 826788041 965049963 966068507 411440436 993233690 153277036 905690147 636637733 959725960 919711665 974312069 967701530 971482544 812539188 948177756 25353904 93319621 297156393 733223543 324911230 590304151 627668404 773003403 196899514 600203699 941538175 964735570 21872819 715669792 253728252 905646197 81806295 904444547 587251860 851193992 941463540 983611693 104106553 279406906 292545899 447163220 896404449 944123137 153546697 540127971 71291669 85942049 657836227 706556892 312452414 376206844 660345060 661672468 178628307 861695856 426424855 577474124 536349606 616854641 423778480 935902732 639254817 736707971 48411026 491339351 375749286 505004414 370657646 703535397 569212696 776378695 316870849 973911565 877788543 940475865 144694586 393223056 183991069 444789041 625122513 640559396 249636982 632204452 156784098 740161508 711575362 768076828 972850098 995719362 7739856 90290051 529177883 988928846 901749804 909794803 251153566 669463176 71391413 910681935 570776392 952677610 574602602 864192884 968636528 970017329 453563959 915496613 782525634 882241204 124578574 961908667 83378970 436514668 325336560 846596271 661256054 663831568 50734604 633633682 965858403 987858709 654407479 854965885 415974443 978828709 372348230 948087692 500437602 748139515 602707769 736806789 823183610 916043213 660859753 706834066 783748691 854183580 764264924 826501915 393224193 801359332 635901791 819113473 864647067 972881538 192589764 555137055 792122996 919963394 958027573 962280087 341297765 347456788 517260843 647301331 859995955 924964225 526069018 653083841 459977579 994256609 515932124 629656707 764577124 963530438 442409509 487992342 661662908 666796019 912975295 923649003 944109234 954026488 304807876 846158449 760311867 837487763 691270406 723911825 948986570 985565812 716563922 755554703 78611462 106917282 431705137 523418673 509469411 760863090 951732952 952509662 796618151 804642226 693381573 940187111 390619257 956421765 103469046 197305132 689779139 873011440 24788411 359599037 727803024 945720170 754753347 771906326 783482063 823528189 427346360 943569475 9134980 352732626 69397574 562816832 282902581 688928428 733340793 937142908 999333846 999770476 529044861 851086019 172737589 335082279 541260571 951738248 48474349 805639163 518686007 914369136 951275144 988209328 354553345 848848859 573966421 616110740 870491600 959871906 489717095 728596698 128100829 440125242 165458492 318763948 446319385 863705376 28656331 256661128 629470719 842481432 384359792 931461139 41128018 388105714 179785261 546001257 62500404 563427626 89337272 677823022 308313215 839973290 715552748 961862594 343583748 612579104 949586535 957595782 728338202 809164739 425294555 609316837 134657759 869382316 557547706 819112690 602696887 959763583 344384027 789156807 309588999 416750914 799395283 908378648 580872963 727490811 451648273 829025989 370510103 421274970 847881550 919846592 838948040 947676413 163733867 236578128 349448968 422136355 919339817 951970236 384784831 452927303 969223937 990701601 862767214 917512386 799540009 919626946 38390485 364205912 851310294 986628858 68790838 273521349 258667299 317024599 131146402 632912274 879814369 981093881 901559937 994166421 288380976 969671210 830730691 861980992 982707534 990730833 443527198 633464261 698350493 968603223 347479849 457024812 175399658 693118754 575565476 733250243 112323026 672471145 712215449 781764563 919952043 994456663 391157885 855984975 800285344 894498619 19860174 53859653 80204435 671738236 689530600 775020284 679237911 875804751 933514377 996965831 717467996 797721716 836746522 866200985 819730135 821160896 301783388 701435565 995603263 995718278 81930642 618050386 950904102 978274103 287671605 413886781 757051851 949456181 110013735 863752694 34979009 962159547 445329069 732679648 739995105 922957495 36092782 558895925 382579934 447644781 267864527 682441061 168811755 652684737 953463226 987463069 102790752 941130669 536022596 681239460 571919964 634331876 541272862 676333406 187909891 883431952 104075311 658926668 791749300 798849984 739963194 929151453 873016292 989541448 878477635 928122666 796082298 876055761 265025345 602877200 462472419 724071431 749880714 960654101 909250407 966002443 123815831 378600912 685080398 816146764 699727727 718996073 45810093 144214435 571524949 944783759 980871258 991911224 387016161 461183379 555906879 848866045 293278866 719993316 693275884 991946918 212956791 607114278 236971107 862349175 295622603 496227381 584339069 861883843 779666432 835875452 118727167 626767051 688920498 816743372 273834729 822504877 832087770 942439286 568060845 927514809 434678661 541021666 157826669 746568092 399479539 588303777 277232090 895754888 425890924 473040048 94616610 910065283 355919985 491906985 658527344 981736200 42582877 835575692 561491149 602430841 850724853 899303091 903851628 991075859 405297639 554547027 146171427 299576829 431779368 562316176 838817817 997052412 518742846 850496444 8691826 820985868 968206092 979978455 358600384 719545257 75191545 691446585 913301713 961580462 518494214 887315275 961990747 978712618 241708706 899681872 181546246 799024633 759208425 918837387 241840933 923179375 625409808 987646052 320011937 687844243 20376253 481854119 590821308 938048648 335122058 416193161 970248816 990257053 295983750 465650723 686164522 886949518 221572120 351015926 425250312 687975359 339723789 755634200 911217252 993433842 221356872 880055805 147871498 913408026 239000661 806285692 461648153 814898613 234540147 551066535 802792526 990750590 452797551 786438256 419511989 949001180 604679401 842081262 259072447 837397673 782103476 921070836 452354979 674804103 248559765 724877303 614158715 905255216 62467794 355440183 402114743 918577941 88407318 779210958 502825581 547912520 554497708 806568763 194794941 878219241 85542572 857959631 765876026 783844806 448085383 909258443 717223531 819695961 978300651 993775577 252530305 509770379 63049321 474108275 891063440 982268186 4135792 887199456 303934683 772951503 353215250 717539346 75680819 705880270 368462207 483596689 48689888 962498460 147480588 761047628 438922078 484195403 454463599 796098337 696682149 731806474 416673321 799735950 412131969 596190349 812431015 834573903 357261953 679983513 503128251 982880632 142820380 784209176 741100132 863046186 754677508 949833555 385396336 527781300 201574860 978796170 184600437 374579274 700903783 884670804 566105055 616875348 83385151 939539859 555702523 558433323 128385663 291512983 966003609 975047085 821075723 894362319 252292512 442802225 36996191 914095825 572197707 855826381 405883867 470237323 926273088 977855464 130123990 161068371 706298449 786598988 658745908 750545810 617707926 626532881 251982300 833598320 756627137 892011850 862973296 939744794 781462019 874972176 635272508 883646896 607906378 686079135 389258565 959611724 72006434 438133898 926600214 949776378 842348499 909050657 229605215 906678983 856451812 952842542 592172261 759125483 848926972 998288662 93378566 283495469 681789544 820503710 948023116 949890697 193408951 385845760 689519276 734374193 827458986 913897978 882507055 900828178 856713111 998326038 169599193 176721960 945461722 957413333 69953727 386930135 681637010 801393559 724558267 946735202 147290768 193663426 662728855 768328726 801684017 980763668 560083467 638614367 583111806 606557777 585208927 945475145 571543955 755985189 986097313 996062259 755998449 985047751 948429474 978415434 658640178 877304660 63956113 902304954 298408816 911356660 241464584 870669239 668735934 996144060 236909144 452041468 587906139 768682517 976816526 988178183 165447535 764136068 986714740 987251117 230370352 834265235 60824307 946940584 115269229 991003430 411339212 751514718 375838095 735119536 610399199 642061623 120310906 269672936 546673706 668007047 359106893 745667895 429762600 486448995 91355583 173336611 750306912 868380079 281235554 829622516 36378779 600484468 12871379 383598536 810057356 900942127 358180221 800081891 890152929 938380162 135496826 812352320 437453867 989829096 562607572 587205797 386118461 868533092 382931097 583915275 57482225 939952008 743941544 968877053 836213357 925567320 683854655 851408677 137184393 474841497 570094465 878403868 293516173 667661085 903902598 945248138 691136471 945536618 187663192 441718250 595924647 999144870 415755490 598235267 934812530 976780855 667569651 769826942 422723153 976271674 373316008 795700395 799508773 851936369 329326089 938297813 483693991 912678899 858204552 988036760 627550507 715301617 986270593 988382957 30069570 877278031 173794617 870291509 252511664 744936408 80218834 966617433 930373627 982908802 557989297 746819393 148769083 844667164 481113541 813826754 730318577 918664024 314778110 842785930 545333070 593324299 695363729 752839230 959678329 996855429 177921490 602452832 501677426 589619409 784050341 936347128 802372104 921206146 984519041 991194215 481639441 800214441 841523978 880999598 847201075 928795482 882974881 909736738 360439571 400652815 201750051 471946785 266999327 443975309 12419582 30962330 450128150 814699004 884453669 999924778 533937796 882257789 157399385 888436102 780598314 828638372 769972749 806480658 308646333 563331791 431723401 589438324 488280045 723599849 227623781 808210879 40663198 879736562 703073449 950819073 69686337 303473375 943895734 956496839 383752590 473287397 779375797 900254115 947125095 954196705 730034841 766182140 274429766 422944750 789356204 848136429 668785593 679964729 96452648 464477637 98231173 775883678 459210253 986412350 535656610 888605771 690188137 926024809 36690331 118490634 649484741 870835324 406674366 922024844 461937763 580508037 74749943 774537692 73460616 900758654 660258391 854529898 978696584 993424698 239528477 827039542 337336319 841616501 744641442 823059186 997590545 999299315 950399260 952730133 309377318 736608818 436489690 448468896 769768472 882709633 988473807 994062598 647499529 688734946 717683532 918211389 638227883 749324206 703998998 934883088 126971583 746911043 445221033 499754806 44032933 759579779 614362313 881868455 29353388 110193321 651504228 667740729 344972240 530483499 2736191 465877079 434958708 563759653 956707775 987171668 19467516 959899385 93807517 976977828 420748428 794666806 464305113 547499514 555495246 816796927 381581870 739860857 553707766 662181845 397095592 900115428 821439976 958374879 836968309 874407139 704283102 834951844 3919475 674987304 179547168 887731608 209178982 449209785 311024590 895278175 563911104 773452318 894876790 984359105 115466410 257916487 758020185 836571556 461977502 747456900 86703531 198690092 873601909 880972705 305038051 593379150 208999298 334184167 324746164 613543696 803177957 836038434 601475110 688337451 43779198 569118492 21287108 654292239 357562363 801061755 276627222 775059123 943846804 951668401 512448524 756968470 56540213 211521367 433302816 497979023 559992928 630341235 465614042 764213333 71322265 579406105 720663925 920049975 468047765 827505619 540348130 843960865 122650387 964196864 777450398 782347618 147326423 786067113 37952672 792646702 229284429 340149290 574078447 602377708 371986069 491712258 659691549 810183001 591143120 609586786 984952489 996093996 19554469 276173689 112910372 326052897 190260152 628071603 686168697 715633123 609643673 835611290 829567264 996903123 992064081 992267998 610435807 640764515 438135702 927291536 222986589 655830612 510274989 678571951 482292703 599788793 460965833 569604638 649483683 673730687 660293898 950805506 35364327 921916278 252571337 409682834 848104301 869153632 1669663 96384476 577703069 793640884 82961031 151937297 461210482 828603999 485841089 701251326 514498882 945297615 279227561 395673226 23418783 381693940 752769414 856694177 943615329 984100416 534523870 793660341 712409651 922884733 399091773 987934671 299123856 752863195 893031671 948708766 800982195 946951088 526052198 529962466 985784877 992021795 566698217 610425029 635874441 644477482 978586988 983043868 372126863 818143587 447418522 751299777 900957633 952931934 692306040 913989412 689991013 953309966 218162292 799972318 178021538 740196309 147234989 552371977 580237257 798547139 260152650 971422402 204424863 819585592 644104614 955286770 935883400 991597676 274396332 284094276 28624212 729761351 366029110 849929973 662626523 905290147 707901857 708983355 542619308 739795620 105543905 121291965 164569584 619981318 985160802 988042108 958827047 995622017 364853559 402716650 460704686 548782033 168661666 892501938 242918691 793263975 666956150 968455903 539057097 643923818 793816632 912074715 193358192 414106562 101180779 945520152 277590558 969114751 112395161 298576463 880677876 917587657 75842905 469607125 174371183 395687199 642488400 826381042 794687478 883385165 892228486 894877123 743115785 835921192 64739916 116163122 364997807 555152399 170550142 456360794 923215108 953486006 94887090 829751372 138180547 997079856 364826927 749558049 894646761 912192200 681142297 941539423 151723359 283210352 973687289 984523534 558960331 790456114 970785617 998909769 528187790 597415449 132871977 725653200 39311510 936123493 479612024 703010027 319342490 492864384 839289095 872490603 787042338 874474931 512334981 817016386 144788033 706946232 817081934 888489761 145946467 962819627 765283066 807794468 630002943 726538591 996940292 997442784 20021945 180428020 838897013 876895699 802917422 910203181 340692323 356789603 188966380 587741550 93687543 190663505 111906835 694075870 757445131 871024521 841269450 930445878 301263927 915212598 116096798 845032523 599410617 677333607 735768364 922017654 110456650 525748591 156220854 944055270 925860565 967027220 34837697 740588142 208371057 329606736 231508484 543804657 708023833 941021798 457044301 475969939 579553299 817335457 520057597 711800692 558841275 968625807 210423027 415389923 590213740 820328889 300913111 981307228 947748380 994099656 825986509 852146028 933223622 991028866 371543440 559677962 980915058 984988783 794583243 835310880 359735039 433148697 895307222 963968425 587315871 594221383 22979740 502576349 597907935 763474200 237168668 329047900 812993745 861769671 122466887 281382204 260678881 669435959 928230690 942326036 40529508 58471851 173396560 219645750 70986000 975288237 282197193 459386143 823401371 877657206 998131875 999004977 298666783 824436652 884587809 918161136 463046196 617912597 186177981 782343452 296696414 642492702 124764367 960137894 562597409 986667718 107626608 467117150 591289922 867896637 23330875 132844716 116533324 546149297 635020778 901341424 401981010 686345341 149051215 177588444 539813890 862528534 971771340 971775574 362626074 859056338 527124227 597136248 508493408 851450150 878271478 991482136 50912505 220449065 851779234 940282540 106744524 227487132 599403402 609173495 133663917 826986505 294147431 627379194 521926237 927052569 289819336 310681415 801444614 898045497 29174445 824671297 50617557 368957046 22355213 49476595 349888931 663181506 924244281 949826366 641625226 677462547 95135225 739704233 716119880 797466976 439207522 891907981 67172396 911600804 752281336 806445836 607679310 782723378 949060523 949124569 924095762 980913542 393209311 594177318 986098134 994946665 629495364 802706098 564205629 838723144 590658464 681379991 542691140 986221689 531947835 999076717 430711494 673166277 785456553 945724198 644585593 669436980 776175871 979404629 342909437 993436199 263054602 965876849 607545480 733309270 757879639 807390107 159437737 610936961 525837108 752524366 947369879 952722502 364069 660736641 671889592 790757329 242551514 522908149 417151285 964883673 152522430 595789797 240913965 396175295 954089469 956914262 680618389 894760447 341870119 407924594 427886614 597989321 253687155 789943485 697162566 714926653 994849972 999042072 563529319 713768912 282258307 397512607 193867921 765948122 505863414 941228848 74189962 171310561 994415973 999791215 33798153 735294155 301492664 733081020 466700471 492837798 970250690 989667448 422843221 462024206 234085058 322395721 593229686 960779580 872708524 948523159 304550652 423486597 783405877 845698866 137234708 210778540 89622388 838846541 725816657 887408705 322044828 791167929 584148213 585866704 492494870 737103607 840121994 849353594 421272525 864747906 174412145 855561758 584359605 690446037 509241159 809348730 803548230 857636210 704643018 993665082 68780718 831980869 94965427 432248054 105512180 145824330 202303585 675869459 989470124 994833276 855535476 932597531 392953152 461205487 938200217 946747081 538439888 979314615 404360819 494349689 280420817 362104516 603684801 875372032 376499870 433137511 432400572 636332111 287092761 867636656 323998453 447283200 119732183 518032844 157794669 513274592 525192528 613490938 93042531 382358069 637161674 928437508 497182976 956075699 343208058 368924387 518168945 688355545 980839716 999853231 481042237 503798977 572225176 793745061 976796752 981360234 886298862 968688231 621374166 700300716 734607439 795662844 348198733 761718085 247108028 685937560 102503510 627049840 726777916 953972350 497680559 531623291 442490845 983703413 226023812 270173220 85446119 206589453 342709547 850619730 6922793 46939963 762525562 950348180 332100197 772326342 251271369 396703695 253503800 322642638 868348428 874578614 194624487 829845002 530029310 916200697 658238155 870839657 151371914 197331497 596842323 786345356 266104829 341277726 384201498 419302516 339309081 881683193 887904708 892515169 196433249 362710762 614311932 723116915 182384353 836272678 22958659 216444191 835594778 873215314 202229549 795879114 732894101 747684108 347047892 452913718 828825153 852187964 748671851 828530926 26490191 186660292 24415123 209046168 856425649 872201768 557197430 968963053 337488132 512872689 618688340 884839606 357116068 860157580 232641025 815633385 763546583 791458062 618218464 904350780 802755066 875660430 317706607 786631116 356384815 744504405 990937367 999734433 799964812 899674140 743466870 772219580 483153179 996809046 199789597 305034468 337192044 461744696 865270572 886599894 88275591 810616154 605716827 620451476 708704843 835872911 490132647 735328820 57352700 975730976 805392995 906485309 310187187 999587351 746066007 931980232 730004778 983506306 3986168 19441422 965802237 978669404 934336906 941250184 363401003 439673422 522014841 884854988 310071536 333273409 722029209 783673516 781025329 821002805 572143804 982128893 406008387 913383246 858141613 945517594 518230302 820338097 249387006 290084319 829735290 953449487 41668361 461435003 292877406 853708165 558374655 833300408 494321567 748718026 19427326 799991016 919326392 986451861 207711737 999185776 547315455 851321486 465040870 945260874 699797900 919143981 357644070 773058182 238265351 689406589 139968423 799101060 849731365 971031025 797525985 931034063 695611669 895768860 677222339 853846005 944319623 956074485 27767323 184119987 41364329 945685351 537992920 852917946 812350859 925695595 95583152 483032377 894933953 929240150 100886925 951261723 521631933 647500582 397748338 921690749 285495282 764660225 620146123 967834310 620083650 656419012 227947849 386040854 155745019 850851954 379061275 731983402 21252842 755034058 141902899 326196453 235098298 820543488 353921516 655730721 348636658 713246257 992196439 995684877 880866841 966765686 86937721 455321749 223241146 440181779 483958874 496765803 766188196 868295361 565906430 917274559 628031680 998635295 144979743 709939615 329182538 355262382 588255911 766637834 392120059 471899294 274685968 708970884 491042634 744980918 872358109 992002413 892843516 981796362 385016958 565929815 211968720 610788106 618812594 838919417 458513637 929141567 129219363 749120745 293319991 727808137 830597971 845424076 473500594 495279674 284437627 551676988 967156660 983992184 455270158 872452402 53315844 783588456 377046019 637441544 814767132 948103300 672322837 993148856 390111901 701710443 527300549 931893535 378655019 772076617 489622026 890772181 152572606 995712143 920977525 964565410 471673723 612594263 64417733 323836649 73450831 845926417 787161016 851111675 658033706 901060707 586165874 686426247 324216301 727368321 644027150 847010185 664657512 845414823 372955699 850180637 995898295 997856141 525478098 647352555 778187864 898842056 128345092 344098136 128809557 154935699 541930691 891080988 147361200 458910966 353884960 488574646 469185799 525296708 818888103 961574593 999582827 999833848 30305001 347491184 357156796 951501987 697870222 848091298 299295243 786352902 101419534 499294148 268236426 635220317 463207936 532124743 343370550 931168709 907765494 961693070 366859435 685084261 524475690 600000616 462141038 972331674 748892278 814882692 985116288 985291307 143175871 684860171 750418140 786811007 904019275 948373842 536281539 880560800 750020684 763324070 433666394 858131860 427802191 689756293 834524903 993081873 778769498 842188372 204041532 244949102 446028655 905699478 286119135 827155319 58967788 735423849 313204579 357972778 578087361 808613534 444627602 781619079 920479091 924272558 758044704 784089869 511691151 889208180 675943080 712014545 196943842 942375398 354485265 608640066 833175627 994400652 961357755 978308684 683534777 813393259 461148774 722760391 903696475 975393613 975131351 976225784 202018223 640333837 423777564 624594161 719713406 959805232 894378569 997199620 94487640 95369977 489902425 551885477 137454616 721482344 645999472 712685059 306387249 468544819 743630381 841094204 685733824 937082766 554573137 602189048 958270638 995080237 110618401 528129884 41408488 148872759 468699703 864476959 256779389 803533170 736483734 750799818 891982464 960372051 812280224 831320316 542156575 884478908 297906289 358965724 219347140 402303644 273877142 643167943 253520899 322139628 927662503 999372063 333069123 473323627 441921305 560265756 312022441 838781288 260524541 718864687 482146300 522915298 779719456 971320421 933168899 986939707 101874826 777592029 576064173 884861112 389507767 713888900 292392884 383882381 208020993 846194240 161171154 442591467 53453557 917589131 429081729 811503469 559882180 804668915 478621621 569035007 48011901 292525129 51474020 91971481 956482042 974800399 266382385 521766238 582511593 793502472 713839802 770923880 802770931 865847892 682806893 830280655 847369435 966388163 107850454 858850128 790848659 876370753 896057557 990248623 493564704 807295929 287081187 884521971 824218728 921736928 201046175 663235706 433633558 643117293 994276774 995591348 8344313 846366808 268749208 349863662 17756691 650010523 734566398 939004990 924299837 967490579 108863988 384948002 424123051 719635163 575402222 712034398 318699855 995429829 715369692 922155613 492252067 624143807 43387818 869550293 883844092 983819371 404311462 985167512 414348845 462387004 799354296 996651152 960293482 984439983 82859014 948149084 41679561 984760326 437716554 802338844 594069805 709466168 726746286 862851833 6532548 986863955 815915185 948081024 10592465 183275327 657306244 726629632 1984594 384877418 15708751 613273342 966737256 993472279 638639038 782295699 521141543 537337677 749522849 908984927 387508087 712048507 906695002 949720029 861780645 909563855 594200445 895682024 387893122 438558257 722885419 934532333 499557241 755961397 565961584 728760991 996377874 997407874 208349014 851719507 748297631 792187695 635541025 918863974 491837340 620741767 373342492 726960997 467111472 637543935 56504113 817475165 753478269 989386468 389004622 475351084 913887614 914382367 396501262 987822086 640787444 835661533 552501036 572810393 241584497 437434534 19733347 202327720 336450711 696500365 384289364 965151926 269271488 676514018 156696965 450184177 97226739 336681911 777738149 970719746 891563754 904321359 445954621 706537602 575203631 777866360 20576182 27190883 215428906 501388270 754039683 857986942 48518869 73585565 101542816 455588545 377040843 993667061 413701708 454214820 839792099 851447808 860684395 881788672 956376699 967391842 364041518 603156935 965807608 987274226 35630219 537410021 674595943 815003964 36147251 916863174 533505609 879523290 222764131 622985066 279775010 529192179 374987380 958874660 278332078 877527088 685405542 930082522 86472539 580960663 606003616 802918602 659466919 935703504 252864074 532133809 437674819 756697238 795621509 992768429 822620077 937448113 15476335 585429978 740926274 929843473 911421357 950658346 620988887 761599415 546234322 681521609 409446910 636192827 948623577 969424355 172003559 819991459 642030825 751858031 398012546 755552210 561068294 914793987 819619203 934274346 720684602 883324531 702178238 825658644 873118210 959650486 895925502 956068594 684606114 692972048 688248074 688716448 467772798 687788114 780159266 963974968 208458399 571895304 747446971 918029954 785868779 805710383 653916665 764841396 787360911 869968265 365744385 838668941 578404376 822253849 6630638 935857439 634748775 976184835 161218646 482741342 102885068 281811159 645123166 880379192 656251758 671594232 428721314 710558126 523945871 612230013 192957988 235033705 627653532 967664890 727309735 880332787 485229092 858998742 794313452 969322316 253944983 400498654 171701295 507473950 59706582 513540917 925404330 946913831 741064632 842871644 511351399 709518612 29839514 539956215 979655446 989474418 419492219 763665697 334234142 636783501 265004532 884444366 265865918 282775425 159783201 387236220 586017449 950307777 453234025 603641756 709008982 717598661 978042012 988828478 637880358 826561439 608061220 664627654 975166572 985477402 941955468 999234640 676823206 917287246 13808820 343257544 569687439 662507543 701486380 909951996 334270735 746042690 506525612 747561335 63755623 274240526 97893243 397356782 615765284 836584744 396833004 653931632 642856237 914306521 247774916 508160621 747250965 863014676 962088352 990092972 695291524 928950220 122796837 235909626 911439479 981212156 637459457 817028184 411321781 972191632 501985393 523073330 14935771 525403758 378551860 728726948 741020918 907647461 395093298 721551492 885828201 919264895 548962294 991200040 797813749 864047841 618140093 792593290 279382611 953310639 432466398 680015949 165355031 382002373 334988603 507152667 764597840 805622988 11979004 546716087 182914016 187365691 493241273 791531347 719562069 815975019 317730918 328805272 27033829 411407930 488867180 642052269 525239586 803959112 807586540 986809876 477577375 948720350 934604874 980191302 184050947 321148318 294910134 320106291 356968030 563411705 603607363 974947997 814699747 870537496 199886951 418888792 194148574 776975267 875257543 878636547 762467427 911340965 590044394 913353535 94571729 581455344 469948551 972236520 136064624 985183294 967273694 997497727 3498912 832408769 639052757 670060321 299683617 605479950 896978810 954097665 877615975 923033678 929423041 993826832 498332331 960989447 812500461 912194134 808919377 933482847 199945839 498521653 196791979 633928671 45755824 986741111 355879802 709563735 939943484 944572917 477394406 576294066 567625949 603644550 661857190 703368590 452650087 758610147 642408764 984786892 161102169 721504452 868780444 872059649 807861170 922410546 940438229 950408701 856002722 921979726 489047253 718581337 377984099 611496276 222632161 384576567 379406595 724477533 986636656 988231865 102321945 520983824 294557618 549738833 379199503 781686523 827438735 863422405 593195713 998953049 294165838 713552518 881249744 907534585 570228068 838815182 599766881 695056382 994490760 995035734 733898269 764239343 543163481 706301436 639207243 931044843 710410465 727677693 470071225 955113577 686432329 752138304 870168704 897129168 390341144 831997624 900167518 993615763 645223615 953476456 676605314 701289221 446853721 665286123 135570359 445187482 213353330 672715434 198749500 485358419 732387679 941431181 916461820 988405859 242759405 567081515 267617840 571740052 830399152 945767468 18664490 689649383 383497351 663898226 332660246 971366540 904420157 964246833 871267033 995472629 404383019 673818000 431162400 518985931 131219893 471550171 322577883 968591480 40280228 476154008 196695307 426815345 822287006 921392156 104200335 893165484 468310105 800133709 406764816 993142113 990318402 990485992 624162577 919962626 270446391 514893551 832187967 977490408 493626788 778788282 208189142 933500884 755813734 822115212 895050901 974248311 140832482 382713321 47292602 96710600 375884817 592051588 579992440 904200242 856886335 882003777 285807411 415416124 510282842 727454757 278121453 292875457 408634617 523576278 44363404 356489352 866011278 870126135 885568289 996571553 241318994 274965562 842451961 903194105 915411073 982885283 513937962 745340569 229115441 460413288 507690215 943385694 606773948 755576225 51104869 712291704 603584980 735447968 687824343 813799713 798419646 982560205 712912296 856548434 16544506 114737634 588991271 793728526 89975766 146109894 311571664 485234866 531426925 938867761 973268004 987575693 412020876 604651059 861918837 963618229 290631801 534221755 108943203 289454900 876162919 882465811 883764578 892490355 98754446 342034908 826437442 852408301 827390858 895408360 173550083 981015558 877833092 966614723 638966955 665922507 314067173 575314055 632016891 947007578 310110778 529558368 70767193 455900728 469566432 804393230 718029225 950116049 326943094 870292028 158400936 192574141 787299349 796415546 81912006 976095247 138770654 343560646 431784789 677882109 629638264 800842165 713769963 717313850 79401731 902658491 305674555 889557486 96611933 969287590 886305412 995263991 388890024 560803689 918711809 985804253 110773722 365747558 368536141 891377720 162373238 547405769 748029718 818347577 570968746 941895096 872348508 885407317 816507182 839003386 401653164 974961019 719447608 742095597 577985857 700690879 496938688 716208381 672094261 894243710 245897143 627785198 363489704 844764542 636288325 748651210 555693672 933921124 224764681 512018695 402621147 458867949 302189725 530350243 924227011 942107584 118943155 676510196 628819950 900249524 359120055 396667616 541739180 983518531 137956205 749542452 69334335 738432458 684846038 789320816 197251644 963422626 747750886 794558597 840652740 900157220 946291300 963420672 644444039 898436253 286580851 945692618 426942420 427667802 656315252 783025969 804315917 920890085 387191655 451017275 150365938 890737005 698008977 708806193 886056375 942552911 886348876 981193630 684084754 942611243 491629910 848841038 357154684 576755642 756935784 865597273 601175605 620403073 451279837 964300164 197025643 219145054 311229697 421396845 209600513 365488176 962677456 983092270 655987874 851882535 904760728 943092996 876727890 919136738 487153523 658899046 689829828 770292446 222731268 918197926 777196015 834877961 191821315 418609497 405841846 488574301 592910676 644292487 31662428 219473877 448617063 843195460 347174175 667164475 520932827 940913670 415054381 956151389 226784237 626397393 195787559 686912756 67734247 602754604 735290422 753338497 631033850 920949361 357734363 925938543 400228489 647611643 32084162 339586156 579563604 857221707 785291641 997664792 988743047 993624089 601469357 911102476 884796080 960017209 697570687 715465716 98060425 157871715 508770551 550141278 716787408 884439523 312915485 952620086 577372931 701240387 957875728 961216300 565544702 888624636 945854632 952532389 59702969 383975000 123953762 788387766 623468187 933598734 349756836 360265237 394245710 419313879 753156924 784421604 724164942 752008517 481204115 956786039 20662677 891504153 495428340 942997234 775693381 799644431 575249987 632834867 562104184 928441460 671967363 832610070 541255639 838324035 650626735 760895086 279518225 463459808 286956612 574295895 295831257 588156974 288578835 413382297 934941917 996061405 579038359 930040758 376711614 735299594 915456105 943175824 426708308 596296762 960982286 979921738 689079261 876824851 638158286 781106533 269347068 300127028 368469675 773002243 252747296 797165847 135493746 728204315 956332254 970294034 641863556 852996528 241481524 903953665 979369848 992246518 554517636 654350146 191063682 644227220 250951796 581149064 413557665 508040243 845843847 911987824 219249016 763679435 714772417 947628465 772293309 984232261 113034354 796927923 53014498 536565940 789010033 791749200 833415846 917802825 296022009 769019079 731671639 948250555 990136788 998184500 109628309 769974711 444250962 944583342 105235215 774359111 812828901 949737803 778197181 845533941 808917217 986728263 921659621 985173849 783795036 916814422 448978850 535699386 751426065 871279304 925368082 997172673 171377135 297273573 653449433 692023977 437852970 614927252 398839727 662197010 17527166 965434920 84582279 469085955 528885875 596524695 752036163 763869330 925935417 972774950 896568305 999389518 119010659 659549446 388583304 721685100 862272350 906624673 649473088 659913617 149096079 403286367 885875795 974632947 924550566 993699101 248662887 605480216 394297537 705829027 906570218 977540173 998961200 999826812 741114460 788953381 356284077 867376074 588417926 892069980 132826258 526190934 984963835 999836502 401591130 705818475 713894877 871706204 307819727 690350093 349079365 922444392 642208699 685868253 332380809 398765327 424413361 531706410 550008658 573852336 525826667 972586657 409319873 593058980 344382786 909568853 79338253 637558858 993829415 994322454 33897543 38559508 263720470 926388356 389372522 647091700 996606620 998814742 608186428 755179389 189068458 860509488 383905556 894069202 986394656 995134453 111116606 971857943 27451703 200228187 949787666 984973286 405056212 535053122 182571485 308381686 69886131 953655192 594849511 622268462 412557876 785430833 109338010 990125333 789856835 814690398 920131402 949055827 87770851 347054307 143619102 462293336 815280573 839638734 32928878 381905572 921719408 962443359 177175107 748241013 932709995 958996929 979335590 980675233 508488297 915086532 459046012 792548275 898595170 995758285 52556381 105173711 63238663 73915422 520025988 888868054 589683720 752679123 84808792 694280721 951096180 987897119 370394211 879886309 717949696 938250133 825801293 979720309 497233662 711029996 984689163 992756131 497537557 876584108 810646818 828400570 555594758 903310504 540268681 897487534 939936037 984679352 142946370 852309417 62499228 419048331 152986038 255439198 312543114 673996182 411888170 656154954 257736869 603609645 232990714 457208879 549979229 650362261 626998521 797340293 533133628 904841982 795751721 857772009 570075152 717505411 65953670 161078075 423719225 425893028 60283163 244742402 293968662 665008375 38395393 676351962 754213787 843541547 448386641 481364546 873953047 933640181 159213432 375554883 675626017 712400297 929110572 962112917 206369969 659998850 997954377 999821637 352471242 612469828 903535202 939924508 59238564 933887736 70792019 684820119 867486941 989513433 12912418 192805990 858194841 907808613 120907679 382569797 920109526 998999414 693995512 950836360 334576500 690091859 816219128 954827305 659306410 974020030 717230968 870329148 243849338 973053390 555880341 563671015 217547975 666259104 754101991 913149579 388311369 421449099 278822365 766870331 145623350 186104339 478048338 935239464 670528182 794382865 202218004 713071783 714203271 967608966 67303248 261948556 703025614 810492950 227985634 924288879 543631762 912269263 864375028 940594125 39136709 60499937 375395166 826865467 887827835 997198341 196225193 675966079 211382280 792700715 596541153 798665546 516390122 933767921 679051866 744062015 274727898 779549085 870566287 989752456 243285047 750574646 855532127 881471723 731468154 963870313 939333110 999411652 210873710 617824373 694334766 847965883 849215009 955114604 893001141 950943364 996850042 997971112 305008519 523400303 794886946 905629349 958823933 976399918 281249746 928446464 954509390 960695353 767220059 807063782 494648270 985891362 658736281 992843631 5294917 382449639 785122584 983438079 584908650 901343613 350444588 822558801 114624728 792265444 135977832 680382690 143560042 888569525 360452088 780706369 883769026 885585990 686268657 929360247 132283469 367137573 689376357 862575083 397951700 616872828 131340947 256701747 791260624 970949192 255544642 821536214 246582519 912363108 436202357 952861970 970572597 978222033 890006536 902517482 297341330 536397252 868244524 934666171 652565686 769150241 353506185 864131708 277312084 530898577 881220539 901000739 312338392 358733976 373322812 463545069 712436148 734528001 260941554 655248416 476107579 581825548 241975253 431108059 67946421 317964304 574881159 907759742 905910382 978088211 978191904 982714811 579888342 992695489 746971787 981527837 269762427 826140782 420494584 493065384 972603730 987725790 181203589 728429489 813257919 956750405 778070321 945480683 287343933 405504946 149488404 832706827 520448996 833424057 355482437 603695579 381612631 754534212 703081318 780051593 570816889 777533007 200644337 784759702 17752368 246561910 77545683 186527283 553082238 877628846 522892384 745283430 804056023 850432942 8634760 329731401 53124487 540811323 595136582 612472015 813303909 870422649 933324448 943046994 111896691 528478763 231283515 382127339 673587567 943791133 347057957 408406406 639633971 805626800 55961691 553296152 151133178 741254749 649414832 874773229 730428680 797352796 127057203 127822104 137148984 636975268 976334085 979924666 394372331 959541458 31862601 421355937 531593161 755584151 678763269 963137493 864225862 901550779 78398296 735131536 770778481 860039201 665553903 770937292 496501580 585292377 267758266 526663403 935072808 957283509 232472394 338107940 827625709 913531110 358554329 880601597 97269858 308887352 623802451 799925152 337395768 361786151 566042285 849405939 600242367 607980135 770849775 847643776 248696557 869248266 914011173 987078341 278151704 796211214 188314361 946413354 230771647 642198895 244913414 555240177 356463197 876676381 254578976 852826223 646623125 782125226 640508312 702319451 503767392 565305291 554148552 817752041 323192542 425069318 79049579 277597928 636453205 893369645 934397520 981484121 927386372 939668374 988053035 991880430 127528495 489638863 998876396 998897458 280607810 872089775 747175331 887473699 654113359 701793377 522472218 743233765 508524654 520264447 493015854 501934647 160084380 957490997 441496230 531673678 20846710 50322526 964045772 970626518 855094099 986556173 173951067 559042346 410374381 590098906 234614034 662084246 449016689 774101794 68109902 228407961 657785861 808731725 861654908 991836027 138600058 564238783 490139318 707583514 73745810 825658666 846663640 987063427 929006429 955101364 385438453 737110318 131437789 763210286 888988708 983013841 388515056 791600572 581538276 586589275 301618942 598909069 504002018 583677643 655584885 757290650 79587937 170585787 699022951 902823511 209770264 771514614 619759315 943165664 904897942 922336238 900641441 954526829 790716618 833280202 23800737 32054935 122138257 917465867 299391016 893005544 256674717 675554976 172401734 982673100 875704232 944579358 579785118 579911725 176530520 206375473 315141563 775958471 955927359 970382257 634127917 648961197 866256295 961724921 554155473 585916184 904487731 998655969 127296402 959911147 276201308 721906730 103391474 131706208 264180449 459638328 77694373 124134063 223202249 588625444 839474038 983893323 633268749 763044630 207683003 798380497 154105499 576795163 913231501 930419553 961144770 963136750 541432593 811857072 906342810 954078997 777778551 989310420 369448877 505297548 474241578 941481204 168184030 444936299 651559991 861010823 176346822 461373060 187675312 553213380 78946743 234948397 142454581 537562168 842189223 929493550 489938619 807300931 728094158 959592373 843227 516814998 399833916 449264618 785297341 983429204 579864753 844617443 827143217 863998499 573700905 849474904 907415286 962856273 263077867 872971511 181986076 508955989 155983779 307647852 452819445 651793386 861811145 955682422 969190028 987263455 139948751 933779664 368619289 372848383 492034192 847082644 982833229 984830295 916095462 966082486 99574568 350786307 235108132 749661664 836095468 959443975 561368252 983066146 805938283 961606307 215488977 542930539 665879788 974975862 240521309 313272738 940674249 967891541 604448152 824948725 842451332 950724285 739412317 994600120 701179236 964396731 41082311 925701531 574090474 896546303 597372283 781528060 618561088 641755652 16733183 239017744 697631353 763498804 381793868 411381924 665773821 714389535 773842782 853227486 338592058 390084829 536446517 564382449 845023539 929471728 747962927 842717096 279373765 531116382 707305716 808326605 564294593 639590402 589101460 882886306 13425483 18021201 893363217 958468027 434328351 672593883 707171159 942700284 606276683 873997642 926645527 957733923 51252448 531369806 142628883 439467730 517909682 679083690 470947918 877186813 221634331 554369693 420094013 508002504 126572170 949690180 969662599 980458059 736309710 838282967 775281363 993451526 736067733 973368253 198148607 773688411 162304977 299268342 181597212 406802039 623777925 735579848 788560950 903100601 826583090 898526565 361968393 756335689 802190794 817632511 69225162 994242075 9041229 72402111 258741513 470545583 311086124 928485722 166093772 909720867 607190731 983289549 357512409 518120598 703843277 872101712 185399806 998581223 735223287 809554342 852608676 999321503 571712899 978608648 329594317 932669764 896218065 999326203 228220473 496174449 653736871 771317437 686466633 746700087 309257617 833116366 783334519 891984487 334484990 910097621 70135053 467183645 920391005 981519671 931065178 933674031 877263520 981063907 332819663 471567273 525824706 758187728 837261012 924033755 404794674 645325606 654414750 690016680 451711110 670335099 689214509 957201236 436206388 456871610 533259683 671307657 244380280 783209518 700782351 722011858 783141479 789846078 639496605 876006929 65837874 933759872 135524046 392551025 726497013 779451564 234488127 674551116 157353760 293532349 902241991 927139261 43730008 742377172 235397923 567433698 799113899 848088194 487851568 847130656 463725809 669222510 282036105 367948285 174675067 411234753 849733328 894494336 723291196 949223563 23491135 244601146 401356636 715083397 487451773 651321338 987130480 992964783 182147081 770968418 536708399 811749090 261416194 636774125 198650689 490494261 620318037 715506354 17240823 247282501 981339079 991537862 597482650 690792704 289969394 703891172 62689743 999488169 702080028 722817817 27229805 139005635 775534840 954768701 559822579 743116347 938981346 959902077 885603548 906856602 502107716 735700499 155477816 301196955 918535008 991881219 896463562 958542468 860060630 954502245 624813019 908867332 344700160 937680092 487933268 507463453 420153129 504260194 776649478 889221672 624720978 969002023 189715112 542760875 141417058 611390278 436846032 919828329 247091372 729477901 239086766 599743765 444844383 886479266 779548017 968386691 738681512 981519287 63845123 448761377 633965896 681351993 837741257 855741513 614505275 989604936 512614526 731054793 65322822 653714355 678909400 690929760 228939750 944216496 70619506 573124064 771324306 798380815 457349928 891195871 354506373 959704680 605370083 848482623 797135601 805288938 153885193 842153168 334053533 710180102 287362592 401515081 490128303 845415828 126923123 220491489 840931653 937469245 991342516 995412773 195126229 646447434 557009802 902016958 279555192 827302064 890911416 935924699 15115310 579794076 559823094 663079096 883644594 889959586 890993194 997351378 690315202 893168757 402989931 625183617 977993682 978055427 179078723 759726519 571680186 598697475 309645723 857144754 617296168 759512816 572275552 981714998 932097500 987496727 476077944 910138720 581217367 686761086 912000375 985452359 43932087 787470154 106298109 460887228 129963729 348852011 438700487 970170332 583291221 919264474 624184527 733857507 434509044 752726263 471660650 684044625 639864775 783781702 462771338 609831982 150562000 980561593 970103697 979705135 728924502 910635329 938297227 943060622 332083395 668036396 292617546 438248347 282171221 857672251 473453417 730581590 873247304 987059664 259935227 368766415 484165757 563742458 286933681 689201976 229800267 329619127 163428473 394983444 19552334 618114275 532805386 577401266 502844945 549580717 776650127 839853739 88064544 565082586 725912688 945051257 726289196 875329575 519857115 776863069 912652826 986194198 108737825 501734071 426339825 751019354 373147891 536324680 303920267 787739814 227312365 834509679 549034482 797158983 872499336 951634622 14853478 733638885 262846313 783767446 46695569 405655981 875574615 972692579 650139353 693465636 664949393 770415012 913634015 972826776 4172009 274406578 819273136 950464448 313261841 646258957 303180249 622063765 953388848 971132143 722138486 844216558 364316740 571106597 415470673 843711425 948716569 969124562 240890007 720050728 119063638 202535827 675114701 825952128 120573151 833363901 876851934 983189267 378439582 923612401 697664096 925741573 410141840 540866193 841514221 970639462 388190803 684163788 970022133 983440785 617662635 830948538 357758362 374624916 885957274 916437705 503390341 723754906 785782651 891478919 568689463 674963891 759192727 925567220 199174954 549353821 176380207 411293548 281397296 558151469 259734869 343263350 309996622 528863138 875287626 975220560 880357030 947737682 922460788 971770657 934979887 961235216 259670867 810758735 790248401 848549060 474457541 644747782 206202714 512133057 828867740 851322530 125336129 255809784 258156828 725640683 807152816 940896032 197521845 360533402 362869504 829699795 632140027 770936134 452516388 532699580 605481736 682150388 996629028 997328073 306486024 834046679 745152034 849426750 763079451 986082170 80830842 436951083 781497020 820275034 773670706 862784119 918145780 992448148 712659894 950013889 22055357 393394305 824482751 956832290 402539234 542028978 635517805 963427367 197499442 726337994 22608936 746193832 3611531 404004482 706976413 969294502 6941799 534079094 550610996 563177103 567164174 937694312 295934492 443053389 809959285 905111535 561935376 786950810 883693550 930678615 991789169 995789902 618040531 629090266 205458919 522518842 69179732 881463199 954513892 973131547 996169874 998625760 294848190 828482262 750238679 967964506 853233370 869988972 722570326 929234972 387390787 943431351 378823597 910485284 435121368 835775918 604768271 950177132 237137633 730131607 970678675 999197155 60770635 270401694 938552024 994181575 18827195 472387145 789410404 958691936 624414219 645335580 920572382 950856219 707959835 796549979 66656129 974903176 579863508 618815260 987827986 989601955 577810033 773256308 453143683 925163914 139772732 323323643 699700340 883100755 180692978 612020867 130262771 650457399 891843028 948992591 828174975 929512305 350751683 726427445 271870847 324859339 547837361 960809805 406196566 947644551 740482704 925188622 396554805 580837409 84577858 976823294 783860826 990027006 20508264 383733079 478382947 960681155 318670850 597315484 248567085 405728739 572802454 798727220 324217077 412045794 17396100 777074025 502329520 695087483 18090214 642196518 154607554 309616484 228770964 883079681 955204399 958791350 888955153 936543667 435090377 441543185 869143136 904737409 853372575 914113916 967379121 991212308 526286571 622701576 924148119 926896279 995877744 996394997 738310295 766382009 97724415 828484123 973795647 976616674 644023269 754986733 29549389 626881545 84352794 498126711 264579452 998417967 456323966 576724734 985270069 988251098 233742319 394525929 383792848 890457294 272241260 699208901 39787272 666745649 689006802 948194516 71441158 784745823 337874577 695433235 844507072 872207938 649913349 969775559 399729012 808806158 941818148 987403203 330421255 699926240 231938290 556349880 4313546 491647041 802231825 940167426 350487497 484553816 511040005 934281407 642234557 819770647 983717621 995935024 921964000 971631604 596077774 961044325 760113634 837574251 222512193 891576543 749973235 990960967 139075839 653558755 2309982 809708305 335731642 888027770 563029292 667860817 900811690 933523401 69525682 856773530 570237572 744210015 860889326 903892110 437674114 851399649 140233624 815232095 543122708 682610491 976966729 988905836 33039787 120452091 136336541 260532757 299593217 685113582 963441309 982318513 908478937 929550703 995060002 998261028 923591227 983811446 690853424 792044370 272732536 391553841 87408747 919830116 525152728 992362468 261102111 279792162 324958861 747393420 967664347 984977927 495062577 608472548 701741438 886520523 361034879 825423494 191747205 412295050 392247707 982606187 393714379 971405130 840395748 866361336 199993367 439744645 878922035 880470085 531710519 723410203 965102498 993042432 750747429 843909956 557734921 990563094 972462055 997522174 291857669 550756410 475650871 746318869 475527561 926639195 859568655 897404060 734504318 841645981 688926465 882101032 557983422 841567309 290189552 396485073 334511961 741127961 530778740 864764075 371430949 385780486 111986942 663095551 150668701 212596979 410527344 624905986 381870991 520655989 757970997 823105428 342651474 631988022 963942900 972234414 823097427 930072319 626035349 630226504 824908940 997422196 151293957 725161518 886971468 926338045 108600252 979081702 278563617 668983898 536183381 565822498 422276582 654277740 412213045 494683312 409341456 474872953 374440638 956453689 993921279 994254230 956187577 979931113 365232136 941638015 820427433 964755305 923622281 973919278 541740152 907776550 964917658 976648758 31836719 218988205 249784868 408626478 772354079 807190266 967639146 994535701 211223208 911402497 494139449 940609027 404029065 953237935 802103255 867899587 328779776 563703663 199500806 624348433 154735594 800785762 847519555 876869170 223252808 531048994 365212129 415504071 119736041 129245140 997820353 999884844 29971604 304876692 980764853 987747441 985734089 988899055 138824469 558609628 927111923 997785013 352365679 827319784 845406208 924895325 814831091 854096314 227054126 572344453 181697174 855277360 124103538 180257667 696261441 766553043 394159906 847127125 741071417 751356216 873624741 961251658 503628640 959165651 962280369 985583035 945018469 966357772 854074815 875846886 294095308 776889547 374169674 382262021 828988072 972270665 501333992 961536984 941758615 949715177 255432200 756358486 63282464 807499056 608968312 738830583 632333808 698848910 501268655 785920700 757259919 889892234 204858134 403735365 576323879 639864348 60845809 270659784 539591750 831212494 774972241 858683372 138441095 203350037 540999299 728576134 128321316 559169606 630089519 894824579 4069333 529556415 239140218 272911608 767649049 814947421 932821993 993683663 691143709 897298385 806622243 938511225 63454310 820860842 100161136 146351702 559213855 856443246 942356149 948562355 45186640 201565077 788074021 809811875 333243305 931752506 303519758 978903919 827153229 913943849 222393709 752037552 172263387 542454959 419154854 879292161 653492364 663729271 923075822 954462620 139740094 797410616 703529382 740778798 844426830 920296139 510792438 991052995 17065248 613195119 881860475 943341871 59227770 957205086 796640656 983768256 706348431 858083376 8411037 978615166 545556247 808228011 165768513 246798782 659092690 833841792 126469041 427706225 873163473 960687327 422789494 690715973 65821185 996839400 190707774 974654418 60180104 414753110 44308349 235660583 139066102 365019795 606930371 622744876 187712415 376357293 451191641 765907857 786081248 980307787 777385041 877166752 927653708 987742992 476699720 897778449 570144389 822252478 741234233 775863121 40262519 576689378 418555315 841052288 530623585 936183678 699035183 752022565 244913586 254110291 246413849 326348417 124827705 361595409 734264037 967148738 744227775 907685462 273233610 811073421 980264816 995436369 286621700 330151616 501998223 802014091 417389438 518851907 174580124 357714933 189942822 585047920 574967296 856659638 81638966 223212381 331470745 698025596 6935992 649018591 170963726 885271343 445900246 909533465 391519729 984947979 47882207 198483503 39702921 363134978 34616414 240279942 478769310 927292391 10885392 890991934 519155581 865197434 964338027 967765263 745566215 783549354 884470271 935183752 507643923 530658898 590053683 986520417 241516267 748480439 693492640 889282445 227244977 293783834 529338062 816962017 967661636 974017882 525891899 805277821 615552564 923684122 288545575 832621585 451508909 573916418 707753531 773549504 321635306 823687496 412916778 953021114 204654924 216889602 897616561 972330933 66587396 91029903 124703378 869715682 590210659 959909301 768716393 903438050 204072912 704691588 198754034 927831820 649917231 720327488 193644109 341784594 657171757 954890958 490454364 505589955 833465567 899052906 488955509 822949694 255906921 389549253 920283599 954257877 462917848 845119371 424264215 426673586 583133331 973001775 74478666 106455418 371163834 625265727 110479498 173192781 186657523 252277903 651714870 796836344 849031208 856759034 255336310 414923468 921098218 921147201 330019370 706779675 954151854 982774147 280489319 412614099 178432275 801520251 913967059 935893524 967825667 980618128 18935051 621561910 157739235 882776724 476449349 981056630 132482925 437972117 91491647 988858431 951231362 969585258 662193131 836976854 342948676 914440583 302856439 499641479 980840463 995553738 661340514 849329517 720904675 826258047 704604741 862360495 486548027 983168537 715010877 941062877 634024838 791731886 757028203 798230455 351242848 682162869 890118794 972328783 972667364 999468807 203203414 246164161 776108752 967767713 896712561 942362574 607527946 650502714 88008925 843115365 837153272 930354179 182539709 463409795 41602448 954475622 291325840 769827271 569876551 803555257 412836160 759342688 171332186 936004483 223906397 624220582 180758758 212328871 909366928 964749659 540900452 657707751 690823995 838790242 162343149 875523128 865962209 993070892 36041850 682571654 811885781 963355645 529179344 929630587 848700357 865162435 383000951 844641992 593568527 990418691 799217678 820549384 827678070 999886184 637949569 928772593 456993007 803573761 697064121 730266270 538829918 755688271 788319150 804851085 960321485 992166487 37887412 747962939 761186617 785840235 45277958 945708056 926867908 952651286 625143870 898773884 230371440 957363583 719407374 778600817 757875247 866809262 555869613 638667401 97675173 775815616 309869784 995141486 989451863 998959811 965741456 975475470 751604654 849873089 934252765 986256268 937324426 939987860 641651074 770777989 432498307 863861058 733052268 921150666 164902112 913059566 823161228 987545865 81837361 203860999 441347260 523175462 406663855 650203888 677127105 887547845 379160467 582164373 610464972 788740520 840181114 977749160 841862150 945829270 596774381 875900740 710116031 740211053 846807147 988970219 152841866 528635962 649247375 732150828 946189163 955477443 61869839 597066851 125111859 543004965 854184530 911161725 721081735 833553913 416628915 504408142 825341817 909297213 575764633 934313248 260635509 873280915 677359512 746963981 901450430 964401830 20888160 509785121 845367284 885194755 492779039 824831243 290405895 322789530 843657449 958654760 78478306 280872803 389545614 437484183 765679857 856916536 236507528 311629335 779371559 912184463 612249481 934444356 167854815 950938735 975943028 989394617 746016898 813193172 830322101 995568072 164927227 397605094 834195548 852346406 547888634 746680771 348194690 666285037 80932357 429965634 172843696 700264819 753315619 965736860 902359229 980581371 730432705 980849801 20467399 501539551 369249308 707027982 362657150 492302486 130109107 779802963 30499510 604146819 890115952 906184274 125842444 777306336 300512871 463298164 868315372 937187329 941136692 986048154 816284284 818058470 422939786 700844354 826787707 879449634 650965384 779947788 278445599 549205176 36276050 956844742 326314220 394389044 679681727 737727029 635256782 863150296 430092117 553726187 926186035 950599990 182680540 671255830 681869241 703026200 521271111 656610459 101412208 606413354 330411904 864237722 789211272 956262939 319529984 470843096 81286097 940559392 838149850 956909490 349008321 552174397 287152282 783816583 515575061 829341149 476097424 476651989 738752873 945304984 114725393 685100453 416143505 676717462 998356271 999445489 413678846 954660851 566030674 754826274 338431573 991543015 53116815 124899906 539817874 850337071 930163287 992704579 474667346 935286393 864874945 935047579 281170350 573849909 843207821 943665057 771595324 832105866 981630699 988806129 622573667 863913324 727870670 914893577 251180136 795350533 569344516 709667487 514114118 851122696 12273852 526617026 349561105 768646537 929326292 993469649 539282616 776567328 265397860 529043924 676206201 801908606 444495233 550234396 528473107 580497468 305503345 557986988 652143384 911241760 802110322 887689119 469544925 658037444 605782346 788049236 350459707 461240283 415241803 848166178 964845089 967678337 965169792 986540445 993151746 997375288 331546240 674160004 6518404 273953664 91573429 757326148 886884099 960917133 420149772 831393674 688838613 699451384 778732043 932462187 605967254 975826138 736764920 815031292 645653914 700172184 645099940 798615247 141096020 937582162 840443344 949822000 880228473 950163588 374524332 413621390 444801327 979603714 114692758 895769785 427892270 948586656 694449966 812556266 632811407 689946005 984424613 986052089 899958584 906208110 774364437 807016532 834222148 915754114 723364358 871075066 697545025 944842534 59386824 150908773 712304339 888591139 393154205 439094770 478104551 976619202 253509964 660037906 828533156 875011124 364154654 874292059 248810352 657534700 684579070 934477423 75241344 228255327 620409870 797685430 937209099 948593632 258932525 616663850 506373023 965723467 482266215 778899992 32602684 370274940 510734224 659877337 544304208 560793122 140801610 599508822 895548401 912221700 335762818 497828810 632871353 913768587 27815266 315460976 898792425 945532440 687683115 714136755 47856534 842084596 871354093 919016148 652031908 775654540 186451673 225426361 747501277 989662108 755830512 905236654 709567754 818983015 45313576 745998872 308029852 375935863 749590159 793780343 100229061 500741949 892466203 907699930 448856941 783957385 701528300 875059309 970419215 982393662 573989654 649938232 115576811 153993381 322180771 367633132 288580176 699663328 423893487 858794724 746617674 835758446 529696560 638081112 657438304 692674942 550153087 719034638 530002756 599899856 745556568 940936821 493315701 778451854 191575629 845186239 908822180 952458110 414221858 597870852 801632949 977644447 614791973 653482687 32154975 33489677 593436958 785431044 132986919 898595073 835127354 934709022 348289542 390740387 843164035 983556663 474612057 492059881 752169165 942901650 547519378 813401914 769626239 801362900 927518590 967798222 293378247 926599879 771584994 949882626 186731340 572558346 294782833 875604569 914458306 929840185 175571515 558993917 679866809 766041448 215607191 431336501 405732758 972889578 742071966 989594610 551505991 953089675 84370496 251400989 818348131 974767081 302481534 787305722 271990147 289666138 781766490 846848413 264853722 696346497 640690017 922442079 577979274 735506535 997501566 999794536 775706552 995115878 63737126 450227061 702522298 931401347 711815743 759556215 946755972 965138487 432715835 695173731 563080772 872860537 959527041 977538440 325040352 541107401 578103258 863187607 485813958 900827725 330519854 411657309 875383471 880502634 771722659 783228909 190868628 477385000 92857095 823880793 334654191 528699036 998255438 999891592 408075495 854535648 230986913 507550228 152990823 496107393 702068839 849387160 529373838 682136430 702113590 995432121 62881261 506114592 458092968 613763777 916303560 917039974 916587733 917139517 423529192 939788858 33786387 404673643 905010831 907256794 276920404 365282963 975498143 979478560 666962387 728660509 837264906 944149201 280659985 608202292 232857381 569759927 741641297 763575374 123165121 717138808 730579126 758812604 287336124 646876088 911548793 995583198 393573015 793899588 331242997 780667716 457128786 499047927 211680618 616700227 453723125 863387610 280976404 702382350 53983720 622836387 50617934 703151340 962328497 972830309 591507222 937645548 972316691 996778806 78003578 785263583 481779777 774687121 381176995 864102928 510392990 891427544 678388321 939276663 109696081 633216296 356255589 986559453 6366432 231739394 857349456 961735521 841864275 920903546 255744601 882740431 495675824 639200189 391554239 776410901 137398054 423438598 685924687 866423222 199953452 860052985 86570378 402014809 574674857 858566774 139656841 456111777 849991625 886101994 205813784 846859903 315182751 933277036 720971118 826570562 250416792 626323957 810931401 940699083 802228472 960848180 115837192 588732786 24379632 675103461 943055332 996001425 436212529 725828482 421029667 949730286 103871952 639395604 458965471 694806725 363197194 560875989 958696852 988696591 359133097 734751011 373853845 395492559 935559786 989480031 652901681 948525262 600142392 703649035 238230365 933306415 539520124 633986251 789239546 868397563 833057334 903996231 297811897 327683087 646608833 917331035 941733444 945780346 71304494 988667209 345695458 634167563 873521491 926941945 332587282 592144599 476190312 833799932 286753055 497419433 95746086 994988170 14922968 137353278 752510571 932214988 21252884 952384509 895789417 985857569 747608608 775524028 475199052 903872194 621534092 670039011 875256089 893564578 756939046 926419784 819467005 921774002 205849306 929330786 641501373 726197922 626696967 854109125 53138528 819695461 550889385 788431181 398643054 418682440 749731462 843977457 688184146 972351504 52639280 834759649 763568779 876032330 585164803 814463602 214319017 454624075 192629783 643015241 297885828 954146414 83326975 357158875 837684068 895516222 528809962 759984508 370352105 764343788 625036637 785666826 386600147 395708628 797959307 975354831 334439789 729255845 245287251 252508373 818388062 882855906 704322262 707292318 479905515 538132642 473905563 811391813 220382160 961736375 4683871 297700664 843341474 862419511 280012257 382364322 306336889 828259196 849638606 971601241 98022492 290219292 830663681 957261920 92790632 886654612 948873149 971070118 894287186 942130764 875519158 908503299 547692548 953592028 465767017 495162871 690312073 917809814 714444857 759608814 821490693 843988678 316387195 638263853 24557551 426637026 409393966 920712249 727710638 876256855 729826636 926965153 570330107 813922330 302566369 647622575 400988718 432870989 181918477 672746536 586959496 724342578 291278594 581415399 836089438 874470043 693013197 787418972 593051720 597132126 499117673 740144912 32934770 452377703 521372286 576929132 30207042 178394526 225768258 614570668 166362765 807519497 251595332 763849188 8103178 791785579 153032915 192899220 310532770 810074319 783299872 963114424 439649428 944261833 602321130 697766028 852200474 961093120 354638430 668483990 389920380 400141094 308360801 402654858 68797078 979622472 275696682 460291236 951509075 988835000 252844238 439379960 635966305 834225509 769048968 986607662 421806164 775920852 179612383 682965221 998836494 999655913 651897641 981616198 276398352 672859201 464135100 795583938 979356127 995529217 485947703 870211336 298492896 422098050 42962273 614539986 117511305 391127600 128858682 325712638 562063353 583486850 666974023 724205924 304136563 756597128 729916555 975955828 633714615 813285959 615951988 690362947 206523170 555732999 382417721 993068079 611636823 901121593 526839051 821646373 294811299 310309471 490643270 695614576 875722107 954421668 163040606 367128429 115010831 426705773 153429144 650266335 457055208 731212455 996868027 997337629 494022808 977464153 834311516 991354723 448606043 631238253 735171657 840665102 513824985 615128773 263245606 461603622 852210285 940051838 581329414 942161726 826191897 908786388 362178558 906871054 300072756 925916546 643205470 748807515 67667645 545628189 24687430 548666080 666723723 904965032 964708739 975701832 455461435 561021411 566232886 742936379 416136843 797641609 580133690 717481185 770204322 784165926 374689972 443280420 849966913 870812793 175902327 601065636 188126352 782341387 450313776 886349387 559733741 694448500 303037863 881246816 425226037 815805534 433132846 767167889 235222196 693358983 796336103 809299794 699362908 883534135 12836564 507300225 977682097 984226508 137215094 209246629 531127927 603234092 162541620 515838885 677632385 903116694 867833353 876686128 624003081 723024203 902206259 953574940 169058605 399973726 957868811 970662368 869234446 929725331 718116526 815848069 268069688 321816212 316536472 399309000 175270547 286480427 566111698 621838949 991444341 998912675 496673986 543200803 32961287 508559434 115828602 884864001 64560741 912411462 27073408 296290399 642867248 684599325 735777155 843285787 541466446 964650138 393062344 847975040 908801759 953433627 104055927 401961123 202816886 389368696 634382215 822382874 341028989 742456031 905398595 930202620 765980303 822738233 117915004 385264077 974303395 975952504 754032537 957826646 312239465 846764390 232360413 511181324 572067394 686109499 356253723 736818542 313644264 404918716 20639765 637650585 287284162 877706105 607818997 611537664 400283106 964666864 735217896 898226685 888295716 974143432 492598917 547730592 913771935 993085991 25176919 187009549 374857175 820298214 518340987 529842652 157019234 655619951 815803041 941693390 926004570 969863624 579254858 675501821 928583924 991073418 691620637 925274792 877366644 912565143 938014157 955952508 656967217 748441973 370612580 459613120 320096592 333952308 858641457 921109963 987247421 987379874 634200767 671331427 292185037 992836445 33823669 363225031 728995528 934325581 243824509 814183362 522993097 859952281 197482757 527503443 756527278 881651039 717843038 838394353 203684903 316414282 538743513 610800845 945586018 997903912 890960056 905634492 347390781 668889714 666072963 788779352 541420843 624087545 178992236 990818546 891773260 935705782 353856619 887980535 849331031 901079395 259749913 394359793 526578593 606024547 996434179 996536041 984861036 995711480 134226986 693081309 556121950 999080856 234416144 985654896 579177442 725919276 852732592 870660018 150671415 271712328 466473068 891611102 933259388 933934468 271761242 875303282 13839876 788680825 765828978 826747036 140501920 417576392 904803367 908985893 396354775 510416301 635183288 833318949 564688561 971307271 621849170 988784427 273633524 521728190 774518931 962366694 922863785 986059526 436895474 946062765 158592925 577704736 770987294 988049466 148539668 190676541 920538817 926399413 773821158 859518975 809376445 882678396 605541645 728574370 423515664 556640285 115015951 832693429 863552177 989164209 549453489 912299462 327601292 864770884 339524739 917381349 423609201 753837604 345385646 499870807 727856264 932038600 67688859 558902878 367388818 763091585 278817976 850888450 457712169 706152243 25840406 294858675 399628463 855916660 424292574 538045641 3005689 956373058 145701602 343535828 647791072 822449815 234855323 800852850 85730422 553499132 768543843 843199203 139661130 405062410 163761107 695825290 582103717 696603668 405081837 622787023 239122044 669147017 89415605 723869871 254083947 602837007 654864929 811317357 137032408 495361895 897320908 925719476 843722689 946096451 297982580 706205631 15233366 709692536 715088819 721847649 787664224 842744777 319705714 952190002 198220890 960696796 913665624 975050028 939783146 962322280 306459940 896780708 257805372 630418924 506729478 839605592 870812554 897459624 468525304 958460114 184139305 846025405 103783418 800885277 940192873 974987774 136448299 836044120 362583214 980665718 966276505 968061860 829691582 954153623 299613973 388756158 249119241 252455208 607027008 660913191 950571037 952682640 50306891 595032890 386499220 724827036 856286215 949657573 842550290 853180025 238216937 365996546 674648428 984347804 714104401 925562639 13515455 907330748 54959243 78878386 926921362 965250535 522716017 562467872 605527074 723813611 728350144 946796535 391991324 603085648 866100089 902024843 759307185 897315733 197731 940241942 400260378 453454806 844857625 946954859 434694867 919902835 730900275 876162204 478830086 496834351 431254897 443160129 276083261 775021784 159428852 344926769 90758149 642729784 460320372 568581117 265218446 409906374 847645339 894613322 840844963 937386132 259831405 691639518 807276451 958587289 870234691 879055868 214533177 836175808 709481982 962906683 532275322 637197521 8041779 386380889 591438673 759046152 688438927 858921904 91811085 286651957 60554452 458451822 83162109 123081603 897307406 979818372 710814200 739941950 72513472 278271106 454018469 952170238 777006487 919599354 682388073 893332970 246744088 486747214 780653207 962571928 221110902 411695517 414085170 521656974 603503537 844518196 659245699 893523140 667421025 884401957 107516997 654554063 389739656 632240363 137484563 854836883 357077260 777838120 98039071 173998465 414398392 655387917 442568551 667015531 363941555 552633000 767554743 976643871 631356325 701213463 508015840 621893196 340713845 635768768 282054583 644439476 862225680 986930538 947354753 971717896 370850528 664644675 51482917 843876232 158656980 535190653 161122295 284655587 479839352 726503283 295594648 887663494 747688653 802975488 288587341 989886622 130487377 927178529 87835846 458715763 486477935 773795673 393397534 958273805 132182765 519405138 925392786 983563922 370141973 887580503 607155283 927431725 292374600 476597204 192142110 878328925 78430987 557789263 143022072 276656226 963288462 997028715 19693489 728940472 739366678 978477953 494207778 725670716 407911036 447579009 535658662 734843913 123821264 162838189 255965621 875552753 546581728 838622118 928054102 975082870 510181304 698926150 534001213 689059555 73809371 729516012 53508406 294051472 5726849 860360247 397497798 514681724 934034243 964606334 101992882 548529432 721649309 883563801 246937598 973078315 205418626 679392083 173487274 453059999 32137919 161443247 367605101 863800722 151734685 926443846 692197736 811010152 232936395 543196811 218557001 991579305 340433371 768394337 572603221 703189039 856421559 881842987 900959745 962998185 487630606 658778214 994821382 996512504 316080785 786040571 475992838 842474489 486009179 882483400 988941513 992760278 251612815 669980267 756689679 837376127 574263769 708399113 300994243 478305603 54256415 568542297 716736268 980472054 251529815 314404860 44662651 915198405 680861466 958273885 610311365 981230886 990075405 998540253 285955101 342076435 276462039 890583978 297243515 396006269 862381791 936235645 930286639 988331247 514194433 658546083 638323815 717133176 155504687 181070198 330376149 826895739 429074733 876526570 505091790 770491373 505931443 892593902 830892644 954444161 864259206 968085398 16673926 407611433 464964890 874841792 643840111 697717815 53776686 954613268 187436801 696602058 825470720 988485059 756900797 939018344 499510147 725096507 164197032 944011488 965206264 998160260 692092146 973439947 109562541 161678110 957745405 960825693 432863749 621173346 147269712 281974242 992670328 995762455 663057961 909538534 450186282 542234539 154252865 259576594 767967579 968228474 136927951 790051890 805101018 859430782 296127937 594234781 375376121 659907633 334404645 576404009 258380242 289488919 524717944 564177080 143927158 188739783 370442554 442945290 406696883 914466887 698659171 830250257 180725393 654330722 561921845 666127939 735534980 738077004 755010773 846619010 927249580 979345015 773924599 819755022 763266352 993860474 391181903 670235447 687139404 814077465 695151316 784516365 600191470 976745178 359921168 374508696 13685295 175217204 307753053 762720770 850451672 950085222 171981987 222723502 419984865 903140444 180596071 546449866 940847407 990374645 645756097 928781324 167574760 529887799 786872092 823202868 646235757 998735779 825195738 952167241 898156220 924962017 457370102 879542328 672681398 974806942 203640500 769095892 187999133 564353387 579142831 931692132 186802837 665357272 585028451 952357696 979502720 994841640 384627018 964823362 910361427 984496256 274297291 778655113 102097406 121263132 874090109 937871897 898524094 932639178 829075082 883018316 556151914 727385580 501843235 858550408 221005297 385542347 681650686 913911231 148145593 257301250 233061143 999180177 275338450 351206233 331990569 505604392 938452729 985665351 198169551 623348093 608102363 750709488 118060186 306905153 754275659 803655067 133797852 268140279 969291952 994506902 770783338 790914726 238820476 897796501 374087209 748159932 904109968 924861641 551618140 741070612 274616339 753849879 136129896 559041117 595353993 945684646 890763795 930889861 817905098 968394907 657894604 804172675 590909605 635738869 739835354 901886424 792372115 822927296 558419739 825391257 985084655 990708769 817299371 981436446 833575123 969752567 236586004 654307315 130605803 421418755 392994168 511247711 947041724 975791483 381977140 392486345 69353560 142283987 217896220 766455779 546204252 598930553 693640188 844547285 144536579 211515560 517439459 948471364 824473411 982957091 358793668 377996721 891839157 947138715 634652744 987471540 794747166 891405073 682375951 778564268 287621379 660937480 156827456 619767973 443175718 550817960 492832641 743248013 396066341 675309391 671695605 722197981 532595381 549356231 686400357 794720306 646766106 999078576 817047178 959902259 233500005 263694627 393713383 701339729 197548617 795058358 647584802 928096156 193044158 493973968 481079644 732717725 616224926 852218749 419048251 926834439 739550186 962416549 248672290 731837762 75329844 567498145 470989827 948109125 514189028 705463058 137570548 283157257 31595732 777094153 736448129 744004575 227825097 255614339 408912209 798414188 518327178 888439608 234483064 353863866 115585275 433464359 100632653 550352971 867517238 978619376 455876567 690143033 425852971 735093421 859162345 934612459 995396885 995799675 458573725 560277520 103603394 474508583 70366778 826924369 540235288 814469720 733201570 988953845 649615519 857225421 850594357 967574218 845614883 955177233 140503501 852058099 873639264 948046129 965151059 988845703 189568594 679963021 656961740 879497285 275934631 387129913 665674521 835326302 95707649 604678598 251414125 351972401 536786641 841882423 522838882 897105303 670466759 708640285 42899531 159215941 51754033 390032012 294243386 782336546 722998323 758231772 294688828 411391016 46813546 213177795 260194313 770487788 32759508 503882888 18171393 431384787 704474399 762307628 382936332 641387196 15332084 737701909 1366974 669106697 887775689 925695446 386682889 885721221 168841364 684374680 585482067 632737753 631968394 680708230 973956652 986488067 294842131 758767920 940739622 973852322 464142764 647979934 447075695 455070165 922606248 974552500 532387726 658047145 519148826 832172829 246927904 249904015 580330763 601189424 42619232 298228776 3485981 814369103 303677214 832840315 600008838 963228201 776725527 852964874 319362691 562919300 740710527 798251871 701486147 737399880 319199979 726499627 23022221 62981780 479156106 925769297 922810846 931578715 313096945 399605909 16773392 201145475 191235666 734069291 546882593 790718501 61408602 767254726 359248752 941153045 25851412 516305725 736378481 767648012 614931780 725536479 988701308 998207534 750900893 943992054 674022319 704137785 550065107 715997467 45337833 434643887 301601218 694472802 855476946 877958853 261155477 767358402 287432059 582163050 855163862 976355793 966221105 977952392 407106249 562958741 906239067 983963383 53710228 171156091 364881178 946512174 93404612 580879136 835363012 944345626 180678903 367080467 750702571 950915698 967192709 987331399 97737444 740511262 473845401 855849377 791746787 874325298 145238200 649106437 583689786 619252729 994964690 997128283 649780172 998397415 375855677 452979385 798435639 946068127 310677923 951918414 790829526 880070561 173084469 664917295 422099497 503873637 472608080 983535477 835904735 913632409 704179906 964671772 465252212 556721211 634056425 807310162 540098586 696692677 271889002 763510032 938913157 952113060 711855256 980621416 778132863 881224055 246951509 487122473 379726642 406213652 903416314 910215407 636809776 952959738 761713575 971015036 37975256 525796637 917834327 982746225 202837555 584745953 597428583 847069771 392176255 988623617 515592303 749587225 80769406 627858067 707161809 962505494 968202620 997368192 185832804 654677357 357947110 519412852 297980254 776324580 325586626 397435470 429031085 989091953 239648993 411321147 89518346 440248053 635299520 981271316 76673942 802541104 181819572 689483162 942503505 944537501 8672542 276958665 608595596 762363562 24053393 236151873 586954175 612187525 953163220 979143028 457444786 596894719 433220639 541899234 459193304 940391875 211170114 408433675 865053546 953390343 174646824 188428113 770323911 791154824 193385245 954992419 68216577 730463400 982848276 990435530 649101833 751891008 432561895 461035062 218439438 482049160 310378346 800550360 861883320 991289018 83873935 708203725 334334789 613276977 853943681 965819525 912224000 949431590 838602117 987260374 577137244 956307985 231670494 761471717 593054979 692768705 511087013 943914824 514067553 864038860 24510835 204022433 248382252 840227006 472765870 952416923 481151187 891106985 639896202 931657346 908805804 953043051 943863193 950599122 97005761 520605176 631958465 940083017 311206716 985510008 577852781 782743801 78275605 172953820 363676470 981180105 431541052 979592218 228234650 430677662 349124075 667056240 508524280 674691310 638255422 661479489 670534842 704461631 605630795 868870911 552256076 941776165 772608976 905741405 253639323 549056939 478497189 790406871 908252016 983390923 309956631 668300096 508140348 722771006 391550419 794915877 118789619 801645626 842188259 963306901 255702746 536228632 354927851 442234984 682084511 702529955 802402196 837576507 268738025 387401869 251550154 894241749 514520365 652792823 438719822 847717320 303255739 788610013 840823800 974791829 246941703 349069572 396204923 439306900 464026875 794427384 331767004 456244422 156256762 185681109 438821698 873865959 776183154 777041799 648722075 930452513 584110980 901596628 238212881 625760508 260750940 896036095 608134891 939086917 349972840 578534466 761135120 826250894 59811293 912684029 132351288 158814588 986057084 993428542 79098975 831504211 439848733 728065876 153179997 881005104 158378072 636900776 436573675 713571877 72741888 422950071 678794047 999646457 262280445 634506184 689379253 886348388 932485654 959521040 883754472 928445280 705512591 928594873 795613259 810438100 651717938 694748398 265410609 852017994 282075797 489014862 397945891 869640501 855769831 937054667 947627295 982021803 50988454 974270485 429303221 848889717 210365534 981182808 55593918 879724995 513039144 660705216 234115166 480454892 439461144 791672575 78478837 951584184 713853283 907638089 866558480 923671792 224206231 686554048 652254250 699846007 513002670 856352010 146765158 870029399 353461543 666470222 707157795 902117658 371195488 578370883 991985855 994786203 858358501 887968810 387927910 637961053 122766894 539321675 262261467 895412022 496575671 931840208 158095372 576584411 568114868 630982366 153573369 527476289 413518332 898199395 590475309 721850982 429760051 648267848 775726351 998066193 26783592 627950149 97064299 422496656 855104285 930350287 399134575 430519018 27689156 749716387 190899296 771098463 865364614 948058690 87861073 400739015 58644302 816829576 447144395 883017673 416613752 807930691 339180637 734251554 751173657 803959911 135537344 863275037 586559640 731265667 434537833 849742954 95898930 966367585 743447618 762729215 960576568 977571980 872886775 935653983 688039822 964133169 56940893 514878679 203310817 564990816 981327473 991239798 433742593 768170975 847837638 880067810 697840452 909001379 455361302 520136265 301835471 709695484 348735856 388606544 126098964 777301475 227649614 885466667 523861803 823098261 264248406 989317945 670768921 908546183 977217379 986668501 758183277 930539442 134557645 961045268 35343028 645683077 461373598 876200384 939051844 987286558 282474758 564143588 955446054 987023389 956220007 990290455 793756822 974399682 980873444 996484473 66110700 108978256 323905672 807842752 960208566 993001362 748580159 793954834 591599252 719083421 54034758 946239256 708206907 884918677 54074659 447452665 686729476 804895111 538240723 956107303 715200969 790096881 752821121 992632000 79438565 860068998 477360027 612864736 664507459 807464348 710187185 800715122 997159749 999487419 679456759 905518711 673374871 998133180 727444223 976431765 772129726 991855264 951418885 967429675 368557130 881959017 883901583 946869841 894897414 975909200 758421983 788251278 842647896 915413931 127835216 147358898 337588735 653386281 246550223 678423124 187897556 830990170 252695413 958206749 984366659 992010140 947550953 958963332 248525822 294720125 175571519 666216266 392167772 503579543 913308867 992161734 919097385 959661298 541792515 795665422 296624108 968865671 259742064 952081827 510882896 617614199 638247791 741488787 727766138 761966685 877256927 958616426 673334322 921575226 814211668 929520338 782161261 989141816 64805787 109439487 481709813 859955937 625745687 714674516 880078314 922521806 180334407 671134379 539121884 763390621 698970657 767406703 974359760 994603818 266500143 716656193 302756663 394431660 877112139 886903622 647993427 765440017 156518688 464662618 718227116 751597935 783038952 847089508 6105466 494591017 200217437 814390009 116157323 314174661 779712162 810166516 261210624 721943125 58791142 177570095 758746364 944621151 726829682 740598964 318145957 560538576 279446364 900368032 493635595 657524486 210890567 639929003 116246927 151002450 58716031 544849081 686560585 906153882 682337029 974609502 760919156 898768376 358852019 940064468 102619193 209971995 34255965 508442924 794653506 803315053 78541339 541152214 559234297 573192561 190205876 543747999 303483559 879796195 185668636 551088041 457870475 527951046 487093029 722156946 952957548 979637679 288708210 947378769 906801561 929699376 474241126 491048684 61346384 600961411 475541442 534295906 533895489 947596985 771675598 839922947 211175556 415054883 929983860 977940558 830215312 843048649 128137800 652988328 958221836 976620459 910201959 958165475 916754725 983605112 477186373 529512692 289420506 411297458 73230591 239713918 220932303 579624455 383728482 453466535 795231059 900705114 599739975 687164096 496621048 789173246 718648908 869768991 51789975 625314230 525908045 667952332 156827609 929066038 609688147 686251102 290022850 792608440 424983673 824681261 64774691 69000462 293763678 728159449 904305465 926895709 767755299 993617858 115601433 805137775 308541478 398892763 682179568 975339438 552625464 930941856 663478255 738739177 747515753 830206263 765388184 941358832 145896031 315158762 228631696 321904651 992203561 998487648 210054343 696761939 358558549 639136654 69851150 215184360 918615609 924351109 780209396 901215913 493670549 699808796 502739683 533738488 751790401 761438279 292056182 708681402 993819306 999040564 958440617 974197107 388120681 790925736 990007131 994431759 631445738 662391464 921794989 958728707 348770290 519873415 171078784 940642489 142787876 514449702 982558657 986430097 299690612 906619059 985747136 990522729 565039828 854099668 138829391 263390151 806950451 938121315 571706475 835225443 52027164 930771252 920825056 953472895 81173236 738929451 4142633 766536426 439557078 771373686 370796996 861642413 18424790 695013339 902901794 920880597 179423224 508677495 105843052 211056836 277296181 581260452 628453700 647064934 750970716 842642662 241667056 831837005 740835159 761235039 944579685 965988377 331014099 397041291 408483125 855120455 635260398 700470385 279132153 491464126 773005992 908639491 837424267 883221219 1923889 443532940 797048993 942710343 107877750 691935391 169389030 205564529 545445930 665516988 948185227 977946988 841705533 929574491 152681839 204963006 473375639 993329225 454129853 973570058 363877424 397634857 383948828 764305829 658425259 786901003 762954887 787014903 795302346 992553452 612168004 778792796 382215222 676466579 819435213 879502677 710881163 732697803 961407894 979957629 882640632 937754986 155606231 909920126 890843711 929421806 639557423 836355766 995844154 997519034 310620770 539725888 269610581 390595480 429067893 598829406 8762637 576358529 799805587 816924944 229219972 363137063 945322062 967045758 103615932 252644323 59131775 530631551 42614938 567514005 155588784 598837164 999808847 999973733 944336578 991414453 209258180 360973233 209864562 965436921 22921117 506311083 153482729 159500493 695700673 844893652 211783849 710779696 305156682 540821165 589084679 794122346 567148658 648590152 780339308 825882947 11952518 254210588 125224026 967461253 447035264 534018861 584143555 918713122 37930921 200857417 766934408 889260601 617270585 865682940 830099725 995130617 783285688 901657090 550462928 570495749 419372581 782379217 601199125 611086830 631185375 804101568 705856966 912963876 465244235 680740478 223915628 572947214 973710860 996092045 482039058 840208531 524119324 991364537 318246859 865465851 494986038 760792123 855627370 866813285 264796811 859459215 245098697 590477979 70868968 254490958 521878349 621197431 288116426 584594268 652939474 818746974 256646766 408657523 881324619 982255090 536520949 548474550 150557698 808579994 702122435 889294621 271149821 299720184 33224262 857748509 853201066 913697427 717132624 860641407 296303923 696556907 743653718 783799736 241852206 697054423 938653306 963141418 943854212 955751394 599905970 981530247 973130244 992332431 660762313 892608229 857927937 878540245 468858894 958452258 829595520 947866895 185700914 807375472 474059709 628167407 459577209 550033257 968700387 996191150 448504733 557044825 740986008 831910733 344973701 667352020 792558139 941896342 494985763 864533388 661763199 880601686 146949621 613130429 835863363 886152490 489285613 590823231 537825318 685305055 762583234 968108432 949369435 992115135 309755975 603118716 287086110 544061907 818172383 946704406 17207529 262583187 363459416 611479762 801977408 832948801 38284658 843053856 173919193 823891895 131558412 244004697 568052795 673495584 839703408 847754562 620163401 856143429 171754308 869761894 962850290 969459866 515246790 819067574 506320581 536827729 729711905 742496925 60333967 739284206 378826017 911309991 206768299 802538463 497656005 988103003 163406377 756029568 104541414 394558576 245797106 798320447 617905300 815815610 9093194 727999558 436743968 848921659 443202036 714115258 948633961 955192623 368130941 995820133 229716358 844396519 136357910 932920488 509200861 639957789 118455929 591158835 267727002 438973948 369016561 479319262 979772846 999332748 453053104 506222646 647825961 974772824 503491657 526393654 697935172 989689105 673441695 863005471 758940572 990442350 255064736 432148885 991222745 997672935 880779972 926423871 462431743 654434628 305496552 703350813 883720325 925019562 360383865 514590440 386925339 435789844 261692145 274924955 159763673 537293999 834441090 896229714 284346738 791908555 535218044 700192353 777547751 891007069 342314159 667914837 686876799 721800926 602043839 695598473 619869382 904918897 593487616 780736519 306472365 529927067 10133531 536760207 431414326 449657918 972320987 974861110 942150855 987898661 388310824 763077457 695243547 752564167 708840940 992922115 250001393 376222062 230728083 465600940 512983659 948244421 438322012 457143402 976618514 995050157 969288444 986335990 617069503 654828464 734573001 906011356 277418973 745744238 143423419 182793925 813268801 997184276 985712984 989105797 851997327 867798203 69217266 409946116 821541887 828063254 42761640 834491310 571635043 651169338 210170801 938165781 558294738 845399605 650378375 781189668 616704966 929141131 373345376 649485160 186215220 657894321 921638697 992857487 865523641 903671582 985886117 988230376 310050275 813474991 3207276 858386067 331836657 820442689 861715416 964517628 498875124 686046391 978793961 997440776 432409673 551028147 595555500 628140227 175491184 424882754 418312653 434807822 37084656 961651703 164794841 865304041 888714448 988346858 472065756 886674807 156749009 898585710 40572498 782720457 810560226 968402842 6149921 686677385 578004288 846639516 516624919 664467286 701965482 786114115 976820796 999803871 731191201 889154435 903371029 904333651 926451291 968528567 355467449 906081240 528390999 801850699 315042984 850285166 359399899 453807043 188460818 958667140 572909364 649667775 23122984 244918195 993465192 999543504 252656116 365513110 508086171 584157792 284269705 533363703 169914191 542511178 32513196 51733173 284591389 810585200 87629423 311184252 762149420 771372630 833225172 835585654 623769893 654419039 412935165 810326592 451372472 731712833 361791061 561576772 58675710 465157149 702973328 924155484 952230792 978258006 289025152 819367941 322834843 490484972 851311635 991889360 776778893 863427781 257254527 971086299 70439354 762130468 713256398 985612175 776168573 803258990 531619386 990569895 60840277 467126440 328513680 682352910 857485136 988129967 599171079 910546644 199352998 345809885 720638861 724344661 757147288 816949623 540463015 677966342 967618515 969925838 422877185 425681755 840524949 936987539 491926512 807933764 186412052 256167490 431620791 585641528 756719044 808007257 586018256 711038817 402060174 587925481 922552870 940224313 602437067 780350174 39547134 934016222 929879512 934820934 460247618 531965021 471331017 727952854 368533441 386206466 792590790 968024522 556889301 889181659 335117070 643609939 168584910 699413699 636440555 692396031 436944864 492405257 936911709 985704196 521028099 767523876 375161274 467639394 972955499 973504246 664728681 798603947 460591477 790712662 332825551 711684263 318208318 424958758 228202859 644981330 52413341 284284551 972408313 972979254 12181708 359267716 533550696 709141803 163685487 186266950 43532292 818402376 212486983 255867386 239270275 695513762 427389522 672535340 662772591 883342634 145501080 507045348 960143832 972676238 429975928 731143460 864679260 954666903 831834128 958333302 655852948 852006019 662647493 824945409 374916981 742343393 640056569 773330477 862291872 895059627 851288753 903223187 267066459 994530267 813782167 914432491 951999388 975631236 8737169 628896153 121039675 531297236 821867057 890133715 847587846 925084267 741038780 989317770 310141687 853863556 536468829 665117445 285310539 727878022 539482213 630417263 773189545 970678677 73704843 769247713 788401103 869165462 837203771 883237233 575353507 612278615 454110357 613876120 860731957 990624546 986512632 993443946 251999518 809431324 807828439 975560323 927795171 931418236 380587571 915370628 301344472 958840087 984457585 999083974 212276871 400551673 567149801 879475343 764788588 892095839 968304710 979780236 153184628 704103316 984516736 987025422 23291602 625472782 300366564 634850307 856268333 914961736 504015421 878989620 852772218 890578762 936431434 957975598 952543182 952865338 979769883 981407992 832160211 965402875 102779867 955505204 984206949 987257408 197876094 627191829 397279759 480170132 226295757 347501687 873138706 980841772 281562604 431348313 595446886 918056516 525294864 720747186 594858688 782993310 255582476 745325318 540363261 763440247 588671598 623389304 547078891 606123062 189418692 423481712 884365256 968743515 240702635 980557827 211895558 237833103 625159080 973279812 804912850 891711701 517287219 632031427 868837008 968411884 924317126 951339683 905364382 933741290 329994823 560814619 441146494 754648849 293081602 667346949 565392254 961711991 689681733 752399034 846168475 997499876 924964984 987425337 118519943 461277530 803096176 919026491 84619276 214706964 189626805 502129304 148900463 904543575 218718483 780968000 927196901 930639058 587210950 894356598 411878511 466654072 544220585 927075041 861955710 907039559 240371282 681316882 304505180 740658179 793292968 901024885 641717193 662769958 4180039 169501024 496409351 699934031 725990051 821533156 391740338 801597593 108958987 429951732 728998813 874826992 771466747 912471055 933769044 956218154 865916572 881609865 354200837 597024220 847358251 878024342 329386982 635584808 641330085 853888635 822479375 997943896 935128727 963756186 625622835 903294128 34940997 587937719 261905859 385327725 203697484 880722529 292796019 628088024 169470106 882205671 675146067 773857268 722576622 932299150 179621690 610707545 628621874 632653938 383365083 476395948 181758072 315403576 813063362 903814618 100050033 952419206 914703864 987663766 153981392 310078422 164804263 756583023 82708989 839499429 567967558 781132316 131065804 463734306 673452199 921875214 875439678 999633178 999936160 999944560 144416268 712173627 242269057 360498961 349409606 937266233 223350244 818398749 683984980 887757540 647282012 752139434 642600577 888021623 457853777 639959051 391123979 851653622 565033824 629962631 763621960 994844152 978372432 997924795 294750069 706106642 572362634 587852594 382452942 777105750 502932527 712001995 303902073 893004110 631894991 757330621 163454916 786026700 293398084 858039192 807592543 966912911 762592069 941376213 215713631 422733225 34342345 854579100 738642038 865419352 515390018 980426291 561494551 719070236 168006891 462647895 507556636 840068702 343345482 950412374 979498924 992526757 810287985 833323542 154636550 466172576 521801087 612064537 951657906 985864978 116996903 403906224 26704495 379873003 708971355 713065403 925780184 929685295 773028874 847719232 465430051 522873839 344728406 693401033 889969874 984777908 686674817 970679434 49254476 244784207 638269290 900077172 701392075 976208291 995485003 998474446 760935234 885430350 647714703 659697205 434395205 568352044 663466745 989437909 988052091 998069391 98692106 163298556 502331530 586032563 97968690 386995328 625321663 658110665 147622266 985985453 78233202 264005614 4190317 394915122 755174551 963162830 639204003 944017506 86304833 472561576 891624949 968686628 231316998 480354033 703172088 971369419 536650360 971859193 650322091 767763724 903597195 994959784 750925164 827931288 888323091 975340238 229304481 609698101 884289025 932197398 503541573 721414806 721563253 799198570 6452924 550958584 447773326 735233245 477828883 875827843 498468404 779558117 349583564 957871676 436943152 847993649 348453193 612763818 698520110 958496679 801261340 891671031 952512873 973744594 653148430 912419921 926617927 961160092 396718107 608360165 407290377 885697215 249459622 263125334 60048296 477329447 13150990 28195730 828424276 944477863 331426864 352725655 900152054 963288232 820924538 840001833 927963627 966997549 630260565 692684344 903934113 977309051 628953511 878011215 397362190 474113256 955505622 969727176 698111374 857253872 189599837 473213174 169430493 653162022 228073496 407433052 668421279 683518681 490251499 552200950 636823977 957187415 746044700 893620912 256867947 914890310 193456662 942871510 949198023 952334342 826049512 829255296 921698680 921826727 381280375 688035064 31665510 216710641 489018084 880054672 533070298 920283631 139452580 745002760 119294225 282756838 900166740 951637874 40729806 89371157 590980380 727857345 994440328 997925893 888137789 932048799 948201780 984788010 453491065 582976879 128468438 255564094 947109283 967151253 888651115 965020052 816126958 895945322 164147527 335563057 538670341 747529725 44910625 80697701 397560219 971275256 179813264 266255980 418015659 683574934 12782136 161244099 100279486 822214018 83379707 663344197 680199969 920746112 293024626 382981411 246345382 958280271 79720603 468115232 343881840 826164924 119808004 270644262 488645185 663827457 304235583 936631282 770573910 978647379 234042712 491452245 739244365 749002515 684619900 994001691 155373606 484035131 804807664 891087600 399322232 670804963 649838353 773596363 220647112 514082718 765104823 836761380 897504932 927414888 125285134 631908240 72056886 508977615 101583185 148380489 353720749 362335614 809846624 904754063 840400479 902992759 917345126 931409011 172338214 244038847 308699202 369358054 46553196 132723526 756200681 872828270 493569468 637504239 182062328 428223043 317305575 885119200 495924555 544714072 44510044 137991340 694998073 867949226 195558916 837449566 909304600 941125164 952724700 969820239 718841813 839155978 367045874 393339051 286590452 348483087 415671207 633646107 474878957 861431130 787655003 905789854 940609839 993723791 855942418 929565682 852290479 925764925 555246751 873418014 105184765 662802713 178454328 548893776 708923408 966018931 153347806 613230029 617919724 754374779 795758070 966108891 242452425 383472985 234007821 310205655 993329052 998198598 197426283 582179691 341261253 811239610 752981500 864269767 362501899 597424337 443088945 808733188 869085595 985221012 120398240 861197582 393716877 619357740 232051245 747353412 876354204 959658639 563118371 932548088 851685953 855820694 380855548 693928722 936336797 964406821 318715074 998656776 806846968 919272990 601365634 653310478 880887209 956816730 288459121 345127610 754786882 954353222 413914533 653551935 262302900 550463115 850809918 980472446 423093241 907347973 286965446 740330307 350147959 614134701 67276183 452093291 772019063 850856085 546883554 673902929 260048125 764437954 440940234 756164024 141216153 211039875 447399256 722100770 236593512 796642621 410348146 907133165 391173639 488907714 677383111 847609943 800953589 837498217 274459235 807577719 633026550 879027452 262239175 751881487 895409384 904177659 576665446 988722597 793785291 858479214 940503434 940681417 412537306 493237183 97539066 538441857 448791022 729970545 164669850 174880369 766092115 783222439 119513486 578620128 656201789 812563246 415220170 608136826 111133494 191221863 265261840 635155812 419969334 518036099 191513495 810423560 656422162 722299738 816845709 865159333 300588948 822435617 276543828 680889161 75803401 630811399 113676067 650436375 216408212 830936308 732417766 889268254 148993658 465562031 117565815 533898609 912130771 991251433 771153789 889396700 544304295 895886225 610147590 984025772 251708048 688136400 212730481 844754995 892482100 975750900 703920603 815387957 771053976 830800318 858240588 876954898 504492184 817306857 602106622 653400771 903750864 933611637 837023298 917279353 61364075 544118787 145318629 940062794 995872192 999878661 235672351 700257194 277414234 866321521 494077251 571572794 32748056 322995858 1711244 884413921 887432561 998890572 824172408 850163264 245962354 353251631 826950849 909857615 469838864 476715570 115873516 229029792 823584333 940745766 526355065 997017656 103910002 893461050 10132983 954290112 901924143 909333431 341384483 979681070 683227431 755355934 551264624 695653075 134628511 264643075 411318094 419391743 432789952 572876991 95431778 251878266 315971980 497177838 934166400 948824098 462522542 852833893 288703838 591834384 831015393 973202773 416797449 762816423 168856318 282289048 657595985 904639528 300897728 331075714 989128046 997115862 353473075 521538292 938639041 992972198 309595097 747426051 382574534 460121892 39339708 919694824 810538210 955600948 574999897 890574638 750815933 982054503 488587755 814597699 40068293 981510029 576384070 705931283 975750300 986214324 78232566 430654477 376497276 833719498 865398266 898240262 566133996 757186461 886456413 975823588 812343374 958772026 505008271 814866639 327171425 414223025 949035517 999533731 255434318 921888437 38884814 80277399 984557378 991408592 278767300 817265418 248863155 293326327 361592614 365615156 909601593 981903101 59950620 706573264 490544460 987903014 197075648 404486195 481137722 666432052 608396167 803868527 492066708 945713612 653286150 756854293 764437357 931366346 677087455 837751510 915950149 924399492 729083979 984426620 535690349 844074473 222219304 288238375 618900680 757325474 44519760 437404714 101853808 611078394 423922809 859654248 301402852 964513005 38378023 555410790 516797190 953538187 766039722 886016124 62802950 468057902 275869260 953757781 464673110 648421347 617373367 626012331 828965473 923437325 994947429 996843201 901321851 975677688 973373829 976266879 203150855 557380088 728885135 906970189 307698092 515788865 932288272 989319032 538820892 559818035 889267849 995146179 336015880 455175522 643564363 923377675 632662533 886909378 460390727 557065183 900261651 973412646 58785910 428820810 2464910 738439841 919501404 991312341 819794111 827155761 122889986 855105559 583989206 707860450 764565196 813643433 162351216 431412363 19392026 733491538 617201985 943961867 751941807 925255435 398286559 922785725 706378050 766190212 747686503 856642520 990596431 994687304 256875931 888308311 531700234 728729585 959792210 978389454 294300195 423964265 240953171 994438153 140251266 574716894 755193394 787842126 418225816 782698300 529177068 535062544 15836199 94307619 743388824 790853319 785706131 897310124 895703115 910556366 707742991 925891652 745945571 949970517 431611541 526499567 180678139 783029876 872903794 882150437 339662232 663186612 919024308 951902686 943304902 968727925 654468067 806404116 820242007 830099641 215422601 902055707 962237658 964769132 68976883 463061707 457926598 629877414 10763022 11031322 963017208 986973488 637526595 916254551 950556871 958038544 547668082 945384861 48125038 896445898 739615326 993376975 908558869 910044436 606113938 615810949 25532542 879877040 32139439 203031414 437132832 685757119 622099254 659707055 785096611 818219498 674442093 848045997 590263848 809925583 515478082 973781261 611872741 811038539 289964815 317377867 487014131 526466128 527695461 599567684 71086724 992862399 154260939 714465014 622329764 861554311 152159788 554082297 70459359 869898076 329042250 757733550 48181867 631527688 177007887 859818202 676634423 712133728 797725802 821603882 685966019 882055928 431678401 457240709 902273222 965082514 888698085 998340658 961552650 979645260 33765323 900872755 729589069 882793161 965450606 970722770 271788084 677212049 228610700 364561203 909652350 928264984 285788016 672248680 362627035 686187618 156316060 194227306 7651367 103951655 516361202 865959959 796479782 859188275 485006182 635764422 574558818 854550549 113014884 724952339 31796921 585767061 526465352 665675597 634484950 799131131 342991870 345196554 336655874 681509565 760758092 820753020 573828309 939717814 174142118 214063912 180242594 720055214 142396526 652982768 645848380 693387049 35758128 120894929 691346517 801138254 386809573 779628913 529365727 733377452 70686248 659182660 232194712 716021365 968267433 989083487 974775930 996582676 173187970 339053479 639698093 818218656 306171931 994167212 522292540 974388628 148477182 582526215 431619090 890208468 55459668 379207185 605366870 733523160 622575480 912306049 91951383 289281950 130063432 787791713 744600698 921840132 941270764 941543294 484229260 899351966 131517731 530734806 692969562 765825517 181601565 888007935 97722454 518992024 748211968 982422969 972365783 976960961 396262115 730179936 666565205 667233736 234492849 428867331 584889339 705693442 63213590 404309058 463048225 945685583 561054521 921990700 754668747 896896353 557397093 977426009 905970576 956008752 552670940 753689935 174786817 184027013 604220644 680187088 934905769 998854461 469778562 571312005 263979066 516982412 521794938 584215633 47830521 759250354 840302682 856821167 913783447 943333296 422146622 785651321 557581298 842348781 882973442 990621098 601423924 958620132 251824632 753485233 431548937 662587921 854682968 856373630 243791052 454170502 40426000 118802018 761548493 926112928 351668831 363083653 14279976 862429522 518604360 627315992 306170638 785171072 292023338 902525499 751994882 951498394 429896894 633677600 943134494 976282956 940142865 970237745 26743493 641500500 115251242 428341818 256842436 343745555 446337887 654349815 257493585 475179401 795881305 886799105 31022391 719605913 335811409 855682745 791250493 902603056 158916746 532712084 163848993 586797031 520901863 807464892 63026135 297929368 599448531 827573240 161307364 894063424 451382919 731694636 772978732 895708343 426558697 893099295 780912736 985803542 793795734 875087141 141011025 462525878 572118411 745378337 496252933 969142428 346149031 942077041 303141439 746320907 703661847 982202687 884937053 976955628 667091331 967065196 462804454 785036465 754793263 781717352 90321702 999847334 222345459 882794706 684934247 821839653 585098666 965667322 724958880 765613603 671007991 760071353 936166086 957770969 442949239 887334243 587684859 803019793 845750511 944648677 214189300 658457345 913641360 938008516 622790973 863887934 249720746 655268807 348012629 959867729 915602453 921162745 644772566 994122551 573229911 773768416 73286663 182815948 463004155 765961155 611992491 806754840 548085488 831221479 946674410 980323899 905778592 979353936 921380514 980429425 825405891 926709552 48209645 608945787 661866367 862494382 142863357 827069311 768765122 897559588 3311002 939344878 703588630 990136145 21353402 220997356 341630201 533457202 59068074 141444871 708091290 746131932 842959744 947667965 731443220 773192354 523498056 793299257 97157968 996725578 802151798 851866529 833964332 974089276 945585590 969099594 948942766 993592071 282895670 663218705 753029310 813164256 669922711 677812053 610855310 624625387 556080572 763206141 371007978 669122098 696411247 965502162 521291846 984842686 399962049 992269468 370871705 500214508 155405324 591026132 956443113 986929106 67661299 663395033 961342970 985919250 521540972 836244077 755157278 901186825 321915096 333373500 544513904 864606106 962708123 974825732 565212909 922936335 235301063 986539331 553997303 693295676 508965173 981975403 672410515 790399783 629344569 636988232 701862492 790680125 569926499 683885626 388442870 664745316 28684744 247695046 847537505 903950910 459183332 520672478 230075651 931072204 989119747 993001642 85628892 995152413 588217081 708994313 940358526 964741356 682917844 859703858 213155190 678894158 298860486 762595761 815512825 875654021 648959794 860841933 196409166 653951852 111749444 167599413 42752016 751009178 940641204 982477010 42248968 214315827 927568732 950012655 814577559 988960594 715635337 921990204 161914688 795261000 694934677 889322109 213272247 677062601 897617617 920526197 475912675 872204467 293932041 935073176 436152921 912386787 854211457 941105176 834217853 839308060 924824733 946275105 476279128 696794276 969280194 999081020 638799761 962458920 807790057 830645320 185292143 551963591 609257475 823491408 43670425 237195885 206582202 348621354 351535106 501270043 771143228 774465809 999120656 999496498 638695105 687550895 577820949 887516687 388860833 892662283 444804561 473877114 121940175 382828783 252904264 377536384 143486334 153890467 148111449 335509966 831418695 950138547 224322473 452310480 162300209 793949677 490277581 552103698 880853677 935972256 754568486 817646579 748260281 859771719 864397343 985474380 877788072 908594232 398418122 406344742 628785218 674043421 611667944 916511251 334697353 712103764 590772105 884568289 168553772 847456045 22156005 737628792 831867114 941248133 522365849 734363832 114533454 598329740 550266483 847774287 842606677 936395031 666744036 816290927 961181656 992865870 56326422 93045234 324372942 706918691 815199019 908705707 299618423 656840327 57831235 613374744 337633883 623921672 611215713 977977297 719803380 722451160 847371589 930630780 358301167 707441461 839849745 925463657 186682384 605923329 28874385 578922127 627914866 937646534 40977178 774793461 410818579 727229066 279276152 607944222 561096771 997747192 525343445 768798271 458204279 566581962 703644818 801030495 556850568 788604084 857465055 938683079 298047544 856881675 516790243 979740484 889755048 955828098 649099238 965325200 588326664 829189020 924563895 939534765 996952631 999400978 572528422 655846456 957952699 980056991 497274642 918930130 959070640 970074595 678895126 830645832 393765945 890072382 391033935 480468898 586784867 673628344 616122432 925760072 682618992 948922109 876007398 900383407 272469273 873508740 961194104 993669674 125140290 867062745 438877977 973576823 587381203 620270677 514331251 540793787 496599497 766957700 882230300 960064105 782195366 898139669 505482905 956753266 142268736 402525973 21565623 969254177 363612101 615346259 344668446 632691486 163520267 522912048 237790192 662970596 471599987 991568783 89698921 568636356 811924763 958805312 159485145 908065078 297407911 990226022 272982893 911855433 949563571 969009561 436756636 698353227 830365422 983443213 994329659 999859424 709248657 768190299 811491321 930669570 270373521 818743624 172490733 579114342 778647797 972671456 896542911 983093442 551735396 908984425 222284243 297965796 357839005 766858191 760098469 765032585 873658017 906963953 771091796 878698375 754103948 985188962 566859871 737301341 721265075 976614041 954445731 999712436 553246846 654250608 508057147 794027030 19968984 360321209 408282616 672352079 539203725 542421638 533828108 762344189 348306847 928053430 293415022 574813252 121495497 483698165 907125145 985130258 683766968 994490870 838373206 906041585 959428858 975916543 246679089 379712507 335755872 421381475 220050263 577571739 855824279 866562750 631773541 902109337 19947665 225719037 354038298 973273865 103587622 940891142 643253174 862709282 138115925 752006184 355452054 985213663 283494433 907234639 255908020 370844553 335705684 666702414 949643130 958936656 108288020 616981792 704744053 745511171 346898098 816106615 170459824 939655428 269094409 578787881 904812889 989522952 777410859 801633048 872885882 950798334 679611166 755168658 889779521 937790544 184416873 640480372 360853680 516909464 238265725 953032059 376525229 572717879 311036549 530641184 929084981 986073926 27631100 536373212 511243868 676780262 788743474 997827042 71503277 789309991 649766059 789763709 419230528 652543067 994919930 995307980 817624377 891909886 322465538 887872470 627348881 894670526 87421965 733938655 911688336 999901151 701793292 986030582 215738851 585840891 171550019 545653553 382347806 393197167 445488984 749135438 991209413 994734840 384577749 756570817 399497611 501742237 576084059 752031684 815327231 886440367 330637952 411122502 968864522 973153730 403330600 693132625 774933589 861412940 548461651 997765510 774767444 933604652 694245710 697536205 60134641 638169588 602394518 875543520 573971322 853254400 322598904 441670254 322671325 939757109 71683850 850368745 331224783 598903043 583485485 846491125 514891566 844553238 859990622 895254955 432308301 513576784 667832993 822284874 935410329 966751045 434364436 488152689 270724717 765474776 714186820 820926367 83710397 536605997 269759413 734074083 421820051 894450015 390101029 953521282 428337512 813919279 451006332 682610184 429753201 473246328 633896466 634764946 400588410 523130891 353005021 908146729 210205930 214398363 43547340 979786590 29266101 637543938 571309878 938917119 891489458 919550796 443470330 742162343 92245583 189399524 433111737 558701439 584530271 960170047 642721828 648365691 449835948 815796784 630245938 671055303 889871047 947389285 420334267 742782826 415136366 610448754 715804908 730918144 555523020 641224758 223764056 445995421 653250881 664956020 849904288 986371674 536794699 772789892 283599549 413670952 183538713 794600544 517598409 904146779 340042750 377500848 757705727 849150024 939949399 946057744 588392277 889616991 344984768 725795852 647457721 836920941 588538656 609114749 396796049 799047827 278167136 470778067 669373218 757791480 651860036 878119436 744965078 926265964 829902970 999588690 798131652 807505389 961524134 983382995 220942582 352180840 817286161 957145281 232262839 977565896 225696144 795681507 412845253 804057398 615755914 720999875 306320016 454203894 560986310 710629161 361249662 618447093 842508597 846815443 99172234 847294277 539587334 672212221 352352163 828166667 504140306 521696549 395906696 594307158 408710787 899412212 629093919 838204664 799237369 940247411 215781566 835741986 657004109 769820226 27096186 195363194 912529288 978203851 665495733 777461828 861522627 878920030 409498826 972306515 925307816 930396309 639996787 687477901 270975303 542327117 797359581 993227014 831359610 845587832 62497085 405518341 700855672 776342669 887961605 960486222 401688728 482263062 773455697 822603715 73433536 695183598 490432662 974140292 806266936 858411592 420554958 617212380 841663858 973235857 128702551 852159752 14797891 489269264 861222331 924540794 297636579 452926526 316215699 439634877 168925643 726094135 203424410 859987206 145154313 280073127 583134004 903460967 813088091 980747976 58014921 258584165 641907066 965163459 858559766 914929819 213401489 512169689 951881722 958011813 558136837 734298488 668737461 831832589 646098530 891488695 828935599 834336840 912849680 991992731 971991219 978824002 976544926 992092842 223059782 281129012 467153717 585643331 86867163 626962381 83008774 485310950 514215893 644456313 671181775 859748355 767858106 776990879 483336958 551493691 738766516 882431892 63885002 563788448 325141749 702422040 967886953 975546441 171749326 735495756 417925018 534392360 246046518 958733490 128732227 251602906 910326426 987477611 893308410 930775005 90205442 574866408 450659616 590108642 611500305 897495612 921358247 993260846 203431059 549391132 270966296 496025918 352960237 977939100 499862920 753851860 674344903 923147039 275709586 613245618 207670535 534536617 815116777 869427691 981870098 986355623 196063280 767246354 698964025 852997522 6517739 789098007 978339037 980958159 440908500 556278499 379630106 845644053 954106705 968874559 238547532 395290108 777947469 922093942 651246261 963531736 616443968 895916961 995729170 995998973 457426700 565389991 511592468 589989896 636603994 770187761 626226423 711541035 422334417 770501321 3538625 624801709 820105522 834552919 642025853 687244944 902566250 914299182 984837808 989303318 647831204 722046391 148371172 451422442 394926299 605482591 509887600 898746516 731075425 898267171 612762677 889022275 520566423 634125046 638533721 773368582 854959126 939411323 225018341 765944967 9362031 65895170 911816657 995597826 184796791 749195295 114835564 565448633 566274150 591993477 776695378 782396733 188099452 438901931 324182396 581154699 29473572 366666746 381503462 782279824 533492981 986508572 796913807 829652321 355117838 362261323 354692718 763685663 911669826 925062135 240217514 994855997 212982936 508090465 221059261 955924636 129518146 588951690 693339418 815484887 585048509 851148457 695496350 826069713 865319231 934383166 405940225 600324418 600896579 948963953 442474670 793707579 274651334 789465391 696344017 767318349 905117185 913963195 72752390 825393054 491503778 799441177 784037656 833048621 554269060 585362328 929321128 940544997 251121923 477999075 383557443 782147889 666306404 697703223 21111524 902410065 913897370 921712957 557065723 606779167 488042430 968671223 410514926 423145480 538422909 660473485 552925546 841355553 417304596 956017668 222439256 969511985 385734528 660874747 796635811 828864584 547090639 819977958 340988208 717626175 670176255 711346054 57887882 457218298 445778695 468543819 36250779 332949381 760543714 882365621 1394295 465208539 846653374 954959863 195829027 532643307 516621273 836772926 24006386 751193247 829171732 896741907 221784404 860718068 505338010 631965665 245907633 349639996 657536487 770651091 574934217 727226540 253062532 901594052 809625433 899421759 635558275 713529102 157766740 981652034 794070999 910227077 815588580 960878189 193796807 297774372 991622625 995806110 316635497 568919130 542271162 909414525 331045302 883204930 279806257 356037451 195285075 862197865 538907666 908948588 38599661 957325814 380631726 830098410 836271980 937255106 28001908 153210708 920325698 988259084 908740161 991998147 887270958 985454197 592911109 903688779 842966383 847143925 401580834 803100232 967760474 980915918 729458532 859466612 143867521 314338080 577321371 992218944 946173587 967547700 501401060 668318816 592939071 843927726 472051881 861040847 339444263 865836817 442539419 733492958 949043892 961019392 262090173 529973759 351606003 550975409 385061092 647595557 200810437 329280336 53186767 818842709 657204141 781334820 972234403 998907737 151808630 696435187 974573131 992639997 439633697 884564376 422480844 867674450 622469621 801872314 293960412 979252723 665961802 868494773 559979991 669490815 571525719 663783481 689105962 992890306 717367787 735296804 397451136 511055513 859044854 906268923 88593317 267989107 917655416 987258159 180143638 582046724 896768450 976480131 900639528 985368066 228809689 853487272 572870807 939227962 617614819 655080751 464954448 709776612 113867996 499477754 79845809 908175697 395093571 719651799 27679565 158710619 457666403 708978431 476078691 709755296 476253277 553699744 255250567 557925182 359164821 987392517 72824775 435469588 590666115 639941920 682270406 708802427 362193198 747416545 496143999 964655709 19633404 851127596 294938821 359091594 856944515 871136074 277592446 640785938 468354778 493027092 233212798 325518443 290416987 487156500 711749945 878552151 670244010 912558771 837387602 855224384 964989358 972980614 528103221 960926578 951998980 988718218 691225501 926737319 192948735 802445927 861857361 949417303 217516654 754301001 242005279 503593793 511369016 539321792 783822282 946790459 81237289 694704406 231050553 403154274 459346526 695566502 57621927 155729028 985259323 992857034 239465274 731098938 535296898 756720377 704174863 726986380 66051676 978771416 353682718 586157423 751033006 930377400 757657408 770965410 713510284 868721085 908679376 995151878 392863279 408507259 487461996 665216157 274285647 591662259 434470341 896457263 412905396 806095937 705948616 791468482 957236307 973725971 631579773 974896167 469527409 528914442 576415114 799379606 488674132 646986302 283445292 894721674 382231606 521174468 681792445 888599454 369937111 907320092 430952858 569338878 196192247 430744273 249679702 990739319 140397680 756601682 68416771 767872056 971543509 980189594 728429591 773023924 631212592 963299286 419180365 673271703 203197988 801094701 508616680 658930877 767447744 916337230 619659524 744945121 127981323 385452318 31511816 924133453 884788946 937862095 92536502 151368620 120138099 581518699 367767766 481547861 443650278 671995066 458248193 909806773 698682301 858023432 582688780 920658009 902737346 947556932 104778915 946935787 357430460 528811651 984495630 992729533 302292396 899994480 996225156 999993407 809722915 956352026 951412924 997258852 207686872 778738346 856674637 971850069 583266666 856486237 445290672 660383466 94008274 259263457 217506485 621660594 87854237 335940670 112118048 869178884 945708017 976248639 644725047 843793178 234790998 936643391 399410619 691259743 11559637 933425412 758244159 766676742 545963573 683693608 559336285 994128290 774879351 857850590 801338907 899591178 362953175 981957088 399086476 950447263 651111668 833808581 286313569 523770458 454729553 884381492 561328345 709283391 919055999 972848186 702325797 833623076 557892700 704937621 129896919 474073750 535756251 915510149 412253859 996710910 763835168 935574915 561363509 811894813 279022554 358394258 108928826 863976108 825646137 947805369 657227373 856005941 434903016 466778211 68531095 567411900 623508471 978204319 409699532 946328999 438336596 654634368 915922266 984926663 994951706 998648137 294748826 967015101 675463726 868129020 175140316 214079190 454996398 596219448 942504487 996753509 787566113 942453317 409340549 644058339 320891071 464518504 372847557 834359126 806274182 972629805 918383551 967001807 215975942 800706459 186732922 237797770 281437166 397229287 558601679 572429424 780636729 954391394 455139063 937915741 158715473 722104958 177519518 582377670 45221602 309306925 756447870 797570197 866698081 990881260 214628473 296218767 640478873 759671272 972446311 989819939 945215043 996351758 773528595 978031895 472791711 841992479 301359348 772772691 484349729 643367353 809050574 995951427 316577409 655184860 801944105 913320577 839027602 856078205 453297606 522171759 991868254 995408268 93405948 967047055 619021567 812684966 567981966 620951638 167986342 913508797 386195400 688707549 231312938 322537579 635764674 664036699 231572300 285458266 617297819 769307061 814453915 932826011 9680980 287196946 436463459 983788371 309952670 798626678 499031912 579290870 809889635 993027585 19737842 147300216 120952038 391844185 856953070 938035609 20714237 565066767 355621883 431285243 23981369 453102725 468699545 624564363 115417168 786346165 677230879 687691564 776300154 982617972 380407875 750722647 583853703 809827876 678749933 728532363 725966751 869445281 549362225 946986244 485993506 946869846 86473258 208679272 406010767 699397781 424282426 824596036 829413986 989447186 474624544 537408796 594644889 903018047 266820292 937756827 955436145 986920149 30354449 114124078 829074669 974345922 660653430 922291605 506015730 608628748 511992759 681565806 422756156 657634214 753435958 864029734 604299207 723761178 194458229 322142187 769189413 839692322 963376773 984158329 46191943 880801880 519553927 985118010 7018475 169105450 943954614 969667637 399811564 635247684 536080255 763706618 664227966 724291115 331881992 640209718 874364180 882724039 2253211 580163996 971187397 977556401 754870129 961718064 771494694 903231489 97058424 926382737 62081097 947634726 482584376 876373583 609109123 796096527 357400254 699612809 214097479 245141072 595156959 683949761 524428593 788612477 490746992 518069389 192654114 820022109 278511984 331412313 471309121 706806040 858945500 906455926 604950340 817214060 719759239 932251361 225176750 990936299 35604165 407687978 52912974 389423654 542173972 550530724 518164079 633159986 301508961 927573427 461273613 580815962 801544165 847182955 310217317 772834519 496230010 548109175 503201161 994386277 25866737 500399173 403027692 613901184 671049458 926735131 365693578 475991107 100396725 726545402 969971902 977173244 959300686 970741867 907143707 950938161 941531432 996127375 711742693 976845410 178397514 508889049 987540327 991932372 926198356 975875324 299526744 997319865 126378588 739489506 725767285 963244849 815419295 867031698 341243937 493855090 140657598 898895566 497359770 812257258 222028589 935887650 301872237 393348821 1049600 319501219 785688954 919663080 909090607 972306191 11232354 300054680 358305864 733277281 140950816 912083205 610906729 795076535 996920812 998301952 976933724 989155950 502493155 712738249 395711056 772097989 993980747 994597253 848044846 901496798 232778499 785422916 422127240 905647419 230805364 675224625 44970816 633785377 520422687 769302211 966831286 977483681 241009598 741654466 644132963 709140439 535018714 622375762 502219408 970905955 596746247 645318092 943653740 969931222 762094621 778469348 317607840 978290280 759207251 797444630 46321833 592101518 539847191 802312259 562179006 887961566 871057437 989998804 42880985 588725255 505735791 877026532 189169140 984033744 180364654 894448096 429445099 962176520 872181752 911025081 924227115 996511817 340960822 742747541 693079015 842360712 156149730 485958421 391071809 536905893 295858840 929819372 556420361 884396188 744883108 818456649 420230540 594374894 720196863 791138470 93206304 749518211 669743423 809897661 874439415 902419466 627793541 658266856 347293911 886490725 523387759 554955195 187499119 192815096 227315312 715067309 616799455 850925073 392468730 403561602 802100783 840383977 817730740 987332183 384208860 961015994 879782506 951268366 410749876 872429469 742704087 911781868 689568110 775340943 84418644 656437077 860034124 916257859 629188041 738482252 579632663 800216123 703821564 808857013 157765829 357434053 825220127 941411262 221296143 237833974 287867340 642090453 351115878 866896005 297697723 935785793 625528878 815790785 106943996 444000436 479557436 597240318 113949234 889997997 10214507 842301693 753292948 827323156 268751384 679231488 92840289 346463034 743829209 904658389 326392164 742295829 985207316 988179104 390520184 662080842 582432029 696691870 447576133 639067196 514229051 919101238 97989315 808174020 598807381 790333325 368891232 786564374 108493394 271892228 277198026 423946762 228304561 489200195 994318464 996384272 909873796 963286707 800899519 959319737 489332304 564207386 552503394 954545436 925267463 984667132 680475451 977289160 106251037 395467979 126978108 427820061 867257097 899520816 715178221 924526819 495446692 561174334 670079290 956266273 218675954 396163890 203186075 538084690 93215754 408966413 842463881 930436868 335074042 872694526 712147773 723365223 850178841 924650145 984052627 995950906 860752650 994922301 781032343 878716408 57951337 530864525 669911421 966110526 191234966 836572210 268009765 361856211 662522663 860976279 254964591 534269259 789074881 811795165 22028070 287586827 308946566 400631792 650963841 684828392 999206342 999994850 933785336 975313251 534523146 615896904 720766599 779561591 292865944 810401514 286953171 678243048 560031380 608865338 207682092 946306754 871473769 922159520 306094476 525792055 535023748 550277064 669028343 926383155 271432241 763108395 788989792 946369182 724662265 796299793 415463740 545138169 631349486 758208415 537260244 561776348 914678297 947397123 434552529 973412975 199659894 230074615 829107060 912878416 46693231 989121127 290636038 556809463 238570565 562508126 707226759 727600306 775254972 886823203 68548753 729718385 843108129 919338365 447385619 676747873 155744969 581768407 63315155 383132888 92547657 887772574 892937015 907491175 890250915 917979173 883465706 902400028 113676162 948411924 166581940 561493449 859951650 919307630 915345873 990987302 243658189 290579850 957355874 981934726 136921344 890857124 496316104 937966449 961886204 987477594 127861945 406500058 990270516 996564211 308576044 735504806 156777705 377775823 315075431 850932613 114144704 307955180 46249375 722557351 522130608 867155468 500804074 943470779 203972312 613599230 764276153 988635139 399876286 969722040 202633837 365697889 497906614 525292403 653636945 678795844 918664791 921737138 957626320 988338767 972877368 985274199 269168998 904788659 171041258 474006732 564516156 917020926 117137960 883728473 621564662 686189899 281375896 516154891 138876442 747388480 637223786 857060515 265411607 342718199 297503306 439328100 969683536 999671517 547502216 783005705 398357380 823113721 670930560 711484769 709938456 839479297 290553693 709871067 645615776 710299215 54246865 395855115 898106912 944493925 978994396 994696134 820380716 852598165 480156781 613662982 30860526 976931992 858398528 869291785 780786342 804117645 419908383 446186221 249599460 255066128 832878291 977562759 31798568 551370146 285752165 965577344 610958150 612651636 500952364 554106706 500906964 653051162 413433423 831509097 965732320 980541051 384813366 623231091 483310290 656115437 821135959 872993882 48638191 777304236 217412969 638804129 870775421 970761582 524817623 767352581 336971274 528986943 166209526 415358924 609962768 992502539 15138154 969665802 858428731 984140703 796855593 814427594 915981538 969750815 498082578 534758728 896789307 939360211 379404617 556858447 202493747 506560117 653415721 858678047 295120596 824795178 191576897 333720657 376999265 606689966 130894936 157773202 937892713 995116515 870197350 917981890 317231684 513096494 525398759 962436751 804392239 813223604 706141176 777029936 247593085 274679447 374303692 867486276 294625517 479203933 678750356 836890086 112865788 557921145 480991980 817282306 201351357 852524612 166662356 985964947 314109823 898811751 708784831 792604177 766328936 835078108 520928917 830120052 763631550 823454626 206494770 679346367 366176601 516969437 384677272 481478777 693706405 864510726 400062925 550342645 213176529 315280031 893610288 917387427 68299934 721693524 908638898 953276386 217107352 511307922 503901549 933427778 15602548 473123203 836235230 951478974 888069182 891375833 655752661 688513587 238541248 648908824 475649055 909382286 259953327 492662342 339338961 345251727 949969792 961891661 461496357 818842006 405308271 501780214 287715083 378336729 665507006 876147596 842287188 933199012 138086808 545206356 85095029 155995802 451444771 457999629 924377117 943020911 417767757 873317983 32898410 313918214 125729337 396517419 756485313 770678000 586374947 935004715 741790279 923057360 119300178 702134729 110237267 123892580 92575478 796526158 867600004 951470728 626760625 885875669 337058342 584136843 252873310 723763914 113375830 253599682 156211368 755118352 800868244 810988472 325394315 387024710 939654742 953278815 456365062 761576203 601707646 665795141 204744800 510784838 994428672 996549635 339155674 668459686 482617182 878848448 960868840 976200060 459409728 993259172 944819091 965476499 838455566 980276716 282209697 838891850 866311186 999124009 688599945 730747606 352967805 847106119 741786579 981774702 584242541 866837405 37014054 608384420 688014119 870629303 955930858 992030306 879744716 970236578 160314979 531265236 898412656 916033020 357505559 424801585 709709620 833624963 959383766 960620863 696488969 833834797 94174074 938128772 417305250 516580292 87720308 696341464 83333086 580526201 107272341 410035848 678564784 946688386 933263253 953121133 333560996 343590579 502032847 801578517 959441123 987343289 78015333 89774656 772184110 845981803 378544917 557652886 943093155 958910921 36612687 992671517 65183130 72580789 184338407 820766595 498307705 564225238 168522481 882276390 422189137 675075112 176295438 358010421 236671842 237875688 133222300 984105695 600105210 630429227 654629644 997020705 675480438 954223157 840518052 938939890 794023837 816681531 339691250 677254395 916820961 954376879 747822431 794988783 339490480 945846594 970633307 975269824 79255771 280153560 207245774 540334784 167035998 502164630 311398740 653096056 100559659 196641826 827666091 838895027 14684564 681249588 588145277 699079623 360310375 492048221 55621199 697095143 135987487 639313510 289863729 801631430 551247275 616173771 895888288 935804623 873928880 912889182 470357464 877362169 634224111 926555947 456400346 961653368 743041697 802868018 346943695 737822920 197896728 925328057 32163058 70146931 260578194 868003922 714123651 854944938 431998389 486793400 813785344 856829519 291477092 418215548 316089032 937914381 555225085 867423022 746909228 924410930 519703651 987811803 881774415 940557733 468593339 538032502 894836733 935081762 541495407 903103581 952358276 976428022 126649556 286445190 63924506 643356494 347701948 375545667 152261651 700322458 546489722 889729161 821781022 899839916 439638592 792814080 85809875 789351144 388245772 560886336 982803064 990422639 800834590 843743976 145773293 330796868 576844081 647628712 408605654 671646399 438184228 577042147 967027615 986805735 855804280 949827264 615376378 758956410 263926976 941565056 628716100 875515357 411943774 456519715 844988670 880763683 585708601 845357795 579871619 619353063 687113389 915697607 537793850 761903647 55276166 598699759 253123583 407899206 928036570 951121409 907064198 968745541 843062276 992182390 97532923 965748077 966633821 970095768 21165926 933272167 806234977 986125038 708332981 906631691 862867543 923409491 57722726 526841073 869674463 892638922 267489415 976418773 303214771 725088712 665198735 957670905 892044948 956629200 607125150 985184840 351480544 619465819 995505723 996968742 751756263 847549793 857338998 972037804 398093997 743514346 506655327 609783042 892535325 917761189 375347731 408425621 56785912 67398391 442460382 983300735 670536354 802097712 395545429 740196233 464159059 623801668 234287199 948545106 142036677 216323548 477973451 614499359 499900634 850383817 985872394 988834742 822373538 973050923 723839330 816125996 985764730 990809832 803465160 956841979 736300637 969627805 605448453 726406824 3543777 228368328 710132021 761843194 642646690 860015050 275461368 911576797 519803529 934128479 650468589 681655767 200837206 728972365 174573911 448332542 448798226 680490709 224205955 248087777 450335123 695317646 201569092 946407285 304359400 723256896 265712355 329352554 848699037 900467692 257278601 775117384 284719107 473636959 100305689 481427486 842067707 880044926 414926911 415737565 679002139 989854060 262622751 460266929 497162018 838164857 990876844 996869621 362494932 736854669 29765118 331065272 757089132 889904248 984954592 988049573 854597352 976475548 607570138 969269781 283583970 790633000 590574254 815973778 890284776 893281154 497114906 706450108 683489497 949568334 826268068 830736447 885791895 930699423 162638567 652739132 238403636 645706542 798283584 890471418 747912937 807962524 450891240 875943841 474283329 699951340 578410110 989211564 662759434 887374990 847584029 938923899 445398301 779544474 660374768 889550140 98475405 182358491 589555152 839094463 453490858 773282852 440883553 547890203 869375925 996033658 597715078 633941849 811250040 854203966 755150395 901924143 79920550 747811511 84823063 562816778 649276189 770905053 725965540 813555927 518709625 762156423 985503871 991245058 926794157 973102130 382499645 939521781 677115307 926651825 936381540 948647298 535028061 950434547 670102925 871153073 865447702 902570069 993716904 999269020 915917012 973951773 728199785 746475187 698091355 886820051 204362805 298384519 217311261 654571675 326051336 799989957 28123345 299976842 373498363 829001139 300938046 905841486 645174037 874247863 150088629 332421705 957295278 990846663 118196373 679335019 959840989 999749610 463151509 552486780 909648000 989022082 762413376 972247597 626554377 705526645 580777667 810466312 861317318 913664991 911047990 994613051 645054096 678424805 651970019 727324420 991763440 992488887 853376411 939261570 965450156 994843051 598299182 663341669 241916125 724424703 481364294 914651497 93786928 981119515 448830829 799846238 992039277 999506120 639240353 915936179 367774998 701917889 606962463 830462098 536995308 956006255 485552227 656401520 918396469 947830395 448556159 974573368 517858568 915744189 192088176 401030086 684959004 982148199 150152253 379462843 402825077 927416768 815354373 815726161 101594244 217905433 487850214 570635834 469894633 892477294 418512184 572190441 774230165 848413579 654319423 807978736 855291325 922591097 578080303 810965894 891860896 995020776 529956198 899250800 450052943 621554606 846754647 893344337 492319376 607080038 188861106 200992821 111565838 502045316 51677164 731957635 47951887 735354840 428260372 435498347 217381320 227514428 662083765 884694675 242904037 927431106 408449906 872527714 934009913 994542492 765403571 956635988 567105074 972822384 697287313 866531313 23222544 554261030 806149109 987961301 477916457 878901729 812722646 995565098 267277691 620524580 980023961 987663079 37046186 141423108 639262005 941386864 988618293 991727634 93233580 454263714 611708961 923289539 444072801 739687388 210883315 293501150 642788180 913942187 833310128 926917702 306147418 832974859 59585047 684262533 965753055 970981325 806055607 948164050 129768904 328129124 655803035 832892837 45240658 397687325 744981988 923141785 217789450 696391545 462034443 875240163 4164985 430005542 200654086 552641330 982269894 983376121 718097326 759904193 888631201 990675288 442593689 899853334 44847893 160515938 668794008 999006582 53522952 548575209 701283648 969672665 417221259 998819530 97517135 304874919 985165813 997310948 78967639 740297771 671217533 749878997 710037811 813391389 528283997 800021991 43365364 509439004 971970171 975263813 405923187 735281101 631005376 756324484 997523019 998224377 982150257 994637482 925093966 988074546 864424023 881146135 640579167 714721017 352754911 563026923 125774649 607927060 58928660 828852380 202092342 542856470 50992315 883342062 494464040 813724084 964940645 967945370 463964281 863286997 975385397 992463541 153581900 850474743 818347472 917392433 496689983 768136123 76946558 899037907 245511850 774649382 749576323 758635249 707942537 901008888 640001406 650932757 353134175 791992748 83592229 457367409 943714553 978753635 298469079 424426061 548245882 738282671 741091714 852663614 258878124 973057084 925741598 962168038 229708706 760161681 682432589 828560668 742720703 801854453 472400232 568580870 819730212 929651478 84873645 923254953 696027585 926407139 634664324 799690754 144621744 656996353 10448939 650282001 542013734 619286175 210976965 493904571 397935572 959220204 385988663 433617258 87184875 585254448 810630750 850369059 27865681 219578190 844087896 969130924 963085628 988985300 520395077 810084401 776567252 836050029 855556164 994558332 615588818 732038420 516389790 520434044 774542701 936620981 29265219 469875654 488090358 675261548 600252373 778797992 21532236 567782217 795434952 875374883 559956661 869422818 422646485 903831138 209802874 376044795 355377509 390191482 69073303 606462494 911091823 997381568 235278742 848108666 705702488 740105077 96701831 263065637 55675465 582240446 363635261 770523159 912344977 969851668 295323417 712744189 566150145 755603210 194005504 628755091 266171315 978724356 466371039 945120998 811395312 896696711 941086133 943390324 947777572 955978197 508134949 793724600 728442890 854425542 381237899 871995008 362853050 877076593 517021218 999437072 84817590 149995983 882683765 951470085 987127489 997556169 313122658 994243200 165556109 260391998 689786706 819650890 760712278 931012466 785361591 872244311 546176675 964634530 93770422 800009481 728108159 807309940 989849890 999179634 614624765 656449369 405042816 873001652 481912315 662690432 520952776 641622505 280856338 674900409 373361435 890935609 342826578 794620138 952085693 977198580 78471598 417263036 110912926 326762855 411709005 849365427 874682134 908498044 646274393 751228406 295646834 700843845 876086080 984088919 748594375 961629465 594878044 943776529 431003769 541137022 916318670 918437542 626007219 791391879 29033740 452539808 972677482 996830523 976079193 990635450 979141655 983999531 808051122 829021061 474696197 519469505 859263329 886507789 116358198 782105977 20466119 719646311 78013497 865491849 562182751 890450180 89603196 671404628 58629567 756125329 562083438 574127558 161778004 551589512 470262876 889358474 224185458 341041762 729103508 945508174 773192171 827159755 168554489 454496152 477601486 784308698 748386578 792451723 545080596 549592767 634740186 993327307 563701441 614124883 196178355 209924303 208220737 466711796 557579495 576172282 920027047 980527580 566511165 893411695 296876862 721668331 372344841 818092724 841571020 956134727 970807436 976521902 862700363 955352290 457516587 746032691 868390688 953850967 534198943 585827772 761461265 827449843 640710770 930711210 804221657 824274770 447185624 604014551 490170296 773631233 484135645 555223068 671966996 925308458 914512923 962395865 849092863 906673558 453342024 950168053 229945206 924357180 914775488 990849750 998462855 999794267 539494936 630605686 639407958 886140612 69276435 463590494 45472664 206456977 362456104 705897441 157201739 248589167 502797838 833234236 306412547 461930392 647669058 844286729 493427632 937740582 513038649 972092327 39410665 301089606 797183508 914326747 863382041 961661004 555807678 813493504 483408412 621408277 708405237 871214923 68761301 500086785 27691303 632994384 760494170 953987860 586687001 605416422 491675342 566404726 48036684 772843851 8303822 422408029 187930247 337072390 190232163 374030752 693985238 952882590 766935877 974433027 779322272 798339786 875609993 987255985 72357057 898766560 819581515 882483169 119022130 510120892 947560938 972390094 990384120 999533046 603843531 762414859 523779399 893051027 866872539 942942960 49686062 580460331 279016894 570633553 576893151 633349634 114300572 150717964 925306362 960315192 82048618 412371225 14458174 902865446 953026267 975083878 783463062 971620707 499936127 848727634 895222047 911388746 221615520 301738660 332931326 755176836 80731100 968933313 427860566 539797434 857717685 958038377 322398110 414579029 4034967 646177670 985346901 986670063 433467873 443571619 948072902 998348640 183970203 634264631 414891610 898978849 170118879 806594197 235174182 368726398 538974502 613817103 606368079 671720072 602145316 836791711 891375673 903075097 533518275 619447374 713161630 746436902 822959087 831730959 461663942 904332446 482555150 967110187 23227576 363310951 52054919 815776837 881423130 908864615 176944893 815319008 940721001 968320051 909243552 960321721 48167248 539426080 682910593 756964250 128676311 970876795 841991302 976985833 241986746 578690329 971438643 987394287 80842925 104710748 603137517 641493844 304388955 699703319 861946784 887247699 744487561 747292661 55093126 511221555 943948885 951121957 4205800 920744457 98447484 269902895 166173926 977320035 902611367 995667780 54545433 795329639 209388230 932860549 454355493 946148592 876478419 950705884 528265922 630303616 581129914 706616540 831626339 881335204 472752348 810476269 267844668 824724041 154429981 275598072 618702646 786794722 515743302 781149998 710401331 806301366 341935279 932901740 831287119 966411760 1674422 781023505 526799414 980920399 681443039 725126564 215785891 675238910 59646294 785645003 525145028 724289368 524239514 873838080 717221508 891294012 477769247 811567782 296097648 474065436 634800977 707613077 233090964 763274487 778568378 937306746 103166962 439330007 683325764 937986170 570186821 732907620 313801496 385089586 13949693 966270306 927581261 970698950 851285262 990780265 839042061 876604192 186946562 908121302 308269214 718453453 854466237 944248610 237630010 767010084 187630762 598682275 295443454 788875182 781102817 845696242 897492477 982490375 280152692 831035065 109545144 164766966 974663491 980038975 165536466 617775558 187430579 678595188 606439402 992199448 156199067 713599093 603367129 781909956 941261851 962020535 110293845 712874389 370905552 760414978 524036059 818177173 159448764 308489939 296115320 873127556 50097181 586230189 572519279 646318452 678012020 918636538 139928994 508439969 191740458 676185626 731809861 985989302 227615330 874721898 395005397 804894711 951986943 988003020 948442683 978118156 990606276 997023150 685147338 760654686 651438218 985253938 353343772 932405859 365477536 793638305 450947549 659810979 868710657 887190151 942003036 944063802 825650321 979478779 262960086 486499066 404416121 457289678 925008175 975800695 671229079 778482131 62308443 271844832 487139521 517493418 503809905 708368724 143610703 179822378 4862413 627412862 549136391 638610364 488012200 531393976 615818404 743920691 984778415 989505243 580424353 737597546 155694724 492540133 62416615 791724094 777548731 897694698 325096770 770779573 309159118 785755820 852654471 883759474 300444527 392284669 45706874 387089570 291261285 715421770 480713923 616226047 324721724 644360586 866409650 984716005 828519935 904903220 253479261 290911230 505182413 940551666 505649836 738545667 279825932 760976945 623267828 819580799 408728742 723401499 212154443 432023256 317533919 872479505 188061961 753068150 900594662 956624232 262276166 557068165 203833134 302068721 934333045 993558811 765125823 904762041 157134148 346166660 381690236 813843844 764155384 957264986 221332996 449105378 901762527 948583446 809860603 833799442 526158331 756693604 35113604 351496787 995033862 996631845 202756469 738085736 34582466 204968304 869224283 876489547 835781769 836805347 421188770 782745372 406669854 642426004 948410339 989170048 207584845 751776840 593941385 647714045 381791727 721863410 776830137 923869530 303466683 858441109 169808167 915766735 787798546 841946676 115054254 927041168 886480955 905301397 399943204 706530432 335099711 415197401 604244157 961480688 166889280 328574206 152582345 183117313 279125595 474511208 590108223 689365159 130982386 777922906 777482618 968496921 146315772 854276287 995117308 995177216 234998736 264950722 666531688 728215407 68921605 501512661 589824884 837697839 290755059 561464726 80201175 538371427 39098669 451897718 672472747 800808473 408275145 857028617 22560269 132435701 506790870 901151126 350870079 901180560 140235805 570567940 932085905 979201667 952190738 987711732 108866841 707887619 836532081 872599552 206793314 468215046 454270489 979836705 445615068 847862016 262407230 712861730 6165498 181672296 213649634 641869860 545631156 979471885 147729976 248380204 291561208 680514663 293099803 575778232 222710897 903162146 417325247 508510599 884192659 936679438 54101174 548039410 235602932 409153415 692064988 981448576 642811308 892981536 316567129 447428131 807894510 869481083 490774236 782214502 66457589 504329358 292525431 693743883 688134422 947058309 629890463 844634973 557271948 771214491 304375368 796355366 545100964 589168279 151751284 904508323 894753608 914886902 79147789 583696380 985260395 996644602 522560261 922599852 474266965 906184051 533850405 870134747 729678549 738912897 765938872 965982639 273670927 919170668 841069854 909135016 312738086 408052189 323716057 549262969 193637884 368366869 399397758 699090625 216211741 225977454 593183299 805479205 280119644 372972976 441291100 589147316 490229808 849046570 25824093 761036724 54158148 540867903 885665370 886612103 615208759 678137279 171746288 414647757 861654311 876760449 667207218 907119244 123595651 557057157 140869183 846423528 52653076 112575615 250795143 316623423 797884994 814302957 992073800 996281198 55647992 336221513 173468902 391528226 33162469 55824249 770183827 782926452 553620249 574037246 103749404 926586406 683888099 934870907 680727198 989430552 799937333 846253266 567723165 674422523 163870276 412592628 355143027 931684544 894072103 991952458 850666915 874909513 603958070 742023820 499289216 634346287 377291157 627368596 149397777 526039223 432352942 655772757 74469958 508128582 184216331 433232947 451598831 693860045 479381688 554140266 887746202 892988761 996598326 998733593 627062984 711213393 545288073 753976335 179602779 776098625 890462794 978971867 808167188 903889643 122624896 482841282 744962918 864822278 950191739 979206955 451197091 808800126 718851535 960822651 998567558 999789729 427038713 958861165 99869898 787445107 172384506 842683287 389953213 942756818 289549089 351376196 260580668 644136001 225349685 372247247 294393308 552952993 471899663 947778202 607203635 881189074 650187685 940563394 757863960 795638406 496493926 734877653 956314725 990350144 792640386 812681782 793818434 943597481 798918379 850419471 954777992 991181529 366362512 631908630 663429776 889643800 413003364 805777531 255831090 973593123 447841621 757709596 543040648 848202346 670712511 768024469 95759819 353971313 878581042 946475068 981398480 998599449 835672772 958306942 176731059 916979794 449714739 793733902 549342862 628391670 582431254 583263335 500606680 874034431 259790947 986195226 561822307 665668259 261144427 542964377 237474499 571532406 847411698 855194435 711006579 926089394 740316439 916625733 840166639 960880753 968125022 976083238 883043321 958103112 913435032 999150152 275147204 465770133 314308596 365337030 609006967 740326075 608060805 953395510 531331485 951752134 109892001 777978551 137132088 474476473 467283330 881828617 397699366 613288170 385818060 441265424 705313307 837499537 525681947 648092595 891363594 967206499 898847615 984765741 59720550 124206036 829053168 850405550 10495574 941334954 396832101 883780764 973663467 998061723 847757079 889584705 671509027 840421858 182885058 804815623 972895596 988335083 588634689 860516666 391298767 978769352 351132764 536173035 404687088 604817579 296843702 486315798 566797351 904152770 645941690 915338770 464191300 966729402 983917004 986952906 484188452 841450688 504551501 619488424 856342322 969206422 90628585 546080319 694464962 757458141 273145235 635341049 971609542 977548452 595613405 755690118 331145854 678011964 446155845 693797710 607463308 814824234 933978583 971265980 614267126 658011178 744591473 786798701 669624206 840431955 726159644 832148550 494340136 948769963 155072071 518528280 796690143 972553428 609376528 971184334 983394886 999346693 411844997 536810694 758725220 772023853 584373661 710897251 301508127 904008026 920159029 963479950 669121564 862000511 253288554 778488290 542832662 920601229 866325665 997977553 211822077 790572836 628806844 695439658 642661952 693104056 257415031 846659848 267461547 881311056 633435540 754296377 549074471 667678170 476051012 571559132 995659657 998708378 239713317 721247756 941902098 989164657 331858776 424314031 880597039 887121771 458989223 906485219 651287414 703163968 886814148 946274137 421075233 876082708 196037593 298360563 592687827 603850063 302344102 642090334 565983636 860600028 175208521 737998734 34826129 485380397 793539743 881978275 664443345 766849739 97613961 357343551 902140718 940828122 686687314 704536138 977309088 997626927 704274160 988416871 85799088 218948294 164071294 298107041 626941229 841048261 376874194 649257692 299788720 927659169 228914271 513758036 936744373 947119575 983799534 987001245 65020839 530638177 952708809 988092073 183924403 188652283 759952988 955888285 546394185 855233532 296622625 435999669 732729317 951384825 518432284 865275567 120932938 411910927 215725513 230336290 530998567 613062648 477769023 889025229 194117961 251874776 258799426 547079727 950996704 969411240 311655780 923948175 376682058 636566910 895589918 923098737 835317895 975840286 739244535 802102275 168584188 412475701 803818218 834385468 668574684 733354501 956888833 995606176 215264628 960512807 969746850 988125552 142143830 461500227 893240709 950385471 394919463 851619681 468443017 544276315 471161916 706962857 314419853 829602174 378418806 553825763 252786377 515641627 222879612 641423893 907988887 909143929 379478640 870033352 519497024 696532659 10687381 598794340 328409769 902520469 297430680 750897687 332347842 973665725 515755871 830666595 362691205 895748168 708562463 887737282 588952200 831829496 715682277 882672322 963072460 970089953 260872132 510783301 242182807 708610642 77203485 590744006 260644723 849388324 797904418 992960223 737797987 833813933 806794729 955301852 393273128 898346928 176036228 462563434 438013250 477094946 972587567 991482881 228899224 465130817 35290626 925544749 115163703 340827348 350363273 867425787 689979283 985912764 492125033 781025013 738897387 968150151 66124739 921090520 129416122 367877136 289769194 631014821 649551297 705791524 643106999 921334568 409521448 494933933 630542231 634616100 573449242 803750852 640446160 696932672 305190844 679750846 43583191 923117456 318066282 629115661 210918858 572469747 517372418 880473207 782557088 996550866 209710831 787455426 172456547 753206417 130557051 414949674 962437460 983454863 842942679 912932970 320086747 607031922 799523841 858543243 165588683 616654998 886745741 969653432 520579237 892146076 687974079 689138053 736493311 859406478 170631065 839027983 184831476 648193212 179254530 396400350 63829702 937569836 53117318 669242636 63071184 158592351 249962648 556192631 475422124 597685884 612181525 854824749 151494019 214035369 334375758 932491485 40046587 59088900 701040814 773678081 762148376 934439173 729429368 868678179 925805901 927655303 755240681 828094593 432264534 615481142 445806416 842741714 339814789 671513996 918264085 998073047 458712808 774971262 595238005 650698581 728981918 768010351 368255500 972596568 48398092 302427334 667671274 965901225 944614500 971208932 146438103 721720294 216653742 874628889 373749815 917978956 633487183 992929633 53711140 700164291 380396005 499821571 795646556 949669278 984030850 997722201 87721230 644516701 686731746 729760284 724528504 841094208 794339918 846393115 608037885 730581292 72208763 773455774 879926776 906068565 190546745 874423766 304779447 633969704 113021189 126876717 973349958 977415017 737718741 997096243 985742728 995157414 391718305 505087805 394545997 948789669 138507000 843738368 602315767 981364100 704008044 755281798 919498720 924925856 749998232 914751442 128441911 180232420 98606351 574303455 230287804 536235920 512503027 723981806 945583032 987917263 311777083 794993689 886079526 982289393 837348462 950673349 117700174 934550213 490511926 499529873 49611192 598189085 968420649 996752731 560134223 860744653 924431210 942597119 13018069 362559080 258244513 507731161 940910222 941320044 809468555 929887971 210553190 343239670 630950659 965545648 913684484 950382631 161055638 981368795 376302741 667475784 878382735 902941241 118119829 691254999 928034585 989069910 195464328 404412568 564193546 888415853 795987060 965182561 423717037 742006369 504144412 694596184 404729107 503350779 427744254 855195000 741120762 772651066 844809827 965642339 981269603 987604367 602250000 681020877 506954870 810226607 500292022 701565466 50985599 907318766 262672010 720441854 977936987 990665302 741929432 934196699 199560163 959870941 324716054 667706505 224514961 505083872 567850335 621156738 948164115 981551010 261127414 580214165 23353215 578681246 22890397 498446568 442724669 607239742 920841857 960742967 191930033 818022063 592700722 853687635 208471066 260535944 852777172 878021911 818162022 910357807 11060982 557366559 428783966 704876411 45576639 247951132 69118542 309261641 636063685 651332959 620955544 693010641 401282379 903955148 74199787 910822237 852720153 911002707 302463657 944665686 751112017 908807457 206961274 846655232 454352838 759064566 14319554 363037820 34401233 458095992 663675066 676186527 835258048 992395955 297614189 542880954 869242053 961246029 27428015 823121711 831192752 932099608 551374553 656649626 151642723 844201752 198452351 864855054 217096365 842847243 864783838 995895689 748538812 959163077 761324626 949516860 659589449 908099481 144176818 542215704 882144005 925644613 430219357 730629711 743732740 898820579 982045564 994439833 870802992 916144636 154284738 400884175 556149571 974423519 884679179 896852207 292570975 779530219 612558616 807366583 41789186 676448720 65297767 888358977 382165448 400097543 261418950 663579315 861802619 898847165 328489769 433979095 61814990 870487499 887964635 996487475 437842918 606188320 951901959 958649283 125356998 219079848 661083499 938767657 340603760 767040810 172865835 232352122 225456370 772887653 614620009 991697620 509251231 909837317 83815590 675060462 261090536 695790333 197668173 427176779 874334821 992224276 917541142 984167362 223539848 659661307 440932215 823328782 58807045 700271410 796074577 809401315 79664615 356558505 763115395 930569425 281833821 311882509 711892118 940814833 707498796 957388051 23021950 33587165 479455135 636481604 56405912 627462836 677023776 782340398 101886124 788327376 146137356 984030711 312193093 326907806 964984241 988385936 139616449 581490667 370141963 725346393 5605596 16323446 779543427 984427017 983145738 992027049 448728251 966841310 343864829 629477806 857618582 910360289 660491368 804195755 983727552 986887507 821981466 924971824 853809084 938138175 101801315 928874814 955671236 987438706 882755933 927719192 367344155 588173339 889201818 972851909 705917442 947579742 740995359 930891411 380335674 887094694 609455515 711523449 338018489 793953065 29009580 483774564 419957958 454470463 875649779 962779331 425403063 497280783 486797587 965801359 128832927 503402625 682215299 907013426 287659519 986477912 737741554 939180872 419346858 898743257 553774581 824800242 264575788 770234202 864540250 961937692 145358563 796536866 983007662 996502360 484352397 735121863 179741542 245757739 289890864 311337939 697729774 719260593 581835935 913787668 518081324 928822969 16360495 51236171 942504700 974286805 27119645 426351252 162395680 996564090 907124562 917500569 932512402 935215280 366849712 974028316 944151637 950792749 54195637 189809500 115346437 672236962 675028738 783778998 154024586 422680360 838492869 974763315 735753101 846722518 706996277 968853748 881401977 966928378 219128511 656344340 675829482 972066500 720063582 766413204 53420946 69652590 376929288 829600323 184428132 780364502 329717230 972682194 764647021 892653726 589199894 849774246 279401069 592726615 996752794 998601822 913141186 998743983 376499550 712750310 731655634 898573904 374307165 611760813 207314707 289004712 543903100 625787145 858668514 903511374 295464757 834758400 908121126 912063584 775962318 914059812 288332177 725513220 290927479 309664228 340845786 557417639 367955626 454652253 200907167 827626160 746201268 967723059 208290693 460988595 160463404 876110592 1911537 55296259 686885578 848223168 617142239 671230514 551765182 604091721 65852776 890325941 789836946 944329965 871326414 905231287 253007596 750466417 695419454 721903317 944377543 983086107 390330934 414648989 596970165 811181658 259429912 549062014 34385444 450483456 322637013 429193842 608156508 992247536 816847051 970665639 192347455 407422277 659064906 695933625 899325437 991797021 93803760 227160016 784043747 941148696 237717908 610758346 302755844 690595227 397998327 644086357 858532405 995040237 538550070 955594323 653215677 842115162 210009811 316609040 199359212 455818701 624830717 711071976 791537075 862641386 170192471 944723376 462873577 938754016 793203758 835148445 358637366 588367690 372034351 920837049 256882050 409115417 91520733 119917378 275113599 412146305 783089994 971195898 900159053 981076085 718339192 778087730 517802821 690018074 867757324 979929388 451560668 532321792 704292913 956449819 309025373 806194242 729770458 816032945 481791007 880557227 46191462 823411641 754877132 814482778 637026172 849794760 921300008 993730526 566820799 713128770 198952567 642532314 668558049 905186670 66515546 134877435 542592279 774694377 547125136 882794072 915260619 972574014 926569882 947213145 392468285 422506867 17209224 367819477 437145892 483607765 491154787 833481897 70796547 840503046 572293279 764353852 106688789 579124243 345208331 941158061 87021708 852429258 939310175 969716132 524303715 978444877 329768144 992880074 213002966 451748648 333499144 840893693 923531851 934976402 475405922 879200564 70527635 247145537 598954362 968580501 80864468 125553959 979688609 986769764 929743400 929776397 488908529 723907724 953855206 970536868 555969659 942139306 972590838 992938770 126050161 718049934 74562188 452976013 394317266 929058659 709694774 794654081 740038177 785611784 178106855 764043408 608258938 925503462 141484671 599394896 31718568 730932472 352088648 781114234 491213224 994165614 539718973 894691126 603027389 853095244 789625509 984911744 659519090 954316443 480914921 938740441 89786957 619364970 27277027 334713335 445108680 461377303 991705129 998653721 58527320 927748886 920950557 969472799 201265712 718179065 613211541 687057155 826179779 845623293 187494123 617899618 794524606 962472196 309188512 561790653 744021482 895335073 505963584 618112017 240211067 682298347 858431532 862886848 271263645 368974544 577218480 835672844 65011361 540760021 286003247 671139887 876375249 993455662 321526848 968390575 955853712 983120409 209716868 858619776 527773271 690526767 140318783 939781673 78122662 841846695 80642119 931991739 369345533 921356122 439482109 613114749 561529731 934470584 735928393 933701978 197293602 916891394 240205112 517595844 106068634 106212842 784004925 808200261 286350536 469002666 343681169 910537568 978663453 997311986 9086556 672667661 780877012 866316273 629499498 640926482 78117980 375903039 733255464 893884758 757678685 999306364 936755811 965476741 483806689 961942222 319913835 689359745 494790623 776677580 116687666 289691306 464266582 692990829 138945953 277558063 63339660 435441059 238259185 803331586 372077510 897023672 726331651 927881133 419313883 631791443 19584191 550964218 599804136 777573167 609791390 619763510 583624119 975159435 956797400 972997556 976532245 979646438 356839644 965557170 970702345 984182046 777768803 878224513 915610755 959100859 358617992 931613101 827674718 953603599 123636195 788070040 367857171 432141863 720224225 782461487 725350126 879937798 915481397 922433139 868213628 994066619 145967381 392093461 932016467 949524280 88907496 193161789 511062795 552354651 470931390 909824996 389357765 860914200 368256160 598723125 570658276 778412536 28836245 34838373 570208963 955529694 118747789 477431476 665204357 965055633 801775694 826025192 168982631 315380224 447407654 938869644 146667787 552871345 205023012 377795061 318257064 973996780 217387532 599255574 110593925 512604849 78397890 95362818 148338050 710508729 205142586 392156301 94194261 928856556 722955860 867549051 150112272 941182343 550098937 597125327 436647459 735405913 869494857 907650452 482124150 584992857 600148107 606699412 318683570 522429397 544262929 770690827 977034021 984204895 252686448 757377767 620937303 722082891 743470155 874500046 22991756 860805846 415346093 564322107 474037451 780247329 816672159 875495772 340111319 888229524 757692225 910496885 658896440 750107042 407562059 460211336 408249124 430246833 842973363 967621035 25455376 188467154 230521578 889446496 719600962 870294349 260715276 820817845 340018354 724151262 299003977 693470126 188826126 844943880 87241043 165124685 139494310 920123861 787458708 829175377 761534774 875134972 397007757 488631154 844817322 936491132 152620214 955740598 161144147 658055331 900078971 944510731 946740746 986440926 73191974 676597729 606798594 889692118 616575258 982159924 469637501 825091615 655913035 942120070 610164066 960784694 555688407 627302735 359143171 389387470 642183671 676918236 754247628 795418396 211398372 225346308 443039318 600139806 954515813 971589853 946747269 986135439 245426945 843868847 341953624 999562549 215335167 249137540 279988521 625698543 666820604 967048004 651939903 877714407 908385898 998395017 758176792 869873000 102485618 627687085 397817994 479965129 552336623 697728504 712071482 821011448 617474487 779102163 319171428 352032287 709670145 924434912 619388168 635320865 457112858 923899420 50499562 829429273 863436394 924679893 892083878 973752688 732590450 861120926 281421557 792824588 39545198 894135089 893698364 960982103 580134787 863837652 197427193 255803847 466422103 469258919 567939945 730675086 232525231 580484175 332165788 866875968 790951804 805572367 775349249 874729985 948415279 987929414 631281552 869362589 484151761 835032982 696275055 789170565 232259489 457424678 385367927 502415614 210502742 570818192 833498949 901075428 275240834 754108381 836525002 902577788 128618497 180069841 102730215 580225907 837458152 928842319 770594131 994033473 734420866 764217741 268458269 784788106 90313267 373055359 451006696 765755377 101277926 413569302 888798279 901465549 890330409 989376365 203921330 452253191 214227021 960033266 423595252 624851358 843098509 896151820 770970189 901331454 115818212 737588148 707340338 850174687 872993478 896890985 242517503 548192843 77557143 911472519 946131235 974462978 546022255 696055195 632816111 879375384 911592396 975248095 640759951 901386392 477711689 586147561 451555595 762983246 568271123 621916518 734788715 770051482 668817892 939133838 659521100 981692564 275626461 578004216 673184552 780084281 819919406 874160637 758506488 851857607 553025830 636234842 985883512 996136958 269268509 295196774 430291448 570701389 659716589 813452516 224577935 658629367 369913003 595860370 683512106 769824251 977758910 992898430 101195306 915361174 636981258 709436867 616839691 706025017 327907730 352187421 525941552 911586764 573129254 651392171 509691654 735854451 931327859 941363371 251816390 620886021 914266733 929806082 701421832 910323877 441999129 964119450 309561106 991329486 354917632 864679857 869188144 984828910 966180244 978990271 390462635 441000573 881968899 903491423 272845787 447876488 405030717 706940190 351574559 891201829 825977575 951311626 289276881 336525037 633294790 921773008 466774628 828850400 195909812 818264663 182910820 701986379 769320560 955371075 496283081 681236689 271241863 298774826 865423759 907507595 51338209 141523140 756539579 943522108 294734383 457102091 241241176 289152501 150325401 895485272 375923839 839165920 405419187 586267895 952601719 975897350 494382075 954441639 106804606 821252156 939013317 993567076 931152801 948999086 886318226 901657762 61021585 818038577 904835217 970243311 477632475 902242780 90716738 809890988 994957263 996323066 91142429 462978194 670034611 755751645 705679597 819431342 80712812 675648006 315929869 753278883 589412428 751012435 951121071 996441985 19970235 409408879 173293937 948803705 461189197 781903533 497650416 808489760 399049044 468993712 21227302 731604555 948194369 958956308 529328483 881468200 329512047 851955899 121196126 411650716 855787026 947970344 170879600 544751000 342440102 745321047 981543285 998132991 428010540 946397906 993993008 998714993 830489695 996027699 290017701 940749222 614545180 672849033 955597163 981309467 327127630 864452553 684687952 744419501 614572558 841099644 906383135 932838242 743662554 792929998 552152638 586848997 655680865 788694593 563246001 793165406 98342953 310986595 706269612 768544056 640914621 885503814 94371411 661836620 254153546 598656653 561683787 790149588 467095899 497732796 476122390 720002401 118847162 714356157 139978233 666974762 916753554 983904605 769052709 894821107 4997743 65384453 298082426 783321480 80328198 259927814 253088025 399609255 93701063 640788072 22963316 593239554 105792355 706369221 585253518 736578569 55764475 687548684 427739895 933220133 954388022 974705786 172310831 775066492 772740862 975589910 947850177 956004343 996948255 998154238 891181149 892271193 277666241 297674085 595698888 619383394 867036306 953433867 703432381 741893400 972301034 980811154 523575616 637316472 522615019 940904422 720503767 883373590 510963622 986431711 636623505 737084777 779638444 967657404 319199787 433027624 538796064 991464899 6080237 327069698 170065132 831408038 103495058 594076561 840145272 951049291 104800817 547668896 584044299 942003912 359717782 615195601 608587553 653129556 373494754 969244227 383414365 829022722 375726547 747428326 467381238 954431840 787702097 993167061 715216618 881026123 333140775 574333093 216496073 219012332 13640828 440866443 651281432 980442584 473218367 770177579 558314529 619193998 4260589 710265657 695379792 852315169 581974237 644212420 714337434 954160877 888559861 920672347 736781147 889622245 150880593 478864788 556616591 717103530 12692213 662640928 574305122 982230086 60282267 404804109 871352467 916368143 112970291 122658010 118358134 869303831 652111277 877993473 284130833 442078542 870387973 943188458 445667484 937647078 718524381 737271431 25847108 108366408 592942707 955969941 456048190 968064168 412654829 502413906 111011259 365363205 936774979 950462805 324433919 450243173 646922831 745305310 478129656 970339118 797597759 892990420 598322731 936642567 727896862 795657819 240923508 600961541 754115236 856426751 988617812 993509021 42952568 707153062 821181528 989797836 853446832 936441454 205844868 209081571 114145512 985149154 811425826 871915927 457858770 659469643 638082855 889275676 775013642 885143897 12970758 96976181 569932070 620213732 767507200 803407245 564401257 684376969 741775442 914418095 234581902 645190272 894376701 915520413 181433771 658741205 438162793 493010226 33497176 255111347 899388710 909286047 32940969 395009303 332386045 877374301 924555286 961137907 853236303 968794946 782740540 989525995 515898988 887259765 289126387 604061292 332425822 545827868 173761477 752355365 544686003 772245484 97503114 327866327 711666818 746559174 542654357 992083258 534010006 900156000 969584283 994326872 72856013 734202849 244195921 925679428 932657526 987922159 597841123 807981542 631671599 862652074 581762264 999604578 49025381 197658960 471287951 803797873 850998984 971179967 500424744 843169082 841452563 967043861 630900846 770980447 858078775 978709463 916759675 920414873 24454040 923483929 48335499 863524824 125110178 219434443 287597017 998456023 138396344 335712387 10074761 571043232 647364735 767037774 930865440 972015600 697996452 726822751 60242243 307719597 860036628 873689118 92184662 907279519 342211098 823493878 957393469 985735640 695010862 903860327 623230873 644708266 921240862 982992852 59029994 393956201 629504005 647405319 838819360 992240857 145609489 727943169 614528790 640864216 967337918 992559056 994466411 998445259 171519058 269895002 517574968 676544398 748142799 988962722 709640549 893199835 46652814 598035897 311543659 480349866 775848592 885288865 549196920 562436441 586119566 799601466 461531866 856899610 680517636 710498800 447877009 699669195 922524150 929080029 79451509 417520483 415883970 654648763 556491020 914571142 72386122 270721385 607614477 757160168 897352711 961505006 783457761 835198963 959000723 967292726 441779903 659999908 585280744 634192299 824932475 869851710 302584908 350376631 829260734 942212371 244288186 750696672 355542508 782475764 504012608 791000802 203558307 254227724 918010117 966123076 150325952 390239394 210056307 718767137 483137359 900481686 884100766 964724519 670245920 690010527 959465309 962444038 395525509 923964037 739002032 979998171 437015129 988530239 991254507 999057322 492618427 892285626 609263699 894903464 624500275 916169191 562199148 807274683 555336826 802675458 960232955 991282411 733377620 788632268 348884266 787270191 226465913 523134425 801984122 913034584 816741811 900036953 944868425 974474990 616138882 789165156 116299190 530467463 262330850 689384373 507616660 528420849 906665459 918840165 516991173 918158951 817797985 942227804 476281803 649568726 615970586 714556019 21891105 403392820 438870859 993008585 698671562 944390267 422974408 623434374 71534856 416064668 983559350 987801839 745739886 833511046 64759815 151049165 853162602 951645592 962513164 987901506 86710718 857353009 895176211 921375608 792509152 882682101 464340364 889766423 576116010 858532734 179924916 976959635 378673754 379232624 165282058 999530525 815036558 951764407 78840903 547034489 372429527 404957269 743559350 839337335 809206824 852613043 346667319 695523042 44869113 797203723 101737733 366055603 391414413 677344933 35675905 748164228 416339736 803112354 639584042 865326449 882800527 896361796 631591838 696573523 839059582 848310675 293430796 780319165 482003592 568699705 812221761 938167116 125965788 827698201 629419951 691379218 241147519 504227230 118787308 682711647 14025500 109675352 374247785 453642295 857096919 914533219 479664260 745110071 711483847 887362178 765623153 875775526 870453931 950210048 948996567 961428441 364940120 499408049 858930970 971708588 865026614 940393411 552482052 988625114 895418726 909760335 533371107 696957096 513148797 637990800 668846766 806296845 934491758 956130600 565097655 982773551 419280269 798617962 258544004 625245864 627487581 735227578 75600263 934569466 919622315 955226446 790143782 814237678 683519376 966531348 986613709 998769384 104147564 436925757 688842051 742803524 165290024 832988760 507498796 621695219 383593677 751947065 837611042 945400892 127196510 459460893 518570601 726422858 556328580 955571909 913999754 967923167 715189722 786256234 596419035 607310015 679724114 745720043 715165222 921145608 456823775 640846202 356340790 819202707 809948895 985254887 382276291 614744978 61036278 523744170 636545557 901999919 279063867 445688385 357962625 766750526 319419567 859489394 918227983 969165886 452311691 582250630 67318275 747796932 123708835 666561019 589236246 683100348 890585538 967469578 726102310 788519701 995585024 999078150 494421093 712067894 81159141 592027696 612349147 730610846 358036178 631896676 387880407 507004121 847753194 948876513 760010135 780643448 43042783 762243288 117267562 740347266 94327231 485972617 921165319 997496105 15379941 662715129 507452240 953568793 281961770 558364770 826108958 870404826 71378724 903059895 598846062 743134447 577235382 736026711 411584760 941838982 404189168 521862875 303148684 660229012 83353318 410306641 351009568 817987323 773803498 983436249 486700614 981384922 6104039 456111040 208159650 391800046 287363694 497668968 101633006 116928921 657651808 826981786 342793818 463385954 582504491 804738819 178407390 530550091 103480929 443254350 131958988 528048228 271487900 435754701 858835365 969601408 726116689 901982351 292041420 968310290 195101776 977940939 689480631 713039340 111177852 274278099 923486578 930489581 637118772 720648823 155208413 172033699 151300822 349571429 666829724 684930155 786183963 899293844 423569163 820865518 607468304 788318177 496163421 701565261 244937180 409330990 541721818 627857078 372739023 476839144 298008674 464953951 31819592 407973610 347234664 693195245 605198914 719877746 826003844 903506605 397455777 484905543 156419269 441830887 508222721 946343530 204003321 359277764 243619377 772746570 173826678 262623298 49069285 248337467 953632160 971235810 834097586 958022241 906673249 988804010 179621395 409210951 984428956 999004539 723834502 933092836 789729067 984423830 957323692 972146825 488584812 915471110 210475972 984088256 618856667 701970608 538418476 587023941 449876563 870996606 418238697 848588074 643095440 678242736 921914654 999454110 225347097 710486279 424012419 763543292 409005974 524943340 82063229 953294713 156709901 681983353 3418234 970371645 811456827 860622693 330920918 383245977 183083324 715347943 340816923 341183465 462180907 780015915 115166704 665132572 570705903 823373389 409481330 804186542 869369344 920025575 612336219 764742550 81853015 848353072 316176826 896991228 552410162 957345083 671883626 881484921 197920930 828733427 740544845 979629647 116894643 770895675 510689303 530513842 336249718 664667252 664350000 775835605 899584923 922322569 42569300 464419181 285784404 624943144 303493575 643529235 622601204 894538583 501757349 954938116 312337861 700732576 326468652 440849154 692491602 847542078 199224144 293136589 754224821 796049817 71338504 292179238 152474406 988545467 275293810 445849454 93503626 323906105 886186766 936216068 331142568 334604137 26673863 108551804 93684095 767654262 436798910 453904704 661136227 940497248 477539784 629736362 948928497 990700651 552722815 703269063 57318239 176989596 725745895 854716257 11276786 530241073 3251801 792154110 624889512 667987336 425937277 721400818 592123838 654501483 818709422 966478348 239268513 587312379 477599253 717404262 557819314 703247827 542086624 997600185 315923177 369083993 946414497 971406968 404064877 627890548 340714923 361728307 345704201 389961004 32219915 394192068 687980877 861514884 715128862 903856266 511692943 879782424 949488125 973366686 269159513 748823036 870635120 922714139 582886316 949386043 345578706 962875954 419659113 593285153 865052871 868902767 19113205 991317841 625027865 699847890 533914240 733113743 804334320 910506451 900812312 980891931 797486493 900690339 876309010 949413963 485523791 707593747 23097633 956470114 575479195 880702514 57308734 937890905 358363131 574188336 47415595 747615560 37126833 826895535 371123305 620419133 274357083 704612370 381834927 457473459 372373966 627845227 163377971 784045907 613590433 734149008 143820952 162818006 456879267 719127385 61589059 482491344 37204288 434999431 98050871 154718540 364579320 671327373 751887227 989993272 528950276 608444546 793120066 942545263 143282350 927571678 180778166 545995385 138912252 569477489 40778900 823752891 205643410 465319476 305755573 610594369 453747351 747675214 978405038 979196325 574757056 644000360 702896222 958360863 500589939 816080077 570483247 647807370 751052463 990980594 985348909 988015571 484760056 663835463 437363389 555839733 681427648 928645562 995369323 996059239 192109444 314234435 543313643 666674614 111042569 498727526 121370253 376680054 394979636 668536862 136754861 452317470 584628118 978913789 169518029 339082786 209406083 857289518 642501725 760277645 408436222 738848794 357368200 866833042 543115506 819775183 118460137 510848381 865683698 979657112 532628383 605095840 677068293 898993348 985086424 998562456 509174221 941764267 299123661 492868028 976581221 979689474 224328264 943497885 202223295 949091086 862448588 913180691 857551574 878668666 666709044 765244132 867830037 992620442 173570060 992230931 832170483 985521706 583057674 842848272 815739190 854406684 144289045 635659932 746516160 845157261 670368218 917626990 887088253 894001911 302569821 836338618 878808292 926445020 682075930 855625469 45215923 529744505 665015109 874614929 101289682 804803104 697787291 999346202 275328750 506053918 316022930 743999690 176435064 656738618 938873900 994410366 715157952 961385630 963371593 980305907 642669750 699500967 786562168 870173273 445785582 511867115 242591455 917808989 624044660 772077734 945608785 983194394 771089377 988160897 538113071 893208615 444210947 456410251 496162954 991237600 121762861 745152631 765578849 890723095 440811552 855030938 314522425 956601469 450262893 722225942 148539713 373374126 406603244 502275555 16303707 665910957 487097586 564748407 942079853 994371700 979060404 989592984 853232609 867593385 943744850 952688483 765341288 905919945 241044639 904348721 792701451 983073779 209622410 848914330 778376061 839673360 631005905 857271270 485089878 810157984 963164144 979229810 310089707 820200991 656500485 826450175 599129392 818606384 897046139 947459284 131426065 637302201 554232425 830075899 115112184 378879538 403987826 723872420 190790453 990990797 770251347 951819921 622453425 928161373 807575175 865907432 703267441 706654592 773365136 837541634 227109297 594533349 307576711 526792312 867333836 996164388 29977456 667962105 221672290 835081958 478148806 656979132 656437497 770248364 591812774 938747430 941865850 988246195 587938632 755163545 342256169 721715855 190137184 640383748 88480673 717314022 638704660 749287238 313591246 717172465 825735785 901340996 878221465 972748848 540679557 565873000 899006477 963987883 38399402 746587561 54193053 745678788 129610644 909900646 966199815 987981520 948937810 965743702 314410768 917040772 515388775 709147756 5298599 586687559 311796718 946152736 992442772 994850301 646515324 657145738 995873320 996913154 88465473 440700506 71615102 829518504 954600834 968910852 463885659 892339903 69451399 234078650 605156792 797392565 451571808 721968339 522817928 588617345 20848679 770596539 988838126 993942801 629997107 826071036 522437738 952716168 805994463 829161366 664827429 854263822 630766855 905006869 93738386 645955870 491866164 980065635 817128324 932907910 459681884 664967148 665019229 729965444 699239425 744893139 88127 849431337 188333028 372229530 291203908 518460422 831058449 897419915 210775472 478130057 975893806 977595366 705365824 838180615 653241385 754607975 260009700 685989451 696164231 873715011 156687833 355040595 922558162 931661607 933773182 945470437 467596997 830307523 13495373 347080767 48485250 385523036 498559537 931660433 602687051 855000288 51463867 508329026 305808899 922927012 283125383 695654917 638639060 765822913 312718572 779825637 65575765 90507270 234241387 801380956 793483679 800408814 444537727 790160243 936399881 991514874 410806115 638531682 753876432 972244330 446068052 662141786 904978634 946216318 338152423 987990252 514570654 594004804 703810410 848531792 331998373 833651500 360567737 433541763 471420295 854119344 245924408 630035389 434755421 754202865 283825458 981696893 57820245 478393820 124496545 619770189 621553462 876920858 350327143 919901700 85487818 375641363 60294709 925563897 461313270 654510234 103124637 969758167 368299825 494389089 600687415 732074670 270822178 594253535 523380162 692126624 639644152 937294006 217270027 524537806 27472046 565357625 55452060 861899360 65247367 263098507 566041058 814359665 251631313 595743451 969680291 995238826 749417275 922521489 44885487 359250815 126792235 697476363 582579209 594820832 989486719 991141950 858856166 875113007 28794064 542086406 538498909 799211298 823068077 851215575 722791047 931981854 864216013 895102808 99973176 741989996 554041127 822886884 385829115 837361327 93634356 702646172 180814708 447570016 373338904 428482071 661630016 758500148 952852039 959497827 630404097 852051822 824037263 934588670 804006426 920711184 749013726 926184528 192204562 793719564 803361355 966902956 914227122 917634542 227645692 589018164 595543715 721742477 212167883 665035695 188196949 582144893 292588601 824969132 909065917 937318599 506492676 609707696 100856355 201052133 808715963 965888270 855675206 937017028 805654240 898941732 408197576 841425543 408440203 918143676 944762369 953617487 16544142 678970654 558975078 692430655 849207654 961540979 913230750 938920561 603753091 916116953 725064007 747425996 906464036 946096428 247884103 935928365 928840853 967434129 907232423 938390096 885995180 894297821 286595010 320145776 497116800 535962368 759206779 809231162 229494810 305908618 375260355 984585365 243483741 986831571 630279858 694013499 174093519 958918036 582206663 651939883 28743321 374150611 298268869 430737322 509092495 927653581 681444617 731766798 796706874 991807277 362224542 521959471 882614669 908140231 848181327 981040320 504306147 994640761 554239689 770324402 428007863 971101449 43835990 115827483 965149098 967895720 469813418 992986576 637094318 771525003 693022966 909491058 14495215 272756134 289397584 445146889 526692432 633691991 543503270 946463331 133420120 305037240 931454391 977249729 238910039 639872755 891003238 903487100 589663139 670780377 109004780 255109838 120631460 650547213 130165083 540262918 960380319 997254184 889357862 979206570 926027700 967439467 998865297 998875042 751750278 807953863 339029874 402073121 694677933 784717123 977404902 992080019 201232155 829141931 412610665 780692894 620426770 884928930 960395389 995787702 64662615 120727966 691513266 855740471 652313824 747977329 728591359 743138930 278471437 339171235 739339564 931762604 769199769 806852195 524546759 931376051 694879324 868912481 903420096 944440440 908122973 975279292 292218049 501922764 537545473 681797484 437844488 577963151 818551724 828756262 584784641 882207231 664967661 737949095 751608648 892557300 7632351 822463832 867640261 923806102 719853917 800686256 988546265 992404367 551748203 632337085 207678098 899622164 147534590 249392976 976037524 991515033 593593531 883219708 180572645 967164288 62236040 218929369 467245332 632391500 814472130 870693667 786731521 832364668 163002950 917747131 350488772 483577191 48861073 291702147 471652004 935327519 685548974 835454067 180565757 308905153 393465223 785375828 145714096 805810259 164614515 569338442 502439268 937143560 260989920 707864396 814374406 896854106 545967541 845932704 280857654 979917230 859938893 900629599 872590116 942682551 394070819 410797045 975169326 991242207 417252298 819375831 27856604 274712471 184096782 461675572 465259462 973430562 567724468 687877869 482689686 688774954 402347947 911814566 366794278 861299348 399637685 604375713 505278582 648100227 599369632 671560256 566703031 851686581 748334724 889038260 749283718 861182379 722532379 765455438 816796802 882788312 549775991 810077294 350233700 417867392 80283327 894933713 387555728 689745615 899869647 976590377 608026312 993220262 378788388 379389058 930611849 989358208 171341943 854358688 42258779 92570088 805464070 914273380 216441171 500338849 32982497 43725220 753704153 796299193 98066233 670789707 44724855 948064754 57297806 329539295 261234485 731466341 804784678 830079544 496853684 786364529 709106542 975251494 463356405 559036491 963623203 985243243 615284155 646155900 297803051 939830794 203776666 322320826 849678325 907165227 932180411 978596332 288617841 633799618 12097503 251518290 43926034 590779482 469182048 895562060 936339200 973905834 714726974 892575684 990611082 993972943 614382308 721516218 375128973 614653385 89105896 794784899 309070829 635428095 607922497 853042274 204389493 668482924 806066694 811808087 885094779 967468625 983609738 994716876 257850950 882719184 981442955 986416390 312877901 745713823 249091289 984407478 314494122 844036925 444693277 476558008 8714406 306442145 753243876 757367124 718903674 896695481 985372011 990628302 123317635 231454420 169678141 625552798 43282532 526706898 754315833 803214032 418828530 771302203 612665506 952917899 736690918 911024824 448869587 807138114 42029387 791032121 966485923 998502456 232391388 370216969 998217726 999444395 565107878 796096731 48036914 67891609 499754096 835043887 302879129 767586569 614031934 927290081 39338235 837739833 908451063 948528221 926381367 951031883 775398630 786842824 225703049 990936645 120104242 819058401 330606292 981096820 808888462 937922191 155973175 725842340 588585923 820925640 874945558 897781377 358689679 663854069 759550363 994229074 653886450 975892675 502381721 837511049 575435041 991599259 268228836 713556742 283402928 964290278 578620464 687050333 926774618 947274844 757247122 829423051 227634244 472048392 192877266 612167469 525709339 756585231 350867702 977817133 642365181 707910345 811389406 909586153 964874824 971464675 683837114 817551167 622797887 878097251 475153389 734333013 27058050 455843240 396503066 775136235 898925885 942072847 631331219 758922925 980647487 989326421 737685187 830826498 375342562 435994806 993406541 996003424 631541113 708452214 646450229 987010830 499125606 635610342 89954222 222957305 570877764 585173592 933521566 977258596 540169820 783341111 415263309 732782352 65129091 343674440 752363942 975160919 153522386 805303795 891592548 955938141 597197383 626479010 960609529 982065188 208826536 993350651 9112390 855859321 759725863 971192346 262701235 294975548 165332679 921153469 486523985 984022130 380950854 394987239 583680018 603788255 608685136 905682400 545587242 559125367 328262460 347790405 719409184 876626019 321198837 817590835 257314026 763567800 810393816 962092905 928652579 959665457 741833651 790245231 258996059 502594387 517158521 643433796 138558538 478771660 777803486 779300470 698911344 831586688 445439883 979777142 165487709 786477264 554820899 836298094 301348556 901490369 8878051 365840609 864986367 955358011 302906383 732978734 668580511 922422409 362718864 809386799 332811399 837290364 836109442 933147778 199760143 823974149 432679295 710760216 935425047 988664960 211179256 548406397 232645659 870385625 939684414 968210397 753335250 765778189 339000553 799804840 153400956 650580368 523252699 825042909 444235947 911827312 47789377 913114963 848137976 932872813 484811276 579940625 608929885 773086939 559496519 755510801 693340626 901761646 948941075 965684978 717430943 787549061 593535165 934076575 524686683 573965185 269768624 425978865 3341280 314510386 899518432 933612109 101462794 537886570 417771034 592879600 252463103 588504392 786799930 890097765 324167654 376225163 61027162 522321225 216768257 412478945 440644340 567963441 842893246 958705110 364522380 573236221 78676582 769124765 617274197 817870093 815506298 903023525 383220844 793835025 540850317 940533625 631355854 963500938 262336108 856832506 387763009 588885769 168957168 921233050 540468395 780229194 106518342 208480346 994093982 995020548 540706874 727376622 282268553 845046488 60311249 533513309 841923834 923019959 820159935 964238510 654985394 974491879 30392003 590449154 908027555 995229613 734877299 898668024 995415322 998651286 321569275 463141389 490328813 684923894 735364629 933660260 334114293 892161159 494492010 740768713 575140682 738782356 863094677 976343143 282065685 298123909 45356918 339440572 770060492 988982638 574861946 992199611 870189654 875512061 656946723 819362232 761685013 881032311 202764113 882987189 30088353 305821720 423662987 791382368 470880870 883109068 258143823 348420061 159208191 528176074 348630173 645087244 750867356 897786406 371631425 503281287 777962498 848667039 914270939 961524543 809398775 970654676 6109572 633501851 74245539 969598587 661482217 814960253 69249736 680080177 596694976 939877378 848486257 973325691 514543127 750226424 158819926 861007320 13175416 386237490 553600166 567905315 172743707 927069504 694528472 907470580 478211067 850697786 843482112 997723695 369853549 639232315 25331362 134271916 24429832 870492211 509517396 685342540 402377611 903278478 91284391 647987515 157862386 236661717 463957579 894700287 913721823 936849248 640983238 681843905 394700555 940394429 127665004 490558209 259007786 467784263 944184738 967008583 846927170 919113835 911717267 924708247 846309722 946320985 268473415 716264194 451015610 966224094 748183953 792681792 66565910 178777188 26186053 926905579 358697663 844357300 8483670 939084437 595705658 709233565 866127660 877865667 673554713 851458942 550392313 624951989 839016054 936272795 655623824 796265296 842153101 886819817 515823923 563921014 790617153 889916568 942995718 966339904 37174250 71674624 104999015 130506928 455931275 529168224 979178512 990279404 705618207 968147071 26016983 506727814 960656882 997104634 208271797 738138150 699225105 724251489 886258419 910757233 522896251 869356245 384158189 971298989 975781478 993421425 432830513 450981142 491838527 666469261 36926190 256949082 818982660 940534615 181790633 285823223 525598241 956258933 360132296 622155894 646868993 849804519 119856544 146803754 685399038 973292576 525834027 582700938 481162594 577311042 337240120 947846462 87270674 218468318 418462133 656815834 459167449 823483363 803027163 939342661 744416656 941786488 567058221 765487142 942934674 964839733 550624783 850870721 270115892 536075160 196292542 473321882 102385062 934451929 729476417 838808684 852743987 858105271 4851722 214705077 881874785 964618870 172318 482801089 287321463 907048809 711128657 814090889 852731244 909617892 343978119 903841521 465875572 743623713 247678208 985855899 502686911 756701911 50033417 635881169 835369014 843082013 70419303 278104423 373195523 875897210 25011953 549503728 65649458 791312875 520326159 743231813 13530294 801548574 835565853 848035116 962920066 963220340 547501947 911358226 142754315 975636009 228411450 722934149 56982548 430400021 146396464 744130536 339244279 909546836 760262045 959106049 343221333 837011301 926133330 933513740 156971289 687970445 655754299 763337336 241902668 398223233 300537104 665052333 850560895 987759985 625668514 856142599 625055011 746530813 159584794 867011530 684636034 686310352 78437636 486595528 638643638 707447467 269981033 567943280 522963694 779347322 188038233 278602501 81189824 740779476 183644387 910685059 722687281 800197006 210297154 853661016 596857339 754389819 1919281 860464508 608584675 855570862 555302703 818847830 199514400 894670028 474921769 732489401 441382258 968560764 504752781 778925574 851306902 901039944 335418449 637987898 105403303 334961825 632208861 887240465 130573069 604655402 357214583 779610991 760312404 796407904 487124305 804138981 469874520 573854079 271346375 652710292 273805012 641604418 956168096 988520374 337493142 919992943 241151283 399629970 564774284 805285589 522090014 979797171 812973020 957905615 566251396 997233447 787581199 790651001 673107045 808416305 521312707 915850620 307674734 942191503 187495343 870121018 9559875 400731307 554345464 764017763 487187366 646937495 71133870 896893355 829870970 869102915 130367568 173758051 567589476 978455205 603607969 752973348 979792223 992447816 466958278 854676533 31082976 800949508 886839971 961254721 679140469 931004819 374124702 600625321 376581779 728360661 273864376 904484304 525811904 609531388 536343951 880048137 500441648 843153992 717203604 964598649 393032290 555908796 398155022 988443026 187566963 966445075 71092721 169820081 152658358 198272459 980278876 984189071 94556666 639126313 892335093 919089321 755567947 943834369 482585089 730414962 809053738 829725487 527731512 973050818 330268566 843842988 135322293 539863035 872073678 983664619 178057466 971235719 802965229 937681575 510015413 732723307 286676849 675831649 154193226 678654006 921775323 975328032 332845795 670419762 130563427 205385365 265168569 849272455 751108557 855694583 835317362 997532468 496202319 549825798 789640151 923198419 131604161 779744079 993382054 996338808 375233417 892606060 577100408 625545349 805396569 840017512 769629182 778840060 708955792 914999085 4528366 372967876 123961988 580094063 902404816 956668421 576066409 613985193 938037679 978670379 606563365 853868304 61806340 363600187 248909798 904803595 158052331 235437434 789872131 835751884 306315893 674693201 741975748 778125097 624316585 782823467 336949809 672265570 13015662 358562644 937730849 951735609 605185602 882576358 298937667 679948071 47681039 951210010 939814183 972875711 841685872 863801236 921845636 922078479 292180216 666191717 179755402 703100043 145312426 640843746 651544449 785067492 673281399 855133271 577807892 639086358 270640788 666560371 844181673 905107738 931359240 952795171 278391823 866112494 660530273 780981317 238603847 471737531 905117940 961855290 789292917 790725708 512236834 515596430 569861447 792099222 517887273 765959607 515473071 978874906 674438790 697146966 447040626 556821604 38247406 740819974 677734947 783635333 387641725 466807279 749353597 972695013 83378072 592729057 276044909 822771040 938200033 988603380 961070937 966595213 442875405 829674808 459322266 688576488 964321307 974554304 197991132 459645304 135500467 323691649 910028559 945530263 390292220 765209726 140870386 261867692 538682766 948659814 778459724 994929511 348009534 625250284 697102981 915774862 877796548 938327027 603313967 616412057 484129154 496973335 627824222 878045757 291532971 353207086 715742322 995859051 885009155 901621853 753397034 947626193 361411076 934554458 112004401 797980452 38951053 669343962 621234240 706298865 735735881 919874907 103575625 968972184 294520285 688514566 989014223 998231685 271198270 834435955 550769199 835434296 922765790 959855502 139842623 983536262 951070811 955141849 399908533 519130566 589028321 869682618 840761886 927116900 518881028 936074567 106448246 244883719 632802328 776157356 716728388 841189529 397481223 983664173 323731786 837084254 911695526 963245484 654799160 699231564 881563964 927986842 401647279 677578321 873473109 913932202 302049650 358225808 246992047 978861838 49700834 629061700 701317094 853138832 127288956 160626786 900859990 912334008 176612491 451204731 534690771 903577618 835414579 932267807 738418920 742802172 855433025 971273336 694640146 756038434 720534041 833746773 826632759 874010960 472558800 637167362 504132541 866511685 724978644 816082260 253031910 523102301 501151176 637182393 992032041 993587398 508334030 669214861 836586266 999745668 244414780 884117836 644181376 882648584 608374046 740801668 29694321 304335271 235178438 874668224 495328557 679237146 378560677 749199925 220477979 374912709 547982681 585223605 619046310 827932643 614225184 728154534 897393659 899668674 194753076 851141650 397261014 649180986 483182080 538605452 620068309 670321915 694198573 768916862 600821315 963124559 746692912 958095200 685473210 946302885 119191990 234926939 653224777 701333360 397772956 509838234 248682864 795035897 889922723 892658474 380731038 594858093 705380288 808936196 935214499 939033594 561777983 629497518 328797621 546383636 289746503 905427514 802515896 977560442 100696124 951809467 810254911 878217661 495620682 622352042 7753780 907394723 902566177 931489086 795573713 940542338 21942638 564210048 201633315 667267602 931811938 981101012 368201970 481384381 476087731 547007510 666634945 858902295 582385136 848499314 408520645 929281181 255261261 720818475 602772429 628515392 162272097 701125355 999174717 999828088 130276873 575037675 912465871 949899650 485921336 802323970 62642273 948237734 439867677 458944078 613065551 807106130 65951180 351517552 501328875 982912296 243192878 501633514 425771554 845428227 926919296 965950648 554000116 896749677 552229974 891055018 817816961 840405859 203958563 365843164 893980838 973905739 264771488 850601325 951076309 987728695 615906358 681161758 883726751 973876011 778357540 987898348 659226896 797476757 889253837 939744328 412181424 865420410 605826032 904296241 605948664 985395178 171335522 488976103 584980772 775429900 93233199 338127285 70616353 706373606 582853006 833577147 172566520 525804059 256654443 938126025 947871140 980701811 610905175 957631905 740457768 772955145 28486709 753603489 168906696 461477859 878233823 957460883 118181380 410957399 405280714 480075908 121689799 541801321 259947213 701219576 919892284 983736245 880876253 882347044 339044229 674706207 759861526 837528861 494633151 850920348 246444635 662990878 839630108 895126430 673294977 693699906 835915815 867805574 203874346 551810530 568658931 984583829 929289935 940228652 796642275 912735704 818758898 956089590 970736915 978318334 680847363 962532220 989826895 998411861 57673537 316096849 656114847 675397546 786442216 887469526 208559506 736556922 624877470 782948400 844629449 851868166 993436802 995320685 424498511 550987947 648927041 867163908 19681944 933136724 607013811 855923054 789808852 911096131 777758374 996917511 875503079 983344243 990990632 994790108 994200988 994809777 97652711 201352714 945585054 957259439 140917692 508162736 496635121 858793063 67673772 629447058 269296226 653661020 747245039 755341467 566409295 879722166 918845705 961024007 452079920 918393096 132855542 657738929 435068967 522207008 307382681 942161555 657606139 760476241 929543161 967114317 465110462 727068027 573589943 830040049 877953098 879947021 491911165 573114094 471084035 911349464 342415141 990042189 420604383 527805197 381484670 917792294 240971176 569218825 579720634 767404392 640246229 727167372 881990644 896852944 703085956 950087532 185912868 737116776 317192927 913855822 789296196 864843310 527677513 738381610 192959678 956432830 629247159 630858202 260817319 860633549 722019216 826984119 671679320 922043518 92401405 330017960 732719132 902527100 443386806 932124037 763801587 881288620 168891446 676635453 718230275 855785338 132913136 163164239 804688158 931599156 442049352 987196668 66855375 961696179 234260295 699476975 219674809 304343640 522483318 716714916 145527399 296161123 602565748 716536502 652116709 868334691 965787754 996695848 241931191 289245953 220783514 404717478 678004116 690594233 267568345 324457048 503521490 610853463 829924169 945973723 719989905 941270691 995400541 999009728 99223210 189155944 908127439 931238068 668251792 928118480 131292700 421999693 99218733 911922759 883664286 975025432 840671338 988067763 244347496 480517944 788732756 864002828 918167392 958656865 24217294 737045176 187638524 742552098 80951893 325757048 326378691 956280010 741350144 861544005 752650332 928685027 943244318 995788284 856687759 892003749 89129624 837836365 148208437 523186074 25502552 807684232 37145803 684023784 25576874 380708381 83080880 188609346 719497745 849522793 135176417 772603115 463245639 664241060 702893100 940483333 891099049 895563371 249932723 589551441 743446330 760766450 934166682 945485191 30083534 932753366 211996494 269369201 517714621 639603763 338053620 545079372 510352028 743040774 302435352 538921054 925277511 976822974 518342802 769825616 63559032 849813846 5469131 888323016 546009696 993067740 203269378 216416619 212063430 425769527 709894917 730913215 160980235 319639685 765954449 942475899 417413788 623472980 873884563 973058677 393523573 504614250 965882176 993896233 827573356 971998390 157873557 584988132 442058124 700022385 364070480 424654346 257347003 939520822 808143510 984064627 123020000 552843531 197974957 492899400 419600927 600768347 450126782 729042309 814306289 886728300 293575996 994622881 532270330 903716747 687580433 742045622 85227668 696248930 820729282 934340659 640942185 679381136 880952574 909435214 770106400 836458885 721616082 747159739 910893162 957090074 285318553 389645833 484293507 637204266 543362652 820992613 592216855 902246292 806761326 947478713 215172157 441935329 497076017 646600023 526199705 985517903 583853412 607148636 961459604 977670678 186639869 798021759 416710803 976476565 949475061 980746657 819942706 882773638 306972841 957116863 796875457 998363829 667951358 982735849 867130352 972170435 413141648 713394226 482765304 739294451 795035707 885930573 967088700 999657767 903922428 979360301 679794751 768187619 391358234 789467938 194129604 751996239 744304568 764351484 978454115 982522206 206715576 909194086 878683114 930299367 348922000 484992108 64277984 423077951 939629758 987645697 580733510 636835493 542342833 607483252 904481930 909745979 516338209 595080310 136174193 782622335 824319862 855235923 169128308 690875278 631466295 909608377 971861770 998069538 887798331 957586034 477272300 791827932 102414964 147014440 383385047 618073208 364665294 832741304 227040753 870607070 830719795 976801508 954631033 966273259 512784819 576152107 767848417 988724557 359039192 381689360 899000039 956003853 604596686 904154932 668318997 730559619 115468142 514295591 677428376 865834502 847065952 871693558 974096085 985126776 721029897 760361357 928561350 945330899 260879907 842524660 555571263 567244811 838567586 950429533 505229783 598067859 655157362 683908557 963771896 968483865 83402503 980008066 580029886 732362549 289799597 587969030 565449044 698451431 123707559 664702437 600910714 700467748 969098477 986043071 922157093 939109560 706379901 747996174 372954436 680059553 218790717 308086900 6598233 801675642 778683325 981338922 800084788 813373752 732615185 747422835 766638878 953601434 257138650 602018252 155634184 392175517 919973518 959650342 753484118 783680170 871395487 876175484 409609546 623698370 750982657 907342805 507518236 602450852 130573108 149974882 671172082 753958084 21349411 122891120 619908327 684493595 79506766 880355932 275772927 521462107 263776217 743930818 388038633 419523103 560324025 763568321 667848862 851268614 288520340 952817489 621361515 730354467 650481771 770807916 959701162 994431976 930878735 943074469 848756603 862693141 825316364 963247102 220491739 927893972 436738675 492472978 596785261 763099216 364074811 483613095 948206245 959161553 513549438 748133395 258486034 978311790 605731110 679278662 675370418 778931224 550037660 854759886 533366157 552993797 303616936 414777220 155653735 321080445 527290335 651971011 722889196 767147685 319391137 668084748 656360550 841486199 790432732 854221460 971098222 979159489 597123033 655338697 555821418 960907187 644675359 736291466 372141363 390798051 495291090 528989052 169280539 542996936 28419792 883248008 597923519 883343225 570147897 621783927 501121666 544857020 83667675 302023633 177958674 781124108 653775156 811086963 476181308 694029334 284974506 634205581 556259304 981829180 517734590 900382318 381442709 810435864 91351176 792021858 179574136 973444893 694423471 959702794 242066622 516112911 423761617 888254469 494661503 924604202 777591885 823602767 478374395 937126073 319549149 872851626 215201406 783363812 561710809 719913530 388921064 811088579 471241034 924661376 222392826 465855625 568327860 845813287 41470821 89147495 288070983 524102901 134405668 152175312 120191457 235648102 566069754 803553772 330343535 572300558 964084963 997842059 875670066 943469822 540637765 835272639 778629050 955245172 134730801 447123921 825276598 990397191 347001830 943497448 143077794 174837722 939392385 987023527 218031988 513302600 297824597 364097498 168154646 279001650 681328224 867113606 569802474 722599480 184153488 819328527 668626790 916040296 23634076 387729626 547452953 819074415 239270670 422403950 964764111 968239065 514639076 574535257 302226062 530846303 417420975 866140743 758120402 789035344 895331826 994918534 502137752 632749049 239647606 499555674 777919096 870048994 490080539 664843559 421784383 617354525 88837350 890563560 49187015 750009000 268285874 987996864 764074955 977652908 281048702 657240512 499550737 698944490 841331705 873962247 738500623 782893151 202351674 465801644 401345391 696097278 298634039 716589290 204040982 747453726 825444428 924066453 175498692 955852137 395978836 723246419 180219162 207268635 543570993 623955590 634166553 993577550 417325694 893681892 126383389 735079348 638897380 759902314 871207976 968605404 696395759 990091795 243297432 420575901 645736895 980341850 756799278 926126460 634137192 663959171 820929201 849158924 170301425 807711476 414394444 461458267 554935445 593821894 906177608 916897027 239137633 990780972 840442320 976758213 852164143 858183401 954572432 974530903 57818523 835143929 835620935 953280703 246652811 626179637 750348793 759682513 794194149 995195010 192894187 405376653 261536295 889123672 434379034 615147172 943937717 973816579 808910752 871884105 453201987 800017933 719713182 729034101 587578433 636603214 60440398 911158938 951818830 996171049 172995107 973630824 522587423 602867925 270672128 409379500 950395381 962986164 36707213 60775990 739397538 865299936 498134566 556186160 235639000 893118345 691393203 692855428 600344937 992108251 733274748 806168675 647698831 943519931 421819392 445982576 128500784 930456316 552845066 625094498 869091887 872362138 27409179 892323106 49217570 719488396 747837572 760680497 74511536 463671326 216009955 282970565 91242081 814471630 316658277 563890852 760982397 784397024 433475521 839180427 706884720 710647437 139262563 620745991 585772428 694736285 259102266 904667425 678404463 702664864 586421774 652470197 389019275 816523008 337907347 976712340 816307568 885121177 160482135 787399861 441075596 629741445 983191213 989583042 347908001 609618509 552253323 673974456 568743193 966881551 164282881 838123632 389851612 908218331 100511537 131464954 353518758 614589464 180033138 900159246 547171879 687989784 630414758 857145072 946296584 961780386 735232420 893960261 656821951 848542467 65816441 777260167 49153670 851274069 837845078 857572555 551033359 667318047 82538242 663475706 630780740 993923353 703385600 893149983 694953908 750768727 129350596 921531580 426158924 804739175 116343109 546284418 841241630 978395426 725693837 749073624 254894083 754783013 749152143 980092829 801997308 865548916 386733779 824873034 288395613 484721689 150035395 706529767 509153765 868590525 748387036 860564875 393784219 631976068 909696384 985901696 403663374 714285393 55117209 589314174 65129941 370324312 206781963 462537065 222207754 572609063 477401852 794496939 594577836 673068010 331112115 465056483 821965396 963161191 749439454 802260756 90252295 846302869 100650474 146712105 514251945 924235281 287330856 673992771 934747413 954480942 681357968 984544801 653349965 842491605 431531484 982905444 563104135 897329111 186176888 582328105 379031675 420803253 376559603 472915558 67805329 551505917 768268594 916162455 958155587 958851164 863530949 994532812 938171679 939476513 413242625 584530441 189047208 797139983 669497424 780997965 678936059 970107074 274419642 505427037 475862509 506355048 131313060 196391255 520254988 979414312 571034478 878152996 636788303 867772668 864380259 919067814 511934335 829006688 233835569 690459337 737614646 949381039 393455711 862767792 474442789 523564535 286025874 439067245 505082372 540269277 1648928 274249852 923212519 924967939 105745029 438434879 204393130 735043581 221788197 478026806 392102867 892893472 325768972 341361136 170519055 397409295 681251260 790146586 694805899 806310526 89147668 677914015 580127241 954829487 880932806 911631037 461245881 811498661 485398707 828124922 748078642 898510100 773801144 817835062 65671152 607832989 188649641 931737360 127535500 356876469 962951358 986432387 662582849 936725770 41599038 906045541 838754509 852216404 577107 7275487 107156619 271545529 711643820 896532777 311550887 609519601 773460570 837919139 17199405 324236547 20710114 850570989 185741489 194709285 257824908 868401138 613573295 732500664 351812270 880742650 218058819 557819781 228925667 719489005 757698793 972972642 450162207 651228893 635779682 780993160 878833894 953841297 994127722 996703114 243367362 820333833 955431975 983205879 482541680 984369519 879559800 966379704 176687675 377730835 787040869 875448963 165302857 231798433 365985318 886383908 35790770 560631195 612012220 714835545 37598273 64216633 867035931 875970658 342230655 600926055 118382481 690770683 100781087 472710629 293353000 748409522 905235301 926882409 508814627 696892263 177414319 742126128 818593374 902147764 423969875 485070198 421854283 472980821 184871416 656727610 379424282 782253147 828364150 976560658 491516166 500247154 30594960 308368435 833642268 929877370 302897277 786045296 747741723 991824911 456574601 540038511 326139212 741537759 938258264 990460010 364791357 501301420 361090362 579309534 602826161 886634151 356443411 485514951 596940602 767280281 445333618 581402218 928492378 997717992 613123506 913225104 86562912 507438783 696917443 750307637 914336817 938141678 206347629 524048316 636447450 868832854 187390624 479109392 59561517 267895723 14979001 864418701 420168466 463597686 443181072 868915445 718453892 915895448 841535476 913488479 291880484 559451144 673656526 971532313 118219007 622382999 406062035 964367872 937260085 993103659 866987006 977238444 701811287 748860626 822496340 958439467 323203529 467884856 962813907 998590496 433304748 554767626 599592245 955158075 933248923 954254348 203633345 322023692 57066410 245524535 236306440 686137509 994502888 999483079 906910016 922731146 585563024 599384693 171826238 986796426 392908713 823266789 895518520 937225717 709469391 813189909 780917818 966000475 330466847 931909325 78458761 673036057 516003878 598212517 222959017 498371274 938695958 970305664 318250713 650148883 575187224 720592697 270725565 353835215 334698603 900670427 697267019 797599415 632996668 669725503 349871301 973056490 734627534 999079573 378189620 965821125 661691449 904992380 44020067 924912218 367351511 575323643 558076185 896631542 324387414 488276796 989373369 999286823 223410939 665035680 11809588 306918061 811054279 874804733 278306833 297017222 494825391 716644485 658813355 685879727 177765116 498253948 346583048 669108448 176731681 503203991 617602850 669473262 963504966 997978797 470373328 834029454 319348817 960444635 865296124 933976768 474559870 902827448 311675483 359727749 804394827 953748051 641294791 952413384 468749917 923605498 340951345 554230966 977169936 995286685 760168323 774918351 465905627 940333298 254474626 464209977 100742096 587854866 937674568 973288205 339086335 619776680 729310339 865446431 927222706 985601140 20027906 63894017 628101251 723752168 12303798 330882681 288158171 464375300 507099320 553301656 535717293 793932993 586046139 697113664 300422680 509486648 655032718 781188108 352065518 705739857 521039589 665496903 846042882 901056976 6407599 360829667 198999513 731908493 914548615 944097054 617799859 787383194 798104390 928298040 155150679 953472460 220187445 917647357 88261942 762634405 748852661 854193712 93032183 354231805 479830701 650594563 289647421 967705828 819823717 894490300 559342380 743115741 421637336 444264197 821512669 985251990 316176833 444190080 239477639 438671523 755682576 833357316 372343696 830484266 426360523 887914085 769365049 792915640 298266006 955177961 187248265 294797437 870820535 998816908 863743789 869470408 942531149 995164309 959190360 988040589 733613773 781117952 69514135 96747679 356600835 685621826 731270025 964474987 791965830 793880207 617691746 867610232 611075488 927956495 704230734 851830494 356920589 802973652 550460785 566253717 965528911 969077381 797980808 890954838 768153088 883755725 584546047 628297203 824665504 913064546 661280323 702511622 840426258 997476710 464006640 621468062 621525324 687079376 950065365 969988066 553855938 921948756 689782037 904485639 318359579 452074302 936120510 952341047 804726653 880571687 265185410 855606282 774966425 984882637 269170325 307806469 527196910 873107123 142634121 824195022 135672766 788302197 970168807 994390356 206431364 701368792 790681349 956784922 712312234 759803042 740048950 821039971 416209004 824826893 300421992 981099433 846097067 893247664 657495283 951859999 213926221 340958640 351459325 420207820 92584311 592170217 155503815 317243198 710644917 910940125 181655592 373908894 16932193 999618989 677317753 892065919 208338016 770874801 484827385 736357793 502465154 787891760 577828948 627724622 596528411 872564519 316458758 835966381 850912771 972026196 304244612 838870304 707894612 957166368 360379109 766494495 428329924 627552124 601828639 989617044 248221704 634244182 499289448 776815609 15121157 233454386 623681202 915551389 562730553 650105579 327546115 434517730 650925959 916969456 13019246 738308795 434101462 814194725 414219107 443170321 51691049 973507128 933028373 946158346 688431816 804704604 426566922 766986289 667803405 687860159 995952913 996240626 983580510 991103935 707051535 879372664 738314227 927448597 195138889 851279920 426206182 693767157 996853752 997326179 136361658 992962829 400497479 993754312 810601511 858235871 160609650 819956637 154565451 534260478 199560312 587729236 489419214 673574995 74349673 504252793 646586159 842897770 632621930 848522400 667805715 968347286 826061375 974398947 674684443 829766453 861591031 977866781 842148475 875251832 148650033 434955771 880210653 958710469 355935167 427610522 662449469 725068968 893582784 970278141 449638902 486616462 202177096 685553861 576981369 593595809 413698447 734785826 591618710 755958025 890650153 898524381 227770613 424556281 796821931 808887184 421541799 605949968 714643898 878343419 319856467 831371260 985151745 992084007 998423569 999276979 605057002 969759530 463450433 842081028 781279736 857448014 657522354 984933081 529885337 970284082 720969970 908481833 692507712 821406631 266085741 676041553 243094844 983937930 711990835 969096543 925036513 935146163 72638897 835583923 159735853 834138239 600868240 863535157 479926577 863642930 613545711 868052616 440125331 729501063 93010494 357063176 89553792 218953021 297631954 433333923 741388295 852872748 819661021 962601492 738098929 828178815 102831932 639521164 526355162 701914833 863837837 985083350 977698306 983785610 897793381 932623999 593053275 728112674 500376560 903623704 775464632 971438730 718507 388885932 300546147 313346905 609889637 656097479 775513565 877011893 789249488 934378625 974318043 982502453 574591772 835671551 991565067 993405102 386272169 767402827 681838959 777621651 77370520 607368165 24186050 162074989 135557963 526048685 205999435 752057352 991877941 994740893 300816877 477621714 981405998 997989439 14969244 958108893 267826596 309659908 80299036 856412785 314397252 394592964 650119390 876534645 369396476 686497460 843772460 876201457 149692370 158004247 47021779 103689057 740924499 922017782 404103290 863751657 699910040 900417020 530922189 873364391 380533636 527081292 689104649 834753623 451032554 989738233 894716824 956116165 236182915 279397458 985431269 996857410 461934250 598663701 878544282 880854923 385782316 900679112 823436988 919839109 435935768 472659712 834112732 947626294 595401124 881084848 311255693 877739795 110621975 984888080 170940087 698164307 676304748 922717802 399063401 494702033 744925887 868722847 414697703 930395833 761428408 939916368 164230470 737570323 680211064 853301516 578108248 964933325 35089598 195133118 999374757 999951398 961079450 999309742 39402627 868328333 868096736 937642045 136301668 419600840 917460596 967081192 432298854 750866745 355457541 574652448 930033713 969296013 92276960 382406600 190735153 514062907 573170931 777262801 939664980 948925778 674736683 919165671 774312551 940422708 455747873 943912711 404958953 666783769 956722272 969677849 610088879 995020478 371438322 809350993 292879462 852137328 969312554 985326389 257520399 390605381 225142131 314893110 406043788 629511430 886871325 906503458 967777584 977884805 684657007 986755268 3365225 208785969 477753754 927346290 642502198 796803173 836385982 918728948 76594850 456740468 266554192 412819251 963157214 969652884 771363347 968181950 647679678 676798783 652411693 739470180 88914677 211281711 716194635 864432620 6239264 281779669 727929725 787490612 196322034 891883695 957457089 977074997 239421079 298184233 391026941 979698537 967600739 999976269 789783622 991872089 347638944 371811863 443623000 916821777 446778567 859068183 220509368 394492755 446267879 981938373 681853629 902837940 651882393 832771631 117973001 751466189 135778685 717876975 609823773 751894403 198847608 535198040 777845822 944158211 474565219 641802215 678577530 730653137 962539173 979111073 474896558 767399131 47893828 565615694 806330715 820878662 496418992 508991794 759121110 832380221 567586082 972200947 794630495 888550494 983736725 993852969 18697214 799430276 481013535 618623218 907472164 967923141 850977728 979166495 375165981 864111200 41525770 169153059 100303488 841874248 199373482 375875176 606281717 934374907 33393259 51308718 330362585 332632493 70659048 981089783 119086652 828194290 346403633 746458943 786970435 966724435 667273047 813273862 121356595 642920347 209159382 781452514 68013642 407802071 45883858 719767946 540868768 899898029 585343126 927882137 460914662 765557466 653212324 815421264 172779832 940465591 467116994 577085201 234803061 497177782 686255560 913070146 710373603 795093776 764382237 962637986 971295273 983161080 411979240 651920269 397358795 629450265 301704736 985088118 810112683 960580242 807248287 910610503 797468364 955200528 635054031 845988076 165219315 379964565 849240144 965468688 369415639 709633920 345262135 979006609 863322414 904202389 292824469 635659715 263774836 590071264 670484512 819011063 25318420 627510179 69973096 633185060 577937040 954111661 183831793 738056373 503241308 800651612 601984434 807469191 102907856 560607764 143869647 931439580 286174469 759705278 657476701 819084311 193699767 585727385 413281909 721611048 63684237 195018161 744519271 962402331 945312695 981569805 347505773 394503446 816020810 997127318 684570789 950916427 381944639 598071225 343348367 504670845 626570237 867938181 870486749 982595991 208732955 441817026 594769657 670908799 115348754 194377879 550418679 921494590 403837480 648427890 840609372 876280055 47041295 128506063 309872933 879613005 591952738 906832335 967060491 996419599 225842652 646862240 114114882 655348034 789794813 870628154 746049509 852283338 396591648 735773910 484866066 614848284 771429623 780308317 629005068 654462116 630863339 980490997 68146209 659499315 605940529 668134717 490246326 636279873 948040745 948196270 340478674 987976739 344652479 961544763 390904134 506122781 904073368 991032286 271028040 733126578 794852711 927345196 698347742 823756342 156512220 179404158 852225892 866506879 400012618 939213834 708382574 837897654 579519079 657194314 185523971 291742764 835938498 925625429 920926890 926431914 288659542 764165389 575842590 953123233 520107241 790492165 53690638 646712826 818744700 985456430 803096936 931584559 584191839 731761430 524606495 876364991 862196692 911496613 447368318 653085532 483602495 918045884 563241952 919891023 257999636 447759015 498006455 652840341 219223931 626237326 179826413 797191014 220777972 978625061 195420328 798060069 947875219 991680942 140673814 667973627 516199360 602228919 444896835 694509583 298276896 901296560 523166616 950080492 377399342 417689074 568824028 595655763 517257034 687045115 710835795 735056959 131789394 663609622 943951689 995133778 476295790 521616255 702076625 880710998 170473713 454694727 607447865 820213290 324161270 788170592 376217295 536911440 902498102 905062964 806181863 895936762 543765592 757403784 411882306 987179654 484732276 847166761 305625279 426595040 786732566 851482427 116152123 631058268 769071076 871918951 888174956 898327238 780423363 951365458 928722302 937599957 175369970 516544925 507162127 574902370 852066095 997916100 262022535 960993181 703532169 706512680 259827620 820111634 895242576 967168902 383103876 986047006 888676719 923952510 48922961 683959004 826048221 829100495 286223764 467511657 674862737 769883603 133137640 791577174 886860102 972572603 934704642 958628496 972747304 986249825 947757336 986029282 477358276 991017884 909913211 993065833 948251524 964270712 387896563 601334374 493120633 642087346 277771592 737539908 906357905 982635613 889784808 902249532 285282148 302419799 608499525 990090303 657312194 921151330 685941706 786666511 261326362 377555143 973022042 985411981 756444705 975051253 404422018 520857136 127011877 225267680 228957451 820780080 529118840 542556226 962030140 964812902 46252693 287541082 422805368 758364166 862286458 906670560 449972855 503994584 706044626 957729147 461122863 649149946 554035664 763504964 245219595 762817174 472373007 824398284 369578926 610097460 180746364 186603490 574922270 653554745 588014684 816984314 174644815 541927981 436220419 617868579 78860015 243701043 839394648 918679221 24691462 796343989 983964112 995637460 721169643 941492022 775946882 929370436 372809197 890865361 763542779 975704203 843112198 959779957 933930302 988791263 716090536 770611571 604252979 730444794 682086155 899715230 827392400 961963189 483588628 542238261 644244785 861257725 801083776 993073543 687776880 979829310 679687883 980916504 137355577 757910790 140618724 179030683 346669750 565954160 838848334 987900566 801489761 937412842 255716078 485696543 371793682 879378012 502905140 964491212 253398580 380764752 282340292 672073230 525885871 820958423 848784483 901026667 995807173 996186860 738776057 897241550 496316707 968020054 595870980 822765668 877928217 949184904 444969827 828654177 566165488 754196878 371872670 657830136 576400276 742247148 405035212 970096222 480353234 632475501 734036528 983874794 720659427 845550875 629245205 739173828 588861627 777795247 51893478 432939616 282148681 879745528 722150475 981263311 824859632 966181809 489034178 691771696 603155593 719482742 256361393 708377757 942379164 943663798 651734664 951695954 204394308 383012979 590313197 827201145 451972194 805038413 659557750 815448815 121551168 819109922 542398060 904417490 772276075 896213355 680384201 805305002 441160402 850689727 699057573 716710244 415021757 878211465 242401409 579777374 381793178 510111311 433370335 642596026 563976355 910019927 201108890 675710014 954227474 955438814 548104397 752181162 809189528 901655543 32601490 101415302 730986159 803467328 949048125 961232856 656831622 959998167 836165056 981773969 509531635 583181298 622086890 748312682 663228293 687297772 871469491 995001162 211662047 569780857 941539571 988636526 65909174 744089340 505663408 650134142 73425026 524626776 586145281 619857148 336923289 990082856 140900003 824694559 563454892 743686466 547407188 666718810 213418484 498067227 730074035 807696114 381670317 920119366 837500582 934925022 624957098 993423217 392666443 526288160 777908364 797179919 656308958 962674103 311773878 360721901 195705641 921415762 658101379 766101298 701484871 991227838 97302592 692895043 817131626 971140410 857620416 985140630 426697685 986886168 761167273 820639451 133787566 990601414 908161860 908313628 139433220 419086878 861446975 993980441 910685737 944679878 289814926 552942579 840425241 854517129 681805717 745886524 149407931 713164678 627366954 800739878 217930218 579995047 340020493 442970654 271652125 692136491 869067807 889445146 748667646 870071260 299963751 744889993 64485520 519206477 534961113 606961620 787520090 913389609 705220146 998155732 276503830 543502151 868921618 887721663 185895319 767437045 744237623 948836365 556983209 758198912 635286941 658101385 131562497 982346860 401784290 479221184 955118915 968828752 808785952 993237153 342456795 786755221 413292244 860355118 153549264 271707305 968949726 972978334 65265818 117484023 919260145 928000850 270214496 798130094 377436587 729088596 554101100 785545916 869977568 957570119 486520801 760387852 344559247 934442053 372383223 649434606 530179749 888041856 864091821 896744303 239015730 806659777 35192592 230531226 730013408 830459346 989440743 998759961 741104418 742074197 22895641 781655678 678752098 860542775 817099921 863829432 3544872 760873020 155512713 682411866 304837938 698338071 421278174 433761611 685179761 843115544 78019476 504738242 755887560 880960621 368445048 547349186 398847016 896005644 353881070 939823994 815961903 933913378 97439980 170408018 579640527 883586565 47761701 809520134 903152623 967295556 273022453 515953685 395434328 892928528 332030606 507645029 622641139 667826397 355793098 361653732 942413097 980825749 742463865 960482648 377406298 640616955 846797591 848991001 77152665 799744441 340298998 340413181 228799151 971898516 761204053 888092733 741761070 749583832 189785612 762999600 424511033 515554439 586167465 942000765 213578205 813349798 68434361 440359963 343247243 761310956 163729229 690976717 145515142 582090503 483735945 871276695 114359784 620482692 984742466 996714964 535452385 574348136 617735664 713808659 37660180 858723996 40955093 468383743 182117849 430743242 753470043 925717557 179594709 469549222 502953706 598613019 650436726 838785399 668496859 742855252 818306529 861796407 24983915 326426570 980795035 988354573 780815470 969956044 292529187 679044646 594250852 610449597 384302023 610407136 83500835 632565693 34841978 408224047 585609937 871754130 318691650 576921601 259111693 975816975 668190885 698460146 249321722 286268314 618068619 655316704 370933974 798953932 434539748 514225093 477472159 980064703 956989542 996337823 838733935 990454874 544279221 645222310 750617354 919067658 232241811 546211972 11122521 633706577 898335287 903144677 973664656 974365678 500513671 933167468 783802411 937643336 750205561 794915619 292988512 585988304 909465386 985953378 177082194 671394050 274139930 590584258 421997564 464757278 284999324 334343350 550581435 731636790 197992546 813126370 956996217 994736625 37432290 124905288 572880471 891060453 759560740 951220705 478000139 900921341 319077783 412050563 46346011 417537926 180663468 822098557 737266771 959281594 692786518 811800984 851326401 980633133 361992700 750759449 559470381 721446034 106207619 170485043 664873719 734896583 22824296 296959323 617464196 767212581 443041744 654569341 710853448 820069539 776535153 878675870 937507321 989766651 939695396 940692634 284411358 699460700 347441772 452938862 325716964 901762402 22731105 914507422 877080774 938409487 919373634 984559492 764474601 883747679 178399086 712610585 819599107 913569104 651402917 674290482 926281780 980921088 29730522 636718886 381696657 872646639 43540040 458771632 540595331 659866387 366042067 701879601 685134972 807273396 557663071 647789088 97983929 371545400 573612300 841899044 768170239 856718908 253179370 403634943 230501537 567868959 32927593 435815969 200369148 401670144 967911155 996002493 239427274 422469906 669553045 888711670 188360018 223680196 851812529 874408274 868995765 953771069 979737672 981419013 168317826 950886793 276383752 283175166 196339733 847249348 713784816 892566976 845703945 961686808 534136037 925663279 168833011 312034595 833867299 968228295 251271651 954763334 788146788 857960029 208400619 660208330 724461699 959941143 657855646 694915072 659166253 823996962 764351842 931074664 487314877 776281052 839672661 850409557 229261181 240081567 959661831 991583097 658766057 929297622 273770818 288288424 447549099 808058742 738793692 871013289 891769784 893138764 492851742 801670843 216600604 264889900 385646009 927069365 183195852 447614717 309178856 508406279 397650619 872448470 385681513 956209836 301473654 689802802 299146672 942044684 389654615 887600935 28262382 617160058 302612807 329116727 309190016 760443694 239014406 827788085 539305196 557474491 357293646 891122878 765917281 972433807 498508495 685036410 704145542 865208937 466976295 838705140 821430295 870208189 152700118 666754695 849811894 910074430 356900206 810535412 761700447 796677441 378291696 400884122 309509966 647596654 527258267 783544400 138392646 740915277 228730873 429413187 504174756 651384904 365979325 890477572 51618153 178660446 64266360 718881155 131678053 406995717 450254438 536368125 18030233 177905104 644606145 763711451 403851556 755665469 920404040 929193727 71784693 960896936 603667721 793834636 223991272 367426645 100896606 344984412 939710172 947618334 998532817 998639686 383810580 420960769 451467527 492421375 589920762 896588438 752360587 815630093 168219250 958056395 196225924 239512449 769464202 805446078 508272329 761959019 324018576 942563022 219950297 835806893 617123672 891656113 595221347 730925607 942218086 984891742 832683395 968653930 173213220 770623874 913663144 931383291 23800127 165538834 477688570 744683630 929354681 956795427 99411403 702145574 924299777 924679253 188053668 766255228 629189052 692639980 401352355 712986702 55980214 393353303 345349805 834847998 995100262 999546432 712287200 829441310 600830286 738169083 980966261 986399493 104557950 228368140 879314020 886081396 74392333 828965841 487187201 968136634 642150773 727108286 872333680 953991724 500531496 668562865 843720195 995310218 270359926 709532631 968867174 977450992 152056832 742049903 543933534 927050186 740111028 760837405 154400027 902499499 964364644 983977266 714250311 869825805 631978171 964972909 855347552 938732864 474092286 830100951 111941906 117175035 635225852 934556789 120840179 878405925 4425576 959321397 894773957 969986415 142528264 617271514 842333534 923697616 872491462 913421335 808459257 902348740 289692984 999653984 804720139 937161734 766673633 945336859 620009633 653440622 327196572 561706424 562699456 978904140 341684210 577451746 103321992 731753074 989140152 995526806 659314036 687509343 921533457 970812247 354689812 392045192 575897118 646877296 48013267 933814395 10054218 558555196 120729160 675802428 294717953 745838667 696821676 746474622 833253654 923924284 298054018 731950085 722682509 724134535 447134031 564905621 549513379 599002663 988736553 989326644 111733194 396141246 537500469 951515458 989413952 990117348 690383106 835612848 714482931 737591265 114374745 388339110 507054684 990019554 813284056 949101783 190857739 217102156 851809753 901746524 479767201 889496142 228540040 337125266 12711446 66670072 807045978 862203522 114665806 806108909 633090704 644095205 125390586 200493856 310442499 894089810 555068526 903541794 369761195 976427696 180701466 453698644 938432635 997665243 98591887 979767292 127283682 680574468 836007809 933918358 829703311 923742594 785176594 792158553 386311291 511888546 889440687 944288462 781683877 833193139 235570787 968762325 594093687 664483741 267779060 417802873 393753800 586496194 97134815 990116845 119623815 436868790 990416520 998296014 743343171 807774615 156315413 968643343 182361721 407381849 309081030 967450140 55307038 107754113 399345988 805047544 560506030 741498616 822900408 971860798 870826771 988876806 559932685 593008098 451307125 956195291 562423484 950543708 200303593 669777476 479003635 945995943 555732248 875833446 288526606 628734333 942422003 996840522 791886426 874358901 886063339 940411064 159742657 386738433 127004688 834039782 951600752 993969781 521801204 551797336 4988027 169797975 521781775 659909928 277252039 303255996 926925069 933863004 911689536 982341040 33054724 162728229 878799027 884597492 415025754 771767058 933058393 949543964 556263718 946824884 61538149 256314703 338172346 991593318 899086074 927907319 784640675 991446804 635824146 853485583 421967794 609177341 903289051 922471644 128936123 597514952 758568884 983629265 838909738 892185381 895915424 927012279 216700086 413768744 657713237 880188302 761785756 782673843 338930309 377152999 943501868 963674599 884859743 913348204 275138599 881285586 244933524 690603971 729947188 812170047 185042048 538245330 262610050 625150327 114741154 252060615 696733552 772522660 257021614 680131952 685979333 692918865 67957967 633626076 712104728 720819768 123721881 183469925 792588494 888959944 14639452 962605461 650954039 730435388 647176396 919834837 100192908 441004564 504033030 796824487 591887711 805170667 219485728 373046542 198774876 275559115 35956595 917309179 871116952 922403610 701816539 905244159 260330771 848815808 761888111 922231483 533524629 557788053 832313008 932074639 697211955 867370419 997050670 998163684 114546267 274161745 515954783 987468773 193911716 525605391 655397170 917503840 573373215 727221484 587817665 764943119 306185611 828919419 828447944 927856772 566617593 608224276 720154925 882745681 416605269 486925489 740080910 965230576 541475327 804000328 512055143 811387017 259117309 591409403 798610101 930597445 477041909 895650254 578608496 941561868 626186362 912906527 180268305 210099657 735644816 748492530 824120735 863403920 892909401 968235214 611407532 814273117 119419892 265788529 855153536 874498186 411404628 966314435 900952514 931490842 401139775 937842316 134524593 146796572 172382250 706496013 287580647 483826261 327435149 554309552 68757155 198163232 89887016 497190032 455886749 606140176 637739497 757545814 642946986 960793028 157255918 980198818 291908542 370864805 532999508 970861491 719697346 826981577 614931157 814776251 839843680 854386057 469245415 919761001 738715752 987185323 710753482 854081849 163022036 820145496 332396993 754836765 249206819 509396955 164729773 944357312 569130308 913165373 905873905 962858166 408631355 645173985 832810483 861261877 771903329 989600883 496546905 577160618 177858162 468929694 750388678 803476160 140859527 260890332 635702223 773740312 192047281 745324882 796429010 997203456 738091429 812820108 634565146 692593758 592311834 789330757 399206678 399981299 191960727 263485002 394384883 662335641 700145994 768571957 99287918 660864630 684893634 920313479 829828769 924021803 71612366 724846755 655939873 940429158 995398033 999582501 687381324 949478520 871177058 883709731 534757572 842437996 482134644 790790037 679588623 941987971 758142444 839098538 894577769 899099613 461279911 462095323 659462467 771210538 403593132 810949649 538891749 676651327 485440379 834756032 584040931 796661936 449374757 906380288 162188143 976322081 504643707 701297774 635365015 754842803 984884083 988866750 473379325 895074071 279602599 442200256 20936972 358169719 877699346 910261273 653166705 747108350 877333800 881825798 570909335 723897261 11177249 692225044 190141132 770198013 722817548 867715917 600514577 616286213 749022233 961449619 551324351 968937453 234655877 844246402 405006235 996581507 11369200 872577040 6086725 291962032 700725568 931634734 40991035 783004690 187559699 500392305 621678623 731312198 462899006 566237954 687240682 813968249 498001435 681952983 241111962 456420683 202391505 552548469 754383506 818691001 769549645 994993360 43909256 880243783 217795782 563998572 247318540 783536953 924234117 989926743 828190340 888645234 326452358 407646202 510419039 547826705 952952397 968655901 444293265 937062474 420709053 602962836 558403212 996011154 898594764 971081561 619722884 660307950 139862967 834531379 986501050 996739372 646034852 917991535 63292488 76353060 632946111 777776929 974088551 986507830 970087339 973889697 39521506 573231841 10137889 513425777 818194350 832226844 486005954 881443059 161717168 926469008 698073915 711515875 204771133 431421629 126443587 786248463 285882253 829503232 451583918 788650163 511269324 544303417 92680707 791749673 336362512 920657910 474147825 866286534 270596050 303525786 388200393 460657218 193174181 346115091 212614797 262118316 637561607 777938994 817008728 963159066 575190380 787191479 884318534 991510582 825622330 866543838 531846035 638558480 308753623 813865824 49003718 884637166 659464980 720288614 431430599 931109965 613380913 838101614 436598828 830812563 923033987 958588209 681159736 777196269 474524563 868708442 419391605 792005922 211713417 498106559 216967142 231066288 976040233 978803450 928119800 934791604 300339369 560290775 71714065 729838652 273224708 873976682 41699349 321175344 408646013 777612445 680986924 776105305 298237535 977639069 420905407 718874261 186818328 493593542 58929739 135072278 195073586 676561831 163395927 651206416 218254990 482270888 812045404 990576283 90956839 646367922 23223967 876168140 48334932 390837819 79853183 746213201 101491799 471019840 248967584 270129158 122163631 125627032 799522260 997288460 719232449 731257780 908330143 990618721 297155966 299495413 612942574 709037606 78269826 399785837 239005557 696222883 545869250 730946210 128023615 582208483 649727338 689199545 129305358 872202086 995968545 997353961 682804442 877374031 933630491 972908781 526047874 709813686 195561366 746005145 751375107 866045104 351542296 806962597 593200109 847814410 684928828 851819211 939702132 945224660 698957477 924234761 184396616 394895967 642872285 971306070 985396999 988592678 613172969 617074012 103743164 646640720 290208143 473252509 678734706 993057963 218014490 818200367 829135814 873110005 984110963 991097676 406686430 761360090 889670694 965872779 84779565 955194607 576717162 740138923 79055597 388021222 928472247 946387929 964729299 969844557 636063336 687749305 285610675 518803727 438875714 451715626 399769342 679086219 73677663 266022590 76991872 768894407 43192012 333977202 819968224 898149472 453200191 894534890 282482909 615190117 290830119 797226870 145586465 850995711 369898346 944962083 412960134 545457275 382889851 924916752 256131038 619341797 291666679 888544141 403449179 852897505 532964490 894632378 978286577 991992644 183710424 236380321 840266312 985662204 942986865 977974342 380038731 598690067 236440466 504060563 613537437 812343163 778435106 893838661 26563381 974277582 229295441 396696884 533670068 941875308 836483350 938965644 125961001 550853560 33610995 915400652 869850353 891218013 148601844 490280734 656687007 897165761 662960740 741094514 948992499 956195180 734598282 931521424 457854188 778330466 154181337 776163964 862117991 975200441 847219313 935569169 665858308 731857776 26329688 578304712 688059267 803941524 442462790 644490400 98564628 872302635 28175812 891743413 649759854 655989877 454317682 913452034 682297539 916645164 890716863 966356583 769724965 839331331 447652323 600074527 335832670 551050495 378592775 832568552 390903456 642151905 210077807 333168451 310248331 934701752 571037006 876973451 581754915 825202055 632460004 692716924 57452432 309831320 911917010 954552963 803896446 839220138 16504902 722740502 102738879 907183063 820550204 847536908 483450197 504232364 920421020 991583078 104264930 827979443 347380349 485431070 699325928 909187984 681986455 937883230 583206869 926449905 851471170 996990883 329669717 555007936 505491823 762853906 595479783 619614936 744394866 754563420 371457442 914032786 64328410 465582012 800826038 874046014 869840450 970159966 431261185 507446807 513285875 923672428 696270089 702435667 40542531 920096419 596810034 859838078 800492733 954004563 193201138 870496729 418181301 954243882 898305140 967803781 167710493 760031536 624798670 770473037 449860027 595706746 497803493 675660842 36155538 109943981 687325717 735317298 300276419 889961219 84719503 472569440 640304609 964300812 780091641 899810787 433681694 477724889 284651348 362049120 62093915 108228080 847123642 974245175 675398052 756685504 223328068 858554486 449466502 529691779 634386632 991144494 713999727 797545687 976295912 987453072 51239230 613533417 102427005 211086185 836973896 906486270 414352716 880667770 274914535 598927283 598629803 711353479 397298073 451496474 733069168 877940021 483215555 760268912 982497006 982687090 699206986 725189695 607228881 989348260 338671236 643629228 81979454 796372686 411913264 677763112 856511506 924477809 218522623 746236502 503036977 943295553 973472921 993495311 968342155 985903155 114902203 820414821 248048309 539167153 832519743 882987115 210148129 522278406 500169343 595456278 373262586 604294816 224972487 832284367 486319558 833916522 542650814 916166693 445710349 843717167 241257781 381025455 937155287 967193482 454712683 801961861 629004286 652446284 544302328 568730387 597369930 995967879 645094221 935006982 603922499 751597480 808718020 938595523 309319985 695433158 220451747 888800514 209346968 438886438 848841814 920691511 383523285 793304245 715611798 736683274 309079853 625335762 648814473 940105665 660403085 945555260 983262269 992110489 327314646 825348057 948888486 998724444 594200825 934390805 675447405 948960797 982184718 991172175 213732220 282786581 762050982 926103732 646798929 901992066 642309027 836760793 12048973 436911275 778104583 946074948 449494252 542367671 300482797 903467392 965801665 993863801 591927681 878016142 954122442 966860350 883130576 997688648 399022294 944545563 10492441 705062363 272161659 698705248 493248292 620576448 246372364 383376958 778078802 813520991 383790147 814712498 513993003 577188798 261264237 481921419 977185791 991319997 274232203 619752810 434394259 602360462 901159775 912885969 667596679 833478528 904727595 929622110 582585514 800730446 897752046 943656375 74052381 909249174 479490041 531541476 774851585 945192687 847231092 851494893 997909875 998848914 950524995 975669812 660312106 896185390 880052178 948444234 908829041 958028674 616566224 621831896 187854411 761886807 682790752 885808741 145518653 253924372 37665271 852417665 415297322 706383677 263440458 939012222 71693147 545810040 914185536 951614427 826271218 869972551 90720306 585736689 240322865 702104588 301340864 585008741 404053967 821659030 816056108 930228761 632456028 698231587 953905355 963617331 242316705 994934987 942952078 993838739 36439983 517009183 29477077 784579422 739615663 826103197 27656321 944785140 571042712 983999388 746553333 791525252 707864945 888834514 708211291 988236411 692226419 855251282 129242052 248131490 911538739 923211511 494137635 895750899 989849583 991122685 485574523 879629494 168860137 965060508 217886439 975548346 643294460 889584574 325158667 789313787 446112110 653240922 256581134 788001083 552634313 622026341 71868225 96219408 25661138 307379325 817715735 906478563 534920818 583083113 191221755 637162050 465017872 649132741 798853787 882024924 133869588 768018142 207688400 304834367 727444355 938661872 897474704 964764002 837094665 904281292 735899325 904660081 344402671 605457274 287222803 462995390 82761547 921629519 405203378 906769581 959900822 963031636 173372766 280008711 658540311 853356338 750314900 997685158 242340639 245401337 583743924 754708718 720165232 820876624 86246671 854496715 327563770 783850451 807536811 827299042 466513739 545185557 942329142 994809460 902766883 952233578 337140044 668240424 103738109 766831403 865804353 890546947 703757577 792051785 367079140 668120539 157616776 376491818 854273067 984414846 641671180 751409265 891453794 919193457 197311813 875864945 309450147 583708426 892425243 936324419 950342225 966899797 43006078 983650617 604960834 628264203 211033031 253498535 630618885 692819051 739098118 872110041 261383777 641042648 844574265 978963540 628057169 961864960 897779035 955975260 335678653 839949445 701244666 843606035 121922377 958374124 111747497 124026880 861571705 928846815 584769991 871941294 7658923 836068330 416707548 893764386 768656277 918807717 916874214 948278258 151731475 802327018 446243290 845479766 732559557 789639031 488322939 831951972 202924071 694822119 377753287 416252553 30202756 510157669 449382617 972994484 114060767 533350810 252383693 789400713 702478734 870497992 890791309 977036534 729009457 977940656 279343668 479978786 252380755 417207649 93636671 638888901 282875513 374734707 844308917 998505224 111122921 956930117 827682435 856819955 47989139 140819478 427755008 908590384 696908526 973740746 775844243 790725802 911851927 987816920 630489880 815831722 465764036 830677653 573664271 715652535 251947819 378379614 167121683 737854874 769856268 897543582 807528750 818390184 723576408 780699861 883058501 954001002 760724991 894408154 339830828 454302241 823471593 829867301 202819240 218788419 684134885 950040328 228324011 504738797 697479348 870848487 159058187 695889768 195259062 791339682 767726049 858784584 550861775 716838875 357550124 701594394 351027345 924874516 218071157 812487501 987299073 995367361 893359183 987500321 417374894 570104689 702140653 756358954 981263747 986701016 238158154 705381534 143854402 870094710 106045285 343001724 458679909 806288719 284011060 749592318 691751107 826011191 637516680 834054524 234500674 315223995 779627096 993957240 357540159 493326579 227248355 907472320 899904081 969687392 854008010 960625656 738227142 823993192 637386930 682026839 156525169 553857470 895651246 900250415 238042503 634560005 117725946 479931198 74963673 870206097 35946412 56782012 252092356 305033692 575497086 943539272 92894086 755816882 593431232 687266070 154126224 334798264 554852047 591149513 756591480 855405282 303149095 680174742 493517049 897922203 1084388 1626217 631817566 847855574 501690281 710511646 730499337 771595649 889572409 891227408 557365686 894481165 401616057 906199371 407673522 804191390 862064215 938818362 777125555 817160259 651912717 907631592 816898416 867850978 443380289 496389206 840983679 961343620 564278745 865612820 800808581 963543806 178031930 420308906 201864321 281686387 262086563 771489116 131464365 994938864 47044243 457905405 271068610 767702773 420094024 957320130 796056798 879090050 909647850 923520032 311542101 687768439 415148234 782730198 806340669 984035831 864677275 899240732 787374343 792268734 505546765 637270047 416484791 767972184 393956025 881401057 927240511 985942526 64144435 394501893 181352314 366652653 496945067 624292580 207838049 417676795 431962592 707638003 800751286 826060772 220082949 910160709 233650148 702997214 577520588 650804828 966649914 990920563 828718624 907888003 409845506 698491074 738449248 767466628 730404066 783842068 21490228 338939925 477850542 645853161 256751065 631439009 250856447 461571206 877125031 985516173 977323827 985167459 674979847 795572687 286124943 932548815 477288990 551816885 394755636 726667882 532565197 846425898 348543192 836201412 744804529 907047806 957426378 983761808 463117908 465485478 695280961 801879353 765623487 947341707 832054114 847255689 642544275 842977431 305040019 580436593 268889901 602477475 670151898 766329360 271921515 755714416 632809947 773752683 910278859 917213031 769430535 835219471 322861592 540646912 392919667 530173091 254852740 381931567 703106637 857890005 557206200 593089648 122467783 576033220 269182850 404911057 200656873 457086448 464777926 722072248 742836167 932412127 157496502 891853331 932271283 959382396 505906244 582551189 322405790 359882482 576910726 851507149 688954092 811796444 763127701 831603988 104051263 350124547 721979971 787700806 254018693 974024229 11265577 277499887 431892092 612144381 327911189 498738604 32801825 992446700 344772878 974853203 508541110 952382622 558003769 800906200 244051848 991825807 752380639 817881086 66901489 338744954 73515873 180832929 742415729 981612790 602175298 974185334 822276694 857820264 397388809 834906583 762485466 914119954 841489340 871173401 264258726 891432821 991502955 998866503 899779199 959951811 292047260 589883240 129692848 856111456 240824580 971959419 85829964 504248835 189099587 822765869 647094616 809045457 410294019 910722534 456038204 911752114 989808690 998472832 915478558 986019028 429586612 675180668 285445117 726424038 631064135 676044831 35253215 417065966 933001126 981939737 560683666 884374132 407533881 679145422 409324964 419875796 406068036 669874194 341855504 461937634 284020522 692992229 314695610 885931197 798118041 960990197 611979627 810173545 533041948 857762493 63094861 296656311 495977236 800494042 481291909 566152990 338072593 457607759 602716204 859553815 518523040 702761574 608063334 614571378 719770400 884615257 373779446 879993593 131746786 298037370 325270720 595226855 575814726 987196865 931306708 940649505 539122238 593117444 392413744 440515934 683671418 786243993 753896227 930241087 342651361 678844684 888742461 912521706 505857392 734301160 747605622 786555965 890233000 972908290 708700883 868977202 381400330 383407252 819803177 850566331 246004216 414410974 766230438 918941783 933830761 964211034 693103261 763173573 278844814 315678496 959897141 995838581 727895388 962657275 945399016 956576190 137025854 624939433 440769387 471064693 305850160 657549792 41807181 884621013 306806935 553069519 938212255 952705211 404054413 581482735 559456362 983798604 381225230 549319555 148100122 482659375 760318200 881446433 767922689 882252743 706943321 728211687 768657350 939596863 986870908 988427454 320439003 816904102 469841260 842422143 120729669 218233980 256976957 593089654 670301769 850201654 564952149 618882813 420108484 872673809 497717962 637197293 812328721 825025512 65012686 580648701 863631968 888310880 796387268 992200162 298591604 932824492 553655786 646263479 386072243 857160419 370865702 633862334 782688233 840198011 357723923 905204990 53158643 785658890 904860074 972027203 231586383 802245922 642549725 927842969 60591642 166161117 516133183 711574408 279885065 329892938 151839198 805875547 476571344 733727697 143397276 807332684 301562658 374063786 234219940 354774296 608617584 692082818 630984337 818137696 995687624 998956199 155493713 680308300 429863008 798919536 794770632 867085159 748775501 796233606 628209007 788233996 259204937 401667440 880222398 983425938 824785278 955456964 357044259 529734770 37017815 938628787 299124435 638466555 416437020 562440049 56529717 175053090 199637392 417652509 122665849 398548039 73213828 336344025 352709131 749997092 313107003 436613688 409012535 477980595 281568815 768693409 130759608 253994382 233522294 954164810 104223022 752454951 777137571 873539091 153515978 962698271 593494289 707466071 4241321 861865960 909328982 946149047 869893059 912324034 232213725 806996346 403661085 560037148 732555120 745786735 49718442 710901302 98362749 764644127 706701181 739827729 28307579 333971915 253728558 928247222 340488692 892355555 410537270 963189875 302462638 987654103 137096829 804658531 585186376 660431967 365912706 835969878 940422394 971338610 622099364 884012441 534043450 704507932 318614931 635566811 352221060 455438475 157898663 331490934 867618235 970348713 45886115 879324231 709771756 970189515 158971947 315570603 820677982 985497938 238062894 240576997 36661072 923395552 286607516 480604782 602308623 990602054 197364348 975470699 68071072 164719978 173212374 521171514 230723809 405369206 829357798 952586591 627649392 762570507 642922426 741272893 924717784 936390632 67381728 445120506 35345334 336926964 560874364 813020209 823723574 964032070 525050995 721863383 272244039 820960674 423585806 890302542 611529641 894430316 974827072 987733805 216284083 413815032 609242140 723131947 419955233 473091502 239945188 307333604 777791337 959493142 901725888 983698359 349183063 363400591 808031429 871051186 122227508 350153923 521856454 530300811 598423913 711738707 490282173 892065966 890842876 896614911 206867371 419485415 555181349 795379286 467092396 485486596 703709555 778474793 978918283 995068717 701740074 859299081 796210414 860020521 657242722 993912824 840600965 978465109 295751689 490089693 956474575 958930987 40220630 219428074 147467407 531814496 238749621 873146635 344684071 667249889 135860809 337601330 532989108 772919627 600050628 859378680 247568402 911876027 216831473 421456187 773911075 963357660 605251341 800184078 959138562 975107760 260262336 410979730 807183483 902699825 729629238 822674282 769289249 843076734 562917840 743893573 367451097 659993065 421826399 430352966 829243635 920935030 925650034 972245587 159987550 368614737 766321478 859566662 174679767 699703547 935391619 936738456 198765674 899056371 660294496 936885176 323393805 792462470 941730621 994483234 542494328 915843586 497481050 518876898 524642706 644631802 868082130 941553713 12576457 493537148 101769005 360758190 61871156 273620157 599265991 772616512 521167628 560288882 927104765 947767229 579898306 951467351 593669792 785361935 197632561 984127961 277542580 855292580 641106584 795745676 87517804 293271632 893146725 909607064 858496804 917556749 202375571 642454720 412248421 519567558 717781424 769082361 761716375 878320731 808777137 854977809 876894547 894489954 743532930 850968431 384824244 807690992 913344477 953343049 123968360 932924530 155710573 496167719 799050643 856305696 389728928 671654863 174188136 190453981 153769730 894014842 137511295 813047430 566009359 668127725 71715392 927803759 335991163 903636812 309218054 889201410 344201465 620774036 986364580 998413195 99882685 400422530 804210269 966966886 433548928 499069509 55115142 690350698 571254698 638244834 896016604 904396428 276380 936341822 165024059 755611455 562711032 689618604 298120321 942028437 711889753 847209749 316112184 431047044 90927908 157217448 90237929 169380981 575041109 927564304 25602981 336036663 693027724 748425338 269343751 908616323 503827369 837372550 850780445 889489059 3747719 231744557 156682977 863576147 250040128 910064215 80299007 557415697 213250826 604268925 316780873 918900810 738669776 897411631 445533198 661052707 369970475 621362760 377191712 809535566 328538495 514179038 697466958 739264151 93138408 743693962 209577130 309023564 114215717 505792367 59618414 356211206 426346721 921218028 517158337 995173318 529055116 658932477 175648690 740911756 677600843 996319890 723631335 957565330 256741716 502426008 762405384 922123504 349514524 555723930 495801768 782658499 972087405 978099329 619524660 836638311 35128702 394277829 884728880 945194218 630484948 768612432 520733722 971886712 640375359 649878937 267326448 375698154 339933956 745635412 124065107 981104621 436059801 518125010 772169019 990186704 815481399 931667870 529913577 657314365 360851782 756042871 35389082 423664827 546622608 750735122 328856874 819272689 484882782 965135184 382897370 584644966 17037423 225425497 120481157 991507140 890616070 942777305 651867377 870109334 259502179 804343847 718034311 817102282 323699573 478212393 423849659 825757734 336562318 509608820 697367145 713331176 87189321 859920733 768483007 905036714 386561611 790366471 403854474 539272077 395159339 550776864 53649677 162192811 260954367 687309823 890887370 963499733 408412113 431338343 457576897 896706491 363908016 711321248 395422058 873964062 755433964 812992599 545459312 711335001 272223481 890009571 233308906 827658903 493766153 764177746 594986220 863209116 709079495 869278735 805911093 886521447 327379782 681876807 721833992 889214971 573887598 633875477 190070350 347609200 44644661 560871802 28614875 491398014 228966774 380319274 198980383 566928094 210188587 730333432 987470271 998120774 678586018 785249715 385827363 663956219 224129941 663794228 794953455 887989681 951548417 978828611 602734224 780571170 672968459 968112506 156865003 331657469 360028145 881194582 518263883 919602106 998833556 998975718 843751215 986009348 877807018 940290873 821207009 999818714 734777531 950345247 430394831 722647578 468014385 990363327 627195128 685621363 171211690 963178259 955168257 975195590 377900531 740220053 524880107 914371456 134311621 402045538 795140296 874305042 345390346 622296302 924815884 934877805 865085589 887370906 586315838 785134660 368240431 603570230 716634100 828750761 664352879 766763330 53546109 735852053 947166735 962348487 163745271 730377924 28046583 796257079 429208690 657841433 85285538 234551305 223398661 637505008 426660684 832226914 471815341 984311433 522150723 569260255 479686869 576022867 414097278 568013389 565054572 695003498 406711625 431512869 998584134 999928714 698548199 755803517 752257387 938300067 701709883 913445325 515202028 768072908 223683310 272234198 650068032 822089718 996693953 999166199 554853351 910306329 372382577 382586680 461599246 496612169 213279183 495687611 841141814 985031228 784422815 796813718 274737895 998480214 628627547 790410101 620630687 683186003 475040759 795095278 590063176 674887971 448751518 479796903 40556559 555490318 117913719 491318362 133503663 160855946 796315064 996027164 648063743 689587412 23763290 916918047 435124024 661315890 825186948 887616591 448896293 929748312 342978647 551145480 599825659 711288531 65494026 584770490 267221169 328206985 465876326 763975576 301363541 619209939 704005504 795293582 542040857 718170251 147014211 523892802 244170562 984618471 527739596 543550754 206133870 254157194 957251772 978574110 461899918 659639232 767272444 867185266 803601450 832813419 431583003 905969930 817178568 949103883 100781025 584902788 931919787 952942185 302263386 414481113 333688733 857788767 859052637 899711704 972826067 975051439 412944979 435237078 997691084 999370193 679020464 932113578 149605302 851685014 747817907 861760815 602568543 882740992 647163633 952922290 373130820 742631438 841166083 861102404 800545832 941850343 473080054 681281903 803518255 939891178 283164743 977595995 467000005 948128146 651762079 862891253 253620218 521703726 880608169 989739153 407292656 706051620 149962081 173814261 172142659 691505121 434166066 738941840 878014596 994237745 920633171 972516836 7466793 338917465 83258846 691271022 545886802 706457711 150325045 333672419 690741466 982607340 303135074 848036387 620799571 843448713 223184280 388884428 50589379 876445466 260645150 395887912 959836218 988409596 968047994 974417763 825458329 851963965 627235800 993737696 124767276 423030077 928779994 990300271 339415944 977555600 514963412 975513185 535540910 743268630 410185933 706858312 768294302 991905549 862243254 960220862 534525354 927344937 266828421 751886568 238222677 347629649 226952996 525101772 371974987 965132833 925532659 957575904 807045945 841455890 727537482 942353356 939623312 948928876 413006500 654019343 219521779 971632194 485646485 928520547 572662872 593590223 128833198 774011301 475261305 855228081 923594361 941277066 792630191 856021138 61687067 903123222 198130640 934135155 690804260 902577424 411292380 654492135 746208889 930410578 629392122 725934032 94629698 210566482 774348795 926513837 885864035 978295646 299528857 917302803 513372174 546495686 331745304 468395736 690370324 863475316 2501755 657082966 216196610 499749843 509065079 922201572 688201560 696507050 316301062 593056818 728701695 921030539 904436930 966616370 160481079 691003941 299229753 391060276 493532343 813079350 348061269 596054387 687260130 795841760 617966105 698379012 621202090 783986435 27191216 981152478 575262800 711329544 127471346 586956899 682662006 866213262 206943953 348145754 36106245 835309427 262134925 765085750 563849973 764866557 221684260 649196488 932552106 959110460 163591780 197626929 566974830 686402113 810671119 872077790 609393951 705089022 48487334 686073437 848469065 947429159 196531951 626383986 515181603 741889499 602086020 709006547 447604992 792141504 141445740 937399812 259596124 440165841 250024188 369420815 141679369 695172340 502635728 604253959 498577848 940566566 244053398 867122422 295981536 437083980 476975747 935049624 916944902 927065386 54046105 564203917 730366037 880180650 582188935 918981983 237253457 406619649 613117104 975918745 991858242 996047821 479844202 917781228 944419888 987929181 469040969 479475358 50369255 689424348 91482362 492563582 769120202 967321512 4323763 801176290 315062841 639148079 852674402 943889242 413299167 928893869 322199719 713424355 75251474 338305035 260067623 780742304 957635101 997251431 554711539 629800580 758660460 854414744 87862993 224521002 908319379 993361690 401741162 429790061 254907816 599265527 810338183 888982793 669051857 724241698 722820582 990745860 42842125 442803165 373957446 459440892 276045523 975767663 573146817 809965087 681972065 856356475 769162956 868625287 805432686 881949912 388931034 673667000 316708311 739594674 256852720 311059688 95457535 379389009 737873249 772674504 225357473 404107148 994073492 994633773 820525291 909554539 81879124 323937239 88714677 774820913 786240395 881628208 134891807 322797228 972519352 981493442 362949756 473494742 793784884 983619789 942860354 942946441 845602011 855248513 416536496 541276370 897575539 927194565 571083138 604086156 542068065 962824018 120724629 931500704 250931321 620729637 969617603 988510537 203732266 873535283 485700373 513676298 694712004 737617124 192505373 427036696 354325980 357484722 547516575 948623310 400035357 931065903 806768143 980374354 8755188 14225899 543402348 895407107 284646974 687779576 992082813 997867549 387455798 724718419 59323212 703286458 65352217 888487026 57300694 513723620 623885208 939882743 631099580 890945331 739940191 949830596 524898462 734308745 194664308 999201734 79829172 637633516 434839020 572579958 240768346 475870931 383605683 646448218 411065097 652615175 398496543 426196793 963452841 992883766 803182769 947353487 705130678 861233031 973909738 997186318 850308775 993791520 366257300 407650502 63492361 539981121 547553733 846582979 682509994 814657397 335221544 356286140 309251717 561909371 66183750 181746058 159644804 421646281 551790479 731466811 75672262 713086966 94787666 536435110 418683717 977456978 535887537 631496553 781833533 910840353 211507220 464567622 518364139 798353113 337641630 563796549 632686495 914224148 539479493 653542288 328352340 429371733 89967790 585939785 177077291 786322279 853481761 923674796 791608803 876087641 491817231 828933724 27005850 314543459 222704737 402735040 16556389 198198465 378397110 461534779 363536482 453624331 705424329 731422148 888898200 947825909 364793024 697986995 84612155 987997513 773314934 987278307 757903300 778184967 338399834 600852793 29494722 981258705 859309136 935782775 127198389 488278697 902856599 937494581 888428777 893002436 190356610 920124951 571015771 689610214 285195313 800300911 967647006 995661327 598464403 767554152 787057428 842688075 333262831 427387641 775208076 884610716 133131970 388084020 285094082 994631460 582422809 924714501 225739884 463183545 636138833 919866877 727970943 808269209 846214073 938530345 973069724 991838519 460467259 513916294 969708711 994744214 695636200 699387922 856090089 923349315 840563484 972657887 552242242 936894962 758701749 972721509 145256683 371047758 134177103 622463949 111889081 912864233 424118625 908382246 70256980 183104662 561552258 657086665 376818315 477902592 547801686 957791423 131728549 353535320 687675486 794948841 740964230 882230767 354355721 960786665 479617117 787997704 651403861 993109032 884525305 982033042 5865087 586077946 725799080 795057682 585874397 741163617 85076724 890619250 150142728 166308698 283859631 427885046 862178910 957706996 786659792 878372344 820789603 862019378 728827560 762984246 865272933 912111504 839140656 945775442 766709798 945381896 873678562 992071470 986995661 988962250 260073015 940114695 172016562 823884615 517632210 727230483 301473002 971943559 83695874 462457347 893514890 997508118 913704903 960155087 566634532 712018007 793569689 849738257 841872468 933269893 884977175 955386557 483663602 716527688 7953592 794313228 665168519 992835898 394838525 999002909 451674528 639522923 255159970 753676346 936435449 995354704 935607475 987297703 997606562 999958324 204211645 669911006 688691274 873355023 616488840 742977165 377032269 682914073 600112891 675673050 955564392 985585078 281000077 389542149 853856990 911418077 917564739 945145348 668629773 825131471 637143945 986787270 641293495 731490576 481487714 881235406 947677201 952592379 471470264 656646405 568960428 581877897 102247073 986657959 269281827 857496881 663187386 731874494 729376546 941434707 946157030 972471973 57537154 950937590 674798701 855633350 630766001 806712609 667273710 887357673 678561601 924399633 266910368 341940055 245993202 481139882 764092784 838689495 127757839 195310371 636953534 943810114 286347722 851505625 292458580 559358774 984284303 988183167 448588439 684741819 486090453 680097706 314380822 539194487 206265874 966230913 838078667 960488108 476515135 652855128 158762762 609164442 93127467 360575448 943464862 944755935 298493075 927085364 929156622 944240828 981134228 981705658 722638980 779958814 22212271 818444293 89509639 735380390 484465666 653244054 589725638 920722026 6058334 236820620 171652058 503793124 119494043 632524822 166571214 610751911 208248393 333803994 467277810 918759997 974847930 991659422 547807334 899417912 539587883 855336497 550886909 607307526 115547831 740612021 862437801 953291492 365974905 556518883 192843720 852288562 92790024 525838955 785736658 905571848 466143220 506636768 589845610 605579381 685328436 799424162 209542271 311629754 787558994 886879026 964643806 997186437 266175260 978107513 10406859 602584258 871742544 998724023 542746629 863985277 927568651 986953213 346090596 992857008 100255434 481742067 387863819 746006756 61202221 525972605 297484395 682858474 354527052 964926524 916504638 933883931 476958515 477850000 7619659 531274236 574077434 686385583 363356403 971945494 829700883 945649645 241586079 627591458 867629904 982602257 325302242 694767831 531930514 862760713 287350861 993521123 420781551 663321245 82168971 944059155 651572786 925453987 106384604 425343500 72658026 772399999 222576513 576284142 48718252 684642659 320529013 398020036 274042630 929154170 764567930 777990340 119960991 953376600 415927812 606966402 13711876 522259814 116064523 234619616 99708988 259037327 154967098 883900621 131180657 554572175 541686983 639830846 607346832 998334746 591040384 990780142 290427212 378668536 936705531 957018443 882842476 972385721 677897124 773934998 351806336 716851261 974521104 999055442 209748744 454936601 608203791 713823429 367235093 739479589 831285612 950178096 31128484 599292893 534268897 741147869 939313038 996547456 920730628 961350689 719089844 828533910 615009745 686981987 469584950 809130959 397936108 874714271 600335760 992572278 863989896 951359194 844937101 859271470 326498882 424993911 296180492 743259052 757865275 863021526 319473010 920980707 515534607 994325714 610227262 834159262 411497219 682695050 805297947 832344308 954968896 964915831 259153148 543442371 165732402 911005772 952722095 954580359 986182823 989599904 687934447 728693443 791791480 893625918 370759278 494993623 654419218 655547569 643504201 857249319 337207598 481031388 116114857 995847598 738381457 941478540 842921138 927881708 788609240 837441430 828302963 997736331 156357194 949275533 938972994 960710720 516222811 699861241 474979888 711242516 135270211 818214013 360548117 548152308 66435410 886118969 736604929 816599558 243628146 952007477 419799261 475771209 100456016 103748774 158753038 522595156 569833843 670719299 734752166 820263768 655900294 820425983 835047151 970251253 776521463 889221556 139628872 320697525 109280446 843733591 837676019 939465010 955965166 988707903 685061987 718748178 350121344 422362297 471834239 964159645 56310307 796318814 123023522 956405672 309526577 576513675 649104961 790823610 780405840 785598227 32294663 538824381 173452328 422786632 552410729 792974807 850767780 964345466 477573152 479213715 514969885 797233565 38615639 177808024 392918713 626852553 776066288 806053847 149749728 659608900 13844950 519212118 489690233 597701058 777683280 878379264 483519596 868962651 833161087 974827086 743025022 845842099 380492845 387767374 122321126 645974690 127701929 276372700 466769207 950645031 481568485 842614937 739341012 996901067 144495610 644996850 345930128 393900571 311851022 399824808 118382604 348370080 883510613 978256731 337347515 724351611 689816793 874899032 305715215 514049109 89221369 156222509 733123961 808600206 63624290 800893117 869038827 926488079 462284030 863739728 763600884 878297910 197079544 435356277 674389111 745624706 233679790 380968190 71123219 741848179 471279664 966420344 586446141 685193121 22680188 536576994 114608964 926245941 514290792 608929499 182243236 274467641 118803605 213179512 553077117 928804404 382346172 693471205 564341793 998015323 966572696 999890456 452360322 683105676 505255862 889882673 200409854 751873203 133522335 252178763 936650772 958862713 643183777 777727065 942532291 968380298 660905603 756846656 488053329 641249131 432692976 785813561 574716196 877612127 434322817 758034489 682423551 713427897 768375457 792894139 891484384 959854470 10858714 516926143 532948421 745292871 399092308 820605383 42084480 407686809 476214715 612350811 563681623 715954122 170820737 514324969 848454738 981937445 931918497 951054531 975003028 996353911 98980050 535591297 489001092 650089010 891388107 913912455 378434020 483731212 164056385 893302280 656595572 964602269 609217799 943487410 979874141 996505778 87552839 661959172 2946919 181140851 699748618 881597803 106080855 216062072 700235316 899315780 762911506 942041398 421613443 989748915 606767201 930595921 204674483 968234911 531979967 708087013 824704259 983515301 466047058 731360781 655213263 905760538 2972336 271402354 864490904 975557457 992047195 995325341 984789090 998897912 784458376 934164811 329411030 398388806 215782211 784279981 825055754 902984238 394849010 891974744 167338199 724615442 739935345 993350520 127202972 945292532 19899692 478809440 557097150 779108740 235362243 931562917 438375284 785890788 103084660 502366347 106455113 857119216 5511222 894325850 295696518 343795347 768902217 909478078 453974296 912799370 358565262 730230308 268835968 595982784 550710698 788577461 672263408 772563043 907139106 991215607 696430653 750505737 880953306 888422063 776590405 824550210 197137560 314780006 945779268 971903712 928839056 993182997 667592151 936978001 812103771 939764692 955469995 985081885 245530079 554552512 122798051 611612896 729579752 926646852 406982365 858188163 553297864 938619885 123056955 214659036 420330078 970468824 761267303 892884773 900164247 977502774 638776933 883974999 688517605 927582715 197154235 579299335 464999206 751608776 772735289 966493429 504829466 548355511 727031395 969287329 974727276 989380444 115209382 284846514 877188834 932064655 142677041 811495155 695952504 747598528 989811373 999420911 152629964 166266792 351000548 814482168 775191410 973731323 827972842 874559700 535644656 703181421 42111746 709604825 772497697 775731988 266391050 672299467 582124480 957357020 935987019 936351476 739320275 828203441 80073777 208890342 72209485 156535076 691661410 978072727 253608773 607488286 310100702 657024435 184997878 343768827 966996408 988044261 390184350 623780793 637423632 686186723 83844610 433489093 525390506 784886095 290402907 953379544 472981248 633092639 639296245 657886470 931935235 990071220 331788971 865330857 101411931 489321355 960788693 992283636 730726555 960454287 113562584 782241589 54236198 658095615 768984729 910802384 292540600 968068443 770105503 925959527 915561900 916924840 605142662 850597868 824428922 878866531 737128596 964534269 59538734 816013174 730436196 794965078 839257959 934492135 487183498 757917605 522727660 947782584 938254362 994058309 429389366 519075144 500334638 598940259 760447925 900563434 836327672 944153391 831689195 983388400 214303240 798113833 599616289 947554093 463155875 520246481 447272298 628126747 42531830 768187725 492009476 526013160 492612866 670771200 423250899 841399152 460748598 672631018 782964852 841083496 64814209 742305246 571600490 614106108 470999810 748874947 97388198 214607736 739422315 883400457 436779941 482861584 153684342 558596241 54088048 314019279 617398210 631579158 401096188 818762659 594346386 698908443 49056529 111905574 997764105 998970612 946500994 951128693 999137819 999315965 957245924 958462115 422110347 858248557 549793409 913410013 759308235 805124901 914845408 990566677 469279373 886209317 463140049 575441692 167816431 849685791 162849775 979071011 951447620 952600810 31079098 432669746 953326833 969662968 529640517 838368576 130871702 546257006 972941170 983445465 719372466 738021624 361814246 563834414 999584834 999948656 526196036 569216243 772454262 930659499 7393310 426292894 386998746 746989486 589658419 797400919 126560043 616129806 662401148 862174042 38945813 955546369 838177062 985462947 250373953 549099943 799929182 863443513 121526206 242491841 16434800 692141722 145499442 970456569 433136489 668511493 275131149 307474308 360874151 373513264 768154201 861273630 300862222 464674310 347966406 444412298 73626843 359295257 631279198 866736793 479433300 689510713 841057180 851007211 510552902 570973296 393400394 707781286 505304708 868556044 67290785 538190662 838244298 988663716 535317464 633191089 258138795 794144879 585319167 692239899 687254559 890290457 762951797 855126365 266845821 591062017 824944902 977886756 378979526 845222322 860344914 883580733 325110308 919733381 342361810 507818300 744669196 778179986 212637944 310261021 654690193 761542491 982509858 998942238 670910978 774211557 915064778 962985506 131289228 528543784 882464759 993102375 85316617 926318977 534212344 708371330 887460851 889374760 215159346 227293724 245392083 940921705 17314431 553735971 341539890 443205273 692937575 728081402 541751636 841360175 217808631 363132240 569389597 902801611 952019887 970634328 991055653 999851358 479216 219722582 470749551 612428422 473211494 541838955 164087024 815256957 474719845 860732955 6499614 654709357 766130519 832223801 810290707 988555366 600008839 749123047 530493284 874737446 517161343 541415912 56720160 768282378 686036107 922264551 848232858 891167619 752907159 857155344 669711222 835229458 787647163 859498145 567235319 910665004 491982548 730414255 165026607 710108972 508142650 676418258 351481097 458250742 61696339 635918995 515112346 721759873 545521739 743000582 628899497 750678526 786295533 947013383 366574976 989209486 723406370 826425341 401349016 479049273 278233406 782760770 912903372 954576494 934690708 998274653 781669433 789171188 561661812 753661455 505156306 904255395 493957034 812764665 467631601 712582799 84970270 542089224 875015574 953551149 637100705 783491671 69596043 309193648 960456859 977323366 589034142 825603688 984142899 996247137 106531412 763034030 458307800 793967941 499636017 876978415 617911689 633193663 480715453 853812055 224886850 941939287 37647964 835216285 537525183 586464201 900266896 974741502 539344745 708783304 220538018 252705967 764040363 796397028 380899785 440179212 119978221 935919203 856459946 926876816 582772076 970546898 554669840 981955593 449666178 672519654 363889902 365435525 61973805 487745856 770046859 805868200 20076879 60023488 531592468 652118684 841787821 912159411 783207139 874628768 643890947 811556715 749450654 988452229 170997093 262225779 837308649 963365681 987789746 994512599 16627458 134399796 933010584 963683637 474805621 849867956 241021237 427420414 75890128 380061226 78542575 300295847 266600145 474400583 753463444 761271156 122372850 373438553 891303404 977779695 190023851 546413735 603174098 670924883 573184618 646689105 891775643 911779668 410683076 980908708 351862404 674629927 656972999 822671590 750512077 931615439 981591851 984165839 462289099 561966753 851455240 924168392 413046503 950614088 552593610 964609646 587066800 638229419 6469345 424050091 394635860 918783202 8659858 689772790 870958333 948927667 534447958 901034105 452256564 536519250 919085067 925266158 967296377 967980115 877525494 980092600 897774320 914606863 113968844 556010785 791630801 818727131 63765360 875033541 15866516 942230744 944936809 980228590 134159601 792609652 144011004 655904113 146561283 982730076 548456196 746562118 811966870 971907707 153928183 383087856 500484667 856510360 642347101 707984031 919518964 936148951 940030342 949599400 522489663 665668836 392786320 821241509 607019229 662177867 188767987 329671593 629271087 782103516 78177010 611228349 243225807 492556330 439842877 717395268 217487342 866081723 356301603 960836639 486218222 758727587 818309437 899932305 409596290 460025387 902369378 991605112 917130193 960140204 932870720 952962321 737717084 783466771 153667875 380118592 937742149 970898047 678087230 711488840 579289770 649081709 891714246 966170658 179492221 669217606 651471950 732913625 483133009 512234023 657090046 879322999 560299511 654091238 207534739 679647847 513104359 709717629 458436181 853443664 158156854 815046730 593256086 659506188 877162402 960882021 273289861 491148784 680632818 935314920 31248593 734257772 388747710 756314170 756472843 908389042 41098631 364869418 647781721 722480287 489817610 549547281 422181595 807680946 272223340 315377464 450306220 853467066 551249173 595929975 876703974 918851928 402531616 700766939 933691891 989504907 473958983 716659871 857265228 869660080 94205514 915239899 680327969 947768021 486511438 544804169 234894350 994770150 916560201 958527567 419738575 924875394 141138285 479224720 717684148 719168684 148622574 484262361 458075933 807060807 457776539 502693375 465559733 905846490 586340613 789954058 849734077 916826794 65483948 255405354 698151017 699084954 664235350 751883953 869222201 886492590 355412608 732852292 796039421 812837517 850056996 929545378 773570012 936805360 277739590 314568356 960613390 980023947 988917509 998844027 977684215 995841076 981975453 993534340 15658189 810603360 693834568 761262949 596448758 697236380 316812571 558071328 722178711 938830688 307818434 476672902 667479921 701685519 143846736 346742520 496417871 761877714 700285379 762002938 489808570 747162266 38133003 817830701 49284454 535893460 653608856 959108912 59550196 778672798 34879626 373324464 906475496 909295479 264162213 500179125 499940069 863532381 23332616 743539171 89980627 759101759 730491425 881389509 279816712 893188073 882891302 911370447 398583967 506575803 904818114 914001260 19362416 883536776 792634380 926864144 759741752 795117161 456373882 565916698 771066447 820329092 778933787 820158036 604959763 916286110 671406908 762349555 904769780 919556454 460873399 808329623 148957264 871735926 226653514 840530867 574025491 648441921 526756977 829851306 224953699 639137838 937229655 965070265 219151034 891475868 873233512 883688788 731531890 913611821 174868632 434265312 217549025 620611459 454215342 766204350 192650381 955865233 45116862 632371174 163324165 540707586 678008778 701094286 321313018 755915311 65839044 576198699 511347784 663587229 452380921 606138964 159082074 722181050 859347562 890622529 217759449 275665961 751965754 764098958 636173609 868453320 437141532 997622107 650453285 853884093 722246977 893004156 823966461 885932254 178529571 271632659 159093373 332223643 907953755 932035434 926779708 959019348 101943437 963199724 346273423 983806712 597979945 639954213 959064278 969725498 408114202 798645412 494815358 825041013 459174290 869721875 91216999 917828429 180921655 730739551 56498562 666457259 593724101 717054454 999133736 999234134 215007771 944659702 626898492 934257529 389733690 765136938 1878787 759617808 498800465 790791061 530140204 953305848 867818065 953059162 734645105 867263626 461773947 753062071 831098350 874325772 772935088 822501826 209789980 326366194 946664196 969747669 210361549 848622352 248399701 555978083 438958652 461652106 628676549 871198275 174082522 591148737 849615790 932697023 760792039 992229030 27192952 676399029 544711668 928161521 528595924 605367359 622180782 803022940 691665430 866192149 40073366 213784595 45222670 439971652 33455773 808647855 149059543 218000568 777838613 966908583 264580908 567416610 749131070 809626832 914225598 957541661 78491832 940858226 220385161 519121311 874502499 915833321 168400680 280458056 738671538 935469464 500972048 620622008 312592735 755484694 423622529 464887338 590165232 697074699 342937369 441999562 484049640 998568907 496343571 547126660 590104561 737346774 779280364 918179333 251306531 330869229 176475822 515301740 363042075 960900809 996374027 998389209 892041365 956544568 626317417 932638488 994129269 995708783 96644702 693822995 729510630 731120287 813439967 865704266 897131551 944089417 677960566 995921913 584270091 731007621 796733032 978404671 85972639 269109467 98228851 829366696 107497667 852233637 803128264 924073999 635700290 693613073 136347955 623374875 367208573 776472286 95859995 275104969 773334743 905314926 927440432 947020635 427366799 885747620 362079100 887758660 22785480 265156750 210452002 676961994 855086594 899082044 242919796 779265285 655539299 986161506 361178181 675468483 984750709 991384098 173664271 643342232 839376134 937151457 375355298 451676984 495461642 799657875 323311688 970396078 543484362 972682251 432532485 493713263 912779133 996685081 283225795 461424533 283706887 917662821 770839070 984412641 277326547 808406719 638569543 863139919 723321156 786668266 185554778 692839966 951695196 986466786 153373555 179349580 809533355 871276335 500923164 565542989 957669764 979465691 711140898 738803639 108766358 195562266 424190561 773082057 442880259 982588945 32150611 137784331 828839774 939816356 92221564 928546651 839571142 889019318 401134755 545308804 772037622 813280815 468866000 475127026 699399443 934323329 951618177 953490050 434656091 816284199 717907836 759537539 587398068 735926073 501225562 709400407 209578960 930113648 816372673 962190316 543876256 636209942 692432728 783816269 571760821 939825262 712525699 888520141 350768992 591888887 740293635 761411826 877944668 887878804 67255045 528055789 151180850 976550510 489429008 910798219 520863335 746679181 780807918 792646561 436335075 875632908 768236822 775449699 415864392 688120104 303843913 313077649 556593521 949817355 90591544 860293243 462877502 640781814 976877455 985193778 703508195 805650793 11029578 389781593 928226927 995041578 901903188 962414490 479846409 806941385 172720036 758483664 215660797 246027305 143746833 448487327 694258327 973230574 112076383 396707425 28752466 388819898 318384878 372734923 239926689 269444892 459641293 832929721 840608257 883639090 449183035 993295627 915644957 956662923 914816220 996711456 419880123 912010589 657537694 920384261 848542087 939957225 3282512 593602913 828768666 869872169 552669547 825976969 320533540 593946625 295958263 651526327 342920487 700189087 663047205 709317682 341449027 664303551 965796785 993542039 821804152 830605766 872334487 901108939 202612729 841669398 922046605 940211498 242145091 294616996 461939987 996784783 453343515 838440627 222400638 803238069 880804009 992853011 467489322 750377817 665728115 886791162 835165144 910690652 842807934 975750929 703738321 976564470 83556706 340374115 858859884 972293109 804492645 998277997 705501129 837080776 574366888 812081014 858248063 895988576 356940703 699499066 765467137 785221049 819615236 873468388 816835129 969721155 193590687 286518144 359948435 895945588 868682485 923008166 302679364 586750511 922576102 947786148 550164272 651020566 340138500 739928241 501835678 849786235 693544676 754861879 488100688 748219051 640559084 925674742 424592813 444462216 372179509 571173529 138750816 997426937 46110243 481260537 187434098 293286350 464609303 804841711 440857920 834360827 957496619 993715122 883727812 998024343 627847749 808494562 435632123 714111686 513612328 968071679 47143694 781285584 534430882 643713326 839958957 871733875 431929440 655111635 435120070 770033954 318596035 619190655 616184225 714961262 167817057 712355080 843265086 899909918 449781322 841598656 946275474 948962185 716202702 939861593 797986009 896403312 177777363 330226545 651666325 731368970 509109802 555962072 215549384 879483099 575114972 742186425 645184462 922113480 152235033 179950827 190941739 635473845 156541580 671040502 155155498 864736320 359686666 897946957 967348264 996054611 941407810 949154010 294216597 640160782 314520589 557261079 135169277 148148106 660892976 791595618 528839037 589909553 498170991 605672381 132832834 937006078 6412360 168846276 681181170 919200478 142607626 372502933 199311906 407395396 603243342 729651605 369552159 661505060 680424871 882185188 626284333 868543907 879164616 898812462 553370885 868151376 280506318 702449953 426566554 690082764 859338811 893536412 865778600 874436036 767084529 881051925 434359315 598921376 752424562 982587071 907267947 947453678 406401923 481387535 751477017 944522396 976750450 981584555 447289138 842219835 855992037 954448291 174972955 827248786 656518873 740442376 828508358 883675483 919391921 965205934 675949865 875652126 859117283 923964845 917589549 931502427 904410419 936152698 301739766 860821937 929984507 941274876 95743480 663822095 35410686 584836929 602009450 877550767 330774507 378134391 328613820 965627710 86499133 124136105 194549238 540412178 297380412 892907492 31126926 760997222 823319546 842261599 189700562 574055032 987472337 995998942 397147187 556518563 335723333 372262761 490801900 878224018 917181868 956567819 662689188 905044796 271682061 369270865 208920490 575123181 263465909 794016280 721461424 964827772 876437044 955470371 910835663 993881376 857119044 910039677 139754031 572752401 752194406 932586582 396632189 944970338 375815058 880683870 955752292 986427657 655409288 714218529 97637183 761373080 714506895 866143425 952142992 966455114 391477370 844418856 836015176 941847864 804406016 952773224 587339197 760533600 833421165 976789002 529830437 855788374 933001465 933758066 59236452 781284445 697085307 716215344 43084447 272042485 767753240 884114180 693661606 984467009 528675002 922911363 304177692 895906213 708720717 812801153 203590044 710269124 423064783 457046498 307856535 959597361 605966135 825231220 85099151 504646792 989596301 994566785 486792363 908514240 495498695 574413533 852496152 913840979 794829420 860761676 584970965 861303028 451227866 567731356 438192163 856100069 81683973 983587246 634250147 915173129 209169853 623943695 743484893 782083915 818555064 880831315 506209415 512797078 133029477 186642314 180336086 909003511 198714604 463868699 11452195 151674821 744102546 858215699 208876759 492884361 221348836 420444828 716866433 741960318 136308650 351312682 916419910 996913840 833004861 866518383 713374921 815394902 756297333 985877316 703293140 891572787 393364523 943732786 959366384 971273391 368898210 765717808 263302632 302013885 279654238 543301590 679419500 749500589 50946288 955766288 708818326 710579327 336150206 371874198 285412411 692965534 385038553 569499497 527341974 609865029 389169175 683236061 140510383 711454118 456302848 586663105 3017351 363424907 392649848 811478803 264269557 847516160 600444779 737290516 62192243 336784105 571174648 629688034 918713013 953643439 572612654 595579990 115211698 838588653 103873591 349637919 752768731 966913616 324222019 331792542 329032595 414431679 37046813 912242956 6480902 468842533 508521762 571189958 829351421 985913816 630177411 674462342 506619735 683766079 129534849 269964863 250191274 276730824 373756471 860934783 924284727 937614042 2557343 744494958 305518413 725656662 671248608 690199573 754296711 987916319 363063997 656790164 956502048 997880104 932580180 949971159 580280950 937575472 985712196 988481690 711659696 822242247 240477736 998696304 251859018 323518483 663855221 996832266 168261339 318746706 115748560 133953543 522452513 803922759 798299177 927899742 319351871 594599657 282194055 789330655 790338479 851870033 439838623 912836754 261541934 665097258 172665512 668869444 452994323 953003181 545605451 657223412 591062485 912825370 788588569 965830865 165506118 353171042 138549496 958400846 462908565 836242722 321371677 623507092 194430880 338038628 99550196 313886983 751115665 948480780 837344861 912830200 837221417 858102095 719211224 955104395 579573978 687202133 752703522 993140143 218955620 567617357 732418874 988561522 613977743 715515124 422635687 683950149 327254563 538870854 986413219 995263567 437903597 676531734 959069942 976253413 591778697 949229492 167133451 927389533 133976355 791823037 347642535 833656880 474954128 662601476 945685237 985752002 770043504 925215081 37004741 394329483 500122817 684833099 515294234 990110837 197120915 317870855 40412491 820530473 553077669 841157105 759509094 830087838 467839922 485254501 348360687 748508125 553750254 608781500 764985358 917066698 192699577 729444118 582741630 622224298 698139718 982476506 897877656 956311343 658032419 769544011 932896030 972607070 3193510 126389829 954036723 977141131 552306373 735180492 837823603 901070209 255607747 903383358 768198138 906457319 749224008 750659929 918055665 997199964 386851454 498286940 93985924 301095332 14470635 803738709 838551488 933832568 395203702 645965649 157791922 596456530 400272477 449989717 823605200 851558579 849197226 968294685 97971421 670701543 48271924 512866508 35641981 209501727 444929097 863960711 699642973 830523443 905464861 992781273 920119543 933584951 916648595 953939627 360468917 924908975 371237748 647457062 463080363 942024402 592922903 708952102 111197475 994475406 145106740 657398869 483564659 963265923 402399896 914976813 871022580 940964787 369632847 992742759 574790345 638562405 925878449 972899689 709414561 958877350 639410777 763182725 63791921 793492531 283430427 464191511 242314968 254342313 867069520 994011090 965402886 965593774 821299365 964984121 174245980 901139547 588242082 595835939 487255230 943806692 932959440 946519390 592081518 714997147 852502299 993014179 194838082 986828745 509470921 715568335 709971965 989556139 685741111 983194665 894414876 925812868 442856844 538866267 240488770 697265876 507837288 902070626 635312661 972950410 127423176 410999293 215972391 628876972 97541119 466613499 46835251 733018439 764582351 925901477 955766333 983355118 28086053 319081849 416197043 419392872 53954410 873006699 221453063 972335769 9716063 312124242 365430784 544995226 45899548 950644877 442193011 777916196 155995811 871226852 72876042 793166266 71535143 457712121 282619676 334495189 944511023 951353705 305502800 460988064 114831819 992593082 215304196 359710057 783912271 929476953 131277345 284411888 687588556 934244568 684145378 972772488 583682356 676707260 733953042 783407787 902547391 948571940 108234787 336722890 241541225 656686529 182696262 319340435 955790198 985302504 549449300 889933254 214628899 984832767 482589793 602814155 545795249 931419334 524927494 738579509 241663489 926433932 47664040 589305409 15331337 343134251 443537579 701333858 888392157 991954631 685484175 704663170 533246769 821846095 285464162 955257036 193044873 497979649 713372534 933469778 566529155 674474310 981146151 997273855 950405471 955158919 928719877 945620180 391546920 973986389 885403228 906530576 356838772 437818575 534087826 742941592 980902175 984914726 24200338 981175068 166797240 750692166 386975687 637609028 965787563 980163119 983013853 994985960 412823240 430205401 94787357 452684692 52760444 71102201 616064073 668763071 411217384 621302073 239136609 289567471 751984469 827469183 630191862 916587541 818316599 840359753 792426193 971885563 928660145 991674274 797374950 800431157 198787539 392260590 953035023 980379391 786270176 989112082 830083511 863188503 276587143 461261252 614034931 694768566 500465385 657116326 91470056 384341391 11553607 642256926 452805905 497425699 977151146 978352890 324912219 732731396 197945497 802317005 592139292 849165272 829228406 955663728 43477016 532100841 107326298 888816375 195352354 900685611 371310881 792815948 144328142 470429613 275173259 297245480 929286145 930051787 261345475 969771609 299292894 655355207 116446002 829148235 235816928 444557240 88058141 138291184 468059241 580491251 905131166 928732195 679827711 810475256 848360362 882723623 325472071 904627174 973998249 989607806 62403187 730873338 97834692 262561196 747475642 799149392 31794559 543169048 721712935 812869639 725072223 753417620 133470302 954269695 239082783 684229018 118895975 146618765 706896517 845564617 610538204 938465632 995571710 999744133 130909046 694016992 447623634 506527024 573361709 606743027 937456823 950145262 578949818 718160207 594391662 618041808 834431751 923671892 419413111 700697745 146452738 288899262 863880133 894673970 797119648 859188327 803351159 823913342 362665988 818825490 227909705 608782424 215186474 460092787 581188392 685966494 533162224 697506955 607671163 906977585 796135237 884782986 942079275 969378009 879297052 937784770 547462428 886299117 920853470 972092703 760035373 836720986 499911884 609683581 788058196 807166271 217025088 562701088 262540401 916983723 180021561 974604541 856787938 876759736 720834601 804458104 350549242 995117652 121431269 896508369 474547181 600181151 938290627 984112450 380058615 383000469 554960837 968864875 92270517 160650659 137187892 618084321 507664978 773546554 143336888 599366351 74614109 942063412 361186121 874163868 54825953 992964580 790155066 937120419 727131488 964409014 832868184 886704294 504573323 693014299 67916827 738695525 840985807 846275344 990877210 992580942 253498678 865874777 786253828 872005239 195393348 564480023 257389777 735551705 294349365 323476258 847059860 858200383 558172603 946784282 506991087 920034114 841196386 944360776 908462118 938386098 655073527 783856199 185152428 206785448 171102181 877876445 693600393 865817213 640028824 793864422 703934881 818789245 205520872 505823025 664615900 884271499 127240178 947137309 438487992 518541822 926110609 980742068 807871369 828209014 991916855 998973969 216485881 954358217 41085601 376730026 710133445 831141604 904790692 915368452 795768199 978792974 341639180 386532855 854688646 909667278 260351191 878117526 956203806 966369812 971333331 979007640 6848036 121131198 971025051 988957851 902039898 975566400 249096290 407521347 299383995 665798440 510476179 627314167 505491941 684520912 529928252 732459954 320660575 570425568 670870843 957331331 835510186 992829924 769694670 862088979 516544429 681881257 683922522 972447177 981909374 990316972 360962748 451867702 148304913 519016574 507933313 919153432 495340183 768494153 616104986 813057292 395424891 829699824 233561971 527958731 926609359 946817515 373329651 886295209 520876903 839131930 390906857 823594961 479669426 909058986 448016659 701319085 611859172 630225285 393393094 405610767 750612078 858395940 335631151 955238524 456297835 641352526 35370284 95707206 800237099 975388268 482232461 662252637 39620436 497549100 484494306 793075785 97140286 745744478 531185397 930821151 995507748 996645847 893565156 915345743 597814358 917595812 407739443 506963806 996439223 997497127 890763643 921230559 75211983 925814653 855653508 960068878 755548161 949958544 39245714 903369791 311339228 856073405 396281856 577106888 721659474 881330558 603352586 946559478 323152860 672437646 233413341 885292685 137528070 241269743 766908095 806669702 46571897 254873794 249967511 688050891 90141819 380681903 571628164 622815718 551985489 810049760 347266331 637092635 817809795 991504051 834255283 834674284 600736478 875581383 699488754 981120787 245261233 744953106 655830692 739139250 147787298 489520037 804705201 929879841 771060767 792642469 112867262 413827334 185646754 875414913 586249559 637722148 840138295 877897502 258914083 625399050 729946098 772442591 658027072 820323197 867587736 894753885 763345401 770981303 101418794 721150393 251711037 618755250 144340198 527371231 267140445 695996437 990960426 994959430 448240944 617003124 230647701 245816414 774714825 965906515 332616030 616945814 477727927 616670182 71612102 95938093 71062140 312574749 535479558 856303947 794418365 996213602 980153264 980728701 865985227 982505186 706840685 788961774 862588890 927199788 448262981 651624874 98278171 470464902 975706272 988297438 951842218 963460768 858469137 895536098 417824054 669758997 272243476 611359767 220458595 345167629 257537656 259382761 755998907 939634575 672191421 706717172 951697348 954219618 9493950 798557342 414473603 609428728 192652086 428817843 283738539 962038235 577958945 792333558 652353589 980038438 342315554 689119573 983912918 984838298 401658307 954630032 589572667 602732992 948858055 987543642 46416158 855056906 564917800 939205477 461969503 508192142 25429643 47237860 690832233 772991816 395585652 546325001 678003152 688314814 194403343 481470117 644123575 785793421 778552967 873784006 642375944 682906866 796037280 860505070 566583527 928548667 766438059 992614325 81185490 413496581 534417733 771981755 1057050 68854205 658988105 878791730 483014742 861045698 289826862 778928490 287186046 640430115 213420586 463514487 25173920 93484520 952182633 967264116 17402393 164710855 719158280 724148882 604143780 991784081 561964071 635592418 761061681 900464174 376592617 737803682 743514411 933126690 38039400 225499729 93700684 306894970 110774073 442149284 684074642 817776712 756247771 997647577 627667498 778549310 603722419 682503412 581760112 654145163 22574017 584086118 510897268 993162890 456561466 514691252 290981018 571099623 314629019 945540224 139456072 212276428 8001699 430547778 879303133 979177503 932625979 959786157 283592280 630428911 228772029 563737058 562070086 708933450 974017242 981354206 984353244 993268749 466289664 564914018 245821434 671305736 97903476 380057239 995887066 998990484 676729543 833812946 600013882 811429376 254432617 794056373 184780245 293284268 650491227 934263093 295565051 729094319 705729712 802247163 286236284 638262466 35962034 185053719 61158621 929186330 126929580 253394121 90761497 286530930 385193613 835765498 31144869 481911262 411752815 945978916 437243170 653345670 830490508 927543652 636096043 998280895 53426777 129928359 902248493 960739612 234502783 710804681 87779272 273954560 357841093 447301095 171619224 703868208 44586791 710273497 699493163 890985035 352118754 678066991 370893842 580083246 359976552 390590521 109225392 999054229 222656996 392935567 98902650 727263936 939858513 971835544 156998006 951372477 92056271 601444013 563589344 823483580 457966031 857726977 510552698 740796911 114716906 706105252 438252671 491935301 949430003 971838825 603780032 964321360 333782115 998029168 199245565 507425078 449953934 823329852 743317664 921439171 188417604 501774003 474065985 728699097 698283737 701668737 765466894 962295782 774424553 985257337 865860107 968031534 214762627 956304515 247078133 702651913 509104255 812285887 151778038 779086828 893662655 899799399 635133439 697741431 350642266 697769085 274651250 430557853 540804191 936982358 961326677 991276499 817981998 885044634 647192480 919892312 184237051 638842002 529002096 951409591 301362147 845578022 933148252 946326447 921850377 937836771 711481260 920395966 502702626 903134054 980362782 988331480 968338972 988372769 121156521 917047288 656848200 681641396 189398969 681774838 971180971 987041255 550688556 877065617 316774374 538209818 329719591 578954001 750970226 798076081 145931854 656007064 76273245 141352991 912393261 984718522 757345858 918009390 272266019 295389979 260636922 356811546 143971878 588909639 342949283 532163176 735106096 753669182 172492237 381613788 464923346 586039272 131615556 511272455 722017108 838333737 843509468 950897264 261268021 648382804 291046 345338507 447440044 864056231 738822880 950122353 179057190 659329190 261723480 728996748 580929437 665293791 768310919 807057315 828688145 948270201 165687886 858171096 431467904 589850562 125197394 423893890 44515951 82035374 1169354 86497465 886520609 960568718 787152495 910005031 851899696 944853365 319707520 638721589 361350719 480328174 585578652 804326629 86174656 751339833 74938986 432388429 333196410 965057325 68508660 719907210 384198051 862717468 531975082 557370264 834578235 859697777 63717396 153927539 681643735 843778342 925762884 982462711 245996545 765643115 178074157 789362989 975941663 993800048 635440328 944147296 388074590 878579951 811742357 978990632 363747819 443855242 506281642 971746906 867907376 988971715 150803279 714801939 15049939 640432849 178202700 733456682 977696769 981302654 402918304 685349724 199087440 936098297 744565771 780234843 94601746 306900231 631382333 904132240 291170965 756459057 846582699 971357944 565986978 632006699 789001624 922358906 885832512 895844188 625021283 796629668 337640952 862376128 53076710 344446347 359298121 652068402 23586064 996723248 90883530 252467417 293830728 823232629 279293205 887488378 656651635 812009715 516485797 928717856 785379405 805904929 378504033 388600142 306358496 841802263 54110970 201631042 910717656 957137470 466682804 621093675 225559613 781128511 191523478 215734119 212991942 643835633 407360293 978957752 390853622 932974131 552119171 644000927 512819058 915644957 357922083 983597016 789969680 915950751 13321498 550385130 553478976 732886089 852967330 950234136 513016836 902529439 568207490 961338058 639953143 773371351 487020636 507791020 382178163 988908531 426175035 717693094 705639315 714887404 869330939 990005091 676038304 743266814 134647531 846039255 577634708 915066908 90299797 285708918 238673363 298715298 353894412 766469289 848691829 974091157 889244370 917384197 744613130 922833178 660809301 799625837 146101937 315492349 922809067 967806629 843608444 917181905 478862064 485235592 264918308 506125848 515647063 921973299 730088923 778650538 999098591 999230467 41483817 827180063 661817417 720697134 469434701 865081780 756111450 935679784 766723771 784047813 147628257 764200346 847916281 926994607 96053335 781721253 175928257 185931780 219342689 494925811 637068257 819970508 937373001 998600113 495669004 879486558 708184206 951324668 290407320 765332384 256452696 512046757 568800960 663689249 959148981 998012400 835890053 946234265 38781385 876209435 850541385 954684600 795220540 805762794 769498805 906274805 107046167 270445078 9285150 310154332 867745557 979095321 27307790 753734865 774969263 893516798 62128162 977904894 162732052 514732619 529665926 697036310 101236420 713423589 941559336 992518857 569125091 795619936 584486556 850639899 817607223 934603841 675901720 793484778 970464227 990909987 996414347 999421403 642588722 821303056 1292990 355333689 690304119 931050740 8158258 746968018 674107950 675800360 432655288 589137207 4436922 96181177 365272655 601825313 669549094 687990617 916643541 968212159 604011782 624913077 588222151 973723066 377480958 912096688 284376147 955480249 183730969 775162155 333712081 902472439 562809417 794275695 38301642 972182656 249724167 944482912 443048512 912013972 594649323 821905374 228012422 584432392 902934546 968278238 770117981 788941228 228222272 580609172 509195380 680111001 444654732 493516014 4705685 851366867 641400226 841705381 653218113 670948975 803055414 846422398 783572836 885049977 878898189 952590653 26830374 964275158 368343864 715571117 178452424 344838351 471098354 606251826 293840228 744183297 199073838 321884083 669041499 977582665 764729109 818962689 886865559 902767168 880687331 982366646 898371577 941318626 614811587 979812032 888648609 924086244 266984946 736632995 674328777 972234544 938893375 947075484 945098893 981323710 46197836 230180854 132612119 272712787 669696821 891477461 509630354 838029459 737667594 854231431 132783544 266877630 430827935 581823533 787143925 933304774 710245663 807200067 662380718 877698773 362746770 987477053 815615300 999080383 29332044 934422741 611279462 805049175 791535817 854848579 428285931 446699233 964572819 987834174 576041745 605841037 977619610 980283112 437697262 706346734 216347615 850101683 11421423 332059409 596424615 718351604 537488048 857043569 241211685 760105617 999613718 999750542 748607845 766923898 804065910 893851254 749102351 936646192 35893233 681295761 723664100 811586444 629944099 971824610 301675385 452430392 839693244 938459279 720733623 987918945 27768122 848559346 508895347 511020574 46980471 255533987 140948235 468844554 824444768 978583444 189589497 736306441 998901906 999822395 375778225 420751073 594881697 612521641 902810946 963515487 643935810 836063760 41613718 632160938 415479846 994853813 311842888 527216747 949022463 993811429 425311864 584023080 656238918 884197608 706399515 825055715 724581331 730135316 567888686 778021644 817605691 842394257 718893071 833864274 115705807 620933440 947049031 958835347 739770580 918545301 201648494 550006396 94904121 968206822 897886700 989581632 943175277 978167363 484759438 783555015 770598113 775841971 303323784 384807761 48525149 55697103 731738762 877476091 863669425 948368266 538224239 666697010 432561211 540002329 146658934 680469832 483562189 953660267 969700511 982774840 766730714 994005302 377781965 471431755 674803899 818239918 634282191 688901875 673492443 720020381 141215889 196332452 409326837 621510250 324649712 393112130 932087576 941730605 544405297 581423521 637292519 771739608 135743337 944248632 908921751 991117069 963683130 990097490 913065281 948450071 252719410 690736137 44101468 678937165 715653215 790961029 490307676 520740312 893159083 995818789 190530171 546530947 765816374 954007289 493067471 679207672 693365808 820809871 628349715 772962781 417413218 542560397 564448818 711737671 348244015 391569092 357698404 853017262 422799370 538720499 328675207 987772100 643451074 661476690 700564896 751098803 685288210 979876483 576245853 682762953 96973553 346467783 942520069 964399512 668551825 822038033 106814662 725306564 649822869 961432498 935206291 937273359 270824379 523820819 123881842 822697135 974694133 977679375 525172926 665529174 299293718 531230904 786539322 974583622 550321809 578116360 764622803 906354980 486661211 499658937 942000498 964553973 924975526 937755096 473057379 938994936 819248379 837850670 300603056 538152646 445109750 968418350 495240332 685169621 747410005 876881796 292638320 589462786 639217815 681731617 775825089 781498244 160490234 440127875 540806456 960508977 394372346 823580980 6868476 488916007 393875149 760907351 262873377 984356354 485501484 931232568 83603533 557413066 941239722 951364751 161284049 792878729 622681545 777768865 447695134 584884834 395815736 539507088 179188730 995324813 738665094 763255043 422499576 848757042 714926370 903101319 644905550 980749104 293323672 378750500 747142021 749074819 49806231 606999908 417070847 591240979 834715146 836431920 940429912 967890411 723245127 811267616 286928505 355162110 256905649 649383579 975138503 981607847 977200529 987297444 454352187 662258354 330191817 973071803 837195102 930454674 143590356 461118312 86866294 383995061 459802239 923497281 902262313 950817829 415568175 658958593 203009388 222130146 442052235 896120437 426122099 599864323 144591238 225141247 307290247 685787382 585116626 708556198 48827813 240144305 338291654 633400421 218047721 603715679 261653845 479293473 167243881 696456378 157195830 626916612 653667442 752140451 304906472 514608753 37564548 693151422 398338160 649723588 594285499 606226749 76949230 240793775 900228303 930270485 487980947 711112689 647655241 872508762 900745474 903984523 974561765 975039179 849123607 984851254 590124825 972261109 389241119 849459879 196309226 670741726 307531778 460418849 86894970 265629688 529567900 619044249 620486433 801519721 814944282 863338193 690750986 973067440 3382241 8263504 709842227 780494519 884570388 944818953 298439569 544719860 384694863 415854209 370490703 447013945 925045377 933536914 187411843 626602692 387781543 945515222 143327525 266707421 968238214 979144198 630476541 920140848 657585225 863831343 122316672 193108103 215520374 557468797 723040211 735198483 379986016 635100930 46484752 242405849 895856477 915969931 387601756 868058495 491490231 955090377 218460677 512069377 137002705 572263013 715916807 877135985 55553279 100809397 292666354 360373509 673570622 783449129 696631961 835289712 54752632 633451213 730177143 827596066 21811185 247805240 310472586 383712189 575543069 796420996 487929596 765962504 727591218 970486702 937857248 986848039 298854716 372959864 468108278 851664091 86183469 847361336 755803316 820003739 815656220 828802465 248020170 469050625 121182492 162713443 858990725 862390214 761095580 901259669 538669898 771739011 129554747 754508316 252385284 585887205 951499663 964525566 332716529 925610137 651901190 750613262 505054239 625886811 455773415 465396475 978226517 979966243 175929313 651566202 646859718 694698594 998020843 998863251 619807348 621600172 674851089 945852713 156545109 326538596 502901813 834216250 545728385 750200740 907486935 994413997 763360787 981696579 251325710 265133049 788369165 807872275 112579730 761128666 816826584 985595812 726181902 929079997 300538090 540832522 891955569 970337676 711611110 922984874 87373649 542362995 95099051 170167576 798830830 855834389 41994933 955708472 636028865 765172013 315174206 422640155 99577155 180833173 665991779 729298611 963783449 985270724 10525843 810413192 737519704 860114314 83784651 193305936 513149253 869981080 670894507 677102991 226102676 674287043 32010050 375675275 354612631 910611678 303117565 733994059 591248998 943143899 829848800 849902746 468205659 934033464 655453362 704737490 421379207 550795995 340335606 583540531 153903804 465652991 29668857 365083341 302899374 925214896 649725057 804405258 987032400 992431741 242524455 706144406 467191112 501140088 7031803 256081068 100909803 568031773 624070834 805090137 805486673 998056379 757457156 774843247 680236716 759389976 107567798 466057426 847746610 884234337 411237313 755268697 620303799 652801205 944039857 976977439 936533232 973389650 478061525 962139062 668197634 718422634 442383120 555307872 576083820 792841593 922119888 930069769 999798769 999965570 377809706 805043068 312654952 954881495 163933115 206738887 730828440 759854307 295537540 406510998 406852877 897625134 842118670 996186018 379174718 572351144 927169049 993953997 972674817 986803400 829642180 986205091 997298090 999846545 315241498 443333704 263283307 834817102 171462914 533139406 649954825 701607459 861837413 992227550 479102244 602472722 891491071 925856746 13693198 871750317 143804396 979728151 398548262 963296263 30835666 716909760 337291404 657481396 11222220 275143255 362404755 781377329 440248977 469000528 402986165 580151939 605411615 605762056 185543700 946600423 59910945 160947981 111825126 822662855 347546946 777742034 558116382 627236204 661896299 831345365 849080953 948612045 963888486 976552341 600618282 612765435 711481675 898983993 960590793 968874803 907274592 920344401 647766004 674179846 979546861 979578844 983877093 993980613 891689215 933278561 815645762 954610973 405192466 625665793 556255003 872753399 611716702 758520539 396362460 506466600 730025932 748565485 753507205 805006696 465112337 819114460 710028241 745773148 598537910 686214350 500848055 863004563 812206053 953868841 574755287 747773201 232597163 560656458 384278720 593024418 499329457 882637606 414644630 721086030 902220324 993104767 721414290 868300705 567697698 705133088 96682795 983605765 175522989 394731587 461841678 961085726 495167075 869957847 757990540 815536488 13068482 959031553 936175802 947926814 831693476 942511039 156721706 883973814 827503682 989230571 911532040 918261185 418687846 984430487 78836385 894515661 576407444 817854387 539722646 917017970 794271718 819235707 201831348 298511888 164572328 978517070 327765991 626848061 460026551 694435008 663755915 830162118 395692778 562461685 811971009 866250952 276997539 780529095 829441340 837788070 948689528 973466261 896383154 959423342 135761735 283956100 611180013 761691719 118156674 714485462 598685406 961019987 159969397 620715703 323424491 685090375 831851303 917116471 734762544 980829803 495512219 795828617 364384821 997289810 527417898 828483674 839340222 915473353 862888443 868265495 928410112 986995434 393814256 674069457 409348751 849198663 405673524 926720879 947830394 980149569 276862574 765431194 401227258 857173667 177752889 607983163 731875070 816327338 650735286 817604077 375432884 666058517 597349419 661081550 748365654 952964405 1684508 982663197 453765593 813296258 790432105 979594407 676726938 706397954 742026816 986639826 487961911 736434736 483277175 610778468 112413978 537428324 582111251 992585919 595073883 796275438 576406438 881075001 723749262 915045159 802378141 894344829 407039211 820215709 418393910 534529698 613746157 983469977 673177345 759862804 408749175 538844436 621660309 719579815 54104379 494712977 830495434 922273122 985658005 996810009 714194577 905729759 958606657 961021000 686859250 854725488 78827524 310751843 692961502 824279152 797209668 851846324 118145448 673863223 361901109 847601023 873537071 957027283 807825697 845758497 185153473 672907797 220320044 501934587 830410968 849775020 942111161 962341668 914734438 927693014 48166684 282002622 205635500 852064023 268294857 788786118 287465324 479399794 180750304 441243501 156108864 605550921 766124953 893359560 318522193 583420058 695706092 713904717 406689281 479766908 390302653 967538887 182657121 611902384 19036778 33262047 965216024 988594919 81984445 207000155 875116292 974088575 64743975 240454158 164684111 641865680 773500722 907737010 365879840 761910074 534983402 945491708 489977335 832907800 370952721 722348583 295609408 372748598 772562126 775830630 765383864 843312234 285788581 915751792 299356683 984387637 656299790 717064900 471323488 780195932 149194215 552772678 944024920 976390390 134992657 863185633 115862606 836834596 336457239 370222548 525464765 816976040 356876298 852039859 444822358 451029614 634643736 970427823 140118688 884098531 424761448 714608328 9877264 741947812 729393039 783969672 879414426 922781461 96363575 524765336 794520266 980395305 832576354 863220624 325672779 913694426 511560742 543785167 137196079 772475842 741598730 835389086 496351201 732483175 976048895 989998766 501660095 591730838 892383834 992167582 578764062 809205474 860364071 968270097 655704816 789144431 445313697 512805851 52961085 113686174 982407690 996869973 166835561 192517543 379092903 761730173 229918203 867480247 674316886 916756995 541923916 898930855 609043963 995363978 558127146 778964323 877961520 947046548 955284627 959315020 531512260 962162449 70984004 417309169 388133642 786725395 80788596 91246790 680527065 773631409 824306521 845351501 435251745 868790043 821194945 913720924 696626955 765543376 763953178 868696967 276572477 581789092 470092428 770806927 14390550 366315593 450969004 616515659 413416914 571388538 721037756 842464782 192819388 569352617 670170249 829967558 557493060 810241407 287455508 840446874 698426200 891137372 644380829 720850268 287330558 341637451 301485696 374736969 306002492 878813153 930454787 984270814 642695867 922568084 741918141 783361382 704089199 901205860 725202059 853220065 149173503 555914289 717942135 733868792 316523969 479617351 180498743 737956167 713028336 922878699 998887117 999130147 948291984 989923142 43363083 293428744 614248214 750578313 786485235 876818164 288748820 742496602 619002335 712038611 951678764 962066454 126580719 346399184 824674083 939058797 60701449 157214162 771215525 883234957 9668789 775627554 739155 2071348 842895417 869702184 713301516 978094504 748255775 791309778 9560657 959385157 514042149 598573382 4284513 618200556 261835217 369466721 540108922 779843688 187295201 208366953 33695449 657974964 20453214 123265556 666870529 952536852 594507809 708844540 297023097 716442808 723052784 938395641 636860886 690352232 841703121 992601075 19192182 366319854 386602558 736674441 217482246 833401904 321901123 605000836 16747860 104205185 784423975 848558995 840402417 909901499 334096505 780800695 228401316 376211090 658884450 664092413 657681063 905782049 862896046 922707342 727746619 738337160 132101439 982507718 411754051 896178686 390541322 967020973 202789734 522255379 872379807 993774278 498581054 809244303 901501097 955265265 617759220 634646529 55538674 672880582 38942429 973959049 477239954 980520869 875934952 880967940 515707873 850670634 187215385 194772312 273323417 964006423 202326871 617554388 442812033 777701476 483119105 802381083 917904398 955986922 848142531 953973392 585374380 673784180 139157847 354939404 610468078 787828984 672001629 863070613 678719407 682663596 583500051 653663047 233779650 333510545 329095480 800372896 422028950 995303130 376448104 644985290 954157974 971574271 498266036 678120678 410305433 685249050 625928462 906109984 124382131 521321587 827984263 918426815 585736775 846485913 735197852 815546815 212169152 355725852 972028136 987457367 92501563 184185740 404565831 510363808 419993461 516998578 89828252 480304476 229510133 640335252 349296701 830668848 357647893 531985625 325823636 848054893 101546718 683509327 525064845 556390295 418641480 916551976 575664599 762643621 977861346 978430248 740807033 954763014 737860811 737929658 885064416 950317652 783240899 997231253 184536346 217906090 671932071 876774494 683310538 741884103 757269141 862536121 782353245 862769647 864567268 930397694 560443016 660012100 427379062 741019965 117867423 189688579 20314270 709867643 21687169 756298317 531883086 821156498 215678514 715568185 202690378 684657113 140660621 369041249 112643851 686924122 636392666 664126692 131233130 756889991 233886274 837662675 521090540 989444286 571901611 920203723 946625197 983509402 767996611 952529007 744307234 963762370 504295413 669711120 987332611 990846736 604220683 628029365 387519706 510730142 399792445 426102527 82723696 991928896 853192480 878768471 682073718 734906243 955166248 959576023 435964362 547260027 132533357 213729262 7974509 68349084 365968903 939282088 282434911 818308232 171614349 476714249 395339418 970536149 991388438 997885342 280591524 585192243 29410524 633072187 805877032 844215418 173095281 428372908 581247419 951983498 412563477 703544894 876644998 943028453 153240016 440597616 216905253 292119651 230764077 808435003 765427986 927447363 604469269 780503639 478615715 493908889 527685984 990953740 108339685 250870093 130964179 710599080 979882348 991081147 589219462 707633039 61910468 819278005 423278534 540045976 239798406 743419799 720754894 921851661 137884990 936287384 117624885 538918520 941620424 979861564 427516922 492632867 423378865 451497413 983621810 990000216 16131598 223776264 905241103 945262181 656148613 669937379 300746468 923247713 139508460 335717223 767216793 974548089 820519167 987890007 190656960 516461950 125637912 511042475 554202972 701912707 462788114 735348088 225894546 306750760 846455411 861514032 685146484 818142890 748268198 919842981 448687647 531996935 150886449 246531210 203911207 376744870 95206098 732515210 228912200 553168594 119429030 347402650 243737799 715098966 259378195 898010420 320782347 965036910 645994523 993228706 518523742 605809436 637148345 660607823 616082157 626561256 631289100 713165832 382882643 823002184 580685760 790075580 337449870 757787059 728321929 847760018 868523968 915363386 65229293 404413015 165207099 217815448 75040295 655668206 241408881 364684150 88973712 815064521 857925296 978569261 318678594 524715279 757199664 984971951 46455740 187408537 820217843 863641480 499526446 885908636 962679584 991190794 371401756 914793884 260590835 538652118 462058522 727991588 578198720 681237236 972531846 978430886 86926163 915564035 727559785 953547192 766711006 879067061 188952641 676905396 358394052 497736309 277576817 708986563 417609266 821272987 389087464 598977494 352176558 744160836 95818201 240142105 484574890 940268153 633687142 829704015 510397858 723111744 443153464 801071809 612802389 911956061 294639061 364352850 743765233 745823977 667428772 820529106 162261769 919951816 63792031 906090248 819191687 871331848 813892342 936267033 742963798 864816636 121959808 155712633 10201315 352058519 882518085 932824970 445917816 884015763 934080357 937076884 245168462 979585758 852902167 981070675 503434852 868901699 983529439 987367649 40137066 910967626 375668275 610239010 960479502 980979121 354707742 729149468 322916280 841404593 446204591 609065696 614295953 642064821 435277077 831948377 425428506 927940144 87395272 109493560 72643054 218436624 824978723 969778881 944285612 985297368 815994092 887367673 825084190 897329663 377818331 583415610 319953640 603060733 962814616 973959816 27074697 546740271 22826628 405978863 539774989 643125478 32202776 312096730 887197823 957721040 923823496 998976866 963345192 983818887 575145973 889094818 28785570 380544585 98131909 125517458 374217540 846303820 619306519 852659272 814940102 933095105 915528134 920180665 461207357 998508440 535077532 994538002 729126972 911085919 511802060 785484869 153520952 856838671 580886004 849034633 516424067 975085592 284015920 544006618 291036276 767889483 836435368 941313059 847065792 928979156 963812766 990462404 97203760 763240886 660079456 993014532 51356379 879587848 217455589 293727574 479092393 916272196 31879638 65292821 665558293 874636190 577797432 762383457 773542100 886560539 554911441 744520782 144501003 990306910 136949162 646104717 272766621 516765862 730167606 764262514 75342968 109064420 913960868 925928080 992611610 997239072 536750945 560958729 291513981 498908312 25174410 70464492 422081639 796948242 470819308 763025737 442609735 579930963 512928578 704697650 438135022 481001628 615648892 853747052 809544709 993087347 754441061 993483971 335258036 843830380 962313503 965989253 273185659 575019633 215692514 505573841 356140116 777256775 97762634 860201196 416130135 631767547 520474889 578977786 108465 612861984 353124087 831781895 852378239 957956186 867665619 931804037 474201497 891031108 250317881 881325149 184724220 436525316 255779387 524048188 798491315 993277321 780123222 905725782 783230782 884463065 982621082 992413732 676313750 821755317 23192247 174178394 874872519 936672356 833510657 909412095 256207580 397238256 19646109 771447657 849839100 914602474 822047664 829627410 711936537 857829941 201081597 298690448 625566818 759842001 187285195 927633085 977207482 981385092 704269568 825474108 462711982 854842890 854973036 861844407 900176101 986729774 164247056 273580464 852164275 913890352 372020520 782651066 958727021 990021162 556402919 577281179 420493031 497457423 174741727 517548915 277776531 738449769 710284906 857128518 953160301 977991132 651947030 946690013 551226266 785227801 475261410 531578805 39796657 494820121 17507393 703198094 408354820 876673420 911638941 935253170 202636624 475328223 620202346 777357021 390379212 529667412 136081913 810362290 494338787 510268066 524763705 605139630 969138221 986388760 143848655 547652949 123520372 717644046 649458520 728506588 168711048 393634551 272527250 859931677 709581180 763001159 31091490 678866309 166312800 788349804 282552708 348189251 52318231 498105930 133266063 863447095 740273686 897091440 529142844 853742981 438036399 635644256 611770594 710405926 420253457 834271251 765004790 843685352 546486876 961959531 728108712 748324044 562089265 943159828 148128306 695709328 985279085 996939274 41355077 237189661 458783807 959536715 498165046 503811620 654114527 749119351 941456350 975325773 293947105 571982440 35334142 521960260 38254120 776080832 156137947 835261530 85068771 327488968 42102226 646130570 775082501 922136903 613443981 874094932 817054360 903985568 938139211 949761490 629564388 859071439 185156892 995761259 365981087 588335884 88354559 434052054 503638885 791348691 103298910 187163490 979008464 997922142 301287340 673610379 901400771 982097404 106615751 434703507 99751554 712020986 993412325 999374587 505485317 691525824 568919978 606104633 347372331 772914662 499876346 568589943 614150167 869932838 354032376 497695906 280643056 633473145 393380216 897959789 754395224 824207071 749351169 790443274 807206624 930260112 564961161 744819325 767835229 896603462 236510269 658671421 202284432 374383637 669833712 741657760 532749613 550908449 75770248 458151855 749041810 895246806 515309410 666196888 4964900 70232111 906410367 932158536 491351227 748101093 729198260 936047881 998492141 998880948 680934976 947575249 831870628 885260920 534437973 591331471 952303853 991704108 57678411 496461324 514761937 704561793 792194719 969811888 603173166 794810845 134383121 394711419 238188324 492488774 973296164 994552205 613302634 621601351 43281746 223593080 665362367 934690504 700998301 928457421 955374455 968127483 622996078 996083871 525802224 870970059 233153276 619312872 987898810 997004516 181946510 831481584 509879579 601144280 779113941 833285791 933340448 958311705 160867356 669583704 640290633 899832456 569855852 833657810 128636498 444751443 383135254 770493358 609438046 647952064 726729604 820378715 53386318 892235976 171641942 209387278 638330438 813387478 359331526 581535341 91493010 489873475 992550932 997010957 986775722 988338316 81885242 202851206 265554651 515191876 387687320 531796656 201391446 702466125 781570242 940039026 826059962 998469687 121405252 468121630 283129518 465693087 877335063 971510055 708777174 862733463 211888386 912893834 338344167 831552277 496683111 705625449 89605633 664649868 601569667 967108004 145438367 566392172 953265680 992945926 421832618 926326791 992908835 998996507 830293769 963246752 739408237 945342769 415269928 917129927 660317613 852723396 481370627 953620507 554927003 893361464 254069558 475327649 479689234 694618859 815601762 841872518 379457284 876517005 971414589 977337432 912503652 997466564 359374089 552025323 60624326 517347302 32813624 669312214 782474288 928303208 862572576 972183734 817172102 838597844 88862210 952083492 682284809 713114785 391856911 826278115 868589559 952170599 713811341 874371329 914851717 998466520 898906805 979193212 415538954 460762149 335922348 350105056 865798171 897980798 571087862 850204774 738397216 978290183 20471451 978283093 673847238 819806748 13147384 360469661 352280157 484646565 849373436 856050813 716244895 736326147 782311226 974613892 309973017 575603238 572828222 971420859 788996943 924428865 202157737 462874803 338508646 342300109 675930278 916181666 830814518 881930643 673148118 783850897 502490715 893007093 702711711 812061854 6705851 639891520 78544698 635574214 486445790 576642034 793410149 921195854 767173186 797479318 598904308 876618009 627476559 832093870 2282856 685038252 162843232 643495003 846548985 953163382 808517269 817256754 154732827 815462049 74299420 159923304 210150881 630920577 759427060 803742339 769046964 867529112 127830623 260361732 746396206 838529428 234951983 462748211 420334694 835077920 602218599 988700833 56509167 819773050 292286994 617130467 202088348 640022214 991369122 998787420 864900997 919372790 607292346 684622860 80629147 875603051 397377453 418964283 874356798 910151149 791919090 934889069 780355425 865343472 440068192 581594507 272863212 311660347 430942143 470166132 276242893 323456865 890665483 951871846 341919156 406778335 271929330 506578507 903989448 998659298 814677374 981276190 101879363 141885818 961260654 986534518 168056930 305099945 151681938 563023550 949725828 996811308 257273151 397698290 524821425 999177322 801181029 807571577 674601895 835520282 254847780 944431479 650699462 715881410 372084217 783090258 555855425 654847760 564770494 691522833 877525081 917467791 416287837 917865232 661152233 873088649 984669926 987266881 999505664 999887543 894136097 903497827 758675324 785895784 703285742 965227637 735177548 955589531 477461608 769550498 262493717 549151536 73809592 592950434 778872746 800659818 756719876 963518345 825397901 899057320 685960083 854250528 36389593 642036994 983638273 996792890 783243766 790251860 918336990 945537786 5229967 396942601 589761263 927674735 963368496 994095499 618248888 867323747 620123775 737871531 150603468 804621156 2071634 484730066 824765184 984383460 580443785 598009368 780164870 780989922 484156083 941813989 291754626 805573756 66597426 222528120 202100766 604681346 380268057 794747704 538884014 655328454 61523462 311590710 873881630 989527352 879287733 947484942 774491620 888478597 453482259 838763372 496217772 810406408 133860925 908312532 825616454 871507036 817726181 866017840 331697233 633540657 148984441 247973881 820595640 883717174 397991643 670326359 246913872 631296638 274622155 625522073 256651606 375565744 735289351 972284360 246032147 350291367 364282284 875713390 375765553 487215142 258167908 921543968 678166308 852120149 979133314 995452688 474548181 936236251 364568999 425237704 945539531 998853791 359802165 938960430 548033526 931974031 48219956 799627624 627482800 667945819 22112046 321120805 362184484 448336609 162054843 803922082 334224573 911164641 911869008 925570726 987921493 992340980 687301977 693519682 52678967 639795230 64042515 433902519 116768470 125976143 117747244 507543438 343575220 415683713 950904973 999607934 778952726 844149037 252767863 529259855 500287731 745221388 899754763 974492977 902257074 984382440 49601786 940296852 566575678 987900184 616487848 741882951 442049525 801783716 679071879 683762334 984963402 985754636 405305032 831367313 510993968 668192034 828844010 836165351 55169584 480831675 355946354 925647720 348899773 513735247 452626327 731015741 527630456 836998655 202806130 944745396 990274836 994184539 753773141 948907711 830563799 936784235 571633779 841016823 756264643 771887737 430575671 475747673 584757229 918650407 993567488 999127113 971958217 980246441 358973207 590539262 412386480 547657878 556403915 725112605 372700626 928567921 870326707 987603283 603458002 614049034 747685272 997822180 939901852 958107702 197037660 715336862 966452453 992425290 760981318 886792107 294803379 965170930 882711662 999222108 306106849 312287347 481586819 626601938 38136159 482763174 58665342 902654349 267219597 333391667 948251226 992212960 490828778 523505281 978773926 980794306 844108816 975597821 657579255 881480894 186785368 831247781 225503977 305728169 550029589 752298096 336171955 869887304 383067662 697486765 381819711 794828702 300992721 398958750 473991868 751299033 866636090 993363882 935806483 989321744 232897741 951883449 51944349 104633907 351967374 914159517 831193645 953528588 643102833 899691966 892783995 993460648 38614639 750210529 262396852 404322838 366978943 395506980 59160531 633566144 87496916 229640479 243044059 861292737 142266311 327376859 945554477 962800499 633791538 798695540 966649658 971569216 713354316 772501348 471950136 849907568 19548820 506530064 95243592 799081342 172315208 444176622 417981909 638248492 984847311 989985274 167294754 346818434 965168639 998519269 573549427 576733631 219576282 587271197 417430739 691094527 410086195 948150250 293660369 975825477 201598626 942496290 461048477 708939220 730401201 827383876 348308299 535792633 759236200 786677320 423068960 964486595 788344254 791835693 11124524 618254292 872628975 930678138 911388550 954941933 732147500 998666927 351788777 531654443 399709065 430992893 248101661 823589098 993194513 995282019 443102840 500564915 979204471 979238918 787397098 864332142 766850918 893403731 911536526 966733242 790577704 869602333 332942803 737625059 164254119 533904615 510297306 529597619 831128217 924334459 826435229 894895333 955444228 997614880 859542476 998219180 329149973 815975280 128571925 970503260 963514244 979286339 579394152 874721994 9741343 753655932 947503484 993353322 718093174 893689570 785314037 960538182 83460845 561409643 114218926 960506656 144416815 869976181 599811216 734991603 218071113 288448658 599029477 973540462 766687624 822181834 912823204 927924370 394889268 648092218 142957199 667211975 898560478 920062136 266610883 920162638 399917887 563299566 73421812 147218065 872489621 891711585 257907449 346675832 950165456 996468436 384862715 516541842 370720822 880690886 679497261 996440565 387368388 594377935 215638509 338003295 302734353 799890447 517647116 670848910 112941691 966261935 772720853 978629202 269519553 382798341 99930564 657923977 693787190 751949974 330379104 380459419 184171475 269876967 20406190 796263030 613056117 768616249 174545757 403914811 248263695 491357572 716562442 955554329 201113147 836571995 282942204 627951961 68643679 150356875 264274979 856351627 944912964 985370957 284817760 482688417 770011281 978574168 676566026 698487167 938683487 967746298 56332369 236768266 121117982 217766352 401509797 627899850 221322798 487797887 117537799 355021752 278460447 610373799 711691032 729455754 35769144 408554129 71154747 203787796 575170178 620781116 839131855 972619195 20315668 473705259 21870019 388978821 393215654 578090901 28852349 337738032 606101692 717966193 729594822 912370700 300435454 990856936 878834731 980963693 827501160 862995285 643913571 677491247 219189675 963088785 817073924 935779785 232393179 781126561 705709179 975018108 123943311 975828591 185083795 682797024 886546248 999056213 574683924 967828287 146621103 577948031 518949473 619145563 711828498 863296570 369451958 649702831 998184056 999277793 374994001 752120705 518675256 603338321 226627862 770951795 255836020 898155322 65734254 334969750 635188910 723724472 556898594 931878318 186251872 512424977 916827672 999008571 256563674 717782810 408102335 771666713 646065503 646206592 838316 607669247 301212028 709197598 924815478 935614608 514278229 899729576 739712981 924586024 177769501 380636445 74227695 966166573 355508206 896863971 139687556 250523117 36040482 148620413 449501207 797528470 888018218 898233902 901637399 950748693 108492989 394164576 569763150 596548798 744905712 805995599 845867687 893608869 628158442 809604397 901120471 946210826 115470839 699925772 709455578 869301744 84483362 692331160 21513920 327741760 479124880 915672169 86676677 664786833 126502368 146239261 102595467 944785877 400721776 614417758 455556040 995662815 79996535 213620935 221194856 918013859 45565139 158398347 871579237 934079331 319517913 829267650 745510986 823869986 816411840 886787555 132482212 618045939 982352394 998030619 158196509 791464592 924307369 945516567 575079164 825745944 452954958 697324451 623788752 863726342 871834768 946609566 341578323 384279437 519269883 666720442 825729247 934809526 763367651 856085721 903824089 948604606 240804942 731257394 539195147 850346179 97422503 402138345 391977925 637540146 224167555 251539053 875099194 971906300 700392869 867753740 92218081 500218719 576899671 810796649 504047063 883360239 70624001 386547221 871774238 978202650 682736372 986013549 273962103 855994769 299363792 801114681 903457960 977252491 470061616 917402666 541199952 773152272 722684561 956735970 906383297 995650188 602815326 796756112 111669493 152041767 701871596 768632920 958053253 963028824 326479299 524056134 363283084 936696608 34614442 422892284 182001751 665479974 337279633 965094014 399296073 427263394 396948870 584623632 260185323 290060475 510918226 716664234 62509372 342920352 382160261 948246873 386585878 431009482 590944886 734700420 580474813 960863677 778098747 980238060 623555244 804811232 923178068 938385557 680111913 885101628 404824602 589032632 175304839 676664839 973009745 988973800 603995978 867893951 115493471 410655518 595493556 701451470 256335038 325000030 406736008 762481964 125226754 282294263 258575120 645398240 349599884 680902808 321721446 745754843 599863639 663445194 262616551 589609353 377159957 443536276 959707851 974388962 515729007 692088915 857611341 910154990 347557954 735932788 532547814 948194912 928797828 954726752 599380924 740115626 191140162 941520769 678780340 940109748 182656678 289756226 918385238 929392569 883651813 959038787 400571887 628427145 793890888 927615532 330369634 625506545 698497949 926328636 139174006 854018530 982372082 993058477 115011428 572400501 245766100 427937292 142559045 487471522 131169496 556614217 732470770 824049009 836740625 879223009 954013510 997804358 493705295 696674586 313400101 909774823 936940085 968058267 440198978 682054706 46721523 622027802 543500491 612970783 449613635 706479720 130761878 754808235 174858747 583267478 941015255 947106025 543922661 953431553 866485720 976312536 364302921 659115894 846464954 982448493 229646900 626413991 714950060 724982795 200749509 661633089 76105913 586996495 169361504 924858253 515516546 998730582 464960697 619121082 374187295 771727296 532135208 748790634 586571765 614294523 647226752 886648247 243890548 504185633 214326532 345355130 899727565 982407375 607049781 850874969 508747534 949444074 400195367 674062160 315925687 622861513 285783505 584891305 335576790 739158728 268283698 307768898 878089758 912129794 265926386 833953325 608160205 655029879 935438766 959882223 445764929 820433106 525659834 634743900 124584115 634936998 672868953 770407122 884889976 908928787 42193722 240286056 156224362 773895470 210217102 214365644 553352882 645046122 71595146 196669496 8706360 381930335 728384048 939491399 248155936 295665994 391726872 759081845 739040911 773683654 516879668 588598282 335769264 636867565 34714731 116796148 961682639 994347236 81130730 206923673 137844088 660542533 224414423 376923872 705067695 819358613 757857141 954166527 657327672 860079396 209686738 647274490 304672106 309906247 968136900 975788154 75823045 168433524 260403873 612913993 785760956 990296920 555885564 834825902 735459156 852528729 263968842 293652216 261937328 734587127 978863040 990126021 614005444 771727859 200811486 349146810 755269442 944268373 302825301 323660109 328253212 602913775 136658853 419858267 842498430 980551492 243800537 683948179 798301732 958353780 759895455 807231380 313377174 776707318 576461098 614920349 134620026 480119333 516194867 616643598 287558896 393227962 68131102 412197443 931141460 995572914 184899228 288010772 545058841 895910719 21780348 581679194 472363900 487498919 260932199 797309193 526545125 918825051 123080893 562977162 867740586 926849704 453798266 663443575 834166423 905203909 159782208 964148328 757965573 787543646 297323415 921650902 857850375 957177155 696265788 891746688 62963286 852271855 717576622 891985359 213175711 879304530 226224285 647190154 523695050 893140028 570826247 854890775 921762874 998190629 12488460 714325685 509356351 798343492 91402513 386542567 733405371 827634347 59344402 135479191 511660898 575736741 742732078 749243950 294000187 753769803 8592415 433974719 471446115 705066338 686574298 889561059 73988017 371863863 513437959 643273401 476913780 626917202 871016606 954812441 395197126 932183691 648592245 844375546 132907046 473249403 144935465 839289149 462466231 741222145 456416227 880160324 851431231 909166743 653834952 767977020 340611043 783741556 877267257 989867844 56582796 728428259 677427785 914029675 790569219 843337854 214982006 459952195 645577228 900551224 68474541 807512847 118639257 607303835 668491886 697907955 698063526 832127093 232616039 699124088 656814192 973089877 356503089 767897890 387325826 459463171 693999803 992335069 503000115 631472479 224053187 799225701 723104312 877151995 671716789 992637064 665835434 762820869 756108140 757740689 371231638 787153291 257548670 284278200 201381280 230677423 710010645 764053718 175192055 759849201 136116997 530304046 355466537 384280542 185472066 445510048 806250405 833253020 539357508 973786903 962242806 979399649 644814343 902186417 535805480 608636371 290819996 569369357 79622292 174700566 83799901 600733096 453785978 885920190 163212363 453293521 82742754 738091829 459444235 807721148 482977395 502916979 476755219 550669061 603114548 877471397 470116010 817055268 587945318 611154208 875569737 958965941 407160796 804345651 461926278 786712431 112282096 439487975 332235599 600050086 295252408 468753257 753904961 825920289 887872516 896498520 697887072 814512919 544626367 858605863 815214296 908849017 110862444 962242366 606735271 993806032 31382329 730929455 142729555 769633486 542723861 840023746 267911981 474017043 931316828 942450822 913281967 935001994 630664528 645038862 474230285 489831774 439083533 830632558 111205172 646956242 699568947 821103669 409968378 980504140 750335057 785257262 709243407 862566217 593270116 806019639 835535216 998607286 828176064 841764410 889388607 967742669 350455884 358962867 713882145 933747103 578066993 655677799 839501484 946328539 287271309 620413184 596098678 750071224 995656178 999085679 906124305 987808748 445784182 549424140 283544981 551672512 846243540 986310171 639435008 866176479 948874632 961379192 830209302 940027169 806098864 985790491 355036320 763566304 471620165 987105499 913952378 983549094 784325546 849001655 586463156 694085405 737265865 969014448 324499716 712812674 120022207 180006876 813512938 987549143 955816005 979305232 169062905 278891660 281960508 807334576 901296115 963672584 590748372 941294551 718897086 975803707 724498899 873570525 359294551 828317476 858949770 896560399 527715872 804404227 736996096 883840064 306410132 396037036 903921460 950861585 414467542 788966300 648483486 666236684 83463772 971826468 827788854 872677858 900368381 959539269 640940377 667962506 256012802 837710933 676258028 761628422 614154537 926438276 239562330 900280704 114778816 961479165 416518048 673745488 655657455 729930099 100101482 676163643 267276370 953259029 961798374 998362265 774731887 827504980 447168806 955340520 846516875 966718233 615240808 769453904 782020878 852808346 770907956 881539559 668466402 859351334 691799233 731740785 335113638 581681732 559659842 970384291 328988778 443126335 803196329 813294227 437991722 894811236 139816781 451977907 620996683 947975682 938023523 946479584 412898077 522490597 86060372 359013221 490715249 688259755 665903731 902960673 926269878 968178865 578808386 758627760 172292472 213283344 480951336 522167233 516029917 915388620 557481826 624882901 108252679 450347324 10817649 112990381 101222173 329239511 741811646 826422639 66046835 153986552 28126443 177744211 457317598 686083648 285860786 913777936 710869184 775185034 572091797 613594669 596230883 815018080 796517905 990647822 248841284 391628712 852663484 991649245 322594965 679337586 442080566 907944234 905182406 962073161 3210555 578915757 659389202 927982605 531916365 541835223 513772675 725198549 609700679 673284801 46008159 98777079 223369915 526776564 935537913 993585656 694011648 907127557 8497972 288753890 290776476 652035176 737248900 814876559 464944187 611438163 250791198 268839146 865093757 876719269 789336349 929285962 352822207 551955205 40891221 611813866 543451576 836491673 673883986 760873035 941607564 993961746 736925654 885421208 267900601 623288808 435838150 992558245 559829852 860992888 568230523 720445536 187777001 889071331 588237097 841366475 850646411 904846098 577491716 823125225 965673700 982630980 761766524 974167948 307425368 578724437 436523647 602586186 835481407 842928306 165394606 362417371 80645619 464454450 768105171 815873442 681071014 958955879 41690131 711614156 214926990 846426642 662065839 917908303 476757166 858328807 409125940 922452719 946141058 999824957 279245163 966810967 265131706 355976123 384594681 990948099 453161369 654629932 408026532 773534047 242441550 344739309 831315440 914632990 654574721 835025625 483079640 585426072 138783866 915393365 701066281 787960007 404520109 903653046 119267599 242700420 963027231 999945768 79961876 310035648 380973314 662464436 253024087 329175992 384228231 688176155 784543883 923380851 908528958 929372096 742260306 949715100 261445134 740421958 171466012 724920564 288141024 302397563 297424200 350411082 178868810 477736071 426741392 473385280 840056640 909598425 679309063 740336484 965215237 980695555 123737218 806779893 100109877 250048130 742446489 902717208 953211424 984983189 481310256 526514743 243111526 280244689 867108093 982093521 840464540 936941604 833068582 865150244 807784086 957171428 651631621 910677910 685109000 914876959 723124516 893077714 755290471 908370277 350954418 849811338 821177640 901405922 351837788 845878362 91944102 960713151 60901253 332689773 980411091 994694252 223285396 742518912 671572195 924767111 737209956 856181453 679258547 829691444 171974981 323745150 537262467 730483421 999511028 999818694 18426541 810685547 107687186 262193365 60454354 157363931 453845469 511510115 368566411 969816565 778129036 989391202 490042999 634758979 336921344 980407962 508400221 793043702 524518421 745987887 607827082 742568190 896411602 993712396 225838620 880605303 929323144 963106696 532296347 801432523 291166355 302955258 676667060 996466040 831323350 931098105 316493980 891067883 800731304 968996880 376525141 727034212 685058330 797141863 844436784 984083976 90568004 747570026 62695518 512780325 374436534 434973386 93309785 946440973 640334309 851068313 226671819 629695318 901424155 960155820 259857389 843410901 767663907 804841774 485413971 906364810 360956516 700388562 610702614 882243894 401403528 860026313 112667499 669842818 238434812 324896015 300066098 963581988 241505228 755841075 575166003 896945236 459195570 895298064 842891611 992619121 256364781 962346825 413088049 668496536 608347505 830274886 236077038 875634419 912622995 993954209 923591169 973044543 376741891 696181971 289106791 549481023 147862452 241486625 482403661 947048363 742637264 939973173 866133160 935059054 382690209 899429480 108272217 658791307 980885194 994363206 772263465 892659613 311635058 996696522 83931623 793901639 975732801 995404488 326853984 766270454 674337940 811388766 695594925 860939384 906592733 979515367 425876666 735101062 329327910 379035712 517516254 719079055 499527693 877184064 549554128 932583674 707458512 853761408 25356228 766941333 669424204 817025638 426765393 792556266 952515119 991175368 947055986 961529147 656651583 904646714 297667587 888875812 115321137 484104074 522050328 719101834 990681662 998823110 616251819 896495224 654310259 882387825 593674834 794674174 770875566 873491902 32979277 73961662 492476946 610104461 420982947 446026663 359173134 832015095 593932662 763671262 570416074 995934820 441845684 905654807 561489529 775423995 277633141 628523837 806577160 993351563 460404927 963481534 43653060 247162824 677094323 963933521 702446035 728453686 931125445 991687227 366954619 705343485 683012318 775985852 571461410 590020238 660192363 866151821 981208226 989408953 33509558 424726505 199658550 473380622 896487977 968825891 59263879 890915581 23723477 491902380 702412736 810421783 426575605 973955194 523453386 917886012 798968934 997717256 211954656 268812187 712013800 760141042 499843676 723573230 871368788 907665242 886040556 953417415 177809039 581052950 286150096 361281467 322172345 774099829 185516830 912936951 164765781 681706632 732476827 830280134 305829507 352200333 470147817 879058498 234911901 541142387 493482382 641741718 441761458 647958176 287524640 529173823 425485022 890818713 619143427 804129005 417095100 619732080 977879407 981534705 866672098 922939642 159428115 996841738 182275432 386301325 389744392 612194465 56288558 156863419 462548808 871364924 883406402 991740152 686704581 862703505 367026604 594061999 150051974 153495862 359362329 945729474 89444529 351204290 120968429 798183902 842897117 888316177 311406009 482315898 494617693 555578711 794452159 986033465 393826809 953181807 187835232 906049149 702175628 948577417 721961960 870736024 93097423 788820952 15263271 46385605 209676128 781777538 122911972 349120394 805475828 864796037 831944013 952528210 120744360 160775822 968689 547828451 464025423 990501095 747984016 921974707 766074140 823747098 524365926 960200657 738177279 769590826 446417848 523174634 72916013 379342630 894672070 898666965 973435488 983884730 585963598 708461772 51582101 383357212 238814994 639605523 981418842 998880554 63525913 809061107 311880264 372958515 934299534 981915486 868584658 934962072 879639937 975625919 519626578 906123387 429951501 615344018 868249197 965567706 672621817 696611547 303418463 592716380 295802029 470886181 113123966 482584705 695388552 974882715 49650093 433098152 719213691 772614481 62548538 440777819 725405092 986276402 212132679 366504251 202456828 946867140 397841071 515811864 307698408 997573738 146792393 791555203 951902796 963167982 830739597 969321484 426391132 542899621 659463814 991632259 350685077 788951546 278792778 811082116 533818766 810734444 62211000 386195841 627449494 996779083 625567001 916086984 74938667 320115465 284256498 867433221 512613744 637394635 319522116 702535804 965083709 974512612 11004194 595915465 790231328 834533510 50350628 660533429 995809817 998921601 776649138 859038718 232484286 845533103 531077621 771863514 485149947 811100331 835320294 950199040 856395184 941763470 89367714 556088537 733980366 853406581 55830645 746165179 360853987 502056543 663504920 870305049 219776391 801984360 62502218 324676474 287178376 919145281 32566473 893238542 457982178 533179905 220280995 232379431 738953569 878855681 582910723 667795498 432207975 731263262 98035206 230796166 996489260 999441939 360077082 463417510 170607304 196106589 157518548 178617863 411756593 982666049 91715483 459806317 812646279 952004559 496340431 686566061 64253355 355983067 495368904 843729264 145141616 680260451 945424626 954279679 798479573 810628000 439268792 762304918 517237205 654382653 443541353 780749772 109542047 336750771 15315239 384969781 604742841 909218941 432807423 782052688 227366949 992919216 410228611 531380953 523278924 696411310 676461248 993155678 870253250 898893420 43732640 104684665 168285943 278942949 683383110 956072326 574833765 650957674 93750902 312532124 6799974 536449449 385866171 579913134 206740882 209515533 364103255 704206302 674747112 853450372 553089481 733012149 962122503 997608918 574662349 819715651 952968459 990484270 109858371 839468822 524647910 648066016 62230323 632072980 124574825 893626762 739087304 828982954 40764580 523787712 461226487 513791920 239563081 240711906 427860378 440158363 842262714 978283043 591851651 941921746 956153153 996014172 957819382 991368803 86218986 918433831 676014121 813015924 735652781 890564562 683191487 985135274 847763869 930250221 876703032 983199519 714680597 844480398 943127263 994891811 20085151 798016778 81262262 293733474 69889375 632605334 887645271 913450496 36074202 923436868 688734962 871514393 819625839 949820151 5046921 19420118 97132598 538642911 500942007 560223967 1400981 187517555 828992762 969215002 763233038 908444652 268139809 278579730 379538302 580580865 636053436 730687856 25738437 879344076 785845997 970224210 528287266 537055829 108770812 895462944 520499880 921272729 344898981 568280941 740073244 813110474 199767744 251887841 988364476 995379185 562589502 783495605 490454906 732191722 879852987 968810301 122042923 535210384 842005248 901535227 641864491 728548747 717706325 968498695 985606909 987559263 378324677 644718939 641828908 651087962 548649861 861022968 18871811 923417670 484640980 530176074 723379958 810558526 144294063 916862301 770985611 837579686 104737491 995406389 913654282 919116921 365767416 424208179 92737445 685101128 651874593 744284340 599481875 969542749 11611484 796328117 692912467 733976300 774716145 938594705 645326006 761485061 540547226 591674900 296870960 489538189 896237526 957895695 362288303 661163042 641378095 704481012 341304876 853319632 697021046 989558739 310600947 649613757 967889517 968829213 66225329 897376172 515293829 876372071 971849705 989995520 463110767 486216485 254782185 337262691 774946644 782196079 458955705 579524764 5905059 983734580 15179682 881188675 146530128 680668600 604046153 649303686 656210767 656588670 833358342 883239460 470858673 789980732 828954139 923611154 665524297 956762806 33231827 278954114 340482051 590492754 291386809 371226933 873291128 973667528 84479347 564082477 859876751 959811556 422224190 724336730 162077781 958302014 92572588 581260750 998652954 998821612 757780802 840842158 960009595 976073005 972892025 972899255 813527560 860893235 301662071 985534901 889547547 895578890 419591535 614284231 380068796 539570430 725889954 840358489 543333943 817410902 73588993 129458774 590448935 857578394 310372060 929411143 432027985 527218727 821036331 903756473 730667877 775506892 124180326 643949383 543525006 572481143 459031078 718812035 157484178 447426214 881901802 884848479 721841661 951150907 162151442 167306605 870635393 895109268 223533868 569052107 119867381 170254545 590364917 649444307 894846501 905710177 150959183 351487485 853232997 865080535 548338474 583305562 647778354 974473003 373175938 804366098 519181011 739393703 761695012 933772299 846139418 979065101 998935651 999118706 190885516 224759141 828245781 994920991 371800321 868966045 3972440 197389511 578161871 615818386 983649238 984366177 236534110 355231399 267656757 523730987 292400704 795788269 253964559 973581356 518774945 868464370 489423215 968845195 377584450 988450207 681386959 958665448 234053924 468475203 799477956 830903433 432821620 493035903 649553394 687684898 942293954 978005153 445344018 475920496 64309799 621366435 979075762 987216859 421678154 503340574 948579751 986423478 795491472 799190749 542522002 787681755 407356201 838010508 447369786 577619131 908486475 972626499 835748748 936214466 790636611 868790828 595667501 677828468 763366296 913412810 881863366 929391919 46487261 624971857 983224118 995048221 418395238 493869474 779297048 994572514 951677674 994925634 661488631 872173469 797181772 827486698 145786192 782640403 884742119 934785098 97228027 279421771 212233040 968679941 661731374 682037570 45687023 421561954 392256937 993079812 567556273 995122500 223849377 627100469 681190022 955132346 877327377 967827741 833261188 975391717 197422161 275786213 308827182 417823148 936411612 943670417 322509237 723178273 963310109 972531705 722903732 955042834 56603483 269978834 788731418 950828767 910796732 995817787 24755838 823967267 655094872 662312571 972963209 974467368 66884370 676600842 391553998 473974371 396094294 701673160 314094480 470194934 523579184 927028062 120609629 529715713 556164534 778886576 925618548 955633986 35593826 407266603 552232994 870191226 235408352 864927045 157184970 164058227 336322403 523417757 838672537 912082162 726919095 917173727 686281247 751782576 272745560 773529163 699218067 886429162 505965298 578331516 567189729 978780233 799013487 800069761 848191750 927178780 126942786 629030053 173927925 650262100 951411423 969235663 212633862 273020789 651699217 856499398 982074398 990756227 270892812 350393498 65124807 963369780 594907576 884295672 225516991 825984221 372961822 804343401 154497509 483319901 65127738 457286383 337258438 940066703 651976733 915704223 905118411 966385325 179382034 846777729 731632620 908153296 157867534 320129508 475794017 976994078 604196212 946338262 433867139 644874533 171235943 521857178 448307192 663964771 951752907 953780417 876010023 970550275 810746217 819861165 886199978 999492799 811191818 857713396 176633229 239129466 401198894 578549909 339121536 354097096 942420538 952829392 978251603 990124448 13692091 189281979 244162143 767352238 643798617 751716655 437481675 536647996 659314552 807478856 876098507 955114618 464360435 963087213 249332731 599585114 977490501 990554841 582901524 679936395 815544934 873597600 450426437 530783715 610397100 762826796 170093861 555341352 149857877 323246736 69774377 678209267 787228229 794100770 391984629 800576668 534249417 638589614 607282144 823185058 285831300 807662476 350972940 778611894 813457139 814163399 879159751 964269509 211324655 916943681 902851465 971609962 381559420 801610382 387276652 789717158 982296376 998658255 618806925 811554454 82134189 646944218 581514480 660270090 736225415 886051831 700925926 788580317 413287772 697582882 659410458 953824140 863221206 958144197 271838280 621539247 618657355 619899365 250506360 807417333 1467619 989977910 971595009 974423285 309757592 925408606 100801744 897467948 205436002 914233039 547538838 977794999 813087196 824920697 448915874 854073765 978677231 993127985 896254748 902679377 357550381 723047266 624536439 719189040 116467378 444953224 924490253 954921118 362685065 514471833 539516471 840868782 841859345 869840620 322293669 827329861 842040231 956972414 45632702 181485671 96069069 988729112 761818426 967639811 982616467 989966609 685616934 924789586 670864977 982095258 757952338 781058332 415309671 572706549 479583325 812685518 268917188 661075050 774868921 938352159 121423115 535020045 328174887 730204425 503266156 902549709 715684517 968669525 366534999 891122208 615697155 695529172 187790430 932137876 27402046 889438602 110983848 120230901 117394531 558750544 960970280 973630496 75904506 438451293 838197055 957922298 445008988 948685079 281367802 963363326 540480434 968082474 873250994 992713098 551549731 673720282 381970751 485281735 602968582 644381033 422627949 660105320 74809897 379176513 745894344 813239614 937425267 958582748 886549631 950103040 831981018 947820749 398712022 583289051 798179442 848202291 514019450 777335808 150664269 439657708 202221362 319922329 435693775 456566956 49185955 95448032 501899860 628029073 908497428 924940302 657998142 952868611 994879014 996158267 608077230 679277935 134832876 688294871 243897088 969583319 835033261 999673171 707347413 811362198 831952446 958439043 903011396 976996107 362885075 793154727 714562369 998808594 919107943 932229719 913752503 963064817 626710434 829958175 343233009 836119960 899568860 917850877 165730177 787776587 84318324 463403841 793951263 865384700 623689292 845266296 83983544 571739994 113276000 421505797 517793620 836257927 351689044 668235434 280744948 910734122 625083969 749397133 26087479 149537623 956263408 956402731 997443936 997735547 473337013 726839878 164233875 844670216 713614695 745285191 337453117 951711745 573256686 684406270 107750909 688727210 372965362 624827085 782519896 907237873 779109797 974682729 641966469 899473030 32948073 663170860 346869550 963400334 110246340 338112445 583296650 784569263 146019752 675317989 41076900 432846424 652531697 823413523 125922983 637325128 678333728 913229209 129384439 397646077 637086721 808008174 960564514 960759845 97604587 446819983 529234251 961561832 116891269 404057303 399040299 437059026 162103176 230460780 315627768 823653901 199646633 441628175 727558494 991286134 477986745 945514903 421825732 912853222 359722785 585859701 277396374 695804503 644019408 810337725 10740235 70420453 971012002 986894258 265626985 935727873 54393954 544133296 126160559 452679062 897488316 923724563 258090218 632400674 908314833 989312157 380019096 449578751 882682588 982871760 256209924 927229153 766675675 812300023 474118773 805118270 60535542 965864476 864624333 980310489 514320656 821930103 504104305 663023464 464720401 487834287 106249384 997955207 281870302 727714432 36493789 701475122 774586245 921268393 571833176 771998169 303229723 391267674 812776566 904697482 740991343 818954644 370715327 852956629 704870883 952663425 451598950 756044643 65432328 877165529 806029899 863581867 394578524 708783960 20302952 910679294 161140101 691162688 769353021 961812649 788637536 927144218 543906776 728521726 139212916 853780920 45601236 673567364 623926857 995016586 514385408 572744050 267386587 351621687 908676307 976107315 234892104 432367822 373948364 489007268 585935294 953387781 660010218 685597405 294450309 514472244 707309183 993257449 13123488 251177341 295099091 644344030 582674604 603368599 477929788 645555936 955518493 999403293 604516810 730232024 304066522 549364657 737159233 844693183 387607259 421808861 169795075 959098169 919560190 971167030 53064055 757531267 859603296 984139219 699520312 878571006 164300631 516142542 752832023 907223525 126227230 777351281 410691484 412582414 193777170 618869403 69537219 167673216 37119000 881780444 221710577 931089519 12484165 22861336 22725648 105381934 120681352 246402105 576500125 829062985 308391870 843802696 272675656 965097268 239183448 669700821 724649859 738474734 181767012 259834143 659597314 730786732 83864391 531521989 101892976 669016559 958844179 963926602 162472564 599064440 672132925 856429815 172477836 436065794 161457449 897706857 525544713 642416485 637538286 961485103 573105209 817139426 107341597 434357415 128920806 810760969 822672808 835185670 68183063 119088590 444657768 956141926 952151791 953239206 635004098 812371554 233785173 492693940 388854040 528929002 554196666 693474278 742697472 876973809 989170701 994052580 123096111 987286680 505728644 540494419 736831674 955483656 695904797 898016094 298628527 892254029 186198123 549330234 66449521 515426278 519287451 919115240 932326887 954206547 393826754 490166129 127305911 305296732 994920673 996685855 241080073 564427181 73864862 370356137 209947207 346613230 558688513 928273014 742733723 857088889 498709455 808342121 225709899 462715273 839403130 859543083 488651486 602472749 390508545 869501241 444231997 941539185 39629166 997400396 767421077 809858017 486174 19075583 838443082 896417394 549752894 576007478 231190462 621294217 210225257 330292334 179466543 767942454 739471868 908920230 915424350 984393464 970646153 992280384 327952611 600998158 897126113 912697056 869690002 995490133 137881797 727016455 380604242 707650427 218167833 781505116 813017012 903987676 325386224 693468655 474126732 598970482 700553156 750606792 788045547 948518651 766974135 790800050 275930125 873239823 2403119 200083309 840413478 957534152 643680848 724819594 493141843 952744625 285088605 360878075 904947141 971777458 836405814 938202736 690041472 917291633 476908956 853555972 836981723 978541505 845264700 856668257 524090725 611896304 462462289 703911154 771459574 811148629 701772143 870153651 443466016 610656622 204826944 398108687 210150865 415373996 637382528 773981373 391204900 609549418 433564499 704734341 942823667 986679645 630696120 750227996 300977281 827677587 343069189 437450386 392567975 714643633 942422903 987431781 951883792 973849968 186809850 556800650 434144343 446950812 499123491 844071774 746440038 926320577 255886053 644867395 395756176 426023046 859941203 962089494 259843748 803058232 583100099 739124690 645920293 665675435 317181958 422026292 759794761 998625744 560522360 560909863 396570656 701359059 328930885 953943077 597579719 763363411 976864726 992477463 851582959 912093993 58617197 593326735 636695509 969515972 635473889 770246207 603012928 800526137 562649804 961158913 105951686 431558710 228149511 848354780 630990526 737201225 335356299 872947415 912067331 914053068 7438737 908146072 696388253 775879425 292997325 469870397 482751021 759109173 407751547 574131574 81001054 457861014 164303750 920169696 188450540 281350270 789328334 790484622 49151516 306024807 145339951 327825167 833145435 863321198 445398936 608200473 859644952 916100063 492380240 560318901 417705879 748192984 277836307 690411604 976003203 992815302 387974203 516042597 405193213 667995535 436274803 582790973 621668563 890695462 180081450 778732076 837093868 840245299 406330121 911043473 380028082 944004390 657932821 752369172 615172288 763886606 761925493 827651330 714529490 860895183 905481531 963227420 560964323 925066753 68416464 291066386 22600198 574217785 393048958 953106551 514529191 851467948 692869308 877638788 75977220 998840123 606928109 686542734 783592820 862291526 501750716 577963652 3291174 245651496 394484777 669376405 358571136 722990763 660339267 805154119 472298854 593168787 906259046 974570505 595724387 674113118 386996257 700504017 183401773 612143400 9434031 640966023 789012791 973406690 139014889 981762302 133586707 971857135 451665956 787826624 980193929 994289563 93585569 754171355 994672316 996283195 932391461 945626621 354251847 666243077 854276456 895443447 42637915 104093157 45044384 617516241 955377986 983850981 460234147 630531125 908152670 963160263 787927187 964165430 447727919 833619639 294163872 921152437 379672522 463894889 411904740 890885046 82397133 980852022 594171359 652168755 837744895 885899697 832948506 838121449 670716139 803866724 466536478 686794037 330018831 941997465 900242721 915878915 417703192 691481102 793127536 827800339 317034139 919603754 900637129 957976850 269308215 574094319 738798852 748908537 635649681 723872799 241562682 512458922 78779734 546317154 488968393 943253524 47040634 118916089 651161026 885400317 662000511 858007236 783081537 907186116 432251722 704907446 531089045 759069065 529996468 971260691 768061803 975020444 910299731 988410706 663733135 816971551 954525704 956715771 733627952 906209044 109732869 502685650 391961594 875613005 221785504 383140359 986926927 990784909 343194597 869661758 850550146 888184860 432316152 900259749 372288603 749367484 517062352 560683029 596509997 931732826 686018947 729204433 932349720 964012904 51517632 961174692 471068702 492945682 870714479 929994632 53949289 62471036 370622648 834803665 198071378 869662072 692046061 809335694 607364450 987796698 218766103 369394836 452996246 466206423 584111823 612287702 68186273 776736424 117788904 189452028 512391826 640824978 453533097 494763014 252988424 636054916 736985824 944440711 514868754 843667563 638653658 921608293 478512375 674919078 591442448 919576459 544440055 936657089 898971838 985402126 38022072 862535462 67448514 856889357 835201414 971680808 841860132 964759876 949861027 960443594 435494893 851330454 929788797 988949730 917673235 961238017 994684665 999985571 943068839 955475217 967403575 992434870 906820425 940055677 846989633 912025268 236805516 330053842 783770778 801679236 949235312 969127363 208464198 469485133 602531583 801409164 912628424 934215143 46155514 199516025 408195717 414845896 305598498 792383698 279202067 637401276 977346752 988862351 217956596 759745511 682882711 959994679 377246337 410803546 749835859 815175758 55157229 175154804 694094353 889074180 241484572 766484220 67159335 614207133 814897049 864100832 58907840 582255980 930016856 937124521 817386268 949862438 968823553 971222952 34015478 419004558 260085662 817613358 992982762 993898674 102743116 858335196 101888495 987425765 813284308 826216258 877969588 966256173 823568196 929620806 808251078 854831922 118706233 386357419 433377318 869031547 894158269 973700783 336196773 391081651 243058976 992211945 765677891 974836395 333878811 514885473 57468273 289299860 543136022 642925394 694678178 698199311 181324933 529371414 389745340 485680708 258946805 339127950 854727029 958256315 553809485 773298788 158188720 315714015 237554621 769452488 724219533 913974911 440882357 490203735 899214491 969224638 881249483 897295335 230035441 969786122 238954193 511905788 981514865 981837234 233124252 581867231 868652810 930331538 334927848 952497614 692124511 967866135 327193735 848924013 517611901 879053850 747346367 945834716 521798986 773968713 540099312 636927073 584925081 953509028 780843827 881039847 722606016 910829502 537869106 806107071 902742781 906349515 420897099 763407092 420276220 785260302 828719005 951863523 862177820 879701441 587990014 886278571 973598770 994637638 236242248 289096630 148149880 717811976 141045012 319453120 621362769 677481079 432700606 488228851 196819187 431477031 302160573 933101799 414367274 795248357 576416381 951769107 980661134 994759027 245295312 319508975 924735802 984645421 554314316 567920605 441837118 620288823 869540896 957400027 427115017 880333643 286320773 680956823 634556083 845182040 874071757 966084401 326093853 857616663 122400815 380676996 877547329 988120668 712229784 780864115 960897501 992751256 171501146 259306083 482265177 934448840 659794101 848989495 907582428 954960311 457008338 927896895 703930486 775547679 99611979 929531367 502119745 679338110 519617145 695498741 615849057 906090849 956220876 957107431 702163124 990245803 417771822 507754870 516991023 818803301 693297235 723868994 350254772 568605628 506503740 701573322 683271182 801382119 872288445 950509531 446112958 847926321 74065467 982493171 135956181 996035157 566462929 815491989 169395116 653342204 379888733 582745535 878032262 929694670 28229197 479740834 72270277 451893777 487645704 960129871 802255108 954861369 316020274 942825827 918471062 997724867 622895966 963042408 998524203 998563293 399302502 704664283 319855039 499304884 711561630 854108602 79203653 683605477 81997494 140600538 947893898 971634203 764121081 796885772 118274207 786320526 585894959 950035159 675136327 771185689 459358637 770943787 100576270 777312595 257858342 538538112 833920446 836449171 708394447 874521424 494465088 505756726 904259015 924461392 832686891 848737447 336152016 567673880 706290059 851574707 761205901 845051227 718923405 909783660 224764477 360817684 633759952 745663473 161556569 850355146 618867488 694529194 371845198 910693554 795747405 987324545 197481681 631420998 683040142 990885910 394829154 708449693 39908262 467990449 454406539 930926209 181235461 232997032 119463183 968327562 676674128 748411878 975257386 980553980 235326180 344178804 876586977 959288033 945708262 975320479 797206014 852396152 732537220 877150594 205458901 849429524 927912000 956937459 21403303 391483615 160656882 383705667 883148939 966361739 647984725 998966432 407907685 449165913 735135577 766903837 701513719 844394784 370343218 555495485 479384561 798338439 314693982 475625730 638568431 819352200 825174116 995091331 606061686 694898588 362929096 595278044 146661737 572041486 689393819 885620559 151924615 314467994 832027967 942942680 830680992 854760996 328547185 915094641 685482624 879281836 208533576 837633268 841942011 898317338 304825544 724255037 112642405 363675745 812118097 900917169 129993473 561559246 352892321 358133802 978307084 994874064 304725576 628353955 846782474 949807626 378714201 896590403 786524026 902088164 661561329 736470120 667298327 981984835 417643165 515692391 253787026 980488935 41664814 811317433 609397135 700242603 263796010 867149699 68257134 198328743 472462247 503033728 910381346 927235905 146790618 891606751 626693022 995745287 470947238 661717994 45931081 505325594 786473085 916134753 99941382 340032022 92132414 632864282 373569436 925852997 153114823 570079851 193357030 763512583 442402511 445719716 418673661 961309534 173917116 500328077 487909256 594157109 800825857 979072490 556404045 634355056 675263596 820680108 350493808 728765209 468767399 581776999 161122926 652254064 746632899 865387036 43629695 250960695 982418206 998939170 789774151 837902833 499223379 573065026 255346773 352946513 69013891 955472628 388442995 552567215 545697530 578423954 27320687 267195903 135390734 925567831 362900213 475925662 382511028 456437863 68107004 163541101 778175476 863527241 950684834 994798936 562290642 763310173 838420046 893659987 851135884 926338396 385728553 823815949 594745689 893543697 846604715 921236254 836712746 981506269 818851802 904816240 374196581 420297492 758599577 803090114 309195194 811356739 897586283 919165248 667209392 855633657 798622037 836708259 424438886 769496527 448271377 605135148 657453486 750570895 257302713 714513299 607585381 728133093 600351386 827943965 401299589 532541830 372682666 836077517 163342354 206911420 562746777 802199284 859522415 859591330 523295329 850540074 219843905 597634137 418427329 962159054 302316355 319334307 672286071 714705145 164517808 856267878 638807350 682276816 720046265 892057588 831916213 956243018 786771827 803006220 142130840 821274801 640376656 964400628 413605129 781949535 577921932 941091442 340775181 798619694 532530517 882865492 680790398 778511626 388753876 409293884 697619068 944865674 978283237 986938688 636825480 994291341 664013779 997306552 570781806 946254386 786148538 786225207 973477101 982115436 412137350 462907568 891300484 942806944 2345632 879223840 729520829 930834174 327476183 600150623 686636046 895836479 363753091 593408383 774939806 890958754 943095961 953421301 204982453 651732541 230356664 737172911 374442181 748388857 416388222 899860821 831702575 975437607 285776428 586058669 775212079 960023769 5190721 73178894 163747302 890087470 255427195 575301782 202649100 367239915 296466541 990673282 311920865 312897772 393287780 905984234 973810126 974031705 616292785 690430525 797149871 933700124 672307207 988493122 123097574 162782766 789031579 845206901 383293474 826413127 174976780 244179953 868983927 929539235 935355654 945879428 164280305 222141114 583458060 912638279 991447928 992141473 571333614 866738474 224410730 322246462 437658094 519106262 855862937 918950143 215533553 929365744 587481169 766824312 390792106 634375878 232644264 368597502 460396239 676417993 706947283 928578054 609238804 709914643 111882366 336240893 520739565 780569573 145520247 511651937 704716751 800924300 277651372 738417011 953978151 974180789 676133999 818142335 464755733 976839366 846732128 954186551 258748236 423809734 369855145 622839082 899130442 994483173 771309222 895611171 805897298 914666378 356204300 587364523 13276094 146487563 818900620 856370356 341076572 980237326 653802741 935914924 937783849 988978209 75112530 784607739 311020573 956236281 417742498 622981668 684677300 875722855 276214040 932232041 443144358 528041705 147743292 810279843 22129361 802524842 143211657 660424065 588297070 982631519 695362739 924715653 461499478 877252028 201234577 274560914 446199026 887392408 935627475 976549452 431498982 828013995 173062995 325278081 927558263 942321206 843884411 905071096 566735621 737610302 417645779 866840254 997533912 998969286 157085365 250594913 222856896 580026785 565881686 584586852 967713548 984677314 502164426 674448749 872079701 953692000 351973816 533222107 97627642 837642883 440214414 510290151 902882115 988773401 282784283 509363937 503537028 709155337 771462940 860856345 187702691 673827532 591517544 976576264 175489654 191572141 54458672 305828183 580556271 592587146 645052738 649813074 205929289 578363013 693341746 970333494 438367760 508107146 37780510 550500718 431799132 684429118 560499162 690681696 376669585 856020343 226902426 503829157 956628784 957586951 755515731 796417049 959289190 979247925 686299011 687853383 69090975 643712591 90763051 339269906 847281065 917456844 825576552 941928341 216203001 718363373 931380865 992889652 962787043 979336135 255974762 320295435 502023325 796006652 602388105 833862266 735579891 739024164 561225023 883045099 833417213 993991056 889013997 991310334 515557925 896845188 219113774 814737192 991592694 993833488 793666510 900015197 318114546 486550019 560579952 752368108 443978113 930311359 321017973 399091099 740055387 753210545 771765991 782150913 130786499 480582264 973923979 993783091 965827561 984992448 962463265 986236391 572514720 984987375 778660053 996421782 548572384 975895975 838798645 908851426 266465053 777918257 478113263 788346571 600976899 884732793 855124473 914402992 10827469 569759376 751763143 942371702 275187863 749677689 188749435 736116079 801101964 969246267 189792939 763263039 445886206 724709953 367362986 478157951 122697891 280581950 335530960 434434062 219845545 903475608 771753335 791519897 492839029 842692871 504743646 873530892 123328284 989425342 177721264 306778399 316973790 340533793 193156123 323181749 905926054 955943546 7247369 546146804 53335556 966205222 867080743 997187767 181265227 621400641 172482525 814289646 588605365 864327248 429105614 768102008 974370650 996122582 322927948 726284320 114328493 395259198 982861550 986783231 232361635 557346705 858916723 929047808 646951467 836893767 366377768 544150632 938332109 983098860 756433285 767408292 176443531 425033414 924884967 961079832 444694103 512681751 174305468 808064532 400149642 463996007 301003130 900189008 878851991 908789175 621568879 975353427 836655742 861348081 827135905 876025805 869607130 886759289 446738457 746642900 501107765 877896564 591629790 692136131 659526714 918852457 283961893 476279907 971386607 990067609 90447805 324835636 203758612 849713498 220065241 777338775 141370118 326764838 373348201 413299429 564554754 816731718 596159153 617874970 882650460 904437532 875008108 961552052 287062932 343368922 327580173 338083687 363247096 764507283 627838970 698269365 610181263 639824919 831895871 884622908 439177230 957893133 680206646 796488868 987586172 991408728 905580342 949640761 24073648 492526756 110108147 388946813 701374388 785342956 736250978 828966970 404653593 556860021 649274543 947530037 699748128 723944293 371164446 796195177 540374218 900734404 457086259 671985046 657710285 758474403 788949182 925585020 158112365 835206040 652553737 675969479 930135764 977476741 471893069 600190066 223434990 514029834 251758563 539553552 737768373 881244777 169169415 690294686 925496942 953114356 311890301 561334120 118517557 169175620 378074626 581015883 802865704 998420888 893594911 989250468 335515840 698735075 18710413 630934570 989626444 999574499 101028073 725017205 928156370 931224024 15618538 245641265 289737959 387016427 759227222 968020320 655214613 924945741 131192146 609654125 510219483 960577795 141553961 903068213 955383104 990480602 382875681 741337628 735875774 740638077 97844717 410871080 23075160 514624137 279136356 803351585 326138154 703564292 762563286 953550003 400300513 761597629 712129561 768432383 544298026 687004075 324700327 324988776 330219139 957240632 962668341 967769429 646762715 783956907 882675441 992292086 966195767 993954587 962743768 988169072 663854147 772756595 212806165 643959432 427297819 815641785 85515977 688460562 343869455 691653744 208028001 743493690 915405352 963763282 906820131 985233993 41103752 878761074 509958914 693451379 820140891 871919826 693809203 947682228 368636300 505451208 719606514 797978991 977430942 981154019 440407216 957612982 458767487 705630553 755626163 919739396 410123907 578342791 464154124 504124900 635855915 953670903 276094335 936002843 711745478 767426770 301610938 836511826 928042153 976009557 678347213 689609857 604855475 821993341 350253761 558877282 39517790 356029884 465361457 874395029 162133251 756290340 52392845 665476507 486700367 678452816 680059092 971571372 545850544 567685227 514104935 811292169 577057429 846478756 316218913 918582559 937933657 963759479 668703437 976313239 359536348 562153744 726091092 938368873 30987940 312764316 780582395 941730367 900436268 932249093 157715645 646906981 550583381 641101650 955144617 995606549 370256363 847437207 647313298 920064471 663348175 977803996 622716029 626615495 959123468 988281636 474672408 805613795 35537 818614785 433237631 772169828 63625306 443784758 146754851 829017420 498036175 565801690 984319523 991500980 793349179 800164064 195421457 518441725 245413877 688350659 678668623 876605658 975707547 988334717 365569913 454215092 954747049 957509944 860043204 926107477 262723103 283001244 677782940 914836512 584532280 937504323 689000579 862934608 142724807 262756068 720964456 760144297 671695265 706884498 74927916 752109240 40626918 559122410 708381808 887655797 691153823 720605259 312178616 337611393 569910343 666456870 840207612 959607269 515244337 554304238 948113825 984760607 88719491 155681387 136598478 311782993 294861466 451284695 653822881 892238333 970444351 977969786 754438533 944918850 67562610 115571368 939458145 961367592 637580506 703336956 382096814 404658162 295229753 743058125 303949311 998777734 359089829 610469825 758034342 935044060 115352764 442509659 884148605 907429126 771971494 802791521 232703669 777444645 306023381 382240706 767956534 837941036 161142911 313052884 368147488 407746122 388178 442026099 755950687 781159157 493709513 675007707 77796970 699988935 977925547 990459252 792129032 941341935 831695047 883813037 190876077 695161910 102416584 807537264 886526473 895977367 566838651 889081306 347203528 606218429 920400856 938308778 927228098 963815133 534594828 574653011 793743009 983565434 25200771 418608719 742222923 879544314 2599455 915888096 515900782 975641207 499354334 727971484 875384513 985030798 60314218 729763898 936695433 956518808 174566324 483946213 130056760 779369285 424790295 903291888 807063834 918059189 867886919 893210285 994575645 996015309 983848188 991263428 907499604 951266542 998946276 999202212 92113667 642109677 153131920 287878552 927339444 981022527 514603940 920198626 81537057 130311830 735166643 892085231 58992217 478988007 602366072 884578920 951302437 982185498 436732608 467745963 994284120 995092731 148330 689733554 357753646 727416001 527454378 950453394 507193204 754874241 650587374 893778977 261854029 443359448 721384454 830559111 371100761 784778701 341515375 649930010 726249085 856300717 867391047 952331715 784983649 933936280 658341038 798458916 788585683 939729438 905633401 912838397 927815787 952400434 21132102 852574882 765205815 883741365 712432483 777890554 374510188 790545751 629788780 721157434 721313799 784442193 615214353 692141315 373488088 923119409 269628095 560566408 380448357 637973640 748869461 836485534 387799161 675658824 361517370 459527984 741459436 828361952 445760242 600239546 522883043 925826871 218114608 989596231 967990961 990434582 421267183 707462940 843561117 919286186 446757395 833381779 78091136 923773098 791297007 820257757 141433745 568414551 625017866 682507939 655135804 849801518 61513122 619243519 975937585 980087237 907908439 933978804 28879093 386545809 154116596 622049156 768156092 773272924 696166544 791920190 87849222 330325524 433050276 540024930 175459861 318778166 686511692 823052544 470459441 954533097 783456795 969265393 708031082 821329804 759698344 841301862 609136891 847899098 540823781 765523982 903815743 957165789 194828119 784488815 108665804 855930490 674646976 695735942 755141391 849694804 838111287 849703043 307558536 579968354 217409312 975915667 508642050 811330897 400725574 966025614 394733803 771102002 72442162 844143572 152859354 688676827 158285237 308642779 497723190 847813763 865571807 940724846 966446082 966514498 13221725 762294853 399948883 773292733 85370980 367183801 982604064 986431836 933725651 956248194 334580390 395869737 900029852 963596018 935993913 951906118 499072958 870599364 309740488 859687665 49049918 186289861 144499513 489674943 346966000 736250151 981443926 992390447 17607044 728161972 286260525 708019409 455847948 960602376 800173163 940463102 69959247 720917711 9667646 443905859 790060113 808823489 833500835 899638587 412536538 604378610 846354605 875090644 430505653 460706324 780738482 871566156 778885205 843608943 687783915 697860624 875536151 893893974 571570697 727311160 596023883 763208166 952445131 968291778 496706343 558533313 228306913 249600476 527878634 629568711 601130889 936198228 4622373 431912575 850961102 919767856 775585749 806567949 925281839 944777337 869839861 995790673 281946702 737779661 216636646 392335715 894015126 906150035 957362602 964636264 145782217 151916531 284557469 642105376 993889166 996274634 47187341 354605944 825927488 902281684 149369351 163227228 86216245 658600665 89315464 699621664 499968776 648078124 233382020 768309629 900914778 968266469 93783101 375377679 808791604 889867600 909263604 926349001 760546263 830426954 804465922 927911003 875641543 911308344 649208884 995286914 651909503 785422614 56445695 161913321 556757619 956824890 201505930 527468109 667802593 940997141 533840764 931798397 121050844 391439380 753241290 920264680 8893736 160489560 763231822 934281938 468484204 890168889 908720525 973402378 98652973 709516512 804648598 888194217 640247024 756033736 615168642 889269253 499529572 835574959 684627268 834714181 763912769 823077788 524687460 836107902 432797986 639266472 757244115 889553694 859283947 895155384 376313384 822358436 707760697 951728702 311781007 623286549 299224797 471773539 992228810 992361774 284590289 346653593 590132424 613298987 345567773 888292905 793404770 859406925 821746458 846574023 137533860 286997812 548969826 812891498 490876570 524651955 299211957 953041197 130115249 634044002 656976460 792406928 210684222 212617835 584648361 858864940 227942634 648582431 344172573 633992251 269366073 917752720 530871915 940193771 665639834 975041861 564049592 946368442 789913038 959552695 303698886 568865555 923135206 948710720 725223643 884169675 721568757 774097587 784179239 876191675 139770343 604542928 540208654 563638152 542326427 671392851 741693024 819480511 416819021 525043853 49982596 809406468 420429729 440964660 687008652 762897535 112471279 132054152 576117217 637279402 87882334 720167881 857749272 941497547 131680703 395174806 235779077 483668557 58001740 329265534 617648451 770143287 892358791 992487971 565157874 673564977 215000507 799386838 819895576 979948414 166104859 277942915 800078128 883178374 246579916 497637350 756629001 894179496 697241779 936709414 373753178 965210805 469500292 825305339 98527993 853956482 119639572 959901769 826116554 980037328 728167216 974128709 65471399 944698899 160313253 541941197 903108830 979047252 920403303 989763580 491339830 767379452 644125590 737333153 820309435 826104074 27107529 413645647 457948828 556712588 901676383 956457884 533596823 847334570 712450520 958506295 950919149 952993148 666239183 935899288 511555752 915237753 11199490 98778588 749818369 952818836 112482854 927658176 714053433 827268668 866993507 872508122 334451820 362502918 640167971 907221999 160481038 168354585 892751563 995257534 296859244 867411879 886694412 955675688 230358347 304251049 754464027 937713606 523454804 765039886 404382066 413743879 267284019 376336037 923512635 937688431 560546254 865500539 325421000 635480257 345256945 913551303 190926052 819195160 45864991 902219280 120861649 520101447 341568624 957390430 864098838 865260796 650871957 786818288 234140527 578249999 481757172 631816276 111653221 594694921 914773317 930338200 375725126 933998464 336236086 647846923 697650787 892862207 476820904 669749594 261481655 431893303 416358051 497173930 777905835 884516137 756653738 860416261 490520112 924568210 1227906 477191336 465856220 673500985 943151338 998065736 975372448 985659718 170548490 666857259 483345944 808160423 970221031 978831605 841431226 882902036 824442816 863568722 221773630 411403841 172029084 221387264 42772930 87708123 320059936 979726405 704933924 713502472 936582609 972346334 836088504 976269903 158203451 926368927 353697924 762177730 642426924 835585813 145352181 968192420 252818394 742935577 900688455 967184869 400941234 677998991 103204926 794801250 238339430 775281672 796369493 809088236 325457914 811649565 143914725 425628552 242491165 246113950 747218381 910096732 847622537 913151234 876878787 897924032 470081772 923647065 32641939 518162805 93884247 280422796 847826272 901133622 240609085 602472508 970068055 988182769 789126847 940437502 526390499 573948614 722971256 878410842 150171103 209524879 935465063 993389718 880479731 956371328 175674040 448152363 457574686 624808473 882611694 956450107 545154420 950239471 305344595 367930070 45461726 750810796 256009823 729591778 741408818 969740397 872588140 957588329 610887292 800394324 798868792 869146569 237485331 264760210 741722735 930175763 293247764 727017923 989242348 996039906 956434055 988694614 804009773 885857659 927474183 942543575 363619292 388682568 598124598 911188694 797696118 982588365 408234734 649423452 921563994 979958688 228666492 696157773 118285484 485250461 174922540 393181885 586743415 957670008 266308353 376813355 317414245 682216152 652039853 802202817 498772702 793633070 789929221 965908828 288747359 944822371 764646520 895625699 939649860 951743148 590921636 648465322 226792501 662373947 502951749 656548056 538666735 952267124 158685524 559889827 542066444 709392612 223586905 487669917 787750287 868165954 140157263 660926459 870303904 889079056 854305373 899820067 758092644 995343231 80255904 459509738 87727710 960369094 876837183 937312985 812596920 881973140 24970056 318421530 417971847 995190188 74976061 911469079 810675847 906884563 408979402 788109156 260443674 570847679 714764930 786927278 475191195 688086689 795674440 926601394 502341779 739319192 962909727 992549200 21996846 242097520 358137152 401707656 728355201 957116015 631680749 906529441 786575562 911434276 4546311 905675009 884135188 893360654 947845371 975524086 403867339 888630740 110387423 694327749 427335917 608579448 169772800 414468500 243597354 537710397 780881792 987280153 600649106 755254041 928437710 958724076 748980620 924427586 2958741 46316492 953346145 959955392 412038016 696212336 56482037 436608206 844252124 860623542 248068505 327891045 784381662 910204660 829790256 981233148 467955770 575819679 467748082 797586062 113888393 770891886 993728960 997259050 450789196 508045417 864943698 976126021 870796227 894965804 154136103 300195980 692879913 727795240 609687844 666836494 664420363 847673430 288725950 649296553 258975944 649720084 151310588 921181043 970945366 976823199 604502209 816175431 66311677 834663318 812234023 817683575 492683525 506282392 48824853 439665556 36200493 907796792 63006913 663569748 403647800 972017503 647681575 706484135 49846472 851468710 644364519 866827718 925073864 971426011 631441060 712992553 704875902 763194359 404266969 640828964 107388671 332238792 330842539 573709024 161860583 615067350 27541054 566117296 233812629 863110820 379739280 953628545 106652106 393274206 386985436 680353157 436932830 881061138 166381900 956304579 408312408 901897853 569586663 842911030 968501676 978403595 588514603 598326453 420259424 874454387 108388410 850478924 668330568 686945888 22915240 82500398 14803014 625879730 321426552 326363927 299517218 973880774 104040828 789354029 187269467 939321868 673133846 950916955 43252685 534804542 114715821 424598523 21209526 537014894 233432377 461241495 860312833 966521480 93771259 119554635 738462653 745235236 925385191 945086121 556083566 844881401 421525542 569606475 377925892 626576623 4223303 486376339 218116217 397127760 808973756 957834466 784601908 953230893 448853375 893990019 918009621 956434640 661814025 802150216 406321619 793223130 437134012 487283302 189635071 761836240 343275225 876138257 620853191 724977197 398177833 901778418 813253930 994311969 150687285 926361398 131560033 989204307 520987262 939111388 326039983 539593586 273915745 466932193 285397515 804340745 550830671 591508278 720363490 851073963 362051953 866490732 719314069 910236998 391753976 952593243 819818013 839821950 695586459 812327665 963551027 969555803 554163488 585015146 926524802 988596406 862936008 904517200 440674975 854491816 983133225 991063068 298664690 928316017 350365197 868402520 575544396 747711635 334690989 339255047 861515184 986028024 739793318 765183039 106008040 545959060 940775989 960286853 385946085 650713353 959197113 963824537 294691714 784695969 707736808 720421934 577349412 780873818 356212632 840163511 255409537 728304324 571647723 946948472 591351607 673958285 334584557 541497269 334283821 946351577 545658813 738145451 222382476 790056620 20445301 538153912 117155245 156079866 185404561 558812060 336636415 623380147 448326862 705425518 719761001 957814061 561245547 640390465 682770528 984157511 880053924 988154252 469364924 612657154 608947041 751407812 167593750 246721821 843310274 867175280 661907236 882256794 176168619 834413912 319854792 971922428 481923792 853059098 472397743 568023416 563076091 965450706 261181537 791822930 577491104 999743861 623524039 787095629 56535932 626130650 468461402 688228303 778911133 922559485 259200845 452347213 172967819 329315265 884514501 973723051 41737279 563751322 425276510 499945253 837207832 846274280 232689790 968760357 430900998 898905685 829810430 962824538 513019059 712486238 711172993 758230466 891880757 930664730 383661616 732391676 431985302 923642121 119201371 229777319 693423060 974923886 490593256 921197435 997697951 998831218 58768140 533439261 602262964 892446027 553666965 931317098 577592808 840943511 85668646 772179673 407977933 671328518 416910120 826423894 921450712 955601540 922593662 977955341 880464188 887872969 54854687 172564651 218473787 220890603 485701659 605590074 952573867 979855793 882240837 972021174 752991269 989029070 737740946 902452795 662881249 889511317 240531658 505352187 410411267 694420649 869206059 878916410 101581682 403527399 302235187 712820933 837529687 851656619 770842167 915605903 507441223 838781527 581641009 928716662 93029937 294595419 168917537 430306097 147438438 582083318 333154627 968106169 394428238 892741176 249446872 431016550 739930353 861437644 295042627 594582203 664479976 718837987 228195414 694899287 658110440 781175136 522991856 736257544 567296581 781352423 640907748 837466904 544340324 814177897 194502547 969938885 143574287 752530125 200530789 385335350 819858718 985258162 322565897 417183726 768335820 977796729 68425085 459659556 503818773 793195019 530959493 858188378 669485400 978488060 887531589 900560534 16653535 724910048 988434363 993986669 809255267 857369630 242143516 499125999 21942927 591758935 316898382 934824201 130721292 516906213 691092218 751273923 733556110 992704683 979297448 992267328 600162128 781840761 883363293 902511400 553798772 898885230 530621733 960320668 248965268 633897547 239229206 682251495 529009245 798168209 466150649 760192311 195348174 306331076 497583177 869014002 383613836 627040651 279239489 598151914 704692805 953161013 973353761 989971824 756465627 992973287 453297592 818858694 669194206 941742915 556569584 913112150 985475773 987881355 796662095 815160419 420883181 925475018 167315960 451975907 185839639 984520677 140132781 985273895 567600793 645837932 613113668 751221789 785025577 960542574 351109312 544387599 29915066 396850467 585908826 729864840 349105440 394637362 627640990 751875051 490544293 974565941 607248825 822404581 951663669 953007161 708640069 913726920 499697447 964748278 762532244 830437150 851509938 952331870 76625531 724413231 415691830 674605503 179823420 512001865 666855686 718022261 860319245 902246805 810436978 929651844 861366731 980900262 948396617 979600293 786981917 805578948 784525037 848216401 95143403 618754630 532319813 548039539 675068228 988880820 636778049 878344370 734084762 872549397 865081888 944319071 646519958 950632705 161652507 559595912 46693722 470812618 968592980 997488585 790336980 870604037 684491452 891134326 161992558 487551765 526373830 796019305 346519489 725710391 836007012 836989370 344677654 946173714 362877390 930902432 799635230 832202004 935607262 991005977 888429415 891217129 717140806 778455522 442445361 927904733 917242852 994571175 522154884 532821749 267276267 700953912 966758255 988682253 409478475 973620771 977575356 991705607 680658109 694962808 962275944 982967631 440866840 494692634 492419624 901167602 210799837 637083987 577136481 797642260 363294861 972738000 208293601 619875332 870653109 880604912 322227714 966446435 60024098 864972024 370296913 477276597 696526880 884638654 402994797 639517711 193739742 633896085 156554960 650068093 10195837 327926817 121383830 716208438 868155592 958196773 346494411 987888850 194368304 930155984 364186271 784733251 287506148 692256427 524097502 661044860 937928444 992085444 829713209 892939955 903722577 980132726 394213189 550120415 93889317 140351658 689346628 952335083 601681896 968673538 138938944 679197559 884612143 921980691 586745464 815147933 772641695 784734379 540138900 975836008 68063051 215226871 885100005 906608228 249575162 622971136 13237509 946855639 597657862 970211193 362485273 726415917 952820733 972166123 891309459 905400509 398642789 687969999 763678497 897917228 556827540 651180815 605815587 901425634 93894765 873983115 245989273 934101610 449418670 901180677 86398792 651118340 664653269 735939229 791726218 995273236 530768424 597427136 512644285 761063817 678991954 754594248 645069881 995748169 658607193 772427391 191962461 669650397 803862951 824053358 834371915 991825059 525013099 876820168 55417184 184429309 116588181 173854042 100680630 129756793 234725268 581809413 842105457 951899532 71830877 342196303 610539122 659854081 160542869 448516060 340022534 711346836 403428017 636774445 417552510 957479992 951121250 976880383 689549720 907573920 761807098 937823527 161281644 860254716 827499469 937755228 992755322 998758518 864343589 970181513 857276431 964081101 839747724 982968690 887421402 981763593 400655411 475903767 965734943 974384059 454306557 823651896 487423439 915925403 538794720 745312286 494574926 890206598 571614505 995613811 469620149 861018609 602737506 634379916 616737948 700103658 703426813 789722126 211146962 356681501 280466238 946927269 919919994 983623516 261281248 647787622 658266794 893112622 416882561 779227860 538162785 857988238 964696769 976871387 229278609 637906014 586768804 829615686 122897243 875358492 111058865 618650482 862637341 972536402 614945487 916742594 761304877 857260922 94665580 252045308 285323803 385063383 357368335 983574708 873250960 878736388 784450973 812969601 906375436 922947420 124578277 141715965 396508737 481681176 221929122 858560020 883610565 935635772 355762826 878461404 489657793 659093888 385289799 434268656 542839556 677131376 994636164 997148554 938933416 942419162 578829733 628010953 719598757 811878969 321760187 615304663 311310073 529113652 678142574 982437436 715507532 976716927 99324258 859719835 8240657 915541869 401818213 829832492 908385202 917835681 352192324 687578414 237653456 880594092 752065809 821029662 799943240 825515086 61923009 628698982 178291469 418822278 597981835 904354428 453297733 813196202 150203840 710524911 290574829 549328716 278280192 356593558 242433999 624297286 702624912 883080963 854101636 923372685 753157640 886584255 889327924 989338277 895328162 942443388 110571547 196871363 407614287 662455100 260493700 982567806 776444850 933636712 404282060 674643987 157532661 380158346 999675729 999838202 600971370 663684927 42588373 908980507 307787906 858616732 992129299 993237390 27681509 824687607 357178038 747439251 891998098 984390584 771808761 821179080 797316320 807909250 279444368 622550130 431847549 860298691 463085991 938216062 695715346 796722554 331194813 853555390 676246104 934901393 780593728 966690609 358195259 696719117 494800806 745041492 274804229 346885179 42660042 478289097 405053432 911690151 914368732 990596016 377278540 540778868 489340828 672142981 224530995 493230206 823385023 885600203 192823071 761801545 879924720 915885596 598914859 782917526 49500446 90897825 12907674 561970779 698120684 813004108 812933261 899413052 520783904 759241665 386341716 841914435 900388962 965877995 242604107 750071479 380511505 615260108 225705963 896816744 956657881 993039670 916279035 965535628 571940460 877549258 910405646 979407648 784717032 795763877 540033603 993666763 413060106 517042924 36872788 105888203 351453511 943321913 734447192 931812183 252950608 588174209 581337777 964615431 639464849 799002533 174197714 969511723 37690204 965542685 422610020 933275904 135171855 700346720 531834701 687161256 533467624 795624401 275627342 568099661 468662382 785396075 610529334 946740557 691188649 871590894 602313177 740380680 376580588 556902451 474731625 475041666 593652465 732788983 370870165 905229425 525928527 549147523 327920928 911843427 191464334 842966966 928087039 946828819 778380154 896222292 601007912 703385375 804034916 925634605 274079467 760875617 71353682 81363689 80929391 594117197 581632238 874649662 207425139 664450158 327774966 685438637 529197056 833050166 336213949 749727715 926148656 950768339 64899974 999071719 190237362 598988171 991795553 995380948 897176923 979666332 149829862 407937311 626774485 922755493 343288041 717050136 56360101 337844508 484939055 585130152 599578073 984515021 133082415 279929911 536313823 718539077 117612703 731721960 663340694 891159980 6661365 234750197 716951129 749736853 594441541 613657674 7319147 645947717 414890186 564932054 649635726 933629499 25648815 454643261 792089216 867623860 702595362 787366159 432497946 721736171 743163411 846556945 528229912 998657120 825073641 849937130 487269094 945091464 279863698 807593113 88309820 504781239 320279065 722290401 813321641 941075291 598256839 827790846 217592472 415820606 126644711 138407148 518534997 880108565 5738368 693949165 804423165 936535093 748934074 975516872 457744537 694985129 678961535 877745387 816144253 964722289 649832349 824719289 464386763 716486771 629381375 976806202 274435239 757505454 276465115 559004790 560989420 707811243 154586305 349420186 645446862 720964091 97030594 673771968 486705925 525395852 648114993 876211750 396392734 614714133 188961351 714366213 320173069 805034099 310498054 354696689 269887530 668991388 972118736 976003790 62215818 735557336 811057657 819379880 550314476 647024833 803119404 914642875 204308580 530632188 391674822 947593798 133955537 670178234 448091218 621813471 368341540 462999292 704768968 988460894 934670493 963402268 669158642 771852740 323377518 906836244 671593840 854748639 623412516 878867695 537892243 738082215 916964773 983149612 210933231 477798560 99503286 394532101 96929909 630516987 152950354 795097983 848347215 971732479 962844974 988336680 919814993 953687377 87736959 182002697 147327800 969043739 332596345 703304553 343844208 882887810 679282856 892609129 7707808 19654532 579724394 676899750 41955340 807033643 373764295 695625051 412601380 510786746 667409701 973295432 288877930 656555802 722964135 777445056 365586869 730181246 336827027 681886963 857289526 861147981 743071443 972006994 606852553 913949802 295240663 561281820 39573707 116110906 377666395 454801986 624026473 924418217 128182877 829985181 562144209 564241895 306610921 850332211 787772204 910889037 940960609 987003893 15241747 376992423 111943740 344652220 172754172 613396400 994403940 998434254 860996532 979250090 251392379 814989078 584024827 622505243 757991529 862560381 67810196 560083947 405412873 900605395 296630593 328858470 190243736 275137174 600832298 920881740 545378346 551958641 684369969 957361380 910192499 984941497 194575684 290251331 238609402 813807517 745211547 925067386 970174416 975610078 80321537 759364102 255409565 808742686 151246572 209034856 895867542 921866470 852275220 924347229 268306059 937479698 821757343 923114830 286911036 658832456 466066263 644278018 94681718 489064415 869148683 973970969 145045612 402261635 579640886 967428974 76342643 280162207 663016982 805791004 768898523 954295213 766221503 811001810 681329490 885926138 890817587 961142115 772751286 866619249 828289158 990847296 223575726 912257294 306140649 747136578 669224874 903187190 516622201 562592630 144727166 799937293 804594882 864851904 126244338 142224264 666834345 867660194 489343875 659872285 473398600 476260616 193198891 710193319 506708333 973137843 42421995 160484897 131202984 336594761 334412301 538621392 614602100 695923099 660765983 922785380 14457471 428812369 576973456 910972873 618843337 694401353 238843315 242183176 662524072 901931462 400468224 491017942 578928519 896790065 819798686 910335518 650758521 994281843 767912540 992941710 786582576 790196293 950148585 999825199 903280122 973950022 930042188 974888542 701828289 762229351 113345812 644138815 195096332 983618467 546769080 883241821 541096836 560937055 741712808 894458429 757374477 833461843 26956614 802425140 148659081 467762050 143218910 381804924 269330198 658655626 163535847 932171699 813888687 893515077 410973074 635864519 754107728 949658505 750955084 822592269 919478206 994899097 684151144 820803505 829629789 947089271 149805486 383210765 120365111 179214277 532206222 711935299 91831432 946296830 387737530 483185837 400412592 579690651 207879341 892156057 315331820 414820613 212082626 422087609 480545413 644109998 554939382 628948505 516777574 634261921 252900915 448081014 803162477 954453874 203224020 592685695 396008378 933536067 847104999 974063425 46643307 115777791 803712495 938297825 942650098 984913484 458588931 890771541 740981971 968779140 868260922 970604712 727113842 840679257 194556640 862978994 531675206 779555319 452373351 505651415 976518759 995768696 85729973 531854536 873034179 886591394 293347541 450440726 727001832 741441677 732924964 865691332 562710874 808407378 367779497 433226787 169594557 219865456 96474591 499801233 642736197 729001343 731738477 763146126 408082969 736238816 768855789 783514339 274656963 362233294 285201545 659978028 797181176 829945064 301278406 993648224 738854637 940375118 624474386 972407186 681561294 792603941 673026317 860016087 227754352 954716660 949520274 987288221 676524087 772299046 717364231 964633504 933037725 955188136 967048206 981506770 217007009 488371743 169751881 630491792 757873216 889397184 535351835 898486096 849225307 912771898 677509102 811873097 906202208 918166098 587262655 650991345 323531735 459073972 719236296 846894387 492529850 653091148 227135461 832165325 356072229 672462293 875940075 955278396 191212327 348066635 33979739 377577106 442657253 872066284 408986528 892373371 473715666 703919568 102407661 523495929 423169696 890628520 791982851 894205549 207685336 862170095 64259924 260966349 231200352 425373339 545688958 809310411 106438361 627929023 745629640 772470539 577529769 834247806 535430113 994811954 473861687 527149039 413750195 652161885 573691519 811793301 29914167 93290998 471223485 488823866 756182748 821444379 747978829 846443957 421306639 685607350 550927310 785243982 367677073 550880047 988842845 999686491 515113356 845237424 612370062 667461236 520633698 781363278 107491042 183350853 356966838 815815318 150517806 670613571 121444140 844015239 252104601 554779796 211533670 726906521 282382932 699285924 66496457 155613999 469728995 602143832 577964486 875906520 99540089 648468468 379472758 430735509 564907553 601380709 995331792 998978846 428187511 988668227 684435802 735147822 372994610 980424958 161309887 789803241 552718702 789639508 614984457 893863179 189769570 523474013 224882258 600336134 980516843 986905542 71717383 243169896 695540859 904248471 187134827 732270013 14226874 551223588 733743981 756200840 705768772 858547685 766517258 777905000 376510251 879181155 253837742 916388305 730637554 907900293 727903737 768007185 109598115 419167523 172392951 187837868 476092646 725236114 51363045 297404115 881942427 967649711 222600355 436691756 839082902 962854221 241730642 873038016 731209111 904992925 135523137 705544118 726729178 796511972 563412908 851228898 651114520 886159077 761539062 867541336 817057707 947785702 14262424 750265622 649953222 733541617 355305289 994392495 166736956 736110436 959859443 962204648 637509795 829346239 376215922 902398199 744930931 897666416 978616467 992818452 393949010 617498027 755625098 757748749 623365931 972019210 684727600 807925019 10678064 586246889 3625819 49140461 294353558 669006804 728708827 946146879 260808895 573901863 88208066 943842698 952856261 958630851 85179599 107126507 364304095 741536318 936107240 959209052 742109633 883650223 645908267 665035099 574752684 987262271 123926394 644376314 125960824 944089528 974274105 997013608 784829866 868358133 637563535 975553701 990770318 991735768 318729630 760242701 935242556 994793106 570243276 813941233 845073574 970397186 823400682 836388221 321702082 996005782 384076670 517104894 817788316 934612497 38817758 183264958 285562079 647693915 44604898 803497627 266313965 444035539 926359006 964326992 100959383 296290850 34470856 672922445 84274242 559779278 828095092 992546255 380737906 661395135 791359490 872086317 58308605 765798528 242807303 600500491 912328272 985338183 57769195 144206772 975950468 996300419 282964152 433762461 25086654 209013118 99506633 676607481 953721112 963592485 697669974 971498341 578094170 640820005 278029382 307829946 272923437 321064628 848147046 872141951 948635011 961449930 737216074 823263841 554621665 588210668 607067644 820667294 620233099 743856764 761119972 881666281 521164559 889386036 61227449 361721210 531927023 539311397 683246472 998974102 777390604 893408298 523860381 916700519 733051192 941491473 278346238 685726088 834400370 868709890 913292157 923077075 352692820 590767535 690607108 794495881 687901694 749428131 817114898 925004934 865438288 930668234 695637395 952269502 601228802 913519804 339482939 591709351 60664323 914093848 964242518 964372868 450660176 579121306 294378453 476541915 122474217 820760282 69479527 645832300 759765708 915637275 772124016 794065618 791785035 832502662 686635796 913221370 129607837 688533117 910442160 919414338 637348950 999636681 183756919 304743421 834733172 885309558 462239200 679169619 649886908 836973764 187253598 577339743 93037934 579633888 666222375 711424144 729334417 861224194 134044471 248030040 496290187 687803695 819485292 967641183 153262822 884185615 626001888 703104139 925783836 943836807 769406945 896277753 454465525 910389777 555323861 764449846 616221007 996754191 906979381 935747092 938355986 966440306 864296351 886921364 212194119 932403391 510027483 528035558 331012816 513961718 122235237 734481817 186744127 864550125 718452891 821726404 477244254 900297583 875780659 935085130 991226239 996519262 993599775 998715911 703616669 723102363 749223929 872236550 481858145 726949727 965415529 980663665 598641623 673281145 45086715 621940884 293278243 310430493 279079216 587240688 969353732 990882142 563394941 564839489 860759179 924302224 292902292 810474113 638066030 804406783 771135628 886824997 343623909 800636875 404352696 535920341 857483376 892097983 557544583 906638438 999433753 999806759 848008305 916757940 241934519 249361303 992580233 996048491 873182507 873617219 33255848 399903858 261685311 924287503 439484832 677776424 237775034 777741905 231697343 606769564 552606581 979745255 219164987 948751189 539796920 896804843 888064894 924162064 585174426 839820774 298117586 689405018 612709317 761141583 965034711 979199296 818702317 895780045 487558982 620302938 446797224 453299268 30862273 674657993 674028320 899528293 447394552 474360757 507390055 792466092 656479779 759755326 659455580 998286795 221605046 336047319 422670610 880756323 101997576 808826961 586452257 956079308 375433405 562964476 50462612 844885562 775725849 928525636 717194433 882282873 126789915 238267032 369701600 983993754 279730043 914896252 853740913 983222614 848036252 907092620 581359860 998931870 965405196 970310868 31494625 765764244 495351613 864351666 230016140 375895653 292920560 905122710 619986812 749229997 716561739 971962660 279865448 867649086 667667812 952706288 728356455 955662886 171408316 847380168 236656412 589141806 397071748 630003850 980090224 997975803 165468900 303001568 454459566 514631547 811704435 968033958 867204411 978638023 45589614 208376071 670442118 734624824 901065541 985358053 553680765 942610232 407176720 522402197 109246991 446406011 777922998 818125482 870267390 990207063 132098374 225731879 309182086 612022033 984189138 995719016 871145200 913029458 714369627 756517317 383173148 637910718 149064208 342782359 950885492 985288481 157377699 418343216 837189431 979834258 241447100 393444652 561645616 992724670 952156124 988806152 382914075 450700366 123192362 275450266 606159161 698712966 566009842 869822807 171051952 292922902 716535892 869735688 19443811 780134207 82682485 430078378 351852638 550349326 712267937 962415243 615700025 952244024 549482030 889907168 224022613 357257933 726556158 815130496 60319712 738394216 37290832 181849585 559462368 995031229 664201995 889938854 834870637 975603077 743305026 960279281 110004460 335114611 36159642 223532712 873482613 983439752 455742701 637597014 246046451 825675609 764449095 919601224 176355436 355104179 843954971 907964521 4859074 372163844 991594736 999318668 675592783 924495425 615630845 870867238 225553998 413633258 509216072 621303721 449196094 687581115 560195997 758262640 104234246 518423036 785932212 875659749 815019610 930654308 464937373 497121461 835253347 952056465 13713767 300770018 597360580 785657701 467662011 902935883 839936680 897499832 284085115 545700747 646474059 929330150 596521512 892135161 679082772 812030266 105636863 405537640 806772971 885278106 288577826 822388889 998393794 999892947 260546077 814077073 829681646 910511755 639808196 921906193 21629764 324909135 517552736 591736685 335242665 995307933 649272285 669016272 244230462 418415936 6946153 7655385 124700611 461362565 308435553 668390150 85398885 965964978 326250426 382829599 241159686 534273771 720282258 932128464 521933382 949888577 209824462 285223641 334110545 484896036 32062428 413388279 400235171 863834263 770292973 914360017 358380969 798676975 608536751 979739149 278949514 712491506 294683619 931411494 858190101 872805024 655266878 961869461 871548268 917723691 120937787 416225922 361576935 648399679 919240771 941366232 573872552 791190235 80179440 141521948 600091236 649499604 483184056 772745985 439638259 851137485 308447408 316800897 188487051 795060249 954413649 968929523 526823747 814427548 493555196 529095091 776983717 872982397 31972228 524755593 419158679 470750305 584844955 957365129 560667149 592705654 772890285 805989792 210793115 499320649 436495370 795634960 463241542 550634369 495716519 997002337 922051601 972237911 508848412 761925107 233384909 749148288 470151324 842242514 438314269 500372774 803119870 954267623 475036362 656626005 564126175 923682763 356224482 925352608 88931140 963059899 525192577 759355944 790898342 869418581 26150891 404334172 1375549 564924349 253985138 839491372 169332784 419750612 984458395 985882536 162159385 340576435 905792107 972412398 16440868 427121097 230574631 884218157 364719266 488836599 736996899 921682038 729328381 801470366 1692175 197896749 356358765 886196882 858225002 942190305 861639528 974832510 486582607 548720301 174367656 988602536 591752958 943876918 745741974 782644924 181531899 741030611 451591760 498139774 508529528 910566981 137795575 885574295 57555561 942850893 757278451 828451729 668659693 669740480 693358570 910097750 598098386 823306479 299920290 895506837 672010969 916168848 962080533 989908543 147229848 797761299 246140102 347840399 195479245 929636752 857954058 881171247 782634162 832988617 112971501 189040876 372040743 766474462 346842343 453492995 301823615 735480083 224998875 747935413 574879888 665821874 675668452 895180592 490374783 791348626 717796708 822033064 740422710 939428155 476463840 899909164 584883600 914753246 941798320 993411218 191597809 271902750 225648977 624611079 104611392 998014122 273440874 708137289 604987389 888381472 579507522 953503268 856750521 976350706 150957001 901128704 683934191 882024659 369757961 417289235 122595092 463682175 706654711 924090374 901259149 955225574 49460587 143534546 847819097 913687482 387872924 940385945 880647471 931062604 152296224 867878217 830131039 884059419 794946279 939908863 930663695 945597506 939454291 989677078 727949379 864013662 895732313 901366485 402456287 623386350 684079354 752392414 442871007 771501751 248405071 437500047 39962643 794250286 933485090 973658757 937740885 973003298 845489658 928261193 256977598 592777634 231429606 438840510 139078653 789446859 643765190 758851180 143884373 925853680 851327948 956764625 966949261 993564521 577539530 674038050 414670063 621952390 831762381 837495787 219723437 975000552 965396339 981005765 907949498 972051384 851993126 916608098 15752863 425474206 940387240 955586385 109627154 596858868 571466668 990101543 2390174 233839860 287233739 977290299 669687180 677338851 536018960 837698452 635925837 755237793 774989545 846162486 49702085 618032363 892700844 962725748 14659737 506537694 10970558 374092591 640332076 708736121 609103048 720385195 856070590 955415534 839202744 937189910 806348701 920182625 387573469 993116458 467951798 726179210 601994794 835344406 347278621 904127567 551559342 889407492 819566586 899216886 213607487 644386494 27054711 353611638 888289630 971085314 336460639 667800016 234042526 611507755 436387336 612854358 634793708 717428892 850434201 906679784 782254105 940579622 347177987 388112824 59234657 528701848 359771321 697563495 180262966 771390367 441332189 871862215 487744648 886343128 413354237 605113451 732236286 886654678 691716591 972123783 489498403 493896139 104908638 660065962 266258227 448826915 256604603 443078142 690763738 752247103 963319018 993142816 987329153 991373684 124198623 746771142 220583247 451938636 100611777 992577793 467198076 758104210 811412991 908552366 757398797 868739537 437208246 622843240 670555211 737581948 978822782 992623569 569108368 723696240 170700885 470183567 369260718 551872194 958736937 995349576 144473551 241571783 840519599 856076670 992378446 999281050 544011966 639953026 954969259 989293023 574973195 993700583 664188867 834324391 103127128 636003978 679353771 778885718 760988623 926199875 380192167 386367371 817215437 821839331 639019545 995712145 216382385 769559844 844198436 973587699 268234369 375600516 147206991 566587828 86787054 201799701 601803848 905808286 624448188 705802014 134799212 366839185 505544974 528972948 48896498 936631475 122561127 469306016 906678420 956659170 433355683 611092580 960090901 966331067 134751738 155528902 686911081 779666347 954560853 961739274 699985322 888532411 711204090 807204845 985254367 995217403 621216540 733810755 255810370 765456270 353736462 554378376 240545033 695682836 330494417 923310960 852215848 977696562 721121836 927834597 786220102 837872540 703873554 921118268 853047148 883610473 626710937 632887361 972107911 998530278 698926520 869524835 487371726 985936057 82455653 248908604 429184069 438802824 554755580 945847336 443709129 882282019 872380459 960431766 541084740 924344437 826247044 904190854 845037997 963422683 301733116 618810829 200671540 957812117 846639544 856218556 818743034 823111383 748839330 984277103 327723620 982519270 793189612 919761835 322343429 344308877 953851163 976892553 612374811 983416661 16145907 753994637 884636364 923391274 89080771 188647749 730164564 766539141 898895705 943429437 394514692 562111989 426689426 463788075 699174387 820122467 671789862 691567469 584515037 631289159 52261532 364069413 624780141 827094515 246508141 493233864 284816137 972808807 120805822 557465763 112271268 316207841 731554406 906103566 337244676 822229142 558631057 588574921 867670375 903504050 792865656 997269786 667703113 996667011 371192459 585465546 471748342 545478697 83242874 429805333 219288589 739927120 142098159 286565019 12184282 44836362 333010961 938573007 387495807 437980093 111709448 651286598 326154337 866318366 969451543 977677818 96033477 787758797 434999457 806647836 296307389 925007015 675629470 724866653 53184884 546601664 708683155 954202417 242333802 567830434 642387374 669972595 944248453 986704459 487620540 575005598 611026222 641348842 369720387 775113475 640005572 817435492 370797133 708732575 250512837 541709174 892753079 954975510 551055911 557800162 119045922 726943597 861076257 951233791 501457460 530524003 337826152 707364426 305269639 870372964 120064642 829844803 560563852 586399840 929588930 954789444 269071254 992938701 932234953 940450541 946084278 958525423 886976465 928383106 954902135 998459216 286275155 777572927 533867931 751917927 909336268 983390404 557311516 597110734 863788556 976715972 16071723 146081980 772723331 979114924 987365348 989239591 409852528 680532462 805782642 910293142 847132741 887917132 218857418 916338023 219831528 581876657 264141579 486381671 939590403 996588417 592890180 978463255 933232610 951084793 893001552 944641763 498040934 861966877 815257355 990131942 321174158 741538948 191909608 951211552 194130417 527381093 299170022 616608127 101696016 144206393 1708253 317863759 617846633 797444326 602085357 878758013 138329560 737562785 639961497 821342316 826027061 863712183 157642393 359573095 353775780 776232173 368666701 613950612 71568034 251053145 298279808 961092848 320047291 892584917 638961391 899025668 824004020 926578582 208564046 615773962 739346479 918669223 574866097 778196720 521739015 901625780 337575447 428642032 956365705 966120431 637812479 725144538 386818558 847832207 757355842 789843518 151125353 637413988 196615023 362813805 958589936 980371981 383688848 435393044 413590051 559470638 260615726 810411971 940018512 956604184 566923574 881995811 788450967 796085475 723941535 801266940 753399093 949584989 191537723 238264224 965087035 976120342 422123855 912214811 572851943 680350862 464128238 497391819 957084357 965808892 989824256 994838638 659259609 754642361 679599574 848361818 470148958 541958610 813990175 905656980 767517104 986654942 729371178 895373256 923936470 996149299 518028215 996374713 884060972 903216236 115796638 883990524 939098107 950705217 785127206 820424682 237455062 624872215 118079051 961911039 551833352 868491282 921632600 967139250 596288934 693713870 986948703 997186643 252315168 477723433 735521343 755354228 688236585 958673534 689392749 795676494 937525785 967877507 998867380 999548042 177249098 797595929 650192612 727897895 735399065 736526109 713379067 784579396 77609978 181678660 991636074 998277404 443043538 600128339 785414944 827430527 782744740 834742070 140339753 545733127 238949250 833624504 829454687 951028089 987760854 991431803 420374340 436736186 429139256 964593358 134128889 415560576 177546886 307865429 56189418 883770098 576992519 748250735 740983747 952088103 471450591 515870167 128231266 416324793 153103806 534413012 658041649 919948243 748968911 840721095 551243399 733942540 822476547 874518334 648673291 982833892 395294722 554093123 62227955 999600870 757617254 839338536 36572551 636305073 744443706 876968229 954948517 996485640 927357182 979610527 721771680 881673333 278258536 815036912 99470942 724821133 434169323 988333613 796105961 859903690 707657831 938022595 780899577 925740117 988946864 993112542 555324626 846920892 806012122 815873082 941000727 944353101 960888122 961248137 645109690 921953922 259895462 607821518 727759373 837620040 993432930 993619496 449984388 572113901 453362871 885875865 4845407 729440340 434914802 590093896 905220192 959352804 970799078 982360716 389901438 570919825 106234650 579838952 780398097 910427096 426140474 932733135 587617333 989983832 114137142 842834943 366246751 880007300 995430464 999852483 124641361 644586019 75747359 247890043 863640130 925339949 795836307 824497886 658442139 869725870 151406317 186394265 786446646 879896554 579888587 857650621 805656255 934862445 914871590 922160777 694958752 937136687 303839636 483855913 817986912 855131728 172683219 421058593 376370087 841748406 232355211 772510597 730915529 990032997 517786070 797890551 954787496 966726145 234799128 862872232 237466916 795046171 853415399 914164477 336893839 862791010 810655838 961974772 63715145 381123553 46627178 597974757 426102240 884046740 579097607 684670572 163761411 357295747 370787023 663929204 824557529 912670532 634685968 931607079 563545150 851382258 702214762 966434654 519618256 630688098 388082654 584418820 90993115 861851742 394935699 659059027 561796644 658257536 633614426 762030848 506975741 697038716 872866250 934288136 99907421 675268900 565445621 953716416 87909566 866332167 162165256 830978932 440422002 996054731 90930135 402122630 26995748 155659121 921915678 995663055 865417144 877247235 565462118 777357658 854902499 963168686 402126112 560799188 900502677 948979548 134621422 838253828 114890902 844937973 235011520 778458841 672577573 855791753 162812245 558109100 439073430 851499498 661214171 834969801 625102659 771126604 51988947 322122651 790585098 860531925 928523713 972439587 224373597 531394782 212556724 799584192 834251178 843058925 697411675 854762231 667747593 960228041 569822541 658048693 159271167 454344200 522382089 618096691 44681177 346374896 800900142 852485663 843764207 864353314 971141681 975398660 618972665 667245386 116897752 157316231 845387914 908286666 821613100 982685643 72713664 716810524 934668662 954873045 130965091 831530849 642351009 682981074 457706631 481633892 722471066 862717201 482224849 736075764 537547640 650677853 589073219 822220095 97083609 815524462 245210948 701350732 681577397 774528183 967509273 969820575 706492048 745980599 544952903 666451165 633181823 657624388 285239485 570421707 135929284 233277191 619615555 966196582 439249791 595707839 306771811 663942522 474583668 609239870 33418314 100840314 829578982 849204145 466108484 880735108 751213331 904421741 337790667 711704032 691392840 811273076 359617666 768907932 328031982 810999831 416073720 537366530 866378141 991881814 401787703 681424827 357824814 580614090 275155627 581846802 775811410 890499497 606345220 977193047 94157644 619884020 552227805 661950258 424391038 806745417 68893645 139594419 646255379 915949015 195952968 687899967 203823748 235361754 850064516 968194318 67949180 784194539 652936267 655720911 765743145 958496749 595414781 897681898 530117797 924760570 663626703 834194283 105362155 898160983 967607426 973999742 406186297 591064590 442124295 935685888 73294311 550176990 788640628 996812123 710625717 778101237 139849255 506734681 855387132 966449170 211726097 977369024 427546662 655275628 446522509 740263302 434170191 752133796 806365103 929358787 67239176 869076977 868361697 996246644 991207380 995671300 572670705 952352102 570917067 679004583 912930651 962606457 21324257 866884680 821273386 824728779 122390124 439259957 492536742 804101432 963834132 976248013 950841909 963106180 661626439 859270250 110265170 229792585 382687883 592742675 208487103 308015332 847860582 953280812 99216378 967123318 623706349 751601496 65952263 827180979 145889677 255303854 499027320 778397654 952607048 982956186 625763916 656612118 544627645 846415199 530896751 667110100 135403338 271541298 645090145 835932386 315754892 970814966 27971835 40274020 456317460 842177658 988545008 993317320 298361576 505810192 92722625 952035120 912485883 993985166 540005745 737375460 388932392 775890760 772951363 863781023 454072696 931345894 639151428 866724716 628194128 990604073 872009338 909006027 729177004 799204420 637954468 984636011 769633727 817699547 153953548 853297497 305174726 500230192 824421671 958696036 935301567 997563414 625790855 962092425 858309229 926313470 755509868 887861856 912555875 990522601 123937524 222093238 171287781 681506606 613974126 748279245 724390707 818634507 178209766 301682369 923937633 933820297 833179479 889127461 771758028 933242783 663954715 765971767 829251692 979871462 371062424 981207382 288053870 434611124 181348869 695613311 560469201 698065424 957438052 986614913 815629490 896860382 75316069 794941263 607448193 839983075 374062052 999140551 869334610 949162949 622912357 751399032 722967126 807671700 847255536 984044393 250579575 833959702 840156811 916639722 379917570 732613785 675441159 789717702 222437515 962383272 667536001 859224827 346954806 684631622 738911362 742608419 886387802 986323163 385101620 929979954 311855261 353684628 858071831 917837665 471034519 977992286 42957812 537610115 388300302 792987238 619599071 913839534 500862520 661065041 622067178 660229750 106934319 911169034 931358666 994268558 190265874 507041102 535555292 898415752 991676368 995904820 381781456 772439543 685848224 773272929 669017773 836673839 341571608 652783809 865444547 888920621 46086892 850892075 77374873 862920967 13144954 278997394 888306790 951165866 943957575 965583313 776918471 876140021 866985071 987063319 332157049 939161340 335980997 804918201 301906832 419063796 902311112 913555214 474360964 481417103 95188690 153936543 393675082 498929587 114431663 798981153 298271386 906354026 815221055 818582362 489691946 943767100 283249960 297742542 458180951 466719080 648737621 981188984 311629313 851614701 87127465 457349550 496203540 526011046 664550730 944976008 188737505 620223298 515468343 934346099 241264724 557246932 534551282 537676416 328911151 422314321 145252285 148455527 25863990 652694617 816607119 987722722 566191447 589876161 214499887 226483608 900658237 922835437 96078366 430993865 792279531 924524868 636787509 916855680 654665141 992406662 349496305 365276666 133438861 328566096 431614937 926934197 301705069 329306251 446638134 794428636 937745534 964210012 264939522 490521729 588313266 999577119 767865717 796858589 189295935 526497353 937358934 976200004 253419053 882979725 709730526 748501015 320091328 593538336 589932554 734354238 289464567 749504625 447473745 902550155 416926157 527664942 931323014 935761389 945084483 969519997 438977795 976482007 76028203 171836462 86935671 406206801 543082837 850963850 537287298 701142868 402170529 750965836 418510595 524795285 192204748 862042391 379035294 658240556 778276603 904532437 781607989 933089339 801289288 978579525 252419159 579168085 565514433 593287378 209010049 480219256 501424290 823766768 856917676 861004225 450305003 770289866 224207423 648188100 10013689 382468839 373740972 797266925 452896374 534571438 171186147 350842849 361969283 878489949 720996961 812211109 488339512 904306391 577717993 822010617 725268507 947688582 496416467 828385511 342026891 505943530 668609295 917506611 96886997 254337719 857039898 920333225 273103213 817997433 926555080 941211127 217172955 731074110 408668626 935440161 674649578 836576061 237628900 969887344 439985930 732614627 831276968 950622984 489886527 944062405 278732811 443949714 463031958 729801796 881032108 957522735 908799694 967798959 78862827 250999190 351566918 978217658 417162410 859608809 415044153 725089542 312867332 313571339 563452581 998773095 934503725 968635743 382109728 483803692 172328623 699933266 437127865 975731230 544613343 978032709 703116785 851435782 104822300 313986324 283255483 710512721 289277683 676651676 148966153 948811394 724714296 923975938 798070252 882698288 64325233 69941467 27259249 448101723 760696409 760710118 192027189 377180588 173391934 963928571 949608091 972420899 846510416 943152262 294378689 622416639 911179920 975988313 173106168 837641343 594452942 817785740 678578486 834621219 341315222 794474136 587942018 679916833 168502504 986806729 500583703 934387558 206480809 800893393 31390084 691565976 713541561 932693311 722292495 956973511 571727439 799072498 442115672 841358159 491438957 890751761 84865698 456179792 838815515 939771589 471128451 846212051 32097601 304373720 434807394 578199352 76088379 475262872 387611778 425589766 638292016 691318334 681018251 982437133 477120182 770048086 383587161 784025467 742787930 816291078 847024715 891478753 969735383 995944952 181438842 738037821 495972839 556364502 631324006 985941531 209501468 831674549 86315467 713785160 488571944 968858561 211528040 411236407 472543536 779560974 9354909 288222114 281340269 331090415 778565871 948012804 242403425 967310722 60466420 151659178 667748454 943807372 522939810 662785342 928129152 966095897 23432801 750758133 270408909 832090563 732455981 832423878 341222277 855077180 36661534 686123491 632989495 823024697 273455394 817805248 869111670 919557630 780962716 852718859 340665145 664385464 766619891 958032020 602531373 853375054 246500972 336041053 580287523 765728226 341481049 815664594 658696151 915264916 781716222 872426229 862111523 915683644 784076231 789198036 181231371 591520686 304524726 695422658 389421996 566292738 983441669 983868068 15877376 874533806 448806181 765095864 277902439 736541709 837139866 858290754 73049623 97674378 733361812 833361360 528669790 873877620 287987979 753213231 541732604 628532598 880481879 957391097 141588838 388590135 734117888 929894674 742672618 901845246 446569110 628985380 733950982 821185157 787383580 887865120 413104616 992009467 185150350 923698823 939238995 951944712 730447611 990566647 436481147 848214358 408015167 827515240 893937048 990184118 251661266 600390180 813700261 847817349 456225660 890552665 736518373 802168752 336344475 439333333 212742869 775441518 33100887 224785053 553071982 864435555 456952658 815560698 245107808 765752038 566661428 750214912 684190836 770545755 694145940 838261873 475822213 499375411 77471628 908187420 611766438 870217177 748611421 889266726 982361174 996300391 115432760 211548670 282546532 541334917 639027817 991574193 211028806 959747556 852821409 982824049 575569993 707788519 275706490 926726000 121405957 550422852 868984988 987299366 714617364 732932904 483027381 908345388 623159540 691959655 720405805 988775079 885450067 962432746 673807578 830284732 451393282 956034628 990329892 990919110 764005792 965975631 116617984 953963138 535741851 733954106 648869519 760308439 231869166 490360161 740787421 752682700 396490186 585798907 82469499 663117244 111202469 126378848 721389428 863216936 958861610 959556199 527242566 652716079 887246331 921325694 830804019 886340018 441734815 553737093 313460298 759098553 674234941 876491342 752432480 837636296 480732465 843073168 291074598 363283112 230625721 239600124 390470126 462303009 804598798 924278960 550896763 682000001 258152909 572554499 46000574 191746654 409381666 758274174 439596695 964444376 970744168 984265819 416260373 823271620 934919455 942395703 724217331 809311425 696533887 814460842 927014911 984239081 298419926 437093612 855290333 887199889 370682851 560013107 442841493 781364854 894922052 972574761 873986143 985664037 925755978 929871948 479695022 640731571 435746211 478604411 463528984 566829159 902992236 927243667 774210367 867986894 658871474 991768962 181522402 957640488 229926138 623587591 988674053 998848940 534945462 660302225 248117212 354771613 907682404 956223531 410574364 697324839 362295887 992985580 82381558 144054240 590793668 910859016 279321152 776368425 987517625 994650197 267672466 372546990 929862143 980206516 333150992 721586695 489837174 525168842 106511305 998910875 231883683 260125351 991268933 998759663 751569075 825549375 700801916 915226115 172941957 343006692 947523409 995447620 730273545 865840957 371577090 737651120 261147918 940596075 252363852 552760540 730095019 756126598 335718607 798040612 916262571 924249746 982811008 989395733 825674333 843531712 311242092 893273061 707878522 778385551 365283507 838757204 469975721 834964899 372266804 569699269 651041515 920869047 649294616 928841774 158934285 203220020 547011076 838298323 586729534 913750175 491028449 672278031 435405166 880779695 285113030 805419383 716785261 967834110 909406142 945870813 403949526 639892563 186852614 518983476 711268705 886231979 141911743 648616556 197894447 357188656 537728744 677175619 215601781 419629380 905485674 970645030 750158489 949429833 418292930 846793868 669635154 816198334 628296431 829499568 796913704 869123944 615460647 822505927 65513289 255792069 551757594 850631642 340097578 496202474 752573103 880259025 472850909 834711750 348491011 584632834 190112795 515540546 508575893 688715319 727273009 775720496 219732637 662113592 379261942 715924593 745643960 993096626 136679337 805446963 636704452 799530833 771869652 922417594 188371778 269130590 538711444 540566469 507258350 724724477 306753535 837355195 701865689 931683232 31231338 121771225 748491274 982454412 634645645 822100697 900059094 906639324 339576133 648692474 943121140 984220259 783456288 853155776 831660001 863855766 586536039 673928455 215355355 550857618 454115553 810055910 421032883 691788512 732850571 740724336 743227707 803539419 799915340 842706414 740481412 982119213 792204546 911493834 462789873 802403654 939325478 947394654 696463127 730039076 844456934 962133618 798658420 995154700 250911268 765903472 75929422 710984118 42851868 934363484 878240728 978854344 634860291 923960626 639609167 698957934 787857621 883680447 3909800 428580439 575226542 694972328 117194198 961108141 859109676 869895084 194585835 943377390 63227643 79814716 741934245 900676488 551563960 729705146 468633754 981735350 340380637 847663288 965357149 975082279 6872679 250223756 665801953 822706016 185930543 688290948 59691666 865443410 294607865 328167373 374475519 980318647 34742712 982749896 863656831 950758490 345835557 733497305 942698274 945029785 10833943 221845985 227314077 720680125 750068493 845506957 558273608 563215631 440865244 937541763 936923966 994211758 358640655 460248614 133773981 675292830 403868036 943801230 451011537 969593367 887414922 945967589 371495693 758581694 463878960 994826427 729883876 811911129 224936326 846522089 206218879 228269861 14837925 166340847 284744788 929203469 347864210 391536897 632517166 836899108 244196699 462181805 246312061 738680422 416474992 736015234 348156401 514029210 909465544 969037018 12690586 754867401 326123271 980996881 585210254 845446771 899991073 999739505 158781947 558867866 401921136 563546112 552866716 843759793 956934225 960428911 904744358 948465413 786789567 841984477 534786832 810726274 338989053 896408086 811851223 960012208 87887607 834284274 24180938 297118837 445429289 725283382 718684945 793612735 714468853 732053792 593931057 755136200 126940673 680182919 87371192 199056818 461097332 799005942 325395938 368414220 290947065 849162354 980981019 990969588 624674433 838470420 720313050 975861949 960813567 966024311 973918954 977688600 244768302 899047559 37965065 834392084 966773104 988035859 691194276 787653883 539642026 999580349 289956835 297885014 342391137 625660595 553782077 579987308 813040787 913430838 148740193 983964564 999426224 999546106 948300137 981475319 344399423 587192328 822404091 932006728 658575476 904624356 70130207 264920125 136918670 464505931 168661303 561762940 362655176 501707325 375954524 594712054 935113668 976156475 877051248 894051747 438276319 779432057 451078778 925516438 648877941 962708214 482584406 486238531 500679932 983722633 299581371 370044862 909112724 939768805 754708184 882611560 29512039 532106473 695424296 727144236 124137477 933227521 157793531 564263861 656249162 924895524 118419868 629055822 558732257 799330444 295499999 673355280 802830233 900730535 804847326 862279121 273534671 650125395 182951549 886253686 789408952 864275934 2721172 422590163 657929877 862313469 705259603 763645234 485097365 891021619 39945573 823264385 451841997 461978538 144857697 856981604 379069304 664033567 265802679 785942024 242422045 838319196 662664052 979514277 450253453 832832313 554615596 718610251 299413578 733632297 24791216 170688039 242859901 934855023 837310876 863361947 353377308 430709580 451728478 502156605 917815209 974323060 686484674 932716999 494303994 745175927 776180001 836720400 468336118 629925359 15217169 660859828 963398272 994669849 638771588 830424976 400653611 864557650 308277662 567474572 601653907 989469934 778592642 899295260 694932509 877505840 921568579 935932282 220449753 468049343 262133241 784165372 467292842 656939586 346628023 369238380 84293714 595464024 409454105 905923815 441743546 753397645 662884574 860109766 275948574 629978485 754183105 826620360 226740736 887620651 266324463 839365936 958850702 969911407 770194682 780269681 458343356 615599694 568127078 588153115 761165580 804577719 177700150 389787540 144688054 196520091 723326058 751745515 311674851 390631246 866545691 944873186 980271917 991319955 972767291 981673642 947606981 960095222 354107320 708413051 58684826 550121493 277300885 826528711 802715556 886146128 130688705 683267285 363672291 518021581 229366837 823217588 29564256 130538578 984087243 987667155 716433393 773759442 847885155 906654949 777404685 841418046 988760586 989779464 164869724 798988036 263624011 483201611 369713910 560143315 520658599 797538255 463164005 800270414 384809157 701971281 542517405 656763076 181770395 492118655 278522343 316217945 422084986 473020853 706475331 803242901 990600027 999078668 559963721 611121395 994788040 997333445 204667761 915683727 846410977 887080112 289607162 757700048 422787707 584056532 620514813 643318563 757336955 815487959 146327672 850290312 749794502 885262952 845037859 977843201 133826602 399701978 451306365 566991316 965598927 970958949 43066686 447076095 989315648 997772635 612561071 865060851 543830493 622375483 187913946 625655683 39236804 511152664 30779216 892606245 265672575 840787190 689709870 825673458 701273152 826094883 702383530 919889640 99581574 633104300 589257749 920983106 952089165 963383552 769431700 921119563 714136090 862107971 563180212 836049003 180262388 696623627 406590224 578312867 327686524 959269640 789805927 886712637 808067738 959411277 337091854 649766873 4320185 184102565 650986858 981055852 456293207 657909021 231937720 616881971 484229708 910977189 822133937 927310376 65307861 623194365 418815091 998652718 785497623 900749345 139756892 385738120 791340816 989562313 421135608 496334524 121752756 849573326 748159987 882595846 233386625 756739624 5663871 184648013 312894801 806359955 217650758 983955911 371350925 687812919 153530619 647481113 240415795 608600581 972526287 995286560 139902946 673091372 925130534 956796929 180516800 443725669 478470657 996374993 30056308 130626349 146617641 493857465 528039143 836615682 469922250 611275871 543898586 885132369 682237104 928160143 577768298 823256652 296898607 715502499 994084702 995197628 975034723 991010451 454714041 924062446 796306485 888663202 109000413 775559518 499632222 904324394 349889551 571378266 489289793 955166223 147241741 774441407 938860228 992015924 696341725 844872009 483611293 644369280 784155033 875200198 697729933 925087397 808529139 947372718 128789934 624926951 910153652 970309088 242177577 485175068 153124002 737538094 806199242 884474229 540387158 751994399 514178553 703536684 378943145 566930967 219459071 354404339 671515740 831081496 968772873 991227714 971127915 979106821 718083179 988198778 375293492 744555933 536610966 923746173 110788085 933456298 646882570 990385333 517627653 879715902 803705271 870953256 933355879 985360958 248290954 483536368 695479866 731757711 64156160 68932414 332567123 873280592 353353209 751691308 240899401 633311054 722180027 926260883 21480816 398146475 134944033 319512677 906904072 933212470 356286315 951180096 57474079 740723408 819306619 983297303 871172369 982643811 752632462 974348205 553973799 624152325 706432854 955589463 894338968 977516500 753633092 769185032 682310733 792633366 249598597 253410441 561768571 990711536 565881145 930977581 303763661 393907810 85413529 640001233 64546658 154191701 958660063 963697581 758092012 836573278 455616925 704428208 899965660 924491608 229613705 326127069 444763585 952131197 252695941 766409086 512230328 726261422 190982457 658016883 737681479 870332637 12190231 89667478 887878002 919782012 854095078 924233908 25941134 851714878 345047265 680728682 282671120 629875024 798801044 851287955 145901585 180705912 461535529 468180792 355255175 548681104 242354204 645215493 448375196 965805596 492916016 698762623 969041103 980004104 91152635 670720470 168635074 465472338 820929440 867709204 848198816 986737994 83584448 342573665 64932007 312646882 400359866 408181787 445720338 885159147 910772012 960307213 412040031 421630567 654114553 676514058 715800409 891669760 770943044 904195099 273336965 325304906 993272320 995931244 477348447 992327208 724744581 931120431 626966467 770251285 360689066 847565291 51911674 271169998 17368694 523905975 741713213 902581519 175992956 546928481 346913969 348241772 726540413 777773093 668785538 840296241 862648669 929476446 417857626 447749731 476518415 767767175 451853898 901669337 109790986 601771035 963178009 975398670 926567645 988318013 762858020 906515817 403950873 795032540 843556382 977391801 56335313 702697518 524825326 910132455 570550857 850955176 425109701 549489845 711575424 877440459 953535902 987074891 315122462 461254954 617295110 933855646 834826376 962687588 818725192 972889975 931247489 952102000 151591229 982062495 522831085 979986027 42514316 634093038 316053494 514224710 352818941 743560835 363407015 855549684 523255359 995284993 963234501 991950412 436406178 484697376 739672913 897956953 937392429 984954907 690643487 967567643 45258939 160943576 408001140 759850880 203212852 956497547 556326018 765597427 919344345 941338655 241323363 455891011 379410706 757328820 182825661 615080665 291544061 894736719 71973539 599964654 405510996 515844278 335757302 588338334 272310631 559824851 617614727 694214836 360939139 786138611 834828801 953453643 527162857 760699577 345307166 614337921 99342148 624646079 62385905 542475810 475371126 945972638 249476902 298872276 95481997 539714407 180676148 369628674 667501744 825750387 708388579 947168021 13269669 828695632 990511325 992228139 109561630 356051081 682593093 689041050 478706403 548889232 464415357 852908454 67817292 197581375 192079019 862910615 837401776 975196903 228543189 584732542 875798009 902759427 850539097 908699810 727777823 811958982 390081466 747043041 610514779 700436359 593879931 708199006 532314619 610452424 417440000 671171634 833692795 941765579 74526910 729892826 33434312 656221129 422993887 591834322 762678466 859803903 248884842 328706332 175553916 955206691 917402168 960776644 793997081 971234912 872688331 912299499 446956206 464039660 84565334 767785257 226131171 659626256 277571928 851350548 583062394 719071586 66727848 991367223 155988731 499665070 30180513 384202725 447474808 919110498 972082861 986325437 182392355 694183623 713805545 922998236 212914834 696490423 797712946 937857912 589128973 895494932 66369179 255313002 369237765 644609860 797724034 896391149 360235664 845333177 783516983 888526654 144077795 730437556 385710129 852245950 719335190 962105747 437201544 571631607 473109702 475675523 465111721 919975059 775923990 998361484 2788607 951586949 359742370 991459647 643522225 930131538 121972322 966269903 555607565 640649593 142676972 974931271 346610683 625865318 372060608 671782149 341924626 593298928 562711630 725035814 221579003 897062269 846037623 924605362 830387583 834592141 373349204 488824553 80579924 884394815 481318177 525089245 985966411 993768523 711095102 781702973 181855553 412217599 150032914 335011153 766837796 842414927 130486346 951632698 47523215 71862473 444444256 569234691 124974525 167676306 548904424 638493344 905126178 951685644 267777611 630660330 208228931 733597069 534131051 571403418 223235469 386150807 743815565 764329112 96456271 767171640 878480948 945307501 68608504 375325814 867126273 883489887 317817106 684282082 448251178 597873154 952118264 970563888 686759189 746577662 997536763 998964942 926750540 975718355 461726625 778995630 246431150 591539195 529594811 890347663 83479973 930811013 387731699 699409714 442032396 444833515 687259678 785326999 883791938 983771577 584284674 928642863 562036370 904750923 483386861 518383382 424579954 654595702 515703451 863713120 372161816 884734743 11214850 563520545 78888607 495973575 533317652 642662524 592428307 758540695 751439535 956860750 162588835 205663078 694629424 936284906 776710933 972506950 539365847 794082598 404295518 808462953 611417818 720779506 399458680 599182888 528634557 672947911 556013919 648828976 57346752 780020183 885377137 933112864 76059287 422608242 53606088 108935610 121639587 387771834 89309097 299007774 100550600 434335325 552725949 990527205 1581024 966971410 430656026 531106645 164642205 526202538 255173367 710594563 978990083 981714527 640279409 817330922 271117909 420623071 351003861 527995378 448111893 875101926 112099479 518486442 360269380 795265805 902720433 909619606 421255604 737082769 455110167 635682332 321864566 610029624 152670524 839595884 56336066 169307514 666585035 669856294 551782234 924557384 480664997 856554517 255933490 309750243 923741526 980185854 902363649 910620360 244364644 684355205 132686618 431301565 285164880 618163234 147135090 884632267 643587292 907003494 299200269 802988053 278047934 694398623 572011255 717841302 177699347 410263914 182065729 904348218 17096891 323486618 502251662 898332612 713000841 790609003 545052088 681599357 394469196 625132249 432340617 648448211 536898062 696890946 913299280 934874421 36903973 910873544 162560448 367139676 973486859 997668023 672130520 877366381 303008776 580377892 407117666 793295554 253434523 440693619 569920245 705157625 574238193 747131811 599765322 752459836 380084391 708997416 530969283 860272228 148356962 464285547 324784101 509888141 473171843 589596425 897771207 976465238 250434588 308410024 291340643 819192233 424220455 986969040 942358735 947451517 380099730 771828333 774375688 964101566 322070044 423652421 682565030 936505441 73356561 891932533 300704316 977867388 321022656 778819320 842655860 851343060 461499521 650219466 953882026 987623215 335357086 532724792 599569487 859812494 642612984 914032693 534792622 647002543 785749988 788870246 180636205 717748645 487547761 816789062 753833168 964530821 880385782 939853615 127726834 604616752 773715331 792690967 930509034 964128027 326178383 614760362 866482898 989607060 225254893 513559571 289164303 589104127 538838457 606992557 869291607 898377744 814234689 850674598 173954972 587772657 363656475 635963887 132151165 422911239 583139255 801366722 55496557 167553228 845056204 933635795 259600644 822622653 282901385 445208410 340034298 518359524 368296716 497306432 612979099 907376078 684189928 981557014 431134791 806418722 633235062 912195995 320237050 634757514 123980352 759681855 610975423 674870146 740295107 869265922 617370497 659334850 158592625 542576285 236592754 351312623 951548051 974302415 979248881 985035509 462511754 496860912 428460436 673548119 150440663 897729314 259195162 759921011 657607653 829141389 580376242 644685786 114612479 448105753 33040736 814732196 918341006 974429100 823237059 992563197 943800681 996049036 71052391 182661929 144512142 658822790 778309529 780502562 655541267 899129163 801692156 930380944 502317557 781563646 934549557 958744642 968424238 970029974 119288524 130196785 429662097 799680491 697250870 903302485 901448897 926307113 354676209 655548049 942111386 951897210 850776393 936343813 271360066 496352704 486880127 504415397 9422942 176734104 696118214 909149650 507548125 539992918 301153606 968012146 626685784 638795661 455822577 751341838 947388970 981722778 864331879 884572257 395877222 514291659 101865371 807014462 384830104 782926298 784012791 953275281 984135211 999542838 497682750 847917217 239710800 915094077 930761837 933574609 273274382 816880678 682423063 703132952 492579913 544172187 844674830 862030129 425895107 546218612 737630807 976557781 663471496 740612503 614440434 691043703 77541553 728056116 469610694 638415399 786910443 892369596 795140929 795856822 622775474 779980611 481322807 832730605 457149635 927327856 624568414 819426290 775681030 924773589 276211852 613541177 282001118 778022429 714728359 751579395 662252926 742429598 849561336 948686640 353227813 405569328 870243785 898915724 586871608 858101377 334065386 537828232 386477860 633035119 653763787 714628440 68890856 120987675 697166189 765321372 257900304 423096468 825940862 848235480 196220464 571779207 642670041 922656072 805641978 987858578 709304864 840294257 537364899 831677522 651726720 702193474 270616289 704692446 851865331 960866549 470915486 753023751 165147850 845274697 420224397 881655867 479700155 566405085 572179792 752929669 414839187 502809580 649091905 806830667 673164807 975680586 671379297 805150085 28007404 238810465 524885986 896381576 112690011 879031489 133542164 929483916 724963540 985167399 475911745 785365218 607933754 872729122 926919474 991704514 918987022 948414274 415151632 811806348 417043370 426724577 69438646 72467088 443334684 769550313 434813248 710719202 163963359 707098908 23636921 475649287 2844865 999806232 685343650 696456788 717157625 862329161 784578714 896257868 237091293 507437422 907025605 990049431 966243313 981457529 370343409 563651334 224478038 526922785 606311065 949152177 676366319 686883512 179827888 405164492 212927795 385784785 335449057 874539601 675997841 904778509 829548101 863536999 522312147 916103664 986212786 989688503 353827391 543880229 808669311 966880832 316906566 469833304 647787443 783347729 483841789 792868847 103658743 836358941 39023378 612471486 837315307 935707792 925399386 930935792 864035116 948614399 959180057 965268343 693944942 903554396 643843118 974720760 231239868 964163308 741840692 919993435 719086475 821330361 325733203 338495501 450055013 510804602 123215101 164762758 442486803 728197345 951646325 953703154 568595732 697546132 508179929 992760797 796616722 997817673 827684316 924602972 296421642 700209511 98115637 879410148 253021750 572116502 415993814 485502558 435987348 480395022 429181388 761720202 387173990 975286160 331024215 784127494 222283979 270821039 68093452 266762694 57075743 867597217 746791 479384250 186674058 202503543 254292560 827359623 323465179 745770883 146492430 512430050 281475660 596970551 960382403 984682289 454976750 682417719 602202493 772506360 266638975 631749450 112719412 253978784 570917775 722165869 55795231 184102405 821500868 925785005 504960232 895431046 751576806 848584506 751069091 753311078 686036465 851538553 597955742 807238852 705079739 858105654 713527439 878702364 527454446 739755309 654100100 811446181 90748564 849944092 488429085 903400862 260654987 969876160 740346326 744819603 317768824 758530613 493298286 497159919 626171642 962996226 464331027 837856725 458197679 858901321 131449315 986974664 501412159 577112374 389105524 816421020 939403491 962438005 951531643 980238580 586489335 725842994 575869359 939066239 436914399 461545758 577918917 760874504 965074948 989696073 726952819 829732264 485383243 768224184 506271307 828581631 815418632 956249443 158831867 951372593 474152717 672836367 883641391 907558353 854006495 880775319 615421531 989598909 607825469 943701080 626165498 630652646 318246043 897827550 439611114 536114480 127963913 577103317 333181676 917967119 13333266 587893038 322108582 799470056 472484220 892041189 868844127 996402827 638545810 829322484 310502527 581383861 498316435 771301459 236108160 859856410 345855924 478540102 731448086 898597026 989218369 992652670 261524621 795305932 140355234 528671211 35821612 39783869 946593934 947575049 620230195 999388518 121307575 788907695 8779580 570323679 535592419 939365141 538800422 709315168 722285609 844796152 952736286 990642873 862365546 891356712 654973284 682692680 923657346 996448797 789411759 837768326 95919488 695736932 86825782 397133759 398136356 852722689 325852254 611239664 654949213 774220574 918075914 997727228 326037405 920254942 304350146 909214924 916100913 983497977 961925171 970823790 883585938 996025991 197769601 267117569 459313364 704638693 316773863 794030508 640395668 698165885 167164393 540418750 305081134 412980589 75949194 96551499 808949618 842514903 118121319 771101501 56122968 777977562 744050324 814735831 110734417 674179082 600907461 875282374 598437134 883407051 456283513 647491894 14958115 580626296 264972466 301074073 371422360 586541722 774400559 800855977 376756210 478155028 597777157 732452063 476085041 613591976 118460284 821754887 294854364 526680183 979758847 991316723 585256028 678196698 392511156 808567919 855954166 887714884 501298493 716974218 681635200 729044536 740430559 768478340 634801593 704896602 732119876 864314517 493449603 931408249 836115178 923531489 526568896 665917237 953132388 982060050 17406275 430492618 319795646 706645974 558560775 672040852 741871920 768784799 981436240 991123570 200053505 328898740 664011002 880777609 75478928 562260707 828835657 930619545 530442992 719954195 906638618 980521956 689518934 839989094 730465734 978267447 793199506 805694863 888723750 927231895 657379905 922992509 306896125 476978782 380221882 812272471 183769000 435975744 730121771 761839073 613177768 786256930 982069065 982301640 932151467 980896299 532414514 963048732 984214385 987274017 524748173 701992641 760064304 902843296 717327660 787903809 308041207 724289658 319785499 603486432 81962447 629799332 791469426 808194911 117437677 439164676 677486589 857825557 682247357 752743964 934180686 953801804 385740652 528831606 488357666 649549740 606390373 662543504 301605930 469745940 930569748 955192209 868899781 896433427 957458279 975855667 186888634 507246501 857866699 860111989 881173078 986907644 215574116 506373158 368082185 742612416 11118321 647614468 512625332 612202724 166800143 600460383 834227579 979640570 493450268 745684052 520719045 911984654 52783306 191200089 941123524 977041135 505446132 899819306 865849890 967582769 73442203 580513907 847309689 929642867 318992302 971078278 838969424 897615905 638639393 769750548 920329139 947736802 141550961 166648054 157372966 914041328 767591792 853415517 790342718 913452971 158402073 564210490 891267892 999536376 662853774 845813352 128589111 532275851 573488354 969234984 428489936 813742687 347785619 422140819 110293153 241391072 597001862 857871691 338491394 464833698 794223944 836000974 451898864 957954871 77703280 438592462 301373384 391852018 462983206 694189147 521394780 885475708 187036083 687766953 500365023 523694206 639124847 765170253 396437643 486177416 184753319 549210282 471496891 784504476 491394741 764302396 589196352 753751798 29348701 938295417 747981717 764185925 808483157 934777863 975711773 986294784 224955963 356624271 550785481 901883004 462214714 982404188 222015183 653099531 608412437 941449521 379325177 920703837 765872148 879337312 182695079 819085062 659114106 803054940 670230435 850760828 434753680 892409026 852710133 945620354 543308868 851409308 636285656 884159456 552618638 898555038 103623487 800816096 305509679 997774035 908041203 939979549 166303794 663607831 132862285 571798986 341049946 726332285 542226875 986629871 907408267 986167200 320803439 674134706 493620803 878085890 810054266 977878251 400451710 570275585 571439120 778555438 163165702 302361997 760826643 987607459 763563074 774336596 743427765 940346351 321388565 441658042 92051994 955959781 353130738 513531750 390340901 856312932 474476404 879284939 557233885 830923253 657897521 849348687 769797555 938511461 762290316 912027301 68415453 609881757 338398892 485572265 430240973 924113456 507819222 880767554 762010639 979630451 60683406 405578622 264222158 567441813 642982956 973973403 393884428 876655702 550008547 779083939 257910199 367416869 756114580 843655832 456965699 958410402 451329778 870449462 688669580 786419114 814584928 911045353 935677821 975284626 228774852 640702800 251738531 556132188 433382528 668548369 482810097 554109365 222541896 935271451 833273450 858844641 140846287 700545417 38930125 247191382 66362095 457442723 108823564 935296108 473915376 836239468 793894286 974997030 943986852 995325637 178251352 525467743 196448517 734784107 106424950 205669683 176432319 849047487 173499758 435025952 225751908 330797328 624155924 706848306 363180246 442148623 966909488 999479402 763455627 976228250 984012376 992676974 585759404 842897188 974092405 993503526 582050186 979540140 287785087 427605021 867973797 980761948 794806513 888242962 188593766 463486679 632858754 827119094 215365832 243201100 566067764 839946331 895660572 958375140 159697264 579278416 671531331 942955144 634981478 979814597 495794089 981100005 711905788 919723791 799023803 805100063 767249387 991305153 537287088 567628602 722996957 897979374 105829634 454540806 519019787 608620661 853032754 951647612 232397524 928662332 64046685 473363771 810681981 846263456 37904909 564670612 272116635 363041758 519296720 981985256 400965486 553713218 484395688 763385097 549757861 570153468 498232277 891214712 965195599 984488099 318036087 548188105 470609896 600908871 595551962 982711296 854134517 939432613 550859035 866644638 571189840 579093868 175090793 226382481 782027594 808680245 640831479 978657265 228636199 908363132 70148362 714684958 247809332 952602514 533842284 753376311 960029962 991342428 198764465 748690576 529383025 778807556 627475733 869887815 238902579 388345595 669985587 840893958 641082398 870468896 47874035 324276056 361508697 716910050 393897783 901240532 537622757 657928323 213516410 744718377 733030242 846348056 646347705 809074956 597349627 972580289 605942635 646888520 974365885 990050633 157621337 782927500 535221075 939451735 595367318 938126659 38248921 90188842 924924271 957817476 963162734 984767134 258968188 288153092 698699237 740828478 512008502 991721022 138127610 940790027 145927375 239141668 243436642 649175793 718656497 835250398 562517715 985092424 460575116 929285884 303780580 995893615 351155045 608263452 590619337 729713672 489514242 826195095 487827487 570569051 64635901 973538911 595349030 599872507 203514647 481905868 547334605 624118672 842452110 986128584 55690708 684215389 63559589 379891592 718498033 835043920 407496801 651766113 57300425 430974540 130435216 527476601 369603164 400224273 446887804 874169975 76218222 459749522 382463327 923163604 424049194 462340956 681020999 774874038 69912736 414705102 322716557 651801346 410357082 562597206 987569455 997234560 168848779 887968089 691265595 720659363 688343843 703355674 569838177 967397351 865618040 973352197 167892461 875827376 978388949 998100586 645213744 665522011 12639280 420611750 212146813 289497100 652134332 985069138 89005087 989870563 436853565 777628153 768830044 821810064 7837477 287962230 279771430 830230635 869295947 899980664 121535657 938289212 420896818 932389797 151894826 209938460 818898232 849628759 241196898 624165707 126007378 428099110 319320296 564464600 316904038 966875896 981804835 988324189 399421283 594192066 232499697 417414639 858548416 928796531 653227975 918413324 203378565 414617990 656764885 813081309 463738200 504419978 723556305 738059441 344217187 957889632 355400785 563684145 821055788 914925787 871832562 944807374 877983606 904365012 383782081 497688401 269955292 857090769 104671264 210817911 686296537 975476946 863861847 922895447 515729126 631220459 525464038 653955828 764884126 849257413 51184217 390742303 467683523 931187397 179091914 977371655 641144536 660302452 957774939 974503054 995987162 998724349 91877004 756001815 964605691 971870031 167666231 333149863 70751965 973939744 256874305 890593102 997633631 998837810 446907335 732858420 406481930 720266109 136969571 561968838 832469991 993605026 160172943 918131673 713316099 884572121 538444672 711216312 473285790 787458900 73706269 465859034 415385999 466026678 659630150 743509698 153401926 161867912 390296438 439687972 671226754 696779045 355933146 731064139 348697407 579960701 417187644 944221682 648674393 895483980 171014077 997734260 778811884 955770143 178142026 231152729 423405404 997224087 331131594 654876981 998628693 998828758 460710431 895052317 445770582 778788975 93652249 599356814 62574736 974036375 502360122 521605111 339867280 436524775 331715688 698957746 964642461 999222176 268321844 713307106 962471536 986086709 619349493 815716663 109047716 168068067 43160965 86212192 540653034 679974262 629371464 982308261 856787962 872599649 374006427 535906372 268151947 539182590 55528820 368750750 379490285 769186043 261358281 418947766 999165119 999847788 364993470 505868075 631243859 972340767 258006509 317826462 227955944 536578117 701529188 918376332 739393819 743399252 710905341 845058395 589906109 775864594 637269131 901974109 162263985 590664804 865757647 921000100 76799544 375288490 531627175 542265072 676184511 805085345 258145468 978706158 164140374 762364660 549445848 975267060 602953594 747302127 278588467 449547694 621063178 712566169 743425626 744276268 192045053 664903108 725616511 828674280 339862289 988084647 72757946 82447605 875448344 883033443 861370251 988512285 897452482 925003836 245060365 459780664 323560503 755525738 901638499 941514923 15322864 404110212 801708801 813035144 367657450 602217484 148507936 785928983 965172157 976703588 368536551 871797102 945159650 954044030 805068747 932506218 765834910 864178376 682943702 866655240 518045230 857785677 56972626 603437482 661224300 669056951 57749318 98985759 722324411 812386673 968097692 974082132 422171248 431515618 137523092 205198089 247798761 879892686 468635193 829226996 659230097 778359258 229058553 670218530 585957564 692194224 93966 748077439 755095350 908432478 869445435 901298095 740489868 913643205 974283734 989888941 717385844 882709831 978444644 987538375 26873918 78274868 498563824 901087099 960377746 968728910 187080021 541049208 58935400 315299429 11292124 677989413 410651717 700851472 801986728 923019349 475203002 993163809 209460522 779853519 67480284 608859829 330170939 461736520 152663151 472154687 49985824 586157108 482841528 583330141 34128493 537704547 204448587 413475149 403022329 633259741 562042538 877763727 214283683 247141122 404218790 492143813 558849326 612414457 927536671 980886138 892426955 972580892 71446122 419460243 707012657 867525221 861910054 928304360 201218664 356175132 62847272 752973330 411732733 763572023 369361045 394143092 404843177 816803638 746801336 970505880 37488016 153469183 126511674 161569164 595010466 864704067 646716945 980988486 880468997 911559897 168181825 734895507 545558627 934142979 649199539 923224772 285332114 600175491 326631801 772453422 811508862 949467732 832023469 977435537 530217698 732829788 358700597 514996694 339824460 569701582 120984867 877101051 22045196 452544965 832276550 964318835 778874046 970909532 800731873 813005590 852869372 871697529 820877330 860664533 773825056 824000533 863080529 974533705 436958910 552101436 854636403 970314051 249559523 999071175 821185949 846790709 288941803 411751863 252017493 320482885 674791668 977436095 740489603 827666885 550336953 919120152 595163544 643009731 497572359 709364660 540958001 927686746 385254010 639332847 385789281 732298181 254497727 988262864 300425689 639220852 408418789 914379481 935921196 938953073 180890599 860498663 734955942 737355551 689615984 835898804 542600630 598179530 358464506 827800569 298253610 579231615 780343358 783562257 887485508 966297855 541444600 966053984 491621788 857814690 805734917 858794265 700505418 820601950 145177818 335994774 768359490 902374879 437673961 782416217 682493215 860852791 982379046 989413605 430804527 536633216 460308718 817916207 279336491 803390797 514918079 557296232 36050964 617991800 727488012 815138421 902312517 985542565 92306159 271820941 386091515 411813896 164764076 542010117 549575536 793187764 318896120 432766547 174179407 509781499 290942287 851794536 849124637 980344271 920148361 961373753 600427259 702972087 963110556 974175193 106173437 835196021 348062980 572650048 732349777 750370322 115110024 226387399 434203670 722486219 938758224 992939060 711785941 846658166 939845116 944496427 576679640 653633334 646798779 993262032 528225303 656555107 444431484 573092673 224612717 299706867 988667432 999143736 487711755 576786482 298414349 591529223 895573957 979417981 173856195 583972064 699818695 700650236 321356582 805003067 793459204 795298733 53876844 668640558 742974195 758372453 812376663 928357211 451055312 850292638 104808819 629023906 429988671 747468363 288297840 479757813 310012360 511703484 529800058 874383409 189781777 342732599 167912745 580178491 350494212 499118239 638087914 653642583 516086807 856578401 767371050 796851521 323601994 668227812 187224014 717379557 246204856 567377520 224427572 308064980 270749016 342300128 330638031 480520919 438246932 673518045 130453611 194084465 709847500 809583736 930774069 956276586 506437368 677701471 431189939 692965989 280432486 323277037 564687953 728981553 198480439 528521134 691164393 713907579 832622983 858264773 540261863 730635343 744909472 790697075 979607665 990030611 217103447 986619874 505002274 746273138 429929670 783012101 433323647 898014901 900543543 986049929 379337210 698535037 292698952 515536815 27343072 879281316 374344944 599560609 619224416 963633944 621809788 718401103 46614966 467047336 620322954 660373462 610528601 846178465 45386896 82990104 164065013 605274149 385066468 972361684 429508793 981764457 329300873 707222306 187197268 982727294 573055750 869920600 403408824 859279990 500064865 810314320 267027682 918307814 639808651 934196547 907106328 970301251 487151832 638158988 100431234 902192688 158627664 591823273 186868813 568977543 580232272 939836754 30786738 417660329 790654204 895393153 743939409 749118052 143740526 248840739 479329198 818971169 456601628 526557386 885022993 946851937 2572122 161977089 795260099 851195275 68913649 263010931 37003715 901246363 255755588 655373780 775498391 813617265 19658071 970371804 293813674 838762771 197261463 962353351 136427929 712097812 101067783 684656588 326999463 572332538 722950080 953410357 798658872 828815317 212674189 452321305 397832681 694870183 124600786 642922604 103938976 919795787 420813397 742684206 809464675 927573150 267114112 863309908 165875157 254274550 3826323 539755160 967032681 968744446 696236050 775951939 957210654 978072292 872313134 985998593 773518940 835081090 325810958 891170787 781304826 926667276 840218068 902440752 85785949 921479586 718265317 816013037 517465854 523793832 615962851 770913625 385300418 429407716 447257442 761057568 388884649 593272199 712677528 943675459 411406335 714854465 547957727 872960437 401419595 689886457 982455115 998872855 913339941 987658198 980317086 994083900 989704035 989832313 480566184 666756026 599074717 923289919 114353115 539949259 242986911 509210681 591544454 965374638 272940902 986829007 964599107 989990017 803742133 982026417 997605792 999879100 90163201 622889480 709923909 853827128 669030224 742237043 864954048 894632288 241449303 749024467 166660300 489665598 182843641 334736741 755788682 800976359 661897060 792630028 816396403 839394706 649635727 888806311 497685190 901202828 86298948 90349175 626523870 954410236 737825081 904949810 357911704 694905937 859938860 948515492 962026624 975487554 990624136 999708077 818788525 902746094 800927527 847406610 546564836 947540966 457632829 884548644 704999913 812139349 209899889 549113141 842345305 913053168 117223150 735523150 217096164 755369555 169734188 177177595 225679738 763363240 889599375 937445671 306603896 317605124 783941475 819472470 328764544 793763966 778845328 810802915 67979795 872301090 926663514 927828256 327015381 731958175 181570100 704983719 268951800 675583321 129337546 897390235 909818614 987308255 635585685 970729393 400248864 715311289 85351802 862815123 198930742 258822112 462575456 585629291 364113962 850204880 346484643 944453772 256623448 995247131 838151001 958028813 172644627 364487440 679098531 893186144 382599324 842637857 368647267 959615255 107348326 595668755 372117540 958595484 973605570 975695906 797651962 925803816 602684377 633817428 165474860 861535996 624251372 786711085 731723176 862171102 899280387 947191274 817808461 928706480 800837411 962382298 530346546 648227945 632845389 930614140 840456672 903658695 459615556 759495815 832749970 994179626 43666578 689838509 404678310 685373738 709951286 779983266 415734924 977569041 157556314 809061021 194961238 700172266 97512331 906662079 928274920 991126115 902197528 919644296 849004723 881830636 229085552 907413869 681097114 877640759 751471104 803701516 776262713 925246654 529836069 670477893 237018456 298475087 786929017 849398565 123684142 577603575 124459106 486253810 153457559 543342945 840494010 998583371 840695675 923284321 484454775 754572512 69700348 524746320 881171709 895575486 967904783 969672913 646128130 701476384 976176440 991749832 679193296 862305460 823532079 860444553 133588292 827290707 569321970 831481687 354154343 708863640 573989052 628029620 123457252 836402116 111917531 447916724 388055403 475576770 370971875 724904914 926159016 950612212 553214964 848166519 114798733 179061455 478403569 759075877 427813025 902573929 301452813 635062547 846856365 862312966 701704474 867617133 390820200 626032181 907093461 955306296 209991000 994839890 803947441 870508571 333248243 735883107 687361930 945452127 299297402 589240925 633381366 776249522 845654957 870471196 212653559 657201321 675159432 931219414 916020486 959133997 524345213 713006033 845667537 983695828 304430103 675948820 650505260 704610198 261242936 287008100 117805115 165858475 747779610 886059586 41978334 804818311 720919253 875633786 758283082 866113090 339318742 341485423 551708265 684572940 805012673 904550810 928612545 970291290 139293146 550894259 878109084 986654066 141714359 408610275 543351748 987678395 674068333 692127126 6878907 544027257 15672901 666016729 685214700 890248743 186658265 724984770 578443291 636788670 359335935 584764031 486007809 651567139 889773873 972745042 528198136 918293154 449887708 682471821 736747970 971194073 240994027 308288680 369512410 418369191 362472006 875325053 247092176 413484300 333572444 397829829 922526697 977800804 534659548 854738385 420238040 843138824 832897810 995749915 211823488 532477771 868663943 916229596 630896691 752807484 286084159 344261437 822896702 862749020 414993454 834998097 324842661 576490164 904114789 992020032 474933289 507510426 558454827 772844162 734856717 993695277 224733191 281588197 468531146 722738519 433461153 641441711 834501023 955049789 546502378 902765057 961720214 981889455 277647760 800698009 381318131 590206945 3491633 132552521 772722452 875475470 56338451 671541095 933472780 984643218 892540867 973747324 35379381 197296149 989276206 992233272 758107286 893310510 228319928 346388185 345489396 816854066 886666355 927562191 132563960 945759323 967555523 969750936 765040479 858461189 17990288 321777983 612519292 677446750 377961351 703181283 211771350 262112659 121543001 226638055 315695744 340512588 779635641 860989977 412504496 770965279 145610278 178438747 478295070 995576921 995418656 997012804 756104232 767808716 419212055 563835966 457340640 799441547 999794220 999814576 585740963 958101997 552810250 668212718 861984284 971829336 248735003 520617363 825799497 926673241 127468084 216594998 227964997 409547549 819898600 995597898 162208586 791724130 211626875 657192259 181306406 992308968 480367057 625787436 50228777 802248128 132976758 863481716 764691901 812215099 440511412 546218681 857423386 884187641 179918770 706139169 75614321 193561361 89858401 865079650 102978620 946293771 496228382 949899997 112440241 258676385 736403549 784745537 386091008 872972388 520303039 699459152 284716502 721510984 101186956 205533546 724867247 904100412 643598140 937098877 968313570 995886951 153950697 738125449 624816356 965484462 611381320 673218504 934035487 938766933 431332171 701188040 40126933 477514781 455093624 645108401 741886917 853431546 642116081 654988756 460026601 585217315 599917797 674338072 777738791 810998557 524195258 768102069 616022544 767595721 625434020 723005817 923955650 942496595 70809685 648457077 703334449 812885781 273989406 313672696 159102248 564376799 606862285 618599640 787532594 870370380 357263770 708393466 649077094 800406271 750837795 982673814 742062514 763623960 744217625 914083969 460837519 708886923 977587470 981861499 622248934 993684222 448827136 544084674 326968810 772049314 302521396 460840322 155515468 178259442 798883096 910826618 526669958 833776715 548859691 897182051 535104460 777065758 296759949 736170335 99327208 869581490 989238141 992701624 398588293 730382855 315920839 979622542 718427553 874731181 275385428 387217593 446681832 905165758 592460196 767899403 412056189 947448204 304416932 341181280 755084347 756436880 899652385 909071323 935712746 956125748 829412771 971195506 296718835 547277065 507128916 722090640 643828047 947038032 894677688 932397063 426273564 975606123 138555948 461857243 982261216 988470732 871218234 898418262 309053493 585143961 967064973 987323346 941458114 956687592 735621657 883871320 54735596 525470785 421607244 441941017 24076231 415292353 942368094 959544649 491814853 808583851 721549096 974863466 19001696 433966820 288199073 983518029 446196546 501055452 896796085 998159926 260114038 895936990 22864300 726862418 984596585 987498789 425564580 669761990 506852757 892521021 179835527 794082281 325330450 454819654 48497761 585398050 509944318 982332274 208009378 967104730 444504495 854234777 613062410 695524731 224763153 778288161 492038496 934424760 676600837 884270095 410194669 799164188 925265494 956983711 340395200 346167753 183411258 903315080 266482550 480925137 374607382 532130287 50363170 868037258 980876949 999511114 567411617 864467267 100237623 313221508 204473113 321888140 978659442 998256117 302277696 649622398 985949375 991607394 601718688 658547859 804258545 886208997 692501799 875552020 372703164 834702453 430017336 437374694 590795762 871050865 969107752 982627288 658755172 710335065 104301591 142451888 439871881 607188168 388901566 527299974 569931807 856319264 251362381 261549002 754823885 968875416 788904457 994548150 409977755 885564717 437162544 565273781 197340896 229865277 485163446 838095546 137538562 489561218 409616645 747406859 703440110 895105652 433328528 775942748 899198247 960647677 307579830 320707725 675802386 826524708 247680187 687224986 964901210 984033641 769861148 898254781 61715930 113260045 763894891 862226894 809489041 818486003 823243011 874745064 556832509 654249521 437638540 860689989 44010599 153022920 802381951 830758716 531452512 931651458 501979281 553261201 308881408 982337403 482270454 781005956 699734608 993821277 313903504 475600138 271780356 697871297 634961594 863044558 783608418 959621933 321032195 418619953 588202754 726729636 232357960 600906329 900350764 913486226 484923069 535563810 897627778 964147017 151871593 385355821 595704375 958881106 890182087 942119040 920145294 956288907 615845625 661695617 300661922 888029562 201387507 226328388 339680882 398559224 342099684 958165142 203999621 985472758 142035186 783965548 957598152 990318566 294934041 759103926 709811301 956739261 257443209 681984311 480590230 883167054 53856314 645427100 824615732 922684782 963087243 970293353 453200639 498721264 634720239 807385415 452535760 485867510 52633737 63221949 230088742 964520454 334576010 407698787 931530970 932805515 219318607 897460297 623952588 765702226 994430253 995638354 705227840 754167538 733173334 913042032 842352692 880800938 677672846 862681847 202358255 403609556 32402427 598990395 777284720 805789339 607295323 751362592 873234073 926275259 538415218 805014286 264321144 825168546 81315907 228288050 602582791 801289702 970354003 995451042 692415348 737808508 645211814 860511781 425017533 711000768 914366301 977752670 943834085 956535674 815486526 856478910 120081420 613194966 823352282 887321057 30738581 498657498 129207638 372337347 38591151 434758959 212348911 482479828 18236214 838982809 266018082 406591955 50893670 446501549 385960096 814533436 872159814 906863982 247452090 622358464 518170698 689618346 375207193 685633360 580471986 810645963 762095757 847661017 178066021 610289722 203612784 955436397 194704387 490709233 625790961 726838559 876966520 974185514 353031976 437683402 633883135 730988255 318453789 427882610 125512203 670784924 365991729 914495471 525941637 597053708 323303722 921600919 237357403 993644347 903417599 919616805 963971935 968927943 147241568 660841561 92962373 314226602 539447191 886111120 921236459 967652598 637510759 691940634 919740384 973517782 776850257 886089297 265542499 755092160 287248646 519518324 721906094 825189252 900620067 929712071 888402259 980281323 459700586 631683253 568617664 633782365 765850641 872698397 609141125 987742919 460167815 580622503 136734029 394705725 443676208 540625127 801434581 801895314 264109877 858519502 46413296 77276395 395632435 881825168 736259789 852410802 804414208 984331818 864800044 976755128 272452831 562695775 155677987 313472978 702547542 988818611 91575590 118101375 942104023 958990734 886945494 909644070 309339043 777814884 187744482 193908280 251351507 355953324 882529499 980788884 70368356 398103615 526463238 626830724 724169040 796028799 477105667 875570529 284023755 938593512 822258375 854530763 447449751 590788147 303366643 687165440 241031008 888507296 641791094 668598421 558357941 686522095 403184995 615819387 459426758 546229284 889871796 913629079 144380475 614214827 877027636 993815055 421996535 883139045 10184662 340343445 439168925 963488389 651866661 962758387 707389243 843934057 763492118 870321907 513352742 940626286 519363906 938797395 982547614 994640894 861616706 890728705 203842235 528902187 945490606 995726691 825298946 884649068 764616776 903765183 707662607 778936420 957937340 996576717 38414109 402734167 323365375 874869021 118943948 524899181 469507016 472110339 457879832 807479304 192133760 317520843 710647599 806676258 842259764 920516032 93858938 941331377 389684039 698439076 307333710 430210518 478400852 478986933 309626513 950625462 413544375 595620362 986993604 991918014 684175812 730625370 716302023 792709378 933756927 966853034 790659179 806457073 712351519 811887042 886350222 906830895 298214638 493715425 436633437 932564820 220299731 577238602 793653441 884755855 496080877 982409161 624413837 768208861 87877297 526181007 16903991 807126004 384715396 665566785 626312032 900467822 526245234 946363911 108352867 282767111 760265955 842883627 810589633 895777934 784305295 922769122 807811716 974443167 374984268 808655220 931349497 953455436 620304900 799770169 212951883 439064430 459929201 833789298 77598213 715713691 663305137 755933348 667958146 688522026 966988525 998298462 821077349 963871091 899523199 939267482 387620453 755014064 660119601 668880670 297543338 346438342 262294248 412943674 40960240 168359483 732861629 856196568 535781252 776682152 845195241 987959933 398523251 638183980 29498266 376127463 881609822 957209531 697583970 700493610 188164826 776537098 820688093 864428634 807577987 907082243 199273278 335300857 558147128 588258269 669234908 815856721 552301662 822862704 493104358 774019148 560425689 844367832 658110068 898636349 176817192 798605348 289687985 913864083 747843350 815549423 311070826 492234084 726368358 984111851 853839707 915404980 930503658 971892124 989064021 994661849 260550284 370319477 791411476 898485197 41937991 378994070 568545829 886254552 836116636 866437313 312399926 963236271 654489392 748631817 441392200 559893838 590334069 788915040 838862462 854339701 946544948 951495071 927021676 951169115 694798587 788598930 469392591 569969820 157393231 824319612 724468314 812604224 494891201 842065338 989547876 995511859 692506543 842945804 869617675 924086425 527584342 566929650 460659036 485664889 284535592 602165350 577435089 872992085 211466434 311967164 559826079 872048097 241176341 400447285 361926517 891039344 539986375 758675119 919889622 920523243 438249190 634128269 633533645 771158652 425480297 648335822 688227801 987775086 890436582 938978695 826741772 964781375 907501783 924709666 681186798 904344797 524885839 838254070 469413298 806943863 794559065 985700943 880763944 909686684 67642591 904843882 391865690 657730469 945434157 976759843 689766181 716405870 615207569 658676484 10572333 742615062 977077358 988856212 559054168 903165757 124018111 523925894 398824090 779307508 675444568 845941155 823582237 874422151 791906003 968072863 31386937 283251439 999676284 999685738 193062527 638398080 985908476 988695521 250688633 418891501 472841476 549242177 358476529 893787735 571794082 762829462 323009844 947706443 732967653 921592511 750904650 842879693 55770026 691855908 535126764 824171763 267208797 759625425 137364497 952009081 100223301 417320931 182261831 731989601 652258259 746618452 63798920 493336478 919238453 924553525 866357254 875278761 979141514 995114862 323934446 505516202 98303687 651326446 956286484 959349718 186150473 408125560 946700971 988025793 673717104 761182760 972557814 999567052 801464915 829234022 922436512 952627671 167302579 302009797 285935838 789070612 163715077 432138648 229445785 655944255 480248707 939358480 123166209 128616813 351219839 857444136 55821319 143687602 397263651 427597713 679426831 757229539 421200303 484315296 631523107 652384183 202867742 961225729 93788033 948421652 67219076 938846596 148022453 289379973 299423054 530964225 964786040 969080386 404439506 436338444 959907708 963235736 447416010 665638357 811379542 839130655 126831436 328558510 973355144 985880150 928186478 934662474 211795248 763753343 243670815 301686268 431254065 859807769 206527437 824448970 286638459 563902040 594810801 749412840 946321693 978738283 513600614 724288043 121294091 875515280 637752318 780125755 701986153 865859983 118010742 438728069 254441213 671289731 230152357 934538689 560818831 704695344 821091847 883313899 6493570 838342000 890045633 909155328 736164732 737236522 862102011 973025157 538572388 964838552 794804275 963166361 858000526 915618708 953540412 963419482 169890983 300758749 360078999 592381939 467940456 807599782 263807552 753916957 994763318 994944029 432184820 951400864 964961193 996084239 989620597 998742101 94227023 547034144 317695765 710520750 16549567 165073497 273211142 429068394 193489201 686198101 707040872 817552185 112981687 720419008 87070619 317656051 921135401 946823295 86280434 534403911 819562532 847852348 252028973 459698236 413953300 976800178 686325400 706090652 567147741 911722418 695607468 964462885 500943926 820495485 445237605 485280015 20971211 608176270 183648570 322007470 431682198 799157751 769675189 934669167 520422159 938261829 539286824 852990487 376663558 462591172 534218303 591937828 624610995 958433048 876929483 927047472 943773950 996958973 971043659 987325126 209184175 459814498 58263200 672701905 326135686 677954852 968851704 983167097 830506890 992190513 759449594 790444891 781037650 938644653 460955501 799270333 794309187 864030925 436381129 977921433 582360223 754491417 289815481 463911379 861788465 999578842 539934334 617443389 198296923 714705296 534840591 561698206 989355378 991084253 743376284 832200819 589517894 934190440 641133518 652784512 942343003 981048222 272611531 783975137 518023170 605169822 772482576 827398754 808378694 831747425 346386099 844137080 72163238 241212605 242937534 514532890 865527134 956918808 920924899 985036911 813485426 878701879 213358913 334579997 925981854 983971183 423605145 640529243 311932889 372819298 11820435 629464537 729645097 883165992 584738659 839035852 575386239 838195811 221170219 569227068 541754524 707204559 158483484 777799028 749318216 985451659 566799865 848900396 741981160 805808464 909710599 959984086 704281368 714708277 520199263 548439874 812129540 831978133 223185448 565242459 200661948 732932567 833201684 915638867 634552072 702758061 250047753 747805500 9792042 952086041 821830239 973905097 112201973 882423032 285465074 540086733 201488849 991107081 236752349 275014064 110370222 579416988 31588832 887972232 848579272 861621677 408703534 738059962 185705637 187186105 56653064 897367204 237763504 698559104 111610946 249737492 773987563 800360664 387394957 880495244 916455516 963220655 992902562 999057172 364862326 863640761 327774139 546964391 345229717 807179530 545604430 987224269 129313181 969954534 589946858 829922271 443541173 857638861 763705410 875680398 11368342 815481732 308793179 588828420 882739873 946006314 229677049 262168261 421592031 979301273 777282247 818016200 574652319 936579381 948032699 988466458 96841784 831189509 4079702 20475516 250610964 758936137 871580450 925373317 797367909 944226433 576846172 955978629 143605174 726445326 429072057 762719749 323963682 440045598 159349898 987594746 488834463 943872117 601154770 707498772 42757863 716310891 82641269 665809896 967765353 975266771 390627501 970725786 253561270 701643695 478580281 784425286 878759233 895085690 840682507 862840918 829966133 857915467 571944513 826616930 905618121 924237529 95343441 966707181 946741703 984801876 772939760 777300587 872723725 946135556 960130369 974647051 558582596 758776499 63474223 279699838 255032087 420931496 955268200 994069655 396468999 564445610 424686767 787624506 185383317 577824179 486377001 936637183 6417338 713835963 794194304 939674272 62517043 762660974 824455930 950619743 972121632 984718905 165542550 559408711 368108535 947438831 593654104 836439038 776888338 804128202 751064065 947935650 203171295 259477828 728616855 853503002 507582898 575259566 990892643 991596232 787927428 871470279 102248957 989979432 829707479 989021826 36182366 337599564 26395918 48067251 253053153 476540159 378056029 795395515 44279890 255128307 666984897 729947737 158729795 522724325 850551646 850871048 356562497 694630532 287011016 893962154 556151882 791041756 412261397 416755744 994583801 998998824 132139731 807074071 70629405 769463606 611741511 826427482 817443874 930581471 174540761 713358111 677628407 879022849 670244513 791364443 701454543 850815604 986498589 986753765 171095468 875151466 193473454 418215669 712587712 862315406 797388751 817395388 794093914 819567227 844505452 967339566 975342501 992199816 261111323 293654371 130681036 319976828 897442248 978246162 792494884 980196459 521283716 749005792 364354712 588688526 497120527 733463914 997946844 998370144 231274861 327679266 546593015 650771450 177339506 678737013 480198681 583698879 178206495 396089902 460097576 782792889 494961019 754305765 18594018 927102440 414906938 900853714 214961992 837368382 358740772 406200701 202619342 689120679 639281807 774976759 536246713 744320170 504351913 736170548 602823376 874174593 357696735 904904384 912346286 991938962 55005852 850793230 588679210 773810099 338947199 891904479 961465318 999126821 67258153 831154100 506855365 834878978 119113760 485371555 274831738 956653461 776075569 859360806 727729585 999776231 209964526 444515247 580719555 672004020 876074196 959511934 964110913 967937440 759951331 878908139 150688621 557044895 745991922 958143095 378952148 583280441 642024908 946844778 605598262 854714757 794694533 967112427 88787846 902761810 146036045 593361251 598157838 759807070 620907104 790456375 139001437 556655611 244386302 907075951 302621127 765410889 345077653 419661574 822649376 926812183 162747552 377225114 895309607 922809216 399827292 577325302 244162941 445003779 520658383 804146458 184256639 295630862 560386162 615559551 58561878 948982653 111533069 113614730 689866237 765372438 20065505 546299826 248876963 325650982 637386939 818827839 847839387 881163214 495528554 998956484 845050180 986353091 587523630 636641094 92031818 234713879 480888556 896667332 123627887 300696298 370527588 923393762 603946235 885441387 171276000 757552245 391272771 810563765 241937040 672985078 500154958 690742383 838487356 852475953 473390600 773794193 561645668 705048697 227330526 315786699 84674571 199458948 670447524 977229795 501268579 649824852 300931092 645709559 340957593 708210616 421349850 887332378 279820308 821814010 894831365 952042016 284337266 966217290 749789211 909546252 475145015 544414069 776214410 918294170 367741017 684338079 703566717 929797294 719129930 970934461 549808009 899438437 848299046 911997675 907633411 964144723 604329638 956993623 291203518 492936822 680106643 807978029 175446415 808188045 380637018 392325418 330400453 978328027 57556500 663275397 415023289 688796332 459748245 602303732 862759288 975092927 78871918 866024146 252856412 376536070 425432136 864916648 421510141 719655179 235204134 627798822 299995868 418909174 386759333 934699536 888317178 921146951 24561061 534749280 142458082 476886609 503924716 819968923 773743831 810413496 962961241 979293187 938418879 948161249 236963834 405107494 762977039 959663012 333031200 723867930 664352448 768677938 370935312 567848405 635905226 719350576 157951408 946258863 292349374 623878297 289417829 988037329 259685748 415723712 235179624 251045474 828157200 850694134 750867529 854708684 942175365 957284409 526266599 961284742 127082694 988332254 957238086 957885926 768557479 992546510 203608568 922092309 754566952 830046020 654339840 913284271 373704447 984372151 769825913 811409552 781924455 783875862 28302683 451398999 352819676 740759885 763965003 780270458 479666979 734982955 595161643 971131331 67715483 131720926 682470132 802655287 608899906 622442620 725452887 863156834 385728145 523908616 784146285 979628463 958426209 965373139 102439096 692987626 702264273 989787844 101913219 828957250 950901852 983879333 669069361 920352913 900138350 906349622 446230626 481690027 899247451 966310154 738339936 884352775 897865076 999518862 315769051 902937263 142157635 771135279 734957117 832943126 619290723 705288013 877878475 895572654 992231913 995087353 42038752 99345236 76493733 760017741 652675034 875566262 357595645 437279334 343821043 519004089 220889820 818536466 654013482 848619948 619579044 656849384 873343138 970248876 476638412 517603892 591071918 758253832 327748260 692354915 31152554 708941229 60295469 470013561 312428743 595903975 522956271 969665252 345994927 954906660 216586274 945756378 439218211 905586695 497429024 963801001 325534967 504976975 601687975 841641686 6578109 874427342 829678958 849435999 434625408 533322869 85801033 523527753 201802862 691840100 293646471 793902897 993181948 994786573 527169695 570857105 528336837 738387719 770153097 810340983 155126196 584757123 894359839 945026058 649501147 986546493 353456422 908564009 812873420 853948241 860418324 930039554 563517410 842487951 742658369 807547432 641054869 782528859 381187400 673449620 109866009 479180416 98326476 450358599 226961214 830686365 120270405 182967772 283046751 589570266 28525272 855096122 939251871 965074297 853195910 971475122 650166682 932251487 901473025 981044746 135927864 930487737 569303699 721851926 631961141 756473768 949226192 999417071 92072849 238031443 735502962 803326179 693134175 768817845 921679095 988399889 632636432 633987280 730792530 812772918 429349027 942634581 432330184 719277241 516646309 829731128 923576894 993226487 597911530 930533083 161762078 784357277 400876721 614448448 483678401 949188039 805408148 994240315 720884148 969755758 17888193 96649280 849926572 928579994 516410194 657337484 876268251 952216150 515277601 570620143 899837618 907694543 684783085 839296612 871429249 960222073 81080330 416098925 848648260 882463692 545296441 901337333 157604724 583460779 866463562 884654571 201506343 340316405 939594054 956458330 183183716 437650364 925908509 949010633 19778122 584810657 605437871 853585933 395070608 919429852 563043461 809458636 669340622 732818568 606732145 720725576 469132186 738942279 182523387 505163404 502198 813748954 746975470 777522798 141915329 613098187 212536658 535430314 102023571 629048940 901202563 972861777 655569106 843007406 184696599 892003782 783930831 877942160 817960745 841373979 975264383 991743908 748684566 911578569 246966971 630938067 284219555 737553206 707557576 845553454 167959954 357238352 967134668 977880921 753219079 861888284 163726870 921034803 231906757 380663345 268332947 989112725 56680009 481750915 514380678 544119651 304649746 758325043 234588068 307937594 549071103 589672896 842383293 848047719 336885503 768287917 372928549 765478900 703917715 952012031 488899338 625852629 471164397 577071717 896269274 943780694 216750118 614657081 380999553 621921213 127899583 277787908 984565334 998996741 833527283 966730005 627402590 878188613 169247795 417895380 396919884 630274186 616498481 855925683 650194085 827089998 422959712 908262125 62605897 232062795 758929725 986137935 302048465 432387518 956113002 994164946 139247665 556245485 369762428 801210575 50155626 93797324 342024954 672532816 196061480 424398185 248342753 778038542 446661162 921746564 363248779 580607638 927195256 942479753 84449771 427362495 685636518 703940509 929029665 953923618 392378343 422311777 53372312 712378060 481026705 751881433 967735570 980319636 444319096 737310090 440264681 803070796 471875900 850983561 934891917 955652363 45383840 121025477 817708668 902444165 189607917 248811824 718473616 971285751 596748635 881414316 841088275 906604531 744847040 829940871 825913221 875203175 685499781 950396436 957545612 981364693 961382680 998226129 159100801 545067588 373924977 529691389 375685745 912760103 990752485 999184977 743710848 883763796 674722671 770877341 816283786 995475473 978687783 984925236 506752703 882518909 633192101 647899545 52348989 376412678 294119503 540365924 375675884 399063600 525395585 712034671 763930367 769447167 720992536 862443460 898091143 932285762 315371296 611917831 990284487 995940407 644468283 946176645 889263156 996278998 452175087 533558211 114644203 317892357 141564137 563768717 658940245 994708681 400462620 780129593 26357497 921328135 745232768 816182580 215829462 561419842 827524192 984500755 220974507 545506122 627039075 846844380 425274522 984285664 451000391 945869226 206767620 921601606 653585171 745625199 875366037 928006985 874140389 874355201 249184593 337535993 65850854 625252894 733879547 737955435 147478553 580843770 257708958 888265021 266509583 717273549 563049484 878153473 530511444 563285415 950846311 967997280 48528479 413955955 195441514 592787656 82949698 151830171 622583873 984212351 204566166 808187767 677051112 705547785 66155925 333773583 435643162 800378718 477677962 668670937 172930153 627359526 992929146 999075582 645769675 801528393 365409631 758173122 317291034 903546169 95526825 733789106 2451802 653479542 963101573 985682366 189066157 883316958 770894489 816685407 542038520 777913563 392642807 968416683 766497516 898150179 441195288 934500366 936915763 944176910 162947373 338581632 911522198 962781731 27379462 836749148 699868931 807080397 773167956 956020021 716666730 954282283 639846954 653138534 12546715 923240827 699330068 837488105 94489613 407323688 934851828 994833493 718156193 885901802 319713067 422865868 966328926 999787198 203697563 751691285 383630526 475161457 260782856 713223627 897296459 962327091 466884885 552896916 612273291 656826127 647086230 696860182 76609983 102149469 188386545 325222057 862122891 888046599 642030133 911905038 225469042 660128476 589751938 748412056 908116644 981487598 341157133 892973010 812514126 940732910 222898496 277671076 268261963 862494226 182017623 629627185 50572761 850864911 523541505 620061651 53338866 215969122 678818436 989063895 352585343 749454630 679199191 695173606 913863495 954377287 386300952 904892102 108857824 574901715 149040954 363781327 546679754 675893772 607254064 994333327 813518783 927621973 522819018 969504508 112880799 498801378 75108967 293943166 760305431 976583507 732544681 822502618 211269813 303257135 315675199 595748518 906960361 970132547 750848921 891790017 637798775 911900743 447413043 730022518 117475137 871907549 441906195 699003861 90598450 391438681 529975270 694440982 249191336 682764871 933808304 962342213 244439696 463127998 885817834 937500078 818391855 989912931 375586839 585569190 929542595 977455978 141341602 612798024 834933034 909733975 420132817 637029705 858128356 883850527 757605076 818981775 609300461 996301283 878576762 888980273 662784823 683872556 968175441 990437977 896486579 897887323 677480368 984735917 940202971 969266386 183901146 990147892 95003609 655830250 50973849 529018360 656474710 899261277 105830427 569756271 792443411 908802098 390668168 584371890 811082967 990593219 455452145 827951219 566324462 716660680 915472746 917016027 9477199 877252611 851314517 995553022 448107017 662100091 165227458 250981502 637338842 814972466 911800040 987219981 852496146 974308372 853588650 989287130 442910602 795344056 316497215 419549794 692184146 697174830 55452800 765018523 870361766 898093644 464493587 520981885 305557553 526132371 335908318 559333612 763933841 944698928 198656997 425404205 980296064 996885563 100381873 921992597 947378297 953804043 945220148 984882693 188043545 294062255 10324367 675734186 126424311 238970108 939512864 947219767 334799514 662343426 202345921 306287950 185173330 679164119 667800185 759436496 188435929 340257609 977430274 982134969 371823726 564409573 692730091 765112998 868565314 961401216 444306260 827204250 129963516 411761124 480136617 919918879 558916707 719807480 594033993 903284423 14273086 542769162 174528508 522025186 615967525 761507211 920913623 983505597 537663520 900553644 527829443 681216001 674328506 763636732 853429388 979956727 257641958 687896365 887084425 907069414 123035098 481990229 251323623 773901456 368192706 432084614 823389659 975179084 117314522 358835602 631529968 690401129 984532806 991316567 511220852 828878146 381040945 876370737 720908598 792378048 719796674 720029030 910584460 954691388 776555496 886612427 7677886 545369406 171801341 495865322 402061564 673555763 884430778 976850769 209714955 297269194 880313931 936505118 121508639 151966162 502273905 949490398 648750899 927642378 740487628 750280905 946642493 955528468 31371083 251169814 654723604 790939467 476103712 760819144 689487423 877938880 559331182 969621069 157681077 433414972 637215048 711081695 477730662 813004737 88029823 349277210 301900616 964987667 462331737 706785622 151913492 436886777 946831427 986593436 725140294 920633609 109357514 449312261 982134065 993181075 343331385 607699985 644892918 815657546 374513641 936515656 874226892 971756272 435905387 820314881 54775865 533739982 34396311 870463563 664724392 921240429 137243479 853463593 641000165 647286340 781509694 878312382 75524977 382734562 975106589 978694066 739884222 799809195 648179893 889142058 508049122 664718316 529679577 784232754 179081314 197656870 373654603 984830494 598044513 830954750 10305692 582296534 614885292 879284585 223390286 630809664 326096987 647511632 346359458 621350735 318967689 512136347 913009823 934350075 446769586 559104246 957791710 999482896 423769549 504981424 142577691 738587808 296855380 483895490 425838703 587412172 297875510 879892225 861713126 865933102 731353573 813906412 240085266 292969649 436976458 502619768 513419086 624369804 69949353 987837412 617984357 975615206 462815664 932372758 464475310 928556933 31346442 221789750 316055991 487774066 709209431 881465265 463057621 600493185 267813479 898744938 157029601 635666223 627157201 636664551 17023710 597781007 275021661 847579629 647004536 682768823 261239812 905153760 787699919 969275590 973964818 992252291 634545235 926886485 699836870 821698595 180640175 330706431 103718544 796874354 791842681 919733253 476613004 905790453 787359255 981083036 320436477 892741063 884342315 966970027 366491415 440413740 249594271 717093729 228364917 439885511 887639536 893714031 599407907 717728467 906743405 939637797 653268584 913762497 275391133 367105078 404657345 731536244 103345234 127477934 348947569 610993263 210639179 975899997 592525295 791427391 526541002 964713923 117073384 976549358 628361430 722032650 700145336 738992490 454736745 930934231 474551051 946314835 236541536 963066863 94347419 468888239 198405669 953367734 796754204 964503181 41874214 447393887 108641377 254721983 58863485 233862908 402458299 428284502 704096682 906208989 249308124 738886477 795810140 797858355 238506009 756552542 639115339 995176187 485456293 657926588 837562015 993873266 636516907 648574391 603887920 926494871 131460861 990501039 527207097 663896229 872934408 998875679 910112139 953000438 744285468 977056187 415625730 965803864 182240125 338599560 637888985 769073641 595678402 606265982 307263183 479081821 628890334 667682483 822973662 831323568 727466735 814810070 549982282 713486681 871006413 925565772 653250920 898681365 692765000 777683381 568460040 968250859 925641075 992142944 731383133 797739445 809487936 877778483 108744233 177323236 733045548 833041321 417528101 915657270 388969392 789116549 344727911 470944852 322572819 789598913 495142902 960401521 201506027 311574563 495432463 578370954 58805829 493486887 680349602 808561728 399456039 806079708 840783051 876181421 669415072 854951724 957496424 994100560 598510744 883609310 611794152 712781355 706905550 812099692 255646377 501749905 808293687 904641737 808375123 829110021 729619182 742317397 319685280 703584921 828244423 959038528 980080882 996003502 621662201 627641979 881133227 922210788 811625889 990597416 710676958 863421523 880098910 903546158 354181345 602944187 171339176 636650031 989921695 990322361 493507128 628705280 550294739 907395091 349991179 825994020 300748714 659500831 458433378 895734863 736144798 779075007 700424646 916908716 864680712 901782845 564569578 598880121 44245344 810982870 251724582 655605887 956601878 962977136 742351471 972364338 370884729 448743918 138172703 142498473 505529256 529348735 732226973 963778516 337790854 733443464 204579002 957184764 501245658 910731522 20794105 173730654 277647938 421140130 976920503 978023100 20186739 919119797 732395838 747856925 648566967 675805123 14550828 855210118 804931774 830151371 269773644 440310521 386094958 746459973 155771151 415204434 620433250 754000782 872117893 993372937 544713658 923355849 740299688 772023551 604669638 684864564 567003596 870470046 838009996 949705737 469987042 935253762 628930712 820625395 737293335 891385276 637053923 838921995 72354775 452620727 939083351 989971517 691011754 789411985 816636485 836409419 952889203 981471919 651955407 882764893 890159840 975505917 760069103 963536119 558342852 610109118 659650389 836909715 609534218 858059242 605601642 678716114 210658183 506701403 632098686 672495253 891567071 978731255 769625295 975743681 696882169 966688112 323605171 361733777 248405139 268366425 963109929 985371885 951798902 957165489 510544615 640679345 49960799 325174207 181859924 381613794 909111233 931426543 465534787 697345196 381274124 646262848 803739981 944404372 874930980 987313286 198217870 543857079 569193974 844334563 125537654 969244073 80276569 389628144 544591393 948269053 136395329 886149673 415657486 604372668 338215429 735222587 889813060 911868584 445109008 859970499 426099357 651129210 516277619 673239319 35841404 79623327 136366996 168767841 416641103 575703646 313712274 991704742 641605630 652931258 568113777 730985619 929957781 956919715 793311474 908372167 118811715 733654472 148689052 203231834 815816073 974212065 864429090 936320090 854462879 956790404 175831809 827014949 247073001 906060651 455874653 967398096 73362457 272405937 289400260 431352381 368807702 661473137 326351949 488786675 313452489 944816301 411795698 806354108 33507898 253260228 765144752 776471145 146359753 977355980 426457341 594607332 960365609 974880438 182423889 940679038 847765280 983436299 399644647 616910304 911362351 923896888 831695046 850984803 66643009 214516128 901964616 928106894 422563438 566807173 509157970 673755656 461958018 889942215 765369511 876728303 927656570 946660773 796995661 821802606 849709475 965701115 417245246 650941993 229655650 451941582 895697985 896677703 279277389 905432663 772526576 902476808 96533147 233028154 957545587 962532233 464065743 764283244 515343092 785913968 328647525 621728807 682965590 688403756 447032126 935637566 278134869 843578523 596613399 999770334 652514594 783500828 685626231 870363181 917948565 930709792 678181440 990835767 349879685 383457559 514401511 932929611 34825542 981984851 673575299 902788958 867046568 887838483 325520641 690878363 875350016 927997044 660185409 744919603 376029723 877745733 352083743 424546216 283098998 320729096 545852255 563765565 44228373 825369386 213323824 603095838 635404102 706262355 148901940 171585655 517631219 680449003 806058183 939429653 756063198 884053127 425168321 904674145 935057026 972132198 24929708 569102124 143494961 333860992 369502713 495218380 478064809 576589690 628634726 695046058 526928853 957960488 279478363 798199585 135081146 356763362 874771319 990727499 545085394 908600657 997155326 999775451 511089247 571731126 193188691 658731995 233479655 480439568 83707288 94607539 273194589 443427686 507354361 709948556 499638116 873123626 130087531 744910554 913283257 992434108 585771685 605780230 803939826 999517932 788648588 794214726 244785230 856809651 500570898 857076823 450461867 619796581 2474922 168482282 387632941 411109743 377267895 979302592 894562724 935595969 826936857 930086152 843409589 868582415 119623881 707413882 485662148 664983065 946999674 961478091 230207787 292902564 844493395 964057104 526946263 639413779 153054299 228852562 897927853 918337486 765665257 853069484 549304060 688295849 466915943 698293247 802426623 897724953 681736068 789378846 921790514 958882896 653867903 720232223 860122198 937339766 2619262 308616100 677828109 729518651 457242125 926546791 758221332 850006022 421386091 567260743 911544527 912973331 16659224 945452415 462060412 786212085 57496672 862121473 435351294 561794584 145090806 765538657 846077321 979347656 599677545 781680140 499241711 934503528 799910530 829029655 748275170 825620249 314566077 933271466 655327614 720377947 245881468 409200748 330634801 331268226 360188928 855722405 627837542 827003182 841423836 869553672 435769030 509034966 633201887 637403677 98823936 298663992 917237458 971316497 509013996 659329410 724050442 959463701 678857830 988432966 158572084 647699115 177981103 807272881 130130212 551863545 731855749 774281601 924069039 938106406 583126643 923222354 656620420 760646748 133522354 287364940 774728019 800287227 536851790 914465421 109106849 869640913 194306308 783879962 484580568 647312031 472279724 580165432 190514424 322258585 649145080 747164144 779768565 952064241 592971497 862791367 706836563 769499697 493975647 975982165 115414545 430363064 791389985 886941403 133015786 770757174 973732485 992677067 507376321 906052358 435944347 691921145 951954153 966236272 780988977 862598322 322871684 902443957 337774560 593662431 579543329 607465157 450498576 461070467 668825592 896320960 283888738 473876214 572018782 917999915 430389047 508304433 443136430 678543857 799181797 834174482 703355362 889559499 235670181 404714598 624851135 890422744 10185413 993539713 914800244 940905213 339966905 907396544 569822548 762860341 384779161 849085670 957011875 964451163 909738113 988780151 498301819 512740694 870428603 992005498 884690330 885348240 17739892 905368497 481134728 607789052 302083231 903206289 2650029 626602429 281009805 983165561 232960527 273917114 595093413 868512749 707374593 754792394 397722926 888633035 210841294 618619146 943446870 970011530 384398403 934739211 84210775 943182174 323244470 945631271 40504624 438786034 870522972 950672375 307890175 746016501 241327370 716640408 548554543 561515204 114485809 511506686 935345158 960068524 497361008 630404589 527713709 983256782 925612905 977097303 818577789 933451866 726745970 964515396 903165950 993110467 60005284 300218927 135642243 288450723 612339445 889794645 455242069 870582241 289894055 767173641 40693869 238512835 199843353 916084515 581968617 698357935 426327805 880001247 302482247 768548282 392344341 424537954 882112284 882224104 501763902 769873517 345036035 772361461 416446115 521975240 630131807 809657864 20775497 345111955 445567244 715889730 201969928 526335568 371360412 374134645 321850009 773083476 47775942 827112472 471049764 479916071 662144681 812359984 515537436 928731345 768897885 810034547 3451149 131019977 592846953 983468946 662021729 724810957 248134955 319424165 755103368 986399929 998522584 999465249 125879353 617952831 604981952 752980658 282258053 721713616 310490890 735998113 26741700 644505122 981740399 991630728 791154645 908111308 114511327 965920068 124338933 299622760 403880250 415064896 836872261 890321859 367922333 890054383 274536866 454107706 632293190 795024578 481144324 507615497 227307796 715061851 599783462 965551059 997394644 997641342 959100622 970565680 420906048 640095045 792514810 869990491 90291988 585391200 263974951 998705626 639911294 940828805 650014702 964029551 613392444 871010577 878696717 957200838 705518201 970584897 643096621 951531182 685130055 699438757 84431129 981688688 243915852 888976388 366844475 459676514 432334450 953776177 896194981 929335053 260018550 586114765 584998192 780481754 582489997 696727897 432542340 829700287 122338914 782601933 662890305 777409774 50577333 914022404 238021654 353937112 688077813 708575741 112314200 175410591 451516236 605673661 289785123 973037852 878308158 976243769 24574229 126994890 517232993 784058936 311642489 926199975 535066836 547786247 125586863 351179677 71488462 968997020 803574433 913720376 537690317 895618802 728486317 791324971 480135914 751705603 769112686 935701630 186628522 656241746 583503257 951354723 851176769 991523562 676679248 826144257 234067674 375926749 766155436 905496832 165446515 432120477 5139360 810927407 938251636 994966608 812072136 984151186 867720257 972753146 651293673 843388341 974857800 980008081 267126136 548251956 329843327 948547767 150823792 321192274 606400900 685136493 997292164 999407302 854934035 899006170 702093154 907522240 679604192 812569333 50108749 766403287 437356065 941785360 664832362 797860513 689171128 964547132 681605009 709172148 859410263 924113577 150860283 640286911 974212087 986108812 589926527 643753585 868632528 966280972 895791278 999276534 891071767 906801625 85371311 690674323 22221517 499003590 907833483 958069694 345924838 879060763 633000207 841137733 328662217 700258968 463299718 583951947 488226678 687219368 415307463 966998561 759151946 780509339 585595786 724898921 566764042 823734624 118192675 191755007 507936781 964340571 871743984 991049113 979519907 981793920 944035791 987375771 472048677 523379128 171528068 239121740 861646227 963748483 105409815 989985055 216615075 799269974 950600647 952386942 826291419 881629408 347573586 750845340 461140443 954356831 655523828 891669975 85422029 998686017 102372026 334503056 515764734 985863640 37376924 979386835 282225147 660988173 208466034 787773486 510881083 695012337 832108158 866582655 810692964 925740394 825535167 837656826 642733453 768663711 807936317 913410462 261014830 550802197 110815679 979924713 462131 678083541 483025360 547380526 954024480 979095071 744999615 792446757 325589213 453611919 713600182 727032422 658236855 792859870 348768841 448433549 189655934 462053983 330572309 954178648 284126191 529478915 872610685 875246474 452993106 625745671 2172982 262327447 848077041 953387700 861865236 954125409 34884299 670370004 879721473 968317430 183530968 286506381 890223213 946793958 315172184 880754128 122129644 613603723 866009977 939388678 514794657 754336702 536904459 738768712 949725071 954555735 741809005 987691115 85091939 980818513 959749056 965513701 786795973 872964939 407001038 997403018 995300613 995469655 342666171 426753002 221718940 674549588 244710776 406217631 648636905 962937180 850411041 905911463 502933800 775861622 268616153 496311631 492479759 610684644 33030790 875930898 633188426 740558679 399114650 505466262 33328265 653564904 941308299 954008092 321655599 432746467 160078198 364159043 889361361 909322160 577896674 704156785 9910985 77063700 158888161 190896618 636090408 988903658 214374211 334857675 817283165 952126864 877133680 983855696 519817181 945421745 647188623 669725842 671644675 701974669 994607603 998478093 596617987 689137294 399539595 798489771 792202872 900389583 953149715 955787597 984530428 999674965 702199369 934109245 969925845 995420367 497088976 819626453 692066462 707877226 975806666 990778390 975593094 983540524 402579426 862256985 147437202 375861288 542115159 684588635 153229511 211239634 835210934 876379102 762631970 971616749 784800118 808080518 797811322 927086213 430778666 635340045 502479007 812966625 70897889 271167788 499134754 546310111 783598202 853727766 610841355 767450399 521043161 766842160 336005805 614047052 62190736 416622468 615290173 931013074 150220893 883825081 700010565 857241491 201581956 511202985 709162471 986946916 750931734 796968398 943526023 959325371 182801116 209074315 53078790 728382917 607145487 630920724 856092915 907174650 730679399 781945883 933864600 981216857 137424406 713805419 92099132 761870387 831186507 874055353 624083669 954967664 125707441 696017492 54162677 390882632 505992837 538131905 899934151 980196595 723028905 944749812 762642582 781795375 495296921 659170522 392172990 483267547 459917383 800826087 147185332 646045818 87087334 863687697 27817392 842364222 989997325 993218033 346090297 542860797 862746226 938979724 263859310 859637127 632514488 940148992 541119018 596325638 628651296 861142664 857303465 960650887 18994011 566504783 130525197 581610367 72023777 411676247 379985529 994987731 602301750 926392173 606998423 627175840 585762819 836523703 996621035 997270177 339121785 701368272 639766652 750728764 733067094 877100954 45923722 183281823 405075302 634573563 712376875 844482790 343492206 787292277 402039792 590319746 96330486 874064741 675416784 825844146 753474239 991803687 940395972 979346703 643696513 863998850 369301503 403319670 888209239 989991527 556092054 957010770 479917023 976781355 482112142 813547601 893470157 976517598 253118345 730503209 365577401 600911719 597629685 878039617 618552132 990922950 762831365 882609679 754445004 795500696 249852742 502991113 450352133 506749574 62404726 459948625 215694331 456996132 868099964 899735136 503715537 820773408 37053531 775500599 872523730 896710240 462929488 957094107 219080497 725627071 383687917 482998997 961651837 976810818 938391654 999890846 980146840 982244073 379883368 396607574 118241072 629418976 316805056 360219867 230297064 701295280 546362324 848345293 899082438 927327904 655628985 681336995 255247869 503330367 430002768 608330761 282556935 595234371 588298842 630823897 835789365 923922571 585787782 732117044 31875407 458332933 614173222 632891090 95578143 530115544 288069376 308958816 840796468 961905614 31069938 651473754 375969726 592161942 375146853 865488269 805340544 892991440 143899259 720893924 669185131 820450433 205265706 733070708 595554305 882443742 9402523 572539981 734590781 805710607 482662350 896830771 123390469 814838581 169878639 927969558 745858672 894085028 222166124 765120667 560931037 757663005 958804513 985402797 238524113 620400293 131393788 653312059 276832736 612007995 447286686 473831649 508105703 864406673 55919231 146817879 738665186 843536862 678280491 796639801 382359766 444964530 715249467 955685860 160754189 688899452 749465962 898839482 974607130 977815997 695753458 964059529 132736412 445674539 766887013 784666411 334412090 460190369 741864160 868757660 74991976 700916681 476288179 821301489 621297544 799113653 394876462 538153339 63716488 94000338 609607523 776561007 674119113 799539670 89913531 880585390 123354365 891238418 45159474 483682237 409758733 411130508 13138786 433690014 42650298 111224144 9058241 881068838 518009871 547262387 827112033 980116412 984199330 985390232 877509151 969925944 498188030 868723908 672253210 800264697 191806414 637488826 278027787 959228253 649292102 682233651 200026695 796344096 964095380 971518291 23352938 753205797 987690970 990853703 250282184 294039866 577513688 946175615 511090909 791430240 270090219 488812939 854957055 972293531 382015466 977212504 742634521 964453296 217508044 999840573 481993546 534061950 52115587 286335424 762555620 890228384 600398041 971954572 58671368 688584296 853622191 971885379 757808149 848902507 159146528 254642621 459993914 756416259 183258393 248767387 446538690 906926647 234271351 604307440 210754351 692839249 41059080 967898600 797094579 851810050 672577274 738308415 920916400 975486201 615697024 801433666 311988256 819651707 500072400 588083853 886080406 954234157 211487719 573832089 168816491 571742063 224257296 950664670 401955477 815486209 935294581 993480660 370965021 607726021 747969285 932901072 835893833 849244973 573358627 685187183 46581876 321270493 133274657 499598722 691640338 744539620 117684354 618225216 380147115 836488755 378221701 983555018 776574854 918994827 405868498 604244933 560009183 917168860 373226236 528887318 599262150 821050296 846642121 905730629 138742548 158189790 534407042 855684297 794737280 872904180 618992714 863742791 169818940 882929831 371789825 377349676 468503958 783737338 308332611 965466933 189838148 823728141 18042772 20215727 672328173 675584892 281944946 777008705 248258225 633691564 997357948 998217713 244018327 768047976 400865933 846401339 309683743 369219290 867641963 989431275 47823175 407024649 748106822 817112794 611759625 631378919 135978726 819589485 442212114 708930936 451102667 998922782 381945613 812871673 185506836 360770829 621292302 795471371 279656237 678232863 860879079 872448770 999375096 999789468 166230875 805996934 753549563 865316429 249990031 820534373 997397459 998946905 435106044 727727228 804453318 964887573 382873079 788194668 444961943 969560713 807306675 822463962 722795942 811311480 732998459 913142314 824481868 979680414 588568632 934717226 178460080 754533562 980798206 994362275 398782126 911313183 948717439 993340668 15801901 684085061 484201121 779928539 726405763 832164459 874976867 996187804 493658905 606264675 490350212 708351905 827953113 976331116 700474835 902940307 366814325 896561806 597438020 813763003 326026610 629609129 242460327 516966131 580328377 792776417 498551559 849395785 148807171 693814373 129407565 221576500 445164508 658199903 665563143 970336037 361203277 646704309 262907863 274770721 954728148 971198049 139274914 281338997 972337371 992246340 220780002 517092471 260714960 834487818 211275677 686968602 287259433 762759399 301238448 326365864 628057259 892343668 71242235 438111834 668651043 772372602 145481957 586422957 76606330 97367984 303352317 330347814 421609610 909707066 554813098 707223345 617252388 895045822 488268135 732693217 547499969 834404486 270520479 895250359 535098399 646889581 737953038 799102751 349598604 819333878 140099505 225625884 710283371 737128286 298365269 532907162 763285127 975184440 500260559 863660676 698132766 713234281 104091609 773352226 525225059 841758976 673597490 900176619 800334616 975732284 641803837 758860294 522417970 914443832 872645377 895487044 993893398 999364632 818875542 955838682 783300200 920286660 207573611 916174960 881700483 967914825 90770367 442495024 848266534 869599844 621436742 735621374 151746137 211850402 301111755 394087110 188522952 763190850 113711972 910980226 632438807 936394513 14950011 191099159 744827819 918497299 917776357 980041851 176450202 342646674 837772848 948845942 675440432 765544817 286029111 647383325 663405542 782766769 477850155 945924619 185451417 855538293 949031708 959486223 129178295 487761057 420733853 833294921 972183933 997941226 254088185 305156618 225554602 519203577 776146231 995377581 982815890 995595866 229112529 478904252 736459119 870777153 519399943 716743568 831411594 891978125 881109095 940880171 963507204 982013536 506336879 534086319 673640216 965491113 940908811 992789356 276045449 759805998 779952610 975827463 610546373 828991807 63323134 655052197 842309197 884265181 180329945 797100751 831815619 993477778 146103471 764013803 627463024 858721469 464354540 549133194 543906844 824978606 76224781 458092446 586596153 940371636 737379447 839437027 940446518 955437439 828389007 887676043 156136754 277863321 976927122 981032017 707783880 812253705 610353750 674237141 440976290 883005692 581824562 947569397 845547026 970960916 16744873 844810732 886548499 932423170 624969238 661601324 725497003 895337572 864968493 952491662 387154836 693825483 761738937 994060825 590602246 761472205 787201148 988211716 687740631 868897436 376078718 801274142 255196045 818002068 452087893 582914608 433587423 468043547 676774072 682233182 255044790 385873129 526062430 698031849 579621864 717180658 484171287 620419330 980241026 995748936 907416435 913781016 296397155 902369001 869791742 876122007 323356325 664242723 349743977 462441313 310628497 762724222 184365247 277890176 172349084 759176240 877166170 952711438 302308632 555779949 431602796 640720031 905659064 963247243 60469316 901923825 520971521 641751797 738803821 776725277 891425496 982655255 899367952 948764097 13170561 473590162 138577632 504249876 882288111 925206120 955538979 958012647 725196831 736015261 452779280 812167786 309491037 761640239 475625754 523756294 138693462 926795572 659674485 789476155 419904322 886602417 279836230 865843318 570831087 735155561 849026073 947642156 27195829 971151416 407557483 862590291 770490810 911056999 228408214 473367810 910471244 946428314 943269937 993279722 808770604 837211311 129699443 458925810 870152384 991746052 635467712 942754907 442731773 969757434 604653989 843572758 822691740 955268072 661906595 928661745 250808539 430610986 703694765 864577996 343282043 389423905 451768764 682082313 610458784 857955863 473941807 578873857 35637032 44642985 825183183 993426812 80046128 597149573 996086305 996299257 675957152 681008146 744644724 918261011 964226386 987920974 382353539 499282823 205875007 407932623 840834722 936029160 8004205 798745081 146921355 814683184 173954938 589137243 955358334 965351231 644469890 737216444 913633487 946041386 313953686 772230645 839494459 880231680 597751436 663467933 381606429 456588176 126330364 257293698 115614851 721527545 921919764 988111764 689798993 742436135 104165857 346163699 677124319 763982343 904709576 992831928 923274485 940831957 843373463 945490525 447721647 515441461 651429406 979010432 555171791 997313338 662376766 782858171 589054929 682210488 199102697 514441224 558002729 834117377 166778385 324620904 64115388 551974197 53843231 639598599 604553490 997822256 53215860 757804946 597873364 860072437 119139816 412904942 577655448 581433465 488954306 755474667 543513186 612519433 771828008 871376602 584319139 587051536 737892874 898046989 182197595 280830190 906559014 982911635 88385574 93983024 21475448 351903969 140067803 849819945 899217642 941009949 342911115 970606082 173653913 930266095 73881247 478883329 166392717 744114595 809400877 985532850 68040519 85314850 274485737 413004189 33507739 988394505 962811194 976227814 747948398 770302175 839687541 942305258 361123367 443096850 877723852 995708344 39290620 538751951 771043107 813792433 77266955 276897559 377418990 606256991 722808443 795502224 542707199 713202143 435890815 981065185 656029796 934844147 980983117 999445929 388421219 825724458 109049417 670541330 72284145 669149151 732427781 778138483 849051875 958816270 30266000 118714751 481878344 980429850 948642841 950340488 352625524 756256044 979876250 998484091 443601880 783854224 577039990 969225669 908921083 965093803 500925281 573867216 268662608 942535223 821603178 944341159 156993462 485736929 377162777 447018474 319589573 791336012 595018528 851152790 601531459 835618337 919620692 948096285 679248074 740208047 755533591 771284618 16499389 776679133 868833268 997847427 988976873 999295786 589747413 647895698 203662230 572944019 29082167 253871027 273689742 868074254 268202550 328331491 570172435 766601963 523656602 741961618 976011727 992750438 683855357 722079182 857447267 879897161 942036344 969262491 416080159 968483403 526386515 877619378 429415299 893355918 94440487 818398983 202230890 313689235 421629273 577394209 234772060 874292614 553242374 864830090 223952715 900837798 307011341 565714297 554403337 634132415 988743335 995029337 794706784 827021434 332452054 778198094 269889004 333075872 999158094 999441388 262464809 711246185 108766334 620411216 322371448 658399543 524602190 751588725 319026921 364981498 339462521 402675140 682801892 932119742 410179209 691900891 19286006 570555197 412409691 412740245 305873909 714214834 506441508 882367209 85909171 91309540 111691442 580843453 848636150 898435194 337367141 582636781 700500107 960700751 100970577 926288162 66158908 922281202 740858458 806737448 41472608 92915980 394178003 899252971 484512870 692921579 56089010 533952066 378379671 671766987 915061916 932435267 977150078 994141995 404198980 531494742 880065447 921634841 910376683 961383633 902111104 911629843 860753035 863590693 925130100 932256297 542038769 567179041 447344467 497683010 486499112 595625431 504185835 621403243 186153627 970617169 818559553 843586957 438911247 443934212 921284951 999469644 905424294 919070732 213662235 780683297 347199422 348989170 331444119 339415716 30355606 369663638 958904978 969872796 249857001 285985367 936113054 972765797 131823640 711804051 909806598 962964569 833598980 865220900 179290485 399196592 343528610 766805403 614112440 879370098 623994539 918290320 12642756 995852534 334576683 947465809 512315945 585311862 708742225 771196541 334894976 502019578 646547681 929795543 399565495 446735011 90305149 891081989 521558535 901078067 992110453 994553627 547299133 765126169 844819364 982797232 67974177 688687175 205430522 490295503 290533036 688083949 385197845 537878151 837548806 865290411 571489271 732876762 818628932 818736424 351810941 978341678 612262350 742934491 816570178 851957983 924427303 962680271 261038575 918460973 596937682 790677038 972481465 995768711 180308083 872070045 361010300 658631334 901227929 948281548 831911474 996903787 249188874 423461828 582094698 813486484 973901611 974164883 293440891 523075690 237783947 394464327 928941310 941852809 991583227 993605001 937022480 941873514 215190755 834751905 887552546 901272441 144259107 206074482 590435754 937385939 534618469 964200629 777995533 957014544 777525027 938599343 475740534 504813948 518591751 634617946 352272626 447793336 877144198 952166458 377557441 749288955 549281843 677121627 440394064 468256350 91186894 627628705 52809885 129929547 965639304 969722846 518694941 632872514 727426671 849863246 146164333 610134842 831204052 989903194 364320418 828294119 794543676 857710010 103877340 707845505 455542805 499419223 47621022 936814552 127002167 919142360 783894747 859760728 407579062 722395320 594430884 890888108 484490416 530826695 204715509 973021288 569444073 888859701 116650843 903873475 254665380 970221534 584011702 846331343 292392588 325504726 524841863 579903102 110604709 950326114 917209460 983195542 903749800 951282942 709929630 894400952 819357244 827311798 714114260 915995308 229904653 236602748 466439273 754243502 100611563 730245877 166053525 195159835 17082061 760202905 526176078 547711923 245602198 490049599 840065507 964201865 488598516 682065729 487347467 652358349 121510118 256666018 963513661 988122667 156868171 909886782 467022014 724647515 509536520 561790551 244724755 403813462 849570977 940987549 662200102 868948447 852265169 900652801 145489112 446019603 456263048 781127124 818921846 904421897 964197943 974054590 415301390 595792051 883484148 997040665 308425766 627022144 189880069 504919445 459118658 641029336 812776482 820589430 534944227 704022471 976938615 995100461 83039096 537726745 101616914 465592818 495429022 802658765 118510821 900764143 385206778 515051428 959134073 985026535 325917194 652819653 470357024 502489485 203929109 682415689 320220745 571991481 21341491 50125851 319266422 567041793 170166745 868669143 517312119 881317159 31714586 997077366 965979530 985796617 309674251 659795230 111408727 350744457 41984366 250790031 16236239 878142293 569534513 852135005 845486226 875971941 736537551 961880115 719107937 767202499 472994284 709674441 108716291 636714116 145630225 862499470 448533112 833124275 333987714 512648700 43417538 983773210 789152602 890134533 870866929 913557005 894842589 945609393 936965567 976013565 884584904 965148976 738026578 871444120 71173983 621211633 355774335 433599534 678536508 949473880 184340487 403025460 450642339 593982755 918985836 948077058 591924193 956181021 216107226 388034568 728965204 851002734 842088730 912031704 326397244 882624137 697749367 907054831 100540604 180184853 975805952 984902940 897174135 982299159 593774395 746127075 837011898 926257858 463244204 514748711 215252846 796625181 70046097 600322238 404890092 597096978 874517561 893326071 706001844 990051873 593748021 950890370 192160622 824496908 402082855 520004319 726348303 887439209 668328661 716691130 617096694 832482541 496445576 601745697 857504976 920429852 898749251 924582171 963936673 997264194 764079073 788248733 38608581 969734933 244853520 503873914 306827626 477779797 455514234 801889261 79866664 239523096 516053326 573433560 510076870 563774416 587375884 707945012 230016670 730028001 945177275 954149028 77441126 546860493 779151092 822807135 585418269 633520782 965734511 966955121 10527532 506848639 885620056 931424431 605651902 880814826 475215212 847607966 472390628 486584824 632004212 767407794 614971156 819870857 551443709 958894718 972179161 978934348 353561436 451984348 122995758 688618769 433671832 495539165 893822615 906759986 214310616 274125414 682639007 767705373 99826199 148659801 932984843 999413571 176640923 241440746 427407993 817891590 733381671 779251583 528672373 570619166 768019136 836983812 679398986 983873669 16716154 488833418 492523955 634247323 510022024 624217788 210684637 970442996 258443814 695529783 369901259 405984578 83165794 431556937 603714564 930081030 690837646 743004106 158756811 426094688 107597234 632529803 869961331 968305079 499051673 660726841 816394624 864441844 380699611 939422227 112533737 518980543 638605952 684391717 131905791 180714521 284441994 742097375 201563329 696083598 696258157 916201912 38325364 821783462 890270388 950018015 861396285 952786452 817299329 965651253 930007534 951397979 152563690 974277758 320777537 507229565 377354721 910663896 699479507 700105567 175555119 771513683 774724774 869099836 391145545 845175925 994961637 998795015 480518359 622450248 503731839 716000621 471696036 942507063 4054670 935007904 148046163 512741499 618308635 797335817 330943596 996012222 456906167 972134583 97083711 734312049 151784485 366969673 394911046 487809667 530184896 645701929 758451897 797570008 487424658 970314256 843564444 987659840 228537399 947931027 549299164 735057513 348713840 587179945 760169705 943401546 784939094 932144767 511762657 914365847 337098878 393630713 432241557 906760651 867204576 986331712 880634177 990374650 760032623 900468426 655923728 765776693 237331959 405809586 957124614 984861040 673415531 941999104 714356722 893571375 58433824 920450643 399776731 740295436 279924703 561530205 957531632 989021059 875184968 890354770 954926717 971302130 846174566 881715987 593092382 825747206 1000916 537409032 679042906 811005348 792042089 923104565 735745485 878282992 733961828 968755601 292905890 767066373 815614920 992001132 235648572 854656147 410073446 662130085 860137545 897162605 986302584 996309299 809688713 919099829 319086614 346599483 658568939 930666063 228515433 961650584 394448407 588022234 791266782 982416529 202567722 232753751 820589325 831593517 516259685 832811958 399767182 827252492 191004296 916639689 627960396 727205784 444750768 971299737 449185158 848419935 309061735 887564938 324338010 405877506 160882335 289417741 162308693 447148291 603142412 842243619 331635913 513474711 514786267 970228440 981980101 994930095 647011888 725734966 895730405 896095109 132442862 768545112 603391612 930154775 907958068 916716875 616726096 686468148 374184017 681258276 743377621 858921708 887053570 995887429 917511211 992711221 126537524 756582648 814113078 931359791 510728563 672239125 883493264 924491582 66771037 263099421 220647143 598496135 845484592 988274661 77656955 344904156 623189805 730877602 155824288 177370066 968471914 991799466 618598107 693779779 863985374 998360174 501484304 827830797 199415783 588288881 891772065 917182934 560907863 633390343 478975424 971196564 726068118 751249911 915123274 924903494 291429205 449336777 32720218 70039799 225632599 619174987 328863914 997841915 573094902 742992370 549264291 790305390 465350166 741875406 873015019 892613518 829604901 943030259 345566682 524927739 54851006 703853394 351295115 880993262 232947689 386517475 975463536 990494235 931908214 972141629 106717444 729990932 212699583 339192229 146995686 849529109 735607662 938919482 532630128 723023252 968886196 990912568 634261759 988297817 140526019 584161572 412631269 802955791 53375054 759340213 573530478 796515254 856355239 965452652 682537379 947229646 861353129 968723285 419712594 589077859 519531281 656465725 661259474 672132886 30492224 633579081 925835283 968772069 591929906 872596888 485624121 529700943 169617396 563576102 288883391 716283787 486348528 685957929 13095801 862210312 282301601 549193575 205515409 349638660 800789644 886901411 211170590 972924831 737717394 902525847 427304854 671040585 40925893 940739939 377355413 954971754 424839137 633152006 262631083 610656861 845674155 951954071 426228237 888401887 494579655 954464593 445551376 849925350 458112539 774862563 793811733 943836596 326888404 935880384 209778547 849925043 630313514 842127727 765059130 976108362 369347742 917029138 791990295 915723598 804910887 840077220 622937473 848304337 622522711 786055213 122005939 169554383 417162778 590213346 588952308 755911956 342627371 350903327 565055765 764928679 154438358 301910208 341282947 887471900 899792824 926679938 100179335 472570600 877378737 976848200 663573783 771916694 413136040 661868455 883402565 915761043 683460887 930651049 970607288 977298396 294487778 648440692 566749170 955214961 62805010 712978821 724874955 733411987 274888438 358102659 195161295 624441009 514767089 902677005 857083359 868836819 409536478 998730576 892868951 966745856 313756544 354360789 400858445 654932992 545023813 796335686 84501536 143561690 76595828 269682260 677375122 783070767 4933989 500467033 210073091 302942415 589624100 791326773 274450351 584362576 460117647 721341808 446283191 731099047 913306210 976525066 102446297 341860087 235020206 493719141 411561616 648021150 90904944 739051630 471049381 682780650 311009905 958629216 572612174 946410807 869129284 982213901 170648816 436296257 572005251 885618499 273974474 347949314 984145155 993803881 10626467 361291314 657802784 800510225 849108919 922242154 435112512 672252118 730173686 993351992 885111979 960967083 238055664 482541851 437180491 929053164 305637711 841187450 282408038 856192026 753346476 808948631 883756795 918161384 652173157 656825520 237389615 461706291 365313502 812945940 391843139 795621100 612874197 660867824 184150799 924363259 226213473 359458438 766189255 990656286 873664705 899547023 881448349 977741125 499895427 921884598 827316881 879108487 616774462 834772927 6777833 527263974 880116448 917566629 420473833 534200572 34541326 668231744 785338580 825253103 788956396 899047012 191591826 509109675 954649848 973468809 795148146 882764798 792698589 811696856 831472358 905808178 548043412 724079054 132913652 651739009 964456323 970448130 211611486 367759980 214268619 652963987 773820422 839444125 955582741 998490453 246555699 838838454 11828109 228682226 691404775 698018768 426999995 757787587 946311786 998100709 595561498 937537373 787822250 955813550 74360160 730056946 285482537 814954390 505694862 512529844 389635288 494610337 199026207 551249569 4610333 753527486 489116484 494036744 270217584 779471469 489341280 888309660 662790662 777218499 264961600 685541442 63089371 546177833 360232276 616374552 552819392 917483117 387852819 585225549 50689408 776449408 600652153 735490226 427256178 430848924 953062782 986729075 61761359 213747294 464332111 656809728 499402027 857427482 893053281 992717997 971200483 994503438 104832349 462401333 554163617 799857817 928680848 955953951 126190642 982839266 192829311 772104080 749518302 958731970 856580078 885499691 16023837 708981534 102702109 882451782 417826109 591455492 350633118 993784507 960373144 967273552 812335017 850485622 452547399 625101046 446367659 674143584 79848399 414549384 492867810 872840219 133864055 755935240 852822950 874041613 91448895 294599582 45081363 968016042 401335889 889250832 889979174 893123202 630472973 899313967 907558521 938786051 489202033 972626955 140428733 973608721 113668374 849081558 145762485 258191659 275164546 985673769 362975205 982346837 776817135 983657491 528453546 709899528 276101034 723415167 204830916 804579304 961630589 991361710 826698430 956634215 332478406 505004147 540707196 801434731 54348758 825646046 904561780 955942199 147641537 847237810 318614943 989995467 236919909 504969234 188842689 812938329 344634403 861736479 378846929 520779413 736481185 806161202 542250816 588870328 198835027 382017474 134384308 863163796 390882253 448822536 482987982 994824669 770587233 830845395 591957910 718332023 545684386 888414488 440821823 801769353 250844596 546073464 586371663 937974356 566495463 826444350 493824552 779004845 38562331 229634827 856227934 874045479 380584244 535290906 946540434 995905539 933858220 968565440 892343037 931854286 400925079 485288058 687929418 706292531 175758646 226706936 593831976 727148997 928597007 951554467 382172886 664739437 959683744 960428174 875230310 892486862 791475510 800245727 10025429 956580701 952984569 963891036 38678177 199276586 387584688 891152147 555249140 719570228 756131953 928437416 34515524 302161083 697772425 973426965 452459525 571222348 434120720 544263838 136632904 464312247 467799509 776533617 375577075 427354408 50114161 169125137 625619040 710897297 788196593 900410948 440526224 847563410 5630217 945785102 565656572 789484161 144025003 251528552 556824268 985584120 764472529 997112141 267372267 908306803 358821325 715665658 54951043 103123026 246566052 959965104 144729128 694850933 503750964 676892582 282158592 304107937 212028350 324857292 982364238 982488993 326274266 589986637 557252125 697587113 795126557 975095288 372331386 788260796 795983774 981329912 777083677 828741961 696611992 899970184 747442352 961219038 174875669 328347436 993808212 998653273 608464860 694062429 365086769 797435477 734463644 930203979 352147620 938384226 745046259 764698950 255743908 352923925 164398430 315103850 196868275 600148725 731966323 895182512 123234019 860962687 762865692 912939286 880616086 958527679 507906448 772026530 667979515 894851604 802572092 974742161 94163203 118565318 556223695 640122282 378664054 797676732 203540835 645220419 456005819 896261103 818956176 868791168 505980158 786301209 781361497 948291808 564460311 632479762 251958087 451743967 56047344 822802597 595549507 997240098 103749022 460956108 788508292 841726094 958828619 986630278 911464465 952152861 347633209 873324007 102128791 425924015 371892882 686108624 16236741 345594370 451782269 733941357 381640927 523736935 633605153 913995528 227574029 413133467 569071860 762140424 384862999 860602188 491410192 595099512 815414847 868994091 256940278 483614989 409392926 741791966 738895072 907394134 357741398 801856204 494141075 671546909 689790422 718334897 375033073 851989190 109463619 772885726 46442789 150837720 404026364 531871247 835223550 981917909 84637648 691727810 737317189 989977085 931937600 960548171 553138417 844559533 179343676 533379615 607868828 972852034 868458383 923799913 148226041 943239170 781229462 935079766 826681709 895114441 859187091 914413759 959092270 969274887 968849588 986439458 971409908 996769183 349101622 824053542 224599259 882030296 41748531 246019057 769964825 827866614 134664775 286439475 522403352 939202693 130538754 279126775 976451188 986233740 215977493 599374887 888469279 966196937 318780306 647846080 637538778 666370070 74767985 974943474 422753759 809585391 981432755 988840889 78164730 156453133 391688944 976880729 261577691 358731986 684156932 717685205 957644906 976532504 550344669 731644267 881484821 910538960 63298715 370902535 685930084 872432493 47698852 572022802 404486072 877623476 361865517 525142363 257193281 921812275 887277197 910643090 650849020 707267001 319193072 850507029 385189741 912319361 446244349 919099061 289187402 578278506 635220451 813113479 989487232 991149626 455904065 910235521 596899121 789523653 455283442 955891855 718949895 881423241 541984027 543717772 355860312 399223651 157623388 631627154 583117194 874068018 543600657 619524666 196628333 907587524 339062394 865535169 272551145 606011372 663201020 812566422 935381210 975611295 677003308 716794631 463064360 465381324 998222677 998833335 498792264 547819576 236764489 262696613 257414163 315969269 717042501 768138140 378235544 896366326 927423839 985020055 964650645 984484940 350819530 691881978 197297752 304727182 59819101 524185030 125811233 773934297 863606528 922783384 276508188 995100341 804441053 837049779 914776999 996150643 86582282 156936395 768834794 910387883 351702643 749657662 191062407 587304502 932633155 973802346 527941591 580143231 965717645 969839417 810363739 983212270 137895204 681028986 64887623 774334482 893676791 926592093 108779707 673537949 902131243 925810302 250271168 740233339 148310055 748539832 714106539 963174858 829832618 914674095 916902563 971715873 710212717 975816722 318076122 466549992 317770482 385051560 748941091 767761429 201369688 465497133 568672023 984721276 779826741 927030257 732278394 929340846 759023168 931898767 285267158 324799528 970656381 993575156 260292891 440515344 874845586 987005186 909781756 952732299 878686090 926119864 805905449 977228565 39859005 432847279 988297074 997517712 153127818 588239014 449934428 642377997 839362789 907407420 791593257 981286320 453678542 640862494 108061147 829019551 180878526 504471193 574752941 598184424 992655498 995957511 464908786 822677345 592505796 999099369 990153358 994978541 367250568 634340887 21184859 890054773 113779401 235055666 529058308 542483325 304216234 905295488 419413170 629463849 449850524 509666349 747691475 971698197 161536045 262778963 858442020 907554517 359415992 923467514 224395411 689818027 863506491 951345481 367741344 937625977 994152243 998130131 25483103 880606378 275234494 626487390 256032468 477378447 334133036 599173736 636472767 818209720 807502535 908881313 934570897 963023789 462125617 839334211 141312983 782546731 186067155 393713910 251891465 421273868 815845261 840653702 909844972 928668126 247396791 268579285 856240020 910972527 657227168 814310000 257640216 412832364 51539272 566159872 187162776 627964030 250766988 825831795 643660394 924540032 805442355 924163504 484420950 531661691 834397961 845152062 387520095 940960701 946711714 989951901 9789534 153282819 530672684 973769588 676505140 925046614 286311449 334697794 747705768 946551142 906607796 928634822 848565889 912080797 179232183 899194964 996932103 998604237 325249681 440301235 790154387 931480403 622633118 688141228 77904263 592834345 88209719 655848694 251786959 824020102 789113136 806918536 737526215 990176194 930873885 946920106 528509668 700728474 511912173 967849587 368581438 643103354 440863960 818309500 460789949 881739101 763323090 800899934 26497854 973770907 772345535 990163945 7599078 968813227 912450479 940432309 878906585 930595105 831036250 987283238 531060039 974796604 35337653 111500302 820187256 932011045 895445499 960626190 238815227 923039339 142653296 335542902 910727049 921722769 721847692 856907133 652102239 766107980 407498385 792735116 686214706 837061143 773144152 848419091 962779014 995454808 138259264 140516664 542342784 749463235 147655748 756922533 403430784 594674694 103638755 916141223 733211294 985260554 535033636 677274230 371471414 848289755 714784344 985614968 566507727 720686613 814035979 871846815 577370984 868405576 236467792 870756121 180755255 937805509 56899922 730057316 934353054 943841312 847514135 939775611 848797966 880972764 269034054 905966638 707987942 922640581 715914018 734794988 340357064 930398098 496466508 883596759 649811200 665315979 752123914 793435267 971206007 975225128 497814051 810876635 677924546 746541802 361485308 894742263 902606931 926564418 962666536 999108031 952908297 989957670 286013475 707432288 823903869 896907068 356041506 837512399 676117217 758705185 683229359 901056730 521743480 923130792 418444322 431110549 480699072 653575355 348079628 636481685 939650629 999978953 884336811 958906333 314412510 325064516 113113495 898573241 2757032 855251482 294144522 520170575 729832074 992915254 185249671 787219639 880228154 958189909 248910864 714387916 511060411 680018098 608242869 826474051 718732632 908455756 574075663 926174192 593792127 994675036 1840462 280448393 315754780 649020572 147900728 412923077 37710205 640027462 666642944 940432626 724464959 915500753 621443615 772883841 621839491 879709563 281318245 680420728 712272520 785058827 445924317 716807759 950664693 956110396 107379341 939275183 708829309 739596512 104137036 357575129 221991007 729667652 515763797 585018405 314966707 729033974 694075564 918063913 583286671 968591067 599645032 905737607 348576847 604939048 937016040 957096287 633274770 780453244 243764584 454549249 41482364 182965917 757104984 900765499 64450738 499154187 527969830 951072903 595954451 626417989 518890345 809066776 274629441 790491250 852838536 989281084 609338147 875740997 330135856 823278311 803060873 968059219 273742129 636047365 396158416 781842678 752959040 843542381 368970181 948161432 261931643 295305549 64158783 607925491 440571827 565080334 511097288 873102742 274182591 913711885 312538307 509220755 141088192 808193376 628892718 954170281 593182105 993161603 817530097 972552930 736870431 953469098 753629206 943760238 904668284 928232455 312935726 691019130 272120278 657578170 595112500 620876753 261282817 793933713 68718606 96133196 651526449 891569151 237143047 819456016 569529237 982621010 254492584 526412064 388429952 737802584 138638323 943957894 927526056 932832312 399742440 833124357 586879532 814213394 596218619 703660071 922406717 950172386 969854356 984679486 389734706 941158200 165503539 619192840 413548083 745167653 339047777 630655435 314360046 542851889 126840485 716121333 264426461 394756871 800052107 973925834 253911960 282795818 612671784 901502536 614004317 789013777 837435440 907956320 478570925 676386397 590018139 611656487 835843566 898131912 988731520 994562313 124418410 751703276 981578072 998448610 530035592 596547635 475813315 979912453 223627658 610182360 709274139 728353889 320913261 581773489 60790644 637393475 77323784 414701252 767972032 813403345 29080563 425220691 147173984 715040370 309149391 770282898 351301046 782580286 928647637 956315437 742706504 986243034 288905568 345241536 702987369 814150704 458918583 771461643 737212203 971070937 936377843 974242306 559799508 735531649 599759181 838491119 651611514 872737467 698820400 797829295 796841654 992821101 278344381 910826744 610771174 704018233 537434009 618394800 958946763 997985566 722008502 927677417 751814119 770424660 73653722 358837971 695311901 824055790 809866715 951598479 59919904 293206260 121376965 624662221 286215004 903544518 346878331 543788408 196492881 595766260 748004058 968793911 145803670 328019174 746517469 879843986 336153662 370213743 52537342 541303540 400293550 893957360 342547369 688548227 815142958 847746837 640505740 785867206 52232827 300192195 887230164 958539322 318435121 438202393 85810138 328487344 410508846 425154033 849109869 878254440 264046763 304359145 555403188 807522252 984486771 984679181 619162960 809735155 279834800 416883423 284754085 802610435 662742200 966293250 322122447 935324129 812882865 826155557 707194553 885133524 737907165 950780593 135403775 970305108 494033199 852429175 146651902 959986430 452037854 645685367 513910408 636092780 197228813 949859528 901284813 939758087 31831993 217645765 762189198 933447829 330192657 626078804 762246581 815504082 174610060 908122934 777467455 942846816 918501143 935908545 854335500 966642560 956448882 999369659 71206782 691993501 65670886 677313051 34287586 780802619 95109261 800404122 827491239 989295317 820504136 821696882 463114751 853814117 245585908 761008199 864002720 958906442 490500100 599150783 972220273 982771258 346958166 668913385 125398073 833346406 941242029 983019947 426524457 728575402 461762202 755029805 982392702 987630407 309607306 731521673 704982696 950854920 984393602 992920813 892469936 916606182 775718600 967160924 356059734 846201091 346239483 703342436 545833743 721531399 594743149 975071598 737056584 933916637 257622915 740814778 118026815 927471719 540930796 877344434 100554955 500499887 75705173 509024892 471772637 532645204 720943634 902335554 292491209 750945130 317676759 364223569 199068927 553984001 52191396 52317202 247136163 815892000 366050708 932071744 116127258 141672684 559455815 585989718 702298088 837198933 265752377 891508402 927549053 968621589 922763261 957000013 271327229 350595278 657006152 908459884 316444920 980189199 551654513 944352991 37473603 722281687 612810288 880434706 544507696 650147862 834094009 972774365 713520299 775411996 485917143 704186068 89246038 385060306 219545328 536261181 852865585 935292439 169073114 819896631 908049707 963749571 258812051 400722143 486485488 921811943 789462075 827507560 501428352 709378551 885086515 906984916 983000769 992924715 562772051 952776356 808218292 927144058 823289530 840636633 909647328 933703919 877023109 989395658 293021222 441104968 403680359 951168641 116816424 702270199 431148124 901433666 884356531 946975750 195631246 694749893 126703389 821456460 668218137 916645589 268492454 555567661 230333628 781295466 885403045 949051238 500627372 797911296 669813118 671784272 424769993 454726798 367519783 804550056 869262391 908473462 789107366 857034982 624673098 719533407 694368258 909705871 404205144 955875792 311310943 799560208 685750543 931983091 707715605 888321619 831832663 915110620 207724111 930971443 619699864 987107546 739828525 820527661 14157243 673767304 455989291 623330820 341678331 350381233 107330884 826642789 166711729 994172635 284731930 711187228 837760447 957891396 810807597 820334012 94247114 253556981 567913582 737752258 604941249 745486492 503144596 503538951 709800821 870765108 5320259 989653732 82218858 727404424 975095369 977535778 209268116 789751228 652073644 762960445 121832779 401735596 181989531 806388213 925334132 948427386 578529291 670319626 311761576 664044347 639003023 959818869 161010167 927853570 733461857 866942889 72084449 267738099 753806390 916652528 806126759 838359166 213886994 219463568 951536451 951924191 701421323 897160457 451405181 835950830 806108447 835563215 879962300 982860961 620128246 947421562 941494891 950824356 192875684 693031291 90636853 692706154 871313885 953053319 295239532 458139043 975455395 993770424 500465992 679008481 530142373 771040989 260233977 586082563 877817931 930249837 322401252 559550173 178280985 286767562 684090740 897061851 17821722 131820684 86806000 167513937 277363848 952671602 188102662 782847802 39555692 65641797 279329694 837485187 862796703 938330151 154137799 704051682 139789197 673465758 971231478 977730948 473366638 857322405 396221525 402759413 395168952 867626279 706037622 897730462 841612043 962202533 670030114 843644819 155446794 470927174 941073139 972594221 439199840 973609367 417384822 651736667 608313604 816471817 605555086 822271509 572459802 593278688 73013571 622036264 95736376 929827600 832742293 955265107 186550536 523955772 122648084 911212652 811034573 815209071 192216774 880447947 660608930 796481795 211334874 452644461 910809329 960427451 570530575 689129658 633166538 893717678 478985573 646647717 865184424 970640778 796670725 950753165 604456627 920792265 690850689 972899078 619549435 803636593 807195613 945476483 820218638 943425471 847183104 891649548 108583004 434467652 6216358 104405878 907555238 980814274 230309599 289636811 934105836 975993173 409973257 640927707 979163535 995159019 348561550 859029009 163880538 377727916 429349600 720173030 289240751 397899388 383854813 512750973 346065475 631343795 87471206 255117748 513778852 795586024 450429782 471782219 857240696 912582752 696911983 972228624 940490662 974661383 534657566 771011779 59113199 538767360 233603071 735516356 371806332 807757643 694805476 917253891 875355875 991988179 806139292 974126996 206255879 616523863 440276179 971795318 539576866 862475999 20662654 749710668 431239299 726487886 116056009 657362803 29817150 596569174 383408233 595116981 623619363 739321982 245936928 345716287 637457406 937167476 520951360 881702733 720314130 729717711 508922202 895558928 733280919 870327119 645278453 741473839 333930297 534500612 58451737 115261299 477407723 494205048 978468043 991531604 699992259 851969029 823611117 846034890 204075246 839351760 288305539 930450418 977633074 993114414 73383189 290932668 53553125 154878401 331322834 856492330 845261268 871757510 163924678 427163311 944057493 983707809 746887740 944671274 130382397 904600569 991285950 991570503 242470602 598258509 761336501 762020729 399222715 845148132 257766810 949682166 256325074 638429894 571636057 732880943 586854793 605252171 656844007 747604267 65462763 601517715 999180220 999807994 951201939 954450763 643819536 770066472 806043258 870315377 708321601 847468361 217542687 903440558 883981968 982927213 666353037 798588441 103319432 551577812 85232733 817108866 685249219 689935132 570054936 764008127 450721566 840452551 477989032 842832651 512130063 936955320 399650688 951744943 111824792 143809431 964802870 966933549 304941781 552174826 588951692 865069497 20455898 344225465 751495234 753722291 683792747 799819275 618377728 717688893 877736289 897603997 971833601 999001816 350544958 776535826 153087008 652421897 893753554 967003288 608820244 817546313 484108672 817881269 976405390 999714088 113019547 831808320 993877292 995117340 799305703 865670261 268208648 301413360 605728773 741343303 329543112 724375226 124317355 995165374 220797734 766830406 270823693 711253223 831033264 963851498 751276152 864253046 368970466 496853175 704216772 778350384 692411623 942401405 731839191 810566223 946399190 984622524 333774301 852437562 163349111 501491438 263469454 700788353 496824423 649672135 966849408 977053232 487287547 697828208 738416622 751274750 410692632 642121616 179113356 501438316 700620163 854044248 12917696 569905269 540960496 757702284 459753951 972772592 748898836 984833249 198587745 395378216 125967269 621399152 232558857 389614236 969155799 983432331 734919870 848224904 73218269 857635575 960225346 974790840 356647438 404371286 990877324 997135223 898779011 937158177 643255353 822858992 325770899 897201568 182521436 391826585 874118242 984851479 340683298 954513233 138380548 706094547 497065617 682612592 673676001 743847787 509778539 960996102 963481805 978754319 503799943 507904622 29027928 52909920 357143571 373071222 983085497 989044644 451642882 926006639 504884018 511956519 886500900 959880444 492248825 570197877 455072260 863571307 932591110 968934207 586229892 930106358 959754628 965460032 311580550 578714481 54869202 292383131 709938110 944866222 543184951 829256569 520127849 750818306 569267812 616351046 151380444 818131649 111726192 235706587 560751416 622992944 659960797 853131059 440745040 895143387 830148423 900117181 968434829 989714612 328564525 394013443 250873042 313952503 657242282 901127820 576990944 646122534 154756417 286732510 432569720 926961331 465689237 647878382 325887049 560053720 814247378 873364277 261539842 615672520 774346346 868115826 683714044 794850019 35959230 322815312 12560140 164030615 281853308 336437838 311750447 579030619 544210543 630242073 889489108 895668291 405505524 969093546 957238791 958623277 75186299 439383136 74881826 760567091 905420321 963494191 240943187 959680326 586337560 647219424 413599539 792508050 37666135 788970004 523396073 614010627 615170022 892665561 304979736 364746604 274938777 905696172 627040637 964301639 60360956 104295185 324839627 984778643 858707162 888012489 544275208 655398133 627525476 631480104 552231826 619737856 968537552 996344263 650632149 724179388 170223358 434196283 134638371 515665450 275423740 426369965 536776302 738133185 590757405 693717961 63613853 88196396 925619581 968477492 325231250 941565444 15894887 70085775 468714214 669043792 723520726 749255527 420669763 501617048 281456081 944207097 440245298 918724281 444710686 804439437 206495855 684129929 982983183 983553295 519097745 755948124 153627167 243434113 699416579 864979568 280808131 620724990 977005652 984705365 262552994 874856609 880891832 965451098 961943779 967560751 854964722 957603031 367418200 726029428 265907699 969284795 164322989 696334221 629287606 739185824 146758484 682184457 444323287 829327405 677504463 684041643 224915740 263151167 573231304 573260232 942666066 959563345 347415761 858782180 786098747 881420487 474970894 782875206 372473905 387709345 90702407 803450769 129624925 158862290 663029018 720618813 192126977 844183999 452891787 484983769 732534466 969731776 472561335 513062075 124183044 729866385 630210837 736108114 106269996 995026535 542342318 613459488 991330092 994529498 797806698 994908369 115285125 364013567 518763190 678771945 50155211 598514196 969872519 997850303 512777290 716021281 191157177 647795874 635028366 945652405 252590976 295417717 963760886 971848841 232154260 524035242 832180459 993048432 343862489 443481878 545877562 790248304 878568261 964213816 682903982 785531278 78330890 546999544 357925297 879734789 249978940 757739406 4769172 447559239 405000794 696314029 960211313 962213660 617684714 697782863 256775737 315757362 415673570 686101521 467204640 795902193 871694529 980325748 465057382 951330358 856577491 870297824 292915068 930571260 513432841 681048778 663062739 691740955 179505850 357434084 877307081 878527976 205321540 646695726 539942517 857937284 362759823 791792499 960672278 983092941 748196025 841673732 322828329 924045929 207158926 810839553 389918756 423873065 521528250 616443043 898457314 924193776 63822285 337886773 365022012 539623744 497381069 788898519 196250060 746260960 766483139 919870798 11868634 123603579 297946443 652390149 317298363 854637819 802409031 838266500 512258393 750469491 351711441 913565228 357438230 394579439 671802847 944972327 550825776 588335391 524033777 717300787 45610244 646129649 41311329 926243999 739405405 772298527 612734948 748796455 271334008 547873945 582826004 896754806 121948286 661417453 860957654 933895618 407026954 552331701 292606907 708548441 241890561 697891373 492510621 670029793 844629283 911105405 538011088 948800737 678023904 990659233 887348604 931033585 539957129 799817559 10549685 611191269 513526483 568551420 892944953 925419882 108509552 418244003 684182466 747867626 864668336 908205330 23959006 460953249 251739261 450784150 964807840 976945451 168805417 564852576 448559214 457383228 592006385 955348871 330433909 586316061 45397936 937880625 424347931 673762376 802290251 929951782 325343356 836850232 15333344 476575467 564320243 775732914 970056465 995783971 262251913 949007411 600171320 869218430 817624141 921199877 331209180 947471732 593582678 618217629 445795179 686532787 211623784 996633145 892884149 982140672 243005418 247346516 448681503 998972722 574728390 919235079 686018215 943081616 811442742 828974999 670685486 941902960 233189102 879459148 782406745 947909907 219301849 413889086 436734024 875428138 23603489 365121467 511910267 878820665 788097213 884624127 591782925 922195499 54696802 580046212 117656363 939765957 646108741 653016793 232773108 751688932 401408711 938939646 695364270 934572604 623123527 852726346 626932908 759596008 577063644 819191132 509060198 828384602 684404488 958346076 506196900 540270665 289207915 416836605 312751422 570740964 21924122 722396420 672225764 836348827 266447390 439714637 29553441 152717443 198148550 759683496 321206774 686637716 572439168 880116296 761079956 890965272 546318927 655490668 570280315 687275371 960340890 971644575 152761141 471498462 612962734 905991841 473881585 644879558 880494927 917022447 765972007 926896740 976412949 977210230 377143730 399273407 181945799 954641090 142139384 222016172 179170563 231623017 848711423 956450065 71326238 949230624 393536890 811148178 979361522 994031396 634307938 992921932 369975317 714591960 123104691 721789953 465821797 490094106 722258426 859639785 301060521 845958054 995558961 998911152 943490890 980368599 862611452 894854776 110180687 868876934 70957841 538009880 980936448 998341258 148279395 612263710 516445186 692097236 244890606 849472447 289763115 909072858 268126621 459886220 751019283 905819466 929740375 964769747 781666916 841477090 537192789 949803937 539442595 732907599 183418691 364685702 918256532 922931795 697133686 870809776 628379259 884978625 822825468 947019773 998255135 998376398 410552434 912011028 63672321 953389385 32878143 128274709 717689925 872274115 56578974 188078086 180291444 868573962 755272952 823382737 701855950 769562968 40053011 740246139 86094940 949721667 319585155 835951390 38281577 725041683 17079331 99041009 412933348 912303720 720301816 887098641 957143918 997782485 7816803 522546570 85707576 377941467 214514671 440928678 635032310 708072710 779962706 967354630 703934908 975473942 96433870 623635419 955877548 987994885 380845883 411838372 248302548 742046433 596605698 615020264 31988717 597873136 688021301 733190471 99944991 188950246 308206486 728617812 10423438 707315551 373088249 744422008 476794420 725184633 229600117 694592591 825362212 913950301 774950160 877824643 113078490 984643526 599607674 851562375 961666251 981524073 918951422 982153086 799905452 841125768 57469147 187426801 808993286 826969950 800832242 940652050 731340917 788137188 332315701 332471548 997484738 998844527 84751208 901422883 654358801 888102717 205150977 405069681 659934381 793132156 328018705 931111197 857424954 969221559 379580339 989194922 777740740 848367769 972876506 980791255 633160525 712910450 121025079 522581629 127956131 135971931 326986247 367851973 343930111 943521458 866342968 899272465 376655131 601119016 259572666 701170363 445304759 480999657 512035944 975580101 471364183 987358097 762727964 866996649 268019907 801646919 638475860 799247302 917179256 942739342 292919169 848290675 772602063 846095692 521871932 841829221 782944710 907858569 748174377 951471008 437654521 707736025 353658967 631998002 754969608 896733052 601212738 974195121 228116175 483955158 6508743 770625135 203573602 461985944 947461864 954650403 220634717 554112577 363370557 740006685 218319708 807262954 125233853 815137812 587892777 789728093 191711495 340398111 832147575 848411116 998973282 999062497 871053868 942918600 197929485 472143962 69926687 625422213 920388783 988051838 654979555 955924776 237179031 255888053 235491589 719376825 645757546 706276962 882439716 971817789 31184454 155401180 422111718 665846312 670390152 759218409 220820931 621773300 716328928 964344304 51344961 862186453 701379976 731449762 705857565 966788133 100159598 747985313 472969103 512423708 669817291 963866064 363395356 760529445 294505409 619411017 596078481 723650969 853977083 924421696 857898867 897321437 422674542 544028801 539128911 849376145 21964210 888152316 948575091 950693204 184434374 452491412 427179360 636399320 158211358 211317978 311013203 330346545 313738415 428012524 445060305 608892057 754365800 761111760 401704682 435850230 535857954 836053452 328176709 514930098 698062405 811669897 382033980 800594107 792556823 803344012 739817636 824007615 271046360 733670997 819317121 986583433 394969925 459810631 513204573 764288953 612787567 937692395 84456082 457427758 707759744 789362619 597981054 714568117 11111005 779354461 169895400 182555446 951801043 960630103 257619838 895337745 263876049 399763813 528882961 664946151 388375477 573372322 907031562 934311999 314738785 606845254 35161507 938265462 604659821 821725429 61284975 875694995 187924870 852153342 547020570 740368194 972560248 977905381 288782145 753180984 945818783 989384258 832404120 865931193 714509281 779526601 70877016 251691597 37411538 284202536 797597085 909737913 821260364 845133916 379345316 988958281 198695046 791581325 385051616 914300254 703780911 882542212 401149784 920417047 160559359 639757452 917945606 961708177 509301669 891301456 791647493 844118558 5477050 137661560 709361424 942860065 623465096 736820942 470010997 975755613 242964217 673920312 91497005 740990262 289006658 808524585 286753813 800318483 105019904 917389633 513389135 661376956 191712250 269849977 718915489 790613339 342728518 615444187 244723701 928215374 700378111 953816638 354677707 651417207 860318389 984688827 738444544 778695186 71671556 319717144 471729442 486512659 337347577 790263477 480349122 610727570 780461554 958832951 737237406 885021716 297851611 765854813 355624110 856401802 299156499 586336953 820388339 957188003 402030239 432116681 857575352 967903302 221402590 769232930 628556818 787915976 26273751 385308139 231422197 530083898 871721250 880997484 362638082 884334921 689933668 772349134 570436470 785739128 248503320 477379759 66315180 251816063 840250731 986663296 874072376 893333782 850621400 894204421 175487635 996704383 643552884 850523628 862285051 869634126 462044348 632152600 471893970 480229364 117822243 852998363 466196252 555922559 471461758 772077351 981582570 987830332 368818625 496330083 456612471 883559087 858843717 877742450 612673480 625339901 111165547 877107714 560691851 581830933 397488004 717192009 871333350 926434527 808477617 975195443 306894533 491088054 746745442 794732156 3067354 528224444 845852118 924947426 366161556 549436963 791971016 802009048 793584191 915928753 647071180 704032554 741241136 976558201 11467049 91306569 540003041 647743164 454368842 811619199 625578685 921427726 30663258 616690936 190453018 959880056 161156373 954701859 44910088 176723081 753671876 898567666 211566177 751326368 751737358 864365943 8657394 604319920 323958845 432026002 88635330 542084494 704519061 723982219 101529330 119059743 932586008 973279120 644308378 928829130 147921026 240843782 15637469 944891907 939299516 974710968 634417215 663073557 738479107 890119648 676292415 794682586 8132485 865399776 542127724 772789749 405089616 696961985 972695343 981141638 750602433 981750336 204425850 230776508 923685009 970774213 465882345 639203251 678271628 967277645 983613548 993621232 242365383 397477145 623797575 840987387 617332000 929450260 20067612 682695603 76299013 905923832 71569777 72772297 570659811 920815272 208792221 343715364 829797634 956973634 698978290 772174162 516447502 748602177 514380927 974345485 258949278 783662401 695338629 956903474 180489819 511141353 614398683 833829717 337048700 490546429 280249406 318701029 749181124 901139193 242676311 638322687 541101337 928654133 69460564 829637992 806416379 808393056 325818337 428947296 995317481 998788191 85019108 182925855 919320982 996595379 928631059 950376374 1912163 55179448 656844454 713000005 509315813 623541353 588786087 858975689 721493988 903013212 966046317 988417931 258938215 633035147 775496097 818041585 383693288 736986510 692555267 804781308 5769593 540659763 503457281 550192546 128672654 611081112 449296308 815743989 650124951 918296802 662074472 674891673 160813625 445105077 157386545 805482761 694245784 715790181 323245842 672829272 454580348 661377689 603477285 689251038 346443961 416876026 925208451 981361723 7818470 773468868 521174514 885611575 83263604 919464259 289713230 445472115 796574489 799753215 847261748 956238996 290462327 913139183 738468920 943326285 167117510 785823902 276655745 946424935 351157094 780197975 324535387 804670032 843348771 941120517 58707358 723666363 672461871 857529224 571061874 697234193 686000903 926911687 616082021 631132325 206863129 711177998 738747058 952719977 482918546 652354760 325583654 722307707 683581814 694481706 75447097 267134864 692304161 893762423 844551626 938467126 240612158 656585036 988431851 997131707 317555982 909077203 430337688 711811804 505785660 530058391 588150482 630276000 222468763 702055287 773109400 833358319 901118407 945971097 155002697 596298834 752944330 869863050 928418861 989116257 764348382 955252650 557508903 887658187 159568848 409409259 162079789 929989128 894389105 962942336 561917915 602679730 473446596 535508835 780126001 870260950 489089065 989486269 253323272 440732332 878820344 895149655 28646628 646886719 811035248 950507502 878263489 922554862 457244064 668826390 108553581 204168084 126682953 958268507 684650264 687527040 647300239 916707710 11282739 533809510 55923870 129971690 452769743 591249554 452230525 492212480 140000556 681829938 349287554 575438030 339936080 423210222 372490964 947763997 228573689 991061542 589825954 609501495 179307539 720217589 687809543 762945610 569637152 670227285 928215035 970330288 72457760 346673492 639167365 754331339 698685475 737722216 310434393 821647180 649182813 677941474 574914535 758587042 138000963 452395144 690944479 878394801 129653780 523922801 308904338 978959111 766458082 794192569 932022195 940848982 305165498 916924520 667968336 803866142 731172842 819288582 295217158 415096728 336852915 776589313 497575464 835298210 218492732 457750669 524871567 907140384 914080896 967333403 698622757 908869126 668213636 708535658 257831000 466756831 364217326 811837921 730458454 842175675 800425010 923811980 649796971 931161033 410330150 706633270 482357779 860411771 976732081 999092527 793063070 935567808 689428282 789709263 771631256 864724933 80214225 850187448 475961321 871267464 79836966 990494113 830803185 871445134 201901708 619674052 880935988 918377113 527742869 590467965 851891476 942355551 633313507 748642736 388461124 692300437 463964326 776460842 153141136 577884748 805108375 819239520 512613926 523740578 543110153 799500202 296745936 972354144 255299947 730401684 152167518 439442009 206894347 550079990 437925765 527585411 600839222 655166790 386128460 543390773 790159217 812063359 626924752 873443845 428059838 736419730 990577779 993559296 19435791 356104097 299140134 421842394 10872424 524576956 437406568 746811624 204364639 821731551 613054598 630636835 237814131 789304303 607678027 942687471 553389631 831389427 550625650 973124542 626621528 894050369 657605160 916045375 335058805 895964166 470911810 472440881 486537401 583579004 267364605 951096088 479487121 605242065 993029835 993152425 776571899 899115382 393750289 854225271 356684366 556109492 677637995 758757295 187808934 703799646 704425266 866093421 256703607 936874364 883800258 950464298 905398065 976560867 553249253 708711089 564763307 804018328 545726895 599585683 14554316 26394944 355683303 812440130 459334069 999039440 798898027 861630670 657402670 725215008 889983704 950996182 805033168 996311386 524869609 596623875 560998851 752198614 887565159 904703920 754145479 994089131 45764553 108063146 924576994 974770984 10652765 203088275 112232408 777858173 207990371 612187870 541599273 920024929 793248383 938612744 935134996 965959877 418323295 524480242 836695799 998244937 307639333 794975650 996443032 998464165 820038388 892907606 868361545 975817746 844884314 920222209 288953719 677317396 949247346 967556607 76758341 870449066 648614210 805678452 124575806 337413832 295235475 657588091 173558623 517962733 342541551 890866520 510702937 593379852 527718418 884442253 335961042 698012231 780303862 978333533 343653936 601148748 340486204 575531334 400373607 747547177 747867404 806668295 990348878 998086413 855617646 951030631 171657102 624803462 127888931 977702307 133661127 595432015 477207791 834761311 733558463 959943169 663190618 917969722 528436569 681454615 580627799 717485443 807049603 919932799 149590026 753530792 51191799 980319174 58753997 577895865 427041051 686073571 783412715 988644906 316488772 433010305 177475210 476107909 8759654 327393126 37999555 387899514 988903049 990444763 671153921 913212189 385488534 854743013 389928571 816136011 80077514 142302708 672459490 782402548 269224019 589966627 249637399 436514825 216381214 959610123 268399123 430837540 312501460 577267962 125640065 199744447 670432962 775793664 228104038 283223070 983491474 989654761 849148857 927698977 570129566 770357276 530692625 791373292 271915077 914873084 343308608 697798604 960943356 968053526 26408145 657812198 929764899 972691068 307984268 508173168 438270459 873417965 693423752 943258920 659682458 834953399 691683768 897064828 384406239 828498830 610927609 806590797 847012058 884739302 579738056 814269370 339653663 821823122 490544536 826631096 31730805 332739675 689453609 807351128 138373127 178694036 344591300 727399241 131316053 769084208 19395313 564136344 703513382 862453854 811194346 851513074 991613581 993223529 66207966 216241442 943207453 987214929 753614582 763199071 931969746 948766890 924013673 955883272 515832866 905334929 269502535 978785303 391603640 684991014 197500215 557920819 840413628 876360297 272785701 955316254 218394439 671192468 406427983 415342728 995372249 999079627 310723729 860528123 806264870 849341461 760506953 816182952 334947330 970110994 563639479 640417011 957794890 967040398 66803691 657807664 699981714 746155722 3513975 122854436 903780294 959729968 951088472 986927806 588632157 747125507 418120065 660712313 54771930 254959861 780495139 942830444 449669376 982243629 599411588 756162825 721495097 795738671 319239987 799663511 831127353 913804837 407865663 876638017 733762262 764365819 662818267 925763201 41293802 247027920 695528354 720695637 480005815 565407988 797642539 978270039 514330073 606428924 163727676 387333638 893013858 946853090 83478220 362947348 373424159 971783780 446930749 867643657 86665746 823488373 705208762 914793394 524970232 597151728 512576508 667422402 11560345 765105720 714354178 762523384 965411443 977568803 632018859 988149689 996882700 997886094 142112715 719241930 712114844 881927409 547618582 850211498 145095681 888291139 13589445 74522628 444475031 963658347 555344110 925930276 205813360 620251639 997428676 998504009 379356897 678671957 973933456 980313588 390365519 432978971 491312417 532376102 501964884 952566625 531047220 845683178 710077568 981258252 887419316 964986370 999849057 999875712 270018828 575541517 460167896 519448801 153316796 397098584 14951268 578473886 421649770 750741100 297786918 507926333 59612121 649082436 641939030 704297025 382823569 699312539 464650810 863023877 67968394 948422148 996327469 999422700 56008043 376086598 827610616 884434361 654441396 662436953 311753473 809585409 910360318 944569619 890635659 979631748 241042332 629774031 558995168 572754718 952351842 969822574 241308995 660924614 731755589 910510054 773930478 835930668 212710517 426184782 220499966 758685194 434215582 440430686 314795088 337217000 902321391 993591333 384925560 385546022 801516660 953379205 905233120 951412556 696307735 774464742 35235405 944197541 932823265 966521540 956406740 961496472 779705645 986279227 295847573 614862253 381920056 495879686 31068360 345251704 275347410 923112694 276092900 583448779 970894025 991272129 112361399 640715405 914042187 986480576 103775509 540042065 298371552 655825395 557719481 847750692 550691004 732055061 193450395 519806191 153887392 536912549 353931100 912105216 592506198 612116615 442740237 911762245 859006509 873293306 423165546 820047428 540677597 819130932 740233980 972268006 993996986 994867691 829028587 980100200 369788539 597029981 323527746 328675145 885517822 968691357 775588221 899548489 580453541 660923594 672311947 675710965 466644893 679338409 304540802 814608931 222204130 478954505 751046928 988356323 289933826 996405281 216445143 302702971 910510826 967526198 672765275 959273062 25188969 120735429 40217553 954253253 798639881 806190296 264335004 512020123 717426139 937677717 81688299 748458528 706079731 853310250 661679986 830253924 314305281 741984916 332193663 367929560 984901896 988554409 478327413 763350587 640761615 755864742 234254101 906047702 675356436 731412407 45920028 561426580 228170994 573428050 747287472 774965326 739719006 983990286 727917018 990329561 623267076 938409483 943189819 949341322 422650615 673884011 736808696 980622829 506544340 902944727 689073275 935090779 287850181 484037138 389155815 828977734 657440218 707313136 872612889 886733563 915514063 935228249 273844839 468100951 266139611 788048931 119974557 360618774 501243593 648355390 196616048 972843113 645830793 655926148 514496757 516036386 406569477 988006996 379911145 574347050 471886751 965892288 541540381 797398864 359174233 657280093 636146919 679827867 370756075 565656611 187991038 386372286 871693018 932168168 151246119 436747633 677553833 801090497 933363824 987202047 721043082 739993846 428937258 478685192 141527711 969634619 135077686 362216123 463417622 812575000 544260603 577507312 558144912 864284047 486871564 992480518 790161614 819226253 153862211 278353580 26333974 416423297 38501521 790948833 696111999 951585822 211934156 472332529 450996448 848832349 631153352 650584296 316168767 512145032 834346998 851470988 424844026 797896740 146127734 676295201 445269477 965532836 640286397 853627369 589120313 879921568 730344164 806870283 853020590 922170581 747652695 925850337 216994688 768082885 261657793 615048702 749892595 987226469 818673215 918092933 499646253 705963320 233887921 472522858 371065364 571337097 147045037 183461810 591154364 891477453 50353727 123219033 434096064 545960989 53992410 519246507 573348828 860727450 864693555 971765003 21632314 324357979 939116735 996569542 102338078 412439491 358935593 577623981 723754476 727808536 676907900 806240507 62602185 738086360 942330196 989285938 699088010 804372857 544392953 690422109 529915103 926169886 407678596 923447176 409969053 968920594 701738986 854260271 644142025 853068182 412685957 523647481 952835962 976666143 146701742 621041952 721392411 933195702 212461680 301657979 984825310 993678185 218418975 239215583 7059077 882044727 708474536 800239881 976355361 989254957 510003555 625817057 63166227 966284114 328680791 870772943 961852792 974853237 33108415 960882273 10304055 616125947 433927339 827826123 62328696 700004415 726632023 862714934 266282231 731785442 366430408 948630202 103214750 410845975 472080878 949066378 899785183 928914053 337566043 542238881 651349969 792224921 604089107 776812967 887998954 931012083 723447127 985954735 395153441 930385709 387882013 604020051 672786910 840536916 941652721 991589882 942095032 989986564 812691037 917835709 888510655 974405652 544278304 969071859 495274966 587574484 710311344 904644388 116112539 205812205 799489473 906413021 146266484 358364838 693842727 778975389 30934577 643469541 512288227 574930163 402133501 905558687 47139344 327742900 598202561 828073515 989131639 989701707 835302213 858240283 587058482 625165361 879919888 929189078 348714379 518428062 921346715 979365539 775181829 885859008 476284287 676994547 811836414 836812122 451417026 931495479 994117147 999043242 975533173 996827114 25973270 74645311 93272307 543238568 546708238 564907075 69104768 767226898 269313258 487978310 519924538 755778343 301911550 433520744 200316785 717634174 846163462 922117887 255163229 275546765 334871567 495813788 468237868 976558236 222817054 730354298 704242628 756858988 972830646 982935275 698637687 934175849 219215285 596340198 1640696 298404858 854080056 885801895 161123071 757579908 306073757 460150688 442399208 721219107 959819419 982889286 823671175 879386263 146131399 738583933 431686409 788621592 292456363 955755774 469833127 969147909 175248950 500114589 598861132 777390671 444815297 787599570 177811870 521092231 119682241 182310312 344750747 910096141 186918959 677136820 564099758 757181098 619186419 665497159 130141883 523446018 489893348 910401887 910473730 928828505 335426865 627148313 997597885 999961888 275352805 878391183 106507605 470640733 524819741 650661243 727898271 743812662 549712298 800830072 32351276 408516956 326140953 825379275 70109197 442166021 223249220 520889143 32331376 237790455 500110664 669798039 539467758 717488903 606153635 648814231 144586478 819969067 892570889 994449800 645699302 705590274 473149807 909725293 61998772 783267893 654711066 847495912 4586905 726162524 41392865 117587930 751048863 882224037 88222379 944834771 863613470 941367549 731666711 989684928 545814592 660289755 641361698 887736306 841234135 883251154 649647094 943136393 844743907 855135805 838723824 921791044 89742272 639713255 145675854 518014419 841456384 965508092 7968652 294694164 400341247 594497184 224010747 381556887 880903832 915224650 173331339 446413176 497769948 668493721 393888066 837104995 724811715 960665682 828880314 939586246 279780294 567495299 941387855 950973172 875692936 961617869 385204006 445753534 196555773 940026453 139309839 625121302 16388985 545769334 284290374 644905386 593938657 881836163 552189327 711735822 789175873 838064195 390297567 651029194 832444901 909814955 238175864 842033298 610631184 916486550 99681214 505195288 854415645 947195012 346900868 474602291 443899462 530645602 227634686 827475501 514267387 932693999 539665058 918981398 261241563 982916014 110878772 906664064 421683987 988627672 851463336 963148937 216652622 391080243 290049958 329347797 746137210 877623527 61494338 500399895 341637914 660031557 676284585 879686219 586256543 611579123 478151059 505058784 947490653 965837796 806361790 915072035 144834262 299586544 297122048 744536333 544108819 941941298 242912364 952738149 473047657 494468913 945529106 976572850 378294261 953258522 629085093 707139107 794339655 849987768 180875434 942436312 60402610 578989180 301203638 731673570 95918661 175191559 52349609 609958135 281760945 852424085 538161340 583726971 61962635 763036163 766270287 772670512 237487808 572294712 12150763 573958646 143539515 771106872 297700040 901292823 937395543 960524322 995843762 997889766 894792180 982965286 84728619 969826694 302161143 959250963 999110426 999199316 272092350 405093194 752689610 901111630 595521378 862162319 475017651 810794779 142431960 719193028 981658461 999227182 3294009 292644069 511109494 623017254 628519277 893680923 411322029 822060364 704803888 722135452 783106076 785125281 679484483 822706523 56565342 259383765 984715345 996267415 483185711 558265611 848489983 962627602 908292241 973855769 535526105 630602396 453411805 816361068 817969478 843487688 673800122 753182213 737654678 872572092 603646968 848398832 546427155 626538788 633564603 791737578 609496037 979357667 793219587 962171363 677718955 701412615 384571341 408821346 346697526 499147205 111328801 719368487 700938955 988444453 535057291 809106194 355894542 424429145 167433567 999387515 688717059 699131579 186246841 997107267 431655625 800035632 293815485 457994053 394991700 408242304 505341476 853702264 316750958 518611775 481751623 882002637 325552595 416365758 321864496 402451402 645094874 697705244 347856662 378004906 168540399 696453695 473672862 636441296 2289826 72823148 538783993 541824320 922414113 955632489 180716319 506712091 861215361 974172906 339827195 529221126 163786322 190622819 89878948 422788212 689177269 819945550 476566573 640973591 427560847 690513156 473208953 761407270 531629774 572054887 451119573 915859660 765678390 793583579 965940038 997620374 416777779 918179146 335290282 754351235 213829024 364392409 763773803 884458094 398408625 771921315 646327852 864423862 28700526 138755767 838689830 939405046 689336045 932270867 4906864 54991538 419371143 690468397 235636791 338313532 293495709 987283638 893628300 926642743 955195823 989627367 33833254 773872301 596850998 659541459 63718418 293237083 463330531 475697835 859556844 868846504 904921172 913158255 169575257 436863036 87427302 982288344 169637636 795995263 656881793 676379258 610736201 880778661 357138660 532744570 785848943 812896465 241002733 384129271 418720766 520210786 516779425 795751364 303230348 874393695 413657848 976930494 64186007 754189197 453157941 947057249 130959093 929691815 288653169 504109358 992014373 997561752 963708375 976229706 162385569 459848316 107398857 915836454 615896583 959333684 193223863 207275996 176043859 630518281 997758933 998611324 608476430 732115727 487801892 951972458 536959703 909418860 673474986 780972555 749379728 874762863 256602675 346174748 69053167 802896785 782570137 822377365 477303754 497012503 647967161 680024396 252968730 860139235 463784489 637695903 714112964 719199243 962613353 995068253 480235846 922343807 453740340 868057127 149190284 992250399 314922692 709735437 395223579 710596852 87327295 477158797 96835578 328652270 237111887 634613803 142199006 783708175 664681396 921241901 331110406 338191970 995135082 997314806 873932660 880089760 722976114 982649860 380945724 408152001 701058324 914726351 913389667 932585582 557454268 816801217 788597439 808956629 140794201 391648100 322241109 855426706 649598765 922126087 70208535 540944856 862063956 932133840 764149644 924064170 416505345 628185689 928129095 959791520 224971489 714402521 148819236 970561208 43165418 667365526 804415384 844746843 92238801 899846189 742933564 975722255 497560987 662083068 508613035 544512760 252027363 500991692 630620307 995947002 315150879 437986054 845305461 947095310 868505306 999954839 928915212 997846327 447746383 981943429 403806606 909437091 780734569 837061533 991465280 997630857 756259449 765856860 497103618 798916122 90741584 802729032 612556900 734061656 756741060 882775184 505855416 965086751 62367960 643244498 654325967 752134362 483931711 661019453 393180748 975084134 918298585 978155963 962417745 985934983 662585222 739804730 284963948 569058154 286004192 721918275 77446785 183871187 463796707 857582206 407865093 881818333 859323468 919610856 753883886 793247864 336582117 426389695 712853668 974044647 618802368 951851889 938801868 979848922 858005869 996041343 177024352 800127132 870937707 968830274 208490715 388554019 405091848 685171936 145742164 223089709 886030877 893226984 690272778 983973098 456016780 615143503 871322451 882417970 255690712 857801613 434166841 622222170 23619917 899085116 30077738 761497179 597695068 754588158 342593178 384779516 714519929 848357937 748726988 906250464 320223499 832167464 470509787 787969000 163365890 234431357 479105032 510920687 85847392 410243103 484721088 907620623 67537034 439473397 937137571 974623345 502819373 653648230 911568240 950307803 458721846 700417285 623539908 721883917 270577574 712407133 917638822 921589196 668320170 762740349 490393329 537704088 446393875 555513633 983992174 995616977 48755514 728342933 321107111 802561788 697857919 977817688 315662310 541846622 360164419 798922477 883526914 887214311 832710070 942388303 684103146 735796302 886867366 987467123 548343045 587654778 961510963 990611518 221181405 473354746 697222325 728265070 660789992 718769875 2174278 359316077 700404769 926374977 138328757 176549225 772168036 782254465 854254474 891877780 673917688 845768547 128336420 575962202 516744955 923194483 859156046 893782171 125112682 668531454 981378369 982284312 997146305 999907680 879397981 958880280 84704890 898797304 801276881 965740455 8839705 963646727 511141017 942637023 952552283 990631446 38522800 544080834 106126461 218611598 133482039 848667291 507237510 979148963 47572502 952791970 36589222 971483745 991761448 999101087 931954648 972799542 325574538 359838050 547938889 767942628 715945707 868920515 259528697 738399688 450934644 833581787 73661544 371996256 935696287 960070756 801541790 834264883 179723489 278751478 171354013 570977224 227560632 447406914 14830646 589586159 606676916 646079508 500961342 562155735 899178192 919511197 875883937 900666620 667598181 846229762 591949654 932997731 185050179 273886113 584088641 707437274 33472389 893360345 618010088 971768216 412221361 919368185 427411064 839561539 391049058 701461808 818769284 883777305 683918598 998602953 342492304 412804673 218171688 594168093 899226022 957159007 332701941 953661729 630437394 937370161 220460481 764950319 521824193 943784807 228485790 757034511 40742580 430109069 670626860 943095086 784266413 854751291 724527374 805842986 798409114 927291287 706650130 716920197 900750421 913165954 218846250 223481054 740367195 757269905 131655047 256198013 544509716 645094269 207538353 411127251 497109618 879672530 451857818 491898981 637347341 639597950 608871606 881305481 726281409 864801473 372238126 375525302 93621220 728583685 771769744 885327630 581673741 822834841 703472267 926376348 646440043 851055408 882173037 908053192 953990907 988025957 937045883 999020946 805112950 847645283 197702556 658876368 719236691 958919882 371006078 546437841 98364971 181895402 163704963 511401366 591028137 653641806 593696098 831081975 571813813 608503701 900460612 985879471 686140062 820419977 119020202 632036498 272431529 452066016 788105056 901186558 806289835 812003884 329785318 563482139 66271046 746595193 326635909 373307881 846596012 946930270 75110418 708624041 700278102 730596322 763945357 947990859 90846115 868945139 609706595 778867907 792506835 971540437 173025196 886290625 234341041 239067736 680042016 814903593 977168477 985626141 42156820 119955173 785560497 942059680 777786550 866272654 164976244 891819021 947778700 959254810 286125068 636121705 856451289 857316727 953556626 991055025 143396556 979207845 150966877 418273697 304830978 608374956 473800927 735292366 161574888 643724771 395462949 476990457 99016468 600253669 878637540 989970141 79944771 661371740 329268794 553254283 597703186 682041767 740852513 816568833 326217455 777898740 701922543 973555115 798695500 810837784 538279681 874455923 848361752 992455681 32009474 94957508 523279437 555476048 692696881 825312701 726645975 787862287 315273572 544667854 572824819 684714200 476880912 864885080 362715117 691063423 850204352 913216174 880141869 976102662 396193739 537212587 97417092 440544865 57634898 471230569 118711003 767398324 149176495 421712393 877401391 986824138 138951013 232566269 967768623 988080561 346725116 473456046 783310562 988789134 971915379 984412481 262035778 335672602 268487866 695997063 949250653 954683485 664841812 985640257 972823793 994494827 545533970 743248344 929502704 980163095 720675177 741347343 222102076 569708338 657454943 853397896 616627610 869810790 736453590 897007633 857325761 900777643 62448277 102017474 461042940 815245461 311257050 518187039 898397827 934030735 701131376 939991405 142930435 468388779 45004990 735985651 600478485 759740033 551149016 976193645 403276994 748197825 273899930 744721626 555078641 922285564 580378308 759309693 89533701 250279000 756443841 913270098 998235093 999472058 839757135 935246384 377573398 742478163 995759236 997251049 36222265 159863358 867625856 946816796 204314910 380713106 858452627 904786304 496368748 565527348 696396690 711126235 512096785 700273481 500486108 515604737 405947645 601121979 769581282 891969056 718007935 872338471 225193055 603107005 10990844 119838781 830427640 954580569 484305786 495194559 136730683 717748562 985444443 996934877 633761720 916926613 585511168 711809006 51058389 886270326 727637270 838581660 450076894 829268736 453133000 642039620 467954049 620832812 69581787 467346033 489182764 515814439 915614537 974448033 905079791 933127482 208256068 454495825 230128968 510340928 767259955 933021770 730259560 944207713 828009324 885908510 811230300 890653290 154172066 672654589 554226316 947792996 23441305 574202019 807491401 814783473 279241115 873719550 396373708 490876302 163954315 416376000 900578369 963932473 295756806 355600702 79470775 942114268 122266333 180679916 9460577 655328377 869499382 894176002 432953591 862994743 313468738 460446401 236741861 405110845 66990398 351593972 889978817 933479783 30387901 162615952 500175177 687331297 887046988 981995389 79204322 485454125 169267445 800032136 647111398 817428351 816344401 916079734 667197040 713456656 396197523 417165862 224664493 430518482 165183895 407763528 52174724 815513469 216837719 420022293 741755592 926468681 70146819 209535774 35626130 832887553 460625095 937383305 243345199 897106423 507273015 925427437 117350898 949176857 471788514 721313785 3906814 848863126 33609873 978390905 401968880 702969362 112069655 380801579 752351730 939702656 703203893 924535154 838001895 991288133 387904044 435132933 15841119 989604734 258585094 983491117 203495446 536014313 788711871 860096602 68871575 327992692 899227088 920606216 618679469 762166093 580832827 658592523 403970233 610718706 410592267 833652004 978210424 988898037 962939461 966559890 293509993 361374149 289315613 961251850 249635249 856621867 951263115 958508604 944443886 981473713 62809718 168779545 733232752 914232056 486339775 917703792 634712118 919459831 214018170 648206001 472188400 926593458 830222020 887794878 75289363 662738695 736086751 805930550 407492793 615648722 535404923 799449572 857250753 977251658 689679355 781707764 598755207 614841434 279278503 662577079 66534196 373728575 759046761 868046369 723090062 753109657 702740473 754113920 598566053 766126200 996550411 998269709 786614385 807689165 712550996 729239287 498074113 669274765 228545459 589932854 793135572 937258192 818998410 884844578 964473205 996218699 54793126 74917686 526805263 854655800 264348029 454066003 936436661 994998347 432812686 653955270 939002194 998500991 883362622 951797654 754295521 959561766 476027898 895548383 931460442 979737337 193737516 197866429 22859137 26220897 653449748 799088429 586175076 768599301 282350084 664783458 195191154 997784058 821445287 992086579 277484287 285070776 29645980 129874840 660892570 809320450 143642145 820786581 927326929 943460000 127405473 661243967 407691237 624208622 18687524 741909519 580007712 952301467 171086946 863176425 834510688 993912483 238028303 943855757 756966093 987079202 179325810 959695072 680922272 794757043 6058235 783055274 408699369 630915832 872868720 984904030 325539033 488270002 47215210 246528149 692371030 946676019 683803817 741258782 502748156 932645067 577479430 764035174 351628356 758524893 78403564 150194922 146693206 954326652 318755826 920360057 436365147 760956428 533314996 760077175 757694621 949010414 469068245 762778326 412533240 472197841 978119380 992458240 685472846 876841367 119325255 650812318 503680119 711337719 658211482 658893823 527675528 719978354 11585673 799705642 182808122 748858994 392478998 438130587 699337303 991753854 151354933 635287201 737341394 781971844 990050635 999098088 588969762 778506108 432102031 584013543 726262440 984713070 667168638 936628808 662001778 814136310 83084480 623023447 42394487 151024118 249750768 387646721 545543171 575535807 693473849 902903642 215520393 528662386 902370715 911673716 486133327 827952482 710309344 725151915 842472210 994766428 170733774 713295115 486700122 689845611 630599609 824800897 385077816 860399530 236266820 616818793 759943367 946173791 728402924 741872388 535694583 695943144 982158537 993739473 613252001 894486423 550596041 756908638 5940591 386847220 413366743 710393288 953352732 997545104 410322267 925509944 668717320 941128603 604451543 896581954 500955712 709916911 663233068 859924338 178544464 198363216 744862756 888553151 281219071 482633560 879821985 960777818 188776436 265734783 63255311 820244448 592526343 718193275 664768049 739221391 128355603 426946592 636849206 785489551 940620796 992367455 773089493 828604770 509441440 800139888 701415372 853009427 530051719 676010031 71968769 209599695 345815639 378873310 43531602 618913389 214249023 954480740 162469289 828378996 605796485 679607556 44893073 652125430 358921201 599734701 376856960 863015921 159819724 362980142 471570735 864935808 927617135 981177837 45466071 621414106 477995518 510887958 727487288 822796772 835594889 901024604 46101631 127979927 300053884 562509208 954623395 986258313 410460630 744376910 24503813 273092954 566447625 946717371 692832480 889647712 173595137 447725966 803046368 865738119 675284431 807198649 385613715 731921585 55986987 57082870 703547356 825385704 327723518 469680090 650973155 906000326 921946918 949979344 113972343 188664992 405340686 599966647 237434611 771136418 181107003 388854416 595708969 802223257 645105162 709323338 775633358 970224758 495408031 518012943 475305117 610157135 411664475 838349699 682147290 715676967 331327129 428852001 659631600 906434616 230183456 882797513 230242985 556830040 632857391 918692008 496847072 645682342 161578881 718390425 448366532 718404968 258046704 860175518 439732651 761147330 408148219 626688988 247670903 739334330 905892987 917560824 398796678 457466451 818823640 839820847 621100217 917620731 257406334 267319445 218867588 900290345 512762065 761125607 75666381 606733841 972017642 981899502 173647397 374379084 373339727 413985519 765731720 878237262 72724388 212571956 555978692 761654765 256715654 792698418 954911456 993660762 241089410 791531396 672135266 812146896 703149454 821694512 476158695 700925409 146966686 647718771 255458080 987366872 33917758 264149915 753912113 766806569 743814357 847086247 813004771 921193365 13434574 584053462 528262863 868414852 943336013 985033537 987994273 999006678 877239079 899559977 593664884 922304644 427713963 441960628 517899082 693613072 262075059 847279128 795507448 900571169 380849927 784941726 31311782 847670237 111863383 383120687 699748985 892740028 519590508 750192704 85609193 556752932 825681101 929728956 310228143 895761957 485420625 488478982 103491111 575097142 982991360 996904342 322325478 784166686 180178552 482081455 108904216 154064383 476309322 838935460 856784390 965486581 834014993 940865149 286727427 792827248 980356034 980872225 928777418 969827188 697204469 879515478 438611030 567107416 880273371 975854353 663579043 692657341 500870485 802637941 175669583 657887534 664863361 923907636 343581628 411165156 385641522 593692001 435824262 850840968 256387421 940456877 274342951 554744046 829807389 833150053 840103623 898685199 151004080 626021911 515787012 863336854 552742246 743856259 732162869 823898076 949777799 964464643 170440815 606376476 276990679 758820311 98077506 331005856 270743078 550877808 666647394 737040300 258801094 940622735 933654109 991953274 175898170 702547926 170453173 250410003 35469430 348185169 54455715 75575485 686606301 880014339 876824281 907562787 288761958 573149332 829497166 850253873 578276865 599129960 374084785 672037615 911213323 938520290 902961658 967332550 824064444 977070972 530051139 793805903 965901509 981152525 667285809 994150650 804700844 873234962 135085820 978300829 470266261 577057051 955836249 988303881 935349453 997665504 884272767 907663595 371817513 722116700 995122102 995789352 824830488 995641560 76714151 675287533 144616647 514196244 564363135 955441454 545136523 600480532 107586704 543929549 196256854 810943275 49568086 511406448 70507213 410902950 675046272 790979786 955330975 964014220 268162192 724883212 482701890 790106423 355712278 981397377 84088204 264930439 87031635 918941686 476498330 689038919 877658543 887491205 531263988 988490763 561550815 961762368 9148162 603750855 469935863 706217598 841929466 847087495 921542581 971401576 446411318 677963408 952559092 990223128 461335056 718660345 492204345 632483830 200469819 913619306 464669495 597145416 744641323 937416256 655521044 790921579 542166002 626909844 328255792 529041098 400597733 406967104 573886148 742017305 391988071 690669091 600950224 956298123 425750626 969072698 34651752 966739093 54685003 813440578 556239516 812460204 608578309 813808748 462048220 696052794 167449117 560974945 35911645 264406901 416147221 933890304 169943643 999053060 98073875 359654320 472275664 712082610 125612517 237196655 137791611 385485502 277672341 839357037 705950237 971739218 828709178 975096983 290359835 717633485 566738270 633091654 923769788 942931082 769553285 931509321 461703957 716861453 520482774 576132434 977928724 999237914 148703647 352261418 252014535 830177902 782916648 816840679 913448177 913593390 683805948 851244681 283397709 392112568 340743788 996521097 260194651 339635999 744764041 761106732 743348051 944208145 335410020 837813916 914095161 944193408 480375365 982434187 392927027 775835153 629449253 633231731 455303205 535434402 242549432 943645042 276699063 523804717 523214548 888870386 724375413 929339586 35049707 536870268 962570841 962772680 381295812 930252029 451581047 890512236 312439527 898796597 594352423 614671762 926603578 989794218 506500462 989710431 252869352 559586756 2472606 100680923 439171465 743004597 585528595 782398839 58909560 667074694 867156756 966143385 831408097 890036193 784062627 834822258 940970121 950582032 302406615 844037791 356740220 415636251 962101102 976033522 659609052 800162236 831362311 955592173 209365469 656732844 698049640 779748347 504763303 865625381 222529614 903181992 495705588 884157621 3215601 53180406 486776410 648029083 758615268 827923849 764545057 839201293 14596676 398220023 176912578 308440288 260095069 558653240 629349432 755083891 414497222 469213823 140223858 748457959 167218891 856337946 155087221 545788263 552491743 884558789 627987056 704986592 250330678 731784499 900354889 907626341 145167033 994381543 482726983 530011544 901344534 985911542 402650654 832091396 536958572 763694718 999009543 999608616 126124902 777304768 933005368 998494688 806669192 857175454 234138690 365873497 977257204 979490729 749263810 915619341 171959203 263881995 526919032 692247090 998438559 999551226 252401520 257490857 611558738 897866887 203990778 835636921 83109038 863547867 169133017 772236184 763817200 841046046 468396547 732929148 547037688 937087601 968153012 999690532 783592870 943696582 453291842 964828580 630215079 917539779 28721460 397187377 962368277 984436247 759409436 951669207 352419699 659782457 882761989 958078524 461612291 536548727 297240696 892012258 376657310 755037696 933098089 967408997 936599275 959523274 132079488 864853321 901217126 949503153 794607230 877537346 148054150 594052988 120415163 515342574 980931870 984266419 876217574 884338037 679263001 995252697 932697824 938407879 941276083 988123548 248514739 435487688 630157056 843036734 767216995 982851772 35120523 501215843 398819556 937270764 545196201 839059714 785117958 841373886 283438785 487907651 677024122 811821472 504607383 873878218 674779398 735139822 382915932 524645849 975783955 981618332 117015237 862159620 606014703 607300299 920959176 933630332 817964327 900887859 47169066 687933378 449705039 890808722 243399329 557552291 288565155 840750475 925379557 965581504 400927779 435953269 471916418 890473750 926083974 961876806 951300472 963706833 408739486 565313778 718761769 856639749 618939518 877259926 59684499 974611548 174481919 807844950 878155543 884009992 96343020 801341265 222060018 889567681 311197941 922674582 883293435 935398728 582219300 751098594 962581344 994710016 209514758 863146896 741194542 759680541 901624390 958780587 527267993 880489190 446749063 970830825 158722619 878794509 791690825 935801764 574377074 662392320 963949443 993229500 639132988 803852232 590417497 817470389 556247944 755137532 920715865 991337490 75587329 931230553 944282715 971376914 999078600 999257946 108872594 784025332 341981772 371631657 186608854 854660509 699060628 930797155 454834477 976920839 21943069 831350134 563028736 747164495 535865661 722412560 180243650 688618904 718875383 737563653 531186282 991443662 634112035 913104574 520490750 551113412 28724005 551660462 280970402 727851494 65849669 814263085 151118656 450463139 806951794 852586553 10025568 189844679 703761791 753678976 318550683 949128237 464393318 906438150 435758512 462467409 297437348 364537648 856925932 982851512 31894896 247811639 225365958 448739788 94195912 359146570 365350572 424550863 269248229 813175060 985953797 999343614 746318207 870341078 993927816 996893976 347796401 463679553 546203462 765876673 885311610 889405247 177685452 607095390 875977243 897161815 870723799 936804983 160788344 370016062 111687120 327930512 256978867 673188087 475637987 703405964 999199904 999842579 852325768 942461345 920547649 930940563 970545659 980913933 898648815 928787976 10523759 910084889 640111112 679130854 746620760 935250695 341964241 886985894 1433223 419518783 61591093 869232292 173283559 521082383 725338011 794290754 702771948 947696168 631535236 881912697 868228272 887396611 797439652 861351056 185892169 759160720 308627331 666510651 165166018 703665764 153015285 496149795 589372684 623806494 176317901 568869774 118264462 671773964 383859613 779389224 210928451 592022713 125359796 401404301 865080951 927775921 579900265 905067196 102772441 608211322 677692842 898433425 562234288 815384693 528443188 829534617 276485446 553831300 11935805 82472990 450948752 744129864 212054382 754415416 478079637 646131978 650552964 861756658 521547237 954302358 806550604 877355175 827620593 913888974 499731224 800675411 955443987 970503004 637176990 743257683 349955731 723107768 976221804 995614217 997578326 998428762 848257249 959239056 187338749 528361274 317731121 571442481 243655754 699111379 363901122 854921472 771692465 921268024 441606223 988988017 587386301 708914868 150831778 911969967 408468919 419187168 920595205 973721698 34048424 686625594 463101243 717203931 332623612 956520766 371950952 436996358 73129126 848153451 18534721 239954269 204010980 700842522 784853605 825498238 482087348 928128998 180486831 418135988 857549671 949803293 113526323 218962853 630544499 816265457 739390796 997784666 596985892 948477805 769998677 846809877 665114683 747360616 951448253 995063566 405402991 560753129 59770738 550376580 739577758 940763633 527116792 832829004 432184032 950262486 586300061 948183237 780007630 823001616 536283954 944480489 185402472 758480974 549693480 874666351 164750399 546509258 732744705 793347111 890010559 959699857 831462187 974918581 197967017 433573384 528914949 617062400 651394438 908710735 697588617 918391227 987974351 994359968 637022967 968989006 181539366 301075499 244693407 867511653 322720340 740605781 895714676 952778085 906039743 966169775 205598190 647866133 682734724 928708694 867204783 993950474 721341029 772372063 641996614 822989081 988995999 993851643 394128400 834484232 200880902 652685042 911728355 913800149 991039281 997150985 97743601 944566093 817879991 999931722 187011268 910715498 535027542 656242103 297695637 811040219 76257494 763544053 205546634 418530625 486242411 659006798 162901826 989785219 61598113 189510467 812773115 979749668 437712205 863577033 135097295 501217271 992663181 992771312 356942753 690130229 968191093 983383798 934742107 969336022 837608989 996802884 556360611 718791877 985735616 992447942 45023358 150077965 649625612 755922667 218953604 262192053 785869662 975985026 634852780 995211856 914097708 928325672 572659995 626701447 587861283 786050376 148361287 736895593 941256846 986286908 49110787 485618886 486432886 904305454 727724332 852164028 906997144 969458649 430750692 987385896 560269330 702795975 677096062 880898893 181166796 396609042 897030445 956456022 805096086 882850625 540935156 715649099 377592503 953737649 321551603 678940691 250968290 572242371 669223948 822628833 683981794 977476124 603306850 719498703 118483724 913481827 525989064 894888444 319180537 730078092 829159863 894713759 362495947 482438146 994821628 997321240 249360905 746233803 70047506 454247196 769844769 852062198 131855461 727099942 550678428 779436787 382110371 572426779 317477457 686118102 180549647 880370061 581779894 728513300 908940113 937563281 459484584 764420321 244478205 589051174 709041767 853556274 616791521 964306440 158979979 860709004 285957581 762801140 144591476 380916322 270729813 347508321 70597962 226797082 210043572 460261280 716727462 909252933 804679691 888759545 412909672 520828151 136274757 425782114 512041091 575488948 812583794 934551264 664549280 784255189 644517555 693958428 61166874 950907537 316236830 724743471 657803784 683454212 364140997 664977180 501132715 947985278 975404243 987525312 612432570 867388911 140322984 694157553 92280692 732082019 198886272 217983328 294124464 731125289 740831692 945441623 886748824 969898361 125157844 938802981 351397474 590412620 905963308 940747545 44617483 117613455 765851854 892828568 705887833 771062137 334688543 372971717 470677746 551053916 657818259 666825424 813162899 885257759 650179337 880975857 933807344 940328877 897752807 957170578 568290028 892822278 527980469 917115324 11170507 24073779 673446317 875899030 811322671 984010660 278643131 544127811 235723330 973130479 725053493 904324241 873972799 891493807 847877571 922453578 111006829 734128361 483637326 626294242 855273912 927316805 205283116 249455307 971116864 991842922 713949598 918709482 124187156 462221167 562251743 984667040 957660448 979648570 73533037 483876322 932454300 936291311 381206944 827220260 300021214 556254163 602901185 670872018 149646526 788605990 659448246 804263790 67442936 158287435 247883779 954188609 532294952 923983718 388152472 645521075 364704279 866132327 970325028 976422102 455592343 630648531 566665772 864184395 902977733 999218624 631087754 749603613 992876704 993072898 616971906 846641065 171595418 912087591 375856751 599132807 163894580 670057238 827776696 960892523 685313141 984428477 260131473 376138425 924419917 991059050 323257281 827600945 292190981 552800942 722328250 928287051 781816419 855941496 713578825 901720227 676310722 942664179 210249746 538890181 862942944 967277132 94467744 486982751 541712495 593398361 439901871 734100213 759712013 961712641 122305363 163254279 304464254 947462058 910426152 938915686 644338091 698131750 852677665 853297811 625701177 792952043 141502948 407333362 639447207 931773607 323058821 725378430 623728536 665150967 515252602 930075810 434676106 794750508 63669830 252765447 968327867 979822810 119322011 397135190 101794647 507798506 688016402 722920829 470233837 503554724 258477528 411690972 23957244 451861920 99996178 966791574 284553582 360189366 490294886 684290392 533335803 986909196 492487861 721994044 728593348 838378225 253130376 500480019 335557037 747347639 354083335 891853986 324840857 387880554 135070214 383283209 199795093 375536176 75954703 368452408 699857875 980869124 563312471 951684552 221396603 771792452 520312999 900225976 408402313 591097503 642932770 813624734 560462573 576092321 492233442 744141499 168027746 280532471 746594505 961630913 474459190 751641316 919902435 989678802 539049995 547566133 174205090 745433436 230287134 914302678 422323665 882976953 406922996 764985693 517943422 590101935 65783493 145993826 795600736 855780073 487051105 801073920 102527440 993661554 778378998 903652735 450070616 673413045 143401485 822481731 132021684 175434018 367189735 549533274 817937262 831984171 157253684 530097738 863193274 907820956 359523308 739029137 777706070 827450434 629796968 653754572 606298363 986656452 795249552 812767965 242875323 499661095 378545811 426034949 217476148 527952466 11615920 901787299 763341539 853783799 199289975 454965221 575943720 802099973 747401450 933807541 682589549 857074696 996381937 999126692 440721395 710229150 597388377 766769541 208324783 603818295 4761195 203883169 951360633 987316007 850747964 883799938 708297324 933425635 306306152 724225679 125775629 713358870 468719341 636003732 613727216 914830427 273845304 783664394 814075488 819173820 478537727 814012527 601648177 720429489 122026617 530480275 779915860 844629758 700279027 796794755 676102955 731918005 123535451 704287867 415744923 475408903 369730044 979481240 481525721 633250171 155184080 499618620 254674929 870752770 756604525 918782017 227141824 616133961 763717773 807701810 128971402 602756542 147857997 649348386 76041654 330342551 990849216 998268344 908165239 985784396 706561961 775684540 943950651 993366887 619111285 751892498 728347284 886281602 662167291 915625454 974689266 976251109 762916335 787573444 529646137 634060642 183894079 314621505 203195297 318579673 958064286 990551273 932780209 972272058 364206913 762327219 672067752 984146428 988002576 994539931 775510920 916606690 916995923 973949528 57753908 263122793 82063841 341734045 180119447 573445676 600330109 765663898 493922118 825242425 595504434 853304670 178405806 882389847 598247497 787007125 229562509 939928672 764038439 765715505 23615378 374691923 898302698 954078878 538526810 635619458 751979771 910836130 864256966 938376347 114606289 797653451 766282899 859504869 892882289 901399866 888078893 943799335 755083413 912599501 341757486 864999301 854116109 929392883 242360463 318303823 323030406 891409469 16328366 41345554 408836890 956073104 131444732 134161314 426153571 701646918 908848021 962384767 50280671 751863871 679962280 864557074 40633727 766176464 977126050 985983232 227067721 478062084 675246568 822870829 955969721 956041325 603445958 867445026 253836574 742334132 714139245 908557243 683130331 737416353 17410085 177879338 995223185 995862857 545674718 805806079 80685649 581250700 153216754 431659573 361357134 667711376 703273810 719259682 660234269 926571659 934614443 956039884 739081143 913345915 873404890 982630213 465997986 668775331 675743309 994404170 630626768 996483736 325114436 893852787 30665515 697002724 91020259 355854443 673439693 802290738 717340654 717622267 301878118 713141546 6683788 901840081 589153722 669089842 798221676 903720684 299498222 396034571 943385941 999818078 22115932 203237007 181369406 601770269 822087073 825824495 944148714 995075067 583302275 945637127 392775952 648076648 45650088 796747944 544972772 717415994 575611672 595656610 162312606 671330565 321526545 460087759 708466751 794419916 78021635 638559360 671859101 909956458 707240123 854405859 321296211 755020632 393238642 844772285 565715890 935367885 30498123 402416329 241908668 635544547 295762676 933491365 795795249 880418151 198193705 444909773 807291846 858912744 429581759 608504882 950636760 981420092 253974376 639828826 508790055 770890276 69722459 561050682 681066041 945734530 62056418 681952076 120391411 710096480 190766175 228829534 556401453 839996981 717645669 777725157 776837300 853644718 159293440 994996217 586216171 693568491 373417820 595863275 936279848 967671246 806391288 902414932 559535305 845651057 744961861 880664506 652162065 726476696 58673867 694627929 390682613 407140573 603667830 681953645 855551877 940384782 61515299 196213022 571667302 576787731 434110193 728097299 835282253 917144000 941225770 958313229 544957160 666233300 804254680 940543158 628790867 851185479 264353172 580276526 740570913 839113832 456861370 745234841 549359864 998273719 623430881 697651754 468796240 790110161 141884797 410707046 860307473 948583240 90258851 927374596 566366828 990980704 547986489 787792298 773371746 831725711 360275610 486741330 208032049 643797376 344795109 903784856 566869405 800448447 428136026 561488869 384937757 436275326 552451822 880449719 423720472 450781348 644543534 708272901 244021044 803514660 928451611 936527229 504312547 573281086 237435899 471339305 97202242 750344119 348776981 629366901 277435240 586936673 481337318 829298390 308270149 885313200 377219426 683222586 124291380 127814833 149369303 824305249 144731411 211532671 956582559 977404856 556662064 971299504 274381284 980427558 119154533 410968017 374523806 495469735 727914588 883371523 776723661 916225029 396156378 799833813 307750478 889962947 459668307 668470318 983450427 983463872 832675664 848808975 447716600 460133822 748093407 983891263 72641339 654532244 819737534 844758394 192999065 928902573 255831655 916555258 315700942 675254559 532307430 983863902 460208511 885095374 108201632 996995912 390476904 810259998 369939838 554752157 888855285 984865904 95520572 377718046 825801554 937001109 7293016 585975768 365451494 453866115 461442057 739002516 806459949 959416894 560584105 700496193 758169585 795384437 349735924 445591208 305456312 658648231 121788118 388114500 691321035 944596134 529280554 811790860 725071628 978212396 23519421 465009697 869852059 946109711 383604403 986056695 103860563 393963355 847502030 923352432 541051612 780979702 210279028 309735666 647422918 931075623 300683898 717790119 610897540 757505124 176094373 347725289 329247904 557098349 999503516 999918238 650553276 978235501 658569733 938176888 159957058 261041045 468460480 518770935 759195497 878570076 154637338 781592661 470280771 630622157 616846474 717991684 473059338 806590020 389174238 760837896 653640537 783519279 635053485 770046700 799527849 912568751 505462364 827542815 951296437 976308633 392030459 515269973 805576801 810402881 759046623 867356510 936136461 974137708 269065918 720451282 927362318 980058269 426617275 865128909 759858920 954645046 54070430 450789066 856592669 910715666 327890591 434400935 963952882 999106645 824700376 855252485 845320684 861257982 310485975 485571173 497439471 767383094 739200036 742547150 675524883 833319046 562356760 995971894 773881963 945133832 711093738 957253097 969456994 998040015 462124478 818186827 305074919 975671468 197875062 342507607 785306198 850047254 144358603 422901527 824778670 921523670 105190951 718966224 464076902 928328022 349791133 835020125 545214320 854303507 785248702 801143226 140708506 300421090 403162666 599073978 769492111 890856310 861909326 966640550 87773817 434804819 2420635 88735164 520482958 804872571 764332588 933315015 758207358 838091586 707813051 954528609 655908508 996117762 822455106 846057392 467570131 635341241 734793127 925929743 659131980 960358030 540118581 928240514 745798508 821136169 14928311 866746221 372748283 422370776 252698618 347866929 500549841 969980635 98180417 413329165 971205757 988759465 770031255 860366015 973333608 983551647 227746505 946945998 428313760 484160368 780612021 879635247 679932747 974291169 725894941 867822213 129888465 258949113 475406068 717239426 368959275 474458330 570679153 841898729 29445593 413756626 40019182 792292132 812041127 852249949 751983719 951817179 586272991 604060037 738254057 748770720 234368505 716756754 277846565 296972363 500545757 546864346 653960856 653986666 548425131 933886384 654375426 947763126 537621673 654501958 112714994 135063167 823034542 928464950 995013587 999580878 248492171 416441333 940233614 992983039 571197940 992026159 88374043 547345983 93834850 818150704 844774352 995472314 763921855 859673150 438833178 595620125 394963411 879550152 113539659 613902750 739154724 834131981 412820587 733447708 994501958 997253167 227524068 390641645 951585848 997313765 690073844 940817752 13053379 128809600 273632899 715513939 4999369 578496943 943864120 958616823 948984773 996303344 28434302 28586759 680029842 901999086 255043700 376819222 954182478 955442613 831432184 985674538 621996401 646711374 133678160 198783742 615918524 652523623 496422798 737821626 114316402 275011010 458296524 891093767 81980535 921437583 30460570 93735190 306048449 502565696 676616356 975668308 492272508 582376234 859364026 961273621 223607023 895084433 365085948 978263965 844806371 907689443 881090805 968935197 343422341 688158917 715040961 776920584 126129178 372811707 104474019 592576743 70192056 734233268 417201234 503916688 619001576 842458104 635201148 675197588 328536993 862031398 480258494 951795955 590130268 602769293 492769762 575884387 502539800 993713729 691397041 941106901 6076339 643716807 810411898 881073620 914813971 983444557 427770768 913233266 907327276 922382430 297424116 706093155 102252572 970724184 755201211 763213105 225338115 591845091 189435202 439773491 670064526 743145968 994008457 994538159 425350050 487255353 57189649 846907206 479573106 740300646 778138271 934566994 201062502 979698837 594798207 653028522 552539447 909752946 293673281 616947089 586545690 746867686 869570406 873941699 594711696 781384807 224896209 291073732 93715658 108302566 248053372 789903393 687031618 884917933 891509813 898289834 458448994 685613639 239267736 928878963 978141636 987188734 797033104 974532228 524291829 878164141 487719824 882743589 211448611 251423556 787407155 846142052 75953752 544693526 524885073 606217096 563747059 590186086 825767514 848010647 589145114 769319791 408311688 887324315 934774470 946635453 512389323 600483864 33463305 576869960 84937728 402005092 678913242 862043811 897589141 953098626 308319350 676005173 528403052 528734677 613807334 799029861 440157670 546403054 968754143 985911646 902859108 967738681 501868222 885709320 251486419 939783130 191964379 497497778 398918686 949292755 403042106 536500475 586485727 806209706 464729930 562299375 187949367 538153953 462012537 595089350 730037730 907283309 735518408 764361297 707917358 856642160 60825358 285100119 660183754 777933468 960610895 977054804 263274255 571895146 699460971 708797046 129700587 417165615 813797972 827215053 245977191 559399577 543064106 801427298 727752728 744879082 266561148 824542638 629835678 779793588 39636924 720092911 210808447 780560253 31611270 692797557 240536023 345783145 555061985 650634190 322316024 862772280 861146356 975722704 888583540 935191943 736187331 747263354 751985195 973612363 134875781 848360012 638283666 742053222 838077022 863807909 804529344 854977159 133680125 961455150 187017753 233494282 937649004 953649825 962847397 975971984 726458682 960497303 389360147 418379429 398121076 531373223 435863516 670414690 16858565 850886696 949321062 967100017 708934862 930023607 39402525 297223978 947668817 959659605 49829359 641155103 710375771 847083557 550471370 863088681 642053330 876700421 736696156 949561628 581672393 772183806 500968008 911519032 630820100 883986111 885869321 931288137 179294776 788484460 406114805 818454058 60471500 83050035 613388924 705772029 619808682 965341193 923505477 938172765 891108577 923374396 64813488 172303961 882640276 997884317 402318710 832706804 898622745 991459337 649902071 929354285 407492433 874190236 407500195 669518827 559736757 568922406 944103949 959759660 533794158 795800480 190128147 716155901 513491112 697914528 861569495 979704253 928473371 977748387 340881406 436257422 726872647 804521960 746881345 986125796 274776570 372871860 346452104 940988463 680446714 817965650 10068222 319129664 85898809 587506787 291553041 510158756 979830116 980422667 295176648 787073321 578549094 818512045 408556087 928655744 997688727 999757430 960049257 984894073 242817358 613164867 730529110 781931476 209519485 232889929 879035626 967923302 520775917 965733899 16148368 728259657 540075451 565508969 299830833 478508808 851713383 875458133 700281808 725622627 906660071 952987604 724483092 911739720 332712125 887293393 230877975 691851402 217723007 695480170 761321224 996221548 154513607 942228346 179101349 217042986 210165063 290715904 844716981 921868127 939590204 953067281 271388297 604037137 892759304 898877706 377428701 466207686 888192498 973453785 80138444 138725221 504898021 709253970 54681280 772875947 912479002 953755084 109948438 352393791 419609664 645024703 28585829 620110246 915476880 977839413 340103942 993976944 6548386 594732323 302270778 574968129 735733533 894957529 742665317 870128653 982317946 982610083 447361389 913498164 578966645 734897075 337420768 425765787 747781560 932627306 711664938 982344443 463925517 621948893 121167801 889003812 761708159 859546069 460143485 884864372 771903695 987222437 173769971 315437307 479865948 966528631 226277551 930328020 796306833 948230215 807938455 878342725 899388699 941721183 46657341 978635174 434941812 727552047 949845910 988384178 600853795 605869597 814255356 936392894 209912815 491186501 855321611 962073543 751898708 760912295 701380675 754927249 866300252 881751680 131493902 245333702 296914613 559730783 468641641 675508550 56470310 648882637 618521232 981602250 948913022 976378862 565986944 813278490 66523223 846743205 268491167 307230032 767926360 830972851 459816134 887865181 468115535 880222358 462428502 830957764 853901149 891839818 926968865 988529036 821434310 973470355 424349375 631859304 554562228 633855154 64728593 682632929 946952185 956574014 164979246 432712620 551393891 953853250 943350954 983446148 172512713 182319320 565708744 879198599 873368919 892603817 470951818 854026773 149206550 477211678 490720246 875242855 392748099 828399729 474187726 571056895 438607329 990483412 861111349 995696786 684224886 714719182 322036873 757107194 323033470 413848972 173828709 664891077 616793933 724546915 228856859 844094286 38979031 317736972 316556607 846448816 382375481 727239692 999087568 999092877 10269935 645827970 108840124 879978143 379009437 876060288 365394100 485500003 256844412 380534213 467691754 884368349 809455435 901414792 887542358 893126925 965674941 970681136 719769390 734855441 301240474 750275419 644402172 929839044 497188135 631782111 453827304 513106212 984976236 998401291 263801062 591410159 767715800 993298599 137140340 711146256 237785090 355785374 100588474 333702238 154337969 754500747 879545581 894461934 190810739 602361170 723302796 740205827 941445397 965750704 279339951 722339517 383347628 419226017 173584129 442444015 707537675 769485577 927056335 963312101 27377910 621579839 368327587 976771664 125602416 235784948 922937692 932806379 32110764 305946020 915802265 963488819 636252858 679798143 94432198 180007623 52311124 136015597 661288464 747119719 847735947 860809261 482465769 923320317 305227780 483494191 572870599 738269055 359414886 576513063 684327115 802575972 545530902 573310076 174424554 914211471 195996962 972143519 58552752 241647272 5270691 468884710 150771986 537492689 322230045 707981617 948036731 988134420 530714400 743831707 678308473 949914828 453567419 881349749 336781068 832971395 718397453 955484390 726840971 735625257 293935084 651278550 360648141 499639372 884486273 989906165 281655854 852798635 430341447 657646035 836949508 905069107 383796619 603220726 981796488 999853478 348215355 985598524 903235822 989526937 214165204 972311090 624123455 892632036 650246400 770935649 148304360 294341994 714959808 777362287 594444211 830148134 302968153 623209176 128310371 253248750 612375779 903328969 672176872 686257761 591868758 932562240 212822318 913793717 50853871 340526174 794361567 896321175 260676187 282742088 525260409 596327906 61131789 823721985 34760444 730361341 660906623 852902187 487362331 793996852 7255779 934329429 659565843 869921479 123248039 769972535 954585307 959625428 444539953 579514075 631546267 650845822 852338405 963876357 478036162 605814874 753616601 900537182 732518182 990192288 430169608 520910008 455635845 606368586 307628238 900435100 45652906 556654394 792446525 822188109 234865612 913848346 224094563 999694263 283891553 762824619 145500478 821706659 872328265 878918714 889572950 918753997 285065005 995100420 498351236 588088321 103413452 880115790 450070464 921045985 364003995 777496107 831780243 861526856 916042741 937218181 850428387 949738724 782659302 857180347 619197439 665408869 206422358 422514250 483196427 640030490 586908963 776840285 250877721 761900903 777305643 882645993 832042909 884493376 766213451 881935683 830704206 848484169 324379117 870965068 105671423 436098141 911829183 950838454 972560479 992111648 625305193 977592106 84152775 971870585 181096833 729360525 266768944 774926694 606914400 858071721 321260918 880178831 503001377 772591942 689916027 728723040 402135745 513464811 82115072 603504047 768604557 837406826 898882039 920966587 515966757 920180428 529223532 975975322 742309288 899841988 96262065 653583319 975437497 999865329 801429782 835529351 931073970 979180357 368702425 804637594 858065907 858164052 934781502 959240650 347689006 697101062 842836847 929501742 539252813 930112273 488861140 794811130 839391345 964481604 232237453 995252758 791997972 821347392 936871705 959221645 65635196 892621930 798241243 802048580 343088251 346702820 162823383 936198258 408751130 547605364 266025641 934682414 60127650 222235401 916609527 989437684 3705250 261950533 692373055 976601836 193249286 842232402 952782875 992422372 214612247 375438824 935024112 959584815 366159104 529869813 211298872 642000731 827250005 973946601 187387883 342308903 110116889 162061380 681036546 684081227 167907393 214615357 544749366 645598912 662719582 737035376 934706499 940492110 526079610 752759252 163586170 302242266 681608595 970624327 212558256 267135853 661103941 854790144 820070745 933435239 310255340 945084390 107641459 609765417 315554955 665081884 562621362 613380272 488456143 916894084 389642822 391126562 429485393 474131873 227963948 512894612 736758865 913751330 918163670 964571358 816466432 955877001 523381294 783935804 628137312 954628973 517033573 808530524 361068327 693227348 595950383 792978446 774562312 910709553 643412163 774789935 598991081 894393502 312966861 425244798 159222682 248609143 743442251 885147421 459178345 614417557 284300896 311708592 479956398 858196253 506150442 626196429 974119642 974148955 870542258 974109313 490194961 892509391 750854757 952546454 275484943 525299695 639356267 906288550 849269188 864129566 929556254 977912961 995513150 995981878 344147925 744610585 712762151 825360206 204887743 750438046 82995146 333170156 320438475 652019855 388283400 494148688 388518980 589616337 714225870 835032736 780103537 908024067 944305814 989181179 73689469 575299120 483478814 924222341 107280872 876397110 875696329 982368576 595314337 941852389 127252552 438848999 773779643 917073826 934456407 985786301 214892676 358301615 552976033 916984537 235491838 298022789 174983578 730486980 803165267 962406346 642787223 892154847 416511156 885936949 993607599 999383625 532555224 981966893 761219672 876212795 48780246 369537225 199351413 387318438 534362926 561060942 397734974 709954694 427729104 629075174 965562575 998481473 474002634 560890383 740145716 939611657 260567287 422950352 931334036 932202652 343933772 745210585 695241713 809762874 556897392 564914583 777040995 793458095 730444528 995586930 342905956 627766663 332839059 662139711 363742336 769567305 331422416 808068964 315368513 489963243 375509064 586922502 102144909 995326425 82345695 138755278 132086991 303073542 289195542 514550549 84215608 495342692 645356911 980961236 803560969 892619921 154372895 597053430 235480472 708812454 934918882 949727598 309281762 812409581 526829210 606468085 172012679 532543817 147835820 245447207 901767489 990152649 854267512 974081620 438487678 595451075 937675139 981776352 660765009 671581674 28081337 289095007 180297329 619391337 534932808 831888994 50240951 346579313 309294304 346884743 30853816 316714465 397610275 657590854 951954641 960762460 869567790 912484110 959351501 991992438 57500226 915246334 517184354 875394134 1129403 389442979 292347787 889712344 132788468 202794674 991348637 996468196 59767028 666662085 601709040 911875107 137143775 139909742 684549382 823555008 905298680 979946422 568378031 768056011 704218652 867733072 158454178 198955714 422247084 654683384 440284783 940694604 789604524 990683506 322630614 368768333 853765038 933050307 675156264 842635689 198110511 395244812 687996281 739403327 393943707 988650631 579634089 637139148 158427368 984748673 727222380 957706382 67375541 208009577 285778384 836617005 703530374 848754483 400165670 815612163 943291292 973466559 594309735 823784744 985020054 986926453 627066370 904563014 564823642 900293302 136092633 599011306 368222758 411355253 568516717 598364144 924753036 943640048 690252021 810425139 114219053 888880116 298737700 403905917 531833080 737158111 352838053 378273742 603812241 995742215 995789779 997780549 34940234 794698156 401308362 936056264 84485488 790395365 786617396 839544529 129268009 188269257 345744812 977476839 374404554 842963569 705686675 727003282 926101588 929308262 292349056 961603384 120324317 167459364 989529954 998666675 782891952 797474163 403723171 756201467 821299365 875018044 793755817 979690689 344056362 874923557 24853244 446731305 664516140 836565183 682818022 891297854 361971370 521464434 976356726 983388538 701268747 904729927 340369487 464359614 694745426 974204128 7047129 751199906 245471693 352349520 871848083 903066523 9152593 347123815 36881682 619292411 153589082 672895817 286594565 919039272 16953443 702584150 581978083 899359878 452258230 972991876 213443280 329557677 321498070 388205681 24098026 485841990 432162913 526122340 443819941 761690334 361625018 843044343 280364349 932178761 520560523 617365323 249796353 487387800 66236189 125432222 193240543 292166994 114170413 446787167 236220782 280671961 82472634 130497120 341333272 760426208 708860086 878840370 704630924 762757999 700734561 955810347 232580505 568768754 57667442 559875621 197183761 549933758 494918673 918569130 930143249 987812537 766309324 917068681 617891227 927577686 724537917 805838968 398221250 591997116 714056583 956258783 783434909 855402441 735476621 868650880 390533275 419721673 749647445 926524188 110559169 768010143 998170005 999891224 57895948 513005706 433679349 595035665 246292006 767373840 935060726 977112848 463506068 514494078 3178229 827209682 831927549 993971263 819134211 861901329 913423622 933030227 769907388 861765801 717128691 933113314 108460782 183005839 269127987 596488046 650652316 777729632 483458603 732549945 655726125 710275558 904059276 966941980 228718515 947366535 487411842 956881062 5006749 762098046 948450891 985369644 968595775 994150741 991721440 997107511 45495881 729207668 355999179 677398339 10184428 245619289 630949248 677143888 598046866 976976597 544159979 937879881 839624105 896218881 308759463 735590516 817205660 936231311 187126144 791826405 157954694 885934475 303136033 885252354 991755569 996940346 330107023 700052219 635778140 657379491 485586290 539625391 742262857 860810138 362113628 695311631 982754784 991562942 773002014 934597491 170701819 587098725 233489686 485729685 371863726 640182142 849339517 856940222 7496662 183833315 629464266 655088712 882764809 904405733 201390757 449398400 17155782 981479202 288688840 307519335 558571663 905053885 590122264 851360356 182627882 848834229 215682446 260566649 47899077 753953988 459483471 773493385 444204229 853873263 993061180 999253342 344382945 350606990 226961625 409988703 501894306 879822314 229919958 914954877 988290734 996397747 357061169 722399952 898919827 982683404 282462325 371353869 915039953 932431166 574399869 688745846 541890048 933977725 701566410 732161953 177067261 721960261 694400395 980086083 613893743 750531990 426635644 443714590 639823465 742332347 443942165 834011343 363569534 369329046 435341112 554257696 363061644 408937694 630600768 641916486 791066875 822182964 64691608 404018588 149396601 307609954 670082453 889427213 430548675 968079756 351377650 748416061 450851140 843601360 180573487 781788774 109216869 725542735 869666343 986834596 678486425 911380983 293825482 865600960 148558789 371762907 699861780 969980932 876151477 949505976 44689504 121703121 913491153 914367372 352024243 760307204 394510707 880382810 745210175 762864018 665312507 902703126 833883479 961507709 110480230 986372364 21907934 69361665 227133876 737490564 228678780 280756152 980592683 984910953 553917575 803080570 429123397 948924270 16899270 986879101 651067738 829163443 198168985 539377118 869992369 941295597 902068790 974650882 407530996 472003618 296144271 838697355 815749724 822232323 601676770 730526226 305442674 639057060 773692441 876285428 224021563 450536054 734893975 881625592 52195558 779879429 301442382 984970816 715628799 989009600 362841054 547184927 861331233 971100244 503876697 853819700 947140698 998305638 168773649 270810710 458808220 904816344 230992077 945542812 39944681 849456777 754633315 893577139 685884563 928418788 347925408 720960015 309783100 973639616 95843119 780361912 262873788 562584670 740955371 810625033 648927913 813531948 409077638 428666778 463310935 781615626 212719550 859396793 239890686 750263521 755614887 920633401 670202438 953389645 748103020 814788309 135860276 359712906 419430371 928475329 387356879 650625433 361666590 423356097 673254962 829585066 508387557 544028586 260483243 443915824 376201174 870602523 561309286 819811996 897606087 971882016 732015678 866475140 927778520 961943969 257223584 913915852 361873806 844034166 907098222 962619293 40372838 676675885 904990172 924600833 451948391 896856080 783209140 957995669 515354602 557655576 35012682 907751154 562647706 844588154 939837787 979541780 989666340 995649906 816412844 948366596 342349494 466925923 229992267 887842773 186370071 341913416 554252832 557472323 908654117 971854863 622750654 920956693 389226724 730066997 1515988 194013805 862701273 979961143 297963405 468154097 395252712 606864752 70276288 714809442 315181873 636890080 10624261 718572110 723908785 779432986 428238188 458370608 66698874 635741893 415866657 925389456 5015720 291167642 962759027 986540696 83258125 150435008 773557464 844547294 575362288 787734110 898019624 899951890 220268814 746541191 26667667 203596954 752383352 957372073 741300948 897690964 351182924 469985134 254045942 634479187 30523032 337352958 859021780 868455111 20505943 922821637 843876950 855776050 152648637 732723050 114998858 648117963 213215179 835495505 928016258 956125540 910299698 957059324 862849954 994888666 528226344 883597436 283802142 550726683 267728981 741233645 437690034 590811694 120744237 805930029 620699580 650451042 587591033 667282605 200780812 728499112 226955040 883879612 327165090 787943438 464071153 543377283 476962182 533692088 796667857 923324410 499793402 917329468 8939473 710039536 12096000 769280142 159405663 187000374 819325342 859904187 195991095 592071003 718217060 934748632 438321737 580108420 62548790 683463993 386853902 453884924 317042530 714304173 574663083 639323465 503025980 720783207 192299528 685271808 290347174 896680023 783831293 880920177 185207316 859764847 369582212 773193806 708934319 989997843 858623569 945422758 530023632 895713911 503109231 879235680 18513323 419625737 39781922 680603814 851799138 859275368 751108771 925704852 806483655 891841250 129815183 955208305 557519434 838883454 876073733 994101829 370759792 395972574 82619144 162014888 757609372 991940898 486566312 501266807 782592726 974302271 134675861 333110515 9713397 814740921 348505161 445932913 643654142 842176179 588285992 769103432 272282987 911223877 460452895 626447077 98048690 775845188 325132021 866676190 420090175 685456885 656083406 666028975 46141498 362065098 882859734 939347915 566411451 628586349 737254635 854419166 368463778 632471231 123513951 413986109 562728230 924089402 411846969 950770092 65088071 199456780 134657143 489098025 660451642 710027717 177247354 269058082 721118782 808974129 976269260 985381528 851436919 873918174 805459892 864455977 160734147 999307744 669568356 994976065 646521057 910847076 345752165 559983121 275102046 599448607 648656607 697024756 765543262 973798128 41276145 234234562 501192458 651335532 544734371 798247941 85714279 272175110 77807641 661362684 406820535 580248342 960972654 988586057 160149113 547922608 930995402 972459506 314743126 630106248 479145553 657730897 285604587 996800348 758864315 812193154 704234762 842934232 318868085 716082127 350749682 771012731 669040249 932482942 654382359 741297632 397224986 556441820 15373513 926001600 661398852 866234087 980873689 996273128 725985757 762594008 96582844 99660332 106404732 611116538 501780820 809914922 610378806 756413109 37874540 553409893 472538269 870053116 622440944 925971251 225106824 529311036 843619266 956622343 565999957 986868597 877915532 926751491 255637860 627716097 455230065 653540785 231743859 399437756 848018656 939898909 971411255 977059494 251567061 823121195 631543684 866324269 954364935 989832679 282170205 600138851 570697215 708600880 413699906 522451289 626856039 797714741 82213652 411851990 69435161 484566259 328168141 331185588 441250613 636783266 744953574 794481712 623402351 769628871 654963202 902624839 5900244 194140597 596579751 717380554 724858880 725207022 427735623 595647397 49070993 982353689 309076893 510356067 732544443 901208168 162707239 813717794 332241475 338656317 798710801 929801124 878253036 897724675 3345452 422178013 762338756 765167088 938354577 978066854 244387850 987649171 17521119 612013643 329963954 479011013 546565742 919562066 141636713 729642479 547122473 721658461 239604010 582884605 759286259 853067450 643943769 718782302 222006388 638725169 290270532 945138848 190718079 812783430 91535728 166384324 564296220 887400149 460994026 809954862 764497380 892057388 113269838 515648490 963222316 995612597 911076893 925263331 402173100 501932265 364800003 464699878 890222275 942909538 645340381 832008394 354953379 424662679 933631474 986908214 304555274 859930377 23093832 188751787 240354620 528251356 489297360 675539466 859826892 913917348 503278921 611964133 37816544 923907386 985805844 999338881 152029353 525599251 772859969 886201838 202825740 420112271 559718321 877997684 760987498 946415799 485418443 710286602 123905019 303590629 238598903 965775267 660665276 766419440 831038490 958696905 485896732 723977073 420664248 599050009 845114040 940624008 715384636 963215342 758401012 922771105 28989048 378036046 206346271 686450827 791638415 953183489 993636661 994763651 310590388 633637304 493834950 818656737 970573722 975235723 461133864 645065543 546092343 920751361 748608536 888811959 509415708 713936249 494074243 588179894 765680450 765819882 908364916 950336305 309714018 933860695 78635187 291360601 846962010 997206792 473145964 738793476 883931986 918371183 687040828 974366888 285659766 508921697 209833461 330504606 72823873 849954363 714884415 857879231 886755624 989059016 109182740 732635480 739703023 887900589 507453710 698783356 525541532 808738736 5801867 203684527 910971502 923789824 686100357 752439707 686106096 783548087 582700093 851058856 133318008 527662872 51236369 953322306 910120060 960507378 895896628 926928616 683641699 833449716 273548066 287417824 400337069 695293278 421893003 579338755 158405790 279053454 850961580 999541761 99935145 477313657 225327884 568304565 419799659 785936375 583268788 730917748 22889555 292197903 448769011 609809962 699274925 780788402 372614219 556927599 615889097 665781210 738528833 829443000 959671720 979078533 18751283 336121513 198784644 275972279 549750265 998899514 398328266 847245586 696866041 795778940 161991740 824056578 264144692 502797860 82938351 938041678 334546388 870196841 381481756 475477423 360634520 375987262 616417416 730336346 271447880 707725062 228589268 375205078 834199217 855752846 383558057 868143729 513627413 818250709 7072814 627862131 807931532 986814316 858133600 926912852 870026962 889721884 197232471 965923589 839574492 933755181 203182393 535872422 564583374 767550391 802257922 844986106 59894399 640528866 464099495 873991903 525981319 830005537 921930389 991791754 456621214 776643382 926037146 994842412 405061006 599080227 940718619 968056137 615306172 620227154 926240149 959889477 354142322 811753976 506633163 785024776 278345987 664357321 564749407 980230080 642294542 918896332 451097103 684661662 509848762 690559293 711720185 972285812 415594721 867914611 773180543 819479977 538072495 821014470 792674158 970616818 732046197 787766811 950028067 966625641 192913102 250413453 960701439 981605049 206999552 600950576 836147626 908698686 564749262 674751532 45072352 153681732 355590465 607619494 385957843 808095099 684455130 987289731 391523174 602193367 142716406 913957456 224285377 713663265 42839138 459441691 336998927 345670655 311269973 320448377 540239991 895653837 236853391 461738353 65210674 134758161 147367021 198267157 739760773 924647163 901660990 995178866 673142875 861059965 803570716 807325431 588516055 602506381 555650243 944928575 703141344 974510548 453741588 753647382 726958947 983357566 258556630 446231380 271279824 347750838 663922607 849377509 282674180 763184574 191181668 813477896 250264981 756031718 905961703 998561282 526770160 883711211 453282054 664373839 110199454 868231780 108611342 196345234 408637662 807569281 862605372 941121445 897326469 935733838 551214705 892961413 708329025 778251365 695233061 724606268 512664278 889863585 441506644 880132949 588815714 973570335 245626322 572525182 14923154 694091548 713764584 973222827 654177567 780198199 125305468 770725993 535155522 796989275 694649304 908393493 266540925 774928190 53894635 575625720 554214181 916071366 694168674 940587195 825926261 872303054 815321887 922392330 732204638 995108524 99706801 896375488 681375537 797019728 937182931 971987964 135908989 151676410 39020619 409081704 44155029 703593000 72307742 81513808 174744879 437059325 291394733 744534470 573421461 655627343 130380651 868156335 665653980 990095387 950962054 966810459 111631126 862597507 398342584 737490535 960721106 997896424 10849312 165969683 43169456 849298031 366593010 560280698 167037521 215095302 62132634 998788424 344403136 512149246 703970917 761233905 439766748 927530091 946157943 994155859 701896734 762876917 238784201 985996309 668354408 793386171 955095453 981588001 8484008 211534555 634203220 640144472 78261286 802212050 53751317 872428701 567481955 645754713 349398123 953452012 912160973 954117615 975523172 980661491 660016875 949178594 383205202 703327140 167402060 554850235 905334988 951247301 611730040 895434532 805598915 892474821 154236633 758507747 698043261 814662414 793620328 873424815 648108815 993157459 589634230 975440079 199655268 498752309 50962725 866506685 513949833 549221389 548394088 715335764 964889597 992302331 136337693 795775802 224683449 518500128 619746248 949129415 626712891 852882241 657302932 806447329 471870209 891050682 508583060 793011966 489311429 979174737 102814795 623579176 784290181 832145323 48083266 530489855 753578782 824821420 6930738 176370714 340917444 578294950 568854615 828935484 691713499 943808281 282582384 322165211 563028972 952833231 746536278 905608900 972603982 990504606 987043499 988351497 783769073 863234588 44949222 144342186 601274901 894395438 710893470 912035313 943277069 952338136 183131076 546701013 788572374 809689418 937302628 939764983 897720371 925494672 871005124 949517848 598348428 930796212 708210330 808039822 958297463 994438275 824196449 961088241 70968798 572024339 110949168 170214936 643637631 924776144 785940663 849289708 52672829 959646432 561257241 990946797 358881509 563970138 177615360 885937510 145132377 839352124 919540078 988247157 188067864 844965344 991836885 995869142 787213284 892357415 556933463 853170661 901510289 993166967 854708676 908065056 436284848 644363108 158601362 467018942 832611399 915397775 313079209 326042806 788834698 963353505 26894276 689465911 599350859 769129948 909298803 982813623 315960142 697205522 549294942 938268545 250021241 925761570 391888260 701669015 775800658 841255511 511565756 821030126 547446023 583873143 604183343 834060091 849271735 865257612 504631541 935737167 477779351 746346044 795083382 943576817 366056645 999958695 995828481 998333645 252223054 436575224 209918055 646407069 500695441 979496891 21467163 938519094 232723716 693643554 494354196 656443244 4272349 93624542 289176430 676085893 941379632 997068371 791436725 991802932 150978692 478422841 109724960 864592186 6163218 600755869 983430505 986982301 901599946 911180970 863089292 878581348 877240950 950178971 498516459 849985633 762368656 792622821 820752760 907636514 816382491 819348308 4789097 710240456 354579943 711406334 328517407 800344242 142474445 852835890 489604328 731513417 970084397 999055434 205728121 524763530 846490690 998705990 274108267 353039871 618624195 690662538 524817317 897888612 693345984 884987138 114693939 637237352 814442543 934406824 920767481 958117696 760631933 816364425 355096517 554531028 698032624 984513925 308496746 977391560 251635985 273408802 697906578 919187737 18693815 903503934 475114059 555149055 618627524 713057539 351657392 506493996 824876274 978463599 185349839 844057334 446460197 625512969 349260639 892750079 856786847 999425302 868708423 894570954 13255346 482745865 368656417 783779595 43396911 277767613 87337923 120568688 963676148 972000507 724299842 951088083 33216912 580913849 242094970 303806968 365401914 922072872 330503632 859678516 356485620 608252304 961206390 976306184 164118496 969181407 73361141 406166089 702559166 935594161 350088305 982819711 455797302 981161044 720714251 925340252 305685976 501458957 472760427 867779875 488216576 617903140 972903076 984109220 600206571 997603241 823102290 908570484 40011164 139724636 445888461 720345590 155147140 755102920 925969261 955064857 510569830 792099421 61914724 769838929 403543306 498123831 525878424 798697432 524141885 628705632 373155732 497697220 910730808 971972800 367784213 556505501 143510914 360903416 612475409 746983083 8889116 225967363 676160389 920132880 231855279 881751179 492315233 726148625 13194959 318260237 890843088 956439087 543633704 709738639 68093673 573560075 25989385 377637900 957235618 989861692 591847908 923090239 679334116 684416461 508784534 910345203 747919317 897157978 267724906 351045284 127090190 534167633 447656994 585095686 977163900 996468286 407788038 856817062 944488256 954967027 39282727 254704358 355808617 436193658 986614897 993367061 914223516 971691307 224928914 486761718 781460915 971385915 389825319 425781279 579986485 925790691 462188691 533614815 287479453 719369547 337047552 829124259 540185278 678854980 132610628 697793736 187821475 814410622 803353389 954728037 861028122 872702090 290873210 422835729 734645585 951987776 799720115 960948891 439888019 493130975 964678415 989161629 403039238 985578335 583068281 751214047 645992022 890066645 495463099 512654867 495507174 920723992 910433058 998297483 701323375 928466386 855341032 908648741 55307532 322278779 144916838 971527644 621107359 645810353 57562961 927083687 795149990 945893378 261276434 882865918 934659897 963876443 936454446 974443253 574417863 937400936 735529007 937504011 803566403 941861229 771965037 830513346 996419840 999059252 505474459 866097359 973273495 983844797 165348596 971974646 546803032 761136431 378344495 607922999 724125349 832424632 322066035 349868223 946500910 975303737 952080953 965925508 597342151 638864003 966110513 998618359 22877439 245540991 529001628 983462979 285936149 685190571 340573002 813220209 495112777 539849144 52144300 235569694 623222092 718233663 570885545 641067327 961442704 989560430 198419252 534756584 374160829 988172742 477220756 895656643 728000807 830348344 942244182 958638705 874211574 983942272 501802014 685601960 132477026 305269528 408447079 518378885 436192461 438009939 480899806 672595932 471783293 659087803 996182594 999815484 176324256 380796309 999291278 999690965 43426978 789461605 346298949 855887700 424662456 831284772 932946165 992645472 660212047 726658789 65489380 586810318 857965180 986868955 643849451 688874585 910215953 910372341 354867309 787800448 692876964 802056392 916691595 969663270 725642491 812435542 429703004 959698769 106285311 376458560 889495133 906061324 286312573 913011989 275475426 298038472 649205923 943942884 918414966 950521041 166391237 616149402 667098113 819414543 692302176 755323209 698611343 890819363 605153501 820098931 314376546 834935483 341263492 820071178 10483066 739512513 180430746 751335687 449962739 823743235 663147867 746631334 236550865 456347269 142521908 860696539 640163462 800631396 104348946 712206884 284776359 884093321 319343490 594863662 853173516 889150448 641591513 667926444 138153583 603734780 306161222 712342012 891206547 914328086 525070623 961971777 929206833 978514615 146897509 624728868 153922648 868787146 722445801 823833131 273736636 731465104 588525518 654471979 782306136 826828568 7740671 123026577 254403221 904461905 206507852 386059942 681376898 726836509 975356371 983198735 109650580 982875970 125591690 377790720 776988670 883370784 379761536 536704325 383555213 752028403 67841902 260184709 423337697 737853190 800962591 844048442 693904377 788779731 993098093 993544190 158639648 798771483 672399515 791156612 856820720 908305614 103198578 897338280 229234648 266863233 662950836 746983480 501894367 559935947 910914246 912304828 554357317 785303090 134141830 991392894 918453870 984955846 116314111 587458692 755921540 867421238 808885023 869293211 654038995 962765709 532328577 959800329 564592845 968672956 551680196 940558921 72407050 943065076 551471365 926368484 998254958 998788048 729845765 988926068 803737406 856628667 30691277 35939184 35264852 598841251 520026859 910630891 240513827 807684850 297167578 825759596 357019491 603490459 371148584 800826858 997026923 998373634 442681639 996304189 356597743 814393016 32334147 561419558 842068336 873479137 197745062 626171870 244442373 999401870 322529708 467291172 766725327 777588153 594669987 633253038 950735683 953412470 396098643 555707142 92797799 713344749 73269148 790921623 338415219 854487682 410315000 676349177 845236343 957871631 287271650 878222867 310112985 362628462 16834111 574471316 181756389 279631018 897447858 992398990 719737383 800090191 570168583 615481236 633805079 967488308 38167090 357176817 96133351 532885187 361479887 445199762 756489599 872626484 747369227 986850054 477650327 511905920 733096059 843449675 148123908 881684703 686848922 793609517 630328470 957732333 984075845 985235433 124489359 882756731 689486319 919912980 630878840 976085187 50199955 623215794 461365711 470744647 72794167 386364676 62586955 386926224 317234067 634706800 447218937 720041703 309501229 776132447 466891070 837891127 609517194 645098506 486124770 753914226 55275573 527893433 611743666 806890423 13730262 425696681 496142006 627281991 58364278 989300632 485007344 582576054 895229072 995951284 33995452 180852616 57332392 68089730 376246116 419611078 376438665 811003187 532432157 998399894 858090400 973452253 577104372 881552984 872244178 879328968 538978849 963014678 191274214 431370803 850411817 971857599 188085849 802895988 435165509 456034418 425664526 603153992 569178812 700421080 496700623 841824960 786265505 907107155 189092540 704142865 732348971 861856529 792002813 806150977 509788654 641739389 708734965 770204194 906734112 930438117 312175051 794013763 890942643 996235059 689633541 905314110 69633899 911988273 13297926 729343794 754400121 852895486 204679298 454969017 889762031 952957248 634362015 920882563 457084681 849114648 956381021 985828995 137727075 154604913 436309464 527556947 498945305 894173926 679484604 886785784 685294931 993838316 283340053 311364919 130009331 808937032 969843658 999296800 905332010 954105135 83033272 150778698 205174386 704996947 834706665 861605753 187445855 686822977 558673421 585759989 846311102 904415081 346349889 455965670 572805052 734486990 741015376 778154991 940176088 986744928 769555600 800878812 31602710 703147837 926521332 936559845 76093375 297662273 25623125 485114942 87169373 460123354 141130209 552081286 329566908 816772663 122390739 724316117 747026249 836234757 991715300 999421148 836446972 959780414 147803356 903891559 497654561 910639965 355563256 607139537 158316046 668623747 233566002 980148511 233824938 487981155 437358268 518438948 257318947 713768942 535870613 598210955 976888796 994331985 528006551 705433558 365725395 885036338 104843397 220542389 275647064 574949748 19426834 612024255 420897451 942771769 709692382 895892122 242525853 692332389 423522191 449033715 804688804 919091951 156725509 684148173 554148379 760360212 672649697 819764705 411122222 724515597 394920577 704708734 87380574 745425144 347492554 457979499 195161025 815987503 521498191 953923329 866392162 986023495 895756043 943159663 881598873 890162886 114051442 122431940 866992854 976511904 542382367 890270602 938341576 939056758 578427376 629736824 308683822 784038784 238581361 379574857 602105268 933429178 389798226 689051157 802211092 920972760 848463331 976698437 139224528 984061554 232312873 971435182 999298119 999507429 642336873 917415397 883885347 888920013 367948549 468814396 493676957 517059386 794342377 797916260 761814729 992105555 674402247 891324072 163187126 184323597 273270736 496302315 963676520 986961728 515747903 569307570 74150701 290573429 683080905 849048920 612502779 616146951 679347858 893740544 820282431 937111658 653179038 712554964 869179854 903830275 703284366 857459279 599073661 672444607 171914110 277037255 415349738 768418759 761122200 966342909 942823855 989980638 266052407 703689661 869940772 947522856 481784120 820369926 807932115 916857696 244991631 675019989 680219622 837330871 843696410 867815009 988877536 996241987 446629856 732766226 35305289 193512971 527550529 542221763 709078386 960986356 47166614 84605789 753725893 965373839 199305688 720729067 203024601 848593434 927848590 933613850 359967748 687473139 432596446 587085228 644758982 900548556 416044727 507382497 234115346 668667727 305983750 401587016 684727283 985110622 324784867 673556405 538346216 619597426 732225275 806777146 611046836 771059833 214607621 266522528 527286066 862836140 287769223 984982050 224190634 752000669 863105637 925827870 39898886 386970284 359680498 775850028 981208350 994449860 968901820 995371561 275361967 760904737 429172674 615942159 243510700 656661064 922577907 994444441 800977090 907088257 868587013 968492820 961144123 968857016 369132978 806922456 78335506 619432892 374124438 954976543 164597416 735929880 26268363 657105592 79982417 478821267 412682638 947958283 353915317 599359591 872999389 905385552 227751296 511106533 202701577 664796453 173310636 656394395 677902442 994771902 980671862 982753151 306793542 504638571 539348578 908534246 843654357 962290322 965954561 999198012 109906625 223048409 390835213 842881544 615445045 726606074 568477701 705969642 399260555 857413522 758047107 968138084 787299071 943948633 553195823 719983042 756938284 837559999 593043918 917596705 174810524 788012081 627018071 690852429 916771161 944590846 988116562 991607542 266674438 751266181 629673064 678086132 273717088 839884910 358911672 674442563 413027941 915082890 688927750 712787626 181369211 478737849 352547861 846889328 767389664 911447134 166116655 876816448 770202121 935818497 517602837 959801756 814756320 887792288 729332709 780301678 682853710 930236880 94010737 920406848 288103592 913572983 507753865 701013159 613897982 991516390 369035255 562528788 194892605 602083251 288559099 337812185 566308248 688269486 469756046 631278824 599453655 720343021 339501813 742958743 448680991 988973248 806330106 898997390 342088634 577192269 58683151 785080049 845020004 979173383 636221365 893869472 997286009 998798253 352620239 872988600 901615945 923002128 93740614 111972415 381537576 409527808 155347754 983824278 468698028 697365456 706993628 961801860 65385310 312252478 559920579 802799834 482116527 521921323 791584025 829591273 105220883 972848839 126888060 291727023 452627060 550600852 950528606 965296551 902986238 980350142 53325888 675091619 517839690 909976558 24024394 391004992 153169980 389925729 576491245 853370322 23698497 453183230 375744366 574391216 220136550 329579914 347362018 593456874 273458951 940885691 252388556 600422089 641716272 817595006 997504184 998056794 441428212 448682531 977319414 983892572 287813040 894499571 667078763 774229315 356757189 844031109 380995837 439697629 174734747 783050717 85000844 195656310 343626320 819781592 244121530 453056589 125936887 778791915 153585323 766453957 902209704 903097981 243393777 363423434 225104069 299961492 877014503 986057856 592132296 759273846 631013145 776120290 90419 760385658 946118861 988440328 427613563 734724094 367768845 545383999 683035764 885308735 155091895 440674037 771227699 952252460 903232917 945489999 544388343 794340664 740731222 845825431 896466391 953846829 844287990 960747348 401338267 955230523 410518188 463614943 730097843 754192600 457001990 571504391 752977978 925045395 831589401 982591565 508113867 922616364 162911290 283348046 78715326 186541389 551382295 672606597 259932290 825727655 100503141 879200681 221546186 856906999 41547106 81882372 442418147 882585591 482257611 934494871 449623144 546830991 949103108 986847263 695556733 909543328 533790372 946839635 391835577 882746005 601928263 802124829 857235169 878874919 756339984 909009189 779150630 902036087 458196916 628605687 130854929 210537722 910983845 988739377 795597881 905999827 939902913 975580756 866361607 908408907 817964619 940490504 530304099 594630597 909558140 941926259 463910005 496663658 521913629 999643698 929017670 978645392 640818242 991911497 647551909 816112516 768359245 795310426 307060183 785500987 545789190 778572677 332794650 994424892 615865021 799476184 923400151 959490053 484032622 672521519 647656165 658425042 167925635 394462430 541989257 865397101 590196404 708029990 330215230 867684446 638842025 890477856 943657161 982919997 903656365 923079838 85218987 494385500 469594829 602233021 619006279 918168014 779569352 863033474 764474793 978129285 821006834 906895934 332395751 479847747 447084459 915565847 107316973 558587930 975017981 976874467 124842995 947217453 291196628 804780881 8743269 805277893 80949296 615467962 423678663 699877992 272180897 972169620 766539380 844459231 81573987 520321021 637605288 761335693 718867716 855324337 503053760 659400442 902925313 960789664 268363154 789838145 469302263 571914215 644585380 860940636 632204492 847164953 319601433 735460363 115726061 413334681 564331476 887646287 109614601 215431605 659453451 963362135 521842954 608895007 992231588 994409607 5117469 682898068 461507990 613677941 237719991 755058200 113676469 763844394 864462803 909515542 678537254 758931925 79776834 807577684 889022940 914538771 838570293 950923542 175064612 723449627 799790809 910119180 92114031 836706238 19426920 379152454 341371666 794798168 368126744 980913572 936815317 940355681 474101865 590299945 439303042 746771787 430473429 467190749 465198172 774189644 820625066 823512371 798078575 947951927 37501618 604827149 84590875 955038059 257318898 331985381 514172334 815164684 608082811 756050858 913948338 997115697 685534904 696140718 633971163 773226186 167429331 583684556 665581478 923765488 481367161 618229343 583106469 856352310 230712307 329999046 470852907 626231015 19981918 972736679 598939698 762042585 471345631 953505542 882879954 909594417 981903398 998879571 276352411 931094555 397659413 457279065 841389952 989570347 467205797 723486657 91375194 405756374 399744476 937297953 773033827 780836964 546541397 954712394 64472057 867415676 106182330 871617287 935044052 959884355 457843661 624434788 396321304 874051230 981440743 998477126 167846140 688329385 212228658 889712991 577868328 612314399 86583837 315840752 37417969 701174901 14417244 252536281 474508055 848702420 837989014 975923626 729903816 870375882 861474251 982046586 724167697 738629119 379531784 435952760 350672398 835077523 312998495 763264718 137493988 405474647 5121864 54648030 294743113 468819826 407653528 749411632 189561225 769801372 612082303 916429084 543710078 599724620 785474084 820040376 110177506 755282133 814716410 903616943 683044745 834855680 762711861 820147103 540306909 675270759 216612279 232446113 326585774 618799531 737364215 780501801 636498626 823497403 492544822 863223005 631685959 819974622 844361818 947248483 695144329 941459035 144588705 174190993 340107249 964997570 565473752 804789002 347525873 619568759 827363560 918077169 554086117 944208230 124496438 841754375 704193904 823972157 753704617 873345960 781553814 935375999 14171424 443244977 375976727 925694406 11444016 753794340 211150285 500288049 853757325 972639811 725956865 859133192 992486105 992609219 190856416 562420008 957555163 960315605 920836169 946975710 942655794 959398118 482587671 591981356 234665076 814844655 589050752 974343274 887979271 938145720 760512629 825230392 710611712 792630899 898669608 942402493 739892040 975078358 747482495 913016412 100912186 325705866 761744042 784374920 793691273 853574354 701338795 790048540 113909966 422433401 86865972 164558534 247486419 559446704 777820725 940872146 566223752 680601237 454473151 840864987 958561011 998576857 876445049 877287002 844135029 922346273 818352665 822471168 665090241 736506513 173139469 873169365 823187517 858451257 707016955 843286955 551028848 614103749 499694836 665073263 931605041 942001132 930308091 990698307 528311166 557321612 990144374 998857452 812725953 987352526 113774912 458814122 403457558 881203733 642521865 788355361 225722976 713074432 706359737 952598287 309871115 497389570 957281740 977826223 278725249 988624316 376393499 949233681 56837145 915955210 360327192 671300942 546660156 594571441 231311458 286141934 14008849 558959559 68752913 450831671 80114046 424178465 725230215 897140301 241666423 886374787 180720122 267977663 231035313 935258637 859733780 985879852 463754961 616151360 347703699 601259672 391199795 659999638 444685524 563371355 117760341 802321314 51522835 268313133 358232775 645732527 694210906 870347014 183586768 628556058 829090679 927661539 136269337 478825908 513067886 774428188 574517512 928182642 584370298 746342557 43920274 558676846 649134982 854443330 361779902 712035664 655967383 739024573 371292877 620107081 28244394 848375211 938718138 992604322 165246971 794435609 882635824 998145492 546957501 932636416 774608273 820135214 717970857 780353473 97007203 443027128 904698379 962801461 625871875 943145858 286876597 838509271 128579724 208373183 98107636 830693672 347592924 607725033 118679428 756794488 760550694 977063971 183863014 241290338 530965630 829260703 672127190 708988468 869624098 964173199 665754472 971449778 32551265 889863898 765348469 894343003 349684813 703625732 415275429 720953945 845622153 951548993 846266080 944834031 105750225 599571661 971890325 972782991 127724768 536114657 39594183 263450238 132657249 965635218 749305631 828471082 680483374 772031234 632802681 732084789 118833646 187467696 300126534 892411383 25844151 47065362 212482194 358894691 18151026 951962657 810408142 816770823 563348483 689920943 391246695 576847534 109742980 635278656 530152814 840471724 297314521 595431801 246864897 647567580 103663937 926949687 250029474 741004357 841217954 994604846 283912907 540180957 394914061 610797286 924129840 961781924 776150705 788956362 38577254 993825825 84677139 918673773 480326993 716362757 520804496 533714232 967833969 981525868 757553343 994354167 60570303 797221362 552053155 645061939 685551692 695842262 758420136 848374395 660021336 746412608 603532580 815018219 186991413 675456643 856917424 995478174 423356056 429063101 911322577 982297733 730480307 866159971 184542498 317204613 24705430 235097920 745012902 765768253 480904827 727613324 194001143 697496750 736371206 833702850 979778657 991168629 13883016 301979199 170583200 673870683 772629331 979144201 971891508 978437578 364935956 424230158 17177092 126464850 830429405 915306164 804906690 813344911 310470702 332334458 233836711 418513199 199950133 825188864 361900530 604003346 884876439 991665895 174202083 885822533 937671102 962399528 567009110 664072451 111121826 852779202 537658251 547239045 234767833 547642791 929496608 984489187 85225947 483516891 361073472 514963285 907412806 944541870 631097769 706719366 243332514 329791506 249716531 401680341 818012152 861398794 768096473 954630137 150304522 812814207 39039294 646778802 928002214 975643987 160811263 954779217 136976747 322586092 837542126 938680326 867593378 870713759 99807935 880122608 8788198 416542409 651090595 910274236 162808783 780036863 121209799 641410048 854697701 972228296 172445587 508753217 387586284 843883090 48806303 624275183 906250438 982272578 911420046 962119077 795613595 797011084 441393252 562998913 723244206 857566796 424044431 607675348 367287010 705041363 112751936 743156181 685966514 868928406 455621822 715213664 376122043 378002312 497480149 947168619 615192538 668663139 676482203 704247369 445589102 796019647 475297150 673175257 702689975 801864348 678537146 715958454 349084964 629684583 498348087 516296637 681601726 808000496 488903609 696874546 911713294 928505238 265345618 857226257 876378701 986164526 634939871 684286881 71604154 976001597 240899183 372378585 459477377 992394126 753711567 754875126 365870652 735637929 932377742 972578359 764737055 781570037 583075395 964913297 622959801 751211571 1163373 280040509 804389480 971660394 612395802 691196945 159667410 245100438 124772135 292378639 920962956 970399628 870462252 962072946 722313776 915936539 378177337 860098534 1523395 432086573 861426233 965767321 681329174 900749648 549507890 849511162 380790965 601575167 416874280 732747093 336103041 519557250 452273364 474170715 145530682 244216487 177227010 655236338 845824208 968336324 936617924 965900973 13434005 768734664 173122687 986648673 90221851 207005260 617299566 777859666 638044110 927998036 929769565 947538997 239793335 640083750 394976116 738336409 736662593 770535978 908169377 949601180 123694998 762777646 845732454 935223026 690124365 729556121 982781859 997551017 930564208 994818948 822167768 824522107 80231359 494479266 350755373 429494030 829377373 876046090 264592512 332436722 415582299 956479280 475219235 947537921 295572371 521217498 588108421 621292537 782354132 996457586 423690035 705950109 394438118 498582485 549330233 977796518 4618643 355586742 60489586 833923015 739457326 903755150 207664735 345218601 272052985 909298391 227871092 696502060 489475964 533260821 839400969 916010067 685641082 833773687 963324866 999759574 574402419 990708324 109412701 191567401 406922892 480316911 369390820 832279943 542183818 696774507 124816380 167478264 419661613 742677047 49962635 509250311 470067965 480786987 527905218 681792197 708023818 874278326 28802916 866555129 691022721 957020955 679754894 689495355 591376388 913834532 88858534 993243656 494036744 677523360 613854931 733699955 995888203 997057713 243794484 597933389 402426923 748322756 613006590 965954227 901797731 925198313 342701751 404724358 161160573 217234486 407876700 669029884 975590901 978731579 245064963 331565787 732008797 988997046 961012209 985494554 616769391 734382881 566891907 583623704 13880846 833758764 560707254 880953188 816734475 903778670 54853589 932965161 727889677 946468976 145900111 733695152 323849761 931066190 678051488 937884956 886801397 972659464 565666413 723748186 904825728 949156351 250978314 293318163 705912410 942900273 423548271 428502754 213276408 745136726 466679151 709865211 578348708 865558469 740291940 748637578 662476811 693075383 352503056 470991371 807509204 986740611 418296924 807872445 268797971 293050841 587390538 926852906 235414661 408010565 54385620 517285866 446089139 718647062 518306958 821831239 322058070 391010740 414735475 963866507 845770467 970697986 509660325 581850199 269014511 911837663 238485164 550452852 132783732 881075985 628005260 704722526 163213704 572578202 689763758 738578439 830644909 884352297 569219491 811541594 650503014 666466101 821606692 911149252 501820284 835429169 835363626 905101045 12947056 696302072 848343660 983296420 688479260 952210685 762233011 878309416 18176882 225351143 284538251 866360511 395836670 910093668 802309592 933716726 532105923 563619153 357134433 773614340 833152513 857109968 346722627 710531190 248546770 273331954 62745660 572347564 671746777 886598905 804393872 806206799 940373786 982382359 270792142 544415769 835061740 974229742 761383218 784770459 873185811 951603036 866584257 907566917 462696540 581763365 787237985 848581562 794438202 846112969 28850093 617398607 374942382 786416693 494730188 937153899 676860786 877830204 603134783 987125951 125239987 126562133 576359466 963612160 77604208 801646336 724257105 752665181 160059789 776921057 192567209 957696300 766343678 859747520 406195893 639995339 993643439 996360521 927457175 978760277 843580726 988148296 792810747 949274488 226622502 404273304 839840061 975717606 835634013 888063688 726618366 788163367 44625227 362739807 15305733 542064430 482219271 748859249 580165737 592865173 727434570 807212548 330652041 656929293 292850859 883306880 1907530 822296973 130415860 506934443 55345037 326529059 3763735 104736456 133853969 798419274 834160618 999453374 405840139 677558212 871427932 936130091 412964604 878695145 162100845 995897571 888601866 945679733 17198319 712340081 190076739 222873271 186109251 756712225 769749937 986529521 533614063 550313437 458028279 836897842 862439030 884339119 631554580 665054602 621814650 675407103 458403393 889975645 687047486 930254419 129292445 841736793 906975874 935710317 576602610 811699594 453525939 866954058 930481791 980024941 32642496 753207734 823192102 961828279 170382773 236436177 6240209 819410688 513823723 763797103 494701184 695026613 638821053 745592117 483974205 557117334 488002626 978016339 472065470 580497890 840479242 925494681 520680125 671951053 985103118 995340102 882537662 956106548 346227374 927508362 368739282 586951346 607617462 745845606 215492101 342409580 285969016 315242135 207783613 640781626 95739202 515340369 32666968 119773200 73490441 508451127 201778454 997062019 567588451 806790868 214475911 786095138 225171322 362999657 462619132 531691026 479338624 753166809 723053211 777702726 673991725 819186340 369508922 550500838 601425007 714749637 397370313 736224796 86800926 485267358 241787262 652802354 540766776 587356532 129768479 645857578 616790793 751342940 470759767 724310846 625099077 787053329 985308884 986264190 391953066 808736333 817717577 913533402 645329666 696569589 787871118 872360149 762933358 891729142 564352083 948572450 768543035 894580948 870450162 871043726 258137461 279253464 785916285 864683713 245412993 585135933 544990052 938904505 579185624 721054653 380270531 600871705 595390276 966922956 89467007 876300421 398783581 491822950 825532071 927577167 218655687 374009100 852833576 882100337 173726699 182095086 601991885 779987535 899457300 926589819 960739491 966976251 142811769 329570589 826239868 928628654 352219184 593078918 369669554 522243321 828382535 956886636 151334542 884845774 508080846 723109952 766691740 959817565 593408653 881558475 281611762 397315112 684330501 912872169 129208630 829376842 248258342 494482451 498022041 532790111 796302305 874798915 872209142 887423053 909074812 974477958 250833297 865589753 167296463 326284748 44007432 470033812 530640409 677623970 261932669 772920616 829528568 887228759 839991815 856797502 863866561 910971391 442467008 962856853 427435586 976788887 447298580 951056126 336945126 468003252 702824371 956611581 34495239 37643552 707618152 905819918 463170970 986861329 464680920 923644548 555412512 856562046 442119911 827950095 138118910 298345688 617986072 902767292 313498470 664340420 56952001 829488779 398596528 692251875 454674754 462765942 897678397 959670327 158073448 371378134 542083076 795457539 184552260 741059370 30697661 371905145 599953162 836077255 99476279 523542814 470852906 628507262 429299065 583091571 969027778 976290461 897067587 963803959 545065171 665902856 337575818 369693135 611442419 695775103 112519360 869811786 992667880 994513068 662966810 818014234 728375229 832185876 952004963 990666398 62686456 103404520 574078238 985864126 177635774 554312269 542349456 633807754 971099817 987591311 463604199 589974741 980011411 981286752 681818238 992850557 228897799 550616292 798386077 850469088 568626221 820547009 537754393 576397420 434379220 660498811 516515349 818333663 313707530 847918220 255709897 256265956 10001483 680228302 820095949 922977073 915352343 987260710 671896354 785807825 190205990 415967541 668760912 946193250 809467031 866628530 409823114 842188740 751742097 929101656 6119685 66333036 733210978 846941609 638019207 734536105 101708581 605329971 123402709 350114375 646722665 663710623 381777922 739246308 192848984 870659551 56642135 599842872 630491128 990352290 571647911 996886740 614048518 807784182 620188597 878755183 67604063 307663510 751058875 924711933 666784123 812927800 817903319 857846102 132411435 239492422 798553580 967798132 724594387 881665815 306716880 586249097 109581794 586482784 939675125 998761777 542887629 586156693 521536170 829857468 359902838 579882208 802311610 824232710 324634900 460022259 59473984 470244445 694464955 771824796 573566937 646076063 724700940 785322977 539321113 938636679 361858517 811546559 411134629 920632340 430204398 727190793 605947845 957637250 330696878 509676171 338369655 735531044 845626608 972976698 488763397 952525132 692725961 809517726 258027884 522013101 134615951 416175852 724629047 745397943 840753290 897382364 183888154 622737656 591824389 873645156 744025085 800575398 590621390 779197544 871657867 992712820 578850457 635355841 912095811 997113216 684715812 731813556 711348222 908477373 612535333 859935541 397019041 735524809 311076559 533073643 486529957 794753769 755438645 901664588 489316089 902139978 690169835 864262964 489357408 766892105 29163355 86231914 600949203 818867796 176657438 744400548 769273641 868877569 729878021 984302181 232576219 493326264 526768527 681672072 15060011 814981380 237715908 703673078 189377423 673494165 867763827 937415142 720626992 900356020 60657383 839715173 584103096 985996198 581015578 870324575 140223940 936041370 102503245 797815984 664996176 967770024 127505313 219389824 951666221 988238936 725467278 930983307 848404995 875150374 920339031 921117323 949306756 970054516 889344602 975136062 124123625 911011362 659182465 841781789 245076412 644139973 435263560 849301194 751547984 930257356 483753648 771623520 890134656 959794477 976479863 998955006 894750180 974728522 187294439 303625019 236137578 263693050 562727355 714938205 983595495 996359228 165408611 784053224 769791668 933406798 300280838 830931472 984698418 989493756 388701001 528525507 574711217 975255831 447706056 758618505 955228613 958465485 764011864 864433709 972496292 984846906 191401200 892461072 209758076 607271289 908713765 976230008 322706279 864711786 482029898 795882837 157026150 888484975 932434726 964619723 930867077 943407614 335542112 570076991 114189735 688211178 569986724 746764149 786224396 970655895 546290268 654031261 484337214 779901396 561558037 672422466 76807821 829165323 193782766 515799871 177562187 904511876 939165352 994117159 607202512 831619850 816072509 895624516 214832531 457428006 450765604 771407114 539080460 693618117 363868892 704478759 291829393 736897159 527266112 747252692 924676180 933642160 190064671 224593345 671973977 814749220 601756970 771620568 151456144 592106723 440346432 804434952 373150127 595163009 600499118 925090360 877712270 945719466 300473669 498567010 819853784 840646835 917329001 921791984 596382749 901074268 979579363 987815078 731476406 982547329 171066358 382078538 179145440 803347247 684753826 933226100 116346469 620909068 171519254 988220139 113449418 263060356 756914498 968160407 648700529 979274474 387777611 744820482 393214775 645674064 57554033 165516723 395165178 697846129 733390240 822578959 68522366 399774229 282061183 569777596 330515344 415873474 201963745 733933567 515026528 857358782 120028896 273262282 645780836 848955960 789030032 924382262 802679626 892477209 447952810 974589452 458819945 485911922 932199167 947990564 319602811 399910332 327688749 374331515 645903361 966674428 875664950 974528911 232692268 535090200 730260400 852373782 291749332 705538353 766104458 978680488 4348470 593884384 382975421 393936901 47613064 982137741 308780706 615707176 536545499 976598125 181477692 665934959 125669821 866752266 963435166 997702663 22444376 693131753 281165003 702487019 288066675 414204891 587260865 899539505 231846884 729904205 392971876 860314482 913329369 958194272 472068578 603717626 695213465 992148194 679420801 737339487 242061552 471054139 67860012 477045032 172693753 233875533 83381356 938189595 765357017 802430191 198797925 693421883 503043249 792525292 139904917 270162777 142513498 697017778 188767987 905635236 127835673 701729849 902445566 937973682 832041473 955215060 659218296 894117122 766857312 980717063 75367580 187859279 884028597 946143353 148010698 484046731 112556338 675707928 992472270 995602175 313958421 863235580 905420336 986773628 202855947 844123808 947708805 947875270 840933842 925391502 614159895 696874768 664833591 992288895 481146633 844593599 374696698 786462475 815724734 876638418 926026781 966340320 844718396 909708635 109910695 290140938 994425934 999576385 574015539 718794866 399690662 721145575 122310428 932999837 971850916 982212186 992788592 999881382 656166777 709445913 429585619 957629446 727519891 740363416 960744446 982351719 191840471 896034265 418307125 629959959 845871893 959465201 285043502 406432406 114515721 435102124 788080390 945286197 396400655 660006444 791136364 903782532 389784391 834984280 28894052 519935725 265464285 380692355 324604772 705473635 621594105 758350859 516916849 850883965 112120251 970822508 234970507 665046889 326086079 765473148 462208567 798171619 439301351 529835484 756570935 921861986 609409341 797091567 819726501 857993178 236076275 483127117 468279818 697937050 423347997 743638600 648667363 988306115 954045371 967535769 504744404 795503822 516167517 780802692 647963701 978663125 948566024 987889284 750345649 817193715 994583656 994619023 475671836 504007200 298109916 530144298 606316438 697905004 684608287 875203797 328250579 350675602 5123848 652854734 580486281 684411102 297379187 491433287 575776881 922325773 772612695 864924737 347925795 684082253 139895999 142925943 256451101 263866948 810946527 919987056 192503849 774197870 97858697 295304441 477080565 494392610 680006134 813213791 393979353 938698550 226183560 252430203 949147650 978736744 287058589 547091791 422280330 777585084 25166129 605107305 719803043 963750853 570007013 933404726 378009312 973459205 639967992 726245632 631678583 654859285 940489110 958782443 436541834 823692598 279115854 545285331 384442428 602476804 270498670 529797516 745178699 870968032 66281192 895217966 38262060 166256488 966788182 990365747 850296675 972475552 906545407 992840846 961968561 991138238 741547767 758161413 321974010 542977192 698234508 881182123 894653224 996615270 264406130 994849477 396543998 953119073 272617091 379650220 73512140 198214953 963292436 997259500 38370779 479590402 882670767 942758697 708052135 858991342 59597080 617026278 834086729 877542791 474361388 477455401 801799755 918506681 206321032 485335494 236991316 508863276 845064881 881947846 22154773 794323105 745499868 765829111 235217277 528473104 894803081 995997967 833787828 893289731 212326429 220124379 10001927 694017554 84539688 860345108 136313205 469876533 423447097 495675425 913860835 945736163 428823600 501256935 922762257 927095148 931428775 966614395 996879670 998627030 723850468 907904201 882557751 929164785 367289388 793071240 913531443 993789342 46827717 700094224 7099849 55133983 780961844 974483797 980386608 993305954 503948583 924488732 186343480 257869445 394975599 561149311 338484972 624647894 224131309 739349984 578794847 667966225 988133030 996009048 849345279 870557264 805563151 991003104 939007182 987615342 395733389 905948212 257121696 719651259 195942648 321587171 849288793 909824094 169028024 777626793 781318007 958744352 95866185 578004676 937612452 997348150 258272580 559278078 581084979 708271420 434427480 534125229 438146523 861352353 465691364 693923778 749416155 923169362 382969218 985721503 857329938 857843033 978788139 995459560 505564762 646130643 647647153 863317088 551204339 643598669 713199955 958469746 214532399 531399480 178419072 523124961 612348816 642935254 219613650 475870513 684959835 728158542 606970362 944542303 425149062 896255231 588542677 672866429 806908996 814679155 516261511 760044676 691239632 975707255 697932876 913817923 942901179 960648766 962938089 986279016 319069011 901897764 288051574 406219683 401121053 756882331 796335616 950348633 583742970 877841451 447920870 615536643 461623030 814785936 502939630 611525975 68778482 494045214 314005305 648902676 901229660 945143428 737341472 806357653 611289494 948749919 581136624 792167744 225307396 650669440 139706170 587239969 197344758 960289049 21373330 495251713 144100200 514715780 410831725 888771951 243224039 377168840 64470383 587820717 48592434 630000812 689517723 784181538 107069870 172248957 724191692 776279464 365375616 878689114 220109158 886427850 228532461 542176724 472017354 754407157 545134995 997030014 630497736 711679696 619247676 771488126 112165001 920213503 866665484 893273076 857329445 862880182 320685610 662630527 326253296 801943599 569906922 678242729 226057572 961485849 865354651 897250528 609636989 662256720 593545848 783669979 549973786 763040173 216557286 805847800 791629389 792949022 21196709 851980386 342960783 817167829 122647712 316970107 853633038 999230043 721844212 840267778 374638334 826113207 746048142 843389855 422344974 536658548 684224892 729667163 324036167 425847981 732011125 879539035 431438700 673761150 81145164 853063781 961963136 984948154 668021378 888116404 335156729 822830353 1681884 740779381 752532115 910815750 86110854 680181414 61320822 985362027 969950246 993850724 269639724 796788161 466015795 607137617 133272809 801694778 646841627 953379955 891960518 972244841 380597077 448321395 262057263 760259191 697353524 820628941 379855706 528102798 776112144 793058100 884128170 922318994 450073633 485218133 302473601 522493144 840660477 887316726 344731424 436204810 223544068 273017973 778079563 864661449 506645534 847082005 635309982 783888969 141137982 410378625 988473554 996526908 655455376 877305630 168979945 996826095 174290769 193238397 936578613 962878750 578271668 644781554 921646602 975655712 280422046 283449284 445014304 974200825 862623892 913703700 585305422 791706626 961275967 980083424 125282694 413744417 676874184 698814607 884880557 900786490 455592673 894469806 877916365 956789663 445229838 658211016 645111296 914100247 496779517 898048036 312059333 919986450 878144113 974324043 686457082 814498621 900665970 970541135 567503892 854022649 70821875 163205887 777000707 844764448 776307656 987974654 703659505 807174062 662543228 755023200 370700697 875912034 931405377 987085503 942724549 953182967 688683891 762404361 740951693 971409537 375382888 658288319 169243664 941044941 982706522 985789561 768425189 952515830 834939920 861005127 318496030 723106065 19928789 488628218 762371366 863266802 426791260 574846831 189095945 842954678 517077179 979143287 942168272 979012927 189059980 959006833 922375111 929911779 675892178 842640101 860949233 953837903 323350145 861741307 452086739 704406697 727704916 758686991 71263212 449603400 314619491 557158523 467803540 988569429 784762604 915058747 450683401 820854033 590418329 936184850 24914422 810478389 180193293 869291836 111758254 696610401 505698874 704887184 874463386 919165538 765003575 887529981 650546792 694217047 259002585 740573426 115633314 360943205 902511605 966278369 475763265 574748979 167496075 918871272 537535038 808409959 37733214 485710698 252268119 666696423 13338405 677948095 362032310 684447199 216063679 860954518 906447491 978740549 716823700 903918168 676025300 990886964 506678021 545417784 203403397 974920681 649607008 668104446 981944782 996836856 289168497 790595409 670748623 791408756 647593703 684099904 140313234 949998791 879251610 897044066 581069379 764954057 529089073 935993961 170810601 839353868 484055291 677980514 763972547 801604390 352374305 482242822 327802750 440913963 244234127 886073992 866653874 897499885 572782095 652864646 315910739 514620202 789786478 961623182 276998496 679765532 828153542 890314676 854869328 900438207 18912494 658470135 419162064 819452342 792200228 837634779 354295382 566585821 839104548 978199812 551553562 758232926 606880415 771697152 836157103 943096810 252699836 830695819 645732491 814656980 302927161 618526169 268289763 759606499 442666402 577914325 181515054 570311065 440659583 762050443 266807097 836913733 691748387 944196613 283775550 358431937 491235369 780965909 915044257 979113804 145873732 741329957 383770684 870122675 78020557 435534434 771436751 839976402 124147443 546241104 538121849 589576521 319769135 444445282 617510959 911003363 545440607 799412024 20827924 986677533 420554640 966633826 596886300 622021432 758091896 943332035 944522680 973939009 174652186 356054845 636833066 698205411 937352705 997768135 137297105 278930572 383671025 744014645 420147799 425253025 64228580 560019269 33069551 763158938 556334227 839726351 652154750 963078166 56936137 973226878 647604643 987178236 574620430 943050927 429608646 980645657 585990822 980931396 70776628 108953303 411130245 802216704 770132651 809072582 868149511 919217078 871843593 896994053 655811156 927526428 315694096 912818638 692999316 707879681 629385306 709750147 132693370 974607932 586818853 882571473 279643262 344640668 348820689 372533722 926098553 927226248 942924541 975883874 512604350 539965003 253700570 682776467 891006703 907258266 550096049 685915725 181636570 414572700 554352776 888382357 993911885 994922626 539494276 545118233 194934544 377195733 964093935 971079704 927210369 929888949 589919783 720559333 313451794 819112893 77837415 86559904 247225992 417957472 907209789 987437727 638500223 907407220 893361475 938991519 62570490 315012060 545335094 901379531 25042470 483701465 101559793 608772283 572614662 819381398 632482952 941882159 220779455 517881287 219790587 852130656 83077218 715955838 466040851 864976594 653844720 744953119 402504760 800058003 778625879 829840166 892301703 909951977 471461073 915865908 883224669 985758084 42947040 988886319 276106775 341744398 428557202 936509702 842412685 960533225 799199204 954947438 348202627 821890068 800766515 886826133 184556342 303642700 884860808 939802320 268788016 710210570 401369190 932817171 32380770 253397672 388725182 504859593 622446615 995262536 631392345 764169423 394711189 962000534 26044964 338974151 301302484 410435039 244110751 419548961 667604346 698566640 988094796 993828514 641690500 871274894 27620615 761688364 228537811 712615975 872690474 941444922 270370144 436097724 557893771 967766032 333641523 830463343 559752562 840608636 728547485 826100460 380630509 865287167 206293948 789021248 430801508 452055898 484499529 928776220 443252434 659749531 887753800 948501803 96499292 580376969 491542194 815894726 768906541 848272736 539987532 568572735 99418721 193036221 195461080 946406466 539162273 945073359 945850537 998591598 82487166 374067134 266208614 876542272 833546936 963990617 266550647 856804763 428660167 563198761 674926577 851252515 161582723 664490964 592111537 924067160 891855086 965814287 457392250 941383420 448370538 616645174 271142758 485112420 272876721 768954850 201647856 629166364 851045113 951870563 748538205 928656916 885456702 967394054 203354241 662824037 557821469 893420624 744877108 792355077 106021150 160691988 434959322 618985539 822772444 866398903 630088053 664324530 348696646 353591139 70700051 674950725 110436003 515585211 177361143 591561239 544992328 881739616 727660729 823451918 85164400 311656424 972645810 995748727 699404207 762885789 136765971 807440177 811979902 822723558 291743986 877925281 689301941 765962951 572049603 592259307 242038890 663407832 723905587 758164546 486274990 564292847 591977532 773980301 982955812 985501989 395202019 968314594 546369465 725244339 540445591 987708728 150830447 158817847 960108924 998773104 359289948 930107516 965387554 996738802 392129015 640469373 636581959 684773923 43935611 775008435 874873892 983720285 598334961 951588852 98617267 852541388 818878128 841675968 632221375 725185968 690021599 710219920 666333000 705825715 327296496 410184170 331656884 910121346 572829192 743187196 32408550 317636493 407551235 700598072 793606645 941399291 770194734 799679084 655308704 898501467 792549255 806711428 111401857 728131255 865233436 865790781 679232891 969077799 484877558 633117424 350344614 460573714 878139846 988505669 547820455 866708380 820041884 921644508 946252700 990188246 76883087 201826022 627285584 815794777 735723210 872957690 228857901 322063356 236865126 871388273 885608758 929827572 158904343 469500134 912845260 930009827 772404266 988387295 549751757 811090146 670782649 872382507 358813718 842418669 262607053 341099210 571495596 966062056 252211736 426268043 11368836 481092031 902220175 987556834 217850822 969708522 321282441 821839701 658825126 852832443 590603457 922290686 657604951 822772432 256018602 932367622 275493509 920847222 426072320 562790728 568327080 935345232 600840820 746019620 977057694 999287332 210135159 489448569 12923747 613900770 449249422 698691209 869694988 883298918 558321168 723488215 310036073 885504466 142074951 562009176 693317271 996104660 894982392 968094059 789836774 984905131 71054948 242673005 48003967 577221597 735102030 750175282 400412740 739319179 198561105 408667941 621020871 797697528 86875663 510814687 838129938 916866953 61457525 866719591 16610964 18041359 800345005 860167161 540797781 677012936 439692653 560492137 217674654 653080620 442543222 703865057 656492918 961376088 310858266 757263812 763288999 920894162 549296324 826112806 517808186 803871275 402590523 670657635 274479583 840333538 45766627 99210661 873834575 932623895 534714510 825675922 8949183 604528489 64714921 742607144 890263865 950552174 720906221 951909310 733791668 850005429 230442857 699824328 82230419 484909654 807038348 945650631 495281585 525216298 559854886 774941405 590076661 625103933 747714103 835697407 456961241 615882919 571011328 844136055 208187378 563343462 547850623 880894360 384541708 854152591 667993327 949533158 298602286 324437415 960906743 967789394 413449659 728307084 967512109 984408565 235024328 787836413 83481580 681390205 387563798 558780721 742861144 760703155 970654424 991842743 662937152 955230939 798217945 872511966 870014367 946481672 789550806 993923950 138496683 673056215 392339703 777119987 891067700 905114554 430846866 637875909 599542409 917624327 652214636 729480607 514446507 951062827 874887926 881330970 241936888 700083809 395961628 461582603 267480102 819788415 204081112 325277215 450742789 696082358 712162360 957102776 539317769 707357296 902297906 937584011 687634432 854579827 832498692 846590964 926019362 933664286 860463857 946305198 865027523 988035550 619334506 795377768 322723947 376418621 756185187 829295350 54945643 503908181 250167625 355822071 660379429 881653881 755062347 874625070 343370401 701346111 235396271 648373722 574388432 595592131 454323451 967988572 627897631 757427435 908661013 913838253 73515497 664735946 956295887 964624134 318171856 456821389 633305428 729088792 71605722 619512156 70781501 234985416 63603544 404178413 893101103 908206583 116031695 725606388 329490111 691379909 41343694 410510339 514494151 899002398 434187441 928791261 98249816 816274712 556003664 669137674 202396350 761269191 591555085 599470541 987898558 997709855 303424872 961879326 884647488 891304788 401346968 427341685 520783984 580715326 800727242 957058377 271831247 517369220 801163991 803210999 530586031 826420725 776025638 832783593 291720085 381178163 546239961 831988043 381858194 775855173 202314382 505832359 261699461 361074066 449283331 590475053 985266365 998931980 20973883 778454062 126014277 398445461 531130114 903844658 614444255 886762266 618135064 698192493 38068663 576310044 318705211 740355708 603686540 968565860 273883073 718305207 342470567 857074342 396428638 813574035 728579058 757930972 871307251 959519929 970578232 978846162 239088109 331853254 895355582 937665588 537596545 788583136 724397856 943819360 87321659 449119043 893115296 982600145 891342343 903211508 697650643 790043652 913619949 994569311 699511842 700926119 32663199 985455951 53883144 575432816 709717302 912591108 597382965 672307473 185728122 408455906 661753165 748779215 297096549 508956393 885849140 951386216 238029571 258377901 241232271 940391353 202508715 957079804 697180658 929358719 571072489 764571168 177100916 325167733 952169259 995395183 120806277 966417849 951220447 984752209 156710792 475429625 971124768 991386663 502658582 858607673 337246569 366729194 175040775 911777754 106994925 182887475 589194154 782003998 606079045 904930046 435961241 971060092 690211077 944108933 837170873 916396638 277619069 357502425 390705436 794656769 391377313 950721424 794336134 997374772 13533104 157313680 72336152 680947214 19030156 713086995 831279768 944955707 500329536 794935309 510762144 879976445 961612013 994279093 594942818 729699187 83137449 207295844 384251802 687422050 131268838 985467026 249156901 259299776 128847522 821215197 760412947 842538938 65843889 548355008 884275869 944164372 541072226 946746543 106675615 710464077 440351140 911572938 962896352 991210015 101270830 143887518 641746835 884145322 143508678 838868511 574984645 662048790 49496078 890937317 966681013 988670565 289474102 854585370 944580386 958180677 22825170 194310442 491320429 638679225 454744718 717811930 120058251 218754309 983111288 992373536 757564620 896398862 133705555 416369495 130076739 971497913 353031356 366945465 648255286 714861146 586525370 932243563 837606482 934200758 692356007 905810840 206432098 926805889 607751650 640453934 697366278 771204801 273382385 970099835 818054556 894616028 479076445 943780077 189517922 631897966 193304170 943612508 453777293 884512042 848792398 973059749 169059903 180223074 866344226 907266130 537853952 979711078 18678684 939209058 199324446 226187460 651429098 667382353 737445455 891611833 623940374 624225734 523237234 613537166 858913099 922489023 778184049 923377051 478859535 944714129 374720158 925739514 175830727 421500610 607979244 932131399 1540265 503757383 697421473 780455888 582327832 773358694 964091908 988725029 297435991 888582189 128119285 224039454 29473167 118755088 912142871 937381185 954792722 974912805 418901817 611659239 179098802 642611998 20072132 47346062 250368270 874937827 687804951 749267599 393217283 580738494 752778763 779876380 494203682 934953650 603789436 714219941 957534181 970069433 853396233 979224853 648337046 931301262 715053521 888631906 437356363 919762260 435073895 625163202 60315181 281400616 179569485 790648131 610887268 639107901 769509399 834734206 939152127 945012065 610646971 814289258 567624524 718975818 999310110 999868487 880802353 934945310 578555670 823297382 731777972 811497854 51009161 748087928 290422004 454366092 994547368 998579418 894511322 993303644 467280525 544324752 300854410 468784237 223006387 248501072 103842795 311638125 938165176 987361050 720651519 869353955 217326146 334762779 344030955 524517122 879002096 901647481 737721255 890299270 265540767 633541301 544885865 928640103 455519717 458792872 107548011 139178599 743952551 990827306 262679389 713035689 404245528 663788436 333339623 580100119 908338724 980190556 328722647 491180899 667543372 799306895 937440927 960434520 970890771 982047811 251721760 408687198 415295550 671048048 114162052 660228604 368146862 637146271 597162634 988392251 902131459 959041133 214551382 477652884 564828480 981367869 303311516 627199253 954403294 969251219 587282744 749658017 990415592 993282350 305423872 308736954 910032953 933381467 18934481 578351748 311451409 957271054 174648439 613355416 414868806 718393049 492113858 881182082 379504052 804848246 602552892 986661602 284659870 386006488 636301171 985923287 739472185 909340312 562894166 691727716 561660793 952797717 662807370 743998954 390088371 939293079 836750545 940905473 967955633 998175048 987292544 988637954 567249989 989252815 677712691 928138187 757960831 871074544 897047868 939906372 93146294 537749726 9347186 365928406 708088577 895734212 748177520 779811544 624106687 826317973 320428718 997891687 393001768 674429037 33167248 655669339 291145747 742791201 5670959 258555724 588980076 689393493 948032299 993369750 838891362 907258984 813084312 931423237 808582480 872955167 709430336 785138062 757177478 839398386 183998516 273948164 546587819 952713354 764486624 801673670 806162230 951312928 645133516 831505467 738136617 947493506 355231168 455606019 309371588 311020366 548743286 930084356 664130270 894618460 562711553 628295862 171795507 999609833 762518670 942214027 929225125 989056076 949776396 981365529 429029624 672297931 713657648 795911885 82062997 343125334 951406579 958267164 777352699 871663602 811090715 951041213 166902013 469729805 487100372 627332265 864166918 893659503 205660898 709804313 77743495 308331642 983357769 984497930 647313220 708260662 539038894 766986268 865199395 895120697 413798288 744877394 212426206 482298547 520234800 874888417 912916436 978504368 474516859 574597308 592032113 759344263 555793317 591481065 627882873 878378721 374326228 395171480 89502402 679095699 247636233 394347555 452870470 596174074 608829193 975135276 247895185 352066769 677872045 791529845 894034219 909283026 172325143 324256632 234954972 710454656 435068080 706760894 947247616 965329431 660763942 671582039 874691942 966248823 955973495 977835354 195396060 266036668 515536275 806447388 82859759 907650482 190814953 323916478 514152292 619184187 804883861 970627657 66992680 567530085 261387935 275880298 163970449 974346397 795263369 856819996 504442207 511394275 736996488 987559440 38734050 824650667 14360019 550711375 807947426 856967676 746772194 978441662 410852971 905727656 587371776 844939268 466870671 859531513 6199795 472813555 43098797 577064865 232943355 283697096 838438370 866409671 415190028 676354562 886082753 962451084 318738721 363537100 921784288 937823506 832671277 948443280 340165166 442519892 252948540 879915913 36447500 682458844 212017908 899632616 870276012 998181550 457909768 669452446 51483694 868579560 629772933 957811070 499960694 884604550 197316021 540531173 419601791 533753271 350181168 555871103 83055115 446279014 220836533 524997366 546103899 961443649 877290855 946773116 822443150 909276488 908119191 995028015 740953696 903266152 520774312 594220059 653712345 996075693 657411281 785100459 854742523 921458767 817150305 826616864 532443707 763156193 436535541 901363816 264089162 564849850 727099589 809818843 872008360 895055309 792359192 814052459 413905152 615858268 265920850 565470070 796879582 933764192 909666827 912115621 658052740 732430424 441488838 737057216 878987730 951546217 884569321 977060158 856769374 966533430 203954282 789954771 166720334 693077450 134692735 511375830 579927758 635620248 160663826 906411266 806351699 859690004 913984097 934541990 428524739 953286450 25795824 790166845 127715717 459883209 407701457 849491911 692952126 967744788 614341030 781893248 931426462 954008813 82306713 313372149 888929502 988575638 203671986 490176506 813305066 911266362 89771057 760959668 567254270 665762495 113251329 214613493 942127782 985942598 779788727 784332608 171704892 978415490 821169752 962332576 896296836 976530062 619627460 675652959 784533487 809459276 673870590 868544355 475578370 525866588 772679271 944678427 165933899 205496797 117126457 781158582 564604 2183224 448419049 794207874 506105794 633093547 188244832 605359755 978555559 982150153 301129894 358538982 921219291 988739856 548394138 918791179 997344934 997767925 500229993 517182690 675020479 758498007 396044412 535210814 547968789 763081182 442799657 689942651 913689626 984161425 517161206 686071189 361358795 587984144 417270866 910128095 707184761 959063917 748156101 899523245 819981582 959720240 72350906 776053668 329386129 680872540 941773698 962435100 320414690 731504043 52440212 673424360 889146649 948106910 208624227 939513806 473060396 891319784 267560003 877700471 455596921 704351144 10995031 150912136 45736233 318328058 264746407 768979317 977234844 980406709 4920146 186490196 271204542 673153768 137053181 747349631 620991796 632854951 423125466 913086574 547472422 683244894 53307390 103425934 767213 429773107 336312670 347557337 623096865 874621009 608720159 899398743 196723714 416815719 922480712 994464341 251319515 750287298 431387412 466007803 50894183 820107931 78881492 178146878 357000071 915427347 729739137 943844688 157487653 758706436 495576098 531892179 275054552 657931401 883060143 913712614 520353746 641486568 332683575 700900876 131133103 555548690 32146541 441543732 704731994 889578900 511692528 633004825 445379145 889012358 39437376 244923084 192449455 966426135 103313659 183937582 422829830 942741441 698851236 934686208 661125918 911841831 310551551 312492248 722264761 913817360 918923068 939072915 617839176 786933016 683883069 694216774 802057555 826644150 247543573 262098834 378240689 732691914 86749441 695308423 660477731 717970700 146625807 454171839 601207470 807877273 225826850 302689306 182902944 715600392 569446600 838963066 549829268 786400017 801970898 894030236 27711012 92477193 167629115 689029679 403314330 833273501 897350502 975135962 638902296 777213030 851602673 873702154 190331356 896658563 51585662 914586588 870780427 883636286 398644506 925379688 540434521 865998620 514051116 627976996 361501870 901332262 472694569 619206135 383695307 535204149 638381804 643400377 145804619 889216051 804146065 852538344 394370187 955716663 710395618 868802288 12021986 232967512 545720340 603127139 319784353 501490746 7323419 561200061 187166835 818922624 944176411 960517986 354858059 558737584 295375792 697136014 18277892 591842991 174093288 384298738 335407651 748061802 169676310 359938522 196961508 305968362 615895095 936626372 785444968 828790919 902956228 974792760 859244745 950126572 242520104 505029335 81871847 640051751 992151615 996829365 902150269 950589975 93572032 664459137 812707894 832401101 150169350 597440112 501334132 802192947 944403523 996594752 291337323 532474136 587434540 688611362 152841109 515290338 148335011 524920343 116080320 384957934 880079299 892330653 507163693 798980681 26028959 285270887 871202877 936981272 490586517 721760958 868849711 993563132 340936347 762395720 219163036 487811489 162895747 915098057 435653779 514562494 346896043 975045338 708254752 835252287 189615828 454366018 560930111 630238707 110278157 706802108 680854792 778987297 102987865 641360640 545637806 782036835 429908650 622825520 602484191 909449068 150993336 576533769 916365579 937057087 377097274 618377217 635343122 857938052 550778420 839475260 689954944 855233292 702452116 776253514 76363229 791759442 345779446 814997334 879139921 882914101 847416490 860897035 545034211 703536512 696140278 764268127 526889236 800326095 200606655 203122166 158549753 504640539 371493012 652629526 273281697 546026015 451028994 857001968 434552739 875890474 108800470 961895431 896377611 897109337 885745079 896439094 112627905 120910426 433974379 568721949 931669404 933544812 76769723 917756590 998692270 999508327 615355472 749936873 940137918 994596254 773119333 788532938 342511535 617824853 940639258 972586367 207171047 505503395 888330850 925895602 949125699 999100750 889711665 919591707 982533541 995461301 503511077 684244971 415416576 457055091 502534440 641993352 825924447 850928398 952476744 990813317 218889686 346082204 391791038 908276900 164010001 951609478 402023929 813188732 348198563 949945591 940680670 979251862 3850467 451844120 925462798 971494899 848138173 930315648 780107944 793000606 878017107 986579129 414249840 645017157 42249273 583599650 816883053 893669632 173116570 931733497 237452170 544671146 847169961 980111167 166901448 975344735 29154533 435612648 989162073 989823871 254211022 560862688 839074627 903564031 21506003 777261793 602402130 839579366 866055217 922609109 680147331 751409085 358361755 852854483 924192865 948042700 329756310 764653563 30546336 327125993 663755920 952056280 258101182 711206843 322645051 339497196 62185394 979112754 289840460 365931622 214641805 891095629 894245143 996473776 551510061 774872678 446215035 545413476 435084209 836330041 779036804 809954399 626745584 830680048 173910081 938563913 948665455 999972936 981550080 984768012 690226057 743053627 972759205 993679979 509510271 798026124 856516403 974861063 550808788 739420898 152264035 946628236 613581250 987974998 414766867 856169850 810673968 923036292 944063277 970567802 946535191 962020335 968956238 972829688 293355097 476552523 240331678 935170534 169559330 397742412 193211173 255954968 963724263 972008603 85343900 889458308 40183630 180269137 120125753 902769189 364197330 405942360 159568254 175197329 772970855 963038247 479593885 673137874 603287387 604623511 860965945 875764379 646889738 685912816 627474003 675623443 364599632 815608000 319847921 652289528 894025173 976873565 142377889 661460063 255990707 688584914 841422612 929952507 548292993 958985671 855245429 946779629 816713110 910621940 530323443 744464045 295104548 852485847 5039492 744564602 900894121 955119160 924337387 974938949 584159559 854793425 553286119 676664345 986736953 986939672 569358481 664261202 908944162 993184922 267627410 833481127 205610171 461846100 76955612 616478513 399557313 443116792 654661572 952562905 682552964 859299863 605555489 648701974 379034156 491130750 299435620 857691330 316941173 639481769 708152114 886286861 239617261 718804236 748228797 834106842 417959196 791352007 638966723 680403120 819381240 986494478 521297928 756911057 34871017 372419489 635050819 770612030 142059107 472140926 423025903 492938747 416447259 599822109 710226720 720301485 200337439 828223029 428806512 729186977 609459203 640991986 767287667 805676045 378677805 676177042 59100773 593125523 969445684 975252941 216307334 929639722 5275236 971724602 985870850 999232317 83536922 111214112 647255000 677289536 613016052 659961076 620631843 641620677 108349608 212354295 670402132 944299227 55607810 666199727 920954929 964173828 937086536 951458448 84461643 751355823 932007642 970019899 934029584 997412189 652995741 738268292 850135760 994316089 293106715 334141414 885480480 990127767 242522951 977642951 770172639 969609316 996930384 999111751 658688537 731934152 904620337 954553417 801325885 859513547 550678360 668784576 966843712 998625153 277417830 719582566 288248224 715435788 750411920 915489446 165684687 179599158 861486757 993258699 983059185 985790490 931689859 985739938 816225535 883063308 320009433 634325392 965402342 997113016 794096543 914306666 798315178 817100264 687883520 763077247 457608792 493398246 920441810 920798145 492283726 817249922 9648104 361315925 699771404 870311577 429606540 962844294 758114276 803064083 957461241 984514708 389458110 888715341 289534456 290262509 967098061 973767675 393987053 512656325 334997637 882735956 188627795 892563029 623072373 684275996 732502041 847858473 76710920 712994444 861259394 876028361 982333 469795645 104613151 131109733 486769243 839923222 681422585 896827354 61888604 104639147 552337744 764501915 623166036 703365953 178038014 345288938 300435697 571384219 453275655 620770508 748247532 995577318 57280164 62324815 78775784 820792895 970316343 971089751 111676933 766010158 610140839 968999248 502373085 620110230 732980324 924935538 199341723 465651657 789605928 946776447 725536289 792643058 678660486 926915316 43246817 930273152 685304806 976326178 214552415 254648224 920665471 956201204 944549186 965532200 213322298 895286219 273449720 601726932 930137806 945703833 93422667 286015429 926154714 979349562 279091072 689743129 964742844 999565682 955877297 963622722 17518812 493019934 457040784 996989629 833892179 920599594 355753440 563644118 765012206 942349425 100870172 338564385 600342072 770491351 249047225 886592790 166756358 710343172 969489565 972935575 865728674 981371506 473304473 822227227 926119013 942158910 99506354 382949737 42224736 627644970 370074351 877803799 926382492 934915686 362132263 655193438 183886803 403498647 347134004 578506885 161295911 336255151 169073968 979604663 403477318 938089728 936932412 939722251 673494307 732881575 673960901 970494251 736177629 926724926 721609239 891442812 652531159 968098073 274025218 548116237 847623877 938828685 351684601 972938385 517074898 665372600 503321457 589453654 578677503 580805312 148801181 187941556 27926986 274197849 148502042 259015229 591124509 827868833 785199501 788301986 261854292 863689482 976615501 996842072 281549914 494656773 747209491 865150674 678321953 885880632 612547578 927494830 419822530 993923614 415973675 863678321 73968585 670012806 738365891 915945031 850616500 934342517 429587345 865949938 904853597 949166323 273939402 651178977 142346625 807775198 649277445 813743404 222815736 427524762 623990933 698820377 172147689 366191345 927514278 963069566 282362379 669415100 348261949 513882538 972499506 982960865 882833089 969884409 338055316 882736026 517876063 794113137 714737631 874563885 154838443 386790405 25887067 279331271 634174115 790320047 978642796 997547111 745091681 792917926 652782970 794071470 783219491 825418656 508395339 592782287 651370013 929359857 142934721 583379792 936248483 952520029 693911748 738786357 97721130 260740404 681511295 721726880 888318664 986804627 446206527 466295716 608656724 781503442 219812722 443186554 42284458 472235094 709317599 867074949 616964592 786686940 101702403 795957799 253952295 822060361 283248321 838335963 27007007 900701113 479865638 768249536 343391032 962337991 382663044 860591800 690861940 850147749 901766987 983695018 54403833 654838167 50705330 951287159 703980235 846907524 24925830 97556455 431794921 492305734 406100817 877651711 582792376 979497075 160073676 538509236 595813701 686337014 880071926 922640017 245531197 850555249 665625264 859417306 138980052 374926986 227754136 554951248 280815392 644340378 394435909 618541312 277028318 665443971 438746836 824568655 46186128 553420077 29092404 840646851 686538282 859578717 352716531 647166587 473065191 829808890 723379014 725084179 188964997 493111391 243990672 666548629 138922906 577013103 665380514 672486094 323743460 687872203 183706852 469579694 139153088 923660226 74480181 150747969 214024224 529314431 257141786 378657192 417184845 619484504 481383001 656014139 760569112 984335368 766412045 812546177 472257623 684948131 474312780 841998940 326656488 638618682 218726233 420778066 794709471 953391042 758211434 917738587 181323433 961436971 476631879 499724169 353268837 995689098 77724599 289903836 961751773 979072741 705428024 785395017 688284834 690086930 949944701 953761211 55267694 594317880 971853836 994229176 494894620 605073301 736877925 993642218 316096367 459285792 283893747 472860396 381605701 907854648 260459074 713970176 103225396 451889206 840666341 917618985 566286331 793782842 497537991 869497921 260029387 443577745 332802691 777456516 977692107 996287482 113718075 250643035 427415121 435755607 393015357 918487779 230933692 804817795 53991141 660814652 487822427 718863398 296431479 330838797 828818069 927406403 362233841 966911687 702818243 828189582 770903557 954721034 779412877 918307452 525859329 782302831 322006525 768444807 198930661 673833782 237808795 875144325 157101206 779130910 792533932 964855516 141757925 631692084 939403489 960944532 198268238 773249907 285169363 991066238 483144438 490104669 645110990 736337950 815636064 968476926 563631918 597708241 422202207 737852399 157553061 250737389 813528631 994765768 407840436 974550089 163724978 172803869 3612910 742966664 819323846 927826681 194625446 906092983 240216802 980873967 805468918 953675951 949695039 972918707 733553857 897764862 205587518 834490320 910209708 978205782 164704188 482095018 543657406 623635600 384995274 989061484 944652999 985374670 783276972 887698986 787382802 944059708 389643679 531867759 146353000 263504143 610985055 692727533 550607389 900422732 74053383 233829302 635835982 952654734 233076330 453241123 60761475 325150895 301233336 308149712 918767782 923513739 827988812 911472773 836058009 963324109 883357336 999536046 944666503 965213521 18685219 716295493 255997763 815111538 298543220 542043729 403762229 641291433 325321511 730497917 790881253 856963111 185940020 238279737 727271862 878231590 537827347 637892672 772724521 986860183 725860298 873891335 896538895 923381616 654135006 756106942 147936288 782448938 465170100 668889192 728883761 732638644 341249746 742601233 883579284 961078194 364014167 470527961 311018118 366196779 766277942 898296433 828441281 877086497 756975887 987682386 112419786 473277045 833405816 925582352 492572200 887607146 693859412 873074673 121655205 579589119 324822815 756798322 755257269 981685907 954164387 956257250 265127165 310905285 512446827 850570300 478930549 574525447 501394447 689020713 256575177 982782126 787523260 810195500 26703340 828486568 243735269 546432621 183837742 243017803 704779448 804604072 631683664 748311588 936777739 970721097 567514932 898876647 202358687 483759333 753624035 997945020 945978032 957442337 575515352 587932387 706122460 749093459 489698256 805796905 637566426 999449729 821758251 916933421 908678335 915999224 495742436 605102523 174536881 981421810 241896638 793015536 958056555 973344156 826202784 826617602 384662629 780235474 424238297 689359634 798918587 931196540 911123942 938331320 228239182 418309310 916779463 944470986 580438982 816220337 909738293 953977761 702140479 732709821 528049071 654757534 822100532 956332906 49027036 668948294 622556247 979996229 852548315 981322756 630863442 820668684 140191837 187743929 70139356 259808020 650390037 888679052 659179126 708550152 638756838 777917758 97112153 142101864 100962850 592192431 678799051 813146441 48339114 248965588 681288674 887626659 782320684 987853028 591085583 682620033 341966998 840238705 675826771 931494708 392431065 442674217 422527111 621910438 942131509 943515491 356416672 803240973 241435051 997260042 813700232 830516449 314813157 640239730 137590513 762707205 165746111 908172489 7072528 85530139 46509572 364418368 894503793 944506137 373409419 805834131 704515253 707877520 118848995 692066541 579312689 882327816 415014012 432935718 634613041 656155792 336138214 860245986 936666505 946904828 347272855 733422746 623216643 730273645 8081521 173167464 167658913 427757062 395913182 993759957 822740921 946111559 209193688 551677870 369065751 630171997 969710397 996300051 565607720 609319451 106074868 126486532 27149005 306259859 182389614 816826880 995322138 996290876 399919122 598214552 58439179 575641801 846764634 860651132 5388092 886002373 371802712 737426791 148739402 994579018 228485033 835181640 857623636 947794391 22992455 658487759 604804182 674067100 452611898 988139596 25360982 948629377 195971349 401266630 502410955 849785240 386779481 493267776 607746101 993943617 395366512 902396348 991865169 999973988 720130040 878833170 24766827 130693047 720968481 875502928 160874431 243351651 301110272 696632583 870517045 872203465 56326771 690251133 941907312 976858683 898198307 985370747 658833909 905497807 310753854 561376417 441041477 919770930 536510545 772595504 636180721 666831810 967421258 982391338 409628220 423390926 854956298 924970278 902164174 969311163 25311048 602105965 854715820 904486722 625331515 842612285 27085745 557087341 176868978 525726705 322433532 692895273 57333761 207919296 495358181 943776991 649444761 649757578 741534308 947104724 424566899 591867005 26882780 94206990 574588249 884657435 316693737 865455229 104908610 834714860 481053051 779415471 14858418 718914106 466182810 679237341 180376565 710960011 356982385 961889340 926172307 944243154 810227315 909509925 618884041 803452188 919979075 921787887 792868789 988698197 599235797 619349853 78928228 393158333 255385677 713908414 644799739 877743972 663367066 675476586 841576486 875465640 410337710 665134943 739745821 783070087 497966271 707871647 65382471 805713525 599990924 740238718 483240989 557235489 764575035 973086435 689852804 692216708 116318488 198707054 201579699 341222360 734947024 913817661 73485863 511122280 35822278 114661964 162267529 415766514 74709499 730683402 804116728 806535979 638153074 775700715 176103023 322782853 874744473 926004025 196094617 207997537 720456726 843660606 25727731 427328366 193717922 302438388 283962920 650888785 165308309 574440304 148796786 396118136 951754912 991048549 49511534 301701681 518075907 598512051 793693975 986368718 122488429 400193803 466515669 800581768 65132391 82246920 452664554 593683965 999683068 999909109 364151109 963592077 732263105 872292087 1908354 979032877 265145232 362539820 407462885 945575917 157896548 461140533 777550755 832631578 150002371 579977623 567454813 681359506 412028805 755198374 947324252 971843150 442455166 484894511 794188041 797179121 103972527 241228313 657557167 810632155 903268388 906905611 339398510 974939990 50625556 783823310 112018184 416054803 102563729 537844404 274463127 587593257 246447184 831474893 530090382 644222295 792801236 868711132 118025084 633679638 400290287 535307149 821355747 883541251 60892054 770453244 450976308 480485002 380241878 472030673 125639609 576409775 626226643 835944094 734470353 979356610 701791481 967192077 974502177 978676917 91580111 721313889 200571191 447633939 298923820 568819717 204844114 840123334 603364493 616313389 244551023 393130287 311630365 712593284 400289520 905886504 980637449 991569235 288931168 826257366 1792761 800901087 550451946 754401868 339337035 558347853 138233211 179613849 557125800 778127445 448226705 850316603 309682454 671379680 339258913 781594848 915395787 955367132 180662004 293501785 763439451 890950733 453111382 843629574 484795489 823390318 533983114 575009600 620609082 724616645 99129677 758318270 747023226 752182872 580019736 805571898 732445425 790378455 112743302 981350926 65825288 723208678 385981113 911719123 588781119 823996247 903584271 906547566 227123867 421701573 648405619 908859328 184095508 255746822 726059639 963120713 11903216 104802824 544983408 802710130 772057444 851697281 759061595 891717493 102264865 315015400 264024312 503350719 30559175 676411513 737879361 741747190 419805441 429342405 760521828 786539437 582015634 646132659 429852795 502771929 816163793 973516393 211302124 556727737 972627408 975796251 652710219 750932741 51728590 394909540 666997460 879113206 455582506 647695082 945210485 997812789 994146661 998558530 363995826 549603433 525182021 976479356 831477686 900936357 654979726 714317507 696813540 944962502 935605656 972739730 240181247 829225623 909463420 918990567 586049491 615080421 739702213 986678925 375202643 846199902 906534794 949156201 778783111 788964527 432421278 514954537 677284869 985842638 104495244 279276673 585297958 917236574 998092387 999723388 921470333 983174403 663036594 866177580 206527290 447158959 673825334 952080011 991495032 996274044 60492093 730334677 107803738 658998725 988957910 995239192 338434737 899679159 399394154 445687993 403895380 969092165 15509943 477714367 558847933 559064469 498645851 832488269 713919437 996491179 830711781 893714861 44103849 143655870 801802805 856981256 69347752 235879243 72683082 702143005 735890010 907280006 80938486 974896008 11640013 278327224 497634677 694614835 413543352 673338481 588969296 841845887 443869695 923960589 760364580 875322808 777442472 989652931 893937641 926013076 29684139 774066796 280710386 799517905 736093015 851106008 382452566 555798434 710932204 824459073 791473991 808260222 460894598 533823512 409807474 826990560 902205037 919783893 535100398 982211037 209923806 803316105 137191317 979210832 5626192 246161070 259403813 774682125 986978467 990310529 781700555 996069332 444303122 934390442 261593404 822427490 32262913 36897486 964436292 993374405 485716845 887179541 988851730 994746951 671535233 808392023 996937711 997199872 961876883 966920872 84198799 713884886 701261562 872058316 519251498 565900271 621659877 766960180 796213634 999297788 621198832 883115493 604687784 786015454 27055458 376721916 347367202 803755057 532359436 804443946 776130812 902747425 715790542 986186432 483429902 706246833 660341896 877363181 333185332 998748146 197695068 442999202 871548652 967561337 431446076 933316456 171524291 503421577 184280277 687140139 995011963 995230939 287135292 329775350 796098269 850280277 345562544 711052002 991704573 998946196 556042278 866251953 690079357 923066857 230125291 896421963 914675401 999885835 490295320 646575271 15982910 627245707 285016031 288582454 588966810 620646294 85033580 398732889 93473120 146129020 830081606 929236820 765545027 845312968 706189082 715835188 107557322 573741902 555105175 867462008 959652059 966811009 212278498 216551710 705227066 749680238 967663121 985302060 166499860 199690209 584285624 724302079 530498030 793207315 704484417 952551788 258047791 527166667 326410022 515011330 245449892 718116572 245416978 559296010 918414113 937383766 425451584 673498559 620218192 855136110 319723073 531775563 172010231 861024829 766602728 870058232 808174393 922212823 690268953 849010004 99663852 712242384 922012723 972389590 747261745 789656138 322054804 737363149 246852502 819665730 304973042 786489872 208027686 410850004 338645691 536477420 944134140 950118443 248433066 707833101 378640047 489591812 250812953 675682491 820345621 847574001 782107923 786524772 89441991 549233438 572815075 733155199 270974931 763574065 20674484 156297913 756538562 984576224 553611258 634847106 669525334 964271495 213624782 465614358 153613434 725098709 398996654 475030412 680276003 757230841 515317296 602450859 349844590 490514926 56737603 83407689 398817679 872281406 142794581 372084394 294468242 844360885 448763978 788492972 20458484 309449177 983896711 990413033 180020685 634718023 360660329 771350283 571659137 618604667 253696522 334110985 277307831 722042166 241471276 331695554 135266841 675239556 410477045 471248036 21411358 327026191 844662675 853276924 952500465 983726977 55662578 373055771 75062805 631068719 377205730 968439299 962305839 983187861 307908928 412810507 728372114 777349678 648585961 969380825 783809088 864926526 478156870 825034570 923739139 993092348 36555084 311070955 339948404 985112430 525169185 807755765 174965986 545202126 851947559 894679181 353144613 581441862 106536629 219448845 183239383 785783212 845462552 856293520 542953000 992765386 915137549 926676490 106988171 599978722 719828965 860261892 527484536 530774884 866168511 922711906 580722669 941413539 597130280 906113505 580407294 817004335 521445182 812564194 813443999 886531239 409903897 553939489 650396892 889283699 289169298 433136420 994936118 995145268 538299870 722129238 246995893 764529595 835700710 928491379 659792543 913308463 800293518 955923045 496526779 663524268 689585578 738585167 707506609 893750006 213824262 232967995 310202796 557849981 937388282 970318865 892743693 934757447 705838499 836898610 267525044 909388727 948674609 951942115 300060710 597476853 836957924 849516956 605825605 650518176 928400767 995073447 51068148 475511787 318389785 511024189 319711157 338067833 826058981 932566400 185975860 617321487 719518611 869833104 298521605 789279601 191510743 463443798 877847659 935463914 566558392 719740229 300468100 779298670 776033834 966398592 733102474 801013504 539619808 820142688 604406323 653124359 726073127 867283318 382949098 720716144 176430781 452198771 658823435 875860679 949268340 952322947 273798353 517121584 942835749 983816477 491601960 657358294 398203582 514057509 333932403 824250910 562976315 770088382 429477037 441635395 116256607 535213705 469060186 506264861 721760869 865316256 695863121 907914090 640798266 646221698 972612100 987902713 640635058 964726585 922171052 950021846 881445385 943932795 830346000 871230996 758336305 840140171 765495922 986720003 52146201 741700999 83049258 280670821 833979 381644018 862417510 953920166 579457063 717458582 864139748 983729363 23529515 51143675 526400454 728392148 900974671 908059915 436973217 911416146 806251008 970464121 713338041 795450496 325759016 340257487 280373765 977517984 458900152 546212802 750088775 815983662 249338719 899291844 699684204 820110208 388097541 737184726 269060395 762341928 504076720 658801442 502380946 841130487 537457443 820013041 381037954 661260961 954744358 980285773 442623470 611488002 33352279 655906139 451401216 998944058 442257945 479153963 681713812 684914679 615594276 926387491 827032641 918891259 889404023 912723453 660323085 986715512 334956686 863687387 171358107 704828707 221760635 570057405 443504796 601668926 384049559 874446908 560925187 826961957 359008091 966263988 682236713 688363188 990098115 998421224 787443740 917701118 481287097 567884384 472247187 828296126 31079327 268931963 111448363 376551096 345486315 852726875 61457278 313862732 713230321 756887281 946881186 966644596 532361766 721000604 586829966 763437498 750370669 853872849 160984658 547726498 762263816 769937350 421077943 722339227 81521666 476888641 676293803 945550578 777688237 913182870 77054657 329031590 403748192 969683468 396654242 579167454 366080915 920542029 585477036 949118151 109237068 434675502 876549817 957178432 159318720 785272840 105050048 835768971 70387732 622050609 30583082 520013783 469985114 698071863 297542406 937984158 585362168 875276191 51037619 740251646 80864171 174988166 413977285 475730118 210935159 290224417 134334145 470496327 593705005 937714677 905288484 931825988 996631940 997977746 513136325 564323786 364582630 647192733 208707021 620459244 130027657 286859784 920316646 973622127 760482613 971951173 400397549 513183746 46162784 860665451 310354007 322305650 760925775 999059919 864350262 910415693 844296628 907173582 962785850 963860024 354968807 789391844 97609869 847729772 258495635 424557338 963309217 967125162 590561317 959293318 637242862 741599395 444180406 539148166 124768925 334325129 289317077 903063638 245397651 920055696 942704387 969249638 455682032 542984255 289198555 943450069 306831004 467927784 308805018 448894055 209627599 348626487 257469980 805066448 127820242 292971730 317870079 518280566 924246493 944799325 778460204 890298264 892849859 957928986 790384178 859012284 372522916 410107016 941329315 981382523 968408310 971055759 561913389 744228669 635312984 895269026 557782596 679998126 299016244 519013829 737324627 852654448 268648270 592183853 202103040 852619817 547638342 682828835 272343581 394652213 793128378 882192226 720224449 923312545 732728046 840949124 321303008 540115838 121357820 860490719 813597332 916929127 372153769 681176855 271262025 911933102 184308271 370212346 261110365 816934279 30021872 905503592 60529606 771393754 64708780 747111064 542887417 681357044 651549011 854452107 388933708 399129379 350573638 564190681 785200136 896549556 294654216 813166975 684224376 787218470 390743598 469600681 299974961 408493207 711506339 846670221 17174648 932682884 240155166 629782461 371532418 936341717 374882960 697383774 618015863 835564407 476473606 628344784 446847113 477401641 830125038 872372157 540423784 557827251 858651330 906494780 872724487 900881659 381179760 946322796 631544535 888329008 543825105 646041835 395238485 606214702 174285625 914602712 636787393 688854107 682492561 884675722 579890750 711423651 603464638 884770431 239946277 353820894 333409952 343359662 80868454 573100827 111289798 956530366 474054597 654034413 944974310 999428449 536500791 714489324 959461953 978182260 52523580 89636970 450690026 946214063 988490269 994834113 371463018 707955697 844420910 857939131 732998660 972839681 230151975 684349693 892059078 898298906 364650955 874557178 305816005 586282314 844470318 963678991 290999131 692749866 182644603 563328960 42998037 596158516 472680531 724745788 621618815 814044136 393386148 479053102 616167292 907208854 483277120 691122129 931003408 963221009 2385606 262339954 882319796 918534144 532633894 647901172 341133690 875158499 85802272 231937811 706757312 888816521 389654818 808365991 760589504 823561238 993277111 996138336 155837008 644217511 380638526 498478504 661991502 952973794 659474819 910283250 950122775 961864602 641514259 801259668 613400229 878378190 521529929 521947944 639860721 987118476 715974808 903504379 754829876 895987961 88810533 560585851 433912391 465817445 881960460 937541692 260144679 675279062 23495454 90645193 206673946 462868841 653045870 905267824 167267478 175092362 432342755 847262034 308035232 731630184 523187330 833727295 463264115 467775234 977057008 981419241 360237979 611859825 864637575 886202430 419743061 812386987 133222707 879838404 39975584 141037145 468040809 872521326 617089789 666861020 212458927 440963190 188959140 747649016 950433681 992433751 562911633 855523030 207284204 789778022 306945665 863135681 742492243 996084392 328416019 619752447 817294951 927452627 141238009 860749495 688035269 965909646 153590680 173915634 784956439 864992696 941959852 964732922 187809286 595748705 577993590 847202088 770575063 803099133 674741926 799921407 977029538 996193928 453009355 590907017 719142140 914775134 944349665 978660622 77052106 793422586 255148303 537684749 582965486 924482194 384216606 507565035 713434318 739784115 598761658 744906298 670117294 765500642 413448731 575339967 299462898 451865307 30821873 633922661 795825546 831744883 176149688 578847514 324872205 965307903 86299234 601418118 632476229 817294758 593094182 757580081 690176437 891176603 737019716 775693049 376984280 568019224 884926296 940515322 752569660 799835381 236850953 452138134 618288338 930282292 420892792 863309739 451674523 556348540 81176697 613522881 401247644 702731258 806716947 913818431 64224393 710053532 183800329 368682219 745490093 994379788 603963422 775267323 734087209 987758071 279771645 892610699 581420257 805491317 799548864 869096268 165643699 731186690 834999682 991587270 392968297 722021465 117882715 686537820 255957731 955413876 313797293 637472451 603785283 952031880 678188566 796674344 622968095 674723361 284984969 312278847 907950707 914467604 542911928 680598550 91583233 605246320 877299798 993590799 933014707 974129404 987843713 988451057 74059500 388509180 146652929 357847530 402576720 826731691 655401178 893151430 565672266 869013604 330419499 334506141 426241353 766066042 175717817 318584691 652926849 967291996 629856261 870463811 759040123 853637114 150759818 160768495 370227955 839573780 859325714 993444526 432349167 963226600 122771626 593080935 271201470 718133154 170066049 660661364 963082250 990760141 722700894 825664311 645417643 931500684 611986805 756130601 259925992 843836292 925476352 927678965 475963859 556024224 675978262 873743741 672132312 968956256 346202443 813636633 4778817 542582132 33297141 953364657 348215887 698202508 568488825 776526568 354952261 436724615 18405252 197436111 991758511 994534218 907176888 922781517 561327863 755125136 57687179 60463043 339914471 660785394 767571763 932721849 810298229 893862241 826338258 935116133 441466063 898659070 271213359 527358202 550989202 795360162 495090201 765419055 596846992 717463365 616911782 778427496 829767563 975626932 881752308 939031062 570403353 653608938 539912517 878011948 217381882 367464599 75421873 384968129 528393463 582124200 492268212 999353582 13941087 805721391 406540612 793109281 765963104 954903650 178560685 691352439 334945479 515348851 258708360 433309578 419937313 967739263 997691797 999900624 135552590 934348253 856548485 961858171 284585863 836706141 123495582 398100346 489906690 576523984 347385043 769214666 111301410 492436677 338044167 584174678 172795693 879682011 136240160 420729049 481230008 741357794 978790036 996744813 944121316 992104034 426517091 828182767 934613448 936329407 197603191 994744848 660623475 708877867 143504072 985507482 265753084 891062977 72122485 423566997 303395123 844817787 639638915 925591772 582990026 644567707 454288233 632246713 330969447 932587460 73208144 867212135 663339042 766213464 890968279 927906177 174631495 488335713 13942874 145574418 503659657 732101923 247465260 667818544 124230164 406160592 983062787 986775144 759187317 834712483 888301291 928819180 247702657 475278070 699051484 717272992 601317192 997838866 585700687 877310446 957344995 967583693 483854343 948800419 963421478 981271690 537865376 839775300 942592192 970462779 689654908 696565060 503072822 610641232 833840853 981381890 976878740 994514160 858000987 903092028 621327548 979306524 966008777 982235047 803795695 923457975 22865040 905863456 97056831 267874050 428658056 858023861 149688868 722278831 610835858 810877562 310615145 755055561 997992751 999233274 788995935 981652826 883079487 909023081 106103601 941858989 331569159 899680706 670689988 964909454 944103574 976499121 604990522 871215520 860173163 991849865 267386335 577100610 298898972 337862440 146899385 420899132 116099524 723275881 831552425 896434448 185597161 648790818 741903511 970460028 238326762 530010353 415840570 650432647 371097161 645288435 525583443 642501586 712096345 989453647 198025159 437601226 87704561 953865046 251121057 383032800 420576192 919379469 429575361 811965436 973751345 990721611 393912948 999468597 698337502 935562626 610560848 676804372 780608623 796306141 512354658 773620068 5084805 278083646 143408530 611487655 231815388 731914332 980797981 996647442 434981170 926225589 375109849 396035609 391670565 652809063 965195733 993648093 582317967 996185062 995180068 999130121 402043987 823559235 693271019 948138116 420037543 818082525 37134945 677714957 502687407 530848111 681996778 897073297 69178627 82938034 82143665 454442619 584989519 697599950 777340118 951096080 464721654 473103903 316115036 871515917 602752370 859843762 596948334 895211160 908381444 994455321 100867298 842238434 470236721 782963398 24148607 57614480 58332286 771003138 541842847 848863002 800096485 945519568 448353359 705862020 246996817 562449465 503771739 533760995 639315977 998918354 858738923 980450901 70160436 284210914 389403065 449095036 386679804 767683107 631315855 909827477 109724042 745538257 763174298 815026866 854628361 875976536 644411690 769954949 994243758 997004761 234702299 748198150 32103516 629254704 925509741 974824043 715485252 967485187 475546235 713036649 62412976 964668007 199828990 908675529 791707921 918374434 392501464 962980114 470021239 854911968 444530321 811755831 183504515 448216323 895744254 925126696 455901463 622266171 299790733 321245341 491184491 973771067 683238168 704233548 435594494 776793728 477665792 950452908 407629567 971590963 751858597 901328569 988568664 995992489 34978113 588510054 369419354 431950792 196866778 926714732 141305683 851528008 831462056 937168111 700532913 834181492 104563090 911059231 975443518 988118190 156672454 323289858 513801967 984237893 753606732 827525898 146612148 418240327 292243630 837208029 107040951 398317584 716142794 900949773 471172048 478950329 232924071 404839861 945680926 997109093 276457335 988078703 741793972 948971877 519498998 926480945 483790744 967473859 242825730 561021465 52962106 642074985 397163922 644634810 781963698 980909757 76856466 91053977 908988363 948472553 596161016 877183256 68954518 763713142 178701313 708040859 948945613 998210698 539467149 902145486 874376720 944571370 315977509 878262111 304636608 698179956 494991482 819989686 513545679 951265538 11926247 425922193 893651024 924061955 573732461 947764808 86343300 775515608 83960204 594433270 407212472 750517154 725803930 737974761 898606407 985009606 189482977 475975981 834219155 977875482 742479266 860432569 979717944 993393728 9540338 499287627 463128748 786485329 318797182 647956136 578866134 997442975 584003193 983576180 936357141 938606306 742926801 979305653 940104613 949879877 125806989 844478385 360619592 978373789 621616180 721120253 685342677 774359687 633079865 963667214 55143597 409901671 493343781 879308702 615631483 624565374 158776955 952561195 232221922 907648865 643658628 911870123 810875801 883228099 166707339 781902007 357702064 675580905 721845355 750013946 180869722 798247250 221930553 984443221 633646889 697921816 729194448 782915056 897325359 937277729 827137566 954437633 139984679 851775633 730062324 752644679 54023786 575375538 857341420 996113662 618283218 714070026 457929302 808546607 959127714 970079547 792608911 917233778 291322120 806856567 531958715 573877951 396843934 560453521 703921629 840724231 40172397 380413592 688557225 786495098 519731063 584446538 966937585 976407190 58845078 350626671 48338982 806360608 767799051 839079524 883092415 952275625 581383805 705176755 374356833 535694926 567604908 606704947 681590252 807954865 248911130 515116847 684496138 875732017 866317948 950226212 614781143 758024599 16539950 498931365 941037242 981416308 442138020 852306305 443341768 938723841 779452905 886559742 398874506 996410932 678872215 856908910 414556895 878875675 530930940 965999018 781799417 872044846 363993303 852990228 402948428 503357999 873236967 984784909 27636757 839496186 801144676 809360414 979803742 998836083 868711118 902951569 17146255 319431643 964681139 994016034 819304233 992996590 696854332 751865411 904987557 935329470 777143160 993150648 337580200 663550405 480712391 714427447 119904588 923928784 5070208 719656579 427484402 488205347 981424387 989294918 160172858 186360010 618350782 963231498 149199577 312407401 955944681 996980718 353095712 904942228 522587512 695601086 104265289 633770153 418681477 679955773 418915146 808390520 14270220 313518349 351216556 998970734 177483190 598281208 352665064 369314271 902190209 941700586 403708278 619552719 506937787 624178165 496396301 821533855 60736951 393816854 906153721 915586439 472896697 509133395 757412646 860217477 118411027 300258297 953446882 963945299 59457304 160473539 58578485 883003819 666689502 683035047 9743221 735017149 560602548 760162456 796458195 904160862 74840228 833035193 39083682 865434664 891755171 947776450 58113302 677278996 748174835 758294083 482428239 936550747 720470047 932595428 825207407 962803947 254191520 496188186 337113890 459847781 921846166 992090806 493288711 874837986 480426969 502378256 891753484 914831975 377827453 667856419 896707482 948929012 827683252 828195575 410288859 454392465 817083245 858016468 966975920 985865033 194083343 408971534 871838092 926799500 258219967 805700205 114379508 218547336 515313103 604860056 767366231 832096405 826597479 863408456 816286102 841033756 535678905 572840837 172795775 210947539 990122256 992263105 617013869 931267191 127114510 478884054 446987735 485906230 812828300 885592613 950013573 961836911 887106438 890689975 692391661 816269178 308672176 999716270 845729134 854413578 350682345 987607909 680373613 794449719 167010404 271932848 811643483 835476994 227387404 316618780 413839236 579050969 142036250 304974882 484951766 954674211 990013927 996589231 117432407 693889405 762235037 840219520 493918112 887417697 419502310 516631698 739059754 775666834 258979688 771645731 907705626 964023013 72260688 693923452 80333526 107005499 100281687 395262403 932844387 965553846 989292250 991925868 722040487 757284283 118533571 264149507 38894319 278145832 84117423 919270624 449633785 500565714 467854542 844429665 344838937 889605604 446739514 814962973 757925003 853982629 658307472 670890264 81982518 985574559 720594604 982691754 438372822 985126960 691519800 707575771 746522095 818386545 753814572 981249426 958538712 987469303 780144836 905331231 452195915 562519608 933641447 967001493 927835628 999426167 963709755 978978703 818944759 839414745 891976406 960802096 563198151 993637172 819295164 962801709 931649335 958933938 34839996 904861360 417543994 878435887 907233203 960452184 777101259 944239486 60454549 113752992 682432504 966439920 952972673 959166844 40944624 762536453 496010787 926199155 231803788 809764953 874612215 999951665 691423103 785571789 70897102 816962661 981595261 999348493 282204163 545617378 76356771 186394216 655360949 889787473 407659373 733478489 583907524 760258382 968993102 993575594 334384342 358375251 73065160 936477114 716957876 727007371 964223777 977964034 455947442 560111254 803964121 960516731 882949069 887591442 925401739 974936849 540040556 928620361 948299502 970169798 551826451 625543781 209060906 601492944 713868356 846376144 777693012 944466108 806295720 830350882 804229600 952544824 761569166 963959623 793741491 918945394 800791342 981857578 305788059 558773209 789045406 848986814 249809176 565979197 721867807 771179716 830469073 994467549 337411931 674164720 919993366 998190151 576820669 824779514 682075883 908620825 232466253 290220938 178457792 689736964 578984400 633054120 285627488 529826265 864510986 936362168 929424854 971726800 951170520 952152860 229206007 500017995 534757660 683191497 601618518 926633465 777653386 979019979 19915660 606660765 751528137 964146876 225820288 821651350 187737104 257463607 740461194 883806380 393908380 625518220 630120530 757599147 225272281 575082360 31495991 914691387 363745415 414933558 457313319 639028674 92595446 858245052 199782959 462802417 291795221 409803320 403653365 590196576 199065619 649167449 163682526 424802774 317687586 769821061 673193583 709496130 799851811 854804621 530573111 739707858 499859473 995436878 107584993 560620318 945503500 946596738 848774598 923926421 337964205 953380425 629803679 842582216 788588338 800648157 549617877 665299275 721604550 861577014 657018116 825542339 670059427 686649175 866012085 984626525 450608036 574616314 47680601 955563674 235688011 982786009 261632226 993713353 568092385 613115116 830001758 893019414 840358588 969649247 493586648 818994160 631039603 891678412 648678763 711400133 810767891 874751143 907545727 917848259 514696662 632730203 619189880 811960875 661093183 663243519 364407437 982918437 767034311 921261661 874444264 944697371 856217328 864802854 766981077 885366707 386435102 714961024 636956883 915919872 89037591 442623677 995355901 995719659 89430659 321183823 948830795 966245473 195520204 240535465 876398824 886379936 629925635 637845435 869209350 917561697 289811818 339700843 367231177 951973579 644506113 776876440 959783180 987362726 223810021 581942027 648900592 888719311 584116920 879161677 259713104 812537461 133939356 831954489 224973866 704036162 475425829 544289840 201205826 561100894 364013079 678892238 730012422 986200696 821100337 953178655 182720815 317721748 260714540 434931390 528700143 880766814 96723023 763431732 730235574 941807309 419313161 778389039 399323083 627461428 452105929 996328633 117820070 713688360 469308901 680901953 101424297 849005252 133471300 396738889 737037889 846550710 604249347 859669870 169166678 897975889 592895426 750746699 520014100 863551005 856508969 906856995 225205256 707670416 533986429 816660492 80982535 638687538 664481403 710440770 269305408 992006387 180514730 235872677 678809892 934978191 370909630 515927793 159054175 659632682 478555138 518739891 529902903 680903542 219676003 609864647 832708643 874462487 940417356 986438129 543780670 639097877 110671865 330763749 588195150 652705552 974282085 987716926 361595263 840333327 723432575 991625269 9250116 449597450 134355738 827570241 841663498 970206989 658287956 882880502 336311802 921190793 318788430 669922130 270287 856275436 271045072 992492168 823014393 975978199 555602346 628189037 537252727 927226502 974824396 996450424 737673106 843928623 39526447 994754115 282066465 555976021 986495541 991811703 388035286 538009136 83691431 360914697 223334990 429206146 715527560 764808961 271332947 272870459 625376808 949651451 365637138 483166917 446772296 936731105 169166535 291479875 522349288 565531133 624312921 814344897 971648756 980502354 782250190 929904662 205529052 353012966 117684806 750859122 457780657 803016016 240231202 957941428 474020803 912355827 462768879 812778658 479352101 885331492 432711616 769158077 789812236 930724258 717477127 999474965 505118120 660999859 641423662 700442482 889067300 889761207 594250229 915668061 703691979 843788379 973307397 989213627 391293182 616516574 805973775 811883642 158340068 787079052 714027074 751015831 884226935 911375629 342925060 519112385 17327288 556706003 131878847 648239918 14660936 92117619 654949608 763959973 251891393 650258966 65945622 253588990 938505667 989726246 90526071 464962293 193930315 344582977 650866829 661213935 762302746 768128908 747301246 926171818 741736473 872028807 868835375 890451137 69397973 885133727 791009259 800853509 53176122 475174388 501782804 605843567 695911819 886905836 896158413 963265954 116711569 209433789 599599947 882789644 184042108 871019757 321097367 324528076 665588936 751056020 583251914 980629067 666212447 812548704 453109046 741899447 32493247 408460585 299839782 664670540 201611409 622335445 918846968 961989589 280931221 728205867 725906094 801119972 713616682 867711596 606584097 876558194 882081397 986033789 198250460 283553516 331160468 951388449 629817800 723169378 852152693 922171723 16092994 655760948 934240095 950289466 336751621 919914754 651621169 852436608 515598492 534058739 53901419 461481608 98713565 261640855 121396296 969052969 607573483 691013772 159457108 925736007 249314841 325877698 125000772 269036341 638325214 974608082 803311466 916499698 711250405 871818381 853023780 985945684 461829967 494448804 692806812 890215764 644586316 957415519 639679779 659681486 366228384 536865644 761841772 833967355 73952384 356548546 308119275 351743551 869956396 927821025 357171683 523860133 446229038 731005593 498002365 762683740 869867692 885834928 164829724 357974722 453714839 749503565 881268559 996272576 329884465 746846970 305296636 309069080 614920910 889073487 116240836 153011852 314444931 614694830 779166431 842076387 780782517 981935829 536496530 665804938 308275491 342431703 886746959 909028602 575625760 582421965 207651595 279406612 849991823 883351125 842961350 964147914 710523591 831107942 667717735 670199819 289299921 556560889 126957265 571295624 407271642 584609852 227780516 755676349 754734810 860657605 240646886 677992568 384401511 626520824 123263008 556308942 891552966 949091086 13058156 707252039 684360187 771420340 151081664 729190720 429772838 490732704 964984694 993055816 193496833 495835712 675086950 748106040 713592634 722577916 835727493 908881823 275581503 794175359 888202044 949676911 197340285 396606149 938191864 939315791 761219921 939081007 724695405 960718181 950290640 959490371 897445267 981163143 887618973 890888615 741608155 820664562 212410334 414622953 329276213 796541679 969018271 977838590 934466425 993771077 613798899 904420913 524494986 805678334 719662447 932727603 303113579 320799579 368627812 462876025 518196258 931287541 649776109 777819048 766237720 989830264 485745506 586674252 869083569 896383558 555826221 760084869 104614945 707648570 951120484 991690561 386142696 979909761 400460864 427293502 503719402 641914865 789874286 965545242 644264863 948268296 763828745 802881828 985666572 999783456 771522223 808941871 397158970 894257306 289278736 856652896 442708215 936775651 452922168 492439388 283187892 817541600 866461527 930185161 457208405 695583899 891553567 935094343 760603769 785077040 616759300 885071744 961655952 961825591 797758541 919465494 833318904 838565195 461015500 572724555 857446492 876000512 948822487 962889848 875078752 888996376 527218550 639482529 653472266 946872504 915241971 925478145 331960977 476214273 669522947 925577449 869423193 957550481 894616570 993185370 448608216 805408463 649550710 936202034 724351107 759236081 869644078 911355713 496500152 960978888 91066559 442371664 901679432 961223576 654293598 983798683 128212616 772694714 745329055 990503709 792547776 970922186 495421395 623965593 815390167 831007368 562746585 572498810 5030078 68835047 56338140 502688418 678396089 858111864 201601376 790554457 857049080 975241152 159132191 238782675 519808722 594829449 84689740 655868075 40138844 194468474 501342702 859349214 736962664 790314222 216248821 598516881 680002142 827923533 367834015 944157623 877800424 912378182 855124383 951612823 967590670 994314798 12037816 469745524 150034623 939245700 853409824 905678976 890852303 949990506 647602125 863936655 648921886 788262628 357309261 824303458 865787403 973386229 319972232 788077502 321441201 736235314 612031642 951294053 800008002 885670929 433035988 872885254 351890258 853112095 737488845 807144258 891225792 909018775 130491380 138243927 987416137 997338947 36430662 578061899 361211123 677192644 284932689 339584943 433946942 968059635 966287307 970282749 283029456 604168601 801989589 955599991 408018025 836129900 791963035 930601650 211731088 857945082 448221809 784475780 191160004 827815187 251116954 609282190 711393013 785566842 49011860 738200040 130514525 963594484 112806484 610306436 71435780 780250991 973377361 981128495 318147757 623501375 961989640 974333101 368618947 969079451 468344103 983754801 475877362 907086897 218080040 565204928 582014107 985312675 385471892 620128940 976785063 989069219 437684202 653950439 964242758 997613107 58968532 186402502 791084534 933875426 18198132 286183595 338147630 988006338 649972319 980961910 948998100 999970375 89169931 192851993 50187985 460524685 818584450 881635901 69059306 201244456 149986006 349867920 164378691 533548190 518704108 767219035 137000271 713728913 696391322 802586634 888198513 995765752 99994946 696578047 812316394 993039680 953030612 969615956 564120024 944606848 378914132 460400649 377513805 886857405 344462432 900948687 587687137 961710304 452166368 806173429 438894374 608647565 708610232 837281761 776939845 906515305 575553556 748142543 258167116 381220976 479983902 851527892 689299111 894934369 876549875 880640880 58681142 830989774 697663814 720736291 890457448 990612002 679894410 713185239 443085778 620556984 79983872 696830255 751427545 925926675 982593986 984024276 125979168 818401666 818713919 832590516 206220687 548936903 338920043 525587171 423661903 992995208 356819144 934081309 990173082 998393555 282485261 409744250 943861719 970888398 378547448 753770281 34021380 196096027 206070889 688166739 752379334 949302463 176143928 209985425 754780173 758372539 359610281 377103798 926062160 966500474 311550722 744416614 557690893 777019990 40917076 841951878 313108014 423771445 197369380 525823964 348857944 955910404 428662993 867094304 380208059 385531161 531166014 938381546 298146857 432150653 588787197 594878764 982660810 984887724 984283080 998453025 170047040 443608841 712421821 966348193 191354876 467339080 542395859 577063655 141173286 149501581 351114129 960951947 91587613 498318332 566139513 812062030 727911468 998432262 523418107 915411908 495218966 496437239 635810587 823372542 162505847 412209518 468828703 866652457 614174531 946940911 907118466 928503810 485317740 900818628 242324722 724571119 37514504 704409422 492564907 522921204 700894096 855609487 753925206 926249035 463545323 655971830 120963953 515271689 502607889 516853036 840363999 883024085 825433748 976246726 805612491 892447543 428913154 827403111 880767881 994232869 10246531 335160470 842409002 956383174 535390616 937137137 130942174 685520959 135538013 895994021 281269134 736092524 339886008 385762520 367282308 561193066 374878833 474000192 223652151 823422968 990349674 990739343 506205387 706852513 475121388 514971091 729625595 903466056 576665938 798047044 372321983 704021241 392354642 437081788 980041929 993778233 700450644 969327811 850878924 961836289 145116672 354178141 820535535 983814501 895489927 983427491 493293156 743402810 415799790 996935566 904623467 998160689 572581310 747390254 442079478 888663569 346741266 817312418 643827503 714083049 425500946 431395845 635331674 833995410 897264279 963692794 339344009 939903435 391662338 815978143 852805952 987039004 259736272 320759184 580805403 955352232 428789896 721788660 862132524 988606191 271095994 381919470 262846922 499880738 386286918 455098052 828655989 872665692 876055623 963343331 225815421 605626784 493118139 763378848 891657294 977275121 277392591 689361054 681374571 998875961 252519015 600334011 745537719 962715109 927524919 990213263 523565484 725349184 758751468 898098014 440275118 883338219 433856389 957320748 250198534 700891837 38470520 431662023 725541194 792126166 575391686 942992309 574263642 852811051 822342610 943691195 245199095 542152662 505118268 728855981 433645091 702866963 545342968 649814425 328227453 785739528 201053073 459120898 912670193 955428392 421707657 427940249 842274168 900384161 218652372 582462338 470327933 492846631 357679452 481262961 638338117 952342445 745252037 981810214 769713936 782684681 563210000 647462113 185999922 528096899 824103279 931632606 411490741 533220081 120807362 238985732 937439005 938696887 658083871 805915506 35307744 432723728 28415137 390588557 893189024 938385505 679247620 843117692 876909869 928650620 183090163 572557252 760913142 818636822 374407034 919118071 101734286 168980007 904821912 989719583 538123592 770904387 190325138 776477596 390734133 594471368 320558598 873092369 973306654 993797272 254511799 276166235 175251758 673878437 969455534 988105250 224430445 261276136 348367347 354865984 568058131 851262138 525914432 533236307 700314799 767512283 494065704 857660497 355574297 858395713 460823718 960838040 329241108 383622227 489081788 826732628 610870905 675610502 277013420 947068449 126067998 996268006 45978387 343425479 299431873 791460377 100870148 696907407 84672718 979598089 237091176 909597938 125382680 220966468 747212925 877929948 879272907 956221081 871121449 931457638 645023727 762873593 492424325 659791709 156255493 487844079 609597469 928402767 333439888 962716228 337639904 962185990 373986360 539834852 213844176 886056005 788655595 880075079 328291975 513581432 771118000 859996851 185185783 686481986 532648358 920994884 77810073 278689402 492453030 874711816 65392922 107822792 308808340 742205796 784551174 983608208 960878636 973367319 334836512 695212617 763579047 851115126 51716035 357536609 332613385 833357557 339801511 849261433 862866554 868087436 531954589 945063078 972467622 984276479 940243633 986336547 679540212 916481751 161570717 993015283 527287218 646779210 527760781 831524993 380585364 740788479 762850156 996678895 704575327 961805410 315204847 739791160 375792297 621348599 707944715 838483180 814906679 903415905 778062505 795276429 804836945 939210207 513820413 566432319 713050441 965508837 392180981 775798940 956862063 978891121 300403681 595352517 310126973 506339068 807035059 818138099 445431172 941356553 174797510 883352669 992414836 992448549 578438607 699505418 153634386 482938330 3354456 918769981 818684391 986725931 462038807 687078863 13214125 460539468 305965747 645587072 911259625 956513301 272156691 547982613 426884487 820670806 991845964 997386766 673108200 883955522 899251659 987802840 847697978 915468277 780973069 806375542 104678824 658118949 775099550 917555690 747713935 879429558 743043528 917335915 294803798 941907268 942411296 966007372 799781239 829294940 488057234 543203875 108210901 870411133 238524385 341036369 98929187 611087654 570005026 931429152 501822380 664176139 869410225 989537133 888838885 929948937 870050733 996845698 587761501 683230991 366161741 496413693 618385708 977255286 348833416 416340511 508289776 732662129 275726851 577272583 223525592 859365175 875033164 938789001 451991156 974712281 977464459 990093240 509124057 971959593 499343202 632500316 306242906 341061072 42846644 387236133 659065367 867140362 223934975 863423416 525715362 682640840 744438122 943009126 391748909 654596131 538326614 843067465 586485870 904526252 553538277 575652075 395584401 638946253 291946851 636880095 98282795 769889212 407767425 728167214 303216760 907545313 498636992 722682937 626507515 680440994 504851123 580855640 14875681 490535418 654929174 688449402 548437939 746367312 80438268 717142272 333281975 412556260 320310996 485603514 308264892 366325837 916288160 938477108 898979713 996821327 232323357 884525997 16052161 748554315 810901159 961917466 233212219 573116063 102474236 190759635 544736065 834762046 649876709 804452833 154536049 913476893 811468016 975598446 738683487 980929547 968090919 992616073 203189476 232003985 631320718 819176223 608671900 753875880 424282575 764343195 449081696 660022596 468966956 542947627 263535562 856008437 150289886 992770321 365835640 910832882 852182443 983314644 689698264 827187504 11883720 976374063 80364134 221650258 369176186 825631157 523259824 878399213 452526948 658663820 63905276 550946631 508280261 741313274 170036365 948300809 756263333 857643067 938140792 988906508 104558235 459666108 565130137 808314971 564419588 836816138 474324704 716626957 886682632 960404506 462822830 828638198 668384447 734522205 89208937 137031270 27171921 371045098 274494628 510683580 10597333 215541557 462763180 854561587 845281993 914744967 71506941 187634684 689210078 737868714 350953850 351579681 416435655 982624502 209491388 394613170 942548917 973109242 199370902 823378198 147776290 386992819 541945259 699091812 286147088 345366853 788666493 975074576 646101340 839903685 685416773 972070980 483080678 506579174 23546561 941339238 927139811 988370855 96472428 163275879 957450304 962396289 234541247 519939629 458867577 540779966 847759154 870477240 154543879 937284751 112970523 171123908 78892778 850444780 354536427 637506508 109710366 517074248 290036332 530637443 365148614 404800668 874543147 878499886 170914183 324903471 967953 50806506 939924597 973179028 279752992 774657714 608197907 856335257 851771624 865053951 418505230 764964427 137042347 320584657 114862252 232763643 894071257 934950787 938342282 942860617 933205325 973348270 468022587 688660131 117478676 682191455 140005322 717988811 342056071 631933752 820470835 912543752 176114335 539744386 706638495 763266120 570939689 676423649 678266732 970583278 548237472 941324716 771714284 894063398 795119791 827510875 961965735 976516092 254221813 685096712 30895043 805545966 309665682 514698224 481910316 852099040 265629089 675150017 583897040 932563946 946108368 980105317 184431362 850680350 602772443 611377591 956004847 957211411 838703814 844372325 655120391 763894200 916940213 952089200 315015484 617016649 493439916 731766159 93138328 441794778 100823397 594493421 890335605 974766504 740839071 747550802 932752128 933350120 716748153 907698784 796209786 991410003 692072669 780013939 816548450 971868574 414070297 615221536 626913652 845560313 359272724 784994983 447453701 696822541 292316371 626965087 414216140 859196839 10674296 486689117 719494369 868000938 156556387 214218665 768337439 857532099 417375782 971728527 739877354 994441759 14535721 243600744 562565539 565731892 748154739 762419839 598031252 633033474 305809478 997070319 498829259 538312646 975501102 988822141 133300684 516761974 893708552 996979742 9839729 367072031 17879762 656639343 953355005 955261122 837659838 881426377 37273249 883304468 388713245 466059051 46668310 650817890 268268540 518401497 598876444 843152422 529889246 753849651 898355008 906697315 155371443 518222033 984437863 996606189 967760967 982584113 378631063 667660397 468109070 962832420 81124022 379104725 200355201 451705433 198957505 298806693 4444890 24493511 645739105 823956270 599832691 622733299 61357517 849203500 219370239 393110793 777901996 888672977 739237414 792646425 513034454 561114758 641989840 704624776 186582824 712291981 82340498 708609094 699049521 711346659 220343503 944411191 489419953 683801646 185457153 333798154 410051098 478257524 383249398 585912418 497582825 915159449 691203262 738993874 601507924 926020307 483148859 917551596 318750943 699468640 598013938 693511442 990790892 999328005 245486762 576018870 400545258 452806770 447155399 991929361 555205728 769713324 408664894 442491693 234290416 617759744 112531378 927781437 768031364 922735942 532483522 976564946 780772314 974904192 49352944 433689669 272497376 465907767 227251448 384280709 287222153 447292348 131241700 687668030 259970450 756983969 487792993 963822212 546659617 832239262 547377849 693393422 188335411 715467793 317347575 526627939 648710048 932707942 809416993 826589410 463523900 852363128 771004275 978104305 746680147 927205596 780300662 871375448 912824936 961855156 795633568 820041285 181213571 972327323 97234311 369683221 155952043 947738473 937520698 937943014 78400372 845809835 490001114 739860905 669773102 741785282 890704782 964610981 748218793 897240363 151711680 816573853 740994310 914461027 514136759 728424956 667170764 963425333 628662260 645890232 539488334 648601312 572659128 763553004 898433633 952709475 441585632 718961937 514380406 888953304 727858671 928847857 409622156 592475698 46029500 513157042 278513912 668941718 731551690 941489283 851096095 862097164 808860101 814694746 236241765 993194083 626565518 703810813 981804055 987899919 576812953 799155436 442272270 771480905 35191810 285400782 612820704 637414895 698061572 935950524 473953181 983675276 14440533 115987959 466598132 983587802 945957786 947062168 11979611 210883455 632051495 968146204 854759478 940380615 805156840 976980947 842312392 893143589 787854808 999652399 352963042 729934444 844613821 928661405 214240154 427498591 930856084 956374808 303540780 561232620 140333367 407847019 425560343 635832659 134087041 892074756 629388698 971327357 197968762 830741716 57470946 204683787 316790973 516634292 497746083 833296928 686004069 836559912 119172565 301130245 827569101 986527498 361641116 748900973 497935207 514556060 363262495 403397896 644805269 902657598 705476264 912424536 68887614 128133201 721769841 756139664 378122209 603489784 555515900 970557604 414741813 568587119 856682514 945184495 409885537 751503143 451774922 760791998 309380175 553736411 369599041 891725108 867638785 978590534 511551775 869032120 60196555 529464603 367093852 390780095 226589921 791373598 167347221 559155149 628694561 973306350 185900922 292893306 141613676 361092151 743417426 918065259 340905909 647803501 74286155 105706584 904774343 944469551 87393298 360516790 754529469 995820038 628011562 919332958 929976065 993944034 11273702 192450008 587315012 693440767 634179665 924932601 130092598 289556488 463005434 638441922 855943823 922878362 978317949 992543286 110366831 851882335 983274167 992305388 160840699 218644454 767112202 998097793 27337871 599465379 975830403 985713909 370477026 919801880 509821265 966241979 48039351 550069286 554298732 953139232 47118695 71590018 484782790 769707975 905486232 990403130 617017937 755229254 294686447 434295399 528199223 595175899 541108235 959155681 389640952 827896948 429750347 486996231 180867635 770185646 806263637 874601343 568785221 628853280 350702358 430438944 800833378 877561755 131946231 693315250 344896384 595067181 252131802 735004080 252264125 546366737 119010510 776231640 24413265 851180904 669736821 857885459 288525182 470117053 690371876 772615653 431657087 819465092 853613137 871519398 717174241 723127918 153562517 777634624 341964214 526322116 724508893 986087243 662843531 720491910 63225759 704485732 554725992 799117318 438915313 510541549 415254333 501906266 922338825 981978303 681358908 893073343 787337138 926896093 560444355 901140913 211239249 439258451 202701821 303151919 34585071 48118065 598998942 951998066 150781943 320882978 497825846 731232107 868144783 911030952 820407946 854321283 428178936 629463702 57664551 753884672 532225763 684387710 48950122 540676396 480948196 918763120 811630523 828969401 767294018 818594911 799203946 846391257 897715675 977118556 900280716 938786929 949927822 960855044 453734239 580545237 624524624 780257217 265538804 775396098 384394540 830663490 397641481 563351284 507576936 747686176 21008305 527945055 823046385 852080940 232944046 235446498 424729399 684339589 772715085 981369120 674519927 892957509 108245395 510551438 531100628 717345233 736621099 901013721 733308808 986202313 905739491 918225498 107773152 675350415 363174430 749492442 533055719 801099372 649453916 652860712 391583751 840152014 768941948 854118518 362636669 951510111 407131619 724382870 181140270 719239006 296330406 555119382 780229661 880150731 276236085 395710192 170827543 319058455 284479598 896703684 14434991 234237026 822336229 903872110 430305136 627036131 605221736 687167314 218993943 743362265 117499137 848694395 555712121 983199310 556279006 827766605 72434677 875204598 923062423 965261179 985398042 986788559 806535901 947409624 478907928 635063157 997469926 998720606 491770267 976636554 890243705 907891647 607087911 902890171 317304072 544003930 980347964 988397902 447386567 998938699 687381343 956556413 652740728 805736542 370738209 416721425 588355224 985782023 917901144 992710391 36396707 741356585 7142870 539961554 847225045 947813876 743320181 920374122 223511713 987138104 583317474 731540673 446279793 795144516 805833346 933429415 472798034 780701046 721002608 932890563 566422078 983451037 528135347 700621840 724760081 866164051 691790663 955978706 274586529 880810680 820735193 843480165 563789454 852795503 145339004 281767346 51122235 526213312 195057712 792584336 815632280 935040446 981098428 995570986 86341838 639601796 251926935 570317606 561436338 988479034 413872874 734242134 356865646 545418807 822059518 841816182 707053820 708296861 136287487 443398853 745417515 745850385 612190016 655692630 888362706 972832115 818680520 977258946 165385445 618939298 527582868 680523037 620070402 926893389 639592195 921035602 255465318 947930370 98422076 617757031 950752902 952019062 877487105 928325242 641083082 998644258 25202563 318771663 284936562 816097629 302538925 947493519 14900852 558172281 783788456 826746675 398656025 816848630 935700601 949775875 84528026 711602676 157992985 384578293 924847482 981574373 711973162 735851832 18905748 231626166 240544007 852248241 121715311 288166995 269297735 606807670 998854975 999606091 421599325 672026790 196456146 804415119 596011004 626172692 599347978 837297291 2409220 700284311 219579834 747236748 519837811 905371447 155058262 207204151 672711702 794469473 691306317 776592326 413617278 967807744 288371224 373004807 800710730 857714476 182957992 622594849 427190275 877071746 638563091 875388410 77314601 642574611 261488251 291104736 814635530 877872388 238031231 984189594 843309006 902536607 642796045 715560845 74702503 818923312 613249295 800567028 261729185 485442316 499696933 950506636 332700626 884068828 29236952 280173780 540452477 677547643 924084434 937474083 461532044 928432965 342088849 806717972 577006930 802243855 353320777 856549598 658977126 739643575 994457858 996098641 661948177 701626839 227594131 619194342 858707223 889303182 440435480 739096716 166549199 963102402 555752484 827725006 865330596 936540876 745457107 977125026 794262286 934403324 115301812 880419965 461579704 685739635 841425185 913043881 135028199 916839935 42396297 504956672 813485658 928406991 240547918 971372696 865213142 959008198 642605168 785300937 453339953 788922027 600378240 721371707 100574719 194081243 556266971 944154178 593331357 866524663 298782847 868007640 600987269 682818320 308215674 496014337 370210621 943971602 827770188 851825860 412133892 455866186 743550213 935465500 419855568 643061640 15138473 281905250 24034400 568573646 75829797 795407880 581903803 585247530 420298489 856557395 161328234 396510540 309230676 774199620 603485184 905259636 996413568 999598958 168097508 555727326 773801656 948333763 903869198 985358342 342066390 789149135 111231789 807419553 865090197 963102270 652437290 742882603 908591657 998500414 968446550 992361339 944306718 987885530 224628421 454780234 434256451 891807383 939208988 960789330 494543223 764213393 513649157 989432935 303333666 447601605 83224311 855258353 313617132 461742019 466782055 571300421 941399466 968847213 37292151 361122301 956470040 958704852 625829400 972646045 396215869 835072041 455574294 982591063 711756429 928388322 730718281 896406477 846117548 934963240 258301702 462091920 449016641 498177389 238906987 767889241 197469879 219377844 77715097 277935405 496964976 501196578 885650910 968267443 205101711 918121636 227760207 661155700 756597433 840532031 142707296 175586864 197074965 354592120 946990975 989497905 446126574 818638855 711183593 822929145 833326388 931639472 248761172 403664081 873004960 954630214 878334495 993709237 10012240 766871537 297996582 550385523 287859939 401612728 242362663 728070315 306494935 743518911 184730279 382030789 407466780 687125331 72394715 213073295 666005973 881671693 523704819 652572262 852819164 948726337 156921922 660764088 690429525 983447259 388166897 456791436 272330480 798462657 260068363 423456402 359592351 360585971 419823456 429629309 608497315 782520688 563407910 576447516 564410826 983881663 658797844 813771422 918522191 954318759 186738297 360227445 89433710 898737037 624345904 762064556 430396044 565537208 670968589 901381984 589507726 780165583 927733284 974911373 271792439 959392196 711518529 873184441 288800805 554809410 237744118 677405421 502956443 727145130 741025608 970816484 775647583 937675989 908830184 928755374 440821768 920084888 960730047 968170281 671581999 887391906 816437377 840250353 254229230 802077263 85386491 945233711 237769552 445433045 644669712 742919584 365183888 768252530 997262592 998535118 734988703 797686507 187233053 240206372 984013829 991446085 920824242 925240410 537911032 695363115 723911713 896935206 600629028 812462698 51922544 171647088 236868835 490061049 479578452 725017286 832480594 942809118 635635513 984318338 91546194 583368377 272189394 916979172 517460341 525646994 71693794 712671008 420777676 944487272 522782854 807713567 57579242 155384853 67391019 773900681 748566537 957593585 977100842 990759120 133520987 134261810 488075700 677868680 776197983 964602660 524101333 783367940 983329076 998754583 128105427 274915395 133033934 529421588 942272280 962752220 429877665 944487390 801351637 859140960 275046053 286627587 535976633 865855523 692683044 792212084 827404155 928992793 848751061 919911299 662444776 796951696 17495641 650143102 446333377 602060489 351891917 508459689 440758608 638925823 303157060 893610766 846648847 884284148 749244140 980879221 866640335 933546535 442127604 810945233 370691451 654877433 75205589 222981856 825232077 830388348 224492489 349144441 828512377 965132893 6457940 922877558 142256814 951833654 213298758 828324662 885933269 958712489 383578337 759059684 743656499 820382197 381908621 485548604 288705321 361743003 551640198 787687066 494232463 575362390 493742321 961706007 455639442 738878772 577671923 761397413 430605707 738223327 750565604 997883982 527948713 853334564 610445443 742417718 262220477 879499224 344600495 571545313 314470167 874998975 713843893 724313766 295284847 724765857 820285885 841589542 293171096 851370046 632651516 747491512 526867640 627465708 189649123 256087693 144016300 747306083 130007883 268223715 430002622 507521522 807406927 907999494 478496526 920530821 835150843 904645799 251725893 918001326 922059090 946326433 315385735 583753908 818880843 873572353 841757092 980109223 47785165 585910973 611264664 959156439 263042706 708990749 172877749 398257601 520645769 639814891 367720208 836190179 64604800 369803995 546359818 814532850 894234348 954311559 775510620 861381869 290501854 520605082 220698335 312482192 80294525 145979381 210941232 251368036 316002660 746737104 176677546 527903088 477835222 592193217 379088848 812496624 742953124 905348994 895911752 901413678 455345247 538673143 22411946 601769970 473751537 651469107 49248764 829275290 747078737 969586277 912095483 988798913 625859951 656962409 245095935 305775366 407930923 816200848 82401114 700221112 649250629 951311924 373998663 726479752 763587613 944613156 282206029 873522008 469336325 564466134 327172654 965696853 693952533 746592833 898325886 983602983 199006568 393060863 237194961 611845896 536195456 827981090 906479315 910412645 471072406 725019178 32150662 931335799 955555950 995501576 422229908 954737276 679845841 789328422 284118458 754918974 970233738 971823524 967388505 980486967 134472094 511457345 12820230 900212021 853019076 859508693 635903341 886897718 997458197 999789897 900583281 989406895 263815004 277259668 77813826 145076069 549212174 986263445 851435997 966434598 391088718 887785654 719775591 816285427 356093594 545266881 90741443 574813685 878449437 914170291 341394365 891216772 725619829 789222042 915041191 957557489 86237238 260012598 693948412 745836982 211589270 827093020 729859081 780225510 125339210 784774004 394024835 630725063 400929257 491216909 375426190 505820203 881704727 973417127 412179448 417288720 9041582 816341160 327837406 618356144 792944821 896499198 580618462 897672443 487627833 925701739 738637816 771973813 486268750 703934089 110950467 264553581 915489784 929685368 477053798 516875998 554009337 638622498 831176873 927924601 663528786 929717351 359463254 783843815 442630486 536998454 797945536 844005077 192984542 996797028 166573068 951515185 610716653 719296841 357981509 672922038 393663132 698241305 213430832 978963927 525978020 549231654 266122567 879299552 932814929 956047182 608085291 627201127 756089470 806437539 911816147 988660120 623835984 936791151 681079527 815221487 791281363 951466449 305552025 338418355 451473867 638803711 183854683 706611617 875262061 910901292 919810440 960923340 273240207 633682949 589371567 812739109 188728208 596391402 899834828 901486328 632749881 956621940 97270445 965363305 817700898 869329785 981541292 990806571 289336804 671148991 214531277 215566011 97573088 271449171 185768893 552981206 707475841 846646117 516784989 526858370 147563508 432326899 453965929 602751400 997587967 999799628 184552663 253818832 48130981 816145776 954454470 992491359 108092392 963570797 723496394 747876251 453501939 860438392 264279413 766571566 831613169 868544026 671517982 837171995 189584863 487826992 246464449 996346301 144344692 787764910 597753505 850935762 106802085 493989827 587967501 631089437 824010989 918518302 154834403 201420639 651895619 933079050 682089117 691070145 556226750 884902477 58796280 160384735 427227699 544825045 193129155 514167856 843585716 908956557 679606812 693463359 119929272 652590622 618793549 876879218 356993886 965683205 421788477 856190905 135577562 474230243 419347128 816128456 222339024 749949526 573549885 822247797 138434868 464648604 788583111 892970088 311620564 875552518 536370422 855706970 771979441 892532134 95035178 973661544 858782048 892775535 397594951 889466171 443054945 678653297 716768172 801133848 79693078 928543820 740674153 986165656 401779485 898671528 124579169 219895122 562880200 830598336 367422642 785501124 320065071 947513665 12934597 996953787 770427542 904515585 474868791 917665296 862532973 946239427 474284438 961200484 370440800 628636979 981251135 981482965 861856284 895495835 859701991 914370058 460191132 661305284 999908374 999975954 462220887 788500546 26348182 515653874 580424533 944710635 285088903 767795959 308270752 770529034 14596006 22238584 595561120 670755808 234225594 476307513 38907895 400107860 152967131 642952906 595477800 846736386 749893295 972376855 381832503 622103073 990439346 990783093 373349397 610329043 199386192 319201342 724058168 917680837 932201555 994858336 421598859 509948834 966208132 991739178 986651298 999431427 691156650 891093018 258055071 984661856 625866710 723372025 714100236 803197835 631033483 831227835 645909926 794698649 417179375 878133395 189078965 235967650 594547294 658342735 329738206 804416905 514237060 955497456 537017470 943232561 629327014 690269628 496626786 971163617 348497794 583764186 669677460 677209442 692068362 855217697 790060885 937178392 370914214 657006585 192413459 755217137 85782401 664735252 189960359 870629737 436805508 512852746 390968820 500877056 21091520 779078557 356331881 665090416 581728310 871631692 108061945 405639327 496411280 684107613 7056863 452922233 251126680 792073790 658258589 983231907 739376510 940966064 451320873 525329516 862256315 955757827 647923556 955056425 912146504 912706226 275714540 466177632 842809688 953384416 496418522 813211690 746116391 825488606 306980674 435156217 634396678 960015586 516191095 788211620 727084650 955315501 617745761 644001239 222387876 301122687 417799163 485011512 294302888 568431408 175407705 571943298 553837538 835627358 379361245 399531055 622275140 914415966 2542018 941692373 296216319 846610522 380990405 643535156 722416138 931933109 544404785 575949929 832556273 963643066 78526853 996112894 208751755 736370721 143637910 646091159 768888190 943477501 702480980 706721914 412069817 979478724 464933723 595777096 397990915 497301569 110916009 683928506 15180587 340623258 103686564 351415538 826814437 855137515 608725757 628450108 168214730 829822355 427514088 753298397 29313965 525892074 651015246 753436686 393813254 664219191 103304291 488727817 660293654 748536503 911134536 991964715 432881640 530174365 509036871 652248372 584246842 590204073 675339584 867815091 305821226 796659938 415140386 535746900 126975970 599053514 760727400 799787217 117962953 794735817 467011249 858363844 314225554 877539568 792094325 898943031 813451366 934569569 301901361 748102130 548007046 574125024 426208595 496982367 932831399 939010219 562479229 749268053 40718848 717308618 18279900 936140021 92405486 204411929 399312220 520690710 533423168 896513007 107157916 197140222 122012924 931072714 748741954 794504237 553785628 618455290 595551744 672356751 90873291 991811091 500133372 612073669 581644575 826932224 924184455 941423075 185507693 386921471 289504230 622867901 969082318 974988497 454985710 807717798 117736432 228388758 48518165 712623560 38103724 203113625 793726107 826758089 644375029 842694838 240586869 690985182 149332507 242390840 525413394 866345969 786950460 840196921 873315530 998535359 880729754 914581671 210206877 607516386 728029864 997808232 22032701 499295905 668317848 876621060 807023059 830351960 225492188 782593489 336411668 674415632 133114474 348360226 465762906 870448361 606349488 954971529 644689598 973761853 119351391 262458787 335517961 645204995 953488875 976651682 566212471 644034804 895816433 996542913 234819663 439566305 451931192 738027538 619666735 911013998 333499710 594589844 929745539 961471828 221553992 529728545 455372965 904631659 442444789 764596808 792925881 957246617 846457998 952887328 463220311 993078156 696182833 801366557 882818101 921011693 251051978 473985753 813038429 890167512 93073045 111316527 6604685 124285054 869660108 959058309 626617421 742353675 39280138 102597747 624209961 730151801 744923503 951603060 206325446 990091509 154018018 419669746 41623760 814294344 747978974 950700887 418263656 635017863 127905744 894346219 272866878 389268227 469387119 893705520 776082232 799820129 824299633 966720820 890300864 959286419 384043067 938866684 660177313 982920277 660890916 728109874 556571675 919610048 591219964 811362701 113983300 769419487 164548113 727501207 703963386 722294057 631150268 981523643 969263 476853928 596901208 765284542 82002482 581271902 719438925 980676763 716677205 927769761 888054738 951255063 436668291 551222473 369617941 496209164 417133255 739333880 694427296 817853139 616929758 915774693 19006044 966244514 446759383 862072749 827944701 877001177 784377089 897457795 538210624 946900346 950822615 952771580 478975655 602726534 957000100 985163120 258491718 657264110 458102840 583797193 769847741 947120457 895017046 984371037 368706943 638800762 910609978 982938769 780055023 782121792 878848694 914860205 718483409 782819909 424438384 576038998 141022332 448717674 266893421 408682244 56080826 524540886 774011264 830828701 732044132 975208953 154742964 268845039 664585028 726115654 709296182 740480287 678100580 767522116 924346893 940317806 360202759 760426527 95211496 997562375 796383277 944961086 422027161 488107331 474056536 946025184 197742930 428986301 314465881 542095093 215713632 744310345 303161064 653196184 747847262 993045229 204505791 335108286 350600154 815018867 84735530 582857160 802800021 808146616 762050380 921937441 519416353 926337941 567741590 965757953 216414478 545389316 193161213 909962039 440712234 642065890 748040108 866821098 191007147 803049901 655631742 874393771 435391149 465593633 778122941 797309441 346797951 810618422 866692523 950424108 431293959 976841430 380551140 809410340 948328919 960026288 589968779 737483633 294544707 839548927 38318365 629065371 501090328 684191937 21172934 259682456 252528098 919331411 224841590 418850802 114836922 670061534 605115014 687316027 610636126 623720704 274628889 820132192 698504235 735655876 707388292 981934004 193882243 496387293 806900891 842967603 530048144 587202781 108279490 332280245 993531172 998161966 763588849 906645739 281067895 401228611 952702369 980056399 397455420 827610916 354031436 423454875 141757229 531835268 745560385 827884809 225235862 564684636 393364535 502416683 925107221 978468588 236646215 835334262 458417936 712605480 402787860 638730489 453371470 587388945 613389873 699208640 539280118 725293082 272207866 709024524 461505997 631133551 791016525 874760369 882003044 899861079 578668197 954902858 814875625 865220491 777355898 785923882 398745129 699512570 668518434 780972937 379106774 977092323 788153988 943087308 94461773 535738076 664819256 932620146 655717669 718028647 696814512 741987458 844483200 991338994 531714334 866450447 927169207 944609833 466261460 937591818 290143945 723655122 160872868 471384921 865720670 960987037 738230708 954394149 326382779 818856703 836032622 991818564 146708164 851411964 447653046 731444916 530934744 875669961 788718251 863814236 68562102 414188884 157755948 209392447 452836654 990824308 611203364 799986134 410426818 875115629 849673690 910659754 738194451 904515432 821365306 885589170 294830634 721521108 354760049 901908558 227379689 998574451 629092715 662523863 14318575 395534239 11637689 879054808 876263625 984513405 577972129 830859521 286840155 515075545 477805011 544242302 587912402 737854044 387093655 732997623 76734295 450719518 782485236 847131371 953841303 965851598 969734789 984047973 90132611 688946959 890321129 892946837 166878206 252428449 512671962 539980228 294670332 563490692 319240856 858066486 299167882 866469558 542541534 731436156 258870743 499790099 144034026 741239152 11375352 321339090 20209834 941032060 827544803 964715718 257540606 305492905 386599639 764044192 859357966 972443849 630299975 858893712 376125508 483461176 914857 634583063 768941584 998678240 82641570 905941313 897449122 930765781 216898057 364198654 324597392 777807369 906336068 938455125 699003174 757055162 461880809 882664099 71267217 611909161 918592494 933131088 480658250 853578482 443268887 971538091 416729754 627363549 574481709 902069756 905314486 970276682 944272368 968375720 760424171 805221635 510630762 583864405 75575902 413605638 186769842 881330894 940679864 990216935 798714841 949139849 479109594 825768112 469349493 931592931 961644227 991854630 895631376 989674518 84957909 123596932 557294819 834531215 309463073 819523108 935588883 948250851 726798978 925496055 318102220 528533545 811794863 959399922 75196833 748397400 678286680 979342878 888828144 909639108 367814516 378503470 795022976 966714264 472594767 699950176 456215072 860992712 415667614 858883963 186532456 495672593 974019281 987284692 630114374 799260688 107438178 178277952 767801528 952328188 108471288 215727408 197247377 856490581 105115074 555473819 334565601 968390522 792538770 816515069 63373564 990058227 798020577 886369792 757479608 760876476 245316685 681239507 816314731 954031793 743870936 871675577 608963377 828642377 811410824 890677914 89594590 918308554 29118102 57846034 798439590 907778314 563306125 637306317 245361375 466146380 706047837 711920441 872055264 945268846 847593751 901028232 912419575 942188434 107121979 765859221 223322305 264075985 942494381 944089427 81264112 653855922 680315156 873580935 996314563 998220602 165311596 311458011 347965806 486119737 276223323 860173491 661449415 977811548 896188990 978835701 9441148 119023267 826174444 893423251 631312199 704238479 8075447 207802476 136263641 582884635 815694395 891727648 326558730 734430110 444046800 906584922 875238849 906405377 115112830 200748749 187779567 698217590 838264404 865937046 69736988 666661157 1874745 89741272 901077123 935369348 592899588 594976456 431800838 456934554 704599272 734030432 844971835 900939626 841497761 920701041 918528650 930552263 521257109 853865170 461836749 814806526 980573028 992671934 473889189 789216671 526422024 564202720 7074790 559123238 714250809 843963881 302476117 349164179 651929204 998329340 478683113 524323530 454732225 887977220 448042802 684695273 466871831 609605719 471877893 583850855 247078484 391203826 174412714 189913613 34773 262059460 803758243 971985988 681721047 700679561 225695354 655935846 421567995 482274331 414174835 431567822 224065317 240066967 746896988 755160400 182298531 563462060 947636149 985649336 192229271 301740662 968295007 983655447 351105735 524302286 743317210 776377712 732813174 763321459 619097277 671976665 590575237 768758442 508937425 569277017 427472107 536862195 444064409 558755766 625222407 642749112 591080578 993362346 111752016 636966862 670610204 807842782 90454825 638253076 998045815 999913740 259848013 932424761 696670249 891184738 854061036 998970337 587351671 810736910 701115541 978099336 287763572 312398266 819245707 951782472 219731883 371784617 601694221 815057017 268001232 524161783 687372912 921944236 82416586 112808946 897308158 991620672 527223723 759000684 913861514 951290023 489535689 584389581 510329093 642934765 206119892 387209414 237135838 961219480 217078438 270039976 149646070 758121804 512916028 897783451 819497780 959947816 907384905 938549342 799213281 914277056 866309273 930441754 986171113 993973388 393561471 919778317 936029540 979618428 196655462 434414761 296678948 337546084 539400827 705439937 323064548 521875126 471459221 644617058 245690820 405699775 808550741 823711905 46903890 277331595 866712717 904864392 46989837 157001810 267685964 293659228 980301304 989981313 259884704 330259650 405432721 524045415 983728101 995067694 61685940 824964085 473020404 566624790 57007038 534072419 246989094 328023412 135731847 985445270 474127487 503618142 58119300 984493118 596144470 834347680 356248100 869472860 38030173 453828175 234685940 704250609 578278356 995425630 632853782 821985678 489549195 529308269 224844311 879009421 621457104 752927130 799499510 902438724 792866415 805833010 316037070 337707263 329871028 706122817 959562023 991490956 245220041 467260258 847208299 881258757 789112027 960680679 688907018 802170930 678607224 893939967 62561491 329692008 453416428 779884692 720724962 972821227 84431505 619513640 972902540 999766154 426509879 555857984 370078631 439159250 592369313 744568544 399377145 848788379 258569133 330093138 48250227 229210667 917051477 944684326 570562729 989214109 462309780 879289550 162875432 627352619 400729045 412121705 921740511 981963741 796492070 823078550 420288164 469505739 568319164 856163654 126364104 164126948 606890918 784565558 677747068 962812750 436834841 519557827 837680361 949497670 317595774 600218437 577626341 937550145 392929636 686716319 977926332 997798447 838785927 903371422 43315662 143616250 589913869 654136677 207957978 784131038 606978447 816982002 784476042 816261321 982575478 983339910 788374813 937454206 511907305 716074695 296001295 949243138 364433585 865151357 658943673 717721938 60490498 840973237 213995648 278902023 722844369 823662357 710807001 955328566 694872854 984512112 306726193 686082961 212848636 906357871 256704753 362225565 514761890 816716858 486430117 710607361 80180874 168187390 957992642 972056976 178403416 739195282 693201653 699157774 67950436 554571155 668871907 752614559 948685991 966857029 705470212 836733330 218606549 829763853 773656374 912470950 899878350 981680556 953477453 984347653 278854181 302287907 582814849 750764635 993199515 993748241 791821915 847172550 566006268 700744667 600389474 961823151 606196269 821690549 471949677 955646820 896918402 995112628 209188536 752086636 201558864 272794150 431741235 537894858 569769951 860332154 123722950 336491278 381606171 697463915 482908331 956078469 293328098 343639109 57955673 653229986 452715271 772970813 837844223 909640200 760835143 880442742 430443327 823126372 591470856 625672517 828492559 952947038 297341175 589438258 811682289 835435165 291405332 563645542 191365926 782259649 847041553 930107384 184356355 449066261 208430108 540433377 315935580 328029004 243748019 736112622 320265409 511631330 81146207 789335832 648223595 800752525 854542230 904389014 388822609 703476340 856292294 936324634 120127107 805822909 864223059 872901934 81908984 571899381 222295574 496129193 330096672 522434778 458157931 827674205 811378725 866134908 84982359 290755741 238822920 737171910 802949245 883366575 554810576 765076416 384291682 728665916 472044577 854054504 89041428 774935895 157608874 734732163 440178279 818689746 801678121 938805828 885931042 941497100 994011640 994831372 601187169 820026643 229553831 518029576 734089637 883203008 177491738 376990240 328359198 440635068 501036311 941479477 675918276 809065495 706443921 782515018 33459566 415423481 498315336 707310699 384189646 776320927 281744666 395662342 558625973 876239370 950241477 951887046 442789452 961097915 404510248 547744281 616842896 934758696 883875664 975453149 490305448 763928380 882866590 923320917 119272264 168462052 410582705 728384024 955969886 982863504 714752492 768963054 74253484 336272480 989310528 999935719 664603839 741906850 556045606 628735121 829972224 903460953 974028451 984557995 839469621 996601377 238223052 518122804 86164005 600460600 229728683 430538295 838419876 861635036 674850853 714814784 659006852 684351865 447544048 488778823 631314445 787106410 228582582 417062399 386677119 991603089 160928809 774350473 387224311 514353869 443335139 903476566 760864929 939610589 351357563 540206080 253443369 607607273 261076335 719434648 33895923 502854489 520398446 998103030 864336717 868879200 530133799 623065362 771393538 965996804 912406775 982105111 384778489 825229049 531333601 583957052 679366663 806821302 333874278 637553493 584404036 980543813 407439956 847649705 632178344 711078757 308686174 555439829 189384311 650675768 30493422 466421049 919643222 927647392 594579719 626448523 228872223 273249089 888960129 915571402 120761167 584011895 740695926 940380837 175155592 703106212 748418711 849127094 141727034 726634258 956068127 978049687 36455558 611397566 272602508 982886885 565526210 726662076 859001405 943206696 441353279 724355262 482496344 586370493 655305115 702576396 479313351 528807364 836063073 897899953 286350722 747802109 128984062 387915093 524975302 819514014 989351192 995337183 22602816 320649617 270154895 540884812 564098600 756931757 934979817 947080097 959382718 967520621 39948935 695150946 109657817 594488636 823902866 936781975 346383438 943716125 356834780 628734973 50263470 154894959 5758934 344740649 41346010 553356493 989498980 997173602 427341956 908854224 875164527 993265264 701938804 991845688 87280528 649175870 123156155 333679523 78063188 269780152 240681377 941734628 416767541 603359332 695219859 851743093 505457928 510919392 928282398 963349055 658884141 936165280 206407051 871032436 419739478 629025063 423438803 833014370 681630936 867974508 223675463 832795737 73430810 757054524 847939992 986580246 380165077 879293420 118910270 540817983 634020620 681851888 122850230 825700926 993290290 999601016 253394121 509466719 966586304 968093273 194182769 451328690 437052129 890731508 637708853 780924050 587850744 774233900 413703769 760912157 814975788 912403285 592286851 875413546 340483683 393922353 449250111 868130967 183014222 915091640 580478209 809199435 907439858 945033459 828694521 956260603 694828154 748910584 743019554 764757496 580819469 920377886 30550829 124744201 484850482 987029283 710330733 987720757 526452599 760267570 636327113 670906137 449568703 697001737 216464662 958251029 636462095 936747894 231580514 818811737 585482335 704654897 241173954 794788629 158300812 827349024 504395786 537417326 530540319 735249724 237861695 989396760 225518702 307059031 407479588 525282101 687134500 892444825 671902189 848518857 287046648 449388704 970510498 986675314 818561169 992145226 560715064 687732896 787579352 913173716 930835294 981448599 34264434 54886429 798275772 808400718 799552119 930382843 763210008 899048527 38176209 568302560 651685601 677376167 605022384 647349234 910435712 996725910 444231434 529647929 211139246 624044592 654980329 860461856 899769777 925876304 821167127 916720208 400029716 492937549 757331702 997492652 430089692 695152356 521553753 554199075 836619242 922034386 588871508 985802366 697303631 889914495 413660403 779150110 866956803 963689098 238285537 875160749 640205363 717482458 690287435 788958876 283583958 578515631 106553667 731474035 391080397 930299188 469658268 817382245 692255374 723334926 67019173 323573398 605197870 673558039 875718020 959386907 624319233 652734681 712710713 876883355 881031679 946329369 600836693 712291146 97931703 925412224 48127409 250797521 455525160 988619776 266264762 765585556 373722253 444931115 940661155 948121294 922798930 938306261 167667598 898665609 832826054 995950519 1922006 574450461 37650798 95936155 152776454 927008875 325182270 420697769 833844402 890871214 107050107 296612717 678691804 711382401 906950458 952662410 808403752 883725997 619053066 927792757 764730287 919413442 536215420 932484045 567829382 966171908 235199654 635074052 346784084 943006488 167123134 962379826 165155579 781755997 273735952 382385533 463238730 986009109 25776482 800048936 559589746 992443059 372180763 655066282 169008644 659195350 213671048 706834029 344609827 484245425 78479799 774034339 182289250 604790168 957957628 970784387 256446348 526582150 64672880 937251973 598223774 788141316 691880837 892944632 681110228 990715650 268988158 866082685 980180774 986690149 594020220 758124681 206444559 224861409 214712389 829638019 641444738 855428534 277439115 563592359 484164228 540689695 358938254 824172149 99451926 460180046 322177756 453783920 726189878 857247802 320332465 442632381 597829663 786009210 577568840 963878708 674929699 803363862 532580839 815722776 965987928 998162764 82987826 456983839 663367640 738693293 313803227 931856460 338399545 949952059 539663851 986580961 794313802 936870767 771117338 841304515 768535385 842529283 227166630 680907734 202890556 524641073 23845747 486941416 341779101 347579031 385121842 611358263 890388694 934634974 352251763 795716171 990875651 992843221 747454692 879182047 190224596 292607928 208982542 501349035 468070983 803076911 830094069 895967256 6783065 819942195 51723992 512230473 330698497 893148172 185136703 274356804 905452911 947284585 702883725 857775675 304329056 911029046 306353648 932582298 705856164 885581861 695975004 826266834 828424546 934010926 219822293 878967287 775460350 907629515 609599293 727083921 37140374 363539779 276758850 767508950 482569249 606575328 112254855 848854847 423658123 639910770 521581246 776697184 829585944 945618347 269661989 735444643 917905379 955159320 571269770 827118534 350575203 424077417 939488921 969568795 249101087 359703532 496457422 627674515 589765858 819516297 172896535 301282996 626048417 752879089 929487499 966470556 73151104 909022228 786137393 934729275 456949846 890162138 364520442 458178783 441701946 638980690 847636409 909149257 315228280 429370397 703843596 783328885 916428484 986661369 323491756 989327836 736783720 883081431 591180926 910898290 269236068 355196112 298274320 666211173 926712034 979107300 473966759 480403324 248333986 943695919 978825055 980504285 232001914 829276568 342165749 869648037 595329753 885508505 945265610 981360531 175951475 814237591 200909031 644326604 790039283 810420831 619936638 640394980 187268514 834348708 19677624 781381430 485498327 842563609 771483182 831384962 314609854 466601475 571808328 686602969 370377168 617765879 702108238 881879294 367898086 853047537 972594693 995777415 926658410 939629664 567340844 967685706 74819990 739913087 471985319 999977858 382681176 634566307 631213856 852153601 788643105 823911867 789011668 954096392 663237932 803681350 257702754 831593546 737203290 768317457 85328399 113567932 796705573 946719563 479012995 869270522 712843605 898641650 745741141 853621619 56360901 885190840 817294404 952943674 489407806 595282913 184164234 952908126 178709711 993269060 356002503 738433088 422393650 866738759 901615233 984959049 659682528 956263509 805819318 835178763 462633700 480630481 120168707 943316146 543841893 810686101 846011154 948746178 315364823 822045765 488410423 853429217 619243881 920234131 212877459 813834204 219894106 606799383 248193356 715832697 446362130 842316475 289126837 711195175 402409078 509511934 722242536 757590910 268039134 966061580 165587982 654773476 830944021 948204281 221687669 907556176 650773422 755458437 13210806 922356072 188568104 594837227 993552442 998879881 279621865 866451713 962000335 969181968 468911158 572691071 546989901 746574935 800454746 896798121 879697338 954725327 112400316 253911507 140968278 408894309 512604988 748316724 36676898 404276852 635135077 643081973 139057406 928087420 346910709 952961109 189677824 809164264 819771370 933238631 505071939 930501733 804569137 818952726 687628499 980869276 580938325 832712135 392899132 436984656 367735541 912801968 349990606 472152705 507327989 984267809 986057130 997204395 498486755 690580637 16737649 951855495 956647199 969652665 216526123 333404405 114085258 831879916 980598993 992170662 744624325 877631457 705842459 797103725 842561278 852426795 399429261 533054499 674158236 779739478 581257150 957920771 772680044 864225240 797331653 887590157 679889358 974127988 104116114 863691479 151048478 552895212 3377676 195665957 200256274 737022272 781887203 817132726 798166218 924199507 687032388 778388474 941692382 984435173 490291245 896733675 155567860 171632636 962653808 976976792 265697929 711492411 769780810 950175649 378115621 951471071 421655101 563546692 924387631 972573188 130774527 917929144 669312528 897532028 923169914 952772470 161123742 287948446 360769539 959931915 9258172 543479597 360930792 407260741 708340889 798438300 917099225 969497677 345541008 756937749 726145747 899994986 499102978 862630062 698336481 964286856 747908733 756507319 842650106 886518232 942497080 994617209 868052486 929170854 352354119 713145466 565476902 646860454 739715567 854061040 679051825 695661525 365847662 486087222 624775757 864955499 228706725 659214186 226301380 484969586 968595552 997742234 81094516 402595969 904637182 987569976 122782014 218216846 966245592 973085747 846855228 939222805 337442080 466590570 521020776 523136479 302746092 651436308 197356403 433565152 37237958 667956282 179169122 317214281 781050363 812011667 539545240 963184005 822990620 888692861 764977357 945872021 349477809 873121318 517996095 621467749 84496791 388497210 909542262 999801490 732588843 779026961 803514940 967879283 408104655 417278429 476199057 950940542 642623855 722467214 725870102 870046773 62531429 697785984 406455131 529903649 512331809 914723002 781361273 976479601 626569130 971826206 869427652 932575026 489213038 930171981 861365996 956264651 6371955 775788722 108030491 585248153 319843489 677853482 589187505 742992793 863613356 906940462 887944131 934339267 458905839 694299866 541179220 643323999 621384108 626239445 496328641 661369098 737329822 937084612 352267370 598896599 942662961 984597298 912484073 953653024 708820347 756769270 892727599 929885794 400005462 993396781 810625204 922789729 734585467 998190053 193979013 699824116 915213834 921637679 840158520 964416946 687587452 854395646 349258651 490687786 369414943 778461531 461809800 466592607 947844869 991525967 188163932 600394587 246747122 869959222 291294834 687219905 753556495 899254768 449893681 802794653 643207300 997458131 41861927 79049742 895254906 953758756 931684311 964820771 919924017 930416774 380913338 833097112 337574168 609850447 913592252 965611307 199771420 385678999 28940372 629557114 739338512 822649525 354532459 843161576 665721153 873205888 495825220 685160820 594494128 908346853 762349541 940488366 666409177 960284684 192646202 958130819 66341587 981833127 432998311 492747822 66495932 928664079 492256636 521457317 540941616 753437038 685544640 756466969 906749860 924582420 461119203 973557853 175755838 205102248 783830562 895768292 925436696 930709768 886957373 976098350 195576041 756705998 576821446 619626523 240824640 520514367 897695033 946465957 993164278 993960385 115953870 686037445 139762140 596831665 947576264 960568805 170176239 943061447 757189075 956189688 450874751 923557956 95408580 850820925 157311397 331601559 306461917 432008838 763758772 797730368 202341762 519604280 456564519 860265140 923279622 933825937 727270438 739757054 203250176 245485087 226576345 612464609 383722375 939162795 992544848 992661788 844666768 846781356 578288878 667838698 890902229 983338458 650839304 851556793 115396510 352980313 855962148 896103370 510625230 833663566 419119619 729552215 104105867 699136373 993436111 998421724 607940486 867757568 376186876 969417342 211302788 839441325 596822575 787708094 58003927 867498079 786030526 966316395 85464725 384182986 150622949 372282843 511131931 625203720 717121683 869564031 563019486 864410856 456269404 481369897 390955371 831227133 422325444 744485436 177526449 322085753 934138387 998920788 56069047 764437158 485670557 620023277 682053771 800389167 293497253 822676646 443770910 814522910 812568257 994891078 826756227 852629306 218187840 362700636 706305294 721813434 511830522 686750049 641184682 893305157 888738682 950177767 227082884 676131543 332240420 540583351 715445065 994642904 383244314 569659410 118726163 928931966 211729428 384102260 220935436 945289359 474247053 933730123 927340734 969306272 398599137 805884982 666493318 675721550 26427144 749408243 759990617 777936788 853865882 928948514 557521358 631720903 463312937 947729861 651449814 730475195 680313964 878154564 28531583 760491057 714471391 956869043 377753459 887808157 265741613 974175315 35485385 551235247 317300064 611992103 339756688 907125076 589206197 980915616 18436157 144581093 171597886 399818171 181237409 757048599 788291798 911785867 666813310 737824384 135584350 634541822 563053717 861966051 478638446 912142460 590468443 648941691 500933644 840237820 960298186 987994377 210122603 707888672 390322930 842429377 489777453 785343037 315333223 660108323 147866962 687037802 361222709 586340397 165058057 269351404 567461461 745544940 35734851 127747007 196699460 970307261 129959561 192204964 433632178 860331518 308840110 393725112 694084996 884109818 911956259 942539077 743842908 757694702 491992136 620091859 195302854 383211818 783584177 876407597 593495558 748989581 976131225 986873125 982256936 988786031 61036434 85552112 433913099 434894860 239078290 573311998 990965433 993881368 674808313 898996101 933758443 949562988 808267063 937337044 414087790 689122953 57032843 501290273 709197284 724136399 890489776 920737347 886877908 911458439 115563625 123515425 695798773 808996983 276230336 752659749 207710063 608882876 46800699 184738711 7497723 392685080 671834759 981806844 704547642 832139379 438012731 466054065 305180924 534248076 936296582 946441345 768817123 843621311 281668621 289302222 889970884 955660029 515149619 796218710 551360124 564406320 186784093 839126459 187641577 347547194 892146948 960903026 783742127 918097160 498601384 726010119 873590427 982492406 606330669 888673834 168354474 542146675 185171605 774048342 757157555 841769418 114595783 244271877 889524936 889930939 718472516 827808574 762565869 990466670 677423585 887006519 357755176 697501678 742404880 780380571 90319927 231445663 265564764 620649347 216625673 578518205 328059511 708010774 305219970 392835178 123176216 158994614 949808237 993321922 443422286 852414048 281460446 874089045 352411177 727997631 976782738 994631986 929036721 962118707 210742182 698163071 87023993 380931226 810125865 831551697 551811700 972197091 574182787 717737725 1823992 205789787 377584290 823858396 309361188 855381925 534656035 763756653 76690548 599366266 622425135 687135214 612341444 705195238 278136299 481274149 113074380 495592876 463423940 831015504 335743292 673637263 919419075 958730785 510679660 813143374 440710310 710328430 258713366 339222046 42366107 83642737 463280401 718999055 848265469 943921356 131176980 230519169 940676933 940841559 684696051 721700521 546929862 664910763 891262881 911075235 296615054 362047547 630350496 674727856 221406112 975373360 565662997 656039304 515005271 877215109 215316615 392632192 792344976 880962645 785373524 822884719 650069618 803130977 428324995 833546605 267353980 490110004 64457602 102172357 548300371 932148708 787003246 977775865 689027512 901571161 675011055 767098865 155879469 719938025 131290354 504574640 31757210 603083714 823314399 929297356 777193896 961659567 721918742 976295757 259112277 567329959 988956712 991705198 783694639 800305997 967303164 988066864 285648103 351413435 599440693 609818791 826624375 829399087 698980191 918162201 971871203 995572353 714451128 978253486 366725631 842681299 801454668 843523384 564219562 692003189 178325305 678295731 164103574 759738281 746711268 865950721 392763324 599873752 115617875 677474169 742925673 929486670 230329959 284918565 255884794 432649540 795716479 892702986 284557403 603661888 231871815 918761824 406990391 482655703 846633423 944736645 156488453 759682585 640388412 789453746 166877437 174644072 586017174 921002617 957160895 987868994 357497722 904922599 849009235 965402955 455445691 944870303 553408709 959634059 821762387 994827713 85205638 553018400 462104432 769597910 86385122 366163187 687139272 713466630 131494018 985269570 780708379 962546097 178923319 550441716 756028776 854761392 231202813 239018778 612115106 885006667 733827088 940487481 998625715 999558984 145212914 221315713 79741855 341548695 896742139 985674991 367093963 544687363 844365693 946106896 742053 29186027 667700238 886600194 418573535 784586978 63871665 416153100 920439531 964346389 279766981 403889441 279169596 339795209 690652993 927078661 627852312 689629723 792325262 943143940 919540050 924085089 394554070 521728780 557214747 795155693 235694590 336271729 441746569 833800804 911011572 955056382 188626200 808860601 972356167 993809823 783955565 960764439 702961898 861886071 147611961 862871650 319369295 759712549 211063981 847674040 481301516 516553113 391624415 870073227 806661069 907594721 203336935 836005041 660329385 746041821 84418545 872775448 247558984 776355985 744401038 875615705 325745343 905818320 684161668 824796263 841573755 904412779 147429795 155146588 83473803 131560654 470937622 559277139 730531823 764463225 914213469 927742550 615592260 770044316 796244623 808354660 515480642 871781255 659197611 821901621 677177420 820538414 372287278 517430618 777197745 905469298 741791295 945909846 706230727 953910564 173191309 473046117 327823371 642049657 629885132 668451192 118368001 579521860 359728254 640513151 763438601 778667699 525002916 895976072 244760712 644570125 773660788 840676907 469094541 660378985 476939317 858980120 276233783 788598347 262320223 957771173 614511745 766428710 124893604 997877070 74911944 578324923 3545095 416134668 671421835 694661749 138242891 527342326 634843527 809405580 482271041 939719812 169576570 262714595 674864131 968567993 936062747 956113502 893815788 920568009 297158097 531394915 612932730 654729351 746525873 863148909 526206150 885523433 317624477 703477772 760052634 937028676 926655467 993477211 752530482 866623519 564537811 953350054 936270046 943657480 187007786 428067479 264191143 824724363 215184795 741631711 246635385 328851954 262981981 477285456 538669949 750585080 844194090 892721996 808425068 819748185 216147541 547994926 271272509 984843259 632224465 790357337 56799595 405947764 829266362 978932041 703781125 762264902 84822338 425742713 102509517 275556472 336176128 513891277 540018467 776506609 767066261 904116711 65643773 378766690 558119009 992216559 740027622 965523479 83259218 759320433 460547381 871192831 800548581 926711306 765900519 906766428 6961510 600059303 612598312 881677986 586454947 629257357 886000613 951397907 46391548 382947068 162777919 692693710 337843872 710860632 737652652 767093684 310651242 668273951 712345410 925080410 243407149 913763110 453377666 605119091 845568624 913612372 210453597 698719099 958896907 975665251 672754027 856302243 880016092 931010485 926281346 983220777 508933859 602316126 567166367 851033714 460064820 752370994 869021210 899905514 86573978 725271245 772340411 896840720 983049358 985447013 458851286 775111677 209918810 806549656 177302453 269586317 944785213 963971706 29239558 80300433 664041013 907779653 106888025 612200511 324255918 853346787 746395946 755958370 538842323 623311635 414364294 484878745 670806182 723663005 663787334 700780453 611909899 640137204 104611866 681318987 466622672 615629866 695542084 735041456 179451854 694972426 35953090 135847451 578778044 966720692 990590003 996218194 880164820 895950968 944796555 949524151 453654563 530983374 939721700 990257521 221323019 352939556 623089048 887379660 969964911 983800001 330646090 910266520 623099910 698378030 458125810 808975971 379180722 946000592 980099518 984778597 558804806 794546454 794943002 883801525 820350153 985154486 406274299 838954778 159483896 181745475 420664998 908034936 867847179 903537311 496089081 974910787 247210323 763058891 428827949 450910236 827887368 891786739 914025229 942993601 405988585 917143699 214964250 663042470 753212928 983006101 756741186 800592995 768257439 966893924 612755131 738464232 55301903 750134225 497978865 668397726 86819321 623169028 312172376 425693338 298439544 348161806 548542821 773875331 852072845 967320587 98631144 955600104 256677301 516521671 975133054 990218291 877990310 923588861 844238508 998005874 690366862 804026908 776691013 839306862 726824242 867043781 89004409 651256080 947756508 951592290 452360781 700475958 644643741 942271739 5898245 24693723 974953318 981982223 441922979 876536360 827226509 861936036 47478886 774271770 949439776 949752884 185622822 969318750 569563417 927616868 326313821 825776685 518297566 717304492 914215061 973930023 913436921 939759105 55163013 898044527 969184518 993550147 873450135 877078246 686546478 755560640 12055687 960763390 612675966 956512842 678323350 760713608 91792481 307854654 474601331 798154050 932624729 934118436 797863255 996798118 820737783 826172204 898366453 987261556 643721531 967109540 81137102 273741736 899771730 985789398 922776887 956271598 774124711 923486539 249104407 335339010 470625940 561777431 506449701 883082667 135851101 551928061 800553302 872074052 458861132 720920082 146078666 535984293 659056712 977873574 443647816 948317542 419236124 640170530 262678552 678720578 757144532 996411758 560457779 752306453 153732944 361102567 503589224 838362073 77920195 581972391 39408943 85147923 843692702 970390150 959277545 964144192 386453408 795341308 105142286 472795621 944712870 987759427 741619688 918846417 259954585 481885076 434730623 553656683 585816761 958228573 868215043 955283233 812972606 925876865 214224830 775052872 642536676 812347209 96303751 100777293 671029713 848983398 272386873 507718413 423903755 472723351 504186366 956732168 916859874 969070667 185664223 688344805 39518758 615660426 241052760 282783528 254256632 669082509 521877897 898650896 190975171 255934187 889317985 939563012 307161271 650810417 869866128 955612740 865765600 962703513 404252225 757426554 270516940 481290613 506293286 852825438 902959767 948252699 250127717 878100490 269707469 924452140 871828906 915663743 942163913 950246817 397123898 708255887 394090477 680918694 613323605 979007757 268343604 900305011 870766752 965731374 87217340 911873040 224705112 990529730 730058604 744129291 576184499 964557248 301165094 425168293 742409472 916607196 698460822 703205884 531372072 818473696 648069314 891711316 630007466 901834981 490488017 580939430 894701396 968831905 947580479 969006325 151636679 862903633 324184349 352109488 458912702 777946751 879914954 888345093 356791653 431664722 131478519 586304447 662494076 843021736 716959126 925685917 47402058 686686535 502166736 759067496 163671155 433594352 539599717 554139973 975382183 986134860 882692238 938402485 890147223 995891845 254912936 569148394 367162299 592686125 210783873 554109084 574114022 956401371 147867380 255551425 772228302 970795970 31711428 672948769 481117875 715582465 492193578 906647945 942389488 957547231 601432805 850961769 478943980 711194826 214497930 914269575 277757412 583497066 855121420 885560482 989347439 990401420 460888958 772749821 968811015 992672980 884490675 928694107 186188739 655541817 576689632 580243632 23052936 583456575 895802980 935421643 899883391 946092121 440095628 545670295 649506082 920157842 594092386 738805723 512919653 560037295 212742036 396323731 238562409 431730839 787279704 890556171 661401951 764244828 591463376 781159899 460650652 857192936 381984804 510424170 137914438 728279862 934052751 992772820 367875267 760005746 602352239 776143986 189664235 850079555 911498031 968236816 997913860 999291170 314031186 870108713 126077624 483677005 202318480 767550665 988201327 996607723 600514001 828218089 435064947 718436356 154669345 878313420 173591684 464221742 749884439 952336537 577708128 808280467 537103679 840879744 487905732 566769581 488135621 660625448 196638494 275192615 790231813 886745677 727264964 739947354 556546838 821480726 599460689 980954865 972600218 978211930 949175554 970078810 807967713 820835700 767164297 904984000 961578523 995088015 771939565 907644043 421180190 954100727 762303759 965886789 229088763 780096856 954314039 959179756 786281360 991109914 423543729 558328134 797633368 804599866 187583582 853497948 972741658 982654258 784687144 947387536 365272739 772667956 685539143 708657705 164197997 890016166 787512280 807026205 774506934 927828081 799776023 883332188 72852321 594678356 626070584 629281264 186498436 706896105 405735715 795913206 256235937 887106495 186193204 499682465 696871763 885525775 382230894 986628336 230589096 804452967 27035842 628150237 646783067 967143826 557879053 672406120 882080801 948479159 212225363 859635718 213353880 539979862 774716668 987824013 296127702 307444422 131852233 257236861 9769273 28060114 843365211 886804557 260369855 929737492 800715083 821884704 904731985 952288490 171652354 561932362 30281806 153858641 589423474 882958404 575425785 777058765 909506622 997898312 746613611 996680911 207463485 597446482 258001544 732835810 750948889 954463710 43914391 218567507 33112792 106794001 533993846 691869648 689152978 888325032 672751257 994825361 704862598 990401913 458019881 894381730 524673511 713561023 52973851 831362355 763738369 839705489 477286249 721828201 430781737 607477117 137806191 721470151 48216873 290237191 933150355 981063018 827795389 965161098 901810106 904770396 634833715 884409814 3696152 692718739 338568883 344192817 212544503 861111182 686550006 883228702 626796807 909699580 224011687 807002110 264821101 674006841 504906412 540027197 465899810 778401833 33885324 504546710 342830640 932488151 991903402 992648967 131137624 509107891 918440062 934108387 714146042 744497589 700089357 784352539 587877291 628929901 941815864 965080501 93662532 823330230 543267512 816354690 92235980 512600212 938167086 949934229 435324123 636984512 936455358 998898801 392649263 763696728 622327116 798426663 97867004 203172537 696872515 792481241 174257174 558211632 295669852 785567394 547538389 619910770 13308501 36258311 777876920 901704610 73009013 478762900 65309798 209939622 941015445 983854774 324185750 571162107 138654590 768142147 91813422 621508088 486613535 836634485 798791865 946600466 68172348 249619845 476530226 707169314 326874664 944768133 679783054 747184789 705959965 998700361 707497816 814668326 95236224 978434834 929715079 990510571 173507537 905330460 560188035 622320022 683267474 971581988 860682696 867531943 61630347 210387621 287408745 955637758 805430577 929207496 862391246 867243920 757191977 778688544 852860286 921193057 700775838 953184374 555091187 847888327 198874556 268939730 112018188 794661301 4989566 420024425 214337763 507058663 620014946 937539015 126566142 374971043 838890381 950931560 496147792 615403504 871362 370003479 990989222 991635205 264195610 568931829 600729224 885922893 671986760 842330217 74125575 505160552 253137348 976460693 288935626 340353507 140174396 633788879 394276298 691500602 204077537 788980810 576492220 827867390 98524391 541387525 607023242 880248529 655731528 875013973 616972679 834248946 124105188 554563759 27096691 573891550 942021636 971965932 854801022 973791902 512339690 589133047 340567639 612100163 686426707 751880994 138574496 975116114 939899611 974264260 165567547 622870976 550565939 971588074 652309640 671955140 630437252 783654426 30087965 292412493 626889818 731512660 261918691 266037149 170740551 504003740 213662383 717286833 890742783 947774294 716774927 855450987 754437474 799007029 148027377 479003026 158646857 223310024 407936936 868142530 506016965 608720391 986656413 992880259 714890904 838869372 925210668 942074869 762221122 778316368 911198767 958037907 712081044 728743900 575508486 849757313 929879300 978746715 48635521 500658794 740507137 744205289 790661183 848566738 853380597 936400692 6881032 461621779 729134578 897301726 237967145 652405253 89846130 570212667 138001614 385443385 789425601 836541702 737671624 769210420 861211507 894159508 560711545 590291519 273221675 792916759 888381468 922601021 930683531 967336520 759794818 980320371 912635243 996423219 962302264 993733563 708031484 857156137 547315162 642884689 335106148 662369898 603675024 833721516 245606029 324546470 545648871 643905673 909651701 982334884 699628104 991314753 770858546 864914692 643759544 717158922 986931145 999731359 104156869 163795813 27841146 450666826 2585437 543520080 667704401 850129771 712849254 885447337 527001440 714107056 592152833 639815878 612095520 958925850 79708666 245256243 845456000 955297243 888696071 943466326 100258122 886936233 815833986 827509995 168555568 882249212 835136122 909946129 15194480 140041538 760063710 983829766 695343175 883232144 446158512 468853423 905590803 978341404 509364733 815541396 638062363 900923199 597350282 700365708 481771133 800894350 718078280 990548195 861841326 864649159 876457258 883796930 299607207 525609451 719701512 963314812 221715293 311429065 546544188 699620100 668874393 905857976 66546952 554252855 725577008 977339835 191293856 256671051 142914073 863854122 543267449 742736315 446788284 508847193 723667202 795023798 174167128 607109169 27935690 286539297 730462623 963895056 241978347 613096910 448522286 904151023 619942 947466935 502023170 809971379 347712109 830639441 280920153 537619737 647380394 991108351 985880182 987005891 615046386 668314301 630894985 770400501 787281831 817970013 616666695 621316879 804426289 955111739 304041149 615296239 37261639 854843606 317178131 444610206 493543270 862053006 557220400 779132074 882950561 986686035 264739690 362410047 156709884 234211069 919799358 999203319 783710584 995160354 698513624 969768565 707464385 927278328 303972043 808627570 734834412 785788486 349912045 539286349 479101253 668613742 593219801 906006450 6416031 68699957 788561830 850750794 413523016 964570297 988975878 998147812 614166274 810732008 40784119 613265003 816136156 825465997 283131189 410765356 828947992 884905819 771590646 897672937 214664054 488855501 617849415 619864601 163941022 525870562 703185460 837839721 180114499 421289175 40136743 508242967 731261435 939988798 196141622 264215383 943376797 949042507 879426037 984750838 522225532 916163099 508390799 960484048 125673879 914318062 918950501 937202527 809139817 842812371 561422626 643269173 368120338 707807143 971279152 982765832 181551671 671866117 833939183 849561139 813208770 918998798 915797441 938292743 196699449 957973359 297293634 331642025 699922623 989973520 466630697 966175194 551430958 676730369 984422329 994946217 886823054 935657110 79262090 498378051 616861600 894100267 362787552 492925283 657507124 743061843 590460015 725735620 865922771 960421469 179996102 975735647 31324587 715409676 168451309 947744233 681171466 946490025 48104073 940541383 361086238 900410239 168996854 522255568 782898327 992601761 341114298 351518284 672273379 928072387 333810926 872150991 584526536 742250679 130812017 880919751 597334197 691728041 947471358 947937071 190296343 348681997 114656594 774777261 869312950 990821232 854526075 920698461 274502455 751487459 4545102 549388717 444260879 972798856 129516039 381004892 918533741 932420906 599554697 780535222 303388050 505922546 485355790 901953196 521748760 701111676 486499260 612528894 871156864 899961328 848015193 897652503 363727323 799200379 911574580 970284787 639253218 757992121 814962108 835385750 191794705 713941501 588263494 739674128 978410730 984776052 645856261 816746753 163599767 866296877 332452324 785807892 407123632 576904694 370078451 870899930 970506347 996270406 105304035 968290021 745125366 882252027 216950441 505362679 464380239 487517393 834548756 982658584 651316898 925985040 285274746 399169409 501306210 603117657 741104594 755184709 842014998 962419720 553001999 628463853 861187123 925154498 85168385 393122078 378621040 922975884 666631810 714158759 488471281 845309158 650119089 898732851 733707475 962793122 881341232 906945308 73201059 200064368 183901645 461725411 634468976 771843646 469667176 979770627 42327825 889849976 305634076 589323714 826905508 887780715 223059848 348061591 418984157 787070343 28972885 31059189 269571744 638936829 489123400 867829882 973216856 999007093 947299330 980495668 156439591 400118942 58153195 985128246 627504361 711391138 705990257 912433651 948003382 990946606 949014085 966698044 670476551 861410142 694227662 988048169 590333964 929611674 563792929 776216953 555164143 803199828 593933415 716018929 833079463 865240043 761402091 797416658 176015734 788379869 571280703 798757095 305404118 432340626 505941253 533885182 698029427 915947172 726977562 818808078 988384406 994789183 99734729 391863690 240771932 823642056 685656645 708390445 822897367 978840237 648599289 776298674 706351147 808752101 818514027 821061605 943081860 962320791 616150975 951378188 651573855 973544363 769525787 938111904 525770133 657848319 512913575 756560099 242221557 555575294 668827878 863441784 937089185 945308857 895229496 934888542 761046280 985876640 196626045 939365271 527943201 837400740 683447410 813700294 997982527 998399264 240416782 608626497 516550514 772861580 808395265 993971387 751278839 751528297 626800691 632730893 516726731 898244398 630260576 668361492 825590215 952244792 219418355 926828956 378570387 744648193 325518212 854505773 338704765 457843680 37825233 200905083 421082849 513066804 229406803 682715837 727164291 874888273 64970288 423921123 92710225 500426173 640197802 654483980 525393038 609849310 489572304 858733872 192513094 309059468 57245458 271380669 678087224 686460561 389729583 550643090 826281160 915366624 552485744 572699343 980623991 984202806 288416122 993023863 2937459 201930301 550654283 691815429 129035289 571110816 202542009 384506410 253259287 709827767 10381555 237951077 433053540 878816629 433642881 923535244 151286516 318648256 897980201 914513097 431662608 827608201 700055506 997506876 528185256 737131517 316218311 382568298 574052546 917979452 813791112 943847684 987690187 999967977 709825951 997508023 433567406 795743622 633296567 921750296 425894413 977106202 848220048 967879748 313540259 734806623 578868722 983567942 433995518 947559442 686833289 930761399 237104082 624874364 751443396 830170629 108122618 656240941 669364376 720817832 169340707 582056923 393089429 675126541 851018534 977125906 145060058 391445705 426042605 749185468 451673105 612939455 324439675 420947608 747892648 839353520 502485387 774977000 601174435 812260813 125650019 279205615 258617340 740511662 775538144 924332457 535574485 773777386 271024885 445854118 171550977 579713733 526940509 794877346 873826481 933427978 400321989 888720904 704320241 735036767 402954384 481616916 554232374 707322395 160455405 532186701 582977445 802314666 407279513 986054868 915116281 989907406 86402618 984411321 42336875 277012574 33859838 443694559 758158117 812720915 915898393 937413595 600713891 802819353 428609591 591490281 400504445 626119272 485101460 567968230 817021836 877498513 783979290 966389879 16378798 847448724 649992737 993236693 59030165 807184586 461365046 856470851 79771226 733247560 82418332 774852821 524734306 840225362 203500252 512246957 31856916 341445694 828019329 936989538 170477486 805078291 875034883 935024974 939528383 961565923 534596556 605764957 873839717 903598960 579785704 919700455 517277067 806049301 51152067 512767032 587010849 770354213 892092303 902679154 477872181 848596041 809349585 921214861 39069124 835256474 353155098 489353692 733454091 890466705 513561215 655054586 616997978 716297981 571117998 980680057 147599153 922452023 659617927 932534420 848389445 934025575 639832069 726483561 920744893 972780624 150753953 483139487 924114351 993995778 996130423 997401692 495751717 767653956 457373819 806340986 388334441 954615984 107371182 537495297 171490646 616501929 59666348 240475318 259501792 670748574 283779883 720733351 346334154 453287738 545064076 616357409 704732574 739226783 137169565 723701876 629609631 704416362 640780090 674203366 245476474 971320381 760355609 792477032 444989358 659073219 203530006 242675115 225691165 522969786 196702571 773659918 398311031 527589450 655052026 941471908 283305455 645727404 677000270 856401623 192554992 504739317 908268934 972172215 692271243 812873751 964200704 991685931 941227744 969412099 764114066 788511832 341407799 660353963 926435464 989469887 538991145 821240474 248771824 529615351 353365460 760043657 529619818 842911699 372440922 897415016 862460192 958067026 661115723 843248887 584212789 835677157 234972072 435982044 889223758 972400108 500753520 663836689 926972891 971151657 825576135 930391473 120799300 912791760 878282085 899613318 757785461 864494050 262101629 811725641 521676761 537579652 960345155 988471976 303797256 955351656 405511739 920124299 989492030 997686305 795196281 978439986 643379748 759822192 18503669 854250702 915322915 952929737 368460836 852634409 396164189 638881143 672787989 767623487 924291470 950869505 332832333 617064177 679487278 748798148 519020680 580417760 37998724 972111255 190515696 400571796 830454264 843850017 79630081 512434699 778309597 785542126 14711716 27563043 78772011 255613024 515592233 630867695 59024324 816952489 67234021 526623338 467172934 625282437 568039646 844262200 499760860 661635712 970628170 979098032 138039318 636129151 826693245 947072163 783047277 987603242 707077378 891047793 698966585 803858299 260777431 952170724 938266860 941257248 543553632 621137821 706219379 888849737 638671404 824142814 108187258 827392689 734967923 914135915 115647159 127413220 140421466 716107955 123678196 254184435 191261686 573448939 510689306 766310919 66165397 891805507 334967243 604377250 786468633 925543382 138806246 957511901 501247097 791210627 485096801 504245656 804988986 984658800 662757670 671449617 144881654 690211993 545235583 626889726 901797264 943282947 133200938 286891989 436860653 783634387 727283132 991004138 335612282 615840912 315803576 620158949 457302423 765764614 613661335 865486064 463249506 621812740 153440766 578544961 395742904 468019574 250646866 413341682 254825597 808723958 916509256 923057436 787172721 900933398 16342918 368838726 521285226 853105692 602633536 748190925 705126140 714649575 725445251 776193057 943067730 992537990 360336182 788858386 357327218 480222630 535253355 649431407 214229247 487075255 383279596 727058154 430851229 856358182 235921927 890658191 182962718 447209551 856098401 924632568 283711676 846378433 550526741 564371460 919123612 965379859 269911021 331076883 239202940 921810525 726847581 862223176 6362333 742132673 918388836 972917610 722699845 803938276 46369900 370869900 390678703 436454926 818318148 832242039 381670363 545315320 849381833 913837960 702024424 886454564 345185399 749219780 808555103 829572652 318403083 918223785 724646788 731417282 987939079 997339182 176539867 224008673 299924642 864274116 864634078 989595691 533511851 769744528 630922681 933739282 995045818 998523934 843296808 946179646 51505658 359816319 765195957 772662698 710098409 849206518 536029631 537151679 796572043 905316327 644647221 769825964 989860453 990654781 379745543 393666757 94131285 318532618 661068558 713020651 792876127 829940361 220869767 411330591 226571965 399435441 562079639 855554940 249247682 946289535 196279870 433409577 287973652 483032359 244825168 425864092 997979149 998473915 26839211 629205249 786039217 909730750 852589389 904912542 518119202 702364003 647051845 800874009 405476741 764534581 832363995 849986558 1383522 828384085 565976930 989487432 509068546 580131638 241473618 858483377 35256780 567651194 378803793 401389568 289402263 801010620 13917221 331012404 582627549 593364448 849446205 859535940 486637563 591883277 109688603 666836002 292701872 707941788 855052498 990338879 209459086 848147173 907595553 910212860 157903818 164033547 758045243 765686446 384170484 891864398 662743272 714694132 961698339 995021173 28716727 496561910 832142292 947919702 821049085 858389366 221128918 256214097 892805551 931169016 823206965 947768723 77812682 873622692 561249710 915109691 748865867 997155071 726526006 895118811 520342102 593374469 542978509 727953746 421651673 424085825 122252114 674072101 35222426 97063676 391026863 407734397 956326581 959095521 716243213 983095420 694213240 817356854 194093630 473251572 839188093 992878835 796893327 862106551 437702593 747516178 224595602 848754807 469521609 857582912 969256469 972468797 974184732 975671640 756465723 776234214 394138045 964787144 546425690 592762809 814563943 919968391 46136731 748157480 732974121 822521581 159796885 895265482 484934088 839198845 92168767 429714791 2803947 417405713 430442012 560486173 761193137 954134152 688558484 705312109 713025652 822412543 265834025 683595061 720471031 866242470 699277578 994251298 523261934 905665218 424816696 576026408 87209196 320530516 999589611 999890612 3998661 309239988 175049374 850028220 687125390 838907715 307444462 605761323 784715033 810735006 852315494 975303510 758370215 953393260 763404672 900683446 458526184 779364447 154357466 661744503 623376776 704363424 67801869 350322786 718065422 903116220 363752103 744542214 765244281 804001716 666415082 910553541 689720291 895432877 516292315 762466109 500659769 972405915 158124175 160553295 991988893 997169811 85199676 330451391 5951035 958847506 643210361 751040909 248374809 289567125 286905452 979302623 859768976 931165235 906750538 996574756 286969616 785630133 522355461 701323891 631646384 707966789 821448751 987431007 517277050 672956252 758792299 941169152 711257729 739683113 890381976 922277020 929257054 955914879 261704272 984974071 772007780 976475932 598309057 697801252 422825789 603938775 798945149 980334390 392770139 937731271 328551397 535087307 220119942 244633073 290760269 335340538 47790132 892254776 363501894 594809659 606489922 781448196 737263136 917164502 329815355 502814388 211030051 232142695 722024354 819550251 919358305 975550556 189577037 526264394 560600698 646330109 849778471 883949400 823114200 929181273 200678792 914318370 817885110 986741108 552558352 594472664 983366895 986879676 152990964 668487850 85896327 723618757 534016216 765854221 438465481 878916116 860423862 919748801 247016603 468721923 138829204 475589055 279586952 708833650 506511870 802358575 327115631 661474473 817225419 891280538 937830977 984579389 502049990 870628286 230149334 937421065 725732829 794964070 587033121 619072687 181446195 601546895 914016606 958270426 837519856 949666986 32584466 169914946 668473441 856845591 13619245 743704108 206952579 359142638 156404610 737386618 558613110 829535239 133813675 193254215 833391427 912162890 689338973 759942850 823657624 923096642 908170538 913008993 575566852 686709648 438984418 757628677 201270195 232364392 782868683 941395471 868676491 974330224 627998008 629947486 600624595 897112390 453199075 937485684 234251234 797004496 404630473 798551455 369593361 547231763 484461347 747933616 720388929 941572514 272476767 927051986 347073977 714114683 731563687 918591524 70653013 282465342 260388749 377686630 344968204 884529667 749378461 885074513 333053206 646960179 281657567 763368778 247864076 984160388 652176275 671288326 375078859 627047833 250324978 840777915 647496076 771436554 802997381 813611249 75840770 958343695 433563636 469816991 325981312 857807184 802376119 868475880 961321201 997750337 366428889 883034590 177371651 526523221 93185634 491830745 565798022 989476696 563555901 636745953 783063622 947693759 548721643 741828940 905539999 925575577 283449580 839251159 982052389 996373244 144293305 921957005 330081897 876190238 388713019 987721390 753870451 946060401 581214752 583405698 114992861 898943001 865879777 942059447 251469316 669931783 717695963 726641138 958807872 987448007 754020522 954733008 673149745 958396370 480006050 825330754 745693328 780074883 164093149 222237988 521287750 603597070 426098790 609016525 744141870 845434789 436211766 932491271 665762201 898391675 875495375 997848614 32815026 744385576 425963451 454469059 853884974 919906743 879280137 881041173 881399461 978065161 949367756 970157193 199462648 345035409 925506859 986592114 617002140 921258313 514864254 559290689 271540072 827074059 301605447 738747122 775444628 938123611 341341658 489409338 296242299 391268866 592928538 761219672 869531686 901406758 884272959 984855924 321337284 792173836 617723980 937459472 262517204 841206884 511849761 752957714 927137118 968393501 530019346 657435265 858396484 894212511 978729458 983563435 931606798 966627302 300016316 708285470 177520090 415185710 175062352 929226460 644933690 815529478 118298772 330191643 863806810 971556742 810912629 828107580 44735440 530630763 742480527 753783652 57937049 365728295 832654280 925565895 327278067 463692135 55104929 571939515 72483196 253467236 744061330 877315969 873099279 933777591 435627638 973786081 13944044 987605757 207258066 467351012 458201374 615712817 651899904 661136081 305062693 649177358 916595115 926766802 892613749 963355916 412879596 617950033 86577493 915213369 706811278 977743470 28513769 826347943 13116532 545177170 726882770 730607147 370405618 503998232 996813301 997212099 75313527 285025239 370200575 867064339 378809952 605638319 288278973 853722755 675675830 817716888 728113706 904764137 650393583 878760975 136845034 236590531 594311098 721915251 894213629 949988423 52692472 779047465 686016824 872952175 237445770 740586675 712436900 813362978 623354991 651595726 400470457 763907734 514207175 943306881 778150786 780903321 827552224 931290220 359803842 537170488 832585920 996893990 303218941 541075517 660289574 731822317 408366448 453287050 731377501 944531157 428660372 662519790 847670842 955976193 163150710 386778611 667004716 785656843 867598944 995407525 900491358 930743854 481587849 926293467 466156888 945143750 389499066 741976787 297232182 633932879 848088358 943755609 321192944 611931758 548718411 860415565 923849108 996397176 561458349 975425562 941567249 975688594 160506344 281702672 477533490 825732332 173630640 399239470 280770375 420645322 930308927 954475849 899837700 965469260 936171096 946004624 55265258 227408500 753084338 988486677 178734675 575726539 832434862 836158912 288480013 504187965 376682131 425974443 729204664 866789926 47230002 175062987 779234675 903657267 416875334 990304614 944677960 983867302 526135943 914662788 256826911 827976514 553113605 779507274 744015967 858661815 821245795 947720840 697053335 932651411 433730540 558984792 504666722 881762930 253923612 837771088 630216643 974897892 697052874 919719413 718217734 892305887 914767975 968233850 684619366 838800856 73209995 979374770 851039654 879026186 47602109 447752279 665706694 979920979 410445757 695907060 826338595 978390878 279998602 503384320 987000937 987831452 43237528 737020953 105995524 541586385 160244659 812461894 88466441 93630683 211810559 249359371 410892541 628916255 634369799 743506388 81942818 553987261 773460200 897646117 616148979 716098357 565115006 892735208 346746779 643216989 708728146 934687715 600686760 629006315 360788550 705673342 242168619 505118666 423774111 825734604 380160969 900693244 848809143 886760511 332500433 917519204 995102516 995386199 348416151 537884981 455807461 897453953 487938447 787921605 993021884 996345108 677225571 932752091 236601260 716533038 813320679 907486525 423864039 681548195 740058942 892253882 578006902 825505960 481833263 973333802 607536902 698003125 872815413 965742285 751085994 765398062 332857924 429249796 192280196 916485746 855427963 921810915 949464005 960117427 531098704 774382761 922086181 992926113 585769655 619515274 114154705 545097233 491882003 523387463 24672272 573337536 763969936 780156745 489817315 705075594 899469754 967144853 462790005 751627742 343471131 463087394 326238423 586890455 862773048 994197374 634204546 653065194 300188441 359983325 163133440 462557071 574008759 682785893 615866231 887168493 545874660 942797213 62826244 695193674 257089805 513588484 80249410 996191638 264574496 767427874 974124478 990332199 411285593 435655024 353553619 952500864 591821869 918389263 37919586 367743089 108537733 278329201 817326459 896864568 410994815 776412364 315377821 649244422 566779100 864010405 292969895 812013054 192648935 236761315 792655228 913908727 475725168 804394671 40422364 140963867 937570157 953854169 359405130 557876907 243541416 245954293 503468481 952137642 117029937 731074698 934209993 945850585 168320352 624584631 863907325 955131420 750073854 979028068 953088422 988059405 192022948 995384946 405321786 949865571 478551886 904751750 643620610 794391036 182875194 323947878 292577088 609462630 12071716 248231891 625565623 778651632 69126851 540905852 597354772 653563250 929913109 988915182 311774115 945705260 417871016 796953109 691668854 975477479 853292815 860545240 404600293 824216305 459138218 923103520 445591825 502914178 402944996 640221404 627204666 741510670 596054361 958314540 673616830 892709613 964230542 991748007 454077485 962022236 981417376 993989931 401946927 992216376 538973015 985037080 999599656 999793449 906381062 991378808 176592676 793152317 451020432 860402085 548012643 577539234 339989498 784292322 319457013 589801007 492399844 938768838 574465228 979097756 145217909 168158050 71583652 913010365 375234966 970463510 249113368 327048267 426190385 451157427 735066753 853018159 198485629 495545026 387890009 558755523 747086063 990521698 684799346 760626777 434360829 830518324 872468969 884449532 427753008 447073789 581360171 846943422 742141494 900357343 713131896 837137764 355887411 459592123 457430281 556044756 895258849 903404319 108963950 640774358 756573684 865617027 407456325 590669790 410252514 764158976 303721668 880894091 44744908 527508240 856368589 999904965 148292214 795074327 868998701 959895615 170692876 384127249 646475608 680719205 596049551 929492166 911461831 996516613 280998429 420544693 641984030 834544505 656195294 793473005 709766974 734282715 275727305 809481891 634279509 812333302 170441185 411532214 75800202 796099105 914401840 929633689 333773696 827744405 950328191 977478894 23607370 129381118 749880137 799556930 252081768 410933523 748594431 750608329 677787835 963117323 507467932 807500909 179126998 429064389 575923106 652568170 964178695 992382329 83481940 549972305 333976059 740873570 717287393 979527364 621030753 764116271 624515055 987707327 911040273 960990648 178257431 714987494 111356392 793600901 987434033 995700877 682903531 726009244 711264289 747785004 511785180 680250997 308364591 760604332 47919792 560530495 217350697 502645211 252118852 311756311 337283074 876468883 167999128 527222901 347947510 990190683 944993097 993352161 216691947 899057737 907238074 962815965 269937779 933309834 127183774 295844401 921530610 995811981 221182937 619216710 754225896 817354702 665300334 690853523 62255079 851285721 877772807 928143335 208003802 904993421 187083446 836981518 45411940 817971967 631388821 930828692 568987289 792640490 522703368 653262350 564849024 712826974 334035329 760591322 631746917 866252803 143352084 627510649 609637276 850259149 65854412 360457198 905515739 919935732 914557777 976757509 330631597 961297514 812319558 919315062 416125838 985005340 538722347 850386807 493193665 546370886 744252348 853099319 917510395 936901405 83851285 676058757 50768834 973370143 286785119 411018664 776964441 979636178 170980935 822683549 614391628 745975057 975546997 987175622 855391939 973560951 892249943 910876836 781710405 954435633 625517970 717044821 25264561 830426729 399437159 671124766 686129361 869870145 726133838 757603287 53372025 122544734 237670342 285521214 56817415 837467505 954832474 997487709 29703635 243094313 516136940 705905050 292090301 683938925 140326009 724563010 853539389 911482686 134786659 365899397 863160552 923354017 393573101 904002341 951351535 986460097 302268503 685001205 582702269 953162931 754845753 803014266 526781728 634879830 763902893 827418775 888144531 912517766 328361226 863757375 720319888 764557362 570170262 736145426 373505558 716719894 465437923 733397665 87183260 979715862 630250557 898780271 462866217 950182981 150458260 547086606 118638098 219697329 550917101 561238267 52735288 477776298 846165068 985791067 462053406 950729124 933807065 989088432 288679819 304494375 644927828 999311072 242296280 629971057 739304273 801746775 217116476 632490404 462915350 713741560 151241393 806682431 324248000 822491154 731861021 907607651 795666891 882538962 429706977 506618103 677299690 836347529 812784551 933956534 560508033 846983233 698649154 907176157 555257654 872479193 392749051 981477023 112666886 274032538 431080660 555716038 406645631 633543017 637842803 946892836 269505777 470871279 856388840 856990289 571024660 806915611 800033034 845018336 377905295 601155460 145039964 154199865 644146333 645661287 425966867 998448957 639473402 661437757 483820665 540662386 410434765 797027464 596204386 991235491 153809087 285816551 69226307 150514691 907020745 970269324 939098632 942538508 237410380 805491766 790472941 904485528 150030137 648055842 756453126 945215029 871571377 911115474 269112055 663116727 5756345 907700089 852845324 989154337 916674527 949769769 488851074 707066747 386842703 581793430 704081632 748425719 241658432 663725591 367922362 934441196 134712913 290957364 460419301 906457991 863299889 998623122 560891907 608292654 951901161 979025753 181232417 927151422 390711092 749066813 580949494 675668555 596064080 610859573 567634852 707872765 467896265 934656047 137547271 619773884 470128030 787768030 313307828 543764862 672746385 889812017 110065428 729121161 846581318 888254190 213700745 562513217 164699293 974406508 260989227 750994422 738003403 863186102 198231423 393041246 272783213 540571878 248700731 259292007 829905002 979813160 871995767 907781563 460057410 526075214 129711939 143312522 447615883 722456547 932287713 967905232 933572204 946609941 924420463 973075769 683774650 819687734 772732130 952823362 704321036 829764696 50311700 273548889 600453810 656803243 693369215 874348743 496399880 638886394 364599459 587602223 17277146 656766572 836162749 859972358 114528493 318624460 401571942 927555678 274433693 955386511 78302790 662812855 174035743 187293174 442788883 514202900 634927229 804173089 646652565 944440199 814000828 935109134 685402031 888389917 528120509 864522246 417932779 891977816 253887771 730510578 697102268 826834533 451708963 857901289 985448288 996130286 892941620 988850392 790941512 832198436 62841865 661546588 214413592 243957324 173171241 231892051 322539583 600659875 610299241 920179198 137060196 885388709 207767893 938892974 985824038 993330714 53356228 416536965 809311491 955335159 384540639 523349087 360849085 493348958 711014135 921297305 399131050 445750301 585431324 847298968 162297297 696905997 55172907 257049687 759905667 826687048 954804182 985927957 685073672 917663592 655318746 758401778 792824518 814586541 158311262 712975898 971068697 991047056 104238852 258063972 692805436 939566092 39441817 918432005 545258493 906292684 780637642 874128887 701954834 954616371 9250431 862792947 553995181 749997402 621378711 661851048 682229281 923455310 952520414 983018188 507790353 825620061 923524534 987992969 840644190 859400071 259485649 786419058 594998674 656141431 130523523 766287576 432690077 949553625 513783281 795478177 343435804 634993523 900495897 974578702 554046427 662615389 878689972 967660912 717702796 743153290 610272905 663980281 267266609 875406437 614711843 677325268 602993930 827517930 423184502 660846229 747029017 850607361 302000337 432548783 346121179 471555379 480171176 828517276 868037857 918366040 879488420 887063308 329246845 909489127 884847804 938709379 503028342 518412177 324374131 472219344 665273131 686421024 468742939 948699160 839958453 892379184 953444469 971080816 199449080 727933054 426269175 457777180 207775672 960024164 648020456 748202146 565329572 833084889 971272609 984548420 394913495 629404016 508815233 558788846 224717810 240454285 859510489 868035848 27515733 536597988 305626136 722841604 399497407 627973777 107930123 673576541 467258588 486984246 168203238 693340279 129015232 416765258 841388797 874153830 478524634 817637698 738508429 768319059 56175835 376097100 519152629 840586516 179783165 643535305 308467416 902061863 697391674 858119897 834353446 903041466 358062100 737117848 361527901 861240252 60969965 429637528 446125116 756358293 800378953 975818337 984695872 996190004 554542029 618128414 842374281 941993475 569768469 972052849 101997340 949816723 926663482 953219794 302467422 841718473 609643926 630261081 667667843 919132753 219735566 479470686 729187104 911088379 143620913 754945742 478975057 778054240 990879983 994979961 320759603 824219269 444425434 502520478 605204755 628365231 107465066 744436136 155157925 249335096 840676426 880137050 385053123 993915789 260957532 276975944 960892601 992590886 262826548 900209254 916354195 970029304 932352281 997819647 196346491 220865850 171886723 660930918 220186682 660324995 551212743 882705828 480166647 993833896 125565759 924460176 527145950 781350478 380822576 706379023 352064703 640123568 372318472 904125893 974385973 991879679 278416527 771003502 778441790 904305164 579459060 982645002 896242959 926509802 376029912 939478181 659120504 984977093 308666969 620432667 73634789 452329057 628302993 652384444 579711554 664785538 779722699 979895666 181157981 846980649 373223782 837482743 50760333 123719167 327700719 367240170 219714794 415177127 433476971 549881223 194882417 513504548 615063517 973643639 984746184 996561410 388553072 774646211 950902381 996674150 321906814 432470454 792718238 874568924 738874819 970186044 12942280 285338282 31649715 800954340 511839724 782336517 925935404 957825714 479139655 574004170 271737258 739831247 660042243 999051676 597649677 821995562 831617285 893838348 699858148 721813555 994072186 997729025 938851303 949755199 770459952 986879922 33189556 825752793 418650760 969473518 8888300 864105123 22819206 714612777 882492396 993511595 837476252 947916252 606555826 669938130 208504150 597964790 416142501 464416718 868690097 874112089 357515643 693013405 328798610 816855388 946130767 973650031 251984939 888464497 407495650 947324235 704332950 717107994 19680998 229686191 237435338 838648648 802775109 844612824 976005389 979905055 548112236 685131039 635295390 835896370 432191115 560047758 540833879 988713802 429364260 838140530 570471642 935712028 544846857 804611788 770415362 954735954 911706634 937733510 396004318 429810178 256592518 321269149 292868525 873328850 306966470 658671098 597697754 629118900 417473579 446559059 241081393 556911193 354094151 599341917 393522892 496202869 447899496 511866395 102433195 774891222 595201712 796551848 83612340 304304867 263702940 587294713 628627698 872910167 175580770 264673670 326017259 511285639 162819122 903910172 943200274 943660079 629094817 705458207 699180233 913412046 403327707 598141914 392816155 682726710 244085971 792915693 535708117 553509416 301679932 801814320 437146177 967346111 152097155 874996431 732065908 763898027 439144572 455822215 880880860 891103739 567417929 746267695 517620700 741903487 645451111 917017519 338042591 789189286 234888495 606273956 906006634 983498932 431844351 574310289 952814335 963948430 655297410 700714151 95460033 144815105 523310240 875334470 868960516 908254849 744953055 875716465 321719431 571366646 891745155 916606962 465407412 713668395 226991271 892356412 181590674 640210754 58175312 109186446 271043785 384568220 254241980 696718960 718987743 817463985 792047172 856924539 535883989 755466268 78616783 738921708 212077374 830205804 91116069 407418521 382543108 632641383 291899153 791943949 747935069 764589195 102933264 477117249 407271502 890220511 401316099 516355450 270379128 996687985 372049404 384320595 494503411 867247792 445481167 744303907 273991307 598931001 50244867 459190542 97131287 426097962 858677730 911188929 611570472 942282024 81900007 268293623 374908606 727935229 312070171 752289484 43825630 986321811 417381899 642638635 816291012 870631682 832914876 964775229 754094916 959478546 379011688 390009763 245199147 575137030 592623686 940141650 273592375 446746647 408512234 851249619 594644200 724993719 462359041 592662221 818352028 909710938 155300990 977979301 665860058 780176935 903186449 903666162 870490122 971379613 589101598 688529828 84258683 189489211 627122913 669584241 407723738 767212388 361128418 704670134 628566052 847814092 353951883 967980096 888546095 959117875 758066507 900016290 266275324 411588189 977401339 988830168 584941639 779179023 220320140 915911620 324074572 939627107 167049906 771297253 891854832 943838534 352420266 672901437 648157154 959305921 46077804 758329303 313540881 470041607 482321881 647023684 7418570 448719647 530328006 930356977 851893629 958764392 880926387 881827440 138815847 667288861 456463929 736368539 290897993 601747116 325770574 431631742 328743060 648843207 70777118 257584445 438748232 988142598 5751079 952318115 472520307 727789318 24450620 592786392 256934821 848716381 745872278 954317141 934855663 987933652 580986236 797083576 384410749 438404051 863362068 923733159 124144948 354373508 707971898 824085372 111452443 677003337 818371118 996662920 4390888 739060047 946916839 962428155 285130500 461939093 703355431 745301547 338176555 966433336 954737647 987242621 85227154 575933443 884900033 908452538 14645493 429397648 856563733 927191037 982549536 990578050 54308663 110826881 775540582 825101025 252840326 309916224 752904211 811308584 883287755 912482898 208029651 966091653 423570377 575734712 837921958 962896267 254275043 846350546 567363283 942845382 802635766 872051222 30746546 919918781 625923162 658642784 182094250 540819373 408603754 562053623 361467765 884755574 724304556 816854702 268659503 680062785 278929746 729106936 670333340 867791732 284992881 815333751 402477517 730166813 544954875 936922037 492633579 511591939 796039045 903055903 105312056 807588158 446227886 960085702 771859933 775976151 24091441 696640615 596602617 603407221 432360575 917849052 317049337 673670248 533495544 720199832 13816020 733031827 99656132 982403604 69920542 803197443 467705629 836721364 540231847 557600985 18361972 334898509 178287990 993108354 95691714 913604252 477289891 612993364 85741364 405986816 6304718 372290680 407405886 995924465 192074750 652168416 628723464 652865359 92421522 296335221 364848462 555275430 316239576 784587298 799061755 870613219 978649297 988131068 987427321 987498934 818276982 891144613 384333146 840395250 774432051 890108822 31390128 751733816 27238482 721256213 43384767 140783337 779222640 944411552 689275351 828650468 495258909 978651031 325322234 763817923 700135975 849387668 609749917 728214885 405468698 807724609 729825287 744854455 648672294 723933916 257892569 334924254 100783256 553850414 71738628 984391587 159924361 194647731 63983191 743885212 145994196 306801508 621347291 903120242 169584997 446475381 631646524 646118082 944813009 969796622 929208129 971198059 90714297 187210372 750973275 905552561 934614712 988776843 824944209 869805652 448393914 922695850 881758547 934415103 836132734 939522757 559852905 724234243 285139633 428475692 947233988 995469776 117450247 425961341 500958599 949328472 681347217 733026239 250781987 637828949 465958419 839534905 831749637 858386143 39070208 876676879 346214940 761440088 24114126 63802259 115765166 366871831 957431686 988587126 45981696 285106727 614228453 840139562 606641392 844774643 408235018 522754963 295253953 401229655 652517322 965780385 572580429 722470930 857973493 902050039 271627960 453341676 385067421 424715386 452147848 581353270 234764690 548225543 258959587 289522310 76418591 439189838 469783708 690482993 290265323 631953930 147904495 229238472 638196992 732642515 598677989 651110785 760038163 785136361 216144042 423011596 516334674 774883555 508357322 549872554 926579528 992566119 747137171 841482544 906294920 962642581 490932701 808514712 528080373 753647117 321060978 370396610 482459054 650533361 577753228 634020264 58250917 993642683 244372851 966019108 476046495 952470319 442855008 709746109 411256089 899539526 870706526 900258315 464480175 620659722 188832444 671528130 342096483 917668833 827398058 889521503 844882722 922768044 162195936 903806643 45309211 278137836 506857122 506980801 907905072 920923701 687543950 705444319 817318475 825887798 183879142 687422328 545869581 548164363 31728812 281013576 477772507 804480936 94963182 228970175 227909135 668664569 379375154 670169356 680120586 766445153 149234365 863343349 829349034 898274857 169708739 782226181 808194583 822891875 826776706 962572089 394293303 800701303 720867489 771132526 349815816 692767616 692658455 756189492 337914075 488022383 24582385 252811022 545117824 618578444 116986068 800060644 394173577 403839750 738599264 791011508 585846994 867820123 569339585 631244588 967907350 986836869 931349860 938508371 827982855 856538925 24987913 63870285 716708019 731686049 294548189 669132311 770567773 853451924 599335990 693415399 83849485 103846914 785712419 996182809 275851358 533878054 82350866 905369347 619224410 987283302 43872434 248339062 33820491 373739763 404071509 459090560 401439721 944062305 429811288 605471127 644942753 716327601 399241735 400432325 519239897 829116867 442627859 914933859 943574399 990058549 866396998 944393696 57567440 136541869 114280671 717988021 888237366 897628710 7191515 462564912 906237992 943042088 420078474 696591677 532268097 935600302 652051852 760843196 541497545 848658995 525254363 695783028 93689508 612786800 55366631 58026243 271530305 356225842 959762350 996251049 432231359 720579278 6458841 31622804 244889663 881669529 773370503 975677875 892165209 917138843 20255931 592736136 589197762 709342911 675960762 679151751 386877398 767857179 702884499 887069330 719165948 968835874 391348983 510770610 678933202 890725898 278519402 490389728 24877454 539355989 528864325 577970214 114820987 166513586 871413629 985605450 472413910 617884964 840333993 947650156 150213033 899073301 961837460 981507950 747549081 918475388 438196085 597026149 252503633 676203875 613926853 682475152 406535560 642046568 550222586 887878982 366552022 874922735 109555488 933626697 847850063 924850440 829233000 919331343 96054908 295792614 368320343 426263204 395664449 868566602 822554159 903632735 724089173 959033444 311855772 492718172 876477831 892267169 761189490 806719111 781279574 949240812 29299560 951914438 703600091 803466194 809573787 860917991 286664495 302892244 363640417 821643521 607534607 883627515 553384773 739789934 415255750 465811466 119754985 172206944 807574625 807864804 395508622 972405130 924141214 987225267 776173059 992376648 390231951 546253500 379390160 509944963 161862967 895555818 924175965 958944290 749363984 805503402 425096144 822411896 17041993 823750707 583144400 590015275 101991052 454571330 952582430 958949176 999097949 999460001 735462018 912275322 604474653 648925252 473120885 586078452 122539988 889238096 159359378 242818927 879918746 885333813 456940240 928406264 783324260 940837885 745592393 886627876 357564310 829964229 359989065 528503677 772060270 894703956 928768831 974074746 502047422 913780836 830579518 844429709 194134171 616731846 803334846 955957046 604311375 695849501 330013666 912225064 541249831 994490128 489276515 676729422 558877905 725910276 831672923 872935229 420206550 594761944 843172486 969196372 992716160 995639494 255140334 543765933 335412787 849185755 195751217 208391340 701377413 998417401 385258186 853328648 683703829 999828559 677088498 973445888 154445039 670131953 689062173 831151556 17867077 893381883 743296074 793551503 70629200 450524166 481882641 517992858 274799355 864168333 866335778 990807242 578436050 603564646 331246649 814169723 104768654 712865400 604905116 898493185 644537522 742553465 754295594 842343354 190692089 410316029 240263985 860964964 467355394 854150352 664301435 915930720 879856303 920916444 716245505 734623668 133256000 243143022 741965280 986536451 618439774 730803157 404248971 994036420 124668872 283297319 512522981 524587080 159689105 337480805 8947551 891919537 173461933 676447000 102289843 308487657 576417718 807579396 201840925 255016416 321336673 569748633 257899093 928705541 5806111 343656587 577993258 611420439 995112940 999567240 383095713 406927352 158500174 327465377 37954282 678482223 364536505 495134048 594519303 854992206 180566407 919302600 485905958 966880726 930041018 934963690 697315453 796922528 963961239 969114660 336788061 451771752 453481986 951118409 627102917 827817867 263939873 496810692 448392885 926969066 732880466 746882025 433333488 635065974 517805127 959749207 438159181 812316893 112997851 946380284 931163730 953188714 884700404 895882795 370884851 642369830 243214413 295739341 284216981 357307360 63176530 409303585 547017620 921089941 722064159 794562312 603065940 761651325 846292766 993807619 918886732 992583758 800215667 866005296 143135154 690175017 658657208 811530926 34759971 766649209 346095794 408542204 463638887 693076472 74363445 787410826 568762849 612392646 680255893 965656903 10032721 230488931 781632207 823261018 580253597 976814667 781920475 967453044 846013243 868256765 172114584 609669924 881704887 911788992 310054458 395015843 54656421 589154431 687905447 914076421 721375120 909851810 149258992 187067594 539948031 992840258 59536739 217976473 303767083 400974291 349907370 587496341 536680832 618067342 744155767 858091644 693780218 771259312 765033036 894290001 49932108 906192900 660329123 833911376 319233917 708697411 576540754 586184663 308559190 460324798 263676445 546802100 122020234 126821116 462079722 705140351 144410905 664984926 375178427 549507023 583238323 590263325 561143614 810571291 685835678 914407467 859988504 971904629 538903814 874736665 499711348 967511628 928921571 930249257 7465913 405981288 608484935 933898507 323194102 539265544 104025630 549170752 997523679 998485558 245476618 700769898 685702605 869358893 270350258 953951756 263162861 685793031 904320112 949317479 113852438 688154707 700512389 710451520 475545252 844053739 759076787 767299602 460381804 588598573 804640521 955139383 201766744 780210414 413854728 956962029 192947966 528117976 476729115 761644640 914644769 935768323 356132306 772059477 617324836 671196758 883567265 976868622 61259373 701092293 354743516 690996155 459392015 620391859 338769499 377643041 618456466 713086691 881989311 948136699 251919695 421863599 86736671 979895647 738528455 770344753 440664949 764712202 303783149 736508636 955980354 988242760 798729831 875699729 383740200 688854226 314115349 985018125 896909023 897851585 216267056 593331883 37689927 602583732 800647219 954280740 969277396 985757794 353910204 740983224 664080696 933904469 230619968 367652315 171207433 459294129 989304168 992270401 790508559 835239992 511402333 516549627 691674065 700456827 649503709 740966344 261913090 651007118 888630712 979413500 163652557 925693379 881602857 992506149 441497165 850025765 1792118 494215234 151003277 365021791 211366762 951926578 36362223 121178948 129773217 237368920 459465001 776146338 925894501 966478808 507313059 919604734 103224790 283612500 243970328 887713137 839414413 848615226 630763721 825740935 447448037 700834449 147613494 883772906 654087461 879286693 600150134 947676518 806224486 969152912 542167315 683990269 537895836 990513572 783806760 836957668 147489615 571351972 174616304 733500645 661520931 694396197 665188026 847859624 751697586 849371536 58951675 928707949 259895702 814751330 379991220 524054726 614228472 782247319 358173597 907154753 941272442 987820864 755971481 836498059 426586318 811293883 44290770 931664111 631274118 912581098 109792060 724546762 856667015 908579581 880824270 976747298 744079520 873385019 864480211 887582616 62378059 574045464 814967374 913557217 182324568 182868821 281990477 364904610 481691915 958354743 119206207 693482567 8075417 95889266 313284234 839543785 480559 506744840 40896641 884848968 392453550 691445972 170899196 960110508 602344957 696007964 287402462 524046481 863277527 867559252 718928229 969635445 909905199 926602211 907384856 918174590 679757570 794089319 36453129 890559224 946095682 968496615 46589195 841236309 671033066 849439513 706505279 869603901 377979196 739183484 33660005 419901015 333238641 641192142 436958913 615564348 104024482 279683379 722194706 851603020 473111827 526427114 252179701 836842699 222812240 611065879 190347973 954838708 643734751 973939887 967005630 970912514 208653998 578440486 991982042 995193698 91938918 221878705 26630287 651033226 737692932 747777901 127698483 253533725 288609691 836769541 863225403 905305030 756347780 812293234 883274964 938896359 758989314 948978900 141265863 951480328 940415565 976428574 690551811 980107762 402137415 662991977 200098666 588540547 842603355 914094224 552366240 768404336 562695406 924217495 335574928 788089858 702594676 991331970 954312217 988404323 522084932 935724304 613590942 704914309 549997263 818707662 576573238 704904259 820262921 873619259 316521382 955614542 534980424 743696925 628813420 898234789 416132254 429650189 440470002 925843629 860576258 936435788 745980641 909268142 122767337 502975538 463592193 793753383 828817441 982294539 585727141 841050060 54479751 446124604 649197214 757983732 673362723 760025226 958344517 982015667 613787572 710699510 842195346 906776082 733033526 988435032 412293015 815191620 573156612 688447565 395505965 593034395 835065184 847639344 599294717 626553058 105489494 640461162 394753979 953481859 774128831 778557029 204158404 906145833 21819144 461399098 541064036 962687358 140674566 234803121 681942985 697528957 231593129 544383038 260202367 741059937 486496298 711949591 453398615 672544726 168802778 755392951 699312180 897037632 831660208 867992852 185436092 486875060 321769606 942159005 30687762 713240180 546158272 951659531 306904474 375872898 702843843 881657689 614486290 615830014 368478221 846271515 944195937 984175050 484492920 556767545 903298494 935884321 469828026 933591551 281333610 774923014 524483811 543343770 678508725 977684192 410395317 613520856 59395193 252978799 945293877 947320724 779003132 867193944 178877249 755297359 222874795 722418375 614517551 622684935 93998087 499123843 714479594 882881470 896625232 910885558 442514941 755807993 989926423 998682462 108773512 159391159 897461542 992878829 111536935 597995339 724645151 987188236 711057226 771629829 710646019 821061586 686872967 961107774 711680618 721748811 884010 796082817 2234362 397282868 382774773 693947982 903681103 995646593 781194026 798538078 603555928 787410097 262042223 792528903 99402210 246538858 229383122 592299320 113138584 174536641 955343312 964194562 578053904 585126319 164343237 418269191 961758701 975117186 965151271 985915096 779624970 838691398 224751771 678946679 611765243 659195414 763637746 954164564 962172350 978040751 529523280 761521786 285031635 329778326 575685346 963419170 486370903 810165546 363451647 417280908 636774763 900110551 701484650 825275397 68571657 247113509 89305918 958650537 732555287 998613140 99135508 975283827 748723632 891817971 775484856 965486023 396992959 923100143 208889843 467840517 708714355 791601793 283892152 540621069 754823378 755592652 741427531 827285534 921820009 960499748 846462561 865375722 443414260 605683762 321576619 810834381 99811495 666084821 655988652 823093549 373505701 758276403 347646589 482912367 685968262 727869436 749152761 803843965 676663016 963618400 896906948 987472594 291707032 926764610 781497427 860198926 683345370 730768481 79752551 781084731 415631776 496630983 442343713 669624269 25881619 298778768 879796758 927316506 272532371 864027918 249450177 422906932 975010180 994912046 74679258 402805893 40365541 684988785 83106083 748189904 817123793 884748433 892996057 944011892 99762443 184135693 776315347 802129630 568807379 681406472 263092607 525316531 220431153 766330556 251629206 645203973 140789110 362337654 727604037 898261308 367229910 587053543 233079304 581585741 649797063 724076141 215012725 891816374 726849318 982003076 693756432 955147303 737877712 907772614 649842838 715391901 630689319 799264648 331088979 606856905 314876097 932814854 512506840 931855310 244661022 745770024 708963123 972505434 127898391 381116149 165942660 758730103 955956509 994774564 94913268 326710995 280548389 953753447 880567959 912501418 855633394 858776125 73614994 373921423 957872470 958731905 636273576 669584024 674569914 684233286 581358690 742424026 431908983 713408436 751816289 769708137 137152858 406098206 644456079 676283785 805659098 846176412 313318020 941124082 987306165 999731383 181087171 689360977 995796916 999192599 254945966 554368950 171224912 927158096 289046444 484332666 944663555 991880725 984694037 988576601 721438731 998336413 362708755 775005068 832509405 980901086 438704850 906880497 956285523 961396253 672843425 696001019 852149005 855735450 316232417 386717245 403803727 450790009 58882045 772164652 261735204 748531885 972122092 973672224 422889861 991564517 946276222 966439109 663471499 681654442 308505442 399408948 364996533 383171217 936099625 947957385 606172301 665689434 781527773 837316939 178270199 188598444 811288971 959776468 65498421 705550186 413003278 916122175 851537532 964068020 482938302 647035946 205357496 543500340 81353193 443036762 321887321 614204717 92695403 925201577 397519767 911144989 99940601 863895074 24691310 766458660 149478185 909659476 422710038 458721973 909494308 934988478 802746830 894527986 811104653 912101444 603234110 819817258 592673148 824083999 267034588 402842034 813106344 924606103 755443004 817133042 973372937 982136792 525784790 655695596 894848999 927879967 473025411 818341152 627137187 983253105 665496850 730881533 922979869 958046790 638945053 737766336 492914364 559814956 803997724 868956066 251498706 941456914 460374827 852503578 876526340 994007161 526342298 558628659 990370378 993967231 983515186 996033611 832998101 993405971 474535669 766714431 484687761 995977965 546360291 913351064 868563057 960083888 126941255 575592114 41471313 913098218 423736516 697291938 494377895 972826868 299681478 715097316 356195004 391435042 880982439 898560518 734150977 843256467 102044170 349657959 228358165 266903888 478093905 678535408 889170623 905367140 555014558 928999972 647173801 780740637 688837367 730290859 231095800 428475003 709381229 920408940 719503497 747919259 138094585 549536564 905987993 979176186 968664020 993795300 10842518 307708203 296564502 695350433 538720023 873258152 485633832 775818830 555260790 575612790 974099256 997415609 350994284 677335223 345940947 512695022 788566746 833830021 518525371 893476785 805938890 846822340 25443034 99954249 140501221 158383215 508280211 935057056 437297595 724920411 640415204 669441421 661928095 716828863 735751887 939671484 495253141 863586211 543604034 618775388 825833622 948230348 524747905 580674092 737337222 875237087 703293868 829483118 720575103 960513892 482659736 984392110 753363969 770001132 338702033 374670470 82698232 843235889 36463054 898595020 859487357 998027196 495982253 841215926 539865364 710140071 649546884 765636708 494355867 670963338 51496284 781165360 441387060 482619825 419630726 883252848 652774339 910633079 489721194 989505278 208144430 487630928 360316159 402511725 568539476 692166700 296115529 434133968 930293527 999420958 365773927 476624953 746484559 947644677 592132736 941204442 574064539 999695875 920381603 935521126 196453551 302538849 777629799 951903302 360210459 506352524 103627059 799481496 625376810 647835558 484963003 725957904 170465282 985469188 835554323 884032465 526155149 781735972 575847207 819077934 776455357 851242080 375317646 641025357 679811287 839068768 863859743 885856338 931216449 976105106 419774928 960284980 473996154 479855875 766406623 949775441 650990405 890041685 484385086 528005845 256081910 780328338 512659240 970483087 62786250 333519136 672556326 734651535 155683542 767138000 706699504 773215629 941197313 961858456 291666283 429631332 112773867 922200411 834159869 984542428 784133959 936643384 490584260 537295210 198043816 323083618 293986075 342332609 679525860 989897708 890584056 959988100 289378520 767620764 898251442 979783793 916269275 980651678 309476950 433305809 461220835 643133981 543008767 604544902 71769927 888260980 963529707 995271833 788947972 914372096 685345913 898556720 742004233 897399236 822160715 845444175 498463810 783423551 286449550 940533777 467394448 564078252 860317457 946480655 312917582 806437196 404793969 404945759 925886326 943773988 867972197 907913389 654296713 867675045 129279642 265222988 926905444 940234520 514959375 732772146 161264550 378538398 610462625 849104811 403385893 620040083 358318975 677088223 620826424 909194170 712808325 887611615 683732182 983605927 414620288 853672265 148603940 262895367 65661989 652643610 20217984 555773779 851695219 942614243 460419984 490910017 324786431 657445144 631863432 893043900 593291516 900437586 59316556 671951946 907195716 960153197 679860095 988791517 988997506 995221023 589578010 934871023 91163371 815014634 155092589 485073884 433371655 768358812 145755446 345247618 906406233 973620568 155673461 178040089 467813912 972746812 543813507 608945420 798531264 930329521 496199349 920765786 822949892 976452307 368828703 885928445 958147274 976883339 794790722 910135244 315236764 382189778 661432458 841367765 198385315 827792660 444378149 628452597 272828793 465838607 477160520 527144526 433737663 709681428 97045422 655529479 595021363 800829118 152812127 372670682 197253675 576742492 841000147 969197213 496262953 532239473 494295731 761432655 861344063 890293640 188278401 769221489 16478052 339223890 889257528 908171359 382682358 737965660 681417872 763357948 572415664 818660662 28972365 964255059 404170630 583772882 684757092 831818760 2495395 721580180 551486161 642608395 747102368 905991218 534979046 548973563 371635049 891970751 774331779 934759941 961037874 965935578 137814460 760179769 98957698 813121944 767041998 909606873 512701510 539496617 3001201 180147587 460986868 523209939 376266321 836804711 383363626 404301255 661179471 954958242 747607203 796552450 173887109 770110407 566522357 873960125 793468205 800727802 410990716 951439762 290035927 807516024 229017810 997934623 543001849 586695250 116581934 166251368 895469426 998580526 803791401 982549681 879802317 984777407 450818453 881558987 287890067 421893589 977286551 997810701 750104717 819176823 212517056 323835683 243160435 477309376 327403040 478090073 569014928 880206984 668641093 791986262 239019472 362426277 942678979 958750184 270780588 734293641 72346044 977250822 408689903 890070911 841258641 845855728 657836803 722504989 388879310 889220553 849482635 962642502 971746933 990665103 81023977 806283262 591387546 863344356 901786217 945475266 331183061 521919365 331975014 533220406 235668776 592004736 905872241 973730633 397127869 668488870 832054601 985335747 998939027 999072500 532703866 897143428 689632305 908707056 350925544 503021137 46725770 633209835 187398257 545047610 824485674 914816882 448986425 681273894 183924069 289336914 640280886 842033448 140110456 614688946 957253877 990733091 790039130 795515732 749445176 832039765 974292631 995188707 752095138 961045424 686118695 822429311 339718635 382405610 123719144 609171771 344914860 810604697 309559360 373608987 36917335 177675355 80096584 224765105 826326420 937998165 989202948 991980122 560048800 617105331 601724485 898459965 754456092 846607570 466316176 892853376 882603917 999604762 86025716 464147936 861501960 931093880 473273960 778551492 694227532 781515093 231060576 346891799 344379621 668886064 328285946 557942752 702940286 724031962 105565969 810311643 387942575 400465891 914115712 977783951 691550057 943601452 903216502 972335233 626821574 941946910 816788553 852413063 77859506 277213457 416714083 878964883 329080244 472134845 174179569 796077140 365684127 532241566 884661333 918911183 553152273 650083082 94438265 762456508 232931496 250158813 853691085 911052790 553856649 932857106 412362440 936104927 689276930 822794914 242765467 258266981 409830349 472306942 135832097 292699056 892651332 956393911 723531096 727328816 848634431 919692405 286088013 823056644 135641238 773708939 12380345 430318420 337645019 564916086 12844133 627436554 480992 672026633 771653250 922813612 1884058 83747951 810257110 840314168 302010373 957560419 253346234 523548983 211315787 350597803 739904952 796928919 507196419 815711557 501601072 548260463 77208688 817194489 106625269 188595079 414059204 721638314 833805377 983870991 752637327 941174351 783145830 966522623 528399848 601944170 909396335 921086752 200490749 683411234 629540579 956591319 541799571 797341095 93271045 276173159 775778390 923893292 459578279 869482253 643918260 791096070 498905192 986351280 243830194 539253973 157772114 961372150 944808085 990546498 76429831 144444455 731743420 898003031 990683419 993200905 578810485 668726205 892384665 996019183 310646777 525391993 108011182 821220718 753065556 817424655 486897680 953333025 698718649 767424744 393264 66543689 225376056 968634324 67429618 759652806 44190059 822737684 579791912 866002298 272479967 546972906 565037240 753892420 87434931 350218994 237333566 839178224 791146166 903781151 128951352 815682318 152479586 161019019 505589582 825369224 878166238 897043456 192512135 385050645 483494592 813496088 994221122 998262998 250106858 675416657 975514087 997575505 627247220 752847259 761281130 903971650 221819214 894068410 765890441 815644645 290831990 662959672 736628235 932494540 422699367 749875291 98185206 732463248 560956378 698773070 522728344 920142443 935794137 967681828 251976217 948758302 387964699 441165279 673721830 704441151 517979876 535289866 626003901 771075236 308821571 827826176 797033441 961571652 900295313 988257413 385287827 447743842 312957766 858135313 511420819 691367091 932135830 956476843 270657185 275361955 242484686 781796902 391911131 465392649 55717219 899665063 767570786 985234891 612826240 741482124 436364745 938273581 925962265 969831382 263524999 351133791 765843035 813933262 618642966 834720109 365614701 999599734 27660141 616226823 553026603 641499619 20172495 778833347 922512107 934133393 43808936 923876385 588916840 933977615 925454936 939374030 568163921 605594139 851740044 937259719 800007885 840850107 945850364 961114843 219651085 651527108 919949056 972120715 692680367 959587347 110077589 344259290 692255931 812600058 783868366 878324338 815593644 883177030 138807700 499616431 355811620 833020216 143544283 303904710 909241823 996904676 903590977 923924639 682886270 919956665 691922407 788990500 829824547 863055739 48106828 583863833 672037348 955061512 605145079 842088771 632256222 640567757 6960663 748268622 443945285 450359529 129618446 625032283 229185383 692399668 692401772 886773794 432430536 661638273 525167151 982662918 368915900 835676587 782802039 972298846 218486029 858148970 331133575 474326082 63551762 343768324 999911251 999986258 426890312 520162541 995815119 998862504 641894461 914836748 193799949 660850657 196744502 998739462 697979295 966623438 432296119 507984320 355504973 800579098 507251980 812772303 190645484 307005541 825779521 876056564 226924041 558386773 577274471 946459988 374637813 578949972 443038007 564907711 354728657 389748763 274228552 631397450 656905457 677463367 462371089 950785737 627383601 935965675 23971588 387441049 947340387 970113827 172114295 879413780 299080818 414892802 866810735 906358095 512395994 702628562 75080347 579785307 147857418 205789604 190047431 379771465 143467230 844252916 643131822 726441512 172551181 192790193 357201784 727999523 159130584 967527953 68871 561815457 379096641 801501435 744632840 906914478 983529923 984896148 653299467 849808321 430271699 550590348 921631268 969740685 500666745 516654016 778221942 807811262 158352668 520527990 555602921 756334435 860781618 980573770 895425469 991359195 614700004 702058574 576310798 660673859 649720203 939163502 846976413 943376073 398580645 579432818 486166547 948213878 497892651 623031003 60469658 243010527 852236890 979764177 223703326 979021689 790632736 933064740 969698693 988573982 389382404 824315639 178711471 191233901 362977014 941321781 901135313 951282988 565440511 776369724 28965496 702878009 875425082 904947212 746500724 879823634 580375270 967165086 718853218 905180884 421654626 875616192 176869453 383813921 183287890 783558127 251082462 860711967 911296273 919729403 778066114 835705585 607269875 784133954 860716085 938693600 401843285 422120908 475515996 584027450 342592910 708342046 481790470 660124604 546225529 551965228 223237937 396913580 746707962 920896198 998216430 998811835 620349861 833405293 643732072 859999152 133808983 163816020 954183111 988996711 659432109 894401614 260015073 991411533 82575152 803722222 128780335 330252112 51801462 953812240 966543660 969066354 400929388 413894212 882025829 935134670 627513448 718016693 277761571 908506420 712353378 878025788 646970752 864149086 440678216 458100516 549743662 649221383 224922767 591275974 716804695 950428395 234211451 594843937 565350555 938396608 603031726 831210885 935510740 962813171 900301433 969441532 925720975 945152241 658933326 996551948 333364256 441427703 141744048 161196571 977504780 989465360 36621590 706753205 386545348 991381045 110577996 363715342 982156743 989140078 561926816 762458133 367950949 565596569 409254424 524926464 399308795 664294782 530775815 877689592 405147424 478236719 927242045 997714309 954356049 989183685 265702354 619274089 826749742 958042120 310733632 448246281 860966141 898263818 447560684 455481781 401479107 555490381 383296303 622516990 651165247 918894988 747990943 839740002 856704869 953307424 385445041 542836626 335011853 821159828 643938624 881620675 44314739 332137250 378215029 458486859 786276768 862366728 794532573 928709115 161530695 182117669 768524547 979486058 759173889 867025791 698737224 870660111 301146010 946223053 640094424 734714065 368969429 705547592 416474821 627970904 709314061 882552129 194225599 446672945 315807526 711518850 601194309 994912887 630574458 884036098 912213064 945350588 393685188 456948727 419164655 931091559 393568911 423376997 932794052 998722647 473310673 621803376 6427400 580218999 703362245 954475763 365555059 957319495 625065546 880522715 248099016 389602482 903100048 961352263 900936262 995902262 897463359 982714645 767447094 941072577 574526829 856175402 101399555 480560727 324910349 748634700 630423549 938211947 253244021 907515855 290750843 554016483 898917055 942429182 563718804 928630639 436604869 513454132 788267196 858224791 300022151 725342596 406128719 669890133 289775459 556263347 442692829 576325205 208961252 837244302 994588396 997541752 552915511 699358267 269511229 736154557 575808160 871635996 521683549 829428978 936926742 983265294 885183969 906076887 9412671 198432073 673271660 944045151 861758369 897387066 858900728 939377747 37929437 584022844 718719817 736708317 319740920 962695820 953775430 959511700 879554602 950293796 377967258 885203128 974349675 977323423 749995652 990977885 84310393 749202588 753730614 834005344 137041625 374336375 601682635 671868480 47491369 879679272 835060946 928188545 642000179 879421187 631190062 649623267 47291910 173984287 873063196 916704507 994354028 997927984 359634631 975020443 460418845 822960793 463058743 825036049 471762521 894710645 620984455 878535870 100311194 751806318 191099133 752613092 88155357 600189047 936293096 995320891 617886673 744894336 938508524 973570272 849340690 903798848 457065380 668552281 963381959 981540460 48111447 383742328 711228552 837125290 226552017 630029001 234067152 471742952 779733533 819908047 226549316 896309616 959253510 976895128 434367612 530673975 429753106 504999600 266068042 876803444 222000478 914181008 449460326 969921545 256522963 576879567 53775222 637711481 988356325 996598515 845946642 941442006 760524796 778673006 481672272 874956346 341877833 802343223 297186274 750026215 257167081 751658543 362292918 929110392 946062454 961831058 984659918 988613754 47548757 186404341 872730787 983824029 870751332 906855774 460637695 980214963 971778723 979192293 316097419 942619479 807658522 981849287 914252336 956374006 637679478 734597085 551450446 560027098 150278250 965438406 43852287 687991049 371239281 401277114 821726926 936106550 106265145 254916990 360594257 387705202 707133423 711789836 354910407 540702848 725677585 855641114 542142174 866683139 697087710 754539924 929697055 983427315 680388237 835714255 357066662 596438547 855390736 917937827 370845807 378105649 457868318 702160051 558620587 797414165 871888853 896414589 71684395 225601124 160597469 954758623 749119218 846351290 965757110 991859274 493517343 609197716 387229524 433226375 785112712 806704721 245629119 649327985 155659881 519222162 751746002 944301640 209902703 266013037 368670630 708367757 123102955 153310660 269259027 438731210 262535008 598446989 300045457 536690674 932062349 953271521 207471787 933347638 381952323 982862798 889458937 999231102 628280785 856822462 284812147 944223986 455968541 913774939 38344455 516733129 756813628 975402706 992991768 997219383 982690791 998400376 196532350 686422082 2397972 617479396 672727644 968181550 681068375 745592467 163795153 445233311 726884028 986185324 117491462 760335218 17598499 968516875 72731073 144110136 270164401 708740651 981988779 994635123 930329035 951206190 960984096 992613058 182544908 892976465 229392711 328194555 215487421 488353528 844497353 899557231 489662167 640653712 396419084 448168071 612050290 747628066 824863243 923385474 717827811 733885487 979403718 981147383 576159424 705258969 737724711 908890209 978884084 995755118 932065010 970497962 363020224 727477767 737575826 785746938 988950500 999765925 426850739 975696642 255783938 783001464 530506094 791714718 251504131 301476878 218043743 514269516 116493465 174351717 955971875 997118575 610829860 786587553 785297357 905956650 426431078 717313467 708085659 979992727 702174779 828935363 481899833 626860558 229887802 463881386 904542743 953835068 801185861 938233892 682526059 956517656 442317051 570485366 229883961 893945608 108647147 250011125 846482618 984733888 470577411 825603647 393580640 839944540 668008820 791290156 136361337 386439617 150651126 350278938 221676847 586935798 576320012 859782311 676593767 719128389 963157033 989588824 410936370 513192568 611462216 618485329 571582932 745604591 783892749 965759846 152828891 792951918 940147101 958851539 799930141 906645055 182346383 324816285 931464894 974690749 628888264 879313003 197103815 924078574 826340306 838261383 872358787 904584453 69913698 201441121 23048519 847106942 560189512 690870633 766420116 966019164 379312820 875711161 647540893 924276658 700152242 729907024 220534984 256716885 18441144 748278359 99102012 724857900 864221802 894397197 221948366 914399989 403949827 450962154 575256820 728245751 188999778 207842072 434925771 537135815 862539184 971555667 346022265 920088226 54539679 643871501 862575401 981449840 836290961 877754391 906527789 968296813 635101362 901867263 65771506 423595603 954702666 996658685 916241678 980976595 370294160 972968132 533132020 660699083 886179067 899375979 947610463 997600853 428894187 839050939 821008805 961603802 602994589 790075646 825889891 891434170 34273445 885977141 233375971 255116382 760467644 765932324 483254707 617549783 583622402 939153696 326908833 725663903 728157651 825546853 563882793 831658791 369985035 383003246 611705010 748475483 787245984 826436548 457810771 718350535 678699791 790651618 821969486 885105684 935239854 969017601 175042341 854574870 473407064 651600590 128200893 982096837 603754640 915575740 284777739 323019561 697438245 883401883 303405768 716816871 358548300 846532758 647094499 984107754 884018589 954018911 827530438 991399367 13193713 227907185 236480853 330343841 477632427 873492609 506528721 866772427 907052800 918140637 837314521 953813407 106062433 606467943 521557563 715809571 975719664 987999987 608067370 759663168 780405185 970760283 817906891 948420667 430628544 926130863 430196072 830618039 289183530 819125272 817067155 937367256 241811555 839407271 88464469 480948075 752722780 840437697 726451520 954467800 981800450 994903967 643183125 709053101 164539563 489421122 121205518 646362770 377201046 468756629 26958611 912240377 226997167 239083984 465968155 649309260 214663625 220067681 555378143 612968580 417275536 941562988 190576914 733174635 551968998 851081666 529639674 706603691 754046239 843842270 534403758 819663849 107891845 667239437 387376336 447781658 118865459 129937371 629478812 825739051 170160485 785823093 658116411 850308857 19997936 854858684 608338360 633287624 268903484 943132794 953875580 964778290 14428299 216549509 569174142 947547774 349242132 850513503 991442484 996404398 297841906 612761718 754299592 816345761 23071835 227279118 928462447 985879498 630101532 940195316 707853668 979291262 160704113 999876774 110966011 194520961 156421145 840882234 103202938 526283476 89925032 267822167 358808441 612014049 190296031 270611004 311623450 755594679 550350374 765844425 527726979 864705365 829954689 894404647 980353745 995894840 218936464 845812076 279312631 959939560 959497947 963813861 15111172 144055003 321527095 548008651 443823553 778543610 625616793 857162617 313357179 790025407 140735846 256178676 434242446 473863593 372745746 640645705 634176970 827996097 817833872 977302529 11778300 474759071 528260212 908288464 444114765 540712936 499714051 643617460 631947437 689401462 242304679 685739358 718811612 990437106 633243434 785742942 69325288 515363813 807830267 838775885 181306654 986910420 965316931 967619990 151175924 949510710 471514204 497374884 42436501 812685346 199974938 242478502 938934290 975623872 630455567 885363161 787082620 886399708 302748831 558118967 549888227 697222513 246163394 753817598 805359433 907543841 654055832 935336092 808286818 854896996 803717109 935841754 594779482 810629366 269165888 543612042 25968383 992050302 611702890 646170225 965597707 974583154 70141007 98016827 863204724 914973384 907749642 961865071 188547937 486019971 478083490 893799660 385675716 785576698 444963523 464869287 642362126 873604158 360408348 412496295 728688721 822240572 45389850 339400462 282589558 869769575 769857226 948219422 111114742 797519954 204516848 693629059 785440572 970453777 939917493 956329246 604959366 913237921 503092749 835080701 560717087 831446084 951641871 954667292 600729751 966229834 308420515 435247921 162543379 297899875 39980703 336704662 913373112 957374499 425397287 605486708 232011673 959917887 779858277 899315702 617889574 755759010 835398529 869712539 494008843 918319780 840353123 944990640 139858851 232662380 73625777 104906823 44743229 692561236 38596647 654155747 27017870 796865190 836916935 855097870 187182524 935665563 28913210 528142424 173560942 600934371 775324084 808621198 274214983 674140678 469172557 634492442 439153374 797482210 60923194 260700140 740311845 978849301 710075259 724579840 585314990 954834716 432570116 842201125 931411446 958721126 444318172 517585263 672530528 860838991 935472995 984767926 396843300 853487086 340273463 395401923 932035377 962734007 198836573 794191417 142728376 338820511 230394288 854452317 509657777 918685601 309823871 790678455 219637601 983205499 423623183 524559168 225387312 523794879 281808322 309565230 989361371 992435872 661334370 977720581 454918446 994728702 2814208 752598246 998380381 999038739 134606827 218684594 603200249 852277121 967297641 982572184 342136529 523575213 910677332 962801437 628689693 983808455 320957875 765252452 199319206 733754187 207312961 974736985 129412647 974633420 922625375 924545035 562824701 988174207 148625577 837859310 275092353 640893437 15939039 947709603 42297037 857469962 280713548 923473175 299244968 502700409 675671816 999709955 524909984 729618407 697481943 840778891 885411265 908582442 748414654 890938086 431587588 988443416 795747892 878929487 538610368 700005385 698702310 719419968 877824511 898061271 832249412 839919850 538890214 675994279 297415191 868729177 108734874 129045800 187308154 551560904 802969651 896062947 203259924 806941068 177139373 631429337 99819255 844153763 269588849 795308177 747524876 972329057 777125965 990415843 494968572 799535803 637510360 763630914 85256406 284161826 415838572 485864151 332710404 978641752 942203554 980192764 812756675 898950157 849776070 939607493 346985401 650561417 31945962 608576793 274043963 320789541 92975671 699588008 428426459 781759877 479591943 499715152 227620368 745374125 190719188 207132734 621291953 884969775 26928954 701760109 894765848 907047226 897948710 925522911 658257589 954694775 53493033 937777791 487118509 846951370 924448693 945422893 241907983 301495091 870340223 945811938 164336413 682963194 170531948 593154202 719895004 927413190 286406338 435338438 424731263 458528473 999685858 999832767 495111608 653151419 115448234 840379650 364124109 704377164 824865972 837667156 834906167 921640230 783775085 801398014 634775240 964832354 118271215 566043269 994039977 994887825 654005060 664774005 992706104 998493510 336028854 848138498 192182405 580277287 818839823 987920499 180596301 859723476 366458740 666960049 447660408 968782003 297708030 721498252 912001419 974296055 34915214 661390667 142648665 944667024 681491242 703530158 119973884 786010144 586868598 883953175 372833337 597172663 876694842 951322593 40408135 275844647 634452024 994255565 681399475 754768326 778246919 834593524 144948323 164545205 146280750 719139481 604180693 965504236 605427143 935448529 307584982 800530901 925874165 943624780 99004723 695355904 780843170 874145361 311879692 525858575 597506045 836956188 734760270 911371780 486495756 972490842 122596888 247671844 403927290 950943045 699239785 761490333 428265528 773599925 467548269 541929626 34708578 756562866 382925389 790967981 985130951 996141407 817233848 866492622 784368528 961672596 349044350 394468367 50890797 918685284 825858558 928830374 164044690 560893975 401165409 790670031 257023453 630315177 535085535 682685055 676499740 861709843 765813587 957928047 317138702 922628016 442387665 896893699 288630030 756184193 472027379 922458520 721634031 768422408 983798696 990153657 941542229 942607090 538205961 741191828 405500378 963171326 333350235 733702783 305202486 344533913 877558087 953463622 356647222 730046475 70895809 373576869 729737196 971287556 884892338 936280025 33357629 57626366 596882172 727736967 145436401 377318745 798577340 823876645 331945209 494552642 790907801 945166149 415381050 571580091 104240176 910226678 715411590 843572743 760391632 864400004 361600414 423331614 941860617 948143977 491919904 625699919 242443027 774251211 569834550 942720706 95550686 526830907 374125982 604515801 921793501 932619724 739799857 871368083 663062849 939588346 216112466 766580972 878829444 992339731 509270820 638584008 457541201 887925435 928881687 994576353 697723990 890310797 953645237 984455695 116351090 120379170 36600257 334608444 266921507 518734837 88085960 767162943 701607572 970788761 593462611 833395198 434952639 569267593 874423110 953803264 869150555 930410776 568133826 624664970 276592210 365417389 968568835 991745882 630857697 873119808 491756384 850449042 614391695 666406188 16894969 615308254 681517765 802286248 15788825 33061095 771034278 937371162 125086666 948516783 203789046 298609969 387251038 909059103 394087890 938094156 161193874 877772659 679257675 952093134 536617412 817541895 221264645 715549707 241815868 632676174 575443504 836189071 908550541 920201281 76857559 166860023 138372093 383434160 273612575 306714282 787574542 854518489 185552450 619101119 396700526 479691410 995444616 995838207 602658495 731208174 708808484 812869263 379788308 727952622 130312592 556830036 148153476 609356287 112989362 472777780 647483409 811407253 90706610 876993078 335448068 488052031 542740581 690134380 566245274 999046063 616492690 754469280 986142009 997114700 763416596 910117858 425239927 722102184 852436415 958205577 24827017 536578273 333273168 341781509 147477157 265827873 394177392 957914612 958919378 989178156 708377204 936495822 823166710 940630532 468891027 859591472 124048731 975519091 313753198 474284563 397557135 572801069 32406362 239318108 880321797 994885947 411461097 868015713 834222330 871592023 161129239 200154799 261760459 654864106 959147062 960350438 369600076 772246905 952896240 976391929 747127025 782120135 17266655 24681756 838568115 972410562 274753155 443131788 119984774 708641560 972911242 977320690 812991539 895422312 13301235 445362019 523118824 531230242 895311064 989196815 524584563 906693067 945805498 951557506 11446058 465227197 737763047 984385982 937181101 960039283 333188359 932371346 83703631 882779917 975575758 997026584 383969961 566961498 795848640 803173871 197104550 853688387 135032394 677171956 129767376 241965765 512892284 871754738 457893307 621809538 423857811 851519350 597054852 922073042 113269667 652517611 341916004 497180530 40489909 186042978 947091585 999295587 299795678 464194818 211959840 818287541 462917822 532295496 899630608 968654797 606089734 830449571 518565928 652301086 389693691 541563373 350523511 501359603 77231754 951592176 315410681 641434087 560157589 942090586 659388151 978395627 729006857 823756898 160494535 923197645 338700695 909811407 928958587 936528831 648405831 745363163 844850983 926700468 946038044 965905622 898273948 956551659 660792934 846501267 601139430 614508071 582520643 633005725 441354979 610112505 37920834 893195546 566734650 592668074 362235781 646911445 150128873 407635546 589170198 775966808 205685502 600716148 164565231 273735224 4020950 733501187 485942225 924893874 406635474 743776418 655978641 673166037 931180652 964733923 602264876 888348080 474678852 932328512 205973267 460314749 394441570 636606782 737867901 745467898 967242385 973502048 664069644 703725913 657852789 793557597 176895104 688769372 409011255 417301835 496463997 956871284 140104375 747780361 271015342 560815846 175800746 561162361 554072317 976127560 278555874 512213038 95933675 387530466 121041916 917950730 22991210 42212966 734556677 893991241 575008428 705615691 757395070 770667647 51106369 863989479 78724857 259257139 272522616 273095810 512037086 744822302 800442146 870178983 387779794 655716223 603613902 721691296 188559142 987695006 666400874 876630829 849628006 863456178 17513562 653798891 758022943 766884850 784010444 840952688 760919837 971985240 921253986 982991536 140523977 799299036 776841081 795036221 112828306 880493477 944933498 998947415 232960312 276465428 16702283 792466377 398248291 863516025 595136003 621551792 655691123 944971800 165497815 709182134 699707542 725240985 103625854 412457730 260666599 944860225 819308270 856260392 770803347 985653755 445536737 598678534 887506182 960619632 171241512 189916211 20982394 474367195 259043945 567752869 380339889 554649827 366438591 818894105 907866140 978971202 970158079 991324272 102062082 818594737 126940054 558908376 829484979 892699844 909359359 956307489 251117583 751690981 228437522 335879405 155800481 639306257 834402491 923161930 993371131 996685865 434100970 958404613 532907541 667208392 377857871 873968161 504966243 581378943 12022198 255462404 620780463 741901612 771957315 784152094 764563853 971485659 630113054 980680563 459980977 588440903 604227445 869188367 34230217 993848109 997157246 999242297 309946402 446159639 671839132 845655129 936874539 944829848 770230663 779738684 329271826 631552680 378357612 590376581 940818161 955529387 670253478 728587719 598125161 674062719 564817290 788210494 486485500 706492936 616524867 702679983 721242279 754270544 664563351 929145712 537555116 549366689 60899772 325648133 996240955 999205222 824722401 986780079 916599234 968341046 627301160 829823307 271902345 864496386 344978695 490918493 96132680 506716358 248508483 888004440 550541719 932008187 431200859 455048524 944286921 998885514 644890192 917492181 479272039 729236142 279167709 814861882 227849088 967790284 177723181 413286187 470417184 921079969 79692088 872061659 915669459 948860237 369397417 855142943 446327742 454848512 844731501 878533518 452218673 750002518 13231606 563725092 532994777 587890102 620591647 775508706 834108274 921836913 615800232 904270417 302159638 453376002 22471944 642763651 813262972 994140473 948472332 986144419 683353965 963675609 299032468 800577236 376175306 849361649 188371512 577135538 813408161 947093311 875908789 900202537 692477257 702872508 553957113 931829116 894364220 936705791 968904222 994281921 815370014 841732430 409906610 529245565 388664368 865047148 394098051 602488368 441014720 814571413 692659041 737483662 501464935 813277796 116261454 808507978 373370250 444156519 633079446 877426514 540847487 568028657 317213624 449759633 369638680 385481354 651652868 889989851 340044402 983447053 611325851 817850443 970968705 992168534 647609910 744505611 832423197 843141784 75714684 329089135 513425 582863941 317855229 972350348 523986047 879059465 350678075 710396614 100474004 664285771 299583972 466227070 368489914 875000299 545990199 882888456 975298265 990430105 50687655 255192991 655955197 863304062 524288855 961612097 803569819 937190139 339725534 655708399 591475508 998070214 962253503 975695960 19969513 550225197 880253461 984675990 685772403 730424578 276186444 957900015 329650216 462416100 820792075 934078751 252095778 801861911 727681562 735046834 924591961 952064903 314008400 607583556 785617545 955400485 182881465 261775227 539853319 587462179 501603661 779470087 907886439 937141639 7355128 723597446 998124234 999257353 977908033 986100064 337358815 433813457 632140838 817677214 110980492 932245902 665853065 909026326 812900402 979838902 299174025 491443900 348762728 939137809 652391611 693143515 887638186 961592355 729312645 787022742 959746959 986034917 780540893 908170539 48608651 475514827 390366301 492781006 240730939 925711066 414945743 651725097 316529487 873544108 590774481 936282374 465936386 692667656 463061907 785836209 416059444 416529504 705632796 792788411 245821273 502976880 629602794 909080438 507830282 974799210 172059155 217191770 652022797 790502395 724871898 946925339 513460606 703785303 272583716 761002005 334247041 616726687 648221476 820076351 968381383 988677616 401691106 532355207 899326784 920893992 432245908 856910751 830527323 843074472 131606669 772934743 8093244 618281311 102916183 579254638 156967081 733542916 563062609 801099064 9705587 377615115 216892926 645909540 196597021 787995752 379900734 767851574 372646645 808027843 50507051 321737865 12194676 938997317 858538907 906487923 556011517 646635511 605111551 663534494 537324592 769054519 348405496 938808010 372155413 885195380 4054237 638697012 930388327 944765768 523782903 580384259 24208686 278400544 941920424 962471028 377039721 863656445 872814074 932172425 723975953 757644595 15633129 803591563 30056021 503952008 430829742 974896510 74160910 473031907 6340576 701866021 852843693 876960839 675976671 681284193 355556580 963611690 20078586 853675926 297353107 947976908 266615485 389901810 455758489 795311124 301414602 832141085 867074226 991537698 368826600 728124396 382058421 587374514 597698817 720566897 679746475 742319427 688189815 960184960 812970630 905835427 417654560 488891876 188806273 374302552 728847505 867574702 167458416 830962653 14691300 24731619 746505139 827154502 429823478 907149987 998823832 999239377 986772050 989467588 853254643 987444069 14206157 259363427 961433310 964706057 296645775 559049286 418121195 846712683 980051794 984982206 644800753 668356573 668687597 762513806 582201319 584926844 623687016 909121563 789732997 796894636 604875644 895877475 493460048 906835013 751400690 818525367 243310432 867852671 735340738 919403487 971620100 984838731 27091438 654860242 867990245 932313064 644310240 832468265 392775563 881108658 602683353 833482174 296728270 723891131 840955297 918437238 695716526 905586702 593993964 876658073 546307510 823692805 480995675 901862325 55516414 656250600 7866329 397546721 563281796 725816761 398994477 918332507 737766170 977941557 309647143 380188546 548711722 672386693 169007091 986901335 746611850 906514497 955615261 979136728 824137569 991501600 756275080 819155393 122126436 952401702 839981637 943179822 805969598 812664905 625688571 733085491 750162291 986616186 557599060 974786505 253793426 584394310 789788457 965849161 755661699 845439384 604246277 664667678 472285012 704987334 652456340 931447015 812536281 819145744 948382725 981604529 103148552 771237935 447289057 862423563 566642003 714486173 67673484 710284088 611519851 664448350 746022352 798728193 232360101 947245425 740308365 960231903 988064383 988826462 766598404 889453766 37575627 228908210 307710284 699693406 942149425 947441887 140853071 186681681 408941563 417066738 899671917 942017404 533015824 958531871 766202156 809752890 379477090 831503675 347800867 605806200 176582360 257475615 810321571 816179488 174400360 461242820 77661520 765753125 954950917 985035518 444401686 586698505 964987606 990576581 857438986 939839200 379547727 881969825 235804582 649724993 277796066 908038116 276949463 406507557 395123790 404566636 154770584 839588042 701319835 994990130 216542603 779848575 234622568 639084530 104625810 564706255 580671943 857339148 780053411 916316295 262077832 862310952 452704853 454163210 189673375 980229216 696970944 962604016 12155225 289748817 136204602 296670521 415635628 521043499 731478316 806476757 726872924 966763971 614166436 909388429 594235788 736180995 387724260 974416637 834881923 899687172 45793265 796937382 925756239 961069724 776661307 815998698 674354837 959611968 644621269 975985951 357254918 980667864 804764787 898417053 708325311 939795997 930098390 972793456 519921633 822206898 417877090 916552301 370162454 883714297 573456716 600296776 554020333 709395383 612664247 637763186 790358333 960016324 109503452 794847851 669126660 996940305 738217904 964733586 420379338 702503479 906226819 978790248 473003850 957633474 361602096 923285515 569050958 956657126 312204647 470598257 40657650 470132827 828191950 892742513 290331878 483084322 899038446 983118866 636316175 943869298 479477797 722006819 846195697 850856043 306675639 570938414 697212154 932906274 336496688 428782018 672727884 674925598 972885753 987203056 335505480 983931871 469945398 491427853 728241082 730011968 438350027 538153115 271925522 372646278 259541216 621265423 834676418 900104817 470707259 886219378 500790648 545600081 150573845 197013719 446673369 588149865 19928877 413040809 187840422 240182078 944927629 991407761 600176123 948279255 996209658 996540927 607147246 893354851 745166771 841084701 547625807 733305902 906915400 993206084 211310979 455476966 331983816 959057435 504261203 532487299 897874427 966785508 195810901 387072574 665104053 981503732 18801582 274304560 556960087 579561068 349809230 767944396 357615317 839941761 729838168 952095971 744465815 949692687 332692638 454266415 441906202 882277030 721049110 810636280 206917952 501154103 846373034 923494494 835944012 908222847 45309452 132551176 961283301 974493823 858136985 965983106 831546151 987988889 345653517 719616967 278492237 324231589 307271668 415084248 246040888 680556137 376431718 481266313 833298573 933500173 393094392 411413518 417821548 664739131 812883247 905804813 193239852 838468137 948769678 999552871 785538245 971372855 465525454 671046913 263541675 269911625 876541940 900857272 641522587 894383412 324780429 507854061 722903515 787315193 593783129 931399503 165650298 225885409 756023247 770342233 925787545 980097094 698114566 857061356 348852553 499916173 54903496 429831717 955715323 973579943 259916147 319696180 534478706 950989818 360081153 832800905 119051280 967255823 267375117 871879621 77652159 146244185 1583383 848061170 404458041 428727076 526643912 919330481 409106389 618110209 187060872 513517528 589345095 702150885 592571261 940281648 348365150 373974438 78626409 926461850 738623605 967999937 937372061 941169907 991658757 991760406 448229996 899958313 686508113 821008252 326786593 821855878 678409794 992206768 768151200 973180145 531071428 546148900 411058072 819273178 768682516 966058945 959069486 965757468 903183524 971519640 276196379 882929792 938321364 968117625 72921359 141943142 788864649 956996782 232794698 659841943 125874766 266660325 945222101 955037999 110977632 165381918 287266336 737338442 350909706 625888283 461524609 737883655 104893394 750416226 438540658 682690939 907263431 912284860 716944238 874603981 716811722 719341310 869143109 900799757 916542807 968166929 526549875 687820570 155145994 444894537 529770134 899158349 953518556 959363621 265669252 456432388 830517273 843907927 742677214 967067959 548429001 665962029 116177549 639341156 872265041 903369834 877846336 891367908 370179936 857611932 911980739 932780913 125149719 556966090 532112159 966504606 868338899 901805031 618094993 849031450 173980048 309522459 342578423 688679701 961201395 973003453 628821431 944709058 158058426 547704884 435722632 688729007 892895233 986376143 853586598 893307059 492199194 566316819 468176906 530430502 443638674 668900318 101172096 569015553 412136297 556622650 863497000 925583591 285307451 869074845 467821264 904815727 20925096 872053991 950630257 979751681 649155668 750046167 467571445 999420116 925715339 966181475 63939428 64832148 366476077 976874052 666339388 884553452 47085717 833376367 467267933 658566506 277650190 529532440 814430148 835760503 283582172 534812143 391834332 601958013 391917467 619923193 981510399 987396768 137916257 546702921 669950557 898000216 446532679 876563521 106905824 165304859 272184097 683511922 941316024 994300823 911249302 947090273 241437086 242388752 685568732 836885309 433279203 687650180 934468195 977444990 368631391 869184322 267002694 935270489 598978175 884515121 735930224 759890562 542366550 930207989 894800189 976759993 383435036 826259943 785844227 966010751 343904285 506915876 960965149 964311766 310129153 825252387 703394143 862921266 378312144 893425612 406652132 973961760 549876550 720964242 492956433 551945066 854094487 932845532 878411379 901017508 571773624 948561242 220184905 719275172 410850284 987297620 977270023 996317405 975512637 986235188 723556775 807611844 31852978 269535639 61952835 140862228 653276007 698266943 500120130 917236095 958362976 986335661 6250212 585406684 437606684 604440446 678415396 955173822 558176211 955332123 497696467 929226123 938058451 949401996 452823956 904234343 48570708 531247046 120225890 978254995 570013417 627862490 207206739 369136078 911278646 995592286 233067606 490389445 209500837 822541219 653995101 782970646 916863183 924287768 219454711 373704528 562277613 590721641 274419725 555195377 242661101 543366105 203074179 637667810 681468792 926941219 96007094 886772996 793149796 914261970 165882348 489365908 359848641 826934226 115592296 116457429 105621134 850245331 623760761 760990301 695380314 784150565 220828545 374087664 92631761 320832283 967818472 987213416 29452161 597353604 11328331 748108806 280853985 438663904 143110061 271546684 214106958 931396932 519457811 966403174 662281477 989208641 2890156 560228689 528921322 733904528 568158423 714199600 986325954 994995293 548527188 818552262 151730584 863615938 243916115 516339331 593977331 822959231 323574691 472031231 540821992 679574696 278252670 885208147 969865937 980896029 687937171 839653229 182930008 736485251 309331498 585344786 791617000 877631301 632280177 839627645 361222461 433948617 730512255 828983559 742030223 888748166 787293779 939771743 545160505 810592154 631893853 875468109 94291114 367477433 903281425 984165241 396027327 729180501 310017504 481974163 590608710 803782414 890860492 963438554 722531208 942755585 886134806 996227687 318565554 863105565 8539932 575476370 311537618 351811563 782057304 952020283 831877567 996107021 899047965 954396718 634224731 689849312 377893400 379115396 515242313 943681204 765735392 807197419 3411710 24247073 838259395 903011979 829240217 831861472 221524609 321290426 699283530 976069302 435927834 634851788 425943229 873409424 851482319 870579802 333888907 876417153 127509896 561582372 402181343 656288635 502989757 642994891 443061955 518381012 865451274 971161778 443166714 695368588 562165502 854033548 625758696 723035569 192201723 682695262 229093680 891306478 468267362 721930705 602350789 792929094 149168814 838139585 561391227 811719933 175113160 842870432 285171732 777635197 782333028 875157122 323432152 988761505 579392654 803877977 973511027 976356280 934939194 979299131 300151676 521724151 86923531 609413615 16574535 62999220 911876893 928120941 222288907 916871870 922174930 996863116 437426141 971325921 142100855 515487490 153345873 992382174 912863523 913174856 338743180 535604259 620637595 924533406 780747034 930764510 267793524 998297542 203352842 813644606 107864236 752840418 815192628 954596730 583732098 790469853 965221326 983980403 704326520 775536251 264964852 882510990 655063355 765391396 569027381 947007524 148296962 706668283 147808684 994685880 807631790 927159210 406150076 529754977 337068344 773786449 119000654 353302403 387684309 842653502 497124669 898810620 601927060 702437521 484237832 959126028 440795057 845798297 608043023 874179075 413289457 459900999 547746782 839901229 95353827 552309870 609525553 742961410 397621528 846111139 242953191 299469413 307434580 392634509 981044133 985791617 376508780 994787453 412335980 499623535 968148572 996616600 350684035 399406345 123372730 283808976 798184307 973876828 268714822 888167695 632598045 982311864 763996514 856428579 287823125 893089700 647241726 895034034 449772907 630956141 592624331 856316645 152440230 411259872 311399400 655558800 496168570 670531821 941595464 994364212 685647986 734881679 76605744 538641992 566219387 717362662 525996256 551433870 649463855 704173327 858477590 899333013 969434425 987984328 542767844 618866401 836671824 981626471 642815557 942013672 178300343 965612841 742489299 896199420 208420110 890795236 802030892 931551810 771684830 890762822 257208151 393713150 245164961 270054111 955500083 965186157 711600963 913839154 610323775 977930585 343526126 459102863 658474161 745653238 831221704 995172896 560471730 662953696 801942446 897943990 260662623 742502851 76098473 700218876 899762980 971252059 94554598 204592437 772966890 797523841 423368157 897443944 99328642 527418647 745997340 986804826 637638754 658766334 785919432 977517573 335510200 987318486 509623328 948954208 594726466 632189142 331250527 398075522 627026225 845275396 375790992 979275747 34402367 68111958 684441734 968281334 172996885 213306784 821966434 904798539 666270473 853825394 889910303 901718259 498800563 773971459 210052211 817153039 336594348 710292042 162113798 372654657 486001243 532181885 934553888 966401358 72503808 985300236 520245632 888180180 248701345 394009954 268299333 729741675 582336327 903655891 360711404 845149610 45503928 912662036 962843069 982734764 906593329 975914994 935835566 944538527 60731226 414397441 895491078 930092299 686495712 951968347 349870143 979556000 334321078 442482033 529282032 888886106 123182428 569139805 856850587 914498091 868602002 993047151 305562740 881930346 923424333 942804300 710486056 820359120 740927131 784437370 217060830 592304643 665494393 848975229 949012404 992378843 393982143 697467898 888413877 935665196 99116499 772990217 385129123 947130664 779585855 911154714 593623770 926680794 179474690 899656806 577623264 707893039 391271474 950894870 45814152 356861236 400464754 555478181 659641558 701056181 946712328 995609490 381888813 533844607 296529144 453485380 42443802 137217131 357125178 365338188 694828817 817045621 169565631 895713781 241123548 573804908 597183011 815052647 348240577 708111113 294757759 356027478 485568650 756375333 797626927 850070518 554446597 812772213 996923932 998232689 987444303 996361287 157009022 870739080 792587110 994820067 510732424 949364522 189387997 935184994 895244854 897122323 811791340 827304515 584567800 715119895 891039139 950546350 162520722 388064926 643948885 667563679 371411551 744343834 902423222 968576764 131882688 503623986 796779355 884774103 841642426 874945556 995096439 995689609 252360669 660663667 244372656 482163729 931883595 948227124 916635566 965368242 897521058 942868904 316983526 789815152 135008703 279499257 457643649 557330588 603207207 954666494 371602536 459501843 829377041 898025753 575495708 610098244 162919508 265818908 65298950 876366962 84031087 126948355 669168513 825863532 654453150 908990206 511533658 539501781 895429470 915605145 99318042 133673057 566292551 962824514 69006056 145942621 589788608 972991403 507356211 578499222 407434275 767631327 772822794 785219021 912026748 981383368 480678087 895525979 454010662 743015816 588660554 897869005 51788899 815640663 910837995 976885480 191582520 457373193 477736443 861752555 425179770 533283873 37161985 87440097 744501367 960452067 793615864 865835729 274822472 625500063 955482077 956097374 309452665 371343553 534039823 916285967 554400490 938719380 794632383 849048934 883756861 980256584 620018599 629227640 33319209 686784486 62452735 882172488 711100861 985060519 928894650 972253184 915608079 929468905 135133180 837677836 613115844 702736352 383959181 720395759 898945159 988834710 940358748 993580824 627471436 944965354 169732200 310565260 853667379 880323950 503134058 723381061 731233426 900837525 650286137 873950482 613241046 702768098 252970428 416367071 763835763 904785231 663854352 741248308 74253434 196898735 179817842 591694068 791477938 921861576 842470592 980304162 532504850 907593750 113889020 559672559 265072706 492262142 102186717 509175903 218778917 527574235 409937302 899273677 478983537 981743535 444059858 939344390 620379648 769948623 226447247 373011691 522579988 690314719 807925521 962237210 136353447 697290304 387184458 792007207 172498898 196517316 703722370 724410872 95362750 318878759 265438252 789813181 467197262 511558459 303438362 626378445 910034707 926848563 319390575 940336140 861479569 873787928 618689856 843007076 542689282 737202190 681305648 949516213 550266382 703985518 266665862 852978791 326192782 510307791 946972116 966609082 324258899 959291609 85596933 140340084 753345866 844463629 750690947 901630752 966617505 986594295 614758180 989844754 982244742 992053973 820630364 843044086 625883992 712464659 573814043 937041711 287414734 402969416 283608428 357566460 49316708 916810863 884817753 992287547 381805110 695718015 871564608 922447832 648902587 781227857 418590527 555183306 702008385 852462381 145121001 484167861 836197804 989487744 27269042 550018415 833321215 971522294 929008301 954180720 360606218 957819484 297874170 903775095 72851309 78291816 820617819 960095963 916455869 928753138 228423192 286899674 582446224 887657398 194638699 422647093 192515506 772343751 245788626 664079022 409670587 518136700 311908810 357530567 565295127 624496829 628849826 997218193 472250544 947881029 716556975 831310730 475201693 965953372 488624725 910645453 226982326 492720390 261477179 620028931 262071079 678924136 533979097 919489396 312190881 876506069 369650119 516612739 897192747 985157076 318290682 940788585 245943539 739205022 364928492 454669691 252638230 505864291 924634292 932600812 65220354 924979311 441390246 699445445 785709951 795826053 769950410 884067978 985746037 993497919 192596728 525958784 781159345 981661629 627544201 886125279 610752316 784081992 812756738 985386081 844320228 958813781 189712947 597424073 721135303 880412027 644400517 885407308 387106499 511632800 32108348 252858922 10948519 826848778 324825034 792011590 398483993 981768485 646450257 972619131 774371894 981729912 47010379 678446927 158168851 595984995 992641242 994281549 666627138 795979027 181797716 410363780 186973368 730875245 814689723 968588099 808477278 812030563 48598193 209774859 473987475 630715635 742249519 872970486 858962333 980823386 155790260 895518179 528686737 714467915 172086151 251267977 463503550 687631975 495591911 764854083 816926623 968917023 185244567 640624700 308544191 317549866 962870745 969772921 184490148 305298391 24888309 114384700 857239123 935698994 227200267 689809018 856233929 909233269 948443412 951994823 339536377 664396979 537402181 879757443 734732793 779553660 714424999 820277568 610491283 667049330 573262869 740372401 396063593 594107798 809275242 998212373 266192930 702066248 197211607 699861974 899159019 900098189 856923570 957307530 705334175 707371267 420984518 619825869 587519952 717299223 927652925 998949076 607295347 644641125 964982308 995541004 179993073 814792893 959307488 979809863 10461941 596976998 464651248 912645414 369560067 772214588 149239375 735784468 785806720 936324336 971665817 991245566 673694657 681591176 793662253 991014623 51861312 158961682 360211443 488475397 922873780 928554556 580644292 844056772 957459132 985092478 445918009 942151039 229364433 545008444 473469556 645160269 610407671 747357794 379801506 634332909 304695085 503010141 109515403 797431699 1739577 649393826 65713001 581390726 633668162 909467300 794438609 937707151 740552404 925365610 652143711 767103714 859220846 892542820 983044311 989661533 583856900 632478145 895849629 987811108 458502118 943933580 539182653 586694871 93770928 483274942 608581240 629402902 467107302 998751308 542237546 651195869 184704811 829321349 862022064 981122331 972421412 980211915 942337331 973116175 433583006 715544863 50024794 323690337 790212201 996201663 432585561 556010107 528043750 541973527 612844816 821690912 126513104 669708221 777077262 881990091 390586003 562842695 528088854 949322446 237840846 631791110 394288533 488508125 787164508 900528750 907373227 970957061 277081051 759761172 286908085 923301171 169068274 816272890 133885816 151854020 33786081 264844798 794237223 806224254 622912802 840721014 171166876 230614832 511251089 604770349 416182551 533344768 410836292 618635712 703406107 805787659 752001495 972125367 727062484 985873727 478523663 484956938 636115596 641051730 871437127 932114757 326902699 483899854 46745646 886378877 189862573 751372206 794491865 829585431 478127253 713898764 760963086 939777066 989169205 995746487 461744006 929441551 481544011 764999563 239548112 771846662 286744166 970493751 594070034 903042826 399831906 703428904 394486074 845468997 508493227 559839216 871858982 914298867 943665640 944559482 130355444 971806469 345516736 497837297 468595008 926208693 892205940 949773549 629228290 678881756 825890019 948618158 636519551 923301533 302365787 330068018 855279012 975647254 814616135 896125269 242042841 788210652 364121455 577283995 487135619 767766856 667012278 970329004 800607564 850498476 341345892 505781869 189849411 924670319 553076640 872893829 173926353 230630144 783706028 941153685 414593888 442285277 839914487 980328761 373189729 890778783 606166438 622764435 551687605 789920765 613153823 975747463 530317531 687840978 685946219 895803359 813131430 917565672 941510464 971578825 875451621 924200346 302645483 880138364 142335460 267166360 30842322 368456745 558399948 635244041 382494837 839389713 453284720 781281048 320624624 659781303 999803590 999881158 522491144 899499909 905539327 946688834 220120525 978540499 187069971 957010167 784718085 822187529 296598712 838182397 358820680 409328869 52017335 917086630 18980423 827145406 919699773 953603087 645394629 870375888 205878510 707380002 188130511 236106101 534990964 602408123 99205622 568271670 517556675 915565281 552100753 674459928 574858378 833793394 414731078 461327498 871222173 895493533 981313571 991754466 9761265 616565951 794487474 979586074 300885403 911979442 518944532 690355068 794208087 923093950 721735722 895171288 845838322 896270540 941481308 959653386 631180589 856219506 502135722 861976044 145265676 775595296 857869528 987041706 372017315 475157775 218165772 796941373 187816986 678381000 408769721 868487085 330620031 982872890 721060331 979318257 794179162 945774809 911382314 925257960 150307367 797928833 614132311 846032831 858607737 950865982 691338584 875819423 971061055 992328520 727184763 739324954 428593796 590264012 436611789 954927018 647371764 801127240 292502010 628323823 539588783 907461012 730034794 823254704 230193074 854375299 612216931 941603752 280331778 538728254 875114476 994872175 216510096 602320100 991411451 996815050 462933147 780840112 995577385 998222445 589461493 872123749 364682631 778296314 736462801 980449563 25611204 76055959 896479943 907625983 90908266 529742763 984643015 988837088 435318693 842311311 366031335 378714991 686589312 934820906 986687750 998785847 746567240 990800923 920677702 956266577 991970490 996565397 999498298 999786776 115138423 228726839 790981127 987676609 25367865 292417320 766049961 998573607 261673218 554185165 925774500 951547753 96351514 327978778 731392993 838925564 779037125 898567684 836010082 845032079 2953764 839535256 295979770 343304747 884514079 916592027 149607138 848596996 436739591 707160898 993640262 999757016 768476953 888546926 189311750 261108309 985048016 988599237 172057335 517194087 993863059 995374272 904747513 960094836 643968346 788992804 303175698 657521512 203398766 853665773 937041286 983071024 297705981 728629180 25705146 682018017 578413432 627854557 892454400 986722524 874895740 893372937 85293400 568428255 461369226 501956584 444212547 888324526 754113116 872607225 120099285 754201026 671819460 888267851 453256395 868017928 730047487 933008947 280177204 592550436 766110965 834612519 460649684 920264900 677843820 736188277 512201883 721513202 996924188 998006268 89930201 729303190 843713601 934064101 567074763 853304956 341603854 952312946 191875179 532701083 523763554 669224955 554832983 781958161 995234793 997400899 649784602 858701858 325973873 812942976 693411862 723974562 490315886 662666257 160086273 451896409 144724252 610638149 496686178 496977264 344020588 893715705 279175103 534568965 105781392 621816544 181217766 879383495 555960398 629116482 652346582 810509526 152117381 217067956 7515160 709432360 311279095 440118196 143624101 890242736 760365722 861509722 263496090 640809124 543094012 880020836 367657665 951493302 396701491 534834017 614689770 992043343 138916070 275481669 162241372 379152047 51665420 316908858 821084862 904087673 762582698 831534384 121722140 182635284 240403982 695561171 66025608 98333354 268809092 932668816 498662824 530813589 234451392 962513481 724439258 788263846 735439640 834948486 607454889 663459933 320538842 755946058 543427662 669687251 891136936 991829129 442425997 811759258 686319113 889507796 542760085 910499243 330668 411458530 698711768 720157443 294466169 543595033 490747151 861815437 26926983 569854140 929090766 949673310 138766391 685820268 251233515 259394275 584708144 974987331 714524994 978345934 598126472 726508443 438653279 814588497 246521308 566619397 9967013 22039673 263412984 274131137 437126602 784537273 985962198 992056859 599495447 781588309 411608745 477834753 59311754 824998330 194286927 410273835 133674665 605688935 340914097 868956486 731017695 902052658 483913408 701038411 463243354 580193743 228204190 330487807 586884512 679114254 871010416 872725801 279902314 800488682 614963539 906457973 222862980 767167242 722204380 728657773 25565763 549496795 959509215 968695534 313454663 760567711 790671764 876012176 724022440 747498664 583440962 776186479 638283872 898248110 761571430 891027573 297869357 530969699 861197666 941792923 345430690 480326043 797561439 859528110 943973521 991176996 172468214 748456308 580667135 684289919 323184874 933052201 705207839 745377260 423164279 961297436 617115261 834713417 163731953 534095065 493532820 685243056 505366229 523190197 840787908 996522010 775566385 905090138 816241412 836496696 827718872 995290890 369440589 445767318 113998880 369559318 461820176 463096663 532537277 898118386 768404286 999609700 914721537 934477232 397936439 430856943 495885753 659050394 32159442 198508828 98666668 453236008 617049191 893727450 490563100 499366619 980120466 998684083 775001241 784766011 143484701 933889764 604160913 976994959 449098008 518608243 143170195 264921426 415865874 598792920 437075225 962468499 643882862 755894875 472065476 555706691 746478814 893605926 239778477 475873005 792757466 943727300 729446769 813370277 198502218 605616810 792743160 886955896 258852256 281424802 250607622 490419507 484243057 979900629 690052090 869811946 812209398 993149353 610609566 680109048 668021060 800438071 370072647 680223526 143448310 147743860 790227380 927468360 318324521 802601793 740698702 950038659 251709661 611873354 940082341 941325682 613730291 662198505 140864865 525866562 833586965 935512261 633889609 917003015 987086567 991990269 310533716 539809162 479107452 969535220 422192378 907963391 706834491 722642744 591824030 769569959 392171886 472999596 926750455 988866244 944161438 970582998 918494135 938591270 730329969 813271985 657217913 977696757 327964309 629843498 735123930 779612529 162060987 899190792 307462911 598766319 483370658 750612291 994623340 994802105 851538271 928950889 167887232 790683887 867188952 944944254 369733540 675668580 284455484 995615751 244827819 848150823 616389510 868985758 263620251 931226708 44229773 751839210 324316486 667582067 9379156 273256666 530891029 671263096 115008495 948975690 377751276 947059028 884633644 959327946 643346908 750851167 483696833 640189956 292305005 936839983 782320244 992491516 337196567 449902455 129917424 163500890 756482619 885958036 148757887 762432018 36349294 241495133 365309118 659180746 569784365 813443207 403172180 726411747 317612287 475555434 691117591 763361794 774453050 957817396 510342011 622746495 40430714 245082136 807373648 914324691 11887491 792511840 376325 332723493 578237015 665017896 913414496 928700929 79840160 998688105 293821008 412451512 214889673 392365906 681627922 681895141 993298954 999812294 210164702 606932052 460165253 717678845 606686381 702764057 262746048 859884385 302187076 984721083 252203086 539135864 25240285 230532575 312297322 662473156 982556355 995742708 22281512 872866965 330802518 669288120 799857716 864294379 488630787 913269808 622282379 760708885 911561544 958092181 534760296 779617298 738067286 875781980 989980476 991251702 805693682 984457364 862218292 888509131 737199196 997710025 225745935 887858420 538523026 734187840 205647670 402377957 541934577 682909002 883418258 928699113 705593265 909524519 115094196 881745125 122375758 822818376 964656797 995664999 5497149 516632562 540894081 544554860 563709843 891257521 448964186 973721209 479228453 860722154 286110841 544662312 641111571 937052424 149372784 646390420 507271726 764170405 976919621 997376064 145254705 290050811 321185776 345029644 401759945 903552441 683075036 818274153 344666114 564020009 275144895 758710735 593116341 710095444 627430899 967447482 772912395 817235159 595472381 832831580 246958301 968020151 125040738 872216233 43521506 952877858 879376283 943797666 329220277 473283173 800553918 895207583 52973147 215321280 481707930 550020785 832138797 862733199 630017732 720983191 719850423 997545029 568022554 671531113 682155510 747492747 442382122 870365522 548066793 769427964 207747828 862719605 253788764 413767574 995455067 995669781 378358140 676809471 508996648 553095618 265390209 740188343 47102285 166629750 618126943 931978648 67871334 880521594 705076460 854734792 81949824 112754419 479244746 970021362 767182390 780128979 252182084 497055219 173501915 528579092 940003012 959178339 829080411 983105392 29772571 266479129 689866215 840922270 12938980 958429549 986227477 990205456 486570681 870173080 159142419 286260770 360041356 449703425 411363451 673925686 642398474 744322237 46701602 244823474 747866473 901548524 14039819 961222621 164093972 944461609 711336755 784324593 656341349 661873549 29542262 249703085 799180018 969543333 975070739 998033660 853062779 879600876 79738117 860934245 750682764 928923569 826206367 871649466 671455004 764193879 470140788 780222829 994341565 995830645 533167211 717861458 686559766 854828066 304217724 322270488 69462607 958148806 360823851 924426012 126029126 341992961 917020997 949466126 724030738 724810724 838153895 950669415 887331032 931958919 193397964 878519726 765708634 935626648 563383623 794272578 451704700 724715144 330931308 796568680 233727700 746243146 972179751 995526729 255303912 698968938 184788524 396440583 188716356 605307181 363135369 584371038 525375586 867081574 493961241 587181524 938195588 981608632 855439465 973411584 347673894 932977544 359832421 455606920 112114856 966224079 873230501 886388614 369049026 453138643 514075709 856724349 694147997 924751035 331627008 384141522 782792003 974335370 481429015 816577749 309135185 923987382 76225266 980140559 8609731 34807807 929908390 989413678 302719706 680499935 389969551 786759061 948591389 979531454 416136661 454915383 128910683 379538549 575073641 615439896 714148174 729368879 890984192 946146837 15589002 16528880 596375753 981003094 256810005 526479700 117948267 429124541 26874393 421591746 991710147 998625827 734556186 926034478 683191264 767951142 558718019 643143569 620911435 717587267 899792254 994877416 810714307 949738043 739506875 755145344 381437241 833294622 913507952 987760830 148487193 958131139 480462134 569500792 131933209 840766996 999698040 999698750 523683889 831327833 735577078 995717682 861532553 920380175 584133129 704628497 898128381 976177131 376022261 940086280 338335807 404500024 741489017 833200894 292717005 498655137 90961297 264999685 566747930 991988009 356516302 505193354 349101649 400994815 915693587 998742500 467746883 922012010 775060513 821556547 750399533 783226265 515613608 701474746 333944153 336833061 585926174 634628803 640972387 671832050 708146001 731512123 361565909 636893800 798326486 857486993 955976490 962550913 201806149 380301823 60351521 276775012 10102094 740596610 813144214 843632738 771260212 931325266 520330159 841575142 764991509 835919299 766524540 804542773 247539714 674773104 515138160 688736649 171547340 704419232 352847292 592249044 662059438 802641137 682358457 975987212 178890071 823024046 551234037 609599401 919195487 961895282 414274549 797739794 501282762 678372834 918709024 958428069 243019461 320105017 627385814 667054326 737418422 839402119 391798737 492227816 529932076 688636673 176845141 346861042 101800254 475709722 585475045 696082279 523570061 808168854 460397754 598429395 477167581 842087928 95738351 137933126 356437026 721896252 453217786 471525034 939062701 970933900 836881735 877816562 745245654 867272780 791191394 980442621 222582773 441518387 80406979 226869108 83713814 196313026 988423350 995009977 115791830 330143207 123311619 294050243 537647 425289328 552324205 827887979 913105954 967496656 892482054 988021981 833793846 870989550 76066257 608969837 63453860 548309400 352229704 418791243 41090256 100708164 432241075 946306420 277865012 891863848 893885591 963597261 964040161 993082912 541760502 599747777 259075974 818119669 281439848 896094385 592316778 987987408 462166118 699269082 209470609 300977037 601251987 973524569 348905000 365031662 15735444 949199165 265430432 900631838 723568694 852294563 467948095 578587153 315285771 365926303 943792366 987067708 258093429 444980732 76870107 647053735 460984946 643096416 175053094 930133956 381129741 711592867 172148802 574208180 485078717 972001859 438800336 809658900 942767116 944900960 183382545 186317087 321781070 349307195 371699950 572340171 153947450 194786205 36802602 278885808 694904873 937629639 847503784 872373413 105548135 732003411 204670384 371328466 155361898 519506413 627762587 890325197 666471391 727316117 386156917 533294479 530696382 834038952 668406033 925733912 846346276 931201484 675203059 681466178 298306237 661214093 809706739 852600576 486576688 797184936 337927320 370064638 798241470 976711017 614117107 859725985 368407198 533124331 580976242 590662838 702542167 933059200 833750248 987902243 664060569 982648607 397138043 549739524 190137606 863157328 597851848 764757724 116883828 154678087 222321140 352945327 438993829 767278124 961209083 976804138 298889415 809104410 340666898 789881145 106417562 816057562 388503916 430339947 516775532 909781227 482211782 948732085 975895671 987582650 202162272 284118559 992001133 995355454 367989276 824793018 370711332 466644171 972551945 988750097 753568329 811304865 546028536 756429473 283131707 969335028 654455776 836570010 516168865 800524232 476662454 601429810 561820678 809398229 888494426 931275025 95516885 102933924 388567861 975144985 518252726 713741768 721271570 996744157 137715275 408722077 217056400 711254323 211727970 811683360 57670862 121027741 121032816 860843595 745047459 945926914 263050425 895724198 641986581 723624822 67671175 253199499 768773907 843446630 550059407 941665385 757671052 995168422 879171093 997608042 601235094 992045496 850574811 858688058 952633694 964509771 674425017 881048625 245714268 892670967 906852684 933474283 908210176 990443882 72141501 345258728 601105833 836705986 949374642 992523498 923460822 981360028 339176875 801892726 854232161 961099100 129553602 681401952 16996497 653490041 958493323 992350766 97585278 218950425 925173655 950874519 357886420 650262274 435520240 585189421 912457894 925199680 55856363 549783092 873215457 917103529 718000499 742282114 755986930 952644538 597489799 888704168 55159723 239663234 405659906 620849074 241895066 773476276 718346371 958475177 228785525 377867694 687259431 734957501 697772603 793311639 609196817 938281617 810614443 985869036 177551487 562096757 811855753 843298109 664933047 828836092 594774210 963888329 989891192 996005845 547771039 741601047 676519822 929434215 768381769 808480130 637243313 925875345 664773727 775731398 335215759 594500446 881058290 913054863 905875971 972916873 293696551 736510344 116649113 255606447 712084416 737340159 107461099 293356893 546043723 973318914 814434241 879172127 472330631 726221269 27956109 995366303 576241618 930936910 116049108 381608170 118330421 844009512 224477709 314258686 265961907 383877164 244385319 325499843 155303372 778818831 177965775 504531381 671727753 736566700 673417978 861130967 968802088 992317439 943977380 986122285 853900008 955669394 449835706 614681983 270642028 875000481 712871118 985115291 413092725 553821609 957652696 975197819 628722102 890846426 593595712 937821499 890258682 965796431 86663037 755406427 87276508 488620332 921134134 956712730 410660313 719940293 765218430 857156012 18548929 510855099 419824427 990108981 59877861 660921452 45015572 417371360 155618850 770031147 881964093 883859954 299250520 470287806 297322820 568094867 302183134 685143953 559341409 837455538 776153147 975501672 683129195 842892683 772820033 922678616 242123773 801494572 146787495 371842732 301175464 815999403 577042195 922357458 983620922 989484022 596003872 828081923 20992928 770966751 546803455 886564197 250497462 311583766 325318676 693563989 246891482 956906454 998830053 998971903 996430780 997757638 897476921 978429460 189840849 493462241 153568441 168739823 472028904 954115034 722678194 829493172 265492277 867448943 872394255 878249925 611154005 825298434 961277765 988385732 887396955 941310929 119005419 137035109 781924392 952708656 741697912 859461087 388937392 909103982 907843610 956514239 41268111 809018656 513335241 753130165 748150484 871282211 817136364 984556433 181823295 514772184 325800578 934633129 394897463 420380769 550375262 591175018 550985708 560689100 286221809 500308862 322811389 501220728 433843429 990075922 483378092 535404219 385580881 559645732 793664295 945869639 708342253 965482691 575082431 961780137 945119411 984545904 559092793 967460987 317834906 585337174 574453275 615548119 968860332 997298106 975952843 986336390 697048593 767435709 719323055 793701794 520055710 545451100 107239378 731179866 492692978 764096462 16116733 94807976 200164792 346622118 468008916 559975018 67928184 684997938 870036472 963252768 521015280 621450802 786906684 974256753 71135049 396853733 892956005 986013375 670106402 968128599 220820535 424950462 256679938 890603957 803109436 842894804 215534091 896515293 550805126 700790980 803676173 883013769 934125898 940968554 436116092 869372034 295412795 368233176 620703239 965594846 238249361 659767772 728236173 839311032 949300658 969114084 369702595 845546817 653517119 854344597 777505688 930954556 850562345 937393999 511374943 696295473 786552563 958852644 424842313 982246094 369492470 984947231 869029719 948867703 546500686 607958052 290201394 704049090 808082585 981844229 715972564 729626631 828175206 898296824 703907574 874493994 177004678 718584392 643144633 683804781 925831497 928645559 741230044 873512672 211664478 783987409 872031159 979901009 730367241 975758072 325691543 720622551 881713681 996015392 491450598 712110562 395671031 640300180 996279226 999678727 742678651 948971920 149092396 861025448 986279153 996146623 547152718 831508602 125730813 864449710 846286385 905171055 142831732 610643585 513959833 536153456 656309504 661893406 153753593 880509402 865930470 955577861 336912233 426991667 335107320 481841665 274594887 549755003 809551296 914903477 313086311 770294026 915958145 954237559 872948051 905405834 384529202 757009332 107776570 729307989 754453198 952025202 610816816 808647712 382602336 524787468 710401912 982246679 428891607 672051499 21990464 449270795 770201314 956950486 737574234 844100036 829170219 898615522 983856339 988428777 233084523 279774432 304932465 313485058 141384943 368544755 809094075 906767187 709455234 983862508 708296682 974780937 785324402 868297028 722749034 791385665 234476351 445712893 715072641 802139996 579074138 763276191 172869483 917132024 926637954 974478280 724210682 880774110 314391265 701787965 171960354 379783260 669450865 775892638 687187859 922393758 537597932 817660480 285585590 802254440 210741991 418592051 486230441 993898543 796015225 871903739 968237266 981673951 580338621 678086826 930500262 948644379 236894960 693362552 398636843 732815675 859034525 942305665 494439802 601760536 905544188 975264269 567447548 614247069 9936252 224002547 785508584 891157599 548042368 904447486 566205533 967027239 603078660 674069870 954168736 981482193 443621061 523452484 112999109 150876686 183032804 745334284 969523369 971642125 431208890 846193821 694200214 722573339 206845090 484790427 287898172 783979887 668922176 783325553 329395646 853525371 618379432 783073326 761011404 790943748 694864866 839540931 600876331 778202542 562286881 731439914 684406169 716669289 889200279 962076910 141338209 501541782 832670213 878535608 687673627 880230027 280606708 504595806 691159562 713648770 399910531 817216500 480216934 954441122 977324207 993337371 533214991 686309887 24522984 420424171 853249671 974536254 626128108 807903793 301722001 935540498 979796762 991128603 68457719 538322507 230033910 592226149 673745277 764639744 364611673 527418465 268131559 787451903 631666131 679480938 810385907 907137728 567947791 880553636 63522746 738633496 538997680 855643001 738021326 833451470 83673169 362386387 937325297 987626771 504430431 529791772 521055984 721261761 188809739 679898566 993838287 997748140 461517170 775771484 992480561 992684134 45632608 880267524 934819063 975353231 123772409 800957447 433402550 821971876 508511657 845239109 300357591 613731601 647709322 825371074 255448120 743609504 410624539 690925295 199176747 633145582 523554602 575811924 620138708 800195161 554965299 601333490 569817601 754238017 46542974 303738981 827272380 984552381 637645542 929556153 874442076 994175866 300522623 489469494 852164798 992823385 440753869 657067921 659937001 873861296 501852934 678549667 130455206 135274110 27623660 781259569 81736588 568102128 545237199 829035825 357925746 374860367 927246148 977392513 281158708 632175538 36482813 413045639 498016308 876139672 264332208 815773788 21675373 828585597 698723054 712033209 612520754 745424982 816117675 863253107 830641840 896500485 239989193 917714971 12417347 955661605 590970706 663232738 207510560 748856234 926197507 967457289 718963919 989325173 291823306 636970311 355698314 910380601 38048212 784256985 387553263 708305095 770084432 856583682 782976348 889648238 520724538 965745473 88521030 626078487 257749136 844961763 194774287 811362319 970901487 977582783 574969806 877541337 655946186 970183961 682996608 971946506 4934966 816947457 17859412 567916926 831205444 843147310 824853711 834086065 897251321 907468069 238232235 245923396 576866094 788993454 519234579 521695726 447443849 467067982 287045687 538243077 15306925 461516580 990269617 994244556 554533529 920528434 367334092 998286606 962644196 966623444 673473146 809179531 547471268 906701461 476096671 918510016 54550001 281093620 75703835 186067317 171909109 450093162 729541787 841709162 549724704 811747049 322957035 970658183 693290475 898667867 709787994 944776610 948611564 971291822 469060215 490278453 4135858 613945110 602386269 819569632 618296548 959354075 857672168 930972258 838080891 878678519 358601770 715273550 639197130 917943934 550100210 640446509 815055117 997072179 57205963 995519702 964630226 966917767 643751893 822389858 494964679 593263681 571000453 623561132 267467081 795771961 539238036 601008320 479032582 896125925 327554011 550216358 213341996 920218095 719437153 966170963 606403495 939603363 612429240 871278390 154067482 466523543 27673629 312705310 135340235 219555086 208660786 781294517 563112587 632992616 302868449 324247359 751011141 902574287 234180155 850342099 300438522 692590246 815817111 883591418 682040487 846119912 326926310 798349352 571301741 859296136 452108456 996014931 65402868 101604935 727150429 942735043 726745017 983232686 897245689 983021781 596742083 960231487 266102740 290017443 361542514 654360389 223467110 903687439 833624794 984857311 539961344 605879773 994963147 995653496 968642231 973013468 748066679 831160617 568394133 839287886 665384678 907547498 515645137 992682423 905900872 987306810 726160360 926129244 537663425 881078694 51221768 537119331 384569720 410083872 847885923 909065344 666254627 695836367 82416256 198307844 785690441 974314812 124466781 153066874 800782784 944445098 124129597 479076095 710286443 968536765 394293812 476572381 846046602 914754782 950540039 953789014 973180544 985001058 944730803 967043720 620659513 633746593 112806805 332661914 13835705 177734243 187246051 470750579 311762824 343857149 395356747 775628076 589482888 664227303 211404804 581037510 76021146 513188486 989143820 992418877 545411140 781077324 549485184 724875335 190766242 381398837 166421525 665487439 581738962 888068962 575117437 829673194 755656611 938772073 420779918 985697688 889809027 950713099 54650458 999018683 519173759 526985595 44391669 804259188 661197798 838566715 666830084 886687421 789967592 985007609 408158811 460976759 485268799 706767831 575468692 849526008 432554960 829858927 971433703 996740304 455625097 868496564 824621842 962206369 428994858 968527679 294891088 867652359 663727609 991820891 626056267 782207504 95472878 360532061 334919481 687156750 989597065 995651926 514204745 713695833 439682166 866480815 693678163 836978854 152735391 948645460 74100167 860405301 553402784 978062629 387340682 680203988 333782642 827942743 902452678 968402470 193154110 427612650 171426485 303045843 749756978 937487845 87253024 936430059 307219451 471235626 531197516 582842071 884287727 973893476 417253684 509194399 875593057 945871798 923240471 968009344 84399676 987826338 586153931 765427830 256078662 445303044 586946296 872031340 285222754 992464301 260564848 535415753 48029313 124695869 476886701 516506191 583796447 589654304 684691086 910709156 647274025 648742856 819325937 867687760 378179022 747017826 996910675 998843638 845423428 911183338 205624539 943975660 266958352 350029667 618743955 642418618 683042018 805158559 37119900 282913770 844037185 852590577 421573181 489484709 134523871 214949663 955412134 958039443 10078461 288286180 502593516 652899594 630982029 978132395 745401239 921419740 499687895 665212732 821522688 881971159 300804283 739114039 350790054 772581931 620487863 722568477 956800952 964968132 699996482 770987202 198988195 600206486 961648675 971666670 602332122 762335526 379938718 451138919 891777441 950422109 404596807 816735259 199146853 745439924 192817462 751989100 899305979 972800926 709630268 995699982 490835928 717369077 593633504 770381016 382420497 411994956 827011389 951949707 990714867 992940995 315186991 661545869 112649485 964240125 432258315 779163864 332647875 970292617 352677310 551292422 51584332 960278922 682939505 824480917 855811944 989792038 175103523 989411131 38750006 412085493 347081327 488209272 171628177 664509272 499782053 684458792 124804175 202828548 328438791 644014674 499152633 603430864 507734703 905373245 215590864 727756589 822385718 915700061 292359887 912613898 644855626 923430851 332724688 575644774 144130514 709424335 932473251 942513269 968234277 968497342 114395000 294631109 129234391 538137956 671548667 908308848 164241448 834070163 29229149 407206352 426680636 623251910 351408340 604858139 73828910 528170504 213467267 338391992 424786427 743532999 788428179 901411720 30613713 938030238 781480782 787591717 252252045 587914049 769851724 770069849 695900231 734623097 120143547 314827912 50179739 894602452 693172606 910608864 638144485 973954795 283079152 448461062 471528454 686454623 758118868 950661592 317940092 620396594 103748565 643781977 225234716 943473734 529707598 694266974 411390946 663608178 81798950 508543443 713729926 858929058 21892503 216864220 678542793 801386871 889567476 934891165 913630915 919259615 574253562 984006488 686765172 789270484 820000818 876298580 791294845 978113030 595630284 822735728 398810906 468762556 375768993 571981095 663726666 754980263 596457810 639973968 528887794 757782546 711364580 975733908 76846549 511027954 403495201 543499291 446965894 890169441 609275725 822794068 846610114 957689346 754160718 824780644 226606591 880498677 383749536 610356071 550095195 561929129 108321203 688483058 854657329 979241605 692217464 984661380 548879637 822738301 400751079 488611944 543317914 967298039 448162730 830647940 994419720 996690451 92859487 822911935 702042689 959831427 365951711 973552060 567575566 596607517 858536537 869772682 651388512 989568140 881444147 893580755 541249292 786807193 272107539 314642816 728558365 948960870 43516170 237018613 559981501 988315946 968206722 972002307 51222121 254604962 155521934 944635412 90518213 465324933 206756252 588085606 688792471 811604707 36066722 361454748 107703540 285395339 34578748 920020874 725330766 736326904 809010519 855268041 818489228 826181200 979391669 996994661 327360584 601835593 307122951 848609863 293225626 373653302 51628883 188907735 277568335 460795531 649766362 762160306 889481502 938173855 178023370 581501016 614028930 843363897 871433593 906421592 535778943 945961635 168942021 230155609 421058808 866803247 321402534 750446665 69501518 90900237 579593318 733135698 977316737 995405177 953396795 997841245 95432921 607859602 315202441 682984546 146196934 935292058 349804935 882633046 733056151 733433751 175234606 653184763 308797198 403289667 980926151 997017814 808398247 990744459 677739996 793037129 208053341 763400427 320209828 464059310 526522755 611296275 766603362 902136651 562994207 973043306 496681621 851125729 288403801 926341554 82778411 115615120 313079788 513196373 533316038 798384513 319474972 893896969 439914542 929812833 212228876 793907713 318304819 728800782 734179477 958612246 19532701 430855840 53986768 661088217 670146118 763770510 34001430 516180201 717475153 920822370 574261640 772695185 477396769 533645880 509437451 985916195 370232496 402157348 212611678 370170510 201384251 307240620 473044712 917049311 658946975 738877997 946660400 954506759 532417570 937372410 688286488 863349369 594887467 659883026 968046495 970154639 259802627 337550345 468990138 731891175 133586010 818169060 502392358 554074651 244332094 289436926 303744214 930986816 104290113 575884083 190733838 318739748 815716701 883792633 948725725 985699679 838257381 860447362 89280504 887035053 229840725 373394408 426669844 500450098 566130882 794663860 808628035 832066110 963713580 986450364 598203063 657207349 44038386 783849436 501299954 995636482 566620944 751732890 991763574 993568150 586581435 614345551 89113352 941648530 328206251 638615603 439210782 486727111 274154700 361601957 596187270 901774126 369452210 485580978 182009160 281050839 473896491 955732004 236364047 939992724 317335612 935990561 920230627 963149105 346629853 446022475 787563594 952262241 231439790 654111454 125833234 961890297 771672098 973478361 446901098 598477389 743711012 985022555 910402036 950438918 586199286 793210109 505057803 560749887 142569013 166807997 643393710 997320784 410156571 541583942 905452172 956193100 76762288 103665622 104572306 488245120 731938587 759435071 671864286 837954910 110993698 201674035 730986598 931982038 837744064 857695555 722896244 908077467 629410288 890964687 314406375 436363004 347512640 484132856 520894359 705301906 702007979 969854894 272971585 643198586 452519453 523498311 857427027 862994460 407258730 948967282 246058476 906041485 171921426 586038237 743683771 928527633 174306745 410192025 472161505 619587619 685848635 736137838 962163424 988372340 967705256 972830598 357762448 856334738 914965591 983642141 186429797 653360854 465580116 775351180 48079282 694791932 196719529 328760054 706504534 768765584 263526246 282125015 711748555 806816772 288086960 621864915 417611037 508720715 142402325 197654953 654527532 699751232 709238266 931168882 502451075 583507349 725391393 866197232 498800326 827586393 398644041 617929247 186461116 558635413 670700999 775786205 49856409 758531457 933359191 987031367 140693863 697677649 998379578 998647393 242175147 533112361 168435835 600878181 85585660 892642389 211202582 560344538 676405409 994048566 82786377 656301043 928204222 932120623 806782365 878040676 777435008 938282681 340794644 954204977 47707136 76352015 876945786 916067960 114745968 766327427 450673565 854845635 964543475 983085668 51947973 337935885 315774810 424866346 228285436 519310816 553934340 753351211 188524247 874393094 573934788 712372512 534608024 666465412 745439763 885865017 144001688 941666580 869231046 941985152 926604995 963292251 943094289 984243078 433650237 986841979 891915698 943205162 317534828 735757599 704852887 886371068 914163225 916049615 953035678 972307145 333444732 913159769 34403765 424803273 163556606 406234420 485329277 786995277 593079409 700849934 865035428 903854707 886465648 923524884 289567756 757062544 227680443 643073764 463496012 530891672 483013564 920417882 84879424 712752844 885343627 899854805 494677597 790801876 168645047 817516061 394430734 815390049 173604876 187609020 694571510 875261765 612697118 750877797 473481851 877618525 967743541 986090084 303527602 851970338 447692247 581198723 18645617 647943010 923719731 942635239 213615711 608517246 81241663 375956877 195595768 983449692 17675681 589849367 389127057 908266274 560777873 955018318 498990642 735371030 611526895 847135667 27013753 333792603 159383156 626276956 829326836 961097227 425327319 753094745 617571462 819456876 236029317 882439214 858421131 920220790 57012730 551664306 212863107 957574199 921229098 967226113 749847854 944045480 238223727 918105811 240568343 397007937 712347416 997167569 11591141 361620811 961251755 986372308 961306362 975401644 165844223 465950472 418878745 928194600 373210430 990312353 523449728 698073475 762329505 914709254 115044452 697354728 931421515 985730684 238724323 960372628 465752138 502463132 661621750 736740093 456881128 837821602 568495988 575529038 707492002 757003511 624521506 825897673 763563370 842506403 432956635 724915049 24634698 147546628 303089316 578366510 106408005 832024072 754379734 990505171 387772675 925602193 281038878 881422214 424486483 604360643 200028978 872087544 193986179 855294008 541214573 680712737 527840867 778555421 328366496 556109986 877589153 887137208 913686140 939524281 217350433 962945992 753381029 881859854 630466517 697410160 705717978 890160139 95766291 381933347 851055143 905518966 271112085 951462437 259987981 314685650 95530142 739629276 84603095 848224029 702605025 791332501 906543886 971722009 528752471 689403313 101677165 240077571 115685183 707474706 35764251 889635307 959918823 988547773 905140715 972363973 603013235 643828583 706254739 972552434 881831374 940882248 715774355 747186163 614393257 814236318 969826111 992679473 572262936 876701639 160788154 285988943 681655546 979677491 922883299 964619368 960243471 981482714 535195847 746080396 496283781 981577900 923263013 999804565 301734480 758931143 294375755 481644449 355093229 371046096 737795590 966354223 378791532 657466029 25139070 33326428 179966428 637919185 794491792 904685421 205426115 495523272 894100869 946357702 764809048 887295699 846498002 955942079 706125501 748203803 78472100 749738898 18689206 509878893 938003649 995469604 560863597 663667709 720685934 928903382 120437762 585710314 447142482 769706243 752582040 813344098 508428270 698253163 92403577 994339478 66863258 641936565 523475585 995091182 235044807 539748571 491270082 546935009 234691272 550630670 846921783 874116188 344629839 349629856 229051354 309948025 29106128 358542338 307597641 587229232 842377419 974435037 218598875 534324692 205862473 280738270 74968833 296007004 915694462 969611365 552843164 668170326 159272135 950168201 534090599 740917491 996595356 998601935 816548548 882278886 62622705 432803053 104541925 431267999 345848389 736082060 248222365 967996302 759186104 856616197 936033367 993747713 35482043 900523918 5415542 311024843 529281150 788368429 706160317 807066512 708615293 767198919 568307555 786684958 88673526 790408404 306727182 540991700 650678743 956073290 411977155 834020247 539137155 996033807 709512497 862037052 425503342 466463088 351405949 901964064 683170513 935559659 214156369 249528042 205599498 973688372 746698769 812307460 408080759 807883994 793378381 879415561 46169598 236964782 281529806 379285979 197205448 472115114 451886937 458551369 523838929 730157603 625492447 978934610 894730323 919456585 698115688 945383967 275685229 694950641 252059862 320455212 813487587 856927907 462808669 899528329 200748222 442867511 997284746 998824306 554272390 845370238 390689719 530723219 642089476 789163283 770037498 954078595 192206358 805953639 459325476 517097141 503174351 720416274 984133516 990403820 148414806 582654490 137722524 589165483 179771645 739827883 138510944 520632171 861120521 927470641 982755534 997943419 573787234 966234039 545713647 882750563 215287168 920543776 956002871 992394050 654323424 840328398 672223108 943964750 633594912 971252220 841880685 959121781 872892967 959760768 743350099 994206650 235575958 582279116 848903325 951928719 95143414 144263569 92116507 433627196 932961595 985919932 592035944 944298839 864589142 930305209 529224796 801654428 448098599 735815253 296910241 389224257 276818953 459141422 116220673 512527953 366749619 489710763 124472276 856589175 456772968 857991229 852408576 988507578 9342200 665267058 559380558 948113353 956294639 988294686 351369500 883233290 778507619 833786384 903441274 907689428 609654505 837726946 928674566 996887182 59963366 576813280 367839604 919691360 959695147 961956807 294996078 939052173 915844624 922094722 391293802 480568166 387064920 656873331 350652787 846349928 19157006 903663647 391483340 488516604 319674697 603967923 872002858 894387390 105238758 537413308 937215568 956731757 782513267 915812290 825428802 897248919 588909166 886978710 765018361 988944890 129543265 904059278 518905982 870086473 791696826 901537646 562519756 734262648 340790068 393710056 706778292 884391110 457916026 502853108 430001352 766667349 605144626 878867196 626701223 666592329 563675639 955560309 899520687 956861935 662253492 941221417 531063406 940673870 256835303 552419672 366332131 562880716 435552039 653678910 57507743 840607568 844504201 919945120 939852652 981117350 832253718 919486742 923991287 980088614 510540602 873191175 993093178 998278995 42834916 162536236 559677182 621874970 283820698 308909570 320716258 955681180 246168269 942899596 567227309 815256079 79101633 464068576 461370057 830865263 724246182 854165186 457197542 808359683 359622839 634207104 29848530 456863247 837696189 863138567 436997022 798831766 568653148 699846451 511670872 888206715 776461835 780387611 371648946 532437470 476276679 494273083 166126139 585888703 366789368 761013521 948785699 962203660 493012163 934896377 415933392 764224407 790571090 865057311 569615736 799212682 569476983 604961516 951565876 982660889 657933622 899928730 867834431 947545881 599704798 654554964 317982393 367497496 624499164 960179684 772095963 852668988 980806530 991494107 86670488 371205976 317568090 370786448 90523097 197703596 15391158 831758712 348162033 462305137 95521082 806696688 886636499 901455509 278213381 282889330 148589863 433378534 615372488 656371959 468187947 620669732 730869027 986823365 943965199 944499913 147766169 362893394 863791789 962205401 605935802 951568724 182129015 566932397 824313257 986387773 459551863 972122783 426699270 658562531 237544083 958135642 418112764 838182480 114084853 885593324 300064427 551187185 701951923 897030467 373969894 992998573 553628871 618641054 760422001 809073231 4784823 996455202 741164424 742340257 36713468 850417187 280791227 413585813 364870630 892895116 742729028 807512181 843646204 894090676 187286054 952212665 685381520 886551679 751150532 850963312 19497943 650621202 772565895 876528286 986890811 998528899 320349217 676921005 4357363 362960434 369701412 726954879 321333479 968673177 102169589 698358247 761059204 913917621 191331706 408978885 615560720 947046125 198995254 727707994 590448895 783341442 598932490 675560590 716757346 783096392 769383569 812529515 44798109 217871447 710222886 731219283 78631550 191398396 568593034 963594950 461507746 493338509 869047985 873550364 267748887 648895381 673758986 747141705 20142193 257345447 782435974 805080443 854742148 990055558 806887264 986167104 419271811 821520817 636251340 996357486 44796991 311251402 642566089 941940616 191216255 824575905 482140594 622954771 138049226 776517966 149747230 404545239 162716247 611883499 823087976 836259804 616005454 818466480 356016050 989755713 136171168 533905132 193409080 718311308 847893584 886896639 22781231 306080052 89736211 701439587 649000523 885789781 714582768 870439071 757497314 796134423 133707321 163148233 257404690 897320475 809268229 985477913 18128856 297414470 40586527 606576679 670252503 899636465 920716785 948741049 413653949 861673488 3485053 634030767 48994653 935437552 24615495 519602346 232248000 625408092 349867884 553288257 224004998 403726612 625998609 699070925 552147256 645958601 717626023 987866985 124023961 613828280 731927644 890005410 380102712 909846695 418170272 766207326 758238574 884761478 389830500 810581848 489143636 535203472 717626361 897471863 423851016 593412511 947182715 961918596 108509202 984992370 388296145 499441139 206747340 911078919 372881074 735759303 374264370 605934318 280362240 365649383 219182020 242893139 301551901 347182552 330664123 712988678 745161329 998570470 553339571 828771622 102134028 410062458 97874287 141518159 189832275 224837517 217339909 792568722 190411640 438365601 703166403 986061260 39915725 41444709 277359806 447154776 90790715 661489307 294433960 404960272 832077085 890890078 78812449 381964395 504195860 974254854 145681178 726207911 973169342 993952049 238452114 439125214 110484208 805488762 263886059 653398945 388771261 973563139 161498067 669743479 537924666 546902603 112357747 732549004 853297867 914233106 973926913 995656021 802978435 844801679 622443509 776418729 624777049 782738263 480417691 697214760 676863705 871636845 452882306 458257964 753411032 975325929 918348560 971601575 172888429 763491755 445313614 950650730 354899776 747588837 605947814 817276648 84426868 491973595 909681108 927392262 317996981 918891564 967272476 993397947 448567806 913430877 442193202 961454370 752217668 853187947 833144131 875607102 475641423 988794881 547384155 933248397 86539128 342548175 283146144 748148625 187452343 636520149 3162645 864069473 587069326 865659297 107039851 872692641 782286638 947372585 904696334 961510063 617555085 981137167 792899561 933481429 660407879 858267736 274330120 621443413 749457376 774384578 401732533 714617445 234025836 803658727 635720246 920614023 785215477 844333110 900815266 961888321 757386544 859929009 384796030 601449042 558725255 613876715 109312896 155964784 598987446 721633644 942243185 980105008 974872567 985095203 826134229 957803216 972802430 985524443 414126438 496652440 394009567 684651085 738028954 964287197 43124359 137497697 145682203 574594254 852214768 907834774 318762385 721550382 395258166 983920288 474039512 816528221 77818830 143741261 225770270 451465304 42842417 90074623 578726810 801805983 271974551 944789098 768005865 978907589 629074888 982717018 698039959 975513728 826026049 984756403 557490305 832609308 18372633 309995778 732735620 911988161 862423734 982653745 116987744 159613642 630984850 708377382 167712732 910589925 260654323 517943354 697168743 972497822 562879628 980099608 134398167 915782745 107127918 144080600 668578785 670313244 131325217 945553090 964350837 970419335 874254940 908500268 220810234 676145672 86430997 550892669 4903669 500848147 745278788 816845352 822583960 854220731 955917178 989447750 65936437 269024844 533883000 704345155 92247715 368409301 148019372 772802048 402505140 847691301 397759337 973295518 935490061 970623627 178406261 327079483 703910366 993091686 938659906 948108735 154830 128014781 387729869 933536926 148749022 934955466 943035326 957058880 830756327 977806313 269377513 569273078 348533585 582326816 330344698 472243212 195130577 378794536 486082675 871074498 545664834 691002791 890107441 926812095 596926892 621965401 248237681 737705764 596018805 797288196 88343324 815612187 48522290 229530089 624196031 816461182 919413060 932736517 463044479 704985014 543351262 941051618 100815526 318212820 524151114 788645862 969145151 988656439 659818809 980590169 837731901 899434259 166975360 456334042 268153889 910228642 368099744 795535238 628449570 679834918 350892767 811770678 3916797 745786571 332447087 660845132 312049881 856362803 338738746 860849971 721829278 765121584 785873449 964399674 959381577 983700526 379950933 742651080 308986125 610139118 668483379 733859550 925129047 930815602 423093296 447033151 885572938 926758544 221978867 313359265 333806792 611022957 692151536 953368848 716041419 895695018 60062109 140281284 892731840 928430021 302229670 958050713 435308932 722630912 842749352 996316970 962542354 988796614 522144677 875532586 657499514 820745531 624354937 647707007 925838288 992834987 48804180 566721145 906788675 952544320 741868131 816314321 352642723 876368342 170382286 594060021 123402245 623552720 333795108 918948011 712173200 727873153 7820957 500815456 748386695 816572325 803112619 885567001 250425029 841708277 24610582 818547022 74155005 885275354 582914216 915409817 564682432 735144519 763194781 982545793 641296350 783548026 829403252 874667370 458555451 527556843 379872407 948986640 765329669 839739825 480516466 560640582 604666831 857907261 181319557 431934165 274988946 649691502 48191051 697984635 701140549 797147897 219421038 731102694 256392607 704321561 568588436 779138900 855284826 979518315 254111063 689432997 137473786 981811440 722981343 906257258 739482693 833085465 179251167 974351615 469719739 921066236 776023949 914356053 567626196 930835572 819608409 835130124 682242457 697062453 292214988 427080887 449513265 738247964 44911752 521129089 882653317 900328819 677702289 844657164 121952717 903749594 117117037 663873939 267062267 696896144 686039127 970480855 952874840 996687869 81057976 658762889 828340139 867815819 802674155 941185876 195449880 858098307 386158620 713309177 430867728 544359112 600404603 840924548 380060195 718650823 939528565 991593545 736839004 748071026 927394094 994227297 49070002 621642421 63007855 708821204 263346223 593649499 151896859 646328111 739807625 939581307 964835184 970576486 993152848 997609091 615475312 880901423 400661599 566547650 692229893 865762013 654901049 732372628 395319840 978307538 456970100 579659220 400982294 969604413 349762555 556630468 461561242 770467580 616464270 638658574 421545114 674155974 874050095 934352241 596803793 715201231 396369665 427062422 348426382 681455453 784840316 904182454 692169848 784041402 659268722 997867815 140840343 351690748 821615218 990150792 563268030 849375010 658399290 762505675 356260071 899692892 696847089 799248672 123663178 388657750 256206621 602948552 188141229 851503295 191133700 243728449 746945639 753542472 237769192 472936881 388753559 946073390 832790807 865502606 955314262 959459137 799795126 968821152 277594922 870891760 142225725 955258577 876702957 976181832 439251437 783794089 188123049 203693480 390686516 659441711 634988128 791726321 769185099 987009861 721884241 754010685 83815455 107818371 158420279 615585204 538714788 940141788 573700174 702586407 216228812 246089030 827657594 866704195 638719708 688929325 676282176 862166881 840303523 959305493 300099585 977338277 390644276 791800088 293129580 833911595 82156453 607138308 748033660 824711720 945601161 950386971 726871597 946989766 584534395 833501502 414999099 712711910 583068194 662598307 301083056 665428541 443802584 953233540 405869957 430768537 610601931 966032837 181985920 429471439 448160153 858984850 708349027 915299555 339853110 694619937 904393574 997842346 656998864 767879758 226008240 434312792 400850666 875724233 985646403 986801661 979460882 999275541 410774217 757783855 399892507 664598130 54267515 808746206 247327074 573262978 357156210 882477721 686296059 862680660 654249566 917722071 703420729 826367061 572886544 708121439 325827800 472329735 472076966 863733436 892922995 990305635 700770375 705894102 306909726 399616522 576446056 595184817 185201751 503028769 111959858 434434989 456470095 976791104 173385414 683514623 438998954 806838141 467062538 837180009 348018548 353089433 317236317 333891970 679125248 996842038 561146718 639850691 316915147 986603922 982866250 986835226 487812559 736472450 551252978 861583345 316735260 604680876 487289636 918601051 351366851 955954260 90291721 330264463 161989541 734848198 525258150 549633235 775771584 955987912 276595416 997366213 190544698 585760071 769596924 994300078 421263838 737179811 29407754 238182765 411603785 450752087 995888907 996031997 597093571 884843809 318534719 768204685 255683223 477054899 562849839 649593144 544647979 564218689 183592331 365681506 801374952 838008855 750489934 955106447 317368714 888596092 408233155 863117696 960112419 970332533 947144818 990816051 506879261 881184055 634911422 865858540 559994476 655053033 105383257 426299104 996773871 997275357 636816139 646582441 700362884 895264921 506919257 729313305 611129083 865630341 847857610 922770596 103900360 731111861 635419595 757304888 539083875 557377101 576470169 871647043 190282160 743582719 301843743 520721270 668734091 718291962 188210995 616402533 26994951 723899441 990560959 992102485 884968130 894506048 504886729 900803793 154984766 379354250 804453382 938510090 744777626 819556741 543206210 889561625 305595770 553258956 813867408 829797263 840714939 903546953 715270135 794394192 536667739 615368370 737689609 994982387 704031932 817249610 178876868 762525708 532771986 809218398 238650698 658103261 41865240 582478035 917313688 938637644 818023752 946270539 567077611 995165257 514097431 807819538 663049611 975727584 634659600 635837174 255063760 410953831 58476363 74173515 412125234 798369142 929043552 965621988 756590448 777442950 402789586 930677244 680468934 786476648 322699728 677400151 484624738 735881022 693476066 885848110 954642834 973987011 250770691 914139169 383990474 853402642 801626986 967046929 321403811 858350506 356064471 922559043 312183200 323568712 604372273 841577876 753763024 916711415 894905952 963194012 439335151 812582488 868781170 869377255 546438007 696248606 928359553 985919966 747875457 947050836 29075734 794425382 393215614 919062336 332367800 552955231 210797209 918108028 143676558 825521219 398490389 877360630 207854162 916530724 150761171 757571061 535672178 965414024 460338280 593900363 864576883 982309395 438954824 971182275 771597061 958867567 994864304 999032704 767055327 919519891 588847674 709133227 103370649 858595429 684857385 879095336 384046991 937588608 251921191 567158421 358430106 892374226 349434463 550401468 139428600 931906852 364891382 828030199 89411906 449671882 642377477 750546619 854097979 857826508 803783406 953363340 470430435 618543723 929204575 969950378 952585230 958007166 196024779 677948013 67015673 505728577 566444516 760858626 203844023 892678506 17179510 544262142 985913240 997118038 946657509 975846038 275715520 724636114 378298293 593474014 87330540 876327540 932024237 947150543 61747676 712913904 843063528 959145046 159377805 803527638 726150822 883204688 969145273 999324276 21347709 296008538 952710825 954193904 305773020 549844176 729300526 738013668 399629207 518641460 191224903 443645782 360073445 460645189 524138933 524947607 572749814 833553608 289426568 366449744 444267452 642620727 850864055 948756830 806405409 990603875 294518940 946238640 53851238 789749901 346190026 356586316 794753866 861795172 525564325 596220891 359279635 482600631 869929716 989152127 317150945 379495324 516971797 902309590 470876382 550997698 839045019 868366907 226094479 714560938 722793532 926753862 849944529 948057574 122695693 867590874 452117151 537521554 707078845 834648942 454104267 641346215 235138180 877397503 104516672 905878094 163553992 240519362 112140796 342286046 698391432 823148009 750687245 918382039 822059640 834419477 65026769 239470085 732670705 858675149 499900862 568388399 245380446 966336271 227686497 540362799 376205730 501678586 777707692 946737860 664402519 955888829 779984055 953039449 928584371 968064576 780050407 996267175 974900836 982165509 559962792 581639625 36330121 203493554 424705801 461375811 754496577 791755969 858773369 996532702 156562161 431405480 661412416 815082155 843474068 910020296 604712194 776646697 885033631 976109032 37301068 963387562 748112675 792904776 364119926 582106782 750982643 818524208 245201681 388922458 653526757 881865537 506984650 922707210 794218701 797469750 592819650 964042956 511702348 570229248 160142593 543853302 714033153 914865141 109856355 997877273 854349737 964897442 997402708 997796092 366161427 706138404 355626750 737755589 64400047 441452706 2614644 700956162 111927970 755251143 415101857 716948030 497974243 732439381 225513262 659523950 778421075 937348659 680351114 917722603 250899165 920452871 159006546 910788185 5928214 194469928 999258588 999682457 41257150 304554883 464972052 898588774 641949034 697663839 626287025 862508181 867857837 954100003 283748845 854145052 288096780 515958624 665403092 915080569 917911845 953257863 233814704 487616403 728168002 919244480 913967240 980999123 992905949 997504026 978508003 988654703 270301035 990833547 558427627 942192865 890255998 893270375 731755483 957825009 726228514 904364874 555155343 736352729 552755262 688960680 962293253 970754698 457696022 578159833 214693530 656893602 328453497 409525368 701427238 736229896 476987879 852048913 265745605 777207324 646460410 926849365 539320203 738336008 380869752 510750015 441573858 839752685 984762524 988217966 509345314 823487626 602409939 979395445 660046425 757782608 862422692 974769376 816259443 903586736 61168272 789166439 885526130 954046923 704938601 969252441 831439659 990689069 18023506 211767753 299690896 357657818 288386544 470099770 272649073 926988599 815669716 985665740 978131806 999428157 889077031 967547209 816926143 915315811 540888988 883218359 779807233 989732185 180974005 884275101 507307991 943479977 179986156 247006911 913375690 917395534 170689294 752899119 350822062 874484789 870582865 979094161 35089088 822892781 113784519 276815434 737725236 800773432 359859293 915779931 141983517 306118293 755223047 818238709 417236533 932803665 710386937 724305369 738549505 911287661 180978891 459546554 438848748 551532630 819601985 937797272 939395345 941780002 872943196 938165079 584957271 955514548 706334425 808854621 638823605 852332223 546900191 861413885 97996386 694168483 608001545 956972943 515669605 590028579 434356160 631509660 247328815 485609000 109476234 474892074 367615591 695571195 550380528 927349262 72887570 315312003 952981781 967661621 143948009 608906496 446625293 802065817 41514289 897364795 972817653 994637526 543596995 803303487 859220444 958613905 695515149 962529685 225340249 901056834 93837648 474167611 387612232 704200643 225877973 852984473 754985980 793605985 11024804 722862872 794371095 827761196 865083884 924317124 263902790 987884508 671815582 810097090 661659599 859841034 909746700 994506467 340526284 609382779 27286559 395663788 169915199 539781098 34959485 273455717 427554925 728647330 701298247 850117177 478612207 648425435 255273115 407050978 211564107 596703306 710584831 759814219 186046301 357636122 945855068 981660327 525084054 820388730 395913763 765337988 684525029 971869108 520456033 607588130 835152341 991892126 660965823 715518201 407075819 918997668 372797240 798917543 358502734 925869340 780595011 866667663 107970099 764651708 741438275 870096713 341037965 530384748 168097491 740772489 987771225 992313701 68050230 734614322 399146044 998861466 957451549 969380016 301532676 858002328 123006877 714255867 107263603 556359831 300618898 997651701 786924893 926108246 810172885 959437814 288733547 753506660 783781888 955063050 369004927 450981299 345681013 369806406 153096964 839108913 795549071 923565330 966175228 985645612 64732411 332921991 342955084 919849657 250738837 367111007 673052961 699687268 65248355 638015333 933267980 992930022 650245954 763217353 961226619 978216694 372578909 617440921 523069325 784266431 323451108 524067903 519007743 649514886 749742616 974012519 17316301 19435156 949377067 966272284 168838560 670766634 410680447 926564208 872568077 936548780 1041617 615654252 806164059 980181918 408884096 712316991 498061817 968386530 366221635 926668458 351376772 975523535 372097344 612573507 52167481 483385931 903193320 955318058 707584225 926113292 861241440 937464961 633583544 997894498 233905935 943329811 433249062 721108501 246014276 521694969 488019803 791371829 949652136 949764320 168510902 527532041 19119107 721311424 515267718 579112669 193406954 274204023 676110245 968012001 691636319 962849034 313668389 986545683 634373541 753310749 519200647 648072979 896205180 932075791 900569673 954793205 115394162 183550933 333782597 973776629 232908522 963136237 97966006 455753456 219963834 831088314 346352699 589563290 870849302 931702703 851052695 951575182 679300483 913960059 627249456 933719417 885877460 921646538 7104019 818572195 317484137 465784787 684359654 900004863 542659394 843631613 366958241 920970223 956351341 987217239 188666367 485970483 615855228 890988506 645438017 653961370 778488714 820628348 165027194 679325954 669210032 753343530 534331335 717582438 185129468 788774867 700551041 943062031 426713445 519107392 805965788 821727220 121637692 664783520 828658234 974113655 319110158 697349434 623742402 832501890 814997818 942203650 616617171 801252405 897413291 944079154 79380793 199374111 42719177 790235861 162638606 199697140 788097537 956600391 486730246 916633465 584934649 749899083 464521844 546737109 697311570 733484444 519872171 738661568 315206053 697037116 466794922 523362273 213809544 217280225 497230920 963152194 71374802 273629425 994442337 994891506 283536604 511846477 377375314 611201090 549434759 649657921 535874973 980486827 778816171 858697428 49899382 551964067 85164192 318871480 962641661 987814785 481152148 904896027 776219378 972918509 725922165 764168827 973130517 988982830 632536874 796134603 139347716 514905071 241836654 497638293 105451946 152650258 979508467 997787279 446531657 545460675 473456500 981926947 335475222 567277038 430906851 991405587 809086630 820134605 233988598 668818248 151082611 182038109 917262235 932257068 455697274 967615014 996438579 997165693 880881062 953370791 90161953 725535302 668358859 914056036 374434915 725697529 851947617 951319211 246138355 911237332 55304897 249961050 606979109 979521468 253569491 600009582 134394638 659646918 248877596 549058135 31665504 400617835 810465060 861543913 636997741 961541630 827556229 905756243 744876725 993647716 609686637 995207803 986849518 997391232 953164635 976602750 898971314 955984884 718601750 988923400 794873054 972408422 260132285 696575561 486739071 838468944 498311193 835076665 497178946 929623489 933902109 941140706 457159119 917933024 68656024 459087806 651466712 970178596 86656103 433958381 185119875 270315545 317138892 357481035 101442524 822484276 466301085 588111470 538819457 573454083 500549257 991726635 933988465 984203694 688202364 955664658 653367150 852090700 652389070 939173160 343535398 597768107 751987091 901452070 149475778 296429592 252560344 613513123 386722008 513758867 966330855 989238914 871044473 896566677 522245041 747452169 605698282 662829819 850631721 899882857 889882171 910640841 238011220 613131679 7710800 887282147 739594439 823709178 502741755 670689959 822202367 891117158 655846998 675105219 188242454 767879979 593752383 648476660 681928978 725274621 843479892 919976694 411152312 968522167 868278921 892336800 844016571 922858803 553768287 915043421 415597265 418643630 117847711 278201806 420963247 499232829 202965123 699161684 306536049 638770679 547993192 681804082 995811711 996085588 337772253 979733960 965869149 988573773 666486205 918411180 882417118 999663099 951270642 989437186 203804044 717463450 521915848 733264712 380458605 513766315 707960477 731298495 187641870 639346765 738058616 875241449 756030683 930354916 69419380 85183657 241479975 337528140 670158375 883270182 587794823 728853083 175863972 976379343 193969593 708908919 940355039 985431318 230030031 492988114 640537596 739483908 844492803 998124137 782460770 803269935 72090319 106617642 308970381 996573181 683433502 728823482 755648049 787590615 320922565 799779746 354539322 621176390 374015593 819233729 50221042 818052104 358886046 418294493 384488037 919495343 335354831 831162971 129604311 691097107 390603618 417292557 929149085 959499957 55158565 236774965 389665077 569193032 494531022 689264539 469710662 696229138 937325715 950072597 721942657 884099481 461770813 640380722 358835017 791894700 864282629 968151198 331306989 822481373 718132758 945758800 549481510 993673840 537199293 632451382 807293258 824904537 161352710 873753007 382377396 619261251 502789039 642253685 967518522 985520782 4333481 566231549 50803708 611814716 942786675 967155367 200585714 630547104 306971878 733924211 913004149 923683805 401386113 593505178 216621261 503934737 456078876 456498389 630323670 859146003 469770398 620184032 732630250 793728383 416115268 743461732 961443307 980642901 912420219 960118779 197001859 976581183 868372619 901937475 492727435 985067974 667065878 673942401 749929741 810517426 50367412 275333023 114691618 219478287 406439191 809347409 736168967 861131181 242785159 813841861 127913214 554660091 973757751 983682366 751937837 857499995 435207607 459018635 166808919 691384553 410589673 916167592 639457521 887617797 893589459 912636146 633368696 966675156 26429986 352100449 31133543 725187211 486708559 492579311 263278562 759752415 399952556 846842057 359511717 398975528 428815173 755285864 594679154 946740937 142273322 482029469 721194907 811541552 61501161 961430592 394423348 951023010 750799057 795119888 299414011 677912552 419665103 683433228 962062995 978916742 966958512 980080661 234544165 997092557 557387718 796292391 842581569 874246410 386140296 751490043 918927629 928919248 740508442 808512717 841127654 933459832 591721511 929353401 374229485 725844690 561464332 872716999 329896028 904318143 828592654 849161628 269258538 729318922 641065248 986080333 23545263 716873967 6740100 141651334 892197705 961474639 954778187 995305322 180276079 836218922 508715573 768693117 327404041 382718776 757651159 811795026 281957024 530667286 847503767 868536994 51432573 100992282 989114801 992983245 421110606 801416106 901113593 980142926 153943761 817895254 248629685 822863001 891306832 902143006 933784855 980377887 713893870 894844944 891734139 914340763 52866611 940663631 522065383 657700171 394723422 426945436 627553821 688904472 32007459 149382828 144794558 971303229 454090117 718905904 96521440 566711194 968363649 970096066 696961351 913292546 945527771 947870920 997109086 999000505 859134827 926599624 813291136 897143689 215844620 356028784 541811081 639667826 716516408 934156929 962919012 976291154 938590723 961073346 497449388 779202380 675638215 949789749 601757646 866501725 318018152 517275569 651072787 699493747 720728537 821680464 478501690 816359007 694402238 703070700 493958672 950697125 621257474 912072841 345975708 400745154 99308886 512807503 426683218 824208496 800840338 821784456 251444934 855059605 930856720 982212443 395704063 575771376 141228930 475900566 192871270 873946998 971794775 973142516 419844866 981536660 213990013 828502764 63787470 287537460 976718769 989818467 81485054 129970375 507512039 907669517 260078792 287377271 836532598 955123064 688458702 939674615 193404300 578820031 984826701 995142613 196546037 287317239 149159125 782892320 165102845 321505359 359045902 499591025 941290197 967714220 434261477 601690574 71784066 675810363 307872568 466960646 239252211 266896303 194611246 848456110 705198480 735795723 594232748 773689867 788305497 808754890 808610473 911712458 836275437 955225785 48804623 697906065 331022132 965379612 106497905 730776086 931532668 987025494 321654467 968117610 918144435 994917712 870620633 876755284 638498549 784273350 26981570 132290840 104058838 747896271 133966124 381069857 594745905 682199449 496892252 947712793 709741600 771389738 511758447 931839746 497982431 951647509 461424538 940928853 518757019 742925260 506755041 894908721 831324634 837562792 410761242 646784512 538709687 793711123 550319289 760983847 604128243 630686465 415250027 569443398 709236357 779653300 910737023 939518388 603250411 929479256 36232397 408565761 582383610 877367539 785661641 879258019 971250134 993294095 160126463 381343629 959287486 990439664 485265425 653645812 25055732 77556634 206555706 242058966 766979190 958257886 265882265 519577233 645337703 684626741 92292216 558777191 9612695 414586737 871678249 911316528 716129337 723468889 920611347 935958850 365674318 658809504 20150134 974078427 869877143 884773956 429103122 952295284 626758389 947926394 892999190 928455785 985670660 987051763 182000934 753124280 182896956 378935123 305393557 317646883 223089327 395012697 232325632 605064691 310130465 356658411 886177866 918157365 136333184 939898294 388279327 518382495 111739522 624951018 787911157 897863516 342523730 750780092 287766674 772852450 561495766 798693127 493852220 925904235 686116749 790738583 446925215 823277831 65835656 726265389 8530239 708612317 977257356 999573509 146082295 578194139 240463976 358409618 497640987 644073050 150506559 343096962 381811987 805277033 720317032 830848570 713843733 716392359 994374216 995761502 417735951 873232346 312059888 854355224 987543429 989427117 268412747 963429359 697484998 739849902 485840349 678636930 207201766 773356042 886585366 922123746 665239278 692506884 146602045 894366891 198690318 516795454 442746876 668937417 920778284 958910243 814231635 815545010 389756490 680640768 117562929 409635631 488319893 994809760 538210417 984147778 829066473 893728898 980727137 999677687 923762871 934561792 839955389 934719462 253376242 778774628 260885626 604629524 335031208 959288067 928691535 936480110 305430429 768400458 584598208 694720916 116068095 457025844 502172800 995028523 174225015 909142221 627136106 680546581 115661147 989507525 736037204 773491747 900109816 936678599 245449412 465033857 780154681 806477073 185615198 281847682 835004949 941979255 526021456 578797836 716335413 810116649 937138589 940962420 452403236 629130622 410830179 716478564 868755452 900593902 747864829 944065202 608354900 884762050 10083683 248746629 584562712 631233966 259075277 534681038 306344583 432505724 153597203 173446929 158107925 773560463 486677286 742246810 563500549 938061033 237375082 640271561 396157553 741408126 771079314 810987245 802095791 975417501 873342006 979126872 344734808 725024320 876604171 988553510 451501600 472693068 593944497 788066575 448687076 818263660 38343710 368061153 305236549 866731946 241542842 697607088 178469003 464714806 681354842 744211518 242707069 510663121 938635428 990687796 412178316 985000790 18905393 300998512 519660543 765686931 697491422 722272326 672358602 732083748 667148269 917637076 768738276 967281670 721499813 769495501 945292843 964379029 322246669 826113730 722856432 920002723 282266309 641792590 289918012 661881417 581712184 941936068 727250742 926203884 94653629 819432784 796001429 802286512 774775506 893636555 488469328 599049309 389221221 833098857 711116295 935130255 967100129 997514041 755527899 921495617 551347429 685987472 424042959 594329585 935552251 980879998 668467824 848671168 67588678 605653312 627535981 986151917 814323464 860357094 279324565 938811946 794823032 972798018 717179133 728330942 605993457 889676345 387548384 826340065 717142671 896876512 529600680 726097008 559227426 738280615 875550928 891718106 205134598 430774592 932484133 996881629 189801697 873296881 978265132 996982030 713858378 735271884 310520519 525289838 686541836 881608894 237581674 869613043 826862825 964143147 85356728 936774613 19722743 743861883 212866897 322858393 138491449 823444357 44417623 617024078 23076702 30055156 268269242 342317596 816069334 870598390 150760892 290829197 181727068 589020624 705113385 781133106 259865476 869480748 997115425 997541079 461466277 606926273 789255756 869006372 932259043 958832320 533890357 852343074 406147306 958390534 492593044 922711358 76651739 181588939 414359936 911018071 19089972 709463234 106228245 452340404 46145650 50445549 532298835 909180999 606290645 652874477 982481470 990437885 25223729 360491392 570050140 926820023 50541261 669555123 837428450 934924673 746108406 782300258 773359632 880422012 460240641 532096654 352467842 533725706 753472259 843709067 913381748 933153317 516870681 807848819 273550021 844917686 232764461 485646704 90226148 185930719 287914700 379497530 120642640 581197590 974967237 982009640 405907384 525843045 948517500 966079062 414668234 546266274 933639261 934546279 412031965 808840980 433469182 621998592 484983222 515329858 473025825 812330699 642740089 699128704 878631435 914644091 395196983 666763125 325773297 421071970 458556599 685724649 765843610 859740799 334377764 689092473 816558927 898676287 760912218 917604165 539127262 984111232 596915214 617521667 269286250 540164062 303138476 704660196 609969265 931855902 355457961 695168624 387634686 824892371 708928062 925867379 483472269 681953888 295837727 878656395 768916691 943852248 74115648 293220125 404967677 704623835 97160847 502503251 539465368 736902743 59905457 611389791 232726967 358410117 843221353 886010399 349040841 922102343 912406966 916850486 643298246 794859660 129525138 720565858 530963580 677244173 581768585 617881902 967350309 988303025 280376982 652532173 121712098 811375735 475069026 901377758 820068470 945428633 399249101 728279813 473247035 720480034 362536727 724807327 277353092 458224990 214088226 934260902 547239467 923331353 730508276 803510118 27854490 932398346 823609795 931862517 810534484 885783509 831040487 847227269 521768454 602641707 676918656 915689253 443331544 531785304 915566285 963321845 752545038 790386633 863872160 985699139 283308450 448908365 135219386 395188031 733707802 889925886 836655475 974396632 900485679 907300266 62074601 925315376 498071311 784237866 777954655 900600540 831260495 883646523 387936287 934098655 680474975 700058323 365451500 715424985 154161937 159329240 126448880 813749839 118439174 419350152 203703481 229412059 728045283 916204999 729667381 777208169 7432945 414808532 588250231 971771158 861674950 862059573 640992472 759747615 808080686 925008831 615751675 798364986 310640222 465131299 651762785 828804185 704114905 980787191 575957616 827396348 283901827 386172408 645472765 723274530 723107124 980015868 567802148 657652952 283645178 638998472 837464643 986377653 721744931 852718158 725185855 986963547 351840827 635779492 166482163 485167661 177292740 858981288 105293717 900085891 631258013 795584243 280216562 558705514 971878144 996012607 270218341 779409806 506287452 645663020 834002822 947463923 211047144 280699691 727847989 989249023 439263191 628248444 551417273 601594111 407255183 810749191 442408671 881078323 283606288 305648963 919090623 957783243 323245508 859798181 841367647 982935806 289775331 774588329 623584981 692765005 104080487 565301570 992536802 998266345 998739390 999079477 89782093 966370423 774428899 790449886 981430698 983680062 134443652 834176511 168157810 409651703 906941300 932224411 731664424 844342895 98059883 856375777 344702437 513536228 730071706 999809910 436818308 500413741 329806903 648353262 919549424 952607926 467296673 686718725 267563977 697983340 870265059 939975132 91981637 238610670 784296215 931671584 51729220 87133321 899302373 928399407 292446452 600784146 587265592 948325769 236100508 276591220 36680167 933670239 27077984 307598469 311173078 685861544 598889983 952575509 793687343 824558089 149059786 370124010 947328815 993622170 395077494 443661539 63381831 655831376 598152315 682090665 647489831 967437325 1668179 923290870 117099179 510081547 783737768 899932439 18598615 79956735 404810541 775348866 644793817 966235081 133549843 589065319 936926196 976928598 685358344 897708992 191109141 644403651 571677763 906387724 853478599 901107260 314688852 338063753 687797376 833569136 685284308 818118356 318691877 737188033 762246607 929694897 298846534 615852693 949819071 979612523 871438457 999502960 17746373 823659371 288298247 641822181 396867521 482279501 981998101 984530756 703979030 940579976 312490524 687626794 225151487 978627705 776772113 873280878 247782981 655237504 298950249 350375995 779588075 800654262 213065342 569877300 651831544 704219937 489141370 968237842 567479422 602281518 939290629 974233114 885649072 911166835 208467796 389751080 575422016 598408959 426283156 759398292 409779285 855027929 318970557 921888676 73006745 799094746 548276771 726358892 940266544 948072028 193931417 929597769 390236507 466016716 918324873 992526364 234588795 566821558 493258364 675749634 225651731 378444607 450687151 877285801 64027994 507115479 553027646 640095411 466191453 856615850 39629893 464013916 240557532 844082462 436889444 917191364 286454875 330363981 909341176 916121331 159130542 673737537 566445454 766051318 582348854 924012923 52777907 720726762 912843849 914613507 26636943 697354636 807599261 907295612 771627017 952312642 503745136 968722350 378508348 579745886 211535929 336688618 231541583 878713324 917669808 966918900 318248467 768632528 97251158 395521302 15516580 418191838 419121522 701727799 324064502 387331733 799869374 970569405 722373216 729951935 71713311 830241357 609571981 956494950 456013932 718501235 72326602 510939870 909798401 983491669 98698221 938188605 813586312 916263921 687137593 879160963 184089062 636261927 188782830 269119165 546724970 600821869 65553905 130677258 37218074 809050692 159541968 445358941 660489264 687422829 113510117 920248649 581695728 730463131 523556450 529503124 346480255 775026056 728573460 729916104 303900332 356609976 387972330 418666576 14986561 625773422 436339706 518931285 125323094 632057727 44402375 899372450 759004509 911875029 147803251 567495135 426633303 543569036 858479852 950388182 957140372 974199465 516956740 942928376 10600257 971517461 375814659 890376320 51565375 609944764 38751368 178576622 830678971 919586465 274706170 478516781 136300375 838882280 453569309 567647004 418078725 925679630 595111006 710520785 174952775 862851615 682776310 984837676 67910135 575094550 592994968 941375227 702209356 802531332 903022328 961203012 187221470 980727333 642861006 989125356 633997904 932463679 99190657 682521691 986343827 998807871 130220128 805268912 478335532 643063283 306339445 413725876 270257850 525148384 821533543 942836841 416955233 762348882 753665825 966187435 101171104 170972250 475888054 938594124 355878326 952800615 49518085 775610661 980129017 986096427 15601997 822721639 620549313 653062386 499207103 504285791 64142301 987152825 240972330 758012551 801292097 953935123 904400916 938046766 87768131 821049521 914931228 946182476 297973062 961866073 584541890 682627400 796563658 854998120 891409036 933422713 829944494 924522873 671336214 976955822 595883642 736151397 978312481 984073722 182201157 827034900 517971627 637647106 654783915 989302419 101267508 708043479 135878272 592045483 888709066 895663974 655370522 844865040 532020461 735689198 784542533 933951350 499309666 749876538 600094968 684799100 614220036 661061529 769261832 948900388 232962599 532169138 111233806 849766872 438982179 911757942 483674279 975945073 377777401 593214526 63497747 190663581 165028903 845264189 782055546 877717956 287158732 617898257 447767153 793272849 783931422 942641945 213874656 779767615 477650642 864815704 774394419 861525349 10174161 568842894 739678395 973025249 807720901 925512083 857368934 969960711 706154357 961976017 405672515 636102712 63840428 431362527 537727344 911413134 518868643 706552028 238672931 622090235 734981993 908133609 561929138 736462633 804675536 989018877 764636254 924745063 647393591 825360125 27135692 730459642 836581866 877364070 966625126 994563623 478795581 536811658 114602037 577234616 313694859 631270526 726493260 747744109 230602220 893712469 695796373 941540829 717026215 767127046 49115253 848651148 336323931 902108953 663025119 724384118 209193588 588732161 298085971 577365521 312502315 973459918 803421191 917055960 264744984 351279935 227019263 696963212 814482023 847037094 336021281 878795388 359409419 432235565 89342572 542602353 667345828 843266893 693121411 716265240 958336798 985607538 667463906 945598869 915667254 980082622 150666544 416871743 687644003 727368408 634709036 748141378 218386524 455790015 993787061 999234011 696404808 807092004 374419073 887089577 627673561 783970197 481127476 697742599 613176981 809885879 196168882 561759095 892108062 919431771 74213199 783260772 285158029 588863142 374145849 608807967 454419749 974168499 51461571 265187879 339240133 635996774 209950890 659726183 400791712 678109132 246738984 553926516 131482478 876389181 116086259 803969113 729820388 957611978 16930643 504953451 21706133 341401915 647578441 722370421 266032735 434466320 629325500 907604532 681599018 750426666 514915170 793501375 442726859 839703884 234205548 740618602 755665260 843598141 423985302 520873228 24351260 579425235 826400495 863464163 864206057 870809734 122679029 647249344 242112883 602599564 805900013 932955676 668565476 834197015 850228001 996790040 375317426 719278553 876529561 952801653 601861386 972480751 421768338 736788944 984575518 993770915 484869911 746041760 589396889 628702420 909334271 916870565 628104847 951974341 749410740 850000042 722475784 724542814 634698272 686688367 159280649 635015506 208346419 964425748 438030322 693686327 952901322 977728555 529536328 938159339 386460488 921513408 28802332 364473807 106196490 668797582 442384551 448419575 33283766 757102717 641460359 714643603 721551084 808592134 113582869 682112344 687267356 738317473 612733977 694582577 872220029 998245512 761853283 841994289 74101572 194824362 712413660 772043007 618506860 956527258 74426605 611166876 581126783 966967261 139255613 269373408 139638687 858996721 9307403 918319735 344602886 956170107 657377868 824966697 742280473 999691491 735833914 843295425 574463337 717052737 816793127 898928145 225371919 621945701 713257673 997103771 497231261 983951291 555872417 904010115 562865733 869242047 591003888 675566942 646008328 927690180 414883924 634416588 281547934 604417418 129224456 897059873 691830336 728022073 828566872 918374596 7959801 528960181 115152359 381897956 53748325 127163244 147196905 676222790 774524078 843043321 58733437 716758417 310379684 524824254 234669599 807866283 550080728 670993216 552420103 730783422 79524784 685713245 195699326 225943431 214883012 824305801 473147114 778772836 97103033 716885621 272566305 846394741 505559000 908720594 205817611 790426406 285499075 374248827 73200570 150086621 253710189 424859889 614253885 981388071 697510136 807004495 573661243 621447113 424433452 876965339 228562584 990235401 583601933 621294568 216189157 491706114 856992629 994672171 493845106 678101656 415649756 923240670 32669994 215746566 87994799 317124013 66741894 135838676 815737136 862895573 98816260 838384083 272220694 322017741 921479826 984547443 10580916 69351209 46577709 808021225 695800770 786072920 793790197 868205353 763294199 834091123 868765986 997449906 612885154 910021603 168250316 789045264 671448329 800211223 647531040 826460520 591199293 966780050 394350293 512315609 514083208 637493499 511432383 920968136 400952736 462794981 815969071 952006116 909226286 915344709 213736344 559864483 215032073 316468036 719146933 894897552 699912236 707997258 339207692 440633837 595408909 875132204 136277388 168488211 113273026 203109880 616717027 925112934 364767985 821778955 366209655 377048597 43765472 658467515 957374995 987328085 454468069 618740901 590246561 784582350 204771448 619895201 908826056 985847529 327973493 441703760 176646147 606171018 636869854 964508197 529554908 729692083 341739600 570212898 238294640 849912271 612521983 683547091 360146265 947400016 16449961 932428567 555819478 739973739 829605763 879553767 445795970 755566425 140196164 634804498 398657944 764594861 943582994 978597343 912548871 975661600 188200684 550286761 625256488 999394580 538899853 762410776 668119765 978495331 116824714 628104701 769597551 913401232 799224827 940357787 326181220 392882152 990403235 998044741 479868497 668160246 595954902 718951573 547610517 579279531 754928385 818161449 568377054 977044697 834053588 905129490 892233623 925390358 602673269 745978508 524529598 840750022 619210233 947368486 576867927 938858476 947443268 989600462 391688773 397864984 860329386 885680373 631617977 969027808 967073292 989523804 725031873 786255883 350072819 434178453 997212425 999138178 485134351 971731285 530305786 598506107 817553692 961962925 979300988 982504621 756526648 821800594 659976094 928388129 303016529 591765535 194772221 340861862 860927027 979307534 602283221 633624427 944806989 981701996 704573069 733811270 955853401 976606808 984403918 991830788 781870844 873096018 3290478 387305634 991676028 994773033 260019557 870229533 405550226 482556756 10202187 470123947 861495755 928486000 988592297 997436836 505265530 583733796 143765677 358957587 206023171 813040002 465509268 907539193 919325324 982733149 127021339 692637610 721669994 731573054 601392535 866432631 674991330 962616307 214110115 339543650 544657164 861072157 908886339 926493835 238632475 680572100 146554813 152537835 970135284 971724609 364293792 671219233 255464630 296814135 115159656 279027409 679930302 873985803 750430027 799169007 387022956 475113202 93491086 876252166 265276904 452326771 146143568 914493002 441296115 604521440 413152016 859698233 368558143 988786565 173121768 673848153 996887568 997062886 935770174 997311195 623059877 679469860 484559261 644731855 70275286 539799450 628539763 996251266 553496353 859425547 728126111 845326148 696942556 895675377 760789094 781850143 143075391 523250183 385564118 753860305 188185354 428951837 525556750 755080820 643636797 831329530 858064489 927702328 459379318 864616509 148813669 664807904 54415501 468852391 74774925 346686301 264380124 971941828 471043901 787493864 534564584 590066643 840032630 970838790 445706420 527109187 25156658 427652135 134383392 971193239 376047871 488985004 621013650 871440412 773219389 955324135 194075080 258670293 587122053 882894373 671269024 993705097 907713286 911090365 704532905 983900468 964328121 992508968 486568116 619406410 906604189 963422383 913690114 928743178 150109156 350586812 186980111 209112867 694881382 746925240 884104985 935916792 664902658 791193960 3456163 929302431 480454810 502968444 447370458 525772647 605944520 865037688 850937399 860052591 722180763 726916447 60729289 262694895 566245991 725871908 194674507 602319191 467793201 793548513 461135672 963158563 860247798 995484286 608366114 615954542 956845447 996729981 326236348 840916145 981642186 989240926 173502197 766468264 628706956 635266031 440197863 650212824 382769715 897642416 658579715 874679326 774572747 946732388 571900646 789118240 675438652 775656017 214993473 343859924 417538197 756789067 916963931 977049960 536680170 862378900 772510298 794478998 397114257 614925801 55548054 952074755 938969895 942576316 918236134 979140739 778858952 845784234 394068579 937038800 846191536 853604229 147082129 627601355 58628566 236620268 150239105 688238856 933001550 973147040 759539178 981635603 247949029 740474586 838792941 938560196 620525896 755859105 387685573 656330601 183716959 363689700 541684235 937735222 381522919 910780119 732066222 843816906 720031666 839037709 723174709 949946843 88573530 471142189 323755236 419757133 545222307 988879200 326846821 714498166 250532259 799272904 39697374 243787798 204321827 357119932 722685754 956539658 947511278 983609070 505275511 979540602 22584204 84654588 604124838 694481187 152717111 702495804 776519255 907112049 380640774 952344969 897852656 993166194 894968357 913990237 578060892 599996827 660416533 930777010 4138417 245593779 887345666 938633562 863494363 987655684 925251156 949084152 342948566 356330002 25508674 375253243 611895545 722764187 188501517 810152425 629690259 667262623 851634577 942058434 9695269 727467856 528743110 984233609 973254112 977657920 52145833 198979803 691277290 741807526 354526655 986923886 504220516 583155580 727176496 892061012 417902519 907942348 625239908 634066442 774193830 940281734 427355567 655900954 279876286 317197880 427761026 957434776 651145370 677303490 860028123 871162808 544527766 980370922 588497960 819159510 770295363 983005730 61504603 120136098 146441282 880081968 865402927 879372566 445426881 929213136 366460379 692458768 13299282 370290751 445757172 512098677 396998271 633967655 587328427 731908131 148407046 274623042 963015893 980528154 682116286 869829035 377735624 971902286 21675931 392884126 57700771 441804940 994694902 995465125 241267247 435845689 869207780 966746900 405866504 676341873 297543175 512184580 52259096 896034823 802806329 925950474 573222122 667125430 903234694 915257914 787376794 860070182 97954295 676727615 986642061 990908045 66991488 853797439 891022915 912389902 844163787 981656380 216933481 515150382 212743626 367674563 380328738 798861226 814541498 912335400 600263801 608551438 671415332 733906180 498889868 502868954 620580614 999048265 900344613 985308249 218465495 950492396 211401220 752921379 985764016 988727411 6726511 438477290 877507056 928993888 597931773 662766667 96793597 404517849 875745857 971930834 98670125 575484371 867487102 968247156 208466906 470821523 693947532 780310120 547096308 747586069 456469854 609687905 192885986 675040115 608191328 734404937 967265107 997982276 291850243 410344880 386870085 754073136 936618690 975179649 726972165 942749534 609890428 934050533 651469902 905273090 277019514 544543495 294065684 750109803 744244591 788299648 728369719 796667889 567079812 983086946 833365871 848361659 73218913 908559781 553080078 989376087 504936620 672030912 521662066 831687353 855033798 965700172 329553119 857383372 935596101 970651614 240768721 355641948 531754303 906378784 252204833 307954372 259133614 699245265 282512470 994392075 33208705 35034749 281184240 494450059 742950902 774887263 769908360 881292357 922802913 992746322 506487786 567170659 478696790 548015586 216410596 839971438 810980185 992165319 793213468 949257737 118043694 181818361 742671139 755046384 779737524 846723223 680047384 921052901 619196957 820948482 439354551 860533669 211496232 906242390 299542419 307760338 161046851 827328894 328506280 847857122 843774369 876570887 888512316 899502428 457039517 886026411 596269460 608047009 28171349 749498818 314172226 793688842 805413974 869607307 488952685 505418023 734065904 769891199 126323979 398296769 656972175 866549465 272783940 479713230 485039898 701466039 890725530 983308491 782412503 827041463 719536261 815343888 515896431 941314922 713744663 946338130 216003035 594140003 82848880 537488227 599348381 636646646 33100258 105649317 121033361 951778307 596937354 980671055 589440714 749372486 964781682 976569160 363410683 907023693 580246457 655505403 230113022 316904833 825244454 968969547 700761024 832356738 580035524 599459780 585009535 598559714 910485564 937220606 668485096 837494437 756510925 870859893 846208441 983006412 538262576 799356075 203240164 576159805 333544072 369656224 60491964 671427309 582604587 934804939 281714963 649015356 23467105 168775172 259559753 813787154 188006141 354268226 206159668 284718679 954863874 967566361 151217961 966725226 724996332 882178246 241738480 581418271 236783982 587087714 690679453 910420752 374232456 837434604 107733701 387721211 128635228 441835220 79161462 171044753 840953687 875281415 124509991 495109887 940243723 987588615 638777452 826491965 396280487 436193634 456469500 841263741 515865247 738622059 329634330 686375609 816648560 948381239 119196046 520996326 220181570 261596930 306032157 993289706 813656457 855273269 880053864 957423433 862419478 911096868 203113413 457288675 141013727 617753450 746386411 770561789 175140636 638561538 687225642 718440713 394443748 506202934 330804653 729691189 266139616 550262746 177128580 746723963 605233030 871899063 355134379 534303662 138595743 461100635 963288182 965268753 715070506 862917198 851736558 960205583 353886806 963834293 964827590 989916262 829791575 996768069 871033412 954958191 415491014 847434748 577351257 954168201 870334634 899124900 983324377 991284103 297740839 352079741 321995916 907327881 927387658 929324510 768130353 830426433 647670794 881080892 751555549 766508121 475644257 954553948 132403794 852207553 196977956 310792229 433106809 514349447 884488109 909738650 828311852 963584634 957905543 995995059 740464702 909077145 966692246 977366774 738310013 811537908 411643376 775489983 909074386 989415702 970979189 981555873 146213721 362382455 452306579 775140838 208749929 907736209 752711475 997245376 403990390 485705074 76323882 598692953 971716488 980890467 866023874 977574389 842063918 978200278 566646794 960163797 587607414 685169440 41392432 536769921 11817259 974371674 132104522 311087738 162598260 986998252 389476349 826476069 203125893 674721369 166530085 677947112 269540854 570938637 250948469 325447361 333007298 878453151 801676617 962869807 285110836 324050699 372595205 874613743 551133879 946389504 150955070 333690825 252188936 757324006 429432631 755749684 342865132 832527493 800360151 842154233 569552706 681562099 76633473 760669800 578886291 780522266 452701065 527967298 639878023 849112776 33833517 287665950 581724966 659334267 779463704 972461361 967007189 982064697 226422524 289214638 649026204 824476312 664917782 696229722 986273373 996884971 835918244 932622136 632580583 649515024 16828170 673109210 459466890 782621255 286760713 698299502 30354907 850297338 843036180 905291154 749204868 868111600 513965600 639675256 745645851 802955451 913079110 913279293 637958507 996123559 147031587 473539288 409897851 507994156 629816841 769292555 92956260 641076357 851322425 870325154 277422173 829698153 947880616 951394358 834028771 982491374 739069245 985779965 330956706 867581477 660062234 783896024 462112064 751721875 324640745 975061063 63006575 815320328 759894834 837921703 280525405 394455640 828891749 968776089 633837210 645480141 793684910 829461254 319047301 831143158 468778735 986377375 364875239 628578295 271335817 984654314 642312698 882029874 106594288 632302300 915369042 967436591 30065068 751311648 532532430 639350932 13024915 772422246 393884485 408658783 81120229 374858705 886079954 952361339 379387127 809870106 957680233 977307314 741519840 760288893 627985634 750477618 886661878 944236653 132431438 820013847 987540122 997322318 893580061 895399938 923417919 998826964 846700042 996472304 723867525 974019963 95229699 731539645 622573590 687803110 745032706 997731179 883507249 903576223 46263583 174441596 680371955 855873646 577684620 739479923 393360233 987582338 63217051 218400368 799642458 822859298 966162513 981918483 204736127 337929153 66778449 789474765 780711007 943471237 912089028 917210802 93366601 996579250 26851840 979793877 921773398 983236026 135225288 348969040 720578279 867797256 448892474 899870539 437052734 622811255 42077152 159100571 284829088 463644011 3117177 50165774 949570298 956463805 21238268 766309115 776373016 818826273 930658254 932811076 133999023 783634651 265194058 557351820 595621770 679465766 10891206 141852866 26561150 197741183 926450315 973628623 243655309 895216740 587606445 651158322 43775150 738101281 687349490 903628582 118875946 451386419 911741769 993000317 142994653 902679502 904267263 918883120 228242082 827906688 81638357 204723669 181025371 938734767 60169326 234403887 775664012 992633905 787240115 903008311 461030555 883084955 921333150 978341551 411530824 823587165 701548401 866165081 150987313 375155097 669677507 945662794 832229890 945998599 25335339 571872649 841224902 846352543 826935630 959786638 436009819 959648177 340151548 698081491 844205572 891300884 559655727 920285485 491945532 836851523 796265506 798802927 596274008 868229510 876499015 930736759 31969706 781551346 273314603 444389973 298005091 911451275 919010463 994783737 61891600 482521159 831515480 850733454 821227634 877829124 601243788 627065609 608006395 928652415 91057083 827047493 751375093 999613716 136337152 989360647 401193504 844706046 746351310 955367633 977775275 995104774 382844580 455875005 395708925 416027325 719577762 882179765 156805866 891655878 841470930 853550039 912076509 974088577 77665125 186469704 588264531 768830772 563302076 658590587 923128520 993654318 799967655 902407496 529668280 969788052 962140574 992809463 776056224 914430789 151961225 611020843 735946543 811614073 834582064 948105663 878160989 907255173 551093285 796188045 57286778 535847198 57940218 864565652 205494482 518723473 308864433 367970569 486018819 960924543 396518791 632438670 911508858 952663939 852220365 970763051 407081203 838924658 525819991 527723935 703873707 809862098 323091326 422664482 323042543 677274024 12191173 719583613 988807886 991592464 54799701 272268656 957836773 982737660 214219221 953071159 153607565 663847120 892582193 964567966 420573311 761175150 9071766 926355379 927528735 935003822 819178269 920208800 857745996 973715828 157956100 861205115 655800894 869087071 15564925 513627189 468055413 532283251 706955572 824836947 877162177 920844856 217066384 892827253 133310058 309062935 292063684 997495829 715648982 855979254 286836873 523822427 276280797 737837068 707525596 822000185 122617644 272795917 675213420 759203176 450940834 825436255 755913703 794747176 195924783 383643743 977854164 988399110 733137406 790540193 178576663 986616834 256429378 720395554 270652294 331399238 297329332 821209656 165461078 634819825 561134697 859504442 227828705 556886698 790602013 973068476 159767862 497302606 769146336 783938314 540732242 887690238 886873680 988585098 931504102 998270063 395668349 650892167 379934607 933088553 740744798 893324045 726868985 898990228 691275429 729200867 401882001 891082245 551367885 793319174 860817360 939296747 789763129 952215619 492325042 675905785 876460555 914223079 724001550 830543433 363892703 509237441 600813111 783255591 237171497 290204530 312464288 734394133 778537635 790813547 362287347 758855430 881567948 916375939 119582583 589558088 637262556 912534767 181454636 187035214 961705020 966053938 451986878 742835154 628293641 673096558 89183306 401600144 39027488 233626829 261697563 740968172 82186402 552328015 266334240 298441685 881787303 885878969 300188714 629493946 764838239 801301928 952427124 989241658 868318301 972060043 31388258 543244949 686534389 871239619 82859929 200553100 492108983 995650013 58245685 249317947 498663354 801407795 909946967 947812785 34911660 662495980 174614877 551876332 597822670 792174459 577658566 657380331 154333720 280249437 291934301 425320553 93677751 253108315 12773895 161793839 578083237 757728736 57066819 867429609 589180435 677214115 264136317 651476464 463555651 834085521 535809495 626070320 915190979 931269343 168027185 947289495 137584867 986700241 955626960 961057582 947391836 947582006 607254789 974476894 929239263 967397649 372416193 719092369 743593787 835165484 993398023 996224219 576395439 809534724 597816318 983539415 126569238 324882572 813161651 829026693 561276118 869543266 655757655 665650190 171136878 834835055 680631630 844338399 905474702 935143694 660754942 834981615 420651398 896926648 603657417 806881884 53663460 264102711 463754023 823254207 731540439 813544709 85232781 497877079 999571138 999692113 77299239 995370291 910025146 999757618 301353989 324170552 253764105 909940568 782344526 795430211 897128180 905815030 343283856 389335260 170090135 243092489 120536778 609289253 530219835 587967624 509541973 879619395 739491535 761471484 522543850 628666553 830078035 948023397 59598387 775702882 327134440 408291936 306890691 577970917 47547067 834552029 527202265 658652153 168418050 902175769 690141806 734714950 964084976 984329336 964871398 984284596 679936856 699895752 515015553 573814397 395960385 442486154 971215102 992020803 172156019 461101092 29800185 87929056 984531133 994010928 333069542 669394823 236523038 302312963 524369813 757932587 324804972 943233311 321422147 784274225 541511073 762021643 505649866 889870011 273036178 516795976 92863246 394869611 202683820 483974069 868133788 977892079 279516362 835038222 321080640 377268171 862255008 998313563 366498435 773494817 13024201 261843138 4401789 856313718 568938829 640629047 332289751 516160395 659475701 711110388 653247272 930450573 337578833 878359394 162939929 847254682 260658083 716215345 395660178 447812214 70289277 98138083 153976944 460089330 438638041 611737059 191442858 987172311 546248464 612682832 895915549 978271811 929784784 934385780 712299708 854274819 502225882 835493576 316025018 475857905 266791929 331570702 260219974 701860074 389377067 805423479 193102148 995804635 609156416 801203022 490480761 601018431 944890893 978406033 381671872 571733079 671846449 737918788 415673724 798874191 777580718 979597809 815327589 956226548 882143560 991949720 14254352 195080622 340655467 913039250 443279214 919397106 541179886 770009914 61164979 224941048 869139210 944471011 974332823 988556112 390077625 458688329 439400702 669000990 872725171 916072069 843544105 918535301 16332266 296547679 19296141 882647744 800233335 863944829 269406837 515954516 320570663 876723517 454149042 670194478 101507493 733406620 902324805 913365474 91431699 417101702 257185242 795760081 231823235 662033824 810394451 907381839 190475746 232185387 720880347 990435142 298877445 657555527 248797017 263358415 727054924 798576171 249727940 856987729 379092095 794404509 636074052 702496767 705142545 911494532 234450848 834776051 67312519 927636540 726165834 838047926 956038621 958882997 613839681 650071519 535966871 855806410 164981894 330828555 712786425 936102576 605544511 984246924 883039913 972101844 118252223 650178899 294852027 574373707 250537749 594667898 169720142 321904516 282473043 677430104 324394981 450978715 504017313 748105634 95267201 697293776 631697931 768262339 493128109 606831238 743457813 829570349 274464153 443367279 420802252 814281496 764003359 909292674 573725772 644701929 240710843 331947677 132181830 139638713 989556197 996054765 231538727 555004082 28261413 568318342 627665596 688088525 278640642 718479760 342402596 666687489 226637498 907010591 196610495 532797679 171710861 340406451 850806574 923256343 728911471 889869186 627357344 637717005 837570958 885461293 283698567 438402638 481078987 857722844 352605978 513726156 947788395 982541210 613431917 854921245 354151179 538865558 703702655 724141750 712351453 946469840 551189200 830113225 225063249 495126691 573164970 749603732 333030431 716742282 537145450 959209338 404527169 484146303 760685556 815673251 238458879 734312781 253735922 449228582 243960219 409863466 285336458 434142861 921007750 942446613 310151092 971222291 733197893 836798496 269277872 743273578 424659085 776231252 892893809 999429132 972116520 975595490 6779115 241212745 49077595 864771176 350457030 869027934 431515176 565492634 330483488 776398555 984352632 999267680 769776723 821727459 484584039 885817975 351410179 682692338 285496401 757128646 809333428 838639595 998208146 999627107 152139665 225337339 203757449 315284513 435514933 661396153 983792774 985491464 64283500 871420869 822993883 836283687 14211462 515591671 893192854 983789229 963214745 975454125 519736581 744742561 393245906 406166186 23528257 965090254 323086037 698499013 397377700 668668263 155409492 383749303 338233343 352219649 887774620 973088843 428599234 511413711 892417843 961577122 871328994 905464710 73448656 957817126 655247896 873039002 883363063 885507644 207981905 334806590 267672080 711783978 724551025 933838157 11462943 456812572 158625697 819774292 214523453 250099288 253728296 368937942 963855022 987251448 633373287 720016059 877552169 948820863 990140523 990949190 334572942 666952008 46486796 821686932 162995988 993385828 572548216 613481243 156043576 984302235 17312227 641943991 796022060 876976758 437380188 901228751 146065353 662834234 828628212 917177217 298198522 471849631 466480171 823983503 664608858 834595783 380397155 580396734 371939046 385477638 567174605 690184223 629191093 860697728 521811451 936941500 193367155 907335420 59373333 142300997 572474787 622454167 552362194 654981557 1076733 958257436 686949109 696499318 106185880 322796141 335079083 583794047 294193986 618469499 948182583 997313743 573759338 783165084 511997410 966922487 873880170 900162211 343005138 523234491 990320189 993193672 620369047 720442214 902228933 948201906 74610462 386537946 531306346 989301011 363028240 517745647 506174093 918140011 196493137 680037249 255185399 468799462 209601725 603590139 34153718 952205892 987783121 990890297 385674111 575453013 160949172 249235246 884207609 925095756 427450672 845943286 562758123 594299069 795473320 898918966 306012021 408210069 101705953 676415381 977219216 994916352 62895252 733220257 243752587 374796331 970491415 998458098 100606720 851418501 218068560 584864402 521599453 723807274 856583367 900964937 672142245 681457257 679708327 979273446 181205975 738054684 850165750 999791354 392115212 699066140 852433606 978161557 205965258 857880569 271075852 521459148 674336684 895423641 471171043 919078915 88901707 330976852 478245129 978322321 35534091 321442192 69895732 474935525 180677875 864450310 932744318 943912007 361373270 877538756 882075803 941750710 687950459 989247912 124640437 758092095 961937147 987197141 180817339 936942432 723808159 893236267 230932547 650306067 406747800 757631472 602205203 731413535 121423529 487277205 521376797 909516004 953383179 959686955 334847448 542077036 597713923 714764359 861494175 874524280 423370801 912592332 718981995 974249971 116257570 483906593 491130915 685324998 852471347 865532910 618855013 828114818 30743603 353823967 806835175 806954706 100747265 445177539 426063761 764669733 169484048 344084509 436819697 478918551 192014727 406815518 313390286 915394414 15849904 754868794 401485025 483001743 435634218 449910115 695539120 829477865 525277225 688056599 797166765 955647081 609699523 913529551 526370758 978165737 260535697 805744907 281687813 777155899 972929740 981602104 144705396 186055384 157981213 536008273 704417442 999741004 652579657 694748215 792258031 984099779 932447439 986438097 858621173 869515487 396442166 556418259 302305781 803266522 398419681 429858739 3186029 222505372 562314512 730164396 359632439 438823670 659926730 939103965 361188325 807441217 937790105 961045272 591323212 873039095 833093844 837119707 338396073 958548217 705441054 773910711 227534293 994956338 854589440 872204877 279852969 814008192 429115849 826831466 829782964 881909020 712082957 738834128 419624225 876706614 453011215 892224883 917133281 987055566 35837706 191018829 359923103 545235820 398124689 469492622 286456430 979360639 751862532 922635934 338015728 663122569 879770392 987995767 857796627 982360813 525382990 693073201 985743030 998275795 980728828 989709020 969838338 971667908 847867596 953228473 497595042 728026191 153271432 924851886 297373672 909882681 525623918 809337297 341055237 566154115 264610613 518756586 730594154 997501730 619321297 785535942 974363401 977317728 13856337 911917962 857803895 972318157 342396564 816701076 181771065 845288458 738593305 918828642 283064665 727226749 395940748 627289337 964776505 999548858 151819338 963732178 537602416 903643246 139111354 938277843 875683332 993600444 440778786 977905141 608125313 671666671 304450869 334315739 485779611 520889771 607943296 806634913 53256258 707285771 8459542 731891831 566423833 825210068 170884829 776395386 360606245 425877782 771698940 939258242 421367380 460195663 455010730 852811775 79121522 932548200 600681400 719087519 426573650 620169927 88570872 895361659 4573664 594066411 802158845 913640983 608894382 832160608 259120346 435291463 315585543 983324813 821574897 981048888 374280319 452890659 83340288 687955597 753905263 800715194 928223362 970046415 758879801 951761049 760254289 782063322 840088491 868792337 802438321 805641551 609180265 786636432 565013087 879727089 253191956 578923421 120261453 248823516 507977323 832100643 782890646 904040560 258340891 348456422 749712341 940463332 611142482 613919442 6036374 642245029 893066401 995475403 308521966 672010281 828570795 930526389 933407935 988540083 150226515 294340307 532219144 907130423 708165827 964881750 534281547 544399056 127843006 459560229 987056691 991642344 346308052 688500882 597580502 994500494 501781498 895238784 500173124 996042681 299769368 760807842 768206506 994848799 232933478 600025447 825000955 903202298 685424383 858894589 92139889 753317630 160689728 563106452 32195034 143380082 789054005 819962643 365639255 470296658 531986695 796084374 312124550 696296335 379976890 964148438 986572014 990016102 19682528 641890419 193783011 530379141 743846451 770139372 693031991 808762961 170531677 250048340 220399528 968222851 902776260 905286152 382476068 766376397 387847161 940552451 820615099 972291934 149407136 900822444 886352600 947247309 994719403 998212147 513394220 565906939 472301366 821006603 990157452 998238384 557464153 966477132 243191135 904643127 480469011 968475478 378198580 611215666 494904056 595014119 495673277 585863216 299420913 796333768 790487719 992211915 390535499 796444083 600401599 714745354 986883768 998812555 935993292 972235039 426410632 896174116 423207139 522893453 506005745 931729458 313553842 895901745 27224566 210059665 182700380 413583077 715244604 791968032 289769617 482402300 577960813 619290177 393231937 588253807 521077952 769678099 399143418 736063372 279792933 654510906 923275598 958893780 212254798 292253724 916522005 960736953 316163542 970174241 486854531 879118462 649257590 837846830 996083931 998144504 851081034 977192251 71150120 740905916 861027886 985377220 399816393 720510431 603602075 817539735 143225887 238036683 920843901 978235399 328071374 366485189 146117808 505112448 374064057 622705252 318564841 400543732 779706531 904285058 195966527 349369050 249490421 600506757 705306072 937567768 745163334 754461766 437759114 675794529 234533579 688292638 938898364 990519454 908494754 913614382 607369559 731022647 897606962 935526406 109852444 490788127 452839898 768276417 709982244 744146270 538724955 725816717 144466998 825741397 406924704 796718353 129846635 763861307 276326726 474929926 279420367 514129654 755216112 979062852 752543970 884360780 580189807 925173801 991149183 998328759 600028425 873680186 271205977 278255714 410586321 703047906 580955020 673530750 815331867 932276418 918986453 996886674 987949956 997440478 705938280 933584528 963690401 966874519 189677728 452894711 529222801 997769386 949245516 967778916 877009517 904606425 722532503 785286630 540155534 584458991 760751710 898268345 89221369 683341747 784170565 795177978 831947227 984809097 618583990 789649876 770950857 996544331 354085371 550961283 106242625 177579075 963516161 980964459 192296161 603666946 530908939 899507041 903284212 913250089 313562957 517068183 555156624 653109601 532326501 982357757 494969025 558561043 159833945 282213841 284320476 288134124 167485191 938827186 371981238 512356168 549116111 932410163 494473908 732575550 720519610 836764827 245278645 789704239 907824331 965319478 627958487 966344504 361504941 369530454 913844806 931794052 739789127 847691433 258747378 854625944 207620563 385588624 12487877 281707381 959448823 992316783 533800024 782687936 588282033 808404828 158815124 246115681 230170356 971802105 876448631 960866797 734932029 885822385 536571104 893339888 707416337 974432462 996602815 999526846 528635143 762387953 341251349 732224622 295237284 381187686 25979449 287886675 242019017 462405032 495989552 820985092 76240803 747162610 798795764 991455285 368810756 795900318 964052593 987626783 912984207 936292456 185227994 948480471 229137418 993013476 447425197 733621045 918062124 942065774 575515517 769960865 840291746 958291652 187853260 793176350 321111857 557058956 331057454 674237392 528396139 878634948 251512063 411568612 868212430 913983290 894761443 927983878 266840735 604070171 975870195 979575168 639657597 817524874 53210303 219783899 454696230 776973778 604412817 874745402 11195545 520242713 611006720 768589462 836044442 897273767 551777340 644423702 757267666 801974469 807640280 935111660 795322626 996661104 468015239 833636603 912058870 964934774 762135429 962860037 459251083 721432493 257088761 612466397 568705897 963254694 566091153 917453907 414216912 796525501 892256433 961876070 257920863 906568906 827565469 863163162 38756863 182395945 658128009 850102724 932954360 951827256 74900925 551341422 884155417 991506086 545277014 866925910 623051830 707308460 493915960 733888448 624031447 956922870 461915316 470057111 865973329 895577563 152077258 740295370 366110249 492573982 76302297 251370072 73126043 381127851 841650050 920455193 249229345 787989491 384886731 427480823 604806591 868700601 702398818 785460110 559502616 672011276 444950749 556703556 528706921 604764535 214226632 888181106 47109088 100954437 77010162 196354610 911765315 933089352 384746074 575135424 58348621 130475596 835513003 857079498 45898750 923025489 982391539 985029108 97242347 470472645 903023568 962941821 525665116 733333303 87748765 585369908 162375428 664532305 273208160 832955726 649460278 661979797 316594222 456567676 214741162 899287891 811778213 859666819 782127291 810394521 136588076 888063339 285491850 313827254 171388391 564636607 268654795 322965818 67963215 548122829 546785248 969842386 575689249 797016761 374218364 441603394 71120292 613665474 928190232 993129868 676965402 874935486 503011041 676353400 981787768 989239318 660755548 688314137 991391536 994027008 608688854 788361244 145054985 891039676 156720791 904786605 367379377 613229677 395239215 829032146 208572879 463668810 618414522 654962180 741136845 887894747 354042219 356608842 452077191 730145342 656347935 811634407 723377273 786555898 715105003 814570248 691444710 854332946 894258567 930820144 611283344 787639560 438127983 564772788 851221655 908506241 78579010 231305106 814700202 946838895 958008949 996034937 905909465 973930377 418044021 761369849 855765833 898855837 518322320 935523647 864193517 912496719 262567909 824508868 238978275 941603170 134779156 922087834 507015817 751040674 291698179 799884508 429284844 506839399 304428121 364641895 526839867 703713994 129750572 648984647 787837858 966078763 745458240 770500942 60476797 563616746 412873664 756391532 438534005 619199865 414109784 689713135 781762998 853251286 518819665 741253830 775661978 932607754 66111664 510428885 173854134 518849776 35153764 635008718 701534295 955871978 404502735 463943987 485852061 968728955 587185530 800659355 300419394 863014768 675776594 688695124 557176385 558229519 849018392 953976843 981467589 998805288 856595128 909025762 132020230 971356293 834855906 890252809 28588273 127345539 278134387 775590276 856346939 961811518 343770845 790789890 132685523 138029955 344694942 480524249 664735302 687803228 834609790 901648761 705065284 724628656 839303609 863191517 565578295 753761117 382227008 567049755 419775165 465939704 898720805 953142745 467566625 661274331 659771221 938383011 876279577 894123510 327386357 922056031 984489898 986764224 52277335 459006646 546935742 810953457 255496971 500211129 814309076 888190821 796067398 882105493 652066801 875077696 389111837 799094920 906537226 976616407 24082487 701114201 491874722 541906688 31194108 908048779 67175152 577066390 74956640 804476653 471450212 523823764 56013688 777193485 201291233 354082803 211391153 893337659 465884830 860018196 678980073 746736983 69087418 569516230 522536919 887909722 874007988 929193932 458009259 649024226 160207426 619424737 564531342 775679027 454507331 584157431 991253013 992175133 721882724 802239378 566121671 875562315 613592938 745707043 291834107 765325765 993445433 996292728 379595683 491858600 869416614 938255840 730251149 758805983 902315757 972349697 785678992 945068089 405966626 750908943 667285621 974847946 401961764 460012024 37888901 410787550 967828711 977636093 78534811 270535897 693100419 999480631 444577859 530696063 546684181 941148865 961370717 962430067 102631221 424208369 930397673 996831598 343577246 462232621 458716418 488123779 788219168 853965346 656336452 971710893 410489800 737626715 61849135 212268017 719422386 740540794 397678038 667422253 709067483 782534011 622360460 975981186 516432880 759839549 910849984 930235082 146562725 676691326 168694277 903377333 710888235 783185414 366558123 973951048 572752763 657771997 558776457 700276644 699777301 971711796 978035301 979075757 317942769 935165491 296647059 997281620 767226023 879982522 666895167 872351820 894766760 930795849 227743392 292272524 669424891 778943473 912719940 918940031 6477084 94395659 359520279 584895609 82655435 882403455 863663802 921473921 69538183 609560426 934874067 938892469 365265141 723952972 430515693 573068078 544553354 950635096 702288259 917860688 774659596 973282700 241465503 294171956 985938489 990154461 121778048 278478070 60804 465737863 240644613 606092410 428949812 844909573 82005224 190963030 265297362 679459090 572655256 821980215 256071357 977860215 878438515 900545820 764130786 965770957 810322498 897573157 653884140 701436587 303270062 715794816 853373449 900570412 812965328 987532595 397662039 443682900 723688831 790382031 294299553 844713143 248402814 294641476 543350168 988577441 731423743 859071476 385134990 454240493 467756983 728770208 637112886 882771873 909049906 988814137 458858499 489427509 472125481 773146584 687227238 832537583 229769153 680250008 160642442 555861775 998861366 999474082 422314610 530106143 126530613 912922267 959833751 960825723 302266545 914777752 457668347 622320809 153782677 998024823 868219400 919633303 874293534 901863877 266764553 559351050 989754712 991123631 74844505 179939932 558316578 779601397 327475641 486868127 986708014 991673283 797123814 799154751 452048602 457565557 257551695 680745949 519524299 559784570 899552102 974766085 136867215 214565668 533391790 986987914 621028760 720075100 547492087 926864405 832489698 918715138 389630072 702593886 736293821 932882676 35750209 35895253 296403513 337062836 144151179 900637509 879124114 935912054 105018514 336518073 870973880 921505116 859886702 914484934 899677614 968819937 431607578 766149411 74809298 452834109 369490466 530079646 268698358 364213359 708626352 986862235 475155321 991987006 320756651 806488405 157007188 958577618 778442146 941126802 250659088 515642829 794317107 846421289 455271973 587764621 36554254 564446078 840372176 974805835 573114797 626910783 788328172 992998894 773217545 837387501 654556675 963751125 37651100 254239261 539581740 941373981 956996049 995362033 799723789 991599938 396722375 429831054 934945940 941250343 675921156 901134714 682473021 841875651 447260459 938984455 809397972 960810711 610962666 710821872 360528400 671564025 914024649 923631643 301403189 556040424 444323030 517196888 377479476 567912098 768810084 800783922 265861295 586535879 200967350 579086056 519250500 756599586 408786320 860739417 856344905 959746246 445270522 964351934 188328354 791126824 249486410 370823342 93367035 431985930 651749524 985708577 239372765 442380550 319409967 588497958 558421258 644104359 798110708 812220277 628727245 823263828 407219400 914466814 732970199 924316997 218410677 684484637 185766786 900661038 740667776 974032175 459900859 545204785 498735371 955238063 550335210 701172873 332632964 858706587 312039355 451991805 646456717 793246302 658878501 790712697 147194645 751832502 726875002 818371221 273242761 642352554 48635944 279885110 523012867 758576285 581093589 957865995 504660524 864946153 342326323 456674141 6599371 100544693 649150032 835181646 96275464 480023782 960984241 970111919 84727385 621375370 953718524 993354229 579087036 626465254 166789962 966508729 787059055 911299601 86584714 389089162 473397094 720921473 826160092 913149560 199680335 267660653 770512169 935047560 664611839 886690188 357722820 942137920 275845594 713039801 318648416 481513071 855183486 861182357 421241144 750953081 587323610 964495158 15164899 553814588 127588315 848554614 988755479 995761196 494604591 729138569 102748671 164450452 488754684 655612243 873642405 965826772 826651433 963635470 172436272 696093163 63621972 856212416 781253298 921923040 234238262 535942212 974379652 976399451 103923374 307903426 859140639 942700646 895580547 986140889 688420180 890604799 786624770 886559310 285917444 943231614 738278614 750025085 131000828 661811504 889294192 935091575 311702791 318651262 995324127 996156146 913965173 936308735 29674533 550233035 577298171 637895834 181785862 192601699 697288359 909588576 602913343 885817970 122571315 339907642 224691809 474676000 662605639 938239397 179650051 587814797 578098577 868324419 861732417 872601791 845300063 870105471 450715802 784016185 953814807 974987748 322502369 946226999 495721576 698963904 431434128 481114036 995094682 998152840 498046229 782306251 64341715 180906303 958381549 976916509 576050551 705664072 686578771 801195901 962897282 987393380 276748445 696228695 651600885 791288740 116395793 381703832 589119882 665405697 811006154 879076977 180701232 555453894 782706934 837692816 731002981 989057736 766767650 895393007 86702395 450486465 273454352 708606513 306229187 964349317 504329137 931899898 762383568 902275588 822644142 917014922 280490842 724877522 700946692 956021593 236377828 465141821 150744878 533352756 488270402 907551748 88949179 480465299 775631033 856200858 804502988 850954561 516027772 972255573 824215788 953328194 194399539 601791727 523418888 938718917 699927871 947668060 867591806 929284365 844225398 905072708 266936227 671271825 262248097 872930022 951145033 966945215 826166313 966853378 539780348 758964078 1057174 798912217 122576054 291893249 805295418 929309663 453705797 758355425 898621761 917113392 310054932 370739082 330879783 591327716 409992065 538739885 70028801 822938012 111967005 665027355 584540330 649122391 490363838 706751185 25579291 222574373 9452591 216062411 405879441 818191908 537168957 695099340 105607872 666657786 718012384 782596972 275451252 699805104 705691901 765216772 30796272 626234756 64867130 778456231 860537238 986117031 181919459 466690911 228718998 270126800 464143664 757712663 311000878 353869010 31217848 721153387 256899693 303207073 10750666 24092021 576830071 907985750 80824296 667684759 448653451 702451675 207616664 461553151 55705593 201474141 138379749 754656809 679818700 692568988 272953198 581629597 349400968 719216731 237273021 873738623 73891817 961504818 455168584 512526300 486457284 510577248 94327259 289867911 899556678 908137771 840400672 878728355 893164690 936007111 807602611 825141233 529704277 882919483 714958623 791992772 502895595 691788949 75818972 313810503 425198264 595104380 78759497 568417498 656975404 699435349 12232563 202196253 225380963 254017673 79627877 645873209 366586328 601691183 482508008 981581719 952490205 955177158 519781765 847198364 407089657 988071598 513175508 587270586 657391286 798874793 769040681 943651738 731144540 919659979 43512530 803239154 567628207 705283038 651264332 797194477 498591047 831313760 531493445 652058935 379730748 628952834 220650575 648223243 744545676 896277712 301910822 862900412 55127163 278357652 123040654 325379930 846492407 976263446 568471456 834718355 524330004 706263344 319673909 557432415 404272558 482111908 871064859 993154670 569318100 629410431 9247791 640299765 904635065 912263862 336025575 510598298 419355542 604904568 948175652 952612056 83668593 981074480 323219266 384859845 327739115 471224238 580532746 742193103 477282141 997602997 515074297 751183600 23272885 463708925 467001387 602416821 638696929 915648968 535272897 943983562 609175622 986071140 83982284 718291893 841788625 953551162 74726717 395887435 266085492 502284500 21489230 944644381 807407601 913333975 483826810 635963276 309359275 859784848 812853078 926136358 882028283 988061376 147310778 508319039 315879031 463362133 846475750 846855367 517912790 752450954 245378744 314851361 511702270 575785028 642101588 651640486 223649744 804682642 305376716 311284307 451897178 506773529 343960105 840907020 699426327 947638603 563281786 739537893 210817777 730325008 800069393 973217835 915004987 922451006 692050023 775524991 84371630 766439145 546201601 733593550 869491368 911502867 112609234 148995195 700976813 840022270 659406098 989667359 581157614 944274758 824674903 875190044 974240516 980502773 262688018 737539801 510644318 595612461 535665658 808506397 460221168 910800204 697369756 866014014 208304528 529509913 929521644 978808954 806570588 839462406 636811944 658660232 129655351 487504996 867644078 984847394 625094297 765769683 119529131 445223314 17397319 516457603 161367577 927866667 812537115 850099051 766307372 852384099 416651790 480702823 187352538 458107198 130076651 608295056 816026091 838925084 731075774 757482149 51642849 104144639 750887939 762670376 694158341 797078259 481749566 533173918 53650213 617414694 111067889 998656990 694210655 769847430 376044735 920222313 562632774 782864417 347918916 601966936 736142177 943656942 225695326 588759602 683480249 972896549 121557687 322072894 337109908 478674080 866561466 933957629 265038449 581273222 616926332 849909154 128220229 887768699 828999644 944468392 61590859 931540956 862813121 978239894 880038822 997482988 635434087 664871011 26928238 422408208 973849521 982681441 180485876 739458109 549579866 837712384 288649660 866651250 106284778 476476001 487492422 887141578 531571092 534187823 721649808 733462955 621790968 995774813 391077430 968589260 651818172 819252737 672706513 955473454 285032401 534659761 237182422 751324417 937423622 945319277 115242701 134310867 873754670 937165364 318832635 471990197 671080105 683775131 195093150 578059179 959810491 994718005 35594196 336966799 862507609 984446660 367045386 850552471 126358230 471142381 532112181 991622647 78793863 443478166 913454370 978419934 143830101 595817582 344752827 941238909 699597633 864280794 152218385 859045132 119517297 572985364 487443281 650495174 211686814 254080293 666228780 896754438 483931177 699263398 422348770 987324577 707588536 805845572 886366726 976401346 292803452 478257031 358692280 604896763 774528827 945643824 416142020 850765179 374870652 837500652 178968946 873984204 473932130 503419228 969761171 973471117 889301271 941853501 343905342 372513269 191034544 483602642 765386005 768966680 563205900 648988085 287253343 387884549 616760965 706888065 574425386 854695090 994619566 994850518 67993674 182564457 287851737 555424811 885314808 974863367 760930354 975043843 436993812 587026002 675503861 691265606 995413824 998515515 225201764 724176703 434361240 903891234 966010995 997107072 881887918 911762824 458911306 922214235 525717325 707639218 326843661 327747361 232970251 460113745 262328350 557650486 354383234 992757200 774351829 848089448 223366006 526469056 751851429 882774023 511984503 561540952 819768483 877642934 795791618 861331757 729138307 755599223 336162112 958381754 14868609 114470371 59225738 347451308 445936322 459254185 727704497 777258658 147602295 992546521 54104178 332662436 235060676 428389793 845087856 896826017 57393271 353285220 251933329 397252791 924132782 933070396 655191051 960248137 703487484 918287851 391615306 998414551 967752444 981179190 685278859 839615627 128221728 268716499 704201342 862237732 573435432 889994845 862973618 868690977 278990653 631391455 466552008 501016770 286603077 774327948 614369768 724840430 208701561 758540080 458421208 665395937 140209668 440522215 507600370 585106657 985026183 985571184 393362243 530133479 912294494 980755736 395499921 543319714 44279524 847337930 733197431 890978185 919117669 995479906 678116523 781420643 80088953 658359916 158619772 273938265 846140374 920109976 211613654 473206846 66883187 836451399 249582896 679900792 120529972 639065476 405388875 454132114 677265470 941054107 126598392 691287690 562236959 952994379 298549361 742404408 793231104 991516112 190389970 789981301 161075960 522223863 603374011 957775461 434405920 564668778 826591294 916198095 590065367 596147830 999188597 999308042 942327923 998824670 818843061 935250594 923004963 957404167 728537475 829355223 535731172 859095991 575676846 715197412 590846638 736511477 195171570 929471228 266438881 811848160 480353291 890005234 102106285 620469649 875661470 885497421 776336773 999434945 540912394 859008345 936515099 966307992 849185308 849411984 36839168 255141229 958579892 972826389 321991158 427081780 961524932 983758330 86511103 754944512 474027403 565494015 630457390 968980123 791835753 985886336 979369034 984445251 394707552 774269414 314670943 454227574 878311760 897385401 836661119 977385792 397944274 416206579 563658628 884918399 545129219 930931826 718596241 739225597 45373886 532785859 222808233 902292408 948265070 984353613 492039092 810189473 253218651 403913336 620863635 931607575 710222682 753676557 652276820 754135416 40079436 986481660 611924240 852157972 434030169 541538827 536914007 819725710 425180192 565825905 88336126 246855876 439058399 717138772 302029242 698758098 932102866 938025316 971437631 995931338 640544679 695036067 448483189 822351131 232177155 467202659 438150941 475542905 890850420 965950547 317212002 545438586 858008930 995118776 8972346 177243220 653360744 754027340 868300170 949703757 3517553 578063626 517623005 948821109 395543119 509608502 269422282 855056906 909259279 955695210 767387181 973915377 501990959 908566474 298193583 412928804 741107781 917618039 882156407 945086823 673291435 761053130 260663983 645108714 651905216 706089696 389260420 420558443 857950056 993711244 931698823 934264019 3895567 597738668 403366655 815713959 169141286 467665033 22714391 74053700 495985318 984367687 777934531 821414507 209106722 273513544 64946163 990513123 255005238 616755355 794137446 922519683 947255179 973057594 254223681 845893884 988597507 994740947 543698045 976342056 680375388 884099409 523081743 989342549 149733016 983264064 306533622 760037364 489730170 599008458 201920283 508259834 139386830 924765415 567641894 593042873 305294475 333815349 212032718 599397784 128675193 752899067 737156037 984542179 510412772 568650149 827554933 930225856 469600013 915764511 200176884 623005578 894697195 952032640 364385341 962376030 374555750 694977260 914753914 967501075 151043917 968508982 520554716 631061478 561084947 603681146 296682701 729820458 890715467 925175808 58737036 64470904 666444277 962534568 745826149 746304902 736561885 972090501 984739836 997488213 64243084 447922727 861033565 928321139 969835470 996280410 153654184 574093892 873017184 980009006 105574369 421770159 554686081 758110813 989175370 992623509 845952696 993953666 102705192 652186176 178295350 972627260 261704816 735643216 886700977 971288966 172677627 382704272 497879081 904869812 493735307 844882632 44167086 546370387 426296603 902229027 623876876 813493463 619712356 944560303 856444652 868560530 693175377 863343053 704655988 900097983 988230279 994674452 300773567 381599154 593750160 743591652 703181585 851072957 402717589 458197606 758257885 976276397 71245114 224759936 17751025 737383165 756615244 866925219 278799153 856680868 376004969 455248280 76275764 279279017 349150687 425666598 731158229 970203466 773547637 885320484 165111303 258562314 782248271 940109174 962993590 967038556 165621340 726931228 364867301 556328094 908942397 910118534 208796057 836158819 545809424 955634458 647172612 985775212 904206909 906949333 476579270 597245933 824554469 837052698 860574730 960026207 98656684 807570788 29445815 561234720 546613825 743402596 864817258 938229382 808799827 884394612 493569245 658775077 721294276 723208019 536231148 807747140 673324741 876154972 944663013 987659704 878623948 892521752 475686646 988402831 642232423 841371276 902238377 950609827 433548356 972078761 398661488 691671376 368190755 516441409 556396333 950916905 879353489 941069629 402576154 543205845 273981221 957395088 528489809 934063510 462889827 569826680 720687572 936670853 659353504 841061485 418189853 962853030 182816106 323968294 118481879 166008887 291068983 472827115 753137060 996542623 498144727 526220355 913290223 914098640 768698035 849199868 481493507 976432342 819121488 903015451 355840976 776801068 261078205 473770660 580218936 734638764 654104672 805967042 217170142 878172648 186680311 187585422 870957172 980714564 960173853 960360357 433908414 435153153 923802772 997283030 860594098 926341213 190053053 711926319 514002462 805897813 143640781 871785522 181452402 619753201 505152881 602938645 226371396 635418215 806165872 808932233 802329212 811832524 498048082 783529456 343807927 686131763 852370679 944708001 705695264 719949275 761100688 785847850 342554503 585812929 857711576 885317824 959357842 978441330 722300179 946361499 593925649 894125575 400795579 926715336 980743814 991748597 569724808 580015296 746679325 975513497 24358830 537714188 47110052 334203594 780709356 858636765 424383780 671993457 449662658 489956050 53954543 831656379 21157895 377381233 285589891 668628422 273416336 652880617 387084054 565301186 731130896 820174231 646036308 830713786 979962151 983750639 936897152 984733960 616467417 996275153 32353800 408513411 591741556 879793709 93866634 521376623 696461400 930446110 827721907 933011330 758656792 797012192 803320889 965657591 269500894 740005477 72785978 309862001 944067866 951745740 608961412 854791328 165106678 851618792 627934201 810218312 30200309 571094689 466121820 964617681 500547718 792008718 697706315 865240463 934923008 972287045 212076376 958867321 509966037 540194829 860602358 866278980 21017233 126674326 617957639 854671298 154189401 542876352 413401291 977018168 149305214 603997943 450293591 797662082 781030030 956772710 837997010 851820363 16610919 546620756 921515522 945075293 501211228 560215578 537716861 745871758 706624811 761167624 637926573 637950951 418318880 834276385 327390552 432194936 439398755 671967558 989526938 998861048 208724718 671748982 550252613 973761414 396661660 619728129 53906821 954941734 468829086 628848859 764479674 957627611 61404442 824953456 295239125 494738731 347378679 435903553 171456514 551164619 944964409 995937453 441369030 905276560 969765733 976403678 54797655 734792396 805329812 876783322 678557133 724194373 574223977 586851671 928218285 988612083 740962213 801887582 701568936 799416179 945701997 962276165 851967413 924133955 610317162 907144310 857163415 875864529 311860461 902690517 423670205 684462908 816994695 840926785 299779965 391095476 709560346 739119807 615806131 844177982 419113122 829320124 543352820 634884309 820043381 906098025 499853118 950194504 357463436 780134360 901955423 920420509 488676041 622594881 510249036 733337589 139865863 832650783 421717763 654415202 26615325 335019840 701596315 765009397 450276981 697896925 953834013 989649175 724864204 887657353 430128706 873259532 42733918 553112481 980803674 995844302 359449411 521016773 401953307 565786975 786108599 894316718 449872108 731585581 448600927 553232190 978270401 993028967 367267039 889135728 327456607 938434842 763802685 853415232 386974707 914556194 929038753 929311055 177501771 534246167 13307772 542966665 65808824 920513109 1571861 621083360 544420248 580233750 438241212 452425138 755355771 897222494 111599908 510753023 645370032 697429724 505999270 944240220 420226185 677892008 674810985 933028332 141135836 897693314 902367720 994529531 670794862 878869766 312628199 657893667 706308765 841889209 733566165 994908551 280146442 852621654 358187309 924200959 150435362 418595618 439367750 624347730 984227262 989810120 949003891 995615417 531764993 882306722 144714048 256795579 2693482 59977345 105547526 292861152 348923761 756796224 49795120 735555110 569065533 914178684 614291953 621575542 702877619 840372771 38660733 392517645 291748514 915719195 150524157 775591104 901393491 997101730 977992711 978246584 809854424 920510081 387622814 876361186 671662017 892688632 55546565 849943828 772479957 798245125 688320237 784293591 15116985 459675347 247322647 805619698 415461965 906996472 854919392 877262167 507196292 887580512 738469251 938214583 983601141 991340699 256519602 476056483 325190312 769906622 56218282 510146895 612240644 871218337 686926360 722992379 622937930 714613796 634687871 943256667 943309428 978867097 150492987 842813137 25392510 804110383 831080383 855101541 877364933 894666672 323802873 622100176 357930515 733624790 119796815 306232496 537598408 941639901 196910093 927675477 140171407 792439534 376666130 513358569 675167580 847215985 91693070 760823865 785617377 799729440 610137415 859061183 788948917 802668850 633564803 840319158 326972297 395028319 906479875 945498200 957547543 994944212 729079939 743140545 873014876 890069638 700132992 928515702 204359748 456412978 515762335 992251310 80726383 473178892 955333048 973667506 872189251 889760168 305006963 992403470 374131818 836347078 411251584 858271056 799420824 906262541 476476455 604572544 317512895 649036691 759474245 846630685 289102698 457638263 582105943 950380968 269174121 994616651 220049245 496185882 388443452 780619444 747061761 937016251 49385886 226162898 989277062 989462854 646427756 820344682 415139803 555471814 397140938 895654968 184699745 564603199 847299196 918835760 415676675 637089483 688924827 725400719 339018465 649315494 312419447 775557179 581764417 839848079 482925035 664437448 389875379 862894534 153837797 219449810 893409091 908805869 716709089 919447483 473885870 615757473 122445952 806437566 958690212 970528225 741194830 753043401 827872439 860829890 71593645 841688950 296101269 770657499 303308988 576850974 498581902 595925477 199401238 226157202 346159771 584587920 89003250 192344229 436454701 847566517 364543563 814363250 605550734 690308111 260664234 675246886 338199045 922095597 112861112 813183570 376784172 465954119 595843379 841597842 866302149 999705190 256939592 930012322 104913019 619767758 638644846 935203986 869745420 912994333 210552954 514830359 314047423 470953560 407084882 980342025 926030562 931850753 804323978 807427729 249463134 836390088 136723262 458453805 812479826 895842668 860968625 963236272 708878887 735287712 120936434 281830379 2101992 545026666 143033597 814824864 184407084 946459599 528039763 643509001 715451025 978396837 469672333 736619901 100892579 469030028 196675529 837717463 359426127 421375199 586676478 796981900 429358515 738832213 829143015 974176261 44601781 953403988 486295678 547377959 86753052 425749126 949705421 961470731 393014832 526052483 171893795 287087869 504074454 899724416 766022099 773785076 536719780 582818543 496434714 985715839 804401159 824844124 424407519 484762805 192412982 551983045 589130593 722369554 275897999 576876998 807388738 846211057 517929691 800834566 224876482 260025737 642756836 972867968 239736956 298555468 259473020 880504145 699678563 922745686 742782095 751829205 554501296 887992299 632325968 890830167 694408121 701196408 808457788 975291173 924078838 930991745 794479121 950487156 79384391 326895033 985440893 992257822 226123867 649285995 275391288 422892808 126009943 515031274 74132679 142697647 69748679 623957950 228343328 551749588 186195071 886139787 955458064 969138240 953267881 972308860 815236541 968452980 916965834 926238268 739474866 947862334 333802075 673669401 66309631 102722466 486289874 645924782 710634391 856109377 598255758 903418234 193515934 863460524 862758322 903297051 318943217 652416199 247841876 934008880 973372458 987213857 73032715 987548258 321974361 743425847 819973951 908879988 19877997 112670050 208288885 842556033 318658405 955883008 738421558 874727280 291945236 538872812 985973960 986657209 148756510 933904796 780733147 980812402 58491442 659678545 537646959 667201686 973239708 995764725 185210092 849624629 704447248 798623896 433492824 479863775 227503463 501888441 270621063 291757649 14342869 382883901 875079618 940784155 213298537 968357919 182347605 768459046 502670108 922874966 598261571 710381247 969492833 973896732 745564287 939915845 139265142 864999424 147099991 903400839 920913037 945550174 359203070 945174417 77094877 280772734 101566041 430660222 138801022 485405574 358716341 379846639 971064302 973386842 272303769 987679317 322668040 865733144 919741449 955830335 601248810 975957880 76326195 860294596 590228307 925200842 939933143 945691825 545358467 752003983 303094149 905840345 736502532 770461478 742427472 754353703 867940239 979267983 898081037 901620715 344714593 996737113 719623670 762602111 349186872 958191561 847646099 957460773 312755724 489543296 659774495 760935795 172075611 433002931 691022865 938603723 900842939 914280454 256345118 930504533 470161600 921416858 246571059 305984909 322280127 449224437 716575586 783445851 805268532 878607600 640329824 730343454 5945820 939086343 807017724 833570393 221238746 242507865 245456022 717277072 420962366 947185922 257469708 933320691 273172216 675423899 350051024 637227855 778873270 816700965 442503681 771181364 400228350 934102900 106129653 457726035 320197031 946489529 726395666 941214174 547402903 723638449 491297163 893375694 636540116 868633290 452344795 828852507 455186620 532648411 446983464 867830154 221332802 675542612 624869497 813328422 686751476 754442483 453686573 802413289 214540806 830934966 119242923 321112742 341944478 850412240 593883363 922144751 247384807 860413884 941314193 970072445 72944879 309274790 382875802 535581708 776967593 853809027 820255084 896786714 173235620 391486216 564156099 643428025 161630486 471736772 594774973 730614375 72761773 540777321 600216736 768661217 314219775 518746338 609981142 616265040 544373679 861594910 993981747 994118140 960863813 984681745 423356999 673404855 646670127 779849322 793011079 877345419 23020304 302240173 455921752 560287913 999412942 999616683 533706772 748748918 755937899 961572255 246519874 358749873 37024716 664256986 429517989 821302155 409933540 492791790 603733398 941799808 513513868 836388643 339716864 605596068 680157002 690902619 293081951 731743469 342323063 500642260 411719160 476498430 544425049 843179951 80548617 638811381 892741907 915396250 414180087 767955405 31537968 148997336 833340223 906920069 689935054 894662666 926617762 965160227 153045145 995750956 608192472 900986710 885010849 900064198 707939230 981011107 475488505 861236833 292047337 384060569 800743042 826498957 177823544 642916474 685947505 747915715 309218156 551008789 601169581 664296079 19803116 780600767 994556518 995565711 913583539 984601096 238089318 424419257 891940275 978945596 546042689 688985899 673473741 908834210 742815322 746837397 27095186 212899036 402621105 818743050 353644495 860750505 513898622 722604546 459955887 833735095 234830721 253620348 333428829 989611204 522026267 938122433 248456759 379975598 306398423 458852729 479478929 938054604 705862826 793961185 401456732 730989676 905009052 919761593 867164089 979917350 456113058 737865798 865534653 922319546 609233568 899033794 391460240 907391079 405067089 827949821 136437541 893461420 973773062 997232085 140939591 319766045 332913322 628049654 814737340 983041385 880149732 880491148 115328872 682249657 641065405 647317844 121594620 762808890 969026970 995178181 934789835 950336142 422846930 722988600 43207029 282548188 184463862 296722494 741561280 743520932 288354148 373696503 66578809 381448609 187362918 919226787 407919711 763878718 508410579 956977373 72401953 89029546 856893827 919688884 337634019 792836542 219469153 839260843 141855043 509623831 9983757 513935121 406357884 582186517 596366506 837712696 335411742 723347315 910227002 940705106 401187183 418236536 346070944 676591467 978229938 984950267 674208131 989190336 6995656 223769856 152008204 266159918 268327456 448332853 22887878 643014614 113146624 248677596 849372541 966854559 193581816 656591672 488631830 962321148 249140947 871947210 995635445 998668319 17369110 342119194 108790631 413569406 661891592 805633694 922845242 960971105 734791462 762875578 456278206 717628811 769788094 963468493 273704034 348573762 754889994 848844942 165268151 522793995 778475310 898726586 649186863 671190776 309448249 896512939 692900520 896202729 415176924 586262911 995855885 996731741 730908406 747430016 879976109 906762394 797518550 825027324 75746526 900275758 893539206 898305454 191835232 753310873 864020913 874298573 906029395 942558521 302712755 520767918 663827454 941761429 765546887 983755542 840619146 952176432 172251235 345928612 304447977 827308854 692218586 849329882 185732019 382636167 889202987 953203196 513399906 711653745 304427891 666342471 920904284 965825334 664142232 954880647 19968412 122017872 304917137 412054738 221847194 858736057 627075582 864580383 908568277 919882575 646415336 887991037 300710868 943145118 185529824 196997410 480392628 899624410 856331088 891994392 39592129 955254747 533598119 886763031 190333400 404771556 669083998 956333487 726352971 958999556 643638844 971721289 498468576 685278102 586108737 629409167 898852396 921044007 680639744 863914537 944046501 988857727 317875299 985812069 193050504 898385753 363463369 752220167 158467283 595043732 847261438 905079101 249759073 696756855 884712166 941036686 195023267 908733273 715092263 864719708 764290842 953265963 823229082 845910672 580280667 701493028 708940166 758106305 248188970 429838024 795219462 901596209 243046449 912297460 465681058 629843199 377897427 468550026 948823452 995681386 65161974 584819310 500622703 937438098 572007096 994808293 834617261 997289521 697722988 839826739 722089778 838944675 580612357 602323009 641638898 819263167 590310956 989773237 107964382 347311666 895970065 901518008 311556892 488193723 805647252 819949489 10598084 756520387 134281000 666604128 499569664 952416889 344532758 733784802 587378534 963041097 798591309 929710103 494788898 608399944 5302504 528463490 550855252 853177424 304127256 612123490 391202738 521248640 828644679 957376681 286555100 360283069 745761146 910125236 350592629 418044631 113132341 272675539 706666002 736216957 173747428 501232096 860536512 872796427 315678135 360361183 411737685 612349756 961607286 978184562 801176931 815477637 699323794 836011398 121503155 501743921 712539101 832665956 211234337 725371552 64616758 164220843 248833392 928023508 717056059 731957350 404630752 847860760 475063905 581403845 526228634 722519958 282914623 512207316 438274772 633274561 999629446 999965017 604196869 741804249 819344241 987980170 599227158 715744986 343255296 561004065 84202270 371602732 457928231 561886178 623418554 776070712 664102484 694151916 966528762 992081284 997344141 998507213 427404117 611542985 799133892 902762876 206355379 313450604 670520952 731235091 575747072 744152832 576402664 669751185 393919530 577823385 108982450 953295729 599146353 661101109 841557629 991710198 880880283 977528822 810113799 997613138 949360824 996201135 804247436 833869070 984275733 996113665 594205254 738199207 160985498 341977892 352137725 614592866 470208641 667173522 544097657 983192961 680180993 753310722 399779253 544077403 670269481 910971334 852926575 948912512 512554708 644690136 497913412 979755156 801088096 828006031 717791582 914833516 121881684 273399801 104939554 705967355 434545652 778671506 333069639 480267004 155250879 411437368 911971684 922865811 572222111 905060091 453100603 836171795 291283009 609256831 912784069 982774187 272863539 605404526 917661648 987374013 18227977 342812164 783784136 795629683 690346471 709648741 690716515 869795605 712935013 783513695 123583500 768435220 359959180 981236142 888528298 918631362 739107866 779339750 127539540 506816170 392995176 594335764 62060867 448230746 525365178 896106782 718956020 998037177 146114982 796903510 849646768 892733481 657196448 957654348 716481171 899949228 800290499 924530875 62479398 194206405 538646423 848051054 700548998 908192264 644394100 931481572 781812924 895807167 871946545 892379325 420235444 657328252 432659593 767468748 970652881 984231671 278469095 445010313 952562162 969688569 378633767 631377761 257984774 359880697 307853230 701011394 751450125 753118044 353404839 836564704 385730403 618261363 902793130 943472026 949070259 956120604 244943412 804700031 76048472 903719114 899946269 993860103 658300654 758961046 66488711 284499559 978152542 991823711 110730079 941272986 363366804 429495631 636105715 699277643 473119637 574881556 893876697 952950527 715902146 795251732 835802801 860757320 653631838 783189051 613925245 814357869 150919513 620765767 251934538 289383255 718940358 998159486 758022777 791494406 587356006 608683097 826264566 894520863 401787433 685425599 73060878 739331970 847634668 988773564 309618261 841798289 779300720 828951120 705022667 798214998 402297276 413523153 107096809 537080744 873702743 959369585 429297267 656636770 635219088 728558558 897147142 925458208 691008445 720444636 995743369 996185168 251554238 360757668 920902179 937301445 549109953 866407745 75516566 377859011 341511349 910049720 991664723 992876160 959726572 974062358 574805541 628833746 346204535 733131076 836340945 956093439 205089560 893063988 245816288 266003202 96225649 641761349 813230557 988651030 809860385 834613051 152059079 944633512 302756128 757390236 379490914 861567642 861490050 861762128 636722336 800990133 147817150 740111637 830492573 839236610 181889556 212549734 935002673 970789897 692895512 747919030 320981574 642008350 970967378 996878651 170195658 893490611 1941745 495324311 513289093 759633058 200280386 770503153 442952609 641000504 295794377 811207657 305653759 849542868 624247235 844375250 418017054 802832996 16767825 142763262 269898237 277980439 24637606 961844963 120264342 232762864 320340246 838437173 378690871 778321573 796545612 995951205 189417702 378956877 628942014 884712575 322914603 336693347 310095917 412632020 193020301 645813139 7402248 972812049 816940180 857125931 818766101 931088342 910814916 971729737 49766377 806780569 795877463 983911319 625030317 714402529 714258706 829215655 818251632 926265745 542370108 571662597 28563812 570485781 942342580 974185381 884961468 945295912 970810306 989858854 69820204 842379642 544437299 791022079 382807031 974355261 838560899 922609260 792661595 988848456 902998112 948874937 964195187 975757692 392276567 454806749 466634556 795458802 197562292 449986630 456894656 637343148 855713677 864044657 387051333 795364615 823684939 951234292 37596837 287272475 723085183 762163630 604032331 810122702 627552387 783586812 73597227 192840509 177232652 914131946 777169002 903428611 637186979 879537871 310152657 782078751 122044518 804089114 457306603 976291014 941436180 963476813 658388083 806709486 85002347 595368397 576931933 809031685 969282523 969562243 133875638 653132844 155151099 484206371 565644292 587564811 871360783 988243663 865415550 974063654 604205176 688329370 12994819 406907209 307717973 453053722 550315927 895781150 464321943 831485572 850578414 991639004 169618336 455897893 790909308 795007503 229653914 893255896 13843797 571028881 65732694 745811522 365627345 659522019 736541175 796128118 894481742 980883055 117383524 289790073 110491907 770647936 224707874 865757396 802337204 812763788 747319145 843223487 783376404 795975584 841251561 982056241 374097951 456818882 363414394 660010294 786594394 937858914 406104094 513452642 816500416 965817040 758803201 873565493 276895756 392867395 111729999 760966946 458844743 608381052 900790586 969849735 642014502 872200357 202649667 627766862 822454032 945786482 379406047 926700023 712649747 831243216 176021993 206066160 12286980 848363614 796453009 926506530 117030840 757417277 763520673 851368568 637448257 755711532 67259686 347592262 547109004 580623831 132955201 248520846 181235290 812830903 573703190 606776936 677708371 738376972 584020118 600914623 336088415 578397811 514547927 997960265 320081203 334836314 984216077 996981693 134943249 604645866 51312371 891067145 185890741 409315716 737629102 856698931 513698313 561772060 602633360 777763172 361081310 410567718 42695369 624822260 728591713 799690506 38670393 537950677 62638281 727851690 568255087 695516018 590301540 840440525 930719581 988713795 709738756 887512612 672924819 864260841 17916761 820592946 793231911 984234904 39775394 564120521 751008673 785562380 789588774 979558803 494210297 549720589 437499548 495822894 909648116 987876641 228428243 858578844 895634101 962027562 619098958 736944839 1899433 825713614 170211139 600233700 114822150 342046269 648958461 855093322 504387150 558225647 31103121 205898029 118068507 879870191 240621221 912146018 768309255 966183373 758210517 772801072 143747939 731440581 219211722 638258465 204670302 480289611 857128353 966745468 539247328 926550145 320267807 880287858 554764476 994929746 84492226 769272342 838222221 864246777 789277604 807758441 521320588 776042625 47358107 172572109 622054532 849839013 718432759 827225635 454265105 505310033 545848116 896837221 685471498 907975924 307873013 503290251 292515288 714629022 768885935 835603346 741671912 974879150 494604690 900009000 136345564 576249799 543116493 743952336 307430009 373377597 478466109 601180856 807423968 922918703 792451881 874606026 336651666 876013252 622885853 999393394 362623921 947841979 599102398 908626115 345769644 842709897 705958588 909275966 82695950 342053471 969617416 995469903 662447316 755179283 999948252 999973932 617020948 733030291 642382936 825673979 500121216 669612432 826224135 858675985 300389011 508791983 456479546 717834296 398582852 500676847 311271042 712437700 142992566 647011724 861008507 901991657 767584579 815771816 920209210 983093490 803462685 890623018 546704669 941183341 910564637 999745949 778555187 857940001 404751586 951091526 312197986 994810076 732861241 907144183 464534393 838914666 281267641 766815957 841477289 957488270 970043617 994711716 53003575 379497261 614640238 955636271 976085879 996720089 604427217 940282459 130546919 305931202 658829719 685070971 230905435 751639924 177049649 789945855 249882301 760217240 892635998 986252422 787870206 892661096 641334325 663977607 69406825 160822329 338177713 536836185 338905855 439165887 710750481 863587769 284100864 340046231 406134027 612539904 257218700 481967425 722599614 954903021 203669735 963808761 709709986 763035849 869142126 936097314 999839989 999959129 700107972 996449604 368177882 528204240 90292452 915423159 208897787 989329706 36607962 444300925 593240335 970153085 362890618 910718009 330872656 407848182 833627680 859579102 588603766 591268353 175663491 953210249 609420152 779523814 369988465 587133607 131817441 977017650 963517063 994411301 722468000 959981105 488284977 945984665 999308020 999955115 188661092 614978920 251618418 271731128 822875805 840640257 564071293 998909532 552800049 871155969 109269813 437755834 202683090 267508134 253202996 382674735 243001090 880319149 458630795 683392863 318906133 885443450 488312262 968024330 872226313 936614331 801342192 833490674 786239328 857453524 841851332 992382408 100279332 821010163 996184879 996611598 121271648 328681181 459585281 464687662 808152820 902723326 501549460 770226752 619882484 696542299 488458997 597632131 164771683 538533681 342796154 840701994 887731997 952491130 49855384 164393659 420726197 458464168 269636879 853960029 906663134 973203283 154071241 803752292 935649470 981813200 519596657 680767062 435604278 876996296 784476414 950359035 756779724 821397334 83850955 448350559 382337679 486903379 341642656 556634094 207144789 996359966 944667836 973383246 469214660 989611772 668766908 710977530 622566509 899223636 153681927 792382545 889964542 940165412 231327929 433132193 32832343 472433822 676049572 923470563 495565962 798523158 197794091 394886174 15233327 672339300 915963579 971584358 55528395 206379632 444623722 741422211 54239568 735800553 799966164 976096293 279467564 785717828 278537868 939475443 714074438 788747017 196841642 812578224 725993463 746413671 124013065 876436441 940534098 950721373 376776210 378450539 566206958 752812700 765656181 870185097 280791671 530312848 958508058 961157672 721120931 914250540 387332715 814560676 900514061 961433349 129856100 485800403 475668194 865701662 977645901 988855239 313822309 316819234 522418016 676205144 201695191 684466718 814213597 837886442 676567284 945921545 285268098 527901099 66716751 239574471 420613137 752506516 87239324 134590828 195177812 988122648 101162482 916000882 597243454 802373314 927008200 962658439 839172216 919960772 332604383 523781921 379615965 785770427 286271619 744255280 571298795 819448238 477715678 916843291 495903683 564128951 69290868 612330743 380774969 417393979 780295971 957723050 394560031 924371673 62337980 915110301 825789845 935867801 65368107 162227091 882171551 946411102 613315315 942600300 28826713 35960071 450335280 616426051 242515932 735761985 762452774 886491821 744380407 953683925 505044265 827289437 142297943 518040490 876380365 959311020 707165991 938460563 17806184 955602091 393332677 441858464 283085357 894072833 673609283 910402194 297054428 552563096 931052817 954345268 101137313 340691758 852013616 988123474 825732446 880209728 194543436 875922447 78418127 878725428 150362124 895856732 969447302 987300994 989900184 999485763 184891942 909158098 680640797 917166145 930398805 931687862 218367833 496625929 761616192 875857925 916487488 970349823 747480010 912386346 268394038 521575831 804790677 926374205 881771693 981477632 740063343 932738517 946622948 971239334 788678250 819608405 992902864 997007626 164571560 836525752 97143458 475532703 985675828 990549936 904713977 904913674 773984880 864013598 44275126 136156950 910302931 913754237 545118543 611055252 860948261 952227969 189477905 585376824 412407196 655453786 769671222 828088802 148249322 925400084 451994309 867176240 149329803 318696150 651866086 870745829 145941552 995014930 278176151 987000314 277798485 963785260 650898674 804863354 860598781 953178734 218606037 690448647 380474006 477337672 790592843 944031430 984779796 991026689 604541426 859691412 520792492 905001689 553728240 558189511 442296010 736466785 287444808 714536231 177044415 502043181 469026354 924069397 639076506 652770211 641846069 974308244 527609826 717496785 332616278 389924513 971343610 994914956 885644203 925020318 323634633 812449209 612689382 828525936 783204865 881411845 303007960 570026763 765918065 864685666 157964974 908204157 446808352 539871694 393618188 850298383 449809238 513710436 159493561 695430629 378458699 824476039 547592605 836730925 888756360 915052487 49676156 443186900 124599708 243456470 459359966 735473222 54159445 239889952 291520434 603688093 317782387 576504912 830960152 959235887 806996709 899864026 791367631 933251807 768634302 959964778 509857667 544811918 809706868 902197703 808158003 915757451 573366714 756166668 447221681 625571222 442757086 884161619 531692283 625390379 200021503 955387392 239296011 341291126 658394716 790100699 468391757 966427912 282255719 537954339 813079634 850523431 903742359 969143432 38290221 859407113 975339859 978332058 838848607 926629064 197377600 871088687 146500849 784865917 313978897 626811020 332513769 901434154 298817305 702083477 142491151 240456108 433635386 615156416 439480986 495950220 144197860 464837811 766309550 899050034 510229148 537007382 957374049 965431994 249077828 369238429 212056658 266064372 473122079 733821270 333181393 736800672 340717502 408569833 132349836 584486761 752048771 862149044 199660978 300020016 19763894 582284758 657516879 958487612 450479165 611562410 641518160 947043916 459734128 652656120 379530779 801844562 604481072 876242503 92425166 426707515 685468742 719454126 913953950 986450810 243994327 288215134 68834746 842130853 143959029 312321402 231627693 524034016 703997195 909551269 354986586 424323185 37578729 143130261 799336438 804054825 873574715 991957235 858868111 985675521 762434825 889988705 21801859 523067498 328555410 405554066 916418079 944471131 111720185 708802626 210993022 964900857 684804445 852366294 825103107 930704368 973896110 983117792 198069287 652224479 484515533 915596132 953442480 978421527 130305061 967642641 928193009 980857958 669513599 709102590 991921225 995608204 684705430 746549700 474128172 769318614 348496823 476600054 877636704 967402039 975402264 990419925 464169481 765888399 458084034 868653150 494313043 614039022 883231074 951470554 948119628 951330184 968837549 969564217 140957302 328045679 422142136 636068661 477170582 972081563 612418178 713696225 723404011 932439852 401648048 510949616 190255609 472499749 572477550 952660896 139033467 943364617 230647438 410911727 531965199 728081245 488503011 722680463 77691235 741498937 779899484 785767308 930554182 964674632 989258241 997754399 566075547 917139269 6319083 197374517 574264918 787109625 431018806 711229614 444777764 907593041 889861206 963950072 69444570 768540624 628408436 931529106 758330881 769692304 165572571 930727010 430510501 552639049 905587895 951164030 184769137 566708720 928240079 950370532 243147181 450531917 201718591 733989689 115127464 119815652 461453294 908706335 52325086 334539631 393676969 460738741 187024170 887461959 463888944 828117355 834724326 996839883 144539567 812904253 953127565 994502558 411732108 644051225 827867334 994792111 44252672 689455570 687656460 999787844 550431975 887619333 715960683 812452035 310170231 830608870 11091413 177818583 28251848 241811192 180071220 375724275 189321202 246254451 533546802 864594355 555005560 663446003 330158212 489395324 550900490 856481683 638665327 669349572 682180138 813308163 449176919 711485328 782605334 838779786 130319772 159117740 617333053 977363024 731277071 854573751 732658121 931066268 465225774 926198744 833115723 910219567 89412878 611987582 365913171 868205071 859046574 967230942 161633476 678061262 269186631 333087382 522108346 527107216 125536205 939341079 968670297 997584927 645534984 897183340 912612380 981513780 553958720 991787155 268568834 349224684 354792376 792561294 354623507 978362285 568621961 623317009 965482779 990012553 696771080 991804720 481851643 627846606 444428780 771410464 355244 983947249 975575425 987314219 971799468 973830846 153775932 540911480 864148518 867431816 559383277 787260941 637862399 914190555 518167961 545685088 807224788 956235729 715671614 864869456 336671801 891269662 780741652 832466181 779173154 934484872 569631209 835305532 293067023 941636294 432082246 642967572 591143378 929046856 835190227 865460180 619767531 822046346 828228841 969699203 475859839 827242368 468880749 659942405 958700929 992411876 511127757 938415373 315740322 873460969 370928620 377878137 467347351 534974190 238074232 477331205 579925923 581421624 746089450 798200111 602870877 964207843 604777306 852582872 225124826 397418551 539514778 782493068 907760944 972828374 632037249 656834062 939162697 970383469 73547263 793156877 319307514 326747757 227103606 759584282 794094514 978397842 429065956 745214148 17348582 715445577 393287997 606492070 981540622 999218894 289001270 823728718 800495534 875763734 115283308 647805788 594827480 744769283 30904053 401793115 275259558 470597041 640803922 884887758 624314736 915638247 611780555 856093987 486599877 735358205 731403809 750491024 387802657 637161409 843014245 893511830 586056085 589406718 688863301 989563845 466791843 638353347 363642710 494908242 826784475 875984402 667644612 759825633 760607574 974482421 161324972 881250346 38944090 46736524 165591008 560420598 504028971 654445011 961383542 980413976 125281888 441494437 660480499 925544846 950517938 961535993 532790928 553149906 636445623 884587924 203166800 982038008 268337895 322275345 163852596 939244402 341242121 622176359 214553067 726596865 487890558 793777864 779728864 935024243 337400195 958973882 245577937 362684918 521197951 938850659 564273994 671954304 860548115 922084167 28529717 542441546 235507995 710092776 313962500 815758156 864420628 917915307 245817122 457766738 500975702 588727253 863872825 946459531 379548555 886348551 758000605 759551437 254104442 609540251 61091344 134976157 663208637 893943272 13767948 478526634 730718644 901649143 909012077 914543057 872311145 887084250 42633056 687359464 77264703 964725557 453612684 745802498 429235688 506911473 93523353 186477782 133746541 651126342 264522488 811088413 140770521 684720719 392046883 609528587 970859009 999829826 86441984 894006615 886696021 998294841 554581154 968659621 637538480 904084324 15423516 365668996 501064003 841825275 670561710 779863743 805017151 935941888 189238400 684591718 943778055 956596725 669277196 977859052 94510866 547961778 359653291 366127906 454160426 871112071 197593437 641610750 183527529 367620678 386197216 786497458 512489735 848912584 159737265 488003119 947492429 950746269 671032113 709595485 932748860 952160669 633764655 742398687 784110142 993799418 560884918 799783913 357568100 793180783 750717584 856413807 97877398 642237053 980824189 992150819 821049721 846923625 839503587 876801579 399737348 918357936 396653631 772996631 340513082 380512920 45107806 121544458 923675619 961434003 189339311 746268193 228275208 974369750 829585014 887931828 178257463 702980276 384152770 886500099 168327359 306547348 166475798 241519880 802051065 890051039 104106555 607898552 46355417 529877175 567717712 568636693 276086013 451992537 846309456 937583372 30915103 394798493 445845461 609220494 820693076 861107989 916596373 929323738 943583865 962479373 893945815 914308049 774354557 796518064 558948606 585429236 743977363 944684923 147376859 936094647 245594712 803638175 681804866 882354370 569877811 847728357 259418845 556822889 852084632 985209973 885387149 946856334 449171065 981935875 219033410 657954517 472800430 624878771 642025273 654581284 559947896 720069869 548691376 588318433 682226277 726900429 376709098 966106019 113723667 675567292 388354865 980003241 855270228 962152274 383088182 943168392 810261253 822724882 259333983 802723810 146813632 270113406 138456200 593893321 643010781 664438238 460684431 646186328 815653462 910582310 990126809 995136448 854716873 993496685 918634800 991864744 955150939 991951525 59545796 967012021 611246725 739663942 406303045 704726345 995328154 997238871 939197842 956264908 703433291 791729301 216311598 615320913 903127003 998560583 643866049 964152813 511671328 970056548 206278262 983552293 86170885 708543277 60274780 427310757 692815201 909423574 214902761 773122724 487059364 929845843 117961997 308211305 604687242 748560047 304494152 644834044 302866486 444597754 559156009 911281782 758286033 826660208 412844727 666376540 955225722 974065308 637209141 739967809 467655697 616084230 140412985 878287087 497610388 732832848 922136876 998888317 38432527 370620997 792343874 897332564 782382013 989661653 62833467 783623595 260420068 870508572 933316010 974580632 132052685 443796879 8605819 283968149 573232393 674273303 623624881 992096013 303226212 588357973 355999983 669867177 875154407 982078981 721103121 981285234 691988409 902181605 83314325 871361138 268833650 892411635 309310617 735500400 794292816 982494442 521879836 859788528 688708696 872215949 886815952 887225824 228365757 569580948 751192148 900135907 117574543 826906057 194300987 348108056 214588551 932097275 436729300 962126473 745503374 983033462 502993065 929910795 639058883 794081063 725195656 780607472 61269696 139894314 895117557 985094187 244722223 868019822 266038628 874638393 898222063 908151030 446198373 769408881 324953083 497840706 617259526 643611729 657926921 851085117 546533155 767829092 406677397 776874484 888640668 930288696 851438691 865664132 536110377 801938571 38955908 847390319 907962603 985672070 29914960 149542130 407273759 906334733 473517693 536030869 75676864 900350538 443255159 476001207 464114711 594147916 923256325 958581760 529195731 685924308 677743236 686593985 412165239 599199552 479887947 703633799 298049814 306582579 602283094 706840390 775602919 917061463 606392945 626817085 910337134 921103656 837090072 996223142 341450343 901831426 769573362 961841314 586623408 903387606 543583683 690373542 278671039 290656986 869122398 884283290 567653547 616107244 25712277 953322157 262123607 654778282 504266906 794017664 414740846 766488845 650324845 706775443 47111855 592956706 199020856 949865650 234531412 656301711 916813182 962897823 106142192 378695555 254058629 314403396 3119742 435412671 166335939 202895585 362227855 964829577 912378419 978880422 118876045 579497570 628730152 659757974 865739462 998565369 32573771 236101793 902708268 982853110 548982054 598536337 938771721 967187475 253538853 834476626 717812231 872224331 263097271 476954237 74442589 163427314 286497494 404755328 649147280 978493246 11670066 407413830 752808204 938271622 476568445 792542147 945607322 990741044 898190572 927230475 1799598 558562657 504047641 521284675 728357044 834365114 280205631 946536162 385784531 585909781 447334896 574085938 747622377 935681357 322537740 556740558 505140713 556088999 443122459 919155028 384672547 543436166 710995228 972747656 507901592 822087023 698792193 950549589 455409935 989562106 713161043 799501561 742171431 830592890 105820769 304824925 985642091 988996903 585006578 759294791 243589685 565629317 788095312 974952406 107238423 956904727 347559837 725604689 555079870 993668334 380459317 967886447 478739413 701421142 515786863 624437472 879163539 919119916 53888421 609575648 820293678 876512010 214228565 640117320 944679666 976996856 557162352 897591170 665259203 893194567 405739015 787374776 664777545 981934602 433939268 867925429 307571570 631098223 828218896 913630247 734365103 958441977 560393597 899240665 865381499 885757602 238171410 248461097 260861827 268092223 836504519 975134074 214812072 884402417 509620501 736432566 206734870 857451876 457582149 789780979 41146708 486369585 878848716 931538478 902000698 922630517 644539362 935547913 36197233 747922922 91729566 501474399 702458897 717306380 254952817 820600649 238377082 269634158 717143843 864746856 30481973 146595937 326652142 705512718 83507792 93287675 952573747 973753539 556744164 773519790 773799332 998657818 733792985 941962723 687058546 734245165 530975696 645775031 342362191 716748112 568980191 923056241 532765503 712756365 385924674 917058223 564608398 661576954 644321893 953441433 341529888 442291944 929901624 997203928 647105190 843143391 249418267 601792107 148221429 301681507 144970372 675423360 842085613 920787897 985681748 987394451 316580686 988037820 938736680 981529700 328072318 477494612 791775855 993569992 339005445 457883971 516385123 659920275 625400141 855999264 452311054 999335685 41963006 968499297 582710631 596257071 436999024 609081605 590215351 648949598 9858307 186703645 234589847 988910169 703286746 785238685 451646265 632554410 359647377 961991156 779705264 808605912 685996659 923970152 632940808 647155002 573563739 913951509 146463569 411938995 151504740 988616381 428493637 574654427 594145055 793774078 870113102 922048190 539014153 810479247 398254593 521167190 283384307 289328811 827991386 974074564 854192141 860120901 818254145 979335305 381448627 583732116 863044202 993212845 224431918 417439115 773824858 975074899 18979048 776064513 952990978 970500674 422707192 853636920 467025646 831451266 808731757 809390124 765633940 912894104 396895535 768039083 149411027 816859686 416324690 748112240 470452877 574899100 452710915 488298847 844259637 951367851 508710107 790280210 300717083 534077844 431351128 729491698 295160626 639772476 585010500 791414895 815402609 991006965 193078632 294274622 640527129 783029426 793117331 873133790 518726236 838468676 115681486 717917394 780663590 892162957 320070777 567354498 168058435 169190455 423132876 647908270 467805306 512700978 160579094 968532701 334341020 350199386 384447590 647581183 986948915 988431715 64973006 870978635 587792010 597336192 898945003 921946390 911734253 986975788 427470785 539570206 995336492 996764042 59014361 675156512 295180635 828660696 714008589 844896393 480329987 731086514 367143583 367416246 90630610 703108970 714252742 814029649 139121055 720287622 217432753 733957030 728571887 976722733 221927253 270184273 481136104 740900094 130311682 578511753 731187761 932905799 539305006 931075914 315644136 844786913 459229231 975203324 555345489 935502448 696230561 854895393 825300200 888034036 109610400 827159853 189314663 465295836 546292259 937413940 566420100 773638211 826900246 934219541 788427806 798310425 576351288 670223267 750271880 917845789 672171529 880117736 623561780 826396316 802387836 994096026 229020087 436471408 709441733 949590066 48118062 873248216 52124372 209120496 213349864 501688136 688066205 764021990 330010156 426857714 629400079 855484233 596466487 640774707 670892640 676374516 806925905 880764907 411935568 634925106 114209335 591699481 34178352 969753397 49015884 279266216 175107780 505099567 785808099 976644975 498638086 816740108 1106001 379293356 430819123 531107484 182713484 451514124 818397118 951802804 569253715 886214061 415334387 563301647 551795875 878504309 882615319 969457697 547796747 813261387 365956133 672255576 773504985 932719639 971205593 993416295 835569817 890802018 592942573 999772134 572506016 897981782 98063747 139104417 750102770 901179155 409523396 765702834 587149788 760061882 9203706 303332927 397783890 415651124 920454646 990785017 437767623 945098955 620295370 874927825 96640156 607206820 515089513 795350965 579360260 994413948 273585090 293675628 864536833 992533078 643802923 801227849 835605220 882629167 712884194 823127656 322688006 785439556 756258252 800217780 95347835 403823919 441812431 758209263 853431667 860407634 781190722 952394698 586829282 658305299 469133931 700934066 530354878 956593275 585317131 932075773 473309671 818165831 729710703 997592864 109244226 389282174 514191335 910287048 748406985 764417853 938656822 957447107 450949460 800304276 641910416 656096922 381748560 967123996 576111424 689408232 863519969 954675335 152089281 829291015 787058059 986283583 27046629 57672875 425959696 990097468 924306979 937662773 608264711 903557854 103606827 735317605 237393380 635518929 339209912 496813127 999839087 999925609 680256175 947520412 287389545 967159538 921324991 935608720 7681618 431644655 997308101 999541008 247663538 813530970 793593116 811158241 464815111 636357229 938709425 991522399 35102456 596382980 494547431 538133456 452374802 637120463 874537730 911462151 163253403 535936351 154677782 282294450 739933130 940742393 997814754 998647335 446956189 453329316 200088333 564048757 435187387 616245916 285744669 976361092 930656930 987603367 788954979 927893663 814877366 932489827 947459346 999045998 82254031 85286636 432446001 469226363 960492961 979325810 524360034 991298154 44557640 910950587 856299452 912958306 678562058 841325744 106641813 805282994 318566932 953170232 864672452 984753155 659933338 913095938 9313615 308173604 170459779 327757170 727745681 959136280 337477973 416743484 241720332 561904391 65798624 659226434 943618568 989101782 308198365 820715915 456674675 592222079 671991429 952706775 111704792 943908302 788749498 996469951 487457174 680110316 915520372 997799315 593486255 762583258 922988604 976860873 791521414 891297151 723661942 846538434 668916558 736615313 871116004 928549794 902329109 992199178 21512014 501483694 704610660 833553871 467952160 997971060 667194066 677257328 334866944 342216204 638728162 989718319 546603946 720738838 428046617 491826326 141286357 649117470 826841478 927195028 972956540 983325580 979696230 994567051 43639603 624750533 755595459 949841851 988484307 995763357 908308841 913241319 886498765 963911951 953600261 958140652 102243240 646381680 588314661 757167221 314279487 349160110 353004506 602828306 28261516 941645789 744525610 871952812 308741581 711075672 954966932 988639819 360068377 578945568 151384655 303564587 920741266 937010272 507419168 908163771 392782114 801527369 664511917 865354697 67965854 719982012 32869298 365593534 78145131 505971797 280571328 996850315 157838880 674031215 515232530 643664380 438120263 495030475 278327166 485793217 116756259 606259330 498658311 670988465 254250113 960758461 709801162 901674257 949660168 973223482 554497689 834283718 237791076 684105712 559424391 561598793 131981731 591673897 647833197 705325349 728192759 742409113 444159721 793392317 985290389 986845774 920389740 967849746 550688224 875543087 767048596 771745109 158690025 275689511 330968582 835782091 709694308 765022633 861296984 934866176 556278832 998575581 252580638 395010898 326505888 636409501 404400010 833195652 275197097 628060486 193636634 713201662 730360564 922543600 491179931 966721964 552848989 946354536 618745305 994945812 323918445 552845747 763440467 912260792 845544462 947679213 126366474 265936945 61402056 603478408 218197984 468811025 467958671 752664737 155919014 198313040 890859531 911339710 559637558 750748879 732371834 939822581 762665210 997281517 163057586 657769496 367762776 696002123 494700954 758401440 705618895 881688542 380107203 707405085 750840026 908564169 718397759 853362024 124283494 317385901 915428954 924960470 555759171 614166586 141699829 499086779 609182047 673366017 175785828 682721785 558862268 771240879 639422920 694307553 838166174 860400735 443066686 997121179 16305146 745296342 21208996 505641843 54097684 675435090 527436053 635070526 339894378 706581864 69040067 843602589 922462818 978823585 993940550 998715185 572563532 812080548 119373769 826279551 302936542 874333286 737955453 963359660 343327882 936927875 303395174 627736357 802299242 953118455 491629427 613182002 268896454 814248219 99445158 967624297 989265116 991993735 727183049 974074610 324756414 769337378 773963626 824836824 618487735 844674336 922281636 962971736 938703125 940466767 114041684 773155007 139582048 467322505 76645754 278656580 306990666 766027749 300772225 712815672 184549449 311811731 405579856 696793136 260981551 375258949 11239255 360977692 847437607 990195871 44604265 854309977 67326194 80500940 237034343 976159638 315090775 546174819 343798498 459820471 692531024 733512003 615506626 887780756 889773717 946773025 155772070 892169914 337758328 477124379 163626928 938778447 838369821 912996530 270753962 466350264 356683952 727272089 899813695 944933545 322858360 873474230 341712512 477198606 21880358 870533652 434389470 544788970 828296098 993783287 349610391 858315912 949813107 986934933 772957624 966081820 830778849 902648101 911330568 965213709 900413414 988480395 726532573 896964739 317308869 976707779 618326010 741670774 614407180 860475413 198459557 751306228 148842267 153785340 627547407 708806617 894735212 996263386 850891998 924143124 946634871 966676760 676037109 991907828 329929666 345324635 712406434 790314743 840860426 885792738 251711811 334227738 739335003 824596879 500205525 941341596 104947323 900226040 247193293 548617157 857279673 997243693 942446022 968035371 495548453 819304562 520440282 874839326 821176523 881880191 480008973 934682588 655339867 986684099 87365408 117682781 939915309 951640798 372034252 495163827 786587007 851966083 290509602 870018120 51843804 871716207 450387964 694771133 479716757 911892649 524066672 535190718 668861340 675928579 621899643 822966677 386638093 782748638 874808355 934870315 50340512 778174755 637716208 722339268 313096615 938978143 228117830 842635875 748291849 997511467 866412049 979753627 411346915 973225091 462854577 569589358 635534740 879966210 168982617 221075393 468422317 748099999 216630095 583013983 187818015 435210404 374002566 667792165 519213009 540579499 568295359 739989122 945590576 962503887 488646916 636414412 528049575 786920568 745909318 850822766 909180728 965197633 2907721 551733222 603216779 754068662 451726203 641953686 802073446 994071332 814985674 975156998 304517274 591211652 424768839 578967398 440007848 574792597 866808200 949248408 247625577 595064523 17082371 443337224 824674206 915754247 27324516 492094630 981042210 988769498 559708608 768082690 674953553 836317238 189044840 793874379 165946547 255754033 733454113 976350197 731813048 813053306 244875215 595688678 16650821 928095525 168316604 673251638 858961113 955168752 949365806 964801087 214089346 216068785 111276002 839816623 157256651 339470153 432166440 874071241 795279676 890155082 107008751 980143486 630271043 810004903 345356089 709904528 386186318 800408567 900039031 995992417 879368345 889265825 833241886 916577695 472462328 518346259 650105524 683155666 983790596 998342537 36686578 326830368 202720189 701030122 205439928 660499545 571200230 609704859 376998212 441748386 60372070 754714846 260743734 682488413 312297022 507774055 530487080 942462224 647247517 869337748 633537916 695772097 347508401 458180381 177751745 804484240 505470680 586817768 272471800 365631339 64514395 462718067 326728615 372937678 499707195 559036537 219495369 450127630 9892364 983554899 775247693 944820017 835093787 959572443 948171811 993948738 570135333 797803829 250348626 659201399 375479342 511709860 453325985 637303648 942134110 944339303 726971785 951238107 424329085 538566337 644092518 942205904 186880290 373301300 351150976 769443960 708507243 971796988 428240666 515867514 981365100 998486437 88893893 617099640 202207589 971320411 777599160 952717354 604014043 856234443 782952907 852488880 809807945 990137172 378947630 981771137 222288621 504897962 171202654 361241508 429504098 444297279 916925469 944672264 409815836 929799276 202832625 917038608 475388779 998854821 30397899 490918812 486226424 798183421 483896393 605341581 358486123 553223575 281886033 972220380 336900164 760638620 676680946 810114945 625270129 916158626 456903757 913216058 274936843 383180001 980863957 987179108 835809030 897435078 589292992 806187822 819424199 851130948 316811115 363691812 896390006 974233726 863206356 866425037 185876646 569026126 828861756 874875317 277791829 790013614 952806837 957071363 888140569 947880858 671798502 675961621 988347399 999858826 208726509 961835522 142972565 817241183 897734837 920839186 785639757 991128999 520558784 996411956 913693505 992117364 970109370 978571990 322907868 743759937 696110724 779993751 787695165 862533513 914122768 920629207 934814660 983998478 619866594 742688964 474089377 572877434 362053361 469280375 874555207 877036699 440781430 596882569 515715546 671508414 194280356 409684355 220128706 744908376 284050264 454524129 983093750 994821856 1843757 102384986 632707120 863432172 374435054 596555119 275133597 629907543 548016997 923478069 391060705 440648264 660241033 894850440 330287360 657967693 603254982 667294229 276728842 865606906 414338789 590548423 397518144 843171628 73769489 926338659 439862572 594026459 425874039 669931371 193559931 743677690 237848403 574765789 759339142 822074795 514697357 842684516 792293753 866534218 761521904 943619514 867471823 877621256 202569106 554455901 193238790 796439869 140317190 632719040 966033007 971122404 60800748 300076765 147484789 358768156 820426386 886845051 599217635 834869387 85777012 257076994 603545936 928607116 370185294 491878215 22358392 134668635 553987281 977340017 368132307 513989560 542105104 635169299 335365378 694532465 284712205 374014311 72633899 642440101 322668757 607510258 205181595 323544983 98573231 279242112 600163549 982388359 211557260 289502615 996557770 998656133 543290112 744890247 559146898 890792883 184951017 940593705 248702019 919935837 980226176 983215173 306191933 645607415 353358922 635866555 751755998 806824497 321182986 351628240 989365431 993297359 991233475 998919806 812936601 892193140 661991732 695136347 572987395 710443322 440934454 760737114 690363258 923165563 452809690 890778878 169560177 195205630 777664824 927352919 272181194 820942207 848749314 885756390 623556808 846268066 317873704 884731037 214824231 592254261 514186753 776602164 173283964 782374936 891124882 996206254 119191319 642277856 901673529 911884235 681747500 780471456 901781240 969809503 8269213 679904895 873528451 876898025 787849227 912770411 270201136 272050938 772809877 850071778 535804449 840916560 56122412 594389500 427236308 654278488 824258763 829732500 526864905 787527243 214647648 519193915 926904590 964809937 748969633 911788392 304186941 560684485 730363259 810571218 689780489 766929824 211085950 908452282 421909482 476686420 861570847 963045434 960446186 998799160 152678324 588715179 453317673 972944671 381689525 527198591 273996355 370169209 357286731 584106725 863781054 947141178 186546725 432520509 629990319 774400528 690141065 927747279 324754541 933942056 6169918 245192091 20434426 304389798 719627336 902469045 376887015 757856552 852146657 906571095 675181043 817700660 427227852 898686907 860133820 974216476 385484028 969085490 742217843 939359319 686916382 998067156 883072321 997719401 233300498 776037409 895657143 905477269 529615342 996707620 217710500 883459527 650832973 708650260 791691960 798767685 868083889 942296420 3123881 159867414 359281196 913798640 225506618 629390567 819191447 960996136 655586320 884821112 603594061 827756186 334532561 589807595 85078639 268080478 392681716 720884334 467007912 824944776 120624994 721531349 400479706 616196983 18918315 845134577 618598574 650564255 484841321 931174269 70526949 467611462 272616280 441187007 688812416 762848884 174455070 255973590 461067272 717216616 631825484 968802221 634904554 922063372 882472379 953141755 218628787 588069177 138726188 843378606 35764905 735918807 447716546 935721214 706050962 861666538 115567732 541768762 226212741 764033177 377200257 743367483 574871843 816225725 963741450 974335924 895151040 995050872 942268011 946608344 274113424 729730566 544840164 574684562 53882572 822744001 227141633 496758168 161662124 740581478 790901700 835645592 718870261 967528706 897256683 990486918 432950450 829067193 956330027 984046767 54426977 308887173 548525960 789504543 85137405 741624590 670531020 756896080 459052358 651890597 767831215 850854085 731867313 987458616 691614422 833541461 441549781 921099031 921710238 979257927 23010536 802794918 421915973 515580056 788198824 801567929 123275884 427876816 664258335 739103807 602316145 759448610 216988969 336722939 442348952 938966273 872886311 961650433 812239493 860293289 58102548 310422673 387061784 876725278 436998293 979629986 589179359 720838965 670168869 926909515 550231875 891915978 543140411 821364255 173794485 411731421 890489426 916634517 518755596 734218038 608712002 670130667 976203748 988935778 482592905 872502469 65146293 359150981 251537436 426176950 779281806 814084436 766187260 905685107 935354065 948473814 486391873 906270552 671182263 759843261 1688839 943339913 716663768 976260751 842057881 920816662 489035256 766141727 100546336 947875334 629493284 720071882 78729631 504676942 336364159 791768978 383183701 829304679 833621616 874515269 68544816 325382152 854386928 856915043 591019063 881224005 647305768 940830825 593046577 799184675 747991598 847444316 211517138 543911057 940584274 951169227 615887649 721772423 959586757 994643011 269283565 779548152 926767033 930049952 288307443 411819388 634580814 831179505 636585536 880501408 147091693 195768586 552766582 965494888 278512797 535500348 728011466 854237224 699073364 818853275 36080248 877882882 714857177 862519650 390098516 855151287 835953449 986184516 630674333 655793386 276530957 660158569 105242946 831206251 940876192 981159665 115813604 306164488 117010018 878830333 999911865 999929960 765532949 773436200 231836270 231992668 328996711 990853590 999116434 999909411 204098573 836108470 350325866 569059824 339546466 681565540 257032124 958423637 368770265 436571114 422048231 438719535 155897233 710420625 733688419 845519871 315631928 992318168 953602812 957835586 561439627 829901121 6154987 635796216 109581243 241442801 705818190 914759302 381965392 569132471 42361590 304630819 573502600 894792106 44748532 919788136 174171335 652795453 218623786 779930870 304310975 776959014 687067512 997977936 668910464 834560276 187542118 507839122 275273871 706405599 81608058 693011923 320461816 364446495 794328237 928006978 436470636 487979164 849482973 925937566 428483087 496384664 868039034 870010047 931256010 969251358 60028925 570712152 927981564 934775211 907778502 981803321 912802403 955641788 266518911 944303470 181038995 452998417 75547333 585482937 115909222 994460325 389960344 451573674 745218654 926381943 300703074 985228783 480674767 597925325 949040912 999487758 730517139 847742025 221505796 732032289 616899129 919513229 450658089 552135250 664049256 827625036 556963033 716310444 824889813 999218399 816741760 828236507 431322808 918872307 368661906 969587335 178007490 945760566 486983379 841618421 544015634 757107673 755448245 841293453 778097278 831996788 659774259 953287423 502308978 969222509 247467932 498732471 925899244 951583078 882088741 902902970 626718731 885314766 52090562 741757621 137060668 401734853 860868452 951167382 210823834 422497499 61483674 986441719 281663905 305527569 820716197 919364110 53195451 527127157 850418815 855859147 831475852 863382624 401262204 831094319 709068879 740621539 401628012 630912535 794712434 831798699 289088875 567023695 691214131 891740998 545266597 852044395 477114197 990511285 304637948 392307639 476747904 506897521 520636659 936700077 254171711 289159674 443522220 618261486 837542424 977754620 820700148 844883897 519870047 936324784 150561124 660684043 203459786 791638426 357831370 492814527 111330713 281564242 497094588 529727362 468388754 823121752 706327052 864876625 945671660 963713683 112069159 147635092 670058620 986278179 816723378 928656258 793370293 806630974 958971930 999575648 579808396 594301008 732352303 783343070 347078081 970547429 921200725 963584555 681446816 711875983 926655172 998945675 661893832 802419936 191070093 793471848 807805667 966183343 341562269 641424435 930780184 938483157 909167454 999827293 412057739 813633885 196392256 952123835 536177947 779185985 349726755 932649100 571195073 848834678 654069762 943609062 907276818 962868862 970438061 973617414 558260122 720909086 365248604 891374056 307245470 469744850 720206412 841045737 1141079 677718039 748655828 997412939 730357466 740353686 329532162 638649889 373872603 787375766 751421781 934937440 863127602 886540680 236254990 988464612 337397138 856701176 976615040 996951642 278642660 406681711 559914580 664935545 434742844 604896397 763058311 795899403 719993845 766878975 682638658 962337326 173732539 178877231 628019076 897859050 992924362 999125806 339882808 715396484 68196129 594106958 602868255 731527506 515429402 578241878 790300550 891975900 802347851 877125069 733865596 867525493 778592406 810340461 100564139 278893654 891285954 929746633 893779298 972816591 253448387 351632471 419064256 630155733 872044080 979564649 607194239 738809389 552148057 606379822 834384588 909386618 977543552 989893634 502016443 659810171 394409316 964542445 604542591 870206867 748803605 851606063 774894071 934901216 103808365 759598489 957452689 998873341 807318336 935105213 555878234 982191474 48342043 470346546 654890977 807155666 526303416 605290346 388348677 412499724 222138742 826339327 215187224 818573627 848988867 979730071 118612363 513968847 649829687 913619136 97448925 772072145 53423690 290041495 226968557 700788810 691465656 930002983 661091555 876931852 605183160 890798596 748209668 985267612 736526460 923644556 590552169 999311320 836958915 954995301 353813907 367097672 708079339 900388341 693054477 770124293 391878784 467582216 161890369 293044742 773280553 958904796 677693 379474720 486293000 528201348 635352264 679379220 687614561 770389298 848173930 853496308 920702123 962370003 984807682 988188638 660959796 929691724 286088538 660917966 591806382 844266834 664904436 755656933 42747699 682341037 968849714 980412056 63488458 506977806 11843586 29867449 704177097 867878793 200504390 948304991 821065427 955927869 48651354 421070102 954614971 971482098 421532030 448091626 977577438 979477244 628320199 760410859 381053469 562319338 416241651 827294972 400439451 996904889 518703436 724673778 738816431 796257418 614780890 623072946 929278227 958900542 592601465 704440034 15434814 25483498 380259209 970857679 66582172 564219079 109739698 315552313 462796119 582912803 530661028 969662004 947494095 958585054 145305804 854482737 984632122 999540248 366109590 650951032 48622964 460716474 688288919 867033553 992831575 997494648 481273452 710104875 520190529 989098339 746451288 752776228 853979972 868849885 963157470 987530906 134267666 145402475 212918158 959673487 783502774 832724247 805225426 996978993 913557213 994062923 739399590 793099305 727573801 975502284 134299304 397854718 475109458 565258621 836590887 953918205 139737351 476569049 542343911 654073597 674142974 824011703 990473711 997818202 263184816 702393504 373079618 450893718 571326667 823342083 80068700 686900886 529945613 569670329 212967791 248515035 621297779 992076349 763659529 819884809 746906691 822229412 907528508 969817300 960523640 961585842 597140985 930823863 991700654 995687419 479356455 906942400 468360090 920987937 798148831 850368300 24104994 846807436 173608294 972070198 992751947 998949656 777295406 784961949 177391862 736737276 174515261 693945331 694966495 845601425 674368934 923984921 353785780 902472049 263817232 418820023 765218762 857409446 81888770 651171140 574953281 652310255 192089054 392416016 314064338 972471477 12185991 114121707 587081103 850799771 128906690 715273544 466676180 580213359 728106716 803194438 636445485 687519036 828553644 885014035 837886783 867139779 312960987 681924671 731245943 743979937 177886072 393203514 153544639 635897443 872333217 906756629 427990253 570954694 70162987 480830242 742545536 959511535 631121382 859991537 344047064 719054823 314579278 827837291 453036619 644192660 21557388 48034367 278798462 715714013 238914153 686775184 878594465 935996069 940105601 943748038 943726120 944896715 941757669 964262659 990958598 998616482 611109664 674170449 748566524 816196071 784989626 911031011 357546124 692447308 807375486 845233150 775208837 885639005 604466180 806865719 174327433 487969061 960708219 975711942 31092039 907226175 975455162 993799495 867966387 973840769 900589517 987499220 384701074 705980907 631062537 824940094 343121280 820746847 674254270 781420295 657029680 693473331 979298609 999417891 706635903 954225692 550077684 649280851 982138061 982922761 55840413 516136163 590649333 979730145 649617438 944418321 59586243 837158044 522813196 588188608 524583482 985702986 884426945 908756869 671007319 929211375 122963480 428478022 709343460 958890504 498493853 808274867 879687394 920636470 727791625 978100610 900487332 954620618 692066633 987783168 99634025 681405233 554761798 612809477 421443593 963223120 721754432 995796221 248720998 346439516 105161525 418780948 98138538 504730304 343087887 457585631 988319299 998731660 395385565 681802438 954929248 977687581 193875710 666328525 498908324 632187216 765017501 994791282 29370017 242198516 940096086 959454242 903846684 952358931 449403239 876505965 683337331 945517086 169982512 487147867 872265120 930843877 470074795 674045573 876276909 993782308 12822018 384073949 437664233 955734493 220008679 326975257 276090729 402876658 278483231 822904051 817207719 842550291 204411268 254665581 372641401 672539217 495770401 905816986 289019651 458162111 129661807 750373251 97281080 946272518 745818168 839137193 710308263 840494968 679618907 922792348 516862722 788500278 570950951 817456199 439735782 620056004 656115875 818471249 520933150 973437078 826129921 900593123 878926992 897181029 422039603 578354040 415787984 483278750 881384270 917672735 14200553 952577267 40033575 480774665 582128160 645446932 82555919 328007107 806350813 814071852 638038959 964781403 607786082 756534451 522809285 670850855 3400233 790918160 951671514 987187849 402266791 917423369 220425184 851297469 944915477 963884106 168252768 499757818 573209774 626300709 26845364 189602656 782710111 875777837 547184770 698484450 423625325 886687106 880610460 900617164 171592740 394110715 408702436 850079936 53250167 942925170 95972887 345536398 368731158 658269658 848141799 980875135 189657693 972328956 729834758 776142220 219871379 365487997 976959038 983081808 806800360 872685188 716789781 746066250 893436731 946415791 231190121 633407198 524284810 749594611 331018353 874551309 784394847 961040760 782958468 829993217 806478184 948073457 595662218 642693883 813377521 860660498 825001302 974680803 811711070 850094079 210321772 838183558 578473896 666431527 950800223 959858365 265073849 328278750 296803246 766972487 402999261 668751321 519919869 734450560 522052224 684977632 915839152 962303251 814203830 889242543 622072552 676521437 279916581 691800877 117102187 774267914 96152214 773866584 188780563 577346805 128513846 567979041 331071394 400723749 406686585 889457722 88042673 868833829 617572930 618972130 605890809 744457850 491926518 761461580 224472208 593984035 928019051 977445477 377083752 405642584 334504351 459782896 17203957 532335358 561315924 743795459 436553509 635804325 597441760 805165816 844150898 954638090 763284341 893828417 996480734 997805660 65769763 915541799 848891487 875459271 45522619 545498305 5690515 366508952 17316732 963884420 302748326 686506200 323778795 513654819 908506448 974053951 650369843 784999573 992501353 992995487 363510060 677950777 544036034 949565841 317416740 335825540 95160636 955905000 274747546 924489692 371502623 945511351 852027409 860438074 493379924 547439497 651212039 849195779 517480480 704967133 119376567 405714130 853812870 989400455 153881464 500176533 454030392 517516205 19745507 850988755 921968063 967248360 667908224 703782531 967364850 996130434 836072633 885754936 16097151 633665899 301193456 734981015 129743307 788478167 777224545 933607282 995797356 996602140 622656696 885875741 467948179 887041361 419471135 419789495 811420455 946067515 991061867 993013957 896331171 960524566 449224668 567389229 542798206 646858443 893276997 947957842 232046152 709078696 574974930 704966121 699626397 775453596 473319873 513965192 723324453 724097294 815108472 898693530 977301259 983742434 730607346 762984913 703870254 744285119 542856646 994151636 972858047 981952942 558305516 968932901 915009413 947238830 379481090 411729445 829249536 953713497 97798787 111608571 814366684 893106556 535113023 794448528 71264224 840066967 917484662 975870488 695465911 756914753 208837471 717648684 49207748 432462368 12863285 723035585 991856951 991868601 997134764 997164676 214141109 678147034 739295910 861412277 680627792 929110872 719575458 739841483 29258937 38681020 441779327 490418268 900501650 936213260 727630189 738314486 132400266 843189714 86405712 117704771 256771643 536669578 917790869 935933842 702266998 733415996 193615280 607558780 408080238 980333230 959509326 994909916 78438442 332031569 244716688 365278932 575068550 994755496 664707656 742613464 315421140 656286558 406662961 915865902 182103424 464115619 708215149 823608567 320145678 725934074 256450914 570621555 422185102 529261827 645186744 936155931 132975026 889636026 667956783 674310634 985209986 998445571 370460621 706307133 195903851 706119485 160674294 729316890 251797696 545848661 68704162 636470799 342063777 435606026 873614510 941168696 667430336 887408503 141585865 272932157 724843982 887662332 440139453 711912386 159918494 480461968 352131524 455579702 462608099 582464120 269617355 801406137 195668767 573634522 299865114 784238118 142958824 866036598 782748916 833624831 156131746 192347825 652849821 698127109 855518744 866660763 200317959 406504495 96549492 974513079 592426305 969691167 520614599 585078327 942807353 998109668 563692971 621577800 77058563 117330720 835172574 931431301 198375515 560099352 256061471 772417849 726227032 768438301 392568644 640889201 429528727 655985548 949317223 986465254 988231640 997999567 374533929 379007056 606853312 725130430 445469144 743796649 501097079 619157015 615737641 886671451 559409379 940997154 983086309 984067898 187009532 687049395 387904441 524815579 427237582 949835586 158652966 548968044 241997284 409668756 450204811 525653519 585535798 827884381 968470246 998868256 994651330 995000116 267066125 417477222 637418115 780630984 657319006 762659685 68276763 981166560 628183637 760539751 80082572 333473398 131240951 253113314 854541409 907290056 290485331 360944662 294375395 460009995 695955420 864363757 346103848 725002961 505321829 509262166 334440114 739808967 191260028 203872562 73269297 903212320 859586233 998850577 757333172 873264089 136793591 986077332 776208511 979650404 404519682 772083316 571281833 608990463 13884025 786230165 682600357 998845740 409356722 952047844 888773434 909712804 424421849 679151397 806175190 817780041 370516700 433566950 264435740 801868302 991171093 992297706 435891931 450388684 287467436 360646698 326819190 963061144 264468179 840628023 56035544 934528447 992359616 995711209 358157113 749911560 269387352 748236649 502220959 551016269 990655002 998427571 492326257 529022285 397594364 505617445 33835724 246838970 174988499 667281075 383935220 999767005 971103787 979313862 228438867 734146899 157163214 250695739 691767091 938399289 140997316 206625274 243945841 484230463 31935950 836291806 154397657 389828099 87805527 905304633 270318036 763467675 933238854 969198780 163511134 981045656 411900009 475818808 572316047 709500986 905808634 980016430 555589693 876785691 222397299 642036827 187165426 302110368 524395600 949785484 806188470 952838614 583578100 724716792 538524270 836574164 465237637 681630753 621790814 819952253 586763509 910129718 967317551 990751822 457889223 684310560 747035752 808875809 693167254 991723420 279067057 822819436 119355796 435912108 425978972 533661972 906634485 954667453 260489226 810878912 118173052 251496594 322829537 813945941 898767771 961724584 936105802 999666711 62268293 929159074 635895499 691627606 510585253 804519765 624418326 821773127 91471385 273549149 895671969 947746479 730258490 993969251 795373524 838010634 821072151 996527490 296854495 475526839 261642092 645359550 203025608 373249013 542128758 784428640 257417535 273477250 455850962 790962769 228904740 365287561 50768122 136331828 80302338 674795386 179813809 960013866 339563915 398122959 511010573 918848651 741005315 843420992 836266743 937577670 500319919 997856898 415754529 504191232 554314697 783021185 956559401 998011066 370625880 518100499 212567155 521860021 485098897 883575426 832673972 998880673 268472960 491572005 12348888 395521090 899431709 985796529 887262824 978645745 745294684 984664555 177821300 569373534 721298271 990065701 494527924 813960310 572229336 857283172 939374993 994563430 534169286 665180665 112222300 458514772 96774117 277850424 977455378 979320857 152363783 952891409 117253734 611915415 532900082 582453674 824731554 878557849 295781359 380882533 912123101 936501250 404737594 486736333 188341814 438803289 48742249 415228495 94865884 921857551 23531621 164372744 898979483 948149951 669226987 736221619 174517252 181314679 631167932 739490744 791820825 962409420 661294249 933856990 920848274 928390646 650456376 930546528 911240297 942654579 912537532 961974638 15111963 725601174 167955676 367821441 609798857 899108274 938457199 998904892 620781704 791055297 353923204 683273431 202226917 954310569 579136723 659967391 164823070 646408433 331118243 658695004 57160633 206390773 695208575 835066211 497743624 880310746 633013405 961999569 701829404 879948707 838237637 857228365 300367414 709209739 362257382 672245164 210584248 417866985 731241858 744651347 385109077 911072427 23023778 312104922 654936011 746250176 614011309 800123910 297956417 644485617 726615438 789275621 288660254 388331612 535893679 659690162 251706220 969919220 463668536 749184167 702924528 705761709 67076180 257113594 326718231 585413894 73910977 847519042 249667769 671469432 475209084 702562589 87797818 943691809 164854574 452837374 26680631 825464445 808874614 891125660 903993483 957353768 938413540 991614012 69512185 752669962 269562573 367233460 8100868 899885402 307173557 803016879 425116503 926666664 371776427 712593027 67890999 989664434 971738900 972171351 420541026 547887101 525908551 907212990 549663474 614305627 227711361 434724465 280371377 408215961 150087885 967908749 725076597 776720582 7951599 271785046 898427346 901550407 436186737 679834962 362386263 898804507 546218594 846209829 225334765 337483911 159174272 474714977 721304734 740973700 259133305 586092296 535277180 769159584 440339166 855906322 97582826 499084346 397441907 751112073 734137075 819444364 773650383 778258493 99123310 284970619 360784472 570748859 588646787 862608873 702001154 945981450 877979820 945658041 501244584 755732041 794256783 829574025 859228458 983172008 419339291 711356430 91460055 107092327 673789574 855240538 893259180 898973905 681761635 921555275 867845182 885554596 517338981 550819386 414664721 707405670 676107196 762997104 557656713 859891437 629986475 964834976 272077728 635583983 381652813 674938868 846504279 858639456 724841714 787850819 953268824 985598222 932872149 983541822 485730630 690902676 864214490 955004272 280114761 745838821 653334064 894917144 394448786 935354510 786464219 878986522 214313338 748799542 177904020 389084633 917176910 953641836 948003656 950284581 824873503 910825501 862306816 925487139 239270728 586291272 408695226 491532400 850621806 869942926 478542346 764347871 88107156 252657472 97720471 864789283 927256063 982601992 982653091 999905744 188428573 778097589 498529057 652194373 2574307 823945310 308548353 670365709 955313804 981027503 580858287 846600408 414583918 953066042 352437001 414642312 409171359 493215934 130822708 146406855 515041044 974533508 91498925 896649290 294708291 564125664 208201253 603885338 485527929 671826562 324618715 901378981 354849709 447505395 937826225 981958707 275350391 351612992 968166486 984862712 787560568 993257368 442129106 915780965 233551117 906761562 629571011 877981816 976892385 992622502 471144918 742521481 433892173 992809007 535316839 976485395 40131968 813274416 337933865 345794770 89012679 319144084 675279573 923903357 659848774 963296027 511988511 996416965 290274777 428936226 959744685 965480355 917281289 993221927 791383754 837954830 793099209 961403878 494285131 707394468 635755447 767705917 322722429 592848069 372640730 653158592 491646461 607935292 993972492 998346391 583077147 968556981 757135374 918067988 465927370 519914224 442401626 681322013 486932293 949769276 843109199 869352190 370529427 742243052 638211604 808257832 296640586 508807660 324271350 345646238 454255545 512795765 252660027 485527328 33995998 480163098 701251149 895805302 402176028 595620403 425796107 723646048 176345047 533658011 211855995 704764241 964198961 971310747 839133652 862748180 953623858 996262749 344667699 464712756 918032985 978471003 31107337 771284720 527661319 939244038 537321486 975948434 955173252 957110424 347072180 420049698 341038172 444701197 593199615 846295192 697002471 941506708 382178618 492209482 712791132 759421730 208912445 415753814 148291015 565309241 563730176 906877901 745546840 986810760 582358351 874512222 598505534 684508116 327136448 442854374 272117891 826569125 423311835 995080218 25033673 698807119 586913167 656964023 892027073 932403373 112189547 248747394 79231384 158195904 97903079 609188085 384406353 844543990 50190791 455866826 537516974 737530417 52507467 731371252 813781126 831407438 95154836 917804818 284561486 720234782 638049001 744997354 925445826 982529774 459864841 637656060 780503645 875747979 805832541 928870065 714804988 928104079 879142625 898520595 475861602 960008847 77837151 867012883 740002828 784765720 486615314 625466568 512937294 893774471 831049595 888833404 689371044 718951994 335183196 530976295 828452157 945416671 729567193 841426460 178012646 212070429 693451653 980255635 35863189 933512976 481839654 524406675 502285006 653845844 865739109 874331634 453446587 980614132 971830458 987796108 184984611 849455682 900452488 910808598 699869180 796468448 324858084 452798588 563601218 930790226 749552384 934048426 688557458 999383752 630791919 935491336 636049791 757454327 175797519 184287073 430186055 657152124 888719644 913917310 655172458 745269964 59176593 671428571 543856601 792888735 249927550 596896171 879018982 984214056 527894901 892601989 867096779 930350639 481139192 786421667 404368089 885178699 472947831 763911644 420010321 858284596 578632661 831243161 234327937 394744460 861107856 966948977 936697421 950403459 979840615 984201628 57774661 649109541 123396645 332053172 74724866 534100817 559311366 811946798 454051794 648243583 114489758 459771123 310010217 853866739 960504407 971342139 296671236 952513915 836486144 942891763 614459016 977936394 912458925 937827654 482679588 873734011 444382980 905028138 388323106 416241157 745663173 919695493 967237158 970153804 528390700 587462993 171789384 553886735 417834518 863216915 369573277 987773160 843653644 889890525 137251542 664652779 221848921 699717835 639559366 954744918 448183745 640458037 993675728 996864637 285630533 643079763 914962834 996950975 356494389 621139464 770662014 810748015 916308813 975587783 788864015 977832748 355761695 742242208 949872802 990762566 349608945 586386503 421743240 984988219 655919521 956518502 979036374 994225192 568697629 624526564 546513906 999837211 473440650 987555919 765949883 790657746 960801286 974539714 39698639 334746333 758559863 812895420 752268747 867013611 2939279 553784169 955676705 980102773 503573274 964019742 631440917 907816721 494707657 729287663 629958726 907325046 993645096 995264289 237079411 879166989 545831419 680545593 133645003 718720696 371631129 752759513 214881142 570858652 342161124 491965581 682774120 906814720 625461882 626312968 672070452 931200169 573547062 708616005 497980192 830054481 918663875 942086578 584414896 735978348 696359638 814630879 467976116 853873685 286638273 421109252 169818257 624971026 566369779 610338035 560422212 982768861 531726567 711473431 320630453 763362621 279198286 842514898 36826940 556227466 797888642 809318296 554684532 897448322 350740468 550876697 610878059 948628228 129159958 727979178 918259742 920121967 619557988 704018456 165536311 491495090 843743224 946006335 745683998 961865259 240225437 474914596 947929022 970559115 189526010 859543331 626866852 681485996 474151037 837239709 633323917 788660733 173693669 992295045 102372098 168634920 121290089 375106089 890355954 896465470 70191544 738982951 311504083 780789441 52343794 733597650 38266981 722027939 487107979 785536176 7628999 712476557 720751448 950562957 169422405 464442812 611551549 939037867 140236215 421092404 389048310 951683269 419668117 971386723 154258277 985087125 245464473 706059929 110604847 304522131 598079939 935841400 803490882 830363985 832819227 972379368 825533741 834295665 498618140 693249054 567190040 736625143 879680040 979075549 191689702 313707940 136324921 677088801 159326766 716545243 268367604 650662817 866777115 921216719 998439556 999663602 566744138 859098602 23262300 708711526 555792385 905811392 976999436 991917990 988671764 995035055 10506238 774606662 134205931 311280413 93932497 798097889 272142789 814080898 513729199 888471704 243779413 557646037 475899300 807316359 812906932 871951383 737582650 765873927 43328378 928142247 597298841 879252720 130570094 188538346 322929729 760034015 200487628 907093591 674439239 718030637 150319046 628629393 821214593 857653404 446688554 698400352 413930696 998081777 14623148 427585602 183766305 308290966 243083196 677979095 177070569 266041060 496746021 640569454 493230960 587425848 305986068 684063063 405583592 777339988 593055594 680147179 161061818 349430165 570743054 594569455 458302291 602978852 295491357 821889072 52465067 963199011 312412245 892537401 958009664 963623242 414188859 614737444 21631077 583975661 374127385 905785394 753004477 790370806 555315961 634912271 787643886 796192606 84716832 644554770 295605309 817621189 596465259 659186117 63336370 182914353 826505200 886253714 674177912 845476612 150012866 183305197 68202906 459052630 98204821 622223187 40138285 365600276 496544960 525828468 75163208 374887635 748063066 984699729 742230446 828506285 308246437 670395615 424129317 900785351 638991988 809817721 433055074 579456793 991679186 997283058 999169087 999322664 234802374 552486023 178541525 268814147 295760184 362379834 138572253 784766035 677028088 981382463 41888026 459756149 456265442 707029318 817994301 989630044 672485152 992301382 327852111 358517610 769905688 790432778 120752884 656418887 670211322 863531700 424211911 892287161 828568607 994346666 370610061 480666799 194357718 199257096 895418650 960524175 690624306 797401252 45254735 193723112 787779136 811457674 947538075 978731785 646875962 956483164 374378945 630664517 78345154 700531719 443968480 817811346 928947781 944113381 710325378 927406060 478359429 638762731 44809719 850255217 352483799 793490301 199341061 591865489 969816898 984577790 793311781 896353748 803849473 970837580 334363336 340055897 606372720 717884889 354688215 593132860 181729521 720376397 365372266 800367925 856655903 889788264 752770424 827321055 889525342 899521593 133577397 537576136 164516323 478750594 59036543 220160956 270352856 514328668 181976725 653473172 875806511 991452118 819007113 821383061 381917670 760595084 211754646 221617470 92457653 794032636 405580949 946728464 190238940 543549203 338957889 523321205 445153122 806752963 348524370 580184904 93631341 738092519 791870652 877750252 987099983 989465440 602979707 730539087 211978119 901738508 892042516 970698659 241997647 911510428 893653552 958155493 147207831 321972523 576767810 707272063 783346621 811554179 373666256 618539607 842672506 964355129 767629180 838068740 891429377 895295359 877956608 917899584 679682748 818049995 471040489 831406393 728594944 869099199 460592647 594341242 780167411 901722715 972410534 990092670 634901290 758689438 724160869 727436228 648208377 883540772 630696102 772872318 505747176 598221177 209750965 568202208 699974578 772830039 764902939 832868552 581760003 955050358 532428104 995144026 727650156 735228340 322981649 897434394 938470393 951222288 635500107 891077310 538812753 731370363 15321496 257096275 663164696 755218992 69925311 533081505 464112700 601429643 730165117 804582251 361725593 757306720 991537220 998497806 134910957 808645022 389326410 663147268 508888541 577015734 537130614 825734276 687448369 960127280 732677997 791584737 8340318 148713069 575343433 693601957 397467292 487415154 679081166 916354894 973816783 988187318 123174896 741376503 476213886 671680435 94343065 164963514 86339441 323892833 696875889 776437472 372365789 420336298 138371606 547095618 85092837 680771623 557136376 706449849 257488754 995443210 913071997 952072339 639072334 877651662 338723982 719205046 246779657 807473599 389496316 788749563 437328066 812428824 152247955 596481337 134741093 207421337 675618052 805420435 340697560 986449746 713057486 984208785 112376898 544981242 835353509 859884439 96540446 928310558 789850099 877296159 67159231 553195695 192288654 717607424 926842923 965203324 523173103 962691846 367641551 723210642 916642509 951253283 43969381 258528934 737052862 751422335 222323363 728794745 773918641 902001603 156409071 931922836 728886457 817390801 12658780 203290963 868673135 900957106 544855071 793129309 401455240 630964110 681571515 740669143 5543769 43284120 257011360 695067228 937674415 987649734 314504208 510906100 243437520 347262738 367426535 850306113 290814195 685789511 749178890 999555490 848044887 869241025 29829236 808848707 750888398 994277374 122282569 357922568 414259406 886278096 67518515 108882664 613217543 878640536 622607108 932074610 145794467 318505461 876075353 979402386 802726120 925850132 46883971 785171899 358892178 768714770 212415908 729700842 751958314 815487306 987099593 995232252 689313824 889242708 116097826 525433458 972642036 973672279 740589392 986236975 153619594 500921445 702957749 855483113 906792626 975908803 444762974 525162823 206882090 937891479 978454143 994135333 755347924 784861985 379323673 575605858 599217712 753241632 279875535 384600536 617431113 939038856 712156122 900323066 121634698 957295515 539859509 808943726 44858656 858546061 249560598 336502548 307311670 853654417 793912065 899540303 825655796 850420845 220860732 702780143 794190188 988965782 636754697 855419818 524783364 624522167 786699546 926834509 726700478 744280768 79125593 492449368 914967911 942386456 610563239 935829860 943044740 973302901 790093553 873548163 583602039 657297745 87250434 998084334 920804652 965706834 256656641 981247460 676347945 742151223 96077550 947637399 542138669 710710037 360655808 540259350 617506292 834303320 967976495 992718077 926762193 996834354 571666546 903648499 202102608 570003233 855458947 924254445 501164883 761564986 88880131 138284188 813725191 843055511 837845353 991028329 970829734 989744585 8264910 320941145 234275714 394176423 154501044 278735207 351627831 499141114 743908075 985290847 437540598 551402520 174315741 814590155 597596548 857103787 42460657 655424863 261164249 541061873 562522928 843363633 144131653 306314089 591540002 819685431 16586941 561869669 543198100 957057040 47364313 472943079 807178494 893461651 237667359 783989117 422902044 600949138 177617534 269710385 30254692 364726068 433143586 440488887 566065038 566652764 291000061 583128133 526154765 837999103 867905555 976377247 329096297 928176450 318579939 938887456 633886345 974039580 539207195 989954621 571935247 629211792 384171590 391158405 969255003 990867974 621528071 957136252 515692918 694617239 490172380 924240150 484243778 633063824 695301231 858670087 821145282 905231472 417175928 874354334 883589014 936278859 483139709 701426313 759689518 940063464 27626028 462245144 60307831 115576131 121679540 281523834 234344897 785019927 164243869 540772251 630545944 643054257 73637518 160243701 728284118 737533264 191063696 707912202 292438184 990506268 222003680 718496173 847005036 854059170 75953939 826305239 651651059 926271894 138276978 550990208 927809744 942737501 42367070 64971314 882748851 995727309 373142912 451983954 932873547 973211780 55352265 869712057 962157260 967615686 690344587 795687027 318710999 937313009 651642590 679678357 339292550 552655826 173532327 986055679 331473754 492657225 253996061 340116512 186051327 805008153 798593597 845951225 832780642 899584945 158668489 611606804 638929680 732411749 632669264 981511117 650394337 870109124 616597125 945275575 156845823 676730222 360922478 599014420 335498027 632776400 828544523 881329712 56778344 57232374 71609680 719812647 851657852 955218442 937421954 968908334 695702162 854035868 127395968 169045661 329347627 662429162 852948198 869726717 500060381 735006477 255335897 630303258 954593847 970208107 866430552 905412595 31851554 61293254 436966597 899506290 330649948 689021523 5364690 655649901 884240816 990490579 810487653 939826665 84418695 354982280 206734101 384526838 288851697 719588570 399692246 814880289 328982484 573190033 668218772 802160461 163849565 635871167 400613701 672018120 548215009 982831540 10582828 757289511 641934254 849882322 339008896 510418693 757231211 866109310 290786847 381233424 363013427 919754249 456739366 481022613 824101876 926110950 352673892 416453699 796889660 932296862 426877304 433607004 115630618 885069231 368681127 811668068 479380783 597454679 916775518 946801277 363931711 892908495 513605718 676822985 684683448 940492765 930340093 974464968 577602409 946874131 713394116 928048046 788395322 971924762 337131978 468498071 747190212 785745517 714614043 842556809 798942751 806294760 656516169 868573310 94463991 864863472 913756451 962948897 614628697 877955815 950044162 956516793 362381352 713042755 871708444 942397665 154839626 956248958 217251901 502073289 626277248 918515794 622755791 659073000 694235052 704197197 764000177 943995654 358392391 761503611 495538151 957989882 998567781 999358425 966687173 989168972 907361283 929895125 978730141 978948607 46114106 622302463 841373310 856732459 291404089 964645746 779909182 947648759 180933139 897700286 423965461 607801850 325616967 927341432 959285117 993134884 124720862 532272274 557394274 738969892 789152295 956365147 69246903 933799001 828308508 856650313 667971899 853070607 252632093 459035819 42175811 426468468 855485387 938020996 474666040 987656522 791397421 961152515 173202334 881337382 468272777 917711531 200578634 960081561 367467382 509698481 75912909 179408160 738575312 854501779 573943975 912912528 152356345 385308531 910239075 954341359 469708708 775971240 551501900 716759806 450462017 912578129 20906553 840980143 45197569 987542079 760387280 925580357 926377002 995258004 202997606 995861404 578450877 898978859 359186850 589596621 7347565 947151857 789364482 847982248 318572772 420411267 403167542 440350976 366927816 848504244 334313167 354659616 605704379 910896559 469241086 971748904 814911213 838521068 335946215 569378419 9708674 185479152 128380578 934390199 405403008 549226508 712073122 862566108 827157489 993505144 339636309 909095651 333735859 345629885 24916287 860160781 882019923 918469887 182724995 534570558 838975469 851597822 671949453 903814967 439437725 664631907 516295667 757069615 546188377 881473856 886457756 926976098 567852495 859490761 186986347 609046790 517825558 962454613 354229051 830422807 112196426 513541120 897526573 910771028 777037812 904928955 215151840 692010035 490435743 699078510 11938876 885702923 588209687 821826771 994205999 995424299 592403783 896257791 942924781 973431725 956828229 990465168 223622472 523259015 874435635 929501733 737450856 856409786 686087377 714239737 666789316 900546428 938419118 955491294 291763155 450281663 216255165 950359258 991622992 993658323 936775407 994388319 19793933 746367078 378066738 866612644 525166815 604305399 907504292 939847103 694380948 733526949 12202753 96110840 748817282 762964531 680556819 821415523 37457170 833089470 945732168 966705443 661563792 729865559 369428838 774411243 928177567 988185173 573469674 849599670 965269092 978734249 800894508 868440907 699466102 918987050 568709885 762523634 536565815 619123661 989168071 993884662 912939871 979816834 860094213 881468671 699914046 867197198 736590950 760972392 553749183 863588160 311881648 515009536 13545 600811138 785249651 864109135 387383800 657445255 222173159 813587440 238040601 574650666 272783261 351182202 229971400 594551102 906734520 969446461 865028743 902870801 203250944 351863784 550452995 780992922 858318976 945357448 359614465 931772971 588765659 924079573 908821903 936925177 647718477 803242212 654393095 793483447 401424813 508680713 627390094 847585121 384488692 785566593 188384717 673251043 196402602 224952123 926153829 974023941 143480353 447699852 317380247 831050641 348630228 941622357 115289685 612216769 872808320 995242381 374158458 804916102 998303914 998402552 808014981 822366342 48251848 555888398 993652049 999764873 502465994 918567894 474434725 599136421 949493015 950141277 332159934 966576920 597462150 743194200 267519050 323174574 850523858 889944287 369692632 701206732 959236650 999729460 414074086 758358012 967781945 968506833 559651036 835698923 964575291 999275970 549496758 936597195 5711075 648650355 391032936 649926344 300623133 551028018 461907156 981670920 122775986 506385467 424940529 935095698 545002845 553909755 223528802 966862111 177290959 382956987 604108494 607089254 208952641 706302870 187298180 429795136 313586260 803130729 400797643 504321997 958350895 996397261 296625799 451854800 252970218 317785556 500448397 871486743 361505398 371677437 561514679 886515204 133946980 628619150 742908240 761314135 597153324 608703415 456762028 595284908 12702425 116917800 94190686 931008687 832787149 916009405 558434493 643809476 222298765 366738067 836039681 972379999 48740661 366325334 604390395 915987888 79195289 545269429 254838485 263419601 651155101 672972291 359246546 423636156 77224751 390696212 913142045 938650130 143286800 476158279 873175391 874988642 527242134 558984789 501503527 994650805 289559602 498808017 728204126 847232813 669646125 847578044 438310891 643411648 124722172 837259108 452274639 561851956 51386460 263056633 792387619 930001401 841749265 982586770 524351868 843348731 956001749 972294936 196781291 727616199 724823187 895567068 449161165 826977667 90148204 671327980 798519732 879003593 958555774 995220656 441219797 601136894 666764029 899984024 317259754 318387341 906347951 921589000 475861519 736778572 651682275 817506969 374003302 608088111 230038655 314321566 13727418 502555207 258719570 773041238 763984231 909691268 644582144 940247832 83614791 913462952 637874628 854064583 800186876 831338672 36238677 907635043 42067367 192396791 556431821 766835317 772910053 895495235 397721864 716749317 263149157 695787452 300834988 697660796 870990274 981408624 82967806 821187138 820944536 867530641 902467874 978185853 896960913 932164858 360124296 628255589 394642148 995345552 412064238 521419823 327464870 891031984 253737531 894419606 852215373 951800811 422576700 520646263 175651195 845087631 466537112 544550703 447918320 639390666 422381646 879341733 610679189 926989139 179276486 344967990 978368998 981810108 207074003 630154381 576719455 672941776 719625977 900722913 988062091 991576341 346292804 914316030 775858627 855891474 269522782 552281124 837174199 924416626 969853825 989976897 423381738 889492365 445103426 852356396 13378838 302027486 827277532 847223067 869378739 959358425 647831924 718371940 415622682 721168214 995204367 997209134 40216182 859561369 267955436 539156145 675669939 819125721 496146472 639401019 68128273 621499595 313817115 958884070 852714870 967315728 568467500 770724847 633607218 918187990 301899320 348327330 531856149 559863618 554111729 554836099 493489082 716415352 57437442 749057758 856981176 910732341 696196333 751776399 857947969 975892938 102497578 406503622 24403324 953341694 707542183 869580869 817386216 931163155 842106320 968061813 754405036 767317926 594872114 859505354 508877953 878611696 697336194 995161575 713713600 719702201 705283142 947483203 837400767 841003125 224118375 538839386 212558114 516404425 354240940 920369429 500666116 637128189 352716652 781480003 951170603 951336652 645781030 654940567 738459270 777398691 461113215 914901386 785300434 831934373 65176615 313651513 691029716 787647899 625815353 766997553 106845999 381860382 20577347 203015964 648036008 810390565 782663723 801899173 920167010 923842677 443916791 917650468 83439144 296551307 792688146 865095285 26454571 677038674 238933688 241413255 992095141 997242343 234046078 535012209 236740392 735522074 228088430 786998555 914911814 931342489 980486424 982905880 79772300 236758405 296059685 965154365 895146656 947741129 16039363 415222845 946623976 994505086 864924683 872640488 754293087 978370905 864563785 900776323 198766560 916235074 741418267 772575577 175773460 501439652 85550468 294626453 873265936 981389825 310871244 365113775 325402037 757774544 851981195 884920598 907222821 907754879 139666393 320372846 631308125 808911186 242857496 579597833 826650236 974986603 534755918 992738527 605192138 753624704 264555362 467108969 798008562 959336630 23638410 640708523 914568510 927446634 775353269 922186896 261331675 552376410 636796933 853219490 21018475 713401292 74891770 338636411 360693786 382061061 964841581 987626432 767690754 950263007 289501683 888600920 255117933 633644076 460894516 887607798 936057314 952941809 499448854 570266856 618763926 700870698 20292297 730633646 783098865 926778853 474930276 595437647 922927303 989244703 61063333 238186725 431139477 947924714 855757346 920413957 902410536 947003026 326982533 494551840 659054243 856819275 923727289 999043538 88108184 417309816 238288683 808784872 666830715 780338863 961977219 969783931 750321470 901614163 425229168 889565212 587759633 785005239 358796327 462179441 217948079 857917999 202139219 837641788 192177678 280318178 522612374 573794469 207071249 337549103 815139487 848889517 257319133 849789426 44973077 215377634 323259909 781064039 877506189 993983193 757330851 838568524 168897096 501805825 824219355 900787101 203073038 575990744 914676216 992537471 940569144 979519403 488015027 526021843 217159442 864738780 535356733 694225340 867310182 888184823 266198410 834543264 976620752 989953058 632192947 969480408 117912773 450024769 260212408 783701108 850062890 888001501 313511123 602152755 858298194 933758397 393479160 601017216 698644566 933267914 523443707 776788538 343645820 975012131 70324091 841131222 102538306 897495425 246151659 728329652 701975592 904601928 704301774 704976803 417554323 753771892 761551132 956610231 531543297 834651983 863617136 881744717 691535037 703378957 540487973 753084520 964628106 989789736 5647943 624081844 820728072 898844824 746149639 881288460 381461109 935123677 269905664 313699575 169871135 355874503 133368588 826845550 251757746 308398850 881562894 989712329 476940877 685930465 361972874 539340199 988010109 994110648 509137636 536534235 227841256 383306765 874691293 964489795 134002775 924856818 946476231 980213441 291843885 380857833 345204238 500943222 709781898 850450736 306135149 323658771 442510787 606059109 265904176 957922289 684094513 983969837 185332751 948537919 929502874 971347894 104063873 973370037 938172637 973877914 535464637 677251065 181577464 835921922 161614285 179933776 325094197 593783328 760243369 833456426 567358669 625677874 268721458 695102958 908643375 917860097 190073531 896393213 25022268 544935889 278169909 427122617 744218289 841954037 603714845 824177978 476562340 746497584 760868331 994291879 998727201 999937654 898530648 904282800 323162662 624582822 935192575 995807890 768429883 939701961 744088650 901473795 409060809 758460164 445927934 450577766 535085904 630446651 889053074 917860244 894400599 985490115 394201694 815259566 132265516 854335450 179343323 480896400 114147711 388792276 182866250 365203518 189110087 419762919 589372767 604431049 698404453 998123271 176104336 565822987 379064213 845317437 883679700 897586906 109192592 337505914 784467706 953216311 270344076 433047852 841735914 928995445 176393286 385281962 887506707 933052281 244203902 983696982 81458569 660153539 927072598 930560232 330586132 477543647 972362825 994317865 344960081 472580687 116865196 665514220 823356720 998643110 760825077 818490348 653567242 673817499 934269226 970591404 679731153 857225571 253521990 539618040 753182995 771333014 87001668 705426063 219155265 743055799 820483599 918939531 989157868 994826198 239049796 746311419 701050674 935877420 993049162 995883859 515783976 733257923 823748760 943457220 239175856 699464287 562205285 607370850 246236580 838480792 279326026 608966675 635968269 860915014 834328780 889109788 997744595 999111060 958638752 966300204 86303420 809508268 495383446 713142456 344274453 940198998 994412438 996980812 990629947 998733228 326859917 964555336 264301247 320509231 180949912 661941426 315433524 724451812 111140435 546811363 877107886 957141559 649117556 865224768 139167964 954110584 778240467 785778582 306336508 428224081 73856004 496025615 738974051 950904172 727986427 953174323 322487168 902360139 551612283 867854548 429715842 802896733 997159672 998123469 327466188 872047164 549562897 858826077 133047013 797822712 458427716 511120619 562185477 672372154 870009052 905034084 167257928 975768279 669969652 684141336 708374193 804923950 862545821 942448844 879266447 928556423 856390403 866156545 5607364 150137185 94032260 196816381 529073083 891993947 834663537 947538321 187516921 273656916 863424673 991707563 351599122 592333463 728284736 869032899 58601233 735817750 782253398 802679707 773291782 956976249 16667965 762909620 593008471 749674993 991818436 996018708 392324290 456111493 324971972 822453199 40403874 692318369 822757213 911759409 879862927 944832867 191726993 395538052 346699968 509986236 218751054 701863368 117649213 749610275 930980477 958054570 699771683 904504485 280504499 401603202 721136286 936770520 342314486 425294972 763082483 833054559 678276878 761242821 87442073 449407342 649543242 901705409 340627453 735328037 101927057 856363802 290175803 443266345 402667752 910563352 705263216 878736634 11735039 622725377 75451915 144763463 897496025 939443652 900386559 924331366 437773394 521068804 190914770 500318168 79338862 295294918 91674185 340811796 902498792 987223503 120885514 631656786 969586242 978378248 750882308 925599956 308263340 888745391 866268461 979984385 952132133 992280279 889858367 961482118 125126305 361963993 802339240 973066257 881848816 988644568 217411070 289819524 372384888 939688479 218278637 648582017 732595131 738804468 655227618 731967707 167089118 816429817 430951141 959910251 816083338 924200842 552286862 625710002 167899836 467647084 473409096 813016995 50405006 742412863 490850983 559497258 844275119 917246305 258905207 798223224 412748029 687255793 518888171 963483163 368355928 979066932 967636397 977767922 623622233 772649024 302999228 344409744 131943373 410577830 336840301 961124209 257929888 950779974 274337685 986620096 265810084 518537982 241333986 350516636 214992045 711235353 483072575 496925466 659693980 943347863 962033207 980987710 905115520 914965623 573777634 980895099 707229716 786238230 983110233 997510898 38859841 673872520 849733653 851812336 601665674 655265426 812340270 830782442 928467812 934850247 136572770 234562205 209910537 538512177 744730966 799441469 278467722 888709212 251670630 649934779 491861754 631343502 403947504 506916499 350344798 497207477 661566864 704111804 785922624 848946614 818704222 848763921 41832899 779263898 532577153 980107348 533795199 637864156 929808441 947419403 674816006 957790385 508447419 821133630 172007480 214820443 481072849 812453158 286280803 561554684 553104317 621310076 685859550 787703369 206450667 906237018 556120019 784365996 497534618 993422611 446248706 875090761 976257012 990887776 489109386 552594788 331270801 411560817 653156968 673873114 815666309 961068465 300999843 310223175 74181061 937199301 309449618 911592580 899102616 931074510 944212101 975599790 411797893 961888269 975181983 997958017 775941697 836112627 250982316 388051238 794205915 821447916 836785362 886214592 643650768 667869792 900674747 971470537 77749061 483906039 110850317 629008502 774746586 887660299 302897579 658520055 703313535 898506055 556775711 803929217 855471622 913621292 355319343 562531598 686931579 729972694 605705362 915889003 96467357 424162957 469780094 751239409 720077873 986065956 587533596 797969594 711810738 961673554 277559290 679913319 871890284 941677728 976655027 979875640 824366444 858358693 703467473 709474176 588262751 592720402 490420049 553785934 288291704 767132897 355832855 370287355 222741303 592626636 913604017 936802521 294436430 454150747 788515919 863842413 331154681 441748056 875536326 934007750 403614603 551335009 395443665 591541910 698656100 943516250 707880413 854804527 653925623 779376943 672683082 959238883 82867392 539963633 433651762 731221289 480598291 526343116 561657774 827331901 892009731 940648532 707163934 816224503 210758622 799659962 93075731 411893983 839704997 945881327 626146199 894843604 932338627 962535174 158766733 724873719 946987597 958101678 163330224 221288906 61425530 242077895 981616735 985459807 442602647 459943924 739531618 877663874 379936733 868874561 393711622 971711387 31362158 936093938 9460658 709996332 586172982 636679904 558538965 825333361 258946325 979478636 489227718 665724627 574134660 928844819 23764240 547193099 850729406 967500114 847076114 904335910 401998632 805080603 629219680 679997232 124807763 258719489 272200179 310370235 675776053 943483666 899373403 902368435 276073654 311155268 499369560 813136307 447696029 918421668 109792250 236438932 750733406 816879006 399001768 986135254 297797916 654497714 248889461 744581530 482178466 750022912 413758107 931118122 69007963 580016217 514499444 868217842 338844706 528108442 540559121 815363037 892701843 939368992 528351173 820992511 784681118 932305757 649067622 920877414 145682051 481407704 837680309 873014203 35348509 427906524 951998933 985380683 599983488 977733457 233140808 432429083 772570802 941666120 249557407 805866956 834226854 920046992 991125089 991235215 50802414 584182169 474442225 826928362 921770542 966990640 742582421 801664580 709601537 875249055 618984704 765104551 387412939 818718342 492188447 966489437 40570895 682121994 311495145 355271638 918394718 940249196 745243371 827534654 386021815 899279020 261059694 699708726 415882333 490622159 127662810 644319450 532813844 607031723 823449663 971257552 513851603 551070016 938745237 983354583 299432657 823774247 447466952 827617218 739036499 973876340 264042984 443456703 676705940 923657422 976144041 987258912 982981800 990730002 586994182 851539325 465364994 549550826 494764306 549025985 405233209 781114124 30963120 322390476 187094732 967028937 542748037 855834254 900873091 986022764 695128929 793193243 118663848 241408835 474151395 626729958 793296306 991473549 72975701 327080378 311053241 738613998 356627911 583883967 357335083 835307830 6488203 442847560 754992533 978033102 316544454 875486815 139704510 955712664 84329484 251797345 684681466 765446832 690061958 748014469 33126350 995343775 102631753 682412752 340091501 832728257 457829715 610017776 877394823 965549102 565526803 769172196 91489094 341371234 542381674 705761587 822159634 856479363 635550530 784394126 106440636 548022650 119448547 767363311 393121950 696473256 987344459 992457869 71163917 233978323 119662506 866888298 434233693 547828863 899555048 901932878 299435768 476449502 125343158 203103638 206827589 486051966 656526480 973226742 785667953 809797281 540777365 604207663 592654612 788984648 573421360 837709049 937894262 974823544 250600784 458637944 318732124 516243389 796562684 902765846 457986921 534936401 3121609 151260352 151750612 891034977 575233536 749130819 825334948 830617947 580819887 771949736 708048164 957981832 382584133 677516552 21083517 562442971 343340519 497154647 932480462 962043746 761880282 800926230 890287929 924256471 811520724 816405525 188580906 670595501 237239533 451290124 131751766 172600315 84080581 873765128 532386969 618129909 177596230 973991966 467506962 597360557 71672349 318048328 756733093 811155701 186328483 327991175 16016713 751349129 93214531 216779234 524020113 818404067 794383559 922109657 657941275 762176870 509217294 628333748 193171444 938858385 235451244 291901301 708512316 726355108 318489433 685878966 656686187 896512209 435036936 769139348 437552015 792048794 545409648 626301782 256232433 478966823 633053789 878772631 232712762 283468912 564706158 589317581 783930091 896322530 386930480 680391114 759598236 948024931 284213176 796681259 442921242 714849132 750026010 758828033 613810061 892586262 103798301 166926432 933646088 951627319 703900619 961010265 442055165 490491452 299871304 689137642 887424046 904323598 396179585 413645785 257562301 979098433 776170330 918126091 671785794 798021838 93196183 462483426 143499995 558639357 6902899 864913507 541564868 953096015 511720432 712542790 696280513 843769424 377694099 864938315 380799977 788743737 330188630 555118141 396763038 937935597 955848886 991277965 897028658 978139648 248398439 656927443 291854013 943109564 555595581 655852826 879395309 917168051 155289217 307398411 574450190 847621176 752377519 979057715 147274708 701324453 303210002 955628771 56973955 627050019 161352045 702821621 672379277 794209088 714121019 750875806 738320795 923176734 631736160 718957967 104204143 968043217 18985000 45862682 271491944 294681045 587099962 753891306 499651611 972033067 440707764 697885532 745352149 864311992 568753350 903469812 12125679 486519837 327281643 570974221 711727310 933481325 177984087 490851720 110549807 960202724 687363257 864725546 601236301 768658916 13631546 944214042 741895262 752136206 730642710 882630968 377675950 380075808 577326917 771110603 492706789 616872504 429858798 841912062 436816671 945439209 511840208 882365167 252349984 590196613 95635230 469206906 184548154 471727670 799415207 933245539 976048663 992603374 92039937 463486889 95359118 222205448 871778867 964480464 273149631 548692218 835012935 874655367 316751288 790064317 336862625 817336490 667296740 819118643 624291217 633138548 433173115 665284027 633096931 905176140 189546387 737994861 435660580 585811016 887467314 992267829 659157531 854959124 90686808 876793791 998183444 998664483 655414523 795345168 161547035 728792894 791597291 902268465 750271859 851010142 485580636 780122038 71208778 746347250 976512291 998022518 480952792 548528232 367026024 638626711 613747654 754378638 286359201 876641150 497374836 918394936 536093162 924744823 220417130 580109639 103286332 481253011 443694852 928081298 907707999 950667482 488156515 945101323 293793312 869884438 456452549 798845104 262660551 910883815 248849697 840466923 600607143 787216053 231130786 916585517 208179958 344011589 128229827 964512095 56444097 448346059 329739320 965374505 421146028 502783019 897646742 942633357 928526526 945203227 270406290 694358343 579861452 857250996 730923764 782559836 14661112 347244831 583957033 733999991 275969442 923919518 408441085 643129686 364740044 721036396 574789801 959556796 955306721 976781376 243625690 371968418 724599346 804400888 338633570 841183582 847998118 892937335 491418170 913891274 721710360 829061990 473260428 538655781 257568735 645127267 1844738 335828282 346466057 347190848 727465367 962115540 631791855 868991988 151437052 277163414 50919831 840117585 213364731 567541343 13342447 911921909 584994571 735661318 488437573 966684711 589157834 900363959 60119275 279488312 157601774 787286205 733850814 940220688 964684957 982876179 589271544 720052012 490307172 924880354 202004546 858860343 523720046 668724512 719245467 972753356 847244450 916313774 181373876 894092114 939225123 967163395 189134479 951288377 878823269 994468915 526446757 873187021 697788098 764819698 978060421 978363890 703823682 936579534 596074991 944979686 782035491 796746602 704862992 736553758 393234929 632016961 307451016 537582976 162868417 903238235 116121470 686806137 555172784 955077574 589037990 603000705 531722572 709707662 16370282 176503234 43781301 620354604 612027131 673349242 798248380 800233498 63573585 378597156 590478701 907999229 349891581 575239109 762101584 904643319 114924227 741962579 168387570 919074845 423875839 477537898 511497975 948376016 497256214 620075721 219702385 964527069 846265948 959234825 582111578 931102210 358634621 678338704 491841074 873802463 199079621 539452654 336632352 507044749 343686008 957859442 125599304 208173016 530100900 554496773 194734737 255477668 496489867 900384187 42495977 447502871 67111280 910503063 736945867 981516873 806109929 928391911 162514410 940338359 664007347 949383380 591558686 782981193 325543647 517638829 747708822 848925440 689119692 973743906 789386898 987623500 456774945 872683141 814084237 845379223 991495869 993485011 457621694 702611201 942602883 962031469 596782309 755225891 751618695 807378582 578052749 793497849 135271765 474474050 204293343 787152821 559519019 692489454 188347836 634513914 603288191 705490916 217571160 364374098 931201767 976577519 687951075 749070181 574907803 771596174 28693384 478427668 628474417 664566104 187764122 539599339 962219728 995425056 993865453 999425932 3220818 592655164 379814733 425610635 919747379 998375445 504796108 656491199 540337827 624217411 581077150 898564041 531933536 610270173 705924617 759640668 368094968 718094693 241742252 528044778 273649687 304721110 288873216 744990695 466077073 980589657 376726968 449707151 25804369 907497727 683013120 826743907 419057235 487512182 337772299 845587845 410820802 872972748 674055312 902452127 31441148 942276627 624042377 783796200 577876391 802807652 24228801 157974709 102497723 638439063 116676607 228592170 866211804 984913381 599173480 944284120 931116158 996696677 688451992 744963783 820604973 955313124 439722924 894319273 744480702 820547174 379771887 988758184 143366929 291875958 379265224 646392539 597684420 743045860 11849697 721198649 936723080 972130006 906540926 944983864 543503952 681471193 264571022 768715902 170958820 430842266 671377914 818035665 233038483 310057749 129755672 763432102 79927067 755907450 199057698 791736482 802305357 838778330 337640266 510225659 42004450 606031722 742582054 912903514 94969419 651162535 229446031 379430478 841794543 862020990 843621908 920025696 936020620 988356993 776600518 930370772 823333578 846643662 656410894 896131500 183804028 959827865 359498885 477135942 317304395 555095730 978280827 998583390 650670395 711436344 822825963 892461654 889794125 913300143 675489705 775357086 629433938 785870863 68664388 476868696 495497542 920941816 901079363 983556540 417595505 968200451 820253427 941217399 179250143 815680814 856210107 856289854 513705217 593093486 234776297 253539814 610352434 968831760 891924537 981292321 413820633 984108935 923885899 942102625 86464349 297954152 806552659 880097544 710038843 891432257 401512742 671340939 495048395 853420056 376433128 407320677 370590835 390379909 303083191 913466751 855141477 908301881 345159053 387054750 32577506 638079662 392388879 874139008 727278364 831987792 529516483 556356231 562372658 800315074 619604479 978586221 693996867 854412021 43462316 449349676 874675714 985366889 517548827 607273221 741930454 806697118 54757440 893106545 447602940 723465456 75761782 675111293 500386248 676143113 236065795 363383158 363418184 475464393 931325847 952953538 66282562 829120010 12041226 408370465 515321100 694471240 510658646 907242711 524185557 842462303 827108881 902843948 650258525 848807897 3927543 19390441 350211672 731679006 34471534 119964901 150269011 801306104 5368007 586495927 78920757 966631184 480183761 481452875 861433973 994479673 139396846 800753982 158530812 802909835 61942835 348885305 105556827 545592198 302212360 709616706 529171917 531354876 758808713 881474709 415294078 887869887 363377399 784003155 831612067 858615182 674587225 859026683 797230797 899014093 893206446 920913673 306357411 447269682 72814504 371521628 512587728 689931541 633598765 659747875 434661400 694203956 339755560 888005172 940301945 998962202 278521119 503074948 349885070 419196671 695553403 767836411 820434817 907994927 706999440 920560438 441057276 986267491 612823889 679206650 858021630 947750802 210642817 735155334 326631958 905079046 841600011 931265181 677447284 959959808 379080719 605368614 851095810 939012302 16807572 396011775 70920570 964135382 429719473 784601777 496858615 665367009 209820589 582654266 543559132 859259855 97494980 958569856 897493166 947882102 109740561 674607098 367618282 414263504 874430554 936594983 136293460 365026069 746631671 833726983 734215029 905402614 906465039 937938017 952825510 957279276 179111489 947767439 739698306 850309597 556431637 844293711 541846474 815476040 793934626 842433838 872620461 970304749 860443705 943591045 708450883 975310245 356059115 931383634 455362654 843491546 77559894 661390443 803506835 988784005 827000336 925516515 858819301 932199376 191092632 740204755 582459283 912335644 348297782 914942594 832768908 842126076 108765298 931411284 882944079 974174994 466081690 772412247 299200085 779680736 858957769 934026384 467551632 954513957 775642866 990558080 522988720 933997763 685066925 893411399 630465037 912044890 589639564 707135631 239053455 988133636 93083009 432469204 39155053 728862195 762633029 833994754 847535907 872379811 10928950 161117502 525904398 791099845 238969128 712470834 975969214 994820956 994254716 998878707 544676669 763460709 421308586 448414794 286438019 794985999 911835728 975936414 980806124 999035660 541446342 904343062 732701197 918374897 179058698 236148026 147914312 955766108 303090671 813047641 249253426 592217889 287162497 636647787 140152464 323477107 235364493 249305131 725302102 945532359 749889403 863467619 861052557 887056748 902760432 907892865 25389561 298038349 737000943 871776302 789063463 843199258 992220275 998345163 813048890 940348423 691455033 987385533 663639493 952669595 652494736 939037855 846337473 950711037 893023524 999845935 632707123 714977046 140885041 981314910 262856435 560490978 186002147 784729687 153911726 638856008 180881189 534560016 352258639 729900476 845699279 931924284 690336244 857014108 281976176 383859050 58069047 379782909 994260579 998362102 448392739 595384353 366403271 768000355 630617795 965238354 112428852 568530490 388709280 764832974 201398621 223986449 370875605 997159540 486884879 633922136 760917791 952903447 531439311 956951424 259270269 951027999 966247911 988103971 18519598 348952005 160003049 508979561 959535737 997201164 412543951 907234245 154433555 182765791 501113261 522855422 102958586 792475018 332278247 861514908 366778352 493210191 413470730 744383537 273389646 784845232 925246961 952479366 580749067 823057771 314535973 323153543 850718254 973167304 781483391 925273231 28121971 731182606 179100575 448524983 441719648 600364184 673635728 880952310 900605481 967378157 494467596 576237547 846315405 916865061 489589174 889908317 860444498 982905790 464592001 884361693 611606028 680251731 291060433 533065155 88877981 976041247 478659555 893394862 127216098 790248689 123126754 974779678 339568548 375938846 291007210 485022223 381838710 741297670 368670991 550357046 239301202 425648216 951231233 986754748 382425359 842177318 704549467 729929968 332911325 361789658 656555282 890586470 763431612 887393412 699846867 746609942 12871810 40251430 336728615 779833120 439631057 947832801 720849194 800285097 389248499 580497813 524581925 750654110 176132970 288806505 213320631 696337163 313787339 432972434 430798730 605867407 981013416 992180570 788181599 955815973 581182307 962483224 61829894 722322745 154703027 314187945 915018312 979342442 191830750 824784337 510272543 782299977 952746853 991011121 307833093 877760355 495156358 970988322 248296711 720173108 453069845 888521643 127343941 426264865 311775932 864686611 574458470 597755291 302563070 926516360 804209664 924376775 809144318 986380842 770593130 965213106 654120897 733290257 592509795 889945950 361457859 815438538 586860846 647503323 775586971 966613190 288450058 872692602 654395542 826253754 97615216 278269005 178763775 179335767 530079900 838380826 618771650 722441514 143767185 515329013 619655356 803306846 286412052 586695612 833149952 843212692 966539775 966995321 705089701 971057415 118110738 556007214 466950802 703749818 569629456 582152943 975883830 988009441 311526420 455359680 717342348 888364106 28004480 430667067 814273695 825343074 7054541 332806145 971612473 978957771 359924490 653178961 353377752 487764151 817728273 983826807 218552514 241587815 754377943 929951693 624475790 720860456 6773738 875520980 886890429 963427599 139118435 526575462 529846097 735625786 659217736 919473803 155579330 217822457 933950741 943741351 586245350 783738173 295813708 360544701 474152308 476386871 788641192 967596064 512678262 730907843 263248459 616404154 926629408 964706402 235659832 948558572 156637197 536844095 20132689 422257425 587786786 720030125 204105731 235845797 965896025 982959314 597523092 784354901 777930322 971480900 230157861 485412843 381246633 511865005 611402747 755378357 538250297 781709257 564716348 646154325 303202474 504452032 644588386 761096870 51534035 281716345 772768254 980469259 192528521 273031539 821241949 975265609 360698459 898150802 50403037 978130418 560661200 784191996 864602183 909934905 553512281 640040995 920731941 926225622 912609648 954790039 267064710 861534198 55158337 670780099 491329203 594677972 645390800 814775876 645948482 911417512 747757912 886110452 572789512 965329283 616869096 803516961 268651749 892558295 810580627 983394034 800002830 814892496 12688184 484925141 635622108 815201852 298202235 586996085 190737247 781850715 980845116 990446997 455932401 904460016 449876358 460137628 498849006 581292391 493233589 689868068 941774038 999231287 476269840 760998460 936734958 958166557 671425739 682332234 644000359 862718664 369337691 719777282 452235272 615411168 809631376 968567559 433357050 696635221 140540944 482884815 989044237 994413191 699288959 699870658 71486329 580382655 222031005 653348724 78895962 637640150 644408442 698116984 843308835 862746328 231402270 868254747 260381449 372076965 335955213 702336547 204064421 294162630 722306376 980833267 666739001 687275552 590060290 932652434 313708581 991013718 759597928 838744602 284125433 483727971 268490061 656776791 588280798 762113575 904667423 982887680 969060756 976032088 539827336 568931928 918601461 970063636 279016737 616443055 814677734 996373178 142969876 764024884 424289580 781409909 337519370 592117636 192796461 776371998 323011235 886849013 183342275 976796553 918725858 953303537 966786152 993215118 314416601 597339832 477905509 666291943 176212746 780721752 860110354 889447067 770905630 926119195 17991971 192283654 803868745 971868729 256385126 486660983 943426568 976976090 483767757 930160021 240656093 897321767 393166666 564707955 669799461 872268312 686455501 868395746 278851019 421411320 62983352 64159012 835997339 866419082 963122213 983163668 280083310 500605572 903330625 929327611 537320044 778173959 831201363 900190769 305861876 484011043 103414714 288522819 826775008 964631104 493991607 919504327 835780125 864098722 5337362 834397073 108331665 909464051 271297681 664731700 951153118 955874172 713444363 763935504 288816960 501525666 528176509 916819608 414786284 644492770 403101730 616328565 206223131 859591919 705153923 799113547 152222425 268235542 991886872 999691821 648591110 720021434 760940056 880260333 961783396 999725824 919108568 933090231 226303296 674738021 430083974 698160010 812284989 932152439 902572676 991760176 329213398 689582160 783086324 836315809 425052674 873694871 812325512 996355442 517249961 862524971 566484929 772338780 360473514 673112091 280432415 654350538 263914465 402423246 629719654 765328745 321787860 501633497 227415040 836026734 530433378 619926947 980732103 996001068 604000867 648996907 295159441 349507429 692111045 933483333 42460699 469902880 405225258 501863744 222198022 226893637 595908487 872611996 542808273 848957587 733919143 801288518 373026289 375762713 120470830 244487736 862492364 888810074 53247810 464488250 172368476 188034151 993841036 997800889 611776905 953049708 133719041 162403269 409017117 583952075 960843173 995080403 946854743 987752845 180379867 266021548 498743404 937634073 594667246 723409782 748004459 800840588 740585574 874872631 940444023 984195499 833827979 944133465 417190949 452022054 228885269 682054727 407767467 924239303 926683623 993325796 315407608 676845913 296045037 752468067 928108117 961383695 710170470 970695966 137331280 733058343 337743113 505415801 711572403 867605292 624194183 936705769 883301428 995786716 403285131 548108448 457300722 814292486 17705808 112468654 191543363 296497385 28195651 531507496 464768237 542313018 214511316 689611261 950923723 984293793 211609445 516728549 787375251 869593687 233210035 290321525 376708900 864661683 435459256 819428004 985406530 996227526 514541301 783991450 476824218 971706569 418707244 476395769 273433331 310423247 514509161 559812026 382197019 695037337 480327463 805632143 343259048 922876127 744644540 999714204 681767998 897748920 690319772 905658384 471359628 842192811 803019462 876430723 60498427 904416725 623365188 936056951 45139377 596223772 349398511 387047180 785944373 975906554 553566549 851283031 908836913 916365351 410201302 904159111 243529607 609248231 868803048 963262063 308116609 648365716 647382681 861539872 712295283 713968086 288514139 946165263 443766519 575058873 69174545 684485431 932279818 976352537 459554277 894279125 16092864 522992035 976502445 985915554 107189461 793028992 725238786 748147539 456593340 900966097 633519671 827170225 636856266 966234494 111310074 687549478 725871281 956724560 590053855 781723510 156541611 541581047 499603593 893318205 172277095 973653282 373099755 949944240 515860767 880956902 263997795 856832958 238147535 471348098 138928275 824363004 89286076 115176460 148990552 550477029 140423701 158158533 349796866 829023374 187980758 478701917 627570446 833989438 366884119 831817466 159454131 946477285 572108307 823472899 171925022 270002093 448412434 744729189 178498262 701615531 31660505 786488904 789808422 965966862 355691701 824258762 108292488 170936757 124742586 682257581 420440568 573239054 767831219 788981800 606039690 955087904 823733175 986491323 175694267 854090028 192632863 958695045 479578345 594335416 424657362 599191810 13460532 492584477 483770437 815887779 128411980 636564857 894860190 920972905 664627751 765400702 114044194 366114024 659041612 856416264 639729414 976265750 65587999 776567418 714199479 931393380 770857879 985903268 287899558 917953509 249841974 689623611 251887047 610541172 984904993 992553381 306379838 877697523 804592008 898276042 650245710 688598711 933030583 979304136 890127461 946466193 911279874 925370788 648950556 795340949 666514746 788966617 366139951 652085795 851714961 911500407 834229194 962288728 292509144 363955007 768911997 845429537 213242207 652273286 148541420 836547792 402968924 641834803 876282362 912824049 786735844 881627958 743814410 959725977 167962403 237617267 602992733 774288477 67415716 252813348 199712566 533674368 99157358 145535159 691971934 982028291 70538176 348794432 275400863 381145308 566017270 984376154 250162174 462017073 282261074 990221290 653994774 975580088 44889113 610822234 485775977 737407820 798296462 936435623 66432538 409758541 914069194 918724313 766391706 833752151 740784405 764554892 505585846 678139709 798266835 810642650 420274643 590765503 646216151 699816187 512964922 604691509 170689671 567810920 174757748 990059497 88078139 842394301 349341385 733037869 878132079 911017839 467212979 724777192 253435481 258045188 272992494 426267174 515150023 698666280 712729269 822464703 113764533 355036308 162351845 488493552 548437427 558794645 83370061 794728095 330405593 991255389 544496411 708479194 20188661 792455859 881807478 962127291 93150093 505099358 485960272 893734353 136274660 801236336 461678686 800610601 945921486 977856714 183321503 607114943 912199880 980659736 197541392 341429814 792912351 961402680 808022959 989627969 854364635 986209425 588474349 831681104 89034626 669935892 717264696 852900449 247330376 583020554 364925846 496799395 998687164 999039820 398646663 754358703 316157734 712393600 676697456 830842594 106381648 488266347 537087050 558244676 419586495 419587788 259644909 468304130 256680923 264953325 383246933 431730465 835046148 862830166 332420368 582069847 820540236 995465698 562948127 732633146 340624720 669267905 678182762 830717918 519551576 564361465 423293083 720993900 382058060 919974462 884274332 986735863 64927875 572367736 428543123 641338982 299836821 589636409 687253010 983274568 20189292 453820239 840114302 850788865 828591904 938664493 210159097 985601316 619010432 840332502 717005716 825195261 438565929 831084550 156397141 513961306 33465221 207159812 665042905 908426760 554199416 866590404 196700223 657016351 969079510 986384742 437967732 456453254 601821116 747569892 72431441 460670033 381640105 842031352 492896189 744608577 567414871 947377679 626448644 883125953 53493098 697498075 90218448 269756184 278326212 299947014 190547304 804526356 874644114 913001685 645271975 837608465 614252320 700656063 834301441 920486865 818323090 885780777 597110313 778380370 325511359 438869312 935840060 976970848 104803046 927653353 947273777 971339044 645853419 770137646 971329862 990326348 616619230 670377854 563899006 992983913 363271628 442541308 832848093 873468419 761133782 831924054 197620022 381363689 693545687 698456219 446208670 922534973 797531587 873013153 714857804 835159811 546978037 907309923 216600951 430260192 784385902 906494346 869108240 963994655 316460009 353143966 397991918 509967408 782641215 967855092 345423318 437825010 23388227 988334017 745558611 998792486 636435170 974371905 302888825 718923103 502815676 551276686 546286148 641703580 51009945 201159517 859286388 898173924 304000591 579168466 427806304 896352673 52364228 411147593 155828743 614195660 452915874 761563024 734054261 775262432 492959472 890475024 58227171 408905089 587681017 832484706 402199035 522792161 302277385 591607918 245007480 255015114 770481569 786854416 798297251 967176122 508247107 861736801 926547768 991542810 434238643 617734581 454113349 973865895 67179144 216306538 834860784 927324613 754790362 758345581 490204149 496159002 554406799 798811625 472880070 509516158 207609125 250193573 398832139 947301116 129535749 270833803 995251686 999293056 680737673 758755875 973182808 998684117 499605806 715853367 826338640 957378795 828678788 835964207 946965343 961655430 740156235 946570537 496242667 497427827 382413856 648677805 234092692 478821684 843010890 878300540 94695241 363837409 158671196 753504544 441201752 985058288 265051349 727736309 116423222 761243231 983045498 994877277 829205405 865090321 319351469 935755828 30966225 103341340 675527995 910677370 709226596 918084769 48825988 918465004 951476368 974291941 536183617 559273622 107009643 357005063 200635371 212904341 778833160 793893155 128854048 421378675 288533632 799695594 223188582 556464997 833339628 972276362 54619389 215362851 874794444 913056576 324758232 327501426 683087176 806404309 287364403 826057718 720871566 863688930 442388791 532303897 180984179 280978424 736707266 946247580 930254496 948243517 666256084 788203104 524272298 985325084 542858830 884236306 768987788 873599774 496387345 957205544 310462463 435554946 12654459 38596220 586410612 917932124 60308022 246597265 739948771 829419087 593815660 903224661 277368256 301389952 426181014 770106259 604664939 989248911 762495075 931387312 562590625 896428712 621099616 789954064 43974014 936172936 365412535 961397732 838880330 923184767 738614975 925652000 126766443 221936043 16007638 520181130 754120197 773991489 698890267 912846889 329010007 466450728 939833800 986800006 759513322 838161475 871245796 995583877 580712625 910036660 932308861 978313599 855478003 881505441 653931842 858541466 570618226 930091152 375817434 775967975 533214799 781317120 92137240 158985954 449041223 579182998 723404294 922489023 282434706 628048523 42833918 129511293 932750619 990846817 35953339 678629840 709703569 740335204 264365921 412559758 936337078 938797542 9665755 198898377 588577402 767129735 565207937 693407450 843501642 988889060 116226379 360745351 837782216 996080274 960740205 973783581 241095754 408255437 776245496 817169743 544269880 756677249 223316057 693356462 84254184 868138674 823553785 969237189 315166074 869843254 737203594 912071551 926303705 947349190 821151393 852672749 980854055 991432405 11542722 219750726 170932294 973086481 153405613 646844767 614449261 901663561 256733437 755926058 468123032 651693492 754214190 913200075 46291326 887040583 833145291 944192177 985222860 989575435 673236774 945407294 988880946 998044199 430441714 730234390 442836150 685281045 851082569 873365341 51143892 764407932 156415882 311508419 137921480 669365188 33382089 327670715 522337522 814289803 692457792 793357002 504745685 904344215 114489496 751300714 488487081 530005945 103720526 297968762 194965806 850616400 677441790 932861112 255445122 753670291 436982503 582168370 929860729 970670780 805757150 971363622 577632427 913957742 442498498 783820926 806057573 825858066 93336117 759776279 951284705 997492282 332509348 717382885 198065357 454067445 936130410 942647340 507034580 796113869 695055573 955686930 310965620 992418764 766101488 885392758 935359466 973158149 264095157 806924382 282569376 641441550 830867798 915308190 676789022 921645030 92624228 947226328 936698136 975838952 135225513 477950585 604766448 963396061 83482301 953816781 472905617 822324061 395226064 753720855 743169515 886154431 5537853 466665180 436689659 673284568 415732250 535009832 648251112 746728700 853550175 894423579 737763404 985029996 63941349 826381994 214772475 917941267 714881959 782078481 455978824 665766702 956906897 975039690 663983940 967934954 542702017 998268692 973926493 981807526 876152474 923114961 244342020 988221671 197429499 246905032 313722949 711451598 597417947 869257904 579712111 762142513 383199613 625116391 548609984 849764386 411124537 863767519 351407821 381900229 545643331 662356060 65894103 492433817 495156499 851406921 482333856 991415711 715060317 969726537 608137809 615850370 679812250 719779781 99331139 309138371 591969804 645993617 651103462 741948934 763806782 835346898 297652000 750972952 40404625 592730926 522288159 739780290 250841191 909035302 731930497 941595493 94199132 590829945 852648621 919727974 926560520 983517876 892988563 928936270 566895345 818587209 380743453 971752076 140133308 972950190 83869921 377656575 284633667 646278018 790172168 925346441 158122656 732288596 165024044 366557231 355599414 894839194 502268215 967888057 692343642 804102324 453983915 733665030 734406403 839793527 944953793 950184209 484982753 575555987 915641521 997552270 49585507 780483400 724919759 979242222 255526251 327073979 655095114 995373036 212580431 792092589 493871096 853213696 741562793 867263665 651451608 721598727 103925345 836309026 685031759 933674173 743584394 788218262 933898164 987670946 114308439 909583542 278311216 441389814 572443103 610930691 815898089 816615527 156853134 853913870 344253705 954922848 838395193 955992558 374707761 483240648 37259165 922751739 74518901 129835489 539757325 975143918 61327809 530289106 173883094 542563118 655621147 732543365 115027326 918901002 739163969 814586352 487527116 520504208 208325799 346915573 311824370 684012995 580884717 660809190 401093112 936951086 965183469 995977298 997998614 998812321 152923659 540548721 636387320 846524845 796743152 999743879 747057364 821996905 31312171 537754453 400650368 717186922 243896339 418088567 742518249 884495086 666634514 743255678 985962636 996970084 194254767 222273602 31813362 451359978 171640500 184252364 755044740 995367326 615730661 742144946 994584610 995185572 778493980 870773391 460421887 503603090 843687662 962564160 504372709 949882041 627692079 833957812 992706019 995112674 665258520 679865120 94720700 783063895 524546357 997627073 703442773 857075770 811547892 825311392 210240489 534419548 115733676 980740880 381432738 426635645 448149098 972457833 985036561 999986226 756527039 810827264 31393169 491670462 759893805 950965961 534045431 635549584 249091909 621623817 402899389 919977461 500399633 570969924 444573743 478070300 922320112 923864847 271488957 788769804 411799453 817599315 132604748 768448839 816008981 973934245 206069359 559081639 961101012 997949978 294928623 836671448 463588625 867416516 749319368 943099177 833479115 882458883 562336320 732625205 83487421 368915561 59944154 555690891 98117296 258598335 140069164 328982976 873135109 978437816 503824790 759248960 702085916 845859747 260158104 457078727 465389306 655162772 517511795 866843392 774492517 988927915 54407279 193450625 313725444 339623620 577482508 840719300 160985607 696429346 119818388 791654988 522347255 878300662 361313350 511944655 127823654 585963945 120356056 851670355 881775873 910257958 244958395 505658287 339264881 498940693 963209035 981482468 357044239 726038547 14394821 691779320 197540566 613966580 811903304 966189083 683524912 695201464 442671752 992996588 871479428 955491000 113517583 717200074 231077545 760591336 666635974 780587614 335668392 606028586 355243299 679025171 861454336 885756983 566699115 675172415 349675317 518710117 312941506 785505374 878040461 918390178 159537777 857827374 606259086 683875908 608225336 634790401 176401542 241661732 420753110 484378098 511629240 544604222 574050615 875558086 312764368 521944344 369431999 848513681 304263720 790873925 778530896 815167825 154913730 367422003 23492696 448978570 920791005 954565152 27879942 934664030 628072263 921012710 282987390 576577120 542662993 990244419 920994829 978480894 302433500 836270243 196968841 412425233 569585526 735783630 993323001 995954862 529765941 601372968 686426911 856279582 140744558 830424151 56944950 368166531 817925843 956375978 414736811 591886567 257880594 333290914 433847379 856222926 594314079 909518761 694886240 960722911 520494402 889358835 523841274 549592164 246087258 609843964 968615855 984515604 32701453 41445441 284255455 315458292 516807955 771329858 676678792 869192432 661604562 741996806 850618124 855783347 519108861 674891105 13589328 995144158 478624426 514906363 381526425 597586700 868794580 992511420 591772607 934891190 125523383 183966160 823377709 856087026 285589501 390449931 687848768 942625757 497572187 897682924 122144206 274439745 594214110 714895058 153618003 465615849 702367747 722183957 557423017 787558834 714971538 924002798 773056004 851520508 174213061 918453659 430984682 793574089 397093657 749775515 453287117 972948905 789867355 805460110 732434967 948693147 671339767 906890866 863223114 889847503 533013870 554650231 860619486 912532264 218555091 516560464 892137682 971533257 436708326 837389256 733135119 832534430 951725799 974694387 610275385 855087448 397324783 948859619 309518503 567514604 343819901 695607743 59146710 575062254 46063825 127760012 937214455 997840896 34055000 520790831 147098822 344934096 805655162 992236082 270550465 992204870 758751042 847342483 305061076 432461372 545943426 571353151 380409661 970165888 936721398 993922567 518427264 860806860 648686415 757882222 302762801 560785365 168250338 295663325 208324673 996795918 218008481 673271868 477357501 868796077 634502203 720149234 807809966 936419815 593028122 952401956 794535404 999447948 983243226 987339145 973631452 977860075 507526828 755098684 730031457 747159515 565671677 738839855 69390692 732235129 537409043 977910119 326277497 893193044 114895435 946020708 267252143 378442352 63621088 992132190 142783721 970891856 830459266 833661097 773681548 874761933 976281409 985131172 399284549 504600626 331147735 827532815 576985806 893264570 890522891 927837383 69777207 630936113 26459574 29804187 374214332 789387676 574177883 783500226 62844184 475267220 434212534 581894759 870791696 952964081 245784436 840434390 943580661 986804342 140210458 770676207 665533012 729479725 192002048 350414803 980032427 983184854 704729994 977412311 825506855 851951644 707094133 871877304 108996892 782805887 749210053 764266995 28250162 508291557 701235682 799955255 719994065 853189633 427788952 623327318 616530525 752716165 844553132 876351945 957511060 972030995 466771224 599298527 724950523 786884667 155106411 591946280 257206075 760913972 348712665 392473154 766033847 817619703 697062096 767156936 332871189 600727542 714176965 854106980 752029507 903465701 101788554 165701218 197908384 612873110 591830498 870073562 946866781 992012503 792168096 850448163 858212155 957423473 862774422 892074364 425491692 588848216 61323563 609287484 83990385 370083217 999640651 999788902 556174106 679277661 910408256 952625475 832480763 956498534 49172505 654919069 167549574 937007230 846122486 901596734 833883772 871746500 256897550 755309176 908545507 984314961 305474471 839830889 462248311 745459572 298208298 478969198 55267407 959924692 958444205 964376357 129721742 314604848 292965523 770906705 165164567 371173973 330681569 947330118 55005637 779733415 770529732 919024031 231156253 243267035 827736095 864314556 59438247 301477861 624559791 789457579 467801448 486243916 511067242 954077775 994751284 999782541 87465786 286719764 731483489 940766932 481071722 622972159 260119339 823127674 977453420 985384548 35179562 837586403 407850981 729952796 857710997 994172709 974934741 984218709 470382031 762747844 631626931 795303775 371036720 413298993 414916553 777794963 632424954 647077712 548497176 992266095 933166672 987769295 410064940 848155839 244695129 377048109 440985366 972003316 126392953 373046965 148863136 465057673 421017720 594827941 70905601 505522037 138780936 927336131 86199225 487596792 74431543 315060296 368537044 985419352 177918787 517720396 432284284 860839122 389164384 595454639 521611732 604853441 579982463 735263434 514263342 689783057 467121490 770514116 791798146 863799006 935826855 990376405 884279252 983195668 695762909 977420122 149257000 577932612 663068548 977448115 124340796 514134615 311742041 982869593 842516842 940485575 782232821 965678798 843633493 950129155 527368441 527990526 315666523 768918284 763250118 837621178 4020557 923836773 234603894 835643603 565307267 774062577 850415263 881677222 726029757 895566190 75411396 786294822 771174136 893066805 441897242 899799639 813871005 958371652 590917222 668658117 756420128 949866341 739443757 912625278 622677014 953365753 573050330 675432742 484182984 575103108 150188476 677817774 954143486 995744508 417824568 513984800 313695441 339761801 448214641 881400299 83418371 610375518 659975962 765276446 586272949 968737787 37611747 379327961 881011713 944699067 316172604 980281726 593310104 779265418 6612201 87567851 712088645 880022924 289436509 678877657 572549879 658969530 175565631 977900920 711650373 890351676 946311976 984689108 907702844 990580209 785756792 906102834 216323880 421794148 968351409 973602165 765748747 857949619 852773393 982646482 447738531 803645768 169681039 476902852 498723808 808252852 282240270 930216094 82563687 797155709 574233317 834425567 960213367 997930861 446409111 836431725 995022669 996313379 997475301 997585070 977791265 990850660 242399197 399795218 310542182 646691596 621199759 921411289 284156687 979575968 995120328 997752301 515439088 942269879 584266772 817607065 45350922 850403528 892670058 909480613 129701583 986000349 272929077 750798188 930931768 934906330 294531813 319324609 300501768 509669666 39416684 105365466 366841977 854559271 124221936 577473979 568720629 745160474 32767718 951378828 857936734 981575874 483344613 642823894 270809507 458766540 509048777 973311349 635944946 927555921 605150128 925236076 650102886 989619972 578111307 855388508 937192883 981849549 283033582 674888867 538194946 947180986 317370080 868641551 379399968 402309021 243991346 532026678 55490345 946355660 327992488 841101629 609490087 678879527 973998300 985454451 318534798 451789070 435539764 764698446 610500104 837994654 571784027 862312569 358022703 741342813 196254407 400473552 366675383 402811009 301385080 643102635 642571246 707067570 30276830 529589803 857177036 906221270 2376734 918239169 595728242 682045563 139125934 858661451 949314488 955003543 572911667 722669933 694050629 962029433 739796941 897082778 777017856 817799923 136367008 794388525 491714631 768889055 303064840 350544701 829600507 900604184 316893774 852829124 166561196 654122408 293256044 682417157 995973243 999600163 97329390 518739414 803805484 810672581 101687843 618672413 564322685 646115080 690168258 709314723 225652348 253215069 262224692 358603262 676305098 717711705 824697195 953794105 76280970 658734230 233570980 506746631 536065805 573495690 761618044 789965097 730074946 768231361 219202063 931815268 379742739 933630535 954999200 971840962 973146094 975493725 392110286 820317971 820778637 884843295 462512811 605008422 993316761 997781346 128116818 913035591 981236210 998857612 639986992 841116353 656570559 827637704 641174271 779186082 916829593 974026508 67565253 270243297 529982064 533891216 21001802 782722335 104167739 622116703 635628200 813492186 987257038 989498652 720893343 844507351 728784550 746225314 624692580 694147831 412070655 493309251 393467824 730563904 852265099 968694465 953182607 995199106 412895027 614843453 171268936 934969157 392922806 808922042 602553975 940788392 822807100 835902424 104188027 611507812 468457766 671323898 74913539 573091155 930448355 995442694 691982286 952730393 44077889 100402731 177726193 401295010 601491996 627903573 795884523 798309307 963581173 986825376 673957645 851190556 259197908 928403018 124179411 585420743 875468820 992592706 314407628 594272066 260627771 620435244 466155150 705187435 553906728 793201370 516412767 641609298 538255820 760345261 813842212 849700704 24334745 640110167 47070497 89474377 672530284 986361853 755966066 796143325 72586155 835926240 255536015 280706083 814404166 968613302 353388599 801489663 828988211 898480021 317240654 517710739 879404770 885425298 974367328 998947794 245557937 463400145 60114245 797915578 267346974 857845056 279577395 424446415 205524797 302576354 649501932 945583918 178089076 334547111 991899327 992531805 334721975 627113780 131936616 815946565 620059340 677502612 861855899 919378065 129630543 880192393 794404518 962355572 13011737 545090635 71410195 571296239 659709420 869716667 513894370 833553786 230394177 330655995 383031650 680297797 141998000 930331565 516601766 944860632 718735740 878030094 644894706 708162430 964266229 965890236 826441559 935457172 501074486 850502354 757415841 969468467 132836580 928391646 928888018 960405145 407963396 735958741 635677752 824367447 146153458 337806627 646719322 906287404 525377078 662663754 586278618 758196425 446841508 693405395 461864689 815325403 55034066 304920564 738161377 996083039 248113597 320726800 653926045 672346487 442077237 884644877 879296711 929663732 757858358 925408288 560267305 929076257 33888840 602181644 235721879 322103537 250497812 882057804 989951975 991893610 614594350 736664511 464949098 802952700 369105883 577076347 651077713 686501405 45918423 917440917 869613581 945925123 304023697 896340957 833750448 903792484 157345029 963162421 165281221 760179183 593866560 918716537 137159150 549840871 458799777 593540279 482866064 856351171 287319664 454892906 886188604 985370037 370399507 911918452 940761172 980337024 217401398 309031604 194678982 231258778 414493649 960062864 938657248 952007022 937212752 954994520 566751603 573857329 88277470 390710833 952101785 957902336 763509146 810679383 229957780 527617000 128477873 595469102 938749692 980509649 637883434 966142975 35628367 265094192 550936420 670239317 994340966 996023873 193724917 698305309 388660798 457503544 243510407 296944693 406876875 771276209 731561158 844351360 527784446 992733674 580212949 947254270 598757035 769852233 155030520 649248342 447357355 715466170 25000633 924485139 894187881 993673478 736148771 842720178 117330631 271793209 718510648 917354063 517747412 947999694 734802542 864095025 68033939 903382041 466329752 538847244 26535553 239244074 314206087 690791928 661549379 929348372 586249230 864959694 96039472 500624775 760009415 827026521 207592199 217391593 309005096 882224799 736995572 795664805 472511705 803269595 36892270 737320405 574438446 681041623 527819420 563331134 335625224 443619737 283494918 372233381 738240009 744501662 816797107 817258543 424488541 994151836 340533018 662267523 982101945 997790151 533489627 646732077 199032555 780792113 153267028 697750221 809688992 865260186 493525945 956134239 391579031 753436809 304000637 971637644 21441139 156966702 792543227 970749343 373320995 447714418 247429303 496601092 789298343 819363104 801928136 813176351 692299215 779254943 88586549 474018151 769571897 869936960 237506271 372408311 965923584 973503842 719724207 820699842 886188652 920110755 682016181 692164501 956875051 986564366 511188299 782499026 187479868 248994719 955655677 988385350 596502096 889283035 127222289 321882024 102227669 790820409 293219579 776124339 51047545 418233525 770749019 970088199 882918591 906191772 97319005 642073296 246705657 595213550 630592427 832590919 462653673 802975630 800443201 899453632 488948971 769603711 132625474 700238677 538456913 850055363 741167465 886437364 99259092 412455707 941529738 959661690 884056577 995739959 404608540 911550980 961706327 970341660 190790362 202584382 798125957 812715450 431848856 596222835 902821776 989178942 110366765 850927862 453095669 473364534 976559731 996889533 323366303 761427496 847345069 898023014 614804440 965880040 761150304 790425576 688401173 965324281 721610662 739451016 114345631 889119939 6017636 7235982 594316768 999132329 458911405 562729183 59060613 518134545 273846726 401126012 777998894 851045959 908389371 990279299 617297963 941016379 662830045 804977971 216174482 910265976 927995608 930411704 731959810 781045738 780863788 977040794 137287083 154075044 948638486 996900502 13794311 763523105 332601213 842790998 452841164 638551488 177464676 982075993 120088378 159745683 166374654 854229771 805940759 872807495 113503252 608166715 242668726 319993150 776125955 817490661 3106352 786787833 231063144 911235659 587618863 611511990 603983773 820526784 20941164 296631758 865879087 925381175 544264079 581020509 566656352 980029636 682034920 859739664 856479759 916684215 23302543 512015669 807841674 839185381 979914880 999558876 49077871 331663502 929733827 997305693 76647605 443623229 187744373 469359690 871463896 893760562 529163778 698915498 379276842 977615403 540107684 575237632 830419431 912632618 630190164 820208308 900050757 906376714 173484989 278237538 49636482 160375607 731992616 777011422 788374624 903040867 360175098 794445279 840857984 879299134 638914047 811850293 626951707 813616694 550761898 925413152 581955125 620686805 909735389 909903135 544200247 657222181 972982008 988670829 385091401 858005228 702791510 915148821 874389779 898778667 228549627 736759064 972109585 987567378 727823617 753312489 520780213 889522581 237776865 764193636 749591913 980830920 382997466 888606051 678547596 810201973 808218929 836489383 313255649 827018741 345184157 506837267 862840596 983240824 800954503 831394991 538410648 884610330 758148166 893796042 638489896 843866361 330003696 986330706 89429600 587846386 175125255 973794636 290540535 454624110 786795443 840450179 418365711 745141722 850949898 945827180 337474146 434440192 117807660 824633202 701163200 716349801 101548608 990671466 453641118 492585573 328640718 802352312 977174557 982453234 873889139 964894139 896728932 898443809 620401405 968036237 846525622 929592746 830408456 894177097 249249107 822995006 511820620 904918812 102804265 822721262 887475626 988466486 106081079 338392760 165240650 321092968 984843260 997200831 997117009 998932078 645361351 891840445 508469318 618091576 716797135 880424075 539555157 831924013 306902012 732442406 593752365 884725773 29945288 310673454 171235283 506385114 433289719 585005319 607234175 980305297 288252211 935553187 156319953 438656405 92415499 108400187 893944989 974332325 264670972 935350614 910220752 912037015 841676377 929645931 626014039 936217745 339142483 818903888 593972679 982188074 314224070 947424940 486013349 771433381 903681884 921281915 984525730 988202895 361157707 439376854 641693608 769821377 646251101 978858550 42252269 255487853 862762110 974282556 4700613 994320558 447707137 854066572 92299199 786823399 151690139 431409081 506768253 789689125 728954239 770605114 943974017 977277394 509152914 852590481 32421172 607662102 827929843 923669313 269771131 881607369 909072817 994439245 374160333 766470164 964491886 966174184 609125100 652230139 496194618 700790906 195531118 478899693 3444051 429844294 431652547 613568935 991260725 997124180 391720473 820389739 263051222 420874846 362027742 757266868 97944303 581047625 345843677 659990765 938625284 975261545 486688924 738575150 354208565 368002293 186291488 389872643 218022974 775765480 865360937 867105849 985409124 993853185 89257683 303686696 981307873 990369985 722424930 838810673 194063578 907990156 763771801 913283408 93137585 808124977 629113547 682081428 954186120 954719707 395118905 960181444 942713527 990951255 610289511 818502520 297513396 694728117 185565556 941202774 657583786 840898908 548016183 615566990 166015729 545773095 658760713 973753181 31193364 619586999 358424661 661229667 479542447 966631684 711728814 891616379 937443283 996265832 774266155 980996039 121479350 879763714 185743536 859726990 830878285 939661480 519934002 713500159 225065686 944139388 469339639 951327396 374756929 440805937 837917103 958130311 652852362 723058583 484232031 944604306 581262062 959818973 807338186 876898244 220701603 654793194 277230769 528665248 701912426 767829885 590133643 791278180 632357045 801148636 838558715 866629849 738615509 835105925 541991703 748669666 930788996 954329883 685020961 959579366 941744831 984586270 553188862 871634157 898468809 993677988 994400704 994544521 36486751 641181432 691266990 954381404 344548744 474808077 175722632 288876883 950634099 970155466 108616982 617750893 17439291 983320746 643054049 704814917 490194066 527588855 143486075 641158753 187156720 473329437 809278944 910219769 445316089 555985161 297165199 449335329 53024877 123298594 932891112 993839830 172630311 994913591 330764667 406197452 449280063 689191258 924325557 928358194 148692568 286118375 528986150 722215196 498514743 968488152 202008488 863023865 511781881 770735701 884816653 962953541 274647932 503729277 924444195 953838539 758452500 767010285 119312796 635143983 589500871 702894699 543052877 813881453 594373757 876736299 248563471 965780803 398977369 995221311 538896067 839692511 309344289 398394835 167443718 358228894 237958340 864246884 738232519 787703759 611119745 837981479 857988537 970310666 741368534 801258132 895090019 990037648 229339784 608096170 856431475 931093724 73357083 307164775 339749945 348163702 766939398 848759442 145575704 354768059 875332688 947605740 581244748 756138606 829759618 993656316 315366708 492198588 193252055 744445827 763926515 952491672 726901552 847211523 798646690 820811360 304342928 974550772 571714634 768006529 823829901 901039137 480140334 994765242 284373500 412866676 47119931 784710125 834471594 881080874 117651204 749736886 101498793 349143929 417487541 451283458 94657761 591794977 487831592 833883166 752843154 981124583 488284675 582554908 530498943 942799613 669321627 689231597 569373796 685729394 553448019 611763591 507614561 703442912 777003399 843555397 127702310 775529530 563136223 816422457 910434473 957788987 191159272 649827064 502250062 820453450 155870100 866287336 177223650 840913039 170585111 809529726 56688629 135035332 70670095 984325084 430131917 767029154 595347143 833360643 739992875 952721872 210053345 459993887 987709858 998188749 615869919 855180607 367708054 981740786 897693219 961887706 294311636 736101861 785057733 792803056 560198776 704090234 122520551 360553410 917415860 935047394 778964034 781495035 906856011 910024082 395374509 430129262 593669578 963380449 482967015 946923841 895954528 971602644 139350837 299123406 11117811 717012001 555376286 817008584 964166442 978021651 281013145 371709363 717589050 753153592 718944511 869172111 634638180 964142782 996224597 999628330 437954071 629224994 859753150 949340179 16300693 791377478 422835012 707859210 512950974 721713317 158772316 542714538 524248148 805752315 574740580 809806468 612934948 873067037 626239575 943218690 119910333 291427345 595713726 750582616 285708866 750520246 830460567 912638526 592797658 908204737 668439605 923961812 708106208 848786129 470121776 571088138 312450165 677894976 559864313 839948084 236257724 711180474 769877041 838059306 146382280 560630170 323515714 965288451 242106404 258836076 753143179 945532746 263667517 793470975 383670146 637935144 743914451 953616417 26001352 266448982 674421593 908190449 452332967 923388725 203589193 794633610 186609578 837198354 936371870 948372736 609150043 634726612 894586346 962183018 630040504 829542800 868370748 893043243 228626335 933635005 513493870 752204689 976663442 988882128 747523876 762396782 404178515 876949528 496891244 668158521 467007497 801181786 257547586 969486053 101312835 570241094 652019090 799654254 824219696 861056879 202138104 344807412 814963408 904338570 985629424 989962187 224189286 873442432 397024264 640424972 405953656 819442644 475407810 862327638 743367945 762121397 295295061 658317458 169230973 749773782 333188517 697393419 11725930 583847126 853897311 933175460 125638146 556565037 843075368 990541467 692329386 879777331 810524748 888238715 168341372 489141205 769795730 949136665 869857595 990886282 320144512 660221838 314803561 693228963 593306331 931421764 234481935 980815504 295803481 499256518 97471499 808436919 688116818 911446504 645188026 670112360 768523021 873626466 862074516 991361907 593679003 890673856 544958076 667264663 839559047 979318355 899712247 958017758 749198229 784826772 409516149 947796597 842829472 852128737 924948735 928472272 165679077 415268303 841090213 925582834 165189014 428458776 939950276 959124988 75196730 995528719 439080325 856822177 853350223 984864352 572848077 794366241 878116650 963308452 546780516 776179660 131749826 555816718 887667451 943719533 1798176 92926597 602796385 775024593 639208342 929983793 498949628 792693364 968223496 997928480 53535674 225725683 830442421 914820075 82785814 903676059 854471731 909861945 301235027 683830610 652656836 981154182 825540864 899886818 897512451 996267951 619868082 983543971 873433823 994495210 441457046 670297469 561586776 901203001 516894883 832776107 47756422 898995959 985610056 998193117 493253656 904051436 282447031 777366457 163054404 605577395 966372391 979000236 427284753 904629100 848304039 867873780 433664640 696653309 643740589 765724184 523744424 968101541 524357303 974056805 873021174 993849557 244682457 349666741 905001360 937149590 677098977 995910588 432601735 589273520 451002374 669652976 460405581 546069518 689724338 990608210 67536080 945423269 456016852 825833156 643995808 701023640 724949007 732210718 695537545 793248622 621391869 957682430 643852253 923383635 767003825 960631066 330911569 674149640 908342840 952416681 662770032 927561782 321489575 598502987 267192518 839167746 762229163 779939199 690187050 890347166 192598556 640982986 38962605 515942508 293016682 559167145 415469705 882035238 427843975 627260848 805691361 868227444 864088838 943557608 778882401 789876128 281080294 940604819 734742659 836538106 240534394 284484280 491661791 529970602 370938491 395705002 91262052 174818175 134195591 260879562 413227442 635391965 804501176 824878838 545501695 630821021 927284741 974931209 888942099 921379192 935007327 947791278 73573576 552672477 25512825 549212626 756753023 808615219 929223288 941325904 703614487 896093871 808970269 984859134 607488898 819951501 98920600 545456675 149706653 500761104 685660747 917950928 71174191 378983481 218081930 799969585 216979615 610651065 862897726 958325474 891353219 958579269 524005094 565421409 262682212 283148484 329056261 361510898 507244628 896180735 840379644 840635641 111407850 451176820 272521244 988821862 728671203 849082509 771427782 943604616 248938959 359509713 25743718 668674119 387973910 938493056 169459064 470607656 903124512 978632578 993634198 995595009 777345605 981118316 771319885 945282521 3743540 628831159 798691044 952180353 287165151 944392614 400829829 518088071 120108601 877202361 230482628 607562807 155968635 356797849 448525560 535879585 407359394 937870660 14204597 217579205 652667352 813070425 909044523 923278656 1285890 281226543 137481582 513103797 887129854 902289974 535822126 688281626 795583798 942815087 502921600 979783337 83731693 402068605 36302885 732161898 362177973 678715001 76596752 175786279 224203600 785750641 409647419 825277141 419990554 617777336 74295692 976515887 147903379 302446388 565917952 816873770 206908791 738276412 697550977 767073416 300357773 962008259 136420530 180918808 169115901 354136578 346082492 909339535 35838727 512945556 937477784 966176871 456504934 826961972 672635198 776075629 997480356 997497476 993271258 994421923 799993727 829583894 684737395 842010901 696856211 901987031 897572340 981506892 627093070 692745467 987145250 993830558 191792781 748413603 395062363 790825061 872295476 987278482 179751530 790656264 277429988 290560394 872168640 998575979 247555451 656263793 931361240 935998485 355385237 381818788 506385175 804461122 901642764 970537489 413705201 661503232 671478192 986545380 842100079 892664421 22647581 532531423 820937451 849656299 473152759 508100894 664625098 674298461 314699798 469715019 90584713 986553372 997220158 997996043 782403204 978830174 967392934 992676510 241408572 938758772 405896549 994467863 995365126 997314322 260174240 803111329 61289035 293313580 42307697 80834638 126713848 432171122 621980885 806925098 194938208 373336451 997275959 998737467 155290394 448009646 151321124 944193577 642576668 773381758 438614516 712497748 17267833 33355882 713435373 873738103 450387984 713858387 833769090 881010333 596994905 823386478 496067502 619377996 959712861 999493618 985924816 985933790 379003574 401141311 736083984 907242846 169587888 970775496 436785176 555774661 395029722 868285906 145490876 884498962 736428192 998423570 649484210 951778717 275753597 867565965 962653191 984266392 513246375 990516030 781869914 840605048 839801310 976179146 839658326 949822672 786847091 801161421 128391130 211254884 56985196 891530292 472758130 919444087 592864229 859008650 41230681 258690247 919460242 920699288 10894717 809932804 780023834 964136022 17713955 915687894 110715156 627927979 499049140 708373641 94973267 499695913 905953439 957529062 50525571 179958876 310992731 780709617 228242332 489370379 459295742 595377615 123874817 778876684 740723975 990952352 432290963 825503507 569842221 737930192 16305358 577341475 37789430 948617425 13841339 921759349 275354610 933140686 684077981 934810894 76243623 702024933 310995118 543588877 194422553 341233874 865020410 893929741 616046048 837849882 477627059 950494730 937393321 959103252 700658244 852792607 186400521 431720735 269511952 564721091 865479099 886480727 839484719 894062721 882177376 935689692 378975591 966555382 595187951 936783579 509762758 858007905 774367947 890112535 986691174 994348993 342351718 891804860 569961161 633731194 386851434 425562138 46887326 572965164 932687002 986162906 261011911 305223135 700020208 794362321 977637544 985617051 682647127 691176017 62534498 857224946 417188143 561650220 979994681 996451048 194435026 506793273 836388906 935765429 654815627 965591307 669027366 865891142 91879224 780511564 965329905 993256259 923877003 951453861 501588276 928567318 800726551 856428862 461915003 825974785 361190240 510638431 563111225 734624198 992016686 997952446 530649672 557784709 12485708 198223317 640499010 730823716 930328427 950539651 148944129 943808271 999310630 999700954 749842549 846005362 41664220 189903956 908282111 955563035 421204504 759265436 391839148 614743348 628788049 967764540 242849726 409894364 871423169 905729463 198909703 854264349 798966415 820427703 243048240 570950482 777751827 942673553 325233642 756375316 489201934 844942356 486520729 738151668 392594836 850087110 995239935 997897536 187677672 986712804 491213377 845292427 828182351 874651721 798867392 848590656 491720928 984566675 431732505 555574578 670295912 930666632 149817421 407965231 69578697 497362573 552014941 652723485 800108912 924641422 661401915 802586596 78636092 625051231 90646657 203405157 228928989 826707895 97965220 508389795 644993853 800776858 504294626 747299142 237468405 509254522 705299757 990707003 586766441 822256509 180936387 592024789 668645456 860136238 757355131 769380708 181171962 814926148 393749534 851734982 985755658 998196882 871597506 916840613 708705412 755243027 696252532 908649396 137883059 187707674 895783037 918792826 686562113 769954500 496751975 870149439 389580355 991103887 306376871 904874618 797111588 966505579 644164120 888117500 680184618 883794620 951134446 972461886 551327073 806778019 388242315 533235887 871962752 988247869 204384429 648564983 868759153 918527251 921616120 990278168 660716317 719965412 114475975 520053043 667795967 792633651 153982713 924156234 158133690 494123052 154376530 938472762 837432894 870662722 977432820 979263983 524116771 548233903 188605150 976518278 671934685 768915160 399485049 818022859 144457833 831311269 971336868 994618097 608519737 744467218 106812232 211190777 177484771 264562710 419717242 522312974 246011134 907352965 379682605 805805858 207285591 635476884 975291861 977789889 668127459 870809095 852380627 892345084 563530895 875038563 552530689 637626796 474399941 710644561 146741205 241894738 907958734 936918331 675143032 715865065 532546869 837786256 772897339 803377739 258470266 504970764 553585386 627579592 152268754 164739349 370749830 417199434 353770880 807404739 770143513 893439389 335006278 720726484 188529417 680999987 750531027 794143430 974825946 980642791 637192749 917969921 504331535 664398528 216906917 497305041 809403152 931716979 36190121 318682901 704121663 922112751 364821695 647269730 380940608 411229572 142037987 679697826 391451918 911019061 871508137 896116549 401837870 990428345 244507478 473840039 567098642 878558606 813263469 974848924 888912002 910574541 885792536 996830429 558562285 680717643 118224068 581764696 354875883 900239971 506396725 880974408 124143104 905561375 978297553 990797106 336803557 653184948 314213397 975874241 763585723 889873140 248845121 591796102 757857960 923684439 256349088 513620005 355283246 953412213 535262357 645467168 723983540 838182369 635824324 958530401 324194572 648285929 930058373 998125484 804725187 967412112 702273673 879623848 664991590 963557885 410991852 802414278 628441654 750343974 495483572 937434802 516516498 758149030 478517556 676636989 881690998 886528700 75047345 829612204 267429622 715040901 85721476 341883978 524711371 923585831 136034243 521049240 786897395 838379296 213978285 548589252 679380988 921683390 655928765 728723448 105587217 743161675 280145769 980040376 860596772 940503754 786955370 847158059 545227174 920925375 622194255 622248710 830837829 849724525 607040638 805688948 781992619 792110382 753800746 911982451 531776688 879029181 968177347 978293126 155952773 256276888 829506938 964667098 397214034 408626479 119506208 295110319 628082692 722740247 842965628 945354925 924720946 990898348 157212813 425473836 534016310 616497798 361203536 406723452 312688481 649288710 707834767 878521535 320039864 479413127 367314169 599032529 860711898 949192651 189280718 610526294 755918815 774166182 209978946 667679489 277446272 711923010 70792688 554279955 923430701 998771852 477577280 849620014 100906140 867328479 873865230 896471125 60083093 231009599 131448045 677058570 970191534 992462435 240622623 689618230 119678465 442656832 737812335 883274135 28857156 675681808 659594290 660296974 650216427 770374962 856326240 876042730 414976632 899769575 245778494 815068809 515581395 882526698 826148110 873283818 949059505 962370387 315274816 719651325 529641160 593692985 754404806 774285454 956515752 964783131 666650155 910103962 420552460 837670581 739830748 743813027 428150218 757572393 83647343 792914163 917236712 947838661 687311614 847992141 859544980 914583947 437837190 523961049 896972571 979706394 633336578 905154952 593073271 761739860 799556442 874809469 883762227 994860230 195779051 676874659 290613279 614517281 427369795 435702327 605054643 710116008 276525104 460870998 384965402 785625002 993979710 998432446 378266134 687746321 62218645 977328470 398090335 652555756 337125176 697311892 784234608 871266861 949570575 993856000 629506626 782607010 777417815 809558122 499012308 706994791 360354234 869782667 504106027 563500994 316485406 493159122 261412682 454085721 420453607 622169928 416704280 638833077 269821424 951664911 300176544 397767010 588928023 982826463 530045690 681741908 425815512 974545644 238555677 551052736 686449973 987291241 28151347 964206032 367355233 472358429 580470307 585809530 81076344 83968488 568491943 644017770 522418488 930712748 350751574 646090153 346876823 789647871 429965306 936037163 974005996 981945905 378018951 856660232 817834008 836725003 510337005 827269973 615402439 977672281 501830063 503429031 458845053 694729746 792518454 965866071 463564871 888292418 244604684 775504386 554058918 969265963 579456388 644558682 798201198 836344626 806587319 943688263 848416447 874122361 585140368 994750296 316241762 627411360 269474795 918419310 146905033 530723452 700423791 872530555 420772965 964459730 490360717 595680126 318832377 464593408 349517230 623425198 142703612 929426974 602507502 834780914 586147279 933856553 821073467 841919847 838166865 892663252 632443460 967692226 555328093 780595937 976916673 992792009 146521247 601067063 234732111 482274529 979163855 989713419 400642111 925992899 972281962 995524819 531359497 732847385 384929546 406207796 264497129 345001700 629916390 805515828 750353793 870155658 819909215 897210974 530457530 779236945 821477040 844280941 156799325 820150862 883774974 944318542 965861532 977240976 324482513 911770018 190526503 573103806 567563597 605686110 180511633 740937271 557676924 691222667 419559904 777128275 337831873 895873227 468095078 880984064 748806973 807406306 77212776 754625171 976742096 980460858 8921924 207876001 469436815 714871831 381599429 688523466 778236627 873709968 914937603 986946526 380172817 685870085 940492094 979969078 733000713 974804606 137812833 300502365 465285519 590594528 959923195 997675974 991870661 994236837 590134120 983495828 719237541 803168338 480417789 694307132 298836819 308946724 344718674 407540791 837733190 854239141 47186538 643569161 37793869 557303827 902561020 967798086 379965581 700255442 257962761 504476411 678621875 745712688 181765972 909475288 647126746 720056566 172049408 812435975 380297421 558380251 180565796 240199197 294545864 388576390 252962578 597048272 418882694 837775764 380522879 646436019 877694392 878502945 932725589 955464345 931330847 991650818 178935023 534789480 633001304 638391891 187296526 773824160 177875891 379990754 341949569 893127131 456407611 956993472 812335860 886852099 300626876 486703754 819797196 849328513 747279831 867119615 87263963 335668361 832934810 887027329 685168236 758975087 724034566 912202862 70097728 311447402 520537426 794635090 932442358 963197439 436521147 889674367 493101906 666540966 793197846 927647539 390236447 589072151 146674152 616158406 792916411 882555539 108232241 933338448 541659296 692366147 518840561 756559731 387672549 861753845 129018834 812549920 43629995 970073513 667543117 714779894 597883663 815135629 772316884 889337328 819927531 866652225 159195607 703961970 611406615 936917879 93796810 267277842 797856915 965009117 508500763 833570477 136431332 978148579 725674424 902994308 16380331 657725703 285034150 541524734 712519712 855240916 18493825 385658490 50999727 697717017 670356103 812438643 999273828 999851095 511676736 957827606 548264539 684557698 44464388 51980951 133238514 642741064 789835448 877887867 381271633 966137929 785885601 807979619 142047649 363371311 22108018 937295115 726792104 798670703 350157602 840092179 57080764 830532589 664177076 664929725 852976447 876810781 38976041 570631929 136617943 270510094 751957729 867437956 672442241 724317794 58748652 578611110 413687163 433737190 458514026 852204861 544736678 860433251 168146671 233430497 513185581 966289139 831610629 935817647 861090076 864984762 437871673 559468271 416305731 806784426 472877373 942287047 797134175 985375935 494083983 715824138 63259796 153984537 848000048 885104986 347716503 365759392 187099950 258855586 524853554 996100288 454251293 926792366 934367552 937091885 782279094 893846306 14179590 403712273 657635498 738129593 446379710 811585124 101288510 852382027 108982610 218155440 888092780 923111049 633813726 867546356 39019706 69565803 772258321 809072607 417905401 858899661 637273439 986208566 807349869 990404695 548593667 675987352 692945419 941568783 950698602 954536910 718058423 746810067 425963352 720003250 648439084 770112118 641848551 802549152 55596588 344014639 724878507 732465966 383863758 838355468 461208347 917049031 397180256 629875847 685988740 715342940 15424706 420169768 42967520 920195321 914718861 979313883 162027019 386142173 894865174 907254387 554421642 918692221 663097868 905083491 201057182 744215012 30312600 471711857 478404777 729415492 804359474 888846458 258450054 331933625 693594573 927746540 182586276 220277430 339588714 695141656 676853459 845517735 562080758 946870959 463928635 646541803 750557325 769955243 121667373 122217597 331984696 556317632 11854487 45951620 199354085 976699235 224927720 784448505 384141849 865987192 297578258 751453105 496781057 514988651 651604000 837777566 174099131 718921323 239870727 945518741 435036006 510161966 332243968 809606116 760077392 947467771 21964350 465679959 321130541 889461856 486185298 524873419 275597733 785066111 551616177 619738654 139079962 559558405 942626168 954476642 574981717 728759508 882099829 966481497 848997182 998760265 691213077 779441500 235596075 777274581 136818229 636195087 402680696 875841672 183993719 350152011 54676405 98592290 222987496 697645913 721291459 785887348 256934280 582884519 885524638 947069528 834839809 922700696 435939874 863167762 45351314 270596239 460109650 936985161 202013203 264443253 657434186 913839870 390570270 604865964 836052945 933795469 600610587 980342585 154480097 414833311 909832380 912955335 652749088 675745097 24810298 458750224 865658675 958978485 425538262 440924254 63857597 650421907 166875885 483554911 47217316 519791716 601735155 886176754 879412560 936784550 26663281 891524957 571593722 797521698 542083409 833211807 54895809 141504653 822166914 957019318 354351044 659147359 765627854 967076321 582617176 767255269 347730378 396708414 846142010 975184116 550941280 787751236 446399836 562440108 258108540 599372263 918764147 945660423 266734985 920896117 357745659 668977621 498997083 904344342 163757128 554319369 814820638 948812784 127584447 948309279 5707823 888765624 275889223 772845567 162095189 453656002 409733293 978456222 61077201 396160230 857890303 864000827 923375326 990561083 169287500 790180839 891722912 988058409 180692911 875816238 391321674 670445367 901704228 979011109 275747077 862798934 717089854 848717713 17439892 109213221 4802171 25042008 204116774 845391893 144865196 700261636 923037194 926088472 646617345 755974351 367778233 824578638 261218729 320868224 834120830 961853668 159474722 686806767 732251951 739057244 126702672 237242346 389044030 680624835 284384966 846448512 77913587 982391511 377544973 548901841 436578069 546252018 869164545 871163297 862572328 947878522 481087863 948842126 960122287 963246319 181980835 662438963 306173199 852296623 104090762 658473030 683178925 793765040 78916231 490455501 456303426 738074733 838401127 968939357 947944596 980777104 343849925 560639800 416011173 786227741 362053123 594381654 235989989 305408181 580961866 841409597 784189123 976292079 177106668 678367898 975966608 994973282 639009920 811175725 915430577 941549924 420066131 681662144 628315595 829754412 950445186 960900515 723120381 838722961 212525166 786506610 667889012 810848107 231801212 469303407 955705440 956756645 517907529 822399816 984768116 996133349 342970014 487610354 695124598 770302523 956026013 981613836 220794406 867548897 399618593 687093526 909033969 920731485 408340703 695288777 448163313 826679584 158651303 442893026 258409352 959756149 632830229 673320386 956415558 961319302 188588324 306632632 47711760 778818472 374464790 511633738 506866340 876455132 729650913 941205207 668430933 782453802 923528758 937449071 201878660 980938902 760665565 902268522 290820093 736808978 914572646 928290273 401372804 833860166 177554015 813301963 183645828 899092162 945226859 983170733 241827146 740545164 458688947 780704109 338484023 720384353 985266204 998041568 771477975 910553113 441832188 900997037 553309534 801877351 898285119 985712626 403354350 513603496 859702209 945070742 777236442 900379733 774038106 993627847 282443883 599282324 888104022 942632422 155855913 967042244 214584447 860508296 639043884 651785763 390579171 626297529 562344282 696949499 179871964 446146052 193725679 893027330 621439760 948584068 690358499 767053608 272623458 988331985 927070036 995436499 915585432 927522353 47346048 169525279 521684168 847685815 643749940 699862884 446148086 817602821 222859246 679509160 8770680 290464792 219241241 515546578 380497967 549451334 347053321 553180072 552162647 760546559 745159237 956018849 834127359 986546680 198410790 433448057 975745678 982347249 55547193 577513757 801684683 880890591 922363212 993485810 327944 983531244 463010261 692927743 209854725 484329662 970774853 977422810 947408521 968762661 465353427 799708892 493541966 941536568 345547192 515185879 789911696 970243185 792985543 874475827 765894810 822238137 269628789 538287932 4473394 62305200 170714027 423058697 170810679 682500917 115838720 966618154 990195175 992090296 277902446 383941978 595285602 837684935 126041744 521940926 899673299 909060382 374671561 417317565 562529244 819690456 259258707 665522509 603998766 626465022 510569142 605998862 405667509 695148005 678330575 810813339 321653611 964510661 825203930 904167167 486720443 544025092 501394695 754884214 326757062 396341188 424581082 583532364 246202600 917418438 170637352 834841638 558800723 954883443 851895790 994639281 769842030 935202394 946359592 982450190 161213237 516618122 765614001 797282089 315605516 691130928 503321220 926537170 491895610 838644229 583125276 774517167 286154944 288321037 312494168 392683214 227979543 473546631 101817695 957709849 435901275 550719434 136523930 433123408 801710914 814643961 496545489 570180046 375408466 500872935 375573315 846935221 392654248 529369661 632665571 732244887 508638694 725486963 154158785 438809226 239002331 501306189 976913124 985087393 776530313 834766604 908442588 962851125 177340526 195788505 896683403 908738449 95769881 796574633 850793112 852606453 900250271 907758700 459225858 613749171 717593267 861750920 633675222 822691012 854661641 920961084 849836431 903715420 376198796 642157187 879649205 936987315 154672029 431814094 559126025 809034369 882733153 996284553 631789518 882854872 43264166 590042466 829043284 954253506 815938508 893142589 332413307 726223161 333968373 731393441 297289077 379350763 872795948 910716570 50777236 873239192 776544105 856700547 207549542 494679179 688115114 758735789 170466213 856447487 791258444 806552044 635964430 925649447 53832508 638561695 99692398 564843917 286723272 306240876 961877394 987226371 838014204 941948250 480955068 995620163 714475312 968201148 924604423 955767325 353061117 811369974 502590501 943663057 355887069 439711333 580030420 792120328 780665526 815462401 102808546 385365804 389620907 665861651 740346264 753558773 17725628 941582078 339573509 724065605 259727285 514591516 786253772 901862838 909308236 989111387 662763140 912666121 19419163 415778567 911694738 943550385 767598341 983309152 654941865 900574276 434190060 616111798 465886209 668471764 944913226 977843961 732569940 837135179 636644676 689463298 353509887 546553387 144546001 779422502 335594764 666361694 280232304 668205064 814958762 960667016 955764557 989083716 410930263 862950074 900174221 960886162 829516596 951136284 192548933 436431644 202167311 347596502 925669139 960603287 570672214 648078367 657264905 806064098 496038436 825915659 931417742 989999533 225416253 340898021 454778275 806826873 361228546 816425522 683633792 828241966 753972751 879302440 523498207 746110805 240142360 406647343 276552961 574327551 471161872 835243672 736154081 894169210 79627811 872417729 660374741 681904801 836366092 868630761 877620844 932000324 928551395 981515497 424305873 781124650 510784375 878665147 7408544 647798794 884898471 898101030 253061858 580320342 823351752 848252346 216777895 296779798 465681370 513392373 73142134 551459345 879656606 933909049 231969663 552203482 400905171 998970212 319073456 324106429 377182349 811704338 705710719 928603079 20609168 97508920 579292154 915137989 144225998 409843585 223842504 863707287 120325044 141276584 821973671 939370642 131323196 725855500 921281141 933634589 352914657 500158088 871632142 904139555 36662776 145487289 42508451 585325629 198134202 849593483 578513533 844771598 640763330 791792405 157223801 273503221 9491944 613521954 353660610 692357454 489438646 620141049 247873003 527094382 861321857 998382792 740938951 849017495 778382694 925020990 248047481 416424216 15650109 633983797 403314216 756448962 563510179 770434210 931043668 976663115 896913847 970558681 307439317 977430427 500912666 701168691 247458364 838346853 734417911 761724423 843140926 990839455 166282205 977644988 517939395 760469670 961968844 998018669 443990528 745639040 809915940 990199110 575504386 922656430 273868986 589228568 137205270 193487629 154702771 966558722 605111012 661362340 715071213 777802437 298530674 956996609 666275686 914968528 841314688 974858179 706104352 789831386 579253811 728759030 24972997 708206551 618808498 678161788 382393229 644395981 964273844 993650927 999206137 999900178 449331425 543070077 486152526 928569826 267667176 866181026 347116539 650525495 517478694 934679424 210427713 771058052 695385729 894004680 548759729 914281352 708086221 716327540 198826516 678900345 822766503 943978784 347931439 597631005 212227675 568353578 895252555 932615301 192656806 394513658 112291554 808804288 758471922 844061344 829643483 913494095 191266321 290959859 362961609 716885649 609110346 870082326 860137735 964735941 549809185 874412239 392900490 890423639 225806440 845976396 592180488 933112201 477396367 770691171 547023788 681374768 463114906 681201069 573936719 749712825 390956320 881124605 518862335 817509930 139879276 320020062 79561754 136654042 956891696 979604889 712471493 768141678 427362653 561480931 801717593 944819704 793700121 861998240 463736241 500395285 574897303 926358386 94440310 944053316 248778575 655433302 715066008 770186431 800722216 829275302 802033254 993068713 376189694 860298978 126708367 636965340 708323130 985860405 540683406 732940431 462874552 493923741 461677324 557650390 761882328 850921335 927660209 999784578 507445705 512842421 555611367 992213397 499133932 603589894 974721941 994123775 227013469 531248735 264670880 628619907 39978144 388471570 488216434 580877077 717164634 783282706 627746145 696966445 893995632 930358793 572441929 878304463 875977520 970003432 897886255 919746115 334276252 436396565 838927495 852110379 268100136 822730008 829409867 875680602 888837081 978826490 692951856 957439080 899327188 926174712 141219094 673455035 74404424 884647929 909457962 914838606 958065859 991163476 33328061 584591188 69381585 730339155 187043261 567388808 80523562 580229105 76337985 459656761 369679770 694730122 441857566 470644610 71751434 415839959 650948761 959504081 9024284 126346404 378748303 772438988 630544705 996810227 338417029 602994836 609064429 863432427 254101971 787601273 807004637 923000779 53314170 520869932 7602378 206406393 439795016 835575150 916787113 974882677 505713464 897509754 109765588 956888755 840486058 846260184 653260752 704073195 292551672 644707435 456212970 851077156 452597928 495953146 645524920 800643603 124104938 263649409 440496819 449436788 75076707 327066948 714033026 766036898 989507986 990744122 616449556 780597603 859454723 989915623 951407251 980143029 964646485 976569243 600407603 803212800 883742639 998076454 27104272 807393594 357425640 834849779 413437254 904767285 793486102 810967273 848823080 992728629 442084802 534671792 585605391 991462621 339603636 459030115 938877776 947455513 158774294 314981333 182426283 242581546 788518513 897170203 997026384 997810216 211451851 727740484 972412453 986244862 283015590 847731816 759954282 889841778 284770105 982667380 47718824 501795494 150197676 284331954 989931279 996960964 633761999 878923767 972513044 979215720 605678962 732102068 734744223 762000711 901340397 957093405 809275190 973613475 313397217 440752623 723568386 818927963 365820103 655393407 741422636 839257411 609254113 868892332 630473495 699880199 253797809 562032065 448998075 487497804 792580300 894209322 197049346 201792341 315228915 919223221 265901638 402109948 589426369 842384214 29819806 820202361 217123713 419521543 159232499 911470098 766439475 989409680 251398752 384213424 657583332 835780715 621014862 986899828 973137 249326587 196818363 651895260 21209432 130791749 320710489 617008187 334918305 720706159 802833584 908180892 683460533 925010675 400074940 619646305 821151182 973004614 601310001 942567258 982318367 984865825 765511398 937189776 514146332 588162666 863155864 918848361 295842548 840262552 342261684 879324574 786363869 847769511 561278746 783587903 17765735 245933170 280793409 314365234 175502927 243022221 366434217 531498294 108390092 129035156 803332299 820447387 814217873 947604567 947599181 975264236 944863292 966872910 806623953 949801448 638195917 733988490 592653230 989223224 627519579 865791238 857693631 873119759 832720182 856931434 955884666 973947573 238398901 563841280 930925272 963824471 879150301 976121845 46464883 577987619 677719160 683646376 428717953 754402428 852701940 864089293 365963369 564390586 792972860 932722147 543268264 689718440 969471186 989418843 649395021 983832395 189825060 620411510 914049211 953221895 794051313 987644009 451234689 974766582 380067789 718403555 2363913 185803330 96073263 232137093 569198521 734755602 982298157 986823812 321086878 551337595 555783493 828481133 13713574 387298624 329744883 645707710 615663832 805905856 485159839 573817858 318650380 936648697 752249722 800138386 662305142 686704864 703937980 709018669 725132339 863496871 111075411 825907328 615345921 618477690 756757370 781413845 101292136 525111871 882782478 924285974 677098499 919656472 66617200 174830248 850256417 928746584 500478443 941018271 746701080 911397103 796388354 837808029 386802430 740920647 904722717 930445154 58070400 197458655 520954040 976497015 202460733 836884661 983582057 986653723 666760144 766828040 896319769 951292788 672924467 895803270 215789016 825387362 109003273 839643923 486203544 603955207 328932496 460205001 84399494 606247246 938500792 998085047 293834309 753704641 503192964 880969396 199424185 871878122 617135697 708956656 241151655 358966646 602350025 940567140 565078809 739142537 717309922 872149478 402708872 994781336 980812477 981445856 173089615 511087673 1900065 97254002 762182771 790005219 974229193 981148133 987318778 989986006 161778940 799827241 972868807 982130923 749166825 858284500 414856521 824803352 146737864 355208293 833496067 981316263 435230728 699025350 230338981 584384611 349308592 839958598 881703471 976205530 916173485 983387227 199406713 791866413 864425998 919561181 23473715 991857427 558439319 795071576 271950205 916458973 229689360 979556694 80213289 901533738 799803190 994449228 226720742 704146856 918453980 959109971 340778622 925884965 583507998 780869270 197727868 721889709 635906462 717218236 79980125 724342339 278010563 594301261 524284617 855527876 652946432 837374349 543070892 667204841 417607787 458446494 973135012 978036122 462267793 721616564 301627084 682341568 562501800 629649851 953765101 955326107 315054564 749752084 765898525 833928376 74089100 273153515 896325053 978076038 374609025 421842946 685391184 952257169 575510546 788399205 91296662 150456815 446522776 892271883 748750909 978762737 843580989 874537678 903879104 923795380 810107258 902331470 9665874 283197203 325252741 435826374 311911662 881838444 217887027 862040948 568586434 904400493 466426635 822480168 799259663 953853689 316228679 875903210 687989635 918797541 481812708 954529307 422454336 762017301 661071992 779109728 411693548 876270597 802093798 937548513 668672223 940139418 596387047 730405786 187909334 404218359 620274209 825009975 266643905 461868296 296068172 710854673 428138526 738996453 432826421 878073922 381708583 693076794 818597751 875148763 790491187 947703377 150632027 845538816 117185881 337882973 413784365 964478377 930064839 952416990 440344822 776594640 701597572 979986230 497376998 996499953 726975465 904617481 18221902 667705644 292069440 896448086 679571178 764881872 180317105 854540562 414319823 932173000 940347574 943415342 972998573 985559483 887045829 894364294 538048819 555780306 222935683 603391462 782337541 931786630 928388532 986754514 534788323 539274463 714676607 792179772 380450179 687499330 567191764 728924267 283980923 438662408 923643259 975659178 899892034 912715284 31802638 122543177 512245571 683935154 428328321 944711716 879204374 967875062 44783627 245382639 362658044 439962947 225854862 386439675 371326634 896622315 88692239 940457297 731205681 891387598 209667604 735764359 541648580 621980161 380911682 569803415 546330812 621699924 154013202 611564475 318311503 543386582 571199561 760773032 178225597 278153278 790913209 871927811 838926540 919159347 699002397 913599383 428485197 749154826 821616370 956463709 121508198 815110900 945645112 989218254 350296395 520063837 244240822 739962043 474551287 927954452 658507078 738736684 172371263 435663097 897950938 929133645 754225091 960502851 316483219 872691947 596960584 973502032 637170891 872354909 99690276 448421881 497753935 704311007 536621628 830760365 537730656 872832969 98270169 360997055 609859405 673257997 263774962 873817500 654545206 969725396 434401547 893146305 330165490 441631311 73858731 560753561 33949157 856274643 617521529 866327501 6678816 360152697 524529035 615492019 269993008 912431939 294513855 855358401 990908761 995370338 500433488 881213691 993653540 993798281 870735355 961240680 285302176 420745182 694226032 759871907 953743618 990014783 219630057 931003093 618722489 708605545 77465353 230014691 611777391 874869563 855459354 863302699 511849648 581460544 179408484 345341453 103007048 283990825 409255706 410505543 635013453 927563984 30853872 212102663 16960137 915883680 326862200 968526532 234177245 576807056 244047841 815528933 522215281 709348217 192519383 299746636 33052247 294584657 803736798 806929911 946110568 990174554 310650384 362577331 320021649 758484457 508463333 905743828 712845827 911259127 652933984 965842842 568513634 939802095 759772762 848079927 19791390 25331300 181892767 480677995 372857260 427071002 545891814 678366453 622334973 752319787 270631937 343000726 455775600 749015355 765364628 794936062 133857550 996268821 55512457 881121750 732407279 780349014 264899904 728166999 450478693 785348757 78838831 241939591 76791350 328619225 667651779 678235870 898753069 910870218 662518444 913757957 870297185 900242568 587658674 647476062 329490381 476203390 418225528 560108250 151246203 522336409 915619301 960652154 273144345 373066060 521158638 868715261 704841414 820592154 5307252 318649632 737850534 807030177 329908439 837963226 288349462 357057294 821195966 944896526 795361332 878321013 381762546 715649082 269207775 952093710 460985515 554405527 818742681 925553341 959202810 964012878 794275537 840681410 549703022 721510841 18422026 343134509 89796314 678922798 1862975 345999618 262931641 525296959 842549727 931741000 889269676 957206375 312368274 765190577 934106347 957943765 478675513 958873596 108138211 912859724 268393696 792632732 274592349 872546477 394159384 422362656 647304876 979602206 202261991 997019851 784578134 816483569 438925224 478099505 446285639 978701423 561038407 699645959 263264286 959385523 933779608 992720488 401004336 890096544 535348503 879439394 759152839 792359854 557356934 911327052 797584803 947321521 407110663 820301494 94290774 200649925 896355516 908814690 321330357 468591528 599504213 795544054 797240898 840008626 629408227 869258908 979022864 979718765 110881591 528197744 857224399 982451830 504699264 794745023 749387750 834614873 999282028 999381672 284913478 692672779 938546247 959789683 556072372 814695396 689507897 837829584 419093783 706340510 657060328 895214624 304960566 752905391 745299855 863806667 438843757 574484993 986154301 997427075 207342621 296132131 597837902 784051667 844600810 957611995 217568227 542210134 421407970 952268867 366335853 868790983 682520133 844872122 439867775 491815092 749518520 758642870 776520486 977878702 489490357 765474529 363420385 727294952 336962687 859327367 814668329 942399185 186282316 545613282 572495975 677325260 671212487 722742977 948499558 948621223 401748846 918353640 507423960 822013565 424187488 930417579 183161056 342073376 397153191 489939655 317678550 702319711 242930469 415970514 179503537 271468654 973675656 988163869 892741382 904052009 527845068 943399209 755765213 931485154 595887494 688344388 631931205 757051097 909784464 936748600 118423185 289302367 152859052 426380044 183242421 570117099 420048446 891478177 422235529 623777321 628056468 934431223 86732927 311640037 142986089 668826704 378729051 954322422 105793282 408807137 498891957 712395548 652821291 794573932 188051443 737285754 375887473 846065068 261669270 584039002 764216192 843564271 143187075 909156858 149500871 745072373 319479795 905149328 56546376 525538352 137880612 782045000 467893573 905458100 96813521 848220415 874160077 900862440 600765689 787436856 539512422 825514601 603179520 972997484 491746626 965391894 23197309 99883471 902744808 904366668 353231901 566968219 947528057 967989889 239174965 633710096 793651592 822249050 782447126 815820146 811376939 813791857 300934164 375707777 630457458 963066226 858660412 884396882 452808362 538868981 275388261 860680801 76292139 596903122 457827952 673014336 816437813 892421123 538707621 991873969 568183790 834316985 867577203 900245553 369239060 841307239 788079847 919454850 857205302 999990579 436906118 562840126 924043922 933971416 804067189 844736243 48435637 730218786 700817297 842693762 776492669 905050180 514258678 788001129 927977032 976564787 992195856 995824798 542827421 588253917 182628220 894346498 186723845 384717162 288552747 899592419 986161958 996141848 124357470 627219844 293635996 488126602 797472560 869626247 45626358 797079848 624692823 788748213 774701688 816802035 219606364 962043775 79954540 110758760 877663662 978572724 341689193 917908552 575383865 790045575 405518611 710414192 426514901 479111230 832804907 961690579 105667719 904155257 977166220 993175278 575059294 927254194 615870958 686352708 197453498 897808943 94096887 251769415 339390642 579631372 94254132 456424822 152300150 950737974 45058910 814646123 912740346 963134003 682104325 771370466 640059633 719183586 385330923 675301038 747714511 806573420 28164573 554432440 697862484 880067516 10598652 291226404 380163652 702330039 392860891 791795893 951761047 965924109 502872657 847309664 645359752 787544990 685086443 840237200 960020332 989864645 931337356 941039305 782778530 951263217 483190835 792215399 615777706 939482470 34532726 831512561 194807189 936863958 90222842 666343517 465520797 752789633 983157009 987831822 229898217 531937045 294733628 321644280 831905752 951155595 346819075 613978190 748383379 874785448 274652464 711171097 675272649 914392445 912314030 921445952 736256219 756188417 833956746 958883960 609210343 865198900 288958305 379884933 909313389 931217848 572717574 740962911 30373642 146405430 443496520 973890123 59222193 933327840 890090873 976326765 879568989 986338516 870380856 978349731 328747475 554165146 281162580 732445823 916728068 995980012 144736105 848665099 992805483 994336052 999941732 999945669 802392476 888642366 217701719 218674275 445759502 973128064 4780652 153881146 121471849 282138991 575853227 785133526 70249952 113540755 56177280 208735019 712597292 908165841 759490583 958374095 817242266 882712986 409746130 481577511 638544244 863560571 504457543 702010656 236664252 612138196 436953247 787530503 859591943 979820005 414064758 772151813 314810854 882714865 750893348 846083203 796021905 848798256 776758721 968364766 58504534 262630735 712350074 804254052 328366368 959143378 928448393 937221671 72765535 937177999 709143634 982291990 434524213 579427468 341086990 916091319 111231350 396740503 728934342 856158645 207731523 832549829 425741769 474253812 693936903 814309113 993487437 996644335 682735633 989049138 763300493 827201620 367664363 954326120 36617168 552334372 248649229 300581681 913452011 999145058 319594646 801191623 595950371 884889211 480593860 852327841 305609532 928184315 142850749 253143521 97385355 133494899 913064886 988613810 929488431 960024733 310506127 607045351 119933088 698499397 309196467 373403260 671603162 942482309 381380508 877288752 751008838 997864169 125057606 807744505 457026124 746853050 600313785 622971126 200049557 539971104 676341947 835278494 556178035 882252258 962922965 981170232 946442226 979191696 131882891 864931332 263724663 912618790 907789223 989566034 223007922 617802709 569975781 907165653 791830517 989283009 102596899 473159846 63080994 105318557 444482736 491599395 126863381 593778789 887081259 939333496 943123493 986971948 582021684 979179892 223813110 900619704 502608022 640125739 775479147 870721455 861108579 888187997 35632623 250402242 413296284 682112429 883360365 992367749 869625272 980451834 109564431 145673915 42530464 103521180 598926795 953885213 84297219 953333364 386704857 495808191 651601513 800771762 425455183 844100525 65209594 895440445 137218521 616948278 186043307 510163907 550643393 760433805 256314414 908396315 908017973 965851240 87017750 338585459 979518974 980994290 838770722 950386296 962970850 995849514 499398393 866022734 379637000 959660265 460782153 565509654 847897287 896224553 200389671 885432002 818275732 823275333 89261546 261701516 223427040 608373151 77675079 567405441 652735974 926376201 450473480 756640388 425588904 856341699 887463537 948264290 711105128 978237106 294374158 982504881 645444128 793433740 624836480 852193219 345110471 420074905 467752504 966425023 842001481 853153206 334933016 719777492 370024820 591150228 665867345 782647958 910743819 915903541 319072272 558204655 446461807 604393099 828212415 841911749 22123249 203488670 31711569 904465009 10638224 180611882 829965700 877998785 713517393 739842935 989166949 993051166 677063587 954932805 353565025 964649213 51721228 493534394 22616675 263234109 568233211 828003294 976046083 988628584 908969389 931262488 635226743 793508180 10432728 262852363 871807390 948598082 962897548 988995852 699751323 922848811 515735093 856112713 898941427 999435416 223186238 425524153 329295741 896715758 848161750 911564950 629830070 970392314 642987315 703428492 83619488 423527155 925652563 992893083 554736318 664945477 549584956 937661946 988035880 996428530 447931447 657746807 334016497 786376821 375137691 521716994 365775030 635238476 402702199 982445491 67317385 550290829 358929132 973432996 755615353 946142783 871328836 997644199 920656637 982177095 560023529 839489356 455706420 983706343 778301371 870497070 630923941 877705029 683519864 717794234 250062416 587963251 630114403 688207717 767265536 843807830 104782643 732464503 924823421 996471534 986162961 986788155 676972849 789515280 132646411 541362188 664992672 779544339 342641735 981962681 913648492 950859232 979794178 986209378 403442954 703607896 674006216 987954130 603245999 875179799 354029721 616004784 431854888 637981633 335977933 804006312 161383225 859428769 111338953 639782357 874860698 958149738 135265278 631402386 343231165 811117291 735034782 825861958 867264079 962034383 723859276 997626680 147860015 531369941 58046555 571842048 946292010 956941969 871188635 874711641 996977840 997526188 903006741 977736838 542100258 620186742 45440938 287534520 612197227 736866295 127505174 247516144 55855493 342435191 304865328 902613473 938543071 966096215 14058235 672882221 870359116 936353036 241217981 320518786 972565246 982452953 188626597 350781299 490452133 982135050 37861899 599653335 190310808 843857420 643832858 884290103 849625650 966035870 371954239 711521012 131461717 180075471 67739862 806652151 577812399 748143650 191366499 947746493 924075016 961446067 561246341 623996139 383501642 556126485 624380158 673009856 887813060 889627247 840882066 990479521 332078961 849375961 738421458 819464667 687105962 895249595 114690556 544350516 230967841 674153489 553659491 776873126 796333848 990993563 402746820 712636090 732384318 917138423 305277138 599974074 102625015 801951887 468439944 791022301 815608090 867273633 902994968 918928586 287173918 947044282 313716885 463241351 164358036 865529634 726559101 795297258 932963827 939606056 595872260 751685361 649268471 770114010 369332145 446529303 291750178 451058933 909221636 939144144 822435640 947122358 636327334 668965907 137081107 689206618 266574723 780887226 196658455 586659778 311894686 466393081 317715543 526877369 256707527 972620973 469708116 700272195 743126578 763965682 147010323 761911304 304131591 560094376 613240268 841339452 98949310 241171807 876386171 883094951 954581090 987716675 591719064 988080949 636651112 927457614 332833476 999772540 666495581 772542176 454285681 597568523 876167955 979495249 807896094 832637848 888831410 935036485 494496651 693675416 553365386 905260784 574112138 981897062 837684760 935881530 997914643 998789571 962134240 992036885 766527748 844592931 670420178 915653590 902481604 994582543 715101455 793809764 658056345 671919915 580850948 659960124 946566382 947970518 535585793 925302376 869904797 872962907 884805393 913861863 288121134 440197297 60992668 421365160 494778354 911436583 273183267 583880877 430415410 500872656 881440413 888786298 635439437 672214474 162825791 678058933 520957550 548770373 177373489 227850385 186319251 239532930 61612628 237337870 168861832 710935729 86754013 607828938 547520047 559069108 742504929 865098866 97154725 160852459 386046903 647348587 497577961 808238069 926139261 956794275 898763521 986323832 496384137 870588951 965809890 985628711 5247584 512534542 488755838 581043682 378835621 816172027 215480033 492329239 952709515 962139904 674483436 837430823 565779915 590541634 901485268 986575734 368741081 954490859 707661854 715382025 722553059 871201703 717284663 875748373 726843265 846566063 824808298 838732143 45890028 906131443 637487174 720978255 891674362 945575350 920483863 990202240 704087446 988022380 539308405 769928006 733595707 934080599 780568490 984045617 635414503 768367921 20638696 840922430 427401701 668726013 972961304 995406770 540067013 665126629 192986147 933688866 765281770 796452727 176965333 565417859 218380355 308095536 884512684 941609912 540493261 921362556 713082395 967879796 921968496 996766332 927990058 931962148 657580136 934123399 290109537 758620569 750547294 776978997 976145908 993456566 320944088 407014486 928006426 997323544 620647511 740680216 667218853 967848975 543436038 680201795 702553418 744645207 15736331 16674064 989550021 991066628 479780346 868387351 16216554 890302718 795315557 852152966 845602722 863847804 634170363 944480197 522005685 814934464 297508383 516880167 360566455 509271739 588457047 818899794 67905814 497996403 292943252 902452047 795710925 961222124 898659290 964863470 473035671 763109267 88772266 666556971 921439853 962504282 322925562 472021834 156936547 721284775 567947320 680392377 262828349 962732282 476966133 781901182 554828438 621845163 809051025 841129310 890904932 936644802 785710378 816870492 356165889 709610683 313051930 973310981 984034248 998535174 264714733 890872932 465006063 983158650 884482300 915140960 468168089 981945335 334623492 954183720 984190769 992480016 883503172 985811815 768631137 891333665 858031538 916767751 42892594 387786490 929336793 956566166 912016537 969519852 546705307 937018724 487161861 549693007 704104740 914707398 150558968 214722800 182934511 786706089 11985375 61658080 842371965 876248578 518255496 732338894 317078191 686414308 226026498 671319873 914119890 949012396 895224075 912577182 486706902 651110446 604912067 812829104 786478322 943701650 59851734 386505180 208970886 328130342 980021375 987731708 529105463 740155055 4978907 30856809 772764654 852995495 675474049 970813541 685138897 911720662 514271090 876669680 110552790 425379343 976257348 982261754 397220272 945560561 131694726 573711882 160818832 715394546 244188513 335274194 795295351 917607099 62442338 534190913 711466502 979678505 955468671 998807985 421429870 734279194 564504485 722047223 422290027 839891149 954086569 986554207 646534115 856555114 596699346 624448069 233280306 847714035 281425146 446327750 950487404 989399561 150126547 936551947 905344206 958806101 163151021 887296409 8707545 506521783 773186848 891803967 952709582 991441305 541070682 734615649 822257187 992465052 966739817 990724266 36951282 502079354 938638812 945038213 691717543 830619974 838477126 974688790 274305363 445550630 599150748 668312866 731357782 762740074 837900607 950147174 637175476 771835232 384378787 997878097 346406170 481281860 841704667 960474448 644940638 876112982 65767897 238538616 618824855 789731461 537145065 678901544 498774697 755321335 913645683 980715632 399760725 400407763 884044063 931765495 864811861 939099673 445145678 908136837 547561744 927638077 144231456 669429322 433466650 571023812 747645571 852924745 148926600 621052968 326186415 543144640 930128671 939165075 334401602 995389864 395500389 710921261 316035342 487964467 921998885 994270430 489671625 700144568 314245316 526389343 517962113 989387475 317812923 445031382 834282960 926793269 494370420 802674754 137572587 625203993 982701141 999081523 998968973 999842638 806327303 876728267 27018738 349102514 715326608 930702110 221805840 665604271 275421842 289836410 763840418 954307833 65650424 217351351 839604405 890215032 430364135 959365788 829681641 904433599 794392102 807495068 795455260 864254337 759256786 843568424 506991875 550716232 386033118 752646299 53241043 216718303 938223559 952032716 31083511 523952513 96738160 718511062 447725303 592892837 452212203 728774265 977101083 988276751 834950127 835404367 345685194 383066275 561473110 665055507 219574142 260166738 120209174 640525213 873377164 924765299 724896624 903938205 620635848 946999147 863449301 932603579 829464206 864400031 76539042 873199345 807504555 963966043 285145198 864743730 364868127 904431373 422711434 899866805 167468274 423360535 837944352 957404676 731898581 889584045 588597814 612610031 512337223 534998802 256365005 283246415 271874329 968905338 140382472 160659567 253488991 568180877 370431916 903416942 411163658 647190071 112167327 247119150 404314600 482851396 163805493 531900870 304765697 582698544 942348281 999749454 887096680 949567698 48576834 143644482 236101617 786873103 61654196 124148102 213182333 339218665 395443309 585186343 799193882 971414834 753326675 865055385 829454403 835915568 869289973 911780834 833354668 970379803 466089920 763460204 564229493 961162779 241363447 647887952 102858555 511514789 256782846 466978314 425462387 586097324 61186102 625736682 40817176 182635731 668576787 961111039 769787860 819951520 767691005 952368904 676205551 794987624 161629244 847915324 224389355 450213127 180358558 234996434 607895059 780329933 859378005 868184799 930067218 940713556 41965548 543337875 88259268 953862737 900517279 990533503 521897173 913885318 79635219 190329785 427580644 780817607 898718545 999387579 134357529 453631248 397077152 608417621 205633527 240109085 921073645 999420781 953903555 960839708 359111253 509830087 491628477 830306930 917297610 963909236 331326867 524856525 587782928 638305021 918075982 973554843 563527921 994363024 550329780 913226951 406442171 619492238 476556198 969298072 471096333 956520291 631538599 972400705 403227232 643422418 687249965 857004206 567780587 733023722 24660909 696446772 829021520 886098630 503223569 617184552 18404782 120105911 858388407 901576877 53793218 980102042 401596998 975247004 952192470 985726156 641197548 852640296 205787948 651202470 468550804 885541874 430380547 620953603 508773007 832456937 540112885 880251771 106846405 203907419 843796610 946791104 83159601 341209358 402003749 833890719 552565785 828051713 900218487 970552598 203066184 442888917 277385183 763422026 28479285 954465204 601223162 760797234 994962781 996093077 185626771 614886104 145943645 476155832 192017921 773157729 381107896 635044244 413599076 562032036 511300867 937518973 65530536 314387514 814567493 993945439 910089056 984364852 971522527 978354117 403479834 647128759 897304457 983946035 476413697 732573559 425866692 557880155 896876917 978136570 136058829 546708168 506707277 574649418 311894576 816425628 635094639 728359457 121064035 904186676 501698769 504746488 288073547 804686307 242855469 535174383 347875333 624802362 450122525 507990707 600169167 761793082 305964983 448940100 365625760 399352447 973818485 993641908 246040662 820224869 956525012 994253407 102014190 656795342 168316263 631495398 302734992 563690166 590247414 880046661 916094122 968620557 77437632 508398949 22202366 933735088 328092229 385774940 25650257 154880869 782193452 906108361 668086497 721115837 712855911 745832603 240436495 904868176 766955426 871640833 67961293 675341723 341675252 713565995 984212768 991425161 609359998 899500658 878019199 968998397 974045499 987496962 92455464 996750049 600335854 649158957 444553340 945416302 942471815 945083924 265509793 778537716 775727401 823478799 529877805 879335415 914215588 963322428 341829028 628282633 818351067 864174497 854797253 885633460 755659817 920768808 186311395 911139614 3830241 901896122 423091978 842363173 546026808 943794026 627317038 839083391 464525321 756186361 549602047 602632388 792595548 977258947 234564113 442575616 83981414 876758529 89640701 763994044 2466484 895156063 623075321 640840103 690584348 821814183 431772441 823562983 554176122 778969854 791703400 906572011 575882423 777794246 176839996 319349735 925120733 926919521 14234642 233243321 380036686 537806300 146069480 324611273 530713255 959532008 8380364 140400507 919375182 993920930 225054308 449957789 594077038 795211515 574422711 598721814 646825496 900199617 259570543 422349309 615480504 786379178 899544696 991270160 756337581 878356805 717748235 843239091 945191329 975616488 338766915 902965337 760329623 827061948 117972479 449448610 116953625 187389470 481507112 608491205 620206767 923112588 766077405 877588182 431872212 807116902 871603495 984353185 660340957 874990943 244440722 557181961 636434678 647749021 346121176 997471241 641901487 759441666 553376031 605534853 298993463 743776317 950061410 980506754 250549505 839568899 946498120 988593650 217516218 277137490 378582025 908823036 601310283 895039116 107451944 394977566 44958218 741698567 601290280 830219060 458486585 687120809 692375401 757715936 572744839 924802870 185070547 705066288 154538770 934113234 499507304 540944074 936354411 961957501 396253652 581118685 161173678 798579957 547203725 641577167 9695517 920962760 678859438 733131790 177374087 212474217 335824606 742962078 261582826 775808887 902663849 910577483 884218763 984481220 328916279 894341762 50062966 260857592 19352770 700515588 97072797 492591734 227990231 879113421 462798427 502953643 534048904 915502936 436960415 467510116 277970245 669722645 801461009 859447950 492850002 862066277 767728680 936872490 656410407 790538756 866167255 957708621 12977958 886787940 495408193 863653377 719926837 912132378 804943197 994268891 726864300 829902352 289339393 957123564 262791309 607665046 401144245 898517443 454043642 986699934 852277398 873557378 14654686 847190037 840011824 992213410 590236201 639208834 720355474 831184233 80358078 753180350 425925861 958951445 215496148 609179288 509721522 532333424 541493997 899738249 766126944 944423874 564503918 829995489 605411470 612399990 363563830 455490651 971096993 994854578 902441813 910433707 53082935 682578529 47816591 993322919 24106669 357244603 994384434 994530275 874840701 985202257 508896654 611026817 35540751 358927817 987370067 999111647 45029407 467990882 668744492 691258761 147058557 404027285 128017555 427631126 660389723 925203189 758984509 791724629 769379796 860498245 181114882 616350335 137350917 908059770 693562296 820415972 786748696 823131607 220289640 498779294 73131918 764186550 11923939 662858553 175562298 869539600 901534001 921591318 181936340 918352979 352782830 889381065 731675504 896743492 605844292 980694161 392747382 812612066 271160170 930888527 900269300 942849603 282594104 914350949 65388474 652141515 641628463 934866463 636928310 999247219 980608658 982427187 751723903 818526531 968213796 995756518 918662368 990175294 661087861 678767228 793737624 994833615 287941839 816896187 484347923 784275237 786563866 856565386 940416303 964679141 273727806 570225685 794766973 982266262 434873947 666720647 69506443 103547642 700416472 878705985 449999193 591510608 112073059 763229695 869387539 882475918 330882344 974743783 291980009 773223567 671759439 808601532 65740157 757067982 108124840 459643608 741538296 883052253 922172285 996219371 777999506 848709917 724147842 822701989 899390744 978187692 399433879 460024891 369961678 926663246 883342976 919224979 684799264 931956023 796269144 957286564 864411598 917928083 825510574 830483676 667042923 669713400 907289297 972697042 582227415 836710779 78941893 566681162 656086442 688368460 639973890 665733849 118904671 779944683 823713451 898046059 851762568 981675345 503836012 547645116 765014566 858894589 745473543 994029470 968774012 994522084 456103071 510934009 425816853 727164394 164008820 393730776 589259800 615196614 697563811 931161071 60905625 778595977 276169784 792435285 713227082 740889230 638035096 696611730 963745147 983637928 597978856 799353039 307098659 462546580 80011266 276838717 492330290 881437737 876422178 919980363 410166229 648640721 920576075 985109089 956827773 997861675 347926074 961563823 732917781 863701556 230342971 977315821 186949012 618682764 552753994 599731308 117415309 403464652 291161234 740481951 699153654 750480838 43823461 208146370 313378390 879759684 941479479 943393207 30644858 675319891 719011831 827322189 858164911 996705890 838480947 926118056 865955969 891642017 795161615 920065465 61659526 220856361 189989158 819812003 68694498 186840702 264046573 466169348 651119749 690100384 239301106 361210059 390287610 529603225 583785815 874498268 377967521 771855578 812993884 935830113 753440737 870229364 224724056 389715233 503177257 886623907 211225993 842125047 535793500 663722978 906408134 943995652 734995222 858153680 30016550 368413161 577587681 868795345 333398614 540712273 427927966 442526426 828308622 857182025 438924478 733127676 829668798 855762622 701169171 920994582 151890244 980451415 768741232 782503839 54484145 184107989 360995169 844873716 895820716 977311123 382983695 928058927 944296108 958738965 458833949 533622389 612555470 917493594 892271721 932531664 575461926 691135265 227522867 528028736 818286143 858128494 888510754 921136474 954548382 966348011 758189978 766754531 193236608 769748065 649001899 786988972 404457236 532060121 960629098 969584639 576072458 696657751 782604160 974775315 152894226 220037696 880699732 956074205 899775710 956786854 693922284 767830508 749711966 923706357 277522547 865253206 67250866 797272901 205223091 705314009 143941518 192514827 430585548 728687320 18390411 211594570 200925215 505042130 89106770 539290873 932263679 948976224 542769379 628789760 718372906 887552547 174023315 370399654 581037648 944471638 165663769 609837538 665735286 915767077 93037043 268879594 430891385 627420530 481210997 544179111 450366099 778682218 432979869 466149930 980718453 992431994 506079226 884929339 589737308 916471880 292624504 683588192 150068457 582201402 258597756 293440079 691977704 838568465 596751150 812133817 302030573 561455651 319523884 719670816 547377074 821769418 277961832 715905902 291908182 885494319 430440535 707376177 882060982 997973796 924316872 953253338 114819621 769034837 825351370 838139540 660291029 918629251 761947957 997762025 695198572 800134487 654691796 957642615 658062644 687414143 594249712 915655232 338474005 724727366 323646313 361295442 232351797 601939110 12743628 274852508 108922150 957353685 408969962 957210767 557919482 833582580 66534274 120851955 166274954 620686485 512872246 885944947 474844597 817567704 104092900 236199041 395779235 982819613 76560671 137281496 268693306 516215309 537499013 683748982 824168204 898135237 608899059 704186032 986494453 997521704 86130136 334804200 557801537 955322385 548992185 638429848 790649138 822506633 276651531 422318637 672801352 965053654 451155512 513875389 507127089 613554689 650425050 713638662 921628622 954805521 367880246 421000646 533750342 882248915 203466935 823015009 312773254 537455776 685849140 970228353 825521358 983145594 692855462 720114769 558992997 724341263 43077551 475763955 691960497 695156127 528050731 975140430 992634267 996829790 627318849 957862918 190014888 555539238 529914898 785907028 732052642 808492044 569946770 686827109 977226138 989179131 152574512 801080340 318622267 457967602 725972773 920983224 871276146 891959460 730589724 995863694 454940058 990458747 458033267 695866746 664093250 807942812 502274768 965505187 996025499 998686600 253242294 896947849 982022185 990441891 544113904 721211255 204120807 973653294 911638595 952375154 292187343 623482510 241393351 930658058 566014471 911190716 595726133 671037799 670636634 829341563 694348121 700526033 318470874 623024829 265818133 609450112 377058711 968073901 626385310 767216293 857094656 975104052 256042845 670055413 320428834 769709752 783727775 915064847 209306388 399519902 238928822 831759079 717116776 998918047 397207584 419806517 367113018 382624733 224426285 297595231 186746027 290285957 243623276 675780518 443347121 892639515 604495872 950010273 279535120 899349042 688240949 833756839 641507309 764048791 667737870 983476851 346327551 643266903 900907124 972616787 420382936 900882220 451297146 532731063 666657365 932443940 3676729 180451625 557993832 723400542 718414206 983727794 704353597 875267938 273834882 849944607 37714145 608983780 954802262 984065221 587756208 703256422 923241139 979475961 609102076 856314125 589189082 708518318 248838837 571627754 462981619 517587656 553434525 990767257 360279910 838328406 319585403 588668231 111223359 513414749 644419382 886224416 708329880 878285268 862877750 866498480 584515493 843329730 555418332 610868190 505497574 938978378 589270181 681411081 878683004 902858524 891238095 991264678 554407565 927725083 445018011 489951259 150123324 158309227 804604886 826818865 47500717 373312797 341937224 745985358 999896166 999988469 774086314 922500704 786370861 908650224 198567311 676315892 757423031 876849650 663250944 853557829 39673524 726182522 584011535 803071890 972920111 983490407 118789387 899553833 113184038 943632461 486052798 907587333 906089796 924601617 858785103 880736782 11852850 787413129 250146051 818832033 412761587 823505174 295232857 965709075 592801116 925802025 301339083 935707449 173744086 322128287 730025019 731289296 764601697 901441148 412572296 816646148 756281298 916430401 623632155 923716542 269122135 934099267 577710576 907849829 196196422 906948551 750071264 967522359 248519707 554048149 268067383 611278917 825281047 972900066 811748843 926315479 840776566 909390713 163817236 517429348 975745330 996156117 307293262 391143742 843463825 956922387 66821177 405384469 190384809 477311193 973771079 982807539 891405759 900128389 785558758 867084691 247898639 285576403 259906809 528617217 438861090 495491448 311990304 757178684 915993228 997414297 259898921 961987065 505874674 985688220 990061737 990455277 44730811 78155018 240383732 241372918 125713118 562904433 9859644 574407012 173560511 664800599 998930172 999798554 57806537 748516740 229328601 582226256 181652588 984907840 47132693 356795022 856915409 860523356 967095837 971305710 495959320 531644791 117048496 594210966 869139925 973102245 571989451 815632430 606582010 989480372 515503135 956945122 364608458 997678796 237704926 602203531 382386883 587810753 916586347 986053349 237312652 869371838 429221254 607534749 590865613 776915838 959997617 997417721 521242554 948241900 544080040 576758930 833691264 953431478 105601843 231617711 217884806 612577986 709703328 742087614 937025521 940963692 385057521 692637066 952171169 958022652 180403638 911060212 639416817 833156825 528432386 529780412 995509474 998074245 805287985 857240093 608054699 659249194 551219887 695171176 335542304 704871615 72380565 182744180 711081565 833186183 904463686 955015161 333496032 659908794 405272579 411172435 341332049 848651052 847938185 999031969 713662196 943291172 926440346 960790559 853812961 985535025 184738442 911855804 542990196 629515268 752660829 901969846 388867345 580935686 813059959 887423256 157200490 277997310 589974712 867391827 705703448 790084023 7813281 861994203 690765010 759504915 100620284 355702942 77742927 263918361 152870247 254379346 792503842 957452908 6057288 769864529 837050945 975000455 959928244 992734990 584777378 821332413 161174630 461420230 156409950 954615069 73229931 516687966 749336657 807170814 398030418 888041310 862387219 976253604 596903957 928621746 718304892 943860142 787046980 869177328 586574012 638380140 122975961 307837080 584557293 720364396 17482950 588775150 12780496 327357793 269763378 416900332 536528586 884514077 482336471 935519064 488719983 936756983 417084794 876007077 927124130 971979736 539301984 700521809 315503492 551803418 720821302 860030718 923406337 972261144 508451937 661872538 895822205 965619222 310294785 453050859 600680824 748085441 872033822 986561529 651512065 783158019 494452440 905140489 773275759 947278382 691567143 701920140 802797692 912992592 637024234 993037357 292993506 717683680 652699076 829604646 522326691 936951832 652289056 833913955 796977520 888731636 913170402 973711124 177215723 301745136 281668579 434215520 222711934 246476323 922872492 987403401 983756206 998938887 281814678 618634718 821090528 912044662 833400005 869659664 941882260 981705149 989400978 991482634 584693472 948916873 234602121 364098230 488378496 965044873 867319820 873649705 197841659 698384862 657721821 782741704 507948995 860956209 842494029 858677424 431187459 484069291 944822596 970199801 784598879 991685512 313412076 982465870 721804315 922297470 547655776 815191499 491887214 939620832 554507267 922674042 598621448 920903161 138637424 225871809 601838112 799933298 381568320 763360681 345038547 972688266 35853538 833371874 550216501 787653143 857557710 893331327 58280156 396713972 758394529 894530610 101324091 872842101 609358333 872978335 506306240 633491049 680062207 694837680 44937747 271442210 502030874 973628458 970461123 999074938 193570468 339256564 806939993 820889802 919268670 997632601 579745243 624662613 306691153 361625486 191562608 414213299 878846204 989320174 748343301 972518113 405298454 779397325 991852691 996679858 347731580 952090296 490892009 773397033 280439758 325478795 935270821 955012522 376707440 513679864 615135790 629037011 228489935 869228908 439500709 627673107 345857245 526219244 683658600 991794822 769841070 915425431 737072136 778541152 304013846 845977851 290324997 636155433 458903794 778747180 581667390 610181511 953239704 967995834 512979654 757501828 963026442 997897582 497119108 785022970 311753212 836644584 691159135 973227023 613403056 788356390 330762881 950665038 929284391 949053555 408692375 818413203 533773392 595249247 223401190 399107096 523189853 584759581 155112669 991821775 559287868 881627852 674137661 809739244 941882406 959676321 211184709 307479418 431759334 594578713 435296530 752644199 931324098 941432528 607238021 847082250 812545465 915115982 992109345 997465793 71023483 172737626 758697190 774259172 401828752 856150766 718852644 967209546 100488786 647055133 890567991 970970070 190853770 411201379 423817726 964367310 281244420 982300921 190335545 470175283 967120144 985670751 499655189 698933200 10020010 847434026 304723378 670039304 538855052 934344695 171105251 718768135 957567393 961729176 179680780 817357336 563619386 759102159 89977636 937019517 444391276 623203989 600946905 754830390 106931238 238083309 264380990 507864105 841262999 983591028 447277058 567997125 487461716 627141915 981811960 991404134 698800929 882812241 284049147 791819742 2370618 187959071 992122984 999133975 755272346 760450762 202487689 327058661 242296066 669114026 975802000 994320978 799870128 941827283 501318625 815844488 648270295 831233229 241716394 509750516 190853478 900110630 580028900 675718136 408712146 914008305 72200955 164914498 54050377 54543929 652136398 948565947 716524899 878017161 558281976 775457246 827201655 841977351 439150205 542584423 735198563 917827566 8796459 11534502 280361019 878886345 153088726 365385321 915054507 926109438 339884208 610985417 394575585 677348541 829017639 911638857 891764144 966414666 657766388 790656862 474775195 496161564 710936076 928910859 945836095 971925604 447157578 844095477 402287801 517182312 490223398 916329322 859349351 861101030 715594525 899391909 627940734 915230787 399947681 601778095 377675649 871772143 222480518 480908737 820910172 924715553 526141208 969438120 827457957 932904504 547625982 672203623 121268940 457783287 631399324 708786598 403853237 714508881 64538333 593199385 468120595 473619593 25038467 666390787 667738265 859377180 927970049 931569527 787405479 949346983 913738799 924710733 490838350 813568653 748618500 993550616 511765682 676946840 588048852 741708472 986936026 989564701 31524554 147545572 258251491 915575404 413813061 827548763 541117693 689645226 932880609 933352845 31943812 470591135 208082335 735394202 93756689 718944576 619913825 857076274 484068696 734178082 544297200 911248421 525144219 689743116 847007231 864035962 47675553 736645977 380166497 785121715 73498589 358414291 888499302 961483861 521823644 585220829 621330872 858488773 589636825 806342283 466735711 680477879 141373135 473529199 350203105 692919487 103989035 464155905 865590654 990949234 925598481 983775535 290216085 916305825 827118134 976897501 318823721 717295319 890874101 917373737 356050422 856605071 782726198 813884221 227250634 335429216 489027230 625718272 567637170 943082945 804199088 906708579 841444107 932613638 959582186 973263339 158199672 743712891 320644469 367143685 836244207 974819384 202147950 630259732 834963740 846328886 722639154 963100110 208238486 729532950 185860401 223698651 156842265 994916575 430726016 634141075 868206478 999392695 710761241 955037699 625846317 815550203 131675169 158984516 898350485 973215643 316867853 447633515 325557997 330856546 322659384 405683324 766704738 909974918 257247036 411620104 875093011 968152244 472121656 486763859 663144994 990429415 83474325 175701690 143419878 161902146 421473068 679464997 281311571 423555931 300777284 454023586 918420019 999622189 914896015 983029095 847737231 907311389 43798632 261918401 850789953 901961071 153470155 856211516 163251439 672085752 104421715 219130730 925167622 948932830 344498530 473092910 436366308 936061377 273985955 458330483 281624343 488676899 982879187 986460785 108872108 811798921 886308769 986816991 765534803 792912480 690001347 872764783 638581920 661951312 86548192 920337986 76652352 677696342 345531979 696150957 457464130 930864945 616962120 726798728 680437855 765639321 716125319 976016773 567821127 623645098 488414641 727869102 248245530 479166445 505922678 821454538 747438426 810800216 4272866 94193682 543444124 695618221 606394425 817574500 913175728 962783075 691873993 892307056 250349559 257034334 172475905 439738138 406793893 827310888 770848469 888237056 65530654 183048961 281360313 949128984 638595854 660025987 684429259 996381253 898108427 948036827 719597483 977629734 146866813 717625481 34732689 122354084 516076992 524316075 958045605 970996558 149775428 399454679 551978412 639470015 32603118 346268704 875976957 896495220 915370711 941929606 518621099 568867653 518247976 659817471 185114738 889939140 257314669 800837231 328111641 982048932 754381261 817965238 282534031 514323059 732738692 768225763 780255996 860337041 237781879 840717833 790557880 839105934 280526273 696494988 696932985 753802332 203784529 868991449 679520369 948140834 488186491 897056348 496018855 894436485 903865911 988853291 38994407 453077579 799757756 980388195 27262131 107057295 216990352 822876872 578677745 643011675 421719802 947710379 27865528 402225747 15864895 246428272 550856790 913251849 656282122 691198979 277783595 583765231 953375891 954766923 887064667 916048028 929972808 940290231 708801026 715609181 487236037 513274105 803100242 859551141 142857110 214065349 466536117 799524137 81318155 317389948 94228379 472614680 311382429 814454613 725436021 856007003 906310018 930329888 309559526 485980658 170389720 739787638 479924730 909520938 795213272 825248313 443374541 850852301 412275378 949624260 827433064 934846367 734985952 814932444 611832238 891095395 893729484 913535994 855369756 961809370 158385012 631051966 510953379 586771659 703308567 784239166 239477787 639432712 112399207 375466827 317112526 803298509 72904353 273906099 944462327 996166644 581175281 967682456 847598046 988067887 329176801 874585330 114566449 690870752 125814130 939736396 694961436 893404896 326621735 378268332 339064836 808819498 874423761 941911547 991190079 999754723 772707966 812927974 696609656 842626012 897934879 990834042 901537984 969380645 596282473 759167386 71941890 404637656 583995553 893890526 768263568 915090816 375700759 893632872 624028269 804220593 764134506 979913928 602216952 722562883 381826783 623153318 444853176 659445971 585217004 746688552 804143571 875750742 606086021 705495230 771724354 793248573 296536421 377691976 206541473 707537913 88152311 639327133 362085541 836008780 997293351 997449471 875797653 957351040 65807476 764256784 635920748 898657689 519001207 529992001 370906485 581443067 411497417 714713970 360937478 488880878 118300217 755963747 202591039 286496940 14518633 268611554 596372885 745956753 965552397 995632074 527165615 623153245 366425824 909487718 117026280 121030444 108848383 207909744 969857078 981768903 750656775 818083273 30772564 813518297 333425026 983219630 653076081 676241916 754142372 770032335 34680148 209998271 18613488 627258318 207422294 232599626 617738091 848929983 835653526 939536045 457200475 839194401 349689354 609161191 857540147 956861623 386458831 419997887 979820776 992197585 525704320 559499285 933152190 937630584 334134927 766496044 526118335 699619011 695127917 751927832 670273392 834479087 751841683 902971224 356769778 916049994 956155995 988587416 643346637 901525113 64894760 719391631 682651994 744999351 541511392 681124117 803335415 863998503 598105589 790448689 746718648 791209138 685367757 915724805 651578126 842085470 759787594 769289657 104035663 796545843 953816861 999886519 988544686 989894222 179049960 762082575 365920281 926701940 950185871 965515087 465925747 646904844 361558580 579479467 702032774 901148551 103000349 296877605 964760056 994874738 137114495 742674398 918339820 968436564 854553329 970880091 481261447 705369190 162326963 187603037 869237060 918094253 61705006 317680892 771743314 832152027 145055425 954471623 116731039 332117155 120036752 646988616 594728824 686058018 251373322 429713457 506255843 858314483 817047561 932877769 77264901 164857046 948908416 986616625 279978007 977055331 496916849 990447752 493241753 885146412 584343607 920167618 791040455 801894646 512677341 593946634 302721939 686979677 245550475 689350571 467455602 927719333 58149077 857395935 959109523 963395376 226606736 490651575 381546681 704960258 280942964 975265310 340543835 906981156 774380576 926166480 583363844 711791796 901432806 950974224 306109110 400974069 734899304 846503705 473512139 922708929 339518196 622127313 586753204 978538550 733552978 801111926 900167607 994086204 931039640 932302551 50509793 750712256 148553736 259383951 849876579 853928286 703369152 795154378 339129253 747928682 217987915 329882614 394943119 402443966 981608234 999959368 524605592 973390922 940496799 955470199 757103324 769907952 714482422 992805166 914382654 984078044 253438794 825110445 110778684 239938173 7522873 149615827 325683585 950579447 891342537 918344374 387513271 405374300 420204457 561287548 945312001 980157716 827618011 851838307 799602480 997097071 946729596 977952722 704852809 888107586 332044160 580028184 31092372 812208688 762099030 847152901 563373467 722821622 270495300 455406039 803033097 904683847 994745834 999760020 410148037 837509655 965250766 966044183 998785532 999442101 128483943 830005615 711238439 880350653 755319995 756962814 58013077 825775058 236304713 400055797 735536410 801230347 529174018 774084005 663207387 910627660 86317615 210225464 186284199 621878084 894876897 963540052 604468112 904515812 758876332 838533418 675014057 864855012 628051916 865378454 68395733 309333408 150650955 913971670 508741300 582568395 324400229 719179839 750084298 786935800 329019437 415380407 156110706 255854567 730774729 909293241 652040843 856434117 393612476 619434539 728019541 972944739 810466471 884841415 335952684 457335181 28940535 584336386 318043592 688503366 411911433 542578376 750225113 808213867 709443840 858235617 102501588 763250240 562595952 603892170 725509031 765453463 306149878 658712577 97296609 506651701 52620162 644871267 671196129 862200333 506143943 928628759 839073462 965095198 136474961 872503256 189187916 227680107 560091230 610591191 714401395 771903079 787584421 800320903 817821911 844055510 81682379 608858156 398384756 519811213 431412017 740338480 349478091 692422127 59370380 934949547 173674887 449075044 993416987 997887520 235716527 936372724 564662554 698709413 625600447 971660317 615945360 799708587 903129669 919599338 760309967 964559754 47094437 256523355 434610210 482712776 766194731 904281000 93073063 627837690 641353163 716654749 201700492 924918984 225885812 975185683 334608775 688455795 158131006 770058092 789843267 907436874 451780550 900272457 547991005 740054587 728936602 836157674 303386315 824001017 901943987 967898432 765553422 908351701 164762539 384697454 271840893 842397436 360556335 533639674 143441977 698278631 484532626 751548040 327901922 535515544 704767458 928582589 552655023 565087377 63525204 712305556 790520522 921919608 789872404 940084195 523469888 923685457 9023098 90649265 141997177 665413304 454289493 479073382 83434056 994750885 903988088 908833312 216680992 776821011 586155124 787989775 241114344 283002354 698990221 961581352 469385681 868098562 513875196 642518570 524234816 813126645 576686420 902708194 862946843 966208200 944959941 993573706 78188554 347322752 416821373 836587469 894700810 918070411 762527315 931105314 438344341 718164948 605990844 842429523 114160478 509837053 220169081 224575322 163610502 765995075 517962489 619825542 953254122 997184861 405731432 918436348 697134801 987816685 974417624 997553004 671849202 813358235 14956394 506710655 770336821 849219883 898949802 942170737 368626182 767921635 726848919 884285081 669811303 778798774 84367033 155456644 800318643 951633183 387167093 842041665 958320944 980162363 227790125 476940996 387176300 979203084 137127919 495126237 6420543 151538177 769477559 824052882 522214776 846102266 531473977 604472732 600743218 846312928 819885810 933633348 166931973 461197325 658656185 886983930 779192161 919300193 566287139 860895999 312870216 666274446 383950490 828292913 352256039 983704349 171028540 209690146 286927227 881937943 564022127 570049001 20241574 956050616 852178707 857711577 66571563 302387979 935534135 951070191 83505743 264961521 189688170 808015200 410865826 534814152 209637813 663946447 13425578 583914738 282574833 451443572 832669688 998845060 398048979 832029542 870770469 907826474 187331369 703338694 54516896 743957768 256510853 922129276 985959803 995357242 108351609 427127274 830520868 865056939 14792260 769732180 915351638 988533992 705090118 797051608 860720653 972871279 666770671 905333500 666143843 913045553 250270646 869005358 143566323 837495389 215246440 901491068 653575882 966257590 545904887 786965757 425650254 535543089 217542919 557983693 993356688 999711282 360489950 579723153 693962706 736280184 884241621 899585581 858045238 970165176 207885966 857057304 637135937 749486260 69719407 531840328 517306460 734635570 288184386 554731075 975264335 980307603 539515074 552924460 905985445 936750810 599128232 635517633 45514835 342640716 364774869 515017183 826509718 874433912 530228818 682345213 72629329 881018881 990269103 999925756 708035754 731195339 658160823 814143175 73323953 197538244 132266744 577040610 386024886 453139224 641507805 864443503 86470629 724280467 174199482 877531090 847729580 913100095 917375702 925916483 597940352 638339197 12559376 613991472 642145248 870167552 655130098 873933310 953754849 957460333 482204580 696078688 778974934 879808531 102653160 198447296 89707890 559284874 192418744 436665269 283226593 928985899 990796147 992167739 726650203 764949656 4011115 762642234 544912391 898190604 971417261 989337081 53742072 760537994 440722389 756880813 576487397 776378832 994664548 995915072 401756781 497235482 70185869 660754272 730153422 963686145 206160063 271112738 566273937 697180831 157635944 277839665 843843711 905624788 26578969 773704257 494280748 745952971 288670253 782020949 323377557 386720029 86314746 296711492 158258425 583871504 907878125 927109329 736128323 949179272 542121071 891773399 639609988 936612125 407607981 700965150 995012920 998855048 903470378 928514157 522539348 804385740 241677094 924870070 532607571 598426280 156564309 544538942 3319398 408683779 836420644 997408745 533024101 943917342 900714984 946261023 134816600 174330135 501613183 765881745 27825518 187156543 234766972 265166001 351111368 976196888 410211803 845876415 680501108 913404835 809561338 907513685 938523486 964408086 649968567 793813191 635439120 919931649 785698409 944240751 816761073 921629635 660316860 830248808 143393100 154840597 543372257 990694819 771090285 924992167 757562323 812671517 313777517 314882767 650239622 837082303 731319731 938716922 915458180 956298718 214903758 800723545 243925134 994961588 174047269 195226734 810455474 958878687 671129453 945200772 998231562 999316235 355507674 957145342 908011393 922442528 541884931 720213898 184333806 974430120 266720883 739596971 383638646 644162565 738261827 885438622 74088596 164439965 182603475 268419495 75861553 960729283 548788246 549710244 288723755 439096716 548596600 994166147 521760194 821636355 374663006 731587730 267132172 517386160 230415784 499090678 439345442 465447755 662229479 678645988 554068275 670628121 128604966 540184794 349181627 977994866 129330119 431758747 636283054 866463772 695879808 697649098 71686597 612737306 339316428 422383025 701133081 772205543 773295749 900888311 529673915 696809309 879600892 915684875 622486732 805430667 565744894 678872766 895097060 973593999 592072361 771797892 761570641 801157251 57088510 825603902 550195656 725879353 687852862 749938865 776744470 821013890 473292603 715867348 497918900 961941638 372672447 573233479 468789646 821268336 923464294 986082605 807638936 992545393 633998204 792806290 15768674 723101923 456753219 535837080 32637475 806413998 57129983 327490169 16286590 773426260 782148520 807085687 88868415 409389054 922612026 922988936 659060200 801047923 670891218 688887539 620322697 732050875 494684864 886230409 256921535 762473284 244382609 524804055 166405322 814285272 151514372 977910665 385202032 596620998 379893673 498352944 739493955 984474952 333126263 865176442 316292503 699832020 572525782 916647530 633098314 710377472 79996322 277485342 870720466 939770461 792822309 812709252 428434747 981238787 220236389 566549362 514511682 705924670 212059088 744073364 421923813 631684599 143904861 781616615 140744445 947865017 97572632 653040253 538285765 789545210 773514193 902336465 61506784 545295851 901477967 926725571 894639367 959534931 446814040 832240160 384484906 673458257 902980092 993057996 559909478 835081891 516219540 996163401 562135554 810348125 91073668 775695432 652132916 807353038 38187828 645542201 557730469 743538485 405477735 836463885 645377253 933913344 425527648 635758213 379133957 707116863 871411805 923941078 813523112 824234314 643955004 658133839 1583862 517722064 694841659 928366909 250491163 460207299 386462775 800679036 94828877 449205472 686981907 924813306 311767594 369919063 810754677 937364484 283675794 700826388 25715191 118734302 536848853 756476740 42969606 680628398 331826643 362128683 73485862 436055492 813596264 841071746 834014857 875167945 356501152 999450792 380933240 786662264 555683279 935854813 256818855 578444573 458610571 932596328 493455827 961153043 463664027 867923501 559963843 870639893 129705557 935214508 350633518 904405179 978790343 993397122 676163318 911569142 525200200 752980414 661226617 932375969 790676659 915534864 547798325 667358777 855350802 882457349 330093317 858105247 344934580 540151663 150447421 876241452 396186496 924018224 646736196 913675046 205751595 253873324 513833302 957916116 538764175 829781877 795405034 991376063 566218098 654187109 366985785 521053022 33434980 147225609 365039925 733193117 418299482 695785875 388141018 630400664 306932939 732526265 333988654 419746398 759321788 978600438 961964899 975392789 677504597 786914637 937881539 950199250 201391810 943546306 810486017 991402374 190564253 508883750 607290585 805296236 667711607 951698061 829394345 933547697 17680959 731664474 252588510 894076294 545343452 764581152 366764390 391534766 850314112 943512451 307383642 732075661 936797624 973172913 613812842 678953191 200937495 296226347 889423389 924233139 546873661 890987412 250110308 467218950 57077595 803241801 824960572 956899890 439530070 775598398 770639597 880706984 152745667 882929319 745805220 998432917 21012241 787135439 495004525 868041131 910304853 978189258 434304433 868304901 23485928 846001040 346559387 361579513 313189538 433531726 551739544 554150880 380475816 920819630 949894006 974499184 308494136 483021513 601346407 769697682 511685770 605377097 63129908 686621024 410651938 755566241 796162996 920237265 556320210 981130428 773376174 829470385 931808388 950948623 519152874 879149995 608525903 631271109 444310939 784053812 722691973 892990376 470921799 807260498 546562545 874393974 68905133 436426626 14652278 701034491 921094238 960225185 542823454 670878419 619159932 719694278 147767986 176879113 659829320 837358795 802695486 913863902 652396507 716220708 334975961 672453939 759388693 926876798 411585432 534092600 201121316 791073919 790815629 917038371 757412873 958183091 836378943 909042832 651401617 882410273 115898461 312176032 203993654 528651302 13943401 960043254 155090319 845360700 541835673 731259553 12595406 866096120 383472029 957814140 452934858 477001612 329749959 559227744 835929250 859347841 133173602 623676079 987720629 993808548 431616168 650183699 216994112 232542405 611396929 853547964 650140932 957366354 297787408 526069438 901047372 970279556 524396594 631224678 996490047 998280914 293317377 555587336 625093680 666036436 660966832 856064085 462762793 926006833 80133247 831852604 925308435 968885570 7939999 433532245 446592085 787553488 103752857 499457875 608100897 685080845 42942019 236913294 595986506 739847729 815859791 966421895 329785369 956923608 848580168 864194516 176804741 762254906 150954698 208325608 606095217 902229547 132765354 757344264 47787840 318220224 479640927 743441564 274052177 867316935 656022762 764097891 332930224 909292897 576886458 847902494 806608161 886685592 40089919 922705414 297505901 425219461 443746455 706389487 440897909 455216304 871500150 997929817 375993350 551607933 239501732 901369833 908629769 963491318 690079074 705778428 357144577 751663486 957161519 987973293 942505771 992861998 769659402 790057815 961584222 995196333 237924714 588928629 604899523 984972111 45121352 789528724 50385280 623609803 223941548 435633262 793048008 857540686 625204785 903992924 47873190 609742124 331166149 983733445 356050145 997803446 342159682 521118077 663177200 823392423 390245534 688393819 415783695 650002499 878874250 932354941 721360699 913041657 842666039 933650578 618958676 972971909 912851194 931213043 569652456 772487095 876358242 947404137 262498605 775151533 323908251 370260780 908483703 984537480 630209499 961707807 795245084 968823691 847231539 980796210 390809214 976265901 627838908 716027488 841945141 958497263 70754389 223544025 794156500 878918193 210141861 474981532 110747471 855149206 809352531 914741380 320241955 799625807 110343935 214423739 268700193 964558304 168354923 861903663 428046857 921993001 747854163 990592401 50306497 257083179 438531764 990461106 482154046 568986213 218391884 380688333 147568882 795410836 108413450 114237150 190525766 337263511 648657413 859271368 968470907 991144311 636531277 924931538 2554450 992947346 718951169 864175936 447713506 494721846 208626066 669157492 822089600 823476459 311270117 406904171 14139638 945595349 618464323 711455541 136734434 370580583 221490645 414963551 837771671 957827506 347447693 878579836 837417873 858418881 537285314 683152416 822747534 852040586 181874584 606799147 464198867 467990090 523248297 572631682 511178243 884457049 572704186 587007236 321759431 585897375 927453243 948734768 85117746 913626285 687010470 724221774 376991738 675302938 952853748 997542142 415401276 767268161 764636277 806352011 582321064 583868859 499812777 523961736 817235551 988375620 606868554 826245887 553105212 710690869 223405902 281550796 89498146 906648656 136096868 171916355 461309688 602197641 582156396 880004101 65996263 103503678 935506313 958470005 876846554 891972147 690006176 812716077 968610688 988382522 894404673 990843104 799738450 801114848 318345948 913257901 736825498 837892788 990621091 997796567 294648545 768825815 232532291 236075584 636333255 715609952 946025677 964244742 641857323 739549603 51407934 379357168 227131353 582527592 497225963 694471003 219414594 623053729 798437876 856932637 317748597 509796988 382602120 787423202 59967934 266292773 814519803 909061146 575971325 895461492 987933723 999235348 469939541 471578401 407974150 723672678 426678003 772383322 225570740 880080600 962680286 990739120 809357247 990907251 218089570 640702711 708024575 716622940 165977796 951615263 221304842 972192535 572240444 702488160 264778399 504529131 458500482 580951763 631139129 853658220 861540590 877095490 270642173 702001439 158288475 193204863 22512981 29700075 883860956 953632950 914747644 947337311 255266691 539987626 841896695 875960155 190010063 985102032 670181638 786119170 269498844 634884899 383466242 734945963 972825334 993122344 217053133 896248320 278205779 895488352 372260672 421149636 195829604 582433745 759648203 879583163 282472109 710930433 942579055 960890914 638130155 896978634 88378517 797468888 310281145 723959553 662847667 698346705 635969619 666876459 174860488 451912633 766378469 792149993 227643922 409898798 81026965 114114948 353917749 988969386 843798050 941074296 570209896 703617778 286493461 892439443 596150396 691501627 904897760 975143855 935888646 996784639 860731185 948927104 380320225 715873071 300412638 738949439 402534339 521649615 196950193 399309093 930082905 974691134 802807903 859156422 275419620 817048393 992142279 993608351 231085299 577087175 426492302 613526043 597869653 783727851 658621020 955409082 781088044 837587845 341037264 933026100 254147702 831330639 869122491 947332218 119249847 720447530 83424029 888061981 737844485 942315974 129457063 877384183 49799342 913933092 70053418 542439512 682012123 925434887 508317088 554219180 10596550 389850401 806913666 907988863 652928882 687908708 413168393 566092050 308312879 351344547 906215079 962961959 327094011 627758750 505644772 969971349 677639719 692209634 936841546 979346675 905001618 928199782 311820961 817302666 236941020 469782337 746029110 999449938 302768898 505806061 186809072 678460432 749424005 789357460 385907936 946566898 447623037 999438124 135380773 313286047 652769730 672929462 247380477 471764249 102522736 679358137 896633338 992678279 700107875 901491650 441588903 770077322 920642103 928239687 904435649 928026780 72069847 239582288 138501482 446177907 180019773 941709973 681500813 925835446 355356124 839520501 557733802 565707948 619922779 829104360 938933294 950007433 473656317 940306870 987993748 996640437 466074203 575622542 933013543 961937970 9833731 234138690 434482177 881624865 901114927 906454868 25862116 949807138 683969686 931020378 317512651 479273561 625049615 946837248 111121980 196755919 80061398 511318363 61526052 163859220 83817395 350766849 760157132 939122517 751767611 960757002 710326522 813704065 145840292 191869297 147154854 315745265 446316666 635185080 545613272 576197379 33868920 209415335 577846333 767265574 340840251 927151826 769324286 956125565 108245684 613640559 456116809 644215990 845773459 943022969 717851070 997373754 275014067 436409717 255461514 898505435 417774121 735383833 722371303 990232669 898666166 907420726 328019525 909253850 944102898 988301625 74169711 590655017 492053764 720380654 835147062 984023102 927970491 947298890 444808706 928160906 446978827 743834627 93840311 595477485 577971940 713226939 30808869 573446614 908941729 936979330 234854569 451901024 669190216 755958703 979581039 988109347 5157468 200847067 110945554 286147527 584588787 992466790 422239889 522964558 58327258 437137800 156460167 490071617 627355285 862635793 873482377 880241599 318089207 696851484 804642844 886637740 290135739 519203662 646408068 739140167 841731661 867663878 859093900 999311575 777862862 826654201 843592019 918903426 75270536 872202091 356549276 486102652 94834626 516212389 646368506 981241212 675200602 978148605 639360325 720893700 380949270 662858275 130281713 195777315 199109548 543009518 179292633 830051150 473698667 590514658 603566953 942276466 891613417 921409903 82141182 795481610 177842678 380809262 896475708 973008239 770831321 863026780 434367273 477905960 552193979 731736177 746617876 964261321 367322825 729838481 827070508 893535407 80502994 209958796 464602838 812192121 214441733 288811928 989821223 997836081 722580544 819445637 793247382 868671513 331197099 580042177 749990783 822583503 983988665 995419469 486476098 844147743 445087070 623138325 156311524 986831176 638269467 970099757 808232564 973524447 605925405 865125368 429645615 457623398 687021991 916169058 100533251 681001901 824837225 868784037 300638508 975000394 870530493 881571625 637826464 793593295 183008665 367356254 847256765 942057058 937792614 992710435 223344659 966854216 889426248 966895817 898047402 968905458 265018416 935928601 355586654 974294694 719022271 831888963 547545095 965834973 301749944 908734902 545388044 979451815 732757704 936382854 403367336 970551680 112119134 173369780 644950232 663111542 597692894 710574160 384518848 847449444 453166419 948438958 531485030 714404015 671775950 861618303 701164620 914692147 478872615 517415143 905411776 950669646 308689205 449181298 658298354 746126946 367142660 932942262 901287795 946198522 235025194 600136362 306125335 879199839 588795930 715340903 554927232 567327718 352559128 775880811 944728808 948753870 92962192 107936751 653760574 872548559 333028477 520098166 442466269 870884112 116040028 188853877 300237554 515999945 835877961 862413959 171966546 765429639 718435477 734652559 240073458 922653745 453088779 590925128 898565815 929746509 608465757 788620148 528449423 978673851 64014266 304567102 410585196 731701155 171312536 894702999 160185228 797263203 906058329 920944374 640856082 692782424 537416431 724036463 600493577 734185170 752125467 931874297 299966927 885309445 675120676 707343527 261622206 459067727 83003692 857007669 824773606 927582826 526999096 836140133 456746710 814098760 154114959 742244638 823374160 964399637 425555145 776959410 122850819 198130531 566705262 776994000 864710454 889518168 280862008 905322737 283002900 877060443 75839833 782720074 189140639 481798695 597707350 758993129 288768470 844234303 751677161 793237410 381249303 629656317 49363389 537601409 577294242 856521888 408703090 654242778 267165000 496343070 103163989 385559804 597281713 624062556 513656484 658868899 721884715 824290513 33790632 171502897 138646389 750766461 263184503 582468400 415113536 570282821 405669780 867399343 218580599 969241984 526749125 679130433 967148306 986754816 89473808 526142168 948672817 962800462 743986852 901270401 142381851 565193249 296824402 593950896 279073907 292372756 795981014 831567385 488571925 720914059 999236132 999743872 790094616 872720544 929153020 976451123 569210563 991261286 398417645 746687385 516457526 553037616 593922025 757932494 212821143 663694233 989085905 993641320 528019672 774223134 208327855 865659553 493961789 865745859 736935705 795468939 608264658 830653217 666659093 895237169 200675215 464141933 229021004 473638156 290055992 837850408 203184112 784743286 641619625 770619856 449259299 633585693 630433792 995551551 589045130 746882043 790400329 815554768 844998332 878241490 445164198 616132608 28697510 387125687 275502747 339147071 274343214 967170697 422298664 678910618 435139853 611162222 339964229 511903314 625528912 734001193 325111166 773546384 528770416 687968916 808350624 821340401 971231788 975710861 891549810 966915170 349582973 442833480 174133221 497431223 520631132 915235914 777756088 800797971 102584800 941048561 968426209 980250545 118614493 158223931 195535023 670675360 577387261 873224514 361285571 405624649 881263048 918011690 578215430 633763096 828566728 833886028 667728783 738160278 97488486 980634568 921292776 997143694 420682512 980277817 232936032 339723393 79599643 395751175 209344664 591932183 79146076 828137419 957587493 992085898 524973029 863768420 589833050 893672528 229899069 806298544 667537547 823990162 515961662 564674758 631751628 784571284 493348357 724540514 466988648 815347515 732895438 958812997 17552510 271733560 717762099 997846987 935465821 964087528 674124478 847098784 260518994 876543229 38256598 129154855 661640657 954745230 202983350 619027506 228705255 826471674 525355419 852420763 264410696 331357659 35189905 572228885 135149079 390474626 814189673 999286803 593248230 890349041 985738391 996705956 583981579 926173327 471201615 653808649 915870550 949539135 442797712 702715802 248245741 262285065 435775408 911382805 137716370 242370685 350345528 858949418 928025179 984014880 579317518 648078600 973652061 998008513 142060449 598938411 133999633 403376568 175101188 531630044 75221712 435347133 190194367 862912211 575698226 862390707 900332154 990017095 43522055 668609848 383341627 789048299 240290356 296101831 125190908 500415232 393754728 902992651 850574172 981793907 535910709 697836302 662339319 879274088 915694622 946802316 156969942 672652588 924218625 994920944 571346719 930224019 261368403 933604269 779418978 983387301 778329254 880149837 675177876 987047025 992653485 993946681 420000404 589856549 431629765 571062052 315148868 752855711 189602810 310411139 41525958 688970162 504497119 740344861 197983492 734752266 401319871 790969904 754034618 778322009 430395630 707934999 75814447 152671213 872351808 889956852 525415678 859842891 428038743 944659121 21801471 218718715 538580351 833848642 396898498 487255479 134596169 197055881 290248624 721078255 263838806 696630158 399599497 498172674 869758623 940414001 565786914 660484010 964449027 998166563 957191698 961254136 594107822 963798027 732323036 954006244 311095361 841303533 532432033 534559340 931332676 964281890 789860370 945684998 271180577 905174580 40321895 311827660 745637688 934653597 228874490 287141301 771827743 911303061 636480096 977064970 503837320 719648911 438435179 505967442 923249930 998953991 60827614 584585394 767921519 770572389 715335974 973767423 902157199 931381391 149069186 836790560 604379673 717267947 471242337 505032030 224644335 341271630 949805698 965979965 676363111 677083701 395182780 934687920 412622024 545786035 616549760 676664942 347776910 601866078 808193397 850489748 63645954 400198852 413916422 767413096 938625803 948835241 302485388 543932307 81860770 958358305 668854117 861832079 201435687 965843858 811359684 827374746 112119290 543067685 392244521 774142672 571993231 632964748 587490839 738734090 918928084 977239917 715342243 789926974 333699205 340450163 999949512 999968065 729533981 752711720 308439529 388468774 594895105 970781458 980724066 991153335 672802288 720571000 215813586 972854657 829548985 980578361 634647396 672249057 155296390 387317146 489043171 926918991 227018523 455727417 408321319 835908422 603974828 783680539 79670626 696670584 422242922 891945422 428057743 572369186 34336611 616809189 508971243 906693989 959578504 987605254 35370209 653784265 979049128 979901030 705221438 981706324 962260698 998734278 434093412 820756887 772883653 907724196 585924759 854421165 288865624 445764456 173493154 394448486 745049465 826810741 643496636 966702298 482805581 640905369 840273539 881040026 785221642 993654916 128619235 548305436 192029430 916901150 590347989 746267951 136846664 922611848 456166282 625974885 405577099 431335750 804103697 999336743 510084994 519642105 991157656 994382717 660603230 764430862 56638646 360446189 759598482 852618035 871491932 886264492 384813888 921562905 104203020 517726420 907182499 971602266 908942109 924475417 504327658 638919441 623611023 882920093 278669450 978761310 826665888 931187048 176835601 599663599 995382408 998432637 397081925 449857331 387320237 613060878 410098859 578146645 559850388 663107529 990289000 995819100 979831620 997194225 996173544 999490765 849965111 962978716 698193734 780280279 274467296 314769633 428970101 545409347 185484488 272480803 269039056 316696602 502981288 957104992 847575945 887991596 670451872 739600629 257630397 653021936 145304788 750216255 529644811 537166292 422683247 994789530 495048417 806240015 4248485 997614064 691482902 714486044 591485799 643051217 183739283 337124406 920985189 944103924 898040509 910944442 764268189 993778475 609674873 828616003 446687185 769783838 487176760 893808576 700656049 895329982 649269842 654579910 534128596 564558470 90432362 595196194 708498278 820915217 442365837 842201176 342758432 734137695 906773218 965428731 810570089 851581629 292002977 915476519 503145793 794261706 327861283 498886740 731393302 796378464 379988870 530110202 553169398 761998708 326436729 976204268 224456381 992447728 352599004 732281640 20478249 810940791 61567653 506640557 127680133 649441283 954024480 978818524 582705172 936350112 971478684 989779235 970621848 996318592 551132148 780637784 140189897 388266843 737899470 930690968 444337220 853109184 905297322 921291090 265235872 673908819 419015164 789621123 593211236 969780458 986777587 999058378 102007401 421048477 628006390 979405476 433517472 840720850 864267868 948746396 99452745 894229334 301493092 613699671 715270615 764046553 894018573 995246559 155887064 860607987 600872196 695257377 469053066 620179052 404523594 623687536 273570845 588953570 861552732 959137812 996173879 996289984 888314047 956031998 228402263 994201564 419118445 790081922 233359091 344764967 400884749 862868423 32950934 571520563 378259883 392691227 236983524 712191514 391775053 948304770 688561291 698722099 22109345 68099919 526939764 866491092 337642825 737666944 931912020 953604696 200562255 908025812 666430190 754254360 534943320 931255787 857411448 942916780 877073791 979175016 566924317 941767209 272711087 894262020 48039651 782587611 264974347 604147600 696999566 895251605 799147858 840396003 653381333 696227927 900786832 948323133 492045878 930313437 619335234 760029468 858469883 888482332 513703337 893637690 6756044 165425105 712206172 731870370 774837300 843445050 393892789 859299416 785990655 792729957 582402698 713885490 327395077 382055039 283250277 563480621 902011250 982977937 993496416 998214307 694249056 972315628 970640723 971280480 8610056 590195228 676176102 930069386 11873042 582916508 819814036 999634988 21886911 430094437 893496016 924337201 985952742 986671769 67793590 762801449 536674038 719976162 853771978 983421451 912417338 939805323 791865520 967098940 843900935 933741254 333573224 412581708 750489433 890279548 541980197 698776306 853015282 877830462 234607368 367031224 260937718 427471918 622540604 909633308 711607970 952987650 732434752 979582991 139646948 638474880 130071439 637785892 490544026 975103237 604158139 844411720 514872403 540720641 150082183 378527318 678075068 708533452 740828423 791001708 305051397 633192256 273547306 574215700 988001729 993032143 327761251 603031444 426797114 638834569 886945518 961018986 536614661 627176037 635890066 654841565 967552791 974166061 943105432 980300275 249747784 740283759 970732601 973408161 504817002 910870009 762076729 862223739 925027589 975577138 510278882 856557610 630138200 889111042 123142608 250219796 904836 292577868 340131309 455890980 547598646 671552778 494732237 810994322 340998225 476096716 999748820 999779716 200682047 402762044 685757466 851491733 161016724 462744481 254486552 402243478 698148787 850755607 765205410 969201780 326115417 524232688 703518803 942554644 692049019 860769135 806013934 988552613 404180647 658403793 126121667 966654247 611174218 886306387 594776350 851336608 933923824 996377084 951253584 979749061 568868624 775637246 247682441 293883333 663162692 989839239 719191066 720004930 146431557 250692731 765756282 952693013 502999953 981951130 901494623 974391410 381970537 444808003 610338249 719376382 787789109 821838031 64710795 262357111 196685061 839379821 557332454 576576312 323750122 995488696 696526611 920925792 340326451 425420767 546006141 584512302 587531401 712848028 255843722 980708591 631617875 936601292 842030820 878271380 945285200 993030317 152447724 683040204 331036305 720616352 237987293 729817931 117270378 235645137 804740572 980775183 584248424 721890564 195103750 675409559 719783646 742739990 682382648 705046037 482312883 497446933 975544183 990734146 155026094 871465085 954220683 971376460 273956829 378579813 504900895 980877058 398804841 788231692 767125011 812173015 128453741 411844783 7153125 917062665 40843583 578718158 901804811 941747753 847813337 985333915 92553867 380347537 728921607 923437278 604640235 737502037 127028746 877602022 994007821 997450577 513614199 889351463 926663345 955012377 504501628 549119624 441954223 628023327 726566198 873031463 204396064 382628195 849658878 872250175 63626538 921403300 787159212 979638378 638507760 825259313 862356852 984192703 357564550 702161128 416206132 635479650 41344555 345371673 112741174 628783880 222813162 474649822 556962310 686028128 195741925 295794538 885589914 985332778 65812139 705834878 962482685 997202236 379504990 518276301 669925796 704170481 169952518 176715789 468325454 878651092 190398288 518918997 673247351 847992748 183960972 298547690 804579087 954252247 752449136 792570359 24043956 428555487 214803442 981886947 430340588 655722546 911426119 960262379 755005271 892050624 501377655 895861865 843007858 844103222 72278665 485766566 898565232 901383601 156436481 248197979 694571020 750855295 798096091 871926978 358610160 416051062 789683919 915767986 388095092 577968927 509361499 518896283 407039720 992430967 103623157 138474408 645776579 976514284 180753129 821717850 798687517 899560795 956864713 984720172 963036170 991047598 572174817 588017405 543709845 761452868 43148610 622553627 481919036 752948653 921657772 961574013 472336925 517961950 114379376 473994969 405323670 638333840 500206451 614286105 827900119 954878264 466163258 676704496 25819320 534444944 918787325 990529091 533447502 922122337 952667882 981558432 810059568 869031666 173919731 432093693 446689292 546152035 114493939 152922383 301786655 968936456 652699061 902473239 228621444 610047781 861075287 966290030 928789644 935556358 131415733 527395520 276169127 590382913 321831000 619007727 435603692 568021772 344901106 425222990 968090715 988769366 702529028 774031685 658097840 851780001 483100802 849218434 415542074 747771829 336081210 412529643 588025326 910973276 961207340 972976503 351687780 669306556 932505107 976906063 148883327 925870978 898794915 934438957 297916271 701445683 429031786 797728865 202918624 990838040 54062560 537083975 753289169 907558379 550540932 561178152 777248026 898378138 455064080 992260735 361503042 539454548 120399938 721976809 164708829 960152529 932693411 976967982 597980917 610139426 479701254 551773927 10108456 976026041 648127630 782619649 45899779 364003736 511408475 817460616 476772024 562182736 972844528 994532700 239982153 371231801 903168395 963671441 871296744 889702510 469587330 783112168 424316930 858771218 838739770 873562154 566773595 581738711 875326458 942011463 651128524 840776350 853887631 971932255 163028561 731958686 544914828 647498416 193252405 586103351 694214608 980576074 705257870 734482845 218625191 975182072 154790499 364805626 715346286 806036573 743610825 794860488 923557463 983570853 938575640 954492029 749266787 750701297 52298745 270831440 214723631 431198255 819017361 945689196 983008388 998855543 28621100 729637773 300600323 683927463 355851045 625783360 432187168 778930662 701646852 994632104 699926969 914696594 807519345 839102935 946378329 992018907 552055152 977068532 818438689 847307198 381653368 727157211 91820617 631179391 67341515 281690263 852960102 869120503 145145924 833421462 428904290 468093245 463740422 913773332 425032450 504447983 857245052 871059243 191106608 225941797 401778633 865871880 364470226 762618878 66078402 184105870 448073777 880284167 691418653 726899926 681614032 838425326 231719165 781462457 322210888 758945330 127806074 833177181 381681718 453725601 996732082 999339479 493804098 724826750 587238421 738335839 819338270 846698239 854156337 920668862 498480835 796876347 208463444 222557645 980782183 987736744 418421988 845501448 148887923 870582831 126996872 990642211 326215485 531890356 437695994 633426435 928218313 972071120 836312150 978939313 895548354 896995084 485934839 996038825 215882521 843823515 988195313 998773085 341793317 493747261 501609543 617677218 41818883 896937291 776704169 969268284 457905009 673611018 868313775 930666057 562165760 864679579 190537587 377206523 464145613 764799271 193270489 348044793 720106242 956050987 678230583 744007358 383537533 928029849 888131841 970679525 684857464 973683058 437700602 951255256 289321500 486468500 245774112 299739169 672486778 745253378 121242539 614970627 566208782 922229363 418642077 944550162 80653788 368964764 370912924 710723337 695955901 962631005 63313004 500022446 750896967 936813493 95190993 492287103 362462739 628744918 376234015 716920292 868777327 977932286 321364061 343794550 890320266 950031436 872407747 896229779 618762432 697826967 65610616 522148810 240527698 674450220 291552611 985556978 306790445 707501905 924916739 988883977 218988581 346189965 115913447 445811250 795793194 833254650 540059480 639894465 131024594 666581930 363120216 633973266 167474871 560730936 739773460 850103433 60454860 303270084 478316132 875485922 27456191 813978369 861422120 889616398 108368731 237043671 976748931 990920154 544629415 855528612 651920033 856122805 136913211 487562459 162410157 248544268 978895320 991195340 707631284 914510748 539285136 934524181 832936626 953732721 454573377 662097756 387794646 645849197 371167796 694120115 574156326 889083754 858769870 919295514 427757343 591599028 635362457 849838404 300493730 817313172 211097694 548157138 577962709 832787283 899612322 960226443 351439712 844536349 477343254 780600469 446907972 896023480 629631361 643316518 601945842 839517482 113269689 228455021 259397518 951219195 811344208 950627113 926140409 971967388 186130584 695192046 280293823 662113538 842749214 890834246 911308332 926885901 458849569 977570258 403424858 919774598 33363892 900601000 200125395 368586013 264561259 289496645 678286945 835982476 670827238 909057769 108718460 483383486 423322165 669208756 780380809 808269035 600304713 628020842 860147205 941431121 127356612 681757519 601901415 885855084 750058777 943880035 311568091 820114987 821474705 926900678 871119707 938441025 144060972 723258568 433041056 613174619 823785071 988934362 371339789 849674065 314962354 315802531 234539548 354767849 260874950 685289510 429171060 786494872 498904341 880419045 191461376 264117232 66051005 946935184 394421589 805330666 259571043 341999038 802629239 914300069 713823423 825922666 812752409 908478786 393706748 929891481 584694604 880977442 188522502 358544082 352614378 886246100 721134576 737835116 340307804 775919011 49144433 136681675 269042824 532774237 72421092 585905615 686029439 935424774 801917160 986845341 937683426 982267008 571337036 881276291 547140037 845429279 445831723 621146060 490407854 911608148 474719942 588595663 649934270 871041911 658016735 926688085 873295307 990602937 145531933 481830678 593009795 824914886 657634494 892940546 43401294 550971888 928824001 949927130 839952716 871207209 807445331 830077256 691485830 956240008 585799377 790810648 565757612 826238218 694977645 934952626 316740888 517148810 87715705 725282905 173805325 174516658 142974162 483638419 890413901 908181407 190514760 661450908 475458207 973326176 80617326 962241167 380792772 547326790 145353523 591565955 840469113 954787352 535396486 624731744 468148697 503010407 945408626 962526281 855763215 861464659 529851328 702793236 624537508 625486725 219323885 917472832 161638998 966333161 598989116 697885315 7505742 991943807 5259967 976298121 307527517 992616233 662145775 701517871 900637701 986970297 17488562 989210712 563583140 834482488 214352848 482994641 823903215 886134115 664485381 897736034 603351160 977617181 621759723 787811504 944784892 960764094 980163723 982812085 117936232 649024922 28395756 139593329 954323420 991329112 15526910 728535502 885989626 890463220 207753602 258669187 919648653 949166095 385727464 536172810 247348522 509776093 172854721 618313140 116559412 197536326 358399538 914867626 501457000 906089539 267934989 748178205 724371197 830718642 581277944 984865089 667891117 768326200 277706109 696969907 40844928 198111117 121539286 997201510 919013467 973198957 916479862 973398413 591672460 992556706 317909638 517965744 935281571 979598228 339467348 982297852 584392793 768915116 381666978 865941914 7227514 908359266 231536723 375262781 384662825 833194264 257316804 549729868 37439956 59899877 14381893 569876507 113215942 331513664 253400334 928729550 975170149 998697977 307050910 727172161 919171786 963129534 556693001 898901272 758984229 973469457 722289132 975788925 208578241 800389381 150944804 926034386 586777727 840804030 252232317 819328166 362448614 615916615 121818185 510838816 964690288 988305072 516888685 790327495 20075345 58116870 38189922 810184245 123928331 226724087 97932239 123068601 333548772 444873935 420534875 927023059 149468997 782071717 391464689 814262082 137588859 452821872 488808536 858025187 285537798 406539054 478368755 804902410 933258422 963497939 5461742 879902186 994642964 994691608 430830949 738965986 481936158 779919444 822540622 936369341 782554387 801616648 126103676 795385240 801131086 872854464 977680067 981360847 143685775 979388478 593103061 906742339 94029630 502079521 64601125 869724814 304884838 585593884 462820757 585942578 42158303 853628283 874471073 936455614 419974758 639531390 103990265 687261462 49137368 145944616 382235830 871177918 334610029 827552543 713948991 848465780 660356144 757588591 168035425 929042297 668046622 919014378 766835156 985189492 258562819 974473333 742928654 928018689 642545256 652232435 170707109 586433139 742862060 938035294 431406976 879528464 793105443 811857255 210948038 351336243 831202957 882160576 16380326 400648642 250340463 435133727 28208992 379129013 314764991 548674591 771291347 889577246 694441808 748535634 932034284 996575122 737543331 983219196 694804016 733450024 312654960 884854449 107822260 248910271 552603223 726996286 956647136 963719124 258226521 415843062 940950387 943419001 34429107 903975795 936364980 994032196 640809621 708374616 551159111 744762760 11080600 206324857 944499831 945952129 426997765 783919951 140279394 533856446 404033534 453469820 770738287 808637991 217186453 436250504 456829840 674242288 156737914 484653810 850575934 880326566 738039811 767690470 250554599 838452284 795682714 923980679 161743074 365014362 301324043 521414620 34402617 514113100 357168956 502256839 602212351 866754642 819557188 895411713 548272143 627105017 992387664 994217873 45921212 765861696 770403406 985891804 603271446 742391034 510929327 576900807 730702931 842415299 845640312 936179743 115769452 296687808 80011419 741284719 694965214 995324946 476905923 644886800 433160357 552799238 876367713 922812057 601475418 621108590 696747019 700727896 269404799 647943976 470702947 565472241 538937069 612005177 356152895 905479197 727813067 883190563 216387169 858317058 806472155 861654855 567182913 846491659 217976491 953470312 946846191 960719212 288807755 491920925 796554628 862476543 861517763 992017419 378793190 859905996 342968896 408617256 953083909 962807558 496439695 921225438 90096782 877759263 255537330 500297228 498261566 997323816 365276720 878609765 680488923 848478427 567155007 598345424 418305433 429452495 531307135 776598810 256705418 273141199 112693595 880878040 411260051 807143147 416485269 999409356 71582132 774346876 856197294 890749689 138465701 590399365 332997764 667799537 670649773 881984985 343238344 405867356 813979971 849709930 528448211 854752123 971973479 978334224 816427942 871676572 69946953 545497021 234737285 678564033 83635578 407740493 493994729 500188746 783891173 888196142 362627957 776952346 114384026 846552294 410895631 802956197 848223255 944487293 714038865 848581539 334682871 385372795 958797983 975092331 234032188 803303033 160762051 573203118 911148044 962107032 802843717 903202466 989239069 993701524 112413819 810371880 457841877 543265333 622038119 708796722 137221713 753350993 192053229 376152986 14649657 580657027 841428957 846457807 415241294 929798990 68146694 894735513 692304502 852418191 751290749 770063412 938432972 940197021 573040843 632327001 238474222 492450336 68919082 459879176 388719667 693308538 635236607 880873206 572997998 753560117 475957263 959328290 847382507 928074054 190800372 521570331 310500592 787405492 897027566 963180721 411271867 696781075 786024709 972320848 573422681 682989345 415805197 994784992 693249377 967906737 842078836 981754828 760573470 815717499 721992123 986512736 701144135 759732336 564525500 934656715 25370073 733335296 585039360 878849306 443323542 680116201 64349537 609733864 528478747 871858480 927624034 948022898 19834180 273707478 933129352 950960266 392984785 605825229 383629801 805591316 334838617 842342350 267179792 912136484 296820550 924366272 498072628 854374521 985041220 986927282 691672119 829855851 245855021 657416355 604858330 986532899 851420509 885487755 903633158 972920812 769780543 784626058 710730135 894993886 808831712 869799819 48946103 439895177 15141396 766188519 90799504 751549125 706930111 750153039 120727207 508166379 715646877 989023263 391837312 663924175 378583011 443092436 436000540 712734317 537105038 971863516 132421626 989813407 592515623 647347785 35921070 293455955 955479945 979104046 271517879 454712110 267368302 530676491 689433270 860619462 379970003 506769732 828712070 906393328 733913181 843594498 535788885 709597622 617706641 807659024 270870936 610915516 355486968 718378850 468288083 838007297 440581873 458986451 941849707 978984503 200989431 756953750 591465438 972680656 978056824 992812966 452482675 896146197 356735768 466871474 336825953 702482005 144058421 537842439 262415149 948711233 133055499 834311207 397346011 727468609 874020419 913845496 708334994 773587746 64733437 889782338 686012915 827057575 699004881 725561271 675759182 830843817 304537850 818818365 938937321 998308832 803870489 972442665 538924864 814456597 244349650 523265865 114936423 469718098 105425579 497397266 379729351 839119132 506733645 789085503 600666519 900612282 281443070 801633236 102302392 529066802 563508847 636931912 582318131 592681030 999534419 999988381 575801984 687252428 948312517 960311385 851297669 878550380 180141475 752903798 505724897 634001793 218694408 863331703 499344362 594180184 25706246 738695344 409311978 409838554 998717384 999416094 903384201 960557349 901386493 963910654 463653565 711543966 52630025 526222343 334562297 949157507 421399158 934167758 468737514 705572248 996308107 996785762 101742859 200913848 435745371 503863816 99970991 577304408 290183786 298904081 610665085 914379625 804448396 958466578 422008765 433194130 45860885 86871888 916777114 995153704 722890109 908276565 646952256 850415748 771855767 981268214 315885805 704347597 488795374 921118094 945368837 990703128 937950513 953411462 963092816 998572349 859156542 937156339 549528537 917168267 586296698 947443477 797662560 986132145 911061960 928002399 172427419 288676993 346876374 960062845 374093832 699278588 517718071 694946235 249829396 447756682 697940360 938727470 332140295 933852909 20610419 198319507 608611054 850899663 984550214 992212669 177707254 776352808 991468302 999754814 838344458 948370462 391247774 422497154 864060398 941663613 709379435 749527849 589089853 682358074 388748431 634773134 477556693 530653917 525341735 732019310 513368009 676045722 636071123 915679960 66607500 277470909 758678149 877655447 334951193 998375109 782832487 801800050 583575344 714583565 86410512 902913600 850815237 871384927 419398160 604452043 560462550 665445232 105072536 557584763 610053354 758713385 402691896 803233968 988921400 995527722 723016310 796678188 295213142 988437604 453036798 832235455 235114945 960924631 994150611 995558884 904600079 993603522 177647550 622721694 551233419 615250023 781267115 830984763 85731976 656907353 859590594 915499745 598093760 647059539 39604483 526388379 463860046 575867232 279302833 477636140 746842045 929145569 280023862 849451156 740942231 853526488 972047676 981095412 482994230 707565020 456832265 556848292 952419618 986274087 881777030 993272934 530889070 713136379 281706531 975674807 806298032 820244475 753399643 893247604 191984881 526054737 782782435 826591623 128589337 230164703 856654371 983581424 133273515 788660910 368772120 497854016 294707959 746873811 553667408 934896797 356933853 947606259 233701828 998073712 616890717 817500999 911460997 944684681 144595669 315729931 816482525 984468510 31511588 781281629 540286377 988422812 485181276 647068759 297948191 511281428 407870682 433409486 233456506 392925871 59387499 543160527 420371800 658161645 796148939 892361287 181973659 183255657 128576217 327806216 33383686 716643600 724341945 914822955 809041617 900120100 370059678 737015423 182467820 606739456 86497920 384782792 638808733 895802287 409160550 618613200 689686779 771744922 127072577 424602196 634499747 972562156 227884935 737952244 980553409 994326761 179339710 655913451 341681774 814804180 691312699 824440133 570480115 836324884 258937569 603083384 412554781 694407757 747313669 764385732 457336995 972015683 512165352 884762837 801483570 878064895 283545343 657211096 627770188 819873146 683157003 822646614 410354874 958814324 690453568 894376081 853883084 985457157 798990934 921098468 148576706 525509331 734355854 989936976 575403486 976299622 974276634 987496664 680062483 770153873 364404808 773741838 621387247 929249207 351316854 935218729 33697460 666120271 283934551 625645264 447057119 666311000 626115405 903579560 566275745 571320178 72160111 308097986 214874671 707207966 193484516 364515618 558992894 878679914 536086627 640712740 811366059 888070565 566160268 920296107 730607979 950884307 122786405 435395411 471066077 745733591 277871011 338195831 368905930 710046396 816591266 890562595 320647434 532231936 419099490 501982951 583656615 717821144 848394067 852604813 503248428 539630590 35175303 661242625 332646574 977866508 524428029 591825613 623994477 982384689 66664983 192558030 872966716 908442292 868564015 989638435 408919347 963346171 370464003 901333504 657372670 810632380 375401157 997365407 118220307 146002665 8585330 19687049 685917069 790057793 608993978 939224054 546264096 878414163 866879297 927634204 943700543 961294542 995304372 998129054 359151354 376496656 217151489 228254152 809728796 951740236 110097257 848080721 918833402 951138441 705749323 992985495 451672547 640009066 266369398 471016501 530899897 786009299 850332873 912099768 819226372 907793986 912939915 924512274 407580840 621686855 366028544 431001955 636519950 677023944 929929219 993860497 409929732 703133885 471706471 976301610 494629433 931194478 728378472 869875011 992729684 995073121 673551452 778867077 439284674 481296146 686172683 697145520 426952958 605559344 319749338 868284378 308792757 794878430 402275793 868688403 515769154 912377418 163108595 697406185 322037039 420491170 911020479 972618598 730929303 944606660 682054275 909016373 963892361 993229084 713818578 984575423 366805667 636179996 344681589 622544572 597394809 897366941 634863120 836252546 282191926 682930872 697640303 958677812 244822343 840337138 961181875 994181216 429967003 973371570 923521943 931421441 793949031 937397581 58733596 630931637 944882907 965424308 237322764 875773180 908156561 916424863 351638417 630510929 424453976 562923712 674045547 851800689 649534982 703183075 164761054 177776641 252424300 643315765 804794241 897415868 289772157 335605427 467354101 893505770 573123445 819557019 238260003 996311946 156500078 948911435 179333425 352757567 628788160 887295870 736877389 962533794 614093758 844048598 531104392 705021524 306070903 651216802 790703520 901853760 461049328 864781126 829414615 848768222 241988020 430993232 374348493 768702542 314120185 884561786 320579100 449470109 24274251 602102241 460896400 790051570 198501410 221616446 492413088 583243769 266792818 694401305 37241113 259746042 868717662 970731318 28020454 117842454 769365486 784425185 684226936 844660823 523845574 673201417 399728476 857923298 486641105 842741377 374326935 709758216 865696577 902446187 877677399 892445677 826784982 837166938 128704738 441576316 730523234 974768477 208466871 459610567 550048798 883696080 790290730 958065443 860844075 939621186 530402286 996436032 371887434 784138442 236938496 609181204 721243340 802607896 760120437 923042739 442762151 954328606 214261101 288937480 414426158 436451731 738058864 871153523 47018178 59613881 664557168 885063288 631515166 928374032 554625771 820839303 331032273 859129463 211202311 662282755 271085017 820830203 106057343 931316835 599784388 730222656 33678939 931733600 592415946 773543914 502481823 784784082 486271247 789644630 87864941 733211328 150823038 259358846 367929092 905979601 946928459 958345178 356464118 648711920 563903035 732070970 807854583 917577936 620886438 932320717 424456411 887474819 497122398 925412872 499719430 879138032 890881441 896144778 101463706 177813145 120233158 122014283 929860567 984539227 913815495 948697979 114086578 422554452 43453779 498659647 802440201 978321785 200464754 770573163 131441171 910737311 930031338 941030067 941518900 975470438 702839874 846604482 357854838 827158368 575914296 841343647 791254948 930479870 248779802 793786862 614812937 986829788 22734535 724429556 516984806 818476029 536342412 779129823 88383764 476157656 578089521 730289665 962761520 985798465 440990147 773473410 273888501 389636154 762977073 831025981 701713585 942906946 61759187 211583216 21781749 172628564 140641318 155579927 148490414 495165717 554272253 718186013 621336254 784496181 88674863 278861724 198715251 329470978 321743230 485632707 918628456 974068430 132652110 757094613 947734293 950859469 775171155 948870737 509372436 627816388 583034771 761701082 729912799 799298173 94551385 999664833 449767037 689623915 262137885 834256249 399732115 812991303 329715999 654931375 514942360 774937698 828952648 866151152 206645964 530616378 72959942 791255137 397511747 687194817 829171085 830308062 228402015 958362373 255299037 724501835 517335262 890570247 546754670 614318099 912033201 912393552 48631175 240257255 826793037 980350980 972416147 978987056 860224312 973016331 53105510 550938104 782646377 915091023 109307175 756975763 596206953 703583922 14113564 660878769 140866863 248493500 330590616 823471800 176928737 653437693 753074509 944891056 505418415 526792276 382579066 847339285 66216871 272262059 113599720 596886092 942278829 959087206 494593072 927307798 332065309 730372718 310349408 959953689 512999174 664261779 512134045 692787189 507490227 834499242 329675772 732948923 826780745 887169731 415937712 508051094 850489104 872359598 381712403 960422720 429843035 912851497 38661143 307755771 314685500 359676694 394147179 907305969 645994286 658558592 442223399 480197242 659617782 818649745 596765422 951682818 775761102 812135665 170419727 619711768 156333968 656023073 648532595 678166071 266117162 556622388 223232548 556830987 335600356 388441627 775480913 884508505 531401350 883067565 532678528 801613194 299713912 865174205 76058401 393824764 228904389 991463526 967516274 974583352 786344878 908047387 582881331 738848470 907663442 933641988 962969664 986797759 50104008 395253262 741851909 890123015 944792645 995408388 832197202 958305414 629145053 983849434 696216811 734717437 361476765 499533947 51209123 818540591 267375095 726039910 593589888 993258134 704542636 940969439 36058027 794082718 620682554 841271696 523998020 707752232 865888485 890520778 504146438 563491917 542559231 705710185 429445407 454923203 164028367 490478959 100076958 301736982 323983946 855759394 793205799 822038975 566597333 938635128 50965906 947900547 738101759 901728203 437748860 561708482 737202836 786072350 324238771 966602664 594724278 976841215 661260918 730838846 981649940 997309934 819172808 839812010 652951230 713310257 185245085 853618918 341980180 849695821 491902797 502595231 927551938 988044287 315824792 523803418 968866239 974753072 332495934 840757530 540148521 934805629 668074840 768957767 652558163 757724379 735486860 745897265 883107927 916872906 773056175 920578125 669846432 861366370 732798965 997803707 546740271 996840232 692892652 702615758 992371956 998956055 707252285 929405429 247747471 991395541 817610186 958928620 487526007 842338243 787613449 811508481 687598476 790788744 734531931 857158689 793300325 883895184 401868217 921387440 476352675 875570699 457382781 984209197 178022565 734075107 532476567 532626113 302142682 832226176 371749973 527623676 115133357 881960290 339694537 738024648 300482973 671354629 950198671 952737643 452402257 464055506 970777033 975394978 221978624 781021284 597128619 629852526 401325010 851954873 647173717 677207686 64621354 996951049 686724120 772447006 765343862 983082272 468383212 591984744 358777979 359394281 334656312 737351668 750579713 753738173 621250691 631410144 704926022 798764371 930967821 945154410 560606312 942179378 100078420 373900151 745248938 770908622 971781432 993089609 167570607 175692507 638903568 691428199 142959991 924879543 737275111 828223741 241606818 463928296 692963010 730859728 837139181 894227845 201966750 661825421 997003549 998413496 991684890 999057320 619490345 657280601 578769570 642178417 197429210 645969169 729181590 765307499 864966754 984934442 496257492 702890401 762516712 765913609 665403922 679486392 658988437 923980594 323260390 869510028 24269749 331504534 41621792 682398448 350180495 825042157 476073745 917109038 248456250 801489470 691774888 864074584 853503822 991508234 957899155 958846553 124652785 169402339 501618863 620896033 480137187 902137543 984616025 997805183 431121307 850354033 50554183 435178753 636075476 884312643 369040029 536378369 190918199 640935889 868042053 924869030 271346233 448905522 690906117 851992872 473930310 567857481 608589887 918058368 406884598 974137894 132865679 913406708 100292525 182084377 108208095 186877044 340206211 482160945 645250613 800869508 59910061 228517275 999352334 999581438 641279584 910717731 436399108 731049276 61340912 589356685 523461024 657869923 168436895 781108850 368345261 413455669 712565546 952181075 384788594 892347001 299880260 874023801 617509767 638965393 96259292 517416036 499979940 869757706 644066480 756741773 712770099 718262505 323298042 852373907 81537441 239895486 769095122 918796377 325405945 851478562 538511595 689612177 373611658 751524956 754541758 824577852 875494060 973011306 373544824 390118657 684444160 754609161 203810111 443243895 78748123 932221852 270536416 367512975 570820206 939427897 616005197 997773169 738496734 762594864 706000112 905991400 321923599 528608135 594369427 870467141 227032138 485783633 93699030 201904659 245117605 741760284 773533778 814213858 207849177 623368854 588368510 667700017 228450445 709641360 316637867 426950654 935713923 990297394 292332355 398661438 649336074 927342957 477151527 909217287 979672100 988031214 149123570 782288850 666657546 810469053 535674141 963424626 142432237 674686305 109629347 995751180 366013906 498680041 69367010 790710464 521627243 720519484 956875207 994150721 230151554 837300784 120669735 180939400 407831385 983509377 854931109 964705291 1582036 717158442 421302896 482249746 386936610 543879749 261738521 614027044 23924316 284530106 69998398 457634970 777603685 968386932 574086871 995762702 985836423 991919036 547285208 613443337 560830624 856663676 4651454 175100048 193659800 819632104 770743329 784976933 917095999 977911503 605421371 695954859 348956851 640236748 284598648 848489703 286853707 498954314 447136552 926522403 768062132 900555870 916302966 925846440 228817953 573038781 922020761 986694541 740951353 888674043 403944755 811767945 472117120 711604758 416665023 422442815 415768555 872609452 234955467 620730547 33353351 649020490 563778919 944538170 73808549 622522693 741405142 973885477 786773791 806921329 456685979 529108138 396288236 960466280 801922147 984909963 377334845 708824036 543137903 825317716 505741604 786444776 106312594 972209491 628814462 754612666 995720788 998104513 822488235 900729745 91766498 624355489 116979062 898764837 683715774 976067925 603975645 909539787 865660901 886071263 952043566 998296166 735679067 742234826 899570637 971209960 991716205 997166171 405944945 682694930 818064941 912676581 853442643 869266060 901826169 954945950 401992348 681014581 736397872 908881235 596429242 979198557 396751890 686511534 934100320 985225049 2605675 219829118 227684411 247132698 223076385 443521245 467517593 847360871 918439478 953090456 527762409 639685550 456446557 731147277 371895318 957577765 397937572 810358115 195473281 554113226 57016675 752376617 12111070 96636750 85184677 565820545 616737184 711196943 81628905 160516410 245835316 691392439 533644580 986323254 820167785 834104880 794997990 873303672 577096015 810312048 78133471 212829098 259056984 268358559 506177044 956433527 845544916 917263602 949835358 976185116 574211406 984631459 394940373 793512221 373575978 379886091 462248890 537435599 372069373 674757073 880426247 993579945 104865528 364550522 469025736 753226885 202223810 354617991 996429650 997266278 184916628 464803084 268916405 416978157 215539683 837646238 210205689 875230853 514044304 898950725 160703724 931275516 249045573 352691705 269536541 664576600 845282405 894519384 50023961 933085455 882143436 943951092 285342288 768352068 855492416 945765594 971806518 988901660 403431764 455192381 464984323 474806123 901299574 960928321 181205049 476248086 532148023 644609411 400509672 836805362 532901641 632923875 522971285 761831761 928274434 970401105 353038918 631619214 402651936 961370477 591195890 931873658 100743661 244102923 367844707 697761224 166496075 912218826 33904814 197426291 563393951 920319893 674158823 705832235 430400384 533235196 514699744 708129644 745297118 908596828 194120794 625462396 530695594 706057377 747365851 827315181 126635879 603421804 682236167 985119274 356751032 504340855 527603038 642330789 627881575 812659058 933685599 986717529 154248930 173316324 742403235 864183310 495982697 838635873 186218078 519310863 866312423 935002427 168955945 333104595 439807604 679165572 60932665 266808168 524431482 979692221 871030571 987926458 991861021 996722166 348442632 863357590 681318280 755949219 901903058 927486935 803448697 854867703 760689553 955289195 221455558 313612710 661644177 850614213 48899644 165782964 736713455 860825590 126329430 529283177 609829750 727452059 596876380 672390882 402762607 713023489 79832344 241350775 561560885 877761936 774873840 938463383 679048166 778773166 716430682 824747393 393804471 675632093 874272481 970181428 284849090 635584952 431620776 968560305 668638482 786184149 949451648 978290028 684417426 695767636 395629115 484178444 649425727 725867024 57440339 67599004 200431907 638533847 841745626 847441815 149483171 769622533 416819614 807005574 466824513 865559100 172795237 803875638 848157448 997131330 168209808 963927598 755827178 900170415 749580618 937886427 295645152 963120930 425904893 749927770 247082114 610537903 903297164 952017215 412619708 807986725 90093791 255590914 806454159 903320146 132330679 539950643 467600369 800215332 381946228 934882420 46424664 161171228 187942043 747026558 159813329 676629907 650194131 957680310 590292382 785309287 33114497 817115681 911999605 917020662 790719881 807248403 677706876 872674115 737021014 999992190 794419680 960029710 722629904 745649481 132587611 753223335 373530163 466167763 868288648 928096634 759410510 761314956 752344157 859056519 175995210 747696553 920982670 968016082 443821350 970462934 798073058 816121337 958544426 963470747 941762419 985705948 755154606 901093509 738585443 909300584 886097311 926378563 857496377 985492348 183092549 459021788 606619180 965294663 547971902 703127024 995577810 997443001 350296208 973718143 337223109 731328581 483911876 760402664 344051975 838683634 507118212 567272200 686929157 774263744 434900576 720141872 220202145 975286545 963165911 976576892 425200096 791022724 789241048 931314758 702652805 727049131 602825787 702460239 835817920 965912736 523766099 570678540 888704821 939901303 609342733 780308507 192634468 435086291 818340649 977579742 314938016 828975174 346057551 375024247 662519405 991254983 150616056 430317401 362169282 542206210 345583438 432950865 338275791 828386736 299995430 627289453 977343163 996566026 558783505 893646441 439448959 670984892 815367277 946513936 666132609 681775679 497936539 961897917 726936328 973638051 892470387 896722725 662313161 975705024 20970777 370563902 530244784 576250890 870872178 949165111 552274733 872599695 537492676 709584497 588446511 853093468 855204524 882298055 931909695 979725684 732321333 965909150 933157141 969518149 640521626 991150822 739869565 763611676 85781707 369099149 758629863 894200405 285379876 540451264 552407289 991269366 867577052 895936443 45180578 972096605 26091291 289891883 758525176 978645635 665222235 807568659 611363070 639443806 669040318 733248774 681278596 956008504 699361075 896784269 701268435 820861863 72386443 996721851 212710018 328511331 207356932 444557630 264611877 625433206 386007923 891443740 226582536 745788961 10358791 124958184 142720926 388954375 582077673 764365575 73519868 796824311 843473383 949052753 999712871 999783671 999057128 999447351 222655043 931480712 590398714 854410548 540449137 818962500 958081261 962557300 40625682 310264512 577866182 849291383 300802893 340705763 181899210 624944206 158299881 502425288 721756847 985781539 584097574 668228157 629907140 980757238 814791237 848238502 873724511 946985568 409350767 661078046 876467559 969047619 877594977 939093897 124466583 948580613 376307174 837485068 634659135 668276398 803979379 827977664 678301940 828688468 914143926 937699160 138166482 407299182 961817678 990857267 886104723 897724030 607671558 780262469 834243789 911449583 951940593 955485862 773501508 841220645 929242526 983050314 419478359 971073382 772853102 930556468 154559236 309676029 589648866 825469282 449131254 987427530 124488344 829354089 577525858 901850906 484376579 713267971 554857847 949973247 474481269 526191108 381491998 620105629 600192170 904595713 112978703 349933362 531219738 723002892 944457873 999736335 789934254 954987746 609274598 871866320 779744320 828343161 191192069 802629043 17871493 684036625 501187959 730932430 562138006 826699640 822465785 974846621 130740141 511405757 416219573 788447038 626681967 877745545 998327294 998427028 517737366 901848839 461420280 701930192 869825086 912769574 279398633 437329682 902620767 967487081 956323064 979164094 345823241 774594944 895301534 928835857 932346071 997725005 265073524 730685769 636682775 946172616 213096640 570454257 550212828 837949667 843245319 895611813 463147158 970148982 703993298 746269417 617280541 752161939 449909658 591234212 687007353 946477356 114305468 887203223 428068670 500870763 848606774 861724911 252087774 487290694 294398755 925892190 371779539 613811678 587093130 665875147 455475605 622322324 374512754 502254727 481695030 831483177 836765832 895120405 809551248 891556827 305154066 780026937 359070781 535244125 716020355 910497505 491966661 810103579 290589742 713210356 843623030 998957395 575245966 663128290 799887423 864101718 11675397 384608609 389706857 788604060 437506469 745015474 530215544 781566560 489283646 837461141 881560693 984308373 472065214 772167486 549013064 700784569 928955330 964122499 346468347 495921950 5334163 89232469 648435126 840815297 564776114 869445317 876929439 889648854 915027957 978340172 321483745 903135188 238875388 559081601 255159920 334210755 150509908 736289509 624400966 929955289 437339932 701707711 828564915 868349478 649953900 912725251 755048900 946328866 870013170 916580399 496534866 971906409 230177585 772899357 147408446 693775360 998604336 999448165 102386874 441180814 27791589 342682227 752386485 946721772 339871988 693692874 960248670 987137656 58563700 452176252 834021356 942201248 82965917 642019827 332396877 431062930 633518116 678904097 586479102 776828396 933632205 961182389 221693172 887051288 16450313 119399931 976146130 996963685 444441973 801459385 635066041 891171167 882912195 924201272 76437174 355197664 324911224 714155210 735310177 856967188 945921544 948203644 700211262 701622535 493452063 804075037 419845998 725411657 46853174 953005115 130491008 482569209 997858138 998330627 155564796 324454065 580044775 945142175 827962116 937123121 745899596 817808109 808779346 996667146 207969247 529001370 525905001 811261235 225203076 395430993 24201583 450255424 839317388 922109123 695112806 871288231 524878163 940202084 525425060 615902872 36247486 922614962 698553045 870769855 952283157 967499781 148332300 162183712 223056368 382427134 873005611 947629555 450123522 609780632 16015293 145233481 559497340 893145293 644519546 678136774 459540245 738556170 20141831 579513601 16090321 94327704 846370209 900197928 351123424 452732774 169187017 842496717 579020133 641366910 460553338 800646227 90476823 865878365 364612929 585108621 947900927 969772017 345610942 885380252 864250402 994687776 600512100 687356338 25422120 345794738 866919286 880982673 942617642 987836886 202707113 335906443 125533218 389171440 827431326 947431076 545623726 796385481 146909069 486059354 893952807 911633528 17991623 335588284 722125856 916655841 949298447 973514546 637957593 752831023 866945689 912585922 495828397 969616946 150387479 633646972 494834093 621433789 404333823 635807160 344065192 468756596 314473575 810129275 427109797 819125892 19869232 291368587 526500532 632469294 338160666 754790779 627527558 733762692 790370295 851378021 759144212 849479343 591100026 796959725 811421859 829894678 648727303 745033295 146535592 286067156 658743187 882048473 106574546 148027473 781472649 834102543 248345704 686800528 586195389 726653206 245030647 469965929 357260650 746753888 224972329 658627613 361824225 943904527 667937558 884561946 800502696 922853915 34876108 495907990 360389811 617705223 377781153 463363614 961751353 969910746 187126915 623592820 366719086 861410849 996548216 999443013 371094149 948797259 278472991 988857653 527034239 688759742 759064262 828959949 87513279 767764646 311275866 497385752 33564179 87706006 719743765 891518200 832966461 988237900 499390652 552848302 817585542 900471226 550504424 631506677 994825344 995933051 267591194 455470611 347945716 361330014 970427894 987431370 325159169 807476579 588485174 935805223 157510541 401911303 189888986 235823547 513938017 967845652 560463883 908108238 955924957 966001073 754385189 852767409 203857289 526213045 115793732 561561605 100202300 526523295 245934616 964172715 899187878 918676397 127970855 807688982 430429810 524039059 49846978 740131877 697413760 858853569 84500355 928872205 795719806 866863459 244289404 816991104 260039044 441357141 668689268 820428485 96770056 877324148 513460592 513871944 574959482 658551840 778848791 807760220 488504473 653464406 671773211 995991515 301571255 787754845 985131815 994841610 535602502 911409373 868999336 884197654 463916903 874433370 524765496 742066886 876509891 974528643 622588637 711211179 711096204 761259181 29634262 735760639 900609614 932004239 186276236 700282534 503274120 555602703 549202748 905570859 834668507 836724580 553950561 979853818 698441952 934431007 653535868 794428125 577407748 667538271 611860079 751478820 818881274 963723737 47646577 79040213 220733413 403623336 649082510 671662144 720951931 790290205 622611875 839950206 522673069 998092703 817933289 887211298 580729617 626561055 683561878 788910578 350576011 442617444 934554252 994521493 573262117 748301238 910912287 912808283 805840758 928626981 52556622 435033086 991322073 992720642 861911460 896973084 220183360 447506267 887477223 889441815 406604789 485218282 899108915 966547364 495602837 887910303 565345901 710512458 349403384 417851369 911528465 968905099 324550062 904060659 969784371 974180518 162540162 845765621 953721100 996571319 115452578 731268314 195058242 350712543 741261352 919266416 165491623 652616905 994787120 994811467 651165054 891010159 645231896 924082054 143689023 969512059 851773692 990779459 496239980 772687355 617698844 993331492 88546532 278458552 928098288 954853736 574433526 961972128 68070480 469774592 848846017 901365277 538757710 602884958 618044428 774027987 539406807 552547619 980293968 987306611 329754284 575498628 668997014 888650841 30414632 748071586 16371380 556935769 226676652 509154353 218654546 440839855 544071135 876733571 814285232 905159507 378443323 593042885 985557927 996510239 446162073 786961717 211380428 820029601 597528548 746404971 635794340 645038883 901828685 975239407 100377752 702261527 524712043 702689372 63431964 110669423 306982295 777356892 871129717 956574541 498289916 502531815 883779373 921632865 667895624 961025039 601296468 768106694 658273629 820764413 527580650 684367275 666238496 898206678 725583089 732109614 185981331 566368655 528852560 887905386 227835839 950688243 301687476 366368552 811579472 868457401 688811176 875420344 674650886 850096869 693733258 928696981 34302148 876328902 842137239 949399906 347210730 386617696 128128751 334971361 341935448 846246379 178301236 729725550 724371827 946030832 459404817 870556523 750124100 799423296 625556771 959583011 331327751 609169145 272906239 476023854 908142985 916899147 277919975 651098693 361646220 371573327 790055798 931849914 62835856 657147319 657585646 838113356 866296655 961146171 241511817 524568347 855654939 947440148 690234815 936759297 62928042 935205389 336830491 443107027 303744396 911801254 960013646 972695145 455933056 788928485 328465148 479519753 861616674 882258286 120104265 886552949 499034873 978353548 443001174 562657287 781632501 903439252 694096961 860826956 839012220 941666137 841639902 936473891 418984046 499209706 1637435 165848127 393358257 715715414 673384436 760226075 955242652 978725356 433651039 885570169 294051465 561005776 296676368 504689006 559139592 846625244 59476911 741958377 27220306 54019476 828637427 901200082 805887539 906294894 162674647 348132935 45261840 802145580 254878414 333331014 766878142 815154026 976953260 978277371 568785637 839139665 509958851 645440771 980604941 994143085 16376203 698259593 905621373 922767641 217329078 852012379 602061062 850674430 379457544 490684737 853227626 896665358 944478798 969554732 726343253 784904403 6487640 242193578 474829731 501831719 74300490 614915713 768516569 961147707 482360228 487491436 163404296 715080956 36468408 772457742 315219353 440619465 238252395 901710924 538061786 589997720 235944549 297555850 432520813 873223232 818273303 861989497 523250493 885417922 959564774 999816464 728838746 975706415 950950154 965892907 470243977 885632658 833553038 945688313 535506754 702997756 516616547 748851680 783142573 890784110 2378591 153120478 612268206 743729357 151739903 217682551 454203310 830207620 781776866 835559347 635738446 923323843 828889133 952444491 222595940 564537856 910857495 983797327 275013436 370705462 818971572 882735940 240573085 567196656 195671082 820147813 541348486 649341349 39754557 187656018 508373601 559983132 978771224 987256014 904781601 967586722 169307273 736268759 904320793 914295573 573003810 857768881 193702357 736044577 104243337 524050794 492358545 921046072 202519953 485502101 896173889 912647095 378305235 688546963 789417344 886808531 226768995 773854704 81556712 674284467 143978025 852598501 947061582 967598812 144276734 634725643 276178856 930095665 253254416 844928484 283965995 468154329 808534602 966781140 402151921 407978379 166228160 758266215 381976374 922216957 643583972 912299903 941154624 960339250 146796437 203100203 517767223 699366900 426036115 618903960 91187378 169165573 511382615 856935573 608863013 883245096 932775148 948121413 268585226 984264500 752605320 852051983 892980678 930123299 736112121 981397531 198113239 231070934 184842412 677001100 263846810 773595488 245744189 503075306 8242851 228559923 921057151 947392260 565025937 834654356 194856995 914880564 510250577 604092065 733018979 826423593 93016326 495555337 183704251 568524263 818754358 865679110 224526679 397851005 863293631 970912810 740319630 921507068 325918592 814697766 973958121 996759440 718070554 825522974 496508260 686730348 766193557 914480360 305124888 907678373 332527242 534172405 632179245 904712478 523161737 793612567 859107649 922060429 484123248 610452428 313988059 549181832 647818669 965453463 236460950 388940996 827669996 993995789 945570275 971859573 706062728 822653920 654519867 933314235 5394228 728189916 295293510 895805762 135693550 740247791 448855094 657154967 862185941 868749794 691966678 955445814 862075712 879296451 406892865 803181760 104910850 649389537 239669137 701325495 297136186 329490245 194238473 479757103 507643666 904783754 423199944 935229806 552238481 819120192 890100660 978638386 565310175 686635322 34728291 36060259 858204056 907380276 880853777 963046506 792214602 970242451 519890367 949584569 344371439 860197022 947149215 952697443 837269521 930154757 352004841 440115762 682840562 796830568 931140047 986239932 752157479 880621122 441720539 890554268 650350709 763079083 833985749 932288421 83586062 407679617 837846626 910883424 230986686 915137643 87151608 594809292 834379316 916170636 897409339 981507351 810592998 914718267 769065738 862594287 332042508 917769843 777780438 925086747 745183120 852555632 150595196 859533627 563915464 931695983 782421966 974469716 142230835 691474037 88839003 888022746 770385811 878475951 214187419 544929181 387855584 609945648 647822553 687632763 124539556 912447709 397492400 747959864 948204942 972520211 648302592 811312829 756484840 821120478 618678148 711980402 491468669 856282327 665647074 993665982 776214357 862798688 459972016 670463008 181662587 732816899 160258469 449188966 64852919 186604471 170749416 295754276 148893554 527516506 755674464 971880019 576359434 760151063 356942065 995481141 817286902 969065199 279743133 496259553 970089396 986511223 103889598 478527121 466926529 870513650 750170737 967360689 900733009 955432094 693991794 732470521 529147425 767071756 65336310 650209296 912554053 983762327 464235150 535927620 544493972 637568510 396578200 799782496 549328182 841912470 227347929 995722517 244822862 330319116 902187852 951643240 910704995 975633356 677617468 711843982 654632847 836559352 436599794 828913134 939128276 966773302 248977215 251005526 639750568 942033218 667054121 771477902 452247597 633622143 23166608 458256182 316527269 432550119 453327093 970111307 718735877 840662220 612040933 668712686 455564175 627893220 715907362 817794660 164412292 658433775 80513653 468705877 711044545 922186561 949064548 991707061 804748985 856561971 120613725 243471312 708983479 910510416 77956757 489766441 666297798 852812975 116681783 692087765 713306506 960380719 828615529 968289852 321690176 875076749 248803951 340076354 457909484 466296285 898240907 923404372 107909468 987426720 782219853 843824158 149827766 848977467 32661397 634946021 917210334 984476126 324937761 497071774 612072952 633947305 455835679 467512927 846470011 969938918 335659616 623437578 840731234 876942694 982683856 993931626 18014241 96458462 556413662 807925661 661131542 896629942 544916484 857801739 663999939 842188656 105982995 176856113 816416792 979942652 649642189 966673628 907343372 991449791 963401497 996659316 559169207 839585338 68750618 418221626 297868932 319928396 181059849 526711605 631233075 762102126 566140523 811475424 906136622 930812551 558985927 917329969 647772226 726322455 82359688 233438802 492864362 907962737 24938521 275125904 570189326 857975634 52649687 514536017 392755927 493476402 26017182 774568970 841275661 958197406 507409111 933257558 318389409 779490482 414825994 575167353 260298218 728210355 417682367 790376697 395569584 411655624 382896839 728236785 626289676 774263196 684146100 825879882 611552712 814040847 759148899 968388311 17809552 236109559 692658622 898892668 140131717 234050632 655579424 686218207 173269594 562435157 615199148 821403206 219279669 604270224 783365540 798115050 919251547 933309678 278997127 885215568 399613506 460464454 197094180 565265937 90076532 426540749 390552358 978785263 904214715 908697242 943835682 988478442 249981786 779636446 632025348 727785883 889132646 915427494 463232796 965736380 640754599 770292229 51758828 640263760 245474301 829088455 638137951 725713893 762122329 824453094 220204544 864340156 979767738 988140248 681048247 980110884 441181642 778594540 612794962 756535704 718084734 993291487 838064760 961620924 123370637 999516864 226321650 485451481 847329014 901612313 879419823 949749096 880746051 953045989 667240569 824371227 240501685 432487831 655170745 868398039 261742750 480627338 490042176 828165617 212387057 596855914 406023918 765932115 784583154 962806612 977301538 988576409 331630517 631512410 636325295 953630400 473454515 492836085 245344947 383814891 846210765 970144819 311200099 991409441 477169551 515909385 955509585 996708426 395889562 879734920 856393526 894948924 224964106 424622688 894912271 912628300 193606160 631608720 344528690 989547407 526157595 731493254 908594587 940768221 425839496 774507742 107865101 634890364 548492686 620664467 471205546 646013948 780682945 978057629 269195931 959250419 683817155 860702685 110353571 871635764 541850738 776292758 171432775 628000258 729497689 750732143 901066852 970355036 298854281 518205780 969529307 974859400 689202412 912169026 436187998 799949345 257592448 840691039 168967368 519387793 821768818 998949729 815400545 946622325 522335945 884406549 603798620 968595269 158343222 343094298 883911018 999013034 256741691 467593650 128019817 988981544 829452773 885194858 386382910 446389248 987590358 988246428 886396192 909762806 808146606 884964552 533297727 744990172 209535727 692738411 862205155 981147259 803776372 978268789 790241561 882464375 928330289 957985188 269374138 397470784 89834472 983572060 511475184 715611865 93678766 281380361 587527621 723997856 613737984 628793899 253216074 325130021 66249020 87516066 355823884 851210095 62161599 820788463 355934499 365405152 581830868 628218522 723896830 865085653 817149792 839898170 739596733 921040010 290365341 417933988 248012732 553810599 353388417 481816318 696578484 929924073 136654874 724242641 226635378 647890686 296734277 395175934 866934685 954355265 746379469 971564644 662271594 882916101 124280704 324985991 75193596 537162620 57059684 640198493 597220441 793686302 979275194 994962310 162909285 854899594 585971619 949536430 426745205 858865914 950804157 964296581 707427488 945411481 29540453 635709278 141452459 837813204 992043257 995933895 267655365 761676021 101353338 964195580 449066874 689883588 780379270 999314173 537864403 612305799 368077328 652711041 773810433 986667931 606230306 819101694 454005953 609874399 727935555 805558723 979376447 982503860 432486100 435085020 104863611 123983476 491474704 836912663 778702684 914025007 149660762 351943289 782720369 815687331 875514337 939218727 198312420 239924856 138557283 962119708 741532145 780770695 821392382 859537829 99371991 548093301 208068659 383992461 414269901 557098729 791694835 845579250 880939511 930727858 933487392 953499185 806216589 942361266 932932057 951262932 76423168 396398070 648194081 701366544 912568881 920864596 633796869 917901726 256916903 843095923 105961981 873911777 427282491 753950348 534848461 546873534 261006421 270748113 276639949 812848541 870743245 994254403 625672493 767041876 825352010 993187840 333160930 352372548 557580683 626692856 953652159 996878399 808643817 959400853 911024230 931256067 880407624 998665349 710487427 741170252 609989544 953732613 106340692 205064717 509028121 725175962 106579093 654586156 533027253 855181809 462408633 642073302 726065710 750152695 585855615 913190473 703431803 704703099 588351727 757920064 271623359 907403155 671795999 787095627 512619605 939572019 248606296 803182010 433736478 595509783 541689873 716873869 921924575 932517992 498616828 880032290 993386387 994936684 19804852 868323997 329390558 867119614 197644523 920232490 836974751 896229704 829683825 850212900 592340103 917672381 29633621 714906375 998154341 999576080 222898147 652764389 153420848 329117825 933467307 942144485 300717853 957884160 54213904 387182795 417848484 746091030 206131786 790240602 850134549 894556382 222272471 921896373 173968784 228994898 171800259 250775175 593473732 735530274 82730015 603907103 573043865 761237259 838038042 872125177 121064330 609379380 535967039 970791950 186939557 703226170 627258778 993630923 263658088 505538523 511635035 845060654 573153034 935152465 784624265 840922281 605284618 609891010 991287358 999711715 381390958 684286953 956966979 963379249 299005939 477714850 97529754 697105047 735211460 777066848 296094650 494369853 794161878 888606849 939901979 987244425 9616181 954953684 737100215 898499478 448886223 617645871 885697056 964929981 747413835 971727484 818619911 887868520 718181087 888218181 877376052 886846021 3272301 423181630 334527547 881062655 198972326 815500583 977801188 989400800 34013176 206577918 391176483 793801732 580541278 587136852 30499099 410373052 131894413 911844160 308314474 728908723 405545672 910179152 474351557 854975257 491827267 498043698 640279785 806640359 786064477 925470992 520570756 689308655 668117245 865545791 219043467 917900027 503869252 977736414 90046416 317540733 683061065 976182816 248486877 536957206 879077120 901481320 55431131 841197146 781278854 882947001 715724989 842901269 952408405 972706411 437045208 526852943 125150606 755334831 858668869 957305181 852978423 900900640 789273213 977562721 132636942 668303002 152698696 300073127 315684123 981733000 225457156 694440113 436793823 561775468 660879823 962602286 656015830 727258205 932474310 956533685 743312024 806254055 733805333 861396870 81175130 860787155 821850472 967766033 693261913 863091004 674015032 922197699 163752842 360008179 963610621 971688233 136325546 766667588 856921634 952674154 169720627 572517078 76513535 851544311 217250455 676146740 271392235 875023685 826738746 877945051 265953591 768257824 987541583 992580288 92070973 600411927 324576145 496571832 460518474 784039017 39952590 966656213 662579471 983856966 265999489 484033269 37690018 882758623 138396438 439853524 322371804 797146475 326728940 386492110 993011435 997036058 7126356 705094954 89714373 305868787 434685612 561947366 79086847 840489102 127789779 970050523 7822428 48205411 713854584 930896052 603986506 922856085 975469491 995803495 972531763 973768510 689252907 736333435 438150376 962175237 143633897 432003621 225048702 564722588 548683649 648427432 934294107 959939450 741268537 805568062 176797093 250695158 103450680 639439461 676894639 901189316 298934903 665974782 833308912 900524634 105809365 373331954 290188572 658682872 903901411 987951071 658615679 882104213 652169423 932105639 890110054 901331665 351402561 636130974 980934314 982541134 54106350 759744711 529010704 553276371 949088435 973172693 720039499 894061224 104761781 649825564 252837217 788416302 606623577 614914586 842925104 980873784 947589252 963126390 811690121 919087647 732763463 924386995 235656371 464928260 206272806 713884041 289664099 360408919 676537425 812460557 478734482 969513704 762967490 919600960 746666508 793425134 242285658 531794836 773799859 858940480 122170735 729744946 469764548 833889458 219722688 652252250 119874171 877631092 782359040 952699959 507818988 701414817 974753522 975648463 419084581 591234241 102439101 848524694 866699566 869658023 847952048 869928481 705031866 809731381 496106053 719339654 455634289 579482833 108568813 464937108 557160816 943936651 669705801 795307134 991834234 993427276 17551552 551783134 362632488 924809942 675571169 709575318 312641755 738974191 680785512 862383541 544957509 962920022 465099313 523800991 674857647 735771294 617744853 784364619 163599911 644887707 519332285 758987191 358632070 668143176 195860717 250338819 404465769 982745348 348653834 804215663 120133101 969936487 623218584 979669783 392375582 515389232 276094720 816515221 670196062 724023248 590486523 816176138 175097809 963046405 160948330 187502893 743524056 875506419 195971598 276343270 359266541 526467224 937640021 985225125 246738351 642942652 745295196 927659886 907421749 946702183 648214754 955227901 980358511 990188283 135113629 264567494 545961470 650059393 789386429 991251787 17688264 952994438 562040762 762763793 556014044 975839762 789287518 957673944 175119864 533456066 331050404 363076222 228351668 880127752 508749799 945600361 731349674 943179005 608468874 655713693 226804485 404124566 385071202 449041033 51932909 85682218 105683375 300241712 77405481 552473827 856491484 954502914 272455419 707788293 83083831 497290334 465993681 976819399 926730771 941916196 84601090 230786948 711703768 996071603 803971320 804261794 851717655 982732678 79762329 798219582 138064513 916391883 232603189 263576757 299140858 699889255 978599933 980682079 845387803 952487051 627769196 752912983 202808808 403119970 278251192 714417554 162294686 891745989 592486147 702786284 820775185 934859065 958691865 984691769 153954012 855173500 572248077 868815224 484432427 554459972 26186994 69534822 615829281 999177019 854250869 876528135 893106199 907014539 662925317 854520871 778718894 841701059 203249822 310720365 568749403 743646084 940387032 995624403 680616903 757706558 727658983 893398177 781972238 809411765 483803475 712004621 84054173 309156359 430603873 696452106 688951560 750171586 985812906 986252135 474301471 700301135 985312555 990959438 182426384 603265143 632010118 695680111 576022839 774201151 549909778 943822729 805165650 929756089 533314842 678906604 489782724 708837277 142549997 404305752 337378012 522662858 840780688 962442771 843900645 912777253 618767208 967443386 848899700 872090663 434672824 925423121 48953978 558267754 734005508 816154367 454824164 582371355 518943055 865813632 907395378 993938076 488913998 963168952 745070469 834817212 177196803 914758043 163472512 502305960 126615605 999093941 601170772 832392159 571411736 837723098 511567279 788587378 546438627 680323941 800523692 944382647 259449120 743135550 459141362 974477789 801745447 872928781 657141451 793259689 327052608 765810532 51619700 97478183 628270907 652544302 770696461 824793881 6603172 272103483 775032273 870694917 185881051 196624874 263486157 603494207 794074191 847658601 11270133 870476313 711404447 716538299 530550409 691057354 950017409 973672693 129968318 437018580 69544217 329766683 892102242 968329224 901002377 929069730 24723541 562298256 159268156 394696560 205939931 246467645 135805832 994187924 311805670 335837931 21177209 259232488 345396400 597052626 705061754 889470720 895307292 999417639 798602451 838763084 432958695 434597887 67307277 695121863 775775036 842045869 670427568 884416818 827917684 907685935 760188560 870298618 416225211 580637485 886333066 897420735 149449387 373276828 148863767 413088100 301835753 367326420 920845195 963694436 766963631 977121913 357295184 511941611 745671538 854023717 725486736 829564201 699825562 976436898 849935432 897950048 741364459 922881956 86086926 941761247 403398422 603920926 596247958 703885332 568903829 676539931 531532848 945240519 337746161 548221740 704671276 884741181 558880272 945421610 138455685 385555297 44604972 355642473 186828804 388295685 112918082 588988315 756818405 765734909 650913474 654427184 980811366 988598948 234685751 489162340 89639380 374735669 504444600 578604534 434240747 671865455 109148688 370061560 918114006 976671522 976739693 976809598 418000020 930453536 481680294 660082788 231120149 670881346 145659024 749014039 121985657 682964047 149926258 758082032 857155437 888890002 278875234 501487259 304876998 597890887 10638223 338122928 5723488 846457108 386606359 909872181 895063866 989258894 54593647 695544160 701435503 879091627 472553278 955524915 925074205 989658792 160382204 595884217 859394001 927849642 778567748 879614096 509161534 628001774 524858600 844154481 928105979 990950779 470509707 960822168 172683900 684754753 707356153 796534210 782303116 804497027 817058163 971625698 901493965 984814221 300926203 436746908 286680733 350546917 518758634 644449224 269667861 451065983 425847206 889544536 386963969 619412029 512317601 704246740 661694428 808372414 278651467 532805972 456127780 878072282 563214210 898954142 688988496 812918830 633384752 929696264 524788091 857731964 790951326 798777626 474385856 745147387 583948959 735931985 401843169 602612083 453750804 717787396 479924999 826557202 352236391 398961178 129710618 428981517 619377268 933973791 293537101 391662931 625952062 713139613 115896989 325159064 481024043 728086290 162752631 884865959 143396220 856602852 478440006 757425401 788052630 948201919 486580627 926912135 685589943 739575813 997359765 998816713 644471630 832559723 506075999 552768415 279297304 828728518 598497745 762855859 733993840 873621411 273304103 298288884 386895900 679352090 2649790 504887163 263271312 318115887 141117095 476422619 596765011 716441616 15225752 501101220 376869023 710198906 495370250 945210782 546078679 668736665 535911092 908211741 577804841 763511647 532176768 944874902 621721797 722340257 8807153 859286775 674826757 953611217 773782332 862280156 972804472 988047348 801278575 947622444 672737775 977174405 315679954 761177853 759223673 828555707 981230894 991012945 196576770 955872376 637011950 983908992 116568339 720465169 179745919 562985452 305034236 557616492 442366893 946449113 466275175 616851072 607151924 893607653 203744356 842467578 774235752 976163046 338498682 503632388 595563919 856777123 741138284 838428875 309403122 983626419 598048749 879634520 25254284 926516743 885611716 963919650 157194006 190509079 184185341 384448728 278791424 837900859 312526278 981724539 623855394 975648357 379277044 600604266 999993027 999995122 998284625 999560543 462315820 629715687 49846309 301421534 667091822 674289779 739991625 859722105 780494590 918163954 982508700 999323257 83633869 545182731 911897216 927079385 558850884 774153038 710040820 806043696 616914851 641281568 950661420 995157119 321371877 932376251 358916212 517092264 465438567 600476556 286113145 733830912 942825223 998864301 716561367 744655292 124159451 250078066 350926875 931994796 884250853 944071927 805202980 861198823 51631178 781863730 883651672 921403087 31100235 288007884 84844232 449817296 588112219 933567572 693698925 751074397 537632109 844125186 899691020 922931075 763889795 881933308 339568230 539305571 450947308 982250785 881431211 900457682 739049367 802024153 54534441 625722360 416826118 423126865 271387134 809028579 158453078 764908319 127303427 686410114 128715242 210636414 760273356 951020605 560412685 991477722 368585389 635107698 739488963 749019544 263958177 595856593 277438591 462465103 619766624 723208078 39442846 203204689 681867474 994082265 463529181 756603012 108997651 923853905 40131332 636574931 977389792 980538921 257396129 445296793 655085040 780970160 687876038 989510555 549964062 610687475 986141813 997861102 419283881 909193082 703168809 821519757 979642631 984444651 918953494 967206780 666347695 685542397 889247049 941706221 962953267 962965883 359235169 768822947 131998227 427205886 120002372 249240571 241242877 911110454 845131606 885710308 308853183 885173881 732455475 816715533 659560436 975540080 695178293 896580229 776599848 962151145 76776281 125721032 656290500 866988054 503267645 804709409 831878353 967266296 722765151 823613747 676963444 699603336 464460750 705688478 377049477 559409679 39419507 716527186 84791564 360510869 624993693 635265692 84388174 910596152 738797599 933378978 968863930 996170409 348715025 944224062 709530531 750763918 800288144 856331247 70360194 468518138 169305605 588286492 145253616 426172963 800110358 888999304 328371707 698159851 584359128 900184062 201126686 766390260 198610937 665197994 843525754 953370605 389888715 430425554 756156896 800348923 360669458 717625035 112142738 531483629 310302305 960439824 866587971 947776383 631993917 800096886 952415630 995706095 883766245 954106457 437148133 505733916 112410105 705364013 723102529 736859016 204912162 942023106 372322697 453797756 763433866 840177971 935078459 941774959 147584145 811834572 93431337 640326126 296503007 849189122 893292956 914287257 999961628 999985004 996565161 998109442 202526648 203774191 22631532 199086377 227229686 772223616 437441696 990672830 431696214 500729371 867007751 938557247 655659263 661528688 922488504 922795512 102748345 288734244 501706312 623540073 238336299 298775724 970844949 996210731 552493853 702617418 373478767 698621916 477435029 540921076 433410691 461762543 24635664 136224915 198289999 599446297 345690407 643966853 95451404 612067862 808527821 964447454 159001002 378495225 638746248 839209680 578505148 607985061 70155188 352684025 66947147 213936828 361151002 967976799 989025279 995459056 170970066 422699806 28045393 339957472 108821242 867642134 222624998 947943707 810241385 907525216 468176331 634454617 355875672 796376492 711882748 891349709 506534049 612554565 37369660 613062641 637469169 846455585 469340583 891038596 450899064 536498892 622730001 958040881 195743232 912390621 137735709 710935276 945128384 990394940 263506806 637705950 827107526 867541520 117303525 338946407 970033865 972152461 741533417 855673451 22664748 582123612 695790793 847244726 99373070 763575682 239629728 439592420 282696583 848959838 607867805 629527680 245019213 327722732 420462133 422409249 718268508 973699444 81087431 400534560 502451336 536434882 860264225 871629409 780864429 781972921 462380875 986828588 898513732 908460026 526313486 984633919 107419149 329524268 439605816 725987748 832252595 984302221 58776573 251359180 215606425 485177557 825466648 837586654 718336535 946646294 317924941 701452650 330508217 524606831 274712370 850817727 832863960 974212764 226591581 631023902 448437254 462462767 869971589 950294960 585710547 857890241 891922835 952991826 219074957 268837910 880351809 935832621 709653967 717891367 561921021 731399648 711602585 892073671 457158434 991032934 728550421 986140632 823701691 846088293 867275467 958501142 225244513 281477844 401736866 637261508 376620950 751132755 291601511 487997927 50711253 289066210 854909398 931647736 50138974 256944454 615320551 768944823 268483998 830102330 601908248 611239788 137870449 181391139 515348905 934730368 913111597 979902494 925214661 937506027 358037603 774720933 801044294 939029355 427148196 517568797 972988114 994849589 260367758 393759094 988037918 998650862 717043559 797281696 803694789 926821787 173151717 979478869 863822338 903658133 471561271 490562555 91539231 456129239 972528815 983769696 507566383 554613597 563243 632441050 173933799 424964195 318666071 647444943 525864321 930131427 128313889 805183356 62295608 122235214 241688662 713210720 686830123 795264679 555731712 565384128 844587412 859862077 157330612 448791190 254586743 843195345 166287728 602913750 550566555 650053916 966768975 981614462 373977761 409647617 348044742 446159992 8158011 494094420 514048140 710420465 63023251 817467407 33777722 802868002 270754940 558659117 230846650 517432225 876949666 897494563 323021911 889410515 734436388 778372133 821070122 895148143 486528419 602622979 72957861 803804532 391883691 480527683 70172192 631148737 650645979 704199794 825818563 862191673 185360377 888769740 35285546 241695859 313452869 688763717 518967454 691948286 614067188 908853607 739595373 953952355 45335212 94344757 436610997 693644305 857242177 931793506 669058354 674889897 688774129 915601008 792909508 838844177 615173062 695621885 812394532 865939930 384277264 650173629 854509111 957543690 401320135 561897496 372484421 879726123 571856529 605566414 511661932 545569263 595975725 988911821 767113492 844534273 889740177 935739644 257691751 352807939 758650019 973038428 667905950 808561354 377448601 465430435 774584779 981398317 730574216 812108575 334032621 584145215 360606680 953063737 338086118 362390292 90230446 949426081 2569307 952868963 621097858 826831054 150792602 485075154 417982652 953861054 175157710 206734033 63658932 359473919 97698127 432533060 324327636 722305551 352736997 451287653 588308846 693600412 271332257 532744896 926123702 991633965 944194791 999358970 220023192 607856952 250666433 762366998 770194083 835446209 942955859 984634943 821586034 939649424 978177189 995345526 927766361 986085852 22268906 677955621 21457468 186109528 795937436 843742614 246543708 743729772 429996213 541936745 27635795 831859279 145321541 435212002 602509456 991273134 560239668 636761002 523086807 527352272 700776366 822787986 72060601 564549764 282166779 885618735 463180723 498196546 147655035 853647983 597541601 773337549 817132962 891773804 678996879 789190773 36215988 809058439 726381892 909142691 527990734 643192470 42845133 594674864 758859430 946519126 91405574 112881954 657997065 881167487 960557474 982567294 873781781 934289231 377669951 606128333 346645512 707620031 792780510 995623113 968849570 973091345 772473624 830439220 412306875 977036820 54347213 152765506 688103604 742116251 460520988 491563565 90709355 111866517 978071331 994281510 77305055 928809277 413607556 442173847 511929904 926371390 861860220 929906289 587554251 905670419 81922394 984241891 327066934 938964846 722849059 957180306 346092189 625591984 770244987 969162161 875965989 892874277 845409661 933187386 829544731 832906889 379812736 576441324 589901785 926124857 995477223 999764597 269717175 757023361 620390889 927265478 188553984 577293558 221094285 243735623 987676785 995244710 688205680 761621776 889426534 890561602 247905910 823749565 38698583 281846600 526240295 724935998 762829963 796190113 777381692 801591355 268586157 971482901 201885268 619680314 268578359 369799885 214241400 771929983 186738938 892244024 639351781 809660695 265499135 746679795 283510579 732705455 620276218 702962419 494267826 508440995 690883035 978631083 400169303 886172784 847311408 943508646 815286203 946732411 723091297 864894577 32533870 264199323 538447780 834696573 744717756 943811269 222778918 236878238 377690755 756788421 244028816 786037558 716233274 830194095 108817035 489768180 708088078 899565584 554370145 928796099 61763398 432599905 358765187 577896029 850582798 896289106 16720474 372427809 892463115 926319772 654858696 743151365 990659098 999154676 425655815 907819408 806561944 952326444 246585408 469579672 128528732 579861345 585741486 881445126 647930188 727802337 773116369 900184612 620315208 813181838 449269544 867097791 168627649 843353015 182948796 554676216 541591040 691605038 385498112 789394824 220728860 299802010 903362228 929663103 416548484 418321593 157814394 737236582 513242911 691668240 295865750 564933797 767265069 804584496 511261365 579068536 710138368 838156453 283561501 608432641 294975590 418791353 979120451 981868198 110477877 974055343 635387931 761653838 143194286 963008405 798968814 982715177 281922568 282979781 239959686 472184129 881204820 960102493 745339507 958332362 719657440 729249818 24445920 741535596 423518868 653735410 916115232 951693869 151677354 945162585 597750598 641311236 710842603 759797298 600454462 734120982 636798613 912384957 643888576 854898673 587047598 676467069 358135628 914606551 118434588 420885753 836927312 872999368 322832643 760975177 659737287 852580792 997938308 998084934 253770749 899477418 699555292 759189791 627155769 746605959 716864562 928876261 391103681 633557213 69648172 649715226 43934484 632294085 845545283 971495469 635922211 968065894 815238931 934360857 565723107 646158237 45142021 944222330 934952107 966418491 885604101 889581393 387346670 652175597 985114999 998697466 584078463 661041630 499131696 585830804 408191396 603156646 36336051 195635865 263463292 584059137 999568684 999717864 468326350 879895700 463524608 868358239 87310448 741419729 442407791 695978344 16877217 932762902 228254841 725765183 269055755 969284757 55489172 611600550 708955486 818902158 279060300 391683543 144938152 944550401 643113943 817785052 776897187 782612519 628522463 686195969 26719663 258828529 1683608 611718735 451406105 774706664 93378569 672508075 88131781 226922395 388874471 789688333 692403743 819325987 268212846 584273061 741388296 958716693 888305738 966936706 675006078 744843415 14550541 685393988 267802296 896165568 406048126 726263197 958411598 999846610 883401669 998744343 360892174 874795794 981509291 999029775 229424368 887733640 538643923 795154033 93000691 487848432 424620530 521368224 972449356 976020465 274526052 535711076 700559861 782113287 822233057 860365037 305768575 424098347 780545266 998622532 751247802 919762705 869687402 989517172 163120539 569746430 247079749 737772975 799785876 859911690 113977639 514593396 144007444 783927773 815452132 971062369 433876681 526707400 397041278 706305881 656335822 713221075 358753405 652681045 471611058 905963669 650926320 843289383 63567223 709145631 329852913 557268024 110599691 921254775 865453934 993708688 677540563 777192248 432250612 877854121 81474078 296221951 924188915 951609835 589776292 764504152 464980291 672363805 787697645 990060012 889194016 923731880 893212957 922720386 306311707 889250260 681050728 847208711 725814931 963806944 928056772 953906068 825304499 965183998 323342016 822372795 179140483 995655870 909532437 920785014 127875674 442262687 181073979 633735638 665896304 855780485 988818657 993071164 983232303 993481572 713980094 933654370 32403676 831487669 194131168 742797957 3543650 827449291 207261185 536879560 727166896 969110415 403336259 417173470 970776855 975530685 333327635 672741305 23313953 138016562 415840093 668354897 42282807 743427317 371603605 558803491 597734286 641751448 844891634 939956642 890165041 989356970 474116879 726683390 671405867 968896852 810427401 850665975 198218461 713091702 71023945 546833929 120894190 681909181 238965544 610493650 418740834 590029879 954387705 996674507 523149635 798646840 129668568 922686533 907576311 980597092 417400768 753953739 664707155 877298495 202640847 490419805 209551731 469093715 489108685 942892619 906251962 909191084 965662334 994448594 24566633 686339139 139395603 259726070 797946709 968013976 580944705 822171999 98853387 485427960 655174687 751850029 790704153 840604730 366887130 389951494 572358469 691478377 277010285 889936930 995892831 997598343 302990934 843510122 760750420 816100853 945545445 951062281 193551651 934931829 218569980 455187264 111706509 630761869 550825200 562809878 420855616 953093359 298556947 502148588 546152984 655110071 788817360 801434438 10906023 386885996 840462425 843708489 438205359 553514865 802795482 901782727 111276727 188821442 864597991 896043739 583559899 827317984 217911154 220586068 995975109 996700559 652107956 806876270 723028383 794227092 269138486 433728869 829497187 837009614 178251021 434955519 343744325 629152112 731317070 773831418 602967787 906579951 557194764 691549677 513710318 924863401 895270088 914679889 74992657 771386979 208068796 807946848 526013399 941251988 261936797 604260049 267885412 667828426 856258332 890317755 716848133 771150937 678370202 701073463 676992177 692589971 739669952 984146852 9765696 417981033 220309972 479727679 314720396 390990247 306921870 552368379 937207030 995062805 45614767 982964270 837026029 850355592 428016757 484177908 953018288 978274967 514936188 705389694 583581600 731662616 147189847 655890781 785034381 884334661 942312620 976915112 218427181 568081939 721501712 974178576 517209460 921247836 763870249 992257252 401454945 621942415 99157956 736297419 144035349 547102329 538092486 547174238 880976765 945467693 828390035 907716583 461526205 828086410 945078972 965730976 945486722 986966935 25291812 250631122 251616121 855914108 168092967 594154398 180897296 988354748 882353427 885220853 326933688 536000800 690991427 968034688 777822654 847788024 408353450 509273632 358246513 449375616 751498870 760341132 447089633 958663297 385816362 555544861 117260199 308831777 788755973 790642818 3144054 802682393 564266737 769605328 447256410 932537713 350805826 801486048 830677682 956896441 510641905 880644804 26031039 661781544 453216152 884219089 850776836 947732467 289466263 903334474 822470153 856058141 583843962 674111323 792702254 827477831 278905048 589087523 606528387 706118910 164457702 971630396 676717899 786374609 864677320 927059743 737991618 872491018 402535824 603221982 729138336 905717077 763695177 859818592 642544922 721043136 6236851 213352210 751650418 778748130 575536163 946484822 158529833 685084049 923407229 937126498 311891689 632351692 39518788 543643792 496502364 576665833 220887962 455242995 427132827 545995389 855253047 878763989 747726603 894220017 180865121 964013536 211364295 819173241 834907491 868620991 544928167 757024608 954066452 995675442 48718589 285173449 18278348 515256660 880486845 944677675 681936154 836687580 339371781 399293431 322955300 399102181 204407761 532711819 100482176 362900367 769850535 837827987 30725533 915281513 122381825 283834776 655637479 986349879 118297833 740399109 143224800 755149854 722144548 911453745 961839845 970318859 977558027 989834013 423447769 481764820 319483156 422036242 370430590 607714923 708870196 839059024 626756044 723266159 761746659 998590388 820621365 942118750 311901357 988326591 143984063 504441023 767743250 839187044 348517981 412735155 143592731 500004077 693005395 973532179 411732978 435390371 792864300 919314409 8058136 398328222 435618827 819640175 385265905 906554866 997366769 999583719 10049109 220956683 252150690 723009208 861352692 956161525 519438274 570906903 805037487 858958131 409248489 957937976 974759814 978130091 506025422 710002557 378986998 639004362 813545483 847024423 730672553 846652388 247718578 811126711 22908569 509549777 656671083 714713508 682280074 867785018 550208566 568491185 179543728 487142292 980772479 983814777 83421043 477880979 165170401 894674520 173398551 597181044 77798909 87826224 840022294 889550917 782776800 864355040 215423047 765622865 20941419 691474062 414433044 567029958 971899709 996856908 518827631 811048083 502737434 855815267 849752556 864976625 222541820 941515103 969491429 998009374 339350504 688692890 226724049 415991153 271754153 578340547 788621953 912843602 717475125 950284922 241840772 787701607 697931768 856394349 391159130 627486374 796459047 980880086 445772311 518212396 872235067 884074053 507920465 942948415 130816696 893188564 234557663 719181812 792034916 935402512 181093828 681305925 325527255 738067042 966422595 976489336 141919970 364171348 669948790 760188753 338808443 482070616 644838008 747843308 63424226 467422931 98640884 955365994 940613360 961266493 411022586 481588679 269396360 698216658 572240460 718633072 545534399 585043979 388857124 822234004 592223882 709770990 581104965 966821582 204349845 255911622 458709364 630367712 250204324 554445542 341250975 348843818 577394598 669671378 435857834 739900568 959897903 972774277 104487602 389507645 223608729 718865499 197501186 638284655 846631187 855031215 941566683 966971047 115495514 692799845 142584705 321065476 349530409 877711738 21504718 740357612 72602825 398581852 98288010 385523643 280287083 630110688 681335295 824846914 441473666 756172535 64800897 244936360 202588697 705073746 891403498 911158383 558983401 927450124 412661015 609290725 716240095 961489417 835038257 850376258 46135164 301365991 699612658 850453970 423708651 831260630 810645916 965525596 831609588 948817608 240928010 959469101 230077840 839483543 172754045 584197297 902073924 907718885 906143987 954113987 159993048 168976592 98000659 577705276 646732676 671608155 986863114 993798010 199335859 830437115 983387713 988193910 77397394 278343361 663287810 723892200 795208227 795876643 196400750 207521830 107572 274722522 635716520 662421542 148440421 416467994 462128485 652072686 202511169 228051881 342867783 544271975 630035975 817169608 515505093 624175820 39413075 670124938 683386613 804401387 292716558 983814514 550549383 931665320 921660757 981338414 555036109 906677899 267429454 330472954 556881267 902155193 975061182 983745473 976195838 991772804 299798480 547267208 935160778 988207151 60324492 496679825 671071547 673004048 675876012 986341383 613307490 880868200 434556284 944731862 299645876 743889699 382867480 960908021 932477885 994945427 501200669 873883991 72894785 93505263 239784134 912169949 182673752 530012363 879057594 930827518 945501376 947722020 95332635 999063399 338650275 687810161 665511959 697725948 114197722 723728886 19587747 135872097 455399451 672289542 81039353 855722354 747591864 812096407 322805723 516154845 352177623 553201989 498736595 907603371 592718393 831177206 195811091 218351387 782583801 967382616 168804449 327156375 215398325 452995642 626823632 949593174 179691112 892606277 7457821 680055772 928086348 938407221 355801845 956176911 893793927 976834927 945446259 988339354 34238699 342823099 469766985 789712156 384099723 430355684 60294910 599665243 987322094 999874845 175138289 357712901 193918833 665650541 303985696 559222179 613978332 640029680 182780331 935088102 790542018 957797089 544694913 596609317 786744804 833447172 855190607 856925039 199326049 427996334 260859988 645422266 517957248 971917313 216756471 378150360 843744394 917563736 684729836 711911414 169843884 269337721 768832218 935930906 322473905 741518005 228183765 588889626 649529272 808137620 460021080 937827036 366222361 699214858 265993981 713366082 786756845 874083037 935596853 984879448 43885550 514944953 781245399 883686227 250348150 573363164 407076653 832330556 781689637 878503209 592612767 946134801 888128010 936979950 509277171 602321149 622231390 891274849 540950636 773898954 514348732 638151728 662463488 920816016 277790255 699224683 942106626 976844816 179103723 309610348 639759828 728606077 834722042 884769707 635102157 993498951 535598120 971217618 587797790 762811218 78853065 203468658 512951614 851051544 429226952 861898937 890712909 970294557 302012456 399618572 318638858 376824540 579574001 982364668 288499797 397361264 553693620 683756115 173382256 868495691 994262556 994408789 374810905 631413468 625811607 911608241 243130798 859264018 301066205 354517258 670139624 855170161 131170574 636525039 790988194 832623966 779208716 791977241 430871322 787210327 969223401 982737136 890239331 979558152 9219977 153895428 547871887 655152537 216352121 217164537 605649645 935507583 539436633 564368742 737021105 930876270 701826882 893843975 97850355 139464675 559915026 633777733 544578744 895270018 864100177 994686304 2897106 12174002 402225857 970294263 120045610 356192987 929441367 933596366 667576992 831912991 635905465 813958717 980337935 984388971 679877628 729376358 104415967 860077702 332082103 654070362 610264523 792389153 151232032 682905881 344343381 810581450 778678213 787399010 847240155 980106217 362028416 746708316 542907105 738568735 510679624 877791062 884882599 974875153 196948339 340311366 669686147 735294290 698959133 808250458 117023516 225566749 650046134 782925293 333808541 910314491 790936079 913130585 855883612 860304778 538000999 573930282 743768770 923707167 250754572 847729936 489346331 682887449 480822113 985236219 750812447 815938767 110510157 250388450 533357882 710284499 782108830 941400911 571577 925338750 401014237 450387317 100741624 127812222 22931885 874000190 307982273 954707171 337697943 625759917 10399257 731289582 497905515 842099882 574109147 915287128 826074520 867664071 223847526 539369561 968885662 986674684 222891125 895275103 695057082 753977400 210713862 635351949 980733752 987727440 876912524 970196682 438788895 469666406 798179871 916793716 89197360 832493029 714758640 843615696 670676250 817562269 238021751 332962145 180813804 490712663 962898725 990965210 493734065 566813942 703248763 808634491 788201569 849905339 425651401 789794359 403464798 829105415 972015870 984916500 936228170 990547082 956492355 977268141 76970871 533661339 792159509 830326075 13699110 926636209 870178963 958538879 758423375 980291661 49033347 122988764 590703776 635796321 661407043 670013729 628630311 802252239 279619124 973078328 530900663 900757278 59203637 386308130 513244847 713542215 325062896 774140901 834121461 935116632 214491506 369176514 493495928 640835385 358946118 771713161 963538310 965693492 998331444 999237346 577692628 991713081 505459062 916639991 393110140 477536289 367532389 391381395 377376566 939861600 454113652 894142693 865680235 912804648 451568495 552481251 832363064 853514970 377954836 406068725 31740156 798121343 548662431 838081519 888088778 937258197 100554928 133878133 103171970 762467137 118827008 468940487 147925601 243004138 879492541 890628714 137473522 762485562 859580407 861489444 922042688 980332802 367667870 914940532 656916444 695369533 838200666 909277856 8862636 58325685 143944932 405615705 940899895 977725572 497026060 517216215 29783234 472981900 595053324 679301790 197590214 846041206 930979090 957128493 671775495 853172945 236414174 967493967 789802210 913615252 349891003 666792232 699231950 782150944 803246326 876831044 965455261 969869389 624756389 850727059 816107830 946323253 118738562 767332168 393563787 412832650 859598953 965526193 311684957 544821658 571644303 719512749 819600442 873178258 503569844 706364136 985327837 997923088 568947375 629857864 824291321 878021868 687711331 883323430 448426117 962864462 242459283 819260399 592061819 880786660 965457692 990672362 142356305 919116166 486609373 907652463 417595108 961032936 727338287 978191655 926682388 996184292 586346270 664070554 977653889 984666808 797400396 956149653 65478097 441289336 69353085 432411718 765928220 806602639 465601072 507207668 819288224 859423350 488998670 892014498 232535916 316999215 247946259 970521602 723052947 791600565 75818218 891359659 356843661 933765518 971221769 978735913 259484005 929312984 563620454 806715324 870549175 938488617 826339994 919904725 659745759 737683415 384864246 564611048 848503689 907754368 2547142 941910318 628882769 879493454 978355430 984079093 721958121 931249166 550975323 770843368 952321269 961221921 54130226 894762085 540562634 755901530 913851070 997760653 297735648 447571066 616688809 811968333 738112917 744452076 612480420 830336397 459551792 603862480 160243125 599636519 293585888 511623391 905740576 960833076 46612567 582734554 613900206 914545269 735724296 770425186 241797284 926030910 332529356 671218619 909402615 950717873 501141600 657702255 919828949 936837306 932668150 971206582 968574340 969480710 73310783 954142768 163325348 463619011 940850298 976237685 575734484 848614081 704391454 847527190 478751188 498983519 669492542 961432959 321066166 431141776 773101406 805692197 159116920 817859397 242285629 940387688 514276622 560058303 300676831 967782850 359595983 420200818 137738693 352274352 740385127 779383291 853625190 985404782 644392359 872090628 423481884 664645814 529070114 607806242 410887623 947041243 237195576 573429160 739468638 976310391 145128738 431070562 801951806 826059641 63409901 195395802 719793009 775223101 819902117 897650747 617381182 939429422 410778766 832673519 634219613 856945888 124271916 404692273 472035394 769010665 814902068 903895665 647653789 792806680 741238235 783829713 717610353 929497277 824735033 916164031 239780849 337312241 659763497 720105195 718964881 774574862 611932526 967372000 116181282 818613164 15102644 454368188 50474469 908314823 19916107 219121301 943014505 963103736 727417572 966593931 649497031 783003834 896871553 903603507 360877724 552704695 599779269 810631710 183017353 820960972 725445009 798067982 789683449 935297680 542732967 571851298 145318073 804376291 437657066 904872554 829511966 983583850 774635540 992437628 847526074 894933553 241210241 343303063 300864984 778951218 460972057 760830893 51885750 863907169 693078252 778054649 990192991 992886657 819870276 982810704 128883093 625217524 89204056 107999839 479760382 921327756 44614201 901232555 810623976 879076651 195399220 367282457 627787003 970900468 675621414 773862119 902294336 954469850 52293022 349142639 895257496 906267033 859538001 967950218 28779662 301789410 663123119 865111875 134112684 506614052 43806073 843962835 590443068 862942579 59454977 68374092 327641234 409559591 13084535 373133074 832361611 967701758 744223092 987021162 540391700 919820525 470003829 852878962 700545518 871822409 199330458 950559416 9504192 989306928 948981445 949445235 626713662 769955844 363621246 483603795 244755455 494162465 339917698 499582634 986039204 995700713 857374656 969087728 17731842 200738235 299451709 968116860 624991972 628888004 251552730 456450228 501225140 903366937 69859487 524051340 232429345 997328496 617565071 932819040 297327067 826704729 720397243 931776180 286057756 315341940 381684485 774617670 544775495 859667089 169962439 947706789 873417923 954079804 726788138 765553570 320503502 628437198 363671038 573336243 42760602 733180590 618463984 857599120 659793317 871636502 133409240 601997637 880351239 896908396 64962312 191310969 224143653 352500304 672784119 744564642 527562950 563205613 2932012 829068696 103094593 113053280 465981003 892762894 167496012 511241221 736428517 871117020 695587006 710793115 164234223 575572290 688760120 765719506 633521326 675086839 840291114 931049236 32871542 36841602 142386276 205557509 802812839 990880348 302307533 909203103 628274860 724402997 476538549 694213511 380844703 686674225 758682317 916643926 387049548 601203741 268475419 417892137 528705183 963023927 284513891 641102134 689310163 920440758 746602296 748432093 872505824 966995525 399681587 475495663 628359683 742439666 480993691 863444655 588944316 972129564 206892494 290523562 650036268 877539204 119408122 469235204 893013347 978695056 690304907 907805199 97129286 396534498 714718585 950093317 15609969 402502015 740036199 943058022 341414788 416537176 880754989 883924705 332830633 901331516 564384327 644095501 487835027 660910507 769228008 777232302 492257032 599881399 970587790 987417560 2349462 119729754 539283489 683242322 42542045 508793535 57798114 206231172 884879957 935255109 830415180 925014993 298918414 828175243 6661045 595163379 68208132 839756322 17610411 811081270 418254650 972770642 66681889 442468549 969062117 989879358 153606585 680858867 342529143 613501180 908817776 941393333 642060025 675916567 674883062 980152039 677562702 984498252 779352871 993550969 986994723 998956884 505466981 734444667 264345241 318860185 168074171 957526762 198308896 566639142 102492813 980968549 875421866 956637273 335224228 828450575 111396890 644002456 954368741 958405994 165661836 869921963 393230517 843997321 149817019 760292689 166648951 346616732 911861648 979360045 579004860 935972319 780116306 986260005 596331359 927299152 528653625 625187452 777231870 996763227 535350812 744379961 1026927 903865226 846164749 975974567 591646891 628825465 71546367 408910529 102097110 123268051 235457653 404131723 472428690 705550095 347874140 789932364 54577005 418251240 358382584 954451505 869811400 870499056 680658492 742889139 615513672 958814835 639829624 710457446 959149458 968962680 676796598 757760479 407274963 506258253 269286887 354565676 962824886 999572657 814490773 886828792 145343667 420603530 927981074 931109844 5486658 118416027 470176225 956647394 182712133 737134079 355649581 980771293 174117652 989548849 615903375 867518714 368446439 786649155 812545130 996598118 935758349 973608425 541803743 989759630 398006986 499881056 9386560 993718065 746512445 796565201 512610360 827984035 659324792 811813211 904618125 983890969 434533622 801028311 867544424 961720708 775614845 836912361 447248957 499804394 896881084 966858600 855479284 917527078 215186154 986454736 10616377 673424576 582189621 822695615 940717434 974039109 574945667 937934158 126041271 645129914 991101851 996048362 604090089 688600431 174899790 502808561 218022773 895764532 82199263 314517972 701196675 823206946 957733254 965178236 24778313 212576760 27323927 846271003 880036153 906335105 165020914 343148928 300638406 884012934 682545480 850668560 451605434 613561070 852974704 936345052 91446488 656461303 11368753 837991876 120872929 879718221 402059407 787304777 753638982 815676615 541188696 789387958 356052986 567353889 287183113 591098648 613824328 984722816 338344823 675524734 872586435 958622100 562334562 769924295 301760823 494789710 925088435 991003503 273854660 752588572 620041225 794869608 872430343 943566169 177963694 807906023 480694823 780334118 659869279 750043369 948327166 991159403 263397456 356764963 490995040 808308720 963756065 977231004 160232045 289652206 349988569 974052116 921985833 928822080 301060262 477056535 554712414 622578113 838362279 847962087 497201773 569606333 311901284 902038485 337898215 690911554 993032986 999784289 176566488 377431942 255381962 941139460 72691808 295672322 921313800 941503743 235975394 731821347 773394500 798653138 158017905 319520806 704484539 909484828 673290502 796155805 253652812 840585326 546763505 603471560 656698906 876622305 838341514 884565855 815198912 992484239 635809353 917557719 483763457 498287321 936487551 997025487 744861586 887124096 640751892 955188110 369853258 739666797 988152910 992230569 315968337 758423397 614866001 680605854 906303843 987746833 113847763 430693190 760418489 832894495 858312179 970336886 533549085 871243338 219291522 607716787 876951013 975735225 725198667 925957293 453562814 522429763 328505884 897450361 567987332 844468960 104643951 256984238 132700622 445185708 824062775 856073733 310509094 458885803 42021167 193176747 212949219 839748463 709459111 978764339 18574982 882550946 751395706 846843885 130707912 131064047 883770095 957887107 928597763 986886239 430157425 842240713 852587653 912764717 582399669 814866077 113770477 350244346 829790451 956271388 380094713 920484071 856565732 895701793 88323508 627540953 806854735 969978734 536905398 584264748 464454100 946556252 356005102 760334813 115314495 430026674 714497271 735400356 678311156 878487167 766088590 836951019 144039106 596990141 326483698 575909125 693812844 810179054 678710330 692481906 101192863 985634944 227382851 341037509 438787817 540197828 642505266 995989579 288818479 435984396 585873701 882913740 390260182 624722139 647109862 847722692 682230460 760038618 211914763 821816079 984400019 994643289 691186249 966088544 673914125 915766125 315906713 441215946 926410793 978757446 952957191 995566131 878854192 884009301 258225143 588007422 783966155 938695497 514301818 966453651 949178593 989330432 801336629 888628204 537864135 925404586 363558104 788484504 975598915 984434560 32954786 96373978 70887075 834386231 210380002 522659913 374065670 914619195 475562579 531355120 225761606 978296520 135178496 638969395 565710891 712711435 658964364 997960563 747852749 865801864 901414837 980799921 878290087 965188568 375631255 489045874 419238165 422480450 802682784 821051778 371572659 711861944 878879832 993911479 150414057 990638044 560832014 862588135 679464028 802301697 524648720 781373378 991423783 999192369 103997282 363585155 18152909 65190215 997012815 997902909 97507424 350710296 564768310 738184648 981799455 982385595 196227290 467222213 14721860 593300908 223279645 364480181 182752023 619527092 758060450 857162376 103522308 317359207 893400097 939480949 451975129 909193454 749414700 890231348 540065011 895347089 350304416 694892429 169863953 576271509 460702426 587662165 79259213 428094057 906173582 906769662 289526319 660000512 845804718 846476004 423599968 613485959 542971366 938027733 507102251 807274052 947537283 964304455 656975732 839842897 948793538 986401795 765641324 906906414 896904911 980636219 853657752 931193730 79344545 405982053 701665462 859853565 164364781 442863109 61527243 273885695 429133017 946186972 333714286 408933433 725432454 831927205 427571518 751298741 962197725 976527062 49802518 441188667 441938933 723508204 411647419 948643150 694335082 980384842 363239163 810445393 233056739 249394857 781783169 966843286 917717152 948727557 691187397 781472180 954422994 996256034 29621501 306039972 641163253 787501021 577616257 744844392 399244448 791523405 867691533 927170570 307404649 335015659 348536615 669587422 841497240 947330600 113976602 125659440 720701143 722583729 256787023 272808225 166468162 393279606 341667035 887493454 545130966 730523139 587597901 747056815 338674816 949404931 823073972 835719413 153760737 250710827 915515490 953497213 17682253 420154593 250585728 688331802 238700081 664262761 939058700 998751318 389379936 705068019 728898881 893581200 636369721 820723315 287558033 287612066 165160755 989562607 583095224 676033116 144438774 469733983 510537821 853113635 209604886 480035938 342252259 542692810 382105450 772743535 565234158 753635262 515919230 692953237 459967688 700262483 863996874 941728389 566522034 685951914 134858852 959628535 774085511 839762020 219539673 851057540 376568489 473033620 389334730 778040256 852349869 962343690 488059805 632466465 314516291 740755687 727054842 941492837 513522636 730479411 841958088 992706344 124038899 147553755 474701714 803384860 301163702 782683142 700566527 922093348 373193075 767635607 967736412 977559067 545034033 652843739 262075032 706809203 901348627 990095561 189025063 873178129 350135482 531935866 455543871 859516288 469125647 480460011 647651963 803450344 86783581 637633443 616666997 807185666 968988353 978684180 579196182 737356743 912348086 971003525 926264930 960516997 120975946 321125038 311459939 926142357 918098759 941421300 890647153 987740859 51549340 713033657 222821924 411920174 665494031 890574716 890190666 948151536 38391735 304406556 76847151 241371661 777668371 891465935 341038407 625002514 580079584 900091225 922346718 951729289 933399490 935808931 880567638 914414237 489130949 740765178 568942307 991625272 114619981 560621801 631745388 644112386 168945387 184304569 268210932 965030582 572836077 589837041 413988585 826626269 366091390 662192638 622225086 937898494 748719942 809249568 372103018 844848508 136004345 849323626 428442673 840727485 990171028 993436830 858729228 921897311 37012958 562087311 644531730 703934426 90153640 999569918 833663710 833744170 413342538 952346313 394014066 535109327 290332488 767811467 814414075 951460039 251810388 913454044 598334257 790359512 733450664 754414475 890844685 959872934 458930489 937443331 733840668 786152152 753273332 998696151 586902409 637606528 322662406 990046654 766855954 804932071 418795078 501930101 753685166 810109262 935281220 984894679 590599937 980250444 113883954 858695225 227889025 396591584 825939762 995831025 767393065 862561618 539719558 841140426 688935218 946776571 968092007 987171212 210103367 806231248 330441160 680815558 816876033 927066676 722213349 985962281 573396409 809870884 315867049 331214022 803698042 988819098 599523391 714540553 661602693 882445737 391424040 520405344 424688346 495574098 366467614 622534469 540991782 820511405 467207041 937608496 450272644 659600819 671681421 878580639 592908427 724939596 681382936 962800817 836570383 916538689 929958582 989531081 704244708 851865603 190953176 960685592 964373506 965965333 559432938 940263629 971538309 992896023 150732575 307698716 931291713 973756475 751380291 992280979 27980464 526242021 431248199 520743523 778321358 964481391 476178347 860954856 309877351 741751161 948112807 992978639 780808323 989380027 876765091 962583149 979612107 983744887 565139708 701631037 166328825 674512997 643795913 960511104 63152419 374218551 762932741 915955819 754832989 825789583 429795170 851626219 451954826 984188237 764495122 915778721 70875201 361122884 930785977 970033853 218991709 792463129 730372990 787798798 469542172 909389952 272069911 545580113 517058660 564414972 810907733 983068973 559804570 993795381 667499415 876178362 529574368 890417827 555274952 752542688 798382021 865426856 587774313 990899581 512893359 601928322 339002034 754057459 129356063 243794028 48851546 595790591 432393192 774399305 434412690 584185355 598300680 664030800 256704425 797116891 177511907 604819196 46244051 394307190 419717202 807112573 620829167 804987323 79067831 80819346 814577530 910869425 574202491 706597083 137579106 753332781 31000751 211049897 279338333 949984841 848192221 937644668 924979209 967874098 756236072 901510788 378786188 722891402 54131506 396055754 554871109 896599597 867588772 872312253 372084815 859902699 368265673 961673099 71766865 540687781 820509761 856265028 211028272 504832548 131373000 248595699 249857751 997849211 726784292 885735679 329882829 553948733 887773967 982657034 477880409 731125790 242750781 415159403 574860593 974333863 641516897 760692903 695744857 736788539 423345423 669218098 128931888 856387950 981491439 990291614 656576467 995698669 829730313 930378303 883586713 892427302 575838120 652504205 235680977 758697542 512288328 994275230 477311671 888511205 314008834 758255155 810018284 929839115 677880927 827454067 33616864 876027136 979943407 992849858 563711538 595055085 804660550 918897114 494002740 946502875 927986111 960615990 173807295 885118800 482350752 643310645 710219700 859605458 960519806 983426359 779593607 930913451 188814841 625254215 700452386 836762359 271052611 752786547 193502411 519323526 624913021 959432100 46035651 184020862 262705170 327553435 687018388 688669519 910467998 952187746 827906424 868369810 416809519 759621450 451004073 545896779 225216797 349043506 117876704 605450853 858378853 984517729 682641097 875063492 514465015 724557059 865166072 931762984 724980503 929536533 168516983 923282057 614250981 678058986 152324447 229960270 917264548 936421639 108712986 782516169 840716943 861139183 122014792 979833532 911985295 918755182 431216908 716809784 431853966 772574921 428162601 691936640 800015763 957842151 885884575 987491899 512721407 622525023 682020454 852217255 369265254 943589806 626588514 756716427 999311871 999443809 814072676 907576303 266504012 910362959 837502655 906522583 771653306 775116225 825095779 935961635 64089426 800260165 712734064 987177462 416368397 911202603 881248121 916624148 537057762 665419376 524616761 900922823 197678502 689688282 354447877 802547443 674949623 862212664 535751311 590653757 565274560 899272851 851628787 945235341 249884784 611257079 13508896 917332126 173584852 262453240 839255091 943562341 822801337 944185168 389180833 815718276 887576266 914318714 48015434 364136581 972138130 983643312 740906965 860251314 372516462 572663665 627015650 654407735 994892058 996443095 186583203 419449501 323937390 374498342 700450767 745928208 278198479 667313729 217052518 560716990 229849916 409917467 219200218 825722235 287625706 302764685 829170366 834980258 560027524 857721087 917556671 979275153 285628949 950915595 179058326 763965351 28262309 602915238 819411764 920959219 605872883 937626257 30235207 658814597 965439662 985109551 249783210 697213431 655144305 789690516 278681939 421039541 868637791 980790399 418678019 513455835 449792790 909674770 908343981 949895193 219712959 549343379 922209448 977267149 877646495 961964446 413075298 693747946 908186706 987190887 762065441 852800963 727451057 801885901 607652015 967984721 590629186 744725492 99646465 405990106 567718492 872907954 196024466 569106250 848769958 863020142 418504917 510472439 95223421 410832634 852338296 891031497 171933015 870046039 604856721 656977393 410706573 666402724 296908732 358733394 603636597 805061441 60974399 690914353 39965737 193131987 562497281 913534455 8037820 964021286 86659316 284265208 116776956 975831751 183789553 836608720 760778449 924362547 98779220 368053428 342774537 850201014 364283060 930846980 761290238 945068029 978526077 998476568 105678228 425841808 675137264 945892441 584221398 962455499 472046672 553905784 745785387 759257991 394947982 978471283 388598844 799323721 751703408 811346182 972871498 984365371 680220309 730012123 72144702 272352823 294477269 801256558 518451232 696224109 373378278 598395108 412477749 734049083 968883342 982604284 969842371 992768210 602753395 686669159 451757824 563471632 15880096 763597720 477924110 717934434 469232262 616828682 448008273 698521746 60591985 124203795 180360040 892027193 485035029 751362191 594891699 641677151 27459930 307150123 477217903 964319990 829671206 993711725 869106160 874922592 925068186 988193668 646546100 961571330 760024411 961881210 362596152 864616856 581283700 843586373 142507707 821696500 38043050 299627451 234562954 724659291 193409490 791353411 718639658 840404222 827123742 913704850 580902681 625069045 476313450 901129961 912712918 980831952 779800626 857461247 740087611 915663448 902652514 975073481 749556093 927268065 422017944 690585384 872316458 969126613 627346662 958827233 883780310 984134944 813173795 885538875 595560823 874350884 206380455 485604853 144998313 417093539 480452922 990227934 31349103 638865935 384384916 882985516 151738148 638921974 559159104 979941191 793357170 990448933 340888522 399647426 507442865 850835859 467458537 723244150 113488899 319391167 717177142 763397160 131680778 683053531 376937987 504565003 440566289 933787335 473580114 600805897 455792859 863045556 181267600 212941409 187767143 755904490 6697329 953880796 713808359 989977169 522997850 842689706 294649343 984324512 26806227 377506414 30471111 260440888 902693780 983589407 812677958 884941344 319347821 982469928 652134288 965560657 185137038 780072707 699692799 905965149 912384973 979308662 89444568 575838083 116103708 933881077 608372501 983736572 633851898 839773572 153215095 804976573 218539301 666347582 721393177 958560345 886586618 977249906 619333104 934083634 492969271 718598420 402353863 453303932 133374191 515470648 925462037 944716195 461529719 962874935 35308763 138171888 637233555 836566838 154376185 304212382 118576944 684853881 477537583 791632510 972674203 983176401 737560959 841368065 902335988 966028772 915195868 975785793 658150871 855145341 469789850 995136442 863537759 878423376 88281332 193412972 267653249 862881622 77515757 85922688 190974405 637905819 941403871 947214613 739617878 812106684 856609930 946003440 60179953 340417874 831751148 918760140 683246394 854485272 824483205 990979389 663783536 798952995 515196559 889308451 894553053 902927788 705056709 884096742 363658910 534428746 54606591 969915884 790707700 991802885 33038058 256513808 383933224 868671611 877778998 957395978 596817874 887401208 416845518 548637737 956380902 979098626 382279170 695585357 917533202 922720343 724616401 964631192 523598017 855612670 807949902 836154834 446736256 931664632 940879210 956472261 23286701 572793708 61296018 987439413 482930720 926167933 369016649 534162910 289222380 539897575 891440896 924441141 367967747 931171035 749766082 877484416 608745458 821750056 849054392 983924213 227143399 463811381 587922674 712418428 882838114 964598658 895658563 977864586 865307247 912471195 796605125 901980031 13032688 245560355 647359306 705905913 678997106 976989658 162500885 678373400 805141358 903676093 491964302 604789189 253970339 257154139 522062228 922480473 558998449 721954523 65674573 564421012 361318346 518781684 789715063 912159429 708455872 772754042 871217231 966222043 454125258 880042875 704136040 904608124 153665617 808564910 86534855 643045281 139921654 201197009 973683790 993143178 104312005 931043104 230549181 932205321 501186772 854577355 182852761 504480535 431368039 464287258 911640443 962343831 17533593 230926518 912358395 947480650 846588983 986214576 768785625 844724796 296356812 575537230 93710300 972432702 549902451 964722465 823896441 959913367 719220263 885497521 480625506 710866089 516876125 799462040 103519228 144877862 990292910 991543692 446782476 688417995 357055668 878449334 940906780 975849849 901388623 974654960 398354025 552943190 60411032 331824583 906257116 993762990 181787630 827499246 20289658 202811810 326391620 549196714 797282090 842066401 850059259 946776588 900238543 989580918 942333516 961556531 837706739 986517071 374430103 714939610 425767974 562350379 232532377 866131255 699701106 716551224 923148497 950324213 239911473 890611090 367873690 939372940 703994466 813063578 91903398 450686313 664982140 974929363 802758027 876162855 594304942 972105275 419273802 544929057 594677767 835632005 516543916 652333702 298489707 889891259 160446217 654720445 448584907 927155283 776560987 922139490 428378079 459979077 77839550 133348748 899843868 909464009 436895745 824304372 174860869 499708462 983681470 985021316 934732320 948815751 442198118 590061128 216075500 333293930 907090766 917881980 309651662 668451989 277688215 570058823 968643204 982316808 658584844 780653114 823857332 913479940 787824117 829354406 750463468 943323880 28518092 686968934 204088876 917740151 294313348 973213438 411964729 912327009 189897243 564649708 640832941 829518413 237108622 905171407 155823792 867309759 550001267 880437787 951277487 956388827 280898829 643757870 234766569 572824250 269256462 915764581 523919488 645735992 331227090 878236525 663817546 973145831 365702729 803856274 410325454 671117481 81146544 474333074 765532377 878960697 442528138 595151144 724498004 822107739 916164998 987116987 844776093 909623027 275393394 911804717 149311510 830466478 428600779 780432290 897565626 987902920 174327305 311126203 922161585 977737259 852244652 918133656 585376139 750175233 37428206 690365776 229024680 757161163 948483162 980871846 16844845 783759927 230859202 991965353 594757940 597450977 742243088 947611364 670388323 957166367 199447817 422774407 587061416 643593421 758460131 850176950 190412222 820910869 528051393 838477843 693809584 716567631 982507800 988871642 356277595 393136220 64119270 583134532 676621455 961011803 45768551 868619315 892553109 918599867 477861591 947631107 288763775 500544349 436023933 469518549 948981195 964009431 476342336 514896194 397604569 557249336 319443243 346797077 165076334 751506012 16289993 661775439 333402974 466929633 515494525 641336985 524185056 608261247 319641104 469587724 751705208 765067116 124550725 445085650 349181018 399913618 53514976 472268291 738521643 911285404 510061660 988643145 616223804 964440063 742223214 970107392 88896902 401287115 139046452 422475170 410813385 679409899 251107917 319257715 702507470 951603453 638940445 676409566 844169591 949199284 699074999 703637655 211300512 575978795 197478955 441130361 799017629 971324939 641954060 668690191 205046861 232552564 576579932 598700845 371286613 467361496 877877726 925746940 914574190 927317731 132336738 188284318 645498881 941930809 659398124 750371541 772615716 976890542 895184226 918929921 93004309 790033374 550424850 868739370 466342907 740100223 460208981 730840776 272851463 741991390 463744415 973340483 150172618 813551795 943368969 989273330 330429171 549066868 963390633 988450566 889624259 899709334 994330022 999103742 207902797 977877285 601849797 991526263 49769039 360194107 177759342 345433653 99100551 868846440 338387118 574298568 221945785 502859415 628849219 979398117 338145715 849968892 127035256 799510695 292282511 904304387 703767709 824028857 392429374 557278157 819944676 871111220 775623161 963339536 441788029 947923736 139495163 926286170 813646429 892620655 76683919 789587841 593692583 856656026 54454937 236338312 241058712 385880775 188085727 760668807 666737764 971970307 868067301 925697117 714169728 906623947 536393479 563382161 230286122 781678054 440014278 815345222 902465758 905613871 281628057 801545391 766097755 800423296 775204722 854400194 808499607 850773368 221691836 656871082 673568955 708679869 729210961 981620218 11964132 53538862 384848370 770229551 438483476 825540992 990880775 996057984 844552713 946384316 170497053 533136756 533404483 554738652 281201223 662759289 139354551 411363725 890193207 951850084 202184859 555067256 3598145 526535921 131122470 965297879 670466308 747332494 759450213 912238853 980877687 991732494 172405 180120575 155838520 376986901 596683310 836535475 871988 90348263 146206879 653213006 505188384 518932234 897726814 912078086 364715446 535423912 597689576 723346096 549166760 686532357 657757615 664841429 291599271 375835599 408656094 843564957 218924541 995296720 112969577 326145626 391870003 420616643 269582510 340220879 353779955 744181263 401714033 735587454 309511367 447359963 199973717 383843720 64118836 115517972 67167825 403030631 48580954 443863515 381042241 562128239 937426002 986077175 871279713 909520423 883088014 912253481 851650553 943870189 628667149 942444858 383449516 907799885 86052441 322745454 473762809 805815956 652678661 704764049 314858679 611509880 407474789 832930633 939939163 989165997 435819555 477211591 128245324 938321702 429534924 710366345 548588342 913491716 155795814 372554171 889488256 909692480 615865769 702137683 5013286 196881315 426023357 516695248 885691477 898999773 947323979 989481972 608111715 671580180 868067612 961631783 213787133 778244340 458400324 524090720 198332490 605422859 156307788 456617816 759505911 972428347 347578511 600616197 363622378 430752285 379440076 416905859 516733936 956624582 827694247 890479228 544809611 587322055 606295615 752924990 602882415 801368348 633731261 964180563 185694624 647543286 280956132 580434615 834829520 992078515 800013867 950379617 387575585 512255093 326505894 786656554 900988260 944831395 425636955 893485942 901561704 936632316 943463538 953828313 322253608 848305114 127796668 418273217 310214173 506333530 291011255 923974486 936013073 972963987 414619541 618959809 129944894 856622026 382189360 393730668 778960248 985762621 562086525 655865744 90014911 475878481 244892313 723558519 253154822 271186083 304380434 587624386 542783558 770300522 496935323 640836585 337847429 450396717 502454644 993328728 491911124 979997518 540678264 938599105 520859470 654902606 734129759 935762348 753190690 927386901 577246790 699672161 401065177 754612792 277448953 828013241 567281304 854217475 546103083 815555276 403367744 917760646 200204907 546228241 810860240 939951427 547180691 809788641 966002448 979423945 769299009 878219892 892028815 961229715 106742723 498358408 204972648 376198262 580629467 614869160 678210232 876943642 388410291 528206607 581826101 899688633 93674266 250028585 387815011 587847291 234613800 974253071 218572118 504171219 483979488 808437158 660237402 876157262 370750713 908367812 66935669 411701346 394612827 427177611 298337336 367383143 500683971 546049772 932671020 997145186 78240267 514652679 153304872 365980512 713047791 715998056 530458974 856511807 844207373 987846345 888841740 899590584 887548778 889967624 172312006 682138693 219164087 674383540 313550430 874480313 988494439 992559962 970400146 997390456 695289484 722524755 904175640 923854146 97206840 401293106 212959765 296848840 152531741 970143323 327138839 803596491 11394484 688340725 59722382 791571520 2828006 835003037 865157051 910947356 659756594 676570920 480653503 583872445 802158698 978932769 924169268 971568808 634916245 943813978 344364761 390098911 911948260 998404482 166529567 333670362 667699398 998934858 420861403 807895905 581729716 993804185 959119040 987542019 577673 130483256 645045383 866365551 387238485 620871136 205199927 412535843 285047822 498295759 38754546 834344738 892912464 926590296 26801152 96900226 532625589 860161591 410946185 853569933 840613275 982033664 58981518 183878719 658333777 995719319 370716462 872381744 524662143 980131289 357046004 953764366 430972081 908908792 775765847 981204453 350703157 753937746 944267761 960784370 775905719 858675140 821402101 978882556 368637413 904702996 64420255 437497527 747438985 978842149 262668981 313565337 791762109 874542787 916901760 992254126 735250294 886082196 347689018 528999244 93608882 929361457 423770312 548809358 684589838 987909655 616399186 665583607 512417482 582975311 527661656 677015812 115408576 439605756 163564736 168891753 449594759 595178633 135000628 244907955 405496702 891560130 285490739 366128250 351890407 832268559 789979900 833288508 999489064 999640191 211704083 500819668 111614481 656650333 333344366 819029191 648897583 727517437 33920517 128069227 18179750 863736768 834178129 928105403 766929093 805560717 742233993 981363640 541097233 794745857 768172137 961491388 785997403 847061824 633955436 984622867 19157827 496749296 659212892 683276162 717245175 803778136 496358205 874608559 621135278 900859710 300835353 490385308 608885813 813212999 191377787 839811055 598214606 904403722 593727070 795370121 731452766 775294552 231897363 604749897 396232223 697007550 898135961 984473885 230856579 984896171 645486773 907817871 535692070 550822553 607035592 848445694 301539575 622903351 513107261 763071917 562640292 839176805 773607820 816371646 563356749 857696937 623120634 882864897 82997777 485885518 410726311 854499175 565840338 984352198 595083039 812630757 397337364 409674284 72640335 500038073 700116544 946682757 324448387 826511952 130197782 285594512 336313801 947585235 903113876 951234163 748284736 927985517 938639871 941128736 192612532 906259035 912897041 991766684 78610722 394840590 403320442 710561761 966434677 994541230 883543521 895792544 984697380 987749689 587104640 598863368 568642835 868818901 35755066 755551617 860161374 917031200 935258631 960467333 248283903 474412619 999351013 999442308 75105583 295232641 985976286 988838190 887804376 935931266 700473368 887085077 950218310 953229130 149288352 992799224 623010100 966893645 434944473 697805069 910208291 983831392 36366810 165953101 538392640 850157413 963164746 986099946 809247890 969698744 788211978 925076822 886119227 961193193 790170432 990140262 248272156 954221524 617649829 738792287 748148685 886869210 81694337 870575470 475758927 840122783 357590425 786193259 393749616 808550549 25981479 930573526 106044510 397806414 592237566 623735271 277881075 911258216 953947041 992696219 675044834 807287238 252703400 287696645 936346485 993748605 464317341 517073802 196588205 198140818 314582339 408209694 952042398 985062512 236395910 699566793 201294333 559009360 403270861 620970184 29191933 896733595 894003145 935433553 296221572 500814733 777186116 789214936 303272761 421864326 804256880 974492840 800490288 920271192 828573086 840772136 453466892 806413999 31760662 99010881 43047936 893471658 300180673 581680221 250579449 283338607 878969799 974856627 996851280 998877181 908567325 924669145 524282821 951986117 603353958 796729476 547800632 943111781 748578920 998827696 332013704 756609190 391952295 423293202 471405502 694524311 672072602 963356643 369439602 447461544 559343145 622590724 305371923 997461306 983380597 996682634 978016855 983944102 410505902 733229967 716393332 919743953 210389911 997893659 186529890 878518605 718836861 922592994 280265011 952844153 178702535 408839552 26621721 563222046 561412045 616244954 522982428 744493026 373174884 386655581 177536601 215308086 833871328 969608497 872561357 999199750 98636941 767450122 952417118 961737074 660888472 866547024 766263322 811224217 725567705 961981978 395296541 592886677 286121555 567233005 845025849 928405166 343147914 702467897 885239683 902333507 385886363 904981540 559699917 829104127 517118547 548296275 257440986 917756851 524391176 804618994 515512658 579270643 161005231 366387178 71736787 392757861 762596672 913450550 129321187 684811215 411347421 732391406 335028131 557371495 159202265 843028254 20668494 458656754 958362361 961690336 189152152 563195160 980098582 981020934 533845706 631302205 779377434 812892538 869042017 916851144 285673499 826241729 734363085 760294033 592282333 798368844 320270639 814146450 998701008 999731560 707117967 874717420 815413937 929339787 492218964 971613212 951466358 951827144 255979407 310056454 626456419 958615943 938339255 950470662 368657977 677902559 263299228 504302024 713697670 918243681 294483576 439758710 861376589 896768183 500623791 552465785 405997666 858798312 693405774 836419730 225827645 861524084 133204076 355161395 192814726 381325590 677686072 747548781 836780519 849730543 810106913 847962244 478806861 942244497 535190662 679697589 467994946 528612785 961943329 979096441 989185956 993868770 857996254 938876631 772768023 978177553 669645580 972357296 385728973 519348268 691668161 970760545 610397678 618975315 873514882 922263676 569144513 660520699 72522931 280438964 679725783 773592894 247360233 806073175 412806128 685310040 158686108 826349025 794031267 938964007 500971842 957782641 260403223 871972357 743829219 946860975 823589376 908625733 470294983 502775470 752715775 864790168 495690946 725128649 556654317 885425138 57711959 614783240 295997084 383216688 367634975 417018007 73038581 82599051 957669455 959200318 205938888 952263188 298544004 478575541 141101168 442552195 755751941 831476531 236344625 436511208 370755971 864516653 774944838 848022626 919634516 927995933 839194067 909747073 597532798 828111890 243855932 264777428 155298877 327338836 180144335 741698118 512517578 639957518 60463961 405197890 672179064 694617592 873029226 916340514 150242136 442831589 744078719 992844421 19506486 367804112 294478666 469404538 780018898 910011763 820587228 865430423 197624103 751363589 232063163 464507117 433821626 634641289 432223897 501645463 385139198 529675101 499226074 713365979 716526752 794059219 333597221 687582737 347158088 418635204 966194887 981874199 866577859 936431795 71980565 209611471 409623743 898833649 800515278 874901531 513579017 680307105 656691486 660850017 455707958 779721806 600806870 846118345 97554758 713421564 526707418 719087819 445369595 853164362 590614900 787091147 970765595 981028343 396659477 560982589 613566830 840770984 711915445 756707177 188752483 399033508 551506649 699938629 455942642 735875946 923655353 959209172 464051251 558540505 563994472 968169408 752335496 790159964 582455470 866043374 222896948 319435877 884014210 990196763 701974208 707209232 290186245 951146344 932707935 936276472 425300519 693062961 599000119 854787603 220786813 820666237 317934308 684555571 933341033 969439495 895142744 999723499 457598952 829127448 893608627 927467272 841961981 853530509 201975951 827315145 497173328 608648323 369441378 934168773 339322724 439378394 745121412 813625642 451870458 733023775 334093716 708911729 257840408 784403183 792285044 892016695 80957432 469156132 405714191 680731133 794583529 905686780 765681214 890137385 330638991 368619108 858097642 960262456 937033976 974822046 910201626 990526033 81284177 203062210 98353106 217855087 285762709 961973760 89497937 348269671 121612264 917808683 799720300 872922509 227380255 331855050 362436842 504645602 563094911 631418887 115463004 678731206 244180424 664575475 579337579 885656196 286284571 719090149 593997448 987793107 186396034 203952749 975659876 979432327 79667287 290499996 730357083 772917214 926051423 940749444 505600676 999842222 407298135 856561473 366354592 868365723 333566735 537986536 133333421 897145000 495115851 857501627 739384319 801433575 769882826 916493311 658560389 686503515 34035193 159804108 757221630 985500019 785611532 945002984 443184953 836348642 173284951 732295023 126311194 199081492 93415633 836850319 245498973 725226397 654158153 879695556 801272804 993160929 737914518 898736922 167129839 300905816 351467212 807479564 27420847 342213114 144595917 316792586 229509980 689492014 745147376 791132784 353354520 854760964 239753451 765686183 146810405 688877765 309991940 829754695 937550217 941822247 832133210 918882825 762035359 812951562 689027365 937371795 206898103 629478694 232096673 828734446 846875185 873526338 363289382 806074647 565005631 604364962 188267215 249636266 742496705 982221656 62881056 210819605 11875907 45876704 476138581 616437128 220083614 710075146 990899743 994807682 157974201 870885241 828619638 858473670 329763133 781694009 604744099 644431621 379852070 757949458 67564435 443219295 707085082 957529052 570141913 852020375 186116751 248511272 144094977 353858751 718818460 971007260 218397791 337555859 317016640 520382748 368434518 567176910 576639306 765272738 847492594 973358183 558483246 754093349 451611572 773903159 868423391 985936907 473697208 762940529 66439502 136200581 848390544 889902754 631345480 815514408 975887739 991298721 867441161 887641326 271927115 444916848 501251968 648002091 634507807 765105237 180914464 629073569 236627317 587804322 147651112 660370832 43500730 609715906 748405151 919815257 954710522 992819775 617081492 939672361 101303717 304759796 730062854 826841788 942078164 981340160 220877574 420489254 755409720 843593633 933624560 973322291 719677549 791179239 499436907 792103946 875215805 985366108 702563868 834319642 652043269 931912867 731008610 859142429 436187769 579653439 195710621 956474696 701791492 887970752 581041029 651208678 363212857 753591264 536335962 860412022 363154278 820412959 292205020 354024471 16806440 287393065 716484371 770695207 119007368 850967721 349527336 441801432 942441835 952937112 92399652 697690375 679077797 817104354 511772090 643377744 65118227 664486352 501041078 620326948 141527223 873477929 329243877 814445650 745036953 999158999 138274303 660659121 341367228 766242812 138422427 658072090 178586837 563166744 572860951 641861282 528701445 840743850 864342365 943858640 19467102 398786671 486653984 620001944 227378714 673699811 1601790 708355582 487991843 503774472 560419009 684580045 480826203 773890317 314096643 490457548 199149374 356484298 500053708 931448480 895141204 904990545 763915271 921201896 832401866 948548753 270331760 512580662 787594464 855927753 459156132 483288325 630848911 954382398 627109106 891003553 739402361 769957215 744020011 908322287 967261986 989027381 979018834 984403349 729188721 824559781 404186450 855223507 813565065 979014124 368892973 774521747 532704108 760091466 571976524 597160595 925490319 989191801 780203333 889097064 197808286 268177267 269057579 392969692 169291985 348596553 64947846 411718938 10233232 644463570 141308107 598653070 100408140 944984818 346806721 746846902 540307037 712387725 504371992 721393295 851482053 872143906 511358073 807434003 460565323 516058428 215249441 479166243 449128254 466363166 59238075 774729683 929544490 954978739 593462006 659438841 594490799 794631967 254703638 566601803 340685932 755530701 883203071 907827694 247539839 501066777 17585891 475507387 398615153 481372746 92724105 575986447 935191218 973139844 781734574 829669701 310469703 824710670 331219066 523812946 554924114 918270984 435647787 608091268 866908110 913588636 742326595 993152194 835353950 887988457 210255357 932514531 843960276 964554695 582036230 825194434 297433976 799252235 538638908 879870467 922483788 953681998 752864152 795068645 437783664 784496403 71994267 236201239 14205892 207751635 975253013 993847739 498255088 568665723 147631697 461701455 979481244 990286659 612682773 724882808 165630747 718097891 565691486 684922314 346365789 930135219 40526904 62546200 7055136 18062150 71976122 557574288 891496783 977406027 780942416 987038136 663983736 908234936 930470756 983898267 875736886 982587973 696416232 898770528 841481601 980207926 178832333 604608070 974091368 975818838 250315873 272125859 78731148 397422750 93947345 993399489 424902132 970213789 444025529 521018939 300714210 961814922 922735846 944997781 384218028 691689447 974546867 993342181 258508914 987106012 370181027 511837181 192862715 319974974 199542472 556291046 944461736 994860466 522269961 660923421 744881991 857822262 485968724 504963362 795668993 912750801 757954650 966048882 849800900 906273776 181978107 672030268 861113645 992166688 892234541 933214063 648609740 782689387 281469522 660946751 109836924 161319476 937382267 944127328 947353865 955092729 2173815 277758276 903697170 999159347 137569877 941994835 290831024 768279069 539942094 742296698 383328316 552918324 95925444 372748754 690239214 933901680 946225988 957031032 850949800 991977500 497923806 816081796 439337413 910152533 79256012 908679605 413185683 694255329 434961967 608980870 539731709 558846775 594185631 695430598 238435979 771744300 764229953 977890661 803719166 805916029 681164396 942233680 313340436 672401114 944486703 991877619 388228072 921712663 294597923 565698820 623614781 867513778 528909346 943103685 122557678 676541314 696254191 959442783 128018339 800941114 489743180 621574555 969412849 986892481 388665817 528548438 516728996 615053162 215153581 677896941 95058826 248838924 19964886 124066991 482990728 938564966 185711860 920215977 50171364 925357767 795870005 979577903 110137941 440935918 345859050 582958235 514086464 992198275 729885260 764317873 413418300 785016879 972898362 978985147 117835311 762265847 410697189 625335358 383870447 897832291 155956947 300381940 247555179 803675086 183018348 779269282 919020995 937077284 850906108 879545401 923657987 946092109 990229195 991640892 833037237 931311820 949383846 984334117 390051596 905231600 109472990 190849157 585679715 977017666 386976081 699752131 833983589 849827811 304023972 855575467 26021608 209949335 922387004 948436137 671160139 994024896 747975889 905728858 125465631 692591613 666777376 992051318 658198954 785342397 7976595 285218658 462189240 799274486 483389944 831707195 638638385 867606885 644427968 858164713 812327674 830277297 480866516 584504680 663632121 947938477 92757361 623065498 832781747 995681445 479984361 679171913 585248156 849404087 601705516 776618162 628924142 744651796 274750935 769741831 827147161 947686491 843250436 906923364 868407081 871864655 954843717 975232306 557607690 921186044 744780165 904253607 116234136 685034439 739127032 796041381 681394599 912039636 679136001 729323637 390267954 486240610 138237364 386685310 748526673 755939442 130708373 161252931 986387437 988096951 24479628 58531449 626767644 904554209 369048353 781530319 956834707 993235087 921883354 948962248 955866292 976839369 722484856 962500155 617561801 650873446 465786834 481642622 153178655 659295310 981526969 999411601 755550374 778667107 312960851 988303666 896667779 922601300 10738367 606500232 294430447 895117295 395051484 395949600 79984909 220279622 801792494 907777135 359453822 506311587 154188991 771687080 846920503 866586536 574484532 945874921 515198484 787828812 586763320 983133454 529260438 546873082 711992263 826613034 440323442 509525347 29134356 413720209 778788508 835567311 514026383 927368807 521684563 703357804 525791798 578214712 863809619 960293038 117575432 535243246 128738262 178570735 321805931 974529203 516363909 540692364 697235253 816486952 604567948 650276401 538185441 565281998 391592610 640382580 145575674 905654710 673747908 730042287 427180342 960493914 372309718 713825161 726157309 890930119 474885847 514983593 922758731 947607600 434549095 490236289 271000669 887686608 712707952 965708376 163421441 335630762 778880050 817911486 853035483 921395976 397546507 560365261 382853231 945926022 291640323 936968652 34446641 682276184 545848668 702472849 478047393 514898082 524794895 702377415 280769917 904411504 923424534 970684672 663683106 956421485 991298579 992634864 36022792 684774678 419244006 582436535 551211818 638421391 98198112 251879748 673206725 697676078 542932819 769362121 425577272 856868768 400249646 444761713 898131839 923968805 477947658 516674230 667936674 973957067 606115674 808729149 916146207 958854970 970932158 972643076 911918179 985964600 110607027 944949555 402340328 651448055 978360436 980281261 299103837 654097953 379917784 776177537 980198315 995230012 157377109 828908043 795428418 992401905 777895268 783521720 167301584 649655689 123591964 659291780 37981807 330763913 348435046 661917475 9023427 316711690 670493411 907210340 287857207 865781959 340591949 353209826 406449072 654976467 113776445 631676640 383290306 466530835 374251091 606978248 998686600 999303110 95524672 309752056 626009523 754430256 162067179 884488863 148294608 493768508 41487596 406039616 7565711 438624599 217131884 962210816 148127206 456993448 999074386 999471636 715514047 990662467 908955614 975183623 155279614 492244480 20064138 56162469 493981710 555633453 505821538 688380417 633472348 732481296 103681112 467591598 355207709 577143747 415142641 581368351 56813515 176165877 78947430 301264471 179125321 543008950 567949660 925444283 610776465 651030476 339344875 829979716 471136363 589900878 957109115 963010685 351579228 844687191 182502931 798617693 32040217 134428618 517277398 671649209 830505639 834821019 103180702 591791225 177260579 816746304 958655434 989539366 467942625 821267453 595112832 853998072 741538543 993321210 176510679 964204799 563148968 695462426 242520787 525223840 12125071 625570940 997890042 999829732 459007435 670883065 842192768 919693858 736321741 883295260 465758564 769797038 640883947 935256909 508913267 538346411 954371757 975480439 504634408 856296121 807739174 913632750 51845519 464693508 68636195 326390440 777660315 800366516 388257764 994658626 112216007 512891475 557500665 700590439 572345807 971497808 659798280 833420149 857327925 898583861 668713469 749353177 461480052 731539560 231705624 366073979 859604317 972585415 450656259 972257844 461388883 524751301 259225521 782215623 407818960 774112244 434462091 896394638 432243597 731483600 311760738 957078281 756349209 890697127 466517451 841413537 385018362 788366797 926848034 953322579 128523911 425183534 226782244 501450124 80381844 224891199 2795887 748472556 987591234 995976257 928733436 947213251 51086469 352918012 936953707 937053511 326721972 738114918 99855890 779439100 431901217 704657866 556981249 654091284 990784735 997433767 665983684 798734407 96263208 224803265 262315349 502628055 917084666 988106525 959426162 979877513 568197492 951504433 692973346 992431387 164594977 513647526 637068023 973447371 789094741 940809525 296493271 881124942 533969093 939761757 561601418 962902885 542801632 639479869 445715531 505050664 781419364 952886400 236137964 695631232 939523517 970716757 335992623 862146712 223251919 653407444 563352867 943715151 667822400 884252816 307287655 831002047 472927132 728867425 475113988 691639921 883289536 975549202 486577025 603404991 365806625 967964495 176959108 549584859 373612167 405782624 979596855 989818270 150159576 882887275 163023518 386787664 348640370 565776631 970776498 994354158 74686835 145967808 520522354 739437145 769789012 838503707 195583227 384615677 345486013 699538647 175151170 974525745 845570533 978343010 217562763 470887162 908323846 968483964 358374305 811641642 732778190 820353076 946244062 986146389 208690662 551931172 399457716 798667008 75332766 324914842 434087968 802570683 739556938 988424813 184113947 596408601 995365245 998076187 836138143 963291560 831901869 833997112 376919487 637959318 549884510 859044747 95203431 613859847 759922129 947364329 162228325 970748148 600372498 976584977 982041178 992794672 142960386 616453299 538008255 655005076 15761300 737641124 376110160 861782145 284886145 542530062 850662339 853445177 72343864 77627478 162629075 411607608 76800949 438036473 530990724 636093587 291020971 770817718 104006720 644782605 125932635 791445988 147148796 765161496 977421031 981330141 715883423 761020461 307585333 655414487 999987057 999994834 811435993 895722555 987197923 993659089 831483528 832757220 843197240 987070618 680068088 921006278 65480304 851659899 210002085 817812097 392671596 827169041 743073817 830918145 140613471 763867758 102182721 719096443 276613863 617634807 566227824 680943781 218401940 694274659 89248781 524154940 913112495 972671478 833851919 963661794 890793752 895765607 160448615 269526571 937923558 978884222 250743961 651938414 791051226 977929399 290970394 561742678 420282837 914281625 340662776 868690424 733814422 806447426 465521417 731306310 720179464 739449086 432809006 880896912 958946437 961819871 925646346 928296992 538409862 881093997 378565178 941081667 644927670 891132557 939231346 951989564 689498226 905399174 752346218 846415439 530632474 895405667 345745632 984587948 538197262 597404011 693847183 734400611 511006258 528083824 345447579 947970166 172428934 826036792 297924639 851946959 634151240 989835167 298681989 559707555 221302800 938137122 924967112 931523589 298132339 433028103 880623382 960017021 793126933 997400212 924337460 959469883 419965001 480040052 60961036 168662909 796987797 834704626 686482653 875800417 570938516 957968930 769942335 992401592 26773682 238996668 369032966 851306160 294969469 586809299 951221125 983467938 690699096 807171233 796835352 839968691 670975151 757213990 387789082 966906343 701071261 890156093 984771970 987348617 799020203 904590987 743994386 758869303 100772641 457035416 932207012 938249632 375548172 675423470 198570211 491755930 343117892 987714386 37236957 844409978 36070771 335921278 697049588 826659170 518803057 550099599 284796806 858098348 135069450 526664298 355700307 983048306 641363466 660882753 168683340 295109759 899923576 955635291 111851698 619791292 313376692 876738886 797695741 982963733 989456661 989705794 30951377 161853799 495309828 592434921 847774129 994538847 117342147 392771261 670442562 898329269 541491248 985119219 535168145 720619626 784713121 889665377 141292002 764485398 380778888 747299656 133404205 360462761 985451365 995017059 673805223 736326735 954088902 976631295 304853419 870522545 43802042 357676808 603977443 883759041 740980430 817119977 334938283 959207019 796874203 911389247 888575746 989704310 733266165 858896549 909951506 958377723 208734303 417970004 722537918 805184827 489500556 839700903 950672332 990559971 763548069 899122340 327888983 619532343 339956803 530233546 357959311 599250325 32628122 650670657 545036284 985909433 704060510 811313759 368362196 550027180 57691893 963930176 756597339 909068601 238060058 577537034 583760355 690364616 788712670 975753163 998300852 999168894 120495434 889619245 392543283 915295179 697231804 859295984 870360552 924413878 871912321 949384649 194596974 437861015 59816855 188153406 896414082 980097694 103011425 137060589 150716006 152076360 155029284 430252359 58111578 633941336 765619551 883690800 885575571 939335313 857289564 998337981 116724733 427875503 286436177 541473663 64834216 787759488 739847523 895063492 544053810 598255626 869268267 874031304 202640965 257170687 859222051 956775922 703955754 893340331 253649746 570439611 134151881 925524216 614307676 955373977 895279419 930585892 189694435 400498938 695024574 931492602 547390075 742201120 641169498 802727498 632908478 912976722 383944867 822104324 777623611 998785664 203077155 393068834 215796242 355500629 360161252 549430696 655673284 895918761 149335081 773154015 863608787 894016035 443074318 860679608 21476695 34396149 825134276 877307568 13618777 756791192 276997297 761498972 686985576 736501508 361599672 842040989 826200006 960741613 454453831 709339070 477489460 699737132 427214066 696005533 664605068 994706866 207906672 902792751 563984873 779857378 387689431 831618746 591475838 618045508 952335978 996374611 206900658 757493418 843835458 941927863 32079070 567551099 520959548 665796333 449817476 973760123 322000083 654916459 846275431 902636786 93526230 270230251 602629980 953604516 178338601 466611243 109765416 809980947 139054818 770835878 96527252 707429122 566970661 759324760 550738746 562000881 278482440 941683353 923537773 926220631 303844531 652031536 559888687 676956683 389584549 931715340 852671451 858593730 23670569 142477385 841079812 858935211 535626918 831464934 512261556 805982516 690433736 874986333 925534696 943860681 368024344 701147878 295287326 412784016 982001301 998503270 170178523 650813482 653243787 850305055 899285030 991920756 883405174 945603209 229213614 484748734 303824996 772917211 261414573 760055569 713648874 862973773 85891598 573951558 909686159 982300688 190224305 192971189 36174155 364210055 162674817 205354717 307282423 930743729 670952084 836978766 872928454 999928481 344262743 519565670 619873332 926753529 230008980 235633376 848796816 941991665 805365752 815150206 249655972 368351895 270792579 677414455 738155539 901740920 627526204 915695682 663376360 827323368 469210782 670435158 785619041 939164174 191030614 361273026 702077322 843082475 666996321 680514712 973798822 975013731 450187641 703984921 784125560 785409008 650202225 766466369 144121508 499761958 169711977 444304452 653564089 901024555 93006086 433289958 749237137 811162678 913807598 978158690 896849005 983406807 36505655 245872576 768331193 962931981 390065207 405158551 514547394 585659068 206558965 407164082 215648995 852049194 807316268 930313105 144165188 903952477 623106417 687389865 343363205 834286589 23581128 126200763 378805221 576888060 236799211 652576947 484526631 769904093 616337725 949014987 844832391 987725934 13802534 803599568 333570565 344204888 272675116 989137647 404922054 668270375 909489400 919531806 448823525 605207365 853509820 915057685 568947796 875831641 380525166 669965894 29786688 337314856 837578694 869822869 488435309 907501842 851457578 998513717 95383144 841582779 787588597 951260492 357690232 544559464 430901117 445840448 232409129 593418156 181517360 756477924 470678453 615647661 944591022 950271536 505953233 605042871 981766794 985060018 110000326 828199506 911473887 969281129 725781292 815447763 90010970 900616186 939341682 964036977 11600757 876158905 640230748 829865605 321299515 448422823 811082419 980669886 133600668 143077389 191911914 747199961 664666108 726992875 765760053 975268443 330075158 800956406 821452759 860261767 21808404 113611173 223090773 277280842 28617946 726000298 285897343 307711746 768573884 815866786 341789292 678133639 661543038 678455414 482460870 935683712 768168424 787512526 961015998 979296926 380014196 804571718 227483701 875488583 992225656 997279990 944788040 963954940 24600201 505901829 437482546 901809613 516485834 578635730 138299078 965341421 397902850 417621524 287904038 676884726 662837878 766085151 9381699 537875670 363020376 497745403 987498599 995234438 965480736 987492349 566299867 591518970 248475561 537038690 326785528 684274337 37895698 739081714 285014491 873131462 19690585 587333130 138020260 614119033 174716767 269526432 743406215 921503982 553568972 754948394 518479621 768064346 517314297 988361761 319752045 409912790 695373717 720450622 499690663 928835151 589934484 648253462 737753292 824541756 71010153 816716414 533809911 878380943 21591337 360417931 708057758 708549528 604598978 967521464 261284378 550100316 893598653 933490814 885260035 922908023 520916264 610726389 955886646 978374025 717582664 760137567 528169604 810377075 545475196 658359251 22986713 743663641 730186101 941711939 627625862 774156064 842656479 925626662 487556017 955791701 882681102 911487113 698366309 998432153 166963812 503965638 289581564 736679104 871945908 952614997 100922302 359054755 150354302 699458303 403936474 625229960 159246598 940994489 298929648 560273132 762422761 995216562 866097499 891542921 680632009 933165432 284167539 892182939 91463643 195147165 681574384 934178766 485922604 697754889 991046968 999029094 143756192 505241222 920878401 944107443 293414819 731097749 94101680 839376732 62649112 772199493 751278259 783609281 25678787 735342231 82309219 883853095 698961045 838035877 427089060 968051389 166892291 870875583 455575275 674593233 163710114 474035962 897402980 926088458 452597325 644419093 41303287 376905778 670214191 795751691 306483669 515411541 989838315 993697717 274167372 956088660 444490953 856188092 960742462 996210500 188928161 319579362 752692935 910811897 845087230 845258274 17815280 443399560 386021005 991254872 553883363 853331642 114536246 911661331 32005657 958076681 93302703 284609996 433864153 499401710 213880727 322157055 942348721 942454531 932257258 973196618 171550640 818151114 268418452 579269888 246224047 291072694 833610204 923675223 884994869 985581949 126186075 169265119 535438898 677027419 570436477 615479717 528388175 544319577 331432210 515525342 447208016 892003805 403418672 950304189 919469412 983658679 199849089 331815009 532303267 744671507 881873835 909935193 83991531 482282794 777013852 786823144 674239514 894687492 783769587 849878806 89111058 630848399 706078399 810639303 819458612 845029025 763671483 884662153 788796731 981863462 732574205 738117867 854890341 946052146 482350419 602851021 701722491 785050297 803256790 822106339 762044025 985256607 300280780 797284295 320813171 394695151 201609840 633618802 179962098 283831566 212168550 806685617 283513322 552204929 844865613 893065457 933087995 984386833 796546129 907195616 787026376 860687431 141213967 918427904 45377591 942216262 446053136 558240123 728508912 942230012 310483258 964330149 260038349 762526628 127738084 502154958 820663023 852812423 676359607 718503771 119886282 459304858 882280963 950193913 387627825 741223255 961244774 961358491 867136108 993016543 575773592 615619649 596505075 596991474 172053885 990679921 532069808 886391476 184957405 993629035 55293701 305078359 631763479 736677478 554449962 830685265 75891535 511415986 749859760 854212041 477820819 863075239 969916528 999673841 320175076 812802526 117633296 212298725 551219182 650625635 1729013 35115941 565665344 806568450 231984342 695337999 984127239 987539633 724452282 871150463 781444943 886526970 445439084 445938231 737170724 886043026 631571572 862910245 219197307 536073345 638541691 674989542 376031614 784388388 110317312 270253554 765332253 915401405 831967172 904771477 788556726 802109927 313432352 734715439 951412695 977638206 319668194 352561619 78003593 382538296 527106228 679867081 6789745 818703706 185573054 449341187 515056142 567496459 394898765 993821021 388443118 827870782 657876705 730209836 681406257 683243668 356175665 480882260 824812282 944338246 546427828 843646531 878123692 926497258 711750861 903386542 757615166 918464854 981504432 990816193 657371760 765697212 808224057 952449059 326640640 893187558 730338924 855718884 96465289 560132377 394308353 788346926 836243239 992255367 959720039 997418100 226120709 237073584 816901575 956848874 330574186 859059445 145326513 433703414 575133148 606565931 697035213 714495580 276664764 931231790 149329137 990779801 839890545 885329034 215583740 889642424 467521776 725437310 494399552 543146536 970096441 996174381 649739341 981946745 128852884 839145619 118250203 649784820 328704962 976653691 48262872 781232763 176931514 796116986 263474607 638498656 705831631 849152069 548956699 682907446 167142189 562958821 666595828 990155424 509288965 680072012 869256587 896983475 819958022 820296908 642524162 779538373 333074447 471540981 399170178 488559459 332586407 957115522 652772793 774732155 337565413 928137097 565741077 612188740 432315523 857155719 521886293 775882930 568823610 643230146 304647905 832448026 630618981 755333662 531303227 886263436 17339254 282312425 749210891 764792918 825709904 939827730 542606666 822340462 753642237 753873411 101948979 261457037 163736952 835817236 102873092 126320204 660339920 813139891 18420617 238121462 527445703 769669820 928543629 987470238 727854091 803936953 251033428 536509314 599459868 852982240 742249262 983944871 9866456 108410923 176726260 730673759 994481022 997565520 711213170 857260965 514298264 716678974 63680965 320453883 408193004 884610809 111999149 445771101 903383185 953567088 198327379 802001111 319507143 346118627 188216671 874384304 316633180 471249839 284381460 393649273 220931800 402396396 125347352 256085719 771020568 791120765 931120806 978440072 69353467 230367112 565120577 641292740 904784133 983822989 239738853 850436491 62121052 954209483 981953227 999043740 940488513 997615016 729711134 805491457 602007107 949035822 876257505 969326300 127421178 176816441 971906503 996464886 717040802 788670648 880501554 931321666 31476496 936758735 956346012 979386717 797099369 851688227 350436485 821580951 237510562 665979190 473218980 694517994 472550992 768379842 674455998 749226251 907540859 933123467 242599613 483405143 515158743 546026785 184115942 263372636 617931159 764561869 109782693 892486215 167154821 848802526 804110700 823855366 817046668 904675072 81184046 571543003 446182512 584048289 387492081 550670877 902255179 968849184 928775282 933582698 886016081 927651461 84420874 464279395 617466649 960687186 391933629 999525287 556409866 574230564 734359597 949923147 367493393 782534441 712745845 740551838 537924408 922687909 315139826 579073742 412903834 640601637 183372664 733272811 120642272 427441996 845280301 993033425 412275927 790368545 723679301 873644696 996186982 997150715 642418384 763037404 562863424 912376909 887065200 964387056 497184947 570066142 160935828 297338276 916600844 919696508 477588738 876396470 882240576 905198087 547578733 610166032 817878928 943542460 861407054 919967520 532204439 690908152 28783484 727892596 308567052 403186882 46782008 290668907 336488214 434782909 357587263 991523218 263915271 370576188 472192033 843581922 562357492 821044768 186801377 833774696 476564545 729607212 206550519 941898705 362938184 403987617 258086606 409144621 114305851 616003974 987349566 996639753 882786623 886320257 327906956 927430517 106654061 314718002 709763963 879008793 621009 624374941 665379131 763526402 511275674 639064696 901683709 945159040 67181983 921773576 576261272 578214422 6581164 184921070 976485471 992583694 841882260 979458774 773596090 949521955 427991018 855252164 724574575 796361415 117507909 799551081 940663435 973197829 177193983 534209689 849152249 878302281 151195909 273119642 186564553 941343526 604506595 647571913 427156929 616612362 45338720 771663391 783102268 941782299 116069327 753656955 888296110 996696320 841628177 883858859 756745960 915861926 767803514 807575971 796058019 878495614 827507118 918572674 540151887 936821897 870887150 956349126 573247993 924668823 632023029 817815868 541946983 633980981 14932937 988368084 456466921 802217899 482196518 579339397 944625968 973810885 686178148 839123056 42568726 683817144 738049826 881321613 304059715 546308496 728225973 760219741 16837730 984868113 732092674 848606769 546605958 869300912 814324526 883982887 393160483 637072208 229566366 665280634 838665026 886382281 648238045 657043620 194545353 648912558 68839578 815151930 972642798 977191256 551529901 734395839 639400600 978667982 940975293 951539752 306860445 621223834 943235764 999558133 290756458 911598480 927988026 953116273 955064092 967188423 35902741 816688725 576102425 753466057 256136837 347862757 742282897 769384526 306685185 380049670 235085599 884551473 35009030 986907861 417588562 837047740 525010919 824773417 687519375 867575130 517952289 865296825 984650705 987217593 315315618 409834860 65251995 619345675 395534031 978009206 588919330 733949015 195841110 489589583 651014431 697356787 471821276 803751156 191026977 824055364 191545642 946559287 524433651 539607009 415945161 673494490 694447789 725589152 614867466 868369894 273017345 737614133 689020651 717881269 126412188 731595228 986111621 997047297 922743056 926956593 534319290 951378506 727235290 822508055 771723421 930283318 850921590 867424171 148094712 859084930 879007269 920430122 77568226 653779103 71808390 565963306 894431103 904038556 771371264 958485995 869313573 915278654 651255317 766028354 629421439 868358612 962040639 967717808 139953584 892505809 235603659 610825825 65129918 760825161 797529874 976337984 813189532 970639943 718449012 833715839 345571615 673407869 101639182 276386462 536056489 995045348 312121024 449507884 264161122 666969826 940026117 954591020 602140682 864320964 507360161 677520442 556447461 785449194 45680972 211975400 402210909 688976375 79627080 613684785 487102156 857063347 729788457 745753789 468292336 512213187 10348350 579626619 297936736 799871086 685107747 937477508 576876137 586982289 566498521 851387116 660898697 729637696 481928811 750522920 935465202 967827689 370463714 482388583 531588520 570769550 646975406 931933401 919702281 935177979 686305439 756271665 551445126 890090203 508937442 768458774 532232193 806066898 846797320 906396361 980486583 984782796 222460736 801481272 66206874 311474593 740206766 937000628 450491036 831052721 924671030 998408117 283157576 942228275 252486593 952413344 565036638 832572829 130397891 430912339 646267554 709156818 735380380 746950553 413455705 502205139 543274800 689909852 155612844 254844186 966693713 986489804 496055048 682427166 649168591 848110968 753314749 834464800 922213922 954139379 32044009 615546549 394700708 727877408 452090284 492765939 869774701 881933137 167776690 963328149 113895554 498037243 405493721 569628600 678020627 956161496 280136566 959634899 798834142 863206336 502223690 967855823 752099114 779019138 78574477 996942808 205623335 789838249 717905466 771619293 751159429 839141583 491091505 908270677 863693442 880869922 932460031 953740507 96412799 292928523 899409072 928413940 359731305 429752519 695234023 992127332 357998889 975911184 613143120 810724165 388139543 442321199 22739089 77296945 821110705 876164092 32159848 120620756 634150040 662615673 239265600 530543975 874266052 969348679 920795523 977202687 572391341 611374658 746845847 921873752 216270694 986383336 937543604 983749503 512526890 808021041 791157077 910792897 403743174 602482117 159979972 297105063 675828604 815361022 344605308 913319267 542846548 694026800 11122519 122059684 731162830 937112526 894592304 914208884 142111022 255489186 389350873 873437193 106887732 922776910 167503403 417008653 734316292 776402519 181527450 274270006 304589461 520284642 211694844 869699801 985291632 988026920 437578670 977917127 228855880 608346406 271740101 652366247 216978174 796824723 660357109 675649836 820356107 999148656 297791738 496195303 791822858 874159975 829096706 934784326 82616274 226454083 245577642 999647163 274188770 949898862 911934243 974797831 454566172 815932026 816661081 917090906 542067711 971821525 18199627 492372389 578355118 794714307 622329834 958705473 757983500 855069115 936711679 942890763 407156986 471183149 689406612 775375508 164119906 769110862 235459487 815494541 397082135 400498033 896365743 926637005 761304373 820491688 244175949 622476739 504386780 979470425 222751715 483447578 107214331 313893551 766722769 823139861 650513653 797982700 956573908 959490326 629349675 704572893 86986421 792124781 248576549 435234258 363750780 489053925 350197494 664522285 413563176 487467686 875478726 960301622 97949226 529796092 758776346 817595093 369669296 637335454 248834247 779699955 957922931 962947936 490208152 875296692 155443304 294265355 271353703 355819822 68347523 753548392 917472097 917730689 976369011 985657865 372780231 972307634 667919864 953254443 180181892 967148457 976083461 976794921 25121512 87482640 395310409 872083335 566756044 757148211 425022818 646868672 27844617 436105873 379605011 554284999 725865668 748017422 178077468 949329233 527267278 877623038 328417793 352270349 851274003 985933701 165354575 168564214 68872279 320635013 410457931 873035858 836543727 855384709 149764153 276797023 522743391 868837276 503294098 847189449 106071952 630664890 487588019 999827144 338899948 718529462 922077659 960024693 682965739 939653553 66188189 381881946 175614021 392302195 822188641 910695541 528819291 686072615 448784635 593635306 593257645 596098134 476609488 797877879 619532114 950416378 74350061 830540824 838878995 990206413 492009049 711997620 984484963 989736457 857327348 996574532 181642303 311565607 736566812 747814942 781844842 887563370 915510856 993934550 407741187 549509910 427271154 610014802 736518107 873707442 928792405 997826443 86584529 202470565 993445138 997389394 949449269 955453371 936419724 982269862 143124860 800590521 783811030 920973735 511905230 623813279 354924168 607427725 328838395 463384272 424625735 680088919 866764981 893646682 768611269 947694248 731239147 946741221 82069244 277820469 764524404 989129771 934238350 985360954 187203318 373337121 388114067 452221623 109025240 577626778 558340250 784270190 394218598 736111602 428887694 844491885 654582072 923651320 929143253 942282715 997236510 998046122 715076046 784194234 14748600 215277910 120679092 417887569 623318538 834017885 991720139 992780012 745777203 856290228 472708318 552505243 703776367 947737557 830379222 994047626 15449675 721221392 928999920 930337025 852051794 998068751 519141749 758777079 620058921 897325766 597450622 611255213 329283468 852066049 84357646 812284672 93899467 819045199 946212486 962657472 292548824 418482660 160500696 584634172 599853863 870928713 350853341 973364008 360428007 610200873 48320413 776711399 56816156 906648099 567892258 859075830 324409748 475907079 995428067 997406241 811663592 951496285 31528929 653164546 97822771 744602707 441920305 668506184 847171567 991983315 153745363 211238369 833351272 836568741 595828632 909332470 134471089 505012082 824755866 896297808 820413525 868150569 556403658 602736533 40281001 984635448 786017258 939800610 21778355 422709244 895942712 920509398 35015865 87202055 245924703 332105481 975036107 997154486 954851025 969950536 459455111 938593274 731709375 983396409 543826559 707185653 770022123 937650140 745065960 938957913 399794515 709759422 163825225 758249203 314119126 352550893 417803577 868048116 241288388 726959704 989852656 998693324 888191418 982098572 215890587 726560397 164894113 507723378 260149348 536669361 461264260 594077714 186020365 529121699 995416405 996974150 258494987 960513108 144490053 582460920 246936423 312189144 272966739 754050499 794231521 859263846 827718050 921491232 563616717 568283798 609954597 685977532 77499071 728785812 555309092 839864490 183027363 791469486 488369458 742728659 807176444 968011286 928471911 979417932 319362994 557956034 990199759 991411728 913910178 919199865 881952868 994199077 668076040 843325559 404523924 941086809 285376594 309761716 218455798 476705557 206025380 330967222 206522180 474726457 771635899 781051568 835125901 891152672 326167094 915034889 384954065 899220806 697157742 785117581 553705717 806923749 219523266 357908414 615891795 779689830 61712031 720110539 258176832 703083027 537633689 723439162 588661464 621715962 265864883 972924289 366633333 739549646 931808578 949163264 803468908 843013054 594315927 736408827 318813926 652803098 749673734 891114348 758129850 893738151 477146122 608077762 912283230 971935075 806627619 807813793 705183763 879789220 250376897 776429557 893206058 917276361 485667901 852424347 67774029 676499094 753857078 919449056 27443763 294107670 179212202 915589274 732540103 856840335 621590255 704571171 495386609 899750953 776207909 924035407 584419427 868853621 300922659 785161645 821080262 913614741 846546045 885112993 624893909 845238960 639296304 963498777 890392652 949577209 547417115 622629504 134445949 744588700 122508567 748244649 497090462 674188188 570759834 981245298 241358686 340023309 1885870 780020548 63912878 548904810 676921875 952063651 756838413 811778253 995872085 996855939 982507324 993062885 348279357 950842742 485550228 896514091 552249615 893487296 406055977 574307106 587956489 746445466 504006561 801651576 916215873 962515091 291886790 785632528 385065126 835554611 538302265 662966723 684346227 865238544 476786439 608352534 309030944 338758318 296822384 606992660 127346237 714920233 599489236 725517892 483047240 795317221 729342476 862718999 731854669 894429309 188150544 512688923 96719133 338709483 376914152 702291197 870082798 872222620 337241339 665483144 309552246 418177237 243244949 264564543 421492144 829970985 680092838 780900576 819589229 884405633 848927164 896597232 311525371 467552888 389769240 843496631 495807894 753963155 654754506 676912769 243285616 636192113 631375066 975205591 595136290 827843573 876156607 977839904 119916504 555869119 789170714 963862235 362618963 896699040 792401464 915817210 836341670 907044786 805579488 851883936 925866389 952989979 923429999 994908512 29479246 206953129 673196511 776847101 139839093 654439084 418048268 673265708 728855844 740125848 226011323 338861891 484234965 569455880 366667038 643346772 460492598 552202200 114098806 342205152 847275370 881156381 425444336 827689945 876296870 929816160 557649530 689431460 311090886 542291232 872303710 879364720 746779404 754749660 601571966 742923197 598033778 830752412 343477015 601027476 237443480 780482791 982263647 989850304 529239449 904037188 847411853 935210986 265076849 640652586 151874550 509216072 906097993 957629649 867956668 943166624 726176425 882580796 398417119 520253540 667763645 759188465 526915168 993862336 707512922 910347302 906057591 960745038 873696333 887335070 269258977 792260499 335218138 862158343 852735937 856664396 287108819 763151946 416408874 842453980 615355985 941222585 496342519 794199103 954905845 982678474 698103536 756763768 571716149 660761804 580159384 939271629 742071784 989493091 269801647 796758657 927398095 994447601 397829006 754103661 274932770 925277867 783490495 882418003 802244592 907583435 822394075 985172340 456281239 667842004 750529271 799395712 583580609 752966938 634523674 918317668 675457391 835157647 825842238 952011297 324953896 463790623 382008385 619231215 25729144 950185460 198376704 824356785 667338 467255651 230535379 910542646 559425385 701363851 97231415 496847261 916809699 981043750 471751454 823848464 14977112 289911489 195245421 230464607 212280051 598268277 452911936 889758680 467344556 816578568 900220851 985753430 153756158 811877830 772985347 839004647 873337283 925810006 325495175 788215276 602093413 955374044 524696664 663767694 788239330 968065506 229310937 997192270 296076129 409097729 609263231 632889832 777980345 967104622 11531830 112046900 727028681 847259536 75015974 726757778 404060972 510227328 727428256 814829468 99403796 793664137 969897341 998723492 962848473 998507918 702883545 852682544 744272213 976018699 204585131 798574835 841407541 982979363 423799564 532105394 464360099 651493073 305073288 854272954 866895803 964256418 169101901 358850558 148772768 602115195 638505017 644691799 357287919 473543185 231329731 399029329 205712608 359283499 26662263 977446763 103209280 612103969 518490641 530071539 62090011 697602243 53140793 729267780 904107579 950094721 398873619 607538558 553497674 785523106 344228112 683119294 850229803 889197260 906532081 978579774 213931186 433295307 854272424 939344620 937065918 948348546 701820214 862217576 787728535 869928044 851719054 959074304 147474116 826255026 396159079 497921998 314722862 973472027 580391909 631820637 554877973 902114236 484033323 672812677 503426905 824558774 735043849 962313720 350876814 736611093 400866832 629417612 191532751 620505687 322926661 399572354 946610012 959024503 892563567 989861078 302188534 366943426 292790318 429500163 299029908 383281799 157720841 971721890 315043494 841230528 990332172 996434950 2606326 53355592 240539565 522378062 150760038 995323445 740623047 923673723 49661463 242650191 235343817 566406929 399515952 809983952 869253444 893294365 76067016 829897256 353282241 429108275 189457010 799906260 275597817 704695370 94911302 149201873 366683450 841640304 221638065 701190813 602639926 943468114 690654474 714916873 968925006 998839594 551706612 912418477 51365316 674781935 323110961 707388190 415608089 527388429 123529669 584711987 792187367 948528781 290726123 798224572 21780835 724447911 23905414 699855210 562043455 854147404 372802862 519423274 239150353 364305939 637927987 996263181 6504414 686684404 370080080 631929671 598635759 773092678 346821157 636358333 514478592 710175191 543759613 942761666 358245490 616031029 941727308 977674635 223448565 966109741 236051780 317929533 121233024 896696142 234242046 828021314 800143180 969770692 174608580 343160113 300523876 677774405 2138825 824188477 939699501 958058343 215352852 248754121 74552553 483357303 209996208 541217551 29047007 913678932 668890827 790330986 240184142 257126041 821325040 985514088 477124776 606975279 609559159 915335886 566714401 990806543 622310068 977011343 257054978 599504686 106647532 586977059 895311812 945627244 100787278 625777623 277770179 380145279 446556218 632138251 976494180 990116495 156146599 782727156 311273296 638306284 366449129 748643294 935346230 979890678 749298288 851681780 612595827 725237502 679766961 850511105 664215329 977591153 484802430 539180222 51531198 476016933 283052647 338108719 672818464 871539490 327975443 408525493 536910845 732414919 695106813 714385689 508822702 990320922 957195853 990167974 930471282 957914748 33084023 600026728 265619505 851019273 469144490 486374172 909830065 984752486 714829896 910366806 635055357 987214966 588003310 725186064 136223282 489607407 19037722 530550159 182553557 230975439 372068397 606263848 698866770 932814691 194830961 982144240 619158444 706642398 100510924 696401758 11014941 771391463 97268783 566423857 612594652 977533952 893268125 893870873 162542020 450588952 554442484 857402146 154297723 155881053 983134209 996985940 609506696 630830765 781077657 788541509 274861881 280941002 172224238 437996291 225671398 232083928 578761127 864239511 234930627 522712284 55350586 122977376 582449099 706898086 986127007 997356798 958705862 994999656 896488517 920320808 212617116 622231192 70588465 124174487 559724978 866323241 180907797 922142966 382113038 673467660 739552021 836006852 652265550 790407867 782907981 880274920 487105941 943724945 416035780 899392561 797630048 825483419 240901412 414181683 669419360 790343963 813555420 921417158 351672465 468147813 801945238 864147202 544316335 953700932 804346640 926553152 148523806 205826912 151893895 329035420 842375392 940592093 931756540 965721086 660335302 719981155 443592045 822267913 759965823 782042970 327588338 784419616 694313925 786278296 372764603 737407105 423181103 880341121 801504497 972007838 709938682 713661725 301630843 692640310 562713057 995468553 668412417 861425588 427410191 814955991 963044890 997168542 461767440 712858403 713089497 918504447 179792992 845443307 171424010 251485561 658901558 961749641 799161120 801980398 268701937 886208876 308255523 938878777 815100254 981497102 44143350 211098025 318177611 855589325 580133360 617888948 371871127 403881797 160174034 857294186 517318875 914381530 127619670 759536366 514491333 603656728 804794972 857916375 787292200 998744148 797391049 926715115 270954277 483095426 672951769 676508886 130841980 536526166 993663874 993844061 51652738 959245363 789673234 935912725 419617083 787126742 350133818 796244305 429537595 795298337 867956785 894542756 744984546 790284899 581556111 888771430 611684945 623252575 999044013 999547800 189659954 966876800 477967147 661677910 878353376 888448937 414780642 704834792 889245256 916185678 932807921 964079991 335574577 747249083 384054300 949440147 435708755 736357185 497385305 825233532 709419413 734593120 158205329 932799316 612855240 614219167 904958292 984648646 429332041 892415212 282993917 300060470 295774247 401879038 660034987 987555944 765498819 938131497 854085284 857959929 696648284 819557292 181395221 270914145 826667348 886512463 224025837 573449844 431534334 717584731 834634636 843891048 355511158 492520441 724489750 892863159 940959094 941669675 876817965 939322722 798830817 941854391 138251450 500458196 194031373 377187284 193182601 440608752 858307550 935253751 36528190 933732551 86544736 130830888 390027549 642325013 618121651 805317647 853170099 989687817 72057470 565476729 886604878 913181539 941055301 985896212 197711994 623838799 811827990 854100761 91754771 474614438 451932271 549729129 56671185 114241219 426183272 696785119 671461319 984271348 492468324 550442352 559377607 605604244 718084699 779507105 998575054 999446271 591352126 726543368 212530105 819207093 780376748 969506648 191753 600515892 365384151 424565900 96294058 727169801 933002250 956051620 992516301 996243003 467861674 637089904 807222682 856443573 90353436 174080669 394226837 715478462 291891183 581082403 30110933 699693665 528777420 803239048 288112050 837149218 807860129 910873360 80789404 756664883 361550979 397893591 927714705 936358247 934751269 964944750 465151245 829719798 399628099 956970501 44755627 905468988 970791286 984938971 798962157 947785572 579678935 636501973 752760010 839315178 606259390 707940358 381661558 817999631 514423742 623169661 359997122 751665405 803601320 955632342 541969937 607627803 493346730 837995451 714733013 909988523 655440808 846588229 670852518 728610616 197736420 372567118 909986279 960645434 767691141 929934542 450742364 721104624 647508008 934798697 415727092 973789704 662208647 996024390 315288403 627071688 767919368 900815155 719518248 788182329 225071978 763292251 663598181 813268377 111572521 987676715 750938558 909173981 31256185 302391935 35752850 680761245 124846084 778211542 4009232 667659107 710424295 772774215 155648464 201463777 181445563 494298407 28337699 450792860 868487374 871071478 971919755 999419881 590576692 618633731 624539234 677044772 4255372 960867595 846004776 912482986 598935758 804569533 110194901 314302326 887384842 938640218 120683759 229825530 575913623 812310013 714915566 872028879 783754133 800456571 502875386 830672793 4602478 709953594 66607354 767936412 217716006 596529837 763566283 856129689 475452775 648096828 514311435 874010428 225181882 641149906 311615119 815379258 679970704 962967551 270880290 474417133 619831722 954454422 281530763 955719554 780443149 937229171 761571149 895845151 37833696 550778364 841702375 901584475 906700885 968162043 975992993 981990363 595489899 770778042 733156113 884906856 511943713 745998862 684809908 808256772 45550986 690537136 579138492 774400998 486154585 793703522 939284922 982532826 405268112 943137637 53351710 659719394 539289577 759009981 537803651 677033279 990651629 999876256 175760279 426691091 663266480 814536570 231290964 282606794 681770359 746466811 572830347 634067603 188964717 594901903 795915339 925978104 662467510 939727121 753638282 953831484 434708695 968221546 336596850 566652449 896106384 925902696 737928415 745346901 344957267 839937949 429124242 885596216 792770357 989301096 626234341 669064366 815551509 935416683 271934890 826897523 903234866 975574607 928090193 950337494 316831340 482222072 596191628 969656707 971991164 978343475 273481298 495027150 311760357 661509419 490428059 856327910 663515018 804406912 387295725 514586791 514715304 999472004 954129608 958365799 98923838 695051827 13311191 582559506 750846484 890057815 435212512 858744763 414673513 471668414 963630692 991465765 89710188 631127525 505351062 665056367 299754948 783724407 717318113 801792389 223215881 706422358 351045977 763762671 407541941 411699869 575991755 649437050 490064263 850632276 240120178 584158301 402519139 965559118 21717861 735389718 111517104 848566298 787859748 809258837 594433877 928132325 625023475 684445566 670966875 868451485 757860718 834109797 576276750 579146967 241390107 306008841 975824138 989129067 245481798 441305211 43369296 381511903 908664971 986613537 784225037 878902426 377372744 988105074 491541628 949807078 236099422 707303095 316424262 521760739 366548200 685520604 580418780 692484471 861312524 987305625 422931062 558534307 560325224 562877650 361411372 606247092 756165465 835232646 994352775 999814119 501332302 976980713 531017672 820266725 506847986 696649348 968995858 982127604 562045309 589178507 21161577 819975135 432757806 596502379 717651347 749547823 915397266 999568367 122939401 946574003 753806481 813085951 486662583 830027607 112068505 190317905 523835063 693822891 63794879 101774529 219515790 540742353 577860236 630336343 58333989 237157522 20657066 171248998 415176612 883721744 582714881 922370486 379019661 997184264 769150042 873996543 288511688 363966344 426384101 772555944 158360625 216035042 443802052 927992406 749834067 968517548 962385733 975768315 985162881 991292699 741247416 866004334 940888002 961906341 654826522 921420950 350288505 379436919 50552940 456031989 970694213 984562929 117740626 348932583 980546210 984496597 168451169 512411023 774364860 899703541 295371761 916071714 210473571 626952675 559649069 809740523 744458148 978445102 284787223 359597076 713429454 860787856 468435350 877817906 228259886 973289220 381384939 944825756 602969256 876254150 811483874 891534675 977986584 989528795 455407165 923638809 864146413 988489297 764500250 827472627 995078281 997877067 41570717 103056836 136746682 538023002 474665436 755236411 650641504 965776969 199672901 602280809 573429749 677749612 211833795 655029386 166885968 376072568 260600213 570740526 680022853 816482627 64147717 393625784 183162888 228813946 5171291 737709669 849310607 851374106 541946041 600294088 696687022 927627643 465176653 554911075 113514229 678751308 805150510 840699319 699859241 986042054 280197250 426514719 243175676 745283006 198627432 442629331 445557330 977506777 572544252 582732045 23296048 285436994 308828338 701237807 288425506 640003540 759686890 960823975 767519014 939276695 378397508 444296264 248268403 597025178 707308884 977846874 853779409 981170534 38500212 92076842 755135931 944177576 207401251 731746028 621652647 624495796 496485953 527366786 861715292 961074593 251709028 951742044 439137744 974331640 967103058 977178001 293995523 673234055 792176781 983453630 85148669 180444433 959208776 985114834 203534058 691698010 556009227 738354569 291018213 373037605 855758334 921504219 139782320 547642594 548669974 604284057 558952567 818780413 396240341 902327225 159874149 766199916 227034909 740475582 16914911 594008018 628419631 697208615 915307302 972389938 334420971 593427944 837762158 868737956 351238414 451132878 475935330 894435396 363174065 592422732 502393226 751376276 195827218 530935880 824979585 854920010 98964964 705272369 507810794 602903964 920009794 960954963 595944741 757689221 238072704 800656326 63167450 398099532 733596018 920169578 972048447 991187578 91589167 292976025 452326789 467147373 229429508 809539465 127911305 209706678 868890827 880874865 331884501 818981604 654590923 995262337 917770302 979056657 965827602 966607858 91871954 837560700 894743289 974226707 731292796 743014282 387107429 506967135 341699607 798090185 957388143 968716190 888562388 957070736 613644758 822760644 808438825 952779164 289043838 458365680 925108969 931981343 988296136 996638131 890282710 990083617 217913684 367931502 392378517 942598643 617397286 624531899 504454267 547399082 634961074 926580521 599585638 809991179 840235182 932059660 178212683 687586440 948455054 977782178 922945781 945501944 916960624 953276718 616428639 979379340 962708490 998754102 174675167 601726252 786933671 790033117 776550922 842279770 30745616 116287211 478257004 989280335 881667220 981215876 49951 842026705 151458289 346108768 722962712 829911872 371512833 517629093 603573511 909706649 568379758 667082416 10532832 99617782 59369312 686360062 332397352 376497509 171946423 270802571 542479047 564863125 11308731 583551385 105329091 832578099 726006598 752099367 369868821 878865359 993470673 993915568 318258365 609125092 55042108 788734422 974939522 976866016 529373694 742398803 428780461 474015651 956643814 973210873 103956734 605248490 453208674 479695314 284382385 324465135 68611982 460760092 444467900 855062850 579355590 683269047 75735914 371667312 630025179 961987761 210866396 492561995 924794507 982995482 267620506 273213899 617965030 991772291 589180390 673487207 577722500 640286607 437080032 465570554 743275869 827377994 771289946 939300586 576833401 948025751 731282582 778099935 468606984 726709194 562011480 799332311 885383333 948016189 728188483 927174184 533760352 676883387 586976715 977241650 535801731 795323438 709685434 953714889 217482881 777283574 676751297 803331523 785369391 968415438 698662765 797173562 728560712 847899564 811151989 840703516 965794296 969047975 367086613 509324669 305315254 407556542 258859466 501602891 322773592 485605862 421498795 696583670 856037936 860466941 200707435 552244623 414307465 470145861 290606141 766200555 46325975 155400778 526697987 815703304 153354764 452883662 121894594 546876027 696336150 980161852 817252777 944956229 788808627 927429336 744719867 889861288 372780337 860355896 235629311 248393561 498114698 712754020 40152516 482157381 977428202 992412117 622412033 651645367 656487869 686131605 224861155 830713370 644879943 963366876 312939294 995731103 563806003 714107692 955466403 987061025 463366006 984973527 571899663 657226452 178754128 444933298 870104448 916393752 777293961 830467725 753818097 808675703 66365528 330696963 487494263 977863996 165445255 582757778 596893469 873275963 826699648 854548259 239405074 341630848 425033970 479654150 895723679 897064163 320532039 381346226 236525841 558118630 441015608 990037162 478080548 526938133 180512166 347097998 477375435 619118065 861052845 930837278 48882030 77410574 933567028 943758708 490990143 623698455 857295427 951631824 137715287 582508431 782256287 956379915 461249242 888884958 276744057 588844826 499910626 741374986 319114629 781548328 866470682 925387352 653798171 932603362 490938072 557689039 866227429 936411609 541262719 875090740 579194087 668151921 467762931 980206723 391695648 393254600 276848635 932757909 591076346 691398384 380665098 686136571 266489315 864107208 152386659 865975769 317466803 876468910 719572426 893563954 342865803 673052041 777642785 994915476 143593718 393253435 837912986 877960024 870829211 910079433 295441925 556376782 932063377 952519489 462140391 966266867 692490699 709830806 701037697 798874521 676038743 840053817 990427562 992266217 245012834 875999875 397857872 810789187 357743074 590262091 115597495 680423811 775404928 947709160 582531841 932804349 370548211 399656184 90437873 168115689 921930661 981117332 166006191 961285958 775517192 829539114 186592806 573523556 876877137 975441628 180836150 967053943 975295281 990966396 964210665 999402419 645146619 980986571 402936141 703901252 887266599 934593399 858737261 920089085 235152682 270082574 668507228 864317501 896625316 935190056 302780434 695452599 725258284 902119645 365392456 935381577 899779854 990375377 787043351 900657235 11638599 805916065 298927210 932819803 134659079 485612211 824279439 998667530 319569366 618840899 244552468 689653150 398567995 525693410 352469765 491870115 398692798 580302004 58855606 309324511 637755694 884594524 43003503 693367392 560211460 895953436 669372045 871886012 408819431 477354638 285059963 565212518 468952750 751957826 612123526 670829997 383232000 956677995 431281440 501319767 930302841 935104822 723716465 743491052 92871395 303430221 670708230 900951627 461640447 906101796 616396901 765050565 694947589 987927550 118462964 438117431 765422021 970676096 730100594 810358121 333786422 975036786 475902605 676313580 691647466 790470035 32888596 385102511 196074372 308048579 87134869 395578116 363142956 750730676 188509243 945709851 244117656 828051440 26831928 631362621 114423576 294706598 676655209 846126527 396439918 617617337 399179439 678354111 873914722 945674001 512968395 579856667 282580893 645755266 315823340 645791404 714914837 896149815 379419789 817939484 49411316 220589404 5213975 615573399 102484389 432525978 161619417 879972441 744564365 782624801 539955842 611268088 525830583 997210551 352201457 625875238 530774526 719541723 710263381 916632129 988696714 995230550 972577233 988443724 889157032 923215239 376275396 571334505 15408549 884529808 458830578 871219133 645359962 713795562 311115604 823372915 584078170 892657843 893988148 999993906 195982399 617931996 92332583 857287082 76969459 454261788 675984919 981503205 585819486 951482540 446273629 965721309 234079217 700965052 189364391 389123877 52431312 248066365 145362816 648578842 841162456 984061139 759522196 809716190 403507510 575334537 304609324 607928887 96090655 113834529 535046498 715133484 451439319 545540948 274807314 617202926 139149729 534526428 45079667 84538422 628184717 726689773 278065961 820922864 88111871 495875992 95912780 815190453 928041032 965325811 511640733 743264169 444781683 769373270 869351760 910639966 825483978 926435252 82361478 736829873 591712787 678605460 292768625 366527839 195908554 713440993 286800490 396990932 447470805 834696051 469170096 573823211 925008429 949891797 987626589 998105524 1110315 849386693 21305527 178841714 734983432 777822063 724862381 834897114 973926807 997742942 264517017 504285751 291892934 806475569 135862955 979784226 763634659 868008062 788301606 839207722 39911745 513879823 651704635 939954998 466946083 575073746 620336478 755600982 487270375 986323792 962096202 963038023 787814306 826768266 548132932 954183245 433291838 535440049 979528437 988584216 537824453 980428154 970097872 983583692 258921587 682522756 767450656 843098468 416077365 504827447 381906714 850267397 91765528 114026117 125626447 195258162 698627454 827315634 180143529 396913272 7887542 10496140 889853006 915645995 931731220 963012139 133420222 729557715 71638569 132992712 603857075 717531630 544937309 859018968 528225534 602872410 658804020 995554894 746893542 969342781 981320149 993388121 126395339 785839962 543595049 742741387 500562757 586368950 240854906 456410540 882133010 925894384 545269260 687943158 982787605 991949958 838876396 979790551 611887602 966117197 988094427 988886255 383385401 906072872 364220342 911378580 103991021 579706153 970435010 992625098 111096939 785143014 247951073 910567170 415324220 509008069 173103137 219826526 160880690 376678202 379138868 591272509 736848540 858677477 386366676 737251374 674561859 942844191 664533261 874802902 655724106 670945712 751743003 992681697 135528249 819304496 489369968 695180850 70483902 724064395 761248495 799975999 201349005 434963728 333624492 667898352 319240393 989994738 515713582 699559958 792610129 919111592 385442060 665374049 384866468 532473278 951380186 981104670 152021155 431672576 309290646 995633505 557121508 660917058 750892478 980640857 1475095 329634582 49008976 208524090 686704983 716471903 544830877 639904333 751867309 768721148 250261226 886961047 576846083 738252967 195361878 345761430 625354439 650631336 991975080 998563113 214844061 896017828 755966443 810132171 141641740 946208129 302818060 629584622 863393564 962833733 923578664 924629809 304107142 587840741 450584983 933566845 827312286 835162958 691624440 734042791 328397797 967431218 111600118 748323552 271393339 372152866 422697023 822390195 595120317 825497688 857976744 875239488 893485867 903573143 762290720 826122741 316358700 574476920 883580101 908886812 652265460 982781025 499072330 785403198 580534500 582859688 278412584 595403491 791793052 929633226 858718759 923945443 414241225 472964102 64005157 969914828 883203157 945563594 61845946 70338523 454993770 940458960 504295523 862461148 619140643 732893689 299777423 599170403 570537088 675595602 82569019 468323166 710642212 998667205 957308687 984553628 745094591 845405793 61093986 162630470 578216137 894401057 52539460 693844557 897386290 904682733 194002293 321368402 121383258 772308737 537971157 570584904 644886246 722181897 543705986 894823528 833989806 886703895 405247316 954106252 861820747 915070713 590386793 812108402 141688673 882084239 64686690 215690115 968829252 985284424 184230083 894033508 422820275 784001070 559294226 825244507 192076612 966131582 864436779 911822823 820463763 935595016 981539632 995007347 501932477 761898132 988662832 993668358 47111247 993426606 378712040 601929665 272078962 456994879 457470320 839715419 461488494 509054378 885685712 890560134 253418515 546734256 903566929 933304655 71530059 135465862 149114097 908572571 647997680 937883847 412523416 914652348 665105229 745845782 677694430 749219682 933353574 969694075 997362399 997466334 577773574 831384960 517856799 776439652 8619640 730371221 35348383 531260198 60667342 642753710 322845266 673502392 690218254 730654079 300770007 980784330 850197822 892128351 762913948 875223858 188399298 981843771 164614568 202202918 923949557 967993912 539908947 874521747 40873837 736003026 926366259 968672874 504946879 953720334 473358073 720604045 42181045 780990165 42766511 943735641 470758891 830553810 679827442 700628524 485350590 910267228 750599581 805060375 166430830 199820218 525548428 700943758 132998658 252938314 104801418 455599173 213783962 371917541 970940751 979084568 771383877 923376698 791929365 800054062 97242179 737346307 946298748 999169474 346391569 562360940 951281704 987961986 415525521 455778355 771126116 911504380 36381364 765819765 260789344 381802979 150481451 524657479 945983919 959428141 218724761 385598169 426180218 783565806 652842363 729336444 744550156 822720509 570394767 598326502 711045686 975785941 742446669 824384883 805143994 970950164 486496796 517718894 451671378 752302758 333758924 899931333 359893573 554049864 307420105 388994950 868595440 954898755 775940776 968320701 349272604 674127877 704565349 994643278 989335564 998986083 36186433 530569366 877759174 937527554 200455310 556023335 727374966 973681788 336036677 804776223 610766824 975984301 690139790 820168960 303407157 446706959 448835442 985701818 701129472 972448688 314654600 910720689 556608120 763061153 446689424 884784513 921257670 982395754 744374528 777308178 420438159 439634648 401721744 721686009 113084261 317256083 345809925 667654078 827154244 919920616 419489224 587504673 925646643 926833957 690366623 854307271 203226260 720945094 84268105 189749082 826130871 996021165 472451246 519567715 513774362 538007894 275183492 656389302 160537593 343371561 45234309 902737851 154579918 997192013 241118246 394789363 277496537 874435047 989609130 991836232 859626940 903646955 933098767 943232059 578197145 950996970 131213303 800919775 206872700 351384180 181195613 917347147 716714154 856978579 491611538 838598136 517450735 791473605 412865068 705031713 474295915 739486137 904434774 991014460 908091471 985940432 544706922 615965184 614323327 786695709 513937917 662519881 435844794 913557442 95340579 354310993 223961613 491854904 240541562 295561781 912333676 970393597 96628007 526704618 644323492 914935537 175610582 583530093 100793482 855139932 61961398 445492506 42497537 927652953 76147359 973108139 322953142 355127395 401255634 420893873 823769305 929255705 563320767 938686350 898351712 946822045 696543197 742601154 844201348 962268156 552619116 894345453 729100545 868106396 385619500 781586523 678795513 855680931 258684084 526288233 1670543 252054095 895996332 906519551 48501957 398449854 976928049 977517462 568352255 997642342 17567194 357364839 3032709 406625159 463948342 467475070 65543959 442812996 948590363 968903553 9776098 765653392 673167185 760692326 664510230 678712807 259350144 574884879 340817967 725548680 693498743 708107804 177048264 402003030 277454490 288729060 87292363 405033044 635022142 954164298 487634029 855817303 924966852 964482933 718933751 775409298 364504753 870680073 262925279 412373319 372082248 578647540 607083324 861100203 435378902 449598717 94900658 998805245 839770937 998029136 668391261 942101835 191747646 333745494 414768534 717921052 192638500 552517229 902475735 961922065 568684652 774734635 193051759 858945967 821241599 988787617 476432681 533359821 934418814 939879703 318795149 772944992 375117245 860308386 711724762 862233974 552935103 947134583 10593967 114348797 293644344 703829605 452277219 977125445 556535511 885483036 729874571 905092125 434992572 587681909 97612354 747547870 892318323 926208513 386304424 976678433 804673860 838763701 562698151 719875278 419901808 724030264 859381207 924595163 670067275 797350519 225766769 395186746 144324124 690817124 612763583 632352482 21307555 861003531 811914832 953670296 13874541 518480514 244907228 403218382 388088323 696621871 884821106 892379764 129092752 247079770 463460054 618680635 72599429 186928603 435875353 869413709 551449261 934775073 789180353 909857118 784456125 804098466 771406376 882980288 429540895 891205628 873935792 906178593 707211331 943413519 584554598 669812285 474538433 864051311 427904970 596895882 212770372 955667481 367497120 694293670 558774929 974444718 598691009 657503059 797017088 851559398 599751163 626621027 473951141 794802122 73452769 517071999 995153065 998911591 957647515 994925272 87175096 618046105 470180945 949825733 871587433 928215938 970423341 990481310 150833339 515116583 849464220 881689441 105817990 491027658 620891868 882196740 577615682 684310448 757287268 946747817 723939558 889074090 108136689 266244082 267099861 968070106 817190541 923489301 545489044 780956007 626008149 959351277 998593893 999754195 895355930 987082915 86761283 609266727 907077669 984831197 120204317 692539649 100191388 994623202 52008170 242071241 41304787 830337489 180763244 373559549 212845433 813954244 232007860 466632006 318959855 594206124 171370536 305836285 708013757 807551784 244902604 556309042 19844799 898986940 37325036 301038379 737547232 945354688 907616997 983856626 189408386 791642017 530798514 738286313 741268676 853747733 428875294 785594383 523614946 583350583 523502374 965035431 637537471 758565722 147219479 482977612 764207797 812257681 526963009 904991355 722340861 800948967 115880950 735650303 911330627 971625625 736428397 968238436 261674208 965701392 349929422 385047516 984887501 988369447 751355510 986988510 248913869 362835007 494290909 944214878 17980172 853412012 174772054 369084626 759541986 940201452 240349269 393207938 126141494 998864940 918596352 936347704 376770877 511644562 469587307 586238840 50152517 434316015 248374776 510007870 533544807 661840201 195439333 779946235 730675233 818314156 302071903 603839629 305462141 962986641 907925844 945403624 972360186 974897963 897591376 958413631 161439058 521735267 359817917 604015290 459571864 858106479 532794652 842740004 649210468 917693728 861415908 921721085 856452720 932884694 617954414 979618174 728067058 860686623 283427862 784729967 397615708 675175846 988281269 996304060 152405881 691838385 923224872 994416627 488496836 930495889 759223374 785563907 251158262 875921009 494426319 714584736 913862364 947619606 518539322 752321919 818003547 937244620 522124091 835373196 45846728 280405434 71271115 834548669 398913460 421606752 907504781 930361391 326225922 556856551 456288510 659999250 327195008 831482902 390312399 898885764 171942432 190010103 81162439 967409294 398863508 655711669 414502163 799441744 877954033 908985679 766481181 965173764 744707927 845936509 272158012 606361567 423065921 862202696 9222153 881526300 532426538 918521493 906201161 963554406 620482979 794167958 620637658 807240162 215084775 801793845 524645644 831648970 190046572 778501291 199212070 637162626 589354321 944552611 161524256 500675587 344377479 806984069 33789325 986323719 811127125 963594572 908362834 979899247 84284411 746728441 499688098 712397954 670693845 940332229 710870439 747890669 340831577 939626433 960014445 987968566 282923757 451974736 763764132 788939309 170666352 497775688 427859613 927962664 860462682 905745254 79039039 389883130 671413652 760574257 853306511 878156292 818152047 834950271 600325029 713154831 260835628 468445430 272102755 807825564 234833994 940078100 325354121 672093211 687848417 799336634 205449523 723405949 654383146 997870227 452661755 953867022 159063120 691333779 666946537 873701479 407746507 410204451 175675718 686693592 555317891 972206265 418792444 670211412 5451596 903273326 899570399 939282489 102242884 963180485 395247899 694332845 444705137 777924168 506329569 533761348 679578725 812027116 577856394 957193197 705104960 978158117 630571493 693721612 941175862 948493793 462335217 595749326 663498190 950912120 323492250 891441567 65731157 390945725 380026314 732079883 659246068 842616968 627463599 648106946 195225120 596007452 361233371 816227321 167107826 723817780 438008102 773286768 5119109 269283159 423433614 707499833 766288671 896119748 913281341 960680533 861171859 869303426 987614207 991184395 896466655 967545025 829560083 920964864 339471374 792956413 356926595 777901476 307687838 854842357 141186013 982373502 382107825 538716907 757379269 868379206 286886473 836335054 879260095 923810582 508428137 553955731 861782152 976222272 495654643 839626560 262958855 452512698 837979601 959922599 958728797 997234244 115431557 660332244 600812686 865542291 145646667 268643041 27760463 320146506 403587181 609868030 273840953 828013687 735440429 869395265 961300691 988089793 287017349 387270621 135816232 913175961 498017424 857613859 111475369 141585821 346176337 930982546 696380790 700853851 91910491 973743158 386526153 985428647 892387358 996571682 426895601 884566082 573070745 742094832 985787329 993444706 726450785 876222989 912975519 913374104 176934720 866938646 811855672 892330979 218753694 565419456 843166625 964934764 650897902 990979296 549326327 911798454 434272327 489778590 49351817 351854162 13846809 381280963 35618410 641541331 742551234 921613697 720068771 878802053 4014227 657236597 185387940 789812529 240127194 349556507 659463188 803271186 642042105 748392628 670164833 683519699 878863042 975363097 517346921 857376429 443964888 497257569 426456732 786816367 53622039 458855451 701761624 822136354 124134278 834421589 581608948 711176129 332428396 719575718 213570539 776043291 790782280 929476778 177143845 790106288 28345625 288932466 490572534 555977103 648358377 974164510 691696181 897490874 817343733 915294459 445799326 989767376 969318947 995180388 913648615 968117992 602473878 645957269 962115173 996262965 223232336 495934732 999781127 999945147 810869559 898388074 55446992 578414065 720114581 768515336 754048754 844505165 772095075 773666019 185876877 878288346 915113484 966659260 128407951 610434114 273823494 801636094 351332709 675314446 324939891 889386108 880646438 910766742 983353698 984597927 949856653 960419369 937887041 988955308 184585124 246759572 312537578 416929175 496972360 912289043 707396345 895944826 147018140 563963013 286046402 529334023 319716711 323365459 832212836 874018558 720611722 869922988 377744188 710881150 457044046 749563907 922446279 946664517 446656351 449607105 273468152 642355957 541622336 667824781 379268127 854925738 47207168 717057191 479092994 658114259 238892534 764354006 424099764 671065051 700529605 770434901 780040582 882784966 87729023 761828186 709526315 870501803 412783487 868103720 872110167 997668836 343825347 859590087 723444863 868986835 800428933 991503613 743910904 909424691 818942861 883036404 212291298 475275593 945917613 997475130 839374155 957225953 201792710 834543716 118648863 804525928 709424622 954665217 170020327 811585823 970645124 970692980 675153729 864083539 448319983 962543490 727331210 894427586 237937216 747492558 118345767 246101272 654032193 700518201 148467828 826286135 183327250 917054730 969182568 984747264 980873991 993470009 439953119 917187658 133314041 147756267 592979467 897806385 757092025 872901368 907459334 910910129 553570233 878851916 561567808 867640341 710478784 854000505 210815754 342666548 199738607 811634267 508764609 850153899 273815024 646827094 606639603 942095299 558939397 592921681 527927218 749547273 386958133 830704476 775311921 857056652 107710536 299950680 140304568 292583283 176821795 764172716 313094804 545014828 308757244 528143776 289105376 423549653 410834825 490899446 65664659 460690108 756508336 979350962 702343489 810675477 252137012 287298761 353569280 626122491 932958348 948471067 877305659 893645790 269218130 479408177 201214652 750830930 519693471 633976361 823459607 918539182 596855414 771333584 880653230 957813227 157145179 476524937 76208985 564182635 161357776 774209483 221991924 480619128 608829730 791530222 812792521 954108654 804222609 883109029 725642967 925507431 250358590 809675137 706639533 989955602 852474094 890553133 575907694 805304575 37735034 170683410 450856916 621985959 883479354 993727099 634436547 654996464 257825963 398469975 401593902 743803084 119193347 741264712 249712757 325917749 623920155 687058756 72272569 454784559 414523036 947036348 571665866 866149588 759143316 935119970 83332595 951728334 402163549 709732126 14473941 797394456 658159854 720501409 445038258 784100528 244673416 608475485 591273747 648593037 976157258 999142988 525980569 564702365 778295450 793723249 670342605 799404646 320742240 392611539 718687880 979197380 854221102 934163394 767719486 860316289 852018025 990971388 300092463 398952678 793541267 886911202 208192334 582908459 501537549 847043893 719660618 939219794 192529704 921805084 539303239 809321184 287774709 884337728 21611993 422046654 396954465 969663821 291685662 723346985 518562095 543474298 743811807 994022642 116099758 996516457 600069084 770086020 698815389 995015926 997735086 998729704 64840574 257529123 640282565 890083391 378312958 989861112 964939833 978907482 308343517 315546553 510714726 872603809 287302401 850354034 237435836 382299142 989995147 990568048 231835546 650093635 245354935 856337987 497114263 508559613 214480505 771849175 836242678 861179755 437855662 698484730 639671473 680271954 732177550 931266597 541720375 835686185 607142201 683942678 667619078 996985924 159648785 219718844 100551319 711138983 37831779 209415926 17036351 734269894 336706824 848606559 459070355 496632270 111060719 236812530 102869293 667284266 39304907 985873332 492830493 592179028 509986491 685070117 138714281 355036817 324420030 464552186 170604303 227949592 933275023 933935382 455354146 473845252 406149713 873602196 204165719 460068584 198811347 447028309 884581677 902849806 741108677 814013453 345902222 966308632 867629558 992186631 247577766 678192674 216628969 545038248 838379131 842856382 754305203 956178852 498443915 653953572 666148333 853382594 823035301 872085881 192727809 982329998 889245238 991438227 990305641 994338833 165274794 799037430 208439354 657360977 57280297 781573706 700091540 867794424 847071520 967383475 471193855 583495288 7439424 964899061 675369618 842104352 340231474 393982261 590044148 918375800 178757918 975053808 846364221 991838204 784180562 940339199 432636576 490520328 618211961 767293213 382342813 979343801 336313210 546514108 306947988 604356474 357950666 991352825 5253487 197972710 408288803 576527383 90456045 505134126 239186266 256885648 882703550 916894677 244266507 948441553 52460680 960339240 518627240 592268261 132752717 466048486 994601680 996484135 922568297 952566150 608410563 731812116 695686139 765890461 336553348 783618865 544403615 578356631 6717434 378741874 247565212 297227261 997759842 998641712 631155879 900481053 280602952 580458169 932735467 937613762 266328812 763507303 701936974 834952088 9189764 670431335 285454261 437864379 298218038 602302766 738402765 767494276 16195856 735438301 537970603 754736845 847448037 896118778 328211256 958968427 459442145 692077590 81240290 624790862 317056219 506950819 630266344 795684876 295503854 715577321 765132305 802389484 379503721 776520741 661522422 697744281 625718880 727063460 38352106 230028151 737252851 753282815 249737238 847934144 103757455 710637503 126534652 920421371 594465241 670750217 454275153 643264739 36488899 205517128 918870254 947333673 719006122 961872237 957218558 977388229 24711898 740713332 53333417 660546285 505230725 800454278 553255326 631182533 767434257 990377941 33906592 349065064 179107102 826484678 795139365 818483891 586984130 836604177 421326454 654202730 422151478 689122918 246480435 302964250 731344254 985416480 797058054 838088376 985336291 993012607 936768664 957445823 853666696 931269442 557939723 950968456 257697802 834123727 937321966 942381910 881657025 967407893 342837903 764194241 32144935 553386904 271759120 772240213 619645731 870779840 40611562 325241374 983138418 995607991 196714634 433560162 823201446 839899428 621881271 678995780 283865779 523576686 899083999 933617742 953464937 968321668 713334256 958886732 94769005 302250003 964859054 984365390 276629467 925012374 148448182 461415257 215444713 807954112 861349163 889421509 7154152 948860941 283596426 534229289 13121312 237659988 218800280 510395553 900502706 905646300 508756102 773722225 56407601 876009602 80144681 336046624 668506513 940958677 888932534 925761092 482010086 633375992 126033064 134891568 986313673 996763166 722922049 758028877 512985810 792804973 885572767 910314009 269100519 396675593 903949538 942089136 948534557 976562365 410513592 553517423 48990064 156370866 53955772 819954195 684782271 959928759 702170769 907163378 798719000 910580102 611126352 686617832 686526825 910230671 119468417 656545304 760786182 781070781 107500183 351512871 201016603 980518307 159287554 247349903 795702463 932498045 571685935 649556141 685668180 773299277 664594743 950464217 666200388 706141067 971524557 976088999 534292480 938644327 529214287 987674506 893225678 982608139 510783116 682276952 695784556 875947394 422515050 938169225 912182129 927628578 334661247 382244787 796563336 818395680 838944075 974995735 988374740 994053442 678989047 868906739 351390747 961856158 111565474 645692043 973861286 988942289 917313119 966692765 90784639 450146461 479706866 940433254 156450401 427484334 164698939 515300842 440976730 853770767 584446740 673642986 896345188 925389047 440194375 748160517 978747724 981826341 258631859 955746662 37393503 735285677 357528582 938839641 762855658 768410438 29957279 33983058 611919239 650931855 920372431 959980202 68429539 339476553 873010751 880406093 926242839 950913797 332792835 351497348 462522861 664589306 150635469 213834754 692959037 821448004 398178795 525895353 486168565 625435066 206675195 207401308 727236373 885266954 799243622 819364098 528625329 973975888 422654562 952611001 740884697 858379582 402570948 928640007 292974810 937930674 106361948 711519146 193199927 265379786 535315271 828860423 312550863 441910012 298228952 951906334 277993858 495170184 870717483 920863235 708924524 925849254 332812292 981157121 930195831 992196597 271726996 951257178 242506600 841813696 834229944 948137224 525063565 887501811 799114210 815268487 147885398 311983603 898168347 988895242 662393962 718678388 760720085 908959660 143001464 977959862 74855 773992684 311028363 521532077 267485608 436222122 253777865 736997777 196070354 252409562 294122502 970922052 348120967 858188883 300329746 548684367 406622098 973068008 317663012 435793630 856360499 988488719 879674354 889756622 378962701 703357723 383331361 887772322 482518297 878979358 293394206 505779655 401359682 540500881 365389845 788159033 167137609 719997585 360415560 894208970 626550203 985877328 376758385 822521095 313805398 446077444 786331970 836638417 630340485 866446801 709063181 878236065 220111007 809908163 182691844 781781515 9243161 735591334 9965228 374699049 874717195 886696685 654116173 921890958 114903352 832447637 713193453 750390119 131065068 886607987 687267592 833489988 912630996 949564728 591620344 835220472 705496904 826720223 317722745 595935768 975392243 985855152 819173910 847680347 462037445 902214986 7306207 685423354 377247500 955188855 863412420 913912042 34430763 658932565 102291666 618782068 756100884 936448230 799105136 847390198 738675973 807114747 859364765 914676725 762579333 897139235 37480253 324117312 211625031 602491936 139805726 296792045 928671881 977354587 675457594 882878025 737455794 917038517 630362199 933479962 479194391 886528045 626719556 881095614 17298400 669923444 754641580 952074192 616667957 928122397 939073802 977784661 573769576 982532728 640712434 845732655 654165505 703610677 40842092 215738942 331560378 645724946 913666447 964521753 826537715 975680722 485179484 749739048 225880810 529223015 219016420 657660682 661328582 702535127 597752454 691882593 68189206 914267972 705378347 976996036 842470337 918478783 434079843 516051735 18228682 351381656 782076214 979584471 523346614 972220897 17173354 877908004 322848209 865978086 740010496 954313911 595167423 637290521 22844476 786844609 88637183 837346512 960499978 971451647 408404274 969756918 500316544 629554614 784205726 791583135 890420108 960835551 414023454 838242698 53446104 515099798 871869649 951063452 272543806 301865458 943132723 968689665 551389365 853627527 7307895 341885677 334153170 826762249 103326982 356655056 561764734 656703016 887241908 967275123 814073192 966319394 507317077 656034419 710788679 756329259 251905049 495015718 656441621 880205828 919147040 961584687 564194451 814175519 584472921 633142515 771977988 972278241 624580056 702007622 742606199 944965142 763357305 861362870 94028258 243327872 990559975 991145959 991462673 992022446 165731825 977104747 769084583 879510057 224372642 235454747 915746717 971599663 114405964 671290653 805036723 876288768 237412043 644006889 17313694 723471815 606613509 806540716 149617288 163345618 467143660 605423174 700246993 897660305 1597055 297711124 318242831 799240447 352209336 869999812 608607297 969099780 936161455 963124192 787207036 929579408 723891291 993365645 910011945 955042091 346310608 414315351 734911185 884884307 662438770 987513748 215644695 480790544 578134084 755836784 175314972 836305751 541333674 545402203 652097921 954685801 879094190 884377037 352534994 883695562 873123281 918238350 734464887 749450871 425095167 570067952 941701105 969904808 269259464 429669960 991652681 997364372 64152602 749203266 251876646 705967757 809481583 833874111 268070610 871973602 13824143 209419049 962090235 980864330 318160579 420440837 740350238 860284527 151058740 721945230 245269833 556976538 115118107 698454566 905561122 941512253 175528573 766421730 10538830 865031116 785896241 895123379 505779591 966378243 1406340 230147191 328795654 818069055 689851337 930072655 214740197 702025542 554579500 740841378 94559440 776325226 621681846 787392703 921363078 953670288 839253922 880846768 56559923 583895026 817750330 873667768 779416768 839902542 342016411 751149374 308219812 934408562 837561464 898075761 517068984 542413435 870368904 872531492 957986746 958468282 798941785 873846380 980337869 989058369 599961056 610730722 670953559 812589922 222811869 482385368 200734553 533003271 104825335 766506246 708776426 838120734 805111369 973464661 766382311 891545160 753797368 774856604 58886468 516274236 897867138 938694748 652211397 969887295 16814310 50910524 758545214 929820739 500102467 888978463 342479555 834166811 990167804 994776188 935130530 982038992 911359289 916151234 503436816 506813088 69727868 198529363 406361111 407204956 510557221 882876590 39145471 641098144 319179588 689996420 35917175 332054797 786358354 895364977 289636584 300923638 348690452 402822233 730803414 997150291 919594585 985298114 803858941 935279296 21008098 662509826 178804822 581056397 537830483 985878007 46269000 878557969 921390351 945074845 667999317 960673462 138221149 970517390 650734252 704214041 106515511 124362993 748781710 971345043 539456799 724827834 542907741 733576649 994445534 997673889 142135276 306715908 667633601 687685646 470170921 852841569 50216484 85654074 415011695 678845061 101235036 855102742 636768376 678698419 555589135 674346971 847236892 956586003 723414867 733429072 920668325 949629092 42342913 339309955 802029613 910034164 396120724 642237759 836269079 840747788 381585913 638324478 976952487 979179845 692256271 826343159 946327068 983206115 117457369 285904136 520618651 816288021 328992554 443316796 959540931 987885323 84357630 155245395 234019420 833969496 663232093 732544925 661976006 872597037 535582117 686643618 305739803 923871640 113995268 862107974 106238473 205945711 451960670 856406704 100111487 329984983 554894926 607018487 456876278 717538782 501942478 585793953 398629219 445325770 779169256 824606119 444164857 921057975 251106560 646881943 887634389 893675758 225433203 881351028 590639550 606387602 754491863 867630528 921857069 935862582 318886280 565383903 595752425 874274043 886552330 905504052 52542965 276136614 827371726 967130712 131921745 319556469 744568329 883649982 22211587 173557045 884425078 933909152 939547985 983631774 669171339 675814103 314485742 905589682 895081266 955829544 181855104 245696170 462928241 849665476 153785780 808488818 405398848 505448073 956056199 958072023 351114066 442697590 641111601 716850764 543804382 987925513 451460833 468823535 857475472 963554284 785579137 935964367 708747137 754736904 329941990 647503018 540076796 733310780 377408071 859069178 219446001 605545406 711040645 741703954 309752881 437760394 910598372 939381734 187860951 886791143 650085958 774200700 604289134 675900777 606686805 743040985 85437417 218667084 410549129 652699771 497276340 720413373 747155241 836221155 605457784 863469580 794123912 878601722 519648894 646697409 654048260 960078832 702574086 890668895 202009898 502106689 641938619 996084850 431464923 734835308 600431523 968522855 351362166 877835692 588597996 668341063 170994663 174432388 838854072 986922953 45057536 944528660 915420980 982403960 933212486 966640958 340275582 574891052 710714530 777952813 914313503 949206232 681724664 866826215 830126604 836174407 322521134 348907660 488118431 901757024 186953474 575793642 8261868 857667568 704851186 915526104 971521801 982729482 754389460 977987680 154814319 190464594 398852426 511593236 662712406 760514102 775969647 967225794 99188866 671997791 331986945 735169948 179509022 439103754 633189327 864421224 690349511 751835243 369147248 962635628 60367121 384354464 969996324 991904862 934545285 976049841 583241588 698810082 663763996 675021603 444661923 514573046 911277450 949534819 499968385 641510381 503332079 517158999 869605693 987188464 928501177 983787486 365856501 970001743 938269475 995493716 612091929 788906332 333046124 574590928 433070126 776112466 87185029 578614288 502766358 772216886 147322275 657797523 990493559 991413279 669335072 713520205 106822929 603863722 474157590 517259985 48596850 852203153 125554799 893661787 683275163 905887123 427354350 693751604 923921238 955928228 797963533 950242366 671344631 974905619 263787629 558015720 757590840 999652636 246265946 914110531 29481628 448733336 564163638 840993354 981326362 994514271 319669727 497122874 479838381 584658645 856416107 950604868 176182797 185696169 770608240 785529974 710539736 792575898 316071490 961116521 506672188 832496707 542693395 986742936 644734287 721460140 80638137 625448158 842819669 990375330 989692289 992218399 714009540 910779255 780425698 890474680 275184407 735453855 253325953 372982052 78839718 847662969 954618801 959439223 789513105 912010398 236562096 896501151 373855777 960996870 211659686 365118338 967548694 996703427 738512602 840716751 258769313 417496461 385774739 543264089 848929496 851644600 503953452 669309969 977417585 986209330 830676138 981217598 810893934 929126318 625325416 710023945 869745546 968456421 829435471 995035563 44085968 325440380 737751735 770287059 245621117 640410292 536986445 702481218 83927453 221343665 122082585 750828294 736042276 980104201 65553248 596099836 415381764 542270826 360604270 725085345 540458215 967650932 528175106 608848575 607887864 989525288 760428606 815387762 464885543 944687315 394492754 455309235 791183569 805456352 434506969 581753170 513796236 595536884 202144923 651820073 872324151 974538685 753282214 976453597 886491907 899955385 841147687 864041701 988391675 998846333 54208558 687206040 664760542 932558397 155164965 752378098 257178160 846934487 950087624 994924873 684749112 861260580 467161777 575573787 127681724 141647827 572672515 629422529 259804586 732674760 329689505 538408359 631228023 678127719 345120476 654181590 903934108 913749270 84033417 520469218 750946739 778760149 975932176 997319172 42161820 160922144 501496524 699373030 946819397 969643236 618067098 773428580 741624028 876566398 528294368 627717508 532607297 765654275 617373721 684956700 279576213 717626506 316101560 682819524 271956158 797618860 674491727 777645469 766192177 922445999 876456111 956097952 338644550 509828961 812390772 900140904 86036622 499594493 545390613 908153640 258816471 988504605 536274248 928343289 968345395 990225027 836289372 966249027 834819993 854630474 252239940 329263519 332479885 586875329 406475351 939094099 969381457 976581558 769962613 898578763 682046003 956009023 850165478 889418374 142725950 482487741 714753478 783614540 255805217 497725081 185986303 974249186 476674670 735077081 42378569 554709318 779612139 825873372 392079990 642713562 248832854 610151647 785218851 891288336 495362613 760067219 384308085 785123500 715537782 903496953 780330129 781765210 968542438 989962873 151767778 891104006 978076115 995758503 615233829 666030066 51637714 121412239 375602999 775519973 350634979 919259490 461534263 828141545 467618037 530917087 632142516 760554957 443075021 991339432 352280287 608909327 37285355 779309697 964635929 966466394 339019374 401477869 433816171 524097164 369488071 443619113 176427868 707708012 498661245 682369385 883995075 968995780 810850138 886801581 186767542 778048729 406293663 769305855 143955667 442170999 367681554 389145914 277585735 639143130 254410581 383269637 510832793 622553896 904476005 986518445 585184053 746500896 679701270 754649937 180638075 414367506 200635634 810872567 614187934 705596190 90583705 656558132 514308498 862343891 57364668 515811434 50230330 497137954 298841329 900948134 457455906 524624543 495244883 688112489 276241286 343815169 427520552 739537030 99227125 171525011 411793761 988471607 892734368 962858023 152667826 215142338 792509152 825269524 215224911 533590895 977841891 978086982 376770711 609475937 527194073 732299981 845834868 942379340 432497791 692246825 816278207 962181615 94907562 509950180 170973703 466740286 220630151 492907613 871726935 878905843 120487188 133820590 664797868 947317085 548911579 566358301 795503681 853817468 679051569 932150829 74981029 216021644 647729237 653399339 194154953 960454008 197623614 810169780 539606213 863451713 69067995 526846922 59384441 491470011 859924424 863766292 158728529 485149698 397717031 541469040 913451723 979076215 322424248 977011751 424788849 638616771 67237167 657580146 703444578 860857619 591801786 703454612 925923986 952860771 677033157 752916435 795170424 812035561 584489261 739438619 694967040 766171213 256177451 287562380 935224351 941426509 138002539 294653258 792200762 994008170 645152365 658671010 682487552 810239802 6682672 572995494 209899049 924032087 188785653 426194004 350988744 426947534 507885923 920771578 832437920 882013296 770761459 965295325 603670401 616481676 869273911 930461988 184254998 650983399 987789430 994517824 751335260 965314248 946553870 992313249 651976528 886542274 777428135 801869969 27745217 318965533 813669104 853009427 903677913 982568229 33617812 124596402 817581640 916337260 415029063 523972317 174068977 753672869 373636376 690661308 283722044 740794831 993337202 995162271 809577352 811060632 791619225 930732353 596773097 876190867 430043924 668520754 11024426 701561008 73058075 882285908 790948855 977243858 80627961 518171975 467223208 993509000 280154604 574291601 662229031 691287327 477932939 993455933 985949138 998762018 593479653 643145221 331689412 874613415 924238442 961747037 153897496 936077289 177632531 592245969 185393 957310337 197683841 926957982 469995057 879858048 677280221 940900068 554492982 583065845 521149047 522692134 570811551 863717649 289640813 717559467 868762936 941212994 897390415 947224087 743387696 837962238 104096485 643925306 935499583 949156251 291550566 844305492 607169274 949074112 601392616 632899273 378536298 672660865 799161252 974881373 477141813 884618394 151908635 302902960 19888095 601490429 692597918 986037440 170610677 742156122 393042566 417433689 402317057 953984770 293618281 858871263 939635218 958447268 757747631 952248740 300775067 899806240 943850423 967802243 698954991 913454761 533595274 912552808 819276304 847645135 999118765 999622934 903666934 995043437 337457765 624220910 783879682 904044198 428033807 982896180 894268069 999482476 475551355 752413947 129810357 282998696 950148878 963958675 622006464 964923766 681458594 774748362 927973220 933689837 263924255 475273169 211803604 997186826 399291578 499692448 297629870 937495879 924710832 933168991 972901549 972916300 956842401 988627001 474059663 951794556 483672389 650610678 779077006 814228933 853277547 958477091 153095971 730305582 358208397 530423200 746857821 928984559 510712827 861307709 941748936 987120002 505651682 960619633 943579061 961141596 700670430 988631101 281606202 530417745 805800685 965692026 637625706 642987063 608322386 766512953 739924381 887782942 993636527 994703128 438682353 674212489 644476828 653123217 70071529 305449940 79942722 591931810 868736909 945496357 44027578 804617728 265330800 889047261 995854013 997394295 161219504 395386626 977760496 979633664 969896194 985402306 165344338 955671511 454057125 861298875 711295653 959327764 94189247 979646655 50461308 427082202 835253689 944717153 158405513 888636882 197542180 790341791 406555630 685333743 202461758 648700514 861440343 942868698 739771076 814517915 205340272 626299310 661913314 748069760 625655386 629992508 200706237 350787584 816928302 961155613 528571879 826406631 532813784 790210449 418293278 947024720 311352264 706576779 396553667 993478345 257153972 723061437 273776920 362347799 915191012 979268831 971280978 990212043 684511876 739239153 85122424 686419704 870546376 969713683 200711946 576704418 274580237 566015940 130535140 330397170 883627124 970319227 704868437 905173428 381851887 555354123 842544395 890893995 128158161 628841740 441412095 798302820 224319007 514374624 285680069 547129702 252938488 939753984 501186026 502256677 913380126 973182833 61267955 615264169 767682949 949657435 688025595 994456270 153058677 935992507 916468038 940352551 650168166 889162199 462126874 868891399 506177887 509108005 583855030 761535725 804534094 997763241 408239809 693435545 395452318 475762733 312377899 610229815 479321138 549719409 145106392 388678352 532503874 902606354 975424902 986171035 990899941 999643283 502660773 578126478 419535419 673015594 532767817 674562918 142984401 344922278 909280273 924453567 490722044 804346495 644460271 882206066 741731235 744759348 112660650 113637757 605249013 785975185 953856900 994000953 937707248 958334030 905130762 947358336 203589654 261104270 640201708 735698699 740380970 755393455 339785448 564146381 882739734 987316048 867330502 973165557 170851136 681872167 972035162 972137743 759680692 957809837 868354715 940066595 76409313 393568503 675714418 800228798 597758548 905548999 39875277 375027895 220855570 372763914 395764080 719322323 688942182 745261620 75856482 970860212 380820512 550394258 289292341 573548695 726722738 751594583 783018610 997631303 801255542 830002393 143442374 372885338 204558336 317669101 222142081 733229383 474883568 978908053 172571300 949067030 802574685 941911026 797931147 814836332 702180584 724323585 548950635 741493981 551534204 758881802 436318392 696238799 231558459 501693420 497259714 707302844 991279879 996214193 457796106 671358261 527356242 812076778 978605189 996535999 679865068 905281512 416642121 878871304 386684570 514345152 290779020 852255658 133644952 830534270 550043317 707960772 420327551 423694847 162775029 597730277 493774988 536036460 736813532 878320087 509024307 533102123 964789405 989118724 81464575 600954238 559851633 562656927 151476293 531020463 462897798 799020391 395741087 415259958 149146223 961147437 463618280 889190535 600131216 616123844 270310133 363699396 610712360 822079816 813952499 988960881 380521168 670064408 831648828 893454085 252100804 851542598 456953738 463374193 131267279 380572613 543443012 842434852 345877274 675473191 64707070 616633143 939408321 956883759 764941413 894033536 482083161 926024799 866053095 891280072 379691144 683965093 745789586 848280243 931587848 936855656 966710327 987876607 729846320 843569218 818890244 941512345 515514397 725797236 688942951 934103193 625817106 993868990 94564281 277869481 981698653 988397669 974159881 987063998 340339578 685834455 870767272 985251513 712945608 988644529 933066924 934809713 172790534 551066385 316990761 829668100 995508171 997629009 163035591 294494490 326741131 919684345 273338923 405779329 350713126 502317028 874730214 994454166 268349018 840704696 545382156 822917826 328396112 551264585 280368797 470683416 948902099 976034405 185821648 455048689 785450844 900677930 642990731 785492452 608500385 637256948 704719744 786435834 356473064 949316108 397684618 474158466 981045009 982778396 822015926 962156825 934924630 980637638 73234903 405315066 328429462 879924346 74403018 369308410 109057524 170032225 595464195 650682860 221292051 918748636 15049604 729608943 229806711 292409074 479927095 980369497 58865192 969781985 27412369 944951042 910026788 913103318 346623106 736454977 153158435 312564688 447954289 987229449 412557596 856897280 402642288 866311952 889666491 920553959 849405179 862963637 41690131 86825555 245887496 515839696 235863266 518339454 318179190 923197840 987584762 998495838 914890283 995530613 292769017 447976509 366270382 450593731 278040901 854120319 621195564 924683355 842289113 979269200 201844951 633744833 925651689 964414505 684929872 731525245 88791913 516777255 606711467 797897962 843495672 853734047 389681533 965387639 546467876 967063550 801338142 972901443 31099229 645267452 377160813 693489917 530047611 834509563 390083477 813502761 664466667 783136535 955114016 985073241 793166035 974936221 168145751 670821111 899271675 970719395 764323969 938917786 778724856 860085297 145153728 151120868 257519505 686043640 699783683 793653894 158328491 328825626 471900675 600311176 139910609 937852453 897237125 951814381 48481895 345687737 716361703 781748459 203931025 500410965 620152741 794976649 946510822 982174450 664085836 895810450 502275532 708248385 6545846 136790745 711832836 793279845 449344960 530523822 231076911 784659345 402249181 638086443 62850484 911817822 569207226 762977563 920573634 923312384 582912719 763969821 884727186 938580166 116806258 693243017 459894656 769936021 726467374 956080616 232159690 356181376 413462884 576499778 525410994 845405989 828825163 934780063 450463564 862146719 340480901 370237195 766022054 821414614 988266715 997735100 710311336 949444089 386774312 749452875 313641196 352439058 357924394 984302125 851961842 985242042 573326054 656247099 890635331 946784165 973092207 997299732 408233441 729853396 730756714 853177425 578466519 820169125 687489962 785453366 82099929 568503886 283241267 930652422 34888113 903268421 528749278 640321224 653103544 845521475 928641345 984806915 619288397 796896776 786887743 951131957 763901807 951995073 358959108 976295047 255760271 483269531 701598328 876859290 172814651 553984593 215450800 338007946 727722765 942490074 393222888 646229411 788195904 988508745 815978935 972292070 338203655 962543807 723361145 970086070 553524562 880506963 266973833 983833707 16534939 487848256 836526110 901345508 901373594 982315346 634797330 934194864 325577206 731411082 130529657 988541262 300160289 364178505 745364540 757783881 743270993 951216163 711028620 813759622 141906280 682707656 366492040 807278650 40850383 813439850 641919438 653944786 546614412 693557121 712409360 741297703 633187135 991524863 422716170 618863227 692781706 793619690 702357868 824208621 372875363 857014089 791484770 982751548 881955852 928593265 227421337 506706438 254967887 745924393 339694677 697237343 834065491 929287067 12826931 977436777 831933290 852986484 151592993 849162541 926740108 965441700 468245698 977311379 393410980 539580447 851245669 897186122 65549945 193009482 17886648 237827420 734530870 992805097 510517444 645952208 612852551 897894739 905997620 930440644 528321887 774587302 600936396 882489278 143266902 604096289 891728642 981958811 308265237 994114366 265280207 313051151 808049317 974914004 149847682 800801938 273183697 383498866 135471878 579990238 284487074 305426526 91597069 938083332 377521961 467342078 248494285 586927440 70195547 492837493 238702131 662089318 576393529 869851147 839864836 912119577 52579066 619774585 366898729 796280328 271900116 841550140 67519989 482469110 389735650 776998330 101223726 513781848 237037407 612882745 571714255 982279838 3354523 615368577 774189486 940900391 226085090 821529344 592266249 890355645 268198346 986375674 46739877 944078845 375408367 380181208 659621399 837463099 487229834 836218529 580978148 958383091 715279432 804136952 729439529 848224030 17135865 820442446 567618858 855160820 612368888 643996240 311945379 525924325 914453800 966644087 813923827 955669256 702258439 807634133 107509070 658350357 115543383 745247127 919643756 994029562 600326743 968224428 588446596 734021998 371401362 999242774 304055522 586537114 279238107 992144043 812065069 898815041 296906272 502476341 863571306 975382497 372333541 557612112 999256104 999778770 225800276 370614177 335424367 522341535 129738736 936095564 182420568 359253633 438876195 853697261 128030142 210434328 96959763 457105938 269355108 874516858 500909407 978229133 504611250 674710487 916469064 995915857 982405223 982998728 981687848 993515602 104960978 282744587 618606898 973296707 304308868 996226967 590998878 710527459 49085928 550301660 402342243 579158286 419757615 913533805 217653656 435617276 170497448 194369179 672985290 716990973 270452382 781694845 755168752 836880185 400215633 489064026 737566751 878928288 179020270 924938149 929077228 967361897 877397207 880698454 369973163 548044060 668901218 944219151 959266038 974451527 155052159 820915128 71726763 379190714 419460207 585046417 945663831 958396703 544728282 556063175 268340126 645172906 381075703 885330837 507451789 661115763 385442108 780881341 296109105 489104346 196472605 806060130 490043369 871750069 972879433 977397920 536997313 788926872 459505450 881997884 405805597 796645555 592870619 798106845 664013976 694940541 598050256 841130111 685345480 951041696 786193252 867054810 226919640 407511667 380647962 451337352 322411069 434665249 43128061 752520657 697921805 741474336 595099045 723513841 32868448 813914721 619625853 939713323 198453890 432859211 782585466 951057278 982162901 987219412 952473540 978031172 510483822 668868337 470819572 518833871 239454873 792588567 959106140 985422368 266153701 909572986 465451824 610420212 659291778 801670731 567795271 742527874 699322059 914718853 351395625 906411107 455412947 826883515 703227940 751219242 899901321 990597160 499386920 842567925 731683361 927340479 608308635 659966465 694107941 931975116 299744500 978624026 341881308 881857866 340220555 839176566 931949880 978297869 242063132 986092854 808444182 893749748 332955637 439758370 465089601 930335158 897419549 994742241 688813112 951024601 35011920 898020781 947760272 989105350 258372870 348168252 255819704 338883797 408593562 774936607 502230383 837353916 423301514 856355355 118939482 709091520 40791726 725630567 539321050 591540240 587018171 990601545 605557071 757419168 948589597 962623330 415740637 876840210 703576869 979075450 349814014 580084842 79977931 176770944 826548770 984083515 115095770 922656084 536527976 833089298 66815554 577489272 255299906 513219695 628337521 893078442 536765782 703383384 201936414 442229731 568552249 978425261 247522055 738947754 704212170 831697082 67195650 71517008 692222426 885874988 306188387 418951171 953359712 994909380 378324434 505075392 297924654 854543840 612508734 731924497 554889990 624492615 669810586 752098921 132290702 214090432 636969796 733821524 542465361 732885188 623069757 735755567 203881184 706545683 477708921 753540155 319329742 360074627 271285720 450345851 203930054 906849873 244911742 836402317 502331358 786388180 692612079 771775315 850770418 970456705 871679078 987095297 121982119 548557088 712750817 870531379 659329453 731413573 926027075 940596526 292831913 506284424 469862531 865985334 905835501 986705732 898663420 953134596 463450538 478590869 779675670 811730406 282437632 603465221 347396782 983385675 25234043 766869869 544177891 606409139 979125157 990357405 716241634 815416992 685536120 960109573 351554984 709170004 837854079 869753639 631263356 648335815 590143270 677434466 1936895 57107556 790882769 856233667 575256393 909425773 927040564 955774316 714917394 918556185 31956975 92112631 926276667 930034665 621511820 927182135 689735552 799393464 732944011 733662223 459229408 847693205 737192974 913997910 525236421 630397439 323985130 467053641 709037419 818341778 96930497 619772633 277765469 656736366 796384503 814723847 704831474 885676724 973873429 997205442 683849632 796687642 825155055 928636142 252346491 356719511 445048136 827632086 315031454 800666873 662840708 702455675 210193879 930174342 386097995 851171092 491167488 871301545 126309915 221411145 712504882 861407301 343146118 502641172 462439384 649073422 656478807 889725616 635556918 746375290 277254246 881214983 254802993 644733071 416400328 524035426 77565440 478398927 803331390 946786563 192929062 998141884 437913487 959475335 834834033 865830838 263988554 968493628 468698089 718736222 99055740 639556860 114145476 885549274 535367033 554585567 91922381 107117609 23147294 808305704 643329974 887261446 552562532 851832655 949788445 964940529 117680627 553951024 190898014 770459383 156232459 444279751 953497567 978553369 877197728 891250413 428240 701119230 490461919 946523434 267350094 611149928 339480316 735317863 385320668 475828636 721844312 894227134 654019117 917261382 426799962 612047411 766732964 835447325 226287786 906015923 765006795 848153010 906434607 908036819 617203098 876233975 310989873 375340610 103672535 983730362 528013048 725783286 300684669 760569537 297723686 902529141 281661611 560646406 430923994 520827147 623543578 703871002 598251279 822868294 850115466 953492133 227954198 547870960 82127524 349608292 80479086 237872546 189133298 941715395 646136858 784462250 733341512 829153293 211976524 912015101 691107977 867067463 203597938 638650426 786721237 930661864 723101978 947758699 527460080 555320813 373784578 397522847 824035562 943145522 298614917 614997732 608113197 648984428 716687565 749678994 712567460 966426340 767958986 919266034 195804886 232839696 230097779 705885785 385605338 884771927 779988604 905565941 628221249 724103710 687385760 975266176 398894974 563518709 855239437 860944258 81665590 261512574 756233005 844607841 592143011 713484846 325349009 359478303 979099291 981486706 173009057 947965677 979809126 984589351 629594398 647953945 774087122 953023934 676195969 839171337 704575953 826889237 109299884 596979076 77963043 154836802 767908336 837499421 451077748 779052570 350452753 866546063 610556319 961816101 838159978 904786189 246391753 718459117 548737553 672935806 821733069 851699901 525069320 525505736 267989479 280832548 896334894 941696573 760327268 976687170 904653172 914276424 305968356 306751549 528267251 720863972 247907508 607410981 218477453 589170541 704244600 705238933 171180755 488013856 669092636 918708802 84826175 321139177 974112944 983382439 452882392 482828463 98201154 587729046 710218620 952970426 974494427 992563745 206771952 330249354 286502827 314414768 845003953 864607171 567303070 671996772 552041113 805313762 793231328 883167112 236779736 431926754 413537424 814962522 658040272 789958195 138413273 973345568 6727793 390922958 891949496 907172908 306537631 620346797 138213337 630470061 547871141 598252465 966749196 988417878 893539610 968186776 970861407 976922803 221588818 788860060 929553732 975509528 946489371 956430964 5958528 866535514 192970649 751049208 434244532 870856239 545332958 607712786 456409232 942331132 460743932 575550185 279146558 794188100 23495826 639570873 561932723 786691426 50783115 59829033 572478213 688255896 613801621 837153692 348542809 704547820 153080704 299390687 520844752 543186327 19656153 545677397 714885059 996592376 88571700 286797072 340573366 466944717 170993142 488386607 384238114 403210372 278580465 693690884 603937992 962737570 282977243 700635386 736016831 935765417 814191076 817300821 123073752 509709449 393909303 549416810 762095266 981402356 945192740 986552353 368591920 828518900 639051162 650910012 546276150 568183882 44337776 270080923 277376299 381909166 258096764 679760761 877608592 974959528 927124961 965157183 512639610 677513328 773203485 902097517 435079022 632433664 81956429 386471850 370218675 960259224 374223815 440217258 187779092 962462256 427349287 550256862 469665230 522864214 631326938 892960843 173625523 650098507 162503001 775790080 797660818 916510043 600587643 606344582 540016956 662327762 383869456 648322302 392696056 459698339 511326856 527245252 676323889 797384516 13539200 29257433 845803317 978067647 133627385 839665740 997556644 998024763 790382209 876686012 795559301 995548999 373645086 807567652 367676421 509109866 703135327 803026449 291785109 461216249 319508378 960504257 683254092 933491690 686826366 915297348 100157762 813567441 982608935 995952456 895531466 962538120 979946675 997010441 646517277 804029448 823678728 902019654 885380784 951982878 771596254 842645186 349972650 762102383 796253111 819261688 865980713 936015373 351412383 957504739 775053186 838020800 973068722 996179402 393572611 397462212 209191007 712851311 153336293 343022765 376432475 405567920 438229689 893437330 231547667 938851877 767587303 889657103 565450906 890538426 999126376 999949142 235773683 491400337 970019017 995587574 494754711 950987561 172499654 965126737 821978877 953433358 740314336 933951624 338602943 579415960 13059775 323745475 660397926 818673439 890101034 999176988 571399321 950655055 124638960 235357134 729498716 938358332 303923541 958460402 169378258 250186469 829685844 915981653 230387530 738880327 655382585 870134154 629980142 868408817 560114194 732702071 42770995 980126943 236446400 994199029 808015524 872461855 667867130 688536731 18613055 654157169 234462938 717251654 303613989 600863295 674418199 989368216 415482993 969815990 460260221 547249922 444126322 956515211 359034615 613065786 797436860 988607363 872024821 959454409 819888549 926189377 637777019 670992230 927540361 932249152 106225524 670970921 492475286 658417720 193677844 987525685 740485999 777186554 393325343 730144404 765887872 932408105 71298156 355651455 438287420 671105987 272981496 277904223 726550412 865959110 50797822 385086221 928802974 949388415 850257953 936512240 769635359 916059756 826618098 937401315 209148795 690401836 229204010 315900121 256431978 595712206 616686518 730618311 243057353 987897418 865922448 866044970 919998919 996814284 291828314 907725211 28209763 178423012 844367977 958026290 206432429 446221638 582295998 692898265 735569541 861491509 26396193 661564103 804760571 975959119 351166738 726321966 633107304 837692998 289493454 990131962 416244970 687867769 727115094 741076267 429447307 953721972 729523524 736139966 854522841 950844784 216225112 815806430 773138714 777757773 745522390 810136265 364407682 463044930 938418310 948274500 858730245 913889261 23342370 833616453 647347446 937957190 41431184 937148828 877885499 970264625 105314136 468812378 988298848 994548249 811765166 911663155 253023929 789597172 768882932 813397081 463480862 942843260 206163085 488843290 64435469 154853945 10771476 827300089 482032279 957511184 234683631 763550207 368152008 392166238 147312054 902512638 621014732 954295538 379795852 814871474 7509054 32645333 420210463 709269391 329899067 474896425 382460386 902508625 137188525 901047614 636244484 938876375 41275477 409477573 882949954 884248988 230143150 325755234 726472178 824194412 652626900 748230995 36323571 361906387 275301575 594067652 449878327 696432033 140420490 602288179 837234523 962717706 613534723 719608111 882305316 936933190 96691046 229405417 795402585 891749722 437507164 746551749 38296026 536440265 243682907 464849225 172395258 444164627 447608676 803777194 119119069 984722343 38875885 104656019 994365321 996162142 154437828 883585077 315526039 583395954 594514182 796875449 118343134 806837175 898138947 919942916 276000022 380351019 110351181 623126897 48065196 405894246 256145088 478080421 44753467 135989423 775932858 898285646 123653924 576468605 689424496 993500558 558112543 935251719 172590875 352580441 112446521 286826823 327386643 477284024 725175182 957941429 270272412 593629968 695601907 813898895 660439139 951929913 321341969 570480068 438547364 891823911 452055689 746691353 652186784 772500904 42640629 561165782 941148717 974664187 221308607 650694150 14160383 648571763 429558617 546805488 83785693 598207309 280351933 945143686 352748223 488465509 209672502 577042280 752868916 831621912 422155119 806956467 958165698 982138648 69252266 601733429 296239971 403105999 635153373 830673907 945376831 974455778 681280883 998120321 227803378 524764197 310227634 692654538 836429155 841371802 362122581 472014517 633640711 998562193 215567023 728954339 63648662 883668248 15094226 595106160 110417250 709968770 745829226 828176858 472951020 972953515 158660547 485787908 890358752 907051797 417130263 924157278 77344594 468511557 582825928 848926703 135098690 993506360 590037945 864800791 61023654 206930665 687466459 915167957 768389079 925937220 937014299 992264734 640882855 784422042 235972001 816053607 976542798 977074351 50215453 210848525 997036534 998025050 743436303 847551700 604991247 732621776 767864132 797523794 285196596 386973129 221283867 286997169 677004243 746629898 8814080 14192164 872209063 928037674 527243972 767937979 598492128 947340950 522907010 594123076 49357323 523344913 934374812 944162788 410958158 894629875 587586296 957939072 812480701 886820050 193371529 638543064 594989948 972070064 464725722 479201230 236847264 432284584 61708862 611753302 462198147 478023872 658725809 714076198 433349620 504987067 806773288 982530337 575974218 680827596 775467243 782465571 521734114 799176048 946132425 948504104 216345549 721111091 630427048 681167330 81523965 779069796 543231462 736738205 768278389 784636460 739597767 880793556 783092183 862748378 518982294 584711988 985882887 990663775 108616718 476329775 740045594 778016628 580199025 866339396 680945416 728259554 563324648 912729979 496473779 519874633 352641821 971323006 640914466 713869947 12245243 172450645 596899201 724217030 333476627 703390459 486423803 496688032 26324217 960359817 506336652 899526792 246251730 502045332 686956583 838060902 549834129 734304574 903879359 993065239 521513985 785051226 686270628 958978387 265416681 443481127 771914802 876546643 682161891 894464590 965658059 983328898 961600397 994418344 337461346 974108672 969355496 993719101 823719600 828079659 492571943 591969840 614461161 926912110 283911666 375192742 539895213 919144406 30895995 679983683 673673570 785797274 652957521 918890432 612676963 674244113 472503400 590326395 458595856 655564762 98673144 672122505 23677553 95717710 822474750 884175108 689006036 763370816 702605881 800107437 158403740 949959254 452632826 520318439 996218050 998411972 809986678 840280382 547665302 865789272 919096969 920166581 922847209 941745687 360964227 529706710 855881202 896452646 337085685 763627744 551694689 575612350 902482967 910644182 454583870 837217867 791871276 968115725 557406703 708736367 249670091 835746074 124831457 640707563 286238588 439317931 224741858 512423235 74602272 380550806 844806098 937487711 551617868 892761822 532469613 748095056 374043426 725530524 589401784 666044527 319712078 496301008 48470615 71148669 950521687 959756450 128880616 934389999 893137631 904858629 150867089 445423807 233105655 657224239 535472028 692957404 173567735 672684352 418131754 932153856 80891123 991350025 646679070 736001818 226880779 260119685 289463876 897475477 398799172 421313046 25609965 32204926 401886870 984342942 992059474 994998324 203314271 823026903 569227145 810148861 192002901 455996374 967212471 973158601 540878590 766238165 625070102 982099661 112539531 580430260 821674438 917977457 570746379 976693033 141236969 991391974 515164611 624633608 248055114 378153110 952847063 994188736 969190582 970297531 744128047 834063144 802824852 831264549 111013326 922018576 112584063 828445524 662156481 981651405 6435345 733583427 37205405 846493473 800691655 939144839 943358196 995722096 305041354 732522370 968735746 974313724 275307427 938769665 550916918 667989702 645715073 883314676 634804528 865740517 491739203 698444528 609503567 660476096 185891197 894168015 867574474 944137687 861426470 900951878 443229765 948658658 78933345 360270705 871190049 982856383 537741242 640351846 945507086 986763539 11068420 521570062 136471713 875229303 331878163 599557721 45123774 652152243 497024116 613847434 614264966 806673990 130930822 442036237 524316903 723880415 318359716 724957080 791619537 916106762 737561657 855073023 838839257 952745665 565002959 867637253 205641293 497296496 899357604 951910611 898554895 935447223 74663451 596416168 593339219 816972666 825164519 922581580 170421280 284141270 597559825 835830266 121692602 676883003 265717502 330156411 628619221 816988214 839398518 998330419 855913943 912663451 182567702 700593297 709121113 984292307 258056776 265062663 12924118 554771558 278592513 288696410 534892504 963522593 339517856 742678111 128036417 590974999 621015560 932837715 218190512 579049864 945938898 987523069 846973015 866974389 62949502 908295674 954413028 992958161 690172533 904177355 375425654 392492801 410847864 635732943 737807602 998814865 357495188 833880252 275160570 685144041 510377127 794934730 264810787 386318412 931433271 978163232 545829348 611161181 600607276 868103291 380862551 934590522 644272559 791414867 877739492 957237569 125770913 925207284 426683906 964714941 813825747 839860845 999924644 999952208 879935687 889081766 266114284 596082909 589337945 834364862 991391132 998798059 782536535 790687305 961453758 976324099 405577584 675452770 960183293 964759077 522535786 576631161 592940949 620492984 136557264 334807717 843697044 925171161 558407143 628831663 461066068 927881828 904649948 924864364 346439092 703251451 783255606 857849145 816820338 913618891 443934651 992192776 5526393 409548147 106827843 301574235 793004920 809529656 824876366 950617772 944905542 969554220 960353187 972946154 339573286 628272776 614950021 970565208 382199335 671679700 647099999 844721060 229069867 861974432 639827034 898181561 238261002 685468234 604733333 859400643 626045043 955655519 159238778 181064608 924328657 978052273 415491646 630564025 70694252 403622268 41757285 648524114 797178119 938036425 169752715 531140227 831398876 832190840 108219411 872751699 908304944 973904967 346935352 731880807 593914993 830755779 430882211 512158331 679082951 950682129 648530117 759973795 474308711 854356052 879614756 901229093 583284178 938923345 447305531 919247065 817629855 868557814 52906387 332058984 332955200 822876539 20041143 950015561 487253886 544756711 711151424 892063947 749262482 854291245 839721544 871242750 743216321 853852080 42695758 756515425 374725767 665026906 3365528 359295263 784348004 871394340 717412203 753212684 148339496 761814560 918730346 947097748 98009689 865898998 835477216 958296050 406054270 436031294 160925769 203201517 948572719 993212167 306794328 477285642 458327259 713672521 759832156 898416222 917513340 940451828 465350315 562666208 415374540 727973772 351182472 938579987 654172866 902109692 689108 826547329 871237317 945406655 340818371 854995565 632944030 985733730 90023267 852059102 675271106 801362365 477176154 624207561 430651283 635250131 546456086 605731631 770321039 849276854 744703651 764572985 756022459 925890342 953520823 984539893 489617755 733081611 39815183 126292374 821603639 829747831 964833818 983781374 792941407 946195020 479266 485470191 46228546 498578754 370557005 857418366 832042772 912413579 301220884 821477556 60699111 761407041 706651822 913312475 695018218 926769046 461910018 536194393 62409979 115757556 382023258 649154215 690804412 987693400 97681683 130400413 699406068 941567151 494929943 639477853 105514427 426211267 821657475 967389961 194400118 384644670 35389537 167556731 786976506 825372034 208302657 904925874 965263501 996595519 432250335 709646878 502957 879353029 516681418 941147341 804766574 806702836 706509840 911311337 80279895 494673029 730083459 906436753 577352577 947095835 161470355 374639871 928096396 931945734 141106384 317277228 592091527 784726620 808943148 810944076 659470516 978670720 483780827 970656082 533378451 832230226 739456619 973842751 884668236 891043286 64568848 271755756 15168530 133007959 82088303 423876412 404291287 994069349 815995529 838990845 710381898 755475630 395359733 693242885 947381366 983912493 810943235 983848248 684738954 788218594 533830677 972090852 568475496 851881539 5013315 485644481 791286314 981301544 937086493 974930377 627746188 976761422 407508835 806410538 993674451 998781907 974211825 982906122 504019206 567349013 256953519 858800682 189738323 289897754 975508851 985934114 704077806 986832288 224161249 651580345 910550010 976035153 427570277 808293520 592706851 683295342 167084378 847414861 882702204 945962717 833549322 886944646 911865028 968363520 362061230 634895528 231817166 816428559 591108110 595839542 990224550 996892226 53894502 564605552 237853635 244715955 810726598 829734241 421874361 907553739 38890560 585476593 245846816 639871098 131055710 524537452 516323812 962442965 924370755 965340377 277852252 984154021 659683900 700681041 292972428 583838423 306083315 429097054 661413488 799033763 78923839 899744114 98458761 525141416 284095463 696579208 656636112 957244445 573846155 926922083 208848812 958090996 996722035 997908996 639833041 872669556 673026954 895053054 269766748 494843911 976544426 983544326 299004842 928849696 838073508 860546618 725867357 924416433 167883041 597668435 729655179 975172480 929278632 966112811 544854771 686766613 786892271 900675349 506967670 772398565 815465713 944349927 728196698 757962971 400859218 455569261 954171631 990328958 681106334 735637984 471160333 772749246 683101924 955722619 814215232 927062588 231370951 919006299 942068901 943743670 671723554 709248330 840262030 898521430 710109652 942441575 290020131 398141689 141301495 254716511 394775879 765402225 206807256 454228990 59037973 636937705 248666485 326914253 107517910 696461068 572497840 686541393 243473760 859863255 587718241 700646273 635982541 787375541 750811316 871375533 350612880 685799365 449317408 615174013 656859450 791943482 492293637 736131106 43436433 416631310 292163573 368793912 419830413 508270855 549754416 552465573 351515128 847761447 113593429 335499297 47998007 292972299 718557368 831596233 923651286 924256004 574589708 717535291 133568725 180582632 894082728 957474688 893741124 895334916 745882733 975889799 179155842 269870871 868168389 904574867 287498596 316484367 466122273 527759545 186228077 653550746 831395891 899652556 803225711 886311045 280503296 448338942 455706413 835139839 458300541 881663282 48524921 758126765 94414129 224597199 817083035 979229609 882458593 904701103 508117478 514019797 639065737 728774885 190202141 661387118 820302381 904714510 202880759 558090376 417128361 655336342 836123285 949522580 18150693 730839883 829933758 855919103 111801564 184243984 409730727 788882140 137435760 923315429 802161883 813972303 624824568 684062091 421501527 685674980 649483082 709222709 611635582 987740692 738876708 832371740 94636768 700997371 750957490 996414448 447960792 857161912 100782352 444676998 984191643 984873880 998257304 998802818 754110747 775703224 398914294 780152492 355391975 743616329 167616072 329974035 568154185 605617466 949531535 952241482 579718026 637407204 572538794 588465650 932697379 956839446 349599750 970439079 407821803 460259189 589870701 702244022 995909821 997508024 737154494 987192052 643097751 703490040 829072839 980059170 509631656 774546114 156515689 431012439 820735116 892702764 564538399 760962122 533891192 878934274 431278457 985440615 387548669 701025359 357440274 714798580 73421628 336008942 901426420 906762451 972238234 982920679 843282285 885095430 492929872 742692720 21637030 683343531 846238105 898290891 807770624 868093092 782570332 947747816 430217327 603177130 571294431 597918932 73809339 272533618 648972836 675603035 874711575 884785338 550956295 901234217 850035946 878396930 436907001 593914747 330624328 562538120 979708744 991188609 749349777 915678355 384204098 915682873 876084423 987174252 472734332 617279538 195672913 330014053 976229829 981298879 461573290 791275213 911402541 953168115 759139282 847816067 894467898 971406042 869123501 999346396 318921206 801511521 388415408 520354358 680428608 894061701 258059681 514221690 259061729 813347241 101092359 850625864 433054166 954812838 485731596 677382839 641696440 935995559 711006433 895825887 360702454 540760636 973718183 986963528 226134255 855628864 669405999 854382396 62585805 825309047 532499470 612216241 416294162 835834909 351204876 844126062 519730593 808506398 759745815 921259105 325546260 989926657 797246780 845822241 654978485 735483516 507242760 784449293 390414090 433982782 839639535 925507706 521065793 623255190 619041380 681184655 527385151 755513698 526277129 813294471 410161296 640687216 405748993 757184424 985426192 991395808 117938031 388360605 608050411 809972932 810638454 959358005 747736751 984673840 847189032 862479588 962019652 988273626 409548206 959829749 296750745 980192815 19870039 692112800 69134380 565545033 353370095 365277794 304167949 840500985 430291414 729645167 132538275 671220127 983305061 993655999 956720717 966645850 302007911 943567956 703882622 987719488 533153546 757046999 717108303 750516895 329075479 966109492 775867641 875475883 20563455 184554725 672155223 885151544 44137078 775473986 108446515 913492599 57358818 348889711 825537787 916085822 705398669 771010072 909729002 917236941 912640862 925322696 341393079 614185535 600838243 795694183 723703692 952770619 55165076 873364861 452885550 556794020 782540182 815414063 73231228 379030419 192997880 747695032 878174018 943273827 137065056 600307711 414912667 613842113 707516371 757572327 62013987 138034858 402816729 781748819 400087465 988741636 769814872 993802225 422717275 431941651 400590393 887198059 375204844 657125650 692832619 869815286 553969208 559691157 114344210 641709070 642430571 834980430 23024573 811701574 305388789 830329024 604379324 987688528 883826674 941006199 320206297 558727299 646089530 998410875 804798235 825650485 439087510 694754462 84052940 231280046 947037049 979980799 751010636 943505825 14482654 227558180 917192829 960636076 298470682 485246719 759938366 769600739 428895051 495441921 640996721 921390444 874855932 875806643 384375349 849863372 419624856 984863273 16079863 220766815 450479064 551798140 798372084 955341154 186977870 815520604 604195172 958098820 238330517 387662469 989654628 994695976 752486481 889818650 518695780 941171400 172967416 738062576 607852271 705792102 781795321 986372301 109799317 623202441 377274201 708403456 374234833 775234659 249250866 442818526 822208130 904652877 967001556 982122409 123893133 333105165 336068905 777989460 789173687 831671684 432586562 565631047 648360706 655626215 105021965 348265061 275477300 378207382 217208955 265267119 959483966 980577628 703644423 940987017 536989148 635033841 156575982 938456950 946076866 998900461 301167313 814694398 812716668 851126918 383307146 698055014 127300840 137526594 673215513 916946300 485939539 487930267 731887019 818152614 263175739 987170099 67807270 420582745 149432742 617226375 820029610 946536872 47695912 539167115 945940955 991290313 454495269 610896845 39267016 640165094 849126432 864999848 968146370 976890982 629586114 907286537 467642716 834239507 465113497 471810502 120449288 280136467 662159980 865574041 768126565 971782201 324387649 573869949 957086192 964849891 843563864 935556849 922736694 942867319 90314755 865973114 560944559 767302207 170089225 356085717 512279758 512596904 489347756 771873354 932266998 936669419 138587550 933963864 774057511 776651424 739706470 903050139 448402152 878159246 509092343 734294082 113490041 332433236 175268112 579211878 266084825 267554230 449001530 770404203 180472602 751356604 86481162 114801665 830303195 999623327 548320199 877929234 897278083 914350782 693908287 801817562 407301475 435472361 460134907 479102752 920969782 995567055 567347456 947190716 923890646 926346018 84437738 528958793 533701327 587653183 220524376 761917268 382354618 710677976 116507297 852626331 718061986 768313807 747545707 869807005 426628069 823442782 790941026 906409809 99365957 824185631 740559443 873226041 103352980 780657556 365075033 819412434 757607251 895244474 519944969 709908021 553947118 683170349 704299722 878665074 679781292 885655947 411350904 442522835 455081872 853616958 921598914 954431431 334234605 388024730 374991445 991913212 75764919 118536678 201765907 343474169 100371485 551882454 883602123 907596367 280848295 310378484 905872841 992723206 833364535 947373891 214431367 805068359 585024589 878671772 347500040 910377273 522171512 836188879 879718936 937426450 511199959 944235133 240680634 435272899 432044301 527488628 627622892 997661804 534655243 663813384 564311324 700189435 493849423 711823180 15104259 306431194 145834495 988398171 873173156 874063435 50077524 351927599 691458483 799571160 105572614 361795141 709536041 770718183 917897766 931114521 702876470 733532272 643271107 695163162 534670776 619517235 644524356 755791643 724018176 847878297 372060846 982893199 779328302 954274748 650085282 701247489 744923706 831781516 666741285 863186918 133591557 788274994 43990746 464191864 544145488 599406199 863146993 887687656 468068834 730426377 879451931 901578552 298890918 304923560 26186432 955563140 670753256 846935730 903107257 936907974 220519907 402714584 385409089 672026773 198462797 205305455 696216921 798395745 187399566 715423465 119524798 141471037 179118915 231736199 119918039 132702719 100782359 304796860 645625936 677811913 717717356 839422824 930942220 980205093 105617298 503865522 5694939 656696149 752256836 814128986 627597510 706753421 935866733 990809408 828870351 895375464 692832627 744640692 384643190 639228666 669889942 837101204 618019760 872032921 968598839 989114426 603402606 717217418 144062933 451998334 429915842 980213743 938783358 950916302 602024772 957703198 726095822 785636042 799558990 809486058 368660636 906402472 226667596 395975252 82387879 756335983 436829117 957048240 502321733 522125018 644847378 818523672 975661030 991762106 814947500 994114869 385031266 558698432 18549379 680257466 932204986 983027063 521651052 708678793 219786312 518890110 731535165 946344035 666228041 840225074 878594437 887847970 725636858 913746368 11038225 775438643 248558236 632781321 966572168 970640441 612394505 813953712 374932864 948864028 979440531 995238263 521888455 769737259 192813096 291838592 363632407 784860185 622928963 713107506 227401679 486870678 924714223 969929598 255643837 436152868 449164242 460376623 390824058 404699260 859110208 976903268 573083997 888700151 399554206 622468861 272988744 856847507 366528640 705975058 382319909 582330062 482038086 629214728 124971322 182178927 774501778 947143493 7446092 646499412 332319246 816833605 764067545 879657865 984856884 988790827 248449014 595803039 606049085 749802875 649698050 945026268 500160599 912959892 567406841 615916404 853872859 972209315 292790732 439163315 920428854 966165717 976618640 978423050 642214855 650361517 212806445 892676997 270428438 334845807 855106516 982225929 597973565 664315683 813574782 877289891 615799887 890836258 764168546 901341189 918161052 923969994 174945468 406478479 955819625 990645488 553538747 773812007 428204147 526839870 319483858 564055159 8379955 338058464 1609176 404862944 371050002 899239125 102298330 549945455 700157858 724417914 374542182 410102197 108497318 340896613 163269864 399288981 409868943 989603714 271845753 875974169 415970839 543102612 524484458 627788452 852936539 879625754 920797823 995751063 462415877 860208706 56068331 126464228 756519944 823781384 347859134 833250305 324220265 808263130 478268908 929629321 936258921 939462674 740351438 867283967 457881773 646935332 755987157 890218140 156745933 657541543 969558677 974259404 313841253 586693668 773532308 824501573 361275543 402362578 911635904 940807130 682668957 869472634 181389895 615259868 594794680 856133977 108858961 406319749 259488099 588283803 968868609 980247339 818779774 851459266 878274546 943344457 929822187 966683253 127974460 831204434 167137068 595458609 324991734 512042895 346500739 372910801 489304869 550846801 816788630 834737497 961330966 992140036 164285702 251681152 558533418 663720468 416762112 429761860 330958776 568342253 950178379 981129545 792091863 935609212 410224226 825915336 344076966 614084553 118159110 211865277 337313344 922609858 978186669 988958441 597430049 829296361 766173984 892115604 823561268 990114278 875372566 921063458 607858186 639504990 235405995 573240190 39953992 305011109 690552026 921810668 855509616 927707845 268355791 410856921 67983024 588869987 987536599 989693517 634285636 912847606 496482468 952232819 719185189 947203648 437214581 741624610 915975860 958163816 881860456 999290900 873085651 930252043 218400045 567462339 708194808 853814355 730330103 878102708 817868593 891346233 970034621 981361375 544005737 934616967 53894417 334005280 92736781 532037689 697611517 832900386 457700890 868797799 553538915 849991242 322531175 430314025 298239185 336978855 460030096 828687241 517410040 794244440 2942062 722012582 170942322 520668679 39670626 270187306 590950332 686641387 807107487 807276610 79858196 866205164 830681288 948870024 471320237 638654990 323173241 399414206 745946978 753953855 317442987 435249777 351674541 767644197 852522518 869732610 398074200 877094435 978609741 980274631 825995926 927356306 521204336 840651593 324663235 411285328 179012939 732914471 814999775 960484761 196262828 916798801 907182219 958453441 553142193 813107367 924496176 967167865 552297035 647194545 156071705 232527796 911192364 957103770 319797094 375653780 727951979 866757790 309636800 609716068 770279659 979419509 948190855 960379932 598421446 874185095 478164827 981819658 649108601 672742413 538587761 896579038 79204111 445200737 833388430 839201402 408953631 694444306 199145820 314640812 226777261 284727671 214382353 468962493 693747245 860016716 831393197 999830387 997684085 999249984 380588063 598072194 201783260 528200071 463858095 627626251 535057105 822234382 698935379 752768135 910475362 931986365 165554561 691306269 780908892 965171653 462209001 747665209 146843362 554650754 736419726 833346573 849911844 851647471 644399117 955590496 574712758 878606135 457339305 523830156 817832099 823852238 771830904 859472488 517164856 722086257 232937662 610492287 320936353 633124005 932218922 959572921 864590937 991429808 723302639 919758900 953497978 998780600 196486939 727167408 285223883 843542855 755493521 825764212 302247757 416427827 480711855 985948890 244099412 972654800 240835021 705394952 543136625 716611662 209106641 592885535 278360026 570741955 132618263 496438165 359747876 852115354 36476942 206698862 585285024 992991647 497964336 838124897 881392144 970898814 868430274 953085836 236352774 669976934 878670275 930371505 636530037 898637248 58658639 71544552 79418825 601638033 684737783 728668092 805250837 949091596 943923048 988096977 465256682 945414209 840366025 870810733 210366414 936524836 436949429 876131167 447641287 543581523 775291978 796271997 370898759 553674895 746596620 895205202 538940285 787892470 693040467 781357796 962919790 981263136 805653437 878800753 840466565 907879655 198265466 938687026 776106274 981698530 487034336 721031709 918917542 991308952 815851155 932761934 945743895 966599551 235657831 712515494 191266947 639053057 874372298 900580147 87627534 929348315 916708590 989874662 901138613 903855363 635751765 958000345 742487964 802505476 368276657 646038579 49334985 948223700 190804853 276047145 660065881 961466234 835411042 997640870 739202399 819536798 877295705 964945500 969403640 988304503 560730744 868192411 263085078 686671188 756468747 833075317 966439109 989208967 266399582 880113248 994051820 994947406 407645460 877151573 46523135 927428912 87620790 511556577 32636002 765864720 558849465 655733197 131454406 936304239 902057385 924877744 187125339 714426620 118173839 657910804 566600534 940048668 496518123 807356729 3572306 34503610 397321516 944941037 440028208 557565470 495407486 912553938 687577978 899527448 565488822 614802983 618738686 690086675 386986219 953328398 123326965 304148161 688482536 713474879 781206159 906414302 780063314 902710905 21466286 410516721 564261869 942530664 972684357 981091571 735509490 936227224 223037158 799078861 78588402 414146216 610365588 838556162 439049395 604155826 698936798 802203617 492985233 772745652 645103482 727438035 214196914 754312641 535603002 999929212 950277809 969665375 271817826 857390112 393487137 871298625 104314833 807056023 494183979 837279162 438741639 439122949 92611255 499352530 294388975 870922791 366179098 821611007 387295441 787022405 136759099 747654019 396668118 997924301 278322314 829493691 407299219 421113988 573466160 623787807 779849175 941888441 863008629 945769612 613990324 724087459 556709218 570754883 60799011 103251256 30035746 456665415 690269773 899569809 894273573 977892920 803019023 842561627 523492358 808312965 880702949 939865408 765903437 920210908 191240408 917461776 32029535 399655438 733819835 895536020 498251107 915989689 728230474 941636935 959802968 972347387 403821679 754207316 676771098 970114950 351427974 889041910 827801849 915843719 590739147 836657801 31177435 505320177 491538477 510820475 200305920 609331212 410222901 752093473 298122982 763086039 575237063 959445719 996196088 998824756 704103759 814580711 436606184 469396273 723424662 752117436 356823923 706870435 553956524 826593319 75585784 761549555 810381125 938102689 745444953 857805476 66475198 373718646 63958117 675266978 246673970 598491410 249795655 964888718 518435732 592230861 162553127 868190165 795793358 927579120 698409880 979499859 218987868 787632332 157114497 336909239 858372021 996013841 662983622 952033501 873207965 896755642 336522516 492550299 763459015 833236011 833901663 870545757 793920120 861455460 460148034 691914142 159219914 630467899 130497469 451086250 943390999 983670313 885596376 929559463 693194644 820374712 616208754 657683148 622564623 740923440 689120587 936825815 276991086 880562343 817058513 951167244 369658467 934496998 822980880 999834470 938618577 941727958 400781540 535232162 866682650 929373161 968654291 987372591 2871196 304152402 140403929 285720481 114901848 584180215 290526383 490168274 341692950 422248551 451007689 652948223 812888783 866626512 12518265 908271825 430212254 589427118 802187034 912634114 881370133 941573119 779941356 996629963 898214521 898832812 339131290 341267607 570720690 656184320 448855178 814140942 943702867 951295415 75083182 536126101 395484861 940230287 461592523 774870185 563201184 804790903 911838777 925440699 480979010 795486130 59073218 716842975 843147336 866193010 836745225 975476024 118886706 941243704 291218475 344423104 353853274 825968630 331039262 764952901 258778366 913943510 899220428 984782718 89656951 779279412 292320910 542391447 246336791 660482220 339137753 801120135 395310555 925526563 27537427 54060366 342451783 352632110 145091623 509856257 324415572 512699774 838246408 925879762 922039778 965679098 138537543 356180396 689651577 690542842 728678473 813832573 532140432 865375738 875746545 913121217 585522291 702165049 585747794 957447946 664858891 923012986 755575463 914930431 670996599 961562082 879895975 943604304 790320219 963261423 179506137 877914515 805605671 877622313 585571155 640763770 334475448 747433621 224867613 456210450 70634779 902430852 353212888 780603517 545427711 731918896 306775398 560267740 755586310 988125958 306503285 602800953 576471706 670753983 573124604 946291266 917076921 973137897 802410695 888393339 954743940 985381413 535265957 935653782 911657617 994012463 720161377 945833228 198077942 930862648 570540561 734799439 991649133 994359054 758626423 867523444 993652603 998223571 905664252 978223205 288767253 414380189 123728227 887675355 270323144 842578305 588658844 941662042 380332066 881063703 147359675 525304360 775080933 948892434 39597774 964863489 325143196 465346850 566187578 980269103 321136668 634924811 645914104 998997947 38537275 614648896 912030950 959253791 102295220 995432929 893480612 897095094 762067291 822355754 839792215 854350949 694769330 858888350 601828930 718358720 416715645 624855712 830908026 912380851 95135441 523994939 658268128 706431653 315445570 570467491 485265968 723668925 216836918 880559897 263706145 656492698 77067577 603818240 963148192 983246870 489041186 580941156 70550448 687708117 459036466 692389481 750798445 940579481 663980496 930650654 520026904 837398317 254567229 744051537 947003297 957318562 634422407 962274545 869627486 891675187 536466893 697524667 902262265 981359826 86916012 685633525 841758479 869605921 164082834 521595001 963424025 967752275 870400740 932031495 889033505 967015559 524801839 965028722 70140187 729837033 157600404 451856922 887404321 974649508 773591190 979364179 522770092 820996746 813833174 995482115 594986567 996692088 218912746 221795771 798734149 948194812 234615265 985301295 532188528 607652520 822195485 968929475 175785291 776731876 439518287 787375970 84944531 132057532 611091903 999795934 378176023 937871629 847394007 965159589 689739982 751396391 440072510 979423242 621257497 793362145 778386193 794875421 756013687 873928329 352145046 787649950 369733889 728827063 642993176 708427270 654589288 940882115 750076585 912451417 969656445 993577460 478701320 700695835 915569310 961329173 361777595 463570909 944263942 951905059 10808921 623211608 635212286 709601548 291579521 429917743 837630729 969047544 58054463 438604893 473214536 808471018 634359475 982275468 706240429 857749728 363551945 958085765 927126602 930469119 290653454 956966275 921740793 943115779 561361687 900512463 67287013 431961379 208328523 897654627 723558441 937204321 615014054 821825963 628308743 842164344 226216586 556769630 600702823 979613707 300447654 723651997 495462363 938982199 158800192 871067442 189746808 682161500 710187723 810086774 85825847 856723437 553585544 832785147 967316607 985383239 733997608 780887903 11571132 577712838 844310718 891919909 972420486 982121970 595106776 927899059 370020877 848866792 209722624 222898377 906144015 918986923 165529025 354861975 623948616 822406156 795434176 987626350 140173502 660176930 548520770 785512473 178649547 478139977 813760081 839661164 656401979 998860061 802075757 973384025 704790646 944031538 646866311 953335880 907270001 933059799 601469444 788278352 904997890 908945728 916508295 936060878 494959564 794577673 882563055 930879248 797398644 904631864 206373893 578093282 938256753 982442979 927410854 992896929 111351092 259318012 92099833 921218206 915007752 977910255 316357035 746446909 812429223 902001255 832156455 990427979 58185891 513131989 773892124 810160682 555872167 862839913 241977080 768947682 958848207 992926304 165583725 596869946 617280732 763889336 23765123 350377102 778824814 848997667 601532214 678454040 949000259 961203544 71659813 525967409 528132236 550598046 98491065 785790954 170653542 672523257 948260112 997896111 877913445 891236679 616473096 689248857 51674151 153900427 560487878 905269115 457997733 687213728 205796506 629033300 939205971 968061684 70084780 132028410 328503187 551593341 3403847 625815229 789960093 798154410 311585381 727853116 607277118 660576630 397226366 544733786 784587590 929021348 203444063 653924925 182252744 221421051 171843478 452183799 34515299 838883000 384759473 402296631 90552286 168161477 206974504 463261819 110845112 348383954 448788356 757992241 20147626 461627079 100566299 127195242 547804809 747139663 48798260 520626978 848484157 904151490 912577588 932840669 78290050 912311957 525410420 971806486 975096601 984652314 156842594 249266823 979318198 989843145 668191667 986647419 480465882 524098823 947513466 994603799 920100185 960343350 153073651 900523979 528163076 908248632 734030330 892200655 561978973 953622055 533872454 761157840 852426808 911209424 292887181 831611084 960626665 986240223 206657372 549035364 966628034 969086494 629835314 909297833 759380732 764340766 893587236 977028320 58856009 696222144 85988944 611274418 760817641 891167713 987215100 990850633 639370947 962596730 608292227 944752833 122998146 921505092 169914334 724938111 637502252 887826257 121413275 819611234 506627483 784855045 15356859 709937601 331726403 463279488 361924759 968091488 417971592 646271672 283204314 529318640 782999694 970017866 371754962 816832711 886794557 996146179 866204049 874385269 770440413 822822886 729849741 802198087 855214184 855242328 876311881 902493039 117569167 838695188 52750444 163044036 57131307 635549496 705336648 968770573 489521056 564792007 49228163 270370347 606535319 735972032 585942139 591419721 695568250 844351669 20801939 816246353 674484108 819719070 37219651 316294794 516245848 952684138 117606735 154630757 403378065 969813303 223102975 513075619 839845643 874882705 154611980 563567473 602672252 772641292 46870257 830849695 653003059 864830782 467583608 661059126 591509400 917805262 650298406 844026446 997996059 998834613 118325750 507152106 622197592 951057142 667633281 838848153 981143340 993988576 703925880 977630167 565806142 999119159 515854830 964502082 501600693 636294314 651033505 811270764 6970040 856001930 675918936 723194432 876211759 903861054 967310257 989089707 157790026 402946466 873197136 922399030 234851175 586489028 635731966 774533252 483102463 932154158 709383628 918557289 645781790 880600766 183042978 229403883 638808882 821023103 257954306 270040982 951647089 999675272 419059812 736669767 627713607 825068617 811223549 866310218 994529597 998520421 162781721 962798205 807490316 939135156 267808878 372314807 853145941 917385927 289492865 380308193 187446115 548903181 685206183 690629328 699916598 784735348 43955843 323840723 43253529 989210050 774304844 861213702 559807778 860445505 55824510 767944120 519446969 587739534 532525304 692629141 45729543 139637223 555069508 894921430 157521184 669576090 99910852 200227876 958175288 967987975 116160423 409173196 393193378 815627128 528395732 576201141 597836228 634977997 928323597 981704443 435334409 643197834 404273812 603103492 390155604 776176257 574996271 732589367 803012916 969804271 806091958 874132563 460131536 801728556 718989646 860707681 532661021 977430632 322029899 854630265 781182707 907644178 255577730 770800054 488056246 948280100 331036751 902812165 71818415 841338158 698719081 740840298 514389052 942890567 552216985 858519936 443363484 529606841 15753239 206995595 292572071 941460900 276242700 826909284 624537493 909225405 159069514 250974450 950754653 990015463 541046366 626242735 45246113 775518853 983097833 997977975 515007973 947603815 966881097 981839513 15442374 939474870 687513810 983227514 207402045 371833929 15995712 677772779 388459416 416238324 822748547 937644140 217607055 337642099 800051602 865891536 961349605 992489924 520984529 863633913 808182403 981694422 149718581 297185237 276071327 645174503 343085594 635376761 185546186 823102594 45515638 139311143 760778824 845512902 379991713 952160829 558764568 647739983 644181164 698748656 525661354 916590890 13975756 953363526 976759898 979319372 366385822 596634775 806027818 898276966 424231607 604585513 295554517 988164516 404037164 817566323 823770688 838992717 609583415 848696989 758357572 812868662 768243798 830414379 440323286 578297184 314503807 536265385 274503945 713233269 551720774 693442188 32441161 635353370 962933190 995634221 507526615 732457613 943254219 978925585 825265266 929995882 319542237 648936130 640286382 854264339 603896243 775070411 951603213 979519364 657027330 789117320 696438769 839513631 172656431 237337047 756017459 959905784 918613380 939880884 361663819 972541166 918159405 967883800 135976643 789155594 690324192 757950731 704102914 954365851 870900981 911698579 242844080 891940618 907458028 960515381 915913432 935070694 783611686 903186830 718168860 825450524 441633688 887183096 94964129 118670841 616255290 766444867 119432006 635014278 617268874 775407353 480001296 708851720 609443916 729333882 674875891 703553182 36484644 296711797 795700247 825173345 852870414 938980838 17023237 770541142 763821011 956781519 319663224 858894332 320130870 638110021 719448077 785845365 622517041 698193251 384679417 399600847 450216806 968832895 55585604 418502262 275024364 799541762 999533520 999684805 647240459 759768317 586885052 864997823 8252490 32608649 358533991 937103576 942654083 972308617 676837070 703320749 87296319 737067690 184743663 967252175 247721652 605991691 699098165 771829874 573618628 627280411 165944495 364446085 637543553 836034096 530806546 853751811 998011173 998268147 253912539 941656689 850476729 936039613 372295802 889336234 923998614 953984785 31023950 709545916 515381409 756695602 91427669 609670636 372837441 724701628 808322009 969646095 967566191 968604119 399050157 948895836 262726821 558639734 222385960 984083817 674884340 843360921 337187432 857638839 173930309 440686084 928037145 942256448 320442924 415737979 897832810 917409145 141905198 997914619 364399411 417370032 206771374 736519125 226962671 943203017 80566977 486103138 532171406 563247771 580221824 934827477 985464419 994472374 93856624 832662720 747467086 973195087 791172886 858826629 726766885 982114597 480127129 744867463 829577040 917962115 956655470 984702147 699072591 938742121 843702356 870469723 793766955 881873110 645093764 776668164 806566829 968224101 263645242 903206490 615463549 934745420 169339255 384821020 35532027 563197132 769010439 931657308 605784295 797604744 351767370 898289215 468325248 986412707 141317118 235366762 471820170 906442044 413282824 785917769 798001299 933863162 628244449 895467774 622566260 714879094 947634646 965457255 494709765 692939758 456110071 812540024 169004095 360464069 478052568 708209254 993852925 999826862 188579090 282564975 121344619 804579183 537054556 915684512 181388422 389646282 224192094 596093713 62889151 314723950 420330326 530931807 43359487 375140285 322394641 539750329 604613071 898350087 899922208 979510554 296952098 600900958 880936211 951511348 904118641 953786533 889973347 907891894 289904362 606126836 548969558 917424121 464552179 546365615 241560369 636706840 859175829 946410885 601524737 830476508 253179073 869551316 167852674 827791832 702943435 894849327 825600171 863934157 722079561 845245421 260450999 641812445 724028237 946865740 301243867 869849962 736881611 903895923 152359084 730788872 641335057 785491165 445180560 575376485 616127161 763617368 953136363 981822375 595500588 928513672 590416571 693648090 589674789 804732879 494039142 598248287 810585393 998509779 1463841 531650361 861508764 924846221 680398798 953355956 685725764 697580458 405797550 894631398 710063770 920266306 749051187 979440940 48906164 588057807 773184082 802632165 342790354 506365950 418963802 728307749 17952998 488330632 470533003 683284458 807951211 973221039 493098480 865898372 250389428 736294706 830391476 975516926 493294627 819043279 856847386 979875356 2732729 351707376 817944322 993370527 49044285 444984395 796232798 952841501 532370410 631747625 294422366 321785775 590673513 727069547 758432692 835020931 321538948 693978059 197191569 891812444 894657694 983616444 798415955 816888580 37414849 627338714 726901213 959097694 675354209 689339007 409374137 672584321 239573121 474725338 402331016 494152191 110874654 773503811 455507133 491080118 370240887 838015758 899439131 903361845 977260318 982823821 151466955 660192306 195957177 725821179 327570886 925719849 413981288 849267656 171946233 886480069 431502176 682131580 250708416 892083772 992034503 993822511 267995717 519337737 391313671 851518249 890898834 896087634 629605380 854766410 56217550 369673858 13880657 14302649 924133981 952503761 49697254 549993226 621397303 862659032 286340111 583012482 232427999 380326473 517703487 930531016 385559114 650491215 775447051 831696074 702749366 704134413 678162816 678286359 472668578 626278166 581675305 932694280 523662799 600565944 499897831 914436893 628995768 701018933 271866337 711625074 801113885 873994763 715631636 763202558 874369499 994317797 63325556 359907989 565076893 978640472 811614466 926292770 604451057 887888510 868424648 914813692 713177001 798228539 912298858 913122051 267749085 636818617 959369065 995208505 215975189 762243629 892069875 977315215 452645889 528006842 173560897 780328451 535412621 615098352 671766783 828545086 750752295 870959217 10435738 214047744 801640430 953510552 192751184 380520546 24240920 771052479 386656209 900712803 842456492 847668718 727625959 793007364 774716226 847933213 140073035 622520316 258955999 734121911 947659916 974666400 980957772 994105115 371549384 586877976 228430693 627154665 267398913 537833710 199378171 519097821 864768556 971949779 162835349 865776158 997957486 999556108 652275436 992359649 597336451 869710424 970395397 993750319 380567471 438539739 925949303 994671327 63648138 211310089 462774588 732940331 495314913 925205003 717801703 770273361 791302044 808315798 19965636 259971046 73975170 887684475 13344223 153458066 466564332 572159620 762282374 987598640 615124143 943492143 791183822 937069357 537007080 620151227 102104475 562346148 322432114 371090557 124219957 776762351 308955289 778984821 429478292 560685018 947179476 955398455 417473020 629249465 354900527 660026505 864817710 898812007 30489899 552525298 273045454 673898458 817737563 920624353 694301570 902320038 379242831 700560779 446878753 565242882 413913088 557207965 933104797 966607990 209521258 298052470 149509826 152373558 471822493 544979379 844227046 961022465 613485742 843223551 54154498 429031073 434873133 522446296 834180816 969445245 27944331 174790568 744760302 887265200 441141903 775942295 985527459 994319324 150344773 238333322 71465986 447923175 701720534 900956135 98624574 669208264 144589276 655860658 144112498 945602341 626869030 769391231 11973631 977474842 736216800 986872102 173624520 477470563 268808577 463319560 77668919 507230448 240261665 694329894 393954788 582556199 904546031 915474966 671889475 838524583 375830413 500200083 757263605 757761427 158623633 367776902 630815437 956525491 188131880 611809655 40903811 74174568 549804990 918808239 17807196 445399057 310437854 861344730 996673538 997426032 708225689 749262158 447318619 892377757 14834092 786779277 780866748 971347771 637625840 872048924 693862002 927479634 887279608 930149535 795807795 970974243 213874033 631958025 299317258 406228299 505437326 917096900 500402184 844265634 255524853 800085948 436538339 580693635 268510786 660197357 859854967 979386189 991399258 995997097 498216963 670984947 93766874 618455746 314838242 516531676 272321549 532009504 277287276 666591359 444885677 914657694 631626343 757087031 78808779 489809146 467893080 884057913 375358272 754875480 185483369 984070171 453998929 481402924 459460118 459871010 567329308 950102770 586754138 985130355 222357788 476105341 624062979 921632632 329420335 902180384 538114862 628903970 496528060 528390078 823920455 846706473 652695 615137374 383176994 520651205 562692648 881377471 391496472 698868382 27456055 730707520 693641757 774074393 521247570 982609451 488800202 603088459 361703562 774102781 30476857 717375768 953915108 983745088 971970430 983947722 697250445 822475606 13025026 527675414 219715715 467479318 699955424 987522933 163211151 897604290 236014497 363203273 577190491 995348743 159337966 173530199 576065816 938442268 951669223 965272355 820106836 881549654 718125832 970807305 169752315 857539103 723104554 767216034 968067829 984537099 971594897 975933434 910020848 934496629 257227268 520151892 390725056 858377476 998143532 999873644 204140596 205395173 267059281 493471099 637697156 784719562 915912085 941848849 268761908 908913821 454049158 514371193 81813023 366135343 322723975 981604559 345113610 651374433 652909624 992234002 33949075 656011352 67684672 907909518 645145549 959231985 982424298 994688560 816159831 841322842 648903166 785940076 187417220 943400791 211145198 696324988 973482687 994688650 280340011 493462043 873586005 886840331 927290423 972187445 299886075 585503675 997135017 999418910 397208406 527477571 752763615 899103731 380394191 652529010 236978084 872307035 941581657 983856821 575351221 708823420 409724272 693326800 185941148 560720460 878646923 890444739 617882342 904258545 611827211 653907612 462259971 682281260 825768634 902251031 961845504 990196456 419466722 874782267 563055241 871736924 69367827 825601487 157204556 801169137 417376642 507106533 739105279 881559028 579020491 720832641 72451901 572935871 679989356 983839138 396456447 780402410 114333026 903985125 155888160 956651808 77181948 84549924 167580287 783203171 6381665 265566337 565048951 641836046 435701646 536985765 440125688 737920131 160533430 409293711 14418525 23693248 579313069 979553297 704804357 905163335 418848936 658354535 19322049 789934063 536763639 905291984 590357210 793403180 322377925 825660419 489557154 870274500 304000595 841736988 93585797 373820047 736320189 796499102 638776068 759760131 209161594 298098631 301820696 990628717 630615189 824291481 994019246 999380081 937005664 977802770 387786345 426092324 161745688 974201891 756939729 975907611 27388030 903759560 957080740 998522171 848767071 880210061 646934140 703981904 693524110 999638376 6071615 653126566 790530969 963343235 957702896 999775657 811354818 920795096 122496302 210066651 590907246 745971009 240265886 383687849 867896703 962888293 930191004 971983546 36298771 346629899 104647679 564731537 692069961 962349801 237325655 882659589 809495868 995339175 881753662 884607278 151207476 439097007 964400480 985062431 225940469 371024945 947586369 980126415 548588350 878705737 30666902 430026299 313290080 615364589 959930524 969303946 305214280 639076210 751204514 871510739 182702630 766132989 676281733 761769013 769760492 894849389 163808641 878674110 112099866 737636802 519166649 888227051 549270277 886190655 629071189 863829211 290984902 875132789 314225555 923842084 400773031 920405680 567489212 951270465 410599923 579695030 682832021 991001460 189551126 223675902 601355367 636875947 932655670 992861804 49441331 320897416 689999992 948784410 764173224 785899088 533793491 938456477 548186316 675921838 481022473 928044014 949070378 964785379 43784243 460993328 801629752 990351861 943359404 951276136 473320954 678524739 60074 212569141 571900558 771710659 646864229 956852521 527227621 597551492 900130636 912295947 543681453 933922271 537815411 777999363 103940333 418637608 849983017 974129033 809399295 958931043 476763939 939820877 56810698 799654054 515999554 876856552 894373441 926484580 206095455 900970933 661056494 754441731 591434023 596963870 545538609 974223550 188212375 800869482 411789645 761248032 364314958 581127034 934557011 960263886 960366623 963974093 499339723 991548731 726545306 792851708 738123438 823203744 901564549 962455991 95159863 872609336 804683220 932117743 327684019 660622435 125537609 357173646 914259776 999925773 615827196 808338675 625051387 947108825 743421136 893301948 365926490 440255304 671521216 673067925 57708696 181751976 529379249 930994365 622885767 872370138 872678073 886381064 289327328 437196538 799435470 837544729 138977227 747451749 769975280 944909810 930849069 978610038 588477279 760511162 940875885 942216509 973377423 975493618 35377172 879361487 760125657 767316970 302979049 662612286 872194148 914273329 374678123 611689639 150077525 462534844 693699526 742306404 402890848 597747794 130059056 871338471 398523995 598128076 132216137 500482398 272375855 450027985 487738980 755729272 55580652 56013351 382817347 830455198 339867216 469807017 701015407 802438093 61204969 967463918 195422195 282321968 297336020 704847727 215388978 810827756 641122091 710430065 836913568 897547890 203406280 609726468 103990421 974026518 294701675 525852172 412340410 886445485 628483246 817423680 269592771 415011024 309605173 373438273 293415462 960678328 643797591 859934995 588514120 982403351 919207984 954230801 406415600 621707172 912828571 955906412 513023796 534073705 348160979 857792655 160130325 740252669 611174482 961677010 759561394 862189834 825363616 971921704 805342695 894343912 643927413 971805177 349136561 793295649 814367581 881346182 49981844 880691926 762563048 787029785 278069329 311430765 900994762 996803420 738525996 817090999 559363669 816770305 954147134 963098911 575529854 793046980 397287817 893530607 814778601 970375100 199695817 567960258 974308115 984419344 345196440 443765149 502004403 848866686 891274658 967987703 692524768 970895321 812951471 926074582 150750674 174369118 520111482 848145878 606098087 889834842 545624092 664915372 848925954 954105858 563156855 904758999 149354196 975700441 551019144 918559724 559274124 768268135 184630690 645533233 425768813 876468710 943369825 977895971 332719685 734398284 438985489 748611371 27178122 762873275 487444503 769817815 960463502 977363194 323771922 711475207 692906743 870464907 947603929 977227078 39719140 925926962 772954763 794225345 841688609 979123121 157924825 235302581 843465881 869002620 542955412 725842353 226561046 370811894 28596887 955595836 395157934 987160699 343010962 434217504 701022523 850329039 827340241 958187849 940895627 970880787 938184140 975741323 511817792 989203632 228228474 724892538 543828811 913730035 755540748 852982935 374134241 797810698 839822976 927867651 509271137 995833719 54614601 133693667 739444699 769559470 664038747 710881135 17959709 393349225 519779318 680542915 289274672 790825969 185468554 367773837 553665074 836485174 905074692 963341519 689284631 742075894 124838993 403202898 755509881 843746754 567341321 796726132 24212782 990404648 597874453 757118508 767051974 811966446 543487536 745454851 541914352 723746026 218261198 987311853 671338163 963424687 732879768 957509769 660085090 943939342 762202573 924792724 830020085 875494684 446348746 668150527 978426441 995823228 936501683 989604418 190780738 371132107 731813749 904504500 946816420 990303861 348418390 786128676 3502547 223571219 879046922 913298005 933913347 970031928 762300271 774632554 953232513 959581390 485146423 807985190 733543848 882991419 415555749 528776729 211086248 439355334 677907007 740268172 856743750 864135433 777694301 785089868 720413515 828382856 477300065 592931443 698520932 893743003 820721494 870697056 649573048 697558965 878992320 919117663 975321591 989569049 268087639 434870488 772827912 838950173 220670224 260383125 994670983 997762653 210226046 273134783 173751838 176720376 934749314 941740877 612692953 726646572 995198629 998998958 306542791 522473547 237691709 295608521 633355771 962648249 157938678 921590816 147658985 702903868 596695459 942857401 359757580 391532792 120102215 177143194 711651552 828219082 654381439 706020901 645301869 733979400 49861003 138244938 519791335 869443554 836195755 916747214 644729169 911202901 235158146 259226017 937856712 975792218 650246441 707150274 740933505 995847355 179088179 698389148 85964195 919485646 926288351 996288305 192449997 394535219 220467471 494769550 179325805 916252217 56104359 885280342 147658015 897777157 429975076 443552394 461039646 613151372 612736987 737278848 381433796 808066054 673251649 750740543 825864838 949649235 695936949 699265490 184484439 866528089 406938492 479165186 486522475 582659143 857947393 894472556 991957040 997531696 765453516 975473266 511321120 723361261 663980729 953724688 31528876 635957691 990717818 996348370 66073096 489577156 878559515 930036279 72708296 764159497 577553889 622424635 841957676 985027382 453207676 710464517 284963331 687452893 916303303 969632499 130309639 701249374 902373157 996112613 223824052 318080020 133422321 833482828 949740 291432835 621581438 941411664 752021075 841669908 479051577 574080883 880084374 968738169 52177975 957019132 72850438 817942551 294888118 755963875 441159970 928987115 828187367 866948372 75873205 331321916 979264972 993432878 695814887 909891592 922910660 984660102 983074744 983466569 695682388 998260118 649023311 832337692 703007916 861656941 989717356 993985914 6355421 249923028 540482345 947737101 916412353 948191381 43659533 995362559 392241270 412878538 933158603 953868630 186565704 275146663 719833730 743928290 612771785 930736339 189214780 611463490 308541921 932056763 883891686 970373350 818965793 931873215 388086507 955090931 483264761 754773346 596240400 855114781 252281089 737356508 513042749 770122096 160325470 597490993 101546944 988918837 340250580 935172771 487732930 660498443 18258808 740930579 12546505 273830779 688309277 792223255 476706022 618998793 925444018 989565141 938339893 993362639 105153821 581276402 238899296 574010542 706521049 847055181 110181471 380597928 31698768 577544336 762909655 892698946 945524407 979050488 214793974 484768000 630877506 893733388 435387614 857513639 383495287 810996957 732221170 823555488 110463817 391388534 568426291 569407142 548291440 890038667 856953586 911248831 11949442 150327271 147386677 981632667 340892823 658204972 756443837 990926746 104035924 539588369 968101419 975740486 165497302 857438585 643216745 887583135 199201452 859529756 805363173 897214508 85283931 248806688 626486227 816123369 204967859 357361348 293091814 454526048 75458862 717434024 259956882 919682560 420273149 948237875 832714250 889418556 467875316 605173724 682138436 707623081 180892577 993912265 469270669 898912707 353634631 825243762 426901181 935123949 770201048 781711554 40989818 230943353 958349531 996408073 816169698 961739215 324477887 911986665 777552886 959821607 402253908 598023601 474218273 689355930 433036131 922838781 629608533 831173330 302614088 745573666 540325928 619831131 859129024 951474951 843990153 983719246 987034675 997392651 876195816 918459489 89655472 732007531 164534468 167605542 414479623 566992402 545329328 951253110 437224396 592545178 776142055 963568511 410408776 682482961 503052889 994661165 691621138 989329151 124032983 537002253 239202853 970561581 665386022 728334085 513128669 951938464 432345358 638151604 424737746 674264808 273558129 801026952 809464333 899313098 859368162 910678105 929543687 993658467 18905706 791476970 874057249 983546883 200673104 418594938 372416200 625098668 155127119 963179190 91423922 368323976 568922412 711981055 792190006 985371312 33912663 939294445 118751954 992837222 464149808 707267122 828157492 910886553 744691868 898491732 388845842 999249915 729553445 988785925 915197360 936399898 943178292 953062109 643630336 695141284 311784136 454496578 224847245 678026925 815766934 877085896 914596203 923157102 833989734 938898283 580717149 966510346 300604358 961139800 629931409 695152090 954459181 954782274 191976888 766632138 866023581 975791543 438088203 745832403 971884162 981504929 934749678 961555877 128961920 624716174 282201484 446131424 320371264 838901963 609639797 640537187 806179298 934206127 757560381 977362678 948871388 970774378 924441519 971455347 840236086 922245085 253871298 777271877 379957033 763383946 29963440 435404429 232314459 518521643 396217476 757562003 823210856 894487685 38352396 437344933 546516606 806003552 236440308 407877958 278279736 870610731 515155252 914043966 814574958 922225153 372634680 894381679 244018621 590882611 705439767 758624777 915704733 940938931 782617496 999042747 640376153 665912622 683967900 966100873 599192460 996163516 205987008 832554634 927345874 947574262 265991283 268566722 210064077 922493365 22219800 878999569 575369380 944745185 177296655 753367989 484553768 529984997 683435440 829481211 347967785 529293142 102042780 747146395 343628477 575700008 966778496 995123840 154991363 372672524 763091155 987363772 788676024 793535174 10164803 218041288 538959030 629597672 732579386 933749677 818705030 960525379 307180094 756455234 915282058 965209991 321827201 420224133 506554422 656196782 578102743 958165574 550687618 573093550 562454282 627331664 774532413 786637992 985864081 994707770 132115691 528760443 246823655 487543775 748113726 894276383 217044011 516758957 506010906 866492020 439001848 912461534 259394413 385288015 667665991 799561260 105841294 632526862 194633645 843748200 300439937 483382061 665560991 835911307 44490703 381780767 468687758 991125909 774635482 937224634 184141612 508586882 170999191 972453019 543388900 668315949 538302083 858613781 708262082 899342285 884161549 893591526 636949355 654334836 348207802 703525443 669566996 824263299 630716285 948689615 503270628 916887858 164821241 689629261 643145112 962566283 688187419 971103289 215247591 224303956 302080155 628197673 287129520 869900719 780601492 933248886 533421905 580552182 960213231 974752118 331047125 785458150 716961298 827180903 905933284 922830963 93514516 329218604 884005098 994619160 29090070 632452015 699980458 980007424 338811524 637779833 452443431 813005002 499182378 667968871 48512109 289622932 535943837 717265017 806801143 838453042 446182553 763774844 71323668 563284973 731296730 970199505 378690343 684734028 16873574 771132677 710936094 958388201 122362330 167264500 677597469 689241834 328857571 653742482 766964990 856384659 442490635 698149105 262674938 578509214 189370430 555583779 740693825 852709771 610762669 727598065 590527418 789291926 300801763 796234242 344710693 657940145 876732138 891360784 558196222 649685367 739177426 921672030 853249201 927119396 270247584 588251856 33623452 505867464 927928735 980750751 519674195 703055914 155201095 171631671 509706496 556583415 871721674 887955709 719507243 984114660 408054750 472781978 745095432 891136902 84817082 853349849 781489878 860402850 498363139 940743919 991474442 997160447 951694621 960525374 382897972 932124821 606333239 609418559 136699819 973350886 858341944 897081497 751243990 770581016 598305899 915230597 628752230 897937941 506434996 649200282 694073087 833890270 249895639 889397478 525091281 796773572 893967757 996513567 470341068 577833767 384977732 734301435 278630043 470713862 98710211 162472137 426575901 624266125 545497467 815013743 389721349 934802338 976993382 997002060 928171022 955964237 446843911 741057567 132218782 584264228 912458819 944266781 437833789 865997010 303147108 871773461 791414439 907521837 431752633 593118623 874972321 998470284 402606534 939335562 15324767 596373099 887744214 937450567 668894210 897200822 264349320 299874596 374867323 577332642 592803785 715234683 496429317 950051797 933352499 944232010 497128341 669436825 151993215 793778468 113455146 941828859 759474258 794691553 75885320 840308931 124126095 425992229 646830098 819904825 57224462 832266476 190639990 722633238 938112171 999315592 554304953 834386297 538058556 976561228 794328853 882735017 881486908 940672743 180977246 992719722 307869707 465142304 600592647 676170137 844092314 844551798 917893160 974842009 122202085 232849810 475580675 869478415 854547856 875564872 385489544 625928748 981620233 990157713 406736680 839457361 230277640 738239595 597342564 668245153 285034201 893562155 939352585 949822724 79516630 80903950 590964065 610893351 411052655 565304436 955757581 976221737 133391180 909893634 572394469 990119364 140146174 893164186 661037760 667371661 247872790 734174662 833396418 930213918 987013457 999743191 835758167 858763068 240352180 659431893 997628835 997936777 905148736 917280611 514218316 897519473 957563943 976096646 518939718 948239364 384839639 474494298 944335991 991620922 312479188 886134229 764782372 888863871 77036107 201306824 266764963 734583673 537464003 760602467 884339200 998622680 363406088 628947811 627919951 824300140 894587502 914609223 286433121 680428100 851931135 940649990 652211880 713937814 915012833 970352113 269867666 338922955 658480117 936235748 463261721 637799773 167153808 201190009 313572408 674997764 747052444 762737636 432789032 685638813 516428383 685911193 250739701 358524088 775068797 897711647 584609411 882661734 885759543 940595309 987280836 992955032 37544824 984456205 26379313 408816344 752526749 912756301 410239796 759079526 678473597 861585238 24059558 882148089 155912181 733688249 224743995 687866512 673072492 899021024 46200771 320810994 140103861 964903867 703054999 815057768 276561177 566558838 998300374 998949865 365092273 390890827 270734770 650644524 310180839 573632734 309574642 549092261 597397963 944726854 844918279 934241505 849401940 869364005 223969081 852689245 238614373 421897726 633953921 991668058 656814495 695656122 753768714 793344281 484333152 965896525 533219848 927148896 540496184 834928887 301170654 304311662 360849729 976190437 485402453 791883724 230250923 646570525 773045327 929305098 129471373 665026268 897534939 914004903 53401217 477398113 6338561 821933731 598829219 786196851 950986225 997167060 584881168 839840390 339613280 777348122 796085153 808790763 825514184 995860334 970477912 988230163 239937020 474147093 681153427 795013179 213793838 351271736 555985778 783892581 777819617 855632557 303405153 436763940 716371034 897826368 834838478 973507754 296387693 983489522 687999491 774321171 54812193 307387468 522210927 922327547 786155129 932383516 568249421 753975327 953133860 984438428 722406727 813510827 665116706 921023240 842155882 909498936 529988432 712721795 265620220 665199913 671775177 951101336 932756770 990795555 287854771 295073173 811250122 937689595 676884307 849597574 595672194 958028617 256623598 962999705 850848198 941782551 437630578 800236644 692345741 921294450 121764359 874244278 188712272 234265119 329521875 512155035 832716556 858879725 983855475 996016895 579286011 803758316 24899111 325562505 873685920 980312779 507254063 549297176 268096286 869768545 502993898 665919930 117234061 783654347 559721847 941410889 155605502 643184243 835575776 970302185 48909294 669483938 533006569 536121965 337324479 828420199 116704085 250409268 55914592 904402083 947163198 989524619 857506189 903640158 413828817 592707789 904580163 941428708 927311560 929761152 385674704 538369256 334234231 811216314 318943153 842976754 369795511 838680815 363612451 578322987 593157857 660358506 789769230 863641485 258071124 928855758 684930015 784837066 883585884 970398716 828489747 887033933 16835603 440467735 933903404 971886594 296223573 348239341 690973540 740113774 339975911 917196771 219207422 319037856 820570778 951650560 515755730 804125672 3074032 911717492 558293871 795987180 575767195 707147135 321544708 388697151 130367046 683180580 64859532 283789828 341884111 861091038 421269158 580754848 1443325 64557676 369341867 509793472 857426211 865540456 159383668 808165497 140241612 969786705 85507128 931075836 570129493 934226417 418616455 760352570 722210064 806509384 312415779 975298753 533424281 598259205 661472433 725633452 86534730 948841910 193602724 313288699 562368579 636157592 569326528 696992502 928563612 934455087 649082823 870625998 279686735 564379071 426913325 692762657 681768742 831994370 379922047 617772412 83206788 175252414 636676525 641611519 546609711 572772318 39892056 976745186 257153513 841236019 320035391 486581680 557116284 590824081 75496092 615979522 48371026 854429274 519168194 552114411 61827927 200635636 102255487 160761257 44585084 975139032 768064728 886503385 449425017 675381493 298333205 401049254 324628848 337346134 710777443 897720071 317336504 889572911 571251049 860214659 549291661 869431795 44884418 338867123 153068628 874279619 223296369 708755835 250676619 917303258 819762002 964648492 103015019 295686272 646913479 687820567 924745882 978384547 865599880 968938000 555387757 677351142 42770301 897864803 157976435 800401888 116511136 250086145 311588161 528947172 751776372 756889274 320248422 957430532 317967009 984885230 536827883 913849672 708757202 883439492 504502148 799447604 955806526 983206109 448949365 958252211 773491430 972075439 123790855 407404360 70223592 924702795 788413761 802052611 327805323 845969078 262858894 813390719 464545506 886625281 63682757 959977237 685228605 870589552 499384025 886176523 511636444 569879425 904171899 981035659 457112716 954729767 432981667 592911384 137022280 837797734 561681479 975800164 937262989 938616209 8593387 136499931 540282634 603098069 389071198 608104508 44392658 771603679 659108337 798158232 784667809 998726353 103910013 491755971 162480384 655392424 934367199 948241267 663891916 699210097 880074887 976510384 490397851 611074039 70425564 959647005 740433971 801499605 911921566 964189381 36290624 557209564 27800836 166452227 481516088 516085520 434702573 873033925 226681405 299176446 648823040 908744337 72921327 962201017 579036352 600499606 265288276 554222872 38422618 603250797 381451745 712664914 632102447 807116947 607498709 964146988 466359195 505217656 170745288 512438207 659265141 900627172 467360322 922847296 609891144 869757915 616000448 809574231 343008164 738006277 581822568 735202528 623526950 778864275 425681416 557826691 291821138 966980005 40021868 670332049 503602212 885789927 192377535 494150777 814833962 875820807 702916256 759983147 764490695 820443664 99839753 860113756 812632783 872872166 486954898 818926366 322944157 404962524 364620064 931214576 215299727 485551115 983769106 993105329 332862316 970632758 509272673 598594171 733049610 998766826 939777385 959649767 609614541 699244660 231824625 662480111 702302849 737468340 655353842 817796857 958496158 992804770 355448079 509568544 989816892 995059199 767518875 775516695 909332077 942371830 483625061 649011251 937335789 950703788 437928462 952965261 828671672 855239451 978316855 989325358 971903426 973647651 826575859 886094375 851642919 969977389 316603355 466369129 830474094 904394200 63720038 863374046 945130950 998990808 690480404 750475949 213498019 824653414 867526391 938313717 818730397 897443835 988099450 988721689 235550274 497327739 627700465 670475761 496172376 880561137 917206305 955119587 292817032 563326340 437534906 930479499 174432072 618595846 725155836 993221951 567163882 587908294 641838937 976409865 894909860 909914749 190638313 613824770 23613609 438322032 427771401 755966185 958627454 961013993 102287484 994429726 140104837 540573849 394227676 645677143 227376329 573104064 639601376 989763373 638345746 810645025 856278145 938989554 469427576 652094826 548121457 790847499 183373746 217043250 626551284 841516238 65024788 521999857 626788477 914702432 270344698 600134085 208132528 222905971 547207997 859974772 730388196 741078927 811118999 945659415 30031786 736331309 400273248 840981610 139372475 391910198 136405490 794649190 250341359 423514435 201950714 325724353 4475994 348727382 77786686 926540619 959238623 981826708 200054174 922067294 443565676 959243719 579141219 581663385 11036294 389557891 89043880 857433963 514878397 833006749 817813896 865768327 880116718 920455540 312376211 658900593 860315150 889379655 390628793 505563896 951123291 975051196 227242971 859929145 106416816 559733078 525986827 657805423 75574381 906175170 871454367 910380765 682404075 691830955 106344500 266889242 266481265 513830062 293335272 414886829 781677963 902451596 120622991 129438690 15687101 807040203 798921769 937776767 775549789 945405772 526061660 902401243 839852648 952604545 434427718 444295341 683572115 986569828 84073885 781317461 766700015 875127824 684647445 902231954 479192060 997519110 173578023 220475325 729304721 974839496 924981031 960894409 562652619 806126290 765764770 938222915 643034424 818406429 273459732 408996088 137761874 776411281 9913546 771191635 26058015 787125578 43353970 580546030 734610659 999829206 483119713 554978328 783612412 860750159 700878519 772167892 517782424 907825942 896460931 949871026 592452485 670211483 557394197 659827032 802041243 916498434 105049160 547960123 4223768 685230440 778853304 944739354 679413878 760476405 130693539 848833360 24178255 65580435 875090683 962774829 927627311 949487011 435768861 443287837 149882069 308964553 608910720 960444273 981376319 992469685 235744808 871212472 223946031 284235700 845222071 950966728 520912088 665464367 918258533 933645090 529206879 696015223 36508376 552732088 23908292 313002028 943372475 967310138 469776240 619192954 657249007 829396974 214342001 391508947 795155513 835265086 256829503 569330734 47624170 505295141 188009727 364479865 98321788 976694304 471991352 933467913 266434815 634396877 748380950 971488820 930438047 946335751 435907332 534482926 898897128 966986944 779417093 937507446 944077229 968201710 860022226 979574547 747135264 991000233 397884092 883258887 880111292 920228561 162810927 207392682 10693145 162385576 379144728 590576933 729756327 999159051 395918046 509939951 385504894 996809033 972071924 982123426 201236106 726983904 890199311 976445364 136580074 799287341 313478263 716416968 974571854 987747659 666701087 900460063 800142674 938026959 783146341 842510426 216900590 684967380 120231283 742785881 233485990 835069835 921047163 940546835 278606060 565462823 601762922 966008437 463010491 805820010 717378766 959961030 386275641 465160494 13339458 979889238 334208618 834883102 636952038 747674112 886194708 920231774 43688499 253703133 773467278 976531490 81951966 945566283 176313087 986676575 704598220 750051194 981603047 990810212 368989240 973923221 454068414 490683878 676017003 701009204 188101998 896013085 602862796 987043072 402007337 897237122 355822260 516451924 929758759 951854346 657673674 888419432 10129109 372144460 290774206 706073625 425848279 935150491 351433242 501240327 203457225 783879401 238359263 842278969 973750409 980581710 798736420 874368403 731048670 763032006 313164417 646049786 11132879 560281845 334022187 498584773 895094324 930319882 215062625 359891014 854700035 952215232 917262905 982047952 568018758 638867134 260636112 299098890 439397682 944573342 168565839 589868617 188229554 632314405 722207837 965086613 172060968 327217060 896119514 931698367 890364788 953961706 209542601 801594166 45047849 755722203 716288097 727280463 294350606 791078732 51814464 83059114 581851374 979470718 469810896 697026526 857833617 899676429 263073428 773969939 504022470 896194797 780061300 794195943 189455089 547309845 596562396 635070940 451052943 521981613 381854448 715873213 462638935 922195503 570449078 746001947 500627286 711547607 148138467 151946725 685871395 894680927 88547288 504311447 201790015 369713199 528023082 791951333 176030524 893936848 797421861 940591333 126071022 541254951 397843286 506962980 605542689 713912294 50420597 94805347 392985660 964085965 632459834 684457015 988276044 998439500 171315724 323621097 77456266 317889551 396830969 921714038 720604786 915779329 380335302 808955266 990207556 998761523 69512967 182654463 827380679 836993091 48588898 105504955 599986034 784762046 612203558 810803529 758091556 879430344 768032982 878140486 77434543 106995710 63856976 215134331 394231339 619693382 274007903 956081679 372697985 399039892 672691841 829604760 550370645 795255361 694723094 745864116 695257942 963964657 230032480 716245639 943815871 989611042 680784798 777727706 153039094 716589761 429897541 731253488 750283936 764433348 399500552 972491043 775241108 795902607 587460651 775378857 962650071 986428551 398193563 567407807 104134330 347345903 802832351 825759056 244841389 873202006 643633969 752616791 659057482 850296934 196802176 880839306 302127935 772448742 440865427 512129120 995915587 999196353 677828389 710738940 992478242 996873918 270548752 998427258 943253335 984529805 751110943 766917739 309761686 643054804 733499599 994364451 914913035 935690060 444562984 704244840 372522339 874166569 406977996 575985382 52320335 360019222 503883328 563367631 527112433 948877861 922619467 974138122 290091226 401918074 645128458 731992250 898256312 962495842 905792136 975649049 104699629 808412596 181350220 503492715 200682691 637710390 17033140 967849446 167361506 236542197 757315240 986975989 358450564 548382529 878453958 885170266 330197995 546917782 957604788 989738866 589703690 820707923 856284457 986706754 432053680 579455174 920056810 998969435 724945204 847859701 480483140 794086555 305029156 480449636 264470806 422319492 292368268 924647596 597783750 681117419 87738563 436007942 428341314 753529309 717203490 864507074 269897657 631616007 781107741 982680453 926025009 958468726 454157572 928997486 78858051 220082541 600135004 866740828 488863010 713523866 954873263 990233995 489698593 734116915 532728228 948641455 943972181 988975346 381764437 543648896 801851353 976821025 265269924 556146198 54410691 299102800 139470548 302652174 764901904 846486306 684012363 979394325 688905729 961006826 768262232 872474119 267623407 494389232 361711516 667870853 582317350 874714195 773193507 980574466 999452204 999773607 519924935 851385822 517828866 734747276 387998149 922180628 428592796 454595339 492956889 799918482 545559477 907919422 817974886 980060687 337937897 799023982 817304275 853721951 717254472 926919229 456351118 695839275 838344882 979044205 660762354 732196240 938675638 939715110 361987705 619031264 310097036 924227754 443687544 707460645 754297625 830232825 107789464 168174571 419125325 581843072 332892752 608725272 420074770 981760560 57304972 308632433 119834821 280620843 535543042 656502991 577997761 637099372 90084973 898883363 839250760 878010829 812651193 972809109 666285358 683458259 307613781 457422746 694581438 850710119 733567624 783761243 914203068 989579805 787312249 968915435 365871243 911284183 882770036 963103257 606212642 677043763 187952461 526655289 798735153 883296106 512654058 776525498 633840110 855692933 171807342 755178828 1590386 280851595 129944736 468078078 859367919 962112275 381088663 565008001 486073144 634443760 108480608 671962829 146808953 258864418 794343908 876517058 352297117 856987616 709822244 863298907 797954943 940635339 291044136 866681961 915238756 976127898 673672455 702766618 784654409 963275499 367167970 425897047 260330138 467202691 757208949 865448439 98841670 234476974 992382167 999086252 978551904 981130860 124876030 984158638 312370017 875016721 804243714 882478000 614259420 696926387 671641460 691261703 827058196 973193852 557992172 984738927 811567980 818664564 51050215 395015944 295810094 486938742 668685991 983192521 819281625 878897451 794880744 944154481 525436140 955319613 740326668 789115904 747630493 934519598 42185387 960277818 120347869 167302905 751384214 894184045 696497378 763761456 987445281 990937224 530700497 918697976 964267919 969406254 576044771 809725577 224827345 871126562 825383917 966983188 905699702 909862262 685225519 967852215 115335319 436202128 930515361 977180920 894607355 962008665 583983579 714243936 262628165 487780112 608365102 953679959 433676045 614469423 572156628 943275380 40704204 589669102 113109203 939572698 770493487 969903756 291856558 842028822 791780565 791932006 313665980 590529756 245361870 349342749 588780 693886915 124398760 242814880 802361761 827763035 149674079 228374081 108284005 735749209 848932695 890289857 338657450 932420260 41573896 952044675 40156002 58255277 126314037 953495821 335851951 719817065 418353527 668990102 187903286 358267405 548298704 918608996 835315499 991852026 455424657 755560737 857379304 958873391 80991445 400402936 290775974 513169436 318835735 769960498 302697048 995927530 65656594 599850718 401495315 667488548 6873812 847047652 131667173 384798228 248972724 794803219 638006134 698605218 856093953 908373558 416659001 777084207 534859659 951420575 229222870 267731898 520503453 872785938 227180363 429385855 843912800 895886703 9609558 85122444 437219923 932700280 949224853 958346588 939237879 943954261 224332532 262576067 252551859 337885682 586404060 599740637 489074728 720310594 73741521 626218057 628830571 971526819 826443763 836725107 312701555 992568639 112419559 333009712 155927 265321736 605725169 987206223 148129460 497622179 426352578 778492005 308492652 865310198 383417209 989143820 95377364 327083450 738189607 796738739 575173856 994571201 617081842 803350877 28408336 864565611 176337733 436709253 823586962 999932431 395267358 633130173 628654123 881990301 95618876 109725628 309744510 689775382 798951298 826769211 720448908 813473824 37274018 311841904 165629068 779913681 251944044 296376462 90602523 341828223 201172946 901550932 241524561 754610689 634690859 650703066 638054198 707763766 806682833 847484472 774271505 924450758 106808228 763665823 134889273 291071212 881594038 964212636 793595076 905089468 267359464 530422204 654368727 801460983 891184602 957310833 750280367 857488450 456977591 963498875 943458223 978672512 8483191 246254967 587028420 899290517 819077449 840415089 723645331 916537569 884167796 933112655 86402698 349568538 304577676 440491054 399753784 705430962 543633357 842105705 591834125 621618812 210525089 951367396 605893151 880334628 701089848 916471915 531983398 925801533 996139039 997108528 937591499 965375060 904359999 969202498 168289014 845468328 193155536 511659833 794648301 928506237 925637256 982106255 99993940 123807521 148711459 253023778 710716813 819248993 256613009 540976253 431866617 708213162 124898426 726914540 166896436 487242699 40617424 952801004 335683785 732272288 112478316 204828027 727893185 887079581 845656679 852520607 924021517 942455894 892053855 896929127 427357944 610515901 260541278 737221277 92846082 860610051 502567764 505434549 698461268 801599441 137326157 920656750 576263682 786086520 735401965 995594881 410051057 774415692 436227272 501883229 621532981 820666113 997661892 998863796 769649965 840305444 69729987 775773661 122453607 169657443 663245044 696969155 836361421 982470790 703897208 787329839 318440529 962704349 337160825 425055390 497728862 790387446 192392072 574617121 196932235 741273951 734160271 767045645 387418835 925471945 626757442 929257864 759891041 777317354 386158358 699738722 552223414 899495089 2704593 163700374 425506430 710353927 364195703 973851256 793839646 826927630 473537228 733450158 905838901 975302266 901204273 948272862 655161038 719544492 372502893 420563275 829741522 937874960 565384578 676426911 721571690 922938772 733395094 830604635 661612813 986600929 255696387 325677895 827614640 955970008 983448339 997825377 249657274 654626225 644432800 767239259 71431076 748571908 55208008 288143235 399811204 549001432 599868289 809155185 853314718 878201375 451577402 533961431 239062231 688546578 25352578 773920528 69763210 271172485 144566026 955067502 965662038 989611036 634873686 968647915 82553998 622966468 369316793 834018599 33132529 747494350 464802772 486740805 574775461 778195412 515706057 773721612 841828735 927862446 635057482 662565293 974387615 994811370 879716883 995301059 483967449 897745341 682339900 870591839 275017740 510766394 208512537 807168853 659451243 888957271 68503257 281792964 733611491 763997770 494780787 809036192 733812809 804429011 902716316 963003265 473136098 646189402 967647476 995516335 358250394 796995469 326839499 828636421 563114754 739804031 365591396 852497725 982028702 985437951 303634591 654994529 19652540 121005418 740268825 907089391 581653523 833766033 98971839 977685795 255352328 752667851 556093162 660413709 884138040 990291620 853027178 942255270 315603328 917597845 468748513 794841663 521561336 943192912 795539860 870017777 577166565 820588558 488715135 579986324 74546699 837220943 74640338 387936446 237234111 673467067 981444500 992641548 424224258 742135639 397189292 657181925 611184168 972464042 854056448 860089560 64571465 551484316 773119830 902781538 659793698 958801736 825484806 840099368 596852990 693159417 671957722 789041128 260703936 544825208 822816667 982624161 769309492 914196052 409188669 763200915 539876061 914469294 978263010 994877543 642253405 814732087 613765240 851100510 379205112 955168799 5086878 568106890 43589949 297224889 712873280 790440618 208990772 929141463 594970766 956226754 847075436 934921720 782573970 853510088 745997326 943793936 936168699 977557016 110494032 566385280 805717366 868658920 408998088 572987156 935795242 994076916 285290916 711113083 168834428 894395473 881284557 930611450 413489580 761454129 284105683 768012383 537767734 596003169 244176921 587891907 192089766 909567627 39253978 938038900 513360538 726712715 192674964 980950625 512829519 933095289 104516088 500563232 42024590 785234756 726364326 740085694 383710717 863441336 289586483 512394606 925697154 952357456 345099167 784619214 475594593 902422742 171581712 333901806 834450078 947748690 2053277 313242426 410113960 998853192 685497956 800674281 960141141 974632659 317258733 391838762 646578208 977892589 385317404 461666299 843524248 861642053 23219397 879483452 49350307 94483981 813265051 980168470 906093625 926190045 965354308 975215515 845743985 923969752 533653596 575416119 269458163 572789060 494196936 717778680 4715067 291346793 322373633 676335745 929104174 955497629 978675482 993739224 771017416 977252708 138853039 140366187 829902359 857671679 709136987 736774854 153873718 844869237 226407518 838026761 609810122 919610453 922580825 993790566 366696797 512945761 734785364 866480908 342686432 481943368 962847066 963352029 364451443 573985027 645275331 802235796 808966461 900430255 968926964 993856195 448883491 472994770 634759729 846580129 781057817 954137216 700639182 709717097 456373978 458316959 392790221 909723825 38800883 998005363 146631260 950304487 666899661 954831697 985479197 989608703 508559666 615402334 593528350 749794928 864787319 953052729 754696538 885753678 857577835 940810504 462184330 662695065 118725942 331115845 707828395 962253813 876886695 907429118 143860005 564441546 960492514 998386557 581476056 950843360 437948863 698902131 212858858 749131566 801368178 984633720 729850873 775629806 499604362 592158500 248360198 340692091 224447646 318213559 761133805 854353091 456735569 689802164 393239104 547488694 611141930 735260090 400106995 913364538 344321679 937878735 159160398 492083853 82291987 415535013 265638610 672604961 764931838 858405183 920515726 933913288 654224463 714360142 131115658 559986373 953265395 969841568 154202544 711863988 774700244 988621412 916483122 931067919 108990807 697547510 476425545 853025528 42368911 442467687 547555661 620246998 43856307 505350671 590816285 819627615 388585939 402271480 505776500 955232259 435645571 952470021 619487587 631688556 488832848 636416152 727421450 955239483 335006103 575754785 976374204 985626975 894922520 943734375 521165861 777221904 893159412 919677449 342186921 588149523 184052184 190092073 802282665 822982737 44185198 278604790 616140395 931902153 930701731 999382883 288661769 353422772 350288990 562225364 727085040 983354211 272276404 591238034 605100469 888538021 426883381 702048717 9848894 727204586 191910091 485330180 889096091 912980190 235010698 765843373 538205563 859826588 321896482 773858186 929074194 929235003 182208200 484296371 624927045 701736279 539962539 777292441 116299703 709265373 788540361 956559753 362045202 994782865 874283201 964797905 223845128 951478369 170357142 246924117 790330176 994377715 195177301 578329062 140647042 240612248 189218318 975443104 843317554 967263469 955186398 974786495 925913121 957911068 852803618 865622483 524679437 807414497 283348343 864976836 197542088 811972272 391726029 926254883 475859625 852051249 756713984 847612649 66160808 435746425 398789707 676515766 877600436 920762542 733267370 823577900 328148972 889528960 604722802 713443541 317949883 740442426 877407594 918090304 530201881 769795844 885135073 885502677 572726824 602670561 460303157 806007515 509617364 586570992 80085435 380249439 833413925 838727969 848190501 896252282 223170735 741462309 97219721 799015201 309819276 776325365 156679792 949297299 718429662 988959513 92684685 755362134 997390057 999505718 268156530 494276552 348987828 356451810 109514182 217341837 59325190 202808938 334517525 871145618 158901933 874865152 763077989 796571097 347635676 652844875 491455007 644281781 819639899 867938082 202973345 333871446 351560750 621965845 954262444 969695062 869809830 977123310 232516555 592708777 73615265 572293433 755716253 967865399 952732371 971989677 444609479 930729883 945171091 980908569 563211764 796806339 801666027 802543246 869116863 994703187 274657247 853095878 148895086 278931501 435536679 735887214 807497176 846472138 59868508 256097235 667526958 735947359 634319346 734329717 190008066 507289131 771762477 807539163 204684817 544479451 485259433 493741409 788255648 882227732 199287772 497193521 578330757 764747700 403065052 581117882 670268568 952595096 298311791 909788911 206519906 874930563 762292040 908886449 388172143 830084417 137978105 352886490 924878934 940788024 689279408 842414146 30561118 393177371 103178881 881629091 296774907 369747426 265158110 946489768 918050407 981617431 202109865 562727787 495516491 739170318 663064658 760422651 680464635 864032053 616205695 641694231 984644179 990956896 470625707 692949247 206083089 611700715 401675771 937746623 524989532 547028456 413087385 750429016 428871381 695982273 468905769 775344219 811915531 901895871 258839651 660028963 903620514 948463889 345026109 438708035 619446531 790663332 478497263 784009173 834784150 909065588 764619613 827173617 122518921 216908162 530456907 833114445 49912411 924217518 155215611 282161945 949370589 976836405 845398336 899337180 395989619 424912598 512789642 625341525 667651521 742076514 638300260 723652412 545308195 775631940 324986738 523433419 243982211 632382157 400851492 920586981 92571972 997556021 931142503 999809512 259861688 455676831 66860623 481398799 486064213 533452289 174893170 930818236 969512924 988855322 963774369 988678233 612025680 794291804 11474857 440147653 279068081 468370651 40852582 111048903 755618793 883033066 181185128 458335060 420429297 754380553 948783457 956197879 96147841 977994216 232401223 293078670 68907365 741236484 79355384 593419318 909671872 944532699 393592048 552324436 478815648 596867822 690247219 844704840 265980655 999110791 509932042 713177938 664886281 856078991 658260189 795383337 24513002 303659079 14955603 893182091 888206599 943799790 864631379 938266177 109586225 600401586 891589977 963689966 979160829 998043336 92127763 412657819 792872002 842760063 40538150 568591729 318863688 784564201 224892914 237348076 322180876 706597898 660545721 913253248 466189459 714159224 455219293 462773410 245049721 630388630 280873179 638324694 906844235 971165490 574875110 690214054 686350288 855845697 3803758 261297521 86624392 898237339 325140972 597214971 262903360 897852991 487899435 809391521 851593944 952421950 822766231 989866543 294634026 534970354 271482598 856650102 59308659 103982825 18486416 549752873 360261573 385458782 180012980 469531861 36037047 203995862 183251483 946891203 947064799 953210947 34700066 236360818 460881689 593630935 443554427 832020150 145954585 213562110 650720986 940905595 214742970 512669649 645208499 701172201 871153392 957947907 393974604 568130861 381269748 440904788 147312663 404573524 743317937 914632867 98294162 404660071 271221503 355428128 174405868 960862216 677680928 895674502 533379609 545197341 39946688 779702939 50833946 523403650 220826905 708249778 608051069 611969019 44641861 626349016 234435096 643166596 96445259 591736850 277920303 785611633 790851554 863596823 702998658 996259362 962870683 971125970 334136517 349898669 252241847 417738802 685587834 814443793 641800062 706846876 990039079 997838505 35841327 195812808 632479417 863241581 753075473 983809507 896623038 943522334 778362622 903875041 297452649 903641786 558895256 651479880 699119810 768795347 423050149 568967518 68227142 311934587 56628722 168313948 641824568 725181879 272781651 717095033 414936523 889480819 126891378 615207327 743418088 812122778 627306857 661741721 126404882 994662322 198575826 947130866 628968738 761885086 178117297 718859795 280445325 694820740 933841683 939043471 731661302 861089734 606804156 613294895 694859545 894714490 273095864 902373246 564345046 598773578 145195791 516834164 285618773 865325604 203726152 469893329 222000500 868374530 633126164 876276875 220047638 253901080 489716778 522366824 976587997 995635963 149165386 296206755 206817750 263476542 281602133 403254208 835547759 906025320 302698168 967244157 204388907 946944283 593953609 805502377 527122489 805868140 903884209 952199445 566899255 846811403 252419846 991966704 253683333 985006230 547483225 884151127 966214226 981904954 555621652 795520456 84377860 651415890 751911881 797749167 575336284 598953831 823705269 926831205 289912390 967786135 376356839 398565826 80817631 881866492 86523228 516266747 636509851 774119558 387653815 656897390 346434340 970261660 145499423 891169039 336254327 489130751 919494448 971142949 429706520 543129298 744345530 999066360 612353536 978643952 117647189 284373708 85628009 853211994 305271401 968775778 39870712 298026775 172347446 261214009 471678867 984234454 582604718 928277148 447181976 617964183 509834877 655730553 612619420 815033894 757082189 950390467 199840371 836687093 60481499 401713957 667479418 910196890 965806801 987355719 648467618 879859030 678708078 909001430 385607540 518597494 861262658 869927494 839710177 861576629 715322397 899037917 569481577 979431776 557666110 746669302 969923113 982035119 222620159 434068584 228341308 318488736 598457789 673540360 223342286 448526474 891531315 901353784 39245497 787168899 128555402 821397319 646827742 988492645 174097947 841244070 15971672 310979666 794390806 853193137 87552385 216947332 982239367 982837805 948217179 981478349 863608246 914016436 548713987 832494056 210938070 762437531 985380862 997705065 914116129 973564066 52720495 572541123 808819575 888877793 890831972 938032045 358774439 505867176 771544756 872074799 902944577 934767052 107019304 410088825 898015219 943663769 714794723 775122280 36753634 493588520 178582597 369717495 291225385 779782149 141828550 340414802 574261187 815982139 100693692 266470603 565759018 729628194 148074532 492632043 220797173 544568247 94223244 306192954 744874974 751781827 34407202 348385608 153565323 540499916 707864550 949513645 665824387 898665898 659869192 916741497 919404838 940259396 80771301 998336168 547650045 706138600 291413155 384477089 447274451 608719400 336591074 507817560 506296543 907172857 871150126 910675660 775169574 825387072 973508740 999259239 515263946 906426414 111347369 317116457 836137004 920454757 608753255 832406284 354562420 489676585 804569096 955092651 938346062 981523629 510501096 548110549 735092048 928033697 524185793 685284318 55462678 462579741 829341813 837621734 884174123 941897737 526142858 715335135 412306007 423432794 30463210 255247395 824978694 838757678 549500109 769861460 113551284 629958795 681565908 947721023 862506120 985648615 198626370 696602110 11509381 119160392 411625132 788554788 629525969 698703217 65180759 612894621 237409599 564086371 142571526 184103246 477447964 911503244 589649908 861443588 885796806 988574894 915141806 951598746 298397827 451887109 493012888 725925005 535188278 546308423 255857413 672699195 116038716 999287327 614593824 872324356 905582543 916656109 937006006 953635679 248757444 421167797 949237184 953992980 412081142 924511587 447483328 650461839 707425709 939743898 453968946 674010238 876005768 940929108 333212267 611489494 796848068 945755199 265792709 953133235 267159064 843448689 10646566 167769314 260541136 806045701 696651411 915648094 470840684 896559239 567767300 751327276 576012192 582469785 851430521 870462906 902213200 907027331 202936979 673419623 47529715 408538886 748804788 877089925 235248235 502570637 922356542 936120046 243361876 311417076 781299202 782193962 27697300 377171116 952621240 977565200 164639747 673550728 37390924 513291131 531288857 796945996 911111632 980011490 386489793 477525745 166581217 688191334 638891067 736728512 331600210 625064259 54536398 735038360 902749301 955999289 547893806 997400784 798184978 867848346 322517502 455996565 314366674 318444309 601347967 790134190 108069308 950941175 15651100 963757082 56009600 511853989 129827022 414672738 888949407 906641841 568689020 880890867 332096898 994196692 720143831 891080576 915523144 935206917 198518273 690852781 292099381 342878035 333010673 534663523 824331814 957700260 948180539 976117222 365890725 429106279 310599197 531723916 347174438 574706757 163688899 485240191 70219467 806517899 310989595 766062721 300732008 787727627 254592855 955737399 524212060 599928654 697755664 964327054 546120507 732454137 219016816 708344231 11555241 26358345 440609412 948705191 749940644 763353739 774817817 993793061 751181202 813258853 63701106 549079260 744897562 856993760 155777247 857190613 789965259 828293472 887005654 894597213 26094063 45220535 249069489 314874689 999570917 999961459 420987203 783943470 207036912 530192616 801511272 856230079 242300136 642656029 102722148 741243215 654168517 796927576 247643435 738887952 928063502 964134271 736670054 813111521 371714832 491109369 165572016 721887941 266673292 538066248 2689447 323818925 10588065 235968261 486320910 570906705 705486250 927681360 564771471 950828495 385102599 700457404 752679100 767256998 529130591 839191722 853208843 875347595 409366279 774690197 737599132 907302737 167517140 897807949 299865990 418085312 316959038 769130940 150555261 225929226 231352159 519422299 176507297 498269035 727603563 736885895 36333586 122322808 118795726 725500988 958369514 997709731 655017525 914143815 39024701 780753989 655775948 998007680 923501186 981207571 470387018 677682864 82285617 592247363 789949398 877309154 733926304 889295517 495834858 857068317 480578044 962479407 329035428 719456755 853400574 896316326 723411038 754700967 629609006 996731660 29903368 617780416 141977184 478517042 590130192 833138549 677724349 762259468 735018822 902711439 909372935 976415980 197411932 780630484 135185096 346925226 430387888 789424419 182786735 250421622 163559749 745798363 767314722 842337037 625037038 662668466 552525700 943323354 994659865 994892286 514627780 584494518 628287076 895776804 433338063 671341923 100124874 881986816 268489965 383805237 562574872 616678383 344153201 789874294 335600992 998996945 120306369 217201814 678676540 879849603 8328205 450907130 558269366 573225453 561599117 867785908 28457285 437352019 113068473 730796965 252627056 520745449 560935132 678368199 211893316 957154603 177187902 470850934 995697308 996646813 733599128 803959762 459429798 961357731 93013467 572972355 712052356 945168737 568194928 879901444 671595541 914435916 749252464 829235261 308055754 647719744 927098469 994115696 670991352 881550611 710844346 793503235 791780776 983407904 920075942 941367916 547594543 797926281 837042654 987261462 260551258 791893827 365598705 503704717 350731476 555713870 664301760 694449088 971348448 998896680 236288411 451388281 876650815 959758337 382484818 648898725 765611222 816629146 404287570 654472670 227591370 629083515 762802739 769729289 354548951 537019667 351953505 505662355 527988003 729909968 601731013 903604211 643313554 914152615 615693148 637310410 512777052 986710656 312539155 897939181 103985220 445080101 792504657 808518617 986127226 995102257 739375623 928100422 850019367 967418913 586207572 621965513 489038052 544026946 433610287 943293229 684957587 876124782 339228240 529587548 619733086 639641830 915764606 962160220 821444047 940209839 438611566 580108011 665097884 773404294 617656946 782870482 953540880 993482010 161769765 979754450 98791109 265197738 38911199 495334206 817951087 911483744 230940747 968452093 944436322 986961783 104954881 989321307 960515265 975840767 432414135 640231646 392444713 531299493 840787969 841020510 13836544 219995928 390905851 954151366 28365217 957734215 727871639 761214223 854337342 952906329 498302907 949345429 925958759 929137962 585456102 785035316 675620044 764258120 281619149 948891477 766414657 827018777 290578992 850102791 137855756 786586041 567326651 722106631 127503922 737535352 120656369 294396035 766850086 924951739 294838241 825593907 30538034 59079308 873526165 898928334 20422265 487499277 517230725 967399126 129275679 201921951 623696206 706553938 608514283 733635229 310512112 370526233 461716549 983304275 212335930 861711640 770758016 781592183 22548997 573291919 785770132 968352191 182352222 806464430 20806044 912915962 924008868 985074877 998772682 998957158 720605279 752465615 658782447 663682479 516020042 907333590 794226839 987304010 312450722 764966090 328343096 486739774 342049584 799324179 191973747 559387987 732227295 905027507 263604748 896625346 48356805 609454199 213759559 543840293 863988222 924527868 115477887 830210634 831295722 929282537 721346694 742132314 317261393 466981530 38175541 55678875 518398244 765136655 599611090 611819903 229040957 366980235 880489032 967649177 723784394 746597020 19109986 626823535 893107754 984114675 851251927 925837112 283550750 531148075 727980344 758059327 470367700 906702745 929855205 976667185 723266971 829356501 924063081 972119704 781328032 935846263 966191772 998825812 52183693 293357240 404588816 445062556 36728891 53060742 614419433 660853274 359133801 866558653 592412343 849871426 152850978 656550091 324113232 981239578 359113269 777979318 555108883 863190669 657387770 781785318 212103364 730551267 582459048 737621083 686313932 746389015 649208433 951432374 588015688 895467015 211933030 711634433 839722359 947081352 280466809 471186454 551555546 669949119 901166697 929407001 570378634 656989846 699489834 880110351 815512056 983651269 250183141 541836622 142011246 409448464 575781512 692236294 628645234 798068454 416095434 513244260 781361600 841108080 260735428 375775558 121866390 599961333 477876577 487471797 568577151 672087732 180865880 749373426 530139473 750931404 761487354 847315725 787558789 917471066 208820333 613160061 989687665 992739502 721089473 860340989 319831124 710820290 334572484 907712929 785274182 801953781 117946386 178085469 705859810 948469535 875145169 937287882 505741055 751947361 353121363 473631651 215478862 285372553 802162384 932163893 446660268 478181520 469040667 654751250 420927275 856317740 800533036 964981154 716778976 840280107 634327242 840864613 67665515 492590569 113956555 561099039 499002532 528163536 880330914 936487718 377364426 746726685 80894451 207575142 248225737 280696847 699824690 844126702 924119331 926202500 886211152 939512327 221392410 548601531 593981733 713256400 188020789 594893461 854184333 950795235 41332557 158736547 653873092 953702411 940883345 961242167 352572550 622875972 398413270 663621395 369626200 902127635 855729396 903523313 617843618 764435190 784351612 917983680 196799126 889836517 652484908 718959660 372768474 406703426 114845098 891692330 613807413 755894983 609576738 984503366 412931126 801950233 567432309 977189626 762447560 846457908 241710279 973225608 212015744 267197280 151632635 790196712 213777714 645453325 793401466 999913391 973690881 981670251 680303161 785611248 590880349 769359460 253520757 974943660 556432859 774236505 868407892 895512949 493892040 998343838 933264646 970168923 559539415 640468674 192042847 672138928 814687334 930570574 310615114 885264706 944306652 946866806 619414177 983457633 982657381 986881073 78507098 528057134 752017595 833425901 544090571 600492668 107867724 844457810 19230111 488362831 52175602 877538531 859857762 931295307 688278982 703278885 104095278 476187629 271143446 638614168 401485148 813312406 244747591 343203856 589911708 601870267 221074448 562914265 95296166 506074557 299639105 360823616 487966209 577708394 929270476 976456572 747155858 840219883 789970662 873528697 346617463 384467574 624657266 662478288 857127395 948516835 494449533 774606804 820612838 974541266 348231251 917167546 8308218 641836193 3076933 277979583 182246117 402342156 483041757 587261269 815629192 990396074 420336209 659599803 369800977 961867112 150868332 970200506 986966 942872693 209204133 417549276 25899644 94436115 539752038 542024406 49557575 133033018 256485940 294226597 999239558 999295408 902557251 958136124 844559782 946882287 801799006 913762987 139245350 485575422 693119968 886056237 813399805 947595064 892787758 941348397 273514729 359411617 321648464 403896928 59025039 843259926 384085013 938247068 237350222 411634178 24658026 261182907 666048077 990839758 815923768 978057977 698246043 942788248 425029900 809020755 832179241 838353818 74203806 430971605 645171307 772635051 500113030 982540531 173320276 913388402 1427777 785534190 980942421 999033701 149473223 777397683 957769426 968623163 101416346 113353024 881295662 952486045 81057526 918243172 615175194 830771509 579926459 787250218 981052123 983138047 396546415 477964025 198367009 892174077 489362735 957479405 565927910 649227371 210415855 905098277 94507990 698802467 836765048 941583477 535216030 922753936 338869322 886860011 12015473 938356942 932357085 961763481 817978851 995933842 633650263 648074424 278687754 814641904 228366352 955989507 901345929 980568160 866209301 910858112 981466161 990023655 711842211 716459645 26832036 448243192 897343742 963452764 693952495 879269567 6268246 840228099 185503644 576830161 172153147 690569750 131667155 481916208 414109774 671982732 858026830 972328953 200015253 666583677 495775662 856213528 612031800 750491938 899501373 967823047 721375402 868935109 570775503 684670251 956949706 970187978 578255884 625732526 215209707 812478094 905004596 915933978 784340867 986108207 801290258 982884469 436478303 843219136 830785129 973582497 579826289 735784689 363192976 429521368 973877969 980933758 356392366 918860587 689805076 925110404 805953033 976628582 32822894 729431768 442938153 787883751 520842147 683916980 215744500 333382388 414974017 907980017 326918195 376662283 490753528 979629655 444030515 880423775 786051276 819394257 17611407 738591123 621661027 903058670 237633267 523752347 307111876 831785062 342786979 688715947 693839276 923212259 777612045 958384563 444591232 530915994 162775961 498731087 293278187 404259012 261854222 915237782 946210081 954458561 784809008 812030609 951968714 971505371 555599096 824515229 367793764 876021987 363361974 365534113 72709615 301234801 998938247 998959363 592417257 952944677 988381049 990027058 441284748 654977164 424545208 811521671 847623517 974217723 237465506 916894953 642006657 642962949 90301433 562366932 405373333 602636297 635474941 650985891 847195941 944701040 765616801 940963119 574560398 950667615 919116945 925707883 188399505 733276240 83376824 875992586 765684942 774089960 552243845 862851333 157854259 375539996 481626483 492115131 44980086 342604037 588883813 831885351 334257122 418130556 643644093 827390920 707396434 724712819 393250192 867993793 995637442 998005943 415068220 704836814 172902525 555847898 899408717 996395795 338297490 922923439 611388067 983568381 253344591 886303923 985657634 988590328 740021143 933172345 616000035 693959266 925896578 990148436 919738364 923623163 414863299 772282534 435272635 999025892 62720311 777317622 247738663 732292007 507189986 639145723 321874233 558349769 264430435 536586727 140203746 191948852 12388830 774271161 782923329 991195924 603359571 789052191 980248396 992780274 726162982 944516165 649306758 682787342 875695644 978184529 235208676 497781271 607044531 691258698 542591374 646564062 420116491 985195808 637641965 758117951 397227723 611729616 47406829 212617706 511785482 565784286 569820151 647096009 175009855 710005131 556156248 769436254 246597962 512227205 820351713 969141531 374294140 823332836 124058416 875348464 915867587 982665170 462414006 964249207 842834183 844321412 649370346 961093515 54694592 967871794 838193893 970260297 824303973 982488026 646577793 658185572 366162689 669767120 62974743 787942714 571117681 734944630 760262106 797179204 386018438 920786501 132962224 778483298 98303394 129652209 270888800 423245686 500516871 666906564 75597153 720634087 475157674 907960591 932735764 944870719 77091666 641232748 861400901 903344430 40274235 333262999 804743136 874293657 782669922 835076129 622679436 958516089 599359858 922454847 791621294 972340435 188666417 704627011 663195649 819229154 311877861 828235122 839301551 865831071 945870670 966603813 328999792 531937171 616022264 889960286 546726902 640399128 200238921 702387389 236212487 991663196 121927034 769723948 860102069 968038159 750074852 821331743 496853022 692974672 574149935 970189569 394378486 929909715 462977347 690564761 788955013 941115929 552003419 625152291 211458037 907644487 697318622 852520818 545860977 912707836 211289452 592562550 928276926 983800765 621668809 960525296 494602345 709799214 614631452 886189031 697690291 789670624 203099809 456442998 763986580 769056286 19136315 661860337 861891085 972564447 366982775 437888721 342988829 876452903 514929651 874272077 929054968 986867437 302972868 822074856 519625900 904032536 173740705 365074151 861792596 921072099 828804995 851972271 939990158 983394888 632350031 972815126 117430968 869074023 944236722 983068452 581008003 691163043 508969911 703396030 328777537 834195150 247423940 390922139 272220272 399794040 932717210 998774947 641928387 830962143 214488981 860999848 388255021 891884950 617923928 906556392 49032998 912296968 841733483 955406691 240434539 309386688 165050886 178636053 839629140 973333922 219417993 680125955 652020453 963766214 543270960 818962490 656238903 985510816 75543023 419665613 44870472 317035396 71393884 348934159 354576696 711491109 531807133 645765688 29225473 110739912 122842228 675851880 43711514 802657712 31994115 142256317 669944212 923212959 560155163 794044344 650820645 672891460 199174068 815402306 950220005 976525901 339610501 660553546 809903881 989332063 630794603 684071814 911110085 991923171 62998730 295384038 874906453 898893726 774113925 805403060 522405697 834914260 831266842 946363146 666376910 769268181 648598592 684263187 95880980 785517481 774362617 905324753 856733322 959702413 331951483 959717136 928953288 968331546 8249739 866360670 936688060 985364820 816795667 951219419 857463891 943886900 700869694 815065821 527897580 556660480 715675115 728168663 809357227 822962049 652366944 805986812 183986191 383960012 507529024 912458469 39367708 402162057 216373485 758129114 377927221 598302077 613169637 686566478 456562846 788317879 263066600 575517099 843538753 926373494 591745007 743803711 979035399 993203289 179315409 669929060 359740004 536009662 578984687 671744823 432851872 458598076 415781710 851345667 34614486 745656120 502760183 967050032 652478151 849591928 463067663 550379694 126765310 831612167 152661263 453166249 78602065 977997448 416503846 672715560 531164180 911091462 549901188 883794571 349848074 440950769 381910275 725337644 531652549 538847211 999173237 999780036 262521676 968078740 389780488 609252349 836277056 916452182 186836386 650274890 600423089 654134221 604473139 711706899 239668009 394200563 72723835 996078695 469859728 913288098 322398451 674571008 32517154 820410601 727541075 989931659 763398587 917131951 500526811 593488926 455474345 783586711 131048661 189347452 55147307 405560445 840177241 865076433 15502970 497589940 748523931 907792740 659402907 807486163 310925900 738567132 165930947 627500965 765516277 835790735 364530627 640851536 639348443 987819360 877488619 949785069 237546247 329051209 201838948 872510625 89959186 648773925 230681728 653802041 161449568 357167251 125637082 383203051 87487769 285410446 517540613 967903914 946570204 962124882 271979668 454509775 372127638 912168733 793897965 897894022 119723153 839540213 124746304 345305357 77143772 316982442 171209231 879133788 414936068 473807325 758456231 947883806 155467650 568682104 963655229 988138432 638524344 878539222 801779602 970308583 525833110 705982368 556159113 918941862 363750326 617784807 673335183 854706318 755087801 898995018 725597243 998320913 737615153 935541000 647646850 659943038 861476449 902795586 850436866 968268034 344773330 560532767 374832129 508174357 491624420 728366592 481472914 806574938 118204522 760372140 935628904 970059578 784430426 805109395 984838549 995343000 803208132 881700165 179409411 672406957 906311074 997746488 646631715 713933826 390891494 576936023 99213181 933845316 12614054 967077920 32002351 622468700 666487268 690190663 349631379 826358397 618498684 788399408 72152236 783660874 518013748 799038879 128402041 606102455 798215495 960168351 12788056 249535043 438736355 831718438 986884348 996426905 986823984 994329822 152332550 291121765 8749346 908757776 84735613 851842912 522643373 752322345 284142613 581318691 121314453 453392669 289129380 362896762 701311256 876803167 448143870 825031463 942863106 977960782 524470758 969635247 498222566 872903692 67223653 378514308 277334686 378405680 945214069 972858356 391361482 786493342 466655224 947356619 308616972 567207889 641213901 761640198 321240260 406383095 105819458 776030554 1644149 546663867 92635340 484303737 190058003 241476961 270815353 562409883 971589315 998852541 378611174 546384784 920066708 959966418 329101693 932695282 772502328 988079018 814796373 922032085 575821920 897935134 410862465 624088012 742966862 950108256 267116295 310313949 919965112 963304205 304155080 438931426 507969368 795647554 433813580 946618978 565848810 725356178 518468328 519637697 623897830 689776849 100779761 890596410 186620339 684410334 743125879 941257526 656931169 889691331 802375136 823666105 978129403 979710780 638710457 999907353 763509620 862106531 639692145 669319462 306566227 550091423 840225929 842878926 846851155 876552402 319976235 464288167 850573883 981901564 810624777 826986070 544659031 624084798 148809247 818076554 61073061 845313589 68313446 324247446 422378071 762948989 683098434 955366452 943905135 950467008 779876061 824116509 886050610 934621415 758318886 819320376 839682098 897628513 407816207 469726628 689578463 705401945 835925639 964224290 696144538 765996628 303709253 339225309 587624056 634614116 515711824 868236727 272146226 731087503 528579826 551677221 907529004 983795523 934664394 971142573 717472834 867735374 421271778 797227408 52889734 202913160 299781698 868191712 39104690 806284054 144246651 685814258 940153378 970276712 423924202 680448169 247809521 928075367 107352951 928965367 567715015 873360644 607606584 979431087 974378681 986385625 530992417 811383204 858979452 875771260 650601219 859850503 311546669 737443778 510145986 852397224 229173676 977181078 780246244 812361896 999619896 999849349 603055298 716779370 294380580 379611257 521500272 736860944 117633891 870845199 657409038 739170559 970133295 994039843 347221508 732234541 678156135 810975030 997309199 998204125 877870678 989595295 854984085 946363633 158412976 307893481 327825470 409726761 516568329 629555856 806691512 880831364 199402344 991745794 547929251 657996877 851618401 980940180 246602503 356074917 746963070 925678074 89264600 493298272 639967381 934427411 399913940 834492837 471393965 771789005 38795043 787454590 410417849 826025945 474972455 798975016 541847141 767407948 249618572 757672988 777984459 976347634 727198880 788917808 389258242 842835156 511491544 564247132 771918802 811339211 126739932 329989388 96807171 240356237 333169011 892630570 150336683 230762280 803691153 828259165 663723445 781990763 875163271 988757680 712107267 861966278 384234261 783669185 763442853 783642842 339747362 763841145 841699138 863130267 845587102 855817362 205704704 933726388 384072321 504520156 930903170 940853323 634260749 777469804 906817202 966546192 816167543 884774005 918001404 938739563 286871014 528255137 421611458 545516439 669464104 913641819 189537559 616814970 277841857 504200624 974124617 992800604 839532532 865757376 540563190 944993947 745077973 870126262 242643559 438336330 93892666 716199803 728941424 763526256 314268891 745121489 772677920 923048028 69163359 912506432 341251901 347108672 232519356 762717141 116767687 755949570 223282811 535041436 399938257 653323696 198387540 310088899 178538919 998466236 628578211 791291442 584842159 619524523 708434995 926688293 958122840 969088210 324197394 897520818 434120581 514952414 169695446 263629986 745507342 921813920 695469361 958284991 366178212 447282473 63587765 517243511 66113226 260495255 162980638 171900797 270818291 562167030 302184041 545135808 542052329 560122268 810787495 930066756 652508310 824844267 954858914 970941454 64357593 247499526 495100752 870667407 701885374 955919561 341191686 590908059 642977623 748165914 679473449 753447489 519614333 920249649 240089181 876338313 901905981 978285638 403380348 756476060 262507287 550693331 676328014 740654425 886465613 936086324 993463720 998943369 171134920 520918465 478465810 925137930 5350645 185606858 920133970 974588882 16118711 236767941 934574142 998816601 601741511 657908378 467258328 639813565 445591703 904415305 416852460 967819190 282710939 588061772 641507299 959677393 128971130 190804522 163834916 376976719 483423116 727783507 696896724 764314294 160404285 722912717 768960201 805657790 946884653 971571639 162230484 843411212 705364792 949987165 153835828 585669364 289768755 912842419 991077401 996513333 772981356 930057567 372267623 460512428 313811660 382183648 70391787 265777049 614536336 871007942 248050656 752376990 826920335 843067941 889477803 912216790 871728612 926670325 131571410 155087331 267859564 547480589 647587979 985031668 148077908 953684073 532603723 560663083 704080805 730511187 737149570 804530431 667939789 863206422 156332730 468009912 81359212 337249964 408804276 632956877 182808328 493535855 687948449 719077690 524301914 631822740 214664661 418814954 715475225 847098996 912258671 916516662 608555367 623142628 642003744 942981805 563938660 741035009 422586454 630502452 82930553 890422567 127215330 841185358 131109555 711110293 688022645 986998591 632094994 957030207 806879067 986209822 384504803 396396662 982575381 988708232 291437708 316903208 529844464 798671155 167107901 742741492 220805759 614609287 984360452 995955451 993571929 995760861 254090072 967379382 493773314 786848265 911260860 942388433 127387387 537369741 217611556 975399616 847435173 938338090 328216092 723186332 809347477 833887357 986443152 991404369 47708633 734436556 313569452 978178798 973222577 997097539 812554150 997019243 781700906 992520168 578935023 727734067 875752428 889522177 316131294 977801476 549246829 964292437 422092564 499686710 317157583 591690028 767169882 834650612 720352684 880737555 721071492 870724582 386032015 955544580 756880686 871370720 773872433 988709610 311634651 498695732 231354854 459887049 169067803 794905471 509854369 661952946 782318989 952094406 346294368 484904134 408432650 858568788 861208378 897071333 367199009 456154549 822465286 892765660 791748291 890779829 440274142 690396278 18669439 487366050 395257650 919927573 653558467 772237935 438590134 509899380 308537298 964588802 668576073 789210907 837312120 873975735 449915033 665317096 324531765 653189529 984568263 992365204 334906966 798905128 876145022 902911891 498875004 950914808 785550092 971462980 61461419 623374054 201326475 859634862 725356919 909860351 670433450 746717616 657187903 879813011 825193811 900147615 9851873 833664651 436856270 983250323 805136934 907330778 591613696 840898511 880965703 887091028 177000009 180672672 350879344 388339418 538751559 602258753 952976910 990218935 91928544 913988237 494567496 872753481 988315240 993265493 555139803 813275179 975249030 991091207 451423337 578573118 397430662 951762260 459349328 929461499 180555157 908672715 64324822 769454092 214032364 798552511 111029843 599506877 199417536 391328968 208586169 661881635 873171794 916817694 372490434 653083109 802620708 864904245 582588165 680814571 723356359 788939474 813606009 874035014 757960017 805434449 443305830 466283877 686307861 893146360 308020619 721961047 276505974 902120077 170113765 305614284 947330719 995648558 263139722 947864525 131885327 196395052 998414712 998504533 496833550 735630009 194302884 277678666 915338991 924931423 186828177 611747363 824573735 982951455 784481594 967992549 605589797 919485916 925764503 974909039 837225003 975488615 142123122 542689256 823888081 883494784 456778204 474107917 831044677 983502716 649576925 868923505 481436169 638545233 67844050 627771272 522514910 850821636 555818306 575123522 836128098 894044686 73240877 138480972 911168758 950561956 812350611 983432482 956541799 966830413 848722270 885820179 653271125 931506888 929734683 978032087 567130877 967672679 449816707 976616268 929662769 933926388 910609904 936358782 197010092 915267565 337569945 549152976 835587572 916959922 283314960 529879280 459093604 696121988 187270501 339542375 371502628 688893597 162936696 992213661 102076500 417010740 337365016 600473954 705621140 963573697 150896493 431444360 711303917 763110694 148697426 818200016 396866047 554898325 603453601 826618529 954889165 963091780 562832958 706679394 232131221 447058727 49368004 903134076 231513128 736985734 883133418 943975364 433843331 814133779 974144388 999564379 918362295 969575021 341638855 434879947 186007422 712736418 931327313 993268623 382990080 959237368 143955639 845487627 68589796 752845206 511808017 723735183 835930644 968217819 494548653 604030328 73135012 217191168 71317804 657065927 846135362 943967963 732605393 882951906 417832385 764850102 270937652 649968836 870614180 988809603 893363090 931783237 442208491 990849891 626951436 710102449 430773091 772371191 187705045 609416815 555242380 829372171 325799499 968103090 448166502 514863127 403753954 985357262 377437514 638243494 776071032 880193137 631087819 896076717 533208355 828163290 812953441 888816441 793305173 958228880 206574719 400795449 647076434 999050229 895049745 898811993 13398319 70547573 479199418 975401974 807465971 910154940 934652342 975384951 89964351 495072487 569265682 853688339 422166008 638159701 260647313 604862339 985758274 994637713 101463586 130338922 142204770 413789150 493186754 528163410 152565155 255224335 266690790 358283233 933582678 972314132 512581585 865916034 147018330 564808991 997808367 999719928 125028826 704138474 476595904 803079582 858911115 995831728 95218049 982365818 754034363 955448430 337345550 769067203 10662886 833910928 730992458 827223894 857576022 972235543 440873971 530830085 735789139 835425446 310043621 344574855 214580975 831651507 987492937 993281206 882084861 887111033 635760780 814805347 369603657 442712710 93380153 798589470 56746447 712215807 880207874 948263748 9621197 746524220 494177841 925383342 494096591 880456900 480599142 567530919 548981208 833003189 43924541 719029467 303184480 842293601 944759832 958490666 649480008 692245400 455430922 697923408 188268934 826136204 279278912 954226066 413318015 878694047 527971684 833633766 628856354 889713384 571021094 610154195 584722115 961838487 237636524 499961260 892512555 962235589 912003791 940848636 510229727 638264901 167365158 470077727 391379688 462418579 611681982 803779818 320549016 935882668 885156349 912819618 852006067 956891560 146826620 468384195 816796497 850325427 750102196 853531745 114162964 849057815 809130793 961594341 58956777 335628536 445003571 798943655 233560394 971213332 701806440 995395471 921766041 948147634 206636401 265077470 975022489 999518688 614787753 658216565 521266009 902836600 480426114 771286042 572209678 970550187 746483488 865416316 184769966 567160022 958596897 962492406 537827395 795773488 541341203 644633769 894184098 966140863 848843863 877704025 153444347 836458630 840515174 936414784 181949201 383688366 130560425 374130896 552491462 946089624 847294425 965710136 340233524 531001180 692877745 939412133 772550039 919693315 674610096 860656278 917641907 921088342 220941523 233295787 129709183 370025959 766902830 788242634 577650722 775572646 763680773 942976785 1625188 796588816 892011762 990643726 601418272 682336725 818743985 827997932 193948248 855778211 727577859 776831741 371312605 737682384 451777862 807843532 637111690 837051350 507321264 507920712 225595197 327564510 507315126 745181909 891368106 923159879 988047994 994531202 616625231 878720415 413967370 566600158 259191423 592652470 45165557 109412435 640543985 700900725 160570075 268937777 610283057 996678116 685488728 868947811 360164210 476989664 409152977 515619114 702024138 787542275 175570322 793804177 533807851 534702163 796657276 947426230 491993022 552168661 462761534 715431497 696339460 914442424 719658838 730435194 774759859 836217413 841883122 892627397 207300366 257009634 873247942 938606389 414230646 716947371 68530041 652840747 314106683 386793107 34747954 322290907 899560206 949340390 563289188 600418554 588861643 810345698 909963555 919421741 677074997 799632135 372631021 941501736 357478676 534337093 654408982 745752222 39808251 435086192 792590867 966662991 176369773 733696409 734026947 807083661 298651617 356816970 102946737 720918324 209585912 284113633 839227267 839844578 302659529 718138792 295410332 699331148 607921847 968233157 370700863 506755146 453249138 885659491 13889217 332869695 223464930 813776632 92542093 994500241 747307564 915298520 366278883 787372942 227948960 684837401 320963707 724015274 902922086 997711729 464011244 473656378 553314686 900998127 142520504 756630966 806052814 953068175 867219665 934217252 208302731 383905892 301594305 559948731 561709566 594405387 17833553 381797459 70189647 921795133 894348956 995183498 962786723 964995657 755039543 922926230 739676182 742617166 431549833 952874283 888585531 999342296 631765945 731483487 647988872 943134225 194754862 965154591 424032222 903173738 138301239 312512663 753134298 794663784 326200590 462175561 448892496 988211653 540586522 597493918 670012027 959982105 869030625 871812713 903218540 962722763 786009128 987609021 781145650 947055554 765023422 832869091 515033594 685511651 591360749 615505633 479320927 651754065 457078308 632223281 526121662 937342598 872225428 977708197 21548034 262857556 794498076 821375430 681290414 983426979 377993258 563336485 792589868 901662625 773589758 824031857 925479544 940300549 544089677 637086319 148556113 934671324 677242519 806156324 862553730 960094679 806635325 928055475 144167654 501988107 93063598 232010399 515335336 776110729 663648066 723086696 64540940 339680992 896524663 914962435 652017341 961311469 308303728 565128978 937885049 976603146 103264061 938239059 348772651 784503986 662434458 879219669 809590522 846275667 865175450 940574953 47200996 855669416 985482743 987863852 305110459 604032951 249107676 971612009 720216890 763473298 243070659 604281258 278627677 844908594 226375831 912551565 360375504 720515743 617239858 859381179 650921170 975060318 937505345 978067445 903272056 927882637 9958461 72129405 116890864 440321452 801187327 881459128 427412789 931063494 340594887 606974418 973489395 980000943 713020881 939410843 438047361 521771604 210797847 961095542 685071185 762870421 947972971 992637175 646985679 819868220 740540026 802074694 747973794 798258969 164088020 792758620 159118645 988333427 229392678 593244932 29766490 799558004 704347003 765813483 860730549 893289263 715413472 739898636 574849268 577520972 196146837 223637204 206052977 443047371 768557492 787757799 140437008 184774963 149550242 481810569 996229263 996549163 36815899 56295693 171105847 202323054 524083475 817214980 575323265 638867957 796821257 821807422 518943888 951275512 545737742 912956870 771649709 887943730 413537298 519055618 906188252 910353425 396297664 442429303 930685661 995705137 392243758 534372216 414051005 950764487 179808869 755294519 282763714 822790804 645955311 934444868 242760229 865293550 588918925 600874921 560230509 937500701 712290495 737715495 880897661 957118808 888763485 930590574 554361247 894499627 719898017 937731423 530252087 879934573 969593575 983122022 395349686 755951289 940368973 952756048 810353053 979782699 334597749 908956693 75676448 372482104 893230322 932498648 193146399 226380510 58058676 492002909 268160845 715938731 653729689 990320989 624156862 627170581 116388255 693671987 188273578 890540290 801371818 835652461 20131100 172205880 300974506 893855421 871172375 932024020 928869365 978341663 369633252 390397647 126884653 949248335 424662625 888688062 475518743 552069578 923864543 947106275 408738496 682817678 432278043 464491979 933008985 974159662 290224906 535473037 124897188 256063064 140198721 572474544 920525210 935139740 31984402 630078072 251296014 560172342 924178768 986796235 732546258 949568486 139097663 518094096 960135587 969557098 996599695 999754907 957707986 991298592 954679697 994738930 436511359 977467084 758647270 812344533 401000013 452548204 225885043 453058506 179762758 451708432 698849155 940945896 799417522 830963522 955208670 995564685 789809769 852719484 645531285 668628753 550017070 608445556 779648401 970128560 917582478 970493554 426022912 610371358 400103842 593896751 328701481 731858885 481167197 887491689 838112329 938262203 868047381 952758696 134651091 894853041 452878561 743907560 861381777 866783004 516509380 825956593 718303732 833192225 789815913 929736383 726133214 912974029 767457676 887377093 147092690 572322795 59467823 502875630 754082345 814979718 327068410 638269058 125772020 765037178 918250489 985263120 706594968 782340275 706544165 986902821 152805981 860977530 730393819 747413331 433454822 588729549 316128045 607938659 668260923 791769581 70195617 287493975 398194587 929028251 265989327 542363072 600177596 863301548 65887446 727458279 678535490 913804055 124764033 376071204 817998677 880471927 567012988 765298804 15449197 642472009 378495898 615254493 484442248 808810734 751814888 861656242 914569838 975756276 660952274 983943718 68220869 789993209 700320735 731741114 339203581 344182636 620824998 893787792 321979527 892609012 934526247 967889428 263292687 570530005 199735287 443132455 52561210 751032283 798752115 954872201 152344000 566059421 19250926 461961759 10340258 799152351 100622840 589306662 603183835 794623097 882805593 937855995 253342951 275416194 141972059 196434425 680534059 797550541 745796246 919587012 293763022 950609871 684273658 899557232 664638630 740890299 845504236 917451460 792205605 917866545 540919047 994317977 160568313 351889364 467476435 729453409 235071313 813041490 158035551 690957551 743131417 770986043 214011112 318749908 789875840 996742146 340254047 998257185 476871368 602573559 331443518 714573756 782258480 806507915 76644936 398790916 317958363 996457632 16654120 666239599 367587055 391414156 976971937 990894122 999608189 999618375 483227869 812144137 358802068 542057810 628693328 725720415 415585322 996799603 167018757 945339664 410985730 956611580 904896397 965909000 497674337 557554304 386406291 740614811 92726501 507486896 814540924 827075196 513752830 534057436 536022487 740685410 572359153 610532217 60077134 995551628 685249358 859832996 357000095 891146197 678651914 923626889 837445824 912131180 237325882 666622980 183143863 379366941 747807437 919296234 665023181 679353794 553155555 671228201 471289986 638936606 507221109 792062146 766069625 817124470 484276393 781437553 661580632 709045803 83703239 923962068 562909698 951035295 106610853 309335590 352911635 707814418 68843905 289917786 443356114 994318828 951469101 979964411 421736174 707603109 782318372 940047318 905644456 989168759 634833244 976639158 152568535 972277720 884749159 986415400 910425699 958333973 416307970 641509984 855671098 908552766 618797655 705454698 422954061 622195724 44914833 173372983 2578273 589707720 962548116 978144208 400158654 653607983 679293279 836540354 178700714 782426937 229130489 411658639 870023796 987507099 987051558 993250337 185358979 657756912 314836725 578102552 242169591 724140694 775357224 806376194 660782416 931562713 384842788 601151345 352334797 587056345 857049235 885433346 210989307 860170416 785289829 819014115 159998310 829260607 994274989 997493710 55112875 207267597 590304073 903123025 345879371 492421318 559647212 972528446 867245684 909915923 220950908 816992886 312069805 754272986 406189080 675836170 586205034 934628106 980690498 984911319 996825214 999870142 484517058 851654387 780233180 998586902 483939650 759312960 478724565 677129566 593945837 918230174 888099781 897759024 955446399 998338017 997198992 999954509 563864834 770884758 876506506 933120588 370684515 619765274 622250834 904739173 84182669 924329411 39675637 81079592 462355142 894842731 350569920 826242985 806692169 889419437 264232440 797550176 761917852 762687963 12879460 45678253 33409761 365933128 924741873 940428480 485473925 881503447 659536207 711555850 188256432 397414803 542682338 692921341 415225473 764881316 397185447 597400085 736204839 874196901 134152767 691205913 130678705 583713323 776520399 880554959 715031590 940876057 612382059 720011175 36872952 722443613 781305317 864822721 701957580 802553174 228737424 715585851 965676554 970715811 807272668 850254461 518338471 963183586 379820943 843998792 654465280 950026654 908340703 949671069 791490705 817263839 116757547 511270000 339975023 608643194 842218378 947664188 213720995 426636334 90292681 592842128 845534607 954305356 534552651 571956967 107803964 964406796 145739828 861994715 277027222 804555694 670456076 918391198 482351028 962757180 49921108 782650756 775645028 787034858 75719377 504110265 639748921 947533795 457845407 528660577 224551831 402974350 950042313 953039615 255720316 640701347 505796781 574425275 950328081 970306213 489773522 781939984 743703675 925795655 81539399 876817248 512003543 540002865 360219978 827929109 422208881 448411109 118873019 413038428 603018210 871206320 28276770 674464473 687835296 991590459 240797621 570945936 21979116 368879972 437492930 525201090 991911012 996700452 55635174 699323784 604656022 752539540 301033862 414399483 296678083 929372467 466507037 600101582 132230669 698226436 345769383 522070302 36305479 120286005 191861838 965230091 716128785 936026099 406175556 708223894 268766883 367366254 142219515 956000010 937260535 959204836 368041994 920498085 99222734 961048359 374457876 927621513 643285951 727713595 916214531 917330928 934595627 978519225 359676303 490508040 264209196 506757778 31104947 804357878 875877313 924638659 33788707 109492115 728620541 934329219 265089451 603768925 670634560 951206384 273689471 353256012 104292177 353233636 595239554 804046549 908128221 970468627 378701894 836163914 933339209 953263346 93543122 831983099 26935871 375923652 27781291 76716973 643351941 787849733 289921216 917220878 827201836 923570224 347960508 585670843 926521060 973196683 187559579 673331747 706372380 847157730 368162051 391206986 531426198 972653470 986342882 996713915 414711865 894807965 401852222 910797318 541194330 917962821 339636518 962538433 75799250 787535746 873843872 930279545 731542498 918325764 501839190 898417839 664670146 792390546 834652317 944382616 75044531 418098152 476509223 689371411 172346903 241802087 426408624 892736494 873439570 969859538 906758088 912548084 856517118 995132891 138231750 830243770 7375350 303774693 675493794 683427265 221223949 947779405 690824118 864179935 945431899 996637764 710046649 785939134 380254430 811118512 857631186 989579398 46683194 189201207 71474442 148591320 584620836 881354756 47862320 129170265 255738350 312545552 479526435 696413799 476221653 851488864 173260062 236610384 410539862 952936721 690990744 791245072 540701523 781921362 181537080 723580735 587271182 969328854 934205268 942010760 355462373 881522834 366971480 554115160 35938144 190858261 883447529 931983724 597718702 915670916 894827235 959401287 262857764 550982947 563256043 805970114 643981285 722234456 45585214 703946678 442388953 500705013 148110395 874979620 858711025 977622233 375380225 591034414 689470769 773317317 534326826 988100616 202900649 880792593 929021443 995372674 373306725 978767908 688058699 754979616 517299711 601725511 986223013 988560774 236106140 467620979 695123159 795977387 292086520 548593728 888795391 980231110 273013158 424421024 982829361 994568707 719696144 720502161 734206041 760027645 903830794 921255371 741829743 764030828 259175772 439320771 517658753 730363502 155547996 533401025 351957264 586442130 856384016 886582837 368328087 674798284 396559247 618841990 520476494 563040754 277866622 537827567 719548648 863528536 104848594 727132946 548654918 754848263 544471071 962441742 200499130 947994358 453957987 508912905 619066390 767297837 626627696 674407584 542262908 672507835 673560251 945608583 361751681 738256424 506850141 536900561 998525143 998628380 25137939 833049079 825095043 998789255 112019455 329632375 127487618 537154722 636335398 668292252 71166289 983485480 333735106 482042715 183109704 617532916 971664717 998124765 420701245 491346341 250013872 646004842 704503529 866999563 559673939 817650071 568099533 772763505 233428253 888373232 714916587 892490106 953841263 967673879 456143075 931093937 763019045 855095304 22648232 881892030 414416784 509129168 541803263 743577721 953137032 970271286 717893236 749864362 970614895 979852206 380949166 574864415 672715912 859299967 535370630 601427968 855548794 979908788 666770917 984877323 165621640 857147875 691402114 765786683 193803790 198140949 773556699 839350870 444259770 592037224 59914009 173307869 250323397 970736364 7848763 746817926 89776373 328648929 698031955 994437847 815358512 971236309 291232783 423673829 305669666 480816228 707481128 819340510 267037929 789031585 462157323 758399819 473241820 923003867 456355172 712391950 650741090 899516672 43551055 313443056 451607730 534457530 339144924 830496377 948658128 983802547 972089896 980779644 969203762 988760264 876112971 890075626 150238850 947415755 955779316 984394309 749877899 993490015 473378669 807759199 321208224 558307234 555139977 799723248 433266826 947942909 721795186 765854449 704535998 934141714 625321893 753105191 328092492 555265579 693158113 738052626 145172248 280451119 287047085 832424757 647563031 665579916 371138205 840038184 733302496 975323654 763888022 873540896 86973572 331804785 286813436 628114513 563635579 898442189 943228031 955004029 101613177 788962000 70613361 897753103 568228223 738575751 576708984 756106758 502795262 614568742 909618472 965110561 524068193 648278520 174831466 244482204 169281072 654813643 509923120 921939935 817683102 851366417 255000974 399476320 337632614 471486194 518488101 551268770 990958739 996030781 653417994 845064759 918432640 981587983 490853577 728881277 931307113 982691842 833974256 851602821 726068785 911923979 843786134 889897880 913201795 966633916 29600252 291908493 679971543 989942358 608134553 723943098 908242404 945467617 520495524 904342286 902653501 908954837 891263867 945146324 374321678 973522203 514242237 532663911 754314106 846731549 514754882 548485342 586393834 937573876 501444279 708674323 288533051 796502068 885819057 945911490 401634862 448927766 712093938 979451553 269560284 345963564 973677302 980594961 961527018 967916814 694704372 778586052 755876917 957805831 121724769 278317723 879750976 932689948 237168845 948397461 794345893 919605716 370292370 488732361 725109970 881070434 245885106 733887733 780334935 999994629 959879055 964126214 417135350 674925232 346580137 628881304 389916177 567825690 121508522 489513340 867121694 930913506 324622768 633606659 187876720 833166332 447961771 992962941 809815216 971678402 613073866 736437161 55204591 455998528 721563518 952212209 888935478 961976701 29711426 53549803 463528256 636611622 337465324 512535045 38458787 84363073 118376869 696532333 400671157 490849049 243577681 475735393 548719224 714980707 225350654 779194051 466193591 748120369 810123168 832882344 74161317 186418988 723610830 883506732 249056278 384123431 253261661 331141546 950856669 980264193 648588691 657849700 779168613 868765003 386972901 559428445 115476152 263270403 545535667 784135407 404067450 536373726 255765057 997142555 662620115 966568426 623526534 881186556 909787144 928262906 499431860 535255558 978864450 987064569 693006736 901585156 318745205 994065705 468698139 561360570 399117035 486965772 206405370 895239160 312723590 607730830 764986383 905358934 43257712 462769158 38661089 244025574 236773156 741889266 327191575 582255578 191864451 722841425 200098257 338403817 518132354 925342414 753527148 948685620 99693909 945202764 268900873 983535888 513968778 937911900 120324531 193714198 182104723 972729848 273161091 728339541 244234809 524743281 362722007 836938482 352196127 909986365 494525837 605131481 245876281 392588518 450914355 481894104 523983213 866362090 378127649 436701992 60096967 518671912 225564593 992986473 658534412 927720209 789940369 856578113 312936680 448319083 317561505 492204751 908718769 919013943 982544573 998251086 248495175 496318523 638184833 915478528 986033862 995607594 297906266 664590159 701990741 994338849 315636334 912863910 293813860 988489807 637715576 649417060 275100170 349067103 201666965 819290132 911169241 924967199 901643543 993899984 355170634 496067843 927220289 950973390 349236408 887758939 165446869 728625712 420472886 966940060 799513391 859694980 523172159 866966961 590467022 778079271 1994937 32564113 787288917 876786305 247670087 505926074 308239957 525806799 127363891 722422172 831611576 925675136 877904136 968358436 378391539 953413895 867157898 942108692 815303215 934130557 819187500 883902071 852164748 852897646 726005833 982239132 715269104 836786432 611870047 810740367 635163837 992412384 801686489 889623491 569094090 803644386 345517326 844117046 608096885 856079406 349978792 739247350 5213737 206844878 708049980 950429963 140377314 500845248 854620997 917672340 539041999 905610745 999215719 999889825 727364907 925169788 492107324 810175282 119989563 294907794 219367331 897640618 292270524 808581705 559433984 881444773 367434962 578798497 911900642 970426555 144645781 832144173 333841646 758734400 617291173 843895874 455954616 842921211 736782333 954038219 472682135 873190806 858469383 866298624 500495514 636378587 760506073 842002687 776921277 925195744 678587151 744561038 384541218 710771286 805594055 969304223 736180775 855064111 108628251 770108587 514544368 660976543 878079155 908090707 857810081 956573924 98676304 575440878 209233811 549359578 726884028 833969649 102853757 504248552 672575579 723148372 256971015 787443783 201271124 375430267 419635963 768079450 442225995 812206027 234926836 495738870 660270069 766020188 770625331 828665622 191060092 643748543 743282242 994015287 572733253 854756616 364193101 399766932 793323091 870907551 640408694 979978921 645297057 869055586 285300591 508496421 898083859 976232149 759060297 838024948 542285166 757279325 755575627 854182077 542852088 784166435 775687525 784889027 796738497 968751588 667981538 799018736 697361005 825964644 141592576 967835116 12975412 162266756 210017758 652625703 762670719 920620282 428683708 736089130 921853776 971690190 627928234 751595866 350686915 636376718 197737532 542161307 314258873 561032100 825901010 932697087 751940433 894140318 351023011 657768846 548901505 585645225 89426422 164889908 967998313 973545696 329778925 925066932 717174956 881205867 952148924 999699641 745725679 968343384 443621176 976776646 122778536 235240325 504445566 814403634 908175172 933425095 628934987 984886769 503418464 613229635 734339680 922585828 17257849 559007710 844238544 990364486 864004338 957904517 830442257 863329368 488525355 865613336 403127012 917197540 85201794 802615124 670825333 686817993 836500110 939005801 5200781 908973595 121173239 813728049 471512323 549547568 811548453 942314020 34427590 416535744 977908304 980833345 542039150 789324297 832988042 860119941 407450349 665360000 748623243 758631975 757366923 942487976 126241929 296595334 650844731 814087556 368062304 850389549 234605626 441141676 738502972 810793894 243471005 986473766 692434050 773296649 799610575 934102917 285898110 689726536 623227613 810022879 867895714 896714931 25598529 177803761 169903783 322909253 16193817 723927774 985468810 996888886 185251670 505850912 952535005 970858499 142937102 694365853 324748049 582530219 424330232 425472715 632873468 912313504 859104760 996700193 449154536 466871236 389213992 778349659 912953583 989245137 316567523 445243140 826581867 885628639 556459554 783232691 79338346 254908730 560196842 942960074 395566015 999195406 155578730 885738456 551482151 776560167 594734282 854332435 443705322 953392951 780140809 890385967 288445787 732404723 230811642 682083555 44879262 596070044 276370391 806783113 486452717 718745894 501733038 597844300 187680032 686568855 692690337 704821762 668963734 673536938 716380301 844318547 995917957 997717571 615044458 732609049 329913584 775590235 306490527 623933645 839875934 991169003 31340890 868273546 855054962 989062203 145294575 205860139 20584801 498354660 637701048 756824070 121020199 866493050 777651126 932111312 393010758 461712581 251369396 776447161 29383435 611438040 649486949 696502315 335736088 739349235 326449959 778808084 206288829 637397747 34734008 294518034 348285438 350222723 827354446 938997173 336294825 557171054 664079867 760177734 46309436 783280124 863464166 913981428 16862355 830004974 403071773 614018878 688042 38914550 891334496 899190190 676829904 832766071 538222588 655115433 208741287 294439588 977549757 978291753 409530244 829484598 11029269 940714224 38622226 478996455 421115426 487126166 34789076 441911737 691780185 742277211 573265477 743927419 742162989 749330325 409846965 703550627 126719828 831923326 760872130 802866285 533581009 542047236 793175189 995610715 776974324 840163896 877691583 999408271 50122666 937229264 470682755 660208115 433153115 627257198 836770176 906263730 153767983 418771394 981533679 989030901 113849861 315258289 677214977 955808459 289290770 935040312 309329841 342343901 455702095 842992346 680609073 904984387 218073475 340026605 326173692 578850750 585957604 704194894 98246787 382290974 838367716 928355997 241443800 796945719 373679654 809795218 870272972 970545354 85331096 240567211 804467998 933195371 25296966 159661042 135086395 309571191 199872807 567024496 581639032 652233601 483511686 965527413 446855819 859917814 38906985 645628249 446579753 593134753 377178461 496283395 697849071 851788048 487433022 658661132 938052885 991043171 102813087 515710264 292825641 797408086 500758688 687008737 677433803 810964457 201134329 591709831 218037470 390261745 630553342 672496287 952844165 954575688 750997343 917553983 247128886 887627050 292977549 798457430 562960403 826972804 212641509 468916164 593936467 742803501 845063340 859415678 31445170 980264584 768275311 885346119 159187523 492252736 494812346 949281240 793907279 795353657 327699510 985171315 996170673 999625075 224351834 911874575 331510683 419418935 659525298 712893864 861386402 978128352 463935441 476126961 84465179 130303745 343491623 834015706 101677955 260377204 86762446 875786399 431527629 650215688 317868254 517948999 733231413 949269335 426578216 903846385 329223347 582526277 921266056 954657879 403288813 695666681 959591656 978736333 936197109 968726769 757004427 922069850 185978715 489549971 507235722 706706117 840696430 892200863 835014026 903016303 487155502 830122567 121370409 936203030 488675886 679136751 671763631 919953784 672296605 965894559 734838864 817408626 973271110 978237734 826252816 894981355 976709450 990157857 112687180 924295554 401066536 420903887 77429833 211675580 905217631 946619462 817938941 934499216 32386439 114871735 330280806 762583764 266051111 424590130 859757741 972802173 67353158 155651341 209198280 933283349 252817239 806562597 490024527 938542364 233782415 632552518 839813264 945726522 359631213 719717523 25691386 285080168 775718835 813957351 78657430 681503318 973226610 977827002 411791010 664193292 369289537 971695586 653280952 879678679 149025474 530986937 481157124 855850131 714153901 833923903 583612822 645231760 603128197 754668066 479780471 577603957 222722625 508592018 245261301 970900267 929038743 986622371 52841272 616716667 945633700 947974307 232147275 386015010 32920175 738573606 252433791 596605491 959413258 972125372 845894557 894599877 549023532 960718461 339437965 975299260 235261936 551213437 136529470 812534817 923844751 992552597 630104194 987114157 207442362 330901741 843991626 936715374 19468998 334030796 275974178 360879615 778284355 850444837 178833058 538545509 427539435 961889731 183738822 415562231 771317504 977483372 706739018 726673826 936634964 976722868 280586035 721191362 802943811 859017238 360206203 870940736 809120855 844693200 246745266 484108483 678505609 786701654 126615417 254550746 799322614 996897958 750724059 949120764 186943868 552062663 524220538 711010393 498355778 590558285 225814695 820274306 970572066 974901710 252905997 255682334 768752520 803377966 61248387 308860212 529409624 727584115 780028506 800928567 500200006 807815680 53824413 462906338 458625388 581906995 552356424 865945595 916224059 969724150 358047728 490405764 279035509 764848627 724499536 900788822 953671382 965891250 596669463 999839738 230331620 615049936 689580554 718519784 151781819 932207339 655001598 750724231 426389267 724225258 332818431 812516379 879488299 916521460 705292201 792808932 393689635 474517595 149415374 798005764 843459778 856200716 284064613 457911265 290290464 984700456 824676665 837595592 687610357 692788213 465972660 576701435 205655786 776829576 2367220 764496964 270066867 433506542 467057532 847498078 584954345 586360045 789443809 875315732 345125127 541536761 867433918 941272520 909364747 939344928 235684624 655165896 689400124 996019077 228306185 419266617 988161075 991989977 998419133 999454700 921173993 990579704 785356194 818892019 511318605 661242828 465913440 705685585 665362184 893083631 13332998 593542866 748191271 979798294 640917321 821306931 927968865 963442048 702110196 984744639 615910708 681010905 750518006 780955553 816971787 882725415 123966285 503134133 719061182 827797728 143290402 624306764 583896721 722759218 552384841 956099682 791309864 843763456 207775227 366081200 533858790 669316872 77835986 664101565 275152342 824613693 687291794 868304384 773413907 812500409 514569713 859736744 314705286 608721288 936139863 972850446 106219566 152184452 941024130 989995936 369557875 931017997 939783710 963783550 630798072 633944216 470711985 637398241 983025021 996923676 609665685 769585363 320446751 733136243 240129451 952832062 23754740 911888575 123149410 882711011 998694065 999302109 572243617 665739506 161212528 759626134 925748650 955990586 678457865 906615523 578271115 648438944 417705553 611275764 296449306 479192352 799239904 965305955 56645925 180585314 536798029 895697801 280075779 686362824 898759660 912140083 812125898 812311531 379541882 948429775 585579437 851782406 429694713 779003724 567444835 958605025 326617876 807927949 509628191 732852554 441425705 784306977 155408221 161138030 739138871 850311734 503232930 560725533 738914829 801133540 972996151 996243821 739412564 839955393 724636631 782413320 916286702 987906243 555699023 759179098 771280196 786179120 968725264 983866414 506664981 654608936 967290060 982986385 934029490 963188279 4785340 460150003 18031740 86998743 428643016 688507188 509350485 806147876 447097717 740026918 583795178 786304711 658615500 985070515 513009825 565133487 719660566 966526873 220586350 997847584 178129905 198651385 510537623 581377822 74821712 290685222 474239393 904905984 742464703 944359831 428665776 672786909 315318730 620188911 3963170 295434985 454825887 611362307 416253157 654823800 220149735 930990842 162417566 496244041 771653442 776056557 659875629 866102240 20153594 439970938 693962499 842339281 123048691 758653876 49185416 958440217 767265301 969585815 818761995 941969850 656243365 741698918 324277615 423774674 319901001 909425317 61990963 532825717 96590432 489036442 806301248 999568511 744669809 802442635 841607577 880746304 367478623 548434073 217639565 419344225 677428476 732922010 115921912 791733144 944427329 994266899 534955519 741258984 155353948 623585743 52787303 255485875 644824344 680657148 209684251 697936525 25009723 191551214 419625423 532975143 538516087 574918659 5918585 128725775 922390989 935457316 516406786 843004263 664489568 798626307 312467314 911175983 257152557 780702839 673251484 959777258 529717005 724307627 928083790 980130095 822379531 862193231 770096329 937111306 648024588 886311387 870620666 954071905 319000724 526254967 902989663 938443072 934490781 956573078 815515511 836871017 744698241 824475351 326964575 574265017 508270505 957028513 989762654 995382590 234127933 574543586 973628684 993262961 834838643 988966618 713612172 963000064 397103671 947645211 592866624 600222287 654931297 831492156 462844482 485534711 945574530 989519182 817436145 985323542 50504074 362707723 68861641 931166602 539237502 729892242 692341870 856005688 715097891 830611783 108450466 138864050 39695350 571606718 411589431 431832160 92825213 708425081 632350741 849324567 48181287 133192014 601789725 884941928 31577240 915005340 850813044 890531471 968554196 972097822 145814378 284760394 706065532 896142971 673482082 856075083 582706235 831228143 629831960 819483303 660376251 895117124 152085537 733412468 801530139 938066039 667451737 848597005 996045719 999918129 19895870 767559403 202401521 377402517 369305919 535661621 884589521 929813642 148740029 754713068 982083915 998224977 800846629 996355823 279241634 713572994 388595416 869968433 766224118 895060467 398530704 847054628 863092700 908405666 250652349 885601596 965898370 984855220 769209604 841225074 28026130 530435254 782798873 975681580 276280520 840573771 678810575 721876295 226687332 412722515 451332648 952758920 277336780 313554532 247999923 797364596 845174190 902268811 326866284 461905216 100389442 719586670 933782510 965002154 848796006 914432142 374589470 834840619 947740474 958997659 5549823 275265677 194336398 807648590 573596512 593847142 415470761 595041364 866361438 876597743 184162687 903380492 421555644 938599499 16586622 171542835 973410611 989063737 356136119 864801736 460917979 988471587 44895456 285969136 659793891 772882131 580147276 830540980 424332604 927252012 721935341 931915801 95420651 964684513 771000127 845677181 507632080 694626084 773854333 805214990 815506966 835621660 447733133 702844573 577203859 847070496 373380652 916039072 512778335 517873423 451592457 479753971 667261720 997172476 797175516 988415598 269620468 271128502 844399732 910720186 547088844 659786387 204898614 933526266 188216289 341131695 638192733 892820210 931765071 990222596 451789210 486047717 515681474 793299402 401677092 853461696 865937021 944140133 791983256 944015634 286645248 601722351 397700159 829940517 11229636 167756550 388615127 899541046 258281884 896510982 849804336 947419885 142795990 589549753 796378116 892387670 212191740 701606161 896546063 900609545 955024114 985165775 727422297 906579931 455261534 793703422 525202640 778557899 896026001 904365062 715548803 986813559 76120822 881386872 591914586 606784421 550247686 885379951 172536010 441875130 452181969 964537846 299961182 329415864 691771698 740120965 994394953 997600555 462508067 902513037 680093589 682182977 227830762 972190552 564440245 587821007 726959970 792544238 257451976 650745246 506706408 809568066 208142370 382077037 522432918 930021409 905572737 974674809 272644657 852676329 683085386 922431387 246941970 370196026 469064120 854547336 510166092 984533670 253232791 671853273 644625907 916355352 757988928 766187456 838779639 996662812 396885153 941273580 770706285 938948769 150019353 362157499 530767383 767106442 493758128 772804979 35926543 400088972 196223899 935849439 791286888 935034538 725171734 882492308 371210490 896835324 341380557 649927220 986827114 999924010 629181402 663781780 65557337 630625368 875507888 903684314 927325776 963046773 443900589 537950566 110961872 618025517 507308468 936981886 105394627 167827828 640479558 850748348 330484217 979033242 609730025 805528981 476127318 630615653 84821925 143081792 390341860 824352643 978584068 983732590 996707399 999566273 159742310 242450902 284454871 725730791 779941710 830711839 861511598 876716032 490190871 719253149 994959568 995516084 689703021 847304722 691792956 727545877 440647573 701352585 321062519 704094660 736206964 942683382 280516590 677700630 705251376 971568658 21671819 424571209 387879984 395422692 501353642 741106990 325394953 878966654 328914376 571136770 913971501 923770763 260848345 645388322 2390050 157422047 275349586 667792110 635583135 962609236 941488771 985953993 35915403 466872673 404837447 611284585 213738093 755594474 959575643 974403880 948646840 949168445 405285155 743218827 626700354 718918007 404620680 789604073 439154759 723814225 52754665 649318293 774158693 985826080 135046653 856392873 165156682 535403630 767066911 891994967 84586076 786195703 541560081 608900906 685051788 816825485 969580277 986432974 855804442 936879473 924691773 979212189 817210107 869876529 91696165 914546108 470933511 988164348 435403506 676906469 135284017 365289809 542074718 818083614 630761219 975283530 593520044 769266775 993127629 999023930 951977255 993137742 828315173 951491231 916709198 921851942 696927343 745810182 474306415 803014941 893997164 905051269 482113041 500193541 297468263 549338283 771378998 935578918 699260513 717551687 163973257 634244919 751780161 917498576 828371047 849434358 585091079 976961587 166197822 575437688 192549112 572809210 536933476 805498728 420689516 896688464 838717297 893365911 98311613 832311198 680554475 922089418 162148656 266353507 632386919 825227352 67253507 403071613 518346210 655431603 65567560 665254467 217912752 535917612 701819552 746132659 200240183 531443953 748547447 898813274 292874829 763113591 907187777 916571377 414175375 878384802 965635237 995221242 675674339 935853871 697609245 760946492 270027975 329836218 863639709 879661724 464557920 857496538 715177973 854863197 268479060 370949204 878241460 984856663 960505616 972320502 606092326 947026195 537071645 894050301 731622309 836443087 654204538 795918555 190524363 631081743 660206134 778560358 738543509 849328933 666217131 725849465 604822446 737960690 721766694 814107775 339394024 955115075 954243496 981506169 670125490 984709978 567724958 707463432 276574963 724243988 987249367 988394672 493865723 615206879 253282243 679020870 250580493 958782534 919657619 919850087 635284522 913880199 324876469 904449508 218073714 588993745 482340923 610486551 306634647 366009894 374776828 899759110 107937669 463902982 175641864 900457363 497257691 655451524 363884046 634789481 904344078 932649482 215099061 870468033 963105751 984361823 823188876 988464206 674138962 772669368 546373508 974139531 840746488 959958371 377563859 770740811 44782122 521297106 545290408 708057217 695758672 972504573 138688870 417731637 308639162 755754170 618157256 762409285 80325631 852725065 181387414 886034521 946810784 956177045 459910445 967057769 184503364 295755588 889011577 907254017 429218254 829694150 824110996 960001711 50026638 114556588 786649384 813017657 200007092 557197617 246867993 494614206 93807765 725227518 120911643 506628283 180825566 269510184 111460433 634982643 983959046 988643825 933125798 966017654 109555137 579483447 257157647 299007030 75168407 984571756 58112826 406158053 641423846 971693733 273955179 938613484 209483320 498257650 893333698 918660820 466563549 832347976 361884883 981518365 342283934 387402474 693081399 757034900 204864372 685809498 736696863 953558329 817879026 888016421 472164374 709519199 393150873 824578056 571576971 831560739 863437568 896084932 210934867 313182665 504078488 830074822 322513154 414194095 141019280 141568590 718801209 904248519 445233447 697590602 338757393 561447097 343094066 503780307 69338426 781877578 124506033 971222663 923674843 964938209 887297489 909072240 179807154 971463862 706294806 855380509 114159016 275813524 413351387 740455826 793872487 945107500 823585452 963787839 170674437 817093719 88896505 984809586 412656870 679768821 901992725 919311755 954097054 981309263 785116505 983910352 399999106 838643835 992066244 994561947 312187469 616051224 624649874 625945015 248023504 773432319 365579279 374261086 331214566 621958892 318077316 614684503 86859109 418731041 699445338 859365798 380159024 382526403 864514562 913797354 25648090 655443618 597551405 726907711 72092501 149728327 471614051 739272416 309710 302184759 896255988 974242618 67974836 227548247 82371017 139238507 517790217 675218096 285612954 347427581 327039400 402837255 885379342 970596044 522419586 816888809 715907485 932873190 558842166 834810492 855682028 936681077 856680758 962040120 302502041 987140533 64203181 577770405 364614744 822566359 151147462 663253871 928785566 994155042 414734630 840501867 350009304 844969011 34379175 182210064 257987311 576999100 721812558 979623925 213253369 594666312 838393605 907878526 585838871 702842647 359196397 477489269 888152838 896094239 46903071 114348697 863394833 958928644 651926489 677524560 143368023 929268637 726711144 819677574 465613944 701633750 280900189 367325326 911770429 923763321 899162945 927805613 672437245 871978193 217711320 500862050 812614988 953108555 133986759 373767459 90194029 161213548 607336706 944941171 79994628 905493236 673095711 878074720 159437501 961128670 897319621 987609016 379527963 504151368 40427082 533841014 229026392 336730684 483146729 841907778 822609846 990593354 610252299 642734642 330019965 476574907 893758796 988207612 439631728 901464019 605882999 641662944 259669423 812175816 164513931 257511612 129025633 937108208 575748353 909675913 444831174 736904397 164635181 312772901 422913653 836710212 305969874 621110449 461826868 735662820 556083626 652920095 291933109 318209643 373303892 914122152 12827680 156691764 314872239 696602549 61759714 472835011 548441957 695238584 260799941 341604933 96902329 97876809 74505378 589809241 370978287 700289466 179003488 329017699 390092041 864470878 557232326 835147881 411271371 726615237 750105052 854237380 389838064 809896872 169170120 995499608 610494613 958724344 572405100 664078447 866003697 874050109 829678163 933817644 156561580 329963111 91727240 863921051 18836982 685491854 932206702 959810373 201317506 753003918 280373681 614415824 831707263 950102099 310632930 636306164 390545625 685121191 491258793 918725613 220132508 379528315 100968260 843661627 381853873 982817613 513910550 952136243 209495164 394663980 402640362 433614476 498105500 982538803 633441580 973779427 455304179 857130734 991013003 993470093 768802459 803277705 88332350 870345766 842580766 935280670 833256841 992320550 602090477 790532098 684299091 846146641 765472436 968714505 656498906 764310009 822143822 972447256 43170988 896620521 817642062 910657810 122268116 656078776 144512272 721176452 22571213 534775361 573230569 758861245 307495997 310024787 760484044 880052612 535915218 838957801 63347848 785796420 694181776 991149323 190305140 204754344 150257380 425875195 616473149 885452722 367166280 697120389 496674304 870739085 267719114 956993373 342766842 925586037 369439872 928980737 780835410 975121317 382965435 427239656 269219198 275326555 845037038 892591462 717956172 850848757 385808596 765805798 204029427 767325501 470711894 911871119 834274183 847892340 273725286 617557700 620242445 785452494 644849082 995214556 53110347 710659873 530239044 956356388 896700312 919512437 844012970 963165285 71847539 994208577 608622818 928182383 601133473 804765842 404110838 453676525 402874795 534621636 525121085 634424494 553361451 655929102 728236403 781796324 732390619 846135599 353470141 689611167 960082452 979818856 80221526 834878928 360722430 662379893 775217639 984541649 895529190 970796162 660923933 783557162 464572473 808285623 202930183 739080796 67204515 855764389 748034203 843556259 699399138 749794151 113326107 476780807 503660279 751795857 133721583 626059512 916324879 995300559 759471466 960973423 668318090 902297143 989430179 990709837 39786268 219890036 593162917 864564161 731749328 943883765 254667324 292838823 399052432 902428128 753194680 888555214 425014422 597042576 325623949 402815432 210416646 506931635 968599235 979675020 383752137 763044841 172932709 861996205 407833467 915779088 185657099 253019350 453657745 646576730 537882727 956905446 78795839 96750349 484394519 841277505 450930733 860475024 405675625 855723423 526171121 938600494 817906317 972115288 679711248 860978000 408963323 584235621 566026043 767124787 390890088 990959813 382026551 549491569 277360071 351273038 679479153 789083310 867395116 885155371 839604553 889042582 84146190 358144788 206052112 451184087 737436099 774948748 456952757 661862699 304819060 466936334 710511778 961903171 766546551 951988247 10914667 436107296 404177413 611571050 92731510 608697716 413581907 633192960 411070093 726514188 762397029 878925317 275348552 993616172 867270344 930961538 807817970 918862120 577519459 764615027 187919186 394203980 792193382 810878487 13342876 372466481 130153385 291881064 304596969 984407526 407215068 745626521 156954039 793298186 363978284 420608830 276194197 729392458 713679363 916033135 938479239 995557264 436625390 974645819 682556649 983713665 779897401 858355821 678685721 816588677 811365525 869195975 28057023 304415783 798884949 948606425 916009615 971470996 343359766 438778965 907540123 964591320 922783269 970468626 609089944 953659658 377059650 613367644 289606919 622213125 736091616 869319572 556135784 730830231 846991510 920106609 766747761 952317405 153205892 507324415 987913853 988556663 167439023 778086219 999980984 999982516 509696584 787001776 151804132 631765762 840711066 977652380 379467972 518055332 396356120 688510492 912210920 985199115 396641930 647837426 108824842 451410240 904213834 943837992 489653196 798290590 585468517 970054374 180173868 899192754 470520387 897198360 162549290 511148451 233522568 382439826 281461056 966422942 724251255 853807412 806408722 819685061 759783562 817635950 291695989 724726400 11748152 892031593 747063780 790964265 963670020 995870316 708107158 862512039 686669237 754371387 9943307 700196594 431752977 946795291 487253845 852301565 809220064 977118363 352108685 867388215 765981851 963143637 535317759 567304741 733291588 844873149 340678578 491907935 957695449 993414478 968647842 977268529 804856646 933429730 162555009 250295451 349319285 431820859 304216059 777134389 921698008 997783635 541568339 938655414 117831325 384395464 351872957 683194914 997330101 998140798 136984333 793159970 420346030 939514570 703747127 786021925 195776744 475052777 702310406 814276898 655554697 698588495 179679847 891398940 713606988 966515214 356791375 546801385 224948549 864908498 184823765 840382446 625313209 894412857 536174001 778589695 377526864 926127269 661210139 874546922 186154297 233028423 299519015 517448397 791207467 800993544 277301739 482250141 716520626 775516871 246789035 390979340 344941812 884677643 737492146 773356894 476736766 699674621 306627326 612643834 637123996 802012270 439435466 842084445 369012138 606044692 605950277 709519661 57784401 640236160 490112699 727786997 420652542 905691067 372045591 596900782 35256335 625927067 114966736 251219356 716049917 999963338 377531515 415499483 472159827 748560274 908152949 971519463 944081511 946152273 887901904 996519396 937700717 979251332 902980423 928916721 711067353 829138397 524785917 938852330 712507102 731866689 479753932 665376856 864275359 919522403 849455832 974793802 236776249 883634580 455331637 778485399 996217393 998455074 556279625 846076191 643665750 657470210 360436789 678424267 73945806 830779597 317029795 769138400 577629624 946536869 818956233 949816191 942098310 948878315 98283485 743812493 802583720 964828852 130732328 940408058 777696941 957739260 759903878 825848598 821314335 856292473 577198883 742340120 588273952 968719723 269421733 323117012 239893570 901976801 346748809 939976818 142277414 454235855 625461045 856456614 406574484 860996205 63047916 514310879 214275951 580238936 59337553 190321270 628962651 868937918 340259525 912890491 562216701 563805061 179099380 300913837 642125890 654742257 361120266 663979622 488490282 776035901 715619671 925267439 632834409 866073893 251531411 339826941 531156993 898451621 99307913 217961048 997466071 999738133 768023080 980837978 911771994 941021954 647283732 809921199 167415871 618894772 252878543 675627097 959337554 967742512 689312454 815491813 408895818 786181464 832322090 930080328 261662511 824745814 652846518 933009269 755680664 820707255 179243787 302282238 431507114 839058187 21102860 807099444 215246564 414890305 416425229 733635454 330612563 374185905 649168541 989641346 524671811 843719355 137788442 949341131 568284728 615485920 319523761 481121088 358124417 816628860 585202737 649696674 581739329 619138402 565066021 596884632 69420836 691214610 328152997 992525009 30083249 630466907 977548149 984828462 466587957 619701755 785788284 906389808 158175482 380977647 932095714 998660913 38096293 523809217 855918098 987623251 665210489 704350671 210296268 583977290 606951994 878718430 762837083 919760424 868973723 943410978 975326069 981620169 520846810 835457538 600689395 652213680 533964890 768482834 324787449 831464668 180611485 226277189 816782651 979986634 870919189 929039150 154881543 774810636 801051419 972141463 729719728 796194639 690381991 801083051 139659533 537393175 110453312 853137543 858362362 979046774 950878232 994553295 541960345 571205247 915657173 960023145 605771846 729071100 63657343 776136551 110756986 725214045 237460877 405812973 794421405 958254915 199301838 648681457 45258112 52042682 744916210 754660998 930427112 942776272 75050208 581081450 512555962 927990685 289954489 907641493 597861691 989607775 38106910 69904689 710133388 876540991 562660523 889031787 325067790 642134359 726145520 729413305 164768695 680890477 335531753 941557157 128305902 731125685 553791748 864951993 183388808 759054795 204160273 284348917 44148588 909242731 354492827 951123201 613114638 894735334 530967685 878666189 708887574 940231394 915358793 981359506 538652350 812745164 255363423 792057725 20719810 873636890 476109453 975200128 351328163 966178889 884722324 975360409 352046476 555993203 753500505 996175927 108020358 502160714 115043810 491222047 510509277 935581205 895417515 953432461 967242347 984620517 986145825 997461087 16915423 731998751 419439754 850014830 892348965 994405914 744275169 803048860 151428415 799562273 192241646 576957414 275311902 587169916 14847835 556517803 33260194 369374079 970821260 986294204 9133009 769428500 507220857 618778646 543960245 556254386 666634380 686021536 559919975 952790340 409918643 441189557 471879169 484299564 268132314 496097183 237612487 626119387 118655343 508840119 415358187 546765285 25399119 751391531 242789943 743510864 326437154 400089804 886904973 986827810 222249529 538623533 494245045 616986511 72671711 533652170 603920483 732733308 6434962 466255919 826218968 901542983 752483240 772546841 731484299 761749413 108822183 870276512 910223954 963134007 650449654 998275154 509907200 614655866 317895143 895872520 853075174 965202549 649893357 716193423 373389714 848977273 326777760 775756141 891456471 938626817 601087445 797333393 915204944 961157762 146777228 327841950 203141159 346375814 19057145 719289935 996837009 998372641 580251204 686044192 446388485 705587851 803966230 842711147 705408332 993868726 514057201 605491673 120657661 935864400 431873497 995598900 357312777 899628553 490902739 723291531 217103128 635286100 392376038 716800065 944309054 976083415 961645686 985495403 233757940 258904310 569280778 793311996 878756588 988367971 680469896 712640991 558610899 998067901 29719137 344477136 370635696 920749511 259011298 998927040 900224837 951104653 256662857 837696801 380780122 449507226 164515569 883255552 197905010 235816196 346248336 955407999 399850508 887143773 368504312 492684897 729741208 793708919 781253620 907803723 220553602 551042981 597431296 931239969 490983816 690763378 417948434 770742386 759690117 766182148 483581017 608388332 998122068 999634257 203790379 876571139 943836814 997490388 292410715 607268264 174558695 802098858 782522866 915934926 709998785 741457685 934384766 980908225 525258205 701035702 509337308 878421675 737180435 822013690 914960818 960705121 510249529 832709432 266245365 428063428 893944092 993828723 263268542 601980194 465660785 777419921 338103047 932094850 15590771 815805642 609322344 679599625 372547572 377750444 706879111 880697287 772612397 795596855 668391853 768024943 763904048 887451123 366619992 742841255 662197781 768967821 448378725 475742953 488606734 674107251 240496993 462213495 33013305 590618905 30906481 493651573 52981187 562641304 777508239 798031131 566362404 902929755 946120417 979091913 431227019 866850905 472402323 681088319 448395388 538385606 311685523 691151935 956210449 984293158 291076612 769621161 148364723 728376254 88284068 112549342 793449254 861106468 327578624 983246916 355295610 787837269 224090889 465979861 31854344 240451130 187171655 496704476 387785727 410888327 165287235 579000325 984424666 986914274 846249558 931556549 560573831 964842674 307748354 700746368 74174143 478129316 563982369 995868094 307146310 856343519 50864116 296680413 118476588 923710817 477489807 734249370 547245106 742430119 974551679 990782066 61727973 722617724 242106217 405910597 320732065 983856181 151879293 455803520 894227749 923983390 340907250 545822374 87306718 155004304 605385263 667919819 846102253 961739667 817734419 931722635 474002157 715341718 458610669 948410258 891903707 895672202 942297418 978445288 520627935 686998491 697074028 850630080 894009674 898477903 382537531 605170604 801834340 864283942 83006574 483647048 741825591 810339057 919139124 941815758 301890358 517147363 864780710 943028575 297350845 403764234 442319911 733423946 224811775 355254701 671399310 728629736 978324013 989350243 462048242 952313516 146579808 743327201 867303285 955683782 525907936 789207314 826294968 970725685 429749486 956248446 508732931 711282203 43726581 385033585 50229365 844803599 29661511 59358228 768785216 939702032 62579967 736240278 821380661 856470787 443154888 589571074 413604674 613949708 215446079 339199006 651791649 953977217 621649099 887907886 222026858 414661764 854854346 977287924 113439605 120289849 954672431 998399357 222111581 315399267 992488288 997284647 712403124 845996347 156231271 375744682 421390688 697904777 434291287 799251406 664724566 750423616 972689528 997695594 592957253 753995199 953745613 990637514 403962277 732958134 139752152 179732760 428740764 488721515 351945294 711941570 108017835 842765327 960823900 968525841 408108487 873509887 871604901 991218279 24750590 662070003 374218060 962314405 966354137 989751649 801650176 813544003 864192010 895470350 408715657 633066725 619440638 733615166 636497776 654474144 373458216 989655539 904824461 961635074 570995611 621835597 552724314 976859615 16633157 252139544 265967663 825084931 44644483 550589112 865588751 928352237 950598486 984341575 61883975 597411205 680269199 936256007 500575871 786729242 248726381 935336946 566353716 617278137 599523657 837455657 232201040 991750503 185522719 944822119 572912444 925640761 302652297 337572486 481940424 945489069 95140928 133544472 279468214 629643607 603571107 998886330 226414731 636527453 155719517 831247093 964448912 991749994 565348041 844529047 666661334 919906617 223345138 449429137 809991158 849795243 169808405 396664986 955637498 976741462 312871803 928167884 130130822 145467881 721809279 849285850 379394743 684396969 946612775 959616319 980166741 989102620 49736107 356450167 707592779 746408459 903526878 930534235 29892386 57676375 108980347 904471511 230440959 548444990 610851225 745281663 795561160 929978174 552344950 863486153 140781338 478731667 837448785 996337907 495926124 756140465 742086014 757236370 911370250 923612799 790939332 984161279 454535779 658614849 691849102 757112255 805988543 997604323 650223134 912020965 53402875 340080848 213525916 645340771 121742729 925400015 521431361 656578967 159151403 526641855 729064605 857077170 153972713 862900892 58575716 88270246 693692589 968610477 874266753 974666000 478842780 757301017 245896992 764484966 44230098 793202063 103091226 491310329 949457104 997509214 372379786 402649889 961101126 975192344 256173972 637518124 633331397 972847961 854707667 891495353 996991618 999259797 717123133 928027444 468252990 757300816 11549037 928270099 507533934 826713868 622174241 652026454 545304710 852829624 710112894 903072242 605790037 947439939 357344945 371345280 487313571 889589648 939600520 972097103 583931575 781150355 202755855 603983304 501216859 526999956 266265580 317789968 681702099 851012000 600841520 931842415 662134716 929721931 123926859 780110033 663055075 700330377 954746592 964129264 504301440 646124258 450072591 780505290 891917754 955570849 240052305 651693646 577253070 721060699 202351758 998933790 573324687 841878492 659655271 783139595 668166915 791621214 155669935 880912784 144355013 258116504 74533992 805106444 402437687 455644220 592414815 625054639 688034947 997057364 809019254 946159656 111483002 731621025 686472616 984939079 969470750 974154983 679876958 765936538 804612214 882290112 739501196 749912146 701463773 826521576 868362346 920146168 511154027 660117675 124672237 209491780 997147853 999169315 69851341 883193348 7543898 88563062 777303006 897947772 98889502 864578479 873657185 988301823 219846599 891301411 224439479 650338368 202086936 338752991 818511114 952860538 631060425 636879038 159883507 844680216 178017799 825952443 662499549 750031182 73041038 606087590 684129777 760635664 663171263 794144718 426180943 446391355 21008648 149059671 456624246 835163698 656638137 711249169 916989103 939026675 687978122 749431928 442997153 769333572 583389715 654954658 193818345 211661203 844636702 934633748 662324496 761132876 34232766 485514693 257718422 686747012 227720361 318340192 283527500 806210475 623791156 881455316 826026959 894407898 812774058 877153926 839223754 845075446 506336950 778364202 708201659 833362111 131020905 910925202 146575194 899827574 298766767 806901760 852979991 968130514 672345409 978369232 628977027 776250528 607833783 968318010 728411165 879755632 519571594 744448317 333756587 358119420 7904827 597155923 226342447 565276856 857453830 914179003 618878696 651493157 844320353 993967744 317149914 490635409 613802072 925290884 762996810 861800379 450364060 897559276 765731912 872247821 781936689 987260784 314105758 370254006 607502843 630796077 534488447 819249052 587553224 834598895 841619862 842046717 830887201 867768906 378984146 858740473 244248307 705453249 929193796 980391096 793664798 932892190 229983066 634102221 48885529 407469691 470292720 494196956 811221875 975637833 957628565 986998757 651214602 733706699 690058927 698661973 455860653 803667038 510649153 593624823 630663806 768094756 563043359 912952995 974386077 975557918 634890053 650979057 57530783 353133915 285148409 880107747 700472365 713253712 853955919 922649591 680877002 938047640 221336007 857295788 863612861 927671616 936462677 998252299 697387917 850832237 833245742 976591780 639989221 655698424 342532631 848305559 132617320 295366939 53287573 741665403 855695491 880955349 656461495 659454064 560836513 882625839 176530597 331992759 555320533 929007039 598305678 808578998 280190136 696686876 540568374 584483416 232300992 484767826 771177561 896838395 703144688 965725949 323850733 496994507 137800862 434383660 510924864 989445185 59278946 375306018 41014261 225023803 269716162 383344979 211215619 409314947 808031761 925530536 451866485 655903639 856601160 958205877 64238954 292429209 360503946 601697314 446054647 931652781 648788079 735777902 231158831 795921734 664157298 859364806 249708670 522368595 411342913 907216638 999288139 999417781 357890374 403777355 173571520 462695429 945955252 965794097 893806492 899094281 482904344 969125579 857210241 923075283 68920849 526421986 476470812 769305216 988453699 997541728 711207699 972607482 173805061 956048489 128095388 694642945 472725287 537266718 849530641 923364283 84992223 974925113 10410101 460182125 576300954 772199539 752969881 829513963 892849076 915957223 536943915 781975844 691069310 713669865 504223060 873891585 548754343 823942897 343154650 829771352 428843992 805816091 774552267 911935990 791151378 864472655 664628855 930049561 18457116 794918198 962735531 973080840 901794806 959566952 588791971 755778266 405311346 485174822 754867096 892510279 731181898 951131197 85067037 563303467 253447748 291566522 913402766 997518499 42502658 69256285 632525098 750231024 170577196 770951425 490775661 524022533 450712424 761969502 52284073 439516254 751325095 904769537 930048805 935281504 806141650 996394806 785717558 877175167 644304786 833015987 724376461 825941234 423580760 916776645 16541349 182346510 547911144 995216007 953112751 964154183 862554606 954900680 68298786 300342510 400454667 451593187 337391465 856275780 571664070 785963760 271817419 497479662 714485483 759459776 278800634 820743956 968273329 974166841 930739185 931839472 872827554 877194354 987540089 999671808 721108365 797186406 886337947 903661847 984182230 996055896 206364796 553765755 661001278 720573598 275619186 919902648 240405318 547522356 90471040 218869225 886681824 917811643 427218486 881527814 870778902 951863368 402219244 832760261 226712509 605808943 591074801 890702684 750632154 822790085 380948846 838429100 139797830 398203970 712087411 720559178 163683077 833327848 335912334 828819462 718020401 905923281 768234296 805349709 730135952 916906131 215851556 589289367 386421006 409760145 766151533 861202732 863613219 980515835 926567132 964707776 743474276 758669880 211880269 596097101 559716314 857153206 457342161 632786924 738177168 840586623 949554833 980404981 925244448 979603393 70726313 474197713 721134107 950583910 211942172 700355128 415012172 499331741 983820142 994358793 73752656 260980977 668647014 771346374 764000259 891626211 338114742 339272192 899129984 920633138 893639923 953789537 955441614 968122824 481247393 550240244 825725983 849384106 339109210 538997700 932721402 936390720 257104406 606883149 129380455 837459880 185253680 220312417 413846170 934763677 680379461 956324077 27907988 801891264 788829242 898617517 713699943 754037596 252394095 683806010 908369523 954883562 268690904 309447741 625483480 720658805 780451150 982974311 417300629 982380863 695679765 972861751 526982454 922885905 21543081 148655087 243983995 595854080 431864584 843262521 361303212 486817310 277797655 288076918 982183702 984935372 416279779 805148194 485604877 792977622 650457636 669782762 508581095 847520331 404174646 741980473 666585773 879459371 424564334 528532958 295037949 358164068 881336051 980883253 515294605 632316040 212399927 579158507 115802466 207524815 675890723 778327703 630348721 806327244 30578557 257895504 198841053 804868674 903678714 911829104 980594412 981459970 906696266 968325090 982621924 985899739 481972598 908320434 381297423 885502970 540772831 803410723 684027651 941381362 622690955 808352114 466180435 614280957 628504662 672189182 46363070 269567821 198930624 928105262 243577560 708208381 153363736 881869220 237719962 672464965 50566035 184525065 725628085 991050163 939408354 990128701 398607900 521715440 757152821 928402744 783505513 949770959 514785824 950820313 502388604 822517227 330090041 721240615 591090578 757586939 70043128 979615348 490633998 513020867 252954018 974872190 818153596 922946823 876455641 941104629 970599185 977142546 392302439 892351432 913206445 946959473 496122327 886348571 361415026 789047799 548866554 789224984 317878831 950457088 544235003 777970381 551914525 911362256 796674881 907195658 745843392 772976798 413834603 960399153 751835701 829787244 782069419 987200339 447713549 525677665 519826314 878468089 760923914 992397168 660620297 948407484 798153613 887296256 884707373 952872417 190190209 929135686 904063061 955505222 827373607 984786015 157938482 373428043 150230937 160293451 218603492 477533115 361225846 564482501 310874684 683833603 61086099 691516227 246322659 484117735 308585098 919966343 520234490 915985931 633313997 662086390 871035605 898254809 628301600 945772667 391669145 634903097 634041789 751107781 253651172 693116965 45165254 799230762 588960553 901186448 865062527 912590854 285276728 358214915 136452404 298774939 771486373 848821786 539991630 577454515 86204817 604999806 341254643 377053581 903730939 988927431 563545165 758676608 146587982 640222887 420101861 999796262 668525885 681122703 238780584 553463703 942758353 999622767 695524281 813468345 178854224 224513207 694254782 955084487 794678161 850131728 21720536 908924837 63703201 699122186 823826833 928182063 700626756 786774143 278091606 781864675 326361213 528249587 266027177 489936508 141428294 232716391 140882627 612024923 988944806 993280296 944049915 986233992 70763663 403852641 142857665 582630612 418313762 448211079 808074371 922718003 153311044 736389534 124394737 390170988 913735959 956157622 223144232 561676075 455641279 582394265 472080443 532158511 986946371 990043265 218829575 243228837 363056661 671282026 860734077 999359021 351751722 539014421 152291946 562381310 101038688 340677231 147949494 456674359 941727229 999385563 278085636 811784946 747589825 839935004 948320550 979591459 193251182 954750757 868636216 891086745 939382167 951115762 385837644 924223119 791241519 898544346 986181749 986754359 719365788 750332351 422965742 799470498 92136387 371760328 249133191 639737340 98932485 600247169 459764460 620646244 385824281 836055224 845790315 846522192 198484280 801188270 102499630 755729337 434931242 857548672 959724534 985210254 271989044 736921173 669880323 690104139 598974060 718251686 253700867 724075657 930505351 976339978 391134493 891035736 371255505 402615569 937010407 974433648 773707728 795135764 114262301 947695419 180423897 529217835 402415639 806858517 853096667 974858216 84774118 277151392 879966828 947658281 774716765 937800804 990622945 993264536 518204829 911442371 911208088 914229119 993990456 998235441 836543839 975322516 804242003 830792310 959600869 993635360 814674752 848341643 584621577 837659641 261963822 483327558 340097931 902305711 117522249 856082039 848534888 912480802 731859714 750439530 337708792 464128983 181745194 362556929 147064957 958183991 979155120 987344039 975601339 977347504 601481612 845219610 591852601 991371846 909530651 925176866 584002627 635003298 231458363 734133906 644806402 776171293 625630560 904327033 939225506 969590967 690343593 811512447 746899708 846608759 884632194 912159319 459162128 597719537 599728176 998765304 919046242 938758102 238346568 996679458 941561459 964934129 676268259 919210001 734939410 752260223 333196633 530024528 388656998 994798141 513570979 975113814 728285698 737306349 95149007 684040754 575789094 880110154 120971454 896765944 750664935 891322359 679382053 790113789 454854541 633174446 440490932 626755220 597009504 829637230 585956303 864258894 983110904 984911010 782556714 934738290 673295409 711126071 559642602 961612054 39836609 179499770 416610325 465898520 779313020 883501085 350439720 406037593 472166311 544859053 220924780 724680449 540985838 782085432 427524055 429819719 861146672 895227617 414227183 466014476 418844399 553508785 957361116 989107565 651776487 952456596 622792513 741125117 781093836 875528625 745460992 827895664 463922595 913416895 408954049 939214935 396271491 837402430 816732331 863859885 530040997 819142431 421967089 935342299 981227635 981332745 866809713 911793583 321893528 752127808 610913054 974106118 823923386 872739731 53162695 715819781 557498822 870433183 70972168 954831341 426354714 785853873 502773027 561559888 46614099 661201066 667399204 778970932 91029153 823691324 744996244 799285792 206753190 896729794 58979382 345159404 867265675 882881679 124826601 388951703 429679012 663378940 884644752 903326060 107274796 647513244 616251746 693677668 242419718 672749313 827748163 996773113 871015881 958965688 452368473 686901945 503035875 541892672 888387227 914604436 899058417 904253437 622649003 687985763 190876649 679157997 869264310 895062603 485395080 802189763 692965379 727058097 661427096 857187772 79090233 657323121 788501005 898379021 461938163 752343034 206691307 962129275 166061726 198181914 261563154 408178104 537456710 900407616 965846841 995762711 797033123 983521138 54985454 694608788 478125576 835676425 157983455 315207650 539425254 608075109 354077583 932575511 252216532 592532201 886719687 978389766 913157916 928637539 936610314 968331414 881141757 971878234 752368855 799272133 655226041 896288791 473168609 711469722 864608755 893247605 353679351 685657228 900464058 950446930 21077844 902178424 613094199 846310597 933867818 935423762 334332093 449677984 982719460 986500839 974984510 991957478 84511458 516207986 59811596 123448990 42301761 794044746 45539143 477555447 805923025 869026035 148216116 989762132 529020298 837100482 446452035 946495536 895238813 955293673 435233780 826730716 94473298 886500150 623701935 846766421 145614276 507178171 736416682 888975195 729985360 898324662 960294653 979419084 78341885 955414390 407271417 442716321 825793832 837419338 753369726 754964120 631652182 683323741 361211806 854850595 143053810 205931176 922925638 925835322 563869106 805393215 447852826 605546215 613268583 759761838 311298919 452237427 181163067 376420490 349810747 749015392 595019402 655889133 957181582 988985908 752302105 916425199 265000023 499646124 581732050 743827501 25944875 229696858 358150154 854288221 37665502 145691603 518625634 912438826 2056989 609097105 213930943 270090842 631953558 781119297 363045521 713522826 40550933 570271913 102994074 532298972 858237570 905846374 876658123 934618608 840778522 994551860 465704260 883142604 429396831 654365732 412333353 586624227 285638411 816789408 568799372 781819752 718508291 922113081 736841092 793304822 206153595 624229098 655701103 897353934 275975837 982898641 982062528 986953065 612735144 873343918 486729312 518123231 630742636 915197512 203529602 745332256 523846202 838386954 291871769 504436683 882583454 952155568 85814392 323154408 203082092 985455531 663132502 838974769 708812252 726044140 241018883 267773055 392016966 855706228 157318293 376302081 403920631 885854563 91641910 772779581 792574309 993233527 850888353 919012842 887173598 946655107 819248429 872718975 576807690 662169582 296805055 814344827 799734142 926243810 430567988 558197872 610918193 693182573 611024914 879725483 812637379 865957240 502856245 642067396 77850023 897609454 909491580 954065485 482602464 906074321 492416776 836120116 363576213 477558807 200298107 552507030 356195199 918016719 400715073 929272741 953120204 960317084 552581824 569449397 740022878 875911595 86083242 359814746 375358409 707487988 756575681 979271066 825838527 926213825 957335829 996704918 79459413 901533046 164518317 636584239 441989966 967864570 293351496 652141247 290032184 942137028 615831684 711494317 96176028 686946454 256299946 332809900 724379827 841401706 713789030 800764676 730114938 857431021 272348114 713699490 487865136 682327667 252699535 297574972 963510497 994499032 426200852 949194356 388490587 861873090 925859655 979906772 599291997 958813594 93774916 978098130 571148666 991399039 887396285 892725726 814922093 954578940 865181903 960282739 904470930 942165199 26652782 938135008 389267585 525922522 426543534 647626462 261773145 297170360 450278326 922563208 32721326 304173587 470775575 959662162 922546716 945051557 917711564 966024172 776375794 887650952 482202001 902887211 523587959 567347400 82027784 475768444 454495966 771291556 117066367 711628193 51010099 562221895 313871113 673027958 522642207 581869060 625167326 922577340 329643913 903390066 61356091 922379501 579645227 748429842 98567995 175002697 726706332 852671212 948405488 965900362 188812445 795183342 677054659 736008531 297784408 369553271 850876505 871531758 107380210 603901068 211693370 596414234 399940587 456671933 371315302 789947704 570042985 703572644 374572722 723895225 899376235 994086331 981912575 999553450 615945903 719685151 368371507 665279360 131722118 583673674 264012252 899564220 985636211 988786301 730213866 968329560 728818139 810323323 708421580 724751765 793531709 969549429 920947213 999459803 74421236 468401367 546666257 904236055 174597903 527508064 980500385 989485937 175442252 756073948 943849081 984656641 927285573 979231584 287089468 600854011 701623962 966915043 691948063 786120751 941072295 988162179 197313904 213024370 591834966 892916899 764059032 991611401 567477884 906686651 599473051 616822904 586904054 850046735 484537146 789895603 810662269 976777680 190787094 263976150 579621044 653457673 136092699 272539566 444802595 973070447 59400743 857270364 178849397 681928105 837587360 961408253 302795346 691836341 299399074 988362026 618524881 989816038 508406111 702222374 50249836 991718080 833262046 841114762 428805243 794558637 594971532 600350095 723430220 838069767 172152785 646162099 31870426 561992634 669246609 840558248 754327720 810460430 68669769 241340517 980737481 999646536 772452078 922436456 877418466 971480008 688961619 786099425 629991877 966779741 70744739 317160702 813627072 966958837 182931628 316138564 745775086 764384278 592078616 649410825 713390266 960200017 948631392 990306164 893145683 941629781 891057533 982328730 391298207 396359620 37564467 359967177 689048475 955563967 629924288 640768190 729168715 988434272 765768454 895894337 260242447 354080374 507533778 772582341 226545317 741209662 569495159 788799414 242895780 739217063 218344613 518671081 180668394 556972950 590929733 757220122 744980897 869747795 186009587 590311523 496145130 794257308 866928372 916870736 637338285 917968100 465099650 542017342 266975447 623927036 80461996 245746957 853284004 868365996 50407823 884187023 690259807 794570392 820272730 863708714 394786140 442778714 211654028 593349696 294887868 659631009 106527312 889381601 553576006 624087531 795679925 898702589 446037003 471969125 6400800 85981036 443428956 920821058 16799373 311521800 228240252 402840750 869492322 953667152 636018307 792874475 922597814 992752936 430230023 500025450 90850283 455711370 111260629 982984588 233915009 243917711 966598991 991376138 402021389 831282432 151906378 737234675 454935763 985685623 583012631 751774234 462111873 617484720 91306607 969001759 485107539 541827819 498358872 697312189 620699638 673228924 223524424 944724649 365046677 670473480 601265526 974428747 466113596 706197685 966431340 999226099 585618680 917659438 863721367 883387294 33459628 721010826 122727853 464573992 53871519 416697091 582457696 708715223 597004956 960163630 290696084 610098449 251075544 417859106 313531250 513413505 846163007 906612604 369166764 545868966 181355997 396708995 67124758 944844468 969423956 974614178 405799964 781023133 126152152 983227337 862161782 980081680 936820511 941472732 188699253 929205429 288590263 377673294 765920035 798965772 165491537 361328464 556029824 668889383 711155523 883695602 717790266 857915305 375750852 816313212 896785076 962502446 216300164 711977513 151985851 978310367 393135276 678926208 237912256 304263096 591632185 982377030 927511363 935741904 565045740 659882486 541338161 560096126 893836301 896609213 476603360 843505824 532185886 656300522 796123103 967607404 834418419 953433148 352995963 976058913 349504074 666926376 471043573 976873508 622187971 851437729 739098603 813113338 47598307 500680608 40407825 808628990 637386374 685575924 710053769 758495493 253365782 838381408 687008289 877467869 19739487 317473324 742204014 895198371 863649204 921284821 878957457 971177666 78053847 375269614 737687874 838709321 820753740 826269291 832502211 995857177 270284833 748032364 549342230 892914090 739303091 938629982 324353237 715867521 913965239 973282312 436798512 574534519 142695740 707185482 368117800 651798686 64923984 123519448 724326675 850704221 23375860 464548543 685561353 881434256 744303681 760927961 114496453 925455243 706473896 819306767 982650596 996235693 925725424 953903808 553178464 919366398 444317646 990370731 935480707 940083655 348833000 809570312 61975577 721246934 902413405 974599046 241329908 644328864 48323395 424461340 304298901 714329238 377958495 679891003 308109998 873379649 280590233 301293478 831853451 964314643 720272254 997354988 174426127 898503407 795800809 922314741 307763312 918333483 454804897 738521751 661026554 698470365 508005216 884056593 171373007 568081112 197403677 575622370 915111121 943090313 395890040 843195162 965116866 985279828 442447423 672311855 291538778 976154616 439054409 470771364 97202962 601883473 504326394 931987438 917158250 995246831 627483378 679473730 594783286 946656231 195721400 287338286 592569439 882039005 161142490 751060568 419925322 878045277 692537891 912957276 512644455 642344439 3567266 39124835 168332079 981390363 703690800 716867484 497258294 853841257 153993447 177121726 943293260 961261079 993549175 996269355 605687449 888505361 585434861 662708487 899055758 934323207 32676027 308620128 162288339 650252588 661593026 795236658 112338840 303235442 235388667 310328585 586727672 900131782 656486444 797227326 859655796 951881427 427334001 635816031 773627620 806248463 198434293 853981319 842336725 919100021 719626060 757881598 932301627 970890974 845436746 940071119 680927927 837890491 277965720 691036050 772446583 807959664 783759475 816840355 140795919 654579755 859753795 923715801 923506485 979127907 55851179 533126430 631042382 948278881 922463848 935068576 182494172 528613209 542817243 725608410 13671240 261319955 454079817 636378665 90538838 645664313 525384979 838417427 862141022 986495457 714263600 852302016 844522276 908161481 781574808 908607012 965606268 984315258 345176753 725151210 769974340 806147673 463710572 551691403 639308939 889958499 171959441 579679556 558216685 942405508 567806545 623589107 182520132 713133152 131192778 704947245 500933907 755005311 711753361 784510987 572132239 803522052 530245283 610478273 320742641 547377208 807367774 972941352 266250825 478074786 688703141 924092005 887364908 957177507 857175472 911255940 56715101 762386548 863426410 971637566 744598329 844575410 809890876 910907014 578403005 938462378 243517179 268543899 695356527 819072985 967907850 987508244 49538363 169090136 338425141 359225263 854946527 954501673 16008489 947691817 269654242 295315099 852142326 907052874 430218025 755304935 985522688 995216076 648315009 751992948 66007693 408324827 744800012 926841815 661913899 727929107 635833560 917916737 650039475 656413566 100979469 585942840 748145022 982293338 121483709 224254089 105402720 313179412 385101416 506183667 327708721 902566030 293014154 754328643 611870915 809113224 388390865 431886182 815199752 847614181 291882111 756467201 352094512 422683171 154558664 843089597 656431500 918712472 273273263 275525756 437465959 656645521 656248348 768303998 979644913 998578607 700295987 873138353 789758467 842960667 313863350 713445182 8694452 634825924 438611764 893872084 520310850 651221324 61693862 446959488 877231242 948677986 575099468 778921721 723760617 949342420 305939811 569231308 486473540 953506169 305237063 832340138 915650300 949446544 457229614 982575143 177504867 338595745 457540836 716853579 700873015 762206784 619910328 761380673 606590106 911437925 426859275 820202330 223596354 906590194 602683012 720610268 796715233 905258833 421422151 932120757 402922704 682014635 92609097 706899339 884889936 982516591 835079252 906998074 313126006 680838201 263966317 603761246 355595579 711600547 873558086 925706463 432029997 599109108 689701744 928758273 550438874 858374345 612868977 860136239 359179715 770519747 15333347 491987754 552050280 839561819 758814299 759299664 8551380 340736945 135756545 173140849 54473184 155871495 285876595 875790311 852767389 862160134 419471220 830371537 469892742 475577755 131244450 906583758 199415147 563778466 572156453 681412665 996003974 999243487 393434051 839830976 438555041 532978215 312337954 629523306 20713560 903510612 342898516 463973156 305066556 784829858 37099075 856505390 648535673 770329316 610332670 631050571 399833431 529285510 125587296 151401423 872880464 948102354 830561026 841168058 440324736 574347779 627088382 925866772 917899513 933808489 433823355 660438878 344534868 989091736 465153732 725943680 887755348 925722303 677038062 829716344 613385735 729357331 125957159 271330935 637804420 681661642 402961740 955018104 150816485 273368288 543799826 852276462 637012500 999844616 25904028 636777180 963916993 994448965 808324605 819587195 983742640 999488354 539671198 950615515 451166718 988154733 834176043 964461455 773781055 782506511 221539416 679392471 842103518 864898017 389150335 553415164 589351375 711684590 511958044 899854582 908504181 911221020 116073311 941128887 199585472 352025532 409302583 506596151 454501892 461683634 207834552 824150174 827278285 836151924 62177925 873749280 31208875 855853856 384934087 889443465 712697466 781537845 483958358 983486929 92659913 135377639 357924096 947720102 954658694 996065027 542287301 689200629 281795316 689417688 469276808 947698187 703605528 965687699 469684544 793902065 956247090 960104608 869413696 890821678 367339790 564553112 603678802 739264502 178333724 880184124 493199257 507880982 676724526 757730210 321413448 544911941 908078244 983211831 948729590 964200788 695720196 749796494 599033919 701760445 966659952 976659522 666198780 669212086 364226556 664224375 590806019 682826868 939002446 974333639 62866053 708757132 877420894 976773757 665775811 754641442 192757685 843569430 747249432 857704269 299052571 912535292 25553450 130038728 231358749 819879187 78466271 888263441 74658763 309731343 859484682 933622952 877004953 990576564 790543396 948389709 537099848 939465912 493977193 775898805 665777444 937490237 35764235 457265282 580129261 836462214 901552248 989864143 102152163 652618250 187090913 835671454 951225489 953431570 627528151 689313703 993687741 995757403 10308473 584524538 719958834 743441340 172448034 766995823 376981276 933020300 397095838 866358063 40651760 731097955 313619630 897956898 399133339 796957063 429046967 595716310 585387334 755691850 865547507 900187167 764822569 900135755 415792120 823648129 874022794 932706590 928853401 997852576 231367098 803454737 481847727 746657058 39911482 210117862 138391213 474528932 985912101 986452853 394732180 525367089 418197455 443393321 152403021 602017579 638513220 863534287 72044878 838934675 737197750 950894309 168506035 351977932 505897893 688119500 2095241 939367169 427751915 960373003 708379446 756574999 676980611 997675043 376677075 427219324 91029037 936146092 523275744 550316970 88073260 543035774 488675761 692672417 493612325 553459128 923791004 924701478 62494887 860287189 295728767 332949790 621325373 647597984 995235906 998264817 787476224 979644835 704868351 981467815 830247812 906183724 64402341 784030889 149340291 611343336 487732869 506675898 561904926 961463035 21399818 877249596 997167441 997893626 755735080 830616507 137842841 827216199 276166847 337204353 798546258 817015076 812090203 848596467 778726478 912030113 400528963 871470642 585535237 910109008 329297880 726379206 303789575 944580248 752161131 838047988 260819282 956868070 527881942 725089350 252205954 266981934 56302285 688514694 534339050 855443494 411656904 568203746 497292906 717087876 806087642 955678417 60476431 211694088 546706819 736185478 667594094 861977999 822241373 957069473 627091852 968295440 428790194 787441699 661782044 790444580 327663590 740559914 429960826 809799671 500200925 515608599 749213584 984857453 293685281 942517963 862702015 915684781 357753881 557395661 549485441 838895119 489761881 950951739 469250499 494690219 654943487 931440549 572259092 930937578 111952365 873605971 305490876 740184582 85129369 96654688 417220887 618008483 841266947 910958590 870107587 919091534 35831367 85614814 394435069 490136657 880225822 985638593 504836392 506287019 404932698 608027133 317749179 973601116 276986106 772902809 862320943 998088878 861485761 890549534 910719561 961864242 419497420 793040959 49061200 132065915 339735486 707623968 733463214 785727455 898626647 946361201 345316228 566210461 626821352 632676256 401734024 448166177 501671552 841940755 516337527 820061599 734142326 813517520 383655212 707031823 846162211 907556190 398965515 817702514 473858566 496460022 558593930 805189348 589557441 917169703 342431213 946937530 487540319 829501117 194261526 569818590 857844556 908138867 48047166 434092559 925067694 975215203 426469159 492497123 739261411 775191881 908852784 953702517 109582772 932898230 832198256 839288247 436384731 921741485 900593658 927819820 690445477 702851223 281548146 841663552 706235201 787756181 239286198 954241766 727550145 728114419 631386375 968635760 855929159 895648895 679630551 851272666 213652496 281869543 748751859 838333767 750669272 771197571 406941987 915870431 592851794 633425037 129464832 415302290 984016709 996959466 579618343 637910797 402382945 712790158 485821193 828023814 458793347 473085170 956444793 976699488 398201951 546467423 319986799 613878914 704497053 708874116 209319703 838678882 663174295 726338812 46201592 779676750 978553711 980790252 755250502 946658143 856621030 947219713 508836800 942859859 391803030 438602245 837379597 866868371 998068983 998358808 37508577 572651415 113104880 142585239 714697977 872104690 716697497 749522335 77523417 515597351 87784377 174893360 764001607 841455540 132124462 469376749 326240652 844071061 326315961 860256986 231207525 234022354 498461362 881666214 136850134 579822440 584178234 772565928 378080012 947099933 442259894 610206529 238485971 762730594 516478990 762676042 853030011 909403527 944058188 952457854 951339137 960522870 361433070 452450502 402461927 514114734 639539955 795259234 156304314 897468519 921284934 965258642 85808014 308878151 402311814 686207342 921531086 924966187 301807148 621231382 743912573 846763281 538215707 557729035 635971086 939731875 141686858 717632103 942597405 977368619 474561289 731127051 458861496 783342351 31482937 492910973 765188752 920035229 438493212 744603673 756452854 775311798 559984353 979930580 20494594 140637690 110983688 437004930 268713536 497481561 464574318 732204980 409630272 474929205 425009017 650841165 788945691 945287440 679164534 828830039 427270358 476029164 900484642 970533535 521917822 655220950 197573649 255987223 863534854 912619565 407555527 845133438 673549610 862865704 872639614 999659259 717687762 893864638 678012565 756565723 635853272 982998653 817406509 964765256 47320502 632689978 637778131 853180715 904216611 973496985 268905292 729041960 948156255 983916124 162856580 487119055 203234518 441200712 953053849 983474819 400603690 884662971 40059210 648542619 242167289 314977514 469691355 876748267 220382884 668170354 573897134 604763518 710606659 894650533 660508006 819126326 99336955 140350864 786301337 897984517 241577678 990033415 748770175 928112388 630662942 667369664 221146482 742706905 257753021 839662713 962909893 985778695 550086811 827069104 176398093 348119430 169445872 316799243 879353457 911591550 952300749 983490345 510506250 981285040 338330080 626709498 726791332 772164710 879291798 941864225 791041541 905398213 957705265 996377114 57353668 917499262 662710716 731268214 919447205 994511510 944592379 967165833 336251611 904989638 612861326 666135181 799552696 847995827 587582855 609780205 319879841 729958340 553745145 677205585 107169032 414601278 470139607 876876280 996049569 997176538 286034009 577021810 140746448 316764568 236600441 383066521 754782358 995655782 95285174 977196354 943868803 947234581 205042457 478776772 86175320 570895301 974605420 994566549 789142527 927483447 822316307 877526994 302989960 947035171 162276452 360916122 601124615 670797469 892330557 918578087 794562824 875876120 602582922 965715060 479274169 899705829 581814686 711811521 767820844 878919254 862439759 882580674 445696298 802051859 610598593 998395490 908054915 939805466 633973426 796192451 923490089 966676388 710223881 928096826 503011959 585265489 395087431 432405374 779646454 804528192 47493170 464965838 446217470 632857590 80733658 456692165 369542071 544124150 218007222 859794542 402563696 845095766 831772655 918702727 572707035 657216444 97125063 385389996 907636960 926593728 132742366 925992301 44423440 182224593 386155531 464311672 256275709 787880411 352538938 884636061 871944803 989769748 589835593 669807971 836014817 887240434 652637059 806962303 178822236 400582751 692409834 857337469 968324488 988888830 861746078 941506350 358912841 816096069 970843273 972467198 915791097 998540596 933320780 973698155 845305600 876422085 403028362 975168955 670354907 775725047 946309721 974673575 833362655 932481009 937570791 947655871 402698439 511117146 556806289 598061536 557284809 724955471 952495401 978089862 246270162 658377654 882339712 920972516 160628003 484456985 972332405 979493920 516477573 704854374 34297249 532534319 931941696 940360833 63195078 308509067 965660323 986823821 540713633 603271946 804165012 957259603 780736629 883922697 218461211 794614775 976625008 978640620 810609185 824160493 738003859 798105220 846737316 936859963 385968906 948532297 843499002 920004463 248601169 988036688 85151860 656676891 283577940 996164085 228080428 870882968 975303585 981665079 415708734 528991417 358965277 657340291 21424648 722105451 168000941 966628296 156769671 391697449 48014903 578585956 15106583 898527633 749195009 998142093 324165920 529231560 13816721 29530603 782714810 902469989 545059278 876371271 62301887 719101269 144810755 262123305 372165597 981703710 550433412 993210655 794780593 938320942 790383134 793280458 977367335 997893802 106363450 832790286 887110058 938924732 948540069 966486488 57527511 583794331 723336312 910225397 636499484 810779528 222964311 751167123 10381905 294324193 802952400 987024500 122016612 360184938 831658411 963748084 763152136 957884995 704521308 754124538 39463178 988582288 343530149 344711752 132025079 497490665 377192738 476563508 434711601 923367817 97958821 905848903 962561631 987747473 914584946 979255428 302668908 594470421 372584580 768908583 623354774 693760157 785572502 983552635 646199465 806078064 913922843 915082404 903072662 905974905 32703815 930071001 202902593 744389486 397362358 512826501 696855757 955710584 424769128 604043691 652769853 841523296 352182433 927675240 907730305 975210926 877205873 936638896 208932378 667686354 140193686 793883983 314084779 994579862 405405320 483888005 561358965 617151347 106010812 593465069 877271262 962647692 482961436 613581183 808805297 894626746 55318917 255090614 749054569 862743940 14197047 62659158 450614253 560824485 332496756 701407684 932384905 939579106 602404938 648546842 237661181 687787640 273129263 758994312 973285529 975389230 444189979 932773411 515091733 830104014 887495164 959538065 330163522 551541660 60021495 972374010 859048267 887059893 701187090 875141391 823410556 843899466 244812471 684518062 632175714 778554604 868754911 927680656 26928936 38517448 413403445 786034798 822390590 989300755 859510050 960614862 537615356 988611878 258695123 798264368 797413045 927546673 261626355 502951525 410682916 822523890 936275282 957994583 528189956 634176469 970131150 976548275 784393716 858352635 984972191 996775705 363927831 529915874 52619971 784448794 112775424 843013541 157463209 757255996 71684405 113957808 892865646 935652668 718955747 930822615 495665470 780129879 838988072 844784202 788554142 869335680 77639094 288960576 426673653 742168035 304424915 863872818 399641670 559886129 84540394 598966399 655785057 889456483 51922118 74126656 661266173 781872252 923835062 973008622 832701430 836960248 92423543 401772999 484982643 926064880 841796971 974904004 494607915 734743051 809377385 912046209 914144576 964664730 630905200 994101742 5175771 142589237 807844028 828411789 59243823 901504936 655511537 906709278 272622576 757198973 836595689 949546714 720632204 940035171 905334312 991068448 236297686 486945656 721456845 802571282 53010875 840508710 825217341 937125388 608918061 687456963 842180969 904882883 718216087 758548293 520896542 724493306 909017466 946673006 605280292 942325311 595551668 650870057 547075396 860665354 971895868 973609990 103924083 430034597 991449472 998763392 253734327 923013922 447003795 756600707 437692284 575449120 515220689 706451296 559644441 820829565 843268380 939314174 215207580 967991994 320216746 329488478 560209890 613193293 347107058 715917813 777638938 911358020 136911631 714086943 304420885 934004138 305460950 912503964 137529937 498393694 713021083 875826781 530006210 589778293 587157795 641352122 182502064 568681531 735873634 983575057 950012983 982899979 577485818 878815001 861631340 966225361 121554783 807211171 498260285 866047039 20457099 813654643 632871896 997952540 289051455 360006774 211976614 813484969 266379789 952227493 412202782 762866246 57543464 429702129 985642948 986047103 673242600 755344076 637345825 757473326 107015650 707712055 133016188 985772576 865925493 978893314 358196894 798180786 420890708 435500112 677357391 910122334 395558993 780537105 968387059 987901011 238829215 529256192 569251545 646970116 470455595 681201042 706453026 762725684 865550546 995403228 235744018 789391666 31218405 836025714 156954128 235985005 158174070 999627873 32199494 842251187 487170153 721191999 110630899 436735120 986120942 999973756 981863858 989746280 768477673 779715680 176834144 635509109 894332682 963760034 593019342 893529139 97456275 595656912 908966393 982400313 799578711 874128066 889075698 986960595 277078895 954366286 433977300 735565370 393718226 851550653 668340736 911078152 218558284 818761746 719773872 860834960 494335447 615159959 124285989 403271398 755915759 788888267 41570102 260267589 117057419 872381255 486486046 584302813 281016651 350934949 226007632 772916216 168071362 850868367 994880654 998802462 807956201 920821882 998850899 999827813 340053409 589909272 939925682 994161368 88294148 369729406 39286185 405049989 11218832 425021119 259655534 870458524 812560102 828985356 358273828 407269379 909887535 960224407 752844433 897632760 475310144 736005357 670549181 859891920 173596833 980534416 247367234 710546702 381393399 639675301 137006398 283691301 567633439 914231015 844118032 918054903 38900419 40194296 168123941 882367484 446363074 692419631 674278482 853755641 134084199 892688709 432847788 788344268 618083741 742382924 314879893 904132489 917903683 970703779 977386902 995892992 127870684 129400944 377587691 693865498 471805189 745342335 860808285 961910790 47501523 475246131 182290620 847991438 613941774 777804636 221561466 679268144 907743499 981207530 948310292 959609933 645285663 830423971 391506861 641796162 508209435 697081775 99356911 764592638 29834743 953860010 908146314 947822871 461474833 968499191 576451013 670376859 322888024 885292992 16411902 288449573 656106215 807854106 759965152 922256693 607214656 842847356 590807902 980335807 557244825 852249777 239571278 365237621 243508382 476902258 513925309 775077100 665300796 763974629 130538999 186750509 804481659 807739777 477123872 839228181 80063653 132735626 759335045 829333311 353329429 498431514 907954497 921162553 93627613 818144976 916873421 995771909 137220997 291380699 498230891 792976609 664485915 960213218 883549597 885016198 553238395 794021226 383327813 784748262 636846377 926259160 311064696 978737554 31784479 242322342 840856486 950925399 616104326 901965160 865475247 940019784 849925843 970025319 910659907 935255104 326178902 382906378 504473757 901264777 958133978 980891818 780064628 980903972 751819028 840298899 240798730 448196100 214806939 956410725 496745867 625242026 358787560 519806318 794775247 975800152 830864939 992445524 716518267 987919203 476697765 723987524 191601550 842383570 960693681 988524962 200532346 288494079 996641889 998198039 659920027 695282634 887679589 954256080 997358813 998230745 191883283 588937929 993477784 994633845 335497567 860535127 143613682 752696893 945972149 988219906 306592984 879442164 140233444 240472074 981630644 992479915 28624116 392813483 279812907 406878299 290252109 325627379 178738441 647272420 607626081 834693619 471224839 924746285 277360309 814445272 522226601 959417188 514226037 640930907 244221457 908630050 599309441 915603613 673431289 817476682 450619901 634803994 736554396 853127013 223696253 899804514 193146068 286353813 183413050 455460669 306696655 437557534 301007401 393845695 284046047 423719356 285942960 315336178 271351787 952098306 457432585 571441735 778943435 835205365 201089617 885514706 380976651 556475145 303824761 822772734 677424367 683357182 985620140 999003295 475818759 493459824 188690455 768985861 929201900 940972003 766731995 897195701 946634521 955258963 532480642 944207252 285674185 721689097 399069525 403818381 71739557 137887456 630429427 737220147 181954379 197230126 398043478 725058490 828604046 878332821 306446903 345784909 353916603 904398176 428816253 780000210 236266110 270956154 581737282 979823029 564447204 914242536 352444251 420209312 647626938 772121953 596099177 883658411 105045676 637672032 83261890 634128242 627411894 862360843 795315166 991288565 74323475 454174229 343388408 373364813 971452184 990003545 337554358 661911409 416117404 972621741 212233834 266393986 359227257 636174455 794980737 851378767 478812582 654762350 323203609 628348019 844546206 969115145 400888520 963794340 520465445 789449179 612417568 837110133 236659045 556355594 976710103 985257573 836439061 840623814 93595693 237321364 513166504 849254362 756141762 774493140 592319809 832137616 879195847 907191219 663535344 843987205 567186614 571961007 703100509 853537773 953666276 960784042 664766326 885500661 284410690 545554330 987512895 997963111 983474839 995095085 796004372 971829743 491870647 643806551 647075960 780214297 146280220 363391205 545366538 561003812 473618688 766342883 854620457 934015705 38681960 744339342 346545491 736150596 561543954 681953407 200299356 568889211 519674280 984885868 502339013 905147800 949910960 986804180 895648252 937673120 239547521 331424841 443684928 984872410 450382637 561879229 331052344 890704909 202602077 370639397 193600215 522393031 711602110 841560935 156055232 465066853 550852641 904239349 953073845 963552379 925822764 958428347 31748806 996851235 653583790 882032302 825202768 974176097 270854985 735079714 150530323 194153450 309143253 792939104 736076596 973562835 884348499 933135179 312555679 482127863 955793295 963305499 521437397 617207884 698681024 757266835 570263318 777396721 378761377 623170172 715986135 724358096 502887470 797535836 712537155 754334510 166844061 879500810 353587298 999392209 910449596 987116942 798352467 921020542 93859632 397037266 96145715 406903228 363701859 985116076 103065277 876287853 57279794 580115306 587770644 626873656 619251824 825233549 731146538 972454735 114909062 851001597 247390986 344977509 692300104 789301426 917879647 968767129 757561881 946705674 365809633 707425371 871534948 968492252 226417365 530210898 476638252 734737366 129623209 297755808 963653050 992283204 963052474 973921806 200666189 594191110 710074123 740838262 129264247 519346054 185963833 550569764 538978525 674094492 627470662 802629200 910140419 944411169 82423405 643899829 844371842 864850831 517901605 867468864 782323502 861312769 650655305 732497871 232313463 979670586 467385585 839135910 379571168 846794083 269972657 676360810 117407743 634902463 660354979 947630962 412972344 785763706 350506777 860502424 918335846 951275774 60867263 545949563 143694239 210263851 422954917 961889603 509404202 702252853 28230945 896434514 318224839 914968343 377042068 796459340 584788332 829052942 576122856 765490817 29670406 855110070 161849517 777260815 73461136 765505832 43878494 197935269 849674046 973291147 769668485 914535612 622276398 901356294 382430131 522006899 201156807 820756773 577688919 835228729 616018985 733974425 411028465 999822559 476356763 635743317 12241715 907034325 832721562 976518575 1748311 258850667 522748922 628810283 365358218 526831824 758472034 796223281 750088020 882198198 577547914 866438904 299223408 310176356 255312710 790030601 518108748 943751125 225826048 723406410 927182772 970459913 106197066 995342091 387939497 826272258 276005403 451342884 15958875 179522363 193695851 611736897 355143113 977563293 408169301 953494446 308548398 445187420 486027 203088329 993441129 998967190 221925397 731248955 668722933 855864371 453668273 566395833 633856223 789875997 121098984 578068635 263678889 867493927 998355967 999221880 980627620 992666102 883894887 991135610 35811755 635519572 580212357 776031264 269942178 450121361 878078963 881280059 309495840 418205245 147890695 519947211 174862710 566765720 506220083 781754295 131432795 865101889 481528769 900805047 205073507 887938916 18909056 178407809 44717360 279805337 776020016 961841114 86976284 606557456 858351368 972083753 956555965 972626226 227742495 306875945 588449689 982968611 616406592 932763023 931776734 948113929 702050810 783265699 57577953 961118791 294058785 780908033 833697184 852019867 851018060 918964561 58377648 111815623 692579968 987541397 122554896 844464773 66834492 575051952 219324842 442355725 385352375 668886808 709848235 939858086 857346782 890316011 449652621 919220680 783804612 867106107 17597249 769502068 393725610 948315588 788375053 841130955 382201404 468572948 124003250 582429747 156473653 723002051 98950944 988795908 930761122 949711417 586441210 901429872 453249284 548924093 413149862 994610664 442208186 761547165 962696910 987886208 750175914 881866005 380631591 454774418 281780055 743817751 189835364 350828566 70808116 332489394 405086468 407663914 669564659 855596305 518569198 580643236 900430143 995394985 884194386 886672781 84055426 949252014 954569777 997956782 678168111 945173212 307432632 535534171 503928383 827120701 791587808 940901666 332622948 343227785 303611363 937831056 143880014 205692331 993922745 994926034 147059774 166488848 434686416 567487870 892724756 940690093 307778855 677789933 460455564 520734040 554229602 810435391 512026831 581630598 814610322 961608081 387391340 498722112 958732703 997792954 870922886 893845297 48840277 249039170 82456292 197036467 564842246 647152177 899310797 990626526 424501101 619239385 275263272 810039384 423181240 764097368 322374562 835956086 687836260 952927121 508102087 809751414 863511273 900759255 578146632 694707848 568340511 929404284 57668997 258013122 960011935 966109006 23574253 345994547 149938600 337045353 909687370 934643484 313142249 918530273 222237045 315952663 353115673 973386776 841412226 888446999 430507885 734531236 16263492 207842270 608294978 967667796 513025807 906651153 439401243 764546000 810473779 980328737 385511474 938893061 702196128 904859849 59535464 421719908 65168213 668561509 541980344 594250992 555059742 886488754 800282058 941027307 976357032 991435136 344865872 715324186 179967563 786106126 142045233 507325620 81090245 719303790 445869379 568592336 252166713 512390128 513657568 862304113 57898946 62593517 137160227 916838257 728081001 754632504 577944636 697756838 584423422 754557626 379462823 775403844 814099496 987307567 710342092 795279465 335280162 423195466 650889686 957714269 650505043 783953049 248395957 403637314 168042491 885891281 993134515 999365869 830435469 897966452 690114607 823041815 729388733 768173510 937178107 982487935 847541909 970626496 798140868 841711529 496021716 591776409 902427437 932719282 254787236 861757287 779526822 927097954 894547797 974609314 729194343 773205118 408399474 838466685 83064846 593074294 274618623 449118611 555532318 869634277 491971669 770085336 977375182 999699944 470189778 821234065 837922986 858700980 97063987 687108705 676988313 748354565 71549044 358288619 774118290 854446379 98626176 228075010 290441260 698478995 52326831 394233566 155824258 869841799 348539002 395922942 684320804 999686575 175915512 835437574 862212221 981320823 381648754 713546970 435213529 614860690 245920167 285687441 760169196 836557619 445655700 916519632 878035916 907691413 128876855 248446825 513937612 693982114 284895784 339000603 35989004 694746194 912462833 913660999 805914761 984365539 752595444 840290721 468962255 488827359 638624847 938997749 304956805 685134068 155714171 259373243 765135753 817216760 937565643 958531918 909519709 923938490 430361385 869228880 487275953 943731346 419528903 645785364 467010747 490795404 69418230 489328223 335198673 525286617 965521174 976268841 331878519 571443571 224737024 968529659 541883507 991225734 167696910 819527038 245076551 433801807 288076841 606161479 117116421 873107262 540796399 807867654 726843971 817528964 422287606 706845212 13699985 421100756 776300322 807572732 591154496 991600060 110407029 892106178 530504802 708911298 335053657 573338241 613895379 847945100 40673939 196265413 564040131 694119165 317108842 978679533 859802469 956658855 455217921 557096828 633489133 635575792 284698663 641210899 94371128 607585368 10376768 644306958 693764284 874558738 450465991 624027529 438464719 714440498 477990105 686231656 883501391 964252196 32781202 910082137 763352820 938265552 850005884 998453733 715914804 934085464 426329065 724389762 789101098 900728779 331780764 544021557 385052060 535326395 598220265 837148950 134601480 280380961 151949391 483509386 59964464 128841337 977076033 992621637 189153998 240167487 63324736 586616710 286431510 910980612 923605976 949445527 264286980 333826619 140462644 238316076 152944871 283588288 108261757 415255342 595469240 845414545 486316456 572740808 999816494 999852708 308258169 856541590 18781212 822530551 747113434 959060908 133993693 265584526 945796587 963634073 356831171 889546980 112013499 697372425 446279455 822044689 102057120 896340885 138633680 393876072 198290857 938134648 258211545 320955970 346768950 845134971 340758635 621314628 662074248 940874883 990312997 997577668 973843597 987996885 500741439 838450534 911863121 971355015 673473850 945800697 394300379 844485123 119774028 336513775 171755135 801509026 867952367 958756022 636329787 673386793 583354589 893982577 56664050 958016306 332458447 990615196 653787849 964737927 270731240 684872021 571452597 917314150 159367126 361623829 850338465 881457765 690223286 858512692 625165948 740476407 326773880 979654836 392230339 601815893 862239748 899684972 801992410 988529079 796168627 984863745 484464319 717054317 817126264 950345165 693416409 928525843 155112003 841995631 59413129 959845676 283922873 968010400 244717154 566117609 713721039 955020197 338922323 971643262 457004512 781914128 956561753 957371045 884901765 915526113 30537769 92948362 133934075 147786316 221133228 882871177 829261962 919072773 665812690 703166676 656675133 699466668 447439025 733480818 825903280 999709915 631570843 662097621 29106521 685394994 793888623 843872165 824638069 901415208 825291364 917556410 812373145 909213163 153477066 948139450 472710099 770031665 65220621 298099036 2239108 67505375 754842862 848961087 957051073 991720218 456522539 543727097 555959940 629088542 633279660 910792321 554625482 944040528 446828874 710597311 799197984 872038453 178150745 912287385 950197056 964094063 694646775 790596325 692872934 956898899 374134990 401487879 634838886 933004869 852164986 998844481 798576838 949804272 389804569 433711484 576761230 741390469 68599726 622581194 472422882 831014399 211849465 359972787 950053936 966058697 39109720 70335430 3724910 708293127 151086442 629435219 272040127 586190890 184580640 840478358 904303482 948703066 463723091 590134514 714964576 918696948 749342044 757621293 612326174 717054268 990218879 993153820 590438581 620706921 262175678 334612736 479210462 943603249 351887132 433536761 410713040 651003624 86909075 430309249 5754485 980715444 234622928 467628959 759078356 978094185 769669969 788444811 801916025 922899975 6894731 245285570 116090801 421806038 73388322 707790590 603314782 635040667 651381574 709070022 127835012 994315790 255497725 535377148 431357694 987371678 215318318 971069595 683596332 994578545 503467551 784480963 750339914 933893816 416449939 467820254 888736318 977129893 933786413 994023220 953910683 975405003 536235479 923322834 103066117 999682376 202042232 693503526 316659502 689730163 367177070 399992628 87633981 856397145 369177739 514082486 533827289 753140807 859607804 957254922 819109335 860317277 537598021 697889127 243878086 449829738 884053949 979757323 631045780 796015633 535749973 972104321 532293743 952160842 834880213 895706879 962512726 964196861 691581601 930275773 48853895 347619772 614442890 709436649 772234423 808289003 640495751 837677301 272288475 396800845 881674536 893925636 512431081 960193567 85774168 470918117 482492162 648804807 946009670 967969593 41839620 321992064 909325224 944683920 892109598 898029654 861034386 959926230 537970542 754747020 220542047 909446398 302395894 359925534 268791982 902233416 943003478 966586006 538029366 971985167 734918670 833935581 774853870 791944532 16651903 508291156 568519306 970527780 917821096 952369409 560081023 864684346 358740956 654566369 496326867 766855498 624849459 731450119 835919169 929728268 603282940 669972990 332194086 822330243 101158863 541750937 40385885 260569527 470111577 961671466 306937648 682904885 868103894 898976425 15668700 242805532 755961969 861970627 8066587 949559568 853898678 873279946 472857189 976761385 34141381 521049825 915511742 998435165 318929018 929614787 709449169 781010762 645347949 903557078 316656046 913657426 386767358 573335698 391687732 922877034 396881496 431547970 260182648 269802425 887925928 941287724 758135737 915012635 254359336 758664804 769442617 970870590 171545463 811109349 996863502 998599508 483929937 781087426 47182896 402307207 18196826 475892682 718967086 851574092 812573989 914083198 23233958 871547858 34914716 792282268 243311794 532864403 345660636 955515867 428506590 742739844 16542844 935923869 665883825 702717590 577645920 605872247 961623742 965463661 284968665 606874311 175459284 946982956 704229382 916035689 495731538 883180336 276156810 829891248 60650785 92674841 322030757 805901804 32290052 287870476 200312998 412584057 39426709 674375702 394760586 399062327 492265597 738490833 807467761 809498202 682713313 789328533 934548095 942133588 815674579 965709675 455161601 890247545 603143144 854523204 266515058 892516139 319871167 785631412 118650220 614572596 82821312 719350767 777984456 901222914 780370415 907282050 386771209 713532165 232879518 382933706 578270829 839107583 732621306 843888309 741255400 970279311 280192211 872373739 445699458 510434038 177151746 848281673 795979258 922815283 218435502 348459631 986271722 990976137 265729783 431838509 999079293 999550299 288786283 344699402 129693373 825159804 705096173 827634719 171231970 731221417 719894084 839550340 864276599 882656681 76801801 759655623 376060379 659349010 24081513 249180216 385911947 424719897 313654320 371231750 314280807 488814856 764247519 909199638 248816726 253815334 949854775 976948859 407109650 933026226 812881750 908251805 131211492 470711247 151770482 441558933 82673750 123782251 190110078 590804664 535377822 864217256 47353105 356532009 1072925 463939888 286551673 932203031 248334720 355552517 830547394 944634148 444888273 699482755 508567655 711636670 63941415 402377121 762797366 815401613 678198689 846985597 99639782 836260314 871447840 923353573 345422463 368478938 336706872 727026473 57433993 958179362 29960264 496227299 940478126 967324927 676136280 682298467 673039649 846561823 549259485 787115598 942168690 989525755 393523472 586213496 444789782 671443960 757109516 817145888 927061415 944503971 816963310 822995119 882327564 920453718 519449196 743749189 277612278 503051085 221648895 665405731 440872966 444037955 645730217 736765624 298547393 596322927 731202873 767839616 296464075 362911764 193187014 383384782 508536019 585819564 405835611 889857956 374125022 562862478 945986927 981037580 440069152 982192321 990546862 997215327 91375999 765455198 833943784 842049213 719264914 800844776 391390839 473216917 235823471 793519928 8531110 985877667 364195305 501056583 832141353 843755625 124969013 438615879 22795194 958866957 829870179 994181460 743432436 894605206 513411557 941898150 877488096 958468781 566292912 989507641 981253311 992180472 321289540 636116094 63301730 173073561 99797954 604515958 303540156 842314280 647165599 666686698 830624843 894586727 969659200 989739511 229310391 936194326 110015840 770865898 678957291 855915751 96208261 768722061 760015693 942304802 300168 602346486 788210280 977312915 479324796 624600900 179612852 423684091 990949720 997170535 612512669 913162841 805850188 829657942 438099586 974023411 71627758 89024613 712060562 849520830 231564041 487968999 829597768 968067748 505653453 637333930 729744526 826461780 44834973 227544954 516344470 691354568 947416472 978244209 575161008 942670275 992797443 999326205 580593617 626655270 761492958 983351601 928170549 943439769 23898043 648989210 517063896 718879066 63486219 330401248 343808921 784578591 861528042 868576046 537885554 633100622 50771968 310008322 988521224 993828029 119423705 621622177 266118005 612724213 692207660 980146325 920497654 950776638 886699889 911457100 794803315 990133268 630422655 884922538 156460457 598223213 734582896 947126771 959206383 997936541 925641057 942134048 694030223 745407416 351869720 495200758 957474963 968868710 273018067 753486096 716480318 983549311 145269036 383341649 876858102 937895040 261443919 353336960 382128735 863431885 68856024 193150914 504244040 559588929 955409005 979124745 139675426 999862333 97273821 324906225 399356596 425026865 605611151 751085345 821477330 959669631 203492493 455514276 940678857 959105155 639650972 857359902 179372383 191297242 19700574 255241009 218633814 503283603 877593893 969289084 589393677 611127907 77738191 744350430 149118416 789862315 915135100 973273733 514500745 743043915 524232831 716742507 796464605 974830893 39861877 393973105 688409995 768480370 622731664 863684991 884896366 995933242 683861999 828706433 734173626 803343590 579831711 994588212 932392489 993594503 677122902 792229590 694183318 695442173 701357551 958596239 460857944 842849599 391959794 640720158 974488867 996232998 31638051 203082252 678788399 845760759 158015863 243430257 796364506 888272443 936052565 968341470 984668476 993314669 516569057 640910489 485582743 499942989 227581500 333593502 481627276 810698300 710527263 939947648 546373749 889380056 18737787 321431287 131975394 905671825 180400681 209856250 77613781 371350697 420944277 544286833 9158597 20415526 765522208 981794392 746883460 968177381 341281433 800860895 899940600 938320245 988987993 997939512 393020467 744997722 481998928 916727723 915613258 977854908 521637247 552379505 685746017 972953088 803964660 955288295 825989028 978301114 126011740 278793529 99535014 635147797 814925642 925724836 779402441 854176090 927571897 943402602 24804787 582141906 790469695 957907961 90561846 613967051 694781614 912249140 142349797 233093335 572577788 787221279 648721722 785174206 627186645 891963160 626151018 823415954 816909066 988443297 112508969 436279673 466343937 928999630 938214902 984311631 553232221 980054665 506775200 731937154 240822979 642468675 467639559 805557107 969028215 996871996 903524891 986491169 443849244 745674884 945350211 978708011 912656640 988774702 523671073 627585967 760849819 866040922 893761209 969535451 570480118 689595555 922943305 995806326 551632075 600251904 483705745 801456483 103051274 642155987 885696172 928899021 315485997 808334053 97238358 580221411 554909547 906774405 605132939 933147539 645133151 844591863 405273013 420948022 478607744 759339365 754594079 862885583 943758146 972966689 57455215 615021894 444119278 831659840 570756294 827128981 256752944 280333250 914603259 966623777 583883932 847463782 182839958 339540438 805632643 922931505 852933830 994081324 401603146 733358402 32944630 467217715 390706584 896616493 728388301 947035732 338072417 376787669 128968940 257306338 264465128 514094304 691573678 865756749 526277410 696680713 170455383 415746168 557864504 992625048 415859628 609622228 999967667 999976580 857334274 943555646 863973803 909443962 791727352 925350211 717159992 886907478 282405005 817118990 795558116 814609061 37574231 905942250 242615578 613409411 376051951 842241134 542790723 850321538 411745510 658534385 695033660 728225230 418756891 825830598 877300948 897200580 781884801 926993129 726389727 879949325 739028693 853131446 429821307 854452085 839402196 843320778 684800752 814130198 200918658 770598660 481936615 936019667 630667200 976394496 280322746 455464579 660853101 751248673 626291634 911039144 626102155 868874100 248678604 696080329 154266369 682928034 897430828 936220901 634793520 968355045 291649037 468092355 263707464 785134038 620239475 957468079 662515852 727571915 296237323 969167659 493217735 905335487 330303515 814400432 873146031 993615933 78927800 654456922 67718121 354054046 777979183 909294404 554237541 630195134 587427343 938810386 574357774 924855946 850327886 904616243 120069701 459427156 762936382 924501134 973874473 980478288 375816594 940546662 499523113 755562832 882368218 923527981 258576123 676180398 479360224 767100030 903800395 977543156 248457986 407287298 211436651 909540230 803291355 813642411 106820789 996905202 8997313 67164891 499496681 882294258 19582219 187378217 985669159 993792172 623242829 746244713 21704326 381365621 574479373 844288809 280687660 320280959 921615954 957236010 903497633 946038094 117626444 819843859 637220625 864129626 680020902 943740751 287457747 771368161 255583316 718172051 877599280 954059292 387120584 618233176 864688762 909451693 481562269 846287511 420770027 998449128 585748915 920335098 785136338 792346351 104987349 928585016 834982348 948276646 420741139 664165485 479556683 965503453 114376739 331967114 213052833 241428058 843589477 896954294 123619802 369468848 81864323 404666405 136030120 531802602 83371856 480874296 922949204 999884225 665321974 915682158 472674936 911805735 882739070 915999669 824024145 931054634 222394873 751782288 730205543 876432328 957223580 986661877 411917707 571587772 60885232 960696374 361567066 632934045 150651317 672307626 884274852 898067830 4479947 755652799 400827337 730047603 331532832 828630400 735438495 783185250 226238742 466619713 794623759 838492879 37392807 77047761 170215057 199962688 341749474 500705631 764840491 787805912 772264528 790434598 505939065 645062278 340698202 410037289 610231365 842237546 863059428 990509096 476021196 757092597 638615694 822909849 36980354 79784408 713314337 993439088 133131527 368270410 787820432 896770271 728221519 988437147 324584032 559050932 105684825 361293102 909167729 967931700 821108811 859766453 553811893 874175192 526313242 871788925 591733214 612231415 323690696 680577724 375516484 630934718 828175091 900485234 799072249 910880085 996587186 998344329 780488314 897605627 159810883 619037971 344316772 654343991 806110340 849260366 908934318 916804826 107275270 904311613 570108595 744635571 830796881 939367819 957557027 978908657 705112632 943778589 9016423 474192144 537408714 549777894 950403792 992998872 726796337 851555010 270472600 579149733 721804210 879086789 650735086 677423661 613007537 826253508 914889457 980650991 827296037 973911831 806360112 903905937 624862004 943883137 330431864 593783931 237201298 754414914 695933889 950652022 477185690 507669243 509201696 603957492 712312754 743686144 885877962 977119498 383794684 427596606 41913092 46255284 279909003 789521841 3484567 777487333 765216761 909906000 514039286 911658608 994517414 998514574 161752044 870849091 538241263 833915435 607275904 746185594 352213843 844571691 863681286 956254713 66428843 456455732 536052406 892515249 90028310 608255357 374951165 991721652 493827155 769930722 88039421 339667479 875604344 882865552 800857694 817626573 518477832 949699104 485412586 685944965 579366218 983071844 816384005 989310016 256733158 549499718 564632052 573294272 108503723 564402523 731247001 814508700 561486885 622894294 161999122 556935361 172391353 371996380 331861538 718023257 404628709 971166039 714655434 930496515 607122352 674240115 407587296 806621589 365812319 897850536 237665604 944630900 183329211 226733301 559782619 718500103 392112088 787633083 3153291 701027234 665044864 739171906 577779793 808240777 830355251 978633801 657446075 741901664 513729138 889773680 98344480 801465470 630705720 707825864 423893491 890252949 734075534 800179930 457514297 623267916 939253944 971790480 167411547 408864418 278823333 523651716 338861254 962246962 548315409 814080906 537867303 789619005 997850830 998973638 993028904 996369333 62940407 824378243 509559406 538472516 228079766 444021165 344567293 953997910 922785035 990021667 586307613 897802300 974522320 984631354 244120961 819911256 854491416 875095789 403545082 873020485 228613037 349727593 539389051 960321461 64307997 470912321 967244236 993413078 408422515 582408633 778866774 953217415 638201942 835042032 30937190 271281585 227229994 794669355 689329679 805629360 501646336 752187363 441858174 787158353 118725779 257266510 493587884 720717048 829488442 954725415 164436692 956355675 250014253 635507923 236437654 969176501 828097121 985508645 541019278 928839876 414674115 843633236 72753232 789588583 289170933 581559568 345643072 926596585 543370233 548888650 825358017 944502977 761893396 942716930 360583051 832331916 613632029 967115780 615369178 821462935 335554476 422516120 183155237 456279254 163416401 895588578 25109696 654860383 757185354 867089270 246242082 732610851 252573026 558754090 425986531 818915586 806164515 916838643 834869499 908740639 925247094 959145095 285835841 774208971 932195831 971584969 12020517 85593383 791055745 901469084 462458959 620730943 79199539 488647121 793076438 865544526 417799755 420530812 995631302 996760350 380218085 594744092 360049639 983846456 661682388 962617161 315691145 357621052 931680445 975249931 464237925 541050452 64757331 719024582 603174604 755055043 123215610 229315000 59668221 812761909 740110156 978211807 599583979 751827128 99245960 575460967 820888323 990005040 428716815 620098707 348929018 846394375 505880317 638164734 868445355 975027483 196513803 336259123 577815151 852978738 530396525 742053632 274028169 524307039 297394121 641447406 626887292 766613616 645241164 884405589 340193241 624145331 739565679 982764809 635017191 827591497 452121504 584336076 212237083 859955606 460266334 834225071 6475901 107301469 102871808 755014945 124323367 905539780 985247342 995196840 444593618 580346756 737585895 772946767 152428162 426355957 970180598 990662724 567242368 898182826 906501133 938742587 27213471 71632150 723646401 933861519 835227224 981230921 48175714 139801468 828870028 892745140 852079243 979989373 81211370 171800644 556088750 726315454 525177329 765906420 912348578 935779513 794505003 927355876 11132304 155688579 947750963 974917532 236677776 777659515 325394129 938902338 872869421 969038189 756826951 947318413 991962332 999102336 152303897 935711829 289086930 797080225 674984897 963296109 762929551 839459997 938181020 940225874 693487129 719091244 845744694 883691571 615766182 832004984 33164684 148754861 137295263 642815222 361721591 513952342 24887474 363283253 197084965 821780707 864393715 870207281 231729542 700824821 374025301 680160703 467632024 655345163 9921877 252020389 995994954 997464554 624263655 850841288 230076446 421070208 658447250 673255902 592436298 721341903 159336617 978892782 353831825 874432580 574076737 811236871 500911508 824180638 913395504 951940475 567222812 974840347 241171140 684351645 576671128 933025102 223967714 503289806 503490522 527676363 82806344 192027213 57217293 871414135 18890763 176785076 721226655 816018807 231207226 949826265 473885263 639998297 935870031 992522547 35325906 65078787 382911124 590803506 592897145 681799704 965283460 976463628 70807332 785294371 159073766 277698891 145418881 228251411 638630521 923011902 822418464 868000305 161271512 255012281 448734060 706839363 494540747 681155294 682681756 989572853 178119201 613085035 741365185 923431423 26357926 488861243 390275119 677031205 432121395 949882731 850947938 927660995 155883931 514604517 201043359 854885029 839398941 991745578 936160674 998636642 645486867 994848011 789521050 800193303 783067704 795480584 419402887 779057325 290779305 638099787 39833719 326831839 776502067 878646985 346759156 816542104 321167273 683061538 858081113 863366269 49749826 654598354 779215084 842322576 293939862 396102517 90817231 204755016 666463528 834871799 587595312 637562404 906493233 943798788 22586866 426009472 549437285 827098338 986930732 988808297 233289960 444043399 130139000 699294594 887091481 915010352 35733111 814118074 124277141 648370919 28758937 34532006 879068986 907447925 162487738 548070563 41783089 767886617 647905907 703986400 97796746 563087085 489741857 589767812 19609043 547548239 852809705 891750201 782559885 863407185 93760688 565296905 438903487 784578817 154857778 344727230 128588392 787774218 389531952 618945393 484182824 862873266 807038671 864694981 594155521 659916408 908314601 945674659 352349398 697245735 282257696 821771218 245932026 674592634 963820668 978216966 249148801 509031724 61945971 599130300 904221364 934505584 4749420 255100433 38984812 720101285 408025398 805239037 858266799 895408392 982996594 983184495 697919842 995262467 796011522 819737215 132239707 245687061 692576733 758204183 900515937 923578331 23526148 168214348 989766290 994521990 185864278 907986383 4591898 538986037 942920151 968570899 837981250 855600259 470637764 850437563 224799817 763244392 886450934 974577971 676453015 872519780 819200453 985958836 111441768 554007663 758403119 793548444 11188147 54410131 455612403 891906088 516330986 522083561 902858819 922847461 77681460 844813860 318197964 766008485 996879694 999385607 320023578 683533357 17331033 97942930 249686197 421678781 906740906 916686328 384273084 456934757 171387272 386882604 874761107 977317318 904272217 922767300 347595139 531224278 576706394 661512900 230551888 643790197 704053496 895608034 653420997 864244365 608842067 957391647 911131242 984798192 522850944 679770536 84655639 261117359 182496924 851126608 954985789 989024534 654400568 930437745 559934236 667369880 282855802 636284634 949655599 968005757 200108316 487328527 654490161 681137683 301034710 819087708 103878220 233262775 93884252 451847264 862786627 922105378 943027769 970211796 791492936 913764401 538496121 575617120 88427336 991165081 335665139 794822589 787117958 808777589 59935713 798771619 381529763 695231301 832355562 953942508 848146625 948926399 675991360 750106361 209767195 751098062 80759657 630817586 433234057 900532185 882152718 982552994 773376199 923657259 263651614 730564837 165066747 452718310 482058228 830686647 956398577 964512749 47131678 939597289 750514755 934368731 881361936 996690727 924031329 963307139 69265567 93835947 808922075 960204041 752064557 909034024 33857983 289806841 130709119 141885859 754193385 792725251 313658637 811201311 255354326 332628400 793326671 863113991 884052656 969555355 146957838 749742685 862261410 918254343 328832918 474188487 218884708 986701834 666528108 736804821 756030504 857652639 450213502 636288729 337218332 543662437 260953743 347043671 589482168 804402083 464888188 919821863 861158690 882411545 497196348 606527007 86587920 808273400 453219815 617668463 202998180 992028818 94084082 480887475 822756404 911363023 379037164 975923744 571746148 720888066 23815454 46679164 179756482 570715817 533617592 949637640 281851663 566420660 761621605 934368299 147255906 892478930 58956599 202017471 195436959 391624249 10056403 941163284 339417017 882178137 439602307 941261360 111711707 300284169 43160187 635526109 952784110 991107407 73304383 431631061 792442623 819806933 862875820 926719835 896948997 964464465 647002682 807793158 770914963 801702321 77014852 111931267 270185809 803895465 899202139 905274868 914962737 926567407 282397904 836913897 418068272 423531974 89042975 675587819 822937710 905063181 476537483 676721317 194506005 978971992 800091531 871966963 935143533 979455489 61491667 829448107 829781175 904497711 910767787 929819153 119680410 739047980 618099807 852087191 994626456 999108388 940684991 964103971 742254074 947001879 828450456 877617015 429836062 440146570 917879767 984732867 52128907 388734658 109331967 841524480 498621239 739085448 954495976 991709977 167816223 179240494 680186417 939485412 858603899 898703587 237730096 341808461 96165110 848345326 42299423 980917774 459221416 808068881 783782126 911182621 138083088 161998603 773280250 937326473 293166286 909143418 866693401 869416647 761142160 999052656 102880520 624810397 821272233 879072669 23665256 394687387 426382836 891813437 704078277 755904705 336788055 638316312 687197434 944079835 930498380 940849895 225327086 231022779 14601858 23401101 932884995 932939874 457744929 521941089 319233866 420954445 828555667 949238626 829343237 940381284 804333374 839821423 323826932 557334589 650670071 792049518 48542937 90695802 327284936 702141085 747349325 939103090 873883 55474477 266100353 323054816 47588613 81312211 592765334 645210234 739662121 825934786 898300123 929961347 260258995 292164429 167680627 739697210 490720669 665357618 820535135 909940299 625546654 957612639 240432153 584546583 763919656 786967503 886445186 905618322 128492883 893902447 328311302 719619956 705919578 709616363 311334294 447605686 689486609 742786461 164557669 623982120 1112529 422817333 730857217 742199264 285647261 563368036 855554577 933094039 826059457 837335520 798425709 860220710 551693749 689890439 395819232 663515454 994782346 996623377 464271484 605388217 810987590 990871533 181981242 690216992 758773810 878454428 152717918 415063395 822350481 843096464 358487628 425399451 261552944 600562466 867684065 946312153 315379832 858715843 331756206 976078677 413723651 757649159 609184144 747296777 941893090 994945666 766436229 999462745 946567627 984546888 496728853 819648684 354226344 731034422 706543263 983254692 517204783 752189990 673587908 749358337 147906322 822258724 105659089 442621587 128558445 926677020 115866497 156139795 86128930 318971739 40454880 132505105 209263629 722880813 888816383 904261669 893861967 936982761 170788655 921668873 47003108 807449009 527563213 686069948 60741186 138834199 554861406 625239225 486781997 515748059 396226074 808893199 960664315 971844881 338978046 775409146 722155908 915750588 766633567 846369521 993233970 993965926 107617725 378674676 5349103 441527196 995119323 996517492 675242956 898371614 702823521 712135426 825602309 930244892 141570878 495776755 295577041 442558410 245960571 899239888 934587384 945216901 345244320 647783120 863089616 885929042 521615795 959028783 458831077 713409922 545992735 824533204 396363133 666510178 737574190 913875670 114497513 884775845 799444579 978219861 758767303 894937089 341228447 654426889 807787018 920477176 584105161 608338458 380148386 828610320 627099892 907469457 259318414 295796471 822862091 912991108 352412227 611558678 725974862 997318484 170001354 788378299 120181215 309176878 287757249 510642768 940049210 945487960 678128763 732456983 461725513 847514921 903385250 932996743 934752360 967783291 813514947 939103611 240773854 389705962 246230739 352863836 527471873 664830769 142282032 722696572 744542432 927549027 164001972 995234332 448882252 702086994 723190 593139410 788027702 812544475 247357806 815738548 43908590 956902575 252570533 947862332 827001551 851020107 104568285 862614476 569521963 749426586 620112073 716714107 915467106 976810381 586854530 845309078 847034622 898661354 934393684 974508448 296600292 610653768 526384047 735950533 451040588 991534582 493206799 964005085 114436185 161261516 875769330 962824932 871805702 889786156 467570822 703339695 493944154 971114159 828505800 981538139 252524743 419023782 467429187 959147224 826416888 861621416 341245137 573461496 531216506 535131176 766337120 868440491 609549151 878514559 13488455 820783085 234982893 924596906 226045199 675468379 550401639 926595110 574549910 637404267 748711837 914656596 303925395 620062427 97629847 190652342 346597901 951103277 837469547 909050474 829215840 939691266 739415552 829626271 828455012 944728039 813576565 940622110 649589311 713901769 813139022 850943706 77108387 586860269 512781979 838558673 57597379 860820689 735616427 915115583 631534397 671102341 429989246 926698087 172205403 955259332 120777684 960998270 125757490 620615032 338405363 928469640 302508651 955517757 151138380 558921923 972737676 998673089 448375840 875830805 371259953 826183509 531416475 782180756 97250345 153824108 73438675 187121272 463843710 839849174 465980331 592135902 507375915 946161068 438551239 752432214 565929556 905226549 7522386 86217858 847012014 951019152 711527861 991401923 817364075 911985538 458359648 990005322 685870614 974764929 341274279 726647881 327132305 831150528 834134072 963844534 437557683 711645406 130471111 170100103 253944666 361336073 146042806 175500979 227660873 614539592 395682142 974188621 117663403 626852184 499750700 743809936 106358714 556454180 711638927 928916549 867932992 920697490 538064326 786150932 469295042 977193164 552859883 982910718 471129547 888249022 954723593 980414108 754946126 980197833 716623581 851925370 383502948 888224894 229784953 990343179 785065307 893991316 664022881 699756147 623950772 970342578 886208842 972440418 895002055 953778726 320860213 707327401 520059163 807598566 835676581 866899445 715416849 982756363 495561675 672849009 574957565 784864930 884328147 931254403 606171309 795989845 137625811 381241340 265882854 291559901 465653555 590746454 515081446 901295983 939123743 994178607 340327352 670814613 515325736 598535364 534348361 572262032 61433311 712368073 585485465 895132556 797047566 844987550 565673154 657153606 55283490 160512082 285569346 536752154 124654013 390802380 569395459 601050789 8851824 656523216 466016976 602194260 451397874 817150654 515282619 631167601 193989586 202217081 551889387 995664775 2385812 822810511 374113618 377388128 212565260 328993979 683776064 840386696 669914985 751180089 976462158 991112421 256410444 308874308 540386776 832854059 807607521 839309071 855974696 953430413 66324374 732255725 861580184 963965933 210237919 431593129 369639556 659437981 975153981 992067868 357062754 597370788 580834796 998796442 344869494 640224147 605132535 971535759 769555665 791932911 376929665 936399146 697870822 852904536 511543596 827977411 617325352 690405259 156865503 322839261 776343781 796428508 96157570 677761677 989215878 994183113 442242401 763709722 917194894 937368068 542575327 932439536 470960310 682350891 998298683 998417039 746237769 993152750 176705529 690333274 390041674 405584994 378926880 696718589 245700783 707163830 868176999 896810785 4514862 401970932 131234314 280757037 340016063 499307853 485373510 657469370 49854657 387785126 237954053 921403763 238501871 904902748 914020329 935236637 69724842 992921118 594423145 629943494 229395097 686827273 800410671 890025508 315896270 665086639 88969568 292924488 687408218 891923865 960801954 988650796 955443568 991849440 127437244 720782859 785859570 816549315 890076207 909946182 332805932 369067318 709869393 730156475 327072313 704411421 321231155 849605212 958304502 972490530 135666499 588404603 36729765 118856686 44783592 724764372 571061732 935883215 65044730 248021774 84871227 536569467 715946425 748838762 211784352 559965185 267525891 311253525 497492244 614360419 246496671 506144259 430280384 544976960 801642132 838815067 474931209 660003011 888276435 911026453 334397681 629024356 6050966 806552750 187445563 617210569 983611606 994928986 588757449 922279503 793577034 846840788 687771103 783385739 370844525 495699419 733321845 768972471 138039879 178478415 254246106 446634096 347518193 923562762 268190065 721269022 202169848 863765113 508660466 836029050 954112661 992863278 819678442 839360906 466918124 737515400 274683879 957391795 600027067 918395117 183597103 318232694 335750741 720793368 999808227 999887282 519835727 521198313 582317350 771178932 137822133 483902748 975098626 980704190 869048197 954894201 232258055 481175715 105376631 468325440 408498412 781850635 713764003 944915433 655945365 830382553 533152599 629415173 472495979 766897299 66652427 782072184 770359470 993556252 237641479 930299264 862434404 994621969 257593133 710809831 818882886 995572844 862257691 874823689 5140945 450362576 580919210 981576606 117473441 569119124 715693622 760435852 854896034 914983649 914734323 979224726 502709928 906691224 136338179 476248753 496563511 963511540 585268875 729445655 194443687 594502806 439790091 857394031 447859079 671467328 99454061 805350281 368874390 726516074 662187653 682591150 676538114 762845101 56461419 578353561 303067807 434645021 299992692 846858171 925152591 927965795 302712455 859729692 762101117 801157747 650525091 913504883 753357288 937862580 660603773 783758575 840215341 904756488 428650549 577040627 767401437 830427236 175449909 380287563 594156458 900026198 581493194 998557447 812988733 925542789 198011148 287584372 490092226 540494587 361709925 905669767 914418278 973586352 176162289 306168464 177164284 735971307 860005796 899413055 956775591 997918750 336631875 685188050 775888349 887783044 195802412 772869009 807853520 965115377 459625644 796402959 390236322 704630833 263578189 882909344 153842970 943959224 880853155 895960795 613207572 615063282 263662118 466877663 653396622 889519214 584474649 619092146 166646795 911362373 288933856 357595184 415082917 824274781 117992772 832566075 280818423 899382407 973443898 974023662 962532389 992154829 788765106 843840987 662568073 982228885 584024940 781884483 4442891 707524979 996842728 997122615 931171647 941037108 818291578 895223908 998781838 998868982 520183901 564512918 708275155 781349058 374149967 600240982 929073296 996959348 524335875 629240013 825061403 895161698 815665638 837149571 687840916 725032969 672019810 778226943 374192632 670186729 684520922 951144677 821004411 911776845 613021715 841146502 569996202 843717839 532520302 888091146 370143162 837511090 634852715 893537650 21822356 78291245 338692004 570059782 845749362 911480941 861352711 899895732 599054127 799123699 651515891 829842679 678228945 877711085 229524679 997937601 705216766 964203232 959654923 962632025 653818417 958655679 367566760 378918991 648688034 894128100 916998315 954598771 717258326 875805528 737021668 959417877 592845561 719788583 481495023 815740599 751107110 999322434 14933724 528825823 317970811 359578110 726836305 736851355 133282164 293460289 532746664 579862409 181033274 778823076 842163196 852823092 783408650 876218012 311246543 766549819 720146993 942029732 457426212 747526127 292108436 401409550 989134230 996430383 370459850 605453312 975266051 988868951 593521664 763226653 124227557 635864533 933679247 995109433 981530782 984956567 837861162 903968953 682791263 959561799 900265014 955418625 352968073 576901800 565646686 810843075 544339240 678570504 60152128 167502292 287433898 379963285 938842651 948882408 391765837 597853802 889011533 895913129 101811552 778586336 851495722 921629480 543946422 608265914 909982550 913557516 46537697 56179192 249636621 412516315 669864047 808754972 45880896 155955273 629392400 972622479 353114800 384600719 916345443 916368589 867941043 898459390 807592063 987999949 701029657 763974074 369818596 488576594 370205795 499867056 607849188 788527715 370234864 668779395 706349385 905485253 780038202 984777973 197231380 340256075 149928056 499371567 444236895 963999854 345735622 600664169 655335018 937217863 254882699 752473040 49973034 174793327 227803644 707773927 903303477 957069268 424781243 736510221 566705399 929958991 561398055 895534919 50726308 425458673 532340311 789298867 836810234 864842201 713448660 748818131 156790530 186495501 437317642 749713794 415959246 741104125 651972125 838158636 452461161 976198827 39872864 345099844 869961281 945063861 692210998 793402169 592666614 805963702 625988799 797043215 777136279 803332136 615346273 976502771 645206159 971082070 374761128 853496047 625053985 825929628 87892098 634673537 6954606 329848033 560743608 967663950 624363580 901586381 784423708 873297738 217197832 652107969 421004724 773458437 30772488 523602117 879065866 990798581 381889284 633655346 128497402 266628477 928825267 980005482 233319285 791182949 224657159 427871906 582793552 864060240 609334856 664629666 261808148 489053414 414886472 820619893 706547311 791096202 888963897 985751405 520163880 999332605 349895505 544087127 798085980 970549900 403480972 879395329 133186269 699896348 337153966 407836575 336945955 360008110 51795617 910713985 250483528 541684825 566420030 838592347 970301541 998522302 121746297 785800606 410198102 620341584 237377825 383721954 973913475 981954606 890381638 932566097 658410322 689892707 741299079 936561802 985944288 994307833 667566430 837178884 481814618 652043056 795879230 863512742 907864450 939508136 603430715 610410552 258124554 996168070 422630981 662748450 602734312 675074250 468923434 798724630 243918456 713518057 848754565 918197011 54944670 323049864 1550797 520429815 891318878 980423259 960842631 975619015 609865324 622260225 26236162 215945577 663506589 770473939 645315623 998590568 896597688 972845843 969697788 980748134 343122593 728049932 516332656 705631371 568407787 932600605 286891193 622121911 499404453 532469041 742412092 767095548 324989238 629497124 101667963 755586303 943460863 984958953 191298249 575992250 514025837 654319738 281222065 818921925 562675246 686304647 220178570 539082323 141708687 828223081 970343746 998733167 915513105 947873376 706350699 741755158 598312000 803927690 636959129 781494050 198963058 715257670 20921482 165067347 368142167 755508652 451497522 972003181 862694192 926530072 911881754 961831356 787306879 945700905 544842605 765208533 974043798 975899759 132930762 222524401 122695945 648007386 309009288 314062616 146369614 458774416 574893276 971413211 88863731 948916903 488744308 617888755 705558988 742348507 34359200 989013177 291176228 741337593 961651491 984622966 896740752 970335741 761813440 978962059 988772569 998423493 392261146 522090455 169207582 272656445 606437430 749206831 396980811 476604660 930053455 952578477 291157720 848113565 797100683 874179343 300257116 531894022 5931310 318306304 94225609 835759964 11872790 254954347 999366032 999616956 226580913 391707768 874739776 877975862 369963365 674838717 498221333 606204083 882063973 882561256 334474552 334491173 853345746 855749652 902699746 928615433 973304707 995821004 459460526 819695343 104815797 645995116 554764883 878837497 761578857 789095800 206031833 938581591 609548639 748634243 127783182 227029691 29073290 416004574 983117154 995859942 848943733 932137864 373061001 682299369 245337171 888840696 628542424 906953136 445276206 662641183 457551940 461197749 338766465 649667970 213105508 284432479 626624211 680236444 714582488 974291749 247888802 958909251 951344404 977672915 921847656 939738305 401023321 521011581 997230127 999882834 448790707 758569293 395977200 519354082 807832958 924883790 394311375 678542394 520505142 576441161 105755511 167154630 748348377 759299537 568956475 926978748 896897591 973696814 527626560 986149589 137301575 436619323 927522412 942629942 608580545 774304944 919805157 952539654 6074005 923099162 44557049 695169170 589623720 736241394 570155639 959574384 277832335 849508177 930920002 975770270 453198985 749621566 143289210 906718494 115733129 208265450 988569888 994889685 105188784 265507038 158510810 217239367 514035531 752561359 5266020 870786752 212749631 706926547 940250231 996031111 166022103 857337630 978058530 988448791 920776386 962839417 370935961 552681740 968216468 998149112 140842751 828481719 351725490 834379776 284969404 794173788 718361921 853674171 64042780 295564369 327833218 502341012 254232950 440198319 322206908 459265265 955940929 966160628 808345994 977863183 725688816 898436120 635528820 810448823 649052182 842888153 41200442 685614090 437418540 808307554 622462646 708297425 444904818 896052558 973563127 983158236 86145654 807277483 583786133 745909764 206877086 483867464 33466882 497136289 3435114 301879250 141005623 911183468 265883855 770299307 393634325 523305045 343119706 621220323 984112501 999937309 720641910 816684494 234130457 367084313 703205196 958035984 364264662 516542705 51786359 535268719 662741359 960610981 792823782 897908348 601164997 924788837 248767695 288444497 729066415 968794847 980787280 992528348 666196998 769272588 448101690 462161294 904779843 943662996 543884625 972121319 996833409 999965168 640069852 939891378 729393456 960856115 313957747 841206090 544398525 807415081 463879241 977731828 84481975 709949368 889400677 942090669 33811002 260213272 164778961 367434483 977331657 977909533 704467127 809885174 960356422 994252601 711942637 717304761 387858545 730546397 786867735 842495525 235945677 462889919 2062829 735653962 77277807 664486203 81603022 95739738 944241196 944377204 918097635 990244016 832403099 917914898 477587505 878593153 189398587 233565180 259106018 462635881 820917189 934847539 389372780 659010556 140180191 943074089 559722758 771133851 369218314 506608353 225860924 894289781 309760141 863179612 604148288 966971904 835693670 946794648 142847602 893821097 377468476 809560681 958324098 967492782 929139512 976968089 694418126 718339617 171769663 831270805 189567446 644332136 445140759 580021063 720909956 743292971 923997079 943668200 217579993 484048656 959004960 961871904 546316853 610756263 530536441 616573544 402626338 474678285 790802425 927805579 113266768 464455023 521811150 755647791 853060552 871503859 242538326 319328514 627357135 830440880 556533918 963267629 42784777 458962514 554538926 889390462 483432001 718217420 918419511 962421026 141057795 321992183 556960952 661409507 466700363 492173465 232630232 719121582 663880946 792833816 129059861 214437411 801296661 824280039 939003539 958551430 823856577 859338141 925682744 960243690 30079861 574919660 704647524 894192435 367105960 709981534 366103295 951718914 738531379 864833314 812776392 943070992 98475673 879554522 948119600 963532122 764039015 788958307 679097503 799751805 641789735 756591108 992861480 998782642 494879142 562753382 780684031 876699796 315709291 848719410 803335176 975823871 63918423 718554421 791253087 904053524 293346168 318300806 255418077 616017691 399726095 671377570 616931224 718565743 322373397 575226892 855118548 963353015 923602733 945370237 140165052 300472052 990797603 992687814 760737412 771761347 577486008 583971664 334496718 675546998 367799511 723870250 225200643 508238704 551773688 742601448 34902043 779030253 990514458 991553865 514400384 608726112 63698514 735740130 317106430 835669884 821068009 848666689 148600896 322713920 828051311 896102389 34557933 159117712 963445037 983308752 720771333 969451891 18245890 381271251 324601942 666478640 803683670 945991190 559743921 687740258 707067321 840542566 796263988 852849361 483075481 976257828 950019888 992195736 630897699 880174498 50775119 539376614 902061241 905769564 271757353 847569946 520610952 791494602 330964158 559022305 702561123 816252914 23009534 450685598 570603463 891358742 146057642 814271476 9536213 879387684 377887201 806736393 478804765 965893876 253150820 551473840 455715831 763073812 290079246 570887767 953050795 967831395 869379341 992595996 974591781 996677017 333041907 743499248 100641727 979553908 190408726 713380506 680701770 698011664 586273395 688531979 507999776 559767304 811938193 999986904 982401517 993816353 639322372 996083318 252243084 613141289 609907209 630361249 88401480 694949422 141956723 143446577 496382085 510527351 647694110 898945189 955533571 978596731 645994414 734822400 670842534 973364214 970380088 993317846 318111085 430613359 404786117 548858755 194724164 491264627 72911310 185917104 948962024 984795163 559718779 747644519 648203923 859847996 527690853 622516486 301587528 720347117 392702559 991644906 252174274 713446425 635548619 786050655 171601886 588231861 972978714 997435465 841799333 876079308 260039916 439692581 921783408 935906743 368050835 623258265 443689963 989732243 297017504 581460793 777096797 896256247 763566222 839078918 622572752 683553968 784847317 947332297 879719204 888260929 287124166 766644522 990233495 995779423 857676702 995617782 950631118 955784153 420449632 650929016 390375930 905983245 32944822 978498954 574588490 866907534 184935000 257818027 551124719 926957930 267590280 896255169 987260986 996488336 888846004 973806198 817797886 866444105 558775355 816502779 962885951 984246191 835138550 860183164 841551050 881093498 302408550 506223546 85019872 369917091 169971793 413107053 906863610 971389330 93102205 288208328 994900649 995108847 18985996 962006825 411163782 527467181 56500499 849068038 832019258 916024486 236557888 935397854 942692806 964938241 589953564 617416150 126727050 394618849 790248877 931460428 234663966 425799557 153215986 778939549 404829515 616483309 641848703 948600015 247518809 591236478 113383565 317230112 276682364 355816905 197035044 481050367 371623580 777284504 705867205 743146935 331227006 933288545 504255402 797392900 813954018 889481973 731209055 910513717 789798082 920349750 144342192 182270815 566187909 856200973 45672965 469468256 177125594 900602121 518308804 731199527 674070376 695207713 926500360 964384975 665872692 908928099 599377494 856679044 253671651 756307048 430839852 712042109 836324564 963031188 196448603 236967873 697876521 941124715 571873471 955820845 419703614 419785318 775837573 843107071 283476715 336643982 935192450 948726007 831200872 837946646 364001138 430204562 105768981 131064422 272064540 701284509 914864434 924374884 417398526 915035828 885891433 909079305 35609142 518295627 152339626 815340819 223387785 224319428 831340282 888411008 196632577 534284542 11645609 524848933 855255928 914126706 60098819 682896757 582156899 958728331 315736898 442546294 210519182 333185880 928012294 973650061 313383296 445877949 286716219 660621531 90017902 679834494 91640958 532388782 980822512 989973315 558659497 620711150 169905324 551303866 360677531 744134191 263041816 625231661 156205936 329315952 782438463 949521471 867723976 909219006 369100239 712549723 380373932 792508342 165728602 832329744 732006504 814171734 828823183 970773319 224432789 383853230 947321949 958055923 903252 727108745 349967820 954404307 18303103 467327578 246112446 747373532 151562308 297099903 66654644 761486559 811829750 900283736 201933752 620372189 366206197 391280194 528048803 979547910 798807149 973044705 43196161 61398710 756860596 814762595 484484622 601490219 36599977 501149676 33029478 154843364 932788522 963308785 902036669 986700547 436383047 734827921 61698366 915377650 909446153 988468162 407182310 916860017 487040042 732631484 35090057 461855788 928335264 955786984 925731111 952217142 33515587 299299082 627645811 629747916 457095123 813421902 494896020 787545691 298598340 698567917 722945174 793844739 46769013 966415076 690811036 917830948 408540840 869673383 336040151 480062322 424685772 788592784 296663955 712725878 702063218 729649938 196318840 980611088 479520360 535200418 295298140 314849836 189805776 746910994 861955302 896259362 998033140 998617081 75331341 681537520 763564666 973044052 937227204 948599974 594591519 902042816 297184284 908645817 882273504 886011000 597949062 656276629 510824774 712137816 480185825 581284019 313702121 427669565 832173385 954596304 227306049 573377366 184091243 869919819 838980595 926814003 70404730 126871599 309575943 508243541 334896062 519343885 209351431 553493917 925829578 988679618 631192237 825203058 200912947 477283654 55114145 273252663 575939592 913716671 784242137 851365901 626885942 878404313 984420083 991948515 392653331 685698169 624364713 796532621 396732442 649632901 757616939 880346901 784126178 837855737 167269074 744819486 153580917 320578828 518300140 836699794 302069487 973970859 898764850 929350960 537825547 908772911 719216012 936049046 744158246 895040469 824012083 895198704 473052473 601849312 574829541 844967008 924044499 954177274 912634012 947144336 177607268 903908832 245906407 979051854 374694385 654923281 225733461 782175752 444541001 518437062 380568300 702942894 455528836 739803063 702096473 938641296 496899987 817300977 15516743 119744549 251914199 557335246 858005410 947362750 243999611 937381250 189301868 310947899 131912920 170374073 933189683 991534771 69689226 486722076 844650262 863518138 477795794 890732651 669142346 686127110 228714253 277640197 880091410 941568258 196274891 288927144 815111445 834443331 572439596 649887366 572123356 882032659 33543953 782974350 427640034 746986353 258579860 482113328 290523491 455806318 912576566 975372511 465584150 503235618 138090533 432247203 461285127 562267236 791044545 880805393 240905751 707867207 258368799 760264779 263146058 670509526 704692300 947496609 102136038 566326029 123332494 969876121 972748987 992241329 759767889 981255796 730448043 744996339 99889129 940963627 543911929 758875753 917133474 990065638 160944162 977225283 610058031 876701313 721734508 735390728 14521446 162347593 665841721 882962966 424455429 834668604 447840637 569856054 116618277 812907702 859349140 909487517 361549362 972085768 746454989 928724045 237974279 627359170 554924245 852819440 342563652 674916063 12668756 918623796 772032000 908482465 752673957 809357091 491184114 500546004 419738073 790715842 188634198 687733628 280651385 869894497 355877749 938352491 859267446 942665989 25796588 205639471 239390456 977653610 293981841 961448594 690536331 774780528 993473748 996496401 374021227 635614944 847280825 930800059 700477921 769684301 426402115 799093571 665023885 943356416 956627777 989169282 429480846 935717483 255438724 978700719 202178482 377937699 694001246 787789857 364802155 832531951 846027789 959901058 727560725 944668548 348447123 821358360 30917017 260712551 539946712 555396397 615976925 664968496 617964405 623494366 510541013 804955980 769481801 964416219 603415229 815878038 55699020 328389832 952813328 968063369 717908193 948508531 696077646 768664501 906113013 973735980 704570261 809663271 365823730 471549670 875489082 899938756 143135668 852579085 878352837 971522264 253723355 817200679 72439738 728707713 514554432 524588891 855355498 911085472 578459486 608157539 786233071 897916452 614041115 733501954 643926931 905682847 901365524 906275225 702157015 936837214 827681000 989663086 327471581 775122602 591925098 770351463 322435644 449336456 808469151 876433237 161678185 921661347 480184330 693374505 824127276 907579610 584620386 641538079 937638060 967846623 618611399 902783300 951540992 991113294 539688068 951011573 41027575 319363488 34767867 562176806 742712511 925714820 854511703 906192687 540548615 980413364 617727458 930554797 165618528 796521195 763098421 780394972 590865475 776492906 705358985 894323106 256670879 322696743 880172669 984802953 624402315 956145660 830088829 867675154 567695315 584411969 145524313 419271865 234780204 547745858 945935255 965472657 583448859 823077825 158558080 984107355 209661158 482255166 257451345 801624073 966635803 996263800 619223984 983718847 985456440 997790870 585568540 728740157 173062315 952916676 373825554 430660877 592358703 826359776 951044186 987731774 158374423 164787313 762248369 803595631 675340150 847776390 321014576 778195972 849223327 951376688 801484292 930855264 151721012 446743337 795165077 988134566 987117312 989051813 236352453 684623472 682991942 825751828 513225825 516241895 560003250 925085410 521694226 858595630 924057249 969859893 543849600 944719321 988349855 991679779 886355222 934997474 841440938 907664410 576701639 821695492 837941054 841218791 260141078 659088343 612921560 943851294 991678158 999871972 631535700 875380555 514721458 965312926 114667942 878216171 48445419 541316415 979272414 992745386 261458832 585472380 187358286 588583079 214112668 444218832 251323897 347345892 665972162 666069989 437966989 585263191 398870845 631498709 784976384 922428092 383290986 467958034 562929978 911687706 333308672 734487019 276573668 427207587 312549776 751500116 895501364 904094452 654245937 712831541 35293505 83675555 995064807 996602528 726785775 915004607 480116314 660235436 799850456 894382802 599990784 843003394 443425786 949068275 317282194 523555252 746940348 779010937 232353299 723992187 609363946 810385236 175884580 436051176 41110535 752071168 9215530 115006748 905732608 966293023 773758994 850583858 821093307 900381302 193803328 799881105 756606039 882866484 822145796 922992217 327992253 964805837 972903102 992082264 642599544 780377707 760987967 874179503 679865337 680210446 425495845 830171004 85072341 842957762 270521914 533524439 518245804 974816747 872366970 916637452 287442758 455848449 816668930 817271169 853352014 968631626 120859137 601932831 585458472 628482573 885404535 931442664 257781261 493591451 955583329 971731054 776264965 799987134 979154124 994272249 731922639 773280914 131653341 722650090 506634443 983135669 645916878 781244903 550965842 966095710 343099552 990745651 79539481 99770818 202406717 876411879 224921459 856428911 913434160 973760290 889586630 930990810 658734734 850749999 824769186 954860022 346385426 422154734 250846506 790017092 233986533 856258188 923274002 972707608 319309244 588451569 340764125 900569242 775334289 880119823 484388057 638116457 586080621 611916011 434002041 964381534 913837090 918633787 767491515 884063810 304214568 912713893 192045544 912487897 95289309 579526517 962353256 967044719 60982833 138576263 529541956 585147864 741815181 795350771 7651762 173928014 805328735 878676005 362864712 893188724 212346771 479775688 713989756 945669098 102586563 442060458 415140752 811717487 338319852 833614037 431030468 544108172 70122952 896004279 330677093 547083558 929567809 943120832 38446372 91473745 316055332 702362089 71564168 896821728 718406516 848639768 202211848 970175768 54765574 635244924 354764232 743900633 141926328 434138831 613154081 947232637 302594289 581309373 66115694 795696547 919228047 959084047 639958002 882635952 197963122 741422382 293382734 834631687 354213674 484056358 136763367 574112545 418852037 594095386 645367597 707673995 600608342 623042106 506674714 697225899 559304051 732254013 433203398 461739367 754423011 886262315 761695038 951447784 69639331 719351154 315729000 856797386 792532761 985617497 152790032 262037690 477512587 856802104 196895103 953944495 420556312 602686213 464845334 678387633 410652668 923039259 989073839 994035988 386853100 727911590 61947741 632030106 102640818 489114075 877228021 931180769 488704880 962474050 652303726 773501644 252712334 670493703 219947367 578529683 190613573 311416685 919784980 949761791 739385067 832700415 661803838 799149950 916240635 971799005 890976005 916035802 365069807 489217753 179837546 689409523 677105703 796476602 821750368 908537357 270065125 476800197 687248196 796567832 734707795 904065747 987156973 998117237 787686184 975919516 833390179 952044412 368529836 620677944 103507260 310807870 511890478 803350037 802913794 855348445 536800214 809303624 459540083 769781154 38502838 714589403 725660270 905129497 985887939 986701779 722731059 745275027 455234462 738974847 863660766 957801093 605069111 856507131 2891532 662427473 94296354 864647133 255802325 401037985 435923433 679541363 302481794 891852693 900806233 902635489 727308016 761411785 989520039 993053105 662825195 821875561 766048608 999775671 270110706 476972372 153320253 158217089 925669118 959981177 29229372 951125259 454225039 925305896 763056607 825401961 161335104 674196077 963059527 967971548 758681964 976150259 930988721 933815274 255342072 540304885 236154806 294114713 95173664 217783181 545238247 692561670 78300254 380798006 19365194 340955899 441806713 853796342 598688594 681835629 149387139 160693610 135416868 231684098 458564948 525295010 408401461 458481240 853730892 946516861 334161647 811548128 334558566 359318498 508498974 509043403 419561600 695497397 823464301 829958276 392470567 448136950 684300106 712253225 804237782 872158148 830606724 975932411 826455354 996647897 602307235 789867699 380663438 558175614 94484421 675912346 982549499 983695694 22260767 989819827 85385049 521713549 472943105 753316699 305113730 596013264 543979182 615535598 110226437 413751740 964564816 974982014 891797780 932200000 334123719 938103939 609451664 795499382 220267077 661128928 965043961 989994032 415626799 878018124 220988143 986927655 194482388 429950625 362888625 813404606 34411001 521898832 509630227 582346756 449503151 854107755 491362867 643650966 9443634 391832804 41755163 999254494 657178192 868750885 21350472 441749869 950290304 984792680 436325659 488988111 982735457 995568007 310387580 313661190 236653407 577665408 996479045 999557763 456764803 738977209 36442221 530469201 35125177 310854903 71485896 119176344 792222485 798975419 642115195 877868753 528744883 576841709 778310853 912277844 407960490 771948822 393342302 992686296 46989105 454058188 344831539 892161013 672364888 946413152 874411798 884864616 50618867 254126060 556958500 769796294 466162329 570053706 452544529 541626689 715929304 773198204 903760135 976874893 582250464 733741665 178743368 991543338 358915964 497702564 68039750 439355654 571147766 821992691 890053237 991868035 745291519 840580618 674821627 748684763 296887804 809704336 383595102 913939789 143168412 243439443 362710310 440899707 787264004 824905923 621889515 837876880 466836633 950947574 78181125 572515545 23837054 439790811 312977933 924499745 183718510 891062948 336643656 378802248 198054621 458895437 907153669 919396755 25604548 887779868 882325452 956555804 242112306 755146169 293957011 806266872 999072320 999581553 284552748 856513971 818498847 905567970 399290128 900788671 100508510 129822300 722446819 730609513 159406168 268083201 641179629 689560108 919397599 965448046 507372951 808102902 856483616 939640226 556989771 698211018 627878727 929204277 850380477 927334793 747522357 959822448 441218936 584097734 880290086 908313184 70530986 140097456 375977268 725901168 463914284 761653677 450742292 938684672 603694196 765128950 827280011 857065044 451202091 701547198 582044530 705474188 135301855 490251489 829582499 855834416 996643034 998555838 261897196 416506875 372250839 910984316 296856478 681534048 207445198 346495582 41676652 410671092 195846376 797312677 738893679 795525726 815171497 881353188 486279484 495554766 413071691 787300059 415352932 826285166 545724109 815913088 207249367 643056649 436972170 622143247 692341441 728524160 602507697 834664967 67255339 493446601 932953727 989267822 437841892 952497263 607764146 796423094 885614891 935332326 51087302 415032633 102538304 126591572 766156294 881655670 383148488 637697023 646332737 799133544 545981084 720729871 891398316 964721825 647621990 706479926 333964678 671074151 230535046 828085322 234167276 885709870 895479559 971598745 944575495 988022077 868449758 918722874 50937001 389255117 595071043 873805859 281709457 698947406 528068514 904844353 51027723 221946688 834872654 924149211 829717448 986541522 131513246 904781641 431901646 566296629 221572876 771583858 716982697 723919694 289334444 444806413 619058105 934232786 655162703 705182288 115067118 530410866 279644680 288411402 918297313 947353197 469660871 968922094 679235384 841542368 53812612 872210692 432159680 681358094 261968248 402286983 147871084 898901067 483386486 613137874 95615975 603540813 550874247 680112391 76116837 278673202 912530294 977164303 364395668 819429572 321694998 463527854 221131594 789260125 400011503 713905389 222401370 517984626 698711304 896898519 11795034 664759583 983551000 986036456 308991872 470778252 171594322 277937091 433942671 987857938 224337396 909213573 908311414 965464491 662721340 999884931 740126628 831135812 485967524 811606924 215015012 864959134 391637210 861925860 318489507 560113167 461950574 960486524 697439791 769189074 299961666 808255781 815894594 983110073 124678961 669546696 175765540 304604446 310142392 436675124 741464934 838644124 762784579 775779242 17866245 579809724 453907476 769788074 916162919 925466184 347002566 651595094 946630963 962345475 757624451 833994494 826580419 876903752 410100686 955719395 705124254 831134529 798833210 841456097 804649066 850775351 412028 810808939 578913922 946360392 883538088 910083591 418924203 472486798 491713816 885286146 972139783 983864636 249747801 660204549 949654973 986982214 119440785 777607362 894849831 996558853 99451891 174885185 922553406 962873506 146576909 793764972 570562944 810264181 552669392 692619575 454434095 854499557 700301229 826151355 997247565 998296255 690951923 891957122 409291056 850621437 767429938 940998772 153601210 869189278 44559970 116082305 749093510 816285209 364431890 850513465 622462984 656559186 257579459 556282763 400482366 960978290 497468994 703021957 573565261 795535406 599951488 816378994 644252947 689066252 487364805 859153730 600839891 821259125 750115016 856972169 98392499 820823262 867225694 977950142 262010606 933750544 881912281 928668026 260058356 976713056 167621619 694488259 220783252 333109812 646380920 745892441 363290647 596635191 466480746 538376380 35445460 68932417 656901713 867089786 241530224 264175518 470618656 768170692 483431880 755768920 36985186 624260657 701877484 795002261 180856622 197986845 213587948 760845981 708971068 762174858 735443358 836050203 615100912 634005380 686474911 709446052 650029297 993545199 327856801 387319860 58454613 105050279 868658126 976313755 302685704 404882366 913081981 985765893 221785655 947692532 580189292 741597594 195823156 512328828 983564372 985717515 921194562 990773613 576650216 895932690 822089840 943495211 925150117 967915348 458361650 487483765 173970201 444270756 235691096 377125097 337518463 994582223 74368286 625931571 335644965 990367586 817168631 860749701 206935812 849127509 628902674 684259444 165940318 288854062 380808012 806369808 140487824 657084695 650296151 918128404 404640580 959054086 862666339 910596505 728752110 942612469 686813630 813748015 791933564 911165453 430905481 914614281 607813958 827566010 61207484 720791737 27978508 821947254 478726117 585215675 404283397 934476402 672448134 732365717 143480173 363476205 764522726 940131030 82594319 818059699 873081435 917240985 54645837 660022917 588469731 855292398 282896966 501411694 904334204 954749370 416320136 950574925 984374031 987022679 129248820 288355076 732942349 759341102 122065963 617465554 612312695 840545123 568643877 747542849 663367879 838858723 800331401 887548037 138085675 891532356 182840868 443270345 157415411 836019753 685430677 780127513 422580909 695707303 820041751 821708043 908449275 913161217 33617121 607849672 845602520 988435425 846880850 975111719 755519961 836997337 469307996 473697687 496489019 701694424 625077179 679308377 622192517 700441077 358510186 785376379 723068335 935171069 207014314 801326706 721709322 984024132 31960103 140444241 29970039 756434381 199750877 828961837 210764025 270531567 329723778 638539292 408835004 784808466 310130691 788079363 514221991 528276593 770404556 849314278 449003671 765393892 895782544 908430494 836103539 921023322 327617703 789028095 967548888 997747715 537075153 634648107 643733458 764108303 122959435 360300828 481672774 973192280 901496140 909531696 366800431 876692686 839574682 910947570 568189252 710849289 976893651 984307323 865393792 953235961 135344288 528175060 490984400 674927832 230126730 619710383 312265755 936220589 716472512 962413639 157254723 607778216 747505920 844544080 955869611 980995371 88798213 399704779 852090118 960776057 393101440 886063306 202750108 345021890 888172633 891277172 2873085 439649189 691921187 979233230 366419018 592464064 504842244 668213974 147692217 990673420 625459776 740066333 674881634 772707932 788428705 807146672 997554683 999518837 654485972 656658297 427053664 614223103 997757948 998373144 324699024 812691898 25556492 847633713 983446208 987392156 690276025 771493295 523070504 584454622 518003043 684329178 830075446 965661619 380625132 773277325 545679694 897816273 903564054 976421751 328541849 707682346 630552981 681480592 419473747 887327677 316362185 960610361 302016658 385731937 558305409 779574626 324041507 545891427 447079287 810204542 646682157 951889005 176543528 265942778 825313631 972859653 140700196 653723003 884131770 919837639 380368869 936633114 85953512 378499427 184298471 330922838 307926262 649462694 245296366 618266578 772239537 951154779 454485781 830781005 890384019 960112491 138802198 706973730 96606334 620970897 842642658 976804752 141706381 984898534 637273356 808899899 384258779 533963082 475450988 924890990 277912820 921855282 111455392 885250405 11454679 111740649 819741244 913485153 409490801 936238943 387416866 648983414 673274762 811125036 117805126 377661245 875147899 999804748 4514715 293018189 723612945 762542536 923688280 951649517 788064379 816731779 266971283 798611182 580384544 855618549 785393821 874509584 944994438 986797035 229468703 973707724 56060504 777114385 28294964 570766685 64716915 216858897 952690386 980564464 863785052 877298203 394239045 781935061 932259173 950307644 761934109 862077816 14436515 647199392 317165389 830946896 150789218 999672873 215071218 572943210 842734391 976705195 471170854 836129828 374288097 957643769 823968960 957033327 874609344 958253907 415609747 776889969 246180111 793282930 508705864 602629133 721452189 882082672 722748769 878159389 848125988 910023095 790110311 871487321 339622614 640413292 911565836 930484372 759399057 909440349 964834377 979999042 731092105 909002715 844277126 972042397 609003450 909031162 340015331 803040779 504574747 574417290 2954034 346103324 809021692 926534008 72209172 139238776 942317332 999479025 329305639 789538986 963998960 998001369 579946498 722743748 353831094 634907422 866808140 938283291 683211557 709506637 786171797 915148501 844980822 851130933 480770956 887353265 902027298 902289492 169453957 991810130 986592635 991095591 420728779 533623166 121111414 518353954 212201728 834186668 80824777 518983243 436069117 973020210 259564491 729136535 270189766 313798256 107880018 292104307 769657270 910604527 344328441 919554642 108879621 136764418 183059454 709380944 890926681 959302225 702063659 997405366 507625784 665471985 721193292 753991050 553976870 642077680 390157877 576364338 298104867 876196552 619746563 656730854 81939728 346854703 232210766 770070313 488705144 941216879 384885519 560981524 921782178 978873679 782412323 863845816 191447114 724131529 743585639 957572619 862029081 907125661 374645004 636226040 61173778 487120751 883512829 884247940 954548099 973167310 792612088 877493773 212870273 334399789 419952335 950809322 241883736 510266447 587276829 787908433 855546689 984632190 392341181 463856446 88000832 704008830 319724844 967381943 779599420 915954674 712470952 949210891 86778809 804029652 113370254 965299800 363019918 948075342 734512106 918198967 810634304 958942326 228534620 404781089 439026143 867509355 193894544 552785559 123300868 675384384 109282712 545985250 334039444 959085142 743638385 848665053 398501110 536542033 209799655 490707772 912880926 938293310 229494560 988558312 978326851 994312997 664252847 987605160 676888717 879465909 220390591 233570371 415325186 600768895 599110714 825688952 909835568 990870822 996822626 999762172 49939850 665924992 420067183 864312485 948321688 957101315 440836327 599511052 381816791 928520880 243387312 845158604 963062623 980478340 379755376 806437138 106958882 378214616 554700054 943369865 508488901 895376199 158039598 717667235 802373516 974988895 886513414 891752505 587804662 854358538 545650470 757879214 804111944 904257705 59148108 912072386 778044910 999465251 507378903 614628014 73666612 242125520 223196313 777943812 681569677 864453929 786843089 929138320 201511753 870605645 66047422 675851761 431518847 631698984 892514724 950723366 149214689 830637917 341131630 879161716 159451173 241177552 166828909 959376836 937019490 978956489 12215319 13568353 909617649 953426862 875499625 877974441 130949268 810112739 164770555 720855029 666022459 686372155 886282054 975821055 899605109 899633278 97902404 279838263 141856460 689376981 665089178 957412706 561801179 723318080 134800086 197211081 101573628 641822885 133686961 862481792 971751475 994788710 256090925 355729259 547832256 741513070 176450354 547680384 381539650 761937385 117081861 764147773 694493713 850856701 781528295 842526632 974751174 987217970 128333117 706912073 186770365 478093018 784142371 842746979 46896541 897278074 799244963 894986293 4462021 782742654 748524381 858731951 725049726 810919453 151876617 468342068 92124436 914318437 1833064 84503290 245346422 721563801 681990867 746369349 34827160 145304109 701549162 812535143 575674673 886146029 357629713 887512584 264973768 810121465 103128287 552396622 146182729 592899936 352205152 659598837 376092583 508313196 797890751 802075948 137540893 272262684 436807328 951051207 906431976 917866545 957501305 964819221 567562806 938793967 376641478 940471654 568657779 574632837 643073685 778984073 889008015 953047451 603491914 657284573 188690528 485082024 390623412 730994419 256712258 342690793 521429156 736451082 597910079 984552959 198007408 934066969 595009145 810224026 981011910 999904905 128939369 718525120 206900039 990790561 638639994 852010895 477728061 539748265 12727658 406342871 789938613 878185864 453543976 786465431 733979631 762951280 892053278 997003370 852720152 932670648 140590734 713956664 329396619 783345372 470316963 639674339 831607638 952545107 753847818 773164227 474294757 579319910 203388978 489866649 207223357 829967897 964167881 967174387 192739973 854918631 207128167 839807749 500113132 578625361 73611579 791640943 665585605 710131633 663941091 970254263 524442645 683087188 52533143 75238582 357376352 447199664 551525695 788740539 658376893 956166251 898700591 908284511 576077205 872508310 214606420 834156231 154616099 310482128 723857164 957898445 122815623 548576265 433129599 568376015 467220641 716590478 593192339 890931005 120611515 792716449 729382408 834964220 319781695 782302841 418129896 698741068 351785043 818658940 569853549 938907858 354062626 375069121 72731213 443715995 576796446 673290121 728782670 833835352 442561485 727990495 284933316 366973349 204916140 595034903 501928256 897998404 52001779 374569582 790284399 809967671 68443431 420442703 126432649 477488187 305443397 485301840 887494392 929608957 430507833 516172555 96386895 179853845 147996260 531403148 346333110 745876569 790035353 891739105 395959447 628528825 549787378 625213126 485049156 647027577 71722676 724761994 22520376 457438460 179576864 756687543 74472081 887803629 775760036 789793591 330618721 614702040 697466493 714890974 558592536 823175276 207782237 600482913 416487292 962248721 551394634 773187285 627841357 963744345 195029423 237174190 220200892 696669230 592962671 671286248 510078921 684240104 268713446 285055020 699730694 796123503 932844214 982093035 164456538 902105840 891148211 950772109 45023306 502134090 3686710 48655427 730174530 887499345 342668536 488112395 181813201 506798023 280893515 719246434 670988290 799251049 583125472 654629028 163416358 602728577 44565615 627855040 876514338 959458305 873853322 885026981 894616133 938698542 169434412 455119582 906748721 957739942 498591957 565635259 197968726 862742145 145410713 200144351 302336308 844534224 24340264 634638058 814833493 959380282 969336297 975231870 750581619 859476707 838689712 924039972 271389714 457484367 503346337 722233860 169339241 271946214 156504461 986659460 767978399 864382363 142287255 974273507 757090036 927030488 67804298 678489029 436814481 926395937 787778792 857341204 562035649 763122541 755436017 761984735 581953429 752795421 101641181 565779443 160662668 738352243 377335916 920735833 89300682 454397762 100598429 937016576 635826370 991274818 723528990 778966087 808267718 836093041 422269669 513979083 872536889 897314723 281268496 439953072 771039806 793816778 623137709 761845254 686969937 859740107 764341015 977796007 226702217 791392210 624834811 727017513 13197927 168539630 140210336 231260502 914055891 989357020 525691590 801165602 38372607 270517293 90272257 141371440 385630067 714485533 438464672 586770211 419425429 456407689 713737945 847769920 622186016 746014870 281391624 457208538 775534394 972871241 434290050 450708358 301830212 926467338 716937069 850428443 641417885 725604053 885983869 998444756 151242504 594474905 561491793 600099200 311490353 845734670 558793926 986755017 8822 752762055 584594249 735888949 243555665 665457630 334512127 998110124 60978444 792154679 373809069 703798030 952171122 955064683 594789875 670962880 599992739 936282830 5267772 336547888 451529931 667371878 202307571 320558799 414964066 938284033 21518325 874406091 640158081 828336502 76529469 674544877 583797777 622420675 108448205 294014757 767038492 816756419 605827269 881127565 860223574 917783223 96566141 820334748 3533256 362592495 422536280 671234109 656211783 825637235 65482051 293356240 416373727 677347616 820141960 859965401 116995604 127665602 941741226 950421890 680596213 797947793 464310119 959461468 192642684 612167019 970117725 978645666 296577490 504686533 963283978 992885917 527235023 761968490 336513386 432509809 793752988 832497889 386228503 961687915 447218854 772802042 803116172 906418007 368827502 798109283 847472233 873495130 298742365 974203612 74065425 494626099 845708698 964005151 277550841 799569756 289523703 855537047 407110112 721477014 533410955 631139629 480058099 932663829 197047936 704345707 932551226 987842446 402272315 480083322 288194385 610224057 536357669 811869691 363608874 497283886 729271324 805774999 683270005 695705927 259019147 887843477 726303897 961242246 535195191 851792080 24712512 440023125 784177476 982917558 271835368 926209276 590164023 758889014 106374421 458797881 747929979 977687977 719110512 910434568 682436573 852536555 289245084 412061511 251591582 647326244 119925410 647159734 641645708 869645820 640976669 665659051 760945140 882489314 787037342 814239037 728482578 877322882 129944992 464059541 429905243 731339184 451076158 515583839 13539943 579378863 464034362 827516784 124408428 628339273 344051799 397640571 673731528 753170851 59104339 381592129 344926818 997494997 99332504 768169543 663303518 977614309 214639341 255092048 321222974 814135734 482269388 615749744 960060901 990032521 363313591 697231345 366535226 710091770 442199159 549350101 977480094 984584907 245348377 463378370 546195868 740060404 547640733 799083684 295262465 641111557 444586060 797687073 953123056 980218382 749158662 872604319 459233725 706596625 587553560 690942173 986435690 997681630 333365368 957851561 626787189 634493447 958446141 966063817 204407616 629253634 869222415 921001920 920243695 946931385 442667970 619121695 622755487 996959113 9823831 413012062 657817368 807615669 718062490 819149137 552799542 873156867 93467843 664178246 977286066 989562135 810415199 937843254 237877430 421309025 401128013 581767707 536176344 850770097 967265520 976454100 130980942 683154788 429388085 441173051 157323152 446419946 230160415 645345860 72215983 692383155 811815206 965557259 224186829 895500913 214586676 709755325 107106148 678434336 65360174 899434577 576255644 836939963 877546732 928958837 764968208 898531891 916904497 994108564 490750979 709186496 354792971 551970900 182164443 573298249 654090568 891918824 463885839 991415014 278507096 388899699 754089762 859004820 751327194 755139322 546789973 820525627 527288571 957237556 321427637 668696401 895883092 957682293 876104399 954369859 42542650 461286937 961203978 967562223 607252106 925185125 111655897 406608007 201350469 524566372 917719991 918522061 971403225 987911580 66425156 769689690 174354699 863648857 386380138 976595097 292288104 306541817 940770961 995079862 48926779 381491797 779043966 923619144 539842843 644539017 768298236 866476837 940309876 998070745 726108832 750870095 285858951 689838423 246578240 492451581 611757726 992975148 161264764 767247003 183245701 190818126 387227201 461040856 551813303 635527368 52267746 868209339 560449605 957209142 64689812 883363793 397209626 493561911 210462601 364671322 272657676 840653464 581311077 858130748 324410021 777889062 341563610 411150474 473747725 578729529 271065551 753640210 331269102 357972240 658379463 964559034 736205677 876255581 776112550 794776165 318480375 557776047 105261575 587631337 957826522 981757077 600110770 684417291 79565483 286844573 995590870 996571896 970970520 976285806 640258547 758002547 460230541 727105536 754977796 945146099 59586207 116872121 48415725 552162580 901277651 910204784 988960984 994828805 627889143 900680533 972932985 980499717 478303079 675051588 517570751 648693916 120733308 840543585 665222185 666047508 581080857 587368256 401648666 791373235 724657228 978629496 281622425 298770650 100048650 529461295 231884236 393600355 691195953 988294860 31307354 158287291 589849718 683209923 894454881 973410156 117722799 737766626 680763008 692626684 500990727 638552983 422617473 644796606 931487493 932884942 374555417 597088458 35712384 439180346 577146425 627609555 227397450 478314384 386951052 426485508 587612883 964179895 256470463 430093847 157163235 408628572 429172874 607667461 898543234 899111062 214876320 587403602 713055592 837748993 561970853 601177710 801243511 962804183 815788269 935609553 31743333 192380574 433099755 663535428 19899461 885973195 720632734 967407397 561257276 998527765 857774085 891692268 480478862 744902885 725461130 901773609 844584787 857612092 670705150 812805904 339344640 461184708 582880462 977644224 652753922 968290616 977270112 992427395 627724687 862098918 882379551 993308068 707538148 922116678 536447672 824081912 11691929 257423219 415546144 812366759 85328185 688463061 527631891 882268264 544931759 618060514 881056658 903708632 666810334 795466307 562699495 774135441 231043851 513215795 181145886 450456441 833469392 942137640 587498178 793516959 732846438 870712272 5098470 576429746 245254410 337938678 251236845 432568460 745651098 905336876 194143583 344351310 881750045 894603946 573848596 908827436 693617603 841072056 768118696 789980440 967328071 997458737 116512771 120725732 649525090 874167788 229188487 535726200 701198411 902962250 483338236 824256850 12483823 74633516 358719359 634500311 657977943 756602223 573257254 809905652 19864569 557208705 245898852 488874849 588340454 685310560 731672345 818524067 710063597 720867213 578126299 999263144 955775326 969523107 375939160 966230770 297727264 528965836 344296502 463008626 800954640 981745565 837324102 889791302 562127017 703826865 783620005 818135224 336368783 776362837 161371684 881965204 828146247 935411990 976555802 989800341 431144863 906217894 570838941 656375694 742106078 892596852 761806898 847388926 585113279 603213764 806773378 851149590 545844046 865495865 579076146 838365639 633429198 865382065 385099124 707849560 692107227 910946926 1114506 566034969 839281150 947904013 597837799 947191429 84248350 969550175 139641226 210252583 519911049 812085818 376874163 414646433 640987174 824606621 523555966 753831091 411355114 744792817 778822948 825652904 226589337 876075989 127979631 613684626 311558704 362435622 42116994 77600045 319773109 727026116 250550627 679439894 845480498 930422308 381964833 954837278 306558122 622737969 419064886 802994141 658791021 819998018 588860994 986584050 29622161 596627930 637031020 677705017 34131115 648509241 162189474 845813347 353301405 797859685 917345493 934771754 216373406 729922145 921762507 970152326 921031619 925080562 939162075 978382092 260458708 838724818 214116303 825549945 61399334 102855480 93817331 669729442 898235115 986464502 968817670 985036228 560446833 621140002 987299310 995064715 826981217 982233799 789624074 852647431 110626755 198589891 544492875 871174334 236933194 598044584 387326169 596478756 241853356 243325585 407712001 503783878 686439555 746568715 580003883 585388361 160521239 205662048 697536319 836457556 515697274 769758547 920480889 982659654 780923382 971461747 344312296 544039906 203177479 840317685 11822066 710451806 692415308 732823852 157507128 394283749 20372419 252857288 708095751 927012808 79681464 392833213 948445912 989494372 707864804 912930014 955501165 999619146 961732463 998258849 816215788 948590232 477869798 870145013 255630723 287326591 525768519 670321909 606519447 745417295 642369507 692551777 684824254 929988482 856319756 956441332 320995785 685766813 170607170 418825507 100412016 205586825 607733039 711114137 167246097 569144629 397019794 884559890 565131233 937140304 98221606 249320175 431820081 591298697 866250688 867814180 10281583 187022106 43451225 285285459 583918146 766153992 231869232 281264310 234307685 768402408 978393558 992179662 906485528 914148839 774245113 945494330 334888772 737932936 541425467 728426452 99497220 344922949 837087151 939725951 461615106 669080870 870527031 927206139 209496538 495165717 15308932 509458343 534444216 887185881 714375268 884709601 204691358 653626517 998183760 999844959 698276295 705868467 534621799 924327053 624286945 900904935 974297809 987309450 260168809 437795375 65817947 491715842 695132464 696288402 332002186 978693784 333648633 420510223 404320673 614286605 534884738 861428309 377564579 794596909 209330627 968347293 768637948 950529646 19628932 336549435 818011545 887403014 832466098 850948501 936512758 954349885 565589537 745120446 9953824 343673298 396661321 400922358 876617257 913732551 659654385 878246852 595917539 842593926 260899275 594078852 68440385 736490762 564839746 659449914 676479589 971555600 112248453 388980845 2163102 445601251 554306817 858814305 247643505 841920297 481600045 630219432 282704495 633931963 284519853 699012181 213772472 902908983 507139531 824599737 378731138 452517794 587598793 791381395 652734693 926428562 250071524 940678117 345005361 353766356 421451722 817901616 71296076 90630988 347452505 382097326 854494756 918580152 858278157 922544374 224767355 754839263 305475737 322804112 965297818 994144724 616178380 978079795 104471220 546878662 217859389 370226436 469165740 754123929 980557808 983229473 797425406 855048364 587205267 991179182 402423219 465388356 50973086 53038377 977672269 987444378 51908269 148551857 188231353 918422840 528832765 948546501 364726269 392117568 764993068 819137845 226237441 553463418 776312486 875208825 321291584 627299666 926923 10282997 855110883 857802835 469897125 717535532 877916887 955225139 2975556 741903152 464542505 968396447 287663100 547873450 673980643 679658335 893534415 911503660 502463728 758178493 539312046 614629433 712044327 726612863 907557179 948358312 27020503 628031728 196011597 339663095 280309314 699446408 764735200 876619883 447458459 835834545 867961844 890902692 183749116 257310969 979868870 988796504 133940486 620951076 453955707 813700322 26448807 67239818 227073456 325942398 896360917 996026192 245326214 880039824 82737051 836448623 633033182 782561542 738752877 854220345 550861268 828577465 132693043 776571749 628958461 872925926 250404828 843060407 184502805 251683642 372126628 522490408 165998537 576370391 959373055 960496568 707290029 720342831 248964760 793217800 594836259 879081674 209949426 711153046 16240768 400521594 263764018 965900615 71808561 782174333 560160200 848675722 31946357 824280292 598592284 838987024 130238066 904562610 989485200 992405370 228921913 862065978 2040495 110707094 269154906 575286605 513109369 798523231 464277278 518715390 804189157 867313736 238413008 719615648 513765151 829088960 654668543 932406194 202214225 917448190 347289561 845798104 887076149 994076684 133899885 806315322 518432616 593676623 329142206 934277273 780092937 791359603 385309443 632933411 637991720 644382145 701104437 788641284 642216733 845645312 491737355 838736024 133490437 473753707 50747350 441135550 113384167 163640912 466144024 504400428 195865918 983736733 883828666 948930938 307202123 924309110 754300660 928038728 586849674 973416853 598520344 730781618 505773809 882687437 754429265 902866382 127685259 832671469 574657069 746562037 738675733 929186242 784150712 843776861 805582904 970479696 974805623 995068329 687173503 824104017 590723398 940256069 223528932 489668893 192334575 976625399 809415225 989589702 231758420 862094152 444780002 616778657 353783557 834064779 87695002 940480923 778699868 855774903 32745612 202146868 457507244 844025558 863935411 906876145 391639501 768611238 965649803 977002547 904207369 958602098 164402718 903388594 313024664 846858333 858486050 996317370 370981863 585909178 688159872 741252540 544507202 631268901 701647130 847187812 901657259 907939157 340519903 572178591 774697921 976370844 345637360 970141334 102221829 587713037 415956282 998679339 487786590 965935432 695934259 704398514 438118916 517806161 189983691 389749010 409016912 900955742 75976324 820522499 328509277 565205957 417999600 748845440 805399978 820075504 182692365 331767116 762259635 815115521 840354382 979498857 680304034 976086060 752294005 759308753 904044353 935449588 481409624 585194701 884359973 894536278 870179964 923201343 586493859 636101434 830218883 894736429 632130757 671164370 713198825 733542148 929010428 965512475 843796803 975857288 280357941 285749174 566048993 929525146 927680316 985727615 133071039 776357401 47503712 478412050 359443445 541816689 878209294 956826018 787630774 799295535 725979458 782396776 440273108 457365284 603869972 803106161 56016012 429153933 559120872 640221263 407318793 971804568 397907061 472467298 144343251 358157054 603397233 729655690 10360390 540558668 744740410 997164348 296307309 338959080 581969161 876931098 21362078 540576111 239617353 503042397 582154141 719646768 75501655 663516677 339376050 675268512 744412498 884817610 730551736 750984673 246478732 837223463 981556608 991195572 535585150 585620633 440535662 550693839 183175499 547221936 625964054 692089288 256181809 256189584 866234452 896862093 800900302 845990754 421589867 635147151 388904072 575654236 131406064 360913792 9582330 109611860 297431080 516890537 351615610 426104644 945310093 960482462 255422896 674984854 874775712 920179099 217791766 966754719 227547485 966953418 557303104 893150244 924502117 969945564 441144117 994103486 285279321 445926637 726967838 849077851 606726880 841327821 207910954 722007159 517322238 884987727 281040196 666926761 305718745 676296297 441727597 779416992 177968892 929045340 526066649 981138764 768312599 865024528 405500089 468293481 171402208 797297425 542318062 963224695 374839027 906859919 338570437 898630205 494895976 755631281 785555935 969318622 825454139 932485407 934817650 952084130 180182346 980443798 98148391 819970206 317474287 547196861 700537097 794320920 220255234 283311016 3956415 532151900 376993883 745158523 282069292 520213327 606302012 793856295 979633037 982670048 254099439 642132255 692383897 702166395 390128425 561719994 576413877 664166636 513520650 560188158 387274725 501703473 448937913 791021073 597947619 888628342 709437219 787972788 149557465 150092974 647013780 756320720 850796565 924202064 432477291 994682756 941231632 960811459 244276348 363328755 210673238 882987975 624251086 727460321 526231055 803801040 283092417 393194207 529842719 898418053 265418649 698971965 802454078 936562124 836056513 967579520 425320175 999154538 736335061 776012371 986604071 988155188 734353966 977537892 10635706 232327814 481519410 534414454 95180381 438500592 827307897 980649397 154781876 734728396 689929042 765166731 930355676 953038458 313397244 841916887 457769697 944112073 996713979 997999132 433388039 853802415 405335919 904021647 949703982 999941635 806046241 924614425 992641477 995878842 522908196 868660465 255298363 835285981 599598737 868328924 612005527 735567261 805738580 874402134 212811369 493138360 740237679 871980849 351266492 975250666 770431693 974760561 568888026 660674151 838270961 946365744 874597873 942105541 690640287 721656955 434147869 957191393 289170148 964908006 497674068 610184573 96640720 332665550 508978652 629094564 999595552 999915035 32924890 553401890 888789527 933475038 41170572 892909677 447695636 733922568 36570351 44876554 34739902 613052868 888489128 937645549 597821660 937373183 418160325 980817319 978447640 998624920 943682889 966195196 636501797 687615399 826927519 867839777 914061025 926643359 705254639 729351594 405214367 487260438 144427493 583567622 117505990 509653328 924986115 956301719 416163063 660669149 665088638 846772150 540749707 722262238 698171530 934522915 304663549 994197541 488695431 753457005 730974248 823737757 585642802 651617335 170444445 723172715 433547987 705662108 384343826 992529866 330328506 519907906 992699580 995372919 767567790 894987369 963612353 980821388 568247601 689610664 476566688 714028623 671275931 840668082 780816870 837052439 625105052 717400122 225562306 728656498 69304809 328367284 591970392 701035439 696938025 720907681 263769083 348442478 63601510 362432595 436033663 662351740 843677989 927671863 886227793 892896291 201530431 951743381 89142112 431687924 754413651 812816048 789745996 944491880 335733360 597419721 353231164 362103749 523326696 947321146 607818705 666937961 603481456 917989112 149477529 796086422 265932237 649581480 857442387 871946025 917840138 996641442 947602214 989976080 412291570 790711344 29875172 686427610 282631501 841696146 893382155 987413279 759254878 814593384 524654943 869008557 561192191 639101170 672608208 969973024 376180295 902321113 462463257 846670677 151608710 737081663 199213458 486517998 879137287 880014073 868677585 953139281 967974025 974058191 663931632 805402203 610123573 728742871 257138181 542269688 79555299 402230561 352912205 930175153 759980291 852043383 231884161 973435583 931328566 982445371 39046560 423282532 352374851 828618669 610886160 807711081 911266641 996959244 432398398 900870167 433694542 461556609 301894398 837963610 70841701 499447364 359997669 989603113 508181291 571224922 571150055 703348649 746828361 888331077 569818980 840068094 665871227 959070819 459077831 852918830 748325025 986959246 925871472 952532165 41110926 123069490 459385606 629306969 525539197 590215425 622027820 878967919 37818230 453554855 698959404 766133628 383896714 404259854 267606862 992321689 125753148 252906478 795789471 878846070 815091777 964324011 962290504 981630303 495624387 499963132 265352358 712677147 547026251 939515235 93904364 277374344 555980800 750116835 148883768 836415683 90063983 560497645 557542257 666883228 621393966 757684825 12708198 876437190 266550628 302130197 215105117 549146698 171348813 745380918 864450488 883631893 346549069 837582938 814853966 866820379 23822793 119263038 186553380 833799407 576137167 859850893 952040384 967248680 728460909 900356195 983376315 987321458 943218374 985583065 239867347 663452636 371506020 526199130 714938301 983160089 271841563 454592359 586683307 910156821 59871502 461700661 109782751 533687730 617806569 831878515 228889744 489803944 348163733 599566123 113158557 796903112 59096251 954792088 19255835 653049190 269698897 834837193 141860670 498154305 220101356 971072604 338218044 392625593 938617719 940396054 300154525 345663699 157998637 749148249 73092200 225803360 782660697 820426163 23795225 522796782 116809414 640553312 59823299 824384849 823075837 876065791 908422626 964165894 656446932 708229305 782804639 908079742 572277143 686233561 225861138 434398179 421023274 516539239 72254859 817841636 891058768 891320763 462299769 616731721 83860805 298606165 90573733 994347726 26605900 337373260 192413661 705720191 388507193 538495508 663025186 680614782 433579409 832678771 973233287 998945401 276212234 980166121 175596828 562991293 405664145 652091508 905457726 993259272 466886369 776421730 944804078 969993028 683931453 705537714 553429758 719751381 745098791 751804313 909513859 981421882 906803778 909619450 385722405 774315388 682542631 861815970 618421814 968529002 635360103 663127151 122677728 946900775 590282958 872286848 792251628 796413191 448097716 709933114 7539773 137599545 593110706 745489451 782228113 985845789 514356473 598012219 732646175 968064659 567087402 862911829 385914736 500371252 511792822 529978011 12933059 980616152 573987474 641481239 126405432 806290126 9033256 888637459 600091271 798646647 497475996 684137832 708591978 967190311 900109246 959992033 431176545 993445310 30511468 207248971 922410125 996385692 6289475 881217178 70941136 718750431 632463322 669458037 475299501 969439290 759878517 782906395 797565295 977026377 243682113 707193384 882242170 932370222 20320382 629793693 699239428 749982016 556047433 752413102 247920016 333400802 86168144 269434306 296883143 460829024 481405267 781506464 606051714 945930865 763255332 830092426 390580915 645162209 143203896 887608725 526765197 770014657 814019197 990958893 917749465 967561440 287916453 473055184 817918685 848830712 5931978 225890550 480122394 529775527 308097894 820167300 697385143 780799265 31692338 366767244 450990780 849145303 333255346 587789841 811424392 917726568 763227625 909890606 83077038 738797227 680398488 801269573 953708751 987362900 974466990 992299360 516365917 695654024 761644326 909436367 124277604 561510395 35242051 299591228 381754114 676911738 234337211 476857382 270002898 430866164 203377594 422345281 78946666 677352956 785897456 801029674 125812030 367782728 600926213 852319177 298480737 325826562 549448481 897267399 82317589 951036687 982438239 982642235 129236350 352759054 928057111 947233105 887993004 949134954 326310855 975300741 797883970 814266010 551776552 894690400 923393150 957081434 199468999 366147275 705909836 780029762 945451015 978420514 424039157 922345609 543458455 601715199 531202302 641472647 349482130 505500684 778153172 840377085 256247087 523821828 431512238 643009402 224044220 869475147 568615040 592824688 741165517 871556555 19784958 802707411 611659691 859962083 623962885 654033151 572948830 726388055 611339925 696144011 800186211 925364402 608392608 813346727 191380815 839154162 84545126 563809447 853732581 921628534 644762594 892284523 217425924 868637446 813822912 869966537 645198510 834472010 958097146 999387433 312387811 523585970 580905321 949383535 957986751 973866367 347508603 597083166 842671006 945234934 903113655 969965991 153861867 993885079 455438650 853474886 255744548 318839877 867750377 905592737 87911961 746785538 162122486 312832835 844090437 934000689 298623580 371654283 658158963 680411406 216116379 576337163 798996528 950159977 208404116 915638945 733289738 799611123 955535409 957948209 109842695 882288600 808000489 958720360 624285333 916041155 893973803 917620631 200849784 707081418 450399368 459050120 684113632 765453181 438907941 617252191 264783264 499654076 349074378 649610064 674392303 752825715 457466675 974841748 220518196 299110544 339913347 552684933 817261632 873270046 473586083 928176744 631711780 947425132 839121735 932815104 850038335 950335011 348005543 541704010 904442212 966449209 674413835 795491553 132331025 460523390 271576960 459092159 554859739 900058634 483838388 970288024 207837751 311501858 724620772 872250553 263587989 804182915 2073260 486830930 573321805 674359400 964656800 992317560 910004825 981493262 589517209 689826216 974037014 987299030 850157971 974241128 316412107 775424514 722953887 949304440 67604213 483454104 976193875 999160609 374334081 883925784 572777073 591186529 416785131 655143967 813481275 909016910 331408350 988549827 407656392 878705004 190089713 537806068 594662839 933291346 915006473 930891240 59830951 151627738 218615850 497005200 564814501 627479582 547832520 980142329 355232892 743758464 147106083 546415282 821941890 872638427 533653197 842925067 424306001 679812429 364293628 862031017 680536036 968669675 345396752 367879219 696468304 736890829 959882302 981622655 903482290 930388517 560104649 768621287 882177644 955575151 113775193 374548377 351109820 982711172 397470349 778447280 920256243 926440747 470879146 958769329 98470601 669343773 901395712 914216676 745833034 832938178 388630474 694758098 409366099 490665969 548167434 657554855 805373152 911668758 21501846 856436501 557846381 933377073 10337463 686828053 591824239 705718975 464789568 728824145 905830968 944708763 235930840 468794760 492609691 563893780 115420472 285910645 176762455 896953676 545868488 981941045 693682641 793685976 891258557 899573493 584384631 723670995 71679920 229348179 584586951 916097119 567477492 970926863 834101352 908752976 544411947 603224148 837790526 939421654 951467814 995928271 500903159 949105188 392274380 571993324 924288415 942916287 520556744 671757161 452733386 902470671 445317259 971387842 751252176 900142971 817429096 922866662 635195454 719470460 764147197 959836223 886717030 925571697 36354913 415827914 275679204 415701239 592946219 741490079 927942892 970357656 491172826 861039258 137651631 573538993 327387728 562932071 58716457 968655026 355289255 439487558 836204888 954135038 808512758 990263950 771123095 822784652 176684517 581356174 143278894 575140322 608346241 986473173 503460753 939089005 402790218 942020471 739774875 768602262 756837948 888898105 994621025 995924765 237799063 739895124 853268345 980650485 616592508 908732494 655543609 881537686 966062283 977489767 93759334 299712648 905627679 947809340 473610302 659481384 607410396 674546621 973990086 987671552 584336795 779742450 697349666 851452200 973962705 982888053 548567014 614743750 130645806 842654064 164211881 322639752 779098092 930289257 712719466 995203562 341777255 688003966 587334558 695525856 927696082 995304382 865798514 965981670 315346324 671031116 940585643 944732112 292478689 490159151 565464981 700095493 78015600 531457965 682074134 807850672 802424927 928293809 605074642 715940525 507641691 845410326 152161902 947211708 555227029 975413722 854781987 857287480 975086278 996645912 601826679 642076452 529163266 739293320 306637257 871981210 303981211 591878678 266727780 418708974 633460877 829938516 748143961 817705512 1313124 173569628 913730054 947319629 507215815 507247071 744079872 978221620 611478598 697485341 760925378 917341873 359893444 521349264 196109109 635467898 70608638 950257983 636672781 663295812 895170758 922682999 262237475 949484736 837030589 958523186 378054059 764043499 63077353 170162443 739130315 910383653 343113386 890611505 696796416 786716591 347881742 609604736 137924964 646891387 532219188 586786005 824629179 881870545 452566009 935042897 553476835 928939868 197717640 641339198 538570366 731559076 524285228 840432649 161797908 253037536 282998458 488447074 52636416 930456654 520966803 831476127 685967772 882069475 125512731 251580434 925991160 988921769 18690857 615703732 289601423 709377279 59148586 993736741 738670922 778961686 70328645 399278805 456332168 945933734 775861375 959848708 413618927 709536106 816922150 995743423 683731746 997916957 471695389 504619376 397419323 513218844 248813707 463754909 470184091 692700270 164494431 276988750 173187246 255755459 743010121 744814333 960835736 995606808 917606080 945947604 224187168 950926480 458062012 494112640 813214206 929625132 523060105 556600102 722693559 768133723 480864766 686959950 57897722 693920756 103138755 678281062 901125965 967893371 50952267 991434349 750312022 902362516 387886310 922995005 101846006 258519565 731437262 980324880 66479455 643407169 866033686 932882262 814648092 845070588 376377787 675577333 427486064 571119512 966396802 999136657 627199297 656744725 627870666 892009582 672290183 961002026 621838362 939921854 700610749 866835690 284244356 895587334 684908879 909299526 164527645 806816519 477756669 635849297 325104079 976883141 476087505 922024671 37503255 322293020 367644911 845568626 53418127 900373262 45144764 442968945 781860203 785386534 415040988 997610379 802639880 828009957 927234513 953917443 155617370 800992154 286014182 462152821 953457286 975077087 690308303 965763730 987412851 998898861 876780016 965705567 33170661 414934879 928474820 968648001 403153473 407681525 278138457 837511343 14925454 792691720 647732232 847723397 373036120 635911588 737680651 945056359 884276334 889296375 477438692 655045100 59379586 804674818 428000068 670278987 81174117 797039994 787630696 840526990 510218491 893199719 462690724 830825503 540302918 969029355 271767561 460980364 736277049 804565661 232991339 457573606 879814669 915207867 32576809 268786493 810724407 970218988 160018678 953159827 498219356 734999482 286046801 317966044 745240752 918177051 850254177 853098219 101168090 313389301 756906428 786703326 491200207 915736593 803296829 804945438 291745876 355939052 453491790 570288315 161223748 891421098 764328 708055469 70461983 996682903 221373283 247301775 567347254 900904027 858949933 895899068 247715792 459432064 381985549 398515427 994652293 995625967 864051773 985496471 722259595 861514445 845442175 949411110 464396167 645998135 430747011 640186439 666017141 903731715 190128643 496674064 882906260 919748723 579980736 866936425 806688801 988059991 678656671 856312274 724378797 937234342 73895366 368786244 83736705 341393908 590541386 698564869 85913532 193316671 36384772 869243865 485046427 702162129 507420727 866935998 963901942 980929099 898372096 956867745 850265437 937771022 298709314 712966458 353818223 711759416 328936152 506251255 502408710 893101697 510234411 961763828 361019625 718278586 762922858 870710261 562673848 643680005 191031437 641131010 724980946 979101056 218908239 941688755 849728077 990948335 224601822 592479402 685507701 870253385 866156677 941933908 622544376 891714113 791472322 801779656 736302307 963127528 404578879 470186545 829340709 917605469 372895471 584333214 678217420 965704854 971190996 999486334 316158126 612577182 612429012 725672212 506642243 696519778 77201910 170569343 145731210 231626928 20922452 363410770 697419243 907417511 648648703 827588641 651126694 754733385 220151998 997973368 297501844 920159767 336287575 824080311 594063012 959826439 743994960 751176333 960693358 988381728 914805400 982122949 571888464 649870328 928913637 984887736 182206927 477653918 209545927 392595926 330869388 496642885 510718925 913609852 794132886 873279185 167042144 464046708 436876172 673971635 331319274 471721161 117595766 672133892 384898506 588555237 318002922 356074807 631075638 825132492 329088744 784637487 497281067 685208307 32993729 512884462 971035334 980202987 394176656 411225836 164938416 519931489 855758582 879401107 957826985 971772536 769995523 921988358 107458715 344391885 688181279 890930288 581922953 927446132 133316259 418743912 68357841 742242220 858716376 924924444 639962490 792862774 773846885 835141734 970631761 984323756 149170731 630815531 98529639 892874576 176013060 527690841 199709776 540744887 214260737 935402668 722223952 809481976 716507215 980677115 170683980 671791232 984209859 998105865 463266370 733538672 135108755 501024835 564821155 609927290 856925696 966867501 204338532 499799928 345252157 646829348 88824997 797857143 655561781 819082081 281517510 930350461 937731490 967844183 379366236 677912657 795153524 986982457 35547007 337414174 890049476 944998908 683267449 742171432 578513579 864325877 130722572 224579425 183968674 627701701 843828975 852711030 399157032 873757334 523923874 874839084 405748887 463948494 777975488 804101956 967614969 979859471 77091625 313115423 612482199 895090855 215345160 622536604 407490252 659348517 321572687 851198066 472364649 956318434 638241712 756792891 82584587 955733335 598561459 734361850 841767779 955522036 135523615 765838616 258097426 890584020 758948279 893755687 790599800 881715506 472765884 556739570 287512921 671170883 81549685 487801372 995176140 999860784 516777256 696464123 648928435 733225089 554907564 969092841 289044508 297392603 857745075 899214066 532245895 675287716 727035915 837466253 422006328 480444949 63316408 835737567 960554556 977573182 873568131 983499136 218677370 683112137 248237277 526573322 920047115 960179647 48207316 411622401 859217881 985973987 821936098 878572453 5143760 355375882 298456949 518140246 953297163 957495645 589647240 811765578 837647526 977205125 822607603 861785790 714523036 877131289 863094222 903542704 35447304 835348930 366281209 912948328 641734156 848978116 400142177 797825458 518735411 597697303 52206227 314695207 480855443 587008735 290228870 951015395 382527265 841131961 263212616 809221051 497823575 916221133 331956224 606102470 672486903 823698617 299244245 949033267 237950086 635098989 388401591 441708612 258402815 675592032 70784195 461409379 355452981 698836561 468225024 960785875 48110022 90335493 431407677 971735809 372889253 516489366 376825991 638938428 351638071 783383121 15668407 180106180 776988535 971669765 342593137 616413338 89597164 363805439 838932979 865123762 669409178 995264355 611177420 701860127 702293103 989803089 89462839 646100388 851172422 882535296 545894602 767852881 637657842 901607527 560199271 971032569 794227442 854899641 435968425 766919842 537597781 732686837 984015439 998155133 500130813 749787507 423469104 479575596 516365347 728881549 904008827 906737648 721213185 842688280 484204483 546445587 321598448 579201630 118309795 453788691 216912801 818888923 583358336 640611923 360865946 664341383 158305186 195567858 579248055 704486892 909366925 962150993 629526115 946606223 854223774 912862036 5645092 593049498 887656664 956546418 265646970 787065975 717908758 850938019 836007642 903333627 242221566 508118152 285086959 762459157 269702508 745818784 869294884 898647233 973542180 995023191 795423667 821803938 68136693 231319984 860218561 912269608 286960768 865655642 459055212 591656294 608992122 933646280 894359395 955498072 476385237 933381654 172265363 930153996 79578884 894306448 856487175 912426669 844465555 858801857 635602365 920053386 550131531 817088049 657231259 825887820 89817107 854105103 253183423 359465121 246007572 328964585 210834127 718097778 951468654 986041329 224217069 283894818 258971533 702125791 979670395 985875701 917003526 942130546 72679938 634700810 152646790 654374122 68643784 791677486 467662403 599440687 742832500 931353395 535596505 832091539 592136152 739740007 805653544 835428449 775041977 905067083 71988587 696936989 721715114 880288996 313378783 372449108 972833398 989114325 16233453 813973346 515252676 901139362 234207758 814097824 374748068 940086455 714598441 752645412 420793311 991080841 983928257 986040111 639750528 773401368 5112080 386509435 724684391 897526485 492136855 556047651 242234503 940875029 888401081 935991674 390178582 845294392 308644748 681683152 59896172 99418837 870117913 929492804 303592680 337922501 683404689 807876890 808133999 986254994 764093087 858191625 156727631 887411960 962768204 998733999 858395644 870051745 159924343 182164394 940585686 953248597 719712967 738911092 780549526 890990199 589650426 925941017 783291393 841416448 936101955 988384823 235431101 305215718 199890489 548476536 560732295 610370415 65869681 840287765 884861103 982600540 415270211 785736588 907899600 950383640 184880746 732171230 463105730 661804444 183681335 233948988 114595505 740489367 895413853 914732729 642147114 737043363 220414449 454466563 837069358 879003525 997882723 999042027 701536525 779663390 344666730 947846937 510493770 884658860 22275264 494212857 173651183 536064214 342617812 401310364 833117180 973916862 869392164 875019670 331867246 930310416 517314283 896217775 917830224 971918104 469730686 655360873 494000662 525286242 645417700 838245461 377050302 737274800 67030579 887536344 116259185 209452530 62430780 886546777 985426538 997110045 255818855 986220432 212790646 990352124 698948641 901780372 401155797 529113130 141817268 946380102 736370464 937037737 275593669 611446826 622811975 917874587 173318339 761721783 124411768 553235496 258719482 784674040 779804131 811561850 460674753 507453765 684595509 884439217 59731854 684270738 806777053 824678814 963349503 976581753 922523845 982392302 210201416 252186684 975979860 988076401 858953598 904063719 916342499 981352358 483948747 548965394 968679474 970472429 671167362 673513112 356753348 553780187 141048736 373032168 189020620 650093040 137762078 170538133 885504907 940661943 395900381 684341176 732645299 808886315 548467494 901020195 362113096 815990414 195504924 783291761 365852533 536136131 791065265 842415165 30923921 516065296 264341529 665828670 789452805 932907855 737823915 934329835 695703517 785175753 731211516 977643151 177670728 911193256 777850152 973887892 393826825 961681876 417770212 575318613 658531411 911934524 311650679 568659003 768318990 928290855 55465301 273823655 893967019 980119777 19739296 692486689 432986416 665225298 288219374 302328489 383111202 463949413 640219427 894351880 402463424 838826491 749857728 814024294 726231053 929772141 167225532 346378409 373889047 972813867 543877434 699415822 963180976 973071883 522597458 794980932 122849725 314655629 405928790 411951608 416992784 747839791 261896589 860437579 806907189 901916121 749448693 880758154 504172725 536659751 787048374 823960545 139380390 584102040 324541718 456810007 620836547 833527708 75774649 178549630 853574349 958793566 821328893 828446037 590861899 663823244 373069700 758011455 508401632 663274160 926520668 996556066 17663528 287021696 662342616 957696010 803826869 926099178 279394395 865244445 793429624 808555043 293301108 596176449 901078256 925272747 277804973 410606945 357344535 454312122 309358714 805605686 57520025 863363648 805911345 933886348 476861819 644696178 182096575 496479236 868145029 953832799 521500119 531815485 395121071 997040922 196341670 268629201 783597113 784470099 60596529 143525264 56677046 968290266 356296224 449616343 372256058 997006117 353028573 465808724 507889455 941883013 747615713 756344635 500122858 697202576 768654245 816184449 753561800 797032814 72692772 971821154 999591638 999795761 711980264 811431443 384887434 398932565 449303996 776833489 784401142 998426166 608801324 999383926 449486542 704931236 593253684 853626330 723043390 863623877 141571458 504854224 114943698 225643153 320078994 512569877 324637404 970697763 199348825 696778765 796106452 918529349 854269753 893980316 922579485 964031319 680186477 790468633 794617677 926097173 79678698 881163647 357128119 519949757 982720512 988157790 843897882 959834745 192217074 733640644 63013515 706710573 262490152 839107080 48455976 612204330 183925972 287946900 982618296 999983148 301364022 917341995 816119732 845896764 530693739 915843463 346850119 822044103 601678314 654005542 179708681 803388494 808653142 830933055 234810694 432307255 946641462 989751616 576179042 660003469 579234493 935347994 616544732 994569804 277823183 686185247 960817047 982099048 251204014 671735781 364984677 367274639 24207473 543021667 293930641 295338123 495338951 893190625 612835227 613490133 913972963 971107045 1139672 198622967 630093518 841138947 811771844 812085789 575485416 733871437 402662309 630638527 756874178 826569233 847402004 899667218 766442147 955543607 884302355 999317625 287194979 649944071 158337447 320256125 49962444 171966762 643707439 720717256 897575999 927346501 326621120 896406118 516302533 895649750 814775636 842058675 714782322 879233126 104807656 291112132 694564940 749876058 737069144 892307012 212109849 973123055 887099450 948741594 134145077 512876725 945640363 949246873 111735078 418828092 330262297 957547249 276884757 621921908 52143646 607816552 884798226 931618862 379712050 603403361 46741829 320951272 148465456 622287658 991927062 997055304 87342726 88225345 890980019 897886035 950583063 981645224 944309909 978606582 116754826 303675665 866585807 940325836 342391348 947925027 386263144 753972157 53364212 553229475 29233968 211290359 319484834 394232383 168306069 640961959 783563150 911826479 168874463 195005996 812161598 969639311 158225058 539225210 265204174 627030062 419603926 478167384 656896438 927998336 812427330 958867125 739389499 997752656 291488516 403607206 503996964 833074415 185367867 765720340 710149287 874254347 122212142 155559477 264448634 945031243 316168754 325772720 693294246 962579879 990262412 992711836 869339838 915934723 723871272 951451060 771506032 999492516 155192191 986116272 860969706 904298806 364342673 394103678 712256737 869796812 163284977 751070459 334205591 478690734 74697128 621545031 401893319 664943729 739342859 980078269 109598162 388794185 984916778 999924779 652054191 724187340 822385994 934334239 524343237 688594034 595776433 921275216 863468870 906679648 197360710 548776622 111743629 153601767 203036978 510259630 337976364 343270791 625789853 725129069 150663174 308254584 234791779 803603320 214199491 788625124 905482830 992869753 609491847 887457556 419090974 690694388 649858998 968347744 850453295 873842628 282675998 418657618 91099712 977337962 67623014 81952473 460226273 744556133 974599966 985348229 946605795 948136243 283163329 709463324 406244500 643245897 810238245 868259687 649179429 796090926 628114338 790019544 967150958 978242945 509766226 646694034 574016536 640889087 689385165 710615328 648424733 964854317 28218582 484916339 154541755 832846594 379161807 721733799 914099094 921277043 515740388 690365773 807723973 911723056 881570622 946514138 476900984 535687780 102515552 145695622 807131508 859210363 993640725 996380023 135918360 281813314 585670323 863134938 839631097 925781588 200610345 500632790 363688606 818307311 169767602 202389200 543235263 923137125 421575590 669098195 870106341 939660015 85094554 600176066 299226952 832365053 102321052 547068923 317185917 514519839 248470917 889515815 617825125 893335052 507778915 756029857 332597418 675047711 294552647 910770838 12007750 214867015 986145879 992813589 306547126 463104333 988937020 994821058 431103478 942841617 307406149 525522313 739647548 811793922 769355428 864837600 265998063 630477901 591271207 622281151 994262249 996845386 151775832 388082052 241147937 295564946 911510144 992532162 843662166 889507161 457751331 803717945 740051949 780588104 905838712 949821468 798490457 971615853 169452148 538581472 423778529 936648287 540387813 672720464 180325830 198640655 12612603 652200579 960165923 976048100 103741831 703893748 509549079 939626987 61379514 680306571 451371528 738703838 714331040 940619436 531945402 694955902 864523858 927169044 356504639 686791263 791589881 837972389 891116302 955913246 858485602 976087371 841142652 963596400 872178125 906127650 463332558 693058902 991828835 993486749 243231589 309455507 657786793 810588892 925570579 982315328 311008338 815280922 140792412 464267579 764589756 831226074 192248476 423915220 116458818 911587045 786491318 992257626 822940242 903799179 136519341 561637579 384199652 945787185 968162948 968650415 21195573 653328204 446670407 967539046 411329802 453674702 239776818 639307416 672415180 696466163 361239935 484020498 835626188 888268259 182494224 554816573 165483309 967267651 44591225 792608119 651583563 713286241 61786585 928024205 345715517 932773168 205049464 419118386 705916955 901585535 345860782 488407423 492597162 779243381 731093489 920061613 913569753 992176194 456521098 737470247 640618873 872399149 569319989 692131247 514906007 887796741 979008579 992008499 997428115 999913528 110640387 853823205 177338990 351928795 626012400 900536430 886759858 922318498 411676299 974003330 732981307 933394463 770425189 782393217 787194531 912498327 441630865 707125072 29497949 467535416 314338884 553764018 14938749 388396478 82114083 418130561 218116153 757702119 835927103 952402664 912799532 940850378 455379827 769705741 202383120 529604295 360424595 458497733 232311292 525513456 322640355 627130906 197267630 329402914 349432549 720829820 335467848 460517891 916956174 920695569 781115266 800316523 38132654 197891286 123313814 847648465 64576046 448472922 903252218 903788257 694425633 964056304 612874495 658389969 969237823 977445500 470768679 698238895 653421907 653465222 212130751 875645975 516279823 650981314 363437271 673306553 492689189 714531674 122002599 675457144 948345487 970296867 325211145 713271074 830499783 941471614 133785057 615469893 936806602 956436871 2716282 903496330 719044776 834877278 882817179 985145536 605311716 945637638 842381514 949522534 384652947 810738912 465506711 945626720 93856577 997708543 571521788 879975311 364499201 743243616 736167624 749242940 378089078 527224824 122018813 737570185 321176912 530054903 622653856 878104689 177283960 748957095 301121001 861261137 592268856 630920069 699296998 893481913 54387459 915740333 387226018 587432750 998832658 999029922 345910463 496090825 129032770 289216911 21318042 191014579 996233009 998933658 425850526 942857514 832086402 979983246 166364797 681255121 258451642 917907723 68122287 96742520 816555687 919928823 821558807 986059733 407174961 479820254 44054675 925216376 856666169 882390699 123208458 798583652 953972542 996307400 494760712 676966129 70353554 540344994 787877773 805532587 278966539 472809308 198470089 687659671 602701063 846804219 407520345 569636103 584764520 627483518 744799230 803713523 508379103 577169783 9781550 502995888 590951358 750106793 272366589 957873637 230033561 989674128 113203000 252187557 586669829 884254391 24141142 77265689 523051992 910539156 80528625 729873973 970466266 971967934 369882884 437705107 85588696 776727516 488967362 491635331 495148459 768073870 847309208 983177449 635006767 838828691 911971381 933304628 367941812 767163394 886933754 900810127 948649281 983799255 871950525 907478998 188099269 578323968 176042424 971287767 989391528 994232307 3654642 554356559 483412307 646158874 968524738 978372726 209109463 567299376 970745654 988428530 829994970 955050604 159079907 753681336 200693082 394899812 257392808 601213894 512124338 584727735 459627517 679911611 87110470 157304048 463876410 988649360 260901218 546132516 789075598 914304936 695923749 821941009 493574216 669905170 949100296 991405448 398618833 538190850 380866852 471884421 781114403 860403603 462163774 740072847 933541551 994654056 448276980 596540458 466532224 842418335 466701603 714735634 868320870 910531086 739381070 831459898 849472989 969647869 431045882 512762693 580610764 932722921 57181199 141263435 851717218 960259746 803393039 803631707 646583732 892143025 171845294 288415205 845076104 959645381 698946535 873290490 976722842 992238764 564677322 786536789 819455287 978307675 897121451 916397317 372241314 737404432 626126329 647323592 772358380 868767846 866194495 901398158 224900531 288274574 203235860 292406385 410820259 925015966 916722641 942734271 636089803 715883808 121809650 486637126 303181124 915441409 787957937 902134099 481966776 529122760 127118588 957247128 382459589 854234749 161559318 323914624 530756892 564586490 521725091 768980883 748590538 853071842 451504566 583526162 602900263 778060512 6641631 709321177 282989666 547111773 177511946 445445112 71344259 730987059 625664401 671891594 159103116 343675429 184904062 358446895 319480442 815351625 388900699 791989487 238836658 518973992 695789078 710180140 776861688 860110026 557473742 778810536 710424826 841429108 472693074 817085087 911223840 928753359 321604311 788006639 937926263 980610071 58016655 706659305 256386722 294290508 456102448 499641915 698922349 992496194 241607621 452559584 12629163 207853566 489320430 628057642 568045471 765481610 333176377 812260419 565716702 970094472 953140207 991844401 247369123 926795911 893420760 989844704 712427184 972917625 999602667 999892568 379165558 563305001 121071761 591868442 965366346 984853162 160858900 802374041 912846766 988955169 181837910 467252510 104790929 789453484 755926499 897052484 624480764 812101719 547830652 561512353 991293524 997501419 305705271 833959046 220867846 654767227 417709870 669744869 216385981 854738932 477722643 606267137 248027451 345641032 120919432 920290890 704903271 849029929 620881154 864051120 862680213 982429612 173330041 744082481 258180795 930249961 159334253 518864253 88626588 497700544 810648279 851066031 152960305 456218081 778849458 960728036 257586883 484082272 362626584 854763446 404343324 662244835 814366469 861720926 687503245 978184323 792981109 809772083 163602182 483831607 527368512 959636617 852670524 960078138 841961363 885016461 50541372 492019032 833392529 879781556 540421759 854824143 265988373 424632505 663842104 836406354 338699558 693467431 489365229 643158609 674243127 963740066 28137073 824524535 642213245 689875916 192085381 998733112 585809551 758355200 472866380 551620620 206111540 211690984 781537940 830370659 765654863 788673662 2279085 100361316 693700150 744565422 194001871 599742448 461478569 805045752 507604676 893227808 448966655 798439894 870568191 967331467 385394130 412071895 998096818 998544936 319462550 822897633 63775930 264848888 695872493 803695442 637690943 940586487 556525347 880880663 756423034 961291935 28318967 408708389 792055660 819098066 784247143 853156148 191889397 732857176 821409866 824467603 637786008 811923346 605183760 845359430 884737332 980398995 901398209 970401056 234618922 518679241 631782357 710570901 338565850 639655294 503920098 692409685 741555166 956110644 66424000 944955062 238724667 882304233 784169165 995398857 336866959 516545488 989285522 999864047 874157066 946959906 231002502 422035713 887231930 951239510 957156290 989469603 58002321 871492256 73511612 137989592 392730403 702924119 338891313 738898764 579493864 737816897 788216775 933307008 212170106 466913696 851463182 958260833 8903847 885861618 951581421 987279504 235371007 760195909 119516224 183318869 725155906 763060284 462191080 762418497 926568504 993157501 488651103 650470695 613136136 746712292 872616947 986778844 617081899 769184317 896671535 979044063 938103973 957987575 302585383 940115588 447014895 921658788 655569246 993939706 7365664 308260598 835929872 937478257 955730439 981246316 980570710 986939238 778605096 837016480 729505571 802154879 143690539 145196404 418055690 788569740 416555078 614296661 604791608 885004681 950532917 977650707 913736092 941448735 463142596 944347851 838452031 861686633 595830476 710296118 647554642 969748889 509248392 741225066 712330884 887169077 991020795 996646835 749198779 979480525 955709951 982223284 116125792 708759275 689996415 785430805 50632384 858380306 620843799 723649377 406118682 782246729 894880749 999264869 836872737 906940820 122232085 879950511 294034664 790582750 500672927 869861162 695224022 734981537 537159906 616105691 447184272 699270099 567647216 698374741 705043686 769097957 816185273 906712089 381884946 667239833 826106946 993245437 444840574 667970653 888026093 963374344 473539640 954231505 878015989 955467863 426631518 977899335 570874031 945272937 98990102 543261073 624347133 645710663 359565637 505804676 740713888 834691209 461968196 786386371 166880055 524411990 749352550 833729518 216077783 602303598 363262263 729913488 715830331 896956475 866601061 998871627 810904823 977414158 902219085 974986814 563574038 817659654 787925880 992599986 3591612 902946039 115301531 386398083 300018670 700097148 610007496 799646598 990351416 992991608 821207138 878575617 149413028 625274160 575625535 966425581 426586628 544013013 644823772 828547167 643267661 674918646 53619179 883343342 706821023 752459023 712345538 783136529 541120094 564865630 181277188 627232047 503011328 964998703 241151065 966086587 926879355 978859181 627205783 947496466 258927064 851218865 879596226 988579834 713438090 931073214 556211447 752742080 47634659 506388747 142072363 780008477 228272327 447700265 961541157 973135351 558030919 659354131 199792448 843788158 570016379 909912053 343129405 792407127 510290094 621266277 779625707 810722108 435427854 573343064 492145331 966935460 121137368 825786424 295970461 494028568 833916687 918277912 680308212 926518040 555950715 949872692 527752323 941063422 594461034 843212803 651996232 705769336 686128462 870184963 54120213 533726861 735313255 942277423 844838199 886198257 10008667 392511583 109329327 401642170 177163188 996491115 689042010 762201150 105095244 748486509 601336542 621593390 215766145 286968451 163064751 731386746 369548524 641708483 842429662 976147833 916345063 960605199 50287576 924153851 794160750 806223903 474157648 896672079 61957025 868487136 652214406 781749896 236794933 248781270 146152712 668983437 692068752 730171715 459784998 590951353 553533510 883466949 461601431 848320632 810035453 822111327 41493090 424742176 979029755 989814325 566910094 962120939 406167894 739485948 976644915 984362910 212215474 498002905 289245603 987749078 950996856 981478146 486894752 604126347 159872622 853672501 714900201 965287513 500604921 598321677 313543416 928230338 497787872 917471362 83696001 484475215 591738665 913628599 786797159 931591277 139277725 686877686 238812548 401525215 809009986 929003184 343010137 675987029 315673065 403601617 175500894 558604081 991257684 997265291 481647880 616162753 312743774 830613561 939420374 961030296 417231652 991737520 852904767 924485470 333552176 480163608 554401475 676173058 337673209 557028428 44513511 642537872 200666375 456866968 639839497 655962378 433362148 906037942 892106763 946686344 50885580 768843832 55076586 914331532 791844318 978975211 50692607 146632817 72004950 715849441 113983762 998774967 910200505 925601776 721925754 845806023 371692471 846220961 789289603 977492206 790268039 899716839 865036150 974759284 117635248 778902485 377002737 554773103 893290539 945081183 175933695 423608984 788536868 803483902 489378993 584535348 724919909 789018231 661742520 904597603 440913434 475913292 13723255 63560937 79742990 509371052 460135424 533283286 377457177 782195059 501788515 646044482 424030018 927897938 409120198 743150069 632466820 748350553 52516407 314503295 456627518 948049343 931382839 966903950 560204493 827061990 206983342 244685745 403391643 604826471 576906211 787779218 690415848 880448871 296492181 470327061 1114563 111412305 212371252 870919160 848251443 852536418 850800374 955336444 656601786 676653726 648782507 932892464 130696699 335924168 229189210 464345596 374462985 957163067 802481685 856306794 856139023 904484273 93059113 153849466 870947073 874401830 500362694 733031960 608839441 977966650 838920819 939313336 611979427 798783025 482889556 925897570 305128271 876206938 250655112 394561176 21692742 196566708 198540821 446516178 684425116 763492021 59200948 558811741 543086747 954977222 511733174 693974539 184819573 497519036 913577934 986959416 558794789 827039784 148987976 303230524 47588121 617870720 77613685 215040763 168717973 503858068 923015770 985141788 290582597 914602121 914172144 942265639 501020102 509120761 724757718 802833729 136935117 571557345 503842637 762639937 874057133 923187213 442539400 955186687 195869843 526164775 588980584 609756636 876741004 938070081 290124960 574067614 914715385 977884085 115933538 380350083 933867621 943195633 528062475 542339338 797262266 801720765 185238746 676891679 934920403 974731400 232459536 931275425 810531409 907116807 120726640 507055619 423766326 968463499 787209304 895985808 292240540 299695823 40263054 336178208 813462303 921263673 947290172 958110956 266095174 984477127 939615607 963256596 378232335 987637540 651770599 918966177 916092436 979064070 85926585 900394358 913308416 916205222 809067994 824721757 496649283 671176873 369640180 455371651 544856988 737496028 946435139 968176001 324264660 698506353 192489265 456867547 552353405 869515370 781388352 837391626 500309866 835696930 677354326 721695565 142845515 768408464 593894764 980049285 587061212 714826549 852345176 943673171 176332593 784250158 58611128 732656713 584131821 613611390 264330093 377317557 106616454 116377551 930892231 958351149 649467170 812043132 682701409 739004022 214718855 583544772 754902664 824215204 836790721 890948682 893331800 900733272 649065151 730026610 829159048 998941310 124953763 863930748 446660874 560501752 705964245 944109190 995348456 998651921 201775346 960814425 761202763 934083623 611771028 630627279 314338887 511541065 713154773 889233190 21753627 301558512 38441622 892708678 355092966 709167677 860735848 971305800 457224906 894076907 786086912 929167311 14737359 304099722 521789783 532102168 563123207 637388250 268171802 940121358 601513896 696171702 535418765 838510499 522347706 840176244 773979199 893060562 899769685 985950635 746028712 913763831 380545750 546836528 970547833 977544192 847373228 986428124 37149560 266271015 418895947 726601497 33546711 486924997 772091481 789576303 498343393 724908799 705437295 884546745 154706166 346881448 170944472 752388583 167214792 969561470 854943498 910954968 688615471 921688485 126086527 876167585 282923059 415982366 796536279 922269857 4067373 515861890 969771779 977615086 162118244 326276292 855511047 934649667 379088148 728192211 935982079 949626993 286922356 522567382 789824441 941474345 855347311 943396217 525034025 708849712 855225157 977429491 821245039 976295721 730361546 773409919 830713360 997009620 493801418 660338644 786329736 822964051 860155358 968205442 113945783 540639739 36439301 413539702 931514307 950173691 646395916 673079526 4417517 307150749 118415355 161698767 489704656 724623239 546760303 985790489 560193475 801827396 751927551 781568748 764956943 935535802 951023947 956909214 673216839 741787499 466510155 552952548 11987282 576843473 142589273 966904053 650108640 972266359 977051145 978288462 205181291 656478133 588184513 833285129 246314543 412228769 266012406 612054264 200308278 591971257 76295024 335177619 985679728 986620915 617750339 725401851 581914469 683647942 839107361 947598862 946773332 954349622 554943448 838069788 473609968 662699097 653372005 910053270 996822648 998889948 525378276 603800038 989658029 999973440 875232574 972653476 608035770 856208039 188012126 295840222 958873297 991300164 24824549 483217355 623438098 980891863 561167832 843506208 72299583 202532901 728590127 736068516 582602458 978810225 627794323 635496665 29609903 310641207 444534209 987526353 297749176 560561016 421799228 427811915 458891199 738033944 305420577 354181111 503946322 852330258 132823171 192527598 645442382 939160417 305775850 412810112 312309922 442902916 798523929 998664344 713501926 889494673 568375187 861217485 606130606 876459578 224424554 679178982 948330551 971068184 215419558 790585007 526530463 527255759 368000029 426508241 689936037 961823370 74365289 332859941 360365993 941990992 444053047 508420135 955838900 995588455 565511551 676524577 362129684 882016735 548753987 706268702 940613907 998199983 273680087 672171700 701506810 902545405 828824261 875930886 332106144 507559710 496331949 718492411 39220318 186986199 489382101 615981621 337370590 567714489 887260728 944138295 794278114 967282412 453124268 957830003 992016162 996599832 773660594 813979646 580581500 894590832 960275717 997823623 736130332 790829115 952371348 993732553 13241096 801989276 837181563 931757559 191997600 922033923 843035521 863784705 640538953 767991274 352412604 377875167 576181102 847084619 866188908 873017233 655537763 811642426 993708315 997775666 360352530 853482567 947931096 968825280 52041619 342156023 733810384 989822704 490525337 737008722 4675681 206561273 421471026 772639436 405994408 637093497 59791032 217715233 140164917 296184379 946505506 954277187 693659902 754611730 582809171 804843340 366973819 555204912 397205606 431091964 685982226 934584763 144665813 350816573 541069073 706806164 347737196 673230242 322827936 342692155 435462890 898084578 493387009 581900951 433300536 520416904 720127210 825903535 594424370 719332134 295495457 584636550 544441743 667093017 817779756 868530341 642020011 699569510 174383601 263015525 807068277 982682762 79010562 327150065 766452656 976424752 623018680 934354705 233404630 598435997 421925462 884747743 357171043 473191314 186704795 534662898 48139333 402713320 713982626 809946570 520983977 620073822 2328477 985536385 980577107 992058632 736262803 765535591 969105538 992004436 952197915 986360630 747826528 754989276 664046408 745726124 392989249 650440168 574079812 819108054 89377142 980029152 64026503 274682333 680661449 855633714 816192307 894793852 245135104 841055771 578048660 910509193 342799631 555277773 673685143 685079929 857514169 857585833 258733429 305003342 129474470 978451099 651573583 986222786 265525414 821616356 832568011 883198828 268112682 388142613 646276244 956714166 158637704 182433509 364805753 940560196 71940108 818133410 528591758 842389268 859301555 980667407 889022257 984272382 143928047 235716311 107930448 373340442 314185771 916073353 205421779 790025858 427870463 982721176 167488423 394418178 341823011 958209291 329725049 956239276 220061041 660609713 438133914 758244312 195723172 232339603 533542067 652000006 589830682 867642771 693459106 855082272 83905797 851237445 154803195 405409659 955176292 963439444 357352343 545780005 809276574 892175547 778990961 813690315 508238155 720280786 352888799 842764798 560083404 897557185 394205101 656746115 712606550 724336421 987991724 998393803 133771911 654155174 753975855 899833482 212357513 881892115 509405767 881842210 49514400 585345215 252807062 780602698 245233545 620139049 901504771 946313991 269368070 799741973 29882302 298159104 848370466 943030330 199582164 202276470 602571233 966332287 586730153 728758752 606812632 942203672 657097475 847807235 980513966 991426504 197906099 592998475 762575408 799707498 266206199 473665760 827951102 849368218 283115570 522005173 744778355 996459640 803870533 883742252 857019372 857859900 609490199 880069567 546901994 811961852 344735398 448041544 564371833 837417443 613241858 738700917 313811710 870756582 640912840 924301247 88051382 758644234 953061139 968014039 396769294 523933989 23116046 601075533 491873926 775591218 766598281 767578805 395734423 937308798 549304948 845316629 989115523 995390189 973813255 980165342 899394321 967946481 188991640 927258256 198570406 401349479 561547043 986927900 585152486 819895671 247571704 882756850 791955849 986831616 552883527 885694163 91662880 163593020 894829292 966117352 818220726 991334840 154588153 313017771 299303332 584052488 909619596 987796780 707387759 978060060 423199886 793511964 731597735 935966453 771146019 981875307 255755874 668369508 616643561 824926896 578524939 928658949 490722523 901319300 207637397 293167382 710190777 763073485 683947337 815064343 236822453 956012777 408623043 527818376 440057070 672598652 9788600 648060319 322672996 489235232 551735012 584081113 960293959 991770887 813993273 860408522 267567135 577617687 907007456 918103147 571835864 576850314 21778033 113129811 663773732 905418975 517932827 714413894 610911494 621185671 266692572 300716172 317933241 369878796 198026019 354182304 663136066 821331571 647224132 844451181 551925224 612039112 963904194 968347687 436867874 753843945 794819971 813161718 559646430 909504957 560419335 615619030 841962522 868634292 348099459 849401172 912592728 939172124 840952908 919894653 697487756 850468216 442433071 612169348 508097555 610306545 798404584 812071025 171619903 808893619 116326990 780290868 851444723 854438698 398625626 655307451 437688743 800582033 39735567 492987295 708261447 818538720 286062291 314836162 934421255 983238708 531451543 825394537 493351450 749717391 640223636 944952692 721148604 794259796 776153513 861144402 560043490 873324122 394783519 982214193 837206500 991665542 155017516 448257191 941528208 961601205 880634627 945367210 365040541 555663079 760595407 981551686 784367420 953753378 534393044 775461745 318447545 596914687 194744307 885184233 268511892 570043332 606243185 827594248 359840675 917530568 460747805 837208874 706608203 976509498 102084770 130418176 257096356 739513700 109554431 259347512 497853297 644538872 773478611 986754521 738057071 833246682 490951204 935444511 590134625 854262875 978194432 984054810 649980869 811589674 187236271 961915633 769711018 867727545 646716267 778766782 800392943 878547248 841511995 890393199 530025669 670135677 476360911 722199974 222380005 817514659 677411117 877105150 750884115 829277452 694828675 709788100 953904380 996716842 442116793 711078643 79402 392994760 266399328 972585437 565239089 764753398 557772215 927304764 178753756 647382944 147734024 530270347 235909062 439082636 490995675 940609238 287859276 760250399 293773802 921832530 934651371 996787411 386405976 787138696 782550154 992721652 611647403 813141855 564795393 893038308 28060103 345749911 567433958 757391787 744506881 843205245 831241782 977311580 244337054 522575909 651362430 865038383 553467877 841670642 146387608 577826360 430533335 707418386 713023110 958778370 980310996 992449288 53735926 300400811 345413583 835041385 927099533 974626466 239616433 938348930 222801076 318733299 221429274 518109421 726842427 788929634 91694316 265536240 843803047 850356776 954124297 960740386 336695536 341247275 855606892 998029949 295884315 637769820 56409536 587058040 534852138 817009390 934008785 993956586 846607290 958611991 512938158 997465313 998155510 999882085 79320842 624723034 723533093 757161825 344744767 755684358 269587983 476227813 573862943 926606601 581525031 985969075 229656739 311879778 443051288 994924648 748600289 780412720 248681725 558567595 899953735 949631818 251831300 409213710 545861113 773949098 169814528 471389336 240843983 960365119 57907761 362975904 782084787 952326857 696141717 804246347 689303751 990529209 598692802 985541183 873317785 977416544 8618406 86817573 306016037 891264883 355069500 464053612 472675478 864205931 510726937 685545274 559454852 954747947 412432504 584681969 185453278 983992413 978032464 988281510 305034958 417622857 934100961 966648058 136056399 381990382 765937989 903014592 303360079 450334908 148106920 625703184 216408554 851096342 15122562 708051519 672480947 869243564 168678182 439926893 809218483 836539295 420114804 737716548 974290856 975352431 180063577 236547212 417766745 455939510 223094490 903830165 313443565 622610474 612071558 727118165 236007575 852162505 844879774 964476778 413654794 825451150 377643666 466940454 433425541 486186382 634141017 770222582 169400729 426860680 619883925 904856540 391053577 662070063 572664786 864607972 605731442 846881802 834391505 986818624 162759066 757988419 721982981 744044679 593896989 682509206 846352579 902656764 37372319 556772450 118068231 269099575 57478785 655208527 529160045 630972580 377825827 784389520 123546637 483706690 39639458 84875442 970165493 986347895 510918317 639527749 729176595 858921691 905220243 985041012 596530659 902995289 812894748 972060300 456307287 514683584 485400618 979072974 439768428 941068292 32865566 485521455 404305778 993445197 440013916 805597820 141650351 989545535 58401494 368071739 94253605 167025727 702265395 718569777 478798976 920107483 891930274 981543400 457481206 504964991 144586186 742743478 838042555 994378858 609116965 822754772 293548791 895756824 801457499 865044702 155064027 669383106 297671751 298159644 711543833 989652343 232779881 883157605 550425408 706096452 716094037 786689197 907445742 948428058 387980486 989240679 645410271 700821190 145403531 876902190 884717751 977968063 281966742 560152837 114222163 391346235 382903745 974372168 197950882 905914260 813391308 844984520 671013389 829670339 357258401 706967190 321177288 850568365 344495941 667351119 420339102 498736638 203824696 230358549 564283853 894903503 135958148 527337652 58781531 213739594 625982422 850886364 605328998 706193051 830394815 900135176 736629636 840157058 566925119 759049739 735234699 893508468 824045050 983949718 766653511 881950462 337828729 903232091 471458107 678509736 645888354 751709402 979636109 988300993 340793462 835681687 929908166 940206849 739528794 973471794 135935176 232064795 839685260 859160031 55877647 383161020 75529645 128992583 45985519 138903575 12375830 216205352 519689555 668204871 863724986 952059971 47367822 896960263 890620172 896627769 134273226 786328134 9672098 783203462 217619494 851160530 946941787 999375835 770926170 827209577 769681108 994540085 565871891 633967047 480803307 632358913 11075167 261124466 252871163 999343750 904573263 994235494 902636395 906324014 446344296 684433763 983149118 987413625 235975600 957862645 889508024 947209959 401859860 914052876 11475460 699031948 742153224 913034217 270744837 734572689 267256512 339879921 925773623 990627349 485725849 726438026 301024017 668421218 426409729 573421269 441016397 661010714 598549853 605241633 805962208 840271420 960062556 999211333 861661169 929240465 159035965 434129894 974221375 983023133 9504249 742988119 5288398 544113293 218323928 737884540 62247781 322730720 720504846 857344975 795817053 811995648 252722018 926889817 937123188 937959551 154100385 230326415 358026974 459379108 906700091 962999023 366499796 861661541 85764307 609521247 468705925 757768974 718333672 968582490 197251903 610674553 674412271 910072869 992980744 997753070 916821877 964011534 912394189 978802583 63829353 212172599 591277084 828923090 290190677 516836689 669439478 696800350 143407539 364333170 447781209 908077097 221224991 801204991 59300853 691448206 135334919 443419899 282625207 578118680 389464052 576641212 929575767 961465745 7571704 868063060 939808741 959655480 531795457 935360632 517335859 684356690 430259580 971590891 639362679 706454708 471705409 759258985 570203870 799350114 974381229 986599847 518270522 651366844 823683429 959383665 886586786 892082814 215487735 841543840 811161547 855420523 24427631 638512187 539384338 817329749 767441627 934862009 573957926 968870022 513249584 999951847 570373018 817399987 41869961 475801614 839359346 851631639 108652124 143833430 781384737 813111122 208283556 835827290 841739155 862724105 324387480 736455024 972022180 996788142 695858287 765636099 727973847 745157803 269452702 440515385 230166471 780894151 390313997 549682806 907675618 961069720 55798438 388047671 281237522 465061627 487232772 759924315 978563211 992233378 214646308 763706280 594758618 765392549 306466721 530209199 593167657 599349679 409174423 647431506 542508954 554496050 306368069 332222410 413137758 977404047 294986000 456172086 480040149 811883431 942812021 957000659 600983388 758586230 397827772 579067397 169244099 851468824 502614646 793917430 540986739 794025070 208129503 757876095 390535374 727934860 289144199 375403703 482891695 892622259 473866990 513141647 391776810 972185278 397894892 612217631 186149286 942923181 743941926 756152542 817216666 923900288 45673274 665488320 82664913 956075888 466163719 949634690 416427639 976656381 791889357 908327662 810347891 943162412 445050561 891574054 819595536 962948989 905740977 931029030 922313174 955494430 957842950 995667656 850021928 983372004 596352102 678852365 372942435 996650460 195650246 554790573 726970139 819443508 752610973 860460356 820764476 846380413 562009749 721906494 959942962 967055640 944197042 972947113 637596243 640043616 929818911 955265436 111878659 672172244 204616939 423401146 681974277 942303397 20412467 607109566 359433800 695528833 958853246 970322615 682651902 950978759 613436162 782530906 512373123 735902778 11673135 387429369 205307816 642623200 356094439 948229564 196688980 840215669 253904776 835023411 768111347 890675075 278366229 921591291 175704753 335593042 845823723 922878828 645864037 731138879 741934309 842653420 537244786 973656815 250903197 274685600 997034284 998401560 927604489 998096421 356112035 529167417 832023348 894569090 622743115 881154664 786812800 871742175 358973666 853231638 782170278 915369789 25435992 637926368 258253569 473389460 314655582 662015757 919392540 934737725 454927764 792621857 21237540 391544905 193112792 547508003 191397581 321364450 838317350 906590441 206507137 913777550 332886957 577754837 580539882 681231705 462287360 562203727 17956169 471026173 944056827 982212805 792636264 948936500 428591196 558682577 73860455 985780984 363421365 468416364 718211758 832119660 294226654 643533211 179728474 500003723 74064310 727817046 717556064 891087700 351506155 988381621 305122568 479726109 441157290 823550333 574457752 618436858 941248787 958455326 695682738 818200602 926049409 965168567 58794005 807677657 996660551 997346584 506840754 593475358 519236160 531909804 64458471 475458010 659187035 757094751 852219292 898403593 330162977 572055121 998065771 998728861 115361592 836880942 201011705 821947669 922063541 995874931 327517230 567765312 347126288 798124031 315111366 884598183 556079623 813198800 26385429 921893263 983484363 991005606 455196228 984644581 373140103 740788653 462746159 484570119 284689670 901104779 536134232 581652074 517383115 635704366 952955035 982676827 749459484 893475754 294940897 658297375 434001545 763495604 80300664 956853155 669283230 926606702 269424368 867130390 791906379 988547402 723642777 736091013 472406451 888150013 393326151 460338779 265828879 372845577 200260699 793577138 742504045 786246561 779655541 840461544 138203774 282631930 641499073 844255214 560386681 666181045 829148928 939698526 792030243 970878163 243355729 603873555 759235969 830627289 281338287 306019248 759427783 966415563 542297264 635858488 46516396 147241414 932409913 976619207 375544295 789262978 774066398 814463152 558374929 776889465 630275022 660134540 718289192 766338318 556001001 927656830 681463032 841426308 286000723 469566845 927401057 966507090 719742106 782825819 873799862 952716386 206480013 822746533 805098053 929297063 954515120 996301866 348280055 863200114 33834510 103678913 849842287 881458368 248959680 360676872 8166362 332146780 853187966 882636162 313784191 484366596 653156214 796991134 597577007 991736289 507293200 846288562 590387934 818792358 714988339 784966555 427085841 780870487 310483365 835655021 721331869 954191915 986463272 987549625 529349941 821457083 221144788 264052886 556590609 962066355 910911758 960932189 979526661 988787360 4794690 555738459 125208354 934884913 951599260 960051947 730097203 764737544 496621055 543294277 121380017 139500904 513449494 932168766 312993380 699162920 807880168 840261554 81790270 993486519 648582853 652698814 830836838 965967851 368517994 763214997 431274968 786919217 476803981 966821846 335567833 691407466 569012981 892266129 17992807 891016855 76208199 199857910 210527355 723692924 428351497 708136423 868170255 929236609 464645538 861741854 292377369 960850210 978434334 990885414 539430172 638783480 717420008 812812469 675755398 704737634 935096103 967997478 972455705 975292882 963260022 964977481 330251991 388929051 366718941 693028724 112808831 778832734 357549864 414521801 856642548 983967387 454198141 981703466 109715252 648131494 112152030 130846497 163797099 752602711 48479328 81719785 436726146 875857467 944547230 958151681 79813980 975416924 723210384 967964840 697029994 919592731 328032098 894248986 871768828 978239799 179592161 332775152 89488399 785689304 42467760 961192214 751259295 920883631 636404518 723369742 292249305 468135238 405140151 986885221 485322456 595571425 503142620 544638699 127011988 495714163 852483699 975495166 237085108 575376468 645686084 838839146 647536768 713072418 581085238 772438766 455193745 455253370 429558871 995698739 535040146 547190236 857562507 877965522 215620517 395621841 87648483 164051963 194516793 625345517 104854230 372882798 252755300 347742506 516126128 628947967 33623561 695324691 715293695 947250390 144813292 357224211 273877491 380222706 144697808 360242342 731278222 796139797 694130283 712063295 111059114 694744312 526256169 787351837 445448241 489937511 739790813 934818198 20509687 166957959 553568460 721857920 858638841 902274708 999760457 999943884 328805598 903437953 566538871 664247331 648642306 832915191 656573322 665406116 574815840 919854640 956231500 975837851 515753124 539235788 497490264 773133795 695265268 856497145 490952412 689513190 909585538 960107419 23553710 275813721 323860633 367881159 100760669 114643364 309036846 967917104 934022252 982964886 575994457 922194963 468191919 822980502 113141155 583598000 707970615 972088583 962175387 965904375 399041233 709676383 444291889 671197525 549137755 864260311 466531223 729594320 106773002 656158245 477574132 588203329 35671328 513259801 493597875 912524124 549691898 753223240 759808425 910797586 182353347 521809940 831589033 954346558 207526080 754210473 33032469 248468913 372718461 815343221 825473118 837265378 623249432 974372156 456641028 711457365 641346302 836354371 689555790 958781188 459540250 880663261 361973825 683212701 556663238 608664223 797761470 849199397 645200050 809637301 154288808 309842335 416881541 656499812 851031741 978367975 724922943 980451825 739813455 753385745 568027343 973143765 519338633 737751031 532014682 799156605 425073916 546971449 742974985 743921432 438201558 751461493 986472282 996162633 566136086 631231653 640088022 744873632 447410322 477828906 478648739 553052721 764100080 922463913 103539855 144243900 921771809 948849141 705059191 856613287 828537306 830765978 937178706 957907427 168264035 470573738 306881328 713061065 5052052 539361469 970823171 977018933 196958499 943030332 973247414 996954470 319308759 572307283 643777617 812207914 902367696 993958655 541014352 681102137 910665555 950034509 730268448 821243067 142329673 901089291 535986714 915465494 705322310 727787502 310112546 956015520 970676167 996885953 562159151 789463643 428456248 902343171 612043322 983439558 661184433 769392651 988945 532541064 792460635 844739328 400890139 555634087 794389799 970396836 684406734 760790849 763234268 966474084 910464601 995256239 991782802 994797744 170547244 852459509 563998179 731453651 140815439 893989877 651143064 780382792 481183208 537106611 993550350 995411359 873823470 920879664 420799825 624604580 614801096 708470313 582985394 702299365 960275640 980159903 461549558 736188637 727238189 926167846 997245661 998408033 147193577 300386490 840630796 891430206 70138341 217618469 104391804 814337244 713828003 840305592 708829800 884702727 429835278 969862038 557709561 847799382 91338892 657806257 64464604 926643007 346355937 651477325 156884654 204917891 946388612 999883004 2095698 305326450 941217293 982432568 111114191 986136935 984355658 986421490 634179534 871214840 450828786 550056167 960221346 993690528 244693729 451140246 975312626 988504656 434357931 796763377 49358484 722814592 236982030 758054287 733140429 789969403 247655050 766993346 119222353 822492192 227646068 522633459 438897028 953889048 943745483 963786016 450710271 655537670 371472741 383582824 166254944 385018700 510302899 961556696 149764216 277151596 891328455 980531787 149924796 400074221 714028830 978448959 882594260 993084395 891813496 949023007 823334928 960420579 934551091 943008369 598094903 971819122 928041969 952367296 343668002 567634903 592875120 831127492 577706802 859786379 22822203 319381024 249402423 874830160 525827206 761498425 803664439 868352666 639604246 681601043 779002494 995802937 5358908 76207107 125378230 942163459 371197779 437467328 280800255 503060857 423185365 739117248 880772282 911717239 123824150 262983558 179733211 186097504 413343126 540903262 112299027 112814532 43626002 410048931 687445315 751287675 541435284 592446002 966332701 990688911 17591279 257867723 741943670 986374658 343573852 836198117 140099793 716825844 67822072 781179839 56300971 168909468 353719860 965779996 421033937 906715880 999534186 999541618 36578099 777812576 608088065 691398499 269263510 784182611 776452413 991085620 919060055 949309853 8340703 343343727 204509004 615952157 65764053 929760420 687938419 948537790 540268535 746249924 245897694 590105067 379148932 973012232 619698992 710947172 498048075 794989977 190927413 291788676 323027461 628658489 829631602 915884726 538201736 921191075 588285722 923533235 60828508 854514733 479982746 779547529 122407871 681413911 755530831 806224568 464923228 632863347 22771808 182221566 207469276 791592453 260620117 946318142 832143402 887233166 41284929 102079710 261637892 997140345 823008749 960979665 259731717 403548012 611873902 789098441 272764454 360605632 343355547 581805004 580919571 910589023 314180052 837286984 643581894 649180633 541190425 594179049 525849259 733910405 929593774 931556316 484657047 631029580 59463204 821477271 647954447 698200749 611194711 825774234 928675747 990679594 272034361 560067441 348370294 504852219 220061066 595973727 634061830 945736201 360796130 441697552 119178065 766850238 24032959 786148374 133980419 683845609 693929585 888408742 51821316 151914163 878618053 935139029 922265259 936376655 765380733 956921806 218477171 448677757 82325762 279453236 515247328 556289678 577547696 738293275 275377417 605081752 707995528 834138913 587028089 646648653 647899318 943325544 325633946 993517323 673243424 820362932 296677849 592881001 965087103 990867511 332410083 826987227 973055391 986028281 372299967 705443459 414470057 552663074 555238207 859835610 269906840 446492327 722228568 796719625 533030353 973315214 963353833 985601882 426873072 446559053 523247638 538078226 241290423 281801206 286670479 971836112 682117964 851076641 235822820 864769438 56116464 586534599 547275192 600358623 757801220 830588488 974431827 975716129 249492344 499907711 272662934 516625188 648521063 684149181 601866630 608344364 875416243 913200130 943820652 964933824 507040029 626646740 91101439 796999413 274642810 657919654 527217346 951133783 998298273 998779258 384692289 531055690 978119481 981794221 999831048 999928453 169863414 963626347 135393269 741007881 400590908 770020537 39589515 355678553 645327517 793284641 406827830 432225629 309296983 342590111 603040695 825512968 446370373 709048510 920615939 925344986 836842842 949859757 630575375 885691115 727988042 828729742 301052204 843120892 818819690 832548401 901294237 902962029 745594339 746454186 606354854 756378506 468940818 656215764 708988754 985743961 546316407 781463758 86579550 535139816 141473674 174497708 294504695 578923946 945047547 963320523 962589010 987371265 633979449 841377816 978453790 998972793 417310115 598721508 551027890 876977704 346130815 557318739 816291981 899948432 705457528 779438664 906768509 928679179 69499515 203531416 103136367 461442945 974009004 986763791 925033277 932501003 699593886 748233128 61373649 473693276 873433595 894357714 694068457 843861732 578723055 831307684 600361631 844923181 68828071 249395302 323744189 980664201 279544551 496291238 903988776 981574414 7309995 323649210 550111960 602662806 496187575 714858120 237139945 354169681 924376794 990034742 71558616 793045193 247659886 441102715 180961966 509423077 303984022 608258565 663004327 929246077 438159306 748489983 468552873 808411571 139827459 285730994 913011009 992579577 262360001 603109931 261463492 847136423 745341551 860442211 673954320 895198597 308050622 687900830 112174818 231615353 92671090 185431928 998041220 999955136 224503615 341748961 367126400 376215232 64309106 659073500 431157094 667436382 195254461 308369758 257044750 646183766 59461909 145255280 735177933 959226732 148504437 355169812 85102332 690725590 877009785 916924432 584054907 924038667 85916107 175834520 811195993 814575584 879029466 984347738 761212411 861417432 959578097 996096407 629680619 989737959 471257017 862960005 868619007 980223828 235197702 484645481 409401936 551137584 389589465 914636372 615965506 744027670 967406742 967525019 797013367 826968712 342120714 354607819 275156667 888625740 782518284 999648415 231264133 862819927 819789338 958953841 232818646 501705865 895682973 987639214 129944258 803300291 889825931 989781805 498228941 809858130 31469424 284789996 404197573 429956061 725321275 865906620 351525730 731947242 490824150 964960067 254586974 538478255 818651255 958290544 659034331 906984283 146844599 771726559 670093812 770274981 336418559 474571046 317849676 784368376 937416222 949242268 797717254 998706369 261198375 464955632 902286748 914101701 799049093 893706812 840891224 984083672 800439012 996466639 845463262 989564567 939120857 939409244 301828199 943852154 358284218 721338081 868148681 886726964 758026945 850612847 289304787 532145137 866675677 943511294 344839486 853214265 721625684 998476019 954611164 999813645 352596810 775502932 97553387 894446009 941434597 994367566 943443789 978259656 520202247 541632691 736445621 944550445 109045440 304130314 207341387 379645967 774539055 933760741 299372225 324311581 413568750 670274999 524071673 633025186 736532107 894741218 462958773 678667457 28944825 289246157 661075389 828925581 131539432 726850346 578560759 862032767 163493273 720250697 141272026 253885588 580732438 738768266 421164946 883828806 383461179 503084008 896627754 993102608 199382800 199429440 864278772 926165310 449889477 752709549 702813836 908504977 690440344 948460767 794652469 822789169 332153048 667069074 645910560 738570238 190743371 564567210 582231514 750143430 545630852 942616692 184050723 349644966 32456883 986439694 264673322 780524552 189031192 551717227 646877784 993680888 982790937 984088290 203440709 242932748 327070211 993444761 199330848 586787661 175292375 627267863 241634877 562567337 758606533 784818693 747168513 761022022 599200664 703192831 367900455 483371335 72287843 246494271 30694984 802066254 941127269 976591777 928680440 959954357 907512662 973429983 235477692 560810874 592948041 790337334 30616873 437583895 803601276 933019606 781650465 912260427 473983918 718022375 745328040 805644467 343811608 721519673 294609098 401428347 158705089 389340646 935547687 967842458 839799528 856322175 920108590 994116771 322624711 631053820 661626417 965202864 278276405 995955739 746110399 933716776 518546513 893839358 737676344 800368068 544682048 733183088 393682217 808794236 738327955 892526455 499858501 679478123 216078336 792302295 24612801 777640890 711882454 948560002 398123612 761942534 407338759 692069866 997117538 999121913 481567434 814821087 503781998 705622302 458381301 671656193 780982742 804392650 468677236 716816405 102325510 425547347 139290236 474762561 465894549 903168566 388250859 963990330 127695614 236244831 680669544 834932085 198211196 954386917 146949208 365658643 31572249 695229609 376689212 905255610 497873583 566627023 621041434 921764559 909926502 983240561 161026585 515282366 505246107 688884637 636902288 966383149 686481967 799273616 156560277 273140098 270160358 469218027 513517464 802133477 18743465 31260564 166203504 973244928 443773236 556064397 939484556 942761151 836905322 989237243 410810748 925297715 832628929 887532548 51098656 107353943 179243227 194969593 226531702 942543698 147525865 510626755 438381237 822938697 169973685 436600398 446541955 591326121 461364235 936736526 243199997 853561294 545734989 846635302 904004746 955962588 949164319 996687018 622645024 844210589 592517792 734241732 23043297 926437458 435299996 742120146 671850454 841135349 305243834 660232853 556699237 981986928 90060996 779837035 89608056 279322334 619407964 797564726 38943970 660943966 368771544 879297220 818868746 852516497 154726897 972465588 630503839 825810658 302154678 887001700 929704244 941600210 896783763 978135333 46625436 140735630 699833364 840090301 126267113 775269082 467208773 620380386 285785297 846438475 682675186 978561814 63844489 511789876 614720656 756482985 137883087 393160542 250491365 591755008 918467744 974385528 593277767 873510500 570360553 930020501 612257718 738177378 512718624 677193586 122201349 425638487 461185805 887974292 523709034 625307365 741108235 980408178 479564214 483853780 663756516 677676882 892897166 907012908 245729556 531364626 974937736 985569144 121253186 515597013 359381844 413556451 468270933 827663814 446736732 573641965 755999649 838119404 791782952 850666555 201761178 549855182 668731547 790355790 265569345 462856360 500245235 922562568 971582848 993813491 717256252 924657137 678965639 754605674 169510341 719475040 260340525 339816691 556781130 693559144 263897159 347559855 777298130 984529797 337159919 595417374 861553187 876218466 202087582 752612020 831823458 901030010 423700426 967602218 108251841 406995022 782455172 829173086 564061422 934652366 519431814 647019960 558002777 819728220 897961174 987747144 948523724 962222303 279722165 394423884 315863276 763659273 983121320 983541385 287479216 613044451 728530629 892476643 96036950 604852336 227253151 931176130 302275065 485334473 423562757 562032871 909665172 947682974 994238142 997241793 905197526 936387528 957676123 989643915 333903566 735219636 59610787 306001386 260889609 564597130 767924430 967018133 179323011 632806306 757625167 900039284 312865357 599696237 252642836 724393652 510200412 820221924 605681329 778851750 831987240 850852469 330048086 781901319 795342425 845449479 741387787 811339919 486564659 977714592 531314562 640577879 263687760 629436986 64544540 815143087 196984618 298444997 880697937 989498836 238589981 897212559 79110969 927852090 267950334 926112812 571519112 652732302 993904454 996511447 314982443 712442651 107648258 781478817 431665041 920784704 676972715 717327860 547986517 621896952 751554886 761595832 251061161 546003557 191187450 371828044 582268536 822967136 3522497 572870362 769146389 890458647 543026889 654214419 967232866 987042980 386481581 751558334 611159506 758329432 288031933 741731272 892569808 965108538 621657260 649375490 218484414 511044014 959545971 998474055 652614561 748582859 860830752 886416376 970711840 984214344 18917895 756988357 581309648 803959253 852850972 857884915 187362749 592657235 342404445 342644581 719549787 872223266 258623353 807231235 152001096 224699331 518993594 656650384 546105834 858615912 428276722 707857853 227381496 488211036 137259260 868374477 343280430 539227183 510391504 519128688 466657627 489057310 766011164 914869729 954866417 970806591 597392452 898644314 969595728 975175547 16547923 707881354 746758540 945967402 97210025 226201182 490381293 546333403 402455029 985399352 286282077 342983725 659434073 706996563 559940227 798226255 152696276 188445049 629893521 663269173 747936757 784298767 522509364 543377990 309248171 886771632 168246202 541609957 309360696 837693710 525577030 883479310 851017905 982493583 377289589 948384653 625664346 696967175 762331674 998463933 54502123 401567999 128179770 757370842 237669596 695220862 301905199 771714635 667296055 681514393 852610761 970435515 830341282 913659378 295720601 866921307 828486211 856001157 928494502 945779425 801580142 823533823 241684737 482501790 705075454 771776023 184900271 734339111 395481266 664036565 55019304 472609869 265609195 479648910 843854200 881264957 541313441 762098322 42802650 95821207 282372864 793329345 853464079 906218911 737719025 942934391 344839841 715378174 132156025 968379367 807324060 819657390 82834555 920449193 103054339 803407444 766167774 958871366 510290380 996309686 209926123 786135981 21952488 343778258 270645974 772904716 195147083 449217298 509808028 720967413 949560150 951252980 825885714 914159544 682165607 794812341 208484877 904338256 676883354 734326937 338605275 853469399 857450914 923219575 751391877 802708866 155506271 518847293 587877990 808317615 506723133 820054908 130845865 384208513 818083239 854340000 617333243 735185260 190635284 215644449 392484777 541306049 265828533 712122262 386444675 475488054 156013010 937335771 48613702 381033254 755029551 911659976 331295838 557359864 837000151 983062230 121092830 281481413 888086041 909739287 442089703 917881220 3651237 494334289 807759970 903955690 718157283 912025297 868771398 976169113 662307906 772815797 45534930 881039860 368126066 815688304 874787419 881785755 92816423 735450722 786030688 830925121 981155186 991600031 87601353 824437416 686872367 800121287 373974810 766168076 108975220 526294734 836009388 914432384 35256364 905844707 565262002 756799495 708569701 901992065 703583549 856230971 283911280 586548935 918185756 947186336 161046621 295476498 730342245 868418864 210467685 345549472 767443920 910467240 627743108 864770686 264685096 927334155 316831094 366246905 775640683 885784649 258128252 707600611 347905610 479612040 649445713 877668957 231049993 861189892 692723040 926653209 81563679 438622370 790110289 815742431 909962290 982600748 690282575 849096204 197362886 492069741 678121271 822964274 616259943 906873265 279826999 680097583 287350039 990771949 578824438 904995814 562605841 740879027 765776351 854986339 823821030 971926620 986429659 988684701 292394422 354771692 488421885 850971477 813630570 940639813 731502035 822993940 916736845 966862942 616427897 782127578 643408044 712718907 8248026 378104046 675057358 939696802 364975083 731289524 992265944 998208917 450838164 559768434 430033631 996405168 867409082 943404798 529424793 914764137 677512045 720805104 743274984 748735963 549201661 645063845 419539996 760878200 271177139 474410702 359625911 844908764 834796211 942306980 48466859 420134118 312846118 491005485 920038974 984964092 93967901 998397547 160420378 728493729 500377674 822788697 704876893 850350820 779493947 854707557 745797060 778913011 911144612 928633748 484386780 702489412 232587118 700932219 882200235 956261088 273923874 372425100 410708166 793420032 515488880 748553478 149062060 862212736 446170491 809312813 152941135 156007827 297636236 852515344 380113402 950301561 382678451 941710094 957561109 968460957 872558195 893930070 895815653 923861505 83538998 535012599 787804042 810610269 277653554 507653265 97963663 924398550 277544195 652280024 566809158 757029639 798586818 898887240 199541407 271155893 363831685 613246175 232239661 696268521 345037277 728198210 676363050 732565002 208203453 491174637 695872008 782790563 793858239 921592649 811140023 864521062 757861293 901401451 364772308 956829214 397885357 820651567 894135074 940601696 378108317 459746697 126663822 351693562 32004390 114911546 10516766 893743937 780586968 846526311 272451075 785875605 7124577 420098915 892259222 908415209 605150004 775890834 949459990 979848908 116018003 668004647 654386392 669746635 648060788 885289670 174545538 328436007 645950619 649684872 209672594 724641671 441251256 807535107 987493495 996989481 201198874 840478159 877278660 989820243 689009265 925692970 863018839 863111947 867014317 967951901 194395285 508990908 74645020 840018561 107345169 538131489 892426134 939201603 441156829 815546170 459087399 846362211 869463113 906077790 14113291 821544791 350491157 749473724 898281357 934529323 120960848 974567237 215135235 803521784 961179802 995423491 601804432 837214605 317772900 921760323 716560131 977824132 825747854 847778800 729307489 887725327 770871609 978318459 93441890 342113986 438220881 923828528 433906933 540026136 445765983 487908547 218525098 494654864 786573188 849711830 489050327 891497676 653353941 691108845 753362912 946908023 302881363 392242282 262412597 303251929 961897634 967448187 835571160 897851550 992862159 998288203 461553443 740243092 376073036 377511851 702012987 922868874 183657307 822863090 316188174 535773533 127737862 371054568 539633217 977665824 130680694 654718384 253504579 606603913 578703943 639544652 368641442 716863454 310515796 764874551 265550755 917028233 989915374 990630547 727312794 743053175 781638355 794097635 292843689 456233619 406559448 456641940 572468898 646860247 584854558 936908364 924947379 930311410 858126604 871029227 426364869 575213018 59692524 61426554 337725615 776801163 618380248 726967566 495636510 948423829 548742076 823742650 642213939 810865975 650769053 891053604 734549820 989523245 476032719 549685630 813899109 982686187 433906019 975264559 767727014 820536111 584951026 726127424 212706274 438049633 716185191 829651640 143415539 248362736 371468464 386508179 233851917 356826792 968592359 984644576 558833123 887945268 244691240 512321336 343488096 953241883 639037628 942414197 96561228 645667603 878512031 898839930 257834574 504170761 493409769 808192552 124937725 801462693 729964640 777324326 204028904 395220387 651622345 739740069 885187225 998689677 624712555 782728841 859158921 871590215 122042142 271933400 684961290 878752307 397741411 650558622 24610695 789609037 365958650 984034223 862677860 972467733 920060243 981660937 164993578 296933151 113952477 881032730 913206727 999719381 540631747 918278812 97795188 210548479 22715987 812592250 648128710 827204935 646157191 935540489 422471938 441114598 937438670 995732446 357294634 820587777 482642034 889447709 426814221 892338358 339411528 807215604 676664927 827780683 563878682 771719354 876820520 953220892 452546411 858793299 757367093 770599896 147831752 610707871 50952151 827521308 398332787 645290326 617667489 709382044 343050322 535871123 182118007 791976687 340614319 489788171 227791602 877393478 911072609 948697953 912692520 934814300 451431921 713346582 553228794 948982477 421267726 613439138 221677012 708912664 596059481 933599944 303408010 634375054 489312026 828195625 755871612 960765417 870672134 961995028 786288627 956120670 122276096 260009250 575484408 818514108 672239698 847656379 237714378 784037871 410983245 553790102 453821850 804476250 914266046 985417666 119462736 389850995 417315856 809161714 392416696 782037682 220148632 475405145 981658594 997624833 358017498 709320640 639937076 745582399 184444933 263867603 145154374 327808093 293817761 634565563 669770832 817391404 726685435 944831436 356650082 972279688 409996697 738305555 550418431 884881852 228748790 937344064 210734555 799901229 922360419 974939851 614079708 622867478 142274615 454793450 267893668 308934070 159303210 667432163 127071056 209791580 144979693 314408568 745368494 755008505 495768941 714364603 507922382 952344101 520843164 527212345 407335650 869040915 186664354 761334739 702547982 859446719 403039263 418360216 473372982 823136627 68581420 519982598 496653790 700814236 79813236 815439711 161456760 387367321 810668596 858407864 154315941 926825098 63839329 217737234 646672179 820652864 914797259 986576321 838747399 946281475 842927565 849341230 253748681 992520528 755597252 933285072 289014103 576707490 568513081 939845802 924786266 930949446 589221058 847209365 411736704 841469522 195538082 307678993 283590158 338029651 512365706 695077995 93674470 305964133 313953220 491799669 846107475 934352206 539276592 868836518 88362178 915865084 985226323 997312787 731460999 784537529 41206144 140227756 562848952 657678088 249549346 796415122 348240376 869221588 611165424 707905649 868342837 932230637 563053675 791907216 294416385 739327327 446297019 454285907 881758040 959420975 619768994 974786626 779708946 801442398 75521487 569222007 224371545 241609913 480421836 736251901 599470948 997553724 451410463 631600854 533646104 657485687 55914289 880361428 606798236 897902672 401322435 604001303 822657808 846214704 519954059 952365308 513135738 965295617 646203416 666731753 100935247 961357431 846854954 889259550 467009150 962810632 43648430 281027118 772803587 996383489 20705387 396241297 869903045 903062482 184349699 719988834 552676880 755019040 139632635 548497348 705055812 794698070 140699005 864105485 51629459 384129834 737072856 818215780 402810654 616609129 222399403 933344745 401421612 593943351 542578100 929015171 561453334 743150288 76590818 416436838 290384760 659545803 403223125 727438741 814479646 900849470 290782605 461148430 123611225 415301203 546285980 996298558 65824596 86268079 771705274 876959079 851610928 927992014 350994881 792698777 392837188 763889331 289040096 525771881 11310519 874520773 721362621 812044710 615689490 805607978 638273310 885070783 264635416 417776266 771067572 788633194 585484341 978800710 31616298 978504978 193681222 573035131 821218594 898485059 151251242 333339263 137079460 484644358 144252797 159212330 245109820 702727646 407653758 953293902 559275266 877372330 81722702 86759903 353744987 670456860 587781272 830438318 269789577 882426996 45142133 508980905 821754870 852020830 992394584 997317736 177634764 644383220 713273118 733831680 83008206 621294218 450535403 751872605 823212838 928622479 782054460 956172120 501089268 778923307 925336301 976893903 374623417 877820615 914028119 990595870 451099582 704068242 682887924 762139116 674011121 816884715 74140098 958248333 110123190 260524216 979578852 987658820 413333692 841484645 691683335 976567245 655460536 953486053 983684241 988038154 603633860 809774448 86650907 292009860 770549592 892238906 20581984 745058748 35543077 681204686 915353761 947874434 154966909 564464945 586070992 889304760 121474129 407096642 906423729 963370703 779899652 854562409 293645767 834992801 187305435 966271270 897678720 957239370 650092625 880717293 688271757 737102452 386525875 517836945 990147745 990314677 425218894 511984069 594948939 762702866 430784184 782311122 364302008 823034268 883500544 952699859 244324405 867735774 731913966 834394239 433647670 986017765 832915063 888120769 637975948 660853752 601486442 727510238 623568978 686253183 396437809 791837154 386696511 528152829 375920385 977304768 511751889 886717292 140632314 676726651 58038965 178347172 647364917 953924669 31244654 521289851 121928762 894353780 226115627 651945804 352200440 441460014 531968367 642703351 381878684 420435019 760519871 942610113 771909457 943297226 648533559 948450855 423810842 758634601 98036413 421052238 207903498 249462202 183517319 224753249 201256885 398718575 893998403 981111334 289543013 873995479 949864766 976627291 555684313 775442686 111713065 718503503 196374055 912833548 594783901 751537275 353471979 600456809 177046214 813873572 651798796 738197521 638333369 674934407 681446668 859676321 71662999 338818522 626551038 889775098 482914956 732941929 341875954 556963282 661088791 820602975 817966256 989446106 288183293 295860990 25718016 667951839 831892209 914914420 469654536 822428987 674621768 717457117 406347280 697090318 747619025 870333245 451532247 570884751 641426773 686574015 124900941 261367512 818027599 859402098 540273362 600967466 665145496 806691705 237211840 710782418 90836508 803670104 745731234 787376071 49577116 320863982 605871889 975788557 921009377 997386311 373844598 736501730 475839042 678153752 356558274 533840541 717495339 868931490 148556915 962493404 55306993 948527156 437313034 449151582 680363603 745555370 695807924 935507178 756450518 776117731 908082198 910983917 971534322 999051723 525938929 543171235 364532864 436156827 944750345 992453174 759966330 772167438 863548619 979539649 454772740 634383270 918309330 984751131 699652351 787052922 490000831 584797546 820181360 998771829 3238476 255197885 448949573 825291900 433628074 601161464 403422443 859769868 459166415 914882036 657308980 899367905 530420776 892252489 930668534 967777179 296868708 865341360 117610499 966190212 767112079 935894749 441090836 451436077 877589377 969933592 43355639 506340728 815860023 954790645 39943041 945176910 180736422 905416698 32743058 295616661 274047341 449509904 625759476 763033725 252575734 332572914 639017453 940382808 773160459 773236222 267557481 928491036 443581950 868653993 113269582 313066134 578080372 598048431 629235707 925349366 225142031 760102047 507575727 750723210 164922466 470470932 395862313 845545982 879558082 937918449 25704073 42846632 712953457 789590800 560893613 926735966 655300519 924669565 638527868 687681579 468231923 998497944 288928843 614971375 90671964 700453079 152350007 691619965 673470787 922951905 147363636 894252800 559803796 972117208 357532582 590717105 971088061 980951784 371199764 460506823 145295674 638134090 679669507 927305312 122813146 684668761 670457352 964622335 443919443 966946042 450367593 981596197 506913431 854901578 386564378 411816817 706806901 735254664 580466955 703468192 547113350 583557163 426711441 717902790 164003191 214209327 443086806 716987432 675416248 861468158 274891723 978970873 935880698 978003719 826376932 942996530 179299910 827954558 791803008 997759715 676138296 784794203 589688301 889789658 270924849 283320911 515176688 801017491 635330562 655651131 679536601 932453631 785771947 920591198 645980229 928069920 596067848 750162855 143730558 823607322 294930546 853470514 287503241 602930804 850309155 913308383 425580469 795616242 504959257 753737406 652676023 875245689 291188874 312135202 579042675 975204627 831108601 890881487 518171416 845196163 569606754 815452907 836974867 854681285 414403711 784035946 173649542 446870126 586011416 990479288 174587868 731576370 720134675 919060055 553901822 927972114 443951920 691629969 413466756 581603005 343956134 852183656 290971458 909685035 738777483 773461776 942326972 987604717 788260102 936638824 916022800 970804248 26418766 41680703 687079919 847945896 934373902 973671415 139771203 437300912 898796040 944954112 311877043 974352025 740545307 818652178 248497356 576253923 112849486 378368811 798620793 892772414 846825365 916969441 544864227 927219261 834069349 858630000 887492331 948118885 554231185 943566115 99590513 720516466 742751613 807391658 871534728 957450524 610458421 619187812 970296320 980667102 116046670 761109359 580894805 640655031 754254734 911403399 436645733 711248704 444287123 471198396 691199693 734640778 452395307 890213646 730133659 861681590 224766648 635115443 814894417 994923730 645870857 760407797 458830657 587723113 429275349 522879893 75310759 917760287 216149875 286983553 341338002 576832599 40204434 327799860 443410533 560034072 701461699 706412708 385305457 393630312 506343533 900552963 696053023 712816014 218543906 648503181 66014895 139023725 981090612 985348871 542309030 996108149 972340174 983497692 363365531 793634819 359907064 850187841 135368039 292411387 592218806 638521144 70231361 527755292 331893261 447776309 86951829 651689782 106204578 734090797 523338140 984275733 896816559 985422180 582261182 843313013 408827534 577236342 123618456 767923668 23174538 224157018 409559802 850112270 986669891 997554746 617150545 730127725 475741031 710863293 215857606 364852757 392103571 861004140 664716317 766583477 346636320 920155194 959894668 963527342 231509484 877263875 919155502 959283857 567909323 884815750 394113609 763794197 422879748 990816405 971224852 984210870 805727338 912462728 612680081 970969460 874235124 913487272 883501065 931644977 167650834 518940129 696684197 985711955 987596679 994049706 437388094 541057883 274315903 756025810 486767385 951425792 379093883 876704417 149721261 543868240 865384610 929419018 613063279 804787450 752918865 967860837 561200753 654428289 802979173 974493566 897123177 984204262 70031696 382253501 106603610 758183349 719347807 982183102 901112431 982730648 210909230 751282405 418648660 880176118 74829355 483819929 872133302 943937716 671574047 933764904 976213407 977302589 761786325 919270050 780109976 808184138 716068320 868407245 402994349 530039007 921329349 987607168 784759683 864746687 446133447 700565839 465922805 619260695 933460197 995323291 113704164 838074179 405639206 710410154 525793806 754921412 250363572 386720055 256679686 667928186 368573280 924124723 98999500 292742024 997027996 998971920 152518423 795400818 703332271 909287697 429413736 523533852 450404452 533643584 837413291 919126343 196239635 329598720 310722827 951343282 879636802 896483315 16769355 734299711 581070007 892011076 497167439 670185646 608853850 667094995 33099245 206724316 208554990 416716949 158698648 824062116 597544028 868323308 773084839 913982568 298045724 795526790 498340179 946008189 394067032 394179960 359071866 989447266 422078895 955754545 494152038 741945074 759535449 842489665 691697561 851098887 472221688 981369763 352888270 885026173 192557847 684342030 521907592 752566392 553761563 905288082 514782597 620854639 658476962 851404972 825392598 860243253 778609559 829367607 88750631 284325831 534678929 868212033 907991596 992457552 494206006 805862601 390668946 702656267 887738691 934382308 701563797 943192016 594025366 848667857 664274427 737646359 440902190 884788069 295057490 723722966 561462655 792185085 728285554 747258460 612655311 955421030 126817626 873301574 793611663 858432485 200326124 566689589 516162463 820338831 633980265 678019751 155884607 221572220 977224395 992958989 163730265 449185174 720151757 996297648 877645433 971867937 444383021 806905051 753350782 830139167 599997837 760296896 491139833 958603462 774281374 836233395 35948605 671089515 579101750 908470771 193715857 232222007 139954383 164959835 120597498 904363496 671356220 751619564 590275807 647019118 655136728 897621873 38010686 885273086 117803120 471552556 50703931 913225411 399970179 553613236 480587286 940346157 335001995 481633274 806367133 984076562 262424729 970459360 762323291 904722898 862592871 960930905 316769816 848303572 988859348 996931442 732566782 851758131 953131071 962859023 431246870 661306417 130709471 652496271 903343711 925318837 617357123 739064583 653583199 713535009 828672322 873289096 18641071 88696651 334893522 999458319 891384095 948728834 315083093 864597915 871594427 976780349 121390556 348385514 929505279 964748632 178383672 591060189 541780377 564667597 970049931 986827595 282559485 431088464 723923534 834634800 761220185 998046050 217621081 365175205 213106069 887690556 572341198 674337787 829174965 877125798 65248469 408731442 473703022 982759240 93283941 251838870 886356149 973369900 252240417 977547123 917591292 975537572 378382405 741213602 949942261 966450952 148002607 855673589 372542769 973221263 748868342 778076336 571287443 722767406 197157535 650269726 954219721 985123686 276949776 402081502 832028362 938625807 882454495 934633478 662593350 940275372 901260196 901841810 455485834 688304321 296218677 484565053 386467803 964708843 748906552 765933541 501084275 889892980 863403301 947739247 647580982 944515656 463907177 581842544 330741458 775560869 351288139 860070361 171153582 990875887 881452271 970490884 533537896 891759161 919751105 988468774 71413840 397348947 290409167 391870272 147841006 561978166 73448791 473678147 286986782 918855719 904822522 953287425 846404651 866148439 50604724 754248712 662320637 709167351 376970301 587507043 822216129 873853308 244099960 285597767 324078386 430579660 824646920 899399459 922925701 974702275 944038069 945540422 427579968 474060655 229447848 747602184 306264532 662570288 863741191 924636758 335574487 881180333 87761469 790832916 711854342 769044325 836737646 988386969 894714894 924101321 606820099 829131581 204973223 652069396 603692934 867571355 994122295 998973694 515446078 522347747 220127402 283594040 974986490 985681500 528310855 614599357 124475591 519703738 420839655 446427419 965275802 992273566 14839567 219135476 556312166 824669790 391642086 756300636 871660678 911607514 80812120 362224941 682303223 973796407 510417528 874784851 658847109 971303279 630547569 809776048 3091073 493937811 972124211 995078674 444470588 827354864 334580559 915836371 298622911 931949090 493058878 515583561 63485066 787838634 515136413 743844256 162321341 556370139 762921974 834274915 112729862 730695597 490483460 968615210 179937964 630057424 771620738 952239038 993020790 999891040 282691625 669345037 662506548 816229287 613154281 802284146 320934640 340093451 392903708 447544479 759767926 994822584 545958421 916216714 692963848 709597195 316854650 637756075 153823485 426076095 869697113 928709379 257329697 476938184 258347389 477372192 27437501 545483350 527429824 978544839 899299716 920396686 66557542 557392172 943556354 963756629 861734965 972459607 799167237 810181628 470269626 692783003 588121217 883748713 263834503 588331508 86382839 386016747 85643080 350192754 463186225 554191183 653625183 822774014 731628800 896287710 163335790 924419612 494444314 719157265 992593627 999473326 9109885 394802446 758695367 806641861 985490133 993762622 182973685 896025993 47711314 538469628 336725592 963127194 539532423 629061270 132427951 940905930 694464396 891118620 829544759 862709097 374812029 924872910 218612235 560508598 496250453 785570723 109358588 274186010 666736107 847137226 576155412 847551554 464015753 513301394 724799834 917245198 605163514 684215440 482988565 876321204 736306 773240519 729035545 966330164 889785568 944300251 538073507 980933916 355324571 673859176 766862924 776774970 547052097 694473627 190242833 427310429 573186086 804556986 946556795 950015480 927885799 964476409 554180909 783123917 633210333 692846886 559989822 724721481 523081933 745454044 143619302 933435628 581986453 628150660 417248624 918400720 6601671 910224762 51261531 806991921 968480627 994171065 405847521 876937640 653479288 824324554 294700412 682597259 964812022 980746971 63765745 772681620 824645560 828613309 463795061 969674911 354039092 594717022 562229109 694105938 85803270 309505732 481485832 829104538 626802517 642541204 806692080 832240479 45291801 676308000 577087283 970890388 538078762 965968432 879266813 932793029 698962383 699373919 135823280 521479407 195160559 950706322 102790719 200481948 963838478 978550643 773188347 885024830 629274844 779629337 734666548 985230681 864052214 951008708 490242919 504290164 357490296 923334516 366766718 508845131 289455758 310752394 778788930 810709246 523605254 772628715 116798735 532993277 732630796 836325909 663411487 789710566 146127669 591549883 79039382 781365577 525449577 997248536 86826961 308765194 169748140 831830927 821314486 893501386 997965274 999730070 8443367 265287197 754393930 827564742 277420195 516521023 325593826 366803542 64502073 109644078 422168527 902362797 22478063 362858725 962558857 978070518 708014912 904779312 917109144 963434223 256785478 860344213 398099906 589737242 989930256 990070868 155017508 527720285 506485236 736325243 119461811 138604675 823179243 923764344 861180890 974922976 975099358 982012817 595274509 841523770 875251577 994648038 185905689 340421183 918639294 929363643 87350519 180147288 539943033 920716116 272897736 853922440 69342240 567681422 30385544 703069715 48214201 371542355 187858846 487154955 507040855 599518482 913770656 970700404 973070813 998561979 359918985 478695387 309593612 744459101 380426692 776371479 65632289 492838021 915708196 968536836 996892356 999590586 287115320 981387241 599149486 821349852 153325996 617351975 55578644 588902683 741650327 912248506 516413337 616140089 949995557 987751054 154083121 392613064 86280174 545930204 757343291 890621409 773286820 875932135 204354681 937584430 438597939 478464732 129897184 514229682 125517230 207933270 166582214 208806230 217929959 816554955 278489678 407412676 818196270 848428775 742010549 745500720 48966997 924959451 559746200 757012387 856523223 894170001 584743319 656163879 86326523 674930464 750759396 889761546 801556074 966660975 143448807 418387942 675188046 867951640 743727693 861488997 376841870 530986182 845486513 967113406 87498071 287311136 725688202 868845029 734628583 889950216 125432312 395696559 59058964 668837017 729162932 753359009 981432864 997453542 170986467 329566033 635369336 809090691 591375476 829293678 926500813 987935277 883267247 950499035 419713643 493914257 324013572 966928792 236226624 954249126 196256261 472465746 353230782 798116234 394674215 866082311 428656044 545699661 657614341 920947712 841906078 920065464 274280232 558562872 275211928 680338308 552508885 939045856 112910380 333968223 793570216 964010302 522481227 623446308 574288045 843892656 229604817 938070106 301584276 830462035 477324757 611953293 927914009 948559196 742081760 926493235 575024305 766203851 477212839 897737972 982614673 999859733 139429037 162831249 361649944 408028835 678045118 802035142 446187633 784227369 480608213 669149233 150948733 704546644 297572533 916132334 266421083 539348431 522427282 679133227 229750596 607048708 47352584 761334010 185030715 754884709 145194372 439692815 295441013 866320714 339479485 921009276 400447505 671621028 43046215 213469616 218708834 855630241 221271247 716468814 400383057 912501925 232364925 246094769 393393467 733719461 872094207 964789930 685359861 728662854 923083236 947631566 943257353 963103743 697045588 815841839 121172329 212478602 625883695 873161343 667469654 702658132 533687820 535176642 440160614 440906655 836546560 914129964 871689230 888748939 610143597 657077635 127255531 909350172 92563891 208050848 730947613 847780533 823757168 973169632 447596377 546516673 54706193 869275649 490182313 538089434 141237086 265830091 138310200 769209572 941183366 988626271 225967151 306099626 884609997 951058737 950273575 960896556 58916465 570700072 695403465 841999010 20030017 259041571 716985365 989541311 94405191 187868532 326447679 871072950 84951403 796342764 251759212 791848677 934207145 954003665 805062362 861814388 249107289 570757102 442699768 613370971 393243116 413272405 465851708 664650014 329382489 829433929 102611983 966860974 971431936 972974966 287729066 539314043 274099961 578502645 834513347 941439318 766271621 813879431 292843151 387100970 484447898 743358882 656982473 877170281 303288375 350130435 93418509 207449371 433550145 946865599 929874895 966788073 633788674 813623986 888527 722247221 600017967 683137668 469807107 925517013 355880382 378896964 710074443 727558365 666309970 842872354 562570713 832866980 38523565 824859738 551423990 995355005 788365510 939059540 593295448 617867066 842742314 860101242 773230716 856928322 231077499 972699297 615494122 869635751 853663859 970130829 420460813 669326977 46440741 636388277 927720664 986840975 796074385 898828548 546006791 989510088 331671101 851582867 675074281 970234323 714014398 797428211 828426877 968938152 235188432 901961373 586274861 618652951 953346574 968661648 476329301 522459507 187510798 785628933 889090074 937297304 445313495 454425575 400554716 963453309 43315490 644355822 109346873 634617484 258077261 352523217 604270603 970079778 844603683 848079341 896513509 936409190 663678245 936766395 470750195 900397989 184101934 981170879 354606961 657369995 211078569 624144001 855782721 878326986 985510179 993393877 581011523 839628703 248161442 600409891 810380841 864500515 183274394 220675911 291847164 559204007 18255895 900198733 557120239 607314842 580882013 695838944 602477381 877674096 821256843 824527437 308589780 349038650 458651268 519581572 19230351 445351808 564023188 888202968 457110952 613487029 321833790 852122540 967081618 978685938 276254016 903589277 537830547 727323473 187397621 297948808 560615887 671933797 205326809 557246097 944889834 969349912 988902124 994839296 717228020 820509139 932478109 954976056 385817862 564215480 950616870 988531296 474547684 935966997 864254749 890449475 954154323 972549135 416850810 608313886 13042235 456639433 644735272 950377084 326089625 614192502 811300835 883436244 503567260 711901357 183562795 601091812 374079098 503096422 172996462 382890042 931692073 992999105 606476878 726242940 930534619 966508375 55006222 356630847 483770812 972005863 518142388 715608493 74531518 489342073 240383384 556538999 83520643 820758002 414325158 990900248 608904829 829605182 576532790 776221461 960138746 982958041 927931529 961005542 331717031 974237254 659334518 783401724 351331836 572652287 420920283 876098432 904736917 948792820 229882587 454856405 398088821 980359194 168639794 853245552 867451479 918133440 725053642 967946013 39683497 664604618 150074616 500245202 590686944 733570508 672480675 771596458 355657782 902869406 166896830 635989694 643612815 803138235 942605116 943842062 355936716 956414403 810692892 945592431 561856039 969297000 782826735 968455388 921764206 960982959 666644079 959117917 799083355 990740727 546863378 963624102 331871917 638285684 211622461 923447551 18259770 280152652 101520075 554844992 130275114 959697424 711875134 855357142 186455802 250900119 80086325 860313046 47978253 416191532 309632963 914596432 371198232 862007722 4386403 474615409 154317975 284201319 392927734 896372506 461914562 897773117 501163100 992449943 388210065 807510728 469838405 518667786 745518014 956932530 474115872 786943782 918593022 965689669 747691812 782696466 953679283 964016821 484725547 891088049 239817622 289418956 287774692 515521206 755383047 796439150 630205792 794091112 299874997 677558878 236990957 592510302 110867145 302643327 815249242 845199885 888427566 992063429 659663171 992350783 937186842 953460686 958252555 999569330 415559031 994248034 702870736 979767296 307743760 599725992 348906036 773603099 219027883 789521883 545323590 777220403 12631710 236726532 956858961 968378488 294177077 907647110 431187745 632905633 698871703 751122520 482835993 689835379 252570958 342583952 945179257 969763734 328824163 485052958 952682736 974757809 355949738 595912204 188884660 735271332 113976458 561805101 987471530 997505253 817847589 949170388 843755584 909486699 205259166 888645458 930490704 953081652 539667939 846759407 422735437 549259851 502682198 754138797 184049767 184527049 129633498 288965197 169422462 518883845 205422563 321310135 786600972 808269653 880586955 985466253 708699681 982981552 190775896 688732294 752122685 840833673 122142518 217705217 635093973 899770671 570418325 878705426 611234447 622576225 684093711 773236039 847238135 922046358 239759220 618921391 708409184 754561111 884014761 950625032 51427202 939786671 331634296 959944526 508814728 641738044 269893609 638615196 833756967 870506107 689849976 715273599 953336714 999844729 541524828 884425142 869629076 889865720 355384870 834775512 748593280 804556870 20252610 275372452 881482345 909676487 394360079 452089454 849183211 850902217 951763116 987954291 528326046 825547764 562059191 915772057 41051516 453187318 780883116 787158165 136561005 420256770 782776821 905744098 575799940 867759962 840525311 879974268 22559948 230822855 734332971 942570481 304705292 550623734 273501680 852709360 880382113 905497261 553965920 998063762 931288444 945232990 553504969 849420458 918817747 983269818 64060379 980704254 315631926 942864819 13750610 768875461 255137396 750306346 872483175 882253920 489427308 604930126 937771097 956662115 450062440 625363886 805772612 962562339 379359742 955472977 576114273 956285980 376579238 849847837 791493942 944212450 518183309 860465263 781391044 800412996 353819900 662607232 634380648 812520038 982335626 987199737 339812186 869089343 201321909 526632935 627049153 706588992 849822349 859746320 788075666 991262749 699752742 754145887 734532088 952282023 221123376 391995081 23691385 370289406 627984268 877234387 990353594 999290824 927785546 952762482 398803346 955354791 978007700 982085810 972277035 993413317 338870641 877457558 305168787 860997252 727989884 966978516 746972918 945996406 26392982 590944004 821308826 923697681 413279446 726063992 599528677 830252297 646439149 668971939 301746905 447986585 491958057 893772205 802060711 942075034 167271289 523043090 849093301 997714299 668502839 706619334 826393421 999465466 924647305 925791516 698575727 975427574 823804237 922297716 40313111 619425163 551519575 668879289 887130127 908032085 926853229 968060919 76289844 610240336 614368638 832097620 770649823 864541071 175348687 916679224 542750474 984010060 167797765 371385500 711961334 980986803 955518015 959077172 157481253 814204046 838661141 998333650 446260197 954438458 934300542 947084978 10235708 928316592 879301270 895942043 233201617 931583093 779466349 989271882 185430199 527353326 652105806 981907840 345734090 913702445 767007331 890413257 498483452 945045171 684492368 810387986 150824880 515267003 62763838 80912953 595895339 651007697 131219426 834458042 340639889 440649639 712292585 865721055 29494353 65182115 187719008 648716435 457599557 855113454 679079983 926011737 808807813 901766541 144321156 629751894 21345157 994388799 16541340 762463057 31892293 540775888 410067903 445352172 258950970 852349794 364577866 595765548 364705156 482121914 127921212 520890199 952769011 977470364 504168280 614394698 432383059 598465527 26673478 541703294 784885331 850317587 709597618 830978694 605813509 747773107 445205974 654984728 567338572 908322052 275567073 391161763 442820085 909479410 851847934 934263515 782602964 893241119 588241699 901938856 579386763 890236663 626055961 777546398 520343244 631432084 53711942 640082826 412954806 723662292 729189755 855449359 348469147 824618948 355970025 391143777 396171386 458681766 279642640 828688195 452914229 597293149 200770350 267553113 54630042 872871065 147082711 403587132 402134510 987814846 957459173 972013027 545958795 985803893 538874117 551468990 560412585 609646066 786478506 960235179 83263585 632570966 310415056 483869219 903304325 928163976 596810589 677069377 421256227 860263067 784653301 849275555 372380968 974282179 945847053 989914123 185130908 394946506 608534939 907381700 453611013 745727925 84227315 914801488 397862360 860026811 435855940 646316269 988419845 989069737 630193302 981342192 655904025 950841864 439261118 887461203 610599077 793985236 345070954 444140845 254950294 401450515 363450548 851666878 820040735 932555707 81878832 854938271 823404497 992919040 464879136 604090583 438526744 941724256 895691064 903517214 772298892 808284739 638425754 936876997 346792104 353546054 1915436 940825252 769216320 958209225 964022968 998951447 380824184 892662767 170187927 289658899 348477282 717732212 457905832 977648381 946112413 960475478 794322012 885535638 448908830 539520011 211515974 761759841 78036488 279344904 173449323 468371332 128233069 371139629 212610503 520302731 402775096 933161426 957448551 966093682 848212543 991078083 865812607 902970398 617628642 757500167 205281930 362029545 355411150 707097988 385154073 918137493 11985894 681773067 63502310 936884205 449721731 463355628 289574306 758980213 862296290 881575408 966804262 988314841 942926780 982767761 58412080 411720540 129823822 410181940 243418594 848681508 365908821 453992793 515546323 931477113 19596665 436819427 259203124 517474648 254115243 337316831 606450998 887867860 739979075 977585004 627547918 745559448 199752491 260409614 725458759 827561822 544670327 621946095 925693112 958715235 484207153 880911584 619470845 810277313 125850172 396635676 582245231 716459244 401104749 908465048 283951443 939132535 618675419 799170424 234971392 902473775 584604979 621436871 616439311 998620109 665897169 745774987 562052991 980173184 536966963 936208454 46104602 989322211 207727389 899370928 871381417 888701564 431330382 560532408 64685584 199759795 26512756 335918081 760468371 785443910 771282714 966877850 990002413 990588262 469030174 609933222 906853709 915408750 802425900 838485160 637472793 728745213 343466856 881759222 776305231 950437185 662864501 759272747 662988725 912814649 921268058 970459054 345565733 968959011 869363998 984470856 107482454 428028611 900850514 975827322 478830016 487400728 363815241 482619743 761954775 947840648 114597314 976679947 871902279 945116389 718732983 895836894 245278555 984726925 340320636 736009338 958577909 979314123 748170582 922527052 706548338 725111060 744858387 810831707 432852124 798714096 742821544 793614848 273500379 635863644 351021449 714828878 817662827 936663344 983750383 987787098 656983177 742004736 315100148 980648340 950374597 991956052 382335763 865579615 530754993 622936468 87619332 696865361 346774173 633616944 806617107 993585465 417731036 985855664 303041827 881186757 526255191 615454825 963645969 993202699 152146935 908292871 529084353 758710783 554276256 679765605 669932598 856769893 766295313 903730389 489262203 549650575 16223026 188667299 897311334 973340104 199451132 847726108 689942763 865163366 87968023 106860848 75254746 946965482 842208278 985239329 674493380 698464995 154611127 357113551 370839021 950216960 453067208 608928682 850823805 897068638 2086559 295937685 17549648 126907750 998179741 998195329 186681683 856715446 344239103 568755334 923583319 941011054 692590537 926961691 685109150 765333144 219173377 699856478 149645804 649177077 988263066 998625497 827161417 878031441 203620151 546186702 642845980 681337216 665389782 726711935 936844330 972849813 481192798 933114685 423774645 628894575 121486223 853186728 11379181 272824462 32754434 674093562 146648129 643265720 475442488 754526548 189586238 465393561 972647358 978331251 735920558 783620541 199832097 668480538 144712105 251482618 806384158 906183209 727512275 893552091 128299395 335366412 431971551 763999567 86903652 588003552 859138414 914259588 751781592 765828538 758985494 847155864 260073514 329830193 331358695 859154510 305596602 811917447 466302490 895009253 912235288 983816261 882011253 974905546 906040698 988738109 594464571 914461271 491694034 808771475 490667624 975311595 918517467 990779114 924453266 932726417 489773846 648480467 753024655 819557589 582681514 666864114 438786073 971537574 503326441 554401611 729115660 996723787 722355027 828450683 112905350 360739766 814745944 847320727 242019480 967180143 33052915 493879563 313837358 689605083 1798219 710717236 706972419 917847263 158116494 987212240 158934137 632750098 532052237 775418756 804611914 828360920 752211309 823204147 592796304 941011893 784347086 918939080 218278134 734694073 766443751 846910328 924566033 957278349 172776659 748245226 879712325 959884899 450087738 645823841 377282770 727863619 434065580 949925236 315324321 987973265 16496805 796099589 392560472 852577623 708866610 964175365 945516540 962633332 606116211 822899755 789613088 933184108 915899734 942512785 597468063 773298894 756236686 845346905 702812004 956201057 158969751 390664077 645208895 936974641 914119088 942345657 4598903 304063881 979273978 984782176 986293872 992533813 586715447 593220558 8492470 320757936 545370914 628968493 753344343 859202019 372248191 739888443 322729828 852554595 706192594 898692951 11421462 28849507 147712593 318680783 64495830 323034672 118955034 803634819 137885804 761310153 37297258 144739477 956779496 966480330 198725003 449823191 885870766 920014597 184359452 420822951 944703956 964653448 966145891 971372788 979931225 984866608 441149521 606650143 123528012 700681692 822509824 910771625 377682605 595787615 879455104 966925828 110006425 573537796 357452875 563456981 471474187 484641780 112229366 601557947 125906399 235144408 742349749 805831993 559082773 998688738 982763262 984141769 732680302 824416629 250015785 832699604 425201173 565532414 711096008 812909610 103562180 219097765 293429426 366536740 13811452 413035773 747535660 791921906 168375796 252130473 253551477 555774383 910113140 946962122 980492772 999604376 776229965 997114754 165481087 772513400 642070161 769975777 217744277 653214872 386425539 724138823 484207992 683532923 94176801 113623268 21940161 33136925 287019577 482509376 169284223 600869483 139484938 859364957 915566406 988327914 665696645 942357990 943126322 957421190 525360072 775056491 646881025 797340552 268511031 918589319 580110723 979410828 327672880 391629238 831682419 875757992 993756164 993990465 219530988 921144746 830476576 975527543 393986351 854665599 968916147 987104975 301655903 374380187 32422784 539232708 41601977 505490822 122727986 435898906 354834702 660185897 295168276 766486241 976893735 979892467 570025899 630752627 17131397 923769912 274511030 644403007 167376722 390073233 813321752 849661092 578080341 814352214 914890838 930349646 866183944 929925053 505973047 518654181 456599890 712924312 871509754 881117871 375412012 410971312 96661759 883070756 1709792 789727014 463092412 655906220 369383194 438737900 492736979 778232360 410197100 664214033 932028085 962011666 841402551 948444373 66483809 575251052 879704086 899445466 166533357 572650445 189044060 324650765 380434365 756789508 484925419 554317856 90221889 793202208 258089827 850249711 672888758 703143322 679594531 695177579 881952030 990378489 516295391 986775170 450298013 871308873 383880844 995138907 625482588 651416312 393686618 938631371 46790706 276436231 995546318 999137235 923253275 997671989 150700147 439549566 292035492 472055971 607564488 787214270 231709885 888492046 909134794 959899154 573559332 883214336 563386046 666959331 215067161 455287948 117589010 933287827 132269464 263605760 632829659 996084005 599203557 755746291 645171533 756136583 797713340 899326493 587415161 890576650 375458313 696113699 766019382 942284631 726364353 744137581 502700660 540362707 142403145 778790350 595991234 704661957 865642795 896577751 370115113 595358621 395533812 839873797 853437573 914104426 682259003 695722841 696159947 866904688 637180140 944312011 15942028 466187359 475159985 741377935 525467990 878888348 491702848 907155832 732574176 889470358 655543500 894963456 136362137 208099855 784207078 946511601 874471824 990529074 463935893 663144583 68989391 640783080 972578524 975592775 402700568 666159435 599789193 602753119 357688617 678420993 197035456 459627146 185646155 676805223 124830164 772876838 145517890 462783050 847345341 949752749 814263911 998318914 211677827 639684556 298100460 786469572 49630720 521870871 339879456 815657314 191146497 232776378 804162012 833410811 38730965 739966898 243355293 677415652 790379508 960434339 977350179 989988784 414007912 794856295 642562511 763493599 391907533 879494421 978274730 997094355 847581588 899034482 502756475 910280083 387967518 557756378 648912264 713045637 815409091 896068829 324191521 656285505 114570337 127811285 115780442 601945353 178178466 255397051 383806533 881576758 604373681 657341386 515989337 652901730 440534000 547343559 281690791 299106417 828688657 837414267 263266882 756441751 916010038 942467564 301961054 661858545 126243669 953011684 216442617 834057930 521781890 923435409 633611753 849286299 728516667 798304551 496713851 737561602 732340766 990064950 480678948 701374617 442498543 788932372 78411658 385324620 584357914 820270679 965290599 988650416 511322382 894876715 367128263 603590109 751127438 827408182 693167670 821700646 957475068 989461395 991177472 999974762 820984725 960586463 160665785 932329234 765022106 969037255 987523232 992502696 429874616 595133447 550328661 881705789 762391506 833078841 203674991 345503322 310177780 541796005 23519042 403997152 704560365 989360542 805150340 971529895 109537600 966915125 975891203 986499157 570845931 889396257 773146820 996404436 913769047 973576216 976257218 981640763 293527304 663387513 749771776 961439180 794226591 837955727 201887182 895523375 431307492 713561283 521233456 918354483 518542967 975919149 887226137 937362968 515532308 787538870 139885428 689302318 184083906 370628167 94549634 604080952 788059155 904660235 98075227 113246786 508134885 960616606 993521972 995850858 753931366 941667910 936346258 980157330 126177792 419471067 629209246 902307578 385610784 669817896 345277712 932431309 175293252 749195606 745845409 905568897 383033462 476080974 187480813 575591981 286039564 842701733 162534396 553081314 990733274 991536626 951923273 962666590 650245710 715189928 322549786 657310754 579368224 903034273 839809112 878398458 266397749 617099866 553466605 912036458 659221681 756904806 713729452 945856415 877324267 887012958 593870205 840485032 71667084 982412159 574344694 631570855 57673710 769874408 978510342 997582890 531377344 791215321 2152936 351594978 682043231 993435989 178211830 670955443 779593728 846747548 302893014 320821247 219633248 863113558 15013906 623830269 385818921 736632761 374706412 719864422 846168103 874318167 777563100 794578647 824409313 896551944 522174883 827612053 204659199 310346521 70878397 844363658 125846471 681673146 106612398 225623029 735903711 767283180 203114984 726616802 315363472 453112087 213725736 800669088 239639679 633588996 753569292 779305175 823618036 924640549 637087389 861982079 67542001 253917395 842558719 924792078 726712526 763338000 109201966 138941753 965297133 992039754 951809082 969009817 55299766 499607886 514595065 911032744 108083515 910176735 414936640 814973299 530928669 801599576 91629858 538814083 533943685 561553105 20330384 961251547 310559132 595355747 270176016 278495182 872336050 931975089 807719056 972462064 826688844 855839519 634977068 981368474 290055872 687785707 986460959 992878066 368033395 685548713 824036415 996328881 445291509 708637072 805651326 941208618 91195345 862165312 667490754 893921387 175570546 960676394 27281701 313934624 102946292 562884639 354781355 743139553 373696839 588743464 358429950 823412552 870428197 952290105 975552809 976665351 183978095 578175887 279468208 479561901 611449290 886187083 316017970 625045756 713518370 820998712 209270761 741489706 773794738 853613856 519009468 586717455 765813838 769770978 246246548 990126488 378191962 857991064 552008271 658975601 799914117 805972331 359953193 829002223 987703784 998779461 587919200 757743339 257256594 861384463 378548191 958729975 548128816 651759343 132068733 909049062 438721495 547461559 453566554 910155383 973572810 981232533 674857927 817155668 873057054 900310854 301001987 794169591 980620622 997764200 828315300 857043956 835522123 876620101 455519401 639244160 287240611 530862663 988933495 990381834 259755291 824825556 601967022 865520061 747053032 961295375 416896233 587763341 272821020 977161134 286312638 707265023 532353482 737651184 730724149 759999827 259837768 406552666 933633227 951679788 605314061 894266194 420101342 755508817 880939424 904617495 510949831 733127193 352130287 788399441 980755082 981183964 969568544 988500187 317024484 918246900 263894846 545469923 166641994 905462119 539711961 594575749 487458749 795815994 461541888 731013335 400473678 787118177 62870926 410263561 969844939 985798079 61266106 892693053 727148159 847424011 49747109 584539973 808010698 848029057 489505240 689540630 754590777 804855829 163492090 679675492 75876350 693793754 332466149 350542753 6551535 716889266 510337148 919553562 560911287 709997437 782942671 954496904 674202161 779291235 533606979 856847032 392198863 701771420 753030801 793934940 187026493 599322491 605665663 958038798 96851941 285871729 402389557 963319285 486607630 727943738 224458385 825396256 879452305 899592079 692730320 823713426 494553595 615378676 95951747 384905078 527272216 977415826 816117283 950882510 729384835 861904838 555789959 596391856 167570200 339037066 697881519 823652765 899659659 974611625 393914909 967296472 47940537 352584673 281646040 813307931 318184437 580433689 456002179 668189915 945008219 993879668 31494705 726648683 45336429 390055743 418614161 463922976 750110636 849056449 506755248 675016480 784891405 902703612 919355249 941376070 201477042 460547442 858246828 909410014 382546726 765999091 383195147 987701085 276284756 420361606 121029067 979295568 867005620 918539627 608759019 912781481 563280139 636691961 528148645 612401745 451549673 854097669 243432700 628301780 59586903 967129323 629491433 890727394 864885598 888670893 819135769 970349303 888318765 924063530 131887300 270442831 600677910 738985413 888322305 932846817 231538374 985152966 864739622 891257916 653255913 816014917 922060295 941635179 867617601 930043662 447053810 801021394 910338048 961096697 68236111 753661667 944855264 950341090 541800851 605567604 150888393 917049385 585285915 912835783 371625529 748555882 553614942 805245127 390199446 790990602 489276776 545940019 773175199 914343887 967982851 991299574 832972066 879518310 433231376 537437866 351897664 909686210 847915522 974581036 774729815 932152406 75533916 567665225 949018318 954744536 678544161 764916928 273047855 576447311 982827347 987089137 769613805 853236765 761267692 943358174 347133730 668458666 648305883 655646311 442376092 871098609 612421561 788549107 378591712 513096359 768743677 786984822 32395493 133934916 25724137 65577093 936923290 938458147 30318609 139609424 830479972 904078040 26894621 984250317 360717969 534253297 421113049 595654635 276315275 588673137 759273242 829270828 979530079 992315765 767143465 798059022 11929534 284080530 989492370 999558327 551937069 704048372 17214661 33499979 590618705 751445428 852985927 907487997 198502372 617542999 203968442 561516104 409621993 435433926 479548808 823667330 899861127 983432874 75564695 109770832 840341769 947743269 452733646 804624539 427528937 499569739 432785769 457636293 283396261 829939987 295417698 304310722 459109217 779838719 125021703 534724229 425593594 886554772 404413387 941723339 992585709 996663316 120648593 443359237 600910176 804667789 762926294 764182241 795169429 846870607 134641618 980889631 971618533 973327702 830587928 889971240 968066648 982161059 557091053 861915014 137252900 226139307 234608140 765063030 310198558 623742556 411224024 709127328 651566658 654044553 598475277 823810216 790520269 793683772 664533089 836107837 926418086 994217023 7475285 803492757 285052887 540918810 141011043 442875809 840973813 974352329 36861781 647981693 859540168 874870103 771004503 941204370 361367964 689870894 899918866 902179642 434611878 582578298 621674097 762267197 925759213 943247724 983647487 994336773 741171700 879968839 543414163 883963463 428972278 764731006 352723214 442000115 540212471 891589217 335194968 486106395 277632075 998833069 587957811 739049788 295094180 512461654 6023111 280324950 657076015 934508483 344839490 479114572 381253905 474987076 628260388 716734399 828557854 898252577 531535405 718629427 805075739 924226526 151772988 419967996 246838406 417020340 880506704 956058702 619581048 892123269 509743289 987125752 549204921 934400585 261587788 492954719 752146704 853383103 351454353 460376807 151545459 263389338 936772505 999769451 905942690 916578941 420944507 743771892 369382965 980525727 981554319 994491843 796854686 860408219 262860740 937771669 518888572 708382253 964283708 986514703 381458010 420060293 115973000 401105903 785940801 798043337 551915547 624146142 585587352 832212310 954350718 999130887 902288608 922081494 34013509 658582133 529195198 739819765 130026003 312751127 978214073 984690613 826637083 889226808 873829464 882287456 327377151 969646904 900190285 983793427 925738859 985469307 920716769 983708051 696350910 898914410 21123381 397546709 604643612 900823589 560306553 623480229 577463974 634656749 464134251 945217653 229585103 369807101 976871343 980238166 604452050 653998615 474860203 571279122 22308164 38472863 702302172 933861103 726151679 984134146 383623514 690159292 947278322 971049189 583417862 689664288 223531440 463092556 301702890 969224483 800409306 962504639 823580653 942506400 392405211 791417188 888582926 946125931 772556192 944191635 629487242 659103134 167885263 309061979 948810628 997172349 323391626 840055253 604576920 825544103 317837268 750983465 266973535 767852208 229298064 842654637 375842109 705846829 694760024 949052269 554745048 678769642 343581444 738581014 349162850 950846755 999329986 999583405 120304233 989579934 203996882 828511904 638816757 800491335 136384690 449549317 653981040 669914304 303341162 452309586 820307184 851786849 277268859 379921253 478117446 560268200 107715741 275297212 540782151 672598941 820235719 974365563 202520023 299439329 615666514 790881901 288706647 988499255 35500723 887025570 904143212 938927858 955912217 963800499 520002047 851334994 97181397 937951249 920332144 947577758 885703860 908055685 153695131 342496421 300573973 736466448 470690694 617528111 674076418 929091882 388775791 778401991 792436492 943859489 147075550 997772568 426388653 765197749 34188901 775538304 837018232 853161550 594842765 658043132 575314791 756247273 831669795 865740272 818919417 841892650 888594370 924260470 212276308 432878589 218657676 689647982 726389394 986230314 124075962 360695511 313472693 960768621 283904332 423688939 271347006 944966132 919252432 999936041 984329388 994545266 537301417 570528336 654936315 963033305 908559296 947854612 117669592 200395837 981714574 993114390 525883833 799270265 338539174 515782380 736190647 784221969 187218566 447742142 719818330 915471192 765814670 904133918 568170472 950489000 552994203 826130180 927921205 939536823 508260228 958656420 513056846 750889813 55278713 176181712 399079216 543905129 179673792 794977070 666212132 870173788 333678351 950814705 410423206 936508191 7908811 19984212 706014232 765131314 584149108 616814482 706827372 748677535 469719859 661721534 200187415 950634751 399361007 930645524 355016201 904121682 523796027 624495446 579096718 681139209 737611510 812855122 943954991 988295727 62824306 780339566 253938376 865812081 185061597 758916819 259609486 848741117 717706097 724821183 350257766 423556632 805398733 925259840 484275461 510217986 461552520 619723152 910811557 923852458 255072103 290060627 27416100 690486034 84998495 276356181 262324804 307050594 728092234 812726965 586400579 671719338 7945491 324141209 610294751 750837793 844508924 890633104 349342443 961222197 852997285 876345196 58406979 90089269 444596431 923507194 35980598 460701687 3465047 772948101 353856733 451841900 422217452 555758254 127056229 527812331 248770169 301538596 40060725 263255217 810821880 823303905 447952722 650899224 388614615 679027345 396836925 521829435 164656173 667886504 607960345 674102104 840054591 968761262 494606893 841578012 379189563 885433054 924314134 925760814 525806482 875969621 519222197 543961805 27626386 973750063 823878539 952762508 823366643 980273297 547153865 741335283 441508154 778708388 395462340 719310014 202998175 843996688 852846516 893951568 687572225 981296316 367869674 598815427 305405060 993756768 438277641 809621111 671885639 824804727 233686514 289911642 465675824 997918271 738614615 753909501 324910596 882174109 840281247 974203363 601287089 996264902 473995701 820964890 300030524 308763830 461445404 465971153 275330422 599915746 426724267 927486811 379949972 646921820 70483329 959654769 467918760 573352329 332093379 376691683 583805556 996269402 658765706 967300145 672793929 805024082 859307023 977413512 356210356 603218742 944791948 967785958 901999193 917527368 795825266 939389478 187432363 636413878 552033137 892857220 308229093 724719304 578173019 733557413 284299048 369878985 971538962 987722912 266877939 538390799 102650155 497995544 143829150 819719036 627148893 686103417 799753593 908858990 503754691 661508653 229217169 875873415 351069366 602464546 523531799 838765888 876517746 926406402 293314394 638385295 988303099 996945108 275176403 572218421 830278057 938114601 472791254 516977052 141240658 504736514 480522568 837940245 180038947 311388578 87984657 898100562 123038521 417640334 744231635 834037586 926301316 958149581 10069923 660737358 378395460 826165132 713480550 740337235 799371516 934438434 785093471 821296585 487195825 761605532 547183856 829652424 989617322 998728316 69639229 807028083 634978725 956223564 979542253 982810530 157093707 364951295 658852011 659730262 996151002 998139822 443257599 785068413 223307582 881627098 675422515 875759935 628939311 680791715 933660273 961874022 633256061 795377861 917795855 991913997 8703572 627258137 976280669 999919232 573284046 842215380 284048178 406819774 531241094 638832303 614045182 967906618 650406110 731562970 427117522 490300133 551484861 880073818 427729681 866142954 232801881 263057701 15293496 259315246 114147466 464951942 808143390 894009859 493663407 638779725 112132118 589228167 955152659 955589191 809467740 904064353 336517620 561174622 77802424 137600739 400080227 627968210 768611034 886943785 641088180 642923698 277776985 359334244 436391551 669654402 408848558 975366393 912117840 953660494 52404767 922597060 20349079 313206278 462851240 517420463 629670149 994700637 872507012 955558349 819661141 824425962 560374680 575094971 686267822 812012124 592298083 898745310 371875436 934489350 623682569 952250652 84377250 757353146 782033613 886824200 51972863 736901502 47907909 812291233 237874123 434758213 368694292 727495753 655897082 908190573 821130457 918198990 262450855 648728489 416282684 981611112 860127495 913200540 995758750 998695872 18486220 919705382 31766368 255037703 170633384 715696615 129183145 697473690 749480533 762041493 259598450 262093609 944479211 949729228 355152424 560234228 9792712 390610459 960775169 987078815 108013600 482042450 688359154 828451310 768292857 812958333 365741900 847094097 836540944 940033381 186763803 193822651 13585861 851629462 180373953 417323580 235417341 289397247 754890229 945573447 511891441 523820618 460058344 524891785 297546590 498472223 640373003 645161841 765512383 780947240 455976286 818257544 867151800 877228476 921951334 983467229 842393519 939607490 457396007 919664796 129292501 476762886 72028686 171546530 426549111 658588578 243501074 879599876 509216682 805732204 714790110 902567181 341425009 925323228 655622183 979112014 356895777 962961388 161247892 170559225 437061756 630345842 534601431 541398966 608319261 620922035 187066443 724160195 265890180 310764166 790272542 868174782 272883063 425535789 689894480 887463882 997565603 999436124 283351122 770425787 811255380 820941171 386424855 654203178 632169779 639682848 791353496 985749688 293300760 311308054 908291138 940319906 281415781 867062054 317499757 442898520 496797207 884663758 836637990 972644491 234672344 707274681 89972040 826262348 727395846 862545939 670571953 693005159 229168879 726125936 326057657 720390078 409324893 664550770 221938630 544866990 656362898 924869383 520061164 763128501 484418497 648703494 274877211 452810067 545709749 861038760 989136127 989725913 835192376 934525001 108473351 328649764 59337003 360643097 71371446 283243156 119392835 940698712 186570024 449823039 219727625 276445283 609805669 657805198 689793107 927569820 170722141 304638732 401539744 569645205 460435237 768383493 135884338 201574072 877573489 961729776 698303866 784165597 507510429 799357996 715502307 786706497 792243322 948282387 278056007 526856630 767900397 933423569 40778289 603703646 990025423 998516819 409756888 612888705 358392633 835932939 262463609 311250373 356280270 382057863 571223494 629544820 370648179 695079097 569471794 577752910 264797194 903763538 294370257 351468983 173686348 185401414 799186716 803669172 981338338 994647549 153718658 833411264 536325388 978294499 451113048 780888900 178356864 869420717 223651019 268992096 641499794 722663483 838642074 846616849 242113565 373021861 24088455 516177143 236165993 427134084 206633737 627191754 808980520 863081705 295812105 497222263 878679418 976298640 620166054 789258018 673266818 916567220 36249739 220034231 684799205 810665501 474044742 762300820 567145312 987785990 885656645 912136985 79375584 404304494 958024753 977479700 186637073 440314677 510824850 977293820 432120326 552157687 728713603 737827036 113957752 690631907 259773449 963815299 711129081 896525689 405660772 834430672 657624811 974636750 302664660 807104751 917678370 919646709 357679758 730652073 8910548 42916664 858392945 868433315 875546953 891495146 438623645 504943398 658509676 855865985 181725153 183537188 957419132 974552058 523371051 923394084 446486707 983913351 561399646 567876660 472893507 724630272 1492819 456199354 138591224 759139660 734283191 810090729 773516302 946044355 386859211 632500284 534858375 806844436 176266960 483127433 517175141 978841959 151940656 758479674 914946723 947782112 473451081 699154267 90724082 448213354 377783859 521737918 982100507 988627562 518921756 607564849 873758890 877937683 823288813 945089740 804008310 981503162 509110853 520528593 921031417 930565759 503978613 936228256 406772597 876696585 907715858 961890076 827702920 957779168 894524137 958180285 573583159 683829969 125886437 189002630 734380272 835947946 194151644 981384777 377131626 465696890 881122977 949147077 79874961 250312626 774619151 868949389 162064006 793388922 33913762 480890350 503724982 880413447 736508472 908886335 612170391 820136093 551203101 955462331 316384711 640371729 296166399 360576995 912466470 953532888 851926316 937907598 308887029 910012833 684644298 863023694 767277092 874827898 510022376 671301091 968125126 981746218 701452217 831058882 111936955 321159411 222291721 718149995 987101850 992045363 440003729 702852207 914705261 977471643 124707549 897272855 541660454 619960658 378659894 552913576 303845744 508944679 690243039 893091810 93491482 122947525 489949278 506816146 297959118 663810131 712604897 731020156 720111318 942137018 359932457 502988193 2722883 587174893 799257818 862758816 449297057 841538607 429855501 888210389 414275230 727437843 389189425 936800256 107214169 343969004 174844369 867267360 193222673 786213578 416405551 730851747 609200390 825472540 291791048 468316558 514614444 893469539 800559315 906532963 314950156 728673225 292674730 569299863 656477384 960615266 936337528 961646768 4009612 744457574 659899402 768828713 836171678 925076635 375633227 655318901 910385867 998981698 630569778 813564834 973138240 987909682 515201866 735785527 945702146 958799463 515296485 736630608 968323230 988122909 349608133 852731296 51055513 188137947 302289871 352449941 199181652 850563029 105836717 249667888 794739930 872482908 324851824 407303181 910754953 913804655 598232766 935446864 146066885 250948119 313593319 992574166 285052958 296223997 132456341 563973061 206600943 294176692 829219878 881298837 465927612 466896120 972756479 991104456 317772710 398562103 856581525 920076588 666729224 795728918 750038041 756498629 26471915 520315042 793666884 923189594 146533098 325120373 257377751 331908808 545540280 780733957 412577203 870114507 784990189 899111640 674641983 942531550 692809782 933850904 714340491 901009821 247567848 449726079 990512034 998769700 930949633 939670293 663607499 743726779 600112370 965358564 735157866 864477278 296512462 663985626 784713249 829712392 617466391 618375687 118237330 326918108 585327998 848005262 485506244 718062454 829061032 979012321 48081358 607420496 728944022 843898633 511656681 997533427 244585922 246869848 727898918 882924536 104682006 304360618 167501843 525606366 685854208 727712429 256874317 863578055 376184765 970301441 173223058 416274610 824523939 830465500 264023463 890052225 526831719 916571569 828381209 855865495 556963045 735911716 407702889 530356411 335881824 707170315 535433653 800819659 503699149 807033151 183866324 375157362 939139188 986087580 784941878 871905759 269102799 895895174 828314656 993278326 586287648 626007655 431839960 747885817 658525077 664475645 548505786 638114062 528092277 836909220 956860891 964835304 536816446 997051983 50131305 441795372 961812552 969120639 19883278 333333263 132913188 780823667 739244820 965417231 887037929 960725855 901511709 997652773 377505790 714576275 976531922 985039452 941062478 949905120 956031392 974964134 503119710 772985678 822799474 851627609 225672216 783594729 502033005 604925935 843901969 863494777 896645503 905535296 995384643 999007445 203375810 475478968 397806007 402341630 185051690 676049998 635026241 805392946 450262684 929371093 32481019 709014416 979211765 989385503 370986697 727610745 96730932 453381203 377345435 534753002 733189027 869916536 199636675 855039385 556112562 797329686 158334715 812534559 439305424 987670976 848048486 893978146 260244312 754122427 923892016 966912249 412223247 478349290 630029063 967403071 929737978 953030051 558044420 675766101 627168946 977055718 550159629 838835523 779477327 918404039 983150924 998472389 998421911 998863685 503747543 799083409 383131732 924921433 197921510 404696051 483251083 839480045 311007496 437888871 981596880 984629920 897712398 934454242 455344158 558847927 917484852 989247217 6147814 888654321 860286042 890433956 920152285 925977145 373312960 828218962 483867831 743069355 396796080 906273884 450347004 828395054 454338453 962203488 687473909 922909459 643853008 866342613 119729710 197951765 140298053 840051029 937945546 953107586 562185799 644043139 945060032 976304385 835427581 861885778 953267334 958975135 976951260 994379441 763162046 828195882 328129199 786537768 460648303 951706840 732916208 843328960 405242948 541105645 17331732 457125813 592808187 964231533 264694826 963907966 54868483 218624404 196526360 713137705 925965602 951759067 634698016 943937688 727285396 790458355 630662518 871206440 225227254 291006530 393138578 565580512 325962672 627376514 232622431 654512204 164215623 997598287 299980008 812823019 27999072 773313182 10195794 402603811 811413638 943237404 485859393 555416183 379534567 963394723 37648405 325727888 722025642 876836703 783939158 878882374 493051815 763713744 807392974 813293832 797292073 905903830 88635953 450829671 76996343 142471541 181007401 444648946 953815386 957009936 435367038 476912578 814976599 850052184 863990604 922428272 105141933 383208936 39376817 856883639 478665819 554525507 821213603 948231536 796359884 865432140 51738468 527575947 292098174 846934071 677306602 989135005 35814377 388006207 650993147 675820460 954378180 998024478 920818074 987443402 927429884 959649552 742500068 990416033 758195020 817662835 865783851 976726029 535433076 789431253 116530432 526392371 614646042 897358261 280789223 416328279 43935302 654478299 904644795 965002300 209139356 954711411 769272231 853654194 455020078 618827161 38955083 324910367 405628203 490953420 520794380 586087017 877724833 995294500 45225959 661691564 389376575 605720853 569641550 714076508 214045627 959065261 991597322 997055819 546223769 707499855 233363403 474586328 614189374 790300791 185305031 279417822 942623059 973799589 960426168 985905172 424033064 478789365 513236957 767494019 263899897 489279780 859717981 953937345 229466577 358857749 981066649 986409044 689242425 702498135 699936321 759757057 112493297 187518758 812406991 995959075 864409571 948745112 586379294 613460294 435534664 733213478 206155019 397991852 472949069 919151713 417347251 435236436 777582036 915597117 871784978 985376143 781659896 855380598 846068582 922157528 546374587 932535630 967469782 987506158 476599078 514716675 83000566 865439864 698357062 899207581 806690155 999339245 61912550 698913109 268403537 698902449 261591230 911858521 237365902 744000007 391937321 510166165 112866460 310302152 175326718 531856090 737537724 986166156 267192582 894162711 220973927 689105851 85899984 132432955 340607262 629974956 523056220 706841408 498162020 856600309 311757702 369260438 594469065 707595836 66230659 548035068 720042218 901066610 561905088 683635943 793026208 968739178 153824783 157859053 580224527 906487104 561066937 867267605 955709149 962951258 229343677 702665239 615884003 942950606 659434994 694068724 962573591 987622063 351399327 662700098 610371537 917671521 728226953 953642040 371819132 819368453 7483877 142962748 289951363 704089521 86154510 217432196 148512238 249067396 352507021 449975821 196514038 452857608 738462533 772781108 178288931 676609248 779869233 993958440 776193704 862837513 615134012 657206193 653414787 998255628 916985681 938069151 581194572 910564701 990449809 993297109 297729922 932360098 968132108 997840852 397409356 901532833 596186736 771432154 704560088 978352124 90279552 305710223 67430756 809958946 839340413 855826597 263259729 979813219 364877632 620468180 428275644 645709623 700853135 868340590 724359536 951870857 449865646 849192326 827363192 961541676 408250588 592864947 220256755 913351204 279922835 393037759 446150177 587698588 315061322 379939655 248066598 265490161 961878398 997736541 178976814 805302373 977385875 978013667 468251619 769414262 284504215 734221504 271228356 750385267 957419204 975011217 538128823 744789302 35533541 596749580 911243142 911392749 131212801 196294774 754173733 756024309 709692348 805954511 817962362 833250132 62409283 109668780 60835081 511973498 662864199 716168889 172581018 540766866 568770474 726268473 809901675 924021817 853967935 974578118 404016397 983491355 510345715 961739945 804025462 885674082 782695347 891318472 385510533 762203531 717584620 867170017 312189591 893400512 962743170 989086982 111239279 228066710 280063294 889475366 736934522 907706232 687588497 960179835 680283149 957186203 732226668 953469346 450401041 989272552 726798748 896817727 522244066 543721319 322844149 842908308 407194497 764796681 549155485 786728868 542303595 724293242 736018475 969736581 405969029 659958041 615214343 696260560 692436922 824834338 549407797 814041765 600050618 724853926 22551869 485191215 957668372 968059179 631264234 823927586 749455396 784782826 628520456 870742412 193519494 353105916 764124804 923500887 249531228 386620975 303037797 991072314 432841857 540463906 796747709 934216757 136855982 819084698 341847080 566358356 639023349 975527113 621387100 666963123 260553769 388505195 16385381 558936918 358417754 364235423 897640027 959081941 628666258 862446324 176325016 621622695 192173463 543063833 416703030 786403560 726286174 787366599 77198336 975663281 809908364 883047453 648358496 671978696 501022282 651480258 338965835 758145757 502591897 842160269 838422738 848110404 290349565 503725201 350488643 754181340 937263851 946800823 969839996 997234247 285429758 618606292 480519441 675976954 414073730 978925652 997675803 999212727 878908936 906068098 347836317 388230955 783535464 783712646 946636439 976872163 494603595 516854001 505981089 983252156 337358534 836117298 696704924 833908908 819437243 828672661 222229368 518363342 485601289 629653609 142032825 778786523 962788249 968576217 875915122 926041565 570601341 798829412 12110231 293261000 940017214 949560072 510472824 891434329 166186198 590096758 828529246 952777989 792337765 825458320 93633901 284064590 835588067 904536131 225724256 516061849 977876147 991496613 130877783 819440329 156395943 237701741 280598925 773004641 291667868 490068395 313491104 635864854 859327943 893009784 351723881 460699154 195838226 868347873 407833103 553718293 665835888 825644224 998255331 999326397 868835307 947983532 219455996 804957499 582338818 709751481 66085026 729851328 508044465 901295989 200542008 601056522 120066408 924404662 973132014 999010327 19089425 124336915 693199508 925585619 843142177 930254280 286714986 814731473 302916819 849926740 684340069 795105226 296910579 465700054 275121228 364374918 750559115 876346234 457456559 644100567 43415112 576661433 258273530 631617045 95059331 807711085 919158212 925521233 260576662 522969970 932569603 971468515 283993715 862445089 103973891 248737976 969607940 977732226 630410705 769778174 169495956 718874404 755535340 919750810 259416691 549612655 460643236 790691510 878184855 891356039 340787990 435929646 258542814 932523509 157829380 421261287 652507726 834409451 769085570 912678652 304326823 556526282 383538525 432879308 719569965 847362216 207461618 655400868 230342627 387030668 389394149 619946286 598225179 632701820 304272972 387978591 351135808 449667081 644567922 949656709 720096041 876155977 238125462 272372512 639882714 676251605 666627915 789036098 420995935 638665884 861071906 967306270 702649490 891822807 540791623 660068365 606376604 867739679 98654188 968318871 73294961 292390533 583046118 643704401 100269490 298047478 456796460 712650739 541232122 595872449 48878165 379449062 994422413 998691762 69937782 973970795 989195130 997971012 928423277 939602219 95642906 325784198 596745128 606996635 580835014 643376302 639519569 845565839 311858862 387850987 709918184 921887153 112486956 287492894 365420747 570381280 415443832 649505406 298765787 600756039 907261055 940538354 972831294 985093645 165051438 764783086 563307621 942667565 423091002 892977179 861943032 956441052 118840632 466346991 940512868 953593557 539521532 820882347 249444509 938242133 282220929 988301316 161902302 891003484 616176972 789374131 204604090 767873304 211957492 957738418 819326235 933226844 51303905 254500660 654308401 734530232 975189965 996310666 3502783 598826201 670248610 809403609 551605604 916249315 337131568 647372386 200668528 623029572 102933059 393140278 408891973 474201324 260057032 387432583 742697279 979586528 546379404 836453325 235162645 968593175 661769276 758216579 638757004 723931199 339079650 938093213 803792024 839514870 888463604 941194682 887804006 938080823 846026823 908185691 223614073 263571574 653162371 858253262 345008484 995139152 213990264 335751918 753877260 837570317 902420600 962506076 756174488 975392864 651444859 683062992 103958727 334424042 598426880 946539029 269686538 311996044 608695513 667021339 788321614 960550339 438685290 611623122 322728514 513937122 641271096 859408032 919015498 921016295 376328970 794694992 594956306 959253089 330305919 336165877 258569521 656522655 843689289 943741793 688079440 867035943 365264812 430375799 334360720 840439871 541111425 830547525 782738443 994538035 134659215 484896677 692015771 819273132 326421700 676539840 20088566 903840473 799563217 912746435 582186539 691192972 41135465 965855590 576455369 975229828 277602303 348422903 312286551 512151658 194017638 559998297 224166401 327039639 890323866 933982842 82775249 492084996 638592711 724427596 53617966 211935658 441604164 805456190 461636231 941209230 107944838 324744023 235588946 894006697 30469 551558801 417770469 891121906 550558069 574135136 451921313 482714208 76201971 553356771 423751987 868109499 784149356 895955937 416505924 439000700 597233206 766381486 696668066 918087899 437508089 788446698 697494289 945638078 342854493 581037580 834088415 926038097 298097370 377636403 104568236 933359145 792984563 807870027 492914352 923046353 426572670 687438747 971938644 985028584 418379824 455696077 254207358 659774876 326384475 741819378 286002894 674093258 375413246 785390897 962337715 974564126 4851451 282141934 709044180 724378655 966150018 984273397 928624946 972274074 447341560 779346951 712717593 856470090 39169770 273232786 535696671 588574635 748734858 835471446 65850103 857461713 740435663 833748711 619827914 993368596 288729432 956838323 238641686 918891496 967209189 993387772 246340847 973530472 422502573 967690482 465681742 518294796 605720126 739771217 160054212 634766039 405605182 610913405 649912482 694908543 725469254 813771623 21457666 473496409 693936731 994157347 602687400 613551095 900580906 994560355 679179642 939737367 301322083 702708723 31045180 88840831 438322514 712112944 846257463 997161239 546366645 731595395 529939632 868409347 837092157 884002125 730813375 886712178 567377998 618840536 742339027 970719503 41083509 917938960 110113998 803716848 125155367 129870915 86247678 655759527 853176110 956508743 207459301 681342626 902781316 998090914 340142313 982459561 530257356 697066461 669321820 939496587 526809660 786017848 446243429 614806675 112374259 519787637 568626392 656737496 166572611 827145749 984563957 986093457 904497857 910632524 439545777 687423970 536478937 546192222 549463459 616632118 92213645 750398539 653900682 694768413 499749637 723395562 500857761 746216774 367707973 998927861 308766526 393004290 83675025 565893302 109848376 925260333 877237537 988366888 32787234 974499419 56898150 808201977 802882995 823544406 511758414 791384143 570950425 890394811 764707222 864010092 647716972 970248302 954753570 998819950 325488299 513578275 697727719 725339235 963412458 973766301 440846822 800248323 483883600 996720351 206539441 321361165 635196470 898096222 159439868 304479960 174466759 400268962 698972059 934496244 147630793 817469762 341576033 572911428 552419087 744273227 95373223 624944314 721249333 886210174 425672182 791717722 383218087 910705118 108184188 275763896 989675676 999683138 181039886 690788917 665202003 929464096 558518561 617165635 430185510 642270467 673652674 921062991 343423979 393602539 646228135 953779827 675305567 919506766 12481902 702442111 988791727 990884669 272925406 769944050 554271625 740350105 386875744 888497932 869921994 988345829 813015107 939295358 826137459 897835029 154076739 680706299 838186615 990864932 214442382 970114048 383636505 722031646 458149018 683886947 529263180 907091324 956455806 970316862 253417861 615929928 898023211 958101835 613238595 706460806 253579528 770493017 697833930 832861188 43632555 959276728 554924558 843541551 237506893 336080908 331706373 569158756 842602378 938995837 650772397 886598782 712741469 937631926 162731310 198759143 564842377 567829742 636188520 825082736 827556704 924464974 191420624 862549689 957481950 961648077 949193307 979216259 470821397 734035387 772630425 967992366 514923382 582290706 985064138 997503267 368198042 722906116 653960110 775218004 501699063 996100108 580730245 657115290 323966908 756700510 888750446 965679984 197823018 591705603 616705423 711667993 505980067 987567100 535716279 598371659 833058397 940522794 648989383 896755954 584379885 722022120 26303800 575592346 787749300 845745995 58432244 326917209 520539474 942621592 862544397 993372452 126971277 288289062 709157417 925138154 619198546 875730022 284053184 685358111 134992938 278532256 238318006 265293044 182643352 844372144 453618353 535550835 483340028 566540486 572441027 819759925 414908611 457725274 409983753 948248183 808175274 979836812 177767334 741485085 561146847 864906097 445144879 782484055 931417924 959110184 672726665 702721663 926084890 981251867 693340237 922879078 29718045 301190634 942817407 945706444 491687905 547335289 841566128 909317030 100560850 618779951 932771571 999818641 849500245 953287954 324580929 900740036 460538037 528269544 751047659 776072357 386724526 943158999 724534863 735800249 847846217 960750310 674058192 777673688 959942518 978037165 82679111 350046605 957307730 960662666 87665710 389019576 427535895 747159371 359746755 585298616 753946168 896997859 66599194 355297264 889320031 926248961 302695903 591054533 310684862 869652899 993115003 997365077 168355007 185595744 772066738 953785220 233026499 948828875 386920927 699563584 831570090 882882339 496787520 879814903 239204351 973455365 6592647 675503311 779483433 963789396 739857571 921215208 914943480 923373454 522300456 643316149 227318409 807287656 219112730 908384611 971585751 999974391 342005901 527422408 948280767 965007841 76776730 541536664 492526129 820334474 337394513 636907825 413806705 566829655 30346892 50935244 940895995 967115767 176499709 785142330 728376007 812397791 349178415 764582585 74651405 698641373 988516301 997467228 638416051 830914820 670736364 728571543 279169748 984922022 453902273 454434202 677396301 785827011 358492658 632515900 970409524 974117373 553593441 632515846 325102068 743334660 386208957 404490049 447651422 456803062 343077589 809643642 236553808 789072070 261277784 925373511 598451366 659993975 238245581 494679077 197595080 783398395 77358235 398508464 329222209 519576455 733014504 842664548 309190982 660969968 705498085 870065809 504535887 734568684 59591676 404676257 396958137 911525684 958670969 974701420 822055932 973188379 50561154 598978841 154426723 225540283 585423308 998407764 706272361 828606471 583343471 870875861 774035484 881584220 607500018 635510388 735340261 828267548 435633110 828541854 303139025 774141596 609588251 906827915 326812579 533862361 399647711 543074882 221233826 406457306 106656621 117831801 636694577 722493555 427860440 519320179 740359921 799761317 886649029 989042727 133197129 930306061 684425315 989610546 93158156 610284188 436204844 566787029 750310581 901584225 559648756 661582488 468756489 716162461 471392924 889062481 587487418 857216350 520598179 736194514 431598392 801334222 347897674 822601165 687712226 846314251 83536572 382550549 280268082 493112554 207117586 327405976 808742119 951499409 372691103 560448801 369205864 424186981 383398506 740441848 589489951 618388886 901076412 953164369 997733025 999135968 27749655 397864123 169814962 819162124 455178735 467734779 434743162 502730169 691308911 862486419 591741551 968856716 263735348 722606989 75505160 116761789 339663298 362246207 800976698 989062757 717534072 840859495 263973472 291858639 137772966 944840727 707758157 817980999 741025041 860877342 712670423 921690362 274471944 831711553 870855417 906468962 677503763 834151535 304010641 347338540 295047166 714478127 437324852 908811410 996550400 999400801 83242807 293766441 124504664 878357615 218326274 437313402 757565170 906118803 692951422 849103403 620505890 707209899 920990785 941861212 904661690 928964727 343507605 962902759 988311765 992855492 111752768 908018186 985327057 998751879 470230396 610845490 139384078 349481342 803032974 887531751 500223758 986291255 933493294 933989060 933070675 981528720 656762294 706115849 389294733 504132248 950765717 951070472 716123074 799852114 31831119 815953544 588778312 657927170 439871016 810062819 855092533 929312037 385674360 720318147 447406295 572926678 703248374 804445937 585929942 799916517 649435788 961116748 861161151 871267728 890874055 950063132 538999917 823141692 891969898 950562447 277794896 473229507 560050178 746237529 377183301 847850595 311352687 407972469 431897044 707651343 781173046 790059207 330092924 451833477 744302413 923642277 46179912 53466577 353411821 841485823 772223251 812265959 399061614 523524356 41517876 481410842 899513001 993351940 204463985 232573817 483617398 542651133 889230432 972028838 728665014 741479247 860657244 884113184 515384702 797330768 476529643 763428447 569924132 646134428 883490099 908318200 925942008 997870783 932146275 997908878 385502948 789372383 838878692 902010833 826517190 984734575 861897942 880525876 350355582 864957670 310399472 996330843 649832560 757139903 922604859 934888936 209624339 447298330 686125506 872866749 968530252 994101196 547336385 994377370 771852142 860243919 466886387 997362885 968343909 982955164 749791576 840179830 593121042 763201137 788521704 997142964 142961207 163300721 75615468 796610216 687223539 749051195 356110459 512582991 865710669 874185806 549072563 912228707 576231011 597766771 979196748 980725490 392227751 631205481 196155224 549389064 63675373 883490722 332576346 610743764 130973215 609011532 399311518 456716617 948272164 964074375 566615462 665188621 331349522 834731234 660654319 818205502 255427272 273180786 870192229 874200245 332733924 998365985 875462717 892853758 453392088 490360352 542572759 557343558 858296974 957539214 506047519 602586616 205700313 843803175 718891999 923985801 902084033 915962692 481992341 670873578 131239815 496951483 491107451 849773701 958484633 973577593 637767869 642078283 465842960 981203488 318902314 802777805 359941860 859440591 163033370 783000729 929172070 952547137 874894437 925918392 748313580 813101477 366134843 975371949 598663700 735188997 36532746 832949246 572473258 891780320 942553035 974191685 205517799 822950044 887695623 928767377 98677220 494199570 280122562 838961529 298404427 312950623 542549500 802500526 919581612 989315741 592864825 598917967 382826021 697786332 644807879 891079095 552593340 655839448 846620291 892985190 375023061 904519317 721536345 796127573 206567135 636423315 954231365 968707009 382695144 550271668 233492790 909106279 492832913 877360834 477374925 847272080 462218155 527825217 260077666 544835868 495442747 806435805 623944446 818764278 820920463 912049086 387389209 738854396 386570967 678853970 949792101 961207793 277802186 280980802 209447791 865301993 418372909 929686498 850167722 909984139 531829255 967807591 508018394 808046095 443857543 843775854 149056384 361922264 834957145 935845086 749320880 988834759 183282362 789068432 636099354 804346936 538734600 900546107 38232288 541165769 281950904 681261309 971576567 997336108 999571419 999757205 931004842 984929474 669077426 822948363 832605419 866789290 701733418 894669903 800130553 957304981 899470522 992695430 333072762 710776869 268387038 662624880 755959125 909586754 97531349 689040667 39727935 741429499 616259843 761678038 365925051 957193516 803785931 992430446 631113750 690593273 431963550 783245259 877834098 940032898 469406594 694555906 634447905 634999275 581888540 917462845 623594120 728545538 967752412 992028336 542129334 837826101 73191674 807462214 454466135 729962276 380510942 872983762 252226439 677419197 517075186 872155501 86267315 437504307 36954391 748534567 947709413 978806790 44435992 346147417 458673197 564363014 751308899 847546134 611279042 887175782 482612824 929470863 79256158 476875679 902611190 930963253 216542930 397907830 665684656 846848127 760336035 975288542 767148298 870102382 714652028 768197138 27388445 596168689 78427033 814032346 419210721 994752894 821230476 897035486 842611900 843728413 897960621 942021173 755744160 979590928 783980641 933048495 84306765 130332129 529843062 686255505 39425692 810598052 846283601 933752481 885884597 921115400 166264405 783174908 349291184 654596734 19986498 672719298 156640140 745151787 240790367 345808405 474940914 723836438 236365359 415798342 78346114 166642453 643280088 703273837 482429937 606148269 465324223 672652738 990917874 992075943 927591374 992025905 597060374 883013527 769693118 958601171 487673680 807785762 430891680 617692602 268339536 332819535 522349648 899261406 676683605 742146488 724711171 873455462 209152023 894050132 302045725 489277253 57422815 985830187 373101937 684972631 753224618 763957888 743401205 761921440 224202477 958765447 10922953 432730060 900240438 907893053 673672930 735234123 939925683 955723173 166287489 634094418 806426962 843022493 151620082 695385739 459170169 739426746 827122619 920213623 464717896 607476655 244160612 770437121 484411211 818253585 799556113 845754950 481738431 562855406 154787274 684338266 354847791 650732553 159142269 555801687 212880108 484565220 270084244 627495053 621526267 643726473 485772765 605195869 928100503 959418171 451195352 639120219 149902575 723562468 527607017 793931736 774662368 864496822 370180096 714582986 556187136 747508959 794984613 933897081 176927925 836386713 967233793 978540428 426310195 975350162 788719915 911681139 406104772 559859971 516464044 958957380 709585086 808925728 424817824 653286813 442586041 773067088 417546708 646324646 627365215 826599783 973893261 997562422 346695569 878074619 52711863 101523061 55242409 877777925 377078531 988195851 740838376 939653913 433815545 752263489 184736431 645461127 529176453 612995425 917968726 982480734 523074739 902725403 606687708 757213923 661318622 769171632 360058410 507394146 237087918 909792874 33237141 198444448 457431687 598178387 286021248 365024414 322011113 809875679 340349519 462043827 773871505 822484535 578201808 695035898 951113051 954538669 826453789 848490326 440600264 481414352 998399681 999658089 913254810 953556481 443120988 757056199 347466735 969890324 795927531 977283889 651266284 933184671 386690683 624230778 29053007 370570100 444550861 538967568 378239124 755971574 376839294 827624269 868731677 920833275 768124403 930665975 493009773 838311524 159232033 312351415 475866816 556502291 261835081 744882229 508180593 850091596 692690412 999850087 369151492 657979001 480948599 771072371 792022618 994361647 170833925 430988287 792537450 911320542 533838846 733769477 288260979 318090565 501642962 977625542 627072124 707451963 579094516 692402614 890096224 983387104 891067660 956293495 835162425 854821949 964455930 975287802 905292566 975416506 785317209 921190217 404405801 817041679 313168728 706681051 146264624 665938926 38765485 704890232 658751012 921294967 37186129 613367853 420159467 479729953 829947664 886086489 244982524 624566435 181494235 445958992 699807175 942559717 423098604 754494034 852749790 982144999 223030955 881536200 289676061 420816642 209809411 933475231 302909445 626595028 291891561 858178352 468144268 618023894 57530406 529488302 31057903 587180871 18706840 175431329 546090655 615036028 266074495 702737907 21556912 133890749 462731826 685020654 676056158 710232374 44274096 96577967 258181401 539925178 198368849 732453322 26545607 929291610 219374745 305007245 471661922 768316946 311863325 778993814 637582579 934724122 359986878 853383480 928616611 939003967 730464996 750436973 473636767 523972617 326875184 839426020 737765867 934382769 509229561 752778682 52476112 877222673 210800236 798287585 147666297 533164265 300689045 734617081 368742604 870867755 233104954 899612904 806902796 809487214 244160166 927417432 848810851 930331129 534564042 914225094 848681625 911229103 981166326 981616275 696228806 813037489 140520474 456997985 175550826 627793351 563745439 730561696 976294148 988353450 447793651 905235434 420853503 480802620 38543239 522194568 76878299 464396988 80049272 645713284 897026367 909983257 82020422 309184616 575068480 693044516 555035411 745841753 590456712 888006747 120667718 728652853 951791226 965223225 906453668 952175529 924209671 986256888 552227692 689628479 208621535 903982594 821689708 917918986 687922011 777098497 542645674 918211138 127402593 373086677 414700725 864127878 281651694 768655434 439350884 894153562 684889171 933073009 217354456 785406640 147055228 595707006 626635037 766617196 258304251 647446633 581676719 852321504 104769194 124526675 922600229 970588553 989873118 996910213 401277975 667931317 106761378 950060432 546229108 669852022 969854843 977947935 928652252 994014459 756510769 959111032 57539799 326288266 840448864 974330767 529041633 688078073 982459730 983063619 286133132 430680270 871398165 900230944 984431013 990496705 315832292 455714170 336172111 715413206 667810871 697565756 984777485 991002395 492930409 624843488 918385651 990237307 617551731 845144461 909891820 996479196 757177934 805758276 851355402 986385369 773716838 897790679 866052679 893903163 222225512 601004239 536944489 756902568 360619545 619225975 276063207 427854610 702419494 871098719 834793165 850821507 296531557 364863775 916989893 927721991 5799642 157202090 395090977 820351954 451760940 570715084 306608715 570074305 194656793 765693352 318197396 964567636 635648128 975957092 109790184 594591873 785718996 790939843 593116753 860083834 976020 465621749 857846269 980128737 870680374 989102389 277901823 713072419 503092992 559697355 254822119 537441324 332858598 893836608 7884097 874900712 836827062 932234162 826331193 959198220 480552376 756658680 773047174 848996875 637689219 652580890 951784875 999251743 409060481 541542599 68130091 421337154 943724495 988846574 259146467 556104127 533972211 906132670 128948134 175651311 359486788 519459601 265151166 815807375 393193524 534325397 746717443 899239017 258177685 827310169 306585822 492635129 5074048 234840171 504347035 850372328 212359774 372642197 455298554 495457284 562053601 892789995 968990239 993921481 666854599 985746593 694987529 781012034 303138942 925303574 448280434 871727740 88596583 735449051 459087820 617413391 980880210 992904595 318592056 585003699 48741882 831562149 776182944 798301250 805874822 950249715 745631635 899287497 301624251 394315319 821982435 907380318 208274000 410670030 885598666 920643533 155461124 912689290 962877871 979840092 538298171 671550426 523184209 957676700 192478265 510724675 193472959 585162240 548405872 630831502 456858141 919860708 8314891 225845810 723430742 816339071 618113348 679099264 936376976 980310267 951320319 968781163 347582135 452118794 526819025 706849442 387769997 669879396 476211032 711868488 320058903 641445106 948732250 981732840 122659158 492883494 134511690 217447136 846022508 964458719 221561376 881475600 890703488 959185326 158951689 209786756 683976958 842430042 209780235 703979774 894350548 919831957 752833643 792964643 444685300 514604409 49360650 373585992 977835358 991723708 61392294 408202544 661812631 987410668 97254972 998275309 778035828 936891470 384241449 957144811 208668889 601536362 971039686 978897051 954613866 967618559 102474130 535015086 387676644 997885297 782773430 814634626 140114142 867990853 524776839 628501807 259077910 605009564 733256159 866060153 300026779 555813039 606901591 710086742 65023103 503860968 543071913 610371116 150160496 876337645 48115412 916909349 119903574 171289101 654706913 978127813 460159521 517709355 698943196 970354958 973425122 994908810 635948656 732587586 292645427 324580722 925871085 944950443 461981150 721397149 211563545 629059987 474963161 679485402 609110874 769870835 159848932 634072701 668691573 993047563 728842539 963262760 698823434 741441930 129152744 764038002 353516799 822478556 987703021 997001172 515640021 824497986 701095961 853440016 3535931 113286652 592210602 723854391 412606913 807762734 478058045 627516852 134246741 823637318 894080706 965715440 948968480 992188625 110783068 791706197 991097428 997745259 231738119 927539453 456099473 482079318 510396970 819863304 120551774 521011897 570870007 590543042 997794688 999885273 315655821 967736306 778199306 880697869 429330185 814799761 377179957 519074381 468441864 917025362 969508176 974923928 507424917 775717072 713004706 984751647 84008977 612011027 723317032 773405730 577797438 978584589 976471655 990545054 610431198 635592381 101229379 649814070 938862474 996139576 835871305 994962786 234096048 957301367 346680894 919826941 211821845 963391870 182892351 567121037 420624979 824244675 168113883 385142078 574142144 964857937 964276709 971226725 354317203 637787525 953346725 975327387 958902125 996622506 973561390 991348623 847922450 954679914 726770086 799904595 991065811 994014117 478948642 823800751 740403483 762677106 846668334 944504423 505629449 745053226 194135358 958088247 289163195 514359798 289241644 773293955 842590195 912534504 588886553 875259305 778495441 866841188 515091634 745111890 370914012 438520456 94641453 647192038 886342332 889958834 780821725 962280948 867873869 924012706 495090154 695701274 299366931 469421419 170925207 716380521 506061901 558297309 255744243 743054641 954611610 969186451 95011734 970796899 85440045 147904467 985799905 987544372 163849548 865887852 106387901 656101418 112461151 948450037 779433165 907213472 421415105 704722542 751665058 820879927 798658677 880234618 254084489 928459186 995984369 997079255 281379141 486869893 91719972 206551664 836953040 939164258 619873570 704701398 904095756 946141188 728749289 861470907 523043922 749376991 770573464 814536692 860579370 895177610 62096907 684390793 565965066 650268839 540697151 811931591 137332805 665409101 214157868 479421602 329030600 581338946 312783205 563302554 545864363 608147262 600435156 687340064 225918373 348306581 699245351 884090249 648010161 992184177 166461621 467413066 712036452 988478765 830814761 832882268 694066452 835669688 159075181 936449076 315900237 839780104 705873100 936640781 619407472 948369001 465773584 529044103 60672166 103546042 577926263 842004576 633367258 646858370 895610783 975120795 749527235 921139924 823689391 863974469 390320776 823651039 996277983 998667804 753255314 958652917 968102370 985231839 261757936 926696109 844174918 938599716 611110238 825805989 677748531 680470737 532930171 738265090 612720815 954881500 962831267 984730939 439074563 702228207 5754141 888590803 530883465 768399665 147708759 580677628 664430818 788702322 561800132 709354643 438952129 641001071 39000068 880679500 743331878 989803858 283383889 386093614 851172318 897974869 629296325 896634194 986896165 994975210 654805727 875322907 818060640 860179834 285415773 951889161 987160663 989267858 718736158 930769450 355322528 611011317 654964980 691557052 533565582 650951445 296603880 392475462 769766170 866912678 770390894 810225517 753011529 983382508 695322493 936066176 351317525 811941059 845198693 958890468 670866985 694527874 738792097 849919665 727193668 814559868 303264936 936687427 723763708 831774426 940976493 994926887 317009382 975289778 749918447 814390951 601276391 785198722 627279625 710495610 766472591 945824304 912853167 918371800 936496763 995248284 91116139 997648894 389443145 830779376 400628709 897710923 443397306 882027728 144614798 806746397 375888403 651290669 990715822 994599027 833761918 835555715 977581865 984768616 141846712 979914122 283486618 908423201 154160473 685987032 111032573 248257488 808454705 890320779 238125531 643863370 908010058 998679439 209398612 443808509 742549304 795846340 170823783 814738007 858967700 970210773 926297936 961814019 8097733 974515390 94548222 607516733 445420359 793431073 58064525 175418766 879900097 957177029 106628654 939922861 585259689 730538153 14014590 883476790 409157856 808754627 274454113 540725460 275762914 541542285 60539268 531834623 592230987 721357559 936944727 948093727 592253290 738465957 168290696 345419101 231413462 284132402 525978394 827903460 60796917 858448608 11123779 900513626 131411272 964504391 219521001 404885983 296300498 835770967 67855683 864363613 145657566 329281543 184004550 337736793 839786982 979383232 896692390 904562630 623234324 933079113 437445095 628833786 63321225 539035679 963260848 967577958 563892781 777825526 159629117 667696114 872125629 926712079 383938598 999003833 796622697 849695419 234433916 578322445 648077602 883320306 56915034 525773508 323593944 776228334 666212489 922678837 295312492 304917934 866072218 938331960 873496641 895005053 64106119 440734938 134961334 599326524 518175180 608920140 822357899 860826123 846328169 880229495 633583253 687692309 844116763 929457945 745163550 952237728 796905984 996158706 853774878 932619089 921867852 989698349 36202796 137401407 734632885 977244514 463624154 480013835 238983442 309256845 154274783 713555921 796395391 811654787 657584244 795179542 56053385 734395313 358811923 376300532 983760429 994810977 763297561 940753970 349674894 463839196 814283024 822190109 608253846 833037250 767820124 874246162 731280345 887540385 795337696 936626326 326920002 426914832 539212829 941806299 801016625 853873102 231919004 311790469 362953575 367850353 773959795 793813075 508924272 808805873 292057602 919353017 981606026 981710142 384481128 931324128 776578178 831524958 791116927 871699715 74938873 866765618 924577305 942438963 834546674 958205399 87932844 847062493 813018158 916694640 619238230 810853619 77823338 507189359 924527686 991417893 177228731 394349989 638206144 683344977 2837790 45733212 807546231 980612465 966550362 978643398 878403781 957559160 151437028 737864992 453052423 589931474 66471376 241602480 134606739 753941804 671685066 818315993 984025023 989931436 243917167 452522264 565991512 703822810 944856167 989423126 767490428 852496911 943769143 976729318 796183581 848555158 821406181 829073481 303541523 679823976 199226462 223169063 476149193 976249447 536139426 943540294 219965835 560011775 228541289 462741105 673631372 996088077 396300476 566190397 199242596 974930643 129988858 425636077 119062471 774859658 4993970 808682219 398348008 748905151 802313075 893767147 72057172 740770202 325908684 879539873 852834204 964716885 677886911 781029755 613308781 641478772 936765006 937521743 53199581 795801410 328572320 575146851 521419907 867353179 675660867 813691100 115215938 146932052 676221515 732556790 543937665 941721988 717831895 853958392 245227483 332862604 551786049 821243456 93726223 855629493 675023618 807252596 480332232 575331225 594177352 823478685 894692200 896807014 458473461 459174369 44726114 758565895 940443499 984593333 275145178 501889339 489906077 537274483 56574903 810875947 37439095 599041862 501147201 562250452 644877734 838952303 997062392 999869661 590885384 669784634 31156500 930396715 223931418 726880869 681502115 858514566 231732119 701937353 352288693 980862112 951576497 960195639 72576966 331375848 914148817 946285489 472796485 601256185 758931512 843916370 716682339 868264849 340537657 472049437 812963143 987204582 673427336 744069097 281240577 671878553 205153190 379039280 47043506 665302356 890744445 928148107 11896822 643329277 886052337 899411203 276797470 968765045 485663661 501428396 658265198 752199779 154485449 373716021 186943077 570972523 812305722 987158253 465176090 616164314 139655628 565527060 195917707 517652077 460369436 674745167 633817616 828297360 132695292 589522666 885887590 990555751 939031593 961963274 690924178 726991688 548446405 655217657 789103969 896752815 1819935 864620154 737601776 998160578 561076988 739161634 845594205 984709141 371523027 590505861 428007544 642210257 895314241 993899439 3668918 134402478 529342466 584847475 14913905 720380151 476875241 622568766 951568460 952748371 236306883 865124149 154398317 496976185 810103605 855047486 144326326 638706610 551854303 717625888 858962124 893246853 404630227 650535758 489094024 601094181 455240611 556852561 750258548 836654211 12664959 737358208 114034946 528408276 720608301 925075413 464082178 667413979 911332079 957828131 326769726 794345260 37875716 161786992 271644272 902033915 426167658 491846757 302849899 792099497 945328619 969712695 827790924 886754581 735166944 879322021 69020532 305868344 716762940 946354109 353928679 429321897 388308995 461486023 727853722 993369496 901013266 909103774 100774805 480550327 109158685 917236827 715178021 996747970 17951576 260194646 92482698 539517563 842611809 911594174 819740486 884890957 613549253 679464159 488044917 509960935 825755199 843926685 493722669 688047317 815162834 977238321 982494553 995664908 345761937 782557294 120851781 243829992 219630435 512232944 330534516 397092456 964687812 982458250 659264897 799438166 266056135 279787829 618405960 898503416 488700042 993462360 114763411 846533539 890354090 902764977 131821092 344791253 785419875 804835701 924457065 977943413 716436480 848255497 792097357 799711809 114583970 171600950 236761857 907509568 375544752 708019995 626078179 663989078 816320758 818834755 884808865 986142828 224119776 672488316 625448995 815334210 289551595 504209444 785019764 948634199 446805780 918401511 456908099 549349588 210253517 260066759 427271178 776346727 853603443 872733194 111073733 300529816 724844160 756136122 637307090 666865200 63763951 241059882 659775385 675892862 272538719 639974465 443529416 600279877 199349526 915260099 552900409 795181170 434633502 539959064 573866147 866785965 251527400 461443842 86086859 515171545 970096675 977495762 251196786 592969218 746815784 779211310 787420801 799894058 679458776 897584253 181677017 592655916 683361026 757639622 252221307 977350289 582724760 737757948 232090474 478410929 864944828 900786409 128024662 998988649 415000036 995063713 590184460 956952524 663756474 749315364 885356327 908442374 660448838 836928596 257478260 424476906 347182252 401232899 71838582 126605951 339093980 779067528 326413112 515069175 39390144 47359465 748814505 820536893 757128997 834105020 74401769 535562591 106458381 711090218 996862987 999455025 816419714 914461293 874840511 941666881 824898352 878878256 895922658 981953237 391177527 876965712 406323833 451986094 556649458 912247653 103758765 919886201 606058972 691307945 943433177 956005048 31689774 815737389 432915677 628432815 555025374 835245245 172853905 512098868 584040558 602661194 973857174 997296469 820837911 859430783 580628207 729117540 566000770 869303825 481682291 813652518 488726632 587135122 781918655 932588341 429600742 453225333 381858869 565215215 882746644 918667232 409397640 675915579 117704752 560051907 825352014 844166050 98222237 930210526 590706744 818064856 813389040 956947414 481098758 485197953 230010743 606300542 44862796 269753505 906066463 948346553 788773821 976828886 301387084 537629249 708698776 732690762 510047144 704440120 320481000 777649258 36609165 519758554 69951396 229717928 780516955 881088101 299895573 537834716 906334261 929689871 329649491 700057865 625517876 807386173 472795183 611106271 138313732 236420123 611506712 919098494 793093407 819669263 950620971 966081244 292785549 536666571 539292135 926697631 209470132 324647983 676437901 873080804 738214169 756373836 72497186 319764815 930468997 968047576 979552786 998343371 211986065 526353525 394242282 823368526 297466437 701450961 245837047 495751740 58350130 681246788 527152255 677651511 891496640 986599660 169256467 654456165 26983508 201690990 891413261 986811649 774940710 822916956 883062724 895958694 314942817 689480067 301678367 813206922 979984630 989858764 298439980 867170045 138212314 634227117 245977199 995403200 729891568 786854684 596987124 794863279 63067705 620712447 592344832 779218919 184273637 937137934 130285014 196311003 919062348 937557504 499191223 575758834 323982669 580400593 969544658 970637946 945834599 962017811 762430567 839281602 501679555 520664776 86073323 884029893 281650221 416468838 726926593 926232639 524230198 765809356 704682869 865163911 320173549 729418800 152804364 185833196 791435405 804717546 129927386 969801477 428998488 893124253 796781508 843722610 244777861 661201634 366707771 909664492 531961916 937140240 891927310 997960977 881221758 916758747 133512529 237037910 787412325 918596270 402863147 898684559 521562112 970935866 254595558 461170607 711956756 891160766 640778651 813129671 792267026 866565634 487211227 887731896 157978226 704909392 986129180 991044682 902883864 975753327 697292411 993460546 650511373 714965066 628385528 700801348 111279743 679826836 158950751 939233301 874344200 967763190 476821022 877105653 71966751 838888170 208211973 749354070 480450883 773119052 809518272 910855450 456967791 562941596 233092993 272256594 380533677 942763407 137514012 534634072 932468074 942014064 541663940 698312883 687359368 746295364 831620317 932564912 338531107 722846522 608910074 919687203 373470850 482709294 250678141 604434549 561379787 874038300 485796695 932021783 431959498 973345302 828072801 837628505 588263954 904481413 317947624 558955366 40834934 647061288 946684163 979805736 206183156 756506782 114955750 408198096 978207966 979264393 46501697 879367792 168755800 884639611 986578710 994160904 255057111 535119493 35724859 89387012 198262400 435759968 897644262 955065335 761307389 798403694 156972616 735743278 617389339 784507330 581400553 615648373 101789197 532535773 397617829 893762172 78431307 479783729 973480449 993099683 777186002 860932505 489063470 963138798 361568783 969396119 110816484 644864505 934109409 958605138 472587534 908232523 922145905 941951365 620437310 969828873 403501761 734282784 581922702 661807508 411716768 525879457 748126661 875146954 999065294 999813669 385844113 728122095 118216420 901600167 408503765 785744134 391355821 564154721 903095459 976099104 987990352 989015688 787788860 977150488 857985504 975594536 584749685 711118825 793490110 911779344 416452814 701739270 931170550 987871617 888842568 931400246 790230986 839619885 314702395 410675286 184468888 885115303 834771006 987342031 918674091 976001286 220057594 994850625 448367371 978492674 706873185 798202098 192005109 389625039 953824725 980289792 277209556 694555451 222750004 502248064 821463559 849014949 728842905 929984726 64754105 408698068 791727069 900759675 639882368 765621458 829879092 915339019 550714631 626228890 982778619 999065182 514052197 956013539 687842718 802162782 953649756 988639685 475005978 700758906 733016349 795108080 562684768 841946674 725679483 751964741 427726316 462133082 921594932 958288371 562865767 844256148 668241959 717715926 221183816 700261847 983444519 995306136 454052512 476722061 888730176 953951753 404666546 624662087 206165324 396473070 561417690 595593516 900517008 975738763 616445723 683502295 257607733 973582091 977078193 998004271 945298959 997048616 542955577 781559879 995940363 998447151 721704422 770380042 210623278 235773543 70821066 620080564 3237189 929426316 546416927 900558104 801812497 844939185 319864187 987940116 216035496 251704096 973974578 984343142 840869796 893638602 276567875 824704315 631563895 952697263 297231605 392045234 804625744 825394947 848462777 855932024 496435774 994941434 991397488 994273993 780844814 816957268 839977782 874108247 105008495 976109971 49072691 875992192 994581420 996986045 783401250 796383407 538754559 595137328 504677298 945926494 219589080 428497515 968377072 974922896 28884302 828800788 729452603 949177037 525208379 675205172 447712602 830087133 210680873 351302410 111042889 600293677 915228765 997702285 446562381 893628327 485858366 637254664 697189398 847625009 116365028 330008338 561445292 681286619 437232325 501127525 699493057 932483894 376566152 407392632 622705758 669029455 442879364 900885776 771873022 883692309 16090183 728271997 714285371 993002428 898096357 973066907 295647839 728051232 873042010 962652190 745870265 818495318 240221551 980953490 944865999 984417538 844503608 899443077 911163378 917103961 78801307 850017321 38816143 257976396 193105382 437832972 603607765 716151450 562340539 777400133 481458077 587633439 806437705 884579305 132046689 453937404 472297430 956328159 219705972 527899015 981184555 997404258 454735158 847792685 239479333 478243166 411891689 572956247 120989332 133806508 803797737 845284721 657533397 817685733 936641483 968277261 457879786 869840566 106588527 706960506 80741342 932191290 901707252 974901368 132425295 901102579 21345829 806839082 933597020 954003051 876601681 916353593 737751395 760070667 671015644 734543587 813931483 844004971 342838896 376894025 813885569 859659338 537588979 902888943 69100691 623604939 368758629 795886751 182892311 559869960 225520479 751267959 470318635 470332000 989015986 990130320 788115124 796923791 401567634 943132091 262766630 653663676 666524081 887105534 757390605 800735503 326516491 909158002 777997743 993951045 910220266 955285842 22784007 175507476 908485190 996292387 38828684 634207544 976678619 998257411 175558775 737361028 95949909 685602042 376086410 646148124 710139510 974560897 27491293 126640596 670699265 806751687 583711261 985444682 309556152 887603580 957927035 988800517 310351411 999914538 201994450 502056681 458721262 796389165 311442758 450314216 437373841 899085845 495790266 507184520 262585009 314030518 437988738 453080276 961386930 990326169 985799104 993336382 208072873 678067072 767395290 952336379 186954794 270581071 303893026 472306583 963181921 983760107 122831317 739418605 7426545 861277710 972922661 991411370 289825725 622588722 596900059 940381935 597105370 624029929 93433675 536122468 672794607 984465300 203097409 687568254 713090636 767983470 443015866 772851815 552770658 761458295 368172004 459585556 103441564 638346920 782534969 792127402 317242156 642733420 706644272 764623909 144221797 377387227 174165620 179301971 300253750 436397866 776979323 850817450 329088268 381028087 619683158 864954340 602738309 785202238 35996704 385920332 207001487 714989673 409795110 672074769 89423148 152014739 275216044 599258715 233400437 702558169 700355614 845450893 437736757 476946149 544047483 950445862 293989075 465227110 459332594 581572066 437995783 490783808 738269886 926370415 18702081 841724821 83223183 184935573 376470760 858102019 545367245 832755823 726531839 779742686 355274025 522893391 105050614 169098012 847662035 936671850 221351307 659101887 370746894 733757741 207668207 804380389 255538351 842950085 429752600 568445232 717669848 868179560 612088551 881833049 790205540 826783388 155464283 626882128 447272457 529179665 513627353 554434839 625273418 952224971 334950154 575694318 703430527 890051170 829754291 900603955 110013324 582026641 552692127 722629951 204306359 656401723 289973349 691688267 978544600 982752469 332511058 504378652 828832844 856260286 90666822 570102357 851666478 999441938 436064773 715461420 451494968 750758715 686715722 918432297 244567785 659710982 258016539 396472975 583529361 821769318 721101459 722922946 63212187 130594130 19600442 320472758 717217994 928150639 404096025 533768894 661346116 780592577 904800357 914038893 784284809 864691847 78543060 941715536 151003790 696717828 257857408 858173002 964611381 979853529 757067913 817759783 390395940 700390800 991929331 996326685 372687010 561857047 658170003 905795802 623611821 842563105 594124178 820733254 117978845 636683917 506348323 850786427 827741329 931032452 452895453 811389469 493782964 866078090 432279042 558253066 855624695 975064269 765389893 828863467 164828013 625991507 39740057 992350395 173142249 602649255 261580379 891661153 396511250 747074194 938235863 997888408 256392179 683447011 672562339 836556088 177231845 906709182 43686195 516204405 60335228 385190289 608051889 749350102 492520228 717514690 639548774 803873241 630801676 817260422 538772108 668075935 15418083 267989068 212261714 749799762 720078508 956957934 355771132 628714739 562371 875170856 568192172 667916427 386544728 532378390 831470425 964761104 866412251 891163102 166217903 299885635 82309055 168379774 292457164 477363472 411125477 635809444 415575176 480840977 485027604 828157772 965816401 999406231 468453695 581521310 444535601 958714968 933951333 944708011 371815537 539416904 861869391 883280353 700461750 864007193 661491081 984783724 275255665 625022566 403064136 957269640 838144259 842496149 179537910 371006707 80261477 228255027 100829214 181213022 888146744 892619259 413591916 653206937 824213795 936035764 245584052 868258199 994429733 998984493 534356737 562049162 472815114 637673941 612791279 691773870 57255035 654636907 920556662 996676518 919357204 955634979 200162045 677000713 579497935 640397807 714390370 966199573 463079383 524791775 597440348 829553997 653416099 654912252 553206756 881388490 401903695 496635793 171256549 273378188 714730217 971413154 786923318 929774206 328992309 981485120 876846165 877200209 871773440 928490153 694407913 815789019 166904241 587519149 91759939 99938737 11314284 187501043 16022745 975420160 406023838 528794947 159861339 652796134 164529325 477628519 587407174 778739049 858542456 951169955 807309747 876411874 485463791 703857666 20719122 786019157 677551837 923076663 883615763 973543941 724652238 980161977 143314984 751267428 732458541 861732380 325862626 659651785 631903394 716900144 563171886 860439550 706796045 931924903 243110560 246023410 802995075 875407610 986166118 996475085 625863419 903328147 864837529 971000354 153254686 835114932 260709437 297288587 658709717 851263232 983241590 995197052 291881221 928514267 493810143 617066987 224225528 857849461 79427238 909145373 933575991 945794595 326286477 679161626 431207365 523084079 81327492 126081592 937728452 962764883 312866177 521539207 391552011 601723782 814138851 989621137 574581438 905499254 335885054 827639525 890483823 890844857 112640528 930796848 201802672 299290123 324231194 821131554 379319797 444313431 519662246 696733682 532700744 953532183 905477304 927359973 28212337 649628108 5249065 425561335 749539092 858376113 253583880 691138094 14549424 172159853 340558377 876523926 427564385 985899067 687880808 914989970 914588737 930381102 734220391 876403085 803913652 839340722 555287016 898490988 382895727 546436713 16766536 748329119 596541831 853005713 120516648 803315003 835907215 906292356 527988905 846007704 326478003 342769921 8907298 248814007 740548262 919173517 415968990 452139528 475947352 922470307 231065685 236319972 884109812 988270757 110647269 924998319 372547109 738579871 372184635 379069499 133562689 713589456 188272713 593498150 38324401 476886417 279622040 343196583 190160524 439237740 735511355 795049981 450723196 817794115 876554224 914991919 458811717 756753478 985617624 985894692 56557463 156808076 983034017 986906979 982385388 999589885 579959270 742759985 144276462 662794633 593190719 901275674 884440206 910442363 522072140 956792714 232553025 485971685 446734609 800240698 173382052 250821728 11116795 457170591 783382642 873945019 472873334 511234005 153889485 448403781 922410960 950481458 707668773 947558465 393509093 918485963 194547485 457832213 548019596 941326602 220893851 906727062 197221776 610687514 186270197 343866871 872238398 897733198 852429758 914695642 110741761 627699233 22423137 126383281 778966190 816151374 989921369 997055484 67567827 362603350 854837806 915717315 815899698 826195691 839229786 992601560 813724777 855120534 980045054 993806028 650813129 885420873 647769277 650574096 122044622 375413582 120162188 591669561 85216120 662497396 460354963 723755126 21037748 38438308 249045100 284371360 367159531 553274206 520806530 800139111 895748473 930115057 177213969 583644628 515732030 516615273 134213924 240181557 167304708 297677281 18186730 303433525 320611922 589816185 26531909 757389472 29436793 987212382 295502444 732288528 225771771 252059774 534841107 908997643 934044502 968456297 379647979 553193809 479612653 850752495 702664937 764577494 552519630 860831077 153711984 624653298 148075358 347924842 323615963 858620487 199112425 521275445 235380799 257982062 625754186 793899015 687194767 848152482 660050188 749936677 839674178 848106019 409908200 419218041 785591226 810253109 86229184 820541912 231627776 429105988 534548392 794723376 685754715 918623760 157054784 861462445 302083970 915555301 383796807 999237612 897044168 992709470 305177750 500045484 555820577 569840841 292216044 833422230 315601033 858569255 7731788 662478117 267733120 596419493 544258569 867827522 511593749 703150495 114256501 671374641 384637778 724905495 245502317 787176240 342031136 846998191 781722537 810917253 146421993 237678022 699676240 743235659 83449416 380375071 611600339 867011391 276839331 460363583 430843030 469017993 851498523 901639207 236741904 749409877 359997210 424788698 354009014 687008379 46629109 510831507 103785705 244223493 469065201 551489663 636787346 706538021 114874603 808275766 622148094 668007251 327373070 346855657 655348760 695408601 528365382 987836152 305644016 450469147 145126247 353201407 914696896 938767243 830848955 882085559 298138061 365546670 135358695 733820660 367581366 825127300 656542218 993069470 574923773 748374951 604744142 976451418 678604041 834635124 863978444 913585450 885563442 997359373 707768230 950104971 532082427 968790603 351806032 895917941 213515055 294663955 295800627 887469198 291535504 295223731 838537770 855621577 246140751 332480849 361348722 761896380 28948767 940184051 356970320 558080097 553205764 789222921 643313659 909361657 313232094 823820016 699609659 977607690 673300283 844524252 714994251 961968611 139819640 554328726 975684153 991142500 172110960 925930675 436855707 920093710 8441985 974847559 714080504 968194503 423606438 752396390 508467610 545712660 259299566 893118199 79449182 991218367 65080107 301821828 130472487 804748904 48339015 932389179 949817428 958870448 8849523 54394746 117049380 785320070 172495678 718806835 269098408 407635509 600036598 739346766 442772874 977840078 200522095 739251758 260325464 678431606 685803975 754286414 829030626 909983098 543258397 905478139 227977003 277522881 407935101 992661350 431572338 793321991 568344147 738663275 655534052 841259931 187712280 765297197 83930384 513963578 184660853 818359901 373991887 570026510 283147272 759888315 134207162 892452322 593023444 603477808 357497814 702293104 998551153 999229874 388768645 654701068 509137346 746388627 211824220 874175490 59994579 370826136 195992447 591851836 16718986 609853671 510136148 634905429 284874787 629750512 984659957 998050732 970037686 977936646 583366525 833560635 112090931 343386891 151127147 583911280 632607125 787904949 246167869 411092505 738277738 876207615 851320381 856204478 981717532 987878526 578952436 850881353 804483326 909624393 952497400 955323936 150598950 525026688 155765612 227225790 877639940 987646049 495989 807257515 455643922 591596997 288229796 555876254 725283232 842110990 699495610 745701824 866139157 888205069 803477591 808809929 221582890 276589989 937921983 959619655 367576074 788431805 459683402 969058157 425267092 504072370 161520073 863369922 498840849 858962598 432580981 615061161 882262347 947734932 563601858 821490182 982287127 986040932 88774679 452922744 692804126 911811879 502149026 691935995 794541605 955301713 569494451 978464048 643586958 673299387 110289708 200690768 521855246 575428687 222007555 691538440 112282364 375681170 955642774 990303495 209387505 933884314 494717700 575025250 660885018 843800841 418789461 512267167 248331097 755782643 74576527 642456225 839038630 850759449 289982135 526566271 944535845 949315387 639946427 939728007 149489691 397353358 51745927 943221036 533624733 908253268 797387471 987211006 304818443 799819528 558226015 834369503 307880249 961336396 300349338 691726633 760612625 946752201 680526499 826454463 439926507 465356322 659731290 942069043 526177259 553109223 439380984 487014832 185378156 428607898 148909334 565368654 80605602 949579108 841890611 933133253 32342659 910954270 143528875 154885089 993144470 995965803 393140799 883784252 527441084 628012514 410109100 955199202 839826816 956368571 940330845 991098601 504126203 522860606 706919579 953987018 145519765 819216368 119324802 720686923 16876313 614664619 805134777 816306429 508141433 628941554 301755313 851190946 57558325 516831361 209584301 653783025 282024652 539606399 693928026 707231242 166969315 219193063 49624768 91507102 49297784 171224798 151312211 653372517 953164896 982304287 849341177 850846181 388156616 608795448 599960396 725651932 741623308 808708120 64452079 466699386 611674423 715182415 853483593 894843201 988760372 993043023 477238934 867786724 618512122 855827330 2673077 850428321 485852825 754549258 879389049 974841460 20818438 133728059 660261818 672723638 242640831 854097433 443283304 726308659 880468150 970455483 321907453 385984370 824580497 926404489 453796949 718418254 263641313 385387379 142607525 650433473 131676956 256403968 78188990 448491155 3323685 406251816 438035227 743739050 84902630 91363763 220207880 416225251 769405717 812094867 589439114 841808578 963510130 996419427 534334546 836824645 476842746 537932432 632035478 960732945 444872650 494229915 442398136 506832899 535503465 682948007 966590081 994951933 727673658 852508485 599459480 854095681 693630413 799259592 785385294 894291106 924096547 952197645 43223385 330548493 468138581 534283027 382481882 545939146 774058277 938194137 744885031 897661533 805482149 995161724 951453316 976733652 230497556 882010871 446481023 791519838 417648975 429123784 160369604 943214092 501736124 947841162 870164244 913204789 231201689 374812311 326946003 726903368 196250370 654283015 398462429 558820683 278794919 722618656 302760516 381780348 801884063 893890483 796735126 811761397 545201184 758129495 340628878 637320471 442107808 552801790 227515450 593530992 127269968 232549129 851643889 967213356 589652630 632524081 869805006 938180500 865765703 875410803 441256700 769561820 373148678 868926993 442483430 610774257 927902764 982163524 493628299 682378145 103439880 540192504 191273587 622862512 925335767 974112071 627342983 819338272 429234008 721943608 321729005 372586185 449785026 685257047 684935083 702025993 743997260 815441694 524840098 900540006 499040661 616418782 633126309 797689471 134675317 877762222 467328898 823978639 849953988 927486659 245480058 738401314 619949144 639990458 953801539 977054230 454505585 574984850 150432389 312220724 778366687 883092662 691614239 757340345 205200392 475890169 692072543 805401263 784224860 789365583 637294091 701491223 97390201 804017161 614819003 705087648 893849625 894221110 786376912 947319393 647690025 768629808 690747365 916754663 103507751 414758901 172625615 810770439 605271223 913949614 292581936 376343934 946005291 995121942 392601585 735146988 980912591 987943048 379864567 717271769 275910350 690842219 774181013 806341903 404086974 597998953 674722144 821010344 611463376 736785930 593358045 945205794 835878124 886453390 498275242 516351955 164176531 477916638 693474513 727567395 555921518 988938048 670512709 768300381 338739198 367234380 777933213 923738095 190369139 686700612 971481268 982932514 382674575 604242066 75681418 179548799 63695653 927797173 211643015 565632996 670468614 837740459 982819590 998748870 346987293 357739304 125280981 221446378 187827080 897329715 34310963 575468848 363087788 909169730 952758535 980692097 408083865 653667438 129751256 252660550 497714216 740128761 930868869 930961936 789109260 830829749 742789914 848586761 700213851 884612111 572905161 929762978 639278189 881740705 692244451 925826144 501978825 524346222 751716537 830212469 190558982 443592645 286497732 374905375 790643813 863908811 507551820 981571008 307552299 947404841 422431301 754170755 576723111 981762421 297967208 387421101 183968749 943689646 456753650 742570348 459388865 665642590 565166007 715210318 53441350 567165909 870467641 953956376 666438479 746799233 592792399 596668258 923407790 947588788 771984221 985152335 128978662 331620892 677431306 973661005 599388939 618416163 977314871 986068586 562948219 655867294 25786117 863213043 255770672 529933054 404826337 620677650 797353358 950129772 485586967 623576512 995511362 998768092 908664141 969712107 252803081 804806469 546205233 741878936 163021991 696683190 160120257 766885428 165343228 690566777 209460903 347268917 695758470 832079188 351990933 470503048 953539496 980451355 649987856 935975210 78856140 856515635 677238249 969250117 88551419 460664907 699327158 879178779 992633031 995369399 549507676 835586891 785776042 800940936 989467874 993209602 941228142 979118966 994623281 996345568 42709043 554640777 283485360 793746100 593283879 748791416 580885409 824312716 933669113 982541142 351480249 826641230 91977388 97079232 699299353 779740536 77725863 332955849 24945726 254442441 192851333 490755316 601309314 837553316 510802160 840396516 78422328 615875696 949133595 990878930 155841392 750448601 156615805 981965037 216799510 430224850 782374595 970288333 531638328 648607498 110934705 295806132 280151389 341509854 382217796 493673517 315300265 559317639 612448113 727337440 206634235 512356499 851848192 947545992 993425562 996233846 556832598 999223363 659502587 740912359 874420262 933220147 558247381 978023619 393838862 766376371 880192826 893200961 529771008 852444273 897253041 977092935 52930674 845571370 969319006 988817903 644675712 794905833 606054407 630112739 309630951 400957114 165884265 275931223 412800797 846047721 874029733 968236184 812507048 877033608 669984717 782796388 216713314 986607181 149880436 683917866 984618533 988637607 576434279 668902916 381915710 628418520 372773202 378417441 553231676 784616703 469609981 616181973 109121090 580894629 18667736 812801864 585968769 749004721 254619225 491464419 748458426 942268111 163351898 663751859 446468551 978081047 664032514 683117954 687089878 709392701 46025178 416814364 848825864 911186623 571109964 639424543 52732169 308100600 932834476 942722004 438028446 547897358 742875858 956908206 640618808 885951647 816391485 927879143 519164628 940409102 414170239 460400270 552118847 654149991 872987649 951126314 716981998 845072615 27621228 275435215 586150174 992930409 634190308 724492685 893229529 949205847 214824287 667943093 263510963 993038819 863710221 918428807 44707652 155768016 572013421 593912666 806085278 844717763 505984475 688725548 974715155 997758672 418011215 742070748 632002412 878863585 322576221 694209483 841104675 944291561 691679412 945079330 345899686 897612165 795381962 964784777 984598029 984607759 121160582 613593661 544660858 738342605 923976967 998146442 702343291 820233561 776822715 958086944 220282905 573983127 538947750 888015707 851996635 986689769 751568575 793388438 780219075 914513878 699550351 738815984 46719931 956926993 482381924 511150425 172053644 644555432 25854609 240660276 572150791 861688548 753957820 792250691 865563929 878502103 93962868 291088008 301340817 936331920 932704354 975999969 54526265 453551244 332138084 766135622 379376165 443602752 734857848 913971470 194238992 789817814 421710520 618498827 997533683 998263231 596478898 885194049 133367012 748637609 483515901 981831535 270139314 679751339 654595 227333697 56696340 549032699 339919074 598838344 854974994 925635358 285951549 610108023 425872396 749652982 787277348 961580509 669697957 773048537 162508657 791179677 262610793 774985071 396515332 924863897 300860370 516158175 671860803 945943623 217164490 653035294 634446791 662444077 349431061 559798106 982460306 984778579 426980303 685652296 581461558 598009460 839903311 873826507 893901478 906845543 197871749 848227711 806202069 832688102 409435681 932918104 956020751 981406539 288412130 725804754 387715745 715988406 353450731 414604814 616885642 918860250 682051577 853038571 506505301 640833765 897572179 973224746 467010832 921617327 213963059 713425844 60972106 894248368 68880071 874177412 315011867 400923199 383972302 555097574 746233291 781270840 517252731 746920188 961754187 990969214 783704091 881281743 966103281 974142214 917595987 944259964 680510148 905932577 345152316 819931758 128892721 779348497 110066723 979486906 320508259 535068339 2442092 461289867 148384072 529607333 952746585 952910132 793121070 936435059 396384914 540988932 722671939 914245076 517144230 679539815 11702463 207124674 361434768 775304633 787250560 866343022 898899669 909063427 394543015 414761958 72412575 784492340 721866218 949628911 395336473 856062796 891706844 930825848 718532978 978371148 767517706 893435160 168978311 313782486 830003755 995972548 196900147 866281387 425358515 638489380 265305655 439110277 253332566 713487093 550875990 781509657 224194903 883522688 102571816 698107699 362842599 722315060 440706471 943910847 818325885 841493851 594646332 620688918 678071107 867787018 515171548 816765116 529395870 688252506 806774359 960819639 855091624 975959402 208597635 214663113 554857032 804264947 623778364 834405956 862508013 866722901 537554109 794976377 518093722 939026726 824171387 901921765 838746609 847202436 162743236 744856959 547478519 723007736 873571407 937779163 816413424 891695405 516339628 663431211 955121206 962029860 496561107 835535904 86659435 700288888 126757298 345610302 227229009 771290416 915100961 916949540 657760886 734795244 929006163 985829769 305526787 686010090 833217841 920089402 825316013 908890035 218924895 764047782 961125984 983291474 691122570 758051560 139753738 788122264 719100021 826999689 426233057 701127570 482426730 974657356 617200478 757170114 192340828 426820152 384099894 497462800 714291351 852085692 611200495 953901632 885532865 944358919 304074184 661000187 119837498 190810647 965004192 974270470 104781245 642304220 818960743 927971623 60461932 470969233 141218177 181559075 980508443 988444749 188625123 346811850 858074603 873042681 335291137 505458846 165635336 436989852 187090580 953164477 742982348 956868971 866951211 968659604 350973887 761057809 951313205 996508688 662256859 779462261 652915444 896815042 982862425 983726576 644461251 821785343 487589559 623746207 670535021 688952949 774488159 786113507 97020834 832955873 153620536 763119560 702308693 791184914 828870240 933659468 574543774 946650580 954407810 969208991 825947678 979692481 784390889 854631610 223565039 560941138 299255651 623200115 660671880 832509151 432393825 792031117 242931670 866910748 574060547 830450361 192512852 415717723 917180653 970499363 92787841 277892597 620728520 917346281 663823697 920770246 196382035 486568579 210811517 507516646 844493045 991738894 728637714 748915203 783146500 931698317 512082225 741556049 904680170 936938079 518869136 615189645 660988358 671487830 682375488 820514523 616662007 620820001 989577657 991984913 907897702 915055702 52956607 475741455 725960044 896145865 242879443 950546972 213262430 284822372 915334836 939975125 655624915 759542916 721521339 946650869 496071860 720319447 564266155 822651547 118975887 460366860 35722130 136326498 904560672 986436599 345866541 744604506 389867086 773987585 89920206 287221725 532334674 754482869 188216372 261331298 279120055 732888787 189520278 605266529 516392577 762689673 240109836 409987790 639720635 993540168 565135177 903287244 398735034 896935018 840577993 845010504 876628601 913192349 732268404 737022054 190419817 394144379 293141501 703856861 627686141 631996949 554288457 859824217 886187442 896760520 340945685 423387218 142539418 956755488 742050316 892494855 336637211 481576406 2604700 789372873 590053280 951091522 441340594 558646782 542530677 578914229 261397652 901509288 813697371 890990949 152060513 592951499 328732490 382178146 97659361 565118358 582545988 939906789 752948565 974251572 757683095 856949488 485551324 527457388 70923418 71013030 538631473 922268160 479713108 716280601 661900221 980712539 972781937 990280153 98929013 840946488 218335296 919696181 109071194 622764222 398411503 633859447 530780093 821846036 987685787 991178285 898418450 918757009 281714731 352306516 328186345 866850403 333870941 737605057 993343812 993583799 13513711 530885842 289229347 574732452 814903179 880110673 928585281 938118738 119769241 532547237 171866141 824481660 421959273 880109551 903558345 937119673 225552784 330203867 771374590 843969524 400838227 403392751 29524913 242189871 252613832 520581950 387515720 885361949 190858233 533966192 550616285 639871674 783080411 950553850 670263018 743398614 903743251 946624675 807620472 959865625 893506288 928548037 318963103 370309272 507816234 805713229 538532925 825576772 598505169 792728937 324134156 845771637 568544927 796584837 256551385 913510344 20650569 487063420 643680426 686080594 890593904 929226539 790703883 964191898 299113063 386951533 993517790 998078383 415978438 961925892 560306708 614593758 113068007 273001385 73849423 430781715 267558561 942147110 660555222 838479699 642129661 975225870 331288837 742376110 686153971 788054787 930546232 992105838 445366158 899762885 885731480 919971200 567775723 897205882 305719631 900330850 263267056 865901151 770066524 881448727 391130484 481536654 217251891 509948117 200123244 939219795 137514805 250045026 552719320 726358802 995592302 996187426 513346202 990127431 730225971 769309034 640738914 913721908 672204580 794356105 778264200 985997578 747573181 760046137 577687320 627204866 420676762 590302658 802893872 966088605 739316983 897852026 943906680 992718146 101792435 155079045 406695181 517601997 406684320 837609202 18723537 777443007 386653707 987430874 380729001 417977467 851117443 995774400 626065265 818845310 728286288 984968075 719529769 844713445 536448787 833102967 694944081 982160283 247255441 272848828 872225564 943766264 300347221 968217599 23020413 480802995 592051256 911879862 222581281 624210308 977899533 985262290 241746140 246070324 475449662 665599740 227336683 467560421 47849469 935622575 725304159 883546091 574944416 815077721 175386054 444044203 333641075 676291232 619173304 850950973 448011259 674803726 528291987 554033230 782182087 936294023 195336857 578971536 902026373 909880807 292195678 823777679 919718116 919729853 318929024 470759851 92104493 984829415 275552711 739783932 524324015 562081291 720657811 968381073 653152626 884375462 256537389 948484387 682665117 825923227 511019147 601729125 253254647 732046030 951366930 987235710 618236771 642683792 762320791 826440303 980139925 992007828 756528584 930100393 192144632 249805593 799575498 804405829 410720466 999386782 634571474 770025593 20090287 309669224 83308633 206827787 49227864 585267252 403105540 860755397 899229169 921927379 634220273 876819311 412306828 696224750 829339043 893821119 161838837 518996937 848591418 858746813 582638448 810885102 432217348 510219429 61972241 332775043 579207437 837408605 31438391 177376708 740664179 843351529 126366448 228599635 79500016 393443701 792583165 810031033 77663480 386069343 481724873 807525553 844403083 932535142 253422001 922789976 366264024 839368293 655730324 908149613 826961095 914848902 153172913 412302512 731340240 931937804 511985363 626838686 452544052 786954586 773249981 845931318 488606703 688590668 965413038 983169590 400118018 780870543 828109206 887029550 899717615 948377036 935070029 971503222 549049734 690920576 945713739 971608135 723343287 911277733 280052154 630511551 720242539 749388937 677364340 940983645 356806437 864260471 774689621 882023357 810392771 850938299 534782892 936475058 789096949 810905915 745821491 978940748 239686518 916601745 383941667 787708990 17734447 784684553 659896541 999643895 288155415 771544482 688876642 696533665 675795810 804092614 263704106 326343919 247947897 380852695 827504531 873716001 583370195 790866034 92343284 532749270 278806079 653121322 313165200 380630477 196611229 198777315 574755859 642672624 935681882 967889018 246472636 728189633 283877758 908965222 908637696 951100282 416356355 905418911 512863893 890840829 979912690 989877049 146893171 602272767 718762179 772588950 585477464 660218102 47706656 477029137 769504963 847938873 687022338 962758696 109671845 465167854 972696878 980206646 991512263 996689252 858710455 962538191 511730641 843729120 137920458 859052888 432451425 863321882 609249710 918230382 786032519 924375669 563161563 800471679 602949162 928619275 763329419 995856957 514531885 575889858 327530293 909171833 713162569 832454406 264721956 344143669 180627761 328550751 972469630 996256879 427891458 506661949 418631248 485235563 449232970 606725996 50995676 672937429 245493656 709684114 886742221 946833665 328245864 826784944 752102656 954196735 738833511 851743059 875235362 983721060 56182499 489484454 866974191 971766661 951694041 994910539 516866447 611896280 251797456 667894428 810544473 859455038 525918431 559358861 557810649 684216354 111461511 305141737 587543853 864092615 413071761 666096433 164548927 249026566 697531971 751782901 618601596 845303655 404143484 788678434 76039109 304199068 285420112 897114362 575460086 890214862 164520910 840027265 961415118 997867478 177895939 216572838 633656485 713436945 973827536 984691035 294671279 295075523 165866174 956144539 741405255 825019541 944572074 993499311 321943986 439242491 946106931 951115705 797278807 938196380 284861247 732422497 629941399 871628519 687384851 913609169 11251634 46347942 924836854 950866779 905022929 983731561 242053553 463951883 577821978 864744562 873997056 904333129 959315147 971958593 630244635 812949841 247177475 247995379 161835889 821615057 20540850 269080701 960069980 978067367 451139474 753921831 593355009 626190017 492898437 761346966 870507554 892878539 58121995 186521801 663832624 713673658 41469760 892156802 7639185 672847714 166842717 971751416 826382016 882987142 823974032 954609485 41243733 494083770 256323261 630679879 473038515 568807552 807362428 821451412 446170871 685488821 881908034 917534107 955380439 960982925 269216641 547998576 953004139 969316043 280411365 772563897 888106535 898694482 277604948 483893757 660466428 702365454 658298773 836252866 988843214 992975520 764716715 952884938 992121350 998499936 936058781 987513364 264029214 266907186 527896375 539178580 249954804 546370931 676890653 795552923 813190573 985009517 250765935 478987075 180370749 205469204 1376045 935168881 678912399 805891903 189106919 824948014 122110770 535099994 952471189 988728173 560979768 936171424 651568517 683804017 568529634 585907274 73918994 787843637 872591427 874253923 486056063 537311371 904373978 908532805 493221551 664263303 226535330 335338928 826968443 866124027 458869500 697972230 814785866 876106044 916291472 921054563 872480478 926435181 863611312 987348701 376651763 546502318 509824392 784607051 385913460 916068899 59662828 701351559 97099924 165699593 266740764 513418314 527809672 568715261 958101062 990804827 986079087 991453764 429716246 622578892 219830403 701985042 1248910 421452218 11304433 565881522 963360607 983277763 441719296 597440671 949820171 986231451 572936785 652150849 79234703 729973733 731105971 913191712 231313448 360592866 388379967 691611551 306294034 591780020 421536619 449657282 588000350 820881266 612022387 625673921 538864656 843469168 472223382 945316213 997066730 997072860 545518639 641588759 177515933 874203812 975322459 986733319 637982220 761174493 807689832 908053204 400293478 681886802 515422313 554473925 360222985 478153668 944735667 995207549 937089464 984769404 854725331 899165583 958160988 983061844 810628162 917416878 879304481 952338985 404964705 872277126 904334693 983017134 47282658 544836266 651580916 916246669 207158491 769431814 566809731 956772903 771873294 938978774 459090478 763250175 201857458 417248181 255934224 458198724 278862372 630433993 819984159 971055844 980614593 997238166 796489845 803586872 128279803 751937487 102979088 802227004 976688946 987851773 465017787 833810232 181592042 660332576 213316455 502434660 471144298 586568976 792812885 835123102 127936350 569565757 700572654 784796334 310836246 917460610 333799611 659988103 501564912 764923670 580925155 725278150 514809410 635106622 78240341 102904028 211427710 912313909 704705964 978902814 10689371 537768855 862564179 954392332 339800818 784853160 545344504 809604260 688710898 832323307 26268301 395270472 651060952 771273697 724018962 940499838 658109701 982064429 129914279 209885725 160248365 273669538 337024267 894824098 240054377 936599915 850652068 863432125 591450430 657394183 954413835 978237643 312747545 606102921 265713650 601127226 683957860 915191771 841773220 948851823 628767379 689804953 706978240 792762413 493619387 563204014 274206812 515370123 839322592 877503120 31911002 169838773 574935600 689815277 214436735 412240874 565855737 588996706 612031982 677512594 53002126 869510676 333408058 614862847 112983827 796860885 365047535 866573582 334475011 710899791 948248344 975060530 99653481 115307584 505435212 614890307 845050112 881588673 961613685 981194405 761499983 799176202 193187778 199217155 753018349 816420782 463003009 803850972 803642691 892532407 599394426 881818850 196979287 815560033 500459261 964431254 407454881 723913246 81737222 754146802 575030672 619022075 939067542 965738159 33581534 44005583 152841957 599296178 950857413 981034791 32051007 163932140 897885338 936424859 250084766 430312468 682317504 977794830 255306724 388498932 276244198 302703306 329655014 450486908 791354906 880663695 914649446 979952016 198536792 561141728 179618236 424881183 580403284 774166220 730501458 964033465 866166310 905902478 200078334 828744778 434396450 755117928 575744470 767197305 961906895 965808837 127287209 279233834 306643785 360505183 823170361 841180792 435258698 554840430 643246930 938983364 713125817 732490770 103094294 108229987 833033327 888141762 966642630 996595350 248893642 510207328 600709086 832232333 137353127 310341723 412068293 420710759 161140639 429852757 850617240 923200412 610355778 657687409 452530729 657593098 388646761 739044304 723942448 730821558 397120112 504328280 837905303 982262279 525749164 744017511 943119794 949702253 670451511 959109393 862143402 948545569 835630271 980014277 979468167 997079276 611189792 897602312 545075022 599012268 145925946 342952104 693851778 850183555 977284908 985167723 209974521 968119624 517466550 954224038 700981371 820986991 188035766 552962420 622214583 944905696 653386354 875527155 624973881 710133901 130100629 776610634 561739154 871392491 803919135 950282762 48735604 308335712 646615814 737166420 482122846 763010257 945326056 983329763 653534806 728496345 818211347 850727948 723010331 878068706 288050078 826945415 800194078 826864109 259338433 463241640 25010031 823092423 108242559 599671836 960674304 972599962 742519186 927696539 963064603 992373399 353336244 401890666 624082663 779520241 958526829 973447294 717656152 837804996 774052404 822358561 256223456 721339993 646666636 647503651 195116174 506444630 503746760 793744539 165569447 595312825 369108663 527890604 989626915 998960953 44812859 742133647 279497628 506301485 229684699 830503481 530590056 818740445 879746233 983144263 382298403 386024816 958925686 980693416 655972060 944453236 195365869 572677321 325068371 450911099 355217932 810493943 595665423 623201553 543112224 705295097 579993047 701838294 565899855 740452838 409822684 506088866 817803916 993432023 797661847 899136306 689365010 702776705 27460035 351716132 882959388 976596130 862213812 899669330 315257532 713961602 631934040 872758180 333357249 935158226 285488154 430276790 186293067 399516014 13150361 613760223 13781775 397949632 588700452 701316266 216582825 534351331 589550721 607567825 222577549 610516783 145311295 374582392 558602895 774706041 550201025 937980135 400426460 440868798 728812413 813793310 199842795 695174106 366208844 961296837 583773449 977850133 466915569 710878614 160276606 772535088 415881091 857836419 804385376 857479191 682429994 952048228 566054664 650359209 585962677 691340683 373430244 895473656 44144432 536092027 323967275 517378982 367856215 787524926 842910216 937092665 54962836 115192840 835682161 996514865 911499217 993074348 487849827 686817903 168425433 583709119 999595195 999743044 977714088 984530121 747444459 883380572 790380898 857130914 51982199 367600592 784914325 940265626 554569469 718390873 544731207 576161650 823734165 966245571 756980948 983034954 564551873 989541139 698885428 886414717 815433683 980259065 929201663 992315995 922112597 971797563 996173048 999723579 955566138 986211927 915356341 991909800 712366005 721412653 43331509 357504044 302708603 666463719 621471065 691471186 504321422 833135828 826228571 937408736 532403187 978559701 808351200 973245386 303298595 646542699 122527868 885783143 580951362 657555497 839567449 941842969 868115548 945009487 783252883 803124557 404063645 893151579 641287390 850320581 333941372 406817723 551871805 764053841 619509993 646415574 253870068 887166350 763978397 889650401 536185137 658526312 704861263 980649892 771415119 879203630 102587948 416226486 180803763 224152345 463482894 792344232 465924167 629880083 437889241 677982876 482453361 496933242 746781646 967615974 212587281 740122649 135756598 354583725 687402735 987690188 634259299 762704848 331099905 768452621 501403050 644265825 121881492 474534352 130162549 794481919 214017263 896052550 809133597 977684677 682317545 951224194 544990138 652443970 349792651 620412151 571432167 961020037 943014994 951463316 782245136 826484568 254393799 775746195 549549868 554535526 780601442 821473162 828106629 841735527 502513823 853922216 615218581 800816124 105112370 490585173 136157307 990771310 572072098 961283970 986741396 994446920 174838650 955628654 985847568 987250756 406099682 978300991 58320546 527043934 201950161 972345244 41059084 341397356 266163892 587817993 230542895 453239724 854565388 988999187 952082671 954381235 836690671 883327988 500673063 553605391 11887823 247723498 394597481 677175846 340611750 624277419 677207560 994462951 86799668 435412241 713759898 750292349 888878381 988581312 826450791 983367706 505747189 751942672 499339010 814854482 47920655 521266640 646035699 994376806 935408039 944606357 678016564 894750397 714165006 781266729 90207368 169216719 980977018 997445163 481418624 651287250 782949268 796746758 957754416 973939322 906317222 999737114 225902646 273279322 821154594 926321721 703075189 904294247 885734592 934387421 969497692 980936466 443462683 654678294 616378609 821121580 606953499 865982325 333030080 918016247 293098425 747855987 231421640 591868343 756727409 999001019 780223611 935503201 568330142 699692766 714991407 852514050 445271041 916560184 889326683 971774024 25046113 357075088 687446343 950407394 45544842 72947415 336154521 760089076 367747649 884654898 947140327 983951893 746788213 761996523 786880312 843791619 669320101 707841878 818670345 988333636 686006674 966001010 894201159 998422949 803599826 984644711 99284552 395522351 384954909 846756838 845531977 988113972 967500829 974486864 220974905 589333546 749892507 762166724 590802790 961988548 772870305 992759644 963792948 988039398 38890279 39964861 133696149 897687639 90012455 463431644 465647960 525209329 731855401 741303139 843484223 983879944 768337693 845462487 200698418 844840131 729332299 839206074 366169670 408387151 333006852 513510112 308969664 735038558 647987340 844420008 997256428 997570617 34061434 685021527 528056258 736408113 635880216 969856250 831406195 887189086 353110742 500817364 446436601 542028546 852527378 863434023 842627487 977262267 811632543 950424260 136469334 566857293 915840064 954470276 977205668 987863681 38947769 825376065 800780588 890319825 628931516 643490903 290494206 881285892 413653955 583678286 331188704 473006914 573623895 866545520 381712164 944152633 584131480 679183001 536701165 608966672 573298174 757539278 66952942 629818309 819243392 951981575 188609347 417742100 277677614 439044803 590965451 853357307 338398345 891369306 99291979 572642572 933578542 986932682 505239840 645259023 845330193 902532333 119260916 177310625 240014778 812721045 284496650 399584127 375852342 840604586 635736055 997756894 631410958 811165972 20182272 732817224 946965007 970491991 499705068 502537087 208355371 470102204 863167868 888462131 835855803 976881582 974055351 978097054 386169738 740582142 522762427 791164022 438339718 663576288 730677664 747881929 216379245 412500789 557868957 695013999 640271249 938543412 867902323 970155708 516080716 937294694 805603013 916171589 579765162 979876376 31945344 757842184 896454368 974517423 739832046 797928481 176359217 957815010 245181719 546659739 310428337 340503560 48257765 398400197 861646483 882176175 449656243 526252541 382754485 605203358 45971526 934636905 442404741 749613531 912877613 990309093 564742540 715590775 356774311 847074540 827877707 945974779 77550206 498171351 726446329 751996357 111004905 967203703 70586350 981628060 239830211 529854130 444724777 697609188 37543666 535529930 864338581 991911525 673742104 973296222 131048419 282177796 830134302 979346070 230190040 739220176 68696765 757867507 789705845 852304417 611211331 706584736 331990462 485849119 536336853 914544515 840759350 945298346 681888367 899575826 541133528 701250569 178082536 810818451 246264713 653326917 352045241 704140606 182970589 908123771 135336444 952436195 432073253 612021845 24712851 361506958 882707565 991599105 913930163 987612003 569450035 807204849 676388575 895896495 378760026 851474167 735258048 751790102 2562307 737591005 938629361 985076810 737718074 974092852 517795273 580517530 344016501 969803996 459389748 474680441 536500088 593873609 440018954 526599766 916236590 960374252 102158278 956834544 623490166 757686961 86528145 147074443 277088951 818419987 454096888 907746023 608031931 898931768 153655133 874655681 406497351 981945147 542666296 956840641 492306334 830929216 17011957 494152386 917824383 933733021 279905706 673549925 254155379 261493014 843214262 888401806 313942697 398272170 515746997 787973161 350899820 427432936 196101256 278097326 331155196 796556862 76786225 755534941 419366473 546470859 489045811 595673622 997072576 998664343 237015264 563128509 119180821 223783066 888940711 971696216 814359831 899579128 593780369 873172284 180790013 313273224 356811732 767581587 897925828 921434277 621661060 902744154 126147076 179853321 574934475 959320492 488465926 777566951 258518149 270517716 770512467 936239632 742357034 806227997 392311841 600310648 282604231 863144562 900229146 952217727 321369074 674870734 369801142 883194006 780608635 924723055 205758559 225779136 682322406 763069306 755043791 900627075 297188510 885789361 538192167 733019682 169309511 718724199 814048694 917451191 88902168 993265401 765105974 924595986 564495885 592464043 625273901 957482406 126228104 972745193 323610229 561830420 570773129 924931207 954573385 986845329 437836874 450505042 340577158 346132982 754826513 808489672 681720585 838357511 683787017 823544059 736767848 761483341 770211902 874056144 441950915 629358021 603967622 693678596 210003341 397582719 651412458 972400398 772426779 824381104 425457700 562009012 927454053 937426945 607124421 854608992 612395426 990908195 46846746 890048878 566002053 845581912 598815158 784064121 832147925 872101373 129073822 439440756 491615951 786454201 828639443 893133356 920560628 960389955 245003595 798024511 513493570 808111545 621686555 701687599 176421786 807309014 391099772 582194723 210320579 842941681 290009416 371791317 197144139 199663768 253364991 630575455 184680729 475189236 9777189 410499388 624957517 726067397 259085072 602326833 369825929 388496586 616204706 838040243 177215960 959010950 766541384 813612558 197615096 247263913 149271780 656079450 862478115 985127966 523062791 760449883 446292880 716778064 277219199 327323914 95473057 100872999 252224643 510040124 176786846 972977660 20961131 106765310 431266905 775047661 54828824 968567088 438206553 672730262 442171537 487918188 286481601 463877645 295767550 535522356 707151580 715508651 70619374 747122740 961161671 981964610 78557014 769364657 479390854 730376072 728064831 984076360 803058990 826825014 203782083 275563042 217936833 599949672 751565912 906159120 256330855 850282742 206802707 437087472 656766581 822031293 208749031 401752317 116060924 659357542 925983134 929043765 30014152 845830353 681740414 898589971 955498166 992138980 373235736 598825481 266070203 459886115 784511276 995579338 873362314 945426137 636379675 711029721 450966826 766852663 304021615 407567158 447524862 851652512 200487012 792028843 744564044 830428187 317728955 529770056 4436096 347758338 705488501 846770109 981575334 982164663 229948303 931076425 748139036 851222095 528375556 974726260 510965578 595589399 480790979 794775761 726256924 841496954 541495613 545412318 462159347 919127564 508742129 626953533 750070088 812208138 301285828 496601080 962859617 984338646 469321725 994167570 387758505 657255139 75905597 435017789 683374654 690900999 760530111 782847458 257763561 919253712 923970954 992745239 748840388 841562307 467742101 653422456 845280657 967427315 785786978 869879812 205017201 376572061 970394589 994252881 652389699 871808036 439499097 911180070 29137684 212274835 335864756 779806689 759679014 845788798 353408940 953679625 296686926 419474385 676095881 678484419 758534823 866462055 226026833 671740977 336801391 604038943 970759104 979567864 273684968 378252954 594499655 611888523 483149920 645681582 582711024 735465977 952238409 972354463 142930493 637307306 700047932 709751224 698830209 743858511 841267085 888937821 321049824 499760249 882807683 942441002 594109698 735875420 915525258 946521611 604908071 789767773 711119429 797622919 891881310 905278342 319181582 896835537 890935046 941452473 237953394 506598094 624053695 968733988 162574763 878084906 703785540 714021235 266142296 457801293 792056359 958602222 696478058 860822712 92957855 234585501 550548862 663876293 433193271 975181253 294558556 713913347 112646641 724163762 492828149 584676428 712499649 839409439 230996639 742753148 835356814 997899980 518724512 957614230 949940867 957538257 716798630 792993334 757301004 991044933 762942982 821631043 810080851 901048758 31805411 763458643 260713228 493182465 401328444 541658584 361740294 540456192 486169147 827873846 679994517 683015932 711158133 880577862 809460749 912767897 3403485 423044803 52223746 446923489 243024901 559815403 948021349 986599074 231080430 834428338 828891788 911383264 510506918 907913547 350465350 801531215 512663156 836216459 648970546 784458304 967169828 969732996 610457265 897063396 611783391 621987415 303143923 496726340 801317337 829134511 498478904 516301194 843351748 929350712 616598705 897555612 77479743 185881376 277011033 416343477 142773933 318216502 567312266 674006498 585298824 768990733 396808698 723249335 177238590 185648765 586999506 880202613 736648750 952369640 837758453 855485530 719951137 814741117 957375091 958804830 932410853 944307946 215260948 320401345 918314516 981214332 640715757 983558164 122510552 578212298 304354389 913995795 458349116 652018020 465980791 504517793 157931222 863471503 983054040 985342940 295581589 561697687 807581299 929339877 598975323 787477961 513914344 671478372 515502406 627569734 918922024 996586473 785484505 794278763 883591825 925630398 898528236 943901171 711039855 940000477 113284565 722245054 15822244 983217488 44542396 771533489 699335420 988989035 19425299 405504024 738389719 855689701 338031265 941029474 584178061 883094872 122202061 186762425 321592937 390974684 325485342 890696319 184751492 550789403 172423310 492425412 199105563 487026976 436160374 643328783 824551232 834236678 481550434 981109215 793173327 982299339 731794363 885552700 220900284 332646104 409789267 500300468 269050404 960017100 366942104 831125596 249293586 426798265 31462845 959591460 173859688 836646357 769104022 943267728 426069835 801680929 486423412 796218756 710874926 803506478 660977657 703626988 331964962 499326558 937720602 952200003 584899227 963851110 662030733 950447486 6820903 532102560 720455735 844561603 597349274 875941567 809324484 861011378 369289741 606947451 993705859 995886065 469400214 604851064 735148545 896027981 587798919 830443304 997269649 999647297 298628497 587214319 899357760 963151153 740786318 857685691 261147950 533327076 406480108 799374061 79504741 238584259 575675617 617767596 464628672 641122274 257798139 308235670 854565581 914870490 851318238 974632056 794971036 947985503 336499471 594035140 763382773 905383518 837684302 867678953 823780541 899696852 305238809 770761771 793288026 884706707 629168934 871791901 717908532 945963449 137262873 586246323 172335433 590960128 127561725 829455532 210098653 423275798 379857849 591875615 382085021 737814196 31480408 828451833 341130123 904505896 803272463 910454254 496666959 498778903 649824173 690585818 961443083 975127659 926175532 979964888 877676074 895024151 646517186 844128369 801930348 895809916 27853523 130811265 611138680 883612738 782815105 953671426 496445896 742987946 183704915 985457234 527264510 923617383 463071830 734736216 510130200 917756423 698951509 857362273 265870237 534538737 615873898 653993076 788023618 993995598 747608339 844954627 830349112 974291443 888922779 959473591 321896442 840789162 545622038 788958178 964003770 992681849 828942219 901033456 453601829 604113783 550114497 744318773 438677220 718605850 822062246 907064582 787774290 898342423 69766263 733108704 303386552 658040349 533848793 706029960 336621407 410657338 219621202 371365041 601392238 663889832 622128611 853109256 266732165 741777055 700229403 959756065 794692716 909908775 504647050 633869253 422543389 855175987 221573226 253847508 432290323 682400614 32706318 736750134 367758417 732943520 280513566 488360055 331601439 871596256 663002339 851793337 364163575 665336097 443716461 918625334 333132682 453290366 241252835 992669832 338800113 550052252 479638265 653807329 121841368 376525006 336697606 456307135 196964520 821970943 249487313 898515882 685038297 841940526 105554638 719937547 503299985 761210890 436437870 961656138 194959887 323839787 94529057 409421841 909539588 950981599 610374292 727133339 851813191 954159836 785513950 887259222 126683319 862314204 698493784 800298736 827384333 973793532 612979290 867287105 374539794 725365416 676519512 752851262 940724074 969436778 685403013 746914029 393602252 553911934 660606428 853929794 663651726 827528170 898761389 914123846 409349223 547556124 575629221 630624749 169498574 191664403 122662699 643736598 251804154 281796022 100878928 745651874 514686719 578560304 206816337 336288048 582759248 751190636 39781300 842664537 68559589 955197082 600230862 950518169 278816982 542690200 488643127 545721436 597603849 929832628 285648262 907931080 263461810 792994599 814274111 950341640 558767469 852484823 362487290 753274675 243580467 651714096 99740510 786105882 842799007 970829791 383897525 886333934 917370750 997872890 951648834 969095194 63900350 314067444 806366109 877345871 96682864 671738607 771567781 801237877 598352073 826384233 511545671 765778024 667964334 999316267 545351500 796315058 629499921 801734110 225294438 583734741 589267788 897009602 453612396 780025934 727519704 946627366 485726544 774939701 875122804 896191250 91649462 356584791 135430588 998127342 132106028 547865523 34391630 339276648 780707200 952783442 509829966 593043788 174358218 774996699 289056637 381362070 361121480 974471844 126362520 876361687 704727499 981552758 869394654 908135772 709058272 865588379 188265094 866269831 444882094 699200423 147663750 327355313 722531973 947483295 50670497 358668292 931684431 971269691 673672921 802543896 568057298 658423918 166828396 448705338 978024053 996377515 983715601 993766279 552984106 970506005 874124671 891936279 862553004 910882094 716087133 784467706 602571489 818912862 505591965 547414542 760105890 782289057 509703290 619731946 722873754 761762043 728953183 753288845 194702688 760033624 206067448 586519728 244816969 493315033 612849689 615719088 218722201 256499200 118675721 126626249 542737283 602132466 118375677 659237383 770725770 957068116 652280421 875749951 512585597 877411778 374328764 559447570 934095305 979660665 816874625 830996707 404318613 939460261 197549278 919135313 198117428 798477401 260118415 450359014 220227995 707309047 166001763 850966079 621769686 856892754 199521715 870451992 180887209 181930734 266744947 968883806 518876562 903784734 655759076 925493720 729169844 868655363 1274599 852966226 684250050 795250330 311492161 645338778 261607064 379956082 998692826 998697771 746868070 807928425 581630870 847201687 545727735 888935979 99688736 987667519 223789811 288583072 703263064 863883926 377750903 712974366 658852646 715014080 366144159 901934810 726297668 874456329 812608764 975810938 340651101 475826360 531539835 561453050 198572214 880529940 186120756 557871532 338691710 728984213 677444630 981814842 35845430 561814444 240179434 758591416 836900602 913656993 167906564 330443264 101594708 228016331 100416299 720026152 315249143 625394413 995367670 999952234 84556790 961313000 923537003 969277440 154750069 955132764 256732291 272817531 815831670 972108291 422326839 618571652 459065172 760042676 369066910 581338832 756259198 991414906 821966264 946295978 748046757 789804275 354010000 647172010 310850031 690908529 672137843 855378252 328094430 843415585 30003626 316597819 203109610 828397545 640592480 937464904 722916205 810966919 69897144 149321319 471537225 670168449 190103538 568692600 512570570 626784581 438203701 692648567 944784872 988611722 855485702 962687506 365240171 537795484 342107879 908297490 467048108 864709821 972964901 973589216 181754832 389377492 153637911 306694330 752506893 794918403 349097113 446466118 588189555 752575804 597339150 759321499 496368503 709715297 437577489 837991004 384473633 981838374 159626396 228326935 474820550 821803206 331056227 464696144 321311983 496901827 449710493 577864005 516442218 621977905 29159266 494037632 563146465 620661662 9934133 870363751 987898340 989885043 803745590 902816956 699055694 831303725 184903432 282886406 888877933 935179096 369904736 974564589 932428506 985380965 428313531 839050888 294027511 902377269 472965848 883857973 597623440 775409749 934866197 950122570 845106053 960160265 828464453 923639149 400520875 768607188 405434692 866108173 762125521 839545966 360324901 851305675 641499418 806357238 980202831 985120389 834701987 856830281 957632485 974934787 983549884 984481412 263637131 613427831 265424894 642433797 99804151 812899373 753975954 850534806 906282431 954975787 372159408 915427521 364160388 732032970 38901052 302247343 319750721 830888669 271927732 645123804 649687681 766671889 782214774 859859556 935594696 958384009 667015600 951500919 774229353 791088960 735025374 845082884 400269365 686720396 920051062 986379675 858656445 893942855 712413407 750948240 291619896 518994900 767601845 879161013 486411460 855935941 427248643 465883390 473596702 553698344 439494363 527797999 269504032 716087619 890037851 982691137 563906263 616868047 571211825 732454961 586493745 896118141 731659661 857368656 87076650 710938771 93626311 415646955 786667791 840405547 285630673 905783020 383945897 481216831 804517385 821432142 788748057 901274723 790935736 832056155 939236449 953834038 222864728 477886258 714559650 931298115 562002804 614085295 635083156 972576970 801315462 877424081 773831947 953190865 907089685 995684742 120819386 457822963 165459079 538149806 709916831 901334051 866995377 876331853 30286170 543160904 193034738 547506925 293468880 520842809 841265744 942727524 931146006 972074210 910005231 941204212 9790985 816118834 259449593 322571443 143712808 253474802 352177841 629798640 841617668 849272626 845239384 980442409 939958035 989075346 489927744 768070912 8162955 243300116 135817673 171306154 339096492 534489595 99225315 633124584 117195799 828266495 32743302 437811704 531211383 913666938 78213976 199105509 263969412 653376736 908986277 959163511 347037512 642841163 490665632 540586143 960129410 993675525 864614345 950387846 743820785 997632215 164647211 809513230 610349080 716278601 675883351 888158581 217146891 421390072 24118617 428448777 450343180 985571362 467034208 890664831 726656447 779696126 368596882 790918913 97529574 976267550 713436012 757018731 586496327 621276185 687461041 830336317 380595123 577771347 607025256 631821933 34651503 267328591 748172847 961441624 762031979 913975323 597785348 685622386 823118667 997801627 696009285 871309181 651670641 909964453 867061757 966053039 383479649 732944855 44319666 624749455 888436339 982804937 315900764 634159197 798288377 945375674 607740641 768853664 985163608 996293934 174626481 910092446 596239401 885436230 903601549 916175484 668446415 854376946 966585636 981608119 743810575 770497968 501778517 728022215 17637475 790308134 955153844 988234420 516751165 993260870 941807153 951522094 511095869 613882057 221597908 846263186 641698699 821613714 389460230 813020941 483050229 789685161 908153271 942065121 932684117 935619702 605932207 935809481 412855945 476457614 52690160 243345793 926520609 965116750 611011469 889727387 249955548 288826774 201001236 596327245 292159050 680527542 196757695 532308967 381603705 979272933 968288782 999411693 105888143 657129538 534198239 673678032 550542484 904290951 296379261 777571991 759969787 917306430 799372839 887164901 330046948 431234193 311771258 761838440 434920168 444218295 852195324 993830325 763434400 982055353 665795847 763391843 979487216 985224934 710338051 822336617 63617044 517037660 94455983 130123318 155909600 518290634 982169467 999096652 35243557 412734172 842267465 904028597 361424318 908148399 940219722 993330075 441579126 941040749 484433265 652635880 69167047 534045480 647363401 712376280 279582556 857760629 666049992 730016825 343848220 960197611 219572498 992969934 376605330 727687570 213711984 449500038 79821145 502732105 318506231 366129976 711647396 821448107 286534505 805689379 135197034 703185466 183530750 642642664 899122038 900869949 485683604 541581176 728482654 855134985 315658348 385503308 713861760 975466346 929085789 975230094 892194911 954756816 416895571 557556481 83656754 621883945 952661693 997750356 177731682 443184000 360261937 930076369 265235696 531510919 610053731 802462198 947892496 984050115 213675461 549652915 72845915 242855553 80196862 808347518 416824038 611981768 469940170 696455224 583466340 998084827 939691942 993984190 155154052 350114708 109195634 622372706 85374564 500107714 513198171 589520274 415730233 669856719 720894783 830774345 819580426 992766889 307426417 906065091 463778797 583331393 289327070 960825603 657235672 717548235 983716728 994567641 355860611 737795313 181948869 722826786 785413297 883951928 87431098 630762836 279555437 913900465 334484034 435026068 794669062 800439154 758421445 921887711 247279436 832026493 133015299 728170223 160752055 825740227 241552122 376512942 919163299 930933891 599534224 783410358 528633633 719315271 972658518 973534654 180377066 648551528 299794771 967369999 346039039 531652101 351674146 398153776 563379012 718047962 988176590 995814879 576125280 881446207 982094184 997981164 4200961 7838375 937738774 956016179 367815692 532571788 952553987 987331314 986114503 996090171 149762855 856657834 488700319 629809203 388354192 721432515 133861577 564559901 714293747 873717455 396403845 722250219 73812578 692531776 620456530 818110180 45577268 610375104 662034570 839608163 997606865 999288809 272300560 323180751 19591190 386590592 988290398 995918053 906822535 970906848 662271743 719072474 136911926 506971361 714179211 764337990 289286517 580225582 342233109 631389663 107226673 890537193 104510457 322847523 781204334 829326004 478426331 908775578 723664726 786733398 432517145 992048583 643587216 906644900 618287498 763647630 395900876 801562751 253597280 913936284 934118418 965054747 781058467 857116828 796031178 866139602 78250710 569819678 310987844 409739135 139414366 170009986 24544690 203675025 636653372 702518821 862569495 993512551 759208225 917798510 768469658 855206987 514824883 919709391 213680374 447738279 906450706 933365699 886837886 994594433 71521169 738175107 711728457 849524169 898735544 934805874 762253675 869758170 544159955 859698950 149326544 370299346 79791072 252888658 765367562 884061516 96810751 619096876 86107237 533278982 533664301 586627741 742870229 745624135 425269609 810011175 88814781 452256988 360365917 770463670 589139047 882298645 2491870 513331300 848471285 927368192 629235307 735630996 303269185 362269824 241813415 795672811 870615622 914502408 17712159 257240000 737689093 816658941 990698750 997241818 69488208 335284062 226430207 603767278 288768585 427793409 853022503 919835751 98386190 835794073 142837458 723225822 576366900 919148050 538531481 793153499 828165887 971911455 388848282 637484395 246472840 598974064 843971746 879536791 673328636 961482934 555283764 978173487 757188451 972767923 343668421 764058709 257378064 630480474 270881136 851515698 971966466 984798904 313838406 740702043 354706663 909007494 377414971 735935909 956086734 989290551 798287694 985758531 467922615 954827630 593494121 790398121 721541260 784626201 298044504 688482147 386290019 504328990 509913235 640118690 500906801 536291230 571326982 768370134 652468043 837093292 163115881 583060150 956108272 991210121 240207580 412375518 229851758 296344655 802719349 823462650 175198397 502224717 527445585 611089614 848789092 943544932 250343818 261538046 34026168 158372142 127067718 171904336 256796283 555054755 466509532 640182378 190230244 218460529 679057964 785027725 740954377 900068176 590608610 730968727 148661535 784370969 189479292 622457103 142072218 483725350 108394550 131544496 579856255 617714419 258746283 854694386 427513437 837744078 176280440 583763495 335165449 854415130 770074074 985772727 151509051 941032817 495294836 762302473 926652670 988663493 983652615 996496804 6020191 519503200 615456949 742028799 595961379 698180111 583250450 924845478 628643681 838610292 992508094 996164459 492408207 584992136 612660271 647758557 140833061 143885681 660201010 849815528 790621555 969215092 522283924 982236937 330667766 896084929 252209011 947761256 407726362 480085466 44056544 163110177 519587426 851488343 453466096 742514039 680014729 863795586 406784096 530555531 146317102 680769265 7590288 630293816 805790753 953355653 16791306 574168158 6962522 234455231 138759461 519857019 843910175 907988302 516530824 714539009 194657224 967738387 740888212 761352888 480823710 760618006 689502532 861637175 585598651 615939241 423953733 919307109 563231985 667748744 268576491 767678250 187574070 494221074 160153663 344814868 102596481 360551713 152146845 280977721 834466376 858710784 39682609 567643394 704974805 825727711 610109593 901083848 117350827 246051382 196382816 738632256 334480238 703740232 961412369 999311789 903892217 954736196 356117166 775442516 193129222 200074773 584687646 751434852 995520350 995642330 875238820 885598114 847177337 902571209 15308889 361291555 886582887 926753554 558680219 685299270 101403249 196826103 910042558 927110894 776174130 871255591 67952193 103123184 433211656 778553065 176250032 406585644 383362585 700186969 344886172 517492123 934843586 982148056 677503540 771252297 917911552 928052122 608564054 615203594 916776923 920857321 112585843 288589938 626736007 955652901 22534180 238834293 903594502 967439894 165797514 420568267 448707936 765825944 889131464 902355834 981103108 983514750 948315218 969514458 642111676 837472030 890742993 958098183 544552844 921891073 439169806 812432693 80777936 157367090 404775206 467371471 313427964 768161525 89108299 662747702 628938243 858024486 974008097 979005654 462705621 619923724 996643502 998483409 476129096 811904936 52782220 63646263 778012577 903266791 774307086 991830386 700571615 957156100 812065873 856265645 811374138 821503613 557313356 661740174 610582117 917608200 378917086 902751216 960440486 998321300 970318987 972211151 417443839 908792347 178746886 656161937 186709843 554659180 439604023 690736921 413519929 457527482 715670488 762460485 293987992 469664496 61119903 585802018 517347572 816135461 540623126 711279208 650296145 719047263 965150549 988345099 841396385 862500436 835905248 924242361 109995596 427168644 138182828 414858715 562684623 580349955 219638556 492381608 640604730 771020138 916576917 992410524 31987107 705330314 519855637 583856917 237740673 980639116 608729428 859494292 426024025 459245475 864982704 936948697 949998521 967089558 798322298 820940265 565957626 994109721 531803932 545454334 588844869 952386259 201800435 584270995 913437797 993944597 78837318 684533144 529261556 919594049 397993412 944334485 582890163 857480340 951494349 991698158 855361366 905933438 25246836 25784781 621396664 845468124 759174650 833197810 195456878 845479693 696933541 843912204 116437479 603787923 73575109 650576697 81642407 616015827 164837329 746739648 733329477 792625971 358989749 524753951 701374438 850788803 538016713 987203398 539536048 785211095 257015425 393059219 794266390 847882613 48167205 57499080 560501631 974246605 488874829 973384310 582617980 653766778 796667901 943298309 569056273 759911305 747328166 858302117 982544799 983724734 513630719 873405658 78795385 810718477 719223817 769839720 537711306 786624045 60819315 415102771 631592430 816351811 886347046 937726321 759265335 904448092 817893894 978594812 299620037 418109498 591144322 616336298 442113250 732384158 694126778 902552714 258093902 776251038 98550893 858395777 961497125 997442982 76767911 762961858 175981024 565276757 229372893 498342071 206755347 357814537 973730033 981681778 122983384 964581528 479444660 632647781 789929084 962440151 498405201 693102006 640697110 909953031 28074744 356705975 328939672 993431897 453465596 869403968 843837100 981509756 438313501 743668634 110433438 114520495 563511151 584972067 37623287 373089191 37206413 398032594 882079710 945730654 11133904 126482921 457867328 754122062 968178454 987660809 133572501 141500795 43738534 890264463 173074032 449383950 323215233 578156815 245093052 445436866 19878145 118158264 173397575 501034222 7190093 703375824 207804518 416793843 372054558 964792349 103697644 655130952 262739622 860528259 296476919 576655133 806999314 858614458 747853486 780532153 516721908 814644906 784502228 838286904 400059921 921214624 661321420 925663333 538806624 656582650 37529724 849610755 704451821 969159634 697447155 784307488 880809912 997440571 741197510 973390831 16006531 676306332 181329664 227893724 461798693 862449936 141997045 904374581 812709182 901147012 490155139 967930947 474662246 643644693 738443974 999138346 901324704 911657543 475840578 518124585 90224775 407850130 438851036 861798818 52467535 76257728 61991872 187858879 156667035 979414249 945499138 967965012 321315610 848900785 475324038 628123081 250325073 926202141 402908543 840389754 997379554 997497038 249556052 698982519 829852678 889652460 970729167 983951768 57183059 469961909 201422585 838959537 509893875 738258042 62220038 920418850 932065745 958953232 278978854 419072314 933274342 986090000 734180260 810774461 144854559 254151919 36301930 426872455 158506315 942468845 450450368 759818046 759951704 839566472 745158546 980917817 596898724 859337219 24189131 410266017 367186026 615173597 382130618 533692919 164583302 537568647 964118728 996141518 436546047 948824383 369248660 951708794 689860250 859281459 251002760 931333323 857135126 988878152 227870497 657340415 147437199 980105491 420743319 706306474 7738701 252151648 522147531 768931165 744462232 828999638 607254094 682981382 563743047 898114249 468066304 922288770 637270052 992155871 768013327 795320557 683050742 745639971 153042537 391984262 68044437 620869774 497512037 514199389 972656366 983820772 674812713 931646315 386973466 739625429 982930454 998744700 98640375 416568612 462599733 858902632 428565416 682837642 404438231 955234514 666231389 870657249 921246461 961199717 360296219 430796702 846446393 924636658 649927605 771393773 79911465 375345104 19037480 739194729 980732676 985249224 544911467 813773145 773927598 905169100 622936476 921938126 437427016 467331446 768842941 962375394 445555882 955157751 128891076 556372796 698630582 980831645 897378597 923660010 568822590 696345043 282013012 811387635 582468510 631248783 699363022 701859233 60645969 335406182 724767943 801411229 648022682 705771266 647733381 983089246 423518104 927215013 85965943 107470266 953432824 990185309 404185365 612577571 60904887 241015789 841269098 889375040 814436183 951242305 557651081 770282881 5910737 399236165 860979829 876075203 211852487 281093578 597962905 668863305 481537500 827729261 875035676 925640334 299790636 617327375 185392804 188550386 858414597 858870294 618599566 686703408 49004838 639260733 841928223 880153734 582182638 938431934 108344570 177818102 445938955 677543252 971661175 973002720 882537039 908827047 6839590 499358983 53436097 395951459 732996011 818478217 636218057 787955339 742761891 835236988 263077207 830886252 540115574 848616059 970909290 981002832 378523218 558697527 891434853 967166033 6240497 923450464 93711621 369786092 331934509 524757220 448457127 647472642 137325639 593134839 401126477 592567003 738368719 816796800 911314314 984871774 143418242 782046272 340453964 640010077 473759770 565325554 446675572 681498028 714584473 955130201 752047428 775518405 996934669 997098530 147783344 204210696 973575144 996384623 320488993 669818125 944850827 996779951 566797319 708024982 302758598 580767641 18081360 844733798 998067836 999723126 473328083 807829854 868722910 900701326 98826274 765899711 123387340 879871266 97561799 586042190 252643332 939496254 786898250 825826492 727713803 808318261 240474770 909047258 75762752 965874320 684688265 937096797 337319508 500760887 308953199 962934978 674273863 730856502 536335915 648178202 70490294 336706744 450399819 837079047 101393962 286450253 926171653 975624283 894530443 958674621 688341806 852805363 697637613 980975916 351850723 699531017 463655047 868884830 67246346 337123066 616627181 813259559 918871620 981602457 433789258 683404329 662625376 739691673 723815534 991334405 527558526 602408532 172473894 704417531 954575930 992258918 642514880 892652875 406577326 777026314 941862073 996991512 486776519 986640898 232551914 330023302 350578486 546485817 844975822 963230240 495311905 904055089 57053829 244973505 554023721 769278654 747926308 900706304 716452056 766728492 13900046 513390616 361225446 535084320 245024003 422615177 101818906 231859094 972004107 984134484 187474061 834541597 401957750 447833343 609975423 741296593 24190386 979906033 538971185 716056363 322783475 680230161 769100564 946537367 817325097 969246963 851656563 956264014 854271116 888964147 743116012 850971463 595350870 828822995 620169577 641216457 785540058 912906697 580176497 610781397 664789346 994999479 67573738 294507996 400693996 407158065 555292903 902827190 717988149 764189476 873494605 914591546 780799394 875548582 153868146 940066257 55175236 817652998 13488890 941323432 117656535 125035774 672241299 765028704 795697182 970614447 387140011 518041909 225703877 883069900 339806681 970236167 605757096 681185613 297836333 558119416 775573370 941440904 544913803 896047566 494685753 502153870 523298862 564840220 884279987 908651784 240021574 952688801 628119455 774592589 545275284 654245087 243556984 409067162 67126913 110395051 368243607 399304677 377368067 871682141 790980905 874133047 942264640 983492550 223999002 702543022 729842863 866554781 993497894 995021851 537533264 681031094 733076413 861545733 451399064 800471036 40263339 64973583 981712636 981949945 320321548 622108937 243280660 470225390 649058648 836045324 688954805 878904643 93239834 449578154 129221683 885080512 169538580 414702884 879742116 920063030 301540825 548661883 741441395 996283291 434737726 690184359 4059625 43130718 233645751 500263016 92334361 219873119 424417153 993716485 408504538 434614538 910123775 997221164 555186844 774475751 979902353 980490677 731583646 796690656 731753606 948611931 630741535 705189343 402618123 926568497 566495911 946321898 326335539 431629746 373319353 443409399 962564800 975481111 759448996 886149699 523237599 977145549 878131463 988212075 592782970 730299514 138140357 489188399 210388778 644171039 65468073 268151201 736444698 892187354 555537928 666371911 333030130 561382849 915459468 959778770 556524356 765532416 935723587 994602549 165729826 218913307 432318620 922863185 778778983 851511434 348923506 593236107 131002967 398646802 835181496 957151827 270610583 367510992 722511650 935828279 565204284 926754607 530770064 674183608 825848105 834479405 358503653 686048715 432971463 691366202 505774197 914493715 505391505 713264823 839565556 955748825 626790884 680645870 36533298 69078870 173865150 372138142 81562257 978365900 70112343 823587600 701672543 712569000 194971511 335489558 184020594 613259508 549899486 868782346 311847168 503334208 203842407 332275836 553120818 741589586 832235789 933745440 447815795 617699939 185125898 839665199 57326954 761016279 897037565 908433759 327791695 940810076 131311375 979646440 954244287 986772603 372167889 713905914 853250325 888805827 275851000 945473842 809569952 880671117 614171244 969266281 969544898 986428575 341621936 422824528 862563078 890291773 909634637 941454448 294382119 900100205 551507463 899803425 64003612 833821302 729781917 874054245 717725496 724501779 678216723 886027449 975178879 978585094 489520754 688539728 920061683 981751286 165428011 536497255 83832684 558534099 548178050 721551051 448399258 914345035 643815471 962356686 493192860 723208644 983169790 998772406 634421229 796266396 500305723 634084293 264637974 886912935 604852709 784004968 268887808 424657693 617012351 844902299 631753122 792332027 759869443 883099031 208876734 435806858 981183023 991211870 545470268 553696139 248990063 780914822 725809639 821594788 100570802 157175326 870140107 885907044 456402096 477212732 890172604 980114671 630448912 975751657 970200242 983280490 558603954 975620689 238329878 643601723 766582258 994469924 706843284 999856353 252931419 322120185 659897391 757511459 229325694 278998338 64182394 370549803 447263603 959439951 60977455 442600560 407018532 532594530 933195868 959143315 540715355 945441316 591655692 811262651 398070934 457375256 209532553 401340075 94220061 986933286 506702315 796840235 25294836 719761253 559337610 619763065 937895416 943365929 989033227 995497759 977702452 982555442 331971303 588703032 650889529 771351022 23268227 601584983 272216301 818851421 604747680 854931438 722981308 983142070 394077352 877251048 566460577 660052186 154468812 371247793 208852885 893639711 835444405 929501879 483569539 819623537 820675956 950936774 576309924 781849908 75336110 547076182 660536349 794083974 475308053 905847665 993403105 999110932 473247431 607028439 142811854 495990342 813784131 992830147 109337892 560235353 293520336 696035989 707108026 992795135 410560501 566225029 330896871 578018094 310151321 468932462 78185883 403273555 904548692 912341769 78817906 686087900 978305077 992547714 128935120 451581297 996660992 998736321 80308464 353629753 134085096 410218722 537021418 714471730 356746905 845005737 877988877 947594351 833190473 997410469 986441652 996889574 303372251 493949962 229832988 991447112 132747022 353690348 579757820 722673556 423359998 746088088 856608776 913022643 128884045 472206336 82441540 589727687 139908001 865775805 495439690 936751026 471066819 697139884 509099886 822873163 748095747 939017087 843283615 937153280 791402413 879162567 813830060 840279499 282257752 795260876 799730541 926376150 52255407 281191489 888886273 989419669 25132518 668172259 360842272 917484889 663960892 878335534 842247497 990800748 802199596 910559168 905941952 958756724 242760777 826981369 215762974 414514273 182319173 729929822 718119460 748205939 322124024 394998415 166909416 814519102 829219858 919171922 479542975 577472217 294923265 376990826 565259958 828713316 832272014 993986039 726118179 845923007 749089987 990241741 430401656 585790057 73429327 915290018 71610158 242596529 641064194 942607709 8420236 150640152 904329829 923741339 394692373 936647434 992119455 998608467 218558516 571978412 316712089 522122000 726661752 779409593 285419708 509185797 150443090 411180172 369364955 901987383 562280819 742859800 939060563 989900654 332826195 564316627 321114532 775686060 768855958 909831702 438512008 694189435 998493596 999033335 466055175 610555304 254648156 805857927 702261004 907637106 729255123 795785296 718585032 851209965 945127456 998359233 658407242 862981729 284937537 706754802 705984356 844527386 763404025 805584727 119186804 738967298 76066580 258146477 874366691 981884105 214425485 564262787 20662103 75919507 805602331 991310585 648231989 723837444 972661222 973804559 199576404 846294084 28594992 290962454 359292456 725715481 103870496 156170082 546782786 566966793 570573744 884206939 757053165 939272830 610744970 710876603 549060655 977759206 241129171 247632822 815859818 853318376 735782162 939346997 621239842 791407517 292423836 887734527 813785813 998213615 812288210 951596013 755970897 782886206 83026846 868922621 465667257 748105020 314845626 756035811 852954240 865188776 486614265 585799716 293708590 573467762 256751586 581482508 383202201 790685162 919981871 967600973 786286792 924274657 302652919 854475235 572806008 869280819 776394560 815013722 153098427 784176329 458700698 622736055 155536423 222803086 121356130 889491658 899642271 941090102 551560871 876703048 189648327 771019783 711990885 729274989 249377255 693940921 187486082 232531194 197316790 335562812 710098869 758141824 549944754 895567225 318028004 367942770 182980132 262946866 379948303 956616287 424157870 608863259 407571294 453872469 493252303 860917752 335784879 711465755 958352591 976704661 180479890 505121166 235405184 511912669 697701718 976737304 653009627 869150453 537949867 989957269 678295901 873138790 335518171 553450534 470836315 538054199 978706463 979489973 711897128 978084291 999691235 999747804 368854742 802016381 230665337 566953828 218171199 487758144 72150472 783776609 710752201 939689580 589398393 652975123 267123984 629093207 737944962 900614065 228375061 332276629 968799643 982077758 709110932 793043406 520114158 826513621 360196848 493875880 365513469 554881651 596559821 940894207 714551487 719989076 29453409 636531088 814521746 921461384 653986280 760376920 479357183 578309480 462390035 755158336 832304015 873610295 525498959 565979836 86809115 546923079 349322107 444765809 787700129 842872613 998715734 999406823 221225293 589733605 516136101 818741286 807431702 974720864 759330709 868675561 262283594 674794073 832151789 910099171 381769526 687899133 155842837 168042098 315749208 708439001 845557277 941066120 822272707 853885144 999132058 999683191 870837996 932403341 371349646 687879069 54143018 895397097 627106123 645325007 807241631 912171287 514100725 916934716 498765236 665635072 384843018 771874856 678626886 780740952 349617569 357591804 937403713 980015178 726462563 877066876 218888072 633488487 972903385 995986547 234351402 832870049 463736500 748073438 228653012 843322936 110401189 652295491 549642029 968183629 645816672 738080017 153365476 581601676 104692985 400283119 144525000 492136641 289513582 564537494 65142031 770525938 908421532 930687176 492660640 893887192 358365140 388828486 576920092 717992089 8166756 835378989 929283824 983647389 263637455 367001501 673870943 962840601 263227580 963316049 311210826 586802940 462304813 647795061 250187256 877408252 67499747 222497803 824482980 864098809 445047427 804007149 131638844 936664107 556134044 731634510 79267553 835881706 79511476 783897365 364755035 856493674 431745270 833149575 572970458 605725226 512753313 954092280 820637771 922224375 375062526 937816100 786046930 827470675 125883177 341552703 924702982 959668239 779696770 856152720 776217378 875596783 10877951 420598884 199681118 896807292 146198226 439681570 48401740 961687904 606432237 798691315 738029399 967657522 198627592 783773832 917503131 976680983 776182656 802351673 399432308 411339718 444214301 652188014 289893848 679805143 341611447 636321508 606481741 834335068 860009588 964850881 374096898 591650994 191554815 923210075 926497416 963145527 262110470 415000910 348583123 775901932 607144442 705364936 917539991 939413114 492589991 495871879 908207295 999103832 702877436 958415200 903199818 971841724 221402449 346038583 898368234 978920560 439836507 667320501 614388509 682957537 613885167 694398250 953830042 974740492 255529193 873869323 745650291 749355998 523526181 924086437 807328448 816833285 960967137 992102615 622342869 825027614 557760736 782093205 252504959 754965439 240202228 907291945 441935969 610935471 134853825 215017878 727055078 731100198 967425342 973615571 207606123 903287764 99821585 219942679 330131453 486047314 620332998 676007946 921062577 978912156 818688633 988007679 486320382 659890751 538830818 608956588 75554775 249437230 417620271 694926929 128410323 130284118 606657524 690607496 591697178 934810093 131423382 674840108 684138143 984467765 254909637 510277155 829376766 916348037 529831576 885071900 619820333 880431158 971823148 973217533 537163028 798560322 745327809 860641367 783371165 938729574 525007730 614904882 363510383 634988994 709536577 869508692 327810334 448687179 779045227 854160909 571380166 964603157 630014699 630528120 362365110 607634374 462550902 560389005 360986592 905859290 625033620 993699747 919669466 952208851 322903139 592245782 352020641 926774255 462298673 888433454 224970740 877108954 996197912 999105556 476840885 909968369 64244643 125898387 660608774 789316571 267939866 874271775 466333754 744905796 939556071 944206168 559912539 726666881 363316276 715062087 542107185 559480562 513288179 680767900 796401937 969266920 878452150 908426147 917536134 945735634 550105409 801932538 78703162 196778333 466597961 654358002 408689453 839618287 576731844 592862384 862364214 876835197 505516811 571645010 218456041 710840026 141691214 464243625 376969739 972897745 454550990 610276882 249558641 322456369 418400377 700143963 501255511 977390376 645193363 843024647 337271499 474553726 79396965 917529535 617132166 763174152 801235899 950410960 402329778 981554444 551542081 715624316 232287561 799880157 542724725 574237334 98478945 972121048 768501554 977471000 902749420 979283326 36989312 838220167 212903420 413965863 989639724 996290208 963436577 982818635 629245981 915348920 542907500 762609918 429639172 654956027 147393851 366412310 17657414 596080431 989661812 999958312 211548349 956662571 626067697 649280280 32997429 125799562 881985701 944321995 27108708 741794489 289365181 951323627 455963562 560501180 114348233 202666682 734501350 942243001 315122526 813892211 527144553 766936629 655752399 752668980 915459699 969603578 220180565 708884298 627699885 631494831 232856605 396068211 113432623 623444278 783754189 866360856 186654506 872654157 14995427 456022198 625463805 823585757 995899727 997471772 242770377 920040451 108975636 984196108 671930991 831595757 435267749 926536407 978125436 980104504 161149369 338564747 936995195 976672613 705673548 747943089 717979238 757715606 737212932 803834061 510839743 699785046 43231616 551152537 509519471 727030603 719558656 848603998 60272406 639667486 162149131 636992372 482160612 950734382 166738487 248542340 306090356 642676922 95179749 279036419 618676922 911230134 507495872 670188150 804862816 810725590 193617143 264238525 676764840 695739342 808800315 949250307 429621732 918608073 128022460 821565492 241251328 643838109 545656610 573499440 767492347 819481417 406289903 831738143 147553248 849751980 367578326 721554174 136095991 593946734 172384424 909074684 18369276 662951379 284381777 609123560 393394444 695627071 457436448 897581722 526431282 902522830 388250997 823136386 716162525 821041645 675412362 983805589 595084229 670125013 771960254 980908063 63592396 714498797 845968557 932109792 323976106 501814319 238881873 362574425 968613506 997353853 51184708 308072393 100707464 943742067 468196210 756696624 936655887 956440519 488281385 821271063 19084083 781157536 788148771 992427177 429478633 986418883 280460577 479564375 485716832 922177375 478683535 749499729 960402495 978481774 70524521 914853694 630567915 713658670 986077233 995889588 671586463 914793482 656485133 810849433 733938823 833885961 682436050 764864700 624467861 666201276 42586070 301717597 662849876 910472638 290374913 920403558 358000128 555021238 765702509 862833220 312519255 442192656 917665830 972834922 189422094 544380587 60414972 248079358 322286378 726747419 934959165 937363197 628845337 966104142 358900090 974455183 34113045 270534114 446605732 777416042 435617262 666780773 932657958 965637111 255783667 536820276 3476454 445745331 937198526 941564974 859211681 870103184 928309926 994004321 725376091 885150919 783576788 944990681 284155466 550819334 687838317 707904628 817952716 923213051 749243564 883346242 877837265 892994488 588767409 931503983 263572933 871356904 885070293 953631666 597628415 938086022 286232301 683510851 250691494 505007916 249411463 978659289 940631087 984421789 304396618 348358039 478630200 834654344 915423727 968841217 578425479 806028688 907405071 912822969 247130005 966130957 26629297 319910754 944380523 949973397 624157512 964744988 373107046 395186880 400504186 580486285 630569172 938209552 160639692 242046330 156220284 720860353 157303874 856947085 383909675 641549226 230929158 456380692 814068261 875663226 61604443 246350760 845451457 968642926 352143250 418973307 717436521 848813712 607917383 718409554 522760489 815080197 523729559 917609068 919261504 934591254 832231921 943960740 376292720 622548399 921476830 973443755 171456150 534759917 137356209 624210528 815269360 936705005 579654745 987570861 91724418 677856628 987446864 988156400 208894951 725919648 732592777 982263240 831755698 982829595 901733606 932887411 214202483 876891199 389839342 842330543 811173482 813003638 702192180 908989823 3320644 590752733 928149631 970564107 288710239 381057784 437405944 448320775 467198452 769748462 749298037 938663405 707607514 848463189 278838830 358483106 934962764 957825976 268033110 607383334 407501407 989128151 320070209 915949653 600560157 772090835 368791945 745365200 597483942 814978015 214969889 423585949 429789900 461267670 305566076 910954138 790550030 897878197 330243528 396974259 244135885 507917441 42743681 104680797 414740991 456532312 930834177 939089149 64814904 936136859 17850929 57098422 907170791 963070284 589348915 940354119 362909885 970421812 426120932 465546658 375353009 990745164 514035507 560584906 867516897 876662099 829780006 858333788 829308691 966343980 248511564 321271896 746086948 972279669 555703349 799151104 767099919 822326531 448499287 492099689 521470332 786596005 970750891 998091132 725765844 940535845 977942753 991175055 157506801 231852606 104961205 548953027 684332875 945597252 976777256 999375334 68580597 896334791 721451294 887768177 403183913 577438603 867529124 945558005 491557986 820191455 251450266 749374737 567395787 718670552 94505706 265652527 282537134 707155951 980536142 988870895 122512592 837522839 915642862 921873683 118583484 561395890 663059839 695411718 218043592 574418948 298171762 524955043 322105446 707657446 423600192 712507192 79463938 412226962 262285763 778484334 937114139 995669400 902407297 999494849 352497642 837388131 586360539 732273138 864584051 986351788 285919200 914893736 459140970 731686268 92978547 530788340 118441277 671876063 948672235 975561610 15032249 218996061 483265161 874356031 245161961 665116765 629015365 788048564 120573544 487885407 101770475 923826125 451163467 659063837 617621345 934718741 471340559 862582467 834578212 874261335 595287559 893740764 637808132 850048886 375583603 993270743 404805186 988803050 773062756 924210205 749162244 912061561 750481314 877496686 5069548 78597962 968728618 995669913 135340499 993916644 421138299 896404691 443350366 712262508 387015674 405422272 290968155 403830867 228335274 376676978 333138050 606920074 206550205 296706857 167474917 602383126 461695089 751238480 438056443 661831776 811604530 978036564 394330772 741981086 72410082 719073119 288010116 991456307 370336787 908016872 56499813 946609714 245315283 663683518 848390587 920758760 700766215 808057022 53112457 872456086 540688944 826699605 184829956 532179780 265389869 310994451 651882490 965068040 385773493 739687945 319371999 331074738 420763000 650340769 503675105 680457038 224867386 899295519 94266284 173293143 385796004 620947444 898620485 989079735 26245242 335399957 706730880 911385138 374979203 571669759 102836961 332216411 713483161 918961098 856854822 864050229 55277314 332120187 281213343 470356911 206396793 838470350 407006887 900963469 205041706 525901302 855385219 878811699 971986504 973741305 210921154 335846276 966334363 982197860 237474292 726753223 731103937 974072993 538444332 812232806 361392133 541374911 436923767 488907098 364256742 583448650 626485561 951303878 796844026 879711379 710218450 803946015 81823235 288704100 793103024 808916400 970640424 976240760 346056791 447882965 878962342 955657464 569874661 677500402 602779253 948258447 3174161 530737786 286181934 314344728 714273862 878762859 333875723 654556111 751085692 995352332 798931252 893942962 369576160 470102301 494197846 728027600 667048780 982744015 369596660 530061220 718125996 721340000 835244388 955332310 768273034 898369354 137119698 939189516 797567217 918998716 291638237 967116271 264152984 639365960 450228229 545476675 165987527 826312207 207826314 794167371 382658647 893841851 20545367 308607769 419365373 712097896 804007895 904543123 827866526 926482208 68409831 519398191 481032419 654404185 578874663 649504191 145382160 671435282 214560100 373382108 420491793 521711625 94131360 978012244 883774141 950560204 768060784 893360690 335026912 913695498 404151860 857932162 389680157 697199660 543929598 847572362 852242913 878890849 126852546 876265170 860507962 925332617 483457046 857984422 152246523 935613851 482714651 898250115 386025691 635550190 334529796 554090591 332602804 885239704 773953141 912217653 777360994 811146505 987331605 997107997 573431477 891474220 142580220 204357737 241106453 923871984 724354901 949866267 694649913 949183743 550509477 854973905 521302489 946000005 848060073 983052731 355260021 876791348 84052396 646596449 24755783 748985453 810551779 868493076 814615062 861912383 179352419 818135037 452975497 559792078 149901157 455662418 438249798 897613696 513414522 640125810 427139226 494057828 631314699 639802622 726969573 818859314 785763206 835037531 8009174 360750171 684905295 784656082 365186011 533203493 770907296 854426167 249659997 973454611 15582277 94926102 321351570 364054442 796767566 822794882 191388200 486462695 86205119 533568518 643980490 804861021 993990962 995536739 962182854 967597128 800666449 846981854 964095144 970681212 562976990 780298004 108812780 395818701 264898927 428895755 547068163 943595343 880759464 976089274 446913454 996519974 996168015 997957832 157589725 428004919 240429144 631702899 139980848 306048252 893810636 908778515 342963368 682895343 695101218 750988042 918869131 964546873 84707043 294328929 524163158 720809881 366504508 577995483 356262496 711387383 358483276 853375629 572312338 863006054 476952139 958263055 575800042 820432482 602016909 880713224 354510148 608380937 295557233 829203589 917655122 959362281 887230273 899871777 655135961 894823652 978267595 993655748 423821039 858816312 441501828 876830265 910043644 943670144 340562023 922623653 275341248 816120495 498928840 687417074 510735652 670278647 344465710 882051801 557873793 649534822 114031765 841466640 760251283 925875396 775610323 815677946 887639782 967267560 675583041 937280663 523148904 895201203 159992131 260023873 146996963 588640303 843435683 899271498 367683192 609728758 647344387 713360099 111808919 208338499 917523057 988717867 24514237 617967088 558251351 767180797 468064868 895676889 529341430 967931509 385884096 518290249 896424654 956855868 163781500 917593417 159759031 274569948 304418952 586235225 873418195 980661358 750989659 948364181 596455262 721101106 11581405 993143626 846784149 969710958 185467683 910841226 69398137 414786547 246161317 387910494 243476480 919685256 613466232 977047461 915666826 980229017 464554062 765657048 759591834 988598978 295755297 611813125 342737299 700682918 619533482 670653114 777502778 809555297 368544012 426529816 832756958 969208189 296915949 459222970 351059494 699614334 357741383 876565723 501084756 672299327 558513501 899374173 135250884 967487718 106919589 156763428 194359364 307404235 37350038 798882128 933804908 996022224 786650414 837072221 641390937 678214667 912068056 971028098 592674182 864887239 245390012 982649608 459742570 848900316 943323766 988187488 356057841 661957469 559737591 741514348 89858080 645042073 680055643 680740920 944031432 993290146 695069502 869296946 480764717 719637538 528810172 656415480 155457177 968158839 700397013 715024770 74979674 485438031 962596396 979578169 744166620 748631944 991184224 992338371 316255226 970770967 707828782 907395413 429303397 855251295 239808119 980685086 935042830 937390231 366403817 448229684 957278298 976957205 627639278 749543965 664796525 789599586 368914920 738290647 859790165 987640664 643730000 933638733 819058668 875977513 319312890 347238933 863461921 995934093 807321627 882647707 285223517 828050841 247067666 823173641 301567893 342350517 535556810 692459172 742948149 850635035 704800379 782347930 874892345 980359907 824043492 844773463 990008989 993672058 756545127 995563963 724086450 892862480 628527564 930940398 572179383 948676105 232970068 683681998 271392387 781181456 63846704 601219649 678575053 721452266 291034954 888459655 112875782 635144169 985578662 989028066 854605129 946815455 532576744 877863635 120845464 739957398 979000935 980026878 817535964 842579870 644094367 675241856 597323744 849851401 820803832 873974593 430843573 551803530 752980540 913320908 854713874 933780678 462749657 599692457 354180375 456119770 138977193 289556888 695794346 854698174 32712078 428253114 74870141 347018123 690923806 841600025 3184218 325733744 465139893 730250914 673849841 806806457 209860914 633447144 663083019 989219333 973238954 983131890 561216136 953184698 447304244 754546458 447750444 638592394 466036327 546898007 133689792 522085343 63996011 982036905 614890135 732467549 620352457 885633942 631467668 868855877 174894600 751675831 675122079 945741584 31007188 151709854 599359004 601175902 927544113 999173355 20933513 361866259 890981321 906653972 28542634 864565623 341688437 761687266 447465514 759603971 227178083 984425738 179007580 183668738 691404193 949467827 925735289 986279449 680937806 979977509 743523666 746520649 25127160 626988297 81653460 366093284 684430697 704964988 176024498 260578965 747701555 934164697 258632301 793543390 952698548 956932841 83348281 994127265 216322725 448582551 118271562 811127310 550196064 610019293 831973602 843726103 632351362 673285304 253887240 675093084 7190976 841237402 554250937 714621406 873098649 937440259 168385098 782353823 269338543 626408157 859894022 954313075 699742304 875899125 253090458 692914200 531507129 998038817 960610295 987175561 301244458 537682630 54152297 712085356 161662064 226676334 718505659 827239661 691359610 914245050 520239851 604418904 914844306 934641557 638138939 711578203 989173197 993647946 490336625 836279304 244962966 428936131 620930808 688448909 48313437 557132351 259039766 597841750 158064663 509238802 920389178 990277855 914606426 984929175 825134408 967544255 666005771 864230585 208128482 652859474 849597806 993241327 573203089 864190093 405244467 727382946 261432752 621611601 988099840 999618228 793801800 961092324 498741135 876851620 451763639 694418409 631822244 960457279 922510949 995930300 215913478 372765091 732671888 744282346 837468791 872238806 584533571 944613758 675232638 725390715 305700370 834504235 374004525 584820877 361568655 986880189 663044466 820827996 781385834 785774035 134189625 716177660 881745754 968000942 445801169 942032793 398957881 958887919 266666642 681854519 644196100 930541823 746781230 842021848 280276024 463927947 715207788 788473206 986888865 997300862 163851300 425347713 743063121 767350179 894584520 911261377 388371586 885235596 569655219 874838693 258474677 499704833 123725593 236181059 240041768 470259318 320485794 342909623 943841147 959661265 646076376 745694107 927964834 934504960 221088640 754238538 862308113 902692941 112482720 117044616 491514312 916198570 886379801 900200741 842818106 863937328 321832210 768812561 509062311 678536090 151639069 875379125 369013315 876158827 138751439 474760020 873629447 899320037 698542774 880193349 534386486 651062932 369073105 427880944 335651008 952134791 363515371 818020354 768117023 976920783 912178388 982055781 102531713 103389757 840485590 980550317 951941346 983715179 758024074 884037687 96006950 465365865 507138406 689845195 326808840 547291991 672634288 919957340 484135040 974412367 761130990 889253826 748140061 965861983 561932384 847224643 325810695 357636914 281619489 447229618 566980899 876883695 607125624 985027129 267283972 985921890 475896463 766902625 257982090 851777867 120349821 432071443 346288771 673246525 854149406 863889185 500124414 817309599 423662108 833478023 858118610 906822546 769674134 893984206 189299352 454694359 637322113 669076009 266458149 669329935 183841377 987512472 721685199 755777068 584383912 689171981 949714697 963969406 7560514 289049231 231503554 521375817 656781296 942512976 624753924 974108285 978810219 993562039 666550229 767290805 604928067 668721160 783260384 973597748 93367200 126127309 108214904 629583080 491675920 983492210 716552672 912303136 351630067 803657196 381265862 982903023 733459984 874343365 42713738 974801538 527925846 536008360 739879489 842546707 612543996 970531031 862920588 940423246 400017165 959095868 383019962 740350810 185858458 240076161 666443810 678239507 537699007 718462423 282675965 296670953 353125655 551849671 864581111 889284703 944702990 959729365 145990390 404752826 267093224 927996939 88566960 659838835 781387532 958830853 155284608 990493757 491100 250409561 240993499 488317880 644148738 893481083 647577725 686013249 275474822 712472225 516834389 815775871 863420509 954188837 406477292 951638167 127293717 757507857 259689063 578191777 618436860 988073225 563820060 858931695 743094632 890636645 279752220 585561674 915943245 958326698 62368143 533967336 755941263 945195161 291575701 414401075 471439805 801238781 675868153 723090284 868786241 879965530 664022394 931954218 59350217 150953698 816821335 836597476 455743142 974927028 393426532 509180127 23896633 584926760 188369804 302692010 689769194 938179228 449486471 558858768 817444156 863367922 5616304 510492908 451421882 701826165 93439006 460075575 386908743 638368754 615586161 864300694 16993418 42664189 977391988 999574856 738465772 928005666 83351150 437257318 912001710 949429093 464176125 567527112 250429020 328248943 775837453 911961883 959525349 964084736 843717682 976236153 371877660 563452876 151983092 475339387 909132504 969614557 499790176 761093952 999048252 999213692 743491937 793311370 547040172 728377725 743481974 760774225 381292347 959520110 593769802 679103963 758403601 834766413 400363623 634011875 869889019 965975572 250352779 631828005 25391026 843312363 588971541 835120333 55419859 742607810 302647006 406007739 979621639 997965926 502795327 960680575 97754559 495215182 93244018 495493534 644332690 809013245 420391584 674317049 114181114 204212553 571605665 839287324 956067420 984634862 612257855 799233249 45095279 58935362 76212687 557609290 32470174 259098725 691216015 976617015 284544482 395431187 109373816 772702508 297648398 329771666 327449671 350018557 247605365 738901683 658823581 960844481 255879556 500143591 199962291 258470041 379702308 909059367 607576423 951125674 28371211 281645500 154111868 694947847 30277729 63918255 932061235 998086352 584077403 623540976 251204960 291187108 83788933 441422681 58734842 839630386 713637391 964389395 162658188 930477328 895493456 979110598 443670346 462932811 843145796 973971349 540965521 880481385 744430740 891217749 640291948 771267359 917010053 965598452 835472804 849807864 335245626 932197471 18099290 759570596 457669862 611408395 269255881 576359151 990885131 996059739 309965037 972232056 936615528 963435872 399880977 968449464 735346223 947851189 701658470 706944426 91103420 919703247 56374763 869093648 446091483 993877418 821619073 936390842 563797758 642173867 938000355 988598343 351252421 661582271 481210133 746780202 891556680 906267103 646356966 864572678 631484493 943046702 902913080 961820014 559255868 587179829 548086185 898855259 3316592 868910793 464950139 809875351 338627487 450749695 227084587 278857332 926469756 969891717 656358661 684193780 129346482 733089050 488812682 628766494 644791800 794086583 68648612 827281208 254377052 432945299 407004299 888402286 437510544 650858268 981086450 992447453 929999033 955868099 743003119 917982863 943746546 958261554 607609204 819652574 902387094 945122308 683250691 760075681 82473535 636393478 487306019 789594104 486789069 643237427 58521765 801257010 640281343 679686716 541758863 548015806 162042727 244838848 856764055 957979667 483322529 978634011 908040294 936914333 998024994 998803528 935706479 970610770 761217316 985893386 937316841 939615449 252300794 793163362 964618987 966293514 660212726 816014827 888383538 942815596 70974591 385916999 23209888 772490613 436640926 651167835 163749925 660126437 826352831 919219271 341468142 985711762 150907691 832346182 517412808 736630696 355129869 621229093 573114212 756051342 918446331 929693058 573471355 943135076 378792812 844530738 484562070 598697413 300010853 630406874 863125596 977568988 71697199 130443124 700683630 756878558 407507780 875034759 351680255 535782061 637346520 745759229 25823300 34058067 499179663 989864285 946941388 997800665 516620906 602747865 961530371 980956219 280538405 342258659 760378996 862794221 46620056 235447641 555857252 614398726 603927721 862259578 656796287 709390280 333881310 399843788 809774087 923953613 58419502 938173521 109241309 862426579 493943654 661094980 85536094 956214687 976160641 993969219 720405136 985510076 741506858 784199689 486183761 501214709 718264082 747597381 657592630 767445024 729381305 928426240 233980454 999954297 606267254 962737633 921647701 957201347 213444687 800328730 750311233 948259570 855185588 878458121 192686795 659852047 675006554 826570662 126571110 314764226 947914920 964003834 365934268 431694297 546648146 708423621 854149389 956514840 287059240 571434527 133929829 666747404 494611172 565957862 611585992 666623035 168728897 831752833 302042704 562108657 308207215 508679260 179940560 552075307 567022982 898495032 691450907 934446820 860455275 927792444 451597085 557513458 969592295 978632062 455973951 463798145 769994487 805672120 914850340 920064586 935177671 972782096 405802600 772990543 957446986 976912822 187029417 380451550 960390102 994098293 31340256 146273199 62564795 708056219 334238607 639782617 641862526 735613269 384035061 625698008 603300524 716034437 218435725 260540595 96237325 289864173 902092732 989093917 224155840 417691674 241122859 828973792 499111613 801533621 847766092 925601333 578398994 673462286 381753684 765812469 908847001 916099221 733333349 964437789 86370814 151212087 777964723 939389110 669201275 799293426 604791756 962717606 227800255 470839198 881007657 996242002 305400586 589383286 308002034 416628037 649798369 748627551 100378050 320377746 240016437 745073759 925590267 947048237 423846577 743953657 283804262 956468806 474409118 588471881 989757877 998578574 160641860 736007229 320911132 770632926 160989026 535030278 868241714 994447588 881480591 896988549 359891626 629730857 538545569 785038928 964780392 977236874 400949832 563601365 193258081 289006788 356135775 853619597 816796724 882490127 208926524 781939882 275349496 548056134 264565669 530741554 945572314 967594219 521658814 579186153 571571257 789640695 512254115 549279231 780922681 802892165 111053752 647433417 174608467 484423909 890648853 922827489 521737619 920579403 433494156 969257521 311893647 875075248 269886311 481730308 352855958 777054350 972739661 999815488 328770309 538941109 922878771 961431841 49500435 53672970 677151475 859641670 777902643 894116211 780994554 807710387 893115005 993148881 918637230 922011723 597164141 805857763 330294395 405239813 687312118 794256870 528330697 961545000 274490651 730631336 182249509 754627760 303532359 794905435 294840889 798807459 81996546 110537886 586445170 589164081 413541026 427976361 113047466 213587087 367608785 714402660 651887220 848100217 100225817 814239058 838120568 940146713 279237594 901392262 222974351 696260241 525433346 543304408 965981275 978720558 236971043 528566132 175233710 407220514 775289460 996579691 901382709 968624540 211667631 564998105 805577772 904754123 532914640 568656147 861625765 972312660 931843273 940770515 19070753 960074048 246352585 525016390 853449545 930157121 6490260 543743185 828872595 985584005 274116905 325818472 986957943 994701727 582272842 664104144 13306481 428451757 317039675 376694330 573263384 969751727 43233175 442958965 675915031 906121697 164208951 442760337 975087654 993129691 177049026 812427250 533391029 903297875 429068163 884400399 608719776 740274148 23107633 711406034 441852132 610337916 668794488 822916831 323613002 599104895 234004872 425619972 948929411 957510609 186012106 333163097 364445367 391041115 150954470 691711058 99368074 558515337 85063450 364792015 401652077 835289840 822892264 953220875 902687397 986047933 912873948 980956216 314487361 893622799 202849011 374286451 103864238 145030222 393911158 871340405 109850144 427477815 358270104 503507088 535292258 704846835 781825221 913693775 620350534 730393675 512577702 835011686 864949580 897863906 198057614 902545328 143166318 956688669 908132460 916722212 59874306 310032194 686117334 731188200 528649015 872676313 22888176 700197738 788008213 924865481 929021479 960316831 994118610 995525697 407293008 631775080 234863235 854811569 91124419 698076867 197544960 286516174 489475313 808197302 13831092 860459441 908034645 992246755 22332242 564439047 189729325 198219962 661623354 797760016 876453995 888874123 820455556 900196977 894301001 948424770 601752900 630301287 989264407 997192983 25999109 273827380 105026732 792249171 525557042 586597135 401792470 862911885 138333241 300934985 506475814 596300320 981016294 999533288 788339880 913177422 506001880 994831276 886105614 970049193 394894909 632766677 596153944 856077199 770094247 878204168 370183335 774857340 953015101 967422692 636885480 766751572 356906108 968138913 225589807 331016082 303969834 905758560 756276281 878528044 292605443 489747498 420830616 856585448 434479013 475958310 788091128 964351931 565901594 994891903 697067684 845937601 420703793 604329797 876008498 926962221 919745520 968990085 557496982 708141186 672711022 964850988 180098483 399139911 476161321 999716519 308201886 324953052 794431218 850016335 718384020 835643897 172370021 194245651 576467690 789205860 938254262 978484116 292695078 408218433 516792755 821044597 781844255 908232807 36554758 60726155 4059455 278650239 633012673 680891787 70430448 332672963 707616834 777691587 21995687 430472485 785180702 808707830 668314368 806062181 345773759 370570921 978180180 998716314 174915849 813533583 912186982 957892977 669876366 917879932 989522585 990201397 411644966 930436967 110872534 255960596 698291165 879942531 487753595 886541816 231132720 974875897 411469803 870423550 193597074 827606344 846691783 881249119 365190947 664256329 837434711 895739504 262015853 340870276 690455602 842713333 637537627 739866274 35101085 337450158 809713284 979451210 406182610 478548129 223348202 909912936 108211293 712456234 839181298 990878344 640703970 895516983 298656459 947243740 575012300 673136635 208765207 649345273 658473039 801375998 22606067 186001107 371081737 584454562 344549416 649906257 676137968 971282011 369492222 653992207 718844419 965390918 875854825 954151177 118919244 430924126 345956149 939860286 265441794 681048152 95004594 833431994 214440930 766709954 409449830 624634115 837886057 849733005 29123618 470388943 672689164 692197397 464315401 871055853 985422328 989306373 785269006 827062431 393416555 428076891 606868565 972740672 834644764 932146120 307978647 687062946 181208119 395061534 357224929 774940404 860236705 964630046 361078236 681785455 765001057 869750643 626112365 801222787 259630935 636829920 137470199 432245952 62383841 835052150 927955720 954248155 235707865 857017415 320208672 396716918 204157857 237485493 259163110 394770948 954496324 981939049 16523534 372713718 364644140 707545051 541209466 986722054 28353815 210777695 272423410 993009875 98518748 825005396 233535315 766029296 325944674 394615628 537881363 841432161 160237126 351442596 331742624 975468360 805377761 877833956 387816108 539316968 760989311 911325042 51136814 776378027 723429539 741123649 521526224 673545581 423238169 793521614 252374993 629187039 497888682 636049090 975512031 986690508 175321224 338361455 962605219 967151986 907117343 913637187 668388245 707075750 701743639 994084641 522248705 537668236 630978910 892561750 723077862 821851708 820227735 972490683 691025402 879291606 79705119 785627735 624366044 981865183 595618414 741647855 393631538 599101469 20171479 844579442 536773296 798996098 193044592 871184896 192844532 567577253 653619920 708110941 515309872 859373713 48592921 358220268 919311198 955082604 308766499 430346551 197366296 652444400 475393534 796517427 11315284 160059109 742116842 830691385 433340528 492860309 90731966 635920718 440596496 883626873 700212067 873000843 297634389 396015766 191131491 557888266 157348242 297861893 292525255 835327866 74028068 554850679 4723569 988470878 664813575 749339622 811952082 870247157 997179288 997360034 139570530 304439573 815913709 948133365 224564506 560078932 799292832 884673611 28825151 801542768 867703664 914374129 441642220 576607657 516950750 642508843 782643133 953840014 223995058 473325602 982426796 986779447 902597551 987055314 478436023 683793220 910057410 910592773 519040443 608966177 230251045 557026310 594869462 786929852 328571468 822823615 306392191 974989143 476213026 861595784 269849750 592241460 502811409 973287478 476553714 728097649 508346023 746166228 204593724 297195780 568015032 705294963 847977269 953423152 788028940 952035241 198725690 731490437 687361608 759786330 663090015 851978454 749168177 950414648 684511194 959265274 705915819 891100723 778754766 852553458 78842758 321543820 245393160 500879245 718647943 881247009 909117600 965646288 276094607 383288208 813631475 944887490 826958533 962158864 505949181 534433905 145479819 209895220 994897889 998403950 222747609 814419725 614206596 811426456 646179822 811684113 322494719 406152001 591409779 828350635 924252890 958741840 732037945 934791524 639603896 846692033 603535960 805828875 454518719 920005252 392398803 798725666 375481677 444073134 308979781 778647901 887538089 957145114 309980711 627399244 843794074 947488453 262137308 802802361 661015340 849306258 489701759 877521110 569922790 949757566 675253725 822253000 858540087 902694723 866313529 979635348 620104583 795658290 26654195 642815601 540018512 865470159 64224192 596257147 169227947 894872714 119214588 750347316 426655886 974926904 63414624 416728410 959442614 988674661 419964611 603062261 138012423 600996311 334860802 614250661 818693876 861482335 335128508 542000826 365916659 378627477 384413122 596646998 480057379 845494042 937273046 974968000 224362288 802490252 127876776 745755663 749821192 922901150 663121214 668998263 788408557 910104138 866629128 916178266 789743608 791248145 598091389 722951648 917425544 933626230 152503719 257518016 40420641 137674042 646843949 734128728 605479604 640367577 304901459 888275410 237597370 470283813 796511183 932832471 478350181 954208723 751672686 782788231 487937649 653242355 206109143 544811005 727455302 782203509 62443095 176577483 776677116 781851324 308497736 863094257 448663323 761007347 160972827 257320345 867550564 902624421 832508625 878991833 287898437 972567345 127971945 230084522 948107343 976294757 54702895 57486655 316377201 564530702 594490834 908881083 302353820 314322570 229970231 630097832 218779834 938181755 205632292 529724101 692150279 821469964 530303292 621351943 589416416 781054168 68269023 471293015 821473933 909901478 802240396 971587246 262678412 298279145 24700551 959983383 604075140 787805715 350294344 746043468 176994344 263753109 24016023 144736704 776612097 982433310 356067771 948940282 814844048 973940523 874314281 979686773 891511031 945267146 280859295 289323406 17712677 942376252 565821402 605848224 810279265 945973250 776852399 791228311 87044657 672407403 607012375 761155348 778983322 824269222 904689059 967519836 20738061 434078710 180974032 216638808 814737722 970007717 462176055 861213041 585024043 851992955 409612683 933587184 201668020 821894839 398780469 955081854 160219843 374245608 326420628 543552940 305837782 709312599 631307815 981557300 700783480 961590550 14102773 571157088 616037092 788095156 908584405 970727068 99413312 338546605 662515448 870338728 956887693 980212991 945732733 985092933 120862948 674830223 382116026 808973527 980854281 995323120 186456048 633371463 695774149 787020473 758131787 860580699 462389886 807432873 256354703 348551283 965907397 993644123 317135308 656451300 1949605 924950510 292748608 512296684 189780863 247435009 112090526 979392931 707048931 979945633 47134721 939362275 991214027 994966629 495990711 601978330 637606004 648089354 941257381 949659335 173637242 388657728 610472738 952815917 944193047 993020291 911644658 961674342 760671352 862883304 318051999 331872346 615522088 656798919 313187298 995769438 360049005 538094209 712333799 965878789 570809820 588444224 233210361 703849829 266162056 589725402 311925437 853637293 751752646 780796000 851162976 890875830 785882678 891444560 841949175 873336402 969921108 976603060 618162341 748356854 110812003 384986684 33092878 447875127 949379459 983979800 377888062 694275440 13823352 188642446 578605416 681007243 23702841 195609560 32474241 506202327 478654486 701841594 868659226 933156448 390449289 736556130 18677503 374212103 554400191 764990353 564848690 935168815 434975900 721573014 224431871 623913430 860484829 948354034 499952167 697116612 994260993 997511415 969221755 973726791 583126181 660060041 488144418 934597391 527351364 979914925 585654506 606801950 706245267 739722688 997654997 998153556 357473509 647898737 408177944 773229884 64556930 257788193 752393716 833682241 729559519 966795380 969532726 971895228 890274598 967223195 960079899 993902900 943895363 988805953 561104178 645850009 301888078 334708371 493939546 823087238 799766438 884293376 26260487 940586983 469800866 746102640 85105352 970831020 732848449 923133822 12906315 40534259 16141657 889622816 268107642 948172971 943795466 945766622 193783772 998268899 787930824 949529274 607320394 680872587 451113998 655697631 360610326 952894441 505468652 756049996 502418748 750401233 403077027 908971623 263983247 774162884 57315073 548567985 796417497 947176966 723794021 894368498 541066450 925136218 546724196 691286583 899247253 971557725 752098471 932724763 540129687 896136544 330560744 527760900 859302972 924876055 30785671 812996067 614103477 768967442 977814040 995507203 436819369 937376782 715792783 775689442 405022602 570972105 755171054 808350110 554032813 576314446 834868733 916498561 496446354 932063337 680364923 972057486 194645976 871048155 58172092 569259733 554912254 631805521 924956335 995862316 262129409 610340003 54562911 67719122 781398256 973579582 282023991 815803064 243438646 882900058 636346876 639607186 152624141 713453792 150352670 298233838 384012110 696718807 995589072 997702678 78732453 305520971 901858481 917283561 938657242 945881283 768126759 829534442 531850980 712236886 569980447 895074637 643758361 818412552 796579224 867265160 573044592 868227058 628873987 718354335 486946343 808035307 808812231 811384865 263654709 758611096 326474793 910688198 639544989 976064923 817450824 971009835 371281979 669105101 926215997 977918241 75072530 904234599 930855299 942491355 100425712 968938677 976503788 991694132 69752755 509189810 591278251 985229407 751790663 896436871 382302590 862686799 870024424 971116978 733485551 985851223 641358810 665778392 256155558 820829441 468835489 859606502 892425104 925844974 207271481 874633451 577323352 739665131 99766138 138162487 398196127 574248319 82420342 912342943 16500852 183042572 859357248 984639677 749490641 758044949 173134958 830232396 768739662 950602840 850447030 947729931 752114285 887892284 116808953 675671391 444906364 609557947 775887884 851874115 356841057 668443709 29139740 288416076 280127393 487922996 956352173 960217180 988698021 995894494 961539618 988938489 306176570 531256609 70181660 533324674 561520921 795034474 670500011 688332062 733882713 878006546 395866874 742816106 305902720 910392900 901693729 953164547 29714378 730455159 676848888 724041991 224977854 885989296 61475574 490797339 858101484 922628399 726704675 831046721 24858473 510169876 645985263 973985338 321595283 802852919 753744802 843108523 309766338 372018098 636527029 638819090 155039574 250436453 251945212 441834370 54884951 325856766 775088992 910418459 39525659 989501635 416110282 906218948 802200548 934018101 33153525 522413964 544911255 830768519 197359215 488421235 40557003 168809641 90593607 525623055 910531323 930328318 632372194 713804452 923697682 995383675 133662046 928630350 844239319 871460958 879155760 918913368 869556973 873847638 798271611 859824178 343622681 423820555 560372301 771763099 241854223 301951159 734049386 957542178 845660758 914562416 244368244 900985774 505503626 835142190 109794612 551328909 314209571 401107657 334327747 744153012 122628566 179454740 981298880 987468840 809776123 912107139 103298579 958054792 413514900 463772118 776514481 994277044 269676928 877595409 136135531 190282917 350087633 573684769 268886107 786728262 813991368 926069729 139571904 676822649 723329297 904905429 693856325 986886225 987376835 996763042 53672133 452943466 277565632 556732836 298662572 780392443 567010064 847697544 431872448 693962855 18148656 575887149 601806058 696639921 674552313 750420798 103670185 850772961 68666145 979963644 823697828 837869842 444630402 463448512 971336005 974958898 606896125 905046065 884826582 945629354 369924286 712450181 540006634 592641932 999016834 999319639 207980392 866029187 531179712 712214009 45564887 828172172 924444993 959504163 48036263 795496771 553912555 883624146 38347930 710274604 398473065 746638097 876384452 897366990 513123126 579367867 252637074 887324825 947629093 982290985 862348927 958589689 697437646 997556303 438638743 835725298 6997470 965671483 686776644 729179441 177451758 225178954 849163996 880861720 859298820 995134982 660034929 823554371 980080742 987762012 567224417 677289085 105457898 907270930 891544810 948478822 132752352 153615392 538285584 619275291 929578861 932272817 100825289 846052198 471935662 620666329 82860832 858708641 386422702 395734994 182628114 443972687 942723531 991091343 942762974 953038974 482252397 823249799 307743437 994032901 502786312 936247887 419988369 528367407 265636025 743501690 402686434 991715171 265706659 606655431 495323847 592190326 873717287 921202909 540782273 775204786 146963636 308906261 436683459 630046316 727734232 814130028 131878293 867843288 571409762 596631509 466582512 649151322 460704494 680820926 912361565 934472045 801591553 963570250 949566157 996095270 186265281 838041681 81643640 409901125 8733186 436887386 851903671 902233093 185323881 263059130 776812241 839083142 855397056 932200377 143919557 450350060 37535340 454117190 973736374 982716141 636078406 854286998 865462359 886092291 807656176 831477772 870780876 916978380 59295666 165209291 47538741 275700158 972945442 976879216 375809250 949232385 832620165 860507346 269105943 313636439 630204288 806759569 992907416 997207974 435776351 878637342 51196966 135329223 599486642 712953808 421916705 802204279 66376981 818379117 979526167 989023018 117774266 582566230 855400732 884896087 381188961 902639350 609428649 682514479 336679164 604980024 205007038 770499952 986673619 993888693 467662746 719273110 338425938 951216514 625818202 662194090 626786502 919971788 306900302 955316138 513473961 909176841 804172737 950543283 496904998 877103010 857852864 890505481 483310912 938095013 500741582 627794339 438920899 889304014 800080847 819712521 391196567 461600036 185435064 800700643 23850541 682393218 999161245 999586108 996102587 997759577 205599379 392922897 97176191 538984460 502508319 883267983 242123282 327404585 367050737 766868661 13540430 619201054 112807719 430198746 363675145 788225540 23777122 546398898 243668419 706416414 319309970 322014336 109211019 990827893 486609347 961656839 510626336 566438800 829114550 932528550 89974591 962488715 803447732 863933350 71714659 223694959 768933064 982985082 748181545 918253015 309733140 633222397 200863925 987629711 349578087 409981747 703099236 773477349 365036519 530986680 501015218 603994393 922006241 932012814 588348722 602974798 848996724 883896544 293999003 877958712 913993914 962846154 79031523 596387344 871382965 948450003 499050762 661099768 743743940 841158278 713482769 847980361 292285584 533849121 728424620 729546219 812224914 868461002 962950293 983583596 223216128 379808685 113733621 630991292 165392909 639640583 331829551 333585992 700867456 752692228 541429362 751742285 508480116 891639205 193215706 674722455 550459620 813946887 755822129 949799567 130335939 991265899 890343384 933310208 848846268 991799920 276651339 295603835 716944661 888808724 954634401 971870135 239586457 908679190 506256974 844629289 527659175 810524162 305335305 394033488 831550352 901061235 175236913 805670124 344923380 685356906 488263541 586870449 767549096 857572093 598717832 699124879 186674089 219665472 992113477 994755772 774350021 799504337 839530903 906241552 96702072 119069290 933100952 989123456 508657477 897272873 340779250 455077124 406701823 569289568 295434902 843890578 829464628 864501639 631157061 810881874 206547156 623333715 972267116 995110515 851297281 862080344 717675550 882256962 89395308 725911967 326380799 754353731 119427950 473058379 247591610 314589983 377423691 412688343 539607920 741428578 675263790 712544077 166660013 630030750 128318403 431474719 361357475 452820705 274908573 405484062 308573220 552080272 692892975 955532304 731038054 789384416 553587800 612723834 717988152 965391648 363388790 486247640 874451328 945553109 735785508 744092808 895552989 904336570 943792262 971287834 709016061 849379440 82694716 805477081 984424729 987692838 387100673 585174266 795213169 797705083 707724583 710712242 897122315 976347541 911085231 915363924 266655408 964356272 667036572 994499436 796881123 973445838 237402839 624467377 369361579 939967524 869324475 950686040 565505756 914008530 723934934 921237977 743673480 755362884 935299469 955988026 486632301 954343786 482797901 928311835 205184729 644308379 154075406 585004022 311530802 324731571 883303194 980741118 849304570 938719197 56519526 597385154 861402099 979728357 40426839 933029153 499050490 892867679 23752433 447059463 969913309 989618508 866883550 982948106 879505460 992695120 945986319 986655037 520774384 975894938 818479947 979148903 488074218 919788261 83124370 690206144 164807948 953438314 397644842 687615127 517255559 691448996 978240560 999700165 70302766 764971126 589377550 913705645 768969854 800403813 568986032 728111002 978577883 998621927 892544314 933102885 518480548 718219664 503644309 878180552 174883841 279855972 278655125 518856568 688080507 815308278 534608848 590966171 593153661 757766573 509874558 686147761 906043225 961051837 988106516 990269120 849034390 887532775 707716601 709257785 409265309 442378766 486141202 516157651 929496487 958482373 224998006 556334286 703025515 752835250 476041334 693125033 354093953 683919236 392384183 794073265 819452852 835816998 243888542 851917807 134002289 431590211 826937208 962412468 869302471 986049152 614899845 833070347 514789554 654389766 380187406 876638053 290531396 364071299 616813689 961667315 562765130 991148351 959336734 964552582 672136510 909893286 441970907 530259059 868303607 989433989 318141363 490008800 625455874 726510786 627594900 788326219 598539384 605043146 326358073 924661278 8172472 175745243 183517571 969782588 703928779 894787268 177518915 457559027 89157553 475000617 734596027 894410428 590007626 669188503 622870556 739133160 744389522 756027999 370959687 608360968 425548456 958748988 334146377 850919280 969562120 976393108 551344896 991210010 406855656 505494443 329933837 618609618 690698354 798701439 845082189 868915178 225154354 667055604 551593679 605342066 762151441 896121294 948312763 969806205 224417592 269454488 52356663 418571911 277083068 670829873 683863087 692012477 599869902 842233693 594427818 939158924 817730403 855674071 330854240 405029015 890158375 919327820 923653448 931835988 193082277 600746182 531766668 983480991 596779350 712688576 298361323 906265498 31097851 367179162 804689998 952420384 214615340 586105228 324358834 444815021 862528824 880402941 354143792 809944525 236726824 681716097 681168890 884599404 470502733 610937170 327839960 704953774 785387407 927537707 624922779 887207503 134207992 680967163 929028755 947226715 857678436 917165479 983819544 998826559 619557637 709999488 816292620 914269657 989584644 994605847 451768452 649371235 836965920 962621495 384844094 803425971 283785736 978803565 142230909 637978787 788643676 985838101 482424880 984939432 253334712 603063475 82648591 508414183 54659384 518252167 765763228 878801007 876589296 879230607 762637318 950854159 162569481 794529506 165363889 313285124 876417415 946438414 772797899 958859921 277566945 561382688 180231320 274752121 488594459 631705731 833892625 930096128 393206770 643466928 423959988 710280391 585074477 723901369 540421915 980515929 609411783 882336319 658124155 886840310 834620031 919606253 333006427 793830403 23797969 961697246 796929320 911583314 720538100 839523392 96646398 717554515 993487071 998148267 91120009 122071381 120541677 986767338 62560648 516624743 973541903 991638747 185135862 924921718 791123581 840748428 670806560 958567717 255114195 279871771 983775812 996015075 574629820 807723973 494681780 918101589 15749468 881502470 233899255 510751783 969422827 987737264 882365551 996521801 872623437 895053596 158849950 811971987 662292761 878504056 236535684 365377425 359418372 553333490 268891261 741923189 887760880 891852465 663020283 751273828 985596448 991872859 793668960 812196677 907865064 976731888 806468455 830490649 985786571 999899586 103547220 650257129 613967260 664466091 904051364 962441913 87911219 386303084 817946029 830937878 984248699 989820814 652599297 943379527 342763933 430351131 283429842 310867334 746672125 892233185 59458455 775821150 761975070 987465009 580826038 840740309 551919430 715013982 965039908 999996940 661976051 898910846 271160827 673029076 142646330 430191882 419774271 553136937 419851104 538342257 991353132 991502375 303265154 993878770 285179487 692380840 496353124 886943484 263062109 338504173 57689296 235927114 41718778 758577752 536236117 779320328 511943566 634534293 935912281 967206634 656897718 855638568 641414955 750142944 825121695 944788653 888945561 967132064 17607475 168866593 984473990 986230563 488548434 918362672 420192041 475302386 992027106 994970206 764912866 834966345 51185013 681183111 459742716 834352692 813509920 866471644 512472823 985906122 47405286 315660774 545344539 801290101 957010451 966426573 395076140 509857463 307059787 418467391 750908884 828081956 21496166 473481492 179052273 932454787 497631868 800354474 944305761 996825486 224103621 337532544 57278201 99427203 419285788 880604015 260147189 540081075 491515168 845691025 827330293 844406596 579576205 620416091 95479986 548067724 773017376 857142455 490831502 786320783 649895858 694202390 850689596 868099659 600953382 838551411 792012891 875730780 200685274 636998691 683927868 777588567 253553802 449928379 241955907 775217542 585134139 669692195 306027485 422704842 342522592 504429255 614080382 894806653 104027916 258615652 501731222 951776720 152167051 520471762 164007236 491098938 915137133 983768619 12512077 830904045 192173314 205238907 560859747 846185442 222648022 233662295 526287465 926064951 437970104 895912143 359650950 606571048 445988525 782155502 144320101 795615417 331988574 393023141 869832971 882926082 542164567 999715751 969477319 996088903 387629685 695858854 843246550 974611165 612879121 738114654 762111385 802700064 369535849 587174291 1502800 327324758 212250986 809665178 519556606 569956093 246314207 710096032 574619234 932621681 487487884 823852530 112470823 695320919 431885024 480907276 845637692 958941127 414944061 863058079 504615179 885346875 708192036 969866798 104105665 740338671 406456361 530924908 166320820 898955406 194819000 816426500 953601073 997108349 456017376 720964361 432882328 526316164 197415356 230642525 626688841 924204957 393731229 597243323 602062228 654368516 429749154 627004266 809486056 889035807 613988863 756462262 520854164 563066708 935164789 984990981 393937608 424614334 452652018 649480067 761161074 976428784 396930696 586750379 454060302 793923126 749950373 800128459 525439200 588883011 827932117 908213719 239992864 385233000 923334894 948266134 871829520 985791591 136134968 543260459 318085776 353379249 988146291 990228654 991963494 992454567 618901084 934256892 206191221 270803980 119626504 493413656 836205532 997047203 750328522 757475009 940859512 988386993 216141010 309600727 75114763 397169774 752898751 804537062 606146296 781194737 17821647 918461136 570991629 620074551 964059205 988717725 520189934 775761201 868462494 869864211 3690327 657617935 91994486 180253479 652140879 864491102 981218084 994905956 865959686 888011353 80657796 533008744 925440785 941276379 305606063 714760597 861122508 932191667 629661246 750708382 167121862 456641971 973689942 994755639 330811774 495549100 46989812 106178036 766570328 890669112 832019294 906059474 342835954 527747246 585056030 793531018 772346625 900689791 928585828 968099753 894921748 950633857 798371883 975568560 40393719 404461685 482977946 777167104 674262802 694448806 336459323 992241438 459912758 539087085 682885004 861468834 245023899 727353293 609577680 890652485 748534061 934822076 412238624 713174396 767278060 920736467 276309192 911518478 859638466 971118717 839508374 980870660 910495649 974085348 759253107 759442629 879855537 990742336 503782530 646341505 201794693 241932267 525491805 687259253 8099880 16970391 884596924 925339755 387049471 661107238 430558510 849746713 707098581 810509591 95850395 961780613 782691983 811513502 203557686 918573592 215107686 833534026 260688904 661717070 755783181 798318618 450122651 853466078 86208998 737948455 270454340 363977202 106204993 374400187 744931110 955565715 275482555 808293425 409906919 777854060 310267949 733839337 35936433 91503658 928299108 968873628 227172442 234585955 605515977 720938118 921256717 945437126 640725796 764564809 581230954 650536782 668828156 911860964 695393753 927648337 874494843 887437944 648552746 707344935 846524562 993528988 898459636 943576570 693320988 993075147 347801917 689209427 126826212 422216839 231892999 631198228 528663602 614545658 318083322 645790761 485788330 838143611 826353958 829511035 792766286 947964397 242583115 508897715 198025448 913738413 31956697 344017675 101505331 783890795 453793812 553552831 262153684 537855297 896096541 968371480 945450819 974294124 260998611 661030419 784493646 813782738 607744071 964653623 264960604 773606979 933933945 969170901 941031345 972142763 27527141 748242029 945698539 946398374 540878608 993810247 344179324 950607492 210481505 832005309 220667396 758976070 769395954 891181823 139150327 813818963 384798122 551864270 431578717 602473493 802495036 932010189 205080691 887954765 612660624 635025729 636238135 982819971 616337621 911040008 760174830 784951903 689805173 717306195 118921333 588181287 123643144 893413388 32756703 401863516 965979853 971932540 576216511 783186092 893353558 901026951 684820649 736276386 510216205 674359248 630457109 759033732 388668990 467370799 530432978 720762199 333107515 450046013 826544256 855304061 913530932 914996426 20228949 981771793 232831910 789351409 232349754 579727618 712586199 984395921 797430704 934896590 41033025 242653819 718580321 968488810 717497966 951610296 267235019 970784931 684149656 931572695 477731016 506347630 26750950 775819768 805235742 925411653 123929334 731951634 575113594 998733757 396733058 530514350 712084901 987253143 13310271 271617858 694167026 747316407 980292280 984483242 307627250 436100264 109977274 232477665 993740760 995334861 706695737 745701803 172443910 647375803 63281268 334653956 134541844 858573891 646969007 664663334 924727538 998279705 335855941 524812644 648898065 655355984 68123497 204633509 675809293 865031766 715943202 864485474 767029836 860848747 74136118 120586429 857550490 931624336 479234465 851976765 763131970 981394117 796263172 809952786 503910583 878963233 626477928 984614193 305473930 702439710 267179359 291405250 928717058 940598790 844938277 911095886 561267938 935560276 135514525 731840608 65521097 267725193 569623338 865255338 302150257 385136040 359450500 703217237 975528437 985226819 75262054 90478829 762496699 863587418 377497911 531467720 522571197 972623791 265393403 405035595 544590119 624157318 683570430 943411880 68613144 853132504 846109363 860762918 494104885 755514202 164364644 849879979 422321495 695634044 454065270 778911246 232968056 899209674 409462183 545561066 550510974 828876011 214552739 677869328 575505711 955069066 144987746 199237612 989591929 998977482 917970285 935983601 149291422 266050563 296658336 688075002 221905313 609519980 292722001 897080631 573936727 655770482 183572836 937075347 276941090 856585478 494779654 724410654 942980679 948212589 718293 571974986 170488130 733111187 554809334 945050070 952088841 996455335 913647736 985468956 792048277 975419862 25662052 784253466 733599382 750770182 90888359 358665541 117792635 152360890 429140676 716483356 452257227 626028348 877081977 957615094 38732359 234908272 172599934 674696855 576720398 626148026 75460663 751172694 58855363 145674532 467336590 895027031 833524290 884307871 800820579 841078367 107021840 508809768 326945455 384757176 328278923 845008025 881782007 929275767 680007312 722230368 802635740 882438136 227120146 517761844 59061889 226044534 434226200 635490685 468801907 829660709 2913976 291490007 231118992 491985959 567143889 688961223 211376336 310098234 101173068 843136111 289413294 667716535 749439432 903986623 460621235 559323511 861885924 918154292 878013501 882693766 668209382 676733682 824832135 932026075 107194354 525563166 133108638 276332776 491926154 826508260 459571902 495908568 695981309 804995282 124588654 248020943 950250017 951472104 420004855 862311552 550191271 699664977 740825746 769202963 393627173 945910527 677913092 688988100 42873695 852080863 394911315 561865944 622215647 787955375 625473706 881577954 719040405 920882494 262178770 567693444 585905460 965763046 205762544 400258437 648415596 877791812 892287887 940180440 24516859 672700465 305111616 724026555 311896321 786013773 616534263 757152786 819926410 893733820 643208154 740241514 838573647 980601620 392633193 944450501 676316982 924189008 853883675 915600182 440687755 720078850 703005330 743035023 80145280 295553213 893179166 929966862 299805863 638893631 245368607 376908333 198765986 225223050 191355046 858073736 176395268 457161396 561467854 930185464 111259688 232015347 885641196 988089843 946421847 950550999 969386654 996397927 977274653 984636904 153697136 698438681 486730613 754135600 343204324 828935150 662920876 955933885 384543261 625593747 471446203 723192788 607007061 679137465 624245153 969447025 408135197 546352570 153935285 794570739 278939404 803835172 743348855 745485027 551493808 625133038 701803630 759885520 630684444 788468859 628105649 922848584 696187397 834440573 510376757 911248594 780343551 957822789 276344318 460651431 421352837 750266917 97199422 959248740 412342388 992770941 828466368 898687262 203196324 676802724 256676841 425379650 780502043 899637731 168546122 234810554 340940112 729522390 514666018 845063922 736661221 942954436 990163177 991117053 412414533 471868365 292356792 858761679 974912067 988079076 849265033 917235512 872438217 955294175 937129293 974394114 627296577 955048805 617608178 800149299 614899890 647919515 429191659 672106740 890556323 948019570 853303017 863156509 299673 27139913 503589657 871073461 336428085 662064434 641000404 951489111 333029773 620102363 845633379 964381493 60625209 360925372 171904944 337573147 842071112 845611949 95394692 746993751 559565114 843769133 431949114 938713067 408294640 539274969 883992140 961820598 662358676 860635224 4746501 368404947 988211983 994901360 863541928 985460724 237888051 791297959 972405821 989498807 529022701 608593562 849361585 887092365 851956422 932303197 310514037 958259296 553842587 560901579 626019893 793713419 26219861 243777528 447781615 565763840 968560070 987141285 315368086 647817702 684616191 758573565 625271191 716068974 859491244 938965395 215035331 864886866 448907701 872454589 192440516 961738605 42734849 760673893 591204390 707023545 598073131 645222619 774353461 900500658 735934423 981068320 914099203 956150831 568958223 688873577 462565608 791319660 76550959 930984758 527617433 705572047 203259298 413335265 119035547 339411797 358355895 530938941 896989939 990031438 511342313 802953346 280378095 744685557 829576915 955455755 152636095 576456337 298942038 321873579 172130065 503844019 545968762 874014238 704841525 836118812 872795811 872845463 134521151 694070144 740075017 986703454 99478707 341353901 862223390 873221008 298877095 703410106 364988732 615763611 529214609 658366482 145659907 863206714 40180509 315356623 439727479 815372883 835126736 988701075 168295285 235778692 859740422 882775466 870152381 933984384 94379656 480522525 286368633 858031258 688351344 844237189 354703869 923645948 900292578 952243432 258820149 837019756 581717337 607008049 436476527 603524880 656527020 993424720 372413672 451389149 627770212 749470991 158294479 349909044 234435701 310776662 640911528 990209971 366442989 979168778 857740564 961808756 388776171 927750132 904650522 956890086 473348130 877188701 173896831 324976176 237260999 579005692 607110733 867574114 721738274 957102037 510353538 604183041 152843087 203423873 868322666 882518530 675084563 722959360 430859406 924084486 247799295 418240173 551459822 637673762 944138985 950876973 222456764 661470972 130737130 221185312 458507885 761826999 585034133 766925426 379063441 426488047 767819269 923656898 501759774 767372944 762695124 803431657 823329188 956455701 441187477 884503825 997912459 999926471 917418767 959473039 668605164 936807921 778314400 825176211 290049311 881983008 941533942 944033753 690079455 973680026 932556256 991897481 941183259 953787862 712153811 869888904 816707598 864365111 822151972 980700744 16788892 634020744 661542720 914047325 371172679 583152245 833197508 950441277 12097243 612735796 522145321 723443649 527322647 786660967 96038364 808672606 739424461 767467549 813790814 953919603 883597216 946107256 945689004 968003726 649601278 724431685 96764139 317104775 456407658 540667117 808080968 822021295 703139983 974245974 271873804 363836882 692357810 807821467 614888915 793519187 336091997 902272706 640128843 847708791 121359691 799011620 517977429 685784374 733751681 884904235 16700653 182847935 939878967 960106204 236398871 266820597 300562012 909234616 631497981 946565122 74722963 146148286 805841134 902258138 301335011 412461862 264045225 469724299 276598153 799315587 446473546 782621500 78025114 83973823 690082871 709866603 820854023 839563249 818093438 890854889 292507880 722488778 206374924 424582753 742148436 923958911 407406401 735283812 633506311 792051840 49651583 257813362 390249057 579967140 41055039 775923284 701533525 754470577 10891437 340025730 852270509 913986580 935753985 936222004 506495473 836463953 399015670 559948641 598114614 853001455 663157441 694986014 748717954 757493718 821205239 829368816 111549111 366704896 249504383 710150655 659661690 670687356 331300868 741958009 878461450 960523604 254626513 909756468 103347891 777026691 32649140 668906630 384088928 821967704 444527941 978710763 296497985 444158550 663171531 691173869 255398912 327942080 890989619 976591565 108760077 508401293 899644398 915098213 219260057 723686603 186248696 275117013 394976355 599574216 11978975 41036275 793571370 919848330 914992511 992481032 738477002 901450458 658403969 940416537 185193922 461110344 834302868 872804360 783979609 942053177 611745747 627001053 297280124 317403327 442549209 687101282 591192577 768017029 40637037 136682208 190481982 782336484 249424490 547318544 824696468 966002426 802504587 848295946 194195042 575950201 806461323 835839289 957075007 965720495 464549159 972683229 716448449 935111026 379398147 628098014 475910348 478244596 79730670 952185193 85541163 302089912 664557215 728202311 154258667 879583575 724766079 887569965 915864241 997039310 27566091 85380444 831070844 931677963 729831618 881927782 984232830 984634912 976124585 987629738 174325947 243253871 355319407 835375777 269791245 868216133 987052162 989509226 243266830 482836943 748683043 979865257 660008268 727966513 436143796 947975688 875815639 951852102 47395293 999679610 656613672 794230276 661670645 700800335 145237917 922937634 931571085 993487134 656490229 657499249 497050961 634754961 937705390 962285850 257128124 361852011 415930111 530595309 701888597 988602073 182681908 391890797 412558879 488769138 355759313 889409968 623050097 824433526 139455315 755799591 241129424 292011857 199262770 335907268 880941569 921469441 350598980 723461377 86348609 161132762 142148726 307389837 131137369 277697325 251588247 447469176 969807073 985476088 194730131 273725299 235644337 598642614 133453073 258471283 862967516 903709211 97474629 672128014 951217167 984355409 597467246 807342937 959381264 979010457 194924365 280867733 631836286 704600012 58499482 571328082 152634340 942221629 56146015 557803757 658398429 764221239 346184011 546941435 402316114 550506296 928756247 939242411 767365919 958017579 468791226 996067719 516462890 814453067 759112239 991480712 198347443 834598182 377831601 783384020 521775961 740549100 512714422 873181335 457294714 900126812 294489014 864090272 986931602 996427235 236499851 553975927 497970209 774135075 465368443 789767903 716698717 909891368 469001782 772753379 615907156 783612551 741260713 864328985 204824528 921205430 790066286 836733192 916247747 929207081 478751338 759409302 196566578 892079120 144866482 689340077 95309426 490042244 850087009 957487169 912440834 984129693 494835146 730013641 446738333 749899970 230234596 902626058 38302440 542831593 51110049 924541544 978906593 983257935 771133066 780464853 58138530 631168967 617359262 943786656 175943752 316107150 475368452 524714183 294301890 317110516 521094828 710725998 149173209 300860162 470842392 559395967 890095703 951831185 270015680 738086409 55005721 851162074 583074427 744830459 894039922 912751408 662930297 746736383 245499394 515465565 77963750 107043130 225083450 567578737 915807054 964697669 301897234 698489613 159658339 425127960 685886116 729081869 320442978 469222668 85729398 354871379 744283598 950236206 842174807 941167109 184850357 505237564 695043022 715488503 294399191 703022474 721985377 987466684 864041893 865260411 658548108 750330438 792124422 800243603 693532067 906369658 940057361 991763062 448108088 461935080 198659686 973656398 641976489 664557800 552065090 773665354 223437094 416114081 851915693 936219879 839744143 872011288 752725524 789791863 922911507 961015987 284422605 286335699 466481962 488986085 898208388 903297439 461921135 752591079 866272753 882464002 193319845 329086193 478235379 940223502 261130953 618135417 994443755 997002545 444411847 548508163 51597711 180929050 568500385 649436439 796155187 813301599 844118026 910385318 636411531 889197556 487611914 709826896 818656794 903950548 102688074 628564347 262784683 714219152 655760122 701280295 447485152 982989695 334971419 809397822 437750224 907188620 21300425 182213188 42249587 458656311 612041657 845598577 373883163 920750774 516974831 610524577 46136824 660404352 79857882 462797450 957969778 982787350 150817357 862428048 93950300 895843428 611675650 991288609 134032996 611809922 196402645 575764378 81735054 619191644 279238666 386785778 701992082 714899027 794932350 893189232 994967673 997088869 406186734 738046305 339363538 743237901 71966036 383133094 685597838 823743209 241354732 482958904 18928072 213526556 77405254 607883289 977220537 992740179 389159248 601976406 555888882 814877228 188211156 918260171 475521540 614291068 861440755 933279550 269748112 631194264 659540388 738336030 524601303 770550719 64167868 815815353 12346512 734198604 486368924 705817035 606222396 627763662 218837586 465884555 606730801 988452670 507855503 855446403 72842363 468013484 188955839 362561710 269028283 694898157 447956402 670229475 187349878 305280516 339824315 603388180 622835844 962519795 7528408 859509411 989937632 997922519 600706787 971435285 747055922 864235142 823125491 860531907 682305902 751579642 840771250 984872529 454280583 828567570 594272015 762663682 632422504 693598398 861287407 930023332 275087056 813896875 606418829 829628415 757633674 953245729 51039630 659804852 86654343 248240862 998624770 998939098 127022318 422961691 244406712 639498199 490909306 534829983 453987627 963555244 629559926 841900332 433100961 813227891 271597880 395415801 990828372 999409685 562711281 914987135 82101811 168655141 646320789 747210512 418936192 645618741 372879459 376828003 723751428 956332996 228876374 405258246 175233570 328572507 375215000 811350903 244180562 821452122 911516488 975773169 252524882 623734990 755710282 822226669 828978033 849197535 162810473 490201661 256656546 879814772 291220322 320361210 60495596 347874249 964156215 978479990 355356709 754380028 226358149 817217543 836463054 872764860 852833683 859708488 78252128 772256639 555022687 630066973 572067948 963692750 686381602 768302048 804796302 898529098 265120187 831339805 224927169 576169660 4735594 843889758 890140875 910214964 119630702 402073062 986798530 997960145 979893312 983550058 202682677 876497754 484059718 985925065 544337753 741394170 762463285 804281530 765996573 873967441 284764539 542563392 846225836 959238246 788017901 972799479 896546112 986907199 10607209 833383396 160332388 523406531 888247056 892017592 934448919 938071806 989746813 992445263 337077809 761259253 805690654 856797103 498264664 710474667 344228474 560979641 793553359 835040400 858873549 980988626 919963113 940473310 972970934 975772966 664538878 901753239 670332828 869468840 77281091 918068160 120277167 741684693 41092331 126244421 221809756 665807050 140100096 972166657 420713540 685337433 684440269 735646259 745009177 800539259 123215756 448475966 388191658 539501993 22129424 863924088 925434069 970504137 324793121 508178810 25670170 426726696 62443096 934293325 454683986 810329207 217749109 535461234 362130078 942536077 516217901 732052294 911839407 957214063 901305724 920744430 703594350 913363717 941985888 996344041 737334830 737657035 860922544 881770649 12132345 264363057 520793050 856606797 760217754 869765556 302685178 492588534 778227109 920983226 37499949 911481528 688631091 932579395 302263606 953117267 972996655 994909125 932118800 946892170 509052459 936932341 469324246 664120993 116426017 850293904 772676512 792360795 887218524 993494177 549827064 821867925 39026965 978860150 747058830 851496403 724633254 906445852 24017103 721078180 827152005 884595279 610513418 743131701 18344595 780865032 568350440 646522788 227223305 776577282 86187424 622926630 559931866 976860734 684234117 977975806 121239998 481059030 904654517 941158176 922572385 976342461 817308257 907497097 530673507 999585840 492904667 933419616 97670316 881993362 99339121 889889215 762145982 948501803 474333494 582849534 848449106 922771562 926392111 999342039 448006618 828494548 568657184 877443647 769395294 980678989 466852270 825033770 348488961 879505501 435629724 821945498 881555434 943347097 975874174 979856114 226711116 774192927 429062529 506133807 268241023 452861992 462650449 783258009 793512743 959237317 406604732 947209182 474852200 699239718 762553474 771652148 676708952 783668589 315425579 663422234 643097024 887424793 82123055 119614594 644298646 726561203 400134546 470519309 380614846 523359717 403423562 568539584 166848321 346287337 976679980 980930912 163134307 620016432 306740859 959140732 80268828 289561194 825630968 961928261 937644325 997455099 201945116 572286177 692691345 750209460 547262637 662026170 466376597 711889876 997474543 999679707 727274199 881834853 999121855 999534038 607475260 644508987 593612664 945558853 601588993 767354905 961510624 984076839 266135371 429461813 648113008 835049209 721662864 875179592 901304523 976297467 949180426 968297108 754094394 998676687 117080943 473071223 806352706 897466236 135541016 662152627 637695600 910445750 578545675 820801317 538823195 731984752 243839964 285083677 740621755 808420560 192983049 942777927 854495457 918336010 993645695 995045921 289415968 485653539 804386658 852680793 588588286 662877379 321539353 906918341 217909357 565606362 548421482 566537720 276620075 298203837 827914968 890824231 603582262 950540740 905310146 933739763 807045059 808565971 950571716 960397333 357923677 653275795 674781565 785442742 359602295 812049672 103009226 940569572 435394093 634096041 274211702 724378334 186203919 364628258 150649947 453225338 263487397 346290673 302015791 980578555 816619453 876206480 506738871 722688158 622348195 740475516 754273741 938851757 504082712 773774480 680624125 826393195 934374182 999357394 305000318 587485192 426583253 798149804 614460598 712236873 92054800 535326702 884700000 946039369 322792950 828605005 179599653 641911296 95466536 160078189 433658629 863688454 172237806 631736892 989379154 997283737 418325067 936249775 938640505 984643920 978788236 984771435 974201513 976763641 921542249 975528567 903400947 976366682 48825133 742629151 806143417 991144632 580351617 753519933 589281315 915461052 792370516 834246879 931051323 971983976 473042461 580014546 101367255 489181492 799778981 934778670 967765492 977043073 225185650 404261091 607036440 766928141 855333595 875505677 176196815 563836676 7717697 381442599 785666992 799327182 797821259 830237406 646361415 790360362 307132271 719894209 6992822 159114290 723505436 820739599 563352396 622730392 445308833 919093079 454817046 899024476 877422511 878644654 603858426 719262716 293171460 647440242 110472564 438812919 319154922 848864076 845403861 920394979 614408927 844798573 850232588 856157709 794524566 956261596 824674394 834287153 733602853 939181220 543688149 869061098 889402597 965622710 307045039 689402943 481817353 868689141 103641559 295876206 10585576 403188036 910891746 994466207 325147564 932524446 630772848 631775483 898160330 932120102 302750239 547553973 224544424 738369281 916511009 920940394 857420595 906647176 471701834 699215903 79638777 774256566 906543746 950953942 317761890 470239054 85014910 786622850 197548118 386322881 663757854 718866876 871067311 996477721 584128747 600730565 929817665 948022458 470469580 531405130 955523517 980253140 157434228 179832960 691409860 713036319 138387229 744266141 216951342 330810539 301821613 573235699 199557906 831791000 128607436 314813373 467887120 756711005 687986486 878741357 164800214 314317878 665398945 884197332 495657037 899738733 277246600 453085318 542671145 685809485 687574442 981846472 159613198 655571556 80816044 188177620 657307241 866431113 959766205 969866642 499661963 955797004 195153791 442705512 805174842 918813418 184151642 205948792 96557546 802422473 66367557 116068055 406192318 815314286 212866050 402236736 243111532 913616765 635573160 839097556 402877279 627040556 284594554 696024871 800980807 994985070 574265428 643440461 887575099 904326721 348324050 400245416 546820194 969332955 134238616 894960539 565573393 733039238 515521869 907405755 271686097 430668458 172448790 808286236 6108494 115614321 331978244 837440389 465352921 962987159 810064069 846430189 524513747 795057140 923498013 993480618 202657211 377167251 927564134 947261265 345233238 843327956 209208851 612816129 717115534 865013887 92776682 815494668 33468983 419885932 761586333 836899676 765430684 824499831 987739833 995325382 217999157 239535139 369692821 665135052 747586318 874419458 463232714 981881619 965331079 981853411 59269023 465427572 817625158 852295604 212292777 508321171 649470739 868106591 128994923 492108176 440520064 827171466 440904870 682259773 524284075 718414792 990930552 994097245 79993353 739993761 542771225 738688318 920740061 923943310 141658999 608960523 758730840 911388717 671264942 879939321 197529745 977833677 61319819 592133574 618869502 687405635 105227117 433433500 83490257 226501989 815499264 894366089 919771967 957344438 162218503 303985062 622442257 779728226 940740427 977212839 763844928 958073736 751685358 977627310 457144732 632859405 412765423 571196721 445765535 789485621 768868821 955812972 954647118 987114020 45981303 614348137 5697580 985897822 740341827 919274150 550619550 766186393 575994401 733391913 394892242 744132173 221017914 814375044 596042019 889814384 933305175 974710279 870778107 939040349 698463887 850782689 745981964 976888288 362091468 848944236 613200334 642899535 332294252 622583018 185744785 436401639 301998221 315819176 568185908 834029530 407752805 994707949 544212122 953536935 603147880 633353326 427056127 924786095 557295028 772380301 715209596 899097645 764982912 956210786 858590954 910648638 436610099 657972236 292731335 719961759 211221351 492529034 851844428 981426643 711240707 906908227 202387521 600366317 613520605 993631739 780889590 952925903 543297875 607415698 245618569 527306416 50418588 896972106 706816486 963651864 886989530 996322732 854693208 890290362 435456643 483022258 646466288 651134808 274198557 965659711 12688773 515895564 226145425 491758507 760355353 851963220 405000815 722423687 499838789 727849579 416649536 736770099 28956606 369934212 776168279 910681148 789012685 853645682 261927616 617919623 976503250 987618304 848855412 978404630 821396750 954159075 825186681 902592995 562583017 960403521 654998836 661711155 876926938 987202306 259648941 610047392 48328994 617468267 24705409 460476236 561250541 985894094 168103452 994423089 598408134 997192258 409542540 780871118 304708320 764950848 962078331 979818038 235896472 783767336 79328987 756293348 230187273 667116768 65048694 769301570 9438027 193365438 263734076 666804119 487032869 682282455 575098305 688709351 767942715 964281597 851125259 933722695 417560154 708659224 244733399 761482702 750089127 941642670 109997689 490570730 389839850 587513455 419159356 937331458 52236529 513806475 117436183 718279472 831591436 855163138 959286008 993936834 760819196 907896556 294620161 986757373 911997784 972931633 408312165 526752624 49091804 811058424 129021039 474140410 985468583 988254002 108485188 417855198 677982404 709648585 704605294 710358457 435097403 572985619 747735309 804625392 721285666 951642825 361776728 900164518 435459861 892309628 989359329 995102135 469931382 579970770 690089889 874776894 368111261 404029878 485984690 565825735 274419904 968995662 721498850 821749340 856105075 857579269 20124430 84729330 183645899 213364014 188158767 837672224 483989300 831751879 690876848 828444412 165851887 893786605 217417808 898908794 569995685 728896369 630639971 645581471 670927865 900692409 948421281 950418750 174964333 370474615 611482202 919045376 28279706 713708627 880919952 948484114 570093927 596248784 731506952 934606259 922695196 970810710 720487885 963515475 299126848 634408736 92382250 792529498 619412626 807983418 65193852 900408688 409775027 783824385 984866673 994521407 131232591 889068396 441474271 549913957 942966428 995990624 477884760 715169553 255828024 593855277 327608079 661554512 849603509 991269762 217378604 393509076 258861778 717823392 280390321 907379427 185917610 924451993 947061237 978427874 982746538 985888005 622085541 903918606 51697428 440843487 19083720 467578873 669957204 680649779 598494747 710253526 661850101 811760358 665290860 783538162 847975332 919651990 213510662 753072225 831968691 864595319 341986768 802170799 847817523 969748786 142913908 735948463 478083958 634520508 63801780 678617971 945153384 981120877 82319300 401435256 66291527 673104170 38352046 990287596 940291909 981602244 956221231 974502559 851205080 946592090 478867083 600595470 81641523 959074668 295383249 374026390 606455749 884145122 585146620 624813266 723116911 893673448 415678875 908087306 723202589 849696054 903418542 959790730 952425207 965956305 667536617 777672107 60164207 885093305 974376796 997467944 232379942 665510963 304121462 873900484 490485966 538742957 580216411 752902830 466880026 890833184 859658927 866298060 690560532 780585365 467396195 762538537 56305048 444919311 966007946 978050833 759822958 925038001 343411064 549662141 721198279 775130050 485074971 674870587 374458252 480957208 152353722 715890155 28797056 89679741 962055160 997263258 332935264 582228941 666273959 869638010 368907992 503818244 637417958 755626320 575199739 915647264 344197434 658186431 114130943 403704348 597049517 751734723 15117265 136399710 31462705 490481686 285609269 840677476 817663884 883141591 801909011 862187579 651539080 843344486 628574904 657153315 483666648 491334305 138186909 651897118 510473202 996682026 148212340 701885858 547741272 587120627 821913480 871835252 392423758 576949318 870716594 953115992 972478614 995529571 47518839 195716140 319263952 397418123 383232516 930604967 4728871 726300689 78204061 818618464 194076211 198537032 804336583 913095210 475291252 850170979 615503941 641739523 54086255 283447412 445815504 659166104 749615560 853208932 625137758 959961400 100913786 888672634 8432938 143833183 174632153 561890710 767000380 990295391 56631452 364862140 471924712 828819328 182274427 714040643 684545822 848748289 198080308 233034454 282669327 976336491 530611998 832406407 621802165 858394757 398264015 866033730 665816625 945998207 14327883 685272082 35180106 851649398 360635890 386672831 457178150 763270239 476868773 566691601 635926561 866413289 262727142 451775782 122500812 354589862 997802124 998621861 219278022 341004780 555857684 709917758 725427799 854371893 776353877 910905397 1184941 997604317 395062144 680245931 893959271 907282495 749841579 823474774 23261401 882547275 966694099 991388464 926311858 953964662 641518204 723869455 141190429 401339807 302029689 715865056 796983368 920020240 649050030 689922134 344064871 463201448 93480986 157205143 168018722 415949070 504708944 830311273 524829365 640656902 661339323 971796890 146391969 476755409 421698926 674388850 135940633 903317128 828854691 830343812 892549255 933476663 996091205 998627402 843248281 944560625 679451798 829489143 922709584 940338557 700223163 800375797 167195236 490620767 58081256 832974720 893999670 995501287 365451056 854888945 467453747 579280441 53085756 213633785 292009452 797949360 464085434 904520492 984265766 988577359 598917190 640693481 480881385 870216585 776344318 933870484 396509463 406637365 625138250 742745667 610620798 952733629 676071442 679596179 102131621 221232458 42726247 351422541 203880590 673247788 371216810 875220888 910871907 936717719 449718692 850859161 133341586 138080382 295999968 409942847 77262981 552610718 796595952 996004838 516499382 659825607 230606539 835779538 105624969 694546470 564616 600770973 311380080 861349179 834811972 982096305 433316837 825004822 316661176 924955055 912723992 985066246 64033906 351826531 576742462 659573818 802200363 906177706 363079636 671372059 666581272 832356496 117791941 471626282 472511143 931639330 111072452 123810073 588796938 956737038 671253720 989004472 745564567 950850171 683695136 707564503 713370043 717906103 396373456 612864942 403395904 414660440 733292427 765594701 480897271 876773747 574251365 895598739 231584206 743121356 215344207 447015597 914923045 989458669 781740341 863434208 177190035 341262973 720315512 827333526 474750672 518313430 276179794 879421659 203498546 731541203 830586441 957127835 113210560 465056888 268743439 336108978 660758702 788774774 897354342 919220325 264671423 377489580 304674409 778925593 941760795 999197983 828194957 887492096 250310365 776750722 779951183 875807123 941048773 982055526 250241032 592463054 666642809 737531827 254368788 350752394 163281846 574940995 867982045 882581066 243733036 367334621 233482643 953748989 674431071 762320535 367001274 420192293 799271205 816107035 743819220 799019924 400796583 862349363 203610367 395083620 80981434 602858587 261688945 281018305 500345713 989215266 978533097 991509288 430011620 465208056 502806995 807769074 214543220 372411540 202152946 727517177 724616764 891278011 841642882 900986239 906466689 940078049 511936159 752325717 328656515 868469000 993679508 998957188 468853821 799316938 318242853 532040597 597109766 875406858 653611077 717891998 751897487 955315542 480309759 568531790 110902298 454478116 386961834 605507745 112497805 876428540 592132971 592149636 337541179 822484536 652165345 920855616 62663202 588549520 276586946 766197920 431773001 773769677 400409101 658329635 667433429 773800489 856096226 917748933 984111673 987708702 202237545 665976196 521222513 978176016 791222408 901156610 389091329 957014634 637156575 839335290 661749814 965684559 65807848 651417075 206706698 645286446 67876776 465887421 829510583 894573206 68792953 796000575 322120244 381616521 602355991 968269012 650186578 786500644 103018644 714125665 693227853 820794527 844404916 910265344 538006592 695889514 2212692 621227111 801078565 827502786 238956501 661399526 262399604 940955934 965383231 993811624 119457606 763166057 285692049 692806420 583787254 744034986 945981433 973351505 958340885 981234459 807410598 922020917 520163110 620144016 211642263 767041405 370967382 658205130 917932615 944643706 490375734 558420819 289145114 437881849 349828466 821082684 299847935 772737651 701708759 901275559 314680074 971655891 581892067 585390866 477363189 580085538 391027605 877378068 197431777 712804635 785466755 822898412 713734711 749349461 992178171 995686250 577159469 822378550 832312301 875815694 216615904 744555954 714651404 914239461 639824147 822692578 385604443 432899036 817264863 818609695 319484781 565925579 350519103 532124859 878765529 977638848 284113624 606504712 320364431 969215452 69578074 191286436 774737518 852959420 469302051 801520555 267125806 890992413 305173626 780643213 253946891 520696253 309662632 880989456 201680030 747413986 926294064 949410193 375746533 468215563 570400244 592731316 29833127 902644606 726655634 887967020 627117440 645028528 893587052 918484218 625884299 818592258 613790360 810254105 421232346 826904997 151912442 623666853 735047519 818760377 99229187 424807920 644283342 920031120 28872285 837180518 386157124 492251282 949278282 958524923 838278749 853278681 704874753 783649894 482942401 497514686 836844041 890848826 357921675 543310308 376672067 863689249 918433218 983504318 958545625 995852749 8739027 961077938 649050855 870298682 823174867 877709867 449244829 683695413 86848008 662050776 15337384 994840852 934424107 956760522 663936641 962936593 8150375 177420361 521432737 934588061 721693288 840275411 843110835 977228526 107148966 878492016 945721836 995009422 948310657 964362078 338913753 727954964 325819250 360770050 175013197 871366418 320649256 860766994 865806485 953895792 920483495 934420862 460860276 802024373 814603495 956176026 424945109 722978298 902764694 966501553 761011433 816976865 228707723 526040973 704403367 751042199 809577831 818294410 501380869 698198087 205898984 423933991 520804461 554978460 306961783 828854711 800984236 837933053 748973219 811472960 574130899 723116464 394991613 592673917 199625356 657070485 169119578 598057480 493170075 599988054 930384633 948478106 654879571 886882328 8851786 322642048 27003099 463289815 449216213 934929268 944169282 955460893 867607217 901034243 118819496 721446674 674800336 793363049 133963099 763377222 681570762 853474707 881614752 953152448 539665149 564761059 690133373 821051015 311939597 797855325 343238529 618594056 356891800 607777481 820010444 909985162 394373504 876531057 683536054 702323592 864243423 906762842 807998703 816073789 584742270 818324970 464057192 877352487 332796982 551506544 214558216 403342785 630291197 634170417 716936492 915046954 174788675 799581527 714846975 966884908 989921324 998334227 812047381 828502860 584406986 800762238 650688821 858540402 123298617 301193911 417579603 575067447 287757277 791110871 741719467 994921916 523174990 755997922 139044839 645429696 999237552 999247169 64740027 879234213 433457878 666307434 376290203 991621361 11177356 103810084 749572 919985544 407554742 881711876 484812519 702944544 255355256 984116358 428741671 686308734 295030871 702607753 828125640 925660814 439831145 479550534 250083829 739090806 524761 198401536 192726754 997656606 796848545 970294298 822267647 832008976 720126667 991941773 198111763 830750451 67532209 993183509 648285402 961146575 129304462 879634764 978604476 989487139 447165465 985373952 737946195 755171258 168876954 353232407 573121808 629711534 510115576 582897463 372765733 624410463 242539805 348768481 533893042 831211328 865694169 907851453 398583547 474442690 743395389 823314211 563611608 869479938 850092726 973429101 454547952 653782474 848745663 932604903 415693135 697745678 371276665 716506816 819687153 936110588 854531872 973528932 583591975 673146439 50090605 836282994 613610002 946952895 654598763 828224997 128310821 228863529 958201302 994933998 130571344 141058335 34119653 792580209 793159375 889798768 755160819 840719767 510274562 760939797 115290847 960253369 53533859 687264137 714099437 985346617 770590511 782716572 952878893 984532827 659193204 865956827 32046649 124120457 587761350 964901446 552831359 849385481 10724549 687912360 197452505 670369158 235795545 408573168 760629235 924918022 200264175 419898787 329354075 516278127 520921074 688954729 955132674 986499935 931320504 957542732 708157245 712027966 1505734 620648649 920735232 983175454 429839267 953008703 861524959 873739762 198104843 828593020 992880969 996213335 153940208 829331261 533300096 719087817 315152596 868920776 514761015 710972508 975522307 980432386 364300394 584466864 20427354 497537867 99025881 974124720 946024664 957685651 864513520 959547610 504768924 787649081 784122329 899429978 66668046 379264089 632307380 643931493 717860528 718577430 127043281 469240015 908148401 910035832 950642110 959672300 763623783 965983164 942955419 980496532 5587020 582122388 995735385 997509661 10576974 112384322 756896435 773054459 204618414 874367043 935745884 964956352 327840790 432460453 217632399 768563466 324963455 546553306 92857339 481266649 603309321 626734657 436807125 838054807 256147372 260182928 185726042 612183257 515791137 666548443 680467211 730185532 664225927 935140775 253069111 636988651 696240721 795482310 814488015 917325837 536119659 824872497 855373920 862295359 643035114 692199608 673863807 996993722 957314780 961211441 313188832 843483931 662321902 681052804 157335428 961290986 764794140 836091745 318190402 496371032 739061703 749702526 528240332 747965392 717253444 751126088 630735339 739621003 133111513 909936604 429466633 710609365 297472510 311075263 209844435 991724090 542379824 953276350 716120656 969992211 502333353 628096582 981406816 998650924 515160660 740031343 993022159 997155917 811444703 844236313 746502369 943413856 850717131 965294280 254919569 461472347 923276141 935539857 350412844 451311542 79929843 800925161 847841009 922100838 669419190 945832734 41162159 153441412 539072352 558769874 760109045 931374807 947905121 984814607 194167390 964439822 228937445 433068114 739623123 740863551 280325600 326989582 228945953 401072729 751077068 986054927 141796433 241138345 575597985 813086632 409828892 609286610 837908983 863219166 507559370 814458228 610701611 896915710 975100003 983444063 425577529 614487654 536703564 758851784 360566470 921493765 513789069 620068503 133813806 555417821 819545697 842525168 393241765 769558431 728898652 969107273 856206042 861893237 500314421 842397003 995572865 997979223 548464132 728668678 37194249 184124346 744670662 905368078 743860095 987494801 981374488 992494293 406594607 822996097 550217691 808542259 375793575 581457432 239556769 434827501 345641414 875184142 122755180 711684855 390109726 429560578 501660158 909865284 574195514 740594641 535189041 773636245 176371278 443293544 307541466 338616396 648608419 971868895 571108350 930128658 647644918 884911676 12051222 710937323 911519998 962315497 749879743 974308153 657619436 758500479 716036222 896384792 454993295 746571059 688725078 767993680 733435175 748926388 219666869 912775913 415901150 623536338 652351531 848017421 605640557 953788275 921635786 956917956 793609958 883069134 455055721 593982866 726637974 750210830 245192213 617524612 675290962 706242190 58897130 67705569 798805764 973861616 117882629 208473909 901321352 945951747 801611513 845795040 320678854 333952192 429075205 881112455 771637862 963090107 769283542 856995191 860364844 985863909 926221608 965523723 446171870 600717067 199665260 234017592 411980486 926310849 420500541 745829097 518769421 554649599 778763437 917948454 41340030 862467031 201098904 505966412 161939182 660795741 689640675 965181673 313133876 560770919 654458064 823111457 35187945 844140482 677422978 687656501 706533829 857303526 871581728 887821753 424756890 779996989 561125158 994759029 989172595 996703134 141937905 148057757 772801239 845190816 153096400 556795844 369230209 856579757 499199472 949818511 528254377 984336290 661912752 663758887 275972535 447396883 840944235 933121363 164002238 831615043 853486992 986981925 250018657 675462995 462571991 646384352 688496258 798279948 898045573 937570530 270954949 548457349 773860386 904096921 344910546 919059890 788494986 910657152 95769309 288502316 284751037 577762070 95009126 533149351 701375181 895752425 414605494 827790917 266735046 270415829 815707830 945887164 800200860 906792159 496154086 661843885 706452669 889859201 987554960 998622765 151688273 974683610 595062298 707669321 37920132 403642914 201922344 562324247 622593669 921061127 2363940 689461787 660651799 867307326 31267021 42811460 978666105 985050979 180063328 476398469 682794108 793885666 638418224 670367576 29010167 986238657 629014154 793348334 289812058 849937379 115391501 673079343 65340954 981538854 118515506 385212879 768665780 968595991 937668580 994681436 429893276 896391794 658358813 957827013 859965232 880466653 993444459 996128156 606249567 650842973 127262411 928851600 81053628 399016695 99482947 725250486 169057471 371594781 881856963 958374556 601325521 804783438 653750917 855105607 505648353 731700453 193419362 552310975 833115635 883492521 466987409 506174153 255375888 450003086 344333525 913967076 726675280 756032382 902096731 916694222 26041330 93847941 269026209 287814908 225544959 515732891 347230048 533333196 959393769 986761053 524514005 780398271 737706478 794880341 183578991 431518965 549934312 804770643 8996650 577732739 448604212 655128847 164298532 502877433 585337691 717790437 185997037 711886354 865353558 870069136 823535336 969621576 209118383 411834438 462613724 860916881 831363247 834400081 267719603 558053840 959915739 999260822 344985548 929485858 37756227 467261080 639743454 928293337 465046860 824679458 357903795 904987021 880575037 891327155 500428549 782600639 563993009 785800285 712818373 911512402 13985878 547458626 605134709 999477390 511385218 594924742 21501870 711476752 14719878 112854848 761896023 792722198 987463213 987501781 305291928 862683581 9425256 156625496 481552767 740824475 112430932 852206237 956782717 964929131 226143977 793723621 501006027 737163248 19966168 401215345 902628511 953157733 634652707 720423648 791077496 805195893 492447728 942956586 832223416 870666739 817079015 908230262 932040720 976187505 565612139 931954707 646474425 788736710 274757615 480789920 941379773 981025374 395739376 814856977 43715435 983282752 649935628 945707093 9325159 991147372 194321511 352119042 320923385 615342096 941033360 998432550 720008169 782287009 363813235 917858488 693589432 934989660 778062221 902235066 486409105 550020384 341610101 485520138 996216241 998553136 693936651 887068168 680212279 969882202 723897514 827978109 723115820 751198750 663478919 808298059 150688531 608048065 219487642 276902524 62092736 422281890 198336886 511300907 512361883 726748905 696803469 961781964 15649980 148403310 738588253 925701339 172968496 968139973 764822392 973992978 338071837 407469239 129017819 843604038 60052606 438458121 661988431 906516231 942069507 971566625 456879112 543792292 327182507 923871616 790186646 832219285 577007308 874126512 493223589 772659379 592773216 613981663 115854925 746520756 621428372 844506556 142952421 808352977 636899944 799744600 954748458 985758891 88583322 726616791 279151945 745970397 492312635 949499701 11810143 312981196 32747136 322045891 760338588 959705177 282113684 838594185 112422295 114315112 693548662 700277732 470495465 749410565 965198102 986221353 386888764 523924295 84007234 759546580 925277485 976454012 153370244 783127415 394463786 648593056 905306361 946337736 763075266 927958906 87112264 601315466 761935160 794575996 680439576 733188428 798201992 869733586 934701535 995177600 879259866 939972457 47541325 631999135 285393294 957035310 748881844 834476743 347579075 726605698 170183343 934454469 439569497 908217514 585289978 727187033 372311232 551613858 953971111 954275339 188428580 455117277 872354949 889002004 237846261 528445826 886640233 917238104 899068443 966137778 42473596 952237687 790009265 846334325 344026130 391488405 81690199 131728969 51450543 107217299 414948611 813256233 108637106 358693168 304009410 315731692 186745189 531064068 458587682 502286056 897899988 906455059 236339510 587829125 20874697 560479279 566779468 753496660 431560486 885856216 834788510 890865179 20866221 723913370 918021817 924000309 691272921 860789081 537319886 688134904 571281272 909726994 926135474 981550960 942875729 995430136 810137897 834388905 415834907 524562241 356547026 952363982 226424992 969909201 623124130 713916720 365906911 750706875 191970225 839320612 622007158 992706592 468419290 740119990 705358175 795519276 13072000 433128671 798527105 931982775 265317496 741814955 615262138 787318173 149527441 757120300 346858221 782946479 477283425 537916329 591614606 858204705 519951045 687369366 667426376 711973814 134502935 454230221 765910873 857295034 658580514 678676236 456585421 952173893 309056830 769479321 500469262 823468677 422668971 628553844 929296894 978934922 944223475 981288421 45069978 142651784 269916988 286482930 409379482 990559505 68874394 850852158 574041901 740035830 262325940 660655494 238019726 876770138 124897274 277047905 178823565 431853558 794485221 935246132 984014644 989663039 143500786 871485114 330413071 874203897 298836228 803784747 276155176 569584709 244776910 622305030 399148842 873053286 511525998 594974432 24462474 959588781 344816980 703596992 239316091 812197605 322086611 840449237 315507743 885108335 375564161 817510311 45171076 965499975 52305838 106947168 210690381 259491459 47312309 795835063 703151045 757901617 949776562 974299136 150501580 644353056 552390329 900888264 420116679 656794630 317584623 483833159 303859113 426303306 495722237 881546224 368614836 844874066 415433001 847809084 908177831 994118124 21450883 351451981 614033866 779923758 72720123 771950566 499793224 763542695 398452319 920263431 743013614 966718600 299613998 494340705 448683741 492979065 14261143 208425818 786903859 862954917 836440462 958937217 161709968 859217665 343002108 901080189 107858371 499261122 336550628 400835511 986207277 997897932 735092818 810221641 718832290 843746955 701134691 920037897 976470607 998758307 795807416 820722659 163263326 722196709 487383166 802284694 94188637 438001080 542598363 622099610 470430206 866113213 756623003 794163345 442758062 708889081 289226253 728506763 38642162 448871458 449727969 817205019 109419159 331933950 888051231 932449412 172834276 844960308 302986278 954366627 410679820 990131468 198967052 705842434 720819870 979885392 716343486 753592559 534111085 857206348 533724528 763213948 713169715 911996159 214610156 523814279 154969715 276440223 9908905 702976648 417564313 811823905 261029335 267000478 651885178 745583259 911668423 960934554 79671416 931017729 573601945 660209082 451534582 627124951 228541832 852601651 701445688 974369003 316221737 486276806 617636858 879391650 332709170 725664333 522930863 981455521 217102555 709866730 947929261 976011492 939246412 964852199 930588265 990677714 268447035 321470233 894320914 994034705 743437293 897329102 713537470 925308323 279624031 773123193 541492173 972313781 801255032 855540107 752122965 926040973 934311839 935701716 497805929 997992956 199856285 755667962 239687036 926226859 894686635 962969560 301444897 719309291 513324723 623991574 179738804 658216122 250310498 721737135 406535736 539079200 678822971 789576327 768021919 881901106 330356687 396080250 756894713 972188367 178430036 261549887 147033063 688576153 423199311 934842765 173200865 985686398 962513980 984256664 437111129 653411743 332584906 507033077 540726536 986791209 931743305 934368509 321833746 687052141 248585401 773564217 668946518 893818957 838862901 989004413 710715275 898107100 713697417 783495608 423256465 814773245 498960904 515328412 40676471 767809295 352186065 439657595 865115798 893700711 304126153 422937987 916484656 921151494 704123981 988933229 526585068 784883837 380449963 700862464 18961241 642670621 434956582 962437105 692509141 940338675 464150359 830268610 86769462 962462591 362998359 708528804 134048365 553062698 623813743 950681736 242659692 292106506 372008363 784397422 728920224 741068109 450993587 900633379 150447408 868152338 763419921 998613070 502969291 531046668 104688269 440882456 753044908 905037408 315598157 682142617 367632995 706061571 603031131 952506372 945164877 997781189 270272857 899341984 964412105 988384647 591372639 885258417 197828143 476528587 939096727 974390815 351810267 748945471 778858056 884428959 778332026 975953531 661884583 937888764 272806227 865866507 890699355 951038334 909633876 982781812 509296007 536675230 566613471 943043586 992423559 994827475 568314082 933890615 974095357 994325934 479833120 749189253 279109764 775454860 393166584 767644551 983417889 986480146 831825781 872701795 21658563 361338620 825320454 897090991 705706691 860393974 968251241 970269488 346296905 958120685 956152595 988232134 304287292 314858258 213648363 334159482 31572205 497794522 332886446 708215851 253185480 512974782 37613158 103041666 397327199 663199167 235320198 556685528 861744091 999273831 284285642 331720061 580809066 702119134 353298332 364250163 662069144 767147124 495847353 780402969 126237248 337896137 101247512 959090648 990304137 999595200 53652442 590554857 202438298 530396643 895422685 987576406 686272744 724521253 291248753 791625515 916193062 947489841 327540454 694001517 938034814 978459539 226940016 749106387 63940556 590619245 58824972 648532101 928710845 976613121 795701672 811367110 104180812 985327230 186394665 188214203 766316932 799936264 139706395 960800921 402002500 576791095 920222960 963022305 285352356 822597775 85596802 788181117 442879381 776660681 55074486 202209427 160104848 780504357 300352863 933178204 503531988 585495833 978830994 985004295 344938202 591232005 539565133 825013376 701438002 854361402 538612445 568570241 490936307 663544853 983347552 997258243 743965747 910340852 659473801 961772292 669253566 803322844 60686901 290968650 600566135 694791466 878065065 972154651 7864623 850648805 995651548 997403412 178057087 798354551 947131010 967758153 165439410 397405502 906556339 957577563 830890619 979202967 689992637 695175717 183048262 242278392 873686422 958850426 325912901 884115289 592440501 831552867 216635472 952984091 150354580 229565889 586428293 885945950 22394337 665051688 761130474 966151975 758284930 778583997 725698040 977735386 204569518 503715136 514508351 876071477 390931953 824717980 918802301 980254418 459887823 925274522 323238709 380166335 833312412 916985112 713068870 896646468 497321336 834171793 131478934 247944099 905976887 951378867 375583350 998787794 521473625 641813985 604807157 772084596 598013811 844044111 826674701 994027193 391376749 457296667 221911244 260575591 468453110 876444306 314732353 820122626 900667587 939586122 806015660 806081953 19968892 244538387 83345107 833384365 435605214 750611100 801658343 862896246 318968678 761324508 418581122 647000265 82699020 977851719 241112592 980698158 997681768 998408103 943271425 988205944 486310802 913489505 44970136 100404744 726174665 852947820 858933674 922449712 207774144 589118661 807644132 877699262 32206616 621666370 625684790 709539310 578081708 691775117 827410006 867629104 343257867 364073906 66403287 337745839 169711556 956260608 18722037 693088635 588986363 815783813 741523033 861619174 452173278 455868160 916124933 959118477 200567512 761860826 902557037 906154663 237097454 822478671 181570223 431049916 155354415 495255914 613252134 628008461 916774434 927197281 30448399 747171562 218985062 607022257 182348687 857709020 295994308 770940985 295309183 504727615 167260392 761516294 728735682 747696207 904073331 942084457 259520682 707027133 889996842 959481161 591004603 801380568 154398412 958488511 536669885 589349754 736419247 911053495 869548548 882736238 1523328 719381375 735407367 826633343 391274996 988126025 522218361 939352121 476254580 761065618 186880297 937675595 164540796 992642334 127231665 199350178 478527154 944300019 954131201 984898596 333360480 493817280 808795544 852595724 548078271 757285181 473974370 909547006 952969547 961720582 904654227 983391643 869690561 936393610 237147407 426977846 210636271 454379014 295967888 884482287 775466704 787959164 387274994 647980654 105493244 745665620 31019878 129120294 115715779 696955904 361752599 661907214 425639765 488916897 844914754 925458422 341545598 678383589 678207625 963692179 70609293 840023693 294391096 876091300 381813218 598643061 448882344 672141721 554927884 880750808 662150396 796446294 609438239 720164652 594375732 642378758 725056251 854929931 173288003 628918452 200480789 675672299 747679266 983420256 735944143 901374971 684933396 975636990 52652866 316994887 327881504 581252340 892164504 909482143 489267893 886054598 723243360 930891335 14273556 59684488 691315849 894166028 107314842 227128230 248185921 449853547 430445122 866467698 169560990 842890539 699831711 751806371 138529276 632330693 355130493 385640025 45155151 826272827 241802157 465569150 229922881 599110410 358375399 740391769 313198163 453842598 723560976 754401568 322800593 914535101 781536061 895576953 954581011 977464365 333117303 397515523 358028223 415538113 451061845 592448344 537741343 637505291 468578994 947739128 73111593 127149375 856405033 924286636 21661700 969421166 976883837 989989200 251870144 799938281 34068294 629501048 202563290 424116817 530527867 715461806 380825082 976366915 310837496 531936911 146726561 379823890 881434890 965214630 341732345 727918663 430268032 562879072 310512263 675245060 355125811 809161422 578298836 779961956 756713277 927622724 150661810 643450148 491695769 966091061 274186858 670182189 662122055 782113321 23468851 750558364 392242578 962227003 580816698 807417562 171803039 500917317 569410576 585004574 456222546 492972707 374253850 469303535 915454704 915584059 145812360 356407491 242201128 501057014 596866020 760944370 277149733 830753986 832795328 960990827 163245491 823967927 886258163 897862471 263738400 785622355 641947554 654324197 124082084 944055710 192271014 579154758 86467380 954907796 349196032 964477808 310918236 981456639 883714003 919341462 972245501 983440567 603332965 748351761 722640790 761672880 469485056 763511310 689244778 817672573 784154448 819261237 530911267 877377657 630529019 909445034 465745972 952973175 495829847 522834718 140796329 745710493 536153766 823236558 878715582 964416712 302822853 399564158 567904438 655227412 624303057 989432127 35916440 378761079 222284512 852102204 482731687 487640744 606636859 730453899 359032195 520776513 512390638 565234583 765216463 830744884 74292891 550816022 25862375 851111437 417717988 931503779 490417135 601539927 390526177 550484435 461368348 747873145 223374921 935969486 37991703 996074748 17164383 451455071 126364288 294558617 877865974 912975996 832574175 929811988 775856417 902311836 897154644 936821619 972675322 999889623 865208790 918683854 342064069 666780492 291883145 380059772 506619127 964736378 558376319 618876031 185341314 433686098 161911295 629159771 66256910 192386357 379311225 928023569 52804715 799424538 934001930 972014046 769509793 901233399 68343249 121715899 553757614 621131386 49629072 848443966 197167203 359683206 441572409 594473933 784908501 910694353 95156153 117114427 653895313 751319891 501751058 911417042 270876790 553279424 927227121 937419068 534922246 555761093 364381660 874270003 625729717 897985024 592863342 835445569 13203810 782104859 275100245 323720165 962956623 970100395 538652788 887965856 566900969 699498218 463218286 777089000 636346129 735536414 826485682 882964033 545977081 855778176 116136902 835979970 99331011 996316652 391130365 745408897 494105681 808535471 613788863 704357340 39297583 948807479 194864047 986545711 758509006 823238894 104575713 528916523 428325093 859948558 314486000 907146516 522755738 994608075 61274787 387156079 956643009 967530813 197482558 849522280 511413723 531540581 497990885 719866270 209543815 410701949 161740908 339773339 607795464 986177493 493308743 573515020 779148925 959458662 561056860 660614419 802867045 847216077 563229320 614556976 607191841 639474709 795100775 852102505 866097676 936988349 917499270 963435740 16755459 466278363 474948250 694917031 182164793 310721343 628635018 739278904 266808821 511877026 263324674 867382017 410770679 894198536 75412547 675621274 192849945 432913975 192525287 229364150 13662068 344839736 933259293 935063401 2342038 967905857 230266048 445662167 734082275 861420797 60351045 980483365 170998078 913830643 806530103 929643079 660965477 702273797 970921609 996231021 986749359 995233023 516791537 788187016 380759467 826415124 806640470 818010106 531766444 710190089 369702744 629767813 431857211 879447029 791312972 973486086 239348207 793954478 732401202 836162661 29636241 205754477 351120980 402849301 116008412 423164866 330471963 919190636 979173387 995453828 34443274 607229750 902717329 952154463 657805162 686796419 884696836 977693818 105352332 530045872 528853106 763170365 409183317 728734758 493304789 973227692 61575382 478385581 674778941 747467229 919901213 976935410 424870445 535284289 129316627 797770323 965596924 975961984 935921719 998448086 29259987 317760120 434067165 595276851 753156222 849244286 478090901 805213789 953885466 994860194 11637300 970864863 959912601 965347215 612655908 647033235 298451628 655078926 94958982 549312282 507503685 865910168 42737714 322319844 492930226 708540594 854648987 872654501 209723189 470205560 75766316 262300198 786808808 882106411 846192783 876319184 719586317 730117406 734080462 906035350 787136096 853347511 760448478 984504278 995977782 997896555 934679479 956218904 637991274 866511778 176178743 511579813 867704665 933728114 849657418 867707327 734879976 942541675 760787637 977427429 915303074 919576232 872041953 933397658 506804948 962954040 178235751 320636461 204716719 551662297 460176255 778401036 657426367 815627620 460203221 654643548 179927594 942064395 147438918 925422887 996920065 998582511 273532536 353565280 400207704 899451699 418747501 604896998 773963902 829594287 500156647 983358285 623341043 783812356 764804463 825499512 201808140 992640143 985381460 990160058 323144475 986943034 840284247 901748063 567349859 954356016 836134592 999139326 213038592 628714917 964351902 986973479 365969516 812908724 885101225 986776351 331215432 900202323 456586415 897726286 650203226 884432221 464681995 581210826 534327963 579737118 307001760 809467306 939686006 962360085 234900469 678221350 666616264 953063723 319968677 522278389 162705325 546090959 852808192 945349528 175887708 442591967 474221422 602076604 950718814 984033277 730782832 811334579 411826857 591380651 586832277 816109781 72363274 98211472 761773854 941767085 441069760 585507385 147103051 892969696 706334623 937481236 522380393 753926965 901735326 920540272 24638169 860585122 65202012 888269442 90827813 761285701 652573991 849135265 970849011 989380120 356410943 386494120 31904708 712199877 831028265 897033196 439093503 873879855 369461269 964842428 499847429 927914693 867424615 885276013 537779687 809363030 214711979 990067713 529474928 727556432 515085661 986101697 60393022 702177026 177513564 373680972 554158260 956553951 57805270 124682147 333977585 976676637 145143244 628216190 518641819 960677762 964547876 974095653 700906745 998513082 746132694 944050160 505048267 922184958 312716051 472486466 261893189 287854726 388023664 502793812 865182823 977405578 571951004 878827234 696274122 905362429 660584404 755011945 434361534 497545127 606458573 762915993 229352959 651889882 383391132 761130700 902980291 923409412 777325112 911041169 324966180 438968431 552747069 587531183 453326545 873832588 106867784 499268182 209994475 528342171 713352999 928228787 425371690 671313603 849042122 965569273 932031136 965210185 30382019 688222937 240693300 429573735 132087754 199205650 363360921 865767245 776503837 929899614 449987220 880780615 327777925 528080867 854869627 904551102 894495917 980852495 563150917 937511788 286100272 679212656 54406288 892074512 287324265 897881756 772893307 927553126 593318351 800834651 198260879 245078696 308797373 527133778 40602502 288633278 480851448 624083809 573322986 630985704 192676457 912682781 341016392 817886341 450978108 853673047 106271534 452323543 514687001 792696422 119332535 192661343 528649873 662700298 493623851 570103563 961065319 968877099 373809780 857446282 112696262 825732277 296533289 921792422 835986705 917487244 733424528 735531346 932266386 945108810 784214686 800013681 822506812 970357239 594627144 638878755 889960932 903025547 621276844 727432393 910555637 947298173 116583440 697494196 892860151 983092947 589362987 921535846 308766876 632214711 410228740 559857745 257413113 721750211 765850774 833126023 776983593 858528828 230677760 366360410 23797048 931191427 709337233 871229861 497405445 970697269 111525222 999033936 501842129 983427410 803861316 856523432 250233735 574951568 202381143 927380502 567399578 870616383 351189191 868834016 574135242 866514463 618314610 676350985 981934391 992355335 885541618 921177301 966081656 972537620 61761209 999989252 544459304 988799575 939436399 963528214 430308322 824639617 813885792 929794526 322473403 554915653 293341438 914326543 35151108 569983042 461948285 463842928 633011638 785145093 573901840 746737422 743666995 794568490 812279155 967930506 545006266 892852079 407323901 666295956 333332774 868029588 384501896 578068301 737036438 759911613 165162943 887347720 367946435 919144697 22196610 156865311 330737342 495049598 455243209 944106425 789006150 886271964 582097684 922784986 395846919 910944797 606981846 769091941 304078443 681068979 929108763 940664125 83383428 590144139 589132653 800518901 654129914 911881753 929652468 934404495 741588516 788494946 216443109 328640260 104590934 888647488 867694824 915994531 930317588 932125685 362831186 451559654 922080083 923091819 445129579 993291228 787101251 801173098 244141879 716823125 338903146 621638372 785147559 907164795 143715868 715082870 944189737 985744637 669860085 736138252 840393382 924159424 484267510 970702833 139446502 336762449 964019614 974231426 639138672 943422625 379805779 720293074 691300044 899657207 29655992 72638292 268316696 938626639 640215449 652972280 672210292 718876950 259215210 528614940 701099576 703324157 341207095 715399465 504865997 866726695 711403315 815413733 679418124 925430305 811408765 876388048 624017253 780194268 42566424 822552887 519272502 790732955 94678290 150294875 410774627 938821480 100344674 510902759 252153164 819545913 434795509 624018193 115059104 700830116 569069218 606218413 852439932 881924109 937074517 939799861 607055321 740016387 16931517 718223372 962372513 999999004 101700589 525637012 442695897 668455164 258724261 267537859 325089320 927201171 858085369 882385350 735505552 931275580 476403010 644695974 500739646 679698016 525017765 953670927 105658655 776110516 74807524 258862163 930147717 964020026 951957263 974740139 113784078 534377128 749939651 985858398 286170731 298506250 362721877 980330117 652262491 753641437 570415679 992832936 643102187 814793860 961078196 978410091 53787625 686950649 126670040 770616132 992959615 999202283 568667998 651415454 470204068 941981548 923211073 972704678 657236416 681070342 18608969 277393050 347706002 872544899 935053516 965019488 104537386 269203196 51857040 635080324 374776148 804671250 499579763 857433229 761503567 868249469 396273075 634690424 844769260 911561898 397799224 584273185 200383168 506467939 774619528 807476799 617542167 888878294 34373949 561155400 419131037 939562661 286854280 741199688 616447344 650846560 108359631 450815173 64068702 980120988 319039247 989133377 230834797 297185440 510128542 872844552 369048139 614673269 346143612 822034355 620256912 793564677 927308625 978642281 132604961 183180248 967577852 997508342 277834183 323419155 789436697 966322300 877264103 904573227 394160561 781739220 979972086 984677480 873216533 956684455 715975763 763411702 563385847 694095239 743318674 775533895 40685002 349983858 394230155 417128669 901553314 960917920 169449392 547298735 715476395 838105103 841360279 896296461 569229995 707668882 934461394 945538109 447792120 688504653 573745449 962443448 597365082 803647104 883014417 902777750 68224839 827646872 50027762 72274019 367694216 955599482 91069034 530675627 603041816 937939555 638860055 653515317 102970922 180685988 592017358 759787143 69099876 513124174 476993161 850946573 190712879 617266289 900952200 955189900 308159964 825736872 42255478 157544708 830677953 952900593 762320346 951094250 301369210 662029031 166414555 729722640 731500016 852343979 869293739 974762555 468042067 670139361 375659824 596771259 728911070 988519721 286378002 917572191 515784522 913408371 148242190 249370020 961764410 971036135 331691412 392111865 331527675 416312116 723928895 969752808 727755404 965082202 215495610 802186295 724335009 927818356 505477910 737944356 551950565 639739543 84859484 307932612 38547502 790145229 169842656 306252652 216514567 986067605 726107822 991528449 818165854 913947842 116289385 739686110 343790890 739300895 764045560 941038619 626909397 836721990 859808779 964707228 649510120 973623097 887728594 995169840 168040869 831638034 604231168 746900097 958975963 976070336 535864547 636094636 823876348 902933661 724118346 985922234 218836247 560673501 26550020 849822170 576833879 773615783 829111079 852481232 547867621 999866347 357184767 628375477 886046107 965456083 166984279 576566750 866295528 924460123 913873137 926512632 827009324 891868992 252839504 591121928 69421051 251328180 656837061 658725893 335943334 850191085 119762801 663324118 686102757 847052741 183828277 964998435 554482016 722546154 694351381 743706254 503977138 512849651 871136034 891656588 297607858 861901370 132569883 868284663 477979262 944576961 477018717 940899396 271759302 877920997 187047591 678479298 373346883 643943075 717277862 967187489 663981611 758445578 757703719 792600139 537613177 893377219 911853140 995001075 379303052 939018915 940510075 952453978 206931158 347687339 317557647 885240568 44573434 410805342 463237047 760996670 411442824 855425551 772972180 877268581 397303056 956004289 426015059 558208323 234623956 614407561 245437825 651409530 553310391 939043028 609767819 767256061 644134031 730238805 97826573 109782728 811329537 921901721 464581618 731122731 996249360 997224809 120600334 814542485 384764476 630566336 348327258 651431628 302325253 739813057 940960891 999196187 536585696 699554977 36287081 199397164 250072754 709637638 551034975 663292896 640573403 963231216 363859478 474525144 583056668 985267697 936443523 946196966 905092645 969531021 494056212 685951062 255099403 916853061 798786481 829747778 578812688 709569813 691442798 866071879 531342006 645296425 640452101 941667664 101141343 846645707 85803976 158080166 791714463 995314418 184052621 841481745 813656361 869713894 152395532 841273786 320503236 590350646 29765209 752681985 47229041 244200861 391254229 705241947 120795179 310708687 65212692 706860986 436152237 733027953 534177640 640945185 728685375 732970713 102206822 762708381 455181880 767176587 808602298 938807352 327640677 493718908 573390873 602119932 514071839 716861683 177935986 445322494 80576667 170345110 22580471 937650264 478088560 493116215 195167195 561771045 386590044 682781493 340576069 490639237 937077612 967672557 702884327 707106720 61503195 71113784 770140867 945870000 25718601 81766737 994160746 998840739 418347835 839793572 19772124 466340296 418594779 737845218 992087244 994269652 619266180 964381641 295047990 699760016 400802548 613235885 233812586 654737360 510015540 707351129 365433268 954803499 367020942 945167008 545622628 551490063 514108130 660404953 123838097 175536389 203096091 645418684 410284532 734337345 377424347 849248644 20638774 580463130 521337792 563429012 339988764 912358798 268269684 714770516 854202928 921532606 356877882 614225527 992632590 996223339 223763502 699216905 959897687 962303119 907625195 952208389 12885439 562200152 589684726 926064312 158063579 329455772 815231371 958512592 740804695 946676233 431905158 705063771 662489417 721354835 896078062 919287386 372146410 455106244 533677185 890877532 290529820 645625697 200894062 909126306 150699434 889071743 69081473 560818778 938874136 952955685 495414039 530924711 152495665 414265799 740947040 955814036 702207078 862219775 519606027 828246610 169345690 717574597 171315903 422532763 289705800 527699236 263404156 773243224 932272708 954092723 47579947 751938930 896843915 950753384 128747606 789632130 233648086 548771978 537975074 942709558 14973531 747577712 493348189 735374960 338265190 860034189 349518895 720739046 413296173 801435553 479844060 723556684 913011035 936302036 536815312 782742955 181224136 277127084 913084048 975906813 619682935 654040922 519143116 951043904 70333758 203354920 749364317 833962834 559723169 715871060 85529264 925792642 338006047 589904746 872194014 885103112 538368674 804688466 834217190 855235513 964522283 994219357 845202911 856634510 829824264 855177725 413447438 443532452 435475360 679089761 754962959 826147771 726931270 884667805 476025654 637235769 516108791 691934451 86547524 136191868 95689993 157629881 136435957 988303977 197259058 558640937 486903476 809753897 993650683 994631726 744635446 895925942 805550481 900817132 9952819 861027219 212869785 448422868 888469997 982093946 891812416 998048031 499355159 968516714 447929819 764360221 204104207 880604684 962692637 991346551 983093763 987522150 586856516 733855628 454706921 514947184 469323498 941612364 133887974 344231767 859416081 930889552 27392002 876656051 519551739 843794427 9349220 813222177 868761272 987718878 151524511 589377695 948528560 993234399 216271203 219160892 835823258 888118244 301489942 878609660 444767101 579600817 131929373 854734956 406612169 584202990 741093942 970204218 463593583 545200696 342938581 812203172 71029868 614329831 397371086 672222211 629376745 879571313 152862886 491920817 232768315 638336431 661294351 882885836 118916705 995872252 996996454 998453090 840561903 917430010 504197971 675752511 143981057 294163058 213301092 453149181 368057992 897560390 893844264 987333767 691110750 709006424 706503054 824390785 108558726 307469656 683056990 813892561 360432779 836257590 448947595 474558573 80496729 88797816 664226254 804873200 453179071 675307244 19868190 757177847 737518949 995801069 306887130 412275902 404506444 966595692 851801680 947048643 474700572 497263385 515981785 904584726 345008402 782157081 968619607 973902759 451989659 938203239 54050552 202647077 413159588 560904034 586835725 772264602 338641983 480669449 34214313 604086982 102713340 567067908 467862769 753972766 206279186 991550348 677902369 845000555 439637393 745825683 971196113 975335483 593361450 925980813 564249226 963204512 187814776 842672609 495316884 781215882 437596389 551450826 104891774 752751868 320529338 400626909 168187512 405709263 420732307 816662511 512538264 759666668 12197280 244505631 221666665 562295972 815379240 862041915 350844808 470620644 283303539 979557809 247148068 811512504 643970369 725386960 659278472 742883210 583613353 792084271 246007394 931092513 363989033 382227275 305054472 582703060 458997690 566237994 852420055 982684815 283145284 688224521 712918453 806196792 883695540 887338540 612004049 929571100 870189486 894422261 398351006 552771697 479384524 561712054 619167924 871486459 793748487 829720214 757761641 957099594 476141452 691863796 445938938 846421840 804347494 822454193 878211926 943883509 189152452 477953260 827335237 949781470 23313052 218858581 583742410 935240239 468599168 834593573 41145750 66530482 388602936 570071808 509264317 517916659 728390380 935034875 299835790 868853909 527573501 831108239 727419326 812690234 84600629 470189858 908285510 935889150 746813998 880925171 562984593 906510377 732262807 894103604 104463319 729922254 835569816 902087677 168611700 207583473 408025036 743359126 261743178 802311123 799114910 999370487 144259240 469691040 76105346 714924963 609099096 725035091 664620985 787043687 628940356 926576158 624335382 908349769 549806309 941264625 794964279 897664803 547684535 582381836 522502587 659597568 656003867 789971091 684524183 965689659 777994993 971148504 960350568 995329847 326304829 397469685 108908075 899626846 674637084 769499008 683003260 981770854 669286505 879671493 690631952 980611519 996599911 998913340 399587266 454093316 948832809 954822830 906959524 911960879 572877609 859774225 47849614 701204682 506483832 798175245 670677144 966213279 630431606 901059472 610638516 909862859 736488666 823962336 133107977 808666049 485200925 720794946 665939914 893980407 147880894 605217197 396549738 476320974 394609531 430099327 660399067 908491820 549550662 686279891 193514498 589459413 389515634 689424928 993054144 995146763 3837752 371451595 457630393 874323661 114623454 183331370 623916670 939704443 457171439 527950344 757288726 829571999 585282625 923870622 877301115 882016927 762053835 925133372 279001746 713718664 443191668 947945856 952502836 965075834 911740931 964055638 931396371 943056824 731179838 840671103 738466135 795013675 985790544 993079611 924306176 997133407 944517074 984654738 78474346 323789134 60838342 391072753 954361893 996679905 393532070 723107660 237134758 255047140 707120403 791081737 829102383 919543755 327339380 620588957 70943234 554405736 696623480 990764343 855564344 987066607 254847449 270147565 443594901 950861051 183568736 824845412 700431189 797603229 397422251 429227036 250265119 946678636 326675035 451916469 497544668 734123278 42371108 215449084 456726393 644956548 545076785 879332433 781359773 875050555 984050123 993712927 683287374 921632521 776526011 904340706 182416721 247069045 673274053 913946754 775772643 983472437 631787647 987955369 828191599 921366400 59596280 821479144 853385915 978873182 656865923 865298714 10699863 754885202 984865117 990786711 544358813 854422786 706259600 740971023 897258845 942573208 73585372 931476651 820111201 902766913 866682446 905294745 269096935 847740811 378700971 838649762 49503093 483601740 254461772 712710374 438823741 751734787 431363512 695973448 355864618 423904491 470791336 474619599 590151971 968599946 954985770 990423701 863729688 969567279 233649862 903119681 615811082 786345807 786089037 797967422 904968842 944613353 69964409 74058325 606574482 671144649 439245032 613334830 571285981 769960576 573290629 944634365 40403935 209723553 933011975 946016426 209865662 970529278 278252704 513892535 839450602 928921454 105611140 114804433 806008041 857679702 617531766 622948025 966029046 984969731 555955871 649695961 596354485 852176683 337365619 697067616 489347115 504770454 624410305 703576957 710533023 871727799 663989091 867685867 278827367 856411339 716156628 873530679 709573961 886729178 294653268 877555438 626766475 963095509 121725613 534267326 346726642 468566505 911641421 976110856 38804519 121115987 788549322 948362430 818299434 962089459 191345539 369467586 581603337 921010988 775549780 926867983 728069155 787111079 678705168 770390687 302025039 421328361 687257339 864113392 227626017 646217235 847306735 921766553 191315946 596728145 842935297 881425689 760723783 869843465 594556660 973305210 247136728 966147803 711993624 840312508 872191237 890164016 747648049 938707677 696306371 845723789 5615533 120972536 587412803 801123113 623850792 970122510 832553977 992190028 777193245 856843634 29157909 795237383 710771600 895439222 513400223 567154016 621283718 665904239 696629755 711323729 529403862 560298827 959203028 959851516 195313098 248333681 18129834 377604544 436440546 930639182 654652824 813039852 737563445 988724245 226294092 298974975 450467165 763396135 468276280 551819557 509793702 635277998 614980894 679046151 570811569 957004457 725765285 952809077 291614140 671254800 270673721 990293491 322386992 915989302 870207047 990036596 709629655 743004767 145935964 974786799 343149250 769795429 439824515 750603628 43958625 811412932 645567861 799910134 278087535 799301564 31822592 309684640 869378819 876226311 333683173 899814282 576611582 918002786 655136751 847437033 508200836 642251402 265629218 527520156 759277209 975838484 688628204 864363587 139701761 637123017 796608893 836573519 232135527 960681668 123614309 705971698 718159316 934340386 958465320 998940675 443882675 903095838 197549827 260337205 200072742 481477142 462948198 756375557 896464286 904766490 823861772 917065236 628729872 769028037 106488830 618943652 663072191 992190824 375543772 703562921 775617879 910944658 738270440 998916607 534846590 740587349 141157278 930354976 618670225 779424592 215232467 454156766 349648116 658030254 835038726 898022685 637267721 756004657 501001129 833944648 523791413 567605676 752508801 853164420 572064567 673595046 822370406 994308717 123499835 345124395 325971213 343003362 767421134 868149432 97142328 882192307 459995122 768847694 899355300 997465653 380483413 923435597 633876929 956973532 878037453 930772510 977083436 980637828 211637261 472615373 8063209 366647899 344362387 653657765 670494300 842584999 800125276 959468750 428866290 635071599 736273535 738315566 812862506 966338616 854338970 968453514 575652244 755639250 992758202 993753503 456839368 484449815 760434337 926912380 673290774 918625679 363630216 466091642 949195960 973796485 110838068 366050102 643062279 742238743 795151476 971030706 847308741 967488259 854127439 906748975 941911276 999279686 115388790 834877909 237953436 324536370 770911707 942603144 798173944 936903305 181483940 577629545 678053266 737217684 945314454 983220387 784926002 963625521 811514650 855791921 710076605 802945326 942637089 996015407 370975661 464693491 682238278 752071483 175039837 544277238 849123773 913133565 874792286 876647584 4239211 110715725 275152108 409051331 845499163 854873237 559188324 650039077 351305655 512496533 816643579 952469896 441233742 483300789 738948651 819337799 372774656 759588731 339677322 817879978 723867001 889599016 911571105 965353668 271571570 871027227 44909934 959263141 388236679 457480743 261811097 932256365 303276701 526906389 917927327 988783012 612580485 871781158 206375890 333025519 355382224 953673589 850045359 984743183 950315037 962832728 299683391 608608616 840585699 903539157 672329232 980632611 818967729 865916853 25997162 962582990 782136645 917266411 459333627 600277465 752923664 881151742 734258556 813611587 363677753 780403181 774069674 837579775 677694098 891377724 450756522 794430011 17316530 234450483 690075410 718264300 139134748 383008471 254366579 574737889 188294598 711926634 103364159 815064437 6091882 120005452 178010728 893195273 153598403 880667672 751980639 814200779 522484637 681882995 3720023 183377970 241674592 350227904 351953225 660869944 212438660 947717565 318223647 491000428 687983554 746393231 711435748 724169103 688338370 906159945 410103788 863869682 41516534 764310183 550476670 736144507 993224381 994348088 944771486 981325842 94124975 282746307 833724578 985546086 136465852 839035256 444032187 781927249 726225236 756694485 585783987 930759383 764855360 815649837 676533024 722707675 153176701 818309509 931516862 992093203 942102156 987156886 858458133 868165181 47094127 601199278 485828361 601695014 930841082 932413518 638238468 815856610 485891555 960668564 195279883 425775428 980790613 999839731 742886735 922119608 179640566 707341950 177848645 686268749 652717486 756709937 940588248 950001051 455927511 472345616 217263933 341256303 644310894 788402942 319841949 335033004 383806192 775311792 896993579 961074212 951971375 961464816 461582721 992550608 663768378 801583102 267628049 372063736 141854682 940997403 835640353 892427901 436451095 692210271 200993072 248260374 780169127 916352462 325957123 465186896 195854799 531227469 116595047 499138471 861923827 964490697 899719228 969833780 46609646 493835772 400892383 447281239 261882168 984344473 768512155 868333910 652292047 906260253 129754691 633738120 885010007 907338365 97901824 239756746 832990912 986472952 663587936 966243182 979092638 983834517 567898500 620470936 787924138 927251188 216456089 339681518 841552521 945176359 173515524 886757293 857808397 978325254 200954387 834872205 376400043 512840000 517908356 632295295 914870321 952300243 834198284 910304796 197656331 453833040 805502831 861302552 197901697 242814151 929476481 990832651 386215682 635063418 717205931 726908476 885527732 992047427 25486819 948598007 22524551 433669034 577397403 632340182 546298218 562503473 263692587 698738430 493373317 990948934 682515104 994770969 893910292 897224496 132609955 217869986 559999557 932786761 37365992 920372172 361804854 721820138 237449819 439640491 829009623 945623270 873710685 882973904 499068358 919688289 203110367 949684063 209671327 230642784 553835998 835490036 680142480 940110703 651005111 976145876 218669908 514836163 460114622 820039543 896558493 999629964 65752272 777476432 371687556 874701012 954731048 985496405 498225771 630354257 620350671 763537984 658763621 866654873 783856564 960387632 21146268 108446178 563165905 694816631 109433959 617697602 938505619 957879520 997258184 999407505 534192234 792198255 413873190 856674245 398681330 577125851 726041811 793517521 379095901 521377659 997894932 998209530 552672826 836884361 121350450 543857854 68686943 975626500 655274978 658592292 585594291 748240043 25225106 935773353 624658828 888849268 932251889 933548754 524925970 697922699 566378830 848448688 865788842 967212469 587697378 727332265 390643011 567003716 112766870 882709133 697170969 839458845 656328254 876118012 846198738 929364637 12205469 747791064 45036247 601204182 369594577 408008730 257685991 682214782 679537994 989419447 953567239 993274153 913197551 944362039 43596028 82192610 831159608 856367721 874701904 963796203 200502000 361080133 857999963 912612264 909056097 973274682 133208444 633181227 314945335 893961356 337969368 606965291 563751030 629441139 440178518 983043569 344926461 907691401 548183095 891256981 975110376 986486503 643392950 787115455 229966035 970659751 654395367 858884650 224855308 496896916 368356269 994485328 198016556 967043235 990291393 992869370 172150131 379211167 399406919 974012234 215294253 294266751 877187552 908129110 28064985 85189873 813208376 867421529 604216238 827230322 365317226 763708009 909297284 922706317 364391746 895754193 63989667 443593330 425230140 520159216 767936138 789530998 930021091 931475773 170581718 389260655 302110878 891547207 222879304 573236525 506207913 576332572 385107013 956847794 988898354 997206940 124854030 712975757 94322781 410702721 423888152 870229813 108724076 867767243 564486077 705533118 705565931 884490649 621729671 916658844 271820781 393320854 555488605 953549609 899183754 899539949 473345055 743510699 183770595 228889324 661847607 937129427 6099791 223625986 643426196 700211219 277501947 470586182 925280703 991535222 191173442 263691535 19687671 376785092 974320335 988936800 786671064 914021335 20143893 696428650 943721728 973601376 684040007 744636927 890737021 911136074 156969005 463331101 24267448 107175215 308966153 545274010 393889648 698315001 622787931 851718839 182617733 359114420 606370447 854370238 297685210 769276351 939479431 962265957 348552154 464163342 258299052 436761251 930327904 930437522 861789587 989445331 363945816 570213586 266815843 457202547 672887709 950474123 626769915 732091774 725946577 907558228 92838423 899676379 824508044 885063144 185096342 242745064 893552926 924532026 251927767 718100760 604162902 666405813 48838347 128688161 853835984 971014071 309537243 794312430 929271458 978822830 50741804 955337245 804877385 939265621 907771116 937490390 105900320 965799125 526247415 661426414 258856934 285513769 971312612 995090462 756505685 959673180 490564931 609290921 165733360 434583828 361081577 910948628 505286698 813823592 851016154 864346422 631028439 790048541 104727409 821732181 815867070 817466261 28530817 344717493 438366737 887386348 244777063 837737567 422385918 533924549 214221427 980194147 271789025 530468580 476430578 971233859 409249191 814616158 102681916 318300087 963669675 970570549 144937001 435316880 61882802 532292712 375171940 649364653 495093657 887808752 402611145 639564476 967867633 990489607 936104711 990441606 943895447 962469469 813144116 871257077 970529535 996572327 384463315 983216646 289381099 658819677 434203887 843678399 180641960 237579483 195735532 560158352 408789947 768473628 417198775 712058327 162015891 276323375 890172365 969833310 276048055 661875012 695174986 915676222 252687536 627563439 427817138 574894305 17216440 785097674 482049852 881392569 602679403 719071315 501999252 917402706 609726897 662958625 247421792 675621645 531472313 925157905 979350388 993076646 953336579 993128085 61085856 324225876 367273699 800853295 414013314 576030425 452542074 598867086 276688359 727650705 31817836 941447038 110363755 925759525 705935433 772516967 440680811 497910892 858101843 976940895 425454915 519118389 73548738 385814938 564380672 647910236 638629551 909063181 396227106 906438332 30684636 797825976 552145154 835552845 387888852 522862893 170644640 258292735 462385413 988523294 503129423 569479021 703256990 751108533 486225916 979660900 788435949 944890002 989497103 996514171 775004732 848515295 64524224 453117001 57278685 429105495 880803813 974964435 323402894 592949296 159775355 798670475 593598174 986412791 348489099 705861990 221752311 468818803 963527997 976659031 651215032 742355961 900434978 934804563 959988288 984591718 676689319 918714534 18080385 594580413 988953338 997442105 316678241 725659270 121440650 259446350 400626419 943647660 797401963 913662629 229792080 868895796 474188516 843183491 524394077 751972194 280249464 838605325 363066696 919271713 27958641 788493936 270673573 973815394 43128185 103213909 872681895 928901735 991004521 999250891 302462604 359158582 170011 841619780 177162803 339688142 239631556 881809863 263869484 965805720 378214783 429391969 693429420 889731577 469735680 712728278 254352134 294637433 573836379 759176249 428798325 737995212 596116579 954605878 795853621 991703029 541237287 989061680 290493130 388441452 802766098 960366637 630219762 985719576 612995578 738816242 905649122 996338424 838232744 868954704 631264920 811816298 515910049 964383509 484540750 702752344 459206843 483577985 111966035 999564618 627344775 755926834 506518965 756347074 246465465 292865785 295793213 971535547 478583983 547936681 637875210 752111630 629563166 709700133 313103319 598929598 781070844 782280270 385772065 979109416 696728204 740423569 279353028 403944657 647458428 718942119 793066685 990232819 131875514 306816940 69186490 953927885 397226020 582521861 659797731 893026426 304687850 764068325 1374154 854044453 232858526 303950539 599496988 888840348 227822765 310194738 541083855 935803855 319233732 621233357 193823382 534820603 672018099 951433545 163739491 516911475 74012196 869042345 816958729 955213834 439288942 702412839 898501049 995844751 795921227 839906571 101910631 949057727 203931899 315602597 106974599 184106784 525470587 719901375 432394184 631731988 991784028 999938134 384196807 795064009 46476219 208373412 434636201 547559121 688097649 833159676 903065099 912018610 557583391 910842651 776497509 914916236 577005065 751652885 693827003 847985276 840913449 965600305 601504586 827945588 903312800 999399555 870981398 965849088 269837534 471801488 12631648 697603513 802671333 904916208 94198191 419240922 662016824 982529709 66906224 623455428 881348033 909497358 968527881 973602890 728841541 937135405 615661129 936509855 294591643 998086124 667914803 905396606 287674027 686532666 693486011 839332139 420755087 739819682 552172829 829961868 603134570 944453866 174881496 348451580 905014672 996793442 743259086 971838357 583756074 797299051 339518491 896928127 589175611 723386555 682606409 921884303 743972476 808972485 994835048 999623773 875555443 941983890 666553219 871075629 559180850 661804007 927144570 988459662 962611248 992902068 480531504 541670607 831582041 981993049 555119337 566517286 204503670 986593749 505319825 565262988 78723768 440179691 482475282 735823182 592090896 776123903 915534304 957631736 163367055 346166425 904313701 964422877 645230768 836050495 53332180 411252374 925120035 946684080 53089919 427617395 560503830 779183397 34139319 170838252 365462610 946334556 128396354 759080612 192482429 747847570 634889996 780740293 821731636 954546084 277964442 740165023 23706566 740336104 317351126 569647884 696768592 791737844 382533221 558123785 108106723 333446220 500010357 547742425 63791125 186035889 779537448 945162886 227384812 690192829 145338652 801363598 824649348 998528611 955573366 967309336 864965144 964070659 745900226 879855800 835395180 893431335 868125370 975075367 150214534 790156269 824178142 988651253 42711715 130910971 788507738 930341298 711400807 952129746 932201116 980158083 460239307 648284688 396218608 707145107 99178702 392686135 695360380 866997831 291263942 671732047 725793887 746689775 709185479 999685166 9789839 327821569 989879202 992835274 709312851 770752960 388987848 534626828 238904179 683661635 344413913 932867417 651535680 866310303 851869808 941374833 49564343 479080346 910356353 974687454 916970637 964222674 17328805 753276729 533853985 682426220 232356394 675969255 673357406 694201970 109167030 638201978 589021230 870861864 638261250 774389656 287926228 871488227 885957349 889136865 977288388 996870369 316676883 693107651 937424814 981456179 176952339 487797216 278972423 473607802 474468866 684739924 839041462 924761992 90271298 575262127 754994157 935963897 48847077 415221572 807398998 970489417 310673655 322506567 318196009 591011919 128954410 623354858 575565221 655448829 534046265 830780903 698326274 727351146 259952652 671374241 816590431 883008379 864264604 998416221 58852691 902045654 256917074 969480894 62446150 148060454 32419357 52923884 533042777 568675304 842384255 849647416 155186471 316604478 912094517 946253344 6552913 699735073 39446953 575815049 50457136 507678347 868316051 918380541 801998762 879087179 930991660 965623793 391112890 992019407 475909240 890084127 64887302 382836144 962953477 998136850 62028943 505369912 127825889 165143133 364812586 798962537 91037219 930624644 566640039 960995291 807732646 911173346 145257480 178016722 722859081 855981313 728007620 923143289 76755174 128013340 343193406 615598673 561990442 780013027 496379254 498236842 501801125 997627564 991383528 991451553 667476086 762247422 722502457 761122360 568294572 744519452 465768660 544973062 942863962 967363873 59464997 884412679 133705748 928676789 268359337 487259334 20575786 965668779 940038651 940603612 451577730 966222493 631773697 866469515 296887625 686617983 908638114 982175795 556746179 791845283 549613375 695849016 80511365 387496463 712598785 750705072 144699364 230937112 14215920 794115047 264792711 934497162 381620683 452630484 222897525 279821042 450034955 957400603 309290099 920052132 57539848 889644681 678504335 685989110 854896796 897666374 405245577 717748924 666068246 909812454 360195956 814010598 929396722 937404779 787031223 899911799 979766759 986859426 913556015 956423176 269950997 850944696 136739483 900543320 807965873 877116283 378508243 636484657 147719332 400815734 302111621 751986048 330307634 470009501 449762411 742721918 63010961 620605416 937109671 945475333 889588602 904304951 786559171 974599904 738537780 855937205 449995019 950374676 359387763 977467582 148036594 865132306 242018737 342988939 546952129 676235034 109830610 744697707 741622607 973222996 654408664 672332284 459067563 804737018 948963623 983829103 606862954 749913238 526040039 767181396 491612550 647045214 563447604 592639181 460768620 726458366 964338425 982062511 109864516 198376580 357271359 890225113 516647377 891913716 680802631 791711065 462775708 937546862 241554961 558394774 790164994 917649820 377694017 638054285 198308157 466922646 344941225 667868140 921057750 988300356 127889586 265900169 577613722 580682271 905854138 915651738 852402306 880669149 55034994 200007010 50316352 724717670 289025076 405405096 354893374 422705196 334368548 698722526 680368680 819853010 181623407 875637679 365636332 972776475 895089482 929820788 59282535 997626910 520338397 728583417 371233849 780473239 909858734 920677501 155610333 485083902 244445497 798181813 828889451 860858643 494519270 714807301 206916904 626624970 539195888 944029297 583062238 863761613 821553269 874064522 145534058 354073651 687749457 843497795 448069366 751247328 302337705 963656128 719120591 951603159 174204166 693506857 512901783 997809364 650900349 844833670 287909577 304201098 988896882 992643117 180650670 434920993 393618434 547914269 886503577 994283588 101679072 429697349 824433992 875810947 865936580 929883867 883153593 900766139 896567122 955425188 796294311 978318748 479052933 495884969 601660287 704404817 290901799 430441274 57803895 823044860 215387438 905669173 546979752 810385177 998037519 998555528 859940319 899926779 655622166 859752396 677589850 777102438 306434642 898612743 482770936 856338284 498148996 705870823 436540067 811569443 693698960 764803036 789380778 933744734 863783089 892895453 47061586 662722382 129434560 648450067 957830921 980335891 983211221 988941568 776208651 957725642 761547989 884064505 195081611 677596434 113604578 553142195 392546104 863502298 696675351 806922800 897121408 905793764 270434879 721491685 307090493 410513389 282313291 563056436 160151749 479122989 104129713 920593257 814024690 879815855 718285247 783743661 184146770 528792668 76777061 595308287 477460646 812801977 183904637 833267253 989047134 991500351 54378070 846643086 270165204 356264959 421855882 713869623 242708652 849233536 206947200 540669786 713997909 797348702 753111556 853794305 589874006 865675741 232879968 707091618 32269509 500318538 815566238 947027149 767651521 959790596 927918226 948547958 410111494 584812452 943178138 999307649 851857093 968120668 302751719 684091793 77260744 87863484 489000115 789502197 554095443 728620042 191577549 339598170 827635165 934527357 9836541 921458070 720746688 865876344 404750346 926066574 619607134 704845449 220819402 820686020 353451173 953909294 395095846 921817431 943580034 976936871 456436930 749911911 637272568 733755348 2976610 29670076 226823470 951341742 898671049 996969118 749351487 841518057 160903261 856507733 108433316 166269417 910611813 987737942 593900720 899445980 894028831 993083450 298301874 620158248 518150207 944767389 761533039 949015547 999236599 999929953 344998551 787031236 813188232 931063587 123405448 865433601 889139778 915617475 366801895 380986206 40416076 534032715 968104911 983968410 817076331 880959788 930594147 961605238 747243835 969172558 174464386 983089870 956464831 995421130 801201154 932602585 246841816 407251671 485901552 553399307 347249935 422994859 44615355 505531408 642202877 709414803 730803696 903689876 189817404 210100130 153064273 451513029 798910819 953451142 369485324 892038403 366479679 623014410 511835755 844270512 137298644 291581647 461225884 736065059 92051023 894991684 972598890 982967093 657041380 659990261 881092025 943568868 234094500 661099894 813354444 908690959 60099857 683322482 698475043 891048719 956358415 967042516 979069358 992996913 17776180 644137054 27092281 431469527 668911009 971578756 525018809 686096870 98985175 727883215 84430931 434871399 290613903 726733776 502662942 897895383 790839164 929821833 93081052 714585751 803356719 872910414 363370424 555719476 506060878 512310721 547951173 635108586 430681213 541231844 431686546 588382052 563832961 877212704 177248893 737546389 724000265 789994717 455926009 538073846 697842265 842177292 276296842 454703526 164872693 758777199 715221512 757995601 456866592 489866086 539476747 563001385 516281630 893175062 924213416 992914348 532723810 791947203 741365975 934579927 161683494 249912793 869300917 922343977 616086601 836564486 65665630 852618868 832442516 872347582 240981736 804976367 324263190 753593348 255389207 399024352 925619317 928062461 137761530 510696282 729467632 802602169 41313131 204276835 142999394 685196542 701783693 733290333 457410821 850248264 159378071 214738199 31668753 59977917 602772672 958275155 303942088 409149972 278810248 788242932 596776975 611330801 435035779 927365016 277055127 448811233 434873268 563913795 427063870 573562043 25634893 878519721 238043440 690670911 237059386 726735773 123677446 884119336 675214595 862804489 738459838 928983190 697283811 739915523 855346010 867131746 610780749 656065446 23871196 331589559 937200591 955222791 401419945 708886400 687085997 807548616 794464860 846541493 87523409 647607815 988792118 996453307 244312094 763545238 238896032 904162908 839412477 936605855 844019722 985912605 27349949 203775991 677137588 900599723 431452072 677629729 869567697 975533943 564288944 641349551 755603775 900763226 557879648 915728919 439189032 444180413 159320609 992049371 55792867 682678577 579994504 786834396 441807581 571212617 520500380 909353086 356585355 410121638 636058182 953489355 510151550 632630213 235816987 823337139 631117592 781926051 953412703 962652286 808876187 839306019 523275358 551950298 856573620 928502233 740809893 895068960 749579041 773945404 835862546 983005041 315926314 477768704 196849148 896104514 661954025 863891895 960568091 967825959 994656655 996198951 973766557 981052658 988832753 999322257 381191559 541501801 856713932 954890162 698382362 863931548 846890750 884089124 748616808 880607691 844711972 915686728 894537829 925329307 525444121 841858383 801278223 905646279 453878337 907506967 536226852 800862564 682457180 842228866 76469424 196389704 994054643 996496430 321646216 827968494 705078071 845441682 771030207 938076736 650111697 791780981 838114215 887710927 614401155 869721755 561445362 827593023 102785410 453275611 470297998 610572688 738741436 746136540 483867876 981067986 453602564 925242651 862456904 900858598 722291241 871867819 363483992 679147350 926111636 974026606 445348984 502741751 471099614 706997374 20954429 792046225 411974481 946487852 921752590 946048043 837148722 915049554 730283837 942835328 507375769 868370385 65678359 702952461 981826539 989242671 161910994 999248665 44803009 440135361 347404116 549052070 300234362 720765010 329928439 675209468 953042893 971584341 887745683 957919132 162429554 189392064 117374249 794885758 570261436 683874256 135233586 551997726 615994848 960929252 921761210 924153696 136352031 999485693 419020094 773885151 290797527 388584202 925980760 949242388 79286019 81057780 168055151 627927096 502245216 650568839 575610216 722372223 841160172 905851394 673156463 854609182 650942246 825910231 82159502 416921806 535328961 880311262 520214202 820825236 193134117 216314626 627844016 753851050 405134681 943024222 79690228 306925378 429807216 617871308 788691656 923449043 192175127 606356813 903364720 962941557 98721471 221400711 139592741 193964388 111297053 388123172 276813810 463038100 538751253 916383498 376031576 960107934 289898420 568763446 983474301 995508969 964603479 991349664 304783379 769569173 982672169 996944249 771243835 913920024 181920221 194968607 981333643 982994081 649590293 768533302 475423514 854271636 481885008 584843392 258461633 361222618 601056453 803555042 474407023 865204443 587498445 619539851 833738761 839463073 772562158 899162771 505947655 547644626 538164365 983624693 407073220 910149536 687955137 772356883 529542991 937053261 73298193 515474553 971671798 971764344 688805578 960673108 302805339 550058266 986091746 995027695 387650689 635267567 97484529 695487311 808357236 969059625 289403393 538699678 388673099 391545418 8328818 67528424 582695618 862224643 676804382 745326911 766586955 959227374 762536967 936655456 932289328 985875532 770488772 902996607 264856096 353216490 707245196 794931291 964021030 976994803 816803301 844647826 661889744 695887319 244889038 636963421 271707794 553817816 890423879 928132631 756932216 798294930 198641061 298984706 72852608 244396963 632285446 731641680 176282694 952554898 69352394 406557823 624062987 921833287 739957693 988786999 386789349 985434685 849099703 979815557 35280716 478521105 916568377 968616709 825365224 894743466 161314062 365227731 785399533 917005756 778029670 976114611 674623429 792468983 589780877 671137625 69602746 662275531 298761907 657494567 164053401 975686432 200880146 380697601 49740342 414598979 255672761 622450902 790490874 966902620 195566647 989984738 576015803 897776164 934903305 970507392 611375970 935639157 19607055 529691622 217202759 317422867 389572438 552835158 93160396 215563251 444710222 931610635 606973552 966029468 297035938 503796391 626259123 785821675 986498726 993553097 810802342 980060823 685186775 866443881 553546627 739848184 547387559 926209862 491597569 769995790 905780142 923851232 413024709 622076888 518795742 693208904 785080363 847552745 539977686 696431515 943266187 956612467 531325044 537092693 702980029 761221655 295354513 299943200 881227268 908424076 75187341 359019297 485076060 966109351 179570825 561507271 966968340 967561626 371789643 486259396 417979308 870625959 386116729 762760320 989347218 998466191 839314670 946817314 616228553 793811380 939312207 953482081 94344873 280569264 491814076 644801416 418605509 855530603 84878965 871973302 167601621 403299514 14657628 529054618 18533768 799044475 92576797 937708830 369354466 936813314 415626955 800117586 736139446 887179305 307945647 689643945 423336088 513072302 567007123 780639953 971467222 988241970 266437828 551137685 900059509 952865803 943229389 962181875 246695318 443838186 414074538 624853019 305937863 703049772 163320214 216315074 796797268 834847769 735261414 968014019 596036979 876793606 723826526 981083836 963633371 990460292 425229997 452613789 844169930 951546930 309114404 972939563 420613615 792347066 681509903 935584513 617176532 997504156 352456827 800229206 939395796 958531416 949853330 963228033 248385594 258554621 115617286 921600719 329086016 937094051 900647054 942585418 901934411 970716703 995948443 996414986 259851935 962659336 873807037 879184700 157240002 890184676 391015141 528970802 947707576 997346458 827476074 973050556 380055846 425137410 158820925 514665753 460667410 476115661 716056596 725973674 559973983 847454354 377131364 865640353 909334831 991552119 620369530 991443027 882275571 977306184 50750554 736862007 316952413 465403267 425557710 516742712 819671540 832083149 521423967 759767946 141384141 751043514 801260050 992831006 269343596 357902259 919007299 932163562 388866146 793702397 295736176 916749091 870041597 949884358 273384105 903077782 671786917 786106005 506579503 731277801 821947183 988564150 953004398 966133449 752812802 947592765 247754820 766148036 539579815 976080940 375810719 619144221 877009253 987241675 80937701 102867051 606861565 826481383 329302493 467403551 789094665 878470649 136285171 734909455 28933116 981988765 925425802 953407570 875288487 954755508 213337110 555037076 562530644 812020402 421665416 926116293 375567708 895836465 420923406 467378965 573699219 929589574 453125294 742055125 430945135 698138836 198530515 298366578 129582782 861433546 261412799 936499891 403973931 823607310 645138820 825404854 178513209 571504267 712175186 990897638 630198408 825531428 736059177 796795561 847162170 894736816 476252814 921948768 34436891 733222081 673348606 927676944 520419072 965165373 708266726 772642349 437812401 715090672 683572719 839138120 998174088 998836850 266395412 359080653 127183035 668082077 931144859 945252014 347844347 567281269 181418427 465444075 204373521 606835107 688994611 842633996 809423241 909791878 932561655 979204561 734082716 874516758 528068310 711002057 414477824 565430932 666584410 884381101 677511844 957851736 961286607 995642090 655147693 858638836 40933361 732676463 88715237 672356322 263113998 716971795 315618691 339082969 190216719 520030005 647518645 702165978 4489314 514017681 558703999 967242669 694497280 938307243 161158969 608159947 558287403 635011245 820428375 823065859 652179710 987915979 794238055 909388807 182092012 834507080 128481541 475860232 697634104 863190357 403258258 868057737 979955480 995487691 86018012 988048126 228857166 845134640 991528951 998006213 325880930 755996370 499389021 721260731 3408549 307976851 719519408 831789450 151340966 874174664 594079119 884494828 600129198 629368557 337615799 511928424 565100841 659646399 758203536 861362940 817540404 848106095 439438545 461065929 297273534 890673901 354499781 522100772 427661722 729298338 867758069 924687327 610219705 930091544 647336244 726078251 492808417 798842980 953254684 995898420 652844732 807286944 12803635 888405140 852273010 961466008 277953521 405116260 920039608 946685094 19593505 666950217 760130046 761493110 191221920 916297475 251807036 617440621 787263143 902054237 48043156 688548524 973065156 986011943 773406648 870503772 477125198 946638500 109088581 445806437 418098994 582840567 278098947 566240379 322919302 402427283 601099018 990527386 916610980 960968852 24338653 547645244 170462062 512027202 735700800 864610350 970598094 973180172 275549995 944550001 55689179 428153055 974268188 982951239 854144719 860101799 218290315 755786434 740706740 843434636 159501874 659415094 589059767 997743109 61932959 206370362 366822193 848372329 550699553 943700785 279741316 436012787 842463103 922830478 376823032 632784582 782601215 861401865 733104572 935052648 286566974 391834483 288701950 374764919 487140595 804816331 10577658 326314087 827320445 863397668 51115449 779415214 402310902 496813224 410037166 635833923 172212573 596751309 886350118 940687217 852441503 875121405 247835214 466993997 986995081 992714508 618727063 719006280 830776072 869458736 926991499 927098947 671667730 699000731 791459864 963378979 38346531 707643465 866322280 969634598 731160415 899097960 338557283 816966948 315492305 461152472 136673492 307568607 137980412 619623216 689052488 781912849 365937974 538320199 730831578 848760649 697747145 961875594 325966273 635609646 244192758 929278208 593125994 610256580 599868504 872385902 851906932 961758883 536969243 874986757 501624356 969954850 671579453 682709477 689411956 904168074 231231345 660603436 803745449 914208728 419222266 886699626 376723210 898041438 577958060 582935670 161234814 414567018 544640525 583656304 838093960 854897637 40215330 830259938 241647291 588045688 855260348 966530959 791605679 975076801 464342680 592165248 196189607 874398596 758455922 819030376 31619458 744072918 276027917 707417562 653856385 967285907 915017601 971452241 714166239 815600349 851039139 852813782 289069500 785382110 902050548 913543092 378923042 550067014 822454915 938627828 625463969 954989283 793647333 893383656 318895333 839703984 357091882 860063833 494345169 651016705 645518089 864583360 19917807 114242191 307746260 321820645 947640394 952107939 135582650 906316460 686970537 993862816 301608857 733645035 150779340 503087682 944320043 979562985 49884682 465103085 511205489 766677761 525799728 616548992 807307946 883404388 793211671 871286681 228196957 776408345 123912647 807759737 782246422 893472224 626035961 986584128 120753015 607593184 44067229 541364340 770072874 847465508 92783206 423713901 450819905 671737578 389989469 527844987 733101304 801137339 346641387 514713334 930897079 977822899 617600583 854967312 140116278 476377466 435446994 885123505 319672504 834600498 561378738 607949460 442073892 636485542 62694861 226744468 89995554 281643188 799465738 820721865 255812829 593388448 689446857 752468340 644893626 703958641 54584602 911827760 750342067 944358376 498392968 742108809 470798331 918139532 5987134 469189783 267877331 614157689 393601143 866354101 274423941 911891341 748289084 771089102 549306425 658435731 646351343 918641660 225594090 611623155 916512800 945300679 960548341 983581620 494200190 783079446 996562037 999175623 805266243 923475096 914227825 940033670 783915975 867515362 834467474 909810439 55355593 611537087 465361107 681248616 425977960 822362831 182664436 250968577 827991539 891981918 478408594 997315310 979495637 990869187 28076346 394092270 248178345 249947363 368878104 384670349 822132700 925430244 321246562 892237182 426556970 890297122 560222920 857332000 236547174 786034438 453427573 562130314 820535889 926153386 982458939 992020915 127584835 266232068 597249871 769137530 521452528 522217244 79090759 852229553 444197036 910016006 183558785 454005229 239821719 408532698 782576575 967025585 428301812 475384419 729104512 989724226 83204978 730875990 327635986 517563970 103321358 342067504 957488761 960885408 948474566 963565090 271052883 476882321 471696114 615386781 293600191 964043742 968290383 989567006 986500777 993573057 259487018 613118901 516883061 614503081 950145563 960896993 194467927 458016418 454717943 507416995 788181549 853703946 171044454 470275163 543970007 976236561 985235004 993910991 625786182 948749373 230334780 948017638 716682227 716996929 456160005 542523382 809981027 813940571 901841998 993693582 802094743 825853128 778987932 782993463 316336637 706246048 126769464 286986244 368457541 692992287 438552422 783960769 547830763 597166961 263219230 632188991 119873282 404630355 998327532 999932418 879717070 916370150 785372187 919168693 341812524 908362818 925390481 983266712 785206500 965825676 673682924 752515540 924114270 997191197 185578943 754062583 648573689 651901718 88468483 560985000 412633278 494851280 852574331 961318713 494090739 980342550 810105333 885347468 31222270 618917790 244054789 762252920 264306540 594471204 740922383 753825005 148856622 290326583 410092260 549947313 488905328 575788329 589153235 632555241 711247684 737488814 816773351 934672024 964063035 999855572 598212585 978239331 612907473 962181708 147452046 310934421 408263665 568980586 160745197 583085094 187484440 577542148 782035966 970076046 493998634 536283588 801735750 835195331 816921458 880753062 442488273 718423115 584222094 597142044 949388548 973788499 591094683 971957317 395321553 663806720 937099308 985834815 899710849 909516415 530021381 627846961 623000210 867214349 706261910 897183746 597393207 693772246 229865292 267392098 7213656 319124929 163983662 491114092 52465028 570126029 14898737 338067011 141837332 860531693 927728131 994625399 315304130 483009028 308325644 328114489 728678845 909373786 150346468 478437276 520638738 748647035 484717672 501777622 517963797 674310657 331692037 904049751 971675099 995131753 870022652 993671032 31991851 285983937 381175955 462880652 912281220 985219780 423647654 817379666 60278732 271190634 700615395 895523886 340281621 587462077 867722696 880360526 567464335 618356818 982691566 982883542 294003511 993550200 279207460 310801073 373150847 734008640 405337846 940596438 152107546 329997444 597836135 860309484 479154369 886783004 461003429 651668491 544982103 901195491 474357859 771594661 850926435 884335325 321674091 704710814 515627749 991127069 949335298 959135984 616920401 998476322 373322940 734973639 46742034 592051294 855317757 968972839 54958787 826101052 778133877 922477020 372774875 635687068 234514853 943444138 275536428 925995254 954890391 990416462 845448220 998216623 941722179 989158327 553325532 593853568 910874913 946127249 384794887 443370052 602476511 700366223 584141614 703220579 203174662 883180356 510308120 630197623 839960718 996488663 462646834 888558541 377908686 715198727 212179956 456832037 539077472 813053398 653368265 866704624 205102325 788467375 844714527 882746614 625843634 978474257 533142238 566199463 223329792 460502271 717944426 787266674 703334944 766089823 530507458 879247957 370815154 763993309 408185121 914873062 555661951 574098137 88803254 761004529 739740944 990963344 721000762 829330613 13898162 137510122 954309241 957076868 324137589 409736217 475297901 743174360 221420517 568049479 610254812 996570067 147630860 719652696 979190066 993269029 172952800 225365264 442529861 993670111 546800790 994045800 476779478 935319577 958792002 961614056 203354067 807429026 238492716 595602451 529190084 847282268 292281132 300211104 153076279 731026360 394145029 850778572 194939434 718952870 103388965 800225091 716147470 742508123 717592003 976114608 311130181 470167511 132929415 485218631 270010100 514666804 414422808 898688915 838540524 956434965 963571620 984090562 177625128 689143830 772875268 975196559 398327309 745464344 342685240 468505686 300942002 656209342 701441754 916551164 102308652 420312950 141685128 610761104 174924103 895522924 498152577 823045384 737867755 786473151 917727983 999818880 109572034 673070204 444713477 902281802 803395084 988530915 156745929 484981387 304171708 805095291 164687896 450880585 183185249 465258070 508506681 679568233 417099392 846742805 978885015 989518928 451512026 727665052 577392373 830320557 337404739 492701775 433019544 965561839 328947764 966266747 914976591 953874503 235190576 864510105 70173379 758427748 696328433 868061584 637627479 816850057 926684054 956079911 438652873 875284108 207494505 663970751 567262001 978738414 738139835 847206892 818049246 963885527 830355606 836453859 776261465 872312471 960600367 999446544 45168174 866270999 935693049 972744002 617868636 921884235 887945926 967608539 707339284 861796990 702156578 979891398 747087500 795078018 26172207 822633016 778104302 891393531 178620686 473209881 968260553 986805871 455902813 646365121 913361437 922287235 392843135 667671175 433602622 860790182 638074013 921992921 345849489 502142974 515380532 945810973 880360128 902901181 491609548 770120414 413046901 851036613 15569263 937806937 911623488 936051774 313762578 726618653 715619009 831725814 949636667 967663214 310898243 997019722 148851858 380251961 716568719 882443906 137377623 215179788 518326376 558509353 608063758 911320561 953517880 995127475 428582420 737297854 154251552 627894092 293415662 897978529 613792849 784674690 85058085 770283857 427202807 688212623 696836452 961104604 805865795 991368990 960405725 997443931 406622509 638505942 854191217 896901927 745850994 807135783 14394233 727617514 8992037 724091844 417675 545019597 629343417 728291945 631932613 742375920 472921627 767700434 860300861 876111158 387291989 877816057 12288850 118693372 843919796 926557016 861268671 884926558 703265467 911469200 861725062 987018106 425821267 678773698 886195318 992852670 261429185 695900587 584860675 944933486 210901979 526637336 412542543 457451604 127462203 133301946 190220384 517777148 185187752 493477261 952541620 984178481 981732186 992619081 281440604 413603149 286013174 997471474 642611433 922267157 541962030 794827491 268650305 910057834 473271715 664703585 824463673 853623329 462076377 851115028 456825000 586506341 510089292 764759504 577069816 911542514 683493351 766463710 826430767 936285918 362008749 999919474 144265500 890196294 289790723 884354523 934834244 993227995 717738255 772894640 307167230 874576540 765120704 904883817 360613334 755682423 898836138 985361119 408726569 837464723 372167525 804014966 273169681 325195596 227360417 420051376 496583842 781081949 986798801 999757293 978439164 990622363 196646043 532034227 736240357 871524107 572202026 578439974 265714494 722881299 766840343 890846693 419568370 567906949 736085271 748019679 987022573 991855105 138116158 441274919 61385481 870038090 937795573 968342203 545778321 754487741 521936740 675669276 792714096 849607219 208228491 351589024 526083492 994274544 115164851 258940452 560975796 573481744 975764893 989267944 507794140 801706259 760688149 960072034 522334885 906784023 675032551 885918876 304795545 808039990 556364516 713976986 321240604 781296447 282959698 641874175 782068721 800180598 732160931 946227824 820986194 843038759 895712762 995046893 579204397 958398532 63335489 514297329 118626607 333743845 980773654 985086631 254377807 718225855 658971070 929362165 476680422 665377810 59657791 800611488 322119605 405393184 755553197 852299889 14063001 980208780 336543223 810234874 800667352 932047778 232907984 938346332 749172012 934871473 723367235 946201783 184338915 473550530 649101311 937642690 438147836 584417501 713376709 830664353 548595668 771902601 791179523 799761374 404323406 444059156 298497187 914609415 187252793 257097137 196951962 933593225 928558492 931904693 525555649 887084288 4430145 729788214 27417146 525998680 812668975 820002376 858295156 986447853 890486135 923713739 618601568 725890087 489465246 558709224 776969908 800579959 450483180 936526176 553984518 994457313 880266425 942182162 759205450 869916802 99494429 514664360 687089965 754317058 117183758 223763387 193879540 613182651 329989638 731166305 183250942 595829815 507255985 777528885 745648844 886849188 253033665 597832705 203840553 222741033 415687423 934199942 551663689 894909316 802745731 988318653 666228808 681122090 357289237 667721635 328801489 358721096 339084630 548877513 408190932 824510243 533769720 980574665 149574637 471265521 720852496 879649481 283786272 503451419 631037161 654544846 53618357 905419505 191924550 599479433 233393495 293645580 845511492 995581397 568589359 676629906 336413750 946843416 576550944 795854164 614370212 829134490 232589862 299711864 77723251 562326096 693470920 765092164 135090303 279152212 197922675 712933213 487643639 620373094 644373905 709797367 389173918 456947949 859207249 921623425 37409371 896998219 584392263 802227972 38043345 286092340 516279678 657520644 960459422 974376783 753157922 867328106 855589274 947811930 554360610 607428127 555688034 927539845 10598504 459693257 558708994 584908886 260930090 357241158 3245485 188818462 529530887 942190696 80031452 642344290 972773596 995613907 912950856 925461210 171016440 281623364 869313398 900018384 559183170 686773663 365275177 857579015 710872396 766769725 169622516 178439275 561006360 677326749 270015011 753814154 525070836 908814141 260052144 735121376 133773124 486762356 397899582 708461005 882583153 891210521 11641067 675674776 238930783 842002468 894523256 971665642 410324957 785222337 575780435 899983844 382600340 563062055 525422267 864579051 212673398 962263145 451806118 786114628 474599463 704773493 608688950 991295148 910303787 989091069 772714901 849626233 186374935 906124323 9602632 205405600 289664145 686508868 310179954 321731811 923116142 955794861 446307172 781414324 334745254 531223921 746326540 892810142 470346288 574911532 878563433 890630564 435296940 498796365 906796959 999404733 269297562 356761546 256791738 261617899 174284013 472082050 791430638 896162647 12531425 605933924 690924681 977537031 42645317 971177209 160992415 730203280 796171557 832973790 656285886 844558453 221077078 548187518 253924114 478095275 375606087 456522352 617313484 880300828 493396400 758125449 891195358 946992897 909810189 962893062 163615849 623840563 571999903 927891258 298210067 491677907 39094466 575645596 19004559 20659676 168609021 555483004 37349769 592539376 214889746 911335411 317763417 953914537 131410699 829858885 596557798 687978905 820361741 900849433 533183490 894494033 465542871 466530579 959598307 974411811 358438474 954694517 871717627 961481813 214761242 843868810 180636332 894124657 989943580 992870998 6776236 338734101 273752360 741443694 953243114 980157072 978955614 997261941 812427959 940950259 188867989 450810234 205151240 774090127 167921121 562349695 614648348 761734404 59776787 260443447 436599253 553164139 660199496 693091715 492080053 875434669 273350674 652921995 722197608 773157735 106209127 837272701 647728399 712992265 706353672 881982686 899160018 952494934 107709722 827558403 894134103 934257619 13829103 195511256 428621151 858488399 568408829 676796824 272767513 730374026 302151520 686131848 336667709 708050322 132604123 631724990 731102162 778416900 261045172 414795438 28212707 808445282 788574408 934898300 940010949 947629282 520500247 971885674 280552479 936326789 749330132 998595776 147189634 701775883 703936523 761586010 38917979 92038838 550671257 868999852 216438346 751393326 520330860 803679170 342039825 781723332 564765846 885468640 908912233 981007002 520596332 907765734 950759010 970212429 546042341 822932147 243658555 655914258 960173235 995869264 69556609 613281974 449591910 594291011 548346799 901153779 717165121 993246572 132605382 243697061 460393857 589083458 489603657 806388405 698215894 781370501 165263209 956779556 92190667 261734389 999631726 999876769 881820205 882990792 158306843 472829856 314393807 880238129 163592231 561327074 251080234 577055662 656963886 951053708 929988731 953452223 924352374 935780911 425637231 889032763 428808173 467484222 695172587 711264082 395240941 972371375 339548116 591886148 320634911 478956351 44656427 747758003 258156570 379463242 42156059 436334936 532028390 833738160 77574205 616043096 213694816 289944831 223856888 489821763 117149212 632058303 826809301 873367321 641634660 685634706 142358292 245996085 861518977 902396826 905438788 974859024 489104181 712824301 769087746 927904145 408773167 903207383 375918638 788041234 174795999 648788796 295426342 862930713 873896301 966779498 708469498 926791370 583942835 689844459 914693876 993172210 524572504 814768983 941473424 986550182 68882314 318429742 424352248 998298433 156485129 611677063 927411051 970547055 6626216 495620100 889648401 923947896 412927895 487924278 778899775 867168902 776798785 914530272 586893748 840681449 209837392 801022827 630674643 658047849 990868371 998131605 253005401 851067237 936939226 988839917 728893665 789266819 149299435 799763617 838574995 938098899 965881613 993302263 410310420 589109742 164503111 642947670 26667997 62458799 269729735 872886730 289683815 643409491 117259611 355861501 479939847 860932538 961985905 986329021 508514287 768752023 953148128 985359143 289028720 347911111 727008179 851135749 5683158 208169977 824460566 884521535 531743328 780351545 558294234 927426075 750517926 830166995 704717954 988553609 60332552 554388682 808347302 987098244 992094425 994990845 79297089 930186241 189084793 859929175 529761781 939005406 725941798 923312120 684516153 742229304 109180476 642118198 240454277 516236861 236844206 909414046 258726294 688867488 113284383 601348177 36948358 210117448 542776229 728798583 851649829 989219861 498385462 524252554 729451499 869504578 3068085 230729021 664921176 721984632 243199356 916053828 289249679 434293121 846799788 940889901 171338519 583964222 797710416 915656547 108590501 715689490 935022719 939588165 572701348 572833294 921828267 990038694 529941463 744649874 361188258 717032465 917174339 997190354 68028911 905601307 23135155 348390753 133942600 620497919 851351463 899759622 342464346 492574837 102756182 729577125 917313530 946762884 584772305 690571792 682959760 706238940 38630654 373716034 488906278 802276822 179377521 989710096 970489122 970643246 441882383 748344612 677726580 699820656 208074520 736514016 191839550 523101439 207857169 489418388 186180804 680785458 536196469 965952497 94853920 564387190 321977250 586599282 475496062 514782191 439287171 785964680 870559255 963788065 169871131 984216636 48631874 119148112 730182415 837522100 599406966 752729803 173564666 774630509 538797946 775904891 422341546 765669533 843326044 961051982 101241053 177471911 27478078 345790297 158280110 714496387 174036649 966175630 59344015 594127629 308815821 550755177 669016097 843539686 763218389 831537743 58185985 266281359 792202045 940305229 500651114 873257466 740242454 749503190 976831966 992309407 293200089 816626279 878566696 983075777 338558677 506400362 527851212 921411966 710035983 922981907 110584288 266007727 338392530 526815335 341404744 773950648 327420048 712479690 861630884 896727086 726412803 948067385 831125161 864210072 57430251 710697023 715129130 861210727 335524282 399830565 20763027 100233823 882079851 932329935 295151794 687314967 30521394 855152013 745765436 785036798 996796922 997802491 118216811 486192572 973904384 977421035 114041410 908494452 349452689 508565778 39806373 238707710 153672470 583530340 643393975 687986180 170337370 255307273 93492262 822968184 974407464 981731548 179008037 357715426 636673909 649565612 138380102 303538216 709480878 768111860 419493529 963929749 298102506 514314017 699849043 996966311 364409608 893685071 542608107 700310965 19735669 905559690 46346351 900263303 836883134 934924610 398573526 760127662 531178280 645736553 211995792 305591459 81713069 634193590 104857306 744633569 343729669 644133638 676230242 995579848 796984741 925812841 332978838 690236280 869418813 932076683 241374899 446954300 141425299 894767112 676756030 771183082 40876870 865793383 765856626 963952312 57812218 510739368 520736400 933443546 315841281 577188394 105997714 202724575 18152387 657975983 1531410 435717949 673065978 738876282 480310870 971498451 904478143 977857865 295985299 461880618 718676413 828379220 308116078 749541457 741702124 982143668 234712562 757752914 582791647 676495909 487209213 630231212 604348396 700252980 226367296 926262979 725497369 837732494 950487847 974633876 309151635 410865823 516466665 833422697 871151371 891440440 897725733 956876727 450149061 990780729 37560569 987903621 507289686 901559486 805071601 859072031 350345523 910848323 523043308 853632471 47215619 196490739 274781689 427404949 419242648 922336489 819965605 971091617 801962466 829586365 161954415 669988911 506314883 865724912 649984399 705635201 214350304 666137382 823944983 849231504 818515780 957271883 996116075 999743107 85257112 884767113 411613525 562558650 777889518 927971706 966716467 972216816 801190891 820109277 747641560 788732531 635700350 873354731 407373367 985140842 466847981 735253575 488303658 727055322 348207111 925275185 221795250 556064387 327074547 930724919 845212891 875431963 319193600 778662029 634067110 759913162 869062503 919676643 827506065 916139271 804897770 819808839 256759762 866696801 143295184 226670439 50688939 340546944 44227678 456858607 394938857 980890415 806388500 884387876 849224088 929624053 905247295 949003653 266508055 864060046 600324450 989759544 781132678 914704569 879054743 999748227 244051763 854579679 949112531 978848620 128676320 794152649 906809388 909964357 637353685 926663585 462031318 932086694 234204190 278767433 388391380 790209420 548456539 668140687 870702558 943168390 663299201 801803662 202381927 858645921 104126316 630715588 145045778 853898282 223143921 226450398 553009212 880284107 368565643 527143181 741340151 787803519 760532285 867649236 220393972 467793931 65834309 645550137 13253678 32335854 881369863 924483932 440296553 834874518 919061482 932095800 495179854 853364929 472385873 549565741 996626407 998660527 180925388 444356984 237357986 423836768 931870699 981407031 403960486 958834210 488514436 620936949 386991316 528226135 543646660 685906982 390476354 509974103 697001615 980764404 177066539 424101061 770654407 968291472 665351417 996270799 832125388 859747664 498761169 639672485 317664541 790745207 771573667 887085861 208799807 740061584 966580924 967076332 13847788 92825416 728066390 775699853 18627778 385184477 219291954 550445604 577555272 848502569 1650911 394723115 322692429 523440387 500327335 887101194 87432823 672536189 271866799 604626726 485007194 780441977 226218274 456935785 837547362 985348046 224587988 934339205 227645872 499058888 260755692 983626484 650269733 860289678 731974935 897728147 602867017 808480593 327221278 453222792 581289024 646649262 234725539 935913282 297547301 712544379 551016465 648651922 397057746 936338717 42210845 95336974 111865944 845129452 864067289 958184291 199116766 919477815 617877971 718040489 944487329 987226659 611469782 676208506 688576668 751305341 671313471 744420205 990136972 995697515 818218065 983760324 274413037 314234851 29663208 302616433 688380419 920149017 762076755 770064477 796492077 851386247 369608337 583600817 555120348 897853184 385164138 958254746 121832022 917806487 471894839 861243864 237779463 626638321 338457160 559618018 549335548 980985395 29014212 587483503 767120134 789556723 697891871 757912088 413455221 788898364 287101761 626881991 30842944 63672508 579879914 696863595 645869310 831511924 341866009 934630288 331657907 393081210 781539404 920378860 244052421 856033964 177727306 419968881 267353550 901338930 558636704 678051023 245806087 489126068 12330167 899314700 397009279 771454118 213174628 274999035 555344565 996858549 929821725 969268698 622664452 805350222 213646498 481523921 476258965 695932241 482440329 907140961 574119069 699261992 366351430 974362479 698455813 746434893 56896648 390071840 732966079 781528996 644532939 942084407 540525972 819668915 378217334 787492267 505127498 961352531 575140556 581934832 889591616 901564079 173609083 454817146 240128169 382066848 192534450 196639478 983638080 995974908 244669133 549278618 370436054 956208880 838738680 870772621 630623639 750224220 420964917 511270891 820597383 840401138 823624913 961272984 86465629 422280310 111044899 660144688 593689771 862797775 236165306 693666190 787557621 833216792 440738290 472088350 396926838 929151326 247095873 414431246 333608251 726959440 423712702 956193954 512988662 774574103 823384183 965286915 492938195 833856132 684225874 796833771 753299088 824965128 4856772 243107081 174550034 922676435 458717893 713283473 981099773 994159900 372873966 832009566 850268015 947032755 4294890 843379520 926578947 994583169 468388664 528419403 424939712 668516072 397275204 527684446 837832351 973073603 256762068 503268401 392537387 615676164 606323183 930307086 245041757 604995340 407273747 767096086 595437465 670748149 507323555 975721827 775489665 940505426 517482143 692900313 568871101 726591680 637175497 848596515 959035980 989381658 340240453 431236686 148788881 628832169 181281402 990868131 992469063 998018242 661178820 884077051 522517635 942317191 725555803 843448024 454901175 491277336 608564120 909455256 265434858 416628940 511849465 818753460 704501821 952327677 167382163 752110900 812651459 824051613 716168108 875617900 89350601 582730734 889237061 987859410 438661556 868683245 962296154 988270163 208867211 557023764 386718722 500157713 590921966 629309779 697678742 722430344 196487266 946458316 611467432 885598671 348059211 371088979 800582234 816260591 308230877 971389115 500641454 957941124 907273192 956166841 98636213 977795699 99676594 399080528 989723799 990628623 641192841 905650014 666217718 715020246 333256675 362337318 317710425 559239631 166202817 368516468 90235589 689372905 841990079 854968347 636570108 821888491 75428711 571563244 476422112 826375392 796677342 882698946 286761208 673119433 508773772 511070333 821029422 893094734 486136453 566874008 711690686 898023696 900862098 928727461 247514131 548570798 232946509 280380869 480977200 858205832 341941222 741861828 129953044 525259888 677536213 704547939 893173083 904498674 497240286 806441341 215574358 218778711 668879419 944586602 936959597 969517055 642542523 972263838 42272551 999787329 408790991 414388186 596585400 728348436 975290773 975959461 261409083 882298802 265215382 474613487 612506088 686281928 805077470 954435407 822206540 889677072 809394867 829318378 595721953 650469424 592955043 799514337 81832285 452993317 735310478 819073196 470067832 698340544 657996884 743856111 837329097 925494003 657274631 998115136 350208600 975746832 719532896 793353398 380514692 774772083 43590127 427719311 279430710 798456194 445623200 846092884 328767579 446496857 324638368 826067446 882768767 986364740 483403078 937884110 559990754 818777831 545520311 581370349 778008533 839889072 572398122 805566442 604559966 665027789 995056244 996092363 369191234 496031938 617029887 673860639 518266866 976397354 842324424 864979864 687608512 712753618 811435542 898063581 180065295 533037032 656733646 815290114 717978053 786129934 882333116 927541674 657680726 951227169 863885811 958484551 75891051 356508989 641913627 660020923 156022506 719876532 570324535 857904988 893035664 915466907 862941271 983791709 889368801 957134516 30185080 611497879 233039585 937279652 929706294 962982118 434389902 548607095 807457400 892972440 266361957 670160714 830889515 875304192 464514655 501803238 765305036 775632793 601756149 976696771 975548218 997311485 256492421 993960289 606056434 905209297 602046071 638060409 454500959 562401061 169187350 187154710 704645284 909363966 436455499 607644450 489402617 619757456 602533057 685558757 282325281 300535597 438328592 678515093 621325447 648359476 17733413 687261463 117012127 236485144 95113891 319581978 981837953 995433655 623280636 637615800 21586340 724246399 510617055 749620142 296537491 983851124 696435769 884160220 241098483 241251094 800871877 869082723 222737438 752103587 879671542 894918487 218198473 688696145 458329294 734478730 850652731 920490830 704109907 708482063 269524232 856402016 122361431 137379558 353705908 725226497 363904201 598651340 73034008 284035233 58917451 747727275 139000435 175924835 638290776 869309880 201746742 444353952 589870125 601399054 46380196 152701329 818865491 972912796 708625561 939368859 566892599 984697717 395564812 998660081 506159608 840749532 995070579 995722329 235113141 421698625 947663154 965692592 681225063 786022563 462371566 818373414 403412422 477203804 750293368 949206513 84534010 697747214 155376846 524964290 463489650 742525390 27424165 788401104 423652795 809109180 260845682 965394805 11811462 223043007 611051262 827979115 966455236 979832859 555634448 791234219 53933489 822064906 727733526 735011327 352643576 779633418 969294411 996711116 511790158 685961833 889805738 999678567 545573907 582701739 930157326 999125136 469619879 902570198 248133444 528243758 851065728 942362866 445199539 778744065 473505327 651374853 432923397 803676137 611112014 769352779 240366674 725685157 396954554 537160493 930165482 933352272 496434140 706723699 386209321 563135333 257003178 259844234 698718509 785088124 853249133 866303184 905659864 962118271 683074171 885283997 384729484 976385112 391122665 935753735 871929835 988611125 764732825 826392579 132428729 286155063 687732477 929975839 588269434 838334603 213714925 690951743 32049102 597727634 456890213 738344555 298580859 434290312 830485413 877005930 642891845 707677832 705954582 860356650 243191292 584269542 792226548 953789363 644909826 972106253 37372773 722505847 696655002 774846107 795012540 853254590 194028195 555842608 297596997 840326187 730413457 854457318 138610655 411712902 348191918 709233876 975229806 995628747 166745240 389231751 251321353 398625959 583427395 692536058 864730877 960855130 673003143 739317676 469559748 703627136 566762521 993680854 915671572 979723634 657553830 742027154 636357299 910405572 44333486 682405564 234904027 638129940 383766859 567489822 439386383 671125125 718898428 806112509 375793286 907460000 604837307 883276839 121849982 374697611 902700968 937838348 677485629 911844736 890559499 998755807 295382291 437405566 569960648 726993424 969474289 992748086 605223423 956109195 675546004 771755004 870296763 881169167 111129770 181182696 40789150 328752415 198419085 343904566 33164514 110467096 150023742 974970737 163932636 611022640 925867066 959767780 356194123 827139939 248383714 578414223 592818824 916976592 41987058 393606281 665054209 725224838 529790035 858344661 327290002 719452132 867214049 923817875 921438604 955560832 596832896 638373176 663282651 835522589 817745805 970971944 70834345 988005222 555430793 762437426 360377899 418953690 987226320 994886196 959121939 979267185 627942096 654564134 257846637 782468083 164482127 715302778 876494102 918789280 287698469 364641597 434641314 941143159 761477030 812309401 421124813 486692839 808382728 927245888 92120839 454053458 303379461 405722748 493573918 986553564 882951257 998608935 916780182 929601464 325500023 990657791 809752134 920608370 397928086 499943619 782318465 882046708 305641273 714796164 626331074 733937324 779010024 933884023 258823731 948946733 434072731 680354696 320535930 709601051 300465182 813810762 716358896 908681841 77481373 849685609 768305279 923346778 455383578 803602567 210033824 505979155 881864047 920997531 750182406 989321932 189031407 878110681 647396889 769797955 589737926 841147590 727325483 801957318 731425381 846036498 281089983 490223739 587983490 824769738 35968918 925133820 311570652 803824489 353630710 828271024 890252756 950197914 288742405 476041185 271826834 973297697 673672639 860181930 886150355 947087457 559016402 590572298 889961518 949190956 87602302 518195782 134209890 278935782 276328564 454918734 213449743 420434067 132533358 349848196 773446289 793602769 731966900 922162630 664607516 959916659 758193499 895846118 272629784 316992175 717837505 977299438 324317625 585914263 33332843 636768989 519084849 875920382 17319347 132210060 445458789 483695098 62440478 450863422 48193438 628116055 99263124 725242874 208051894 395108698 841447386 922306206 313548778 976253907 649575848 982770901 481978297 761779844 979543480 989916463 440433322 694070656 682839905 877725712 260168705 899555439 158684936 909528861 932425950 980191578 700671743 972139548 970213167 983660688 933673238 941334520 471275594 924507673 181406801 908586170 363104676 414975363 509341165 952200438 807079931 820249579 946969154 996983309 483424411 550955378 16294303 63451835 203954940 749167828 939263039 976376608 276902114 704276661 482829905 783764087 156568257 367572564 716255860 859035892 270642689 484567290 497561201 590237444 757517416 810265127 417817472 597815305 299158594 684376635 299140222 922048885 264546298 366471449 417623614 709590590 298334434 716107965 674054850 962861394 777038768 916774372 722304233 824516889 617449875 792148993 746972504 976446564 899861709 929151517 321306245 424831022 417213251 519420834 246021679 601996776 138755653 778157891 968387501 976351278 684794082 782093011 76536527 235152600 778501579 968706582 27062780 542743815 141941247 533522946 469083098 881739636 190952769 818495488 549149813 722043434 468808019 716889378 143877377 741444062 672695566 874795464 999305423 999859524 801667848 862476460 528684704 533378982 679837362 996831259 950461492 977698790 689334641 724317289 561892585 691855559 732435100 786120944 898000035 951842102 817388463 967988017 895247141 963808345 758479748 856769174 935466257 987157970 72664351 829492209 580772833 777298003 636301076 910633406 870391874 897435535 508439517 622098709 803097107 803416473 451131734 847564344 376651474 449851619 445119078 526234331 763782734 890181896 241808610 876035515 392408679 513282658 886051541 973870603 563401110 569271681 194288791 666051305 448511685 997381269 939661591 956892612 266756456 970997304 568722772 716530327 376482354 604842631 626775181 996495119 724273000 808631800 309387390 959823436 285560977 662809657 229603083 614569652 817384583 832784137 790442974 844035719 776114114 976976667 142029033 388415488 497529579 636307335 833734593 859212983 19197509 369726030 883998692 952099158 687166202 694694460 938647880 949557099 964918062 998984283 51622684 280321054 937346406 999437373 165294225 442293098 680330896 911778661 603349663 649020887 192830091 309200846 7343046 780960810 57906582 361152583 725607777 869054817 101571633 837966132 135494194 852659197 330122749 746952562 41941199 540016337 369402854 896562652 269964723 753079378 363227523 842136018 161889983 923531363 993805206 997002746 22255766 844328542 725323055 998299908 147120583 800501487 616870410 942393355 576191242 883465029 145140452 874396142 774701014 923601753 138654078 435072452 7770950 984839928 427586186 595019125 962518496 965305733 285538613 705384732 431424150 604841236 855789438 887701298 362532938 433271010 276547160 639997162 305884934 955514422 791714933 922264043 835932169 860580458 725993263 883465785 566917328 894058846 968977848 993361747 310882384 785895930 253330634 653614784 397235888 800534865 588060511 802681768 738386793 751945870 653226253 820847219 179699176 961378802 559028149 707569270 366323402 994469111 229773663 329822404 925342462 979069202 717316876 751616479 681757451 703197129 138748901 432001873 819680466 916356632 48790986 684033702 238755434 293249799 464343332 486937726 697117286 736365537 876205147 876298994 568519249 643363102 222406308 587768433 868092658 936948610 456222870 557092677 802022018 883943226 255380862 494944848 732661198 882398617 825392699 960378170 929504470 971767910 31498534 718567219 965235716 984589093 180058623 575894900 430052057 550125196 62755374 819927756 723831158 863408599 818294988 823420280 373015947 603415036 893827691 948486853 951522718 982335050 175433377 981205773 118128204 506090766 521238733 556496800 839140302 975698988 929866877 954969368 982643637 995549106 320232771 788509999 8173972 455498327 806578903 836499167 883543430 985576246 612941465 718934111 914340232 990116915 867939608 966459273 387586711 675017276 937827570 950163841 378423258 522713698 7369798 41419719 636426729 689990947 914663007 937679654 482541590 485102351 241811327 780660055 356666469 796475959 298611858 342259532 153774756 487082302 195287087 973443654 126158249 490166649 917240119 927595708 720473552 761973848 172155706 652827979 595003182 732686634 261634368 293330242 531331528 779985320 609382258 763570905 279665112 587011257 523048114 627622920 649864754 766240830 184773426 441008648 802536758 804262765 687992853 792817257 510041806 812185210 260816835 515933170 909570404 929807757 69639362 673949962 324244307 439461680 213901224 792483544 304101042 941102751 277341338 940805101 691819637 861932757 788406637 831465713 212968077 286909084 37396233 398135009 483224335 734212609 300408160 406534780 477635388 740674911 304692680 787693552 127216043 727595733 632319639 676787923 278287315 882985508 967894639 996543068 755113301 913596252 722862311 969218927 272854750 548035992 793796607 813591196 24559086 592357043 114497315 142296781 606277862 667835529 534102258 889667891 318069361 516300788 30984560 458437260 543912027 753199981 844839154 878787277 728262 592098635 914538438 979630877 551195578 713469826 817200746 949751135 928748824 963447026 583327220 953145351 409139687 677793755 143083618 275482495 467796309 822502453 25314523 369536139 635171115 712375503 106783011 946441813 499962939 546476115 764175604 818259598 160305451 398336009 142724660 568040599 952700443 978512037 725098547 828916019 116088504 920527422 250410621 827960797 474882886 605902813 711429784 862169119 722103141 958930466 674506633 731042764 466708179 906118645 300621046 316234830 486735327 975574189 463270907 975820416 115534907 201637053 616227237 701213972 853421170 951922300 834790264 862737217 117802818 834825143 740917891 873158166 945944733 965062451 860393156 908450591 585706249 908860355 559527883 649464515 964567655 974453751 417142879 689708207 258686816 266452765 40926528 255463877 463922535 549600408 270168404 798745492 847817458 996600465 36610202 767532886 72945932 211045486 894153711 976527102 727017074 740533309 576852041 612916262 438173821 675238683 726762140 782938185 496615010 725221248 894343146 932850573 193442997 864537877 825719059 949343602 531562341 846405966 26134602 965590174 882648483 956676046 614991451 868370438 929161180 983979337 350900151 575320366 702726787 978079701 985540830 998794921 233140377 727429069 247436458 937305574 920528504 970380069 801311766 933752631 706856284 731314425 340123610 415176624 746295884 943474360 540822470 552689572 984907808 991754989 833651561 877522841 274296936 857415293 811969074 862415681 822856916 990524711 528836755 959839204 314567344 974327781 860158475 923395457 936604737 939791373 628571402 987595104 795843329 814120529 641864743 945444614 681393621 942957382 496150977 659259753 301190216 454309651 93390497 729530277 479639762 586281180 87706303 457455979 805609422 884696184 462762492 565195038 308680680 976987475 539531146 671857448 646795179 786973469 893108009 994848968 811477508 830775905 993642926 996897981 524279965 743972560 828146494 970993063 974399226 999800374 178924325 487179733 10842508 460372259 91751665 213981555 563611282 967777376 850585725 892511969 130888007 553342608 696669645 793743018 329176697 995328222 588389788 734053253 446081476 799874126 857868831 993245921 963957599 991749362 245532833 790771884 441443608 925459383 323934050 787260600 937337733 946241558 238405589 450391309 351289750 618055840 156523651 944323192 554145759 974915451 170373903 319175001 793160838 857255579 470090117 931649445 231613177 894813112 329691774 617706412 926608617 994098136 640915387 774480778 231246542 728918319 102846052 863101756 204171247 576168077 107109078 767000579 509133346 758117668 107369566 201068478 699565314 915447772 382622509 636360693 188275338 503924533 742244574 761199975 334049105 842425638 136128636 596282256 386043521 774275915 326833116 998633298 544319784 637026108 934966792 976440433 319412881 536107197 890377067 934533369 433950629 436500797 699548679 882772858 925484349 952957555 130518637 521584498 840220424 897270215 482087106 848477931 945154603 988267071 239945212 566856663 138826891 791221842 488976446 903019130 188032630 501708902 216265121 786455872 720750612 992369124 102914268 757272474 637459411 870106208 217358872 818200545 706822003 998746395 357158275 934581312 101342876 119645551 973526111 992094789 370327052 585872464 367118960 903841208 789600062 795157864 613658853 788169303 498964582 914474192 125628348 271695658 450432296 972010442 986279942 998324347 73337045 222917165 331828708 955048168 568923826 903405674 429272587 839007386 453921373 862868790 422738307 871842036 276403005 425619432 775687128 821982712 521379401 788370680 218853946 946580585 538854183 884476407 742980603 815826201 882970662 982586986 480879183 834036599 666037347 752630705 215847093 220051453 256979086 687804867 677825907 944642678 417006580 466517279 319218432 969203227 740617183 769966379 406063589 822550480 531253080 868565203 399624613 684841553 490547922 570970375 319463589 442432053 798836723 937922140 283034916 483366448 199378481 446282318 78223570 522961468 811674733 837596753 425611393 645189627 288763528 517849212 718868617 787459918 248945152 770578940 354620202 798517920 350066350 719473167 202164883 281469643 662451576 712964236 204716923 437231555 357969843 537420129 691943506 824717006 224089752 236922455 240401564 552941344 274881893 298904099 110935110 687856310 844127127 890151109 58148693 472969283 224378818 754613037 554145682 956568989 892467353 921752635 698532168 936415474 382776316 588300782 23725714 320476198 491455980 984435161 907853149 982326864 515104953 922690817 55803700 657364787 661987534 821085759 700122841 977122605 323590113 484227434 751582278 957110111 457038318 888062507 650670729 838002756 522814197 669282137 645691412 731716509 462388773 856493404 431881296 762546884 784277871 819830107 761219767 818075081 579877158 958359263 436576876 773028303 244580844 268977740 960505959 980597324 244030020 609161127 810917090 916318391 466044998 880589830 979782533 996801165 859362955 976111049 89114727 751956804 851449678 987504528 232958789 805623693 294089683 302247610 776133585 893521365 488575401 959136534 980831533 992141517 952761977 954147321 169996842 436998788 62747421 548304921 642382294 856277474 771890840 858553323 257739491 650882885 383042698 715486111 659906982 955875298 462018524 827949002 365333226 804342628 865001712 914234815 953154244 969425293 694436328 963128163 234761254 364305958 786503048 996288751 352119882 647356912 128431782 358049013 924383512 944880984 218344033 746567005 709562460 985674734 731674319 811945684 539628746 979029302 625563590 698665860 731831139 994631640 755453008 919355377 68666451 223611142 763309484 936845034 875701122 932041709 588743319 624319729 5395359 301081578 54495984 440967247 391912607 508940492 9848028 527352360 567637025 756352734 850688668 892675727 929564466 969965671 965842751 973432254 446972620 498746353 166879801 501442205 480283649 564110521 44536351 187379842 45924389 880884660 638493758 705796717 715073619 860831010 630742958 911594426 949716330 954062149 818376034 837381032 2218286 404461798 720789134 884031075 440872924 855675964 324770040 669415976 100683174 948147447 544515468 726143169 375452546 970883930 647042295 746656421 317845209 658689011 688203534 944887817 795801869 804160781 319146442 500627034 35563645 106853699 853485026 993566529 248215373 926299009 693190470 949211515 301033682 620254880 34464837 512509992 761359559 909642670 279639247 549911874 846920623 916480663 31113262 109666784 698111091 789358001 304960868 807059811 743088728 809326373 520492091 916589456 569129007 921380969 953504216 957714373 346166743 766356874 838613383 992323018 315726623 998425922 6382397 158265170 582494104 946110964 403997539 997713519 558892229 613174793 534725437 862556953 751744481 796436335 873602452 978955726 30439121 88783855 408502714 963535855 479534115 835708920 752633415 865504280 703635613 867245178 658215785 899273153 261004344 698496251 280600383 842140945 502423509 589292146 505697524 575264414 479357331 793696091 305749287 755755112 660041012 927662862 968980257 996715862 784350187 790903125 331074604 736380130 949425526 955605177 651252010 836177683 789632685 814447662 121226057 593209833 918494837 947953581 892942253 927665106 865776533 936395664 428264245 777307646 510622197 656873970 992366318 993252363 26639857 846482622 321209719 367167281 867077547 938314488 127108904 935696765 964497324 981207219 697098200 754473979 432943834 759684897 211647827 315463965 555149524 917538230 712997947 854155028 445040932 693093044 328426641 455346746 841459204 929982444 988715167 993632043 771102509 930184144 315134310 672770011 670705306 758974521 889104188 973204767 653678909 687239357 326825096 498064748 397867643 854988432 323704144 955749083 477576735 742369245 319679348 632522024 535234113 816502644 341272577 953962008 263890973 955930832 370897612 647170380 798235427 957593719 600308503 965109125 290497705 916956488 579683228 633895407 145208502 207375563 611268251 960021819 657802574 676431992 568296275 969526290 583456802 738620280 935580373 944766665 293388971 791328670 176189773 325999397 400320620 822841604 263513350 692365852 729053414 881585836 921164251 992901214 229982601 562319559 27052612 515744267 919164056 940080335 504508516 994135324 698769658 724944801 522913693 593697233 8270378 584277685 256924240 920895569 685860009 782152215 202564850 289361993 378105234 710324610 430995390 731578706 882837401 939099753 904569027 972530301 722313008 828667219 878113832 881989405 269096310 597243276 598865125 696049975 208430920 743477220 858214215 906852040 578328567 903192218 407203944 884898623 752503562 879759094 147174177 815712025 85233854 656448363 989191986 989685390 683309097 864634471 9834232 870388995 741753966 747690367 500526872 675106941 951389200 970462157 902600282 928321805 890894804 961861626 436895665 521245819 935566973 965642483 581735649 752135165 422776011 428042160 885409117 932717587 908973465 936048045 160311761 237194306 83715639 975046601 804459757 931210640 941115144 979942341 825415519 958642330 373900418 892573539 509172902 879474929 226524621 581576335 455181371 828573588 115035104 235607706 934731786 977962579 532016489 619650335 612821212 716710932 360938902 905100871 943748048 974422627 750622481 895168619 785401147 936551893 648446406 938877389 213514452 963043480 978778240 996825988 706912917 774004339 372649057 685138991 591706997 992508032 455596214 887648623 543072513 640879939 977965895 982039476 553305959 583349938 125371934 745134592 134614839 283913273 406575869 719187239 391085656 833051345 775086924 799080413 185999671 658649091 537389768 809963936 571254958 883192591 101456295 830187407 221177143 852676967 707436869 883673798 680654401 845634030 17996686 337562342 584871697 943045748 377937860 871161265 498520133 764951896 982294882 992588729 577481797 995893714 94484445 632404068 336857723 633479968 939829588 959835487 81864760 428970564 993856376 996211056 38698157 448602502 316101262 988145687 488151000 848972797 64726669 376082564 711299561 913910446 212046139 445917558 821143269 821718020 905888194 951685203 744483466 996864648 693979779 721104036 538924006 546146356 455753730 456708839 395051192 430785699 369355030 454032806 791906659 941239184 452564474 502512810 214185255 403347158 274877249 407862145 394371739 427344445 903295857 963981456 641450838 643141702 168019701 762837484 468905121 682587539 629270859 745179767 464607635 817848858 1467485 550198134 283773740 437845032 555643914 716390422 90722481 465000042 897462175 973059159 520075853 680386615 627359336 817002856 818923345 994862341 491602229 676320967 401710142 562931898 674089915 824892423 820707225 945632807 758079845 907764383 71092268 127735268 107480459 931838327 456993133 730558460 488614957 832125878 924231499 989968998 45919990 886977117 263545814 384669869 53775732 471282377 679424931 996802726 212775233 827615218 250866677 882478943 224743894 486985471 240444521 258135545 831498017 921661701 690579697 973163698 238391883 379165692 492127542 861386741 589649626 840860773 776273242 817023613 955683089 960991417 629439679 710661362 674852784 872971459 249719967 334574328 409377307 901915334 494966765 505285448 725705085 984780864 807977755 952454277 191468081 340738953 804470085 848954286 426661500 723987000 903109865 978198439 258814448 934420870 205069345 379156147 988520084 989064700 600596518 771047560 795173078 846672424 896157497 911701565 279794151 922646642 650406258 913288089 527323158 649480869 215914553 822648503 687827332 875442005 107754623 190596596 843154975 996252366 684123130 710017422 25305824 899759581 158922708 628384749 906862286 979210560 90352359 293295637 138969016 746662810 830956815 895963726 633949926 705021223 106607149 268805864 495729301 697701906 284470283 894067065 423449020 590156791 842632907 910935552 362077204 522473672 798191161 840830920 752213463 983347363 124458543 151023812 416809446 652642560 135952633 360622685 692381160 924405714 641236322 807805964 834430772 904088763 435173746 605833241 855580097 918382020 560662961 820776757 258857732 319300867 28659710 445582120 516833638 680477743 717942557 804053199 908751265 941751964 999231985 999542693 296689702 671958756 813421784 886390033 860947145 949017798 23731416 747983592 706512563 715274335 74183276 349442502 399368543 997310010 881711904 929138064 869935768 925730410 840400399 910350027 518276579 583484175 455294884 686690696 185747065 819743665 775643922 890566572 840315423 932681946 818626746 879073071 638765519 902969944 432617954 566460316 94091816 560070458 988176394 996435524 691887142 765054599 835490401 996773697 279474150 514137489 597625953 970848156 130439113 515510923 400867404 858550869 912324925 998491088 741477812 860452051 181154523 663872480 280749297 906554915 571998054 751804619 890957298 989611928 45085703 346366535 58716972 809438796 690270427 824518123 407016849 768818787 513228837 801864660 363562183 772839677 231959579 910013910 649614243 950542418 234923327 273468839 915331395 916449231 42974620 227058407 675855006 826601868 919434038 967104910 673484412 821457049 817110375 993185434 682923260 793947134 717157768 900997188 949679703 985742215 471174849 921454668 590728936 649452080 571867257 612288725 101012485 101101452 255710714 738351742 902551957 913407214 553994114 755727964 594596119 615674957 279754030 349309564 796312989 881281266 438276117 807216093 529440027 737449189 24002153 734103873 920884374 943468817 177657691 984734738 734146601 959837530 24213693 625093030 484801632 983575386 98188796 124316762 90171316 360092922 105272135 905064520 300882653 852958291 589622573 779322478 288933584 878104119 36614604 579620379 64565566 411539881 205263308 227246985 732926088 949981179 96495058 148154607 167289452 419780854 971447159 984413467 543367051 632939398 130490065 715958435 927559600 952448768 718609902 820607325 862319844 867067331 585518216 944212546 326421922 997923671 546598060 756499709 439744759 964668871 562324995 976039628 288537541 798206079 245742044 952688371 477852857 785842247 655989259 677441301 905421790 951186399 758054122 959306535 927353911 928114952 805236129 889923021 698834357 992637012 505685748 804330894 302551847 507016332 626124749 665893711 193548947 195171541 333439798 385886077 652540073 673350162 664625635 676734449 129313927 325547238 779215814 953104186 659149194 832820668 187224453 585716499 903763956 973122496 817501268 874796513 851474983 903274897 787300563 928331624 498016046 981649998 879761412 925576812 99211315 924675964 963529139 992334953 494265275 779905748 614558274 727925118 830581826 850217176 452988028 908648884 756224630 761931490 961501821 990265427 179835032 509126965 446990165 758258460 125586842 621914411 524022718 703882105 991967529 996906452 962928525 986518132 418683913 840256125 396675786 704472719 475026767 722834104 832695027 886321923 29561650 799969809 101970977 808224631 354551416 903385959 893466817 893657746 403386868 954613319 316498861 986277036 251352660 645660093 622815369 972987028 225624267 719231387 502139464 996049876 4475674 375175423 104526411 554687528 748386832 965193010 647257574 979008091 728516461 963139314 233407858 434034334 261784257 471134583 614695626 672467490 428499625 866613803 782608720 961338526 39150465 905607478 232875762 916264195 477426429 945341467 513841930 594058127 387889688 936760658 54495571 498125406 777845356 808165016 454780081 597305192 500983647 731816286 868566840 896448713 306798832 496628302 313252128 618125402 416338784 810706643 254166415 454159870 987527629 993348498 54229779 757614127 436524227 724873493 639789439 703727244 990741569 997439518 778271454 890335856 443825312 521001199 15399358 162874674 79233743 247490161 879821897 927903832 806806230 894381722 750127129 801695439 452865919 982843546 462357309 688292391 550840957 596763708 840416205 981275279 400561883 794903841 697221977 945195257 468368897 721369461 286970685 950601280 80518747 101007077 416976609 430619459 441538482 447600498 689716921 816854577 172328419 215697772 386151138 692997692 3437931 919937627 80925993 275117088 89072305 858846054 226033731 297666439 968569923 981311213 180710719 238512475 538973016 738719971 560246387 991531549 898332674 932957211 410575116 567599400 477265541 518526043 130446147 873629467 441380218 667434243 356391086 684227157 659124393 709595482 679674399 722537087 490017656 615998623 980356721 988707809 96735140 490322536 557137791 995821011 718814136 731007889 334114768 738615553 269575452 587702966 187504052 941740239 596643101 961820756 14123237 634468762 543467649 550049884 734843651 937177477 364748585 840177194 365098352 729851258 628783794 862022121 122648989 380203800 701183186 779652782 175238649 542207519 716263727 853014061 23069677 959382276 675090987 786503492 756526142 973849021 430792823 750325592 877566646 994423887 791557404 952513024 606808244 889220829 523171557 941703564 431658623 672192112 891123806 981046884 540659615 645419630 311045763 874513655 779416600 804836715 989363737 992931697 300832497 962367681 646316418 953931541 327531219 429037298 526964404 573905402 144696170 540006150 806086199 821175139 477349683 950653425 442753731 659840962 104914269 413405532 559556202 862438280 374683636 739611260 284823823 520197829 935930990 987127279 316701091 370310116 210750485 912832138 273852118 828725454 179395901 216872026 314508956 483923499 184383861 624006055 667756783 776167663 472281273 983457365 148021899 617596396 890943657 972916641 503115724 879298416 738165945 747208584 950687894 973777353 67148033 683065045 627686409 950622380 265786891 490477503 642926677 850021340 577430099 875201943 114326616 137590285 714280222 714778892 230668812 312041641 114570862 404307727 484063256 524155374 586460271 702535333 846345075 911803444 526253338 535717972 633061661 637607233 715792570 893841047 684978203 847241230 924819234 990164818 118336380 519585714 864903623 899503456 93063793 701763613 972603651 973567569 252600059 452856119 3543271 221375743 82096038 849905385 778978644 815375745 40558831 566082352 312044592 749288967 986449554 993549268 389089498 683603569 361493194 737908429 396655174 505137957 635137349 912420627 761485212 887343631 20957965 843513294 46166445 783773326 895303764 916421996 598964226 911250314 883001864 953730972 645801962 989928874 19456114 308552942 893341920 909408582 939658546 996335692 188376019 563869713 44275314 804404992 645628058 889958579 195982308 389689165 423943720 427895262 299727280 593970996 156601434 180369268 287983342 987897776 556340702 679048013 290306941 370073855 206005744 951538984 910098380 962362548 107079099 299842803 65321006 469060270 393710792 895457290 19761055 787397888 676434460 922577955 183039761 701216113 12893784 887575968 652743355 993353174 36541517 959472420 178916309 830971303 238798722 352594898 376564998 448700691 533018891 710695253 41400343 374714362 19300079 775841923 930137840 996166536 769946314 978204823 671409624 697502461 657223139 715167918 470794500 969753600 496264714 949575581 613758120 695452607 430586494 521487316 909444325 988507680 997878154 997909425 325164899 417548983 894319437 963842946 129885261 565787199 164441866 225552447 140080923 438836256 954756572 969348240 558190308 628554267 378331532 415307703 119396597 683684478 509171414 554855325 126052325 761670226 979800364 989844183 18806019 732653976 999710936 999957346 125446800 303520907 327823443 436672149 716778123 903526100 457626456 904334429 490431358 764514618 986660266 998817148 684909789 933427261 342665686 987330624 557371693 771750475 761056183 781147655 282907412 971531958 754358537 757774458 197053002 923694831 313141352 611164401 754750409 774364829 452807983 494272534 274653336 524676431 580982213 759633573 797523902 991921439 111100638 127710320 505288695 876319897 605662783 640543915 362611635 545911096 589654050 728691767 795558965 827804201 538437136 737186831 875509684 997735324 309757904 689740331 990716692 999385564 96251179 779280801 999327646 999391607 46916428 465465202 762433670 791311725 174497814 986434220 387785695 671449205 813830660 916129206 643380670 915052899 819713152 962795880 631242147 811088267 675415178 858561996 110888285 483762568 177092693 750915446 219935678 538576928 309693158 659499240 822335626 868869294 746913151 778054042 224045396 613645122 948229821 983980541 606475343 661596678 244572004 896991813 134694987 399836448 346920020 493627360 816938879 973899130 455769060 481964716 166553361 310820161 777513557 902512877 76831579 269560438 541715458 603738571 457721836 464286654 946469953 960136478 678004157 880657774 198481978 606136779 61114265 751279345 286315488 942303634 12501904 499276609 936444990 936729108 518790565 982635131 669830124 806319237 305817301 345815457 7911249 55432399 291648819 465518403 241537707 480103474 402133914 488702570 746610621 932267573 910491176 959713962 811988572 830641585 337341080 840031084 343091388 420835066 601112242 795030612 955644034 973363121 51647851 508298027 334826835 881598992 999439957 999893749 62165719 490331749 480718110 486524268 762109661 950755855 646459427 881134589 888026657 912790020 867809072 999604937 509003863 653103326 504126650 730143696 776128252 907967536 74634326 707771400 109925525 744571271 75179243 461388801 863465962 887532914 192661287 610161907 405429024 820614093 129406915 298231506 783414362 840366281 589750514 642661650 286608991 823260080 746316876 802652689 880414779 895430543 499350545 627448523 620096574 841450153 750136357 968506260 315126537 638906544 60064289 642762571 627860135 714908896 303402890 836471431 142495840 677642719 646194849 651467511 763854548 871959473 236083094 303550096 175281255 840820818 597866360 739818732 887521234 919827082 720855723 762386731 493407524 578306182 755631214 960991041 155054808 877859478 569926978 712325026 27778394 858059792 565480970 759552833 843067840 920521581 767496666 933830298 373203045 383291403 252729909 788683335 104189903 715927385 414075496 717629697 754078948 988167332 48719059 592655535 696717963 944149105 726044919 779380250 513698833 618326134 276855725 985080752 801941683 869628699 169727062 783834203 562528850 831737373 935918766 952268455 924854810 979684373 474377363 773444566 789594648 921805251 943191062 958663525 349123211 689938801 627037851 891689150 304232573 583455535 251390337 276323400 37641212 877698382 217612759 594083761 662097999 851879660 350353506 796110631 383611396 884782687 693750170 829384409 949188502 992372636 609453562 774600179 187574273 638124828 286324510 858262148 305042199 716770635 112444054 976065333 334436292 595638256 956253385 972492037 802239115 824260296 849075175 959804820 306943256 950478223 64164528 612684667 258938941 623497431 905077747 995705281 358873271 842714241 270377330 984730485 31939099 572093243 575448576 767244609 762569035 876934228 91173009 703225701 546756697 668971391 575038 635708642 10446472 724446574 696229749 869677428 411457703 553957472 15708663 833927269 473166765 860478686 923982587 950986443 105735751 883393701 268844947 427035323 573371003 637112592 184118393 976590200 56654257 543012542 64517489 387513250 277987155 384572901 540428282 814188141 975483630 989714886 962746494 970283938 928355666 964566714 295564282 899390406 812225799 891789025 121824399 945391152 397182396 898042827 161146667 587581311 453604236 580454243 29580966 662891660 249528881 999505450 298837483 361064914 592353194 696741370 648933675 930487448 810862121 933970749 179363072 534911531 562326804 741442897 761805759 850456081 912739206 918543267 544588281 565321514 173283798 223061377 215238429 724433662 350149718 394103429 756490287 818142476 693614939 907518732 860694854 939735175 968316990 989126273 720333942 914893827 724729546 866039091 69806734 803285002 16067296 638220920 308761577 523666527 836907496 854472194 730809062 838556363 357680358 480752681 435961909 945380797 863473658 929189903 495535520 665699105 941604236 975497364 798251762 971508903 464559617 846368555 349333209 537110132 275912001 457423388 361590066 823029629 722386180 794166859 705779347 921757455 135038474 988121348 491170671 543962364 588301043 635443232 350621311 645246432 411176045 561641924 580201341 648158923 8428668 114143552 21461116 603245979 363861732 619334064 148332371 595784931 382886627 545610334 788475294 848265632 282440966 474971393 159334293 743916144 338497903 583750553 639255973 890564079 525444341 546737615 872776608 895341269 568856841 901081053 487013484 774429105 177427026 216632597 937400219 969687483 119686329 288424774 510039252 537321778 682411405 789726148 765506394 837490798 693122907 819152719 373291882 446193923 922419762 967629246 550777621 601859578 416782709 674656965 50257228 290392489 460287790 554931646 22764704 112669506 419963564 547542668 821554285 914975856 376188343 423745769 772892689 931507163 631710108 661131612 212865708 701820052 569506462 601807023 662786769 991011200 784705175 973269475 615250414 837402714 526755107 809613406 147006447 872047911 710450035 820187077 175281353 927964374 917540079 969664947 744329194 790886797 861850976 862679601 637459944 759010986 291216008 435755803 277305240 877351457 331630332 706027166 336632756 719306238 224079576 902172405 573674072 971509981 490165653 730984641 23938090 269724068 526716944 724849509 703474373 879376047 941992264 978301682 84681774 363990185 312096456 437864192 90004228 319462096 761812602 859367501 240594422 710875851 688984385 992431892 380561457 383272683 990735910 994275894 2125719 545613999 905719793 940228134 303519559 804626825 953246114 976524748 255640214 716677777 248623831 756180308 565848324 618080902 528046287 818167740 960467225 994532058 720213434 860081747 118772130 607391866 672103910 867696215 269725610 988397997 110015169 600863334 539560121 946511588 590388603 841711853 774810564 792464730 793574546 805420185 846332335 958075827 446317932 778373977 960516952 978966030 867308423 954680661 912952057 917091940 906576038 920999659 433013078 943948218 239729406 553725722 760798173 962249369 826532562 983158732 664866531 827912141 619448941 923437202 825993321 966900127 731457042 987502913 841750999 947888615 848836567 877944223 686263612 834402331 887758201 974135314 114555450 234208011 146414087 777182548 148431595 805220703 170958099 353696957 347885853 877247369 922083594 973270051 573523570 826428420 583690402 826885024 661963560 995444694 697853327 773685959 725931129 963881663 74379456 476625286 18425089 396667172 476936359 685162723 899642036 980399396 350783010 552444968 635173095 702060616 655792128 863567229 390870301 411704295 585409411 999974593 831970840 850530003 56344951 881354136 886692995 898777854 708850729 990363936 435673487 543630670 281315335 626177943 159465692 695956097 701826083 988248464 737002909 858622683 986184629 987816321 200982618 565488325 416971300 666538422 858718321 977021141 196232624 929998113 73696194 483772642 606544110 781696332 250766630 980912597 399176168 823403063 391207781 798975090 29146539 177298374 509716646 726032421 822816637 940900772 486445981 801322722 941478835 965037396 800478219 849382159 148278051 918306420 880261173 906605967 359032022 361085636 938286734 964500657 940192944 981000411 582077269 720358751 51277621 274074010 746976094 834826972 238023672 509705297 386938823 997557597 271536797 756501766 361054689 466672110 309657165 863218394 693506370 753651327 627745578 883926635 928168402 952401228 152831361 317480893 303560132 306320533 726640189 968022185 556479017 929087123 799662521 848464369 239781519 702140039 905162103 924768547 613532932 988814588 210951848 819621826 520824762 626931104 212644064 302518582 868322330 989162008 433266263 640913233 432010324 451335706 211620820 289534009 731090126 988284271 105510212 556691102 20236373 486492883 273253813 489337395 925650210 969770933 860352071 935557259 132224993 287529277 303044080 568198560 67870415 992110056 66053463 281206785 828338371 942705191 834752810 910353987 321560991 420241379 720074240 958832126 516667064 997171884 567853682 728188219 19915658 144752516 145495596 903201906 8148749 371304495 647740848 747255083 830368939 953841188 781166856 898556184 731918530 826008644 134930907 554672244 891113485 941840584 127097819 167825084 908606952 928529499 713080882 758501551 301949594 634908162 166743017 403433157 969138054 993237842 839345986 851716190 252299182 462622490 728190229 877554072 315594011 397941507 60861670 404185852 909496775 933715120 807978832 901809686 877790198 928987532 204721686 829736510 913295991 927470084 714848935 721156826 474623941 849220573 454098517 675018099 806980109 857406555 474835367 780200540 130008458 529896965 951780842 956962408 86400902 531073606 854015184 951480379 417979656 866827629 213948493 227360739 734223956 805805759 610421340 782590742 535454754 666875482 960708623 981046420 982136085 986526248 329553185 342234072 573493299 660022587 568889271 729413908 984244327 985587091 124726086 549274688 507311109 908699451 224153910 849906941 945151227 945562263 74045505 239644528 678937073 838430158 566056737 983035105 120764670 672270887 861098397 885816898 596773538 992296843 677819606 965069031 47503919 606393402 372660264 492469219 440197613 541277072 747031167 896474899 563464303 808973393 25387369 183123904 506523989 934601542 959152174 989720381 634798389 975419757 368843015 509634667 915117448 948431834 840003775 915185675 3991110 601603482 570552399 706809720 504252768 796755104 3202916 927626692 520123581 542354475 772562560 896893187 638472993 912437991 467535138 828563322 324096048 929914975 466300419 801059370 825626764 840310003 557235644 877428053 629425817 901790960 283347100 627503860 298940477 829268347 447299943 674236392 708001866 807844140 357632967 792291116 443301105 748299157 266496573 641786252 552138430 561802227 491140827 571469607 428759832 744333677 763828584 932773300 294919545 474945185 35763470 929104674 503511077 905276151 811106207 916939757 430916784 640830240 357918310 674925370 409866522 663092198 13778193 443515960 211032075 266187195 251357875 768031170 681492859 831965978 11773514 594060615 545904446 657048223 225731145 351919914 251477127 587760825 618872890 909270905 121625697 122014823 567913460 595362000 787561587 963112922 399908397 535823368 160734860 616750070 929832836 997357456 410846107 685918033 585303695 693191398 913737989 954308724 974341665 997527724 968327825 991952255 451260090 940241991 228558576 368809913 54388249 450117796 420053222 546025628 146008029 191929318 790554936 946537715 226208520 274316979 410852874 908730108 501584709 666568510 840371535 916192121 717479499 927829582 938329726 983803919 885266800 901467722 426601229 590178033 721803689 906168512 976701714 986165334 460934687 969559029 533483021 836283793 239325650 919999942 928489288 940532002 538887134 572478958 537475503 780658550 882320493 887399900 445169304 538876027 666289577 731316205 621342024 720468988 715416465 854429355 668969512 704761753 53203638 969993387 317019502 422269550 211653483 657089319 503430090 845761603 194616055 779492101 670500310 672566395 260005738 713740915 715163717 747055801 830152082 842280842 281130119 882659518 852982647 908673627 216953448 818320082 74362281 923255284 754353955 897554053 240000508 298438926 439033210 672340872 280027714 902674904 74934369 807675857 436838597 662630573 348733436 947024119 716160389 996365535 308102965 861284290 459873828 529250991 563130347 886668637 438639212 729323802 689489376 750204905 687276568 933170521 825925245 879273609 997958946 999915722 408932140 773383558 973003278 980451883 173481034 311441192 973869772 978389481 299267428 708046043 813253898 981922694 458886599 911163043 26531560 648993159 527086900 528941511 37989710 417076557 156643874 385662405 115412661 265679794 762080750 960319315 338639055 771356341 957776324 993298127 731278335 882734021 846553556 990644846 674966724 956586812 663578260 694223737 775925774 842983971 725261237 817300444 645554585 716625442 592119304 787065691 720389726 867037762 535087362 611843546 452617626 819763006 516306353 584904865 773520600 832468661 918427407 983222361 829546326 855968866 549636486 732197493 225722217 597700822 674400457 727553466 735318838 931961671 509332475 988068975 263480428 321509880 113010279 662625819 318744031 483479565 26618076 54202312 239378485 481782360 817278051 986496001 291989886 667937376 755993991 798581851 408867977 586824070 957960823 967940783 229109967 436903442 302279222 555413069 360762018 825868316 896239126 902742751 371218842 569916629 977928830 980586877 40266146 703908353 70039404 92660840 129431969 503116014 778684350 833206932 820199935 984719760 990095783 996125970 343179916 545750608 477146753 651463170 325714447 336210008 126769367 379607851 172463613 772039822 970594032 980128850 760685834 834951943 667392725 970083812 567244133 750447980 13981646 863947782 365817788 897524583 771759635 873306388 16897102 241622773 443684118 575695035 115379847 788249832 358066360 504620334 354026328 558624641 349454024 708423247 213358335 503021102 830076814 942221257 143461969 160992197 844208049 913214304 948333793 960615925 363411248 848880449 132000684 265028985 259637308 933523935 403991719 849051531 671358140 851839132 164796428 479831799 690924044 780323258 436779191 461050773 97874169 818936734 95539641 717865914 198924398 576543065 307797277 896142515 48047207 985740755 679007467 794961695 916490729 982644974 367294775 502833719 377245676 801436508 194829426 995402066 522970401 998175991 410342740 804588727 68618720 732870333 82899994 415842218 832154814 890522940 387694371 404488349 888334536 992731890 664752806 959218165 315751964 519829035 382948249 843935568 644596449 893205409 325233173 947091809 11840043 101072731 151206103 655593698 146370318 788557885 861917828 962811339 460271065 829610335 226281709 502210606 704853743 928118148 649860536 834107240 402888687 422625738 931518076 962832429 433599203 782289121 450139909 650393951 866626038 882334342 1369169 892383683 983743082 984442197 360606675 411434067 339504140 443956623 832007178 937048927 100903220 704639163 884300108 899020798 863142596 981616009 545235678 764637064 51166829 828621997 873768255 911587838 820867383 851716885 607068774 855524313 516920333 630635506 170453687 955520812 13448475 340329680 60919513 580517028 210161364 803074260 283451158 776423265 202212581 572888916 864051996 891849464 366062453 964948470 733040326 961520559 114813913 473291841 914817032 934478082 298393287 989491066 642210068 993888299 86544087 263504857 438764659 546780512 7007559 177742111 287570 484405085 865994563 903725655 183909530 729931571 315822866 648486749 439882890 722925797 338708502 515866668 677775411 747128250 269704664 378957147 981490284 986949305 519970424 522801610 998090626 998393003 794706113 944604839 827273419 938508552 6017469 600634059 896261526 952208895 429144824 502330241 325750136 873121670 981275623 997323412 899253188 900359370 266080788 991305420 709707598 965210521 509937343 819059135 357512916 653416101 262492024 753629441 518880113 607833729 613745635 659561688 398405882 895953768 960679845 974520986 933263669 975339683 208213639 524960797 560823893 988618007 214841948 874317727 165661191 777845508 814773007 953018148 754474147 759250380 864012379 952219160 533355483 956622279 405137937 563651313 391811139 690859475 215087103 683408788 253158599 787418907 245011594 749248714 172126204 685506757 52104742 297626597 182467882 718660818 996900302 997890310 142686850 821874881 25565401 598384879 539835550 876728675 536120238 886722753 675080690 689602349 593844336 815344729 814218452 961911526 932449484 974408090 732985613 915063903 412820400 998623775 70284997 448050074 278269648 939931215 631685732 760729660 733448168 744804354 409619681 758226856 799095296 860608131 18478743 592086352 222962163 648076103 72809665 947937946 845899452 899117874 930585558 951985097 271973073 893912596 276602082 860801238 996254869 997734969 409266820 949634349 141286863 256568602 204783739 898974030 330998054 347396465 722382069 739401680 767008137 847074395 840447943 988470398 372066897 613290349 79275487 524942433 378241425 455892293 73055510 838317460 72769119 588102904 883139615 918406956 689178131 957244340 181233214 499446062 504313700 821285804 142659439 220545280 681630650 901990699 712857976 822048002 334895682 966389606 342364746 602208010 179807184 506033733 276666996 352457183 700187939 909681940 540402139 969966937 343978891 722759705 54959116 862792378 492412143 960720062 935465375 971562414 469648862 838168144 920824925 950587226 927710371 983166980 341014173 602621749 325058749 693266902 527234911 699344393 664046788 947961156 503688426 703510410 864559747 900608213 581326367 942479301 159874732 962337542 803623505 940676474 263596718 811590709 58635340 851489198 737028237 937542244 642666228 692772204 797028600 895333710 106090337 700206560 921021901 956415374 907951828 948969809 833036786 926946776 629833192 883427268 271911825 885889419 529497382 842300690 168760040 939041047 159501357 579599030 870567341 983652604 124797597 423451124 734971572 840239630 885638561 952427773 87531577 488919816 655928812 856563266 749312803 820055045 88337310 646791784 467065731 551949320 656674483 658765515 381134021 879925470 532909665 620122516 653195221 677222331 610607362 658506543 656928536 718459429 880594851 884870977 723973211 977394646 140338310 976522190 889755528 894969443 855781289 952348338 623595539 897164359 811963919 987574644 745316900 759592983 747042667 776700790 165272198 307257506 794179662 882514614 248942670 760308298 293432835 954866446 188428678 969874483 263441338 326255912 672768538 904208130 86589074 225699551 833300210 922570430 570865505 864747854 507477498 525309778 939683450 976597865 290406180 793885846 737701577 753937683 794989609 868984588 74150036 822803977 727994005 967269111 867700478 924947636 303325677 513438471 766765117 827958769 879147850 935388195 434785364 467753904 567784277 882154807 487664591 516978638 738823186 792634975 598449849 804697699 790801789 949719147 90013042 458739293 839919898 897355310 61926656 208283938 2690637 341003655 883100521 887286185 352036794 843346765 222462176 836413421 84492475 677927511 388902918 618167738 460618318 636236690 806993484 976569838 740815240 743404283 325352595 351462961 989607040 990983317 769228421 832303831 707560157 990353551 715933832 916845006 762439736 937959425 766229381 900319963 668003955 951965192 179660767 479717327 470059407 920861742 373014860 431596676 980393310 984047511 614291603 916005759 981817825 991279888 923634687 940737769 229173777 838784009 712799963 748219925 475792671 625153676 835643183 924145929 186767859 853804870 690069861 935189529 462192651 498105121 375072902 601994956 361743552 841714921 886917325 971348657 255859906 668969253 854953131 990519107 218237698 992584129 331326581 891233774 356358953 374214496 301420634 994154567 629513616 926541635 773948948 861298081 628135047 701272493 44061532 232149586 880040515 930030463 35286356 115683663 192458848 542684465 829063932 973778455 265462676 789788685 46105962 114550540 264546941 352385603 384923365 640625535 518268228 653685817 809018397 842664256 967487541 974538362 305640680 735835248 520236406 621780700 288204479 846161258 129182360 171650052 814472529 891820010 789064416 828064742 604587282 752239060 582945377 791115684 251199135 300008579 349483439 757220625 896469412 952280370 870850365 878550637 306724636 876352177 325583034 609670050 67151589 535063591 525648317 780849484 997497237 998309405 38874250 447248950 283055587 551142580 642530961 855618444 417040977 582067876 509936300 534095765 99768715 912890930 51529303 194450354 357554646 952455321 345823751 932684352 540349369 898732436 285171118 828985747 943941847 987082005 876663803 948544914 223825614 837841388 901741401 967082654 42410751 668628900 597954571 816130578 112007645 281635014 535768892 610312514 130100559 224413509 549021528 559373679 673792859 902801617 424428664 742361799 799168010 939930177 813920452 964418070 515585904 728153924 529757832 943785116 823339223 864156996 931308722 988222094 357383551 628472459 506165875 638164406 445469120 800100389 109503852 368343108 452654929 916209333 256142068 545909325 658790422 762250243 936317247 955730906 163868775 684657611 344846593 773347277 694397449 934122642 618856601 721485921 926512865 944021685 814989778 991298072 528948567 651504823 603241490 709758907 480146668 593618969 898445588 973685607 577160098 765523763 50640440 947373039 263875169 828929541 620031294 746553903 620460359 663196134 414610510 598342590 107429957 250627529 736915561 911439376 663225986 970419576 46385102 755274871 78498364 184003412 916994496 978078557 545198273 897813570 592457402 949408111 720219273 722775548 145156599 515630336 805727229 884264383 880328860 953660412 395595693 562373262 6268571 586812886 380862079 425081729 430479662 992976711 945414992 967312644 24662730 650452976 37144278 376442612 773324246 942549897 23149935 963092405 375921923 955108265 585487841 984193931 598931379 741806965 400237571 636073523 172995635 720133430 12444400 943079677 593750924 742356285 364672289 549424162 929991835 932532744 591293402 841240986 319298628 587347150 942861369 951388466 303189113 816593706 946455260 964747998 145373040 724930166 593992142 702788225 712883265 873122711 321874588 530343817 125347139 682001731 330231288 679874722 59634351 90637410 383413201 587506458 159348208 659671959 466088388 756114380 671399409 739089729 375516461 484058408 66461576 485716531 992746765 997956479 186637658 521222483 407230216 732740815 457011453 951227539 965460482 980786806 962802105 982935645 189755690 785581506 645974407 775494206 978299047 988989347 80647705 402187296 656308250 711449697 500323869 881657826 54223553 300182286 660037701 989442346 81884971 806932159 831135053 987809935 751242784 889034159 782726715 795976207 851549353 980820844 847186763 996461046 955386000 970771547 462994181 821985532 149607543 554232488 915865240 926092703 238824712 262122690 549657204 574989064 354508579 567818592 362718304 632174179 614027563 727919060 95828098 876109974 219056753 785208027 531288404 880041133 978811845 995809536 648095714 808860732 622408508 806971464 755049687 800931259 547767184 811047024 27409819 438144886 689105974 980965249 966193416 986139914 171053322 880410611 805318255 826007517 619124180 718883952 944889000 953335943 228628372 936820333 757234039 951405847 670628282 995872741 578877656 862832006 995630907 996982506 781003571 814752800 168418719 393197252 855366727 913980970 643267406 806882135 926877536 944440126 102309358 583768056 90999515 794552962 816798800 817372333 248402034 743289219 714737217 983751186 454424905 480870614 506731966 524003212 399333638 972128031 719233180 738220811 397068318 889614304 105647996 183187077 925858369 935300388 550274500 922596471 315809191 499025115 850336372 926601331 808055106 913256353 824660969 911846876 342116122 524298600 264435713 701863037 593683261 706693533 41230946 821845554 643073581 718562022 264606971 968928197 513183374 809871754 215747562 537522891 430915205 514544866 587999794 774063326 248832632 771569994 160549177 649359978 668087743 710445751 671632300 818736533 820774268 915446326 886918370 957819930 35843080 200471933 159236007 767561743 851963967 931150926 993191260 998145135 868927263 920312234 898484458 961780755 394769706 586129573 464672815 867797118 811911199 943158286 914643232 947763570 578423838 718981485 796367759 827778321 678793224 905964206 657444881 908911982 405550533 930895797 796434723 896576955 352785272 792435324 727873073 849283465 762416796 921246847 223063427 960466645 676897679 789904614 245567294 376070673 311553208 387915613 707189362 788721941 552073815 721799894 361862112 555393527 387155364 914700174 483864089 803509950 964078765 967515731 120353488 585836667 128220236 835804616 116350724 261037580 687323035 689398143 154589174 318218004 654920070 802853805 359604885 865533148 142918373 926486277 256045059 776386003 163501080 248709172 254594949 446763333 208200660 916003390 683415476 893143279 356164788 469765748 800084464 892344729 497615095 788888897 413767278 986341707 444995600 682145288 363903507 709358052 711721486 864163250 854339786 953309506 773477764 871895582 994726818 997094726 598989277 950936875 560734103 756938498 19336262 392572682 478346658 897996788 945983906 964721649 280058692 331705888 905974377 923878361 544222906 608553900 800265756 986803700 277628628 851712134 379261714 495100696 525401881 642547749 549590984 768093611 880757469 992764716 319915475 814772182 121253742 378025923 57536395 657887747 951648626 989931791 216272305 734169023 787308764 937715792 400491559 569785192 20343263 506759702 190001813 255674652 355088018 616873471 335338188 888728857 479511301 713662902 937361413 946169682 388796759 544003870 260121590 575334980 950128122 969942236 820881490 935650449 99218579 881378915 752988308 947424706 277401736 556660441 874857166 906545628 310691113 525714614 673604682 808050694 467052418 516888562 10422022 240238392 249352338 543179948 201235870 882761521 394170035 394872248 17525464 194134766 627922063 965765384 630808725 899518770 20482601 530621091 929444003 982688261 941617360 992491080 261989407 650592415 665276474 905639745 698609024 832757187 560672073 847868492 285547161 286373909 29177506 151997091 420486707 562232289 5544658 781768121 484996354 500466952 786142532 821577266 54623095 945780665 534681938 649171040 536635115 923754644 843958987 980617883 752223901 871607217 185160601 251733009 747040690 760507531 78277041 190613431 404142507 464507684 644462541 875498627 214396222 402017827 137007835 143014834 470230884 729284076 841176407 959753508 577749129 961672832 380172787 831983383 462453370 505547568 299632172 406297492 838053199 977267294 957013003 988170026 214788663 906381124 301810400 605345435 99379497 226957043 312769019 614194658 109602106 819627156 151969108 200442232 170677782 334028162 493689929 966484163 52329866 119333905 162340890 166050364 436608181 973766149 901296958 918410439 817063803 962923980 633527639 951008996 27933317 146523850 824289144 963107021 453704099 899887623 160442023 464623304 937179445 998128047 872249604 944669606 338562534 876187034 912982604 978613572 851927164 856632348 211483750 562049667 236348747 403608764 298939663 704188507 288783 94220880 308785242 423312361 423775678 901022398 662736003 823360628 714990089 729851910 795357233 842267723 99899437 347394181 936950076 947508692 386040967 514637412 598560531 847052833 924831587 937493787 88026290 190967954 168479144 939406618 891934468 959213585 670763443 874864341 148509000 987769268 743109152 847525996 191164796 824474525 84498735 101143580 210510267 276767626 595706975 972931259 151379373 530447285 578072782 864232313 312193484 740106573 571397831 940610172 425385331 445985041 214114030 833186699 279448716 374185948 880641638 968632800 194654216 383030480 237633694 924206936 712309270 787815153 945368356 957398953 384445229 498965652 231484377 872197215 131873285 617055932 182155521 440237385 917998870 935777869 249652909 510755028 8416778 858629134 188764510 267662419 938593516 941272554 762307659 836216965 44851503 123798497 448589723 606537441 43293667 922218947 573008169 956379700 953331015 964005713 570496750 779356020 613983793 644795034 501628356 798396797 892977964 995022110 940806332 972236762 654323066 722640333 391661440 442315161 966796676 973496288 503127419 603229013 382932330 473046107 130733501 156952401 547432086 930381645 99375515 440579765 340178201 524142651 694188186 776309988 269131135 945690299 207114475 210252538 320579364 969243718 396399936 934942216 798621815 956609492 213617404 724641590 845490065 917109310 453898317 958073810 160762711 758759481 689456922 880096672 31406935 227272671 249892608 986091803 675061096 861735456 655471566 985676916 793298453 892759367 974078190 991125484 616981240 635063687 859030298 874590963 631589143 671039980 394878403 846814579 756481498 995860819 268412677 814587311 211866105 818530119 578143759 951300702 558605365 608411299 731957174 786478007 624486908 761089299 384280957 675939337 664897432 995954988 58454817 501485223 949098466 991814507 301014051 902375734 776961134 991397698 317170928 977258106 499019336 654695244 601178379 871003616 975771471 991770638 365620914 730493216 718966555 980935038 742166155 932527531 415358197 742618552 637567376 750368127 369118814 736902114 753275606 935075444 648002400 650375142 915480679 988113579 974910415 975071065 435073453 489508465 291694652 414931837 409277855 660617480 815900270 914936899 968640398 989176621 911910968 985762751 803049521 931470905 254574972 395162246 198582478 903863535 133842242 462473916 286603319 604809395 368274551 855215237 534320961 789211080 662429799 794692270 323093501 709755711 392782043 656373552 866378064 869798559 7279119 992227708 133829970 890794667 935605876 950416482 511750717 612567778 672224461 768017118 80063860 635520097 290357869 754208254 237300264 449784433 643607367 999987760 624117948 947541986 585851602 964003952 916085878 918430802 902965341 944138003 497170904 738188279 995455277 998068766 847482980 892626648 746386225 872430843 321549747 345897862 575123486 640203820 91865362 110804643 402310576 801215227 635006011 685078951 915817040 993958952 317408628 818052820 696012129 832122277 36463817 229540633 169767294 910539027 504366870 614782518 259673345 350763659 967154609 993084628 991552573 993194172 181907769 834497916 948660254 956905069 101074757 177257903 503406909 765651117 760559735 895307008 697217475 755262561 658677119 958448953 606209256 739385549 712320644 913101364 987552252 987768911 457059782 869536925 457877014 917126144 128902025 904718448 312300321 331513269 375463652 638316877 569792667 694895808 876885070 965218351 267545518 646704435 632890307 660381135 266793943 851181886 357686096 559049032 329693004 768396903 243832700 252399830 136575902 321273949 117899712 697952892 220984840 555059755 325076406 821603878 653095492 801771669 388044441 682696934 501218379 804282197 632095740 764064957 573696339 610390012 365637997 495398014 250635176 423860884 354553005 977695460 976429940 978099214 704379638 973715627 788459603 794756450 45096660 889248683 787316693 805469949 730202322 824538376 128491026 970623994 193500542 372771546 553485355 645984030 17073369 670296256 21499751 134081829 15921821 661831976 235574962 954662734 336097074 489738663 199772582 684661154 374996665 964848650 148763634 350465188 916774664 938234149 634269012 638935687 23144743 55958661 86372136 523511249 929972268 937377719 921997723 941331531 487702060 530978650 952552069 979784887 204687268 244325444 738626432 813849469 837468408 893297068 266132660 847618604 545678537 559555493 536372630 972969719 452954173 582303537 890335381 980361152 347712128 854362665 199283342 330943547 122727483 647549709 326969379 473924946 408575049 945292385 427325900 989342994 576104836 641841480 828510260 843281194 451227480 545179398 229756864 382410197 471380992 845213075 618603553 772483467 550813658 918595562 565330561 769673589 645180660 928187240 700701109 931171032 919206060 935923643 336734994 494295543 212266785 682540222 374959959 743394919 779347755 808780919 500575659 882004421 100881779 443038770 477434128 617173066 976142233 984482936 713137132 802742701 547994182 664023544 866595932 961394635 576223336 741816992 621169162 775819454 955432997 959023293 696872078 810565405 316044648 470233415 663862554 848112941 719190126 810941721 380399071 876013239 624386220 942027045 656445329 897962162 201567819 641142076 220531837 291089968 790350661 916421118 626364767 759698174 855901689 912035070 339448425 863377700 820445240 859297115 921906666 961666310 840671316 895674536 116849120 263167866 338021392 627337021 142635227 900223868 471406119 621269600 558887980 713741682 417265980 596595412 127928490 433025146 508899314 952972158 75477787 320905055 140051550 900592898 586162144 936614799 35969201 607661256 434223320 533071439 268502392 289784783 870997711 948407082 161296339 212779755 506121066 640827646 331334107 624608523 204360568 420127480 885939714 968960034 303165880 604355908 185402430 666221851 54539717 826700607 862577272 864992445 354067240 437304789 190928455 711659595 193551320 581882803 992929068 998591951 955861131 969469230 586545283 937814935 736327055 996816646 236113329 576298749 811807917 952343950 952661886 964366072 496060150 972092484 709687201 887843096 909869686 977021163 395015097 801170740 37692122 41188494 191448254 578726741 890854716 997113247 410425674 895367022 896020702 903620840 333394269 890890308 473522595 926476372 157364277 671389148 38950724 905701757 88424518 891608286 256673737 900655929 321793197 468854293 113918914 149116156 498707636 659101865 514215868 733855015 256795953 462234618 29043560 858162437 71632535 933117159 393703015 801206001 172786379 211267316 137831702 581763454 686420504 916030272 624310478 673134532 450123496 730296027 22552081 380097376 205079974 905784805 479258768 885393126 866763665 961530326 397749892 555450028 763237135 810081083 267113254 402455725 635292655 974864313 547556564 820561447 282407731 533883448 871213084 942708035 530030800 941505866 623760614 720906171 57988334 435726065 1779757 624830080 971131251 972803410 420565586 496770548 805014119 907848241 316089944 697129195 525166258 559203410 67108192 107171843 466017621 898463274 281970318 403545773 832722916 881601826 543086459 554101160 32649376 332594236 793154337 868725464 401391275 492630130 526738711 652059228 790430052 977455257 820223842 940325648 441697747 802986360 194976864 389222918 17217759 96853063 8734682 524594800 399589786 569518585 257358184 578920108 916061927 964487967 320483011 857012409 46869059 647699417 821633367 922016900 998768847 999499993 116742323 797385332 369275376 517573196 633474493 658301226 562108670 802538792 870115223 961845042 973465766 991277394 574902516 625201900 312900582 910216079 338825693 404850052 182405731 650138968 947480721 995704129 73388765 511268846 596340078 836504148 689490926 978013318 301162302 565452056 856322285 981863126 876471672 912549789 929545144 959716235 945057122 987504663 396891890 902851294 319672773 822636878 816501677 847114176 639039227 846818290 602328171 966940777 437348636 963814668 120551375 169603915 576600006 684776524 30180972 975013278 511831385 929808534 289033200 549687746 186142681 402978511 586833753 743192904 599212713 834691640 370287215 946414691 378262043 897916206 357249514 952546332 422704126 443242667 829743087 891073292 142011347 880735608 544457586 988401631 77829616 634789175 107130248 846559257 646088039 733864037 340640180 663438047 171132555 934810759 246991669 958798526 975057017 982419078 232321125 502040956 64242589 865813537 427365190 783213446 118599749 622756740 319679047 380858676 550509374 712435667 489471435 934933666 974659583 978311492 887742757 962487319 757727585 918658261 94538429 911274826 838102015 865254356 683627344 744940075 410673328 519174817 220504734 249487723 166504845 167790202 596341630 833669305 224322314 461060079 854353674 860383424 911376690 916218199 818791221 842335344 41067427 817184054 147605681 252996578 51034812 351875459 675240789 910540456 834031906 935045460 136003691 408181180 343623463 673020269 573398658 574332705 904279956 947086287 502049147 944835987 122423076 264109610 450997657 809868168 268295745 791765294 855252856 997276952 666260636 929599067 640874648 824968026 680779168 993806957 834816158 835046413 905402167 974410779 180869489 408358355 783777271 952482892 677621653 988620283 299204127 576266525 574981782 979188880 23040113 531531502 465570634 564251672 704416434 722988793 45104737 802176069 143918649 599116598 956798598 986088408 520702776 712588470 856537478 907733138 774375929 931825204 536373892 788199558 892171442 950816366 445127329 670835276 298837325 634383944 585905789 816943254 878368959 940505240 259722579 532288052 974544518 994495238 929753614 994554645 476721656 604925169 954841908 996820050 710088646 764271132 104845550 854749302 278591610 944424261 290353494 978391948 119685619 413401592 401965077 424690737 990792278 998149169 597613163 680890275 936701984 988263655 354227586 680272764 138245129 342745668 339932094 387760088 388044420 492866843 596559341 751534238 753919877 866479853 209510650 952510453 724701213 806734151 124698207 639921145 596385820 600190501 600050804 999023278 606512534 828774470 2446374 757513438 558682264 794960075 545303514 666064366 918237915 939810559 403899378 990077272 264887447 747070031 288266034 402788911 978592758 998150730 931008836 964699597 486234166 520790592 909468705 984721427 157616033 219811720 807190881 991021549 302422519 495421379 291691864 976344625 411809131 684623576 730241898 830190937 685303248 777150161 650305857 750958656 398814341 497514493 823425294 976112841 82084068 550288475 147302589 331108261 78769505 168224746 31506500 263775957 483844821 674151689 291905211 645490245 59051853 115658186 541221701 689666494 973694675 998359830 507821840 940792302 374718957 732822566 23183052 899409197 162322444 591242429 232510921 394351228 660481491 952840367 3180002 595837174 966546498 985702041 12420581 856671971 996412333 999080914 415230421 673016807 281051284 323171709 152956776 635408789 165142541 734017635 911542615 961655012 981734819 998932072 215615810 419950772 281001421 638616925 566313706 983925354 373758744 571339139 981452879 999564434 817185979 858259537 472756867 914123474 45481538 918029391 988606869 990651860 912967398 968588030 691600403 987409722 704214477 910377909 735901441 929151138 550434842 978853696 934225845 976676012 578379792 895667346 888478972 967206897 615207758 895969967 334895534 558588167 561688746 666673101 820215358 977534073 273545874 637353519 977278014 999277005 233790035 672671756 335035753 934769261 34672427 205100959 480139442 989539396 620641332 745712229 134542410 145670924 838343010 845302300 894272705 941697385 847719530 971142669 312343448 346684893 10556984 89737012 487486032 754960718 484283590 491160193 737302704 945731482 504488949 742781314 403017611 500068023 519637777 796796545 862235456 933078808 881731291 976735734 622856923 635416858 943144072 966981813 276524109 453427388 993607165 995969336 420661502 549713532 672839375 860572342 602332121 886956479 508757103 679960256 55733427 374663458 333062364 515431175 654235469 985078655 11721237 953683592 443260927 665055259 324500777 796026951 977723776 992513683 862372554 918428033 766905665 830611552 80380865 802100157 495128938 598371767 466404298 868466339 406145246 674517357 598453470 638277580 82515323 558760666 180874539 453335268 470485165 998627822 858119522 906496239 590791190 895433630 491723379 735176794 979823959 991196789 721870479 794016011 524047744 618915346 222956323 365380290 954233663 997540408 780818165 780945321 875540300 995512490 778782331 970885283 573677137 706525679 71961671 923498585 850919916 966399609 909963277 934813480 619515634 658498256 700538765 828219119 365323133 923576598 886283241 945494983 68444068 976502233 433169880 511949172 608546398 774332237 862058750 890883761 562575171 643712379 274885845 298218972 451875456 919588541 82971134 352165156 905776023 924547852 476116982 861672932 852038344 988847166 545330330 723289771 644825380 696032971 367025031 663766518 810980715 828488112 148532102 911545520 780464655 868793854 126771566 714734064 705715970 934914487 66802086 633918554 807445127 895068845 249835183 667436836 67121418 527787661 495963382 798260124 413754339 738348031 864542323 916347224 625367867 930518814 59843906 539921231 444529694 732261097 906448725 981280908 785379114 793528508 178958934 259182421 454495219 750988580 572188846 997628219 115275696 798433147 338468048 525421405 900478963 989177887 165467804 709793938 497996239 518265361 874117825 924467978 431529846 781182176 762138766 991662997 756043920 910443365 638500778 908409297 155800076 840532726 675552323 951737258 721409795 961875655 727529180 830168587 92342774 493424399 226997502 668634759 848352850 961093524 204990402 564549688 30725048 772082559 957116244 979663094 679139555 853474798 126241322 705061953 618036049 820559632 640788304 997585249 500301309 684340772 231931768 319004806 45386498 344952432 345285407 797324238 827250904 920538599 917910886 947088076 318592720 572206429 254359507 903846503 692472130 925512154 910819082 964265064 492348619 907164362 736747168 936016795 96506733 427078613 658039678 858963939 709044389 863575963 61727252 612712646 154670889 419377383 811317508 874853329 374261936 857370304 984797446 991146821 45671161 188857548 930047941 973610869 461062725 949059037 538938558 926562429 871530862 945717976 219612613 272834619 50471349 403431072 854215219 880021255 329864600 853709695 691496087 740416137 572569360 804309438 567790686 716462419 478387358 619733394 813547609 826269957 911860188 936598980 176346894 713138504 480684417 503574826 94785707 132880771 929642267 942295847 61364655 906698094 585637702 764576672 371153168 825910215 23822625 178464650 538728009 806912112 948162729 956026975 316039319 909321889 505359004 617839204 194946300 961955252 972812100 983188263 580065515 619711792 765383108 788608746 502679523 936979890 716908205 971036808 200817666 721756776 618185749 621443486 442222777 525245047 119748100 371037386 527255551 978391379 419978077 549884184 971431094 996965456 68037055 142597939 507596034 835139419 938752189 964498277 839153438 895783454 911658434 977614493 946242779 954266607 953201705 963208958 238585118 659515379 478035997 633166912 527921684 697105677 301045063 507025456 569408892 586979093 594362897 632638996 198220619 569588431 941741005 967629916 206074744 793461063 536351641 810513552 584299748 585566514 162312982 459550059 663759014 927405023 992091782 996934541 81840728 139147990 422936733 535285884 991312772 993968147 151998646 164195815 598265202 930980504 465016420 558881262 960133929 963556487 35823862 381897312 961453826 962349749 209692753 233883731 267399854 480089745 175321451 688421816 313316178 363484753 998512529 999272334 597649379 947036034 583940991 882543751 960185983 999706653 412829169 810346427 752506881 765321489 72892166 118188715 400766951 607933376 217701854 640579893 674737309 838997912 835716924 990154438 748535441 793105474 586780713 623875874 790287184 906735671 158131525 625713531 275418223 554429797 705417248 956496231 143162606 731706049 342577283 556557620 104002011 923297315 451051826 891284686 372529187 953039339 771125191 872461832 166491369 258006479 134773023 998670022 78305919 502120075 383913083 734153779 727092239 984572511 773412336 961170083 69313161 331139723 365456837 852626490 949946674 964852062 456945251 821200102 70362963 496027640 582977034 726110130 944027338 958461101 499063215 940893331 155463379 883955942 789954413 821534694 898181750 903616866 696756200 820969299 21902913 249442746 134989845 789926210 206660876 892058685 440671911 508840473 975083097 978919216 806548544 872543815 501489543 711148256 598919711 705604561 226257450 944259462 571875197 830807551 485902322 626605691 126167655 719141770 51537014 236679154 866030773 945511041 802042606 916004884 367955396 516826886 258231821 743697615 262189173 634281376 472742641 675299559 925747698 929342224 450695174 970992331 37512649 436746486 214201303 257110707 792586761 878282242 487962346 935869951 17857831 281794700 400824014 528854590 483389380 535066316 158705506 529441035 288645539 519777878 651169697 952169985 409204747 978997747 171162147 986996030 437370626 913608442 618625093 665346368 234971786 587810419 978156262 999019255 472096994 502096185 745253243 846687761 908200815 946604697 852998849 947543535 105092371 948926092 527480650 634111129 830932682 900819180 29675397 650897911 277132587 354696146 854511942 973352419 612941633 922790518 522785664 657537565 664149782 829594878 392689893 891536980 735775805 788103052 455441052 542326675 316582293 354466771 214406228 831302315 788789121 824083995 17224165 62189986 599918268 623567876 228201674 991342964 645834912 768952109 160204582 892519382 500699962 873443062 963950448 997180202 741590917 834791942 279811679 365233216 598437044 727027896 111140194 627403373 985123918 996873430 516426850 923913318 182864287 954933277 729195359 850433364 913948052 978598558 59927269 195493251 404793023 632278984 205632389 753700268 344783712 470608977 283416900 441864083 334910637 555905663 196426652 564864811 206998151 263885188 685431448 907948355 259898070 945893730 328931911 977699627 894106588 944929222 388641186 503297970 225179171 894986576 453367462 975347576 303375481 610218785 678763364 808534542 520240486 802619179 905920147 926224412 948635083 958853693 567107899 959076544 26875014 83327087 41252880 458735247 460172438 665957809 769485170 997807235 57671887 91720902 731510464 906693120 864475697 961093889 600818299 823350452 668391606 670530590 193937298 784946955 48452960 964692436 141807249 551652711 968539567 973256878 598749773 945421553 56304165 540328222 150705608 453474166 540455782 776194151 745815552 777137060 199252315 841288575 272382655 810840280 310022978 500373846 813985303 876848471 758491216 949222976 495509478 894719340 264151174 638975573 960631828 987205500 958499635 982716572 86162951 805663591 102972423 308068085 35450166 863603646 655109256 943563163 805754621 901608092 529210600 865184118 895495765 958255668 108694414 702375564 812019022 818978363 403779231 784939351 270444223 821210442 625977449 986895095 200333104 297604213 236912086 300104061 404109791 947500356 969850660 992514071 115958054 704979168 997553904 998658317 507055457 554460259 344326304 413260104 387569631 725902592 835913074 958337734 321275297 987684675 327185000 765064976 454091050 833214463 607741951 934392817 456868730 894441545 235414833 666857726 378386398 915841391 416195442 522446375 268643142 376041070 944731525 952112018 861113173 902744184 948055847 959197830 921811252 995972699 872834849 983594746 330052799 831275495 645804612 680278685 917089581 918421346 222102723 303337906 726023844 755390200 778371902 779702712 370422164 742962418 69947620 586149612 722055833 752901456 166091141 167518590 492778230 838565344 348663416 936956224 152670715 901633951 351232933 748543219 358352720 735837743 677485985 974096048 284962205 673310298 392017712 511726436 860129284 911521216 384774188 866567132 427625080 986398918 35753425 989973974 653094296 987868848 245003105 850991838 43485890 126042830 873742479 976621910 120328325 871538621 421280784 537157154 164423788 426295738 868656200 952817907 669717255 819356797 821145034 947231827 485993668 970897295 407901580 635643386 355513613 502095634 818047456 820519129 380118243 888136154 75529372 118634479 263661453 314918933 763650468 855798094 424035170 781831764 506156884 756993330 773220137 982943823 535243535 692647545 828815284 866817761 556323035 594365920 219826373 325014430 107112194 271428794 340717623 865663508 35050948 835615429 110021318 382593056 5844363 991271866 731386841 917412096 639916268 780915286 479604378 739043231 400658236 508676064 760548419 889589506 83772614 509300070 65060668 354939559 935131828 950310223 670943251 984164613 811858765 924759194 40947298 889551350 724229876 867663447 774569230 845272233 506009142 690809804 829381005 838668625 91034349 675043187 348817049 389984565 485401882 656020185 91427353 495786517 585973100 686924173 586928530 928532804 130350520 338022412 988050956 996629255 421604279 941096759 907564592 943809250 938479250 970522056 566334695 853300679 633130292 879839399 656830032 737957725 1293317 502859333 889921429 984515001 805561306 993533575 470653794 790021436 296480154 588184422 969614496 980413302 766884417 893725630 244579186 417195422 480979562 687779332 464036459 741259228 674555342 730346069 857427360 880699594 627989663 645439439 968655219 996549562 813485924 845173113 166371934 402753813 716223914 979797832 262581400 657989554 9118870 939883864 497137541 576724064 916698063 932839189 680590847 829352231 239810265 598194773 123342963 562139388 498601853 530052224 246950315 873589021 2898977 122182034 463970942 699663054 688836503 696397534 22473087 566590356 646949052 942483452 490152604 871102672 11427696 569929117 706374527 737140059 522538263 812230207 898866071 949598614 140332431 186674971 590332099 714337446 411878910 671553520 584960841 606297116 290279471 562945727 631393724 942442240 938275255 954390318 935524382 988844922 56482304 312123477 95588624 873768965 466067828 926613435 306022190 935114110 625723404 928222530 371318441 958431452 468424783 912958064 147705019 605461384 812794466 998934326 389663863 863660800 898153982 958974140 580855430 651635398 983075863 983721309 560997587 859779072 9049817 665254589 817599507 966420846 512672652 601309917 592807969 991523522 328312906 713384837 413467491 497004470 518802545 718005270 160410255 863788164 559113568 573816160 280729176 364913249 839841866 998077235 918710375 925039388 349783425 702625555 177872186 396920410 570333694 756224417 162933345 290405590 538577815 899915543 982068846 991935244 473174631 512798941 361232780 862361030 244034917 590784463 756193771 761193741 718239956 801275579 29158117 726033599 246972797 989619097 392058276 486747185 66849765 105473638 682476710 973782233 141122001 513874905 101597237 519760348 878892515 906200083 818129642 918095956 675189199 832902685 250171295 499104892 446358585 875980662 569694558 576316151 518987575 917995497 113741610 929930017 768556803 899610073 962787461 991551978 314163576 529326442 381462162 708707237 474392602 962246699 613004926 905981651 591698170 798248634 165590438 945375378 847301088 862023027 186218023 344756445 358044797 736379663 597539840 664087255 361207946 745683587 721543604 968042314 65070335 832269925 972410537 999457985 551673541 867664361 290024940 720248254 776757057 804462487 280898087 328797198 976915723 987205624 725654360 993778009 421162005 858882430 40310540 266262917 671012114 895167118 280050422 602960829 385966464 590968760 462433553 845728961 404781070 886485285 396350629 487313522 698672735 750644178 544888852 966883467 524050823 664104432 730797694 954792094 221190683 860423475 204589232 956955249 396371650 666310124 423884682 493907291 446744158 615540543 718230550 929900334 555867626 766136879 313151090 788839893 994778768 999530034 219836785 996549648 235209028 479655851 342382695 630526599 460266240 840859817 340069659 783659307 306081768 409232876 831437738 950588473 629700638 686440836 462777803 858180879 738619471 948629698 876041076 931680153 221736226 797081997 312551176 851042980 335380292 947466257 864303249 929968829 256199820 669145078 905751424 959752741 30526823 658505074 639442634 669365249 92201300 621972955 73784723 764356712 414834857 551623414 296665035 618000321 603346154 643163064 73792156 621698256 108731388 239005664 909034608 990726576 313540285 970150774 912942834 949815189 755881254 899925493 752752896 979160535 20461292 210788519 505136504 813465496 659046520 786178755 747193019 794224585 93278169 462644883 899289069 999868060 734522156 852762000 544757271 580946791 236654303 413911205 315317267 794501169 74249806 329941989 395898338 702099360 255910654 547044933 293840814 443945779 502763979 861683559 955434819 994052393 3678596 33435474 417575751 424207063 396536540 436706530 917138508 949255402 219857989 722960313 266390376 935782763 846136098 849911120 314911952 874835501 158074392 815907269 902050240 971681923 191858819 304812691 755662688 789906378 659924323 677331490 131988165 974572913 806728180 965728491 826222006 866101680 497352814 749321602 493752056 915858671 543727825 815389108 629945237 654783255 815371457 988195324 41955810 823213773 14023823 581509692 175787611 327129247 623690586 640607096 111073212 196339384 716562926 946177876 256937403 813745643 412872972 987540122 872789166 969971789 610353630 860037742 737444741 943909038 345671994 870277978 417358015 671440779 276957368 733888844 393745103 883660362 811525923 952560869 535500634 798130576 120517164 245721584 209102948 553681100 605102329 840646582 317759864 756348134 652757374 701281152 574202346 871956898 965803848 990401480 172742771 529521164 278942286 356769940 591510510 726925252 661586085 729156193 416671087 962752223 584396421 746092764 816067749 931818780 845673931 864545625 663103089 713393840 616204995 765070921 485254263 522882988 67706604 957800958 415682710 801878485 627668413 894410417 30635343 402644057 978007768 999680459 427587219 744323010 949644101 958026386 237430654 652488238 462762042 700330618 972734335 988999336 405190798 423313465 838645756 869262632 71906014 894485882 870783905 952023185 396851178 971841779 256265205 801331049 84655756 912806508 652121959 723020491 813177339 891797188 277272693 703220030 255885096 804142715 937447684 982971411 179389491 997972390 553717712 962734880 437316014 577737284 752087971 939325659 301231939 720953556 977584536 990941689 99678228 895490921 722059058 929391637 5356286 630677536 497839905 768824194 334590943 943324212 62311798 314538553 49577300 795763384 265854807 590972626 288884258 386349484 446563209 772372769 276140424 340583161 941036927 976710859 478537364 494680893 916007334 929423737 303212163 944534483 593429534 596132622 101303814 858339839 180083153 653924271 147465269 688034490 452588527 881176372 807895510 896846971 766991264 876837976 571837082 970242457 728691249 981316624 400246358 952182191 786090847 942189584 114243863 556097885 529132955 855447408 82699094 719384720 502424206 806340149 248475737 607083633 850650180 967679497 698723070 836296153 165008166 523123685 256648302 344193043 800575042 948950576 274611416 572223918 713175408 891572693 747074816 958971504 874696182 884292432 579196774 620841109 368250617 588974590 107285194 797206344 436588721 926096137 757180290 896855585 908580658 910184401 264239745 405648136 422600803 554201954 156201293 460808103 715645948 907469097 470398886 785939835 308121748 727421991 957743279 985790119 699354207 818642924 632971026 680230327 263518406 599102521 304890735 638402093 900950161 970755683 20919285 641671155 252466633 954426930 61350446 250824672 225536136 313692930 411625749 566090444 644650450 950308027 995766947 996661895 241380845 838085525 508402883 943038083 14135888 884472352 575267610 931607204 31497698 306543271 231978403 614209665 373392519 456552738 573747076 742145916 870822879 959747489 705477111 714787695 544506524 835179031 73927365 241787333 584373072 736111055 661448380 741245719 41552989 980618774 8004589 725673235 860364624 967518129 552564833 849745425 213558457 454750442 678839181 958429877 726913549 871712920 875382551 936015230 572780786 975323005 475303184 775903831 82031883 889268652 627913733 966467429 27874012 908082243 926753668 979871653 437872842 892633118 193055013 828401733 611682776 669923638 134055280 798113876 735742028 890840548 883564012 962634039 284504553 622477128 560895088 833642962 212237348 990373592 151493355 717705838 201537514 760998180 435179884 968200336 114031979 651028495 230631092 442509723 508393281 658806346 917819025 961796628 808256678 999165666 729386596 767547437 242507293 521739407 477434949 680364931 422433714 952200877 141623424 737479547 554525016 848905968 808573413 956885515 942710689 994435819 451141705 725054921 283355267 917158031 722823619 902746513 818473976 903741190 55130786 56007415 829829322 869901902 337887953 396133827 366184617 764306310 8392801 327330311 810343962 926166257 263441381 995307103 415953496 906583645 86318969 686513994 575365391 870274959 527664440 657614703 597863130 813811136 81511054 552057408 185185046 898666431 487591089 789080895 871852223 985050516 379133866 960791556 700432269 984285352 396827110 953407601 664155859 665095505 182572566 687957868 27023572 394449283 436808913 946834698 985235672 990897917 860665833 992147333 955605131 962622254 793263491 827591571 757615563 985934096 688269898 944548505 151791830 807843357 543113685 564911480 734291800 761872276 527354903 562850628 376752575 432663763 747410876 965306186 379316528 957823365 926032478 955819735 947935250 953451728 467760877 654345017 738763210 844933631 169681364 998223805 11514929 737546753 141793201 804356840 970466872 995169142 515155969 633530523 379043304 670282396 268768194 943940678 382246556 853643224 321222332 573331452 542239830 926373052 540713751 722092348 15884594 562611886 953845264 963478863 437105864 774524072 884044682 942971964 973585275 988697284 819768287 874004130 239070282 375695018 873805555 904821036 737598775 756668604 785454201 786809478 105374616 341861066 999571822 999873757 62265480 681781884 882992504 887168600 158671858 912473766 580096315 663634706 371137901 652099567 236908628 573855366 100015755 307844732 584256404 875835300 860094607 938857990 551487029 856710082 928892778 954938432 919711070 994224668 834071657 975789783 852972704 931765469 281687386 822873358 910090286 928695873 255677743 567024795 476367839 794831575 383027430 773483615 569167667 862759300 218702213 250351063 152490471 162715432 97639612 512729965 817257004 898528716 861974941 949870823 828977587 970210281 715262644 968800950 34358109 589849942 290079393 862344285 913438905 977896211 212632086 764789727 210441546 901441052 214793615 503062278 617111258 709902488 345656859 869132016 210440201 980312329 219130043 749957389 397262424 795651739 275521322 878842849 888492054 977478926 665297830 822843172 972114698 975429586 604921333 655878077 259278327 866116663 951566160 957149196 139716839 774513168 64525642 792782200 282745593 819054163 635775697 693200572 439319025 660003831 100097875 252724926 157338222 396908611 156809467 170636625 617466311 731856961 883529726 934192155 758812519 796710146 786542785 796077165 663705046 981401636 37720748 704330405 118610333 270190240 113472656 482573296 480674505 555438148 751870461 993759547 377132140 524466678 112499654 323342383 537569006 617319455 803657093 982315940 427985928 949814103 918548845 985638463 950169700 965317987 175597154 193460149 193026288 439940844 185852043 547241504 652755398 653383667 624115539 762199563 560761637 565150497 217721092 346069809 541713452 700797831 789284933 923130206 259440906 348686236 788943941 907205894 600722365 946690552 832390272 871874700 195680321 614742255 975243723 989988933 787392386 862746295 394290246 884645851 847420051 963820786 306703571 764408682 995050313 995720897 151530817 745604038 435436487 978858421 544512467 816339780 441714401 644916348 3907451 510588130 540074157 822458827 758755325 816023209 635325191 778132259 476200048 546700517 204556915 828348542 795143156 830206321 676243479 803704075 237510689 543038932 552185387 804454247 882063497 932507769 601918595 682392224 875635454 892422181 283646990 491512458 419911686 593117678 648457568 951964975 164644910 569497218 836084951 927396436 948587488 982679045 746905299 849896747 369829585 698612208 185379719 773002186 825140622 878264403 570048103 608132060 935320103 981280676 397046205 886368285 54261937 997338479 748572457 762990310 954590970 980564349 529847681 996196846 822471928 986484114 107780999 272537067 965794712 968780504 494672295 656460110 51377335 970973420 849440520 923594878 633738376 701307387 818881577 987669135 41131723 406113879 998627646 999485708 947895699 993202684 501274911 557485443 110345347 435036602 162913731 980253762 786842825 828798446 131143878 659925364 831136979 993290830 240433744 922552329 472790549 705363295 347853606 735887562 249348687 540322211 11082997 283667639 935468509 961890706 173519526 680345051 667616372 706214650 81760501 469221537 811049260 843393937 584288002 961849231 160587370 837319278 532623168 722283253 623513027 752706417 51868911 174598672 345893019 423321181 373486756 441966469 311916871 760788738 608512276 903335227 439067223 612334885 299095933 780410236 57557728 126048907 320697143 558269339 662199875 758268226 586051386 738793530 122531380 409908173 80884075 916079134 758926855 897928133 177339587 873689489 105025702 243064581 546123133 920100416 113949582 212462759 514599189 820373859 455490795 853121778 103764140 107139866 22128783 271729783 816455295 877255443 283386026 333813238 773019888 816656693 802267418 845890708 249141838 572028517 49439601 674778204 552588556 685488950 829870492 875002909 568093890 885625131 534605534 608648971 812964468 872108917 393844531 994243811 227286282 333248652 269836071 274939717 412646302 894505425 806506208 895939944 55458902 931682024 143319077 166406791 378295910 753949973 744751798 826123642 483095305 659696399 28272788 353425090 330293532 621394388 522008518 970809104 714703633 878015873 691762559 961650130 865392406 981405177 845328655 958824873 807187672 932208355 206453993 614822383 722523667 907843557 553679071 744142061 287264155 575179673 70135006 425293393 861616975 992087334 37110451 773997709 657480477 890010526 771581683 772337314 859591587 968848053 927752972 952526521 647795422 726624422 408462558 851268819 808109289 926573128 727180672 997539027 445234346 763533363 150792106 526360471 879401923 914176049 346695082 772481384 891720510 998595981 63900462 659674421 854782832 924293457 20070840 144045126 205644831 348972632 712024379 720931887 816525172 827285147 216240736 826548556 745684403 785915305 248598664 976738174 335322303 576274135 952479316 973042379 163363865 467493449 401463959 484287186 910170996 982807431 671235916 723585032 851158837 862941543 551591751 593954392 880524126 893402777 478656409 564831010 238206938 243426716 101379664 669042419 420535157 931844656 107569703 648387930 766734064 798360503 473480692 946830519 408472076 770688122 112351907 503381328 618558599 624218526 676229724 818338895 944306717 945440932 269391058 865640964 315440940 968991524 952367579 988463323 671109535 991125064 194707082 465560453 132394382 801601476 91239091 463509501 343462664 879846990 834786517 908140516 492909267 769523844 295021737 655621164 394965744 987678375 535303801 681721627 743634400 858847653 17600069 337797313 54537666 96000143 830287304 881421589 691876778 906500464 214335042 547815074 83063099 410522390 447046924 699286403 898679692 942550469 287274731 494441049 209046268 690946796 59984336 478244874 875637388 898942783 222576476 935710932 270074837 898450349 620427172 974377636 963073069 976124358 578912551 752899356 872108598 944347255 885826132 968099307 151674645 693910901 348743500 520436200 398098241 501096147 751370154 986990149 712863085 768651691 425295535 807688591 603050091 831031584 172484362 764030067 104992314 134235326 789588401 866694947 879322740 941958356 915807156 983962116 650989072 762233855 340522994 788426742 705094898 825978791 843520503 906920621 472854638 532042082 978216169 981246382 956046119 965617857 465823442 611889457 183649417 385672583 598490963 614207958 68139593 605856483 30913778 780849263 849717828 932591209 74981182 959171048 648570182 652375495 407272855 769903681 792050797 922452977 613999115 789414379 30533155 958815043 363818361 632132710 655335035 866650337 620183282 742190236 584186587 839085654 479472074 840669125 485320736 623981500 373168525 486774376 488941152 851966531 817339874 847421025 440723424 649791638 906535196 922832105 144628473 638795225 391286669 916499804 4331943 614678623 582522544 680897119 604534957 863441272 866120361 957143871 118318871 551610240 907514127 927452852 198713261 784030767 990961740 994507819 13330683 579560410 834624634 932739351 397036994 434406851 261590973 815044038 154030482 414528112 12075367 455501369 562943820 604716347 864831894 961315351 842063675 858561534 37863152 273698815 908943390 945805945 794245559 834065939 820812324 886629017 286671703 329968937 720647972 824356406 699556422 814153385 280314311 294685167 624062103 841134753 309659049 727882799 817273432 899505261 625076340 663324278 139714184 921242217 482157769 621058598 816843584 856174156 116834652 649952511 510934845 698858170 310122604 780006842 679338197 680924243 681341636 956030934 864638423 968076251 910287333 989967242 705346299 873232831 159252735 545256495 835287845 874464335 892338747 963337867 900081022 979753679 505927894 894925198 641600277 822516840 306404724 420918147 621696161 961432100 300767445 802007919 841360816 844278209 365313715 852676617 55104539 204734328 751890771 990699003 152617303 295648176 489758777 498623538 732266371 784963473 395458866 439441542 174872122 516398675 249731807 399769617 370874167 643121137 596278150 830096356 232661608 756875005 489529864 519597933 995030671 998783398 926455903 932105165 370554806 414097826 126181496 242471480 588275235 621143091 736075888 765809057 368856787 446154600 712397331 775957954 765139281 898020189 688758373 833850272 140767307 816329310 352975101 601593254 389434247 583125067 771096413 823118640 689033132 793696504 43407439 320978819 912711048 981137903 348544930 604279035 54655520 854871664 201363155 620651195 994906995 995569133 883340170 936488349 206255 101324310 657252377 909659480 486986696 826790195 938359539 985039642 685176618 972442865 572661600 881453473 265241630 430605260 716142556 893017171 429993022 618158650 826981895 957351429 672005687 761487493 707006048 829894673 867881141 908064116 175715740 439964666 749943194 849385354 906231485 933882092 725702681 736044692 301542260 368039666 114369705 160994256 327808289 874007218 349494843 752454509 165033792 225370795 148048992 727886813 430687252 898156249 629753357 768332525 585316828 800599966 69127909 865676682 893751142 973910618 292018016 676729500 629607687 819570304 234537606 443144794 886936399 975995378 940321783 999326135 625681561 946380590 145514441 591696954 52465350 500709693 145732007 521387136 407760524 723230780 18817577 790206518 594350655 769015091 572865345 798807058 598763394 826486791 317236429 480028394 75729723 614036499 871027692 991787473 673426933 693657381 382979573 508326115 824824661 897018738 877273941 936773736 974876434 989445735 972157887 976549309 427060406 676095773 888662245 987091391 805487141 917424946 518603275 990081425 844711067 888808733 745737332 771737881 896170686 926491804 122731993 177273229 442406458 865907247 323268788 568818624 570793873 652357329 190116410 369932761 267884907 877206114 689375641 719920023 893207816 943224094 236243595 373870215 104220716 136809338 243966568 731360464 779468544 855997813 828913113 913569407 766430195 961803922 837309647 843908976 541487067 636358670 897043742 951056316 343021293 744565264 112413455 847177441 500603726 920487836 619089923 911586114 204643850 717741826 156712359 409606528 406911967 746215188 244590017 753294921 727442404 984952741 830349471 859089108 837472294 890653762 409922055 880441715 877409354 895797561 331286082 457650978 536414981 862897258 176777517 231405449 813694315 954939766 476350725 853706134 147646016 243820840 309730626 322963261 396428442 814712146 262516110 418935444 721631430 955888868 870372474 917211073 497684817 805489928 314563189 945736311 300942994 531295692 343779568 984520178 52053392 448696781 385957578 727430744 92001062 341828965 235639348 906510756 75591507 771962949 419284094 534265774 299269073 920922727 517959825 887508825 892293079 924534309 660699858 974451908 979278267 994560490 475553045 486596210 378246932 383108126 216817726 969373444 439809136 636183583 484144155 525625900 498398437 516469757 783428642 871171909 185079793 347142827 242994273 273652158 128014043 234309730 578567418 579542531 480587729 533047806 580776049 699034392 218024954 887004128 465081764 859752376 853053516 990119549 527225919 710191392 124283865 553593754 808263041 925829878 829963120 884473066 139936874 308777815 838216481 846077380 358934352 784079015 876030229 999620253 76172158 338413026 273950823 360413652 908371630 962792270 963920558 973385991 75015378 275393599 990540146 992940138 477738380 806900780 183471076 474395171 421133107 652256048 935449975 994549470 47406349 142134472 357852345 534937627 275478205 902155080 587053551 870627772 367578784 566577937 727721892 917522905 691499044 730887823 846675290 983977639 154812743 824554987 881722019 936071727 118548550 718694057 440239523 553260927 944134930 997532490 729154484 838695387 178412478 874210515 825509982 827902510 750767191 829772525 365024659 676077695 601321900 755308247 136769427 813590151 824961378 924147419 468031052 811190942 248766911 876797421 812772438 821624335 490459464 565220107 91422603 564670116 644953719 869272682 32317202 129238284 727436397 833134790 666415739 712643159 940092051 994461944 461744558 990749317 708100512 964609921 79159900 522452506 774973224 968691723 105707902 755851703 101441161 635313787 973201850 980899789 113210365 628934061 501706775 889379932 212142251 843766264 858308363 901335860 268779355 800353452 812518792 819294207 224836759 459057431 907004139 952777888 933535078 954748203 158201268 331000462 426095933 681090635 951918671 993681445 26357006 834434174 466340438 869378417 170410608 864458202 781840124 942729170 18838972 780322267 937823999 969295927 532315441 719531492 589006870 754435891 140203461 298717701 878775882 942415810 328334027 887337866 325621908 946098016 73319097 809210504 17384850 460975291 105112886 784897652 516353246 611649937 163270048 371187303 859882702 890815767 542533450 803707592 604671108 816639429 596471014 691055028 257040761 797157719 288711394 778539457 56244871 143421160 987857773 988332628 73191448 530023631 19114013 769455463 296461518 488852014 761091913 896091308 470083227 879946375 62838315 478525040 730008235 730783937 949168445 967619436 683394993 766844527 993176157 995005914 475484412 733013770 847929812 858995519 846309275 889992343 870604153 880186349 55047019 375081452 202457297 925687209 612951088 712776336 283849874 287381288 328449413 821302123 113766214 584589339 302455253 585089790 853608783 889752679 767697475 902087094 487019758 567800271 283964166 320089973 511726324 757918393 132202032 454947872 77701960 775046506 337810786 920232737 645855778 680637700 520660047 850196294 671092377 816357876 514573391 550724125 496667506 685505566 936445900 962376669 377043728 804196224 827662762 936691316 575360742 771879030 24116852 884776417 338594631 543483500 595467785 953670317 352682639 505784025 751346410 829321122 178072262 923817982 115697709 728247055 535951840 688375296 521440620 947248422 286535076 320249543 336437504 426050285 166473448 478242416 839234833 952624305 518858561 706765296 45816030 116399303 776329588 822833076 795510585 795827210 276148369 744421919 611868524 679228335 455284714 787542160 498144574 576016880 185987867 827301744 220366400 420704660 682965731 979876580 157322205 487160377 415941500 800280167 216905389 764869624 787376615 971626012 329892948 728707910 858573887 925448357 259484944 892301540 959017422 969175105 342882118 550867917 778380981 826395558 767444726 885531273 401628280 966922463 489751181 894949917 226367773 377136760 162784806 814295408 250577387 410094337 116109915 759184980 547691130 749543780 92787707 840439495 774664573 805752546 725551935 978236368 919172622 929548045 709252912 858605890 410262198 906853188 483460476 982205915 641828405 936218720 208653686 768538552 443950487 585241647 264484298 909013641 519274412 940668358 85809934 209290685 641642761 807715924 479339168 789457514 265947819 278275214 400419736 495226884 224361166 991142045 412667957 585882827 427412793 944180444 359273373 686763494 408752602 497151407 930472819 951481415 460656175 511651784 26256482 753954625 440773071 632843778 632678592 951091587 237787871 390282932 641028238 930174087 50423864 819513892 264234411 964881247 748652614 799348638 398910863 711629082 87469486 864031934 802355081 820108267 294081903 686930963 268120181 562388064 805070012 834628115 889706701 971386509 834633757 948014097 804520322 844628604 405337849 480343226 130465815 306305990 554373418 669235183 947848115 986143235 532881979 697328253 829911636 862841438 584043883 616754068 873419166 963306120 713062295 747794062 172080342 666058374 721763673 906101942 270598972 603024165 53825243 456205918 949758098 977214587 822294538 893039392 133580894 570232402 415539082 711843606 835445411 902140407 83321777 497856431 738382175 875883545 409938715 535966725 223265610 658383323 719550100 738108611 586724671 978533367 700794805 718298071 63542841 736837048 589917421 688719915 800024212 908646341 121579780 289709229 72028156 821069151 447723791 590562367 728076893 966663755 354759498 788310553 959052448 980853670 622880045 651241796 331335209 958451510 498688071 617467862 998811356 999171057 804575057 882605001 446959357 962607876 857153733 878276713 362670244 975455873 619937799 684090333 615358094 762483773 982977003 993794821 230579003 745774850 42132963 491279761 227707530 853746301 327183743 501552827 444233673 815600478 278226734 339196777 542515522 861258784 983174950 989350506 351778925 803367886 511577274 515050928 647626387 705568309 160383724 693629448 167881434 489510433 79813708 751303506 511736492 837587083 60917440 829950762 698276085 739040255 89425435 850300335 675956659 683586051 454292620 788586519 917777564 968275390 272796725 677613618 392087317 757470746 304507561 461935635 291316150 384946918 381079100 797039739 701863454 806595901 704612254 781564158 87054362 656255639 825081764 962655396 810212523 846027861 102482883 361699728 591604121 886947354 2213352 482339417 747219377 784745806 917718794 924236926 318591067 886214304 656357750 730658024 718359684 894620502 496532681 793230511 462366031 691863284 453128238 847419522 297557964 587270746 556581466 801336787 379885168 380374305 131555274 495491367 939830736 974920835 38643533 447658214 240726016 654183283 617517865 973601468 219599550 855608793 430151483 927148267 750679314 897824951 862240073 870716298 346176599 983227490 347612620 885573744 672006142 827928665 409172361 860372309 762634793 766134369 175282920 636710585 14819531 140931447 428546091 690719910 309023610 413377238 254899954 472641575 857560131 947424459 125546740 323371606 431891984 663358244 247434089 586931435 690702452 805166988 711971517 783333179 39931970 635017628 96345746 446857122 27903866 386675687 731595460 954695246 837729763 915729431 7182279 684703496 485606654 942151030 372991291 962743607 229215666 735811636 425461096 685770180 297801502 856197492 897014884 990286465 321664157 770642331 255332516 743055240 337328123 915093079 491367837 819706338 990155258 993742470 163169216 666078662 380003745 704899681 103945197 535844531 378467794 993834974 457559749 806433845 449412240 592538200 479961677 560806276 24381793 636631555 553884409 919067894 810537123 823071028 188910562 999473352 282242883 954302382 7066994 79900527 655437608 685900640 442865265 502328327 467576554 891069182 84456570 653410776 786726910 940518573 266548920 409115846 962996027 983292663 401506366 673552493 95214442 700565908 7752392 55081630 42542200 183012954 716641907 973050791 437346466 487138852 275065165 712139406 13998135 733339372 844222968 982438294 506844320 833430052 806002125 807132886 633527010 800712933 786396225 811319863 891752448 915059703 280916955 974122772 211313596 421753263 805159208 895202810 383685267 449819540 489967196 625899544 415031624 871279267 975144903 983122351 504234180 640017377 412517563 723333067 298594584 761651033 256638766 551750831 916517337 951451166 803259355 930289822 292130092 842177322 710333406 782569636 839936315 953392777 755393161 994793246 425606594 812773816 939042582 967921052 862480023 925412346 112905017 468064117 286830137 538556959 655526621 825746717 915557570 992192003 706613219 808582273 517774994 881406841 394093265 820549639 751936932 853303143 118906306 852324995 785451205 965945392 640124290 686408569 202169224 234979889 6147806 74780449 750340587 853765365 319134737 820477648 605941323 742012582 933854926 971261162 425340313 952014991 487759106 499545447 313935807 667923449 30173104 496352927 798907465 980727408 554454084 944608729 528072899 777133843 412234175 488870712 2786522 364283064 299296554 873870198 10963962 882354266 15922222 537373548 783269769 969058071 108013356 529072900 892272462 904855073 314264914 739016790 812491596 918606501 156047214 681100736 38608994 368885936 96756140 249661890 835735852 855379250 632724121 971247360 913424675 944138198 265698931 330036501 363166903 778241952 947285471 989764753 164368194 288403371 34797923 358256821 400252415 881392326 535036938 592157525 324702439 666707081 719333698 845674164 437498923 528814707 482278906 733329197 958128315 977916834 965077493 972901017 459018896 817614130 425663483 554301214 610281763 750337695 612480002 813429183 882257657 956083226 186743631 426523468 992884422 998601325 248698570 438601481 316171535 671651957 489083947 692867054 385535114 595369776 948871043 991059941 434268148 930855012 917204046 934603711 974435686 975393006 949055236 950272486 666256733 995205157 13424283 427246862 612085456 884263330 942604838 985722594 670720267 962833737 101098715 836039473 405303812 894387250 574384538 849095680 93689886 243434321 385628560 420220233 318042966 936087571 636598180 671415573 885901332 966211109 296375459 641351687 36320136 845720058 5161885 165137991 853312893 877424639 360959768 373934161 388311666 594259775 972369763 979670116 87595026 725465256 678704656 834336913 469640429 839971109 190080476 973175843 914907354 945303766 818549429 974116578 436895163 651090114 625333013 945109770 458008434 901046852 970525431 993906820 85618131 465965542 342701583 433627001 92728751 133468284 76683927 704368163 697239143 817191195 287462856 404162397 803049794 992220228 29704153 521061586 68943788 268555886 401495416 818521218 854051964 919910744 408593146 792567441 11339884 507360669 935490492 981781971 414497477 911674700 224327400 981261569 670660810 821100376 637861781 816602017 531868279 951206843 161782332 307621871 675306401 768425201 543260899 726595387 222213676 355735799 521380348 858389803 932497351 994707780 537256787 925403434 179705849 647637807 272598423 843165828 237479187 891268537 855627931 895776562 572709090 601551189 872718604 969207053 989619349 993676841 793571805 901018642 798381337 867482495 326157962 396996362 615203041 698743799 115215206 170491724 893607467 953190730 497777283 728498359 82318635 919754361 348631398 566006423 289641629 860117955 330689507 893472478 123662210 617786272 297776118 518120099 58704638 529743450 740512790 742078867 832035156 940218078 392185354 627878193 440309104 874729468 552028723 842544212 790339899 894270244 459229789 777634989 286428616 314070324 954361986 978948034 222868762 959132717 849518387 898960187 903404520 987587335 265601621 338774267 971189019 980994089 809661461 836853883 103921688 270332922 430938083 916987190 683422593 910801499 559255712 900954614 391009877 596711250 904803343 999363393 798536702 915779490 651263541 721633098 245719334 793667888 935729537 982379981 127714591 674362971 210869046 450349206 780377330 947899604 468976871 754679813 338156636 388957546 522348278 651022123 453355141 858086851 793272812 812458293 309631128 897515542 977449454 977576615 733145366 778280822 202858461 278861797 825386043 831144229 79518952 723618509 288619511 311353182 148330189 902414181 682247743 906343994 501009588 944678322 737914999 999034011 810924493 943434307 121310551 187063499 743365965 777429399 644639236 903326485 639308079 997577663 947640279 991555900 596400590 759682842 430437841 791478529 402873060 866214300 548560767 609781892 121144162 626045241 815212746 826520710 58552017 700241872 942450077 981575194 923504788 949252903 892463077 948046144 637184973 650260120 121800133 766167729 239220284 818049215 725203370 914605567 251037056 398193252 550653763 922713355 604598752 739380722 8275968 38547778 506018645 673905829 285716003 970596290 580920928 770322275 518413027 612995875 820400679 837414988 132307776 468029112 73735112 513134957 181537166 817674063 931033366 952308647 968386980 981441679 188537923 438361415 291804134 605439218 806798061 962328901 666798379 714196925 288108329 591785745 966107595 994127084 161471217 484414372 613209939 906918368 675709382 788539790 725240625 748904583 885819937 986022916 532566756 562334040 338217685 624923754 631388188 875669908 94474558 609982487 721034842 773692526 226821945 702806548 483077219 963433066 274456363 844158437 722641491 953598958 457481554 498942966 234347812 470912569 583989053 996900667 548626674 828305694 617898093 811651707 678398721 780849509 260234778 447774608 425317788 578958716 433076778 825349648 400159537 998029820 566818350 658555437 877049460 930869605 491439615 534169825 908259800 942991177 369015559 971054699 945144803 960355344 28760107 234230435 286366555 947528122 771558361 914211372 439042531 560772158 194687012 222111159 171248969 760831735 282165568 588417127 189318441 689447463 668824547 938027766 34765407 655700368 804892650 921760562 129096656 220215832 956770870 964162735 723379563 793552203 936262730 950840131 199547865 456925959 95956526 951221427 664426144 995423885 828464881 928077670 44691466 565207993 994038252 997248544 930764515 954402090 64644247 992368387 414583488 996158247 205968054 310321824 991681826 992672329 369946167 846001321 412421154 916048445 306445486 803247447 181246881 726012076 780806992 888867035 301677679 458194996 98528258 109011899 23945446 873977781 345035033 450591894 933344432 985058518 643197218 943435695 946506758 967043179 478466441 686385255 87854611 580353484 37802556 688585026 672077415 932209127 228792035 296803011 812669308 823599097 484462690 690231707 121176453 602678479 179111340 968488980 450736796 674020373 813970464 881979387 286408084 986462149 417041356 649653517 750899935 883015597 470527559 758882898 204047270 478343660 526390904 571592273 380047795 688678599 592897547 951960441 555953342 819384506 184412755 662849845 738224214 978988942 611830972 945523770 176659439 702800062 700462406 987776937 13183926 321446190 799989019 962829682 304833132 577146609 809152464 835946411 357057586 424181215 214712927 962963974 847950061 956411866 475129625 865416010 755806827 862247184 159166179 682518134 399192456 753415938 71912311 468616671 709182312 942150300 374067938 882060930 974890594 994348064 946494135 976692091 428399977 939997679 308943499 646036632 439754266 546230363 641941601 662611357 504897941 917098626 345707365 515996674 546218992 965016897 17942575 499380752 742787736 843469696 831325676 995795649 691643291 975622431 887674067 932045749 320471287 745903033 123147576 587539075 158466152 669153696 156442050 312282650 689367843 959097513 927763659 987501263 163163940 719546382 997847690 998391683 102931435 639069597 84466592 556300371 333347471 970341179 875034071 948683768 991612456 994077053 603794210 822452989 447369273 983319316 674520597 693813330 724466958 740126116 518988339 703407004 893573947 944471693 497080855 963710118 483221701 545437917 729124761 771061022 202114561 763237284 71658133 651504026 621609215 624587029 130605783 820892357 808198879 935223076 508723129 983048954 340993628 589202174 359396118 937463813 787661146 799704675 416714620 816760527 274929291 969333356 377590389 909330847 755512771 946732627 892628190 957545972 216082652 677872554 509382654 720019053 968250400 972623309 261565410 754204445 904856118 998326223 522129306 996968998 101827648 586818559 561762447 894314926 771429683 806642559 337262428 826787952 935657069 988555586 672656642 720722269 584095696 845799973 151806528 717534674 98999818 853124691 435793990 923992188 248383786 719912825 288133023 837698703 647847015 765886982 545982878 572399106 475060060 735877425 144983366 710677695 458411180 590612951 933718715 950590990 345707420 840094666 570063461 660146102 123897754 319433225 878004342 893509330 661347632 860278533 344843865 528057575 747734632 793358258 54984633 451141735 862164025 968899095 195455327 976928788 758184048 821574803 986744650 987269957 762722112 918094566 327491456 794819601 484810419 744760117 639893541 706638043 456164375 944572348 900132581 996482847 461526350 519287821 29820894 767214125 264625650 801688705 308286663 399601305 240817104 410238429 460597786 619190532 723560257 909705840 253674968 808998067 13923382 161642032 417504935 946771589 99850922 475028373 405374326 410624923 872028646 884948169 109529662 609079513 711781065 747280156 823161287 954178897 480589035 713037676 152022494 425398693 803864332 987807099 54567299 307600455 383403963 834713962 737535593 920599129 531625510 662663736 448091426 823016175 52547962 135584590 920355546 986140641 732606953 856993553 469495169 720915205 255651256 966340845 847700847 917108018 870720845 991475846 730961428 747856138 850125726 864954280 270033895 540578632 128290125 420884365 118626098 147226982 890075028 975003361 743424989 836560278 420026639 744842494 443858398 761704717 785126310 843611832 221724948 448551828 473343358 697129499 263735544 706748743 462241530 861908079 756116075 853913418 353160943 712929735 569464054 761158546 470857399 735563476 381291851 976260071 793358674 840714768 745772403 818456040 512432856 817178161 181387682 858735843 674961565 939526681 784464073 932534087 905504723 942245933 354822295 526864965 287810299 317317843 727743914 754148968 481153757 857568532 792789163 965593870 843078685 937089645 767088464 861185031 530159839 734648854 940132780 954823436 221677409 705695502 112924794 752785997 657435305 884846568 948223157 998308980 247916224 473160148 953216790 984216305 182384178 661053861 643797752 716985202 570025364 769305902 324196588 553043174 662240741 676927089 273454519 953310353 186041238 797651222 150103863 798427454 671962526 943570693 644829894 698296121 984085453 991830671 27554877 353729814 667394838 861647047 744561368 849027022 881496526 950450704 136245957 767742470 775207979 994133447 302700558 686799044 176294821 329753701 191169760 423123832 585737368 774614546 865170243 988735162 38577010 481505396 683363141 975306760 338611593 371538045 964867488 983054598 738702909 855587378 515727797 700960421 495528659 666335834 204890765 388938272 617192405 939166332 250225326 643026152 466308199 777735226 542284774 757881772 124479384 604103428 256528207 262393234 465605748 571585271 383853558 402472891 921937468 931475514 34376397 75341776 888607026 931713721 263425335 498980236 691889141 735798273 948248041 991486006 618062288 637201618 231700295 820661983 60904188 84084810 41523666 586311516 253984270 712610685 321558755 470582209 287453416 704116277 262538032 479879243 522319048 915604934 865905282 931159260 416363170 618898724 359247868 541519542 377214732 558493733 536013054 580509121 854837508 939434548 100357294 160323595 617277636 746815429 206275026 343329424 567885703 930402079 869431982 982301215 81765120 999993176 444807265 684090340 596207795 937650352 89481991 324750048 415811869 722881792 619755769 740137706 939795027 972027848 397897954 635189905 668940527 788271701 111321536 923801946 853475630 869165034 211483568 751510347 604028389 615097964 835670746 997913509 991979793 998497365 522998707 895357488 633787993 756220636 117995023 926823774 92967046 362292458 962549665 972774069 570394215 749840202 308868597 812501684 505165926 656511007 305025271 691278360 706359680 871458481 133938482 789741954 523637025 960463035 13253984 943330876 41987591 346561578 676021904 712797742 275236316 937597131 491507781 866603449 418693135 434150160 755878145 892507956 926348487 962118892 368429959 735093138 333807564 865988083 724470118 927224198 966019176 989865253 620026571 635054869 39744930 896304899 394981434 578095894 180158878 439713965 254580442 550709357 257378548 899116953 351472188 482985352 504322930 698951056 964094096 973819316 409110773 678428083 662942860 996391692 236104144 582780324 736508327 872926029 115053798 118579787 937621133 950800888 912003154 976872091 455986456 723329620 600386348 681743641 750431603 952414620 470345127 730105418 873204282 924516001 590252175 718792342 924810910 981508476 237692700 967012413 269156416 821743126 444796902 814019521 746376414 946935196 512013990 836459874 572533301 934650230 837952734 948543522 472736637 829297215 412609462 679181566 926408207 988208757 144518659 710208536 572059587 982924097 869829564 956319719 431225367 612041818 968934273 986145707 162340145 265643477 478044500 806366860 907813880 996502793 89477565 801788895 498497626 810553383 301510996 870824921 102752702 113139073 152982456 909674729 556559838 981747506 196547458 203761432 438625746 660405830 554744522 823271451 707957327 807802235 67597584 934524977 525565400 984313065 9093550 151783002 251274644 484780917 253860058 596947425 712283321 756803962 504750250 529410582 310267525 681175204 897369402 936913237 732020428 992256885 485150627 757516324 590957149 836828994 534954322 905894546 699205501 762524800 372716883 600143164 597864706 814135659 507360432 763177354 308510373 559994942 518542737 862647579 462587138 850930839 634710394 798065762 176022293 365353850 541277906 679260608 287580693 642798194 356935973 746919049 86196057 400202631 302448467 778327165 713040543 859868465 512178288 609126794 916516476 950876987 787445935 822748094 799564852 916044504 429019184 681501989 875668459 917297919 741377637 908093971 762391379 805779202 459347432 970129471 388911015 930678791 42249303 924627662 257764950 749361316 510634565 574547304 907845942 912905685 991786277 997376390 228499698 758194584 276013402 621939082 802319970 987750864 150937247 371987919 329015233 338958780 423965554 809999559 645067114 773057131 745344706 976425858 161073681 638976836 441719441 462485606 360760897 533359586 641113074 722139961 585609391 972549902 21787303 838712564 951351232 965344123 216233517 748273677 655911286 688575590 646209236 774393686 553502517 782027799 424798103 437041055 306994524 379483952 935796359 957117364 96960511 932674721 303941825 327375467 561910901 639654909 745789842 821219143 944190241 964952360 418197712 430591437 562096699 660790721 70503085 249834989 149987970 618441402 938989362 953617759 414894671 762432120 405513939 724691019 130644714 272223583 710892975 841637834 611027544 814231525 298919259 983668571 985596766 988832065 553171998 822221159 547203480 803608725 41613075 526617915 409548065 509967445 429836866 489234788 839326828 856835311 48206500 77521338 888842446 966546252 484348367 578664143 32533883 348035360 100241082 578871106 57556888 643516555 761426357 911288603 226008091 352728627 946940131 989280841 537955662 817919644 72371297 613668909 866249199 979844672 527848350 958437405 808095808 904441603 517513200 573882282 5151024 686069663 608360667 721212596 793233661 932844486 447674422 952095053 498525048 921379833 883911860 898007083 804201259 864964934 875126427 985363373 526616438 856833575 594735825 727153218 191351265 338673416 590586389 990451006 738329523 832878042 168113908 325162424 484545588 851615561 405809001 476019148 203835455 753639616 998506314 998951031 1145587 765402384 133040274 228094186 51764030 369125730 461768253 507036332 261866018 687667210 286335888 542653027 309759221 376761940 536917199 636790026 778238474 999011197 725612725 947658454 949570401 981269905 905767775 997485821 345017468 746630171 92665626 452709408 91907165 432319710 749100580 917272662 55676216 242399052 549303365 818302289 42339920 851867640 757104491 946972971 457737654 512036525 439514965 850560695 291126588 869487439 435272798 605376182 689420672 968185107 418890986 724127277 934442187 942953662 761175461 814182935 219057354 800295855 86715685 410271477 218421219 733155983 298705068 500033797 421941664 468981950 546912024 736634293 267484463 415205021 393604204 608667237 166564356 776816955 832107943 921440118 398845312 653341908 805699586 867032907 837943750 932610481 739282249 900938672 493702557 539357069 742104252 773846392 791729585 874875142 769178314 783194421 958976938 974574951 389178727 680804837 646964374 737826645 728365176 909262383 655820904 759545566 131310618 573205690 109682357 793427247 203569453 206114021 184339927 378471480 281144834 369014850 371991315 450909772 190798591 397426111 523497229 878227430 636771983 872779128 31700326 592602478 838992351 882180141 280114184 841713338 562609019 659073091 308072065 640312255 467394155 564986025 842240370 881982989 571233574 596378489 177805970 342906349 995191642 997602207 479602519 975300314 707132245 887632966 870431561 956379416 299392236 442839937 722146984 959232051 135031178 180115897 330307704 342739426 787371357 939672515 579595190 980955204 656414931 924386420 394755103 422722742 939369301 945896820 51417775 985934854 925972867 998566178 893900950 970087149 730116421 975160541 397619564 668976034 437380520 717716778 495873909 711389359 819319173 854447383 265835901 757138994 614235763 844893807 422281587 526333234 396308143 482957207 412281617 523963568 649760891 980925469 125781887 903062848 254980874 761845309 812687267 885502399 776102039 922837199 584285814 815071822 465829195 933196509 763344737 991529955 858119934 946020828 190649970 976194283 453517124 702100148 31930248 493277077 662377304 973667184 685101929 786921553 625973633 912605710 379061242 954476662 673136606 753759193 81055843 494175026 366381064 763323551 424310969 901351126 157662676 666738092 665941240 845104487 409970449 455655142 320650083 531262692 900417174 923909609 329832539 440677338 278986547 591230863 36200529 837799594 179187397 860471417 92963001 155180800 174282837 822515396 102751477 910539664 117619085 556914078 987390158 997097229 141784970 920267114 285445756 697649917 157133542 222676074 73737186 139287817 728830220 899190952 294715305 564846175 873196577 976513468 390914414 860634409 251964528 413607652 558443741 863621290 255430744 515772149 858984407 971398517 160025672 936551903 716466476 772110944 433683020 627113592 837858605 980568737 140641437 468442932 232578151 269252696 488955037 684956176 567061255 631845481 555902210 689515243 832525642 950230494 236089471 620144100 7927844 665258526 807090430 994371983 309964856 632464399 34122697 986224895 215767526 285862862 67831628 737426422 280615634 544159442 616940939 827245019 849947379 909191068 134358594 736067501 813686634 840424637 477409192 660326463 474288679 548166884 53739275 608438342 110466849 875720397 821956196 980962553 771252989 880998467 449986919 952425801 298685160 873436526 146220461 848504094 50781436 641872963 866971143 882274934 306337546 795471930 503455962 811733079 803350412 910950939 523029779 608819153 91062255 288531471 386559463 625087935 58753556 673174277 411997442 927091747 109605966 170208242 886476377 899211698 482286507 744792851 506959321 582233570 568888999 866756392 185803055 947491592 198981050 560784396 313883753 740730908 835276522 889983647 720681215 797412868 983564469 993936354 695557294 875595063 455842325 798034066 686489991 902704792 394488916 833585237 875928831 942606349 442823538 905958868 468410020 869858953 668972682 922000599 688788816 831693077 49424658 449121161 179823228 719159592 795159217 869490726 273041782 524432023 889364424 904893478 544286304 592285380 422002751 585039240 698428018 770509334 458483072 861200930 71818470 682295767 453726534 658686432 834338644 925607772 221264590 252683649 228169583 910194880 276224885 364081410 306045528 828637969 168735150 504853795 88867590 538911409 791806846 997521143 853717254 980689412 157317997 377348421 618497314 707155451 831717499 969587088 573444459 739837735 790912409 794848102 977503688 993735939 123411847 579021213 799140508 918547230 537791412 720088364 462373605 788079391 656378872 768865891 345469767 925573530 700033718 862324717 622121354 950812478 856735083 993314432 373547520 569802665 773824288 964488190 639384736 993540906 297866198 801822260 498967302 890179310 381674349 490719510 106634840 192936214 124683545 708607905 321243393 746281997 600636501 783510916 452483926 963846473 641124206 825524874 95528462 994852451 266831475 591511526 834937183 969615048 683594848 772960279 882415069 931967983 419752271 513937386 817702613 856973103 249418068 537702594 443666694 463929019 271574650 326519794 892923506 978396532 586308316 773329797 963867580 974157738 809736463 816997388 454033359 866228493 870351819 905648154 918651812 997799324 507258742 662780942 221862981 598016950 914627390 991291495 131848010 578104411 453713951 484038861 537311697 559639737 697533841 839355708 487746857 659206182 663319792 819111326 589469724 896993908 858505410 912559862 92023411 380510634 283900823 778715648 305043041 429223593 7991343 566599484 436268081 921343293 658492117 997164235 52111763 373091875 711415284 913246129 155050862 635625706 592984262 683991251 606556941 851267617 601962545 950897714 767846958 946945305 926024067 948628896 54086873 437444219 447606348 899158830 609633041 839108186 373125488 439534084 99687567 283650428 824285039 848068655 942056306 978735129 233278289 399497795 652687126 859589955 429374827 616384144 549903473 796679627 91060594 717531977 493216917 589192390 986697913 996393781 959514124 997215409 727091071 860113175 791660458 918717921 234910503 295008671 887660507 935751211 175641062 689336899 210385010 884492644 119093303 503917161 671105165 796169131 963240678 969704335 622791659 717482566 710760352 856383335 636986391 897449168 242881684 474745038 930599263 980736526 322397368 926034896 637973740 878992177 422969475 775311812 369357840 969976380 669617778 984988054 817742114 886793616 736268416 985405125 552200020 908820680 741181339 753456442 824475600 897681728 919324184 974384813 53479665 779042466 692956388 755365389 894786739 900397160 87613806 485045364 778383032 879046692 99064785 917912646 979413426 988053739 947473851 968159581 574913240 762811729 609889250 695242208 430375893 751826149 452945127 773776803 165464708 591403279 531476827 840519578 623517973 849142657 682255490 759561504 392485147 577702049 347336498 632157934 98970021 896917701 470056966 669600234 683871144 956270523 458472657 681887140 734018060 813846413 295064083 408551043 974022308 990122908 393347160 642689957 813258849 849051123 388918552 639615205 246041052 602922633 395310031 679172983 221360242 788317588 660613701 871424558 487241981 609015007 79114193 735284538 189139969 318057118 775828669 996562598 547344451 844764730 608698978 735251283 516355688 575537089 612361188 671830888 533035189 692026319 965085808 972216203 684412547 807393761 504637380 927004595 632813308 714248603 712534325 876469042 262979649 628710250 940504171 986536186 782600548 880698277 128286647 621928131 676569516 927821337 279047127 319170461 486566835 627834208 115007156 350877043 476516378 943645172 69343393 652167254 297739051 305116115 862957923 937204545 884909699 913239536 493385875 962909321 947965375 986333566 725161392 928130387 411131239 585901793 537982503 564360000 134135314 833277028 983419194 996213103 38380741 512750016 853959977 864338225 383219320 690480745 963023575 978452267 236969474 522023254 335365082 577923834 316844088 608378544 906194389 907061584 503539129 529237457 497080733 626521978 477126925 715731802 40889796 512894942 157499912 992800452 957822501 980290599 392614485 811720404 907645502 992995383 302355452 732633219 447454268 591351606 524826907 545205245 798135589 954148149 697126977 963986414 557782253 592743251 913395975 943160955 236728954 553142070 356002022 965434255 391181397 768382953 147583096 470359846 352122823 608378134 497647796 526632409 163252686 781038360 638020151 798001047 69410828 425219131 896449897 909183942 212838389 507949544 512445604 563246491 136345049 146249150 191972236 492303859 468450117 978476287 642898698 813756350 776215746 872766319 597464841 903856046 657083317 935972915 436791927 577122473 927258789 973737533 303706896 677865893 93672793 180371041 32569103 867800473 314792995 577833228 75309244 228665661 527648133 783227948 709492115 850001507 473634007 733196603 318398446 711923773 711206037 894612532 616011324 828264215 400518125 669526804 546449335 550605780 832337109 849997051 665463163 941313390 154395110 298119481 618827646 768863024 989850974 997284690 678590370 889597263 244169379 826529910 769174093 783484059 351969002 527984963 753772108 868529891 709334650 964590537 533041928 756978653 156014803 436662463 283056025 504508797 514276013 537340099 216562335 263003653 978372779 994707960 7152959 753912279 190394877 642094893 60941731 491461583 131103314 719265305 155926535 392577318 39649972 426115561 292193233 996256401 181260465 293171363 683730203 883960045 195447817 624028664 114355989 933395274 47782362 529761911 568721401 831634966 849491412 929483944 134838184 386644937 154595366 377864858 358178822 390171388 487855956 641989032 59449273 606343760 797813051 885399169 841811997 922395363 405073496 479344578 518273466 717921948 39552900 971465487 498239614 672356546 871220843 881240992 149474829 235595766 453854774 490737432 733817532 945900072 772956310 805583637 476959374 844895227 719634722 788475205 574521540 980811872 338518250 678631931 505155454 885052691 314612062 766521498 981125386 982460632 944673772 968828306 803570478 996523897 936081165 978615427 181900435 285268135 286946059 341194309 195447161 498868241 718207782 930994378 522314412 882187930 172390500 966725077 277700632 421321023 951724855 953885576 576104136 607436544 636313814 752707764 577813530 615059420 693855939 968854310 668169032 901910766 412485394 990126280 985204697 989400746 852666502 879818902 778714388 865730757 474785184 662552155 735954051 896146569 592098259 905849177 444228118 633625123 288873410 521233165 642858837 809862660 458037551 594206908 563111255 678932451 658012277 848605487 422635013 808170294 963452056 968687381 948687389 976430913 343044569 376043322 150362987 763897542 920924259 944573284 345983650 421522506 747316528 933049694 17724704 758811348 127552501 207160090 754600122 878085590 8912936 522662047 490874750 856981056 680973905 713263383 647949199 715498471 309838887 840044816 135161882 562219221 890569202 900572028 801105165 810338747 284004748 340998854 791288283 833164169 397155397 722452627 961721257 997872109 957593018 997135242 587768818 640851043 398910663 743276942 90507770 145247491 972830796 984060794 275632238 625556048 550313235 885968380 600714890 918248015 848788939 938795015 767364859 939574301 233527606 834793563 570927620 931170131 498162186 893029876 507601179 614396347 546527957 623557925 979912900 994561519 702904958 818816934 913248978 936560052 668697545 826395161 804038456 982683492 252963478 401768362 630659515 740587177 496045055 981407740 984654299 994785949 395480487 478352988 282792564 356453511 222486256 280385609 133943218 383709909 589398494 936453029 945918257 961317323 58451094 809391161 231484539 732372548 672363815 675349973 192731522 261894766 799310215 847989863 728510142 975602316 266310608 876591219 910626706 952287522 173462599 909720552 150486023 807646646 163938739 827299564 609262120 758967758 886292174 924012809 201707601 555995288 246163445 716647639 202704069 959599551 549726727 747915738 352061012 479269441 4828930 746674766 163131626 326365898 985615668 987938362 71834784 771983408 178408819 864526811 455313888 798762465 313718488 706381234 416904118 933546119 578194080 719697155 907115117 927712446 994291692 994928615 558089238 796919401 31085241 619069801 773312710 788557068 86546016 138537488 689897406 706823806 622261100 850602203 412365669 863577087 595475367 839421323 845066377 912612875 136976012 915197963 130236796 832694163 982135971 985436105 900873826 946482174 220862079 508559437 596187928 722937724 158552700 838072204 790919171 850397059 168362101 377977781 191375329 329512504 132689554 815065174 543942453 624109304 885029438 987367912 961983715 986178227 959280065 989083935 311656991 700767492 790434627 935320897 577065289 977845777 822725036 857083065 439413937 872142191 289812572 340957409 193754011 714155493 765184972 776687671 220168785 534970952 730508893 845402640 701783517 904617711 827410246 927140482 247646211 435752063 636558548 718569523 562912626 755762293 336774644 547186716 697659646 931763294 967844838 973299358 901264173 902848569 570576675 988633380 962395120 984808902 716289877 943269777 222396430 587308610 731027294 792503923 402639130 596920424 986688685 994050488 716983171 948969774 511143830 840718423 154012038 498333539 342252949 685824950 638767898 665039340 332887278 547559711 531080853 555058435 626368080 952880968 558859242 859304444 260751244 829482137 119025218 457986036 146646853 198368185 986438026 997527397 73149663 353648614 154804738 198318597 874594872 902670678 508615234 676543874 485174808 635060942 552970031 922820144 774297245 896324200 904534603 990912562 101738913 532868897 178053829 675141197 212191275 781545196 498944956 677842975 417014511 613799779 641691950 735850924 982996169 991534299 90091505 314939329 828302653 962919375 163591428 274802172 328735250 339926245 631360471 670034936 379274492 663696234 974411131 976956725 13856746 267103371 237376873 822007766 171164840 882166742 650311723 704972257 295880401 786443504 695270767 757198579 530794222 580271146 92716933 378499214 321947383 647005689 778579655 904537113 644226119 670262497 581286071 700388562 381192263 921648910 925367971 944395363 674861399 895429254 300601631 465294547 883338759 933243193 187251010 693556528 253734771 564671445 934676215 986983936 913768166 914001897 349410317 854448887 179591754 320054368 185760946 545433326 534893404 858971083 847649680 942008056 399017927 709515617 143956732 907779784 43231761 137896808 559189138 775220662 678160056 972741975 242908691 737239727 544334876 593814546 905485478 949243989 65752154 186613849 323556797 829057539 514015611 726363264 391109496 596679003 158941839 433823748 870191230 908457396 19509741 981989107 400130159 501989929 912979724 956549324 290310043 301078047 119202802 442655988 765215901 858189866 968882391 986938397 201110966 722441649 684695650 968102960 269894942 628888834 270047772 375961140 970713947 973546573 692936065 944078370 325155835 660357799 206959547 462456787 279127300 310381411 667545869 681121518 516235853 599830671 523012600 958416710 420194846 583251106 106499039 252774781 672406177 721952557 193095166 995696482 270315975 787878406 607677326 816540449 203271158 508987684 701565434 961397858 267771132 303391049 483862993 979678853 984862251 993601458 137475922 447511091 456740124 515033761 224618966 805582646 674311829 882031996 556470254 566441992 762039894 839438115 71630669 439899081 433699044 483864269 78145962 872693395 161618573 565333252 250350992 890437763 936282021 948954731 570852224 586475521 385609741 420778049 182167595 241114643 495303090 884957040 192126935 232202962 577596028 797166908 675517663 681104243 595419129 798973749 169211868 353367314 646910920 657385814 543192732 677945051 718926071 722481999 998967745 999413495 750311330 791676395 165177599 602491254 881753725 917612286 933620148 974991578 721879060 954226709 296732017 995997607 49913641 897950100 406406515 848825128 705403952 802447461 615794070 731240477 648644939 785692627 353612700 463707750 662395815 793616510 334752958 463678192 331267322 912822665 364271425 573896365 863982122 874153232 428945148 977133985 485364936 852592807 47171887 865021133 186839720 983523291 534989078 722785065 410779539 997638482 558273237 956296049 903186439 980357847 481981725 894162517 811125262 964240117 114954777 361969965 388849111 739839778 610669056 912705969 692661269 838422048 240231258 702986952 986795470 992724891 814282869 846293960 644381203 983658124 193230412 205700248 930447502 934401101 49505332 857922889 492196625 508500241 591604252 942091342 606020623 985392322 896668051 900333624 475789461 900402888 119063962 630534750 421750649 977077081 529040106 633505396 132482652 144814110 23028964 882504543 84952365 257027607 445662821 674024238 837082312 954405352 314607758 481759273 628829451 818003116 387436913 415283788 535995088 593681214 40168714 111996240 148102873 427080526 659366107 969712067 749943773 992185089 136189865 452414187 379775103 438421562 478482448 982915007 525982000 847618815 292994859 561901558 737225688 910094338 976914548 988890476 934955750 974934952 672672261 912970334 165248405 501279867 347133212 567080991 973178043 982639291 541904716 801429414 751941894 977843781 914698395 983618268 519937305 716824965 441272125 490535547 715226316 971801655 514881931 759162118 66801666 590608366 393612612 589471501 496450485 787822491 874152964 969034723 560067579 629821409 541788042 973379194 353754494 938481449 961590905 979191992 841298752 977766234 295762607 970414560 404366868 475931505 65045881 793702752 572202782 855424421 265739218 898689917 427195097 684915927 924632586 947162279 58983994 321264821 739417035 969868883 823688389 884657651 588822294 684207459 64055846 516085040 674639897 949817342 60606676 640740093 191411058 907037467 812879371 975243840 41642744 81567674 181204984 975538241 601748317 748549598 249266795 467231041 64981970 420970700 229572226 621616371 125050983 276424148 826621508 942728506 64632599 236126461 187902215 517723982 290168943 555077780 586696055 786775323 892368139 998704222 17585341 780683487 272622643 894804311 479058253 732148722 255408132 891805537 141082273 562445299 289298670 453348149 540447823 803821600 907451422 975173651 606224845 731621676 476608032 715028624 783528485 945167635 180173863 183314499 940224213 978687882 845241247 986049015 619001526 809618003 291869507 791875739 86906889 838575561 490047530 994620380 281315579 534315685 199712134 421564171 652524071 671676827 73327860 536425645 661626222 678890606 74951203 630778901 259143730 940244853 234833606 263687670 761598175 960527358 872601118 971295851 132178198 602578002 481289370 956459456 471629119 964259037 61397127 628658627 254264596 674988067 544168584 996053681 391117218 775366500 447208151 453159539 645231463 864425894 407105681 557754867 396767059 885458951 353244430 737938116 645632868 953526949 852557062 873430691 848411798 897822639 56310126 162345735 272188628 749915154 374966758 596280337 340704348 710002417 504716055 863721838 922659522 988996789 82276239 427428268 859342056 865950733 551204903 579601101 88775887 718279295 473841855 994006739 667019284 777350051 59953282 758520924 24353979 740171298 908494654 964705636 515444554 531589284 412296258 556349213 430085587 863195206 38707073 828408725 277699742 997695245 907990634 984609640 929598923 934967430 709369778 932658406 903265236 996927267 786454364 960821532 930210750 938730846 345137387 359915763 975406971 976648216 824266506 947632465 241371944 758209291 88312494 625882140 43898257 776073938 41395032 594863489 547581195 674084678 519953637 837650272 62465714 858974224 770851322 985061798 884653897 996176242 178782145 546580511 148868590 569207640 142863242 728418036 511191113 582794804 931934324 976124129 762413895 891775356 948310018 975389266 269267228 825728122 969922448 982831250 921832571 978081784 395714834 907846580 417991247 726930773 771017749 898389283 765224590 848672882 606259788 706339723 225592794 382684097 137684871 220752541 360438091 817576916 941445668 941963173 57110900 148090584 222539112 256578049 532501598 590222990 816011840 964819526 525014836 564088095 873698457 975598208 26370326 878403974 539456464 657627606 61473168 732535436 499818932 902403558 759904482 769725087 79951932 626673764 280915906 645577644 628225125 933541919 276587582 384257592 169708988 935846812 794920888 797336504 565446889 568377343 627092144 754726128 832229610 949292170 215013440 464336995 335097290 988468466 838442399 850133078 896188081 958410585 299379008 348827957 471914111 931819809 574972578 962972887 74338404 227803065 265145505 266371733 461845320 986884237 394808614 630634850 556668248 615288259 149014318 816793562 875103097 961343803 38070907 226663865 211937361 363215924 128819084 646140139 838127356 922191818 588125640 979254198 717984258 832433726 884752103 890570362 640259981 678575715 301506107 489803456 397926490 922563180 307764903 992420815 823004134 867654409 98395541 615496878 595277719 974021741 826185920 956239189 170091874 473931629 434573480 627078938 140606359 618040090 38931798 151235848 356025716 722276778 903928785 937546208 821177119 991130266 407387948 990886126 137925503 467573693 780039019 991213050 82481427 802762218 460066917 719830137 324900762 799698469 393225948 602446313 756954104 785210283 944236465 959159702 151056216 192226911 549613059 695115065 933684818 984625713 960121111 995892794 999956571 999983986 518037592 587551504 931366803 939679563 319612907 530567168 820352046 887054039 26982186 705391479 169764312 931169648 931552448 968671611 12077413 514299375 39634764 973832313 784414651 826628823 243798575 549344219 841305659 991504204 531439549 896113737 997870504 998124520 693226019 759666709 888600193 894325578 149980962 314864570 411454555 783480287 26798250 135455926 462183486 847134877 22545918 691514855 598018346 993642000 472224682 805004937 71003830 237780526 366896206 691588427 460408506 558607203 589749567 826073999 672974501 761701017 254463480 472837395 659444998 671290514 721321067 763115876 272368353 282667634 947402816 957431455 212326664 271223072 145240871 434454326 649753732 863739715 939541342 989858082 834516053 911648181 467055892 856259409 103618509 408809696 672891090 894069131 66803578 586930395 509805814 905067033 294563886 777550464 74666611 675150101 115679809 227713731 492523334 942232611 461313129 719429609 891411371 953661678 510762189 768918664 287484661 573670559 100092580 682018173 635516613 744512842 568293517 916614391 942455295 951669749 931265417 993844337 545784959 990068878 60033111 485276666 688933290 823285483 282291319 312625443 580400901 981659758 691632213 832112551 678087266 812484148 367285396 753487382 917171483 933900196 270023461 766327792 920698458 933215554 802773572 962057691 348981555 824318339 360302894 627140822 52851808 791377285 559787452 566065646 825953038 826053847 278645632 425117631 494350201 668182456 613544973 754514577 884229438 996345864 855068022 949420059 705574097 760396199 393072514 436990656 744434643 833401399 230986041 854211261 649355114 748595613 149663489 804412852 154487229 757168631 79924796 212255391 108643504 449746261 445257023 625511706 502381283 746780655 742494191 820631497 940789328 985746006 918018520 966172120 827224684 835722653 260956295 865940078 738678100 785849280 381371 721731795 526912080 871415528 324470738 741279221 192949588 829586520 116110836 223436315 56482260 119845547 145664883 829943940 142862146 633407278 177280749 247629585 291597478 529960956 690158397 886114450 261987213 522511831 517671148 851013074 162292261 864143799 997598500 999040865 336652446 659578894 139009859 925527982 772208252 816988171 395544690 869293101 198238790 546229356 653386008 930637842 737293123 962310704 927046051 963664589 528611283 878553087 248389628 458267823 576105867 590892003 511165051 571160755 315143254 918312054 963832060 969020778 368237119 751891990 294341583 904725951 699888539 977953765 953986142 989526812 417307010 935399606 33999640 486024747 917473071 942301141 413583612 458329849 770626906 791557211 639357200 673787125 924023668 972010022 680744679 917560110 678585532 711356830 821501412 874713293 158581907 638094017 290744091 819563548 129084023 660656319 128026246 878758902 828044605 906345639 175300339 910732024 861787185 989117474 602934386 766111273 338454 199471080 902599661 927308927 447690451 513518966 133548848 915076340 44151884 905211449 828438947 955052599 965838255 976103905 348941453 409858939 158248153 453485921 714885280 909029246 716146720 859518515 846588194 872848012 346474588 958117128 178475619 874400815 107730155 925644976 734522959 980654262 823219586 955494085 150639083 962716809 574277451 712328957 71338100 195368463 620321605 735938316 544137317 587513670 109239825 924052410 630723584 923522733 487608147 842873377 495500279 921065839 21483059 907397864 273562512 623514361 105647964 579712949 856565725 949118196 192368476 615214127 789421276 895913147 60069730 302612701 832501363 906844679 674469792 923856907 159265571 499499553 390974826 755381271 548871843 862498124 693476282 795995867 687945241 799446754 623274649 874217707 675108178 847715407 859418097 919440513 947690547 956169362 466075874 513201976 387161171 788500214 335953928 789776256 132896216 284653288 938262483 951746220 220573951 251265561 802179410 825618472 934525464 939320176 927252180 999308587 561411623 570219437 69809429 775024139 23935260 70588345 332758356 466000037 765605385 871167918 89446497 603804207 382656984 901400773 571390800 767964191 936978222 957548626 956011904 968686282 301291553 345120583 155596968 208046805 280670854 611339488 728136069 957600683 242365835 493638421 256724708 491263962 875818610 973752441 300021023 408780719 875092456 882892693 346413523 960230437 513180920 565790330 576377248 709690331 607795261 992455483 264337175 854049627 453334115 725675449 155934677 906493162 330676170 908790990 994985645 996800291 387237539 408281797 929921974 964811179 342450595 955249393 188833701 281076447 712871949 718453069 996258265 999337583 636020772 910151190 13915246 233346025 746669063 869937813 478689950 487901982 491177841 734872340 742235675 878071436 683560650 760047977 11170515 166041443 29025215 75659338 843793194 906640176 314366564 984532289 917030013 985841525 479377135 937104475 651740161 887721414 507749903 822123526 662058851 974557790 695613833 927534277 988539404 996513233 646901349 652129652 857374035 945946719 507680550 661986634 713029941 816333105 856102576 979390793 997746548 999603047 906170779 909941996 840895029 904141737 640467528 901670777 961307514 988223521 980054623 981854098 132425190 751181788 483693849 494384054 352588664 669827879 291820009 552677852 78611324 86206854 145958428 566187734 173229208 560763307 655558710 802860526 810785432 955158023 12010198 832463921 520938613 908324042 897715379 915077310 22850010 813597569 982679815 993031898 152881578 734792567 359651989 833514572 978362563 991434686 976342557 986681821 33573868 891739051 796672014 898750027 499110594 683541637 59166701 530195504 358426280 653720882 130843826 231316590 117259346 540426890 492706633 762988335 202972989 500731268 580543007 816215086 862610489 943248670 580825086 588212177 221927091 501133387 605576968 993867337 891746773 925994336 315003787 609864180 281143550 944619064 374080648 566083660 75360698 395441283 364320013 688047119 16953242 432591279 998891756 999474930 534575884 772594414 77210475 761341681 931463205 954906960 103469141 857925391 47192308 455987091 877433 644740105 977000531 978689413 93088450 411470809 843301913 911532946 658705027 768776983 999411770 999771940 885247280 923556947 601396144 954260734 857256484 942511285 261436736 781686214 612984788 626859618 914787585 949478731 245289351 712789488 336453335 772889232 326062855 981616762 560169211 596731613 724345461 875497243 206859766 879923313 9676058 449774600 783705073 784035266 237358269 843610425 563871805 791243102 56175926 57148754 892579652 979056945 725113530 891906630 45582270 210180942 290957915 389401326 526969326 741413317 247868530 802801790 422180576 839361057 867433646 945424474 645654116 965433508 242701577 941256711 146413028 963246256 600493860 612441064 37469547 261139801 554569645 677559340 469261183 638045961 901048164 974440660 377132652 448924881 644109317 966806155 201607212 242391248 473153219 753250489 617381880 621131741 377303242 956133991 804446909 875610651 757561091 906353083 575706028 813646459 973676456 996725712 215022296 455941889 593905816 667633054 117212168 749437883 528796164 570686529 929552694 952141386 945545526 954648690 103430209 660754835 819948798 865148671 375025668 445440389 659874956 944892309 574613895 817668550 366930827 785052755 715645500 943911569 73256537 824226004 806772438 820713391 807149611 991700683 349761480 427842583 289467858 772547293 774899556 886264670 186782449 799014865 152202861 786265911 812254620 895980856 262896666 328285151 817175745 859499839 509815078 952754821 370488404 682676736 98626908 620068070 45796600 674202119 923204068 923300712 32056304 55016058 623161401 820731593 727371696 825977427 768957422 835415635 541013955 846099524 576259249 962895986 462426443 596191108 871571603 926508239 742968611 966715272 611603385 709831741 45568775 815451215 40809358 677268082 447671556 512165358 97825999 958250406 123088954 332187397 776065084 869265480 995021224 999985161 670248372 854556139 611288239 806452636 573097634 863252916 776934103 911909614 907747886 981683784 282111956 449756376 133235405 973819216 802422281 806773140 460060837 986832064 500573684 936498757 98112055 668010159 989249671 997064488 50232718 53321972 914298415 971853296 861307701 885753440 124298432 610536677 840245507 860528056 273577668 581587068 867498421 968168446 345935030 535144595 339301906 374794323 419251583 863983469 133979321 738853018 455603829 797795402 504079107 945123558 4717851 880522272 87556566 628995017 627433153 950251740 921658311 977444400 207719217 954160938 54608553 716303289 495927641 761816408 958537941 982870157 595921129 710486278 261358416 348265575 518980350 926267727 766760985 852075319 892548727 959822112 688889181 952399732 155310736 579993125 325626581 993161392 68600861 547983223 538558424 616363800 507335269 734908693 713001839 776594053 959608165 977694206 834996328 999437963 108048217 672020735 91003894 325346682 109312583 622477039 754757078 970877670 546213470 569257968 832566561 944081520 752533334 920021475 206650321 374449995 395207077 707527830 734909874 910673442 929407300 929917378 2114431 521913372 110211418 551139798 1620937 62259339 905217084 944523336 46005199 203853863 369009610 857959927 503492658 917631215 334901867 783004599 549123996 630726500 965301190 968549357 68518777 349753390 282308133 944076212 103229095 426996241 855450828 942519151 10142688 354057432 638129383 837016962 317702731 512520835 132057535 244552496 782681060 945515329 654477965 925061899 253284871 376686880 821154520 996595711 974929449 976802236 824381423 855791122 578371731 935021576 682394067 877571133 543153074 867181161 777942520 868674125 313689941 401748647 782948673 807998346 270431873 346998844 329343978 329483534 906690120 938618997 574904169 740280961 972696735 975161031 101520241 283581695 996106982 997149135 607440622 721978187 605553341 923204269 408303050 866518911 468785452 532186816 56070569 679731541 980726431 983497755 257077214 316583287 880469970 946352760 366665487 705456535 557337440 996693339 47403423 819639352 689145907 745020345 522449486 822108039 41756123 983556206 617880687 631890123 151389082 192936929 352472642 807878347 520783268 602984455 880732570 890642508 679107440 814448264 790165087 841287486 92858085 355066190 473730229 759562627 230636071 970220010 861873579 900045911 119444746 629399175 247825908 587163509 238362286 803119478 522396444 814014251 735066311 833131683 541589151 770037246 545308017 887570567 854918042 932538480 98501959 488403796 439092741 532285283 352006778 900155548 684304773 929387742 238085300 651719867 406139284 832683631 912893998 960333369 595622804 756061102 71804137 943973776 958561702 968099175 156637208 664050761 675726224 810210475 741898185 827497454 326534354 970208823 131927508 738027018 90377317 385788092 906767011 997157053 413851794 892274729 577992542 978287631 369087089 396899192 334046750 988231724 731160378 865962798 892786114 923863099 693195325 773833130 60952066 836298898 616422732 788102440 276681792 943747702 377971023 585219165 637541642 831689026 843901667 938866668 437637625 480867985 658962652 726704539 776835834 827978060 676184499 938481953 625584876 870001281 158134056 866901573 235796682 480932518 149343391 959841386 742216406 820288226 772548566 997744128 366487690 638058122 801055304 927459747 178503584 840157465 173950643 482684828 356224481 843383527 219827144 969538970 977505851 981591302 222340955 922939714 834644213 901673190 445512304 500415205 127008369 145722095 470461722 921811235 487566970 800409958 46423059 634991608 879784749 973949364 740482762 790347712 255892922 613199306 129413947 262930105 12532646 949480069 466596686 596924075 186899699 952878939 890164066 960789255 841922540 879905333 369466531 459703858 77869375 360072962 769945858 974724674 583457259 814039709 383566598 603275562 80400909 835465342 743229894 890696247 191643968 561107292 448128588 865822751 66738002 816889818 130963264 399084972 235618209 464385557 79276195 615883624 779209530 951144822 995148719 997157783 501966141 567822091 63327018 483728775 971227800 987785792 488563984 823946446 520709970 796114409 777438262 800316893 835616349 906602916 526393462 716151867 116049800 129276275 434125739 934050889 657868437 663929558 804950777 997558947 568825126 592127547 450478724 455171769 134959368 655529580 253652863 951554032 482190578 879645564 552933027 631507425 393995209 951611422 384030707 946710191 214777124 804000270 637594642 982684907 577222530 767651848 350738553 400081999 510768399 730898133 734650450 746429492 984301059 991966195 895291034 961630806 326311760 570278899 974364544 980068457 656457720 719004488 595339954 961618347 795050986 809221901 45692680 943563742 911042322 968816875 155775223 656058587 22498247 503129162 430063124 934477845 236659064 303934246 808407965 875389040 844635870 941645767 105003695 255973009 90805635 362019439 621073810 862161770 94362571 915942140 62879004 993775378 266419039 567143057 654237726 906827597 671182698 758046342 475148672 649187015 743239703 910434777 218619146 239990326 64680643 841908598 759207821 849511973 255162897 515752303 720236772 761327216 899194786 956566939 284011270 546703503 31324278 500142103 379342955 958178725 772663962 969247387 196828527 951395282 854016650 892347831 519506012 915935939 587591832 912976022 797289045 988207477 853985813 933564173 894375255 919494378 62194365 560560526 312219586 951860949 400153513 895279253 412185772 892993405 841995024 947288008 201043473 809319181 400977174 632856786 557128751 977039840 503250544 874251267 642106305 733796867 752330503 888138032 23925086 623404658 306999498 762278860 261170008 454917550 658853858 715708887 970796791 991124136 764880767 941496714 907079483 924929916 343223464 657452425 659969435 667973009 643011169 933274144 156826038 703974785 667223603 949324606 713908965 790486002 197918150 573496923 864078261 887129362 371868856 417371587 952287235 991319122 67283470 497809910 220884576 401580376 910276519 959161682 627092229 916625396 645359383 970380005 440159161 808905281 470921222 626806717 423901134 895975228 5619643 806522471 177502909 902622565 241824629 638702836 186498655 512485140 593911779 825637571 439571367 664133585 98001394 902462630 131840452 786431413 921844496 977440489 22972498 287228382 341914745 522410103 316295148 419464469 674643121 733879095 777457061 859502737 984374389 988514614 890466829 961853279 613335651 851001897 873897457 986025302 200379679 890443163 155573494 450703652 923378605 975339845 33881278 691203771 340968996 857361872 986815764 986978577 480776937 887645056 669564250 729450661 84610026 771592617 401365547 877608788 268060213 723721358 192287019 339329441 194935143 225015005 593495464 709324014 407353007 484921884 441151092 636299727 996038629 996738098 720328582 946488402 676952198 782300383 462257642 782722749 521810531 770422180 206755087 807854076 251757930 465038738 432123001 502316514 929076641 934461443 470695447 861218530 773312242 983815822 200645857 319611480 752858518 923903304 916744517 922834330 428345168 539435355 576484265 705895922 537203866 803493133 248750949 784668929 962312836 966535677 106871955 216493534 297519113 376032323 76731716 229858250 78668789 700322006 397884109 830541453 819065199 886816961 844734024 970523319 565720464 819914891 508121674 547216843 21069515 586567811 842858801 959111206 622474905 808484267 495847630 888598217 384311867 826052479 566770810 664271253 795472723 893563723 746005956 949385702 47729060 905123271 660177533 919622731 354238237 754488847 12029775 792265831 203343722 879481263 94726275 456838473 867481747 916382079 865236931 875479204 671280053 860387850 235122250 404536897 542629390 843357433 214689109 828582346 919386996 936684042 939823747 998318965 534001924 845548428 657069535 904356428 412008718 730408630 513627746 761623501 265982015 577532839 589902495 845048517 305324367 627100181 664157938 848079701 96667762 293347935 153153989 844189959 349466963 915581562 712815504 793243321 754216077 971588818 881025806 935701997 630568749 676085524 213178258 474861256 760214561 921072968 833495401 978328215 534392963 922900937 264541834 388186071 100520199 535316517 3273566 22181182 78428061 655571965 789331020 998148573 565188498 821933934 212714575 799439051 528248876 809802306 206516844 275144389 121598499 977059478 108082182 648524966 943666287 999314486 594541122 955346219 395190816 999326726 207776285 458546659 685246895 702421415 626278373 917243291 17171972 872500141 857709180 977396680 627384466 826060661 609924897 796263097 606208625 765887198 281165769 407280447 970451362 972532423 945946172 963660670 320558075 760559522 376669503 609396571 5884485 8213972 399515863 598227173 873247181 909472748 390030573 636732774 288121774 646954578 850403524 953131270 206516228 618408132 269529927 703264300 644929304 733354426 91114239 93881527 715124765 716638501 557088376 976987265 135664977 589071921 233772811 501298099 280275273 440400086 542392426 547483964 45828835 732374612 50983669 652580870 399793250 533153759 11150439 837384291 216965306 518716913 374992215 561818456 427838458 651900231 909251681 931641131 331043351 660788218 123959056 804778945 961303183 972274451 134226302 292830688 833636490 907730616 883756637 962669653 265100466 849416128 677935972 876869214 128180491 338832727 560931932 940999713 357651079 774147049 950926301 985968837 522073194 776561166 971592763 998641416 147601397 829896345 599712880 651246567 505516689 811613475 831950653 967542953 393724848 443005158 200732363 947190798 228853461 808897989 869019722 950687898 868198304 945774864 820748593 871668696 961639379 964097681 187370069 499262774 858503901 863535963 769394182 994641346 570714434 648275921 511783755 875779788 185095400 400276689 451471309 846302021 641647083 721836363 897288208 908531781 755445846 889732215 930266543 980967043 839938448 928082808 729036025 987847702 156102759 450538119 338590411 375001913 834903595 899732265 701684465 815109244 348463522 953479989 805631614 970255098 61577583 398455419 118044771 254278343 374880209 952487226 227622987 265897320 545626470 907608975 8754948 428455128 182370311 634896290 772603616 947883014 873133937 926086880 769265975 817566713 993914180 997727575 826601948 940241677 209144044 522373939 995341309 999115543 666987780 753301909 804364278 889799680 162541016 861257406 435693512 807127115 618961441 725334881 14342043 258079190 52677315 89255480 652921810 967024121 375836127 949663178 68218005 273047896 144294690 685515731 536866197 624244577 99853072 149925613 332482380 357102737 921435769 964547646 923344223 990314919 619073094 982133315 254593245 302842612 180824041 366989861 364257949 893562676 411052278 610712719 45246122 620065671 364793719 861276133 767351173 794084910 714891408 760809884 628961966 703189977 772570583 897923743 649650730 986040633 639356308 933386959 449494355 700165218 90061492 406531605 390914028 910575001 780305059 930410466 163952986 826055616 712418930 920665166 394053475 937763575 184095846 871293379 222211623 828998896 25148985 822759064 566890807 857335582 32833217 198146856 273927893 760185216 279665719 850328288 63715426 808800783 931099335 974355836 389528878 957958259 789634579 902038451 655513834 929488325 362013556 947441020 715986018 776627731 718266147 729930793 489792917 926620040 619228856 834466836 785293363 956703082 838236694 976918188 744917797 760732488 427053043 724548818 116477349 826723530 536895027 594996222 448893540 865250872 571436847 638606811 944127227 994035638 962181934 962339126 626198818 817268576 744976351 839721554 331046649 766454584 166507353 473329024 37985324 322703197 420887781 995329980 566828183 878575170 898136696 929234093 718290775 721087003 791182853 961202174 509829494 729025815 732672561 886163499 887449463 936389184 744818228 980130183 371373867 877087340 669750074 926169811 747997628 881145331 141989730 790837054 96095085 583158203 289166062 709021600 590827884 878431470 413876375 913145050 706728383 749359050 265705954 811540929 779268234 882387801 926463735 961134985 653035618 751786152 397771741 474148705 538826620 552303726 331646495 738929859 918393684 946800945 945454091 971915863 679368669 920119673 640859147 996085926 298157523 763666929 40130627 145804201 759355279 942211278 561054346 872183559 524407559 925126365 668679845 806606079 369278526 603810693 382914974 933594028 255118916 396917507 623204480 781633461 906416086 968638639 451987077 911211097 122735366 792883403 65899128 583337257 446048977 816124121 154686219 762169220 508825753 751835245 473077403 843028780 463153667 812711870 829867131 850426210 270004440 301714706 10010017 858690818 696999994 992713738 98786389 810058560 40681549 103347287 925853574 999353084 454125261 847593417 961662471 998716156 972732661 982326430 573046494 807371761 282337718 504055262 354737039 980378799 178660680 223485895 698192441 699774485 742636360 802487073 738089759 864551096 154363485 774401124 691285576 780482306 346095237 960004781 317014519 408055803 459723993 484727579 146124099 687813617 799459389 852670854 312620880 863521369 773860784 914210873 55608371 303888455 820304798 930981168 860759242 966741172 550496887 709754766 233613253 692234895 36783138 329090380 692358063 783693819 739303403 857352914 342439226 662389677 274325850 734878234 971702135 986651529 390928409 876440739 134201168 355968256 556457143 588171201 363943894 484080792 684918316 831042494 579549515 735430173 95026118 373316526 146128615 606232806 793873587 885486356 482784240 956347984 667030380 725980236 449559819 906270148 829304799 886398029 35636679 308087817 673419071 928004586 745366706 843177108 175941660 954934503 488204858 793500401 998618414 999342195 742407612 857453136 377984917 503807301 736094986 785480656 480564049 983722206 673252060 733987933 421962889 532530587 411326920 842463653 202916899 293918022 916823817 993024189 632596885 636395188 560857886 668767542 558866282 762845900 673660859 799693299 475008976 686902855 934598954 969840129 600912873 997147047 803128330 942338043 462096878 669358255 899650320 924668785 794298411 870804538 303833749 432333669 658350829 872918361 220125220 313045927 959545520 983638819 800400937 990321695 829944073 893939926 345334288 414592138 973412108 993070867 297043429 683039737 435630053 506060223 430880313 687633907 835696777 856413216 983441898 999106527 128928911 175378560 507583254 785087447 949380500 985159766 588904861 665803440 726637915 874564453 33056350 643511447 195669536 472368650 32015453 204641598 769953940 798357645 386590852 968289659 596419108 942445977 905211961 957044426 282942730 979523208 806628661 876407618 725342195 742080750 42374335 246053406 556248897 716969099 705453586 858102993 128704966 333520136 394304484 458402806 141597308 147975871 438762150 715506377 881961162 992357232 402828471 959603506 469598541 867040783 332719361 632203691 590081959 830661848 224778348 519625078 650374607 738777588 589661143 999293013 738093674 844982452 749091766 910488677 592730692 637741158 296908806 808794841 475448156 580539937 755084800 842982983 987589500 995651587 103069520 121033607 30253152 745669245 697422879 967024542 135345719 595065181 308075105 738063390 472616824 813237729 393200629 621904397 679787026 714721931 851004189 880608677 92535845 851577466 471261127 881686590 100027415 609936138 756975771 918393452 936026994 997252067 208637184 832310918 880330238 895437812 499256389 531942784 907849076 931271995 79435805 707119213 175130786 507130808 655693118 980429530 48747064 781321795 769670548 982846822 856861657 888204894 185518413 650218779 827802408 894385375 625170484 790561875 929206910 973065273 943091008 981166299 748741433 915973353 532711460 943958423 991279185 993713141 795027140 807935105 170669778 523747657 305747520 769291504 748474534 780347226 917464534 965403609 399414541 757824671 392274428 759737653 616632637 922234226 688700705 765103456 760640538 797502302 54851456 763537099 834998104 870630803 499713454 894523697 41474307 951216120 129014112 912656065 104848458 121101381 234982509 515333799 881482032 992853110 989768914 992248176 900209119 942966108 527920565 774591298 974958515 991848681 176148259 932223878 772973480 792021751 486394727 828841553 513207701 967927942 337710175 936206037 429571741 862365357 506126474 632250193 486191736 504191279 348939291 732454546 939572200 946738968 926423212 948199173 375439021 520599301 579190241 652577023 2510965 677690476 873716876 943067153 34161995 806072058 943940972 987886071 487101603 637060715 117808004 455135750 972888630 976104358 22756110 623234390 325837836 959411798 624897077 895224241 657090190 730553478 592051705 945148244 625468915 685958994 403684942 645664821 764091153 773506937 402046988 872037442 782623855 969087454 535833759 870152126 517722345 669585915 96574940 714445886 520412105 701314752 572588410 859748765 499955753 852155608 759529012 950968174 764244258 968666181 244433193 662200200 983963003 998381941 404375753 486541727 87137785 611934277 788630602 888404804 508284056 606861334 191465944 419922119 681822327 703737815 726973161 966874052 905600561 964166439 946994782 952017709 710022908 881083704 428169208 754332393 569692707 765227637 838841725 870082960 201545151 474674808 10267353 285388050 799630478 989919971 485105377 773550337 512065336 873691106 463891680 648548943 203485499 637047109 507264678 542180033 851934449 878653528 896799074 974791982 411535340 715371468 140157388 520360538 792141639 881029962 50459236 502783009 44085814 127988234 653268791 906316011 784666294 901703744 259436394 758934351 222655574 590145859 773007815 882044080 621529003 902976312 428912999 772541777 775432046 893715504 792717082 848788441 977199686 999942045 309343766 626551795 317641359 872949103 967555986 972806295 132638849 146999979 260394205 854978998 156393084 629141307 342335360 363837498 213884260 943435719 166979259 382824427 466639878 611536421 215597291 898584591 777750848 935861619 662454894 869385866 677225650 977512544 766674435 836491295 57360332 78189213 81099169 292173727 749243310 798509433 813756120 891161790 385435364 640575305 172647932 687771437 212366247 477613968 250495632 731980299 298442773 314305226 851857287 957846176 231265950 319737801 915997173 959636868 725094953 786584789 908197356 963485622 962517566 963709481 701836074 935723582 968314107 973276719 333046504 535509664 330060403 689500939 388306651 469458958 552378597 709785294 696577973 925755437 734153638 960723131 218534037 884262677 772200982 821839480 933107444 937425827 913496245 954118524 786245868 915923229 355853250 581087608 144828766 629731816 722501847 794775150 264097516 987677547 275556195 888303485 753631084 818109491 868919969 983038090 761508377 980700062 612706375 790672518 876714656 919194671 1859823 936938926 395826025 717767160 21617824 893893317 850491918 892395981 69408982 596109325 918274842 939640645 673081839 849261381 957324472 967126980 115869294 127048468 72902520 78033328 638307317 863009326 44830441 829888505 382553447 713956341 389319012 691117030 579696332 770425980 892481483 915426524 221061897 673491395 21975820 537945102 890433987 972540331 418021322 641163897 936166215 950910089 190948722 718783582 37806869 588194291 802609222 899877011 478182904 655535986 178631012 901761946 744421657 853331372 817348966 829777846 181234620 988347338 898365639 962955126 370568900 508933772 226701586 573213259 412984100 567815147 531916057 709653754 818740948 910488425 333306437 811806354 309902603 616668214 718888394 865967127 592546293 682946981 262741844 415586640 402853489 436035409 670903215 681992174 409740840 904428038 203077220 365807865 996484050 998348083 29522151 469458336 146166180 593590285 86148470 96425900 267226568 617091590 698467036 754751379 338673881 494237971 90119089 253623192 608912931 615306389 714710126 929122807 86580938 293078071 720266591 838627607 674087644 699335146 79393641 924599327 777904206 786280834 647944854 783586282 988330747 994696259 624461330 877823396 417436620 656169418 848855848 895880293 180579957 456713153 771354259 868083494 977100109 977355827 892827143 893827326 198827273 839045760 414468109 440007624 321537861 986240089 872151967 926430084 11725800 413305887 297442318 963842821 182719088 451008484 335212659 984967428 999637398 999642435 288794114 289047632 13236428 464159933 609998746 768846015 502997754 924729156 473189270 824353042 321669052 982623346 240136310 374641140 659274957 819210620 783653594 958251389 692724450 706592770 785932456 841547166 734676398 764181188 229978967 693439523 967247582 982829253 570452609 980929379 842137439 865938373 302694910 615143420 377642773 442658199 160188155 357466384 123910739 300502220 906510080 920366325 753097059 987892344 389302170 411848543 914463330 932816320 866717997 905247828 112658329 989984525 178721577 746273621 758506454 917928391 290455976 304818431 599399861 982960369 962283132 976901011 675537565 728548452 811010606 863836452 983757259 996346352 622082176 632263830 852995361 925706832 220435950 629404406 291245850 543028777 931892301 989676766 2922567 287274750 829374310 950551859 316917033 415388777 146590968 569036700 805442386 851484255 138612925 822075778 433360739 626965286 661730869 922057375 246219891 846093937 857850567 906006907 623795547 634919112 456301186 921978931 460466460 769946424 879271917 926489526 65400655 301302119 535937479 930279880 966807200 984203320 935423333 980045711 924817270 971395089 487459872 807024237 416615020 696247625 684683741 730045746 331394730 978968743 480127622 510701938 333950682 826938075 683072308 886544346 391335657 476181472 331244092 614421046 321930979 398465804 32748012 433174951 728185966 947045808 12124031 350182017 555843679 611909649 223408501 829523959 267651601 402343451 455504570 484376619 928488866 945009620 196691481 550864943 973403887 985216180 790163281 936283318 57963903 135821696 512038649 982069576 974093627 981939388 519261357 830583990 221925259 918902171 94365219 384049463 28509455 904698003 318434741 975407636 989835207 990886851 346017344 822330835 685041152 802532926 762420722 893683847 505643535 565148139 884680523 908487302 340889520 902011937 206030159 705227064 713282277 921386253 534964185 572590619 989013984 990973020 265867896 770606072 14852816 517846444 433604209 731664991 521137531 974523339 993941410 995735262 760277265 974365249 399091920 757595967 680151986 852616736 872704599 984832572 129823897 218195779 818554627 982184460 486303151 524454969 664494938 893295863 394317624 704587377 619210556 788832430 868148234 986504944 71208700 512029760 814492252 864245341 983364622 998175540 347304327 835435217 259850116 492560493 783893100 815288683 138068876 289584393 765460818 965605428 227776648 282755447 373435624 471998096 839980505 844237083 241147885 266872314 643916494 991943295 967565546 980797196 463008021 704369712 81501652 925560480 366929607 911052862 533120356 969544959 607556177 687579962 953639326 995954166 297578763 667902345 12468563 532117394 882917352 889650551 362206342 964982488 867674546 932919586 228987187 740008235 133539177 959663418 938860488 967870469 15344131 598218623 36990679 345707153 64382749 110860683 564166201 815412981 259071434 878741558 537576106 598983834 913150882 983641467 286262449 326273889 463058778 986330216 202557476 975821238 811248095 932996597 958938622 986410750 548565122 743276243 370644665 908975187 377629266 675623728 155033514 701533080 51810120 932776363 718275580 903308164 639351250 989038226 851973101 936136293 733158739 877956650 732489642 858646729 558142928 926203438 237887873 496685692 154196996 553715396 200773009 731253241 720689207 937768295 338464954 644719759 765306168 825186566 654964459 767205720 872587488 947386361 37544778 490694813 92308429 599245316 873086764 873779806 922293182 937026656 938776581 975847614 79125167 359169228 838809000 943969911 945196444 951400583 27075534 442385547 803360454 841997293 985283586 987676461 401793092 491810911 345524435 739570893 482908054 519873028 709117769 782465964 833426546 876480815 378403423 384763133 498132369 937619722 777201257 964081555 424500155 972626661 707536808 910184155 927463224 974264398 166234300 177047871 470701275 663743855 82347782 242132810 19394214 405802789 662620289 701336804 673527582 915628345 70265131 932381950 541573777 662824229 416767188 744763238 945256914 985493087 910766196 941544088 404444261 945573919 198357518 303294097 288193463 338156706 936956288 971807663 888442430 950067262 284072482 673783033 100320072 491863761 486668922 719864835 188818667 227842749 579260532 897985982 677840587 962143656 616821455 680377962 441128593 491150731 858165030 898437786 435071960 881225847 146974030 460034936 322356228 616648084 248879229 444126109 788739694 815628827 909694407 967439018 184357967 974373598 385261390 569907320 644685676 922825118 660267212 857593353 690375694 749484564 611177711 972596120 560097472 933259822 35854324 296108748 445387101 529966198 827305181 841657091 955915633 983046800 160104192 505678047 646894941 817240801 95034323 899312324 369830415 446155801 25266925 505209416 571349491 827248042 84282384 92418235 719239921 820135913 736841396 850199269 645202359 893393969 737558018 827700217 228578773 769668174 744732849 904318870 718883521 994246412 263298040 551895483 14944716 310847502 373420375 621050873 59409859 759343423 455270800 799319720 316211252 680964082 737135541 860860718 386324753 447736536 145560633 639611263 549594674 862419029 992420356 994173293 740715127 873431608 328607346 568767989 686758219 920608186 388556486 672891179 77955784 984451318 169846320 491489044 312824362 775224919 403522033 786791734 560984229 660917190 118971452 598914759 282815015 371856289 812644755 910166311 527588219 986327451 85623580 443782498 115238374 165609287 925453391 986786185 658178626 848645171 612275239 805084863 290554259 583886426 422407085 907027920 412668376 430061251 254661999 980576991 72025275 846066244 969441361 974542522 871054288 993919238 340435905 555642762 651940142 829244770 312297146 530877451 937444983 993629999 242903530 267574278 313472163 958016935 624063900 883521371 321735897 668532392 771984186 878732985 104796940 762516473 602535969 882863477 354975775 571589474 245822129 964498788 968167347 969748263 989881179 994548510 673738018 741448825 385902248 717527309 334375424 724082769 954145000 993996850 851482724 966541628 796566891 850711313 33431227 630889652 990852533 995301484 347421405 894409234 645438481 845381702 492753037 724525340 520458954 981305241 294900642 952386063 693498908 717875125 870411965 893843112 28458127 416722848 634864087 936490666 921934959 932712361 194614983 536742601 886422809 971851826 854232307 908727056 494360805 906529236 490935025 651398984 945986445 979835308 909730771 962154813 289072846 947897495 410160432 609278994 444337378 882226136 549508626 931833737 597541917 964281179 292388659 545402485 652587637 715488039 544139535 844319478 531936375 859107741 840538694 963701188 683574580 904392830 869914001 931368780 586266261 851079927 202385590 782923400 210495013 439157930 934622471 937529466 365824140 895435301 472972769 664902712 931256888 972829204 72834108 703758709 587084456 664449170 703631415 752884069 224209093 813334397 772960327 775366377 438866323 555766047 434648856 701724434 692287019 734047582 107341610 567673068 909694657 935618630 568786201 678219599 983523841 995836931 440674878 799117347 870130280 911468259 812767679 932816409 891928847 928215968 992219901 997403745 843908483 942515488 2393382 437428895 786558194 910500562 105483966 572148015 890982596 933421171 213023034 996910174 931567525 999747313 398561455 828964871 321487927 644423076 987093657 988807359 850256549 898884096 454375068 727729266 140672781 653037731 4028563 693461325 91764223 355489859 197307416 734503767 778125798 920805996 784051680 919777684 792899692 949554020 696275432 872209872 101825939 347250610 782831824 883086865 601880368 602731090 945918992 978976888 616920988 988080142 416026535 689001365 127398074 211230215 835037123 933308943 777223316 882060182 719705396 887046589 661722065 967584625 390564557 534514915 417346224 821696537 329471243 421774086 608087609 849434056 213758634 780679184 493629373 657382236 523110354 790946566 33438711 342490044 711901911 804311995 329730770 981673988 107518378 518119862 775378203 916138385 662806889 911984673 475037239 772607261 58944422 301475824 86548937 992663249 721273560 980774853 741492249 801341442 821086384 864911415 14810669 308605137 846381387 862006790 409496361 512838378 174906655 372058234 542917444 668487586 927410187 973288090 927912416 945507096 523881796 788862014 742741991 837311385 787454640 833693496 290511684 550634636 475549558 776211808 659041372 937930978 587564124 657155181 858535379 984838660 645498738 753618765 624056714 992122065 495462973 757450316 414016525 485315654 51584985 831787055 371490423 816745835 868890665 885603031 640394292 973357814 207116606 424409089 982558901 987607666 421905212 936742715 757706428 946483454 102266908 552780513 894228771 983308901 956072320 968135489 198435730 370729193 321047592 373139267 856211715 864644762 986144720 990140195 811668301 967765615 263220395 759031570 664845807 729363427 103267995 827241923 126222290 202892341 571170755 827069193 628237625 715096355 55801330 761994112 843946952 938800288 206994817 828916371 482496738 660212658 656513833 743650483 672766566 840622652 292959090 337327163 204979417 307413172 207372724 851405997 804964108 901182586 35885919 778369226 118975499 304741490 769170116 974158190 647778077 761152403 122030897 124067574 474524629 579237867 417021264 531891793 858191197 984728547 316225833 786440946 354579249 599072321 498567432 905623472 187177634 718813095 853061924 905823925 848490055 886794714 891542260 925754671 562295553 978935956 552981326 626987404 461083297 823129626 365717964 830379246 75371466 269204088 907116441 974942219 25583743 683143050 724620172 893280097 871061092 901870603 499710743 908274344 906368851 994896010 980144418 981754137 793121476 986111571 891276424 947844237 997242179 998407559 33663175 242314305 921330381 950788135 429909131 933122440 330158326 718951169 270992085 572345798 799467212 997096035 77144968 597510334 334639234 917541315 161667282 849144210 478382105 766939189 903211738 914124507 208814674 226949852 251712761 314600720 914265027 960503479 458434591 813347469 861060158 895701405 339363346 402418419 140071641 787821735 809077495 853960151 695657431 744933985 591728377 743347583 947388952 957006488 64038152 162356149 899633781 941401664 153394957 842635656 986613559 997387419 363265022 514208109 18599913 390034742 62782484 66339774 144020644 555992821 915738575 916215987 655981517 986993353 609568523 710968394 921376017 951161559 777602006 990856841 669650321 994661764 273197810 339611076 33673589 602264341 550711706 824376467 309225518 509605883 189080136 860201282 84849191 514988714 483091439 852289408 281927779 528413180 269762216 968205682 753282011 871579180 628771983 761952244 827659971 964895153 83723172 285185083 126532574 846109024 823823767 924601468 718935279 736989157 892051885 975509754 524639850 786456489 769568560 952215658 782932612 850016541 65216688 672495634 105799824 558874763 253765848 732272501 91427275 119165462 416149931 836054026 774784678 867694168 614481749 786775029 712315877 930821908 714124285 818439428 348719225 634369520 150106887 695212894 234748104 507298235 868419873 917926620 974533303 995554835 783897704 907852885 690253244 921091265 78129139 93022953 431644643 683333286 967320970 980715095 513634129 564403617 354829796 471053610 361823619 933790117 426630001 470273558 232187396 912070432 530107776 898819651 250747945 688677217 502427099 695808821 529185175 537009296 341316182 763777360 54749595 638083810 252759680 653921079 289951592 549286537 986071516 996061522 825883924 899625315 252781062 726660172 153160922 210846429 861245312 962196405 601323234 691813911 288013331 308760820 500714230 621010989 195880598 627511222 754868969 939094530 652313048 767955925 554698317 664695250 566296754 641087864 706493182 885846856 459653198 829551533 627678300 949445610 683473196 684432416 992804261 997256737 709846250 899912903 503945155 949857372 378259697 920862539 467335299 754171025 90591211 546799224 44101882 418832713 425620409 501197940 660090835 929147044 744364463 776109490 284195136 372495355 326466236 925536256 649195008 684545347 30067433 912665953 984479214 986097517 300215256 733620970 14709638 651799359 489814549 569027890 594541217 668364345 437818651 710994969 812532049 858502010 463397757 693038386 757671449 846233928 69819755 623901283 130343839 438688372 131176315 262427279 618712272 708488159 768648836 959913162 707491377 813555426 170640758 222613363 665318627 811793897 296607548 537728021 740918575 809670028 875688928 975099710 82464319 183421720 976571537 984521759 109009058 800269920 625347574 852968914 866708773 911783769 784040417 849475211 440361094 472391190 963688892 970503276 564502078 905482964 214426285 412851997 774434169 916237373 754498049 939851995 587047848 967724055 24063540 838868291 885150103 913983082 932702668 942580312 835403553 967742035 333995306 671409296 315071432 734731648 682508690 834352306 358001161 358865477 253963729 915560024 323712687 631555335 143217495 894495698 199326942 921428212 244469335 975740433 705902512 856221547 821478418 950864931 271681058 485265528 464301668 879842725 373518681 416845538 278259886 630013452 99904849 963534837 31752516 43651706 783096901 860117553 407813478 578712219 322059838 917689299 458422354 867623652 775826846 851925476 242066734 438770584 254177570 432139534 708646499 709501709 950160485 975076560 839417578 868474937 425892477 589159146 954171429 992228109 148601661 363993235 684875889 720640545 162921598 668487487 367027701 460545884 340958747 713659958 981472338 999092267 873571482 964067732 343008009 838071504 163252660 419692989 589543059 840438466 623773085 631039755 927633308 977801664 556726406 858033454 940364868 965034359 388210795 681089707 853537687 996299304 78448672 785196547 18560076 535890414 855409977 987723368 498074361 743467887 356798833 920422012 839450861 968859190 275844695 434967436 80986751 786184035 293668429 592188742 985395278 994369619 191205175 555266897 213290508 501551145 66464780 721885230 591338396 864603504 831247834 837910305 49945113 831626840 535960410 626120559 681738079 908715094 271881330 819276590 429081739 655103640 491548031 974460112 991816243 995084936 729412375 914540768 618976251 895124386 519106161 650738245 719537008 922356438 846472909 935001926 338508457 939593613 466978953 834439311 714591 129090975 249271794 743649119 611997374 657818701 690544263 932328495 296534166 696075345 282777864 446053724 945108855 995216144 140941456 582190720 224055282 947084726 735209964 909923989 733815475 853676813 674361533 897954436 650230842 867649770 577336451 821733449 665724469 905599935 803869028 976634963 280202306 807756369 225244247 364074630 134477721 856429491 347768214 513071666 227998181 794565892 938311667 973470376 28039030 138406749 653032667 883832046 342687264 364708818 664848851 671070827 568515434 904055460 984339761 994835551 779017669 921363061 667020943 845084097 241140084 599370094 63886832 782521590 521126279 737802653 848643525 957635653 624297660 667012122 992295328 999982256 123765533 592613742 352785828 545827603 939955946 956875101 435894710 584445165 72805745 497162532 720144368 799132804 983616599 984699764 452081269 802380130 250182977 859933130 34100976 715568737 462585722 613088098 873667174 915535552 551452582 901220521 759355283 875809666 8133562 682365402 715070225 902442673 569509144 773845301 226275215 956431196 714881151 864210593 470700163 604708699 370648044 871834696 75592475 231877875 68071221 749793045 934330647 970598252 748133413 836083378 88099338 470190750 156562251 224824888 911595499 962086925 914692589 990193062 410872208 891268524 660330066 765778647 969509433 985952362 666058380 941534457 286019901 505132284 961051841 995198074 119041729 740532618 451127321 626660569 184944463 736054477 523280774 806866532 14497780 635337393 35340432 554741891 939381162 998877064 436158482 715980048 684849929 706073820 280647256 346306252 956636649 964273568 906002154 994571212 772175852 864540375 100399505 264300746 5121658 925746977 612058133 830435914 68139189 757977252 958076229 978531246 515998027 844447738 978938078 992924024 304236130 443543645 431837435 731016688 831834240 984716743 367084313 465409603 915417595 971730301 873252765 979745143 50825492 711848659 584170469 611488700 719858845 868735935 342908214 356027441 243031965 927966683 286443286 473466426 398938187 472555836 736491917 872573160 522555195 632477115 11500141 954445790 531952224 538192216 919337455 982517059 976199253 981727109 60472734 751015112 374564849 953811478 215459584 335246009 943883834 973757680 934248183 991400399 957591104 985927562 155172735 156774995 662676107 848325213 709104030 854121344 628465731 709755920 88836075 500975694 779092607 928467752 652685790 880233350 719206594 744443184 113221927 427506767 891278022 986493031 792243899 985222260 49790686 218602055 794383117 887349464 572657920 859657151 355167583 835412542 421884865 510574027 742537018 849500914 767722007 971385745 805203589 895952104 225204201 802129262 227818957 328662837 448415577 879579501 291694583 412920847 373136888 437435188 93607604 95013670 990521903 997003491 264468403 690342486 615135145 755242805 181764657 753485049 760111567 904226745 740939162 813310077 783391123 939508977 553722209 580173900 691189656 944555484 284392193 809274043 183626221 275473109 558213911 640265302 587101079 971500909 763919654 815543059 99523168 378297297 408169219 940320497 635658101 698609578 445065183 488229674 802047703 989582535 594337062 651925569 954052036 958980131 141892931 519764216 606954508 724342373 263025636 705415980 897296600 948760127 154624180 535318061 108979973 720057542 577012899 815333423 451641363 739628366 299767264 960557857 745184496 817735722 630144273 889296715 717061322 981967066 51406723 665561603 346985423 401746619 823779989 896447845 413310625 518125166 908343928 963580598 774458735 917368893 5378272 758620688 293683311 969824872 983735633 984716143 59919535 851619628 998067014 999251580 594656782 712181389 182563548 675756835 573801103 870674218 616386905 964308359 97701154 435377021 909128544 930016389 358727940 892464586 491264357 959255753 8496017 265929932 63757695 598202793 132706938 147659764 984337352 995751726 263999466 456502264 512767949 976704069 509761902 770154174 547597654 717333693 259946159 381652924 881154269 959795181 958990273 973028587 162986055 186597258 876889440 912977729 476603885 641274582 579396310 730171311 673718135 882311383 608019185 935796864 879740263 983991992 671469315 801426013 661521979 992744775 505309392 968223287 948524190 948618531 912688631 973828432 811594981 914126442 636167634 921208482 858054935 882734406 835540163 954399721 762202206 871523038 167842267 483362997 436047942 501609826 357655662 836043594 867735139 970941374 755333197 774366411 542357774 693224815 11119959 45287956 508108654 729642996 127335154 315441817 111654166 796714873 51369926 318462518 300228839 448284692 816807151 871766798 941778976 978549637 950910477 974459831 581848976 689541722 996882931 997612191 150720883 467485716 448734463 706195689 610089694 954514950 409642349 774877902 585848258 914004799 834671827 980212559 270644444 948211426 389776227 442104962 31193971 48214046 70793244 585221558 843475920 966815855 144214090 660137611 571133379 737435160 216468949 979346290 965693232 981899634 638393865 973725569 489286924 948252595 810040729 989643509 599047194 947078761 706427541 986892371 471219253 777769387 94231912 769114571 873495279 913285193 423474762 835742617 951546734 977028370 900148171 986075570 937010988 975011901 783131079 903470516 698091661 922953506 884119372 954761254 856142398 874485737 416330509 441718789 122213295 874026990 591213241 819238224 502009209 658355094 248584548 704330379 780840017 813244812 87691328 404649547 658495376 777128035 733170542 899675860 750539261 875711289 685011970 770409420 566212985 877972598 829539633 903484202 329720622 667367673 406299105 911945959 875248323 906976715 760211817 980367031 244491789 365756991 382327040 634717386 544926366 885890044 644711892 973879448 729874029 929822377 680639716 801148089 413957173 887927782 304028388 747681535 147818908 227947636 259226325 993866324 728513400 893637594 273702274 448177608 833894344 895797924 245188181 878325229 565566260 675506139 118028413 261125848 325633763 455924428 280270337 964775825 627838867 704061772 678002857 991497677 652233932 760280914 429439120 896620839 519060280 704518863 452532113 535199825 677354324 738446550 392133747 814876470 471458973 963434337 714294473 883091589 547290763 951623122 677335037 719634025 171408727 595090293 117822788 639887197 317977863 934609439 330454413 382512891 505078948 514029262 296757369 938983244 459966194 729881972 765650189 918746075 2945536 143328382 975559135 983775134 134586015 643911802 533381432 634293966 540481372 976785769 704472420 741823653 965134326 985752673 554772667 904007115 227490433 265589572 909300613 922737558 380996636 639480157 415625141 930279654 970646299 991901712 778802695 875569972 229591084 920301778 469228569 551275202 425361994 491374887 988188702 998619182 627834835 924933148 738800777 786003483 980201838 983021076 575049091 742522484 353979693 703562663 360934063 489125064 723505777 857839688 340316019 530715792 184586824 543395407 263401466 709251315 768330265 910950435 346557742 805525577 679185484 707903677 748695428 863000342 150603397 399085697 270623000 337062137 137351377 142414760 420174930 724026221 690843115 788256269 73245457 472315225 922585097 929158821 204676953 527105547 9808276 862708191 214128366 572087623 137444907 237433939 748196992 844595685 343618688 979925249 911603884 952185468 166475975 756974490 769295849 831739417 182166132 867212556 643145980 904993781 674685820 871736691 953440609 959283157 835410277 905082698 62469107 244512733 770887401 778667395 856171689 868565231 609045131 740160020 440884011 914144373 335200418 939505247 628792042 872136215 397722686 752563458 513924436 847079508 614241843 669738016 323841948 530911955 115692943 930255898 19054146 516647604 66373193 391081453 909444834 990173554 632411808 648059383 4820229 527152315 90398530 983478502 504399893 842648275 182790547 909361458 561883231 596126504 202060145 348160795 703392314 885677347 91756502 183852567 196032686 769369625 846311717 911846722 883616202 962819511 86084265 335715890 287773907 851242802 728697078 907694039 832839519 967475053 93929843 103434205 205675059 270649630 93091726 140047152 713195537 760480391 961719323 977390311 98123115 317288606 872724506 969951324 5684362 195466818 801156092 882216064 86774977 670204320 375345377 402834042 870149335 995935829 657662440 907002241 882201931 951747431 575852868 661922253 870322234 938023201 307433199 428825831 290363668 841074082 416803449 450013337 816297854 837020757 998610456 998868351 12201426 714781778 977787255 980323023 83658967 767861118 476089017 681216767 144111832 660534887 881800521 985462569 70183903 604890598 711771087 742605764 742822772 849044976 735934632 751044959 9154668 474713156 854656075 879998636 856083454 912544043 984282685 995375445 850623847 975869300 470532401 479227479 731420404 802860948 455695182 685096612 315769790 858037450 638851371 675265549 439878260 839507534 567201027 668040339 805225205 857891814 8167965 703641119 456954622 575649801 446766687 697629381 112799964 309255467 484260645 575088122 601074985 756774208 822155643 872956274 189747358 751826636 396087124 659148830 186171784 689676382 895776801 985497565 151135531 815065765 495252295 843772335 415622405 936729022 311070411 747211854 378065279 993652218 299772523 419879731 678931207 965299292 386427219 831183539 837172473 885402876 667583035 904608818 228135480 256198841 168628969 298898485 347617623 390275423 280315943 540188864 704348756 722011895 576871846 751866771 451079264 605161143 844704421 960603413 215941951 615165050 254553115 255470097 665377496 833264736 951875159 961783270 343912960 926839575 750082256 871532313 922171789 990777513 455999391 731788057 306628018 901697260 725761334 851055413 993348066 993711413 618409973 624797733 199519577 797533838 132537602 910940396 130461348 383548588 915075902 939390292 198350494 216641632 768733943 920243559 887983342 893922329 12958635 792664121 921043938 949274254 177153035 859942605 569912588 708845482 918933843 969575900 120154831 767842510 122600325 687428995 30869676 453143787 482533674 998574355 652450130 761801678 868464124 980223828 462775160 874405574 635805852 697935276 616521649 682588626 776948222 800498986 88092775 995971824 616052999 995674400 90302630 818910037 696346051 779700741 724622876 772606772 497316630 903152819 646926232 858400203 455229870 970711764 297421590 745404008 13480019 652125868 997110016 999283958 249812888 595955388 378793216 672037584 354530955 486277273 796490795 896461017 392118401 980986250 745406966 899897987 751480698 794744949 164501999 340236295 283881952 672754181 25768078 75793597 625403245 921525258 184640528 866163721 447196865 501621191 207505084 777704484 646851202 823570136 722320259 811014977 700622786 922878735 968717458 970860937 781896478 937747022 389676718 527478862 828144149 961592905 531871432 562729273 7504883 931816570 345655427 643188133 101474343 807156502 943844086 976027346 510278841 613650024 93654612 282154913 343187980 704541780 611012281 678934275 72795040 937012500 630511426 722028882 648925767 957626638 434986524 644603128 6785303 955413271 665689968 774170271 929232900 937568459 529908248 698015617 944201136 972931889 753679124 919480455 587068860 671463773 629436060 709166972 341951715 417318945 203841462 566180620 314412216 568507930 460982839 655794331 30036118 246152020 479528181 519353041 183842257 347409272 719634793 933644553 750564727 816175405 736294939 770204760 431727420 556189190 71016687 616463021 668985480 950833202 22637017 910841367 138071462 780361716 633691823 814291917 410434926 826264451 106893883 968769675 335769129 909088023 906334495 949521741 325229911 657668098 337636995 498904955 128995809 721469842 863292573 921082958 383318224 722553077 475399434 822677615 503175283 945189600 879170430 897388042 654952564 690063399 723249579 877299585 670429935 967260104 738397204 887008957 744949675 978500049 926130028 964410325 725738691 862418532 589447564 594271699 264077168 396567706 231762357 725155256 167074124 599620050 132159260 704986365 229632475 825596897 352949411 456746933 77106510 983648637 755925762 884089697 96754818 127989128 522914761 866282191 49962029 281420969 570213501 601076125 990878631 993239669 823492657 954210134 663928 46056353 314825909 572553500 16447811 375710544 740996790 918217143 34684837 995475102 799443846 855696102 380293799 733679520 535743437 901351146 278959136 850711383 660175309 915744199 451781669 984913341 632069552 989546523 683571072 732606445 453470371 809918946 453642102 560642273 121433936 939498584 340514564 446918002 312354278 924798486 87079950 206415554 959691065 988897413 468796396 758342031 560596506 869008038 950569351 999637906 679480947 908917736 420056599 656612666 639900267 695786919 154002784 593575601 518859537 858950352 736130168 859066772 194456721 444143137 106921975 509443762 989990606 991470288 958119034 974512419 412591287 985776110 55754255 580866341 776761763 987104433 251268329 733734890 409292630 861588235 890017706 897552013 496921976 728823936 607940989 726986360 583779256 878592408 481705351 964739360 19046361 47027332 880462481 889201544 582358865 698210308 755441952 868913111 436855832 658685404 469063409 587970496 202995436 915496902 615320303 925644467 410270787 592439484 535854424 847695106 478383640 493557801 610289206 982932703 338518103 854737534 84600826 999786961 647103628 964868358 161130363 423561635 482280298 779023885 58914265 687288626 974645148 980672045 540161210 652994942 346742033 767507520 432031730 771504416 977750026 995094425 279152145 790148103 443602385 984625192 145508988 165920782 506680458 583944051 46342147 712982902 135429686 440839049 883323847 923160367 101847178 311813672 509672323 919391908 606415158 678474183 831572035 999565468 718152523 923798614 152403162 705811348 667398624 720618650 468712017 775778640 788625874 885469480 211137513 487605314 694339313 716680733 653596054 787532564 93440320 401285519 184448317 967095232 915185323 956627784 236007103 666506665 808081758 902246665 766145719 901399371 685935531 758386118 205252263 402352811 313361570 500257514 695122866 943949028 396792745 847943659 327289973 904232064 684420550 978057394 202666029 995448748 749092276 934440404 825380170 897863262 427016176 586583541 830389767 901373790 767227015 768321283 589643605 664226679 637624100 697990814 796495884 819905062 528363570 559344388 792869520 919685031 184997095 746147642 573624042 966869300 665339238 667881460 112616544 302302741 796545901 970309514 381986951 422422777 193671259 431222658 95040208 488705220 739065367 988467003 148732590 894012140 612457609 740138545 220581888 636359412 454586073 980197829 560700819 899615929 893553399 991205648 643018336 918714370 261728335 388394384 992355214 992941724 66768995 646542690 931100131 960973814 484835370 599373148 537850908 889770444 896075634 961500973 508242185 545054364 490274235 663091292 214666256 546715020 42346191 327363812 791366835 916079670 33069155 366027634 35303262 846651334 112717680 709656993 165756931 423754430 119283852 174552875 567774108 715501256 536825445 818359573 942748645 942820435 487380686 972031817 480906219 875330067 65380573 541441957 980083324 983121746 602467018 659023920 793599737 879855420 784108829 852399580 858892678 987409343 349211609 950690956 531967327 642588168 563617500 564206110 290779211 963227161 869418389 870248841 193561219 811749660 302065069 748234280 987804676 988973773 307204779 884586724 275551672 603918054 361134709 691516921 259082439 521838564 840847009 926669540 217268659 398051316 275270900 322014980 844062109 983560573 667990144 767342279 813982745 867155253 196850847 536703949 388873603 790779311 563914697 810197739 446924324 526334817 742180099 793474609 584887411 946769328 767032667 906773650 180797053 964699526 694179401 869259627 322382643 770098675 113321522 878213459 485144313 886932326 777303817 897545533 755554605 982390644 283965540 616702580 165512241 316033621 826798047 895221263 153996610 280544780 357372956 686979302 23522365 438065119 313479536 893533803 592602445 891023543 352862947 409348355 64575404 913096281 437336254 622647449 254825992 739215761 294455617 323739075 781587547 806313519 486683091 570757919 132544272 208864173 125779083 321806213 387345091 632111358 524317584 750376593 585761647 696582526 453854553 482652949 528683463 851415688 461627255 651363899 696994910 873697048 82480605 883729986 11169760 239381515 983362224 996620233 484675258 918242549 201339140 395651120 512827447 536282585 888295843 988483892 881851236 911295992 159641712 490281549 75722931 300577300 956278253 964676898 741424302 993687200 811232863 971609796 919689828 961616952 926945251 992073321 906904560 949620590 926811737 943835614 49640253 419014696 360934318 772691383 485442549 800377854 563330701 830159937 612102957 770299169 79081557 175895001 919050382 991631175 474158257 832292722 328621186 605769996 164509972 792441200 400181935 906745162 942038800 968777767 511861617 549053027 737411823 742525250 719198163 903837765 397052261 550808475 335826211 658318004 167565765 374898550 806648136 912880787 985200182 998181907 535266855 898759066 864271677 967236545 156939889 589130608 606033181 827731704 813810376 935381828 949133314 958554978 382732934 401408500 600933734 801134976 601515484 667525931 611094779 685332095 283806626 749115629 56775145 280702993 729601993 865731249 139623588 785881075 929650339 935496503 85815161 87698095 495069908 941398395 331661298 516991071 857947142 951519481 2846663 87242725 597722608 617811028 515837097 899661179 405284678 696041580 262026877 780650060 97063153 931642016 472887421 994265730 42403888 244423896 583127863 596825055 699971211 714238964 227944775 426783023 865399859 903104153 546002640 871590348 801706614 892361801 307684068 369855089 935990581 977399323 735046051 826625314 425013687 850846209 101973071 995102627 953055826 976361098 79217081 497029773 802534853 835173816 155375031 240348758 448470246 541887889 823448318 877056738 897868143 910097874 366835994 962023236 407973073 863260445 949653321 980544212 966554665 991271513 801359391 949527052 684945708 856209501 386101399 484462295 898117745 955175504 482527298 856118814 51053617 318534308 985702957 991179187 269625501 334418735 948248353 981209668 963392982 999807632 342477114 964144858 381912387 928691696 371660706 394586812 298023057 388502581 20988635 972449885 985435561 994282010 239053115 748132264 777641101 888796898 595008300 672829269 533189152 541556445 56051967 835323215 255840077 803543947 316867318 866627120 169179782 608875492 434030948 862078412 355843684 659400358 968398984 977092644 655665118 749542850 845511674 848318994 923123441 968697781 224468444 942094239 150859252 932206423 631311491 908770790 744581888 878027352 706324188 870049663 909310443 985926147 842993516 870549444 93919717 587984319 967694271 995535729 155707215 880768361 855549104 952520046 584077729 673515495 827365076 989998254 487501538 923895611 207279147 690992252 207085293 507982223 832997116 979634085 262509422 702904935 987907161 996361110 71210033 806416105 734787599 929759599 196480224 580790799 345316068 555846621 867456353 915978570 966528047 984024599 749216518 761226167 515590799 675719153 320410078 419647362 477813664 662780153 345838565 685039941 196204168 488628193 215563239 990179963 10765005 544745061 790861012 794429959 849542749 953438067 73283570 847034376 222163432 957466930 815634387 950213854 689343425 828680002 965636240 988227538 836509699 981198983 759519849 904690264 983666733 987070524 145153957 706892512 381808192 500002388 945067409 992490739 183997612 215268471 996836924 997754550 673226951 938275848 386747993 839597219 584634503 730502905 549139261 850944681 400554372 974559898 404131135 673955811 33966240 998747371 82730308 290135980 204421258 499229622 364577329 717555253 502950433 761851021 75437178 515899073 402923383 423424278 983919174 984384150 107438399 646441205 211609022 839373391 988787214 997231541 113611272 829989769 988325665 999607835 210685269 459920433 831517737 921514479 719439755 911350561 666324914 902448083 533687092 693738234 73504401 432496816 732402969 925497135 878955674 955292524 923358285 933778462 572532623 717980722 605750193 694686865 677196220 988363918 411122587 956431495 53896972 751082259 766198032 940906284 596479922 996637316 318532833 894918455 899476925 944542258 439356613 782308298 926771299 957547157 609694358 766831711 390848260 625133958 637593540 793639991 419790227 586318826 51016732 426598817 825151803 879664609 189595423 506681661 837348553 917488010 899569788 914625473 8014208 358298170 961983305 972642644 677522491 741161184 579518659 897779969 284388745 591998255 715633536 861521627 730893025 766603303 335388970 450346471 66904505 668710879 523828550 711674308 916839670 999028219 989998315 991392112 294782200 436091923 76691342 124138511 303919904 437507711 685193965 894631421 929985488 954469873 47400923 127619644 287331448 600081383 192047717 798747399 893311366 959100185 63800907 530368422 134604041 894752413 490577075 651383582 798303253 934191782 666456227 971192348 953350171 955297952 206326404 255119179 211884558 618339175 256411314 814732651 686286194 730451310 911305147 976837803 582472097 803659908 616998878 794163806 496306638 558171259 521768873 785254031 333174087 620302737 71446553 375810868 776568602 829714868 809152158 965892237 239271241 880804531 130401622 360337467 499633374 923001127 104095999 264459169 245686544 269235297 345006435 692565138 686120579 966304778 696113071 956905242 675253953 899028203 151475012 936166875 889645740 953189799 839145045 905526609 791194350 926661669 867994386 968885069 682554366 884059324 145354914 838294006 188017995 642883835 53036262 349769840 73335597 338776963 602834135 830945293 113132159 416922930 908338464 983517024 720315440 955082195 228773750 475780622 653146536 738690742 87962061 373602218 748829695 793957344 83526439 396484520 947723358 997817973 903343173 963258935 528231832 658187190 504527750 693400123 273962569 860328714 486721046 497266696 988352278 995202144 3431866 807082599 462954716 765057916 572429420 919278852 819141146 919658109 946602516 999635858 430002536 585531333 129315973 701768980 331392023 500227146 259487360 295666677 322755597 676620793 469059075 583107234 766039353 895845420 525380841 973400631 215441837 926706366 600579018 706451342 366880607 428187523 641321037 866986358 698522442 852145920 213634504 761478124 5605566 492554478 332399706 381381403 432866870 840218697 253730277 283740350 326354840 396884836 151216265 625928547 942207698 950328690 98293363 517529747 370187662 488503689 488585956 916157841 301459320 857038923 99916340 697572180 94942499 296749343 641192945 732775782 35433955 778333223 47580642 714589170 75453024 383896714 41079359 634807545 188547175 722060532 510076908 682154354 296780356 788277693 730921106 961788188 467681748 906687630 301851409 714117750 648832779 798682560 664498765 758354180 874546404 887317148 820708193 938331667 329227859 915202835 835060766 958677938 678682903 933638132 181747556 716205960 777739069 863388185 643468731 938089038 871714529 878921316 776692465 830037449 377566324 822609396 585983845 897454969 753756285 832994793 470232565 851895884 554095812 809895924 410437199 529420508 17556585 890375694 130445527 955510463 305684898 772515763 475725545 768036677 708933859 805828418 907478307 945941684 251947287 676741646 534200703 632708094 90267342 643350415 494042187 546305977 543475932 985889014 531777065 878126013 714857310 997021497 785768429 791451381 677740935 971480148 57808490 467876773 393284258 823438898 243565248 700001330 86090795 537486136 220396171 684212624 510672764 728690661 63067553 279218734 992429432 998488767 217279670 848349085 219374372 701614377 199799400 693219922 658408217 887539174 23970517 962687710 901710542 992240407 879616683 953339463 260105417 846653042 252865058 587996680 972856905 975305135 311236933 483920723 78573789 361311504 215150374 289963225 164406316 737553946 977916763 995177641 340605821 557169841 984544906 989250051 230091049 425522986 493287668 982246676 881449121 946906830 917210767 922838881 741900824 886752246 121720597 350979265 879214203 956224886 466094933 538895526 442129397 620267665 624687739 647994748 101596943 162269557 978166067 978997442 955786371 982880156 278686942 712463118 468949167 782708287 403101140 404880057 212426044 810882259 525295858 946411517 746433016 750842544 942675653 972879419 352013613 797003901 109034153 873069400 859726063 919981827 332452545 602142895 459110736 647057674 113548137 483785272 43433611 586114318 659215768 933229025 668318911 988828581 655062708 894956601 472813277 786683493 667705517 920646423 915582322 929633377 619928572 714153535 444860473 597371349 773961513 808355102 205998716 705833791 814387989 913942226 76914420 182643733 509046126 629882644 904872313 958257977 36183155 898199005 138838415 897585068 187334355 828097940 968153693 971377331 426932506 662951282 838441625 880779008 205471522 389878270 54758814 697389884 721521480 731811793 840096326 912547841 314256513 710111376 32235169 985804128 269760354 604548713 390181864 425986669 988099849 990792769 651730642 662700851 143355266 825970649 72934561 935204115 3232599 761606009 441366565 601280328 992582831 995780225 240054722 468740872 843726383 889345078 289234580 891722579 96976426 516984884 406429349 605593334 32554868 543898647 635964064 754163495 284320818 530477856 288253846 416629123 253335906 971989177 882718556 940510753 43751671 748125876 968097296 982174144 826501821 983835621 632973449 917170501 956808802 994050708 378245648 877105646 301556113 962276595 141736852 189862224 517637410 735129744 370211434 480849023 920361838 920559632 779122247 947406567 123872566 176768529 354493829 991163251 851223750 862094082 373876470 847402070 725535362 794582186 507506278 778822749 738223355 874157011 602509584 621662327 692006936 881653536 789351819 829383550 950546598 999587033 674792698 916561759 337587101 694189111 298677774 365967812 26483559 509482047 28926758 993136776 188476472 814149481 927906563 969805836 279524886 297538450 315813611 663430966 90251113 232212814 239178931 751347562 757985548 895343166 653574891 982733492 343518181 655894323 571584272 692973395 372898617 616234774 16778567 782189717 526472213 555242417 658873094 700372166 655148669 924280564 971134412 983506779 296117931 521081372 276351675 607750623 219786688 603454302 79468367 449846163 412992338 674252885 404365687 548935019 678319496 900107210 139991407 829535035 504933273 785954554 722081662 803408656 972316160 978528923 844542861 975420886 759649271 769302769 617762151 679523596 934212838 973591215 458268819 715053647 783803556 974397882 210970674 771813989 90678204 296328495 650562128 673330276 166990507 520061818 475794883 870138607 54129856 173828739 970335923 983645466 714070796 806884574 849014475 943372441 289341854 981539435 191132375 616243797 84705594 658291878 405292369 686928380 455488931 881225413 237922493 511607507 516113107 522571390 7944486 26320471 855985653 925446727 112680170 153363551 783226968 857722702 649176163 741626899 985279903 987883144 686791279 804239277 977982297 995496288 363270900 383940924 687811279 950530584 332560048 462110049 840183440 863840101 449606165 493098387 985292021 999618771 614822516 743809343 53582129 313122404 69103415 694714848 784702613 813185890 491319236 901286028 378354131 719437015 971751715 973557419 936945825 938304130 402422490 516776737 288481818 316681882 108421497 241571528 362622244 526080970 272811857 612035819 388944087 599235732 785310614 803740705 673878168 720114693 200061269 419579675 517220741 626957611 381008315 433442277 233452115 610724549 318961445 849630304 6043337 567707300 692721596 877082130 954454100 975164055 648512835 715045713 274255206 998570502 250856529 998074368 554738238 796379119 126417023 944864788 719809845 992399275 627849013 892014370 660495447 982681084 18571524 800446663 934948731 973211461 955646434 966132560 382437388 761472607 509430522 730984829 64982734 216566233 145891078 379352364 838922511 917328353 38775467 244704348 525281694 568737495 321056469 424567579 370357234 974014244 180896192 605626243 988304518 990862085 783927917 841232525 906489841 935902783 459328547 907285392 339230911 815878247 300838395 885696333 318680216 839309579 61462692 646497974 931394721 977445540 490278401 841219969 724317960 918663936 155111374 560304416 271510253 301095794 222714772 947145668 453267919 778957396 917366153 968391203 742672265 961245697 712018822 912177731 640727761 742617340 926726401 980444413 379442464 513659523 275827691 385099386 635983910 753397843 818752487 913842416 360623253 928183958 462056554 541755509 533528235 710502263 558156476 593126306 685532615 970637839 948889497 950982556 752694720 869432798 481546563 760957954 824328393 853012073 612630408 972645106 888655474 895128818 428333465 511604510 784885834 876555956 305426474 319214662 191440113 289440146 746458130 912676425 6736455 56906820 330756978 552229520 903100415 991174999 37482640 727888014 233351018 832930851 727819375 937977864 346540337 467409281 829406611 892803731 92746337 798307439 367553979 813174801 923191315 968678316 926639835 999579832 550522422 825181062 33712480 930195299 158071192 274390841 919645185 963715657 811330327 817845052 717830924 853201476 804800053 909934049 990853526 992939061 62848717 793939698 67888082 322003851 623889699 994268531 76059925 957123419 691969732 734810309 710539196 851501094 951975833 963706462 190475356 352380792 236646853 469204110 46793344 622798231 704957591 946898847 182902989 289082163 590563451 807082157 59539344 348357374 587852021 687269628 183096575 346273001 280629639 930853583 517754138 725663275 546946030 913993372 803437095 952544666 722598300 927861424 898390379 931064889 238410180 897086323 236151747 284859946 172393408 402764384 729520101 785583938 430936894 515143440 465794553 894059048 302694000 829423924 312016604 846079385 89181550 146802386 607024549 970578983 160524407 794440287 799045847 925982810 772203745 955718248 500798033 584933743 383779967 746637534 876280672 966486372 493846678 864208268 761005534 966396161 54805816 456087488 78371812 765292265 320251766 815147149 502583974 852485241 54572349 569699882 723620479 751236510 161005191 846752180 704023150 921330594 62669937 101972457 752267034 886763970 859031797 863373923 645869374 733189529 828205498 842450018 535929399 577189489 72127510 510326813 554907010 617075979 788199035 921872027 483284450 678311137 673493519 995113160 69158567 616284355 188719522 355829173 103032182 425986728 896812229 899807901 218017342 841092565 366127736 677464471 713918228 878700613 229536206 802036298 291850275 781472771 172220037 801630667 967463984 979134534 139664206 343159517 549738183 965054032 611475253 705061781 595411826 740889096 390295994 685202207 748516332 975878730 769769766 847884108 910841228 913467643 752188233 905083418 43600357 260381572 84686586 463333568 792898774 913357461 907195139 998854605 131183657 645865521 419670946 715963607 532998223 730445053 56170896 819157313 127935935 658976925 177757537 629519702 554825148 877755379 332610539 754957215 975450072 994418665 596675927 689203740 394320920 744184561 227941026 676751225 478112759 709237100 357878927 811517693 384584080 528350108 491832641 937224232 240997950 875431450 304347746 672206918 434356451 481109455 152730300 417720948 45420499 758790005 810389162 828703476 446045212 449289069 799244621 833182472 227995992 838581518 373955144 747266404 529704086 935075124 449486738 620601691 23877880 568196637 872897743 906087120 441817745 490368546 300616763 325177871 68542956 744479779 657509818 787129991 972176775 990138760 741293105 844658224 165110823 252923565 269249686 873047547 946631197 999046532 164292388 841576402 688966097 977102042 595528672 995598325 988082107 991042146 963896160 995885508 411992982 442619575 428520380 945305097 379386803 737661083 291569468 651540257 550020357 588120073 35177655 948121391 366542739 444255023 961018423 992292646 396176085 594296996 827146966 953395541 250393290 814666288 807445001 947722223 609858089 708970550 864161062 928741505 82450183 694669276 381706183 537469876 185074009 432386862 468517430 686474232 943054246 994225057 374162444 719808866 843041885 943447341 437657505 538478544 621018663 980865250 638164171 696940234 997038486 999061243 449433756 972106027 683399818 959528848 459642024 640632268 704985164 735635960 243220968 358263056 553947426 630928296 67585297 849210127 655934875 717910919 25970417 165855530 683249213 904387406 924870343 965206013 396260784 771941709 124151305 273920994 569649708 743669409 264697213 337452401 922629416 980807481 594542838 998450323 325602330 560815335 612256693 837632433 1191961 246334189 223544867 397924883 930667513 979565816 229946182 796904400 842399239 926232616 217220172 786434291 931567008 992424744 807255499 937719565 952910921 992249776 304986053 969976709 718489647 958343694 474903640 694691418 87783824 455325603 698659646 956308456 162022940 775840078 622006121 649144930 900037893 963056051 84002484 112840990 512069445 993565445 216114020 328111738 991950755 999368035 176088679 685854040 132108485 790860766 420235396 593671716 232356804 887921809 49167113 544948777 252479337 336748822 546266191 561101940 247502066 446411488 414199658 670174926 420372585 573407160 607087711 654533422 629068234 933866733 594283139 881488861 536657789 958423599 164612419 963276094 457773677 975531190 690857377 989204486 528431482 749852305 938700738 986093119 981840801 982370077 705010937 946855845 227317548 863458069 727095443 791849207 371130378 924982503 955133288 983715102 61280039 186810555 812887484 902352095 7002908 480463294 569452854 654746398 383820599 966663014 689191763 750628738 391710946 877272155 279773651 743830205 51132501 904060647 524437543 654592351 130902300 531275073 609963446 806131491 980429538 992462214 563948216 894270679 118013587 837206549 214618153 492527114 700352033 703119370 219921187 333715565 899153430 970525323 917293477 998374751 241839991 930261396 175086676 461735973 287157732 802980285 189397311 291139892 58523509 635183711 346738292 789276104 536221751 872261332 642377632 709535297 62796287 847932651 858756962 909583757 80999940 407875519 388645692 953435771 761060659 770595951 315092955 409022429 353498336 620232257 26097450 688697226 714442542 998961805 173690865 174123488 122463001 384645595 11494460 580859766 683045083 946937079 148119806 286518762 521898844 707980655 767475489 875861899 909569853 971114722 313300647 893735251 670686043 990013258 311233708 708731122 192186928 760001228 469542539 793726132 431796104 855867097 338859627 442950225 890359610 931592323 532932479 807189841 690868065 901780433 423298392 852022356 597569308 722742910 354402681 358152425 966396258 997274130 55679794 158034475 684819213 897144016 77658957 366651225 548335565 829961108 53651905 277431655 832583223 887320991 530127555 752874594 720873499 858202632 497540691 616725370 753575240 851586030 266443405 416127813 579300095 834770298 694157992 774644544 546458553 569852137 571078988 745285462 512251844 626308152 32624176 949954799 185800353 798973508 555880560 687485212 51052874 468253633 60114172 678896817 811151306 976144813 308933723 732754262 959443499 986962747 556205046 777548031 692491684 853302056 678879820 828607578 666135925 904525940 526669070 568427083 441890627 662933923 417569089 858015020 597986641 806318622 72194097 990110313 537067257 713221190 763652577 841820246 48734261 97394709 957238269 989792056 263303911 850405413 138401793 681672831 36574294 685134681 879716181 986079880 203108568 802464277 709769951 790843847 200619695 792395155 896265544 901359381 787505409 998633311 124235503 313536317 635665240 769502402 513495550 855884692 275810106 911924779 989884298 996051689 886124405 944172942 406405551 902520095 657295809 711632394 519192478 684075822 539553295 751359581 931692017 965232052 296059917 455554904 434913322 814632870 998885636 999032680 9519893 510467897 716375058 953949744 154533103 719409981 756160075 826908893 374316872 928052364 697867439 995346189 396304379 763844552 590640419 820995096 819706134 866914130 612328296 806507742 557072762 788820526 358254842 449181437 971792745 989952553 590910687 919213904 47528804 177312030 760679963 777285949 830128214 963234854 28580094 470127385 925487568 930453083 505309059 907134688 16815231 151851721 424579955 858834950 373921115 641085526 95842946 743365396 901244403 943325010 449168623 645653083 94479978 342948995 655629125 659740917 668502074 920818573 22878353 552882346 642458428 656768073 268590405 689780370 358823826 704267379 532597898 903046028 11400741 232757274 687882294 740317220 676949593 860427901 5611965 557308402 974246567 990554883 79692086 903654081 83586929 919268088 729687781 898707492 23350278 48765369 360336267 457323457 658596159 688067072 752711905 915172937 566029185 763710820 659978398 993580545 91402696 451125089 371165437 687327762 956458604 979028443 759451498 766020367 672819275 942777850 662728846 889384396 303680876 516129251 291641178 752228375 253181581 890890731 848586046 864728764 578514938 778824840 621465999 896830307 226865112 473772746 949683973 986701639 999249182 999409010 195648009 743258054 568263734 734475595 926425956 993396077 690441834 843988407 175626081 653266028 883942252 961635730 775211346 795180955 268515963 313769604 98882103 375486259 973782234 974855419 87249953 172493421 304526317 863088062 647967865 903401197 307532491 940448853 315025916 799731720 364362137 410609050 624117775 902709570 493985033 657627168 193787216 415678232 472917218 687166282 258311210 486784498 136335935 448267980 802498686 894315239 602102531 839834635 205697983 929069828 809472465 868270812 792433547 871787550 600179339 776981064 172853992 618887121 642962886 691319076 910255092 912022287 225653580 623241145 468461686 984170575 376082233 472927064 420115659 759151469 809516560 947018552 711386773 738480312 887707219 932061530 537655721 905537828 638672162 934470402 927910312 942671864 555658186 999368377 393854459 948494792 873085665 913107977 239787488 818842040 385779771 563088868 823335464 983710032 958732451 969914275 954532123 982263662 521038827 566033161 882106055 988898775 460409853 701952477 303777135 718923693 212529297 883659001 929541201 949926661 591310201 643181057 547232003 711702501 996682993 997707335 25651926 119615402 40365501 99003770 918029154 948887462 224229023 558602760 378262874 651678926 433215797 984277499 179138371 429021608 579934540 770075692 452746196 638902845 346192170 603003827 893818161 963694479 467208993 628309990 995064795 999689371 724420235 927648353 981999549 984170907 159409016 420029638 583464428 841382809 85836858 660833537 169233819 639112557 599102349 921398271 444136875 651947441 37228879 837074897 109853568 567919578 692178916 789280875 995209257 995389929 329655690 563592488 11056252 199372220 811797572 890399778 413253787 660464503 680526215 783601705 541576265 783838213 551815145 925705455 629245464 810798142 533898177 585704081 458087627 827874481 302609582 914124580 901555773 918162943 349884830 986283763 926608640 998423249 909032583 987365103 929280107 959662170 987113234 989178429 798231516 868459451 333903555 520680742 588359393 689465877 937854964 952662236 514008429 798358703 716933866 985805590 499817639 811421603 804497301 824038560 959670444 962604401 201448225 234274883 843017332 843705218 518697030 866918956 899835532 961256293 379073056 965695158 630014141 860005897 61428077 711510082 270869130 590581971 521135835 938231265 922849741 940649446 420204871 753522195 301242555 313678067 903981118 931082968 771442008 881627718 964319607 996959816 242032681 348094128 14783388 112669863 366908562 954634826 600018258 751138587 854560870 874997982 509438150 980839797 310234610 831509703 360990331 763723360 318489722 716373605 183205176 501513190 619596538 909768253 989473817 995514715 979644816 988122533 434213867 575952466 473910367 681385124 713584383 760930576 119486019 207859106 909821109 977243172 897772508 954096256 715722921 827728625 883288626 889872692 558288511 773328315 869357428 966379738 130014483 259665308 241536732 571914621 438360729 837843110 509353993 674742237 346738354 601772367 2979138 51551623 757374865 920844145 969544001 975465145 104697925 659339190 930700731 964862434 840066147 953248419 680174603 769757248 31110088 398952093 894376517 992151664 553272750 989076530 273011979 302091196 59147306 566245609 597899719 789310475 833544590 956674934 383724384 593671068 789429914 859708040 392723171 773262487 889748858 941709207 111903863 523599742 935785404 976715298 685519370 734041955 495942227 784416897 997142036 998008073 752733395 880903663 162828980 381357665 498160128 748662625 976522934 994339655 863617256 998596083 699977473 864288576 295226814 511662714 820962746 970018344 315463448 386778855 371697755 417893430 256499088 590924152 70177993 460052777 23785588 940292205 887570659 966168667 872506599 918646645 997111907 998804273 96880075 825363088 347138378 622515889 540492556 592921236 870823123 898548358 344824096 352581539 792774308 817664870 440179960 946449044 176998748 551604260 722573231 785112927 151323988 965027748 275612438 760264400 774599946 981071875 935645012 962477338 83170359 83669737 274836634 496620779 463615179 782383301 623010641 788534388 258785743 511003083 558008552 672525440 680919337 759523410 966464858 995546375 143221889 767832938 914604286 945527799 283101415 964561456 917672951 927470504 517119447 715229147 9207403 598355000 137032215 243640822 610738291 683363997 461292324 532156047 60217539 992195875 831855711 870376768 286302728 544924021 140653925 338263145 414232328 782662776 623715383 727092127 476586315 854817492 573314826 787211135 991190413 994042586 250400835 468661324 627426643 909311996 768450579 857172539 240884454 712119132 506405224 545976249 237341485 690331021 697555999 724894226 550480981 849333832 821458213 935021213 65755291 210451462 445960851 755483089 208514747 323104362 387153093 780741059 607481739 937522475 12654127 56656213 483210842 971215908 361928794 900642985 789685090 954395851 798953220 908092849 696730600 869337096 176753589 281104120 317367381 708935710 141322863 393325932 89878369 470869378 557163097 617685328 996115505 997749898 903563119 962926147 265084247 927818828 827424620 983711281 723005866 762800958 256251615 281788093 937662112 991478779 445280053 806090961 127854116 365409134 361801868 368449673 314452656 493718190 86957912 839148772 357581364 564470665 899589547 946293852 80104666 525204098 856866901 920095908 972155702 988012853 301104320 903870193 578651296 666606489 52686634 272123420 608205607 648757119 98543925 439188079 851609319 988252007 822721507 824648876 522344662 563417414 209640851 631764808 372774997 882896468 923451540 945871718 122930048 882058003 775460335 819114847 722854550 856763940 177442832 191777907 101858227 981303418 266981678 535895390 887931522 987248869 418797445 539229861 310331667 538117160 699792778 772325656 413791927 822195564 206288545 376735584 430767593 653118540 948021749 992404135 680530331 990227226 88140689 854913851 497555516 621921673 83280730 547132192 639774955 726182063 125833875 167528089 298331401 977963184 196348178 826116584 519860915 876890494 755070292 976275886 465817807 834515375 723877624 726452252 761695201 946262637 841872959 895951564 484764444 971757892 496818157 921439844 418027056 768526218 496955204 569723453 473428808 678719580 359562955 912332005 120010516 709005525 446005739 889259964 449102180 541933351 2120627 61057571 852066132 911187000 121287071 271519984 279682097 691883102 700719908 927539878 479320443 522107247 804406942 974815926 372473005 409696717 459789232 557885898 301205127 983750347 575051471 770277223 836585327 979546496 113539064 845106383 723119197 999958985 287250619 871742439 995110721 995441681 13974223 914870990 589652901 829477061 483294313 571501127 426937777 500985093 525236500 891847812 671492295 751355919 263939697 941710034 338552292 985006112 138735423 723530872 192654681 782509971 544081030 818926846 332816305 859316370 438019956 725361361 660897545 717829551 259455250 734162035 876390769 960006076 401300725 619287828 230350181 312312229 235636093 492332760 942665461 992054317 335105672 702615649 240439615 559899384 196930845 545584040 328508336 514974046 527339901 789150894 215399830 974730036 167521543 814573398 70232923 185442650 732424363 904189854 471582467 800517306 18816554 200208059 421572180 742644553 894709163 976622131 792879188 819483325 778765547 781986230 305381322 681983430 449869974 554739395 909716301 988291587 782270823 890821181 85718576 188271194 336954889 356832757 771743723 984471559 834714847 838395030 35343339 331494170 593207164 849750995 750571794 869620615 514995944 795675562 852008171 928931676 353767948 818656842 519819950 737893440 6905420 34048796 528931881 842389742 922105517 987633462 187315950 634228704 267449550 539154257 363721283 681420481 472597775 903660432 11987992 471506389 793768320 809330706 304966050 629645922 483042758 582062751 669392318 949019821 872390763 941889829 476018628 541367399 118353903 785953465 102886994 627614210 667970528 982673946 552667777 884491643 985074956 999259656 784829346 965025813 261714210 559823733 592576964 773585029 864946043 992961398 726615040 919078112 38494311 867747719 233195895 927915712 479819802 639008613 327923733 351994249 610328474 760516468 293784655 625013425 582398128 732079039 840455251 893444579 940608551 990554967 942230819 971488501 251618544 952053882 421496484 591269051 336343997 954953013 980216921 991676634 867884511 984356368 551719997 653397153 857258028 886419309 757547588 928320773 111738767 415892168 919757533 998105245 230919985 250647950 841554518 941252857 709640632 722672301 37447789 137074318 822666527 909819156 495604151 695077997 832279704 973883392 264965073 899099941 226776727 745007710 197779352 889483968 673715778 725660754 282029464 601129244 13063124 523282497 153441013 536390271 787733660 879261777 179010283 511848124 669676761 837426419 631979739 844637788 313235308 620717703 85806479 408962603 544154472 918309244 504335369 784543627 250306951 543248376 444563711 589894603 316351405 883210349 826390827 901358209 919177519 950490439 87095005 444036505 326248510 502579667 486681379 936956567 229254903 612208363 319151876 483443188 146677577 816848899 813863353 894333696 460051461 689436147 432944047 458432293 526702814 727628710 802695470 826747375 995150800 998154729 561257518 882166680 167052039 667542050 635725992 690616339 769806941 934495173 790688696 866943624 9080678 44109506 723705184 968801090 908839941 918798231 658232056 822238644 473402691 903530728 716390651 941457102 316894869 892123082 246044141 840325556 788402025 852282438 650008189 866366760 404236750 947858613 945474742 960706737 286384903 814180246 353880519 796039170 794264647 854144041 495596357 571886082 550728041 711590455 580530190 927072821 119206234 526919794 845259433 919232185 861718 31844199 689871831 751875714 189414579 897968276 627650010 836025997 677145570 879884174 902186527 994863058 148966590 716759555 155698618 394283109 748848896 865151431 415771616 777307397 225798086 489484557 171566123 950358164 471721794 774253269 243202605 949015414 608805061 704054943 859429644 911873633 816429270 893557046 68927581 710977218 282172095 734454418 246593750 873366115 839446878 957314366 994266109 995572269 973891015 982220185 794483448 911611473 400041730 851537614 776512832 899111182 599633868 714310153 649590922 920724735 336784809 404834951 269732272 871875204 474903373 900997351 737091309 989020465 28263673 729230059 771662587 924459765 260872008 616724082 830747412 968559325 462193297 674824196 161888694 335535888 348738724 762331474 774997848 905187342 632259321 689695486 879545756 996975774 538394969 678061304 806980332 943006378 767455508 986068347 692220986 748416323 34496525 857611406 146781997 633886939 18335578 937982464 83236257 132640324 838764226 949966734 323456218 565634373 480589773 887810601 272221626 543582746 749185340 774538969 589840159 968058688 533193491 806423765 721342455 900853529 666098099 880193328 853020868 994485780 489093697 819597244 481952617 578396881 470365400 679184485 982619670 983509957 867781983 959765387 501356681 956265163 763727626 790935399 31995248 908971809 359999872 454445291 341158359 721697255 149242206 791945280 367270525 504026847 92506601 976251945 29274215 252383552 271919831 761378476 152671042 473521724 854448328 868221956 999023149 999501957 981883288 987804231 27770383 667648546 531184386 573836970 493417645 677821037 141745669 888801990 615535950 615735288 154337343 254043478 908774252 991934278 671377002 881486834 556263952 594390233 269941773 923068644 153010501 346931238 140329013 356176072 643547225 912080470 573545587 850264952 54537143 120431412 647879929 678873261 568657758 652207497 155000625 160081593 359936370 617002012 177060163 401037744 49513575 540165580 341147691 854464345 490799798 761271238 463698027 988133178 921578277 922022854 687329493 777230683 726541778 737251822 770839615 937214166 30893726 843948644 406484917 565342565 620857302 671495943 246941248 749921625 952305122 972656730 567140876 588572934 814623490 820571556 891124372 939356735 514040734 582625510 952552049 960437089 850347931 948311760 354452350 820873659 929211823 987314715 874782673 980603617 652214909 850436801 272084088 941425080 590793496 768161676 645577458 654738958 30325855 813410266 806510396 993746209 382148055 596308230 313460923 524177300 318490704 392749873 783587484 802617126 685692566 989433711 759056267 909935496 982393417 992559564 747160937 899849482 845784957 964562624 569476287 630829585 388534846 708716939 903922560 945418520 966157067 996000269 28160329 360178492 339991745 893834137 615782233 824205051 803074455 875860819 384369393 497591173 34139652 377649430 464492048 894404574 914699035 997951906 343055609 445246352 858569704 969773839 401853071 485383575 624936668 817559310 461383675 766831118 759209921 818154942 304810512 341518030 519301015 876112317 875833055 961904714 362613804 847779728 227561399 981583737 655147641 748794759 56729665 870628172 300032024 535847148 937839915 939345806 353213698 897949028 708793315 789286424 610551062 862351307 438843893 442829909 54887272 442879187 146932667 445701986 708048294 976474856 76034072 864675246 960095175 984591931 386850042 710627069 270991980 622337712 519376904 580184197 735941195 763215893 594965128 620495576 382076710 498757285 911606504 973289638 914021867 969548425 773790882 961755699 796921649 803980499 621551907 711831914 43769880 701631926 854147950 994324137 701067246 934326411 500337527 726493235 1872717 81366796 602345651 745671217 278510384 356509850 338688287 613981640 204073752 273801657 193182323 453476038 985928238 990165319 811571080 999865442 593202245 643308498 301924790 394362945 607945258 819025444 23727308 170358669 921225348 940959765 352591483 524166002 120961719 411628834 973430935 995632370 818751697 823734232 209931305 342062310 447018890 953190188 444096356 562931348 762761532 926541416 834321982 956158373 288625211 397419734 583053714 928970752 829938694 881931700 878970043 879135524 139704132 706663980 896053672 976411845 321149335 465760123 105505998 748571210 660686518 848175330 905781872 914313794 853526744 962907725 590896338 954481518 276799772 634827835 743921705 758762847 231462745 842956763 221902217 781782606 395084727 567907459 841390629 917547551 647638160 868973202 203174749 349997630 920428015 970886573 191058365 983807916 734360865 994708999 440083828 557030929 886913526 929063516 472426029 827781909 387164625 691484546 345145547 739201296 171150835 886706896 212952509 536008266 961368523 961855367 49430925 244579600 445585184 801104600 434333778 997484190 154706510 554388772 409126871 470361655 999956639 999987189 208787129 370169907 368306457 738027916 532696662 885994986 168732043 349492801 760750053 912653086 718418335 962928146 697570220 861599048 430474723 755502022 616004286 990141004 377722531 978252830 858389022 930387636 281687736 479719506 209973136 894871990 168463896 888802240 895566603 949384005 914056189 918357397 426488972 806763298 353125388 923553249 534728057 930601547 247447762 342027106 532419299 967968477 417800322 656546113 369817361 766745588 353917252 764671855 132246691 375008451 625524577 916505052 647992438 959071967 781156902 802415573 284295889 780409680 199976520 514692019 14496063 889326823 890854472 985998806 699637887 928872092 401285376 697374405 220435100 340573088 18518973 686246883 533406443 557364554 95306904 893161729 704984557 943522920 175239844 977904874 780305730 984889457 915637832 963154736 398238194 567669365 115687558 944030048 819292398 962870627 511591717 523443416 694266857 825261796 879563032 906271365 31983619 311022917 749776725 792241524 226678799 906732857 604922036 855037171 155945158 394059723 510780478 875026236 780343584 796074621 923197003 932730769 349460068 737568339 293597255 660067002 516695359 883372651 901308754 910939302 953843148 992908465 721625659 966607901 803700623 964216511 87812156 316526379 954299480 972137004 741606618 801412985 489969135 903019924 612139249 820379066 153667747 585946496 474699028 478499655 573470914 992589478 646827680 753964075 146447040 251968242 318495981 965014910 576897191 872286035 497249699 730660116 382568941 484264543 252563581 543393592 253216042 732210647 628107735 941713109 298660871 567741867 725089680 902023143 775490082 887697747 702188240 908755357 265619133 394224285 323374771 472109692 45128038 487662354 741244393 954408762 778932888 892818102 501060836 698747290 160419575 685190082 141307324 884239640 614715350 949501964 836540384 850939177 467091389 830740276 600771631 942718988 335463253 517886244 651739481 692162201 54782573 365802450 481206338 580129756 988826769 991844843 562194519 835171017 716610433 808885065 456817547 989631418 821232122 884283642 79178260 223736187 271720077 675305827 146312095 214277924 392298422 580215679 710207459 835110095 486850307 781817094 375190192 477969266 746543054 816977371 589661509 954400753 341637634 388171697 909194623 928375617 551122347 774635557 178518387 830862998 620466805 749274748 184266367 857909702 593926511 655807193 650710723 853053464 372508359 719641159 615614758 616447144 497588663 734652199 261098108 365559646 706175748 761153596 928489684 956487044 338045402 955870422 575062342 795824710 806393361 892976025 781343858 889781605 478528604 882846514 223114776 781985325 754206460 878166017 831605097 857395150 179371794 252006493 217585564 712343872 341240953 802873270 963507644 998319767 490311728 498659486 641890342 727744095 578138274 784104054 619226353 791752293 151101550 814109698 714981062 845463923 933956563 949137892 598669415 980963084 932800191 968043497 645495912 783200211 829740801 944790840 839941115 998636408 363247920 523478332 780926622 834023183 479772853 954800993 314304561 768275576 239424545 972466847 143928490 144213275 464382304 737883753 974934874 992199631 253004756 734589536 892514472 965541146 117338991 497252492 895780050 964302137 951781569 957278310 368110580 378751566 721746646 953548130 142931120 204569803 952317445 966357029 427895196 728105585 951213679 984646988 449629027 979953627 426218580 650349692 717927337 937808225 855502343 860643548 667428538 870767097 66141611 583130419 716492248 953316641 801165188 849351266 756403200 793473570 541742920 563322810 589657422 941584567 403296573 679687479 636751379 752617980 276856082 876746044 724983675 811464509 523653923 734100878 752533005 850489467 801550605 978204802 33700035 616185941 112642858 126057200 456858467 917438508 59238173 834002710 46248791 382988631 988429429 991786024 909799268 916806931 467345382 583651083 927136692 968586963 829127187 843204910 570515309 889186192 729124358 927368296 529260744 780609303 952788131 955867651 252684032 691795762 203002859 238096656 194201647 689287406 603507144 797335640 900175296 948339743 918208284 929838431 380020015 917684401 948492608 985226344 331929458 887525442 862223355 899899770 854782912 968935935 208235645 581082556 372372929 613439074 424215858 542796624 658070606 918343141 123614691 355036321 813690156 870132787 480047061 918701687 395219108 926086801 838423702 953969348 50238730 104466276 685505198 817693148 446440810 528102924 28962809 74369293 784494598 976874560 44746143 716110328 543452757 572265268 468442725 577565130 914643052 988353390 255738683 355841136 84337699 805720752 814409744 861108430 700184237 759886356 756550365 872069897 547024569 917946092 963641107 975228889 289825614 311166029 896179313 957675727 173430541 439714927 735783232 986653494 183808355 830854782 814525733 998624394 606263622 970192662 891321198 950754173 966510546 987069103 502772571 705928360 396253422 711833104 868800188 895278946 221081252 232366865 801139557 842573906 667912627 971335111 810651997 961344723 29975346 882591673 828213329 882966665 583900798 813902454 932863283 984516029 223169371 859759345 691793115 879822223 931358117 981666368 328489244 983631283 257304694 399130452 163773342 747914994 700176192 862799760 314651476 953616201 87149144 368279174 441746454 935245547 681304244 910667510 750019900 825657475 915404003 930237055 798169301 960490019 299356974 763418002 661928884 871188010 873762160 914682966 313562823 751293397 355597676 843515448 822931769 895343014 721844132 832125995 329553854 726331754 503925737 920485151 734586768 787974023 757046311 824803502 490262550 846936085 97214654 903198509 515538542 859867568 126908865 899051571 289939167 551645076 539023958 807606571 719297917 953917654 260913887 747919731 5188302 598138542 662223806 899304027 166719802 671334674 292966538 920702454 513483790 849753339 659040809 757260060 106512231 646106011 724253803 898571577 168864519 255841874 78893496 732772116 139180015 734573664 755820772 798235657 22420349 776989162 796414382 923437290 468672497 698470647 638897824 780311471 854804869 959159141 839521128 971374853 832648551 840699950 194167460 999468776 690864673 852699172 58088659 367681531 67239134 430636052 265026035 616703373 676602959 969591235 926568805 948886189 442238789 683298187 348512550 658197282 171234245 611748684 858336365 871979570 2982649 661715108 48996008 836064496 948610400 960891662 353071390 816979130 295592678 320319581 238873309 540881186 36574270 889447719 283473971 403933941 421727663 784685179 360514392 504452038 769111432 774787384 487606829 580386865 52893211 980524075 357764782 368438359 555065976 614689290 777760430 980338963 498510841 897914036 804710104 877399105 574007173 881531862 82386992 859772005 470013332 988808570 855690006 884411638 455129244 735349655 393328388 654820562 207478104 320710169 831649159 946996636 112622745 510969986 915313913 987103607 807555488 957175988 849392407 904857978 790165583 959832353 702431196 943345059 508635700 613528931 693524157 783296923 933153617 964449871 617791112 749752293 313613458 731707209 848141042 944370536 66741530 491940300 596166460 895737053 312246980 367900729 194138695 874810326 528856939 655170794 539634924 681855055 644456678 712503163 994128058 997062731 986276280 999985201 56525149 597637415 200610083 351394461 67046922 254132447 750451368 879038137 600920546 648646302 137206820 274258863 41526607 68990846 382708520 784250910 262769533 322609140 491925633 506051424 395890546 581406388 335830668 981973027 78487120 208096212 738232124 968921203 341416478 887449996 610121314 822058126 442865690 885935527 219863194 233418076 883585112 962981218 473992015 699752234 450757250 547926369 574756472 708028873 702843733 959453957 952771322 970456769 963238351 972887020 359033811 644110825 34541661 984440770 677110460 866135575 811801747 999843515 828758843 867245608 419529545 699869477 110823442 336680956 821391564 829044138 401004969 426822528 610789205 829146165 487954941 526589558 766603105 834104858 241017117 598365734 364129495 836076097 72759931 278685647 250395740 492009881 209067207 381903142 389307280 806709937 348050819 766404638 390919096 637584434 187207646 456398831 863262263 930508979 653094285 876056956 635091991 825253237 942492831 961073623 604705999 761972484 285006886 593805740 605648477 665545505 749761130 861905049 722953336 933739323 316354314 697146675 385874600 843699748 914549606 977576595 976229198 988635377 511684196 821703941 59253267 695997004 801068636 885656452 653930096 661994120 616930746 690265693 337129016 866678022 472060184 783012312 654512320 831635672 663042229 813163214 288516956 778722739 22087169 266268618 904282560 986188296 35344048 379515447 978762362 995508806 806523511 931893485 333221381 729789452 538550099 658658445 524181091 928904390 727963140 901531805 536423982 551691827 807531546 987929085 33553327 650891712 967783543 997772593 877474783 951859653 778168796 874610526 198776706 355047955 265548181 459910806 626819340 850180336 26445953 648472195 585479602 710551693 51064297 133669543 789541634 878915217 504374363 846267350 384450991 580218684 679607556 823535148 767517630 951557948 282378471 655012708 797604902 898797233 113345341 568099498 605570355 825433295 403344203 874772485 995367624 997154836 379869210 798526941 286277456 322079652 973402725 991892793 350312209 874591525 614735079 676044376 437579986 486526321 178943208 458525279 380142435 911197180 490948457 789466316 286307061 450769010 252431668 926829968 72928770 873087407 448010096 686722223 552527478 775561210 551963512 860621839 14588730 829044714 890471349 910546640 89546276 321665910 616965252 983746683 156047749 984545351 680214943 698483864 86035652 846062947 408377953 454478773 833842866 931372357 448333549 779202031 910773462 993428147 739654902 772343779 805121751 864947182 973205684 998001685 808869130 950311540 172480016 194061849 993381341 998654185 390542200 948292757 440668958 942432554 252562643 711740349 776486716 811338581 632586313 850512104 211790625 454861485 728694182 823113067 388160281 902111900 241793438 370166923 225020480 403217652 369210304 527324911 211871922 396542695 912019676 923031644 382247547 932999287 378755385 972028381 462186906 809842764 619907485 756918020 436747346 521226268 790619304 944553297 187678313 509451149 7385257 782118023 232358922 689744612 263159718 546984876 976127579 994345966 412797339 498443846 193814737 622346161 612995167 641469683 294556585 463007910 499683090 616559478 14935810 771508102 897219565 997245355 3999344 628775864 776538963 879038075 201552467 437655572 352177142 955179599 581655331 717134657 705950081 889259704 901482165 999320947 6533536 425514376 156655967 309583542 909849335 984054468 842278809 876708066 433864850 454866942 276943599 599207528 497176563 710397187 721664470 843878437 139060068 296398515 647898751 922253476 320724367 840541703 853187914 990303553 200379417 258048747 135198318 698151992 857194220 920718107 833393705 971401097 190774760 956214025 974401252 983637167 365935276 784121372 928580977 980514849 199893189 646462426 97788366 339107638 252729632 927893927 21616818 731180465 936635763 950099744 600425810 771434443 216206984 456183831 43201567 574362335 454102269 917103470 7626020 380759607 647136207 734536492 383052820 455394554 941730899 982055635 636628316 692223274 749483095 804464737 324755868 799122691 780744205 805407216 187360208 400913748 302229058 969881089 569571477 965647494 54905415 632383826 810820610 907026829 781214834 851720351 875612327 897414115 717698567 722135250 965573424 982229194 479762065 942093251 534706915 941045938 2575682 68690962 809449413 852834797 56075582 961282004 915734292 998508223 568213016 995243875 246324858 558720605 295591793 807986202 900158959 938046300 696822384 744108731 78472470 164794078 944877420 984869875 33687993 210510256 273815990 416362283 368920475 669881027 282076609 914052567 990340993 994042353 792164649 936628309 828616518 831152420 297829469 579994848 879541358 946565793 191473379 373559402 268980342 437675775 846370546 869482687 219824193 713299956 636745532 716472298 661816164 906395034 17172396 34110012 171894112 197617811 102196025 233575179 25061492 252590643 862334291 927158822 408326593 805342760 686427594 934119376 199234177 532808985 916245006 994319160 30638265 818388461 662380697 922507870 866507374 878558642 512918980 896909238 254135870 922785111 117287619 940808095 671968003 923522377 138957119 456663632 962671499 997423929 698177461 985442805 230279313 870625625 925218315 929864088 407741764 455596419 881451410 972568800 344246651 801731165 318616191 415251310 489883640 501517404 76523185 395372063 624635295 732561924 784689625 893322140 877364963 943905309 364524096 527280915 891702647 924358821 808723481 977162009 591089286 831740378 514249465 736813269 553947203 764020148 335126825 423454106 861493175 907396646 791185195 794426446 54634867 144765104 17789461 39168396 410489175 436929919 859762229 872711419 320307453 685144877 274589442 883974194 478649553 861453305 944385240 977913001 406811164 490943277 513542564 713230451 936965616 995736293 485576849 708071787 272830725 394354220 208806736 220884436 346706954 584668788 84067577 960664256 283713927 400199087 159298399 449092377 674207748 704465164 117924419 576501590 657393917 769697377 138693906 575662217 596767202 874209331 713092261 898831854 205192252 551076305 982557016 997590501 603058428 684192412 791392308 913339823 278171213 279117466 845984268 846062039 568741813 664211502 837811033 894214025 274551980 644729318 319560498 790832376 442010889 728924135 900805181 938232243 488865156 496141498 286169709 304859809 980844951 999783719 806606010 852361579 984045828 989076158 355243424 421558473 380709191 482964758 604371228 666849869 470217248 589009179 959059281 994131963 292656148 344542125 331490744 566906614 534125622 578098529 577581791 714791409 555799113 955061943 827657983 903102794 92719516 878114687 412522326 554849151 755852639 953839905 770228968 947687940 413619400 631804341 455850430 500533523 910327261 912423702 906154821 928647432 789392942 896597928 482989154 749079058 360293697 957475229 229066198 405348126 289457801 324876642 57394460 530273849 963233319 967983948 586478847 656912636 989617317 997006409 203178996 690205386 781020124 992741109 36594376 719195935 124360908 822179597 774831475 821956598 41995175 886968994 214174785 801636051 761008884 932527139 656347561 843394968 761667588 816294920 49468076 214297807 965853084 996849432 208509839 264414597 997061576 997612448 463217040 655990514 467559994 671663072 166698774 182556856 741275182 988600676 617596462 739225098 111766125 239417214 403510903 495409812 545452705 860268051 804061280 864370141 888414830 922439257 874579007 901797836 306537962 400174949 701301622 793239879 424391430 795002823 793589442 922352936 144022973 714823695 738938971 928876569 828106061 959403843 255226920 269254528 326398469 548285800 868094172 932928560 257607721 507300789 262181682 382425679 863065813 928405254 858058857 967315960 350530190 529660317 375570273 791564081 511442724 944072515 239422276 378057949 484377253 985242038 444394024 839889504 216618195 728842818 543982256 739859679 704228644 798397457 637509847 827579016 536226848 766430906 458000945 842539561 753226066 834498294 387858624 519611512 544676242 604411124 884225136 981801369 787922770 916451923 841690372 890734460 830429410 934475595 137928610 897895611 661280148 990890222 319453454 379262927 925827569 943514928 546982786 736579461 465283976 995056399 798934893 812016782 83473661 737177673 19784022 934436212 697430101 985443242 986516196 993448496 537901166 550415916 566305508 608278668 590474451 708363306 738579162 877503048 477263589 782404414 251546466 638599046 716818058 844238802 2351878 864672472 399799916 999056324 125212387 837846001 586153739 888836032 43394010 783335185 912829054 961572920 134963673 955254031 756779819 938699313 948507374 959886574 833472353 901541582 203501341 960260532 191331437 672569176 849515955 962441340 620182342 782157685 613070407 870715588 589077091 649514067 264298474 397084387 138795038 959423654 185394909 915620526 33409265 691812315 261772495 890776050 313669226 459498592 567987517 639218639 264942686 924284211 224170135 703079303 676906475 724848921 691779959 826746397 836702920 979680194 617600416 855279757 67611496 362768244 114395995 506264067 572412062 840533229 819567199 924702727 408569478 500428557 255618929 322160348 163189617 968226877 737711321 962953376 988260707 994740286 462725460 979812072 426621580 574374511 503367933 960550392 71734055 503425590 636788821 931425396 762226659 771113987 975236863 992623127 368587931 873905924 577572295 914621086 598377888 876863847 124130992 273833777 115730480 969283946 95899855 813997194 804912758 939782016 480145377 988684812 66488440 795026856 396979831 467693251 525703474 823710772 820135901 973941332 506110478 875682173 445159074 625554919 825119143 941480503 404786343 683838330 208376631 482144827 622544244 958824196 448598853 609707256 564932169 723993934 70112286 618799761 359240593 874235010 671813592 892007609 270063006 295186858 70575306 735920889 801884324 922133694 924619102 937942114 707623627 746138766 879064964 913108921 255751523 415300339 632085828 837501166 425115666 730037725 682510475 708236921 358373130 657131366 823763429 934776384 610498019 818872926 807705035 894325111 401477522 802861874 383697913 395036499 296141637 351926622 9633181 283841421 110660202 988118436 308438141 698316143 456460907 693261871 968088370 986474788 485351122 587410365 302916170 628579286 604796813 691245239 840837333 952477249 396233734 443156268 90119834 268375720 936336623 940163700 558416642 630159022 461837731 859088012 922210081 938550417 22013282 897510297 77815829 766171046 321706539 931908716 582533473 708388331 988083841 991217114 362746443 946533226 386924342 949128965 452373492 528911323 971217474 999401432 172565015 380171105 493394852 872782224 445874976 796969165 819462726 907151827 994782694 998080402 805503578 839405500 868250253 919080802 672248791 714138369 362523505 456470751 961133081 976924970 925086876 929713108 688687961 806016872 849506351 907825179 502155744 908324971 925713395 933436363 530436852 887459427 255729824 405720753 588330934 939826734 115434613 271212929 626223664 766038272 152145826 388928188 455309120 657992850 880443973 955275146 492486395 696798489 550564008 999966902 519987363 567483980 416794443 838630241 308014778 436567582 945233571 976567712 151344762 197079921 478189461 518112272 880719681 977707181 639746615 694080510 992187451 993794436 495967925 567990279 917946950 969863815 944078920 966734686 184391142 483240385 731251967 915494033 280162858 311879128 911676557 966149311 630102824 976816699 617523153 619273435 162080925 265715901 597468853 858864513 620396534 797117935 537361696 634363081 18516810 634159983 947071381 983128457 841370680 846989782 367215763 960939131 329570835 582934077 984969256 995277055 506877303 530229495 19789508 856426386 317437303 953174839 326456101 798732031 826155469 878169060 521515522 943296341 523757856 905559824 967094515 982360660 328876232 609195772 519795146 533711602 80906560 112386706 115202029 656880210 77886193 668580741 46985499 949921201 963395289 991558367 512933486 996514620 55485029 654522679 476782154 861278277 25456724 893631050 410409961 999973671 212754916 964425111 811103841 937304874 122859418 536544931 346018285 921334266 712663585 720809791 40154844 431462920 375839188 430006494 229116490 657764169 382360881 527832237 299330688 836832194 255631744 936216858 93387445 731358094 766914677 864129810 936744360 944429341 80427777 215853722 208365138 721795546 238141572 697488888 263234282 984129744 651754468 841846596 154030382 270083889 379168819 969770683 199573876 684327417 977824646 983242899 955437294 963300958 826772702 853026674 58908256 176410451 765942789 949804588 589432352 959957840 522687477 964292277 160333159 782038533 662490183 870575500 841319288 957041291 259397900 354558986 221372633 661326838 497527852 664845102 620956503 789347044 461319370 586727675 875830012 981440052 319029206 478303491 295357139 582018540 152358828 516709470 515380725 864869078 541481383 934187289 636918255 821378191 726886865 813162984 348966570 704431562 110546077 142559511 966636322 986624024 696032266 796726093 836295471 883395580 709741142 947155922 919251411 934497385 25322332 246886527 34577188 917989273 899963175 927624191 232011051 295809393 863204441 908474919 256766897 282975967 996316797 997695222 203976321 586478743 500291110 631890841 168965429 910749640 76760901 241673061 34527124 375235551 667686856 857244817 17522749 335380640 53915051 587974423 448833110 506322907 954313053 992049274 16262925 205523215 201242585 612284796 200071248 838581963 220849700 882875404 774450429 915205661 160747839 595970531 620249879 708949560 205160416 663131433 388518289 874476201 280172240 792754326 49613263 755207667 994742827 999507931 240564843 583119045 234868829 676677109 635017506 682504170 850116375 967516294 996774933 998728353 252863622 277614962 167815254 725840971 15202342 137244530 97091242 366785883 527948744 974116852 291506858 802326094 978693213 982706449 863580019 902413021 478959390 978092251 222773604 895272622 230230489 575797399 907368340 969290036 664219377 745007153 761941128 851613914 309255593 386964595 651149832 878501761 894992202 959731047 868289308 977711526 900940528 932582806 112941557 610603979 744838551 950059660 160039832 995501439 161626137 170329137 232163857 389306911 742690061 832638027 650779050 689911894 710303629 880345840 305900630 881430790 440909916 694849985 148965168 456046385 972447354 993179372 687393422 936792620 892394359 997790086 744130733 976233964 652095621 851809245 150742004 803227019 12720579 585422780 522005316 899315871 792929925 885897307 322374143 578413068 612420058 657216261 718430066 786323488 155602118 174371160 714922830 848380726 68731315 185634529 336588910 448021966 632724623 762741452 307067961 616188685 501742111 771667431 976754551 988854433 110932435 619960521 582287902 642009746 602244189 767839448 386177521 747929555 283760542 694056123 200659340 677913930 825744351 900908428 451400540 485035454 950654765 994539812 876360070 900744026 361058322 577517413 803917517 923276651 204733261 828339047 674881916 718950864 848235467 942383520 952520900 996036472 299023912 478797357 111221655 862308183 144212506 294910150 813860234 814794105 260029313 909834407 910678814 952371306 390149138 508511316 678888454 929765238 193049156 390601058 381484159 909397905 532548218 712656071 401469282 936621422 40101752 84518750 201407572 640182505 281849313 740120581 948319028 978711914 415756547 494215036 431302561 516459965 334190243 336099980 319331444 322718805 261597709 523415277 296333629 364555151 295421443 519354358 659710151 862234790 612301323 906138777 597106064 967015422 434635068 624295812 314416081 490740116 787413881 992933800 222699225 652478555 209106876 782859703 267415453 785188382 269757928 396985794 463440438 559299824 978459661 988679055 82219817 428284079 263692840 300277883 848388063 957064144 81012841 215285945 341561136 765947317 709879292 954963782 223232064 424117015 21381271 333123110 918120464 950304525 812900826 926465270 749791616 952685580 972544674 986951858 652621430 926297164 525177936 698741410 210910545 255894762 609275839 886745534 434313543 479661438 271345860 777875301 68754216 505961323 411192006 418008952 878352310 997287466 761693959 802719302 318153815 647961621 888077554 954444581 188665260 268632401 881971742 921370307 497032284 830168596 508544179 609914077 456237455 984779203 805008933 974306666 707654795 933120064 586061119 738951654 128355895 926508052 3918799 368976428 730832951 847608137 235205660 895721010 432988547 731336727 294666436 910832466 917854193 953812182 258079081 731163158 884943913 982234656 848525063 895464467 629730055 654996120 63176926 116407085 233027119 388505022 540132705 907945983 880821439 984258938 449425956 463404910 974598203 998073865 977418018 995937289 340750605 611901805 896413685 968973050 25055085 455910279 664093459 964605685 483871828 993442054 530695032 744668898 197882530 981388388 568001153 918193937 344364148 578501908 559087859 917330756 440696389 561834807 582868675 706551528 632939291 686554490 705787209 735985041 71087505 932481228 118971867 815064879 243321693 688832662 988324299 994241676 796904398 817641342 940507205 995638275 772493997 782238073 238393525 857724985 49244700 596828019 213366358 216007774 43758713 103744121 247297585 939963192 831688814 947131043 722093693 766530757 296500443 493330819 709644235 770828183 762483732 987937503 909167640 966389263 425767783 741890045 349917875 553287541 431598760 556179795 435098738 702121576 254986265 657146155 9863942 383569499 904579830 963120556 927629216 938221115 43921159 784069597 780157113 813925054 494611823 951425891 714435673 769103745 216881383 611719660 617537348 903936134 860778106 926334762 257812155 794257351 192285454 974397477 538013185 566287505 993251854 999255959 40788953 361226925 670677973 884152945 403323982 598601939 491371836 600116026 810285578 950161911 517963264 836217156 296356183 317445562 607251648 697415332 162573258 327080309 645597769 792737341 546699522 733045621 641554373 695283487 556004245 687028450 383061901 916417703 877124964 945694989 760147634 874756782 72354695 980641085 225112034 342977786 127377725 142465520 184336410 431934499 33134118 57438340 111790932 922566398 193333430 563777312 14072530 499101075 806242303 850278402 609793014 999410571 558764041 914968033 613108296 738228449 319134683 981225834 322602685 932725135 678817038 850400437 390248973 419686797 695556830 886519089 969895129 970390651 280134447 955736939 791286197 837809179 271876966 801694361 671441427 677902723 805153500 896077514 245763168 956155550 209918255 317480617 808159623 843587379 806900966 812841860 638970026 894161722 197324870 736123617 773235343 861365773 112048118 652618417 609397954 885671348 606711206 886168985 191369402 575826049 47848747 710584436 219338143 780825361 348103013 453924008 972025575 985966064 387347534 424395894 25444897 143439090 457720659 819581611 503355272 753387777 507513705 642365301 758886657 957199053 670062184 853806634 784325979 925324388 575836592 619882618 911022533 946743466 29577590 624444631 357898808 378793853 5228459 699882939 602329954 726329189 284023103 641414625 264236009 541618732 618458273 946338138 65021368 709088836 163424621 689427223 14039624 797969863 94588459 594265630 77507587 451552621 915804925 944771809 394102363 411683775 520455829 938301327 720453257 819150088 38733386 205627361 561411021 693537680 118942183 422732344 838519141 966340684 823671368 960948499 364998631 821313401 803926664 870710869 310047369 654093871 135421391 208897052 926579110 996736330 890288634 975746794 521071141 940217085 28715026 129768152 142027025 357910874 601905525 635634896 837868267 915524156 944185709 991926424 998636745 998849410 267932091 989530712 294793425 850726367 457449934 530705538 375685890 726400724 65661284 659071277 946297369 985180207 491285174 702834841 204509027 899558521 437218678 689652165 87928985 839063837 447139144 536241728 748931464 818268652 643465010 702800996 366433027 868770169 981434096 988223936 158301588 400660870 658728054 733960871 275913377 714504676 969156041 993465180 634917004 735202106 251291484 738341835 544136654 764892930 68573139 158887480 15883704 375523098 456180812 822488097 145061615 425835102 442722232 525562682 506750068 532938421 849039306 963286566 582518604 794427295 723642334 832674328 947311526 980975228 306739105 666534468 719056325 947552280 869255523 902949010 474653234 480582124 307779146 507164322 809540072 853144114 72072910 764142013 964500930 988721356 870878637 988572368 399683529 908254519 751025854 994204267 288892778 960867668 513968876 725019117 421590231 608590337 704123075 857768854 719663005 730072841 642998895 937163821 866717485 936354482 308271243 799441470 982881617 990656563 466788597 849311947 886446626 990153173 998145059 998914467 281522124 740055231 705822773 746833922 693336049 890081989 90970800 668223578 851530762 863765698 965023168 969717073 454382797 789309249 926703486 954463154 606018748 958593465 88037106 431841425 340536206 858547299 123702383 727908713 430803192 436503943 722648397 783344579 493138344 714208491 531304510 799561277 522104366 931349620 526082400 855490992 777895660 792988133 792723416 869571190 677158711 927274298 157116530 572457270 962455045 980709671 552925884 636041945 853464053 928199358 784893376 814082109 776472822 946379299 346611401 951549198 998720583 999549845 903342933 931285085 222056151 947167967 372774139 825323946 176303892 918815795 727523901 909524119 109585125 674172270 770769060 961036258 193824473 708925311 850040728 881861875 488441219 534194432 423310459 867569416 880233204 965927545 811065081 930915842 602125241 626975412 473531475 765185210 136400134 518328325 809456136 992696892 103749406 125067620 111633292 338715262 295943524 531703816 868628455 919982997 466421781 547687884 818754835 949334090 14028449 807837367 712816298 887018414 53276166 981415343 1970466 896722366 945321350 947781868 936351090 956179598 747386318 929259587 80231161 651594640 414244753 848585377 364562112 414410100 359347306 516051118 473810570 994322561 870347991 872609434 742641233 790340435 281661888 547871263 245737472 524122720 292769080 930950970 133842819 150919320 33420284 296257205 239105159 507421157 812126232 881444946 764772011 981031036 238683001 835495536 79031478 510585394 218970930 535972999 859851104 894433525 568323717 637966815 20885592 935874063 402991419 451413000 685461125 696975055 219847837 637154763 407899646 776905702 178566633 382195813 381122518 889993841 496351583 742396705 315261077 793091464 298539395 480058302 525485214 615393295 388171259 540763291 83863257 366880658 80474245 438278907 154425587 771453675 149705683 774900203 780763782 784524453 868625772 876051950 704397585 704791504 865511437 881899581 416744012 791227601 113375282 754470563 678108872 709762218 926501652 953133536 697113914 873521667 498411029 539202607 264716559 299916579 581752675 725851664 488744318 834137336 409127436 613164748 880235479 914954252 410048039 554353361 509848976 672547247 491507803 989568791 661052223 842906700 809800370 928964050 696288459 902101295 267441951 997174526 939873218 994507355 961363314 998946049 721026412 901765240 887416349 902352360 282343946 632997737 251553815 989584449 770065157 782479546 998380303 998503783 54771229 338087932 217398550 895449545 239651434 668651996 480571295 737149500 315208509 372532260 344752027 725570736 105238987 546580710 890038925 955627714 82037935 85009206 217257692 833188311 699852634 737052695 230457103 781662349 917063117 934723542 414940917 900479310 826625772 948046076 105229952 847682507 999664265 999809932 517929714 959960647 610426596 994501786 981092355 988680411 893013094 920387658 315882025 376965915 53532151 751641578 329824071 428579429 181120779 214285431 677774474 906353511 143176797 960349023 443407880 984767086 58250252 403978252 904216975 981159725 617985171 672575979 251000102 806366067 998758915 999673641 623266093 668470792 631070228 674288541 299003431 522929326 698120290 953242296 951391957 967850886 735682674 769871178 253112650 323601083 884990624 893623282 476123171 948748819 784352238 827789063 73318549 279376922 747328868 888495138 493660083 619052392 779631380 787197363 910657557 951148329 272609372 685190293 354498579 847225477 661073389 942120805 429370386 701105613 873300894 946026266 341141353 506427308 446344497 635656985 538775552 988015697 123675577 128454783 465930734 744715783 77841882 996359903 830833901 978548254 995698593 997405428 526825756 685888422 786796359 833748581 22618426 255545265 587652142 817168130 191342252 514398816 324287325 529307234 345721546 772850512 342284045 507601946 308578133 383924679 125041656 869826490 458033159 918934259 306644415 777467106 258013946 284662028 756681309 814707288 428402745 762625159 646053421 783682700 671789758 835449914 224325579 649307478 678094841 931574889 953399397 975265214 405139089 923560557 902601894 902847307 933723431 989616156 442919421 474788376 487921433 925449063 642062815 759421023 278197729 688090554 119164406 559428594 399532032 731610943 591567211 927282848 742657475 969911351 302842437 636444031 143390942 672496798 834827266 871877685 745807229 767698619 990800244 998961216 800686927 912623722 511731335 844667884 484085369 764940220 483518370 861086160 967337059 983006796 424277854 631171042 360497704 557572405 147180098 383197031 46964032 602030946 115974542 700627044 154675154 156213296 905304765 920070428 585117467 659575653 174872205 917478543 747794803 975745712 349185806 601912551 271806434 748989271 872169252 992362863 167490332 438121033 172076512 465436941 910207047 973709926 579363206 902815649 611609100 986394788 122401250 655443143 559518269 775080718 614666159 766456438 320011099 423888961 826943531 837729838 19696198 630323529 407672010 869940055 904002850 972696703 731530176 761948058 684754933 965449046 687189471 861331764 882092600 952295219 758833984 797023455 469671502 966492400 960639764 965944733 810392179 835934761 569133272 666439516 470089389 826870808 234688717 303932372 862007505 932873045 118016047 826507971 745088638 872753738 177106951 311599521 833301852 905788818 722543099 925271450 614718246 925440656 771176062 828091076 886920016 911439589 615236234 861980690 629387164 977931071 720458115 758265663 58197296 715000676 83829602 352905259 78319874 272299304 418313279 684418581 652529631 797168966 9158908 833884484 520627056 654374513 365379814 494035588 707343196 753401598 789469218 988478686 194152936 732103095 103218909 529242580 203960746 635580360 382766601 542367876 182615779 861141682 293438659 508913321 722744845 865054916 643051339 685496614 470099906 942849732 30308750 653110604 408249547 554572795 594560701 689634316 203028774 429294218 814469963 874920058 63285839 861599205 964342812 970202451 334999267 438116285 149957954 256015975 330108378 886443428 212761752 847855706 365772486 486463069 925752224 966576985 957177771 997688290 373465900 851014735 997388262 999274263 3200934 892221852 286751093 896799079 387807022 899203688 486147395 890345518 735106193 916769807 66003057 206642027 398606480 402451833 159802387 593878972 838855117 957809246 587469460 744479677 70329713 550777061 358374517 613209206 448691880 550095316 28739560 879156904 424841169 900639998 563531601 786970197 826391022 990216306 453161504 846278141 69189506 272343751 580235143 730138199 864442823 931939792 673793437 842905411 422015976 447553825 903061653 948633585 796183505 825537210 717937208 873491069 951252355 974459370 869898940 885434461 181705337 858454139 466128469 875075509 440517443 577648593 861103258 944544967 770611883 829190401 164781854 446398026 518300072 557850293 904939455 930087138 96276596 451721240 898716521 992684540 500353771 529830994 939363090 971794920 114976373 575051212 189735286 839660127 115220368 485035799 996339817 999022953 204437339 323456905 150809598 329627939 766608834 887865577 534949706 778042415 949496242 960293652 992271469 992783455 506152541 870903838 995432427 997175548 634173783 903796312 10418478 670077475 113656940 157797027 361539719 633697119 915122304 940752223 939976361 991322969 927369475 998794064 775671999 983720440 532845317 841231874 885128682 932026735 114450314 990810356 123610433 353467558 504193002 872981314 579315789 676445443 758938669 926350713 920826236 992160284 62238915 394021439 986140496 986695148 379916780 557389698 432078659 469183260 182152165 517589335 588184475 841014314 244450101 728649449 545400706 943313292 609870763 623239748 489174883 784351192 649300508 959387497 670718800 831128020 153370072 182685227 150649382 168443357 835544900 881618907 730303868 764242552 230051897 260464350 19125033 267366720 770664102 855510326 86892305 954421957 482831754 869417247 774936596 951233295 77156569 146033142 808105177 875619666 427574697 801067245 338848810 349819208 454262084 912792999 473540174 669886212 946847069 953745425 531179149 933005442 811530096 975512461 179997360 958475310 342937737 735414366 59680403 924738741 414391449 441412860 608107608 819454462 957818086 972171019 199240269 472193297 107853757 912757581 86189169 929637729 688297389 826694446 925087695 999506503 571484369 588386715 985562155 995163099 100680660 151810502 88335087 821226327 145364888 416017926 10542700 171632665 170948661 899188860 469214303 617248362 843704022 998846228 724157184 745422523 328595653 586798327 49680218 407630488 194725790 619724662 322023691 402446092 159628123 381357284 941812335 957916255 960310840 996588429 125115676 326322240 780572490 990604200 712995835 867136900 36409424 109464356 188172116 764975484 869482207 869777704 619489131 965170807 53394259 266979198 798272817 934976189 824206493 828706916 646675880 978000166 388383881 504295938 891530452 910425998 838545411 918287870 560785694 815692298 934285983 937344126 633647571 800823129 759758375 802582755 147964784 785323252 599492045 952613685 962358545 987367907 491806580 641932054 662923017 887136319 859039080 935539282 367923520 629351917 655773124 903326846 574045738 812634653 269468970 499722263 420470972 655355197 132358646 403303504 249206066 412385165 146507971 622119592 123768029 973944622 503377497 580477814 221397199 995671607 30209595 964535480 522204799 842463093 68897316 776023701 253787669 933943532 83129233 496164158 743698995 988312479 751873396 937582239 628340810 881433150 823740226 851420203 916692708 977268991 417354359 500339529 703516009 714145306 446882779 708613761 421696019 858778088 766034911 872522391 853368369 883603990 689724353 732957869 417310086 966512492 48853623 94260242 590811626 987400232 596036949 925654158 144109422 326538482 224654718 383633217 967297408 968786465 781594608 898873292 518068287 565317771 801149438 914161272 508049856 999989262 880863450 882670432 595018427 717608105 631513535 718166636 796086309 799808291 15787355 403900616 939580263 978296047 798478753 963323871 431866278 774136976 638638799 885524134 499813772 961935660 168581331 562666450 766223141 767883510 620473391 941175649 672280449 744311102 312819746 829228604 391447063 411071641 808409951 977531124 770513858 918311171 326699528 945151100 178223265 223578281 609549636 722846131 746042762 795630512 709972506 747366928 103700427 789438123 774672144 877734636 510575046 741701347 757240785 900532751 978189703 994480801 752615629 817942396 906196621 991733058 372456359 641990589 652738579 695822347 998458957 999535639 522122465 745819944 538060512 929571734 810916231 902993877 32599118 843424500 790711444 883132081 702000851 788600400 656668477 902861936 194933733 829422797 871035638 899381876 409633972 775062250 10489574 114236592 341741997 879391360 364209086 593282101 76071667 273800097 284977086 793662770 896827286 919305718 494364614 770450139 997600142 999994821 115945738 849917626 72444119 146422715 593326884 615657482 803538080 809600571 543950820 826379755 742130817 755330255 136893050 754415592 319660502 843976026 44782253 519330129 352013171 701647042 553109313 961421082 652753192 943302855 417857689 935482714 282550515 839807980 682053402 932218826 665377765 967002839 734357752 771660956 972518180 972833972 581429337 792025875 566011632 730598307 123346811 999161706 142337029 195797347 832700201 851047345 821856887 856719183 532482417 802503321 680288494 840713014 56403800 300152056 777345598 871155730 932219493 989252800 268275068 399487543 280766372 688209470 541287113 909709166 420530038 473594257 606792125 787967974 253455494 743203257 124348571 539145628 167612297 570093337 212907764 611635852 143337956 165087472 870949355 961109332 60296742 356581642 888710759 953471637 13774993 977295587 48243385 53370820 937212841 987773061 840672210 915341629 785540625 990845671 7014670 967203844 159719350 278733215 676227496 995510760 768317947 828941746 538210011 990913629 897005087 973446063 977029151 984521200 513660450 977177821 335448302 398092686 370480353 521095658 703902511 889081316 556685585 605425707 717085848 924380287 340046988 668801752 752283093 909605463 311307249 700929544 48407098 927794839 998939128 999519703 160423604 333547181 148169203 249680489 157655966 635698035 463855371 759041714 920165768 972300947 137740004 575066327 716017213 794165736 361035006 810550751 772623910 947287688 78246992 787438505 91847936 741032250 122271417 351213544 159252562 949135950 757604938 871200984 997774016 998810856 834091567 857762571 471933961 487422228 340965912 642212941 56483476 97036189 438579926 517154128 316224368 808101725 714481564 737190871 277260038 294844273 527056998 840579245 642847768 774697088 340218132 846840362 710431773 980036431 164145510 674230389 491117519 949353539 286201741 583316774 572336081 668509596 977789167 995588799 75657935 376732307 85423155 246888598 38871487 125395527 488607652 771550487 39823486 522801625 417041917 466289316 91268929 552154532 85972238 670919703 525192546 614703910 623679453 784133166 187114726 334548291 308811228 634700833 609330624 925349154 501927185 844023736 803662334 837786847 314356042 896999217 234637203 912062308 274481704 650494145 1384867 909978303 340866796 456113585 762209129 783352881 516185628 536988967 293893416 688201785 977573638 996299541 535854894 754634580 29101846 197107948 370078767 728152528 855580789 866527318 183648183 695009696 67989507 849216273 192622741 566559068 795388236 872972622 28849164 457224956 372802127 980850404 962768876 980390876 836619123 852987933 770476565 852971722 631467435 878278318 276396866 948543038 578164692 873331496 667799040 987658867 523417924 696085667 411367602 708103776 401962885 976006111 827481083 876249668 181372676 398944608 26730998 433789409 268703752 696928489 202794793 852823619 213297680 332035807 279361534 620500696 967085555 987800544 280993133 483041491 632015781 887293795 758808798 843931504 412643068 868539164 943042483 943513633 532162432 834464043 357310705 969493551 109567362 924138073 765263752 939909851 738138996 794438340 54761288 399763373 957040277 960439682 114300814 390609162 4772202 784011429 801650580 835850813 688175799 875920209 358632182 504408940 754349 775642922 192795418 477327127 145386300 715269826 463010597 729759919 324307555 559778634 995579261 999967028 213279680 326995594 679319627 983119735 840658744 954625656 74998637 619290584 224509294 392012138 966439375 976656622 142006855 983774760 604261674 847481215 551849723 712518141 858954706 961658863 192629655 572196926 824285702 918093995 912104709 992712014 920886220 963375342 939684171 946053631 936481063 951918268 741232001 802173685 612990897 817308994 21060705 509803949 818941804 875159687 265826879 943275020 56979919 64432087 968394205 987425651 309042219 798580468 830500399 890339821 556650339 570420256 488916089 674259868 899652188 943554466 39622769 804565692 267975915 283949175 398754589 598176198 799237725 920676345 687632373 986107726 502068127 950673382 533807398 707839665 737220532 760732445 761705235 917836956 584834204 800718111 53131539 513268603 499459398 904530622 474337259 744942110 119220399 496485900 553286049 750977624 68609245 111788085 935668051 974936848 878945022 900655319 980932272 992929959 471003615 871256893 64991813 701879841 575985154 935033030 90917646 103170469 470703225 593072615 966180916 982426047 417392757 502984342 468179516 946945610 966137647 967529659 842253228 872291136 974419363 976855670 603737357 970507776 737305518 851622622 336271249 649253141 530751052 863729417 569535289 811532707 4420573 534784410 440825591 939833664 647874285 774015819 792020305 965098937 816616082 821001052 93140613 769037714 179345141 897983050 41940981 274891396 180346129 997415925 145575626 780145211 257208442 360368108 756639776 796856031 723797302 849546801 739481952 964634823 310840136 765754132 969876088 999397666 60354289 818233488 643972835 941411378 866352563 899676706 837069851 865555210 350592099 903455585 147852951 596505523 110783687 477064445 782216356 849349809 116292573 492955096 765261734 967112525 536375121 862148426 640772956 690703818 715294059 983615756 834060389 970033172 579849204 854111572 53775926 674594812 67591159 215293606 686390150 823537433 35013101 450912361 324413947 642472913 921677591 979249794 963420444 969560259 886626923 907483847 131335265 454870593 666958883 964941540 905126381 946501900 290955723 800215025 21124065 423521973 651828949 698799036 12548954 491826039 379482040 974239294 339522155 892172236 501144386 704946802 229029880 769617306 895100052 928952764 242323873 637197984 557843882 587038926 803324792 830988904 313752707 955855706 586807622 649693913 213203767 761027366 544138132 992510220 980856801 989018393 603441114 995032364 930439727 959877494 80310060 262036645 507789814 625719320 281105762 904968755 593620229 848551358 944721225 964229566 681972286 752546303 862695424 904514376 94982596 945685882 6959903 623827343 659251255 798478192 303540031 619992373 76568005 780190460 577855526 755412344 373872312 730254161 740173909 742999425 22337420 981095099 642733494 970231258 167983300 780016148 876398758 918753773 15259060 850540015 175353680 224490573 813889329 855558664 968516704 970087965 457370421 786183375 161484825 532855569 222231965 368812363 669181600 784015229 554752325 772154551 732674990 859549764 308857582 767519700 749068389 772392225 531470553 999857218 115093015 123145062 554194459 608440170 766806017 931916258 980951061 987304279 271805856 891936242 545324107 988199377 861100438 900323215 765489051 868695353 195552360 575982647 970200370 998018262 589816112 676658749 370658526 658995208 974703198 987238378 818540220 893196782 113859354 696597285 761198860 821058209 778544303 854921759 675884590 943358673 737873605 764814848 543064887 546094145 494695182 916825065 377914623 443376637 274892328 802459632 771595585 788398383 848742997 895495938 315150152 558085901 405415149 893864048 420604339 612484514 345459761 639995150 553108160 870203559 118740320 583153800 775220119 831337473 237659390 643405167 3220802 540999022 235806307 888157641 980222515 996380832 350746875 804360235 50273886 984304349 768918552 863612312 787836367 839414783 78917373 137247177 124016074 731419314 393441191 880916752 572376638 815022282 761610890 797518921 132602788 607391758 824697781 879341460 869228576 915270041 127770611 485138247 866662183 872773656 15905385 233996769 286462281 989894665 69481172 785973171 816850478 842489065 100021430 651347234 201560354 266074248 528168893 943595001 396931700 476750473 766197931 793898528 870498138 905962006 210019696 675609669 129065764 236994312 898021180 913816287 999425200 999984836 612472223 999901843 200465032 615370480 880923238 969386613 42652466 596468343 470803708 724054207 342944861 881693488 953223970 990346837 894115009 944682845 971316886 972479592 146363949 641337802 425851592 898688163 439817243 495848213 85722374 156284919 402439117 694693904 341506365 893471279 832171834 840237129 648639065 814158768 743738106 852055341 166099570 648433996 106633669 499999394 245757431 418530651 291928853 939525102 866094342 871438006 189048921 527697058 844301755 912401156 63734511 338626109 834104299 977808713 943721649 999534980 882916639 985993355 791029028 840544281 716408156 719431255 135277647 804731992 276634647 490980487 738047639 935239375 55864849 463574500 914338751 977526886 273785896 840651164 87784028 261197867 832451693 942308975 690247300 975875378 177988982 822236386 157627725 184836667 599336820 859122515 625366488 958199186 877259447 926037253 882385116 988469557 231645063 801174542 309332780 743127763 122043491 820372247 313270724 941783819 1373401 766333547 309886226 322098770 793338292 995812808 690041186 691246677 485765131 900013750 570479278 898084559 873160076 958795133 325651917 660849654 797910092 920474703 503918870 645094451 564925651 836040078 131377116 756641530 927229721 973146164 650237634 772895953 536373100 723640271 999580174 999724412 821266434 960811559 488720096 904042390 335678942 514613030 967098151 993901970 468050703 656928575 108666327 614805285 960289731 990641672 877117162 877450584 44544551 227772956 590799894 901096202 685287029 975352530 289875375 638404556 300256078 416462295 601476204 648266331 537665873 584795591 977257969 979119909 996935667 998780463 900296164 942054201 326936319 720749419 336999098 671721573 733032027 981937515 589259567 992987648 359923690 832078319 574056671 826391395 946675 599896660 400756044 573117153 471712961 714541852 787848564 983153004 444013789 788163940 374051181 659190628 811640387 812058185 92419054 367058194 46152457 703757081 86753233 954391501 660322906 924484988 290514888 724075480 783032412 941421359 333048443 768917095 317309216 514293954 414018548 717371540 379722072 858865646 926489168 998451185 526771548 925809622 350904947 834450270 728010621 894200135 459802969 691856382 401152755 496530962 325368980 736646099 196977796 304044525 257448023 684094285 615854483 865164675 522261031 910174095 889223972 931122330 176198426 314511631 227468634 412371602 856735724 931007035 843517565 900121915 16913976 725537381 884063252 920490567 723220434 895249747 825468829 897311563 404010056 404970700 147388788 602801063 208298312 415210659 807871297 937534291 112562031 258283877 537980868 562502329 990169687 993944436 877321540 925564858 343267767 558376346 120599196 353042354 848782 358988199 868304131 869685308 77396920 589152126 385512414 784575010 719022807 777493691 591414283 791644378 201767386 534241901 438208859 447455231 662765171 911756885 431930070 824567827 87283814 113786861 824743647 911846350 726740317 899685210 55993538 694675867 223143861 433716289 628867477 942589718 770373993 963941355 304846464 853411819 492562146 532861125 148400280 866552374 211471713 397151986 61711380 595701896 125836554 737744476 449378438 735487489 461526674 652236737 553211381 925229787 729991251 932428993 913815178 937723721 253808861 730916563 202218447 391717163 512690673 904060381 429863878 908094538 835227625 855389821 661825604 840187052 857194428 962645975 808378078 971162754 973917298 993246067 342461646 893325159 574723953 942004749 236241664 596693632 16597558 228415445 860488469 909187088 496832964 765002249 401465455 614465894 744186686 873340121 573397986 923220017 656825152 722626894 514614025 703024234 860716322 866758426 463973073 869007056 151984181 634690958 464608571 507504437 532456276 665626471 551072000 791398749 512289714 965494020 147151376 695674858 228343511 395154029 221905688 519244726 448143883 963373768 383135455 704706615 707656356 874451111 477679681 973878078 140644460 648211717 1573174 167539474 967466308 998084436 453635338 983805690 29178047 583276848 146694037 425278600 764006485 862769542 384366353 465038904 669271019 947284753 26353057 626935583 848060817 934137889 755252847 861231498 311918321 394321006 616379335 739755807 852144320 951923165 983794698 990716175 305131816 383449275 181187246 721839315 783964626 832077469 549207429 714933901 770696096 969913864 182590893 251781528 295718626 796966176 728051365 747662704 810488278 924172157 694955282 803359916 409098509 423350433 286524656 879806576 743841797 874346072 355372008 400072387 628295878 900215738 386835669 578413363 520291523 852331111 577184590 725003969 463950506 758212190 419921088 725177146 86357125 974724452 154462002 354774292 102532261 324684688 948157293 955478948 222263300 284403618 665398397 931992862 293832690 325202077 808712053 971441730 745755394 894301287 385528816 454777653 577307045 702041625 774432166 922353964 692095602 699204270 434091624 661770831 249993656 637229119 292408938 372826854 70715053 515054675 131514136 696336462 630460791 864465352 973712744 984033908 716314215 846018871 748923624 884405953 295855667 333117503 207059552 578066692 561378627 608063494 872516954 902738774 308115730 471103348 430023444 798561714 889339318 955482317 328593738 443123301 916138069 984332085 624717706 952869229 388565475 595785027 822562102 979528387 971150753 990267759 450668727 712583006 749559610 996355364 712771205 829854113 284761485 746455091 120057506 542809129 990274163 990471018 576605531 656442921 911296265 986351468 78126439 927982718 418587250 608448142 612865708 834870399 22175126 662063639 442113009 911905507 896052260 926373443 771651427 828690371 306234300 615306371 462155310 766332419 416252022 767045648 145279732 547020409 822758668 996245673 975925338 980085838 314708595 487294654 773249117 801429249 249188230 789351685 542316041 717506417 709383140 794867676 189014858 356892363 97491881 979365774 947214256 970918532 519543762 638646201 778125174 778490475 38839865 288828655 852482693 866694316 592125549 616075448 218389546 389825378 981422780 991348336 106920370 742440083 852064187 947080599 468422823 653394544 148502731 402044350 172836128 825245998 376949940 819580030 375360839 699554559 80023175 173820573 171416912 297102511 504901138 802746254 768049963 917090577 701868422 786856976 467591767 874849766 172929876 604919511 950057826 987895470 667307983 951852340 914006518 948192389 528856874 782376529 33721200 656013053 99969679 916285119 107972100 199797206 86456293 209542397 921356144 936340809 89468697 136428110 471174430 970621042 849106183 938979007 772121089 836602379 804020789 830571589 843650434 970938322 806195755 915322130 97158737 287837588 604806768 613691682 615977621 794412628 312152337 895821104 503590438 553693038 204214053 813036995 510278305 767350133 52920948 613918915 646524889 773984410 498890387 673902392 176112334 948187984 690155374 873132937 365175355 851813916 291599642 784643020 466145457 555388612 395191523 524092652 873677917 940800195 251268061 836465150 342882152 474874726 583826236 832453846 437590612 871716090 874833711 912921165 324526545 544580976 502497935 580273524 65949334 901375859 652282731 653241922 659287116 680654089 925632475 949978116 621588930 785682031 800157222 925117370 901242290 988404823 262524321 565743912 878402962 902621735 683873091 710011118 660350638 720552384 312841346 531655659 252211568 860513045 126346014 663440658 27187676 334864780 224096821 981427418 444416149 606778049 349318552 626717584 151934421 553776713 465968413 526617955 911287254 980929978 465344829 472438892 791988060 820502192 263216962 440516159 300453621 559143509 374656487 771717557 130778958 363393679 922792325 936446113 797754408 953808656 473642054 635164336 918205209 921647851 870542794 949298615 31928041 222086420 870026597 997546053 202513222 899192144 808847393 886977378 123220369 193330455 446657033 664768967 73009456 591761506 699622181 993905473 439840440 771482500 811298450 944416850 453978329 575345756 430666032 788617149 354959111 858802298 731981776 744963105 884290253 995945042 373250973 572153329 624992055 702223239 931374700 995828722 839657955 880595179 597657056 772779269 126080189 850188996 704395807 838631648 880447372 994902354 96136904 894450060 994443348 996128753 861942193 929235506 377748017 454534804 513115730 541918344 334157193 436224717 877421295 964585559 643000874 839354253 365428482 490760653 61929003 746481925 125085508 812648171 899503770 958898284 745900183 989911725 474444931 725884010 595735810 733023953 842852428 896262678 845106136 928158854 598665438 612218259 127779957 254289322 482331593 833461966 890377870 970007966 35993101 328896967 721769499 938656750 415541058 692743493 272391555 298561711 300422570 751950340 115677509 906530277 720753899 992444560 703357152 874944978 209565487 545230928 823891148 863050717 782593316 795452034 506223480 572838091 750750920 996420905 180038330 802367279 25802012 846060145 28963723 791571704 488630016 753096316 339094418 404957247 841033726 848666037 862044557 908360134 172725104 494680993 499649129 875369085 507983141 784971951 146989795 771112365 315845777 469303109 727308438 868064220 738691479 853918176 67403778 181597648 587012647 760511354 651629421 855790424 754719200 853714248 999594860 999595807 364392068 781799537 291627281 554586477 276737871 585883749 951528804 966018392 821717870 977259215 876523650 971038503 209374793 787455068 232683741 498907145 862101056 929368988 671346694 708610298 77175839 143990607 676866560 914228898 423141526 832505986 257077747 292637843 70481388 600688915 621168871 864002848 230792840 917067878 402420125 910214650 446383553 993399247 889490359 979219386 786835813 904121809 971537695 979578062 71479734 760499935 690808655 713429160 979582194 987524789 483742120 540238752 634370572 855117030 626232496 957058019 3133860 430498437 543948070 651839287 619720604 978664453 480233846 745900516 411335757 439516042 196932397 451012192 821827253 881476285 983326519 995790860 858680809 948656581 973333281 973527394 37908607 274465464 954660000 960429959 680556732 728835430 612090080 631597190 696050945 936869993 991056987 994761010 121342090 769211660 692921230 983399472 265970717 271245292 442106198 728828095 493381275 546812306 178779944 888847910 321748402 729520085 806866499 848072381 507716565 544282185 775068860 970219285 706227316 836788527 926538247 989938641 412798728 447392017 801990132 857411610 96323557 242876325 729147428 786807657 820880007 947358255 217847386 423592760 705031500 740425059 717618008 892640955 772944088 828584034 872377314 936112243 502705362 957346495 718401231 747240544 443839343 898100175 328191090 914302882 557156146 951778062 107512492 822896252 35753436 553066687 127050684 357919479 685932257 686406582 139301536 264211029 87195477 231219961 990575487 991004745 315204343 883633615 666391682 964319731 793879491 853983164 255677924 363419720 297921499 422469019 410494626 519486182 724627790 986900848 992103096 998374593 166501510 583182979 748613345 980379992 905786225 911317125 575987289 862234345 98952 229156314 244594104 893623035 805551356 980839592 684275357 790290039 587434877 934611286 239732728 399670488 508932050 647377589 1515360 604335067 326644429 789073605 471340323 555848306 822109405 929265899 408991194 553697536 364921178 930778721 549345498 773682578 370912480 981115072 645544367 847071156 206269562 923012501 103996663 931440832 494094504 504470516 88460727 826055818 142250189 723974175 289987971 625692300 611231073 745376028 626118955 678824134 93025999 589692626 800663825 913253526 630111165 887230144 359197561 976668915 637547641 883223816 835944298 967391671 848745206 861845104 66864368 326148364 733348165 812824020 527391774 688416761 908523697 936627002 637713154 794855585 429950494 981526322 185265036 376447551 202339476 415362535 397794696 779852721 500262905 908862599 11612011 224338244 313358784 732023723 96442901 291697496 200713858 568375412 782524592 893889826 418788210 638061635 390325799 652926694 671785897 857597460 127158654 758483385 378992184 617407694 97973829 767827020 726001190 939645906 176329760 266549702 839295153 860781572 702541865 705473314 870806718 919312075 811403614 841708348 637697268 842972482 692190832 840252382 964906400 984976871 185312133 348166978 393053899 465161943 129409892 834072602 468609614 505826319 415609355 643360536 561013929 596693625 200800827 607889303 239434759 830175857 625640407 638053202 64005669 824800752 714584129 934033436 557052060 708479267 381718472 461306504 327148547 827314915 641112644 650621809 923186970 929187948 414835692 950365032 797624387 801008844 448993847 612946395 876450060 940852035 835844557 962343434 905382297 980833377 300844097 604068072 783119249 908644866 518937989 838524638 656390482 911041649 878836930 914425167 613191806 872649468 344158463 379266902 491836187 731204438 933697130 989507858 645106051 778285942 653108257 755615050 596634539 863689007 257273615 827819022 321549345 970411249 122972455 493645290 790019944 894321300 286884611 324996931 948225612 955516175 523872932 560321895 958313777 984570315 885369383 895126651 415728780 662642012 691787739 719306074 412922026 951498937 637100269 854828514 493468354 780327704 670815681 937441968 163685852 773239100 821472953 868619385 276970531 918103345 352914221 796400387 451241462 670273277 142282638 664575611 852545880 966404382 689769496 859775254 812944498 940167496 383932784 753539049 132392985 467000673 445039538 693947448 531534806 807920600 721639448 780339042 568788101 613218009 821887776 996668354 898025784 912137474 997605892 998514557 38315333 320177252 247707297 572426453 941879073 968510177 692390651 730506813 228134606 927273236 755438063 966002622 5081045 42434859 528965742 807845238 410780169 477898921 148005443 543224041 710072931 899192837 600287342 680729125 102716756 272932700 300748113 990583271 206096495 738676853 350203344 779791296 569409374 702452606 886740585 984407814 937833424 961295696 248670414 996650334 229953476 492823547 685827750 896238949 586469148 697487338 407947088 510115454 110510325 706187816 141658850 466695943 767180786 785547052 865537045 979309546 255511188 573565803 807411349 996087678 585519926 594960534 886057050 916437677 995841349 996234932 429385287 441055104 692112408 778346605 870467077 908160706 879646594 919674234 199647833 225734476 107570932 521572056 980131275 998345133 438114013 778193968 285810200 874694086 77540743 615678737 393514891 783177132 278125235 710593199 176514245 550332014 57856439 898034041 306321520 802679706 351250346 461766091 61640173 714683733 729322816 768993595 349414835 915640352 64022953 754582235 945832057 984136898 972430867 993112200 897591871 947637505 558246760 706649778 556973889 635793662 481064749 770904256 49044327 74456327 748230201 918595275 785942781 829777873 775200451 948228850 786429392 906938291 151751620 997452819 279982306 707714396 406577983 599388032 972357808 998827942 628880669 722949411 36538808 329934584 435217471 873226591 228837089 369452188 683235521 727449530 483934875 837203102 911550206 930856618 34761615 100697906 435967266 538851998 292474259 994010047 709873496 859121389 107114575 969112896 963566204 991848156 183082451 839520655 250295458 352491933 50479957 784806331 718007909 858675466 407747890 471073387 669474117 858851952 462223323 584485351 667218596 890816102 395985423 942180774 109032815 975041006 351216728 913341222 53753942 752189607 807938718 902760111 27199388 497685780 473052983 987617745 600888932 745448833 369242769 401108002 39416240 417653483 561963129 843609482 949216673 992911046 150260124 538231641 21738420 903744488 169986109 789712567 724413816 905455388 383105026 648235998 220520316 905224354 426241251 899919324 30565156 748450367 625319895 757378765 868781509 963711706 960356681 992242243 751235294 944752326 565262307 854271448 188518107 822913782 544373399 557299714 740289590 820062382 718835303 811845196 464803136 894239535 584525093 768578711 317151792 701650354 522500383 550582598 157066337 919221994 978436530 986128297 517476884 869745988 539784000 614699444 418799088 778616282 426000743 808677038 960006047 981800820 915436996 969137337 362296655 578288819 932716385 964609041 915058454 926939803 844727405 877326864 920444820 986439733 502365726 895025770 476516659 975478256 67556266 640670050 442089475 869470853 545282780 960599969 724273248 844125837 36399040 933034021 944063370 967766240 549525096 563669796 940858234 984390943 414812254 757689811 918356872 992718485 857860312 948150596 855391127 898191619 701253698 984461245 705649215 838244326 501308651 659159398 95339134 996098310 803970218 998337993 554892478 822474043 216601250 621190294 367455306 664941909 853652268 887863955 888136098 980844461 559573719 607020699 555083198 738399692 8831868 976379442 20407104 928701532 940388835 968253272 868923669 904024093 144761045 560596628 747715518 915424085 787007178 893776421 715873696 949851949 71833597 815109781 214748725 701404540 615353033 882089198 708805688 944546952 789570295 918397360 363444326 798342745 747583403 944092992 12152801 89143657 480645420 968903854 781063879 796641638 488305737 632785782 705315939 843050215 485569270 940648263 50020029 247452892 378550146 411071277 337949608 649819448 428683905 965875011 313715862 428946390 213890676 598715222 341419535 537950890 213383097 514438562 831595741 871929863 520956738 785628194 916465868 956067315 10103755 793422066 814439476 959923870 763332294 807311174 813679116 858675150 398459122 849760842 516194609 834077428 432881717 850767353 350518422 474788897 178421184 524986485 29265827 589123903 111970528 860599502 793254750 821589145 50689991 562625167 156505057 999677771 141599719 278228343 644390873 701175496 349515554 638439874 99047954 466223317 531299 232917669 750404351 770049510 69482475 259340816 746719121 969562387 546085136 917704943 429099614 529006331 153296960 804037244 555542137 772814990 698617966 909781846 511185806 580368296 813080199 965562350 483359377 652480961 596980107 699474667 713782265 749390043 880314048 892123575 100768101 299332879 799642645 885609440 276181874 760602774 393422434 474374264 908698152 942627191 771255279 977745124 116913085 724455630 384601042 676172748 288877865 909003443 770162697 799490406 12421461 989512536 295276502 357855346 718745399 878054717 608406398 961130848 853286611 954018051 157275751 567250345 619071651 690409714 112737806 972272063 446414263 796022728 63993204 288469851 14667617 774936519 834891591 997231869 451566909 535595539 575139930 699073722 923878725 997711332 11768900 899995880 278496339 730335407 907066848 935998986 307278687 829345749 417188815 974528523 944133554 998963668 177811190 420389681 149546261 389437241 732202976 971178958 848869534 996241612 207681297 940726772 806630086 861498488 973382328 981576960 920077297 961439603 880053797 997213406 869265689 877252975 98823546 137222412 983508089 985514148 345451949 572415666 519353658 571892351 384120279 913562082 58467418 730486064 830391556 900541337 568639120 748269916 156981840 557998522 612381821 693286194 877672557 967438501 173572949 441080885 285013978 705204384 439600149 901516289 397912937 589609807 549477400 992266698 836002137 880745204 826912043 991939878 597662496 739470569 551018109 777340039 471155363 739929946 191835678 803463023 319613614 931348446 664381516 695438558 23898435 140294425 236248599 440670575 113918146 903159412 694640284 747806707 830959762 955147373 553699841 789913137 838758100 929532463 636660450 772095306 789837494 812153497 198355007 211042173 88927023 914710560 53805355 295910051 217597231 532355652 876960806 986158008 62358801 668112642 15644613 304783879 165169507 599356144 859815292 990739604 757603638 896495123 134008236 705051465 970616804 986042622 683957085 868981036 606818158 934233350 739434048 960974248 587490238 861778461 805477075 878580716 376663624 503114757 369609599 731780900 214712796 355480016 49235836 514665692 589157411 618412225 830096846 973348364 493351941 526999968 809079038 829762547 815436367 885919376 228550422 814272307 887845593 941141066 857541936 957579396 622670657 999717186 206961451 938727447 625913106 946863781 676860072 947644738 149018698 246749304 725618162 933591090 832898765 984195918 960973745 975208594 968305445 974201653 518447024 838150863 998325449 999582645 925679339 950223313 830110581 855395869 42579559 441689108 307105225 337468444 231531429 855983692 849771877 935256178 688317954 830126673 534711608 631606234 982846739 999106260 448664765 936925542 277781807 909979994 101989466 690156459 598232285 820089306 734431436 888501869 735538340 830024980 639921835 711410493 70504610 931142969 228781005 919924667 443544125 913110780 751039793 935688162 997206681 999723332 796968792 947718094 32124655 286979695 448984041 726693950 217107647 552473170 589633210 699900573 685934716 787944702 252729200 363208862 741518933 757972794 527495892 896760556 283090342 404527845 347544599 744068007 650847106 997211943 230738678 712981414 21476468 735985480 922971505 998336173 685314922 976488626 946528789 992636145 582298327 883374588 433382356 753554461 696182957 911453218 883422110 955746231 206887089 729121126 346577374 728081977 188777153 703669537 853166683 918889797 9283321 623462580 810928692 820518219 482688986 701282906 339016750 707542155 73501911 364546566 464066506 599717039 48160076 84791060 514700330 522050532 274218814 407242532 535928400 884552614 123229480 566429280 764460930 994821033 319565704 907148441 407982317 475365375 512020171 777169202 964332433 990819125 668791523 744404572 840733619 848810247 449780532 870364673 381116101 627789089 350761364 879178229 133795250 756957290 497814627 823906402 45499167 791726963 256257531 640788588 873055716 883565791 734601476 804832125 132504089 452393030 997122597 998892686 842964769 994385068 830394534 882636174 70286719 378441284 993703074 998502492 233198988 542507338 892848390 894304714 707050662 837064241 565728907 649146607 346881389 539836380 7095901 232820775 546798973 950707717 432188704 771122739 787489672 813196533 735116115 738921768 505550001 900357455 850578956 988844226 430339670 856884468 398360225 413130173 243121951 947446437 654182690 767124399 259582226 322304240 787282750 907007687 820118177 919157972 452923827 825397858 401671907 701753732 606097138 659774784 484404794 676140832 154462183 992181735 923730211 941633959 982854885 986740209 423513305 578683857 391539356 933305846 13750585 527395547 547083792 608630809 64177835 173390627 892943441 951371076 63434021 184338273 123868181 403075058 196455660 823703193 874530771 987932973 73682743 515582420 97372400 154588415 28601848 389682884 611562488 887085878 428642475 947818309 403000372 636713561 551872975 591362621 24167527 199852708 526459186 584886900 168115793 244094653 66304357 663036741 132393510 882736648 707972685 949616534 308900684 519882463 488234888 650301075 389712526 690856303 619537420 884439938 962274897 975053684 325654557 345412809 691385556 878073549 365350158 713938514 189338125 967022651 253183518 389340987 330036579 732859594 530099955 710845288 710305315 934449970 233127970 252818062 121377960 473705328 499102488 582556149 542805387 542873946 901893087 950274964 87609528 855220257 334954409 502639557 395776298 823427352 202993692 552564485 317100066 449917116 192889916 420208002 706438109 857544229 146041292 911811474 250281397 673933225 143479553 871433308 847572426 855271251 12177459 750384948 742571575 998199187 773105835 775874474 947822356 991167156 238005579 707760264 531121703 539023672 287701586 399034217 992692334 995955814 832478458 870352397 503691232 653606008 570817653 800601109 302445332 722903060 388922931 795958126 266996257 981534323 68392136 873940589 991326221 997872535 317043522 369525628 4603660 396744839 264775552 547372006 372185653 374200057 278994031 685250316 413393291 707875976 91407434 365870070 436103199 899294347 390329293 876840448 688881606 894462133 98841666 133447704 795128787 882273188 319137669 944616397 286028737 547897690 471326591 609693424 412847850 694444048 740639179 940233547 651478339 685612728 749203482 965569879 626299568 978802936 954987288 998032507 278426832 460178743 336665761 395959023 386188022 626520378 484200119 815603016 556420026 984554470 766367009 921942713 653946319 706511658 647603981 891991336 259192788 700156289 69720848 543761426 190690508 283716433 612917661 742088216 976230143 982039391 353525409 877453481 428558701 676744383 461013725 757536681 48440 391315928 632325126 887923866 750140230 983944250 722055650 788697132 818318760 818337230 50065041 885056626 49588585 142354864 840869731 859198690 36482992 502436774 442483976 613428293 494301806 943565587 19872493 329741840 454660214 836030628 326125753 597104084 15452450 335316703 339320649 749557185 588629257 977285542 344037323 661321134 283909078 814219127 104639482 748145111 739496084 962077167 23561209 256117308 765637742 880417390 538163648 745155517 421702497 912888123 29112133 306332560 644350535 943367793 152548424 552406722 632485166 647414389 468055621 874055126 518465674 808894084 721622936 986204357 252584306 776194363 474899274 922796516 646726501 785431902 445296312 806384902 716108070 789090239 92867546 577622767 464932568 923061503 670333630 905636047 802850887 856611477 129640203 862471436 378236370 934032833 132845900 369881360 261052828 309981400 674439072 909709738 474581933 849737918 883680551 904824384 768858066 776395270 286424522 576292390 256216338 934415300 667728772 691923110 630093488 761038936 14576244 501882002 572732278 844200561 983651333 983853921 891807409 985093334 565394684 976166749 867988422 964111649 794899095 891378818 156377799 565920261 391523473 870765496 224397762 957891731 775573799 930154527 252756102 952560886 502221025 851347857 49317166 315282559 972794050 981473632 924970805 969788979 835617774 904560691 664851734 942027393 952382185 952755421 302450799 575666873 784264219 887339936 706642945 794774365 418186643 504534285 598697768 802003449 71440226 121938314 975673535 977894736 710174622 925225408 332765564 743470230 672017466 737202166 591805725 958891811 121963624 604657920 612214147 874260197 414366285 896840766 678932164 804261103 308015963 996191213 851709529 988674756 710886213 745946801 788318146 984327455 211153773 900421401 352204714 539646827 54508569 770124109 476467437 718604388 684264823 772354285 950108797 984045501 269974102 910994555 198994519 823288808 853636112 943010978 38800199 124154320 549013433 584150022 772193140 874363420 357082341 476492033 295103584 765443530 788631984 823167201 258695100 986355853 683110806 979015789 446209990 918196854 203630289 784072474 379389580 707678389 773856524 953828973 872915244 902781077 121840923 394722534 770923260 811413712 935101141 935540421 107752641 235838827 557810799 939494958 143220907 361496543 444510479 535080978 826828761 851593061 754131954 806732346 177928084 697191578 669401097 959396393 110636555 154591417 394912363 744016221 228170421 996050953 174589093 757120246 453332571 477645513 66616754 497988087 870032441 980831880 615482707 755663000 118763047 174891277 840383314 866610410 815706525 857445644 39551691 332793393 471451393 648341880 837329554 892309246 199497768 960699164 419935675 510790244 696561337 894584636 804479263 862109219 813930661 925515863 368805372 410025854 352882721 448949414 906189939 906837239 79509452 363905029 407763877 522556362 430465319 857186533 517311392 519312000 688248405 806522306 902567284 955644092 239386788 769649888 395727488 720002743 505547842 596444278 244382399 306833596 383272028 414060034 957226340 996966123 75241796 592444557 729196763 991298948 330790278 406553254 180890345 881671738 967249082 990242120 173742696 642051850 500970868 744089338 473692200 497758216 601697768 702822853 720125841 870045492 578431008 578574853 619245046 928548903 479912172 786380554 731041779 847724087 353532767 727441590 206048782 520374453 288028756 975350213 785638307 865292983 462168070 670949398 193239191 384304029 233775661 577566937 123340423 629736831 63626351 99912693 864339123 899188026 897090647 919300191 861841020 924959223 981946762 984971299 742886915 833455723 209265400 524841910 176196180 834434939 568550472 793429537 215570031 583310935 550999736 764067941 857556232 879888915 277394916 503423600 538315621 946286272 865118576 900657541 832331665 833522139 714282083 956874401 142936322 222670261 105242381 669464282 22001560 861646896 342958787 683832166 138191369 420446396 790290244 855003254 291456260 322062717 58005164 402520127 247634346 253992981 326674866 905129348 168548262 208286604 928814682 958836538 661406024 674133097 513535107 850166933 914274025 980445520 443569488 696166259 922186555 933678546 378488367 657769296 41178436 743424372 384039950 563764558 306693285 611279352 540174939 971318480 509438209 988384060 406101696 453755123 45154071 513917500 312515277 861421332 936931355 970242599 85713658 859687194 227340664 278827314 648020856 663367249 940617074 950037180 451090704 892898342 117080384 617292091 121061743 663044135 912378925 953366767 44354896 488688480 549142265 552651842 154366449 886091127 146533365 496514655 517487079 921509236 642022235 860094222 17137338 681846884 422379755 997828620 365927428 444068984 56079868 118842642 735011581 899542753 105769107 499059750 753586046 817451951 784571179 858550083 502399802 881173793 623670170 705973044 154559896 206383254 834038924 885038862 927222416 971273662 338002245 853655200 944919056 955956317 558555647 640218110 751397686 843753824 980886024 992182038 216333584 866481670 604108153 623414974 629860016 733472322 88515223 256184730 37784535 288564812 53182427 87372848 142676609 956027951 862493060 981137418 835487808 958073867 588373025 875959071 726431741 800298122 162796111 447318475 845265848 960211033 448617194 863253973 609521096 725881485 532358315 911357267 322978387 791839700 977786469 991228497 97931115 555285051 341556323 426467122 331631803 918605778 489796891 661536808 659463674 990477847 255657522 987344914 460540225 495305068 189091007 942736052 10337850 645299724 116610531 552481261 153579201 519643211 789522266 893447069 935927329 996071370 898528706 901878888 839821685 900427284 7780908 695788227 237951577 241919535 959954810 990238421 479394147 871562356 342255384 740156762 264537697 687745990 604326864 982367772 585012525 906812809 32335180 99381733 352725422 483282839 189857906 578075256 39091499 450244923 131020719 575814871 650476617 906275983 879016918 969529423 617113015 907475820 102136690 904825749 313406203 671324723 899390913 999201472 232486503 296144244 970673815 995846318 495865933 881845860 522325777 774805179 206296253 563468951 961403587 979520345 959821142 983940231 367210979 615227656 41649136 46839424 419781906 516361807 685056934 946714447 784220954 826901544 509894063 927291332 896374625 910981354 705538157 944294341 726986109 789869437 780530774 999925596 100341270 929346336 566638885 802764532 225820754 240407865 751037789 945659691 497103020 652922535 503134509 635722640 834540268 898547643 186775274 601250280 267840565 537961891 556517179 735409503 788695266 856030631 432336724 543225275 662395945 788265051 75303520 986556314 489235872 634993267 522192951 688549810 229882809 402425675 453435268 836304567 240661179 704514282 142687510 206807590 722967517 873208044 432428018 977464374 530418972 589599868 909727817 947639307 400366486 802355671 754835664 799288049 284873699 865641535 219788977 389568222 238712327 698121509 485872836 687257065 787556759 967925599 506918755 901055827 933102947 951352660 65673283 203945474 974148699 996287448 17502428 756460386 819045573 971286682 134254489 280060496 895912384 963013010 384579600 850491171 496092382 976254386 690325651 733268393 226552231 359801212 778994975 928378177 662835566 984290509 999718855 999885827 753402442 810557993 356984707 863906673 455695636 546006885 222714810 357804876 983770039 998103770 584412471 891324031 696383624 951684368 25146449 408708876 865364115 897464716 668997471 856270373 416822053 772944796 600642302 879175773 547286710 690603912 976308090 985265822 159258382 951539796 349277709 556764354 78422671 248391622 741867132 987667589 563866928 987992418 890451118 927541303 545003667 552631894 935826571 970809585 317372155 379420041 540972786 695097015 417152007 535457987 917873362 923493968 83567041 778467556 489467350 977869027 226862188 857598698 185927651 840429654 169298885 558578707 159117667 199700683 178607027 810555868 572997424 756155738 114762533 623491109 106475440 302315647 214207930 417926696 699953747 758104121 904124904 905985542 504613397 758898949 565385117 902426090 33584377 716172160 364077531 408854627 370010179 395526148 308427949 684276226 286950095 812709802 935983544 957753857 306218879 618448625 978245931 998927847 596288698 955648555 334449206 837946685 619003713 761299881 825501173 965850461 377884582 636899413 522563234 983561124 788278813 967896723 997159340 999031757 847234010 932384904 969091066 972653282 831520852 846023661 658794798 945160819 984052186 996684417 835707082 855981998 380175335 683567956 53352116 982384408 36184410 947368723 451670890 773701196 158444736 834543862 836848250 842835272 60026574 447513878 230977629 637406187 568133592 817202396 360097039 853732073 909415571 985570972 410528169 808934464 65297339 81694579 538313649 873340890 242485891 436038118 468532261 722809069 129728301 547904304 347667197 984074117 534884112 795096015 585773116 615769235 873557674 980181530 254106003 633297891 183909243 870640418 66666680 408215962 316051994 915155263 668382963 873699180 728501389 890809592 234399851 892542593 450383704 949772859 165212617 880574565 605275431 802398898 399959777 549524218 444316849 951190377 474803554 620516272 450758558 662160755 986370061 996621228 80079404 923171210 428107606 890259390 985017199 999743200 832784801 862831882 106910915 553670286 534171035 846534730 343489428 582641484 130217986 450822900 754361806 938486492 739669675 786899417 140120194 853814305 428035807 716969629 448406392 704897916 985657876 990356849 711680960 914171320 265325198 558896300 303415196 813559271 284586479 459667464 386363765 990816821 229310217 792418367 870277794 890144385 431333892 502144406 618526091 954213506 940354550 975176177 935527440 994837359 926302604 936671846 407861205 466529028 854608236 907483176 331878784 934998548 488778507 935739241 621998604 919022067 974328240 993563526 461842490 631138097 352946357 741469497 625520389 882612690 505752098 621750254 208535391 979513711 36663272 547784799 574871674 903873968 762717797 994016122 509422694 743719627 330624824 875034408 903161509 951253071 572936823 781069757 255801073 636437855 735686355 802989729 149570644 388684813 921650194 978951109 568925445 940099592 155665063 413307186 886221304 984377021 191301223 485490892 648106022 965633093 376234046 858987099 762157016 884585803 106171252 995562601 292842199 864740526 577442613 955039407 1657623 414655227 469536793 773988824 940049039 984312232 871504401 881891548 486237045 528708887 35933385 769453303 907902860 966507799 817676208 886500961 353888246 622655146 584397758 802150269 324215105 994834047 997277074 998122959 411446911 996575312 818833344 867361177 356753498 528401515 314164358 970138654 118644693 628056335 451427073 903122434 397355056 817660499 471376865 900434013 746641382 837324956 866624860 984169504 401436429 771269688 827459406 970304286 621798217 682296543 776614694 792793590 145259627 416107435 392299917 665194318 19149032 315754891 981748643 994811632 380654144 722136613 542431580 727991377 992795828 997844884 974770248 978947530 331672734 338026878 225698502 727703219 269389990 502052405 93196987 826087426 292605295 660533638 31551628 640894054 331434015 721274157 771896964 831342163 957547681 985327515 155525076 350686917 965364767 982665135 871240097 930271119 591788701 606716706 975807526 994137958 403226029 447958600 394081414 961119714 307662841 843487349 353743663 816504832 854304658 865200849 834252362 960353434 211805988 427959065 841053413 886424112 223543736 606211153 422547492 583391538 819677985 968480243 986470480 988157450 195903995 915578045 513074628 755109419 852223426 963645449 348903995 641840580 235839058 649185683 325364189 648323452 993398269 995146421 171630625 236850214 698649451 818800407 302247195 639737350 164731553 483090115 648212247 942012024 301868949 681810454 483872171 827492572 360489502 981651676 159122412 290547064 193636728 593523404 848706222 854377761 600434534 898100401 354204725 960851685 80736255 732531368 848913360 955956972 175997893 197955741 575449861 704461444 638644447 651517417 792239745 828697956 670287202 703034868 564327142 611092323 294073761 475153349 722146230 985111303 752717274 764644553 545475705 608083469 412627650 904335010 579427918 909428772 383371527 467972649 989610131 994210551 225320927 249180379 437014820 650604230 602725310 744688126 677548616 682965619 403493817 685990364 815513021 985995307 961049291 962706124 876178672 963803383 444032684 974131401 779429966 785639753 833795509 939532894 95598813 958535126 933701462 985589511 90820818 114912186 862040868 901571573 471014196 836255542 729876271 767301122 677067471 746249839 442075615 929352765 67218007 358420957 819473059 969917090 324069598 777084423 14124921 115402607 989174829 992713245 729094191 764943646 583466543 923808384 273932150 633013609 36993359 914687490 710732508 835275588 639486448 649479118 335043270 808558091 524854529 561936883 801777450 988963826 256837712 710127402 521620607 926308716 101490310 434186623 392849788 453518653 538072856 769861754 492492776 561070557 201954804 949275966 970455939 980076243 472027610 586507450 772685253 981476100 122835446 350937234 472920840 730323774 709975364 955425287 450926457 781161454 194174625 343037305 769646062 875635209 205044408 758708827 417343072 634745001 370768561 467007182 142509137 688814011 878367404 882390545 786875900 854828014 799263856 845305423 128675668 453362279 417083443 658848596 202646495 747789777 675019377 708393569 874900991 953199466 598665719 858527640 951666092 998820155 625681214 689794911 71130712 981081421 719569193 982130716 299627967 590336344 458879046 978623116 790838217 847666365 135890898 605984153 857274636 970561792 380465071 387034990 711420300 856916470 123087616 582618425 930833153 980076264 928814220 948673808 380823704 706944628 8059852 777406729 293457382 847430746 993150450 998014958 338385391 738472599 41131459 460093552 460977805 667175094 285338483 290695110 73618852 983801461 255209094 746190551 541905345 806005624 616364753 900536258 41610701 886043395 555319573 668210391 37234339 398708104 605335991 775922046 702323334 873336439 220166334 278194396 135270006 790387702 588705576 742367421 618214680 789032083 884726865 887916680 128389673 425582239 410330063 423966241 48548326 791520609 859056572 986462019 176901566 751517835 28035820 67727001 344765552 588052679 328879483 686800615 69717251 540608823 843653063 994855688 764730321 779770966 873180308 919103491 303788504 353375177 490691349 737028946 283995518 309178511 96587632 185938488 622678267 971495426 86671282 935622099 601903224 717381729 897462119 926342573 985419541 996035088 798285981 920090097 52125656 223111645 400750139 726362009 444000192 826995714 327612764 614419292 287505436 427544316 243273663 859362441 751201357 960255756 755032211 867751178 467219867 540978133 295749469 531627741 871231023 892389009 681012674 712202649 532156727 598786826 530788914 742355709 625162662 969460343 198228055 233761435 703770861 924456526 76665953 78793297 839847477 856044732 843158318 983665254 812023151 899072187 867912927 889992203 808682582 900365174 280417681 425680923 161891058 760816619 303627128 389136209 597272886 912033146 628402675 874574054 710322525 875164498 777838159 880733009 419246822 887534009 17193758 701601828 573566051 930588115 958702625 960729844 78245144 507080032 387369014 684069941 554189109 873855338 15738834 329924254 224790936 722983414 957690558 963967369 376326749 470380337 83709413 975192135 828560996 833305138 48011646 790230916 496861364 983033941 445395701 960393507 892635919 982646567 661621280 957503004 576576783 635046972 34634986 886580976 215639536 371200430 910322570 942662668 258351269 414909081 300201134 659903179 204362716 678862209 741268883 749778722 734715021 821898721 383364263 887919038 142897662 155274803 694623755 792248575 299240217 368925401 550074953 842660959 776338850 874166486 615892050 668367115 470589639 842896968 378474938 842668595 933163591 990628016 276608042 329494358 166461358 918984417 730684615 761765015 826429722 990172534 113533491 524646231 734066664 920748535 480635370 627154739 102534643 975386920 934654110 938386318 740931749 860951777 899674277 903408756 171068037 198533698 539759175 711775328 382352955 880868470 940775278 994095804 501221605 641667701 884703733 926235011 423518079 991368932 732953804 780732304 944686378 953738638 825396142 965069011 696486758 786226123 421651823 573532326 403981879 580638598 727640962 961320124 985041997 999249872 59563515 891181034 880838116 976433632 319905234 663946008 600969751 900299954 103929720 802320371 50423409 964631579 608875350 940139910 105231431 603335537 712880595 720456565 287583000 566716533 582374725 771241915 289418939 558384343 822153689 919944928 746736006 840169752 171166124 279235074 969851868 989163527 630257737 792651208 783854320 956526372 809482325 870495643 427005296 883298840 374027487 962400630 380690364 522861941 241686671 495895408 898208879 921475653 507594221 972888625 198596512 577565480 578545144 845076464 653403557 722705729 270625442 879013322 904365222 919243645 853003909 891454035 359172945 786128232 146097066 507994951 408697009 911064735 598360819 605759890 90806677 929642156 973461535 996542185 239085242 899896709 287038632 512958976 906325926 914814046 161922474 413842611 706795143 887446325 776930645 927743609 12004685 895313929 564246191 612118900 919080931 928465120 454551349 739415615 179958767 322261406 502882383 694870596 752006136 820022947 603260952 620187816 583236600 758035599 229149074 934923216 781657406 957518878 218658103 765780895 51448788 306407819 406738010 530113655 591047829 651086455 308081293 604956212 898433071 961374076 807075397 905637565 291227420 595636391 171688854 356142941 35588951 149058321 478693492 790680864 805319918 812957360 411045501 896444500 960504667 995155878 233276248 277672104 908513305 925401770 63518861 269700231 604055142 708551226 895285714 937325584 376576614 651632620 949717047 987825403 406478543 823691096 157387352 865330704 468928187 751305539 590572634 705628665 504405290 627777121 275921055 985889009 266583818 329867464 751558594 787270521 549641718 992186840 708164999 890202786 787176806 996229473 871705022 901255155 887919506 954149243 205581768 951845014 209638624 472765183 622280162 948060090 127919006 456043267 180306263 231452820 549812751 655877112 179892576 717216924 2533980 458622406 906742606 967264042 921471859 996950110 266170593 873891542 779921706 873272816 999536397 999984334 408294696 986420499 535873080 920935660 72475086 214899203 326711336 787726514 565543352 914418562 405319595 970958138 460856329 970501123 617884943 732272899 853993920 884664915 600794064 611638377 778600180 894424747 453894593 766501466 881939223 915996622 335753436 876809531 975543334 984870009 455977533 593250923 194573405 990582764 523503474 822429010 596894978 645589017 730151014 778447264 64924926 440118543 106688925 645698746 803206442 854525277 813265539 958250017 114453065 913168162 567124585 954459186 454975615 679061951 5488220 656419749 70509923 213102646 416139588 797014409 115867147 705538597 273074079 358543854 352340314 648266958 512124219 978580836 619620943 758027819 708553837 819140050 171001315 856848028 431834809 675934782 658608222 849086182 446607360 480869792 213989110 422899265 877862379 924495129 788118851 853618938 471848966 997454761 103204294 660799813 695411161 908810441 810851054 857936898 208398942 449933700 796826543 939082420 663138575 877321218 674963222 929207740 94935318 164769416 316537716 869355429 581815248 617469172 183460873 611425665 203250859 596264433 116204239 189525173 75247591 247346127 37823715 925700938 87977309 142758800 289014780 475983828 18039727 177942918 603143670 672403258 178523757 992988589 612263706 876379124 376031228 944870762 317311483 679369720 652579298 853961833 577855432 596778717 52885954 639191183 629371636 887868416 43094621 822576149 91830868 241233583 225843649 381601552 857297952 958463396 166763272 714946108 197634496 365547303 564822948 975914318 853885788 931994754 704773060 987569249 668389884 743530201 480920129 949448502 679169418 702824631 421731311 876898597 180639569 608819970 523740511 717872543 176279963 999957282 989506539 999781984 496477384 680929909 550627795 594973784 737210745 823154341 944582500 996528454 404868929 966756570 284340745 468434437 213312919 233249622 745792102 872388354 456943221 794095100 525979719 971229537 198348371 717864043 115840955 897866075 689692276 692847792 78659789 213297490 903427093 913052146 372784891 449401026 424842848 600585661 129839069 200806155 68824136 647548814 371958905 397583495 330928378 795293400 131875571 766305150 103745014 837815420 114867637 786586102 553467379 822672519 147650171 828881637 807005902 874861609 203965790 616556133 138277728 561873033 935846925 958463654 50531145 536737909 195947386 675227171 558096831 795371493 766791336 807333597 989442784 998956078 322664663 667470426 539239006 884169488 37725895 864689509 837253028 894437680 556153790 747063872 363140959 401888970 567748409 863847265 788219653 889917917 725725152 890354211 689687670 915040687 953559603 969692286 690672789 727268535 949596624 961806666 614947738 616174286 312698404 780709035 273896639 614671852 930672447 983415335 751140300 987977931 129459175 205926101 368349718 995601313 73110907 977794877 826532379 964719788 521924177 580649310 577721199 602530429 94161533 945728860 948143032 999577743 374553206 927751868 324228575 826841635 469513084 547536094 961127710 980643845 727593685 869741476 730193401 969733091 21557634 644760313 218212236 756708536 955419433 968017523 231362693 599198921 766923117 894379608 492306466 565238624 421103897 897733876 339689024 614424866 990023293 990237438 695249910 976004561 412867117 789747618 554371076 910529318 626550731 821581537 436566272 776879967 650886160 989553605 125870537 625650004 721790735 833277126 557857312 641269082 685093970 768028696 304460421 663889142 897477305 924770457 404422999 561674670 703688872 781604043 727529485 754142416 178919687 628381478 563634184 999196909 772657331 885504717 256367799 651483330 761897165 770612967 655103790 690233329 158840649 811320086 637956890 987248742 904923189 940462107 737099838 860882794 435212701 702260424 647871504 991767790 185431596 195060966 305129183 414870301 288382220 290707072 833103105 960290360 181474194 752237997 245902054 838685196 151974935 420633911 779194151 914532415 695849240 945467980 693650752 845627830 927002288 978394374 233741953 274092296 116407549 268273800 887495073 916151036 571151368 941299256 11547430 982785730 455280218 673775433 285727694 691806362 624853884 966676367 18588473 279783319 518959760 732082136 454993714 830462155 742970352 914166003 280222999 619549830 281401945 808364387 338207637 363442306 611590969 766267620 877850333 977482111 509487987 928744341 90701246 710510638 749305016 828700780 196162635 949719240 221706465 954283281 72250335 342022660 837822245 853845413 926295324 984993595 627267826 681358653 150760616 736119834 802077592 826775791 943192890 947880237 380174439 700582171 843866558 934346092 769144150 955383015 520410428 710808641 111997200 993390196 397792814 660993473 302274667 320991230 228746497 272757591 232620529 392048217 148476539 323847479 153459831 800970441 565096013 857700215 572625964 722330376 604285209 661879998 197959881 754941136 448839299 911652679 781203468 942958900 279422213 885863888 824333354 983940922 26137420 582120766 679903630 818371002 284615515 862911832 708413908 766599551 346456512 423879615 456865151 627330036 609280224 795058965 958236823 995023807 716548409 892237305 970977990 975758525 270561683 459140831 459742780 919132613 720755885 962556576 974333715 979735876 729194192 875179683 499490040 949194209 893937068 899938031 73223112 855578997 852649777 937670471 631999360 855683035 660585426 670653918 428837214 777728890 53861071 272042680 119673627 501880081 771853033 900109780 160498465 587097888 182276657 753456055 545289694 638848462 144908549 857591545 707465111 807502432 158523782 721518704 192629803 665946395 720999791 857163131 36650987 496603432 753856776 852404323 857642020 872292904 846401762 872049355 357686976 633361567 394658375 434668331 366162732 910120267 583238930 667753409 32159986 754537960 275959533 375732033 552889721 961426592 727922451 862114281 274679145 431574996 445786819 718802157 83995603 307621605 583405805 679499293 440728777 660143695 329288903 333915304 162549853 847034638 170489605 415392228 875873886 995561595 89647056 766533986 451450310 629905393 910512215 923749518 315292421 927550875 701590285 829747727 578550525 916567600 782275347 900666301 780026510 988210843 741174556 870047118 787891846 879455219 253497057 586105457 455443490 762200099 903566189 976706101 37830041 443177141 896385571 989292809 817511226 838529142 733797 373892471 846618868 936170431 363522559 657951071 900802035 923489069 762596456 836830446 14574105 365393867 84167541 704060847 629365335 774662148 25085787 265296636 597551248 677322376 561166882 573665540 544453481 786850112 374295664 571409269 293411783 765513178 925671219 928050016 377345196 492016722 460602982 705955064 82762080 346635276 350576425 449860834 653545879 789487077 250092793 908136480 924781576 977564143 170002526 279512689 796676006 887456008 149914481 492659064 282687484 763388494 59021576 105345603 787630564 942478367 906444072 988501917 211043409 323105054 464970841 673705358 279126585 880033150 327048154 511610856 650595472 758302832 282673902 858136099 804702774 994924048 290897443 855347073 674932844 803341232 792424423 794876229 290608579 487585531 187864797 867279042 658778854 905668773 309976443 431065096 555325072 658070438 853429455 887098260 635868789 906904586 736280612 887784601 997082878 999940476 314722114 471025989 731192897 905732544 474292598 645760267 475548846 600660988 449295321 579574303 813991332 895675388 445648620 602745619 259192238 687116695 59562371 579462886 835197718 974573398 876461699 976207705 198857327 562431880 943532620 968871105 834199152 915765960 752990773 946994798 180553497 808921603 536042024 697317619 825455333 905222309 967278233 980189735 316747206 431390736 162585141 988313307 54810417 311331286 558942087 781266131 478818890 809339080 46841800 325631603 74471562 643934805 291984738 870026749 360085398 846285934 474599685 692675591 910198834 978647854 568216034 741222448 185223385 289034489 541053945 678897660 750261814 847613739 249139390 405471854 227203835 505379134 286435007 738634982 930156327 941008008 759014398 773379223 145857239 908471879 904085808 968935963 536022345 764177083 684061321 994332968 793421087 963241014 119729801 747947581 116782160 219625916 936517216 984915693 317905616 954170147 748653701 905081719 90593298 980632583 501098335 571281098 758537551 778526152 713679776 770611736 194008141 444307206 659149559 813508251 148556090 727842160 711181226 956136158 399862747 659836505 214647229 736176465 674752660 893950000 688660245 988108791 753076896 795540974 442505509 755515825 597052113 899177026 856199532 970812763 289729464 725572433 174851431 847056959 995150616 996666319 598613880 698472524 472759960 973638017 429754819 930680059 642350500 759587042 239337899 731818309 361533161 574534736 904253871 958985540 369395943 495642607 160245453 493173912 314967631 955275330 225088553 343389088 988815198 993763814 998824006 999473632 26688180 890073968 95236511 798739517 69626240 611491904 841645071 907257981 249437430 824113979 560676448 632661255 871131799 909541215 14028130 192773650 697970073 739515351 703878571 846587093 710583056 879686898 652886874 837558194 919557638 926088633 495036665 748611424 505792211 656105830 113270668 541418526 102092227 728527162 532945590 547340745 642422343 827161872 391012 998658585 493377356 790891972 312035933 518615754 801209143 869459929 335666950 518011187 701492211 767888070 335531023 505359699 246201921 853169446 302443058 864098424 100282548 920939687 567767970 656112661 609960474 995904207 514728321 628340733 744546588 885400105 888150272 964361236 449205692 603340269 926295319 954070602 270336683 275932701 996669873 997220133 721322652 753520913 688971328 855162591 484029135 694186216 354509775 725150585 970275035 993882621 136814151 766525127 737674470 910726460 449461971 650041736 489640095 982244482 241046106 618997040 690683783 855584480 829306522 995086407 112548054 531986106 983019459 994383116 906494887 928133023 750475113 930438767 547035052 700187695 173008135 918484801 172649997 774140831 328748077 937995522 424816345 532922033 63809641 170388330 208453331 311373057 223396759 479999252 851608984 863049242 497428717 514260554 157078888 252346596 822077601 901541340 884204925 942478555 257043346 852539106 540565457 598484027 941296959 951635853 224267136 246410221 838460481 913777266 518830111 888982501 818270155 943885361 24145993 714183744 137728982 257437464 83338565 395106633 941203124 980216946 850406712 868827070 897501498 899381894 199602947 345211145 800598454 959532758 866443346 886713536 100127311 126401898 642747081 818003376 95884495 712997388 256391246 619400507 3909740 653527817 609351642 647736508 762992137 874454996 831261205 869703831 966965534 987312690 721425563 918715116 48422759 695024227 262327168 429548590 285642655 545836302 190582215 971042732 220617569 225807677 332527181 846726914 331680331 789055965 186398259 743422452 425974242 725548398 297297819 998981495 73985359 777446330 582192530 810799322 947970942 972448970 421506344 818087468 310375969 408350208 801985628 817044483 390373729 994310343 559726597 972192026 922701054 959932331 90760714 751206432 775954785 932715226 852257507 881658376 808085168 954206506 947355495 987959997 547734032 587880803 737908218 775663222 411259699 905250301 463034847 714622137 448275622 909437447 528838348 853422613 712525007 959776268 367581564 627073364 569012198 575998574 801789206 860490071 899256886 933917448 658974485 846745682 118559591 654475748 862349432 949751668 689555623 806145551 630254360 634054354 678262752 862276067 67965234 768489880 990093915 995438911 826295494 890239784 727451706 805444577 204570186 234350016 866575970 974836774 935257821 956037056 850866875 996392647 331843307 464413807 735621627 875965237 147633245 198494779 265776723 411698214 923187448 967639725 777355236 786626677 186028666 625474072 669616903 814516528 215693825 600662090 203674106 997492078 235976370 613464450 687884390 716334790 571382405 841946532 207542073 711018704 601285082 748154220 624038267 683682193 701806496 898165266 212978306 385928966 7595672 77616147 79887567 710344969 729685401 980955975 729707756 933819735 117040868 380501563 182380526 668498699 885352343 903171142 570890329 625628972 416853910 988919170 481577487 714776768 431319412 680009312 670070978 753775314 367667231 785799337 809513718 905955173 581495885 939079013 593076985 810443625 524225130 533084690 852605671 942411909 220316393 333994400 493027449 502373893 733884192 928697118 429319313 795904268 972442044 981691616 853322658 999176977 106418502 799241922 753086983 981807614 172236808 304617398 842951610 873608334 713321178 880522146 305770770 540299077 88014699 485583753 337199371 772799866 541889280 941133152 680373935 792741290 398300713 871120785 344961727 601432388 681496528 859816008 236152502 590295972 400183757 902381737 159543272 961217388 964703361 981921310 167403142 269835251 694531365 963600695 64651144 601465497 613913514 686064501 73382336 472102184 440061384 679271438 31633597 991754528 59437881 967867122 867703583 998220712 992139261 998179012 804983471 889000211 51737923 71390961 695485576 936775577 125466736 670582786 9822408 320840138 808266087 862240540 871002951 948551195 368182848 655564209 244624083 979809829 930363965 995396693 814871997 860660433 27133799 728577787 496726862 713137961 6117057 506922204 582004230 747423728 177496948 604908041 475684095 867988710 505020343 749587912 661132237 803264283 529638320 849980277 693028693 741592746 251416961 905369074 565252917 693510455 342234140 426918478 84988403 593698858 985043905 988398975 218087338 828222695 310031814 546855224 597950791 927303162 643747033 931628224 330596412 812241820 80185440 772889552 135048608 768272339 300086332 625030185 76491128 426895517 108466917 723322071 76198994 957798209 188826187 211999694 241755111 941221094 700934710 933206287 697071902 861708985 877177428 994126008 388768128 927210597 487644696 541011288 561852120 880317469 759975783 768232196 337892744 947070089 585734168 650399047 576173960 769311329 85022181 137113507 117938760 698984788 467961384 697382194 729222573 860518003 708616441 987046361 141653660 486911136 934633850 935796158 915124358 978294575 805441362 972855851 34610884 459175378 222809616 254849302 414522782 869371723 126751832 340343882 352358617 839828438 994642743 998890030 700178439 822041144 536356858 566415658 41135559 703270834 605443748 933765278 569786553 738553372 62810531 476775680 39629056 54203571 557637681 787357981 27335243 196563691 989683974 996730336 643913388 759825430 910167113 983088567 646080755 726062158 392791070 742039149 452292684 710385683 561130998 919789885 314738404 724971957 677300381 896993959 962465326 976105027 566592692 876076951 331332223 576859744 598042107 856660089 925451470 994779364 866652266 960442401 436133680 967517188 923456591 968364987 191504207 531090234 786574561 980480076 574960685 858631158 687072768 860393172 918621492 977520170 519510455 748710231 462012845 512698022 28623257 841017492 683101880 774640862 446577779 959325170 701734036 947261901 301473550 357582787 127265633 317954094 834662117 989569396 149200547 667320044 355160276 770905936 575391542 887272334 849062176 959118873 527227968 845962979 942140419 946702742 729819820 855058013 852080239 976667576 309060148 878574802 457566734 640393530 575952561 694664752 976274472 994142192 370817686 679008766 672717343 758291530 32559327 189807418 630103104 880547433 173507247 232863958 66234038 897649191 598841423 873190475 519467371 804587328 956690113 975520985 82115006 749492895 883857924 899410076 239943785 903841696 433062499 514971290 721071193 944313517 891630878 957460028 22833794 935041467 197255676 477094946 17999747 161210395 158945111 469203389 326072184 837768783 323637720 866651392 772663427 944941006 428333816 685684015 117373594 542877890 999207415 999959797 180396607 825903211 842939467 856834476 595706385 663298666 612261465 861948061 321009920 373002552 317846920 668302197 596699837 636806369 139729299 651178371 413392752 770977758 793667125 996624936 117276426 719748835 550007442 902321610 393845752 956142208 602421951 707679677 942939974 950097158 1253240 722480986 578250446 975438069 538871795 983103392 654101787 764300519 555844852 818011449 880009142 931836252 444738490 717396683 803830220 910618796 893939404 903196398 346142578 510080924 527300681 609401051 799417315 841070580 634154773 749598993 43047837 634847383 79963724 843216686 865216358 961330815 341241990 604476497 480545705 647196226 700891649 811809184 339716911 907123891 154930758 938674870 788677547 979162626 476087916 997542174 828103403 875491815 861267492 927898775 704905966 782051900 160643447 503661000 519537420 843621517 532337621 914760389 79826607 763721762 177514355 824658277 269921514 862834514 212086633 745705049 690798208 766356825 17112699 68037790 43741087 129652864 523351483 588783884 493576763 712060701 583020322 622145984 55461418 251755631 733653795 877939372 834769562 944002092 551567280 857730323 993701029 997064129 446819934 694740348 554439837 761106326 134623891 981964250 183737546 697117446 891844213 904814484 627285349 683944353 107335670 269316412 449202504 474815753 679800844 785448685 744978552 792848630 649792664 757268344 237482113 862894862 123864331 748309943 553199303 752123415 384878326 962859465 497912238 780088524 408189230 411952667 520077475 678323573 323667994 797185845 546759038 606511463 142258346 689127703 980688827 992916826 326630969 729176839 12707889 620968076 31065763 815903922 511376742 538649025 207353033 502891884 285329700 464958933 731981708 974868444 659691961 692035428 566251529 719495355 236208605 713435145 817535056 948613273 629880436 900273266 914044963 934156450 704328642 903415689 384068351 454458170 900737451 921109217 545182828 576365043 316987813 702353360 160360708 520184258 201875654 314963526 457351570 952020517 257326355 597862906 419112155 946668524 70118018 518315699 608899332 928362416 133019244 840945303 635527736 817087516 39725625 52062872 333346859 516766280 30247446 410235263 164696299 766759923 216675748 873780309 294282286 594681398 273635523 729094532 762296049 957399512 178430917 221034538 338016861 760969027 713062036 943381579 311459783 576475229 904103270 909181194 192136184 998844584 504893790 519204973 166931864 585859696 711994347 937454814 483883550 839727602 557686655 769890399 51354696 742826818 366372068 946532079 506461921 859844123 556176290 603251793 953287836 970258833 330569922 836168764 116763056 988281679 25285877 416381105 899058105 996201962 581731506 993858833 395953032 525667148 365038851 706434024 204277231 773174203 320130190 569734170 314828474 865833745 851269566 908844194 239991464 308954884 595097956 987866922 530831230 812332523 5590209 121921799 462299840 756601694 44881965 128156135 738215305 926501319 148282337 774137771 776335305 811932526 956336815 957906060 879594201 931557763 975152777 989884224 534732341 589171539 947757033 963409127 379448326 851621255 83518669 152637042 352824006 392577570 780586895 907135155 577164517 689558631 422643929 925654354 477598913 987232757 736343930 747778824 718691563 780360939 239022761 350229726 669647871 974636540 160459335 183370154 344167169 751544531 972907088 975975098 391362296 420449402 966051265 976674980 832218948 995644882 661702579 772787151 863047751 983076960 197489838 884127545 451264219 845116092 279584405 283455154 625210209 740109792 265002773 652597374 199605624 906361092 513548768 622533312 683364845 775469961 713103717 777130792 439748026 535388243 245393736 851457737 848514620 851202317 720515437 782155462 719872817 866203748 954846842 985028326 970130169 995858303 82022476 146091406 764939102 778336346 554582552 966610059 498641206 861247262 873739595 959349809 848776446 923651415 525142516 602477997 891662900 963591953 507916179 750515559 956076235 984664204 590974311 868580515 815604733 912199172 225086907 866204703 225664373 856781498 855172613 895441998 492396905 904849476 94043214 904231827 62091344 431066669 507265446 810379822 565952872 869011458 307461829 747438464 206291760 880811866 605867366 705341600 675132 804913722 882989561 896025577 184289522 800136277 47344891 914491271 835592520 972428224 760443276 933987862 337499366 455888004 715693428 767506087 220178965 831265384 842496410 883028848 45362475 863993014 984903801 998231813 82618907 207563459 221018527 371737186 288892848 302194574 461300770 463496459 918357278 982810939 357709590 375547169 164242939 569717228 950859439 978569772 501028432 763174601 730361029 831204894 760138716 817927406 760379176 960532714 475185306 690555652 693876521 924485411 304162695 917397886 129598183 185563299 536728025 683067392 520993214 618590654 649415039 880748483 839366414 857282259 728118788 921257442 972992890 998585195 840056269 871813100 131927608 270799117 837075922 863604371 909537900 964509946 262605515 400640119 707424508 767182996 798506836 799099551 16709587 60664804 421045307 606844158 334855433 337433034 822799795 920868091 867277809 934434044 887806146 961746526 97314299 630745788 419448433 834020822 53637441 116934246 658212526 949094120 212304882 595008666 805290159 964216971 43982210 368402862 943358466 978787976 842807186 996115890 260765548 823658405 625655692 856599606 576600927 650003949 68081942 85910033 166791159 221620517 729358200 913044275 697010549 791833926 920033361 956534384 747728602 958073237 578041217 924622182 129800681 960726673 577930496 897943573 601561959 859407421 904155074 930061750 312929569 921066148 962081510 991528262 567167262 571826961 860466761 962350940 498349500 547739709 909515992 960973079 852816147 895563780 286463986 602905246 208311269 679976701 428916892 837864443 848857533 953398621 154208738 193705219 548305631 986639352 600976318 683553462 398018873 634193579 90830699 904798468 399111446 800308416 262310111 407747419 175823869 947483118 970018247 992472669 172036375 608229064 109129318 192397287 930176456 932985890 655328283 961655296 22331182 267358405 659989773 683731111 387489093 823903826 446187149 636077013 950814662 954959314 556102037 563132903 506520821 570350941 832179275 839121868 358996957 643776714 104653691 247352361 252110249 486815844 220563881 724864268 256960905 425312003 275937408 348608455 748441561 781683233 610836274 853171355 717012839 731581356 136843911 636946532 409821131 519151059 324493883 642479685 423908868 660539036 689234587 992504040 177068104 689203697 441635170 861687599 448834968 701643951 224550093 484911887 841950667 850639360 772432671 896712962 386291700 647185226 231654562 587897726 774685878 894914415 514484791 661565785 395493355 890896421 988217628 997303725 815717490 852673752 337941385 547237100 14191220 207577014 662688041 937175074 990268288 992569320 269439568 792074189 498963019 595166314 438314816 673964147 762067555 973914304 236778679 655119740 635132249 994387225 950494028 979817607 367622907 802383720 701282983 835723090 395794553 458628506 738047183 817444260 215982738 756786702 599122055 747778011 85766092 875790727 138467100 710665141 757194533 942375603 806835358 856097035 734667984 761702371 407656565 681947316 821923783 832982351 728495407 827617070 58331722 718416147 760276265 893678692 120653091 922297856 882114037 954165189 135397450 299127306 781243861 782332391 681422927 802277486 669069325 675109410 53026382 947646065 813255612 894906959 980120065 993754547 726764315 952613493 920595321 929485843 586596607 630897451 410987781 774560117 577721554 702956460 976068496 990666717 659129557 827211791 261254888 534955776 12297406 26804922 629378110 649034711 804154381 831440554 10794571 627709954 288494946 840607816 50761806 353197639 875137267 880293856 222124596 715257210 63090424 999738280 831293073 954181654 646046826 904400336 363878689 457358144 208630051 892542572 155522411 624803553 85443490 717777616 933708892 951660561 225337790 992479503 715777229 831162935 733541717 943876794 640943139 773493133 110687705 811325916 437350317 890615122 500715653 965371656 758204809 898677726 565858834 926228234 63015056 280927907 245182830 892269397 93116869 692164509 856588924 900607827 741630816 963751925 277403836 324624395 598967509 945053936 922287572 998453461 25698987 802033293 773588377 780369196 465025966 617597204 289375960 730799467 724413153 879637364 448722628 658568738 300121445 761692489 77753203 458203828 812112771 938190014 765007251 830342814 176562723 542510873 8069233 154200748 307861854 761249277 935524882 962060907 207622352 278262340 831247084 992297727 51216989 763086583 768290764 821228660 513596961 798589415 665055668 805691500 48940997 750511315 847303442 882830519 456740122 858845360 772818583 891219350 70932712 108626356 966336823 967106560 968373333 986111050 327293695 526289268 423281971 844271018 271795493 965613275 493390419 559339577 267884482 635375909 445410892 462249855 866599041 959297544 274599589 883121966 850006349 926749442 711117402 885900266 844209187 888440849 763518161 898229906 787133037 888572204 259413925 565191675 339557091 843025158 147603675 299010951 434898057 784810954 859568930 983195282 791075626 888706682 590592700 946297696 887052636 903563676 29545317 755089491 351974928 498416027 706198692 935525719 15981091 40259964 860096868 989321068 999167020 999337201 306067108 764060985 492607630 871827602 581985608 608906850 568386912 612620941 707130171 756070427 646913213 780264318 486648599 536197834 532725217 837448535 91497921 103940665 684868938 781483887 858670227 929091705 48253109 509429582 621266984 885535744 712432849 760822034 910685661 931897603 984144611 990054363 27251112 803662094 847705398 925697270 576067712 600604978 933370234 990040198 885070523 949756470 572260418 932274664 843627542 966111002 285744756 790368920 721518670 833299997 400091703 810987592 784434762 788415844 111534894 132892074 92822334 583476887 677536176 893416201 45628682 866596487 589168861 604270588 657591413 979223298 332605912 656972323 568223754 850507786 867637214 873116453 290861489 994911217 735098331 888036212 994436425 999310454 465528477 756777398 357076868 854025365 80569531 302544752 956073617 976742503 362226950 403283439 893370003 914980999 291298663 486470226 644537325 733106936 249902379 865862947 673201329 972911036 326617073 705404916 550485373 555266667 609840700 702130078 779048525 981710874 946313581 973815640 816488068 886948596 641008863 699428516 658617710 698233091 487839884 664606519 783635232 881531410 716389584 749577480 148340097 598130712 219515371 580991812 144308557 466939342 873503420 893958189 966243281 997589237 334608937 795148382 633642627 641397514 924954152 996577178 413676953 466560429 273798430 281916966 739605303 872922661 191188214 366984075 430630701 812535388 817915696 976604983 730799857 919570212 814003402 981576326 394258616 458600596 657096643 765570745 647205768 819878538 870608695 890403973 727952382 985158943 553067244 852125456 970635155 987357722 144392324 684967848 597768196 801353552 274891647 868545662 174783010 638320972 686770520 699110552 452715772 647723433 68276621 252672152 130763691 374589903 879872334 959172147 507241966 694309385 247357610 988291347 843408932 966052545 444484235 789925991 749120454 935999364 84275771 100407549 128768800 783147241 19469525 70209472 529489198 681424169 706528993 708238953 505683361 571882023 734149920 997232578 72314819 759252714 102852309 399778433 770143786 900770154 879742374 996995294 830239088 835009963 10255078 54847595 561990920 584488886 856446219 956156353 704940242 756926648 982930240 997686745 802394624 858339060 376772649 862856236 147668824 743820360 401191726 851702874 353955345 937049640 578357239 607725577 46586627 766063035 39680068 967006134 238414806 596721835 378271350 880603725 583055621 637305663 317871985 878912458 275542257 558448729 523861253 751079259 435179809 505028751 912985357 957357178 441323297 598555318 766732302 842646947 298031771 547898910 81594517 822759691 714730434 874140655 389932439 632821868 467078263 892093729 8647786 370434490 271542312 615518505 683669600 712775030 90501228 422324558 975475738 996739618 213927096 902182901 392303914 632550208 939017916 982560537 372138428 692282966 161490521 728630584 917218346 963857981 727540633 891457204 237101858 881522945 276572187 371445014 159312201 337547961 653504279 962003199 256749566 871733434 438849503 638285924 139811776 458259068 802577809 968449679 623539591 858697486 41189867 666574657 699470586 998129321 616373413 980265767 250704395 837425261 65698808 625603183 318131757 633920592 177403143 748336151 319345635 684810527 885492722 940543821 767509805 825494364 28985889 146713027 458278543 509133681 211976543 439088142 429229767 945526309 400101425 619342082 931186678 933750277 623025349 939593909 175018954 856916899 808077752 987180359 270133381 489719546 5360553 553983840 850857007 855543908 661774567 911625361 527905512 847442476 180820479 938266605 178944358 972570118 666222144 781105783 770516 381558738 443012546 691322061 260423837 978953679 838794051 853580645 934799134 952766135 425682758 584572916 398730493 816135030 670526462 712280243 616611336 970597506 258691776 914465774 700010108 928472899 13756016 707674415 90452335 838281549 463086555 590006016 194957216 596448636 364854195 742019862 520639851 880072470 672385077 999850864 720059652 852138231 479695433 585793080 167740315 424257192 148246789 696845520 208367660 661320767 36964705 750688269 498092933 506518611 519795855 556663992 74221309 903567138 596472827 802543283 509945428 654512171 763948704 965843118 93694421 312683632 181264693 272276798 577381718 997357386 368433406 732155841 642977797 799226315 612855781 665003831 598617254 981441955 223373924 318850935 602099071 800347316 242865309 878194422 770353484 964690375 990443139 998047690 348239461 484057720 551798151 962181414 24730273 905485806 333248789 545944158 658032182 826235624 745639334 787203795 53826669 271258875 915549771 962773242 472273338 820913748 509067405 704205755 415314966 541999349 232440931 687997040 260221121 380272895 753829504 799311776 783509958 849030745 926929865 945635548 465357431 814245605 358190531 504436822 416566598 509619033 269277614 588096340 123471542 453087699 98023646 567983671 915826490 998828543 592067420 845370622 21464751 418904512 826377745 960661634 196444987 327287577 384996738 930705077 388562303 990257029 752060498 979828827 847865328 963534405 111460981 267136724 852177801 950450912 508229680 825793675 87729035 880849483 820434791 936156205 276119640 577343917 939636326 981795113 282223277 798203427 731587564 993633193 472847990 708591313 437856641 825087875 609438550 784488804 746866052 778718734 596556482 712913013 46463414 522752635 789677050 865121661 169210590 257993164 356292077 810817287 329961142 613624529 429235973 524147674 636836660 918226169 116334932 252548832 653358320 783131090 566483033 837561103 880342657 921424422 873054488 877895363 483051622 622605559 995346760 996635444 63646639 631034249 640731933 959191179 646099411 835677800 879782722 990312814 659619258 683109195 370560676 675928082 782567084 868663774 199569258 781033067 371252188 376131001 634438975 758591987 933704206 953745420 104523304 663127551 411386115 868026102 744092530 967019918 639404564 802353764 409349232 837168265 400857406 686345155 477048953 819064012 908255352 908285178 676825285 856465321 325481604 672728831 110306430 671189832 308484305 512861074 822345868 938762424 47609935 101585027 908087476 982175440 947450830 982562366 236828192 435575772 797051972 929034083 983597444 983818247 684974761 802325772 794128605 852225524 975429679 980992370 855775217 972022005 107430962 681287563 409554140 509460114 80046806 787710108 65682896 712966374 793236353 960013016 440108179 483818854 242901972 836943409 432243574 703638918 818193073 824250975 88383344 791222919 727340135 813062658 493876030 722575158 676971892 901591622 372673574 891963746 976933179 991541496 997945030 999267115 692811274 882987412 585431418 739694150 598523980 911080860 559385791 990013657 879826067 890317970 703070874 916069213 13490775 32177360 426906919 710456767 551863855 793790035 829298231 874290183 891706011 993709887 725008596 983181734 524344888 705763278 238053095 777087423 803905355 994187506 995450970 999317287 747793940 944253665 236498122 999269592 238381829 786344977 547170722 573113410 458021036 565195855 197686107 611009442 472060091 602602733 202469055 729758619 434330009 815315116 385457580 912443188 817732125 859552725 232173325 556556904 224450300 738006407 497694206 709378481 966583313 972310455 644643671 666226033 186300523 433508261 95508304 620002196 9093146 754769768 913147795 980251947 543566347 644916956 892150262 896205630 412510787 583738933 385040763 691829856 44048546 843081928 423634647 522175583 354759323 540534732 343730682 686731353 726104777 951983424 492470047 792245969 49827864 230553999 494116735 582089424 328365663 627761145 378858566 557973831 54347625 66307081 725009910 743008658 379788438 983207410 901236043 923166218 804015792 985728328 970389673 990554015 638884909 891844546 465737732 558664651 947192080 977444638 273903929 479851391 585057389 781923386 862119318 871028878 790301975 950062558 252660779 377775827 119460046 811442310 857742485 968139688 689164688 747771401 722566217 730221290 990987516 994258528 648575806 944245157 233209840 889648935 442195069 651722266 919432489 992280878 247398436 817946803 468252544 537800735 428559700 458978998 434196109 754249477 618717307 727441967 83397974 344482530 36204940 272602321 864770059 928056079 546434108 962243256 417517984 495860684 662827469 808759272 206336610 810685136 293608418 426793133 338364123 560498077 517070798 931927963 421573099 539385445 290757584 780061566 968739441 973095227 461973008 514586530 692405595 927796816 726894779 812397807 625061143 707015043 888561126 940106675 846917421 855234309 673530123 847001436 280783889 535773624 97133572 381152595 755765393 911484767 559404680 616666078 84456553 260396728 281693907 415694961 876609078 941405443 345527277 522902005 493425944 629881930 765080477 956011869 205878277 801722632 838064988 852975892 559598551 817405163 364653161 874909681 460479119 530246879 460457502 837692448 52954804 240908510 799772257 992018253 505438872 871972056 922166449 999616810 200116690 869040616 401409567 697898268 950731623 973938600 599577707 947752811 226805788 229329859 935998777 957278917 278420664 321242494 333197703 545414603 863975111 904648487 509093701 555692854 50220041 782764509 295442220 901483639 349172701 652990873 440885069 698193526 582323961 677801858 609878746 773543865 214528245 611633505 726087682 863958460 309733596 465362094 141364670 853794635 381161650 776417048 683286932 880337834 768166087 771195828 839579184 857542123 929019633 946446772 583958521 812144689 582862774 934793513 587751876 712035365 404305298 513231346 873780420 923326307 363824758 886766229 649082545 808909754 30896727 341697987 981089045 993942431 172861370 303304134 54389315 425602911 863499298 881619420 843317644 888840845 737749318 757066798 199972931 379992036 890178731 934196540 274466357 878949610 257147534 637053348 319118970 678287839 775705500 798197131 912267300 922568868 558562716 659779078 35318518 771975330 120117321 963953049 547962351 648082900 944527171 988057746 582992796 898574330 580211169 848913680 962682898 977603416 397627692 404087927 842624549 906682282 34950916 927318875 69613508 544650730 708838838 802581788 842641554 872458934 967156398 988903135 602430959 960143118 872063869 990004137 22072036 323063039 696935592 778938551 756031113 813750330 129985582 891797822 758320038 949358238 19647218 724817778 613089703 682571079 505927220 769504353 651576244 656732566 273644942 522058823 312308512 986954849 722101166 739542186 377675885 735092908 987293566 996754164 500222223 957589686 805668977 916969964 854970470 993375098 324507857 823597420 660005133 983550811 306596290 372523347 392979378 511811477 223438849 314167347 814135856 937778412 583779707 906749871 536733737 740063072 15231967 556247723 934224733 967061134 388507816 461369671 655959678 744612265 466784309 648683236 565901971 573544497 53744901 993336552 524133239 870705373 541042933 565827938 32921808 369557740 484444804 628805609 707739264 866192763 528326066 569366449 734334775 940566161 714015387 871155330 775821015 829156541 100697466 858969941 210323511 826556241 751719726 981315721 493015612 920240395 938951053 975868081 650774989 888901497 915666176 997862612 219936074 634942245 529957384 578527429 897890324 941830281 921637733 969972618 814334722 905031877 542652418 972063267 308069753 539545706 140261796 736645536 671990359 779325136 198212339 468743092 857503444 929971533 667866809 984499473 26677561 591445691 504948712 962247603 979792379 991843400 906492587 926364240 86793427 132704966 514915802 717315213 629234448 766161836 59638157 900816476 186009652 302332291 111547695 196840756 150063082 550177710 761694443 894916820 80514537 420964851 125875399 825766118 325027218 403364045 85330341 471655138 297971002 616363947 967606939 986520052 801315700 956321131 702714983 961284577 62617162 313405432 788593804 992662260 425623307 599626773 766761598 957845043 958296382 973179567 551444299 893753960 156308597 625680619 258809617 559067042 811254279 908982335 297899650 939204199 247185775 388087640 92855664 116904808 698581949 704820237 534512139 553179781 752783463 961713859 297357990 499080904 448202021 546420456 766341705 788739906 614352495 900187756 67527400 636875633 845077229 969074267 161641188 711715925 920486192 932194167 2759063 482946886 686640781 840922319 934565899 986148486 370466979 519701749 497646490 707186511 53972187 66128137 627147389 824554308 389421667 998205542 108439703 157809237 731186918 924147051 279010953 899664936 875083915 938576766 530073787 588716340 494042701 925761727 136123579 924506667 903560172 960995790 332364847 872815010 127568439 334599708 110846187 601460897 3303687 874203138 917607053 938667710 369306091 819127695 572918336 641613868 276882109 519187382 415276463 947152896 517009431 684177282 11480028 563149525 527542838 890085410 526401546 618131133 905243011 911854089 862504856 996924251 364966711 703441253 290506202 300933895 87805804 173743714 150598733 370249971 360512278 506406521 885443158 940600084 611740530 804886390 563922980 946774252 702501561 893819866 51041499 433740826 393419604 737369952 292646006 687721946 264034192 653873404 601018779 652826291 956288435 967760257 899964767 971325769 129812649 450662107 240116464 522681323 890113889 947382928 433870179 769993022 757887347 876072982 489644342 911950241 540580174 808612540 851939469 923899212 243462229 966796969 702439688 915133392 766597578 783527079 500373628 614878178 525684081 728541116 578561146 877412653 132702322 353495322 365772882 604418786 145284750 641138381 577578477 672106839 864548183 926149465 566983974 785633713 735013005 884422095 946340928 988167743 514379521 568043579 453691587 900024655 921397190 982764655 453466506 730589282 556972040 776884701 733220786 946298286 234839448 820701912 713767193 773413015 856656220 860050869 563851914 694156725 265254558 483363475 248793029 349477430 194893260 430940483 381607890 499981692 402776738 904983068 569363779 634824415 972714614 995143522 144532274 213935489 326091156 546131721 300888625 628179702 317808700 781873929 703098702 995696187 171800400 394686778 355899993 431559125 270445074 856255893 262310569 616746437 135052758 709217755 562415280 721569676 284779842 415088937 772419623 954348572 505346285 616816034 994831614 999829306 16515421 660816051 430622911 512369890 42976798 194662275 929000461 930494324 256683871 828708965 763389483 791073764 796718256 961415966 106640486 123586864 222320573 924063852 836432233 911550945 675654605 855134900 318804335 544875109 444350755 881806057 51785191 732493867 547919454 568846265 133940249 342829770 736275235 902181792 498991363 825540756 359365764 863942762 179085035 406004273 864848672 940645792 649149166 754699415 466463819 896988698 895193378 900558618 748546675 951534410 882741657 939073176 737148315 739290498 605259755 716659186 484786813 786018375 862652224 940224217 310728447 669528445 816687084 904223592 78505955 350525799 156621023 359324548 40933874 115787210 113678066 439897394 4712441 868112933 119202438 795297891 334490777 460519104 734706028 971176664 719386159 927192534 6294817 342328063 486085776 899512481 918750836 973859171 972221325 977344453 751777141 809429951 397582261 765034339 669939990 995865275 16051268 155462599 839530638 959419417 350906488 536695872 268489369 362026273 28677484 349316686 453154507 549586345 607906605 944741053 484728466 935542737 944370710 990585957 216860176 974532316 878334666 924636050 593310759 994084797 785445253 818821696 440917517 504142120 531731858 651634090 147225240 280648585 866752612 895155210 557730925 800552211 555434488 898342889 753910543 839736806 500055545 536304226 189731243 607259149 736918809 881568339 196007910 829498570 935654330 982713988 160993331 335533437 143964097 866694076 762342001 807363032 358501708 817050018 845707957 896581125 802667343 931903201 525780539 723496418 176355036 706133306 554258602 750933632 475283842 758401268 149714940 814483999 841278715 905126772 165277172 917792231 873456217 898501264 367244739 789719851 6973037 155662812 192694900 483184763 542595030 575317124 202416067 745743285 678076455 680279751 66403618 778089415 234835954 265933075 893855590 920506199 366412696 491936714 972121059 975919633 146854480 646906608 842621110 955193626 503074196 995299649 321003648 554164510 912939735 988187010 461917782 707072923 216329641 706524863 466736220 809524856 716570889 728697456 783449047 974522361 336038677 690905007 562523302 673922102 800190658 916334067 206060769 944936194 703411431 731462967 905524400 925047004 977456284 999178101 587698604 691203559 465479402 825147687 976576971 981978110 940744030 981580590 633692703 824684626 430422282 877670081 442497438 984802117 482337518 884348420 600431009 735517803 412590688 589066280 696245270 799986904 728921968 899476764 377207456 466273672 605587920 625440063 91369260 968970756 886547723 980742169 107291145 699840807 404307180 458467003 124490412 392714942 104460036 853645146 399883939 626625424 997786238 998122610 938296527 951501308 238794044 871735309 707793164 951615454 969535839 996455089 835660524 859473154 500397563 922732441 35015764 787229456 869584647 935552087 201342499 260134053 159411311 825656773 302987955 378397364 451319909 628208565 665821738 767688414 564823016 972847234 53687420 667616238 287238456 511870630 892215222 944046957 835181376 982428180 13720146 33158772 415829453 719093624 773932755 856291936 315152780 619031076 753306955 977945841 898089697 965449762 764075348 837090469 117104035 661892936 483374169 943845145 746799895 755719363 634674820 942352105 293056765 434748204 400693606 413760924 558982380 972615875 1168220 718688326 575645130 886035324 184852178 645722329 720281443 894804105 936682710 971439691 261844620 959220738 22249335 931726167 961374084 987465503 135458590 769513327 124971213 247297824 759929042 974920870 723214772 974109148 778956317 875734936 18242589 62539519 234016063 916028770 32509780 957814409 346900690 928959169 512765700 649369324 418446280 783174385 162277226 725644374 83190812 851164204 46278864 668774079 845371929 924934800 980978662 996366703 182841755 490535276 920805523 921372558 478518739 693066611 9496687 523296004 161994601 918861674 122454047 853118744 594497355 808608101 458367765 925325581 69818435 749207748 202297676 755805078 739529282 861051480 734278083 879760689 784857621 942245227 711873777 825278500 439343022 711772639 387599559 997192945 219947323 253548764 748973205 808975996 141536614 526304734 805170646 822704827 799126605 817050520 5411029 782157736 96940926 120285475 618173783 645483064 413327680 817524681 663236260 789735681 465141013 834416421 243692907 753314782 789647874 846543434 336634229 398058102 996921828 998300157 776190625 797980267 669995428 957848729 727186726 742102619 356241595 665027574 954505945 995995789 136768178 964026291 258840482 432793032 371121445 406702410 485963091 498012119 116331466 135360505 798819789 812812894 652593001 885109252 457425358 949796233 956930129 985179220 510006525 577174662 343430284 759521383 24805929 951502372 141543808 314586250 341230731 680913082 566848685 992205860 376536494 563769598 526255227 767080199 337558102 500153468 699703366 802244378 64792484 386512647 264116388 304787044 633047835 782323979 292364055 844913964 851230080 883386017 922057627 960817009 930775145 987834346 594406157 687310387 302259313 682777219 399337441 830612871 735177398 849500401 96530896 156244215 607998664 678391784 948182176 961267015 633155009 671030957 461609713 624227030 72188302 717657320 238358516 712730453 468726509 542877965 215079636 256111998 776530017 809710724 298909801 966540723 472799965 558569052 37264469 813678868 938237477 988613858 200961224 810383821 132725843 475860339 243057627 526833607 2911837 495289353 223374473 798866048 46979367 942686404 243593989 270728524 430982469 439755993 804182075 874480199 174365952 442094446 482425664 912638149 154462136 377247131 14371988 495218868 437476160 462077965 585232573 779687495 334443053 735659251 970905644 980352824 316057987 515647433 519570117 532537883 881691949 947986414 790140110 912802185 679374303 723993081 913258540 981833266 657700140 741030915 899677814 950406003 483384785 876393125 143864737 461109562 225460144 677545586 581042920 722706321 795331858 849266519 424904931 608986065 501599640 979003256 974736823 989520208 938539122 957733273 183357284 338890568 493423331 527972976 811518711 899444194 273156925 724419957 899991825 979851602 656690825 702409186 887177969 892830755 853380928 899405461 929016930 971273950 117767507 986194549 443814123 738844875 636993783 906029816 939521319 946792475 431961439 603126890 346335204 689242527 67417964 397553473 275369146 491874582 411020065 857953989 832409411 925678413 317557181 400756705 310456396 775913063 266003640 436250663 986377713 987327390 186533382 292245411 357074786 870300563 23129154 401227477 801563760 825306181 689178543 769519389 218547502 743437628 208658261 746248449 67448443 967261856 602423944 813382772 599656673 856082198 434217791 632880069 597009061 943786966 554529940 646176838 517299669 530669729 546728469 794198262 525196068 836128988 990641844 997374304 642652175 690055119 168422096 309019020 599413444 635087736 923370023 952008988 503841955 829025269 421563735 603964615 61908554 94306885 389945406 675129266 850438859 861063942 861385116 963825776 634875189 935017975 395846831 636313493 687621820 729581416 393455054 900736426 440228335 562500159 357000504 888699451 984393593 985984248 464767791 818824689 778645673 880980431 419628479 845388744 974442647 975806675 247806177 749495767 569983211 621831831 183956508 486567986 292803165 429217451 387121992 441468661 225922994 299427279 409655695 580880135 447127990 782613293 273785110 779851317 230730367 692990094 402920581 806823822 382713248 566534714 508204125 874464441 384012002 940613010 783583199 895523535 964375584 989757872 565773353 922878474 662935844 857028212 294161042 824691479 508685254 663178398 136991577 145013301 547924322 761681559 178948326 763726512 663117319 725290673 861378754 917582078 659333041 697208681 437490171 998689211 689879254 885726718 972878520 986994848 288705403 848816367 156589270 756564393 250396493 881899249 349622741 411238542 134164243 894296949 178392221 968176925 967704940 992887546 412909898 446354943 923682569 931852527 282751218 852871306 169585374 569430212 550766886 682288971 404777725 695342923 814615646 988969686 845503726 952654683 228654075 949696043 450815222 586150771 785807143 870451974 477165985 924883548 192818328 607533249 357388527 582672999 460843240 599165193 268058052 472239246 897496450 919239926 82130588 910506096 469029245 521223082 620427623 785544691 181611107 324502687 607228229 828336974 965929066 984527130 331176187 758063209 849736353 885074875 709201557 879826310 346302776 540274032 849745903 885504613 378011420 495654030 384651536 948046213 542098293 603562706 870652290 967301182 67224268 97671290 393326957 450508723 812934831 887093628 125759118 623416408 796876435 888385902 512389064 596930750 494879365 609331781 159276524 249720132 10044253 159044797 536430396 821641553 523992030 674490886 503080500 540662547 294746353 700975600 231728152 822550740 921856957 942493817 634681853 696311702 352163052 914628467 894986595 984351989 43004903 524763007 849866629 888383727 144563772 671887011 496280583 533980962 158125270 379024775 892409874 997584840 894870936 985004437 485980787 813078807 262093313 909415669 121434073 979759837 27550985 381241475 330382957 934958257 891111773 933132446 301148532 485199868 58687874 410016977 43920614 486450762 795807707 918468794 217863126 295726235 986994340 998473546 422260252 618411010 373842714 452628286 631929949 954390753 560459349 779039729 795672799 871944102 923057488 965931283 804743222 816777206 279689905 636326166 679484667 745242770 615178982 904637097 448727886 891766990 884543718 910141660 816879014 982833768 56411851 382818715 37096632 431258957 170981840 579738679 142234528 628587570 869609557 952332146 127796581 184435945 905409802 926693908 698088608 742131994 641769702 653600719 51245992 114193449 246956668 275900563 860511973 959040900 216475557 618354776 225675216 784434772 746700256 814494459 528497249 717768590 335496549 809284442 28503026 247671500 209263412 484892441 329799326 827701387 952168170 989902395 521528583 784912023 480449771 745074019 724546829 764478949 274380529 491822278 195114758 631826267 462617764 879550161 669244312 906712146 377309487 651830339 289357854 366878428 401722511 663818266 598569062 607509091 660629314 834660095 629328182 646657880 557527953 972182198 209712815 747355493 492917425 623727395 735477256 971797716 458992219 973026375 652882343 865898436 428125497 448321530 995364505 999690909 767269711 961515032 145279624 830434436 741937275 900011938 502385362 704736552 888633658 955062523 299852156 922469362 510903687 663782862 548499366 730799856 444257663 799626416 518997799 755453541 165461426 313908802 828107695 903824774 808168133 919260797 634983173 962505868 35219262 944803404 216067257 528382990 805768089 972248885 884276434 976140096 468658074 800797177 428073207 463363804 366812899 924606971 160138232 509842521 210358642 648021167 189228722 528492203 781849014 801308729 571359489 874639239 939606467 965472886 93830857 649673746 714869797 902996195 200627306 851605630 836089352 918426916 665035086 909165348 124842091 695777547 119299537 556703900 609533085 907451207 872723774 894230548 403419046 741056866 490705786 987829867 732945662 739610477 919740366 969481616 241851328 602036738 324157692 533556006 8674504 602184529 58730929 116345820 90334256 411817623 235721342 356859232 787643974 841141827 201815704 559542989 552495275 571368738 170348688 587394663 683354544 966579732 885598045 888890642 697906933 759659572 273718640 467174234 133889493 614804001 748921546 961971049 58450388 270676527 378997055 979698841 660460018 692209582 748570520 901978871 786313603 979900003 9861376 124080393 259976644 820121367 319687380 759635395 947854203 963874520 242952713 603533085 865330411 924950600 600436723 700663100 482071201 639109167 740389324 968177167 774732267 898516702 490810771 556142958 602844701 649827881 513682525 796221295 700873095 850872038 554643006 827517511 787732799 796232492 360017624 443715412 225725729 357364390 619596210 839249452 615454609 933082335 882554699 882746538 742027228 905727849 271747685 459120857 706030026 797237137 348627981 993549242 767886745 808471438 670149285 764776536 897829326 993150960 70376670 535811843 494383004 522766673 658917594 990750751 138117975 886317181 773466973 915522823 305093174 932713330 360380493 865955546 509992989 914730253 515170275 967529882 66639003 509567757 510651171 906205329 532299197 561344611 786794403 787056992 450456104 611468701 430304966 761209010 489025622 528717328 124505823 737668003 782882894 978146051 609503468 803729734 705480171 972701395 502990494 529823607 688869991 859239771 600473253 877135245 546449537 660629977 175015744 177139357 890668479 898752172 205522745 752644552 620843428 625686260 849539109 944252374 949254295 950158240 701480415 880993898 123554273 253159840 933339783 975184219 556031746 875018561 876442519 887811017 820922455 902922075 216857808 746395827 431540773 721467381 970717511 983093511 803953899 944791646 480201232 936366996 935141783 978094980 203791188 312805782 333431704 564210974 290211395 847738789 127641398 383912419 804501903 977658194 999134529 999365958 34148127 590138791 613203453 969746837 287099470 321406083 10442118 562685922 204888598 723543617 74787736 372052881 596824766 941234045 861699666 904100374 254537679 532082823 160913960 813738360 219719358 661903714 308268770 840732365 289453398 717342509 956726517 978542322 819502487 852480623 676151177 969582682 872528979 922959480 929665322 938577437 774055117 792516230 718265808 983825130 848967663 954671640 102335011 282065083 478600251 691273370 121821131 753289286 366255694 803721303 740973576 858107169 808078865 846077520 773968739 846077852 75198284 725167459 898384312 965610578 764358537 774213171 773234349 960279631 161785417 880276562 830217950 831543180 37199622 509017131 690108848 751875701 930033856 950549945 597977999 844799189 680383763 939116474 194025808 761308486 270224349 742906785 499355096 904018031 271481413 838732751 116919168 215712072 478926828 495758887 686073256 800588418 331053079 632354077 998339086 998830676 86168343 246443781 584777251 849397425 998905984 999277423 180641923 234761998 386506805 410674192 498495576 734598997 637382264 771800622 209128688 364062401 202910473 241300580 168440458 625038229 486169603 865784383 676964969 991354776 466570678 986620738 957067565 962273320 251212299 555524151 716092740 970456980 770907135 823802807 190134460 928772197 499148938 869308373 60844931 211916515 599393491 631690483 341686606 411060675 308740669 362234606 239891715 287256786 325885430 574790859 39624654 563980984 595741490 745285488 757734735 818506206 987552834 997456293 872238445 874215800 173791568 721201789 805200896 860453526 28140862 377764228 438310544 859454322 148249597 345489183 718202287 768426319 5457634 391869576 403810791 429282797 785943450 919153697 615110769 930449244 53330614 878646154 65087571 228135970 646818059 756261132 392488610 818800679 386554914 709363283 673724833 879798669 801543935 936758545 224869534 313997250 339272423 762229404 354842573 575004665 519693854 529560949 672431744 916548974 294836646 670508774 684750711 805653003 626233527 678303781 764153188 905044863 216860175 884571066 437828945 871214633 585628291 729181225 657507389 703179382 988296702 994813386 45219278 361841240 34839110 43433653 349671724 897661172 559785779 778930806 432834665 913026407 140721048 353181084 896213631 928119207 666301134 725902676 347372602 396183482 473835579 831178816 484455497 856096564 166277436 638331261 900385237 951732021 700603503 821363766 618439458 795784476 921434984 977109793 165451961 252683102 983791676 994362723 564527721 807710746 169970582 940615784 583939063 999440583 731732319 872870115 311984998 703432651 841171399 971881339 71718582 83168278 728652663 965044633 642971035 739680666 192736970 677909071 508531925 531222953 762072021 792541964 318523886 954792138 7820496 969109780 818006040 961161270 201890113 756574731 345350739 658839098 141318758 850296783 979603248 988168521 94913749 903902651 369991768 687511437 480288594 765690935 281741362 870363942 448474624 689811325 972859416 985776772 354597474 856366074 657106925 811135004 299109227 663225494 835385536 938287958 843742822 933449076 143240001 682855980 728997717 985755613 262175210 912943764 490017590 688321802 575288406 693334292 479099787 708741446 983668552 999996942 946234947 949892612 611838203 646442722 756437241 800642156 532133109 949934182 713130396 883214121 530603412 916443662 281806523 585258829 804678184 875031286 644774797 807561183 592603794 809680666 921074337 955181427 998556967 998923750 794759106 895727972 274540306 575285448 727997988 848939531 926517593 972673207 457414351 843709798 506908535 725568099 920112845 926238684 827621552 861384954 375273932 808932339 658323993 839425849 181346535 740564501 769003152 894774411 901010339 907564966 737937233 929515337 446406900 889485685 246673561 287244445 445188416 551284270 113100158 694892604 125883222 498651031 611547968 715780569 383213151 880116326 860511142 985001380 517050281 650576975 990812268 997173331 782302592 915102030 569839396 910619822 197860628 761346313 60100536 366698488 297851320 859521504 301625169 409522829 556213586 597960870 619105560 996626854 476599643 811875128 713644209 826958579 70195682 650649446 800222464 918275377 954835391 959420091 180800378 752767672 755077842 863657069 141923593 863240960 560636557 976209597 195745097 702027609 54423347 267797652 706195731 904688580 477326427 587243604 913636615 978722316 783763879 844173884 244007090 463187003 860896021 946628197 903249247 998585462 287674804 759218606 65024173 367367080 703909888 733472893 618574419 625925156 235532457 308137108 551565254 879620757 964320132 994367375 859684541 882928920 572986128 911831251 387140963 699275277 125641548 927612670 476228555 505489154 69490334 277080188 396631865 702367434 595860501 954454533 149830154 190108680 535750992 793351796 658179683 967544279 464629977 797160868 499767024 951594457 179164573 313316510 459805770 981310982 410013556 788071030 503666673 853784812 986293312 992803817 142984204 413266478 122761886 677683348 638432515 869899280 480986871 977167866 169959458 284282085 534944402 902924747 477091601 570712937 339094729 700181093 350662662 520541391 886917045 996910106 853278784 984115074 724595773 728698607 852061540 852212403 741355835 899023039 14834276 761348359 920973418 925134200 293319653 473154313 190174243 454617071 920738291 956069315 523109292 739245597 934621029 956291739 276180138 317188217 453708437 713474605 456662155 835809015 136502090 405105395 252178806 374919378 418611704 589156770 495804101 791787631 225304449 663057956 716385765 716505167 721055506 928823760 861907198 950731898 649748172 663021067 892292862 922685994 91351603 154421409 401276261 617529097 331622523 613464189 963829707 996818744 157026824 416936316 150815157 200808480 831461474 859601882 411729763 462404188 637282658 844136343 342257887 681731819 106811195 574130462 714735410 963482909 754673719 857348593 268073556 384558792 245396897 397171020 875283514 903106152 60597374 355156728 283792098 751556379 677682661 726460929 964396923 996401996 470903879 497585418 712048881 996268922 617703914 865858562 379479800 712674945 626330998 923149406 473603044 793718105 82092008 122564520 685632295 862063091 417303346 839035503 151079469 478159462 943972088 958131913 649897134 726592975 62528830 456735676 114607333 991770246 119493611 184943933 734862247 845854016 756777727 966286097 576034071 722927264 711326348 866568483 268850257 764913813 98297516 351597702 400940746 599920208 664479729 711648900 889246665 909574426 817669824 878639029 401889008 679583788 853555113 935011896 678958225 849452604 840092460 943354556 14712737 425716606 486197266 760517341 68154834 573380901 998446677 998652999 404262205 471449015 873440398 908651252 860359820 868377431 547091887 577191970 968481344 973770192 781324981 904468893 710251814 970739513 589316141 942244573 410075731 461048569 174107162 582527114 227484253 926860151 65925582 528862261 131557012 489350108 923681457 935703484 397225863 571400193 174519395 604355385 163763888 256326425 582391880 759415060 414313684 443151265 948733438 970382826 397192767 577020843 9330765 779193174 493026111 826481874 84199889 632561219 283941317 664763848 215490781 594254202 575247248 899289031 678139295 849485381 922713200 938545622 945706376 986988484 486230081 783745415 901970517 995868749 571788918 935875422 571092516 931609968 824980568 826374522 537430350 669815467 235590944 712106864 366040869 871175386 557017443 561581756 838935818 865808884 366656938 462519783 927969142 940361688 612052019 726304906 521069983 589170684 884807908 937452261 332450439 433794788 163763310 873031083 63038306 781697217 888020286 963207995 542170950 880359944 675678456 811230166 180408127 542265965 324075098 773598879 547765087 598662510 752801637 880915829 121883684 631254403 867965992 973645503 857458677 865033489 21357997 487003168 532549519 754437051 380455918 764047686 904934217 988368437 252643553 556475072 825761416 872192810 424348691 896402245 379902673 442194642 136833242 789674641 951842074 992377732 287377360 486553216 74770498 894027707 806197805 935719926 353329992 913588616 272768623 480768306 967863420 987400518 69812775 797989011 793544318 854393704 238571784 239656431 624715996 725437694 90411260 544021954 821596691 986320145 808375140 886354732 521186587 545262939 276410205 360994405 274275236 511035774 110583144 174241875 902226673 957192680 113573552 212616253 831953134 968463572 827407175 896479237 259224380 966150241 192441923 379130188 532411773 591897299 561491602 708976927 189788272 966596103 493995562 920898037 991643151 999344253 534110688 888742061 454015937 597402767 143763796 268069705 580936899 991329437 50600896 255328909 385899374 931597203 264929016 762847162 752421183 768212359 729303954 778697733 372625786 782754337 651778894 706626609 856683209 885879335 551992271 979784033 71141170 167302744 697124004 901960938 988232478 992112908 469294262 812817522 977948379 995606100 9501473 79505867 339824681 680310315 333004171 674369909 597203762 943879410 177878912 968748567 713947920 901237457 81904079 120490770 16486106 461824779 689618381 736210366 959553558 996039285 800240698 887772384 891331149 898514703 971574603 998211393 737588564 784474186 697168256 919010029 942614942 986370901 8124160 362763977 915847496 953434663 986418914 987210208 381561293 797261931 168979005 334184630 686878330 778081701 508466981 709137233 439618783 827368919 469657541 490693727 537754988 804579553 222295456 996801115 389304667 804276894 170399552 482027649 792305902 952261748 590852891 980722939 684121659 816704454 584208825 919189967 996616191 996796472 575680730 941607854 860104665 926237405 1918582 188827238 550656774 623625600 291914929 992648561 357019402 794914390 992568586 993959516 706827900 767365017 984478329 987393869 507067578 951691173 249089777 740215986 255515406 983057396 330839734 868069097 949306906 977766338 276044936 772039593 322194165 701264144 206328518 288234869 81012230 636717308 94600708 114480237 27435989 652022837 833331557 921287290 947039211 972914642 189730618 212976832 527907398 614690809 155205533 267015072 285413145 690353274 395474090 621356333 797881242 851274704 823237329 990132676 9840514 166927378 148610336 791126562 584675893 677414753 65379123 855794335 562198509 848998126 236222643 666436600 711368054 993583704 287630068 868116757 411063452 892906829 749806630 851938479 600288515 730318323 857617925 889078526 809212851 849021207 395360121 651000930 117724536 260467268 660069696 829891071 540251343 694363301 497638436 588974925 343786163 434911249 557225690 885571708 205923655 818214647 600413006 856514178 118193067 910670486 993756997 997708311 722667725 756531342 10526313 638398740 676980139 909027789 69392562 772467157 9958382 455469564 516104532 621378369 993779342 999558888 293904902 647234626 617513755 855831163 325010830 966703531 448078763 922490483 778363208 948371143 381401232 567473664 9247206 328805350 229473474 913947102 137076364 350776860 754310307 854382743 858099740 916043476 837865821 890917094 354033035 811007087 713558266 952718612 603909240 878872666 92033182 565042131 789496762 816107466 631238887 693095827 532824954 915135101 225724971 950335310 922230270 953473495 511331402 980684890 124479434 851575870 697490156 810431425 836164483 889477670 309677605 633961890 712751900 785769393 713209291 902292752 618276564 892409056 522598454 573812148 172428191 251820695 16052301 156131787 684236127 931837351 982002123 997231695 392053910 716656183 119240177 443064093 46415644 281249160 543453683 989629083 237783069 768429565 425116546 796208766 433970183 497044701 838086111 935188242 143027897 986807425 496737634 965470463 789102503 929622581 370391544 818906225 424075914 761084782 469716179 524277891 733681548 975335461 295897906 466591588 731447864 969015692 687257987 973085854 266926978 393893500 29787384 700163584 138462959 452865581 658608332 854638277 514215240 714782802 77234204 572433294 888093073 989816753 768970833 972774748 678751820 903287969 311508473 864693282 760460413 959964794 824033811 873240585 293102377 891224179 948748965 957571497 862498328 935893495 88581940 158012548 81835848 855543580 857120317 858353211 41796644 406154264 864254826 922714870 510930953 922771571 32939338 340402314 16422801 929620488 637400335 803179520 890334005 996428579 538771434 896625731 494497949 688542096 793265888 875905850 111281703 705329416 338687352 650004624 727391062 817205414 14045228 737529974 279866361 423711068 992602202 995895476 969246350 979214163 784291144 811134607 100900245 893802659 217580915 654567625 226749442 272614474 464677595 520128369 481045266 578277115 475822932 830515919 678520139 896249981 988203312 997426452 600847695 869142228 293805435 418808330 759755496 814903753 743228926 768374295 423270711 871530506 288454518 857737498 514286003 938851570 979068912 995743617 759588362 787882163 970098244 982774686 278979654 835902761 929895205 932265230 128710415 147964942 229184237 891647007 593058561 932407248 700226954 919179072 483358210 801656796 260688222 777877055 902885906 939715879 689832473 955076565 7492710 726628035 417937074 752988928 991189782 999634613 640181142 748128043 131878177 298713178 246006106 724202233 807935309 862997024 719174433 839999369 319074659 934390839 808768525 833760054 230561824 497752981 423614244 501277893 489175687 965938910 647037126 800293083 320131607 707805457 596145530 608162425 464209454 493881702 442719406 983702829 814545705 919504788 355867797 990951331 377515577 702405005 706245636 772257847 830910274 886602073 943669137 975023168 390641859 768311131 551217130 630120316 17038180 818021840 317794129 523138463 685900467 925562934 496416506 743602283 519281842 914164367 464628713 984176706 288642486 641625373 789791745 998375856 87038130 896567205 480216785 514157701 231212164 408217786 185923537 328099913 213073206 882732987 338820232 776588110 113574288 169489301 661388966 927652458 840072920 974291830 441508348 832492277 43520178 781275572 953736882 975372030 114806875 931137790 92875828 347032451 165230758 634627683 490625245 741518770 754221209 763414253 146046595 441773093 492002769 989317408 515255421 574412620 998166146 999259590 907655841 982849420 756936028 876769313 11244573 779980936 149864069 934931560 136475258 597796988 190900599 597423142 994723379 997472557 118797671 798825800 768644558 833303948 162090941 314597691 443785159 648407904 460577045 580982421 105515649 762139696 205770453 844718687 109384127 373898594 609653093 620744488 602293255 714104322 255288679 255694029 161769538 788778341 866736233 976218569 469162274 759789158 649184926 697421365 35506553 463740191 564349079 595417100 361294092 579990876 77452506 501295252 403172386 933797778 117767962 990224881 269165788 523922840 658848550 977789165 866386031 923653455 867010764 931506186 233326682 647314923 805461352 902814194 311121439 317531252 972836810 975259113 866102884 903633841 698513323 922413174 730120589 793219732 888958379 939372482 323536137 433663670 704785951 948922559 955143829 961556440 800408962 937397494 838765713 972958811 916660026 916844086 522633630 877583564 24301214 788978302 975346316 998316866 650260375 988422025 220680528 831144489 91018628 595822854 288362717 456347839 769190211 784161239 611593239 865824328 396967033 443849951 322697991 654668527 17415527 686985076 138088598 664202548 816969547 912635705 990578254 992640925 7906277 732957568 53878030 98230680 991851174 995802992 424083697 921778655 605011689 921294243 116094751 780094217 593240992 923642349 513906239 739496616 787688124 977234865 84242195 676522876 687306328 995470345 30948450 941864192 63289554 131774746 48663985 792112904 541157215 803094671 125998554 726706430 911476260 952255240 499237691 750454253 159060778 190981606 757759953 804479204 743158776 942305634 525198165 548977444 654627990 689290287 716316025 799924819 346751003 597327502 785616493 973439708 61160341 561272799 242574531 557281598 916738268 991800685 869402827 912395365 819059162 847948141 327809354 729779329 493139904 653711351 43491161 181175270 243689100 507366130 668563005 712878495 284789282 619182843 580660854 835900762 967044903 987678878 97960902 206365973 292925146 763312997 568673589 647006698 625161988 645352657 272685934 564581990 568248296 805117697 860534788 946362558 742571773 903281200 709698511 865826669 222108645 730121117 859897799 933412052 335582217 503460035 592361658 805361126 535564993 829986420 390635650 815440573 641614083 873696506 827623283 853808994 342030913 521996863 291159540 441240436 145128256 549518269 837869002 975307715 563258801 961119158 686740739 948930407 264911642 478510111 194103433 500437605 561803027 995450091 602612457 708403530 767879802 866562406 976459283 983702896 100557375 503412870 137671992 258762466 694220051 845021943 418839876 461963379 546084868 603620525 420454549 895064756 391275978 697273848 100632915 783691382 102649193 989811410 366711305 540750167 168596238 968539528 232418717 935067666 407873147 903578799 92487231 994549476 618602956 961703383 534562969 953152238 244595339 459504548 519377765 890878010 634288134 796530340 825490406 847430456 336540247 770166873 52736248 371864844 876377247 999995659 364867014 995143622 38630412 148967050 180477895 968426096 534336787 642185468 500837328 724428019 474206251 690364378 624431705 973020274 263862082 870436106 588132704 878007792 373186685 774152084 845589075 885230460 753621769 935620912 532278220 664427480 470256960 778781332 349557356 828784904 631490067 827036667 174904821 464974450 819758233 862637953 661845138 885774340 777692611 973691607 888588193 978331481 465826871 486181854 805723520 832952591 756729524 910825615 796691612 846596314 112862701 181212958 952734585 988026128 439303025 579842225 369268147 405774654 763214908 971880259 4317656 665376389 571675505 978355452 345889689 447393342 665252835 792200076 809972137 823597294 303259017 710929786 239323229 824073340 764744829 828213195 93603825 502269885 489677536 850176213 552935431 553788374 214572608 807245651 382518763 547166212 419357342 428218540 400701930 526224673 611293447 644323002 878137765 946390402 935420346 942111208 463033373 492962686 274995424 724232886 693284373 965024995 424810965 466791374 657262245 953773383 371551367 725439385 94853042 439314664 357450964 812957263 342457499 372071525 499199465 542220448 666610428 914374271 376532774 468554678 30240603 538703261 652925935 795610807 756120571 968854990 269327913 752114806 173154895 674256547 588442962 869203638 801073522 828563455 128897858 138803769 16830871 174986087 496651908 562547347 117624776 859897223 37550320 861612178 690150574 864142288 27559508 308069272 333111174 926867633 807997772 938262862 76748468 313435551 490318152 597399523 257590042 550165906 289268682 409477705 55534419 930566644 178582309 839581816 529884652 918217893 57970862 504583486 804915557 969378915 927408507 969086792 601692763 928597338 928839608 935816848 163992850 909776593 600835995 729000410 582203673 708823201 878058032 926431296 346953851 610477246 764967772 806731530 353754372 781684788 475445963 810931011 609277841 691565311 994627096 997588302 233322889 632599935 591319824 876694412 318088485 655202534 166977719 684342080 567571881 670171359 643122247 897995039 299680283 548744595 329620808 568985794 69289357 256818891 194156903 756497945 433770858 508388480 858552852 976516867 317980301 504716286 713716420 998072033 580571781 651536776 813404295 855939962 278417238 649828557 177807179 682583653 912430405 950109528 979203922 989859287 931221896 979111570 828741052 905805891 200313275 780893739 523313649 561086084 866027763 971488558 537111412 811049526 821594323 848875844 118924442 427073014 153832861 402715493 533569531 835256237 211889255 587109190 486182235 958618292 26623444 805534263 644925170 811732736 651259554 899617843 490978428 640537195 514174311 535451951 325730612 361229025 516081946 674564166 960751903 965739781 22022765 773077493 578150529 890617843 257898770 949065252 312477613 502040918 408593054 675920498 595440571 618560804 811245759 887353045 941346447 957908424 80162972 264250619 125130731 905315360 610886499 741579468 455122050 597929335 739855162 851151188 32518449 515511324 874725099 943657275 397510005 804752928 160925042 996723258 989903073 991312647 65826613 417818755 505420503 737429639 472445317 928068297 232576825 390869708 474653051 799770390 953764429 987813123 354046255 578440266 838551583 847536619 105188496 460083951 110885146 777799267 806637243 876748420 868459442 967321258 911141901 917510467 931752500 975237188 619370229 747133778 113797995 396131998 539591997 999988804 809374054 882453746 894937728 979871576 875693639 908894497 677068074 828427009 126647588 825457763 61440253 666708374 24594919 620462177 776845653 918471070 231462051 794321550 191809055 235708954 312426095 399765715 17255974 142247730 693415761 948426126 426422650 514722240 911659915 996318353 100446733 190301900 367399522 498964209 473179503 759088505 307190877 622690758 853782441 870084466 812356303 949498223 901600595 960796743 889159744 919138862 523442464 874357308 355971543 776572262 732883597 962957400 106550330 981309787 37448017 292000218 268496742 771305084 783465899 804236462 878192570 934753094 905157977 917232755 496891669 783731099 507271801 546668634 100073979 534783576 136496180 402700572 225759569 276493327 656292476 723505398 269241463 888351330 34886615 198751828 981641836 983629948 554130185 834541704 49847691 884912281 394504946 549559996 74541103 662597201 5789407 897051060 980504542 993820517 558224432 893622409 791014273 950113229 641631333 958155940 946978925 972247866 447638658 471161532 115127844 746424243 407594857 772447765 612271903 798398263 42484806 729792187 847359810 987649574 700340893 866723946 915080718 994057687 464485242 486741578 727059085 733699602 891495453 970734930 400906144 593399263 865880568 982541506 469841091 911333442 212479155 435799372 247399731 451504234 171435729 894866831 147554855 252134847 228462439 485489492 48891302 335109827 480528690 822397302 607449030 667312114 363048714 851353011 375703616 972841559 596868891 849035704 93064876 626203741 298166873 979131539 572356300 580497133 547948637 622203203 375482621 717154974 81036342 874412095 678393361 965986938 135717088 801652478 845437522 998835989 292710420 437941829 13934747 482189598 408221471 996309551 856625150 919349627 825844777 846897671 526149869 603035310 242809706 781582741 236488657 517866310 243689001 786095759 734966574 934743795 811842943 910481141 836974962 912478769 367246152 403868947 611377885 907294242 525021485 823767025 740213488 834791515 943183133 951080279 898223470 922901593 288014286 525102022 958111257 969020201 675245034 994941193 681242795 883156644 698382290 990387198 978730532 989620228 967037369 982185217 922659626 970882708 69043856 720051981 2771643 934275870 395880220 931853425 566240362 938532480 566638471 869605695 818918666 924454808 315319601 888725448 998892378 999675915 78570808 253737670 240377453 805947368 943835982 959355527 808612870 846223306 337691388 703716687 808848648 908070117 210581672 850959402 201531153 934346057 921845427 921849179 673746972 934928181 396529814 750158508 827047196 953541500 506177921 895011261 509359973 831132523 285332029 583797986 970252884 981275777 565802716 650070022 924641705 933981321 876686357 986264503 528175126 747239504 301947751 604531938 195325412 853297210 623046827 635756806 659150382 703536537 840834466 933711547 865348258 983759117 249973618 524930418 629154837 932216983 692905230 805226998 430265199 611093919 367457405 474748504 277716567 973982038 908956023 971601798 198772693 947945116 426802252 742501708 781452073 831174785 856428765 860402330 38842408 788505819 598796361 634839297 327854335 670247438 370704826 881731262 149109520 952512659 63555593 643590348 843930142 910936099 174892199 810317054 816126751 841039040 483669613 965946106 365942716 692498603 920400897 983581108 626538024 877565544 100479205 783186126 265097983 440455559 578448751 759591904 209958214 777352846 396309277 566443741 327494638 909639000 379103721 794828615 495045011 692829958 522673197 903286628 109278432 523171057 509855947 893652037 961039051 981682684 358030437 955002234 590936777 762411521 165864738 257891835 963803106 966207998 676724686 726001719 180890990 254097855 600667178 975958301 879420850 928115477 820416954 893432017 76930881 732242267 942717855 943962417 591234090 914084330 226820412 495854401 133310379 162630204 379044263 466594645 730806470 737216264 308759889 492399743 688802779 783862032 77003353 224409856 886356543 954626680 381986487 656570676 183926295 515800529 612021435 952914418 643349689 777235762 567672803 594735733 735854667 956994022 555014233 651803187 413855444 599629131 104858045 777440611 285869986 307636379 963023802 978374538 590776022 971485703 354893727 434522027 386646339 417323448 644113002 650230038 62733434 247464922 640946897 807542320 604275380 806013588 644255416 901182883 102608585 408795118 742281719 854198693 202320535 712010972 557832261 745170721 72717501 794797013 245682581 554485233 378453533 555617318 173867388 270612619 625934147 983215106 412503693 888475575 670025772 893563540 246543011 932200119 888926286 969173612 159077496 762621178 331182354 853575330 247429089 914432450 298284077 641681316 999457555 999599565 78501208 654669682 631700480 988167863 229551107 344163147 179630746 563519504 25380653 310862121 289190291 878244081 877953088 972504079 664974842 949614339 328513591 729304544 768057069 916632407 239756013 814877282 775765180 958474437 23792870 139055234 587764177 841085133 870995817 962245882 597065173 839313467 406785005 939001550 991964855 997759784 369786473 434069715 194580660 284777699 728595055 822606449 757211745 890252494 743156538 998954888 149634937 925857122 631252828 935053366 599382276 978937539 611209202 968341516 95076832 248587229 62585588 822855947 409444001 447805265 149618605 353991388 33308133 34713389 587399225 714696367 607284412 622426901 452243029 846960768 979143331 995062056 607801530 875066355 647956178 744206380 715424613 796535692 772173292 980181480 935379103 970404104 404178221 482648644 974166104 998042578 303864663 344375502 524384994 622041757 999645278 999673603 134110585 339671055 405705502 645750677 409801118 433142806 198179785 602523163 98529322 651524123 51718682 516617608 47569511 501944863 415874001 420271184 137564433 482825316 588608565 836279037 110786407 747244988 53392280 920944397 861294294 921014554 8523904 71218666 549564407 730178598 390577185 955968348 66637881 947625132 367406194 888943214 966036672 983584230 105421122 338518199 922512753 933094180 992127244 992873374 947076752 992929523 356877466 472353861 144049627 584011672 507891192 776387596 859994781 990684969 79752462 213213367 941677024 951428075 781827450 974432727 338761011 887955530 82349612 89630162 818271417 962591625 474753507 791244341 436348775 594384100 768760708 976623634 492329135 841241318 755658103 872501267 327849976 404727824 948778396 951217057 897596271 898082489 961689214 974652496 470126887 926747861 962351827 982986037 903098510 958268848 274880261 559756095 592166591 671970155 553641492 594683567 307122327 634326012 437742592 751143587 768768903 891571425 551593431 670962258 209898949 986537474 894840442 950280977 501693487 652664677 407672860 825563860 864625634 928463129 792038129 998504701 134797386 548422288 7622897 851896074 785757926 997182265 775963193 973093207 484172624 703557147 304125226 444367191 616479720 684113566 928922652 980898439 447600691 747279096 214083548 472767677 942097781 953774890 34110404 591104831 578365641 996726375 797834759 863854963 910211756 973230248 79012478 703005660 475421009 513989308 730894410 818634100 289083595 685204524 917807606 942776072 925554009 984938641 104331617 917673955 931408831 971852468 387178882 449557509 182353640 456972535 676564412 802951826 820192635 823018524 459242230 517568991 623820545 835257218 241794107 819547788 528043864 739680943 400247791 717922240 992358773 997416675 801052653 829313260 156271648 421052988 134393814 458795648 510836490 836983001 553776089 775989006 43971596 889908310 738185043 921801781 781763407 952042388 435499441 933169192 494766772 789622304 155929753 998697995 194059248 283682037 616876891 897441097 52557527 412126225 560137197 915999683 666539591 683104316 888643791 947750483 264798316 304782254 984368949 994660756 330546492 364374142 728823132 839140874 544757216 661964408 381091699 982279280 850770143 895658552 286193897 454861260 891484921 896719181 939185272 942440044 190484341 761378214 550235964 676850428 393139881 970633667 802849172 848199492 527699138 883097257 742400795 800420618 885514824 990225829 412496942 435162036 227020920 300147137 270504455 340092583 417564350 540298366 220053302 903951916 25652708 736762788 628122433 814114733 102300831 159189076 360117978 802053259 813721902 963409327 534226965 778620080 453387017 819992781 157526930 200897504 952053055 995847321 339962000 750868770 733053991 854709247 87252568 721852514 408987497 971597813 360659298 752127816 54436510 432621281 809771347 834538879 856715307 940330319 332992467 620117263 900064362 994207785 935487026 968717699 903409954 953925723 66622374 749402441 567404572 674143896 914985389 930518366 199999158 259128526 415991997 695453226 644575839 833464534 747620258 979786612 168726728 722103225 29612390 477185491 553252143 824373202 858603778 952503740 837103288 891540732 6345790 179353524 358989908 741469536 116428649 469356355 188869935 296865108 307295490 625235395 562641180 605483215 609805816 761385319 724255453 790771348 557927147 905536001 401041805 962526391 988994989 995462066 731734039 979867990 712729765 878375733 390327164 886804049 400940190 463174913 776046379 805572091 187917923 917337000 252150310 850412725 441946683 942128028 147967332 477627314 894307052 895185439 544121074 716399893 732479018 884105410 973550630 978236993 460360713 860405183 559966802 815606762 314375082 685495984 57329841 437600364 258687790 953200308 699234090 948378626 123410147 256672685 769022122 788116065 833032241 965091333 944059980 952593434 573576460 687598587 937368380 961506286 609208971 842048440 115815628 526359125 133702844 268956958 214589031 266589320 354408032 508826431 860622533 966672333 714358940 946988984 210454833 756024782 696082882 841091117 237904687 662199006 700641258 730720215 482598045 587600555 486173010 587227248 28378647 438867296 258510694 355216691 724629148 728166486 245928008 942071511 759470370 773837722 881602726 923666676 449487527 789291431 23144544 238522231 194825330 350794618 993159172 998427106 797852510 878253040 653341052 978737233 336961991 394345121 490507521 683851830 181344148 256454924 825896031 940104305 794119744 926043851 602675048 941442018 44723855 806623782 403979480 452608612 978492528 984240330 773588499 960291624 259302673 396169718 555979640 652768683 841490373 976596797 17144789 333794710 600452536 848752936 763767613 969726012 314138882 983202024 302072137 379155635 53949519 318552438 121165717 302083922 639070459 724407351 471033706 999034701 844665266 874556575 400135199 854987885 189019388 742694324 791643275 904451604 792812866 984209208 77493255 858735659 479865138 594440083 431087663 838957108 996112789 998282930 791607798 867564071 591615299 725071931 23029651 110870815 111339481 538053292 68152602 591316185 793158543 984612068 219264878 764006408 499767402 954808109 223880244 932060797 622429713 977289750 233396307 460158306 309006104 616327115 586424728 624532836 131762801 579090775 459405601 892130459 71729915 961322638 638136596 915438638 824077619 866726980 278893871 291647462 41514239 765505131 946341611 963443113 361726845 536327128 216189031 423025313 700839587 797322771 418653582 865242010 563953755 996001422 373595655 720516458 614485263 769683609 389552597 896041315 720538043 970318506 84573322 528341235 106417396 304885884 574654712 664690861 88568812 245915013 716889707 809166801 343436498 352486156 393597388 458885551 637237514 975844139 548504572 798924252 340705410 673229566 295119641 628759816 691904188 770631563 669631264 751022095 589161926 978368912 807881467 922232046 840736062 958391083 702370819 715350457 221126322 226710122 939135299 946869925 152394503 215962379 19195896 771848609 945452375 976820762 784559767 910327853 724463225 856812816 507208236 999567373 82749213 715489789 570841372 612942591 777109206 799030209 979214591 982253192 698101794 837645216 613861605 722333649 149095649 486635324 846297106 920257607 745386098 808208821 79672719 548447551 274817907 865059777 773924345 796393746 670964044 712842130 561542815 767367708 62185014 287351858 842456450 902236349 864839395 902762057 254558272 450680573 750058336 974780803 89393814 435339921 447219241 511589625 279950946 754589233 630718703 698513005 631725939 883054675 868020629 966783422 762614855 947059489 237650157 390150572 825452951 924737329 655992126 702899043 265316123 584248362 545057435 749138921 550186705 970635651 4552312 365412830 561335806 646421227 476943514 887745919 312594899 581522348 358305535 642475531 788229903 971965947 960633056 967092756 348167097 540510336 400832141 532144169 599425383 796453049 187903916 792834979 558315592 868190217 962311262 984022081 388098825 466087257 816826759 823805130 691281794 863654050 439022103 643045042 859168401 988100368 829564373 991945434 191090774 769037953 982049190 988004713 910284142 975093427 321727607 967377876 607966584 712467061 522570254 887410147 750967250 797547538 80043366 211573938 536346752 658157849 790047952 838979884 382375168 577516177 927345762 988572516 103306016 645404860 70020783 687582746 407304309 537770627 523241739 911814998 789309112 955023811 296183636 887338720 699120055 973151663 4444573 811220750 917700285 967824053 905091514 949818956 290994534 956446407 445205377 979951422 264158324 303913795 681284323 883860062 287642324 805546613 774013877 907557756 284904577 971267023 614724023 808322912 550304065 949311960 22088363 904539408 746117944 972242900 564857833 997235635 801069738 965198769 55780870 359089105 696501104 705286514 821195457 972165612 444810376 889932454 234621230 480284010 949665979 990517757 464710460 758520249 433144406 793126132 901712655 967884541 716102829 957286040 596466696 720655811 227698072 389378482 233150955 440455971 226027508 432079720 493030967 713679184 94445851 118470010 906378821 912201458 623110963 721690175 653641253 675297352 807561969 813568063 611532311 715595129 393002498 892439993 436042999 751444155 686259636 843179343 267634061 799017828 724902096 965729494 910885262 982019192 80584532 237794917 372258511 807916475 291924632 631927465 492879569 872164523 577130992 864341482 202944489 489134564 577797985 636032098 732528249 747077200 529280117 977257284 320104514 528872035 241774590 740095695 680340752 977245197 792601234 868432463 780063729 800198624 161316043 775332613 957112172 972181045 890019441 912021503 638017957 726987746 927194638 992240690 82576211 844654800 275229855 285012731 815567913 827803647 903942031 929746686 797938766 813006799 776740710 833093224 661778679 930338072 414981372 812656620 141801795 184672591 436024878 551345423 530697231 607235594 254716057 987069147 54517003 830011949 156305365 525388853 573006205 582759136 186162569 390909515 547738605 749290605 896321815 973851818 815886656 968162955 39309529 931909202 208673820 743335576 910153637 995324515 393923337 828573589 620626717 623761453 394373096 866129714 243721091 590851710 260672783 779254154 694279774 699116308 218892370 456271937 114258771 837035993 492585091 942850798 145270843 323522123 296704579 688170355 761632954 974620282 284534288 769106773 559497751 570369417 733915441 780665668 518362728 863013990 219066703 326337026 556980644 630897915 827140495 954794240 4706788 70583665 700071901 892823478 738613031 814856581 15753773 221033198 372870391 763765969 739962349 774053514 427139382 485356186 891488168 948967300 95265197 700323040 637581699 656804224 824232431 854832850 23811013 54486093 578993104 695982844 204977293 721581582 203086497 307757285 2921806 187369106 587426099 617437351 169858870 944419844 309189868 361191704 466292535 782565782 509496648 839411095 873892017 942197968 444908940 455700513 436332039 439655822 484215021 760462001 216624886 312815638 706999596 828669025 547973765 967577618 661793944 841457530 500390372 552571792 812666547 815780150 591048093 593306098 658428358 920750311 381908866 404027899 426221515 887130832 650569917 695742806 167629566 626486480 611558824 952754415 158249556 852929648 696400912 868033356 648373774 951174330 960140999 994986798 477856250 629258614 370036617 452711826 171861769 722253322 264302387 866893208 592002408 752268081 855038216 881277852 793886057 798993091 175421523 269024575 771858416 888770958 385071287 409681446 443817482 998884805 803787537 844979740 959944686 970987487 211667012 464543416 241639202 664690768 980433873 981307800 438136980 577181163 755178228 956801356 160649627 394917958 116272397 950694352 894376193 946941629 210470934 967425052 250681402 339315725 514459449 750820225 164101857 902784226 956645133 982327782 868883763 974591909 927146158 975014532 141149437 389865289 605974600 835653012 662544521 854644637 347722796 972793966 547950511 748087283 755170262 900906896 127790319 768295446 936950723 975094875 904725365 944242920 298958307 493646906 289796710 736327859 312992264 488884896 223165732 258756234 197550537 471783794 341847961 919769853 641573797 717989929 498244153 659769721 996600337 997484689 704371132 834864318 551300207 850628286 72798935 907182880 144175683 998103892 504959310 806837382 690602357 736829069 726781806 949778360 644511128 767838649 44734972 646230007 901951551 969804280 445604914 594931355 547513315 769111221 126964562 480613155 704767197 758406935 523062656 731248678 76309706 174258230 616645357 873991484 581628415 644210107 2279455 370482046 637649992 771957908 461334529 579903158 382255890 986455309 938867634 949026873 473568196 686660155 527741659 754240247 702237007 774169535 320399497 718189944 226520419 349922219 129906202 863806950 529085077 641914837 388988781 638558446 745153342 810794971 47436398 170172207 130084763 812322422 881361339 956966542 38915739 117108861 901770117 976832098 914737855 938714788 405174396 632753152 318558037 696387145 329170025 510989073 74710700 558624092 880245296 984659255 990498671 994888099 586369404 916744798 173973419 759230656 901184623 924965348 666503640 715496640 40279282 626730718 620759688 696332669 831509962 896884321 555391060 643884514 946381525 958087587 796884731 840176698 168265866 179147782 185049891 719129134 861702519 904934902 851708826 965999242 669578783 698852922 479959501 812823877 577192964 658724305 328944624 638958140 636895064 980216606 398772340 967841535 120836667 343674645 565454724 752727948 590445075 876017830 535066198 720266026 74528629 151054390 94288088 286929575 282629341 884071579 753449019 985739851 201193465 576247040 737109450 916663468 33193633 870689355 515115840 587219943 756756446 965990899 330780607 467604446 861513786 894949503 42878331 108803270 759017862 992198915 972158025 997792202 149194330 998211278 965604902 973262948 293590252 861402211 731053063 756479388 56982684 590955565 617782570 619767848 713408440 717426697 824099348 868470210 433641030 862442029 516127813 872628800 344090918 903917523 356243265 479129597 18843064 453467409 97432017 607590856 359211298 700901991 535069264 685159855 182558395 321605457 788212425 808937359 334068932 650389919 906961778 974921626 739469905 753885670 961687618 964320940 645591368 811448628 72219337 740487324 125666211 700416810 579836946 643872973 460737636 529819766 355220926 954595333 570617350 804370568 201076541 837636912 985851145 989624570 427790213 670118591 14505345 488764400 750350867 884870762 209299189 752737219 918096966 990510758 923884906 994307017 782910485 880483111 749878308 823959426 676490225 796268959 846380541 892003421 22723585 515849375 745524765 774469637 358946228 802965747 361318420 584331067 48248251 878980726 59476774 760649706 820976178 997340601 44487940 461467515 765906189 941739602 609999708 843920068 428805501 861033594 862228780 952325241 501608323 779002300 803050255 917016556 263470726 676204625 669601614 826285267 563504260 790487077 746200664 886289759 913664901 954482077 533273375 770435596 489548120 915468265 186333786 713260194 114936135 642766553 917627065 979784693 889090085 894529673 492746160 880289711 667992189 869414416 77977046 465654990 558865620 870662325 55159432 678543731 723522770 954160459 502604329 619556315 889753197 914018515 474855264 864718123 542662828 764127493 919389211 984347580 653600760 802490965 284030678 775691299 38718694 398182469 236172808 765790117 966136639 999047004 817322717 997869395 342408108 658306806 628876245 829384151 433626310 768556685 11416263 971480653 970404706 998105231 667214967 835827905 737023891 813464064 589299212 637993055 646210472 739163578 148589074 249667513 719486899 802134705 677115508 853172172 736197345 875481416 166670767 422304770 234054905 268804293 405530099 478869239 31459998 109392029 742664474 836226333 692671752 822498835 553019201 568845866 806465237 995780896 690231614 980297367 743425536 847664184 897069643 960486217 798602373 883869057 873902015 931277217 650639133 936063732 608822411 613831932 18883300 993640930 692277898 945832439 204824382 938664887 546379497 762059767 807391164 853103281 181305516 829790593 904058070 916395359 651437254 722995712 437708751 990467020 781130230 981640613 120593611 676765675 607575416 807407983 64560315 546501030 85732480 389958431 214035705 373336736 838176850 897593932 921403938 991070574 2127262 169703615 932115641 945879401 490928027 722983135 568797724 603979772 111331555 840999486 828530594 960623451 171330258 795572250 349336806 437811604 626584267 924116452 853001059 886135519 363216697 628970638 659309686 835573761 61459170 505882527 34656784 634177488 823914723 976597222 628595514 634437593 444548093 577318796 930937402 996095478 411082895 869351876 504674647 921056498 606261820 634608197 40531125 503905112 813997799 858603555 817053764 905393307 630950776 698181904 223240673 833576540 986251231 994292468 662943011 975499426 680037129 849513821 771304894 913988605 569886818 589704253 677532659 886345986 176136878 731534355 890764119 940576133 689395804 980376018 465321996 517336192 972410044 974170639 123698660 398072800 897015511 982605818 177760466 586141030 932187959 985373296 393859472 953539835 310373650 506179072 437162335 759116852 496279626 557702420 640201374 700881901 777691543 969669688 245564278 917501717 310887283 616495481 838419794 851222548 701641636 722863605 544185009 952478518 111962228 529363141 690156433 709208183 847212129 925038479 96269952 139307752 403118707 922717920 220297713 228935666 385937004 786845860 89870444 143431922 685199319 773505446 871653421 973690660 449459044 470702021 807947340 949609848 544810344 722874804 104788141 792130050 43558901 207733389 81288282 272449741 343418057 897281547 649657110 922503009 599234277 599312890 729799211 766575620 47739555 744607873 888082074 956656676 837043076 914360420 787210709 986908741 529791341 995541445 374463971 418171724 706400968 850589595 212067198 765806045 798431971 840375004 398700551 472316122 114059465 363041024 114650485 441780136 233671129 603915885 754681260 947214130 466053343 591193477 566859963 861918995 210999509 314264869 498538228 869434811 441354862 798396761 928978351 976697074 415662999 491687312 697062621 939438194 794638950 868895989 465392875 743964241 263535676 704248648 884799521 915674112 923634899 948551305 656905909 879909224 907445077 914536473 168131640 228958592 831956577 935683756 352228016 930833607 46296133 970528813 551914059 553282007 464702020 612168413 118425859 762023477 134777943 640856829 243941195 818396521 835856693 949974411 742019269 993563270 612079603 719685008 870651119 875532575 433537131 876680291 239682576 776866166 769449716 923003014 863023630 878322426 209313090 523248757 810462723 890189361 151905305 278923803 573200918 591874933 778687279 982585323 960516389 992803148 646331724 980130307 145143073 988208757 431499884 666419649 160399919 766370574 124257595 387328258 865893358 985446741 251745468 757383934 988101285 998267323 52252885 773829348 571867512 762747893 961982341 975451998 121120078 241357644 646809942 793683350 290788299 941628505 760442071 766357656 455648388 621108714 784187922 947918065 750070918 828463433 173037594 882064146 952565249 988157825 461727037 525856154 189851444 587456407 8718582 369735604 852224349 939327686 813010027 979184230 758712990 812459375 267104369 620930332 133898076 751252371 213021342 357620712 372466741 846294612 390920913 654892143 181992507 962460590 511699040 828815273 905030471 937625377 436875306 502831810 923379757 990776427 17569798 294613196 106782880 744970093 769039729 791404620 278287276 376606754 536444075 664624334 922563344 928062619 954861586 970772599 881301564 952917424 782104747 856000404 703733628 707058755 773180534 854150807 47190644 386841445 417563271 947887094 650140058 970100301 274592488 848777568 794055749 867525443 409407946 818923133 803622152 835686001 789893406 835310072 385821309 675968314 609304912 780628816 593607029 916438111 734811212 876248954 988991953 994290915 617348624 644900604 393152115 707216197 972046971 985854188 181738788 301284550 701532766 994409291 598720574 616729377 65852254 729487516 37498234 668486094 962671478 991219473 2627796 666431234 902617798 972308261 837371251 926620791 947363984 966947483 408455780 812592583 183642869 898590818 80830256 836267381 189947483 729110907 240574904 769611212 237157985 568133353 741150251 974162071 145453654 386728278 437033671 495955412 235297412 286598282 143788738 276537723 583947118 663854321 121398140 368533326 899327 838314826 204416045 995635638 445951696 737688623 292044249 522312470 268321912 310220164 88848809 458977052 430410119 570718716 336375371 569173195 762702777 911545680 161827162 844696124 407487327 497218215 235760640 770898662 77262968 990058860 94693279 234856706 294636455 557556440 386063714 530857435 835533544 981671057 123020693 605072655 422445632 782711442 984945466 999076360 109968266 709985651 556842278 895365358 220329419 841035687 44810050 545928938 636176141 938645105 917528619 938947344 654051177 887838739 98505005 302642470 340256169 725057535 574624643 761991782 308925296 447720395 302966175 369166650 897779648 950293818 318702037 410953682 156956685 551476702 567865821 581034771 659133634 864504579 902194990 933115823 321193321 407646054 446582984 732315656 119719641 609118799 816716784 849243879 437303188 706532882 530479490 586289244 766421805 793373544 865122902 895224016 189121599 202257536 118064740 685512077 829670320 970265994 841133013 933625169 676441105 684110455 668307852 802004317 186057715 990751539 740221650 776419900 956263527 985961908 518680895 767232813 845944672 916586125 306807160 503682950 959195582 962946372 719511241 738313780 568600883 996316602 364467557 863214446 468981118 542588848 804332366 952608529 199948432 892082883 197202986 233830087 540551507 548791606 938814954 957526237 777278012 987324031 461613985 953588745 199049810 305161066 834600666 965215665 707111259 843913737 713002610 765419745 199490807 329373692 902040869 961638140 852441655 855842603 37486699 649109692 631741364 991201789 883409487 968981785 464305975 562056462 110997258 223408560 592237013 941611457 810021522 938074256 262832168 788312997 693590053 765377057 115682954 729588161 339854034 666144835 118059996 640328108 41633531 394357646 161694452 327275881 454980622 748552079 813760549 919450138 888198429 933782708 836222082 942417145 988107282 995636197 499168391 679725321 116834933 322897109 767177107 845674357 656323991 955797986 607190715 843556645 522788376 868363296 380430598 866418086 391626244 793239918 194428296 451735059 229576107 687092549 339326122 832197068 334288557 818557505 630909896 769756161 726773305 823327210 61302130 673149753 363930425 471185959 703482638 892523886 511619084 723716719 555030270 717236030 405882127 705949712 478464173 514864393 439652516 800753488 675874540 872428044 476256497 542483119 720625009 942877416 878745405 968949977 97151048 710255587 963371568 997194501 340814171 441167571 864250484 982939819 466311300 525931849 521352522 684681764 871314666 913096867 292532562 527308372 936234996 936828252 650475253 825379964 385612058 983120958 931685888 937420422 351443610 619221210 507617335 656309745 392090544 424268490 116340178 125320533 210662075 291138313 383377172 793699749 565380623 937262338 818365050 852616883 106384546 165661258 733504438 755981947 686197836 951302175 565681515 934989782 380301697 577843445 374776397 586421885 649876850 733282607 186017710 860164710 953515737 973286353 473185868 968947363 41643833 574237307 139890681 412633430 712312659 873624308 750895056 880530576 474832014 860645633 937444870 938168905 557544995 853593518 400466657 594119993 693256247 915735667 549823573 598716821 778244067 808399478 676347191 686362831 836634823 848069799 573399870 586125041 601052132 953735846 161356322 819074394 636323591 813851224 34708957 543270767 108020873 941507226 867452044 983641218 869160238 948047460 668426899 867735058 428400796 593730264 743766418 973889589 497211680 611127801 222561614 908726831 68719017 427298625 319604578 779128051 365907961 880627176 839345402 959757939 192930926 316381801 957465983 990114020 574722111 837016920 392068894 424738965 931425933 937444129 601285298 939314759 241056747 568113432 691662531 974478292 685464767 698813804 323083295 808427743 462972493 789120625 520565883 674778486 745506825 842168461 471001331 658742698 281619664 800661231 218831714 466511686 235639717 678738624 377188017 534136090 935910408 986118081 604426889 735577973 409748984 994282901 835219381 952275351 203943441 458425042 486971330 824752731 402900954 662116048 88660501 992044164 243398649 470501778 182972842 224035212 876421246 956490891 77998433 423930914 301140614 881576783 240925800 375052408 502141412 712850862 152863047 242531655 939175572 970260291 788017850 995754536 343361250 824678357 113676299 673174570 152489595 680037583 504693281 583402875 533124366 659625426 967606899 976283230 487310955 923279214 248798631 789176359 835409107 970056690 633164225 824717474 817100362 991214659 967871366 978873802 839455914 862107045 238601807 924800371 838774661 981671384 740628813 840209701 592517961 649957652 799673892 994989120 103009578 601451306 608892222 945397996 848956132 944470859 818698642 981153137 938295240 947736904 561348621 672753472 135223792 375829158 256553056 615618583 835681270 979274889 508330823 743466679 977332058 985124959 153086302 457332284 314978506 333907185 653563428 875025642 442177835 549160347 436087987 901658897 543555135 915564751 488696832 751422186 356303854 518357327 279434566 398984572 855006877 867578228 876405270 971176608 514210959 856720116 304320842 731263170 731962489 988933094 950871710 951001186 702683892 802561433 263357286 395465030 570101929 748999142 931117486 947228063 42357430 330426046 968625194 999567747 976256105 978111839 380871041 858066166 958577732 979601199 4322993 683621264 19124821 65454175 102417286 116591741 440569296 500822079 567262227 829156708 419367377 984776768 577111748 974359564 441481287 618724628 538306350 618922169 845961536 968969551 530852199 705031738 392669229 755477172 187849092 388692834 486685358 520262740 535266190 817364498 286277310 399604713 895216556 944298319 496361726 853873223 125338625 170339045 300510379 405301519 866860252 902162112 44982719 541539765 519246363 948992866 552311019 561080903 512575771 751028818 779491983 974840703 87361327 915098009 588469515 941136102 988103428 991924325 116583305 579279196 342941527 715225375 224042419 938093380 99078866 302459330 158863049 627138864 909640601 916605655 922000564 958576915 153537919 511492256 946656426 968146640 52059230 355115966 422320766 549513334 200661503 485538956 353934545 888291704 794840026 931004792 850768670 969994462 738776621 979009634 622893862 804155310 407805319 552040525 20965717 611847122 361093008 699467780 900268252 989486920 361689511 700976052 860330406 869214116 888414971 929521398 339433776 867069652 28379340 856677475 820115681 948390916 334912946 438487974 45973805 956895861 980859319 982092220 61881464 368934755 541358985 936208703 70101349 81457260 969937818 975731757 270484116 277752344 549680691 922418073 926163310 976413192 236582800 522117709 394890293 431051938 524879892 968980875 992729087 999836511 860908271 924250913 547347283 863026687 995277587 997114151 694295644 700299888 973848650 979111974 775959456 847480997 855126482 975326485 588659289 781999174 802916709 909721929 949456146 990890753 71958993 674522176 952631864 967084038 483164860 519699654 261123850 963984498 956425965 998649995 3495539 53733011 122155842 225512227 318134846 895006090 754429027 833414322 205024216 311773749 531845990 965677053 96677171 404678849 708105466 960167527 865811848 979061671 377762253 947473259 436686708 735344800 70212622 142512166 536928931 962037935 115723388 281894788 632026459 949220327 708357434 743213270 552505475 676891370 557021525 731737706 509701919 655412799 492713080 734117717 190811479 412546109 196876504 257186350 326773190 570332323 611740804 688625368 869706066 935773107 682389038 981199202 839472385 909342270 828270561 915765611 176250351 376695020 186194187 423424005 67143276 797564791 198083284 865675516 582287496 585011466 477789775 909920202 411890934 596404421 116810295 698873799 597606657 883250733 871843108 948417343 587059426 956970539 838077084 967556432 514903356 639268804 262870799 595616140 717637279 952789823 54300094 927266262 223048802 853421811 607830892 920051424 601850510 637978751 400465821 966074056 202914515 979357933 381708012 960004877 656851881 707631037 719947909 962995082 419116313 989599439 344163706 859407510 652543584 772668716 288428708 845152729 438578846 927605240 903052257 967224362 344226383 739326768 336337851 543429567 354698599 772134149 579738098 995671325 152682150 902561279 477273136 652377268 645116266 734393551 580348082 888008492 927633860 970067551 22484106 638132283 884906987 982220763 271210513 738392722 189143799 782863400 901025524 951414710 915605175 987176029 715386512 904179468 80130441 850517674 154502835 213390204 976285272 977203270 117179396 951257851 826004135 966313748 887550755 889944677 825820472 930941607 295222586 360380332 742996156 776661086 103086906 630277636 865994450 959556296 624208448 715156484 545336527 824804471 429571095 723098133 423408713 842407643 620199320 809300211 199153665 250002011 40581287 826149268 550659638 661991889 558165783 808761038 812087179 816834554 289375895 869921102 997612989 999470713 949352419 952412219 804545064 846586182 71400178 856890594 184321384 829781210 953925917 970133245 183209167 659482254 824069939 922772113 698078203 966643845 187655437 877388831 564141936 735051290 514023168 841536881 443138104 997703885 139666862 749985422 302563867 500382989 541046595 855133217 609780850 940497413 771153503 836979907 715745029 893780629 454490349 538560891 932454039 977518011 612337766 747714194 713836213 868732069 978564917 979475574 511764878 594584271 195585721 611283833 886666656 908173191 483592135 705805907 603318608 725348272 810482752 989805703 330396630 720548078 992224050 997445951 729867452 954880269 549604970 806997251 326736359 505252343 24700194 803001120 443516322 598829763 511871589 537554387 973447999 974576042 155799628 718706611 282810500 993050699 199442027 528113794 765289515 858404680 496709259 735556781 821964758 887012934 353696069 603197038 553857615 916469754 486512476 997602183 197437035 431816075 455070045 753972954 145052998 207684732 607588388 959821268 552497734 752894512 490281813 652812555 996880679 999134415 204259261 311693772 870239430 919404299 939659534 946497680 664998095 704301571 242411426 584429510 732853609 852381768 471625791 517686364 566738748 770376787 243909725 295205260 362809632 956618670 652178737 905686002 730969061 778210427 761305719 797058644 864174392 976345726 150051984 734596535 504117509 519742309 459686313 664822609 13719593 463714007 406650678 730898067 477400820 651829679 405250107 974056775 901649676 984083477 348108800 989016664 411879311 498210577 581066073 942833409 97454862 768612543 175163617 588472973 244137232 929312590 336715561 932296258 189904803 917548404 444772642 816041727 625129237 945859720 364812108 482345707 524686479 532179193 807326580 980117110 623167532 759507414 709082292 784811567 829780588 867483054 120292646 719142763 273679735 887406334 644075760 811075398 961989637 993960559 729163914 955545128 898680749 995269139 777871707 840886290 559808680 901845272 997641823 998130156 599678898 615334295 996544861 998578020 593892752 972502236 511103963 783628794 521797456 840232424 777780231 931643780 787137055 829207528 438300270 521559885 394733363 611689168 652399500 737941870 878285018 887356266 588382992 904224132 48939175 799099933 165445721 860732012 597078822 688118897 476942712 531199015 110320540 357356496 863067812 985922740 629105315 633983883 735126959 819153133 844936630 983869764 931740863 954542635 270877031 303648208 378485256 633742978 866432588 956701049 462901754 645696094 618689717 989456835 509222027 542140875 624374108 671743760 506583314 891796133 469419611 591562590 787996408 988986808 124028312 965960154 412823090 756657559 991727199 993445295 128355888 578961995 776446746 834068173 814270910 851561352 500693819 990194117 929272191 952204013 231668269 612785313 185610035 778290194 695340336 742258862 425257906 747748669 712482324 889773824 556283675 591957631 955821538 992817460 148483733 279403440 445604088 867436938 970723212 974881345 614156716 892037045 986471297 993096529 900982694 989420182 344663275 706070742 871885816 996827618 935675059 987919283 552463147 612034015 300021941 758095258 620622428 929726520 749914955 930302059 871343530 895058824 641244392 671365052 518440654 776077712 330389754 933952895 398991815 696251102 641556194 670604449 921577609 959351058 577727183 772865315 171679982 461080740 320108792 493187732 823144034 853062267 169747264 580867194 109432753 895859826 969030913 970204730 617621741 698321958 701495245 757280032 751120220 789532970 592638911 883206325 305426848 958682746 61863551 400906157 600379497 985060775 218700405 338564050 565082479 788683657 984657097 998513206 247686840 833612277 888750965 888858471 635355843 760856373 365885809 709418460 192484908 937567507 257151975 419392966 805548165 881360953 853370322 885921845 180178350 684843885 309656899 894445636 435505521 675645421 855075905 888037690 540519601 674649657 497908157 695140720 484248046 622870641 293428036 453654978 210062206 404125766 244458203 826301287 710015011 986546851 574092785 604198466 602819031 847391080 531542407 581732649 130367219 144224102 670509003 818521292 683528789 863050131 376047716 747501112 572929975 812561406 519345713 703508748 727744752 806360115 919189626 989071797 926297025 941250344 776625275 987480374 555164903 992154825 807695552 854934979 920438106 946866733 95603325 845208547 341962261 901887648 871247622 901083022 185348830 876901915 2577854 409979328 422276678 441369638 309758387 799440719 699836520 962176693 436239748 931386195 55883659 776356963 39642784 124829713 567378392 594963796 270036394 365539821 791101794 870587877 332048072 944980020 214776148 605805436 228962087 724592766 974995989 975308291 673524446 980312537 76487049 986749045 262030458 602775794 551781156 693444952 170068772 337341258 721786825 951544832 557039390 717699880 659546536 879442811 463940118 621365864 708965735 938582389 768766132 832326290 355855045 671567769 489270404 765788564 866918250 901984516 560751863 772737804 502905830 863089737 793875285 935258308 231680370 502537014 329359117 441146195 18481612 293105423 567581882 584758710 108345677 256743427 182785453 226367659 700749808 969418673 8955364 239517374 190808112 254681483 620854823 940277548 467250840 484995841 103991306 541652665 512916085 895699515 581615116 733308193 151077044 538311326 99488268 934220716 700038262 955411861 930472556 997791018 689550218 867588763 260993534 271812985 535463712 921190665 227301821 537012412 315340422 788928607 210336140 538588163 836018027 897418839 242098734 729432406 210455208 848475241 910125996 982131115 358214607 688614281 630974806 801415899 835059714 924066867 895278424 970347107 351084656 542433948 340395599 450781146 201075540 325314391 287066157 763269477 213970830 956472177 502382979 890589783 201583170 869872063 10316836 883880429 38404913 71096999 738983169 925756749 695918186 808214353 668721498 738617604 103656 198578300 298563655 399827845 211048527 303946888 623005697 687163333 456997220 570637796 785565066 945747757 451732492 871558418 536280758 965972945 291484934 991567267 573612460 750176004 177057804 822284523 775785071 882445055 581425973 911634163 619059965 922108717 885288972 942944624 555426541 623628677 816167277 946762046 636450690 947730257 727839340 921352719 612975995 801974509 295190839 506895337 201543313 481485194 503799694 776436397 308973065 902599167 22489788 996863016 847833452 970921905 834608251 972164354 868104454 995205905 166366758 229066654 648682204 918911774 306232385 824851734 674152689 803571048 614004926 766155908 678433701 937399026 122855231 265863673 417233263 985800155 527677152 710255463 958699473 988604006 609543550 719960682 431472095 690550810 120563603 285977500 171525694 583972698 746337804 957456039 523985859 638928938 186236546 856376598 92164573 975180172 419145881 476853446 662327912 763189147 802740215 953310132 251934571 972241976 61601223 812712227 324197867 914338189 93436498 543416833 477902616 606009830 101269802 209169058 961243914 991996134 190057742 322131686 6235489 90834720 322280396 527939658 602015397 889776837 409194512 473795734 139690178 993255871 265601411 627840177 612724713 825433222 88211591 696918330 474676645 946927958 628592081 764701112 609362953 924746797 522969180 967366581 954238734 967546639 386244878 962131606 627776725 868843571 673812455 990924392 347265674 389259601 433746247 781481966 507835819 651906340 90141542 587122699 602487077 706106819 109049329 354442666 667017646 824811775 422791093 937150818 422393027 913474328 697785043 905756575 44921649 631274767 959699452 979394954 78927503 146568558 305551974 821852671 819514649 826431435 594186212 829273868 790927876 895001228 397206426 877510899 191957306 530828618 611082380 794455468 216799046 989958484 792882375 817284933 201734648 394865681 25812096 960900351 165332284 964288702 888799109 998312826 533823037 580223847 851699591 937622399 474666211 776353779 799852296 805416775 635415851 713366897 954201818 993029974 159497503 690902084 192861478 844309932 254036611 581277513 540423898 787790506 489086246 856240867 518836211 748148750 549465822 909576364 170757887 870854241 223475164 859101540 927550892 931144850 6081547 703995365 396736708 959202392 695721765 996364727 943067662 964781724 212517349 545025465 220447345 277049224 423661668 835246917 237120201 980622528 228802001 958812149 586568512 686075385 155414778 543067906 336546127 378896995 449348486 492187488 601805159 846811951 74775345 175796072 785603785 896573384 340585561 620315812 428168357 947558935 525169789 824640872 86983061 147671966 806203410 881266683 768109379 889181988 925726170 952868124 92603006 498968234 206383762 216274481 300113937 797981062 561945802 970156972 681984942 775773428 444674985 906962432 492219463 695600860 213858217 919907948 736079504 803344704 818373459 987882075 255498393 945870470 72092975 515961807 21860306 249286175 663949468 744784342 64084675 304613101 233923666 635777841 841352130 959637605 500850241 930229826 128181366 876293681 893403606 988051387 344107169 480585429 649919057 932580693 468700412 500696200 529700820 700613073 208990323 211629111 445300940 695099065 178204908 903107239 696945516 874642832 601089561 985278374 17002508 878872723 208751426 469571700 805864166 901212817 297690128 390912240 342066103 945889180 63519552 525743650 439728573 679311757 611235478 745933353 319338549 692111142 267023389 652048701 563872683 965316177 915404533 963021790 341452489 618803695 788814732 904338517 304166006 340879059 669156399 755617982 44134399 162584358 803419151 923461836 703574831 773990474 287212003 893038085 828259983 958980190 420356519 704446481 797260490 982291109 946925643 959531521 436930230 437518271 733301030 760997538 109880921 198624930 711406736 764880424 234623780 418121163 671734768 824537705 362143542 809665594 272636067 970211133 363821426 454091472 150660244 957080216 765175363 967663746 362466422 588858779 584597010 779241543 344842151 516424810 310061976 454766417 635521704 929245260 976235723 981550462 512636134 665620945 623553136 702423459 754091687 828790995 77939911 867818024 479338415 799090549 300616581 969770727 636945463 678145105 940022305 992440196 461233612 915247802 819690549 873808251 579115070 924597489 866969411 934616992 600594810 894515768 642729957 723149080 81748465 946865917 213249689 360265354 113082989 130974934 560316511 934064527 304809148 584825121 286606241 863882978 128216144 948836398 217487714 614318119 716514481 914363385 864671776 944917624 478472968 717073904 161106581 183684917 86430491 839086908 932386149 967224725 220003663 409623665 291997580 833478496 554817522 628175032 680356246 950100703 204728279 722382303 104121997 616136806 951538545 954038491 193670770 570744885 32526183 398491347 777844966 949602325 365602820 644497148 12531128 768830130 430922292 569429311 210825792 471900455 190095730 774468000 349001618 870761179 556101686 786915219 154807203 789471704 123014240 270336741 60140984 400297090 39007181 314893910 814902404 974293456 25174265 444399185 318339323 483297855 454718995 764878627 321724514 771746026 356549956 921177958 546464831 799321367 868096837 945153802 196731531 756977532 417830337 666543263 165943039 341260750 354625543 485022065 759183483 953908143 305449557 846883955 257564985 735571652 695626479 725388878 86804496 815561243 639776353 785731761 846593697 938205905 584534718 903175394 768245409 995782543 265733004 643969265 483934775 871129371 916433810 943747634 527453110 615770231 262991769 664604065 156838632 624877645 495872284 713486436 392211096 930495632 944552760 984334542 617743927 947212045 967001988 985636767 682866093 867306392 997248481 997874358 2937708 884118503 504699547 779712057 685122412 966554653 438998078 806190900 206054252 914039482 901105023 952084161 386606045 981678232 189013647 479622935 343971399 500449142 55626200 478210623 439442133 511826785 839288858 922268633 928119587 952100265 412535351 936715016 861981560 929089815 947923183 984161641 938965051 984323109 581968382 855257170 604237795 832976436 130444469 773781618 476867008 497123167 175794303 600765892 358267514 476283189 298931111 516025853 376869997 437477634 674217640 964853726 735550134 898336221 325363046 777173127 592128277 939922467 370897159 608449511 969566074 982469851 208020228 237489913 943093190 960019477 691890027 811678685 246006595 625882635 130162746 176351743 237124616 598546725 680459875 940555108 700226617 854039611 837894874 921461491 141474631 852041063 657298570 820357179 725636438 741578922 722552010 737769603 362883524 655124185 865893949 949045879 40682791 702334215 292197120 793594469 378595443 395861797 342357539 740732482 598314232 823176330 166633812 460455637 580104094 606083464 532276194 685575643 577569075 843525291 975150574 988406939 964650151 974252210 912644116 952823916 533740514 813840226 899719841 902817572 853942692 990903117 98612110 548126788 778047930 937460795 483558758 599593354 127005044 130288418 552142583 589979147 336460322 454912084 29200794 393794080 89248065 188082940 185217446 862646653 917179708 972375011 565994575 982973730 390219841 933454745 292685493 395383608 341137365 834355748 961546835 997733804 997815906 999756505 764261029 869262940 609305990 923235093 882993345 954636261 114640789 816680677 42273699 666704877 498825268 657314782 370401584 566759766 875570564 913601060 329107532 442320733 67033254 305293135 190264862 390493212 237148926 933346750 920710669 964107631 280126982 924518361 871549237 906411925 191424882 560984774 417376129 674896117 974547013 980426574 768977578 899748027 146462186 689966100 177994547 844946561 459735793 756728940 583956976 637144038 102370756 270909474 61211522 865052319 283432610 791913953 763400704 853627461 494204046 672628181 806093974 905539871 243745643 783142985 765660705 998288149 467613017 953364899 587277151 692591122 768535619 989584656 758998470 883434329 317635679 820386381 176077673 810847513 594868342 894528006 526099386 594284495 444043646 639957038 20792141 329195310 82671058 464632673 547471259 969133619 811615206 941983365 24221604 563182772 517974154 941453065 247762946 568438160 400063168 782529119 270695246 687102596 874951480 948069482 134698916 318392973 395807775 628406407 767788208 885655934 167820703 515101305 782117405 783364183 28897634 99212427 91128030 677862727 545686912 711319507 172677935 791748705 689347078 988053298 975934829 998067651 385706299 650190142 785949693 884732506 395495667 612840250 703346492 790068591 84071692 568698566 7554865 923805445 53196384 717310322 621786622 852421092 407006931 407765235 373859290 647554571 168852030 495043891 756331472 820590395 482228530 640354898 281622368 987867943 484151748 989286733 226840348 488255775 221450708 630792903 442862327 664670113 569683645 849896865 518954674 757457632 999998001 999999092 16252728 388055726 234285200 795150200 68559545 752895356 616808523 973045037 234334578 760963274 443418581 517957805 240121134 679213574 832558435 930667320 104220894 144416378 90602885 333554773 389421528 848866921 748873007 959541561 304995611 849147474 734718610 802569854 164957532 325386426 198349064 848834460 172121482 854155744 280035403 619754714 67487240 645753792 400129971 580503465 703974231 721090356 96355892 553335278 803375575 931234698 50947584 842632263 765751492 944441259 772605774 862254552 282023496 604922156 155208024 522026825 128112935 200798992 36078201 236700864 704362411 718115814 346657321 376829075 818641513 999977949 987560421 992427328 848062399 851762454 45040359 613157464 866515684 981551630 170179197 359983361 388032171 440560254 453366213 625697327 229431659 235596458 770449017 812719338 787179623 938990837 922032 419806614 554086618 772869573 498104498 997761305 442062671 950338127 346062071 888925911 209401569 673278708 47487455 489357287 130123287 632180029 189034996 333390680 263898528 955939417 428057501 696426513 394176836 717654453 273560411 882048644 533485257 990876324 685996394 852359811 663196767 978190718 84037357 877012393 660014396 695826359 908820022 970185556 313687734 645600800 598813206 833472536 40708595 579773673 591380537 659556931 152450163 926887069 942945278 997273255 566003331 932667375 958064182 989245284 369156259 537494255 522001223 920275132 146039529 457944608 155125806 767083344 198628398 476897017 884664509 933180577 632984279 718899142 849354351 871419548 251372331 534757638 471340319 850034995 79280680 771271685 360463744 616346684 619904518 817142176 97664798 194959786 351674300 589897252 526844001 971562499 169484179 652155193 714660276 827372019 306238840 503867591 107386981 295453657 700415901 733252633 713247780 899355685 294080272 933523401 171898165 610708494 85730716 993193715 768144691 835838758 39106082 642493682 31246842 263005562 836055887 992562257 311169254 770737535 617505582 865744045 22546228 642126418 799013490 907043202 950625122 998589661 438200624 537321659 601529040 881991322 543930001 887546199 367593338 797348027 513127275 575404474 996525561 999080232 991009570 994677727 310787529 565684182 946957614 953790379 675889717 944124566 134726541 152653443 652166726 903878456 840311215 875459364 396783933 704287696 567262617 931912243 707538278 769818014 662228863 988485578 810870101 878802453 766397775 853069769 642867827 842424146 329830719 399513643 303427273 359081570 826501861 973443688 324667079 602985227 110624993 145004050 147456971 485809613 279876309 785638690 599364485 667499540 962018041 990449728 186815578 365194980 253415624 780997733 800179174 916737511 475213572 944002301 80621000 211543085 699517894 779548998 964186087 967049512 543239750 933915038 36735154 382365239 888619697 989737517 914299878 973099958 374836622 556424763 298046135 753964974 299863192 569892188 594769075 822970009 362682601 950404302 45199611 217688394 35775325 821599854 480921998 527944964 584889311 770140549 780403560 827801716 86201296 465951092 630543908 716634641 394878790 747029453 361800528 803805076 231316446 903287157 117068341 799932911 353646324 964211195 331749671 928997002 343347455 745647793 37951637 643430014 116929333 995303439 948719240 991684343 498094005 989187905 759842148 868839777 882394105 998035698 748077432 826935893 653541110 873053174 676472289 829071492 900399090 919914162 933064116 936958670 733486340 832098058 925426301 990710219 229586913 512865772 905917079 953839983 405175814 862463188 523891599 791659755 937897568 981198022 634356190 901749128 568218140 885395357 854164961 954759539 821308564 924497030 895428489 940298504 625117903 658878792 419227457 529220899 615284871 742432844 944111043 994407649 462150999 996505562 420845771 960625587 386807796 446287332 898048986 998783386 661747063 667677008 388480031 891162563 413239891 732854816 98545560 572300840 820400176 875185720 549120091 666582653 122937876 775186173 230861293 927258179 22267175 940521577 437714642 694740899 890866693 906457618 450275995 513659020 841523955 930163801 961170323 961907097 757510818 865785542 764379655 915887458 299029057 458797187 592360379 787327964 688298262 910564193 728640559 810132470 842612338 960910804 379736680 414935154 753595221 952550562 533021959 778201970 104290269 605293076 630794998 756359307 311182366 919812063 382937964 782308275 790457827 864923701 349665818 835102471 560584483 857629101 713312391 760170198 599621015 765146645 174610634 851866518 939924307 985388502 828984906 949617082 245848995 895279885 49735725 404426346 391216300 874930988 182147168 441865609 807169469 886812119 821561503 977443295 7655731 36318851 984913015 988585211 204438869 620458429 153791574 864715944 928998151 996001318 39953663 410659912 404286928 767160200 768420921 869186204 965406900 993841290 841752000 974572933 478788352 517768303 554175647 930277587 80520232 835024343 508188297 778121410 318738794 809971179 956783003 997105521 551386193 941173171 209787815 664690342 64527067 489233638 977236615 991675037 637289997 660007136 60017985 155882662 627018141 814991429 766569627 861911746 578780881 869087254 5099818 676628353 326917033 702892492 133668747 458653286 478070080 619626085 486009656 843394215 505705171 676084024 989737148 991430503 215049389 427141790 234913467 347081355 804573420 963213117 925853060 933101751 150221407 165239999 164415384 227671039 822060244 984580660 202451604 741078002 859823168 878145778 159372913 240462510 344336303 989543906 181663605 621169982 532702534 780253612 573461978 912886894 722840354 897621803 336170549 563912793 935895471 994928648 376108063 637614882 708944187 739251733 821591121 996936011 154231406 271308583 544575223 732865337 266770507 561598742 840837405 979032616 643060166 844876317 471267121 918984723 635572348 683383340 546465822 781882725 531784055 976618181 453900982 686125160 953406498 955068872 653416187 931704987 403495551 885650867 820133121 855435325 84252269 161996234 972618295 986178458 186535907 629003378 68949097 361607865 583905608 998807823 822828303 870181381 763141370 981992203 777944643 786633256 942998716 982101032 582940190 776365715 951682249 980156974 569823910 703416923 475191432 983396559 421715816 774186358 761041441 827240015 917708477 966608387 707251034 924261889 191099154 306156602 412126553 555436711 132685395 830250606 938679942 983533662 172895484 272780801 138731807 412000991 740633232 971160697 226556188 879538182 321789261 952443969 882493581 991037618 159917432 412494736 734176183 849865351 883411387 950605096 576424468 694387021 721368823 970630201 988104 782809789 739735584 854718232 106562353 854158863 663767723 883712926 904829088 972067314 434839880 588357186 233622551 808571370 173733009 744001641 852630224 961325044 621225801 994298097 705550466 977456770 59158237 135492033 803293723 979022242 244709607 852299191 446037781 701149888 630349086 758488024 627334769 964600723 343584897 719001966 813427385 950258537 781845052 951043634 100209152 584057043 635512729 901303451 458472981 714531079 133987536 419145003 603780617 766463675 577875970 944768744 775430968 843440654 653853621 882054675 484167998 859861594 695943655 757979489 812104728 900918202 370027370 660731126 228246418 403997304 884230432 904261747 719230829 990476578 948367463 989888717 238803091 570667350 674112619 979876015 820082807 962168617 255606163 440230191 721728006 882755737 103965080 621253801 274150487 939143638 958310472 960890189 727799824 936931418 113129922 422823792 743402956 828932144 336720329 457867811 295309516 694541549 319261183 903323124 807101870 987254127 945080780 964526259 993508442 999526504 665859679 839252338 937151604 940549731 339813987 624016570 203177296 211620347 115354943 531467288 521444926 794524490 995812842 999139689 615797595 685006219 164835712 960697141 895159894 984395915 584524042 667871185 610919067 653243253 140317302 179857039 666356504 759214686 152950505 727866453 113688895 620694989 221459031 346893579 226354019 838211766 978506635 993253842 633027704 746552155 14495015 711233087 921875773 985900872 910493123 921489171 379332812 907686155 271028361 673137437 222131033 403881512 117219604 359026620 740007545 748944370 583642103 975160743 732709031 842615180 279330575 698762622 586503116 683406530 890684796 961544647 49277709 784786625 305012986 929864733 134384247 894692393 951693775 995475071 590017659 761737073 591994057 961430916 781904590 971387842 461608203 899896534 498426600 791386050 889470964 940498633 880057179 886136464 117090045 695328148 44191828 831285926 119167921 407840895 239109607 342027484 465461337 552488554 530349172 649802821 798911722 799315568 780138541 896968711 235260678 692447992 123341312 444727567 949082711 952660684 110536478 695183239 734670252 802606081 558095415 861739029 424556094 870470010 164190041 668676706 497447485 677269962 188094047 898921950 820318299 888505544 111828241 427619969 999053721 999544600 488633729 569687104 647693855 717746240 94627671 770726796 668975101 746578517 585593952 765504415 900909334 988870507 880716243 908148709 936045735 985324799 216235067 466997939 685468632 700332983 38362665 551278785 814471734 988761005 761020311 802856312 77926562 90952048 951722831 981973190 92142657 637780585 575128922 927069826 87100775 846360658 177085079 963497530 328908525 565032625 913774298 993583627 990187729 992901959 69787042 285382786 330951792 710793065 395138720 857001675 534985345 930341259 211459419 428452643 812545282 834014098 958622615 969419608 281698640 675843445 370713204 625248190 333964478 334871593 990726489 993939234 412812070 754320020 730003092 784647214 497457980 669240398 831903655 996916442 323947719 332711359 562684934 756831028 914589249 982370022 653112921 955935647 229169696 530908478 417141767 583198749 13612456 713050360 390776998 395248610 383203354 711684911 551146504 648851586 680542935 988979400 998081186 999393118 371827332 645337073 528949305 998888932 218357690 896189907 462941046 982214286 487549458 838488230 859639980 962356690 481468098 690016211 458715850 825138106 2749666 3525559 795314289 872282449 648500205 882098242 606980777 892594918 756272439 877707999 396921174 842394166 2077007 631317927 365814877 387972152 742109268 945805576 878593240 960748704 549645698 579748621 132425320 892192154 349480093 613960565 3362144 233420047 1514105 33915058 848853470 936966213 56734817 458682851 18106953 37785019 3368446 665667380 555085701 964598157 39180933 605874682 757931273 906017482 407870473 938374417 139188099 993012821 717930806 828380754 251419246 873420424 55883329 607402271 959947820 969426839 4894786 507757453 205560201 274673664 180903106 811727230 978776495 981322953 169106798 742356552 961070365 979803162 250115462 519079234 558340996 639594122 41333183 433590519 557271762 745710505 229645478 368211165 493623771 504413083 52024154 443041730 919442621 935879349 323573164 755329633 8681591 889058040 903111198 950861336 940509463 995198564 429027834 553705479 290241206 473555186 274201543 946477956 495334991 828855756 984068139 989454181 516136267 732506980 432210165 503550684 167976086 790066639 677884871 876150375 640064127 838655869 464389138 879840374 989590857 994492598 731061025 808538846 484489932 978178088 888529410 890454809 267814735 402563511 539160400 947839774 598424370 741854823 336714564 480439338 52366385 691432757 91918063 779307391 968162170 998112917 730866651 751008890 951420634 952409850 92546635 388362979 77294053 876447370 216555988 299689279 580558649 901123683 892888544 969049403 844107588 958304433 833677769 914369697 604786962 944986354 303951638 305336659 778213893 796336930 682007301 811927275 614095555 846485508 255509455 934419729 911824882 957355294 859944025 915386222 948789732 982333780 104764652 965725324 559529362 781556925 770436174 913162700 105844341 561447075 998989665 999789163 996304661 998723932 220107716 946056879 860926146 941438315 231253227 675014972 364711148 962301145 497787481 655053383 389231658 905573875 768935954 910525257 973181991 983235449 736583960 973819599 318469601 574237063 943411437 986679533 491097126 598276775 347535303 998985473 713269987 963185722 642088521 764702123 243954343 811308641 195201510 789954723 983328531 987583033 868543677 946714223 924071907 925158086 641577973 855268642 598357773 970424211 571921137 977282843 449570172 721823591 498578583 991534568 343441309 435809010 373274891 828926479 956050758 956143712 802394609 904449715 59019382 757763592 82673898 925946474 758824935 871131175 573018066 759733551 199755130 538176703 603180870 936092743 905538917 987682647 976031591 993605552 755145685 900218355 598253987 911166839 343899514 718795538 229410411 694860259 352227237 726673667 291732993 540156629 142658607 674477310 826282358 900447426 790826518 871770362 898674053 928150211 170728762 904736078 763233982 884419887 455008968 650834941 931395718 950783943 295715447 639377974 69454642 642937165 991525705 992425920 874270005 975516211 864503574 967433110 55925436 379714179 663968207 886617205 758444163 844645009 724861045 889866720 952548437 985830120 636623005 885766800 474679105 553891182 109868542 153465258 695771280 988727393 334526200 784475899 199903725 745860732 654040444 839302148 323858101 492883780 735731065 926267509 127889919 487838703 933309127 994336900 293410523 510127441 76908483 280389175 941519952 994048577 775194870 967303886 214941857 685797397 779066723 974178696 524603029 836695094 870162805 891059070 62954998 545882008 378869396 764982492 8150765 838224189 135737729 308073124 575471376 669240620 347856748 959999206 165662631 536828232 253645439 810166728 812166138 828791653 835343118 924823931 292208633 699358774 159542499 791699233 585080515 638984430 198063394 836959899 904048908 994400634 661769995 710086792 72043477 762888388 397073072 440323059 73392070 150230418 668376664 743309818 531873193 576090089 684559201 848652460 94676571 952596799 745465239 861841609 17654137 329371158 479403573 637642602 494994904 686692557 533669720 952360816 396653211 535016558 359703992 872730800 930678556 996892943 911180011 914612212 584608770 957847198 290126374 636757527 884677695 924228191 798919018 857382379 920743889 996810445 126795780 320913200 661812046 688336995 237051816 728928111 28636065 153057767 135161436 282626525 727419213 997381999 557731705 588737889 78846358 573799837 278791486 382665868 714537445 781106068 7490853 33606061 631480064 645783843 458583166 528681643 998861484 999282949 861869404 878481507 619710583 623944926 345777686 350756815 528200184 660526160 382445399 992465581 913759805 941099190 603245560 743889702 522222478 706070811 377079376 777624708 755788447 896859426 796904590 812741257 8327417 713756717 481340058 850847344 589517464 625663589 729693558 954166152 187286493 709391674 65098324 323536314 814831195 858306489 965073907 992126046 286338593 525312547 437725217 853212802 33093103 747070173 95260563 699233413 88289079 470536001 30282180 483540603 22198375 524268687 527609978 740004491 435617986 680025046 599120147 645116898 831193656 908503570 123922495 149339299 378850951 642320732 215496158 906783710 647061809 879375667 968005487 986935706 431052387 891363169 449521975 825805767 185404475 344523417 275057310 351844109 232062328 804645267 168430871 319906391 261013236 976237273 618996455 631309924 185034113 885259669 322010038 475961811 80340296 915028209 81156274 976423000 652492236 671016569 531340989 977676868 800907582 847468592 543874914 934261288 183627463 502967053 254648153 362328632 475340244 910979278 612989528 689104713 621342996 914645824 60537093 432721487 439104794 987049604 537742719 852404824 433433665 821411947 913768706 978106436 284823286 619082035 477958064 996873614 505452892 963589200 473426782 946777621 447603903 947496992 750539312 974643288 990821841 992449912 667320597 896677700 696295920 823600961 556440416 986784296 181919951 222527519 386565730 458558915 145784150 943150347 350190562 665811484 148961729 832881001 605799548 954633974 392232332 795397141 461428707 840335186 359666290 386912340 467094641 811798604 693716424 800105726 738145487 989845069 51029448 57108358 231998579 883162985 646933947 734737197 37716871 245898369 135905219 825043061 683312510 933839189 869553507 919068711 38960139 142392158 425091724 524319444 523440938 554236370 698431916 770421800 818683969 982429357 778842471 918692472 916676744 948806146 775385089 807047180 263533571 548807617 463564768 485591897 61535984 128215025 430136162 612185277 101141271 481785364 985781479 988332115 884598976 893448240 735141937 843939000 951918434 966741086 803022052 932122613 524485419 960982874 411355373 625804332 787042075 871854838 98617052 751725454 371439133 807711617 759921134 837512541 675766349 823100590 34383569 754372586 895210591 981807443 860490476 995051872 186200115 827111595 728832283 753890134 487027615 793988892 228110188 778776380 960324066 983939307 945059958 960715800 992635787 999943200 990104240 998005289 532685437 812659800 166435451 978446821 596131492 654461156 388942200 994112947 855891288 920449581 511330621 803159844 252118375 995394561 490189215 678353012 651620932 780785046 692527792 776374912 152433830 409150226 619884749 636675020 440716698 808690343 665508145 956890552 266842284 740771087 953654697 953890374 56846853 547145220 399597477 736260158 404239939 635278723 31171601 50067583 771720576 987596520 68650614 463121310 840334490 964908542 210889075 680563026 758015541 877097727 389687050 577425129 704636190 843031221 273175395 274027381 151212265 449240198 22328764 600224014 273961252 298153472 804737141 860063005 602820457 807861876 772089963 992992741 618049839 695444211 537967672 572581473 447517360 904709788 808116867 928420714 101285075 800785337 242118392 864786388 892672684 988850430 311140074 331790004 71214470 85709885 638955932 998532195 13056954 974012374 717066362 812087356 495093477 611314449 168736676 590476424 993898987 994797922 501684148 751230627 697849935 712816030 17315504 179666283 77080204 282112568 52563748 912568667 555245494 944469509 479045292 667800960 456830543 945636657 360841020 553554067 80657313 559256540 637864975 867370617 785660953 855302210 459039059 896794284 724158378 821954242 860605241 984847082 542632962 815970052 27869728 819029111 994834804 995550972 642120707 879511866 785806300 899887321 925381994 991587698 787696398 963277236 87594300 248892945 558996501 760100042 123496447 588121197 288858675 577597882 11706960 272128803 503508901 666401874 961327271 996145465 867470558 955340429 781137445 867266667 103830907 867640070 653161983 797185432 471304529 985763340 297304454 936864197 668787525 885103390 21012529 662605535 426936225 881422124 839359239 919868105 52018764 130126005 758349958 970976460 884358402 888774582 819845274 824114427 690536913 972644637 10466602 294355111 634146681 759175267 483257271 855129252 304204434 513020490 581298016 671863534 256185523 691101519 335553458 681886287 138093225 613059508 920056655 978068245 662932578 767042818 85523147 515004554 372882417 538317267 475224834 707100578 992528184 994570221 543143080 828330531 301845437 805381290 568797982 889445912 390622105 867220714 355520742 830605911 77560380 813994438 525234401 781479738 79363793 482610684 186810744 224009125 287888855 907631778 76208827 573768253 279597706 803574847 465414329 897912059 508342164 756148342 89641935 162670892 273200954 886866732 245306601 695539277 217661505 610119635 177218542 333950907 714818581 806903333 986636783 991220314 87557991 975641744 822508817 838778534 395155402 696631798 790222741 940545261 81295122 560376012 908341309 946909508 388580159 868709289 688464892 823175797 554850703 903116386 582476059 692375781 520699107 602012528 367316776 852053993 343070386 484372244 399500824 614637065 588456857 919731676 932164838 964373219 507061333 657672230 665764239 829795947 164248193 898668188 686867528 729811359 171315270 697610242 71228653 489349052 117521242 381174740 290691239 502792409 336430659 986255604 466799315 529915992 680683766 712130631 492550430 908532184 742007224 957293153 831649146 968547867 183323890 273373017 29095262 728254367 840595407 929915321 977448286 989349450 967174557 996244458 226035694 712524852 200009305 311604932 666618153 875025610 576353356 786809286 259456683 330015196 515211530 675033699 66356477 890067752 494835492 523164442 640879580 923656536 256052632 743160369 396086213 615809708 217851584 693222266 196932005 201303855 415394291 610371562 44577744 252150954 459172546 495733797 424506582 515584302 89895858 136779438 734306708 740029132 963748558 989342912 345496237 623743957 989300471 990908836 788100392 940759772 565734558 922069854 625700053 928442490 981136128 982509847 907269807 989683407 359761535 851116757 892177957 908121520 113970615 631351878 41747896 804226406 696180780 810993012 950889785 970356232 63983687 718364343 456385913 892830930 988328376 990313247 868131402 981993646 638061682 815950361 327051635 862477882 102507200 726606561 994220676 997313724 648332864 830308129 168688730 297472381 975308333 988804919 380295725 713384284 296492464 704648572 747061029 877462218 679993764 741813546 543155796 768103599 609885914 783294351 714819127 882831219 461060110 542137398 840980265 904171619 18137033 607493251 957810544 973076436 776520430 872369693 710796326 937470390 754751542 955443478 844816341 949404584 932110500 938428036 216003799 650294626 28205119 516659963 815214319 915553537 800980904 902518652 154840444 374543522 746550890 927005560 959636682 983506731 453950307 629276546 445195793 944731981 498307315 830517221 628419437 711050071 7435258 168740256 740080545 917336472 252948333 936504716 768497483 904418208 731626696 864775955 89618037 912522076 699322006 871327303 93180509 463054580 941566412 942880857 42897325 407280055 817986729 889843766 635489495 795584197 466184468 703033901 7007819 219529340 538098185 540532220 213628678 893706932 787406392 931438080 512004869 946839155 951960573 964075901 159969355 386135027 734182790 909359557 293996373 993996316 181422368 183392520 368706973 617080091 423627661 666091989 317168630 449949537 425110289 809852462 896948969 969936054 863936745 901143286 177248797 581711447 852932446 882364956 656592631 962536762 600376621 766364724 278347876 949081105 815978935 993556950 377586439 592086526 71426953 423093001 421092865 574885977 634404550 960926942 574146705 842396213 872820760 916711369 809329828 831376193 346787887 360333696 464491156 971610980 842371589 978187067 491470 534905036 219650259 313981047 681820922 978369678 958044068 961663787 4610657 643208539 17382959 168846708 489850874 572096645 313105384 390843259 866810782 977234928 384862069 642303611 343042126 406972215 232701336 861731292 266545116 716976527 529523983 856945705 318682757 370279931 693381322 816577403 156079021 370477802 173270072 598739143 366068821 933234198 416100792 427581427 700431219 869633287 132338302 947258370 58261079 806742936 803419740 946063554 788670178 874749739 839002449 978877147 37599717 62214534 502514628 709161798 220315306 357897469 26148795 192205985 383731497 652540307 885958149 918146530 463971455 491943111 717223941 816232151 425781023 583069035 280408971 877941052 699588917 954178649 69837751 739899177 563570500 892244107 150352683 480765683 79362919 999755244 973249946 978302463 345745095 501011290 837045948 839172824 410103781 888669475 802815856 866614222 899241533 966063186 287254986 463812614 240697223 791651661 822459969 973738719 118724811 143370901 602293220 774316874 373050804 756144403 287058361 307832084 482612912 602327076 580239618 736484590 517844150 793616508 697690365 965145225 839820285 985514932 3852940 687908636 470884048 905528872 153103868 403030907 289018861 664638323 597213219 993617506 353027925 524744183 211158279 897731538 537746139 630392106 404143917 970964848 690044685 863128277 226376295 365407703 637157144 996055619 336883732 864391437 499683104 580186201 913066227 954493273 891530649 993454538 264611501 717103663 512222596 584053662 957102827 986335189 118804259 556351269 176916741 617690284 558664015 961622782 331013163 379928505 309111702 726171781 861975667 919645652 685626883 897685523 629600598 862809223 968665280 990514178 550098232 687943429 29248418 670725371 899360994 993768748 631381270 984331738 131041622 453666974 646787844 962793064 849840412 950880289 60496987 251192993 235566907 299793403 116684143 581684068 832555626 979540966 327090236 892531301 985504380 986183684 66852521 637673441 706419505 710818469 730430149 763671336 546604827 813867698 325500999 580412770 16795765 112661224 475882224 937151677 670833181 801549074 759641617 981510540 336031379 785919222 360220842 363452468 659183041 888694067 407840553 550320813 75662948 465245049 107622863 857450255 807888749 878638531 619408873 932459600 381342297 383593864 275209301 381593574 769393358 771717123 345271748 714222988 633831810 966107180 318760877 581582264 481066738 984608563 520178323 734809798 752323056 788684428 167967526 832101473 103829969 717033103 496988047 783416607 222472105 706426972 197328369 788088993 901383037 984845992 139032254 587177245 639756485 783916279 800751036 879335328 332555500 812343680 244970523 289821596 228914026 494930176 480732608 849945913 307945582 732195580 557100209 883064670 753804906 996141117 663119395 896973415 949799639 976015903 13550844 566939175 242719951 681259544 354356092 693172310 976311277 991684101 445453722 731854446 434845463 601975205 374937195 832065794 102350239 654942376 724626268 854476263 73291788 855879881 631408554 876079501 551326240 598910296 462017635 539719934 581980353 683411729 543469369 649515693 435695820 696904987 937745874 945073251 2514752 24098396 279443028 603548193 317841042 572382775 953153730 962970470 745732618 897695367 25470576 698035761 895754587 923427093 883530908 961354255 640532556 905046030 956474076 974684196 588011574 938167713 979656845 998863718 414484388 866514671 750751206 856491611 284956365 710478608 682970354 709315913 983376289 998346592 336165806 652893773 839299572 885739475 638032844 701377831 468067362 575952320 630267951 864053631 957106245 997159298 968156809 975510291 661783989 861137197 439010323 779705908 638517739 692886070 974243160 978670380 770505963 975847058 964793095 974702633 957585834 996503210 397280684 772548655 514421096 896212315 572617514 915688022 511988487 629081206 435787195 555863179 358199738 722774223 942171890 999709329 919062502 981624238 700002348 908878133 33867010 967596016 734750111 755794042 77844603 437855849 439880882 539328590 923695490 940884191 653219856 763608172 169092121 924686497 243856498 469249467 391827845 940359781 982566759 986125362 188859912 944420945 928664598 964346174 88724497 236306035 299314356 431432882 548398072 620364233 38246584 869579852 109974846 586116200 784625301 800902386 587159233 923693649 207574448 816613780 17482229 873346505 155127756 156194847 343806871 347805668 210854420 418181867 726853334 812864622 514601557 982142772 593419040 898686960 961503338 974232727 358480116 846364837 771326457 924740715 707571185 975069929 669282499 735437862 900900582 928640772 961029012 974955306 818606895 927625501 952918773 962267102 307671886 317680247 203014120 911049337 31165810 651176377 909141552 910806161 959469750 975983937 423728410 676246606 281226894 505063047 254103921 341137756 967226584 975670087 428866109 544375904 262398442 832272869 142184056 904813101 55438613 655787280 48732266 344590376 309430941 331310681 650644578 858324091 447798801 819333925 215229414 391552429 549801777 672524159 541710223 643402100 266337133 633059408 519983889 565109386 109210455 116853631 811558106 860290287 460757628 973882283 402576331 523429589 508084070 802917514 630487725 702303113 48517879 110312327 490939893 751077296 125469047 937448025 397283138 723154928 920291382 940842299 960101858 973103726 181865569 473639440 678355849 940388065 266999469 915034707 763109935 906728673 458340127 823238816 298181999 501358061 558479205 901666685 880062320 962192477 738348554 811231443 838798490 894000331 657274273 760097927 787618757 864534152 77842837 295932615 908753739 994803192 751701768 949596195 303626542 702147439 299218983 634607011 428771655 902157164 488859239 947776800 265242811 546950608 479458273 513027275 681931453 904645137 648168510 970233519 505339630 868163667 168569802 603621503 458783041 925449051 136509313 936600607 679490690 873330632 689201501 800534462 653139956 680725026 330039651 761645801 884806963 944132562 525651740 746871302 71893796 374879064 707654867 997221113 200794188 779341582 161193051 168147625 256263920 881190013 390748833 621345761 399288864 919528189 691612422 909414545 443430093 511199364 386120314 393532750 868200642 882419077 820274246 996743656 407265227 466054500 417497215 926470391 15805924 715384331 48710485 942460584 300831723 344638273 113417261 689303485 734137138 841780432 138977073 418492503 545158518 741527590 437154652 957861379 536216160 975676131 454766359 672355465 749737381 798399797 675541690 724603322 784277030 937835096 149796885 692658231 468023358 789447247 811028689 994836061 517563751 789664451 816188058 834940359 381192317 429609021 702020873 817285010 299674789 776043665 164870149 777076175 459526195 766587292 570934538 710003609 94476915 770901104 574136528 648176226 2791030 988657456 148966057 316612168 852060577 899834907 273445743 307286606 56959010 492678464 417577911 511089973 602659128 897136954 7572943 398345342 726412175 813106322 59682137 884018760 26641615 248198740 65039274 901908162 275730301 876218946 974727552 983751443 739158185 776731058 788014448 792589678 888876253 891632692 339229395 713666137 229584698 602220425 125115334 254147842 590449937 658292667 53505727 379338764 78340127 654059472 28159617 375561297 783288544 958781926 373317594 764528748 777218721 972416018 302778485 973912230 95494755 598645969 166294627 685346916 417701026 589105630 647612613 761344346 355290561 718031603 317895322 527109887 911910343 969236903 560131400 854929509 189844953 731539001 116024232 437510783 507161619 869356471 792106140 997798454 208642908 957872436 435604170 653408789 197155166 336007200 411997931 526652262 151442685 397648133 581828972 743023615 482385043 924339844 457008963 616257873 309943675 973651932 17652510 550983909 678649510 791011901 207574010 710651527 958271219 977203152 2905696 112581925 481733965 576945771 288906514 412598675 786369058 865047094 355050662 678225087 534170599 655275349 167721103 942025300 897987573 953166553 308613899 375262378 554939886 910892139 294131951 473436874 422386622 639574095 939915664 995341461 198039210 325531648 633373096 927206785 628182343 956247426 862401863 971602736 847387539 911912938 165081354 799882871 962222036 998649189 581340412 884181113 539863008 884288584 906262367 995633479 907304762 973916202 710677318 752314836 504765475 739446779 128337337 432107628 564128059 994149439 660904926 873440073 528476261 585417672 908810072 974146701 320966699 953279476 116999951 963728436 410214224 482294264 825179072 962682856 792347909 832056882 355671806 629039912 96002546 297894853 673416395 917281381 283299349 854547562 253778324 617262984 479486614 888638666 125341708 308039375 118201707 596965740 595658914 740578136 846829613 979453458 606483572 868033127 697397386 979748633 72572804 390962047 366567052 371253625 374883594 686329507 233946260 406750079 84528575 335752751 104917957 837088589 702430404 906087631 166782956 524624293 837281314 919685690 879768049 962220519 943585958 999920555 3199614 376730423 71189724 563014241 592364982 725002131 481971785 738501325 671251541 876671095 934906126 989586320 1276515 466420999 503530902 904543709 945619358 989897965 483414596 962590363 821101950 851542418 443713113 652759578 707179659 972222948 524345510 597414264 505539938 604802988 759181894 793567197 605655145 681410982 856475450 982355545 817207296 913411630 997482942 998805334 158624062 173001116 976779747 976808870 336333573 966728415 631007625 836011234 738691442 995916677 951417831 996071612 791865884 793848886 267847741 701361400 140211906 422963653 961548552 989521451 947946068 949710675 779525864 809907532 623164441 993073432 173984941 306316875 756051203 795320927 3298184 138417478 700860615 878444838 773304192 972030282 938323572 977937053 812798512 935248851 299218579 861510859 554359844 967074665 869584209 896767396 417826347 928744253 268795945 408626953 113970040 996800785 934976589 941379617 924628838 964067715 119555814 466052525 614952625 861009766 22608401 955429289 557011492 570172338 128150648 882907039 414464536 493818382 454614823 477516297 45980171 341303448 958624961 989417960 827799637 999596164 424864009 817476850 751966624 936963794 345299119 692598811 683245159 845976431 544539336 590929108 1924858 420509291 927898161 953866571 179731282 728004032 371363584 544426872 935793382 953559897 571063087 619225284 939794385 980734565 245635766 876452693 875380780 959936928 869575275 955315514 876064649 891758690 488514589 491852185 641504685 994780997 118266508 507630850 624214429 746328276 448491986 869862511 422190311 695483404 547339855 836310775 791035322 876640027 775153167 856433674 907389345 916192846 194237060 320506978 68060860 995834479 672763787 810096526 876858594 902326896 59938350 176034660 444862217 950491584 574756603 687648170 675769452 927391665 933945870 970640880 368241436 673033033 388679384 392454010 711145124 787263806 711696506 943912970 800685406 962918998 822120223 977920102 191893475 610089479 979458493 985087259 242653806 863008195 414955192 633370958 126914094 484038096 436920865 509961963 171778696 793877281 895857477 975423904 464907433 672486077 717773042 898173216 750181417 935688623 223645861 613942048 473657403 500513163 384390836 644127184 551475240 586317517 968808206 996540449 455753462 655323861 149327393 196822288 558392867 830257325 429229750 928835105 430805185 962228203 832669834 941814464 625209098 716203912 67262179 414506481 615433215 820613399 398251553 704589369 608891575 933474494 788186852 790133486 773726856 980612250 761384852 830845784 301135598 781051136 47868220 126174428 59555499 693524843 687976328 726327429 619959570 901725580 687798656 806550458 784979993 962939184 632557326 811438418 638949794 785439846 596272955 897853477 532277985 949635282 792014377 946895562 159641966 875102810 811425498 839781313 574225432 922531826 813409077 873984142 643428419 988671917 314372834 804859699 981286065 992331980 553890020 574529690 202958908 405850052 804827517 905200683 485239128 550672000 547161270 864646216 976928751 982409375 571741877 644010535 847924063 942717322 776254896 797214199 635751209 991112601 563515778 575006057 253234968 682619511 667287643 704698296 311382937 711157221 949592365 955687850 914902338 950030112 738139939 797021954 398245947 753275946 663505878 664219110 421965869 585858834 852303545 925815148 433278601 452609135 427804211 558898162 574519437 786541639 615423535 941692160 514630882 750277008 534867602 812198684 794220698 962871759 950911684 965505545 136433220 717850959 545703906 997523737 188434924 589729219 179295326 442647993 234590571 863978045 216153482 903638048 492516736 771934182 592815161 816532495 159296984 605838084 347983923 356904385 451223101 902386944 476478202 926010133 976953671 994444863 89229669 288144468 87854011 575036056 900115781 952786866 253200368 872795266 627840615 650567474 155573195 423835892 73757643 664529008 661165200 725922010 47286498 336623559 562976088 993816127 824038529 957867432 959621826 989377128 770858895 837727902 975147419 976220681 614285098 983343326 439598359 651638648 401025023 812911343 222351738 805594327 670177979 914693986 81715221 974127089 672477093 712645865 890688690 925012850 171213765 651002092 236131299 835124911 803358756 901074345 249188389 890888625 300037418 383069362 873867450 988904682 862196931 955628460 791047614 916194831 804560210 939027664 856188080 988788107 519822171 574641712 597982889 671348155 600863814 676240846 694102523 823555559 8880774 234659852 313542816 737907529 233838368 368466199 580293931 814853760 211787200 655688101 911413491 994059585 841156536 971550050 662711145 703196181 84253297 424307617 937312422 941586933 587075586 868753998 347026271 437011217 646245288 979433760 373646972 422919754 574863176 681061220 826099495 998418378 322723874 385280160 637145805 728482005 539452613 875440921 515566786 769168999 260050513 382441905 34069053 301219890 382750422 869880918 595751035 779328678 652937380 727598270 793692952 874862025 34620296 138115978 460355281 975858700 363799356 364641037 182996140 351007844 829539214 979343918 560254546 647017281 56168711 618340575 974514181 986077096 853697079 948732298 829603476 983987616 316127304 422272332 154933633 747392403 843154828 944755712 922603298 930188980 680642514 850486830 374414348 978309113 795855047 868687847 211799262 449834592 928704376 972902875 709112310 754159628 935739379 951798311 764971870 905798894 204024681 780249941 738589215 964843543 566711533 753090587 233164963 829945859 916726446 967823510 131201038 248215988 492621979 785502319 566989789 882020058 753200593 861699698 642803869 969167728 945072798 977088354 653218462 930191838 178657036 976145724 838704312 974420415 936767414 948347051 405667620 565799048 303053538 357380573 491238637 654691700 735969267 964682037 927393291 945515345 226035386 904018069 357271160 680621468 497977011 632858458 107253195 231641517 537454511 971062154 806176219 950808882 325483533 408573442 356136504 674447855 552935478 756608153 251181368 714298716 864717252 975018127 585591815 908789121 498524051 703357744 322411941 851301746 907772234 934848595 679457300 843030851 577281195 935516796 225774168 239171401 577994273 957609836 501969274 794160775 352364653 778575668 559092502 905701254 21930468 135808989 580309770 774175556 442617330 516756958 567798771 989315970 166105205 307910081 608891086 974406000 327229270 758138988 129562704 828876064 424677223 481407111 528579891 959150692 358306823 866378627 660240470 976362478 951347743 991655537 284429760 961097938 80428018 618401013 959888923 962737504 732072626 822626514 99706620 560157786 922916992 977689360 989050341 997545092 93672238 539346115 286411290 412804894 970932538 986407281 363931136 996478374 307597365 385691850 707917224 876122736 692498215 891002419 51628939 883710482 481027190 615733054 908917764 964411153 968591963 968972266 191362832 888869780 330822998 934000875 656730168 792209802 27481997 841248421 471634064 664004554 85548912 733696428 104257756 830890120 918862461 980413409 592161832 684502874 860639817 895896854 121378434 935952950 137158774 630064018 996885291 997834115 883406569 923658831 411769357 759202402 601536915 804226106 998568030 998878063 469317996 903060941 206127072 538431672 243605471 829380526 403493193 522144693 942124417 963900346 239362553 739063957 824898745 926379886 876202094 894036761 856795423 892037109 286032010 624794332 610484129 885715052 336014855 347504206 750154160 804311686 914994681 927942460 992852084 993097645 624610565 874629387 355877873 892731226 147440220 351514844 902978796 957820612 526226053 677979517 710594971 741123504 571945147 897118419 43008650 444609275 140012236 828861831 703214377 788742099 793322966 873573678 360787463 407516283 349240032 361685316 877160741 905877465 624484360 737486694 312778332 729098682 697143647 943887049 540056359 740305688 557343087 626358630 622481919 796809712 592016413 941226561 649602635 932317055 95600040 230277938 319559683 603555293 770353736 964494437 468428658 986475621 90744288 95181401 429802567 735278876 837548241 852718502 976039545 985880479 852007978 856113252 765154998 872752598 738122503 825292016 558849480 819458464 858101927 948426499 124789791 596328399 760060248 760173009 877973415 993500370 860474436 926661343 134157594 467433862 603194231 887424722 847075932 955387594 737654453 940076821 991397263 999827926 765812980 950948833 415751006 604241529 664827594 989943323 11665892 962776491 160844027 559676526 345773963 541892081 612279441 818663389 514120135 514767818 761862349 888686142 545300078 969418101 813464211 839909201 492564201 495989927 723825062 803005180 260231607 643418544 777991114 818233061 493879267 773604358 22771758 643927516 356891669 564404633 188890036 823570052 136721394 790237548 112810158 827808335 938071821 941205116 212865999 627472357 685991117 914266503 584087654 661647991 429009369 893141515 822098594 971166444 846928974 936366418 890399235 934835792 495191737 883231011 724565491 750593612 742156915 813927516 366335668 393238946 469844112 729745274 329544259 461639844 440275133 456485525 191534733 713612772 567599018 956926229 328579484 631136605 256298571 403320981 384748253 465448967 81454497 342965831 323260351 811754567 142127397 782551487 51414883 669931867 627265933 708118368 551648087 755308919 252297436 965745841 992641187 997448678 978931549 995714192 295677051 536243341 689847919 701288903 77564793 854877717 390843987 639347865 895966119 948684763 181414091 600836466 334790820 638277626 522012419 727065774 806320449 957308670 250197863 287334315 800557859 977675491 656692980 848921877 882657024 891815231 413420809 420752687 605555177 981737524 179636822 941833554 589276006 982159167 350656851 911058255 348328631 740015473 795854783 976530201 376018209 898244259 732518890 902880253 656064810 845512132 845582280 979100106 847545600 872417611 893893652 896004602 760417362 933173088 724724363 967925560 528706402 984373416 581284163 642431284 482781568 848992784 921102901 966377774 116374158 307370308 491676912 794648870 303318226 862504602 179456178 778696721 539754792 747176390 569899988 652656211 335244148 996697772 275574073 953808003 623271 421018788 120693242 450643334 186332915 984320919 48302186 706413890 702734123 796410187 41115259 135943877 127532952 630590690 498176678 759383966 704141740 742986498 417376666 884546679 224413939 265525456 367767862 675739137 873118169 935211673 410208874 674214310 826226095 978600429 222338596 977278518 755389082 831376905 48435564 425202714 811861562 852942195 293267774 368410113 425187018 623331403 575767116 954191310 246112995 892164200 954147654 989173529 993161645 994934144 684223846 715553878 660326132 726884901 52455447 635452502 911151584 951410986 683418962 773044274 524659720 974663249 754495441 781799929 958891179 994894670 312054652 388513209 33538787 863966677 58732811 489065142 799124897 920149170 940966734 975915984 170036635 321391896 783606898 805727026 224737714 454529567 315972292 472380011 142453486 655084184 243515159 635534896 358212477 595417567 183980634 591139524 416510579 505616346 787826856 923364043 832251302 861160556 261088282 927143523 991597435 996646578 363091487 547993009 636767276 872033817 630776331 739523260 594994587 655598467 74482004 662004197 235185652 248330013 881241752 998004264 941551087 950976550 963639300 971699007 549911848 976850526 236372672 626869475 605770225 621016934 125268416 992316823 40640681 909162141 295070230 712344625 140436806 375596920 383394530 751707774 943069680 998911779 320863686 346645245 601672024 639848393 850923595 997532412 816359517 816540190 105219718 819140624 586275235 995277333 624403205 946738686 918416103 953428385 983364948 988494499 91572890 627598918 321548250 812996866 833507805 970433841 656125317 792443759 190486993 585571366 529560646 541325556 988833491 988956567 273449962 495418980 418884197 796158868 711082811 772400364 248667401 637469920 163307552 923648314 326407223 763126684 350407906 646983506 61788115 989202957 267323166 516682560 662081625 729999707 979035280 985325092 917889250 981469625 943251713 992788328 501933756 986514302 806545701 841975288 535659220 609165522 255150438 601201351 475804751 549281651 715852031 854433655 522100238 776982855 591345306 643401905 430688789 975248304 332223242 768111881 421802150 923603663 498292190 865690534 51779478 382329984 360864635 504390788 944499264 976279879 568166296 682170412 173929869 959475847 199175643 649998194 418214192 698136220 63351573 159125412 866402531 887766679 456058655 967726836 991302750 998838685 990944742 992427929 635148428 693571524 656709273 662269204 30510425 891463780 512812724 743739961 488261924 851079131 835367296 969936246 941961959 991244894 134867075 760226350 642041417 908995034 151010954 874711100 648851838 831237735 334158976 972242749 218836443 885382702 122791479 388887753 976658473 980777938 405312176 741512281 980460375 997776569 89185618 812771290 795231179 867458995 150170382 576389416 688830463 972974473 815331595 915584226 777795370 975963333 11865141 25639356 894335298 991745000 183663435 373418993 486068696 865623383 569658774 880015942 754197798 975098428 963380258 978452179 851567681 985628203 567581968 975986270 879986762 904093100 975787310 995177946 258126415 805683612 670777228 736048128 990126076 999229559 157421861 867151806 408966955 636596023 849457730 924258519 727263702 979818734 545223902 881886787 376834966 429079629 645010809 789663516 969085487 998260476 877670922 979731202 713712825 820997683 472714518 816573822 862845468 960743114 772703770 882513494 653666953 924092389 486314673 593922578 890041796 974064388 596150862 929889961 459830631 939803637 736789289 965820412 335718970 522077851 341197128 541227500 920930649 926960521 981301161 987868926 377863059 546662249 264905034 939516957 726432071 989180304 753391686 781169976 322808028 865284525 796777650 884732423 446930632 489387173 92962634 244354493 378537496 949598418 824174486 895368953 508457359 666205760 618516190 924302332 923529153 994902349 403140146 556435954 469867068 839854151 604140173 768353758 55651830 181109331 59541988 204286868 97601633 238679279 552133645 820841818 976242469 986987463 820614786 825597217 253561097 369329168 722652665 836077008 744744471 969061150 24613492 72509615 920071736 968631565 951696537 952851448 858579705 894232402 488030728 806566833 571435179 829294591 886026328 901717810 584168797 763336766 399093746 583042044 242390613 820264887 753379291 956979973 225085440 330866202 705046381 836560503 925423215 975418448 921635705 967020725 451962328 602814676 406827128 810112349 729607118 803090159 827699983 982428909 241711556 398637442 571343655 989430939 46822499 212141917 918489984 979860705 665780152 755139719 260572663 955880712 572688139 598913977 597609059 678272377 228365627 757699037 391625846 734899676 914393932 953348210 746520551 990453457 308762517 971787354 504821469 507536018 805839426 988517310 660989196 712522926 409586470 952805926 774482913 897324070 888356100 973257394 994020983 994152955 416031932 442674650 684717416 999907180 75741804 812951191 515474740 755797628 529808309 628699844 68743109 694927924 25765257 282848884 996614714 998052587 359524768 857616984 926636277 944194638 979968569 992364175 739103660 800547341 534071220 720182531 317093820 463473257 246223566 921991832 537790720 835914030 154082057 662588669 813949378 879926773 71948018 635263254 956806801 982346663 92002120 665202550 89883395 317932811 462977814 681225905 224723879 924554239 478570289 799762671 913425496 915332074 770819069 975094830 9773168 949884591 598918618 863304295 504782504 837888923 261449690 856076799 156025737 435596161 560890271 952749765 765398718 998568911 522673303 855334535 165409273 649769680 547884746 645717771 889341768 921070461 691707894 936433954 194930914 372789486 729384549 914903235 938970246 996523223 375953266 528314575 289236785 351451185 781539016 928965139 785488845 951344048 160015838 262597896 940981757 998294949 285890459 599619441 126854622 249694440 939191516 982104525 687273865 890306572 117855179 233228962 11446773 662520942 681219184 997963976 795898278 944677281 573546289 799075125 693896197 922414320 375346400 771993050 807412655 991383225 48882311 897692844 956027996 980532114 1374171 708391299 166381853 333217925 905267387 935200223 418829058 568959082 612711965 639972168 409730669 867284724 773539847 899703089 398995808 630379506 487715717 510119464 125933768 430359338 657902607 758129099 761926652 988619966 855661272 967025621 128342601 264531417 10930808 369483093 299963800 671136346 146827283 287307629 994023465 998211080 47735960 602248583 732040589 985348397 362987217 845348202 456857532 560111161 241082902 983465184 136298149 351300990 90855186 850302964 570294903 630979431 838027732 910635933 465325228 749828703 823923192 976901269 634239357 923175609 698973995 906300084 150445341 586686359 804621806 884305966 545667124 856885918 181353251 209844673 865294131 928898253 525852124 729426079 725523490 787571488 709516019 722012713 995310371 996128939 753586907 884841708 836854441 982985346 138751051 700024492 101013841 533233449 974043332 985281691 230537499 473287718 346891848 348066469 550231474 887981902 308575074 858511993 471257487 912631274 439775264 678199421 668512499 877061772 685717571 745626519 406839356 440491396 428923685 758739203 368633396 763181545 211943334 642923044 330955234 643969392 933155679 939537864 569907688 569910441 988923926 993814473 886280559 907619672 284340936 418823665 615790663 985531720 206126176 381592580 678498362 994153439 247762049 883862572 278902879 311528242 624809776 863385561 779295936 918999271 184554155 947685458 766656385 787840282 501922115 900038305 347292712 564214019 690430371 991791828 187059357 226337850 411145848 472427196 649329021 764826124 539213870 671067967 304893169 798711600 477154633 740124823 952822514 993156215 16889805 383224876 623087462 727098943 639530772 801023901 398831350 622170882 264945473 362523164 529474321 634940651 54939629 635279483 70279291 146542088 917976056 979663260 397478163 934104927 768569006 902858936 586973547 979394738 458867947 632592719 425102206 899819741 351136987 822155395 537652171 648275232 488730077 910144061 769505820 907153551 217903309 412516163 558142226 878270473 697248162 888493878 172148731 243110462 987473159 988812807 65455 271201812 660032557 800647126 202737459 957624297 243236172 619938269 722587594 912597848 808573119 900440418 603060641 929494224 134843640 155705443 715395800 763540668 732961317 820428283 273379178 805854939 721722199 794251945 774115547 979588453 837135624 991739803 444357954 994490140 987966542 991848110 230220368 302875684 287910580 438282731 454135416 783721051 672756754 956229039 706056057 944083052 479075983 596490805 928875214 952880543 642599021 917750394 96034812 612310181 92844885 576689673 156702664 418131250 722676083 972491714 422018835 787672923 511590993 581103690 333759698 572385869 160073375 510642990 253801374 518131671 733628425 781799381 270506349 736607529 342094042 436660986 321192208 720021553 35764966 88695397 408194644 771272512 960210271 965312895 406080886 537387101 971266778 971660266 480094653 485908394 128496266 806167777 639958342 646777114 371141285 579340342 767734277 959495472 650141148 993173091 284879797 596932376 44794904 883494450 322996221 534386035 405712001 529589277 16909674 364463251 783731012 798000217 945231282 994043920 449967828 950990015 897227983 997892291 101258075 733633154 438900268 539669903 409912056 831847819 86477221 925346307 148003875 770151949 339319874 816549284 258388028 672125196 311052507 350377727 500981378 787383825 495504770 595976611 833322222 855655330 925643930 930101905 488629787 510099641 922346913 944555683 323275916 569288101 665496266 822047475 68894567 991810896 153447362 594303344 528951221 990849429 302852276 409530593 801449241 970749998 892451756 965954839 24475262 728570515 701319844 909532328 363306666 763846448 170175855 825038796 728126653 925248756 938514517 985353409 770429983 956482988 871820365 902956422 90429021 888567052 602818398 868516654 167467249 813330712 48695014 923139165 475769581 867577091 870125233 964171593 520953935 888421030 216950399 415695364 306620474 745835898 780055359 905405883 730478337 931583285 430365040 667110645 777881080 923851095 87931049 316985369 319294728 751955290 406359960 517142299 973624772 985112099 211627110 401154685 27809667 836052399 751215748 862974013 284073195 667988857 379381328 799451466 872083026 980197975 405960477 546717973 912566543 974503819 428308220 787434865 903628670 908153511 656932181 836481342 833576723 847142854 22836906 171518133 735154694 925657567 635291624 858735515 751264080 963089065 125362723 321824344 996077082 999296459 53677861 338557123 388404711 964174346 46225472 241702451 131965941 779910874 320015271 355845523 7690435 828301299 977479771 980216065 992555195 994670991 336641381 802697005 426533331 946573656 355388657 639883295 65661144 929638064 425896667 481702049 580662360 768390502 228833325 277824037 973343915 989463407 878057025 995453114 715165437 826069220 55423606 181321574 695901106 956904154 608853132 829758264 840907325 904040482 98620846 383982310 804811941 933840638 964942040 980358367 769311220 788799257 983014846 987917555 317477860 596041652 376310164 583865879 480323413 918395895 48206518 935545477 226308788 344337466 936282538 999180772 655713936 812948743 633903931 728325494 282814541 921352053 568762798 727500900 51679909 678328114 727591573 771472899 68168847 826545633 492667968 864259454 194460438 410388795 586611627 874065873 18904269 259997010 593502058 643999141 792217614 970498527 399968123 701886791 543135217 822524210 691111764 706301505 803643883 918390849 521873278 723969374 102304076 397605784 141229411 521989818 313495407 644067171 233998646 736419728 232199970 971115453 200293197 564963921 968905523 969225321 721192596 721550032 795912579 972654340 228880478 880093799 328594692 891510693 461803297 693516028 661560498 767491962 461503431 547855004 9911075 95608331 593588220 815431490 725064694 824046547 993325986 999897362 241673531 457651493 72163923 489044426 621880515 731043393 80939837 95988725 459158318 483317153 527488104 702625575 626217595 955262761 241388111 902122836 441871781 743218571 287020692 786346473 988162979 989067943 823625010 878518725 294047808 714196552 372794611 503793161 656629231 795372614 23360107 788718042 376852549 896157052 124162188 735387336 200226368 659604564 47170912 588242339 782714699 892991063 771718436 906124938 35114445 879837667 795493279 796706409 393099481 923288291 966046498 975859334 468740461 650379434 671658310 803896807 104857743 770693008 222373349 384170730 807304626 809006202 380098947 507806344 915990905 993651022 776167327 777859994 348284776 866560157 301336279 989810705 496902619 770888191 376572088 669896677 974113669 988126623 62266656 878774510 645073762 661247601 995344014 998821445 935431777 961909778 261627099 444758810 524343960 739623760 27915777 875099633 758622989 945003611 639168226 777195618 396337787 545959597 474559076 911698841 37401139 206390241 203627774 818154839 17078674 813846225 62681726 118752281 247908404 699291563 223956538 605633074 715306449 891572464 345559080 636273109 13126112 979735796 367200669 782823526 451374932 544238667 144479049 616219038 874112429 953621192 361535758 454935113 752560674 907866304 596029510 634721085 464212031 835122159 491669063 908575281 84717532 441069087 415969390 582616293 544188683 958897567 647175937 932530728 318990407 374667216 978235213 982585315 581654469 943747573 649006747 880594886 102946674 534074096 548744497 940539396 587140572 690773826 438578238 620339419 360829738 447164932 101160237 189787321 888466271 985496098 515337697 584940519 587867514 875456357 582502444 913887474 218803008 357045616 984851608 993209169 434088132 654187872 853215809 969008375 529066236 583348804 655533720 915635162 359378062 992889284 419541014 859667015 884712323 977514554 664169151 948074995 249258743 664525236 753035711 995321954 949690631 968455118 402455530 613365493 275578226 315213755 856534865 895379766 397486945 621388683 659508503 748637875 182495856 714338063 538126044 615529665 618279526 764328156 971423380 986868065 22707639 525111651 608809980 874512528 164384605 610566365 954637094 955421300 225188363 356353438 905949069 924196460 991487292 999312776 529554084 925988669 353109887 359722860 53811309 248178751 159649715 957085880 266384888 688332565 293327886 587438661 919402115 976408071 954184348 976509461 250595384 867243950 306074832 446785546 24731707 911407953 111278147 380079334 871963265 934851854 90484280 818770585 279557093 388898527 861110889 877972634 885660435 901206086 623576751 692472614 29486297 764065322 663013938 707746635 15568874 818261739 164383734 235838168 637143696 703917753 777540009 940966739 308636076 564720491 231007995 435825612 526564641 943205568 809576790 836439051 776066191 879431924 409822286 541161054 387223930 472480217 123534996 799159331 720396091 759569381 250087676 710964258 148123975 925957037 774563308 864583291 479156273 855116764 634670511 953739418 468076272 953546404 926755709 943228651 41312035 738659451 441443207 861321738 775805352 941305028 532002720 686546493 421217093 557361517 238842390 497114248 513979956 633207165 297180044 527809667 223757860 244693679 222906098 261911759 681366041 982338150 968122326 993395096 7171663 925650312 786913083 987769854 739129663 817912759 133487944 924175758 315013060 660575299 958057027 987172480 786006499 908704631 902818181 939031987 250382371 548313040 184093175 898000504 421475204 966006358 638049790 882668633 297883725 300075097 814568311 996470561 962449690 991862985 668281458 972931512 650514084 762340479 765828971 993688071 156294310 984069039 33001899 430748232 904097974 996583872 797405869 883264947 596211617 610303627 798794599 813018798 467784689 566246875 991424614 999386224 981826756 990275088 747210525 761008421 69178558 573980251 206292814 280970771 708962418 778946832 140312969 571243613 230612962 240192917 349237774 407087718 723970607 903195512 15801711 668685713 840354873 954104100 799804372 811007583 611500055 934659069 388411046 554128433 92596047 825186902 672976116 711504677 865407087 865867310 542773916 785422529 707744903 790819820 184213453 451590281 630250579 932918933 615391683 736451777 980857472 984519979 379804204 671345052 402234352 761892447 72806536 817178863 284840867 980446116 113778193 898753684 219401252 647598488 191535177 734862355 705767761 875271755 482214353 608912238 951038023 993851084 53280582 847497902 156856092 516834198 658067711 722430194 997412569 998935708 373417403 943156739 279823505 677930181 818605053 958907532 619132921 890505068 271505239 491534074 187672984 191420226 611308954 625919349 261690970 823784920 691076731 767994879 623320866 948920292 622059347 679615178 192162992 851240669 64526368 146731030 369484624 802708563 714797211 835461775 599133434 745949750 401571139 927927704 139897704 735830431 781360997 988963532 306784577 442435035 484594669 858892576 633802359 761513609 450725721 866670052 398097463 835428786 157903335 694733769 132736974 991798106 573463208 999402649 298061116 507291738 619996896 948988822 961972498 989122168 816029193 950277556 218323256 602059673 97190855 902848964 766557950 858626416 856173199 960849903 66676349 130953628 700957094 844485337 148659846 168861834 156156261 407571156 858215581 937694401 294944349 474943810 912114002 987918572 375869304 779352754 206797509 660897196 722806156 941721582 197410352 611307945 30682855 916940328 214041563 258300945 592450277 732277893 187559344 277117406 489582362 764006164 651748461 681449720 809355981 910945318 82471983 453366875 85407856 684210899 784194796 894934667 681348615 720727616 771392774 936507078 592805362 633532613 743472189 810379752 139275215 904973769 645603986 781929049 923106779 968586112 982540200 999360834 562343390 713974140 469243871 893652980 21956673 743755155 529674750 746348357 666893942 758001499 643662432 966786026 435796062 820042732 742165654 802118336 838836014 954479006 708360756 862254345 748752048 778785182 877349413 877860826 998287416 999782724 938853053 975293459 409292998 914575398 878313692 939789903 462534615 852483942 566914 159635375 695928800 892329006 23868275 119100593 413182326 770306958 484738948 891966498 370601129 389617550 588817813 627749201 224242160 871445313 100082129 932622086 48443097 802375404 855711783 995213303 970174656 992646143 246464380 770296400 40514144 245390435 540093845 897743469 371636488 864899781 247349095 892598429 762756035 859195739 905569252 934811808 843560606 882845213 851350136 890330857 75876069 650746040 139604447 365443835 211435974 304310630 865535370 885817504 361333665 721079459 898329233 952484275 83065233 477234266 849153486 917681498 809643224 984693161 268604443 926934177 705018247 980735770 587620278 936746159 757365911 935894056 558584696 653505596 837625458 867269181 855729077 882670431 99253469 118742607 495805716 534114224 402630080 819425202 439960376 695942298 152621265 561010589 176025708 188286601 828887861 846845451 828664633 838273312 820458620 929973982 166114993 303492106 271204196 907111559 125486764 600799863 517580119 543746802 738446181 839680114 638156885 966220172 573279137 700884121 118524412 698358122 351684798 419977513 212912125 870457412 726199141 764858257 871564829 995272105 445882001 797407210 184832220 617984118 655338990 663392939 940427130 983183320 304154728 498150310 379366051 773792694 637752300 965933585 903752534 966399912 836799663 864604176 864203621 941873434 148017429 789026086 299670663 614459272 510135591 559104621 850366422 871934413 630670602 639084730 773924041 830632985 322563060 593531286 992642300 995160814 659491391 700692381 676554632 697455704 76881997 165285180 934593493 976108611 716646263 815050216 899095090 984894610 33082077 325567516 826655509 928500002 908635850 920711050 378636671 434534156 620178964 872074236 624445285 883751902 174624630 792216494 14820474 867162207 338508341 659838692 410149510 494416141 533622213 770512111 980227162 987459191 228266099 255154843 892824161 927240303 409833725 412946901 657289341 883209683 140256191 671632859 71317195 293962621 288327443 469656515 445062057 681417627 80705228 931550861 693664399 744385152 648260881 938932598 610899611 627099986 992901341 996949038 791528463 857473397 501821998 955559318 380981401 678513468 527567592 894883336 232823102 751850186 878566099 918981494 391420147 467181081 824164497 865574469 767448733 927631647 402513271 759165828 787920288 898962533 94751522 106533635 561278259 566665935 920057 307065865 343813123 419221549 282842547 801067514 925704128 960888445 814129250 958074785 432569243 929608873 893750403 974752802 598560524 654388013 829691250 846374767 489619508 743849481 630970733 963565072 406674684 551497168 844056530 947595065 610045754 800991299 365521977 682771517 616060148 882123090 428162740 964391836 419682219 583267216 167427391 865638727 196686872 373628443 47399055 763997416 445016584 701101088 806095797 821579340 33988981 340476407 816664924 905073188 331206754 595243224 603363970 775734391 443838744 661886710 885776999 886756924 777253749 780615879 693570450 970938941 235745305 579600992 385990775 850956237 648823524 877807111 753745141 777689219 619565653 997359179 677140913 846503987 618763237 947924806 828197830 935155160 377293338 961864729 910489874 937349807 427072397 780914133 471793283 882969391 78149320 685895897 277400326 464252383 158580183 643323427 755718466 870598011 395615001 445361132 184615129 951547694 330182880 902482297 105043973 456400865 319208903 644628218 799966312 853239432 10699846 806808109 942455733 961240317 935286465 972211355 212366771 968971556 549501278 909712380 918466646 997417415 471003162 528336555 176139867 220817365 115919346 160429139 231428590 551221798 852463817 989697431 487856365 961324912 497389988 830692742 60099554 291581204 15310346 204755586 751742470 895776191 613541694 680455392 66960650 820709099 118665651 667650409 827936944 915856641 882779976 952468757 211082066 230852840 926904258 981138695 495548883 762340493 945256577 983804420 902504513 931411056 591842055 978758933 461700697 721851451 485142347 705523365 22380978 536147454 651056581 695473786 393548243 999126272 852680153 874059428 121516999 920794113 404892303 490932865 590533630 923083505 337820454 562842551 644866054 820140910 962388944 988977914 808376484 913148902 252723850 929545031 362639570 519165820 89679180 841619455 920886938 956541476 585967699 960567410 488589403 849696658 119881724 864172305 310589057 717746586 829852996 922262139 770421701 957985362 182606512 479170847 613262220 770779646 864161565 909751487 45379965 432399874 292451722 950411318 197347326 941627944 375716473 771593492 659882159 988349507 993212558 998033121 118392952 981751259 90977205 561794356 604255615 746556454 895312513 987030600 770876802 844522491 138602239 463728223 111073922 972395788 108529479 392594917 37895313 47354041 700339288 881735195 449946292 861852560 128149065 665293263 669931712 755646797 391953127 860606227 931959831 951331397 177192700 390690280 301155666 794493270 778838546 980065175 7095022 762218831 66993798 199241702 144676946 548370477 696180018 726475718 345149965 659730485 115535651 482575607 569813650 954480772 182689352 335120878 736813132 772786615 941745779 993255265 313386437 633890810 923598194 979785396 641018072 795554061 948324018 968378598 27684988 482420200 973682338 988907107 871282588 897646515 525760967 998178323 308789503 676143288 870213700 986585284 540566331 758687837 531780832 801631146 472888020 848848717 763464304 846470907 570794084 731857182 443438617 894260378 216589162 368537521 725488581 841878022 958376242 961583374 590056538 675126569 334598094 614257231 286873540 539369879 671686054 683873944 557013125 979655259 824988261 996622677 919215370 931787491 131836486 458689923 766714084 850235941 788802861 996702803 315347319 674574847 926456117 936250569 96387939 859206906 111886461 405071922 362929043 971062536 23512851 140605417 517462894 569978531 603863275 931003597 168219220 295243835 179283258 387091419 898551494 913038226 702174309 827273128 377601405 779081479 929681826 992458320 798508098 992355605 59974044 283851676 943177481 955343247 427596275 691647764 772643003 917897526 208114837 981548100 306423672 586852226 345481626 831111197 768320201 951431588 614497957 844319054 226305950 722025851 826793679 850390962 609155093 926614998 108083647 517050924 716973145 782844993 864498373 935567017 81358697 538306561 210309967 558726467 468116533 952958191 173226596 681629680 452614683 608989325 280621266 940643745 816072954 889433386 353236566 381349849 315778908 988010425 97214760 187685368 86433744 467893179 253593271 533747512 883715555 994394485 190674152 631820342 924035579 947807208 22341404 464549985 700091065 901888111 739283964 810796158 463259764 673805723 847696691 969696301 650323594 859464358 61758840 929061195 963381920 971219557 376220776 547077355 187118629 754712929 987406022 993143238 806242016 876654560 241235039 774830990 77130624 563671888 705696089 759076693 938559655 959836669 761699748 984171307 60544928 444341250 777744207 795206449 494735907 646016430 15074101 791046182 548798063 903513240 979343539 985125253 158980494 435666868 476925669 854110792 756632623 879717626 269139264 921061664 870149352 950962935 476030178 843919902 133651027 691194206 991191349 997549571 916977940 939889692 845678031 928053792 412034370 683068747 734057415 873929961 579619562 848763691 160489067 999827431 63295378 375635025 513455380 651428214 982473243 990083078 533759767 573395898 911035954 983514308 809280054 841764629 977494703 997925330 348173267 627619433 697410408 913521198 301947900 574533864 705288776 748833120 610727670 887781763 67218161 455115189 492255394 588643688 331951288 471939034 628356546 659204470 706442300 772845782 696793597 933731250 119648703 665486259 848095461 881419931 604182089 698746153 139891232 888092337 711298791 909258618 690689430 716360253 346381603 948066567 316896196 892135794 392345629 950405304 256488351 856310706 744973384 845263245 732671476 749391166 533975116 572150707 852628256 979575901 158644146 477967027 11519387 55067588 173107796 668874592 387986680 761428127 601147356 652158518 142139360 175398026 498878905 774138508 916246581 937809160 938606165 975425289 418845884 842317633 292627131 508994501 117360427 769675601 570008353 789690395 825082028 953801580 320842591 901471804 620839761 650030239 979460938 998300980 631323489 666888756 981383896 995542573 142733580 428274407 7088623 427330234 161580817 503961469 965241645 972927288 509139654 826432059 98186114 392051020 683027132 907758969 247786157 298381607 514985744 772503211 934106160 963084547 468620977 882383660 599761513 938038364 580381568 722071028 476964676 688678538 710828776 799910167 177890006 787278781 364497331 509796569 760436131 782502874 518903118 701873311 539959038 553610027 30686769 622967613 398369207 611025030 949338100 967390078 583241339 700975866 705943231 742938197 720301441 765846817 318586290 827690239 555960204 738362323 183955131 623828248 467911860 550220540 473800988 534392961 201331826 700850676 64201619 871858974 391679635 668811833 315417478 485442642 825410422 917837196 766491665 971264732 835098203 974805195 956261218 965893597 177310868 598799451 529550373 608443050 945951165 953489030 307588463 606198844 143695678 904326452 10265320 264134753 499992787 557892876 803358185 977561543 489566135 853090877 338504106 771123361 792472816 905616519 744385323 747919497 137772973 993217257 920266734 998050335 387043764 623089624 484588718 827142043 990563697 995558459 710327567 958073879 789018609 927582481 659809635 798941283 472757497 724767351 310118908 468805138 582457946 946915408 727380427 804018157 648005574 695039611 863186851 948161935 509719043 877188450 49441349 539027493 118463460 778089299 518510741 625171319 357950041 800914805 41626436 292955205 716425469 755753294 852518068 870011411 657557106 945957365 455062729 993192938 579630670 707204018 417015656 629709991 830099168 910292460 549476843 618948994 184599708 325552080 891318497 954526369 174787376 808892176 276669060 923157949 777845657 871085467 388927481 609555999 943392440 953280265 756805779 925504137 89842634 566380514 982091061 999019586 688032814 700268080 466471147 839177350 379293032 746856542 423663418 986478821 389121371 939450092 715169593 741422221 844913242 911182726 801077342 898773726 821623070 908778396 555135249 682255971 483755173 615156238 270303278 995228653 818618038 873518622 292983940 576299833 898664721 905930022 471595964 748013500 480706471 730961466 99824676 420856404 638591978 715954804 729516679 840699264 721154249 773508670 704841005 922229676 491807126 993557222 458000272 466953509 437923956 934889140 699503821 747056545 273822426 979664797 211798701 642823201 842952544 927416583 65969645 968765855 980565326 987680673 517747624 555014365 406485179 714671898 480409900 892681353 325006060 356436416 335700371 434771686 414503915 551755833 804225687 899143293 258319898 949010278 861320119 869364727 295499815 521841604 965888060 984039730 214002375 733359914 750875931 823882335 218897079 416172371 48419385 890910137 689154662 767305155 956274390 961639018 489098703 689009801 82984082 154282319 271880396 463115459 179482851 182032379 94165330 721708149 338605097 476209099 665985498 845570806 908151075 978191469 909169408 911437013 762213911 985367899 36724003 79595895 136631097 159525027 109179222 588404375 34303254 780489346 233203992 984020736 525762319 851477086 114229235 809597572 444966952 513221855 711900639 930102519 867222920 884194966 421730798 650430127 762344813 822520694 591278711 802434180 600456143 838484002 107039435 652798385 233460146 701954579 278806901 410348127 387739178 558424887 600728922 604730254 512007641 817904906 936255526 944615993 781824241 909668688 757615382 945318173 640431287 644522290 326069872 926273588 983395197 984790555 957387449 978117120 502108780 698451609 807954971 954912940 350090108 988392084 576104425 824461193 31235847 533944842 555067754 963397475 354681498 855325335 749293874 792508981 273380251 935243417 983668410 998961634 63655817 958624144 442548922 862430989 730452247 968973765 233287309 398906199 44388867 508655639 750713294 787010570 601980818 797393891 666488606 937136159 891929479 979153350 493884239 926476164 728377153 792664691 613440867 714203023 628093911 989854270 646418636 837005861 524946862 548439436 705617285 782221731 200322737 356949656 980440469 997893484 157200082 222950523 453730411 754949982 792576893 885361116 754195949 806555342 16816317 545896791 859880323 903724809 754878168 962882880 251855180 348700887 275580944 717230602 996819862 997636071 579709558 875565885 622166256 697324267 38460358 747015552 922092762 990809909 5952052 500115663 163252385 969161500 781743470 997641630 108308249 962999250 320039628 655025806 378787868 559270073 575743684 939024141 143149773 149414984 98875705 767528374 815751123 976444821 197499343 743740193 77095602 609852268 806363422 953756360 358373421 481192745 118371924 498641024 777311421 921412870 334124526 807169636 288411008 792604687 149194014 176881683 150691880 327237131 839662962 997772459 96257270 261672517 287245297 735557456 577643476 774094391 133582257 535105219 624914823 965055113 449400906 798376889 256914880 380405870 778879764 934631401 423395177 882596710 686769351 883259368 348898058 462264215 344267098 445269220 475712562 801014146 897167926 935219158 738149419 890710454 798261738 838178678 998295897 998898498 667255720 864925781 20698136 38033222 435196821 677928517 971975973 998035332 901046384 940581988 369320871 993362336 313323952 481632502 762426027 872792628 858534754 879669578 793697178 794468443 839196474 891428842 269983154 731948030 87096367 576280679 108577871 914005220 88000563 939161778 114849217 699672249 757934624 835452873 829681913 947040605 542836194 606998828 555485944 748005002 754458964 956210273 713901499 832252552 894926244 998200306 171125631 473405880 824151172 841542531 25560332 261372894 65666086 247440890 230740505 271846173 260077129 723744620 533851527 563079428 616500871 682650375 457727712 879154339 808072171 997142685 141359568 971571139 109869193 670100265 703388444 842299409 460541657 679140969 575745358 771956195 744583019 863377205 572235792 749998499 752256311 883382463 287459230 292478986 694846556 888972908 919392965 985721299 837649216 972803285 753879782 895455652 151557235 449682185 98285877 517759796 141895010 430915901 398258242 411810073 665717074 710112339 993016137 998496048 63885279 632522556 162180719 309382813 386234103 748746484 410649431 528800355 526129312 536756722 342669711 892341528 254773244 981563992 112218687 810296314 749909388 975622371 428821088 727016150 66100872 553271856 318297257 588210394 363441925 879422350 734819638 838431115 563278003 961151335 703995876 838544403 332963809 792707329 666369929 797989123 668915304 775113366 462445832 895583394 443218579 621981338 681900678 863843891 302830211 685612992 751851016 900538948 929248801 952299626 49453826 481352664 855847444 878674444 589759450 616083208 223271277 378971519 427392374 823591930 919693425 969884945 929011472 941819803 35507493 569087659 260951694 890729453 948798219 999793969 118859776 314256020 598516513 722065152 909699585 984008557 398117076 496380149 150438181 785516317 130844295 918057874 479368330 791066448 739724237 800910276 542012962 754970443 453549870 548618329 390674942 637771132 652240056 805407538 258015328 332991162 861869477 890893974 217404662 907215752 899782774 968798643 511500998 516545072 531694833 901475356 268904531 614538566 777386301 912393840 75242116 946739396 404768555 426281252 42023931 932274769 640378030 748944997 534824039 769776917 250699489 266981041 415900612 991482950 854100512 952580542 562943885 948049076 349530337 867069931 725075217 840379055 596605695 711119244 358740997 672927517 39633434 586392576 574863939 855424160 827913390 860091280 150462698 825041717 396221121 622902248 782671393 811088401 847659706 924060825 575931944 782345908 500924402 938955341 431580977 637687999 745390751 915209311 159757878 334127095 353824834 791453125 684978189 714937792 398204379 788088681 423416169 532736336 307291600 869503562 882058478 894791814 737480661 977620153 796513269 939048664 734231422 873281892 615721818 704201149 896632506 995019708 321963713 728415020 877032950 932580307 240242359 754371609 428414320 958657500 224136878 527303896 897372304 954264007 764733551 932563557 698312879 851671591 399081896 528327873 112282985 134382075 987523853 987949516 141377466 294366144 312810546 908194714 638758221 962821052 224640789 749304216 822575121 972225333 395216546 640125683 315952501 994115379 851968365 891578325 90499528 778517110 197686656 778563719 795703171 849844551 930074413 999741922 114759224 196737948 846959453 969334626 534201826 949690935 640336753 913044143 777552665 963216179 204184429 868381432 34622921 850310994 448941179 785372358 948416089 975905314 283707577 493174092 381722018 885903963 280882873 792688291 342309596 378357732 605395087 977287644 356590577 854816098 844342604 887316701 469151848 984552913 289511511 693734196 459112461 529159500 429155593 919370271 792147620 866709662 160516749 168140993 357217950 384754536 760558929 835226849 465422064 775704842 52013786 84775606 858904428 872736716 367328409 742112379 343416005 781673580 796157718 810077688 179153784 903464268 754798218 991916495 273709925 486823766 201147516 802403703 917934520 970807841 819617878 949581302 3939369 885034075 966135688 975430086 52047388 648097406 59616568 631993107 199059787 441693079 251343562 976584250 549658667 793436218 660408818 883235902 280477413 343921720 971790543 996257393 465125976 917509658 933717047 989631660 897539495 898949278 26554661 251204575 397021352 873563683 168757392 897719407 224637593 309073098 207387227 334694299 138423122 848716924 872275303 958037412 270596580 703413502 270895640 958955216 104108361 298303002 724226354 997430876 463024197 788132119 390331091 572525239 445885371 667055154 681449796 987511152 574434859 767963762 550688512 644089435 92458896 207825805 738269311 861109858 889312713 995522797 692708487 818581588 409866719 701790337 773545809 833463793 627797033 721457125 525508537 527067739 414702136 420587385 498978726 948305381 539648643 764067858 116097977 600438378 906097753 994979939 959830445 983661631 165206349 660722216 16398410 973976645 486047932 925104355 143073095 873344135 774330253 887708110 867428589 935827145 305317375 849203391 75963010 702374486 190585551 402129465 47293507 553587498 965140910 999306673 68435380 244469211 620393672 974882806 795702247 872274779 22490373 480632333 193642498 405580600 386116468 433323389 630424262 758871595 844942286 926376378 168930792 510711124 398198199 966352577 358729999 790377357 162307286 672928477 224142398 879247003 417195522 701959639 859452887 864929142 650773203 980203420 25109810 283117145 470251463 692411000 563779622 595690217 294536517 688388000 261658692 732602960 196238427 542255672 861647664 968715967 278320556 702675066 591313978 662491561 573249128 646596077 724381853 958345846 177682976 708226126 742817773 844497230 208289012 711585196 395118477 461918793 886349713 996219756 938317502 953103108 767097568 949697599 385465644 436530757 468301690 823651196 679626441 705114482 460762385 557957931 593495410 999388459 399728362 659720374 487632754 511317958 41758083 795441213 388570457 719668285 197520882 628363907 701535490 712083490 375941267 551797931 186316963 395878903 952305932 974569264 823991621 949761204 346335302 761578496 156330234 909066592 84332781 441571801 237475435 626834060 282828029 374491546 311117276 446033882 914752965 939478692 815439716 921082250 358299749 502037919 917655421 997601683 281308141 941161619 94245092 329238978 230443779 660951723 329470327 467218252 896282471 958099042 362272934 704640572 328839720 347959479 128286882 413614823 716143304 775511408 59214975 419699287 317841778 754078248 571104736 720708513 11160369 586071266 959935862 980705931 261517745 469164377 394998312 590886792 786185327 924213631 508150386 554792692 950988022 992234778 892731652 926096523 91179631 657901590 386434464 961255967 359076474 628615710 335826714 490575490 663672269 781676350 787357989 872687978 952920280 975099433 362099240 918438643 739847683 972428986 908159425 945476153 164287920 819865230 250673761 601811182 189046507 768111368 678941157 737658442 427830009 734559778 948850223 953829827 181360930 875436192 771578506 984273323 300847727 580384841 875133393 955808512 891907046 982220146 651765967 761130505 551687171 933580723 163815374 770940863 872048601 885470950 850815975 929063446 6211185 316084735 446057764 943551642 753032084 875317443 817643604 999377244 884947897 916302095 431693066 828925663 536679644 750036209 381752645 802740996 659560863 878616282 87243669 811623508 305466187 807053111 99783866 646184486 166217331 784594993 512356237 525540798 881312985 905696981 705168288 883501382 310643337 369456365 140453229 373766491 676399849 750450031 13918989 544433886 332108420 579521846 600163184 929976486 688025725 914139207 442627962 527734246 219693112 743944081 340827493 605178642 253461187 617760787 779397658 887826337 283540871 638499718 192340717 915446047 822781753 851429495 546826974 806041072 285771517 371565345 150225986 153706911 880879365 930896367 726792797 948209277 965111573 974577254 568319365 793633012 100624146 374123324 758537374 856125291 148496425 484734736 491784067 761205145 532033684 573759952 793747993 820436704 30391937 411209543 797309848 951035500 252116866 649180936 340979202 641334952 738841614 974087366 360110194 795143622 951031986 984564098 123549590 302467668 574701481 832231642 918795103 979349947 664818299 805462328 157203341 846537212 64006259 425129086 253548990 950375517 987667253 997132414 590683094 920809072 509674938 869944854 406800934 831628746 517136864 811762484 389202895 874900083 179202917 811930068 285860894 418131604 377176782 517725502 136745442 697034581 368708036 977904713 300934226 939016209 727883859 942612778 649170411 872890917 575020961 913413555 828302437 969860115 956102583 996991038 200742024 604391761 304875418 609675457 935584085 999192330 500185778 797656480 510334054 887162083 531372420 783505436 27325796 74903344 285523969 337199875 424598370 838288222 867705142 898665720 716055342 989552986 925168662 951001347 466081235 780515806 633803424 677339788 102252501 332964185 27292655 208755257 475104080 553914111 959232808 993519629 97480789 617721116 891333046 897127035 814723421 822356338 86714973 448749036 880674512 909248830 209317999 228431666 8780522 490536550 381469205 971301691 613658594 791658894 343264336 543257610 448156509 907461396 408057314 749726803 788780871 973004751 632273988 921178763 733960039 816705917 640359703 738105262 150275328 527557999 259391270 852654938 738166191 993241980 133842741 556507132 885170077 958011039 621124030 979841274 568431715 654656346 388264690 580993086 681986814 861869608 868502767 879769651 727751111 750002688 545049731 908197298 191523708 643770170 791482727 871399380 152109031 524680323 67068310 122943120 797273248 932671800 475475787 926213918 269393968 720574185 668166566 895321595 402909188 570415848 481806636 795417708 658919016 841805580 931193023 993470947 320560737 796721511 236937552 342437723 588714138 810167084 593084905 603504032 814972549 828944097 36226495 658148235 400706685 445592287 938185970 967740936 274741839 915855377 702852159 950540290 379138536 788082816 842265894 874707323 543945045 927031247 852973467 952522706 660256462 772604338 650440462 932579565 857904244 887435269 138770824 886604230 807993644 871904001 985359118 995681536 877476509 944512753 726260802 972622161 860839970 942727621 292356524 992701804 508885582 512357250 170576394 893378435 631326744 896846046 661393709 885388240 240646976 347798335 463626949 657641323 258955758 748280119 857728226 999161929 846832311 988472091 217146998 558897221 425968089 482723857 113224644 495005038 336237845 599036068 411788083 555974987 266724939 447408227 528581695 712043243 139059816 298090021 490135053 933470021 479661691 608752592 761589336 763585566 866978577 883787099 147972660 865581650 880772763 977120594 110126722 504722855 674051961 696030524 533283596 971832680 726490709 796055784 204545215 476238181 429911456 892732780 35988464 555463950 904494116 961837832 609637666 987018570 126264307 284605938 637828581 761329990 57750392 502539474 997448885 998236191 799307744 887912979 615507548 785441795 851618547 898795431 855672324 920623641 697050826 854441487 289998892 834949616 580567702 970814691 183196130 620468709 672756352 832653533 687289484 780360243 238592006 648912582 792377286 958473209 128299655 513688702 855979756 940283596 327806734 378204118 995829510 999544381 334123176 868728562 654091515 677042934 269302578 893026465 713869378 877087337 238659142 283894015 729997062 851713067 143390306 629199532 504613898 683275429 425494106 593318510 548919557 724688430 53862594 673904163 697423106 854874402 415603802 605289138 149144541 668215462 421379501 545325702 103366440 472162204 714860421 863661694 689854200 941994341 261681729 825829970 266244664 430933866 187315050 560319498 176177469 612046159 946290707 990449909 635568423 992920422 378565623 939582365 326587315 912523938 104422614 680212038 637155779 694344617 209703894 611029483 446633803 782682033 452143066 977736507 491640777 607408512 61488850 782557220 430415173 680336092 613374742 718619952 880719621 916821910 850112453 898531125 813881132 934910089 603266077 615678869 947170529 999623687 163687306 787200320 923845097 967622616 399512297 907123883 771738834 997610472 802481923 873076044 290000440 824558629 975416260 998928774 695400575 936810068 401802261 505306139 119376920 888961099 889522485 975925896 318430198 804412626 233030876 561459976 913735950 917976405 916943887 929729696 510412417 612549584 92527644 217920232 865625889 916955701 847614053 893640290 544065581 860725622 146160743 683199755 109265393 978472855 135309742 767345656 298676352 923149010 286080907 875685794 225990338 299108853 726244454 955145065 493038888 511353880 427448118 435827134 439917192 471161498 526228286 678494021 64693761 69418224 634514894 795227660 979539398 997848856 792025177 982356817 953465587 955119210 979311617 988633379 193137915 993382611 855693828 907288213 652466592 805154636 749015928 793800189 873813696 896596308 427364090 866403737 957747054 969539502 838415605 987360999 544631319 669076784 78540277 587483566 894590235 951752608 758068195 809390640 94443926 937891774 987095669 997036585 85198476 670710759 517780337 814822259 310381634 930660674 61970591 114330639 332051315 524872105 910459358 967141716 852535389 980990325 307897899 474757772 527140966 609710456 349338721 589819769 108920500 429783774 535502302 632816523 784204359 956917489 364129366 841736620 477030143 750215739 666571992 987223017 12832326 96217774 739285932 940803681 700116299 895957277 495731378 866119573 108304674 754579498 128315844 347249840 4990788 787747633 161862552 603029544 896370584 981241733 787243712 901729107 462123074 879983513 602324577 898158702 855616927 944570775 642670670 933846793 806027623 807070833 861497092 957671150 109227889 246640377 870422463 985037021 348944485 431408957 482237793 796056827 519906478 857314500 925995872 926900936 990602610 994033676 383791631 634663809 986401319 988992101 254138914 746982040 267459618 419426950 336796303 590614335 451061080 458280320 457760788 930317720 550370758 645894562 885427770 940052656 626169400 991073902 126485878 222995268 144532549 597182346 115386708 216630303 827607142 930068785 973833318 996168555 302664153 704224684 458227984 550384125 220544510 821122592 97389620 722496321 915876457 988652728 698931610 795879059 711355700 893227321 413614344 695070415 105391279 481188754 552493186 602364625 857821422 895491718 471277586 564497198 341150131 916195844 505443671 759441906 372264563 733901739 623119324 918222087 1043909 105172851 583040325 590256925 398499823 714603317 395083385 811558588 295814346 601977368 92356064 697429647 841440059 946108530 892584803 999131975 510617440 633681308 745793954 973283266 712028878 966939333 643946915 790836533 741878596 830086232 975895298 984714240 710840113 950904379 552988647 703745939 735434842 890037118 555023734 559896882 413933278 650626914 281379258 729960172 988839388 992312097 815710743 820747719 686384516 974454793 555805691 907808383 140304166 928257401 390955987 657962020 792947567 964932791 680243189 942637163 501920005 753153459 378085204 441383913 751896255 784399769 830417131 925812914 955880699 993596928 862639602 921280831 802185149 874476519 998758710 999237468 841920853 885990597 779675390 983586608 662065587 688758379 822461877 908073532 117473675 714965955 438123961 541654430 344714830 496388084 150484637 398930346 475228863 731908972 190846591 284401835 512579150 862954841 423967429 782155718 72298514 782872370 410998365 714621509 10138573 638772919 976522498 993233098 744302348 816942740 593695745 869915092 13727779 779445205 70843720 414767905 259649373 547941668 788215384 913827158 795822919 935882098 533644128 855565271 429307765 446383026 302130332 723344472 875221873 913655152 721875346 755579756 360984900 529684489 738208347 905070759 696021498 988800966 513376900 641139570 987358364 998716340 935852994 999770005 354946612 563033656 433319287 781598395 744773576 813736567 879752070 987077143 539112140 863290167 491027441 708743887 371494022 624078424 736188199 911534644 606369433 935601905 775886494 814432676 271065600 898961461 565272214 949888495 782987438 992469494 321738499 632711485 920980613 950578090 339947547 707189643 373972442 785546815 178846412 904245697 475573394 533412245 502298601 560380777 316870881 438061796 21164239 885630288 982418565 987022908 352566276 379535859 235046532 414705852 755704659 869715723 876443203 983712598 539107024 552953805 937268048 953881542 433700420 500163696 763844346 814561845 230147067 519333154 867014282 883336080 60487201 745618398 860782301 916924283 908493087 979296534 97170770 295195261 651534389 821635659 671553473 926759915 558510424 828965309 758047066 787277363 973177472 987667325 842786902 986717957 793276051 795590669 833777686 935374179 759234362 926051327 774527610 791355570 890482731 957323157 817572226 850616647 983225651 999542818 465172947 930333294 35557867 285924681 189053640 342469130 630034256 784748237 544036473 799067718 383328592 790446500 420510917 905724114 96764432 966727512 318945553 980621982 647852034 891430465 460543153 788379370 548527062 760264523 69953947 512920849 76375139 423089769 406285781 984715228 995910877 999655687 279007471 989306619 744320302 824651044 135338705 949123641 530420637 546065100 833020985 966344663 258775055 382552809 397657810 776371246 534768074 697487431 94934763 902393552 954854389 969864451 195947895 294138914 593563422 940352973 635078268 946197738 130603910 440032013 900058198 925065034 180322916 581712507 824397672 856666498 156831773 300865964 524909874 740881771 942273079 991201992 672573225 770661950 69592702 369037026 64553007 524619698 293586985 761893750 837362858 853358892 164708990 492724723 578692794 722563565 448714099 673314976 224072001 868704443 565039491 756509358 43150809 934424194 507596984 979321943 247865309 841809226 328348235 787712379 594975225 632592117 317888471 784255207 822673350 968487106 893104453 970859892 234355541 777053117 909534059 955808441 651094607 961746713 102570901 980146340 544730078 870885870 598214389 890040689 464491594 543056608 704509050 735910973 979765473 992905281 500845323 661404782 622278139 654054622 371065762 569047784 191924182 702895832 989286332 995446320 21561140 483886445 104288817 607759938 631611258 883321114 583311291 595346464 78061612 88225434 876205014 901959946 380484577 893868561 457002417 592254248 445939982 675757947 984928188 995635689 866370589 917281186 830064775 978578303 788923128 913077911 449961373 854097348 277515504 524694411 97422898 715110492 432558718 772049199 243140201 938898860 599129079 754437125 565445120 663030929 177966639 317733317 465868774 735746492 323720607 942490609 269292149 785637015 776518708 990712926 452273208 621993338 380585558 619523800 673434086 703194759 60987822 601971282 525839431 763361938 939925477 951889177 832734713 970073091 775293179 897214109 483363919 686432271 896987091 941719083 782915570 954193757 844125246 849912251 253948642 577862015 303061429 705019868 58949064 628730135 631683146 853850233 962474590 969110162 224542286 666406263 982159765 996240191 967948756 997895684 26774546 603921457 287985163 554340020 317441391 501076703 944379566 997322458 450441031 510389293 15034119 828132658 560894431 640835180 440691888 578561172 182553325 726465557 775204085 896284634 423796285 753724222 22674262 712611381 203708702 209490785 307442782 574670898 590019280 682717626 783166967 896555096 76726549 641603781 20111223 215652533 43300632 91604523 468821053 837836257 637810139 816745150 138773527 525013670 207326542 759073682 198912426 824440799 755072950 977131616 6992361 639656345 686583769 983727400 135070119 707580161 439752311 688700967 97342803 397254202 39998200 559210953 552875408 877403320 800895199 930987576 632418961 718865913 777768503 799729060 990427514 995253439 106352102 950248051 379330445 512204616 523972171 687635880 966303397 997912028 597860998 982098829 223704882 378258016 283416466 320711273 590161433 765615292 901458070 994201041 372437961 879143457 723661431 763574672 844819383 896529038 772594296 997909936 833827192 934976423 120732104 203246044 924423660 949141159 143725937 387376009 34207359 231571073 320951200 603468601 220347116 674826559 884718059 895304130 256125688 948215531 530068691 988326250 207229010 300153567 100111691 303917925 315333970 592469604 386020408 626902448 627060248 937286758 289530200 516211874 91067761 406161704 792611051 948686316 61627989 117012156 728963955 962383995 893292404 908931418 889421697 986815578 557048518 720741643 85663462 716932813 209819047 324066519 529225892 650856270 824850968 952491926 4537886 943693811 500937188 830108252 653504334 944934116 320538598 724322125 566025905 930974473 890846350 945881225 301520079 589213667 985699748 990834747 143267178 964718847 347141798 373564940 770845355 949987185 460459031 825736576 38089168 781039763 132792752 743419249 227399232 328713251 312324509 641045437 382358893 839429961 609000832 760147258 984887216 986926434 551231246 768317589 703856776 825885238 744749181 758669512 567874228 602185862 742089295 887411261 722672833 854338064 221071659 763069388 17007288 380661556 88812919 788019738 504140523 766692617 862658548 862819912 925820874 939729793 435300322 690294765 109633427 271224548 367253569 458250821 26565282 542429910 205177398 398225217 783750571 793567764 249900374 933837696 910151427 996265629 516202642 639251140 379008196 700022406 755292016 983974479 167353331 259811246 247887664 683143173 871056079 934511602 837399077 998406679 166812378 848746453 886381478 961952053 940800497 946328245 576952607 980334562 543145616 818052894 956486364 960931157 638378488 954455698 880300252 914400481 570326073 959102457 287031939 640149335 683247312 711952082 772824659 776513681 618116008 928341369 228049162 789716209 14514371 771422273 80280893 823962354 17053708 88291885 334534347 628255746 387248406 627360959 771127883 778753965 760208771 973449291 536817076 955581037 227483011 907339676 224723670 911316925 36734799 100646601 309192395 712360492 121801136 401273649 687321569 868759443 366181698 751129067 563508080 961750569 668191651 967282819 288574643 450861048 149099371 993702237 276769837 506372304 418774314 483923975 434238151 979703711 431599909 632050106 696683060 758845302 905784184 972792659 637686810 829717799 50019907 337361856 251368868 792538579 717925411 805016401 568094252 958166802 784877309 868338048 387997375 738371307 840778236 950702889 562424422 887302563 993185661 999172908 331877898 509113933 940244048 991073286 556978022 588380528 189216209 420034653 969730072 977250781 49708890 882724566 705386502 793776542 271647177 544885248 961730162 992218312 195647253 368795960 244939700 480487961 597731982 803057243 648467630 758877469 402216236 814696985 888609497 945258579 327650020 357393444 436570183 762403844 995434130 998913271 84796549 997156138 15938218 813008063 345439352 677254734 855098140 873261407 824861395 989796629 835725836 925118664 882542493 952696655 698883156 919936340 256994396 905043169 96723445 547990666 283763326 386646559 424060551 848180328 837786842 921305119 647904575 720637977 512471206 895980114 767217634 802392057 115050927 557974872 70475038 617192113 230157317 292970269 357880614 366949838 270148629 977514696 49855468 806195409 645795015 813478517 405008827 622375806 404826433 810983114 669651402 922798931 211925717 499930466 575358447 656034840 360819960 430404006 436842948 476672255 268646602 722126742 180191949 651867792 573140290 810676410 857755952 877964962 347798511 566869910 518164316 969681843 192397132 752470883 568495493 716687248 870224795 921278789 939288819 992979930 625715566 685729626 938882771 990037476 755343145 958273872 336098146 936781395 436734575 514121518 501988167 935413170 156309039 730543954 275842665 871640126 520829063 688845507 278409921 686581389 99100231 562907271 548548580 744421639 323110713 902842041 561576124 701723784 344470548 696424521 638418567 763198550 339292126 757976984 142661196 430652447 337604566 360840235 984838756 992882987 935024063 958816308 520357599 806069437 573061969 729965867 200099472 802408739 302127211 547356497 634186794 985723665 387074115 763383264 971960000 989671260 473297641 615363901 729479618 783705971 276571993 843649708 519038202 867340717 222818315 776686497 329112478 380270914 107844488 204565932 416461313 626071506 215454357 974299392 808166364 827109693 78017597 534958081 785517967 966879589 780316921 933364302 804535164 829841485 554263224 712233002 225394835 482527387 559667786 850886688 437112712 507184780 327058627 772594214 106707187 335433238 889829041 918305525 168598005 704829503 302834089 806868238 53836773 56620469 307143541 952482049 523539077 607630339 515343058 942019176 672443529 836459503 572577051 904460504 715484365 908147401 1818967 953220553 733115201 931180640 791872179 997286243 972415491 999728329 728712532 970924095 50317940 591735971 818759405 939545409 532201105 601472318 22785684 46766599 341610288 502202871 69885776 305076376 295154958 556348221 177730196 698348890 484067447 836499802 636340862 769169312 642873885 852375291 61838204 314533143 175659804 585348085 115348240 682197921 378751342 844757719 273656659 311944298 963752973 998038009 920077687 974801570 288362720 484062543 969378780 984924828 325537630 958258953 59765812 348435245 924169446 988481269 902225347 968590175 175553848 413429305 867035666 902557158 982893151 992764049 302788993 691186243 621139509 692976508 314752835 357645765 854479140 967025141 942454410 994992622 28198437 602382149 310648046 325127334 159134458 454408525 875854941 959072145 446850840 773355611 214814604 505766465 664612078 937260826 786039946 914961570 205310699 221316624 110929087 716000524 202234250 883604384 97376918 464245514 472346157 524207006 466611159 625929427 47935451 718426606 72381517 341956041 351461085 939395237 310657942 758983937 210475322 328270374 834960275 909873014 548322989 638845543 920187555 962751602 152191001 167626484 751635246 779901266 451416902 480264395 713627027 872459209 232283058 977652878 635205586 808769756 133629643 622773054 59592116 766943635 451099258 457285741 196145297 982459714 788321170 909066458 598330169 664018500 576542400 976970494 246429203 693157048 822425251 999577420 432593057 652161719 741382742 827024741 584462903 848081857 788644327 924450542 195511824 217538923 84602575 800893464 281103696 405969644 538110098 627524422 413366905 596743369 794244284 844204150 824754388 894343303 307760725 680751400 515271433 848145977 214636235 344223077 883806399 894548213 515127455 609151775 884780827 885264287 314862492 472428999 138385385 585779122 939474055 985229849 364441914 963260811 444095774 792810622 563032165 814198531 332510284 487702168 324571648 609443792 578120322 657068108 515358107 567236962 831405738 926486883 940407246 944524809 165240941 705706444 552137293 829884170 397804612 664168190 287048868 502877395 307260387 443158506 816702100 927668050 716001789 829562632 109359985 729764282 207021529 660216330 931397816 994331285 532279478 816710650 196859134 982208182 943947770 964627003 160208645 675514619 313086755 678509589 316960286 619826828 768729386 811176769 248134097 708992878 89834675 882383389 425423058 774984528 369155754 469507140 480166932 716275468 431551137 723035196 126220616 287422694 146647078 552074739 212234857 395711243 905162171 983391976 439653061 610657189 385713262 561389932 534430603 725429855 620595961 729685965 187226928 796581861 484376007 943052328 504065254 767770497 492472355 697792666 696884630 970026879 480543654 931930253 340111773 418315447 666937338 680842952 247125424 979154061 410683439 752306367 163245994 507799030 980346896 996717617 289657177 764223991 329596210 448897143 508285339 654561988 892299533 997592395 147064428 357431595 899361892 938830276 508653202 559580033 304095677 439996706 611814189 616516958 20780877 109114116 829108494 909179904 343437893 936334438 729479180 952278435 645701594 648925509 91684149 999417704 17546521 355783364 51581970 991959798 225514960 819052266 847945793 863498587 727136992 918783364 14049034 89778131 708777146 938881199 661490622 834977517 740290919 761501855 444162480 701021834 237791961 884200853 342073063 800214588 564737099 786871977 716102908 769256783 555643064 670032115 728332396 737610721 734894503 954575559 765978508 935472472 776020524 971565180 741985347 952222408 929757769 994357760 238450948 911934762 931674656 964494398 355253410 949062135 630645873 680482806 165510710 177860695 259191244 771484511 673203331 936191335 251565006 444076226 180171548 491507039 460594588 701601452 164097349 948764242 382479162 762167549 445239187 615939447 419848591 474928370 757989454 925777622 337972235 630057204 108202563 209645478 382695532 692421988 81377574 324276832 834062153 903261097 715707697 769478878 226827616 446137512 350099031 937994653 818562096 907337431 206305806 825687282 735889878 782688795 228623559 296493480 963913501 995022473 673872417 874084155 640175776 840794553 826383724 958850366 965129136 968660387 191107784 325706808 473334179 489466336 957057858 991506846 64696647 907324786 618394615 636958270 963748303 996831099 140790460 707010719 153808175 368894314 754696617 920218983 221684626 411500282 701512740 791842293 293783712 755146608 827492436 848897572 85281919 280979724 516602895 681805188 24717522 671162116 447401290 923106346 740278197 818624386 517703182 974122943 24426383 967220031 986316721 988941312 747223406 749798562 634146834 957261321 86876067 109795868 329178004 360088924 312635516 822737244 652072850 989728834 928952704 938228829 836384567 856858127 536123314 658393778 588964630 995005083 580702720 633307238 410365640 736504618 699395852 812930917 187480668 485695431 88568653 779165738 854373392 989821452 782038770 910066579 503494225 726882600 988702713 990270073 752724823 830338093 1728924 513167137 447750282 663107349 970648111 973818632 741386993 907919799 460631257 693702373 942198389 990266620 44942780 775566267 506450638 755218950 140865453 829561489 588541152 719476790 623573763 684516788 844822002 929746725 768683447 824095774 493569908 942458393 271823056 912001296 495785967 594044568 26254052 604937218 326795413 423631241 193745688 503223746 11882343 674237660 731025103 993341583 663981097 774962313 247488449 707651990 605713566 982119316 400674507 674599873 53529700 164046083 80387362 963748126 527525703 552104685 855232717 922197469 351702988 979172601 766014274 879901223 606117953 819728487 910068881 933514229 752258124 820285094 687003837 847579408 925359768 956630248 117282508 416074139 579583959 740762083 235717289 993667124 981616452 983082556 972252706 978692685 801084136 959890725 777533148 927085156 140631086 752467303 894390549 967651187 669181027 853324491 536084913 991155095 515381541 755784712 483955617 692430034 226373502 282427572 711440871 990063318 588533173 934893000 869485284 875709877 931077560 989575436 53128089 445870954 759305012 929608078 696544777 738444112 66618309 705269319 473888010 783732328 684623877 814593838 199813493 687038406 994971043 999230783 933648776 979161936 976878762 995703533 478825274 652734757 527487485 905838625 149492597 835383413 253784240 301450117 277433991 921351171 161545728 996989102 614725848 675915763 857665076 966625856 305981020 623455379 830843436 914771913 767498080 959312075 344760530 645996318 839146967 975656540 357290654 506244285 47891968 537025690 480814343 886459276 410007267 911960373 109183236 379819851 879465999 995276102 973840412 974758974 139573152 139868272 202816724 417216816 948934879 981225645 491478447 555964987 399054233 426720392 84733140 331134039 87538185 847635478 120188729 521865754 46945524 740648346 427042463 908673587 316793801 579597678 100693412 972093986 33402871 330567054 590016152 641717882 187315503 921767829 259419702 422989757 253562371 672462759 946987783 966990715 213671236 649544162 575433633 891881361 260119717 615302750 69507905 294153116 947608616 995823759 793373908 806281202 577450602 656363378 570151537 757315127 454122903 799945194 267526922 780175531 664306009 810233969 856222974 920926416 324241639 889156534 134689198 207961330 883337954 993200173 58959981 985153300 627066705 986006568 340059871 983901776 689961150 893134522 90452962 865716160 214709210 686280074 69778712 481870802 713720413 983373121 244218302 323476920 852367232 983698406 629522833 761352614 987726183 995616596 729905196 800984899 373450943 490128901 425582848 782666931 110249731 633890805 14746460 398548792 613722129 901816087 860699652 879407717 807728779 976492588 745506773 974948685 569122803 708113213 124587206 713451291 160208697 420352360 476290619 958950253 213189770 764095003 986068784 989081618 698256475 968617538 246750681 339011611 726292631 859443347 641744183 829124959 588931073 905068162 249849894 307532486 637714420 911755507 44539448 826460915 683539030 736575960 63277072 642291263 133049555 752252972 73063371 324727999 30397482 578251107 542682549 960979193 865186303 899004103 847051566 942670282 33040045 457283121 797233277 819156609 888139862 943810015 905286907 927735629 193597770 845849727 368818330 886290289 719823055 794208645 855785799 995916792 848787564 871993990 463490135 884293199 675005963 676862878 389270034 943234479 29626601 121358143 516563612 672170004 787146481 898137549 457860466 824831155 790769819 812719156 727126269 737088740 688578069 771320637 114866510 725255871 856412455 932942915 89281856 831276061 36499593 929773410 475345558 797012166 3495077 493704637 93651858 188992516 922283289 956276580 654936351 871658534 480576154 660147349 319534328 971264845 283857313 423714270 632099429 738724923 654214120 684530967 696136238 909719082 569015640 741730509 357704027 712985415 236920373 476253873 497651037 878980499 633136394 830170561 6858594 477545735 668546607 862544584 535841046 757488949 746524435 810568905 189633157 655897315 432791597 846905052 51811970 61166394 66137882 169587944 680854075 898755520 165962510 321635364 314588884 749998903 580427440 890480544 185422502 300596637 179459714 780196238 859676361 944829173 823587443 987561571 769745430 905410740 39765253 678154241 24129390 355696002 946742919 952738523 1527483 717592677 876186488 954398063 190804968 194886607 386324459 572879664 5968043 498915496 507555443 719403387 680273745 788749045 998950971 999652345 964777619 968405834 193294848 926033304 139313727 972052822 757416443 807511647 407068743 665183392 812830951 887945273 261256112 947650509 40476240 591709730 865947491 947524255 353376089 849940240 76661906 227658340 673633838 760139909 769370537 781060123 800011543 900377029 280394267 685988265 743560465 806245343 128208253 561980142 168905553 832336408 21135818 480777793 483864083 921657634 915561548 982417002 297492360 757609423 871003486 895885083 230723573 353311182 47284145 141941411 652985868 706643812 731747219 920634890 526479700 953365296 496733661 833374003 766285241 848027456 651205207 656100612 681976785 909198424 201379607 753219560 922668815 996385024 535183342 602374799 775610594 784728397 520399974 926354847 208202524 645056376 924944462 972442166 523446908 645716398 427323416 827393645 568161336 941268016 896752509 999071022 530473194 551163614 65692912 309642410 845788463 986119223 992140363 994938584 291612599 562311742 867208537 962076293 339196129 627925711 80826787 874551071 614152238 882216965 27924470 339707748 502497959 850472158 526647858 876758266 647201997 897167494 674156942 782065478 871826449 958081162 11821669 830961969 293469889 444760641 498940874 968051944 837845492 988431914 253879215 889146652 535113205 990324919 167878788 684201261 908901489 979652747 362008716 856834425 371484881 502955578 727104163 969087317 647832391 858106956 385757077 436867217 132643412 851662220 847824618 906806776 471859326 866795418 414480922 775584748 939235572 941788263 920489753 981963995 801529407 923984863 502213674 994527507 97863427 748327915 585016649 691783604 728492758 839789277 488880151 645076542 489155429 912641169 951825321 997990449 928527425 972342037 991513543 995415479 714127554 939221553 190436254 691335258 896210383 908882459 967914269 992925371 239981755 491627494 883736765 930704230 807562045 930923539 872201846 927474366 314804634 731689268 920144947 984866173 881505357 920561826 680305496 982754711 535008294 962271852 700660599 957925028 929173360 960428457 4148731 556059573 570309594 793724853 461856033 866129782 635005265 885597246 284658690 608130185 795674785 874494870 33592065 122848838 880072436 956384734 888652792 965613839 964009507 993711201 764386967 933306967 892756032 966932443 38351634 520924169 521693165 867113555 891621356 973100782 334510167 907693582 306351627 850609071 967675635 988264454 420733758 530802861 292408923 900650310 941676012 988692521 109535005 334718927 993197704 994045999 543689373 879656443 187754263 931922804 414502090 999764048 163218323 352480115 263788258 273973043 844621056 850241946 702607585 947128179 638525987 928739483 769671756 847867975 234795391 462023936 890868173 987253370 511632903 673165745 94701688 146616945 389193389 806566848 815205491 932434185 877982302 984554173 387679644 459678713 412476938 842688994 410837509 699867555 770320260 903533078 985219092 998817372 695733932 982583042 691963742 878652514 144749877 484214863 420268658 775792514 226372342 444757924 846390584 982711215 403885038 466852225 651464436 690635476 525331197 879674382 241642462 774622157 229204674 373832949 829347963 833234576 801770666 933112000 787897775 805790270 929375349 931293489 98606129 689160288 972016361 981035450 725336502 938597348 417898876 438629755 461496498 477594285 568814182 865779468 279416428 498082241 253102635 263471313 344391117 804128149 704195987 901658126 627048361 992296822 623932525 728488705 107940778 297929015 33437590 458367717 732654838 862835681 101123917 574322412 323481821 979329647 876521128 904240546 895315063 897831926 729538254 738900512 126528986 370186209 718238770 809738345 680888232 916253804 309232132 982924946 140509282 325925840 828042069 965702063 204288032 394735612 714554167 719505866 7867957 33252059 542300840 569160580 355743878 910607670 752335481 886635145 663140176 708292402 249983839 692881287 572469046 946008067 882378457 901529767 389490642 659001592 880829658 966111091 712208703 857112012 571439524 937436482 826170168 851654164 916097753 927218866 792589635 955999417 63047302 320210738 700269396 736137396 117886226 169934441 490802704 780847635 6204387 599873144 443218553 574560854 156076386 921897078 353295464 519133709 621435262 782971433 671454266 787848155 688800425 830858488 969242231 995493637 738645436 911278286 838386119 911804987 739337369 793529002 49840855 888958170 807500654 955435435 937090252 959619238 489060897 550500128 317815138 506743547 209220287 903901881 583812449 834715454 488063425 501410741 339758032 785317169 958517044 968432032 730669846 855863393 368559016 897105491 2879937 382693871 535665042 723168393 58245186 751176434 453916645 962216663 160195574 276291487 583484256 966144082 612164934 992725488 705285110 783889996 990447241 990780493 198598053 910937799 280320914 987679645 212433124 674458843 310366491 829853410 364959001 390727456 106922684 160783323 659794976 750041563 80504238 86985435 216565290 761991171 352384494 724953609 8728613 264907611 565977845 843212807 888112647 936699526 79444520 535313171 938616282 978977247 395625392 751204237 966700891 994661280 167931217 354919483 314603784 960625955 138889816 586954136 284571309 569266998 748934259 921161031 498924962 966559142 636434218 638614694 85014210 961533671 847936879 913226605 919559885 955321851 452390815 463126077 717020364 825397748 88022754 404731543 803816175 816343165 990523654 999149529 856397004 882890145 514868344 599177605 400744928 814992311 119482003 819021478 66974832 493658799 570609395 817378928 472661407 570123022 609938426 752781081 70212872 565803435 847195094 970580023 578892427 667143886 727626006 985044196 42203351 342727141 176859385 684474380 468278402 558478323 831227285 932724031 746197171 949622893 537192220 768646040 449094725 489446171 263450759 506063254 627494484 633510165 7714069 659168309 221069059 244578745 232460234 907570481 378753968 765163952 320486278 460712175 560644540 570732241 4111919 123413911 379588876 790682357 350477056 452867610 740245443 904852975 501902643 988377094 690380076 905116354 944799210 953733951 398084981 757939706 351512508 620441711 678341647 791710959 516203420 673094903 605694169 988900597 832506472 966042486 525372710 594554602 802071910 903283892 972353596 983267526 737825811 851321907 64118514 456822630 161740220 666317653 415976844 764596450 649353812 932254841 389256560 561738393 867978453 914188758 921810653 934210707 689594052 826251170 896424027 954193334 32768398 301553444 360358957 796381133 784624481 968391423 659618507 864340744 954488034 988113331 197160163 683349562 437599941 442624663 668610470 757825068 371607835 789229095 248286332 512395243 841781556 941365502 655691439 818244547 408352090 557169978 600346067 631362379 104310864 456999332 573652255 800861940 343436073 935113354 43343991 296745374 837274548 935475966 990329874 991086568 423534442 744731503 678249561 913494116 938344199 978858386 488441671 582328560 749377828 879609830 32985113 874470282 597611431 850807082 522596015 675107868 114850406 436112423 231661922 844114480 425673885 690503214 893315466 941154456 265908775 691653835 930731080 979107967 66166881 376490587 845850969 862497546 774711947 779115707 446741961 680481902 291132015 926549025 547480992 570813352 328074084 470349862 437835520 924269169 857727604 913936067 331511213 985974145 792410863 987854890 603590056 746115376 201266612 352528474 401363501 779847376 31784373 405843330 96459103 392530303 285279401 639782673 517556108 730542080 851644761 909890441 2281762 802093666 699294327 953199678 921265316 986869195 660045656 928504900 512665027 616374077 75068479 214472662 656008721 842337598 403148034 958934097 72954187 83435942 709632534 829210917 38301941 986231710 625323005 885003802 284210966 933585768 640335344 704815736 926611501 975302212 387534124 489857730 31947060 401213477 833657317 962820247 772798727 848055651 806323968 847315453 240927252 833303534 142533504 547468640 278891183 453578604 745866468 999748293 948017657 953353628 254203057 340822156 950606014 964130114 474966674 532076386 272806905 451810306 588659003 726458445 423708623 711317267 95035940 174811452 413300548 770907965 7391766 938156550 905573719 937611430 139142735 748877643 455458267 732253519 510427967 889373886 593602820 839342933 718774503 917725553 861880867 993270547 39125673 914213467 433541719 589905558 150919489 262182718 414515290 802047394 246856835 858180219 975211317 999175303 768464745 887097000 491821947 877552663 426201272 817074662 454788454 709919302 117304245 338919611 151021813 352013490 720797194 740146752 298792537 970206409 445700118 807740885 305141225 862455487 444447679 850597496 821908756 923757386 751351256 975935268 123928783 268658540 166505035 857487294 272120085 958642709 832101981 926590006 283261102 772189037 744940614 905711155 795922292 840453691 528981955 957040985 80107636 956154124 613226576 956121827 897870288 915377732 235080814 316981181 635990732 761734486 641779293 797532363 773991408 830788641 76753099 910275149 974535667 995032318 930813540 995935267 634388873 902612149 325560269 943584757 744059965 860474644 665361575 690921611 95042041 181975440 45997364 694920039 705088975 708462071 247086250 310795270 960596195 979089031 186622375 349842960 351222817 359849942 61214104 410350670 980874556 986895529 680594014 915189001 311479331 708717308 837780228 962393438 99079593 705659790 251249905 470272199 878295138 949673810 414545541 888071117 496718976 970612768 758616953 814452716 990777096 997479883 429039762 858595729 451742523 847196649 59695431 620117313 616310256 628829279 578816297 581585554 348653657 609985122 978932407 990565226 159145199 560002967 212018631 320602744 800701977 878058044 271970710 582794170 746022249 843693105 288561264 732358809 630057291 934784741 147429754 844705047 602233696 827503315 198381107 307191642 779976109 953082297 995880822 998153417 915533570 971715482 726031440 773854612 693465451 955590144 694290604 702081703 777648192 889617048 830104738 978026378 466121229 572014710 121762581 365306286 644653156 908046878 580012708 585262793 689692439 985081638 844383896 960369513 758282474 901283365 706613141 783632929 76323972 288810892 345537046 922809871 34293337 801136926 116336515 889752142 838591011 881510815 815284346 910169672 943052337 978346807 179668967 783451495 758967696 764349449 868199833 944504299 627751306 631187266 901586543 979229174 508124580 894007650 567954176 595635069 67556811 551163527 128180482 738073888 704698877 917085188 273435088 473179038 312113077 822948789 639517390 675427145 215817544 567506676 464650992 478110333 315082286 695724269 573016828 841071771 485418128 846757745 609776937 929373142 609371390 722155205 338071810 804908871 765998174 997065181 693415523 715149020 123474430 336380477 62034931 476971528 421890355 766535928 692859833 969739683 126508785 651618372 67954221 245880767 19297146 965809042 952823294 990438253 223303203 889197208 17389947 303940936 148839343 862223147 704536901 975444250 486308795 846416882 728982333 952983449 474822572 618278627 573645869 988152727 662275702 701217366 272640762 629233540 215381780 627426236 713778807 943676331 925663293 968066699 900326751 965671049 582289637 691178196 694588457 871404756 786646520 963038831 497315308 986386381 173276330 259788161 25580478 814421763 199483645 656882750 566407752 713337812 123613917 269197708 459656277 516972143 100575852 191717603 501328750 821251554 696895870 728695420 145135995 689317474 827637357 994940398 373064964 661236579 401180513 623342217 84808707 401828394 549921149 910843888 878951715 967492660 65121152 415279215 352127018 893876464 834324392 989228299 379601467 390480733 302018895 446913808 840990078 910069450 587198118 955744186 415543439 906171121 224083199 819888343 674619301 980092091 937760641 947004667 466242455 771728827 715111124 902431920 399785959 550857142 930259817 957050456 5441933 166204878 790010973 807321812 628117043 642269070 576144266 989972335 195395036 306477476 5403824 502247329 279562616 926804092 826202736 967511906 515391851 911916674 718854483 946588133 390072003 532213329 154755863 763340128 865306005 951655446 913636454 947894812 959026310 992359122 495295602 509081055 302416219 338985282 315158182 589966734 860801585 902977294 804699899 895920538 907206418 915919110 957993967 992906792 376219825 979326032 228533058 926856784 828339098 840832600 14817485 747158119 486597278 602193280 422104646 886433423 422521191 799038403 999368661 999937159 446632475 800064035 637571762 980724899 477644080 772449339 389836046 857413803 993862539 997650132 782505239 974520644 733780386 739363211 430540470 627694091 216646890 933233342 900839917 930291046 69469890 701000048 477948300 596259285 179381230 809130995 994789581 997574528 861160729 918884829 462821210 702843234 510146473 593724233 7534489 303132066 846569704 949188043 665189482 860652687 961187696 976139805 260483452 472019530 908062060 930901069 896404598 962036445 298810793 354229310 117355899 663747010 948040597 977845922 565052291 750532569 133814834 307173908 531118311 549225688 736296232 909220354 812669906 849528017 417673424 834679347 104827157 264130082 615902715 843494385 803768780 863376212 793572964 817039380 482120991 542393579 896160322 926536248 284479521 305828525 529339145 756415620 512266347 793607601 3889890 457354943 770556061 972914059 749835850 879111779 885355810 892455286 562161876 814580814 289625984 884247245 86673665 157215715 325661629 927718114 59311572 885512575 144672581 662938034 338500731 999376203 450524097 758937474 56777976 125525031 57756518 768567137 393766136 462778320 544821397 789576339 920510685 943366114 807483110 994494870 416006902 846530361 982651226 997578453 726090332 930553290 856888225 906812089 789484672 987184047 458677020 874563444 657119858 868709670 871746753 875018203 764041437 991785559 198826983 711723687 320191195 825946743 919595166 937356300 902217319 904076893 776415319 915895066 194160768 395499238 812545705 956874960 193388408 658377946 603102293 779426495 436153480 911732042 316510764 669328226 454122437 967699790 69796736 89811381 644198970 790899788 657314357 903320644 95801447 173455337 213703753 795736431 441333713 741548342 95853985 698416293 712604090 721469234 109655494 391399633 328062645 475096631 722496367 951976740 669216731 944957518 50685998 805310166 831538224 888587782 176295088 759034740 994145230 997975791 96140816 346634685 782297902 912625937 8325049 607367046 231969084 796149893 305617302 985689940 325545558 502091697 28466710 826095430 997601671 999683383 639384831 966747844 445445464 603560276 665831891 707963569 905677982 938572332 826712179 856456860 669011035 959678116 732286958 935319774 349722967 975836102 446014864 554977386 743831030 943887039 366357115 960064198 723331362 951221187 54524449 314383781 923534091 955656060 830448390 884113304 287003749 826420875 82309443 327657692 263284857 407386852 335524519 381722786 316938642 520720273 139257837 811536113 451920251 485882353 397377929 694815834 518556691 720003030 704193540 793969456 525835027 638347145 510253107 573898018 375452246 735938754 911817350 967364934 403531793 676195465 178268554 556663027 74625379 857454071 949175802 966619345 448133533 781001252 463852745 896880060 510567486 942418745 954705735 992972554 99567951 497000239 973501412 981912206 821260757 920069139 228400398 755702059 451799747 963881181 142468334 843548965 104659580 111037889 782506031 880331235 147084995 510031131 203517617 624480451 937552385 987731310 665845902 903386098 53215329 287564147 119676421 954452171 952250771 971226132 434801041 803701767 706931067 869827036 389335297 751143022 902502656 906139930 156189616 714527647 185781140 684510308 141923894 565002295 810503084 944265425 990745283 994709405 938230874 940253120 361269329 702245413 865939037 874692093 711849749 874920520 17938958 367734785 263326712 491648575 745183035 816293225 173801250 873771177 835884802 948130667 911361919 973453853 938296563 996575017 52548964 992704179 213176200 964857712 397702017 721461158 736908591 742019033 519926429 812397881 400715038 992530336 972244858 980314999 629761635 652324759 157987453 353452220 195915708 931554047 723794195 832316769 696337760 918885535 112800767 708747903 651326976 666620588 977235884 983417703 333094373 979576797 962453569 975068695 40268145 630110445 36233253 537175811 25099088 32724646 686344536 699120280 107855414 979231263 251370630 682097332 91734844 909725174 354719683 481049711 491055474 616304587 807516483 992683365 193737873 779723802 858944461 872662996 118808109 595121764 896154837 991043608 620592975 632898026 389698210 942098945 699279408 836953503 700707219 898209408 205637311 559811769 709243641 891988414 951898316 966300648 452551627 802545241 864144791 930702411 713534641 871337140 709698478 761728360 825396822 917729683 557977740 798659126 50208031 509533517 90169669 749805550 537758237 853938785 229151713 599344168 898273301 999019324 612089441 920386313 706016027 969808606 924186787 966133350 756419024 858209149 145652850 768663747 462247132 927046342 769937967 891155320 621688662 687885620 483111567 826336068 609035749 723357575 709528709 812270025 525564172 855932997 694431221 815824016 261576657 401022563 726333899 777697626 858366779 991347566 146611154 429016229 332358310 442222132 551146543 980721672 237596238 480573469 752042472 761827715 801337552 996987221 187222470 701926428 98275366 361089603 582629702 948101389 77410095 958596215 723835492 995868158 186930242 277846855 863138119 960921089 667591431 924238069 124312905 820276420 925455044 953387392 110596851 256882769 307321624 525490984 993676716 996628637 753001797 841096767 29346996 337938243 886989269 950420118 405688584 545568657 274853395 901456465 159576726 537925672 26972727 54111629 715292685 854909644 294557793 396980761 152478269 887044242 121420926 678725579 738394417 862427919 636160555 771008657 220858862 789988603 785666638 883545320 135143478 149352773 946838491 990454255 180102739 389241062 610502363 659294869 803549391 926396531 123769563 238520908 587920059 591928057 340570352 762018712 525743332 696048496 344891105 982609891 272305911 384827145 198476207 813976040 674204949 818630632 381401514 413500867 170051359 832824892 375553889 756826314 163071517 943436903 858837961 985531074 699297124 753657418 119165722 771160222 375872013 997039912 125433046 472483835 375987986 659135391 980929937 991224104 659673111 808338502 377326443 552575362 362850866 420618878 692118469 919173898 893475315 965295329 927909571 948557213 885822774 915231564 748822189 955426671 675778117 813843828 3399205 879489992 353171698 362499929 626079171 977723760 486737496 828040487 129891405 728623239 813003585 968069818 496394243 722187799 870767559 976712484 729855822 988562184 791547310 999918664 471164731 708770053 179508447 872786437 323204003 536612046 731376413 856348605 730756011 875231344 366434928 538601199 243102701 637012575 74704352 144615162 648206125 989099119 775168434 947664453 578900296 644722580 638666734 995098073 678045910 835393453 590033213 833697597 807442571 921762230 461558362 606691331 103710143 197644331 70921104 299561235 589781612 686004857 148324068 443792407 818388327 844265493 86809407 447222781 466991748 826930571 462480522 916639420 634934695 736327070 601550994 730668205 570296146 816072134 714350940 759071629 688061712 906375087 683354697 690866197 23869723 520728924 957440033 982223343 140201646 191813535 911190000 971540948 218065038 797247270 705506379 716825853 730260240 754892681 108101526 169455864 994382608 997585805 539247301 745112971 265405116 935078116 430532516 741898895 237667652 615115770 682205396 838643601 279586428 431502063 322653155 736110711 616622837 668308345 948826538 949252873 420940005 759027295 697870227 992245378 120862101 581175718 493048742 897884312 151627309 682857190 607188446 830682346 170961330 662675379 998506494 999357006 439000306 835560013 856697153 916878934 373530288 403799165 697910586 792829118 671876361 767603722 47314580 808051724 439717656 987805258 372597235 567546464 629737090 636119029 734539916 749051946 871882637 912807651 888505062 945859001 380635094 503441560 724168599 880281763 75149480 874155672 370630295 582985491 516730312 908108024 973562992 977409599 242912677 945884966 793880798 802829031 838099482 999502032 150623191 539351475 640881888 689089702 678893227 875785997 923741543 939857077 214474549 653589087 23699156 807244557 604749227 734697662 430356176 653261959 437825253 444866355 499126133 628784577 124163700 142662774 521148174 881040778 802120505 837536739 506799678 674160710 817196903 986095209 472004145 964960168 660551935 778495046 348106386 831369056 98951173 551163606 535340778 753419708 597027538 800639104 115984369 492722712 780974167 960417345 888409419 983016244 410876894 496658053 962926369 999373170 455281445 712448591 470528114 598213950 442335313 641547481 789715592 875029964 736913412 787745572 838467241 871893284 674437085 833798753 990922918 992875001 699863738 857863690 569709824 716007131 863283494 916499265 170702452 744062599 696521936 910522031 422846154 476008459 299265045 830702998 893885060 965058897 578684932 788042497 551530221 631765960 918059780 999409470 794341906 960029529 523157604 752789019 556882593 889036016 571054923 929730894 58613712 135971847 978892334 980963148 193863272 304643002 75162996 782638485 404414250 864720543 529435599 844478509 758112063 849965222 81085279 608901474 394319196 689625707 94833043 343485215 887753952 889858948 85300176 374442744 733153974 873078145 835167599 869159130 649916942 905715448 728650075 894460940 505342833 710062015 479954407 630958921 330064613 355420817 811292969 864186625 785403402 875455420 830933055 869445423 367489011 425621554 981054008 985887679 110442085 863205587 268640059 787187619 925622607 953615184 740735551 950737060 517058453 862300002 835180121 858493538 87366039 465738557 920137068 962863314 892253408 977304742 969407114 994333409 220633159 828958177 240353773 721524149 726741715 896387931 200024458 735658277 350849961 625465841 793756324 959585424 156544294 705646711 577237515 854113309 171734041 378691834 939644829 949845866 936255712 966735077 849743361 996698022 887414339 896972180 760268200 919612980 172109262 728345093 704446637 902870423 926127315 988798937 362408147 485522945 352400398 393427048 481942058 936753266 582916382 772060083 712028808 795247610 623586683 908351142 489092135 658960088 373617378 653178388 479344604 663135521 748157224 801554345 460332953 753828819 980814688 992032276 549819701 891703842 838607194 890258557 220134674 578304172 824085813 977363517 238100460 717412438 676194133 916191507 333734516 863377927 698336148 995002450 637038982 785238182 830802786 845473714 160110719 163597941 642198604 708193364 974888897 993435158 619810407 835188285 579247404 583534988 110924079 627051926 146371356 214398666 920103385 946555489 491793567 593755757 204604637 836790191 451566590 949202012 340153274 409722360 130272713 539572004 197683909 427585691 584836408 866396575 272034769 840178424 773046286 991910914 677294231 870675199 84907627 569091075 430665216 962376012 621722201 945210191 860891674 968460004 531270585 664218744 921169540 979153295 501196201 726173979 669298260 697675719 488368843 680777354 928431790 976354000 310143894 399480326 399210323 919597735 117582407 562800817 548569560 988764693 327130837 448690274 274177432 396085564 745123157 891684511 227736783 268403060 619045617 866088389 733234070 960897832 701187451 803871949 232710228 936914801 130553567 237921498 4680177 771840638 278812549 925563188 753250547 907548701 294866350 421806731 556989288 892060678 100045842 150304621 81047633 510064833 26380026 167774865 454600205 583133977 675555281 678713922 57978118 195076616 941348200 989276561 651335578 959219569 451168757 609853636 619665135 726892681 921133463 974313097 783149679 839263045 989495368 994784374 382946874 568397804 266226138 791231139 159400512 751831255 985884517 994913051 658610596 774852295 721153924 798334086 710745386 901949631 983549199 993452598 823882881 932802178 260881443 646952949 462760978 586350315 953989047 957654374 957580308 982760614 412557217 864990720 545861811 663561340 948073496 998991746 984693862 993397400 559610093 611937709 109074710 320991383 961660175 992387162 41129019 122624965 745177692 932996314 165295112 747598624 553808821 912945703 776561873 937805946 286768381 852135724 389119174 492218127 281786678 675407996 376469137 662509035 538842424 920071855 444651931 660097043 295672035 572832707 477142234 969612629 766406812 843145961 584914510 888892423 943418201 981719061 801718534 923658906 392246864 732286276 444947118 690448103 704685448 869473595 818630029 907869201 67928814 831567303 301771576 786664290 436887327 502469658 157825072 274135204 10652677 574197913 259083510 965150670 313598583 518214219 232669239 522080199 415686909 728973180 175471641 387687871 357054885 364851784 795917603 873690174 868608162 893467970 508482186 627000447 985668858 996938780 585894343 874837420 456370527 757655634 628677181 862282390 755123607 874854791 816799017 989013652 529058375 901091077 871868025 936408222 907998756 958820499 782181910 915090114 949820972 983348549 809148086 971349832 914452462 949011348 566811069 851878486 873278277 988537444 44178091 427105103 936772248 994481984 20952375 944682071 505988336 747274069 895217153 949939699 519432433 570893892 124436573 835233608 747021523 752140245 873364935 952015694 263160479 502622196 454823157 536403172 260097937 438546139 838208693 937271786 924004322 964950056 546080272 694187656 128057070 548904266 107784463 318403443 282278963 686445731 526448324 776603645 519059294 967547593 56409423 611007982 68729399 663622585 28968210 295773400 656825085 968722546 346913128 569426545 771473010 989232096 66990551 466670305 189228776 676785632 334794915 470949296 710416820 831179761 876958208 929589625 152341494 782465004 766431526 828730500 371212923 561229191 682066204 953811635 11846717 662831584 887288278 909351239 752093015 993014692 214667949 931889112 678683425 776444957 941175919 950738532 506981553 789175953 908251434 951335489 735554386 854367605 59049107 914742871 829031265 873876860 622741804 910778082 834763509 906681576 431523697 754831698 897282845 921275289 573689252 605695608 351851522 682744410 288994066 790318317 65847894 224131350 103687138 522843515 896946177 966803809 87615182 536737201 830633874 923546326 621879711 820997179 448522172 750903871 464204269 904596406 80672835 976956217 648973926 934315130 181036937 348642484 807357446 946249867 362183334 624686393 957044802 958146714 818688762 851139439 927469942 930461165 662120686 695140174 708292253 759646505 14989818 765492155 246204456 959970798 793206929 832601453 222761796 645038955 523164125 563851902 322461842 548402246 436519912 502710363 657287459 665962327 560160733 799005707 104653875 936157822 866046935 960857264 917043777 956918505 650111402 811374820 723801635 963264746 339619134 465262530 811821491 859020955 864264407 960898856 272912591 680985754 962786330 983874450 247612129 989750705 607482030 829044965 154670259 272004836 286596681 965228901 564242994 774439505 835577676 993136460 188812954 375160835 248999802 865770527 555096845 755654108 753942007 795990351 338017228 944334556 732299104 900307812 400874055 933207195 881546647 933564204 316186677 730312856 280369274 570773834 206031265 462325597 338001973 887731880 417476967 670377218 569382319 995007306 751180251 936229556 82274967 431798059 194165053 251722364 227673304 366356505 481042168 972410540 758448668 778480999 304880500 677062102 270567108 550950496 846376668 868296915 707141655 800941441 412261057 544244931 231173252 898846210 656058617 798955201 993828838 999976047 533789257 758168676 952017214 961865078 70809946 450779305 579169401 884272788 932213529 998529436 269574292 437161234 175437165 469046982 46466729 490534117 814163601 840067299 344512536 532430908 874562673 925920581 865301480 961528178 556771342 598858422 968723205 974257043 461760720 694610428 322475249 544865612 111088074 709115510 236178084 709309123 1765033 49020705 186492873 945176886 697989317 778004979 694378481 959524823 215404365 817757264 755990587 955444459 979617489 998890280 904171299 962735092 54861528 92948270 994113452 994273810 816580051 843734225 313918048 538135761 641602255 953989128 283913390 288670601 734752493 874775628 142180871 734104823 54404183 70819293 592492461 607936016 722513185 785547486 8746861 934231177 132279392 713496609 240702229 842847511 205655983 455721390 473534668 578315744 400279572 717404922 332093138 536256486 546096715 827666448 537717880 763541354 553679264 858913103 503124034 974483478 629872508 688131879 71054273 450375978 48983196 201568313 40583225 83911245 92474867 716472569 633204682 885906302 811394273 890190831 933405910 953078093 687646532 944509217 560453651 692394825 775773746 932205609 56091692 344234286 771732836 775174268 977274504 991626050 778742024 919501265 612182375 882032796 326646608 767036939 724864470 735023580 107329238 758303101 103867215 558382516 81582348 504597141 831953403 861257376 284404406 765904303 994441287 996883204 915842218 956715526 593728691 631520016 943930448 978641513 938342574 957724037 748558701 878035861 35036140 555511844 906107394 928500534 281505612 695214958 582439704 716616016 60844538 270107444 212890606 336207642 435417871 462947014 892492362 904896430 668665086 790824694 178828435 567159178 906986428 922101105 317334889 401329784 743190183 890551175 832119064 854453699 112860500 167138805 76089859 227655829 843696225 987357421 172829973 813189827 846069255 971139152 352005490 923154322 949158516 979639757 255392089 979283132 343108392 377449358 486957644 686604536 714233204 796681830 971827746 994182517 475823625 567042388 525335166 690582203 129608134 246106521 839527452 882347924 228093773 363184216 848184424 943851363 953885312 991275094 379954091 735254863 665888107 862528163 666872002 765259978 4935290 575483151 620753599 922369271 308517939 574269192 979943717 993753259 505825112 811482041 927340519 968721345 518127526 573297091 548267643 986651379 26583410 858159392 918040282 922759577 437531133 926934481 574320342 740160079 245220083 697957420 68989091 482251686 928793161 947189731 369095918 718228661 942775291 954476421 792738897 937387526 756803118 853546278 713370725 825951334 872497471 894458293 875358883 952298019 251397962 869066266 945745336 995326298 989071050 990534124 250499683 668654925 303466721 650849438 665119490 875103032 892137740 930852841 430694715 777666679 570841839 847092673 434100713 705233808 177432815 579249299 101882140 146671692 551704581 895671720 877619556 997322350 907113359 945162057 859198051 865850540 954473569 966914901 874340195 969350795 685341591 900948918 365644226 636742394 299423107 619531183 365708018 647047973 537048770 745847610 513234392 810808577 207936347 633068086 477126214 558928347 256496573 505501804 294532865 648737918 631889653 779783985 976187529 994475945 373625741 668975425 7945434 364324396 935025844 994701612 286082745 746382660 492846185 779459655 105572779 723968361 354812700 778470008 356290833 526261299 225665310 633041606 669748231 721428393 433866960 726922177 290634388 558056084 656702497 748896825 59873163 466217108 801876342 872772800 723112030 908331682 576082709 779888975 310408423 697252385 779321850 916933246 590844342 864214006 646779086 946445168 324138145 345598792 567640294 841666781 611897292 882698840 269532713 724551995 409549018 640277657 515450458 859558520 517911954 863084332 569050757 974147519 134991257 153699341 653867040 902204289 370459771 857102950 722306167 861450841 223243428 621251398 891636095 907041935 531380111 650256188 449832013 899891257 472404616 675455152 799952138 924962275 912315465 976122273 476054245 729263172 302431507 943353949 271488518 960346583 389189514 857485877 567614135 712048521 665911572 749381828 610301860 677967854 276129381 708524339 335896017 534876644 166559456 950395699 801419921 848467605 886992282 906461077 352658664 505023928 632247754 776234417 644083599 731789143 358510154 767231247 963772481 991689654 976713112 998442346 308356918 837484694 60135149 259441827 242597235 732687384 501472523 552669167 307972230 440974098 522744505 537122703 884766598 936003661 919662252 997721751 750591779 930450429 168799605 702260235 493944855 931513759 481122111 916350268 740795636 758181232 333260215 684761750 79004073 942296427 191925799 746996024 187640241 562559780 950795566 976854374 651183121 727033785 534915784 813022976 744029288 781032587 523266470 757712204 76222080 869740029 80132990 245864475 680607934 963873933 420932292 741107818 969794161 980286391 992677781 996482745 814567245 894031985 924697131 949234842 836865212 950409018 912583178 947012654 985920862 989208485 886815137 987637490 138620332 295211205 323697762 412720844 199277381 683941685 134918547 879775916 711753356 893589675 688113256 872045750 591723374 657476681 556910451 885988218 918118397 930751263 155011031 589820177 931625102 969538217 690614071 738980923 216585474 534263085 145229237 568115925 654364472 708442414 283097457 310612626 826541208 920167992 680715986 762118242 148663006 793027287 937621986 982982146 98306375 155960936 746990802 855278188 289917307 349198042 160501736 348646366 87348077 589734957 678736132 744685601 918443473 967173393 633369210 975504780 394583166 813192773 757760855 837168775 61444863 970059462 794480423 801280157 103429878 986721561 904419720 937429571 626264456 754766538 592229340 674568534 528026728 699731821 525997800 663595827 158114621 192246058 539601983 738109945 525733895 865166921 324564991 325773908 647811351 675274780 928748556 964847175 889500430 937907223 213780499 247062162 885592323 962609354 902424518 925224361 49713637 62801791 20052085 762427399 947367464 970990798 884283070 914432526 750393700 806191532 725373612 985209773 29987299 910391398 868149187 891276216 147436363 433894041 656861786 853936650 925937405 970414224 519883288 775789200 613541377 867999374 276336011 686024891 300896903 469475030 70888630 679238002 906677702 996226491 879080361 983122487 629162859 909795125 764353449 909980887 642103123 897815214 850311891 948328721 956486523 961769887 786409891 976951641 459673648 881908822 219632580 748262782 837948246 951510974 145792064 396637389 862509110 998584538 285922234 750398769 489835597 989219965 862452846 882947799 407331662 615562469 384279824 772868424 482935268 521700558 392074539 742008597 667281877 812718136 218295890 362242672 512645054 611208659 318714517 993490589 756351052 835062551 512561268 537221135 337724453 931714060 511244386 570546388 669635875 973524011 887478602 951137989 229847142 683825663 953810539 996915335 175209868 698133745 754957103 836584258 91019169 444485378 176605259 196948383 413270813 472704427 859795483 885623752 705220168 738022327 250572661 943481510 402592926 705889481 910077463 999068242 387200049 880535479 255174668 676565867 126919548 138744161 748183553 868226575 722981615 831666749 485106852 990659941 872268636 913610310 443216106 769591330 85482194 370168861 59447953 103912720 763826264 897774531 671778464 758325406 548242237 673025004 315845731 442680780 772941493 922782179 810903405 986299390 682349820 688458641 491714662 869449558 715925707 818586443 471504546 731516138 420968844 484529335 539859094 966463125 26488698 512360981 66163762 652106319 926029884 964306346 58856161 853513558 955252846 957551293 730260496 772112160 233402930 309873578 468122899 896071098 527281173 608084229 317118426 386352444 394793461 890698859 295822387 311882055 667302068 669309826 340991378 555784690 235978474 742617503 49511021 594474178 541391798 651554397 424153760 462624396 64289744 621445975 826944566 984687466 79906159 840785428 53410970 397357379 737806514 884982680 653411152 658343354 985018860 999084826 562799079 788371215 620543242 829233448 830548755 867843963 400229245 555765613 761030658 931487394 739470856 802179851 83716565 981125479 262443778 347081010 434797018 814313735 663440858 901718537 202101269 589700175 68079117 601238640 888984998 912795831 823230028 828297938 474908468 969316028 92262076 991912146 610478832 921073226 621268562 624004707 795923130 807736091 359198945 804825300 407285300 909767657 435985002 455183894 604670953 869397553 714865160 732237883 68834438 838535592 655053516 790125605 752418701 945030525 456570039 833165262 531731061 816348845 312718495 491034273 807075901 879832784 849094051 982931390 443471818 977403876 217672999 370273926 314470642 724046660 212465438 667629919 2138388 950891239 288144689 369766999 586175440 844314417 952635408 981711374 182640151 383261264 460951728 774842386 309335228 565911890 688112642 940289522 632061527 788370187 767223404 805062583 743896764 862054711 900621906 929845001 181972958 363571404 715578717 791258259 269233265 536175351 91026481 215382967 515397709 605211072 324701544 364143481 266253417 917782944 557558357 924648017 662633475 875629261 805375144 849649417 482694509 694312104 729252542 809549841 585000394 914438327 502401675 889719702 464313123 654554908 940688474 955091742 810799543 890413796 413581195 991387546 769395841 929141796 150993592 646260619 151853186 446997169 507230128 886208061 319260355 916949038 485625996 894143171 654773685 697507785 179951955 664702392 780315220 844162211 636999860 642716242 526684282 868929529 685167043 896038373 548860419 602075664 352461565 638746439 826930801 965676225 85512549 551966726 279366506 389033501 56035462 643405804 559275833 631201268 831700527 998716613 282106176 580549700 830108365 993307470 868997722 902265345 657549718 848723779 559050958 817247035 865378940 986758158 668246346 747983386 399202012 796244886 13171515 181417299 862767771 986750316 683229016 772147901 344071983 596868177 184774980 828583305 425580207 587040749 567543467 962935736 832691009 919655052 590232416 796179687 935075104 975078276 512992166 990917948 127724673 762096292 394727896 756137855 77799536 794657346 685094819 889627736 240460501 617734580 941589615 982894364 161948600 313345011 478568937 818051938 973377774 981139548 803765026 862553808 149391051 194209757 542917154 990708824 279140887 944267737 479283328 859192561 327340119 480431567 193022259 691588398 295235612 355574313 744942902 960583163 26361239 866217826 451309786 757347143 981563188 997133251 111902299 605105117 222682142 999132353 496168322 741110847 468765889 653939485 738871518 816494310 490686558 942439042 863580761 973891145 443258144 730193132 277945365 326831051 791592620 843180608 701017327 790242410 474180030 490086902 431159103 509389643 870908665 902432903 907731925 985170522 311499692 780232472 428108515 754492474 895894325 934241340 771138381 822319530 490594805 734700567 690483534 814977191 527901186 826850434 697228229 905068123 811942971 814678357 833832865 908053084 109914792 510213614 803137559 894822191 13606861 693453976 468019912 742781586 693617057 899528788 28656365 282944619 974457468 993216743 377348763 602151904 401237706 439617532 768812666 936431272 741121204 958207512 603393679 938749308 377500589 503139025 509654764 599228667 315450661 549990671 902532557 967199334 481749343 984106299 857274201 941766224 366633512 957490483 874511274 900589728 856550544 881653776 277662296 704357837 622636801 873109220 698641018 996002927 481739133 645643537 354487881 858777836 277487434 612797915 567530821 617652178 591575277 651547382 167716764 459751613 415934453 751400299 146966073 182616916 112447043 404161426 643753213 937581491 228399816 532400316 371433130 517235406 877412486 990139716 657045167 670352710 263265817 281248707 318651522 646315514 953096042 982745494 484507686 563058593 499514394 997459528 98262514 872501714 151657643 608809720 639056100 823789587 428961585 934462028 437352072 546547009 747558110 926533098 619304838 943023654 528618339 809385574 451550706 906004695 213034655 590169583 503958450 675269065 980414115 983612440 330656076 948643436 37867922 349009308 320954464 486147499 783994904 836988671 676066337 796192413 848820880 984335092 282703600 335771834 127988211 806755845 163646545 588165727 332081069 767585522 117372272 451478770 124975744 619291172 169859452 456188351 406277596 812753193 690908365 790138751 575612973 832452187 741377270 897252228 105614369 819006543 358979236 765726855 410407198 412505768 363232988 603032049 699842769 800579612 735642752 762418697 758712627 763174272 816532387 843439080 654595668 979522034 706666753 761133726 630695674 861592707 133689811 659627207 953739087 994150480 991559921 992401604 473459325 762503672 100659557 684486825 102149697 784879176 125074191 159369608 384885671 454592969 238984432 341697599 533143351 636949610 740270030 998378001 974080373 984169762 760543152 857439595 583857119 685114944 661959544 806846963 282992982 852506568 112664439 380879266 383436272 732803799 875998102 928738110 480252366 985427984 281977267 901532099 464677565 697529618 408566941 663260785 579647774 609410780 458575293 577349416 327202977 972411201 300405259 904428107 258615685 465640547 739116323 851971209 874412368 921406367 346404639 838858679 957192480 970203735 621048190 888060089 386175529 982052212 118317789 521272997 153632527 407244411 46371162 421702296 299174685 458955125 759915492 775281184 564972288 589612838 936634071 975330217 862122089 985240538 973634383 978707679 320955656 812568102 72646953 451472210 782718224 827777611 498259709 966657415 676715189 925523439 790894298 874372870 513116936 727050255 318412797 676037743 783294701 996445909 978812855 990410207 938919866 958425113 988165878 989703716 265233106 412940733 615393067 871610800 460855102 969448410 921580062 949758864 549946071 881637418 646133844 955227396 933405772 984481689 197495570 894868889 230298549 421936788 647796358 823963706 178525246 381632468 120171015 617717445 295232519 965097358 513295308 877279499 626814785 737432213 915183910 945533718 854999077 938378001 844623692 896951982 728429274 888404913 285072157 564556784 652537108 703850388 183240470 757913661 860358189 870803111 257020818 476520744 863462405 907139417 88313662 732231764 809197021 821878077 526189225 593358440 367466269 704005687 810042135 836944537 586955603 991595751 99011537 349977129 447583796 809306852 140992531 887434229 21214627 345139586 307817976 825449177 247424342 623941450 234292145 568340374 727470210 727675842 453631292 656909912 266714522 545180297 730058648 951544569 486603301 608931440 937758186 959161507 569966791 873797480 919780788 929313974 831094363 852651518 998450193 998685885 242539302 665079968 236851848 264270348 870757438 972810895 891250934 954804799 275781685 382240207 243108046 447742955 947376945 948714719 84243717 213441823 996760250 999881173 61287947 68372652 228622681 861365069 837413795 998462499 99695857 299460857 197482358 871433567 172647851 302754761 482084747 797731125 706615610 896894771 446791685 921358488 799095916 901231270 55732278 734487049 441917577 863201277 747795144 932131170 66558039 273204701 392874355 689632290 979583095 982989347 134885287 557385624 604572074 628351789 172344758 985075518 199616980 467938942 995606757 998146474 955369050 967704358 23980555 590798440 624487448 865320992 475131215 707878011 856330704 891504319 376239460 430096216 363012177 383414930 135361471 410544256 351166854 590602310 702612525 768063532 501039154 830967398 637083754 908034858 544250785 859960682 248421658 286838732 885165808 958183200 756921736 989858687 376783831 847171868 791336435 955669938 334949737 772385810 489998603 666735774 554183915 807910342 845943590 872863498 601398533 732876337 364399710 635645094 214713906 295851753 88971497 935641389 508740443 772207040 149443421 627723487 917827341 920244053 681422933 708542141 807595215 836361075 898669324 973501936 905112418 994745447 618671583 826811823 521952619 618255119 973124727 987957209 990239193 991938257 524962843 783173712 936794114 951655772 231942306 898943004 331200001 799206211 446717477 543226549 997629557 998551303 249852233 604688063 418108446 449929112 35300169 78412425 893748553 932420637 779301164 823239349 102612268 384400181 871828579 946667715 870928115 932205742 793931779 934557092 311190354 321174331 273760594 597125521 548715469 866880636 855101189 912371159 219707825 761468611 755884458 896701222 853358172 894421222 568954134 692358073 915491347 988360748 929843648 977601586 635322702 906877266 675104382 803516496 19888721 227124157 417090411 675820443 296747963 740237992 886690453 976681698 651722636 669888102 500590509 698743951 825296981 995385923 298263948 614550716 113616655 572266820 200383336 369006338 709417355 992255602 285233064 334746098 327208558 535550451 812644041 887427393 934575763 976552109 812494183 936551890 97007040 253003245 11855353 945934753 751721986 958150251 454932049 915101453 845205494 941096826 736542221 930422520 232425667 562184854 733140019 824080639 261378005 981253411 98018936 825098687 649001459 885936416 839292067 958833089 77267002 128091826 10398057 755858122 668888092 792474694 269492149 624449630 921091036 978195488 620599599 908536566 731724002 868698481 94467550 806873198 627372039 854804327 916525673 998437039 270554213 282550263 441329914 910289001 359478225 902986686 658744408 902402466 427514001 897285045 194828099 888237421 66674766 392852735 334574903 739143456 681141364 737780265 227727589 770166214 668965814 754434712 321761255 958272683 864566652 957260217 799273958 961606846 551442316 583812242 491777439 661156138 906521966 906654404 624887980 965150079 84660954 137138560 621550895 780317532 520324386 540993296 954729694 993885811 292420428 512891282 699269455 988375295 457498074 862619216 695607532 791750860 27448715 962703989 785978065 921881996 888981954 969176010 327552284 884376961 83645298 261462108 435448339 626603803 833306896 942636322 749866567 841586506 257562680 282116848 211330432 836260508 768852865 907015937 782784775 997479516 543966716 989001028 445096280 513783056 808525199 981889335 553841688 683679330 869617785 977257442 652060286 654543794 643970069 859265193 325815182 419304783 729044826 962117792 943332266 959948574 685919529 966165393 652723380 952366396 108135225 155087194 758378978 823291538 18805809 28455478 593373647 899799141 281143144 880230249 80189910 955367540 579496719 707272983 762087604 783074827 867063352 907167623 706916404 759446212 569515537 874312717 861948244 919082333 246819937 928317702 64269198 484258679 631472515 952996390 922409704 983458999 401740255 873271014 142859085 442085083 558693603 893936232 822453569 902552307 501147577 767822122 851512135 852411641 575029092 799242540 167785133 927496224 998389105 999603921 533500766 958814904 936685012 977038652 867094231 934913546 696333202 750667701 280382756 300034521 271956862 840909986 705460330 953241369 474513817 832490703 403671194 763914607 42054482 813851694 230593255 607698146 989476546 992111232 90970640 569561229 273236368 989039619 770696759 897508425 457456433 783629147 741680236 856373540 395149168 853785605 256182416 390730348 727265266 974148457 135513474 376499213 579190139 884138695 63631359 358703746 508986434 852534161 998600975 999823056 301488747 463208972 393046032 426463399 137967433 168243174 421738102 660835343 278520774 519739243 259933797 853084749 768461672 808824829 978777440 997976020 308855978 490074963 918485688 952689194 92831153 295230687 772710383 923581984 656883033 794093895 113660949 230138043 661119908 763283018 998956586 999406086 861410957 886366764 551575129 587214760 403867433 783033428 852283531 900619589 611659510 639008298 375475748 453619600 653814801 720995109 251477283 892295179 350058415 703289498 911963946 990131667 581525266 645860900 906296301 926111583 100749063 404549435 14184027 177682255 899877009 948399961 501219624 958494264 537940787 975567512 184544274 726686860 382917305 598098329 147380052 486130430 642735491 772916664 486175994 564513889 513798146 544216578 375039293 438416982 276989944 960647019 5549233 616117389 895101245 942533201 584577751 950715233 227873690 584990059 583166326 755115995 411132244 876344624 345683468 937047331 182303648 855002999 158226795 593133528 211427404 358689576 560950143 690306402 636617519 779809196 521868025 685699751 127642789 852825211 855859899 876844794 435800548 924115740 717039982 929352111 992332161 995869947 178676093 577544243 328266153 463415557 652666569 688906857 929230610 942392431 65825163 660904285 89534231 434840592 214548187 722894979 32045761 404716371 129795397 509882823 265895371 920680142 65393999 541238466 558220256 807815239 67970567 234660379 355713122 918028747 133252827 869312902 836865209 942713584 891845579 951441174 828782535 939280312 373315849 795116903 594853485 918988398 51787922 931344361 843632379 847258022 356006337 653842965 472581822 563741758 114204838 461566862 621980416 906243090 939173941 987832872 900092613 947847521 530204721 998612098 525061814 828392968 534997596 765147646 868225696 983148653 469112875 773434215 828582896 930589764 269654851 891210310 969890790 996742203 828865037 888860250 625656264 647941695 506787956 637986358 509147876 713827325 334383188 671544905 968450554 971818986 108020620 975350628 18317471 415596179 256503013 620234229 170762576 945100535 676118776 752053696 889729324 959409889 480970067 595786963 166129934 993828635 765868642 979371127 632489913 993299213 47500925 426359412 677088751 880172034 786790258 870758811 852429625 995056680 998041888 998425929 867088603 875034197 953369811 964393117 682985806 724019629 751392274 781321675 795575342 824144408 712048312 764682811 367687943 951461154 728308353 895390609 956015782 964487983 940671274 972824659 802573615 989126964 213776813 273481027 186586706 634467630 678176635 749164902 126727395 378031792 661708400 821763886 556434141 933411592 678803354 770108876 339894629 553190355 58901462 659710562 510640497 727684392 564373712 647686468 608576684 639275774 326346128 902983413 88989362 819747379 992903874 994586960 62874077 369340498 410273182 818805916 379122513 829822464 414498915 951102238 616735944 800634832 481243064 995157806 220052483 470744419 16842837 417531232 532815244 914202716 812941479 838988858 70852644 751089984 805894704 992816874 87010607 516072085 600190612 750840891 362036492 386355333 712379253 912706204 175278372 566717030 698359810 867760571 668006565 962452068 969583646 981618892 821397885 959415422 411077231 719674451 55472397 630430560 520106696 875143327 23532365 100079736 484888793 745275988 556220728 837964289 128264413 187413833 649506315 785905202 968517145 996086078 956467729 960731004 743252153 817769372 451811325 465492116 484225777 894135112 742550349 859705446 516967709 768449135 273430359 934327700 859141676 900794550 204330490 963968432 212024511 851067911 284254793 297308044 558952106 799774831 335009395 347534911 828442208 853149915 122275882 670624984 550934063 681585777 29115339 364143791 318166861 731760083 663511173 879596242 440778833 903913256 163882294 577756032 986437203 997382322 841504122 912569041 518456956 637323041 907236538 956465559 738398645 935422777 828699743 908726784 713544905 882662641 67811106 868506918 926182552 963612665 529147226 964067641 675906032 876650021 28427285 938958055 590005951 912426566 861768005 950479040 861433207 981027849 502625847 625556571 694326935 981513791 60196675 702285910 433869887 531935509 542925659 611937718 420388663 542276799 554588746 719478206 614055367 803824466 628577030 654532162 589939774 980073745 81695965 592957098 616655375 712148426 330732717 792173805 870947486 937445090 829996601 847679691 462609087 843426238 538344270 686795105 324882196 488564795 805228047 955737563 33405450 748248161 995454044 996528386 69923597 286951015 384448595 644390269 77772948 84113685 920219823 956044418 396756611 795831365 943186616 999477884 855653569 971173627 668912561 830474698 84703353 946007665 193919247 498140987 617121572 928123767 369425461 755039280 887518249 941220356 902316036 916096606 228536147 700140050 655812015 721269288 805197156 911221008 482785349 501024030 181392690 774984368 290608519 647422757 166046366 608834305 22297892 908282503 372634643 811752737 174335810 286387273 316105284 967431373 278694556 626931847 521730998 573372019 160772783 269124020 320841869 981509872 385830868 958853234 414243475 705398614 802689842 842435865 758361822 865137207 604233781 766730369 724608854 931453005 701516008 751730037 835071718 861587878 612197681 918177491 509530337 863741698 723643834 846521952 666416776 988751459 168805553 203769443 902352781 979257312 651642168 775125883 430725559 444882999 820652189 962435772 902290272 985602933 85592670 336175490 899456288 941793120 335149301 414218092 737166256 960036854 832478827 987283770 668082040 828331332 570140013 833887678 469645050 716242954 214108783 427643246 885844991 991572613 440364389 845434585 570567059 819010309 318001798 364667152 893757610 987715025 154346762 915217295 289716173 871315523 878131368 963936847 729431746 847974662 961174928 976797584 673693735 963770772 834133605 997942622 464704567 995336060 420978750 471636780 264957485 623141482 393442201 935221718 37674120 655130117 462920443 946259863 850387919 983119591 512808382 626857678 315599320 327215529 186892004 524053370 967025032 982923933 541696920 772212393 748650487 917193425 683640300 805672417 463939934 550198348 513121316 942812704 412882597 482332674 675880443 767300309 429586332 537470886 555289033 626834414 572637929 627280208 634021867 925492027 103447582 188651023 396591165 893626642 943550661 993324945 742363185 944203603 909847455 985802220 208386750 625090723 531783465 614375746 849840373 977921023 614143163 984799134 526497266 561088506 968022336 999716220 701606706 866406951 421276269 841459726 267248793 630328385 727244 823681892 693360570 904233768 314566079 857323896 698928437 705972081 58370004 988267951 733894377 896219682 754587483 925458883 981415573 981813868 734901588 798168363 691844713 978756000 721183772 751495767 767883507 787731057 110990802 870360790 829607623 934980734 145987931 967788137 479571168 530400689 710019459 741811624 484547970 839372251 283560997 833754817 603258802 761357723 745168379 828136858 239268219 431282999 693210824 928778091 697009050 749701734 648462302 908378530 625058581 704151022 291797928 797779878 797539480 858739645 101655674 463483547 987191593 990370971 920893736 962286147 672235396 967371614 849192551 912472321 966912970 981228482 695916071 985350424 512150302 822937838 580036282 817408256 264915263 894832486 422782552 671603258 957756244 986182315 592132491 892939972 601395969 864924211 37634769 924052451 784872613 880488191 442832613 495902723 603560294 951945178 387526775 729771400 934994790 997830691 791701052 963986179 961570640 976631106 954433421 991289434 468299970 631231341 383091507 592578554 89285368 595936800 837663814 870287574 615940128 703241958 446355991 659752164 136193305 623228864 830391717 948411241 593619279 731628504 438611565 956488009 987615075 993787017 277175184 686864667 107799353 214107436 700142982 994395277 691813141 986602208 744525650 820140738 38326982 736331239 690196896 696131755 377957115 652832905 201669037 961975035 653893392 713498004 144174764 749518893 715794057 823492577 706363595 772770038 751429293 847493019 914655720 967862287 442390693 889912537 264413396 565171476 638244170 976818769 386978180 920350257 653359377 731051464 425189125 476781274 193856153 771473381 299080347 850054853 868022165 908170847 966657078 975208676 622526112 889794341 773414891 924292939 362858869 704304811 114278551 672739582 143601751 688719760 956692023 990541311 867847020 870058853 977754416 987558799 840706322 976556361 444775921 915841205 353939341 413182110 434953101 976908719 266573233 374324124 910046499 910694746 120853374 271501507 407782894 814516147 713811268 995261638 861303111 865203257 213109552 762184356 37015597 196156685 374067919 909854516 315649880 755975241 842865899 908305964 950842404 998505339 360765958 888757030 249512248 723517346 176101170 944481898 456550864 594052913 739784174 890898388 633794392 936315005 979172130 983788816 836053400 863719413 980591529 999194061 990176440 995648206 83759827 212734683 43710422 735536209 143351966 827071101 443835896 836173387 650607405 905990862 189275111 668065552 708680930 713714894 283434045 961899973 564459396 579925815 67372069 719081536 744143715 768506966 325576490 403084264 325916216 966805482 751262288 956950387 544593129 985304527 847340301 935716400 433815584 991043749 143251740 253541083 575488494 980683917 67422683 541322089 523905838 686731280 724610777 934637771 937027545 949781138 692047829 799196089 35188265 796286279 442823987 670388638 100471011 419192480 802571025 891076157 300675587 649933060 375172660 433036246 688899776 738416367 644061530 834901600 989238039 996031809 18236065 23995636 868321536 879237707 38939462 264137570 15308225 318445186 125833316 333286586 731732541 752730642 245399344 912386664 750600482 772291708 228489892 910428314 270560365 655776952 97632264 666885935 705674050 858282763 111216260 606030599 967213145 985786132 554890381 710678793 148724439 307005141 559047326 756964063 329528125 793659839 673097996 682909245 267495108 753004324 560411112 665478254 90057571 560351236 380183999 589260563 886958141 993601941 963700157 995150955 384446297 962988146 645387794 929018113 864806024 869640635 114827733 932439183 694004791 863769528 933732545 973693439 470801884 570208779 868867858 960290433 64189819 745845710 852735074 883030971 633634648 984524174 623817819 685320675 677140 689423680 821091665 860719200 747556866 875321753 692610408 745968523 730948301 778982308 81677430 618964728 204147458 284314483 882673316 938923148 240346828 322909441 570599694 807369601 359358704 470358301 793184382 984586528 264098025 975564281 659825338 869637506 523352847 786037804 43708077 891410120 408482245 941403164 150767781 978660572 874392638 882787302 624534967 697306669 429597681 841319370 621849939 732146416 583495598 742310084 765473331 803258110 396432814 506787720 389038537 653860413 891401444 988632116 564517015 619546397 260029827 697774005 699094188 891790310 37761454 675628264 798804325 949586918 994557373 994774020 93590202 399852745 652615099 661812145 93358088 99746184 809896976 902241105 149135208 518165024 280706164 881037957 849431738 905742837 840343320 960158161 916615285 934554904 232067635 694834405 86864174 224184501 919146558 972460489 278873158 868450064 594322441 605300264 449251941 555742697 361107796 952603804 521650087 875479876 936223157 961974777 621705857 751127663 333728586 744231651 789224736 872148265 210006662 442565224 537635741 970842793 331355517 491388411 8107670 573259058 796651156 800342923 921365498 928471577 204702343 297065433 511985021 752009745 693063548 776052614 270613649 313163183 567972877 759712048 54746991 194018652 757129328 894555909 781684988 972750469 683154442 850759068 693437392 924814611 305088914 451090948 454977119 649899039 866690508 905587578 953274409 989392492 317093246 913731720 481667771 894616923 538161951 588974267 934241703 945161603 965698595 968290359 439394811 982704316 315962735 485443818 534424593 712722972 37874875 877930599 672321346 826436082 313697850 954334505 663628264 897615784 933208099 990801583 430011265 492935882 502417486 733065678 765155248 972324261 111316180 333698111 323265185 924670315 236124095 667896019 688991048 945697406 297198770 850352112 853227306 942207373 950229277 956569205 238582826 800087663 670886951 871285749 298278423 901888019 977464895 989242707 964440137 998433268 520914108 636153009 839690613 879965820 844726809 868234058 262903835 481697170 75561546 790799469 862080560 894447776 735004231 738254162 335381901 848031108 820267424 825458963 246041995 898804259 235446794 663277069 991244920 995742197 737072627 869834938 227338336 344992093 650767698 930068437 281422435 602841228 822507228 968067007 123416274 358950121 883647139 937543919 667581449 995395934 515467518 606039963 559566076 705008774 967518989 989989729 285665799 318268280 903495023 973436278 229980198 392399156 183510715 956915258 560987613 956036821 876319786 884313398 914738052 927748851 723899155 764320451 758278200 936158888 663170781 786074154 980798099 999654120 65882805 214898395 487071019 569852468 452862026 597736394 527624295 714459420 949889018 965035181 254307252 519800931 196821739 495172232 945517955 996323637 308928295 315699167 144940946 274110775 508354301 982926267 869274731 935654894 463015211 878257119 650356842 796046849 771590543 973046772 890255031 937367876 195932843 467484109 467368750 634895791 276077381 487594399 777029717 956702984 845890829 965540048 632045356 935618801 922451029 925795621 421611460 917671278 79782961 476538510 546630440 788847398 58832165 956789557 310913150 979213420 958709386 983550904 614169683 843703174 261822396 269656867 484561243 960201623 37677798 301180336 748428628 853945898 672994344 925321300 734949964 909839725 452378377 828711918 156461984 967696567 212752076 764968823 767561419 842293857 115130420 367310811 566183593 954346286 655539868 745927720 768021936 864324711 220194824 331294111 28520137 673684216 91274522 597819340 477499095 489869329 415066271 916277524 901822884 983679305 914529328 953863087 140522166 482839588 412532646 913233653 710001484 938409583 565403725 598563309 176418047 528754655 227434905 877844204 934717755 976743991 133219447 506971935 978054572 982133100 168755719 918872915 955306099 968162971 407631908 940458253 353541245 531497572 129104299 353293927 963487370 974128698 407487804 941628297 215377713 691266530 345641371 640443019 844724918 960879116 748650064 991499640 238258270 932261547 187006809 584811690 132372723 648230014 533973856 572011878 142347581 315188669 921006460 926963741 234153552 665248659 292450326 707824548 314695296 330691454 134289724 954969727 742568640 817336811 88753183 230735074 921775145 951623931 50583939 658676295 409334036 665651000 386234504 711695627 518967015 976918776 514380236 782751037 567736543 784473812 187148381 859921046 45481267 221386904 273599143 841116121 283284380 814333718 324007638 386316475 712152593 792861577 154163951 289615700 566896522 890127779 929812783 934327359 648322021 973920564 57812046 750118602 693480805 900420316 691683680 969366979 529251314 764187940 695995038 699891476 702606131 757302110 934317671 983993331 406963259 969757327 463990384 649126603 485817746 530590243 548716263 929890831 118389210 312298058 935415370 983305038 594852417 652759213 101246599 265980405 36375160 260156421 922968532 946860783 680239423 919745141 379444933 452733206 197056029 218423610 776027860 832686857 805114641 823076735 245815104 896844809 50962508 398200496 123827151 633950666 378367413 734226779 766908667 952163024 998381939 999502448 359825845 466290298 990908426 997148331 255689205 555685253 815922955 984893513 89071058 707056399 636812370 821119922 197320604 407470786 673682170 841568513 770850953 877054700 956569090 977710109 880715545 892196609 181838625 561440398 162451873 828063135 817287218 971615888 366235207 640528701 476294348 580833505 432969601 989882332 976919946 985524374 295164545 936239339 297392988 678237540 392982192 712884014 836965067 850445832 500607620 588808576 969644047 989048801 283429631 511548486 763548064 943018588 468823709 563356099 584468401 629083956 452387344 583165142 966766527 995497378 520720649 795186640 627128823 780890262 227245479 837158175 350091884 692694101 153435734 326924962 194829621 318473331 884613268 968374789 716540713 986310828 871077141 945813777 334942758 651184961 627288997 967288991 99805648 331036695 839819808 840295662 1036365 132476454 667111150 730121301 211454772 408760691 606172167 954077372 444375006 659691696 297314527 472980826 140554652 779580597 37953031 44122062 496945275 523928675 335453980 574842289 881417970 991063141 821463904 971385595 269657253 406062726 110817217 626624061 335622014 888211162 14806115 481061782 995602412 997909704 882398967 953712257 896672540 948482756 533143291 662393216 800040438 972505687 780336566 950477593 791975765 913524454 441405942 495711149 913557143 957697547 728087327 811659265 371050258 728671403 986683746 997009677 95507267 516290091 472694343 623472161 357842272 694886540 528550392 716163258 664064407 839181674 404973194 591994502 205343429 787927608 403713881 813828541 454589967 468856620 621786713 622384580 5783644 794672526 602602551 812544817 229577828 237815024 720026315 982693743 288762202 439102982 336622312 658984636 512020937 957513132 221300935 620707048 288904330 851963115 873474525 883408951 492237905 912761197 331267073 570250207 286491513 301692715 316578592 472974205 694347020 935959921 959855778 962503972 276641678 278432557 312878124 735781058 716357455 789714305 523572655 810874125 783474350 856742577 275832072 959322316 219785953 239240423 848997870 930024314 873611143 934126433 464773592 842188675 764103401 930441698 997503706 999180523 8474955 876304094 694449821 830509148 916485673 971348172 111703216 669595914 620428923 903216553 143369045 814801005 567604056 783360790 479026266 997985224 201388183 544728641 454970882 489407186 147666965 272297962 512662352 581699467 718391235 791876514 499134495 859697289 386440251 985968726 513740386 587355481 34103352 120978639 987172662 998776310 752737431 825970470 501353568 511880479 491254720 768669625 313638629 796487127 632660630 745216678 721907963 819329736 163469703 561654765 978174742 985062702 524399429 998832026 454900996 497541697 531508225 876459170 689891263 703284646 410402644 649850783 946561922 954932463 188165149 305822195 364071535 725347435 968458087 969348291 923413373 968513901 389764638 583303576 467182952 726695996 550960625 885556687 869052857 879958786 824595379 950348306 200433364 855662546 533139605 751989656 835054959 851855843 720531669 989279981 164719557 943057562 468053762 670237739 20553009 839261644 102386512 722531187 106907133 668212182 672893653 891312384 861772122 866884842 111202608 664443186 96834536 265263797 440057458 753568760 194724289 365210492 454930764 947416355 219311041 906767791 571808627 575185096 349021252 965300925 191496956 447372440 886360174 995736625 473367312 742555097 506993187 857897708 301896108 650470657 144967584 427667990 161456586 629713638 410397999 730422452 151663547 303061803 68241204 666334645 708127923 988361443 602821410 930665537 763525553 888379544 730695836 969198464 955985236 960976288 795667390 996175436 810194833 976304646 554886704 969672437 648569581 674577490 599101474 689819180 441952187 809699421 711117717 740209404 309711856 737730446 518266527 571574744 521673880 986606604 626977795 932605439 377375830 778443696 99442123 471756272 100366671 872519092 491511968 805898363 179048646 711276186 482204130 910372644 163927297 409611667 373863459 639749993 530309883 928516031 821259132 832228540 562205892 618354626 725489726 929733909 125364346 928510932 277966071 500563149 186513697 411231908 382112405 489993009 853976111 886080869 806889620 939087402 440821235 481034271 571994451 878600143 868462813 973513094 989922729 998597373 414091891 785310211 546842039 658878777 952421791 979065686 150259187 430662596 100116012 626285532 704933419 800092287 185388605 378318659 930644858 944893719 121912974 667107412 28533538 817382931 807558290 853378972 709477452 904580443 369942117 905012223 485650102 963330842 329626930 555006589 985920084 989625378 386068427 779632698 874612889 927350402 417659501 511569088 568348557 945143604 572416690 891372186 659639692 765345404 560133042 964376005 351523142 699839792 441064694 601527330 206678989 255863990 90487728 678087325 155212338 562694462 343487253 427588749 444286767 457382343 958106277 963355933 517357243 910022809 320229358 627545416 988919042 989962035 414855722 859524770 686672220 958832278 801461652 895994653 921808005 973370346 153504735 690162720 353711352 998829901 293702319 656415396 354807557 699235843 772158906 827108121 361055142 655482771 911124656 947376467 974162507 976804165 190881571 352529854 929898176 940818885 887825544 926800175 126000266 429537822 106546828 224986085 324708902 966059524 563807861 989399284 888454873 990053862 126204674 258051365 365046635 754059953 488086267 969141725 142603461 718611521 322283447 608194634 752304723 801161808 335622214 494004332 508241629 943272338 734156119 796292409 927342320 972921003 129313743 282741614 501793583 911299701 513657531 526993768 728548131 868661088 493694701 509663194 856314598 912532105 312898558 422705694 765022439 823972672 596989867 966919472 477572339 878401742 842698604 897459951 729063810 758253760 695823746 699430057 307626194 501522915 50713019 862832490 782639274 935632768 485776844 604428046 877118094 964900899 450807396 889674249 263187301 958941574 574331078 653914143 550518915 793525074 464104288 612246446 534366872 875232401 980419077 984512184 755775062 858283068 824542134 950473537 549515987 731835832 109094772 650262178 618453183 756931909 449532983 915420843 536890576 809999728 856438003 868052099 680491240 896569865 804230936 891051946 554158493 587668646 384519828 829287234 655790668 660043185 716166539 873469232 581313075 611097727 285353635 522588157 954173042 977940384 388486799 839910899 549003121 814033569 308335571 451489529 235541472 875749626 14480602 772714806 90624751 790832851 905732807 991778948 479971754 857382930 596603232 625419764 607955169 996611834 172308305 361809802 536260732 651422521 421514188 522245473 993443844 996187540 754350198 888039485 983854722 998244034 374976876 849489637 766561860 767289681 374712939 858407315 874977979 996841893 395979963 415588928 241917076 745846965 303112782 378689749 596292939 958850267 480293144 853261465 852156153 856288757 320631365 372954031 152062441 961652267 293114864 383596200 166583807 545876679 854687274 995038127 949033743 966051863 65791873 107941017 113995963 782674200 269828772 615588070 689856959 816056641 290131101 459489895 11234220 254774417 670254205 943873614 152352698 781955574 582722716 850181739 569352759 786432308 906538723 908544259 494259674 645323159 852797179 993412666 488654608 789761376 947429924 956369515 230886011 336534323 521747436 721439459 238484231 960454575 746313316 807535303 767560220 851162185 839737552 889328214 268201909 721670284 854306999 969683441 358734479 499838568 162114153 193656754 642142510 694110074 653683517 680643743 291544866 849545457 395417500 515062794 663668217 743768427 854161460 887294850 776673577 985759877 689588125 936635629 853115544 933818408 742225030 909240058 5570500 878387871 513195641 965548226 412200067 523064483 683448837 785168854 844125548 954654113 879608741 975240381 431236469 454415175 142694563 213645291 459461343 585116968 309364759 823031945 332611086 460661976 863128512 917076703 283981430 848343003 690000541 869206118 363494106 547178242 860863807 980852839 576029193 639977111 664404517 757310693 549988412 603638461 830602750 857566761 676429265 708186645 142324637 592603973 92112448 409634903 594167983 638398673 933427358 945284771 281523379 582018353 875723987 999210238 557115231 920774368 705758878 994248992 703434950 733806553 269532871 899938219 287753329 671700092 570143650 822521255 847920710 907144195 906603186 932276427 134902156 511838961 142815515 786134365 328372080 335213171 699643654 851176811 809432104 818287549 710867985 758229356 754288853 994190392 422693780 491302193 487155992 772286032 957717249 977191156 113680895 277042248 627333482 938141428 748399937 955917227 736529996 781762188 587152542 709825358 851742061 989073053 804572298 968812707 212828926 962635157 842192324 951429177 154401429 564298025 902182325 973221477 688514085 998893834 529274854 953908160 603131715 823298599 449145103 891278677 793281166 873430344 679335396 956182171 664762578 921830510 661488844 971926686 153507270 217276055 331468986 408426788 122694687 790627304 806319150 865579134 618467676 826379237 79673476 389293025 319405123 855034911 8655532 126601213 339722497 555953066 750779638 774308364 361646610 412276642 973066768 997714669 917566226 921736600 754733961 970733867 614509922 835360549 324457532 324888908 898837172 964295252 115611968 344607826 244294975 841969168 833150340 849505545 440890732 833484300 376008655 843308016 637607249 952315665 177461466 944035275 492621732 855932067 338601135 408754233 959659073 968970457 293839976 493929869 617450931 734487437 25064161 509664640 379406075 415601105 731460867 970276459 463179074 771679264 985646475 996764599 760750359 918757174 29868341 459832803 422250200 959455656 395185926 418523217 87963647 245813723 649194113 951421260 790803773 941703192 382988770 971319814 767101397 972373751 485203397 549119421 283015160 317023594 335725431 536366213 149442813 176525336 507177432 828481791 166704304 884888882 119843611 985111659 500404442 669556036 719746575 876554167 128534888 797555481 850017869 887007219 75840110 211050246 232641004 486582640 231820564 544702723 817967720 927714607 686971784 926950054 329789672 622861015 517961789 916811975 230540138 533605534 2766888 106809494 140312950 685340468 303189559 620421852 796997743 972490420 102848807 752012985 521862109 700903421 932875725 996471110 594427929 885128263 806008931 925049927 941160033 967806774 421502735 518140170 900040454 904303461 566384751 933748009 147105395 720979670 907299871 914213513 399512404 979779050 165180241 204402982 932064786 950263741 854077457 974560433 59764313 389088709 782951565 948404427 887041999 976690038 696048083 973253790 678345846 812907807 133517334 772693436 609359982 839005256 783958871 863586390 639448515 871282431 627856618 978811720 518337505 736962154 472942841 693420404 120860506 496488723 298317458 488051954 935011964 943242453 286428202 357894667 101513681 584745152 2509673 337637040 425273937 973539839 878154985 897022227 353379723 873320638 775491787 974517919 229164336 719292563 446917591 464036122 301741553 628017963 661752031 839991320 59841541 602873010 250621619 804086726 511251734 726115106 888433872 900982042 874138019 897430599 793102529 943798640 513706334 923754160 933495694 942437095 76661253 818904843 710451602 775896752 562540968 690783893 962801326 978389893 216118332 711938359 415345950 735444152 95473801 961993219 96466955 988686120 270750544 525714717 241566474 619465243 727239364 803406088 179026740 641519457 332223032 912081908 611028094 805107756 749639443 865956917 8088083 55875050 677239054 856334857 308711315 362689019 53498484 170441925 216334299 868746988 54966220 303917932 39106010 695670586 347277695 390612316 941900636 976874378 481744355 986329387 299808709 582112916 854853927 973862299 153309347 665071703 247140022 842012610 460354032 561524195 585156887 944555990 762846270 889484449 947007102 970825123 887208794 982445097 68286244 487680188 378673260 923322191 889850936 932947139 159247623 785557995 109497792 403824543 564851563 920879087 183665542 758450499 251734239 493918112 856243973 919240458 822888867 906767576 455579870 906384599 981136130 982722495 285775983 493373631 404678396 583854475 628303489 865296340 165875602 666925145 920929573 988452519 927394340 949894221 988259856 993408589 805705573 890235931 931796846 980628086 661625595 995118976 503232507 794896920 704599305 725111640 985774541 992738636 786847707 920488108 773918972 852097314 150310880 679292669 679917878 936046099 129532487 944140100 46385358 958014533 703465565 899202918 970665619 997090684 738243425 824392093 669601463 802114146 462229772 766551982 566018581 566461006 519964625 891136455 932894381 967255231 528521992 552915346 660826210 709713523 144605613 354301218 120416388 646581460 575385786 886390384 116625625 208972740 909866037 994398818 243986770 473736804 401917432 518692537 797604159 902563840 269499203 309933822 130954439 193336347 883452759 891885974 817061324 904562443 536916379 884636611 678620076 735101900 609204755 772624472 30058165 213859162 943316996 949742534 973477032 997192973 477413074 606527980 789884789 968754202 51158721 420898001 288746081 514907495 127946907 624355876 193857147 821716759 405741658 851292584 121799324 155194099 924755820 977118649 597451055 855886870 865092592 985867598 107751324 478414826 591056540 661896487 925408829 957246631 2057485 580824547 327873729 889519780 778593830 911663946 313391731 468792113 192412956 770773512 388733143 949889516 807967702 888938225 589929704 638334632 822489787 949424735 910960419 949844639 187305176 379800780 273137252 808180369 969760354 999878520 573788653 647327050 853515313 880487197 822642491 919779701 934886107 977003976 838065198 903710522 422907008 437065720 232923382 527823092 737074992 858919170 821692693 842247572 406394291 934533576 66960053 431000944 723793609 965093513 25894807 123568097 98713029 197238600 399368903 664900838 32277726 569404526 232199761 743406417 356036682 578678688 468908241 482315400 336521132 917419834 458058104 798500688 867619999 942044121 482552733 536675727 906477771 918453978 442148709 449151918 277724543 357329877 13707861 428710751 397161094 740305714 790793446 908520610 197537354 910117045 265569215 630047955 226796332 307264865 986133581 987240934 287152620 897055425 61817429 899243309 844558648 938404111 427647842 975798354 283987972 841074362 179513463 307303296 556782827 920708657 986755689 991062944 889484064 930908836 137343503 722582131 332945769 554410121 898255495 951001003 166215489 358361701 303581144 407803085 875486771 946766480 3675494 801657254 927638725 933856875 510043539 765489054 235501434 829399423 250529788 565031598 374478653 750752896 459235622 953869657 327096823 995614887 265592097 436712012 122543454 381684910 712580105 871180961 806723922 969070287 370750572 804886283 457882931 901157985 120084349 625977588 172018408 734195074 653787149 716484639 638093686 666637170 249412829 867292113 995347287 997577173 418748166 547935951 63171328 133134834 73465289 929992951 131534582 491379303 382493694 493293171 986694708 987860518 976827663 981815735 625637933 854820443 616314165 887118107 103402770 511013620 142869040 899287221 288621806 610949421 584878606 914101614 599824572 937651024 946737493 955653046 289662555 544158642 821053443 978769548 489654811 514488039 237175480 800747868 126223224 171473205 79984310 482960910 419575398 681020311 836597222 979908265 668452933 803058374 243498986 610030440 540080943 948064747 50183502 114890487 5172155 629057700 553989662 828196088 525702121 869427616 880490038 972335742 762556561 763969104 14097153 788847427 412858411 550665273 619280562 811197160 187500851 662739848 58426127 133653549 55672188 648943713 47335095 277639277 446033788 843981068 832015967 892275210 760988358 775617356 662907306 836186958 691035125 973015015 149933326 472586609 273243144 595485838 364138311 765794376 299761913 516608501 116702760 722182383 826213850 900321395 390145155 839157438 435423723 691648960 640523496 742397629 753655397 917384092 55731909 419344392 430252365 692992905 670363356 893201634 717886484 810427466 360826939 982254175 521158206 823061018 525039714 866986035 451790237 691070147 865149996 958894055 347918799 994217199 701272685 798974485 575084118 759146824 655353401 875641319 935850654 945149497 661133938 803601647 92399525 377258225 37368927 977210434 741203037 927875732 968952845 991751262 627627467 983504695 102658938 278938948 717239884 898952068 336111660 603180778 732996480 897748891 617196104 771416535 680090656 816607848 412132107 763126047 49073741 644341927 191742409 262934874 368836188 475458387 61147358 204614448 692611637 879988355 927638334 944638983 550335502 783711331 987881390 998624581 576770315 620592118 284484133 815325659 132828264 310280430 268869856 506158318 384277098 467829858 186983499 733851359 73163469 765058438 86271574 193840110 752581846 773058125 204626530 915755142 5103857 986185188 712689298 986009441 897115666 918061620 886747249 998552425 915384086 930361377 997944616 998953124 914335092 975285141 521999417 647886050 459167435 463705491 918276342 919352166 230776308 690609828 944065344 970681673 852482961 925851708 64719395 400617197 40035517 704055190 687319721 696146608 732728574 805292174 286250204 318348411 248142769 316626462 998481521 998625343 714548747 774522994 862472548 973330113 986249540 991525297 796110842 813937459 778542760 917001315 713437587 845973002 151372441 419835814 101896482 519964156 524822346 811148752 819101710 991134526 755419579 863961606 133791584 451276993 308274714 372864785 567837409 858325096 646237204 888052003 490484847 952843214 90316104 138801445 276834218 546211268 740241963 775501438 486481757 573939998 280302120 445241696 464245618 810480329 809865501 835981158 596617093 694605568 2164219 463449943 878454137 941107092 537065448 875601500 241211740 458189049 903095476 922993464 928223797 974008567 760735975 918763977 362014086 919090130 181155623 850739596 161922742 384934749 476400034 592038023 241107433 843912346 316922871 546873203 330870222 828273992 758996802 775997430 346106410 495712137 985541570 994951776 509777274 679728293 608433021 852119897 530496571 674449468 690377907 809495213 521163373 755933166 832529918 851814782 601454442 985133426 301898940 474710479 243264916 995844240 374167480 637238035 834239890 884550810 248693495 572130008 737505685 981044734 170018086 970308633 152269291 893308393 919696242 958303507 559579883 699069364 724558119 991450492 476923921 885079528 455736071 932761905 45579311 344060176 314854518 613534699 199192743 670462242 857325037 935628149 875028442 973732641 953931135 991364866 818429128 841810305 608242382 750109262 179946000 913105144 450309607 667998235 904723818 921241600 715050071 909924113 209508440 669026492 669866416 834047244 572887399 822676346 951646611 980788459 638095736 724416031 833569428 945502805 720294027 808445576 895866958 923875400 446667004 793307803 839630967 962025896 756856215 946925552 276835140 360270434 489111729 652912089 870861647 944069554 313432615 844502886 27102207 337254520 539327246 645930290 510346542 910774226 151490965 800490654 219040997 383700298 751472799 965699618 500595441 802469448 201525012 467995555 500397483 892473227 407820917 806346320 335619585 981441377 966036845 980748271 908234496 974538539 824394865 987258852 778359200 781609621 608969045 925466462 99121716 361429025 355407374 794661417 972483525 993433393 986865891 997140345 569654165 655074999 975314575 981720317 909575474 939604171 510858999 783813225 959312963 965792694 669096550 976675949 26961166 823386762 42517967 437838193 414055207 835161924 709326264 945858203 926504398 948943979 548727616 953732496 789460560 798471035 938276669 972657663 596201306 850415903 685299826 919759448 206799117 987579687 162030171 200595252 421578401 605070371 811959293 910144320 856816035 921778215 709835503 886937228 609480535 880967021 476728307 588574284 473890614 673327529 91249606 441881516 280043730 766294828 74139937 603683261 177813800 631447860 178799882 189003542 953856383 969845517 158095351 462848123 203818078 378890616 679959407 785219059 824278328 937884599 994144260 994615520 157451113 367785391 701835281 964967181 155510314 695297584 471513049 736145487 1363801 978662702 334873794 432483852 715098523 899533005 85490541 245499486 74865325 660815737 799992112 913661624 930278949 990809802 171355706 372191387 398261197 494671754 504350144 809637904 684318169 950119420 635366427 747872998 819816597 824886666 511551125 576258637 952005719 961644875 330670167 966286328 546221389 611106393 176875063 730634879 308264701 699018404 250115570 455678147 533539289 818095808 820838879 939627117 35965712 688223326 933152072 976042397 513170884 576282722 381907083 911923424 452726893 883365627 573552588 780134481 44975482 944294334 388982813 920548050 220967356 775169303 89632759 392711200 185018587 764068052 332351200 525719130 882308620 964573935 874381145 892181747 156744060 656849527 286126071 570877503 330372636 782564300 264356922 692834877 65367321 747116796 476644440 667383153 973702911 995412346 530511176 745926762 870379707 979263261 808675536 882987759 595665190 973852812 184766664 223120594 715504658 802235251 348039008 783769272 165165361 659075656 407851191 821407152 280806994 305365484 703831771 830523090 64970469 373757927 462724809 620006529 347668045 625466021 392779683 887636906 635423328 738651825 979460232 981145876 231524601 425324728 402032537 532140569 857405040 898832284 149657028 562189742 889131527 964838158 190817803 524997299 167952456 560526922 278334129 425288459 701287512 779571454 932243756 941875029 193996503 835820027 834931281 842986686 611981281 934150529 876864160 973782453 225164061 751734897 159410867 703004898 647142000 943874353 795855586 953178473 317125063 717893047 146278619 782081940 95934929 620485741 977532393 986154592 350820606 962768975 245121258 273868693 766392390 767988123 308722559 687507684 345382575 670437434 47559440 402694167 368180869 580158472 137199273 957979054 188877301 826866835 656101616 764713897 413834529 825529272 221122196 896702943 917560074 993921366 133556640 720301215 917779783 963940898 836825717 909710690 799364539 998022894 223366252 875536702 361508563 759903396 957379965 984768185 852003256 945831656 992001561 994493712 57815937 178807626 656445950 886594357 606480752 736107291 359500242 532141845 915364541 994977423 35096676 208076771 480497816 517466871 82183818 337040050 777922597 874080675 173626148 409687859 777781725 990943036 943377101 963749563 212993978 550680912 117996015 557728235 751160006 965834717 836416255 970802173 605834288 985713309 780402530 830717997 645238985 854470139 209924066 557087519 30151028 632406271 565907275 753920616 976237799 982350564 983071745 991637956 125505562 191182925 961096315 982422744 461927558 682187098 619427863 771868609 144622080 361229026 4843077 595696506 561726712 615257332 196970832 724226820 956611205 972212464 528609070 645438766 357631290 833894403 466630907 976065141 877340723 917495705 430371 49698868 421283471 781569184 701613741 752354738 840080855 934606774 890311978 916729107 831071708 976868723 353334331 469457664 596235150 642545320 350524056 516180048 894845356 963071077 195430081 702303961 84780047 377154593 459306894 601789203 912430696 985631476 393943082 933428972 393181781 612383424 748105166 802915326 428863421 689029088 985762036 994735439 852199784 917414393 571238083 905708210 115038397 707069275 398561674 537607504 276478977 666374708 910928884 933789527 910689288 942435802 774466502 953583593 397021432 797408831 305353445 706079743 936768432 995604339 960287876 996030911 221195256 754992759 261598645 404819432 221234727 329544568 881261128 966147541 726625863 781211064 423426789 637795851 515498530 743089349 914877767 927733286 540816800 736427207 64039541 243179304 176240620 899421818 683790386 972870865 447072609 996675580 647656909 911319892 645424258 910695787 970144522 989088399 997686449 999764072 158502583 457742138 842901270 981746448 836101737 931061134 335538860 717390356 58539183 971094809 492748854 964326042 215284021 877344100 947292400 963103936 888340151 994133336 678680521 752232956 786468026 997487860 841060384 974919098 469228050 624631120 186220661 393090453 180040605 273757419 785715571 893388670 236695816 896011628 834065008 859182128 895104088 998145940 779017943 863491484 605618869 841918426 218928905 782469220 83600930 410845380 987250256 998063326 912906422 977132481 12153611 329238476 479942138 584826825 34547894 306120159 844944640 851349652 144827827 192478742 457478483 788649116 722346569 767479853 140365299 393507324 868518653 952514898 565514770 630950693 652890179 838967205 701047388 801105207 409815751 456817073 379754278 506984885 385687728 691045886 578743752 671934289 857971995 950252765 703369368 833285815 98794911 188467608 311481168 559769282 636515718 974609381 829714517 998955439 392734211 580598413 148997831 601818196 557945529 859668257 432695716 901543194 353773751 384562869 732961933 828515073 30219132 200576744 487995011 706460440 720305118 756908247 198726190 972002026 85625918 300244050 591135237 906401460 652601507 871980086 755355641 765681608 614813876 870512778 475725827 988619689 467185269 482754059 488522705 873485005 555346271 920597546 594420276 868798780 317038066 471828215 239039219 893671499 298908186 995469117 85844859 347292166 401922044 699170992 995529142 998016826 606754709 750901252 347321494 603945682 828642932 990935142 805990877 947611648 47539123 913049180 204152805 290443971 23272573 893451944 86449210 822817353 467351397 731832389 813091142 955693884 376397896 481757285 682450242 708626680 99481592 925925410 516126861 681939335 55545029 363680689 371320743 631458417 871221263 949159188 37170568 123626667 247100734 838186061 50659648 698419875 623755897 838563103 502438125 511979245 846404550 983619618 919572297 937650828 518561406 583437215 271586160 605040590 350356579 519572363 752450027 866419055 5047217 374250636 973915846 990922842 842594699 915525951 873621829 948257757 88261052 456305738 271267506 595159990 968025663 997308792 958308789 983062190 548477936 892379213 654051973 982301273 127708874 680292975 925966739 943269386 164061906 389617773 276534461 917719840 30721248 508282704 162586453 943649205 33460537 43697654 394407283 878253637 136088517 549027739 965776064 996929020 904308508 940813628 526972566 875727037 996059017 999238028 768344166 867286607 89647221 495916605 52525236 176627289 307272759 358719082 953694155 977862050 191280174 424965880 211697673 378032034 733102398 786496113 188792994 768818596 42553240 289182300 982325499 989735475 694408249 722511182 877860411 994219439 506905954 855539885 206025803 985597763 280004932 746609920 125768200 140781413 659410644 918203573 9528298 412541586 117113631 748277506 560899162 948985701 828564310 908149104 878195965 914101663 815441106 827219860 347504331 929787758 764259902 851779409 193147807 819573614 113607393 702624324 930206810 935620686 496224133 944651711 634277946 889391293 862184689 901854610 56464477 362917978 540780313 653988245 87414952 873630665 741683812 868949177 839737358 886400866 292612666 817982971 558419521 723673581 962596283 988351412 175167657 829824825 875182140 974024982 378787201 652480729 601129553 664300739 678480153 814751662 311456438 662038103 954087035 979702943 573376416 648349427 283155657 774941030 682855416 809000344 156187047 242382078 651276557 941532991 266483970 345523060 49651644 827298041 54237594 604051343 108886943 661272946 308036080 667499433 615629308 732166943 909580549 937052149 827862493 962408839 63748193 492141580 552826227 758688325 947493080 952287461 554179923 564367929 283613616 306921351 346561064 652915594 633323228 688582927 985219825 987975005 677664982 840425022 979208734 982486044 143572836 725344380 785316725 873091318 222358011 981650246 841148837 885258405 230695602 320885550 163721536 591922763 938279030 986697404 802528992 976463482 104122332 519892027 289796493 938743359 595409276 746183009 363617417 878017464 611424785 982292027 863354292 893206682 362598055 739652406 578665332 888194102 764290565 968033006 620503666 954414372 403622785 701919872 699680366 780565038 52835051 481503928 482027380 765232945 955815057 976912600 847225738 899416369 918042806 955141079 175890022 176255284 455753202 916527471 334804778 464825356 137239246 372157884 819181808 970773545 348512873 381426159 258878591 639667469 919137388 989191333 458635640 479126741 860413083 864068636 970173158 991930621 146029305 227310148 335208925 408985616 411818052 651108320 505454654 905712102 825559455 978895885 58204410 348539176 188121606 993621098 544920204 698241350 507715680 532391034 561144981 695173368 34948909 908176674 996836031 999756900 756975880 918536261 130002520 820858333 612513495 851226710 402905918 852450308 756769251 963400137 892700257 984150921 438936877 528855493 836817363 903779877 990083464 996746099 457736926 628795820 143267833 993548732 318809475 433053704 583144072 998246377 556541104 889461930 491289134 626066390 479105228 593238934 339540032 907833393 269704175 485200418 229126741 567102203 837796568 985525199 310963636 718615953 198644002 430136597 510156507 645125919 707122366 935050231 615785053 724018319 960906522 991688013 419374906 783180163 93010782 215350431 456588272 500807133 615951638 920866395 937705923 984533994 954292416 999495259 718671367 731303530 91105105 498671762 238467511 265161326 859184979 859478190 361293244 479577437 956011683 966727665 163669999 204578477 545697168 645885746 913881952 916823119 937835040 987510636 166653729 262642875 802666603 830345451 206756038 737166794 261197237 371882338 384017461 992806841 401651230 438112720 700087703 807949480 972156786 995629555 312629858 785975246 761089970 822737070 60524296 998260644 215336298 610199118 542205470 812135845 795753561 998968969 27912713 43272842 43896366 704477945 762015962 815355804 256535207 292873957 941918430 987151280 898030925 978271971 911500357 983351483 752340859 962609643 228742034 980389597 182735170 684073108 166268634 452321095 917948074 980143861 259070218 478262470 669519088 820035861 144064635 564656417 511595073 933261887 736993373 764148512 52728996 305291569 326641210 950303980 199648705 414435117 611634626 819055952 298380483 993923475 728277222 897885422 907045035 960533043 60770673 107740877 786139295 856259516 892586865 905393682 569055308 822916719 225160852 430588500 598552483 620381328 265823402 368024476 544814676 726197683 232907613 799589313 868798973 937043737 355494677 540341989 887455108 891581127 442771643 472161641 556547028 601745382 370849100 943951843 15868723 603386457 553619000 701581795 630450526 708737166 336284218 604997493 264434700 819828308 997034 649904154 350378883 491410612 955998796 957907307 652526058 727967070 879433915 965382253 592698201 844310781 329318905 515638876 887461002 923865588 964097347 998033844 619111577 897461518 422362929 462404894 77211843 472990143 523711974 721982224 172563226 228835117 100432147 292676990 62456135 886712953 631873784 634993465 800190585 905268934 366170147 958725266 685464683 696976932 588191020 911500369 934943642 990642746 753073626 828608870 773639440 850288910 96429026 889786588 475462709 946862159 943789651 963292094 103224992 464287017 896204621 962859565 428225627 460831052 272302047 319474758 460721797 756146043 165404111 550428900 786067098 931566229 495097340 532730224 406554202 746795671 133739351 250785718 719809975 955385528 11508999 435922017 876732544 877610212 822954823 910264831 238843395 457151367 915486723 947909438 325550122 713881685 207416360 403253554 278259348 923550117 583856873 883988815 498999820 955104399 582274873 910414618 629425883 647109361 199999505 777659656 753140573 757409014 890460904 960278511 464654289 465653103 26798193 49575537 718035824 831089496 192269018 731123057 167668092 766266617 692831712 886730342 1738931 941231143 345573730 900188336 402432165 563636809 14410939 111630298 701597989 729301498 550485811 583645182 106141744 392698369 859196842 865461971 522878624 689814878 117427862 873485422 508381534 812165630 940607683 996507325 289843483 546789368 77343634 182667394 411347603 814516058 576757464 756690456 640400060 660358712 200450517 650001034 717412958 885039754 126392119 748640653 844016301 964259159 717030626 725805011 259487501 571037520 581241314 650412398 813065638 847031443 226363513 327996711 742019313 843341066 342892098 506467549 873893100 966254497 603600703 819333337 873043982 905240613 464308506 565357874 792819920 853232185 854088944 903316995 993524237 997313794 225783013 632832264 151563341 698130998 712921241 874066844 144483286 721173959 907122149 984063246 375536193 406803593 815545258 858890545 99799477 293793904 184396982 871235008 121455205 612590034 403146587 766329986 754605369 930610666 448969437 692890201 741025455 896761113 369240172 867484129 274857212 571106735 29384772 724320061 786150154 889320133 614582858 956372374 418598393 926929430 433356852 865410903 385161277 605282074 353157152 453924287 825923502 990789220 167997335 739889574 900724493 951020609 236409248 341278448 947136384 985592817 564847836 905220142 817304515 885082608 313161075 733309605 569009687 840770348 84810446 928504327 383912671 777149295 949000484 991703658 777234122 848872406 703763964 857244215 615773441 875900875 730902671 994736146 41453610 590404013 536385427 578471360 253912027 562785311 491985273 885684124 103503957 233753494 960816670 989514549 532849619 591421289 335357672 645827900 495627724 799676954 178695250 584019603 727204435 975070544 173266803 917869924 889688619 917936776 309597291 899897252 388477451 399782834 352228868 398607220 191100513 474593304 553790459 678748449 43819666 865384578 332139348 997683158 488847298 713964125 608165721 814677517 687796093 792851838 796723566 923639486 403567858 587618158 797491490 944579229 63251577 653668742 267328113 281726682 712600210 959474437 537727006 614650285 673322245 762425415 689812562 831762978 536952806 834240712 149661525 707184965 831466255 838006690 631906440 648902778 987387115 991184924 306518451 426365720 121179503 258710087 478077168 619727287 869848340 946184362 948573096 998166069 324375584 530187130 972915549 984883412 128143764 513067406 388523529 581098589 528934776 856660479 268238856 817241558 840865478 866807184 409839336 979837827 987337805 997489090 777327835 864025525 260333974 814426262 855979039 982804123 929426780 990268093 92579377 899060801 964462352 979999288 476640474 761403339 788540187 987314806 645388399 729037322 333479481 815460861 24099792 97921551 611704560 655623250 617214389 992881203 874731624 950926918 324109652 338861037 924889464 966712420 182265844 286070612 27767654 103130698 842910485 895828626 122444746 702918939 816276305 914397587 103258294 790694714 735639639 829508822 547788078 811867928 793747909 949718108 110780016 742234206 374873539 493748210 385715319 820486393 442457582 665232216 722510593 833579399 913263533 926153037 996808225 999956461 354176390 887520296 217566998 856153744 580717075 785097854 935007560 996409620 99281233 670644256 506390928 570327281 611522211 687199861 131899758 862862739 159316196 408073357 880761243 930522616 38721713 712762505 695286136 804497000 994743260 997536081 857431394 877170834 566441554 597790168 369143927 550233124 609837905 672776922 662906692 709266518 770652434 943581857 294945528 773712137 427018823 437941320 598767005 989419803 990601872 992935002 813821945 858205617 168077994 633951222 901538458 979808031 397248221 579310839 375314713 431386224 994907858 997553554 793558180 849526836 384645661 500943355 764814677 847741791 821179176 983612573 892063502 991772180 614853312 784049071 676159457 779979025 101419394 831431847 278139130 786425478 484484185 517547341 947069437 964502529 664089483 791720122 216897997 267356451 230772425 743749241 113535217 964018084 577505336 819477113 776942666 951340814 36859658 723457870 359835557 640343033 660586908 844983647 131161090 603640622 36534126 502238002 868190223 931332712 611129569 671338887 613367657 985075002 440356438 962095426 639695910 784198334 33778300 549025711 30630980 866444627 372228735 383056033 796413615 943851496 582818477 753008974 866141810 881061329 763124614 842891719 573471503 838015725 82044166 641649103 139882937 254887409 230516006 972913209 517440840 629398263 336310590 557025163 737814699 882968055 668718697 973812945 83922721 780552188 869640590 958354547 749944393 796420141 492955063 560513061 437087514 745052639 855011756 973228757 475191084 543535578 63148580 675797978 970071818 998120388 947851172 990230377 356183438 654998978 243613110 371198190 80554193 750866718 462755405 877929322 232360478 324431295 610244402 983950030 59247489 637773738 845420588 915523106 185309452 537680732 931398436 996915885 678245760 692001105 135785006 751578564 563158792 573082406 930669521 940959853 486022399 871193259 437068252 663448127 433187400 626173237 727511959 970840139 666056246 800404210 3792743 895424214 695914411 939371833 833407540 917643414 373441353 821969727 142359524 961174247 197174952 198378013 628145744 842517979 617837044 677277220 388552974 973480538 312725782 530758601 54708037 835473550 671299044 801529609 128458652 439492168 978217669 982166849 513773152 853746208 445938124 809857425 361131047 859249879 26789703 995744053 27930401 456404242 187604328 966995460 765759975 875903740 244833844 586121662 241342818 631185244 155403296 160069709 399156534 599511221 258839936 915573727 355558397 954007744 829687646 913466272 879790135 988526058 985156704 988429136 68662345 834698994 338685959 593711728 715648923 974929141 7414611 392275418 989439263 990540000 61942569 268781117 266076856 977038030 971619787 985788276 73892375 614372653 677905410 873991418 367817238 493566840 418919885 463070769 480992057 546363918 720339364 888257693 421191383 654168672 706725674 758748672 895904520 904675678 709644990 841936556 738337749 826887413 590888900 870862678 721266249 978881945 552806989 612806122 31298237 786851113 457086316 727767637 366812557 553220467 423617445 543789871 972694455 996923997 150838603 257139438 558214230 926001749 39720038 314676019 823482122 891535654 879930693 895080355 668727409 922825997 887901235 914623027 740868418 989465276 837607826 924231064 32793763 663829268 705439263 993980621 296023874 603148099 378355844 588778654 312756848 781860514 948411672 972436878 823150527 889264807 459052297 496585159 769134616 938794047 980742786 989408902 368235233 831163826 295180397 307363167 259890672 930216380 942578514 967028672 832942478 943969812 231196564 987741662 462191087 827123406 520164613 611725483 389250409 949140888 976813497 986199891 128839820 774310030 396034504 524976502 151809565 497930638 122693610 628707045 316909181 534081521 537005192 639344409 19158508 714213916 89472630 297813672 899572011 944458910 243461453 284137257 124659812 309746506 416991739 721183240 868282814 955531381 592339577 617518748 819225091 997726955 501707963 846013807 554129408 610472537 704149234 773889310 951542337 995462021 630363408 935703467 493397498 962141850 849244047 924681717 484535294 658421091 967741116 983301592 471309867 995263652 242984286 396975256 717204959 771543538 323341450 895535942 899136812 924943752 652941789 905022997 193660493 986424165 868742875 906441456 916248103 963344253 806781622 928133934 589937455 808132006 651486566 746133036 552432778 914896802 908937372 959209401 100163274 269059192 605562996 875503976 488023311 855868900 620632610 987405184 158551371 661095654 856159786 960757741 949970457 952935267 618459072 926427665 489041968 690126540 946353941 967579819 976453569 997996291 866516906 869094499 2873190 308681452 162752056 400473244 121067948 418914285 981787275 988256361 139314469 668580397 677200484 993063578 847773077 941637546 773478200 946125393 602395203 732400805 618574444 807958790 752739474 862251434 394921916 925335909 741366824 791811394 840921241 967426814 139076713 787072636 222417292 222967499 502682429 920326461 418136054 598148719 182315142 982637314 921502457 943375256 852877889 910262031 659642048 723834194 752828521 976019133 136808611 841256139 677882521 765332169 856767435 971086587 539420328 599448907 720273167 760340471 726844211 784782994 147971724 810758461 122293756 648007321 694586303 710433510 37074615 984784103 127160750 405487188 464373754 646103557 916643538 919883509 237628620 281894550 267406089 866062942 833732512 949256981 239996879 782241324 382142026 590183164 535656855 653790944 570837362 871946195 617988610 948967731 924189455 953062346 505039184 890778211 184464397 667264873 319352090 753472582 606366281 802005445 393717298 848073982 594293913 666912474 393302539 471443598 257471401 718313846 649390245 726508487 987685244 998100360 128836826 504856031 809313703 994906996 925950861 978362036 794263355 941962569 876110246 912933652 396844311 742312046 199623006 487114001 233408164 755861595 688345761 792574280 364626005 383593658 4805775 633803119 17389114 757693636 343220098 517970289 994239833 997725337 80089713 364565434 403128226 809876221 427994406 634782582 655286503 917788189 136348853 723967309 539370565 727955525 394979339 739329025 558255651 680006038 279285633 934732579 898712460 980251807 861640418 910946903 550037388 617719868 981635244 994763990 547454496 765628097 705235411 713294263 16838482 145259864 131063565 349076399 925737535 969839927 850621022 895491156 804691333 839738630 669516405 839140647 676838671 709151739 54216223 551246048 447548273 472856511 110575094 929371344 508258794 561220697 197074658 638724588 542331961 672732109 713148824 822705304 309688757 606862691 502096192 945571758 70821234 646144913 224417451 701759873 973223908 999057152 25238316 94418526 530239324 582424041 645499610 840632424 38032454 426469540 773164311 918502493 509004270 660721396 589134784 736078952 422260055 516631551 767453893 997665278 970637528 981381718 378513871 601530582 731290095 982079784 668173929 979250292 517293270 885929104 741682664 885743432 835857217 846242752 94988794 579312940 359959223 990189231 90796121 408013928 638617646 755236320 97786162 427609606 808174098 925798386 142944285 848369092 841998576 948557873 130287991 418449069 593351727 959562941 509767849 957911573 187904954 479711011 515747802 576240180 370121071 651466175 553118430 809049568 730201395 815730456 527731623 566383514 82991822 782211724 205315700 666502234 744871382 917024845 938929180 992362448 730994229 912788616 737257417 858948198 644793489 727532384 681422440 854861714 102309890 861134043 837293555 866139711 313785008 801561562 542171505 945283044 79584358 788580520 92369844 845180270 965831190 988324623 59157 241783382 867052585 988680545 489389969 922743112 610156670 753964434 462943184 541072512 184028169 203532314 443721152 524661352 278086677 416993232 79625582 206896398 486932013 867928188 105552105 273888135 986831604 996209919 833995809 931940830 298150825 350055192 939596262 991681404 919362364 950893379 72552514 872554578 894985662 967626584 224499172 731613233 147668109 651195230 965598004 970690653 109969258 461277430 445972271 482073650 43638110 555702446 580927246 734343307 439107500 557500962 688916188 918911681 361421502 391655326 441076910 692023474 645953427 918035528 445195922 963039094 976012540 997466678 472525319 588518230 775646527 785286287 510423913 938407766 857414937 916641625 752187087 906415770 274138247 939543452 119169688 825021637 237041532 675850880 457338533 663895877 765440064 957434153 398533426 921061346 965547619 994600038 849258009 946516157 221553823 911459397 29458758 887716023 433820371 964951553 674076988 829985823 541456379 888332187 66767804 123667327 70211096 176487226 18745604 936058395 121947466 578457571 566717239 593751924 103595508 942649970 331657742 783463008 115216014 673656260 574191738 845449039 646715734 922067113 368030957 813184583 91699197 844546312 313122408 804695895 403370733 836716835 856287466 944919660 289616177 536696766 866792424 867698168 445402652 902969845 794270358 991762043 589851831 806118833 840455027 982656731 964041265 982209035 214627383 226941241 801882106 894188621 80686079 752507987 123663242 446692901 862248666 986635473 70909221 498289134 475822629 967008904 21728020 329016864 557392572 905653368 189297614 718636328 381268103 936032213 488424728 740017974 758910312 854478061 994967013 999189501 251875483 901567538 321153561 730755012 901672497 914401097 587000780 760367909 707540111 768194093 884000782 936005597 166486253 273852568 452715299 505665856 628369327 842446920 848912465 979944508 877716648 986196134 872730778 887805617 863566955 949092210 27860913 450667514 716330761 904987436 784957268 972938409 176689993 501269012 258616851 718114602 1830934 29975923 496819776 530911258 118240979 977691939 645419918 807302463 499798679 590147933 348390804 559685098 368359765 457902470 814272997 975562623 639189485 849405193 420708385 998323516 764940423 823784793 484963084 947613355 107854072 561270076 273492253 331569267 822188405 990361683 593079733 953615770 193495487 630077827 566525201 638764182 238318864 900306856 306491274 692108475 482568382 657726324 522184903 626662003 570817685 888128444 410865943 438549879 423679532 457738193 140595915 884044523 928630677 989219596 983577632 984001091 433259582 491294537 691019741 899871073 847862567 862641726 113858405 824280134 927422029 936327576 321733376 939453338 176538129 718239903 19064299 407395349 432245221 951807937 481721299 557869824 970834486 971331234 824685856 896532177 54747613 293622568 612155868 808754566 389605244 988502381 504874565 980425432 106952939 424840419 888382220 902700732 578911254 682595969 596693884 931950455 132961006 665703515 934167357 968994293 125886423 181386168 313984126 600463430 9992224 901968826 461881085 608449157 87090017 310780994 871508208 909814757 704833435 995473257 682858935 975280755 586784858 999943857 195552403 748109281 40889699 791231195 834514623 909924193 740416421 763018887 960070931 970081074 447604815 962725079 288491648 624227280 408430434 850876768 543693052 684403591 263812245 600829498 914839909 962539974 114791648 382245455 565909861 864581985 216481029 569506302 872658009 966813545 480621428 746945947 139920344 544007296 299954901 554913386 288859174 734994149 515687661 921343702 919505588 939906681 149353867 827731272 254364798 377015386 802429769 980678174 539095076 615032112 966275544 996748180 273339908 320966657 872931160 948923594 819630893 917840594 264418767 308901219 167341028 700761207 371861906 813666989 49079758 495486723 498039332 532569107 388705549 702000287 440544957 490406906 610473137 886764113 19850897 121221294 851785777 913357714 470723708 542067073 652006628 873037011 583733930 908643337 164932250 779781784 26715175 175846627 951067119 991856387 9572058 617393889 760572575 910918078 70449996 183750234 130736796 827979864 376070250 849232868 400590937 910954025 393371935 555710323 969300043 993966412 179335791 493987077 764207772 998547831 229192937 475231938 439730649 529652987 578108768 703148257 847248357 960796782 110881960 787628305 681788408 946358204 169000738 259541032 254494723 980105632 572510182 888362025 437340659 839800065 64206279 353747882 53782043 241499456 602010321 781648619 364787188 837376485 579433109 701577250 184889029 506489533 632460890 785447169 40098718 840889442 489419177 639391503 678585148 979393863 339310552 434552996 850227097 874524016 215946543 605851285 658112738 904410748 559374285 616210598 593291984 793623379 939567270 945049570 554776700 931584283 94657858 138266264 981390111 986778214 748972493 866706403 492143186 693179471 843776087 956351146 734988978 935873498 341924126 386531560 864563817 906022847 602612129 706627369 661459505 953652457 38887410 426455499 199152675 903656598 59270515 575809815 54990152 714557933 933953826 957392059 571219828 634363974 300493675 747994493 500380100 954790955 539253150 995787870 955984834 996153163 56564455 856538794 228127880 797677719 43010513 797382637 134754641 689102358 616087726 646574547 446944781 836739137 249285230 545538912 634448194 703135314 971956710 990821258 327635800 783257919 962212619 990862765 194420467 484687570 508401022 960582189 565953446 745748434 711511372 769661359 172942119 662889108 836688022 933154968 458092007 505257290 576074831 964672541 219211335 910992165 225354664 364662361 324365829 391537521 42017941 371267377 285562610 968002301 102761023 265407504 954504019 993438301 810585830 872180824 468657655 506523887 118959574 939353580 153350977 807025042 285012192 508486614 121005183 955985408 957186598 961932976 22888304 558955378 860471233 964885290 481998334 553574297 19603715 751704121 207071816 337352889 328248028 590409089 192905885 303473399 796987285 876441369 904319309 911408296 665718870 678145129 964933490 976095322 353971442 503393386 365854797 616619612 28321135 308569692 248992473 752163075 271738706 528963436 405007794 617160591 918672546 922679713 485775437 603448465 173477544 510496901 221584902 873192992 160883589 395617148 919382964 972414741 78793664 121444017 292637492 528135309 816163743 944043260 953955470 969520509 309805941 609557626 201960659 412224271 449118214 949128164 20660769 756358806 723626035 973443182 878996748 992133375 328844944 862281067 128587311 286636586 352970649 895698812 613774194 626300943 171792666 549466002 687479160 704094408 888591191 945459865 50250692 692711362 761680657 979488568 434929029 804517729 984679313 986567531 173746685 555004990 685293566 890448387 487901750 614261061 890928007 901701420 330935728 901711442 16534534 705003184 541951138 819377614 160503440 991526506 946475572 982701820 113240528 169792745 302530142 650829991 703952090 777359853 380164243 446053586 292502838 488331186 523324145 978322726 65582954 609275681 859733571 972245046 150151441 715516482 756248686 869399988 600141094 961837180 371669565 880614011 56914678 777699834 589792171 605776929 89002026 181700614 765102903 976503653 339784807 669514652 485469974 950074382 145207148 733707310 444254161 893335793 787427933 917626181 27960234 176068569 678318072 697108478 794883283 968290620 351870543 569346464 581265918 872752315 822814259 921533761 224296139 759695738 904969157 905099771 203711618 959819952 360025290 609883806 192825337 648285797 710507173 812592323 599575747 990098139 933151444 989882075 849434611 929312217 904190602 906012139 782134025 992093285 370425276 679932914 727113281 980762213 339166018 514933008 892160581 919740330 896101456 947382587 121321893 321637113 937363455 940903769 917282704 997409648 283588062 462251004 167511174 468576457 944806728 978108540 829892692 852509231 753294304 778633106 316786663 474444546 269518395 674226047 514306300 684790097 502884859 997698262 182382325 362527462 913896228 955021841 842183813 941067793 895835313 930758912 298735592 832664069 264594634 957530749 956404991 989375558 789262883 995959004 13775250 220559200 736359569 833076376 81889229 184579572 365542252 394292005 989797508 999797318 510991166 836388743 389024412 802353891 417687687 613133383 201563645 337965794 510080607 595203691 290808450 753349437 300513669 763081698 451102633 542050987 558830914 995755461 572068860 959790905 619234387 981464601 176985712 850088644 429675831 929184250 824416990 866452658 775863469 904302048 80050435 483618855 215102400 287874039 350973724 521312841 603685181 802344454 899895533 954846462 186067724 613145490 953144179 968841211 446451311 764268862 837753151 915354567 451011405 825856842 103810578 434468436 995031407 995549204 561011675 645201927 476838571 875384283 392074114 716867781 896500245 945290555 14372589 552355287 988324851 991531441 377231974 547374648 203920081 941494012 775592243 942475630 664692981 977163641 701033787 824177654 844947660 856769563 470497117 514301449 675613911 792550879 717005658 802748540 490622242 829058901 92093805 678420502 808253858 984542752 863821307 970818298 859166990 865727656 727351543 734632335 115738517 271886914 92152128 259934991 739956666 947858756 505903783 822359458 111983048 915394545 451457559 574280869 742071547 751079605 468609825 717856149 388047430 500405845 757903547 927632255 582916410 673404005 446894528 575210830 157964332 604999386 41717757 655075598 990560110 997108321 81862247 847714463 941413745 996712830 783219789 844351476 373713874 724976398 864388396 903762499 46615558 585001832 720538538 812417269 698889324 722648243 253135808 648310901 11587060 551578242 383735581 939716525 227601453 911139512 498780775 915711315 138743942 261734411 539820944 971621945 819935701 890432744 473743765 755965461 195598807 808432963 348717082 707954160 476562827 836424711 295322198 488620740 746891953 898681332 798895765 992150297 233503326 699198391 329536039 582535303 807583911 866768907 252357336 849769146 805485654 994503908 277508608 385537406 161143569 787472859 360163271 981950142 721486438 893248346 44139899 214602908 615325201 808169981 514913945 985360624 639204077 834669762 12071825 522566729 814330367 833505649 720350625 976356502 49617003 306691705 772913883 972224548 488548718 488611987 320130960 810617648 716999485 935218653 426647076 992283832 700502576 918493764 608094896 945210847 154396232 896906913 67806085 492171932 622800233 661523428 503019013 532170958 538742650 550965424 255044877 760328805 927722295 935982074 311971036 514687076 224720075 321061844 118469828 865926576 862433685 952018835 98679160 771195241 37189791 201996533 576868069 875458591 722305567 940729878 422678222 777806227 94217237 842387117 302222514 746055272 619590945 799438068 161008664 161743638 898154336 904080722 962334097 974798682 643324848 792260304 555616173 784794309 57827416 777840912 26430790 804934812 356867138 732647315 101805471 619410020 792986896 923803616 524116704 596430796 993132371 998228364 343556784 708447500 498007347 706652488 957259055 985875894 980979842 991517491 747300033 958253430 480907171 845128530 766311923 995301302 961111217 997553933 613346472 819653485 516145760 956159900 604106171 627890412 356562548 588141251 71460210 763355926 283136631 829283245 353649972 807434305 89012241 215337714 358128681 428172037 938543991 941718864 474408900 916946651 231351403 590542511 227762513 608875180 920674078 994197315 636164888 861427512 318467708 804975562 793157834 872028594 141479584 969254182 782152426 939780466 166022616 941412800 30412325 735408926 418144241 806181189 894176952 901834550 229710724 448641990 33173125 208500699 997341392 998080242 637957364 993263562 198125827 286943030 593834917 760083650 347659477 455102042 494326355 536998455 820826920 897317607 507225961 536698591 989456803 998503346 332728131 965621015 565921699 733422461 934558297 935856176 212424086 824548437 465907215 490474041 537478614 634325747 588611746 883662347 689534896 981542324 281228472 434244005 285264996 558934986 815470423 829169504 636479608 890543643 684443958 799431434 159518551 508938411 448390989 730923736 882196001 978176041 484609758 690040508 811872061 964813098 462064710 468376236 992103048 992172129 852876860 912119148 170675430 441281527 292191728 424771565 156403210 551096930 475992385 617980178 560853578 564337528 667312561 872769090 854194243 983114314 768522070 797568525 13500220 287952042 224196147 234679555 611510943 710531724 634494516 885291531 927775977 992635906 764795681 794491413 515500210 793175384 847273509 956200995 375220205 623614146 523937443 975820366 948003394 958085367 619396668 956709782 218258093 502461697 766544297 849488481 722893610 838907799 62863230 66666694 98064767 648504379 719211758 808833586 992420351 997471673 633544033 877999539 205553958 424569337 964001477 983114739 675142684 678958780 128016723 322043020 241307277 955388845 902250087 943421402 896319015 909909321 911987564 951984409 548774388 854038941 261673728 373034869 412583627 535399304 924088120 969551059 937391732 967512786 410020732 714211912 938171520 960949138 146847386 163518124 46956148 736670824 443958765 609288640 610717188 902495404 23544210 663940426 395094588 661886452 696484362 766181523 606855630 684722135 174571702 319354567 512030598 631752052 607770441 872702325 67076077 545727100 885104031 967388854 92104251 583646449 961782933 965149553 670905577 875677988 864929667 993773458 34233083 414512138 269391083 700632307 769414770 968404060 181630612 454427752 711656899 926613056 158033776 372330394 678644995 829278201 742228822 901337215 36303332 818463516 993907274 999115734 489479436 540608409 334619554 646279248 237371231 368663118 837698715 949087823 519668288 580411063 736386970 831195269 488867826 913593424 365459034 451768363 493841828 960412823 910848627 934639308 911626337 950199294 223114861 625559363 38607855 655967404 613660468 730900235 393742602 656361106 585959995 703017722 549462982 573119494 577126658 752289691 650336262 729975770 720489763 987654202 820521187 990758149 318917316 513014491 670511450 992076864 193679267 511400581 198849844 793083558 900442360 992178797 108121178 416911876 866397667 911401587 379988323 876139338 463264072 811260358 876015154 908626099 69791484 902979257 920513548 925968998 42203897 898600291 390246313 648955879 231046190 790201239 926445482 988343015 200623978 680947973 32791908 109859301 397312357 556056701 492430193 898644351 515024833 878460956 352913798 710781536 420687721 774088628 513638223 940813022 744282780 877702426 472646190 534971543 609706030 747217816 135605945 895429467 568501637 722149876 816391378 835269312 499562867 677170200 146830845 814139073 994930308 999183376 608113997 756368585 609748756 845207806 61850000 570871825 830943266 872101176 383438530 429835970 937200367 942603451 447557160 513401118 276532410 340122052 515822158 538993311 838117397 922702840 69664350 696053766 596053261 741690636 562527415 770566661 710692909 769437938 806091999 806853385 992867447 993716110 715624698 857822409 647572916 748830402 717420203 743758095 631642702 723223460 103039060 644027886 489018862 947533162 711454794 924812235 952031859 996272480 786765922 999612376 585487363 932640145 457157244 554276539 417664702 985220172 541504076 880973725 440231444 817459024 973866393 994027940 418523794 858179507 194206198 540764702 192691740 819393494 735615865 786493677 636229722 939136751 964370373 993267819 281862217 915019214 333294920 368892338 892193389 998665445 530725131 879836198 793041038 801870483 186677017 654812380 989700684 996976821 872248064 960333730 311084889 319650591 538449024 787896931 501970572 998991686 905874557 986338699 635323335 845380874 742877667 776701414 605816385 996705595 290908926 404455483 328478778 812051927 708095395 929204051 948852670 966154162 395919666 777056883 584041083 958003659 264067625 364343869 646410194 891069185 52279724 599664737 547345527 710194152 121732162 822613699 249686865 540676680 761639124 956076466 379709023 541747332 23174417 749041689 574679543 714212832 858445542 890854654 554766737 865132170 901059652 942805184 467864873 785490160 821177852 900632055 218258441 876449013 75065346 763876278 761168660 959549952 236973390 308833920 115148731 831864503 704290236 997623300 673787871 721862463 38844151 374215652 789168258 916786967 188415266 936904151 857811084 884109881 373484460 908156302 40378296 882314331 471352778 471576864 964697743 976957346 610524907 631086179 2805911 111712215 5536246 992438599 379093201 841868458 851808697 875688524 313181420 645505837 760030826 898068975 322301738 385980750 239727759 681234487 132248562 678710539 685515707 950780143 649280052 972600561 304974894 961827125 287476589 549378300 298571912 325141805 748477017 933625757 355185199 632306742 218983684 649552487 937673557 953633875 461053187 968471206 121632498 874372650 56583352 474080152 594833220 611675553 381576033 784248789 868419116 973626594 321701614 396320715 211662523 265565378 24495608 860627580 634185478 841464570 809125605 908885144 450651392 948242240 981674917 983227048 749312712 777156306 544626017 747430183 532227681 561218698 594696064 914185850 541967172 649194836 948114368 998826450 86178384 96601900 118408285 374012836 771046155 966043452 913629485 982528034 748065672 907701240 921492321 991814421 740805511 925696985 158142545 868759511 833709301 852166132 147689643 217894568 523402393 630497382 852739858 996006340 715899962 876718642 896191930 962740577 732188174 873570846 971502717 973860271 414200906 597006267 469694231 853028719 890122324 948032570 542353023 575575365 627930557 675500641 562438201 793457005 186215702 274109492 592543558 595550414 697845203 700196136 548536744 915097581 877352453 936944782 979912122 986317956 881421294 938426796 832744769 879842651 132249218 160410297 715374617 947008823 700332674 906603193 242799334 665094768 297799852 717948787 709577168 788462060 775706560 859538408 828604513 875303682 538609151 954564914 467554792 848204189 707804157 858985219 291796256 948311489 945188710 998631351 442120795 691465705 946913699 989995529 833896163 889993132 698253314 720326213 55652799 191600061 128572924 558615394 716571981 727674169 588129246 653362359 110140598 305654817 878600627 990413131 201117934 753941130 133510250 799219911 542969062 972501706 871462633 935233470 46647274 806656175 24718897 639877325 972773086 982719882 869386597 895738214 286922603 552393735 47938806 63374391 84877008 963942798 617605913 739477977 641134844 741137966 635547175 716134973 341592704 647374554 415277414 945424865 394655442 437240567 973457011 987070146 354795824 728743218 223424687 339680086 153587556 232626406 392584739 810941660 241698367 814747096 439618253 487980019 646443279 702135920 89318656 96083385 634981739 997101972 247833542 852878593 994899523 995669812 532035696 859301399 776822497 839098917 424519662 847619921 309066113 995293501 410410217 481502949 200257498 253206795 725295517 844546271 812458787 854431602 43527086 431381608 187405433 441580765 627192565 864791513 189423372 722135172 134049335 829651767 449782485 829214111 498462364 704978472 579955003 858914142 53856421 94927528 496971279 705780152 692819006 699683371 968778301 981349704 93384964 614728531 497786588 961665091 335942105 492809347 382057645 498368081 561134422 723400003 675512469 911142223 861175931 871147319 900180195 931974069 712146534 768719960 510689038 917475140 735272739 748862038 910536906 986850376 818504968 936800982 799716130 977743296 539611502 811551862 481137687 825964795 108505372 723621207 440752422 877447580 778826434 929178324 961388512 996341147 68550184 574717827 213264700 289719303 620835512 968450265 141875321 865759906 450306989 681522042 44818490 715802038 835580910 903007607 699292595 732771571 642626324 904292266 121105823 663693077 850521800 966426968 315141658 803809727 782939364 966795265 705537142 836721576 979573286 994195054 916034078 969652959 981184919 989118430 493316824 626750168 781446259 969844757 86419395 178303639 20175808 386223336 190448139 380114783 701692860 893279225 295221121 539410113 868589675 914083652 737622166 790747716 403137516 438859694 539117461 624752078 514242592 610807615 244644023 643464611 728014990 844247123 243057568 982937759 104024510 145992604 983297046 999459892 884097836 965618871 29849717 199527473 869498097 951116594 601924963 677581989 808117840 857990211 741883072 916162264 530584852 563460627 696776155 818526224 801824506 900975116 336134822 879925983 148771320 595391773 222442776 602056847 944951798 947262635 970863984 975662208 712156712 967461077 155651422 881711564 658914612 769512219 414064528 868166905 661775787 880193882 707428375 982429313 863161465 880923903 526147081 748521584 168893850 201394163 165985349 806823237 956038798 963941246 744206801 954105777 510092501 818323815 694805229 734166351 97521207 870958970 849611788 890313880 797721738 924810245 73673279 358797086 137422574 817347274 828239727 829328048 814072639 901853309 308279051 919247254 933100275 937578844 970339428 979228898 266356943 993041737 129559000 895914967 390721362 818612115 294931143 485673184 583122682 934862947 941264434 952554156 554791547 995921333 379278397 675449520 230155955 506429565 716003975 885798250 117650587 131862337 615592894 941907054 151935155 717824022 590424212 758726653 665714491 735786932 693908284 950019294 721292542 823345551 930426449 949629255 64539707 670246162 418832781 584053621 317819374 639954671 46716454 977548359 756153157 941376314 802343511 846266524 218574292 922391832 337440456 903189388 55211746 355012034 714405671 739927646 579607529 888184620 557396971 974513044 695733935 907894653 507217601 928463868 377902535 804690618 701276860 775106537 566808193 992432252 619201914 893162898 310567054 818653995 790942661 986906898 616711145 748831054 873448366 951104171 114528667 844398895 632943085 643825872 999457701 999898617 200041247 880168479 237203361 975407030 536631095 906979853 449944741 715946203 144582408 636341318 626282971 865850118 600390000 765372016 645295253 981730592 370045110 770097789 645261571 788037699 819481655 824358155 928313736 979429574 511749223 572167236 841095332 949765470 64365933 877519956 315907201 633733009 240112667 551480749 935982568 940823826 24884608 419176473 48198686 998215715 602082429 846718172 636856388 842301361 762897601 900673545 919528964 963295859 334941465 575544391 977481011 996051882 327702719 339149492 418089546 747941824 108579547 374852736 781922303 958384705 270178142 756411449 780483838 968266760 902321721 916391849 182665380 770177921 585942946 694640850 243314771 755007141 773384952 890000741 759925619 988307736 757305486 775232876 926752614 990436939 476651161 972974443 891224217 975044831 200561114 575099347 294484297 956771196 121900474 637816004 289765520 877131214 360257583 752618900 276972640 440540078 936939135 948851240 755182663 811487480 726794877 967590816 276566883 362159692 958790423 972067171 94792225 452663599 155846009 300824747 51599761 961254028 859163157 921200962 994434298 997077199 416595825 430007851 41323785 962331840 650994476 879149902 727682627 758138020 893908779 995282778 568588509 846307785 646247386 741609459 362679233 417689138 538831105 635105848 441817035 602319832 962879119 982737481 206629846 839070577 346130750 503693695 401962904 824401024 485972416 692273182 951634261 985180657 465980759 751041376 79533054 449198496 720820415 815702366 603708478 871377947 786118756 852990357 840482442 848392657 454754479 647286411 44903892 828346801 235749111 546757006 604245696 732994363 21418343 569620150 795269343 814973007 544722709 587320012 22231388 149852797 250415460 629449009 695490250 797895633 70948300 294274619 862772175 965173080 423884384 738301542 96965896 964571325 971751339 975650009 686566915 834505799 153277067 610097753 226197888 716805051 345832589 491217976 969423997 981406019 260590508 535264680 140547724 849365961 261497506 918242671 970432833 994592286 871274336 921043206 450276657 477221988 682587477 834181455 727401455 830611538 228374872 859550661 162812955 534771057 587547032 787653432 510438177 524486872 730293499 939115144 199008774 849045344 139804525 525852942 368252567 502520080 362248749 774629427 294462790 651543051 437867416 634822205 964305331 986480831 485208012 830595669 246716934 557450782 92230641 246630032 189682797 215438984 512510532 927167792 103570393 792527337 255916535 339930944 526937163 955318470 465558894 986261779 390280630 535738732 851916237 855231046 865133133 865367367 497521654 867818664 240445248 868039318 89752578 562427916 93312620 914044992 893813005 955978844 338416177 647318462 386276719 750374185 300064943 309413047 548765607 990933678 372020156 595424080 596643878 962023592 859345341 888459548 908383062 960830376 328107291 421179350 322608039 460964527 294989825 516392245 47464776 178213488 875727387 928405224 949999983 966973710 999727560 999950316 148632352 922352792 239905809 469052053 518068651 605294350 187428610 296159515 720565146 973605286 106274556 576414833 495650061 508582441 294480479 381118970 594013433 791163760 338562084 844618428 558402389 757120577 12932540 853053409 126094951 863356949 544344473 722863527 797976198 854283773 955584453 995128380 222693407 635431163 372572050 422308926 905391052 940530582 710980041 829379770 411652849 654331844 690842329 977564697 39748445 458790887 472604155 916594325 813234675 989245830 697887233 990093109 990292101 992979686 762607218 933624591 382049359 560481010 752637344 789911235 189966356 495933082 313287829 361192468 296128379 485095814 302820376 877290752 931977350 992279077 204160868 679826538 115664606 352494250 511620837 847055799 620269134 724445255 690979145 879991534 747233946 899517603 700604645 891923399 492234676 523258045 763286605 891603125 853882442 988086857 961935832 978925992 887578044 907755941 17337943 616628583 592322942 714422248 182237737 951807471 303749290 848773246 216642208 623959795 321644530 961834532 506267911 786991855 174225819 212585284 81446043 290298473 229919335 502778140 34169803 195589194 106165497 268512679 216285917 526672525 540159905 927692381 247533269 250763807 929952659 988631796 990993378 991995262 914971846 927930878 670062597 722494191 834950280 856651375 549986906 931513925 21154231 658926170 195016710 707988383 480594897 618376467 226018736 390701370 470342197 778290049 407928238 913502435 48243261 863716086 104111639 315551398 753247420 799263638 601875642 712238902 94275833 539583344 394294933 745049625 885119417 982724153 152492698 224913778 611768934 976025514 905131335 993314255 716273790 975295163 67083185 135313608 743477728 890937681 855727631 965281502 895646513 984873815 46873189 604774326 662381218 938074222 882615918 970685296 45204146 243641103 414826621 756903413 273716514 448583965 291737486 967305133 473554266 672449404 780091091 953059380 93568038 798988641 45237105 87968722 959852554 995307921 174796764 215981053 40878058 550705409 863956235 893201568 744771325 844583855 977555537 998650312 711798199 762399300 63583656 958431276 458922890 925970666 755915294 831493947 831024775 873880308 869361175 895155046 128861808 795549845 824288700 896603509 615865807 999917328 68278290 616545017 470150318 772966012 974757825 999101214 6274764 847546216 697823969 902726540 754661635 912449117 890553727 943404720 817616275 959475298 145321079 972441255 246002669 636241714 66560715 859926441 102255308 895902923 758011151 804005199 600254949 996135777 14127494 599702217 304840973 902687586 106969663 877117013 989054310 995832410 327582863 737502637 727185282 956610849 734048622 769391287 963309799 990449780 212452509 905570773 689311961 996189869 543845477 757855930 300306726 802543569 409880349 543631468 707546073 806055362 742438307 752227232 1858992 958593295 457699597 474007922 985821992 998358676 125538060 684526735 728225072 784166012 770164988 877337225 818603203 940354118 654856860 997022866 921600807 939892402 206141524 991420705 616674451 631208368 908560873 965422933 20764512 323137827 536167565 640816550 329195886 482204896 460408256 466245468 456294210 761858200 734316090 743217291 749976423 799551281 433417405 867706290 190218592 282254609 627620066 733569368 316901275 646614965 597076282 848356359 992017678 999047020 489832493 756271579 430363320 747919630 652034730 946709309 144022711 507887078 188206824 524013850 355176873 691558267 649309049 767700810 388456637 643870287 131150986 747038012 375668470 944902337 693015212 895982186 657517874 824892364 287763161 949290139 196396738 875395620 429635974 933267089 69890355 139374113 468366369 526151624 592717644 969727224 247690274 447595205 428745710 583273441 901560831 917834827 517705568 959074154 580777091 905332681 680312760 852228946 33726065 703998789 902382358 910291450 652647122 960770787 86261835 173977584 367195638 828619919 478961619 606336187 373039412 471778294 892084013 948139921 885306038 895286243 409613214 445486541 707643871 907552498 662336329 773006807 150262421 387616030 698051390 845075247 781881620 841440196 163671789 996911825 795447362 968513278 61497639 695356536 862752871 957465398 691406926 844716309 136529581 708695915 129173249 693573202 806278780 893847029 440546781 756732045 405922557 920879183 649035687 690045330 626154100 985331208 615730525 735470135 452460381 832738449 764765937 945330665 155215114 174777155 205981858 546447133 552895443 954179956 464858468 894146513 891024875 921801519 504629100 988677653 575322405 633757103 549189301 584027688 329704558 649825025 611639301 745179942 723512711 957828708 499102461 764162780 567577521 945305255 157170537 809430998 454589250 476186794 1740073 727926645 83922609 515404744 924891980 929645176 700250884 971304423 50620831 646399071 790891815 851845900 790190438 984639838 814021021 962858538 515938353 867849536 179178537 395430483 538511625 730099643 569439807 990533888 697639297 992398146 715007720 742756718 992258956 992401293 998736679 999839680 777578859 879283302 641325027 891910639 668570807 979426709 448280576 941746374 957212570 958152336 223249744 797884794 697902861 743944574 988993158 997217435 498260625 702796773 679038455 845826199 545232470 855886156 685859697 912614095 537658775 969832779 439976803 998831434 375958162 792497543 150568934 164507745 579234374 643933693 219581472 872276438 300138227 389616362 155774998 970540010 212416478 943199215 725382977 925512752 795274717 797247786 860645593 958359894 61282728 359019653 824174697 913109251 224370642 686709690 370549289 799549925 518234732 574969530 865869172 919709022 304167905 530145851 2860123 745849366 770185070 909567417 100488027 507304215 514999413 625924790 290447677 373246387 666913430 909287118 514180911 983983322 410193821 966359492 244008294 317688944 331826774 854456856 205127667 833353897 594643810 998750107 826463178 876726015 996420365 999684218 392815904 932924399 952661151 958784376 476514331 703502939 724022437 850893576 387770028 911469852 886548728 957032081 929773280 932203529 760256835 888619064 158996071 214288634 799029538 808257132 855165130 982531369 271005891 503936116 45778055 785536608 693055894 780171778 296138151 680163339 501437769 920989936 233898379 659516102 39003511 249616412 281999323 594708570 471982413 502570560 407986188 497327380 530101786 645632653 436444990 910991045 232237284 982103267 331642577 641756068 119664302 509777280 933528950 974462317 498268663 780673685 808551366 830111493 962369057 989057866 214176664 385500833 267319229 267628333 28672200 486234762 944112594 962793748 24057561 618398439 664093298 878839280 298207825 852462966 17705504 610715555 368439531 405536113 868772512 922154011 994610109 999942601 416466808 796957735 578256514 988524563 521928637 609383775 274293014 468208205 915446290 992088185 307645343 803996603 380643731 810758212 814005200 955985161 554796189 795947470 957271548 983800816 32434937 204895896 934093412 980512338 262726451 894314167 225089549 455567413 114591726 472472611 206254754 752412525 607484395 648955460 333052893 672887413 370323914 980513460 580323834 867517598 492616717 528999094 265592617 980368675 617308168 697394519 355788246 410543609 915182270 967839192 563823086 637866200 569482354 806587310 106631345 255487471 729024913 937017642 109515204 739295396 46448391 801226384 408989081 756649508 972336618 990156010 731110302 848233185 377515967 556695987 2276456 320846540 452869222 913047212 605082264 665730325 609587890 851466710 555254459 891929378 104936256 724295536 765607460 976273275 149770344 316370889 21788643 383638617 647713135 744746115 54897658 244073058 504114563 621637851 830700 673288085 755084267 895137232 424977511 762107122 304235436 842709092 589656848 921488131 438026913 801574657 385430339 535267152 554106132 667482912 187153154 740349922 798970530 977379852 738525898 956800909 38394781 482943429 247563864 556799048 866302664 971352870 872901814 916448848 139695481 521631000 685320988 738481255 331140937 469054152 104225133 926081897 458368813 651772672 975624600 989275071 922224082 953143892 736053176 942892606 286906495 373772461 755073572 856966006 592125660 669206598 36902073 603142404 607352456 711798853 746394692 809998505 758497257 835014497 656130452 913309785 482733411 527318709 958369433 971694319 839619501 981551427 844552242 937949739 808409491 980901542 29577950 133602697 757730866 778102061 763229380 998533040 379302500 645986156 706636514 900599713 653450113 734011379 925046816 949467062 991362045 997567315 617265070 863820274 252748759 620891667 380933096 496086477 272291887 304747680 638347510 770940444 58386744 461390044 51873307 860686778 238068993 377818062 667860706 768755044 838579516 917994593 669437234 802042024 131388546 725813880 251771321 324677572 456026550 477104643 449971129 896663036 798668554 952463448 518073203 759955841 120763512 923671115 610306221 647227837 362341679 878426476 388143596 957190007 955238543 960596159 916881036 960524414 484567480 994517727 110546492 268293793 112680643 197446567 212096723 774141954 162760679 347376329 91988988 933643730 57133030 505683551 632021216 911327475 940957131 994907511 85621326 393782670 299333884 317154567 30201305 984970796 238953717 374156351 745802163 893218694 322890583 716848387 75630349 495404314 320112105 950460742 246433093 372455827 920545782 966209780 484460389 509789653 794138379 880938571 737871457 885639846 10688409 472907563 531253616 820101958 337728583 518603315 989481278 993535403 28978437 783795814 259796015 506433773 162231225 741107055 550471731 982618589 375603926 821655162 914866433 949190201 507687180 611400606 576634650 706055785 787041884 897633429 328542800 843783161 148530993 451632105 181616675 929133546 910393319 929635100 935765189 993989362 199085523 502993461 583771460 837030811 919026775 942529786 886439096 969686504 606181071 787249198 133791933 348289742 329140668 584853594 926731577 928383597 818001261 912915517 904553041 965150089 851311260 880423497 42921512 616486730 411993681 747055297 527547602 822870915 758422671 988974265 798780895 919139552 644553787 665361713 891021288 974862398 256507629 838878383 346432606 681024047 826667017 920953604 270829359 354517052 673231534 725226236 837466439 854534152 560915928 744475372 445867624 911521961 659603911 906797802 474502644 961790949 555126457 724391108 25870165 201806094 280176156 415920167 563855935 646755284 214388087 700614502 509839820 891636180 643904565 955430138 362876463 403472609 374324587 548411079 400036892 634201066 686361887 831919550 807695269 914379866 492105837 877491515 951415121 981315519 468906538 646255772 57052866 266276619 774803273 802864844 213785186 855922513 648032333 910714478 765059788 986066920 235283653 462684931 381826111 927215780 4274069 538609393 474306415 943037264 335099694 524461243 757418726 775903967 262258597 849766100 768578358 922373200 125121350 879918236 89395978 988168420 727426680 902166758 110306192 242125061 553017083 719717424 989965513 996921558 219369940 384407073 859653445 962470539 8116215 637202137 284214653 826197452 751337281 916486906 8764170 505122511 656536260 946812135 53911529 79641411 718464162 865024672 568852372 874121215 382774882 733002026 821146047 875794226 645277231 958431247 199050106 708531756 119972965 783383074 505911862 887244474 3653825 295934170 510150852 616107947 963655595 984460933 876420487 978780044 894810296 938105953 201719566 594956691 742959911 902626005 918480791 957694818 319312205 775918513 442129781 506297499 916399918 956057241 391309225 867748719 446093145 707176876 906999443 973823170 469944351 676522628 886765517 980451000 286260382 780732907 740114173 924862975 763442388 796057574 806489129 991416347 213084191 798431132 238262038 760944893 611173443 897134132 364275862 793643077 276138381 599994505 470789540 486539485 479870644 687903026 915865872 920684369 433897378 697599500 988582384 996955643 858577997 987920139 164600967 797456311 802571375 876876510 570601713 650600519 540682015 595721452 217715670 966010255 698045101 742892156 391149170 421722337 477129151 825273627 384220409 642619852 334941158 423179275 597077691 866180158 764516629 782244219 750873632 968844734 375482979 388049725 152673918 861262833 212717432 613628892 2077810 103206534 115238016 603737503 35833335 995917591 869932973 966078343 292907912 788419311 273814232 524173450 939649103 978877587 135800439 163343846 455575379 699622704 621947803 980014786 424903501 710687087 897609494 986398008 440143083 759110884 563741017 826691483 715587528 901048467 711184519 736211471 170000624 308421627 814773307 910418870 133379965 462875902 692775999 741735069 276045379 365388576 63072433 962122488 747186478 999539200 339648755 971646871 313779584 535959795 531584405 540243062 732863511 787683369 513681059 647497005 421903527 467510755 606188988 961241544 6835520 691444117 922111868 944974743 539520893 773359255 77637977 362099776 363237236 644482129 257028676 374257047 172744500 183076096 203543898 407868073 144051426 829174896 95525456 356028902 953030380 956707390 926091276 951502078 205429520 892707653 774818734 993568914 496193028 937127735 951302353 986368122 795008153 892789830 642792067 767019342 363628987 982937734 830770736 917539395 672868172 855763396 757166867 776063918 778095509 802261893 741663480 999865837 296357153 854944450 74195809 409680886 987383256 996096104 767317121 900007451 344618896 674273773 741767603 823339832 842611407 988339037 246547839 549905634 396381052 826713001 299749716 459749272 288468426 524863814 292120405 650752213 550602789 932153925 388163887 480029227 679092927 955898133 83928792 690975403 739228196 970133272 751202053 819756887 123602956 907811216 348100797 976156627 930944891 933641673 168347596 884608923 373236310 980808758 426623999 705967500 896343187 963923281 739585948 916200982 160689304 706084075 270365015 394250593 53860087 594628090 840482224 895884733 958999763 998945684 705224404 824195986 977542359 990444416 55956806 186351045 371731025 806100079 843502793 991613177 206181788 686808415 156931081 736754661 912233614 942108948 425588957 904045810 138272327 823068358 870419105 950357311 711999304 862197340 706066018 947126322 176547248 957129585 761303677 895120382 624006921 790390903 413107216 448988371 171997363 724194958 931711706 984928065 810865744 864580922 304325760 391948265 683652444 698546520 761914945 878360188 451908332 751515868 574544555 951084152 460822742 628793370 511067264 981289082 293805198 819743546 193376034 548223788 585534138 666906631 253646783 390327984 781172472 956118073 699421767 710841789 862716385 970993762 406127189 642705762 45071931 135205518 12801895 905939687 335555978 382781400 621414288 767508216 953218180 977930989 252369401 486009404 212585736 497935165 749705047 962591934 712297272 966135608 607908592 639241991 764205878 820884577 649696710 790595021 647266577 808563072 753737367 773474397 741531622 912141573 114711029 416618977 495032019 848185236 219324781 959741468 599192671 871886195 10103830 954919350 470303439 851571890 964900664 991726027 442162064 802452817 453701838 909618794 294566440 556314216 566697771 658801437 666441262 892909718 41392942 608178428 712591003 728281573 797261657 875355375 428853953 895727398 316909920 668170441 104883787 264339561 264954522 556275721 112140360 674543036 715314236 763703860 737011956 930679996 429253279 767035975 751138459 846650818 863430872 998809016 264246128 662383178 388881655 842275886 864552332 886973823 973433766 999860621 274049452 347807255 575000895 922172785 232775047 561590236 877528500 897637278 566954770 721614668 714032342 732139979 148661309 369356496 296568443 641194862 390972552 487331655 703055166 736767698 8306416 636877751 687653784 765955075 227411732 568286042 60542166 736980264 267295659 702418270 604239259 815304631 818720245 946847660 194479589 298731313 448333094 777537363 908150422 959025671 349902057 629957134 350011036 979756168 280179749 928890743 742632329 888549163 293524945 462874805 480976984 680237561 745955682 775855164 44142320 106072742 170352737 217418591 978660915 984529866 402203584 623874740 381402799 713868248 94713762 624988343 550779729 715030063 900983432 942301652 911787705 921314449 187678959 328502492 380867090 820523295 277827169 575078431 283874946 678982319 91438072 520394824 780468207 820478161 161259199 357335632 483971411 634580322 268871580 533613909 955874340 970811654 18699732 965588449 645807585 830565819 475108501 676142580 675894275 882929701 800898522 985564598 14090401 937082411 733719245 774756783 486399819 698685924 496887585 510567517 119858766 126362326 127008368 699707818 436092487 884065720 159491394 241025351 756490779 774763108 782945768 796287957 490587987 527708855 240467730 432475320 656067882 985916052 604809160 867854275 479510628 725674662 760624964 849054478 871237794 949860448 322637837 822657895 988559877 988793141 918308103 975460707 308069439 944608308 453216781 889515161 901536198 999600621 365250179 507054407 854776567 872440175 937741581 976300531 109658278 167946534 128671014 240804029 246770684 317883899 86592519 111967333 193604942 263372853 441359057 731066140 354888843 717696973 19084672 282879590 795596609 906421377 604148137 704011054 778000120 954901994 113729665 836935581 515819908 734872345 906959912 990247073 544272771 907722134 878937222 994748609 233328559 789392128 760247709 892412111 70591182 231820430 602065317 650090954 387954189 784290649 745723491 952519150 925979012 951842875 49591107 62065911 239389456 580748223 569582958 654195415 289515563 387358352 754958985 893048667 85986874 918240481 48960890 272875237 181984323 485577712 66273122 276986313 143767542 168145934 70339188 867895567 401154846 565745020 162402253 777980581 117959426 405319283 64674265 871883431 592821785 960921473 278913216 351720569 363683379 367095282 887623844 905522754 873102282 937801218 650683285 697054581 604477062 928505809 154739584 597818842 672509140 790009370 441969260 764455004 390952008 550303347 985239480 993330319 583016798 827247414 637112279 820368771 876609461 950829299 214864570 579073851 710686166 867543023 76879115 440268671 591079619 954959169 401470296 988520908 42459594 173287250 335122301 651699057 983752238 995954630 803278636 961114806 124982463 620260921 701063931 947094365 77676507 805468174 578489479 929326160 334534983 429390887 549734049 638855922 54537668 509844625 131430252 235807864 866297725 944558467 360682227 659366570 421929581 631252036 112763460 386325906 808181403 916729969 98254902 460259146 819371158 951272172 745227711 878435623 939975782 969574947 833554731 871064985 131912645 737199588 656218907 990280246 212334881 726374592 817991836 906109494 457425046 551201169 123161456 883433101 217990575 260848222 613358874 847604952 757408037 919636877 23081500 216045600 147546687 532710396 346147825 454369991 697450072 881076426 408683620 948304684 865901251 982601116 809422416 973609046 35164825 201550507 832069836 969021729 726500089 791326785 732797655 815152340 244410656 499527398 885443998 979420340 329698679 970324056 447155011 749517082 930660282 935752220 24264787 146945020 726794347 850560134 671920329 995465981 705797024 891401923 22889276 135654177 726053569 856756437 281094046 798111602 752834692 884865254 355555005 928159829 286430682 521974736 7341217 953800652 411315444 711054358 524194727 970959008 434385461 464986999 313446836 937831129 261758257 611605058 639858041 937366792 796340978 956876194 72405205 362077445 592766930 932089180 377919770 692104833 820698916 890957997 656427508 925940544 826112530 949839436 709034439 915354875 960774102 965962062 962154955 983089052 670215353 960447367 791894561 821538846 907283229 930412641 857098746 872778461 417372357 472052595 422506761 760897567 627446090 682652479 633966450 935064530 18772726 978085927 539629737 890502560 138648369 226215290 417695732 675806396 771673674 985936617 759324514 955476986 348058293 624506880 925503210 952583633 571920906 726087623 394752260 582607897 717325807 737484796 491820393 506674607 362002625 853044949 53520862 87813621 792439978 942684690 345867488 480805029 937807823 954578634 923032999 942378814 837142063 914033511 747680039 819774429 40100938 677826475 444934006 495221118 63235538 315895827 58875234 772096904 201699809 552511803 617472063 773994611 20577985 615004352 237087604 544266277 296149278 757837481 630183874 890209326 792045198 809362213 142916007 627678312 520257501 924458757 471651259 854700499 176411375 875469408 103751539 178388538 961436980 967519032 72160770 408494588 76531189 800255887 987913461 991739406 367981400 621045227 836287875 846690342 14412673 250837832 334210041 998727849 959551090 968727989 183124285 406990606 719204559 919071942 556012754 973867004 10027888 770212851 288030923 683302294 677816165 759889760 559112284 716466282 178702321 562280959 836125895 974654378 112038161 834373566 833442119 981433833 904157282 965018273 193640363 636879742 714869563 836780786 488876642 644640902 370173023 486897862 772679492 927396669 831953664 888158538 72097656 106324910 300511886 420600398 897972382 994744499 195554405 723441428 428169872 597550361 341733907 492764307 753075181 770141824 967047669 986330147 874325776 885167443 80369204 570459118 884075945 938453708 482473266 613241738 221589945 407805155 353840945 793909635 806125692 852622797 79481044 634242847 736095204 895651968 49325072 398363052 113416294 974009511 653333111 670910137 862610780 978687066 132558199 816828670 741383989 926158901 106771834 733503660 792471889 933304197 913176930 947655016 694877078 843941369 376754761 593154441 87837175 811956369 91206761 963391597 919712811 932620168 310266932 459181334 803631399 990957608 892239110 934422597 627981231 641664729 403310969 648007505 263206267 466236423 758237513 897320447 242665356 721052706 527617637 778538406 909523107 992724757 552291548 940259946 317614278 931746721 334334982 770666181 697898050 896319613 558514090 919398108 296949587 456936350 537355916 772257510 279557793 552944277 630274875 957894866 66776015 72377627 44643172 902289227 831991032 986642089 105372797 361257426 31930730 345026294 562831474 698398731 358630009 358690245 963142471 988435777 446592448 949336335 285865580 975982975 536072100 649611900 212295277 977419162 189140037 832846737 695133466 698485221 861245744 894555470 142475783 654344971 972465235 988424553 121303593 675323237 455181038 619246064 803943885 928650384 765289746 918405298 814837436 973253487 535348078 927334563 561013853 684885645 974048999 983519744 189436433 940607385 276339700 898287558 5868725 29287217 266833418 715738477 826029573 847166282 165848991 183647044 781115804 783741817 62741356 91781352 668372120 925077535 639322055 761475615 971722108 983760406 802870210 888493891 198092164 668980190 304336005 649198664 937975245 991044778 532670061 712894175 991753780 999492445 532799065 783875458 758892814 869540832 768231877 858288936 374077326 811394450 302041808 549779665 689998028 824695757 68714081 533194342 128960486 424619525 527734537 602982977 163231587 707538278 21446304 459744692 535858581 664979299 695422946 800934308 617556400 809732919 19039978 992475862 829199513 873905135 965617538 974775075 212317897 410200736 542181867 965001126 205949401 458599358 872103497 978189225 875553571 956135556 4512768 117048567 958477667 962180363 682727195 713886504 619622186 959789095 754716523 848656633 600464859 976180018 834294011 926847296 873483438 891047195 668694821 815186563 52656023 252828342 761086631 871731208 530921733 588879192 633092956 840569205 976635910 994647619 619871316 841595729 259991874 738659233 958896963 967325577 556337862 600520583 149954444 174602270 795619345 979092278 842532364 870304392 124273021 718893817 352362641 365055241 94113130 483761671 192653147 533507596 240813473 524606725 855996240 869384654 675586070 884221798 635659501 796433639 395751117 972089600 234430216 303036399 954459644 985001447 271460906 683894765 900841079 945358526 114986189 730995630 544798612 897953180 890516535 895754447 903803348 957458251 351421516 673312116 837267407 954659894 837718059 839068062 653377662 772461511 290364153 712821005 538764553 551130422 868626807 878995855 589027568 690535103 777734954 824870700 293823807 502587439 559061188 753383846 163143819 925647052 160466735 982276345 818837419 821523967 685642120 739895890 165924763 417164030 216104175 736654735 33210203 173626088 611857450 917656120 427511792 964264666 648187006 980015587 522640592 843920528 873021910 881532055 664672745 863978052 121861639 301235328 551296956 841340865 55722590 393843380 830530873 883299942 332874437 897003104 288647509 365616566 321410961 474264237 891416675 912361568 338350647 999194096 813769672 870935259 646220370 778961443 239384193 858366655 421199232 950973822 241914296 267493993 862900915 918425205 379695930 676330389 545838281 876617626 839928952 919704178 700785009 917050632 565651530 706878615 146141833 383254695 51863431 314693130 684967830 860749686 803884800 888546078 383447760 487183555 368096303 835413183 616809632 625876936 779667567 903472868 442476573 702275175 592998634 833852267 168658233 454337618 416228818 749108241 970561179 980661563 614756691 649176471 370839700 827493293 312389078 818264312 984882504 996476222 721162165 916153870 847682251 855321472 860307095 934409601 7697286 741604880 8763504 778165153 72666652 470288244 689541508 981305455 394129874 812311995 607368449 666114518 392710627 457127177 212592199 839111977 28321063 468042599 74743224 142743705 376186760 533901002 964652027 981296550 297585279 687078631 652279558 935404861 138247081 402091812 448269651 820196105 592310943 688112033 941536052 974906028 820098500 956703925 52393010 466758139 785679871 929886220 31841693 278204573 387347893 654966389 556445768 642146768 914700194 999141187 199180367 611874612 285172690 754486311 671198943 930698729 310682031 762792621 458004322 572889823 18952852 658812406 843567987 934902345 973493406 999213916 392194783 740001714 574857805 948233140 760467112 790978335 897925432 947775262 341671047 825061226 364683261 960474772 60649059 853325766 552588526 612674823 666747065 888817791 958986202 992015886 690351636 761248945 27569279 342414881 965001802 986501945 931169647 945093904 849847325 883232428 51656193 867601584 792039915 996166567 687197886 916295397 26536038 786234287 205942835 727137627 479143338 512273904 256378158 736693658 604598254 841695526 652805416 708861346 874820128 896287134 270254404 558726387 153361156 373391839 599500197 672115850 446868345 881743293 579565557 968885052 366835072 678764102 918111315 927466058 63095975 668580901 656723339 974567399 892080324 992668486 910218278 916180655 772032694 945357677 468116901 604650501 369718824 630469265 140543999 633830813 886089717 984457123 624588798 726911013 686977118 862618904 616557583 638573318 835063749 857280616 751853918 958431397 172633013 674235150 21982 268840450 389245062 610225919 46759107 114293539 16503666 941839322 619956668 763692936 4122432 580732531 426284109 445150632 770031675 847054964 919740978 986651873 498618220 692564710 72989183 571678996 49461961 526771493 181795348 730364246 155506492 248422088 300520085 330986633 170527525 372862884 21366712 719591282 513416005 815888298 270791364 950641427 664024637 835970875 68087467 535988633 612242066 986968563 513950435 800482026 567077343 584714279 102291299 979525245 959272443 980855294 624310754 848160105 923272095 931357383 902017577 956665268 175286831 281222227 547691697 638075861 844070256 873169262 913615824 939651844 613184602 921219498 926312561 996362158 799142607 980418324 639331103 787158629 415043629 782995270 426466412 463591189 68937616 359064019 850059239 967739297 925873350 953620109 768391456 970008730 410749591 470362607 648383352 741202953 504907347 961596457 985782355 995954750 620806324 767813195 164366269 646551729 539494113 603089635 409238040 993224303 409856179 431091428 772219506 789817398 126127144 812365798 525086961 757795852 28325819 433093299 411690391 417684715 10700553 976506618 851895477 873415885 116167197 374942468 412943260 469297459 514546752 527553860 238919637 967073644 338392026 375359989 913932456 925599714 850940699 857219733 317236845 436776444 474578310 589497974 100010283 252605476 164273030 792266758 940445164 996814994 715158011 828034335 465610789 637525452 661387171 948273797 988215778 993273373 260475136 282122425 713493551 782287936 966330483 980859765 36870709 944047941 625385372 931150973 144739188 256146929 92319054 464713145 786606912 988183856 830475694 842092570 235812774 666079815 313348755 738970237 631382002 829423633 88382946 268321324 603196375 622505389 31256330 212778277 983625966 994228745 687066755 959926796 930308379 944619460 791802043 925308284 342448492 881115323 793698278 971917047 100406308 866487499 187222402 784404214 927684348 949514938 1564515 978173690 311467338 932617995 863078635 992992438 691975854 840500885 239968052 286243797 270978416 801539936 932142935 991684545 205862424 584412420 307896334 575371544 898602074 936140809 615119441 752961096 683486545 951794862 417009347 650041174 452679698 787136043 346544528 592483733 308781031 620727530 624131917 732644747 95467941 735603942 745740887 862893030 954839003 969087318 744709950 832400539 69458177 580051610 276805194 307903047 792507190 975874905 315750613 940091331 652984142 678311105 948005954 971065186 762627227 959736087 419756988 683710109 253630401 333915743 353141724 375834656 676867108 854848502 651872844 747465352 857787658 919090647 513601987 792744285 122714466 736646633 595059993 737614466 962431178 971802523 777029415 854750989 673069497 698882077 795923116 885640172 372921462 527147378 543507159 683269467 901089059 946516992 515620090 734141599 517404595 814148802 678964031 978804885 5806615 841835644 702587963 757611988 514748712 939251755 726767098 977829733 366470492 441297096 289969884 446486718 205320911 295745502 956252295 992489094 701460690 831002598 686404707 888692611 351778576 540560029 349901875 973818437 930978616 975053594 796668179 815318376 352071005 615445438 73782052 757183714 736277447 969823864 638672662 828854480 57384313 802309487 242058712 479600127 933608689 985755403 388755541 923563269 218976646 730830710 257738814 928312512 150774851 181059492 679022990 916659039 624767607 991368135 994396530 997845728 465082978 852744760 559937853 929833950 484707710 500567114 814096387 903685911 600492353 976200056 344594687 723658325 745916185 768410156 934090427 982197091 744110663 813108247 644790930 705475881 616050466 888110378 252953458 617027110 272903380 589409851 832940459 984027926 836761922 896827408 471095731 713991021 718218258 890946763 802717634 833514658 622990815 770887356 47340885 589259269 234402985 252675613 6847017 438283427 854870353 877259628 446237226 597486011 305654873 750229521 961780975 964809070 658280953 764907517 103127324 236222981 547771037 919901666 309109115 617413079 867727129 986833625 408757537 981075459 343842234 406143906 469220466 531856466 882312084 974527454 279558513 787103990 428660521 724707142 563443262 691464722 639358435 947789930 271511894 828607791 251570925 389840080 964176460 965945958 998252460 999654171 946330759 950838929 127885525 929452500 575670044 786498520 540277471 602859071 860521459 906493504 425814736 902726589 573121182 661338670 67773576 858894734 461455452 627963074 565968758 863960842 36301323 533616187 782433005 829826117 450286521 560797637 415959280 456814450 273223785 521780478 670635201 712458593 640541072 788902217 382669275 663734813 18100543 953270036 350286262 899734128 59525284 370702193 35223798 450646711 402693384 700991005 400878351 616611706 223729303 974675876 373493698 652304698 505778783 686311395 967335955 983187788 902989082 929502510 920395576 997578600 910575669 959252158 711923113 838150731 487078463 972528121 710657043 949313375 924188199 933347605 370359244 981385558 641068158 866289827 647885229 723804048 460757580 550106447 843774688 936838828 894618459 941070211 997740258 999388220 931213535 936480932 974732353 983185625 59340692 580799150 642907658 811894046 553944150 819303631 859411464 978012321 585426286 598630064 101583649 618287238 260030382 559633909 958318375 992026995 432848186 445596398 812972982 901178667 454691931 513615019 786981221 863062193 520280823 626133159 970630634 985959931 748240990 920644513 482378605 787135406 343245261 932046173 42657429 493488926 730022288 994501558 107514359 783787140 91184381 751791590 785588148 789593299 138789184 926606955 498665607 706208949 725167207 825323760 86005580 879946845 850514057 928858188 594561733 696588152 975799783 997607572 460181973 807503705 526158802 999279877 255096234 865131116 91465253 141705582 249827953 473409810 736922135 961981288 114433004 292019337 832314914 914196541 679192341 702805685 47925853 325093953 266101111 632657723 40982098 976028866 507439571 886644203 104004763 609890625 177620665 302309145 828358752 916059390 155220188 544355027 688658198 748869609 449702890 838850802 224196596 957481123 388310038 417104918 473107020 763880440 306696976 756771851 2470739 517693833 810098672 818592560 701644713 985439619 854881957 866825813 176945489 671517492 416619734 633052252 26810872 234485739 213681915 739032860 374513758 788663866 339032228 410008335 516900367 722449255 286630701 584928591 661547891 781952172 446834070 577903666 989074842 996406648 780436413 966981439 307194164 365036347 850570491 981379965 54114121 335096028 308153866 713151245 942653168 964266591 88234388 429958471 608717463 770938335 278900751 461191519 715722284 725536365 406984670 467806082 7263635 670744465 757073331 964640358 693121895 880892936 113522674 218305304 195784973 832161076 687977089 878480983 912825096 946348637 724027631 796839318 605249569 893175324 535446442 706342608 283991108 290048692 653148199 871235339 302514777 908547800 629427736 934444118 186374272 212991288 301345546 754344615 666291311 717415535 818239971 891791607 693514779 824434656 261293740 782786380 412581887 664427080 670358080 818364461 998513728 998782125 445601994 947089763 802667746 962804476 558526225 833562587 134398465 221767065 709450638 731929357 729035971 782882444 798403848 900764100 927494497 980445079 529187775 929556588 852366240 990869174 895536913 938718757 267836697 412177062 474166103 640296475 583668635 731747863 803974641 861121741 514320044 796139045 901575381 902991026 98132621 881822562 601529617 785839781 87798100 975928031 467513872 939746162 832393710 858949315 809703455 951644485 636094443 886270748 369424603 460016408 901846899 935958164 66162547 667208826 27268324 239370734 733960873 974997947 524058610 698959097 836854908 937073186 250095929 841688685 139706711 355097667 80810395 729122884 935703161 945402705 900360875 992835289 862620964 989944270 592802238 932454321 39859777 816065956 489276612 683929704 453975827 754005209 752050693 882137319 220146079 888726034 348018703 884751280 775085584 861191514 753350244 966844047 752277383 994511869 410450074 943034435 269617497 825281544 190833757 892521431 957348159 996350742 13918271 88143880 21174531 326356141 344864305 679986794 334814273 773628575 448159517 491582634 378275287 636229125 812362355 968881829 79210824 928603739 172919413 248585988 358376548 389841436 621413569 853842382 926239829 935290583 657578342 688277333 709108948 747601835 152119295 801468893 13811378 735488549 572910556 982688861 761510702 991496616 405895637 617905410 325947657 670921525 123740580 697173899 351334090 650397802 55964292 541474534 9870886 919862880 876126223 895621996 144762918 540850467 120859309 785980586 56798376 430089248 907503425 919416076 842523879 924609655 813547646 949013357 537564658 659230431 851100305 935327021 51805507 740862009 524839891 677210222 463713717 803273404 502554943 555373768 600733427 793817946 232946712 756117340 756019664 905052796 456324047 480280075 501537516 519379596 402107763 703226702 114549485 748063008 721765528 730922453 141474226 988243898 621441472 793545466 444595983 492364568 589738864 636056232 222419573 377852358 349670649 519380180 658546339 893799881 983184465 991422097 705253058 800165458 762049882 779906747 775039302 983668604 678359962 962306441 51252497 438929766 804380782 953704903 679898690 743242830 460547043 495618627 616252685 986298903 46322714 830780305 407096858 639052866 298507537 755921318 308133265 615142806 845890257 936879332 87686845 839542909 300371074 992281018 685832128 816276344 526205712 779105889 682105680 796247487 538728703 891932979 420605970 948214979 721304370 845389634 869588309 990539972 767840696 980935487 215489641 509216256 674113540 992335125 849781304 955540636 319479583 785869786 686313159 922724155 936900823 983472006 830899445 895632021 177448983 741203557 628833700 994868899 378694082 790874432 720310820 936170394 442561353 672324017 687327792 853406271 373369852 826435360 293611454 338012629 946159381 983820926 950553208 958454490 245629761 487529410 852280325 996531976 196884233 782384441 131752281 500453012 959451666 998270936 44619003 403204335 388493750 503345894 874742263 940759685 251406765 543680248 579804052 587768061 312339400 616355946 803613852 917989600 562478350 743092650 735134926 998567594 612468456 868803067 810238220 851430344 742641263 772213929 255249626 403822271 913270047 918318356 839174323 867583187 709632562 839876363 390822883 813089366 741013807 950473465 853053327 905489969 82440695 435708709 674269559 701792360 230423173 753779488 905244385 997484448 783077001 956100798 797954276 999537945 996042661 997602878 846562599 899599109 252962856 885884662 861946822 902773818 812753478 923233108 778318832 861464634 813630019 837201928 716097183 782167072 459832491 780210129 410104917 797288543 693893478 887015610 181363355 743656110 662682049 757271439 398479307 783463638 805672790 864402657 405914651 854144453 574527070 598627252 946171980 956829706 571339881 810468299 164026814 193849320 304221410 627293705 760123832 803088888 898413373 914433692 838986350 977532162 993839213 998481429 619935331 794629280 966525030 968288888 807768534 919788684 289267683 597318202 877301998 889961410 240365884 508681951 741168398 888774695 237793650 293633533 6947195 421297835 661222667 923447402 613671620 804504182 659960379 940538698 45700407 844064538 593577850 908176417 735479524 978497391 222266771 375374379 326872048 642952616 800410260 913957812 633848116 728777294 354118788 484114517 507925149 889677895 225629463 916965310 425794784 654270400 479643985 698240820 554443223 622376365 733835907 827853806 943779735 954745346 271090559 787250442 183081927 586035948 930970653 992732116 903843381 940267055 371920936 981436634 407934309 935994010 92036376 558949349 999225467 999948920 937120056 943947786 357279467 913980488 657908692 753227824 340316325 439869155 788660 20154489 6306100 171365414 888323779 983450533 616764775 890934849 210503494 650107749 496017726 909161410 108462944 518217890 613370736 685761864 889569160 983577680 431989860 497066532 437462940 465199651 24701794 989483898 930184631 931107007 657413801 755807144 11332286 120806587 225971097 736573476 745811344 807766385 518875302 969446912 959365732 961916251 677632502 811773501 245959199 674075624 388559025 588905911 638638324 663483463 592814633 630060766 314659455 683207075 422828542 704206774 38484298 927357574 416151263 456625437 830287758 970383085 846000817 898220672 553906604 885781127 75104764 124124232 136417254 276634968 51808297 994815087 305453265 688349525 75135764 744316121 464463712 922545180 331742761 688086102 444315578 755596420 466159685 617059354 750689152 988148365 413497210 726584160 223681265 586751513 395407969 842732997 457434328 525225399 690545622 911947264 36980733 948774318 557997504 603265068 13876109 364486889 12507349 910031088 687151822 820419635 644999802 781851415 545784235 752834622 926015802 960687523 32720397 390996577 403881039 810536577 625062397 814220187 823467901 981634072 960635308 961769205 619396846 698725682 306769319 378729066 800658070 982181659 191954942 547707640 363349669 892335660 924099344 933204614 931856718 992757997 74265651 525933813 195429102 375174490 140046000 493043255 945392109 997517117 448182059 669629776 769332647 860283024 175748131 429911872 819533156 874817866 733570736 974867993 263644694 576888975 488297914 537688219 291117374 336984206 112844040 841826027 946046136 948625095 60814937 737607596 710294778 786416022 388053401 438041249 650817461 856085650 746371624 812837964 26477913 150240476 451245225 518828474 294952960 589656434 438514231 514105882 290355055 918558920 565095699 913446060 18519004 766398728 250782629 333615944 935863664 939333062 827108361 987346129 613207503 931765208 348668303 637376946 725762273 787855136 518271317 934854868 547410786 564035204 307644521 759983380 597704812 953414880 329435666 957486908 43459701 356698705 850225841 874415362 770923686 845120842 164446140 622668589 736850749 740058987 117740702 490520808 940676448 945004255 172673275 231116815 439374044 553489235 499304400 830587853 383811132 566147689 672923813 848870124 174338113 898608280 763356678 943758440 941918044 948802006 858638919 873209677 256344333 933926274 249742747 698017742 75437708 966556552 696717179 905265569 379225079 540384303 986771438 999481004 309515535 747957589 279708901 747851378 986842349 989671117 708415777 884907241 386439011 911040029 48664078 903356342 319274303 435983802 180911714 690230101 822996057 928248958 56896722 674533222 194942466 689795329 395981619 540938592 783870029 961584533 376721202 642053584 192476705 588966229 632481922 644314394 808987838 868836240 650029338 961649810 811298026 910629820 289336721 794596073 705661890 726070513 938761334 984061220 685373029 991886262 781309253 937586488 343258658 632581259 968228441 978278957 703539275 919684016 105751248 249332752 599364062 797431796 509805928 779719775 813637551 872401662 186204050 488267051 787686943 937948083 53931624 529265084 479366266 987947615 975541371 987550345 443502549 517859133 200465790 689551006 748324125 947996629 336418481 696779647 999872116 999893733 857154094 984938106 282200687 368104750 314914129 907960741 176418671 773243467 591713039 637327085 14698193 214944428 204276316 837309474 631921427 907339560 909565463 973385930 905486679 905591475 727247758 792768969 735619972 771316859 954226714 984181494 271328006 507610907 636455285 708876871 235786020 823334100 355422860 702184312 769440732 873961643 330595459 375285367 714976999 722830474 107865708 933061404 416366657 786093208 48436708 420663597 523688489 731535409 770131584 940652861 824497777 870569753 689989530 746763281 472423475 579114852 832120292 940599926 424621432 850754618 853241038 963106890 885504420 977804201 359474705 805194960 492987112 519452217 41285493 885760460 793661373 969732759 463613252 708584476 524129985 826392056 165103079 555301095 971135992 985544624 399644611 650238342 516373767 875629819 223942734 351559528 645944067 723743854 184713386 964111221 706195423 836349555 227001788 437393524 388293000 486138213 779568865 966436348 118046272 366350202 227582034 737918219 144650528 823362665 546313551 875910205 26273213 787092649 191302463 205571177 219942317 797226078 629543368 692080306 16922439 870213824 585151012 724813546 79467493 602848558 918110889 966317699 506413089 823861681 516402094 791961796 529674444 661743237 25916128 859660971 278011603 750840792 789123494 883912702 289556293 884214458 350055443 552941512 431686648 514890760 181908433 943309873 721769377 974973405 358852825 400263800 320889342 529770853 680173444 760500159 679616042 852988764 88437009 152221663 326960636 564610103 352870590 404747231 955975961 990032651 90863985 588532106 284421792 975773105 129802932 451930632 384627004 663432766 958736367 994204130 255750638 258385473 667992592 919391371 146697802 852477048 927106960 999697403 631833931 936598114 890120384 990074968 868199755 968887649 336366400 958847440 288958611 337344750 477593480 884435988 699592417 936473922 692910223 892999085 325176727 666527505 203175324 463510632 160805712 636055736 860226983 981043190 756285571 803283638 18922854 646557867 456597404 661935067 496410870 854228696 36105925 203867622 704080609 745174385 913720559 995535896 341495352 892526931 283269850 346271502 134789310 399508343 908651763 958589499 230601600 872769667 256223379 443776951 710049360 875888578 273582543 613394988 635077659 743636263 687265905 953078009 649241363 953908625 449879835 774282998 825433490 883449485 428913522 617429926 445451614 704395496 656727412 893766081 766747202 795829467 720365169 813937571 330982970 986025378 290217777 413299612 790888186 879577571 952609138 984986421 742251644 824665497 364642897 861904182 978510242 982851872 5061400 459099046 847137610 851694851 805952177 853094554 972252246 975044374 622285020 976855184 181662764 288274945 457202256 802905587 615703343 657972580 718750817 807244936 478032526 878711569 176404939 584388423 306802496 365961680 373220112 453529451 71710515 759867305 896681641 964304002 495699253 575482329 827274882 996380093 483059674 516785182 240456522 846922354 524865373 554267031 782448877 999459229 935778260 966664884 456355719 646431661 802241888 951456520 332824442 566956426 603082668 865634689 52520746 507416069 881872252 887498635 653159059 943517734 742504104 935683821 131352005 436596343 202360018 905811841 70831200 262281216 708565806 921540428 81906982 285895662 257737607 489622573 230703778 370918112 377805682 450955040 175844840 405348458 963798835 982796839 350798618 483180459 12470572 603228148 533289129 778259678 877967442 901752994 75808351 225271051 320058145 697475586 516023956 623951225 570180578 894328698 999402050 999984505 560686770 608217198 127101217 704630148 332444195 722885174 860317037 917055592 954307748 992743119 904555132 942870622 374619474 456243251 957702602 972027743 396191797 641526613 381863837 990815029 896854573 960874906 323173794 848187454 625292110 798625062 803575455 999941120 812448000 923018036 134350936 905260289 134608903 646283683 83026543 778577182 92769243 736526013 166096950 692506883 465119380 691925479 423641807 654455516 139275919 473852425 39818045 111746353 726652086 964824449 272710913 992724559 370837690 539968577 547777208 887347105 841168722 992917861 103994543 777347028 948024485 975828322 753267420 981240049 583861743 683393791 65276604 713735743 718852736 738813427 814129711 939816946 399556343 498111715 481015685 715837297 873487117 959323287 201488558 670614633 480179568 710266639 672642722 786015031 225888543 577209088 260751473 973788648 603375403 614452017 944123521 971955207 120786727 774127568 403247974 790994659 265761316 556494660 480661750 797109335 441948723 913768747 464057737 688597304 923475756 986195756 256579109 490052435 859746467 975322884 988492733 990205129 90688507 777211725 596111596 828020528 604138016 834445311 530612207 676812190 451187337 674363955 865311717 903575807 475783493 786682826 753106489 775655183 694324559 884782589 853294355 956156695 784937479 832281276 486870822 775225397 813487979 930710075 336480317 482895460 778968654 897537804 495308809 746324676 86608343 429538379 761369613 920830369 978463794 999242762 800621996 840276479 610807122 915989973 979532193 991575960 186614702 655773290 455212055 680916150 768049310 961939976 375674248 854069334 63171643 608975719 263239164 705532756 77284016 580696909 948126202 978631278 948443658 973740277 754023532 861920397 79528791 242402581 82350822 357214133 555014125 871518988 767396199 982345958 577494630 932484730 233991199 991833517 966474354 973906727 719210294 790753264 903981324 973470144 224509872 968256563 121433434 203184509 562284199 948940149 864728587 984081117 984958937 990784752 562750354 839782073 31628786 919670699 996709020 998382938 887792453 996364447 309081451 313560297 363781430 497680835 231455785 926790749 336598613 608631826 665944769 815668078 706667857 926697764 15355981 442455629 346497771 728632954 35843879 761843548 964708502 999477533 793686459 852770152 334978091 403270699 710957449 879478305 384977167 397121560 967331643 987541556 943509653 961910637 143075309 396111519 14333938 648741588 662225607 667937690 731580603 753894654 224639151 344551129 917861909 975808010 556826015 789824383 604704001 692021310 271890816 838502965 366551588 528296125 585249725 943852048 20591700 158596538 164308317 305728177 787313327 895682586 167777633 654789805 371750987 533212658 339714976 395776418 50078512 242292308 224487714 678610460 357239697 703670012 314867813 759473849 128227966 838527345 52394516 802270600 758398493 925310877 977879950 988408767 872471082 935893103 987588226 993898014 892277569 988447618 635162177 717066479 888016352 897731892 840715651 847250546 640328441 800285088 141519276 925277461 353311356 581932830 225339902 545907845 723201895 823017617 813063081 882670325 304530855 713465274 360365782 939689349 905810761 957298661 840430402 889133477 686256110 713645609 924936596 947125228 753256646 973033561 74555573 400913004 834188687 970360645 746095065 825494379 133701385 961992968 945651103 989439481 82753805 635401805 215494356 281158553 813960254 993003719 483787567 980546734 307384040 807777626 598318478 825081737 515306403 772097185 280012477 443210704 131246238 980216558 165692862 462794309 44766024 961673662 391416890 472072601 350836015 467764529 811637332 985300276 460883363 930987251 798905233 927818752 960494034 971352664 664749630 800677463 276790676 901715938 652129019 885834069 835874421 946866428 102800770 775510853 94835029 750112117 371285554 584958233 137595166 693628267 969444873 982810354 729898594 823883731 260726006 659768350 450237977 897817571 610417480 877482662 26215501 732033562 971064783 996043939 430489656 649072293 895657742 994166780 873874755 982781888 447939986 954863754 475660661 932221540 548370177 944614876 570058259 700373536 907491554 978145514 789136849 916306250 235546552 881052670 113914575 222759718 660220555 980241172 244793220 447270196 824069507 864191372 409906912 737738583 753564292 764008185 120859868 379907254 599457477 919786052 406407129 555326644 565771184 950457727 882146414 887528070 11835330 898670446 983527258 998967316 52459620 133599982 707803992 847300388 599812316 620467169 865927493 960652921 521372037 646123274 88083543 467774504 125470171 961805207 19269133 596726409 594516213 764066064 234113537 785445555 774061272 940021721 355464807 490160646 189429357 849487325 489944749 863385564 257162233 614485391 729502971 790994683 507304237 934153607 107829616 952367480 495550378 566959759 627464092 737090971 661263636 878823798 847098104 937040378 827848861 934823384 193881402 276884993 370262843 709239496 265699009 855858742 903193968 948767619 989306272 998234318 641496269 789666317 871301940 895697913 453353561 804399815 495504541 594737600 946969137 964614257 261397642 676654020 34684212 745391232 60491830 565438269 584417562 882265352 945315832 990762420 689994241 975596574 403583043 702542498 183494703 512212205 95341233 873133960 531091362 591096560 926190572 957650004 549067593 670327128 460406811 929603520 710802477 814491522 16702172 186489758 246585407 907056318 542303516 877543441 641899180 907375517 888017697 905888062 470178752 777845531 33057233 822773897 718903619 965145223 525556201 967240486 648882641 656475209 542737258 558991301 165658649 483286745 207589217 390302020 569223060 756945042 749115797 963596479 864536269 870005937 987819269 993442903 471399368 939250965 219723168 520791455 103304625 977491870 693357826 771739659 204126099 288188367 853061870 929209586 758735789 966369224 375347675 764182678 870197463 945883328 296285445 487296916 145005013 408161859 102958287 734445685 690336478 960334721 761403908 790500973 282855339 854577048 237916595 576818399 166799213 171207265 969024397 984247713 585155966 934342585 442097370 620008223 740112453 920348001 570724577 856678131 753664797 767592484 343021137 635671070 802836186 984880505 160774813 877038357 595060886 807715275 664663543 818908486 682404632 964620332 100415129 355343457 234720330 273508552 589422046 595333073 996472757 996766813 949940098 995945545 80758360 547871484 753287262 782512014 472879143 730268213 816985335 879457278 856423600 951571857 419643393 456954826 773415366 916153169 524003843 763599440 909619289 994722371 865274189 965570163 539551307 779845516 506317316 604636865 548217932 667973251 909410656 992505209 991980241 998440392 822041758 870837322 495313193 687092962 832895291 940829275 71948390 738488780 617053933 724189529 459864513 468345126 388525893 818409012 720536580 931442973 201950696 759257473 931398368 962624067 765558900 970176932 892682060 940517417 948454531 998330862 878675010 886197406 360961239 786989874 400732276 545988450 940883700 959483284 960159812 986185070 790429739 916241526 701114517 710435691 797250869 958006729 387750626 975790882 251768066 801127293 921557180 971967770 726280526 778662943 532792899 700349809 542555720 548039104 165966675 614974933 980773244 993109165 699696340 961817778 948204492 975033530 984607137 993755101 481646349 849842712 415765791 603582028 390368842 531403625 613194916 971629328 510878578 556990500 712941520 795513559 192348392 452843011 755734640 848163404 836185229 979427787 929138332 961315775 666308831 849878897 749731877 828525160 895885743 916032435 9512722 499387445 695303146 857862553 151715226 197465199 598564162 615360875 735944585 784382013 94379090 94648711 788371851 830561598 569648113 969633501 826260831 977092541 399703677 491642321 86135561 954994552 404390930 477375658 985572788 992290401 49774426 842284544 908268991 996301063 354029924 948940955 653731730 823232567 260284641 986224486 456864673 859233444 562382247 800609356 743747568 937363817 222116561 787295568 134523370 757314930 562709058 935610559 957604137 987038083 583331039 915431723 79521609 411650711 233162671 692073706 767054376 791815626 442993329 466101994 65330594 137975644 647621130 959085452 428842729 747835441 582163766 636814910 889947704 895676142 440533728 792797043 469201713 694826149 322318656 580349924 935801049 961083405 167603313 954683519 244983418 562199153 275600610 542470001 513038459 937530773 116895136 390894820 78490748 698965276 46308787 527628158 28841182 548999991 975686333 991871084 725478915 957022043 707650867 867038570 10940560 631542933 103006253 730313718 645836384 868210679 493300420 661620574 460118756 921448059 420610368 639764610 580735846 919841144 33829602 619103222 648771874 744303755 93625319 581843522 291852144 444289748 743067436 756220710 488188747 601092439 516507322 628337779 374373965 902090767 961111489 995459348 612219358 910342767 88626934 106887053 869911521 978842830 595165147 877773864 76419434 733079362 668409890 858099003 421844957 739229088 125445134 948281747 825890376 935380119 698125446 961099497 646271024 981113985 288960100 974421250 678217813 684563852 216443650 490267967 214086849 983763831 236864699 481457613 792067271 797836216 387396179 823818136 639206028 855735889 629327332 834529420 343830356 356682200 869137363 895483056 851172867 865180959 245755551 937429496 409196618 965256317 364508959 841417828 502941100 673396593 108262315 729378324 133516098 785767344 501471345 935201007 441009874 666559348 167452723 323679095 197198097 889461548 779686767 986024759 266868840 988858641 904622753 920741418 379298388 655805835 930634061 940395068 984962362 987380453 272886607 389030644 796686349 823018017 783256679 955458428 658549168 958577314 326183383 810171935 663251522 870200304 481864408 673036498 259036344 962622228 910995903 984013090 144887970 516909502 913649408 934073991 821449669 963454089 925739849 951549974 473564143 861349530 255254510 943444951 936272451 971925499 611679123 932957399 74304022 97575460 648896930 965121721 142684447 273079026 947069971 994392887 392572804 784530451 276443112 295997538 585233539 672390841 463676668 615413732 401719229 828249138 548037610 673002581 19649839 411110226 296505495 948239641 82106315 720800130 274582375 538081283 284102989 642182600 494910561 538014137 449150631 989328168 530794983 810926609 285154753 549422108 638689288 657148333 195906763 599088769 374793770 640224003 962808627 990233582 295745534 698700291 393980095 611439406 513316376 621740624 732461794 957921224 42728796 974072835 920389256 946485460 676512752 842990723 793528270 983460415 887083408 911281439 554251611 741303576 966485835 991307655 480428548 512605908 949108820 973582424 454536045 941878270 108373323 839558773 252100990 679556868 632731203 763971460 714361329 778322139 133247625 763989019 593690818 742356080 663884229 812735871 484805273 689230886 578088313 883253901 72942662 255434760 327819344 720623496 16622976 321794076 959361037 996335114 105627237 141392799 55056672 157359357 206872694 845935330 253865210 617732539 392581488 681054509 515978644 735221142 783951939 904455363 106536277 187823670 852008570 958070907 118453302 676480476 179535752 785351234 288205598 533992779 279135612 836348847 111680779 744984863 133623935 854567806 463961384 780477034 795017709 815245447 284242125 340247819 308669504 372691694 372426437 984263633 145987721 412677420 439434822 509770674 214971387 464640372 761887193 827561965 219222859 426301222 284828595 816119754 54599490 656155127 472365277 690582295 607536145 866550672 667021142 836367857 79743283 327566378 146516227 609567090 152851445 684308114 142227813 493383652 794536831 974752278 982775257 990360440 911053479 948323774 579323325 977244396 885799255 999845284 759826655 777148817 442121109 687445823 717138005 720158970 868689340 911703789 57279067 730134114 647026448 655643258 914226680 983968902 253220393 298545106 756693382 997751205 740601657 796789213 122552484 725810194 265470839 958226906 175336330 826426706 357904727 550497108 740343626 827936027 847103956 951882280 33425374 986221010 659609050 744529469 683369371 685018875 772666340 826444040 808264415 948958885 796534664 992047677 373639913 757797679 358429105 922714039 99082563 602652063 993809730 994576835 270025804 905847709 200673913 453521865 525329737 911597823 418951273 956971221 499579331 984122101 437851568 521911757 380560419 544632796 618279221 838522645 77634300 85843212 923538512 945103441 724551956 914531516 561701849 834455103 154947957 390283243 53640404 310540224 292228271 491090205 752794152 972964017 529125418 733976991 676983337 837920376 296182740 602619378 480766557 660012360 789630905 934057392 513961947 648237139 290034154 454107835 491782819 928222968 817005375 949810211 195322916 458022531 788293036 991733827 245017149 532348540 588957443 882324945 925306710 999505332 354744449 969866714 183004307 499316017 1997290 502361474 139023052 633854407 74197077 617452302 809850850 819116950 151158892 441367883 858890185 862506023 986402612 989121515 958818848 981847063 358870665 521263033 482610820 608076164 954793107 955835293 583545629 720844297 159820164 799538376 923498758 979550937 599528665 903002446 478767343 913155620 392520785 762179452 214849200 555925583 229471875 661269097 270388042 508850520 345727626 635853668 61347632 263342167 40177232 894738154 537997388 604519192 145147202 734191721 58012579 877735938 834066023 891627072 425626490 729784312 865297612 954455365 186031308 433718892 483406602 679762513 126723382 800244556 642928214 709261608 892397633 910635005 616056196 641709910 777424181 981445892 29455663 814373651 441668071 456951311 946337221 975931871 479588657 608769425 144404281 755987002 358585544 755512635 766295075 838173010 415755826 954746064 46179703 333129673 530485639 860327312 853267988 936039572 939652872 999503034 566967978 938269191 235509573 285335791 901545297 966281553 157379434 366261396 306423586 930221047 816483125 934254328 492185926 602877040 809269509 935435384 153942936 744850664 941828621 957599955 104084996 698341749 139930961 852150775 594911037 986338735 798302412 957360930 266399620 405285940 343003598 542448217 644310211 954202783 935913051 944941958 670543437 760336757 189705902 809526196 982548394 983666615 158979364 645478298 615779038 925665837 171110407 601281026 156153319 663080436 326162703 520804554 935127616 976148366 243274376 317612229 311803937 838835413 971680507 985059309 27875009 205057463 7932817 637947853 778751134 899006065 849533544 940378564 849377594 996054148 972781708 973540707 682699011 787201044 919498408 935366505 581434033 972723328 729699952 759951758 595560234 749445203 61797403 322206966 571271791 665519911 106693066 543041477 818674337 828494286 134285432 341148780 683145450 905519646 91610466 546176213 262289906 721837375 756141171 931360194 806946668 889738059 604813380 954381433 936458230 983562671 560958889 821533500 652821779 771089410 865116831 984073041 949917412 983961856 323829701 347282855 760314298 852246337 769194795 838011888 631024083 872860332 953454337 986601509 822332750 845245884 368894334 656068936 275674196 652095635 347674409 954619780 415366764 520279394 957314722 994718058 621922727 881415293 458138544 574218305 300369246 929859040 455079453 473453838 286746252 355769021 630907577 691478551 160248260 274595948 307667310 733467836 428459117 703607580 961219231 991244820 423483011 945993368 258748052 880116894 144559506 323783242 909740598 944983710 974334378 990087148 951161122 978197832 769815806 979888609 996092601 997856312 545535861 623566752 546108115 794909917 837006637 945679184 621590993 725149582 625895317 873653265 858537091 977105913 657392470 673678842 790233129 996348581 527048721 834203890 788543962 881154180 354859201 583665698 898528573 984513910 497081219 981560207 59273167 109189750 828536221 928760755 189911668 689923276 984774845 986716370 42708777 149610278 473719120 732612183 890263909 963989773 569370823 684993424 475526474 543873403 783555231 858501584 496983340 542900142 454785148 516604112 821221458 933733319 297048960 478336644 991616614 996687702 158052087 277734319 69406009 883792473 732474490 767881820 474667138 758241841 897715595 954934846 950027200 982266664 375035679 413331261 301984413 930352400 692468582 814908534 48998560 63456791 465467582 711771715 848404925 939205942 523772515 523883544 358912348 666246075 345173038 764167631 432563492 717638128 639861893 960152161 305958718 595542639 900516475 932807965 365949972 892311396 720713844 726416420 264063661 451553641 96754534 423884340 615631657 827144729 148186172 189888941 860429944 993229784 728946700 921584970 339210183 862807700 106965224 174030580 362069154 607991782 402306627 966061302 233427987 589427392 999572449 999820258 622742449 918047283 570199080 878257230 636926675 794975311 176485873 246255864 703449819 738966239 830997901 867568445 318058806 978844500 922197411 951246749 432845733 876207731 149672086 226316202 406290479 709276911 695755828 793377368 12821703 291007181 821202244 853016977 232757016 879984567 976744561 992180064 418374219 611452747 914611431 948710583 211636117 701390402 626352319 782059218 222444880 532577067 890745459 958862713 336592017 439162447 785297209 992254024 502865129 503285268 102853057 633597366 579386147 714953343 208744546 534457830 364010099 504714648 819891052 923948957 627682187 806037547 552304764 676739547 210425308 520465581 397108628 398725593 232597134 463137816 95006364 124248249 244243868 304485323 876872551 882072992 209649336 530611140 366036156 941108752 243693360 246512397 192556138 605715185 576194942 990447657 83713544 367981153 722446191 889427133 279195906 646355473 440744210 542996501 906772300 939417061 922980674 977821312 241333990 509998701 620927120 754021703 372891367 713402940 487163858 861824909 333485993 422621696 988958167 995902569 862059938 922130559 768081581 871444034 664772753 770314581 437413826 609451853 556762610 869992295 212581170 428179716 548610914 693247276 930918718 968425301 218825461 375165518 177244360 606346927 590463422 595275137 859415247 955904549 117007816 845234827 636169271 863734936 459565400 551332629 782599746 987548254 995221182 998378523 611257503 755404435 922423450 937112857 608858418 967697572 123507696 797468820 172660232 687186671 146883937 765986461 93196145 677388450 959195689 977445355 734929008 919917883 405003399 874436531 880680865 964388451 430341664 831452464 269035516 611717216 541551231 895583484 791812748 920433620 854543403 979530799 644666940 839071617 508774282 656160474 128562806 782797274 693615217 910914280 996064183 999413449 982162339 996090881 716279675 805296271 304255260 366928044 938839673 940560046 966678302 979981084 226013841 723333322 90094148 910086496 818833417 904528496 788624152 837028804 940338168 961804052 589803615 775278588 515207175 574434937 255765360 524048311 561624168 608618448 226052158 524009581 96149720 315997696 117368791 260688712 525461971 714551690 340837875 596047376 300678193 593586637 494369041 983696767 873840840 993809742 842458391 967335201 301305388 417931625 54392001 487961548 499724292 517755451 334116499 535851623 513021530 946380635 510529896 624186545 693548711 728640925 986031205 986427585 900696439 955855027 772396377 889536392 663545130 922437185 905395335 928175105 511343965 943355219 684885217 693249512 418995854 537522057 708760923 993737621 406558421 484399193 631268543 807789101 276806436 736887033 824537924 939574585 594660649 660289213 171975618 959247692 880332961 899295653 965491458 998635641 919268519 964546943 528833441 816849888 90098496 937478601 218330910 486900827 376547903 530521370 658989020 842247066 225596886 971963291 393719721 763864018 418666285 575830166 770629423 788457828 586869065 858419724 510066292 862739741 226471929 248628338 441142015 827820941 841166686 961048758 381557562 817199408 230911553 392131092 930559251 975010512 768712967 814239425 423977611 725550142 185612786 889407671 668291370 772865803 628173822 756403033 306638546 452510898 436199894 971554030 994610210 994624784 824213548 917633502 415254765 750518856 842627873 848902331 344345247 810691504 533529862 999605144 884352741 887799032 172042853 755313055 198445512 397220648 484210219 681131154 699156914 728321046 504122774 642480843 352101807 943312194 575627826 728228449 29423311 984830269 566937209 584126881 495857868 630523669 937642797 979317656 864080431 947847257 422094498 537084597 671310120 793593689 499099946 632811474 507420078 995251221 55197544 319502785 506955097 740241841 870770806 900971399 972906377 991499539 444798178 997916895 650347626 768687963 201467531 340752278 650364594 730318107 641879859 818732229 763413137 964568896 764272707 931264064 381394814 741052668 302626003 735183438 373730186 753026336 146994073 970078716 885550563 904295430 353478103 973640381 868511500 916510873 62689012 977766847 24537471 857486484 309652699 487650210 493152076 671228382 147286 659404955 905595504 936789055 482106310 672054253 39824445 275066283 297219294 390357907 962391406 965289892 991868621 996483989 608991583 857437200 648068453 960799457 866337830 912103398 260147469 863027143 806613534 894617123 792172645 842392142 367064139 532330073 539966346 852793661 326048007 654782602 673364653 828581360 893450187 981932107 246224213 308222791 482674484 926019780 752947119 857223753 501991485 538949458 47801550 811815468 943375345 992331448 118847184 162595303 964410443 979389974 503400385 537654940 391240435 914066197 718374326 978252350 940248463 956534045 838913965 898238360 618926830 645849969 971064880 999415634 604669489 876116170 505032476 906543473 219709283 467708390 883298403 921265516 906670647 974133819 950189066 998524214 658805740 819015707 452492112 762451534 611998991 831487207 703188617 991834461 259434925 848747862 963199234 991425385 129963212 619350204 989372020 991001294 237020407 499668627 845411818 960780547 983465130 985580341 645981962 797295152 307466279 423754623 969790812 976675610 398170178 417646144 398817315 437333054 854766970 871822493 178011412 860779435 177189143 283394728 464403915 484938180 776271397 824817087 487987468 963254588 784484593 797611265 462045637 971677191 871367704 921993727 794834324 796051837 293581418 442398783 386871976 452141563 457485405 511500435 942537603 995581485 572713082 991716574 242192228 459141337 660347794 767050138 11434179 443046071 615420334 783448070 997994190 999987713 863900472 894443013 220726013 805632502 540935319 838684960 379235422 583535810 408879001 755385477 767884950 901730084 205716442 941596371 12230033 672997974 773277318 985519267 164329488 976151814 823711217 834146504 541671431 932772177 270903149 872206916 743320468 902015479 7358275 707492384 580660238 689987096 864845313 957544517 411954941 897238635 913149969 996377701 256646243 959333656 971590837 996855130 611640369 797775862 782106434 782579221 426648101 808297897 487771054 997004472 295769825 902198045 670574165 929498073 383423133 748076890 706604419 965916707 54000893 655219517 904619622 947165467 842341576 982020088 571705787 967719697 471704440 828538107 173303228 907683946 42450602 646684696 791775568 922525842 34946927 932772372 777795348 877791729 273026985 948438810 860429601 974247685 135167921 330251358 471903447 693219397 301827519 897314039 985065472 999097806 323305295 518350243 973879108 979437121 269525124 875061216 194573120 235820738 782175597 966409526 722284568 781432749 26129764 615029237 26952729 200267849 428070727 997810490 480268042 694997676 39649973 721545207 424833902 830750989 7371584 87134012 718538124 912377117 900375846 984540902 360296814 681462304 840138475 948962790 103119597 549471004 494703675 938901914 43283741 455188411 758107758 999099008 164999733 666740923 438126067 699185843 734559066 900250585 538335228 612580265 121333309 893861171 175716044 869907525 124721597 334012884 903070897 997787211 808349885 961350958 790408630 974365696 202012368 758648333 821894479 858126949 798548843 817541926 449432401 514310509 551996654 609694833 2732854 751052415 313937123 868354940 655774665 837954925 364075716 864563607 803957686 972171654 236065685 837412731 954376465 973393056 602115583 982083628 888874293 963619116 469505248 486075817 635076352 704277607 489393714 504056948 132719228 697716350 847406664 875338661 37380704 779869510 588276604 653160713 424830878 518450870 527948147 935364989 761596041 977810238 947875914 961364862 135049982 258692123 250087973 279453870 136499153 379210408 35178843 311241098 980833890 983243018 326537426 402098314 979876743 991370839 913606629 989964815 999626217 999943551 277459176 954060318 889089776 998991842 593817978 805608461 758039437 998652817 816947215 900738595 37694813 822843703 603081070 983533528 398110499 864363635 883937700 920957552 522285437 752869557 398643361 670732007 395795317 997366137 949240005 990916147 215681961 635746577 776990550 788309493 12814467 34986354 483596645 693000171 459963704 716604173 258448055 318280986 511312861 870850780 808082110 930184972 832623632 881492189 466749826 918960152 242137268 537454355 557085991 832639216 21905063 930818564 882509503 998797912 118306992 727603987 952391914 997216434 105302069 994660598 375429484 845430471 574261429 919755404 985592053 992185553 837269702 921959814 336757234 886157161 336256532 740794592 972903631 999338912 518528392 759166232 433913919 490435847 695271138 697311450 103366489 318152000 437638576 666246195 21967841 924499949 768672866 964442317 696589842 863156304 217625297 232190322 89314528 620227718 941875020 957869638 598611878 730370874 875990558 919328329 943165102 951445647 110161679 625631028 139976874 598614872 508378464 787658837 940686071 989832153 374846406 680706389 912970200 918876359 345952981 634548718 892570852 997756723 370720339 486900614 814488385 889613706 198827207 875458845 819187973 953755306 963152059 982567377 641870360 815042436 458741514 868361962 801627225 921198422 274056759 335295573 547065943 966632828 463123660 798735926 949996023 986976233 292343356 334405130 780121954 935816395 408377120 571701186 283501393 815833564 387469247 746859310 261209081 789691064 349466180 456927389 826063203 860539433 764280362 843313802 590340148 599166497 362344276 745307527 385354623 445645365 196532695 720469889 366821262 436828681 192099626 773248277 46543955 229213413 984910132 999075375 982566273 989182557 612610043 915370906 556535416 819877592 448213205 457374896 778472133 941951703 561988022 777246831 569748989 821708057 405369837 717022207 107561295 560759017 281289085 698664207 36669580 752625680 97175279 694425599 607551264 765503816 892241658 973444053 575271542 957449058 480307753 981286497 205853635 524357806 840218582 940263306 698868737 729580876 781631090 798993510 630320119 932230309 193803001 804051746 585860520 590250914 418058248 837076427 694242160 827411789 105203991 865824107 563165956 842909905 988400367 993667294 586370015 840554550 610229352 949862034 658644881 689427083 95671067 104486629 488744969 893107329 502884735 871730641 859998947 928868955 193991789 322242271 549178623 817881702 113785009 402254440 465638190 813872364 600436157 824204341 747788659 830919407 47102383 389004498 958885002 995167661 255086945 954598640 703131206 910280685 732794807 912112913 175098116 390307192 88952336 496831379 402828797 769278708 282275646 546212544 572853644 648533059 671830929 891073696 390729972 727855605 88320105 689968151 895951230 960277238 950023632 986726191 980317666 981540187 463407163 934782664 617434832 882901492 866991804 990626455 40580583 422825656 933735297 946861397 650142255 678501120 494953586 882574422 547881755 950557701 95530295 95605264 766101338 962817056 200838731 880934717 423775121 846525273 247557062 267621188 497837851 955044291 8982748 287269608 497201264 585517611 490193289 855513319 854158997 952126408 745826854 851223406 933909650 960764092 76337837 671952771 54236843 772449609 91648650 982467989 735415835 771571919 719011993 853776327 691078102 697345642 543571922 915383681 679698296 829395069 631873743 709723308 186507314 289824831 844918359 870520661 769490724 880206423 310518588 899606892 782518692 985671666 323855827 962143991 615850845 665784792 277093000 452505025 873531905 926603733 151339786 936285554 618954938 791197594 777980269 927901688 305761700 884820880 504802720 992544118 751790453 968315849 1300921 213479411 953383151 993792375 104215471 412361685 173239797 862051131 962805828 971748711 968174275 978413707 372924907 869222028 987557323 994078621 613264752 634912629 282511765 772448999 318855662 568754610 807254593 980549335 105512497 745507987 772163747 859619348 666799288 777322662 193758550 352962777 947965759 961152981 407667268 455517237 370516182 985929489 642923718 919769685 527313877 894089744 24570344 205058640 539018298 994233910 371933045 710759803 442478000 813171648 755797874 790229542 768492649 985033455 469854279 476811300 469167275 502749377 397818720 964021778 686757161 882144902 911280540 961762956 803604457 856814832 669382943 803971829 875289977 907836594 846546501 998473928 435819708 694166644 489083877 585284800 6827493 980450902 506144830 801585967 274691319 806117725 747154383 870991438 956357875 985926963 695410586 783227188 20282711 897588038 690981864 693074039 219295437 652303069 556047515 591464351 207825342 425170689 634842212 877379195 140610127 943063758 269999300 648324933 567604585 868999587 107936322 246757318 101361607 703416348 542998689 745542194 183628266 965925830 120288662 471771982 703502875 869805682 547993269 867319540 310544187 917311479 625189492 779139697 607793805 697342160 334799810 767302971 810387623 893108118 281249820 900968611 541617892 700588685 905823838 967965208 200556259 499810155 503336161 632274583 552813509 695681899 842037340 886819433 325863266 825724577 835034068 857472678 507822308 549078060 765349411 908527946 305175928 981438116 866529872 914603253 960527882 991067517 680317982 718644237 215555294 433186471 153470874 227139420 24395375 474333822 955213911 967661589 852679136 930434156 417819465 461903803 984412258 993486797 143910904 395163366 348910462 630131422 65923329 735198682 962314516 977993050 853583748 932389733 735578133 818771599 736444285 924303121 730854824 791695016 429961559 531181313 996543438 998755958 858645762 945205675 74434916 920538378 540166179 722986209 391010496 507482672 63059422 344800307 177630550 329740896 468313316 882538254 86538326 300687594 114055473 470688525 508125552 939893150 601738122 776542278 674189692 674475257 173641366 243830756 392690528 689884356 76471917 977891546 862957621 991692703 317190660 932728737 34187976 164535792 966112244 982565686 275451806 546003986 830292213 870149687 186622969 264522648 130605062 845039654 849230426 890560052 425390935 772487242 485129953 677605843 766309801 771034469 59716040 572528689 100779633 286420187 309758650 716644563 632258840 800167810 250040304 819315032 10469087 190093174 153573989 264120440 45067086 74915273 461141491 635102861 19296573 987403739 605582776 796186532 837635941 994996750 360602142 940292870 914379524 996986173 811716149 955735481 526572992 618284183 558876681 888385399 309318056 386421549 629202929 762538720 804403185 992585362 505911971 709948679 754541081 843392643 158068330 681698895 312793776 443619591 743847043 754676699 400367576 467727916 577885959 881212806 975292408 992627313 924470161 991454219 389616670 994249810 799060659 847517365 675732504 885937966 122389916 682235718 467251116 474725958 244447092 454410930 462226477 542815517 403721034 526609801 218867939 959279902 608994529 872208573 62710159 804129014 822121594 876588406 266461364 688866649 708664569 892734497 609936536 715956968 127007438 244666675 389041552 946747506 625403990 719708926 26356671 497344918 821593797 822810722 39820336 559156526 712285769 813467831 848201277 874867558 334375216 657769281 169555894 194368981 836373272 944116028 953709091 973318372 326024052 654179497 359607874 414777121 373261632 790483139 181699201 383595122 809128323 992278722 51948353 193490686 707587322 869823348 212455936 471558558 669728335 718943245 807386276 962442044 28605986 39315493 277170707 387018267 990539621 996525106 979002564 990613961 124724177 782448502 388095028 963056855 564376698 762608508 211004830 892279171 33003289 310097809 218258779 860129454 187992103 664362155 715522793 933866597 504563319 826664306 552969353 942327217 450801974 544798687 9577126 736436011 833037882 880518788 823352388 908321146 751038656 883891994 390449023 904086416 514713981 822108809 320568234 633649190 708447715 787172387 631837366 641914923 251659448 410366534 600566889 800024582 226021826 739506790 736618147 926783220 620650586 693205310 550214134 874985909 999151182 999792885 171153305 222879484 319853036 625662573 663215319 947886741 768233925 830262284 277972535 727140834 635170708 930019003 558265302 807839710 965633419 990116950 531352922 822888070 204860185 358184278 346130978 702422047 278945192 734715125 259247261 637462195 749066808 757930021 411849884 892574190 975895307 977694470 535539828 974456689 916945649 922230428 424342178 674655322 789053903 809838032 731010298 950850284 480265682 496578401 208160301 280042296 653979757 656889080 544773497 710565442 529684492 594793274 680897415 913795314 834946361 940718581 586955658 670900761 218059911 566014035 537288992 959763705 300394062 549677320 382085841 734040508 825867395 829844722 788313388 789825117 879160713 989016232 327202357 684895441 410173123 741271916 910129972 977867623 387317688 819888511 131192855 602637975 426128433 851482583 849561362 941077172 691055316 967868724 813711510 956125257 17326816 710062539 263894560 874574068 821296105 836997350 283345232 434514345 203352691 207524678 957293698 982763963 983584826 994988981 442306920 501542550 24661258 716931856 76434908 155161702 384729750 545093169 209179326 800254558 877091466 976710231 623486292 792782930 526302150 777918927 708322247 744286762 529771154 722862261 516418543 699405009 433472323 534325811 581262619 582308075 534598807 744615645 371298523 951229459 774701815 981395742 633214604 881430289 730117537 970555853 178790795 584882351 123048870 218061932 36998937 956134975 407828376 568496410 782112329 804065360 922739098 991876052 984067393 998489518 666608337 955634741 306672652 731294526 774995452 781838159 586810340 598313286 120147951 686126750 145204948 809519916 968404590 973757806 705496310 762835307 170729095 725948340 726112331 936273052 435958303 763877983 459192940 888288367 232837584 535514268 197431891 243658415 182885786 873126434 658914723 737290827 897455513 901591562 678345668 702433856 505174353 543123012 64063264 125985751 420575824 735728846 82682887 946858444 399608918 893488851 695348509 951877454 657048587 894803038 381625586 971144860 927590962 966864471 817159465 886230255 285340616 626296716 812732904 813281196 467571118 971142949 839359492 934290052 321766115 571013958 827746419 986759735 82273283 434902595 748395156 999362005 89733968 241775060 810429973 826134396 433970210 913804776 323632362 785422181 477596029 947956530 692158825 958096273 207028370 706814741 254453857 689983935 908202574 944605963 540952361 714126680 178458015 918550267 469475165 886445017 589956638 964227534 833111084 840476167 409912795 689853847 795779625 969935159 899323163 985053848 620436340 830351568 123381893 800584583 204835094 485573288 452778403 825917135 707719678 833420712 614543495 735928523 751612760 929615100 564945765 571974683 282687635 887990240 829388167 864523900 890104981 908951085 559553137 625570171 864171236 927823308 323256822 336118535 104935803 594771152 76601043 649504243 885837079 951564099 231257185 998587379 6195909 204020582 871035142 895396689 815510523 961771994 518545982 564711247 174660445 318423558 741947926 798515741 609608234 794866460 499121499 769740695 902958433 924597452 589107049 809760922 286667316 518959816 349401220 356045686 904197633 953558928 975811388 988682682 966186933 992712959 998071438 999499119 339967229 494473867 704941675 890261197 516213852 575858483 675333756 732121443 54313007 374690270 471355662 483633233 756005938 973460986 448471987 784278384 997021252 998692277 415265756 566631648 970791478 978642119 49355082 854180047 121828191 771443891 832854791 962002504 714274803 791056240 359118799 628637056 951990663 997003813 772911520 939640261 873976933 942970511 206908724 352562259 484434459 492825875 541416362 820570328 963536821 998798951 219247657 457339760 315358891 610645247 790401853 994715791 292773267 325023115 4733286 699700940 200647259 786755177 34233005 721591774 131266869 933108180 396296841 673150407 719660584 881072232 624713055 724383728 989535493 997715889 322346264 899106486 910528157 933263712 562770101 960013048 153307116 360738372 641461466 777079317 980192979 987706801 141894366 613019419 107642433 987722707 501706180 982388729 594248119 935944100 282454893 418084908 903619890 991245300 921258182 950588428 288751779 539900208 841041646 941102221 414553626 498879715 697060309 917665954 682047768 970392356 702448226 721962697 887673511 943034484 835174027 873909762 333976663 778112029 228233416 434524863 409049528 716559291 48506904 546826425 887226697 973418625 223368469 921171225 855226214 962559915 891229900 945883417 44399982 940036882 24470132 29821934 688792137 709712861 533145724 960863986 716709089 993476087 804824396 965949678 770847092 943273435 343350048 426590287 729934228 866288671 542791961 878297991 815966247 888488374 8812287 734634741 177954356 752024183 651463195 919674017 582760943 935934352 94863947 545652966 715934636 777579260 714377762 805152109 87402666 210969286 992895813 995096227 735761926 900657297 37337297 603884538 34455492 699457349 542662561 847455909 632830425 644102187 290225600 985822926 632061871 893241533 444384434 767163649 781182880 852702635 393655176 705454774 517735712 779284299 90632499 597788735 30579994 77566395 587323238 765529294 641274272 876230573 351624896 748377200 478217462 593591446 805739771 981479962 504560453 967877401 259298387 875464068 477522443 663777641 951553969 964021976 608670785 903445101 822690696 839805623 44688872 510681297 333733508 352526961 428780818 661454206 221374462 382701634 981633447 993658068 342302645 612264345 946871927 961630720 81437574 903735422 162785324 526236760 711359387 777574528 690662828 915364221 53298413 131349173 36539643 841984326 262445796 611400208 19119430 378820912 56320265 552980889 734814006 978742874 698652835 941670774 703636807 843159359 76213114 718967822 37951359 624495660 92603140 340556764 809141635 876671238 780017602 916615735 10908861 273818871 231111882 878491290 915788032 926004411 522979550 545302187 254927032 719390474 568284294 574630960 691980376 744077151 853685048 999313950 920322540 929120062 732090767 880554468 834190271 842540724 156857788 181254080 709681348 772687915 614617522 674197668 274913453 983570987 153283991 781246247 127685047 496405626 571735583 737712454 922582884 944433426 999836427 999875048 858894452 967678380 440364938 605969376 73741126 82932220 725382513 755486098 842107228 854398359 807031941 998195337 346511520 505616295 639739109 750735044 388236565 428550339 83375727 888415950 534634285 841262841 196785390 354142611 468216606 546706880 323077337 686565124 25512444 279782516 112247351 798361172 220240555 243376426 257784110 401223064 278773119 439166469 419278119 497772952 515227550 742520335 816124805 908077015 95200233 430201651 11004811 966544597 179318613 910498671 218951336 539356602 724509724 857722353 85956224 546138161 769990288 887703960 273019905 839914924 652007353 862856696 722862892 822533289 684444474 914993191 52353919 203390769 981686563 982760202 661717537 819051980 109100675 340275232 268480017 443215759 367611485 844349399 394502120 454128930 568011539 745854155 844865716 988104044 637629380 958900738 309623956 693134134 290963912 644049633 723596952 740230327 873697811 886884101 796051231 910188022 83000145 579934727 417852126 518451053 19902666 778388376 784326798 956626870 516986632 765315857 286313288 994670110 703950910 794334610 486069632 788883038 495831654 997745365 83799631 520607209 712792954 909109548 732021140 927606613 40083265 854952415 734610707 776748755 477782919 853318978 782068441 901006259 413412418 576852658 130889201 918557161 162543685 535833985 696215477 927072368 828273627 933583790 821853948 860404549 604662729 663190395 783683268 923928491 761168757 769104167 365961009 366744644 909261737 912002966 309468703 854551296 668106519 803426507 215446416 764455948 450670953 958570106 466786904 860417646 321412701 431013757 954824983 991008901 312636132 927433904 202754247 418993918 633087142 974267990 396749718 458278249 144933518 449466836 593554966 803975445 11709403 366215999 529314597 550886960 106704371 652157296 893191430 930049352 707482262 897598654 373718079 492626741 42530746 345376692 580977168 935159185 387895064 940346642 944988450 957091771 484507778 555625045 883579582 885251567 15883588 728082806 52935717 954248175 456215003 656866178 262815693 518943766 576137422 665977269 325409506 573775071 820144908 916115149 163364631 366467804 792509642 908005849 844119566 930141760 583862041 625254956 591451008 833354890 531361249 764578256 348486056 865972011 581192367 696518025 913901561 985551801 93501773 298598884 846677825 864241958 382845955 697657253 163371426 500892961 200282877 956800097 63889587 683795410 496166957 915742994 825255037 875136764 746937560 800135425 490379912 700016524 476252113 938375420 419100131 558067845 945049854 978004550 485186585 539076996 103317656 863180458 572880079 624540830 903428262 912214413 910447487 971027961 113107766 681638340 845276085 935152436 549115353 584457434 459508470 557713865 791818280 933773058 62576046 590385933 327851667 411369640 66835469 906187585 152153252 455572819 269938094 863716501 647644081 891763827 614349022 846046794 149539857 765289582 310132206 582633098 287438953 740991418 280285843 805095562 899647400 958232960 40620406 88339361 614659620 662018758 546559642 555336186 487196156 823580683 297718261 746676725 674659141 753496306 523472130 645897698 739280872 805609647 207225460 334085049 975821066 984518669 537994310 918521047 970709780 987768335 39942355 794425190 470049139 513671802 587245989 638485518 734457686 779344000 402494035 587635762 637783770 719028486 453969840 779983902 556190450 819408858 352017011 820317855 578720152 719789372 317370056 727345068 644343923 895807096 887658723 965002735 770579904 899478793 940130097 951495375 247109709 582636620 346417147 823812922 907970287 924867028 467056248 543349746 536499660 631684351 278845916 671312011 438969604 721803465 886103178 941977086 359811299 494752542 325994015 423296535 83949039 933370966 254738781 909579992 607470834 665343698 829991980 842287233 160823568 476312317 510932265 632338197 473107167 922367284 360562671 612843050 833934863 916586698 667869639 700245633 388529280 972938940 107883287 187109059 702930392 746123774 113368270 396938216 91024992 852479775 788933223 838739855 755017707 947164232 324754365 567652101 369984065 818584721 6338650 527087301 706165702 986401809 871351109 949694755 340853364 753580569 584566675 667074268 524732053 650521414 705852902 826203806 561736815 792970733 324252344 843633029 350357386 436615947 623450350 722862731 675772138 876947022 225902221 379670710 151996045 526397250 900127769 914159877 728029495 806295612 870234711 899636097 319745023 723990244 873610370 956079507 879130248 948323546 247599127 798712644 863707364 944419284 887799490 905554523 87903758 431083180 204964062 971028783 632303905 906391155 840389905 970220812 509628938 816159893 271410910 599673209 119721934 836746019 13974327 538251232 720766695 984966407 659507904 700630969 992886010 997546293 631156339 947078857 708731502 796135344 451809657 539669191 172281248 808001251 595544395 847856628 51021874 412061848 999512670 999873899 35124214 632753367 89384851 519067144 536289057 865276249 714241179 830809548 403899637 553027414 791787749 808343981 970747516 991948960 494978169 798059503 703575275 972739777 415330417 457782938 238820252 889139961 20654110 317727901 253044717 592576486 72618288 175342263 885168204 970325481 400948283 828604117 498674492 823375833 488464941 969534636 148885280 341841483 446874192 507439445 156227493 233592635 745587030 835714905 236401391 707771416 633521400 970347735 243851790 408860156 295695238 771613957 394712787 731300210 928801738 987570361 108316610 546609374 983955437 990784538 893607487 917902655 107234583 871614331 211867349 647329867 702166042 908734544 253356733 427564609 665400962 801477295 903800120 918541391 63228953 353496532 520540985 781276901 505958012 959428347 754668874 907237167 860950534 956189258 258741687 858507886 365109287 639666602 766162639 833648976 951317975 978077383 154774074 771171656 579944723 707895785 521119096 780083461 949135857 998742911 729148892 982014696 591036934 653116704 33363536 404421800 256262523 763806172 660267421 680743766 666889127 939983335 583051562 895650069 577978697 978306274 150551619 814580942 426310235 736551268 604291683 705808758 214660218 946480368 67981800 839853516 204375765 664640342 57068618 413189744 875346356 979966169 227972137 572822009 616828680 675411915 18512668 909464619 8428587 796012610 845525104 857132065 972870711 994002808 88447793 165391275 526507880 947653317 830217198 997533380 427724203 790933035 533713254 841948199 947275329 982129903 987003703 996512843 856734363 955266111 722166767 782184009 373080677 439078657 234056759 295052211 603181459 781331569 533095646 823691020 962403010 976394461 72423783 708241208 203500891 795585492 51271964 406106048 315839849 569887211 838893584 941379625 317885447 717105385 769616093 991484259 647094435 876369620 789078020 849060956 875987278 902683514 296138891 953548989 918973201 967523953 273871631 769184928 593531784 795103440 697854368 866326570 956897592 999249568 463638945 538764673 953640113 999097490 823494498 925047877 829851041 835110840 542587996 864913941 97991120 417646228 529178079 648854654 134098282 613007240 183180150 525489106 654763014 995914776 415415954 986159111 592385606 740668303 293728692 486077388 462266310 704161224 889585307 891362416 231237088 830132728 223484278 520912268 709763906 957490095 957826110 969779136 608496451 618371948 190134690 435662678 705165654 883599722 12035390 512833594 266753759 994000023 708931502 842957045 139142722 954334045 577022736 687166666 978603735 987121736 846750438 877661145 791289890 877125656 611084937 768631533 931517975 991197591 261710013 358925643 275874682 659191346 51857166 877127869 83975007 578127177 627541187 705831469 385140299 786083738 11259307 77906771 331238774 621899870 751328960 791759985 641068103 916114822 693407366 945714917 749893419 911200679 150217656 782898275 778239653 788786390 192539276 197628126 294873212 463961904 211714647 967621197 335754769 490431942 89006379 918085959 832170599 952402024 634216941 884846863 133988778 736649115 323564506 725625411 325056038 426704413 945863402 984790247 2235314 223085443 713412498 843214019 264548684 356319775 557226619 748672423 361600489 651054167 305779655 683546375 998327240 999054217 881017446 953688257 913815204 975068006 622561070 744728960 720873691 937714541 764036172 999350478 848575221 964984089 258878788 486489440 270627459 657018262 167784206 813250377 909673808 990915786 775377352 905762473 617570619 995091513 962785780 973611404 551315177 968461919 94972514 207400916 207596255 372109051 587783993 672608575 414723732 695669526 460137155 639049574 140764473 341115821 68468621 387598359 617444213 958160411 387498091 667995868 307537407 370124292 530404752 809284327 247009057 892510422 59032288 484788775 979818125 983116197 669333300 838725826 400057145 414787300 993452982 994125877 226520725 415550549 521571846 941370349 426892300 695516885 315946264 724086797 425943225 943727178 134180589 799604934 831950452 957587871 803786912 992079372 634627143 951975112 12711496 502272487 791327109 940648061 553018229 857173023 914545175 984168542 817632504 963994898 40896050 492532544 692765650 972513821 370707326 866977396 188171187 471786508 266796323 516552412 256659585 472849593 793104817 956699404 19773852 577236059 159028224 420326992 172686640 939128243 410291451 954648902 84890897 770246889 678025723 987647247 964119501 981170316 241430476 363197520 892233965 917399501 945976435 991179536 584720082 749307037 748573897 795865047 665509604 914758469 494824918 963906942 406369943 703380749 903508239 936392599 385953239 647248446 93248890 776755528 625535517 989419445 948360531 982289726 341328272 615320910 891880 726098924 314363429 721505470 480680955 801170403 243693405 497957514 439049056 589829467 329856972 586830334 887362353 905946504 677884163 890432663 430729785 606299079 846034778 854605295 340272092 553414042 581153238 913248480 957052006 959189407 11752225 369057525 869708597 923975823 688595099 740949527 381657095 627245652 765605786 979123395 322732438 586030590 288870593 338078579 249950339 458845155 386290790 608367948 724853690 959068195 749119392 839919970 52187244 280157529 312242354 345996958 75818436 434541683 289991416 751275360 513958593 515406690 194233431 774642758 107753907 915184181 812035173 881874983 858795895 951744317 541434884 929733097 896657979 971462938 541864937 580902686 2286344 665164250 237718491 688666019 621069627 729805287 727509103 894437036 750976181 974450441 992438775 994297959 992122856 992736747 433488443 927700060 314347582 567536755 459520421 809323558 973409789 993897522 704734548 973458989 57515143 883475732 132222837 331977454 531300823 624079754 218024204 794429527 816286108 937062917 405752420 422290927 253139232 726379827 716618671 867132856 741542578 848603599 907609496 961641509 643231788 679084339 432743152 921943490 923017383 938858813 730185295 894888350 540403014 582573825 825334399 846127358 202859859 629189345 784388590 817259545 936630168 996646807 711222412 766734119 484071730 810822824 974184565 983285288 32786981 613325410 534701371 585617330 115723605 865157506 574421938 973622587 138960665 236506542 629455933 919859590 240894374 641010024 494545169 600634500 334592242 633766885 192894505 978095040 822392032 985252027 73432254 92104304 868124770 878379683 769171549 882027850 464959731 747520821 658286246 903230005 305730694 347263827 489399259 963831353 133235981 297231086 428691575 919938519 454569182 554783324 100438236 507115267 326007793 588558991 77989838 518079781 72471894 745596984 226298058 428324595 844027182 875806944 451074368 516502961 750038992 957965643 952477397 977603782 126330794 729105984 635641832 877910746 730001759 773315961 941838197 943733468 510998655 868784621 728848559 753187287 635329008 742848216 534366694 653023362 507868352 863650936 193537466 971524731 672991097 692677693 25103303 457970915 802763611 874183587 169297055 203377615 104634641 752351091 32350091 403446712 92096205 905724113 189658343 582520146 207642388 790260505 881901304 943078669 507974856 962145076 821497613 998426614 699439042 710082817 290724192 722599516 953810973 988574163 219972993 473389935 992125683 994400130 626576284 924855029 894347135 932335364 156558510 365293485 228176162 282771402 783079278 931617517 364894315 997324967 494493392 908516073 805523788 836856552 95520380 692146609 299663340 520089771 242827690 281828212 844442890 943699923 641160348 910363826 822890804 907801462 612770438 615410426 709306840 849253355 911229736 922383272 957090043 986710049 267360325 967332465 907962051 962158242 507339348 576898430 495648186 892867168 55280810 536425019 79414231 758521026 164951747 347593401 849929861 881928534 598616829 876034404 546255947 742833267 420685290 726798559 726274005 922485948 808651400 924020057 981661485 991576439 953672943 972546391 171994035 202474521 485981785 601153131 219889367 681473080 941199050 947710905 18371832 764915120 756003223 825561720 133928569 619354787 305437367 818235370 36189572 381913349 502188837 900111779 912436879 974693283 119508327 624374469 388787377 431324592 53649462 926726082 126656252 255300800 641536587 889758161 360470304 696790274 534552156 878273985 420014079 557354558 474438774 927809589 38338791 297631752 950553707 952967270 643097916 687892593 800056339 842939897 442445150 814163735 769442000 785538186 595977350 635755138 109874547 965129757 556608579 631031143 802341946 848697617 413984247 925436327 264721927 961062732 168890760 178460276 998734567 999231155 536258721 859795341 912212355 997204668 650091822 733066941 21439124 815070179 558491850 911483593 208989553 669612862 5457578 159035223 999441091 999904392 99616189 684819411 761594717 886811694 636629170 855379405 855559996 868635019 691972350 953958754 356862215 859598095 9503543 891511844 330397755 878144226 213553617 616437565 768242346 785583326 916947547 922636586 184077429 577732493 975802308 993605439 440402278 490265067 8725210 394692753 323873674 919188612 643294208 976813241 252501349 820556931 921298154 929311627 588298807 620633442 121311712 661925038 415685903 451726278 884831384 956367958 40777339 848299873 664536439 771013805 217840671 875523879 650957441 753132442 705015176 945258298 794102103 976253478 227796753 733496378 619105961 807512204 904732876 910273402 333553816 980010907 316106374 973973268 981877302 997733185 920913381 985604213 256647370 593493273 99925980 891209656 570059416 672273045 776321044 900306325 664990096 950838784 690032145 993834588 10724077 982068730 477539461 533129014 730718728 962711993 211532118 450042768 466524359 950940519 637799272 810085961 913662000 958725276 883129152 953081469 736012854 834664736 599865545 758036390 712769662 946789394 484784146 577698674 308500935 778788467 172192089 702440503 724460348 819087160 45197287 615428639 529693451 533666035 162711913 216729559 991298445 995275520 442444390 586883121 113848756 261154709 87240092 278112168 289480655 583192157 211243893 978237328 23201176 23387038 97403790 837088753 46817039 134767949 737391124 906250036 694911106 966930343 663119709 693564126 388876765 827740747 499903577 967042456 15428500 990414051 109000686 218811675 20645385 50957165 942841327 992635176 47343806 646578915 491074006 559612395 245010011 672370888 207128635 720560014 57015576 422748298 43347750 357022019 263325410 361427134 767535521 817718522 103748336 896544340 798706931 962161900 81388662 581639992 248919704 955644244 697890487 836076258 865819358 981156337 325213389 903860818 235237589 985952496 946500618 948071748 671044031 742634608 576872085 788561501 780255700 984100016 354685494 399779186 565230822 769491619 270922494 921502420 249796270 624815894 805226171 920939460 264106733 532644313 79134262 836638431 679461580 995999687 464103486 560883619 614042917 843718239 681649391 920055151 911827687 954347684 149236804 757070216 179654916 389468079 454337401 883965209 136549116 685290927 15042170 750164328 927227939 952268275 741476435 926555820 235443989 429425159 271548579 275148933 687253318 887520116 865454301 870896615 645129464 735362298 663606193 706496924 921279274 979355058 85699896 837527188 700596250 719069287 241966150 376458881 94890654 196151743 295354099 391826277 160771035 703031233 964057011 977945594 53224635 729770568 822393323 844231751 653018231 929958397 428759263 747480014 813363600 981115860 411025843 483131568 317854182 763776973 139796483 715709931 696700868 922922606 41076668 865671048 425042573 470278991 745336320 810201160 850080021 877443566 264387399 950698763 397118166 730029580 381456593 796013167 8681516 952464628 344387851 392367872 252477429 728979046 443865431 743785733 698251878 742603824 649384794 932339149 444949566 709428925 958476873 991189247 891320815 989548173 540618226 689676172 816229580 884584514 911440541 923257488 688203951 826858107 91585633 828128918 163284361 496426965 918661923 932859850 123373983 631223932 305507797 713431756 981549959 982473234 27813722 829794399 453123295 723586039 405733779 737748282 657036424 957185531 122664623 717384935 991947935 994917274 941275675 979322409 690133605 824455103 916952895 960738859 349970626 528793633 251748749 742713150 42611343 708835576 584907703 883774153 343997682 621731298 275897853 990812642 269607049 891300181 190759374 942281147 477607005 824726816 207654201 350670965 884957091 999992405 439486774 897469261 805373405 830990298 473013696 829751227 601402469 648133072 370233711 850796480 989387605 994692834 825542367 951983711 338684416 710220732 541803055 574101539 12409619 514031551 232071400 408707865 870717324 969772252 761197685 812160045 949583058 962736472 404040986 605356332 924166703 930018935 902771426 989982077 566102830 765718812 472742713 934952442 433308211 540580815 223948415 378376536 776549539 998178936 126770389 948137162 349849258 785163107 828462230 964450484 814739698 970920031 640160885 790687211 874790475 968020431 396049952 702896889 41160047 117533399 748498273 805320822 162624585 261156536 977466988 996587362 633109400 949856690 237975408 415919778 270509050 434499856 7651324 39909194 749981729 761682260 141833750 649641780 205788612 372762705 190439124 947363929 252515053 783983458 538335803 938669964 488022597 575945864 501421845 665777353 893443207 918532502 965108600 978866255 647021324 701024820 990939289 993602615 139693713 674212060 589185566 717111158 156122519 945983114 903838124 927311362 658809085 754705398 905447060 922569233 443019287 630808559 744117506 774440897 487452739 991755681 795327155 928050053 405250321 644545256 38233933 626439112 460691851 508846859 666486056 854284367 910962776 912185530 902345154 934508887 648438058 928869891 987064968 994167757 502863975 620247368 88638053 172242581 455954742 848988709 991111868 996387308 709902222 886923099 13983701 276596064 673550185 678428141 790624598 815481179 701239540 714558466 382998319 947653743 948575424 953070312 626329934 691425966 694518774 699843719 303378828 466349029 68824471 704220704 793768446 950983858 987144603 997689477 759721801 910646892 450813140 781272334 74806888 911885199 607837507 714588121 573859007 945669477 213502046 672561056 675293100 760290104 679617063 738075559 104805107 757807288 37553425 202099627 854490129 876528380 661455479 698553175 408262956 983097018 482567433 661967593 813270286 886579206 25949587 544580719 247784550 562522225 649670158 795352347 764231782 791121615 897337366 992852023 944155954 980341153 875915907 973096274 915791213 927073292 510266404 596229201 26974527 642120041 584963638 768498734 596729851 617091416 759669354 861908011 371847745 818868754 843022126 897520448 891888085 912753297 511790930 891269058 253645315 628585235 769667132 905901912 481896246 892533869 627821538 772516547 219980570 639353361 345040670 900957193 43542813 678755697 336698790 972965164 707250054 787086914 430315708 834613552 873649406 998216088 315726493 479679958 333501926 700799406 668349214 930044401 26369796 142398301 148535673 951687358 383710239 698466889 490030218 507238785 514621652 550678410 898873392 989234499 449195813 561521043 925639338 948040137 215812325 515165083 967851101 968578929 805585676 983483486 251703457 778127151 609885977 660284998 678419569 852071778 270574432 279677887 239135971 657667344 743336622 945092150 194868709 333743064 869936690 943788159 768833264 898537594 161520056 530341847 606900131 710482737 530454598 936348673 593332671 719132276 202376591 380279826 814268256 859830578 679437364 820247035 886423154 919130856 541117261 788158360 538874758 559187833 934123749 984056853 441040908 560845036 235104230 959485486 536565811 809385069 245557488 438005743 558968878 622523211 506304707 873395511 883882138 897744392 401183398 643460249 411494701 874098068 912511270 941954752 538257381 740119130 67831777 711003754 63553392 816235907 601729486 887231771 593210549 667934272 581513512 773743749 542515752 662002015 158914977 436189351 855599044 979755120 411017906 979019794 892306959 943820205 821699960 902947407 778268898 802387468 990274064 992738577 757917787 850143312 751599460 857549910 804830722 937755846 216790170 650050843 296810766 745321778 430237900 981402691 332892748 333061001 751329049 976752996 698293052 941987032 350499522 585861152 512327820 514036181 128011598 204821137 247919905 485273250 995411883 997067101 746467452 801418020 616196573 826952868 653911033 890630426 415532793 802075284 807646434 986711060 171208372 316155466 662186587 981472122 243785108 388487276 235364826 393292607 423620881 457766935 858018858 871895817 227161354 365904837 429734749 748044506 20213752 606496471 360446699 559408221 828313718 974408289 567816035 738669889 512607538 874344637 172182205 759274855 149670411 986400809 569958773 838360710 515990195 985527695 604608197 608919424 421034649 698858324 762250715 957297335 286739173 357497115 706940055 782900168 413740021 445842208 33398522 763390344 275946554 402943049 65844890 145160511 892481330 931325840 699998305 760488931 221484821 458094248 129143656 852621018 224641740 582717258 95068220 669458767 722953426 882231877 364093020 502804947 696424512 908900273 705718092 995640216 984108368 985911947 865949258 900791336 939373006 942752407 576305897 881719756 737769359 867808339 84424984 709203265 352681176 435785211 75110152 210973806 907064571 937775864 871306849 890704322 595187069 713363285 293727169 376505119 814895182 826648358 785078662 797786769 509439011 542353679 979653527 992604305 181932267 481357732 19385548 126881628 931132381 955571070 171683257 956151234 349820282 945801244 353172971 421260539 332529712 906058450 416153633 727323375 158792859 920581973 988573189 992955656 734142372 808246395 424236637 707707068 969054283 976623133 304699360 466308734 852131178 977325963 723737371 755599200 669249284 821481236 191244560 602636485 982629577 994111059 967041263 999176581 625740163 811763590 725982396 993033040 422178354 890206250 332569464 637009865 122067420 283171402 495831733 539956964 701008285 968697943 946433547 975548897 424120371 692432884 982354350 992058282 802631798 932579064 17061400 31250192 163096277 829655551 891688784 961918287 14529724 95074929 873667652 921050496 573044547 920213781 416573904 635982056 41496506 938980589 738566747 937101565 746491522 825414594 842939514 901016675 281933252 978106910 293866479 818869588 432296865 644616793 944559019 987853410 530235846 675574886 164783336 664231040 179598897 649156106 878854171 969534209 555147948 986175331 290086775 588908436 698985935 882538169 542061524 651135874 637474784 864520824 668712342 923655765 864297985 955047450 439105383 906431567 407267788 648461346 599394039 950846009 925539602 987935104 895833685 912348518 305577756 715439893 468600731 741850685 737933399 957267361 339090164 414242903 481113828 593955763 440114252 504048683 370863984 761350980 951247997 957230591 34441173 308234279 336762235 992327215 474669755 888249035 598466156 876999445 366949079 548160160 94396470 481368694 678595178 824935565 629972450 941137988 65788515 490270185 528086862 788136456 918947102 984977744 990544341 991587149 80610067 379474376 938081902 984129078 999834064 999857811 746928668 769557818 117574044 944514601 340084930 983162608 503746456 673795177 555823943 982763774 451955616 605212534 510328512 752810897 801943628 956655679 280755326 878153182 83284848 978306759 185875027 676625469 65103608 453598030 7937820 443111452 439203205 793045243 819011172 963000527 195051492 316679366 670490929 913666517 261281888 399979285 897098996 972891211 908329548 962084569 417954435 645610344 864605451 942015098 221549663 763901226 340587745 501391028 189945829 329345278 442031877 514384775 916791089 920357203 79874284 293445425 259052136 666286963 255161794 689312697 650033440 778212149 902184594 939535406 76106671 171957726 411158202 628236537 853912457 957514089 475293617 996934361 568345632 710616022 692723724 827459173 356063063 771504720 999497653 999641684 408934930 761801615 374267442 874683281 831544769 986769856 820339374 921198099 930194395 962953156 460746716 512232790 567735604 806063125 378173359 828377408 570739185 904045427 435616135 618762761 121766076 342407624 789408360 817499810 534076185 627639769 76023845 379268231 210057408 324560938 398288235 859807222 123597518 397353808 981814580 983833928 825023856 965874040 686834271 903480582 384788812 751523525 725786951 934719888 328563980 819166180 51337327 612522097 871049576 987442189 225237079 305777253 926385835 979271092 848466102 869005702 120498390 600670584 538361867 694714849 767393974 961350333 693109856 924900560 665654188 841114275 840538846 871472401 870789613 993506410 968183221 974064090 89950732 705132149 285341163 365171090 465087556 566045578 813137201 823724573 452780135 887002278 666275158 804493335 949784358 973724991 127146688 543173792 115852569 194957690 673648358 847155097 445715145 652179256 891986376 927419667 118870495 295412470 147154930 254502599 473222297 995786118 250826221 569582692 34884185 70414631 913423586 943904908 95102001 656667642 557004805 928341341 119660869 764033196 851147986 970503610 221709716 314849303 927329126 945811631 366215970 414203263 598689184 871662154 778293205 936689693 451817276 986269946 637301496 909998395 596122545 799609070 554491056 756822826 135864600 281097053 306918206 694183199 829437750 875860928 245632835 313867955 788807726 896613858 334171097 918555526 305857885 746034461 841141289 929755195 188809442 996540253 56729859 187606070 180476123 971430731 689389715 752883288 978781894 980307616 858213529 903666241 612972589 806583412 761477675 876025594 287682766 714237343 725881690 851401290 36136474 661956188 837686773 969648228 17308528 121209680 690379841 703985438 503456703 636164508 188764014 792712432 85464753 529733646 899376167 932651883 591235679 921752677 171792013 826419140 490748917 980247625 720914221 870514674 656943433 976501764 877350551 977587447 503344805 966779723 670918866 921110769 910037319 961782642 854498527 942337083 691961273 880881825 258669651 502648703 206300088 432395586 678548964 721797057 870133555 963756230 369323237 882063560 966979810 990891700 787673405 983185765 486930041 540553788 281466554 920990637 15320321 515146141 102407500 345341035 908168367 986056365 225354609 662048186 852371969 974399094 483758417 580631781 363944086 583496989 193775142 286813291 63521859 139237439 682182004 842663029 188710637 294608929 853382768 971056734 821048926 984815079 623722456 749380807 972414952 988554698 364707456 933353963 644833016 865174905 165809521 766296868 324862770 975865737 294818606 944264035 445864424 554885144 616282297 947485394 291519335 481832641 647998413 753280762 80086640 735710382 401337782 967783560 601654445 698227476 267091029 802496953 408647136 758535593 199320962 420968467 489040803 812381781 399709714 999326402 398835220 615553642 795669770 999403909 499420141 779213039 257789507 622367222 831728662 970733566 934768000 975312321 769537711 969623596 17596259 446928709 565298855 851594844 781832110 921629799 318215666 359883298 701931911 943377159 770938772 824873579 996603718 999556692 386887719 786622180 473703317 515727058 12455656 857167302 56768067 312296968 835326650 931924617 126841983 707090726 840979430 877334741 726023981 859448953 137156368 789915995 575911050 958441404 802869078 905251372 771585534 875669822 464645417 468743696 639938927 796803120 862685377 970597487 697036668 772870025 221375370 474280729 607297558 695948947 281503043 921398471 313370206 464633703 832985618 941175054 373604963 966948413 598131667 824228920 522184770 823836775 178474739 337010565 811415784 961947196 945094422 982847151 990272274 991688118 215555111 437786855 828348389 862444702 781061853 843038653 577316163 734473954 187239146 971065892 163482440 534340919 194392576 473164309 603302149 836412342 727318118 845333517 938733802 954352244 605054464 675634913 817685502 862237207 220471269 663448612 441102743 522075223 796509996 989033925 550869127 884706821 86300363 676608310 929107468 938555296 805645156 915641733 974384448 987715999 425413505 690772678 373079616 945594820 442367151 839452282 570061443 865780017 387584331 792427493 440169760 467066184 294887251 482594333 7452439 867482143 518071544 766693168 843043886 847971149 926945226 991705546 233374047 836964371 627716328 732785138 698074007 766045562 593669362 785110416 757584066 979313773 120571352 850367847 523500081 684790250 313698294 434454901 963069561 994858720 683445490 755755187 964882372 969032399 948140009 972470044 462253266 558350978 980614154 986811434 769288478 937060001 686089540 750340131 862559178 960517507 583907717 912659716 18037199 123424198 134157448 348259325 681388997 987519121 944586197 957689916 352374065 793198789 236526419 486355267 663467311 947435793 51012107 734683429 314797290 542025794 63317343 550159227 593426814 643138259 257670885 341924455 988900392 995387297 722411361 733814795 942823210 978910573 984307791 990398931 21234929 243152243 517374869 939406376 514335263 670492256 255737256 827326238 353652843 983696233 764204212 946986899 495732104 953856646 667011381 981633871 987544091 995141519 80668512 456539956 601817409 972010796 159472471 579290057 639704036 671896710 866651671 954988827 367106931 922422126 930624280 950381024 247258466 393274668 904305496 951291382 246150951 566917366 842131106 967382203 234961076 622213594 263364101 964465511 360661443 501539547 992922955 999425621 669668789 912085662 656767688 941444924 115774397 893181538 419376335 733594585 725787828 761909863 911357670 913170850 265874986 613097540 609962654 882757348 126330683 826107177 579122017 750230152 64216619 767856495 277029938 737943522 558062462 564105087 129940773 573321285 546991730 632219298 704492285 939604960 197939355 274750411 305255437 866689390 282888445 579712549 342557792 774145843 89040966 443798089 646535110 830553757 109190400 584085202 419471768 986766281 22401426 447011965 137773891 195070040 954980192 990161072 596661900 964471406 506339229 644824827 667261563 842401329 667208074 714395537 531851475 906601206 354788080 883044076 778245586 961099508 532269745 869458892 565776304 811181716 132839985 985748269 752176145 815633929 900973571 993420609 182460386 420621611 128028564 952041622 738584365 777572540 665663167 919764151 541384136 734153860 877950762 897405250 331340031 940510175 371207777 502757485 518033669 815523552 553435238 736743638 826368139 837286882 930788371 956427342 346930656 902989797 426059188 906775450 125755353 856411054 157574957 335122925 794899339 936141666 895702094 979745214 771864651 787059520 498253090 591589984 833317244 963946827 259771000 424108424 950904355 964189213 951773523 989511912 154976742 179244639 79652542 139956562 377174398 598222186 367796026 515887118 735082118 848109750 953295496 988428647 958756058 964767873 422186448 694515397 285911917 431504478 371184756 587135059 4730039 369416352 23928145 653360150 310808616 810334128 954491671 970496944 744322537 981378935 871035096 916279537 160609458 324178781 249909344 976656448 745588430 936587010 751027920 840410381 36473065 381453050 44591219 79678830 450769558 661732728 503117858 626513368 725831608 762258947 230714843 325650970 751904924 876828554 874879414 988111470 662142976 941497296 99993191 150524739 832161834 982572089 377014731 401674920 917368548 961076586 372113033 850609559 12153075 823056402 675805835 723162419 473449860 603520309 904020194 912300628 704156544 898780840 178449953 785286551 906771626 907272333 66036544 967941890 404835054 658129137 923924084 993778790 393811889 664319997 972332570 972670458 131945755 794595200 28829360 446580490 173816109 655698199 148155573 493564436 602012944 740505711 402734660 524117956 822064454 936317735 458908871 699174093 982200470 989711391 475139957 918916507 165941572 764619264 820478330 824275237 159986727 739053328 254045657 574199548 477012920 860578827 734628046 971332424 871141486 966296862 907108825 949298973 880802702 964219055 461424907 761464027 810782335 885871808 916341596 980297365 953895766 999067868 877063437 951335276 407445373 588696191 204982106 214216174 622566601 825968502 886255755 996336696 905631699 933577239 455277721 682624082 571332889 902834704 230650868 781204500 509406012 614427052 145919547 498902655 892713170 979465923 28729480 373899012 745867472 971958774 477659165 849307126 457569005 691819500 704360356 753478966 954585389 977185744 666589105 889974992 656625473 946600180 406266211 775605791 475175948 737497983 595589867 945068975 368130403 414801758 415587901 586895381 38363777 612375153 479521248 709885211 398993295 612670705 462867464 548874835 515145 14949990 130396511 715422345 917695867 960452320 907304256 959770388 714789076 920789618 168856287 871017766 794712148 820494139 867107331 881863249 131043189 693247546 180484630 558366377 587576692 617077224 985188529 986761299 304162119 481946204 804309268 902335839 264239816 632488989 36182524 726246098 566736352 860090141 474446949 610802851 6069175 589899546 151747353 764188239 599148376 925817043 858029133 918245336 444860776 509814247 70042516 985215048 32068308 878710706 992420648 994714195 207839643 524686553 335674672 640081680 18898006 964040121 247252056 284842721 578907463 987869134 249799055 427062428 707251889 875900748 318232747 917885679 307769966 673961846 253001560 869088088 839317587 982425762 396522268 596591598 140259974 966249180 105245237 815559268 265386090 632743922 852630639 940028854 339594666 657822236 196474326 509427216 883717633 894033958 159597430 815677673 286678294 963401150 650864859 854191378 477568754 937383774 723393908 802830228 94409595 451710984 129615493 940906519 77194258 135987616 536839710 942159432 438136535 960671917 61935460 759523002 103494133 331036472 233739806 897248720 162177200 800391015 661494897 954339948 407222440 577629936 170788399 820224821 710391964 763293047 587200204 823849379 845858482 949252880 40027073 564725483 884659 924831855 150817209 800903184 194373986 872128712 672467669 761620075 964423857 978445987 128468183 800817844 223073111 780679241 404390154 950682686 647223706 785768332 814186061 820988155 799560782 824230517 992816153 994269467 388054138 616579013 879242575 990611426 900912939 970290941 941599735 976193193 913798875 927895178 992025607 992250558 133630729 584967166 222745880 805525302 234586251 381794060 65329895 970224528 770012473 941471349 769216936 976588432 368124565 765627636 808591361 899651146 514088315 672242844 521262475 772810955 765167742 792980436 420365772 613895161 857995373 889406084 212704194 214524604 701437902 843806713 804887842 981431156 462567850 734835991 625059004 705300978 6433798 377156179 635803947 834465822 364576723 410384591 643518157 823034311 435231600 721789904 304648880 550404522 548170723 810209390 543100677 624502823 458860679 941881731 726311764 895391509 707982144 828355008 736715463 997725896 644417045 720960734 200990983 429608883 1966705 714484558 37423562 541977124 622117533 655012002 75414889 657933747 200846388 303215216 431780045 594044989 437764535 494577122 484886770 749765692 475479856 476768605 496946480 884458717 612691330 962402086 718695206 984177015 886057022 939510494 80249277 829335086 866800312 888316637 548269755 578289567 418493529 701666609 164396023 976610927 308103374 588262722 490424139 752356813 438044823 473455996 463848746 816097716 559406077 872097134 331998682 830649438 775397920 780988897 912259789 984903812 592784977 935111617 898827208 981384171 8171202 363040544 195569990 745264169 836384526 839471795 497353925 809480681 2189508 12542060 412031713 415690127 316781383 470749310 765530223 851287096 681983396 830518149 629071375 894085192 501040301 812377206 394515344 474856016 190426394 232526861 834262660 964483225 344591174 885666771 986933740 993778039 405359585 978136681 408851200 932718130 439689998 841910412 369314685 914540916 5061348 93460848 618234623 634638029 5131693 795433043 442101057 785111389 750710964 853708536 293543668 605089857 992689082 994937088 104137726 999600592 519552947 941650311 669487214 693074326 275294281 500549535 133352686 757747636 464651765 590063939 534331834 864113720 588434034 803898388 357167409 565337206 506731339 678055242 79762707 320882279 890029564 898320404 491441941 725925937 656858120 740015577 816177456 918756730 259596424 427980585 500220845 791552005 675580616 791086946 302652332 380077547 258144145 968955732 319572045 790021734 36590245 702315289 538397656 608608473 398193440 456932497 580228408 612775205 557421309 956709331 494267706 627555206 213050840 857230798 153592692 907790896 353301347 933425574 721596659 819863271 230897138 623043756 66090983 379216117 785950123 799750355 225315856 433874559 386418863 948862741 355679477 363625230 217072848 729807072 932603200 934234025 535700569 855569838 521887730 770353077 538486077 630190517 250532173 605804020 508125460 694412496 109463574 749458984 145847928 563482398 235864215 839751793 940616261 971392241 210225678 800389758 485601866 804197760 991849467 997904430 616863609 789396386 932556724 948872206 454113189 593186674 121090696 385912505 116629534 713432475 399865778 552353959 603534674 666491138 858268947 882075293 17350151 512529497 62566212 603410554 37284715 138822669 583893199 758571510 919746593 989481886 418959440 884012368 226228688 362793136 538349012 938538612 393744641 995655356 424463119 985536985 751819886 952397621 895545199 968077459 81890992 636547490 611458756 645314913 178725727 256823703 305827952 570192111 483897639 747817346 612032232 836780842 796447957 830146539 821660103 872285137 266027339 793446327 174129403 425421464 341113518 696325437 92517704 926199144 574747456 970058247 967531610 972522396 482872161 920545476 428918832 873295605 407032329 500958349 409964178 880921577 48849122 205630389 107733713 964126826 56069467 439621063 955637793 997653719 127359252 156636813 946615978 992944940 407161581 558585325 622794994 968253423 484435169 713305845 421643127 641680662 829910231 884577156 570180578 864983289 316022145 897903864 151845603 904742772 677214123 898206763 56869667 458181891 976798702 992977209 735855422 840941937 560584750 929668987 914382088 936049192 979972239 999043795 952498312 978291568 644474611 735313502 835444285 940471060 131327326 568462123 797447069 941126225 525664296 681174588 576073367 919208653 437325856 460931499 651397737 961449782 335321748 429572994 273655511 938559974 200553082 504764547 463160278 959732788 387119916 872867616 87164728 125276376 398895190 716167858 534704177 668028241 158967261 979774999 163407128 717912929 102340908 971335127 993474162 998717643 731070850 988229210 533462438 689935523 321525326 480686652 15423967 593966835 628425677 651676561 729481918 788804336 942282151 978845046 692931810 814485287 826877326 982989241 135607259 742740919 750774778 872167032 679678100 992685041 590245660 984821953 231403838 719073855 129696812 730835202 634404765 649644580 717522697 991958486 436423852 553405236 99741274 536622595 419783049 476155461 673353087 835096048 19025335 52916075 753535440 803282033 934110479 997326675 206517475 644512877 408337595 533588946 946179071 949143536 37190466 651347578 794029489 952648579 254653238 802822269 372607623 720720456 308422879 737257861 842923788 989525617 350479505 808603828 456663538 898245658 520814230 745284104 350614608 922757630 195558803 863338618 483387863 764870741 56370566 360353739 828223589 835410123 378500398 491184976 407837736 736062625 60796990 550033830 27271281 232579296 338491843 924230934 767961039 935525196 324671975 600304029 71475947 95827398 812301231 855507591 146333347 350839828 10239968 962427915 237353523 689913767 566800503 660788652 564555129 828127439 258968487 334096331 587167899 908190592 508212331 822007022 815832534 910082873 122608433 454366708 273208562 348996752 937529257 975232507 949622735 995731351 204273113 387375079 410864080 642890053 328633216 392006943 579573188 688245490 781405934 981389966 630648985 739702670 612713045 657416043 805550978 926778400 683504798 901699527 522557451 981970744 109685079 870329665 780988299 934862307 420886621 564818830 668806545 867197699 477759862 513172040 336539143 793712137 818764101 969618298 663519424 702492289 320296763 848935151 387615956 867807456 480133670 712601084 379147063 829552748 580608805 895567352 724313711 967756715 880058358 887342665 930539007 978468113 519118570 943388555 688716381 969362712 495116573 510379483 651946098 866857619 851233424 952905789 384179362 975573222 852803482 913548321 706601605 962649913 1654137 94296867 776830395 971428596 764951019 813298743 714095336 824242141 659950428 751381906 147648335 836789319 620246911 815709099 676538129 920050792 990921838 999736549 993108543 994008045 159823071 627729574 277823607 699571201 316856681 464064388 282222712 362757568 391699503 689952028 215262253 837302231 243865583 589568307 418555849 433460806 828741660 902873365 929180935 977345057 458463379 937293190 185545918 528702747 789220524 837274119 907154823 908232800 686603368 915158464 354429385 576850107 42542341 864118992 942828160 983652270 221271943 775070877 876717148 952134827 970019442 989058545 173110186 787313494 62417968 594386508 661683399 753414285 76273173 590955335 921371340 956286943 166335185 663568430 947036375 990643305 435004369 702810025 240412494 240646558 609180756 785616281 269568736 590339842 224318792 759839425 370180322 745908125 736480714 737875586 914985158 971068992 404195229 819268775 86161148 265898024 276466571 343336972 565375759 584410248 377122936 802088586 659865458 854121484 129962707 955431505 456675640 697908409 887947977 943637090 647089076 843583626 243442580 262750611 308273543 727144651 138995212 756191443 178899048 672510362 740396369 766367970 236369201 769918840 774788610 834261616 284083650 454228774 20130828 224818172 596461577 863225031 570717828 737683331 880480508 905685848 364250582 595600228 677016008 848624401 210287189 436108531 490668377 661612168 478124950 678637516 328588016 678564871 188848920 333031821 335915079 381059823 586076827 891545399 653793172 774423127 608169770 923165569 155080982 867437566 747724321 773015317 191470123 967731874 424795361 946186090 306747701 440605938 669031729 712009867 884093410 919806997 510694048 592306638 820985211 840580651 577859470 621497698 496727766 902561152 409486761 446754870 310371894 735723809 686947878 688964279 107849402 870886133 503582119 849086050 763436360 925936856 902668175 949706382 975560364 986796425 814356639 893109141 274438308 671755128 677223846 743379863 545332491 575190766 905518983 965388466 539999355 987370783 843435029 918970302 163071725 759525992 643507002 782505108 875475508 971886031 635334356 973148060 416154394 433865366 746214978 831159673 185081079 202428300 8267938 713703931 842403368 869892582 90130760 549167374 287573076 883283484 395975025 735875579 210428163 702620915 354039882 486134033 345889722 754634484 512191567 551104489 408078521 961187566 356976216 690040593 583385852 664667186 585016279 877511030 542926596 884325402 563888450 878770003 310872780 592555282 141954837 632513229 447500025 533895618 727304822 864433521 728046365 846513699 727771867 906908401 275499177 441471155 813711122 853694830 478852393 809534435 183622464 255557821 334122949 797530646 780951313 919790468 510417629 930880359 607802202 629638994 929598184 939868363 60818204 758827954 570739390 890613176 802063123 904299515 161909373 660063106 32115878 260789083 515652440 586150253 565947043 636583616 380930022 670191522 456619308 798433797 405285117 641400430 960526500 965127301 644866205 672140154 312405453 681793859 232433422 512142566 610510348 633158667 921359366 947633396 685042855 777447793 804400227 969761533 275260176 352123019 563741062 693717479 419947794 621506422 263579818 855956970 246288421 464226996 369949470 597627487 79336413 622961094 470924938 893066108 484959243 591538462 912515909 938047964 266032776 780240581 345223346 998409727 188085031 300256944 446830024 886982170 277054038 532859812 442353065 826159696 2308099 867887678 509825425 951104978 560828473 868835162 366277511 958730716 763847245 835373973 143652516 909686454 544689347 757186745 38685538 850998237 845710667 968371751 164910060 786854589 874397757 980916921 539520263 931356092 755344050 810181137 774950645 842583174 603483654 909934493 673844031 756618078 959742772 982361767 681190466 948901588 763705777 939746036 973857571 991580586 314167364 634700294 533162199 876645269 691749419 986952502 655660547 746645440 437837772 546064618 576133302 976634695 949347519 959502706 664254529 834518016 55029014 650730284 674067803 807998609 798017251 977940799 58801636 250416852 785199805 958472436 343278234 714739112 265564799 991589053 976824034 981852486 107790348 893924528 848046320 867649740 253699186 385608909 337194543 492395266 974073737 976593593 111325014 904948122 641298305 874325098 572212752 722493936 42920456 142807085 166661454 664581760 24232691 293132134 849054485 974108074 498723946 821217396 510595686 812410230 415095363 626552758 614835520 946588305 315924139 321489548 32127111 407583714 849529051 908935485 891203204 992742528 513617722 865350458 808480584 865917808 946892830 974759745 742001920 863689974 142580112 238745882 265421959 396698938 72566438 619622917 229191721 251352088 246980999 967150782 154768098 299702015 688780598 771386979 429559042 932259249 944738565 960490143 494005158 932624344 25310174 865242335 881697107 937238815 810468510 910885999 237174752 988282386 699995160 907447433 755722345 788963599 395524206 860953226 876507549 878003614 21251857 651933852 153330598 770638531 258909637 534508481 729912931 765657245 627025644 781721256 233855867 590116172 285343929 510295944 358622650 860153180 676281019 732429293 161585787 272262292 720434365 814140338 396182750 931668869 635996239 927456641 351591393 665515191 113936642 336532077 30825391 989191009 137628060 661650413 323454558 664907360 619870107 855190772 761393323 910338176 974987192 982774850 926894732 968462943 541644090 727056661 657585059 825233156 443362562 940065389 87438831 100682208 390264217 727234847 132003082 768551736 824560042 901903178 392015760 957744651 484702319 602015366 188500010 351365378 557039587 677746534 34845425 682768737 984456227 994737090 359008648 706202629 503927970 589760839 775788918 918850870 220283621 587224386 747026797 753903732 36213312 346400008 627391490 635014409 828078296 994401697 945320268 991836010 715100420 731723104 755247628 778457851 331994417 817359296 878442441 975187909 389697654 500849257 92762009 508779610 624857514 671863549 931731592 978535237 649501008 943210306 661046511 774173398 226200767 437171628 981000770 992135788 308443382 947331755 137958894 363689498 633165017 977078683 718876460 880274782 51630280 486938650 475938052 786295358 48363323 264158200 469572418 844693332 642748814 827098994 375464305 935688851 82747287 673022735 21367916 640659954 284624286 701621562 967171549 988598796 76500569 423152514 91525778 616991496 163909049 457588031 405723234 580245085 295890548 597405810 854792226 887976949 881159828 949078749 107188457 708989720 548626792 839916882 363810587 466582218 144823 505998200 256279267 845386154 562342193 794788127 133340386 137394239 740564907 882568556 291466459 899840698 680582314 846092441 471712384 838854981 570980223 792652719 882188176 887332671 661991519 873568352 102322355 678580420 854854950 971432723 628159122 747693863 108098523 469343580 315008338 916914091 913613275 927807833 884253734 884325343 427354847 476160026 468179637 696898068 959053613 977713267 725243066 752769183 530203442 990522079 292560065 964805243 643390179 693570817 115020179 738234896 57846005 441981853 717083753 936103397 664962339 890150401 303234686 602417525 238187636 961457547 297973047 386204970 667385685 780269760 954559107 993168592 337118383 997570026 437158950 682767122 531413829 607470704 812106091 864649528 608209135 629890870 108029382 671737724 559558254 983365834 420771073 571690425 833450160 875832600 731643552 926401013 877027785 886997458 629187683 865206240 853394945 864879856 890345301 925512302 425938481 640509099 927562537 952020788 706410019 816282279 198654800 751752875 461580706 891594694 270865566 282609954 96875644 305231269 50404405 456548106 831349041 936454390 232298291 388160937 47834918 752434872 48585406 245429442 105921036 761850880 813320292 908040465 653963344 927379287 710798 489806881 94932120 708061869 7595205 826111973 481456580 909570212 754448743 871844706 613988257 857057200 950991243 959954001 898040041 918844642 173330229 210775549 853406052 950744538 825440979 968401036 458962271 829194690 298656100 566412921 544991187 756218811 800511302 995359940 34408054 583654973 933508403 942112712 318425914 402648902 73991570 217392756 32676015 549266002 523085119 915033750 838082581 917309532 398881835 705723757 397302940 876854414 187913211 650274636 229938063 520524685 121097120 180283633 820929417 866202636 753149850 765683606 259031056 706075029 892994912 897690185 528189550 569481157 958303547 979188114 151511281 480473093 575332133 577643555 864722592 924896746 539925504 582632644 775783370 776664401 21277218 129854475 984294371 987034292 553406424 735781073 673667987 911483145 110337064 832206208 903111184 945370121 119546811 233228126 541821147 703728679 107937256 969972580 425919675 697320464 182635979 250715089 178863945 222802758 55719085 762312825 533142186 988748220 349203813 466984388 874998901 914683496 853473288 947092089 358632055 456239325 505644348 654277619 963333312 982603223 728340585 950465113 264666826 937870405 817099946 949858484 4278461 322683219 744942579 763471994 10092993 784898531 198844540 411474723 910737065 984556626 898288351 905783731 143057635 387404206 398047195 660533902 456400582 710026252 839403253 850192265 224514192 866318331 810607897 856248851 844934123 945024451 148781473 639295496 55568476 645764997 459413737 653414044 910315617 962193186 153635747 775063753 660463137 785782779 758261391 776288165 528674588 943667656 117738180 656052246 431766854 979958886 127581667 842310798 451014359 954049187 287733858 631953260 848919503 864422537 221967668 834665679 649007720 746477097 683582286 824375859 915823585 937275099 717992064 907523632 541519002 563868704 840699413 965939410 692838830 891828301 944881689 968605270 418063294 471771672 429724419 448673645 707156733 814031798 399155082 654312530 466660244 965568708 152681996 295100303 760202850 897247901 184289891 584284630 371225100 670954621 252996754 485322564 859425644 867544252 203018869 553685500 434782774 998372721 396720703 946406783 515932095 620479377 160208752 347532181 472843092 901126434 577644154 686891251 986884968 997281987 323646527 351756024 568637698 881510873 863312566 959144516 994012600 998629334 229026104 469402573 659504428 892174571 462384211 697526371 13066705 399824205 833399881 879036257 187371163 454601989 176209928 678629205 845116928 857914057 252504706 619402177 112652210 657690905 158893594 826768738 19267809 291197613 329189235 604869090 59962527 398235896 26791169 496580116 263245543 402202755 986453950 999460842 201178205 608784797 11960229 785375102 858619651 947230139 484893182 658475015 676909828 836167182 422720955 991559560 518150093 731594148 229055472 442970414 198522838 830929004 934454104 978133443 541815800 859649575 230158131 262189681 693011956 953706876 313176930 826754064 854593070 886105779 547373429 676815693 245058109 575002624 419341196 670447793 441350561 511608708 926528879 986182235 203862720 599330484 113595052 920130864 867057595 875876937 246783871 669722198 7821127 459063260 441149839 709072151 568922310 868052991 592976276 917741050 251223490 498088138 528785024 764767637 237400084 703600709 630091442 882330733 517160467 957175291 210766424 966418609 882397630 990901669 268184533 866077950 775735219 990171431 454791537 847716157 514734922 618603042 995387654 996800172 886796389 918595614 771324606 783744301 290167111 641864444 212797276 930849717 251664284 621280902 409684239 725592972 806658177 854575407 382465528 653013857 532374385 632761298 213177451 503797142 258628347 926533517 630155803 983739977 489619908 644595531 78794004 315170261 941499012 952716748 922060371 983032076 25018493 645333286 5395847 255699630 421459838 804664316 787999259 961278135 516789105 754906723 451244984 530454740 190365746 390252956 895259431 959748624 659869702 756020847 347952330 542826780 494757757 596612558 270871602 617565454 380162622 846179162 63716849 172816489 530266837 807595397 345191642 464364656 502997235 611800048 703834037 754575751 107081454 524218398 491516151 529850099 400792536 998414279 25173952 26987367 1628644 291618866 506690234 550141579 93502703 662339051 503197192 991987247 864671449 940918259 822940194 865584757 326558093 597032594 365083729 381079815 2246256 109358520 695538695 923070103 298208022 849888261 536554263 703587029 947794711 954772442 630315646 648695048 259325923 925426005 316643396 904719876 342100728 469485401 402321694 887693303 554520007 688055983 154267236 799045273 172036267 694344663 771343125 833758396 894837350 963708725 157252002 691457220 879447672 938222165 110261939 140948086 101812609 773020954 310482120 929333090 609044908 952729039 745959938 994636618 1559611 922535799 588304408 868936360 146369835 188556018 908672266 939265077 524160073 703623692 711518545 839820516 541745236 822753586 202342388 883727258 844036445 990011340 427735585 465740121 651166633 993307276 557299828 832748376 135838348 785044184 431868293 824451640 936812447 956447091 713065861 771275343 906225607 931313644 141894944 262356625 472894513 809343627 284919145 913373064 318414593 677145854 539061618 859120565 317346524 729507268 887477024 998176060 400140446 711879902 766129152 808537492 123604516 666736092 617897814 806736689 397311922 821908676 593536257 752646146 925312170 940358146 109219136 941305615 805508462 966553727 121120248 611352448 496552917 822743517 807766768 994672156 505294978 687753949 117562393 532579257 525683750 955343496 328638005 641316307 566719811 668919056 808835914 888070567 44599672 863840377 3315361 777401109 342298020 521890261 738437812 761016408 260849107 627838944 254787789 753876466 620439954 999233995 80532330 342078795 358888315 715549343 92868200 953714326 644522328 771597400 678343919 839670423 866863916 969322330 111269093 447274545 740284908 928926907 319914229 361840670 148647513 535670881 909675382 933515521 888222104 980040120 912145703 964802746 791003692 850272359 789976706 868369890 485424914 907167663 189078371 493047503 718135542 808969655 758223041 862144030 895874678 984724072 326664715 639573167 970846156 976443993 50293935 784775151 650972562 884556007 806732068 965928327 5904124 549141455 852169952 912806175 467044868 827110915 75287861 906600650 80902043 351950932 391484355 748540391 651624845 750799650 357486239 435774097 881043499 971217475 403416926 997680106 799916471 966825433 606066013 625543738 797813748 834411276 967426754 977313333 417044178 952954724 658195868 953403146 713567759 878248250 140663771 330503055 759632599 959134462 810117309 848645905 696619288 932594910 431277123 773940269 993510668 994019648 561903861 816481701 509904732 915726936 92259641 92301132 390044422 990240441 214078371 859629317 181404199 676395986 46749958 646517278 579548314 768811422 157416328 406580908 711379696 960590041 465558698 702137829 626997349 975942983 468149086 960233120 618393535 746104085 767345761 940347960 755099054 963866295 138933869 676113074 925078543 938071461 423255252 541492790 891805845 961746660 770267819 785463702 842163204 964403975 756425128 762789704 779431920 948609590 656192091 899927180 595089305 871906959 205946729 415085276 288066957 377173523 472985400 499139599 627657913 928145916 576476539 759176461 311781752 477852707 762272671 971012273 916381570 933981087 800840618 890113080 371797856 443245485 954247283 991659316 117117534 295776772 288369953 323895205 397411488 425874019 69729087 111634375 324542488 631696816 415388792 471981032 520540499 663852854 946505608 983517320 575641568 950931819 681367534 861108235 120446384 343354504 737991853 883518002 929559037 946388074 530621609 725887141 425574431 657191112 318376194 820202701 277789897 849660582 787575428 913885827 29619233 125627434 56654467 852698779 492683194 584579351 502809157 711754290 740348750 970956918 750597767 931437940 274942379 859041482 345103467 732297941 507305466 766505870 524808933 823757712 46321196 681320873 153537588 155881571 958468273 975377255 878811997 958810725 934116854 952642364 151809242 774044530 998210062 998777186 424025518 434422550 679926640 693282387 294255661 763230798 110559215 535311185 613790474 645065217 97616693 979949157 663344841 817321647 66191434 980605601 146757034 660187472 585477674 645283535 742342407 928525677 216115495 380277746 361741420 811696669 424129770 789646293 278839315 421020914 419670962 482659820 892013467 914333940 739220379 794200652 424936396 718095176 384430273 785877315 99362814 605030273 160632597 886435652 531992272 911493049 847410434 993512678 655568339 995237324 265646316 691594443 11674155 180181966 206815669 403403535 793200149 844368070 826577750 985695160 475635671 733497425 885198530 991645242 754145262 891738730 9232955 218675285 278583738 606019110 337006230 850074310 385417003 681605652 697479690 763915401 616222980 687550818 681138325 781396053 449349074 610692095 100227847 428462200 948299156 957206773 285715178 605701354 351695136 819800505 170019996 646956733 421521005 661563996 640313049 836138970 96081687 269532883 272870828 814407689 492787842 827757254 260843312 430670736 531198574 903338963 584871872 697956752 78431582 300357758 112956615 358468039 437565653 439224607 390474102 631394247 889757175 961970546 591058242 779178458 194771552 673833812 962654744 997140897 528094757 950903036 682560381 862716671 29822515 926973998 432225966 702900815 133485582 304324751 79749772 462603533 4812215 360497626 126621047 709544616 506626988 895823326 702737906 818354536 6023511 385905718 541458836 968582129 110236117 386404760 953360930 990480304 384510504 968497753 900754363 977912966 283881037 972968865 610347942 895744513 840263122 923812725 151356609 683251532 419016523 580271387 309486724 694896167 312117679 485730853 605215494 616721548 207043981 389458356 298612499 389307318 538308378 720791217 622113698 867575620 923005811 948018249 138521726 823378475 742273322 755660429 345947639 686146301 307815092 741459385 319764006 464007233 119496354 749304638 394440874 910059949 994689724 999279595 708001237 972462796 949230538 967200464 600258554 806762898 702330640 858382461 33721411 750837826 905576423 915817830 95207762 680664484 612159120 636991698 319007744 847712444 63316163 154612381 571287152 768044044 781627852 797358356 627770681 923797141 235901003 723372343 412686599 934080153 732388307 748724329 591436029 869929173 416369335 481717076 286589231 616563796 727132632 898894040 923266875 927304300 859973113 911839495 812169239 910641215 784880162 917434473 326047877 811713305 364728098 799838786 464505301 589830211 715112844 861274243 850194735 908550878 408823555 699609838 359830950 670759799 416218792 688178270 503014851 887958014 665850638 948875418 253844744 994861335 870849305 887501386 924545420 937851640 821123728 854253191 578914251 946426284 348933371 400038948 637813992 733912152 623523919 685185062 25118580 464590033 928141118 932033866 829480408 906500800 872400367 910429643 121552398 221494985 588692546 985218899 773554985 994898585 68960419 540572222 887131102 905827621 733294155 832148340 851751392 928031613 346446009 896541888 174726998 604638477 813226286 928150088 975822017 999488876 836224051 845896718 400789191 853365850 691771584 946246438 128666776 498637733 530409314 776238687 295288154 534581555 328625116 720793306 97484323 423503501 289533224 914577690 584366696 919595457 609532307 878922448 761271056 950431501 71615838 457548553 180780390 840482026 774351651 801597307 264554183 624472515 684963068 989232523 386513579 971129672 244830097 380870933 804213461 971447879 278469963 288680649 290493686 790493605 932634872 992552350 118955266 873106685 71951004 896301765 344174676 980876652 553638377 760652182 193855826 562807012 912392728 937535063 45591744 846249457 307600625 530743344 868808119 933163840 552702976 686735736 795371156 942589652 762816578 997203418 992382126 999002122 522508463 767098428 276774293 635575609 717504356 845158580 88122748 912624064 207189664 534136346 147224219 168088021 938834398 976837209 426163697 681335415 777609538 950247542 277743794 471344980 400551055 642944922 992048184 998844653 493115005 950564738 118300114 355007913 976545390 990278201 27365891 210224735 326303589 579732311 535022207 805169618 511494603 964267311 382668930 931191166 597079501 611168341 747252019 945870995 816304086 863953250 935203020 950867435 531928329 992953103 735864167 825097188 67638523 326135361 736524786 738743327 292984817 798578250 312623815 802420563 165770853 890089173 606624963 944493799 402160771 541252277 387922529 685560127 905032427 933940199 462363251 838602995 82024113 112080672 73378682 410732321 323614578 896884567 247537431 367436380 519999704 666051219 573233062 592497091 985791608 990241740 83954972 939359382 991981999 993351346 742326575 965624958 523400351 626638120 148701175 484973874 968500636 992552965 937079579 984729486 264192472 727311284 303749305 811293363 857708398 933970311 888586054 913115857 659489230 713216912 416192041 735067917 897307421 962136481 144123596 625893767 381002543 785530644 343756112 995417564 457492462 966729851 543038688 878978723 570264197 849170068 182272997 460097380 976006747 994004237 835581463 964461792 508364440 912190003 462484617 641513456 699625369 835602097 965636739 969478085 271216077 603494378 900417764 963108141 847019004 866343119 366727428 865741616 61580431 306961313 544525244 833835558 521465130 621343560 34078530 401744626 489904416 534584216 871036217 927062454 439821499 743273035 484200735 856325003 362384675 591287646 742404632 997753613 753039302 975846370 624316924 700797227 450654208 928244758 630769647 678733945 152838113 860093746 13462462 621231831 915613890 987211001 294942865 599530114 972890341 986045905 781740369 877603109 360506031 619133850 412570667 759468376 70052398 532778761 260036968 527209664 394756072 887257211 463117861 523125585 836115719 992970358 597262283 885348118 42687415 133237215 426455765 469544821 634780142 840652025 129426632 656490588 950080510 971966611 47467754 916699707 794552835 937709811 133719029 443377604 817947755 974466961 880906942 979764376 124317161 470938569 627497740 836582035 451621318 801522003 646598431 896655110 769225676 881704495 884411759 939682109 277657899 522557816 34914648 697377868 870312220 913862426 678383981 913617603 382933315 560892965 647912436 939339700 461802182 697217994 657643821 768926445 137696862 846096727 261815816 602142354 831656394 849831596 315154550 643681878 761274616 955004690 129987685 264027283 184355326 519955098 501231720 506585267 480655128 603881675 398970614 775947253 12406156 222597976 191189641 520991123 806541928 821797560 118519272 850829535 286873213 532856285 674626882 713962825 721231614 752668396 256404179 297671706 784722358 960036523 992569439 998971528 569708880 941078362 81662088 361566934 545643933 603609647 863600339 908905446 880393503 977767354 661421442 711418655 259982889 392396727 158956060 337874578 318184699 773817645 40582772 939098737 419143920 811957718 957146124 974042380 6897203 669374253 794622473 872836071 837019687 927467169 997401542 997757686 215469427 814092509 448916680 945707367 426635264 571837442 258528089 919790505 264578635 333283061 728774661 735758130 579546550 953185987 722333736 785607444 435924184 844102401 705724252 822265434 151388027 365313768 363932006 928460147 376826532 699936554 431016642 654156700 847156376 896864981 191162345 785032294 17975272 982919790 844481782 936936649 428969281 465796987 639150461 653371889 499383402 615202565 829632394 877324397 417426306 742646360 405582092 418982035 605054217 728565060 154743581 255326607 962698735 977090906 490522129 810877366 910878763 948491574 828663944 938220819 70309634 306861121 628068248 925029628 914422816 996585090 193434249 535576074 712008268 900815964 537828274 695303016 703155886 972003846 268926210 700733346 586396486 672944618 349047927 747183758 116622543 328903409 948271804 994644115 139914874 367579388 634403854 942414244 502025850 872192282 542749684 564304142 260266506 374166786 287417400 856866924 481123735 736149734 681400708 943058516 186133752 939391186 258243867 819135869 364578487 803414445 615274310 986816416 320079005 485595970 320286945 768760665 93124614 610486364 459612611 665798742 756943289 810471311 569899354 904232427 308866024 865644162 537908283 858582140 270572238 485424281 645616511 863720174 216709054 230360151 775387529 830030015 141942610 850943473 835916913 967382482 49441966 179865502 3037031 442850529 886584405 960962171 323140192 923523628 697892738 736699051 171557035 332720089 227561196 363089754 638190445 785595936 894128741 922630141 163881198 924419295 789132813 962912731 186759572 724087301 967872804 985874073 26959703 231387066 600155009 959097399 605846956 943620456 807669238 960643362 874817626 991617564 145445349 934704087 364076199 488944772 781141130 791402892 111619778 140265667 701373800 977937287 503334848 701404813 722475029 919587389 409617164 896813427 474153300 657772016 787335357 992785604 480688577 641607628 618877978 721317046 543717937 547469066 47268609 425509047 350795299 849331164 769412056 997954921 408885098 681739689 414390480 844027600 793296422 946302124 479340063 888640063 819233163 926837214 845237297 960976268 642507130 789088129 245718332 424958058 41412314 88236351 574604447 704903635 367161210 605913994 878811435 978713362 721534884 773862993 457897662 505430785 797717741 957710116 992874116 995083932 632962807 894950672 693459760 703780589 649337719 970342054 364500475 599030571 609647562 917728402 323563492 750271508 647020203 729035199 748119697 904363922 541181518 815394597 866258447 982062546 17806266 422002694 273021589 710061072 730993746 933338518 467448805 616611514 386388317 592004343 713799503 821978396 725509447 813272681 319898145 618900710 980393219 995965638 186451734 436313758 795106730 917101241 751929005 906320602 832893115 885297146 646835939 804197370 175180551 792352147 667499710 817425763 220664639 840813049 179590564 527356473 950774010 951604985 162255739 480162385 773790373 833371738 748333258 857625719 385788652 887176626 713152316 951418778 707572471 776792559 411651548 648240977 129324626 735735751 702135417 774772573 797298664 951861705 790660510 832919970 836961338 949936416 901414551 985644932 985445630 989876765 182639529 776576746 377293466 992723206 882524996 910059760 906947005 938130152 388080582 689520926 372401903 740102518 962281249 994317286 438486525 939827338 338075344 359115350 748629575 872895081 613954451 906073571 690528168 826974933 729984997 946717997 794528040 992644094 924227105 927123837 966101491 983038720 208103252 329160498 741665188 778390876 423307465 750948111 555240852 559675172 2660029 587508977 403238395 453531264 431511729 678692540 873834392 885175527 636699634 873132950 62080669 110819424 239382891 741422338 196989159 456419454 454129150 798587890 279716358 441566478 244353981 652935122 501955968 510549031 974877021 988053375 616739514 928629699 264091807 592612589 204906105 294622445 48249798 183703436 354569239 571958553 329504314 492847670 571242879 634519280 240751429 907998286 348608848 352986369 941003798 975232819 636832936 747552003 693148579 785602258 782857766 988665181 503953538 651567291 174522708 180864745 403473695 742226802 908033057 933274238 975644414 987113838 981203201 981839033 11954482 468072969 976231688 980531262 853625784 888371083 606599672 638622303 711548283 898554877 866466130 943583446 888181850 989819587 331979227 572354611 316899209 489857398 965018853 996860098 615845221 762526284 822541198 939860009 121780229 807651220 914573032 950656578 623474504 759306325 486646424 859886065 583031007 586179192 726190793 914545983 728598599 756611896 207570228 283484564 950818134 971303047 510209706 895757834 912993050 960487468 890538979 920652837 554651072 657227106 195289258 230493408 150551614 829222943 157071747 936411984 337187998 629959072 405247302 939528048 587092594 875395779 863916069 983675455 966779170 995484173 509989067 881735817 638313437 825965157 594407892 795491044 504100885 771904682 800437860 819690664 914270523 975596907 677790906 810560814 786183984 999154039 769811711 915722210 137636222 933850246 320793366 644421489 903597077 998934444 404419211 853880123 542728828 591095318 543920836 646579367 723564257 997974682 625758679 849542875 665169859 696757338 937526178 946556571 745947418 878316366 846761383 857791794 676421742 936722132 822063747 954769781 524637683 565115287 38807341 885558373 575368508 830934586 380079310 585592855 925761348 989847556 475008342 701930853 523153758 724639229 106369501 113824051 980234059 992867023 348780202 812172981 822120470 973966492 660116833 889460850 920418232 958243465 594185724 848052046 130757939 824711456 734041288 947363209 140504896 947209449 579438977 918028309 134719351 496760100 118884066 397492212 405771040 600627466 673018730 894152610 537681281 754338072 446655302 797673847 832624995 996756486 10568002 773493239 383287693 847278787 41559514 406031350 196671190 462960772 127864592 942814798 313738571 757642764 923600371 942033188 824075996 993369640 167447848 449262579 442437969 503232407 443085403 563109353 741546398 924163182 603878147 892003390 677496769 684716203 567781933 792582991 738142489 935354484 792330725 942118107 386324231 687855917 614016512 652318114 15488152 904668094 346917324 355244012 935989813 936595995 904182397 924238734 690614213 802409501 199593036 719398084 373730328 805553759 3003735 742512694 499049857 649094340 833894156 959901547 940777475 987575975 779737727 901367802 640531230 731750631 142502524 911480470 962551045 982252362 731179493 986475681 229856323 959802494 331382238 587227568 715967680 907522650 861368928 998576975 707303410 899106308 559865836 781845117 426630822 622302830 926320374 981515191 57478232 120381749 235290100 561595886 916845244 946938693 714583690 955222009 19733458 42797164 46395292 541425027 879893412 974251329 793888322 964438877 915607394 925654993 423519817 894524178 656757489 767998948 395824693 801198085 136270504 951813900 390725158 965262479 817356213 980855288 290112025 928233743 996239434 998226589 378247315 528022213 577963983 674413069 744505152 986797888 929885939 969024402 960612934 991978141 305779704 870947201 585979754 785033907 159876660 738221372 324734146 392545097 381390734 978432803 563636536 781628136 296426145 520901498 364033109 511384647 133438900 462692906 334000088 681365562 138558016 678578944 541545018 878155182 912664400 995394265 927035967 932677091 565365210 734714919 412169120 460626808 760657091 834265736 811513269 843275917 415845639 739725524 802842715 936083219 186831301 306519869 568065838 944581158 9521104 926502322 169901874 865849861 88327242 743573116 119870036 314240569 706830685 957164907 276547485 434041689 382366838 799596777 391242071 493323389 973823084 986733867 292884778 701549597 475317724 936042993 534223270 762856395 621475046 756388492 508340744 788819494 490375645 731856529 332253607 434048143 450704512 981597175 756596012 796014246 177811867 910196988 228726972 630245406 819437270 942878022 278513075 684862921 187986949 725478104 821177150 870039742 217502294 673525478 922678944 929285176 893023919 949710807 144445594 219087757 337783194 478200803 512428163 626850410 812758105 879010297 34313679 446326407 175365191 949581646 43024743 482763291 907092523 945136182 781728410 853638982 912114467 927316744 569562360 861216808 479728794 981531845 508493281 807206476 4198660 586616617 290931497 411763444 456010239 734340704 614915824 791410964 465094879 805320650 97964158 973509110 568898031 950131277 759850316 933598464 539405503 651695486 905806147 910341824 564137087 709428171 855564537 967179870 465792208 554323773 443977097 964987859 850333094 948672806 418833867 642865281 776097576 979903436 923238724 998350753 597653393 666692889 352481948 840575944 431926996 538749031 680142666 965075464 511428582 612360282 221153392 844907110 453154988 963273431 595725925 750424338 436913549 671997847 388311485 736537841 704715244 747715588 344967330 576783860 993854433 997263774 578718554 800606266 101344605 360424429 403877299 933076142 269064674 654703687 229873041 955131791 755295555 820740999 870261672 994689553 233191787 666129121 444775547 498504009 16962348 790000127 624927726 667443584 402439609 918688223 964856590 997310149 622503001 720856446 736945224 859731114 686106228 883395747 270145238 372878434 906370357 947826273 919214758 936433803 552725905 555477046 997931121 999854030 396419332 914731427 671743922 826151364 480264393 502671611 772156346 978139214 367267936 871011498 154671320 475477070 564703490 831289983 571943715 664042726 28118407 831654470 384030554 786494258 661729740 757465604 233380154 272621805 422211722 458275504 754851548 795546240 541885367 904855012 594939273 776592199 197044419 228539873 629360240 630347641 915040491 926421340 163466811 992616557 477987659 636276753 903537827 956023748 521985761 971659664 438805810 509757601 397448483 585760758 802165482 960270931 804966511 913666994 113311065 168993779 187595639 775225268 66083000 782365247 261198376 428164045 317384049 323453710 525943494 550574786 357743416 730525837 104929848 751832854 257972458 365663266 921007269 943149058 359246483 984395940 401246200 906834390 641902611 712011927 88799751 237702981 983822522 999193525 337466778 897077478 770810402 950673131 626080415 744253498 974577800 997268507 541327955 714200682 622407910 773802402 958688564 985982441 357609267 384856734 758666731 853301427 932070340 969496317 802581099 804553237 747652149 971896299 370905655 655517085 5947984 554476013 561097709 674174804 480059302 756251522 372051993 456524834 835919831 920518792 961666121 977117555 39446508 779436557 387488870 655447575 616618830 871286313 80110582 278356302 349379552 732004354 378858399 788054386 54273513 973120700 199453001 935009398 533332682 866186867 217619577 277198695 978139140 992050286 739925205 986761581 521384391 884262554 423535185 817995276 799263318 961157059 538937366 728323782 107093668 269470047 957146336 991833847 779107222 984138246 688667014 721282325 609161928 822524974 884072620 953292026 254261427 513382660 890081607 943846225 275431492 819791690 564469675 951403243 933528522 956231597 722649938 795162124 609268996 654409440 794066085 848918806 993886548 994386662 115918954 550894447 214661088 223314894 95761126 790917579 40495653 993571741 180228626 825994585 993372313 998161155 385825604 675914897 826252357 962319453 910289354 998522965 511733813 520758343 241590277 788810265 543560367 786876528 673233556 700836126 943007690 943051283 928943490 998760467 319326622 521092131 498221429 823798416 276949081 301878013 728569007 966134006 801528373 995160883 709896680 831642969 855330555 963113322 427866548 948473218 951011912 973402529 940668148 972167403 515679549 821039818 761860214 964572498 486127747 963456615 496221474 867930924 813702274 943514555 458444313 835738226 189540405 442281101 171079335 228909051 136737408 885013192 179525479 680927816 28174402 848144690 413327046 830669045 550223614 645775323 565749422 844982629 664409754 690094001 703500839 936189146 800965597 967559286 479364849 552810497 409913882 939134513 437437551 637811114 695130597 910500580 101932796 265204068 64199302 178971934 805044084 993247932 813929292 915394657 151571038 257705767 920601664 933509017 826433903 931434588 457620129 897879014 947155704 999062631 294739400 458396256 350379163 991677472 811422068 901270654 612544588 615052355 639550944 697177669 602980623 639816017 656464076 817468279 91676266 279865153 406206696 718091438 16615477 694034965 959505451 985484455 943490346 983538760 161670109 964560077 129388072 379493754 883217846 991916858 480800874 877440999 433101277 531664397 491192265 765889427 444466103 808913307 144951686 514504730 527605304 679037601 838445519 947827681 110032471 657039892 542159563 675393787 977091526 998269610 957890903 983302957 8031509 746481553 402867100 764857852 533150828 684257808 875953915 908113121 522538353 838568798 574220619 880628276 93947944 723078816 695917564 926394736 937195721 950137119 189388322 831444122 556867239 689424844 539175795 867668142 663427059 771050372 291343598 393217741 662632560 731940425 776928044 972377877 735389183 976863652 550178030 778756745 717077279 999538649 999555573 999773215 762989951 828000583 756989008 889520265 512249328 609532174 324379101 627526189 914377861 996948334 821096014 999890662 556782155 609407518 952190440 974585549 290016214 593170188 627174363 752477932 595971851 816563932 879775854 922406769 403627441 907979517 964079794 970573560 476214219 581875609 315144935 399226448 746504970 895504814 74395616 327364542 160815411 561440142 692634409 787301690 791576885 919576874 647024366 849802110 111565755 676488135 913090409 985856819 541280216 939788938 780407615 981504231 204665766 603193403 57480029 192933519 107469242 737578232 547908810 802367085 929555677 932569782 753278767 841413208 431382381 656356203 92158420 674386373 990993596 991878964 718453418 827707082 815801949 982657767 493171659 688843344 971893822 973835337 74977140 169507920 44611049 759512816 521989856 839517438 332787475 977703010 631782711 705452863 36251537 949971103 791435687 984886046 669817295 901827602 809928585 974775821 440034088 510441766 924562963 983493656 783050755 885835333 576390055 801579167 848845554 955398936 236022435 622653478 853404176 860938625 608761979 745783066 654471311 822669633 839264625 966331658 308661957 499319307 237327281 767923577 567194449 812648877 212286139 976376610 590589849 641948538 103799249 343031140 509083193 638498505 964282311 994736942 493256429 728394705 953350378 977924502 380606648 843700412 380973177 386030664 815029773 841339164 259715665 492889993 984295952 986889383 761660403 836801108 354313187 376224989 414662606 526424649 953027940 988807805 330271909 384669201 195412209 240948391 823776669 856752025 55641731 524426165 324967371 845036989 815911932 862563064 893914333 909829644 652827496 894793918 114181026 119047144 563679281 913198310 941049617 963298216 290635675 811274952 796491484 824397783 86057637 472026042 807608725 926096277 519120868 988668998 580661758 993517603 181720667 681684003 729840107 994481850 491332113 829541972 673167055 818955094 787765949 872522666 983015080 994990140 58885352 194155790 649507826 909614239 986500448 999444682 570377665 785756528 845687186 988594362 257144691 822282902 582665605 722931036 866119066 877158698 18769873 390485416 386110238 711247123 73225778 506499141 553212730 724302133 404577831 963346827 531141326 763967395 609685383 795712309 896084105 997003217 252486160 805688942 883921571 951322784 916968550 990178440 888008230 976131235 798355227 973751180 310186348 782667312 37646622 954381467 153896774 944594888 890799553 927733723 663466023 886277165 120815852 953411434 647547257 997701552 889967453 896467523 336901464 951732220 850387931 944178864 806768706 973221444 811242318 892759391 287261843 363483132 724406633 733762368 556812565 893780235 968721069 980108322 575574195 986197976 129618086 868261191 336222138 879747689 357773163 847963184 20965578 255885164 571458987 870983813 494393907 803173192 975402869 992479264 942703760 943151109 173172033 201648243 784551955 821315805 749975053 975021063 858986213 948115719 781383764 895439945 352498515 965308657 390221051 716170583 945608651 947390780 572545646 873588719 217470726 682372708 852117949 986987137 857737276 859739154 784520463 855980076 986229093 988259554 879805256 941808347 861801250 894219443 311379897 607369782 601943791 610424213 767428543 810498368 531447147 866585678 932473994 959608441 787848715 825242034 369164640 415722153 873610943 999721245 932912026 972720004 934419087 995700842 159950882 578646951 951282235 970168090 607989946 987130349 421050442 804336263 211700109 900051896 70602474 462489470 480557047 561499880 174936246 574899529 847710882 999184418 446530906 661185693 296860470 749089966 959323744 987855885 515119562 952757915 456067383 582689759 777443985 877533234 972437665 985959235 34608116 892710348 442046511 729729581 872084534 994697714 82043830 265221102 388168537 461334807 866131598 994136132 699490022 767382132 96442559 948191479 843186421 932082900 905592672 952048030 477789855 870876932 464264050 554660893 514023444 715144757 909745387 958780696 519982085 874566824 738511641 763735967 501489407 521087745 375877744 862282891 585269532 984655400 285529846 535173157 26798117 197501529 470239157 656615577 778710107 973017170 759994899 875940912 103641846 373267929 756793643 782859781 817248022 944843735 382052825 759987712 961881774 966354962 75094683 790312859 644687506 789127605 979136233 995665024 892843224 952801084 573279557 582283617 965652251 970470112 810636743 914373473 155094055 348617616 442160760 873495188 134169493 840432884 47431131 618564879 746544142 983861629 653578242 780390588 540593400 820993019 197572137 841477631 219316592 270228955 933274170 980058732 835302543 944434317 766133402 946157327 56913580 963182980 139411397 316075841 849966745 952140817 742734870 814067282 241230849 431882719 990659035 999350628 466588286 686401945 205803028 660877827 283918707 601156266 125487337 405619826 769578344 904977592 596941996 885419252 637312296 889891294 366169515 531644508 184589805 513260509 351036686 913299636 531864603 707492954 180466434 237269954 903166487 953303075 665928983 745658643 990440608 998469751 245247903 580555623 550794023 770197768 591992992 786378595 151020338 339994033 351271619 374376848 70687723 530220495 741302817 763393830 936014617 955358029 467765220 855229605 806552092 906568012 598679438 753334237 855048235 910196720 772280222 892216121 172373867 519422389 33321343 110044750 586307996 798834173 974797044 976441609 339646571 988145459 723701805 897242520 19190757 234493476 251011920 554219570 406411607 510742216 705858566 848221124 849524429 996369816 234217942 302885287 497673251 522468826 335228776 831640953 490197518 951345597 463967574 557804544 56935656 439140667 723380205 952299840 309346939 657300929 570698901 765075039 860532151 886181267 591713162 709971183 391715871 716180643 866542534 888395446 375012735 433987582 680693192 801899471 248731686 681156283 539754864 766217303 374060851 513678659 259998740 452891149 702328343 949210390 933077509 974348277 524446718 918603002 957737313 990384253 906403117 973509799 987450257 989023962 17841365 829944452 918469389 996967242 212867812 430048698 351136973 992989681 424214023 962505396 454730058 837775435 399610903 928958201 195741561 364580321 355991364 944036687 689644322 793734357 218600279 474206090 443900183 707078953 55234922 311016913 89584555 217236316 714625440 805895256 114367618 249343986 369523637 633714925 728126496 767516599 45570875 860593648 437768990 924326165 105757757 542782618 599468419 859531288 134649084 544947828 100943482 614826144 419240178 994825489 145826462 674910570 245612085 759667417 144746803 652400205 446543725 603864451 648169226 953416261 463015811 518003695 898245052 977663462 120366453 642665069 68928533 926831566 130324292 160926501 267742773 887636095 686191181 700217193 234780916 810075359 244348968 386268677 94308822 294101977 455153544 837599519 904092923 920870274 594715666 921695766 711748348 897970356 422656535 864736457 650120108 895781064 659819068 750999720 909709743 985758461 665172051 667071776 490475676 732103481 667886318 883989322 87654905 932015772 365379152 683681687 794168318 930787791 843267310 873916542 334040591 959466946 662461014 909287917 698946613 893445390 894146410 962484023 645008588 972133410 827586741 866455677 56503736 552446280 337663606 975377083 133895250 834387926 466746716 885554259 869005356 995853762 382071444 598932861 945970353 974581118 531401813 825293950 641228950 950478821 418282872 610447483 951014368 963915986 15821286 88546465 685995043 787915928 801246159 873174536 788636163 973960170 755726591 947666781 867415750 939753324 506469060 795701952 406719492 979607476 988274459 999819530 882424689 966378059 426531241 875957032 295682027 469866245 615377922 678202983 900938825 932048054 608131001 854986301 162703738 522852044 199394553 515192312 666483044 968371031 73119539 136090244 30382384 838160660 706530798 798941909 725330695 860950059 789474569 815331165 899452125 988657686 622877537 890918707 860403907 925897498 217478344 534527086 200254351 824350160 954741204 972486329 644453391 957576108 651632575 910837606 960167176 967830711 689241561 849451534 226882128 395442082 759310243 941128923 265522630 316324887 895189996 909945819 558475104 698075545 223193736 315136063 865147872 912279193 562471257 593133901 516462748 749149148 874516497 925318021 842981818 911408418 434916929 645724258 219572124 902966581 523133453 796879069 630988984 964193612 829789597 848573617 540850131 611160645 920510495 967246078 207156513 299348065 793761284 962779812 878815419 885687972 286502291 941095121 836878148 914794316 556104143 575979329 989694588 993523629 489872143 840899648 595895961 821662786 124370726 613200081 737690370 860980126 286572455 787498195 58891229 177444247 896770323 958744914 542039622 609835441 912625337 931652406 545812844 963037025 650143461 936963872 459551832 516264895 182828793 475464679 498924488 736586077 697444681 801219769 529965431 620373837 94761897 239178421 763308978 990114094 5416281 396878711 83072672 902073813 692817348 815673304 231179339 463644007 207180581 941878182 377290233 908913035 61669897 900635709 789274949 796102130 417895668 567420251 398032064 618082818 35352387 596218332 657172259 973587134 323807827 512188182 596389970 892706521 323626073 952291870 144632656 385355475 778011369 811548633 735606874 992436389 131648692 210671093 9777646 324763988 226569168 830900150 472307326 507777012 994918237 996662695 270321513 846525323 253866771 418803919 533330026 874842952 698929865 799551841 633481997 964766602 579641550 808822030 818074527 832799659 637592295 703880012 478032572 565454934 392317581 506226995 423440561 614877625 4311768 116169659 808121791 992150582 39460627 841622802 960677099 987180783 728974332 969545673 441496319 828811098 167647896 715975430 937112306 990200574 265665804 703030344 124203723 753882743 103845694 835910953 989433386 999263122 297139148 840745925 529303766 751474005 899629528 968461749 298288649 482433938 484014919 641300557 788624021 892750798 582282994 594318315 874507004 906302439 39116702 249181209 638501325 688517262 531512563 939618229 939136078 949748094 181219392 883594760 878146463 948382606 772642444 807971067 295660986 988068640 20922802 135806513 374894410 973449806 367450745 750471013 408049912 914002847 421358362 547569591 872625226 993204927 129817818 802298733 817887770 951845965 513061698 630167909 421436374 909694181 129765469 281082157 62058488 276386798 716665255 857785406 672815479 796346325 451961930 615249311 764948155 922818188 528048459 763495673 634220553 846092171 191413480 805737409 889648631 979388733 19260618 133943856 386895511 425961460 95869289 728551400 191600633 704671879 668224478 706746237 551994783 772044186 360952192 911268712 795058918 806540149 179726199 397386577 222905684 807094166 889554444 928965122 401789522 510840939 871121238 922096158 830944842 928451104 566449414 646252418 402648233 532704816 949376982 963107308 848783384 886341398 438901618 657796037 503119603 609071077 720319351 772520793 68363979 114682446 983317679 984118071 268526702 572178594 955275232 984842594 939985345 971161633 414256784 835985133 548187284 768924391 872841165 873001124 541056631 602724318 747094322 916277891 522487785 569534916 877684043 929014180 22709669 788878589 672251619 761587945 777805042 795142417 112778251 272323182 62065376 784855497 387574029 889846261 346881811 838487030 372382517 693524725 227981465 659782495 258001839 742468155 460740785 646612798 969328894 970605083 357703988 428561584 997749713 999185412 494658531 563814660 921885719 949610583 89040798 581816973 870769725 933659958 324661545 789518744 402329973 470155244 259054191 512211407 301321854 625181975 402818283 758084757 762270333 958774240 682587668 711094891 168674137 940094359 374889556 753539041 788653545 829156881 961258978 980519651 666884242 966279293 3477170 852038485 943970311 988339119 730367367 829667364 934284341 941453231 222638701 605169451 335660607 460257862 66985000 277292602 796098216 998534633 424604258 961203831 486377443 775382738 259049477 637488831 80650291 746587928 909884450 928079292 614408232 715996890 984800207 989946527 401049594 992827800 732624641 982300861 757398849 991247818 971641086 982423774 180465509 920168026 659923159 974326922 722694575 815481411 142025490 613598408 116281876 465074188 382734698 832919454 749462142 784234193 581981897 848633781 911246652 935908678 806269979 831959985 774936816 780141932 360820821 761826219 521054787 734023136 844500984 864182350 753663739 942397191 221953038 695002444 34103443 527842947 422321262 664555883 415546782 527912792 981824674 987917030 137779091 211315070 653663769 893036782 616246339 771911299 552260226 570193886 206337034 252073490 428762136 957149394 579856761 614963457 588034561 901123286 568092152 930047514 572580035 590515093 702378022 816923371 860950127 903932088 896523234 931921672 685386550 733651830 29949827 940868753 895341292 898665634 406505261 509427868 920674709 924290414 681093395 846785582 247080506 976196068 439531139 942613760 569988331 782499826 29456534 373954560 426501169 884065469 376064094 378237299 993832326 995115151 705999941 972806456 629636091 764331764 779746717 818179609 586526156 939557232 506576365 806979437 32510804 432657579 718635404 981942475 839878555 954272534 465320848 469201653 826248290 978629191 734200755 984066615 821557673 854314835 865841823 937600558 454278963 655161107 493103615 675587685 591341374 966735662 770060315 783058265 837453190 993823539 820123656 855398272 634269668 706458943 919752522 999001317 992019846 993474032 627366272 696874066 233907355 620086100 796289491 885969527 864873583 894407388 916572146 963208302 699264022 704911079 452629958 830273705 378447223 387588480 163117248 422886245 820898512 861777711 148574782 946155266 544235452 856151786 718153623 947706118 183529143 587650625 600544472 714561863 678678482 679133552 612996225 691866616 60004997 782341035 62066577 692919737 984987224 985763093 495984818 866662913 920900679 999315397 887272910 889810691 327645745 625420834 268849800 395939254 110544951 461024110 121286552 244077952 790820765 929742865 870684421 996831299 479112009 727829393 335708436 887957657 810060759 936922853 232138425 751007998 64407352 816634311 962173021 976921960 752343287 839611797 900037578 976807246 459989805 495558194 730761929 835953003 286135750 876114113 339209963 621628682 492064350 518821346 992160191 997753994 675217607 959828290 696436016 799335717 913613861 957655520 15306644 240620069 298459637 616607868 650508025 964214193 288480223 428185384 984950020 998833587 867456907 869015793 390964307 785412315 383206321 949547767 390895506 846997070 808261153 973808812 203931404 205870501 644826277 721444535 186353376 666594769 560054169 655316745 505327458 866182941 593782239 774227253 191481017 336190050 839681990 922034784 425015612 841351085 882506249 891365581 777792865 856562698 580549959 583477672 439397346 731305132 830353731 926949162 941419335 979557321 927555249 999824752 356011205 656773906 859385754 975089431 278221230 884331885 859602812 947291194 808886187 916762291 155914372 609020899 890184200 935770855 551431223 776965850 641597161 802737840 638104317 781215213 256095484 979217593 365036240 501902775 333901932 950073488 970958114 994086966 862682188 985200107 308686765 344390454 453978789 544246167 611674292 668569102 219984673 851075643 579599145 582045289 615548275 929587688 342480691 435510622 195716038 681112856 235062868 787184576 169566830 862963237 531985275 762420179 181400403 676682969 388227832 983462257 713755318 990007244 193440070 713892955 976861046 997779428 398049031 605858243 883008523 995686963 305538117 761624740 676979416 886886558 154452469 645635002 342242530 694366180 207957946 406899556 39482206 497799876 761767610 815665121 998983096 999145747 834931359 836206400 914698033 994473355 318904287 777491965 199354568 262055135 744112372 802561108 526758184 756639977 282648037 499185789 118417336 257192531 631328709 691203509 162136422 569733322 938238662 951034688 239243858 401119120 426388196 990792419 889621372 912661761 281384514 832890523 989773981 990020056 683446960 803469918 735075360 934602242 760497373 784992831 963141709 964374655 953761144 982301340 811129501 899419917 510483705 626964366 17449620 686851098 89672668 663803230 458125753 571787538 957203781 975731750 122271676 986669737 712562245 959680648 578012696 890417132 764997199 798662402 387330559 443353446 56482057 586331613 313431305 890385258 166226830 900373632 224401412 507840456 220415551 402725241 306354819 960516080 767281872 897228069 428182082 998646933 454193481 796852306 451385554 927921882 747574035 839845375 941550648 965451276 919539721 994733621 485336752 709073098 951130700 990740807 670208738 809046766 932056473 961811228 518210273 642035005 88093225 938800339 271369146 996661206 665042107 687061231 524123121 611876627 441884359 645111599 450866970 957437792 132189997 290898759 348819994 402028697 244081493 474690653 564978637 761503275 1374103 348197629 536786364 537083858 779898149 972444572 569737836 772805740 277550711 405042133 820721088 984895130 573700604 942076729 211425936 945215680 725641907 832687507 143184006 328016797 747661196 861752980 882101032 901961387 49756412 291806778 902087497 993830820 50434521 484319587 54383022 324484085 994537638 995875073 761908267 951319710 396317689 943781319 190707586 482890305 421053813 693234990 145078252 857847990 931455476 973944438 998910816 999476597 243713819 725865153 169094241 466803226 992538230 999060487 549949559 629812747 288770015 622746339 780812915 896598170 633342693 766001725 384211538 549659474 548362559 687980060 844631139 993027215 912414341 987067667 340362883 535201114 247334021 384338084 274366840 553558579 933155027 990477465 619849924 683770312 906442323 947177298 914307891 928629007 348164396 873405208 387384594 713196705 255294526 820770576 245358647 852192122 765023436 873282740 566452674 828667368 52286405 845787516 249223246 900426279 514631969 964410313 1697515 686381167 768766598 931610172 497911479 535207440 85389042 991064537 125964489 562796385 141476890 815187480 100827086 218654330 88122383 997163159 75156504 852629624 105392306 220113593 165011798 573595231 539098879 696631181 243061414 518504700 494812946 704326212 621763050 652652153 880347021 886592415 109105359 538315259 136015989 533360730 191404573 378439990 909844588 927294393 647883115 827042501 370521122 948369896 842707525 938886781 355485583 742837093 315549328 864957724 644457942 659431091 733953959 794907095 831977453 935624198 706218049 743890743 484668003 580987807 423070561 836975963 421458195 669760064 904772174 906351199 693461633 950149192 490814433 502968762 702007988 862410770 808492286 946618212 710922803 737557420 762355182 923025725 687474335 828330194 666934781 778678290 255287749 395511251 16543945 808980216 615189354 671377813 36264375 485866598 565764266 691749146 655656150 872648168 9634918 121790789 331565487 334638752 174029267 279295324 836069488 876281652 386261588 693156618 199741413 808130266 992584620 998603619 204237467 796254831 734696853 742738592 868160131 968455752 201307137 830109862 620644001 960397652 326678483 968888706 987096832 996937856 322273447 892625163 920100616 933020814 817583053 929243753 482848187 632221926 185120558 214016727 369998393 910788353 546730531 822430071 670494597 893535349 783657382 879680312 813930984 818973678 600588460 646332435 772932142 982753384 567436612 653515782 788568613 812000432 469552516 584988666 167778428 727347536 578679827 905666967 206697241 396751030 186854960 966083274 305051429 851823649 712580295 903999780 294731173 863705268 479898606 506422959 893456339 918924498 452135058 809038273 858504544 954874343 908868093 913137310 520924551 690774643 479637436 922887286 316133834 456466409 856561729 860489744 882780298 939665105 158964593 455455149 880489425 907678284 798787044 883997736 252195708 336966822 868396413 890936469 181990247 601786604 53093935 709097094 571247638 715548729 610537249 738821644 891784042 946618555 760131048 881378637 850796990 918093980 239172458 536263468 209387957 248223001 339776179 497082728 12160527 890252669 704561369 760921608 477045711 745091116 275091213 659404186 261459013 882664541 573325248 726045442 20956474 132611316 819990937 854077337 11702457 51603132 265650140 886678234 222394587 603521263 578082485 897171710 336829392 819710081 260976024 318897305 703978021 980044145 76004898 658297450 755011985 835974168 585715584 666601599 296040852 983070798 897323383 979130663 457485778 724334047 533945996 914709893 873610922 905306814 254805351 944250308 488704442 553125130 662198918 664104777 86112883 302817581 530918830 619144468 187895211 836084753 932250231 954055470 597795995 927543691 856676238 942688293 455867961 883306293 177903462 724686709 657776434 700006184 42232859 42896600 410743931 846243850 321102410 603466942 546043036 831264402 726883358 959712262 488390671 582189528 609362759 951273571 438323317 564381504 134313830 255202605 248995081 438158445 199957938 681814407 75759798 731760347 929744947 998328163 522552118 873090915 582379783 583582174 511041137 854350559 996330920 999570950 949900300 977237985 453886915 910651641 56027506 413657002 988005447 998617247 6016728 936362796 854883815 994326895 210624864 418340074 846243307 933836942 549051388 975575844 431386084 933810645 807878176 896746701 605504272 918287894 140737671 435744124 16524822 890922450 520647141 986574925 644980696 888458178 869039810 996870808 702086252 935539268 162255451 434558264 998230583 999863142 195836174 236172393 299884428 742382819 280465261 908888516 822486969 913317341 273666009 383490973 750803587 831910553 332412174 822175885 568499786 732690385 798505934 984854570 970422098 981919262 791168156 868161834 441822357 701717867 99574531 697777630 480576374 984123038 383532013 560782153 204973471 670341536 468215217 476855010 491393990 619268644 296971796 388254877 54880303 854800731 99898870 799539866 50356696 645022103 601524792 692953687 652101020 869447425 125732317 781082895 748150518 941106848 720385845 893097246 582099020 783580037 784916327 924367950 421353065 856229887 289928638 983477002 397151322 532418280 171405139 225078496 455888875 828951794 2269437 169366728 75204584 736965353 543138738 700574414 799385633 881323767 872240567 925930139 637262898 674352217 107651073 989964030 484533237 931843098 593016529 704107337 369979130 711072545 439689107 581500065 152847910 911782906 138908684 414090583 299579564 327382551 140331819 208317358 355925006 671962402 403115963 813992593 289229186 764594921 166816270 204674223 77828385 769775706 354449709 562771042 336137670 746915137 434550293 962118034 867997346 955567231 662080639 787172723 427745772 634409948 956381866 975244544 282020054 800283362 655362158 838509665 3595607 792613169 622675685 657723736 888648790 892366722 271090099 546239885 586001001 655712060 750850873 920964075 528678228 898549996 204219093 539470404 173617001 295729408 379015510 393367312 980911098 999263196 887132127 980166747 870985103 879395304 140320953 906989116 586113246 777929907 605924001 908434218 138797096 829014898 936539395 958810442 209888001 884955805 194287595 224676785 122540372 685251712 22660033 345880919 464307296 791148313 62475054 827706168 20500082 195670349 859453180 991073219 824938701 903429176 318098852 947370645 44219179 670102383 867376624 869014813 274434669 870130347 554014895 984357043 888525096 948084413 530700589 608444144 25438872 989641345 408053597 883543565 853717670 936592844 737791673 896737016 338848530 570068809 898445215 899444256 616785054 621428007 27965927 195998899 569767172 685707681 103795154 127563073 485451379 697412555 239597815 663775059 869708320 993931788 990334053 996470403 981801141 985863761 950201347 973084326 812078351 899103682 400526438 836302198 793776422 909628835 152783443 264551880 770212041 790183485 823233163 944045467 341563981 796575465 430956341 618556591 714751743 839734287 359345309 775023222 989706542 989753529 979665411 982646207 99587164 948759799 103179526 411453998 886050017 918630028 631092928 791875411 973124086 997166624 52291123 993460231 974599924 977856919 566664851 783848639 683866812 830822959 326815253 726268641 502162972 764349186 19739321 373466830 504625210 826768095 455011481 642992651 185262553 335726012 930391679 947673089 320258499 733468220 605241464 939319685 885457756 893011541 745058565 964812704 984148565 999007088 712705251 936547512 172786295 781539017 777034237 859337959 799125853 938137397 60536190 248990730 119518321 772842444 252426636 792548222 950228486 993401688 597496984 715948959 693323744 906962136 365538379 416691930 447243988 534062665 275113011 458939647 997204209 998516240 842908008 896019141 458406661 564022578 449443400 839893137 775243716 919854862 757877766 777261281 827570348 966199739 20239896 725879461 708924769 753344579 218754430 233692706 787569681 792423292 604930782 614182371 924029558 941097453 327739113 671580105 881763002 935614063 501347978 536035964 874835831 990970402 797868954 951097973 936069845 983061094 776188536 859883227 613262621 855048126 660295028 993102163 741253370 851677555 316919252 819733547 803198472 835375359 819432946 980149358 464640419 617613414 466976539 808315939 386904142 516511873 342811878 698135363 324451027 563206825 387815562 810654672 408131003 688173645 652141421 887274596 817321163 914739453 160749409 440643722 225884259 764818767 511604423 544047795 352881809 580181648 920035380 958033013 120482168 691236149 356575377 850693282 262912986 363274454 103108088 403203477 353636082 876960959 409906333 728535001 619508549 718155352 264437469 433430185 475741235 562266693 330476648 851684652 20247112 941497833 700917662 944594370 109486407 368005552 706693619 799386310 443587129 792689504 901781844 967137664 754360167 800108888 411500981 639754454 241750405 990744585 754489799 775703728 886590575 887730596 584054797 862797495 698873137 871313642 938735050 943570949 734889440 961221119 364073973 502086874 327219885 374860568 78149691 755118473 220250190 978260455 95839994 745062175 382650870 804743485 812634861 817489344 593207401 683053497 806042239 825352245 843159891 905496893 339685482 717699093 491393957 589085391 137122909 821990659 304794855 889747774 817903713 887574751 311210819 926891438 627561801 973018239 123595130 461438851 552424455 950905027 90098439 859811923 997300017 998260377 966161498 986382779 991390685 993687137 295699003 569791764 86042961 701093682 948279189 998422337 814748115 974388945 227595756 546556195 955379618 994623863 509823410 645296918 933960032 986844271 81303312 579367606 691204943 805599316 71591331 347914929 129011279 987994466 991917882 992097071 820517878 863124323 675198143 944331301 593577704 760939657 286035575 576645165 785005967 987270572 969373728 992537225 959027483 969373003 685360622 911330402 143445745 812386298 760159033 815327549 51137118 652694504 854533966 940515398 966720457 984526827 520002152 934904703 193524022 308046403 697533212 956174482 647404592 764299649 69509654 894990345 554430665 591162333 726426848 819190525 483208902 698581895 547983202 903091571 694883693 867964073 424527673 608198440 744867447 998501633 379979355 953188717 770840429 928118655 618425701 938379792 669289023 700258784 377796816 969682607 607006969 695666078 790616031 915480695 50964366 813385886 534132461 946421284 183417903 565123558 884267497 947468743 784163487 817341849 973233660 980234220 387902599 407452811 96725791 245106046 21888764 531968824 600777224 839617590 114091624 254960495 224105129 939915220 913100011 956773182 879938700 929855317 194537133 919992044 657508488 928987681 358983059 363620805 457091998 757712970 408010958 797000415 135963235 867097003 487344901 681494665 612918493 815815904 170264232 867705357 975853785 999178708 42244163 150746583 453025420 844106724 617365853 772051343 418364040 889849106 717246135 787257718 769806498 848661285 348418712 661607229 597422472 728737063 619590158 786823161 969805387 999638793 665283543 766585667 612140196 945518412 220138302 338063636 861728396 882993163 410820333 779160899 859602062 922123984 212778301 646418464 527298115 656486442 139604831 623159089 523903935 804885401 679964387 835117978 324117531 736426321 174714743 756810268 181914766 372917178 429575546 739917121 339161039 943024221 329051913 711289756 71846204 273791828 72263806 288639741 879920615 893533632 211801062 348359957 226696545 445901526 264779353 535638428 513532518 940610638 404021067 700760254 571927589 973519480 392859248 624707460 4695775 267619525 933231038 966399936 568583355 877979744 957722591 983753613 831153047 917708871 420498592 918121032 542509342 745949796 93754467 418396897 55573640 549365298 572757380 826292687 947025565 981369676 904350657 977908218 519379353 672524080 571034420 641197501 909601551 960971143 325746850 854222220 991501176 995369727 215827969 599097417 704451296 958248177 234532721 398142789 19130353 582252230 566765244 899880351 630691180 874364019 764483246 819714727 586317833 948747638 298905683 515163462 542367311 675350410 598739229 984104572 507001662 712778612 449162902 708045006 953285608 969109256 504523582 585313036 492164035 975640100 460557996 486395754 685692423 691023324 920796490 971525181 829799816 941630052 176595636 803733475 148032324 404136560 243820539 361000816 38505764 568587700 375449596 939252459 329892761 645333406 998967383 999305686 705172731 909610015 929923673 958081424 968239044 978517846 501660102 796889720 249936343 770275023 565852452 856191568 765788833 976021091 393364483 855617780 144107525 850265053 476386316 612043862 355985940 511152066 892624668 901877086 129458081 801612592 744181188 750773785 199503480 592805537 11397683 128623581 236999134 365652644 167534016 468339015 661186587 790356995 548454936 812960374 924963817 992443937 677340838 759513900 418148829 640659996 164126661 959377350 243715924 257105667 41224818 354665778 860252061 918708344 415862634 789671905 434611638 914627830 286783614 839272765 506658659 509773624 180844674 860824916 531350189 696111745 61858656 758239564 862946102 909175458 41620164 899564156 270213123 631599056 275713705 567823170 488672261 863627247 418442808 888751151 568694796 784960691 835780908 967304748 246843133 852789165 281578344 609769049 724103878 951407563 928252464 944364410 263785436 925214380 83364908 206502433 549835358 956642420 378408614 820634119 531098115 696859705 44594754 97793400 19011379 648939496 594871298 833044106 14662216 328009352 55961851 203981229 228597099 653168595 908419980 951436539 494079291 967924562 584045286 694988958 796750903 979107034 844088343 936242677 316476882 483383960 7847505 693410804 223920363 886075377 114576675 167046272 49618658 879271370 506175319 961719458 581090529 589447471 948538017 955645782 986114480 999317558 306483260 696089501 232765981 268737152 373706713 485456695 825900731 943392261 637929501 695601413 990067555 999153362 403600289 648578115 351313008 998451418 895439201 932174898 586586597 770334765 11764542 69588187 675850800 924961478 727558187 919030413 582709008 751625714 884370983 966710384 580173705 592687012 182738467 842533291 222106858 702890238 166121679 393191312 634781631 872341317 117466721 122489473 837984185 953100895 253477883 850522092 757525293 933632691 347118986 627620745 665465343 737287454 101631055 357807691 140350365 963529421 97513640 695549841 630760212 750756078 453718569 916625763 750781686 934634805 875662638 979587848 691636321 946588938 822663894 879215261 59908130 778107454 786394485 939289103 772980180 999190905 698242965 990450608 68847354 460123857 73430525 913464005 339589036 343321055 156362557 178928887 575318293 587096309 582623304 651858752 896384339 899072113 54618971 118959378 199356748 474292946 680747928 944492776 72518685 201898048 243104282 503640859 365035341 771552771 39447822 131655400 230169267 481840597 74269678 363592483 901573220 931863195 168430368 591548394 606690072 840866206 126497557 352937981 378597080 844063863 919280885 932005539 342989320 779075182 644503342 657907290 692217837 764050903 423513720 795283630 918840137 988293737 257941817 459977660 400133488 978109236 748187465 858815417 601711034 869193295 50715935 339107789 144494426 816785210 238468288 383177771 858099673 946817436 374306789 752576313 289376916 580306610 806255376 976388173 113608712 607010509 781702506 903431484 465094151 849398119 791946435 820328706 328928407 714823604 156005783 974598340 99520147 877878000 870428292 963939938 14939626 130374355 856727098 867984517 149613621 349788631 333523393 693849993 152714646 345384446 23401287 706658941 513599042 976205960 121133246 206583333 411027552 673025656 774674343 928398740 929635828 971690633 697691688 955719340 899358288 984091458 507458708 688468178 429969184 525254255 468674679 901782668 321095507 836907090 357054495 747599908 207196993 875692178 816151418 836350672 542637878 807971941 950546728 968711815 383696740 473470628 643699404 865421414 36516522 599449724 808350199 895452508 453285446 884296572 836467188 876383932 608904680 649828537 253113216 452084361 458252516 836758970 972251086 981763009 543906177 992821288 693126658 702374687 12820339 599042412 219561280 954674722 874369822 966640856 305159864 826107373 329463013 413371727 369795908 555594355 559592694 560797438 843157258 973661980 113523988 277253610 105475360 157863118 443975582 735792960 38474283 913193873 765038028 910946011 119991367 594407379 306172520 528866564 233184066 838176012 848022275 863261003 266653164 762159089 681309310 959133959 19356121 305102408 545629398 898189657 450367439 547097043 229448938 983703147 927116981 980964477 304979537 688205628 360484422 954001650 402410556 522376665 506687276 978455428 376379026 938395121 131176 482511631 297172904 861964584 804371257 969442128 857523817 885897886 767483906 934621003 254952955 545559507 595953536 810448144 215258261 623466926 625208565 962611870 1398580 781613004 11025232 765673798 708673471 780005518 39347746 294802124 598165090 686696884 961622202 987090262 365283649 865736284 545526498 785694403 713433154 957077330 337103158 600954083 353886041 393454438 455557955 735713635 739713977 798714351 453150391 674180352 790113922 923570685 227947165 581856750 94830002 815077524 921034357 966412922 389516636 916024903 576457655 971804145 524178784 734004577 143635824 673331824 729781244 828127163 183971493 606815814 193071775 621601954 149636864 907199833 130069313 220827019 155350236 923220903 162628758 928578709 265349259 927968029 48783320 490952044 433847596 986368680 619897990 903050956 956308158 968238850 602713430 978876125 306034257 734610084 988473505 997209590 318741373 402426347 547785220 854209201 52056061 436625247 159256608 388547338 405501342 712083862 38136452 490424467 594359009 890919701 44238628 58931416 283506909 532014308 983289563 983825020 375402004 584113188 361103283 951397005 455067837 894466993 434357828 727623450 133259809 459564387 615382424 730989589 212416180 852737486 971763683 993768451 70771656 711884768 424237765 959766606 720823205 761928490 940826597 965652219 381021213 653190363 556855232 564327947 742143966 939899617 533485868 990147822 73585482 615465658 568596781 604073882 448438397 478130040 969421283 977218444 186316948 815229551 522977284 811495621 394877178 542722726 979118620 979160541 145306305 683381052 625668562 658519768 730412357 865317264 817811092 980434503 650530111 992490600 104163625 623235623 651425790 811199898 164495566 861075580 177348070 394684456 828517833 998622023 22400607 94976377 836414152 938915137 273748917 542499825 19742809 66950668 385478674 835069855 485534081 742235360 144636283 361653398 900232494 940433339 622916930 815106161 668361224 951757163 854933910 996371254 379510124 985578268 462399453 761942553 253639844 757078600 757483255 950118735 138196947 394911225 114098242 376629040 110883048 213919608 210922600 624982621 176430289 659605972 501873110 868062120 624325293 954011922 875061596 984450236 164618826 845471126 937829816 989531291 212342393 325006107 990662042 998610358 898725385 938314236 795758773 929460230 764452018 979325108 541803401 643345640 588622754 719810393 845647903 971949325 597682151 788307732 225269063 927060814 995588709 996917753 130483674 892025111 161504726 208329475 903419846 927045788 171697054 803009076 636116933 969741938 232505909 735311198 626730356 896577693 719621099 861467168 551473420 959294548 757810970 918916738 874038038 920344851 661502126 841061750 878346325 943796467 79205036 836013468 208267357 773095837 487836170 860041124 654716535 784889448 854060265 880667195 935941431 947710550 157311657 409240004 704373954 999146684 132016725 603132543 897948667 947602417 54072720 686535160 431458385 831722696 554106823 924923206 480939492 835333095 860573559 891976793 464300 239059465 181844391 279204945 514383909 672850383 807460071 975455140 269287280 512447625 136283037 301139062 950867768 992875076 834119810 995395787 471295348 995754723 221522181 852897046 129480721 166143220 229380854 849143347 219767788 858300601 604298277 709785814 805041080 935881746 302648185 681211946 746603403 788025647 882216924 949661667 844686205 909146820 485572046 903035185 422580718 777492705 73419208 768625603 983025819 990060500 75729518 611001730 380778148 928396929 911198462 932443755 882452227 979449436 642899326 992503566 290867938 562072266 466853670 981502438 746560318 795913473 933193428 967267677 600752017 746857154 155540995 289780304 576606222 919069726 455148283 997258962 430940238 865765093 215393068 761601420 578731445 741775529 118686448 662973679 720060974 809882116 635506688 704633582 696444791 887233586 567588069 909980163 569745350 674549788 385502072 834683297 289339838 316153981 568713559 576003804 702865389 727201424 268997482 727033317 149739310 737444658 697397992 792341040 169564260 775317582 124248928 829184674 697361340 926563339 2447847 34204786 359471405 758226765 757278448 835230912 449608924 615639943 87408410 946438054 205062373 329945272 986648375 994498689 39581532 727674766 69921403 452193915 121636922 360294288 599221480 928884177 707506216 939180893 339639690 557008994 212445334 769760306 841488947 885670417 384103821 984445411 855186665 899685854 295346782 893447007 951780083 954056216 453503745 969928810 688010255 767065457 90849469 810479311 251393130 521010696 408945387 811671600 546646242 657107060 212435373 271965766 307463131 722289887 229971012 513038967 368783960 567457640 988665485 999558483 508948134 611051387 526303973 594770849 290358867 386185839 206080733 334396692 219224027 277179362 636299268 993836906 306101220 775191280 294382727 512996826 653444376 812876890 937550191 961184314 696897696 933955802 546517953 798895861 89274418 952283269 67113008 350311116 811931988 968211069 543949166 677966159 975735088 980814905 443065001 911546229 720954349 758490766 978695006 984707579 149192046 618253327 716368529 928032368 707029630 902741161 336119506 565901166 556241065 900551637 149192376 696213427 196148535 613340866 374631586 721772058 517643023 828752930 465742459 951639709 877778243 888754405 762650229 963151408 396160482 849206271 702733862 992712174 686963465 716612612 850118205 852380721 4297968 125854262 112944434 301905935 498988553 837183788 228111031 701503998 818464264 869626564 49077971 868863702 416528431 489083299 654679306 835796415 755937586 797488967 461175545 461242185 187023200 331277385 422936802 724611271 533451787 993492916 626930812 854913249 890996774 905055301 413879611 817263860 176042653 612421818 962760398 962824478 589688603 719773808 638649203 685911269 839665148 971731837 501140781 956077722 983354115 997094007 999453254 999595068 766056861 837618745 535444425 911144216 538672542 588582393 349035460 640544320 44780722 744403394 507701096 683380100 846560888 964474946 776325645 971753062 373618406 611082114 822969597 825644129 42371833 169258759 441533674 939104265 467581166 715165268 183895714 578691281 161203471 475577866 204565249 933047019 177439360 419035062 248848844 981648214 335995441 810511004 734353727 739704162 410138421 878259711 955099987 997508535 787256018 981924929 57914952 962549749 97107844 529697499 779803602 791446093 849911574 953559979 322065483 922470931 280079916 398599896 829225505 957617922 865464428 985293624 822370218 871632526 157960585 242340165 79371161 374916916 85830775 646792740 692820948 991639421 537869650 621311042 567350656 847512747 618583218 791189601 748884042 852424846 333864048 845557531 211711283 897082533 169202759 401376274 617803136 787389086 550011426 699449629 441780739 720375313 22432553 209208353 282549425 734541095 382709035 949218008 313613975 897787462 934896030 971797761 707975166 713271860 71076200 218632444 338268684 755040965 176800315 979024705 110467070 717327789 864244856 985418399 108817177 605598256 617547928 626874155 863957244 871393630 757426674 808537259 430463363 988181987 464380234 564759201 28605844 321511622 233161948 567064584 130903117 593865961 616083756 833430468 753631526 900877979 472813417 963887800 306156583 367736456 158373328 537307100 109169864 257322941 71187336 586021148 620772330 887938197 279555389 668579071 395766448 717849224 654280261 995344448 588826224 996931850 659806384 992499684 330065164 990094951 567228948 655020401 983629263 994376174 489880806 731925254 457149131 648865117 192420958 339274207 82163476 824325566 425503107 961021132 752943526 785145697 63018898 885739043 889760578 972329353 891195694 984402764 627746334 790070485 584476735 619677909 191367595 379277518 506096602 686942616 122707826 568883774 857165290 866377660 547208138 899536655 519130468 557231705 321836170 993510998 62803309 745333263 463193505 934059700 575407154 663074971 887746203 930580728 496450386 547508205 973718907 993990643 517216258 593439411 326172455 475459961 646523168 762786513 159627514 634399228 544262851 872346385 873792971 959424725 954413751 988772554 327865360 756663540 480389077 960721665 201170164 464789678 808105134 890372166 708265213 738738654 718028966 913637898 241278299 918897223 855311802 887317127 450845085 520024583 634270600 968738708 223069985 346152500 72314860 363679508 552874375 959435087 530415273 631635054 572982684 660168037 529255142 792633058 339935401 948756837 625107862 941482064 992724648 995534179 350435225 642890389 890599802 963425549 764454380 876766642 193329059 651134441 959387497 969958908 356354982 693450739 660213889 991734148 212820536 605428074 931256865 943149199 332760914 615424662 608532142 890324458 152791286 799677099 194466013 280086741 544338999 582008192 945091350 945606203 40521826 602606233 590192328 621291075 614032089 973969624 875756460 965189023 140827145 148556993 177897521 205579354 221800539 317771194 517001394 531886544 447890656 691931401 762193406 859475368 789963408 895623663 956235521 960033922 445154297 956309731 696913063 802392333 231005853 747016077 992874658 998214086 867915327 934386474 731370020 988473297 371682077 513635417 942130299 955578267 361738223 394145075 21838716 485824391 564811176 741824036 860643981 922614393 135492932 219352517 952815466 960391633 645074120 737401627 839157653 889030942 286649584 690876615 430474530 566926172 799965557 923224599 673019371 850137162 100269251 348262303 873129843 899077661 371120240 577859852 570554180 757244703 242333200 442869388 568636712 854899378 708122650 810769163 548054891 970200970 833665750 951903510 606013472 804588149 585925795 787070856 687031393 888215568 572712678 883162474 199838073 763619150 41289818 769545379 356921012 901702179 620625873 668118702 1785133 284399854 66791002 384597590 893004594 997340568 823316668 954678016 701852148 903501884 802745342 936560185 18411765 570950805 61309686 186591809 338269807 688483922 893012255 906526470 515342062 890126723 676672906 961837262 638063801 660886007 943091879 980411540 638642426 683558504 211610470 550662815 102821699 611237209 37220562 890016935 912494221 919305034 727865433 994777052 332996082 556713831 426968777 774754453 799941436 894377498 65122725 291093001 969955951 982843770 976948037 988256044 842189139 986060143 427588342 625848523 93701012 108075901 537935485 764476385 41592898 89720921 366745827 655574933 33547383 876423344 551672127 739195940 99952303 923888858 386641227 996918222 194028021 475301064 583547561 959647198 298205706 900727138 705255991 961026183 962343112 963702805 441023066 824244386 947516909 966979852 706558343 773530037 373768192 446047550 340848932 758959391 733425633 966522468 14773918 43145080 119683675 494124470 696439506 957569318 490658943 646028351 177359318 485246867 93934291 301629773 667217780 990051698 897064795 919737502 546749361 595425472 304015861 872247500 50733657 58696023 393398460 715656777 928987645 984743013 481915102 682782440 67182287 936135508 395803006 646265008 419255491 541083436 161741729 469172061 571623147 612389425 950080083 967268854 639561496 881990975 405267745 712864590 111527035 374665866 90007127 737563975 797495736 953591921 199096970 392604389 332432931 823720591 891408199 964564314 16152409 796772999 119041246 239833256 232760270 625405678 494881366 691735630 723969254 881639345 85389929 799958461 783143701 784798518 294170702 580717729 763340610 899556155 390075612 424429164 333969464 782669409 196458129 959486638 590776031 976373776 231570586 399049846 810514678 868084119 276720790 918727746 851571224 914209001 680519585 952645325 601551035 877820056 429720843 954262861 48367013 306217041 25856473 824141976 335979687 430312109 172372070 240625835 270890471 382086425 631999132 735405641 646426228 764128253 137411230 335810342 404750044 594597028 729061876 964992803 657865320 837295437 630780382 939438434 586674084 859491285 911168156 911226048 509991296 594864711 692802322 722397612 553925469 858760429 877247032 913650927 599169688 627362446 582933640 934920835 765791861 773347847 584977338 970992365 531645751 742446832 25008702 566037667 416409381 929956035 528618730 854270630 992247394 994143362 368162236 881871265 417863865 680519413 814719849 940599049 622121377 794240899 294075448 548077678 431408667 730835528 171655022 721303370 2611270 376066181 898530758 899598735 286733198 409612951 326956106 391059847 616615691 820587806 565945987 769065094 109476588 728744120 112761657 733351048 752505916 863645447 844562866 946427610 700473413 848595012 299784420 908223576 219695633 816500449 733598338 778873812 653682474 845152019 365190360 888289106 975800510 997244132 954972800 996297303 605853813 722005324 790968032 994041670 38014416 307348302 774130475 949262759 284956878 311408902 297572666 437514297 122651558 452153590 357665153 494334335 705406225 841514845 433158000 556722054 874769080 896482978 191725864 332979785 65467870 830710811 86223105 412862377 600770078 611037786 478479782 708683026 202512838 941128701 877544741 908129030 634872600 878839137 841782814 898583893 627916632 856184704 648811446 734476355 222214480 845033754 558962481 877993544 445189047 777790514 796321154 998558047 583075249 721627656 727579163 769476865 273101429 354488122 871347449 915295978 179481435 925015804 320595986 741981047 814420209 982207108 662946337 867381001 458368670 496378092 283090174 377753121 573398380 944495642 501161375 535101667 28077487 346788892 504784356 846747374 563127148 937196046 862817446 966616821 722013626 910073400 557989970 678284904 831810285 885132222 590267606 683882791 963045182 971894408 118125422 204965437 939339671 955354396 914459114 955275399 952651386 954796331 68655638 994399659 735503942 772861333 767893120 926270241 340499118 361811280 595407357 876535142 907240272 924687048 242839348 334269986 134697648 644068303 13824124 691222207 722771909 730277512 108380444 915017464 855872224 963840551 466807138 537462366 46959668 649269262 413858672 953967147 299696909 882019944 642316270 961365130 793258002 911554438 166195275 509963104 512571910 929126764 290428380 716359058 417640602 759704283 235032854 781534325 852271737 979243976 860785858 975096684 105566665 477663623 690307121 798328344 718046318 723920838 562050435 771315297 518770165 813097408 630735868 781718910 483213601 671868405 99348355 538183195 747946755 772041636 709856536 997748878 55626783 204311794 746920164 844674427 785759827 900231521 670729003 909337015 43197333 163583257 830162087 879926938 129682757 625173770 516535257 691778841 727403134 955048014 52256623 510210727 790147748 982749292 595569021 703595216 184114437 844331903 981236619 993484997 651181990 689765599 573533677 601374485 747162166 970794511 506958449 514339342 361890035 501790598 718059411 782273540 425231275 711861459 844426596 884841946 411449567 810776767 891472766 990127855 988161496 997710686 43807294 854044503 761197832 805247201 606607811 774002537 251459147 406952584 389968677 563718222 515638151 562752411 587089999 893431297 978062501 991400229 224611007 507118168 120226933 925607288 662679316 892380336 988708932 989949038 674822090 896737045 298060856 448683026 778693945 814591866 86529742 351423752 573527510 669722573 597939681 909274077 307270357 322334091 889652553 953494000 624779416 924690477 117892624 420984339 211663974 576162549 8535124 133579959 45252401 433068522 18554101 453296652 640258628 726971045 847217923 962232944 68016682 803291322 640100514 953640837 44698481 765104349 416147189 751080975 452074706 928750161 121562965 410477916 224024346 835403243 973583910 980781045 849073635 898046692 194143366 907962189 628705990 980339680 319368391 923916777 419735916 852614781 193514680 298691817 355027770 790810015 160460622 279415303 551306605 824046790 380863748 407525594 171928385 458601310 464874891 906734660 341260435 440394504 432373067 885164699 347674667 651445944 556898657 871168695 223547834 332853128 559422406 640271686 612756300 654354963 47949223 957955316 414662927 741435372 328205767 780937031 621981548 633354237 616988460 774236648 901490518 949271964 781766641 964125511 684347095 872537583 188295995 294119467 322936581 356036404 296278725 840501828 63943780 524146851 362989188 547477810 23200348 316152057 781981700 870214247 886964639 959478130 59843279 459408459 769633865 884979696 470298294 821945477 136443124 630498907 704829268 900799208 880434812 906714340 514059290 975136757 766098381 809222749 478034818 959486419 489969816 791857758 854133650 861259301 101351129 141647519 123776416 776661634 817714964 957822657 227144440 889006803 236123134 939190067 712499201 760929301 69972480 325683935 578536515 835256801 455261806 691371951 367650464 926890765 262128548 581518740 690347339 938981215 681963732 935222530 579541101 881548458 304972930 512379586 861989632 873045391 766925023 791749597 497128580 598925816 309680164 672708389 937820395 963967546 966158643 984064931 767227283 990990356 841362199 916164303 988265222 997286369 473175548 993882118 49219117 242491701 771135932 784670839 377932305 851999801 370426368 396599293 802782668 818592757 168398911 412242979 35336831 657022154 97641181 608406596 539113903 992211782 653446476 966706830 663599969 780760715 198113692 438921226 383150885 889747115 533636141 920627411 342277943 495244644 635229024 814010252 740751253 803431755 770832910 959871559 472161329 738033075 656388651 858189404 669259266 701579334 671990989 702982963 649608708 737977380 84478188 244435831 541998297 628936521 148809034 762171894 316139992 899131440 728229910 964555944 189466275 892758799 309173009 892438541 328540145 682214998 948480132 997349333 465679871 524912647 95858084 500251366 139960764 916920537 627810440 960618190 89945564 728450964 779336352 982668233 930016487 933643137 666803494 807267237 502527026 917712373 661034821 878166397 415283957 927413106 534874709 591525096 164600066 726995803 278583976 581473765 684987744 714166545 830163228 875997699 188675224 211238301 102249497 117723891 682652611 748212961 666111364 960984481 712718761 961904905 880401509 978716542 808468491 893023139 63835994 653358088 361108164 815136268 334659535 383836631 203753556 516330397 495925321 540693723 584500868 908963684 933980903 977879502 511096227 877895002 578197007 774436046 257240993 289710061 651205514 711503716 792173998 934544822 873566947 933342707 274920115 680135499 136065845 734380900 107406911 613449855 708194450 831587906 682612879 905431452 342807994 769147432 123565644 677455051 606665992 703211086 838682871 855161533 25651111 373386033 507870792 682122626 794731160 871826555 485674862 660817943 895625903 994075928 698277788 742083206 563200862 578245324 358370709 413249214 286365965 392919751 937163714 942690065 349778309 421341745 316727621 780537825 964852818 989971095 998163888 998400733 396628344 751718770 745697193 955288984 904474026 934031596 745019861 798773406 705284487 839499857 674132599 976109435 61357327 735193076 625725978 737126539 432293169 480871718 696941367 967043483 419392240 822881316 263932860 542350532 305382128 590476418 174111314 733321808 857020500 894013947 39546341 519143324 34474798 645655739 627933948 883105717 972348134 979485862 841374377 944415430 316870871 877354872 532738273 577297565 883336651 937261412 451914121 926588182 277897935 796016716 900934408 993589009 221926132 339675044 876431203 919840064 193895226 287129664 678607017 899839844 803895566 930611718 631733318 701411892 861776977 871621120 731433496 898227551 458088023 529970910 903254266 949921730 427490992 786972070 253728861 950610782 335889771 928081971 890782468 914073010 768211649 832863774 927534898 958300374 480641841 646157740 955488288 955770053 383849018 432825798 236934412 679325270 224682305 922357582 25560997 866259579 990486963 995085294 742366901 906231281 462878079 822325074 338930192 448561422 784716399 900393289 759172610 869874395 256874915 535466268 997578085 999028030 331493515 507634218 344421055 849526554 933206182 955431345 302979989 494591475 57559478 988861418 357733270 911509453 40634136 85881938 691525387 844702662 437946201 797008096 127471000 555790740 548410828 824037062 732047788 829824408 772569620 925441859 160460485 765893040 563715797 845287640 357065894 431897150 483151194 648664566 389548579 734927483 325043817 669154328 25085570 164557546 543594394 803499775 351201416 777129208 785136585 991898303 435478377 677023300 860574995 922229539 292447583 898907641 181939499 598508892 684190483 914916535 86755193 674156481 650125169 989165820 958294681 979160616 759796687 985122358 690415881 969650355 516992494 866416203 624508896 894143608 479914317 612738414 217801892 424772187 361981716 968856946 110899655 410602591 715315650 857664498 49920805 694991353 153616477 549215470 115426116 900716169 663687156 723987373 193973489 653345110 88643060 898214047 384776949 577851983 63224651 480060486 928229320 948454795 396999397 894088877 625227557 785478600 809354554 915564690 228522229 907594161 250519370 638317264 553612201 593589117 676845223 751012017 121814423 229189501 815386627 872475054 720535667 976932988 788151843 938380444 946852498 950307889 91724409 215515015 263498804 270981040 756032130 916458476 127125565 612244656 271494712 961269984 563573438 840764942 50959637 754280294 411518074 540984867 421656286 851314395 922231978 952602961 146755757 816964849 249554910 964784098 423820955 649228212 141839248 691790906 411936667 727268611 733124936 971597725 937760812 956611897 509801027 770370428 125160771 278896399 310511570 813852292 839605869 958474115 724925795 964810020 41004685 247219107 69721248 372101370 51146558 768738076 268591594 877466266 406913550 462547173 972589109 990818610 666890844 771023823 924016686 946653249 770145661 892907457 176842778 706809297 276847784 756350307 193261967 823678451 535216858 568085329 393034545 596019101 670928341 811211371 688889298 927976063 41106427 85847124 518874741 680453384 599838164 843751558 783123598 904357648 104940448 758612348 596720088 975469630 397613982 547357401 736213269 996009689 522166116 555206993 152544956 513551203 477209819 922730870 20957063 70099319 682611772 738759767 352155383 663837102 452298582 739404376 856585024 934135440 475367107 490363084 229256611 386644539 203656489 794821073 413425357 867144026 798615066 903979036 327505065 962221739 538368774 960357929 573623334 990572213 193362089 236020628 364020750 916495222 676611143 933631454 954465172 999482700 482788670 554682455 604468978 736820535 447487083 508964162 237170593 746431967 18355539 835516218 441570010 806080678 229322207 751931195 569506300 708569915 990084369 991561518 339345641 741700255 752942143 810125850 86676683 295448937 837080659 949541441 610771209 722335943 834075831 912070135 800031612 930881274 284114223 761271159 401715729 941527941 919101280 989052576 135744471 736602246 494443594 913247474 887348596 902894409 222735132 674542620 691884382 746491105 609045863 823470785 573624205 774699254 413593411 808506785 337057438 824291485 169464926 633763596 123538540 883401229 514226623 655092013 241579239 793816209 896189476 927531004 88307982 623110491 478684858 762022814 983117720 989779751 674612738 778971230 102196574 918089047 627188029 994130257 318807737 648278078 258689580 280768488 334429883 801971268 133244741 642716155 456669170 969495242 545004867 695548711 73113223 406507496 234122683 586349472 998694864 999597127 170937278 451288952 328681245 849294182 262055420 584066443 316275041 412746013 695503672 815238108 801182031 849770560 324434847 664845204 146749503 759863263 341363141 554144009 561496085 980904280 109303476 615272378 359638838 529888351 964502172 989580948 666176639 777736699 756080073 946842613 723167996 775135580 595376130 868594669 794175881 954371286 695925146 846307678 320666459 571327780 532855734 750568813 9838895 907429833 743313862 826843337 167013711 476039095 661357454 889715493 548585267 667295894 988403672 996801004 658309133 825731018 542648622 797984552 975058908 986922884 239342420 861203252 838334684 881447903 933400339 999025710 446137210 881249043 623827681 651270002 852399263 953892114 352287920 622913226 533439155 899811828 858332157 941849445 245390241 878356009 316342971 511007725 728907987 881344126 757466943 866769305 13216261 68248705 720848691 939286127 824117758 871103559 838403558 902095040 923747999 983739363 240661741 809200552 563372328 842023472 690069449 734303042 791640067 888475235 907794402 951191844 555407323 630194045 976187140 994845349 378387192 948565633 142631748 420852049 854987362 905344928 268972253 908519067 748596511 782570261 324092635 357563372 492057076 671310190 81012581 939762339 889339608 999786434 591554284 692760445 995953936 998271717 63851538 194962111 234998891 804978013 444653111 550123887 43205526 548650609 608562714 685361882 32084546 974271514 360055724 592007837 218576131 804693334 316022401 414293112 233974507 596370468 303396938 655360636 58268324 218811775 112851001 919263039 463597780 621319967 588171721 619422160 148688888 552836544 16188207 682798913 137926639 573232181 901209531 904989639 66349594 988426123 359862797 863164890 112206997 404085095 608692568 637234543 429811357 885120550 205479894 812218298 220527499 906319170 23472238 158289017 782748180 915495700 332636777 440837057 571049087 638517013 101979853 698131208 167985671 601524823 609605704 776379999 522448732 772406167 879033170 885623750 252239353 939151527 445866666 549894090 520985376 582615066 261746773 612319938 741748371 957468675 834153892 855257801 86165186 566621200 355000447 825187234 935134216 978412094 504263940 919605913 576659486 954207179 86997389 208327392 930594837 932251046 779287438 992189497 860628355 947057268 214339685 463239176 789751040 945680947 278957526 523651586 818286798 992757429 339424999 393014881 416354854 810258614 751535022 879341893 868254922 908822082 432249329 941177517 279703446 879707212 17220640 124624980 637442803 980822912 477131763 648632918 87572675 959973058 496828601 851608666 239805825 421542106 219359187 474041269 75877068 465206090 139705759 267189648 616886098 648657512 669117846 775942627 221025295 338367413 227516771 603518218 711017291 801020086 194314423 932106078 429711844 798791620 6755830 609548103 937960138 962360017 288730435 940103980 452068649 708962133 545186118 604580412 402769026 676446105 297287864 623337763 28757603 988241016 642153454 671334332 147317753 204898322 79242265 126852745 997274853 998943771 145535504 380014425 375802475 611429861 897077809 976660467 129547549 311364434 798617557 896895639 107773886 873594149 282787601 309463550 909021356 988408820 166111518 529393681 672198143 700206221 90963933 259941502 956383536 980735986 709915536 853345381 54763110 550823049 2691119 683500432 795812267 858608788 367698663 518995884 629900819 738217351 314491465 586392814 362694589 792598340 813271300 971459580 314373152 737025404 616553965 756434782 578051126 942707895 429420837 967382514 628554811 772801917 202767024 482614064 250413403 522634285 391521073 675607242 11853651 461405012 203254005 949103562 276718464 522101937 973409712 987902535 175245665 599600755 124778355 209190649 551272911 557925720 88255281 641810473 828888512 946349641 207333879 527986461 910786485 924253485 346262018 538939008 457051423 868870658 889130185 986466797 942162258 983746751 9111096 125372321 678531697 910262785 13333934 585912463 496452141 973556960 68971707 399431724 1847930 537862281 250230926 894715445 310353232 869064342 726182732 958138483 241808011 764412652 647706747 741596555 360611582 548120234 937597372 986297574 924710746 944815811 677741439 991605564 122037766 982873474 465794782 710005414 37022039 870831910 60862469 386754225 934412616 946069995 697229689 848369620 557817465 598216320 495510106 506375552 486484704 591022362 121871019 880177506 943856009 976985936 451587596 518687178 604484397 792412427 667326564 921238916 437109818 698726368 134560892 176362363 253524398 962598470 714301798 890133128 432711192 995332933 362037961 671796402 347441341 396006549 208683891 413936551 959903063 969664210 498853393 765466263 343730667 832180128 559473619 583102332 450471291 612120078 484215913 875955770 505225427 597206912 770003020 788372444 715401285 831806545 524407411 727493272 359340147 866815017 686829308 797607474 473346934 858903155 556565852 881299860 36300250 198352363 927097723 930182588 842069785 913645541 983646302 994450964 208466730 863751002 739084180 915128956 745803479 884975100 919658085 950020966 511725540 779107429 187130074 955305034 306591032 747755661 19347436 994396441 765629309 913604958 144687321 726253028 579022314 916818028 573386756 763672534 344206243 593000458 723982169 767956052 880572667 970858717 213178912 991087951 362903775 446099042 928402256 946444128 233560885 486824291 881189507 915668972 719268329 963819844 69095851 497228199 720494654 722386375 785212396 946868348 68453667 703025340 846855814 885628709 545866483 775377895 679520745 973253401 258893221 856516016 57176457 795948505 526982742 715672701 553640903 896286885 142354418 553783908 694255304 966903757 214494440 834816974 244799635 425304028 53261463 350471229 970641686 974353218 273731117 630201016 341434274 802586750 588554477 761518631 392001388 792711216 853358354 952666436 354940224 902809772 120157828 577846288 584020707 868825515 61297279 827553551 159101157 179090616 222995518 958189838 725161013 922806761 991482832 999933732 697201908 722180834 5153795 185794324 58217141 451057183 484495062 485431267 860039606 961664292 734790803 891999153 165156403 538941128 711022257 832562579 106394711 604227214 473197052 561204555 377053554 470754448 580081173 652463171 837992929 992497214 239016539 520924160 399535320 399713675 426344815 736143610 295799482 536061073 811060998 947450521 580629660 898006788 174373274 426605798 391419154 930754134 274839106 705788674 958029695 961788349 976042324 991831315 242519637 643402379 318183459 575580952 725264282 840842692 604930543 760639310 509876780 580266840 122289386 646581107 269229010 426692529 716009066 920326614 674685196 684069164 752743135 984521836 664124008 674116242 799921166 956516824 220743225 595503717 844936370 966470082 671982479 831623447 915780082 924905889 428228458 994895590 273719803 766036632 602777207 690536613 185757844 549951575 605341987 863521142 889001187 985016649 690344435 754193424 712909612 973194189 651066725 841185010 728070701 947808659 307214302 483322045 219465728 840554617 869048334 879439174 700910539 846661605 646272169 974410289 266158979 629973998 142877057 698360208 317504218 423506986 698456187 734331571 272799807 443184358 110175115 756973971 51597344 792244567 205933468 462941573 784222005 937883191 720306149 756711429 793509517 994320048 883848080 900173057 633660307 677824551 385301400 801840318 751807129 970007974 25187361 712009435 937580458 937718978 446620191 635780029 490125632 806981861 558604239 677419366 191117531 948184690 569752084 715550329 614283386 653747809 13281461 408313893 844855586 982301548 344229556 546097581 732878767 839659181 337501477 829559730 520218931 933233771 663351171 953707885 85800488 205434171 145850790 950800979 891436006 916108571 103453041 145578409 511391914 978567783 409100165 631780647 941421439 998678934 505129803 738398899 68895876 806554256 902994430 961949371 784276070 991094768 885701320 887900758 875621231 996295256 329625522 445076222 918874657 919155308 721698837 791809055 304667702 589367165 532495196 609382741 576752420 953691015 673865049 680175641 713520045 804935420 61599373 183765326 596154799 624418431 57836089 381893324 160594367 413180127 36238476 657118721 881674564 945319165 301494578 888413460 1656670 80204527 489062126 910334871 225546089 898183810 26004370 756290852 979816396 987971626 649645370 860432048 557103601 966775379 886059651 925858882 171215963 733083747 335394307 815884413 751801782 811587989 357981688 682295397 178676518 763681195 774293111 801332129 8190075 920962575 157034862 683628019 624945235 717111425 797631661 984110731 731784042 788047411 104235273 574593931 846203902 860885423 759673506 916348158 23389499 364119331 561669395 947842355 759492185 902316949 820663115 899766736 391783399 652639511 30388215 856635060 529687778 757950228 495772828 858913186 888487939 908851608 960861421 967840007 645231399 654291490 180836729 592371879 227231070 227997784 534431054 749071642 395096633 926527662 356487771 948276445 206144516 320733818 651848767 998849876 441596839 847024782 311593243 312235161 124951849 480347739 898103127 961101202 483954198 978790253 833340147 987072071 573369836 624931298 515299693 986607348 322735272 826577365 796042588 966689199 208130896 958989069 846419983 857981584 994372344 995676439 108751125 434479311 821928055 950626310 258450427 308579443 319420711 573111147 770531411 920315185 111052572 511218677 210434207 496349344 591688904 895331073 304060149 672509407 464388571 507371264 122391353 789979761 147204413 949091494 628395457 931242036 926263134 979667928 145933118 703456656 15901564 432107719 992043148 997001394 870085582 908167338 606326638 936885843 559139755 989553706 86232624 433032223 956026972 988192114 149709711 807647937 552542027 812333914 897842702 973889255 456405481 721621570 827250622 879188471 999453129 999538324 490177663 820271837 406317057 812806530 593432006 680398021 340284256 999478071 692896782 904736219 245543512 629239026 507382412 567788357 424929901 564842901 483949543 868236802 670746945 867195325 975319095 978570126 63954519 669997453 710200672 860026331 905912509 956280647 244076500 952977959 404657990 616948276 988618982 999237857 211884533 550941432 70386212 327775258 249232165 537832293 219095308 336719660 682636046 691678018 458412868 620009040 503115666 705088794 144355470 828464121 243724128 628022848 427160358 742135704 108528684 164541464 915798587 957258924 589271444 635589492 879945617 979372290 932749682 972084856 372582699 430729242 872201686 931751266 202611804 931693906 940345 556201583 392549583 689827786 220702835 498962403 136537098 323031211 353281452 814498961 656091119 779572188 917904614 975311251 998423236 999203016 110160527 328872428 695141558 903577918 449262897 931501460 650389242 690628939 712293821 803815542 992990176 995914501 9906628 509666907 37261101 676132488 81720016 193993512 178712730 658526462 984957677 993839071 533375903 912215482 457325649 964843696 818804644 959920785 301630806 722463958 747455585 912559252 166772184 772530493 705809039 730087134 938772169 947163194 437830915 841127833 542102477 965325796 188207452 509671572 687986154 940089724 162438829 872539672 372952865 999578208 282593312 948744342 240870369 728695384 159769963 773061510 584899003 798493438 868537554 872258901 431635157 779324936 404263578 444843509 497038662 774374841 154851926 869343893 609576725 908338457 550361642 713018971 565484561 597579750 190909855 265036601 28889666 702881254 151540018 528474423 640782803 651567029 622151027 647471047 540134182 836811212 1954849 998704085 377709347 593842453 615047413 772143902 186552919 835278661 691484616 824046077 629494858 816290480 557157936 942300672 251656364 846632687 92133467 470299359 664408580 688256273 9329105 68931982 330614880 986395340 716975050 983900746 50972511 574717998 202837279 565070336 44369195 808961591 762977039 851740266 901440819 953753217 389342938 418178338 384874519 785259601 7945115 281346930 636611663 992168622 79888571 543347286 594565674 645315524 820578596 839811116 453974428 811215852 418215667 966750613 169608506 297260818 993541993 997241269 733580127 862990387 104335020 783708253 583541504 780597641 877299873 941459916 651371750 930697225 128567937 205734532 212549889 371673755 244084290 570623302 457286973 567035119 945568552 967767519 330179769 489144860 34152440 924338489 320992134 649931737 749619734 846323017 412468819 896125985 312333649 956223514 230770836 702746751 462716149 504358125 572191183 945997113 668781496 802351411 382967351 962091670 559387372 840503232 813717897 829463400 697580557 948140609 448195163 499955261 831839601 997001261 170019789 987741888 430105975 434721986 472426528 833429509 775282809 779720423 627295521 889579949 969716694 994492083 535674586 720113305 630814827 934454206 726751576 842074843 607178466 744221793 180233625 782126579 80964129 445955011 398437054 532098696 728152662 896458696 538443062 759235001 430323827 780055038 56566608 127276400 771744383 779377658 206390170 923861468 201428541 953483801 245015248 413738864 450890667 818313329 229260304 455131271 387492721 424700412 406219927 464459742 356792817 553060897 873626478 949363129 144429693 300099969 792436710 962202874 962640246 972180680 589264861 623735644 605662787 901229699 635527832 808071167 585883925 649972721 568998155 887198785 358981557 896596409 610276292 717443091 547732786 987490701 175224567 620764739 988174310 999221735 185596209 195722319 315027029 921416247 577037620 586460212 303735729 782256575 892855443 976722285 777681052 895076117 918605462 974776025 168482394 244927049 88942157 287485203 422836613 734814651 605486091 781436920 278634771 657886833 626709694 721730917 603619895 653756367 964329284 980600448 992157599 997588102 539303415 867995090 260985773 681868305 288569270 559620562 367805389 416982504 868594475 894916688 862629829 976390502 494984706 695251697 58863739 944322244 897917854 942429010 626615799 960887919 526584464 827915126 597321105 801690117 775700659 866791607 279986975 974356955 377355048 522978709 445924042 925129248 250365692 782540132 646619476 816133738 990261710 998108586 371178999 606971566 290464324 687050649 439772487 670192131 780270535 995728575 641989577 731279038 180384885 561114253 100697727 341885663 102202306 860358082 847375592 932939321 10677403 265273538 901378910 914128898 239949249 325057079 197241745 535375075 814582980 888079320 299762945 861574085 815935092 890630632 50110446 885333273 164359224 811608054 532038203 791571747 701117133 899205144 170201536 430667481 324542872 386570528 67964287 391172458 734301689 941158278 396633910 792888653 882093127 965048621 79504902 320003181 582729903 922008639 545035114 977177612 680172265 904968749 49770155 825007261 540415751 706410611 244712561 967278013 699296414 953697007 435436016 706782613 413117121 900185698 730229809 927893607 465754846 822995556 454915192 905879230 281089102 664300977 727843830 956406641 569122734 705765411 645917541 972126923 464900247 475205921 74576976 375272931 838900252 841443659 267245015 311548689 222912626 766282699 220771388 627369354 65962925 523866990 216176883 721083764 507097211 641858478 217631441 985153529 419346506 954742202 18499369 716922038 109876739 125117217 548937192 917827531 747206164 815900928 8624438 922088584 948547520 969167471 973231942 998117824 597802606 854447163 98148405 439269656 764244200 919181231 391141910 693017614 903849262 942839968 744986083 798033684 383191050 845894323 310835188 907865569 836642746 869819360 224657094 692820554 968645494 988801229 697393387 815847500 485033551 791087227 141307773 605700258 835275529 924445648 34374432 381670544 241677334 843348580 530013313 654737451 723962585 865615159 294389763 337446413 972299706 972308964 334299451 373501916 39038029 488959526 277397807 467028540 119184170 267311164 120425825 697623345 388604573 659995555 764260045 790668101 426582258 981820761 418722354 611213097 17255036 182294888 578259697 900022383 441296481 764670615 126680925 339886617 309363181 726020482 934430835 953696814 473564321 513108825 625300369 676118629 225416120 863561151 891037441 955165921 131155036 781233938 41019399 630788233 719803197 910858579 35272101 127269004 29790105 277637874 416041842 654332364 949829847 950831539 129286309 563769581 275407730 276460201 233304172 612528347 272093061 600743600 46803323 294907543 9664460 46218240 405029122 607830671 731132981 839759414 504864979 710189094 677376533 859053951 675402899 909136512 473008704 716334451 592633686 897533422 303630871 395677431 137001242 385450717 944165927 957513341 204883026 357748097 551714421 762848212 342498135 956472647 347745482 801759554 963489154 964880661 922726091 947476762 209438110 735730590 245920142 312597946 36710342 138916319 386525755 447517138 418563788 781470216 717008974 997428749 322234324 919081711 184777913 287486210 384010058 387737654 815026633 895531392 627215918 674039709 647462653 914924600 118903674 140008541 482827644 803089373 851848258 944592726 104103243 912428851 193462342 900664926 996501322 998669748 826035611 918034828 723553101 786492896 386553270 441996036 972274588 996953655 471040344 583345493 874792111 877688905 493600041 825095398 69913547 390523053 404427902 456725197 921176726 987164068 888557689 959427120 753941443 929629787 216579196 920836524 593228352 735152618 648463646 651275920 621415753 631012787 411529579 764147511 37955185 298629082 719076634 853450089 439624836 625700705 666972597 675402124 857626483 946897535 3676724 27583206 882391094 890858976 182128728 593184515 128541874 744443306 617027929 647902957 966364530 970592106 275928626 671161278 45133944 308896761 119267405 373746589 347094288 887847224 519867226 691891270 531824181 852195273 642806046 722544518 52284964 624205407 590883459 685326538 262468937 417539588 873020602 892312636 770430400 975066837 330620900 763506861 894492319 912418922 253474650 894064455 659936591 853165302 624077928 747706334 517177090 923617553 186852516 440403252 248380183 980597998 71874578 849444648 430526123 968292947 656342307 670578912 977385088 985079587 406511569 981533662 40889852 50358298 21456105 441482357 583735838 968203748 571265025 880079295 483152706 642814289 393951363 708605163 392175647 548519521 249129068 378878916 118786551 980943374 304263658 759745574 111315623 311504905 31168735 665030986 130841996 378176497 856231730 941218078 669400718 739343986 518186415 973520770 186496073 704461072 409905346 999437021 946352153 964472199 935839478 975058353 692926326 833612202 330098707 530744181 171626691 708439790 569225726 989181791 81604994 962853819 40426808 99142549 355723710 951463325 512071190 701542049 998260188 999008023 379289069 478281161 938337576 952238972 636893108 772801929 613759887 965918971 176777366 282415384 208239434 929648213 502635919 528974649 801313463 847031114 746115184 872645997 238586486 446332057 361810158 528658662 475071431 510800766 729376437 867132404 171197646 637820716 164224753 169350368 155743969 518770852 210695893 635378948 381260729 938925780 839163504 976963871 511051894 804694302 621536836 968761602 848167202 963241137 544848959 914461210 521076142 866299169 271095984 617128715 247640766 488104343 239418706 739380668 792875381 910021708 385241872 581105618 627121536 916581947 402732070 853175502 660794874 944638976 965405210 992505598 174129920 589192595 146001452 574898546 69269442 114501595 141350268 997092226 532764216 690871801 885187162 885627036 28466313 195992074 244465152 931038619 255575785 723139979 467820767 511370370 943521150 943680962 921774885 994992504 99052306 395983122 500009716 776823150 464598314 875735407 12131778 735448849 899523254 920040355 887013033 988559136 515722603 985921289 767452643 870079837 448664587 455472453 268169763 498580562 265309892 731566535 505465013 675957539 587348851 977403916 248415127 398279487 113328369 512888570 99510854 775037141 129610568 421664343 622382490 647437115 974940244 988626543 150546458 997206145 408478074 479681744 823828275 855172802 697015512 741879781 266992409 781767860 574649331 753005361 807389604 892321399 938200400 977531332 720841061 955016424 252506011 366940391 929342676 932486784 704345447 903160543 137274159 753482423 977087316 978102608 427277719 459621518 829784804 903832762 513640040 800616478 320949491 519567954 187419991 439423320 928306787 963119621 142531216 364387959 307426402 319750375 960154119 984988283 230136190 754080493 926336726 975430072 844538838 886390232 834263376 838734789 55480465 966545801 401272797 704841233 887915091 893791770 963293795 964330608 374143646 497218116 608204202 672205548 617630789 777436135 220100306 269957105 281428181 977911403 744401517 776512041 500548495 924752529 52490266 849106322 299573021 495962212 116448817 983824538 374113662 743840698 646580241 670280768 138372913 862200641 338268287 400930112 990522386 999715831 694104961 944984309 436742802 462263975 528603778 658579300 839248270 898409077 991008774 992747252 788802193 935063748 361259169 476767889 268921191 334242919 978881796 993362705 274320752 537294207 945133841 954317261 364788997 659806666 8174484 883176058 358170881 519102373 8120781 285659225 878185205 908441520 145383611 445237450 922329724 979578159 655253075 957493584 584486304 598117300 711456911 844911134 740752407 847460830 915216433 973888747 288610325 556033535 776061985 858954413 721717584 992988281 137629694 525881214 238287490 342613410 849101204 981291137 336183542 419028255 817687252 826386547 299276573 552232203 76454461 828140839 806523007 873455970 547203470 647541095 157785431 789303280 294120575 495015537 540663456 870024705 178590949 207795448 84495875 613721356 976433198 982282453 584714211 971273063 207529845 326075364 803678150 970236807 58102234 543214820 718381605 859020007 943502208 944627100 778269058 827843989 229407554 605541767 766635101 841527084 368761152 952404147 758567790 906551687 807283439 914432038 521374720 655463923 742022208 795494633 312906530 732666813 24759936 989774050 383718843 664199238 276099604 488226697 548664177 736009340 716571182 934370146 835713331 929822058 4624191 788981117 188301534 924702492 100507248 236437195 215663781 290222796 658707408 907552000 369078621 983206464 999301390 999994515 165516104 361784809 955903114 969150759 978267585 995189758 222107354 564540768 802009338 852282286 836996267 977546584 903083415 907063918 270687639 779332145 699210753 870066133 54629774 174330323 155487265 157071394 115428032 472390920 49051584 828164315 596763753 746063495 727705898 978057935 839306754 901325965 778781215 986029531 461698985 583365284 690715264 977321824 791259139 957190881 668890344 740808822 533465756 618448496 477318162 982263497 252027433 994884749 165319063 481333712 519553307 850022345 927156720 949037313 643963668 803973908 924164932 986663903 269856758 905634325 199651159 578746097 514061182 649949186 46919240 859304834 866049545 873892605 579540283 955445030 130615575 428976025 125652980 824885647 397203577 449431141 886528452 991109678 61575388 836348560 431646663 768125585 937206958 991110230 107281416 853971372 580872359 917609157 83005833 903103077 539552871 895972321 391324800 873182948 742715884 848508839 623237678 981715497 882600380 993949820 538274840 853846065 539171480 541560582 696551196 886928527 831036846 949780336 358760085 614823820 722782776 867453076 804960813 870061168 977245139 993855297 82975557 498253946 23213186 191577495 797441007 935627317 95574129 351854614 374758209 525428070 572933585 682499792 370578723 978331197 432810346 920724045 46056612 796588671 537569204 624481185 856572907 904533374 20281516 760480172 297166099 726844190 273273731 358103658 911374579 980874502 344139646 361326427 581667141 838025494 418863134 914196265 98348223 324728085 627111554 865760211 242155486 672037345 260147029 757229225 369231297 819281853 820116116 936234631 128514587 863329006 459357106 968042601 614181031 683250799 643299081 682982825 282417122 893794045 547943669 835092360 26360505 749703240 853048907 973166380 723939303 986648187 134000381 904007792 681505863 763448651 872785715 888587170 875543675 889134064 815044503 991182204 158667622 629143366 558534336 587915598 149935967 710523203 657192383 946777287 434111226 726088597 342907105 867346442 415046133 855624216 472886357 670596405 441074019 586722352 753615786 986077341 56446517 930803362 909419609 915407038 766124227 949245048 174839613 671681878 315904125 416942336 364262541 461935712 408928667 475071212 677906402 931481347 133539443 344017659 507349415 643256396 533173925 897284616 192611978 529912860 848863674 886185045 276639886 607916355 235174592 695507299 123649840 177557036 71799473 132131273 14353803 564398022 722141334 743761979 689922754 860444401 74814228 885122364 93621183 661981403 201993796 875479258 283446947 926518560 525659362 867325552 893963291 925725653 642258400 712186384 567820302 675715663 126026703 912968726 159299670 286612798 42765278 416686099 725593868 766922021 946217121 948932318 462667651 833059447 295788157 654192584 945233705 967089759 356935420 592560015 536998632 574398152 386118083 691518024 589080139 907096022 291220438 496915111 245992700 720202931 799579549 920997779 658771453 969980670 995414046 996257134 417663051 999783942 884833579 890204743 858596668 987562283 154136854 559133020 86932415 219104059 194321486 659379324 522881833 970825731 20711015 617329744 632867656 917517290 158543292 888920611 627651311 724599106 587721941 648101088 278554272 344172148 233642963 513303732 428732340 619118633 810108919 977974692 807262474 948088457 651502898 772489637 632662966 842061160 855060171 952342986 758587670 804968230 154155677 736384181 82315130 802140554 794444143 833798577 893170906 930715221 27688535 756132974 668956957 953335070 983002488 988118850 7478374 791563390 762135360 974549200 965775721 970297567 904425166 917546727 148602943 198075694 214193854 450158072 600527431 971033576 421572651 947394027 26711267 385579683 61921180 323677396 31606743 862707481 426954311 762082631 449157491 850177017 631941263 901191371 966503533 977767045 642606546 786205023 836235587 950723555 394581251 552814716 910924035 946302334 415995760 471060412 776093146 989505345 326757565 886972901 659760708 890354943 267798921 730076706 379830961 624470587 941761925 989592242 342664600 922576410 888337796 892200538 532111127 610951340 78063658 217517553 375121634 880694064 595664457 874074673 364471954 933923905 210871234 838894756 896662980 920049872 893492508 995700850 270951411 920730709 373624419 716092648 235732977 741651560 647509448 858622902 756880949 886170886 775633310 835141738 12161122 77656076 307535453 614631191 968103815 983894590 520129562 663919611 27666361 198680446 190724619 357747302 401374390 988418357 911691373 953314284 717076038 988539058 174115835 181920876 147873060 353389251 999405503 999464892 36050292 686948979 528589228 741103061 475812704 847985893 632992406 862369112 549842647 774326435 187291959 833785698 645200680 661637438 38306121 565643039 650269316 664905209 185129732 635587444 367979666 669323387 295571330 488934691 640579944 775318433 534961090 696915478 550939444 637257384 673477196 925757375 294087844 553736222 386966968 851980609 842185903 875391581 737491281 999233303 862570154 989080020 365029777 493084133 437486912 792338219 541358848 971028522 520176266 839343686 88789451 880046758 349219075 566708498 795210843 989814780 212109403 346360619 854259234 973711346 247419751 698420688 685090739 857996834 175979235 435226720 932867138 977726784 145205454 627518806 916546856 948298267 224044281 736379179 936546659 950464248 643273176 665131459 141576490 877335656 670531623 940026348 310045745 749754970 545100873 798900257 950462644 973172160 107044126 703257410 318540627 957311733 464941270 776194730 267320616 480002285 539687808 668869008 41661356 899264483 532515042 779820609 166793058 188453472 835469614 984576821 295856407 742142446 309527720 917390954 196273604 789351100 853972758 963651354 446404115 643359196 161181790 892577430 710860852 969254096 314062633 429652634 118467040 224048074 660100420 812269037 656257056 922517711 548190758 604387856 94458884 610013446 883658161 967768230 416280597 743762619 128774862 205407385 744449809 758524601 499312394 795090080 607913575 861377991 340528319 496948525 134755583 228868493 661550759 696520679 447907067 810237145 589934407 627924751 864221834 879701073 969255108 971584305 487827545 518395072 887778487 916163335 215010645 698517456 295270308 699923482 789141172 853341161 552769590 802531558 533627808 583971562 947802672 975197425 725559856 811315702 62973677 706186222 276618937 893809488 703797710 805143101 18895965 891660554 570487812 671046029 731861264 879079995 233129729 699760523 128794803 994321694 937414315 964635886 778656092 876784745 365887436 553325196 556361544 861489302 27336460 445805088 557355357 561448288 639820103 913068876 614220623 626331666 874951647 900162314 928996640 947863301 593756222 857273398 427823612 853207795 380487152 590504304 480213240 525897034 223293738 926095769 753739743 999895929 23119189 265279400 967612348 975210780 203397730 431651527 148171657 430620248 785764570 835380927 394711485 695925682 434159311 481890668 152392994 523511513 297759336 563182286 635282917 659457744 600371634 603265392 787193414 931220262 182556924 434131694 190400811 371778098 477319230 485616583 140348690 373737184 408378032 684080455 436059788 626951893 796603503 814666761 637253447 810250854 148954505 200884079 794769637 823730960 846465602 891512112 447411346 889494988 627374978 745596275 832316656 874335831 509839755 877366262 257681667 989777146 709339295 748951212 760051331 839915499 951841792 984121592 470090025 769571957 294397039 857626251 879505630 936067957 379562457 912982362 105322007 495467314 883363942 966579630 59800471 199928023 930955 671800255 516370896 824753541 329430518 603142538 705538686 816053497 31942283 369026585 657973116 746202027 790513656 956819972 680490354 983223583 931111918 967355817 87375491 811557937 657754264 796302131 208266340 328712567 105815809 354134704 763829311 909853103 416515064 429654188 432672455 998958062 450483738 597892973 398797186 962360662 383581286 603066996 95140003 218289668 434919189 829862465 64907801 320945265 932561870 958113236 142306432 156269106 673868139 886233108 826781676 984363881 994182394 994272137 147529685 878940883 53593626 499294040 655200078 725831388 278366902 984050961 903514194 942389287 124305555 211839481 62460963 186789984 843108746 936944361 829461668 970087314 388099496 976660007 717598475 915445786 249717879 752810298 636268443 711613299 222446008 358405384 215071798 237550865 395090580 634435649 220989382 282425059 174855354 319080403 63418662 785316361 288269289 351782989 228538357 472386337 947956458 969537488 22555377 447614181 896263675 911258789 703475763 810800368 785968332 802516547 259353045 854473968 479193403 498630436 57722477 118276129 818695755 887297773 191117079 592929114 518493607 788452834 846277811 904128461 790954622 872404789 597327837 621158749 406801288 652244006 236535713 529779299 629454357 885037733 280413281 325876043 426794512 861620693 512650802 986835696 160571096 494992800 635918040 680274549 414380376 988044931 953691883 960017212 149566089 772980787 164465051 707215410 662252052 739195971 629922572 842115600 156296683 853621530 271244140 956398224 971140193 981924063 387501393 686451513 418829956 943836807 167527337 672175746 248018055 923164958 286618980 879911119 252372540 626167236 202599266 500859481 927724349 985370691 890600522 985499797 839740603 962451877 655865098 813188750 37838248 101070547 234771810 998512205 101914567 832101964 239070356 422303056 610225810 946910474 136442848 943245613 841576697 880417858 474649333 949983943 783671074 956048637 121159089 305105488 445377344 901025111 488299371 992951460 499678416 828733060 137266440 275666761 682746737 706817063 489421734 853838036 422219768 836512930 225456884 507349114 883852760 894393899 373231958 439094324 576068680 986974781 868210535 947331140 866788434 965538921 852976078 904559161 431610823 676138839 437737134 623048879 979609461 993911263 126286441 320713491 19707229 296956251 393722522 499554341 173418155 575679041 787746032 822291882 424850298 755418923 517101261 896692874 683837176 857702404 620081533 673702543 990691732 999425701 593268157 936930439 766497036 774047627 816916085 989905749 246358283 501324256 267142355 508131867 20161310 430459821 956866731 957465360 21588576 456181738 480388042 834568283 941619883 962148095 28677517 987649647 476665524 836282481 62162991 680988833 305342185 779615200 139662218 492773191 705878247 830304612 620941031 735691286 693120683 926672244 854769999 933178554 909086027 993466597 406463829 571942012 330114055 980301481 940375820 963306659 227233764 864219334 267758714 440083746 512425535 733634806 925506749 936780275 211239242 565088092 199865324 903508996 124033108 826193365 654807862 699920631 196367415 402527342 647310421 729341439 200056850 715633644 941558666 967639894 273987048 749281680 114663786 692061001 347028446 802662796 603604101 722513282 681374036 965741111 171492688 711148811 858709457 995299960 661420457 753479138 331895565 510158206 287454369 988940316 746499058 998492243 692604340 705304294 587656771 604848455 416807705 960591783 588853037 816012744 777610100 926575830 199199439 989890936 837646966 954050300 393113824 538917387 390501292 559881400 344046836 731581775 588716293 996819405 344906499 761721587 690462565 884423686 946003872 969892862 142665265 268776024 42782258 215228444 727736590 999882654 842614359 942048042 63998903 156462195 125369412 840144527 178076940 598011300 776941690 955548827 893923640 951627826 761140233 986749950 721323945 898855466 232120674 390047619 926533716 954695148 321074836 492375774 198344087 514884152 672553648 776871439 853845179 921635653 124388576 897512591 768058357 834334541 42846398 505660257 859045942 932258941 70920703 624955327 175979502 766427315 976061287 986583038 392888960 423453262 440559124 852921062 205221663 257805010 245746219 489996342 541838991 993267602 724043609 751989542 237223327 348719930 422476291 853811593 707830833 819948776 576396639 711691379 131440600 775349030 136815419 413604558 150594147 536029264 165944788 805221091 646796720 838480248 704514153 886091314 333807977 870160333 26906684 147496623 539091983 827849217 305274918 415732991 907572372 948034629 197960462 760507199 852375062 995875323 692344778 984342892 789370951 915314040 475021906 872476402 398623202 940950963 917639055 991126634 200091741 566538193 578500477 982768874 640210045 888342981 768751782 894797742 995480005 999137003 872664283 927609553 346789655 562597765 332348734 864429122 341806630 618354653 867181906 885977318 858724631 981564090 339698473 884651108 208380086 736314999 543290183 585192882 241718419 939371368 139937331 553564000 447303187 877845908 112962555 804231868 877740319 971197374 775875037 929135349 38079391 285641676 703498716 981802413 279075947 490422979 452703177 705775128 435604906 960500083 141329610 670340286 209823693 905237922 25326276 976488707 680758837 913009007 193625363 700733596 136393077 256669253 941275541 976121026 878846776 905306185 674437136 931644605 255764639 963608912 724708311 865527755 957421156 996176065 494175859 757957239 877605357 937119111 133482805 375243818 214851802 906497207 497225778 918787570 123901694 144733397 278175618 742197399 513180282 710928663 887330311 919233709 769001177 869434397 228358380 335665966 180394060 951310668 743249648 885606356 361189460 365911962 961900584 974348879 305112290 553901405 641907507 745085713 821132358 941645479 107106690 883372511 617729492 781694687 159443513 936328972 372218227 406766693 101013031 777206263 252195719 397686918 101469345 540739148 565821234 691321366 613056332 713734424 840812825 882912293 763076156 856656528 799347180 939342854 782797752 863487627 303137659 896579999 850287752 889337544 11868388 26331838 636778278 859695791 830814300 847068266 410425312 794621831 2649187 990893369 77519813 980162811 483864686 694212502 735614796 867962363 830179192 977658130 56380933 609580219 13261806 95944635 268688408 634516044 678601796 869525269 418555017 606216626 114612153 341189813 609504014 724933886 765925166 877686247 378228057 411017823 633402690 887467078 655711544 841521528 346720339 483929182 941845788 971376142 794218783 844387465 258401521 910430794 861718404 923074262 219481785 418020791 22689538 200449588 495375882 748893868 975612264 977240573 809440723 849977280 189625175 360868486 921398128 998757273 161882682 468114728 192326159 306509889 871554562 871589307 780974321 933055475 875205884 936849152 196866204 542969034 946413623 958467823 807629103 910220743 278869365 605672971 226064831 878945600 799909845 978841348 252818928 748617417 268548889 849327916 665226309 750242624 21787751 878171581 100438183 443660637 113846770 150580060 160055186 166598111 859753756 983483312 560843513 794259257 571438217 898418574 365507837 366226394 793704093 835470655 164972434 238930964 532581657 718316861 583291411 725131535 453007670 521717234 377300210 738834799 228521972 321814612 711016708 952268499 604456355 952840025 954462623 986941227 964592065 987096978 65579061 347523699 706985644 992902068 794514501 948858779 20021035 127239366 517085397 526618920 120138575 545563398 610881104 930182425 616647078 871515340 857884837 933510531 220703407 614292458 606182566 628974311 909529895 964296414 622690875 645547315 888397089 924653274 400633536 647719665 372716328 901452977 397805094 480813792 305826209 401008785 735618459 875251126 136625813 467308483 490536016 492104170 944971639 947085321 466238595 928916054 781928900 976669012 982394167 996246514 712268564 842951474 183805709 332802807 254470189 847842062 50277961 914335462 31928346 76609706 560049340 687364524 968274660 969000583 256304781 937338384 960667492 990630873 955627032 993864143 572643242 914495467 988800108 998173644 201094830 652265922 847805410 982873851 119491612 562027110 273575694 766731827 316383218 725166107 510010783 755309474 683402703 704877844 357081809 561626021 775174760 881581520 234152707 638357293 739463502 872132490 928610010 956438126 137368481 428060570 739679622 772022283 389115603 976662128 782235850 886237462 324647394 339000265 25060996 40202407 721315246 725698815 785312363 944153322 878183811 934441548 24039719 636098666 51888643 744136391 39042337 468988360 179083094 808597373 629429806 790618920 549879794 670276033 406650973 708813376 741054376 857471455 257556065 659413197 961983586 988186501 185844650 454461257 543057991 947183791 929824964 967615695 572706484 873698142 269048527 576094278 486638774 882824112 659524592 805935292 54801834 947782591 407688410 887586294 766782754 973617961 237588943 960756871 23552867 95379025 252171671 396653081 475496056 833606624 684636903 916040029 254074868 351936541 962672653 979268566 66028496 613908260 234246468 345464119 54307523 758725462 2577988 705679076 870834615 933586156 322963445 454457788 720740104 827309889 906983518 982514844 338075776 712634034 446260032 839567215 886587308 956683148 507621018 648838574 39387889 966661798 29855818 243715362 487456812 886983263 702261919 722250362 709873164 891364905 640598499 951026717 71577685 596899508 989589635 990853257 254699892 599261212 594402173 728281064 924275421 935222269 973231886 980890935 889950072 918950635 955489117 967050429 187594727 980243258 72984582 206086055 488325942 498014695 893180444 896578143 368912291 703312342 15630301 189416680 805175214 909451076 386272990 526833173 78991743 322670539 142020576 148281533 928627994 943196739 334084112 510193837 721305395 851764032 253398852 634803265 984450323 990573921 408930905 724646008 795175150 855665278 844266853 845777945 667865886 759024588 244193730 861787657 838256178 990874630 630659112 849880750 143110349 624526536 176909578 921363455 38378173 994259490 595557599 923135678 774188281 937563950 649014514 794244623 959330239 989123236 924940294 983569960 254879289 730806843 620669177 751492492 383088968 400495257 145080483 943465739 988141584 991581092 825502904 964175398 335422247 627427706 511197565 593445178 912365919 989406971 347047418 475991019 917366667 967332623 195541066 701428222 275065324 614565427 820831565 882516990 787459714 843051056 881441008 972036411 482327184 648037137 827826595 975016322 340226854 381700161 55597086 935122539 790774627 881610735 603521875 930099510 712088567 862244122 133578955 404521045 806171553 917315311 959818332 981226548 892619053 905932621 631651862 837014710 717722609 928181669 162945964 378973687 896826004 943641944 446066202 731133519 300911781 727867366 901170268 901928032 196720989 211508555 690177232 815334416 401452482 547072360 912925468 971158341 293842274 447821293 431375791 894015234 341754230 611110279 170489421 632146676 128867467 555269838 352496312 726392875 753844349 962550120 195296210 368851177 46455026 992322571 917326116 947718168 811699604 885684854 936266503 989271570 174625196 733120757 908869726 934679241 460562060 891200009 153690798 747216219 77386491 402082468 387738763 540123327 491610164 658795314 630582766 837492895 140169261 559358763 490069336 744971524 252172847 813348832 134793271 268923530 14291322 711927072 120588530 668409418 959828564 981743834 109709649 223655045 390145703 488908849 996392123 997297325 224738821 921461167 96204135 843706251 513184788 962601166 129328570 171816139 756318395 992294054 135602509 652216260 954639049 964464491 363852191 648101837 86745776 402855162 58761569 942706958 639940291 804640851 223609762 374225140 925427118 954241783 986842354 988067322 958762405 978862035 729567446 904181357 821808242 871572015 36370170 633208153 504836451 930638181 391743003 458336691 196632046 789555510 919927750 923556280 5461936 648434107 220805421 682028112 944248246 975737976 881338703 912400588 700537510 959349704 173003600 266170405 309773879 480711829 611174986 820867531 481419969 697137575 96124542 688951733 988855699 993638662 132978413 962515798 11995325 126781591 887230533 927039651 88247290 291424004 551282045 879145762 886668112 980557971 752462711 912074292 866227515 950059976 695249551 991036724 393709843 888820059 105446142 511462239 744785180 866109037 966745576 968919759 781673160 901287998 413827301 644175795 964145013 980253243 610111574 929467462 431916073 948100640 672915137 676407268 637715256 686762657 23275966 812118941 973447619 995363414 664961673 975286696 871859206 914698737 320677153 394042024 787661404 888130666 433131790 963832723 660137003 671591412 538864279 943897431 215953191 546333766 946530878 965385171 991370822 993174973 749101142 847121169 637024840 789598875 203562137 862500970 778955422 801688139 28911946 124179293 879162728 907101744 294378453 927020307 891667429 970659904 803327398 896997486 471411855 518889717 799388948 960052419 58656849 558905791 57403211 476360334 709887738 759773679 35289319 892082444 284393191 458138858 895573556 907505822 697049800 731616370 391594209 542946854 81465104 691177978 347953233 671180280 440594848 678823059 616657289 792067015 587003476 756653800 199952702 208256993 495681627 611132198 329444108 634194639 268169202 978492643 269952458 856862754 743842404 769487232 624306377 664965981 547287812 727058335 31021863 306844718 428611925 851030398 487257625 657581187 472719712 874045364 745448792 887790043 122512855 227777158 965631463 998520657 97690136 417699671 75085038 742683308 589763996 799476373 123564519 226018636 962791455 973508448 136248381 973076389 1335382 366493468 754860648 892391544 832557510 905984609 95070767 171397621 606826079 695840963 135172624 682283888 914631443 966380321 484061075 699000499 235990680 917257188 489229597 715073045 925170832 938912284 130534769 811697494 167067006 684463645 805240581 931587962 598811160 737031666 898787676 908302704 300686824 943608339 104765685 756690131 688238525 893966821 625807655 751573729 344053520 541936494 477469887 986965130 903876050 998838656 431810975 638340387 838867125 841329287 874664534 955045199 750683710 957687915 539907101 783955062 712737424 967428017 266336380 835927252 989966635 991564686 188621811 447474071 111625431 320359839 885789369 969867728 554011018 820947728 346333378 810940929 360785931 397461104 143536269 611746371 386892975 983746673 754366755 840804544 460262506 896649735 75334663 360675688 725656555 838181874 741961272 758066652 820558442 835183795 703198970 773726097 31354594 400455798 24932879 704894235 145907825 454289978 979296951 985415328 628637674 642763134 182784648 439780200 166059304 325686352 926622293 956982260 366653184 756472005 658811439 822198824 1671269 984407420 53590921 134104761 944579567 974336420 303697985 513377692 158901039 501949167 206653337 520143731 921360034 929873667 390491884 715028947 439002029 702686358 641862608 747433446 785765527 972242721 953440850 959605617 782413471 954289120 24450878 976131690 163129876 737542898 525171006 648692161 352457211 364123033 305835078 872326853 784163204 854729194 254510511 300198951 111162689 822633005 29393288 486244156 222123792 838778041 716875044 965678077 962558002 991566037 369193382 506828672 700172836 876907698 359155032 594068390 513497273 688132807 579420627 859848691 48640899 410677134 842283589 848340220 214983042 818855564 907708492 919224078 105251771 197641978 953690234 977616851 750148642 845812714 459880613 683930030 369213994 941471550 408750186 988335263 267526814 629122974 822908257 987195472 22946348 591119405 887168535 942070969 768057426 852330379 706083998 910839831 960525635 992956473 409208299 814414067 585979890 764594274 620721765 663036147 615976984 674231064 940456579 969052578 640983203 739430479 553021230 719934053 583933703 959708361 888458716 995267964 627113631 687654361 533367733 618485312 410057929 667945317 717623851 730199648 142348402 408090386 696951046 879083880 907380410 969014401 306825352 706754092 185670645 533744787 67668612 136092602 573363595 705648939 893961000 930242380 520975404 797466267 10756043 254665953 859937199 878316525 297759773 759958278 539792618 744046946 525924645 991727892 235926305 991091725 905464908 945836299 7016398 403672409 79156745 647903585 43462971 546626596 666259174 995947170 85102029 379665707 849705205 989250830 784870893 843719548 901629339 973741611 320067430 772611858 938645560 947991413 709096758 816690838 174123602 426100770 237719577 659273852 520462512 654716597 394926729 638627204 768906120 902581440 42180844 195696298 498336850 803860462 4573831 951486267 154841756 647823797 649884189 859765949 740608525 852016991 629932951 711107632 769091345 804147351 750926286 931796880 682752235 960385853 141514832 349276236 962588836 996083305 876958426 945264207 454682902 712528486 718014508 929798286 423726104 546239401 381598506 524418189 169560773 565257177 985474166 998066738 746234219 752527606 345639258 831156178 310740433 495152710 23415702 315125253 889156862 991300721 22613135 43360872 6617126 353035517 927489553 937808689 611383438 786505500 368264070 635453832 581619512 726635861 720000372 950845530 809369632 977032394 885914389 904654583 634848121 972186444 882741026 902545865 664509902 836648216 205792556 306049904 141442683 887590197 444036269 906697083 984239620 993033074 368416763 599787677 369885518 786870974 189470248 448846212 399392276 532333803 532216715 580536366 110612009 421530732 455939878 867218359 128105389 995980680 490344977 539342164 733352857 820901058 936146103 950392070 72860945 95724307 831095800 936114331 689121636 825117158 9686525 225658729 276598864 715266357 585332342 959342872 101308300 198206457 578711902 996208984 387890095 998517506 104248628 958752717 990362507 999896467 795172086 955632748 309254784 484600849 9031017 81922976 767222353 804736285 296380288 445839937 55538183 130801491 788229584 831656562 360782426 836356458 488868308 764169128 911492488 956887301 781687228 824176870 133202267 358738361 56885015 963976853 366935818 413132371 580373347 760745148 7226350 517558588 851575405 921364445 650299381 971809743 453968379 664336600 182377642 947403692 803550631 853362278 127475274 515381755 724794183 952026316 699544967 831677700 975272697 976486836 619752556 710620279 898458055 923203636 711071178 814268166 941960154 959788570 245758971 874021953 692927827 861629243 433235688 942232758 712643764 853284084 293222432 384209918 897554028 944644532 532193796 959945100 629023162 849591078 583010721 994697844 327714449 870643374 223877243 482963850 579348853 927879579 592139564 935282649 816974485 936286231 799153982 856410877 958031887 971745500 199568920 432867952 488374475 864171314 820908192 929936014 846779483 962224594 302140166 755001453 793130965 803803727 346583548 656535874 121642309 323630451 588431033 682938158 273141939 873444293 829706691 833659620 75690291 834511522 497505061 545772612 628424916 863125877 819975388 952938874 911167502 963123795 990015692 999389138 229715827 420523254 701959452 974228556 266604257 712218911 291371602 904067061 127852192 604350692 301434226 974598377 599302740 920876045 827949372 844362100 429264105 480754973 274640379 954329568 592725604 832145714 145141202 547982361 218871598 652112144 6522219 116847436 327311927 653224409 733068097 738919580 810296278 919813817 651862109 959510519 403802737 638136708 428189172 836388956 680399590 835650943 581812122 835050774 425590109 814584678 114012996 778834589 549654310 624330348 784092022 919101444 666788715 872169975 649312299 726217699 777874925 901369197 166801019 197536151 471796272 555387871 755617956 827055553 65123093 344440179 383064421 903645970 909117381 920508998 54111649 969943156 771734784 904214501 21289761 577798718 134435649 349058982 224735530 600934837 578459165 922241688 582836604 764482788 46896378 728692098 32944840 265167975 718329600 806555234 163768973 338934855 781043042 910178955 995446758 996998844 308590609 359878712 914678264 957905983 767319990 903140699 755515132 758662037 408434679 967214151 528928 516842182 613147580 811913710 301779462 530659354 496781291 993395694 568833617 741554872 508510187 893006651 462521513 727018762 926447658 985200389 282509453 763990176 571906944 618468966 373858791 879629930 172132478 406338945 475094867 672115916 969702509 976204277 926185105 989566229 454653475 629899201 841191700 901805140 160811172 521709615 722253086 734969592 150398481 584223224 568837201 820863144 877824812 923410139 587942445 950064891 698237873 760296168 543438294 653246886 552009308 656440527 691946411 934054965 355124146 817364989 886941971 998350998 330921322 587095550 178061140 711231515 996854743 997076446 806851064 985117184 187465511 684070504 428415160 980504535 849902499 991618870 583659584 820278645 56729720 444481269 669748993 893954422 698618505 835126407 713962646 927064203 318947554 319994237 583167733 604354831 392866421 993306044 913654989 986016084 571348994 852811548 127786514 964559589 153375004 663347360 680734662 979680969 880597478 916112199 465141021 799814364 362103640 987136978 521937398 824941722 679270407 898154093 846378782 940398583 536210124 661991879 436841607 471105608 303804772 764398475 194735042 311328217 786315854 944822535 46292577 414600386 289563703 818073211 89384722 607193382 527099746 570600535 614690527 961118224 968521145 980887687 494211709 536683701 607568497 801763979 837712130 948704308 418673444 419328264 462399602 608239404 316595974 584161735 122609515 665341795 514241647 583794238 792675251 942182479 933194751 996461534 207906403 355006259 101252185 255115559 526028949 900529640 108072581 950799392 179405558 252270255 31974177 800430833 100491683 946270794 145301345 587625107 200469756 476905839 752188558 871917409 338781164 532464249 267280252 301860653 932847701 936648681 626449487 777918305 908289180 928096166 844579614 900879545 843707604 944143133 461021511 482358944 855796847 991495352 530425398 592456399 164681462 626769687 935139758 961418555 847740801 909790377 702607253 821683473 275433565 678821140 118507004 615502841 645907412 741031088 564021488 847201401 105905986 382601468 272457492 861714995 461850800 580767556 299552398 981108092 129273669 812499010 654287661 949219640 66064879 397535031 29845961 710814161 932298178 946339938 998917743 999442268 312408511 494142290 743902955 975190459 432381103 820504076 606117315 693843303 970173668 978421579 801818262 889634424 99296728 843965360 370512150 961643640 26162676 982063525 103979250 549235068 240840723 582112490 925002727 970691958 474130935 813181209 770382534 866450447 515806219 690152485 762657357 949840769 462013120 609969270 546029578 616343354 326218004 795612244 125155677 929835039 368402078 587137682 97511374 289123770 609169199 973445817 466726996 780417121 980385950 997302943 821027662 856020561 763710393 827784747 695253445 887624092 802771004 823416904 436397954 746718631 770733971 956274424 665240219 911591425 910837336 972287881 655172317 747165409 74973892 893378443 987541212 990765621 385735363 739882525 109594130 180696960 74106882 698066806 472133882 656891780 921608180 940466782 252402379 761807428 205902512 852874381 814949635 841289698 121206104 774185889 994197577 995636120 277162559 468679681 200447079 957589660 2190821 473999047 771209556 821004209 495617619 660196223 878727330 932739620 196780774 949147393 437873042 520079946 26090085 71347834 775783384 816812176 154153307 568289577 125880922 653373254 667832394 973452291 600206720 828870007 357449697 453736568 877148122 974350030 928272512 958362214 154119848 459983108 832139397 967733141 12786983 994193719 288171279 514608310 323773653 727177348 678841757 803673306 92519934 557638597 143162 366807336 962579681 980861606 517599828 653267002 841775768 923899561 256757690 335047533 997244948 999352631 42528622 430076512 145994306 309380043 501365033 613119347 373625663 788014687 251136748 376233118 423348476 472465123 705175530 979821994 64229719 115693947 104225207 562448035 129191904 323781771 449694257 995373504 655387362 905508442 10053875 194246257 794932683 943857591 85322066 489742365 108457781 591893630 986178179 992742905 914362919 965192691 696718374 776307412 582819224 937749635 616745269 881582283 5925913 533427082 967145478 988830463 905292205 955776106 280496021 300917201 898615281 941138177 526692549 707362645 185266516 244550473 59598185 957650385 367781106 920839196 896099183 950998361 66815044 962076617 851854852 893973309 946043995 956002679 184564751 196758774 151896408 912877286 960025339 997479972 520618637 835833910 995894129 999010911 110298379 579398996 903926254 996272749 752829902 859208228 218545503 272903684 849758279 855394951 394968966 442949720 1878954 559287051 245609019 611531180 60484051 123769719 314891266 832521109 894021876 983820137 746100330 814653552 364080087 411007551 416084670 665440952 276386847 339648847 470443586 968828810 848371555 853970374 797277658 937186511 578852879 875706795 367106104 807412668 761885968 783898647 244433616 673758487 45652363 127701352 644400149 863627376 924818260 927721049 732887728 792739268 856049744 995798362 881176902 989669896 675742603 884937347 666255916 875962701 492738942 666471500 762120866 807300465 418093639 476123884 547590231 763521565 427085149 603939829 364449628 779365170 673126353 971250677 689119719 820811251 591375931 687182742 391288062 953967317 290558033 335439888 116479084 734111883 37465970 384079704 194835520 943817086 75638055 580136043 641430868 761279569 454582305 654625786 21085574 570261219 334528476 522333721 318323221 695201613 956401315 980336742 919994256 964391195 322148256 395039181 834493299 921809573 68912126 241633584 624569658 714771933 358958307 544281824 73852900 964739782 275388873 766139878 861730944 966872924 709284783 998480531 988824054 991674135 891463224 966965530 239776090 522273830 869868944 937421797 282780114 681671565 514067703 870858135 34450944 344205177 607715110 632291743 680472014 878198407 338359518 823270180 198932715 826498524 636579756 650001145 343236676 400013116 867523684 910681611 7971955 632523341 760987071 810644079 605898304 841654936 343396724 805547533 808431281 989983500 358511049 738379963 286515430 386706206 473658048 647763865 968465234 971822334 160437670 581641543 608667813 899154765 599284506 954995411 484316020 868568880 370444982 683333329 983364026 991982558 573366886 604171615 165126937 557682432 319815522 464292822 797145468 887567523 172535285 482173811 803453805 977208300 166219738 902444844 439163592 604859434 798260564 925785710 391363842 441078278 33189794 412301068 182396326 595074723 238302525 573736614 795143974 864788230 630708792 726574419 214220682 869562220 258814115 537982321 353467823 466977603 290488139 848815295 193203223 929206433 80325700 834133112 101596931 186303936 379815881 534873124 188557144 287223207 380628732 899097236 631835485 647026496 928215538 997973458 724013964 755088512 236187452 956116502 850166386 851216732 735783518 898344982 535315504 929234055 574444131 906143369 811070738 986503876 37961784 952002007 299557474 395638503 284031077 792567812 280937976 886474698 129965942 668087285 637247466 675239164 466180257 931701635 305194609 597832882 583544032 934933798 958751164 982901929 162786854 978977217 143883882 357682237 843573524 915240953 377995039 452093879 439051665 860565351 958558653 973706368 19954385 240152988 507866046 572810798 971954538 983679222 675888381 802925879 380687578 943699895 447738861 552490461 845825939 978959847 919239429 996775592 778528363 931335082 233335090 423653957 632747934 921964436 77440997 782137977 49981134 701151355 272850457 279816344 556298699 872916780 212445476 864318386 628254130 692979977 710975340 805587659 218404218 870190352 658872109 684912003 522895595 636433167 924189658 969856037 85666627 931317260 181740786 661854888 540114295 713712563 436132319 919879068 265138182 832814270 132134056 984317211 304035460 530632827 535721377 837922610 697752194 752333079 818571847 896134970 430590578 445455960 523612743 789648546 777128183 780139623 150262662 999701527 302780085 308286373 889562515 924152171 579453683 613807315 617085951 932454913 387789871 447627159 938770061 972458877 379585915 395709706 778638062 800688241 325132173 703779609 687351981 818334899 893073925 969427560 629084139 783349906 937863042 948615978 575226671 822515269 817688005 889896097 207764346 617968294 990943967 995727503 569122206 700951027 258959635 478983891 877259390 953630333 503227728 846063687 319306724 426448373 541736762 642676680 349199952 955458963 924722781 969088474 371237750 389058672 361076715 963757234 337707048 516975313 696747615 765619943 948758958 951412107 878813922 886052164 973693043 979695013 753441100 759801943 618077464 946208141 557877615 751516983 829897962 919804981 550871191 963298610 255744987 616500178 915558357 980574202 279969222 337152109 604712195 973441908 156199858 807397327 220221345 831174544 734024196 963489429 458311243 986532234 23398858 107256292 174808864 291290915 418824 585175272 145210992 829496173 297637904 611739689 604242033 659152188 787115625 865482882 100170697 493260000 299790971 425348883 973491241 983424690 307614517 810543473 858747016 984940341 46812120 190102300 167364201 261630918 354620785 411219007 7055692 598893334 692251039 987885995 24207783 507533977 655006431 992060026 610184615 725566285 264258110 283709929 803442744 890918995 85054939 502623816 995449891 995616599 535436258 858081870 69975593 763563315 506744924 812123128 886941810 997716657 209018772 618323561 30423979 622345025 795893380 910466004 787801373 799391609 919752812 992170512 357856683 514608554 994154342 998398164 79790491 958046095 752879790 832212143 528651961 552738924 88443643 709358608 499274980 910781534 728794982 786620280 519343747 805365459 83267110 656768577 84791192 451492004 794073110 908838656 567845706 619224376 673232626 848251947 356213430 999202450 308034983 499250674 479014900 487435434 197249766 554970283 177451954 293893159 85232276 206305365 735731974 867066229 466016740 532959656 339103759 955034574 413219686 985889109 406664532 484352473 406746089 735377839 471137148 676750947 813520511 857294790 735903212 793190874 273293945 532941861 121489270 643339575 984570926 990728395 691977919 805096262 561903304 952636636 127472441 403655143 425852511 674223431 341878543 713951043 549844931 765077184 545471390 671232045 81364166 347885762 110671182 451133121 961529291 997891983 179298827 498026889 553169463 589348202 203476352 789521935 108904119 383382189 613112646 660373876 791016844 817876004 861550548 877125786 247881715 942911975 404813153 977371690 425945313 428699817 49058504 169669527 65996440 686867434 15508340 863968523 517230017 665629004 134151822 578572653 415085711 931038705 474951693 969523261 510969846 760261597 807955829 824650174 880668271 931123903 947864636 978829686 348457831 610772685 700320895 723210517 628869518 935557388 996570132 999674495 670000745 984539938 883589846 943877213 154400850 430776475 396369609 812539025 995149272 997441137 950668614 976444954 934835975 960994241 151878777 339418649 373561837 807840905 499150446 742276750 52451871 200185563 843099011 955095809 820001520 912413142 731849537 890060741 848029997 950795316 3990768 381260470 205768534 791992692 421953451 697378225 559043391 824492850 946251877 990143219 389706218 796477267 638812964 729954435 522077196 987656732 869085278 973001438 75572473 217057074 69180354 233832459 502150915 818388144 678333221 778441685 499072774 718801931 624126220 708270044 331698832 433493640 525013657 899297061 874656492 892694634 143117676 775500467 666423007 833526204 866312527 943269839 592651610 839810787 622556442 979527472 981125034 988326907 253603057 503094745 836107144 867552314 262580006 620209867 834688344 963247857 782055196 918514108 216321 772553134 164832588 374368908 288078816 827419891 130205834 564425262 409538237 426224522 201715851 855307223 417778499 520754610 644491595 868622316 775153921 962025567 452615593 600177191 520443646 623222933 740657506 949074367 336699213 349745899 281011542 336635807 352001800 834540241 682384086 857088699 20370963 721283885 798252522 802554496 895419930 991481526 940039013 999505723 719389744 912834109 205102552 835181216 857657833 967099546 929844366 946615094 902532539 954467581 737600969 899347438 224788836 796336615 811649073 881226266 446106791 895621128 325613925 561684121 736086166 992921095 235575876 789311710 385834048 808568756 543841062 750719529 30880818 247041678 539585770 704905712 972416478 975802069 371650513 392702934 559616779 749215684 817804792 894186945 969584598 996044360 330373303 650973068 395797014 907906535 47745397 664344410 66259198 778987394 120299681 700470766 337088186 915177266 103733251 693275921 318318270 853778676 248798793 860743401 523968930 912135036 472487799 535154315 588099646 852930371 209468154 587508576 224164998 495687424 784973285 866274688 139320320 697531127 256856488 477070529 290614519 864989378 703349369 817257643 790931047 988149699 933215772 960428079 690220063 956388527 893633059 923383606 406414510 662806802 82921660 327418083 606490732 798730954 190700281 192439511 46187361 65298749 187272395 532514675 625502936 946281148 423765640 997369570 22347895 186057213 750028496 760965063 2699701 490274879 419799183 994122381 864504461 916760748 265611908 915533955 597035746 646697429 414919846 900365451 849187973 892278945 521327189 869124095 50107457 774154060 921524473 926544050 553790244 960111248 186467912 866606801 544886562 851047603 841101299 935975179 891099134 995246938 125254018 268979547 444651768 502254956 341944304 344816527 631044985 807988875 702723139 981783034 516441352 920466311 982539835 990063410 601897357 848967461 942733821 950266634 163591987 668746636 700907912 909652342 662170683 947505353 140340820 596356984 691148476 938412188 768225714 970594722 619508254 639063292 479686558 704998722 579825788 903421409 854476677 898575487 435951397 573648750 106709332 697574501 24594480 140317045 632023209 894575252 419079935 666498163 373241083 565074914 626946633 953654026 69942546 177991240 581191722 889736439 578368740 628742992 503730961 814212371 816482922 991830370 78563712 773325826 395999405 996427530 880293744 999918323 835489654 839590465 300391900 504701995 37533916 686999152 546806605 682352747 554909266 976201378 58364118 891622078 579765590 657122782 709505178 978329895 445078490 959697737 66868823 171282031 210339698 785247563 516494030 764107063 758504020 851985615 542810640 893290992 932194403 938183892 318283974 996955081 459353471 994884018 565619743 777955333 847120989 889239919 518926270 652097515 628150721 815394716 819074517 850701388 159480999 636321332 81657720 969764214 102450148 868916066 396006588 557359083 249826834 268411697 258913173 788246548 978125721 981759322 225399702 743047793 458082268 469505310 677688361 743275973 398028596 567564463 125489483 611070192 697417538 811471549 600189776 894946297 113920363 700338444 449579285 649899660 848172806 990379585 916197240 955360569 455921159 657457765 702601947 725748309 758395654 915128636 906103279 929646114 904958443 917850053 399271096 492349076 903966757 983806234 586176908 631190763 191089875 892083493 738166846 854032605 386656763 667160056 138010076 149730047 77123715 158119700 533270545 869370381 141536990 872619295 171127855 265611013 119654046 418736405 961035952 961081427 552790763 605902400 36699481 488159669 358835844 948704796 981963744 992254091 953487144 965082410 250423431 851017723 331933960 612560212 377072038 677662839 217938920 842638102 805180050 962805232 399229994 573391936 675790781 954183685 752616160 817020804 426634904 473683973 12692245 331722821 497728594 786119199 308438957 657755904 180002488 603725436 861456490 995689935 190430326 521949113 266461056 436302413 643310681 998375687 851475290 915796465 323089721 652054770 495710266 694964490 50919333 527864526 939218286 945506447 958384189 978195644 412429165 624449096 854983802 855375585 639864459 748024780 899829250 945253767 675049139 707335590 693140544 967894644 398196289 833155436 237261286 685585039 278074521 421396490 540305335 775892582 729164960 836885450 557841507 782196509 254293669 848981385 700723516 813395450 21015050 62854981 59445148 686087474 78477793 268380917 30493666 213918808 252495775 709692303 235447397 638809704 935629932 959008221 40004339 543476257 101321381 224632794 324898657 922647336 246919717 806527968 9088628 180287589 273937628 335586258 430437081 929658144 120440164 849551911 750195757 800135001 86790230 127384428 52416399 723797851 241297318 367915225 697684963 918056182 955334793 962210293 148697046 367432698 817148016 894336067 306308189 939408372 360994987 546893123 865074628 949019763 234304782 385296762 664568049 791303582 853934144 909047468 9546538 16535134 450308973 663464102 11760692 636966858 134021732 829501720 391428901 813039595 989765071 994047909 515505561 561134122 736980644 915826165 602488208 684826304 391637 34978814 372570615 759263433 553927763 965196650 36327046 633315677 288352094 615651285 680795042 770483010 458540926 781504694 166887370 836378590 738529238 809959966 311836426 378235726 882930852 996208394 262949778 761601965 324951443 713738096 778259984 922646499 10532531 564314994 494876542 964491304 797697356 843999185 458238329 642594376 503382618 911470465 223199153 750908523 295874430 681506701 618873278 975961786 833948328 979699004 715399916 955356630 507921774 954806575 207299837 617156038 448188218 538447007 667857421 819928971 852767990 929017315 501925848 808861667 659406413 787023244 501104489 651782773 991241697 999424341 321367275 927077712 125456459 241880771 756899223 788821358 916694383 926239978 232406215 805092477 785298840 843165632 738230641 898591117 352323209 537308269 907704431 917314159 369169844 842484095 248341244 859882509 18609266 545290631 657122959 722126147 377729812 611931576 35083445 463755912 387991863 537592705 264014957 675875654 646856551 804197156 507963293 712677202 810825910 936095759 642040244 740481077 581043746 841193851 807822687 813998810 385099950 786193114 745759980 916148000 283865970 730498160 518387335 796417921 240101147 777552613 135134084 900721122 644107050 888877067 803789624 805180847 933164730 982307030 791350459 990936572 455190591 779081386 577158324 965361466 316286872 408196499 116354043 608789660 399581433 558756583 329051297 726598873 577757372 864635248 199417369 647051476 554129686 977248758 729809964 739233482 648561536 738795215 292922270 468220585 534698016 930137134 837420906 909777196 973897420 974682323 846415269 965816031 412065646 612690729 172663031 707067988 157176483 258502351 826870114 924607787 699826601 946221657 539978787 871280882 461047821 972882639 807474570 894674353 67841552 793960569 554240048 995764505 658993137 861234782 961074764 980197003 852265843 870295801 844656717 885607734 56241410 403427260 469276064 770756540 444880394 782376536 447873493 491616701 186084094 765907238 822504 270463244 432698823 598668053 493816722 599356181 117342382 301623329 681877745 883699924 418172794 498419598 741599199 814397667 683635900 928255240 512559093 810275733 761133193 926750033 962817425 996827211 843205854 859764740 461327949 700667533 839141586 844602724 468625885 655945301 58957288 615676463 550565778 717166285 525622564 663380900 668765445 855029558 424667282 912514684 417409276 441354868 627041532 934491570 566550874 909796529 113858608 945136544 945335667 990031797 834167251 838281194 689044066 983295467 706866438 995440501 519367061 605183412 705680847 779230443 67628330 864175341 659637861 868446110 737689872 784903214 757332161 766286833 403662261 974570449 279591473 601585556 862640607 967594353 499470419 592436693 591331442 929790266 387290277 730601669 121055853 889939936 520183347 911419177 872229273 989536596 288068245 589063738 156806990 175449613 160693835 640435286 483279259 686318161 782913880 911836814 522501074 753002928 46568458 955894776 312049792 603446433 173175261 586557425 745387903 760660147 712827678 741029905 861421396 900575237 395580661 822014512 552765033 749853048 703197758 952383428 58376553 798792302 585901392 736859287 939441938 954331397 545175212 627179789 162525687 338871582 718157890 866228737 404096220 460017238 24064319 616932937 760354383 969322225 661673128 845377233 669460865 757113872 329362469 726827072 850118782 862134001 21677272 803235790 987393090 998660896 955217978 990656485 806095642 881040264 980658149 997017123 226304222 759921495 961626801 999708359 372654870 603465719 24256207 930601075 301990883 611714987 770909105 923478758 157390847 367445493 606003843 944936152 149579852 697303322 44529079 663748022 804787516 847748899 425008091 880269262 350323627 994560773 114677510 679205122 179330597 782700380 207884854 994032477 457658754 970028576 168626153 990351478 529722326 703783913 558860653 735686212 748186620 977109667 842420806 898791913 583552645 906007199 617823136 904697175 541124712 689494531 812025202 994208016 572695593 855415496 346356687 760805059 745704347 929009368 842213242 876197152 341173744 616951238 683837107 812390204 640043640 789991160 953606033 954712174 48125469 513680955 775742823 904813142 373087177 425305074 200654714 995394942 395876347 728738896 642592112 658009240 983990166 993137247 433223005 437421338 890038556 916905932 802006140 882417329 884075590 891454636 784200260 854184542 513434048 810128469 973857542 994573998 138482139 195980936 857185124 857247841 146008969 634433776 450014673 939878570 142996154 756658916 468895129 550209189 943753878 966805941 502213615 959865750 893769009 919683194 364490061 821999430 662961292 935524943 468038668 738885217 634461885 879193397 957779285 977790296 361874127 886968935 357477209 437651627 87110968 995989752 510311258 909931004 223890454 512077710 573756378 626270173 274096630 789978594 695326696 882179037 612771858 743665979 113433121 467676095 520286288 535226276 704907168 860709678 102442349 870276703 714009075 775783084 14922450 72690764 520192821 906865044 740283448 802428054 966184861 972253078 419688812 640352564 672468506 797835292 609442885 974646232 188550719 202523653 337383925 817732293 776514335 932230601 646288763 697659871 972758130 976524046 810206818 810952693 619593619 931541446 321052261 570976602 983996488 998423998 913491696 958917665 466369374 540627069 554776164 599507331 246737894 463552678 500975387 945468197 741889213 822969871 642795545 990989162 130502364 762789647 191021125 230996438 386805296 837590724 383070503 709141729 13096435 348623959 599730098 933610381 364642988 621480154 176051782 744029297 372782842 901942022 976937165 999628820 691112152 996702905 399026175 674905999 162811551 428192712 959605916 968935802 441308560 667949457 703519263 889093111 874070286 908296536 517905123 643497378 22143501 956956271 160110273 228459743 167617698 889142400 14226271 779929029 722237645 744849209 734283752 762316503 567835837 893858805 366759154 616196905 998065530 999255865 818956189 890511211 867645097 894562558 554441527 872316854 698278541 983647390 314374239 468507230 527373690 555534142 831368111 984137999 720583920 926099495 39340933 460534949 959369708 994010364 488929258 543795437 52624181 750746342 137495873 336872680 448081722 537857731 192913170 977247591 609824803 918097177 749559507 894453349 86346984 930054325 97586160 592161729 405571911 580287883 69520830 741182321 398485523 702956687 292069483 949842819 339388996 801463903 861302888 912420989 446590310 738762229 23292676 678356342 997716264 999478104 186966084 195944154 788260722 953327312 857138331 995230281 675356098 710903976 12332387 50843947 648815614 714302438 985276915 992632781 26579307 600420343 869014543 933833467 23261028 971711520 726782357 964983503 771843060 973260454 538463551 746734000 286512752 830051960 691180646 968659123 711721390 868555600 842445769 920549016 52513647 891764118 590439602 971718631 196876043 771293926 383503936 611682440 349827876 516742125 725457328 844134625 979948917 991234084 918514533 923077775 929065265 990175858 114550028 127711122 672903247 825587490 604943874 719829826 806893527 972652652 642706962 769954880 838311435 916663708 793901842 922500605 292851386 599871863 256745495 581095579 407735201 524342584 911677312 947592799 519444008 707836003 925519813 929361968 479085406 712983605 236368803 919860844 160303938 694090809 803506990 931762631 571460350 745516907 391093619 840705084 306494681 606665910 234738586 686607742 776161704 880430665 856357412 911149377 996810800 997033368 669718749 837976213 392230113 805974556 543652399 625673583 596859175 825906860 94409857 422181735 366402729 403563103 802533976 933432626 25036853 454223593 171847882 267741367 649172397 974760641 520402864 755842544 114643560 262286450 250292315 737268743 613769827 679845479 556296630 869363348 867721023 929714577 430294824 780288116 664030231 915149378 684887683 799269098 574025737 994816410 297843085 875062778 388524529 890583089 310646233 894209826 172208824 687984296 76405155 322331826 830930934 946839081 58811941 162606099 892538470 922275654 529088290 777377915 546069607 887663526 376627848 940704446 804505424 815066921 595074703 991066707 653209034 799726224 761318525 982075729 732682284 771614223 1080124 56140433 106359036 236175010 521252894 882963829 42309557 939786813 90048076 311720851 200563162 421999306 180289968 912449146 11262046 69597614 890479243 994777327 844837396 931805126 603182880 978134917 614320205 657450326 1704791 411648021 433802135 511192607 62549646 513341319 134780323 143891152 300613506 426299621 510660967 927548374 250933918 286974131 940837960 986605949 572505613 947621135 441027595 456466871 304877522 340162688 775708876 881297388 745470708 845971479 813377634 902334553 364120085 756151440 382237781 382579886 839549992 876724574 248201904 961144178 514060901 602100482 317204176 801620117 519490579 752417573 657118333 795068448 13270540 203904177 193462263 509171852 752159065 849801238 274899841 377842128 549581562 801877751 741248865 884214194 360648602 931056698 338730989 395782307 128169968 771082012 621327904 710363033 252061428 289549275 969761079 992117663 614189873 919419823 207786317 910114016 905098884 918086482 681318858 856522062 929095805 953514149 601552813 749825514 934985355 974208280 94247086 460214126 82737998 736409740 407628620 802441793 529081674 921438706 906388719 994923808 931876589 981759320 796277412 975555617 662820797 819291643 588529817 664270724 818957463 999818378 594259148 969635388 922295572 965911173 177295168 895567018 239247430 942813177 943678553 983069423 226210697 255865287 432175113 821580396 845002152 876002446 254290991 875498022 869606124 875890576 549402057 657469310 263994157 472494577 235139019 822546747 69235284 956353904 274805123 914460976 653553012 894030542 714061200 738979134 653344096 824445476 132210953 908175233 22609697 706835346 992235938 994751491 515227200 977031947 83047859 409373780 413358975 740829243 627501249 841513305 870808651 959612134 889406351 990450209 391211131 748847140 389040089 690476050 778499837 942825329 250886138 603258705 382428648 707076150 144058116 323411094 63275500 196006420 417201814 659459765 833574043 905290351 887002314 984310697 83043101 566005628 578137637 891446106 187425485 285352501 920976580 991752437 191929847 833740082 218814947 322152698 936082807 940454493 401240213 970801466 270136702 581265077 1248296 553517006 897944073 986350856 601829865 612491935 489216916 655359921 953880684 971050704 385709815 721759519 787277840 942435728 834825373 942531280 758957474 868819968 353056005 565990616 234151734 504340710 856733699 945803506 327383761 959363436 210637157 870362757 505592875 606580708 175238747 743456879 750565454 913885337 743209441 914788695 443482682 710840995 204261287 825158908 928527726 971255827 457575577 872363186 698870445 990395732 778564473 914526574 392370899 875560235 208749001 453036928 964167254 991924167 955913066 965357826 492813641 845024471 380237299 534532060 625668013 846514880 798864469 820467485 896280325 956529618 797599950 987897562 937424133 947386681 300378578 450840127 596818705 727637251 464322910 665662183 482928454 712217445 80721397 389931236 993130965 994486088 930098532 963754525 602626111 971857626 726847065 760096966 381718180 563508684 277592729 772379666 24876500 569356300 639388671 690223473 948693401 998913824 561094876 969510542 61158972 701745709 945732726 998714738 13008137 61421682 291603004 507409063 34007040 433107109 957431927 963571131 1820557 716898498 553553278 686798578 463295391 605002185 186696946 856925886 782621999 964519785 826390688 910917939 784086879 975372022 176922247 716925425 805216897 983609031 534361351 866442463 871224641 871934929 126854411 394278383 880173066 935402716 959989113 992988883 133245643 702903288 605115254 638262883 145526521 785642826 350818274 465294982 758026427 851260413 78826497 950436859 943314105 947447141 114861750 698220596 940912448 988004976 805636994 937651315 240739789 910043433 15969519 104588685 565005496 771264591 190460065 362784169 849847787 963173998 548310781 723314504 730729322 815809398 386585382 629905436 126962933 875370854 966265786 968440559 584483330 719619143 556918266 881148666 548143090 874457356 733550726 735089987 160665930 587851273 473595653 982602458 762551938 784227420 228265964 340067570 450522446 503242518 607889899 666462927 987299657 988109437 343566305 877695706 609512029 967280105 557374350 901840079 874793019 974915385 869381795 962039494 320963209 402799212 377024423 746639667 908444713 924809873 366261773 619927766 18874736 70001720 262196886 890827436 763112646 995993624 521662674 896307719 429293502 666388152 854188464 861909633 198124298 289722010 287103831 682044824 594722097 858629744 589062789 653383644 924079915 954406042 198758615 228711269 692862004 798738701 312538509 923341239 193009463 634041728 331272643 427074752 801391098 895727755 493504155 938016762 464707793 991273586 216799165 963753103 5091568 733994883 529436463 878144333 306450111 774247236 311225074 870646159 430246439 609519835 871657470 917187038 716025872 917650161 250930957 769209629 67818238 570565142 349587476 944439103 662449295 927125248 844812801 965960845 342278105 526433274 60384223 933881580 324241248 652597658 538034432 779311180 213584193 664848345 133425795 625089906 512110602 976948833 227581304 546151714 491665211 783857232 990984254 997175805 235328113 733664129 420083304 478083337 521434914 968866207 599611320 899790695 566907969 629045968 67032173 558377210 684712568 802540849 39337589 558943388 664441459 898729370 176071301 975594602 46866872 736170015 460940587 514649232 764174740 952182825 628311016 926277748 844440518 956369507 795841807 878122183 9421797 306091406 764174255 773476792 898425592 993579894 698656161 847631417 845769620 921872486 871248116 889986007 389532435 878753519 615783501 773023399 723853421 818073696 436560126 949010815 313311326 637489306 748248516 775621326 231108312 276176218 131862149 263430421 590513476 591942169 669360112 884233543 633432805 934169043 24007236 73576131 669653155 963717149 672990980 838238369 427140208 551693839 853380372 933346186 696163621 885236837 991224016 997419591 403250099 558717370 285628709 350084317 789020669 973553709 962915664 977767612 826918850 980964419 199691926 383149901 227788472 562145625 816466051 928625079 264024396 564006189 911359918 994315845 359411998 605290388 953384670 963301058 642379779 775815562 882099483 970412471 906022430 940241842 848206316 855466899 450171641 566868970 293955048 837548884 319724962 714074767 795955697 889474989 840751842 851941695 24128759 849669072 138994347 144952764 323695497 731007744 611076854 789448739 772668251 913399429 461365918 684516953 353203264 628286938 883937200 911117064 226802291 378770610 939294046 949487349 963779999 999011735 573419456 963576540 149111601 378692532 765731904 882255940 937698315 944109712 256638735 863444784 515996051 570897241 913115747 999891715 70564838 715697473 483363298 678416580 170592776 462355147 389897678 496530279 190317823 853990669 634223197 890353375 709300013 913904234 140197093 552053488 658132464 923921597 158490485 679343702 305511651 933854523 259175393 697865033 592663332 620896742 626692020 639436392 940432728 954211339 14787268 106102223 131439452 984696630 376054976 599461630 322052097 621699216 320472950 917602119 765368688 768513589 734404985 860076210 369444856 922068979 255848488 731497890 898636470 962440249 708835152 793419631 288896454 298978475 725473770 854877152 785228642 966273940 628487851 804923272 424830178 770080750 651982410 850001533 731590538 816322036 14502277 785882015 867557528 924595334 69729254 550611140 224489787 883734738 421375693 653588369 559093530 720028845 951134159 957436661 135388364 522438758 128330315 650259553 871469447 875601481 218201250 495584564 423265793 871231938 227569819 250714163 155550524 686387813 336318789 795182990 46399304 449536693 329720099 664292467 250045563 254291136 848905472 923228324 508200021 914920972 133341667 993928291 994391590 994546954 187823434 794515495 13858001 388111001 658216405 691592798 367895892 546642291 595203067 608441504 51637266 532221091 45545656 443673516 424543212 858535422 536570401 686906052 388615176 658712215 913051262 991653645 623229549 696624221 269403606 995539606 39052161 751176698 623238014 785463458 687656080 710191282 490327952 642863127 975198511 988670845 700628734 900794744 171785756 222271556 159243388 287399676 278347536 952988739 940724151 946902773 202282676 251141485 359669020 579356055 302494912 404451650 485091851 730707448 948557466 991117922 37031552 456401021 32422233 310162920 518159371 877261448 447442879 549713902 407301878 859101045 135851592 566980275 757681707 961051128 81754646 840978469 156917008 194307561 278727454 991675757 461606449 994775436 920757884 992427154 90577585 631717580 357645076 524282182 548648355 779086226 929758615 972076687 59767996 662173862 160599189 699056101 530450899 765842956 684723342 724785233 233100437 484207994 2681367 461925349 725194255 774892981 472656417 897953089 482545876 711375937 686094559 869256103 373091680 501938436 257279842 663324037 403139349 530049979 441557704 928695739 185879830 709194760 977035826 995458421 816601439 896448651 600268348 942403448 408472508 729060312 343011622 557613417 597505209 801035852 66125718 165642269 119664890 302350917 670247372 749491286 403686388 941103428 847957585 935096047 433939995 819921652 100113166 351884602 307051551 735541986 322927660 957800159 916858986 963287866 566505127 853540075 181762636 427367648 418452345 655159201 752821601 899807871 414543989 703939984 349215994 396235649 36809646 783619952 682224657 738867956 759886872 980838483 400393034 746681110 203578260 634234583 851701569 900323557 829074530 926960535 923072371 924603240 519078316 561960122 901042945 947520981 347649203 864195857 150031507 855009876 157037896 656312450 913006522 985121412 933127655 989737909 982410552 985671210 595235571 954564735 616361370 795519292 630551007 767895803 924396836 998725735 683718449 952103739 321248942 479579602 413953980 739610611 681077336 869771486 389191099 925010768 561929597 703192785 728963791 944652028 509869502 823395457 96741094 441494954 137624585 297952465 663178840 739125048 694154252 956987736 601434282 982300912 772223174 912715270 347743100 742528443 551838131 814473209 838426856 955953613 26772290 969536673 741887879 931541233 429349886 533123529 213469306 850036372 930153351 946197066 378690466 391813019 741347078 774126088 356207173 878764705 402277099 712897844 812372664 964564214 415960822 819552807 83116260 348944310 508727692 656652805 362320294 656901507 244750653 721761215 616099760 934203840 808429981 896684819 513650287 604618577 340026822 524621731 767042897 944413133 986339274 989159590 797989493 912424740 332651064 968278625 221657041 384734612 960452524 980813254 115434719 868243918 261187147 463963556 247943718 594186217 239989459 779924515 622862725 743030307 118083669 703005940 56347521 838096340 745237415 920910067 182637977 398873181 601072102 732492992 778241946 983856402 742485033 909444969 367196620 469762454 740498607 823635683 555073098 705846382 184944296 491744021 544087371 920333466 300346797 793096860 486916418 829763461 52591715 886585224 903148458 903199394 939547689 996323024 560234888 983234870 982642155 994177386 835221681 945688656 616459307 640451301 192616202 290221301 852293213 854153449 733951693 858966114 644149483 892394062 128540669 606889234 688954615 812246697 154054044 519298023 82335261 413778349 231869958 841091081 502647956 887064613 659027748 906039431 3890224 46563430 617426733 715818321 894809987 955780059 513862810 942149231 399281061 639228029 597995058 645961443 823219957 948631520 934401805 985083243 617882154 849007611 678015870 908689698 24185850 905540055 310555949 319829472 671978116 946724635 455651880 897645476 779983098 927033200 911736586 940571048 156652999 698653843 941318762 967313026 377128063 382504454 332254668 659490988 88465970 100174657 588185724 894466561 189933123 294089392 257376258 533388561 863952996 996675956 246818217 733757398 767579058 968566165 670552688 994196502 29778215 465700231 377349178 572910370 36988064 367677983 129168995 286526333 567484274 594408225 439133654 714671652 935394417 984242322 930989900 981256594 937000196 945115821 282794360 848731168 563912177 606896668 953637492 964666845 570151369 975105001 498470466 904554060 882570408 916719134 268216522 471787346 192152003 872599718 362419862 599082487 960651422 966382567 474898577 644017468 938525137 985904363 31849326 51118058 579963247 682922527 454104115 663573226 790994763 966153110 896686708 949046077 646487908 902938972 518286784 586033045 202275807 936867087 623884391 730003643 751238793 986073957 206478044 239520331 786500036 890687629 80141032 307565752 117535790 913160503 176743579 697846067 962807725 996526043 71666144 372622166 131495250 468371266 55154531 249854750 366052827 494383558 26575866 828798875 339929145 781185048 841046995 900892609 481667706 552989088 929758644 953037812 830074632 983860634 17024599 247810622 979245687 979343819 880714495 923499144 671849052 831221710 856537250 885655220 691464523 939645231 58074746 671344960 697896203 912510525 285556841 771543632 51990827 196085822 541932569 959018533 864677657 943705126 752070776 904355679 875768197 916954106 910464451 963435371 447307413 972636403 611492925 692101977 534060826 755510049 363942241 855421681 900232814 919536361 822422958 898176234 452587886 763367511 699924301 743124964 101933460 753879605 751458736 906716381 415505117 758780086 427322396 630282161 591269324 756908103 361750295 728232424 959071034 969180366 761653234 990324360 199039222 808960288 580251812 618502297 907196002 984262584 562266533 959466753 849978440 934463513 765732566 860346619 693670096 981149738 661520207 747563202 243292067 353457331 833163935 869729190 965185875 978963591 664719570 811628690 340161393 579214818 124915897 936346222 546321725 914709988 467404552 799842321 605940826 727956849 238234675 462130020 481889747 744410390 45039314 893596188 231517748 733672084 364595251 757470527 389398522 767329347 465546909 639355026 615643905 763672857 841175963 854104199 807352958 968971370 656358264 663412483 481779396 921416064 230311615 392948671 303530933 355958746 740815049 820176617 750383876 972596902 44948425 603323174 681097924 750806746 597573869 605851438 137286626 239514989 778677568 973063147 151735085 778181043 454772995 559341509 113196456 577036882 987124229 994330400 423076946 749300709 951571577 957643168 592640772 771254518 657327431 810461561 355538337 891617491 323040624 761874759 485570100 668123489 665709871 681293393 271421782 463883811 61758981 635232089 125195193 758171170 327607851 994665767 217550943 878452186 878545489 900677388 79663321 611057727 602143002 715870323 299600515 877067697 92073244 494348792 245718374 833197495 376963846 452853029 956104027 967621788 395587427 660358575 390373583 759155514 838719240 927691489 319693366 856090455 559746357 774938572 859040401 957141216 508656100 732861796 575064611 877252404 864225693 892356408 253016328 550708609 34034386 604023373 818938172 955502249 354582327 695394593 387315541 622377649 640385440 714462084 926140165 963958066 674212831 735099474 908561592 997860546 544141780 837956359 633055380 642045670 152312327 478596719 424415742 506409069 799294002 967845349 506082931 679896987 959316225 966054435 72162033 863123145 417563843 800047926 780127511 803210401 530968261 594578585 28846498 201245657 860118538 902581760 866650586 949116163 426015763 588645794 78418889 286787325 403834517 888926909 940744202 959008988 48091608 699617782 939239119 964916116 20794496 440627364 845559813 912562125 731875466 809401420 205912409 914802374 963417863 978817351 844003352 960162753 325188022 362661841 435665189 958033879 422954710 485714232 971763353 991774161 485575884 671515046 675309266 750589309 432429003 780099681 909256103 941670872 472809211 488321806 543533368 915144760 482124550 735892687 78039752 813280142 719430537 939120173 821275830 898725988 54008342 682677691 744282553 785921202 585587239 654051779 739032604 776065325 608977741 809987725 87130048 241329986 994504531 994986410 788464306 919878541 476444919 902424193 565455821 988821775 590865034 852391180 327479562 434032206 284856792 332972781 415053050 946445267 382532923 692872575 474795963 685840535 744797892 888511903 14277879 187788260 403104478 888572728 765054151 874665193 75817608 240337303 132602521 855694060 866433468 866802081 342107358 371121660 294730565 633234989 213508559 652590339 593374949 975093669 938505402 972355737 721473345 775090107 731646212 955402584 564889198 711748120 703052325 892399356 473986667 720406641 759860591 871431339 678112559 870646890 382889873 530324299 280793840 328778736 196850769 547944331 723143051 849126192 939193930 995239911 336192772 975459914 964437272 991692248 751792323 819858348 768791513 780695093 284551939 350088525 960212235 993367267 666528280 893996547 188488967 974836375 810372552 947524750 104228097 388096207 7540307 308467620 164083171 786322791 798995073 952505507 931063359 979616598 868387626 950240654 4074342 310183631 195951847 361082565 939418526 943665470 711085412 745662065 351934411 588279291 306939107 457216323 998922620 999478219 109670731 948956468 817130402 883920381 39547631 386047048 904277113 919280745 607627774 892009239 128632283 793510355 325203178 766606986 157155132 160927034 297466900 349137520 779509472 952718777 142046208 276593098 956804582 960252556 769955708 795907057 644850282 834710820 202669624 674795203 969575069 997854456 204205390 752799667 992052964 995246467 378826939 651762812 882748786 973263307 465762525 927710936 720783551 918414366 721397515 954834153 581730152 748353253 67947722 188023857 513311678 679671184 582157722 697538118 793909530 907849106 30626055 69808311 658554051 661057738 378083235 750584567 877974283 969288705 886552310 999833286 854630183 882482595 994228058 994413332 328324678 604457974 990130827 998347991 999613283 999780676 630206842 768155055 570368084 825484137 344835040 744933444 760903019 885390473 600123847 692257605 644322869 879277313 546708065 620896554 896418408 962736391 460039345 774698589 421093322 445727733 633584280 743583707 500792103 967211247 359993710 915104699 990729086 994068983 484288561 605815300 877620491 948971467 969568362 995953862 270117928 855910164 738733422 808869222 914390719 937494752 648689285 656258613 269313378 709853587 382714274 481974003 247936473 433221827 779407817 958002980 300747419 957023675 69648386 317984338 186219658 405314029 228559446 822027084 407588019 896549682 351000129 598194573 199307483 243011828 288132455 826463833 365581400 601453189 248625906 300600205 339839762 527763821 807183839 889082771 673455414 988785941 852851130 969836920 272252698 610214830 430551965 855720607 949229534 991490457 67597217 751240205 613348339 701985789 845591362 999700494 960477369 994541302 998305777 998858034 625511885 938894748 127056195 618324356 849297843 913587122 157547502 605753254 133813061 981900518 689182280 958090490 943507830 948900915 486369337 561019466 522650507 961852799 822114404 985669264 119086765 703625748 84526621 402769901 941706185 942994612 116517385 330564253 402038774 827752250 267051125 956313558 330757222 445870407 697173185 949024766 396208714 496626530 687736994 999283754 132111916 231963279 552784097 831049938 689209123 871529444 799446697 939602893 271738312 429252089 809228408 901071175 143354083 331773807 576182526 678540431 205290814 578535231 53319743 442921705 966753533 966962824 505261465 533226919 451221114 931651048 589581045 724483096 715126911 836802054 44966149 176637351 536848553 542600376 341551769 420927163 666137239 977882343 192770385 540090381 413780888 873816836 990852866 997580719 30739999 101441062 505051722 769139757 357643237 685281806 575464413 625409863 608882022 952778304 705886980 884772774 658908849 927741901 510166357 976933233 308127464 920911366 223639181 716721396 528408632 682050461 253213294 356754251 35600168 606916136 977484649 985734995 968009246 981891269 894701781 929909249 346578656 463267486 824908304 945765925 629045721 765729166 600095620 870792070 799716878 930768843 481518438 783230382 844149676 965906646 90065797 359347412 246739893 797252362 879444217 945558698 975951154 976538926 488621039 782932218 51283267 646109755 913405689 984925760 254993017 954643932 841744922 845390172 790248099 963961092 61612512 650267443 263323516 279208033 89703765 249009532 487662455 724757494 426059472 997043410 719618276 723213472 909224010 980701879 499911615 937770404 463493243 793982097 136845680 846827390 46561885 910276001 226148516 273146233 614343485 797705093 828936325 991510984 87216473 926422648 730366406 768244617 713918436 741898231 413906219 442073851 204019502 370628523 667400601 761965342 810038613 811805600 832129480 893402656 629592026 701048787 415140328 760274604 483066206 707292514 641926793 766984649 424198197 922885152 233259439 516546405 918158329 931803985 329128859 792785864 901203849 999396533 345076222 518541508 575654569 724397546 941197307 943066106 517860061 741739256 420532522 455036381 937900118 980294831 599794301 959254961 468394754 978208092 525162370 598162880 970130867 979441936 721765990 722869726 790598097 824781251 995583960 998050333 626449496 682245628 478014235 962957156 564933139 982438781 529882068 773320551 767612235 902549568 55502705 519480977 203316691 362989423 456620887 653406065 158309617 961368008 406840960 773861741 140546423 316671793 784008343 927752718 640359177 969650112 349253255 463323170 466369784 624950610 418956356 852437232 335145020 492854449 607472287 618787823 353324261 918693142 107760937 830599771 98840162 748321987 693594633 818754278 133985499 640749197 684430897 964161868 970427151 982022551 984231860 990756300 76685024 908770746 183484817 959514201 943500337 984716967 210226820 312859319 315064075 951737304 7249471 261659453 165170610 267660973 573153171 746144922 740225579 877471823 352859681 625625824 286861421 518462077 467322101 605877742 256784686 462358732 824722069 890690658 477553835 835833562 285356505 865033111 355757165 391379351 121541108 911409901 565027506 928766998 757072571 793472577 84796597 946919516 143235656 163317221 884358046 888494413 923498495 944377066 124173012 494430542 846621050 987011154 413347264 771728823 10523006 970400845 740770939 955065164 686341517 929037453 319099363 623357403 324821656 864762796 67625080 543609042 811365829 940223699 984369698 999107679 348487873 995648050 250947882 281810919 744855643 956260616 171355490 647619148 773258645 978834564 524879835 623319102 85550599 712886921 505298737 998814886 672036351 738012943 470157286 519069148 668837248 707917520 130114990 747286797 518796782 886174248 616558420 802549711 512709276 822832905 747558812 866326436 944480769 997219274 599252194 727594816 490078844 687165773 334961166 712930693 91593192 624247678 59514403 959469088 367357915 643933957 35144811 992660645 74711117 639837629 577208283 629152527 19823050 959310733 157123089 603624453 128409519 417757129 599048059 796038595 240812123 912834096 413269479 506000671 659395543 715795845 746498511 996447606 735642415 819964851 52068134 977968180 862044785 963215054 865363815 887574276 560025882 928861877 131975618 634891666 97686366 420224118 786565385 898656446 188135353 680576084 818985059 852119967 759846986 875212946 492327417 743522143 47703384 72173297 264081478 838011319 413898462 454197970 411346589 791534237 855030971 972540473 486098862 998382001 389103333 925782873 973634853 992869696 597685359 676668129 745661202 819035173 171607573 701991852 238616872 896574273 179740877 924503320 160880798 766314571 80349162 602719952 335936500 581540907 368589633 806682572 986848728 988705078 878421304 965244125 563142870 675008137 765109283 927397127 79489447 246173200 876183661 923714305 328419458 779279374 860991915 969834229 718010039 819789638 177389009 679622159 601451027 826282550 270149749 976612475 557478778 683947651 433946695 899231746 540539458 893837588 94203602 805110839 720192881 819225617 678695427 805322701 314030768 432235655 481239297 483533873 152145287 430601017 392075325 692764368 483334691 963396524 418715777 815685225 628503932 677083224 315292951 972974310 290281991 994086340 521607965 792518142 222078172 792848768 603063565 652938267 452782152 618886405 978306571 998663592 61049916 637464269 840057357 974006078 413739602 424978719 10448699 283238987 150629198 722073422 10418627 95130467 305529200 305544260 93544565 140366944 740736098 919663399 534834454 825887581 272864890 721740197 511793308 942979055 712491045 812664986 596214715 737907459 757530112 966659884 803178150 817746430 903284310 986228012 958229968 992289700 852871967 894606382 838381537 884794361 947526840 999728114 599321022 660105925 439073564 873281487 604391818 682248087 822777307 936897228 478873958 490521616 880326516 945534922 533651528 835941787 53416521 619651968 725335967 805881245 850159605 917723773 840063729 905037116 223484308 958199479 987072540 990475626 9032904 78026090 68032474 767377998 462081046 770502885 332529312 730181847 829818759 918572567 14576734 587182348 581146993 653780826 900684737 921234687 70908646 150957757 423184621 610078021 79669888 104899290 504687147 733749252 65755006 590272878 410159785 440886051 399112193 730395845 505548025 577209761 860174532 880774765 416813213 796645707 288497079 386611443 639665730 829450554 238870081 728753679 413733928 613604467 254227801 682768511 314718299 899845790 641133354 737428062 950672681 957653005 760696059 964280091 404192379 916312040 336603069 343149202 841966492 847624919 607689027 982498373 694879948 726836425 441389051 672882315 315520652 646754584 230402747 647231721 83333904 230845896 202892953 725350236 134387101 654192408 342978938 629807728 499236737 618793781 509214576 584653040 515951478 520967303 927127997 936569007 442015510 713578661 268980556 301894501 635251909 900142674 503506052 852286548 93899805 227739913 974171003 998004161 851012667 926903474 950573520 995303361 815608275 953125907 586446085 595504765 822210899 863582064 786969735 806685288 71813 626349130 255267612 921514453 873876883 906476482 899151207 973747499 784569294 996893121 74372687 467928612 581100742 673696515 434447335 886874840 893450454 938980254 412312691 880830211 640723051 783779478 558058833 984579308 542891377 727779690 761807455 944816618 226418318 603106149 715131299 850216278 358185511 815787188 545230977 979064374 568061143 867606021 945692842 962565940 868421581 999882453 342995811 678219568 375223747 444617277 831498314 951328931 447812687 702271482 744864696 859963631 402972801 956637295 721386648 947507153 378185048 722608712 649371937 827693016 914181181 933034367 598822075 880253108 114116655 299340029 513176509 663311585 928463606 998246153 893913361 964381219 725564104 879314337 49206071 182235582 411315132 727527539 189888872 987333734 651359143 856462946 277998290 704153365 473969628 783830718 418138981 956699452 942340578 985821786 860138086 901886830 346759614 758765257 490261599 887307677 832783821 940654710 407997139 410605578 482974806 924737086 912357745 928624420 291631116 782862224 281148190 400090775 561088615 994697373 577498494 830291018 950222825 960768211 708227366 921305030 891055574 910491751 835030668 883053168 593773583 929408833 654306899 797585056 464022431 504419630 860385093 950386978 502618994 776920685 196052911 942487851 597455329 995947803 235050148 341780959 597262225 800327478 341349634 573378731 428229584 579552476 727511225 828606483 290949225 639804556 137766244 926811666 152445241 554797947 401523402 627211805 442453015 742278393 209076361 537228020 161684930 422739606 271957773 632688233 951663092 969175943 363073294 662372028 103382926 755495664 531358264 772780255 643077551 969356534 923598179 970429182 105032440 864517293 639245116 694164825 670668126 892430293 625435829 919979290 741368314 805775383 377886082 955541814 132601382 838343444 873163147 945089723 715135007 730814807 518235676 849261820 554524418 924760425 769970625 852452095 347372703 600502520 2580545 21383779 566207170 765204460 973945292 976001580 204240558 561898932 48301977 483504971 935861640 985306860 2902754 700899627 976485064 978128616 761243830 977096911 100191627 915100402 190743113 758516493 556403517 572856349 546272705 995854103 629195048 817445531 870558056 928509031 740601995 747726307 724044352 965515853 194423432 531031584 532054016 917207565 731614667 745017536 26596363 913438919 980817459 999738944 861243365 988608371 941523196 996973011 550632899 836035554 437641651 913737703 959297333 998504662 869993797 892493355 210008547 949476307 515589273 725586878 287498861 959165501 911156086 987257697 232062856 900399319 836303150 973767605 578418944 580192500 978479154 990828199 375447523 945269465 371425672 549218973 805788141 975186269 914764525 916647136 565676765 880589751 889261263 897353002 884268643 948408631 875579577 902435153 74993388 578804432 34740244 526642054 876314035 986148385 367107283 658546706 126199352 663102031 43060107 464439135 92661777 110143725 943339943 974138516 774139539 841219967 729387902 886234859 795085735 994211730 587890477 876986380 651598112 817371207 840935584 865745880 975684242 983777070 413435985 466456579 231324579 694365750 797258479 817167034 70479142 181071033 773056926 906906933 549534468 886394304 402645363 622856694 463295912 563651800 727274237 731470648 13005962 901326312 350041340 825170506 744733271 772578645 862419146 975611807 307119839 456698748 13406429 519769727 870803176 880057028 756100222 857858449 373961863 680321379 601426983 784183534 506898092 950575008 947421803 978438578 448775059 648067324 486712962 801027849 256668694 713015604 868068108 910267598 807689551 889370459 224960719 550864609 576740381 826680146 443023912 740930028 384709009 739415360 217564832 429211217 906768182 970919795 646963135 797696680 246251645 912422210 13217209 308647218 677131443 770298780 991182311 999772936 933053049 946026681 262010273 978396891 823503131 867801989 281323566 537100355 166738990 644773928 610152626 782452844 215389144 521030724 474946950 618216130 197567700 699834862 716035438 767449795 490956321 969542876 118384810 181286386 391099490 744199871 758869220 996536191 93282962 452237447 106550685 368454288 87967818 435251552 179489668 385221260 83476608 735188866 110731968 395336560 693556257 851936369 252870219 308499084 1622107 756811203 754463054 940785757 992023600 993063920 345984829 364321247 672073616 825049029 288075630 400584399 701664196 714017386 594183310 996438246 917804129 947608175 265559665 328677078 498704652 904316931 703669901 792876300 508493679 590240937 643938677 965959890 659743974 977486519 152633603 629126678 889295904 927099369 267037864 899657617 145697344 277980144 944132574 953669218 189070172 608275495 833732031 868783167 946714507 948925859 980673208 988827237 858948266 887529903 644490885 698537605 731660406 964704869 262361747 496376939 842460659 854262019 399015598 637830019 864743091 998370188 541974761 561784648 378197249 420824827 911808904 954378359 442623554 653310240 859172746 942594902 332885874 405633554 271948837 600524069 694169143 853401057 65409081 365762717 566465336 632178174 853954459 970834156 504769647 887355144 553599614 972201523 64317000 665538491 295759235 485510239 579917486 720463528 126911932 691999560 332695063 823787064 919342536 992197745 865317800 903698244 543324492 927154966 602316176 796009895 15092109 690285298 95152775 285303860 711968117 988391703 838074355 858483090 903799764 991039012 734926697 949528084 816876621 911048472 778551944 790558936 764556578 983895747 457040448 746540327 123287924 131191907 473448418 945999493 243749722 801230551 268109298 471980357 762707689 853997020 552617440 864146310 835192123 871200765 189979640 222038111 811289674 991145668 65775894 917822625 179816547 916871253 12956265 321366886 804807050 904296971 816325776 887305655 495612056 630877762 116427598 363895115 908155919 998120319 613256960 660102396 802263719 840551796 69657229 723825942 162289337 232678848 463523981 869255915 463908477 791361450 146219658 821610295 427504667 639896729 182304615 959486612 873403938 887180836 266496238 946081363 657196888 887640918 589412246 951192824 822766388 956444866 280325492 351435645 525925252 534041338 635106581 987061712 266936637 523276762 439275318 468214715 371065125 688805571 100231058 654114953 776757605 866341962 926240414 993657005 745281635 783559412 129699087 621666198 526179003 936455963 291430217 864273511 959325722 962202147 247436083 502698662 533857403 675961646 69460324 804603973 859865076 925125444 231310210 933727452 281035473 352770827 810949540 976659324 920043116 999617220 255450319 288810926 736702437 801959704 122648914 734612098 624218651 878092129 733149790 875349723 86914004 401128809 148439922 462818371 346285487 606645057 585235474 955158139 971840965 972962421 434119134 949581639 48619819 955572119 77687181 193670713 546310641 571426366 461520062 617314004 347517811 972483303 180394475 953271994 963794823 981586859 737462324 823503213 376599999 669683681 854092370 968664673 601467853 621517252 800334539 991736069 93585150 752994156 414918779 840655701 478503584 602750175 447910242 545359179 90530307 363706163 38724307 235581856 701353979 752607610 553574807 838259246 964845567 966711894 857566021 885456301 721372669 748399499 103069801 760480659 867864797 958859814 556209164 964824461 856298416 951649547 532299415 720099350 66115737 992099787 970596670 990798363 837879303 846205636 479325132 672079531 582305014 582452695 785148624 956058150 843677662 917103472 978205680 983315517 620144590 645408527 859438018 937617540 132867579 511960809 243452497 579467011 611615216 753630916 200568373 797409353 109046343 569592947 866718549 874738663 781009225 793982210 305541966 389874880 339414111 585877742 981178073 981467882 102360585 208801078 864247432 868121871 366363677 514711299 649908459 699584676 401782347 796239314 49867665 382207393 625635836 981868691 399891850 609470658 97972614 663883640 638460106 776930226 746690690 978465178 999088713 999978600 585505920 763390113 730065849 947440025 74026740 278785699 474753708 666228740 309106409 756484531 221947109 453898983 717528013 980652404 59483090 519505222 570672228 968962290 254009916 526689197 258266075 539549022 984243210 993519156 414614872 904284437 829472798 965576562 196432914 598527009 523617596 745973289 623836472 936689410 240041550 704549903 863596658 996962545 207434041 352131857 872253496 919805057 745044412 893968280 762390773 855513438 207825757 524689335 900015416 933998044 22658883 765904378 204820046 524621884 416874575 988103223 604365382 879726027 926601621 946971121 946613294 992557528 290403121 704503907 366643530 748015668 994215710 996182675 389098318 903954721 62700257 692244784 980155861 989036009 614477478 700304421 944607000 973116709 132668082 970726017 221103400 993537102 72308106 173881690 711064102 976082568 45063782 269913150 486219511 862760942 766048523 769980905 915757695 996729840 263854218 822073183 51619450 837374732 663177212 699696544 343438273 992802645 12523036 223515616 746910472 908826087 779900029 914479341 102657437 466214935 805231023 982492820 391198172 804774268 777338648 823715856 363584601 767166100 318650118 918287302 560931381 842784272 376098969 929057001 322484479 801519756 890826094 896924734 765103394 853031455 389690413 646320452 815625896 865195194 65871457 404653770 434781917 737113950 994225738 999882575 928646544 990761885 256540026 567770485 531011553 956729636 719285893 868316857 610509964 696074429 960620083 964363569 535837944 733513923 116570716 312660083 329931306 411215370 397832837 982778634 386036313 909285535 806045843 982135346 695178667 927261474 57805416 390796465 779939771 825855570 477388430 739911288 847508363 990265438 721541403 946660743 135732309 303301384 79765605 722973762 619446338 675042029 63353257 204466724 709243866 765700749 392123213 566777630 357634977 753280086 101391711 359739650 316536686 920605892 225763983 461984408 740195677 942960187 602944402 869911303 492607325 927234139 342190434 688707487 76336180 322845636 886428826 903319941 170378505 897710650 797873711 951352292 780716681 894663560 80870307 102238468 120438504 634213619 116953227 386085135 799629679 970493366 108017940 134114629 176808054 985750838 88822690 639472014 342901219 390833516 178001373 927194777 524302708 824773821 865160795 981607554 584493623 866382202 465134121 640935448 216148155 878218828 256503213 742626623 640255580 642116605 252275038 394198339 528035024 899686057 937627039 959793317 185729256 424105933 543904796 755841193 814587109 841552016 137028500 702306135 475799436 625588152 916370301 935831075 355688861 970355299 607321363 667328732 844908720 912840136 575698599 651504554 153200832 847498876 914699176 927269010 334517654 591221309 268601123 676627442 639454262 746585599 552352135 970418508 537786726 621470911 913233310 997713663 465618173 538677248 287778337 349278606 869237749 996670365 804508336 841090428 576392265 793136614 123265543 846300808 327425941 795608727 497716607 789155576 907277036 933556729 245693060 864476873 919370067 957727588 925593868 945573034 419123236 910039414 903392789 966494828 607993013 661953640 500121199 589642650 813312249 867983344 726125008 872569861 355663177 689194529 744548177 938619570 819152125 837464156 616766500 959970952 400898474 944003825 837006161 874388971 599482364 942950272 743988674 882547203 662378046 904141527 703030008 966544796 772273612 964096896 50613820 975643059 682782139 703583663 90085543 912893285 858437692 864259633 918496530 957147640 132839210 762352338 164265614 433084058 494401325 500381466 965251739 992571719 759839152 908747988 261591523 427156557 977425222 979032388 17404444 921375602 987245125 997957392 442548548 771128407 32005938 883862052 544417323 653961120 333830461 421831437 415951676 743310633 416200712 743368638 822946693 830951162 729162160 882526952 287759394 469811107 620242444 738147201 132717981 572767039 835332398 990986019 621329914 633272551 751798736 907291646 986603485 998834635 476754201 858197455 471615460 667463341 635136693 671438361 641818334 656925137 271795515 920080202 2247404 826053161 876304028 988695883 936949856 974084272 572608567 704603718 342593953 951468005 713305284 880392507 28014971 291404336 740015629 787475010 412412866 631349437 821289271 898734112 143913560 237398618 294356407 347672928 232647755 271937099 893394536 901789428 315641213 671142082 691544198 904673717 734643815 845763227 887167592 998193250 476735499 862407328 169319487 898575212 531248151 553737241 345064593 449779580 413031597 463634257 420525490 983886032 931846696 947358272 130012231 286681052 954880140 988893647 476110989 876937628 686654821 853094587 527995068 529354416 764546504 924568853 454439762 670454965 139619061 228283085 432846867 713816681 210717405 604647006 140350028 661200178 89661155 282026030 553362248 561403186 798922958 881682206 372403879 949921189 193509499 376787954 582369819 940986343 677378672 689118625 724287770 931997560 905849598 987239593 528872046 742656115 18878026 640900757 719349977 994184120 392005271 976844629 426140963 655037935 417347947 459820513 835750441 871487063 513141158 728643278 985088399 987143927 505097954 909143368 16917970 637981915 309470616 429469821 245785609 381976610 492315995 943965070 29887109 346246397 192534081 700750640 580030022 833748086 972401716 978832848 579177339 910199391 722413346 886548810 634163658 932287907 873286331 987939887 454812417 748567321 562868467 680767837 757880590 804579517 678438947 702589948 395833063 477141791 306618240 779786875 748538295 864938400 610116906 646953676 154572907 616131932 62300007 589506243 261371285 392586986 856867321 869337997 706656405 866374422 821901998 978768911 38924065 724568425 78438370 717984018 238910877 659620680 663580293 983342983 302939614 777285241 494217308 527826640 675198761 774852458 714856098 718180385 89064492 281716792 411856528 998533571 526484478 933347628 170838342 828487693 593207878 714374512 151188518 236182485 782575454 880711723 124324347 282765219 545148111 748888217 651333015 742878888 403874960 626428716 916966889 983641620 566798268 739149297 987105896 996626457 223927349 572472631 898699702 931905826 542811527 828436845 754311207 800484883 727946277 937126324 817717303 844427832 328787098 574442137 665512737 842317201 380255350 736365054 378284972 830785828 457014239 867317869 904473205 954907598 384944686 742243536 512474917 935434125 313757835 402179033 125311786 607291094 767203938 799059273 128154827 880265210 356309951 448787800 763265674 992574561 587596082 730529470 534880910 685039430 187864697 257182596 890221441 902975802 567884558 824132972 88717957 206116784 847040993 995550838 489474924 697486612 955347244 967065961 837113783 947754488 828410632 935488467 866869393 890165853 290295522 631381996 353485889 979336930 54298235 304400524 34060646 363429711 832567664 866223886 511615476 886231796 465501118 764169874 128345598 644826246 422780615 572341113 255043809 748639650 857865922 934045151 143235212 341745611 963265726 976322391 672292756 746541270 913125885 965100373 821030951 832151723 747991151 829055132 554026076 800579078 930861110 994507164 394656086 548218824 631837428 925029605 129245848 342591060 467999071 879813749 18204912 90290778 40614577 125610189 56332789 697289638 758156429 868126759 413935790 454685160 793466752 881233323 538920308 748920033 215810875 393355234 981029956 996298329 797855578 946362674 324400890 519353401 910548675 920734078 223472839 622307536 688636506 922625995 371661568 864848627 386223430 413084122 948441258 961859495 260922388 930088427 501117564 683728626 792625208 826293660 456190647 975749258 896093846 981210999 721884846 894088151 663907965 767138499 52742279 276387729 967310480 979356074 658391158 920737804 609025478 825037675 830678159 900149994 101899979 160569753 945985709 954244870 819489053 905157795 667030740 961401665 547148882 640939108 526549335 528218830 3129393 309387023 810270706 920339711 266200097 967082610 699399152 867269515 158811828 743194304 39616396 247497383 462960974 786548112 467702218 469360703 701712317 994117022 627288978 657996393 316106815 344135268 875084363 956618460 632007132 843294846 849228310 967389021 970769172 972071311 791295889 830330683 149147444 751111855 653083533 694487350 312199941 787546654 598220488 640100050 845371290 858176668 383447150 545607194 151537600 776859574 112068881 285870412 995409404 998220685 276751966 791528654 692942222 925797241 462300747 751465595 171385640 493695637 300894149 564878332 729402921 862307743 520070321 846029701 744558037 841758246 2919086 138876780 565166680 576131899 286645724 848360987 469536501 593735273 122230008 811297625 844166969 909076476 185719660 744077357 934285567 963021761 97428717 672366832 929821843 982400606 923779693 926625011 556403713 836499096 164369019 956230156 921710070 957887277 856299885 898038534 928665541 988269855 367205438 810221332 487395190 700912245 616116630 816065314 225515965 674236683 639664066 708779002 461541951 885828573 394879563 891340326 246208835 370669238 875929498 981199158 956168263 982835922 912285675 941305922 706893828 932224760 55125387 978753327 148943371 560110467 923663036 930970898 216781949 902911046 131574127 326143987 316717186 924683222 265978636 327672602 488722583 601420919 225761245 696462962 103809260 252927379 508561578 571425225 656786295 843968379 362779408 525448824 564426275 722051418 773255849 836486053 852551374 872709119 850300344 905714566 374474581 717603253 538957174 973407799 667665294 933152686 886214236 961972274 689927570 851332099 228604454 247509742 500196007 698016169 812298024 835779798 729681924 999516105 316340032 896781576 382021490 846914369 920585510 993624016 887739929 904437940 438615872 860355134 118314796 397382531 722886311 761191886 363905264 543602193 893839807 909689026 802287982 943862985 445326440 974252083 256718595 670613154 169182920 625594807 929157595 982047714 152604627 360158939 986985556 993874084 541004722 553035233 578532964 735737836 772929875 884020236 779667402 959063447 610420777 724835938 272688656 486680507 922355137 945996937 412551479 629997914 956702008 989791614 544189891 702461468 457764400 498765622 92512008 920365610 685697644 717159047 187219154 603533533 607630676 750535150 728205388 799755538 877122675 979445793 223879430 244741781 712252226 923469291 889609461 890345028 729120341 985856434 552577598 587208830 273678981 928066584 168403895 438044795 298150231 851840071 120707963 556441943 776074201 793622301 670711850 801943749 980644075 981240068 110659997 599553849 319891633 919994053 330919489 660159407 558207211 729257670 451773212 959921989 183417771 726395598 603784822 744063912 923058668 949474938 477525509 967091488 591916381 623337641 829431517 888396943 741344546 979778824 397439359 536360963 572569004 615245492 839651082 970963745 635564084 718823056 530124716 782319033 652555353 912329553 588851808 735842219 642588673 757432583 98231029 302030751 435206007 452579682 878170059 989434233 189506612 582212393 670067395 731796376 159065118 707304412 201303253 577209276 832994202 851177159 698448036 975854150 602593752 655658227 940101468 963862867 41298215 254734303 505657629 643069239 471688454 674028876 554775323 694925153 231173030 997735722 945983081 971097027 603545259 669351284 745741141 956499065 153866383 239294023 934481327 973358762 992146975 997188803 227718192 729350975 489610247 704595596 802665193 893539300 175376924 519613301 202897132 748645394 771517267 810648212 334155384 421177187 417431755 623765216 590399881 612107091 197784719 696584274 357867881 543676700 592047555 855542725 839429113 893067581 803423766 922718619 659056438 942290332 335676811 800739923 3715418 88175204 852453009 881190354 671881328 810544541 509598078 527272681 754606698 769508942 914138413 962480290 140828089 535636969 479524259 615300258 395320601 968239447 894511368 996052526 210787182 781659383 931059110 945550828 752765023 789911657 703667030 817089872 414632055 822563735 28466529 851423103 24191486 743201978 90123695 752828331 70433165 626102057 962411039 968460327 529213498 860040871 113480972 398856326 602361463 997121112 138252517 985087331 437330009 812285766 644518105 994943697 666621775 939361148 579877441 996395039 128981122 911526266 545153075 842270440 523906636 765270651 682632245 889886174 154274345 984470286 687716471 734061986 40302369 227105421 71854683 253551338 845808175 878287444 620568159 939056255 147695768 336488053 726591930 845297569 471570929 701549101 139431529 273509726 540042877 708834766 667931815 865357568 410138149 456222220 906301959 929663041 798897605 927293659 865840750 954185800 545233010 707311731 496947829 676611750 308954965 344889744 14962866 891790220 239933383 949828064 426209845 581691091 641837377 845873930 542571174 588584948 525037958 978527574 404898240 574890745 809990481 942936036 375857402 552608194 760241991 802140596 267749051 636378955 65629804 716140265 499219404 969037311 866299793 943432219 382884365 925180327 590536387 761241845 93550545 535675446 879028481 936095629 868293471 970153244 655707091 740497355 799945178 965566808 838886246 857952502 872157738 909142966 764067702 829874241 130320079 147434499 31063467 174522478 26485904 560527660 617124372 659393772 436797507 572279070 456089981 742850426 989235724 997584022 807626025 952731106 479841695 682982565 774513433 979539671 523836797 690350763 299027113 767659282 332807299 812926657 493912677 619116271 225117810 943471480 568046007 935179589 795289107 937780875 282887314 759461340 865966203 920670697 483215366 758026508 718364076 903305618 291796605 674633114 645815456 852550294 832288847 864113070 331207991 708948369 396190080 818290939 694866804 869807243 359122177 528699864 912870730 962440768 556677874 863767469 11396495 960906022 85643476 751852036 991509572 996120114 673134074 733519225 540237537 681778050 38558329 780864379 228139056 795144433 489535935 643925810 210159022 796058546 596211551 818171396 513151864 525472717 816411295 843909405 490812379 873737104 983729688 985314813 594288247 986489133 480818557 838317632 897324834 935978505 156551922 796490632 471212216 849528625 251892075 353004731 693149614 720913943 603890164 767122456 795380751 973565354 827181564 905375734 612543619 639375462 970952825 987893171 170394499 373216742 226222208 877376941 838008081 934907936 722106087 899273981 123064165 801694433 33536587 377482645 669440435 784010241 647219648 689004954 494150789 833518849 561301889 631785115 249734561 616648469 114370507 165769615 692801311 989694895 332491508 694630156 565370231 804979102 994134715 996096963 414060781 823983197 535736598 910529572 402078209 678339005 440873419 648412219 322267389 854952638 611640139 915046461 19696017 227157288 593107273 618008414 248790188 672131011 999328286 999903765 719993976 918032636 771608449 970477047 346492472 766263789 197511233 741124753 339977131 782678419 960337535 960387766 357523713 580159411 422031497 855703138 621250595 758343859 277975419 678839766 940153710 968027724 190674940 606720091 790184852 875812496 596273796 601561765 331528027 787927984 422065968 501913543 711258506 805964975 808462172 857453022 577182304 999982194 984133302 985724772 548840766 900751637 876033286 998196490 988306304 995161371 62758096 329279091 265915923 743911690 467740697 850687116 21360228 519701782 607900329 824024521 332190275 880191069 561161901 858799312 862714967 866024096 101076448 385607490 624384142 912038274 263908597 546925275 766270758 784906549 942428710 948892488 12953280 392114523 72119682 880362437 929013618 971874578 211591115 806456434 42321376 323880080 872581395 934510053 95217517 344381741 666837542 784325392 841658082 848151120 889685409 969124216 239071658 300119270 878961727 963395254 204237346 917733172 94316254 891114935 875138382 943147459 509789226 971243720 246843703 261277124 640955419 834138120 760378787 815774634 250764098 686869042 492904659 888636709 908555300 976639682 259650139 389492065 619404742 977660514 323487556 627297663 108318275 990817056 648825129 701534577 297595904 826349670 846175071 895440386 302921164 791378990 508475362 591871735 34105784 543161897 736452927 789997537 938563924 976494615 805551229 814326616 380482151 393731475 548362108 832766322 338051662 905870514 185406722 797293403 360466234 827541033 598943220 725581279 601927916 917451279 115586025 543112731 759507808 944951503 880981332 898066455 291600344 613275171 972736035 999399539 547791915 985873365 196416735 665635648 449523381 509421708 492293041 890536856 589641316 728459981 449954701 877148794 958723249 984216925 543257767 853290094 566090015 808612480 470691558 784823779 772884462 812432674 64158196 98801540 62571306 280879528 336959476 599243025 423012521 488468005 509252333 622039638 191046292 765953949 88888498 344505634 529841525 548928407 375677213 879477537 588097042 931578129 768625606 981576102 489857007 948159532 359812777 860911270 42546131 649707074 490348185 591072544 774157223 822960134 825555011 944580217 543235750 575395726 698187899 990948055 657613038 944767654 674947752 763478144 400998488 556651093 526918153 551618294 704790911 955639869 587789371 883333825 810527793 856229553 285495084 945658148 291242483 725946829 708367461 886975830 438895255 804457521 873800847 883764396 732727697 784493067 359038082 976221004 54395189 828481719 782569940 882606886 154265734 155742628 854426655 914292731 418204947 574707115 4371352 752732187 449742292 617933654 644376679 852653008 892700569 990665393 1951465 560454147 435684029 801174684 235600639 343843330 756804172 794502086 212912460 683148228 537017236 843713394 114163820 468353256 633538741 705310462 724182441 903197462 925099134 965306300 951466784 961382000 555906803 886680516 676482466 985112967 51735727 152419455 525386767 575714430 894233693 897139397 615928895 932715142 107034986 295189690 494799753 939322881 583000281 916838405 926122953 949729895 785289583 887170831 743887289 758016668 629692810 752550425 701724319 930924021 130033315 529978415 564139099 848013172 7618538 903855457 80176208 353502961 804151253 885080976 69647901 271781979 871057703 954404388 417492896 761755888 633788387 803773263 318261165 983486508 928358222 962391170 737929767 950052349 527732196 784681621 239013038 505129452 570594839 728399408 365709799 935482352 667508112 870499034 380521347 723095262 51956253 625835137 375692140 715593470 847519832 894882672 249136529 737854724 877747090 881945522 504674838 919924037 239702445 430659345 58719500 289824941 214434695 804857227 756946818 879339500 790255568 985452926 583938383 638041845 251904487 848481240 114521151 567097323 282692061 871548491 809028311 848844091 447797959 466786932 344833530 628137458 702455532 983826032 375311122 544191254 777733277 987489199 350564873 530617254 954498847 988309778 141088857 376353651 936150462 964109071 869891290 894132898 415102926 768338519 621887984 974458133 552742903 666160727 433452044 846886551 566420175 882000968 425714609 684700898 719363356 848575273 204022036 787157408 466812766 789645615 781519177 907889506 955826384 966920476 363619843 530274398 675182574 904892530 444667940 827890100 992650960 995738503 59670372 823234971 560484201 891659716 58960150 570818801 515341313 833236574 745443803 783101045 966777714 978502706 399788815 490293875 953258161 996790932 634504282 704564928 13026813 936636594 11854650 393844174 625965249 861503150 873989353 964041820 313239167 798275993 171165646 238739310 160343691 584104176 124573879 618472706 857633824 992200125 169785929 843939930 356279792 657642779 896598815 922989563 715796688 725662502 383131563 713312268 966586681 992257580 185420656 339108203 772800753 956906728 186030365 804864559 946691394 979127522 495656644 857928266 560944430 655472714 630657945 842435721 95404089 695385692 561021376 690983084 564618549 997692682 480505832 888324616 222010780 303769177 748881455 857777308 74188964 249778907 301885117 585998007 941012495 978697409 793372470 976858737 342587946 585714251 423411241 528649577 596576711 616767538 58406989 381313419 785033806 792285245 855549178 878587355 504767586 872194182 913091126 997190789 75555991 782639972 471009987 711123663 491158606 651317475 205163639 976873869 508556842 609059948 209635067 642487954 764865414 820845066 953112655 976468401 434459665 629798179 936895592 990401720 753214245 810885545 513837417 904919022 630382118 682216365 129031399 437775260 895170792 925460703 351736550 909879962 840828632 972399045 671704754 998631711 802654670 930054393 11672934 162837089 386482297 867180367 268141857 585249388 271031866 826106431 133339561 978184021 78594287 233927688 306525364 763812355 151320976 380946972 58422466 843187350 391525274 895346560 937938264 972917142 491808311 950183977 40253067 742966868 435333484 536103837 160081861 281140857 775673038 794920133 131693651 222725446 956155967 990153191 762616879 806699745 555104303 988238542 927493010 956387080 955064614 999549779 703234918 783468800 470549431 625740888 921241268 933301054 205905497 368325237 792216179 981092787 797280947 826617112 663328381 718798405 385338576 925595975 392902378 422676995 594961445 715548107 254827946 342895575 480493839 849268721 57325657 803474948 754476058 785653623 688589801 980981776 448049659 846692736 176408341 870827405 529436264 823958177 284809960 579560877 680222219 709362990 668529302 668816588 317686713 787268591 734703051 934745181 957908127 973021356 813566489 918687490 177610162 957254498 210736884 591555916 172509346 359402106 650861148 900386835 567107372 862774223 574211058 691969365 877172032 878621181 462113982 673455508 753964927 844026916 77624361 567940272 480956406 798753785 497968568 722971747 587105582 798247894 256418138 605423422 44085489 100303888 223661920 836194474 932117153 951218116 376472427 945777580 123553198 481241608 535363687 821544588 492544878 946711309 804576803 926783042 582879213 608908847 525602097 878922131 447785432 869838825 384013116 901234694 31431951 167410957 997077946 997598930 875411671 979611865 155395094 223855156 678944827 831492720 548622800 670035136 418108668 827934949 379435774 834830850 245343288 934971161 861326181 863447985 829616134 854886151 829260297 893992977 42305824 261154322 715806953 758383997 864056864 901804205 906942648 956016037 105406613 712435709 526184929 999506030 928413279 985940285 445262988 851871133 305733919 685416252 495647223 622749836 505944078 795960111 235080803 627050404 271500198 594986481 942575405 967851930 244323718 626870530 812266675 829758724 742789646 978026054 903580047 947187965 514598420 794576016 257580625 630125056 669095870 907298426 633785884 770598244 527037440 745745267 612226635 788876192 333547421 900396557 466320526 856153119 482745080 802254910 158301703 793105700 381665272 435211106 300115208 513337912 230873453 319292085 887079171 978949483 442081059 465476732 37859017 747447084 587662491 793491399 929952258 990121651 47465308 902838949 764542353 945171911 277609861 992870546 203966191 615406519 96678318 104153648 320340257 973945961 572210194 719457770 754427196 881599041 109994949 643030650 462396710 659567839 932674528 957906678 647236638 693543228 732194520 859962183 571014658 931076681 935030438 988091076 564295346 801970182 341889237 356768843 718151930 962617797 294939660 889819704 624111000 660317434 300121646 939643664 128109989 264557541 339277965 507653541 89020940 180739757 112505281 343453644 892252550 939998523 731400473 982117515 637618915 813032097 138208239 847783294 313598174 721677107 301932254 775314600 345171312 415897225 677441116 775823415 350339017 455877506 590221749 739297630 950160138 978034174 148791796 265484317 44160872 122981724 595635709 957504715 515127225 830563479 346688842 836441493 763919888 903967737 286851494 790802164 627686392 687500918 477309758 567056453 196106509 229843558 756846455 756997887 946553304 995565139 854647868 893649437 457330877 518293849 34815269 84032158 863490938 890565603 358215515 796509891 854691849 864242750 781115572 996875769 352381442 892722994 375994533 583274971 879985641 963654852 604386284 913965968 877001753 994918943 59645610 804585004 858516600 986132720 237893393 545006041 244555116 696820331 488340594 690757765 993114505 993135935 117926163 611164232 266413685 682068578 302655735 606050784 242411855 398676636 665267444 721598090 49926277 858458984 316387790 419938205 608260985 819421417 436772809 508873056 991422137 994533010 160082997 189524297 616944230 914098487 712988664 800471129 76455020 857009139 864160566 985936982 586677366 771565381 168622798 453936780 432150850 890055294 381729234 589411258 210607531 652182402 23902430 704735308 208798457 813157091 464842419 760084205 395940709 721733338 633670010 896161633 629384808 740618852 465379846 874359620 88431653 798163546 490897329 663585967 307179066 352606530 317797027 632799483 161078792 177355690 958964520 985676155 469987494 572504228 395836450 644674916 162272655 779002129 331066029 889428220 720981247 973462250 267633162 553510961 60343070 398771345 889651999 975615530 944699821 991484139 343316234 543933279 736541208 745058146 567858769 839383233 716818395 936363993 194474825 740129267 211682171 654859496 200100667 409449135 563469781 583457003 687324068 940902636 523705726 697065117 425817124 788618300 69047011 319181035 754314191 865026971 549395305 626023019 418797967 571118928 145108877 360794215 683153645 774256251 285650365 610926871 399148513 450225786 21016706 683461852 194387024 710338552 990620045 990913839 741513050 793853438 158250491 575845229 307452472 571312894 326390316 946536529 608903123 845945239 319338802 770955696 693478352 847704128 191505835 786309598 72895179 940761435 411777906 447226120 791300650 948665244 545729152 843948163 869040101 943705587 609562070 825691645 209306848 461956838 909838089 939219918 390358425 672097896 793102172 830201712 14561018 413629903 650249515 734791075 791445528 913603253 921782656 967570201 160182781 532668892 887293409 911484969 1564236 907053077 203612201 330916398 442732216 656314815 854569882 992523001 363620923 560170509 244056047 519375219 745679448 898341097 256583693 260432629 569093840 919977511 339981485 607383440 355016373 752819978 586687322 650254295 890829944 912621452 881255775 883845057 362116284 774965851 171010818 269510575 694580894 995564216 213160850 615961339 221696039 689148281 445490716 802387000 202095182 931466159 360832395 382226098 215537825 648641391 876916578 999059875 30684331 416046167 568490873 647523442 117030326 906452407 783820727 807428372 136641797 430229649 992774624 999605991 719581956 825381276 872762361 938650634 819880121 894334611 346524259 668428492 499677581 844096318 440916876 623490392 376651527 638647107 899236192 916295076 666673571 693450549 417748628 536752648 803041310 843746859 62114350 392574897 892160574 987552712 456343122 978757165 697949140 747755971 981474454 988925954 753930612 973755471 571327394 890510926 97244821 731711559 307746508 612697865 197559008 378687240 579100985 701868102 810235456 940597850 724916322 911124706 614285899 824802173 178272821 922209705 1288221 397478532 552899860 606181369 937387822 990928197 694158285 778412084 640545966 663094234 840025957 899693310 726536006 991608505 984883027 985758189 623573011 746187726 905877050 928346729 313968502 470031879 105545903 770386885 129261612 342192731 443983262 665266235 38125343 282363250 289492755 752883189 864695988 929041158 451086032 978307684 704522393 957019509 129135910 137554236 640328022 807484382 957223663 968813309 901900575 929475906 549300490 590014471 695501087 794463696 285439371 653129550 464028368 894307878 758111802 830710716 894001477 930938477 317185115 960713843 336926788 557983228 181150347 772674544 376317111 768489411 790292616 980768714 452118671 981795021 952416748 991425413 317793045 506841858 488615738 721111316 664869408 882353717 233179265 424646032 995004385 996090694 10141392 931588043 762059137 858886669 929420151 946987170 946681037 959086096 173102420 795935282 45398668 449802772 288051866 343701246 849397811 938301668 612225449 648508603 968490740 972667727 393135220 543521824 625988803 971313262 537266556 785098611 221075987 388284818 339902360 860659095 24575247 208112321 214599229 721560507 561142878 949438862 876434017 942308135 771026666 995670351 823638767 864753872 939748871 994940436 442481937 482104239 590789858 785148249 819287411 938129756 105845779 217695774 961216758 971604514 722342515 924313332 858249066 864642577 854523773 901484635 825578791 964549349 155757444 810447837 693330666 944457120 366601808 891050935 779285730 910730624 527437519 565934816 468655776 562173190 722030159 890591034 548916401 549254091 785057239 887214180 416688534 624503494 253496572 723216713 699848618 745401476 296282935 986417152 213490760 809310500 126616601 976733748 541673918 925438954 410422699 862749770 109305987 691427117 771959608 800962707 511799859 563932266 24432166 328762905 554854954 581973257 64100129 772120622 97642073 106007038 103996641 273345592 750996278 829092172 556778529 969182770 327567089 575361454 67146403 183934244 951890331 957318567 51181590 216723874 793370088 992395659 465798168 774464182 656359950 867943379 282962255 641355601 708882089 754090091 996824095 997975296 527234632 757363184 473507496 870858732 447263992 914324497 748521708 962322535 506711344 597901793 163902856 615807940 958760961 985243369 698508985 790244782 446416655 760284304 149935010 244078507 945784576 987064169 623900234 840061298 291615844 473558045 105936513 895115609 261244923 733365034 848804726 990686192 651012956 936983220 827660699 887011558 111801420 192497970 401474958 442057019 593970774 992854608 799484928 878446945 217570037 263571036 227733722 392117804 376448482 524090633 525245033 555484558 894629061 943582916 723086276 753603506 877641837 943494923 331596273 745111646 180671939 970569057 755410389 759445256 749816881 876610999 2569639 463792059 165869347 382887544 932303203 940487517 413556993 875143614 5975396 262907190 503325736 697598088 795790603 836591131 991806754 999135704 768324566 931258297 57221864 626049295 456512504 488443012 427558833 441662608 654537158 735602577 344340290 855884780 302358954 981747947 106319153 541156357 239854192 575050265 727364605 845078056 704823818 948573321 781923974 861091598 272611531 908236507 206793656 682767246 542367156 596752671 66023007 153628540 926929978 975263008 86952565 779395584 216350595 417898631 891405615 896764417 632979666 930765159 782544363 935040090 318879264 347569260 574362247 958939288 548075490 900952434 577912804 825812165 456989669 565297159 305860681 593085853 68773070 965883804 148306623 501915228 5028025 457514264 209701311 816155974 450705663 545173796 331082502 819523523 746451103 884895054 347478827 469999219 766242597 804573767 484717763 877210018 599625428 889925640 108392495 737439684 559380629 966091109 620990551 763415842 769122818 795368082 64082015 69842312 780070697 811876308 647826368 901597124 483827346 680855294 863578551 882499565 739809962 747880208 608652333 632532811 275165558 336658611 934101139 952007210 562421299 796201690 539501831 606032161 416472505 726269350 176164761 822145008 344187666 378822350 884760513 907476236 443709488 701362124 647158641 692466633 388897100 803251972 438689116 884271004 509001154 932983334 532979304 620886457 908122509 956453106 339751895 517707091 276435722 640045011 78951557 307886024 863090268 943861502 467880607 981821491 459345760 634710468 207665201 234977914 271170822 353336161 484373126 982325538 925560010 986390747 167172470 309310795 520770645 724235659 865269169 979419623 411547151 915461798 929904859 940137825 529020787 620273847 239583778 738790029 535218912 856690261 427551731 972339864 517077551 794989688 508421737 575564232 301575746 869223016 736214006 990578206 806137081 808367033 16174654 583044996 405348171 889489491 234518231 664375588 882213888 951630099 751207688 828476393 681039754 723451299 988618564 990200536 364824365 488436942 736904627 838465902 658221892 758960223 985827839 987874287 98768524 160425676 579009961 718734366 871764545 962496840 874834791 945816721 630394030 725727741 607106063 646629800 717246152 759416490 84147315 694444619 281106011 527505920 975940541 977524243 407374771 473277889 37343248 831914947 324633810 951728365 912495321 942235598 630031978 775759065 204787441 639665547 305692547 354609820 887898944 931422509 602091888 984801273 551494239 935053225 118295586 402293642 226166603 827887229 902709768 933163367 964567393 969763778 371140714 746499453 537156085 969326731 110417247 684432301 666461568 717258721 623590174 790688040 459151782 941514720 314070912 562333318 734556381 929021602 983034293 991533653 450427728 854910002 817945959 968497409 710540042 946240305 177617625 759198550 424453890 801828903 133593465 470267950 840607810 894274223 736057865 956500593 38769545 485921792 111031505 409022683 427941641 793676744 381177371 490509518 523329517 555548956 144942397 389578117 141368905 980746718 724130985 744679230 370961102 738032581 163199240 357247157 456913305 969481799 2193638 466240693 56207443 590326973 113926775 900499405 587855765 630396542 204123364 383639790 303956732 335225086 935462993 944136618 449952546 780036659 338048795 984804547 5125716 931763417 591209171 803740319 718090932 981215118 5559395 351778870 975272397 990313754 737446478 752879788 589457484 801932695 256843660 409604527 55551380 816553278 926178852 942623495 144934614 499847210 357662936 399595726 606897323 651995366 548599896 651430502 624812391 695308200 527777676 992541427 198148513 665845881 103522366 368235703 427405166 572848926 48559489 775412502 906493786 947617826 662138698 888513299 511567416 879661404 324936474 898035128 804345151 853230935 610644685 792779745 399808626 830547714 758093149 835616232 825672703 966455089 404435634 425402201 675961939 864393731 958990621 966460628 159826333 730854296 856915500 932194697 703873749 882833934 239510313 652471807 817070977 984806255 441212886 711194936 691256790 742676216 628703586 928717012 407379075 612300290 598414326 662606460 452695953 706802399 607963834 963934916 590159594 650741381 440531118 486836846 450174920 681390776 858042811 959991512 523962991 916643991 459832450 681464172 553349893 571391189 368918445 577780786 293561575 303727448 52000792 178665180 541274164 570236783 337600350 959502511 919535255 974965472 270383203 606301147 315806936 951005038 173608192 305272329 695330974 949110618 204437584 630617391 644913685 701476504 916992877 995433919 786451012 889601496 668691293 740165722 502891718 738604673 193090141 992606900 21345384 790367620 926809111 927361910 379430616 427296868 162741903 203071524 872920265 899902867 651678767 773961397 980106527 993711557 41020868 618592775 769583378 816077203 211982712 336285811 510410008 938637902 277429239 598458805 880138912 954492691 221626781 585607057 443113810 641452173 407731372 924535026 46858151 405521610 949533019 994282459 805882391 921927527 568244290 637526232 789394872 954020867 793900581 868776820 104131135 411719797 205624210 957906773 309381128 872554654 62716621 623899833 691155290 901391539 293959289 555371672 264564170 383729185 465760287 926266787 381224313 767491631 812437564 856752483 742457308 931068677 767364670 789861269 15726574 91543224 491201364 927955569 69128196 724884018 651667234 835664702 143070921 876592460 772686722 779064051 740156459 993760860 924114750 973465871 804708225 876318494 708668097 812040679 298571897 915630363 474239258 929751091 542915019 616233567 753992647 884129368 249336340 388748138 379779994 622410358 481910226 918028872 383644436 955461159 472932916 896255823 346482436 864335336 974985622 980170169 413867350 751657890 348286652 994996367 738062328 758725955 669779629 974837627 539209368 684022321 194234672 689858436 362373045 769509041 80947397 442721070 975310729 998547351 709676410 895318327 155193079 203578738 300478672 682613195 820339546 974399178 619158221 688697512 331834748 518286990 602226958 638148433 330717135 476766988 854002736 860197620 435779945 845506216 412829705 520725569 545434506 976894514 619602786 943957228 472949063 892164400 670548772 755842284 254258478 738790296 602732464 936753177 894530958 934843789 536697168 696428491 557187270 879162490 696480004 700871314 501124058 530818946 764255758 925259851 285912670 685425062 216399886 364707340 9064573 718275536 360835018 856625830 196257044 639185291 583731869 861985748 247733608 873431688 406186316 432285868 176883963 324751671 27533094 547101843 189239647 914766439 745886814 963656672 732287762 980301506 450608330 595220533 357283604 989951334 629103162 895259955 577208203 840576864 571995048 882979726 562289366 681567505 894852835 985650754 851819205 913180154 999936416 999950199 858314648 990088487 251558722 654638936 804966171 917269652 508203260 940435318 535463764 784244942 487924580 866496809 571893421 962872034 454219436 901660754 149537320 725674387 875665841 889957231 330155713 951216833 885113678 995616350 304327376 321689942 35453687 543961544 164961204 329665142 805128224 905113516 58208756 802359626 876622514 929186450 548127523 946102295 44572887 894965628 916730918 974300101 946651181 993261049 382574592 509165709 539558700 599592701 777183195 805377907 794956496 902441667 885895069 966138504 91255711 691249431 257907196 729056599 741369950 881445570 106974571 141516471 146646209 295074294 534610634 934311466 774692625 840866484 648533416 888387771 744720984 853436418 969560678 974515457 895570763 919418354 10044064 891403165 466488382 873434455 260187536 827536589 344299429 368553420 107061443 944382404 41806831 550194703 568747567 754693836 734754568 862982518 36557734 596888648 859532103 928579138 598439631 858224191 953432690 973965892 487680738 847400731 114653716 797485364 213348272 658745519 172577984 268189758 129133140 338730271 956201659 987066837 616774208 947542379 270683714 499058649 469526012 644114358 889325713 976888762 265070523 595578876 622831008 683108928 231955184 784851350 437499072 940654296 798067646 812352782 80916954 896965561 619354403 926698781 46992571 47654100 161859961 326026587 77723032 153261556 88539569 129225799 107271871 849325919 707828232 894680330 634966230 709398735 552020324 922911522 548129568 655768657 880397678 931503322 881589242 972856172 398011143 418594480 599892207 783177644 684462960 750912179 808171952 973367891 636673366 891920890 872036017 978896824 943879581 999830534 100245895 332093711 608647143 890847571 706351161 855387381 883146764 942327659 627359578 735056290 672075517 880267977 716638808 955318119 207959820 301559624 922075160 938811695 218007755 826227361 468965826 616345649 146599912 602474790 594493344 690746785 607175374 860535300 860348137 867559560 441341503 552398104 631723232 865070354 588879602 691348368 865882062 868764164 688076415 735071812 422749343 514511198 492336964 630816173 977017899 986513163 907040523 996656394 239940176 575180071 315090199 324675464 865238030 892635336 425968591 512995337 678534939 836961640 430409017 529758922 638317814 709851845 962493901 962807355 532453422 674948665 438514620 650488963 545435995 986332843 287574052 605456042 848982391 995824914 793485064 901185602 989121551 992436699 149902832 915140896 411726181 998562815 624954499 895644617 203157026 372873588 635961397 802204478 889982713 925398764 582289569 727756247 915948042 921905545 496207938 518807115 518365548 874693923 895016310 934591545 940906584 979437866 291511696 613488009 107862874 842482791 828461078 866046179 571650053 934745914 884618231 941900683 733092904 954359658 170567508 394730065 474379138 742306345 847837307 885709936 745647647 776436422 732063769 796716764 905836546 997594236 184986858 799178007 830776651 844357235 745515663 903875336 433216152 556112567 347369355 630571067 832365959 922172312 504884563 973772948 438491575 855769492 992314875 995203946 425381434 738215946 470489047 987807248 743893083 797900284 858123564 860689517 632788835 758379471 111405468 663815935 266790217 453954705 275116210 627396160 863624446 951732089 774280952 894101962 522105723 572116281 59835000 136590971 756426676 963325986 796984082 896078538 809457042 863974029 865834728 894571872 759153269 808652937 647674741 664276365 907803267 964873893 496976834 848610741 35661315 89263631 101513896 733185343 430138676 902664489 56590494 932607990 584845778 791308182 363640925 824150422 238337187 806770715 926867754 941870490 561550521 618975126 909082009 961331352 404893431 838188693 25179272 730340046 699666042 741324827 66061056 555988801 583363557 880802622 454323441 657537034 670650886 864972590 138553926 718628497 283976157 654195506 131232624 543743934 104417179 922029676 824292485 906543996 66746215 453416552 558136144 732043821 60115926 950555051 889432548 916329470 390134357 403795907 146594014 768658215 854274409 911072226 157057085 788082628 331572790 438434673 570264146 670431895 710283648 968195713 717986463 869569588 177840402 345330298 475427734 568039731 892135431 947817371 518645350 555259425 304689636 544297235 198154702 517960486 334092762 699504019 49188299 344159270 513802395 573705500 914081099 969073716 60302026 288865007 451788415 709608847 929903620 968152457 900200134 981204300 717792799 810159035 269190125 520347332 161060124 174357334 48684729 212078583 329822640 702131977 74205622 541421850 163541839 309030310 486896320 659937272 483709248 804581262 221456792 983784056 946476552 950690063 55774791 679194391 576877303 797430265 7128102 568710452 858249270 862070063 37795386 143204139 554943319 763704567 78892745 407052603 550552771 739162410 405874039 865353803 457844200 627455519 646632284 939396288 357773883 770696960 467062670 486194310 731757000 952400352 280478914 824634442 566465715 765905119 201834721 617894703 464697082 515320592 77151667 947961458 331158806 832677606 278129590 608996917 741710116 943609975 201834296 566792480 204761455 531034149 187286716 777199038 566549225 883327572 83808196 693128294 991359361 998189920 764670920 845422638 694633625 903864442 494372108 932594281 706728878 755224837 963410399 979897136 594727188 696686545 82391576 858313416 838427551 882910619 914558038 930219980 324903099 459431347 369527234 381457598 290493637 991129059 936873456 990057482 98411332 565230581 760200979 824073213 650544533 844287458 55148145 268739233 287588202 410238939 781624274 822146701 889115086 910432853 338205249 977895447 772686374 968185535 416388358 897863539 97471377 455929015 262479172 379519471 300216689 409273983 734195239 888988386 817348038 897035725 945128026 974986934 742448409 790036564 999811982 999866033 649024982 764590647 519623763 965568039 403051828 825004098 582833317 777244713 22871369 510615937 900548337 992782677 429890739 887134507 949845102 980568427 833003592 941587617 667496467 867422312 375486577 382457322 473584223 779188717 538957752 990544037 896317348 973472539 491317878 992663267 216993638 769969886 488383792 681691957 536784592 577360241 352370548 475241082 743529252 826523486 858955609 962490508 326903327 753251042 541293554 572417072 514934462 778108025 132565278 968040484 712836980 875250185 747363366 997032525 905884396 923059555 68920226 411508738 476362435 582258189 916712754 966129006 285430030 432613009 378261878 481939305 508750050 577563351 870375200 907504630 501640261 520195506 521355026 643888083 988536178 990268758 697951074 817703692 104791493 292275601 521656470 621405545 878171478 884636212 850022853 952775670 203022677 841032002 207542150 803176481 240964210 595853663 543033575 650871058 705466405 733542047 795951285 974577686 216411808 504127648 979125865 989945611 448767737 817000919 113529889 634960351 734361776 850641372 999788825 999894248 104340511 834998349 519580200 851161991 261625520 580052109 88515694 793316759 931272558 948199280 253886274 553804247 655898968 990517541 194729010 359713376 550876365 673624361 367116223 634400535 982909381 999865249 13442062 828399016 703075920 919059109 689073691 790470673 258211236 814276085 60639951 893925592 645208656 658486958 43497115 398024646 317071221 976069888 342221979 870509208 834540404 969719596 804697381 930800587 146361 922546358 294538443 465050253 942061742 989900939 200106971 649509660 716690945 786488644 718658763 911705243 121593570 369894232 782625579 831707962 945907307 975672438 655834121 753789077 639040377 664351663 706295996 736903368 337898983 612205610 714991582 821698863 861882692 990161278 192790273 818234355 176301099 575571333 613584116 875321684 18726345 981065844 123177587 176116217 822337737 988121801 542158752 566520950 459413025 610073744 215197738 904284808 708067520 789464078 499558319 831702315 170611578 464204462 653422315 893803962 368028680 522094341 600009244 634058427 554021066 715604482 623857907 693250522 578507124 772815879 435950275 618215210 454011187 914465531 447035253 935485416 211977302 884298849 636817191 904638169 281428594 491110300 784896093 897473539 743905528 834458390 884291613 971415711 66282882 303835839 988883181 998307367 254487886 644970540 891972304 918707545 651074835 796269877 412378580 644831072 286469410 980322054 710074868 760460998 323241206 346254003 669349779 976103394 307966129 889623464 661790468 766987657 414289913 656867284 109460369 633651815 818493437 884741256 457753076 603659555 775265500 967207470 460705455 902582905 250879836 588007456 216774007 598142628 14173688 168033258 5567927 953439366 838901291 887551513 990975080 995152152 14898106 80942757 11271876 72294632 72933253 993089097 845377133 952615199 501737170 545098364 459173945 953953469 945079543 946846052 612723151 937096083 569041836 972609217 513484579 844410181 232307906 947010629 432519864 610305571 830271142 869761505 595212526 619340170 499378705 637844275 421837059 890350806 610808174 778172787 749128744 840057478 38579534 509041518 318668359 868065520 231823890 669805878 168994243 179138430 240085778 507356477 101042521 524934137 379819712 635012565 821609213 966615354 830393702 835584314 813932065 997170762 215133296 547183616 188583594 898429798 840027313 890056840 3849727 173102937 533568159 693519154 631564831 883769258 984367232 998829781 829676190 883975974 104401208 978220902 146609208 945621913 943837779 967479473 196726772 371703641 268918873 841681174 694940702 931590538 854417009 933668003 734522200 790485620 618923277 663812485 524111434 997371105 978945825 998307961 65263607 379341428 222876838 278104203 838413430 900477648 920624864 955993467 408822304 594229111 615891108 834483745 114268278 930011196 915498871 976505025 197724451 628305178 409623115 830615314 596328034 725833108 945637164 968269230 34196523 562760965 549725366 554546685 287810224 778529714 95579804 356108350 978418047 995610821 293172798 725523231 99910376 790254052 512243644 684269455 435028339 907069611 193663966 743055876 905179610 962846100 381293219 638081092 574486774 717085278 408402931 507985091 363546015 934763873 415382811 774944530 172029917 571326934 713545369 727639881 102002823 774688490 263494282 562893753 298505456 856555090 289671928 910293102 151546995 869619931 774678094 931693657 395519250 871972082 233278833 851850760 878706256 943045634 327815630 807858803 889960791 920461890 779310542 915762876 248677503 681745396 927623609 963759836 799951355 897431844 449195410 841056582 909941849 927405145 29257073 670705875 739211552 933090594 936375764 937937206 331889044 818415108 541640085 679750239 739862373 890702645 195183308 914235290 15885122 678367141 246593564 836887802 620430457 872196309 622613323 924395828 96872379 97040320 687217745 902117960 869670260 911865026 656086082 996583496 892036034 995579307 1159647 530061580 934163062 949230866 833730857 849299778 328956692 401221084 780996703 981819912 194466131 237047052 24992192 39209687 416262426 538618360 115140797 190068500 650230629 662603078 186117554 960102627 726688534 819149678 204694048 607437929 892597518 957807549 686159811 762703839 754841873 755910555 888532388 890323718 145202098 597666303 334349200 734701130 651641475 968766958 452350740 772983375 178659043 469027747 504218682 901910072 3681039 445415255 639281252 953838412 675218753 995479069 997591216 999635646 370541195 591618171 446016548 451576153 326091427 896283380 350667837 853012290 583518623 982058009 980446931 989690215 207454284 211635892 671993503 766498743 953620712 984094755 540538998 573008068 283285642 293556073 763271739 807614017 334229003 790015298 119406831 715241013 82878858 709068236 989691843 991838975 500111736 536925900 515162991 679637595 574278430 989199944 92259477 824224696 254797874 791283849 410804476 769186318 356417564 432932766 88931321 331001324 543792599 559208837 206812680 737736990 714437310 894082389 997499419 998873015 313834178 659818745 294006521 816308623 931515709 935910767 679517897 751803205 28736779 87888807 634181750 751715460 980719935 994355104 497057774 833832945 15972260 510945647 814451541 946198491 898574870 978652679 20057111 461582754 63304775 113722507 378411639 949913573 91525615 730285863 697253625 969079301 157055451 672143317 51690939 638247054 633767647 859728437 459004090 740551357 941902507 989530408 739425362 741289164 97384369 556814474 497808583 927745106 954799899 965375261 490294226 826812455 771692578 826720833 609113203 921103077 233862611 619402709 218819415 888377439 61201002 420417632 73734733 575802924 137220941 410906523 639353127 936899972 265174990 689508168 601682103 791713687 135433386 716037271 230005080 523528153 821609505 834925306 457398361 872151876 450126355 723884204 480427691 919010331 647432059 929015117 6471258 380853572 417878199 755461708 474599362 843357614 980316778 999210360 344539767 574078612 455574762 786108495 154513633 415432135 897451391 953797952 261298883 892281364 679123843 898975166 750528916 944971164 815587657 830636807 709054956 905134474 817615966 924249286 933035216 994103061 409072133 455891473 475289210 509389258 43337470 473883848 256395823 740711590 208260568 739113068 934934418 971185671 689532860 795016783 846013249 872811952 924071096 958631632 277561109 409212869 478626968 606952444 584418938 952827198 241258716 306008888 153708662 748986805 123747959 144713827 637054335 991330106 774750791 942408504 120197957 218524145 86649781 548875670 38436181 82908988 375841098 930834219 996869393 999562634 141078150 620329368 612885599 880227578 371598905 618409811 13286992 209333977 288414788 604223441 923621651 992194320 273415556 508656374 10993049 947289718 390319175 708647814 914706275 927132583 297077614 346420023 407695788 891957634 813797710 955962934 65617992 951616747 671378433 689280076 530477852 577956811 294602498 866848092 647331834 786627570 833830576 961516563 292381697 976332478 177140931 280103943 952397076 963436925 334226389 848879245 323756478 670002198 902748520 996859742 455976579 776002319 889382944 980411377 75066748 400964441 324554223 832332622 763298422 919075577 817935952 949593296 670031835 890470149 402032239 879746542 227924570 385699876 960006607 975420334 296293821 936490636 246157562 882522939 898396695 908398435 672234538 799892830 942677417 962114360 681491583 962659011 1651398 28390284 943903520 991397406 987472719 994161972 793558930 959220160 500972830 881048212 394684060 956826887 112443497 646607857 918564683 940275567 616711352 962293384 885701999 993686835 845750060 848534678 277846167 863010066 27411972 78862219 648624039 964653514 353129157 769925545 247094282 666548435 926867355 967994275 216067630 295866560 214904397 411112137 324134943 351360866 351598969 724931276 431199395 636807331 159298855 386581843 53027123 343952086 437032866 633800634 438223072 784605679 360652955 470307003 66710225 969230844 483287477 675916921 104415751 922191948 185500747 654834252 452415152 723201423 49866618 761667735 24418667 53354516 386010305 752716834 981551151 998982891 395175222 531224430 434508123 705491198 305363792 953589124 220658891 543259256 715885889 952918172 311368430 358066204 438559765 460962038 167166062 246985014 907255904 952995772 463894043 979305278 970481061 979294539 473593168 595946925 49875488 334531571 318591322 389415728 571982517 945665870 684513355 858156573 185158009 602247968 90008647 483950319 74739732 250767821 450184900 814352603 78933297 741057825 31139368 742518771 883178168 992978273 17164515 71373518 518201271 829657105 338240092 482329133 535195693 618520260 145703085 618376303 501604359 888120479 110578318 989591103 490440674 932625953 394317305 439142069 535614206 599155723 598179251 797917464 428347636 553306836 985789668 999793275 227801291 751837147 276047882 744230016 661124895 942486396 684178517 795415106 445973055 981278571 744630173 914829021 983005379 995646020 153328206 626906716 832836721 920162922 556325711 968905280 42155473 61056949 14948304 459533671 934629975 946519999 225533491 230060757 628716218 735888232 765015090 780444266 876152314 950497850 548294695 579014662 887678172 952192565 915586788 952894168 735253213 857354918 931689632 990410757 59338505 696082825 918540013 995585474 75227214 864318453 107477680 319660860 228137567 923584843 390059234 996815200 864196404 876353534 164105358 619806051 839140778 856615936 902377996 914551840 700899416 978705308 70601952 183883705 607516062 611618907 430899041 700433352 516553035 974221883 263179583 551094720 998512378 999421839 719680801 999518432 6756092 743345551 679067514 833803235 131322027 883287220 967848127 991906718 314024228 372417594 236654199 502479528 755351566 999679622 680997966 885820394 421372561 893486698 915293181 918888498 179318946 276745677 291994040 815302375 965862778 969878432 16119300 916572341 588189180 898780208 664136011 705085087 531242756 721041600 716843648 880930743 606566326 811388508 915882056 928602180 676016916 816795066 202723639 648920505 572163948 855316772 70565061 705745810 634046910 990192150 184014668 655642235 528499679 596620399 273660728 695278586 60873641 261762771 270921864 488452298 992136915 993967648 763342413 888096897 921769223 979642617 534946906 815142952 833859761 955326668 845893618 999606709 39022647 919088560 579746070 763764944 11827586 130408433 831954166 871249273 687191438 745130923 216371160 662318116 133951551 885329361 297680537 601361426 434551050 753585476 450106228 739398130 227148844 890034849 218160554 492828627 775459371 847794007 361660474 508463522 91702987 689337832 64663919 794082984 873617534 942201986 923243063 931147140 38623483 305765317 315420447 395594270 788180266 828608153 67981458 198100043 383510908 776306495 742252646 988724435 576577338 907822002 345988932 872597257 526250500 649886770 987301379 990666185 542602874 928596597 52853591 433876112 907589613 923280282 800008233 883678576 665127806 892882636 895836384 957696422 495837334 653573935 895152571 967203622 360855614 838554041 829368403 988516638 1423065 573257085 976596381 998568307 202121694 552178725 785310813 998455236 570812184 691154587 592148381 723543389 544898489 619588577 872465180 928359640 557166909 938056961 606493143 684987099 111287729 299341645 514740709 912926472 33306992 964266456 66689883 622187440 101257900 731047324 922980675 998166526 851269950 896123740 309412319 542003252 413454654 905389663 917134262 934761248 848070006 987545989 984253741 985705322 614412627 618927494 981078647 999813020 758453084 798628635 623157194 740561632 829191446 944640971 776874866 928960674 794456025 846752143 460091112 516279988 23119506 911084576 765957618 923455727 955998599 974488418 676779429 816496964 703495715 722576479 82014373 664012722 13108357 679906760 502169178 651527623 956354597 987053422 940836745 963392028 420924463 979447345 483244890 611117352 583587571 780198561 967092501 987610193 238451337 545901868 164544920 406342523 923077208 932480716 370267996 883119107 121657616 489747767 174790967 300306102 905134517 952753669 29982293 615071224 643396208 862072253 621740646 940779361 414369215 442084109 117578791 453961632 368893466 477769519 577686816 927482030 462913401 920340519 458858235 870711449 120347522 584026994 553558475 640222393 109341510 230695173 656848066 776216095 413500265 829654998 830916471 872204250 758433778 988949876 671475379 816659403 339737774 895147504 383776588 847472530 658774729 823642866 129980367 791484487 679219372 777429496 579719585 682301490 183081531 464051447 111602083 413212359 466534661 771414609 947908117 990661206 116110750 192577877 816958458 978961455 309825189 787383788 706290616 728963421 941036263 990178252 359778607 786655528 11101226 588618722 895436229 949155811 937634810 987230426 101713854 118654718 718663388 743746136 935441035 971351478 867425609 923940200 844151581 938371231 776988888 910365735 221942752 331369041 870248553 973007656 578102532 901465307 322395020 824107551 749143535 880461256 33480705 258879051 123173835 429576365 352258438 956296176 749630380 913827821 203529399 881306754 118178334 176899322 438536600 475176907 325849889 925837887 535316614 732323738 197388364 975021596 832233931 985635136 607591892 778662756 378066869 475771274 883824924 898445351 675018757 694959215 822399256 920494596 384404592 523803456 186826102 259222516 339605768 378857237 705679569 719558053 715022931 888760659 461531852 555927287 648357319 653636251 83060013 995262248 55609237 565118163 26673143 603653546 991743350 997653510 937630111 948805306 971714326 999146653 938307821 999198726 693330 737330372 248846667 370057526 161742517 778613045 168410195 597965853 35403274 513192047 897205447 978607265 292268623 935743522 726396126 977450036 320494385 806130229 471624868 710380187 760945905 881580082 455086408 456365121 700670618 903561250 785492120 857363924 774146619 951748551 527256695 628300396 162778758 344160125 305625476 452095820 33935899 411602038 900871665 962997895 573514834 998844866 517429922 553171747 610125139 611609191 393690902 702640474 180580551 846990724 385028433 809877911 137911260 578813869 427404925 531902589 431695019 950224602 198068384 250989676 16777076 814841253 625470908 866919496 1059112 54069410 618710561 994129011 475276165 892265625 584889014 961889113 512538305 554305429 441809927 529467656 801481675 905284319 804850262 870247739 340065970 399817325 445608851 685521283 506897527 540769895 116121926 524035483 389898245 509235536 999342001 999584475 450749809 470321862 545394341 977230399 789140299 894434929 349303619 982216132 667432324 889343050 283810399 820944640 889580178 890151133 62319178 721733880 902130116 963683800 386931043 793939173 229592477 556812257 205362016 600990047 788851077 820526371 31878829 686421769 348503876 814855563 646440139 931855018 688431341 835534190 351362025 895506302 758499265 770263905 637197053 776192689 240966436 774481253 370584132 808932714 775915292 811638771 499575993 550133455 652299170 813282255 663441927 747818258 419148729 983498516 526783514 555195715 994794374 999766544 734876506 810700130 603463778 910087006 743434069 995717412 963244406 976486901 725937937 830118544 230625805 955301887 446309524 691270215 23573151 311561548 347009820 805665328 403755174 876090342 270310738 411998408 734385602 975491364 188925537 769294172 654829110 876734006 528805442 582644909 521113702 726705727 78888083 772656280 895526507 979425874 234176248 534741266 340161590 729219696 573438248 985103846 330602330 639188418 15181485 610389098 303008492 343839024 408178923 807680266 520925067 635054791 389603271 972654997 542524094 998947353 631853819 644218616 141259801 592793223 630900286 674826971 858936694 891880202 992655218 994657215 927601446 942260904 250175353 556286508 415274693 456352480 754689247 911745071 278015974 412591990 884823101 951678129 648415190 963691029 424662330 998057607 574504436 845110872 377996700 870308913 442982917 891124510 52788521 396037586 127056641 848740206 749134223 898498562 380866563 449677352 171008214 322577181 803812358 963695486 951576272 962317770 300244216 946723332 357984866 690049757 194536487 218332623 915553414 919071254 377686628 397847131 500615916 668276352 759405432 989817283 188465629 922213474 863622055 895206543 464688762 721588497 398119028 546347649 41657227 731643490 749306746 808351640 211364718 991873439 230620150 896393565 27012276 265328551 861142642 893119530 205099747 319658360 363828240 549792153 11941239 705079899 706685081 836541021 655339353 767499115 482766299 790152019 890142034 932913873 46913350 359586750 725153432 939808760 896142192 909162120 603198009 891446970 859598417 963335760 504236935 956773475 819428551 991250204 968695639 983194832 945382036 975185411 520732288 818880544 524950259 906818731 211384337 689533800 802391370 829658755 701279832 800526168 325531843 846229963 366769775 793901736 356915235 734803449 436449795 880118353 18181343 671216353 258657517 832537554 397178538 931557326 210797111 852922735 288833443 625030094 164408208 245563917 945467635 968164248 691248057 887064059 478343436 694380490 328713906 907754525 916335914 990043354 469587966 687643209 629542510 833250170 369353572 778473536 975537177 998063488 902250559 950880667 54357526 557629026 357476788 364257694 39336196 923339502 559826201 696546023 372355081 662861723 285205610 445371836 155671848 226427394 94315260 919695717 753589789 850473531 929106314 965113939 475547178 707566726 807290140 956164218 13987628 751061557 189103878 227602629 994910805 995849695 850111580 993894630 467552148 570830076 283591266 418482689 983012944 996617789 80911689 320696353 452923160 857650498 717573166 741390928 819215286 856080407 502388974 720139944 578190128 915487303 629782968 630407121 432542787 807489565 766720895 969085721 617888044 747460716 797951375 932664200 584614153 821247173 310573902 549118112 76920653 262301821 610876473 924336193 632441843 943455319 90616761 386641440 990744265 996959221 443189111 689898111 139921365 740951068 960831983 997154034 425037672 838407046 84031671 447392083 462800502 849533109 350764222 804866497 6651162 615788573 39474094 642938911 120242746 320506873 140685985 534344278 698083491 751436983 844947556 906522670 810192366 890601114 384449647 437548424 218689892 231815730 571090908 795034426 853518521 912924802 496654398 977624002 52835672 624513514 421335748 939704073 520822030 726254692 594578694 668331806 626156274 871827943 994746478 997515287 833521863 889112958 933419406 956770883 33712531 858810773 711645128 749285317 781836114 881986492 296961201 911488058 377996981 464130627 400011735 501187267 874945488 963290304 22740745 957950574 47237842 876797229 175244417 854782744 194434917 293813505 254694610 520112579 952090549 958379308 800598232 908026766 553910347 753200429 236935273 694442424 470794989 937810549 371745914 746932639 139798494 220002010 912700926 971978376 712115927 764849750 416503655 619236119 895562461 922334352 268986621 519250481 884446782 951349300 334431554 385654450 532970336 920956928 415622446 858062613 838569061 838708050 278613293 286270463 189404620 575119023 242531302 833448699 998448725 999144814 805398551 841268213 865411455 993629825 263051724 973753303 443334277 805734341 876435166 919520442 753184879 974213125 912366494 986641082 811772016 934207183 182490742 645460531 478392634 681233390 44229363 981251467 834650349 882925062 509421374 623274460 495334222 539240774 93458354 463531590 797461132 979938808 658858038 877372511 372068441 923578054 945840622 970164452 873834874 878561734 380893257 849983243 189580287 549907533 758406792 993973733 814920561 870478951 801036580 823847984 388465919 499702597 337089729 590621888 704986088 751851506 842435328 975270883 411198486 974686976 349946566 433087674 236395292 642838037 520993377 949683618 926087952 980042988 484810375 825535837 31534610 788633936 382918531 407181504 639720477 656895342 167450256 714113034 344227306 756202728 739824508 925256912 511176948 830962964 332041001 404220380 530214638 710097019 480654482 538698377 172102119 361030631 246351092 419374432 643898171 902375460 606659801 673346152 121133361 181706371 3844143 63318187 261307579 300832493 74442994 649359529 79479424 347802473 422299797 888791974 212005597 257379923 980779702 981431686 49351080 708442437 237426341 441187645 467635292 898018649 873657644 886245876 907669138 964847078 58374907 94475709 965609410 998080270 395417715 483838163 471652184 702176851 821952524 878509484 586513967 903722735 286181061 749110394 683210263 757188700 728383942 870974496 310798345 327539058 553264824 749003778 928137221 973856936 643799268 752853514 105453557 281544746 145876356 215067722 216952520 362433282 138371513 440693126 39799423 562256506 478588639 541490904 38328273 354290596 743546496 901815916 156628507 560758079 218262069 342908032 983925519 987126980 616457562 965707021 237109996 282917684 732752654 983889766 3453698 350998799 716763596 764755387 306269986 711054476 415815824 779043528 250087893 498613255 647313811 943608909 505237365 533413247 473195268 704309646 588691155 999696968 588767938 828173248 694081546 764779907 307485082 563087260 347371662 932221500 754368007 942052141 42467088 617144145 986851564 994132546 388604470 932675552 691253006 962195351 581124433 662394437 336727603 835701526 826412360 874046318 424811193 512176637 445596156 884320156 713745810 976392150 820280571 911353749 218847369 949352552 728051854 905079057 353600064 443618387 742273649 766678969 677873724 997645488 342744104 504220074 337309435 615227484 875669650 898397323 527934214 565753168 231468743 466836355 804608831 985559999 19123809 878308720 81306630 413628352 99980906 457906770 720103215 755120909 285967369 372295354 355691792 650210754 983389583 989990536 648270421 649756460 683065634 965619125 910485800 968217397 243911598 256298215 969341974 997542250 348644075 902585210 862838004 881891886 681878946 856335630 878112024 906805073 644585504 933213861 692924964 714405577 46542313 856459451 187419331 920801499 48588536 565848622 412283114 801495088 38799893 521484533 801128434 805092318 306526587 721963811 561482926 570447249 819602233 948334102 784627739 890432098 767379623 912477080 609354908 924825912 84040637 126322555 185326941 289154693 633652403 980214232 872273790 899919079 735715186 783848392 69262046 862667725 159553380 518584656 539104187 570095834 748685283 972731306 744294635 807144503 368016955 742327698 786701033 974905668 175783234 843826926 580476193 704056414 262575248 715229645 884914761 889557289 850942700 988774156 787562319 809543213 904251456 933373006 824652552 835550951 101340617 817004753 255743196 720533636 179495030 823460300 608142968 737745458 573690265 849496938 85953092 762219419 422086463 828090031 399950738 686757328 644411476 826153123 109667071 301250223 261929902 457806923 171667710 618732906 514633694 702273882 198628216 434744118 73842255 426900619 804121334 935092505 800397071 834079248 617476209 876217834 511183355 612621069 767884200 947919750 565653619 774938033 523233807 671575779 861046914 937628460 786780510 800949368 804276994 814969431 94550520 971087693 330412988 994564140 219594626 508243396 20858542 176115358 642164012 845245080 422372330 964594849 255499159 497379378 593384712 996164016 846438582 876208653 180654595 562070541 636378633 789930773 19661384 845418367 570891345 616080729 281972367 859146357 303673277 837762994 886181305 984727416 52940168 533056251 678747385 872671922 484620323 721353559 29736720 992154206 68526382 249458073 601736827 947992281 105770656 956621696 825141985 967646814 856939785 953432363 829702940 899637471 307415946 613377887 62867526 854997611 984479420 988875203 114671298 510159084 877816466 926984671 45037402 957535246 474050250 804658534 216605178 744113506 785606504 985791447 37257890 347861627 851013127 918265727 841103765 874221613 507848172 918031151 905871772 909384519 214191765 225666783 780957265 874504299 806277985 868559843 564544967 590280242 845157681 964418972 310995357 492776558 413621011 668450820 527314155 936521104 939318053 957167574 215564521 538473779 81926120 940148442 805578698 812594383 956139981 995308970 712799610 926975531 57894142 400570772 892568518 909507199 605017886 639762992 464692893 783890602 704753773 814433482 45358609 215593380 805876088 814895199 719715480 981719808 943475988 958306642 973190237 999912012 950466709 984715025 584678866 641541925 245726036 415539532 522937163 899147846 475382328 564118843 426567061 570339982 988499689 993674248 595937162 999396811 352529952 528153214 39302253 727362577 40080210 516144424 995128477 998950246 912120784 944143557 791854846 940309415 315781228 872625254 671731948 815330226 514523091 798627237 600339058 781001650 318509973 690179836 327545645 729255133 477391004 916565255 299709172 422099258 779477037 975607143 891047758 933203909 207972228 663892624 288834035 850248018 100409875 185370391 928533965 995091372 371340378 580101588 730867678 903679702 586093452 978277540 144603649 702735293 978390162 987343139 910575287 956944889 459534678 564439237 818447394 865880362 192251471 233055462 224613291 413189961 922549622 928573352 184877455 461066256 951354282 996214544 518271771 877850738 996075482 997941927 693023197 983558918 146965850 294153956 547187069 795829530 129097686 324558657 688267831 930297063 997642415 998927695 743636055 792708721 274002180 662526242 849808629 865341925 627731777 816515476 52395087 590326090 259907648 966226965 397685958 552202819 767292236 884136179 316009071 435563442 612499004 864324283 181668906 403731533 301603291 342698221 369459737 371485590 962304360 963021087 345542194 867280848 247886917 877577086 828715541 932957996 694846401 848278262 626687237 886560551 565442707 911013725 944005558 971932808 951052833 969825227 456471659 569547027 691513391 899096783 522388501 874002721 812565129 813895510 51599148 658292853 19215397 491255760 734190434 843814721 228563441 615720040 187310136 362516240 540852862 765553661 55610339 830126115 859015902 943188234 645038751 816436268 822333962 833244095 706392280 768600112 381755189 417625604 644868549 667396270 304596234 361890788 569404836 728537048 469964330 570842330 49237426 406305863 999439119 999942558 376439153 920299959 755192918 815030653 309752942 648990179 396714717 905483173 930235674 999987865 886870558 969329061 996808071 999989857 82480749 874826800 164519762 466744883 925714050 991893648 69794937 636027882 329996287 390494649 798454344 881754372 215535134 929307879 128182590 463701631 587047791 981954637 726919839 740644430 218052546 947638385 484131787 827151253 471839327 876076432 417277589 982043473 927368994 966478575 696710730 893868622 548392322 893885078 740972132 866299246 331689387 774397552 504336822 742563824 187109367 277930676 959927334 972158479 129385008 399376258 557875808 837673482 364344538 946550251 937172691 964796117 624734170 909680437 322106586 628961019 999229864 999736179 583887754 931637739 477443732 604936765 360521349 874451296 718404516 869225419 412349655 532531784 598690365 965905856 83842723 512688907 297056708 340088014 682791418 735254153 760405048 855844245 299264913 478313829 970421591 987306721 772345682 994978181 386222176 904034219 881143766 901026594 476966653 690709900 537588062 970048519 105503516 731442132 635047814 664579619 880831739 956483466 204040288 378303017 597112306 675693657 844763975 945476320 32397172 293297905 681312545 951310551 791167446 842516607 745839604 827425596 249863324 731498636 333030379 926072887 414071529 674358083 785437593 846182099 33921881 148375669 415099898 582310019 386364892 492415594 465857703 729195170 410569474 527515215 687254140 908079311 157567790 593964970 592897822 691648786 542667977 976767583 979428205 990412606 514962546 988326892 921013650 963910542 284065792 649385422 230451561 737479098 457726537 470414069 152021807 778414900 592637518 827651012 503700000 580040361 510182869 848484574 286876456 800203790 789760573 956019566 534380320 723809895 490137426 498029994 938421951 970730176 497124020 632856988 344290253 443445516 762439961 815948398 634696158 738064879 349317197 589845946 450764551 804843114 301929864 587225025 565971211 843943439 45519795 637259948 617023141 857077619 618348899 919781537 7660207 548239969 629418414 856944716 446911244 946744302 79209302 948242685 791188840 889141565 979305407 980947797 133593706 226119433 727338443 741329208 497443416 930464166 893649387 977884197 899330258 899353015 165221141 360243538 871307165 949352016 899375916 932544931 719748937 863415325 313822052 898165011 437486321 657238575 362093451 919246794 388792468 820103840 125905020 228834428 289400956 573996050 66148437 493161894 775218892 801831466 481700671 849017192 412156456 916246676 123260445 981979521 751812253 831262651 155992987 841125629 253398520 304446366 551952468 655122263 885050025 971792245 713030034 940475872 422670542 662678268 182091842 510118941 484688564 928046633 597977984 896061764 860108360 949872380 385343911 457145608 343647263 872654650 995826770 998739544 475275533 599477247 955710134 974642913 988378562 998279485 551281369 959433234 862186944 901826536 312615337 461392975 9023444 810520028 216969799 341427243 860929856 940257822 303410422 903509921 515891794 592842278 401289278 995862984 895178369 928397022 282256827 772994096 786676294 855875224 722718048 726591407 926631012 938054404 513026332 894300311 964766114 979730307 164274461 515565729 230465459 778456859 556800684 823045787 586751797 943427511 716081965 733250826 453328159 936819686 48482922 408232403 230475824 991171317 243140891 840922886 475659837 720393725 248682609 705643819 653802634 866049325 209713387 433069662 293358290 692747866 512572404 669278876 641843435 655623952 893072413 922820656 286452849 806324885 363996062 579707940 567498959 926106504 386646905 798769807 68892029 922603619 132691505 833279460 241476569 760982096 555526207 876159165 437960043 464240441 391737923 649870012 746392382 822730610 45962115 514227753 395829211 519496465 363199448 378293880 254252083 485381338 928909007 937890500 826435386 945728267 499575820 894811963 516971336 539899245 454206003 931665279 261870937 935680460 554960915 996408809 716515960 917481208 661949301 860593703 402987596 921233640 156369080 418512312 78086106 476467686 456074526 878236748 237820417 939268730 285919523 330729936 922520331 936689108 323223168 600246216 987067456 988170610 284253016 582886409 870172766 987154107 286993847 947571026 690035344 838615624 346029336 573563111 680564874 891192002 491730254 543378182 992674703 995361084 869217074 981268276 360724277 597896358 82201073 178754178 242500810 977528297 238237487 583276208 164469638 181269533 385397030 805114366 456929598 943391715 784898145 857716914 654197878 907644389 30831072 112081205 258582186 759185711 819641607 948336524 599625793 899296201 271368121 581146819 593373199 990352313 275484135 370981688 796370850 872239362 455319007 563208837 79267718 538281614 59283261 719024664 847511052 914187669 238989116 555135351 633090629 871690508 246773237 443617596 18828128 279030180 459351609 473599596 448050920 479298132 476062489 960958583 758810970 760047466 841902383 892825722 142927405 240070523 670417345 905444465 437197605 701908929 266736235 499953653 40882842 690860740 891176193 909887955 890023815 960614072 339139052 677651809 925335080 942904247 122246482 765093272 167911292 809551527 675821904 996820614 848355108 963823837 433055714 820271085 702003793 745973325 181491078 894131629 608805108 798686385 581970177 997869521 94362468 295466330 186804824 245223113 109790445 460376213 210421740 384856348 941815222 965194032 230738509 260846783 902060217 979576689 840465791 893476391 935099432 968310725 499625116 635297439 752178611 987050614 97725111 193837695 354246917 905775668 826043776 832648510 558034416 602984039 448522443 821402096 399311533 722907905 946705552 979990492 780368776 806211536 672267764 914468883 857480443 909418428 648825846 791761761 220480270 405925645 378361038 604180765 913677958 929734693 774354567 783529949 672494005 706059365 429098982 499609407 219711840 608474993 977086319 997913415 405936283 546049849 825918982 999013512 557843972 571060024 800727712 903976792 688173743 818885579 593854986 837887811 736656771 856971826 956437301 971471545 518046528 894833254 653920992 900688805 966324674 967383670 671642689 810346743 528974204 772287797 358770795 361775935 638717442 689972007 819118240 908757769 757702623 988151459 550855187 893377703 924589884 970690268 489468544 511191097 156008051 178893080 792709123 823435326 532339535 767985912 286994870 713998722 890837957 993578913 548662510 838680845 140250851 610370301 801418486 883584579 182330861 778700621 733549819 956884619 778754720 903179012 176113289 627948756 462184753 845693499 518816495 994022806 642591834 937970048 875976058 887839859 178564396 483758112 290288183 379976917 582321717 943760536 223940359 519227410 313079501 755616404 256529592 272454090 939053544 945606680 451489157 968612298 948322294 957344568 261356614 364546591 713074036 880186698 354424976 888240097 29724687 37488702 958036984 970738417 803011013 894282423 647272615 952839219 205399221 573854961 834639521 982748968 465356961 594854078 925597605 992178744 877542856 927953062 675381046 843021998 966204257 976286474 505663644 565957213 385479994 630432477 752915633 873278014 778593910 913751806 150908034 479516955 977290503 984538252 647157649 786445330 837942092 936035858 843529986 885468672 536952969 920990818 666644878 818978022 309705831 891709121 817380625 896472085 552416091 780083104 605241448 658622206 535402844 538278220 355397161 885838719 359197866 925923767 25018691 578987979 195566093 466189150 536049396 913264628 415997304 872973775 860501227 928733538 462985214 910270194 996109250 998818063 337228543 754110421 318858107 859219912 246516534 850493930 26925520 72999239 140505518 437488836 497816108 944991894 362305776 471206635 493682041 972137013 38233380 104934809 121264364 497256095 515026602 667536920 866023182 881734981 348549818 725757838 103633027 983753350 375179729 391570456 446464469 446808604 412879189 990739375 56623833 441383443 719906544 945888273 319265532 403117190 866084898 941670761 314592172 753383916 367158931 594228614 296428832 335302752 998352671 999669955 918458822 955451713 479301000 904067420 210074901 702486595 337058241 600970179 554597028 689433673 856134569 910605763 127827889 308529819 822817519 825482958 445320166 657384754 931374069 972801725 153217772 336622707 454328626 456592945 476316804 559347249 350199528 957173665 116239127 171029717 878606629 954374170 477334142 750935593 30793983 45908562 823194384 973170261 193405734 663098269 734581799 761119065 420262378 598527223 538214463 972935707 884371279 922105349 563252662 902001821 933360155 952750650 373455364 449270336 648668844 668745582 397219970 989627174 876198002 974389030 113176048 489423719 598637927 963982659 589972600 610124056 24577103 362307697 454208649 952430782 997532467 999462316 38717509 74916229 99743314 653701828 563094335 810822988 143412547 233905649 659315714 790671929 267965372 641139784 906779960 935822780 102484949 272148624 482899134 767957999 32831996 973334927 400388045 431652772 844680650 860370996 80397283 450003947 64066743 680035348 294632145 573533102 366271936 380183631 153709894 888551098 712269581 932765864 414833812 874791541 791495553 932094391 230936169 638326831 304611301 830067908 432616465 980900432 989959758 998451860 915867201 999643014 356859463 696167999 450967915 645589804 33572052 34151029 193997093 194385986 560178893 683146594 955934000 999445375 263694585 408761610 203435561 720664851 106031609 321161997 585245553 740446420 937146826 989234986 760498241 791326267 194026390 306648391 388061304 656130300 313701930 739974534 496088201 531476188 14192354 794610406 328995807 901474898 894326488 955140218 296796834 776073321 337191912 368744676 267892107 914374961 839455582 937064744 462820794 770441751 290788190 999494760 720949449 863875632 786573423 972572224 347262213 924371561 161317477 491219295 836088816 994804758 959473084 991526114 507844061 791200758 315510605 943409537 861199575 950664214 628112705 702786358 170503968 347038636 297396886 700642256 731164447 750007738 826369574 856486724 9224107 442559180 105497427 115989459 581586340 711600521 317792621 330572844 639566604 759211201 29413638 588233939 364073311 810686246 10554673 159515754 522602729 647158749 871164144 884653501 633846269 649483880 424193726 542487991 543370761 549799326 791691864 945814363 420867219 881871206 625656046 708813516 939707806 963458559 816461629 916654311 870032612 958929493 522476602 809589791 805455476 840800481 671019619 876636087 968919723 998545112 29517771 959538429 559894259 605576002 929636154 997989164 467732568 660875605 634545104 660391547 506803632 985901118 913670841 985288611 400965360 810681827 307123631 346745688 310516078 341733347 581952250 743350824 607885549 907297862 141232965 443667578 92030712 616270046 759275416 816807443 403542861 414748741 194273046 411038752 670551608 992080568 498297224 844198479 428692895 996964284 121322652 449165901 210033592 499774651 776274056 853807614 811819448 843451816 33980122 702699699 434128570 511783383 190049787 213309432 150057082 826676364 511004543 803853421 403611424 835368466 453549942 583845866 439750879 585476966 955490586 981532056 945008697 986069878 108573212 501433091 972044500 974518176 880284323 949897476 850644735 889451376 856203408 896497867 87671966 729685544 675405029 891291330 992115575 992728420 140444053 542763572 370581631 978354603 39714041 453812048 148068398 783738840 986664038 989406984 211171368 868497639 42658514 689581842 655176352 906836342 214882156 991726541 762705761 890647499 949833896 995142524 357015535 835456460 205971633 544103237 959393078 963574236 492365478 833397703 970837096 984656846 507940694 532164782 846615062 938243783 726426668 758078579 334665725 667239136 165863022 307613447 374410770 500860523 299749911 833713876 656889739 717722489 716973921 779414396 254024095 270157483 603324391 901728695 88825439 591057077 298909093 656956442 470884605 478298069 795098684 949895246 261189707 558218058 233252851 843468513 456144287 968105573 240771743 374738540 858538289 906148790 509835867 718643686 249426201 342619174 642319683 759097918 670285457 724788278 836141629 838324675 77846424 946215191 935978539 938768009 548186359 762244285 196393489 566572044 724088482 799717171 987031705 995054516 459397341 856916963 820565484 844170750 513223405 888853141 851808332 890355895 92538655 942084406 453319547 933155048 544882474 845187645 717262645 935063080 569980216 670754962 935934646 951037436 918048025 956569736 251034240 635539861 533369474 537350130 931114112 951318460 940510290 970045540 691371988 973474559 642240557 923774911 118856927 253740992 951616828 970581587 290474828 961082030 19146769 993596508 195335554 748891384 833341629 851404949 578597633 780516201 687281576 781459231 399484482 813803064 127770972 819180418 319724374 612981839 942558232 943411893 928749134 989191776 358369017 786251789 16099228 241208295 684186570 693699665 941515757 992526194 190040449 407646631 635515355 907503708 879665288 911151857 282920767 408784810 559421828 910096163 67620507 214281364 188661664 842939498 617851327 985920708 665422939 926097051 145151213 229324700 468064607 635404138 246950623 777144051 454067265 662591920 984669082 992650466 820168475 943918868 753995634 925156631 796363104 879577521 557616439 597706485 476643848 505225946 609045774 628302785 548285774 691539401 865096012 906915807 895954139 958348952 519926103 993191544 165716023 452776384 664739996 931322976 810357871 822443468 132722329 969073787 59966978 364142245 602062282 884205838 357033497 540968250 585252334 986489161 151040751 307103845 33604982 573338608 491381203 956589838 509728804 774811735 704325843 900539723 482406104 987899443 93799139 841535515 519495936 597637632 231395210 297867185 86870918 527674358 899725477 987754735 264690051 506088222 638859177 776541374 497848514 895962427 516682685 796717647 543665458 551469180 207818041 670053219 18469818 243319028 482320255 986669171 354838120 848984186 741518220 979429395 79898735 970690907 589508632 706026475 30166128 508111015 89095133 806918562 860266111 976175981 653373294 998970265 690632133 944968015 693447899 788978676 255173116 378413080 829487230 927817304 581832532 909785448 590629652 900248970 536218562 849687219 407868198 844560476 44725389 307058196 379567981 646221726 620812077 718496522 551333721 852990603 432422673 725379846 775056537 921056327 170479605 819200742 115859147 351924814 885864815 888748439 870094424 959944300 229463520 431064349 471526684 615832150 246049631 617191730 759210824 925990136 38822938 360040479 59341724 889033167 393818767 909312250 175302807 559128099 536988745 786229121 871643898 998741210 184819832 935915140 872386765 961168399 395045687 859227549 24546210 983182247 678330536 861742298 872856093 880464717 870449527 874454462 376431961 509405255 635169199 738633398 674058044 814571852 662804478 771375593 116514540 368376708 620336573 626698166 162000393 607796804 95958740 172399017 569913463 658612954 983862996 995964939 264903907 537930793 714680804 968627196 149877862 409511183 301856947 546147077 843028969 847480305 592011026 812163366 513935731 800974043 627241554 665155052 167072793 410575716 976227706 990962757 217775940 260554338 41766122 751047804 53704551 67538311 784454806 917845139 135727703 458247734 775209776 794364368 462713078 535515210 553401977 779560739 303061621 907262832 84810491 677081216 288857833 362934375 288085095 782129092 601251083 761925827 137566489 718466917 930896492 963355623 3332775 44516874 807778391 859032887 470898080 627417346 908150258 952642455 931391837 949421524 822207212 979568497 758444798 886597203 884884363 891925980 276374177 948761215 2615869 398140267 593191476 862889868 79640406 758220028 611757693 810080967 763992878 833408554 195981126 827124825 202988892 911486259 371372650 800433281 345471425 776652728 515111005 809287819 779710623 806152970 790500490 936050941 591922399 679851794 652811990 711241353 486820132 884231132 884391391 957746466 558195591 566224710 992966622 999531144 688850721 770872409 877032568 944304841 619007257 736833394 65210876 273863857 381411409 439711258 480610481 666705934 417448956 906754308 93517620 234429820 827175336 961923184 632095706 867151935 216862419 548831999 567221911 697844661 267678413 423745085 311254921 890061386 116383770 506356389 896421288 922002688 360428708 731658472 923764282 966374772 736345297 961443434 867981504 890755514 531657581 976810897 272781769 497880900 704060396 938466897 708197155 959326815 112562279 736443660 45032174 480546105 600974871 977431447 796720198 856173430 557149112 987392605 566609276 898667388 254302855 306703374 446139638 694283848 387089079 845309735 718333180 954330781 840997858 990785633 866009302 976855540 553472576 994281852 153442541 274085850 801261210 864460729 917504762 999975056 798996839 814448694 83271931 710517017 153700237 539674100 986690662 991094418 658318689 700460532 693949115 707413896 874873552 905873719 672117159 684815489 660128316 776552945 698682919 709472012 212129453 624935857 32949116 563842552 256790461 588833268 858709730 983568303 153228178 343772304 367466948 565159105 876856082 906231407 415667206 896177805 665291233 948359175 724039708 992822861 501581742 898633876 519945331 674099872 868499158 980104247 888447729 970222228 975576700 977425865 532419073 917073566 910983827 945549636 596924059 719516938 750861460 902735150 308520886 812894819 351759844 882057224 53185785 207986692 521637537 712555613 987921488 999517297 137725788 550781893 961825450 970299500 552074733 655116144 710436307 990894562 851480329 878373341 670068854 755100614 312683363 508123351 734084597 758042151 605304951 983277017 269608526 450332135 574810877 839786239 703236497 797825200 522723574 793806802 157717688 300344575 104629870 548475643 836679020 861730792 321978721 501119867 822667925 909329520 430522275 741785275 679750989 955785949 483119541 673143480 533265706 710683156 335739364 374033434 153625830 484794945 445321415 496380995 732568255 964934970 363998038 724569592 85956433 442916728 287137642 995723694 341121887 459374459 67231183 164879937 370592871 426073438 46182144 891624605 178021694 909566895 546927525 631026351 797619938 984234312 667365291 767074330 840687531 865413908 819061693 908912577 464199016 891088755 358182192 465868852 98939745 529743919 911146640 999108505 42287407 143881470 249865817 389131037 685909082 995037607 870295807 900827363 406243205 850082527 420637717 499752266 624225651 638688233 531237035 963241026 996045276 997486573 69054306 494172415 297799783 552223854 251216648 945130124 54152798 878039287 244156301 514384249 913653889 948095403 979777785 991334097 300530442 830095164 683114847 969669556 498264542 875916843 705799375 897589987 325646671 358800586 221807067 330906059 427642216 777750492 914497764 984986176 918270278 991862259 889162265 906695151 994800046 999979385 767816347 890429504 839742204 861107680 909708861 933642671 99819566 730522596 37603134 703396709 980941793 989549114 791944670 882394336 567396852 895316091 295661129 985906690 920314716 947131222 884938874 944673045 967422120 970235786 234465297 902293540 191828871 770543787 842112686 904332885 620420833 767733866 822499544 862097425 365467428 795697667 884041471 963954247 805285394 852786373 909768666 997327212 587792856 808186509 447310114 818717493 874926181 920635075 145741418 505087831 192647607 990047559 227399314 378793566 221165400 968678462 749199996 769266734 596662358 871483845 257883371 479481174 473610183 551691850 839105428 935050563 291431305 570076507 239464911 322880273 65286258 853533454 829691971 969536660 197768316 362558413 376257472 864504968 625885933 887757991 234492156 352908079 445018264 547119443 119581673 255626262 962988921 972708273 63653935 663143877 650716519 794717670 754902603 767473187 563800748 576312821 982744380 990292166 797317267 859838085 447870310 864704971 906943866 991244460 316143082 903239855 2312951 318560306 109647871 146757976 806202794 988292210 405817018 543835894 836058482 988713606 395372038 746854205 216290981 417245276 115813783 264695507 22294077 97754378 320544701 601591539 907209613 940564431 578795291 751307196 704225539 867476366 450228716 578950850 942166350 960869818 113995620 405521983 940875173 978961795 604069384 942352905 79446444 103234985 211668864 427638766 639654062 965011131 247206856 634203835 663273563 752255388 246675986 334023080 351261542 901491519 97424200 510083402 829683941 950574264 970194394 981013508 236005502 711182353 801616029 984643922 235133217 497322912 950857671 984003422 515982105 705302795 951690262 959597942 450624368 657767859 752545556 909870490 3224251 361677075 702615024 783733550 387753063 885756700 533112865 738356671 56211669 403774406 372795783 479438991 544392886 570357609 772126917 792400185 74812073 960027222 482343096 731548008 237446259 580035928 353529462 390958844 345849188 870869587 854521888 987238831 537354105 559801997 339077833 361613831 595132653 604683747 9596265 423550718 369083030 841216235 856156956 863513900 748850950 804601262 894274081 926516527 188185355 619407237 227656511 803076156 394015779 533999903 948077212 951072810 689735769 979399845 416593632 766421323 138599297 272595289 906693333 914186393 317319817 552260546 384431052 868921502 272256422 575587209 71659207 216006693 718336200 794421253 441207897 726503708 886161204 988539349 759410121 996235312 267031038 340470114 510423646 515818965 741277271 973792620 402012336 705560359 703088208 936262349 715106237 804849509 944256273 996242648 263656655 852375304 885774044 931090316 417995688 538651171 693574492 758146579 423275188 613109166 822766941 948345522 491755694 815933243 756273862 762104412 747959428 911306187 590110581 900154559 910306991 945842406 817698237 975506616 857432270 866340072 592506960 912837576 596964990 598089413 529015348 923646066 749163367 929958582 429045237 648287458 861761332 879652932 379535891 905080120 43743560 637458904 35608731 419052055 257060628 355109899 580127133 989107296 221257488 511641028 617163322 785491152 863355192 935006568 33872434 771356843 706355333 807053749 904555904 923938455 220721687 868628301 346582395 571290024 688796758 712785612 535032968 839367898 629178487 837262883 207944383 629078394 449094973 893869635 293573461 963883768 167349763 613887278 299425444 880869760 484912864 620509194 335385662 661881466 173865621 810165604 626925233 704082186 42068726 537587148 669091237 993555193 732643325 874196722 33835597 729256215 422371483 820312162 337876408 540617663 96573456 416682554 92750638 463410958 798572767 828091641 676606797 847744620 637190393 999385733 709109320 813079566 930021527 982853710 521603531 528137788 169493687 324355726 739441418 946820711 593146819 611253154 54488036 743552132 657469811 683419718 568575749 729817291 445253615 720082738 969507419 981286452 220505003 971137062 353945295 358582043 290140122 331140855 445515464 762966140 429987933 834761003 549956698 613275322 543454164 916733801 739044309 839718082 498794489 559080142 801532899 908479093 245899125 494839038 231433604 778735504 589251597 921516413 918070045 949293915 405272614 596763062 47426863 167540994 892735537 905941207 147983719 233949103 46162029 797259044 435719297 951251297 745615008 829629736 431444581 887509074 829246025 949230231 66904937 599834737 712103277 725793143 492405387 599417150 88594248 947511797 78992994 985205530 648732464 906474985 352321899 912875226 575749676 946332284 485815910 657039983 722392961 914416146 278199484 987992482 332627033 453240872 620172946 864559682 372184250 756232886 233215565 533156889 972632095 987020108 764419355 961689881 244959632 699745205 91951054 786917724 323526083 374789247 644666430 680667751 906948833 992469689 696505843 951635673 942465062 966130946 529477820 591679296 643434681 891861244 651800794 926347434 416156392 675893520 515747196 976299463 605830924 749629299 592040450 615953197 576073034 695095477 638406659 812354965 961771913 999884881 677911820 858643640 761721798 805256332 906598788 935481215 902763386 921526760 400389063 803585446 976552863 981127820 278062284 792497764 775132169 916204258 636946160 955048354 732207036 938340517 985529496 993358218 942063572 971996277 801205297 963821129 509870920 564971706 778665956 843691209 76092699 682255290 659089153 801734464 522544835 877396500 67755947 236209148 723695719 833188487 298136395 512305480 243715861 317973270 975230169 997275169 774942520 921240970 671592509 887833791 349334000 917938153 830080648 833972543 6752798 509189258 598297650 925350026 860782536 917498928 687701339 754538521 654486635 737982389 50917912 727515708 378959266 995116761 991586026 994034329 687540908 757424231 611281178 966486211 185543194 996911569 782404589 828342272 678613426 797820537 411330682 588235740 834998866 996364284 905148220 964455867 639664446 968274696 417633158 660814433 208684684 910501588 722478447 904354049 279951843 896813760 343219571 963775545 669756310 800572596 593679800 689816549 722748053 845095473 675678799 883482330 939229761 956252197 66442682 808162668 772319735 976507427 65215024 473400465 107842998 706404006 449685819 813738807 810781564 875989545 606398585 691283391 878311208 902655907 739079831 955754290 635124263 810759104 546825974 992078181 742324810 783204007 635583121 776403169 33416531 536673858 422449106 877472247 893858764 916714114 406890043 671986746 256659660 774099500 601813122 851364983 498796082 652725610 281915400 983729530 202984950 647328063 295248101 857468371 488459441 775788433 618582979 874521881 809680251 824001777 907978733 987869477 96515770 870131183 197581814 246972198 16446056 808487552 712057230 967240293 83757710 604826350 761985925 781131909 392457146 755960017 711418203 771595773 125297593 965618508 673040839 719377592 287102131 896897799 635533259 661702519 258244470 923506873 858994803 897744064 826165609 996597213 399127261 460095914 492391796 534614824 941319680 985342543 35795379 411464955 280132334 398780836 858983905 917197205 206091186 614200007 922290090 926892329 162255591 228803008 744093034 764831299 749828456 939729540 865993545 918887882 848295584 902772216 77371439 759408939 126558380 498499027 429000973 828695780 86515941 430911976 766582971 914911476 313089310 611581810 951525994 995859904 544749390 901769300 288013845 920907050 888923206 973070051 691635894 932467592 633771897 907241472 791911841 831093391 103957915 536168305 364080327 618136693 138515628 420214846 909303450 954158886 312879296 882624732 492531113 576610728 804812492 953232674 115592275 811986558 70195601 545079772 499553319 599139184 723521900 843134237 754392918 923050977 344218216 670394707 610156244 805438954 282284904 658079852 489361101 524060306 389529011 717900363 330760358 468082909 877405394 888811760 810814585 882414932 742477108 915465634 766705881 990944226 660405384 712824516 170865685 849837470 775221331 996534849 194153007 832521313 616824326 745318946 26092444 343663468 456590451 570569977 880847975 901738138 448105194 834566291 262737386 879403939 7010499 248100935 941613854 974331828 490277734 825875865 436544393 902527925 479101638 598860888 982902821 999979091 579926391 667268737 343817120 529127871 124942549 236700550 36110242 606391369 434721262 500992016 356280398 380436906 851409745 894689748 726418082 780588000 853651241 900365638 798350740 916890914 877480143 938922254 518054871 629526877 660134689 961631389 928006262 970642531 906649227 920797707 709945309 945039763 113204396 158565687 807738270 830169835 463281323 499586365 383131382 639131830 628236585 635948034 34945744 49497125 945759317 970027460 319649333 937958593 535625878 803487497 648910683 883035337 505264756 851020236 982358128 982721707 291936276 758158937 929298028 995826717 804211017 992268389 810312276 955341395 346976829 677838632 538684563 625262006 340181077 843867906 464756172 724389997 841973111 948497211 524436100 553807199 545797889 688596087 649293269 882331350 568402194 920970247 914387508 957518999 181474014 690256835 946279322 963193001 542773028 578581873 496110173 870557889 457964400 626925510 443367120 544907775 251649546 594246597 679517528 818693018 816822935 928714913 410904139 730779803 993339740 996282131 604943548 810485528 648334986 816172556 459584450 618947667 847147480 862644968 253212996 516825257 380498254 785130743 910014577 977071397 636172476 877895473 705342663 968690491 702118778 795882797 518374534 962228243 70284465 685851228 582692956 808576754 60390661 581908214 262410371 585325821 71188076 759325220 350476611 795085001 250465449 701556866 759766095 892660398 541682825 766033439 408055957 960557094 522085913 775305286 225559796 557854367 331088968 745930442 226943043 260370223 155959973 286328231 335377823 602585697 272751023 765770766 101196682 907367715 111459953 174079854 937504474 985457647 394850741 760134629 58928720 676540019 483083932 794167321 377596013 754258874 267833123 651163044 566402799 852084803 345150263 597079827 60113166 467515104 967191726 975104408 332348807 816696128 646678719 784073677 221142016 570651746 820341979 951274007 12862379 955791562 217805691 684306543 256922107 756657077 649941199 810804791 175309360 566758467 482876330 667037176 353012948 566003359 160856354 460287171 753579118 802447049 156835439 664815127 158612386 754585592 781648180 814031473 721125178 875453998 960400307 983108794 659438978 978431137 678312492 689606459 727924916 933072555 273039317 277482710 316676782 365033391 516071444 563606853 13077252 777488648 790918628 810696103 843205953 895735033 239114774 542588344 545000529 633485592 798995385 836100654 90273791 577144902 132456986 555739155 894098107 900516807 792269656 954929311 25439081 317662241 388282006 805460182 750702949 804973617 197623875 427461139 336508630 954214437 82901640 964360529 60760653 519935949 818233376 840604380 754425665 844494893 881386996 886826057 369884299 911785150 347791010 815661677 97833129 700290854 832244789 911479014 10474065 930806458 376805041 548184737 343620529 512001581 342749540 538756361 508860140 532007859 647739520 841192318 518925187 802106708 200211476 793709558 454256408 953800615 961863451 974214268 294279330 484263225 848743701 947015263 353101730 740888406 488704565 579840104 239196348 660656821 729962116 870348969 395883009 899953881 398526200 598528270 648961641 797768161 175100556 589847465 958250284 971499586 941676068 991820130 861579876 905223304 115872174 340664176 541587625 785139138 935592826 949638176 591649899 604997258 515408605 906938516 974780335 996203440 419796035 841317328 47374569 545245956 472309914 571984841 659958169 756864895 346487981 714659035 629547825 859863564 632348190 715136377 171195147 644882768 425944907 571172494 211485752 350702236 44208203 746692583 969802033 980334489 567295042 613931632 221374287 290235804 931153090 966772261 684598786 872323017 144567833 281721864 96620585 816634886 981399922 996145287 957079208 995788674 222533597 306067805 67697765 520803368 783634159 811978818 175141712 962019323 952005110 967136758 41517915 987133017 24357366 649629933 397995985 873699965 513272969 762194823 904953376 956144953 688157983 967475107 811681727 927339004 598222309 664031707 532163368 932942636 566511180 774816737 749440343 933699130 784072329 939880526 444230243 823255613 396889047 472577423 55510280 107851073 660569651 862567947 348264965 819935000 436488942 637632129 637985307 698848485 895491323 926696960 424166454 931633810 149676696 707866641 285356514 353109838 201321233 235328294 470480520 600535956 315666115 738081474 133030268 427792043 267168469 836686923 267911330 721842589 380391421 621881033 563961418 932148839 730978087 967142062 696120446 949984816 423764572 922894783 100539511 172502337 746730084 813886440 491980420 539451315 929831318 930069900 676369864 988402176 907896148 967347054 400317042 571784729 749073276 906267314 211236087 785537910 753840741 844214507 563034181 849207032 978068530 994580660 424251360 899400903 891491703 969295241 79399720 531311373 242180361 988476375 502967154 670966022 159425615 700328904 751658673 852025486 546840186 555333388 185011354 186692609 91635141 928141205 69728677 469961729 303889132 431553972 234117865 408292358 50410961 659102356 789476141 986951748 315002283 695186320 727886416 832566777 907581680 963870776 825731542 932966334 423036808 732080772 157952913 794787474 84543630 272316547 482876713 889405809 454537528 755254831 790753785 794405844 977610405 980224778 895691153 975638482 358268004 869234583 593144245 894511566 164680394 837558240 449158115 719372399 8987586 560240209 141296863 968855687 194479919 333669018 517905945 813536117 644119676 926049389 625880921 998028188 278799068 371365933 310957061 674757199 549918013 684236299 550690898 820206677 298408848 570418923 179669756 388124304 724132714 915882412 580595629 771744654 999222781 999356784 984203311 987896205 982127714 992710025 719614868 794066489 136345038 588151649 287633964 479616383 824683165 862919440 931318273 946714025 679096297 735932580 208845283 726345981 854642340 927563744 821309695 977764856 31676852 306465457 169523570 193559083 836079347 852122959 582163600 783895478 399049344 554932171 743912455 934317870 552450271 761050641 995270329 999447716 783863226 832469448 689896446 724470724 70662892 410907280 577503295 993771807 380520059 580892503 574541906 934198902 567076729 994433788 681854320 744136457 259279255 323643393 502611252 693658838 717293123 889997418 443156396 709079288 499018850 605150928 84481634 579001541 694869806 965753639 234941859 260827892 110050095 240564878 693125071 693661906 583744867 688233000 958183579 998441490 778206261 852146592 261856092 337335833 578386273 960656991 134730760 573219725 393819712 783401800 799302697 814941201 679133419 781082240 985983249 991197992 301155980 849991672 324098749 968977361 191765033 635104943 434410288 976632329 715672806 776173323 866085820 998436812 62612729 773146981 55682987 335014546 187675728 375207911 996918957 997793859 857872107 992384275 917794345 944401505 517100994 902464313 335955008 358334094 563979541 595650850 251268021 304572845 693369340 730309990 748911411 760619437 639744271 947603957 209131826 292422096 651515358 691200763 56602768 834812342 524320436 645350704 50702950 582440134 172621348 800646018 741472937 904825094 510644068 787787539 237412022 767370623 420213137 592531875 284598895 343549983 149339864 394484283 149331463 204543038 73618823 704066350 976354868 987855610 862518047 863610455 88049136 590099084 217430360 849407776 674994620 771788688 154258220 921005430 932131733 948741120 135471663 790019389 442160621 884937080 732164757 866247832 83938378 872695589 460334572 978131899 527721677 867402718 282000089 785793327 887846430 999874363 804730870 893826884 289775774 477126922 88276306 472547798 455939847 597950271 506332156 593374264 306459444 973978466 256601296 429636854 2872610 359239184 678098424 778973165 267367659 359078936 946222718 972231779 512383037 843597696 694972881 842455556 619484959 716740041 46667383 466173886 455797850 813653726 855868487 961656509 877543613 989085112 472975231 491430185 513426714 787649645 955499660 969926473 194522197 796776101 330920676 836882896 685855282 984333984 857086754 871491048 259853085 438845674 550976821 785987733 71963975 928375573 551187615 750580988 309751139 991099239 677364769 832693379 39786522 215586336 743375175 866842619 386901035 640395102 506643330 717388177 764977401 858854219 935582679 958114848 396961127 516388189 658748604 875792176 409247525 802892263 824445467 862928552 299260994 977985850 528491266 953625152 668091941 996443001 82402088 109254012 169530750 987770963 543100422 868065045 746249360 787791481 875790744 887690321 97283862 648493325 634385213 719303055 23585351 309727850 285080429 923520550 570176458 729869951 24626384 851479134 842171513 922577836 599456319 667835357 116064070 159648663 937954042 991787592 416259154 913646662 378909535 406243287 871830330 919674980 745529378 764522933 818378312 938111060 45506173 813297568 173324336 661622166 932912294 947647037 161679670 422477637 816501790 830975069 918035744 936558896 362734489 455916033 502198598 617828783 570853183 714837278 88258419 488674248 289164225 510092199 687105103 722708944 77289997 323812940 605693819 932756151 612399847 749077978 10954880 445761326 488659457 908092470 403522652 510149733 292718172 736308889 888806149 973298369 484039780 709334206 183928049 803952310 701591864 713164758 283877965 746360017 234913934 466768565 189245286 975861458 740468042 823508160 79559044 763688264 377266607 756587355 940068436 940369768 432007789 933509156 11521442 966771313 623560584 859840491 303132983 517541401 868407014 960019722 28177616 534715393 927418484 929834078 296730097 552469567 171881652 746788962 225277901 455916669 784966294 954837567 635456136 712850160 952500004 958350655 526974101 654543682 823945236 958797606 386689801 750769291 353265774 353599905 609373757 648800277 243761706 266383306 320863628 872884777 365610566 952453945 116135477 984883629 356216328 634211890 887867803 902824131 856991589 988666210 595545827 774371165 703656958 729278570 296899661 459996116 257195784 625898035 840933963 923501550 261164757 696177511 593497445 618839963 39774711 368466557 505487973 725842108 30867345 794443175 832814648 916368777 444669053 790167134 671041126 975739738 108560855 669035290 235332493 780465756 671022262 901785710 714556034 897622671 792982211 880776932 764077545 908019928 752700791 919428787 200073440 932899682 991417830 994968195 884248605 931795274 557270513 942306702 225676539 795606657 513728184 718431607 792772808 927051351 811663523 973730159 970707803 977778833 954759611 980538766 333556372 474373529 822465852 830077132 749830071 926337909 917694347 972104495 544616683 652238851 109172444 901348923 834100494 972591293 679676747 983732952 389833345 649217953 873328848 887439452 770654033 930915439 874777450 883633900 192191581 294709951 734039293 783306555 120236333 998720931 488081969 991002698 858493232 926168239 871792474 909295333 613912732 983666829 680528660 952929606 585642917 890989919 617861361 822474595 444434495 833844196 797672589 845026840 718306193 760446185 487833873 513314632 692286243 794822589 915004463 915058872 819124362 865125786 669711579 930273063 146421239 600361822 175306141 689587414 883773948 957272089 444500785 481340532 220541684 696687891 338320052 585939814 399871743 579082524 774507797 805280210 377214826 460978587 104753244 750012386 756533311 839313756 713950709 791805138 238374361 752305856 632592078 937787798 665883534 686246558 473348964 946864675 45706255 200928476 692869978 910822442 712458525 727389521 592973266 789398736 146954707 538335828 493805877 632998106 544692502 805437764 878156348 977758534 322271214 434761991 619025614 864201721 92385449 460967729 759795925 910389409 647534792 709950888 954580611 983686922 321272892 706537554 465806738 737048116 526310997 798635625 165751199 453233991 983357958 992362808 218285608 922576750 130064236 764735580 711747978 792260224 708483837 908300355 417891155 923584417 779773493 791390368 368378014 831993581 442133179 814125247 66811651 119005255 197801038 250937579 181244761 216372337 353538342 680171118 785877122 849026533 183174235 949336021 304534775 560791577 922979608 924669027 477245745 517705697 810481476 867102401 258131515 962646954 841976096 891637099 553277274 882767963 361276836 399310915 868067868 906776154 696492835 727765921 836269998 882494908 916127053 928097393 261181352 323068068 764180246 951775889 301085028 663237679 283169879 817528575 751629120 845716805 613996459 804540033 840514234 941855482 669485824 995690397 702086395 792239025 775355250 848803268 75839728 385834681 949446603 997011039 428538214 582024496 377996253 953742213 42093038 550592212 518488249 912631487 778390399 849965870 233106478 925491834 896796537 912793790 542346478 928507779 83405083 141991115 513365557 849436609 244342461 657565541 885838153 901841599 583901701 623465441 298934971 315635791 791985508 817611249 358291186 778413656 626943366 713489964 479920877 715101486 178694111 597082674 331832233 936772734 210821782 889308750 959418243 979946154 61703839 82401134 15593920 817220731 568536646 748705487 58556394 850519443 567578031 698562782 255971500 849984335 479754955 650333777 561442610 623898290 133944283 376451523 59274122 880908526 193689837 967441577 246604589 957746434 654411759 740813757 484015362 664964331 998701338 998991283 772175374 819133469 83001116 731115827 974684372 981120831 269294294 978042851 121216110 831428497 121607009 897489453 393859716 450442665 887312473 887883994 279998852 828192144 643897646 889842670 190758115 992560481 939995966 957848942 927234810 998089956 966926136 988470785 563345956 604442193 856625922 879557008 117874941 271061249 60015989 923144410 423200960 952121905 37915857 287856618 977713641 990746052 14874960 989065958 393431668 693474624 930596411 990228496 257680063 848042400 807972167 939574499 987009514 990398006 338931728 795375676 129304997 312237066 832755325 963827388 679989946 734657114 658107970 909694221 532492492 793494356 82981976 217757057 588822451 807455956 735496543 971816204 114101165 675028074 542020760 559493581 122374310 556483639 928819970 935117868 483422463 503646979 963340770 983175000 12731114 307470267 276898372 436117122 805582056 856951003 492481699 617704282 896456664 963668449 938155985 998120210 80838614 500256119 971073368 977018399 579590419 852057972 399951783 797780751 831960618 966887547 883750148 999172077 561057886 879343736 564190104 672902423 767771454 836205175 801743644 962629647 50890628 456164186 450266287 821763265 851618821 952475000 488390827 742353798 433575731 934664417 443634624 741192486 339376296 383395549 827116498 928989731 133449754 994052540 287185770 526687645 403587819 689371205 330358530 519317644 109418343 112806226 52051741 676323001 661125357 773211336 694441127 719338301 862976987 932863848 716279386 737636484 905348217 940306745 271983172 952871074 740453193 866715895 619384101 793278868 19615139 779497611 286651365 528193566 605688241 812424978 662387253 702790556 301903221 769796206 23233517 612200386 685406187 818387044 931592408 935705457 772900997 956376815 31672117 254024935 299501256 683691084 246656169 743192212 859623376 895713114 190585946 415920993 168665031 765701999 818077648 945918618 266738922 489524165 956751423 994684437 152702673 191655904 726151224 854707459 956075388 965393512 30771152 859375235 8668246 445046074 292158264 295869695 850113839 887264105 80458456 993516290 917115522 964589809 497312696 921350081 497939072 677352574 350227956 977594498 378369445 458421911 99213909 474420636 319911488 977869438 13807527 680594230 881185169 910643744 750290573 820230831 443454470 562780791 926009253 933644739 323273480 960735785 291567801 853985415 294347989 874786616 803838434 842678295 515844867 614751877 8260773 616352520 940874281 951590501 145716212 522928542 556945261 688947971 88354000 227454437 622159483 763972550 51644419 111934721 308426048 549034770 13127334 633667271 68228436 661472678 833265320 849558045 793993652 833143264 160265426 647188999 848152056 998601866 709961897 806773646 471051873 956373124 406518776 534009746 169673375 888039809 234040791 483425348 581475209 894409931 48595347 472403567 917456445 984565930 955323176 973441311 446990461 495436686 409414011 427722636 890962968 947414246 922242690 932816066 791670326 797513268 837758572 908696424 275231160 683884715 382353664 805478876 643984843 879566326 843758596 969937302 285152763 742120124 102818856 113415990 715634514 985980098 519936868 789854595 324392522 471772822 371016683 892774768 137212460 505268256 380849181 978570320 750636078 952998179 509985759 666971321 249177259 936491733 426628614 769541164 695533323 857548601 800066704 962711578 938044846 967549140 173015005 722089443 864350677 898474557 985592106 996531844 409118624 851614922 107189817 386433706 810468150 815762424 115433429 817278191 624953737 843292692 284680920 923449320 677369958 981300239 264304706 672663879 81962685 276364163 664346783 966589553 596266914 596521128 401431864 714786240 122889993 824931331 633009911 901166907 551858570 562828910 294570202 977082668 192036912 813427251 480262917 633142776 195463389 296915431 340063944 958097046 739833425 775130403 515042957 706538973 605805369 772178966 232238768 380173547 823420521 913027775 720093450 921321398 994242208 995557619 166687235 864925705 833870270 967176954 446191752 793734818 324948632 579213297 788200930 950704580 774256239 803589462 789362058 892948424 310039983 566969205 716948942 999190944 435038330 446365042 859542543 968985823 295772719 870480486 759902091 967411120 540515937 789099610 53847325 734418579 655726776 855090913 864098022 946595920 280647330 450122713 21859441 758154607 18603335 203121981 220748944 823062930 366468572 523251510 807507189 957406953 791470054 978529784 62690711 195531137 933498085 943278695 392604670 522564322 729388626 805880816 232378138 962206242 804230232 816486414 995667739 996955935 995828254 998746084 327929549 363302242 808026556 830848676 387142055 749335979 686416850 758713037 965664638 985250698 708272348 858838756 231059974 450261596 164264519 174968484 395731960 958631346 245999835 360879943 721686754 994812178 773677760 948580776 263997641 749847429 708750357 932390570 408453426 573809441 443488911 473406481 753833825 783501490 774934607 960146652 496538505 792525187 716855749 800343454 828460529 983058738 769402274 932379160 940530461 977360495 412952724 710336216 516369814 821917131 303111352 918706773 71609842 859175608 781242603 804016181 135637944 352469099 831652414 999207479 829193066 859393544 551303869 798433548 643452046 981745691 52324084 213252047 531259788 692593078 721930241 750494578 745823884 970231331 790074829 905412538 463549189 999924767 776226568 936301281 58876034 613143490 418230547 586214642 391807261 606361398 223039988 519178966 839255658 992059198 897501266 962572464 116402512 317205023 413613083 966794011 593418166 919479381 355628875 730537181 855792294 994607332 937068066 942636451 72424027 100978726 722132885 747913474 999751765 999795936 484700902 492558488 949112703 994164264 96471404 239693648 697818942 877700572 416179988 647849441 462426542 931217965 777581019 958599279 668818338 741042963 526343025 980787786 512223427 828402424 834713292 929891779 683038356 987476925 646126447 744022411 920467532 944003180 472522916 758375721 599224115 677034183 114498107 369710524 827284134 924928962 485715991 575913247 431477547 760188641 702921216 736708512 543015687 635095157 358137646 783126431 368553167 371899173 429429640 498236813 209353847 903318692 694219165 824866770 160772518 408594870 387201381 535028512 985253710 991701062 200998278 998462378 486842454 649269652 576669846 805194881 981632766 984408718 176835195 911314150 588363056 812902937 61245823 548951229 630483891 653188473 209514547 876466087 676803747 687336740 264930788 987365135 109033659 607222063 639718239 847905783 130643499 381593960 990928559 994866634 692389624 698177570 325547828 597379239 533969522 926976991 863284229 933298417 328698118 577868412 899297452 907572303 995956863 997115667 545730086 970310554 843608679 859087915 99548728 891839217 882476995 944199087 527977515 960088341 262786522 607469274 653353275 705094757 28354646 346015333 810093895 833258921 541994664 766338737 780236270 803135943 201860591 491366927 613412887 892180584 570317369 957194335 858659474 952282282 157500208 599031724 842886669 897551122 610507599 757828820 363438055 616099568 37317251 214491591 843979197 904682221 882686357 943220364 956972372 987935025 112904932 775154973 790690517 978366415 345695721 942106919 693295900 853905984 320427459 786018687 125843777 671672666 265611036 552212079 358492482 734691916 667025973 897674319 250526877 456294310 408693498 454539333 299906559 928482636 677351365 976398700 901898451 916588003 640322542 872243697 725704666 750745483 371841913 910391668 78140533 924230857 187527050 349549567 955084970 984326433 818962926 832753523 802766844 869672135 921937942 998931634 220386252 481313558 334654308 433397754 127468464 530500864 981373780 982977376 472362281 698576928 144280483 483272923 904676129 942571950 987598478 997650011 847178051 946442878 680552917 949646442 874754989 957290202 363698227 677105610 986077805 997055521 942949883 986304397 965526858 998163607 543560708 674795590 568488555 630578675 749612438 881378391 628783333 912443941 702689185 959120158 685572965 882524428 555186059 835497186 558386286 993016698 430928856 922580680 328335205 390387048 991273408 998994635 869418934 995734726 271042256 572420435 708253157 774387529 623444955 737089607 323719236 868043010 125330477 559976400 452603100 686631002 845354900 979292821 601076756 641741969 184163225 252447836 58508225 210332172 981523235 982424119 624528843 762639247 125185630 690550319 442154729 635831119 978335547 987621639 258996842 627027489 881634276 938559837 719938812 964736651 680106776 710178357 55195540 530670146 823552033 956431866 690749815 794450738 733330674 883334862 788209772 807986178 677961886 740432263 872108284 901587029 664152193 673468877 216267714 808104496 128969084 613646208 537326750 763102567 317573773 987041149 151523693 653929605 252886100 381762063 383023991 944596136 270617961 590578509 709450389 849317883 471125560 915432411 254449525 644374716 491289737 991912647 287542250 511862245 862133004 885792687 432236535 830386718 4569409 672463005 623023833 930704227 906296234 958299658 996158366 998777251 57322877 993308029 596712451 829901001 125106934 821290858 287651059 397364676 131086664 951279157 882398770 889114261 524605303 848902376 672078447 826825125 676238607 975213877 769841261 974551653 669555429 720216399 480066463 541268688 842511960 942842280 326051535 537817592 657020339 722036868 616713060 929362343 104671020 558086896 700624080 858245717 656921488 671666338 117623801 313335745 169742541 889397508 592598417 841951466 582669056 606959983 843612741 877411975 779527176 818831073 77105015 728553022 705057081 755642550 394753816 781915519 864380201 875847727 364758690 393869129 643581366 684020998 311713231 457293181 221647972 435531559 862416950 967370400 85447894 919752992 367287673 387304862 537123598 855666884 449310046 807196680 717654764 769713649 382112036 408159841 471706236 532085857 421789602 849943049 69862189 922235627 99277079 930165525 131069611 479557841 311066633 736012271 562238910 574338316 899709618 968680005 508423891 740079034 560222122 711848513 962050903 993977211 63834375 666831321 313367632 457928021 870347292 970403586 919438562 964470518 188674432 552043700 78091775 420660069 662992618 840296109 510035607 958827616 579770651 841283098 269093091 318647890 443464061 728788249 424868140 750933186 750078180 874792246 743213309 935449103 694646408 754880810 601761096 830812715 950591021 967223888 199176454 998158483 663044344 744467806 779830570 967795381 458625885 660721449 108827019 532328125 353966781 704902464 593115698 729447710 650325111 880614739 625289990 994466210 516311151 959640590 346816380 760552526 890212400 987141765 368227320 486098687 277192045 290402326 634940425 815283999 113555171 670459642 414780453 926334168 358439050 532288534 802871603 956910657 901908234 937102863 855639715 979412958 729421588 768669768 614724743 968406825 875982356 970479629 324261163 378450405 127807166 852686888 618970186 925104895 887020404 934531264 843354066 965119889 416646334 583989867 818284535 968865369 306510935 853874359 402961 843763480 449726035 766936153 323817428 850940796 199846530 610217897 359860708 563936210 246642817 669735277 689279795 750012830 624373900 887584468 14673552 325935053 590750776 786844969 536396623 833330002 123982819 233827072 356077146 608273979 229424383 568637846 40250094 209828839 7922762 32001058 15517786 949569010 847759850 995841047 979682192 990570516 432919115 892337827 101199887 308789597 444557983 920460199 639959034 854454189 799814777 846531591 611778427 633488933 756792307 923908013 639221622 750477265 275618309 535085091 990090286 998658000 151774039 429959623 588207419 695251649 484045475 595491832 641637304 650657779 329994138 370957393 982536145 986386164 523664930 969101952 274901559 934254732 415357262 981939121 80298569 210516683 210795106 803773958 78175919 871114759 876311024 940926841 831034610 952887519 735259756 947858754 185207095 708945285 728264407 958515598 341591954 375552965 75677221 693516791 975313012 991882818 943535531 970276272 644269060 952383684 835081430 853375215 642555315 935557304 619797573 735451744 763047953 832000454 616364038 723683476 401492751 927059802 101569634 837014789 128396590 918093619 501400136 750262156 897580475 928488279 674062741 967079654 75333043 417472835 171621471 756791803 84309527 393980529 900611767 984676425 616199279 865294997 927531923 934280671 655918597 914589243 774862260 999173675 901837972 923707180 643161157 803616941 274354838 734442645 914298648 997072452 368013779 702050921 611573408 634760561 39139574 783232306 997232750 999324584 726560885 801378799 566767519 967716813 971668529 974702292 396233996 827816502 469094802 627650660 952822704 973616691 852027335 942954416 521902700 728053240 267129998 792343169 896016193 940935579 153664715 193318511 461415704 985836409 861025505 894823140 457277292 926971283 438530475 632261985 434068820 699217650 390172996 879078487 311681898 542465206 657054428 902161702 728112107 983619135 84241453 602746251 225611325 444206105 808834651 878839353 602209373 631609617 96267174 323655683 354043926 592075667 373476337 777935957 464529525 956233941 160159951 862589677 898719761 929032259 356661657 629421508 222389964 685741335 115541987 804552253 635695788 755441230 377054440 696454463 116000059 606734688 889219943 914622309 765495556 916133938 79402678 567182986 596905933 688746222 283036852 393974468 305691762 803370406 897957154 995515049 465007028 762061748 716078021 759283619 770769957 991717631 954208545 973028639 361610012 395335824 594144243 865587722 776982427 796750834 498082016 821697319 191566400 706042091 230311845 895909046 437601160 937974629 762463478 793539915 657045095 909452597 448621128 954516088 718265013 881302687 121025511 316326912 283937615 987868425 461423792 504524413 728229109 830917120 5407895 962953054 742111689 752073564 927653845 981831203 292680084 732727113 643399284 863083829 836207782 928396455 402055368 460213246 772331791 805875729 994775608 996348876 841520923 969541662 22152299 925802794 547437783 653164780 610475764 662569574 5365660 378318712 821901189 950747523 412534543 426754632 899889810 984838583 684787757 940305297 347996107 755319840 239167723 457914600 163744395 929760589 894178881 922864338 724602586 772300902 549250450 581306899 175829135 777375709 649764965 669570903 771872904 963184093 227688948 702477551 995850505 997915805 802011723 820573423 726830910 944307392 732143470 932751080 235159014 282365232 788136000 835159662 377634538 848943353 539321879 911147330 511124645 638663972 865230781 991281621 686386361 832318135 251458781 782188243 112556159 616814369 985727129 992892012 432001301 803562282 197599182 238432566 796755874 908101218 263505168 816228959 589359586 801706123 470681275 641475626 481675699 968144047 501569853 786517857 423795954 706162974 960866762 979856292 531417661 678865902 777315865 821955360 120770669 930319251 792073874 909271452 445323790 522754085 882362330 970093719 526994787 985501017 561091233 910055935 226999942 993997164 623340421 889144592 696973352 875536634 732801913 885422414 634117438 641573839 479907571 614763293 217841008 975968283 395402070 520623048 723921892 931950993 326035764 809628893 244176080 608586827 748927745 996995990 786873672 865860340 354304778 714350205 322955470 438838637 898401140 936263510 459140171 664370826 583407864 627471307 674922760 805432289 320471589 640522317 206787587 829765746 339579560 675894373 526525533 935168915 246853786 872290491 479649323 838732364 565276199 659334432 423843848 804936945 782106060 824995981 750054817 980145848 226854519 430316686 255237294 683940395 499747541 940569323 513775117 534531777 640051326 991480542 358034656 382010895 160873584 795236911 35760735 635585875 860472169 939749817 525686881 856945986 623664420 967798926 953289822 960151781 968551197 983921351 572386161 703519359 973211849 997486112 133536396 271014891 842532721 856475298 79600759 821090376 200250118 805669120 861272502 875193385 50761439 976481479 825600432 929079194 781856317 831317292 883098441 912932219 328748055 411414510 926374154 996340446 196087414 533630730 159160967 568290942 471759169 524153318 345649904 461367478 541369229 620327400 644034346 959882740 381510255 984098597 225348536 411625045 971566507 972533916 36298811 472483107 152624471 660368599 136491302 260848650 781228287 814947837 504270244 518906664 330946467 657483444 427713343 853938990 581346442 843961543 594241766 841533355 883328415 927808838 592449178 627170573 806783449 976538029 296311861 726776329 193929457 771392299 277843415 941631667 105629488 361924579 768248862 916651702 858126252 940166357 740351130 844338790 473905424 549746759 551007867 959317627 132877454 913983015 304859413 418888216 187653145 544946904 4355195 798751743 934833263 980897390 64140372 826423013 165019715 602927335 652783233 911726719 227100923 682912467 969041605 983600410 445193539 548270085 578637805 891961153 124202536 696174169 183428547 261687457 455638427 541511157 956739674 997254508 92595393 104267564 404551783 644571512 28880312 837274811 496990588 805410699 281778846 739368074 992112526 992147199 143850767 369758346 772004368 973689976 297634624 494676529 237318443 646232999 620325695 636651783 229447153 283472656 570496178 848481618 481360908 892547892 145218536 242436676 557090748 612822719 606951297 619054671 833472083 906424382 484122590 921801793 418120419 689115097 399441853 534703470 427476167 669834015 416405263 553561781 671065006 867856489 755385272 802898752 328585918 508617372 884068505 902639359 802794015 859854226 575730542 818062920 158881719 543232154 786405560 820055236 512153761 963014569 701295496 736529374 771454780 931614825 600559341 909310503 666157835 903526790 164795847 622723226 330625221 662311794 31963149 669499455 264917757 985028072 632850137 634765382 864603441 866085791 388536027 403366873 552091575 604394368 149117860 747214889 336379990 369968016 368433483 528609800 343216387 869240949 823648517 849031727 17261298 215611030 311596338 433010930 466651184 758922992 502839449 731914951 583534183 600967727 550071492 952816357 324120206 438994397 18818025 314164194 291298582 305966032 177688604 202625546 62357202 357859079 186604352 533329814 909097409 985000309 318617557 326434904 360524392 696045276 749331984 766826526 552668856 910903422 783007699 792110982 689123641 833768911 142679286 863555139 496444428 633690124 58856916 467652471 751214777 986849541 318974916 489311562 244786647 247498372 450164579 782965023 400868163 992421659 570578224 799847458 168767058 218576894 292797552 406218377 680646900 683904056 917100534 932908131 342197055 591790695 877101708 992231072 295970975 689600706 815855768 989217545 399330639 879191576 212880511 696577331 195998547 374034035 62051895 641692116 195570074 303427646 914348841 996908033 78888432 593991777 351713852 890299393 667252917 774774604 882670812 963019316 900872633 929166730 60129333 739907458 311644924 551053239 784042188 860428194 856579453 972170067 472641648 788142886 598642066 809793514 789895249 840556842 663050308 884520195 786380225 952501212 645818569 977245286 305369610 804735067 388846873 679809783 645621785 804885963 841032143 926403946 479416760 636215685 194172975 672692803 26594969 920627568 94489349 975255764 659597940 974895870 691032269 762478266 25508324 48721860 639646987 784268982 877468230 912995117 972671034 993312870 396340569 404576374 701489863 963785870 907541483 992845529 359172393 766336818 248241040 306489927 506495467 943946883 97602120 129119644 544388615 938019023 206177842 774505364 561074558 697617276 93071896 759937034 400732024 508988833 405860309 836280729 945630993 991650907 217164199 794053757 646462905 853532886 612574268 873663367 670730519 830832019 475097723 850947395 856544045 905942558 208856925 336900966 415793817 425970657 251058796 906753160 343715853 455885704 525402552 995693280 24840091 984026881 955055575 984101076 528378711 666169031 57686838 335798338 805720558 988512902 717761949 857234305 986579806 999764045 242954864 713123414 722388865 923574500 142830259 266320984 865783358 936038930 389890864 976412031 644447054 763629049 107597787 790247213 49411041 313437438 418577831 665433217 376654384 445310921 756922735 881890338 532100642 874721275 372252281 526321599 173996831 633393181 222187033 505995516 683861678 909696658 488842575 861042890 932106521 974555960 873853536 996805313 664663670 684359621 99765523 680992680 369402764 997840240 925896375 971529596 258975099 329818663 240802306 572231202 321785672 670192117 646301826 816945528 119992284 169481233 381501666 569095991 683003187 896170935 258512245 492503938 187234960 630182093 883112121 907229999 250237051 280067815 707106163 815909086 770722116 911480925 366267699 747173363 549477770 568127101 275587409 564302620 584850006 633270823 485819892 874064972 195874019 246808825 850942243 912211133 953033855 998263743 92428606 161917484 669206080 808139578 730282976 741537355 876000631 966704019 166191610 513119258 28188017 735850410 675384853 749661997 631171673 796862375 487981455 961046925 985003480 986246687 96655981 612271253 951300327 958531503 155614559 232532564 482164436 702464807 578403918 877957073 464643856 909036443 508363456 739297835 911007036 914061735 443900218 839252551 286915251 711145546 646717893 761753758 674972579 677974782 145336092 425430306 677260046 869233824 925964101 989162276 539357230 965070921 528861231 551681249 254351659 303131032 55731200 634487425 672662842 991323926 272738097 787728037 224979174 311936155 805884132 925365879 875336784 884547847 960300792 973132976 813321489 819087291 796140708 974248984 286522103 917475739 162973026 258878046 627029134 935093349 404307397 914939340 531365835 997303281 706626745 708599010 26358560 860451422 585781486 677135488 36014394 81305568 979023741 998811069 488376196 803090455 780254223 861318434 701050052 865175539 478594038 894291092 749277115 783959823 339994588 639336891 204504554 309869950 553820521 761654709 550657135 635985898 619517230 620536209 751933910 764770087 590908918 752347443 994413 244114676 657740255 669719015 71501492 637250378 285375267 292218495 406097873 528708403 232237899 475027204 149260051 167189442 38041511 828645632 942778194 950289199 512866448 942584892 821122709 967757773 949262427 983397423 47661884 109024144 52106916 131285431 54169451 386193031 793227011 812312433 400633606 411714556 711487751 779219559 368593140 384535271 288638831 472431812 149799733 779717754 842197738 886635704 252559194 460608037 866271011 912918181 852026832 947656962 651869785 758802520 12347656 112950679 801356088 853694756 763417308 820847250 779776810 895383292 931932469 999112321 519897374 831368908 897960034 978795714 111789646 744319229 159459053 609204889 85995814 975312277 817721004 960474494 447272667 793805509 160681421 485447919 85976705 657077518 832666644 898384029 563080369 771066056 432678898 717138356 929280096 988059756 324885863 628443836 674015588 998446253 106217677 837062869 948717529 960310517 152333265 868863690 441365888 950142751 194528980 670456509 293461755 372515609 190793713 713073428 585266294 971957119 433210543 571176279 573081518 769386216 752154741 865767160 194754055 897197636 945062806 979855953 199772004 685680748 798201640 991661818 382627333 738296974 426780634 437285918 782721692 978538492 51177059 78660417 218478866 562627018 603558725 961841787 575527672 624214135 554589682 986095604 394395442 665729225 859418110 938887009 207878636 338962375 281462816 570422233 508367542 633796307 495400789 583234204 221040851 510131009 43783176 423516340 965693929 997281710 31413906 666587496 881919433 955592968 438364682 699043295 406576392 862349573 919275168 993526674 598271383 687293784 309868718 343495182 584362502 796591381 311747664 835360945 653366427 828537859 385560121 938377317 327806280 891028196 818483365 894390656 238492928 347786125 310772055 778838390 643554745 654659247 553471959 649445094 791152124 944683492 522544734 945403596 566472618 635008736 8059895 135855828 753395681 975289736 789334285 842112916 316097918 671881599 886636052 966227306 968085133 970465046 940249498 993628245 372300399 477204357 655510852 924295371 115831564 958453891 924023000 942060596 174713182 281821251 736320726 791869621 168422507 428715187 61962149 577354760 537862718 769132214 487194095 679986585 691030450 730914187 579546720 614540392 814676934 997856960 554847049 621762054 845827484 876004226 645945286 970442702 203057114 266843983 716123323 999595132 128740689 842328875 795684606 956192673 525967903 533216075 20873623 925113143 413862781 697642876 857025890 886911242 959829721 981635428 188161150 966368687 123271689 445628544 552718356 757231007 327715525 983272901 997204246 998605837 660252057 697164818 436616851 834051866 755467781 838240602 835544374 991038222 690937611 999468427 502524471 953558645 488680401 867349165 96528042 727704411 564777009 965854857 841978420 986567259 900659999 970367224 581824943 652006961 741310368 978727479 629455244 681812076 324668238 549915795 661030744 688226605 629077446 882483457 865649226 875583580 727878259 887081809 437786272 723752019 36866575 103967468 214489745 527181514 85671193 568931228 599624065 942292213 871772148 980926687 274442900 592098479 982795572 985468464 215944910 571722157 645028204 984489782 306267740 734189848 581551048 693417017 910383813 982491617 268051109 997434969 961057046 994697615 306588286 995682863 178041256 239443364 709175786 999389240 537512688 807710173 982851405 992652543 205628811 914733111 511099084 739529973 666832372 882319349 422994413 781651102 607944146 718866991 232485938 257117953 439877425 615907539 848520709 963701694 34203456 876546671 726256537 815200367 93353865 119706279 591981034 743504598 518111280 965509331 125261735 385745387 733145747 790725917 400437856 495836079 127257050 646824877 102304189 446126011 39673824 278093053 910146532 944937866 847998233 849024152 189188717 500924584 728432920 826686413 999035762 999361504 494072133 779348576 261369198 688931563 650102554 835985931 710681606 759772337 764275341 878599851 263131142 713699946 86183264 770946119 492769972 837169457 5212336 153712626 611246554 934389243 698987292 721777785 544790863 993981269 50070030 254480220 587009015 662900490 410286007 710331338 876720612 907079535 153106898 751206593 333714998 476878849 567366262 910183566 469944947 682257457 762084209 823965043 252014373 659027772 979849535 998827502 703014373 848082902 636280261 957335221 822228342 932148794 446148288 998319000 376756880 987457311 104227931 918121088 80901147 537637240 333036762 661231265 187881833 737966726 21795779 130438433 278905671 348913718 595841311 976104443 376841040 885742911 709771692 906454118 369911121 523075241 170813340 210232844 492051321 852808301 48399329 298710959 667689432 928185127 556629302 885150935 215643041 787286355 478443885 676902056 638269052 700827997 894579607 927271835 468702275 975657254 797476211 942300874 506796044 623651439 433467831 552977182 340780100 485345269 787079624 934983737 554549298 999633358 205792369 997054536 788471699 971578489 29975060 523484619 201612715 726264964 612428446 926729028 491446692 535234492 5031185 549940300 977478469 991074169 995446609 999460692 145548569 567865635 34024161 442322126 267806670 614370567 918073785 938770189 718949608 788022380 347472667 981452467 346777790 860705684 299590526 407494655 885292978 971936672 520158792 778005817 809118087 852106879 92313908 828511537 396293871 400821072 536494020 647440883 745435182 846085686 502711518 861833427 334238442 761939987 686440295 938432492 566238593 782569970 237520055 559067292 458759002 889832393 447802616 734394152 105973252 929548402 584817696 813623529 230608639 599252881 444564796 628156057 390043162 801279257 201445385 954258387 248223400 337530238 212008609 619023760 633705716 758494851 117524299 990818389 83639772 610366206 909900931 913380375 122064296 606259643 727885216 872455515 610932798 799965344 328716623 810080092 130180958 327282400 106591837 384757919 453790227 732983921 789212828 803570942 354251490 874752453 605140665 929142946 110578923 528145874 122479355 328661847 377118081 405619453 234437389 686929135 795400118 950887906 788919202 813692064 397397361 526492022 526311054 820095605 71774093 519088396 369858738 982302981 181733667 827925541 445521925 717790776 35952677 50917996 936556991 979640108 269136676 572026550 444038703 970116523 875246778 963008515 621055708 976646458 272369133 699521046 275840622 330441241 435269404 979095601 939343935 982799023 329978426 489311996 988777436 994049238 904022336 982912783 471590716 645474205 5155999 32364530 912965678 944076621 319746484 356865552 76111535 646169166 160210205 383214143 211431587 497054361 355146275 540428381 67888780 315008220 744993393 827915587 613403599 904887654 632504195 753585902 266327889 468926988 619245578 679776738 134614179 387174142 52000926 73402822 547470631 939546999 892823308 985067344 188892892 464465469 688093498 955962759 527963997 895720625 322356290 930826183 725597500 738618748 755188972 756797893 144857409 538093010 135097343 829677367 676630253 904096617 726449147 758204764 84968910 418363598 89190686 540309965 318710007 429598177 94537884 127086239 717298153 987426982 32422754 690931116 274605604 706069972 909854218 917215986 972834311 982016946 781056780 801424347 525054885 712471074 747177664 787645106 858605611 923976795 401309014 677307282 383658343 750230185 505430689 935688266 154928282 346750137 272130392 717615567 19818942 30001437 259163971 791969296 254130240 321804833 220287797 387468837 835460226 874297518 240048176 846108609 131227410 483163900 533006355 750002473 511744574 613890648 340672952 862587575 368584802 947659856 879694973 881715588 130154272 483553259 71566331 568519445 274803475 905643237 66572998 568592369 329731437 360802387 810076414 850334123 349877479 512635373 911017285 981464656 946489634 952764357 817633192 853788372 409436085 671467598 946885643 975831168 278118607 978251347 461914701 598228422 952620919 993599707 260057414 703332148 962095701 976319973 106974829 513866446 106613223 635158561 428778814 989356508 368859298 554651872 329351607 799249820 859687261 930338192 634499361 873054396 991930238 998126234 378091347 607416398 575163807 857595288 994665506 997845997 416426698 953292090 916661631 929073563 11356192 20850853 139874283 175655466 256413129 458445431 380499761 399221989 776490090 866489099 305062747 745438502 930897177 954987705 740979742 996970887 772727190 991007695 268171635 982656689 854021822 998257281 170438501 971165832 387011124 953387647 199597311 389130918 635307638 851021668 492392809 962347265 494533757 601653603 631543289 904298288 921604225 945785838 427320069 450892883 641635175 726848672 976185909 990374592 730607174 767144132 545714638 857097419 282808757 576847651 695505552 842852831 820597568 823250776 655303406 921519395 8791870 838880924 76580020 436723440 783047397 908169148 784939465 824418322 331165397 982543649 981567561 985547791 95226281 501109754 56409438 922968482 359286090 789760079 945780009 991927582 275721551 438143217 824388705 900940218 247686591 423290866 29543742 623880752 635183607 728027124 227499124 782037630 73721377 519833026 320706174 610352111 694932374 990744475 601648208 798546353 682718126 821640153 310352503 824946748 856834499 949123018 865029289 881495345 681639814 724909677 628190680 843898100 553734242 693676360 632368679 727231492 916249016 950549518 445676595 544849328 705131257 925096163 284448298 483597132 337357043 412150677 513488088 515095175 271134384 931181375 818429200 971377453 608381052 995672731 398637580 745618236 698016865 765977694 30670664 394631582 802897202 921490313 804372907 954125345 602607173 848665542 281443419 287253422 680719820 767136511 768002014 912486230 385384918 869477954 352387415 432848414 269846752 913351106 689545752 778681399 85906766 808448692 67546662 126029213 992191218 994380145 180780768 498179770 354264927 443119434 743233433 903463057 625270829 827226175 153468196 912878278 776667756 986707586 916519825 977841305 927109167 937724881 284748321 383699186 481747408 588341161 683265860 903314385 437099848 632556807 798052202 882168174 399803510 939350596 186488065 893535821 105891899 124089173 581972715 885292134 242744122 792611237 34157152 277046171 522190447 818697927 928925642 993411452 440244729 966227008 341417804 644821337 821168670 833460088 357821249 551621529 195488046 360649457 539565817 969983629 783771746 966645071 625949265 744852448 288211682 315155792 688049787 860842602 948321226 967712155 175491474 840255847 793528714 951228179 856600164 863769073 500307805 602653114 640815928 826705533 372799073 512848022 46891887 411332462 354661886 663079621 928998555 952801138 980070367 980507137 52343351 76558893 106852825 828347829 991033299 993789937 90143196 759455018 99612710 210368961 956990485 962630095 751636724 863789444 347550854 693091996 495191837 741557287 753787133 827433738 847509771 941971118 588482051 823948212 815821713 879564840 118054239 855589848 62782092 110603258 208156616 505520815 980418687 999971726 604018184 973960066 416471804 631618776 206646070 427494253 125495516 573429968 69618566 130701460 204520064 784172221 904207545 978846578 870290170 967699867 287344430 605040439 572854966 798913366 952089173 961380751 51183332 733464968 513690401 922481163 125020873 578652309 370569856 628129555 733323713 849797358 739483022 754593319 261849299 395764891 15465163 209216535 455358040 865787068 720051643 976450752 213485827 769530190 68224480 560783027 861136885 997154651 538850343 573237160 164440566 451083002 813290033 864924348 280725087 769636567 142627 487889852 996448014 996962492 325028872 486164806 465494594 832894640 196183592 838106552 163484424 561873603 202393900 294965590 167418289 999677223 697159019 829207420 63875517 463680432 718254429 884220724 137884996 162657210 38352449 450098493 442368275 937333006 814201606 857433118 296224488 515524176 47485094 292371707 557560069 755722179 779446984 844775231 735639940 766983105 39061964 373415587 668918332 694445056 688712987 917708829 168461227 862209363 599209912 720116857 626230753 658769913 804814127 955164379 884547817 951178417 341431516 723774381 956117228 960958667 551871816 841007962 412907285 652301573 820510682 925798524 83700611 648918237 129797377 371702884 371489433 795432262 370013485 832015865 570002661 867806688 941033470 980102161 349376314 464160201 527366860 542110392 949934658 983882992 689843000 902216646 344683677 543798335 751335959 889822180 520291699 793237449 687215601 815078666 642974673 756791426 320462800 756324990 887162615 999425017 343082901 346486370 140194532 769037864 944376047 992696322 741505062 780757394 683215134 763682759 574611487 622984675 103581806 190749243 271257945 784180366 851227287 940409936 904887324 925266153 778347957 882272668 251613617 838991869 817633446 994789734 980805269 993219255 586591565 979731820 19804461 934145672 699448774 771213753 547713839 682640171 751176220 994653721 88919101 336000175 605510400 615965357 789841130 922103478 161280352 696031835 679498139 713583152 151504164 825081150 299458509 582537129 304153936 880009885 290245534 816373335 515033589 884530866 935668305 993782279 138786041 687021110 817282027 919320993 611433562 999698954 332994869 818492762 793153888 976170651 795661129 824715019 451454544 563482210 838309201 851582743 77563865 614808710 811578644 908617383 910539121 968879819 675518712 745367769 677776463 793964819 495228580 726916198 623720600 684097479 386696196 688618780 374341752 648329543 352739077 713645628 197669463 248255415 250045994 755408612 734073911 880225264 330858740 589005748 958305726 990325790 946154292 947500114 998253674 998788456 261925036 758910334 11719875 352243707 694276629 792467642 472784572 813412787 981334041 986361713 167410839 556546070 767501834 923727668 567906808 675867074 991826454 993850749 364776362 377453441 259172342 525425608 948760263 983374045 447591893 655275758 922953174 932144556 975968261 999832794 327462307 886525482 554119338 605163703 274144136 958206142 175210573 499403887 891516962 971680620 11742045 131607684 8622189 233389228 721380878 971081248 14212564 497432004 891541366 987511606 242068758 442978575 97657027 158830505 204400196 723059832 461445112 616035956 860170333 945840928 388990935 745849856 270710989 732945112 311710726 782738255 338021055 635129153 1122310 972304721 622388063 707147106 985022305 987285601 869705000 894263052 244022621 380786039 987629621 991530465 973901426 974293477 553658853 956074298 231655304 845083154 718433238 879460599 222117991 412363496 295145807 452244355 861795131 898922389 19196103 927988694 455326096 730343045 982332242 994125517 548161611 767598461 956542647 986852524 742010078 815793550 380648734 594317599 59757360 287605835 717895866 805827341 562181373 925860295 482347143 554401031 798067201 842606679 515018237 559314732 115713066 678642226 170819199 707627272 568391495 886946509 993276114 997857968 309663551 903273528 266650692 442356449 879261861 934747720 378422011 394476853 648649824 778411069 589141389 761157125 253223745 411709310 329932621 904964029 798067042 886191561 214547056 629034449 56650694 434206787 245554747 250516032 653660711 742343852 653854902 845926656 249973072 628731258 872640879 934025063 104340336 215907203 864803448 915836593 97029834 591311533 227648251 531311349 96451381 609953500 319949922 420248460 346087006 706118037 846102826 968198971 72751438 220640029 50315533 863904115 546692823 820118593 690372838 844349349 787586095 920146740 746700559 911087863 962594850 984644056 350171065 447281857 783097237 891985421 391190929 663220613 183585956 216532716 986375039 997881088 757886326 800333248 246101427 413362469 543747469 889260717 811760236 842356804 938779746 978333752 924823345 925278436 948018933 993657930 191616312 739332998 945243594 958601763 905174822 974266969 210753726 221966692 452941881 991366038 883865370 978403998 112356448 201530508 108689771 365317153 408858814 728809364 204042537 988863354 813658493 953592717 58979101 325361655 989950096 990713813 532655469 994793448 456636016 964327923 697140334 974901604 870369691 999677384 472870599 587559154 251783564 467402250 434231934 645838074 580959337 583293646 877446640 973405508 821578685 951044996 902857848 924248824 363024477 629774388 426664875 496315943 641076850 833980936 605379625 865906299 863941596 864242682 158159785 780169810 948603521 955541289 994632112 994822617 608205964 657234570 929877753 965702056 634424559 705285856 383914469 858869502 57496238 664202474 907729709 935653326 248362555 977540899 665004761 764956384 812788181 841392669 41154479 942293392 702639677 923724168 885944459 959580561 512764489 643183749 565954783 916375506 41636801 100015064 156366877 617441943 185318032 394934308 502966759 828301678 513619913 800758749 484731026 813026540 597599282 928240733 490174324 528745981 602745584 842219980 446013314 651714328 457634544 748319505 917618382 984095065 83451768 309602099 258507090 584906345 662810447 904923250 461142594 908379943 631923332 906705670 776096650 948503031 217338838 511655199 737533348 995366201 722834763 773245527 339710995 512636696 992872181 993927981 835685402 895456409 549272318 688832845 998671123 999269983 142371452 161896901 265758652 291677578 731241425 885721308 140356372 588321247 893727993 951832912 181979361 733444850 133958932 419810972 628158499 974239190 457253195 929451939 562428945 759373295 689786794 801350996 54191965 169465787 913780155 985191708 16673984 614677288 920084401 975278533 768995147 781806230 774511910 782662340 529593077 891887231 498917578 796036911 978791067 997181922 681387026 809665173 112960233 425299352 910405809 953669943 75385318 961014275 522823206 795639344 573238613 676848097 73472951 245741744 427938542 881143873 329425480 730957717 215262408 634162230 700630538 807789261 977529862 983104831 146885496 256105528 804814551 895858562 486292185 797629623 501056912 539289977 985381030 998896800 94447960 877462927 226548833 951588039 812918939 858156642 382822806 528703694 284147181 946240259 244674533 895734371 549702541 840684376 383473156 601370699 361513447 424487110 969798365 970391708 650482848 827114447 532993507 729165628 381114457 536774895 177324272 951867725 27222464 839828268 249255941 301396262 194389976 597679273 473984868 651155423 168862130 564494486 868375013 889159384 123674191 269176243 4347683 149341237 984833112 985358113 387223569 819749904 704623284 790444133 242166574 293308998 775795200 820687969 667625043 821033865 298321979 601808259 137857935 586309746 291065735 597638333 761184492 823084196 587089658 901492412 981519879 989697030 67664336 395956610 281756123 467931616 301408375 520152568 733175169 964543760 608070492 670509264 117027225 956461062 313134397 791109559 459005169 839831267 501766996 727985296 951494321 964304288 968235119 985502575 805799706 896163260 350757354 784422315 822179461 829799315 695015473 904325390 318366651 712486888 988191005 991092718 104584031 852452572 346415333 703497379 133111960 266259602 55498486 143165184 585780684 876722512 73043674 937110074 483520475 748660469 94704430 491823174 632236979 792619076 424508765 724526230 957071241 984698265 961401597 973521982 432754667 909258316 234271309 302059569 44222366 556659970 630420136 695243782 656921631 824440647 205859115 820858654 111977396 764083249 207203517 473841511 361998818 788494495 194738648 667447886 381249324 939993992 362798431 947667544 543990393 829250598 957757814 989802223 136510772 606619623 860940025 867865822 997861325 999451202 311041414 867596841 779307950 985668596 669717735 718133073 180333695 555370471 553064530 973018378 797195927 979803859 27940609 139149347 324820560 838740570 438396252 593762891 147123163 323450507 345986385 978376022 742491990 813896775 677377590 855965261 968413325 992665161 663641598 965685484 514934815 623393777 482240184 835469430 577512972 598698522 797595393 834109284 75668542 384612924 746337564 994855670 683910463 867390236 630229185 800131215 137506066 910153097 751612713 860872399 811850037 997865505 914624591 993453851 103333566 318613973 132532036 859410917 92006212 650374701 111058122 555588026 429797650 925963553 794772495 957650560 288989321 328474781 335010470 846707231 979772652 983030813 845367723 884596285 946435974 989136309 650357238 712302425 254810977 712816970 171326164 652464524 975223283 992849701 376386512 665073294 295935041 833557304 926985797 954877224 335133236 574879126 554325556 936773236 888342661 976320631 996152807 998342870 366273839 370722327 748749055 792639474 273767479 920805970 502237022 974130149 48751516 126409124 265772881 997751401 52099418 161500781 44474969 77152611 502592093 900834831 187925389 513056296 443452524 603317147 707586316 749236970 246814458 432675423 100336072 278641554 623312186 802913390 907865277 958629534 363985780 690120751 655811261 681764542 886999434 992368500 205103293 895959301 135276977 979356570 883240744 981765103 709989195 737481579 493847514 660408798 9659248 905119024 395784010 990691515 947905815 972493837 801316708 853777022 691087858 810926769 488804481 983388692 529984875 832795547 992619283 993435882 831976826 983264065 657025944 898727702 364099420 779685123 760629541 953596332 671140620 817622078 630599383 854896750 49870934 359882073 155690048 328337207 726955678 781815561 897160562 902008664 813778240 964363105 982138878 991214600 861176110 926054186 180349288 911148767 390524326 576452046 323827231 893573329 958296071 962949382 861471354 862360296 775138512 846201527 131237477 208802198 889265713 896298455 799896151 882678712 234936728 922175790 556882433 699493826 530697887 878942399 402369533 561628619 535189672 783904148 221997191 716057979 379515978 842124318 588559795 912382999 344274533 486224834 576147132 642607798 762430433 785713789 699948028 716610903 421353818 744240138 143587878 392278928 511839726 885244793 78691946 344166001 796436707 989419852 383415684 545940522 569971742 918169535 346284659 527721322 416380911 776044022 759166088 854186032 651654516 790466726 801869145 938149514 965695993 987605763 336214205 486877903 570816569 781207275 110471852 983379964 409927051 514330216 871379075 944608613 6420832 780481872 848941140 881948371 305932314 473562162 964887751 998757771 204194053 464386532 307123077 657206967 595027398 849149475 713819659 985949607 455887202 826395619 120071706 602300536 435774089 675294717 420487822 768405928 524890228 601121858 913490930 961403027 725190726 890953270 592099326 831422494 293230782 439526961 861598468 871113741 115186528 440809229 65466994 737962071 216930929 659762767 621901515 670652494 299686322 629486713 79302327 475384034 979786588 984630971 736771814 803600146 85367892 643055073 499368197 535499459 513921000 993506427 684189182 793648942 607143085 974241790 478406651 934319590 704894202 985070331 180953047 887852586 88131932 348215575 700545833 796083203 230844767 810762381 105413196 475741237 117256012 830251467 945052010 997097499 589135691 640329457 821155110 922975008 9104771 193205237 150300143 773338157 552344665 862583176 969269141 996532046 175937555 542633699 920076035 940313768 94481016 285841672 845956384 999523595 654581446 960010230 988040492 990245446 296199764 338463312 411509786 738438613 2087568 492643192 751080070 845611979 646414608 973994589 531185986 746979453 975211982 993695829 353956740 586711924 635832979 802751842 128785390 957749004 41741616 106363732 948676128 979240311 823682252 860782695 412782704 815746800 42396148 726814024 628076388 763210778 391662357 531247426 856451699 893580051 136078345 943965012 467038071 837229990 326184963 721973259 459814032 685099360 428631854 878690465 199759594 809232318 804671718 947566224 760971128 810164682 779318432 999366811 675624441 680881499 25254739 368041957 498473743 754239634 779426735 785437353 153653228 505631149 181428089 456440689 577099162 578333112 985706033 993762305 121332980 798902330 662655560 708234934 901777172 948827091 124211074 510418568 540717695 811518923 345081424 855742055 195673047 886747000 640762339 699998903 945174399 975888670 587700576 967616129 626631339 676012034 147172141 293063984 507182770 889145270 862833099 915809977 3428869 959641326 92290913 941444612 488043015 912725401 711981894 800666967 125670214 787351609 528121632 696581380 335627879 377613516 347110258 992667194 256245005 843326030 25711123 804637406 588059177 996027025 619913389 871608514 660675964 750308858 648545374 755319755 863689495 986788528 242510739 322723386 500484073 769284520 778238958 867418423 524543397 623334153 274005744 879117975 367000649 839165488 756843248 866715376 159285961 801269178 29661296 850440555 328474501 499783717 761350315 873778101 824214175 905922506 162386722 817130679 687375387 987496154 810939054 992187817 745301255 901667840 459960354 967648947 739323010 956748493 198324445 581471398 889292022 889515052 334681145 661113340 791212756 995501211 375065823 683395326 968272014 999123293 800627178 986623150 998722428 999289419 694917885 750714822 744590979 892645364 319318456 439904902 46610822 254607101 432330174 735748962 336963271 676268507 221856413 764015132 185411261 694529648 90123925 99271008 880588093 972360146 150568107 782130879 375200559 967725304 63700164 590409491 512281066 924893300 380223336 666060784 939088790 939359535 403269751 527869211 452560332 684222292 858364390 956545663 202723950 237385021 154752408 655865695 825099938 879837419 507169448 803372845 991993886 994112506 798089726 861503524 411344036 695686591 441001462 985799330 370293443 816682056 747105489 931596618 163074223 984087926 519778293 742938810 950878737 965727226 333221136 750915575 901486824 935232256 194345796 895613856 316430975 499353433 85321921 711739425 887281412 947667752 706452271 912944462 744092419 828978146 960470802 966056361 428519213 558068259 953536297 964207411 336827011 677551918 279061222 662930077 205965368 249216748 462334330 900087803 32500493 374468183 28515717 558786463 353003942 400788848 991537104 994347470 81481527 525347562 293054728 633944477 598520144 827386503 828686030 905046102 440449821 760130400 870981953 931035658 852477889 917065731 471078859 671769843 938380132 990268541 93765815 939741848 942477949 953259126 692933230 907085445 470040828 641764633 90076936 181936997 205915869 749901476 717118990 984462335 950909630 995532443 890260985 990081822 557954973 789413513 642886639 659617403 871983457 885088441 340488313 480486297 520090096 940996238 124447271 675488884 899609535 980276373 333599862 888991566 312704970 584928287 733914279 879574274 380975583 554702213 298805008 789561327 254527450 632801116 794729575 987595893 776421465 897160540 382823887 633605269 920257372 987888669 193429919 393843278 253005742 831076395 1923921 81877802 206109172 237499546 15001278 472618471 115402539 529380646 303079878 948577005 376837584 474581072 487799512 666412105 137935013 261661495 78155333 697578987 149814420 473993384 591513818 871166815 492351115 622249383 288821103 637979553 672444931 889770004 611735484 863001050 881604763 922611625 791145243 880248466 610079315 913014589 215944196 381610472 927430788 929924290 121401905 746742162 655738810 929113281 252176445 389784479 489774715 997984074 988141870 995045036 91823611 455359155 933636437 980263652 842901109 925738753 128571162 886122396 952051083 995100231 162199553 565716660 346196662 809665395 392153859 698170876 495388767 928085635 55619802 839912201 941684780 987986705 983851538 991216754 506857925 597464733 347303797 498987537 884788038 949989454 368065138 886479848 859136704 977652830 732681199 852111601 675872985 978852846 992282749 993013940 750422552 864629405 635890001 641757088 620089887 706280630 552066263 981238999 726419444 860040594 307052461 805321307 293934945 809230609 401421852 443639869 597376549 772557606 828369400 901709602 690929560 743729741 444025549 662366198 59778763 216595589 284628981 564301772 585216392 711033753 649229382 776085185 625222178 793987459 901039453 973534861 258643479 500795648 564516949 892877294 477138616 760030015 17399076 717664841 511509058 866883546 414573086 934093241 538668128 995798376 468333556 924890323 747791200 762439316 423995319 634831557 895825347 977617811 575580269 898687272 204396502 494505868 912634117 960620461 371265488 826645280 85135667 937728039 649279615 869130357 441017826 951497282 907215023 995713775 742710280 889555512 480610287 590221923 666177023 958570707 914963167 991879004 66053690 330833806 779675202 969700845 316517919 881922101 696384587 707860227 410633347 928129953 121418709 921758006 577273891 764245636 193139364 881251414 235568319 872411903 934920424 997408197 639783614 869579228 94710715 269123657 391314213 442306257 421324579 890284306 504830336 952865869 578579281 746671180 936635672 951621318 671615377 878359011 416033745 718882708 396938976 972802819 662909695 890818979 497739399 523927249 638492222 663847847 733052645 978490719 302151270 466157786 608346870 779694264 743564460 839328515 138629068 896523809 234811002 798168618 622677874 639831508 348618454 627922742 184002340 334679972 76478947 570574362 447522980 937147286 801892938 854927609 811682262 987956640 702786662 819877926 201788026 593754627 788848602 920992691 436024923 793267210 891431626 965575284 259612092 655335249 22154996 524422502 388591313 856899359 813753693 850190776 541071362 992680790 942145058 982241838 599242796 784150015 782729874 999638966 227732735 730156072 921036856 930621920 835216631 962414864 536721667 928033352 564865710 959281924 379622367 511780476 539690780 957670309 975580155 977813405 427214842 876634297 322395980 358041831 178099694 500993876 296594548 849143650 787025109 863564605 736551431 925555618 683212822 735183911 766011823 854897847 225647442 603715830 991021069 997571769 350362879 765584369 766720433 933170587 364167237 790193304 937241541 943756533 407371595 564225329 60803204 700577785 44544523 58550772 105589671 331348416 429588169 646877171 65877923 938890091 414493438 504251945 891476180 956887680 589310958 884437219 267841359 917848933 740283148 996956277 221127354 257450279 446762411 698649113 724637572 847927050 761738217 863549108 889981173 912215473 649893189 968879385 455520443 530375467 356398563 804163613 257050488 393746317 926604173 960672647 465941547 549609922 655644375 854692263 233174476 445359869 224889045 905529260 613863609 820196147 476535272 883781994 740725147 755950112 229754723 884757466 960962020 988542154 741828272 780568659 601887730 788842335 255279473 822612751 781648240 942852575 827453697 997596609 658928919 769187715 486475451 925152920 264847014 978818290 48478460 868496471 308305493 616509253 948224197 951456421 45344856 51907794 780183608 953363604 415840492 452125726 523501788 689215165 72732561 899368842 834445168 842404742 974064361 986087178 522548051 981112983 416451702 432928382 135697984 383061567 738274876 921788625 692479321 907688544 948472394 998396056 846999253 865104757 503574786 749605626 901309871 979596728 594555802 684234372 760938888 926223038 129583551 580970312 16210717 734404351 332244260 534576087 436523271 684876361 212532310 220068196 247587073 727265852 452640943 656683790 930864681 935031385 784195619 909839683 569021715 699576052 248957332 521255314 934760147 999354975 244234852 607435087 697607474 747927424 694484349 814107967 709504422 900808182 907877630 943223419 112617994 929257801 355388137 355545658 16259262 445147020 567336195 690255802 179242807 888328550 379273342 916155888 452590421 482398930 418793376 731999392 283834641 708980412 346968759 484282577 709542628 766583291 539892852 887241288 922739623 930181859 987077325 999262366 973827181 986019956 560536141 740370171 95963964 509486235 304603324 853603829 633816840 640240140 55836397 288409991 592466304 952673712 470490890 553662657 177157562 180081128 128436778 318538584 719594285 886393083 473220091 879582352 58136332 151135432 744555740 833995294 330600313 337529757 828169986 920705423 662631254 718685519 233382318 316699257 798520493 856371320 113167999 732038897 248844501 507631187 166540576 662064803 256607325 889610364 229241262 908580625 793738869 945355886 708103383 808520835 628750650 737486912 388496408 985776486 402547920 889069836 347715000 555093082 467019393 617867840 969503447 973287506 905362894 973214447 317083690 948621420 68463593 292434568 880334728 963695485 373661228 855019269 253208884 733328423 188653945 343682337 291444104 663151225 606170059 808595911 704062360 853049599 234184804 471043073 459921842 465641099 306175888 310271003 404561745 804680060 859960479 950811544 519981393 906641347 342383089 612110151 950087898 995397701 124188037 189218241 42417475 204762136 779064973 896043413 689664492 859074962 200765146 223353394 30859643 178450390 128721160 706335924 397615644 896768589 289042435 778550271 193330032 193677865 659399943 954980086 408908802 624964825 37273246 427714133 143757574 775922565 750761023 840789506 230842980 763647440 957614355 964704507 462697051 948958312 775064453 868084498 872886319 909952614 702820571 822150729 276786157 574594230 51338775 778549124 236795227 656861724 414526791 919766980 679658041 894781796 571874206 845203242 819143750 842430154 160017352 418020998 749130258 772833147 641294064 941313108 225876222 463658675 462560079 590009153 990714353 992492195 407604358 495354906 130079643 256077289 482337897 955352745 321527239 725422943 785041736 840779524 294004475 422094385 957491073 993562430 682745590 735270796 127085069 405803172 760003017 996295294 773589830 987283810 414478721 724141820 673766990 686293970 145106862 181949402 374386539 797613907 706773075 742497890 1365050 602930374 494439664 662155096 827078925 921448357 919114230 994542092 704208767 918695353 531824370 796590865 743663118 980377129 179016059 333284306 844383886 914353561 807628652 938227203 772164393 903984957 636564178 689197792 872304778 981964698 428041612 937944129 489504041 569444416 512174326 913741863 956136810 964702502 265881180 778335178 319122581 811562514 373397752 907325192 435809070 966460616 302068690 922969889 851663353 876877743 997546483 999802741 364639715 396606467 6918419 935797388 781861442 852823511 108600366 935162698 26401021 785231536 123961861 543902483 102673385 193064748 962829172 996598153 361754549 761685741 822630393 984886558 778972064 869296806 487599605 489551790 891315127 933830667 563290605 662322674 19473125 346504978 205811297 779923070 802520247 828868047 621579369 700094597 410197637 971287156 702242079 767092724 333120033 534932129 934194927 948127932 725632425 837351724 16582611 174900708 453180627 927485576 30958922 764631784 879585628 899698182 891669437 916533199 385136769 587239098 104888558 299788786 413062167 779560521 219546985 469849851 226660203 858751577 774896527 837622558 927025802 986524822 588907785 647440131 231560326 581190878 61487551 367146746 833380145 833901174 458196195 668057742 49357784 509851217 28028742 545962678 243358968 702657776 170055324 690368783 772506688 976208807 440837399 575000358 939854873 964275471 657123498 868772277 40215682 854602657 64652479 432438554 378426211 890010409 265743286 429506259 661187609 844252636 383914932 930608511 11089410 981783677 143231177 594076399 898149061 986140080 372664154 870207631 553691750 781772146 19928772 856432168 352924057 520462735 122691062 263567573 202741610 619213907 518347714 547352488 985811385 996921587 487517121 768301201 207750622 508091725 500762468 595416815 308303074 945031929 651578080 855285475 883948379 923552608 424708415 701566128 501306841 875778196 98268809 246596233 287433831 571432106 832423482 930983719 921733810 990257831 546426044 825854814 480965236 628123795 234565403 240630193 431496106 458739163 448249402 544749379 566295131 967033069 329117136 835094144 458980539 924555153 274597622 623772510 991612721 994150720 617276071 867687383 640994622 768043482 357619881 823025850 929262041 963992294 999827856 999860686 290894928 812084312 158476747 858804421 933163894 955742560 361258233 693277381 439264936 617903817 873799165 982024908 435542962 548957400 675693881 826383440 254612155 975188621 382753990 576747171 67107432 866768843 377571400 445313522 728903507 852397608 77918288 168769026 599324343 910442370 583059329 992107075 865157087 879584338 530824080 676711510 786744542 945452366 105965345 827147925 165949689 484618986 398505554 492478086 712792999 876391000 6068489 500697271 563289073 911857787 319654372 687993033 543251919 735378559 770099778 825052597 111891323 370400243 459293727 469837309 516166682 673391424 753021231 888124431 57215954 400388215 733649311 739939978 918238257 943775981 745355251 885121781 196850821 253816976 506342726 675611138 732534510 804915439 840904944 971385007 613878378 810536092 102383030 135753226 430460806 524162560 943736028 983628457 270407597 562288265 302642523 822846635 805064024 957221308 652100080 841246285 609079045 997663780 778550841 995035718 435838030 872290625 492205763 827406848 601717114 707836194 732997898 989523800 668105719 790148922 418574687 539083023 185610540 431350391 960407470 974650409 877624802 969903600 819685166 984113706 89675428 219557133 517286411 720928428 646408698 739711695 986671598 987865030 354502185 616716570 873143713 887836668 412518444 687063750 501359131 755503716 145445213 563635640 838290528 950628292 276667208 544384059 976534456 978822820 866522418 974393458 792261610 884215846 953624927 990214249 469446846 793591073 783858231 836329613 470104757 866225263 448423314 567136412 95779784 331021755 322492338 623403612 110445656 998167923 37919651 633483277 166946444 200515569 987718150 994978883 837480814 877805419 949512828 952535629 784889437 998752797 800637233 903169082 278646489 970901688 597327801 741688023 54208672 490428715 729054013 948192178 840569948 900993052 242094195 507646801 497097458 538127585 591502757 751199613 90751583 743461380 753893481 961447874 259769739 917583849 370406004 371492806 591430451 951318188 809684377 810904018 690717925 735557741 895182333 962189438 489925137 860564145 457919237 649718955 51151722 385992478 838381977 977712425 170511666 714297452 470365769 873533923 698954555 933456979 967150259 988790432 898085645 951066203 434872187 519509787 536405253 538638195 789234673 791858253 305020187 414993723 246814959 289994315 261208973 477453497 794562222 830680432 490722454 941009811 211041510 747672188 280604264 359070268 147499960 309047966 927596393 956241149 557851879 589035223 54386725 177597574 969371635 983360482 115331292 848387037 358622393 697245881 885050023 958773029 695398102 960245840 702344673 923938803 180749456 936983957 224761058 408497823 311987826 859082392 808012615 813979377 948350664 994432917 661291450 672378500 925961973 997561707 306165281 633236177 205277540 943212766 558987700 880891990 919142498 919595321 753517764 757705563 650953018 920103216 77411101 732929035 828040459 851436035 41160468 850111119 164820441 643918309 519333947 657101618 760743448 931900525 240860525 435122842 438553477 812606308 160471416 389707386 859769493 922719657 991493569 992183646 426733436 973958906 374310905 462464976 799668711 956480641 528684583 596920225 191460219 769527405 862951113 958834806 990050755 993837269 539200946 851959524 322214139 909071134 634929055 825031612 552818237 612085891 905170705 909599374 411431047 502064550 267318489 537571678 588505443 999858053 526525485 531102973 340487972 900618946 233833300 249454066 642141388 676659321 997134470 998111760 100004231 826823874 899682539 960965159 281947579 975178224 414897842 733558944 396157947 470371547 398993912 710563306 874648895 904882238 939182383 939836822 85802379 959629086 200999989 948108156 641921702 824140343 561314157 846246820 174556431 277882157 992581345 996235469 12336008 166013844 958358 564824211 368820602 485898686 912827548 954951546 630957923 730243067 635357850 721888152 608971574 731613932 868711949 872524493 969782812 970238551 608884145 805836986 49778633 469071623 302053853 479387003 265047430 921553796 867615962 996250510 859034245 922391066 963713593 965976749 46019172 186936593 750744107 811480364 169490634 377116887 149015626 925667558 937388554 996800373 461763602 618716717 636014040 817734406 870281477 917187367 819193653 847515229 29750319 256067654 218285591 408624973 418996967 674869162 642925248 655638889 635501198 667805592 457646497 812324794 409408787 765533932 243812358 954622925 768269119 963339587 248406168 586681414 875700468 901435928 777238133 892838392 175040935 628141127 644342491 710764569 353912231 959295133 781039770 863756320 68256274 842314953 10413972 437678958 133076334 287693319 109155760 719512209 414049589 897809765 58079695 297506449 120671185 835065398 662558593 788301582 362075290 568859931 994826742 998351411 914305111 993040079 370617759 528843716 9302758 552502507 133769947 685178709 977496089 996080689 367670988 770153769 206164452 833830974 856027026 913980295 840800017 943081859 417091384 575810072 243733612 698317697 850616404 993748088 133312382 810678832 402381047 554125562 971494676 983222803 396457468 917574297 492036437 877704482 182398548 194648888 207712137 882802005 201250644 806342439 795982921 827964210 875216417 924831942 883469548 925887211 911828476 921730271 215372387 488066148 78450720 552511820 49472035 76229888 696084382 732021135 525267117 956920862 939697556 993936421 770006397 956493448 839510915 877654370 229217771 426177897 320868922 620688638 343100010 843771552 499678225 775904284 486266370 543599168 504321226 661796850 877860367 978794545 264875048 546517215 522564853 562641651 678724268 898704349 85222666 940175554 168418145 849670548 857950253 998794413 391336671 699838913 788958493 802111534 418287570 664121155 869180857 978556321 323257223 340574217 423758409 501574913 643390226 975588530 993566594 994437986 492604431 927481365 720854766 943371347 797843770 896121772 415020855 484954186 603559077 726434636 697289643 998396986 172658809 578015249 711450128 832251758 368899266 959213331 212315271 365147671 538128674 960570866 749445722 778115975 176090703 311793813 742346009 904985963 993949194 997244501 611553561 894889960 481520056 772790957 365424306 704491196 230164157 614599959 542733341 947276113 839070801 935787939 75811716 727384837 779201909 947652836 553311495 600704997 650416460 887317533 512117000 717822673 396283004 707218518 232097651 787298293 79326790 132233388 356634011 618659405 105442709 761293622 394458499 509604513 872739401 960393114 627559168 673474786 487159412 706014245 2609965 371997941 980909540 983662121 261351416 403733233 954423051 969661750 440065882 957712298 55365796 987057164 513391618 851751606 338225513 985569738 504008473 810408935 729654351 963574327 119808379 399662868 965993314 998517074 896535603 968993018 174844084 679742845 515742395 617339054 235780706 619024576 836130784 877179798 724880666 731786024 993454480 999295455 548356446 999760117 414971406 693028670 827634169 960113435 275927701 519613413 729651068 783936643 227572757 497223478 853567475 880892710 819426775 902756693 221682231 381022360 581735415 873047548 329835335 943368625 983580576 985320620 202882095 591135794 903538363 946120450 530707814 564673641 285610232 735589780 123477079 479696632 466903196 651745678 889238038 962066767 89623483 830601292 271331556 518926547 608894347 852351563 934875958 944491414 676757728 814657989 951612912 980221015 448707447 979861740 118476434 760332626 535122873 718188689 641471339 750477534 453483675 733397002 227432063 592553892 463279374 890650708 553936708 677242866 156221807 636700676 714562232 871046241 113252875 252424360 177316758 306825671 437766174 522679376 512237387 703258478 738943760 968083319 791267969 798606085 93106729 135833770 145654176 514775194 406185934 545508804 882031096 997386826 148746650 206395182 207004811 565269668 377749720 912789044 992825374 996516082 600138792 631705377 617755490 760623954 939957339 994460609 468272285 771043123 441713380 561887680 969379034 972806280 97694753 455966885 171676171 997780331 95987277 527361101 254635067 452373878 600561322 848308056 301658429 580480043 430001256 871468538 231338295 424200940 349300617 422884709 965485599 974244856 382356209 903206332 994205343 997098192 362565915 875080697 32922077 33476029 257337522 403344038 310314952 974252525 918684680 928119599 352752897 625128734 16026916 931604802 138131062 947961206 135658903 152164924 655559935 836161229 834223229 854877346 183276105 519454048 72430221 330978014 145962750 354588348 13000282 128327458 183817377 315189562 393596217 784793018 5003646 68968514 280306223 533074849 781797450 989871209 143265774 209116692 926487237 930268275 637550881 860920424 205878979 686685600 704093266 876231674 695456314 734203025 843973629 862475341 611522778 971554027 559594351 941386998 265979288 442097646 516584845 604152662 214898080 371595249 229193537 258873861 418218490 796668268 426369539 932219158 985958021 987514542 383903552 419574829 346155275 384647727 352751984 614476266 289005396 660696466 842217542 869271308 439957979 490423853 668946048 696375767 940089596 994296160 873639660 956889428 573085553 987620700 341187499 604800847 214208887 894574534 854794044 856173825 389684216 595359117 402623514 650115215 255823525 829108173 156379276 334829470 584647175 778051019 54717663 804841221 280614515 710332246 884518765 968694341 66879441 661451045 133431042 310763841 821309310 885376494 424711779 837046900 647318707 821067395 682317447 810057865 626136702 774884248 508816026 710229698 239353524 256276890 414039245 839285786 90473906 942425122 869407246 869963352 362057453 477986924 644496592 940268170 80328506 249287529 621754625 756980139 749847375 829134355 12961581 895859034 851653772 881361559 716518212 812387109 364094198 519559129 704404433 806209459 699209129 998087892 490530661 920502755 142190155 234756362 525030719 916104272 750447423 885876884 514683432 733118264 653853072 966932384 932300783 952359833 523458893 727309565 289288052 932226086 339298133 649814326 837306705 862842399 576855133 769503592 403016459 565364047 616310564 686121994 679072259 961834442 849267766 865171977 725810178 738612978 672268256 853639416 155796102 340372534 538525057 716238346 462124751 499614104 492983241 948489326 998936788 999217833 937134182 998678636 657225246 868303481 291334283 737076186 47115799 126763126 481681093 684871877 788941320 863190832 553586923 563017709 845475437 859425566 37856321 185559653 553158304 934929552 75957454 958584429 632447894 658714339 553836067 748260633 704915772 942654714 787456191 926546085 210156877 759981115 574700222 634734065 689557472 736822907 432125431 481194117 780233862 882664646 412656469 500748237 172899360 398592755 890561640 903174784 94812812 708855588 621833110 701646197 18946498 426572543 835948950 945274914 714000994 800753294 200562541 624896962 288057486 625430764 143071298 339314506 398591637 564651829 495411715 790356478 979586739 993637440 525740896 873104058 213093290 484447772 596470484 758820107 913714097 942596747 255257145 827811647 515441676 907889927 639181611 791170979 454131408 984295321 15124661 72948346 678638733 869537859 727803725 849969425 748041139 796826001 868603277 923431620 196440478 894716527 260607128 470934952 358244394 486346513 127761711 679255235 644955471 926259680 802089519 836222944 851801780 993213891 198073815 925236152 587560044 860045650 193344858 889917039 227522783 577438730 71267496 246304276 334260659 851592390 875180250 958821425 678071523 966096445 174378399 478536833 289862412 683902991 344735593 613184022 918517182 970507296 855013312 920090306 1645109 527829442 824695920 905479751 346433789 876698182 141845563 351695414 998213886 999879408 847566158 925673698 146371089 373361665 177695719 415526888 899261375 904211599 840568907 955344684 733280377 849983307 38262386 671460056 76767116 700833680 344566392 419096223 671362666 741287234 119931008 377488297 181607761 586408620 251140389 366658428 803309567 854073673 732422240 753031457 309189021 571578539 201573332 881080189 928575656 943642502 93381905 286403120 627317284 984209649 888070166 977525728 476791929 738280262 816356795 965260108 608070285 859405007 331444770 334497259 461809088 921924065 510068168 906359117 889967595 911045725 828106562 980524615 709229402 823609289 200903262 611915676 627912592 983406064 238109634 954269554 90408644 927348727 887980873 955825691 280337668 934063437 6025937 259722156 453464922 806451176 723424009 747793124 676943068 723968960 262723631 909052813 625551584 779445353 124202118 791551657 936087121 937366347 209554550 723139094 470969766 831326822 619119949 672601258 440540909 552469879 152309419 327860409 656517958 777391762 511795037 663815190 384965290 996312954 216612573 299256959 459982434 938666486 390729727 859919818 208098815 322383561 827049499 873593108 189833036 523317872 440228610 782017167 501259061 872529665 751005374 778333041 756666900 862067004 934965159 948491699 402185275 875890618 842658145 849888127 665963595 965060772 934862270 990527435 957140094 974752543 408047566 657959088 981092203 992766307 595973047 807246201 700969400 953082787 566502321 911724962 232315472 608266742 670211611 939150099 688820985 832216778 839653040 848268186 417474812 949220695 179150234 991430318 85922589 180855193 724746853 745883105 667828855 840879464 402055277 874224540 277923536 853804307 703749902 807476438 330549632 652821051 212428113 947017227 802120707 950259287 394440065 555414811 790551881 916295545 857070198 914497225 373988709 704140228 990451141 994012940 441807780 634902774 654937202 839457277 658002005 694626505 242411775 925998365 154971707 699006846 614291512 788017644 735702334 811654172 466010457 855645234 300632275 807386629 592779892 762408110 427932229 813780627 716738491 987375221 778798316 877155292 577818193 734383329 948120457 960375941 916083724 988202008 756969761 757855858 885439462 906624594 110290624 829139702 849587828 986822339 933618819 941422290 331743947 677928045 136493540 735536237 121046501 471159008 211471743 557517507 126503601 619216828 963092834 981443725 711985727 927796948 244306244 510086097 464205934 609456977 381101729 522283948 39777611 143269285 424880885 767119803 698351162 985268947 615350373 875670813 241067371 386812166 606223855 858378858 402815948 930096960 889641781 987686721 68523512 363257618 544909023 856811284 713807531 975269381 292463026 686244349 549877009 910020585 939798750 945900475 474811330 519186931 533990973 832464740 64146764 748621165 929465359 938915838 873982784 983647356 800950376 838340968 148798731 402781640 872938109 970766999 987191533 999997319 119263875 398658065 90769253 125131884 700969869 968305583 807083804 958940046 307551038 684388614 549889967 856868214 469414227 563373153 339967413 664180164 290826389 408624764 556728376 648329486 665464068 734270102 656046253 969484739 251465175 900061547 311407433 880808650 801754895 940516446 903223181 918317333 441197998 888043640 81475427 378312700 547811933 706199530 823730057 945830294 779707293 880920686 352658932 954838029 987979362 998130006 713755652 813845230 830726009 990800230 900954841 948909178 260647331 458203943 537171464 761725690 396514768 928539579 756758298 793636906 333192421 545758223 730512062 770043338 308041019 427050930 368724610 470396293 682204379 760994552 872364087 929239239 89829465 574809329 274770698 974194604 558157884 891555734 624119516 637810393 91811541 172388632 24157021 543092904 263813135 529072969 910919016 959587594 829831345 892153988 700603963 841774027 777408702 799594391 831012435 985645487 594453270 915653749 463033710 507431878 565725595 885534613 425423151 524407911 471665855 533351306 166199996 713201698 310784191 470768959 992938690 997643324 254740674 497697511 638291997 823027291 916542833 921865576 356300664 388668003 800014933 906562336 64052668 293782427 647262302 978778059 829913595 975502244 745641457 897555740 253334599 440989860 813148790 876726771 640169830 995033744 608230479 790375798 699162609 848387921 218220182 330558773 127925985 166054101 386306290 551053233 538760642 662510871 971032227 989263622 74037553 712308426 96705019 686474542 509101630 835978404 113611371 748856995 362183326 557860842 758079712 827743149 123301936 481975343 795294898 977680445 357995197 966147730 199028210 747064184 454799914 900769331 613954661 782777691 402416242 544316763 835624195 854260133 647097085 813356286 925652734 961041193 977242313 981571260 382520192 899982974 760738738 961141917 989149662 994591668 573937296 756782202 901555688 947772124 553775497 852829019 408310007 620408380 118364804 258166286 805345850 832528939 513149946 678830379 132828757 301770670 125048818 892995901 706712361 717680558 334509635 765118560 712613030 767270445 39970679 610844345 796376627 994821677 402739250 486628925 312217762 417978562 632939866 892156928 617469368 851866314 957464160 972509043 212606388 627156299 916971267 955216471 46153098 342712343 422878984 580302057 757943728 790626858 888292383 924499804 115714459 332984543 808706690 964893920 222833784 429935939 138021199 892465874 93975095 120492303 806570079 951560358 172487267 591162187 453402062 903997346 360487498 685564599 150391938 497529145 966178529 984055616 125332403 863648031 873567659 934294138 829834551 919498161 88507265 908149849 241662735 278556979 559039649 859095136 67912426 967102142 21317173 300724565 482689153 794606938 567347419 637834953 979884937 993631285 923041421 943432600 305924752 685760402 692540199 935157549 903212834 948575334 869172973 992894328 292253884 904388738 707015547 928985903 596511848 707818354 788303257 931402476 834186470 939975350 707195488 926802289 466923587 481035960 558316418 813290616 937835094 953250973 293745404 496091939 103358587 290142834 590407452 865615623 808016667 864712110 982074706 993537632 863686667 954829580 633573046 654053343 834729056 877468753 926039715 935419956 496459731 918974437 443409106 785231223 894187528 945457550 536054234 981390182 691196981 959592739 868159270 993425204 767798931 975453493 703266263 984987556 898744490 909529314 437117793 490099555 349477272 786042331 677817859 881820299 135058857 872791989 13745775 839512636 393949263 525594088 631612579 919498410 804854354 995285203 648480216 848499029 410084632 668655038 199680140 311045527 621546962 836678703 601213760 791978062 154465681 351411578 293580676 800769321 398306158 881952851 349943243 865797154 226229334 831353896 748230278 780930300 274990323 860992407 398731137 745428712 97275311 797274170 962748192 997382315 225486811 841587474 947035083 987813692 642588580 925820814 948896450 974779798 594344840 710151284 136570499 446316523 643233825 670387371 884490885 945337599 372293019 622000745 541588846 597559443 36962395 90870022 882375332 980934580 113084200 848742438 960705159 987342249 223555921 881086221 812420987 841949185 734375564 909596066 25896969 672258527 509783962 841427527 7967457 818226099 253192417 330556731 709710030 848014441 124173737 324689433 168418753 670737669 400935665 942265229 177682742 355673716 82928778 890090328 417855221 436692704 508481009 989493481 954967313 988017961 180534479 612324579 988252531 990769965 835272579 937142009 782933252 956061813 826399358 854364279 18121369 690655594 416764616 456014457 505003174 925184675 29112922 337353242 275770013 995274749 813573427 871273759 113713613 242762200 459244290 705155577 568048309 672847500 353367282 873811953 675666498 751547887 245279793 257771383 985906799 987146995 295054008 718832122 708070704 995561911 570485994 987186545 147458375 406431127 757165454 974193021 771803591 824933995 36642981 554279807 111070542 157168833 273917822 927358711 155641073 843771662 860709446 977356171 435380696 749011277 538668131 830235989 219151422 634739377 154660314 322429472 727775499 823667633 275725004 360606842 613899249 869397701 387239782 725073448 414376130 783146685 104253407 472852965 152134853 922852546 744808200 830367097 889529404 924187932 835059556 990878795 567853956 744538095 999261452 999348171 124223085 548055775 4866108 365316800 604996472 969529633 920996607 944189843 781467193 870493191 922818573 935048067 983234604 992562261 619203914 782548144 278950258 588017869 876978974 925130995 708462949 813936525 40601592 772600088 243971875 896442633 437293869 715831109 888650319 964373707 125189498 792906211 979501679 996636972 577496014 825361440 295287536 554983840 487851751 857187873 200667168 300227018 540822501 643817828 854269912 980576848 827467425 828753940 301067379 670347772 826084346 971404091 515813897 888969086 15540754 264517967 278870398 541907474 505436283 744592531 381314857 463437323 619649772 854983776 922071019 925008365 587855194 817680603 889345269 983173565 999615464 999727531 938899207 995675729 527688073 901122946 335490464 840381779 647389004 745337308 97878959 389430268 31466034 460550871 937897215 940890895 306441762 708595929 293120995 812240501 824178879 879252652 929217676 978016597 644218134 681207623 240411301 559076658 378803949 816920083 845925875 874114636 853743670 975982169 85564152 879294517 708010482 823599915 867119108 875366896 236334906 809750887 570280608 622434837 181040808 710802769 553600629 869967823 311303081 431077636 792158033 807377062 745240988 878806969 989478782 994515460 571765764 651326470 863555658 923301236 866456144 930381437 900880975 900902646 881515755 924797631 163242334 680621888 171285306 591226741 743170705 811812512 926852971 954550505 50578450 676876849 620367327 876328898 284025774 846822468 154859722 156186144 611158595 963901793 453911462 860599444 87108721 889720801 546325052 899503210 23512953 752162592 627068042 958813088 210315148 409599423 950603188 998129673 893187765 982171456 847499805 977644327 286228381 672448983 413961671 815178394 343244643 484048246 701480508 841991087 528176112 882930139 166210273 582760649 438930749 603203329 931160177 988258915 106479796 846638184 479787504 637641492 436400251 488363314 239781519 689947082 668293643 858925105 948070196 986668539 919672746 972195592 983115596 985771212 362947854 520488885 905089190 922086904 499768336 822486140 365541043 490553618 936356756 999063278 696536589 724904000 904089514 986137796 855722102 964800893 462095687 794565544 735265402 856040021 265215674 726173930 172616051 822147822 810654967 897151424 220633317 899919990 447000401 720424306 225213089 616475633 952595547 967078629 676579301 756419503 363117253 800737000 911857050 954330364 278017426 759800002 180402317 859543713 145321189 301119898 687225627 978224871 929272482 960653564 575058460 794088351 20823809 115792334 253591035 511174678 616798152 783473664 859847665 874778822 779880433 877426419 855214047 874152854 324026044 530859041 110932797 624751657 412418491 858716325 42414951 658253933 250536486 267292992 878830683 952622952 652970971 691838922 645496750 707941091 11801341 917468387 316503328 948175956 175468192 830422418 613480920 800730551 920905001 968651348 82215256 705431064 779911324 789239567 498310435 745152564 71528618 260787736 347203247 722704409 651322548 732187921 157646192 991045581 983108634 996247497 7919108 604862014 718603690 954506961 772336516 802752208 159963977 800027533 133771047 949577302 326740779 774238199 838775938 967696709 592229818 934195370 988521375 995351730 191162705 620038122 477823762 591076743 819361892 936862107 144415527 243550739 711236425 768873204 129165210 660208755 975445471 994449883 127980735 831886227 557534523 782108575 178353239 444267506 79896407 299047384 951141642 957388309 226740446 997628437 198157178 385453505 379759421 848659933 475698528 786690817 986192184 998482333 979563553 987096733 996247845 996414976 709390331 854974880 448150020 988205749 874258591 958159937 586247433 895187779 918337299 966868684 138085045 217069495 588269542 636692125 491219532 825168484 265397040 645982464 126420626 925070886 608961717 834189807 786989816 996321157 653934421 821343970 9367538 543698395 136183484 737722714 136144939 525599507 119254975 731855376 386496203 533541973 232706479 404648272 577481872 878439738 874870301 975785959 191851403 634852371 858170566 918328637 405876023 791647533 469610015 982044366 565703177 751525631 451813990 813492410 695480698 956616416 483312081 657791275 551975871 974510485 184300716 772291974 911237315 913771769 889196386 900532002 297940093 769834370 63317534 579278447 984581460 998470754 396992620 426342173 548392232 844574438 902022763 974318503 469728146 966260942 411058800 684342298 617814629 788741397 463581321 882249806 57355064 589121393 864865052 901975325 676307264 728259970 918705341 926313411 778759382 802791812 531556468 837603120 236753275 689960207 31306614 918421149 407636270 784988511 63922225 160864942 195747133 412192052 664262494 731726471 772106737 861090200 637277362 803808235 68025029 945472728 6911705 184446358 960906921 998399306 20166315 634287923 461845396 672222725 293151240 313796209 67251579 835220309 459150834 862441992 205931615 558412181 362873437 365722618 791535448 867909077 78610984 201762990 373352055 780245502 722829269 933706889 201019168 407673560 822676139 934564086 988917571 997815493 583017281 900699633 64044728 379215657 441986314 463758508 29715597 907984351 522294862 570116746 648070011 659027347 163730477 363213732 184151451 473525973 579191417 843623084 761378170 904643639 878109419 901598934 110591091 982029805 834094188 924031025 251322425 544734129 754635247 768165113 43730147 80891687 92971697 575398278 284147395 924949128 641140610 672786543 126839055 278567340 47690550 338522792 365657154 773487902 679401557 720504165 796692087 836297327 823579878 923431116 624967877 984810463 374028734 677398193 756691004 959813345 900652469 967379273 419465640 723338388 760055192 949785362 773035080 902671458 509633690 982337889 544297001 941817562 398462347 867661456 586803373 992819363 714989439 883685727 820947512 910676188 838219968 865639259 154549549 672258328 984347955 991304385 908075936 922365761 278687783 679827442 356520395 681577736 578113762 628844541 727921094 747156210 507607608 737563868 245114391 828304540 802069654 856504910 116043913 958975128 758300121 920301408 796470980 923233548 855038297 938427399 484076741 818942271 587877521 997675052 880279973 902976382 204920234 579298607 352763709 681148949 345370523 733757717 94844049 623677901 581614298 867503634 649832358 947014678 44324258 740651821 134133255 630593205 338036219 990033494 600174496 644943740 618244800 929245216 16261699 580774139 271251674 432251484 99400919 609794678 58509019 587669691 638627312 800221324 437415272 477413497 829126648 877615024 245585962 559863588 726593987 730498911 85138943 630140435 595665875 778813479 907125225 991598515 727949922 730101196 228906585 583543711 764088430 896103366 629629644 636109219 671768943 893504130 312317382 755138818 570714276 924858261 89505749 974840356 996720482 998671049 69522134 263972171 869476441 927435625 92014525 122552130 379566095 989047091 355320650 997164546 947441171 998650575 41527422 884744330 470916815 473721835 694033522 891595505 835376710 995337844 274816336 992758715 538998094 858547546 194377702 650171743 706172711 977554388 598601780 920594652 248062455 886054737 995459211 998226572 509331770 567718518 274583432 320146526 630398535 634052621 920371289 939569895 688604845 908670802 363940329 741497680 332943309 990180762 475863062 607241339 488673194 747965858 291581121 940286914 519029686 628140709 341377712 801740346 494864478 638098016 107191094 695927114 984870825 994672188 709627868 949547880 718108814 982264914 394253326 815929776 604367729 902649445 875855032 965744977 826610050 999633780 332923329 484680268 316291801 579788070 217603153 939257919 138181067 726347455 890276587 928498085 185739882 360088046 826929541 853856851 748249380 841376662 422000460 595118409 520031407 889011743 190465491 439859373 459154629 620283831 264035964 931454514 787974600 804944879 279013707 979510493 928519812 958492114 486163790 648015150 226410791 518373216 95376019 924213475 214413701 292559159 918403652 979963949 511818439 563752417 511966089 709924557 805936338 823967560 254433226 325128434 741956723 885068886 481395838 798206339 793634925 933406112 653604895 852151252 855015034 949947962 292965308 960664231 283120570 457123930 495438722 662463417 962167834 970240477 887673531 987982664 872858788 952149215 334904923 503180532 711589066 861307963 645864946 969133825 950941960 979001048 848867780 873267804 867753376 875018774 943945539 978278940 826565192 856658841 401215252 446168215 235751316 801132920 853137742 916805206 371446934 389273079 604578920 630665084 500692439 740855308 867543686 920518214 27389227 713352015 506584422 746493982 720803995 728508492 500135249 843810071 427934798 820389075 610496547 954752962 476376870 988221839 860763022 934251078 671467989 803434238 662441361 965729463 895850944 980085812 681509107 983031502 124865889 500144760 667891768 752991381 470052215 483269228 369595614 752390726 129950531 255916848 454858945 495343201 24561826 176055072 394082643 481610969 593372572 904010182 874803692 985296845 611229270 630537395 553660419 819250321 94624695 197575194 622065975 855119129 840338016 878396546 819080465 960834292 148123142 647350705 608425116 644017800 452799282 554344314 888496681 962546398 757582302 795745802 992078115 999521601 434806959 504977033 816316643 898089694 443311378 623401381 103101547 941636243 220934182 631241371 373021899 433272928 144834848 246252260 320263874 758170557 143536982 154273849 484778295 755700359 1614054 805605449 608182380 869334306 330604289 851248411 103357782 455785138 595188561 610385983 936240329 957724745 926569195 981632617 117633052 371348774 910821505 979982369 316329388 623861223 20939972 609800862 927504008 949815906 866622591 891232521 736882412 982513602 472333867 474967874 74990961 353570428 173673786 230961600 425742162 677548587 653317982 848383323 623569398 793490145 594585780 897025822 408321888 498827063 904862332 911260686 711654558 764662126 717912058 981388305 787004272 823478930 877317187 928379945 891642423 907012874 748823976 905978828 576284990 783852531 769975240 832611331 455680592 761330030 128777498 803137740 539448913 892509882 509739275 659639525 850350341 911154293 921951852 978741040 603577232 683616094 537550524 604719607 887670048 989935167 253859335 634886550 244267671 493373132 99291103 743768835 245851519 304765511 859028215 989600704 463912968 596821690 267937552 330239262 424395976 828002457 582870168 624831194 117484781 359271138 608312398 727924546 438558373 484839364 341550027 834868560 542163159 607027932 141253300 667965160 577129409 820507710 734686599 757224902 331687467 678822577 467099693 725969885 314356116 431646865 750242227 846970548 883636931 907490105 760956029 795970211 509264907 637544893 632558049 758213720 263190123 404368790 315474069 946522952 885271017 956923021 771533636 925179746 275934436 839765381 365794845 393457962 694478946 697901989 895208170 926266579 10654455 894751087 827572374 999669744 88741674 648952523 405040987 941474153 629425707 757232258 269128524 682800141 419398291 616109404 698456462 859409282 946320800 959110819 333690419 361032477 475715612 576864544 31094423 138252848 475344720 721793176 873281037 897796213 371646372 627764552 147488528 895972986 129046435 732581233 924284744 964922311 369111040 527451349 251588799 466669960 772156093 852483038 216289698 798247880 495350948 591916490 418937484 671004000 546057795 593933360 617627477 922184569 298573845 961988934 100410040 794762436 658667631 859245118 160603896 829065630 243339159 711452907 366823145 958265267 639777253 899682696 573521979 658392921 973537577 995701239 487299892 700726628 305793554 681745629 260475265 407284970 785404128 949879349 651320309 689761106 823786288 942789737 463441595 941861692 355686583 892960007 913499631 932560426 600992815 835396759 496873599 503587018 166578956 786746522 941259377 962271653 25500685 28419945 344497253 497457964 456985685 706901315 145228610 927942499 566276912 739706125 402925101 437092830 958025449 995141038 558017015 961220282 82927065 533707383 886551597 960332995 863607559 869117763 100994348 611928080 679128196 929260501 212692056 811451639 54324604 59800397 880163738 900847156 743158520 945937942 680883280 713227245 947368765 997495556 695986911 931692275 739262511 808704354 44785594 222241633 114651948 921302026 347502379 779918044 64106487 133277945 75382861 379233439 325696435 544542049 867222066 905144853 386776051 497127686 122943711 331035916 611426238 755030261 492972150 625140620 504918136 780599043 168321989 882887602 269894008 927407623 295303234 417188965 411147165 978830540 410240626 923947942 9361209 890424169 713504066 930689677 194518999 284231634 931119260 990132844 803123416 956890338 116752373 601030759 404502228 879825171 763551108 841537870 592829876 936998961 541649636 957853046 125166438 612527947 499229322 662960169 338318945 900032709 363492546 836428927 3353064 770454602 517759876 770028565 738111506 959156177 756243858 803443336 385174129 981730877 250258895 885362685 458267000 899765605 455610831 991419151 150774509 620934676 970573045 980521659 165908 123523505 788590876 833957969 774219327 949581314 433585471 965619074 68538377 530939812 128216528 138880314 263342038 680177275 20569749 538773377 554528884 904027876 600303902 675702801 205124150 280283716 525233549 649535904 424190545 424224784 395221036 492997064 836057357 952459505 718042684 775543239 41374388 612640091 591844171 912414575 514380025 791098822 8203714 419599982 373795835 381775714 89064959 542441629 448300340 826123084 628351109 760807418 305340988 553383423 125160812 306533800 89515499 810105099 360118191 934368630 164160635 729743629 956128510 966557549 950013357 958344126 42299511 388552277 478913458 771293178 752719984 776080918 166109519 804202315 269520470 581214039 324962455 744004122 553467596 995553942 795023046 951979118 500771285 932029963 726764314 989665737 551308205 887299507 816285273 864908974 914637383 927745734 552394670 739300893 844965860 943558214 251827734 896715038 941415583 969458588 85150280 695255392 177056260 621099176 864640532 866063959 733406932 849572150 667230907 771150265 179123690 944470425 231844568 888451135 972184228 972506813 298778881 726265827 805462535 979962068 182996627 282135344 192001676 902322273 27174253 825614724 629828163 896854719 796179149 943895496 317136829 343624604 647607556 909726316 206289355 877978717 996107193 996817982 366587799 913978995 284883434 526128000 374681759 886120482 351355530 471519929 681623071 915297302 209432670 679973877 504251570 915587442 239905047 381881196 824129203 831200825 964667445 999139163 656975168 740325994 190559927 966153927 69794818 313942302 40442423 171574612 876203038 956871991 580167676 662136522 555992393 938212756 902786290 919519237 787964036 989982190 311482888 673865378 358480728 734711828 183063659 614912879 973967467 984778552 288759927 440954137 782741521 821962933 503715075 958451760 397016243 999987582 126956522 858981999 162388248 385716967 165349864 697448969 447139759 689865238 43688186 161584931 393918773 874407247 330627491 508096079 933820121 999843576 504451437 536202589 28323283 857903005 933459934 985276438 84433763 531914185 248663861 784274893 85731699 403594793 175039870 631309999 402925825 525337057 564512032 664726970 293588495 643645098 882073710 893225881 471614422 929932895 276480469 342897451 73587867 585064065 507089721 565454355 159807217 660204921 350974612 353103866 928739047 983757102 978906532 984704030 946681110 985749681 437740590 803406220 917450334 972519364 853950791 875815148 742721103 777145400 188425673 546467029 556554552 852832475 33893149 625506498 545441324 795601156 367943036 454227237 955744793 976890084 213717916 269461906 508598394 519901540 17776348 434656530 276362875 419921728 652887068 990574889 912200843 964963715 753461016 778021789 372979399 746146358 82283285 421108038 104290424 981875612 671115994 962823151 24452119 860345574 167070696 701061173 207511153 299155611 457366336 528296229 268328662 928565112 864372720 882139275 504683532 724818139 845564871 965816290 782016235 987137194 871604465 875808081 624238803 986600132 202416158 242334669 758360839 925897188 210923895 961679335 428272814 822511515 425219304 771493789 165019607 406731767 167496729 979223820 729948041 940395720 343647334 374111229 945853460 979495579 966779391 983376605 424149798 854044469 26748474 142509718 718923829 783811585 466662188 777136775 747377052 996386728 607406645 802108139 350311327 368713005 720878325 959803782 875569736 921677761 334277616 673655706 551302351 885048184 161329510 187499698 774875541 779394151 35801277 138766877 608904670 725627867 976513692 992824949 708467379 813621671 890971778 898569072 853729042 898426839 756674240 961046985 635358164 731608309 575713407 845093805 565790144 573476608 296868870 981898148 380541203 536662403 704966306 732178194 20775115 401754230 859614819 989980773 728998197 884875278 270993180 808380986 827404573 977078642 306702747 709004986 770627542 864624529 992215463 995400160 607198910 840902932 724463413 822497031 651393396 943826020 945735536 988882656 769243421 781459366 714305167 888511372 30322794 158324835 233136994 233764783 816015723 995992534 462854572 703427522 475326607 530154244 977964384 996626225 734697822 859247370 881786533 893723683 373016281 565291907 521933769 948434119 252514946 628946413 683948506 867595619 800795624 958683715 9577501 368320804 119018399 405163741 38597664 50689898 264378198 813739268 252303239 266047350 570091490 729133409 807700636 940678206 833160331 964732718 56678436 866287973 705696024 745290529 581363018 956324401 643166317 751492473 918417708 981122229 530277645 732954780 535179422 815778907 992494926 996119669 654041850 805117110 165861000 247129787 138513111 856136920 549892784 982271422 241632488 678786590 580118178 686794288 949851077 950374891 127813474 844962417 91557303 124254594 628618840 822392157 374288171 446506953 919340646 955766818 518916007 973998987 249634043 508685348 489783107 597284070 475885507 975781145 180781377 471843387 51475629 638059908 147626590 905457830 738974248 991088006 153519180 526357588 626127788 946077285 666349509 697735552 691176571 700957265 998621569 999782284 202577351 309041083 150597856 830580043 701058476 760197034 446563574 704437139 528751648 560009156 254858777 713997281 607101786 915231468 84176996 609857487 983153933 991930017 302347306 732380122 239468559 795536169 460933339 667840209 263575213 311036705 546743736 749241658 532458493 862822267 434609039 685081565 432138145 541342783 540013656 725658542 715359173 879209100 191280623 835399271 269972484 496784823 656882134 892286356 452797576 658993164 463616154 518402160 485140666 675786928 602939718 627998650 41923745 744983763 816956493 957828533 189320006 529986916 724792238 876017343 635790648 788940839 410170852 924127703 237478377 460208553 92012039 530251600 481909819 841101508 209238832 361933240 28271951 619020090 572192765 933662193 80453899 613484979 183674712 418865352 814566426 882304904 195744143 629903719 632520367 741610060 891249312 919417652 321546029 614279816 441218632 777338882 139201526 181397574 358711693 899386778 288854828 420340787 92947456 595017124 497804497 859571735 710431337 758216072 542016033 757011212 456338672 589920983 799668664 836604439 344648448 650248308 10121294 328719865 812639544 960685597 204497540 732152912 155602708 258396911 540019925 740271726 101093088 961297424 299782461 712228837 681261187 928916692 907786478 930919616 449496427 821153116 765572647 795092144 154472022 848241995 922858940 984580184 985818314 989044400 431511668 859097610 124959202 660477167 618662619 824060096 581733103 623970893 9573575 52482000 693628486 871991615 419636182 641206232 955997328 997394112 202184192 510100885 84701331 390274044 992374840 996506077 586340682 717479142 545901400 834505434 771394700 868498680 245552190 283534553 505332786 957832223 525593939 760689263 848695929 888586143 691295764 833626299 176528318 801736709 616937683 644221587 81510400 567721137 786120272 914886499 490555791 652332957 588589640 922307621 620559245 645116932 51642391 577685352 785633335 978804478 791867963 828107602 918286863 986158031 299937210 867416071 934838084 956059213 300407136 589460281 434527395 548796805 760817328 929229256 195523668 343156123 983519971 997284877 180007492 216028057 10168027 975252727 250022683 565214951 670459352 704998239 12593079 424173991 300083551 620954894 861940650 991760123 943938574 997636589 533368165 659327514 389051136 462439849 823494387 965369753 503309442 641547266 359507941 851675046 741993302 825267109 158855475 349109212 237008974 411609021 276255454 344104273 348111658 909779951 902351397 912199183 240626762 808448354 39511601 761415666 618093883 768658430 251192260 936282751 967920386 991137698 229546520 411972120 490454040 878868966 407142594 774383674 989866267 997465178 928363124 943608253 165656678 328912991 741503867 836426387 877074702 884649931 362688024 708065405 262693847 343928437 234073332 272624878 673072380 696178011 476885747 668893001 488910618 867325270 113695809 721398970 1982145 360837998 343008234 767973386 624561995 930887613 665622548 774130130 385986223 421968631 732680409 930259029 482032322 533760991 315741981 345810060 408435609 944708163 519371636 528481604 102084510 890528376 868974292 910902263 639043782 729359497 57653590 381774236 995258187 998471678 203740632 863404733 940270856 944472092 384524095 607198679 872682865 971108173 90795657 673592249 756278146 792339439 784744705 885163087 198515314 576739980 312295916 534694028 124465829 169745726 764934409 889669760 128274327 178546437 125875391 711733283 12980590 714762182 382306711 717491967 177844247 669904648 804481537 900635343 206071824 415499268 130755291 139895733 423620528 691298849 910919459 965955869 664124226 994124769 864535550 981187810 628069101 924161097 59792655 654727377 799130255 826111618 536268788 977109461 577532946 866183227 746785056 908949087 274674031 651323557 904766654 966304885 552586124 807541167 15737351 646334449 495883315 607894284 427377577 656540613 662701021 700731449 83789811 171702445 639104957 912724158 453480679 676557894 793610705 825068117 85562114 973944524 150246224 575126174 628415942 800286290 13378203 570288249 391710468 594490143 470019722 543261363 369810560 435813147 215608869 657175688 735704832 831694826 440887906 717780339 522089059 754768056 5857217 170912142 448642330 524718417 264569065 366927800 626330776 634294213 878692084 950033438 7116694 380883409 823990226 928282309 113017348 257874220 56320890 89005807 481536422 809141150 507239483 911809683 970153145 990695845 840193160 874621942 527198660 942413652 244564130 283575045 982518875 982710559 810549210 942083629 758582150 923466644 583271673 707307050 573662040 916196419 417394586 575377894 161182500 776604732 416343954 469401313 750986819 980333779 838346740 998344929 198747013 641260504 791516800 895530488 233387603 303457000 899606401 907704414 999687619 999817532 677016095 689203586 989343630 990351281 476042908 516632156 538178295 686773376 343045020 586825702 647894569 662495674 749271031 979435407 963977062 977353956 800057865 811391603 53025575 53879853 793048790 907833026 985450482 985495930 57436846 560624135 730975971 793161140 667191476 965691016 637002156 784012921 403845220 761173165 189843697 627775818 546037004 832126935 108119618 139251892 711091019 911922505 637574384 908552189 544404251 980084983 251713303 639555338 955096753 995425674 334474420 510008584 169583428 285415170 500944354 733642805 593661283 763397058 880555068 932040700 771432384 911591611 49106526 242099737 153463007 219472180 504225303 938462087 203977883 538724579 46140401 518800021 499197914 716229159 762531084 798895915 293460873 424135799 202814976 307912618 221850601 959434542 100976047 118280329 154617799 282798343 988018129 998250068 975455600 982145986 345129621 864834148 957114529 973922350 558238920 891034086 568167646 802541850 97784892 168823881 3265072 155116485 917436624 957443813 320054219 665876953 876161769 996159513 903885694 934921480 581937852 913689806 728887256 927326150 975904472 996639584 294996994 610615900 138888848 567675887 578380020 844196419 919468883 966894500 174175159 274898910 754392221 943353525 146703105 452067562 82189895 174042127 580802590 601569750 431275628 509960916 258580 872215648 256134682 680026604 883224197 939002686 582679022 972819916 677501329 959391303 434949237 713250826 368452439 481660046 401539891 433083627 410909566 847751703 993663043 999807321 424410454 627147076 735863548 844464420 60658762 500044847 193538489 822581028 463966822 791393757 307910890 516911161 563190756 786170144 126376610 922484419 29397552 343558020 36189810 653626265 388923802 996083193 914454293 980852868 460682492 791313017 501967136 583998308 829102272 836687015 570353400 634780053 110604292 410596775 31115196 991062136 981823053 995103207 196260651 955174356 174484516 275525556 765105902 899047851 100345011 964819122 214083669 596387506 37628443 624734932 790564014 968342338 751701670 856221352 94068757 712257960 533254007 746054090 639442877 935333790 912935706 986263701 711370125 722295421 963921065 998401260 937544446 975564644 692393382 829549097 857777518 949818342 370754163 591534767 662871439 810301179 29323541 808528290 675975403 705434031 484125263 534898284 877475904 956797809 642805813 671748480 931922904 948521088 241462371 463866288 738612067 909947926 312533290 701279307 217791272 464070031 68718592 622390792 903027962 939907877 124022849 559736615 704039479 715190647 795381773 956453536 808363048 858626370 803380194 993160326 434146927 862075552 848576874 958922836 813824452 903904558 273661659 763866028 517116198 545212025 72723666 521276947 888440809 944779759 835907742 923984963 223870022 506331510 941444302 953523099 50452799 419955005 403950226 896528586 578303725 942268623 612255733 871646732 549224531 944277462 322237269 613047869 818619829 993324745 21097633 487595487 245036991 437830810 960571140 999833043 508731875 677916960 817799382 957762847 438010794 477811011 172186947 762555251 104626905 377222862 401801845 531794178 242339053 706262635 979169356 997832954 388089327 582954233 888516533 943113977 856870988 877666508 36371320 799749944 383171409 941191907 921267601 945515945 766901628 981216858 778936089 932872139 34285079 728044570 460721499 684528715 291131856 355565789 977628967 998122446 803574723 918105768 929687233 946926448 23103201 586401158 375682021 892816068 223380586 230728745 592311736 655510915 219014110 900044860 889352533 972535988 867484890 928488919 111453424 526794519 936796663 991906253 862307612 974755294 682745933 964594524 882166925 914499374 867956849 931979460 99562934 885882119 953769487 997411886 204264684 307197598 914948470 923418485 525716610 742584338 3917827 28340093 418596110 880677696 906288125 981476686 543035537 942620583 170639747 297343173 80134030 218590214 796166452 959126511 902513281 963880767 164239238 360457865 39599033 737700265 234758272 544563001 357934507 620928105 364440524 707599663 863565217 912265496 902319689 936627748 715365055 851481360 437211345 619680002 253536823 684601442 879647146 915751355 99199811 755225246 32953525 286104960 66327122 148323111 793456708 992928133 751679379 993010157 651143486 660709429 291875387 977132467 269922294 527313414 945003058 960251035 658489734 764758683 359726265 509308917 604773941 824073501 899617486 954562111 80751486 252109064 956227907 999388257 465835873 474791908 603864870 681037766 483845504 916017742 334674204 938372897 905860015 983447891 91108951 145722019 27372682 449358521 314893816 767484768 615392896 659934948 268192239 494425471 920054542 924035505 959438734 965367085 828919435 994829920 77475132 816687399 864695751 892477321 787433235 822287175 902654842 933048992 401884821 424918712 30504279 252915336 898802091 919281892 356678488 541580945 208217597 680554256 265780733 799304732 130837038 385401131 643767618 770310223 97560022 705677532 330743914 495045204 116466627 130659410 26175148 844819939 425679495 466049420 759581010 989168485 46474886 82588318 549875412 638427894 841595199 996614771 960814063 974129083 608635783 804074537 8629191 9526822 789800989 839763031 587198598 621752221 164702219 878603368 988659512 999875466 103728448 190118286 526781278 852444000 35354741 281121455 261404057 682192659 425083962 795251263 516828690 999256955 972260563 986575353 433776934 464200379 424133540 862920356 266933540 659660617 992426387 997744141 640910113 943419352 571695305 696776465 678907368 746666260 882437875 894547404 857962190 936818265 98512232 403880390 239558546 825823762 905620345 908153853 53062731 467058740 446136757 633880722 911786071 956007175 830579097 851626557 48573081 443496349 100550626 184661883 590540032 919857378 815634863 988109297 363162730 911741251 525335779 734737090 223251929 251298837 293192067 297406884 5070058 931548590 689692096 737308014 569565514 753728177 249078995 363727223 918605692 992867811 438128840 849081427 54874488 736529932 230078078 870892990 87462834 378713828 522989478 700335189 129402068 450768067 622952141 842122409 208259205 268264240 585204535 698141473 124392007 178246191 836687907 869731447 158956655 672944344 583568834 805343048 279441344 312756818 583063340 842438217 709646820 876588219 919639551 920694370 4051453 327839199 487208553 667541560 486489049 582111490 978923330 998569965 580416363 696994362 541000525 839450147 29048031 821304430 639537112 915123511 918700868 989468558 237585153 377845864 766042178 905418569 910383741 913557723 30009790 790031365 568853438 738911716 592292643 679594759 175452452 592357450 189195575 701919787 538252308 635029022 975976322 995696822 435878683 674899833 638114891 849355943 520226751 864872409 747520706 768023941 799503837 929654040 180180423 561427967 10768316 169446507 821463411 994800362 534424149 970449903 919111713 992311452 530416470 810414520 882609326 940592400 872571427 989861153 719453826 825834575 390184195 928135188 847192062 879492640 289975608 971041246 663701737 752830709 737432130 965124533 200646370 857173785 184417442 516341869 323872412 581352870 858822657 991890535 940288787 975360512 973998671 984867585 710013835 805903643 852725953 950223170 638853723 711581428 5728633 715712684 78902020 654398591 365134940 911312753 434268692 446354522 52440438 431429676 861784486 957191040 732567160 930337164 634870288 811395206 600425929 603972684 54223309 837593153 254274108 619890107 484441401 876320310 610660128 681211244 153472000 804725117 557189199 903335936 340772093 343738031 497499543 533996693 970860807 993633733 331980346 756925876 30555246 650576775 208827053 494643718 924203920 944982686 453627911 895233574 599578597 692621980 347591028 505217475 594655664 749318585 836199818 943946383 844078337 950149944 984716603 986034295 17683561 987209379 747684125 782505294 752491821 826023293 497143282 722870339 974899727 988752203 459366306 809465003 795027278 919332448 15233797 655367339 509525671 728962306 491197345 936139757 36507694 687391932 527497950 948080787 704605114 948903572 798527383 949590319 220124520 648374396 450201507 770569053 683574285 706100086 827181846 985159266 583848201 791680007 75474821 775432014 200380148 265495637 415838218 742098635 11491348 133106238 29770438 755948205 670034676 869801479 258914484 921447754 392615429 913914582 432089769 496760177 661075063 734514978 275799463 932852958 917483178 965434583 786319791 821221950 45451077 118551550 382431489 959208762 680133508 888623035 528490934 980825904 483223078 742167215 753635507 793522726 336431317 887894026 738926360 939935260 685454733 879596191 417066662 748355533 857696168 863575089 876567116 974357337 93889828 746709152 987234130 992493958 380433827 741313386 540970190 580300236 509662804 973611306 822819857 842973675 680942434 829264581 156177059 478208541 164230789 922976749 764032160 831317359 481105846 776796082 186347427 851134669 380078665 790358644 882396165 998890173 619478776 889425333 907280843 980263809 719799782 887895949 783304052 882278443 384389881 731008004 147556514 902340327 234346591 649971963 543692505 840663359 818560386 977111000 660696008 837241214 388736791 506448789 305671335 800395087 206995982 810007034 149045427 933962811 772919571 836672094 430507316 618192171 36549326 298811769 128647244 472868632 752409634 964542074 474049280 864629706 706585055 713635427 844133574 850381542 175839039 275870969 768106901 951328124 323273866 453608003 527331892 940147572 772465204 809387632 234242308 994455651 4028527 286475116 368051370 483044030 597324421 878036308 228427025 466457669 734374232 998466497 367960784 722915594 665075007 675474606 169163612 570198302 104066170 792738789 42168699 84877932 796115750 884908467 949718946 955325926 37396000 866918559 568268062 632403805 4955163 19316979 444503740 764801447 822457236 910823835 832073769 949836396 795696904 876796434 560505047 694118561 205531557 590357160 902698578 954980142 139136058 414536829 925289861 964041785 828739678 993510990 547370035 673444476 217306024 361505760 127296904 920268076 643997626 826413019 908884495 953842582 839986792 945026930 412611113 643983940 105434263 569211504 843403068 938029394 343614967 658908631 115063372 981072090 43076437 754776623 601514863 918871356 770196282 890283256 984021633 984843012 479866657 634966517 488743226 647005619 90052906 602605165 713991901 802365251 529892808 719275787 788568155 998232900 742188023 930286331 135934855 789124128 59589760 821803673 307945060 537092799 646024211 960862492 579644393 640134584 918494413 919225560 506975696 966480065 943093766 971627353 10653544 626413490 362908192 982936848 312407116 487354127 758810165 901069151 109030653 839087120 388516497 829129871 38131632 306456455 947009516 978390517 238248516 576125086 896260078 957004278 694411312 749548243 739851793 894549311 201629480 497946875 28392476 664525109 295496162 519469524 857947729 985212769 261050822 898343918 560093094 982493337 125675093 658366355 428236715 751273236 684625554 725156469 88044386 698953720 351710319 432731032 149179245 299982829 793212502 798421073 310354610 436159515 910509874 948988466 841528273 888858592 802686889 894593108 84093627 181148764 574465740 634035829 513405421 698631153 13498344 144280870 97899748 220545351 512860035 555816554 787495637 968000415 282559233 870400868 250486589 849796397 273124335 992670176 518993394 572388148 147809781 281698798 799630375 913303193 508804005 878510658 946428430 980303265 561253846 599459947 845806393 899913134 82661991 759766697 598785250 663552240 519138119 552354885 351801611 601567674 788441419 862221955 734504724 849616928 398596942 942595515 315274904 680962597 800210588 914012301 399750576 819113661 486340425 657331121 417184300 747801644 883049560 987678857 833949595 906705254 319811406 548443851 998154361 998800408 568944436 613105433 43154344 715213070 923487738 992195149 11256088 155126540 640839231 851766972 331401431 807820680 633165284 805655555 410197026 693586182 916142015 982275710 941313479 963968128 432316289 785283305 545876565 971279386 858144794 886278283 435953770 456611624 394129712 975886547 129093829 335185038 319842201 479073129 599592881 920552029 523208274 980258607 716874926 858818642 635045345 802211941 831608292 859914111 484597365 742307437 252376142 883328920 809751669 941005079 726487196 883360507 763908243 883294050 375745877 474733806 151801327 159908916 436401587 945195871 96512874 838041889 847435994 918300808 996250587 998182611 483876619 957362343 743345824 777334531 598110461 772378860 142836133 737723961 658997320 940324282 995811927 998591736 727157816 967120036 682259689 737844724 695353383 752631478 699091834 818708991 527509656 673258031 46940300 166661564 799309614 804695966 546904198 882652420 996370891 997707755 672881045 962217036 361000557 748693700 942507530 982418771 421367185 584846721 389919970 522481266 439325722 567264336 98645073 702129557 511292313 649394461 671510558 828012468 716558074 986098658 691998318 849531800 659189125 732463765 239605391 525744994 344646123 546671207 437883875 692245195 960540782 969649188 286406503 815427108 370952107 496049587 449954809 521405074 633719985 799936152 851310916 869085700 139012249 181089826 903522748 907218937 640168011 875804328 699475907 999910406 330570779 366644977 363424985 511695715 314379755 981080063 195939037 640584497 855732265 925045913 310675580 741378858 140623599 911771747 658714656 987105877 942452018 986393028 236852257 563528795 236477733 296911927 17657744 511855995 758801817 941120941 253582584 928585346 445611090 591361842 842289092 889775417 889619985 973636969 397755486 581548091 870217691 896444541 11906214 525303627 752669203 983737721 270460154 473049439 67381978 280263229 424687291 520939047 512435647 724197805 117325636 927842491 738851618 744441491 182879847 387865351 870653538 977973438 141849588 558928800 777400184 787939941 9836379 635466506 987457181 988373990 168771606 776334800 591087041 725266773 898892029 994395289 197821697 825408384 729347125 850748599 406348458 750568117 55104267 166021891 356193430 959799408 578270055 666455501 279399738 758775643 301442069 394607501 545528403 787746674 832930725 994879933 282481269 975881649 825843649 840197615 161796331 937987797 889179030 963990717 253204128 655178601 242762618 998066405 80193876 500922113 893707747 961225679 648627239 731060714 19623415 793113389 644555162 950934523 810450682 901380579 609241771 649693819 874004265 929816039 222210657 274179071 341217503 813253055 992130649 994086630 118962236 201224196 366240301 960458315 456581702 689861379 578099066 955737587 115412600 457802748 215862432 871941740 678929763 869650175 885508949 988612603 567050313 680972841 199029027 605298899 922353358 977148880 293740559 758694169 534267503 800354688 296063918 594860767 111053160 854013970 698299885 981661925 297585689 440879978 912489886 965715643 958517756 963992267 587164 19382521 847503851 889926446 517114427 938298305 349295407 668112523 790347225 868876919 212437431 410054414 780437498 980666423 427660838 990720580 356744092 998901909 664668293 989903026 329262081 595785264 419122413 719490669 520959383 625296977 82189774 578303503 397794401 989419451 602054623 631774730 97265318 970375068 260262164 814633473 714458697 755821911 255917927 602579844 940909510 999313224 351776734 444603412 929257208 933346317 193752002 883106471 550256600 993863221 79935360 751727653 770619810 922593578 792825629 966130983 555815849 791250163 280865413 699878515 794747151 875904895 760418599 814035142 111958525 231229431 577159840 674711781 303631913 462881645 623495190 880712870 553205916 758488750 472642986 760802436 538781114 640708912 727992489 911055068 240561772 638945797 807926555 882012845 699855615 736582299 501828457 504828687 828059137 879119522 697583178 859123258 456071974 723547356 41480243 900011249 997621794 998622828 206937343 764598066 334363569 694821101 734927764 994184756 889700766 983240050 953490107 976762846 830793242 861082836 473680390 762097466 764675580 783315310 42374170 880580197 984871415 987695307 197489009 457719566 298273351 371153474 214218340 900212797 985401626 986015886 664452258 803670702 583584947 984506284 114693795 756581197 197618897 223284150 8067324 143665732 773240422 870488224 16143745 720363097 638611035 907041992 925649167 936452888 699827712 796789124 760012777 806552266 125838235 897690787 108420069 588974469 15089540 453213331 970653581 991857998 168662491 717785022 144559427 702102260 580032257 916877477 149218260 432095880 825097711 847976134 857840106 907945498 847175267 919722826 220283242 649100987 667470608 907513989 569017094 983819797 251781978 762204510 247164783 729861336 677908372 924815044 91530205 898737321 665493759 888072207 500981455 928009778 917384789 927607404 746899350 831390098 143954824 157119663 940205712 956778005 880513444 888226795 567036328 976777823 843082186 915986300 233336614 983773703 265150079 396007357 775474431 984488132 545124006 700622134 471425992 994794005 509011209 540320197 775628494 987958560 639053759 789891089 859694323 979351866 718215864 792444682 420340521 871589887 7911684 25739876 153850817 815329103 619958344 701712365 646974838 738393647 210940086 819335713 207044991 370578718 883831665 966315855 351122099 930833428 237929861 700580652 671939928 938783084 909450679 960548009 976829954 992721354 854933170 967780242 938799790 952020821 921037107 977799749 454315622 615378729 855195255 856719202 279920197 295287081 715060729 806554322 818615284 838598343 695967732 891815830 994536355 997621976 952360956 987626742 796923497 942069091 39419053 816198576 322387008 807360546 670110408 731453446 781290360 903972087 134856776 738016904 484969790 503960818 190864275 414055435 68626382 185715842 788509811 952765514 884014474 944100903 339363675 926497549 404900964 846024008 741165525 766039160 35672507 802269916 812546760 857637124 912350798 925949361 610530917 710907215 169090365 924275984 184867765 578764035 469817848 785246191 178896652 288145236 315736628 320842906 854909259 936756694 346355862 529232517 44788395 140692354 715115411 783850268 361488892 403931125 289648746 888541234 466866405 744073798 13103609 455754532 173524452 547152173 798409260 872622249 236869518 903235496 648471472 663259297 444434980 927576019 349856192 499904670 934258669 978071268 180363795 609346382 197365223 869310999 34136694 209405574 814463974 975323953 612214786 731144114 896211047 983588783 118100540 244474798 183144685 897440858 339026973 409495537 246402041 918345539 361757397 472187802 708229603 772218585 812973928 965485664 872455188 873156290 779603139 907434408 310941698 554446764 608514941 770007442 963500927 996306024 881678005 897391892 852159332 988568435 720891196 909290286 942996798 944212640 189782558 597218150 557863942 628569824 125957353 127173387 128256006 382332783 641691635 928862741 541242421 622526746 443497255 491567686 436955613 971222473 540356861 725331402 758244693 890872619 141827910 368675959 698219861 877593673 346687756 573948562 700646426 761294957 233690017 653104591 97557012 944191042 439000043 638624686 463378064 583823189 909221251 928824633 51342340 961003650 701564394 955188886 276478094 824777036 31553922 576339883 567966959 764417636 567338349 910197068 575179845 996961487 810476975 812815053 709557518 803734147 703189426 829417022 321639282 394816223 3753799 728346052 986049203 994597869 17540950 771161380 120214238 426885406 33106494 997909457 119316673 511148319 446639047 504750853 666080472 880029767 111452865 912436856 406669348 851954780 791135181 904473042 799475294 889751913 981370214 984527726 52842203 686708580 552120492 940253641 674155003 796513550 972226251 999669823 365163335 376441792 847537138 853091041 19245098 79378710 75920487 646458998 619105752 690870335 986112929 992651726 712325265 746184937 456257343 810035511 422383482 660262060 286587676 820641322 160101318 550102910 495608687 550175432 189669739 797617756 178714831 657649534 832481458 869169653 776308489 883254366 183789631 700658285 29589602 303505828 482838106 548291239 249967325 290544942 543272892 681982635 69448581 123370300 232096669 907290241 564780390 982901024 544475334 744235439 561909843 972398706 931173262 942590005 935088661 953629192 280767590 955377393 405679944 810588854 937065930 937637950 660922922 676310136 710445727 812633209 243175364 754251905 221368168 837679978 673128897 742861426 919142457 975008698 339141837 459096911 561031042 856917857 426298721 930092051 19312216 989299652 632539413 898840146 681990950 757205269 712010210 946263424 852275674 990946091 964364117 975022491 213269264 431820982 854946464 939846406 82109829 556222468 219740162 826551676 734942815 780095205 362715962 923305353 662684705 946804035 103308635 559924944 879524835 925553190 15964751 144042258 851116538 867019496 911769113 930484411 624224019 905873853 199887892 857897692 227111586 372231029 208974880 827964482 595379351 994405295 414318694 588917815 819821076 962002491 25319706 656989730 163484353 476520047 584347001 919542161 8198994 663093338 414375528 919135648 992676608 993474777 602311737 995080049 893266166 935284625 171220611 647955273 13744185 184792642 82085291 422196030 455123282 925591049 999644714 999670449 655129672 788237359 643509374 783463098 241699289 722442219 681870690 707923712 424202777 827007210 112974033 259698870 137330796 834937314 712408068 857556696 646938705 714472293 3264201 205945513 358396776 592480831 286269811 769120955 35544897 880967390 693668489 897833285 564179148 930546250 392812143 664992478 882572473 893605645 168058356 447971364 650221330 776569592 567527213 615093015 365319001 841314162 693031104 911086410 643534605 776410024 818797564 954991543 799798671 924031652 820680678 891711941 845354076 846011335 816837171 905721981 608956271 708550394 472566917 875692152 307750150 904796466 203294596 719620664 870217407 883725475 504680577 815479621 901850902 951193366 670793767 848077881 590869941 705846350 855013394 925760267 690072308 695321914 14706879 540907208 16833345 927574107 622874795 707134381 318964434 753224193 12698472 591097365 773632670 798830178 79404072 925302831 239064168 861905705 900632684 978434490 493367346 646535318 318792230 619297852 859097880 939596302 325589798 996037111 299539865 843580346 875274437 991643178 536312962 897835785 742673391 799844256 943205210 957643068 885636931 995631113 720091592 957744479 276393761 776595001 378943629 429696725 413531481 568382386 414055362 847662237 168458381 815322770 211834724 304438592 567486088 620082269 700520180 813297863 838006945 887071011 432706047 644167502 71273663 871132540 381958212 492144000 556877985 681521136 133839007 614375295 936543324 953698285 430052705 827576523 680299331 898181183 329662222 986416881 523281326 628726976 861411838 951905434 432699798 839443045 106191477 372459562 409309052 646757161 191407010 961985131 69161687 787863591 156534724 951154412 390477866 987194283 215889385 251869739 962330922 979170121 397464901 830921669 995369808 997136439 517730811 875205999 211239006 611459628 841742242 916304398 559771521 692970572 703749495 761479687 531361213 967275689 314502145 895625701 944583014 997965210 741994149 822531016 202536788 809795801 153615813 406182693 11844095 116009837 596754062 779842851 301519234 521478566 881081917 958765682 783655653 923455768 141100239 337345530 524395075 985243832 563522987 811948924 238784620 555147930 823379203 914279291 995609408 997611628 511713401 957655542 492281458 678464092 368331046 920056345 600129715 600879023 308472235 424682683 84081030 871255231 435960922 696747409 780615951 968954914 647740105 974991738 899695270 962764906 382136382 588646374 177694346 763266572 500004741 655343641 708677909 836287446 577777220 613619252 394485335 657044180 674164498 773433058 921105158 999576994 192486445 825558424 350655071 845424930 684141485 774896862 895942706 925615540 925829920 975968718 382712713 640828568 563496675 614986385 519676490 698024416 6885261 944434899 509264819 624710596 4338805 367960927 321276405 805170320 356744336 612920689 230731165 807827861 91274297 676559984 454568771 792284009 734822308 765094206 666223389 901756077 414588534 581450828 438027676 830848816 279688365 334805537 600882411 687934783 219368446 350886953 30798052 877210390 82989080 215211323 895031638 907825218 591631671 841130938 567432837 842064805 182750942 572652846 683984903 953952506 163798157 717573746 545152815 957650342 118121233 172492261 380971896 684838439 264123747 449224827 84345314 563079373 530562177 900509775 21733964 498376293 904237614 989191578 724917087 849245139 514581941 804818309 407250635 765064807 375449264 492182556 455718906 825115003 127006830 772666688 45184259 745528866 630911390 911955240 10012885 599188906 684765329 822227763 213795480 509575636 503335588 658280879 404471798 723830661 914973399 951231284 130339298 816816476 651272992 722131211 880899703 905569093 772617746 893296072 392414951 718314169 841329917 913136350 469484060 651547246 755233104 997213151 104480717 606672939 530988452 767654473 164120585 261147257 688704117 706366472 40962281 427095214 196164275 510722237 533537922 851588720 802570192 862402463 8937047 710190997 714774651 935291623 39515594 811225618 752661177 826537251 593396027 960557834 18578230 716807501 347993966 934316744 661957103 815210763 932438582 992412871 340704362 527158565 112480764 590193308 67034264 795449895 819844020 929123109 194872975 304452497 102291277 132467169 263786981 287908194 157940340 536396391 210206362 732625819 381051893 446481604 754755164 807048253 354895078 645009709 723696298 922892115 262354886 564371022 890795605 926831741 721631374 896745924 919032767 998955129 215083527 561282022 702480058 986236118 344197372 550913176 847582235 967193237 806549222 959157388 243898894 873529792 750839266 914742840 244854717 418834582 193057445 665357542 236114164 426636987 673780696 765752842 342260842 499495655 888078022 889481288 578766982 673726345 788378331 936931411 698697459 840160986 211017584 809485638 110620639 293942676 428878847 689073977 712463954 989885158 25828680 157468679 438687681 790433774 224877335 288916014 909202335 973345158 939421760 988050842 476966933 942711906 843264707 948083364 917600120 978289194 319362716 430067035 118507432 471803363 972867617 975731624 730044212 991986748 626073598 882990059 244868873 539359475 944923591 977403418 616424962 658348697 483898369 511834317 428675617 961842847 797652255 839477947 894342730 948428426 485283779 605684680 427131323 645866711 785581991 836761270 842961932 969623260 117403311 875442504 974754216 992983975 660132047 673547008 442541610 452753189 827869326 997064562 29656263 694145542 837133883 931533799 358955861 694263879 65159540 682568043 468161049 785510712 92205011 165143326 915089283 950512687 478508323 554526087 798673182 940442653 733698219 833967341 938800874 968932609 450719941 533277261 880130452 949079211 151466199 281803736 410976884 706760626 614872158 761983125 187649517 749745200 121481887 352917151 92303662 563753035 630873961 925909727 561201743 928471551 726678305 958586927 946184896 977223585 886887737 975224057 67784310 635871705 509064961 592190935 60577800 184442309 723634622 887801352 518086068 787073650 361591008 995916898 465112585 987653703 692833408 765274390 836300541 908697801 19414201 757050690 202754069 764607151 175146989 271275917 448430279 876645681 783137159 948853550 183531236 748320982 578714226 961345043 313514959 691686755 55590197 317587286 574425672 580878493 8553530 437824043 942149022 995986397 333329010 622794623 180778237 466015435 130816345 537625500 215652633 368789396 164282019 864656833 532331489 653419310 799480014 813736288 880080351 931385653 511018229 865269229 611265112 990783299 580424762 819164394 19251461 523348424 307880695 373491575 272100860 870382024 113473770 330092256 766454526 940665110 641625866 845160190 391373673 836133979 901490671 930614561 686248719 744399506 218847409 365270045 453719260 649330520 621206248 972853029 979353638 980034430 852594878 940217429 721000085 947490791 865789245 871360836 365291007 637190522 951150907 980363649 118089978 337000575 35482670 875154863 117637559 199740082 921402627 999075106 906915155 974776369 145220944 862165551 163084299 944664875 292063246 989855004 251999793 858803378 526371271 675239370 561461515 668926735 230086381 576981736 348147703 411478335 712064096 878973093 37487404 323829244 792307083 885332784 959428037 970163268 501442454 887546758 564652723 897465329 375274405 882293291 791594140 974206659 796103850 897969188 329175768 369945730 105686533 359950185 521417726 529671133 561181343 696394494 348434848 424856848 559061472 740512209 261776021 900024508 145165009 402925820 352882315 358766645 407885108 566341582 945204929 960703953 555595071 603825913 345875945 778982485 480156424 852486407 257810748 835945057 347834583 652700377 990194777 991959237 4191984 136080281 33513707 458215064 788636407 952137793 350988395 556410919 943631740 975288526 799756023 882743028 443550082 696547186 647255782 948188991 334155544 660747785 812639592 869000442 726952559 807295844 628112930 915522830 359206176 840170087 243664284 774369697 548091071 905268411 753956609 985960426 224948904 462354621 351951811 536457556 543029592 651625555 561578104 768211973 203447513 902045128 431849046 723809783 708127399 731608496 459458608 763664179 752656713 802017338 849518874 854922968 338859408 654051767 680475732 771886183 182418153 731901992 266458583 540479640 288253266 451246379 902222936 958159396 33931312 371601303 715485111 735327412 149736430 197772615 586923880 964819536 239584703 608532186 703585541 710029733 525222364 700895056 171628419 677639613 374060355 525035860 291231981 825622056 954848741 994657345 612054450 636279672 790785635 942483370 13691978 733362103 176271421 959860260 61447597 333025863 102852780 676857516 535087843 661419914 736025302 902568163 996560745 996714926 346445329 901867174 142482253 394671242 657908336 955870933 418597341 587462327 412852913 992950480 966770007 998501043 694483124 813216707 709031309 775120858 466757422 979590882 396790422 939352293 544326718 645237218 791727481 814831245 53665177 590344140 419755419 763168134 354024223 636075245 20372975 613917115 155383037 644405154 933604542 990613031 798841211 940142621 423645208 618853769 382886631 681539281 841972934 903227424 208520930 469458782 892140111 947843740 626828196 939192127 86144376 477271325 631357739 965098489 476835018 502148164 822278819 978147975 622444830 649324123 413718579 867375086 562866528 583994829 277686571 647596019 375158586 881465941 272811898 408986101 97027591 545099329 419749419 828385230 426617597 791915960 778317527 829547037 170300953 646128566 690679591 891670160 579710185 952571059 525260127 944770527 387982778 392314312 322852735 904481886 931439702 952208928 746045372 848103002 585598403 925537421 878940180 977249661 553858705 714623519 481723314 771284721 275621047 736548882 523757996 986931592 550660506 678025737 414588742 509127554 682827711 845416329 131391773 259713623 397609571 541784306 770248779 948108105 749180477 883989274 310935147 870083764 337853971 949574329 892729814 936081908 835305437 901018388 993351759 995539294 818137753 956136766 957089073 982943527 867705281 942578282 304267607 736787110 994145316 996385899 932780715 965106340 926530344 951363594 267151466 629166470 237464572 627862935 965750567 989463666 575622472 776227190 592736081 762601405 740095044 936367259 582593328 833301546 11560243 308592839 351934902 515186405 498027112 807283132 320069558 357013537 648858636 721084360 21844894 866377420 972149825 989923501 753471846 779116098 490668771 506310700 521733917 630720413 111484885 564665464 448620527 990971906 675147255 715745053 781064169 979172320 876383572 933779502 159668931 890401841 673622495 860663951 75072153 489035576 378446516 909931344 103138795 488083354 895542839 984257048 828659677 892888615 776208059 804544915 137742793 422381580 460197574 712563661 967124918 993757975 950799326 981407208 252228656 324118989 41108589 983361643 715664474 954812504 866282323 947772375 844757517 992892979 56961391 468223161 371890540 594814398 131977744 920653658 8564433 951648431 918955182 943299265 343861656 729312688 592448230 786192940 917164257 937635348 342664619 805759851 588129307 708801250 264141805 349558011 964421621 997117666 893162422 904997659 430420416 864429205 462856780 743747123 367840832 735821869 254695784 666501643 11592975 328843350 745226385 859100883 570340974 922783893 666193347 913923009 355156630 975008617 473025674 701389522 307326880 413975304 120875928 600908884 983098886 987870888 817719367 849731242 961276055 979452718 839892881 975248837 773482110 923362109 923001610 943875877 924945035 933092444 843705842 893149888 948955929 970407959 677275587 927067517 897148100 982707087 140184458 744821170 285466879 943883185 413703179 826534742 28491506 730072300 792214178 846625702 927706525 928867287 399831262 634572268 820850185 984623388 469208397 919748690 270226553 641653378 91067066 953895501 942823187 999114312 990782603 998968976 556024066 578883536 264625193 722762037 952806036 995334136 480073846 926218273 511264451 576315132 20419448 448793539 865818227 868789851 762287091 917630173 68755638 547783139 88824668 163351122 384187965 804265170 424455165 667412204 735176125 835420027 686548962 819064118 573351216 859177841 210087420 292523183 467041839 656533016 747734424 941973333 285323515 884808138 204325770 723287616 794771627 993140140 723889394 731858243 757879470 879263930 819712903 879792183 193217354 595757466 312251144 386471041 599216646 773521788 319296179 607042340 847524176 879537425 673946496 773181043 591717808 630580602 837726240 877036396 213251607 308397406 744842714 991123168 829417209 928831143 139973059 592538528 988914706 992696449 724179365 790703781 729121624 879031493 501886228 917595117 122085145 307292045 751211102 983994169 980699067 992692807 312467617 402732346 37290271 755352246 235708847 873966915 119603539 953905648 87384922 367962762 910087079 933870900 885640515 906808594 138278969 750671190 226428806 981528614 899273720 939531016 785101929 899652468 557708761 806839658 778008570 956026572 252904731 903579281 412676415 876004204 121971514 752809078 713709459 982149489 517642628 611069034 947243703 975534869 454488698 796263783 783138244 786875581 615196942 833766403 35178701 890987149 789527627 950432577 949810604 988060117 410863152 527568557 517368312 660487322 657997025 854294398 626802403 965818833 721595606 908707417 264184870 671212249 239526414 557070852 661284738 715976336 903665263 938831953 776839370 834545546 361078882 892336071 503258033 912911623 405147218 708388312 994489628 997662987 147697978 996085811 80158508 923590158 890715810 908922704 245456513 576525535 620121444 752371212 687183183 962722280 962278214 973997161 375679791 793551137 992722352 996571885 749637296 838357031 207503086 820881211 719518267 806175735 87289322 121888490 38036071 103887216 453001243 995838006 240027280 854694379 161400885 339082852 641190660 862279865 982879361 997276890 969266420 998768414 36008347 826943729 908375606 950767234 357353794 661883033 234735980 386561861 867362743 996669804 626435120 910587991 27679380 221413121 219994649 893719551 74950924 999532679 141044523 216291058 142024179 988683999 838838684 928416791 912983049 929425198 162169578 510331527 850749538 869278114 937332781 947138976 68255243 342291200 31104533 902794031 710662984 787994523 391715858 674666575 630487285 805743673 242388106 872982341 4320479 53624751 94679421 225256115 294937786 877682457 98907154 306012951 17752288 814712317 629432555 777128740 803566535 913125174 696261600 963976384 961184342 980205080 268895173 884289167 468146318 709503708 458551518 508550384 741388346 810368739 449886534 919551651 467393721 972255591 341980119 412305064 873749127 899111249 959368617 986616883 152530215 525479845 708901106 867995271 749166479 927036854 709889489 943465631 563679221 566138102 632198283 694092514 275928348 677158386 502445636 577828992 109934017 178643393 74455622 581026401 295160388 588364286 739454965 928484599 777773325 925394345 42024286 100778225 749345574 972541926 528435341 739988801 777156130 997844901 667825204 720278935 44977161 334193589 501366136 730484438 532098092 723496359 218623148 982392983 951229872 970633693 159321558 609465031 980879026 993658708 468153227 684990673 911696209 942578313 555287082 692015679 889616699 895738499 666326478 736595300 289712956 502394227 357305770 766491747 668534839 851593660 437144109 494510294 561779129 930124666 108104092 500549175 698342489 789318532 194108058 562957160 750579453 844769420 980483401 983983598 10432068 542193405 465353833 984302412 673996693 903515040 281149687 285373632 342598414 560788863 680213291 847176467 900784318 979158814 359653469 576293480 781573662 828222193 133843990 713597082 552554016 783782505 341858479 654294435 204533378 888084520 329741794 448826256 85973181 499509527 563881642 919308570 229380505 778288860 25315742 949155139 429873208 863568249 432768417 681890546 490901977 826926124 266179845 364510345 113450508 164792747 134834579 267695671 561684380 886503305 148356742 566864490 253541620 743774245 43409642 212343164 76079088 445380762 87683195 336813517 990244655 994067859 538623741 631857495 942958430 943737014 86571818 471050534 508071637 916675799 122113810 419192084 397567822 539600431 342920844 972537264 858823084 950971224 525621318 619435655 758322629 813328169 115996394 450914013 754051929 809768797 693187308 839158281 616842537 702972615 529429978 933124605 194656956 220762904 947906913 970330726 401065131 565733081 986822866 994922963 304793833 531714656 419941449 605260157 545890918 971647088 446226558 764560986 704282402 738192127 922915610 988677718 414206570 906790178 163751273 736777020 825831788 988946036 733002919 994971206 762421126 957764240 894923543 915252900 19092417 819940235 346374470 720429766 380701280 542637873 884689511 884829151 521341735 750706520 18901227 332229169 369578502 669399948 811260612 862147987 869846752 953646932 882664772 925858235 262389921 667851410 483230327 994093841 314039005 567464222 524028805 725665869 609729906 943909764 146500734 491669049 432237743 909143933 57107300 881735324 767469596 991981809 403570794 446111676 644620913 994178053 546816220 934725541 874151843 923796848 108653083 919585217 265542743 448014298 43638083 165390801 967609013 985476001 37448675 913876347 735589320 842698299 426473671 857058494 760395728 822051189 74795246 266845135 178978939 409508892 591842569 761136807 924189458 967181202 920760661 954889286 75653106 248699501 291380703 532311342 273823478 645184284 973928087 975983650 51802570 613592786 84841858 476639461 791921144 999211962 272594177 345363250 777938144 867255327 378036716 837913127 91581397 564390306 380884050 611257434 395876020 824098725 19565871 55097620 180740529 589120717 69866294 388167024 47613567 402628739 561912525 606876578 651742341 740700127 657963690 746935142 121423860 143018330 333553917 694376690 521128912 695022893 627832357 982392836 974500678 975074225 521159575 966043367 122589921 911091358 290799261 845305940 876945023 934947432 229520737 557983604 721212447 763975239 295537255 600513075 335220599 487829359 186137193 284759448 722528088 982480774 81540212 335192907 994395222 998151421 601404556 857817131 835309309 919197632 271008530 384630220 84318272 258874620 693956937 855418733 525082367 921443377 345862834 795494909 989700573 994485391 732150234 773595104 847099818 944113456 912389945 977469356 311467664 963439135 875954159 889099410 659181973 725476596 935866971 968891630 784724725 894849759 361206954 726211546 273977722 644068617 171483327 412456738 486518433 553403857 170759143 919776764 12569722 70415216 44639538 123965813 787755356 997529515 672632438 740154617 716059442 981375825 911834053 990749194 55677767 875691753 250591178 660983887 327654742 987409388 833904721 911813237 379398374 627815976 974912687 988239155 600012797 990974979 777263571 995412081 997477612 999486321 380263916 527033901 728984045 913170319 557446032 558765338 924733319 965151347 560544860 575476077 68638330 432865690 283689733 420199928 914838749 972787742 266298331 518716979 556725842 759047604 347642293 911134820 548893652 705184385 921321568 991799183 299871757 707412492 372303138 519409814 381578065 798945069 760468830 876350427 181791018 572872941 548245429 662548368 935260892 940531871 98921413 668172537 86303687 715130584 994324523 994578055 868891871 878726807 887281203 950908779 419584397 646812621 467042228 804563052 745643368 921038904 418655417 661161402 975631916 998928430 824168333 842620535 362738889 535089846 88004973 959454720 296661834 388658718 122194643 828386014 208217234 521146250 910418052 933573846 931702495 955973531 656474700 718787003 854047529 938556799 446792554 537064430 583945649 613885008 763125099 796871404 722684696 846909985 809743645 996095227 397018573 546571347 87216267 886064968 437265060 732338291 425179900 484257885 938798868 943080378 111880213 240889430 621023657 860871097 762348463 953797599 732065192 745968002 25271419 197156961 509202153 947484458 59029161 774743481 314250811 582009495 638601175 980606472 881822142 907415386 114266513 584242548 716067594 735637704 534513980 637830449 191085346 224530641 602628478 755260658 544625376 563289213 36613562 155666154 161503244 634221657 803617185 917667283 409800098 440205319 797642821 809705960 182934853 950061433 819509898 882277179 292141117 462587073 884403287 965003352 809160285 901469573 916523377 978357002 976540090 991159314 397464850 472045239 356065849 505763254 233749673 951353833 369975024 534170949 665308216 814755134 507066277 808385661 233603244 625451082 635268939 878159859 362583045 433803928 373760282 979742824 63082779 528333228 854643067 975992403 46625499 279293452 478832767 867545368 545420539 800368566 241577510 335653720 999511749 999610179 572566140 917260594 416376174 611795806 193829973 971547475 641835888 987510878 946775637 963559664 18114402 965974947 829152507 996730104 530183385 902656807 996347172 998219346 597755406 902878666 90179798 646681821 609973445 653297776 990749797 996206518 30154102 152732080 290951990 363310041 181565922 586593348 168406186 711154844 810324657 978257790 635946681 891492445 955536541 991974922 856296717 987913397 236436473 790016237 408497492 936048194 283353996 980204799 653827285 854564030 666123271 980300148 384747228 495832602 368771674 627504670 960175299 977324113 67477337 664954965 747639548 766407562 722981733 991295175 357774277 419823732 821913889 951588708 427428242 615622714 751747967 955115800 620909101 668004201 394936002 642136655 591707854 965018513 114076295 430577257 91345850 878731902 206626591 795200945 367638886 381939571 815964069 870218249 467291807 631542677 999803945 999949802 103019124 531997089 143938012 270710008 538477663 667319324 758623016 896494720 414849664 636205246 57949328 735369317 228325890 929399723 654436128 848301748 870755253 937101452 829424425 861328298 434403196 786452590 342465480 374711631 125831384 474420709 540088435 589323551 854528711 943642370 317386311 756956330 439651734 900782023 985691810 989520528 354589154 669383185 666145874 788742613 456725240 856010018 214936479 868263810 674205316 818947688 159666743 406097959 695717365 797153394 227981540 412643405 956501747 984138812 228642548 543848791 28718775 235893982 744934246 883195812 761865714 762694828 945024891 993526363 212060683 939563010 345850935 982041558 355938076 494025075 354144082 762604403 744732942 845601673 419372499 825109538 882711967 966993748 2085315 781194471 926379909 931647344 124581201 932865239 326805801 809569228 384370571 498625755 998233392 998596387 322108619 730888087 357788354 733381288 488625632 756109931 998627731 999527922 712421167 833427575 622220242 854555591 191232715 828060271 513951572 556798760 835726319 873651944 59603933 838283570 91935999 843959367 110693586 627605235 906566781 926724792 139546620 958753182 699050606 792385576 544084864 619877645 273993814 504674567 493958371 510500651 298261320 491553581 615452033 813644997 427484835 790756509 946682266 959530795 477309658 605372685 368527182 457636837 270270998 798011960 460668589 710333641 855749806 928314043 427506768 520688265 230938861 945240106 830475186 997561004 286385877 385013370 814230027 912614634 910471149 939882382 244476396 725573359 879960140 913008902 272883623 828416709 153497021 366590497 65232035 637085899 972613444 980517917 400411062 896699371 629538618 756119967 11979180 947571653 684114503 761547835 346619963 391212732 862670316 972097062 607307731 744172071 683047263 754336569 539171046 816115364 323189324 608554743 654715175 922955747 390453765 635340273 43383764 929022022 548933942 824803886 163113892 713386163 161365706 416450261 973003856 996216748 125529953 711164977 763584442 994054248 50421932 916755491 487094964 737204934 198447403 556042368 353323966 738757878 801189921 941237168 191698800 285015678 586811922 791789265 144398553 823132043 155416723 614182481 993666110 996781075 476455351 842220188 615208652 897692015 347028193 579890139 359283819 884144306 478444974 628896624 372767952 601440908 747832701 823428374 514995116 519780714 437895675 759853938 968658131 970112386 35871679 81745677 567496443 680046249 566751444 827611339 997333095 997348779 203684260 266509518 170207184 335652591 362906307 787478071 544618018 786979957 781858421 848645061 988744566 997320452 607295846 963485526 654918443 972528960 433162718 926887344 370345490 635762935 611790276 783355161 595574988 724336656 863742001 997182560 101844301 626057754 658137801 982880590 531068450 534105409 458811504 967041120 933515558 984561717 707595793 951713333 631969478 664067363 492777401 634063452 586713040 802390617 131434990 468935315 301122328 574349488 604638531 713743073 914426347 978238140 226569015 792626063 311451601 791674531 711402978 777506620 709506867 965306991 408188603 802206515 30210829 335592259 181643457 976905864 682500372 742044711 218416489 233052156 841538892 991188981 669234928 757090155 48009656 192452406 66629258 926666772 342723078 429874908 980577873 989452475 697959930 939365114 409473978 931915598 141558614 543454432 285207135 733388692 232198169 464694801 827081161 876811736 296607126 862105090 119798229 659566901 537173361 917996020 914764183 983596635 565508578 925484667 234441190 846714846 70380251 669083549 172788809 646070713 891838117 937542323 770778178 893499679 455705263 872414504 188278405 635012809 236544244 900313085 194515234 899018606 509989586 945097647 869930561 917368960 808897275 886576242 734671645 908254332 389925758 545274577 289226469 328617560 197123681 457863548 17215749 484408268 254698842 259902177 879151331 928576052 201207796 972723951 753705251 929722314 210608130 747257214 948154068 981441704 527187380 934612784 240752888 479642619 457699847 831621151 453569311 912737953 893480608 938760831 771896850 917401129 152178829 376105739 291535293 964757191 247766065 946333513 880979822 895051249 420253534 968030976 798341247 798706865 759231251 802475564 676358339 955268411 519729972 570274528 460432201 671945836 928536636 991896053 493134486 831375658 315185553 355159159 289150778 809380494 988930842 994043461 720600653 760032121 966882513 998224958 764121320 969703917 706412404 884951143 796537686 891529131 930979821 973797442 464659997 824118301 815099395 820624586 471941209 525142602 42698558 208289216 936921399 986309077 248172141 469936428 380747735 700567045 58094750 836550691 313571654 745187748 818698716 952140073 115765919 863043763 486673069 518611903 705198082 770124291 507501341 640219077 88777040 305603099 375421268 803388165 271806816 379604075 675205654 811113772 459140089 886517832 837598858 971514232 633604150 914042595 280040325 291864297 354932578 694884072 493324900 988109924 681660487 916340592 226645493 440296180 547000481 893554234 162400251 842534860 262790953 888300410 201914061 396290737 677579251 987424477 742169764 822500395 589687132 993993367 813401596 963529761 611199965 687865107 860398058 902029678 762815159 991538601 683322313 769843994 197789881 950839417 523202993 661192697 361789718 990962603 389954198 595864008 725375464 730365211 784072376 946350176 226109286 941381510 702983541 931111792 31278854 195078320 550423652 804538720 435205428 794601673 218100311 499549802 81323267 931423033 92574136 222059203 635191136 639508942 987885533 989833573 577832069 984727363 213557666 643310181 21718941 121529205 570157097 888107339 220309377 700572830 68119098 936577960 952255171 997022181 39966202 463517293 480213322 692092662 230935928 958520023 307893478 903728422 372080624 654813137 43994203 913337565 702323410 994991885 334897127 855099215 193939975 347544578 794063995 814680133 926440734 932012019 885031571 923891879 90469869 558111228 321403913 691664650 819317298 955757260 671646327 900631214 954306564 999438237 56928578 654579866 768461631 911562059 971855237 986919594 514465236 690281929 853897185 991530389 526201790 916132761 746547078 981345679 738357083 959146081 875519090 887986568 577940191 748433293 441247722 781706686 102921078 795111342 58237310 289246294 191005357 920534524 896888020 906321463 342130137 766162238 462221623 831513891 740429100 980788166 969873968 997267550 841069436 990934190 199045051 218370325 666394956 903041245 812374931 954613149 443898839 992330998 196182045 409970157 806549205 894152235 177504251 587749489 777606736 905754036 780042576 977165237 725909377 884080006 311126642 744324119 319932242 600035978 81957539 528655851 708087876 736460834 342559765 659720353 583617853 624434302 922496876 982498528 910986974 934020183 279129202 814762873 975835415 988590188 522993643 654044848 834295997 908326954 521355939 552733487 371278771 917953832 691123283 811179081 165045139 579615839 295184986 356372153 381175930 662529937 821522625 843667162 432304892 665315270 915036457 949758727 881071318 958902852 84442823 998176899 129699707 476953643 576217968 923652572 534159460 868840763 681834727 944857519 182235976 556385107 669608461 812299475 643850463 701876078 727604132 804814310 249152615 947588773 251821031 615424864 661086980 724722590 872474159 946903114 981589309 998497301 419222257 914645616 195257521 860127240 621535581 876055397 244776378 431778564 443564812 764177141 357101867 880201303 392147339 691177045 162121593 886539200 915880839 989930462 991601176 992129127 837156853 951438027 924969329 948560175 891363028 937943857 921584429 930193597 468012554 678433808 289645944 563275180 722695446 975462108 933037581 961854103 784264789 988102877 474293927 872635420 696317937 730998939 842115259 960382019 97904138 456710364 981412062 992725597 718860033 937708027 945106440 970930336 389600175 800098521 78871371 99895588 664873450 903885902 595464925 700594856 507609665 977993048 966595503 976471226 189790756 218750120 986434098 993829330 650278213 711495613 224824207 355641049 791939991 816721741 527207923 673352405 195806436 670780079 276955790 567503274 403599058 636383872 743536768 926638385 768781961 954366736 701724384 735502307 740521978 971132326 211814967 830655085 835325064 842335959 986717052 999980120 18141950 505461690 361276357 384280413 848542549 985881434 923494353 971690051 788069743 829162759 434205476 490684204 278656055 760992044 190061442 722452668 264550835 730436863 557295366 845040227 150523552 453216372 259468964 323125361 147616688 977850478 119325027 624867679 684787934 756653466 997658534 999950499 66625311 787618122 701611355 780606885 802896239 944610992 607452566 675259677 253738580 704201365 284024605 939838679 945597377 995989954 63333351 335480617 634672619 708183688 712554776 948474729 116332913 435110672 181178577 748074134 167583596 595668895 646836490 966444257 551731606 919890362 549354253 670953808 559569930 635476194 435975773 479648878 185885434 315893979 548241141 701630654 651455110 781201329 960708197 994552435 806059636 934271658 174866968 484963762 165619273 388011282 646804874 980949118 431550038 942685728 200652106 306247497 778482231 970341075 227443445 559401922 532673068 818610716 473510449 763046710 818910329 914419519 270632499 284895576 374330816 703095412 12716014 981783738 80769134 511411694 605440960 771547183 45377695 67374283 914075616 967301661 865020934 998659259 555791692 947775050 278630000 474767056 804864960 886648876 88872590 537351017 619987705 866794769 789604076 976448620 198339631 826818813 814625753 846265251 908460423 980410456 170867291 829495415 337401449 619417422 12864414 134892904 858269762 935801390 378856735 848315947 483172479 717241633 809809388 972170535 987878313 991842498 495297901 596427428 155335540 414451963 506946356 863039331 763880928 801029366 404119714 604788173 934220315 983065201 368939553 631420594 188790347 867404577 143876120 261923428 822476292 941308039 256249492 822351946 961095029 995858157 750230664 958499547 438976716 458274908 230879286 441943599 980191794 981251877 395434741 451844516 110663342 892478551 787143922 789578280 649215858 834015118 486923529 991771655 266841714 512180222 312779182 443050317 255912817 876625198 460393562 841841858 209773736 284449288 437062501 824681864 982227959 998024078 266644527 349995971 123260834 136759198 919651793 980226164 512013183 919037618 841018263 900339641 788781076 910578605 19496533 790322735 771771757 946825416 924076668 947694023 351844504 652690715 806978126 835590369 815028567 887094427 821850549 902603848 311538409 580501524 825051406 848353691 476360341 582066997 501827183 684752649 210792982 881653812 302171304 820396551 916410981 975945311 312461985 671352996 432159308 437385739 51290928 498660036 956046626 958120602 729849947 831242625 881676447 994469064 154847573 409730908 161209601 722101063 565127534 985908854 215264435 425210707 580722541 898835952 600642381 800986418 627196197 669930045 286655006 538787162 393238551 638516799 182593429 340430848 848649918 989406689 157462799 404674462 281338784 634029800 263257676 309945224 458071466 622974228 842378288 993150025 407605061 829942425 381041989 388719284 27218642 177949798 352760764 915259374 994427176 997583432 434282615 668184258 550267454 828119718 355585416 538790759 505790024 800736427 793804319 924467574 120419603 686282239 858196791 916995895 170929684 726307611 531853990 681682359 752173364 805287961 14136049 409398116 256952938 312582197 25924149 461703029 743823812 909294235 437384840 475111420 838783908 923754951 521283231 906160785 645888540 657051044 298323922 300860660 423419724 639996765 605109268 933666882 922958747 939333439 905508634 977526200 840339832 974789620 286151784 988979576 907616532 999580434 426518044 494101362 438013505 631968029 12533111 957036594 323888137 693984004 985628992 998187701 467314001 761486507 494267803 749397765 136288389 333173408 92800716 267643021 559378780 896016453 93502034 792229882 515380480 734738686 18350524 945466715 36520953 547301962 342455292 841996197 654993236 878293320 971280577 979200646 781765640 785944021 338670041 797443091 942150490 942635783 776241134 936448680 940473176 960063140 710461325 843448775 872677308 984881880 659994094 836044318 176048888 865072045 463202150 550399092 781571346 984256521 387753138 750943549 151199429 678050389 34272394 542963199 582701567 904121897 538064629 572221724 600215788 990827127 928110625 945936336 192685748 891660913 101138615 157253866 269239205 547146078 150290424 600249831 376976414 416417773 906701403 959161709 879708023 981282034 551566241 837401102 76446817 124727989 741141865 767536232 29420642 622523540 642522063 724847361 832954995 858616764 877213625 987604473 110160495 440838618 559895984 891194023 726652054 932228143 575139540 917198285 291030882 317362755 685188766 789620517 208774982 986103098 812785892 861345174 940400244 981607120 899443300 964573993 63952017 431184531 733913359 800936366 910732641 932092812 263720015 298716743 331031165 477293598 310091192 372362385 807559455 910144574 821196075 969109238 230918292 840693127 221014389 845177790 402698604 750227759 412036239 795142068 262725553 865610749 533223358 942531886 612127610 783344360 534500347 654715233 320970306 559201350 533503157 677028655 575334447 676149103 432606752 684757799 844792751 956527179 812787876 848157843 962300485 999002247 869031034 871419283 487409018 646152301 241927866 637813578 899837193 901470281 237316283 845572296 772549416 830623782 565967828 663947814 29022943 812944209 46691195 767783445 914222473 983720311 214858659 431876019 969022908 994223105 895928986 924302079 356457075 864726354 723985068 928034536 78398173 922115839 776890404 990065200 552258910 732511734 246312992 593335440 1678425 425493260 22674883 503347897 398458005 969969056 834954841 949175043 122685537 756932305 967242155 968661110 161815963 912063222 358445475 989958986 491430329 998426448 980367574 989010526 625705149 795983403 609907138 936672589 859191950 882735648 74275584 118901797 384371619 857568077 124313769 504368680 408125310 520381288 865846113 905178536 842281801 984842974 759286085 962842294 528644720 927776871 913060581 941888228 879475736 892770766 698654566 869273947 279365517 291143584 998891853 999305544 822677974 896489899 608047379 973563621 540778373 582562323 682824828 781558750 383365427 598392029 130666376 230178108 275289103 706996883 340204567 826808374 687962956 758593431 924879887 997293895 453966383 952653615 244725314 344162512 222387274 768549340 568274302 738530560 560739234 759126069 763961190 844646457 755063778 838546222 527550044 953881153 784198044 848100538 37520330 161073449 236153781 766620398 731805099 826969058 691319806 890002186 217700237 710017260 458921375 507365572 481105534 552097064 376253323 720021986 579011100 797197047 681953701 994186788 890099993 928671116 272455818 890119561 224578081 267091893 332259808 591707210 409733076 894019979 529353638 801986893 633135848 974602071 642812631 976394305 935885439 977346678 979267848 981768995 611233220 882404087 885223874 913467178 437504564 942929244 354818107 383126513 568411084 978752010 752941100 976632664 310680700 633180676 150851978 598219351 918011529 999661685 884730532 990568608 650622619 867700431 86278443 511413195 894184638 932846406 400559852 573031930 119809528 521517769 559741372 928001578 587197956 810086991 54184918 163028698 902273976 927241018 501888613 877463817 150811928 255019794 746903042 867812367 987907149 995834322 618931522 909672775 401964934 589858849 229632661 888665743 608922304 782572538 176588680 807876749 814842889 899386591 884078375 970776525 504828935 572907867 373624919 659816831 115323575 977728624 210686326 255209191 77851576 904864056 642472520 645651736 51536326 599807425 664284129 694924759 119517958 567908818 41499401 429922341 914714102 920524229 228350296 927891310 124927123 624491180 109737780 506117002 688084919 965408163 209608508 473596461 289602696 654224109 602643336 886759489 197985518 939361442 320870990 866843826 854678071 924492530 326507824 674974323 255985368 394105791 278677143 915244365 848208426 852664851 937538296 959013518 569677101 988096366 123407717 207367821 526703705 846767604 321323030 429009864 5421134 14532717 734125924 909369824 778301441 783589150 99212294 611026870 824640045 968456147 341692306 505368134 637455361 838717938 718482204 891286688 369072504 417730576 252354612 951129088 598963533 756843504 757096299 775642041 751021 280419958 287420639 789440847 792466126 797399671 409436618 501450564 732090428 979346273 676304051 977413546 792796183 862258594 541500674 880648603 803631086 923016715 565906942 618647506 247994994 659170603 692820506 836269291 260321914 579077895 354075791 773087378 462952865 667195996 436861999 634211501 222901647 513812882 204443446 305744683 644658424 674025122 582346634 749496783 628775046 753308030 438640441 910555192 129051014 419825614 761984397 814617778 449262614 787386730 778664109 990845765 835188243 935771242 752243476 918697729 285566461 329900508 332501266 709948284 468334124 591804147 737118422 906857996 621626999 973376338 991780592 994253758 611689383 866017026 595582440 826770654 407003816 418456845 443157447 855883779 791022852 901115521 641692680 937857476 32790389 759665789 412934868 568293557 455658643 794193100 115169075 752731181 926504016 940490050 122392418 235549676 863827527 969610269 951108127 984637556 806585957 894768307 982321903 990807679 926366620 972756025 622033476 635568143 261021699 933561094 544488096 660056343 552654581 952751408 681953234 993891654 555206923 566883500 126492873 654056336 791556942 994453683 337187181 944283664 528721392 862135613 583765121 824709279 507156232 665455980 53341753 958328713 271638928 906504923 998016279 998329230 866279783 992697798 929373693 941498725 760236707 976971439 277610319 315272749 123322477 367375051 507748067 829506553 892967347 967254417 543272936 563811340 423860220 923476387 991788186 995756706 940364778 972693815 454169863 478907519 456791382 477450610 518662794 982773113 924567103 963280536 68269471 672707326 19712197 311600338 965300200 997087974 594416998 984696772 7227134 694296909 374519577 817414575 775189002 801520358 419544506 861530780 89500407 928446221 717591775 740299760 915426593 980461003 224494766 819212148 150716601 541470681 884382364 956679645 240655655 923233553 999649475 999837462 483900385 611894836 628630341 991420963 897021529 985369943 852834885 993257685 489834527 927136018 284699378 740894007 784419545 866004055 3417437 381093957 855255942 931627464 730117454 860661055 271362203 648084978 754205841 814109891 583976347 728092751 494117444 526428361 188641228 992519911 464824393 711481898 419189895 782162255 159273355 660160049 958056947 977328404 792747236 824685777 464031455 663314499 382846044 672739245 94637817 947716996 770811414 802322432 311055754 801606584 856281477 961474897 424819032 886819906 972857429 993459466 781519140 804936851 291578978 795294734 65789074 135255909 564404765 738972933 867628577 948821253 258285403 476862816 143354588 260970320 837234119 853890832 589703065 759504319 791159559 805253843 905675313 906076678 795292301 840249518 639656460 832217392 414678097 985933808 882588167 926788998 328357401 675600914 524442045 683476232 401332422 797701307 166348185 585444335 969497836 969503468 993006249 994484237 887411728 894119868 56389229 75850114 666433138 844739200 560823653 637038755 239674601 921425799 685082344 781171150 221850194 800340348 741943076 758321523 457304209 967678222 72528450 764483945 126689456 385802823 647749899 894378548 803099529 999562377 751771842 986176132 158644758 689174733 550643743 710251306 272613460 361095374 221671781 262923856 521263843 643788114 621330469 671844879 631353352 883724993 22060217 500555793 953045856 998830381 660401202 686230380 87510589 553875934 8988386 444195166 540825383 685350923 488535449 656674120 88065066 741625796 187628714 634370297 445171569 533441396 853227712 940256377 977076165 998960429 976317152 989660484 158303703 317498733 60847097 948401096 122079462 299589815 663229788 918558577 337785297 698052936 388888617 930756962 492099150 910923051 773671641 954681504 980645145 982583792 933377776 965561655 393077741 666004088 472544262 645243988 552905813 928866930 828970327 947211617 2410734 442034089 236300133 321449937 758597731 977987983 564838709 733033412 166354521 534131506 275114474 821083546 949184410 982385269 416143003 490834354 307481895 974480264 675805220 681580950 892193987 972893074 191983672 347886744 810987062 961386862 488950704 807916376 76085405 311193405 740692357 872076843 834116450 847755285 255692181 306079938 139194161 536065592 10485133 760673303 929628753 991474586 790236563 836561667 23210086 962125458 383325113 946656111 19417782 222431711 748603271 989825548 959601650 966513185 492265309 989046127 790752062 935454483 579616371 661257001 29934063 221020231 953553151 990860797 819817900 931634932 367059609 439363043 616111055 892542826 493639106 782537379 253433323 861921027 977106868 989148102 145528182 997421715 118006451 310314746 314286039 328307375 935765283 986393757 610967678 830445851 385630831 666039791 286039804 299690153 697044881 898995223 416048133 825668084 893236379 898936918 227387524 252288338 387116131 738838191 390262402 531907684 340538028 394090148 807469055 979307676 416277793 745890309 262760607 273646442 129237458 735601249 106690117 780608618 773278799 995671077 73789864 274500914 612847350 654320312 657934054 684375315 183644897 693382712 785399265 978338434 423880032 622107286 421863289 714920456 377362226 771518254 75053704 738749733 452199181 925454766 120573350 150129582 97952962 425970491 630693187 803160653 294283494 609415619 573378696 899251994 708924516 960391691 279476387 385712422 810868943 811770398 335001319 338503332 915573186 923773826 142635118 573272353 364088609 660477801 485075107 626715107 178290160 597444010 148424725 439787387 766582697 921490108 944996784 982196707 578042156 974080357 555083443 802610110 756344062 914831490 98063794 969175668 56927379 213187768 301493179 761690064 817530519 934091006 888172874 897168261 607039627 705028147 556495243 749285203 982710716 994023286 475709844 546667962 489460353 936365248 428912712 786491748 599364027 858105748 604023649 804948539 67960258 364522600 358549185 759574130 531369547 643178097 360164802 904474645 187591857 202417643 759187874 774660178 519327516 547069632 339255097 613339169 50199604 246824724 769962464 847983502 218120520 817631057 486170345 771328785 395621489 928037553 365097846 579761366 517049334 539440855 319000900 338043239 102910094 884622927 892435978 984755012 188740158 446656880 236613318 734741704 476235856 611102010 524918292 856136539 45956163 755461433 77739079 971286172 505511889 613112321 832102607 936134443 965062891 993107743 335620880 992111664 788294712 788647836 431753038 496524583 863061640 872200503 757916113 837618943 693748612 761365101 427974438 519051750 895027867 936092386 370338994 975257485 29431576 559345146 554950337 673082128 890625298 928751235 9661569 566924970 123020176 762854753 240536121 384968904 258232743 709135083 548053200 817739112 848912359 880266884 339024985 723719264 385376580 656586523 338550939 919447389 457617619 717687093 950062073 964022529 8936999 125913740 31084634 760331475 16701201 671061441 185127889 876388338 761063051 775535983 900247479 954114157 367220229 707750649 919104769 925948107 939300776 962676749 787461409 790631681 10984384 495899926 600533366 666760790 676927425 988368811 313214737 829705008 101472454 240486104 478625644 658791011 172916223 671230244 677335573 778882631 242550952 345658560 926677103 993760753 448507276 671342215 923116185 979004286 89996541 766763309 605838786 857467108 500442433 978270750 933838238 961851451 545378753 879082731 489777452 703432998 654554513 713314093 382277085 841809167 556132993 604366959 660289697 715534948 747010904 984833402 958600167 998038385 894914015 973368386 848478428 939552851 887292381 973653350 432709640 952261816 540363238 545943796 854485378 879276895 333962929 689879712 641606513 878621356 569507854 764895102 621566460 834264002 994789263 999654549 398362320 703600780 63620315 503841938 338978011 997113039 790859435 852431010 294909238 715308487 761172106 880001887 433540321 441290184 158533709 919659932 306547069 321812269 444361916 459748556 171082124 617119532 793547892 892980008 961969584 969185036 215245149 520067590 53133908 737664352 943161500 949530724 365496026 386957912 106767648 863526786 782983823 808027772 670707429 792064225 407697652 685350885 516356463 960263068 321848954 614506881 196266541 554119245 981477177 993775318 485354607 490507052 689039640 833376162 427983200 522671933 108662669 434526836 496889569 631655602 821399786 872885192 410838971 555072746 368138185 388689657 772113232 854689806 825227814 866221499 665170872 860140002 976778223 978016722 653205850 879772136 977179498 981636254 14063172 152018628 658844503 792492084 304725157 695362844 88474167 166639174 636074150 790350730 380832337 618135197 615737666 706879981 502318111 930792379 340832876 954223727 358906683 856277766 869189625 950675660 447143367 957543516 922825006 988106606 845563912 980149065 600536761 743848210 344051621 876800924 38862602 99020607 573360406 938604452 807531188 879861295 144432981 296697622 282883277 993255145 105939031 809764841 845036879 917869781 529819745 918029154 886306562 989934435 431713280 461543152 731653121 843690481 130391586 339221405 65549780 319158533 150360789 286215555 731917548 855510504 323920978 491625017 786686834 800597590 485048205 789063195 358651367 703226942 106535389 477585854 764650632 834439157 67927841 675646270 713736364 968670295 900204770 908487191 362338250 789662593 13293923 351668986 481083134 561014156 435854456 505197153 980328829 984996277 108378272 628218971 761299816 906707872 525116723 995313181 75065075 909231639 52152228 558404987 148896630 170878744 823549894 870839979 869520289 967277553 991314431 995614880 788733123 876980794 678847275 683972212 575141852 675387001 913269697 948020454 740337517 862675407 543548047 874192775 956622345 976863147 559968358 774906306 51160916 887136450 736437092 986663895 95063597 104654591 312010556 480292787 44465604 157815970 168081402 636914409 574454944 726412877 456972147 569023114 629126445 962462800 937248398 976526580 788784733 799138181 836149139 918827886 872184868 998586116 3357376 853326330 196374678 489643867 674449990 831269967 598848637 619894844 119563806 958042004 50517044 375196927 459636416 835334770 883987286 931109548 57934871 144708898 705525340 887840499 152699353 461148983 291155813 465291478 434322532 993306785 47664522 277622085 775256580 900950550 253800444 422546967 920340261 957424575 299210033 952809017 513090999 552352031 844227892 969210797 104445071 971373968 620970053 866799509 766345813 785715241 306280156 368119445 759193303 837955395 335403872 523436136 948360631 952508814 922484597 971658378 80701674 671723908 556345650 609571103 50804011 554972651 786764630 894579983 608850562 924488758 614297378 724321210 483563396 610054269 126435827 694330190 81594875 264836713 408883536 632707896 58199556 97656241 180318370 922742029 137008290 806270322 468177147 507639599 655915876 724941662 531100857 957887201 675406395 955219344 774286687 797909813 71026986 156907509 8075518 924896888 471820229 776162130 882596746 980939070 643532698 713990176 399391 424910918 654806923 950008187 319633244 710354495 467259423 531800908 387652142 456657075 472382943 494120953 936818073 947397056 501147226 828925026 73047953 141097085 377461652 560968482 517932826 944983284 707557875 994815103 767292431 899777617 670835624 961372006 631731885 920702472 33052413 451004901 326840007 891713091 726678188 786484630 3604423 437298057 944392537 991574080 163837905 408978244 252952320 924089746 743280660 822912584 347420709 349010618 720864103 867324427 168729494 756914111 583630917 746292573 30391118 317272052 261272886 748717636 708203889 871762667 555097925 606460257 469734232 879788826 665577177 850197008 717523892 881967027 855047063 871419784 2597630 172457697 537125909 741072977 305461732 842736436 670361448 793150431 627511054 757114259 587852763 868212493 905379391 958782183 671742440 991876131 378623333 734305667 480897171 604621957 272360449 841296481 121329576 160494711 401020815 619648852 231448888 485246319 356265283 641857629 449462132 970145076 548808330 939351757 149593701 913915911 4543610 411646408 819632122 917687418 914425397 982019349 39889671 349456315 397993378 896841453 520693452 563179155 692030089 875850859 496348894 731942665 703399716 734816606 835513221 976835270 108996166 379856523 330797950 918801420 520683613 643738181 620585848 920073381 611021943 611259536 426701760 780127151 972114559 976252141 916015391 996227545 730693352 824548194 498375956 879784085 822997797 955276715 519646325 836103580 633224980 662999522 138359914 833764378 755367633 914110455 133152941 323320357 667028625 919595113 121879615 234250483 380594458 788697481 24260922 875081817 742869887 906594278 111017816 561673901 424175828 455910951 10455684 600271347 489349415 887413898 952063562 965422484 973842712 980114773 29556971 678693370 780480963 818317351 289173383 816527080 802264418 911845703 23193100 324571688 883506403 957985995 389891303 662741157 457021861 615084541 752476602 958321747 492185199 978996967 388953459 391399897 368430972 934175308 711206271 848761532 896767604 943206183 344835491 710321458 615644413 971049597 332918671 349765225 75693569 971792677 780675413 918883786 562167672 705467137 802516714 949712192 729527162 822784035 245059289 338713915 566555326 615591131 61304945 326187671 837890184 845040738 631979577 678002977 15115957 969871451 187254642 424956997 726372021 937187101 273884227 398932357 924556754 929531798 902832748 983496362 448667999 980866563 668789298 939476057 622088042 650522468 336231956 510274484 240282450 250387773 25913899 787044687 278963641 682088966 193156919 478793550 838002082 865772638 490977067 670742366 324733020 668333826 163708424 246703616 231518705 378716200 379715631 979688274 261234757 406519090 220187080 899706600 833359989 886264842 953279575 985373306 225326711 339034889 638177562 717849305 704758860 875564067 116848974 357677340 759560218 834872619 264406299 670484445 172743708 694022922 280043826 787780639 494163200 943870068 933372422 962754218 89998422 581302464 49009569 868383175 381969004 647458824 557185358 680870345 252229946 580348094 427715285 690370398 735098157 963206681 397463622 527785237 703198376 720001698 456726783 545247291 80952455 836681774 178845020 831491222 760039767 988592023 821825449 951706937 286196387 658920111 742297624 970013504 404789036 625819978 143549122 275938073 655727942 958796681 643005388 704648330 804963101 832014375 39574399 148648121 765018821 945002020 283320522 529678231 167493243 638177448 91640279 583124874 831213390 979560539 40830876 866762784 653329024 823094466 729609555 953098049 501530619 612746138 595241604 717987047 986824304 994027385 600538725 766268867 747503623 823186735 950316298 953949464 357948051 736117005 737015019 875531633 358657379 890307998 570609086 830733466 155013192 522821213 352238537 896611827 821502892 991167987 564896458 844443958 432067903 736109157 533961282 902999427 702217152 826917714 232404583 648927374 249798467 463250909 240849239 774112428 524225020 530562231 243945144 514942586 666312866 678290937 851897842 871648196 284982660 727221284 762269577 934044069 531580846 605146289 977449729 998814732 609015349 755733265 635807090 894493880 869058116 970613328 448682967 677562720 345694698 701080873 360643704 461977402 53290438 500055622 650981992 911210890 363295606 838259794 206987464 585104571 28551279 938845919 555910979 897928431 556066034 626988424 262018933 929361897 894944026 968184367 3572242 890563468 17614225 273383373 443219404 473327182 737400565 880399741 33903873 695534427 137451247 607409259 988952747 995956939 108733585 156926228 712688518 796909834 362107640 604964467 219242855 856512924 950474164 997040549 859497601 868536890 804078749 856997964 4603342 280701887 392326096 913294923 619441877 914245093 308104565 619510756 53678372 797480668 979232425 999196094 846968944 919972270 603986305 942044822 432750199 987637729 491218314 820025581 941385077 962523574 467269717 548193365 155825156 889473058 295339980 941536860 591864969 658583690 922478342 954594244 540119509 882471845 621404824 912291285 389034340 797956413 361425625 458787773 467886126 570330975 180020475 508480422 319897402 540560298 968550535 984524967 37033940 365493906 338575579 387048498 470523355 903520422 463533811 612766702 918491190 991471762 485901994 960593025 3229732 284420316 121146877 158342430 700692629 949129650 906044975 976386015 971061460 985100289 138245484 696203998 55960909 595822222 472603849 803844712 357825498 907338918 788120476 793361141 112582575 360516134 896078595 903839194 747775091 974704803 491898392 867091843 772392623 778452633 625555842 645920163 385763192 988357630 988888152 991066298 419772295 420997613 643852095 701743295 942039289 980015481 221344167 304251110 783431387 808606920 837423448 999570219 844161321 940100806 98252409 103723241 711331219 723009611 773438276 809677002 828239612 994852712 994650507 995806066 479996872 584408172 794972308 980581203 133290148 307462116 820956934 986433859 375419296 396065816 713676072 718601515 190768252 695371746 750095360 922309524 401762961 676427476 918092120 992322586 922886112 978560866 308093567 447453587 717962450 797058337 329142604 422846220 605966976 811771980 681398987 854532385 222894059 667175173 286546303 461534523 821049916 835274721 73973542 525708969 119506034 359603844 102778749 793752597 252776077 836617604 948908749 982099021 754169087 972895625 9577600 420749661 51805361 899223508 800992512 909015478 126802296 783005231 174763630 305090595 179650707 412216735 456609063 875463391 677324256 978348174 636658642 902315250 355472809 850466286 407858490 813139795 428140089 856908460 972145079 983224612 194720648 200907712 115688427 493576179 358499028 577037897 160753462 652403587 147411559 952576657 54460447 351175355 312734966 743792089 769018055 972743822 128165829 328290436 740390073 897594568 543080952 565799355 252345244 651825636 690257611 761271418 388420448 601102821 891977838 978408019 773584263 947166615 223349940 974459946 957352569 981132353 368627493 641985274 623963633 870206296 274986030 493602655 148620848 644356742 9119454 486989518 273913787 573113488 785279665 812287322 49476191 699178543 654687753 731042606 638177685 893385821 280870599 664939084 924105561 981378537 602161109 868829028 375459323 787439335 162701463 592278919 857649385 970710690 679543952 837047374 906143007 992074685 135597121 197800944 641833631 874102769 578943968 654231586 332086821 458825407 20884587 476855158 170316680 570933723 283633886 773542786 218931460 459945547 492355472 531642539 26409624 111045218 851999249 926312730 523841826 559133020 710826219 903310250 309403315 793042284 87464889 366051130 889701230 919914189 623235254 906942907 48096465 104618516 454868943 888660925 665496728 816088734 773572289 856123129 351626488 868383070 368544590 829710481 516680849 651934764 530897370 645093840 717287255 836722538 748302140 836472206 546918158 614451850 759206033 830224873 251594473 789399155 73190669 173264935 921086202 997831092 97380806 899271002 346471155 863323424 699775618 987732608 802844414 888127766 765163625 800162706 646592180 912380630 154684421 805163791 379185716 684584838 449474838 615794563 901883527 929487622 22398207 913425689 802428761 843341850 608957572 919261854 690821729 763851334 752863511 808622722 634574011 842712566 229606323 492106636 993103063 997409879 648096855 829534261 235735552 326073742 74441828 666349728 572604701 581407681 700891022 942387035 758181996 836041258 778481482 889686754 433193083 560087699 168112520 990153793 465162190 517455346 576013669 927701194 652596281 755578349 485947967 666425847 628062205 893726830 768004249 964274612 659115275 683596027 555263433 673765232 414788545 646896512 228659312 537897008 646472692 960927070 787523599 880132018 482842095 897664781 70851868 584926982 617657672 716026453 944136051 980926331 796129351 947958282 146103569 422908237 536550536 849518648 657143299 747281148 952345592 993405573 571492795 778293485 677254948 888138603 44352333 668739387 638493016 663183537 627263524 800965658 726930617 928372569 784367916 933362681 142565750 854766889 856425058 895964753 584458802 728955868 35823329 572528606 137469175 853872085 940425102 962289913 727670860 968869814 715014269 873451918 73185533 603820821 945176791 951693114 2042847 820637241 946401103 986916223 477722175 489082403 567024552 953584107 993093027 996817343 152289055 675931042 807810780 909205007 137662336 434407476 698539718 969386711 124173482 890647473 195059936 393151453 522863628 870675690 296781146 956964730 480081132 812180530 429169568 601941658 916834473 942150730 85882257 900010259 264268785 461252393 447570984 799874165 191227997 694579433 643516520 714570576 933029321 951893364 220667424 858767653 953338498 999016135 80739853 599054075 353286883 929739331 401994230 536148783 651982189 896643953 295169813 919855353 701179524 859086410 642217733 646959924 527952672 841603680 601156646 828944309 662131647 759528341 658144282 810789383 731012667 827597958 72502832 741938403 508925859 825337695 914125782 965956824 746345799 957687426 660023838 707150568 561288698 817425979 75845503 945767912 370704651 702583578 639269190 961993309 514459953 872137692 968315104 989753531 201240104 573877999 499195497 824004041 441645938 706632691 635771714 914756827 585410190 766520700 857209951 877685477 413307814 850996773 980010259 982236890 3079516 970865356 109595221 960994403 317050201 987118300 970134681 970446855 511305773 696691897 482629770 609638269 237232799 956866258 283894433 819649212 415836771 618650471 624665169 663307516 336326694 669459710 301642527 658538817 255132180 810861879 745862952 824298170 22074736 561611474 294404832 987557455 745296251 880971756 871936824 913530287 144686886 665933549 595840223 717835129 41414290 461418679 102031366 171610702 137158641 825796632 709503035 990001304 87993665 733311431 98335072 608832453 982402303 997113836 586336891 693531724 621463354 798556030 193693440 201940624 136689673 454842925 403693844 765963939 625648422 663825726 174572062 287753822 281462617 845935887 240435728 291415082 962113513 988379381 320343240 455894582 751470968 769972257 510059709 824347165 71739187 382566307 998560149 999008191 869908552 916208418 147686670 914247105 133258449 204085228 886931605 982345430 502910854 961331508 974459709 985987229 426854487 551282737 154881088 637445543 720950442 735074396 959411210 993408773 382391278 970825703 988873565 989607922 357642507 598701246 956292044 959346920 21293643 488488379 213644634 882718527 620675173 778634290 155299863 420846285 513981606 991716406 27341095 139181079 728540040 864294822 1930103 325704695 643785277 723840797 894296560 919966447 110901305 650268822 882992103 889322685 763367339 825464064 242876443 720077521 148262842 820719388 825022400 880449221 716077072 963618659 619099065 954452598 661588525 832080661 419236276 890638682 281997184 871535045 653301092 852684827 345618406 957533166 308173056 544525354 50619089 963596462 890342121 995512934 422177621 888865125 122807384 897421531 141713071 192920404 68167376 542236248 840687741 929008934 930025609 937125911 365382020 695724793 997683077 999026679 94444677 839969922 757770894 771741051 297424597 799709339 542027274 879683046 273938069 548828380 879100855 993269691 3458921 658097720 207497146 323979489 113421521 326542086 717524755 794735512 68776144 121521261 627124387 956972990 893646609 982359298 230803604 818437482 46057665 683296965 886243818 919835251 89663552 490019790 127756200 829079856 229568990 421764916 29910710 917207455 374860760 448455801 90487909 602126545 409683668 617541872 39907765 499913978 179817704 799520962 723790617 839730609 949580852 965110180 274268311 505576136 411097100 623473517 528861012 905693697 318169384 501793937 120973791 140162974 898919523 899712611 700422518 853998575 163674525 770589520 337123404 492431008 195431413 463979238 188174645 937698358 965946397 985370622 903915063 986335001 533971155 753989562 144526620 741509351 878912332 934424915 516373622 817869217 837724292 918616339 613371541 686697135 909696578 968807241 947475642 994072367 983918886 997843996 160678331 312847637 444306537 940044496 881466839 982858025 153859840 846838044 321402150 754073174 847368644 913424862 627550131 831689451 311707305 524639086 319179887 424118643 961521000 994813130 731427421 953686142 861328404 942038330 533367679 895653803 338419507 716424891 350985049 739503405 437895051 588372349 526890912 685566113 946863637 997308169 602425186 913213472 551147185 945141181 885397973 936863848 390446783 757626851 19312390 696065796 121650173 900945649 451683452 778942494 412320320 450376473 215153197 574471509 918117277 944597001 218368538 364059062 787869939 893091382 25698695 166840077 170843819 797821549 746009373 878053795 798726885 867463040 119015717 445533109 441494989 828687151 130154294 520188752 988580524 993419836 268278373 854201185 700823630 960974540 644456393 865814751 623533351 736818557 638153965 963450537 139641846 396200726 921616162 992160897 426512241 686084864 674433422 786954412 736555799 842041319 665687048 836727829 635847497 899166950 457745596 492886993 270918776 978814488 766902227 821897119 10184348 334161733 686025987 900906976 760170494 936746016 797464801 983511865 138623511 398300105 566142666 773401881 966702106 990952026 637479446 680210601 144585505 496829113 681796062 876383617 992207896 992460421 293702544 823441513 165530686 422058119 452065967 860732318 605950465 892454274 385991060 697884153 985793127 988367688 441142091 861159314 47810597 321859178 236395086 361518737 548776853 758874352 248844226 484562961 974087889 982688734 942500205 944295603 151575108 652299621 898510904 902107911 737406418 790929218 232892960 864236386 532025431 966136793 202902129 825837505 621117224 893156379 559819645 979000960 819573956 883975195 48901544 371295147 75894499 539249527 883436826 994350385 615898080 809459099 903269871 908991051 819999998 846179641 568608412 805883343 219445590 257065509 266024529 488537900 782211877 801695204 653223910 733293495 913189570 983697090 764731540 995161598 228294302 707354483 649160876 850371538 156197057 184130794 56763030 454794838 269855769 940408896 49945684 553333722 437409578 553175249 510773365 550426292 891648757 939854025 407684429 748021664 749704147 759930012 937499941 957749558 221156216 721069438 353450498 608230472 459648941 696657423 455722528 923895338 124680449 926452972 869682435 957180223 997955563 999745892 881480120 901684628 841494636 940500253 590774712 877094922 641830262 918967234 243980713 612009786 264515274 896590788 849541402 876204342 185964260 648331374 321266783 912903381 621411565 837649037 14169835 624379540 474376339 642566959 987496069 991937478 978820141 992849236 348718440 442596984 958674540 989787342 727576592 911365894 2707613 703650286 647708988 991133198 404958082 880367571 878998319 933950835 415773306 833334418 281768985 864504067 77922689 792792908 439697598 476563657 273397259 725287446 369783997 425357592 485610732 718038521 694053253 886349691 347911675 553861930 904491873 966643579 791558696 835891913 703884578 781694594 433076221 893973106 703660391 784357102 101266060 793030022 304806149 527941979 827081218 941375102 504553944 629489742 319516633 707759321 334056697 588475699 37100248 767650765 45702440 855267266 69341462 679693858 372178745 531503607 830833201 960571103 307071978 969271129 788772134 961591713 624974614 862524312 38693776 844232938 75955506 967344240 58477028 185738178 646876927 983298452 16703553 568503877 338709631 660501041 958836058 977124659 824197519 898872323 115010024 361218268 824881945 914830626 75143899 679531656 504112059 565143073 243227657 305833695 440804150 524745494 378677119 582398215 530324791 888075060 597325950 605845346 885369874 996274724 215591895 758098360 40790808 738340274 893954750 975898563 495173514 821783313 519874408 628233763 716763040 754343704 808512604 915944793 13394928 787271117 807993919 994877493 750698664 814559620 869117765 936474441 28127526 450714071 20204905 304560813 268745585 674113505 344927302 778323277 489012394 848488637 190464319 812691619 863903784 918418982 908064646 961744922 315794585 605159936 629728299 831870381 51769996 786531386 948069875 967750740 491458110 948494865 169118591 776689496 991040566 993385829 903948566 931658042 88303046 957412006 673537190 911242643 337551466 989310032 526424633 624792514 533205647 663058303 982741200 984875114 795640130 941988347 539519731 779350658 947892281 997930020 1583889 914178111 216261214 512945812 654602464 974832068 381996673 622974720 454433186 584464304 498854844 746416757 274638033 596289773 649792091 699979145 152002608 537142616 619312409 952405704 743673888 912331118 287880221 739374673 381829200 797504418 6668978 840030361 54125963 342162243 179992116 749392790 524510416 693827081 221407282 527272536 956691726 978557702 472410446 894125401 802880947 860272970 394000933 606341130 216773209 459342366 260715475 799410747 126308641 167438887 829905944 972907949 705014166 815672375 582741456 834390774 899990998 957725073 372257221 824869606 349542154 607496850 840135257 882578474 960792093 993541522 824725942 831019450 104766996 520440774 487701504 562871306 315672540 974697804 191298591 326156853 271562414 596723422 319280188 994783163 951819350 952532754 919119909 971838229 490593309 509966133 224705786 675717223 150580182 962219876 267958466 289272433 763394195 798221184 678809344 869116142 666606769 703132995 452248758 465407139 296037126 363192717 12528003 549838757 116158977 212195587 818429538 937660615 697700292 887135856 711557281 915279623 292735131 978552289 468617436 764688825 79096010 784846142 588346731 790487558 857033514 957965913 96332417 295968217 360487468 880738782 6816912 282790571 770565216 985724490 61000497 97519488 840432136 916058159 492701568 810410360 216489622 691343750 326881311 877094128 818174705 944394924 852170561 960443042 512224981 593565964 304322158 457430253 794205888 965113152 876398854 957312528 269665463 404915257 829235458 986858070 338904104 872684125 952080055 997852915 619055939 982666945 851468514 897351561 506498838 519122761 88229173 728876044 365388968 640239761 382779156 776712382 939554095 965363402 891965716 961014768 432404786 538172646 591921049 876501241 389806522 787590830 958748097 985182635 68947703 978494375 272583700 403562567 148031054 569248883 179327706 237861232 506532552 909841878 466530217 555522487 655030306 790313590 718744417 945361996 688949761 702503215 506140169 799067632 591989229 907064408 743741515 993927273 747301612 808944136 641758175 918663620 232086295 600594665 211123074 873383992 188940303 491278367 305148975 977916486 251685472 673337029 309132298 777340967 56868681 343116299 221469829 300265219 727879608 936890343 373230186 935303419 544474018 875214188 776482150 788145914 953920968 968464183 536174244 962347474 492458377 903066479 607086718 907601047 711264972 747993675 185554582 517970985 350888879 573138484 129594371 189072881 181615884 401239950 636237620 899530307 810839983 833342237 494927311 784122984 523786252 872815670 197988909 530776746 370843152 681430218 451394389 863172835 853272264 898178335 459965367 735204830 154299690 748601414 36211787 409941749 872676839 924484198 421291944 799040090 980044286 980373978 299900662 904610901 87141973 183689369 474119854 711433352 31589353 463807587 954486242 989296217 680879719 797454553 14970742 541121379 800115691 974860604 703780484 880627773 117954026 315586030 394390026 483107076 154704425 810150664 588061479 942224843 756548861 834415566 513124815 970933959 675624641 964668539 692505004 923165468 777321834 832908946 483338233 797121580 541865824 561052639 589502885 595573037 523279463 824991207 376516840 676466990 220683295 437769021 363454657 718477433 166957476 921939964 207099835 350568245 70426185 951533441 249425774 306034485 649266395 780052722 151618650 583993987 827990652 855841243 966967027 972868337 82624513 533934079 536007788 737221467 166433825 820743259 759939273 762591845 155774797 581090543 756352403 951919313 839474347 856183835 66128398 274046192 264434362 636520795 935062716 995419914 243581774 740505066 747534681 993606959 649261107 995398001 340952156 680418865 205290557 980129538 976443457 983801899 431255882 722933693 285747802 910441665 985577178 999997033 399828108 823634783 538498605 613210523 493058987 771466029 501511612 992373146 805139814 948405832 221345373 475599360 769100135 912225950 17320920 242404404 941965326 973543684 464044348 651617640 946577001 967960761 629265575 821333483 62593533 161246043 476633202 879013410 142521155 551433723 575465085 816997046 627275455 875547997 544400613 834156678 46957226 264602765 715933488 802273069 564462676 885714769 313095724 737445635 450323917 710592533 535697542 854720578 549667333 606177400 717791148 717863513 975267201 989942829 170332961 693574155 313450816 595467326 97477974 103518505 803933308 843809398 721229939 914400983 375680183 483639599 488451997 727769862 589735349 696353760 824933828 942241614 370090011 391604855 286665916 555163601 644638327 831697069 500984619 799351944 307100817 786467687 650021532 950862968 473338538 554281587 380334796 649113632 420779180 928203611 400342011 656768564 550025876 823738803 957830954 998025189 572091600 997252535 982461440 989683269 819713235 989610435 285253172 674262007 167958112 618563682 767816093 910211734 682493068 714120838 391248535 582956318 197591591 808639569 516042284 939226270 913696093 979011060 639318978 816776020 634223132 706006712 156861049 420292726 976178778 983240041 553560250 815954575 893833356 973102745 976386102 996969899 67842362 899539132 353507097 491027002 574654189 652504597 873666261 950170909 396500097 950531621 676507470 955140536 101396093 950742312 846573078 879128918 595600601 724893612 227846209 998389046 781244950 911389005 684596403 887376478 906369923 991366821 540204059 987002878 960107817 966763534 359456024 758537124 758771550 929465248 971355802 978207314 802956183 986160981 22237768 585610439 48472192 984050487 892670711 918138265 714072215 808210335 65077270 447929003 147154563 729864992 530040852 782923028 45704947 369819865 743463591 952005977 49553311 573947367 186187155 484343348 752528006 807352465 910326641 910984632 837486635 954911569 581968439 839467783 268518967 336162969 585659414 615579579 246253340 461202083 783355505 906551367 947709548 975565394 873334574 959226652 549918198 922835477 639026301 886550783 64475574 914614587 763999443 954782124 573903552 857323444 866727654 892820651 372504095 380564159 478511843 705135533 652807092 698329276 444314608 807448242 115694058 225115702 192927655 417495718 973618735 997719934 353961899 469903285 426296152 951011276 469652179 950200231 514540146 886133305 526776138 530087211 130089542 133809590 822294627 892608874 7392698 392137838 678396167 824138775 83571599 365699299 48683667 230031472 146039875 784805462 386729578 478681103 5104991 362585190 750307179 868088388 249784853 833091498 524517820 973398162 689477081 777585406 696880014 778962391 426372784 892413067 94348194 910062589 821949599 996511339 866614380 921187722 179188760 433412978 41934472 503019620 793562303 993792521 490228004 494040216 31205256 839183507 500366220 907691177 612289871 838052084 985575140 992611710 256157063 549244568 422426439 782983537 882520162 931851444 489411044 780068160 243256996 284845904 731163623 939616916 51961371 392759467 667852700 877088060 965988230 966309390 580032001 587413851 696928972 726977624 230378467 347558509 328359217 762134810 123367536 177228726 84732269 353596011 506826450 688189025 222868488 743725731 800015747 951550064 960171894 998111623 837345864 872128100 600922763 924128653 696529745 985564100 336066005 757183668 968109589 978351394 307290096 976112382 868950919 968650269 376630911 556830974 457005067 608735183 526231635 929931799 312764896 885421202 479235437 955351055 739951185 783191719 106984525 218177120 950907051 998222484 548891134 848658784 279309090 792603865 163983556 171425056 743933140 746328914 787822857 941128157 557779735 986277714 251521475 947802244 968304055 985961091 639205277 982660842 680401296 884859149 693310678 955427910 873997134 913146988 947471643 985240376 137473578 500818577 880313920 905338510 385260370 558884039 814473207 963034261 208862732 629724608 227648920 610547799 331181450 933714216 77552755 107854490 59586459 60560785 765209647 828930177 788274075 798530211 850739723 879759148 641880058 722113915 996765434 999315044 414687394 620282258 377431078 750543296 14788195 254370199 738060791 767937215 879706622 948281189 311079571 807924840 586912844 739217747 59573310 378566008 781013809 846814767 312970432 510239151 474083621 509690319 234691745 528549273 727880737 974555946 133867837 716871511 891566224 914945571 618410277 926254421 109548391 638013141 206628123 247468269 342134249 823358364 87234299 230611402 546871640 787892841 854018942 976783287 406228479 759153916 297901611 638070375 418671176 741090272 227254929 921197102 842512454 981852688 730663102 857969406 663377072 882924870 557027292 869326601 523978581 867970209 445760442 903184728 321211059 718827261 570235626 572225130 210675412 570186716 96369542 274791707 108793827 764993266 138145852 816605191 150809878 832280218 421458896 486506724 821132563 943122261 75613555 349786568 405839044 540461472 799399478 997307968 785577296 819069113 55732610 485662888 101401799 477490132 641805963 702744639 543949502 729701794 896930274 968473217 860092820 968271343 848956838 963861225 422968987 559956123 183599343 817592305 466546312 851357611 79556921 205472768 720203157 764554531 18461067 410160431 360765123 432607748 374402535 499964945 447555223 488151707 129970622 622768248 556794421 770338139 592288386 888496556 499859688 998615287 739309795 801659610 922755391 984360708 401061401 453077831 985452200 990983721 351019360 591037415 272721804 297078658 792249149 862488114 591541048 748670935 576391776 918704493 132989756 859865709 783868071 843210118 219686829 657549455 23668611 493723537 25899222 862603522 746064792 993988177 404971937 962966879 445823344 913571035 806247284 898504916 110345668 348385404 778266472 957640329 139012381 260371118 849240296 935751682 274277251 355157102 229220484 378577646 494389283 853645974 55964683 355105936 91167608 814431281 255777149 687015495 715685789 796661380 983839076 995886969 723986963 813969709 631376511 715146410 825811311 869636015 370593045 545283966 387719462 945559077 732998881 931760661 506137593 749491732 868282856 897976101 809688959 953512390 85980510 213217463 267081743 776270819 250807317 897615310 199944297 948480635 103580560 650724925 675418889 894720364 647241249 786573367 967956288 981109234 546920171 928620502 742308952 990933864 302163763 784927747 891695625 914414191 377137774 757148772 474371343 821188571 79898200 302998437 652481196 826688408 628962931 796927974 363265052 464180562 322737058 436676063 304452696 679506881 944010520 964005838 206420356 955521226 977530336 996577957 884499366 972511219 791235933 851245310 725784883 928756312 460288379 516938564 276601749 705068786 87656726 995518291 974045926 974101778 250372780 760609177 10065057 561975751 290989972 867759754 6228132 666931268 830977924 926779222 7268590 70998800 858428130 947107828 790804827 837988121 456705111 541654088 864692900 905944960 658882670 847884490 109202362 476302799 314272211 684974064 359810851 756289707 578870553 708750659 674781562 927512778 533444516 561389874 756963603 812586986 718496234 879857152 476000090 575881889 575593987 820986769 450539617 470752227 251992045 365075083 752004934 853677901 282498940 753350847 118563022 458948408 645377194 653637521 627135981 873054687 880781673 922014612 901750888 945209239 932496674 993420703 930264950 977152461 698498611 932480008 419103957 584121600 606679907 704853616 257742991 826711790 461264709 975177262 802651147 849704402 796525173 824951338 838896652 963429290 35040368 366399790 962651351 986268982 880489040 978810915 491215949 894745420 970776883 995671897 531148228 763011928 912683302 968124769 548418971 558469873 844634552 986988692 910602612 919458500 46725049 537820223 80229112 162269269 518374089 882382797 434070249 491962441 339805675 709407822 580344994 745448978 760152405 778774775 889360354 902440965 841039880 873455106 29761779 419379752 859093658 937114580 870204340 953664886 812087733 907681089 37723797 966903782 521038866 624177411 19829445 768203766 152334907 533792847 531193923 791282203 263800644 972553975 244196725 282764428 929786371 963212052 291971854 328591433 24173375 243206243 253863317 300697881 696724455 912578150 129449861 482044288 724835973 937552261 122728074 201634643 587484921 747530250 544142690 597591488 700100919 998533102 111500536 626368960 295684272 851245111 155589556 211542949 931446481 952128353 400083654 693947503 631548969 919911623 545389616 848475743 674323545 990705540 904845398 929197537 782080092 977215887 115369447 203072125 987593445 998570667 637430869 660335385 835425018 929996126 116796790 974822773 939966395 947448462 853459725 950999029 312766295 863551769 916143442 929869640 17658393 355713067 648223874 664069970 722590312 845449423 179443159 222022071 532875205 776499014 989524864 999628623 806206587 940697443 885489182 947955334 866174726 945876951 590531608 727732582 492178413 747819877 89403523 274819366 559309390 660589345 518958705 976684953 700488748 819774203 804317620 879464826 120644799 133319794 866457583 882865226 430818987 908683530 564071044 863954419 744577307 987685178 927156300 935865569 353586018 908417735 340360176 898893578 297901087 737020762 500977815 846379111 111294239 796365187 982052663 991983551 654030593 887976096 714805624 732229069 882107235 897761571 234470876 280098079 542920867 762159650 314060345 581391614 361115354 709328283 849116852 944446652 211327609 243661918 703727225 896206767 619249712 792457961 871162506 977929258 586690728 891780270 469936917 760281931 976058680 995580178 68687529 399462929 638321894 939467255 788325785 812568810 278612008 658952629 335660987 938449215 104694139 944059359 248393450 672114941 331802163 819884319 201736263 601295141 875869841 912023248 607283163 755382374 310990542 597148339 75661195 930675684 692482519 960988687 898615727 927320284 499688964 583316479 181062353 942173652 102222831 227612936 371785536 419106211 152065581 968614850 468971655 700497975 366318732 771012977 250218554 995499620 529961240 949538486 779034335 842163820 653179120 920517989 877045082 974514417 692346526 708980914 361845967 938361880 255662240 351829168 587186295 881679987 23477689 455266751 992941124 995932317 33750613 865995460 939435454 981921912 698538754 961239817 630498383 918558024 373905273 592488437 54916266 550820395 639046000 807629659 739338309 802207171 987068074 990428313 605929736 822242546 302789397 459877917 820504540 993552954 271483626 332713395 334923916 939854279 29732458 991285720 389556067 500754786 949080904 961377080 909444594 920140282 474812128 789869375 310656637 529255194 177417475 556197878 450850882 991318829 365660953 684332083 53663625 208678906 856925593 976693148 406459711 590983362 582347382 711220002 660938867 784192689 760964905 802427662 476427219 803573511 160664821 251839253 824122270 878461293 465151332 721588650 872875997 934713537 273206779 775203324 84056274 930954852 128284322 948605655 563593676 940043288 720800726 979893094 701621174 860473166 281250194 418509670 96500358 447719746 461048504 596364220 80132403 267339813 218157344 357137112 536539412 820368385 866780305 916835690 196050337 414556994 777762211 812040648 806534917 839969869 448888868 823196819 875949260 997394797 32611167 793801790 783621177 862876828 394110048 816024017 885852021 971895465 510210360 887658225 334267876 784950308 626858090 981312939 501675137 504700824 995177592 996656071 627149912 835955707 643757600 792272838 523858814 805306033 154500272 492752423 916968331 971446585 766066746 973128322 7595796 220737319 773921019 839149853 118918338 537587985 958009771 973631426 103709071 289221665 618075156 960352569 543968476 704293806 84655894 568909520 452071544 488481188 839302361 864722345 329892172 926494058 974147332 989030370 648456298 653408689 112610791 795856925 116579174 511066338 646026475 802138594 193624290 794114630 200150310 448260771 113061209 849614245 656429523 808340876 819017363 928337712 356361205 747129007 701426291 757190658 160505892 408654930 98954161 674525835 316576009 506711584 319588732 560439150 222039282 634689311 629938820 985167169 98771228 233011196 278349145 298044428 857244880 868713518 314918189 674167079 717914349 813281565 283258002 329644632 894927895 996895876 117768136 431792690 119832988 876036205 74955302 114836327 82372836 126164197 511761036 642719350 417445833 544260848 974116319 992459513 894149547 898799223 411034542 801156674 222968401 256943651 970971368 992880705 844924392 862825863 110550482 265147043 742583021 919044566 307351964 483114765 760906592 873681895 747019638 774756560 332484407 977401100 332585606 701734040 316047984 425297646 429721625 840599584 425643798 740175935 755176593 950850400 611810534 876810815 823380441 838645816 311334369 357156986 81792909 313339081 786860300 880989591 143546326 171015093 414790655 930948449 791068729 904808403 143647405 533909984 797398117 848718254 965377287 970961531 803552259 960415893 919191256 976555612 949608967 980984120 716776376 987447115 519054771 747351455 259133179 759004032 58337951 933781238 273330440 402576472 872369163 939875103 564637023 927847029 841634375 890717988 171304187 894138493 447295254 453242492 439806598 938462382 830536342 897775144 431873803 848809667 607847560 715487521 328161746 962228730 635649758 790023596 926889708 974550237 254601339 314302090 701659632 931673260 901949907 961437606 78563368 600676942 235926320 772432344 308798269 983822124 733702041 947280216 427614667 675892350 446724657 572187484 531639435 834831149 23079841 776606970 423695052 473384097 394529679 902029027 466989881 906386740 888199639 955927461 380134742 962735934 899418280 937600098 863764626 960625171 881116929 901723796 947267181 965158620 587165455 596505679 648841028 995884930 551477447 571071092 248425884 721831240 923055555 946044604 626542074 668048940 745381039 748956908 59474275 340641985 117902906 622403644 124456461 725532443 952413477 974703172 325846697 863925844 210495226 632500208 381014918 748805276 794989044 930746631 858712364 970146549 21159093 351331434 567804977 662828325 541120625 693562809 824075303 920693999 241004722 919534013 8850537 540020209 744110291 940940360 521598253 926092555 915675474 974942302 407035999 459273172 704519622 881567210 838732269 876422518 618976740 733124144 964038126 975536273 350906875 996069346 124295637 527123683 516727297 814915260 570337805 873734416 137982607 798412429 811129149 819743060 452361079 588474369 299377394 573790760 328672724 581233340 202131055 785428465 748576454 942996087 184988352 277383598 440648249 949749056 479567570 789430346 916724277 997309130 648580627 712612670 516634869 740153787 468545567 712272168 483883454 602140764 968811971 980276893 924917846 997173671 358428489 469941918 230832508 511440952 153370448 319895499 982418916 984739132 604483705 702336066 35546032 38901241 281131760 571091798 97994829 785477442 550816445 955830107 881116080 906325861 174534047 714765800 788371125 828003687 163900978 220325524 983019352 989524443 281236913 677086318 805265702 846904869 971303161 977457180 510126908 578288572 695132735 769468887 466871146 789095692 479391610 795269775 130415710 679345455 665401824 826857234 248099263 587321446 681211949 824963631 959707217 978087124 831019309 838025073 70696207 797732813 860578157 950720623 908935479 958078055 489273872 655660337 926067774 938178172 4187094 910084245 304795647 648751948 978083182 982356193 8428852 402317046 11776706 491910328 917006434 958746277 93655783 632860222 961698462 993568194 646810775 770706190 100844468 298706741 392904811 673157806 907275990 990459516 746076900 995951628 674620259 919049912 83776050 334366552 73951897 320709581 758307801 849743728 670252000 825395990 776100139 843305000 179346323 578125599 895166281 932277756 986653997 996407698 382249382 741645218 803069548 873383997 983580527 992038328 228296165 718773285 698876956 861069886 701593055 710899221 392470249 957821971 499586296 882319798 997076478 999929770 997807740 999669481 537392370 997418519 820823522 890354254 263229266 609892031 266806613 860090172 414208856 674686416 54146263 170492192 421802742 685824973 846236672 967565385 886739018 938561796 926001819 968460981 843019253 973021059 240691132 703958978 357839439 702794555 982982082 990898898 215969996 409767909 857882897 948268731 19219968 452558900 717933796 886191625 82829489 153335832 302197060 794645004 202500521 746511243 174286874 813149145 881220660 913739954 864571923 938945148 97933078 704251187 360968647 668941577 696404896 907925076 779894932 856549551 581449598 803600629 242656422 722301629 516789837 554667133 210982021 798758155 4845254 152081445 149194577 623578726 132993798 540969497 369833612 685793979 156915302 298280249 985521056 994796489 521214923 521468139 844444568 990878781 984105350 998521754 592230945 941385114 645212280 845155769 713214509 844641785 143722934 336238842 198006526 248225924 36842713 357531658 490643487 552375891 172525192 367880443 265331484 847429219 870737369 938954515 132439137 931006844 335022506 871127533 876508766 955939632 889291344 977107188 616682587 714102240 8353302 142276788 575801843 919747309 607264266 751271574 41099170 48287997 697302492 997296727 540900989 747694564 268645069 858513912 894290338 925265573 557759450 844691860 94279053 271054042 946710165 963639636 197603860 355074494 989534916 992759901 774065786 992450363 717293390 921565415 689970188 805955468 716401252 907940081 395819785 446906023 554467941 884517650 436014418 896641409 342953154 588298693 935388535 952644736 160881206 708132735 45465690 629478744 884837684 960477293 722731569 902914110 382325543 920966468 867929593 953841264 586583436 650118404 380886265 625089933 797775710 813416591 656582456 870808504 685571363 954231948 239396449 654814848 848159361 916159962 810773771 853324718 210150286 448691401 139043310 733515980 616026351 960633346 894197452 986508758 232175329 947072202 398458615 762989064 570471760 761090555 92017445 95870787 562495939 721998957 658361151 742207870 83325585 240018701 968401559 996240466 528570779 680486172 896004120 899215817 269042246 751362773 254171373 311206125 833728696 984971110 183120736 430872684 338028929 411524204 933935857 965226480 367258887 850786120 241217309 451624546 222549726 528467277 44173579 789897810 196808077 357640161 882719963 924028112 659004543 903689330 171725687 357817969 16694226 516753979 908408496 972567068 385175089 636808873 124909015 577731516 882537733 889105788 296859798 456965485 294514078 946158889 242490693 356665757 376713950 883092109 963289443 986247948 278913406 754267586 232850959 526104842 203061614 975827577 96976723 384607090 61207280 354829285 268168571 298666767 460941278 742036069 313305463 669103189 729829852 905864842 796026834 948736063 133140192 852911345 767910492 939206469 216552479 381654072 321810562 553455848 688625819 948354243 813878163 980661303 326812235 618083705 293920374 545739715 875330359 963703233 467132710 808359702 789703762 975612945 808504675 824559059 41608695 280361909 179539556 701265316 451535229 856811181 975239507 989374518 529676265 804498926 1546319 600953057 19047679 692204569 6762140 876535783 592429196 928093844 837271544 914355240 279076228 806008778 743468005 803390421 816597666 861238295 970879632 989304237 640739239 854967617 892707556 944495180 520211262 659836312 661255150 898984255 235468622 384995106 51834179 83053013 642052135 656775467 569877092 732686778 75570937 172169808 650913786 994322048 84487107 889070267 58742987 180002445 43161108 792041392 153131316 613040257 545516685 962613809 127514192 536423553 118731158 483230520 996584746 997032434 698525121 785895971 529213508 740471854 790805563 965183927 195827329 789570840 373650346 487628644 674978804 967563217 959760342 992377593 167830959 783615090 112240521 525451922 640623960 819087493 943891748 949571865 252734367 979253066 311378428 415753361 395736393 827506753 79978056 318845470 300974193 449359218 878710476 907796513 467981261 923527767 334439190 552647323 596408779 621565551 126456877 737851827 556328590 733580539 413638996 818526257 774137445 892333888 713164022 829967341 130197888 281257318 572931381 767166978 838068481 961562748 289235637 638256787 341829846 680731092 231123349 517906556 612222116 654655865 866460689 996831251 134093868 203457250 269094403 939658132 314265128 768904622 693412987 945617607 363319252 732161226 728634610 924370301 27822590 974552604 820357271 820468559 861117388 903657464 345579008 702970650 676105680 699937792 421381400 733406468 702116268 761828193 309571570 671993608 823751196 948948004 514169592 788971150 384896518 669796989 923897889 974733694 897230899 930384094 609019017 797061053 944162196 946770881 973184523 976891263 840655750 962466127 825764820 882807661 966087058 976782702 917927434 991269418 64785428 590998218 450161226 720168788 648692747 707222679 410448137 434491258 838477924 919078791 749641476 917660026 55207966 684006251 902585100 929541253 77607464 819780788 582364469 918201957 967778810 972977818 607538148 669585597 593832526 974368710 82903245 796007185 783308622 931538010 938403634 974057515 824642767 974993094 336493353 947912925 997965136 999638112 213893631 559278992 183245228 394030487 324042693 808386458 7274577 830962732 795059998 851915034 758189929 866289822 515615886 851428724 910247572 968739307 395774087 841154845 696798034 909084292 504648679 694083664 817526385 922451506 399515845 989139663 407641115 622378622 802413208 957603416 648312321 827219002 997840861 998029307 479473760 759037498 123471744 341015195 576415061 823210092 349662041 812013935 356953526 689806877 111348341 326872043 509549681 569019091 893563172 931756580 873024446 979769565 115139065 256052516 807506759 936431950 92051582 704217022 546751358 617035917 893682050 924774972 443685814 563767235 246170539 288257402 711591644 836054995 442359183 758181358 157868123 371360986 39480882 314475082 537682997 599013715 828989541 903101659 724468431 986532193 864657797 967050228 47779775 321826702 239879022 861754193 255812399 976992761 592307530 977493974 330498087 762312294 655518088 885744102 182381183 500048087 745366104 976306882 105493517 490375250 697246761 721742754 998256425 998694461 865475251 946207225 946560961 990988994 306823885 385644489 385321857 928123636 798095974 828034949 574864927 756129279 706931630 911552772 624016434 650635384 456689864 490623393 140701122 410594261 289096618 743020992 917081276 985179073 997457274 999654091 965986849 966700382 712276211 720780220 383234538 672815661 193776866 381600692 938457939 996099605 410392938 700927177 983788242 989272476 481376459 571647981 360728650 563935085 1818644 60947446 492345945 999000261 171964600 917999966 838515596 846947784 944696114 997863699 996933670 998691795 946214687 960194653 895653582 975663724 99708233 358108514 923098701 935007294 628248826 671586671 941650723 950783283 796346908 957254048 540991483 731549217 157155381 425849105 922023775 993074825 991212268 994204214 956788572 962958306 181993551 227071993 231045164 305682085 875641790 935643972 606820515 862154211 896915007 931171976 876392693 904356818 614784270 988319366 792310597 896232622 1477675 163501505 315426231 319159068 175353466 252206281 916881617 935556620 964623648 981461050 934998468 955285172 217060246 608391541 90315879 621638491 195585932 986781849 888799022 943105714 390100455 775932366 924424402 957545764 839982387 847169907 788532012 859279735 327128111 918626678 91124174 507028929 955961909 970879592 235094008 752978717 833014957 929922288 42466353 727105725 32640736 354105041 718800611 875360329 174248876 641775871 987311432 989083731 76185352 917861775 735292387 875658918 947732197 965226190 687637927 756002376 363254066 706017239 557772083 817650989 914816938 995126442 467552508 615293267 988164287 996901969 58169545 443096758 973416679 976160516 687815599 696578910 151323424 585739449 815803097 868101816 59483243 885022263 355740568 465878545 829604788 870567126 142137793 867196249 60789842 216728128 721232891 891214609 422782259 635077116 451064617 767546933 884868774 952949170 901042298 924142245 711939120 891398351 482095774 689332490 191341035 404798808 480022463 741724167 514412316 602264487 243535564 342543040 527649360 620320342 686457126 947358302 918240799 932426506 857184595 955350322 665464016 835915155 995316467 996311165 954839154 971777327 167916644 538490805 773095919 805054474 343452895 693285842 100945118 841135340 863474878 901926542 207752350 339095898 739409983 975766532 986553804 989761585 772641870 848373613 878264657 990352425 990626925 996502611 22213956 262437987 234566459 322759237 339758385 805971379 185956469 693463996 854931224 911300044 266204730 690679528 457291747 514781573 400585111 773644056 239758021 324730201 303224224 735040437 126175321 812237639 953648677 999410998 551450027 970056761 109433924 755979152 44926852 240003302 119256549 423270204 914901285 984168260 20716653 532259073 980737911 988602148 927239493 959080732 192306279 955963306 466179538 469545021 543166588 705171007 348151272 758715470 122455565 651373375 5450551 191372410 584181212 605162066 23900311 984225693 935324871 958694806 525070847 721540309 874732376 999419453 864691969 971661455 590738281 825057589 73018301 854687162 993191450 997533024 59149377 645455854 196361302 896314213 295242026 740858040 144022987 452348287 440087028 588972212 899579150 939768642 359540415 506410739 208876914 594437064 60049297 356346825 247593997 770127088 845655967 914783675 293698282 619825209 319433121 865444773 990797823 995368283 144652564 667978770 5366250 697575004 88345757 218145369 672298211 789655818 16365365 694538156 783032083 973999882 911658800 944675447 56510438 505880175 222774662 668051644 7461567 453222298 106688289 399634728 346628448 594764538 571452548 714194810 126959185 832026950 953043987 973569499 71019011 97759434 564620373 565904677 762688170 814345134 625841307 829707062 851295798 947063616 809074726 926470991 213485357 522813632 16224938 393882603 380294615 763195688 523924981 608847813 992143668 999601903 149112455 397610531 885556291 919742101 544354182 953273746 852501494 908153478 120272391 430362618 919952502 931090234 141725727 716291301 797237063 930785260 31081139 513231857 501409972 880007877 633345502 683532862 27362282 863673551 399629017 557301993 100346041 455171246 371705590 476773092 71552214 347046761 24972801 283677165 604124786 690732290 945106714 961612777 373187235 995032301 787443397 993875114 575995537 781605885 835439027 885530751 851446428 872087152 632726408 855841078 418926221 902612633 254283311 931213892 447761774 838198211 358012121 384071317 417157943 420013545 839266633 861193977 373272931 574929631 178341952 821677817 377546164 951111720 329437208 948466717 692267593 820224093 103289413 129273153 436509726 970075120 384353226 690831179 944113249 953346180 964775739 972580487 73172984 722855000 512839814 809992867 17180568 884364720 445675339 959977442 280515566 588181688 7814673 58618502 671702179 687165911 378499208 389345021 598965521 912804305 612488466 725926731 37236207 690271446 977726700 982027334 308731402 363349656 898728061 928382502 962791076 970008842 539130593 981756277 5040072 421739717 684571094 962743472 243664393 928997340 864740294 893703706 869417512 991264831 625042753 728007240 34290547 497987158 705355709 942846607 785201656 801418838 467637878 910066373 694488484 830104015 551985425 611971510 168816982 623500677 513409792 958593702 667819773 848384861 882219355 905034683 772700842 818973863 469449158 877333213 659268652 936165915 626891981 857795283 660156437 817792409 292168361 608054442 136594090 245643764 446179537 498460956 858365116 983378617 821625563 904384247 140239404 201993212 432595697 910483246 917328174 929250762 562775851 871595079 130372004 676060314 514644048 736866697 614344632 796471276 357745283 754886757 640013949 994020040 36264991 780190654 785788657 992240106 455783807 799787753 45721028 904079640 354595604 541823171 424440888 668372424 977027043 985655149 871597552 891849051 327706463 476549043 883822557 947559212 75041702 862404061 669688331 850058129 947671058 957248811 386381613 649526118 353891006 467455443 748197674 819451898 454376502 662119448 872406204 957538830 747151292 926705830 342867205 854433402 155082397 567358860 881051698 935918329 143173553 242241319 666051215 751448424 588831607 931720952 51404325 377333364 737033990 805617300 882461902 949437190 284229993 387721434 106878013 468981856 137923941 422223274 423615457 856003491 542297702 747154300 69454794 792165268 901863721 934127703 116373276 509913811 357047228 952320442 949040686 986890642 169144994 820667552 822364697 936839019 884220926 970420777 78684980 276526767 852497770 965220586 549395061 730343486 902677486 922055421 202757122 362433011 653828241 672606887 184206650 736153624 341469778 553666639 104259580 972273111 100428595 604914964 825029120 948508487 963618750 980462986 484266901 898076000 126990009 230217439 992924827 995856138 174115635 746185756 866581767 937951367 422773575 547296486 539621770 693665810 320477834 998413312 356151108 641475374 757504623 962151174 425544924 972896818 946073518 963761736 584294848 830963547 766176171 851944099 829502686 930324155 383571415 832572837 241595619 978220943 742367037 808753297 575358149 765161405 332291122 764162111 940942471 994674897 409767124 568123717 609227325 719397113 621323163 902073364 926542349 979460751 98542180 669588192 262810308 569079277 354558032 473659824 690267500 844848479 80596991 574356594 291045002 336806981 349949165 638055388 558713106 637309229 627489739 729031745 563867191 882464607 673943228 872190544 856683353 862109687 49694333 235393295 702207685 749537680 668842534 697181399 403533367 785026002 34167479 738199974 454775607 734532186 154920042 216228796 923525502 992152946 516864056 689303524 635143669 654579016 446605941 659636244 190322814 233361678 254894730 786565758 929927458 998312535 490067721 739939356 887322410 924953641 138005039 385866430 1749403 12486885 315335549 471866038 31094992 437708082 812456609 926920229 300117835 342168833 188693901 316083942 446726650 727602043 707485695 994598890 756544862 952170626 975943983 985505759 223553073 413097762 468596389 637517804 774063171 798046278 805423657 810779688 199383451 637868641 460561000 708508355 833220778 925151470 102465390 473592718 585752682 922685031 429865167 574226966 585603342 772649588 626924565 791865678 823735833 919275406 600095159 729751419 758593905 926001401 479170930 840233902 587646316 795842628 659554529 986764753 360055845 692378777 455171933 889377226 248795049 503962794 37691926 88789330 372989580 975656098 845125927 978735320 395494753 622155592 237565914 815450615 388220367 508425196 723915143 761485652 362176480 470416692 398421038 925433962 777868164 952986947 645250743 927571489 888824454 934475825 716935113 899563602 280594116 939242133 837734788 914163022 265178300 470718267 498841914 893848728 678617467 940121438 637521813 653181724 751238492 751454410 549026200 634825326 311139163 623242784 669966298 966649647 928367779 937393567 67350041 807001818 451012733 715008176 289820664 782789072 184198088 619172302 223075728 920171076 3777921 936893312 567067628 970561871 500265463 803693953 738220388 871776938 50876031 931110873 34966837 619866900 270246547 725244908 976762324 997745269 254909386 383755538 259458337 558522191 189732521 213712614 79677984 528051815 323239593 919632602 980944948 984187130 54084277 248057046 418805090 572223560 78309499 634045049 125020242 365061109 460006999 673223634 606472786 887807099 938682245 949261142 237625266 537999294 88907263 574726989 728127882 982845624 387813837 519156170 556682719 724796674 140921825 787820937 479476613 614400596 194383023 373582298 658455864 694178899 29547883 432884709 561661369 646425960 271883433 914949588 635106629 750715076 427664177 503763107 45182842 343243629 133342468 619569132 315663966 570600544 82804673 340184302 152591412 520111899 949120457 977817487 861093636 992527815 92306778 755441600 904191923 926332209 20235862 241524838 509497429 753568752 184363028 765479000 187208455 879697065 673337122 882613965 49480500 459896882 169081754 200064575 953788426 963303765 554433040 895890937 643586841 670118256 850687163 962763198 809603036 918703799 846474297 983326041 986878203 993138660 99090263 490601675 548186849 772409415 625743581 857068768 790361296 826283099 712112906 942519365 767407971 842238796 631542468 669447114 360481640 740230738 476524197 691917637 600223672 635025148 29523086 820204713 230093748 949188493 411236212 663464144 414925017 988258607 697985260 788230672 639225486 900097316 997387402 999017624 572847162 597022699 122159924 817868519 713763233 946479829 259265503 621765588 882472194 883989225 658288089 716065769 151558589 293719986 476686213 921757913 160446948 788908545 632366552 853618402 694224457 736409937 934799255 994217243 800184131 831647969 873886210 918982838 62072450 904543757 576541128 684117580 573937093 874537246 989435428 992817011 466269733 773345157 341502481 872576894 936749578 956227400 105753158 835349048 619575752 985004631 649666329 862412012 92552687 558839007 782701663 839458725 893989369 981237084 752146246 972106598 687715111 804575155 390576401 737875009 289300379 651364899 177180373 511941419 355188057 945402375 553812453 876218722 747940293 758526064 326415050 484321750 363398912 589313623 539982083 738128981 879288229 936761486 372940995 418118866 376117147 387691021 637944297 988702960 211277670 936073763 802304114 899535264 180855970 229027320 700352912 983314726 566169667 887095215 645637073 755808457 556036712 561349265 880440804 940704732 270612838 415509015 206947421 462683617 620616602 730717149 222250516 757522709 437935283 460899137 235777307 903151170 891246740 925410715 514396931 948980924 319272473 439692446 171362965 606342225 914938153 920637905 592113175 651401871 973021563 994303225 422241727 691947126 652586785 938757106 281049965 940170017 51138259 665364481 681466335 994334260 677790238 816291261 915955940 963766573 550322959 845176874 861089194 937215665 984284468 994745581 485273949 882711849 360286411 663187382 666230100 954729914 93975914 970443397 158237288 506754671 272135150 880420175 821413447 919360664 520568259 752513295 591667078 905947598 855986246 858446660 342544860 751410631 938024866 938650791 188334438 627921787 519356047 629025996 553215375 591818325 796739927 891594667 152594812 732894920 606465265 812089255 896308915 915561345 497342568 971045411 936916304 943333705 285289326 688621854 815270576 823737560 958701435 992732861 467719568 885496923 11043385 219878650 554212129 777055952 660662935 834137325 341509610 807752729 847233127 875270904 614524311 619830104 619549460 715622026 955031553 959351432 869803790 894121846 84903346 111840046 336748330 812225187 640581046 860000069 18581611 545089050 430146485 535272512 429260643 791514700 608196966 665998507 209376029 566889073 736181204 979304902 83946491 947806342 850472907 898178650 891541106 929625767 967452500 975092326 205669821 917028388 983094770 998902459 953371277 965821459 197377944 263682660 357304702 991137900 267921870 708024152 942567964 974254903 713671536 821432161 826218603 843939215 664010154 955974589 682718451 942084825 225369152 505762051 542567009 905928625 906367993 908596116 757283404 932078249 364400469 617734809 89450815 544837443 677489321 994974258 491904525 633055355 392480546 429454953 815934574 995992030 865253570 943584729 177328178 879805844 955890660 964224032 997937346 999839948 200705629 556883027 590883687 756855535 455769469 462299031 643618210 663678129 41882172 376897065 597153296 914307584 208929282 915071105 460188957 751082116 746602415 895194172 11609700 819184943 27464307 326804252 214325692 705375451 292257710 881213879 742842232 872069166 28933718 535259706 847645793 852165795 649442634 970045391 289116532 900833587 599696354 842189061 912358122 914190334 614909039 967822859 266762190 600554876 50346781 518757179 781944495 782845577 506625502 772778597 29409289 814835235 920147197 931388201 93605164 992412698 186552017 524688739 496329887 954932584 537643342 688437928 590661569 717152781 297264707 560109765 887921579 967020676 74344357 643121354 475976211 931532358 262730520 655010641 116867536 945871114 935533090 965962197 173532320 663205331 476951735 772583034 531354547 828943267 268866657 833618598 281330728 612548212 884759261 990101336 961036410 980684898 992983372 996094810 240216192 950512664 508763972 687021218 311973636 844867395 239666827 708788327 578327962 652059711 176810266 698800670 547457566 943852787 895325673 955261150 84827711 195145584 523604469 647614755 75411402 582659214 888520176 947113757 748259114 967339109 952688230 958867134 292525095 401345940 123637382 765249022 910236756 934215498 900522082 900972864 36621854 912456736 177679542 257320556 863559965 917358378 227224659 558639038 115655449 180434289 129055475 471796019 239527203 251311095 618462706 688740527 633317813 811369392 134083034 170000181 841193140 958533226 163979167 870107442 891114458 911274112 462960731 891894657 97664546 955654984 338217903 784901913 848581406 885444240 1630188 836984582 489842059 507236562 237834194 396424956 485187942 877574355 919842608 920794198 819548366 949595905 23355793 683330237 587415075 727755684 127691605 281635660 39868309 55939344 723833145 921940324 761482170 968717294 179996548 927480769 723028101 903145134 363771413 812479061 959975094 999562516 201407299 421772102 603033673 966793226 665200241 821998383 614227136 759701779 919617261 956443269 959852089 960736021 119959539 417431555 327876990 962288912 806390505 977834842 807831607 956356886 559923609 859255946 824166813 992630744 544277023 705568504 887422078 888114182 507789404 988653469 878856599 967093891 532231359 552800116 329400948 587090306 830268689 962425860 182278603 934395821 157029390 997381040 472462177 666039285 380817856 864849317 250388925 398505065 840479479 947158589 854605043 890313544 393277442 459651091 735363481 760529258 303526162 873105840 209978179 840574887 693803899 941909065 967442279 990454531 78769345 873202470 762082132 874384273 287125503 910500277 730216752 839914883 503343099 600798994 258592159 703232212 703161951 730612471 293389140 766266299 314140390 621255117 378869338 413314559 808206775 903775596 910692240 992876954 178503125 638343117 84694659 824142453 677477649 923014152 92765092 740028639 789539764 809097904 273271391 534151149 565435051 789926296 984601100 985630492 867510162 925064196 774031059 900414474 932201198 939283130 974873712 985535717 133114751 752021891 292791561 396470526 571202803 639021407 472209443 580483455 967093233 991633679 979595347 990267582 255066079 748098757 350503900 540744506 348364536 449633197 74003474 110849162 768338101 901158971 823602813 933021927 69046412 506862340 391516663 437032447 175180715 855747266 721381058 819642051 614510720 999392755 334161333 834851767 882308746 886592339 196529589 426549881 625583013 849726602 630102138 954266133 162595300 408401191 403499928 919417461 31987148 832433676 980464746 996341384 781350041 848145167 121451462 335201108 824882565 826096551 522404815 575421948 996928262 997812182 656713720 856122718 271524560 587281438 985092566 985433985 951229467 960991831 102208961 830384105 213824576 957057212 20605335 295425886 603693046 638213753 822274759 924508905 995214617 997608731 785420201 984527782 662025577 728661727 734327461 828393219 326860031 537919937 187094498 408545467 724773443 872032557 480809292 634184217 163227348 825241186 506033318 831340683 467074720 993980787 758426324 845951946 606964185 734800775 396866199 742995183 113785532 353643023 890483704 912993704 383276581 971524559 526817346 837296126 34395454 197242349 684262906 934846366 414561326 806577200 15712750 821654216 975441866 977523669 338210022 494434749 7300224 610617053 256393114 544611929 799579818 918798516 962439002 973828791 807551718 993341150 866068124 911073805 182473200 979931033 422973811 584543890 143240631 152227634 188858991 518239557 264975005 686553564 941810350 982279229 94593234 156987233 77492685 210114738 31705517 235082299 537179843 785570043 465445346 591965892 389764091 889532196 147398120 213183657 747853401 817216304 248940901 732118507 454791114 562263542 909855653 977788755 222186154 332339757 436595547 581073073 682486945 823314360 811718346 827086459 545310775 834391357 221482277 680611971 19571859 975370520 559269153 684762024 644639044 881616564 504664594 982715149 890854195 938612152 907256625 981749347 263666313 327279623 793220128 974645610 538174623 630142393 428220741 522955382 334515004 615476592 377661229 909334753 654554983 888411605 538523370 597375228 587913023 903158270 135025006 299954929 589812483 689884236 490300288 799020445 843347161 985801264 706075451 715401861 347783611 781866453 144820964 267133345 547045801 998528000 275511356 770908745 24343430 360983747 472999857 655165201 959429859 997392521 756778204 898935870 314240473 570032233 471841140 841291815 924591691 962229431 17599855 879885192 547966712 618932276 788398914 827026805 751964101 792027697 659552170 774336512 505731599 919067278 127964952 494477589 592754137 749207574 465136717 811135404 981321517 991837028 88043282 262591910 524641591 600096947 16688086 136503658 27164479 790180595 958165717 995190005 640365795 700275743 567804787 883486097 329014206 921984509 744042617 813519928 395602992 982273771 30469160 914472559 282380083 871491046 165275137 268108861 166146687 512597744 949701344 981522558 958685502 994753587 3174472 839981311 143059653 287858604 45256533 164109898 363832141 550519512 82058329 554726276 350206996 888466350 608719465 997490717 742208117 761780623 843310210 962517047 256229485 923678895 783102338 873678798 493722003 698578590 67943425 826660307 640175571 679983225 370534350 712195693 596314948 910388318 116362801 772069803 304155548 882019635 917715073 941392685 743743010 842086326 179246941 429931515 247059464 633114266 736531704 855888244 440110790 694829684 985990655 989395589 323299503 962320971 435066595 763851216 18317124 547813081 619840266 681279576 787557142 810370388 590596450 594173576 27651219 433823244 758437762 986621613 638477419 764628523 528857362 883012401 260417344 451280938 265207569 526488799 399922245 794658388 50764708 117817282 167756015 219152493 642457460 909291017 263834059 333628054 759806447 972690770 890912146 917912800 578617437 837000822 49960429 751244070 980893253 988361716 547704269 744559456 579270344 862829809 897218770 925641948 929267190 965823024 776769532 885352093 848522861 989660362 608412051 784991391 637723507 900131648 559265230 809373431 657423183 832643311 974668512 996350980 330660824 495408799 970080267 988508607 262191918 800801424 853415284 954413974 507798304 713011866 989958762 999698239 20167278 564257321 491078884 958292520 769818026 963222760 500793615 627564098 215486959 882353135 521900793 887762832 682238247 741929872 333739717 674182364 860458336 919679139 415155102 510757291 356056735 607523512 821911804 845205191 294122494 552202421 485899682 568063780 718782670 919751551 932774085 998776447 780942494 884327910 847072265 897360936 374396769 573741681 95035860 418784926 264279950 867025424 499721576 719575134 737141947 835120279 764357352 996538402 886737886 967961328 396710362 420911364 361900615 890533696 235250328 524058531 844574523 989571161 949098367 963821044 974029923 976077500 461013443 641723200 790448235 989469199 607059686 761079522 747748078 917318205 321859347 505369230 990618629 992247563 197311879 552535074 235449546 960179676 355611791 508562858 535068367 614391060 131886095 536894298 408610303 902747335 751634387 800649153 85691520 352031121 518326780 644889212 370656642 902538526 814059263 965129242 251661016 856975758 847656432 911801655 815191185 905533785 429238687 672733325 891914780 944141281 609721436 980040635 39425301 456313254 904549565 998535772 805350719 940513756 311873250 796150619 195953834 450431865 311996743 675802284 492580232 641664844 717933479 975815072 612939010 942106706 558579568 888411415 386545327 614609139 146796351 720187272 863955544 947875277 171006514 434383437 47685957 701617446 876954507 920097783 894310764 903645890 647544308 914612765 854679915 880465683 162801224 818582190 835318184 872303575 454979554 982155843 478645354 907626871 974148709 979820271 363429331 870995041 124968372 642005522 551566043 782002942 43018835 327690040 173498895 380726098 990753797 998840223 546071224 991158588 902152627 985268374 221662046 904640360 388170458 585914259 284940479 488428252 605909000 992804555 459362539 791933778 839936360 921043963 395162376 690948606 19702948 576755025 882038671 956258015 405381549 528884861 230864102 569119910 295026115 887279855 457569254 955841727 554514353 577701705 855211970 990211873 519070470 901632992 706285763 901445038 262958784 380624173 506126075 884919366 754353624 967708198 374096725 533226374 624509213 950502679 740791964 834226725 358316884 420096034 330130732 794993524 160189665 765375106 588575026 745030532 721075917 947245884 363552346 825445453 636617883 812554032 305376704 347484901 990775865 999099641 677629495 724441765 893834244 970288788 740276950 867463427 619078451 847637758 69334805 162257570 65765664 633378420 793738396 944369874 882476641 975133605 192656184 211190861 544707331 627227909 131520632 552805214 913051206 927234869 818996752 937549454 494977860 810886671 266085659 497307814 509784781 698257139 221342472 485234987 405175784 556722020 819228661 866706337 274632758 890454923 100085976 776983144 408737591 733419200 954110460 973715497 92159132 107084896 658837938 701522754 706055963 750544258 773520850 912331228 1827644 469356215 761402672 950045176 253053148 889481494 142400163 156730810 444999079 710021069 286061529 737103661 734997050 741097094 336279114 920368662 153162408 783893774 506570252 631290014 744758919 920380071 501113301 684593259 26288915 671077118 388440759 859775623 274437443 669568594 599755370 769086788 257009935 308789877 948288343 991990880 567914832 682665442 655762600 828979138 212785350 753936983 178499410 744646669 150615033 617086015 25826744 957484179 526219608 681236838 905927421 939300388 379443619 981912934 744449471 868269071 357052077 547596588 484258879 888215732 655009505 905707162 671281172 980255877 107981140 905027428 393684985 629536057 143301511 716263740 654341220 788573070 957781788 986376371 873008289 974389128 297767882 427019684 667382900 958830311 398946816 705616925 81104093 622732592 766295347 905645403 400630470 933841804 867830977 964961104 589746987 666785918 185181408 542627092 820474989 857937381 285288196 722590099 670364231 999226850 903607455 915562412 683166096 742169222 327651027 470135508 670277500 793854853 135531278 816742500 69081139 969325904 114376803 477097792 546532425 670771222 353303193 640250583 901449840 924213530 824799628 931971784 554025465 915220880 133158260 267484930 102711066 733887326 573814105 642834107 450975330 995785029 445417832 749973547 796000328 822956874 298566700 315044359 640415258 647934356 790712256 860695331 957480014 963564411 269617965 928955346 174368308 549590150 264679261 899258312 275187440 808981071 820248152 923133892 289764475 902820745 806865619 975272770 720361360 951611891 338609725 994556173 999714625 999976195 100511175 599101067 279107673 827127962 953237988 958820922 627959886 932889474 890972810 960387609 87428489 111169152 320026799 519630299 258489700 536369080 521948208 797815399 891318409 891915714 24483633 625117095 831708170 925227533 794361615 912691949 480896748 602128477 31507633 867231784 536349356 538420146 726087713 988389068 838053003 964914720 346178599 391524067 634935952 816345360 543496033 870959197 827203901 951631543 181873681 957890875 547155288 997583769 127054774 757982845 579851176 679162816 253624431 972313884 373236116 529375781 415113998 888116826 751409369 813146933 676338890 967364098 328039758 355311556 719648670 821291872 595258206 644075075 521567825 908668657 220353047 475080532 866892240 991150249 188209426 581247785 29088449 496373592 103984625 146313740 680919440 982681156 125414773 859535683 467913447 558052311 85131652 490774721 394932497 557394194 343072458 606835010 877716727 968630149 558260953 572218863 955739424 972356857 401689041 514875587 352193825 761254279 263167343 578175674 865285109 909041867 79616556 438298802 255812676 536522390 169991889 686749463 808980154 963198538 565410592 765287108 656692308 912761242 210001780 399879466 728785538 846758625 237444361 684021234 90674740 447407363 278096979 319702035 289150055 763688864 808182272 946880842 545860053 616212020 44276179 219897016 177392081 516183376 576297373 681105254 330367168 526222174 690054134 815281463 654482275 738275386 487728654 771243391 210041650 532562413 951344347 972146220 120846805 857192012 738489296 883196142 48215002 516040583 625225744 945469274 75444340 769540464 880309127 981765408 232749562 810119679 294073586 810551153 281755197 697921075 873601876 925787815 384225581 509442562 554117882 780936823 139573930 692802944 438209631 937361772 462671632 941654842 924446187 965256901 539269720 858788617 476433674 938992575 508140467 711884856 952356856 989125327 360075462 744936456 50948058 885914625 571561411 696149908 269293897 273008858 413615738 826447405 492751870 750947806 409386485 831357950 18914968 980999156 445865043 666790763 508308428 809940314 18561196 698459232 565078291 811737946 30069444 99842863 964384152 969481536 76408474 341930370 803498301 818313791 962350910 988640965 402330124 929159228 796924522 984157995 668984347 885869134 731188961 835150327 648378771 746771691 586897577 882361131 572245414 671230656 651032503 747303064 943439447 981793041 774160100 986910918 923140372 927564590 525069661 620500935 294068163 888317180 966832310 971373266 624361403 861227260 962319546 992360885 544220152 702125959 898361283 952861308 448562637 472730815 231075826 251531111 50132774 939279339 150704426 512798594 726248051 967099969 401364751 968528704 160102781 679419182 888769955 966124924 549768405 706477882 883881532 988639715 367589654 507056938 937867571 993760195 562578738 716540412 762887145 927813073 674236936 715070662 112834053 124986747 388916578 928533184 497464435 870816682 867046766 954307263 5022167 787084066 718017984 830501427 726840296 853966065 537035713 888219744 430599811 500726531 732776634 772865582 783861247 994617579 811361653 969519559 603670730 880844330 569921340 752538647 487949010 778967720 546097991 926709284 57528428 132393113 912931711 986966309 462881767 948523700 773289438 912011178 874007463 900757347 56858541 131127061 947572236 993449196 265853346 397197705 167040750 372006322 761920537 888235793 166678564 417426619 43973567 664669528 260374907 419911223 972146912 988097462 927639580 942185654 444368057 527839517 483663382 684220477 786028063 942098966 836309016 846789250 209496965 783029211 723728762 818510755 672801356 833206619 937993125 987336896 212205006 921574414 23256384 901132816 672920119 787327306 610165848 858789694 854213685 894002759 877924345 882666782 878358470 970852848 853280635 989004358 402783412 677703493 782498122 933028439 470148518 490418041 584576656 902195311 106679987 672466807 379090719 550568834 763129330 787753262 870118210 913233788 103487482 719807156 769089821 822857021 229607002 347493986 269879 378429438 645792452 780553368 594056221 673378742 576308626 684171944 537651473 619924621 532114492 922724866 379738022 404587709 437579480 517354854 161079166 674892892 839408677 889116646 198647177 537375090 428170884 681325992 613690427 615125686 63598368 617142448 157644709 500200987 880407167 918654584 486486306 585968035 950994551 995548448 581282985 604939245 290693654 879698807 743078218 955251732 166058790 834741874 393832825 783785373 934127352 938752960 636815229 996707569 564723405 724705419 988878912 998814048 307741276 597356319 833363195 958974237 470005105 754202041 864251352 990191373 851470319 851525160 622961423 623043742 688474365 857214229 733036538 902510453 969507865 987473951 731382403 969581393 496784285 891737558 239698440 330020323 640031452 748094163 985493102 999297487 817010862 889115035 537962210 898103885 529291602 938044422 726458637 959356856 83054535 277618214 536907203 821574714 317883454 674147224 317446891 912945236 306641420 798036715 435058484 814759162 745033909 972396368 980097747 988903365 601457408 936894426 734990353 786218373 94726034 654351983 300441793 333903685 239711239 473667694 193852450 727643494 365656504 966886633 469814210 811856966 75204253 858062837 64751428 650938866 363781227 975277310 274504954 519673454 885105633 986679548 969763449 987963499 487110410 616342742 106685147 167946808 164726176 372779623 269097485 445741083 506544775 589376438 520357118 523929487 339484494 807678241 991874210 993795019 509445170 992650755 440737003 533800093 770391830 798994056 982424619 985816268 106236510 877709757 770163059 827021708 564687547 931762532 269343659 557855233 877777741 998987593 605212047 910715755 255346428 270435598 809077226 885926833 131115932 430992886 88495296 915301937 866559226 987028857 497217812 877727828 772452037 813520068 951077265 971125233 147867613 640157201 80142065 545423858 466512379 762353529 864292402 993477995 927793798 974793543 556501008 601946108 775209879 822778590 385977321 942933172 313462193 496096838 968270434 996796669 527340820 539150020 769967325 916849226 146077317 375344675 110789915 257726963 551889012 717313905 680983129 898754815 208304307 823256924 270810663 576208868 566422346 920769682 496415310 507343301 511199102 563162010 595415542 658349495 924541536 991642729 690722939 826328539 112596555 354581144 319858379 541718007 885571336 927496517 783686570 998540765 912433415 954933909 801322626 913163060 729099838 935521790 503438668 999500075 158472809 396034734 845180318 972743533 887508635 948055585 682935474 763363155 421037043 793749344 915467220 963924964 904225015 994406784 999924806 999992485 90402269 374867297 350555173 952906056 826303599 857089457 16380943 215266665 209448146 484149345 839639192 926601897 910552839 980527022 999700101 999981193 3085487 73612223 280201862 996105689 501599472 774650418 168709378 393008838 87011653 966684020 480580713 614600239 49532840 452731710 991030682 993403429 319682633 670563649 816396883 899475136 365595915 743017644 613009206 769767654 241733878 569026843 793256527 809411729 903669776 973637451 215971494 625391156 406426575 975851425 919005476 954253025 208783835 794575775 331757182 864167110 576135716 778500844 113044892 270094556 329189452 779895474 93432922 716688299 711022258 737662793 356352618 816196755 475771728 904193967 392917315 820505827 852702463 946937998 360369878 877889591 459765648 966724777 293847977 366739117 621063639 890419744 580240882 666990795 280453515 456516087 841456899 886957477 527782019 528912146 711843184 951785736 46521693 228677830 226512797 621058573 936051550 938801806 936754982 951579552 742421492 758839849 172192948 273611984 659811353 769555721 53048717 873257949 17271403 630180982 559654183 669434839 466019689 602745211 923465338 973730629 367099860 523821134 297349141 829665929 927567894 969265030 789433072 815474809 121759497 231207111 233300951 958342259 872482469 875695234 180844540 791542590 888212215 947363040 801611742 967367632 955467374 965756932 226374271 688404298 276153589 433772547 435843673 951383665 589883696 729899041 585920393 881592406 822198351 963199005 58212111 445102414 729674778 972392762 437880355 601288142 215861921 935500694 804857818 934383290 650482745 962717357 122847192 624402808 409028182 675918961 643725344 705588974 46609422 434785653 482808322 903155912 131300990 654202740 400316841 548862208 917632823 982907442 51221744 687114183 337418773 510391939 974117036 996426042 502174834 681890639 885428167 905633811 625907899 761529835 585634433 729570167 381720895 726267105 300820107 410208812 902260334 976818393 536009475 758836346 292923458 718241361 498223246 798090239 646549830 811063204 521107042 698317694 436256584 928866032 5550542 82591352 917950893 933728591 595152410 684940101 367545425 916728255 501142516 660292851 899509264 917465755 892170953 951738765 151087184 693172571 253774186 886675544 938367198 970051726 500880591 668879873 355600216 531708593 738756307 963783422 580154830 936094438 658973798 938917211 173279665 191078119 883108544 995116254 296401044 296540449 393844436 544590033 376818753 535721111 757399478 909474770 258206254 614917663 900368383 959750330 254148920 330137648 500951024 573298672 544566583 720773030 680774147 984420529 479181472 917581510 563821544 881437635 39364891 336164539 988998322 990118260 754268688 800267639 551017723 874454050 432417664 748534373 157555286 851765177 237574265 256648204 285316439 291152733 60599115 989751197 299069048 853911432 519807180 942253635 504855589 889700941 664354504 960859628 440010768 653286691 338714913 888414694 573034386 828923826 541155989 958088357 431303920 875373478 75830357 948966289 81343090 751568179 439567694 785304763 496763848 697965789 441782491 510286520 39822709 730458033 668273166 901273652 315764939 786586066 78577747 411856258 273373219 538764923 986870502 987550585 475341659 984911990 373006170 462461606 677002182 875213192 565349607 867188862 431789700 922881888 664105157 748524956 791394094 906593803 668916465 937606657 568757499 582828523 195470251 775544813 428637820 577774071 867204734 946127047 727990486 817225636 7900746 972264806 518666577 698177397 953765046 969853240 69936310 266472711 623455824 928799055 964210563 985731949 260905798 710842151 137427125 352862099 967915810 996924238 29510313 495171925 313415575 475947882 312666744 787475851 228714850 612460652 290507695 993485304 362737102 458395544 672473539 767084332 776593098 795202385 115701955 956158136 169663693 232102900 468127199 940989815 49788804 991893754 571624838 837893254 60340445 679929379 267837155 402823246 865050185 922579142 540324383 627642624 560099909 656680944 340277296 514176213 801757875 909323138 314947346 708623395 554675881 936912660 259946497 651045550 195996497 995096682 549351412 606765311 84110098 633833773 141830221 272460833 400834531 676122747 561221925 712769712 855558004 998366137 184384016 870030418 104042028 710344422 914369654 953670232 731885831 938613627 464073917 915583277 934392492 936495909 165285234 783238862 195950487 962930213 786445326 985770409 13452643 900603123 464564893 511338428 554335182 640164912 377166405 556343122 461009087 747229208 235026493 273801297 423608259 670489571 401477715 604772105 605055300 832639971 655602783 895178731 262829683 707869760 617790636 754760119 971367894 985098111 405660335 790790074 809774753 867347454 433148316 457338236 449894781 474402515 287135295 929064589 775460389 912242570 379613312 967219812 183960544 586563526 992603113 996408289 541569843 604144532 497435534 499841894 60377496 158658966 278212844 816455792 153200257 685596218 579579497 895128367 766441755 996164276 625055732 996701918 846265469 908438889 683911534 983158741 100908367 157509470 831992733 929769235 520409242 890275993 590351496 839380589 850379707 986426494 77118357 935563277 121256661 709190035 649458310 664019539 302924732 906757115 898745080 999270615 551928921 670948855 112176941 393570494 708651424 764089857 27248752 175082367 119360885 273557759 526719225 580011504 366803402 473431292 211564685 954303437 628143818 816182901 212518750 305486167 636654508 916112023 892781418 995719585 924170914 966486220 504228381 883588957 206622895 242942495 979900391 998772883 219814770 735519578 287825564 457040586 715277169 920977676 98186854 630278497 633459110 730052451 452190541 999225150 450556546 752155233 546175861 989388169 462183292 515455883 322445425 397001151 972335267 999216143 837095580 999843755 176652298 863384600 434486248 476933454 215390901 856923247 472291876 515802227 905026326 941959396 191391072 958069789 626950428 644024492 285837341 725628631 472584745 802110744 81306183 906539294 291555459 848151642 220805018 430792552 683129487 877921512 308033554 620671288 305414240 885992509 681928759 909956499 190833821 986606367 27256865 405725027 171263143 710767849 877312186 994361247 396584223 560621892 959296456 973017140 134612819 563637194 996916907 999706073 250964799 687635390 487172800 581633485 223449864 594671262 391780675 747215895 152083787 398817555 495963602 786175158 66375854 862232600 13439182 849039768 316211597 941248017 568213651 950890285 920259491 977658745 660580968 760078681 20445113 653272517 572552396 681864876 470266168 847994806 381864844 660659269 621215634 777644954 943351839 998694501 956057716 977004039 731845244 796926627 108370467 511930905 64687093 773032718 158919697 986058341 30864726 487536807 45650543 275304409 7635602 566810024 686122835 934240743 251405174 942232950 849837849 850326062 206876204 775525476 845450861 944877432 897709828 993768725 828383498 842661724 580338320 907567304 906001499 917551878 276788972 560340549 135316306 264398426 605347897 660256547 294595555 910147220 79229017 215279834 141293275 204401296 803545872 876579109 135847881 716700930 233898369 556747307 379814514 846639728 881362615 915551684 595248110 804204880 440416060 491065519 312992769 882493732 13630646 83062670 585505544 982133090 672035139 744619299 425984187 622392956 822751317 899065986 732865552 990931859 569974628 624235547 556197470 557778384 936840627 944879757 305663382 777920802 217513524 287861137 888052357 993580860 414762480 951308347 80394867 362751620 672459038 697978674 112858972 285631892 744844474 845271743 523132941 663868985 8996189 911889294 849013908 942354118 95573412 840744813 385288020 713244275 308632171 672291706 667919908 708905267 361655235 832921053 460573584 703404919 150868191 155995478 947164292 977837694 814592721 930164516 620058243 838645290 222936843 635234562 735181687 817200240 142010254 743436555 591878211 598478386 845021233 860119730 1867822 879656201 958846189 966891195 910910626 998918974 785584215 985787709 124076972 928349273 116218398 641524520 753743732 934117432 971732135 988324622 76768213 92025322 982392186 983506036 156447867 507452160 13576521 184132124 740378363 810700010 436230613 920863313 439383685 462656817 53918625 170661095 616154979 775379462 711097025 739969866 897765159 969887214 445415826 906575749 226426084 806594713 245726528 809049658 751114285 805391999 170754530 659470692 61362016 176961125 817472490 823798495 57152805 642953121 105034972 459497007 972194433 997784452 125009461 570370921 283977489 634996919 736337530 927551321 123283332 930269684 897568635 930217296 501725925 555825921 136972560 924085364 529752479 616661590 310074938 698369661 761842225 971149698 30909114 311628725 621878893 933802125 331999940 827425841 765216313 994126180 148034329 866773004 94948177 285084662 721032884 960043458 408091350 788306101 554875377 597528530 33771875 80622728 295137487 850704067 954690967 969075266 30693163 656090878 372560793 821839336 634342024 819536288 590901446 751804818 328137610 923785486 110876456 492608774 907245626 959456158 943645192 971756495 756252369 921937984 6870645 523090060 293440711 828353649 109829173 414885442 761672165 975089195 521731329 915135405 525754244 586537659 11741580 170774267 936187281 946968104 554778355 869551299 186696677 989186939 252948577 378706498 497483538 575916070 324264691 585403475 264786015 899656511 101853542 148484984 415397062 914715416 259061690 821529763 431011789 856570992 109633971 807947893 826297405 951451602 953181097 992225668 399112379 636593168 286889570 753331696 231009666 835845581 427505250 889504922 524119576 711034047 879176689 921639829 631026690 728538987 551224327 693888718 711179869 962604950 378178252 422261348 158363151 358360006 414506303 615814997 235648246 902003161 92028283 551945431 468427825 515122399 96449100 218434457 563468130 669950633 465743774 919657582 655657089 802079242 513415309 530668196 651144974 799448488 238878300 874316151 189304503 837576799 888824973 960804149 863427805 863556822 235165315 917085376 168463810 624296672 704635758 925101009 737294802 975258339 821024093 952047548 707513157 972774791 225179414 637485354 113373903 265843353 47520506 621757451 431699841 462250927 624987503 868465248 969485365 986241836 957706569 980359627 615685383 857063884 695812249 800865601 436549704 465183192 771026481 780410626 846423305 867054170 44287675 856109896 820474289 952205963 136727144 409725496 639406697 916731570 979951592 988580989 343888588 658067542 864359007 998496062 55283535 954867522 623689728 660070611 338138051 487286846 338937855 342862673 665122719 746290485 744863834 885808304 848453769 988767263 1141647 768370093 593529557 620156848 130469633 367752058 185152617 486451352 156324204 500584502 536143087 818818786 574772371 620889841 260139172 481404768 464719773 877951265 256092745 984525180 614901391 691358975 132685252 551380010 74518886 687315036 122720331 513483461 654183194 853307820 443290636 643849697 927334603 932788944 24944241 30808853 353696527 534497709 194516992 214458018 807063468 947496111 187987380 400008706 123193964 801460601 999814762 999861835 203892879 970208554 763905201 993769706 455990644 571004565 520307341 764311581 639533844 707887247 89638294 560544771 434218046 649926030 683603036 995036210 302439625 437509085 658954228 835363843 18048075 257271467 551763701 678117700 332840163 802189260 322456012 479508688 113495132 345537234 11804692 725137724 708243526 926950649 949332536 955670998 566763580 592929530 537885516 724424385 505873211 921224563 772842079 962808739 255874657 402844078 145980813 971018742 969848828 993611259 57304565 963732922 447045244 517336031 67373060 163337040 638901533 908923157 919750409 931566706 605149541 899060210 567724565 758942573 697185342 926142332 77146813 297501567 95468190 228229792 721848745 969308922 953296115 995415647 686094657 878131448 240313236 278562879 933917674 992223862 891293086 946528454 147109781 282316950 417372147 957660733 698557936 861337209 871204719 943151328 493441036 853014296 827011145 958000354 284834054 726165439 612754546 983593941 795955052 887901214 794866624 853404948 127209685 205695455 116893354 552814399 64443483 111938076 163693006 547719943 959268242 978516596 697393419 907409719 643578685 754227035 925944461 938425196 130076964 449907274 615507899 676059732 78269361 434359516 541722817 871539249 607926798 869787872 206765483 242635773 213484183 464054604 330678012 645767759 197767166 412641494 342020136 608688258 458895197 859473881 85945653 713656041 407778426 791326824 819934608 828875299 119900720 558056891 249052040 585204251 184082525 467878414 662340404 894443023 797544244 885858279 377209142 822272728 677612501 965429529 292600644 903514278 940806017 950239880 204864088 631922698 954301300 955353742 63238919 615398394 377374935 644688574 323203447 643594806 43903364 158541797 886833121 953054800 562452328 814653072 527488081 795797105 280794856 925841891 840131420 980319681 590082689 726816643 623544626 901329053 476394081 675321915 643464997 665295494 944947374 962206022 538953950 925631817 63937329 958969825 752260814 810830019 31151347 41516669 705487701 770834621 115098056 777967058 411772955 591365670 830273466 910671024 521075074 659710327 388127194 896122801 877291632 879512791 98969358 979252627 990445904 992170832 245360531 664429604 642409253 769035585 355631247 743981471 262134941 319903046 167610509 313805001 194020585 735713122 423041000 478541940 754629609 867264893 120691352 305276181 49279994 439832419 544520381 579388641 26383484 76097479 305188160 855387721 969546120 975856270 792088622 837442984 210513506 590837485 171911752 516373554 937409482 972317328 885519654 897537369 514763560 713330410 210689834 867912433 757122092 837078322 607170913 909625581 213168002 725996464 310109119 871533956 877209894 941697072 91678358 830384000 495101873 523690616 121597473 595529051 458696145 851297659 450832918 475444288 38579511 879379639 587152698 663275001 279221148 590599248 653741224 910272185 456984410 702452946 557706457 961412292 248268471 809666764 107710803 246425234 372130815 727602186 774342389 816212045 921141550 954873689 836829329 986578709 905481697 974610717 371952292 864305184 46585772 978807064 124712614 634136401 393715719 699056659 529362593 688446028 347893573 775409468 346919056 390222639 990325188 997968296 350040959 563834767 948230569 988770396 108073617 713450887 587334278 676135503 584263215 588432457 90182624 859916136 10611236 793098557 225925351 803124764 855004227 874990168 932370911 958802673 718723123 792230697 215398334 372184778 715405325 823484711 403525167 727701054 907789189 945089653 790788154 891349382 586513148 803962572 350984532 414324827 955784687 980098447 702104355 785414733 673852264 768383243 761264220 929935424 212014710 361302454 294251447 668444543 107364925 414519603 317647716 531769526 926546732 995198412 563878130 759303699 224760327 993358723 599705737 915376924 288445407 542614267 195430806 239271986 888959157 937516446 958377988 985321739 757004081 935172492 479973861 594445790 270982343 317007503 4717565 853744550 109931967 912413304 460530003 777386733 761763214 830333253 248156958 989649068 903572548 918091546 360742314 837061203 3383947 453543868 816347306 996958843 863759629 944697565 206646008 800597414 667162815 685393346 839413008 954138766 29533133 232819008 801745710 900313484 148979446 642483160 976109859 988739088 207611595 209151368 48483594 860752492 582487650 990087088 234261113 518298188 147120826 849970985 701946488 949407542 530908678 793263237 482333814 646015839 169502564 826211809 918531077 965966005 528466855 605734072 72332101 813607769 889788008 938195632 69162454 208159382 839552600 850170174 351377183 981494894 303718263 593177979 787925425 821852406 987956151 995086301 205140696 838485894 265822605 921855805 737852241 951901420 883622914 976992372 46467769 336402021 917497237 949583523 531918236 838671285 929381641 976172393 273157395 570355559 651328863 934778761 229386975 297916596 651162982 950872581 309259464 365013565 616541225 862883643 227460568 553469745 73666203 317353212 669986723 888840721 196820391 872250465 734747351 808384761 437523407 523805363 940456879 966786261 364936046 379215283 373091471 441840850 3687635 297720222 786677881 959029315 539512607 691754223 96236088 884249335 107162 824142131 240341376 430182971 359035230 637919261 313494461 681469319 444120143 786097022 802994233 963502008 910465627 912987513 353438310 359284720 236139792 877816505 673240608 779459721 63256389 494157047 382996438 750450184 604487929 842448570 716031883 841947900 706392023 907531638 302085242 656899366 470479909 948401107 666968103 702978481 739633121 982208861 90326329 866750206 364084785 593383189 384252189 467016395 845714743 981043344 873122141 949816168 891860940 893029710 694597402 729775688 297692990 642705674 252012813 368615275 78658703 89089674 86788919 979935656 357745263 428365859 554458703 721138055 625864753 793900329 860227268 950321202 895101486 915365280 193925612 412370135 96298400 682781838 535031955 872674757 530260249 631551881 799166459 951697195 69493403 853513524 391291155 662873854 148263134 802237648 978679415 992698423 514460606 775908172 41655127 684865182 655278521 813279745 403968458 718042399 752833777 969025880 842921867 949580462 469238531 541462110 61698669 787190692 114566400 623486602 853926023 888437231 381435276 456739482 572757719 654712925 98265742 358369076 306412807 601401134 967237211 993600758 530630046 966296108 628767638 778629262 318232406 728790398 608301298 967136269 667215358 774998661 883490699 892163964 295905802 993671448 405749015 679963755 248486856 690112311 712252572 875015194 542198771 925118494 762086837 818022887 552513506 867607904 388285589 570068534 124721718 900774885 788912002 881887971 388473185 443031715 347450252 753163297 109802605 801833092 653381351 931522076 414100288 776921301 633616950 748108682 993814632 999870969 798093716 877969069 261342497 874998162 761102185 883425897 593645459 749604501 688393027 984827822 458841678 831200707 524850650 908159323 203064201 682745799 837219306 888751162 848595766 880997911 385513396 453966208 553012462 716869918 748210453 930616030 399792104 983674599 361165288 895565217 143430114 861892978 952813398 973959802 906214252 927216634 539558771 682135852 986704245 997532481 889152633 972044709 600587837 838549765 718385164 796324802 292708722 809528751 658105825 802829998 83584656 658517775 227980416 610018232 711561427 929168738 568418980 843559191 428160109 503150245 712460333 724072814 435779689 488351170 444804611 766603100 443567257 783554648 625097922 941059436 57421280 348078718 943317547 989706904 362057688 708980279 689924474 784713428 534403067 630042528 406532803 772262601 385332720 766513571 390686231 803532324 896663055 961157941 131617910 139576499 992100828 997477475 463622729 919659637 181135071 599795825 535352905 721893643 486607094 564837695 442527229 815486632 775979739 985596452 936028554 946326307 783703420 925573708 547773268 748852772 511182309 588318978 591316886 659992296 423141302 514221907 92126747 293892235 184807788 402812139 511839535 528848846 10072778 686951560 429667577 436613197 50471945 709342778 623652070 740547052 202582962 297412717 44646401 966315619 730378516 752614576 316266919 578840441 850527921 909716608 950092975 991292253 989742025 991397947 492080670 746272358 306235512 409881595 966544656 987222599 262977176 647904136 754791168 913702608 767804950 892612400 483480421 996241307 621208569 638349088 23458183 83842923 265587314 907094758 467533294 885317037 488605368 490297170 496173748 987502452 3009741 93704849 638803327 872108932 284310297 591864909 540418414 952449847 638313393 849461095 414661244 435503476 215317534 400587362 926935700 933432771 721657817 760690804 897132047 960954495 909188566 969981464 641185305 779468598 475815676 801767761 704556847 893526886 709096053 715126342 668012860 789504167 288133864 821110194 96250331 135354320 725503975 986971561 914915564 931961266 513704234 978928467 437969002 781174972 146657263 886811631 787484247 852722281 53218231 94306807 611582975 633934563 335820340 580471197 931451654 935758748 999024719 999067853 882968353 889412366 750419742 987266974 818011527 977027958 618100746 748590160 792139055 827680077 746048804 877066965 990727728 996501653 959373579 969727847 257675491 581054121 682037849 947897081 627873902 839384430 677573644 853083118 395504165 928717611 181360204 804631788 476166006 633941573 160952622 184403667 181624361 561029469 207710045 953083450 475564579 836000204 461583881 913381773 960100283 983405309 490916641 928548768 825110850 943003245 420130304 828284814 795236236 987621032 262802101 855836251 201651977 908962216 167066453 896186767 263105754 892358639 140633436 450445536 783606241 975034341 173094887 331646729 370230105 774476830 282060263 713895305 469221893 520035724 105331446 132927985 403899035 494006332 968034943 988657064 348954559 820977712 684456964 808820899 151565390 194561775 433649618 598636563 410939446 529776568 294826110 985849094 674734649 755013373 132333508 961007146 54074504 294052745 103744559 854037236 671094270 865980343 609752696 907936298 742833229 895549436 727298902 733093526 696991468 855369782 413225018 998011499 26212524 82996464 331240765 751896488 890613059 996698963 958634809 992548782 966314028 980099467 838360377 859219583 15856308 51309308 702727655 752047133 689094833 918065759 30581364 627630385 366689030 719419477 28502655 594496852 385308515 729834898 814752149 920818524 795730682 925342256 389661892 890150145 594109949 927982501 938787839 976226166 189184994 313696169 124280030 820579682 885520540 976487775 412244227 917310339 323043474 453969242 134616231 467897206 340920454 713962483 752099293 985031378 151007123 353226213 770789083 791953543 750113902 809706059 775372531 839257122 598095625 770027134 102210739 464235476 504869948 847388787 122277944 394548187 202009387 831769223 844664277 995973299 688399297 801993117 541286522 553120248 828148954 980932420 671625049 921147231 437572573 819280043 157304246 784338823 61235731 184742143 739661209 749674344 511418902 775984251 973387959 996245233 58451 104891225 655455351 791177437 958145523 994130971 498256044 524277159 226548756 409442640 104553391 867452137 153402353 197124367 557029916 560913111 62751262 772023642 768422883 796591752 420874554 512661923 620429108 712619158 170431827 585161894 2600378 544852928 670089193 781769208 595833796 823646087 654264340 939087808 387214738 530816446 360907510 683468885 306578454 332387303 779909305 910485926 195756084 892142900 764623762 957857661 447272682 525442775 553022976 577224744 855193212 873039799 491876360 805050990 200316596 775916114 751126047 994422561 157767870 997677618 379559803 455119760 985844166 991898955 407478049 978349180 28144301 605163467 563906345 855216208 576843889 806522061 475678998 656970694 112039047 981368655 159761218 791941208 500233697 802222497 826256115 829262742 730462060 771383526 187747594 725319059 571121101 657218507 835961534 976930276 330030134 671702818 470061829 574045243 310372198 328569048 987498065 993102137 307833821 404337868 267835254 862509697 583649551 897977391 442716858 707925051 174651309 771420420 485551607 883128991 361941772 627055538 243388380 943618253 184117082 285068338 861699954 902106511 35230252 254472782 216045035 383953695 579812082 709435395 12880612 335544482 598345998 741017955 244372822 468637679 602036170 614697413 659095040 967187576 361135693 807714852 825325650 926910786 440144335 781052996 513080024 732378516 416425619 890934694 166735381 625955730 133720510 518008604 884721841 922897457 245486578 641407697 635602276 676551629 111455793 892149945 406836285 683182487 307740175 381313957 370345386 806015578 408101542 662759204 560953712 881517356 540743575 584387662 259474970 430837836 415797115 986313551 625333587 629247714 645964550 821814672 492541643 910502502 934778959 972502656 289153626 813281777 664288224 909578578 202742181 487068080 636613036 726771405 345268175 702196468 743266006 974625800 229668651 451272183 356191793 746556327 959666897 999334441 380313416 840151192 945555011 988794961 334423011 501628443 451049191 826372622 834016477 875825764 292827022 481122659 631837272 867107681 267521416 652982453 795094849 888289913 424890937 548968641 497708042 611842738 171017708 564388373 297932499 396231337 245898048 594937463 943715027 957482821 970937493 999523900 751610609 958810822 120002488 685973443 641745334 802175641 596909206 776335849 869920998 917374080 149815161 900573364 340119016 719151904 704943770 896827384 914772928 967363932 685692658 753077427 117448433 141584092 800885141 890574835 873888580 874791075 926573079 985161088 459379497 830069405 299670076 508561025 392294897 515689666 722647634 821899078 850494815 850599482 322530322 476599164 53501863 856531069 533105062 577242392 916594491 997132036 117300728 739576284 988181298 988601130 475444072 737064513 756765152 874871326 876375089 975085591 614831594 903568239 966936916 991397426 18843597 128781964 300844938 674065699 864458198 997281579 559575887 945906694 803589821 926908283 931160078 933440751 861705995 925385058 512639825 682483176 277298053 945481542 187210723 562943689 488989765 834650688 219068740 263912785 310409011 767116749 508647557 599063618 193982308 867817928 374109052 882662786 358584982 542462840 226996864 528701362 507011424 816398768 501376903 673866777 506840889 722490717 186147628 222723479 45195262 140313663 509822541 962900598 999374575 999504312 239092529 886533899 239300450 551450985 514903332 887153393 574438153 888750804 241628988 294136988 37057168 734271224 671130616 919806723 821776585 906451712 235320084 759622691 883765054 983512067 944559814 946362558 904303620 997819180 797718024 909741079 356577980 504120921 207177555 740693576 853400927 912368970 811215617 849936314 198483325 466746169 944719502 949538738 514241132 920642411 678506461 979966722 465589329 900452863 457873422 610764992 388917349 728727008 126946211 602132222 883096734 953238327 747497251 764916673 202356052 841964848 413982843 991499375 755116192 790995860 546041114 886668418 660810418 915819661 158684626 230208230 931184239 962815390 276591548 920890832 190775538 518107190 175539864 571515942 391324468 425887477 210743170 954877474 456538033 610317770 240513756 382770280 551137887 697192020 105885643 696039212 80851962 383019793 881208070 947340670 58601070 486183038 139121585 146492194 598722598 656457519 106544666 595466052 173593804 742893557 893019689 970437256 631418568 890052412 111795735 313381225 315204280 432886338 54126027 967524915 802034337 981157674 15147700 581617299 642210483 972184511 158909326 611946187 92892106 885370307 890624136 968243363 984263411 994853943 886175332 967456693 590454126 695042059 933762475 991512016 727255996 836635405 230371078 755260343 95385611 345410809 2267262 42570534 960093512 994565062 531369031 687641175 122374963 250921829 750451349 917029581 416063950 618701573 976488205 997741274 652404696 991386092 952979943 997174606 851665366 882232918 763488009 939200771 498903888 834182407 199305694 540650629 19643695 940805672 277665026 388319827 62462529 543687213 304148187 705103636 266976804 297011593 68781354 876051412 904462354 987843376 296760767 505393455 689722215 781757159 602405597 619862222 256211195 484160505 853564945 880964452 697142664 808217859 14995653 679317597 722843834 990164551 129832684 295726352 284622974 977379920 268320027 699259574 751585100 897513499 623618546 820554673 695803160 705335006 17349303 523335209 51176333 848798037 611026913 634616619 822363050 831373502 27611207 164850845 915259723 951417153 78127576 660951796 864035687 902519982 697560434 925755524 308458092 359675397 881831942 998252545 838305483 943030835 722423832 754039502 229208028 675045177 486238908 752126154 272591605 669845963 86813885 157717661 607588426 990010423 616647269 667149820 548971763 789683123 879128450 889735806 207863680 411042806 758894977 924602487 381448183 789706687 538940335 934702912 345814878 655710421 706120378 784171413 454612854 962948677 275026060 820129898 462283665 749263109 900252874 982164833 532490460 742657965 452564851 704428120 311407942 629038747 797497744 874323453 96597087 977118933 760823087 810829379 667525826 983869416 530279620 845100494 778146730 908913559 819845787 908545500 517439599 881662106 837498442 914436519 513415525 944293266 441632482 847309278 23018956 34870796 667740129 964730446 751823122 865257922 171280423 836842803 159268557 256693294 161749520 165679749 83312164 439420830 465642403 972449827 835454704 871726335 863852817 999052739 958688948 993920283 256897392 984558353 793540724 832661771 567079080 663739390 749583417 934322139 882915943 999723128 514742422 554943260 681800374 820213234 778812151 864976058 902867707 950649653 97723004 505572640 49110587 575692314 377502848 822134321 237099252 397491120 228423622 456273706 645634113 666373498 11688076 778965721 508653717 993001504 521098945 566198606 527531819 837904446 771397059 808446381 24631593 664705778 114409697 209040670 254673422 888144624 476477129 653646653 97219013 371840095 708930091 768822030 65615520 548837961 466814305 482412330 548923343 611936705 49132276 624285543 580266757 798887965 789071358 793385122 51168371 895092022 354969707 478296495 96913672 184902616 415908048 539290190 692265194 918221531 99654500 270846268 96939707 861870285 982705169 990691056 245564932 321704867 133833632 566580834 549098331 760025670 418720117 516427976 856187633 978930421 11904666 280161259 672736572 980576191 504236555 671858060 710486015 788020760 830662353 966463306 269774538 521003961 405570143 726444528 573144308 823779075 704639914 784767507 641934962 826793495 824392209 942263508 877637561 938895560 941407856 989591624 266831010 960839959 180019224 512302997 520010080 689312238 882367981 952082267 152638414 339577977 338876039 828971290 295779941 814438080 795824183 889852349 52388335 328182586 223770810 952663170 94083254 455260531 889877172 992366995 903249502 991095839 151087722 923838086 225580364 301598608 208991496 384560370 719750218 799353427 976097179 991889805 154713808 947956857 592679689 840538574 52151679 605117290 328974517 643202817 84719486 511183870 809424154 991011184 323495870 644899704 710140635 935844282 349586660 948149699 620601365 804044524 635209096 816006680 645344252 962014788 55689303 588902363 665939672 825576537 454398586 892625699 155500453 523599342 358968520 812925749 241079479 630383206 610253009 791570484 612181569 713899369 602757015 613345808 38637342 320677463 300384697 957577230 164586416 547521083 981384418 997430862 415614103 984964379 46622034 626464206 699689503 935035324 316347003 401579370 637153019 877763300 323885873 884923575 442507479 498785499 890307016 898735991 652897304 691881822 374033332 759470591 691841805 730992189 502010859 703643139 504102593 592505461 898539686 956755444 142291903 783103738 107553038 770098398 185039733 340674354 146676630 854110642 885417767 934943556 712559482 965137072 179734686 191133272 413934835 943959548 297008176 340459727 434305412 997746632 877226917 980312638 71697920 864136536 656605734 812505610 821668109 876271883 499156265 898853613 279263122 633617750 5448397 755222353 461079122 931390665 135460518 522035299 608936919 731679884 343443341 569905440 124195786 307993882 438373208 737678788 909832615 968406505 257191960 736450483 611906407 849062667 110455229 428842994 147734903 412481606 825505226 838824170 706126253 713614433 794172136 982816230 175292506 965374347 541688312 816058868 419080916 683154224 291386095 630379672 992026613 993985327 475370064 829682247 24771255 283194797 771363463 945453927 69333633 633955842 736095566 751723762 321799839 862265350 553988889 758679939 475679485 572531413 22367516 542922087 154192295 188027441 798343210 941268678 788807275 938498671 905771088 984254157 298147218 778144202 24657337 167897481 1527001 725386080 900938781 948102275 729248012 807550013 903264333 905165004 83816456 349266711 852050498 886440675 527639074 643120853 454167532 615525491 25730114 131341193 111145406 664398955 165446034 393987655 454586668 794096145 483980042 904598302 517332395 839144504 527216466 912958830 4434538 770689417 50373549 230072416 661111800 926595228 811294229 829514382 501349962 642984583 931906786 945053579 110325173 927685332 345975741 589953417 907614791 916126769 870250700 872765687 164917450 653624313 912683674 929151245 45645173 77121909 583346872 904412106 97399167 107205381 539280565 904598778 970700742 972092798 96935120 207138971 380900483 629170961 86024722 495241873 819445456 981129755 396755934 798307369 385205876 390788943 906094265 931385193 3061886 291893939 161141736 634167565 596858102 742572162 251509246 669058388 848842044 911557239 590865489 867922373 126741872 913068380 88470563 947656270 86778547 725292475 635222138 942226739 987437088 995066501 63914414 176464709 918896667 991213556 630928261 811895835 276591886 309252081 680705600 696499948 9891344 825995192 323895634 580785427 880206881 925211888 277261178 287391354 139520411 553577923 631160751 764318174 688131518 738313594 329971997 906061477 330384044 925962353 899684326 958186120 804282085 922560335 908358815 948220560 862970846 906711892 425528405 581267955 134625325 711147713 381940632 891019407 644495042 965809779 881451923 922297141 301988470 726844367 243303093 431391897 754504949 856011083 328081440 472981510 37486967 395870282 62400055 646021676 705369697 946860006 597122386 627227750 496590803 836357173 458128009 663658249 918171635 992132671 66573667 785181805 865630791 985628857 855814760 919530605 187746309 464880160 721075542 922476365 814326583 916021136 352092781 387626173 637976898 746334923 304239456 354781577 46260844 541188919 953240426 970049153 556901592 877886141 688338 698381008 208776479 951984973 683020500 807651466 865112972 909861185 593743635 877164663 131199913 965437187 972948068 996240205 469380673 843552925 917615743 957534844 454554145 625199472 281481764 707658492 657657685 819607912 982423343 991170479 821096466 835505446 889355515 920021017 784947749 897190196 105989160 756314631 608549133 808701201 746007196 793625224 24379138 432852408 174773741 868030350 519335260 651314444 915972973 923977038 108027436 815025089 554010331 645617690 7121115 349654576 398436390 496341475 984143119 989483211 410816555 601853872 944012963 955692366 425366676 736182576 677943888 833700315 165496353 988111112 732791972 812183193 925481967 965743963 528068923 956374131 186588903 259139629 677330007 791333117 836656019 854667556 306594741 757373356 80846219 499492554 762095926 960837498 98184949 813427775 120664103 706678862 174514557 210036426 15368482 165328006 314979795 490332035 657568491 934411947 352852127 629464647 767421786 794429828 410220083 955068785 144480241 295837055 791994107 922482023 68278309 328144475 502285204 772969890 296428161 622570987 398810531 940603964 312143801 333419392 155877333 319345595 138454615 757866221 264895752 368612907 482045011 670620382 689605974 933690591 519252984 847667435 961164920 994510437 849277498 871581127 504666656 723194879 800976057 874002301 758076491 916937143 12302977 378473159 551377517 901274375 39676066 199565604 973473546 981101382 674237984 837339194 405712948 961658125 15234969 192491108 853120535 905785375 66463824 246683840 754456589 859736951 82014374 98109529 762308691 795033936 654820989 824497747 141179033 844398999 40839892 878908978 70365106 929666724 817172076 901929335 970475714 990400999 44122793 170277915 923981394 933414008 522681296 968324233 854960328 936479519 731055333 809758069 344136500 868337586 580770897 637368804 18487037 992839505 810167181 852769829 902068395 970009613 348687511 617501164 895159016 967886420 987713832 996740885 591813865 793671848 761963471 877083956 885822511 978387320 192652416 714111760 418276662 722587002 310879624 925152164 668275559 915285295 199328351 698712329 481757402 887369267 111476146 437514642 88661953 986513694 669552157 915626828 834735780 958543591 558306631 708031703 561221164 943046192 721085072 738855707 652918760 690613612 189236649 711021744 959120461 997538777 505058940 571943164 934637327 945635644 851224700 868542185 801973027 833912539 418647956 986859040 60398233 895436059 184406560 954644850 243409146 311124803 29569566 71763547 597686824 713546992 696105332 963403504 780438415 988615324 982646739 992156944 411735514 726704699 19986085 597064960 120766024 646982386 331098123 971630745 715895853 800133755 363461793 733435545 910651825 993664148 184138204 443308441 484627688 889899058 601713277 652755520 620082747 787353924 71903012 239245465 523044268 613418532 283127231 560024632 596823341 675113200 896613646 922669741 248431793 439221936 635325824 723175671 26108036 950842113 516673782 754416396 773467458 834537484 273296587 435156366 980299493 998416618 4416117 331160298 879841819 926597571 283473264 455069013 906380745 907175141 779694192 934901669 966236724 976027206 413014077 956627174 229722361 539737712 369398787 948767319 861459515 915707261 527192728 891857094 595214169 718228842 808279695 852649476 930365443 939972832 286226062 710188662 343879630 757281624 163209569 779593255 767614968 795016769 242828834 948487478 811094511 853070370 984393808 990969943 476181256 962750360 173919709 239587189 346709527 381842065 98206740 576245082 987939829 991416939 756336814 789891197 833653937 859542404 183773477 571304590 165368911 499552366 562983570 585491476 558411341 853237148 551477518 599926593 224418337 347944733 879051601 950313480 93733865 584805997 510203616 587859535 767937945 937557256 179754816 590326642 260158603 306174715 29880986 973665840 872136030 989079827 78504214 877990860 192811412 680649892 89411191 567383092 485579354 573801713 393285738 868391063 946005537 992910323 253812752 452120492 833726590 903318050 9649429 283245698 734648706 859083382 872403657 936629858 184427194 880299816 77623697 232454789 465210156 594872649 651145452 946594251 523135631 550189174 366440541 722038673 466899354 714903387 597631314 971410407 460482015 541671071 883687323 898322353 561154174 965188628 390810582 634885052 133903031 743316461 433564856 874151911 343259225 785369172 203244111 453430564 812864097 962083875 331819486 906457083 938907415 971131302 394820257 729464963 827291751 967301275 269969101 750330489 926771333 934600698 341343940 562381641 653741891 964711857 412876844 603189237 983692403 988581137 693414130 999254090 461580241 814520445 595797860 661903874 270958326 796883262 677018481 829336146 367143846 871238224 86802620 716631475 886495663 978761151 962900842 978197978 924537182 924948337 998341361 999650864 375943628 873043087 708002995 844629642 45426669 301679501 463665792 886128518 840265484 996941538 917802270 944352693 431943108 621859151 968013230 988699441 174458209 405434338 119318432 899165313 789833294 847581139 520507279 849301624 253749937 296957978 555017784 860476692 913226282 926166845 619994236 912642414 903928772 952875046 737259099 832031515 50110955 695969802 347289475 880390879 376001895 923523538 798215982 829968638 633319395 935417609 443891034 530588379 4735064 503948034 933306584 958705392 358003428 499532488 325889384 693424213 668363136 932991791 800579899 917664923 225036178 282941717 264349497 362294991 227930 440787158 831570095 992130587 180238260 455154312 611948268 742787465 256456403 351552760 763713149 895113222 913799135 980087994 863131676 968258456 664741526 674810358 118222653 598392375 31813165 37533891 60895657 836720029 600229278 964881099 82696957 551335975 134327150 329072410 510105093 705694541 925313717 954258556 890920116 966000148 252718684 298017679 371666833 526335368 512719676 773291856 299835499 624899010 353888442 739441447 647870007 819463568 523538895 608863866 378706237 527367145 597217302 698740939 435407801 613153775 902823033 946569014 809995535 882064815 797695172 915086759 506027 732467096 663196519 799232308 373522379 988534132 523719381 862193825 133635837 574776690 460806883 685055231 716514245 883312872 69362673 109681337 490260285 908599856 957145316 991217267 675924462 997738792 531593977 650834729 222225742 293464685 949703475 974221759 284663882 405472294 978128931 982674451 220839993 487107062 108963776 169458416 813093473 822495735 369942150 904539357 52553346 581797717 31840957 897434891 262548450 503534846 487929280 955177824 508485079 545480789 683125650 851634602 620756584 982251633 822140927 993384904 734804595 766049935 814850752 962722408 47494574 132727757 136583768 206530838 296062580 621344629 919554586 995620927 855451689 886661348 639629756 891995377 52620369 990614909 678538775 705830365 92232045 514555221 303884871 546172345 665286501 710469733 325495999 373349575 851694324 949012548 551719462 579103154 303836946 921208035 640191168 759817920 185004160 317459981 918149616 998974479 456515099 541694598 784348998 902681237 472328289 994716859 20251491 238952189 823042374 881689277 522547271 647162649 700776967 821756563 996459891 999860653 744022430 899904249 587750848 852565305 162664253 539279030 211319986 223572071 480979384 614296908 455141221 855207494 629544066 662369950 228653510 650512324 251653717 702142605 786323993 791974476 586708903 745693193 690999470 918564507 388791192 715868712 685871293 729262481 815615901 991176117 916258717 939414086 288484284 636941613 971071266 983598040 533436733 659132848 931786647 974672742 629165891 723043890 917367506 921319630 333337797 384545310 637546376 691712435 773215023 799836234 357724514 984847345 37703765 910426024 306191056 776092031 639182627 648728195 902643534 998398091 679900490 884594155 71482136 921977297 764768679 821084219 882634527 982752899 171341118 926150008 887757462 990761640 813178432 988406293 270731567 897123293 984570810 987228216 661596803 926279348 363806122 934402921 892923297 927202578 933097402 988474061 543638500 984512326 695095921 871156112 575614522 979229229 700347740 752078839 876639831 885243512 643710017 790227747 690619178 895640526 770388420 866622040 88499832 258860209 578687907 737959145 338970808 790754217 251345768 649582077 305055328 873368039 479984813 648548130 168039422 997316669 593430991 671059280 413728927 496409671 586313237 636830275 42793098 128127790 559665977 597187462 775703810 898189257 537991577 789445445 638824408 928651513 695267598 991898220 56461979 765630547 618728810 953943690 326102747 453829591 505799913 993261720 65003012 391533073 714881069 888664135 48556130 582958446 71918341 284514093 406347314 817788698 352004262 469582558 270206373 995604099 196476852 773198627 442986454 659956892 111981891 474570374 200276150 828027757 724755285 983445984 943625834 985045844 949008878 961371810 137024660 758300351 9295461 846767920 365154250 509143013 208976034 267172838 600918949 856958322 355227793 831096446 849711862 911767942 100682476 453862373 720183809 776368486 470409794 679314597 15514440 203162956 544582961 681086281 692804648 744686743 732818808 964513490 734669918 816008689 23290213 616755202 195166144 512160130 569946626 758688131 212599648 533898150 763857847 987521439 607641881 901583324 374167972 847312226 522289114 805332389 712232085 910412392 6121875 505455419 762784779 810849487 42377924 698764218 792572805 809473415 28309574 688616716 281336642 502191430 305330714 553322609 519609375 709070357 674236900 703761723 529746467 657004964 190294881 259047325 351516530 467225793 638436200 708242515 615315555 749155945 873773734 903545627 949760697 979396312 179288663 466507580 577236190 957323706 511055888 866864529 971360655 984610050 254752822 969598038 864519231 864661919 794727558 825504519 890094154 945240617 90516137 767353048 917362004 954891172 780961573 812383655 133812363 280644014 253545181 719978713 27229893 936606964 600506142 677859033 603159244 767835739 102490243 601719676 48662354 272422373 644389040 768235494 843753083 845827451 866495571 999952774 816150921 857528589 621730827 728564007 455008163 848327960 210728920 969851583 48405850 701663840 268915576 780659491 631697497 954833630 297731810 837108204 563341484 997660970 649715190 948905219 77330772 380406944 927819010 985228131 605012601 959917079 997463276 999786913 379965779 498483089 706487429 819428055 750133780 814700133 606231192 835341656 283924749 406600717 404916937 510536789 384715779 970356177 444982209 474710766 39174904 693569262 863459885 924851632 521591708 798287261 56945617 123934739 235646139 883021470 621337272 941496177 580169536 595477757 751753839 960773065 295448589 526699800 159445385 864167988 141247368 189600307 370961207 422789797 645169691 862794500 934705712 940778475 70685338 494748325 688312108 997081062 537279500 720712349 708340162 729160101 550519305 798107777 511875099 737564354 323843761 575800564 108730388 283209670 446461781 838938059 859634758 999605035 835431493 994150737 858344788 904762998 837682640 885061998 58229359 287888801 108120675 305747356 768434963 914389490 756387999 780358380 337874859 637753167 782092852 939437334 350772716 873449106 710124738 778208823 264048156 282745312 394334862 737965767 413881682 849564850 526774646 675981228 916552643 987615621 146077820 193556829 618239587 814547463 198262347 863153593 508594761 825594463 300966180 933242286 540493855 588420142 1391668 584078291 880313710 985630332 460857679 615407914 846482224 873881373 896867549 983139012 867161322 915103967 948977700 961866171 803966649 981090424 849627455 902140315 902510384 942626130 735346553 909707251 719221286 854308380 265569386 613106138 810043298 848864990 876218478 937009967 608941198 832403214 514399238 647396535 425122607 940204272 760061858 962617492 512019902 612777097 817440217 869863379 971034909 977162271 364549887 979987093 453001502 989568957 966844193 985840588 908520048 913430001 995361868 997328404 535697373 954883564 578997712 604222727 794152810 854304426 201484482 862713505 560028890 863236012 165616605 971749728 876928404 899852330 491059589 579842987 943417230 966102299 427708574 510075278 294589335 429891932 579819298 930911127 937482336 990364560 895844508 955496600 599560707 718179799 498855446 647445033 862033470 875370576 462630743 938497150 975321756 982462819 613220582 791147480 565108608 696141743 339494295 946650731 913111472 975967045 1365613 187772387 671203695 716458798 972871351 975843482 360254125 549357055 151298671 867510749 675470364 918109904 90526896 935776552 158824280 803077302 945500765 992868140 792389192 865948114 496415531 515008734 693383273 821732319 954484756 977149392 318842373 632967842 451126580 912700021 226453393 629909657 561252356 651959125 44476896 748265010 887280162 892875320 888016962 922710201 519179536 813244311 72242870 534700341 685994589 850921021 2558849 701481138 466275911 934731827 409088248 962151226 586603142 631580537 101287188 610521006 940776729 980578436 366802311 670798627 584342689 688513028 349603504 510069659 753902425 972289001 892893091 981232277 396104077 786245161 815628679 848982855 626253126 749195061 619139026 863027624 96570270 163839884 795335505 834500881 874868671 989775453 597181231 614692142 302062668 799019954 12521939 114017662 641471336 990380372 615606521 661024935 653216340 695778477 657927849 705109163 682350098 848114452 935324408 966795116 900682994 945425958 349293625 615606752 977655628 986035433 364803698 497709102 897879447 911387353 425144720 758614292 436722796 693613655 987832054 995292148 96141731 598264409 755146085 840518354 92573821 573699320 224912218 313311747 402532649 558221329 938238752 951560680 857469137 907749975 853486458 965904426 136676776 586557840 284883497 895731885 130118200 205854849 937191473 960022873 983000273 991519839 886034233 896906184 689740220 800322156 301027201 571609614 317613549 786149028 327723565 946047217 487781890 549535690 681161495 944034151 558240577 638815986 180016481 950370629 598866548 625164309 410883953 451708240 892274507 941019351 228282811 404836367 398744185 872856142 495429460 509062375 161144688 532588985 723558254 993798398 194273427 340009650 221094898 757623270 38441952 835899620 279237194 522615169 819992192 903025720 260520216 328001909 447360772 645796335 436090007 945277796 830943004 918918106 630765876 893059358 540658465 747194054 428580074 917597504 522841443 555406165 976831671 989599102 762493341 772739976 938416426 990228951 205164315 266975974 83923873 926388830 812980348 974320689 671534776 988337738 606229938 994040743 869342629 942681791 489148197 945524803 955588572 984221464 940960722 963067858 776165225 798373596 924775167 943168104 222186769 636958616 373838720 950743149 766736436 943069798 797938801 876083032 299409936 832038809 29894195 64739035 317741431 688722918 413824541 758690051 700502723 996113680 265397447 631706568 926481314 957947471 92177573 698768011 10645423 95275733 542384212 953026029 78911118 264968296 886676758 936233940 476290207 909499486 870463383 875691148 464601292 846115922 761538703 925622547 731690982 851247624 686047392 954522641 469521591 850181080 604582409 765447570 181713183 944104308 572427038 776458801 902689136 913666125 411672311 927239569 829942677 998669781 780634933 978859330 218819848 614093509 454057733 779197631 331401638 894357989 176132213 494630114 926491491 982082923 627343033 961505660 445504018 854508327 768377102 857905588 20687150 786276863 781315136 860801536 13769958 404583642 158220212 588101240 713741446 837751879 687817911 775883356 238400488 607972528 841736449 885619525 947490308 977228381 962082458 995144917 192066971 330020185 481075827 646157977 205323474 565529025 277149106 949143560 129015315 375178830 293397357 875176137 515169205 565060537 183842955 741576778 869704947 894517906 264914724 883824967 314977023 559779575 903418683 934704027 998103196 999068682 659138404 820135371 777350503 973227731 807119295 817796592 716561316 731700021 770248666 863216244 499517597 771946868 107527544 491803290 227007349 231705231 763236456 780944896 825047635 879907872 971137792 982785556 438775127 471393587 350845201 480057333 90805302 653699487 210616915 486853470 363057141 369683012 674614077 788672266 616554866 935180708 735058727 972092439 805636390 914260476 270566342 550810103 44274137 573497092 307554828 554073403 966881985 970641641 553206239 864667581 225872203 420315494 682776019 965007097 558502893 887408514 245453459 882700704 800218832 898894155 242431516 701576678 816380964 967524441 507250363 744265200 60578800 789191854 58847384 439841490 136654087 551880151 779021709 950684967 457791719 648411639 829597488 834362517 646255779 997225930 817041585 821185783 236287216 389035380 349881540 912940622 35944708 478315277 43809221 940935346 287274152 748646540 875310873 898116533 986719739 993012202 225604853 888111170 53020942 831905004 787495185 813862431 430541712 827561636 369783557 615545538 520606337 541427000 656889733 712501536 76967003 809340817 723870547 972260989 109051878 999994933 379183916 562580092 561355261 608406786 549930458 970691700 191306768 976704902 822251743 957272242 411920278 489177036 196309682 954615264 981736592 993895044 299119262 709256824 498807890 913631402 975288929 980180228 655747185 984205967 819563143 910276885 369753555 923327328 750007322 780766334 321041090 430021077 771227419 874672262 395384527 991898346 15695600 210406900 167762002 335179966 768285058 958542539 55260117 184335414 524945070 830600057 347966963 569620958 765249751 929323495 350800117 679295219 355852645 846396970 949707437 998756286 239462409 398372770 35032369 391069989 951225057 992724149 129852986 667410852 121477349 521826859 54536065 283295730 757843297 923417147 204124693 514702711 858237093 901392657 809737228 970127045 946842721 973010192 207956676 734206912 410577318 616595988 834911100 925689599 879469493 884884475 669145196 916825330 624341360 735185639 896246957 921472317 844974444 971959303 425951467 750246647 127539506 899673699 453490103 468475285 659742800 725169345 53624300 517815302 699294934 750942750 724620667 774364130 171879775 339991459 881242107 913271093 878851348 899979850 521910133 525527424 974062396 991395866 655260895 914261019 605535016 746388782 691392891 725008381 787256887 870279209 317893857 989153356 275169578 414474101 825324457 948838937 723707061 764323689 69517059 685575351 713598968 968155221 745952396 774768469 143785761 193113160 866295349 913522962 507449303 571546587 701808751 882579430 376669225 999638570 197207559 812875910 377457300 616104784 617572736 960816492 344401754 432200230 514236210 937752711 992107035 995277384 945997659 982123364 732157675 916318012 153455728 867607617 160471886 293559317 429699658 866761076 750329233 945392537 946375149 964403416 936527322 943437932 779662007 852885888 607545324 953134071 730064460 742495811 779668908 871466364 823133696 983421182 625361169 749264704 952540551 967953790 262516313 782822176 195787898 857181962 824026628 923508074 515880639 521628005 325733996 702963241 388822651 494096631 588537802 698988014 969003303 976055214 639584942 969430427 121570957 550612765 356231876 867756143 30365910 193415840 408750631 745841509 710335403 822764754 479768522 746319819 953870331 956837276 441679049 662234237 162536114 238425621 735799065 941573666 380308633 382171846 314581923 709907846 938983124 969417146 623652007 912925127 363685970 717170635 419672313 850976676 865555297 916873172 927830986 966952564 604435267 772138978 694501236 860448194 145292006 745078055 983144000 987881164 379581868 646919440 561765128 803778997 830708457 904281059 144940577 260248876 537027213 655160446 99877201 501814994 412893362 517603812 227217678 230521499 400664372 916254935 477477953 742547739 739739376 745521552 481709044 817017825 408895675 754932472 734313083 903790448 622398 57088166 104780376 856299522 11476770 773144966 397460456 711304114 725479247 866883203 764035363 964297061 290543039 854859223 511059089 949494804 536650873 625531646 224319436 646994348 325986730 332186259 400381052 443917193 771648803 821350696 210295643 357855488 560549725 889923650 859666473 890157530 415618355 811879184 692972177 882580900 900940507 915007149 859413992 947017332 929968974 999089336 293903083 594190361 997731431 999892232 933410102 955784536 789619645 945866789 77920953 200490435 605151719 901882552 661675325 977459601 105015252 971384465 953260935 966606304 640432888 856357255 965515996 971584506 587190035 836528082 412027501 600512614 3875132 522613664 839968030 869144943 259886231 328072703 329068065 845900815 924592392 956643448 139137728 552530275 605100127 758568605 267154242 355185840 335513236 410864884 66258957 369372749 653953297 879373223 509343696 757229674 603218073 700442752 436983060 829567166 70014905 564229984 150738680 389493557 321059038 623784521 303046900 514734151 335183935 981121420 288917977 466945075 227291878 256886037 901493661 910753210 898882727 931581628 227307397 310895178 634206064 775900342 694466609 727102768 126833041 626599841 572252370 857220852 796912081 977646156 283500122 681026636 637371041 782812590 717867988 899498833 662208261 683913876 560453061 918203000 88265052 297253259 32395478 672514811 973925027 986448547 749822621 987459715 703456517 746614111 39164483 45324550 949521883 985076896 136846512 177631808 238520044 599178158 848694655 873983447 224713631 420540024 278809576 659970225 288669553 378181649 417067262 698338843 109699797 649892370 487087948 669811784 386084429 885828997 989146152 990849705 378409796 784238177 466264733 907136734 940189573 956123748 481040464 743099004 248240303 909954977 82263205 685815941 866853313 890210349 162511913 611629192 39477072 647207317 286986339 525346884 606136479 823765058 750413490 970720721 516228199 854687055 488016968 920108003 362220705 905795343 610405136 917388421 776048678 919885079 666375245 863401721 991171126 996856624 236450574 994708065 14670993 62333262 117426858 528631807 652830488 791592652 125295721 453183941 555637443 800630453 291090004 609143127 254172984 658588714 507405507 744700076 998695786 999163364 841336836 857859710 31320249 460417623 913320386 943324971 967624473 987969103 530508695 789171892 167020657 987617251 408044472 896871225 440172115 563920646 33255415 401862108 938048423 958954455 884215537 956290904 854823010 998320937 85616999 731635587 762880493 990609370 808318604 953591234 615025458 677402652 526772146 840008715 122622847 288181769 251626932 607035706 846939599 865956817 721918351 863804789 882383127 940956746 335950767 609151704 447504360 524569265 251691182 462472725 903274843 929198828 462540073 783363613 886510941 926385829 915437034 969600643 650179296 836878005 214901305 744987675 960893946 994390129 157359297 539981617 468155619 928403387 763171632 930318498 596135616 770439068 714690259 824226712 665156252 682355752 387298171 730491629 767298878 939506942 715469354 743845296 642906912 765138886 448067529 952959276 911395983 977387694 673706973 845815376 850520626 946535551 883819816 902324697 449564667 824168858 912006251 948560198 927046002 973117328 281332000 731006919 739100918 798956125 629851777 684450637 656951164 819487859 949695059 954681353 615546007 884454433 296963738 751269611 770782905 793104094 664517673 664752889 508416515 624850709 673491379 678926588 53291608 844490095 238360833 782402213 740465708 801168772 280586743 628914665 930390393 976865508 882155581 888198483 666194793 851740036 212159848 220233466 605665080 716673920 833762 744136377 813797239 970537010 242504803 570208028 924490214 970811904 636143239 653595580 579913071 970072971 445641445 909759391 87204161 865870397 758468920 769468672 119028349 984677663 623704724 707583150 19668802 726385466 980654755 982567081 506622605 893020589 961887796 992877528 450939692 465468588 243211751 366383801 81969433 564483700 547171246 755499962 297157636 929310777 646007756 887673618 142050689 378176125 388946846 462536466 178028709 613285689 754851038 818203942 704601830 845216467 34187620 861546140 247464987 400434004 513710241 531075293 696768524 799192557 255195861 509101475 650877213 843116892 618933004 900611052 584156596 889630502 689314259 874619865 930733184 985677158 753944042 992270886 803377984 862533704 927260823 997260478 579359450 872962458 95859167 185852696 56553850 983694345 400546469 931510579 219263879 751019689 582956115 838203902 879893582 985058687 886497722 893875657 702232745 829739005 211077769 517410380 543389121 887121544 997716673 999423296 27608078 81588766 583554619 618024246 643070177 832125717 771037247 817534805 798739616 967810465 838358409 945634176 975626548 994491399 961047031 967066228 440171624 979730575 549727734 719615544 968742914 985556503 379313105 816484716 957733700 964068550 776425200 984993135 133107015 214145063 465725507 693594154 559569415 600984503 108839793 598071971 849684015 982715580 214385416 601124874 519033906 843351093 880643813 895802026 367690515 425033120 12932366 133623711 113798595 308847021 891058684 960818944 68628092 650043647 115842602 860358251 269429755 715985727 88070524 150929038 860283034 970204810 597626765 670203733 800249712 908137870 666884157 835748004 460518060 677821047 614075041 817732137 357995008 362447239 293234500 578852801 853365495 899910343 313663689 650251232 940105575 952666032 839178685 954295017 677579536 921534084 56887005 992370348 621465161 962145084 461596791 522144579 428416681 837236643 842195900 937049010 859614225 884465398 895498196 949979106 12266065 164839834 870620587 890512646 862963008 866175825 418189100 563364900 947852220 980260499 38011156 517908823 921138167 933508494 564891364 884049523 970925969 992637338 146574558 579145325 775505884 964614648 619322334 997855577 629775509 785634449 320775164 959725884 944044627 991223703 542118400 681358742 220389590 305775828 408537242 641982632 648667515 826221258 887909770 969184797 931000965 967355225 187111214 956191123 126846652 496203634 423479009 705515611 59682590 305495733 232387136 743052004 413052061 977902553 932225752 968416003 211611533 543914605 442842687 909309276 512817682 886394498 630476713 953531740 632762753 941075130 234641339 691009515 424066142 875739343 409049807 547454457 683899727 978193421 570285326 746386323 415900437 859847855 684664340 848460281 155738905 938527728 722667890 847011469 458476220 766032304 551881214 984923077 908360979 985499178 463270528 872378342 949759528 995974051 829415828 859820090 929976424 987588360 450889972 575241617 312519996 649228086 368847194 656832304 384532824 895661332 984073936 985132956 13697468 397798264 280604375 732199294 822694045 982906911 427664652 732861090 326628885 328395714 973402777 992673970 85943689 698994113 71370583 473557811 441612016 880295131 214710352 903760786 484939477 573239821 11600650 721682349 339926219 380833290 170791791 370302142 487676602 873367062 872074914 948066362 605076153 922904192 149997350 386719809 179466313 800822850 621393000 654038021 846786084 860182475 146547058 414715899 998930779 999621870 156783442 680403894 879605753 969266102 821341693 966726685 966903534 984140074 679730923 682831932 344230842 779608110 579448864 644993354 747570463 928464798 679133323 894987224 141824304 393866397 239690861 557451275 93769801 904055133 434176125 987369572 593617008 815708284 705306772 847518898 831618395 862782667 81558814 874197934 767706103 774978119 251922587 326201555 40336307 206185674 502598874 924065714 405811194 611042249 812846240 910564240 78327284 680385028 682137641 838319120 556597697 913564537 124360892 729068288 341730431 389808885 682932856 816540806 158818674 815876353 941296846 951785958 430108697 549530795 763143359 860649171 13863031 914710362 408774485 610013421 471090666 736803627 913351198 954215524 897552741 914729587 990042235 995474812 883703502 943977862 910707699 976886712 461974293 708919443 895737817 946188170 609622896 840149770 319569358 889728901 630202999 888216186 580100527 857961160 162353697 482468388 453290711 515307942 792785119 846835859 40988310 338284539 919753705 960612268 730807052 800059949 259215036 440927574 416160720 724279185 123008975 618090828 906380685 953615499 700390425 728790922 408656778 716942055 936501484 991750286 582936299 888491406 253510660 640278751 337656889 502088402 948509321 978338246 813214452 929748841 940720435 974126287 758007086 768484250 422340053 873008436 177251167 330930194 698449811 816775705 224138683 938697510 229780436 719388402 237826966 859403897 714283109 745442084 472041447 967388722 390211883 920860771 748415540 921524784 202957123 846803581 975681298 995024625 712017335 888794064 724192795 780783839 783505516 952092233 201817757 582756864 929730573 997939696 407494877 792632973 470527177 872349599 941059793 945161688 947909417 989918285 287797148 311113767 721993286 852060732 110608930 327761753 195736306 755069094 146423132 765347739 114340987 273401826 672231694 773022216 73563007 548810877 375916217 859196730 830309561 950290963 706888552 978269320 783707735 872169589 869060037 930911095 41290995 404899115 149863728 366740697 964378564 966950524 633992186 845337808 36728812 877228867 301828477 960421672 99762334 514090668 722660791 861034836 393410911 512052043 635569141 961936984 850190569 853656193 672061508 982779968 724389544 848849514 958844932 989259338 445045052 806573152 554975502 908655179 384545445 584701362 183813967 368678721 819580268 951569847 289575642 739949259 579066325 820100810 682980151 861270522 295894840 516473385 177635507 645676517 103383041 941966713 868456272 916882510 919970258 984148822 258883166 918334763 148294936 849450658 120706956 737689403 542956679 562410983 107300711 286232737 991171074 995872776 819988066 954175270 919872339 990391592 46756166 177006185 111301538 574442167 511588751 790274032 209572108 691639105 831556331 901410102 6167401 331475718 861732787 884112413 619023610 757917561 153047817 976663076 914913327 992579229 46710580 389088764 844004152 907076808 576122957 606219320 223550575 619655065 298439835 365796358 274218370 439932130 701486632 704812105 81332139 897417829 869737331 931816343 744063425 915879441 892354013 964002811 867999390 957003370 125237242 405040280 69230875 415877831 315605812 904682490 725414215 774386028 319505613 729119596 405131728 654747237 452451453 655520629 213176056 904038646 473566290 714055085 311128614 370246636 38144711 344478326 104126452 145301147 635269629 688847174 525935900 948876207 210620260 516833567 857781834 873825894 424717915 564530035 13125710 606081151 562358779 852374331 65142321 391652039 915612175 965819635 19927155 168181759 470430357 505441718 664879674 844709828 158714575 182394898 15190479 276385516 371804330 491488711 717620251 840521319 784155208 859558940 903062697 955270320 640616895 751254134 993563624 995474887 190767900 569714730 713864620 824453757 51720580 321556501 25927697 207688818 317118901 802839116 395189724 796298943 47651203 347866606 559236827 989570031 503636461 811785759 305236628 332763884 990880111 997761493 250513439 965932366 419376678 698946711 849536430 899768571 786734488 929834440 658297907 667459254 751117229 862895303 121177078 801734680 581385354 615548802 852858199 932279985 154580590 778211256 125096127 445963683 379884182 831165650 811497230 926638736 763230033 880049670 857134502 896107920 526795867 617888829 938174595 965532554 179578336 848902558 364477675 768554318 234265020 264108698 460688022 774596203 10523634 893833735 659815436 869371412 716701006 790280198 433525281 656073152 780410577 875629104 903491402 932026273 263181243 498142444 252309688 876842420 218067532 348352543 301075359 638536300 329589471 980618539 678979010 990882324 629408805 966555229 788446739 798215852 791697670 910511555 681543482 779178589 708267274 861893334 926114984 989243493 517967904 571303333 509745565 695189704 154397851 559832466 177831694 958142683 202517849 445762963 320850687 707513501 199682383 962839809 509883228 912595626 945809845 972284186 14223968 410129951 692871294 965804007 48851661 561099263 185192394 866195690 770409332 815596112 210492979 714548708 966624552 995246696 929478062 937547541 141761280 903115540 464180893 915236445 307377852 948215047 465495021 922731147 650675921 814535511 579240199 785110178 33888346 759532222 817638280 971807960 47206752 878240521 819110098 840297013 594311349 768867715 62558649 342630459 558797145 601666729 920347733 960891686 910662589 953666214 364305693 761597819 850640787 874474751 97104939 774187172 768229806 971872132 197150260 707501863 711764729 973673862 812250058 980495644 796864656 980023300 240134320 848881056 499066699 659800048 446152189 679350024 925665119 967496456 777571105 929506920 635317060 995286720 802175138 871585850 263790566 360879142 207124102 398501842 58098695 152077685 734643759 806346858 585919660 799809597 614846195 815520134 405559829 661197343 132054982 964627977 255226715 656109154 685022508 708810555 118302824 713428472 231005437 881286636 358338766 864095462 174869815 348703604 141329780 545761903 916435349 966711086 704832116 924186919 68859706 851960505 325136321 430120040 644251863 888232208 341454889 814649220 103785151 576322107 359972353 806834114 769998440 992534790 655985898 911119196 612670329 732985854 663908094 911941957 26767126 674423900 642237248 922170118 692784976 960674557 675873010 691897734 69397656 557392837 567445983 876238740 973393504 987917109 662852006 786499766 626285044 877309150 235485217 357702682 359065566 672089750 964907070 987982659 63188758 610448493 18118162 512327507 293822346 846086987 422510884 508505844 389434541 580226109 128776023 609820577 568898688 665167800 633139032 656216360 830170781 837272001 152038375 392905240 483369794 968767051 69695813 837335012 661462950 766516076 316381350 409185465 519192567 698037275 627588041 922202026 99413490 324027287 867776267 936406706 778982962 786212614 880984161 989562803 678608543 998407644 741696231 773419596 437566264 583267555 997566827 999185665 138942215 269840844 981360348 992653496 838588440 982124409 236355241 659803500 869681318 986083163 509769054 840514181 958845896 988626215 661695036 985877182 185401224 575413417 219733508 621382069 263822658 266424306 557872611 570904859 851537207 899419147 62215421 625977484 8709285 277256769 739615278 882873807 640855905 804925311 730355459 806825301 312669661 670064334 416225306 422965144 505012661 612369180 963132859 963797495 774600948 890480825 557102526 641356022 674957920 915809314 907451185 914232497 475920071 553567393 970533230 976247131 610237402 996423540 97337151 397754832 732813834 854489712 899161198 938491405 678885714 705006920 529270730 578436909 117221477 263198931 737466043 770320289 860516170 942566746 469022776 881168815 180022619 273699175 894547201 948468666 69766485 91746774 228060262 973846574 518933155 748746336 790801068 934955118 603688646 962905795 347433241 696571548 160452458 284843522 973460585 984655952 778671251 804980212 758814916 970575930 584890195 787659034 34756573 441302602 226336712 842374997 966778914 994392699 520797837 521210205 819406518 889607572 844616558 966850530 161557028 531049828 216194071 559881350 503360183 967932099 73297451 826609876 114253434 243400481 497493165 894516713 355581338 797087566 749814195 851051549 395119964 961734755 327894404 496896055 465020795 772965092 688588774 761418260 774203985 838111856 318451945 547555901 476122366 716659141 781938454 881087021 77457948 743157484 662510629 997771379 353273390 495663091 39429750 308239659 607333607 844773800 734076570 827248220 292649759 762810689 193848609 891975257 616233889 776412057 656024176 875969227 768970592 963742129 753238147 783689465 624490229 798875968 529972801 827120696 847624776 987072542 931711248 996833054 505509327 512303272 946178364 959329312 815248522 989443344 814556743 926696470 113596015 390741403 42315437 309442889 743047048 867222841 211421812 751595231 500450116 799513988 446281303 845546010 577705644 700757066 986524997 992496913 610142167 919673056 325733566 602320690 989058336 993966281 580306900 766776976 524221917 716572243 961736769 985121388 143749418 326344415 836481540 974744348 15360508 979785175 135234879 315694527 41592190 88209629 849401235 944804797 746164368 852195266 685481962 791599660 942519134 988099786 140427308 248813684 817505653 945058402 96028352 826101969 884480637 910977384 561321114 619649956 572112040 756768857 32759846 326955791 654288604 838697161 233976229 451740706 840453457 886404057 57636923 668210901 665027801 913249507 805353842 913417866 418363959 603693536 194439860 338003009 57541664 914251521 415753440 524175679 407459969 469932347 137894804 347065236 497711718 614940307 620570169 688631245 848220916 886527232 889375127 977534701 897585074 984705455 341476881 650958868 17693755 73946324 706862842 861213267 230424242 830787239 303242237 602658680 757270045 911182899 137606102 935532779 774097300 969203904 476403501 804464296 164299691 164917274 933816325 953872478 990979279 991398054 390544280 758269427 399139172 880452592 494873603 794690928 936582279 992017275 837649336 997789690 528620600 537507429 983751144 999686038 76555798 143418979 823054635 903165553 625778304 707823056 518284981 539903192 720996276 758061430 211181006 378931434 98646144 225177577 904414120 927887501 591775860 621440281 476075574 967729119 720420299 819056438 878711826 983204901 231598517 464143124 434200117 785110955 560391170 762082024 755254829 920811771 705946787 898699007 547143116 671137169 537168581 573268443 410499347 952442557 165546638 357534890 759701486 762253881 229833494 261780597 395818101 850074821 253071517 515735370 58072847 447324758 291483482 962782894 890371210 989516542 113450007 739440815 328433806 684652888 447460329 861903595 299314084 343051899 957173585 988473369 639461590 679050919 783378966 926376551 327953411 678425171 482145027 570968674 160585810 319957869 234354678 649074014 326291405 684229296 870463912 924432087 963904621 989704566 406944027 957642468 331347974 787191117 374981621 655303590 912700001 988053849 789187457 821026826 324544643 427003071 907900430 932093963 371858495 659524039 619465413 745311387 867658058 901043547 521572924 888354928 926285286 938412484 825465308 885976244 513716624 521291201 617376926 908070164 252499727 418136673 762115158 885071603 222799977 992636792 266390037 777019842 682355535 960634636 120677021 284346788 286654342 464927706 18847685 437561131 722840852 886172197 803332085 868591374 568261070 750393236 547850292 549412186 127238937 655592054 624727792 808452030 870365228 918149681 881419109 902505337 465191844 495604862 171035808 600625319 130972048 676932349 580342760 945655175 747954649 831728213 484944100 827793716 281142361 938432054 790809926 947911134 473615369 562101231 487121428 606900103 535296781 853938177 988099303 991769334 762685831 772038452 97296255 744796403 593705266 824878645 757346363 928272477 398382921 607977235 771808737 994323634 163861381 233041622 266568177 394505855 457406730 641795941 747602078 959612600 183974610 587047821 916208386 956249491 605005341 964623569 529444102 824964973 636523654 731970569 818972241 857017110 176193068 573794621 497579769 548685516 225695249 764601067 507844120 961251304 169627946 233675628 395026899 413443935 794213938 828539769 108248602 802032476 952340920 961240591 648733384 668157292 80172954 393822796 571523371 819140935 463707611 796282400 199028512 503439828 271387847 271978803 423907598 896645119 634099844 786604188 359765714 471772672 247698324 870219116 739036063 800745577 9827028 749652644 358243648 557167214 967129996 995118849 177287204 294223443 114568677 254018223 811334110 955018258 802820318 812697047 12652815 226262480 273929885 812808685 72375774 378814705 811749368 919635129 572884222 799761285 920829507 921647001 16418150 199513338 913316776 937700366 586917070 736517808 197140666 806251512 662728436 980867646 166125053 703344450 172525199 993182796 825993962 851253442 359441055 671443032 351260446 512386143 597722374 766672302 930711364 961379110 40222881 79146895 586213348 766955482 193344432 723697042 321795968 724783115 358310902 415391205 283618144 537803925 129441130 419371466 807320228 981867673 160827255 374308752 732967476 933911879 543261827 642847059 855759520 891897388 919968489 963473625 388251806 686052429 68598967 231804440 387991397 443232850 806757525 882643442 205227476 941716011 85703677 686993199 663831625 915540031 746514504 780238212 799624061 822260197 37479356 780488485 542842400 978471822 26263124 660923676 119380826 455535059 502382935 822787504 912923012 990773182 875808454 904250112 677077736 766907177 528405813 622542563 177796228 300799868 482000976 767702633 417886133 641097600 537024331 687588545 444532251 562112342 977147305 994972750 761525752 981673667 137322684 765845331 683256174 761981597 453560268 686843969 148195490 525634581 707902246 712595867 29952194 984643767 553021018 833236403 259461985 490618010 494493319 576213286 41224248 745309172 131548152 250463628 254605278 912003583 550052294 589435285 470296185 548737635 507595348 874322522 29637605 608884397 504588684 658556980 232266141 452575948 358811861 806866301 748989735 893801177 963939779 991638198 494384893 606145598 186254199 798350879 98519505 863532510 115724491 481909720 729276722 881447860 494522844 938067360 687426189 774768032 467815143 989331674 661707766 872969748 527621564 545444328 747491563 784823835 669077080 796772532 177519742 820925544 140357249 779083578 865097527 913913802 579504344 875160731 242018735 357431123 617358924 760922221 709124443 776302749 375530114 918451991 999586847 999745888 386696636 478938190 559518826 571973935 374807330 617658079 962140595 980528026 407047518 465193179 330958070 544058996 932743767 996792994 158927375 299914756 923661874 924927459 244642365 434034992 126120960 586766197 550456954 894069874 263681026 985316784 127705444 379442363 424849291 650591339 258120280 972706077 678446712 715937219 806526316 963679957 418298460 533731960 880801724 989540089 578804105 661843302 26063573 241580019 351647641 475226391 875924604 896294905 84782002 818396515 491459463 770817150 945017532 946590495 13084580 314680546 378908299 958295355 172078949 984462971 311257984 853794887 90007824 596344704 820170630 935870056 58667800 720537957 81302146 689444868 973742792 990115580 866809856 912282598 89362620 121839012 380067595 976905653 677579402 848986589 534894419 592907113 640688898 729630677 88429604 213253015 637297359 840459237 940961384 949652296 642183416 822160033 261938411 919355883 117386639 533066423 811050536 864606139 367152643 934200208 459079808 932641777 94848644 868805335 265443457 481862369 312837135 764560636 882936827 905738678 974142807 992959863 907077994 969288824 480117847 525045480 691707227 728438317 482466556 606923947 883031263 899935670 23884953 355004814 167376315 367979252 204516283 959544802 459855635 697107248 492739791 842982668 981405054 999912772 459342033 684402933 102840398 636627563 806686604 828361436 122838268 187110573 267462347 405690481 791788773 827690266 891953395 991915368 946540491 962708923 253117576 464456001 924954346 941519002 335952676 560807570 135678168 666162052 288504742 594910118 266010563 382731519 546155125 648354123 624364324 930910110 386008830 776100924 869260217 981962197 286532735 329784116 8671596 672687000 778101038 863198333 65565608 410276418 564030328 944765434 417929458 452545471 6819690 248396720 564994354 611586150 587037957 989722852 118252403 490154939 5743782 730847171 714044840 731610663 201503697 624149267 122862958 168293765 395836579 402332946 424619494 978211810 956168609 968075414 469028231 786772483 302317990 402386410 642083446 654013247 260561171 768720760 830649811 835410104 709676150 712046047 518885085 732743773 121196828 269152802 577215000 936530214 161493670 642914546 267041194 726583884 586389481 978270785 191183046 974504459 401012735 812771119 131734024 441773271 773103 565154923 229757010 265871647 117551216 889532925 939318961 972377884 906781568 983989935 385218626 987301553 223613155 436088385 957438830 999642044 550229905 665098837 910185064 984232979 272907297 938936891 936706600 948473361 755243300 779888100 246198996 707527115 712873090 974597500 402392803 629982502 133944729 511154719 650298457 887890461 866763067 923329974 938553597 975575816 649989125 850227450 215820279 670488958 940760231 982023480 740995357 893173783 429206264 581741710 952264909 990564495 43924326 366098835 67129215 390913663 715558248 826269873 948485095 952946732 45990283 681829874 904448805 944601903 663921710 962898213 541348930 566024531 649552573 805286808 175686069 531809004 17642052 377280383 463633892 967023555 496304209 511209259 305741111 532987421 8377352 62842401 57851023 729566019 779972660 881826694 617963529 623009304 410519147 695257121 234533223 277777190 314417239 993044750 690730428 873427488 538333881 623567291 426196666 669906004 528060847 545905433 775156199 785508790 620333554 704205630 51891621 845047402 599446296 950032064 327949675 371621215 794405881 891129474 425600707 530060045 14601200 162357360 403169073 625993954 3918698 518258902 220667194 612679573 298425440 569176798 239146109 281004831 402621759 737286183 40536622 961813347 488476380 823451816 734145470 797467272 485704084 857317276 139721242 761491942 274289198 566584759 160998929 867661664 857376718 895613610 724676425 742019121 484433805 736143725 847442623 935837283 720495250 940040847 58518400 653239676 823802082 915757388 800542344 984497350 232780659 917188513 248704993 938031141 504148507 745998249 571152027 953973955 128203984 934769550 620597467 914142581 139463704 326496117 249591558 317633549 88229711 668861762 749971952 812872160 223702507 966088824 841631579 911700973 342383794 766511540 378727398 887818123 34376255 830636757 996049489 998772153 202913853 885674567 691402039 905115351 975700116 978584982 37536999 678299497 564590798 957884599 284692335 559548801 961319312 982728314 70509448 849388681 871471190 908324062 581109140 728210383 675065460 940379265 397317055 526406374 172357307 452585532 756844437 976838641 989377832 990603669 440565633 927726226 492714290 515063112 24496762 744264303 10970080 249916931 456404513 781696511 325728848 691191371 177038997 569446423 830328543 983656249 587558693 926454026 22722211 656651759 583659830 877361932 36362594 929906238 742794138 920758288 45671443 687475307 332479456 528921019 339149815 888622505 9743366 932451420 946236464 955226207 467018591 809796978 637986198 901946641 586467783 754015356 478528937 796950075 494170211 805648339 193772702 675896466 357782961 776031562 502269430 587158396 16354426 405778540 575477332 802075539 146339691 309462124 603386266 781314905 811826459 922610708 86592001 361817047 328861512 351257152 769505916 869934231 185830920 489413874 481346644 780213500 147377299 661400554 563935027 800009575 989152957 998358422 127238892 432511642 821167076 927362577 600775955 847445242 449597787 999505433 661010863 788641913 321930586 888359736 586817233 928709187 181730739 668225210 264810090 724032994 218170726 680991316 660701320 880667459 107640216 657585497 735659384 747116225 949196195 991698225 785575959 994202045 838786871 992921471 615524498 642165498 701743154 744168098 530778548 909869070 167089571 324660109 46304284 265503004 435775808 603444343 912409366 941208008 800651768 940576234 584660833 672642873 135637419 878756245 674093022 998685186 336697679 835282672 93232043 921667500 875729018 911787890 31716664 679140622 670462941 717969984 356851924 357186827 774154343 817391065 406343286 908654226 227770230 554391284 741960696 860654166 798244141 810417750 531670151 671100094 610463571 787912478 218778071 629310653 943378597 955348447 750778059 968167681 494269050 601437852 902676528 965366667 531025363 905355095 137532335 495947237 321747147 611102695 980763808 999280301 180411121 326296255 636871699 674999801 708049871 905819694 397979329 693927508 256245677 950534515 287658805 334409224 542191368 618982970 6971929 534670179 131270849 983968040 657508227 694076854 318872857 395762345 545741748 655306119 7808170 871662779 865547344 892760541 879279636 966603922 669566055 861848106 970245879 998924018 763125052 840298043 320592102 875374986 80428178 394934799 793855518 810920674 647681518 858385245 954084731 988707190 482948674 502134990 477116860 773951387 758479434 906292134 223576785 441898829 356514203 565254835 157683820 556271254 447626052 739532653 41975937 671386948 721211839 836166924 268566847 877465504 901625362 906981344 557472946 833459905 805435761 817160511 721276390 909046753 145053812 950346857 220986346 544683718 913791538 987964781 636522207 996000737 635388722 667803322 38169857 867734031 547232749 660347661 788962280 825967567 858264559 866021470 252482756 955799318 284451378 636861669 313682909 447838202 165756555 859056101 8700209 463543171 640015235 921764188 75856415 531241073 915479448 999710210 553930775 856303678 629220218 908802048 581303918 821882883 57813385 402598786 998058544 998662612 9324680 893591600 843575466 886475801 374216501 604665763 317523498 704996899 241590611 995420908 361474679 953460501 793373245 885602500 313450285 835843388 747195049 801571457 776190814 984115788 936652344 953544068 282895643 519233253 538804985 651987444 262133240 627844778 502114192 842616514 148140384 571291813 471949080 740488461 784688154 841143281 790651763 901076554 583204076 790899172 745827150 896340994 612689572 714445541 866301807 881875819 41818104 379566836 99407328 779948099 250106782 757115036 355146887 389365160 719549238 976361982 489843675 989622984 281299087 368636233 990171395 997212491 633959112 734862380 774345689 998518557 615512758 960109330 44247479 999790293 633305276 752617572 885368922 998395483 153831689 910704134 85901665 504696737 779283326 927842054 752662415 822271692 21338341 969563518 950891665 975241647 196733947 783401842 44066197 810661909 938879585 945491209 796729162 942186061 292291955 536559369 819445452 839481657 59102947 562140726 441863013 958712779 775403894 905031098 386933138 670438885 646902917 946723938 66380682 903419076 991198341 994257756 15606882 767441671 715811732 773684031 882180242 924465771 980806382 994211845 514256494 705048383 14264856 355194608 756797813 835994153 87450095 458439994 421584479 466860960 914703301 920045468 142832520 411905487 56949240 230125378 311326354 865065224 972148863 992045431 556452943 618558065 241312752 632131949 692002609 934674751 13681904 198366991 779379242 991989169 743691394 779304113 799435363 880934928 284972200 874710270 381438896 407179954 29615609 430454848 388864315 742462291 694544606 725359558 872552494 887582072 886571924 954592766 80391644 524223602 125090603 978947019 230277939 652724912 383038713 435749191 665375007 755042218 787804774 938944734 526600165 872404134 480322109 784997511 227637347 628752080 162548333 445401384 322816111 843127871 239177116 440426390 548193496 583162919 140228053 904041434 936391981 964692693 200737180 364578654 749733784 931294785 534210072 743661771 7199540 607381992 325282238 840523239 100671129 756200831 733443394 872247038 273259062 534188909 666529081 808099218 570666266 756007090 726882954 737612043 399120123 887034528 258300448 426828235 170025205 410550955 229364215 830650400 312373683 434289802 561134262 719491447 817902079 961141161 791960674 798138064 282935628 533151523 246778335 827267815 561575859 922098462 786108928 832649159 9759486 449030752 990904518 999157059 674460652 784086121 908061739 965207340 384600516 819089884 961415425 981794533 319950347 501989875 563405728 806004697 566313626 634378528 305262973 678812105 175151305 803638617 509346764 895466028 474282876 733025815 836214498 952950343 408300756 537872696 618642679 927350402 247558147 998848923 711405712 736746430 213137946 579486433 31106802 123251549 485934902 594906269 157531438 364028550 484039500 672148900 261219375 585879965 794709471 908627256 587701712 998177515 106735899 194497443 392320809 872126153 305211639 592722022 820039501 944522120 373421535 826785819 72177602 793418681 746733444 760866025 948160533 949046458 652092011 958126696 207457822 898456576 608578633 993379424 883343924 921479067 321102211 400839180 627479733 744821320 743582462 821276898 194667566 427607572 222201653 891942494 941783186 989972762 287782543 596290842 251907075 888380537 450117874 606105354 513740654 598687013 660248389 997101115 551731681 742554412 3296615 138699452 60201057 493017179 29032595 127418176 517279687 666859811 142228912 529632308 225183995 393598625 211932796 352297239 920687314 956203598 518178003 806144319 401346576 421691804 990303402 990746920 612227948 615808022 288308295 828112003 535092868 584004195 261092396 531758350 147667716 367674195 814283030 843445897 636797181 853793714 61742189 766910213 499563940 725013522 687811457 906434636 137767470 237792511 153912120 974251983 217910961 914794034 926821919 981152269 446347026 928355343 100033294 602869393 664039992 811726055 144329342 831758701 720689102 938433086 946300481 949511105 830862798 915614680 517235414 823005187 177710156 625588698 977120366 982542198 741556475 824604204 277976068 922156865 502399346 735097874 688071425 989478579 12798211 409410398 952854563 966565887 29358863 944384890 745342538 937385607 860764631 962025881 54233638 101849941 276294033 336440495 560173491 610297073 113135525 180971016 564201741 835069312 573268591 688769021 966207204 982413096 741637753 858492550 926498677 991890869 364683295 828808202 944883929 946087192 450669679 939366676 548295005 817633198 877413402 987108012 28883461 629962324 518531499 706922548 877146375 891434958 735855651 969176337 996998022 997951590 379581282 566822634 962325220 964398548 258799574 473089691 600839209 768020985 680616095 927856164 481364796 569961805 764291328 822639088 735254370 740052626 555362387 713801675 801954030 879228695 62645726 936579864 821242217 860842258 332714190 672352689 664223183 981777524 583471059 710312490 703810757 810703381 375250115 697714983 393841078 654273998 151631220 251305490 951574825 960779126 858845560 997018023 158560417 429770330 347743897 696082236 786783867 830052940 676421744 683077315 48629995 444378484 568262169 699748606 652719663 752791531 457544567 462114576 507114772 837653240 308136457 937052350 33668631 527266036 797430420 946979457 347229995 903288661 228810007 286171863 266019099 899470357 238182632 837034083 589641367 809972402 39265623 274934807 550306611 664985779 60951185 637069722 182096122 981421528 671376076 827881249 435371159 612743202 869034136 941211762 454432576 667418518 409262352 846058166 562438560 894017706 474877197 936226932 566848484 708387471 146330224 274178975 447098000 879344670 62870387 531970055 989643164 999875620 563630018 611110792 300749561 959710836 235157283 952995796 773029096 970900825 682466050 898797466 339483819 514073037 730352579 850004964 303702224 663178608 78207855 609856974 924263658 997169107 678688143 745266891 580155020 900066851 5414674 766473846 749337269 830509103 141741840 496544642 360579619 734796970 890462349 937052482 975375432 987494560 336801487 525793989 510649339 927442755 812291667 928748967 688979282 889931765 671759612 716389365 816318541 863196952 392415981 682438753 798511186 806760158 820152259 895652712 495267334 552051069 203638338 895564001 134847864 657433540 974229577 986594266 43383064 757450492 455846066 588048121 122092156 416484779 330147520 568695943 641962279 674792605 813995601 955340536 916531497 924190271 792180332 810409824 161316729 175392983 575557623 672661155 684002355 776788855 116577168 992365799 800503280 985382761 416206384 508567796 79381221 800263154 283410991 752011425 125130811 628743743 30321514 710309708 332267018 773437012 903190522 932230533 724054420 806706947 34132344 989904004 856668815 983548791 695393581 817764974 218935192 499735155 176187211 828918096 591088385 745469908 202216340 967835993 924980626 971455026 472610440 564487947 150003379 964994959 989345764 999630675 979176204 985221101 800480662 929395544 203460340 413764975 192699579 501798111 494690269 669973609 240347234 617483979 48978937 467684084 430257280 541834721 808382052 832593718 781242744 966257267 745882289 778787380 107288401 634924178 672395768 791721826 126473386 143981483 50270328 409963942 796995610 880792151 759822402 927544532 557971453 691718403 725214059 778281658 925084424 926548395 992444736 997736767 216491870 397250163 669232149 949574579 655872085 848595585 213645713 265127938 590809187 923387162 267548356 600757781 359892982 515042634 391653019 441449568 836451900 928472103 346003328 693508577 942891291 977185394 119479801 890469102 820360298 824193210 3223119 750659419 209983592 962093897 29149256 228250023 955953658 968552759 567522586 671267311 619243209 818470433 214207148 472146082 697926581 803167721 88406583 800706027 957825432 997165581 207345049 323713615 517261237 930580903 108226990 753032734 224926689 393209377 985321584 986039152 671761018 874003173 869652835 965077207 895012995 979293233 386085011 482165004 72310123 399158618 600932930 885597205 818553774 895965307 79979554 207218103 695002334 972655396 678938656 769046197 303282895 995390898 204412181 537852991 902610932 911271429 110413705 645410456 776419 882610418 290286318 996467028 32460345 272983349 247712599 414591025 487884588 595558499 196908191 749835071 908987549 936599493 794993503 909908416 879250838 921553233 418014710 787484236 250216066 378749511 530069519 972017529 832848729 986661920 116890787 780037957 93241098 982740641 247786017 650150408 384217835 953412031 876311072 964676060 146147706 647773934 194784136 854913885 240018608 877372551 327647060 399294243 29926349 216853506 727578237 862991090 161728817 895594057 771043677 914359643 169688339 466854826 489997281 506614442 813442830 817258305 215747004 405714991 294254398 705400744 5301226 851760440 896999124 917999682 906649096 997832313 332146244 596025766 720697956 980473089 482289092 974603557 160239938 975036991 818102045 895442184 516802679 703814478 4238359 782510541 361031208 936129953 104739041 260091038 443906326 788367773 681092997 967918974 921794974 977766687 394396901 815709166 639620342 693847552 604746801 866364203 337084490 540914445 460188853 819008378 216980769 320587798 368315258 882560593 163842121 941554711 364561411 570316202 333838611 773815084 828156625 930038405 864273898 885092990 378985664 787662174 943035042 963072403 37949793 505073489 537440897 944683640 625919653 759079401 840751911 879278665 959888424 995411117 701722603 816934664 876461164 987600597 419017652 549342843 157522874 722799376 725755334 829154739 117306113 254083108 566186067 758217651 281549146 612998062 624009476 650615556 975699674 979486851 398119588 672985004 923968784 958407417 329958673 438635174 996712842 999910086 41430191 722777920 130959862 722249557 519230414 843712576 761323001 988175820 878342502 974792147 974463783 975621458 471213678 756149645 514038083 856124561 713384584 861373022 439682122 651654613 135736246 919733495 126671487 289582377 207237530 220031859 906806175 975617613 337801679 438865898 910982041 982114321 160236103 690876223 24615514 556042060 291775054 314686420 852778319 969391986 955150055 975783159 757578907 776036489 140234668 274180074 304606747 349010168 962373398 998213587 5760473 174009141 267775180 275186706 266259546 330789998 357145759 507332769 341321844 463409191 729541979 848150613 362976674 432765977 795399900 796798658 208888769 420090755 195120655 506166885 175149101 727913054 968385729 996088321 107566787 342401880 773578829 960685116 973509366 982435848 713105447 874590152 945683227 991634203 39655762 451315643 601716287 725532279 430495546 717188197 493690023 629918297 6414692 671314854 342015373 941572976 106992350 573229213 100738679 341896953 490353041 875556892 390145437 942607899 680455860 925885656 20238724 526552531 921586060 939046542 450269636 856247493 329041075 503406766 265194933 849492340 685420291 712813654 330993802 696238325 716762495 996347883 170759173 504903539 492658930 859318919 184854968 762632251 616759306 801989282 406606093 716332427 615821517 618594277 71408957 289079594 297365626 688243714 559230119 730771040 746769212 828097051 399299440 942983442 491592873 979656937 189384327 734776257 46798193 438917766 197202190 312709683 112139913 327839655 842596626 877491684 874123953 945831351 946527035 951520053 30362493 745133128 187923536 889059357 850834807 929216664 720059941 740484133 753517903 832465214 336457614 468156503 870915694 935999077 806716925 923884954 682627925 840472899 344920125 407448898 422084031 808072584 363685122 616241139 375643498 891783168 388976660 594431147 559860384 695111281 662968383 754983776 368341194 688608523 766914667 824728892 181354327 807539752 533870984 929507976 115814083 825494465 132309248 391713917 552146941 958212407 396551976 439176058 934455579 986260831 731811364 842113377 794046190 899271592 956811207 973829247 278795221 655233779 586553357 625456857 97147210 865057129 627510965 748814953 968103374 977856254 189094249 394991873 866553833 979945803 369006724 878947071 672296982 854118837 163376765 201964896 316031262 786204009 69868724 77311063 291899330 598191273 487245410 878439511 162639900 183704267 638532353 664844639 814386221 976510243 562352950 993765284 248022073 257734739 866947729 876482181 812337965 898724425 65723746 987587508 802235607 898913602 335597632 751938099 726440141 998581750 102714618 666149836 31589577 848187775 110372392 296492538 910325173 968549531 127096775 131251492 819489428 953149795 865756024 918438987 507074904 998923186 924955212 929172137 607271688 617631202 200457052 826912829 255879421 862015705 847123077 884109742 61255477 589137335 902815181 977699438 275243420 806161237 319722752 458019082 759744964 826711648 450979941 684542697 303839660 845517976 9401868 998047398 613730672 716955240 671929255 765620860 332681985 918594236 773611224 848740654 868061150 916059139 884907199 999690132 963078449 967936184 227644511 640567569 246794602 495437549 51304000 927129112 748301269 829888551 997879889 997968247 574015172 682380853 882238820 919809372 970011686 976931670 869481608 962623395 491688120 898398437 519641030 790576577 207051499 315911610 571358314 599991714 697598760 934694187 116633486 168964162 498643619 692037343 298537859 516856798 881033034 940711946 472505092 609500394 455179993 664451129 973757134 979012760 800467294 839638409 965368534 991576259 415096759 492751516 46539306 517255716 670553928 865283700 830970705 855367983 562685001 765884673 117222915 546654884 994985513 997072719 429542223 716014302 83708520 729926406 160378844 515907773 926700944 931526606 956185024 979084370 39432715 180609239 638843952 729108989 190713689 293120900 599370242 606313312 735784471 906384756 975790536 981145054 705733413 847602112 771820100 813319575 648245818 912498546 465112541 838006546 341808955 803676475 173359717 396809783 85170532 450581676 973235954 986829423 489193553 537156193 546980649 855820270 245466529 686368608 750658212 913996997 171758505 891759059 191436317 344092227 117742143 748837693 530342753 712936183 184279738 298945188 261004272 431193963 11594412 625010824 425455111 971662446 126566342 963335299 876469486 914703816 167246933 345296715 632099183 763791712 893126936 955139922 381323385 681173796 745702390 948330439 674070295 897764376 294903261 340471269 443646707 478014122 894219530 967675124 564237809 584541671 976355413 992620901 594085384 907660483 246234053 403069919 899732690 905218912 57279570 605757214 984051097 997745569 947231784 973611888 296815254 852070258 581966407 687107442 315693345 602865554 828848972 901444458 399037891 988015744 905186787 931757945 107320321 731572187 273615193 415052242 402846730 749592522 138785356 839559571 564383922 776584893 392299422 666064987 133285437 319729552 792018794 925684667 686504946 776609163 67776548 999388384 609474913 781675995 491848533 672538523 746024017 952449199 954932182 956627795 115025542 611789579 431554951 437632416 183711865 604295456 489394684 565501794 431327651 537422391 716456817 911367932 562200659 631223415 290913621 507279663 836491380 840206505 456943931 698295721 880174269 950284434 214558870 610682825 266439691 943316831 512416613 758890455 715251360 830699955 158221837 640198626 618166133 618476889 777262853 834580637 304137581 312315198 261284882 390902959 196111486 346697704 463530924 495332624 986637244 991502215 408296784 502974378 489477427 575307380 888699335 942576214 672008007 827100569 897719953 910394516 567462057 766177315 410730210 573162751 643282601 764212430 220904928 267070803 431103425 443791999 891908287 973592884 272730229 352601808 145893001 654660828 79640491 601641521 593553893 688574679 657828882 808021693 10992435 958443239 937683446 982867366 747114135 933648073 149068383 517854650 627928695 928278308 966458441 969015368 281777994 350262173 320130829 883696912 326836555 455765016 134504633 369904755 265438654 821050256 287770072 462866473 69891238 478842691 972101468 984807502 203549734 586257452 84901916 503200534 544218975 619764493 31757556 81021287 152666588 484874402 399028355 961812490 863606424 948376645 246650004 839507903 994203344 994637574 790421006 943211279 211519282 214553949 758542075 910168579 358307279 514051542 692657196 781128731 322337947 739812137 318116166 792628590 904641252 954354968 575046811 846341198 957608884 979994660 860953875 926964534 772954158 841402571 956077169 991460060 601145241 735150320 715515190 947430982 802623879 853723873 388344240 861860389 5487149 262144485 763109724 764679192 946927247 979827859 436728936 467534495 762396321 818956705 884907743 940582064 323790603 613944503 956648876 994610803 836561388 978983496 114860245 523689251 288197755 421202694 532575529 745209296 653716575 961552642 188342043 467297435 723620388 911281669 80992296 297732174 671324609 807175332 576742007 755817551 847802065 889458982 611767388 688835605 960856564 987597669 288588379 573680224 691641295 734966003 221048673 732359276 940858085 992150836 464237614 637395908 428893369 784786664 187708513 837490641 710136954 883559480 190199242 837962392 968733209 979081464 37601129 591173019 62731276 212598761 353577726 696903109 762199447 969159585 220851222 725321968 917054318 974296107 454771696 964007828 577550518 769290061 887847429 964534192 380175299 456623760 21845859 142269090 239172886 348949916 411673528 553881215 829188023 894917357 414186861 754509127 152032593 678448871 381069764 929554782 292294713 704341915 134203887 238272538 760643992 921226729 571072158 688095138 253801230 959191608 49340148 315442303 779739163 863067024 972515967 978857247 871396793 961153021 936017941 952517806 676951269 986957695 416876397 688543485 96372142 549783228 78088135 366278227 531658993 948790883 307184938 758693857 333804705 803088772 758556908 759211794 376899714 606483832 731071838 782759975 85865399 413011584 188700402 341210161 195137288 253874634 695076122 725488605 469695341 982427110 380163788 750452810 675081577 748045757 147350678 358946881 30594999 980687068 703605112 864759906 160036179 951352478 732409187 903649464 978797562 997818718 747013444 880628254 103648602 249998170 199219884 569344697 972730010 997123318 431241626 956293279 172830657 497183736 474742589 844998471 355302898 910342811 688590660 866006349 659262852 776443809 601544266 947939613 778480329 928177082 290293095 489568082 442891414 615342161 25187425 934064236 665765663 787594815 950917646 987113274 233967551 888977007 509200799 664588782 581514626 602459746 865195994 871212205 469472849 943356859 320798741 531138217 171380950 739980244 656736491 902416185 378518671 401514842 589426215 904772273 975887269 980192369 903984368 912268313 343951809 564825158 921337736 976791363 901357484 932364415 651688635 976680032 217600258 324571942 92439380 193295711 825594054 888097495 322605121 622005501 562920956 957279576 343961263 893981350 441799403 460234657 420267970 700195940 795918532 903027537 876915811 946297492 346723898 438676471 740998711 960333143 823536387 896181627 518540816 714413474 848766565 905279804 496995128 648948142 215106901 389075142 14312535 416884395 961736488 984821153 959655775 965083187 311129169 932072500 116109644 289253298 881691375 992156468 44040742 641666074 373418378 452531682 816790247 875838227 768583263 988155669 753095388 795595735 940967536 994147857 674251991 752925045 479324579 767122116 249402865 422788689 671104012 969738641 973798312 985676141 170499173 266160166 829734634 940892990 776786528 922948815 855396405 982954085 141447567 743709896 793982036 817812021 387836351 501320699 576866448 711091244 195840251 699758642 314710671 897661206 527188162 574254065 876319836 980258351 239248455 899200735 794591190 955098411 449727016 998130420 735647421 972349452 945314249 954724858 183969345 215370058 317427033 979278000 953191628 991254296 514427326 875359667 393961636 467721273 813128048 874357293 392464084 955702792 870094294 910854099 404009106 622805661 380845454 629009312 413288306 491972895 969786201 973966058 939322767 980372412 553823685 756433893 148351980 774142449 699760856 789815809 690140965 867148031 787433632 801184993 80564361 141215345 343971296 399172969 769687560 951777484 341687039 547246825 417989136 863598718 914694289 948720434 125730328 349063603 65851721 855378434 598378696 997382790 333268354 466161994 460976748 798964949 296518787 344800971 280420855 764022198 731348183 872724103 892482642 956603382 375163811 840627000 196140580 649939995 890274741 955236002 904352865 928160000 133962238 484666342 998534815 998651847 233473555 296417818 94462944 224109284 946313583 957729958 459860419 875469198 399149421 773627509 527390968 747745816 365725786 729799599 996465751 999626336 977212761 989517989 21347145 758341925 261510534 907464667 996503645 998383412 113428369 513409145 351299390 673822131 742220345 955173703 412274640 885046531 592326344 801223746 517993796 936400015 192870263 356912893 957082842 973374973 242810497 762732115 39372273 333253935 595636867 961015653 733956835 853623701 150903498 246219731 60957712 875469804 248462760 907360015 264969793 394035181 189003051 277142301 702450172 910314475 177021760 981916674 882032880 978018405 838899678 910503053 479973801 541533670 686447119 930359334 88030604 890183913 913391833 978734931 394776057 938785063 416240594 537230067 163819988 413928500 601355241 720363982 255735291 566697707 558919090 791807224 73374864 750435737 973591830 995424340 100233422 871534279 422941989 755535155 53507197 270185672 461741198 718940311 128233543 873328047 157463859 587918793 296018758 413853815 759082541 816395229 242110461 476624121 974649309 975808533 365061621 898971659 153276227 270265653 398894147 426087172 865707533 977767673 685901074 762255341 381976452 545426382 552386188 888150893 207784002 406035634 260209094 553007770 807038937 946554711 700047483 720223802 712995550 861603893 810291189 941547086 341998740 997688242 262089138 551863715 459093532 532518915 896534792 917341344 479211494 506911301 794517796 953761608 692082260 832405085 697780053 770043359 280384329 977673113 514456623 847722721 402134172 909891966 575277076 975903213 485434360 902798383 287708779 738978163 731434914 921800778 167268615 235153436 715453330 842631461 247301260 264219582 836239538 950664792 65181265 732437507 340438134 480364253 45738003 778631599 620931691 628526767 20612933 630179916 136533908 659615556 11178922 421106245 216460544 351290852 674400301 690374947 698545214 915563997 330316591 859361836 961785189 972816444 862618262 965559563 338239647 515741806 429304533 662856698 34456662 327831253 84382400 890304862 821849465 934450109 64389943 687207506 330744154 471215098 326168779 563331736 97208175 160181632 92253595 259536110 673516829 935278011 984783328 994610676 102254952 575933440 356854507 869842041 641379702 850894208 227547099 265398845 700386457 753897831 509286934 544835524 736232193 766001075 850427831 975986531 953472182 973723981 706441059 749076390 962877068 981713700 623341647 775504519 966590079 986777375 626923890 710394847 874708801 883159326 403941036 852007981 647524225 685267590 27182420 929697137 538800559 579155619 185561855 432732276 556503523 859913050 200350322 284512506 44129058 974721508 868167566 972735088 669063136 976361289 576281644 730788472 133527702 332775075 280276098 675293982 77719251 848666063 206162267 556677094 307914367 597889321 634179791 845260935 705417637 903611767 25182994 212226909 924983544 992109811 38809407 903850049 392685189 749241640 936924432 952208686 316104522 993194558 442969408 826213595 581309291 590490076 183693229 296443087 690889582 750109638 83272486 610001546 725025490 914661896 69749194 941870549 69606242 989086355 811110955 855710938 317558080 652625569 482739555 916602951 902054789 985113951 494628282 779743615 610142719 917286967 755055080 912776967 400969276 922076052 696721819 861242054 9943844 391774718 884411522 945689404 339339736 549979784 314595381 550365054 667197937 754015818 375301777 943493459 384687956 462076985 484940592 601503708 671410052 912079620 698986985 795138092 638254443 859062680 247019132 374207490 701267222 977581729 116268876 749568394 371513121 533675543 828438207 911749390 905820134 927240707 33180128 485898296 393313231 774055564 509319179 614140022 354429023 721145985 637419037 818740021 88775362 337531598 527045598 816743999 136294643 464818305 547297472 672934439 410816167 607971026 678816776 843632662 834816082 904554876 317642475 398180531 927392707 946065822 69625094 289226156 469524356 930830487 172667511 753999926 365552095 686809452 306485832 416618851 894616681 934081640 718961389 860720206 358494155 738775899 644526025 854170903 990177597 997669101 442219674 690701763 825596628 844017863 414503405 598436688 914894787 931379982 632275405 700082195 231516246 690831700 804068194 826674890 511099753 965836161 735001523 847568346 254499968 857181041 720078365 772548769 837600127 902040204 547628100 945083118 237222078 882666308 304645070 954364632 940505068 943384128 117639361 368206669 358088659 457933619 339804118 960631314 124735378 455831000 681125200 991606173 925727987 998538665 65142605 544315753 160979162 443338856 326091049 732259101 153224100 312366829 900837304 971618804 187218734 833672087 241360866 916235566 172044699 349141877 1501134 935618594 113258099 532482209 548803107 705736912 533884527 925652924 807858967 999133570 466985420 642952143 855146782 962848702 104676272 424660539 417880658 718051014 699241053 872501061 167157999 201108095 288329383 991282355 546931103 680867291 357724281 718484356 105199940 931124768 971372294 971794856 981001774 993658332 969800779 970611740 201020201 456303107 403688250 715297582 703052846 887217610 915723978 952094325 964570253 994420748 38252989 641387570 768420908 824074066 839784602 958578931 708234329 958508723 816456045 846658799 110692418 672367879 406258810 697983092 87717296 234392062 113471804 975932069 60360276 628866503 802205920 920943913 971676461 989572440 577432669 787834001 290758667 292772139 766682624 956308583 572851039 763859265 597252030 800687645 80296488 185263387 102247818 250892160 660897652 862028788 553043292 901691972 199315585 503068471 6577948 777247655 294778391 491198372 236561514 561816591 808002221 824532455 815012180 861832970 433578069 871060835 466743027 621582528 813940757 990009306 125259163 577761969 459343348 841616687 347565483 393530028 416883871 974279156 99299277 340154709 186557906 333681023 350000573 814015788 350202593 522232178 795866297 902497941 691404250 956487292 577975178 604388202 235458015 616168655 2175804 69554669 132552142 453395779 860363434 879735224 733676864 927886600 540322409 544149656 217460689 680776279 692818532 921411524 307218584 986600282 153153876 460243843 615146505 964356262 414982068 975947210 176275664 265282206 647933502 929184444 398929309 507505609 115788788 963465510 180584502 270312800 687976627 967020247 924592868 958938893 57836784 993939953 219482089 754882233 943241048 967255396 736167907 743596926 78184833 315765979 829938819 941086600 901548612 943435734 400305595 990962568 959834162 962838917 252394136 368423784 785100416 931747573 715453502 963125503 634957234 920623367 262123376 816719330 262178307 668837225 622520049 830303074 904121320 999822778 551625577 929691154 59910383 999322676 92931678 331257986 992050109 999036169 753866807 918643690 496666885 840840339 201586432 977751814 618910091 999072058 261698943 285132875 506814728 960386903 72448868 530103159 23779604 942061689 334110627 526974849 31756360 230870788 969830642 983652282 705332093 841793639 787753089 925757985 493711696 652194120 964288996 980564065 663763555 994560972 133401264 934656371 93687053 787543615 306600736 523160378 100887570 209815195 53966839 520133185 315271149 481905691 836888689 947134112 300324085 904190604 977667990 993105592 897100705 925173621 941202661 955196467 553554548 673145534 764332225 905060709 339855354 604658939 147618461 948786061 713305448 967023284 727152017 958029303 841961831 889270226 535520097 753157941 955505665 998543933 329411776 363420030 13386005 841733070 256025608 938298508 442478974 713499212 830412354 849450795 430460121 665064894 636178957 987289785 67307399 436771206 769629826 769812235 101576499 333134132 890189145 980713219 130064792 530150873 784942880 802600032 169185971 777151501 248540425 587847969 188254177 224415444 845958107 849946110 973918915 992912833 412486932 759723815 751901273 931269724 525233512 949984377 359810661 613698155 807861689 976231171 758300586 818358972 595567182 831915401 687174567 902482806 420281471 600835561 781924356 791930811 760828697 991328838 67234149 461022119 677248439 948331682 88763697 508195419 446644855 591869710 188021904 469033667 426150 216179642 882590802 952287572 341467439 441880120 791033518 941027877 140941841 941214755 764058429 937826391 166966515 728024212 594722450 815145419 92299056 871445768 616469343 898549590 872106196 897494512 92014495 243387217 258618912 838375525 94074391 592926940 867997128 903524355 459089940 889952836 734847192 904577252 256377651 760278231 509718370 844449376 560424888 566478458 840475026 858089157 441260397 876448856 884192532 941664824 361412393 641382475 38754902 662880497 250489721 359437531 540178373 675785570 966646222 992470715 200369590 636360591 742890034 952464027 564062363 937976864 689999551 988522843 528159553 930172236 42232576 781754140 624652913 656898314 791125535 981314647 424869054 483832537 643104560 791917747 319435813 394744778 378147246 890517813 549486878 677974499 647108021 928411320 213068429 599108710 282270901 519252898 227412434 968889693 626879729 926526276 424541141 832614437 718550433 824865687 120940847 837051809 90355 438153718 184088486 778900455 920355359 996329479 308551019 449800769 797595723 903409233 745386526 804595944 634643594 750518101 540226001 780793770 355542299 597641995 786997637 895346070 269964883 742763635 23249008 991642756 747306099 925928365 158106842 363527654 9943123 291949929 57487617 58717432 631556965 745249676 317890042 878035215 628370700 824869789 435551924 657898166 891580134 969002682 858087503 907767276 485031003 576232765 414828069 596439416 819945644 892168737 840762224 977578328 523910136 974056719 1519942 665530299 44761506 124421392 20250475 146503940 961189813 995629239 432716078 657209264 546456794 557207042 2343994 770277583 829307593 926793038 197916688 508194468 156072010 695222888 180856572 338476444 753228575 952133822 425444248 433283417 212614619 937156872 105625554 446656766 691820404 825894835 215851342 911507214 649891889 982518562 156959427 452229630 351583874 420658997 350200001 889775109 742459856 826924715 844710290 845029540 121419914 948133558 254448025 975413228 601963830 751612800 740925720 879145829 77101131 261024940 154383319 751201555 125311397 490902031 274767328 630633520 782881802 953349235 452916613 903745548 558436672 684387337 212090694 528112675 354895875 473911199 647349870 717149170 990916142 996134227 810609249 940130151 121481578 230217197 829546790 999385384 883951326 914190588 983507375 990310101 195654094 349240269 125138355 149839142 171732069 235056632 75743095 365691598 950266151 964902227 795629332 984715457 692633912 963661071 665933163 687524189 712877989 864176920 575407612 682080582 628946354 911890484 204882355 325781791 544007357 986774331 313256598 916123305 30820417 509612542 456922856 623794163 107945155 204832135 773095619 812894415 596380832 753633213 767300713 905748649 513665032 548154103 986298736 993768209 108929728 665355522 115920460 377033173 938790784 977377682 325653092 596610427 564362941 658540536 728857135 938959230 111154915 605610178 461374360 718190340 137309928 694063875 247369601 716550967 567211177 753138090 732682369 889637976 705073619 826724599 697225369 994231517 790975259 869843068 315051413 818701474 886183301 993056465 116057515 263568341 78444437 937683068 852590755 913392331 731952128 785969586 864611806 954328460 4106594 563825177 699549042 852859104 119630842 560057693 783672593 876479996 446204 914900049 416363983 826626655 708633062 775638469 367571494 550698469 570370490 719256400 443328351 639101537 926925393 987049823 344741824 728074681 469863862 908735530 797812553 948991914 517350479 779581359 48856989 189937298 864064537 872609771 987131882 990808240 544287279 622980131 652633681 783630417 808561815 964101303 977963634 999341992 887009279 910893080 606473741 928082826 687148099 860583857 511172822 523625625 577511447 809944640 693026781 974723753 636804116 769149161 168541485 465769206 626982532 674053373 270971172 884186066 586676209 816796379 553963436 817515502 768821305 836914386 376079237 498804803 967408217 981195496 818143479 893761001 881942835 911599199 496461030 767714396 781793367 950612491 664213602 710681499 962285448 999604463 427716125 467425256 576805775 659877938 753049450 804307168 636079251 686552175 362912913 432314697 364621174 398868889 236107526 793161840 712953942 981303293 693118947 916668994 88503521 928747747 842117044 978481632 571579032 603259287 866585805 883320284 912012912 948698803 178341411 596020004 255717045 551756245 132807803 796280640 111044292 509361907 851052239 935978813 320998923 373760012 345051313 620294151 395480951 607009417 3623229 667622413 960330952 987412556 742154720 868721935 152726733 262440994 679419632 967189518 835420033 848066748 388102085 970270455 469200268 790213748 401123508 913912407 988373809 993553491 769784274 941677649 865661823 930937917 735041925 834276664 923534092 948065738 270666454 324568231 622310993 720420919 771400787 912363366 276726681 408808549 551899059 901591580 709392183 854354167 271144849 435271386 570024510 689212400 295963604 451719166 712372700 944480834 136257740 825158103 316714608 679730813 305115798 935279611 421788585 516039594 251702107 597089908 7353447 380875891 367779143 762342497 376001410 464115064 630119723 720572616 687244236 743069867 581014620 830617002 655382114 810219313 780729488 973282985 365039449 968809742 879816520 996365668 327327471 596648668 662463379 676102451 96399668 517123395 500149695 943969784 781632707 843740865 113656862 750380489 325549149 483082338 711814518 978738933 310118046 466294823 104577127 787228892 473338906 865966373 413846034 695688727 881874435 937260331 870387469 893537946 533361808 695716925 277562342 996944553 557275865 891813792 797739214 911349617 969379418 978813370 283720167 461470021 258556092 861882541 419274850 632798000 657208707 795566803 561745692 882833256 221454614 869667525 852229269 900482977 299558967 850256373 651047174 981788305 176552723 447020945 467708595 827697793 377428723 624825457 694731395 769008630 480738346 714602261 462006292 467913990 384691228 771718256 725426306 737342553 925553391 959164254 351108563 592499578 767893487 881948232 539877036 671540899 705950681 833522730 858213724 947424049 172931421 361640615 464062830 570247746 759620269 767855463 64388600 115542243 70591193 326407280 833433291 920750369 963351691 997131508 637411205 681737571 91272762 94290147 911271224 994180835 374973208 498885295 513360983 864128832 438656984 469587991 34896086 939329696 331844672 811384962 393928297 658257112 521248329 891361831 142479889 919162640 152564475 342796824 806254985 931199833 623114489 754451688 946898010 948342739 57257828 603092022 433515921 455590157 299464623 742410941 736308247 977440542 672851125 721775765 560539932 605488031 784904871 992895385 477205446 869256556 797457396 951113071 988873847 998055399 595972919 695164636 340048371 466837058 286966124 606402250 802084676 986450401 761968701 877700380 401420908 712919741 2481243 368888619 9701181 164817846 868424917 906900551 331673861 649758177 157173940 708984451 936205961 953469959 425985075 924557818 944343114 965718006 533678545 858005005 133649942 565770466 549961792 601825929 703156289 761725062 348083992 775737246 231298217 684268916 292796956 888903387 889447909 904593076 979525310 993684409 293716417 947493629 841404201 851616098 625534401 974071581 999870578 999987452 380144111 764865134 855193274 970798540 180194523 314372861 745495359 900607601 921643582 932574760 931812561 949746061 502031152 904735896 131145382 408299706 877372461 879741633 479497571 808224710 722402493 827793933 21828785 802608410 903201855 907962400 955387516 956723693 865795841 879366985 505281446 919994208 286016492 930503563 882684044 953147385 881392589 882663834 816072015 921238647 697469218 827199934 633278658 785052881 686203169 727906392 498718062 883676457 8205381 642930116 490135658 708309584 459084935 811927004 474053910 595157700 113777919 495022068 922297029 976028947 38464820 110357460 420368211 498669526 956528603 962693636 144322003 751495051 69966282 859737381 788826794 804189225 812462728 850123951 727510601 809211402 157631142 513789431 231247264 638442497 663601356 770549227 828397673 871520095 446623858 800168189 104668780 934038400 728182317 848512801 295551432 376614778 519218624 893153419 714967334 783554062 503316716 503324244 437137213 630295399 303854598 382142563 866187835 886342351 911039799 982868584 301141836 397001559 991204263 999005002 950934245 954760285 782550718 850989297 440062237 609403765 552671239 940575294 189482081 947844413 99901017 539800839 418984864 491696574 642493347 732366369 433181911 838273734 364125864 615400702 755885189 807339866 511491704 630691181 726453958 953309926 635065210 790456819 317349146 894506452 510277889 811254453 330842410 635447671 911702729 918412810 721851810 762627568 28301987 245104250 623134956 711031335 454343170 958826451 173051825 462824174 329390713 646275182 640743642 834276273 598553612 800704645 876411421 987234496 667985289 808835023 104773528 905516658 555517376 718857065 362756920 434978152 249510589 882031969 940489845 986159452 459902863 579745312 698640292 962874770 684397537 920301364 56063360 263775431 853686635 946460990 439415708 546736199 38447096 932691911 96192762 348975627 440659954 656799648 433837827 569186212 300477583 779825020 966444671 998779146 443078215 817203612 757175924 861868992 508342071 604922422 800580411 825642763 368759019 506197355 461298305 931737242 85794417 153541863 935628272 944988157 338128582 772729320 387097948 478194856 788424764 874351738 352366595 557108777 214346894 329484999 451339007 884925041 674743448 927463316 369230403 821975976 289487484 448709345 951941117 998830251 230333424 868211587 993504732 996584684 925897350 997784222 823569552 899662235 599896552 910110365 291350417 974808750 458689336 967248037 190987648 300563305 379111742 656684821 680618165 800371456 496009050 829891345 12228470 526553576 187684290 651610498 759197348 880572459 367014436 765693243 110374479 904805930 970087638 986266783 954639961 957539835 735367349 997389560 344348517 617132143 260430307 940536377 104111509 595044268 665645500 991394648 784100386 825385197 557706220 927828360 495775170 498440677 149225787 299064684 222054700 966000100 856074967 989380994 943295653 968461044 765764356 964160982 539045021 539305867 685987206 775207057 202799542 786061632 826254989 903749072 917925696 926346644 519396997 585507809 546596213 603263946 631939851 845694671 447885366 581690013 378290084 628521343 122667235 651381945 649846078 850381515 481472082 847893615 952393074 957170240 610663705 892639912 344468795 808926174 749162343 850616043 224945171 597494136 663143964 723709864 461828065 795126810 909448264 968439287 767597370 824395260 670340332 855350983 435839698 937890211 768490774 828075657 630362977 990987979 955536546 998600718 399945158 998020742 643034551 933776214 581234662 993362794 67608273 234366414 813764196 860146030 145335995 671617466 472383244 734367120 420451880 863770115 848431048 964984814 642016466 650252835 821250513 994034985 369598572 697168679 288135201 698144898 659432475 713723691 71770586 947523174 358774590 838262190 665238166 791760952 240025964 948706824 733271834 940702593 186558324 928415941 692521895 809592085 438757205 731343928 334009254 808747159 620006315 992782774 16506872 751321576 512605557 978317357 518189927 718388422 421242918 692338758 277212997 990816764 238250178 733694115 640141172 840913209 835356627 860900834 833715185 974718932 218869275 275143883 952035683 995233813 905778613 960000412 488505893 990650906 380002862 695677918 691983086 949425984 571317234 850262720 416975912 603201424 656768586 984110838 526532279 857604542 691956132 990134219 974191336 985544283 191843074 747141901 776717088 903646214 98997375 775987710 672390006 747215364 565986347 905713867 438786454 891389002 792776588 857550265 201507670 231750017 29071491 291054102 543360707 895985454 211208214 640339082 363743373 582246674 262343110 498568940 608733735 893204177 86514727 896152039 697822165 995119488 775639385 851187763 219214906 563688814 28351342 560648706 63798204 303671906 143899408 989094041 903106972 995667208 695446127 707134762 425865375 756780329 937418559 963553173 9045936 696398869 435105519 667419809 273698951 855952477 476582194 598277268 114436089 240730299 337515112 729557509 38361404 251961212 991759793 992800823 139580616 817561048 548454414 904253990 676023515 688952003 409913099 744343215 916345880 951627744 503169137 764143114 959329918 979593546 634729471 841347701 38400619 506214071 832190920 851996752 727337377 963909453 393264823 670731641 258987897 461980008 862921594 920615689 276639442 288899898 301421612 513859230 394701261 994510183 873986855 970555812 244734115 350868035 742099085 987050683 493578278 597286741 947578277 959571518 506959506 832486054 354334239 585654026 171812276 840279597 497060791 834511793 699924991 958633407 562439669 769626404 779795708 959417290 410681755 886358917 50910376 476789732 729969643 774749294 363304130 528772950 63991815 243678980 884220221 952699663 532824469 959634331 546019157 743663636 711306039 746363004 459883114 912767350 717121526 745373914 752871297 862820042 745738243 839847634 459216278 896921305 292012516 702313776 536351110 565359718 845617399 886552345 580079124 982821234 74878090 592295920 787569712 836880715 956662172 985008481 493375347 708196789 340872455 492901743 102106530 297743080 158118031 467748213 955437566 960763987 938028354 942463616 122618493 800670650 33493361 885390081 508914562 677500588 700900230 907441709 590887568 973984443 714785087 923804106 273127170 638390545 58142312 468919807 246945105 650630211 523808647 557935924 274488945 809598778 506482626 583132188 543701086 938345740 112054679 215245932 446161343 496408086 105101264 132123604 563946999 883936784 364358068 661738546 610499097 896937798 243504392 501368246 852480244 866016362 24404036 118625380 710439425 759544193 158872105 958186981 558509221 655873871 630800357 742229000 611908862 681561686 173686877 886777113 874457994 981532049 940440788 981844813 361532649 598734166 238375274 479331340 692678815 932425255 44988755 636571806 18260720 287772784 145037552 215462749 254199474 737095850 892716929 908267140 526033973 626970673 742378275 993093968 157977016 346179856 511932150 679012503 418589475 767919830 624467882 755774840 607735364 729062095 602469397 760587962 679509712 850297432 236927368 472529333 881163360 940617741 647382942 670679754 618043853 770490400 866582963 988881751 891692235 952715168 683437643 789700728 621242092 634753920 959828051 976868595 369752578 848072137 125638766 880865452 224137900 263948168 587186020 823251100 452449244 735757570 20911791 259178056 678254297 798868277 837134148 960709269 556404485 982979631 955981480 980810839 298402503 485240040 284501119 370670594 640977937 662404376 758894434 774861180 595710321 634571383 75220711 462707301 721182190 854983213 806528762 962576178 743233481 777303135 339940671 850009719 37110735 934887379 781325178 824933267 389540669 814249265 19123982 462862764 503951203 590020153 396304603 407457639 202573808 562343140 341311306 693865233 458276200 972217187 977950123 999465615 187471017 936743307 738543044 971573514 154223444 477616246 867954837 975900993 520959420 643199506 170303767 410717986 405209819 722718618 397750363 982293763 648934016 868642657 348802177 551570769 941112872 948943509 65452319 583569984 162461189 249825613 614619560 687768801 735878165 849201280 918258683 999997998 753582495 905595730 12491981 432767723 249758420 761157909 962270253 999739178 978569032 987672246 273251939 779818071 332617643 711920990 274921374 674597515 16625606 517444923 397654535 708367915 36240854 294525920 250864704 330811987 258912104 852329126 619061039 893460533 36555210 301260649 587411177 869461066 391695946 746042296 442889443 851685655 821089683 929230205 540055583 777391444 171198230 734087711 417828173 891319718 100322874 849730019 41704069 972383824 163627931 515177798 36431280 230940740 34650774 631951117 400436888 813178830 957953906 960954270 837126369 849335547 251420628 357751466 671657932 756702511 740288561 972908790 929882693 994018941 926340806 975023571 821025139 974776394 6038921 353972845 745280279 933691778 603856422 713695708 330060266 856369896 309968447 563443759 291292242 896212505 229671872 763356099 343165647 739337977 686989101 820763748 826049486 919480388 373280969 721591886 288275361 742394331 851642824 851886522 871669889 929555453 421182745 743403112 941434553 955370650 77795437 414124551 954287273 962444783 100473976 952770294 301269173 439505329 578788098 735401450 312327650 510563566 805157173 951435083 433779876 504914518 486309079 670443103 639523231 685529796 226813783 504575374 785993933 976944438 521919500 771541071 735716106 762805951 993968817 994837585 359743703 445531298 821189822 957970262 491329285 816384315 61819804 833764852 297067354 985384890 649355072 671071377 948711736 999906287 307171262 743981941 483246129 983100566 229068720 486661685 530117405 727087361 234869245 750302801 224776205 343333526 972873144 974416467 68442249 295899036 268020615 834793041 799606396 908328814 72506836 293765038 518620881 832615226 774466189 916576920 322532879 531086075 730740630 948117246 385294766 423711771 252598836 370144853 681444495 912039551 306543457 400162690 465060248 961858039 66748387 276100679 857019270 897505188 184337328 360809562 655279921 935345592 134818772 165541526 154717303 598849005 951360952 962333629 979164216 996792884 692265931 981593683 25112960 330589837 522590194 698274987 426467798 563612035 386234500 609579864 661764316 703454495 85218737 877656468 977891571 998693140 740326877 915245257 831496999 920138432 786332768 917339674 465179754 741624084 795856288 942495918 671782271 814814369 610227417 871677958 342092347 507945532 691023222 816446660 33846071 790183726 441190081 751902935 47742681 273467623 538111694 656124594 713732537 790468908 237122416 332817317 300489671 906657986 545839031 678367895 202200510 714998692 561133276 972271473 601487273 993084601 777172438 779813354 302914169 936321377 134019765 721179595 95549646 353500669 788972317 911463120 666763093 673486670 184426638 924282327 424903579 848026007 924636685 996892519 713419908 930039450 388293124 526470459 95135263 976211810 330638780 439490231 744582437 865949789 416034694 638037194 20839227 142377077 998919886 999548161 865318446 896167091 325624423 578742962 881938555 980882876 299256529 824426814 748170703 991750105 748753783 816603807 411174185 958427951 470554323 873570898 123704144 954352826 955823652 980222737 32797267 519606165 326217288 954981660 486406703 651253879 323426866 933482717 82156337 111505741 577707077 879428751 411880362 787759279 821920830 896537087 32109194 922534069 780403704 909479305 496374360 962935218 175184461 827731180 651762846 728077318 301335189 369219698 541865265 896742932 628843340 725714918 286413640 662549451 518827611 580198953 579895997 701294931 902583886 908732321 706371441 868931920 550360833 930853672 149356800 544271970 92640009 534031025 120549080 164949220 615081198 655078150 345068824 630023236 874158662 960556243 521824552 902155088 182304803 507746123 292525627 311769913 339958924 815886572 68662389 588287488 43086525 454991222 46957515 574821444 566420747 910020660 526828988 970999061 365369860 838546348 897688813 931181469 424493993 440689363 653578693 819025094 140729589 958763986 929025658 947128056 246426849 851864741 54090331 634270741 603034325 791835700 963939677 985762995 405405655 670603124 638946704 757476732 34125329 552388985 137571415 577720905 150130190 869419663 988573517 999691246 870316023 895902934 212281943 460368789 461504484 541997733 632339736 657389415 494690296 654186078 452843685 700839980 152646488 391381905 403657397 696722649 344197501 419102493 647306220 943320120 217522674 577026278 423056031 954381433 26528871 361078885 442757077 735348563 25155381 166772694 705404984 724583062 898545025 968596509 325311840 981849916 294849492 417655203 196544672 364293084 95442176 810475383 169195626 558837473 98551044 799394929 265611782 440561394 446722060 976311107 557587013 621512602 425450607 720229836 577745164 712480641 912952079 969172748 796146491 900915702 235875088 638098215 589030250 791932964 439795247 651547180 645482798 878988597 187044624 711753440 341790742 542597340 493827881 500223967 320351557 964695847 379285568 674504794 554519787 764354976 790991932 807130416 49123886 782825728 735738242 949758402 192694011 979080100 561321238 932031139 462583057 674515280 913561448 999966601 287790752 335629444 981461454 993666015 282407918 970974607 269705963 981537312 223355367 861639611 21633487 783305374 491389103 564402805 859562709 890720334 84385573 599583673 737108586 986540572 633508813 872535796 398397011 575569948 495150200 735804048 713564511 816726558 83139637 160614457 178190346 947732092 950701720 973174623 673591561 756670343 403734314 522795431 305692358 399028918 58493866 152519874 339192488 745571284 360921175 512099107 202178102 414808798 183994534 697214957 735123685 781565740 464310460 710655714 166995621 661811801 324791566 872244464 42215064 89609895 614819460 763430453 734628031 767121436 477941363 479355278 465715807 919574274 573007952 640688966 544487343 565906330 487952392 607526373 103922504 997128785 377413695 586538465 475283305 848485757 827108194 954717086 44768327 395205560 789049696 997337373 710507174 993485157 785576323 882618782 519262556 795929374 80841609 502660884 639166771 950343299 499046749 544442495 126733952 151604947 316017740 559170644 778572998 969047314 695773685 866688051 137527840 152699417 255713317 388826492 638733954 786489929 588619445 806275358 849327377 961870542 528483629 755155435 123585814 990477463 259898497 866624581 922049960 939942378 871341341 893522210 993223799 998777512 645440538 862531277 668594995 952709687 715775098 811089198 318710129 732475286 419658773 582348525 805707566 985706726 437269726 769271329 908588997 984624051 756940140 925053949 245296559 454643260 832985737 879447606 1728363 354710512 776528217 941191908 453577943 704225791 774454505 786086584 347885300 748313832 165477251 423201143 89427266 532697014 510381126 903505530 616922823 648327483 681318342 870976700 516842005 956120559 325852215 561315646 185573011 571440887 54224075 822755266 521207505 723013887 271507630 526722909 408555541 512191558 847797554 860406313 59804272 590897132 557672008 990634797 459443081 573932095 874853055 998163204 846336643 989390542 181583224 287010359 85815888 233829970 817331955 869710735 348505137 621535590 575919396 779177348 975351839 994803115 888659966 988730877 914674475 940966433 379100760 567379862 544899915 806966381 144075388 176194353 241698037 801439582 521445905 601344047 112406272 135452557 729152283 993908687 10945365 34500114 273584063 766036443 357227262 451082239 190765721 820193954 46122671 876544559 303790811 574078032 267407674 911117188 265480111 299730860 236598688 593806645 587437990 779442761 630019373 667896946 40291734 164491580 144111759 821090153 753034171 987830610 737348644 961668240 792653824 883340596 305502972 478234588 450533194 737728548 293568909 323348243 962049565 969943241 526591814 767735594 830192962 880927533 17482236 674884104 774181336 905728407 459328469 695472659 157689727 222643516 390763933 662171720 968576917 974559036 250000497 594638593 951492060 956854775 437175873 960925760 642864252 897279118 117348341 965741952 970924918 997074213 622491125 850397214 231272235 895317427 797814547 902972214 715571367 929356178 198167186 311293969 680562099 965186582 997416591 999333710 217249297 587965648 704933876 783820139 68760585 761850875 275025672 853042314 418274453 869897717 633361812 886819298 899108729 914354506 516440518 980946103 449321712 988411178 128574489 667634772 805076077 974025425 818689904 842164054 250633775 390371982 267302913 907792223 719333683 886570381 208987337 612109964 114420611 903891761 776183975 791922086 407836448 805404781 994866150 998249459 21240444 321398515 202278547 385892700 643741236 859955543 462811826 612681307 507154610 892876262 812670778 965190940 747994166 794716872 349163337 734699954 202140249 853168291 105284176 776641748 138099075 730083145 96380510 830667412 312893827 969332209 679749720 911361396 105375656 827897046 998770204 999651601 125370857 284499112 876813555 968246551 264947260 925420265 408932410 656453260 19974920 737371004 850442458 860357229 873769146 893939485 687148440 844649572 268869791 274594456 579277116 819428018 949602550 987522468 535771822 550062956 793758582 944285411 544430708 860063688 202976979 620893472 107386054 515311799 587653878 660300173 582403994 733966205 724640012 831628545 497811116 673655689 274486391 320298587 160199215 978452556 131845346 475112964 260205476 427687961 62302238 999316353 956627760 984207897 453417359 804421991 410457529 704967854 768677925 999817163 429720729 909385372 788343553 970004734 349368235 987758700 678964574 921670517 665065249 984518301 7312485 319404099 737694456 935002220 492827004 595908076 954690298 991427101 845638148 860449195 166398253 445029608 948299197 965218667 562768281 835774023 702564467 983038024 10286516 429490481 322313678 747461953 569662086 738091587 805435196 920878524 265458143 711789746 733637795 920930484 573917800 637632693 920166411 952098257 643298756 846696861 723190885 744319850 840029741 937948996 851954207 910914570 72867538 395659165 891354823 969646569 432670250 905654285 519910867 552733497 556476710 570835937 43471631 244124178 73949146 146915371 628105300 934972352 358509625 373797464 372702251 601868443 858884919 959379980 292603203 367077160 890810598 983689864 317791356 466024481 744406657 919589064 710321839 712993969 755983807 776020266 993486474 999803900 37377123 572010664 573854633 949178625 851590162 920314598 1460444 732453709 561289273 749865774 804130614 852094863 206013137 504224971 56146273 486598510 419851368 752812403 369674061 381958352 135026581 874716497 389335325 446740828 872575468 947688896 877311622 917294078 740516631 944642991 696978872 953530479 482072865 595586671 943188385 978477651 691737740 957937588 183999684 246874571 133772068 754597880 287798553 963580203 104367276 385674345 100533745 679221544 32273349 808078348 411771061 918586864 11711578 889465247 602759525 870531632 677127009 841282131 506307140 594469178 981836481 984825066 454894803 536954542 578150918 637123446 750039310 883855716 420814406 633917865 472068919 631440422 830457236 935356559 426389565 749784697 163500127 613078560 440380021 858133531 650721686 691310106 105418105 864785964 605862699 705561242 8947697 341123895 262311993 700479495 611716131 890967132 159475986 671535089 992952219 998853200 427621310 446784702 690841011 759281525 706010436 818232528 687851096 824046550 514119613 530779676 613016508 826975870 979039886 986300717 842850132 867270880 633373352 838814447 414752999 436206664 261314713 695311183 380546766 495506467 920217178 954723461 490673494 581877386 74794317 626764432 24608747 57451880 201630328 390492761 887846761 985250213 442754150 475580947 586481713 684629453 716128084 989555648 840976963 946194165 322791330 647583272 673729566 801558306 578635916 979116858 868367173 956370039 308769044 970710940 63107257 939681996 149869132 811628161 149598110 256005454 268275378 912491123 488421052 811154117 964247608 989428672 625783974 834163930 250089784 511887728 641826678 649043101 193139975 532790712 971338272 983304258 7775864 125126764 577044517 749354801 154565651 466291558 173516745 384459407 738105632 972567907 357046741 523987514 362749739 395661985 468574564 835967817 356752065 922974201 100002116 651403514 379052552 429024269 559639243 979909747 45168776 411770304 698941493 767221793 286762700 451936603 181551538 182787266 518511153 910769054 587948384 630548606 894287321 923410110 689859680 877094549 271198782 531185283 748787951 819617306 342683132 787163028 64781212 404275425 29589773 311723265 114610478 825040710 398686582 419259373 191060975 720105895 315939350 995615344 33306933 376949360 495460452 556792112 667328789 988663542 368214069 833767430 252460098 845685159 969552859 971346428 658546637 903018466 775554127 931813100 206937298 428979272 328503801 992739624 665192372 895302716 408607563 609822245 353037265 763301038 42318871 435518669 398337213 401036931 52853054 106673993 868778190 997142368 11479633 757187285 103026886 811997513 638830548 785504087 501697158 550612181 391739803 510415704 933017433 986497618 969429198 983760544 548734045 644728841 82446717 450104814 178246166 980973832 612840420 674216071 510317950 702909780 36426202 164896596 544839260 980218691 590745802 980680879 910207800 990374623 150826655 667752626 681278104 941091829 954946909 957761839 860424721 956188093 305423708 648888286 642254067 852950125 748491086 955739875 119361320 418119496 90383341 892308962 820168023 885069819 254327915 341248677 259454834 266668802 475827015 637361141 246160495 901684444 262221128 717310160 123546776 741131926 343428465 536913975 251708296 824369259 606345839 939295293 991628821 992338008 49547 737049187 945563718 976456718 719290367 833781953 7082629 835484423 704282947 834251972 881492254 923918951 460014794 551580416 658485254 706466605 937892760 997916712 582470622 620104078 778124126 817799903 265574808 723019668 936122093 952983365 756674092 936657788 675387780 812147866 723415220 994767596 806422104 940312226 100496824 693123414 241058903 864066432 282717091 410337518 484126240 627541180 743439862 953446571 70298147 401597463 618326547 892187862 515006280 615457901 164403665 860242086 685085997 830851373 215088304 434631736 32039147 698844706 269232246 270714610 975462392 978038395 86055478 745100318 928856541 969440289 408966996 929575467 38070480 144052136 168985947 550680711 412292699 647355395 842554310 858913251 371254911 486279816 164044602 455348465 65277175 816836661 421565474 525049306 163138939 285768193 409843369 950956724 880915625 936974764 38218631 983982545 170141608 336992227 669882140 905577184 211913801 826312022 795050756 889158835 627501533 827523014 610691309 710849782 137169836 577865573 217085195 558706786 582442382 642558531 524856579 578440789 376795898 823328249 417911416 523267176 255814642 479297285 408211861 679634453 570347633 939226768 428793281 514141596 347585625 931560507 392763006 414260774 445030007 912423725 19384541 802530534 680454767 996321069 195765197 610695628 784881119 846377599 45024934 123196485 325000988 405718498 895064740 992263861 484255016 874774819 204398078 651453743 561558032 877268611 827344488 890828980 985895269 986645740 322051571 821000090 442717690 974809921 100066723 416343910 760070559 945059872 723296267 858919039 860809466 962662341 662275285 698442168 406630378 486448799 895895932 953722541 98950793 189184635 862524006 975861381 857286662 858878893 147347635 192650097 404086910 448821038 139991289 391459825 362094625 417204648 239713379 370805955 655622796 807235196 464812914 608909165 54925833 636959594 251519346 544974984 897535012 955961428 392991890 747373361 40324735 366632414 714095400 828485362 766491044 831587855 573191309 960059560 46507021 342809278 611301677 847917039 477859201 765458105 1299323 897147709 730188560 771274767 864779974 956224017 759652343 905288166 201210492 608736159 890649333 956914584 115740949 344422861 531186762 678509297 543835155 990651092 305364183 674882041 526996653 921322202 101834398 901511680 408642304 545627542 184903832 414924345 25383679 430450453 95030054 443832266 160314718 676813457 19277883 901005229 708332166 775989625 54661835 810377889 299407152 551893545 411990233 649489042 541906717 980591350 126790899 553936244 444601215 715585830 876524738 947213097 452695698 775170193 445738010 622611547 214403335 792420133 540825654 556291823 925088199 963735764 658986986 788627146 638401592 880654843 385868060 919974362 417901904 967106865 180802942 194090593 92775341 141611441 857875283 994465308 29545606 867792287 623851345 644301783 850058889 998000811 187278985 405909973 800461835 810748112 489022435 736722905 722822940 813415299 953731067 978530543 618036219 910096690 543691978 917604120 171973032 621507518 178682774 521535248 448251107 683607845 403633613 606846858 642341693 767125405 428774446 538745912 818067749 978546663 535964295 994589205 763062092 842165778 369101401 718924622 272639986 987861037 211310647 481679927 671569772 963967603 388501237 715064867 720176545 978671363 37099004 449750999 955262947 967750083 738202256 870698187 358011840 549251622 767871419 826466741 928336158 994707725 23186884 262258303 785536817 840317461 906388682 922456197 246322599 955700935 769544966 780454215 789688989 889026616 943817994 962740830 289857931 417633910 363009233 647199135 379025055 984908830 732068730 732719437 517837503 552320694 859157542 869806236 783391194 822645908 642179571 880836871 591501939 834409781 742571811 797265179 78976397 320122964 574794704 592625071 877631126 952254047 682167714 988501561 67261536 503422959 875964356 926756060 602551878 802911146 144799074 233172133 364993486 809173910 395399074 943434918 129683871 411540455 77486335 543869057 18650589 189599293 890602021 997858137 337000737 881383181 457046104 957165563 717919940 804528770 492000249 780261298 982182481 993653597 499270973 841701961 253630616 592525443 447210913 455956736 745209702 928721407 178695487 484203063 109312836 584339263 564297093 756707717 612105007 635803279 680205766 838953182 584181154 715103281 337719 174817656 233928856 580463514 588249364 736751570 830018982 950364460 531709011 907138946 581661005 797095683 909152584 927229768 884755738 968484090 865632475 894471937 821177344 854859074 182401178 892127345 356237930 748863476 979345176 980182073 805480391 848024858 846377408 873884015 441300215 773625025 78925648 362304178 937011054 966070503 748819093 806906742 578343330 767386310 816461622 832290464 741143837 952186147 604535394 980809196 323502539 858813906 356948740 524422313 809014512 924946793 6028509 367863856 480035782 717660089 377353445 846939028 34736807 65990580 663818399 833116901 533573922 809836050 165104067 767860725 429436497 598628115 201015528 817842222 686160305 993006005 267946498 569200076 350826978 589725852 6216669 533115635 319000534 984519561 601546453 618730800 805019188 910097485 232977099 344913442 608701365 948402874 801544638 943609380 294670341 641012765 489822459 550517181 22023566 253663639 478030373 783923155 465904768 795544013 184829856 664969079 53777056 271791383 408047074 910078415 789275385 878107726 612247943 620612815 40892575 219477277 679470770 723701103 124300378 417843327 99328962 695182275 956997410 959220907 163761143 437073740 50684531 557027387 487558617 830829941 849650623 866327178 403192460 411503465 295924500 898213946 468875252 639259528 946876203 984357091 750810453 894711762 767804787 835603013 120679564 348672988 233192412 545373759 802925820 934239788 318086730 916294864 906699633 929782232 963465657 981893599 881337330 958727571 658976535 665057352 582134915 618945582 941481777 960819154 977432843 978008061 55228277 906436669 540502662 635056693 179366001 238330098 888258914 987008092 928713468 975669152 165821575 462194877 495964002 993782966 221412626 519228105 261746625 991733217 451167189 690191513 107149887 999782783 159398661 234847290 323080537 402540752 858062778 986550549 522086248 867095553 526678510 648604360 209774086 521015041 738642268 842023660 30030081 618579967 466804165 580839058 805353606 845268635 924817200 985716403 385369558 965141326 402693044 682359406 704297915 729652243 358392946 924846188 741583825 973905910 98424210 121263626 971157952 981975895 41555245 363334526 494604197 965604320 171764750 764366095 158477246 714705072 419272767 939511182 374069496 680713153 382097714 511010817 92464822 311520465 259441493 296719453 283428724 697952017 543600848 597143456 648478006 850712952 799892319 904412463 48560817 870606331 668613892 755419959 392997566 895504325 358910974 680770089 640157516 691689984 262209906 896830303 518444828 605967934 861180206 869244562 894751362 991861837 139355720 353173044 508717719 534086555 600416750 861349919 398380118 794722493 87338220 650541066 117444975 450710317 961805821 982198863 673798609 883352128 630095680 785850444 895156769 924594653 50496409 950547078 434164084 512908270 771625824 981083727 284796029 669539218 581974642 744513032 910941937 944240013 403476731 639666505 930552517 950590617 383806491 440902558 829185721 942230626 603617292 935202929 342502161 625074139 567902104 800836620 629565059 848847088 799832012 976509792 938418837 982368402 659631192 872618866 548174489 770646757 469553151 497281508 425851015 657117903 497874749 649516647 194834729 846579614 309623500 492285857 133203294 212972390 628157279 910885751 507603906 557488848 331974297 502452394 667791278 977401647 857647208 958023713 303900646 645701627 651144192 831115946 809120249 826524622 675918555 905401255 195491392 518643449 638300009 706836939 467341666 661009122 422339289 718599950 809494395 820397065 194594112 906420807 460768834 649163773 214311975 256602104 980643353 984363145 981680280 999394912 367254749 622927808 535073133 749633379 761287401 769758517 378008731 654723104 817879939 946699993 299292920 518008353 243780908 300030869 536096523 894326257 31036710 779999313 11054266 263961367 306864097 687613458 306807516 371425018 123068948 972879860 343031801 490241176 887988978 977825472 635987222 702594228 548933871 960173683 236771761 406926591 678797973 963694208 276778832 927150561 623282523 741339725 21045152 509576873 983049114 984636135 476349941 544863389 201056426 314039463 871652738 919596659 527034886 869947875 686532279 793333551 120898094 294259466 935313317 993681992 407015144 885016796 856059534 886640506 475633531 674911289 169799902 957688642 722283602 955424752 805368631 847697897 713939576 955562042 679233350 937539249 230181990 866363215 719141564 940375780 564438589 882915836 577304316 841141376 263328116 907585048 254362565 538986399 76258287 236862886 875022765 946710235 379633454 448941427 827131391 898284288 909656714 950489670 491846702 827064816 8393230 897584060 54327981 895683522 185468852 408016945 408954972 982031699 76641303 480290569 828797041 966972986 215566203 891031823 561680186 586153655 438074977 771703780 670901231 877377666 438594654 823337921 192239317 936334784 324148292 474988230 47991521 92625365 604344055 783057993 403948572 905534154 479805163 499048195 379830718 934771093 350111647 906827162 125289420 180438840 858466046 943917063 256617369 614819293 662072193 754184893 912314372 956457552 582284303 832845078 602176308 658167755 185487385 909782550 115304781 324298632 356777777 891199655 58562845 439128040 805823202 895538430 83155045 618454298 123184263 268478062 242349895 855996515 257653829 471290124 345384298 471768612 257177488 865080533 817062991 908126966 989632560 998711367 51170223 355359116 604536393 684538293 476486355 825673896 135443122 494070335 532275666 617263819 756811879 894959223 907499982 917177579 106037586 616440378 814406201 980975140 508652680 978920196 994354176 997736545 892435848 994224423 363380894 376506511 518144783 620047044 901436333 930789882 695598141 965398197 180000698 929185429 463844386 890937993 527373823 611632605 626052720 837577491 541230487 982597012 556317210 657707106 265866623 327203565 323955704 382044919 300359728 513778879 263320827 844496062 931131274 949467423 822611535 933631861 720019391 811706768 402196857 452769346 344299058 887738365 726913576 936123545 860609340 987460641 61374624 733637778 743712672 942933545 707302256 841511562 957246363 984440117 88503331 422085343 924754347 931841175 131235207 296571255 273389697 781531948 412653515 521891216 587266514 908487302 632891275 696178477 650053501 737799522 788727703 792429394 482576760 805124187 583040970 845424741 433348435 644307929 253156912 841334334 646258134 804265221 478822145 725087963 897999614 957560370 895054580 972333619 548881494 746643205 229314052 882182486 34601513 454489616 743787338 949074478 712391913 889187347 837959499 845096230 499138031 892567226 528379882 574226205 61418068 434950624 445554365 871036494 949565048 956489943 751155635 786805151 27779022 457566682 693955906 798174332 541719183 741398186 955941313 977426830 119434477 994050494 856971260 875127867 738657741 750127008 492814220 685782062 10858868 46398016 35508623 451440019 787488746 935163240 927380293 948623758 964631638 964966671 806526002 959652448 212219859 412126088 669261030 949130424 247548311 412274476 10311870 941938538 469353607 890685411 575084746 717866018 225144117 310341754 150620042 509889800 140212078 380248728 307708484 583675557 916932263 982121897 882726510 981734867 806920819 913193124 890014022 892993743 328726304 616427993 120462153 481386602 397155183 853795137 400746063 490360325 279290596 902547017 709312674 956168730 470292054 673200249 856314862 922228600 426243124 603649265 191969436 906496169 522016768 598250467 994256926 995364478 283782042 473444576 730014575 944949101 337242608 360461067 444827609 876536851 473215629 668099449 588391498 766373926 289614545 514616323 984025538 997230613 537706684 647744342 822965349 829528665 266316645 365626520 274704229 501710762 60663263 339476714 551305464 876570398 618572707 692094392 398329418 638847559 874862582 972882710 799326730 818981880 941270730 948674361 375244982 401936480 175569875 200000587 150300981 174206539 231643538 709708775 129166794 529696651 356920224 969261513 443756154 874703147 538125675 707102801 15652021 150605141 414366161 614427981 179113138 748431160 876938620 936805654 427471712 622295357 996313272 999942421 64866857 547526489 138211998 532046855 575162208 604114897 538789789 773228860 56519072 98736000 493254533 952574056 253319363 899291396 939860040 970983574 11761626 593177207 74304955 344444600 645932277 680594023 594305906 867962346 888484979 955974163 134836505 907173375 73476021 815546152 988069331 992382697 670345937 826820035 883127851 963205546 667288433 980441293 543968232 584750888 471806439 656474862 235137610 779804514 668938728 844860798 573947407 935862031 478813396 708901180 143707927 849609369 378223585 526639401 855994134 856689474 131561652 371136988 874669933 938917935 689096702 721793654 810862074 938685902 348684734 919268377 285191574 667768400 173702453 639567920 99257828 912308698 936444095 988845939 369760920 497122402 984067537 986706912 341719214 957903172 87313729 352516189 793574512 883167280 897798523 988694018 630070321 974924740 978137075 992619931 194285628 235372133 979632738 983839507 718084710 860853074 781799137 995893440 726565281 856898845 23257237 685458327 761516483 831906729 537759978 664850372 209801546 386231872 554775954 904609569 762627900 927009011 647711187 993023070 60479879 114201317 874041210 964843396 184315916 641569579 559519926 957065338 655907195 808941323 116415301 765587553 789809698 966041613 448724203 503876319 383898917 955584396 512394557 762436377 336755589 517096261 342678807 667674751 948379465 955093249 791691844 844059869 365895263 690423108 917434527 941103918 774037274 874731560 91788312 697437524 278470590 936193880 748666845 941862047 779245004 788970854 573155853 720584017 138244664 472430698 193530941 898960689 981438789 982766012 526370360 620188879 81255089 749284242 397355946 649989687 616766636 977720472 430768316 622549166 534839707 635287896 84969900 957778512 745415353 921787177 635971860 958156728 734240238 970660278 485953236 837209368 79015392 897113308 838635505 927042355 993779968 999480798 483312795 988744964 917232675 970168312 140125901 762287184 406615367 789414076 510922960 910688382 162583266 945468257 108652002 366138029 62255157 505652919 106839450 276765689 231510636 418846460 619083902 853958452 358078188 645662855 736697606 924047589 664641533 860362068 139287967 531300339 803403812 890642369 455927984 869794903 113810552 567235617 996397443 998894092 658776362 982788377 141544753 454087711 976586396 992068269 449384613 453056367 848157322 917653926 758232901 949420583 115890919 623358470 706643078 718574174 728450680 863091456 159969463 632137954 51929778 855955350 786257536 997324256 166819331 411267078 112184266 619524484 545309908 930783945 227359393 672879656 99073322 527556064 253534514 962911905 674023293 687294835 532268294 807732381 99931634 527027269 856843943 932261966 896229591 897854307 432585751 509629251 308268561 724706756 142384985 216071473 165344710 319563349 648301215 845465230 44499680 819244388 372740927 718579918 406536035 666441608 939458885 986200583 781901248 790029962 612192989 625259425 115126988 763193292 54147730 572460060 962485629 990633581 904101020 965555647 900501677 983173852 980932998 982425955 465331475 730967543 77297650 467168145 630930364 976479066 552515255 708696366 64004566 941110731 665611140 715640822 182334590 274430571 591809498 880847559 556684675 804256656 231396227 662617142 57705921 681792568 701390235 916488656 764496910 784228207 74198640 346486930 175240970 947624067 195169248 964516423 250641078 974551316 870607964 952179305 337028694 453617307 348407426 801646618 349099994 931270920 364229095 445476406 924016059 989696030 326939693 465997014 772328304 827156714 577921312 676583624 872623903 995092449 97473304 639842892 37239357 542893537 556837283 674693169 273850023 946594863 829676161 942439211 49514781 768209886 333090656 967745765 566484552 612458087 990299705 997302870 528741864 940336217 386391825 786480078 347195471 381602069 938226813 956177286 505322051 518732418 871426537 939324790 234085675 239671570 653505387 724916441 502393486 755012099 368101126 808437749 441727225 453818214 810903968 842043602 927261590 929136752 697650958 985421720 996724061 999080593 80559171 666298935 735442609 749342007 504323949 973393088 157868768 829516205 882325916 899860343 233371550 851066125 739815819 797860262 151805907 733632033 764390733 913568567 341222333 768898515 245090275 612943071 225953566 946151064 956288404 993925845 425978616 563310790 563674298 822702831 153431248 964750103 726635450 962242156 948772964 985596627 394468524 699707380 100030868 781485171 120316320 320218071 203623147 732891297 519040293 603113938 593586419 881536075 337267229 410309237 758270840 942069155 339768574 770180552 464334294 906628347 680844786 735742832 620403225 909287596 522072857 804996084 279359601 850096704 580226167 655483268 529207985 743860091 345401552 872727677 570429253 581235407 638648724 844221498 273358389 546495434 352018645 695563437 409417542 783501795 570644509 601431894 299331594 808896799 194460597 939006013 191955264 265449145 443906892 621786707 754078089 903062329 298498062 538875142 339652686 778462124 71579793 315612550 575733976 870769285 196980498 674342140 455226852 742775595 28652640 570314775 464989629 674000825 765817961 921476328 517752320 703156282 352516550 969826822 948405140 970346870 897343052 944205907 88230570 690113451 569545016 620540441 252391410 871361763 36680261 571214296 276507204 715597915 880738679 931069304 729996354 768905698 668798952 951253598 279657340 345596277 48628811 712118377 604677314 724597285 292454373 851197220 720627743 881768850 686725963 920824404 546547839 634233287 984040088 986509434 165981586 938847164 333920009 832911092 962713453 994223926 859477267 985271321 691421572 840007426 497491156 897587361 487924497 778992179 756063726 834621578 514278153 974708236 736972622 872499152 374698773 670705710 241468647 643044460 901294106 903292030 829593484 970576005 477460207 691902388 444711921 778640756 325417209 623577247 337046725 412578492 542403156 879923231 609538174 634146412 372260792 696516971 167621708 470250124 229550143 499639108 168506572 822943141 289072069 629472642 312263865 735928280 952579192 994240072 568269744 754841936 882989848 981802379 895900917 995077947 836249354 942561680 152541798 931055453 384833204 568888478 726534035 785683730 392515156 576161205 198806927 456806906 833820738 988613026 215547234 942256295 77188361 568591544 379162188 511741126 54194016 711411774 23180209 94841965 330379878 833589174 774075320 944191541 204060184 834078114 381601853 904963443 38858257 230196602 498397428 515289296 425242244 633727878 822559599 987038202 272940337 823875332 753361259 777130847 989628907 990369690 864519214 975651747 930228471 954817770 404642622 997955759 929756682 940117689 382182997 390855959 319184402 756494971 910214199 967233643 211259011 744798141 578173709 641464487 605517201 781790734 609953966 711127473 46988854 938568467 928454227 943623216 709886402 805058228 716030169 790999496 958767499 998725043 336301060 711323906 758260610 882175234 33314029 989215801 668417442 920706244 878437789 945690003 204671725 405091541 173286575 412898269 905252251 915391180 75012485 160084501 311180577 484857869 323775293 468341361 771476676 887171143 71436186 752440402 902080211 966748026 107695097 415705058 429403509 937903520 388432461 937194100 420376263 585580192 842048556 957653111 852639755 929503492 613682738 652664867 750998363 976317519 955856826 997225536 607927079 975715659 217701654 824226436 98798863 366818263 316265886 748740657 787103091 812479256 819995452 977840319 806586442 833971868 143091089 290295850 648993141 777209961 868149407 963185907 196375772 818193466 517492588 892851093 133132241 554918085 189890432 453037573 786981865 917186363 426725474 560701049 84635682 958113574 697765562 771413113 883740290 991057834 292329494 943843331 560081496 693165892 602872281 785395109 646778215 729908275 23936577 764960808 503796557 879481154 884234536 949666564 79458356 870134690 965518122 970685611 503221352 696294731 137934975 928497877 27859850 383928712 525696862 744487387 595860609 712874138 7752823 966992001 290718865 437137721 745318805 961725716 985556430 998072329 509356591 670184346 95251904 262486379 211441644 436579273 930291522 969440591 147875150 875972592 738610537 836513516 94083158 444996538 184493442 188616534 645522746 759908648 569659309 874464338 125369754 134945573 624505092 767372221 568068816 586475228 614526598 632940849 422678430 474007212 663709700 801450812 129707504 146026181 846241671 929206144 149654969 932785613 743684051 929070720 630794340 940769737 3934499 207920190 909065677 922692590 285477617 326056080 3493592 871464747 62145807 567893558 287125756 876641067 284468890 956331721 691985537 950090549 940317797 952553772 392275912 811874847 577583112 969974814 487972115 714334231 701604380 819756649 992421720 998538320 200739850 346219934 95880733 864148162 256251858 560653020 426331685 500690070 566805400 655665259 673297883 855641748 200815649 669663672 246030042 750520819 299274339 969858145 158320042 739982802 675730999 798071480 28949971 86479879 766998581 995804417 723224500 874579023 756656254 803582414 142689714 790003933 378978726 821329335 981131116 988254257 48127679 740569746 487960011 970062896 183930060 329015141 664299193 838384272 645548581 917146050 682200782 990090901 96332374 257681563 66861126 601875835 935765459 951837620 851314738 960745652 773687612 778056687 5738378 276192418 365213798 473770427 723963241 987245196 690526734 929813150 824667308 995506985 856578816 999387477 662759466 909145366 177751375 587665199 286471949 617003623 593560218 705505389 648024641 690130585 379264116 603482437 214746274 408552971 393922446 683510676 663485806 747497672 282482856 340889250 992208211 997042237 950974973 961404947 730553731 990462721 114659210 206346025 379492712 559907845 128026796 958482074 603339067 844216587 961777674 968971491 957250757 998088465 808261785 875985901 216385103 571045128 246110509 352911047 245131956 952660961 70201968 155493160 64580989 124345131 49478381 509311429 159229591 924278312 689238966 992003232 868147390 891430800 754757672 887723801 810353543 975453540 313406380 360854263 571595659 579035304 39224218 304842009 555239058 981381323 447609772 983940042 731888085 873234799 945777022 983285615 380388282 791374510 330056204 561147507 8808793 827099317 630451848 681051688 234961202 401775036 345131972 363946677 161445269 481148155 351719318 555722325 911047151 933015002 221973722 551345844 248361052 573597255 999193522 999671542 530806938 674165233 601727422 946198126 386437901 553390849 98556143 614937174 696460223 746314743 930453244 952832569 638625076 682081482 205244869 654513663 610051166 637135788 593631713 826135791 230854580 879914538 205859045 873926612 389208150 594387600 337130332 957824643 925650192 986022646 632885612 846899347 124761132 199086184 598553540 796681506 589148775 906234091 262937338 709591651 38625958 262666889 839200693 915489336 447030319 559148050 451871726 546501372 876692537 954076087 761326617 917225807 569708806 815153190 898998471 980905284 594431740 623276125 864357429 921948771 580630052 797045787 748570964 984771590 500063246 570153385 551001632 706381516 519696485 819987486 87943362 511335541 213551034 321010594 550871059 776411230 807018323 859463643 504028290 983292228 231369571 874671229 352372390 960367129 49161046 397776678 222174758 477336159 292358568 415397431 234874031 269367363 339830635 401169965 356317987 473420762 174386153 403848412 721871032 803305724 647915048 937500716 267843481 913870403 5577020 653887438 1841860 919026145 881357127 951408696 153687970 169236492 63600358 316024650 516577674 940358848 680845534 962944281 500341545 857950401 657013598 881311161 204040245 764906566 670149683 948191803 312572642 635210490 824161683 994010836 300843462 751442612 173987237 954833382 20899391 168718480 613691731 630140893 107612811 866361269 949105355 984393001 874090282 893853989 540625403 732060882 214284112 283944036 287103123 387455374 922498205 945727732 777379875 885989421 388728437 403713327 627402293 821945757 635724630 903261729 76987511 332517687 285614581 925838470 180036420 956701970 471495574 983867557 38911452 674073514 182708184 362523589 586004303 627354749 764685156 904186925 8328285 580101990 366794591 803739452 527490381 548739360 869802915 986299294 437440987 929259687 574937306 857897791 422769441 714275265 810074960 994378423 264483659 860066156 539919757 840674167 486092103 738762818 812456197 960170454 934162031 947394745 670115416 952391563 843669246 999444364 145094832 677412803 248177007 433865917 782970433 935223047 396541495 630365712 149464481 688315180 173267275 417841480 654748126 694370359 162484538 705169295 187301254 828307602 222641439 821509687 607122554 950474204 38632215 301845513 318350636 541969960 720744769 922180957 951353232 986318048 706898372 904345453 785213048 818679566 627461709 833653475 226133584 787581953 491875399 819197015 386954979 690753393 516990403 769388014 863211099 917522570 829450209 939772876 607407682 674660933 727932343 759059898 995242550 996392529 633964683 956602581 62089257 976803560 403747124 846205550 387044249 710525604 475373106 602220748 906915738 957784963 814994584 928235048 176844844 264513517 828784879 922876392 919427263 968928772 717876526 744362806 532723640 874212995 913280383 960936049 819630458 907321785 328568769 769240986 104575284 792032860 988759676 991476906 240616381 852228296 654501945 895885966 711184421 805965221 702174153 843531831 739385286 862361884 90680018 366063774 864700118 909849346 672320589 773233568 778779599 903512929 231529028 413622738 422468934 529208771 541023069 767487193 945692747 980016232 896141591 941939439 182259862 764355450 818724404 936978480 379389922 529387708 273479866 564536208 316064570 840369129 71597179 307563670 686224226 837445191 252416234 922550614 332184284 973810097 988400851 997195621 238774671 651705116 731004511 971405736 166142196 833804285 816340135 886705184 985510249 998235903 494208902 629654813 909962380 927338798 428860621 978710647 249699898 293803044 11069840 336355309 706700359 893251679 77348168 701456076 178127551 828542699 394174151 945956257 458798613 842894567 284069804 697405722 439222136 605093152 700436742 919049697 806484868 961591969 264047941 709930301 921005209 973602847 350745806 602001091 926183364 991323038 767312095 980460945 901051476 979349053 985987150 990682108 706594286 874139562 780313428 782342409 152311700 311290651 300046642 373467898 478678706 545987762 65944179 649123622 580248229 932937259 589635625 752353493 443244105 626786430 318226334 815670278 709807451 969506069 861739901 886352866 154955371 437449158 892605670 985024658 307005873 556697289 924393673 994521823 541464480 863367529 499753533 809279664 305405642 650011976 611652328 961593714 554788103 967211296 435976661 850690984 106109508 616904987 703374260 870453543 321925051 531538347 616834654 836681401 507655105 876159753 91944577 385108562 219000551 415069443 816075802 850341096 847134616 993731868 118876796 745812674 345636280 891377375 690353902 743205493 702140663 821293640 514741133 578005009 815020894 821534878 209914425 287050628 143085291 267057696 636536354 986484819 269217711 805190455 899617996 901923990 687802341 900026063 356233060 986700956 735660853 811798007 722429139 932397698 132849165 337806874 632706775 939228449 894190348 917674889 254300017 318254665 420665304 709839877 629587257 844221172 419149316 942925524 66706355 280059076 194415747 616643484 320416101 385662072 68930498 269757844 345854643 941435190 146735782 544800459 287697268 426923239 690862002 996854629 898237201 930943854 817259595 864090655 54908770 866040210 557479505 935585853 906077428 981367953 879758282 987324082 525733130 932213000 716889672 906091197 886885129 952418960 82033094 773955598 969529065 990867377 665774473 868703977 429956712 901380984 305157073 501876368 464124882 863641272 515613287 529476586 787056840 804508496 517371565 579370748 965112797 981475671 475784979 531719771 456018377 918513698 592966632 655935371 649368599 735093258 24464627 973425010 607577606 620105604 911154772 936596478 415575488 998524788 272104734 278450493 661362383 822760807 650659700 919395259 499093368 835617167 898316462 921253003 343972458 367687217 285964297 955966403 435220847 463403564 661849038 754133952 86917093 352531534 876063665 888452410 727370210 854361763 864122106 975808973 206279960 930477832 917003476 966094021 314651253 414012467 820555817 957986835 891343119 968501705 249070574 698540732 60073380 568507618 682121408 900370224 587565008 707951423 185232684 675259893 205674261 414928355 3903386 860201003 630256520 924850066 181642359 538883467 507997884 896946051 926572552 940997355 864782723 882051959 530526669 657501978 657562269 820104903 565276732 985349488 725129607 763006240 239538990 464868731 380345836 807019057 472918042 897426383 332922578 403847247 379183387 481725128 722453133 792873436 693461093 964333411 324035012 522201752 196966104 455042421 688237665 879793931 452024725 892930543 159064639 179069719 559648026 860539497 211013535 699427315 261279934 297492468 944016679 997250728 760224235 933444814 814345743 907649707 269586990 505040982 237909035 633851951 27876150 906310485 607426075 732704792 510397330 971640053 441455895 769192260 988095255 995021192 132557018 774796751 884598099 918169391 364891678 725517917 395723949 462334013 376837304 536227484 227506423 486265708 892883051 928406398 997249970 997580024 649300926 801603255 868807478 921531930 200873739 372881389 187587893 493896417 245428590 828026415 870827508 930347029 970733027 985982619 586257425 756549620 453937131 485188106 684567941 744906895 490949019 536671547 42012724 709483755 525063744 895275252 997311354 998985681 213971079 565007876 978888417 997682504 257098208 479423335 472319075 743094267 204181433 724196420 574426963 980968491 159771534 949425964 132670756 573626762 344382719 476094985 573375851 928347020 836668862 843914711 930142191 988212473 802147344 892118987 638286612 930253925 551486144 667344101 975943104 997674016 549932739 708274066 71001476 831553348 155577263 516489653 449325142 561204990 203819490 490294527 202669741 511115934 236205466 479871090 478358219 733225814 507139686 686924844 96014928 819271214 22960561 426466731 315908311 827033832 512636136 638481350 748477073 879143806 291200811 526395637 974400927 978237126 918972724 970950010 758708586 875224419 552238253 853571790 869745991 875394861 192874673 432208075 625502069 722746156 342886392 440948276 365085255 510028753 295789162 601963292 888782397 950944067 408921490 926265501 550459044 751008087 103897908 669144780 246139743 523261457 420106808 673227508 552429399 612282605 253379506 486033722 305975046 671701078 805052985 910382007 975631114 978784704 474898563 993026925 239673720 726965023 350567723 441890254 444656723 829076201 916633310 963528284 489812329 939676220 316058467 605922795 815474853 891166300 630093488 784683951 908838698 949315991 372859864 685419376 466557225 891924521 721276693 935402382 271110866 388493163 996174687 996260274 237672844 946276130 190155000 664755465 402015747 987536349 900036370 934879544 128517350 925140959 148454703 600888895 480784659 853608838 856989598 957394524 459479069 577154598 923176028 960520404 320053869 564731481 358023836 999074597 691502136 967865676 995953098 999266892 576290130 841870645 914738894 936366807 62517302 993533365 890320369 931209279 791496950 814984876 506895510 668283017 290504948 526656536 627020571 677705496 656229561 887728448 818231230 912720262 781218944 939163765 915807328 986292887 417517800 544997628 560097825 618871674 26822362 946297712 207699116 249422106 660331847 802516061 82682254 403272663 487366611 804550390 437770280 544918277 960883410 973243196 600938710 905137727 524537484 948880637 179013794 601428213 197038902 724475251 630568709 701219931 293386844 586892656 715603184 749222087 959695810 968805218 62580168 382034483 637173357 978834230 210370061 319438922 754663121 771085130 505606441 563851067 82554036 742433863 521369567 532566187 35071868 361008017 398509997 539469079 231445464 686643517 175795878 383772431 323007999 408615936 481118493 848690645 266036700 945880770 907896922 958109296 49641437 563953659 843491944 885231891 879180655 958795927 391137663 580770053 333832978 656584798 815948807 837273450 491584184 951419240 470066889 854719636 355129148 574482586 870216364 913266583 233912099 622876834 954207726 996397101 419542132 494998822 421924793 492240484 196955081 691077503 169604881 524975935 280421682 952762623 117269700 776794054 75999789 980548367 864247781 926798561 744544069 995947370 28822265 404443435 380548671 446500873 273749521 430327823 447658153 901917667 417710479 651837093 662576396 805464358 679415291 745028368 646032807 758011186 530214560 743439394 227185322 348399372 336261776 920121749 151361814 579649570 931559489 977883926 999089310 999280896 906891942 946169986 830165237 995462294 345514604 368561111 256079490 425196188 287742443 394077047 568855147 658414094 945147625 983804156 485840505 578854350 562154301 788122844 96824561 640910432 127458000 735814915 51710411 608498245 769581120 829591744 757534478 872526245 401016927 899003521 785085728 960876544 656319571 930186712 543458681 943273940 51107961 795353480 880866392 955884032 346038562 626416285 567529185 615562112 789580492 902998422 731961495 995146013 575138073 577297589 909712653 963720332 287910641 956208552 799160837 901333836 69121326 863343764 83521458 792530940 360926040 636545634 688396163 905986132 431487614 773093797 990951231 996436874 807830507 909030618 931315463 950392751 144965906 839955609 369318876 927055177 772241232 906635702 170932611 876599233 153006430 680066486 414141038 982683282 767194130 781658804 163321301 932054187 766963837 778713367 661516242 934991518 191277980 394179537 720634840 888547964 326030204 931447107 39195487 615604707 702381361 791687686 910401276 980963398 65584733 342315747 586940556 604071632 932978764 935860320 922543325 971340597 960937789 968049301 786259787 991805150 642183146 894505303 649651955 861798785 402291487 845576555 771980957 828365980 860425559 936530927 528158597 839209488 705179423 717983799 959946616 985111435 942634961 943586901 668161884 819857745 800527400 915827763 156635421 429048824 808634530 967276659 794308241 871397314 153880771 581014924 473583292 547926573 166265091 831955424 900873903 984679710 143139772 835480148 539800848 986871083 108219072 375050978 458011440 691831113 800262131 870598643 438306664 866884173 549060858 759695577 914502958 946227553 707464041 986308577 83248020 408183880 315918588 739452851 771170078 819589154 95373972 349920883 749749007 885298470 141293725 663185852 539007889 612817588 364646773 824322882 511223139 569805103 471477872 487308045 563191244 952683019 667047451 734649627 450551653 884221844 199334391 452556509 168381162 774011405 801327903 815978303 898240906 940820369 163015141 647493303 749098199 897434590 402685867 480787173 586014242 836963549 513673129 577166659 311699249 853234432 590801283 822394388 617647641 993322073 62837020 639704943 351232416 385903796 749427869 867100511 776647253 782553173 28271598 187122087 703874300 881061557 413365169 638040727 556051784 752001908 909836678 989916514 562948219 840772543 137115052 692460552 657811756 680281189 556689062 828502299 86228851 967603049 8318664 141915672 27463717 591807698 383326922 414297901 230829375 866433768 338075270 793679881 295398287 319997110 399410700 796514085 851316610 867225755 237079853 302263751 406992820 460624373 161560047 493260526 248320214 334478527 283997278 796628577 485895464 587062776 825918583 846293424 941965715 949867606 619754933 745262902 851279920 865657914 793956016 946175796 69961167 648867148 178194362 238600065 287984086 360759283 402756956 650186045 264561360 444297895 196334529 737290810 806245187 863822133 521987663 607417074 107006817 269933365 594411511 731704379 225463882 447431272 950858767 999823993 144385022 157701201 371624971 425749923 375597096 891475323 927593964 935742757 144948603 730341417 925501259 965574484 810605197 915277146 549025180 697504858 145902067 296100788 492829881 767894193 146485237 621048296 444286021 787043834 131844498 891693010 681737902 941977248 939979253 979669767 669536970 794101229 744431325 958112478 219017234 886852663 98595412 375863291 358010316 458593758 927597296 968423354 310233149 405464373 194924952 762851603 381174855 392168242 845058671 913100762 567572180 687008208 273556645 613371441 243311717 435582011 804309315 994973636 484728361 561092146 181552396 875969640 360497796 749843583 393978716 715037219 753723032 780263584 641325063 981353475 569713711 722080217 297258402 674334252 287873746 969540137 307940891 989175599 395757322 465698836 82330905 608334340 729181528 960870926 917050846 990324195 14485732 89623323 727390509 846898355 670821631 770219614 283504662 473351140 14480647 951917439 733544652 863786937 677077158 892639469 659467771 970083896 207958725 277118214 930025723 938489517 22283207 607884583 208164085 344802290 779125615 836838666 97042951 342500337 533580256 633369246 207886476 624815916 69134586 316951249 328845220 630689911 411279392 442078415 276952305 998159074 906183818 906566321 825222426 852880645 114389181 596514291 748656145 835101222 362923682 614027436 270343675 922046343 774265775 950945131 973351792 992950555 64574651 392945705 530383173 867951199 901575987 953481461 30537640 690743601 589649576 728740275 795731277 829310291 924522696 953283016 727716442 814430561 88094854 985860563 834401803 946413489 374283737 773976453 475200299 687339573 318036215 690734632 334259437 906271206 316927050 518570310 538985493 650794910 446506973 958323716 826362548 987960682 890812313 923236743 484969723 578170456 484612187 589212683 918012415 996561880 502781614 629065458 36692577 698349337 158377817 232914704 181501928 660394969 259674670 497083965 531886864 922742454 90114719 902287935 854542578 918685394 885026893 929487665 501636386 901128879 244115965 704370010 822394540 841392325 825437307 981562533 70197134 106930466 641926215 763786907 147302944 843726390 682537987 877881721 959431787 993823754 347761750 459121009 237503590 700377653 993966582 996230530 788738171 832500329 977044106 980307109 14057964 566993255 455384023 500833834 925100205 994454791 39667887 451945207 975448069 992927551 230800103 242146364 193429932 421342747 887016147 952201039 331771622 873237599 756699624 971612168 944329953 947446060 292840014 525452830 998420368 999043049 416924845 944309286 304212140 413322765 671747366 693211912 776851711 808052848 386077034 529013931 65280435 458373809 211086516 653966837 320025275 328200859 302627281 410203439 711581957 713975982 961103275 987654063 543148014 659314223 733577799 807907733 677307329 716588261 393468275 766153688 683577728 792175347 775393948 926816606 5986155 378766275 923613805 927236154 685888197 693038358 160200272 344437619 612302719 895535455 916055262 985836097 741802184 915078359 177344374 343178841 318060981 735181021 768690727 833138844 468465462 759367380 655865543 690376737 673255274 779805925 668861639 836692627 161448879 339745338 48856609 113802750 198979440 799778467 9517164 231764027 546153464 561632547 113006859 290710027 732830387 749104087 25286078 904913342 159275897 707735621 718644295 837612457 187646851 245259899 356359419 626960028 514172722 780135110 153497868 569015270 321479774 787715450 699172007 832770890 399915537 680308318 942707400 968877341 740356868 943365491 376344163 741491240 533195836 808374710 307624076 778739060 838244288 904461537 192132685 618396478 25809039 247735416 266226876 281832396 759963700 825285054 937349277 945242983 981231804 989621224 982003776 988259678 87915113 320820843 455124285 517799671 626414170 746015344 108290827 989022500 658886154 990097281 261018149 492540592 626975615 982782356 588667312 762876733 81556050 348923231 792126877 834808004 734004960 832852848 682119444 853383068 247130034 836564720 19514333 608057967 214727711 707632382 845900453 900696235 847907729 906752836 969746846 983927233 142036088 737017681 611503656 753309409 431786375 751832087 63938656 786483797 691492745 852208287 567365234 704934330 294344246 685384626 647973815 843178049 597003345 616880784 7049933 890997718 411516654 442467306 431439130 929281076 809724989 869848652 777235011 850098711 55756830 776497659 309808143 583408094 591706625 743122813 912680600 967482516 638472593 921108724 824026804 828886706 637354370 827298755 608440175 809462507 929239195 939722441 501108812 552208338 658704037 837402945 554357918 760106271 438201002 566461911 21644374 349685559 753390544 970756156 534843701 574398302 970125675 989034885 463592541 668868215 522954326 826337084 990852958 997359399 932826371 993413212 398652367 855330499 78015390 697833331 666080307 739288215 764112194 765515205 810660344 973352574 751886481 969412006 742414396 872057307 552659001 845142199 691465283 786016827 487857032 927022011 273834458 393829166 160289639 256104772 521592217 929416743 915467662 977503195 687459936 926502400 58506294 915921485 600277606 603998845 326846225 447228840 305203303 370479439 229002263 528435239 69643075 251986682 125065797 256831894 126262143 510461736 686933059 853611118 285401575 744650757 498629957 874442703 128161481 290321898 500220297 835705681 804231920 872211926 592161648 949999437 742484270 939192163 889705824 928477083 174944771 947259925 82940357 991872794 54143273 790549268 365237471 965768280 170567 702790848 593284585 734877222 862220421 983544724 166068951 502957415 368596535 589004483 613005251 665999394 997940958 998870471 640734228 966732631 136057172 835415928 294134585 630673419 632743244 962013774 940455190 944000967 77465928 440356860 851490913 868008698 522960551 850235996 122477429 165922066 26156428 117454645 382898506 562210742 433944773 951863522 924462259 980214278 428615146 536647512 593708453 859429932 204009165 574755118 837925197 968256958 403690368 863008294 629104261 726192234 742364714 946815063 457543915 794845292 286076703 720854875 981511054 995281466 632892962 842650709 63202137 862052702 534070187 760780199 966080004 967294989 493957240 669183157 187057073 368657969 831374429 917957066 125029368 323941743 183236718 811084965 833481516 905471571 622360373 915221809 219464183 534967984 95078171 992327228 505276578 584969824 832382732 893605258 396843541 815803461 417703219 883262983 54976055 110992286 536505333 965387414 191629426 954552360 459950392 595167800 708907108 838778049 667569665 693584689 257818146 439894991 758655911 894814474 31147169 486695397 480063995 591376060 792789522 927961221 708053590 732114212 826114776 887654565 733755374 850265977 121113768 386183995 168477630 922478205 180964642 700721735 414118045 532567647 850352165 866820289 823139599 914481298 476660412 620648274 592928138 707450458 376976520 867984062 212866331 455227881 933022221 941965391 443890561 505938261 261587184 522751773 442122106 520353238 87822258 788001077 13841561 575571877 404800430 412988285 749026024 838774771 734246266 822999102 700210393 895864647 969226274 977113353 538082779 569309162 20140748 541281149 57830645 351747221 600647553 811022005 121201041 548513731 745931648 955435028 872717155 933236158 353782574 407965652 257077493 835478907 47424077 285582086 807238301 828323301 55670348 451625163 331747361 693311222 949209955 990230910 672500397 925062114 812572620 829105253 30261278 815302076 216466290 448520829 106382123 985567219 532963285 582476842 408326385 942405156 194530003 540475802 359036410 651018383 196650165 765051088 371442456 688106953 962009656 976103317 931671993 998871262 119433449 256427020 253394560 873687327 409819481 557366994 114128188 270281264 636961813 976534892 866545205 987595251 351623648 977893661 991872456 993383931 706585458 760890355 787306831 963406337 256943904 915409606 869056316 885573476 172438972 533774475 626356408 724589884 561269435 833880606 101469830 294585272 19218861 781239094 816470307 934890544 16497143 397484250 697605948 986167160 482732604 989255215 984140612 987875573 891298724 972102040 749535081 874564110 326481688 951017958 638087741 904057849 218902003 974791744 643220347 643877370 730254603 871062990 779121812 898280117 233831167 858351592 458598199 467970646 393051192 723810990 19490344 214073041 956977423 980115766 492527532 746639803 184663523 907620379 923110415 956271098 484845710 821991240 518120942 728816315 619755055 698105322 644452971 729681602 794298838 916043420 507772886 959835227 252642669 494459205 804472867 810730312 316779556 396657357 875685964 949048235 468472654 707290667 567160114 764830063 306240258 738515857 346302709 595084644 989644070 995578312 504436368 517357697 911871616 979606907 867267460 878219903 512177884 556211661 368404263 664576689 818732336 928899578 627988240 792251939 573878575 654415713 431812021 709561655 88635210 733161454 170960152 888363648 138966338 818827466 998343297 999553226 135043179 930227541 59672248 496144449 301380592 746480795 707222415 743498692 648882230 922251220 736160079 769017573 663440064 814203166 20935001 209923447 164550162 412091867 53194386 175597162 604115174 626369722 66172366 710970569 583878686 831742174 580472583 972419604 754033656 836080277 890037376 897642966 706742820 750199290 59288490 603919938 699683374 771099552 558690572 875421433 940603309 967626345 824363360 840080769 889644234 935041226 872048836 924270354 356548720 388095313 444291483 833349124 393482508 517182868 761099497 964360613 392516516 475347942 747956664 896156116 321082845 537324281 224884324 606694122 955490639 976248326 938743678 974020435 944622574 986221204 1027218 578158298 152662077 153101150 590127415 859544783 788144590 816777532 156865260 323151865 976537258 993304965 584745997 633064960 872027630 890277312 931485385 977481109 419977117 940315018 453685030 669324312 305258399 657121837 382176583 547547217 541121295 953145752 437350303 937640783 882129246 915376122 76646186 927243760 708204468 824648980 840626607 978821221 629653496 919513486 913060580 922243749 183490488 457879031 607798543 944097303 716013925 949768040 583743839 936822795 924700192 982585751 921221060 974049744 524833655 927407565 119880187 366277922 401120325 763533559 108135002 697753291 858750225 896666936 714879883 754961130 75421258 701722957 593793855 879632415 241898321 399164324 237505569 452080431 874066399 893177465 525506865 569835442 216820238 438128803 159047605 624794171 682176427 955646494 657676184 839911491 153402574 746012098 981036002 996549466 432158642 784948507 380879579 933273633 279967282 976265383 706340516 852756808 634425696 744374696 36255123 494761375 309646861 943771505 35477759 852859587 245053023 678918097 251457627 393815901 524517058 639166625 15944590 798119582 196818968 828132002 694976441 854974595 553627199 647158287 648124361 948774753 617889662 948627551 830670341 936819037 300069027 629433558 613268570 725315412 258846743 786803321 121367606 638932166 129757524 883702346 714881733 882294167 103421860 583469210 738185667 866266844 867836735 889605894 420463262 902488243 140706414 970412259 733283858 868374476 508723068 822019058 156500343 873477411 258257139 282366710 28432133 443292660 29109847 546443450 592152380 837627859 106345601 988504330 798020281 999739275 144755522 696853929 132270595 269884632 393308207 711237000 164385157 485390150 663722313 936921916 426248508 483462165 618506535 760980134 765081000 980534298 342740868 485194327 140416985 506345801 626054393 808801557 624591465 938235023 125992868 737565366 109187329 469982663 794668387 839680397 272000486 813257992 419456972 454743003 205031733 818235761 838681941 900909755 114893277 527312324 299476613 716162011 395708902 644755184 255579214 817548765 882237402 995434050 34981082 983048646 730118577 790448532 963464155 981337813 89814058 844202665 194136813 383110962 246424808 949663666 199414549 950964536 967055611 999988959 671075231 847464778 317861662 817566563 825820255 985091840 403583667 926360524 460317464 713686970 229921906 942768780 66347116 596594049 488499634 617419671 35809194 519583518 338610032 416385774 425630962 474567951 457166993 815251526 751653827 877182155 348200044 406257841 85109193 470068258 514217689 642674692 322327404 503015186 88112964 609509741 77827071 155064002 989903096 993522839 791707469 903721522 287685408 911155251 550805473 621590675 602513038 704248610 637784470 923020368 611921223 918325020 67967109 148170308 161341548 821898389 741792521 892852143 387903374 645160950 711615159 918973127 247225757 926868202 421524326 731800194 17959775 780106615 76679932 123839097 533128751 711787705 755528522 909742836 766375045 838950329 508810433 642676472 512973337 888020916 134607557 872048667 699151416 780224387 56774285 286115888 987029914 992523958 138974967 212215195 582893870 869599354 959319856 973387016 935122779 937613970 995332770 997176842 892080767 948806607 841945065 988347232 995397687 995604719 852145229 910724637 251277127 926355681 794166558 877695821 8010551 238179199 115188923 118485032 395408329 814905750 727179582 916859833 463396948 696212718 106780121 786806650 179683608 411857583 112453713 249051863 416525052 832526206 354075503 612702612 224940713 720050770 542613961 978625456 819025082 987947239 624486849 890414844 73783469 235460727 626856147 896275280 211183106 408913429 801792086 969708586 794855834 901631988 143545656 606486902 654592347 920152767 579731062 629217085 909978198 910701904 784304911 802072788 131642793 847404883 757772278 935389052 814787194 992973524 860374978 882176623 788906941 923097317 66651535 427153551 543468150 955501328 265236599 552359268 573166417 646030584 959285937 959394050 578840771 592096149 623079973 639865961 704625759 876252578 777453298 970482289 370985870 898540278 602563915 664860982 714696738 896690123 842417951 976527346 764519056 970669691 672271089 787357053 888540579 913891408 402941498 666343871 775082037 862989075 481024166 583351826 31845890 291271238 397909051 468022880 216239900 986248097 893944337 945753907 690328749 984834004 209737253 925624661 218335846 787574467 1557106 760964855 586634985 842205621 790822906 879463869 588864021 687273433 524956880 979998684 11434429 14612788 190366675 588490834 100022723 132265994 478553598 930885576 296341251 711564982 1429727 840992825 874023873 883747794 888669648 978456247 738777557 837273629 813298628 895046694 758173613 908870291 947154890 949447061 655973114 672253015 252531640 885229734 312240604 381066438 482944956 817458770 854475149 923156383 285695557 378246748 952867384 971295076 884220324 969008142 685843059 777340398 822370943 859470803 891038932 917332309 849866174 927152700 323806958 532646570 332509049 740187036 528295062 672708869 936292615 951562910 653353453 797801495 669246235 810655826 139533887 802009293 990291381 998317256 409615451 438151399 419689793 846351078 424492403 808275342 272230350 561180215 555920845 762762999 530121887 970631655 486037894 808035244 867757152 895689348 914418687 923156974 760032739 861976533 211027358 800627038 996712180 998557169 125137917 305455614 269175716 344198508 205422741 341876472 335030371 627787220 335477872 510900099 859853817 860176597 755114316 872480293 339885434 467958757 71738194 553115766 319069414 833322268 461564533 980002510 940827276 998467804 142049337 477584076 957351033 971921405 587722915 791016114 424160495 645405163 437962460 943568568 376281115 682470730 934237096 986041834 764136078 877082977 496519332 940764431 877177646 950283297 241311865 384421717 290023457 550768287 677854614 898727704 200160756 761372032 921947572 985270725 287566066 291984794 614535795 633747418 427409756 912571568 409020333 671140881 515727771 865102458 649725290 698751079 454601691 886619773 782221684 842928734 581176495 969104053 291112155 511709994 386438917 663186994 173852376 591909991 41696621 412129797 51878897 761058743 174780144 333623507 447402956 851894291 978434654 981201809 102552072 421435539 206322514 720298539 529406059 726744990 584090456 906578096 573011504 576347294 876838364 926107104 489772392 726039251 524237203 562625553 96533766 135815853 50806018 88718252 608672505 833345049 531380912 831643014 950926835 966936285 913462028 964060768 394126954 946401929 119290250 871778980 708870212 844470787 348406793 930976821 817312678 831159925 906746414 975936075 747883592 965248981 806993879 861136144 740072673 910454234 753150233 905135993 805477455 898733545 89691332 937000998 264899145 450232823 228699679 428002484 818882739 874515039 222950865 779670111 851696897 904695997 149455922 642959923 671137243 720056052 64113269 223298257 783207976 843260873 510534338 554261305 9483972 530861965 908769899 943653109 828683091 836450551 254429580 880311263 881991570 977873613 573073588 806419621 347240795 374054310 548352139 581113548 867580208 999628163 846279753 944198322 558013738 937047385 682937174 948167558 450627992 508435657 231019613 488496993 193300278 910810495 927403892 981368316 144524075 231440190 159555214 575983527 602241119 719997192 956097478 958965723 996644985 998376478 948902863 992923250 840675865 927130494 302280844 578099809 801753280 873560975 957239714 984848827 25630920 326722927 170621252 393898248 995275489 999732919 461449386 574755809 68349623 126856254 421227879 747673221 26512751 960168124 924816261 981707507 25044143 863460645 495251100 638816503 633447619 917633790 607691330 733944285 359253899 748030755 801243189 832173638 759681355 880060236 909213372 945414589 856927955 942996795 700764515 847692870 296551825 402368502 705717496 979363529 589050559 875374008 203310750 898660275 158884810 631697577 675785864 889043358 272403932 387160340 52312868 520433156 604570617 908412507 558719698 798444958 657653382 968044593 631242656 759501792 432448566 972222635 11797528 425981309 724643346 825660181 689924491 901758131 731135679 975222575 27348307 459068442 775971474 935483009 73096840 748026058 660078430 925016412 713757575 845392893 858703306 902713271 642774227 956583881 146287157 274500128 566451231 686869904 794822228 960932728 725375206 981195512 138527558 188811022 172883979 989245759 434985039 629933439 150770438 783511987 58915791 755981465 344810724 828175886 859711444 944765958 670436610 753058294 329743779 735201529 864851840 951789420 671950949 877772561 400135729 741795053 843884230 934841569 249904806 508165572 11695089 261446205 555209529 908129000 791611013 802475505 259242107 546544988 890952885 968355589 242766329 619064966 280002560 477565031 390817592 473723343 634359429 759185859 636029274 795171980 219484346 683745855 727276623 900360934 637213432 977294367 166370599 527212622 883214166 893016960 164256629 767791768 759425322 860776308 374016706 933243452 80789805 127729431 444780342 814397044 512621039 882699820 645202182 649237161 838504200 918456829 700245482 932286280 618635202 933144381 653384203 814868802 914741784 930870015 675433086 691933766 134215459 263150577 12065476 484936735 102419610 627704904 91516453 892814978 116791969 147420721 661319431 803566077 92645225 263748299 542665677 620753678 466465638 867835409 290717221 309776903 676541798 976026145 543199618 657238989 487410739 605465296 817980205 928094869 330783188 754035882 962132443 969987436 943741066 960840202 886208299 976522235 290421533 558760470 674155492 738308601 433105705 980114254 365039832 454381709 473150025 827876334 137410720 855611371 610265978 868420959 81310822 636021317 367586469 380992373 36682230 519407786 399243341 776932878 788569030 966210383 348643388 728370262 272609372 317928184 614060713 845900822 377984441 668937844 363556538 888965031 459830519 957447104 537865111 967577793 234678888 300316891 410457878 499460662 346974092 528543829 989762907 992333281 326330065 546145460 802067793 871366873 530771432 644056851 881997397 966904084 386629712 775779018 134637357 219659267 484217255 840316072 355987374 778850234 456492574 779311787 917338889 955406681 184649709 785989882 951408076 995866114 933301503 946674885 614085138 737753107 787242034 876583477 2404543 372650241 703446988 924084819 595492191 677145625 308663215 394842624 219153926 226500795 791613795 989443088 980814766 985327027 359739338 788298498 717931856 763951707 195183435 970148390 575108869 791322104 554730494 739391158 452301103 584608631 4645099 287414082 79106802 117892593 977259834 996814658 12979860 891681899 625012565 906544777 862858191 880868710 617231026 970218608 523290690 666838148 48697774 269824174 543029016 923366638 969929078 994072209 854152504 887963904 42332407 187593083 573772525 652559009 163174563 558955915 949262412 967592964 980551869 994800499 322979832 430084626 163520940 223707073 783481498 940471838 979037674 981008456 623606669 962427784 558786105 561953974 195521779 463327353 77565459 639536044 752067561 866913880 77754179 224272846 721221821 871756118 295847616 717545682 446003788 682443311 333735882 965982707 212971737 546020592 247272778 557029812 962910093 974544077 154120048 923709194 326163383 348458323 858711174 973278665 136192696 605898579 463807944 623166046 5351323 821890426 910770187 919131691 203157872 825663427 671503371 692803150 369842945 700797484 690346524 781551707 239954068 572734244 702428640 743664713 896542925 942509067 381629997 702662678 176636255 841697871 154016406 602314551 542263286 724055696 100028766 985812882 743510 473298266 20316613 210637906 607448034 994985651 954799699 988361012 820903352 823284023 943766950 981489606 594633182 658210188 779699926 969530589 512736628 516174575 168700320 364182905 607679197 679756814 196104285 543931966 725502780 922945114 605876444 740347587 542856163 583592574 652436440 910367547 41672145 849110688 208991354 388301104 905917157 948347243 299927187 692904658 300033242 574152566 886219233 938834977 842407794 892377151 441273894 484068199 379104398 650756260 845553386 972684137 816033811 938775783 695213101 873186224 859721658 887220119 146302766 302637060 148275821 523105256 315588821 963216249 798141363 847465512 455238951 887347817 978231346 984903898 692826672 835606379 879509249 888112586 688453604 826473448 420969685 900031752 367279068 723712432 331351663 759825061 49796399 120447273 870013521 888280842 518207668 772343833 832478400 935752290 139080983 180153282 114489607 610251604 554371911 860451761 872097516 958412234 21389237 50207306 832661216 949621581 395913359 520586017 828061402 836420508 694169734 950910894 372939889 414490704 99462683 591322262 684332821 857741288 533522832 632011976 972867225 974178792 947306235 962453837 793911346 987021413 598106169 760328205 376902945 386688411 243342699 983176789 511002376 594181996 695160032 982960674 348249339 475118623 737709217 928547051 164837004 347573728 569135128 640025365 823219915 982821382 824834332 976288040 1544910 328273101 899500550 989400198 719279398 913430541 374980169 759759420 41665359 511886892 280993365 739051049 265658437 964310424 737621804 920926331 898757389 947510525 824827989 901084624 337071711 625338896 965844972 971840792 657655116 683751759 900531053 966000929 76249537 705113844 56088465 68073695 379765270 901077193 26041848 182309600 239921184 534132558 169895842 729295630 790205996 872349328 705813480 718275689 301099613 817135498 989597043 990311040 695622046 843199306 698622887 768334024 410461263 563248436 194483286 259523141 395355698 471057759 256796424 454892476 850449787 923605352 832220743 844414170 67175156 777032049 839597236 867903357 604306107 634136506 178238201 825459351 522504250 640093157 736800952 740629591 131334224 546759416 29060960 967062075 339327921 896144803 579768427 615220197 606498584 790107998 747517689 798356420 576275268 997485152 139761177 848728827 859475549 864728381 320597668 481855994 769796420 971538562 381436231 385646346 52748443 278951200 76348467 223021789 63535953 835166447 475919066 587209761 99729312 593466904 398266726 564953454 224693991 868232336 603826262 619189366 385018854 508687479 221982514 480616899 492513671 699345144 978435709 994472265 574249253 600578408 709952553 908502395 283958903 307570913 38104776 739734822 494483787 925212943 840296415 859077375 218113451 797074310 67160268 382964287 611491149 758141023 290344946 439863153 661182277 711914452 928031046 956454860 872776430 942128086 774804966 819274548 148393609 545460081 793923656 954414830 490856547 791859244 807467911 958420316 639011376 836589693 366954448 950914746 665265052 675948862 633624126 901569375 78587163 267875530 720160147 738494174 353317079 673566965 455905134 583292404 159719162 849443300 65909404 667482604 55813343 529251949 147127238 860258235 623180064 918737175 302686251 669212372 149708416 583592831 880781981 969249855 839401093 853943376 806615242 972113190 123153048 660655278 277732367 779231982 787562288 915673000 551583621 968454547 8276849 538973095 69288666 853036929 905460093 951227210 318939736 885121845 46539039 969281132 182872364 844631475 813484549 971999955 673002358 823577575 39423600 643513364 612989743 843310297 743824564 952380330 181647498 899729667 365049142 955995309 566491852 752699678 601853452 935876042 451513243 468866778 553359883 798009991 683672402 793805269 913204640 920497741 719031654 863196701 978479296 998377754 135415105 399881530 362105682 456209959 880830056 967954844 264487749 459713378 6255910 614887827 419406421 982291431 295628907 598748160 15766647 564565925 11817429 305965937 183936088 911611104 816878135 934444366 505454675 863097545 45520728 439509475 331528073 841979501 340398529 392930670 337114090 487974196 992564572 994019160 122241638 494269143 68596275 721068465 411242139 487755895 486181119 835558936 983153641 990904038 601762994 738522064 701262766 875323586 752495355 935520368 401801698 496850437 430969745 644821255 730727383 967922419 75668412 646305412 738222720 744146405 944794411 984518499 792965879 968352871 107340476 951676256 190356587 198298141 165645002 884407559 180088424 743390191 879113856 952333098 902297509 940248100 959961721 993245261 772911260 812859127 804564254 811455923 808584079 858801515 912482969 952678707 265887706 965151110 886700489 986377808 18246675 944750045 711079554 961147244 496362070 984758127 993608680 997401444 427490209 573645158 991630515 991994086 848489274 952419043 856831452 949632907 739685395 803041649 246506330 420265581 523535415 961601900 895546429 947775510 574080514 999234529 992292741 996323604 253112402 610496477 325191957 445817466 555979017 757281415 558032514 659974433 606342674 988682065 104264976 290859343 221642635 849070228 704529658 741342068 496735487 576020427 962139728 969887286 148933915 374517474 790760080 859842271 579222780 630273458 815884552 861097808 873843381 996725172 621890121 720642262 789168061 805856811 862715495 973398302 673510141 799567313 12550914 650602789 247865218 760503316 302701700 890344127 151197574 546619188 696461151 711958327 497941741 909901729 270939096 755909865 283788896 635989417 705323377 905137885 83891523 567440139 195798693 324697607 171198096 848983436 702316222 928904914 244079452 940492634 845483521 956443848 562715427 770118593 380705131 586967287 169359063 215085645 554536224 631262923 975916282 980727265 614044024 789655869 696599993 932092120 463805076 746779518 875616524 887027169 100865997 880403217 578230705 948051558 373921799 772439233 989551077 999688085 476328780 720717924 485641249 763723826 569532553 622916324 265176123 559837969 356496424 416452045 875459902 992685304 687334597 707364829 622486992 911241814 627835584 703890681 372947045 734414173 994901875 998896283 418900923 859875750 487606207 790883097 766628501 777364792 713229580 861392963 812392697 956219256 117433932 316921155 964766846 991118935 921241222 954189209 13190716 936354001 323262257 948422248 912758872 948665735 872959647 969144589 980454309 997443306 257158638 792245417 63037429 790787148 943565739 990762123 636295040 935155017 806235578 990532757 929176347 963931763 787585008 833176665 565363259 692014794 68333382 183226184 215185656 365224191 221006906 881386595 394381319 821350350 242151403 916405822 613022161 816163921 320547860 602003013 672108438 675613671 565722661 995773596 126553088 850116677 62524918 852372046 660285698 839636277 20658457 255743718 37713306 446264975 286799221 971131330 353222749 622252051 809407023 884916458 291259538 644522933 543414373 750037414 943627833 984187727 538583653 830650423 209467567 368639011 696548640 915015246 907406719 921992130 147563472 576284905 943373778 973713776 62697016 547459878 227836938 447797050 839918269 974538184 10241329 769737829 448226401 876996108 913446262 961571249 921935096 929326253 505299505 687404481 756427917 935767743 688919908 913029683 485901465 773012608 238998269 827796220 249457447 382523068 695342014 968603676 702680085 822017047 773273219 884487771 598726738 758475248 470130556 566117588 555693545 733511635 66189888 385422714 228151279 349452131 321220300 549714375 476589704 555487662 350458883 724397569 670190594 992567582 254421110 521696510 473089888 659220286 93947106 172663929 817288966 993424228 120009296 237438237 504223601 920503433 858758647 982482681 336582942 577355360 120569357 371294349 176313746 234772548 58600746 222603075 36073258 572206452 126195649 558078868 520495048 683806464 541292511 810531888 870294803 903474006 110025481 422293655 78261923 900927778 849477241 976056917 443811383 797023269 985557794 993389006 595825713 766666617 827539512 832602805 50337699 195686063 394577816 547456111 702745644 968355726 672553136 688140253 734038479 966616828 849996390 912349392 24508013 567671557 677885977 797076494 888959158 952227765 749999166 793125088 329390888 470607660 376036439 632397901 488892378 584005948 725651294 944179117 768111105 965191113 641491219 751139898 93574998 568536733 739943997 921778703 3890948 851199621 59604067 67556890 76312595 365425857 479291109 853062403 822300961 822477026 207418966 316393864 212486729 355646328 943085615 973504622 157551149 551001592 487075617 797650942 813653449 857531649 336198134 375876731 966979118 974457809 518686561 835626490 928745431 975834687 873934990 881035630 218361120 390967367 670595685 839329043 50185336 306908008 168037563 957737811 603541644 723723925 474134230 974191527 78313545 576422151 391247453 806135202 512763044 969122228 306255694 355122129 804886968 869611706 144143078 917245599 504127239 920892742 687926184 865712769 272502463 652154646 285207085 820971640 83627027 129431693 73565625 240771789 195852464 470973793 431787701 730013635 559498656 612503691 407900311 433279939 14195275 172559636 91043761 112371241 651738566 815526797 356327697 585787108 807421737 847914557 456288233 844407319 486445934 786671993 405613677 489514722 769235184 846860118 887086766 973319223 882501258 900750764 22678082 873248830 174624273 520060361 393099675 835396736 486469099 652636213 280679525 307160651 775678964 850142079 180647922 413937418 693696332 734859916 92783579 667826777 465290453 667148501 629799434 937484278 225733099 671218883 190407714 764470452 689403311 850644087 640780619 827131674 774251558 861618566 592463620 675016023 200279057 606239295 171638117 294009772 278932339 994864893 82253805 863552602 282098570 307080240 342084407 724889000 156088081 960472722 751284764 882607482 829190404 957485075 187478236 441317857 742192141 753957404 971512596 997629474 437201939 610501976 793398309 875897556 114166260 627676500 619139881 976812060 902243106 996574287 339766706 748226279 415507486 490277845 326477668 455960703 46498019 787249357 838131701 853071917 828070673 998187926 989159524 998870961 393254147 953431828 545403058 877756599 541133179 857809224 954925193 983917293 311321900 894894120 489338926 963972485 940154240 952719817 654248488 837094496 132168030 910222430 745794602 971851509 821302336 870521424 900101076 983750234 742621580 810870435 169374782 394047055 483006603 919901509 788971519 998300127 105388559 791386974 360030817 734354698 297006274 954164175 479696464 974753574 754944614 860202339 726001945 780771760 833075013 853253079 261157184 693864547 508252477 587597314 865699105 948122167 867333391 943834972 930835349 954245849 517753332 768818015 147468808 884757700 235308569 913301495 240409967 966890957 914161393 953061007 252745407 687156849 900850961 904403163 735026751 865863310 99626501 559250629 587516940 948706476 259546790 678346657 463646363 742054870 211153436 765291209 710217064 737462910 47619426 637777563 977252172 996036375 88288295 344536242 386149777 895836841 636376392 679923546 856873465 916733438 958689612 981663732 566455171 742095316 276026904 828035229 754774564 870200978 484121455 701616711 43639551 189414284 597383420 611082393 683007071 767281891 414788005 947329727 449529632 703349428 390089337 837535382 108815349 162716944 14614742 575428967 699735523 774882072 699611895 850889030 780788000 819723810 606039687 855588131 920705881 985457926 580965869 860079997 763939770 939796483 934091631 951300822 108541458 367730311 61263155 319235549 29292895 566796643 141668421 460895090 493758077 955653796 698514643 761408956 556622094 699538326 173690361 653649572 533379613 949520119 912561451 994218113 518285132 711412390 678946826 760358580 82027190 669043165 77276574 456256020 332532043 394326852 145375122 615073478 440529501 966851536 488675719 854899538 234356945 263643807 547958346 902375497 911608497 916908146 419133511 544877195 306748332 711027638 165837688 439143302 164536459 513847512 382954793 597686867 462837086 644382465 883285986 939789134 687141017 709718172 775196010 779574603 542726486 728292390 155670536 850982460 138208507 774729970 83381769 226807651 77956618 159357161 34784793 512454611 830770561 894998771 170415616 465499446 958116343 979081248 299228416 581901747 451470443 576977752 953672173 964242856 360751002 863894723 955545231 987620824 73663241 505677939 205269441 827718362 978222910 989973412 239964514 481935878 559820706 864309850 474661106 995141946 657221652 799509255 942227758 948835559 60840042 328257481 883633762 925815128 160133937 294652594 812484315 867461446 462214462 669933449 230722046 297541448 402129871 965225383 409135896 523129971 967469703 972344292 810539482 955681696 80166891 913598311 663573099 984739122 911023892 932342073 811675400 854402613 935919959 965529557 140402341 528313643 953705628 974985752 946397336 995899058 442893150 534086027 383992927 429917525 102223888 322657513 85044556 667424342 121311168 133490191 361359908 364519718 189300457 918653481 62951788 558733056 850476105 882138578 668024243 903608652 399647478 522872134 345947703 989168770 825494468 894561914 573943019 702765421 941860165 969044747 271332176 443535467 659122840 883473470 727666026 818110901 217708138 726220000 150849982 463246800 878399821 943148198 200389375 347948289 399380114 882420210 338317391 800386203 32816468 298377796 416233118 783292351 404462997 995743121 430965152 741340143 896899289 897700903 691239115 863348440 655969652 975930873 424736338 972512498 232648517 641687857 283447180 367659077 457336044 954866754 802972932 943408073 686669116 963624620 816183465 921898308 315357278 423635678 844075498 960399551 766614770 874963938 428155533 720469565 409596920 487901520 539888166 940994696 175633043 897721429 107104217 257583451 766171947 780243288 982700354 982726537 661269304 755055631 216610996 585130480 386223054 700311492 276173501 350731911 138735625 776240954 351176653 621756807 725407226 788302302 748005000 865604365 624202855 735351486 184511413 994304784 778211833 922220993 29911076 925645590 5916647 123906708 358252965 530773411 433031364 485835798 237601793 829302914 904061300 945070492 576104513 657862887 309268652 842515779 80371213 735715761 627777894 712874355 533003825 629994694 229120897 407837710 80418574 535847441 791412769 971868242 800146430 811424611 692828838 932897464 312669563 925952804 762727501 796232368 754624830 964357271 401350290 556050826 333863725 720540933 129275778 140547085 582966925 952124271 490147998 910041333 391036193 700040887 484230545 589176707 172632066 924206013 664801718 974638024 562670969 804204777 572834077 832766695 557065075 576455481 918350073 987436586 511525549 675752472 922619204 928490664 283884257 308641423 175905773 355294050 909842316 915979175 849373081 850994429 474073522 844156327 919306257 945276786 427399066 908065433 184642745 471597224 707901999 838717513 399989449 449374420 505536380 899926445 165068742 384702958 755847744 873162873 214211156 404780303 881890529 924695657 651926848 962988401 722335790 735678690 769591665 835800792 756159547 779175916 905098419 990974906 267964004 955205231 192603465 566402979 407361488 581835586 404050810 405953776 12109604 50130659 447391478 863143475 591935955 900899591 744143073 927224055 910942940 971138538 269037343 334146257 275924251 642838619 693919961 781390973 377505241 724337637 696908592 757001842 173445776 400149319 517902395 704413981 502636112 757008718 117978082 200266010 805866517 924440271 103275461 195880568 81482858 490231153 241478530 993378046 417036183 663186064 857132472 893514130 910062929 950591905 326216803 976907613 761136275 917435452 496592446 844439246 987445377 993994432 857445595 966770386 164015699 587036668 651661419 736863816 249441613 916038837 239436692 671966169 126170633 170576926 651044189 902071113 334032183 930579252 242024134 986485036 744107334 860673016 726162698 930813503 805838936 918491967 967383519 993005491 344387970 794490937 375746064 409571144 584933961 739202733 998838118 998881927 391570270 834583009 196668853 518444938 10938272 674823559 627494744 861295436 155153114 253420534 28566073 871649671 876715197 916121620 138589606 506347138 744625058 876968136 860009345 884940498 317602541 745246457 675244860 722887794 48634937 546604585 56706361 839378230 980035996 991212530 757401209 817067143 286583653 966973970 96282918 133959423 136339074 623566205 955519397 986454792 893893400 952496314 249605759 845514798 306633432 800617737 42254405 225357278 220636342 748169284 144273972 243187913 439025753 922693280 949134681 998993480 696759613 797792039 77501575 575571252 549908618 809623599 739730119 944064775 492138727 940315839 47523258 641665003 280583182 616081647 540511380 776847211 286517474 928957582 318520692 569840766 324819069 576005136 638124680 873808461 762604927 803795024 347106563 565615985 109302481 272985128 52442029 561980957 708452707 783935483 377398034 628318898 701720242 995973126 367437883 779170083 975543478 999516243 895056535 959156175 476841291 528896371 88053502 404227747 896472891 898517532 409199057 714849154 725513780 885466685 319227246 360783878 660799545 795467714 855327571 890682583 84281709 905415986 801983195 893169584 481251441 979509830 575665970 652481087 981815682 990750404 367568708 916597944 536437898 599027068 995155094 995554118 441093971 900002502 926529247 999491974 263712855 487651059 355920122 667761802 652359960 677361832 660221677 675210618 578805792 882048733 274168173 957361292 266641115 963419066 231678529 329423058 799280000 809284443 862027630 914354826 176633059 443805618 930968443 996214789 278114285 851428111 360229136 705799768 377142565 887854790 567380559 693982902 873174240 991842446 704897431 924428551 713877476 746455637 423650471 748043659 677066758 778919668 683086597 689055228 211735439 568204575 960957411 987614943 545057821 836296779 391253182 842454157 708487333 990018077 294176388 370126186 891133180 953915586 688955479 828007969 14840288 745168345 297437881 312887237 337475162 678160123 752857551 891987675 602522358 627021273 919117977 949171384 67591380 214454634 315471301 703752683 250004359 466385022 420184318 785452795 885910591 910906989 708204436 732755596 788690913 883246978 163678334 739615195 851292819 954754879 893878222 896513828 671374597 985628826 480823245 604770455 722007199 953375899 775076633 936870279 138142614 298374669 707535955 763022191 55034449 575454739 105346913 934100895 144800819 910057330 36690742 211881359 460865653 784862653 330345043 767902297 940212804 987899005 968413021 986263810 88301446 777007798 869790082 893048570 304510289 635192017 378931213 876366200 29938462 135857651 293997448 638704402 17229770 818366151 179926717 827142448 158897079 163354581 928357658 954827137 355399517 356480923 542003292 956241500 197042012 746731325 895038337 981630279 565280916 952479314 495942917 781711300 772850197 956355463 345829287 909468609 438032843 516203111 959091013 977910566 446561996 566236755 207492474 869610271 463697083 659616828 308124230 397195051 112997753 462445532 473632296 549444175 229671966 592308896 923191201 967000420 165799918 941696159 529890970 912223961 85045855 883990260 586873479 689891769 599025148 983725703 269853588 626462960 332611618 383466109 234873331 993680431 157434351 979948182 43128264 82409299 702931367 811604159 943482757 981122686 524618375 628754105 764142814 890924386 855085296 909223006 252469206 530426150 745773655 761901085 983707701 984482282 63567255 292512535 529262404 920690353 268231173 916409343 501458055 586294262 710340762 775848407 106289259 294282232 121895271 674286472 321000882 537208061 241439936 426341829 767227883 981625264 166353467 943222844 286675730 553911235 269500760 898987603 844104131 983653979 557831045 738063179 387633830 425826627 762116953 957859887 892034589 991554394 864590152 932669082 88272815 460307966 396237123 466945784 997490635 997941964 849668415 983294640 441598164 840457269 95702900 745777997 860895028 890542733 388240035 939193596 509181087 867649774 108276215 786602793 727424205 799739017 349192891 816079542 356358978 396311349 326934733 676662170 427375629 810083783 998577944 999111185 809136037 873930344 18399638 640915216 40863861 509279341 355563336 386912797 956507384 971958397 408097476 596396483 365190648 920526797 817022866 978018111 776899466 858340697 491294875 870689845 512065972 914066320 623887089 798609081 336936680 454446026 76183497 100476731 198197303 765791838 500700335 710573021 577820094 981761335 320160619 757023343 583860507 896025509 587141495 597823171 980490425 994242210 991210760 994256973 916631424 930025027 736611136 893431837 303233544 489275895 171703065 656633529 604422965 766204287 861569144 922840003 139670930 579234036 224148598 549347784 772028189 790362169 783098318 804711170 358263847 793825264 526363413 807739650 676845343 919344266 155973186 365939001 611668378 812272447 877706579 970326585 709690442 820432978 164304153 544218649 150867633 705020335 80152877 565475709 717276188 840268785 649200575 735000612 35108485 972081396 833590379 937432091 692186629 759400497 578250163 944258039 368276844 674379456 572532810 716723045 866129798 932103581 457015972 991921223 290703909 468510782 250376930 647418159 308539764 495010916 14036757 579980193 95560863 629538690 658347344 902757569 372620955 747692756 530330670 649973814 221830465 392073704 768726599 910127123 560076118 823154345 762845280 996987679 748861360 976651951 915019171 954575542 135593934 698012980 30941603 922361098 389282170 768674918 347209515 650116431 810428120 820497107 937407481 999048564 783618658 989675142 994908507 999057330 17188228 503994076 349389963 354983850 243582856 615675712 782540938 817203028 456460754 855863235 168029752 846563241 275619727 849326743 722392243 779358992 81839039 173536071 739979177 802290644 216706118 676542982 706525699 858621601 849223766 885663670 585240849 807696324 490344983 925777096 630951395 867705294 327728823 345213088 226869289 471118683 583285405 973189044 867179214 945919973 137730384 707747483 155701924 521954059 42403638 440884890 795379549 943373151 422196296 678730811 492507019 933440927 770517304 930209639 941928208 945483047 130926491 778245467 639300328 715006199 859431462 959360892 88990254 360236625 219180812 440071550 549086723 989372247 652373185 785099116 117149956 512406144 473116378 641365162 413389567 457470001 857623846 981321680 765997580 877992727 124850974 974461761 356874410 377777062 309700816 859030057 945109745 954443376 862573031 994268770 579793986 584201140 791309773 933179741 642326993 670419018 321584585 809546886 216282109 681450866 651779123 753030087 502762161 776179671 617671784 855309376 397854137 638968160 483196481 996621581 151109063 198765113 520664513 643504022 979048248 984615215 734207325 806518358 949751870 983505797 466540264 650921883 987510406 989739495 615797149 755977989 378833334 889102448 944057270 955997528 983850472 999273448 219437007 298957125 725817846 790369626 647222365 858325116 415491645 705389443 678448315 991575194 832779843 940986082 588432577 681936101 913539539 928545477 948193911 978571654 349586487 444184650 399678859 417609303 44395915 946575058 170309336 535330870 615877425 987876585 428944169 639744277 1687445 90616137 948608995 969328530 894737451 944778006 318656846 413007882 107099177 200894829 632585282 706026668 486952979 839301662 148159705 315362554 994814295 998260954 632197940 940895278 219554147 754371819 608488789 992814906 892981286 920094497 595045374 690265660 705816145 731737199 75979997 587227922 599639030 666715017 131922278 381578125 724620666 846556083 115813473 628584148 850581872 969221129 702668204 993508087 431046703 603483714 508690225 940656188 530097680 926194925 188035368 312499861 660984004 773342416 790767050 826183906 963141027 970126734 910151975 998792747 980801626 983213153 928653716 949789729 209249941 962192076 188588410 636462795 487547686 770120096 323925146 344491161 791803586 866136974 859122257 870900954 916055449 964604045 472678997 563930321 26781239 135227527 172702805 631331607 248011447 693897880 440983372 684048666 716839523 939668600 601321415 998100630 294445363 302740517 175485238 280142041 23092755 52942056 363983296 660993130 924540665 982178661 743023534 831316739 405741460 559562007 379576664 634321436 268681653 612248988 896294810 940101579 479366270 915463132 362008586 429609580 449000059 758419732 976240091 987744319 636393285 760728013 270465626 385681500 552987796 940933762 678987655 753655916 292158629 866929998 188970442 300647283 915029330 929313213 69441184 786057102 303799830 499158988 708920963 857537807 715395454 982132523 127140661 865009375 166711933 259458513 832062132 851655612 840546111 928205123 79243766 360075945 445944465 946449204 421121185 908686054 387900307 423610882 985068474 998282614 619751564 758495654 160631266 773840524 401217802 572701326 618858172 785228178 304287681 449269866 462412736 681628185 670255015 763410319 486987809 506932193 409410022 849142881 458668305 960201549 280281911 957794132 466943957 768536626 782750611 953703858 997053180 997187281 261337357 531304332 462922321 798915934 203172820 255353518 740871297 907085890 737357218 852842016 144183709 892707571 828575451 968749936 761931075 828601527 760431714 949919147 944064178 966167283 242617766 944920749 633148364 637164850 564660650 675724246 818561828 891085117 876482359 904812848 191566203 817108356 5183370 179085170 734408758 785609696 19426368 357299036 79697275 126884254 162962749 165396022 429771137 671260523 345409951 658681575 408280244 915230332 282014857 647660928 277309593 546245567 269771638 985426510 404034480 854643019 808678986 963968375 693311494 918855051 640979748 810129650 314944350 446206034 406078439 446879248 916395147 936972284 417059887 776496467 840017266 981740500 53961625 158597542 100262909 186633947 180645619 675156773 56401238 771290693 22036176 464526370 582132509 991843051 197260104 348524579 666353541 750936770 505152521 708770111 87593952 766237169 590352104 885313506 411004390 562410264 536356794 642119698 583579327 973976301 717111746 765048001 787880849 920203670 501608901 905696176 493711465 762152240 756182986 988155141 219457112 228722492 506973801 758075325 967189018 994605913 177436900 783473202 978058364 992537563 630424868 859067611 893613369 904548059 462241292 606417971 675711472 955353712 213236419 891072584 335444917 679445240 809700324 866279311 891637314 892838873 941760509 972115803 610358663 969168505 648087989 978007325 193446658 698650294 696493925 789231240 8224804 853106294 660801542 771498928 462060453 496600491 451049551 904012145 862766805 920915250 926185317 986600093 878912823 933122228 624592915 855764560 676111448 743814989 971785171 991561468 305131207 572527741 102688335 942709198 551738330 880705811 423485977 751332644 416390489 643519391 44509085 144528448 827093905 956025676 13373189 393707521 340011047 375979550 446611972 477066469 826261209 948515745 848215366 966309610 366271401 555674721 776695323 866599865 935445624 951203056 274388214 762748024 892188652 967867603 79159021 248145495 349106560 406592381 28081836 495104522 635893009 650277330 861919565 971468576 400506624 911777782 552739014 721842341 145860381 679346789 669645738 685300916 538301141 913509613 322125251 889231614 58059786 759132115 555816177 658720644 595699925 739147116 131888814 375797566 697335819 777742335 158574875 400964629 360709547 983573189 419908807 422928554 246697872 383870642 928505885 948719370 10018167 532212023 770704725 789955356 71702880 240310063 280176507 863778134 348123306 661118945 701831898 905217388 669986726 674251060 624076821 700711170 148165657 164737790 893500932 920854004 292450754 482817527 471602872 727759965 732652375 878960475 63758302 640679407 929094396 940508124 96286794 383376359 871133665 992423306 687019188 848926445 194621084 933307900 830837950 847492084 882871350 941077108 459443280 878494130 168049856 296119969 212789921 803189989 5134220 718469519 398756513 629674981 153557127 397765733 239449349 918875285 924686933 974306600 139136025 935352014 975452830 976387035 648149411 990407739 577122900 810691515 392853511 956915511 686991156 926416549 400503843 685607435 333593378 879865296 760708315 897191157 771512692 811389863 126970230 136955885 776765448 843186495 848172903 926443271 891811920 955483378 483017861 536175926 866205411 874314218 515412691 589025721 267540837 411390824 916677188 976989209 208368021 330768601 226254293 611968710 978824558 995931239 763311924 932757142 554026925 842042923 652500634 716803252 16146848 634802863 655228429 900511856 242578558 302498312 489544392 592477138 893764832 982471748 836260113 857722829 618025146 715986619 137637819 955154562 859705150 868972826 17563631 865165514 567467606 993208273 475802424 768533403 510769911 536066502 391500792 763118964 80450340 860578890 224412112 887635200 444356523 828148702 297633508 903796846 534889165 595772697 632733678 836274859 204690547 766039784 369184537 836579445 548751420 632281867 526980642 877244815 367649767 527601105 17705280 461604355 778670339 821191512 263054500 515861322 529886842 669296126 40252912 243185234 903252301 984983277 277581810 377935005 142779203 586790873 80748152 582422342 966622641 985579729 883436225 894734913 62019662 876172987 82012690 171344143 134311345 696261202 607155339 932803985 991490174 995759175 442773871 764969000 150963348 457076939 511505920 577777524 663197995 827149397 447747754 503222290 158117070 403172846 588044537 691703214 212563944 963253547 924181050 958727485 964867289 974638150 501062216 663913181 991733256 998204685 732793487 829842727 209624303 980060128 982377473 998906000 515699187 596651346 772354739 891656396 731001447 930541292 444072011 663489746 104610908 562574748 358024951 638865847 747492344 994184839 366318359 601903935 873480112 942511982 258101453 469499569 745480211 775767445 984662809 985652836 959058733 973897510 747017109 941494759 32822157 785246949 81271309 184988274 350229970 840575983 152696514 240148125 847659663 919812097 164810421 278836889 447330 869274126 536917740 705869289 574489182 777325085 120707155 377009218 722600086 912750279 322813980 774083963 156102318 401748095 210916857 403999692 320923854 519408339 22156592 785127562 553029832 801126366 408844198 972242072 608648377 822758876 99195907 244217174 191622968 983485272 1114582 687075832 360112018 653060046 831350218 960223505 629198208 713343150 150126885 716455743 671592461 876021067 373589713 591611472 327936995 974616142 84260977 537076793 765869706 887188823 738304407 933475075 539256728 576247679 864830037 906917438 714739975 899589464 146173955 833650349 288952741 912381943 89188689 755435171 893013909 921468430 313016660 795570646 438407322 930392346 317369902 360481617 132580642 239699451 338604722 739877823 245004766 271815232 209974150 329659494 16319401 775654377 385380968 965027448 276657290 936298058 605257844 687612614 781290384 967977975 810829740 882157101 824322269 954754315 232839822 987496325 697992547 819065124 870361922 963108973 134001720 324263200 817223362 819294095 170153802 850313752 503092674 790738600 713260436 762971070 274388108 461646420 158243317 368108105 477655246 833600388 684681991 711993898 658202542 858995815 648666366 766243590 155628753 892168881 694981628 828245703 851252587 853755360 315945314 655022885 388021020 439783513 202387603 914616477 793689486 964735025 837564685 924502092 794128510 923611110 905922302 978683782 204559305 537892277 819311497 978637117 754587868 804259514 656785751 689727807 57495625 155821596 809495810 876735375 953450640 984239553 344687741 987066537 912852151 982113714 780923444 834785182 659716271 770138498 368854346 978400101 732078927 984516740 405195277 749813693 924933156 951579126 184956374 353356129 134076001 622847604 664097533 849262539 779962659 790683448 435052635 897008492 202238011 419170287 311217642 569759614 979262755 986364605 993028541 993045704 510710503 895960839 512073904 721008704 513522721 591474750 279701895 649366212 496211057 767226748 627845784 900606794 627009859 953342999 692391595 744537853 913927560 958991101 508702746 748504257 398832791 549019629 711781849 940429710 744940019 787565155 116452511 292137261 6844645 583766427 271392864 589562741 726315477 779975614 177332452 557102356 289614951 638819876 530370589 735682182 928733018 971763860 628676519 932377026 892841589 935234591 513123953 751965314 498730433 802679404 582812157 633870204 57086673 576033150 280838791 443253945 340440752 846128876 8689185 508719038 68987491 415707668 860916356 952869344 967593325 976285436 871782639 926148627 364786408 994113714 708747064 966257553 747413665 968635770 251800536 381899504 731699012 913549422 510517787 990450655 195834362 757807660 758872946 984938200 827309881 948349192 932825701 957678961 26534146 670779178 756648378 867716727 797177975 948336188 871168407 975990128 367092706 651042700 693551739 972804795 480896740 927935732 954171221 987191073 874342658 931179306 930271894 952304874 122036940 833182732 715433345 820247988 477283147 718116763 956713468 993084359 823867380 838409117 287857017 781621950 223570902 769342028 868885450 952901462 836357320 940800319 896010282 933650131 930564613 955579419 430519080 640389171 316305154 356789390 612696570 775935028 695172482 930438531 308633342 822741019 298793079 402001157 153707267 546822361 664829916 779089514 318068471 347777732 947934725 957401114 309172193 998367622 819384134 963802832 152341367 884939999 697925576 836788677 16045286 247715290 548702179 670608322 561776783 751145538 10698065 17606237 57768671 153547819 257930021 721983808 193069523 642285066 763138224 859229688 158564862 507740695 530214544 971133519 526609249 527392150 251807555 910182776 672203214 797452666 297337210 763628580 799579781 927611561 855470128 937588559 818277434 908400148 430200728 527277496 959283856 982484391 332593505 535335343 108342748 733676953 102716547 828384063 44743008 718487615 235676187 553463579 251492787 342753146 369375097 806500955 580215834 762122544 918626974 962723739 594395907 819105972 427295842 794617895 232011204 980585594 864728551 960998531 115470498 180453805 104715449 500594532 511382359 919665538 93618936 600280300 517307292 712313999 25563163 504948002 513334224 975241853 783121309 931771896 871404670 878522588 901002768 997425688 731517889 753577167 628212697 674042767 987948250 995109917 630372071 668403344 671384086 922948647 733835647 810178908 31811527 120659054 382274882 412112054 547262218 998463158 39052124 282894260 607165034 821217304 121268690 542111027 364118133 863441123 175106926 774905692 611040468 818099218 986364685 987622957 903484015 949727226 639888506 681459784 470188612 829853889 868433161 972874234 978782378 997084896 338442459 896657956 652262443 734847943 871396474 917440717 171742537 449107025 162967872 539099986 407689714 789387028 544867522 676103754 141680603 491218793 238920030 789687749 318319280 771850191 151939498 575425309 968989620 987959379 40768050 585395511 552196344 675507204 74220165 990569784 646721003 850778752 903230905 948663125 422310983 642401952 536424918 661882540 398702342 608058587 428853361 993367241 930933442 955581752 909381130 919171745 575037298 885920951 797297409 895997372 831683278 846384982 513677730 611848115 527224576 886606294 53442607 289888103 193232701 858874315 964836155 975204615 697883375 924051386 196642475 734529438 218229679 294976108 724468247 926730147 909995262 990543840 366823283 484536070 44388970 322970340 537811021 958504963 537011591 862323620 97788979 314856712 977087340 978733720 741498489 900647903 319106147 779432964 321759173 570654821 959465609 983288891 522526757 545455710 368117897 413086497 152986321 370073485 502790450 652442636 486538343 671251332 129522907 783341564 320377435 981102101 452786760 785313382 234697665 347654273 381466830 743999642 2070953 620472554 581035921 682292716 883205419 946907236 609199286 646805954 308994699 577452622 208476584 911044844 983805992 989341857 970941519 985003809 42509046 289649222 453228085 523983674 295457679 298512287 233251837 396186550 592460293 608037361 963225742 980032440 789674906 908083139 627476342 653858277 130053239 974662976 440584289 950446942 75914855 970511888 100980869 808556628 570046892 746595592 548993244 895307869 275713471 566215750 425295105 755689246 19014119 949341717 721594918 755210576 896622980 963653712 371635082 814172768 814787731 846919669 425754118 712306321 388510474 608318956 825974265 874886231 685529367 747957586 827569389 899969545 492678731 663409165 180728486 593735055 119778185 732498753 498614778 937899136 498363739 507667263 168028989 648598095 958564181 983997766 749081564 797316272 95434339 351551411 88644072 814573297 494047277 721197810 331734718 433833658 504749550 545568328 240936906 483717421 174463053 790770869 277750093 419561636 662938963 941352762 439055593 476744179 664690431 757083321 764581462 799892043 143660669 327313149 908833569 985190337 588175213 884561799 845904348 914675956 677938073 922669913 57440682 772263268 994145452 995115905 524638316 688588136 842843771 900262310 174299300 989676775 878913538 932910800 915405626 956192905 461586536 560916268 30609610 78571810 663673793 906979952 211094636 508765094 376759845 407330495 208751949 850449666 906648891 938158879 763123225 958961959 42866866 603704857 154492271 632264172 540966164 859286138 321312930 751982532 496742908 895105532 854297038 930795225 388130041 863054800 820743316 864818429 222442852 607127974 359475445 787143153 560091289 801105809 756319175 981011732 158510701 272717110 313678172 502062169 522367867 686380139 290572368 763036718 299678509 757913744 710311678 775061958 594690770 823902259 834882718 922844585 485478547 848112201 975817546 997825051 175972761 363345590 873689312 942217457 750277177 826927257 648714041 954489118 51602658 150430358 326321190 543348006 815769169 986148224 531526109 911311060 422543220 970919347 733861023 749880062 795834792 882381334 12436488 228767003 866177745 971885363 800298303 819999093 594662027 872591811 992126849 999468130 450296245 910996058 398867644 815271193 115616110 983504955 81869816 861481228 849032438 891435444 674690661 675023173 704716461 942467452 650208001 965127510 899415874 943520764 784241341 854955447 893311150 943353162 675478241 996136567 499698230 570040975 140502128 574300188 672791080 679586285 820531349 851715902 933943115 965719204 136407365 747098871 505067320 824836662 761454967 846662943 653679848 861132635 648715254 841281645 983470984 997645565 121716546 334247203 587042949 697399338 336173083 952341088 126588699 712942420 881189310 889230313 902963992 993355319 71875426 406053523 522307446 840659591 268151545 346681398 144573950 247566249 694539208 980757887 952924907 971404059 528799870 592780801 237279144 403170831 295898737 503569760 845153528 986014193 805599520 941507405 987361490 997049262 109476751 505364226 930380022 957630463 426482936 838107652 457406213 595550787 117660966 210967041 550035831 558910101 400593916 475803239 48326867 766965311 85568998 344293762 129131549 869743885 174128515 989761404 820645283 956338341 993107150 997424572 140913119 250148047 403452265 962529328 286899719 559923578 586008784 998592449 152056680 881571705 971840943 990449415 233446618 871045428 266175854 422967195 386465725 767063082 78730341 707209320 697207598 768167018 295320096 770606733 81987921 287603574 194319542 835910285 61561415 648260267 73449496 996497796 13240140 254446701 466066729 810100676 807182270 843402926 323343190 995628772 168052254 570752830 752189776 980606342 131433429 868476182 444971218 708873925 880663728 894351568 78432741 346439582 20049868 579134957 245362278 556477869 534149180 717224536 658279032 946265887 536916777 621247244 144341772 477927278 124362775 568234189 671869502 856393513 676299603 762749025 849345362 924988137 596968741 772267594 179726459 211496291 95813842 841528866 967182356 984660304 909217254 973269458 55890990 255853326 839689790 957607517 311470348 913407927 727844371 985192505 819841195 838078287 550681499 838321649 155345437 330419700 938575831 947475597 92693775 728428316 517566196 913604035 629209845 803044435 805746229 894070838 295268355 296588304 283625263 785238137 917383768 961795631 799999546 902329324 883584971 994627593 622434896 822022322 656401010 903351327 541211746 666508284 653623996 928038256 216364279 602097658 200366466 897191828 357094822 472133729 750278156 861874757 536659491 703053068 347333152 956080623 489080477 655356047 830778065 958064991 462510090 991288213 899228720 962307594 120865686 939932801 268819500 633776495 406289296 630279185 654076597 804947780 779208791 998587298 791702641 835402941 9881302 925479041 482675936 816976794 925615861 984980659 249567542 509163889 433404064 810455875 480340555 746923333 516183334 655026984 313465520 503452851 220099554 936343570 761518100 920223701 7667059 471208827 469158368 658811791 312803013 663934243 708701671 747391278 843997555 967878836 637756921 916517649 599219456 617370530 358758876 430613971 22218443 549665322 949500594 987744148 806230498 812414492 244305301 258224071 250793528 531939920 591142912 623836086 449053490 783268339 824246747 850964619 257852780 911393589 845664142 879274872 567056318 589428603 987066747 997375847 725392428 830724177 473283741 681504171 629199578 944842550 465496241 555209825 304472731 855025914 980143463 997759503 946596764 968479905 836950635 920881718 810614550 981637666 406979897 778076442 439489488 569634825 502237981 949868189 31219277 293949872 427850592 833363878 792999248 812286516 42524204 225714664 345463403 719557437 216440193 546176303 916210262 932498552 302519496 949157014 632437914 894077838 651996384 941617492 197245962 458918783 721906894 955099950 681142911 976523658 201983133 907759280 334093694 726951908 310333946 786585167 431791276 468026146 267004333 381692236 570247520 899420015 315233630 703752095 728190629 811881716 990223224 993131584 625718158 874534488 782896359 823757883 169630063 227753963 338360908 700234772 73875146 582599752 951968673 958775276 553485548 784833719 329409457 714369333 446918467 981507826 181558620 771371031 930193299 958319822 396071929 816121748 860284136 885763507 755082260 846046584 394656792 706843057 70341369 489949009 614865595 885953287 104644819 510994468 894921933 896947746 792154204 885984230 820461067 863042921 278037175 784756199 845139778 944238779 937887343 988619198 565532427 898040826 25884267 620524393 255844661 383763156 292793479 459674790 332105653 495304338 240242462 740291684 102453470 922285440 320477681 770594049 413675354 942147417 220325713 919628376 651704314 701007146 254053057 552592932 340205576 759325507 604435970 752092799 558713224 742019781 961031124 969022795 312407272 925376223 680555593 718150902 298263928 896481415 906054486 981013766 478069442 780130511 474105395 499009201 815987762 929972770 582321412 889390472 312705596 920598530 845694746 895441227 333859993 911654606 566974087 896857955 241739773 517575458 362315093 539848066 637241388 922009659 26012064 220768841 840722768 871819569 897089671 906203998 691906887 761128393 968478975 973159905 835357161 837015131 226374278 641281436 494940489 746969157 941755762 975228467 509450585 973538551 123693375 141731256 48071483 984431245 599045327 738864556 479052820 614669860 993403737 997489736 542009353 804204217 969454625 988272164 243984660 837206641 324466043 764459430 472526117 894432055 890559964 894704368 967192695 967986993 983587270 989701447 731525724 772186542 320736843 382581123 942778399 965683667 27201550 525214601 116336304 232945276 625507447 737345803 951550230 981137187 905542712 914037568 125211147 959882637 167046564 969547304 459380116 663007638 804024696 891032841 516394314 628407844 391886685 656595294 581394108 586477357 433160897 973752140 97475821 450663434 125472729 425972054 327398026 490638110 417022286 987925913 426921510 483971803 809543634 937820671 610198395 887923161 445188402 830218805 804338411 825896031 419412766 675099491 332123945 418065441 998030060 998651810 389119199 506406856 251930640 645090669 40617052 561265856 717945692 889527533 783127236 832880485 883978474 964047808 271476440 378116506 514625127 875585001 188430101 765534670 69182149 532258538 881015292 928505489 830804991 887342766 462459738 633576431 160290306 811908913 203081693 510517530 808819424 879460905 91001798 526404192 828278784 918871812 882902887 889212551 709524524 722915678 150661835 995786482 417456058 492558062 455364940 748754157 922413397 949719374 643768422 781606236 105429872 910947878 831731228 989405123 86219988 731536954 178178976 538861795 780736905 893434555 230134730 336527249 740095575 964280191 466714471 884165577 182776369 252416469 653925166 757578685 680660057 718598004 657347600 863961868 68084939 977732751 738501512 742736330 592198172 776802667 92705521 244637304 12729193 915364501 408477349 867125467 408159005 485217163 145341254 286487265 828585445 984503994 373867154 749512608 103054331 514067972 762866397 866505034 999733424 999760099 843179307 951094626 243778662 566802086 979702981 984279571 646451177 974732590 706129533 875541780 365877563 597318766 110554079 146580670 287875161 891597898 905462770 923856432 546696910 665840039 700334816 903405781 268887533 295946259 811233684 897156055 709598075 839603205 799773372 971103401 638216657 881557523 543803438 910811226 587995017 956220503 409851067 841410073 858589184 921246897 169266977 453884178 757751695 845941004 270617062 300578118 939915417 967694159 86789660 884718010 209642151 490930715 824936209 866485877 830034091 928874156 73161981 750440003 879895703 950142641 220454582 385683374 230015537 473408779 745622191 988304221 603589089 738326370 383525203 710848984 936099250 989663130 483847837 491190928 714517418 993758065 954642718 979432599 487152741 632360763 502023257 871143521 317589773 695532816 650314693 957563348 706881910 766803082 651882077 815722549 331823870 385269781 293301706 364184930 499777951 602097423 688710413 746091852 592240665 645540629 912606693 977341334 884725286 972307076 799690552 920935850 118416000 425119702 358267049 978659636 415609476 579130590 236726392 789134333 156436280 293050725 701912721 991656760 847689169 998009883 123734390 813620539 653392729 714388169 487518107 948697708 943649766 995656648 643177841 748717214 108896394 183811058 925023692 982291192 81659828 571401470 128191587 313604412 242065459 999034346 98853750 360172976 37063821 386260005 343109582 396404077 283345349 890871606 463649049 760389987 859287515 883661571 689939793 923543237 784075001 978144162 828996840 977251051 751182698 867574601 523125245 964507512 976446392 982380537 838724759 902229583 968538161 997760076 525659416 779880131 800958405 876595014 728655748 982722104 813554945 896475129 892472416 915329420 65586276 347460687 75094188 295335311 543703336 705353113 957746139 973357789 337446815 590776770 234400016 588733062 195113931 628365069 223561665 853316072 414818471 912075499 320566182 945813384 220440201 292989777 187340550 577505603 808547260 995219873 471874362 664195459 31897327 947831157 609802257 918934000 379177258 954833093 274184716 628267765 423194619 548094906 409289002 609488818 565376804 883891274 686223928 885215099 734602099 856444218 349546230 990739030 829833811 964963320 296290784 785850266 500859343 532588007 211551809 345103468 987161109 992410389 804599111 921052978 834324169 997261692 373725336 858308863 669924660 884758075 230470240 507613848 766762117 919749624 193097026 547349975 930245981 997350535 51656359 510397870 353046621 481140980 408684874 474149724 172289293 449249408 114028720 926264203 72022035 725503767 660193075 836387381 691687467 781814113 587428045 818021202 550870170 925943537 63028772 412067614 412556625 896932072 193224621 291672157 927788037 949625016 759573478 980689860 164564601 532454904 758560327 815751682 649067639 663418808 68426743 946767312 778659461 960612635 582468210 803803790 671506614 674348990 326719833 483526362 802372335 849536472 111442054 504672626 430977190 433178093 986564013 988506481 769254511 812280162 91182617 696822973 239866484 547002998 931432241 973270782 846837901 918710952 102030724 496263311 511016047 832763059 544263762 707861415 768151489 880804868 195288640 698523937 489863061 528017709 190076487 384370885 311757487 837096357 555587127 871400926 87367340 670672665 529345775 535036379 390550842 495160187 835370006 875547176 97573506 735373304 696907318 755640103 918608919 935074944 746159493 830915868 77072229 996330104 763983667 957439420 735441096 890428775 427249311 683719999 344754044 804640384 896060703 978917569 932999727 991077315 426839299 879058235 456892239 609906062 663413042 770213950 376479220 465967464 513588332 738181306 120570605 668990438 256603850 914924920 960700475 965486798 523901799 836500649 781509061 988114384 770885070 969462207 232981314 847567557 572247410 953430098 959205416 982109084 878900408 927653333 612069032 954587435 676935372 991560943 296711354 776537336 324917016 732469825 10496913 430732399 231897825 953536190 960207708 981752290 118735976 587342498 80602774 883469743 25506855 792634985 205301306 591116300 349574096 424299554 133526258 816058092 953784162 980050924 654090005 686176067 769204431 953790590 792236167 921889027 179363553 646087374 539277784 597314421 743382003 966575594 865081185 878761166 719684514 804596917 573507010 802706780 325774732 944145775 581833291 587741081 309972795 707101431 141095815 437797229 19272077 264926559 273436213 743655342 903108008 977281141 505404903 713452014 145188039 146421402 752941942 982824939 799608560 931957728 569326647 974103716 433608112 743718168 854583051 950076505 689802465 715503875 201701619 903966231 913909395 924912001 167040876 626443443 27303179 623630234 852822055 982428223 857406081 980015874 330036670 692104045 611131253 766930884 690566522 701850178 4066109 616460346 596945974 708312516 867768135 948121177 69021837 242384487 433152556 935458672 107728647 262379530 923170985 928591121 352744024 785128183 647019947 938999133 539285109 780766266 305992362 744873230 977400689 992267403 721947197 968619619 106582296 124529648 842874429 930635544 584273229 846665527 150201029 725145527 3634177 605954657 681811369 917100759 718532206 762498113 837345016 899580696 654472268 731872834 53677641 344531582 702746845 872985270 723879105 743260431 438774534 882183737 868474760 997792861 981509303 991630241 924609951 976920781 725866253 913637519 798280242 853420972 69900260 227842794 695315127 980548566 281733640 584193430 682499424 795988909 847202597 995688076 121864486 266581563 778087538 919294288 639253371 710696027 589117132 953471288 554152225 823135231 964496945 975696124 412202502 551074019 996468814 998917872 330849975 738842118 449953235 831653589 544543783 655568981 650797010 675754737 447981961 950640043 622537723 775556453 421844600 656969300 222833681 325899549 54631138 544452296 527374947 970108685 642472610 978024666 537502892 571321361 958491928 972648778 197252074 528456496 62627359 973387655 316592518 905609788 336793093 494142719 9809816 756799874 329234837 354547287 839620228 923722604 880946057 904425418 945626490 953688661 208919097 633767976 576861150 666178362 547881025 940662354 775492404 889390128 561760385 570333221 713492821 794486685 936285391 954295014 363881338 657826273 382298970 437988970 551049173 752364033 551184002 849784339 272008063 506577057 158650718 549528027 452281614 932031100 520435196 617941321 240100832 706591495 80804985 361316540 209091804 236424144 509968029 557608742 420739805 730636610 183358033 198297597 587387971 814152774 659304228 909618931 333140186 492502840 32960261 270155886 282214195 978373736 736913214 831516279 665121348 673303881 539932656 961135097 691546229 887781809 188276064 818597176 588900852 994306008 169848177 896503422 763322575 961124837 167962572 757203027 553419088 965842165 690733263 982517740 920313679 974294204 529874056 891421426 901504040 934165542 135833335 885104932 604775279 664067718 795280873 945658135 400902083 969238629 832196077 946305719 946967369 991032380 219727644 646170505 995063972 997775051 257357068 802694446 826318315 907099343 737831188 827331129 595627836 904538978 65488700 659307117 256445626 559194853 710383241 820085345 335555441 612114544 243179504 870376846 121649165 178237554 690786494 802224894 244528744 461617518 331096303 705380981 455679132 879659784 588058634 691487985 755943535 963648920 702621290 764229221 671230410 750614445 686931128 886830431 152621551 962338748 282137975 957771977 760567300 949042373 408205883 554647426 653162065 854255861 210023137 346951866 132554372 549334318 351389278 620884419 705240215 976634243 204821240 362143839 324119263 345481434 821103112 848961517 339165748 707275463 947647817 992849652 189498836 623793026 150217643 501716934 708929569 870738891 841776682 857723350 255146644 763061250 285580865 449346353 545147356 900951171 506914823 723273274 569777759 836675352 824733563 937845673 924554595 973292437 968665545 980084459 736828014 790688119 157656710 678321575 681977583 732244194 626076468 936874694 279157732 309128191 986381116 996059943 888547391 990529900 880619046 920450045 374585871 797113204 731731029 805250653 229567795 570154241 762686853 906762713 79574280 646369193 27534803 235273928 355201813 487232178 231538704 986125317 29763772 704699289 260105284 846730675 677383272 870976509 265075420 609877881 886043301 932499844 802781923 840734069 882590965 928049961 189621003 639228688 92591558 403470643 150894602 794723039 391214074 410851205 398834890 689262009 905695766 945621453 330844603 788019350 751421055 885772584 979638665 988687925 795051976 832909405 502743969 713161251 895214669 918393488 848580616 984928835 144504396 265046715 471041876 552373327 621764702 662490725 56461441 592886933 938622459 989306722 920334562 996249591 760972961 828443835 913894154 968740974 627102790 999483346 328950492 651871389 616952243 634373069 882503401 969163438 526132317 837513136 140083438 775368144 793224500 875012186 645289212 993801816 661167624 705642076 414783930 745503112 455876629 811570745 200776942 240131483 80470462 476633012 576082237 984639950 490137460 716911041 154425991 216790375 152414803 160203888 68274525 436946485 489661358 614996791 452066343 596651746 523776413 565108817 630231014 969132444 543646158 582844586 185484610 575906491 411937547 843065674 848307164 913010189 337851378 552536915 197928700 316918313 134976068 584926384 17924939 616544025 783427092 843360257 215829051 342470595 683959576 777966468 776341880 888131115 242821305 288222785 960000761 964199803 10446210 427758458 900677618 920897847 964642165 984571320 215586009 700047873 423453623 772106682 731739872 790163848 791556887 924083242 571463712 784961147 759742315 781650497 316931047 428529614 836004235 850437939 293375053 641361881 56480134 745944071 736321607 853771162 678469255 894537887 746148263 972843980 631182253 848901049 282432591 544541427 710447022 852060082 559072538 764831674 818933215 836509894 242999943 304199684 837064907 861685609 795217283 964414286 720063609 822472681 581568325 903204380 677109543 784614895 989684575 999706220 613884961 863165253 676840152 686385258 960323732 966555191 87982129 623977199 840776428 872856165 10596447 522413275 487532276 673268551 335724346 340718857 193665132 350365753 930459547 947891327 275730580 610067426 853517565 861446111 1548017 261277933 149797001 579026421 113526461 337716333 136206413 873015218 161723059 738749731 594719930 684284401 308603163 539810562 611427072 743834045 7279363 564348069 622819390 873122972 946972960 996626084 59631021 766536589 920100478 976229076 621057535 885059125 469854502 720067086 719953630 758535746 893597968 893691128 515220154 838278838 761456799 809255410 781474981 786312767 270502680 353852535 921683083 987871343 324341644 937183531 560461015 902224222 866432738 985231229 843347314 899435226 855941451 909902832 244192999 315189345 764694691 792108721 613472011 929028156 516493221 691458205 303945886 677490996 975322137 984113225 174787974 983123336 206204961 694715641 960073414 998361145 958445762 997524736 902777444 919467482 874995861 915040374 668032947 856308986 202944711 348092447 594159143 688944465 597776621 803425600 244138447 442091347 99153572 532937294 774360869 973200421 957173944 974571774 830440051 949679163 207570158 965138958 696461898 881014025 201699173 896381521 778439500 961652606 747939352 909698755 348793040 421506422 594170227 849791326 553322200 611070448 261882496 942982427 578814709 983032245 127701063 797557447 207189988 664482640 254986675 494030783 252674272 825974259 318611112 745255442 834250526 983466424 758324571 962376922 302006968 935057068 646225481 875425974 812516534 931986568 87497535 397135578 835205130 938353739 17139097 790941851 323821160 466509965 740123983 973082474 43196992 461564809 180682690 920378898 397178490 822129735 300192230 893809724 288369244 326030804 240968282 378561112 810899456 853247391 236526447 310225999 222512586 541551617 609579478 666900008 850968295 965409896 251619153 854151718 837570118 970204632 413649942 764295300 923700447 964109994 405130531 836718493 965533149 985067261 849107985 891635106 407930803 609873136 931899600 960108015 423661223 834401184 838398659 919163724 536450980 712117263 771871989 881063278 966233261 980895905 424397041 687531355 947422958 975601755 653373937 888746603 435042177 500373747 894355573 897559415 831764791 991029050 113030829 589471067 231658707 515897564 449033615 733101053 310264475 314735047 670433439 846652080 881378820 977557489 13533231 79439238 276826701 452359122 120621845 800491878 7873451 244347804 595931173 647862531 759340128 927438911 272116737 700050842 479024379 494736094 289544878 953120621 606539974 724273875 977565471 997104851 151851857 255683671 580962014 898428254 306500925 768658264 388125410 508362228 394702119 722466622 756322655 851708961 657832126 902780849 62255839 706075954 988555705 995197833 824089713 925019618 759371056 807637115 238941866 260154227 100359980 284790760 960545103 962554030 508379257 943788979 478839327 935064712 375983758 633898088 464411891 510714917 382444772 924294216 323074355 466116107 484726882 902959299 439233730 759846963 468493722 951950847 821703378 844622179 628409466 862655864 590333268 747196384 368284898 962040152 46080581 696596107 958051686 967267841 239313710 924304994 298567206 467156110 835763092 965832743 698412794 976648365 148536338 695214879 253649849 315639859 512290181 525965266 988868935 991539715 904968607 938882709 235076776 367552227 416612372 555034463 980370812 998882968 258685491 470815598 904439504 955517498 127523180 623776396 799246894 808292909 718740128 764826761 659666652 752644303 137309317 406149038 783753909 914599821 160387510 583518263 784803641 980150280 767574537 923314659 24871967 514253551 925891029 927714908 584516246 836262154 704598137 885031234 756654167 941841146 916317250 964809400 978829172 991047503 302285754 570562194 707551998 985554832 995548655 995667853 717238409 991569550 643316973 664885759 137946231 908227384 257205519 799590887 396008014 729086680 350581484 685762066 992389847 998707777 392404750 649031936 367232689 950366606 481610830 823253535 289739915 533498936 937161069 960800325 582157570 958968705 798512677 837810825 854566232 887768670 67520293 564911830 256816826 769731257 887503813 891810727 515355936 970215060 810858255 855935629 387471625 931328384 85262715 989018644 771051445 859468955 977925118 994851397 393351122 556723450 484030427 800084638 848591394 977916363 957299601 974947649 894904025 953138768 627637026 664190042 155433299 961505513 46201851 861334578 692219133 751938299 287578548 506526211 447915385 658674653 455606971 684821346 18017784 78793723 281248802 736881452 983646647 990760700 78656357 513664219 976636339 989643144 814318380 840410088 875721930 879970786 431756549 798268494 644069727 810112071 127173299 191918490 185104538 187388780 415109239 527569458 796974116 843625730 200621772 660894598 159001025 750956272 755257782 810967897 119330192 727792779 338054598 391260327 789711811 849762463 82225168 189545365 741120730 991367949 273568074 911844334 648527612 854634153 589151400 936087970 973766517 982650756 858702720 952142924 318601960 468313901 246293747 744062209 190072785 619194516 702356094 786523606 163972217 420075551 687559665 700690207 414528879 848624569 985031210 999764925 842987843 924422133 186688406 680268733 951471798 987354665 463415847 503704236 50472888 980488689 785765329 897838192 343614870 957808669 210094670 998494439 69406533 89997226 859416355 866383983 470484948 895166581 877617933 962218367 557982559 602342926 913667318 986056643 647443827 963972931 542789670 547020097 472112390 809177753 60797048 719742024 185127566 390072199 206203695 464876202 954528212 960122196 770709143 813126713 200867260 634746393 253584043 778407059 21739204 529936051 487875794 664104266 171724797 391254114 841394952 906909164 989492144 999567178 526424509 996415454 780573516 812403326 842596101 936247078 822460898 958236793 865062236 931244340 533467277 826979908 273646070 882477386 822332668 855676263 214672469 763547517 162026649 731149002 803204865 957280976 84846694 924101826 82267962 801179041 999083330 999581082 907123012 978019009 735795950 989565685 926994087 997636413 481203845 847110896 401173975 485429421 951655100 977524907 920550626 966145737 260698387 761093733 275956082 492341179 601423785 670736956 536006716 873284360 814468901 846390709 768119657 959990882 613616890 845897141 734398231 761169585 883155201 889076598 735624581 956247600 343707463 858300969 223269342 756686468 305674946 587304154 777708485 937483761 421725115 948685368 564538214 907141616 286515228 797791126 588912879 982367932 336058240 383822751 683976873 752045078 465563245 676150812 611984418 743990510 821689504 977754786 536316134 905119217 602849156 961546129 170072824 310531965 435585671 974633351 200289117 375917975 164178028 220255325 872431604 884328977 651303517 847815631 279943088 611541546 44369478 651102858 973848150 984211602 755535697 806721556 943830691 993635912 290713336 581029354 94677407 257090250 313282307 559949617 955755754 964254627 268917360 525418618 105108234 492711296 828233578 924165229 485448626 946991666 281117430 706047282 480275907 978424260 236425032 951882118 571698899 592593297 579411370 973863689 693642388 776124935 73106701 608315047 172080354 602190997 443555714 779252176 166130738 622002571 827047535 841848629 504438184 726041085 329584919 763295425 562845210 885922571 865491039 950122257 208981254 536434468 429387470 825867691 572841538 926428525 534392193 576666238 925054698 927815218 66154580 191524584 166245623 735040055 875025873 903610621 946961865 966185656 115212908 262494347 114522579 908582849 368853755 989544530 651746334 848263150 850795018 871244938 259689271 353293689 283284895 541629909 23085440 976631604 853626734 911505561 313047767 489620759 983157655 995907554 164107298 729106853 973056157 988393455 263973948 641236609 190211545 528188259 576740992 818872830 483679775 833424318 557066486 803116491 432466770 743657709 198832965 794421177 880830269 973810762 378366682 502951473 701652351 860743891 652113155 908251135 744242882 757315265 53808228 294376542 504265347 807600177 394170100 760906021 729548181 968019019 72336769 728477675 298294834 402386147 26946551 146700104 269137812 779521114 947121652 955107013 964869525 994723480 324810487 952341607 691301884 909573000 67366691 185520572 130647015 666155146 909584887 986040092 738295461 828403534 163621794 748777655 371277699 788006078 182081667 585081781 606022057 888278599 336980913 953578568 78101225 417462369 254140925 919084522 668038785 872155279 939282170 949919193 317671055 548970731 815296701 894902609 917379348 943045584 306314889 838627441 868308255 924321058 370631744 834660141 229909456 889157317 599976716 859241702 503365297 528651754 358359604 839656276 218563144 565990014 945757517 991192031 735335762 737084243 683205487 865643238 663616319 846727629 724247226 880128340 541470840 700541809 619230749 660550085 402613296 703758453 563737759 801061326 605916463 792174901 28426748 932780296 59536858 932970771 289575860 688011982 497932376 971892451 644189615 769857926 495113432 643293041 602378033 925033538 853550133 944775682 545377686 868946840 531762223 886618969 523439784 579486381 43710940 663952795 485600302 887848821 733418585 847872225 969038920 981863950 732880981 736081861 251368868 492897720 459839091 958184980 867187688 957857666 886644091 921540009 72709632 996247405 355294887 779884552 391731189 589771932 799074208 814970220 154083159 382470071 433060680 448420365 94323018 429539804 23167423 527766352 587302713 927765375 967551637 990635558 786095600 794313305 863029735 934286896 265483309 806763403 730075530 929591591 889969472 928919488 803450782 875607555 964889270 998611545 665567680 992100442 856503009 901074022 795701590 810388681 968291476 973254397 273207214 722811387 892350798 922809404 189600479 518935322 677982602 896483820 911882476 957052119 65476311 225384924 647248291 825202229 114356470 657760995 555395427 758783898 870748294 934900175 64697247 543487964 144862404 267046106 622407324 622819370 190622712 359821733 84682549 103699316 389126960 604538930 711960177 978567173 529183219 533474205 54285123 870456919 379323245 615767205 599757767 779774597 63049053 78847461 618951152 918699972 200115522 409407852 964581575 980098700 935860530 982171557 480095821 859489577 16201058 796248177 212778249 964505348 829870493 926668433 403681898 667316219 111716292 656747714 759521147 893513694 330146697 939203356 821164339 917601000 353634640 762520842 99553917 867556010 599359379 694692483 640502666 713103955 107158579 423065626 904064127 919298443 137784490 178734560 238190892 670951838 340166418 345157267 520816530 888653694 565576468 923728029 632507420 929212290 215052450 675121087 524292559 983614492 652407733 917877866 538047134 851337670 252911650 402207615 656005071 745888395 118999877 414241008 682555965 963162500 103652434 145704950 368237411 937545172 207613936 827185302 649692337 666523181 123247721 752455805 950902080 992403212 625316890 871513837 153819231 341053350 715130361 928735854 956858550 992411280 136304979 588653163 848993122 872521416 247777730 917750207 607962646 696727508 193112857 712510004 601085305 870329559 745318408 936886715 627034864 901124888 177632360 732729518 450602555 787652100 581606996 591222822 730229208 815280572 381654962 726847996 190795696 874824122 738302612 801770526 933845531 934580930 152964087 613652077 192109002 479199929 723916927 900360915 725404817 766280647 113729803 771144446 565531687 976288749 716954413 929648832 71971279 93856022 182970119 372260319 445609946 608441150 276539604 701672666 585289029 978848053 655648254 797380477 947519683 984476479 532080865 737136127 291878243 611463125 962664065 981331496 830169290 884468785 714329268 779038360 775704117 826873466 917466813 969878964 948676753 963900217 68454830 801365968 851877615 890297481 485864557 845407755 241887135 600263443 450540426 477947155 776096827 843827706 142461340 472621480 801726853 873414273 609355873 725626963 511667398 982880340 151248769 184325145 888932857 931090540 542530574 697924148 824648668 912018821 699187954 779164690 157562640 912558288 837321144 959359052 621296152 751859129 929040778 937967948 540381724 629065973 509187576 516057427 702602545 740393524 358698548 980466663 512406426 566742834 190694924 944601885 288282395 315245689 362612672 494290444 540189656 724379215 372022400 808309269 703254179 990274709 635774276 916092753 935125530 954996900 828605765 910797593 197813944 824687090 973412462 977727737 432336163 975781000 172978800 321847758 193270365 669830031 305617991 785981112 936987045 956812482 950262480 958329305 205028977 679685657 966438189 994412465 702665346 904504633 616559238 891615333 864898956 982050482 981315128 994814753 775257714 931124055 977111904 998987400 225831390 907645442 361506120 612337542 745719941 880385526 318034416 681273200 434057135 939918018 157314891 464078015 897025356 912774914 877416673 904405379 676611448 814714130 398627866 666240099 532975406 559575109 362523984 433597431 839316303 952755215 623663972 653832945 894381028 906898178 43080747 467656977 499041021 900207985 834457558 932757598 221749475 773201202 343266162 404763247 496621373 632640991 779536246 811227539 842276860 968252233 459034866 515805242 306517517 685504064 486900825 493031023 803394111 813838261 550590646 663043502 351535494 680614501 157013766 918584051 416731392 921409288 546266792 998175244 182626613 192798216 947366727 949298883 426955406 678345338 476447231 767797235 575265602 623204776 462293467 566821504 186535932 681093244 637333568 881246319 899408051 978304457 799838829 851675205 179091403 831899993 373170057 640209436 933547792 978821521 882932116 938219672 816882012 911375203 130992773 423992153 213920304 816118603 239595387 410455842 494365853 512856101 804805219 928910702 592563395 844905453 128222453 996488534 966841549 974027546 13778865 36707728 495546150 937652653 90385528 474206483 104643229 634301931 678700626 917195662 438113438 985650837 415461015 884889959 973581844 995835065 279858796 388680285 517259281 912624456 745207335 913651948 576183441 850684758 667719209 999386516 802490449 850588811 380962012 582255811 798804788 801742325 850795309 994492061 247569089 593906613 64048025 593781328 379881935 532179663 713393959 769537149 469068148 662696428 823974657 957707105 874783449 880571614 951441904 974892732 849678609 982191061 612217279 762305541 33777955 910110785 661142134 844579969 554363381 598881875 527679817 903242153 875188441 905292999 585899951 984258026 138089884 897547487 175818434 869838580 380008216 610139559 301136703 600487527 197224696 859128518 887338801 944147481 242082901 743517082 816164295 842231250 780204426 875420002 33270523 746617509 620819038 635493249 351939258 894919917 492025890 575267485 671531521 919948425 764663927 936130388 759683150 857962538 372742582 430447525 935970898 959477028 807863760 926757326 335984208 940130070 949954053 971918371 702845410 789776955 884182123 960824586 510875823 854483921 33092525 520866459 418390029 483234712 123618130 977936024 679975391 926255155 551251232 654440316 430695966 916845211 17498386 127332581 895460011 980838726 460869016 538130845 500076336 803119690 763558506 957633131 634652690 835218734 444206471 714090704 11219195 251253932 163856148 991831693 531907307 958632638 804533618 843045116 243652456 557028675 566996994 601597031 991033706 994691935 974487591 984706201 673590229 966545541 70734360 859235277 589552186 819950885 350621290 865615869 955877389 963438916 513732335 977819274 448634353 538178434 279465117 282199949 443787764 478727858 596980671 665897548 385010135 970328312 840383413 997793572 731412350 766309777 227357687 360858262 360070153 723309083 980201425 985706471 613039822 696077034 773193097 982348879 61088359 984132752 735172356 905468584 945691048 969475649 383869301 823998875 890509011 965217834 626940673 647312445 57388797 807433612 742304865 994364318 922848692 932330815 944967865 952720137 236676406 248653036 656765821 659949314 484196156 631448252 786845779 865854965 117734701 540255210 718510922 996512135 392582796 719186295 793035626 814188858 232219822 473236076 114907035 711673422 205527961 299058652 260410313 852562189 882315927 884329310 732537365 938302316 933054868 949377909 47177934 304380010 725519664 822690280 458761145 530405784 405802687 449510933 246469186 441303283 848379042 984876102 409490764 590196282 434999523 766864128 134586528 470814994 742027648 901323277 520069709 736452576 63334214 747546860 365980681 524361685 934799152 971566268 528741684 891411732 323407094 819820780 866871958 950063892 783090030 817333995 989997092 990543557 453267004 892532394 957873501 967468052 645693503 733014789 355306042 886378390 2090186 440660441 702997599 862512777 265430242 507980909 848285190 897046237 544712509 794468432 517195774 608961716 428141755 886210997 575115158 587861547 490008331 591499898 690549944 991539797 402360347 541207423 7084179 217043731 359997822 588864131 943078532 957458192 224069031 814711343 975979563 991589723 930560038 956702569 325160507 722850974 658419380 677079497 290754870 532848245 277174056 969907372 815787121 956126415 143014463 271927071 932569422 959618263 381229177 598227543 697467955 743623223 631740323 889470336 510573534 827978290 141929878 788863645 384167932 468777469 256912223 378953577 806544262 988573302 95295022 355206792 527714051 528302180 516136636 970394038 39014235 819369446 299334315 810980688 597410413 717680067 602153787 915278833 94628827 353781111 157714565 852099102 392190545 583187051 164635123 173695784 458635502 548890316 333158313 846136591 470213498 998470877 192721262 443839382 321917112 708527520 586680266 719994824 52387075 924167827 408850136 879520277 945877475 979869253 132283206 893181881 205641374 722592652 898751340 933261471 465632349 964389230 534888568 888381681 619414646 878057804 895023996 983360221 678491511 764186526 848489172 954597108 945186706 949734806 511877283 512922268 239015563 615865960 256335959 824221362 520782906 953867859 797538997 900732708 548057628 763897072 175116552 350710693 389434656 573190366 604602911 716814755 324591413 330629935 561881128 981881815 845947229 919445140 511006083 835362959 87602410 305809937 499900190 824772569 875056637 913257634 425502818 519324595 978870762 998880436 189659059 514909373 717284700 863067126 889649796 974683504 743516101 926968785 762566768 884402379 205875803 273959262 459040220 590297581 465296710 934310700 716581118 778599370 898755162 992404874 634132485 837181769 5627014 214423524 564113511 719775813 492878267 670825856 565169698 733253627 823506236 960032508 568073616 777806614 981841759 994703340 108285086 779128685 631466024 686932865 865495119 912679214 869310481 975710104 561746111 622605128 668638518 949059253 576851793 669865631 215646682 455308644 110053606 990519918 437198378 656193500 953099184 972143656 169802560 952350581 124096066 529387478 469236674 830874628 756513003 820666613 935120679 964791368 333636892 451566961 365450057 631155635 695101205 757646544 481210593 767619234 434690148 565220385 32837724 489343822 800068403 829730990 630584570 831250859 685756430 808555050 744272064 817228389 550781617 827756734 282526429 599728411 998678261 999119917 936576540 941568674 52198998 274802849 362010995 915535958 78353707 624054453 516350194 874710756 74171244 943162160 603493146 905888342 239544277 669431392 916196679 936819262 662836460 899528407 698125884 778464575 895638344 994056970 438161746 766130027 61330482 348293286 195677519 586946959 180834510 511587481 927882407 931633928 197069105 912688156 329623572 357339230 67276036 968683328 541668914 899172927 885029945 935416526 414489693 782232447 659785717 752288722 273015155 373867317 366131224 531475955 931310024 965874749 804029558 915040363 219123155 593604692 721622930 786990194 779914038 811354364 895504214 998496288 710342036 727391837 664897181 678650379 736236057 955643515 150175930 761037513 914593169 999065209 913589876 951987133 361873989 769299801 907534513 980370661 799445441 977849070 741588336 746171047 483076409 880602306 101137128 342380129 558506749 764357806 625903149 970543813 163491419 171311991 10508099 442116135 15869392 886274505 931512628 977092848 54540687 994376804 81525621 783098020 95092890 665278670 19919670 484225533 559859437 906282289 427739002 757362631 359298268 565856132 4584011 220034561 248810266 960393533 370639010 746878330 241782479 754481290 769326484 846882358 429465310 799939278 978234361 979355880 665313762 759700565 169496032 346314458 66001237 972186578 719203530 786091299 253561503 995460174 477936104 902129428 330642591 836705776 905367903 955465308 399136042 554259218 29593132 793270556 756067169 945997677 324037751 374571741 502725447 585238690 91515016 134826793 296262483 668461298 340777582 449227101 53580951 356322139 809696482 902347691 513192202 545611262 202679358 338781463 451220347 915317028 507563645 541676115 560842876 974135117 328226206 428543921 179374990 420451904 513622494 576086823 290155669 498331260 410390179 878208682 403491974 490710513 620108917 727388100 594883150 939522158 324016366 336935017 636563186 907960804 504399982 596142955 291661600 911465255 780350416 850625898 503627637 977725459 599110313 977175078 946138057 946726954 37747430 456610790 657523229 720511579 16260337 816985874 395516290 893114164 153851556 460147345 745315010 949807949 884751222 939465403 866614124 902522331 193340296 772442845 142993672 387603559 768714031 870597702 254612386 380345435 232761540 974674650 7084917 102453821 368098402 386316900 807938015 910538913 169378550 819491224 729136846 980748104 301082671 817464070 845872969 926547963 285652098 602959671 793957151 835124768 650880891 771123802 817615750 934673508 332844245 441252606 104457162 546397988 480385882 747590396 32668949 594985095 290425946 907737521 599704344 642402680 257952310 612636954 962099389 966430121 645092229 802431412 862017728 940696710 483818122 906206936 452261091 854186318 501679881 514518536 339138106 948080518 817300341 900282156 275168754 620822737 203757975 263117638 199107641 393083517 919409081 962713364 459033477 610285022 197673981 314982007 82578261 602666142 436908089 587258901 417682483 944984776 942180670 983684522 528623870 844724830 748424450 807209873 216624578 514900381 664214689 950924475 740978147 800758544 28435214 572378056 455886959 898756181 121546860 277777614 361860041 505146858 37390260 147735741 790356047 923988750 172776659 587154054 114683946 467631576 107453398 158774782 105958636 971970071 62928344 387849312 648379090 708004399 132428792 871542341 389313966 810095702 530494028 547504652 389743359 620421419 866431821 954271783 43643414 712720247 191871523 201999410 551545523 886043577 709529970 793953366 897944877 960075160 350572103 591918050 207577148 755734510 525867006 835499428 991202862 992836340 833951790 978347057 629859318 648300290 487685809 559304147 754855199 896476621 377188073 394896786 335211716 812606897 464805061 719132629 633765835 831342973 57392333 692876467 934282213 945235132 985991136 987601035 733445991 932741035 215656118 949152711 280506293 657470186 922864257 969472499 40911122 191333611 591212337 677017743 583732112 940042426 536298206 763473039 231832604 787999234 766219444 940555777 761731475 890156781 731315342 948688255 66998897 112955464 282128177 816519218 609243627 672762160 218258127 510184251 1071088 331171868 189034499 200570206 667615168 923590313 503822220 687880207 326596799 342525619 158433385 811353209 74933864 798457830 755670472 784072364 558065882 854347002 385889278 760975362 642105852 948667848 13564793 710893858 671771702 688893652 657964127 923287886 651089649 769410867 127420283 764313560 357227146 497008864 829275396 889276246 907431113 972989866 745459171 782112826 976361975 987170186 508395581 675556467 710645044 831811552 324799333 924410884 910722657 916031547 675190729 774465575 392911195 627858072 976658590 982225624 715617127 773179113 10551395 567265438 909163828 972954186 645930655 823708051 553157753 683557811 852113401 941056464 86505959 738614782 338510103 485888735 883052362 942722668 285487153 925706370 69655270 897783624 135351891 805991637 967786317 986177425 128758404 916946988 794186246 920974714 901319190 926266015 418476240 432386045 203777648 503731110 840940697 980233393 871483004 966024174 128142268 478281598 195992374 808269810 46776887 837448773 398553125 454161562 824274460 906381644 752156445 788557731 325193227 502555231 862475272 989012145 640030903 918520600 486974028 543586040 469113225 822836560 146008641 704834976 175426389 750546852 446834305 646555656 19242593 921218838 901506135 964476940 87831919 700498883 22352378 54545930 203283892 718153016 580487266 842155718 874498890 881582969 229036260 584098141 847883038 982052803 920956570 968466514 804127843 921841598 436124400 474267417 725196941 916781451 786672650 975743968 404624881 863743435 382928875 518503389 440016538 861656061 417118054 508856218 734637805 814555207 92698905 888683957 708790409 891729534 472037022 735018797 545023804 801734920 592359106 910005549 221200499 597815830 450594307 924101515 886810883 989728000 911743006 996322125 518885328 832838667 872149734 961877866 52219398 521017204 732178959 993362339 405128385 879531547 277192424 696783637 25947121 621940100 94149159 236999372 473173763 660277772 930122965 964858339 117956122 442164937 64360820 933730003 998896911 999120066 10533547 202029842 1028783 934278276 159441681 541385752 682247045 833782022 992515186 996973105 794487814 879884368 29962329 533460757 558710065 580351456 583330131 862550318 764338391 908263502 47933736 435177468 276444379 463552048 986819771 994739876 416101761 878834132 336737544 882600939 842491651 879330766 879443857 957506095 246905205 521995701 161184623 844258504 135523104 218719783 587578282 614065821 427393830 850677593 979435695 985565139 823421566 912070923 346877164 547091011 77522740 511701400 196328018 647592790 1008267 737183928 706309851 915551590 505691525 683111612 152593151 662604626 104192211 782749679 233557182 770867874 282260571 884888276 205321657 578694373 962917982 989816670 837684095 909697237 620887193 765516384 753443315 787740370 193939658 236566300 256637075 847269185 245325426 851265477 221660889 890538221 170636640 714960423 425520583 752105871 335292687 924784113 600429811 920878916 655982536 949843179 736201785 783732269 708358456 739085921 814800967 930174443 311060010 327288448 656720296 799209803 534220308 987143085 113351269 697932505 316846093 659392681 404367164 937430966 734242571 837401825 684500292 890682579 679803054 880288273 339661895 756101650 564815372 586867572 166929362 689390193 985365832 998313569 833814747 877815426 198543140 977359012 368395556 794526902 254349775 919538757 89837228 996171588 693682430 905984908 571167150 826928009 846478946 862830971 709656080 844360899 925408232 993121591 633447871 653952184 731929882 752034609 394484730 803360225 446653540 984091492 263965466 427853622 573614084 969250508 918550464 925438947 331833579 783353415 996214844 998156291 412436938 609909170 483903215 930489554 218509438 311043555 561825480 659215674 181326408 395059993 35289116 944878460 570974656 587352935 351852222 357387450 64524906 99078447 73322658 663722404 671002128 950861671 638927567 758123190 112433012 393051828 76780481 295503092 797254248 817202242 109441705 772813318 310136148 677604014 544171535 731463328 109527030 451416609 17823722 846706942 432033860 986798785 699329840 976235676 632863935 714786125 897365935 913560377 371496652 437629962 365127384 869714027 448099598 819428831 999170559 999446508 716163559 817979800 961081623 971819828 3426899 370282643 459169541 685047883 312697859 332517762 512502130 938127977 355130640 440805158 368920832 762704746 648579520 686840134 768310246 885405647 512140784 742494223 338582923 520667411 849373944 873379595 728920560 810339547 157295263 401565196 656184145 786050898 107420133 665000818 458878448 535924779 644726311 878377690 815294454 962699724 672371671 758222046 32716482 153324636 449359545 564700778 502940472 864031844 748250615 916990622 215802772 230999560 530272033 548321744 611423764 649133691 586551412 763080434 257299738 838213904 599108483 744508785 86649933 320120102 592144222 901809809 395445975 874894470 626801361 683556174 609420379 826170403 60758032 506754863 415758215 762397025 561487647 910544457 700208931 766958638 393637765 876942517 865804908 958884677 932551138 955013829 207259699 625175025 199800170 265964684 667305526 905499165 847412653 982676459 692272375 959900830 782391366 807556753 61308749 315468475 820794945 992424202 890813300 960501028 722799926 975054969 582308647 776570305 560752129 912488255 987641204 993352237 634963965 681574556 889278119 943116523 684803118 840459080 146683632 836362403 70881879 807859877 367448279 620002355 666181930 935855783 790012203 978640244 167273517 614695149 859637209 878389288 415334302 628804292 772662874 775672265 455086255 942428628 429534429 970092220 205772795 399857246 393258537 730087922 389292209 552006792 465542878 610750863 325342651 350853158 365975673 721803778 641216162 653220167 187825505 961358138 35092015 304524257 895190081 998239288 424577917 941597108 745224088 827530813 742628225 808796338 541190929 868451287 460412864 840138745 436231113 577153998 805115980 890621329 816977908 845639875 783190019 981722758 134203686 614794402 807670840 875276576 967432923 984405493 72046985 528599373 296154781 933710749 489744093 874689506 933900794 969552169 314302557 772447774 834490135 872852175 611053293 828988069 425955634 453980851 133363531 990053962 691252105 808463913 700517479 752859670 541633489 948507704 554281726 689982609 859266924 984641417 485153145 819358838 310224927 939151425 218747202 990702334 330677261 471765464 318085414 760089807 358609480 869542353 111455418 927584735 231505336 862016472 641123180 983588170 462796344 656955134 867776028 976770156 914674932 989154268 270353786 379659338 497777853 932723789 696366826 749415941 120235381 191555331 891553803 982966467 393659099 871105331 525972831 926360889 412783783 429662731 51580221 703194401 330554696 429095124 303307655 758533899 328537575 666996457 891239977 943164572 141502388 778857530 81641334 109389006 274280570 437351843 888065759 892937329 49784356 258512407 28563193 916049956 260649664 488946504 513682662 579392003 326821762 898834878 960614822 992581721 407149499 954163399 615618031 672911588 351063912 731280136 640985915 744298716 804355853 985160701 257103144 470179955 758669072 955770425 662548026 848497341 969973814 978385344 717553928 764937714 200175782 282673916 176197852 987828630 773736109 904556907 827437631 896679710 613036330 692230148 693254345 978196295 462496735 595063379 491712470 847993889 663536919 762882746 803641372 944786572 70332865 981147383 491406827 555895594 483199044 937220145 377974680 691050998 360734702 681638131 921579186 934376045 510563172 875714233 650464551 922866575 193030209 853477935 474734365 921059911 262216907 922988618 685903834 753684335 944524179 954951342 236659508 659021310 286401498 434522790 704942060 857230462 585561071 650496090 890820558 925938185 172302232 986413920 92957375 465133137 176076936 662063967 611910603 947949807 858228470 859674750 676872627 708473197 919241786 989679764 101205864 152880208 336127606 978723788 505337179 686562080 78702360 537766239 779191541 941582836 710979984 851521191 105514050 939471542 534089711 618565514 562312932 834694798 733371839 907772496 223775773 953442783 655525585 956274851 749396794 910040782 129382453 849621309 407291159 934413682 305795317 821051338 857406204 882572868 899889420 909937478 620348504 948060121 965454781 977153952 314797918 388284604 422409497 686917163 336421603 587315699 282526387 820416823 719039626 960957554 720539426 832935132 787381265 950637488 676768328 701216682 401005833 435900287 164320056 477557192 510297453 721883701 126361023 322583468 458977753 711807471 300757489 701146258 209296209 933947139 105560905 540296766 151462911 262855128 287844309 435063260 510874804 850101379 465368404 537752713 378371048 896698314 808888763 893418726 612536916 869892823 661025334 678444001 118823984 382956048 667021658 740442975 922835333 965832546 976930348 994525878 635098347 972951044 31804941 139807687 526854898 782944834 530182789 599960642 114322537 465385777 907959110 962044292 886518579 890971531 421805545 467355247 272454164 665855098 86973405 969283510 71931112 727816694 990938174 996280526 158840079 353514458 608539606 663651386 669792069 930912893 567422037 681359398 684868881 740066058 50525622 604500184 51304523 292703009 834271992 890618769 699397928 749709406 98452088 985958402 952947269 962136998 919950621 937101795 242603043 843009291 297289581 489580683 285787111 652606872 663860742 894333703 95638069 519209277 283029206 810606307 874298211 950732332 739188374 871404006 576603478 816966841 972626108 993056305 437561439 962936348 247901472 468569576 342143226 518710809 31352329 859471231 369048633 411602285 762342295 962522276 378871007 482644565 522348402 827586138 824405238 868988461 67209973 697013297 580707491 890739830 199998716 608653879 944282055 982611610 108463110 650396100 833750169 945787576 180236088 809682072 653374745 695485477 636487157 746108589 254415567 659566648 885545053 947138436 85452126 868647160 862462419 942301284 455348742 890754522 397226245 962386277 804029452 903211545 710085656 965059315 831784913 965890028 824689664 896162942 385321207 573671982 320946978 462890506 765185325 853214343 162106534 482615310 312385887 867060678 858556058 990977935 91982437 878855863 866307205 925048537 121667999 357864771 373278978 760532109 345869966 997992674 57328382 153447889 471145441 864594563 748846979 955102650 808990889 895859547 107804447 363471209 322101897 964535596 140784179 570971588 134072938 469340541 148941531 326728060 277269238 287938411 898883723 899004107 694132893 914815817 18761970 699034099 982770193 995960519 218275893 514126468 210974071 768774780 929724676 941755896 50472525 913995554 914740013 964061026 257765000 924973211 151915568 893574690 930458337 949004379 560172310 770793985 970334455 976940224 725310410 832907971 583997968 862972476 875810427 984414305 613532816 778021949 318608403 641233306 653572453 856714943 995276135 998933878 42203405 401653859 37654747 859892899 124692433 915272103 944895540 995272086 915030104 955198281 651377650 721610428 821963941 939458596 266719303 932720274 856765009 958926661 317119571 363533651 961556540 986856682 975516697 980463600 43562303 635963262 159174924 852035997 755117704 857924590 390418085 442870065 23011343 701923532 394267647 642248235 696775130 767921205 260118767 745860009 31333689 324361583 152936192 577821942 769781726 870568643 464268271 729912028 939827407 958217967 592524823 903723299 800488755 883008792 111291239 198037501 237783197 917001746 227213637 988519538 648355912 956450927 116775827 330728463 317017983 724253548 826792207 855953182 385139272 997017098 854571301 960278354 131481297 521187942 181522069 993796130 892422026 928714693 988541451 989881488 653669200 744614130 690753955 912419075 301375431 367702737 685029957 728269709 917053391 953479746 869616641 989567752 825174187 965912074 593156342 829742776 438730349 468584363 875124406 923872100 376427250 880897287 38425747 150229650 546371714 699415528 887154542 897460264 434325833 460210131 30865510 189746281 542764481 764955998 940464554 988906613 813918558 840944940 830861116 875976126 194528396 325675336 822993454 898555203 487118340 821784741 99814394 591595283 115050855 763774973 649770931 984797425 421435372 505396831 129441469 654854030 49106089 864707988 738135776 872155232 519870140 871027759 574626198 721564890 102135766 795700254 889379547 982431112 978886570 986621979 258602458 318714246 809089569 998583960 246769147 651785833 761242099 860263103 485884306 823077505 6795848 547479016 767102203 937503211 774046253 991333837 794931843 862022451 571770092 659776761 716439407 874659972 963618020 969382901 542857912 977458105 943634748 948244001 704155422 886498375 973914110 985405339 161783941 970279592 540743658 882475455 59378283 588196019 576763595 657661538 166870155 802804930 101418249 130907576 19260784 975194322 114795243 636270139 13968711 871349629 283136720 436775178 752393797 836075507 260436255 586012046 779857678 998838886 821800045 925983297 29459816 454890318 197544268 744685971 161924591 709071218 145082125 921799624 739957902 879895464 207043874 275857178 427463051 508179642 246114785 510154432 943478537 968057583 291591992 863575385 671723219 869735015 611963842 860577884 741300335 978516387 440069889 716125727 918403809 966169767 565117351 591235466 910568793 989029583 855703926 857475335 284226831 873854113 657439447 689054293 37154379 399030036 712296347 881842435 661053077 890978707 50890137 196128421 824830701 896499419 603057694 953079695 135764781 715960587 545031360 822685780 310474707 592008523 213131723 657114403 686726369 726328454 119320789 893890704 855518559 998758731 555121192 618985786 882011755 923467378 599510533 891984903 815313088 925425415 984740654 991378022 467016785 473333660 711744804 933418689 418235930 718258394 832308050 970809143 334409264 674017411 183758528 382684352 835687101 921673455 912820255 946406504 878278334 983652068 998987973 998991930 257638954 839279527 331967287 509618073 723865145 996256649 689040754 853486882 680886719 972830675 513428854 649667399 660606905 721584774 825314251 964384640 335186112 444057147 260464464 423697207 485858756 819606806 888232528 911659715 959881553 967419967 12583431 725116996 421358753 546216598 263042955 960237751 876705786 963092752 909526225 921753078 795951173 862504300 906335731 953271035 967540374 998695572 518417792 626628698 173690426 601768493 554673789 828135136 64312387 427838383 997029406 999438586 492207306 745003359 957015529 975016680 478445866 722946665 201802058 932668538 903007139 947263622 731186825 943482356 826665582 999294332 952464010 955559712 906196446 949480486 632529715 786237516 21189559 691616091 813137099 885716208 555775016 853124962 27500029 413803487 417245471 719042392 745203147 873787094 688540760 990112418 205239399 823173151 729795722 917160915 982689510 992533541 48160721 272804706 611886663 750951895 8633579 373057823 168579616 437199129 40704047 273171946 735354790 922317122 992739491 995443676 738659943 809474930 49459367 666781636 328983014 624979628 48879263 52273369 555597087 704233343 358790001 404555755 679264517 715343965 455209370 473477772 312144657 718047144 72921873 877802843 252312959 780709972 550970391 710405039 966468807 971433577 864344684 960544114 171114245 934766177 326096757 386511292 955215424 969685012 485441501 878495290 783886016 834180321 952924982 956348138 957202961 978817677 885079879 937731502 253667771 510184181 190412574 954441590 383258281 859382144 614786051 717729972 835749169 910752475 268927859 956357549 537458275 742818750 997498552 997722836 488844812 936267581 835208140 990228711 90419192 378165953 651442740 714747380 255396416 856272438 672739484 830298216 399684978 968570831 948603693 974079947 740719372 753430109 343654867 437057761 944439908 963149353 145134915 916788818 178306098 995883696 546704175 688550754 504448598 868896823 783557207 800548966 84581203 603762940 616928287 822790503 609121761 923274356 460064102 769945873 953814723 988024453 974582357 999324590 379975531 690579466 950946563 994529920 729744964 924450397 928029672 967155721 488314295 950504007 404031154 548782148 275539479 955350754 924894578 987330897 783940565 888219777 952331226 970338972 200328961 342153354 428377815 632539692 838926017 849824982 781115310 802271647 693002583 898298689 442696702 691518391 28721694 589985247 739354989 790210706 64046807 299928616 828141256 874191107 253243636 708268077 769432445 769683019 165375243 354661970 175899327 552547826 379062193 918929345 857462238 893736144 357154986 846900375 99425259 430422159 176733341 819652624 6907749 39972104 942721875 946339435 65092768 141797605 882138804 887529892 523520705 968497867 932709456 999333926 40896310 493737637 637234896 809277097 494458163 903260965 868033222 917528179 403174516 671510211 882332977 991502652 904880376 945955384 502725220 966475884 265675591 500750262 785495456 840550534 799143922 993594644 490421699 748659217 530104162 776938284 80427324 194814484 172237719 317391689 620085441 948613027 291576425 741523700 244429427 518007988 518941999 913259386 112682257 610446807 709002095 890026496 395635263 898921299 458274041 576305000 832174564 913650688 766697284 979471497 36949744 847381846 327720593 891217360 444850884 920118797 880895613 985166987 515937529 798217787 221160743 429523640 452947986 689275350 973014682 979906014 369697181 786453767 311089904 807041878 687001468 927475356 73728813 262217909 304273323 965352616 603990278 673831861 107994350 245146334 403769950 923251995 454334709 582938038 357252126 755036385 150566963 879277828 665052350 825813838 630162659 712267896 948555924 983648699 99122998 526774417 257337139 739223416 449196051 616907553 207238611 966973443 33102655 291101647 455142407 796805758 316160499 327932932 233044244 481725990 168818225 620070355 430069226 605046717 355473012 583405144 487602772 721073091 98688938 164484619 483320007 789941472 430356278 672293109 6073090 77381651 553268225 717909974 357753220 469181396 487397152 641499596 881336865 896924735 44795337 509476527 76536588 620765869 640160866 860939114 799970311 807369163 856907134 991140078 905214296 999326419 958004761 966089475 214676156 438073813 357580597 560873641 239843787 384177836 140984912 695819034 650270615 794028394 602904181 921950889 386661509 849299095 821043962 872454265 259608665 345324495 389543128 852918502 256226444 774037955 410271277 879374803 815365640 988369106 698910982 861771021 875303406 978514520 395764676 408576847 683560644 700345320 332136087 461947181 660027645 890142297 900153091 990394977 107173705 670995615 103868620 760184763 660892213 862003674 675891627 845852178 229511728 643378651 896849918 923809427 103864056 481204731 939499332 961907046 300816962 438901482 466991542 703778536 943903062 956829267 302149593 678808832 196802169 718006203 696373961 869381690 295456997 363943446 118296180 813284455 215955096 832456161 33478294 959865918 10595617 169927485 976254716 984495953 460603657 718158908 206449184 739231859 100018625 773440199 35214266 638439419 860928426 968321296 75339496 844193831 141368776 256917160 694233311 853311980 259061061 865960279 524745253 989094609 82194702 373686606 168170319 903966373 181861749 581851003 689103013 743893367 822072743 894493482 96560006 307903788 340372018 682019116 171713022 619301646 620726822 953698888 663727307 698351956 88697996 806944141 921111811 968561555 632840919 856629153 756784489 764585022 979172318 983509845 599642524 905089387 38322590 807145339 125172988 201766066 974069429 984959061 668775200 816471813 797447561 809868303 447979183 516107652 415051421 943814215 646561414 747078318 1533368 743954507 708300254 980304353 13858380 712892403 879128423 974746536 349406542 936124899 549987122 928560740 822996387 998308043 433543705 610604830 374177694 877567415 629700698 874293242 746000581 995587404 381591836 770894126 552736416 650994940 475867397 758608822 761817228 777161785 164074329 258251339 72448086 851372047 372949359 597797978 733677429 861886819 733089264 911346406 153642633 902653288 367480781 712766607 271215272 977705617 678568220 953005394 782208672 929487310 317823207 539357419 291841935 995122904 199340378 408885903 910992422 948109215 781619660 869027473 345066707 400310023 48913827 526721287 225346055 316967342 448364019 475246093 968583741 990112646 75478790 307645214 978823885 998630964 81677365 660631142 886410683 913206203 356287100 717131121 285919604 707305071 471395572 481238784 62873944 916750296 704352044 871562778 406041785 920129414 83940905 847576143 140721454 454794560 830562518 903801256 416602238 736588050 907835604 964590006 462138573 837097720 337109924 342321378 609634230 741053138 295184844 586297253 701920757 796209963 946289191 984841400 437684623 780666796 83124569 890765503 568155206 679946128 235110785 929238897 512974193 915992895 298668182 375648997 956303081 962612302 119532466 413521420 26104029 521386371 971283698 987449344 333310143 730095198 12945888 573919382 73273523 877090897 107885110 603645962 36891169 569071766 26037580 637541856 957160795 981545893 426309100 676572759 615786969 783853300 430245961 776392071 961653007 987633279 775187270 921418730 731325662 942454322 451800264 589192066 970495853 974379038 766211442 982938083 730238370 804212961 430999421 879719262 816195904 930542715 944680204 988610974 659217302 974522085 9852780 73775383 841806799 855276302 545534225 839337763 17653323 824448846 633555032 754204993 146562477 556578936 166853334 668092299 42628993 403794158 210816395 448688249 886398403 946888608 703881861 792721733 641112405 840749540 296811370 915972161 718535187 873210221 492448433 893285773 93094659 858316931 782577696 934101914 959154423 970051886 919006990 920404454 101923096 376715873 95213245 106024999 726580496 937849941 888447284 951568844 15127927 496448455 599305279 828156510 992023320 996007101 540296589 826085179 381429088 775405667 928412043 982926705 764141509 845317937 782187314 796295662 571514148 689769058 692374528 919292584 442017027 600814849 640726854 888966563 285401797 689437736 925173388 927864031 464095884 575224925 544594426 744277996 892443232 951190994 25820677 316986015 345122649 921064473 81309699 460540391 480737907 733170873 949585911 975903615 713491101 954572871 155757888 959636208 26619166 829070807 143970110 466231535 124698100 563861325 781352677 921713840 665091694 767338990 321292376 997438179 346104573 943021466 911012153 972854720 284268645 562199137 265621652 630544167 915746378 983004258 245119205 714831430 2581684 919715518 715634769 796557231 19120577 896619670 919053589 975025328 160535518 287052381 880859018 924205721 871371441 945893187 797851049 863238920 700458829 829914362 926499621 959331251 922536937 928376013 437565136 763949049 565728026 976291277 370053050 682134432 663336491 818512909 469611878 967071416 964028111 990075504 252340855 859305031 749283674 813791791 505891970 909000160 513072956 982792710 911029203 948367914 573543639 736903917 905178228 998134473 557963309 861058835 723208680 790038122 323885382 437203789 31279897 586412148 185287529 686722985 974316074 990520321 969264891 998594577 267090749 715905436 361485970 576221383 159089201 190204579 200611767 201583816 879541771 996196805 160944012 819288675 669761790 829707973 853769452 875721931 24350552 136625949 798080976 858512816 300558098 517654538 676323780 687169904 540932228 609549989 226915334 544741249 59757798 269958983 704725179 904991909 845798374 893260122 444788133 672518658 153217278 925695151 78080317 595906914 785938126 841966115 753098672 945878795 443070975 627567535 91378974 998382501 670965802 932680946 999517210 999527332 307323578 921557488 862413070 990900556 903027592 957563817 375259584 474039937 369297135 837393747 705320910 755369393 596994387 996525659 624574071 772058854 653920933 674864458 263302463 940732432 766884088 948706627 502691693 552936053 572329214 917458640 777480658 817250317 429762074 831121662 739022373 844136294 195919817 312982521 750741612 901972330 752334186 895721649 149876493 974153963 68457762 500939622 971180005 979407395 781634429 787279277 953975587 961034021 522996558 914699761 786698852 789238547 370585178 477616118 16495828 579579304 51982757 982835999 14224260 423092572 769710239 944754638 507425174 611815074 831109217 971772953 466945818 842902242 3493656 437997154 313781356 440538610 377567264 600577658 232410859 749033036 200719620 225793359 712487872 914581681 565484876 986593078 828973516 997063162 461500775 503885284 916508333 987707681 373495189 825709360 907394582 973859327 328874450 486597530 60386852 668477542 177329670 390368535 522344703 793012221 916281025 992633331 573953635 909336064 35301084 163233101 845842384 991850170 697396767 703289915 833481633 918553441 934275697 992383280 113644815 568021720 347912840 435268441 566817803 748221876 615039909 850003144 572842439 653519205 778486783 823980919 21722767 611491726 186732259 866536572 321778893 650019841 527184782 727766075 510920245 891864046 97025366 945062018 664898959 878419001 895883198 952484093 598224766 732071925 123698522 662413740 405761297 719160022 412715038 959909995 130538810 418573777 293904606 548008767 765743656 792364684 967652077 995124588 182579430 442715696 778865748 924096588 547126368 852378650 246680754 575602329 741091547 933591572 883275981 981031789 261544496 421924483 108692434 695208658 939285436 961871373 602712159 917800364 469158386 802878880 80308663 235900721 786451150 834140976 851227137 982138652 282592699 795022772 186053824 821563152 964884884 981494868 916598803 937233469 930426579 974352172 812509284 882147657 55808138 509165677 349121856 867572490 183671250 256761839 208550070 447064479 980970736 983846430 328288276 747948112 733049302 989201820 65806745 366416631 925221131 951494448 32438237 278133094 877817847 976073629 175586973 287066158 57418504 518005788 923162609 926442080 240550026 467630119 979035256 996808720 781959810 829878487 334107079 811678594 946380416 977747220 84003541 187989687 702408587 731258131 908035314 956402612 618421923 853477659 392795812 826504084 399843287 882364589 910492362 992364914 574881059 901977886 784252550 885705428 117894666 618282995 515190521 746606053 915514358 989597185 748735562 934818472 63878921 710703178 563271385 776676104 697172232 755082945 710960927 838216773 836595688 872367077 928335426 995395507 230416136 636472443 159853876 897663721 857651234 925295918 379802642 659493559 449447434 624730574 495136088 966227541 409055269 969848029 280206794 377080192 446020541 789568597 604517699 705018605 38020430 176946556 290627661 812579141 441917695 787400693 102269769 594852558 311798843 422757206 154053193 955360658 274744635 959451087 753904307 859253890 268981692 900998777 719229490 724536689 22095032 173579727 868472357 897091669 102834611 214441702 620895737 706330725 605410262 794417185 522630746 608320602 295024689 917322626 566461640 909621948 178314406 735503563 92932949 246835531 577246627 712829726 605685149 642875292 153764355 788482953 810462905 844701902 295416940 726973034 695576892 972776877 754557372 860947094 309582249 570649835 440021407 899009518 523838432 627173582 597221453 627375263 370745833 412861227 559656240 708565988 886135644 913805746 901166939 922604123 805780480 978567095 225723740 805027522 99751410 776077386 41077172 705454298 986096708 996968362 760102762 893405768 384367181 749483778 145225093 691436866 876321667 909083302 307637143 835914362 223003587 950835864 98194779 442661380 910928918 940965259 813949592 876389307 568096543 859630731 586665204 985908475 764943235 836525280 552547835 937993081 875435196 989341078 801778850 831657277 98142831 590243174 872353466 915850365 835029696 931965474 367413764 870158643 155041323 421142493 471122227 531545295 281493782 967348054 83089411 150911277 956881571 989147831 502997894 907705368 318297874 345932522 590067314 654057682 254796990 257767120 226038235 794449332 239727822 552990256 722895807 760060413 593389646 890142291 966711156 967653142 119628021 870165567 145288096 182073819 798396563 848023064 956874765 989005084 625238039 783338829 519135073 664180443 301054187 629612415 658958151 728674701 509128161 925918532 860136277 971689197 23751361 324793413 687196629 914130361 725355603 959035056 783682249 864420111 952253961 991737363 355707138 845195729 145795751 929812902 231295399 591272306 138730728 950719868 510040600 543261545 861567405 938643042 772576756 862854390 773771415 890892227 603787349 933991238 271070372 934717724 445256300 733324307 756897864 873748179 264932167 775108171 937089065 952777584 674626509 763243028 573574397 863137938 635051165 795312831 591368905 806582901 284486798 966103877 514838611 848045932 582917505 803512560 271529958 363642699 266211138 668697482 522544686 788777353 944290251 989307880 641872554 764382506 126456511 835293248 279548780 295317849 628002090 984077197 536110427 853284195 791064628 823401320 842528275 867121588 901614790 916268394 824156100 840778215 447174419 917382045 297900974 561055067 609409602 943334756 549355234 774138359 620556194 922311998 392340005 723984459 746234785 955485425 731783531 767447597 604496223 605751792 715677858 834903699 698665279 965051236 269406656 639993037 652881854 723531464 242279379 369974770 265199449 938102352 399049719 601750434 650525241 951877784 508304527 831982639 987597280 994473730 792781172 900060960 912793400 983226496 184521118 443376000 598383097 626976843 226688512 447598709 254396564 757436620 978082888 989543576 879601038 981176154 809849732 872810483 894878159 941922594 963233080 981323739 128650774 591595486 122515844 187003596 57368983 305748789 781450318 894061587 26665923 532474826 648920538 784588028 147822977 713535393 490541961 546419441 383101790 901460022 758423151 894908118 442630835 450369325 905810808 945601454 731483466 887058574 11826126 336984715 933623460 957006822 374635599 795401805 606845400 988738993 147452709 736546607 565733595 807596038 655680478 947824695 592686683 658954255 425557781 818136475 636774428 653957910 614288565 760972806 539552641 746931854 662608864 846963879 698347862 901720883 867959841 972684529 409449111 796033128 178692161 825067453 610713402 881355377 552713186 887161989 835546879 904987080 193395956 984541505 640711112 847644520 747421899 907029563 465312362 888932470 488866800 775691805 311696817 978828335 870685805 984835578 551609476 653751980 864194907 870650041 705663579 937352791 631232296 720958534 192982546 469658824 918087517 992325087 635064412 980471473 297358600 618890975 280409890 851267209 933225427 993640746 404695566 563509903 700267735 928552220 616546235 813666928 33773135 904112216 436558037 749979499 479723198 983844541 297420061 697456527 155026617 556051463 393233543 436583769 703465949 908593271 217984059 548277467 626106710 725711540 710718018 731718517 768906527 847067960 975288403 999957776 201606241 378524653 726452997 916424961 142044149 800682832 811671024 871366980 150339859 688075550 354799488 809073688 631202033 828814662 947428143 965215542 870108303 968304965 234154675 426452587 289965554 291400751 838479766 870956014 486007137 822519353 761565984 875775627 889447320 904205325 566972560 579857702 263105613 641791069 37169866 287886173 33116986 139612395 392684969 464693296 811438368 958941475 926484434 934859093 388134861 983936088 640623354 708161197 121513003 698172501 882862595 940060082 339321856 789124969 978999076 991911560 288333769 519399267 391966871 443829773 667874755 695223660 918946904 970211529 171431892 856414990 968182766 973652154 726831167 878055612 622906551 962023705 762282533 882054532 767386633 792731418 946374926 997500765 433020561 981452204 796416803 836259451 523540767 935077655 284723752 295437938 547225795 967645258 275088606 354592978 622628743 641492678 544299082 796304536 566885091 675055614 588672648 924850543 385112439 971342574 338897637 670242696 852587493 984460893 241550778 877774226 870392402 909763704 911019150 983296529 253308404 572140546 217602860 651257286 416704011 940770429 975704283 981246415 165260473 760570766 4423647 836050851 166215279 293384784 123421441 387363841 966971233 970147192 82334382 891819105 402605643 752067434 124596090 692268711 120321926 163893591 385678553 828726368 765821710 974013147 545243772 613494320 56983941 499557916 922646806 945598201 435203296 679489125 745135728 934900378 191498737 756565597 423454499 472795834 171470581 522060471 706284147 788320985 742356735 819329891 431315716 945929143 227416172 669179505 755827376 998192207 2408869 779379371 427061649 669275363 185723230 405657117 593553065 637584720 93354651 755175741 759567556 765125239 822142215 970756738 34756870 118674770 433321473 613768262 744162398 765076606 541698536 730409583 356317875 982723155 602828860 672606281 404362720 847447224 547942292 815669327 565256959 968131503 600970553 611105411 626912655 742363337 423180983 944186392 716458979 865257886 392889739 609567740 909702421 978477468 155821175 455448091 614847869 940681482 630875287 964011332 575604474 937999042 402983088 689427059 524065457 534616671 441469622 975101795 479663100 598331891 420929390 799202973 945077150 991540981 354504507 789123907 484857620 490120595 973607125 977739676 839044105 943001630 509798582 763030101 673716986 746754504 681373283 785357940 532455272 742108784 904766640 970508612 62772910 721806215 6344370 540543984 284039345 329975823 227843416 303240141 976055789 988314471 167499123 965543350 171392235 239747746 334158892 699583733 480921376 524205654 181804796 828683271 90506660 134313854 461546574 516990387 937951671 973273750 887649510 925315819 816122136 965164899 976189146 998278463 204471001 401164836 762727059 921052749 969606386 977073041 53919997 962359862 202699594 970690544 905097742 905292391 914517019 936886011 560259508 726182583 400840370 905495165 663790011 967778767 627491141 891429462 612524396 730868906 922172458 974969567 324557925 513691657 808864757 859325868 964329972 993452170 590724609 802802051 386840843 478966012 516185765 917499198 424136558 682431912 191899132 980295313 52143377 746285329 597551063 683405750 641104 935727257 751102750 923281210 114139825 463287687 984553204 993618974 448593409 459376873 631946780 835582247 755110878 804190188 552643205 980215070 173480816 503266605 687080924 913193059 250199563 721977192 721884437 977657291 434189337 841046006 368000219 825657758 15185069 899788550 235737241 607076912 246442908 485712215 814992642 949983348 183210857 807987555 806614962 970269612 961573059 966353808 235621927 426131632 311092588 969197446 945350987 964681229 29420834 556576597 774687378 976248872 733464925 941924226 986612267 996141808 187764804 873266695 312729327 764513710 33592898 147701427 23797105 807833508 838422272 955752889 299752022 656863561 676899559 919329741 67224469 355223838 529768864 711212029 187340912 912648915 236601669 464808776 54500440 403101476 350154296 586591990 367092487 785792087 5987059 545495576 57684072 219241464 600084217 988573578 192167696 648332294 319462147 720874791 796064127 839955964 529497324 640683428 98578044 270799932 970306777 981957636 183422030 971022561 942139616 983343217 521140506 677665952 983749564 999382250 113084443 503240473 226825951 431077990 106677138 220298409 803280080 977580791 649652153 820096910 422099621 891614500 290189939 927953955 486237796 730033046 223775013 864152285 657189909 952869263 138384877 911639315 192717456 301218663 413971287 418852305 931578305 946891270 687941886 811076045 701430885 777177051 742147880 864686429 680754818 735567107 663698281 817762321 747733234 933278032 367283700 904886079 587955207 704386514 15523407 502108594 250470200 391881623 602932524 953184948 70181003 902537672 183052988 193608796 193506513 214681679 226681866 654612537 123341049 922816253 648985503 897359717 69218995 363618905 185527670 400387346 829469366 937401321 861314157 959428042 569762077 732515660 823782296 928676935 212714119 216824124 42050924 377199785 735447570 747467562 579724094 839836295 61165144 991902777 944153085 962186796 275772135 739528191 296926535 659521745 675086539 972158817 848972200 930082675 522118436 953856528 882499840 956452644 990592527 996909424 784644401 965053934 527590605 820591780 686018191 873922371 206186560 454212818 104634340 922465639 953441966 974031887 333135999 429224831 897151359 948845961 168152506 258117887 268668013 533617244 52235777 140966427 482723547 554206921 107165893 663186236 420764646 519735287 120585934 384135322 979148085 999533663 299850682 682703068 572673515 832652423 13097374 386437674 435857638 474198573 206474750 506976839 533626896 909799084 239543450 631614133 258597754 284794552 565100819 608847444 705456578 870192473 347167974 646328580 254047684 954299823 576597830 730367016 303259425 956563005 242397003 567384458 976931433 987348209 930873315 944126277 452654727 577697808 209728254 773880804 138917873 183179616 262721946 472399666 729828607 949588961 62016852 86131625 171797648 544393119 227805440 400309655 482269489 824834971 7253946 327849693 67579643 121526619 190396261 867152454 743974893 948224335 61520481 627821731 720195215 810090961 71207654 400297942 826950009 873894564 819323579 973036759 257743925 853538730 358414495 366371503 448739640 888973806 548632369 928612353 403143489 526019640 161798306 851904262 38314284 750680983 911022466 946883201 312936163 630867880 390490183 705379351 42989028 146470800 594860334 723866388 401665211 808055717 858576968 922412415 944424433 960663134 956050551 995776154 68804663 789613008 939978418 965445873 951033616 987609640 209808368 248475826 552385251 923379016 434272975 587090593 172812036 301079973 185017883 629927206 229090024 247800029 423649193 710763594 454345074 576505321 807355886 958337691 85556306 901144283 75916217 908744653 160160551 884433151 336778130 941573483 196727483 675396471 940270456 980978933 573603395 633000839 159680929 595723072 900822074 993252330 370959527 947870594 262004164 855165173 800201668 926824125 647048964 792405474 328309474 808752113 302334897 421507748 838312309 883213479 550837608 904240260 254603363 279971770 270208523 835987461 339495624 612970869 395356710 700512215 718687124 850175051 801939096 872039666 530084592 656615099 783327068 906032155 92360366 543782123 61072349 935897673 693147018 706563744 959385998 960441442 544779947 549133468 735660867 803217965 158177878 459681408 153250252 224607553 502771785 640440898 330539186 792194760 417845067 450400803 648929378 818185398 92370392 899287163 417774489 624612820 476965898 955066892 863719987 897036440 33700620 109609887 835816732 995182628 488069361 814825756 457076927 729701600 733022430 748711684 645661598 988813130 527765562 773316682 765038052 978743901 176333355 596001034 609940617 831051489 715272229 724155516 875563245 946028926 980019262 985179537 412908281 417325051 548615768 607641032 880584917 937483700 995655427 999498187 770657155 943300969 580259867 777482115 949927437 973117441 473889053 961048476 20743107 430571305 147015793 792028330 885552034 920065531 47601893 802016427 923114219 998076220 136794697 744076369 22569381 974981126 333003188 684654000 897649883 978093042 150860117 376657710 554961694 981174320 213044322 595893143 510168567 694325169 303151307 730091853 393129632 452585809 27851001 548015119 487480136 629445475 546121936 992156719 48711578 987540111 116843077 822100429 616488713 903544280 493372108 671739125 647333666 809493641 161959338 211492039 323067427 485320010 700164144 702617701 847767666 996237123 594685111 639005687 616357261 688993738 736210402 784110192 193253232 418078179 274025483 978645181 632930041 644666553 318957210 446912325 351368890 525912728 695451189 906157121 861538267 903270490 745054228 893987329 749807657 917772426 244097351 382855822 292695289 976493505 257307722 346727454 212635951 958472663 186009074 299962451 13884437 628282853 655869726 796384482 673606661 775256842 589667600 737403560 987181219 989705748 956657492 958008725 200735959 955818438 148709854 570487345 454797761 878220343 472720780 956995021 450446042 972649913 100741721 322164698 72015878 122939866 84878100 473098676 563240518 982116876 92583038 731541354 482013351 662853025 298036555 426420896 291858598 512393575 908075708 984352950 155517908 957372308 555756649 761592640 345942657 493894484 716538742 828004874 616558756 832932488 403976341 670866331 109768743 796917542 746053126 905250938 859231568 942068819 921381881 952031507 952770537 997551111 979083894 990321822 605781237 720389869 707690246 926872638 611355474 780609332 152713112 266203948 772444201 773684536 329899245 933811041 579965516 796225167 46870652 358343434 277653430 492836099 766732087 954338632 875299219 979928167 731275944 983239533 658414539 865466801 6888779 840685415 392988906 408421565 10643583 368472342 754579409 825969451 738251094 788226923 523842885 769437648 694691442 876231655 279934179 919622652 470535075 612109832 916806631 921880623 72562972 931397766 122884148 215078961 962570320 966605899 88297939 92889743 638433774 917113210 397377063 584138104 283486906 969015094 218181449 908126966 767120719 943044592 869123015 942565697 985222547 986732259 475245868 784477120 17302886 728002877 260122262 503737942 440775817 650818547 305269826 798673341 75125115 325615405 285854423 858872308 862314151 947419529 847241753 987622363 682148831 964825979 981997914 986861656 224610913 301092092 663904861 940761663 702639677 984457970 354268079 722450118 802777089 824532896 140089519 380225598 90939688 212817449 40445224 774045476 415555808 507124332 587814992 729407114 941199582 996554384 739795254 907862331 677629628 723796208 479490519 595883853 413839071 740443316 44991589 906828218 778338711 863215507 942696510 958653169 43661697 893134742 9253724 979141646 720840201 901969860 753604432 895828316 446066889 690434286 506639385 802914393 226054820 875183723 961228095 986640721 217334003 475759879 729284011 896009556 592490808 705295166 891978641 929246841 685915955 883748380 120336107 888192655 739947556 972227954 228147501 652900907 467440936 471844756 76707084 81059444 405372050 650315544 590708837 688206318 412221926 746233516 725603344 889986247 342885616 750146514 530398289 786789492 149861526 683392618 855200249 968113390 719088586 736659975 335737837 854497098 58615870 136146229 835008040 872064999 292154817 808722552 496000760 758774096 440627610 657232733 422379264 959373926 512523888 537052506 484498462 730678280 160950838 790795424 855402378 948708813 803427388 987723272 295428762 505313367 808647103 929695407 53763495 792193533 215233136 836969131 566869489 812746405 594332495 738751705 662285821 988125107 165488904 579180974 109157603 461593080 876368318 957427983 126771187 419576113 468698064 778229558 347988516 955313603 325438850 503503823 753113805 860453038 900956411 997607379 451494295 928936384 671434258 905503663 442983941 935480994 973147226 986510943 816017231 984137437 204797810 367159425 66353774 875327343 263761951 509478895 960653158 984282904 414193926 477569042 287268105 652812439 410538343 563513251 893669744 986595671 869406769 963170632 433187240 711168761 103704826 440573582 89940815 539664816 924387884 959738319 358452634 643462856 780791121 838881332 477937867 854502920 520724215 949029448 10913167 363556157 422649187 779622097 865172657 987670741 774981100 782569964 901664696 916114331 205971549 248061387 612496453 914571183 700651236 861298651 796779285 886644929 682526523 906834347 524666854 630865176 888771324 926537404 609585545 699320073 963212687 982024030 489445363 802366944 105300623 863977534 614709200 796444236 10087117 617148219 919965378 957270251 143399251 680952913 60385482 166216298 550473120 794557772 185013394 643432982 829104671 870157950 480852823 600057188 471267796 699735246 229818320 616796318 332744362 538864397 871369622 979289321 951105445 985586094 368077798 822223086 523762766 905373005 937407165 951035136 977727008 997634133 594210809 723962018 597323048 956969051 1200337 701199259 921203944 967190797 464080885 486431063 599344336 697638423 35072598 409659340 923450947 953964430 741202376 883190997 703644040 875634841 853433354 891430330 777366433 849832319 404357380 459555057 194878407 560653846 919882720 923472897 182484745 362269746 587670229 912545136 947222952 995884725 127651489 635453081 728944061 994153827 574184674 678614723 342578263 530970022 21839193 927395011 850644294 951174350 304751924 833927443 543211660 939581758 626074242 685241491 717041242 911024238 995713459 999306665 262094572 926729369 78388697 86345137 394987836 713876892 781638830 907503575 466412372 501409811 744349835 880215342 37228899 347281166 561787164 672039289 980396535 998165991 147658032 706844282 764550539 816523079 931671696 957933689 644053822 932683822 328268147 575252673 565499895 952630721 123143118 345204474 153564915 902009431 452237567 715450407 358256425 667310713 358606021 483275205 609572612 813575763 577326474 641161447 832169553 934351142 421512455 751862376 335643257 560353639 648471697 657926987 369933165 836571196 103784563 417959065 852170241 869882874 413599458 708034736 931745447 996586919 856678419 986735136 158422655 584838592 847140974 910322738 945641417 993981206 92529977 981236917 366006404 994675139 704893416 825933035 761878878 857147976 735194561 954793174 738380702 814354586 58513924 738306461 935314099 966243734 81879924 190233714 294504220 910784178 693562239 905403907 358901487 553716940 589431774 987639580 109924816 435417506 45041958 819415042 730474582 997653335 465944562 475530256 66078621 971321027 991578700 998693310 656167447 729536633 141065057 272993124 806275955 864392440 175214335 508315947 702265422 888994506 6507883 409366244 786653960 927787628 70641725 936746393 133484705 439175013 207245266 510572808 830249548 986047809 658588228 957308990 360979118 755767149 303696689 684807417 970035867 974104326 748705239 820652173 845872030 951141263 962655443 994932761 115399603 638426735 51284004 94171473 72437631 703258140 74475473 631659766 405457833 873703705 691091519 907516354 539591666 857734204 421814648 469061969 551112133 945856133 279265773 553771737 380430183 871504626 682215844 826466372 172166333 273353431 675046833 731439146 923492911 970449660 927065729 929669749 731040854 783706954 600113390 832818664 498120503 642903095 934596790 957142926 51159200 59295573 610636692 980586841 686478057 887579423 530114158 928270441 440161311 942069030 661398295 722719757 513495716 736470339 713926655 762533676 384610427 686428191 130386188 530092383 834554461 860409430 654134228 931099192 42333986 175686863 213400225 313632804 721464615 736212031 680128051 977654762 258290117 561572523 386181345 633533141 389413408 962738828 635992151 715813698 227191965 331601959 331887727 808811145 901079963 930181458 366228501 673111941 273754386 943614616 528095301 897902649 403244546 951412637 149796764 829873697 960319902 961914201 913492367 940680472 326615792 672479738 424163257 648704559 517877659 801254058 577667776 835334583 170774466 572466343 408881794 446128894 399308960 851123435 534764062 599766916 181183219 402681838 106062154 578239075 701283263 746035477 256077038 970161813 837936838 895176240 618015564 953624241 222036873 591337668 787312627 906797004 576783768 726360601 832266901 895181809 565578901 980252488 372805843 452661142 692711158 734566660 303046785 625220904 690068621 693942424 509221427 912577412 87928424 197383308 215506817 475455314 99549737 106474744 239819265 263384995 173543074 548685459 772227089 853035386 712136078 734479259 677102977 912533511 913204392 975959743 978807532 995729117 1936055 910652212 726046381 965951533 550458028 716908179 289596432 510970553 894046066 989138162 592138576 757623224 898328667 924584601 543669689 975849006 880370382 988457231 598748994 829302536 519840971 549692257 98250164 787849787 768678885 889531452 165959659 970075545 387798338 798974321 107895288 816537315 739810065 844503030 320064081 886396546 215288207 775205688 718434307 899471090 258553029 966236829 478193092 717862784 351109456 703918315 489842351 630335905 256127471 914529130 172228597 534407690 126284318 771674341 304568865 350407100 13686087 890867467 409504310 635715958 361722713 638933162 842802838 929469421 425679688 832382802 166714971 480866897 615745951 800354532 41832418 361075599 565311554 801315451 93745216 943483999 569981532 796796832 183360729 807273184 429089472 583077793 621582156 679650811 533405161 689480682 565390101 938997546 343457654 359671883 114293505 869020635 276638205 534411336 425396624 551700238 85152414 520240402 890154589 949879526 844285349 900141795 158674222 361901630 344968318 724088276 837516510 988932678 92702808 265475139 811186297 833488000 429451024 619001942 386353302 720273613 788461945 999308255 927409717 980584604 581415091 755416090 221459759 394018394 884313189 998132554 492380742 678168510 449029907 635551797 844456833 881585313 460138718 684287863 485830675 728503402 264768898 885175138 863664831 902637208 442858971 641470248 644498254 823899611 171290952 567578550 18344807 335053636 106251721 457418488 460134741 598892276 547045177 558414671 31619396 123814664 917976747 985725644 380799135 752026624 669014388 706286138 534648378 880610047 877591072 984024506 279360052 597214152 155549979 915384046 825836008 875278861 504983558 728579470 33955742 160109841 492826265 661098800 703206093 747514494 554776230 623264163 455145952 984714452 83451759 100511554 354325647 724824610 485668570 853284093 920290038 950248135 409488488 759608342 376646233 641053468 549613378 730450385 442283066 755464147 716837947 984139188 819761294 850328104 932015561 945803063 385353778 811464427 261291223 525050333 370495036 689822926 973675034 979500475 304734392 969898959 140991358 208618033 563666182 839009124 46591809 558740390 234982052 877096438 995271105 996942684 727111307 797784254 669676817 734889002 414846481 695707044 731134677 816907662 747830080 825779185 522201791 985799121 502660516 862236207 64206459 928446928 630126520 887638764 826452552 926768180 326550276 634134615 651220524 971866529 633569654 905662209 254654725 280699644 894925357 919547090 205388719 630852935 45819185 114723053 873605202 882950091 195934043 856931860 440363793 752433230 101789460 269902995 639635281 833853399 136819703 813811965 550061297 878400873 43051628 252721695 572742048 748627272 780907495 922732276 434312893 752185993 931766264 956183320 465729832 940179335 193156592 889309671 556804759 694381183 444524374 746534487 111607081 711087291 517980300 586143510 989209043 996450217 929207225 932658774 413945119 970892329 442911900 703807889 798008825 977010739 752796528 919642454 91019866 560980335 687355994 940837646 649984990 963034252 9363726 433019905 689257193 921579062 441285202 650873394 653699024 875587902 692486469 804771604 571851861 877180434 569421462 802354578 832918784 906089808 13045880 530256398 801447749 855454787 628649842 766985847 96035175 574888443 774089525 884344941 268346539 909974726 601050028 992218682 223834347 365588416 320951362 859820764 336206121 567184020 368170531 762396695 738724086 963680738 1882333 203966469 781329966 828663465 584641667 908693121 495534752 653088664 294481115 987732746 727808577 928608777 146129807 451145328 729729614 967524987 8939798 938445732 709506908 848966739 320056504 581873708 405733172 551158478 123321141 204065749 15848653 37264304 137100984 938499293 825549874 888285406 439658772 560153398 306552370 870060610 558300507 975100735 373263113 727867812 573183952 601526488 3395878 985504106 47269112 376314321 34372902 516908110 231637074 713444114 722558232 824492872 204112352 586919566 714353308 956655173 804461763 938195540 293260840 797622617 71002620 614342604 573697192 614087014 50381894 928831960 619167645 969198844 375425549 759528850 562422832 851239069 520113829 974136395 172732083 709736213 594070837 948729823 947069652 972348184 997216515 999905409 924989041 962286183 514813826 686552043 730798549 957809787 774828878 900574053 218917925 487743177 457881614 945485997 849400633 975508576 456692812 742242122 956843759 982260347 805939836 843617308 291847649 294936863 660753784 979884452 284647367 885103646 39609145 509168041 16391262 672496632 106911137 529804277 444989395 851504313 32304153 443318871 43342596 611093102 44347131 728691102 621971026 750387611 396342099 532498227 396281983 566730864 274743344 970470604 145363510 533282598 781066621 899655949 645735470 657033221 281791758 641508009 506514695 618033944 405581673 868852458 19726435 407691247 370225680 831848405 322141505 809904325 652482534 678770250 137694674 172802783 830555519 896644471 744567057 825690093 232173325 344585354 71444331 407973350 512628333 811469775 589581081 624833713 192810648 455997587 34395384 176911904 895133114 961694344 398348701 755682174 332594158 361442409 796021328 850810885 854061938 976123394 173622228 598632158 811587433 909358603 139603229 477849096 885183707 918770871 956958811 962717598 385294019 989266204 123109508 513943563 796912978 928741770 465505526 560025965 296060853 751680337 64353251 732320878 700558503 854247092 88784243 722024289 562172569 787576133 832529599 956321982 493981121 657331865 192861634 870790930 58187097 63856551 266696717 347555210 550503945 619815432 485250569 541854923 741415082 812676279 70936162 507218328 74656446 776077723 150173167 777891704 517636111 852430579 412071668 994815254 742488102 837021779 720941591 725684706 272468489 677243458 204111439 896638006 902895336 987498803 626048707 810349599 265301031 686990833 457301102 758451016 269915283 759323399 320017507 683657543 57632961 378898829 491467509 886136590 358453182 576440503 685245745 938885465 752987943 768084507 495182206 668294789 408414818 880881426 505811578 941643605 856895297 931179802 584660258 709265697 518191645 535342628 181186317 428574822 417215973 518069474 618128772 795963060 938093261 992683976 673604441 912496884 449306971 573842162 956470022 967226073 635653056 699818844 736415803 926342570 905673999 938417454 674688605 698155819 794307317 813818071 356861062 698977154 756034051 948319623 55359502 721611904 590811302 662606260 502940708 803951060 168559161 587550803 89031376 554598529 51263342 571211560 976496625 987409558 873527205 930489933 626272489 695959848 206003390 944707886 47262784 541080402 661064241 917888297 824556325 960272073 184467402 713108716 387490538 897541402 271013016 869788127 381861329 439488019 153203980 185840541 585600928 993734883 219964290 539602878 771254223 852473050 700624395 785441034 747660061 777443699 248929541 292737016 700575038 836732140 349606847 895939312 663653005 878487861 646811303 945145505 958620648 980901246 63737640 585421840 735472278 920787068 734171984 891764069 70501800 341428183 996738569 999266308 734903268 907742732 219839092 480810159 740736825 976630954 224157211 283426259 258032565 425852136 681379857 997539215 274338153 277566329 554459717 559456599 947087713 950410549 266569772 669315145 676854421 691304851 93048155 347917591 709411103 749607215 477620039 677950153 40312630 669695997 564735483 696694507 659102251 841931651 265062077 373736081 429865214 759760595 130352296 342236367 885121690 970570339 13142132 408890725 986515093 995443839 501166238 982549657 506217872 942768747 890790853 941972171 28480676 475044538 182444853 556473577 194658241 777700759 358653395 546345682 881818481 963130523 578267975 592847817 359523473 384225173 839522603 998657580 479519683 965248884 48570343 445331034 951811997 976236330 233704976 260202330 320460544 972179848 343748733 411856367 437568423 513242055 788838333 835232596 901176035 933097623 693426885 838866572 829318122 979621581 516256801 688107050 949299228 953839985 365454449 792929150 780003171 835783462 882986074 973917813 237648021 867603331 840232725 840548179 599119721 609734040 546778465 703905999 939692776 971205551 387464541 393647657 718348089 869960230 453985577 851185560 928511436 946972977 90364676 581918742 463062249 706968393 463508806 767189005 307187897 787212649 712211854 782511320 320142349 373219380 539304546 771709761 213903352 970327549 886651692 936745339 120729984 853021755 715590076 960611415 527076144 620409140 835405591 863180066 982853873 991247892 655598412 892467974 771133895 820381993 42250913 87947593 39767203 521269707 954329083 976965518 974376785 977377958 665051171 750792817 291133198 813230038 541221603 627483302 642988121 976215547 452684504 674615389 879659079 977136372 561630295 772218523 425516438 596266339 157853477 443829042 599937177 669461750 484086011 572399626 770384991 793924704 654830068 685650575 879515184 945289128 928399830 979458873 309538585 601592737 940824260 943860867 371752294 399912697 413740651 601486307 318012604 646695870 669361121 680162825 386220775 654333338 250169840 272544701 752265369 910783202 415183662 797345057 882859833 943555231 540060898 847255066 168102815 350679888 234647969 841335137 606593674 653926390 917137378 944879041 946915631 981617895 172804093 365792129 430846412 438940323 912825703 974054039 377666196 607075120 373080653 575393235 388033864 949079298 894644513 914896643 28662732 271110015 711652136 866849251 478715840 934149009 177366448 983340632 308976889 560164660 237274375 466155412 489367278 494227924 175412195 996259844 85150428 509113206 650258522 858795553 959358558 959936028 444314533 677901846 442393450 775670188 397097536 924852098 15586284 157814881 440730725 471215764 126685410 587457226 700792384 708227893 290441628 320131649 134927250 786990036 750314097 886033515 558154619 936930719 8653851 311134477 927260272 933296120 913359363 933371848 171080599 375233379 182084554 496409452 64272096 691046506 111632033 191873138 966020554 982183785 454854497 748434550 389331931 938678388 312555398 437383911 879411991 956576538 135610102 312393459 211124557 235102326 686263524 972372592 962954017 977858338 53802151 495569321 28009872 726637135 922515434 970025761 359267536 593826467 497146839 914376155 280878488 433191581 655636520 759320047 96880612 801600350 764173091 775010454 309768229 913036261 883689365 889198603 666177467 771954305 10365642 420673216 595968678 688727068 376103491 685439461 643818816 933105161 693008822 888136059 6950937 528519041 682377801 948521601 203031297 977157327 856573366 859187628 584140099 949950283 964054620 995219182 217661704 920880805 869707008 927588738 965303821 981544135 16984204 755742893 37584035 205954104 61623747 995573310 624088629 683330379 506721541 731192902 436924160 528897765 520094220 946046142 914762591 961543810 422508026 852515588 619788105 827533452 344941083 980593665 217935542 636197281 129281268 688750417 88744081 490849365 429119042 717980370 134294749 790195894 647556976 987838384 89260874 269553964 386439343 587547245 989599938 995172308 638893400 913305307 155276702 944612037 278573542 366472937 857765470 972160224 385020114 821456005 557676957 709411921 275205122 375136765 726497817 824725203 205225572 807494952 582981193 756266957 479304726 669957243 993281602 994269866 612083637 806609969 659978229 799789180 752318588 876110366 163014010 239735434 275023150 791480536 329697096 797516216 232587575 334796348 661598165 918009788 632800720 700399649 874411381 999623897 920149623 975830424 439888353 578441550 418300779 618985534 604563727 701276477 457135249 534769634 641590155 872537333 986438499 996876093 205537650 704016817 220578524 457401324 768083686 813049917 461981810 863631722 746086255 993489518 623567898 885940513 729755576 732379110 398366636 545470049 250348114 830661356 89634433 93106868 440364726 873671921 593762502 855415319 816915618 839890519 457303327 657626490 620775155 790872354 986491623 990623191 624354847 711095705 479035546 591899613 579216037 803054585 232781888 896964834 247665305 983845772 771285201 782952663 463085083 535270425 976576100 981648713 739198272 845094639 645033562 746309278 306637308 667280962 33243546 901156350 847414703 950385374 8745030 494148582 23802094 771300291 500154491 803660922 863563554 931858847 878021075 982644278 48911066 435916729 303760043 841080696 792117874 860715215 335652554 513917237 525624797 878375870 659645944 870150663 154835819 531624882 265856611 743504346 846173306 881226759 538040895 765210066 311721786 486463158 215081509 269322827 556230917 937887903 353699830 861632259 591588891 924805208 633101985 841279424 169222973 250121518 645648367 827577877 817602134 829869122 746018975 838732181 963875372 992462952 854593074 972248958 787782726 802703034 900561162 934768773 612809834 691902911 193922416 330852864 674332902 881544248 348786740 812098862 268312161 840227863 613264822 657902291 400269155 443981989 899876983 956819849 917246558 974600016 514057365 877417302 374004165 914098737 943853178 962865940 517496492 793301667 347155637 404156708 498285317 591918754 613119573 959167904 796336339 989580175 119375416 896439015 949605911 994557037 625578038 672270277 458796389 636809205 442225095 847749484 145396132 904091166 527566947 928066215 836749522 947702186 102086972 805453220 905024205 921881433 613922296 629860619 372835131 935817475 207370787 615604795 535996598 944586968 538349894 721570197 865057907 985004114 577704736 875764260 439635451 481088874 518683023 662758199 946643840 965799976 886933887 906438615 473398111 979595534 733418544 837621411 667519542 773706791 988400125 998170916 942672986 952101711 704259246 925186555 120524599 416515883 76869484 382353462 370197463 405775543 761864611 858318701 706165375 952455256 561913728 909911908 333039073 568033443 197343616 326199158 734888773 804296308 986493862 993302603 120034097 371798186 48818217 298389477 301703559 865292770 987252223 989123128 615802244 659471462 556232886 917408810 835934447 967273905 569594282 629685116 627901457 920505183 338127269 574378265 649926513 798619440 604615386 648136799 874967411 917755569 708583070 970229360 665548020 929803455 703086191 765200039 920448192 994351622 580734600 629990953 781832723 828822002 203177752 663861018 329875958 452955684 138931133 876335614 194179738 357272855 138479516 337713863 481431261 757465899 734020061 937717796 235432356 817772339 6285012 460542707 577880512 973830337 359639548 380828310 849704916 902266862 147941268 848139465 891122545 923519564 102235352 969160259 196557557 804263596 917080089 977059000 264984610 618358260 976060756 981886323 430404387 816274289 76053366 766221120 350798777 902526521 130517523 184987657 70473889 718120939 237439519 724051788 961775937 972910587 109081903 968363126 703262619 858777858 470222379 618566742 146069301 515240051 711539172 723785388 387430571 624187154 706396102 784124788 797903022 898103311 781289406 850231357 53675921 366178711 237857383 887962108 771564773 934115222 575924971 963543695 351656755 654714216 384809203 475508251 519163618 843923497 936090204 987019383 943026656 985361198 883000172 973880568 663760734 914238343 874178744 948654337 752655091 794864301 93065915 998879199 935033656 950056858 603301810 805900000 298427281 801400461 104431626 442356464 795318379 951286620 731853785 958142597 603862911 995746493 603626275 991593765 347935092 796556017 27628157 607600215 569054554 852488002 980391528 988855347 94596246 645530546 253147496 435230370 127527635 241975277 972385748 991748635 608825259 615146375 628257406 960967997 968461963 982510200 373943812 459500239 860502765 868146177 167917877 771119932 119005846 610007821 144971973 433875474 971691789 990524821 849972387 910274816 801407027 900889334 374124863 614359963 882508628 948388118 386022475 620770274 865430476 907487770 376482592 431428135 193983602 213495816 435119383 630527905 592220112 781464764 548313466 686244134 901548732 944882522 367957517 450732760 38971848 730150392 872010286 942224469 790054753 872319107 973971309 979832002 247053054 688715078 316571591 579441847 887209363 948797342 571082456 751730105 659743354 780177809 743890611 822119466 382892185 778602756 601875648 923157798 984309283 995827335 629877412 683611013 868572233 925343012 275284595 999581663 217040479 678905322 890937327 998211475 552249176 626511683 934684642 978584043 719393838 727922445 40939204 632215590 31833505 658004397 103361716 180755379 809727459 845800301 312378380 341297433 136829945 937187258 478351433 888249238 652636281 812895878 429473779 848054061 894591720 980015424 233282870 547360838 448820981 767391607 128637774 784182035 81856484 682415423 846883499 979920083 19823491 201423097 105193800 729404017 21974888 868999712 522794240 929724170 364184476 886124261 454881930 963894227 73326395 762416131 385590978 959494978 10707764 34079854 114768722 932864997 302000071 755978857 934925938 993216665 807056077 915015778 534118 717850719 375195239 768506054 638072365 677513191 388122898 957378220 628250143 703217627 979996134 985823516 824700743 833706437 528386261 810471251 442634328 932684464 634743432 718775570 509542260 636862623 47780985 734214150 881076261 896429310 291902438 300798085 190851588 447718130 541949623 979366517 657797577 663813554 720216472 832578413 84512663 518274129 876058086 891994684 159294841 893994868 652141891 676644059 443001146 585579286 835165007 918420695 367463296 547256498 300777249 934905085 665408939 677981377 662149252 911453165 286534945 530810275 194762191 879000866 980971542 995425023 440394566 921025602 624340062 965916232 306861872 775914754 982575159 993906732 898229115 982539313 853169358 853824508 464723052 964693854 364845450 414809432 88209930 985972119 2606814 476828493 834633186 971187897 911821131 962820115 459235518 896955361 638005680 908979653 857178884 862474907 733833192 865584001 786722867 811866680 317028522 687233776 860855251 883152665 740782488 801002119 463058115 817531308 799239797 865010275 585915529 772617139 433213860 529433685 794512701 835168049 277771369 666112347 37502401 454124851 932725371 945446429 545767561 696809228 965959017 970029713 797021881 841275519 661391905 763824608 513541683 639644687 764566356 834048461 623041669 714591613 852996714 905279130 818145342 953451735 122028215 568008064 766076866 826169955 17570111 779963358 61337613 453969280 56365487 797251436 200424014 580747158 250591626 951655325 520127130 825618838 217618483 982283655 363089148 935832089 706225390 974438238 759689912 773628945 505578257 550748219 766860128 811298187 622306308 992126814 313558825 660922475 100777195 489606248 587669625 645690784 951179356 997179995 582114708 755902179 886014938 984731824 451209152 635148823 929691042 949485253 274642038 829913563 997123070 999178474 10128685 636061572 98112901 473468700 520888429 889884006 477953404 895359619 515278869 812894294 369228824 624920120 88934939 542848169 451562866 551216829 77377963 362797750 978933743 987189756 51916162 446057895 810090056 864384833 506917799 875152700 199628441 864094690 489137065 908446161 779798632 802224667 262759006 696570134 962050232 985656929 330934202 351583412 188220656 721160717 381660307 649052303 753694198 850253621 325430162 415441497 838166006 980416498 87476626 960241828 809212565 891360395 48711492 548701041 682104617 812652763 710351419 920960870 474633317 512241250 259533451 783565064 936404307 990344126 858680433 886926400 845902018 958731873 433837932 746340992 814309418 907811015 392633775 738350737 696871239 823575736 935434963 958357696 121025937 360419598 235785056 813749551 144716729 161139138 767552986 876034453 646754038 783762928 897987654 984622430 484003219 780884020 733508565 909242003 900005448 934153845 612008579 995536988 346785913 461974301 99178186 101343371 50350168 413988132 31286809 370819446 12851663 865337425 461466295 951739094 831709310 906642598 787599431 932718924 413726848 846959242 429136427 997447803 636618973 718741914 203041693 859944250 514838134 767819463 444446703 680034070 636785786 808226661 49319420 291038598 861664361 978305514 707837808 890269593 711233651 827737702 191235724 410523343 882797312 980418102 991370735 992062969 356122438 980996336 9241913 896295038 751266623 979456214 4989276 487684343 422491566 882056105 234987168 694979461 933716406 947606088 466083256 938800778 617448533 760680227 645420355 706737758 644595062 685825619 215795377 763341379 926236859 972813807 576231038 922475283 481891370 937778535 235074689 840399261 817961620 829059869 14612329 457147289 326939369 964377366 945107669 948441388 494453651 533688904 533057150 926716114 613197346 795420882 264960716 763206081 520495394 522830480 54100303 320870720 468294391 697896265 567873205 604501306 396946227 674304327 689348231 970490892 669604561 995918908 125352781 709943800 399399403 846427853 574933718 658370832 647491207 718495959 565438668 706525387 979048568 984661467 625520051 746138787 837961325 912010067 909775541 928301479 233481851 896584272 220659127 702289554 933678900 941187742 27659148 983051523 401673860 963177702 276309860 886707689 901082049 955546214 815745455 963123668 495014577 632489053 434184144 483941488 766793670 897822329 803386478 824249606 334877290 719452879 460087739 506429501 38693316 123567189 995261251 999003920 653084112 925399960 792002157 916688441 33586087 692239814 441355636 887723528 802598440 890218270 548871467 643635080 895632872 923430332 493057905 709631146 223313140 351627388 932103912 940142238 245308545 279529748 556544752 587258611 121063876 954667877 558654460 807677894 71724880 599064311 815633390 931507060 564967496 856337077 461167190 900757087 832938234 852179394 432306586 923202784 938619507 963956407 996034380 996285614 254746613 883804782 787215930 894531425 14733899 892868552 252797198 366089656 607454580 819487415 435563132 626834134 56983264 456073295 592146300 965853439 544072578 837194320 475453483 701054237 589257023 810571049 974345563 994087438 603807847 832168459 536338790 832280783 728325915 831955237 246102719 619961155 403874941 763215697 577554485 834595577 247963211 545417167 641937798 853294821 977393344 983140410 960852589 989959930 25758131 314278169 581957246 634118891 885886261 895447530 404196437 753266202 788606718 886731720 769558933 869500655 562221408 915242767 234425557 367219667 399252244 903999928 125479657 905403952 95154689 844598090 725972932 857874498 20655958 763326105 148628654 896745142 449686488 596303689 107084588 834482708 171668319 567395951 899693700 948529318 231021649 255905960 725544992 806377432 739182717 991035794 776433324 995398102 204710094 582254850 300392902 325593562 904765400 969135783 540504330 881747821 826470714 832859913 274915604 844006495 855573176 992710451 185519322 755991266 615835301 639984619 113811013 155409193 368991962 647881655 920697740 964299633 593315892 606340266 205673088 381699721 954912140 992099206 67890655 662422946 964427859 978568534 293866592 494126454 306768162 640126908 702719414 905695757 173792332 395095746 652847339 835247584 216194116 468617834 758293341 914227736 159625427 219941573 341177554 681055818 860806107 907019594 473877159 702728688 862900555 931669264 466370701 854694458 286905821 440854113 569684989 761294795 31469242 895316591 253630282 993961126 332336222 431933192 58819319 839117177 877492923 936930820 528699212 825862743 896722801 980021949 233797071 710322937 208745985 990850437 508845451 764667746 944239115 946539557 830655494 962092218 711680056 763129406 840384142 900772888 103333111 264646372 160655244 819831631 377390215 490487804 50456256 260351322 553070210 623211440 181677769 393064093 176253506 329285133 595983555 721976895 288436010 729440873 53830134 391071897 408396974 501351858 370690313 800318929 51247734 736854706 125717412 582314660 747257722 757069661 706320156 890943199 882726346 921049271 723081217 990726809 892097663 917516212 316806281 759337965 695041543 781008762 678126853 950082540 643393077 774634801 429571176 456473125 442369957 688808932 850827121 924118696 202843061 258952854 716760869 874082553 208358745 826062025 284063707 296170232 728436572 994093370 101837666 200140256 710940192 985960973 64284182 516902263 737145342 903915988 458597020 902119617 870640766 991140247 898542781 952854521 796474829 996400831 205163855 880069159 687953443 767419937 548402495 868552495 537844225 654193066 848381736 958568164 199853871 764980163 111858007 820670180 531389722 653962594 777408526 913377968 799120984 828423843 948587067 970412742 904998583 951526880 140631893 187781285 921875617 976968311 474581487 767460613 214345819 290545266 206006887 435022298 737518496 748530285 929581449 998215294 776163927 921737042 454555461 813558258 595425499 992725191 585899291 857273537 506565390 797060921 344639349 632357401 317993689 853402014 277190155 317191881 730120347 994998755 707749421 781787346 265875686 757088088 760652043 877044176 773233408 787469013 630424454 828306062 409436467 929968270 116230568 519486298 494095302 644938463 468605612 999394742 322076756 544056997 146725353 755012998 156590269 158173498 668706086 901140588 790433944 877555090 131171107 474512769 349276149 885404898 491038471 920241047 283337444 351331114 67470367 451131243 901858724 939220264 194654623 813568449 113586494 946510494 645678284 978392672 588913046 669915698 576438410 607919624 248444019 562528870 407945129 433237883 229973499 301661077 324501482 412536167 648864271 781417734 635900940 636439940 630655250 854263863 341135675 771571151 628362682 935178808 422624344 620535595 926730877 979900641 562274961 976282212 243923502 986016319 990096343 997306002 717761235 726476723 53115937 275616691 937010845 954599172 987259765 998929717 250462539 404338404 268261302 645242637 25444975 334474445 760011976 789500177 748232433 888655810 849693162 920057086 867589050 904139722 915823029 937237287 303679832 353172539 937820580 981344214 749380679 955034331 127923326 249574431 694649718 878151305 972904838 988327944 968779339 982441981 184960008 651715168 723064969 741012851 588398286 880263870 278183694 810862342 497762609 986287110 907349045 938026787 394609833 722356235 24449777 638741443 59502447 508632193 947500866 967834242 503381461 814948197 365479977 907140216 273237081 830070663 271435120 719841000 948231394 968122563 227570598 873609400 863005277 961874265 621658204 712149215 961943597 968432999 501532338 934902614 618319873 668597548 208983312 550833186 666633556 731898775 168005900 463606970 488775355 638154823 743416789 783839114 222278288 810819245 431067997 541272332 595640256 831480634 528088367 914609321 356559694 922748966 584432919 888990547 136030699 686129282 377115865 559347893 9452944 334288521 998881991 999016710 57838338 623751586 685525269 836033716 620675123 761244857 504092424 998501371 676465240 773680049 249104865 650013831 689568682 821658511 317094387 761319868 378491982 471911476 286282626 498736659 254254212 586983738 687323184 811973822 416342786 767692442 613082613 857115732 216021581 251934508 884086102 999615006 771128632 854424973 360741368 869093025 144520484 659116550 443271992 599115200 24934558 816652439 929072114 938219121 147181880 161248938 279706581 626972914 76246543 833343457 851742932 942930824 191573100 583233880 358882203 690980637 751911873 992410201 477077491 482644658 128266439 329848086 474939888 494606436 750674155 896131408 236713238 339133989 549156880 726109455 826664049 834322615 999261956 999605056 762168239 828558807 246404153 831617015 612863608 650242984 191988082 574034988 254920639 686289025 358083582 629675933 265848480 456533910 697802066 852848987 463775877 592029578 500060989 812801178 683880594 857621373 96664644 961647673 820506922 871937973 770057814 793767004 14936384 424650866 766373186 862778488 188558262 854696666 589987823 951402935 667211801 855157456 598906532 730640503 604852576 863880436 620153438 828126763 295170923 549681764 558412036 781684420 544012942 591586195 606541492 923248566 682509480 931351525 442911176 555380143 173585187 576806240 387004448 673312769 90946652 852403404 548460023 727543679 452945140 736125071 605925826 795208399 271224195 753733484 18347244 279768842 829185542 864924314 90631799 189713505 903392980 922176159 312343804 396258811 916733293 961884766 424084729 505395158 969888239 978850688 679435700 716387228 149223526 625336995 90179258 911151819 958550519 977228527 612027658 819600895 748980856 964219408 642707158 742712575 959753826 969520729 571184717 746120919 518007252 537256444 257435958 976611090 326903203 335587868 829788172 875089647 372034382 724994590 286070819 931217069 588622595 837243519 258005307 414176990 673893633 743431070 951978613 960747707 288146104 308909935 356008395 357749442 946714400 970517269 953512665 958343169 23625589 310933615 523409557 836754502 442025849 463833452 302484166 969317727 53091970 693850430 23292573 551369422 935902934 966967842 25836173 609024057 733168862 801636291 615656500 994713614 106068891 708920837 611823435 844770344 948164719 968597747 357351233 961649296 363127911 928787387 91759624 841502750 125125064 798085848 807274712 837058096 6257682 243918825 23100551 444791864 155480812 375699963 301659141 454943354 342734995 418957448 100299536 491582775 461269511 759067255 449183670 747352927 40318690 759473993 882341622 975071176 227933554 936904221 874004611 948372869 142349131 493622615 379621567 927441836 502958174 544459373 573144735 632918051 11275865 383174847 313432068 987271357 513368371 656292218 541937147 891105577 849200006 862874091 979275650 987936356 154531278 910689810 478148538 516851554 74882295 978629903 797726 597662641 883965367 952993109 704406048 742331349 26235815 461290302 513305964 751979499 160791357 870370808 479173678 969433138 146845327 555956013 975870124 992588875 451814974 946438077 1444391 611032828 620571095 884003161 732756292 759883098 318445535 598027531 928788362 939918155 466532009 980125611 397319615 494540651 389227327 988162088 108165908 503871243 190631209 654473528 319290669 665601783 396393440 666571421 827671702 994407793 992667007 995270116 934463618 991706310 942429302 982891272 652423216 752358619 508601637 826976529 11010926 292487664 373045161 846645510 522465592 967189709 648544258 709218087 51661310 998583197 835737117 867237670 198405375 607986149 145256350 398863867 223111322 302675444 949292646 981676204 326082794 500886376 597672499 635727668 875707887 899962127 7289307 283735647 361799911 996702957 498449725 913444983 987264585 989841701 928104471 946467910 96890149 243809524 54572384 417888941 645424738 788049964 681876480 835650872 924434847 946267340 830279580 982407742 893618843 994261578 737300940 754314986 210050083 992562996 809103694 901193991 750496561 907384724 872024914 892114331 337816258 754924793 412649913 502541632 654351547 999434577 126916372 357991632 35594241 407858261 660605358 748401081 880954632 940343958 204530735 296885878 382136858 695687588 779565464 867140266 936270592 951058574 827920896 926007349 892530681 992503284 339830415 697229601 982561281 983208740 788275999 926927670 954121110 990626376 34673753 486287552 565471275 634488843 989878422 991370984 576274477 862753683 666325542 884921464 158253179 642941741 718224323 938355320 416847768 507167071 543656375 848062323 190734458 248720665 34895379 752265864 51620659 261247142 900436417 990105647 764399637 911069290 285130866 832263318 393087526 676474708 702779901 775545855 198360361 779598393 226329672 695413372 742215010 834020688 9470647 549023815 630907901 746617421 278763447 738030588 260860426 346839761 768950719 997097330 143974756 769463746 55480139 165354067 780766781 990324630 413035407 786465546 303039888 857706454 901647431 994737792 23965250 185379244 434029067 765162987 615250480 921098739 878186315 919177021 29607690 293745555 252999659 504099116 798807080 894944657 490389317 656093783 543163412 672305069 666212863 668327050 208027381 648106534 925051276 985029476 630079567 742444483 996564987 998453833 692989527 977719683 939246820 974147161 479160203 762539193 840834692 970034497 534705127 630802569 673196198 897348381 455522715 985224266 379501326 874161569 340504670 407620316 736677256 853865595 384818653 494308695 838656759 985707661 933747131 969174991 564450575 883577562 840156327 958033815 702626978 709089517 235237977 696381227 221861623 331557797 401085437 861938865 23042539 596442970 518916834 638348576 645047880 866521916 752885659 883960491 94197595 434962807 201436009 226055983 295518470 582974433 508184885 684570068 405931729 895550825 528901741 728211443 764022713 946531370 99291714 170367083 652017319 698685629 425795155 456905434 953274592 970542932 489756438 786923785 910088070 925219295 889297947 928192520 107023058 754273355 614663653 668696033 195789913 773644320 440979165 469458956 300805162 783420067 706672263 950164159 519125687 557646965 483262145 590731541 574065105 975008277 445957784 752947485 8189504 200505356 47243690 682291160 704841174 742676150 709262963 961016908 365609793 627159308 348936674 355044580 127445470 155009472 732140099 898344254 757900416 958264207 714224342 776741863 554234415 967658502 706613016 734622400 468316094 910636116 588925764 884737140 551982847 618967299 139777803 880587103 457891771 504857567 6702093 170631137 776487420 785635584 340366282 569896773 192075364 517276460 800908285 979988094 551088663 559132150 886718446 990029051 690894385 731221919 907796836 972199244 946826522 981307014 788050309 956268262 310721246 742400229 277386168 334249695 105965875 541710490 745413655 876085901 697059980 807588320 642282451 784537338 955239711 973229029 61228962 862772533 787229208 846431656 637639067 912245456 256999473 543771669 574482466 968313765 153516663 786597189 842597702 964652018 54710610 544221052 338321884 706294766 781858844 909057884 804233165 837349798 569291318 965822241 40357047 471199891 762395800 925375426 334170349 951368505 165589339 654774060 330658365 451445801 312139206 864592023 17251281 943604547 273229385 422796202 24803693 985866324 457410614 549576243 60082935 283919809 500542231 710370130 514825032 651131413 628323049 880653384 248315492 935352531 924346531 989678725 551510009 970309801 166563147 530052505 926927943 977731229 200589053 884280143 839809773 885453391 448713052 793474220 929060329 969708797 372853963 562123223 172740576 984804750 111171139 753242799 287347162 678306837 881071179 895461517 301398622 587760622 331910222 498294853 730018306 938488818 829837212 994568950 934223340 963598617 961962634 976203700 536344564 707286420 418825875 487793080 144322875 540666850 926492196 968810773 483309257 810247264 653042480 764656991 566730648 692845908 465572434 798838388 64749785 827084890 698501793 786078164 631573845 811235370 646415708 763115221 499617064 571611935 669565913 907790961 35792305 183212923 429003271 706863765 234003926 295384030 826828241 840858952 59383059 922257671 270393915 646821795 215911537 995892048 507558313 900205481 602286368 621313881 168886724 852443565 205907671 966653931 909721591 990938174 242599966 649983442 906412437 947286678 164266571 543612180 164824855 193086725 821368779 901338434 903016464 953858331 32024261 777048183 644317877 893394644 707356529 879738370 437954253 876343847 318641079 774904631 398272469 955478308 140737211 588221819 334561596 346022359 923087475 961030602 931786048 998558568 159818673 749974788 519955145 672139956 247814221 686778371 944212142 987352166 398066858 655926505 999094062 999216115 873718337 990063082 995554850 998794495 575955585 963500164 167424186 885175611 107996008 123192432 397568667 418161544 918053663 930170276 149522988 279226894 836358771 884015066 314994296 667297904 118727234 709539751 484579875 790717096 850547461 863960633 996328495 998245430 783470075 832520672 767054868 860323285 850409869 984709123 694348047 918765594 285873849 543572985 696974074 827350573 91965504 172017019 753244750 869954805 996124819 996142483 208722281 824568753 78716087 925023230 641755264 753843912 462799560 486466992 628631102 655904736 143459062 151549215 634515323 766457124 653419777 984129097 441786733 829374363 865687611 933527654 524350902 547625985 469835235 526598434 491303577 767593930 646978844 745094693 71265565 289471932 841782062 874964134 25255651 303593550 595600991 825913559 938988213 961853712 981577259 984438083 111554279 850027286 274477942 340475961 949977158 994475179 957195805 965426283 591657125 812577925 244754772 985818485 811003785 936893721 568619869 675360446 311507030 750516525 654455426 874859322 970738827 982188144 88274597 350356740 211043310 439233871 223631900 400010367 653871957 840808931 654537902 935728877 874596632 985053147 98331427 138221634 91406163 904852708 60727017 836492324 482533787 493511090 871421184 942744752 143965565 851516088 818765221 821206339 411106433 617450497 588799414 708585529 230628558 606290374 681372305 850010706 488168527 616839801 788705627 827644990 827799125 934068872 754880861 840926605 506908920 625975763 304650445 399184774 448918978 692251220 108685719 521044198 760733409 791120208 914609790 928517619 195588355 475239309 105814435 896930372 225805822 301089626 175750219 573297405 504709513 707693027 67648124 124187834 490348060 698809133 541594047 995903111 995994994 998294541 203608291 805809616 485018380 813417803 728775521 746720145 847034075 956965446 195268464 643597904 108611661 660800366 655252214 893402255 326098551 480773967 4015665 405241058 473215496 934061440 710724986 953405427 274634959 927206634 61360918 930009466 709730000 779690443 995103470 999633777 714149101 824353281 727757761 984206609 499438472 665872097 226756060 513543711 171900052 597163208 833182892 979982704 585682597 662716417 945058517 972457783 729641390 867630697 482689767 567802953 345315703 711492769 804241645 919125205 212764026 455259490 999199297 999654262 19790927 754510454 532812125 773400135 677005221 702575553 226970854 786750633 484120387 921526182 351684388 766950022 601300305 647967437 965348029 994242862 505469569 952832614 140181233 970095660 361832856 599073566 938252321 964902351 450216930 659174109 682967555 798111668 730176171 823787569 318415335 886129485 870741580 991377388 675622436 752045531 170809889 643952938 576210479 637138807 679549476 758569978 990100303 991437447 755033134 794076779 519046686 653644336 936416198 995219424 270553909 388025281 917573036 919310523 482154048 869521606 797673416 971212725 795962852 830117745 787314954 848834228 398606495 734453481 834838170 836779785 604613374 707280795 663678318 812856845 936946177 997340976 558712091 907181829 407668059 702527049 227040961 553353108 303227538 587743754 918123407 989258813 370560992 745726362 156906993 539523958 789132708 926611554 271987038 326448246 879390385 923472688 963284377 986317207 491628933 493133654 76637078 483369105 769465780 911875337 249582256 910505919 776319371 779839304 405888489 477195699 358625124 588569886 922987962 983574491 964734536 965503418 600720492 627583298 416595675 856178709 929046347 993225103 589727182 989747915 725613900 833288540 94739760 422477580 543952217 580435520 765754335 881735248 763839415 945221382 33690722 121501328 22957422 810247115 531897181 689108116 338494866 825929966 722367317 883957168 876284339 908462634 278702326 923439711 435704572 670323033 889762106 967655209 929158333 996134866 325311438 390277104 859134624 889610607 999241227 999677998 769653056 956694388 174330557 939627957 660706826 792721275 813321241 876702956 850741257 861338484 393990660 440037884 228301747 359557505 441774156 784217102 654041866 770847633 901642269 912268949 663844021 870484901 29485174 974076186 897681269 985951328 529658884 537854201 147760639 881415730 437683376 745424586 819111424 869306914 95169718 534343492 737375540 888708882 893529103 941436971 301802722 975457032 456665029 752450119 686415094 904297780 77588571 191784000 644241759 690829827 16390872 878015403 358701542 486635729 500455170 560060427 262961481 692557681 442620807 607264490 960896023 962733883 42624252 634783706 646306176 906766874 338869664 740713294 229049959 900673255 411932463 540311004 384261358 540396371 300379193 861568763 994678424 999312743 872277288 923296373 543470452 719815301 705325715 979964362 797637608 890288166 655272921 769812041 459178381 591694368 706798222 921888493 880033728 927643574 736819667 825651629 91383208 371283459 416504551 447460342 281230708 537015584 678728078 742334268 457505945 641573375 874131966 993723371 106843777 450526566 992976227 998967064 450603773 688122493 138235269 888618503 952615575 964855216 659906819 949793533 80616576 495142877 946899595 950251277 8261179 267140079 978918172 994648085 957147708 971786426 514741052 872327426 520702841 992312669 416272587 821942950 175896199 597118212 955696925 996767365 7743463 943978559 629334835 874120954 551363769 604627706 778724284 820907239 303538582 453696601 265041105 997148101 415888404 731186580 864332588 983484958 916546455 943503129 515733379 779426354 266950008 780931392 887482546 996430759 515591350 728393427 181649612 969237804 264639072 713725622 893031115 913940710 312975458 491095926 598486161 822019184 986617951 992878142 375001192 934895511 659907965 852801169 541859979 623486984 361910020 931854677 370870409 371029862 744426103 816138135 435853743 725518340 425473205 644123022 923780570 996314735 166721301 760477124 300133579 668171084 626268628 853377542 400118640 831077151 743655592 968899192 217243710 451096734 768541129 770322580 977787321 986764056 993888 900834513 966167420 981533534 426244735 768153386 485099780 670773374 446553878 568186386 243132489 913897470 685241187 733309417 603038835 979865989 725770341 759770150 659641249 875544203 129837986 758244376 800738191 818306854 436026849 922701121 832270036 931017288 316666775 713197202 481086904 948133024 229894949 739824957 530794623 555187154 271397055 334173101 291129873 641055352 380864548 665989744 762344249 999069154 981642459 992223720 488863803 760387905 314406516 843388370 767995995 855845066 595764670 992844856 753249057 984001542 585030993 716920855 80755726 783887866 114149318 135602931 877386085 957620215 341919788 359575583 884022316 960576716 13868462 618128880 259438794 535020526 247559517 412074026 265537382 605705554 392377628 487427611 767105783 808820546 209126587 221146797 50703748 175673205 264507997 682110658 53532220 671814926 781415819 875691351 448048661 709010735 858263236 937015436 75214381 693120990 10783914 914107967 686963847 708159293 269011383 908371620 101373778 660638221 700919705 732791995 501281943 653550891 761978729 917003618 267528403 339466760 521130246 648317229 881819282 961589424 559179201 904722460 204252203 842715389 177368967 352653196 619241843 866012321 92421267 794505585 485833601 499098612 24221186 619607136 794714387 954264735 967444559 985882592 702448470 738538610 214272983 975619670 376472301 742537247 875743350 938351040 701283817 975944171 323904420 564935704 178601982 813621044 495669891 883148722 82973713 889344010 949713213 996160391 312733609 418207033 606617462 764599347 282806209 880257041 437469944 831690225 167313326 655020749 824033614 999963255 393571505 636748567 34202217 91290439 273642160 667164397 875273484 926738198 262079750 315473978 333733914 730014951 706283899 977788681 709471081 791599474 950621879 982252367 583155719 645469263 131340194 377406847 913452253 978808417 412487173 616333597 541480517 805820593 873213243 891678341 958115561 995395284 216089290 250471880 771873700 778401880 360548167 611874960 155545190 430402376 673180869 916623191 597159735 997836362 358817922 587718457 612850931 718992955 894053911 901886956 48505630 876764389 997906418 999412928 446244786 770195447 377370234 892480654 31254263 754046118 888548715 941615290 725515538 947571313 373485979 430634191 766357588 985806396 646280776 939246783 433711557 536392057 121955887 751004744 564628615 803896273 495446044 985470616 67768946 746946868 300850828 453502033 848594168 858404091 509137021 889386498 174003710 986159605 370301613 948247738 662337045 751144901 714153726 782729017 679910889 722760268 162658094 259865589 446468927 791931510 352725551 502155143 125875222 824255949 807356265 940703788 449400762 628614241 992561769 997774060 276529573 769393204 898972875 925626773 733251233 806028304 435488615 615557741 820110180 951216465 760183030 851699506 229319713 970085189 468222872 715248930 613209422 797129952 723495325 890373104 361854066 417059511 580309198 894028434 650175012 770816721 887725904 968292219 358096158 459952290 399488081 470898489 652302540 723754949 213253655 943126556 635635723 860984408 550489939 679141553 408846476 954181506 544747030 882141980 486641668 755353272 777923714 954932464 763801940 808695430 882959593 904513330 632160317 833345225 93770901 468369054 550310207 777562098 258431666 925127447 831130324 894577579 139841448 317030838 487953267 627057191 264170608 326726391 561739520 698271211 63280061 984520470 274289723 865527613 4260576 236810789 451128264 462719372 521168967 905137647 147778760 424351197 744445868 945017258 883319305 979273718 696518540 956167137 916967926 976185872 522126422 730018269 226700461 610873511 737191698 760823176 871243009 931270211 940605267 948624463 748190964 842177809 98228286 857448584 903634225 917901578 814421429 869629566 676468368 999041395 581194771 640167897 627477968 914772872 919833062 994550970 769453699 990273085 367224906 815831067 338622594 544765450 648417601 853349606 903218321 903935978 845782706 850716910 188523992 716431640 707735646 957918822 57235390 304733735 58670446 636144379 444558060 895274108 679012560 982424134 583109109 702704424 359714714 452576497 708533257 741735422 652958116 859819763 660560969 664361166 192754780 304776522 750744191 977842565 25265451 214715948 52395342 119666255 262924855 424675753 448816732 544429386 475619524 956538792 96617644 395544155 715791409 932813885 639152901 659008559 450346695 763439988 958195247 962405901 367931735 922568360 615153893 852869223 569430436 839933704 774589768 976017558 759368133 909273289 628333511 951251954 571343020 913042594 575410353 874861497 975700966 995318006 31469886 479505710 651320452 898890269 982220284 997380992 315323684 345952816 575359478 934016293 342821865 399382130 55519264 879453421 927676052 994970615 834918739 889055937 571038129 812502562 739556535 765217040 943168039 952280431 991419260 998278275 729679388 858390399 592876145 606444822 256697102 792418728 415676988 833527544 291310037 887365235 76204292 598784763 975833155 982445791 429910588 730552947 507570747 513411560 441325718 808378178 693167709 948269838 964322506 998161177 582356299 868824032 804373006 924401997 959636699 986393626 846280005 944702302 745300401 823139563 148848856 879952095 915780638 927120041 333732462 334991470 399053446 461651429 684296798 802977000 888624979 917197372 580995764 911779109 340424071 481333960 767987034 805147994 575975351 623160134 226230818 440107041 450168797 988207654 546997710 579129318 914523036 985337917 467418107 964055016 217581773 632436938 149397915 786979023 866649516 871041542 152440445 875754827 206310638 938568482 629631731 947840669 404822205 905088392 216523135 640268109 132825212 804757419 498305813 593412453 921840507 993659787 95538391 534832207 208377195 821473240 73511211 219147583 396489564 699351609 819701548 966806277 81124532 949569657 44455547 726900254 277983095 625428065 956913030 993005480 828897496 832913161 334458110 655255480 151947653 896238338 946573551 984149603 813361865 825618799 121023186 440177890 568997797 618251673 300154386 666600619 336412767 973250870 135492002 633206328 961005289 961129399 447509967 931337827 15598615 900751543 31085908 505209291 413878126 506842205 932425249 936057937 454817229 474837503 891512912 959163551 637734876 863203544 279798694 635602590 824178333 926915647 783900630 896108452 161133979 386507367 594216348 859913787 75073896 450989085 346412108 546395762 825490233 989830378 915934003 953854302 350508629 352201216 322587010 447292661 940890526 955098987 241535446 751962148 345769540 554025277 149488919 631070670 606320794 673348050 961515198 975653993 554279839 741540826 686333122 950651549 666390048 697272216 448567081 503451778 119947677 715006881 17021552 219542580 691475990 766999638 178455473 837656860 274139614 345472888 83967819 871796472 82525480 837233071 670112348 695584864 457512551 745874298 873222602 901265630 654014639 967571158 81740642 538294875 30600971 665364841 51437459 301160239 399394185 564906704 15361818 77021072 230789798 791264811 853797937 882897723 123279552 281422633 991918049 995160155 276519736 487506910 994839416 997899043 777948090 949127563 845684813 862551451 70439688 603154247 716884968 722599310 969328772 993748781 75673602 977957808 728347016 845518006 517491720 678292857 42610833 356255556 972339796 993534195 807059274 830039310 755010312 882516893 751385882 972639974 341982910 434425408 138790865 765656952 420954689 991003843 14683824 295280931 967612653 968817824 99682459 743083008 7999512 791603469 471221327 854772148 358966152 932726003 693402961 942559317 822036122 944141822 30403716 717747663 616609557 754895607 691175904 889068051 838424012 854700884 642373294 651101857 339211242 514655184 784537999 837671822 627915646 697146412 602170236 800322610 630860871 661522864 523975446 920036403 548685059 745811602 457203939 835628566 401883465 794022756 25307214 724486290 557874018 797408708 337033529 609981522 722189178 854713941 846635027 935631250 561113626 793265366 497198165 806537712 770043777 836876911 35760533 424181254 405819108 869222136 661351813 801908945 852118469 919348018 334657452 788037326 111963408 927395837 126739073 341178617 2749045 108433314 366189 229380837 790301871 851041624 494727384 943447687 33306794 473825519 761466797 849480953 780623461 878637435 329206129 724052486 644557456 728615796 493628083 527018384 673619087 772863572 308330257 974404349 83084606 189430886 416824101 490340703 807991872 894644297 172987348 883591116 66102412 272064524 749645831 864584385 472622594 911483321 122176310 208627755 362022446 976979012 194877310 770206092 4016491 940380931 673455025 844057362 788576476 913188360 536378239 916262850 894386713 972403684 882408278 928071920 555104865 715057893 9788689 722302951 286596971 478997778 200279816 544803399 740513402 781848890 920880118 988553120 289884098 518500650 766880849 930369533 807156797 920342309 963144030 983832148 306696623 653735100 950677211 989960856 16799683 617026809 463421893 729889245 925401435 977329923 897565947 910818367 474602864 628863346 201984725 702565844 317404075 817604287 282338787 892469263 435737600 581820462 609045264 772024206 761075807 961931169 820203551 953443889 118243393 811953984 959658031 999266334 301602185 657494584 536296198 642352237 376796210 510249641 222962410 481100406 582902380 984910835 205584059 336643249 537963681 673720727 641770230 770040647 216030786 676982293 308022284 363166671 288467669 773816579 372156083 902658882 848140369 957717281 430121648 911372930 719273968 985131178 556303521 783626473 235690931 953648226 912921625 925019016 785114559 909693942 261578999 690174055 303699434 502147635 598020885 877480854 239304487 885562704 891305342 937278799 440617048 805430062 220437706 494651231 347300607 601154770 765071645 968963727 311321674 728856807 596001834 621830956 264848527 976463046 499446993 557541990 921505079 952104644 222729014 806571343 499584938 684781215 576559774 867968375 98632602 773483355 423313624 936490579 34193917 99532400 905227209 918144922 392077247 623863399 476647015 487392980 702607999 863499100 399748588 858957182 991387531 998886569 618174906 927524711 496385688 725489007 839535418 964497566 698514671 999354896 142326942 687172034 309998664 546696569 126041077 298659182 36052183 462942709 311058361 377798384 830482835 941439283 518236061 582102275 263541297 901702756 536888132 808441832 27492724 678322038 106745973 399741835 495953592 910633628 260338543 703751773 927892155 946564720 858404841 902088664 38596713 112552575 56583059 391708657 685643560 782111402 72158532 720638236 657880791 992904683 482424777 796055522 953344769 957256744 391679345 535102028 530768749 949235339 906767737 956914916 212080902 520734212 349245611 603793571 684984602 794932626 775963737 937626552 21107191 661097232 613104184 894935987 771745552 774217559 886165973 979161963 692180194 877710278 711940677 959305763 619122990 667715617 305712457 958522618 436364244 703272453 320350691 966043863 252725854 615766813 32611355 119197688 978422747 988596919 41294694 84198352 165543775 943593425 925523974 956382334 565517167 802052118 876792392 949363518 864338486 933072070 327140594 696052311 225607572 287410348 714345419 802650932 157945864 794420222 646613386 837345234 457100561 639262960 89294108 853887922 411293119 993476856 715875210 959264046 765826597 782909808 928560826 975494895 741239627 931553423 918343203 973231085 965068921 980196484 146377947 793265860 202781009 842460416 600720647 637079939 799750483 915142168 837030268 984764083 344664912 573305749 719644756 793147677 606571353 852398263 653611080 732817794 228727518 801777033 772580489 955020068 734690745 974284079 84148764 981826009 115947090 428042902 442408997 861904147 471613904 851209952 350528906 728178482 481502452 601576824 68639349 515227426 646364087 915514669 282520795 700569897 530299613 760499587 249795969 579326671 110475551 506436876 886703926 971825345 505099021 762442260 939013757 971440668 184883598 992828825 55685680 617698700 257114225 780173010 453916932 903121560 368438267 780499310 974862493 983245402 468144758 515068718 884736302 971387320 901982960 915760841 991767446 998844262 759130719 979678642 169195130 731919259 267491418 717018700 414999148 664933862 376188383 776646815 59495990 826921682 341566579 710236707 787950509 906853907 979092765 981768302 32388492 976994483 630441464 667583148 530083660 915702077 652817170 673962582 572418229 875292466 521529040 541449626 581607093 883548765 559819875 638371889 291080350 981634137 476243638 898728234 663314411 792585770 86708073 413749901 929281368 968816412 994366117 994494645 519727396 574419170 17382708 869418877 667710050 869944146 341127987 640425247 234951296 959464266 407237106 538294913 461020921 532099153 544604461 799423848 636615936 901987694 993482723 994595904 853987741 936140514 932901874 936291862 200775744 628043711 487952904 928639652 46819709 514473495 416633458 904765434 650921605 805908006 514669273 928251721 278433586 427470074 221218224 424019663 386704756 640746213 951568938 962827088 827350966 962342992 509888885 737836515 996795877 998604558 303799344 658093345 647457463 760944332 792313953 879037672 161728090 483007237 444334363 972845212 700703720 917889702 633532976 716955947 49217798 178537851 47076506 189691074 259396764 592639271 485226272 664865003 987890804 988597511 890977430 913298643 96270859 900092862 607024697 646732415 566771173 732020950 87972278 890208142 493899631 770431602 282816861 293610876 369524901 485750397 157161405 556701249 389349263 834533387 672783510 906040195 557926373 842669421 511572888 526048523 229310875 533774158 80219214 470285957 207053655 398543596 663949393 669043520 28897887 120454885 964612931 985357183 583196850 714197166 97913988 317367037 592816554 971790187 719247 866810940 584190981 865318085 213930864 437473937 261781109 995802542 575797758 867555973 731619748 734989053 962335483 986727948 806473724 899465536 785976869 828326964 240090786 266379066 188589724 604448062 421716336 747953781 639512496 783569248 583037103 800620120 285203670 543070117 593642623 679760087 289053927 734479029 975971623 993015951 149313459 816605722 466912649 467002531 525709261 665588201 794260277 913171951 868806047 870372394 967907121 993741384 78227508 311818602 605923011 733344938 245578914 764415424 252875522 372747176 310626717 623507091 78120025 805185934 466615161 554775192 283252285 462343973 847549724 864350330 687425803 984547766 852570284 989795290 159163567 451093841 138874812 724469399 18405077 881766196 765721565 925564648 464469881 675065585 416622236 987781541 976273620 987452526 812573300 926255101 928385810 958335771 162015750 887400231 408901880 625560678 383082380 715948833 923613071 924623546 882484181 996780687 687683424 828405973 495188020 553935999 112607385 725745040 790964420 991014395 34996702 157238901 321140957 939544478 674553412 722335458 260697507 531254506 778233105 939726355 80273327 325443625 115129852 774827401 952934349 973633780 26401990 39646230 308740540 503018267 105472725 481538006 543381847 878011953 967365030 971972781 662087921 883817867 366633510 638455553 323308250 684555751 446566586 754147622 283146672 335546666 315950457 788171050 936848970 979325832 195317710 659527561 664045018 826013960 769791581 837622909 409741582 966195559 927321139 930208991 83649240 772348931 65609383 293126250 584901785 816803143 659221911 860397192 258225031 541289195 436760991 731239383 335516140 542366752 587081433 851005853 931050334 991563579 838512754 991718440 352656874 423578465 559534917 832388460 629229209 833670200 186360065 867307454 522813287 591501234 555721099 969817170 36618511 161609829 307106473 924606926 41539908 430759142 118758279 979317310 6069976 506635951 127658762 751742883 861934833 946220171 211147294 963713245 421359089 771779575 233953976 315758689 842191962 907169776 450337938 482330620 937744727 938210447 893025869 994709594 975658079 994675948 695729758 856375341 703268414 726483167 561409017 645751949 48980018 126881191 273291232 965318392 236630684 321641622 375565498 541409752 653311315 912207685 156637881 213446912 463464936 824077078 987948139 989698427 85705117 249536327 815208009 818464887 792320986 982422442 840941201 882495789 237837662 530924975 388424984 699843153 553416168 690603472 397477379 543600526 508742036 528580064 207109995 976352269 824783958 835785216 712562235 831915584 655467436 783759214 540908820 613824669 99553031 305044177 482075103 726023922 779300731 913007925 681630935 861446825 101339707 755586180 779932740 998517626 230361956 711836073 484866947 896150751 343515686 828674720 192654606 307030262 166459543 710991863 909284102 985007543 869353739 875946848 580712789 920766464 397415673 721601558 641430485 946276316 545187805 986016962 121183329 279885531 717017307 745168503 139142351 723198499 447753701 909914197 634072178 704193025 420098812 653121378 739815345 927002940 148896174 798673139 825309143 947656185 152274061 622251507 15896647 794341660 627243085 706807911 90723707 570121930 141953833 644454481 925316657 987585678 474468203 942921821 652195792 653002416 366959008 956141608 213619429 559280246 733754280 970243969 361290663 544838942 231846084 334954810 195667959 453781457 363533676 889870070 246356790 385239845 491419403 520413146 596532846 855084417 435249337 540500492 847221868 990734715 288952651 453059401 885450804 995333114 615830443 988737023 912967399 918319668 661091617 669978089 693559345 970799989 961336371 969652775 570736794 692562826 494569061 984282368 54176971 426302971 67712640 251760168 138263641 778759511 579793415 944969537 985808854 986743437 514315656 555144466 42953431 182915188 152660907 983760508 135506951 361771681 354426847 660026574 955413368 958235072 799807996 803146257 965640905 976198620 338272631 451510563 470817006 927917594 415310526 459895664 143277954 495641858 717592941 719347765 277992238 635385168 67916012 373617920 420054775 845363792 895951578 984425720 668842378 879992898 656935423 844501806 800319073 987162894 283710724 856911897 949708240 984336240 11493613 632207826 347700952 740679475 958338623 993107375 893794663 929288203 409970391 687459368 344092199 375519852 509975721 895140103 246839117 354549392 519566538 760891218 755406874 932595935 543049321 863909900 389425020 558777958 328634234 562670908 131582486 537593858 928685379 937664818 854858732 964064818 900324043 997547926 883529626 905429187 105479019 143176587 393042011 476865795 869113558 954211752 239058144 883633985 253381869 380984751 508016316 785968736 411631359 452071875 847945273 996198280 164992831 545000710 270130879 801948018 193549010 626013117 771360764 819686111 558745537 593274766 672516239 688956739 315511247 585038472 98819618 819129581 66507795 265027021 850199776 938944114 311898391 532047507 109235511 739748850 827736679 941224944 995110981 995392239 838252910 906502265 873925042 972833425 994300537 997527610 670062450 979578473 50747779 348383275 548208436 620181107 53463461 345133876 233627872 536887856 540672129 736084607 794386988 845745356 528656470 705260596 533617497 925734946 650188896 911843829 658504067 724825305 615755620 661306375 643935878 807090721 756482340 948829930 834433400 853264143 920460333 928787571 796322058 853464875 636761545 885720878 808613001 827525880 669094501 843348910 734711531 807243098 348279650 736973878 547390090 937737720 529557160 978244007 247337308 267585028 672872019 918101639 682170890 985965994 502062895 534654237 492233473 778477308 568064970 802473587 553018057 963819608 47248300 966223890 647664019 778642590 171615548 261188895 50756506 600810305 55482757 145191209 861444750 938036490 969933137 971865143 57865803 874036524 381378202 518464518 592800833 863661882 397821966 709145362 599333995 978712875 801792300 920641479 382031496 457497269 847778407 902224615 124810598 733445599 422961068 440900549 202125582 908207569 362256824 479284299 673455702 945486307 13945631 676345364 241092473 394595398 703584187 716648392 259297703 333329858 705535580 971917587 727636728 989069138 167728930 442818849 445908228 752144416 318865735 341922072 226969493 892577019 738906573 966693413 276968596 879379973 548040581 704325634 283041488 920884910 810572657 996125637 754022160 800009734 429634269 633776570 862683681 929911440 343308022 575786534 804574406 879924756 725342363 768000155 996263093 998823779 874330023 917886249 779502368 928939612 306894961 839630214 209790220 308460098 757607321 875036898 46306043 287979464 836233309 952274768 930337605 965948584 940837057 943706391 553557853 937495021 948141607 951100646 169573666 287239708 41469256 856467948 632043772 945662322 30741683 208135735 28033412 838541803 67909747 715149821 904182574 917528506 526998237 673960463 572693306 750279887 793168386 804431276 403204664 839072093 953449431 993469125 298088865 341417012 512525813 754601765 51789921 253941479 610264659 853145959 396223913 441491643 689827053 845689099 121350109 967172620 702726053 726106361 754436649 767810091 853514092 875819327 571131190 859988784 690361936 699597143 655997632 846566412 367336329 371484558 680320867 998069965 623448658 820523829 387581386 916747639 348882016 612301647 359546385 460312827 286937272 940494940 391864617 403476087 73460291 787729807 468492877 655952417 98105355 275304469 773453946 950848440 929147228 981940217 41355075 252793485 570875597 715451182 399917080 838566697 664546876 918952795 12523722 242983682 206212011 392092076 652404507 838158243 92086920 795697537 201950569 687716340 971857822 997008375 973722251 981263977 798116449 799800478 663959421 691656586 32951718 233355940 836266217 910229620 932673584 946186167 613110520 954848371 10986645 199715024 36116766 850506211 887362256 893770618 59665656 221356157 471509594 983160690 593106702 823882673 829159757 939374757 855660710 963210366 711606686 992679911 749190059 761490444 802231281 968573031 268564694 664685460 284226130 677071252 263702210 986445077 862070104 996584628 277105049 327522489 249688166 607104705 327908732 959959675 74114346 853089885 631094159 952627720 658290412 741909765 219559982 577289234 978383355 989066413 555139323 591657652 782011791 881736615 479625973 834885001 313585790 387573705 684260449 998712441 301070037 943484447 726323853 930337569 323729772 856329856 920647986 925280240 358290202 617240124 968460287 984210580 479640483 749991799 664988442 753340647 599244166 694532253 973251370 990798632 576301134 917387572 953196967 954265669 538829143 701295777 542285777 678005813 700623134 816089785 344176221 448330805 304386068 345619029 124200869 643479115 807556472 865068319 686158938 926398365 885929124 955251245 122552881 802948344 151117693 518356638 415316115 652573999 403823628 965808791 390236609 436705708 262414610 379702989 510833189 626337540 191228823 957360782 470457317 734936467 558064956 996399307 944972925 966518003 690975708 763883255 196407343 722387486 157585973 245725860 376638064 885969375 84539899 622613674 257637199 745568307 705361278 769476868 645459366 657042982 690234734 703931407 114682328 869674479 530833367 675925362 598651758 844343705 913056463 965269933 566026056 622690086 794531936 925696056 682711707 744380079 11918804 915899200 998677351 999370361 145058208 286954734 9831530 504750770 710433274 788988988 236068260 733642464 792442979 817968979 185891085 625508183 312365990 431394590 633959189 736775486 238124127 397380911 796206914 965692238 424794455 600438710 491542148 917330257 282421597 917870066 317753675 960880594 336698301 867487220 749914335 924409550 353124169 395267778 536561371 823773050 575957613 856189966 574338964 904197291 576226240 593647468 819359258 849180846 61362245 133951364 333060336 818536142 524130974 748357904 638242751 717661504 216695059 536669777 188863700 947744564 304586700 373676227 828170977 948691019 158466623 849010103 46059492 544831832 816256550 986002981 217209090 225747012 30082018 843926968 348216134 358064792 487772058 530635690 367418592 657319186 498239867 938448374 390094421 754172322 100899571 380484337 224916062 894344401 203584604 306227561 411053626 840866675 895238026 941521913 592153044 741142342 853052305 907353962 812397002 915454168 430520759 685396287 4026652 452326643 573509079 814344723 202570702 747253212 379959495 518858684 938881774 943326580 665606759 945406902 765162576 832632326 502955531 738857021 979111973 986170531 784455774 997334697 915916693 936409822 171735486 609088950 148005029 430997950 481975369 590284936 422839041 551293831 512157065 860246526 966678068 998589051 666292152 697295441 750701350 931595226 124748880 998855846 601603501 920540791 409914363 953059723 700103689 773833789 692039667 907739811 711930167 926928055 391209601 808959584 689491946 866661569 643187993 984228469 306169297 612059238 73901552 177066110 679600111 905749936 353426702 817662554 277976576 799847500 999191174 999835820 615723638 988868722 224173119 764993259 117650403 836774169 381963503 771967767 842444401 931513193 757932693 768367695 331886780 924425214 665902220 838159940 113926816 472601644 896866064 928424358 704766500 866547145 126001337 658594824 4938497 223788617 404622177 550308277 356327721 941235392 769682226 991216655 505245805 574658387 25633328 623486628 129866854 185794978 328600634 757880667 970650874 996963845 480820144 493730164 473741450 977688195 165597856 221480845 5423897 459864786 556566310 637323247 315836094 872455463 957238331 996726906 46107334 389878269 854681202 922853811 759471396 958593658 370282751 482178585 57545619 488038843 339482210 357310628 881071775 926768542 554690171 805945768 869399763 894495773 514971957 878969250 498991694 518711334 437933373 632621342 899745792 988000479 769151093 863425901 361074476 956617173 360853605 465850582 716943315 905337890 964098478 979983500 958234159 984303198 398825462 567653970 683501607 684749687 479823011 842700204 356032612 574692123 134661566 924215613 933107350 990012226 547034019 813470552 81735218 335172696 729232415 911375105 845778014 925045348 654994053 727547816 935963807 960896219 258089786 263217210 587756807 805770532 586026199 660893001 944768328 946985634 999572070 999719965 237491806 704611175 999430718 999851644 1676297 598506421 106695322 333722802 874758925 925192880 164439522 980129074 350692619 929380543 887669270 984786431 471626619 905050535 240629082 681753404 258161537 945680316 368487134 742789510 774865860 988170318 443906185 645150489 673873471 684450081 529841609 872256212 751657587 958103030 43900543 423665861 643191115 930783125 422828084 503859191 207345070 417555464 80199664 177733898 69153316 834833375 134669813 516444563 357197101 721839798 807593111 905813472 559703237 726609183 760557303 998430666 98432829 247695722 228636980 864834789 461677028 714969982 384437104 826464214 122798158 620256038 520997389 819259907 138304943 559543420 373253914 521604623 233816216 306505820 571319211 934485534 328078149 398626907 125581003 483731272 950565157 981721404 151294932 743640916 129928379 556546979 325549945 543360408 979765241 998235736 542071217 977604455 266315296 563560243 288350002 535333707 630734641 789021945 485632550 915982498 911807253 953656218 335113980 588560881 362679535 474795268 467369918 986596720 738137969 951572206 165683459 525977942 778345827 852739784 439481274 818386952 307315972 359824156 445695813 940321346 729571491 787041295 556091342 837832726 799184616 824028219 551589642 790085369 409115886 575538918 71068803 436014346 672377020 843271898 889592207 900247429 174993845 780207861 24153519 518761544 429848499 799110692 439113892 909331496 556357191 708243772 738083166 827232410 640501715 906616526 228007208 492369627 305148147 594329812 165927336 930667700 225419904 823011241 611540407 908169983 398133590 431521129 824471295 997997942 328457163 505274311 529921750 745862959 573762735 950953628 832077392 955108260 472320188 830568908 759808241 812348461 474412340 654591905 637935870 726269108 431324825 806299973 622658680 784022988 676832654 865276052 152213397 332384037 487479521 614420492 141706918 480016572 477639278 543075763 841006153 987335532 971870747 985957194 352119800 822901097 79640308 180816234 991286110 993010788 847824143 948131320 245284234 609298124 418707636 658488638 700625717 963351083 708243704 952770971 382042223 877654917 647444671 756791043 903107275 952898101 491815015 697966664 248564764 691601696 169085552 335113735 488022267 704107317 830640749 862386550 71334108 539610392 175490384 695037602 538364550 797158466 938491500 996620569 497512130 949597388 381075766 640104538 130010281 497824377 790145920 891558089 672292065 932921827 373641932 981238430 438717064 442426043 870354297 994890395 189860447 868423981 103918496 164103104 499103202 771255724 324197298 676683737 479902768 936199907 36219404 637476096 458276742 873424071 451969524 470588541 598234875 935859264 644588300 881052500 901410368 989715910 720669092 736669444 839483859 903207578 508658197 603885686 730500857 884389504 969450956 997603808 301484948 650946083 799308266 990458683 334574339 962324220 451200871 999443373 289985309 618229719 273010365 601679107 540523460 552227236 71947509 856156881 577120649 817209645 871681398 933642532 75536329 405266643 160258545 362921081 308140161 359947275 297545605 304404216 393266894 428814560 362841018 914874552 58551641 885693416 644803085 759699598 486709893 948819828 670166838 812771699 330875772 992702617 529918712 534956326 173091053 898387561 959229644 962969112 615408095 967171125 11334276 16205798 856724316 908456253 631684737 973682139 786660878 798386391 979854663 985865262 172114680 565540904 42752919 318653507 794625458 827292298 954669870 976257910 638887419 777487869 485511332 584790401 401634574 682838702 646166612 960371344 14328324 537721221 246688463 363513674 527593471 551785606 653243794 779107582 652840403 910363917 942610939 962489287 800135291 851046491 861037759 887539935 628820634 676948917 217876506 684087196 881363366 923060374 268341516 343242792 563858457 649527280 57637405 507917224 397018178 938651637 799474184 907128080 521805034 828133249 513013514 826921044 795583435 954870778 669157521 701185377 104498337 761120275 183314921 931315298 702229973 891614467 677840430 748534096 778974736 842892258 842820193 853007387 848928959 895234095 950359776 961716217 32331120 579565481 195375713 216322507 327438707 473440383 249180148 958892870 854066816 966423782 433115192 645127232 747537769 966193519 178792890 326187427 235174207 841494542 328815323 498940423 393694281 528694450 13567974 246565391 498954026 699841089 737936247 934053057 964936105 965682989 237105514 966085106 735363399 821315312 159214792 265706480 192932095 575460912 713445630 783666652 101288164 388312311 180365346 211717904 949366493 972523954 58221289 239118061 123320349 326364084 817816568 882382347 363769920 652763378 926237590 942479074 5944987 293337722 442448590 567009017 243753814 771533871 818840198 889580538 466112644 781896164 987050405 992319092 806411530 861898461 551424229 593309541 666486188 984965118 937475161 943292517 489171707 621408365 853431672 895628804 750419235 969892298 917165718 965874987 482362830 941848679 300136066 905595181 204405652 352936426 162134224 907079446 131249981 241364901 104145946 560745604 339782824 682614922 239013578 505531048 722035986 812237164 816027042 911859816 57028738 572555503 713280883 878238874 608632804 873270771 268594613 646582818 100686615 538871517 292421236 797017730 969750539 987453216 175672784 585603130 329538161 455642314 642072060 915947545 60061796 633656973 281478199 647729910 378538559 437210462 871752958 889566762 793006650 884585873 468124675 671110833 970450808 994372508 92119289 400515642 676412474 793655967 666298086 844120533 134454364 826601183 675923625 818048712 960244327 962372648 2309248 246331602 337515763 636651670 248648827 928726972 411561799 643254087 382053926 665842948 743950036 758702810 37377966 843242977 934633057 959830514 131410775 322454635 559813196 836505298 234008718 745996895 693175389 852871706 638610635 745519139 124223286 218168706 234062473 870631675 899895710 976681411 216301421 975735219 278682076 753800871 553615890 854081787 227600506 404150489 204692580 706188973 131449190 789566656 89422192 352389722 343168293 839258633 554320890 638257996 783524927 938486281 372992174 974009357 45626422 813165604 222666696 979914533 226744539 309530795 755800176 852750322 599178017 714662847 920457475 938743402 882490369 898039611 948116138 955239652 548672176 609116838 823294132 979554646 344743799 354188216 832268613 917384695 341224867 439058726 358831580 506713086 755175344 947124207 531533805 884605871 880096717 964527961 551294734 552419928 964262376 992143628 901429250 954469105 156047439 912631700 782794241 834934201 641302900 714814156 923229655 960809033 700311121 778095075 708834020 953323637 561039168 958567373 294611743 808502115 668799218 690340375 710580162 998643982 152399284 157540139 444652149 700273946 453162776 708179229 840552162 995495245 19942908 275716140 818491601 847647769 436904324 633320871 937412472 954060055 837905544 883165632 613199043 832672431 386021187 813993502 564597697 684638778 51696604 667425737 325339568 813873699 522470827 538579324 751815239 887689960 522273122 539409994 543716954 620637223 132339550 335963498 645212729 795678939 207935127 749139169 786088681 905643781 654457823 903608575 124383744 754590256 23092119 72996853 734906579 849041914 259987301 429606120 130856754 520605505 52641858 849685701 165738425 880713571 819096840 825738685 448398317 985849111 865189576 935330219 130409496 464313296 706830995 794889260 168798510 252337956 318290041 834688514 889113200 935566173 752349989 926147496 492072786 642776055 142867702 600980540 8682177 111730382 889303598 895457040 396325838 773507379 589809135 785283462 291698002 884679777 650057862 980735024 125047631 348483986 698165742 939909891 399577074 991595477 518316998 627055621 794976815 860585861 668701887 936803499 724202562 847859855 9494131 638187071 87261764 167484249 263458866 994616909 794458111 945423791 865545472 980968938 620530057 758257573 873011685 909275110 842786635 981715419 767787691 890782853 988704582 997678959 830896921 885120875 269048882 967988658 367190819 749179888 474559841 508753945 893344158 939240963 586330881 810303429 655076607 726357839 856879457 869492984 94158821 216593838 973209794 974965029 515477900 621679780 979018610 997103210 703097207 913608645 644831219 817741525 213544768 371745359 497373807 986047699 808324074 881932475 94098043 796246848 927237418 981132586 476606386 538307626 895125665 951563817 132244908 191250283 444985090 784441122 809599036 965074569 379943996 472291552 827331128 889268045 479875212 729475001 254198913 396503105 677797596 920061526 780288143 788584773 532318069 829783632 864320700 900585253 516538902 899365821 444177962 504169037 447041412 506206533 687330145 843153540 582972220 880033734 106716979 644759969 707485418 951898489 422201133 781318101 274332801 829987577 189829624 974096862 206452886 894217913 991797248 991952050 511244254 949558242 535697400 884672255 564760431 686900639 172601142 848791728 630128470 954788031 776689695 998041356 77521916 734039679 316239350 598419863 782985464 861350273 634629927 820786026 489520393 703921748 489495730 787754216 615179532 830887265 611476053 706289754 295339992 766884767 917541870 979681111 594434219 736404451 844669315 952612710 818716896 872979967 484916660 487516574 966767574 995972649 843554362 949462966 571616568 878034525 341417328 406626709 497143540 706574750 311870656 404899868 167235082 196815529 112764851 676450826 180759836 730813212 362049315 574173957 877421664 982251395 372105280 967660482 856428568 897521318 765445342 842867756 16835963 831373206 436830642 531274800 421621551 849000845 130774022 348460302 95228862 523916621 188546022 533687477 906127892 948524966 459775149 624368743 795447813 977406229 93681798 280930646 530990088 723533659 218220845 250596437 731283405 900633382 899281511 910295857 511213854 900017404 358625342 996402798 591675978 598499416 294253907 621068024 908971477 911181586 600940448 640910439 825392411 949958700 103527525 771827995 746158692 894421496 753912284 941667510 176198721 703833834 334491973 577657217 846440839 860093375 448145506 483734926 688835379 965266670 11693048 27904234 526268076 640202033 534244716 777293288 799388596 999422242 175640988 311572227 204403524 426250657 177632265 417548749 991752354 995606779 673674628 857956828 714180739 733185946 175372991 887725964 470719724 702889560 232878805 979491162 316794529 391679100 947133003 981126818 925278317 947584444 841820444 887945756 703967237 744156508 529420738 858827044 200341297 780392620 193952445 786220816 404606041 448987132 290247835 540091387 512696744 668560123 506835756 905309866 761999355 857079513 591814805 834330636 51692125 193968391 973304270 976993971 8469111 918257576 333249276 804918653 429341859 492142395 364200356 672014403 840812177 990033638 845936305 932879511 964770897 965268553 486157794 895593836 272348414 291362024 13375774 859369523 784284860 812992136 976059620 984841131 411421492 908890223 636890343 654886770 995576652 999907376 17999120 266494221 580758684 990539484 975568080 983650521 864885809 995684699 145974714 282588265 598054458 697890887 314422510 611679202 506808567 780977174 32791541 222490623 13047054 70713602 931377810 964636829 675565057 801861034 572205121 779119920 617060809 649408629 856169263 862889597 832646463 959009828 976445480 997732073 3579479 139242586 845117553 914036813 968416924 978957187 406730433 974175278 435737927 796428517 688319270 850156556 876294231 906915478 696549840 759765589 964752258 999504020 635532725 850649147 664191323 880153239 121143542 356043362 297260993 385346320 2765297 556953081 167963378 421361351 913147361 933459130 131864507 920618059 692138180 733300596 194088609 284050456 217365754 786611797 827247053 942814724 691077355 716672543 524766449 781002133 8841849 192074718 625141390 687253702 882905574 957332118 524176013 541343308 332732708 813195861 927203690 959898936 43459638 91077994 275380456 970814640 174296166 857660396 402865160 456868930 529000210 560813348 200539320 703789775 402001125 520520542 724135354 933360510 602080342 861202393 439583350 986501522 4257799 645259532 441175331 980541577 552914476 862154347 192462571 760570987 176621705 188056139 769524748 799582617 920913123 969044487 797540193 801697472 904532918 905750609 352889625 844568341 86850107 437135035 435364191 615777678 116599156 794361559 309101607 828509237 310498560 982945960 970661380 992374372 569192623 646815302 351020339 685681889 367313642 775698701 986015076 996340605 149511925 900958744 472637190 514313128 95774241 431470925 513241919 928066600 244033737 704097016 276409355 280028128 296417245 339507697 23024141 753715182 874315545 951195509 526058182 564740658 50582076 778725922 841023865 946227969 923561731 948913909 908248087 981112218 114442967 745060791 943897409 967386562 899719612 959065405 608761668 645839615 492122011 529535642 257583752 475658431 192251568 889353028 586154390 974260609 578955901 878054649 166689184 283508831 647609349 892870433 811077247 865451370 607903813 866635273 636857466 999342734 150198297 529709898 373797186 644497808 895604831 964599126 942939236 995770383 969043385 994645716 711130278 901947245 920561277 994621136 375960319 554943842 595424369 775437582 18617113 696671261 407785584 651765472 150193497 768208598 779503652 846015105 185919455 526947486 522822405 821480889 805195161 973428941 351648260 588376475 201231720 202845875 903486977 924048995 50459087 861860062 127617434 750058530 370202535 882729093 88111547 174754738 119457536 823619916 180629697 206686756 837285210 928817001 83734059 181014171 420286251 694413204 814636659 976909576 991665172 997091566 425299910 494359256 802598414 994069831 600713746 628068396 720297710 817164861 429991060 981849969 241727180 322633952 813095835 946034716 97933433 613815894 267119361 672648991 364032467 615804364 865629286 944285739 400212176 698148672 771932609 912343707 505856684 552304531 130305159 663514332 709453894 748877687 257654392 815987838 781893160 790192781 940494016 970483276 677597295 707189663 375696214 746850400 854130388 909177581 467441517 663740897 128092354 420757768 639646907 711467404 91204529 980646498 313513311 809231766 201825886 730728006 45397779 692711533 549596151 969718324 452820091 844723141 440432275 450601768 853920556 950121215 781257772 825187363 318857835 668560746 949478529 987412556 317449227 578665094 16893568 850908738 495135916 574708052 323098355 789448489 404121143 872224162 487655314 708466140 324327704 529051696 432807518 688818325 265113453 612248474 972377053 975097949 651790732 786907681 891013256 892061805 119683994 124893720 153498369 828413845 141031649 496542876 336598233 378087407 171679538 292792752 510699951 575395925 392200981 735207487 110311061 770936613 365669788 652503638 104381587 978025137 126175878 399694518 17056702 680672549 824754405 970755752 660903991 989910270 183416589 989033283 833440763 922008471 310082260 919942307 771716441 848588653 251017597 833712491 772895478 866713697 977310199 986837675 246703471 702806314 73801218 953002238 349538651 923259168 513696067 669867885 687888428 727332642 598415092 806920351 249258103 844629148 124308525 820628538 727545401 916534742 784093414 902563959 876771656 972643696 380176668 887515452 217013172 732812560 315226244 965629464 34224894 705212946 38633194 276733998 79633747 940302206 607650667 641657507 289710212 938860450 454018240 770944564 293374504 898712243 632656610 815569302 3927703 260343821 263249888 428622536 1085650 812933943 727117336 919775504 75614459 505441063 782881981 861822999 43630841 401643907 211796200 704754397 509004125 703508805 581831726 691540275 333776508 475127882 572543351 836764865 86447474 612290168 55985255 458338995 730379294 922220448 64399030 931016744 186263912 445860527 963041963 968560797 96294323 859523787 724788160 767171242 227218630 575325692 231623869 269235366 301482429 344745313 26143962 126407288 607415804 668535769 225146317 784210998 653964612 904101578 8801202 228864090 924776133 938082234 144002911 609991824 351302762 708624721 729207951 996798398 347535815 478701096 203082503 668518890 658283579 927685255 121511087 734299055 851343087 980021571 298849813 506127030 233196570 797770838 54012596 265523803 817085428 882963956 465815665 748208174 438774112 813342799 193907996 637071069 688329955 890498980 589468924 962581463 448095177 991685146 976037228 998662089 846347786 941101992 151143517 328083099 323720524 430351290 655997960 936177386 840229774 960058230 995249776 999893830 172375619 878643547 378804052 611301007 990192496 991372155 374590744 537122250 626693277 772863820 474602069 682636773 372236568 837346659 219462281 800524226 257972765 466542161 992558157 997858623 267250078 645953047 886880146 923012860 943223160 971224459 31769520 561115391 491674222 968480706 430733600 570567751 987918794 999730112 323574035 525491408 321655489 882331664 886629847 896807766 953100188 979385396 963991229 986064684 22739470 991941978 109978981 159765830 638147617 910324371 224570600 594969849 474603645 789535943 736929806 851188854 445450537 789329854 196107571 976726950 538080707 966283698 341865460 496998925 955710821 998145115 467586547 528262754 740959573 916144209 707883536 774524121 982523272 988227011 536265261 847774971 144068990 359723569 514405675 614543865 470379888 704754474 554698382 966211755 943701203 965096217 423616483 739171598 476671428 984698223 430520314 527644163 556050105 736666700 952812801 969277904 152356529 540645007 997792029 998177074 823515208 964070937 194968818 258270141 759650841 977305582 249843896 616022747 565647172 661560470 951008197 978612653 891025524 904880930 50101486 744640234 587429232 668599756 667126746 811855403 514451409 574084827 471369491 489553809 672904944 930534086 937139432 993627425 805415966 822206553 57727644 353280643 423500708 869073627 280303196 330713344 600375317 892085258 421514380 460017948 50808999 844506089 694975865 999615909 251492510 733756817 269333311 523693821 830406856 940178884 888559239 890554936 151822512 932374505 456262222 680538018 940029217 994741870 382186579 918494036 609951558 768224052 328693613 924821969 749952405 871551641 758181741 814441427 946877645 960686551 64274526 338963244 96349329 320700939 12751171 990322359 906817677 983714100 442883848 761972098 711078137 916389669 44444298 947282959 725258871 908717004 672284640 937826695 362434967 391332137 606089236 917808863 790060013 975294823 693794854 793271880 778805869 957908759 483102037 910747127 435224936 759994230 842646980 891685516 404470621 569627917 456832781 766313453 648367056 779051752 768523908 777346161 238253728 282254715 473283251 867250168 764180315 943100132 482296761 918776173 597517412 671764360 662089669 691482998 553110962 744865976 760364727 897423105 299607405 380260608 401984030 715480242 377945766 470710209 769629396 954154848 480580040 854011043 381942824 881315063 315291275 809897787 800196323 826194551 4548499 859151741 152229931 238215079 244742001 430542510 615892188 954013055 983462531 989321359 995966438 998647993 191018604 584251613 993119380 997529699 995002551 997020143 547932313 900611180 343099943 835548341 366026450 442130958 846450472 951672025 782634705 893520537 951429426 966519586 801620674 913069826 453627428 889745332 689849686 978379268 91382725 118951562 708866425 790314922 928487415 952395360 461967460 861681827 904791378 904975771 714200777 733290959 705969950 902844936 553263068 713283177 812926579 842149604 296853049 821805294 114032321 976017692 905912879 986156781 590376043 778736628 320966605 981743921 737356350 925413505 409880032 572446502 764587516 940577272 336885152 405283862 618685478 970937036 647795592 660258762 933335033 933846937 418548045 971153427 867058998 917863321 320125842 496691177 702290932 737162207 572644186 973479437 650028177 858301207 382906466 528604983 397520469 642180954 347435428 916394324 225763781 813869998 955824416 972075192 166420478 381021538 431073753 955680529 372922922 827826283 630325764 807402548 318087870 929377820 481432197 726702051 544377734 753234176 71272225 477892624 983017330 986405455 165704807 423103350 806068068 982293499 622780803 680807585 300322220 632235732 806949959 998824903 537538272 781528680 613566682 761740375 858003396 975747331 433236408 517150027 754959050 804637234 830485027 929898032 126617139 148999212 726300942 754028517 614491687 648202648 716203221 979429838 940051921 986015123 671617208 934399761 33902378 516965101 233071863 904234185 738685114 821810003 174154712 812209995 674786532 712199201 543194678 732234141 20037110 136749515 361504447 999914139 548198193 650636115 499822291 995705457 145807513 587181480 264207710 716647477 1229561 174576945 106560119 886238428 816268960 973520915 674971172 762742389 676169116 684825306 928109445 994053952 286095612 518978732 257935047 421366188 632844253 989456946 777929632 998363222 982288169 985115000 512417672 569788860 255630342 654088491 36149895 458089351 36087627 871344686 14503819 189932347 560509645 887585533 677687633 812512122 920879849 978490723 69951208 791124422 311700292 465618153 65295888 326603089 607073579 680862555 736036719 878071763 971953767 981073251 459957495 972993896 620232607 793892323 557064655 658114836 294851601 443622636 254157462 900338493 48312912 327944198 280617001 919755294 381242102 835853006 828426360 988750784 326641842 811911196 945262797 993975656 308576320 427836676 844553693 926953994 362879543 886744808 110440049 840038791 210769108 766716767 951506771 972973356 170638882 347484300 952163353 952471169 495118110 706442197 878946332 909939356 633991940 997268067 860414427 924537868 955675927 994519257 16290426 197027093 679873846 769958298 569417914 894464972 348782005 816609556 283164882 905764782 663725285 729197434 850621375 905842275 110049390 466389818 655372839 840930035 161720637 576438989 738900450 892912735 26565262 93348501 432845260 434368413 585303251 772420584 421041855 835540373 512058459 716183479 756360170 885619915 693927012 785511677 854884681 949567060 966581340 995768951 744199840 830939105 340059745 931661057 170864934 571897072 591034375 826205209 197939885 988349854 198646277 524735048 369560632 418169840 737856519 805736952 454943591 860783556 268965677 465715122 994035246 996789991 571714381 630347950 62095876 255486167 896460689 995697840 251186918 661961490 179121730 655008289 76073903 866480152 316163106 714670583 339653582 922455694 980977090 995500197 620831630 941053137 893854009 942840582 270989761 480846469 571707349 929065483 247255742 571132662 84719804 905600610 125768063 179565415 782127556 823194384 501088253 912917204 4661533 103000067 666207918 818328729 164852903 976451157 862392495 877923578 94500992 470289394 273353583 972282031 46012694 556572023 129551403 677148108 191031465 599840363 275704247 622719927 365267288 579289520 272126358 839974645 839118639 903075484 239541026 509486226 993679599 997177997 292702960 380888393 357915331 929844326 808686516 938894045 236916674 579460928 458321293 649959877 417805108 700067848 55982999 552124558 468085962 842377885 644697257 703072307 180306980 404543201 229360662 267936938 60548464 389709121 979707000 990146001 540046771 931589283 416335696 469349076 988706128 988846592 331630421 552095678 555831892 736149137 506157189 586387602 945724796 999553845 258564880 375597380 775990069 896419272 333910355 958328541 883572186 950386109 432855833 567674056 413767554 520069407 42737246 919117202 441324386 869045524 108095688 476802218 254759027 547135128 410648790 863370610 144313525 296583347 239482676 549567734 950260530 972020373 809546333 911573014 96306491 293055901 479613070 517128461 817230516 844147241 200224630 703695755 934912969 995446748 678065679 800021738 822751264 967783355 278682999 302078916 86043379 628605076 370134414 637098269 735710349 735976319 228629944 799442172 478119735 907230621 239311829 477065341 956037126 967877775 128751512 151824372 625291880 750136602 58496865 336833234 550494474 637349647 869757618 932990618 356077699 999726581 455003760 563301239 274701147 561871860 627291585 847823338 458033754 845020598 45557929 550993501 195160737 592719964 870978931 981688465 471027999 554345691 183780231 328968051 221265492 233682296 530743446 675014320 970346830 974849728 559330341 970791467 894133547 919486448 288789863 483630016 817081029 931020813 357969151 460700473 142363545 544951470 203751664 740710570 317172904 991926814 733494762 798856053 92831199 592742547 809320340 835361271 430797540 564654973 528221222 635698189 718205425 798913373 779517334 804884153 182503554 277539133 135690182 960285110 866120662 988617132 774643082 850624677 897887771 930288109 448481922 467497158 603440777 703003468 620068390 859922498 643734895 839836075 140776635 801378963 180841659 403471270 280764806 882835606 740435810 749994641 17077734 447507043 251067592 985606712 338876483 454326656 50476372 632708409 285454718 802828294 732225699 987886840 483443539 975128589 677965023 842677513 671352929 900473461 98914393 352570399 212013382 483874504 993715556 993970134 227297150 966631444 315158274 758659164 692196357 837399847 550104599 620812435 284053476 807792332 306878803 683303688 730622159 874963100 959611291 976461454 434645303 762324091 420784058 454683745 129059453 539326054 20086401 239242159 59636323 947886763 424028851 887431680 508471726 826234924 551637210 555764052 133184431 276762531 748200094 864113854 773240141 903124695 259853346 734184877 293957086 965482882 905279291 911349028 252224730 627348681 32741091 844550623 198094413 860926113 588959443 625026807 71557165 259956094 86151910 765516128 207726948 510635867 189844120 492228377 353116721 569539886 690891700 907234182 665528055 925357624 396180614 935661050 885733776 965251566 977992397 978243254 971087692 976833982 547238758 692520417 197603227 932046979 556343235 703107050 232950609 916478615 206752936 889721932 804102107 833532704 722012033 764859947 353914110 540274537 401283690 416528749 222615242 850312796 873815903 976759352 902608524 972052298 127576446 826905011 656737300 951626351 616260486 800537652 542014755 727284044 82989040 223196539 888766101 907530990 884457128 983811706 514113875 695314202 237144299 898513277 539327978 545296730 709709072 895744320 997146410 999193907 555964541 740489307 890718265 942172290 514273497 692367686 400234626 989791613 811435914 883016443 504318402 779828903 488579682 558686917 687201930 987614252 953777287 972931892 252495910 652839324 329068571 974494474 24060317 833633515 992545070 996259428 471057515 757281479 314873038 365347982 867023371 905260708 137681212 331539041 474345323 476842355 94537319 594412626 642080932 692824855 567491116 852907620 293336767 821856393 66267153 429568465 959846325 976448624 851685168 927828549 925857624 960450131 56073229 325529157 255935440 716822294 302109063 843875711 754178446 779903356 609999937 871781839 630059608 694101286 701409988 778249262 997345706 997499093 927458967 998545576 438017674 671163128 733384440 783857292 587238117 698073333 912022017 965537299 603069971 807552814 499004261 623638742 332091221 612708897 381501349 933680550 872595886 970725657 693394713 713378480 893272708 910258094 751774199 765617236 953087592 985273892 160466759 528607853 324549615 759095861 283622244 369008930 4457843 142915220 647308687 732787804 964115496 993468673 188436214 235439382 933938382 963614602 413844336 650727969 293589150 293869318 618290579 819894164 873988636 964810429 986513553 993254271 160961147 804195980 581804097 657261558 559256318 603426012 966336560 972968742 214110477 512045485 439408179 886155620 70314257 871109732 699823247 748952651 548093546 681657931 925470470 998033308 793189078 806757606 94046491 630310431 503594120 713512376 553941766 887261073 295014320 835264380 572359041 972463393 454951968 828105745 724631452 875450043 203245846 339896074 640294836 814750007 249117963 510285271 42072308 68795081 149751937 180629463 453099002 581658530 333963414 899412101 547458468 621874196 77032948 884320556 686624675 977292748 220817300 315642379 624513091 822419221 808273514 855082774 950797316 955571208 737660350 971404362 51693939 880971758 760150277 956519669 509154419 638570581 882800399 890669696 504742084 847113994 833830612 935274189 885145899 922153190 569010215 685663479 310804668 520289841 495174056 705293823 925791911 986701547 543345177 700912456 466518407 624018245 301956508 373277966 35641347 337762441 754706904 970244451 427324861 657098222 178104931 321974958 135690280 886447219 264408762 884214445 328112848 535494225 222437345 635210267 715107868 844927009 550250755 669344757 269204067 587602796 807431276 871808713 348639751 389548545 28791153 361118641 214747609 614464000 180108469 508442018 525619280 982280323 535293286 727125625 785695321 959258088 237611372 774101452 374334499 716066476 847437502 864719129 206655879 730399812 74753526 879891362 102685282 459727260 251624794 330008741 722779958 775413742 57845671 671484526 753575367 881624509 686626311 891298550 940123660 948710744 486832721 789381815 849311157 914961372 850372353 948793461 299083471 406849137 812012426 812061805 369120361 824484578 737104450 951638041 325943461 564369687 393972339 820053890 880084705 899896720 392263827 903112421 536629593 982956840 79322560 118164256 407927244 848121708 513945583 705556155 641424878 775773626 200958470 589040266 173397539 652303270 191141436 380616952 49846822 182768031 677470232 704581368 480956858 744712999 695588115 717702007 140248632 737265753 425947304 851830212 917599801 974262012 764770454 828745764 798362313 818107714 174317810 990315889 333789949 512510952 553289241 672192086 761810899 986559049 995429 826852328 739756698 785240711 328010268 882924431 112704603 500987346 802248171 853516120 553874860 939279250 885914525 959568960 440074244 947552063 514857195 702403068 550917806 635635802 725382552 807626668 271071109 388912639 115756441 477942748 12775797 907639116 67594208 929608311 411022777 980421940 741900637 771675864 794505862 794586290 523909720 805522581 888775441 994425290 928562194 936412879 693020915 721307457 184741802 874117693 939230395 942975223 991454504 996571724 161298205 202565829 806601378 981727010 313290045 778138580 762339995 900787078 274037913 749825021 128053718 352870599 943767327 984306339 44336246 315611423 535767036 865157245 948720845 991225163 908637196 958582565 465232607 989994555 417543315 726486820 588282165 758907781 468532149 468640025 819703766 992588876 963599503 982421498 775718857 997036689 743316729 761051863 838700590 936484329 608828878 923273231 574158432 985280981 814721231 929899971 174795060 719836930 851605584 853091371 966778181 994021845 411296187 835103595 710737385 913553940 677959799 970190479 459201730 835615871 733434945 932450506 61970259 521290595 109580712 424128247 357191902 669081322 372935424 532318505 560072147 964984385 297490544 368192685 876734165 987595854 778391881 893184558 617787297 808647654 669830328 762937593 771495499 826010871 281255339 415605389 775508482 810128175 846281250 907053802 676853591 853191755 585387361 935593345 711239389 976398070 540588602 927765630 259362735 748619067 115720691 515194513 870185875 953371835 175239749 243332672 427152931 759765222 864647936 985141889 777152357 978338067 724841268 902868771 143234861 199391985 544653601 884359231 311710524 491288686 935657683 947519472 367066502 809104578 953451530 965310560 736452732 887133743 752869916 967376743 507453905 959437795 151918596 629167343 866565973 901817604 534321260 663646927 875640382 897632226 978250851 998169243 267917317 639673505 708051047 745650542 213240621 500066578 570954971 829339279 66449514 271417509 66226555 432521813 252958857 760850704 462597712 540839194 852068171 930185378 544398043 921149403 950646707 968567586 174775732 694010495 878883153 913050025 708853538 864576891 795610600 953280589 391896782 559375212 803175689 978989091 702087039 846032667 247062287 482330598 362968348 781732684 983497196 987909649 726545723 980200723 258711959 793016178 159041412 877279682 361911638 932432604 598157981 954848202 968552550 974679694 942872032 948765374 351623731 890744226 967242751 971518056 963495882 974420814 362118421 648213331 361340983 408412707 442593257 569466459 511319242 595154190 867550908 895957444 757766696 937462929 261788085 959782250 56814768 824802799 812935244 969078551 480249513 573549712 586064458 586365683 148789720 414401391 727209828 991855011 337421738 428017236 33623898 205191683 383617327 864416674 262100255 751240245 387461007 739943451 464729172 515303490 537788699 763452306 495145046 688697035 256516480 452212572 854574490 893999895 682035498 860754121 633690748 933602196 681148625 989375286 46675141 133066620 874675561 919728527 277352997 779929205 672656316 855567815 53925869 770064736 434422355 848590542 995493449 999867457 137340925 693197834 229570082 423727570 330881175 691512569 121665357 380681065 34149296 466050323 992233735 998255680 238889381 450801995 667158798 958630240 552712790 829205481 486969883 981149900 380800035 536025164 488217596 585698828 983151826 985033087 389971632 586372978 101735963 818177195 524855740 807417322 663309432 815820410 567335783 811361892 278421478 714264921 819872345 837815564 411656070 910525457 821548709 830912024 262463397 924045317 248398138 347033878 144076225 501688852 443472327 846238988 803031066 804008917 798032187 945428799 577362500 711100079 330095993 541419154 233627737 656422797 840722323 948242013 166414832 508403798 560969191 875795518 871093616 907667015 675698919 728977290 398692735 846067380 271520318 788453131 385759683 994192961 230196190 821400584 721554920 990713079 796764387 827817073 203766851 909952117 238346513 742950103 141700223 188563565 59628843 612651955 507791598 664570342 126470022 148486140 981502218 987337319 381738782 894141592 811516724 854365982 892146863 937445831 562611441 926108851 815241422 832832220 240550958 393734499 774959426 893129118 827973019 894080206 348284485 524380158 668528653 861564097 531915805 602089641 338011707 673282580 972092531 979378921 403757200 892262779 677270733 947274836 764748824 894248023 729164456 760077615 350465932 647956506 97344060 685929192 633854466 722942355 553701737 915571012 986182063 986378394 638711678 777529808 967068454 975021419 806695154 872753058 795720579 940477554 768704663 776418194 67940535 136756771 342910393 347725686 258252849 624783242 311402007 827885575 106267292 569481227 263610060 326904874 124390730 795983359 106313511 255875215 817989034 856690720 936119401 956523466 456018844 741386923 486433312 985167987 873507135 923820719 226973090 836304135 619229761 791300100 445128333 863795603 67048829 710667171 405463083 696788764 717018640 989082598 95637411 262462597 454705592 710523669 919882817 925124637 30437459 376257355 44364278 256790735 733369706 843045083 119822902 306190395 92938943 462601409 829229048 976344692 372733380 806998463 737074661 846451957 214715691 322725197 121160737 312877940 677649505 878542386 782026819 830880909 516779670 823787474 204465764 849649903 737125103 740768143 409771777 769179489 717136788 765810022 147725471 675154426 610264947 914341377 960402666 989586926 597206932 607399266 226140752 941238762 97709162 970498255 666584106 718090652 458563361 633259781 497012554 885391028 173925936 849241911 574220200 894948122 311151326 741711004 93337082 238922821 641646127 741080079 435232436 452861732 788748220 985205468 581297728 854025753 688769667 939197044 688306660 795723450 166532455 621833122 184751124 261626421 749577215 903289026 378914019 747863784 571420116 866108284 32922274 300397968 378333349 794044662 251120117 399807953 887541433 983218718 737031073 946120594 414501244 434978638 823886972 917656879 340698763 363811044 932373475 944291292 243461211 796203496 394118676 992386908 776439903 818215668 481446547 956573018 800901929 802713043 52446297 102382908 121904720 130076065 470167510 641715940 998414628 999062043 983865077 990491702 317131438 689683167 7688123 19505081 118877089 774879334 930370856 982345994 672731382 945472763 447805141 564623112 613237554 829939579 851241820 859357823 282566095 974617778 365539940 752601402 416385686 915540803 232470200 350208039 453556575 881483979 159549294 929388386 186125460 286772749 334706977 732267255 588767308 845025904 987320819 990397544 952993271 993250765 359455706 505737963 909317878 951978678 666685003 792420503 263061416 862177021 72227028 315710690 149522521 880800518 518960035 669750410 640093620 925559205 388098193 494600496 481050852 655427287 371580665 642609044 78691682 323794700 847734314 882223937 659850408 775844052 226281285 251170183 97974886 968200807 91446678 539769471 448353202 967049726 550446024 650912445 752713199 786281281 17381809 624660706 935333315 942227399 781608978 899114605 109844049 437996445 998191457 999702323 377462076 822426780 788913491 888930989 486948550 617010071 514113570 693290461 938645291 971440412 312056189 935353987 59354113 664107755 535249760 846635303 50600166 693055771 473131043 579798198 742795500 829503111 576590204 842219839 803505357 885021652 142027744 476893140 958531267 976021066 75769187 209238157 303164262 739580291 862607193 872766251 13799606 695779674 455970924 952088478 633501895 899888310 144137145 984821446 900918759 975320984 220435712 929599584 921554316 975953813 574559291 973921215 771788352 939117059 782053083 863830434 68575970 562240064 48580711 962422536 361450035 522847526 796243399 890733590 82499828 245220173 995958098 997720792 898895895 952100114 430916408 469082832 365746695 453607825 399995084 932399766 355840485 854519626 244946410 389894749 689913997 730010818 14538543 755243530 497455597 639185437 664032848 825735022 342323871 841282683 582155435 844673466 73447235 373948554 229661200 474217339 63483195 604603516 458650098 607682023 62129430 481102673 364165388 536906584 696138727 767737408 399386088 710386256 934049235 950838473 925926837 947205420 785253129 835653696 164223410 501023717 285277595 952216802 203873257 799148878 765007086 798426340 131994300 144369631 835441045 957667052 755361281 996345621 807016193 914369161 843730949 976703314 766623041 941214580 295503447 473207015 71199690 131079004 5249238 535174369 65463468 450408197 445258568 522051953 657307801 972994735 103176568 999859619 559570086 560957651 337375184 753136443 256510143 418781825 79969427 739278993 346643595 743755941 870801299 919836670 305102550 441806003 302957801 871003822 542623906 941051074 184559768 403158691 599033574 648875429 893568506 927521476 187834134 653257684 436735654 677413709 497374431 670418970 623550356 659204985 443127717 924812238 308321534 491376662 29076637 141681349 280728429 878880737 139779984 178059687 202232829 965390038 179432931 203091724 771217776 778102091 279518773 735563554 940013350 974462160 436432580 834982746 53474199 801545152 103686919 272886720 172746279 989183740 775044874 955150210 983378371 989915309 222525185 382921514 505853493 613607201 5495550 214863958 432300608 822146440 47529775 695513403 134677095 888989950 480058474 793205112 904212895 943312340 708500182 932481707 262430959 575566226 616376912 805366080 919872864 941579866 85467865 491930807 907142203 942763391 81761433 931524362 176482521 592124361 161638462 618200334 808231606 926912265 961298989 975546440 228549785 432404942 332270055 884936125 319016204 649120076 889156225 940887700 958789445 999944448 609894752 866310947 201163925 732751767 663057144 944464934 498474782 549237792 328094743 374985127 499590388 577004170 619692354 805542743 405237289 508092565 248857004 396318644 133106823 505534029 287183162 637069213 140272352 690733490 231724583 709599601 997445158 999010612 921653321 936912580 192134830 257580520 430568953 657393901 850427555 929792381 242152208 825366038 149387783 218280467 130339673 543446967 118106570 382817097 588978844 643747986 875155906 960999587 271691860 800424555 263270837 593117145 748201428 834358928 743833881 819357596 840416969 948280679 974785872 997853416 945065329 966310969 899827611 972953673 178627677 346698502 306886384 554751016 568716595 638516773 941709217 997071166 109355023 214572798 898030940 986592924 73874502 677012811 777134425 862637799 757648920 867848706 182469292 565420439 612619152 956355349 434615049 711048337 717114152 834376809 731387552 731964368 30755620 701583883 3789203 28964111 610146634 640011219 744321425 798883173 331175522 675787962 478908272 765800545 378265029 626807692 429230844 963740747 465795853 663494717 943187608 967011838 498615786 683400922 417149149 533535245 326861870 799711623 500164135 644000708 498891862 825623056 562352859 741948760 193904561 600346127 857445165 926863252 268681394 932423884 441660904 814751170 428768480 988759229 553724036 601941061 215335468 298404123 133610086 707096933 933450015 989132894 11346140 148230000 851440336 955422642 503861452 969472808 222192048 494993062 594023929 788297522 137323781 694507711 340387157 853787630 694297174 911681637 41242839 551996432 477094556 518942982 891047176 909982993 390449769 820405630 244850205 389453367 520391056 792024251 170638731 939834230 493163982 854000972 470931791 541473468 526099412 737404491 245036872 406430510 725078659 899302483 572178335 889035763 689407119 849212975 142238297 153923252 762962483 776539522 533942106 840049339 563879466 847572296 203101308 713288595 617741808 822491614 621498554 907624009 721316346 916501471 549683965 887553707 367344147 525855302 89993178 732781621 298892728 548683580 254773714 953930613 742456862 828666729 268243807 835983317 194347816 957538347 301867210 962845046 537813537 543398298 714996724 811495530 6613016 777975615 764245948 827578467 349836953 906941789 574480723 778930720 120943757 137318845 747766296 865256931 459203415 499794607 442247458 657332584 317575092 565505127 233763 238942810 916425036 990645673 902486321 992632537 295932561 611858590 794900495 983153320 654158454 856479249 448294769 859340258 206213736 286914197 722310186 746307868 82634167 298867406 889560697 988882295 756817127 877012461 626379316 686814654 781587663 970382833 72496192 884208113 493429639 605907788 818895739 977058445 621049408 758552662 994537576 998713614 395164442 653587017 589215655 660463902 312540582 535193997 352971995 740457351 271905153 366073250 356240938 534647486 627826689 649593692 911499520 924891915 991686467 996268702 581506025 851532705 398964811 775710276 31462605 169620414 385341825 983309112 789974982 893953860 169777825 993420290 818968879 993962862 72444279 635159368 210924564 723176220 494457155 776889305 376387442 637968954 176944014 978639213 311603958 440440306 323941289 721347612 974023224 983874231 598730008 719404146 401460789 869866945 304036749 861364410 959770162 963666343 607304729 783316590 525255526 990098230 509965683 540035208 517225979 859723134 307524910 816395688 301561249 381298577 710068911 938607469 758385827 835480300 298521713 355879055 742027166 931939350 55897208 939338729 71334908 566847739 396192715 802036006 14455748 147986599 295439672 980735802 76187395 208390914 23576609 732862279 219873545 267397109 569874729 686342654 400169797 812848514 271441351 479803608 552800616 824063768 331031003 378163359 404807096 805243405 806536516 884397752 285033803 458329409 913835534 951682131 158639238 595630934 567683270 700365458 947323167 949595190 172285554 777097921 37209564 345226616 408148374 898086506 174430525 657959007 340903872 661995267 511572015 865237275 498079720 654014319 385410515 883583360 805185094 969723226 217705877 784812551 58942452 738647263 279330626 559727711 535342954 773069423 219607944 723145490 924984000 937021042 970698828 995124853 595509898 926014484 652896871 939839489 412751021 658638821 973902164 996365453 269720926 626043765 31999657 880718236 537670446 880911839 774216063 820274660 193060007 646426082 191009139 443315922 484169163 699183942 872501135 909168138 28831284 642677246 48346703 510270701 825408510 874404453 907781675 960441706 862254712 971012874 265425929 425090453 444212156 740435768 405229964 670309764 992033153 996357334 560016338 598264475 556877158 873456656 796731743 804689807 471368848 745451462 250913242 393365775 940288713 956352302 495595021 536452760 131687358 584858622 628605461 967503495 841759827 875776499 553276084 965952830 397748233 665386274 240545890 537737148 436741531 912858205 966002995 973373646 380260273 678503274 155324147 512603868 548240071 727843519 710028120 936804357 506923316 614320378 128028301 960283936 182059826 860860078 684248540 848193049 95903042 624050716 994442512 997273054 687928716 953480609 499071037 774186488 301960539 756926030 861119016 978577046 677546078 777404325 769722179 808000444 580332667 666363586 506102731 884224325 536383418 804867145 156778447 471970407 511746738 697252836 772419465 901837022 904343135 921729405 391222674 785761864 650191734 743124549 781844656 891754884 615521559 615525337 726359264 839150285 749109804 987117663 207347128 346343970 690385887 885567643 768156706 829299971 951681824 963982299 911128936 963016760 629708087 912844423 933858903 976874133 344636226 532108998 313860013 549950223 145022439 367897049 477064549 791330329 355443301 774129161 635113665 865232090 157046662 304660650 936683932 948935987 661279452 745146332 263677934 712407129 139293943 685363513 219854035 989423394 186046161 422041492 442562370 891846606 801258759 899435453 784956047 807368174 357564910 468502757 439911822 957936468 869674373 923365852 699065305 793739616 551779226 866613744 595950543 848036796 905156876 920928873 797078360 863262603 522308147 714742761 587498068 892118902 448511952 774035712 57670536 805972253 95533734 128219920 955882247 977193085 729053420 895079691 1674333 363529838 210819337 786139990 344895715 855343416 494902786 712046237 391184595 943872392 637913695 829064207 143681800 992680328 255635828 454694996 127360304 823960329 769839902 953742033 468016598 765551048 972432187 999366045 969069213 997081294 713278021 853876067 721010466 867142206 647249065 831182311 216126357 965561098 239966830 561308177 133083678 991929493 290204526 816874409 575475165 622596172 385687319 632266927 12418584 935218926 394424271 955532694 600778978 622122529 471099536 719724102 135387026 471057304 872103261 950426055 31946707 809849306 216159867 295551782 401551782 608719944 778964163 821302708 612975604 713831332 790788939 908237836 39116691 92355858 433611273 640665223 408011103 554211698 68356561 500179524 685473141 795472174 893626901 908153543 953787373 954228368 253354217 998136905 434344770 970559160 220769097 637933571 14065748 291119435 156939230 977957112 616774059 839390303 629479443 761837734 98109131 554870435 596987696 712982596 657089676 733130048 760145774 849863557 965994844 966757307 518150632 529414434 68714935 480687757 993457782 993649055 407767629 714091048 58535292 994743283 717400423 805825835 859687522 878622642 550481505 966518584 583215723 643785979 665918899 695644334 192729922 939687660 674748363 703585418 229174149 987596731 122435765 803864004 594181942 964091299 879727772 943723563 500795412 869980592 3469244 695346664 952738878 982116365 121024342 620028075 286932937 602054527 630004046 822724746 462461219 777941760 51153619 298310831 775848287 971151545 19175737 877360392 109850361 145733680 383588015 748606401 522021694 733272323 548958028 910123656 921345849 939284231 96661013 170080790 164586319 855643484 139404235 479027396 753393315 918909432 438034089 797028407 154145183 174039988 624020505 949852422 283145742 530339857 128402987 547355393 543658778 668389433 272179639 584332612 180919482 794959711 929928025 949915515 81612706 303024708 803670398 810089532 554234310 825882577 476693588 637014203 642687678 975594974 918026280 950772614 650331116 790112340 865191130 877175599 714890630 918628144 54078898 692198324 550437585 954296953 968050779 992302799 485693596 646402221 250410913 824755144 236103083 422443073 306412188 524121371 364794623 454120667 621898922 759254214 666281629 845169098 566039763 660349049 491532497 795143264 472734613 898941120 686947289 752021654 903116075 966443634 897713938 946915825 194895758 263999595 381258356 518508351 550111762 968247065 671563411 955904693 223226624 559265101 38830193 409601621 739112906 936040122 581527170 684189341 642780486 897837792 174748836 372929246 200699890 886351477 545833046 605793652 177011800 281427749 77078310 674588291 105479908 780064336 486193057 844756010 810342624 887079394 259643261 645805290 219524924 315007483 329017102 775103516 289522792 796180348 75438011 641940154 677355201 738356934 275163118 358000382 117928544 179170363 697857352 804082110 101740616 828261029 517783494 531893054 861119512 992335848 50615007 769684636 652380829 892115213 207387178 733789324 351596971 869769887 985863366 992319997 971102886 980100783 66552848 595793984 768285841 894337329 374200673 981111924 560982701 990352187 200835359 886806740 101838783 894929990 426094865 795413917 538177554 694542899 64412183 694439136 121033967 179921501 705930858 841285199 582247489 635998397 559525720 701630359 818663222 855456951 131773213 330518560 302244085 877250697 873889141 947648019 310958019 854114165 45080620 339796699 226323153 688268306 401418122 662064175 831535259 838278846 764422618 995139726 33343330 653692707 679223955 716754626 479260837 586057248 709675623 923788414 57191412 400799731 468444912 748101153 186230020 570757074 690443826 716943296 271853223 947914794 233269928 955500116 429631106 746645930 567032046 706061015 398125233 464597400 923114306 995381061 203081563 298321954 628807481 985210120 694590145 825271791 26110653 548807464 868720605 932190188 764195073 870767083 679787937 822172900 295606630 828396488 383388951 545850393 148713829 273763021 398867455 731465800 8869696 837963768 299632793 589232351 370670081 939904450 295978702 824260751 700964179 802588228 169581921 784597940 996625292 998520463 819330113 825440608 785407604 971792102 775763497 921738040 855247566 954302193 892206212 917391507 412843696 718883865 76796495 710860777 963471784 995415282 608902406 759089232 494554922 725367086 112844772 829796206 188510282 856067630 947979380 977789074 967481571 971292853 974158791 982774944 513800477 817252491 868581705 908940179 619913535 970175679 367340434 412312691 998766145 999462898 42925649 293776009 409388621 427028098 192210306 242721030 229895215 679854052 948564285 978830461 588234850 654388158 512424427 961272621 723909869 940939869 730020062 960239702 882989198 909464762 511033232 656147304 638078886 706723187 391497595 676583249 207996384 653321618 990416265 999384021 365542041 918450599 598408253 983251411 287990476 928711602 179307572 540446714 524238239 548378812 364575966 510717614 733370330 932066265 52829331 825164122 638971184 734081191 159828269 932525079 405931563 670575802 220157725 309474939 180054709 249311843 28035072 764242712 257461387 924126852 887747768 982937146 388150344 673347854 657188596 924708790 942080319 961053121 49033825 290820188 726457782 900836935 88815774 711484869 119537408 129021761 547767668 787315118 778016503 968090693 281633961 692338590 852565592 885495183 293343978 590848874 926825020 960071491 651816532 821410631 175219383 198943613 474835177 814405948 306201873 998909990 996460602 996869106 55999703 230041647 72053972 472549020 859401048 862937178 530971472 970565366 628223392 756340329 671825318 739096013 783635425 925730359 908915466 961644105 595383699 715728745 579215125 627429913 762365800 820468776 208892957 570208792 8267621 732075180 478915214 768292566 100958635 635212405 807715412 953898293 789551700 821585054 834898659 835356947 140333798 928693419 962729967 973317620 534412112 927255618 873345792 944694043 513390788 955913464 946821370 971944809 327976128 727470502 914444513 949636911 859622687 879028123 106987415 163292547 449736175 586913097 944969899 965658133 5268172 837115567 178441390 374204150 208275704 209746359 160537873 385561743 36260346 531125474 756231103 857193338 177823256 423938979 378249895 836088783 185030030 241478487 403992637 551766907 860047984 977163609 522753845 841438331 266369095 884253828 588715565 800840639 390603942 588479653 704153868 784364282 395836055 464999355 844606785 893956788 514713821 781374573 487382727 752739450 312991922 411600127 75591183 613247651 814839078 951883141 789131582 989211484 618596371 841968187 871687689 903810399 823308316 870120473 281104215 504008634 946008894 968245613 146800426 629176677 239297273 712137670 123316900 589702391 174477579 705451562 142770533 655114888 18805077 714137757 424284236 631982432 340040073 645043677 528257268 594617744 809683993 999226250 431953584 539578993 419022561 774781441 391380394 881391950 156111227 621721774 413031107 635231536 918119786 995362058 438806704 567974847 103169815 539145164 763622967 888818543 854513392 927678337 736453043 739837972 910371937 979567368 72868231 962238335 380484108 738193540 891297277 976771269 361628155 381566345 678639552 776875878 891257776 963432927 91996300 910533724 190120881 731267294 257940922 579142493 610329993 813838326 556096109 704838295 365229026 899957159 914764813 989504400 893241698 998838961 302939116 472140671 203743490 534055943 490181425 632559519 904981443 962848947 266340258 894118058 62070938 189701125 29439258 854127364 142679201 799558373 170059247 397627219 194342988 897103523 405509497 491080358 819163828 920830365 559642076 937479036 581025563 820355201 56511918 59208143 91985316 563972014 50638079 772139813 727173204 902307656 608637600 643685826 403708408 656579726 976237879 992140997 542654053 829858852 642734280 887635129 259752470 560395710 72914057 100801279 16753904 404397481 511672867 723550984 35168591 801785397 736784287 742852987 391492617 977149994 313596090 473165796 128859446 973462221 497312088 834705973 27884324 543788139 911962173 937293277 104179065 866915662 162189148 776994333 726617148 768045308 80424172 583369634 154069917 826542584 456585089 591559460 160221805 775881501 133024858 581249684 347555217 934883249 14345521 517616296 73656817 301183057 270994303 908912729 508450110 568105002 281329884 585262682 911391808 945246533 520163548 738971076 927457397 975770034 642130559 877043979 462262422 646413421 97217600 799098030 612834294 827346347 297426989 528011600 277789181 611298984 816487355 905904585 584997685 909900356 809781521 943747798 637813975 768586183 851240720 926056611 816943816 947828219 633963735 748428621 575571140 582724291 307253226 608200364 776606935 868313191 804502179 918217218 2234463 535213554 491722646 937618649 977225725 997750251 732699482 902685893 148272800 448578260 249936388 489956191 202771820 568678065 798525881 916171341 819974874 968744869 834738609 901387769 381402897 586108387 205878194 950323642 113864345 981366138 110826889 204959874 491119676 913854324 161926347 225705429 907771302 924184264 833628191 901014002 286073807 288424606 160615715 556576773 200593745 816276649 234600494 303935467 589135133 908940736 303136509 887268629 500166356 970193288 469329777 741725370 106753637 592591592 344777118 966181153 986221810 994244873 320989677 906227416 890834682 983953587 919914792 961230043 8685539 863104363 618222653 757494528 909945538 981332628 242734621 295546962 899351231 972403369 95236396 517854352 330763564 751862139 202361084 596635944 286880747 514724841 477096043 846924349 535613647 962016204 268296225 371588089 422344527 795787186 346742065 834331083 577113653 890104562 541429654 664342378 252510169 399628220 259995682 711030997 448008075 907416424 313202328 377785136 766976195 927047612 475898226 820189286 655490501 842682137 597496118 917979049 590160745 751646189 902306760 971150355 155981702 303801546 157353198 447245518 541706786 850880611 668405798 794895998 147437947 862525879 126077729 883605657 744282489 885162814 993513332 999669726 296539109 831526296 691871065 939466823 36362987 47765334 868105824 929821714 742259375 851820009 504726557 886763782 794676051 980307013 972207516 987338927 463908809 915525538 95901831 184870806 693154037 939934772 996781150 998636060 487647372 537197886 268949450 372159460 507617096 771837163 935007596 964149392 197998763 527512640 337913779 845960713 747306583 865599161 466569163 959881356 779398790 970694809 60298294 109761971 977889957 981429045 345511167 588879462 897471672 934804856 755125544 891400479 201794052 831517722 69071650 834920585 881015476 978448611 709995336 884793376 923163028 936669936 268363216 526243141 678248670 986167852 752167635 917524543 331048312 503280443 778262045 908809423 297504611 947779062 119994932 377984421 436898731 928893430 440336986 855030943 912305922 949740658 973612518 994186313 912742356 975106951 946494223 983895208 657821900 912699656 103108122 548405470 897082546 933284600 215360893 674446273 180125572 981074526 367803386 476287309 37462933 299158258 883298178 972990280 385385610 452971508 516198210 699694055 458142478 594079311 948049696 981216813 452864439 687802087 464619207 555026461 366984510 693832823 442560506 533164748 443987037 658531790 121300326 840235698 892328651 942083011 324234710 523469117 850906479 853178841 335741000 378189447 299107508 452626779 112691172 507851071 621524481 979635053 64991971 290445617 841547571 875160537 573186024 825441756 523180178 780343776 595517262 757399830 73360498 919872749 259995368 982948672 128366472 656883330 471661728 768788428 340710309 361361211 808748763 986118302 976749941 988629796 694565333 838688464 326193209 432517079 574648116 830203685 513443294 776882380 940093486 943152298 849146282 972989721 191725160 954387492 125931653 647252224 468857983 972476989 436743909 503098844 165623917 519448750 782051823 861185014 341699864 772484457 637967723 698129372 597956457 664082256 275558487 845814964 180412005 296959029 386585222 576709593 210641508 699459688 482768315 999041120 876161218 939183961 528920830 904190566 621523927 688387576 770934876 889154648 444683166 986595713 494584298 907778535 938236908 945976948 994106034 998474531 475804131 708950814 132827192 828590682 539032869 945357059 462301608 541594609 713575731 720835308 315953106 615341136 958986481 989724116 781779336 805521663 714353246 736964321 217294861 761091444 141567235 168495926 79996533 354901082 713854219 911172832 302374895 743051048 463919397 868051959 398535844 488334244 358527988 977887757 752346768 764805703 54038230 387059286 389792006 852188790 575195985 990510433 738665900 801683542 685237524 947443029 222951721 543173841 902093772 953076789 169229318 213701466 203109780 700763559 28378216 164829987 276474005 992784664 887881286 966435668 480415005 845084882 409821091 572061389 957450616 994914079 546572030 852852582 402743339 830423404 532490104 604999215 374706330 907180783 51364037 957614510 7901978 306067292 402056934 786186603 797527025 979140563 421476900 615116870 358916124 593567932 79211000 297596240 702364819 844443215 520541156 553046354 76541949 421304440 593494512 899053558 106254812 639050105 457450970 670983006 807759433 909441541 491085057 803935513 107032608 408071168 442527716 824310390 303751048 868144502 955938197 990805884 756788553 759754795 311513240 312807609 738493840 798661529 419271196 721240382 978835312 984497640 553601288 927129058 342031988 450537717 545627846 702130131 791629036 867961500 741747966 805264784 208464305 632154978 344791517 831109396 290932545 958914569 590859370 755601427 757835833 943606256 135204136 258335577 985980160 988308965 126941759 661311770 662355953 782853451 282602229 312162404 69001118 985870165 715924243 814065703 353043723 528079027 545023381 970564567 797292254 891672816 967338300 983852619 197470754 626042417 696197280 852946318 440389736 498518870 944128419 953195813 636976756 810957351 567173938 895967534 803049136 876814406 244457774 969452853 939094567 940552471 557689737 816225212 960910435 997870931 73140875 268773465 939680688 964346937 386497635 696476785 190952397 819700951 995835188 999224798 113547965 943030294 165239616 645302755 279833897 604701830 401933358 634240931 333444727 351727253 95835660 774612678 17810628 68183588 836188450 999006997 9209976 343372831 407087450 740293380 784505468 896292991 411283861 844328595 823818747 944532806 879103062 895347544 664510229 809807667 998525 400172836 767811895 820039709 843400244 850078537 91701375 926321789 747441557 755508199 930486081 936550958 604599525 940774968 563501739 583714249 49553889 647018069 392142704 684800530 988165236 990256492 572453625 990126903 962127175 983209848 678464666 744026775 545420472 861633560 42286746 96268814 833118315 933115431 636962712 858330290 421197121 469890655 457919435 492504769 856673531 941266668 221505524 746006501 17490540 918543982 236461070 724278338 59515159 522512925 381454418 818954766 715169855 861270244 741863578 986330377 549156002 819526321 359755277 382234840 145342053 452770955 421871436 458743894 416983532 697826250 794721150 993405656 910778022 977499902 690672595 837805778 226300152 454037959 178156784 572408940 87922448 735750327 828105154 846955896 148426423 199080074 706400153 830816535 902623290 915435210 418563970 811695020 948974591 967358615 22037376 919121818 28683097 721947092 647408087 945149632 796252040 799498565 740462480 758255373 774776888 869584204 165660155 186409797 490575951 768293075 224800293 756738889 41050878 370904333 51050828 237426986 446673150 944925200 301385569 913370554 544422472 892364007 342857676 939158509 672386413 752174503 616717133 616806783 271966932 942236675 981217491 993143665 156594269 491452568 120004964 256274210 623922523 688074226 489450170 862143015 521653448 625606080 577858721 756166195 863832001 882537686 740798965 956239783 466581810 786714547 959444391 991096416 424263372 881516243 976575712 991355661 640792155 747483213 152773828 783465191 519684203 981351549 729557618 811584231 917574809 933844594 693615669 996355070 705014631 786395469 168713479 169272585 295670337 728701601 407632358 667577532 308285559 941759326 227362645 797138805 221843916 566097699 763981171 869379940 68819076 147006329 299318606 418572122 112564274 911771251 4006817 97832428 708213527 973077031 989819679 997151613 127829723 355687317 207262942 668089338 297057348 411236759 697013964 975047394 53824620 146856548 176295948 859582214 837660429 977847203 700956515 762632104 528545096 812961183 387432333 858835294 216622921 902693138 20912102 595016102 45897802 581651380 812640144 843501670 896483808 927073085 508657658 531489630 345759483 552353759 128834931 585446482 878021960 910829634 827436554 896348004 733620774 909058328 427808959 448662546 697936822 753883909 312330549 430283673 442089790 798229444 444069750 768259908 588838399 781176257 162701463 556051696 701786470 969963965 601955785 935564143 896219931 985381937 889006807 937394075 333197690 404148433 35314953 615371904 2041239 973654315 597941300 845876138 798211408 813585748 789105545 941604682 299479489 426279387 71584289 298191323 557995443 836610836 276409218 507860467 66452967 422349637 740967039 946773251 385864468 988064665 637372981 736326445 431136691 960654824 633700717 847806350 711995374 733653366 42368455 321232087 54160060 226970800 723925098 847430828 312997795 993121623 717594180 782604823 692233671 716611464 694799526 900821715 474800432 614342062 668117110 838973081 283537576 458787508 255106851 258038514 298381043 537890234 902780202 939006571 57436096 113722961 238762096 758413866 877727413 891085638 610672255 680047027 280351356 803552241 467769429 744764365 593978204 874068478 432655898 793816814 752454370 815371213 914729570 939610748 964557124 985396397 160195273 522854099 836074277 891699720 766832144 944108432 437744346 731509507 850490883 932211136 768651284 790134347 766575465 896427228 210279349 468203953 326525658 425997551 987771389 992956855 8557630 221726613 793496367 868635946 577989966 693248068 913702109 987065631 430123007 442661632 997696882 997979830 831497863 906612375 104980904 274008633 201627143 909758087 814187257 909191100 587780211 708740603 117727096 897933384 664802672 860238695 677777548 760268330 629329756 680177566 3183296 69533133 462455853 484367056 544457528 585947357 106999313 216717284 49012209 332505069 974579373 998895458 289495784 798646412 169013393 556757919 220386774 304059798 423583811 662502954 837333628 957742621 224338237 824407506 82955054 473578854 791371349 965090284 876901204 914620926 487218362 500675470 162800217 358989086 262025871 418248146 714451965 769133013 937862023 975850202 20701664 706720570 653286644 810161784 604321079 696420245 862704074 916222187 950363435 980714130 206829258 236957711 379986504 897266910 975472127 988971919 258412946 291310106 581928630 714304433 259834883 453238259 632499467 971780161 585025523 908247633 462020435 909419609 512307783 848652192 890384322 994226491 24593442 607333923 669993874 873878413 728507528 861767190 343392474 486744604 754155551 951005221 164695729 407848441 541723791 569710617 192606964 703758856 734751395 954114430 794824987 832063769 322880884 685472659 551181039 971795068 901832711 998961768 916662921 986638639 340668085 999786909 682161155 932184786 771600570 867596823 439912522 675629129 746029321 997252024 910757036 937818025 505909506 551124544 541733852 851295114 350067585 891255650 357902905 516839507 671844838 951525371 487589617 694192821 481650195 757506763 703816166 776445908 900571752 910211262 124036569 642731056 169843970 963028381 868270037 952943496 537860577 553666917 900680377 996759790 16921972 622094089 367255164 653733981 231126555 537316924 609753531 777505812 474093411 890242912 569559499 870988515 192363634 646685004 224656163 519016018 108171534 382021463 641231956 692499322 527051514 527960821 560705074 845051309 771021728 914572619 341241504 766794736 547889293 939962034 525082719 989806986 568707217 804161078 897360963 901393786 312295099 722934750 402865311 576733007 388468853 681348079 841663423 931636780 29775971 675006737 980964450 986297521 689631881 727138869 34361945 399180062 951782564 992670980 863072245 978638024 283069081 543241846 989255107 997574775 251672903 252737087 97187810 115121832 299614248 674737353 434903509 877297431 992064550 994877757 875752949 967203601 8424444 135764836 139290317 708289665 438191291 925999711 192793479 280250705 793619822 858645814 32881592 307024010 881987858 921299952 497868540 768809352 938197745 967054835 348814180 802399348 334069428 648430187 703738623 911374989 638710778 823113141 773808279 982870348 887216056 914739143 65107708 548069886 160269770 160792779 929975761 968635258 917421195 984448499 138507732 897823978 567606745 851189437 696885658 820646999 603744482 825130779 920914533 959536919 775898057 881231557 967282789 998457427 713488037 751296151 645669860 792942439 256681069 560476731 112031059 749365490 44273609 627003464 699813974 992604601 811495907 849770639 365431539 469776695 919607987 948588629 97006734 310963804 398325782 546034751 711395 956144617 909987532 925982708 937401193 967059916 243056511 958320548 614450729 811380074 902723535 994199980 42210508 818448787 181182690 323550241 181212834 775331815 234594481 960822191 426113579 848141492 344185545 896683235 987576026 990099983 61013278 391781597 651633703 709906674 673739100 904224902 357823783 894658573 231308184 533409120 916627400 959624082 653007292 930224695 666821993 746784017 813067291 925332696 567519960 615972336 765313806 805529759 238451174 904927268 79945592 856126744 439322462 634025022 858186655 874082369 100814245 840507108 781173124 808151992 151082321 507649412 539857498 748532850 570160740 614496357 374945059 756334209 39230359 315273448 601345649 923438477 7875346 558634136 320189787 657550960 359683902 781177873 232300952 339970165 652679463 726618871 964685314 991114684 789352816 901503181 153107922 606398952 582545328 844045391 635323933 801684818 939761828 973156072 861438808 979375526 727667632 946957905 782550411 845320863 21417396 977718649 839284261 849919606 331021315 565392999 361450792 681911239 857639390 933871293 531646755 823851026 240420916 668878573 595141651 847296567 804950256 951713247 409034531 586938868 419574944 934188494 714246939 823925351 722596988 901979499 512595917 822960295 205757404 720539456 353015810 518776856 347691781 840101417 373766905 386290380 407246891 543441759 693607386 750695297 625856383 758427992 295276226 389013937 498525875 921667836 735132108 957611261 415818516 441086246 390868992 647629092 123483444 535358672 97280500 856002255 677995190 988994383 192544693 683961911 118565065 380393841 381439482 564427969 772522733 982372788 998383161 999383893 882080341 989674488 532609019 898034797 246558175 316580545 295086116 755364615 555951777 875260295 734153538 977914784 231629068 880100907 206498402 241175103 687704341 851952882 166490736 329002682 633800881 729450933 899208612 932541895 148135594 750864990 201296234 379245966 25726684 27758040 846533092 959187971 419049679 660288451 193222778 316090882 877257073 956916306 440005042 774052430 831357803 895928525 995601216 995840102 892392756 907137479 905261657 972890860 652761057 943775673 165234456 653002687 297947208 741097920 91142253 109565859 139575212 902320854 256248115 715364525 808420203 854793561 124697409 478685800 934808144 978633095 732820629 821469456 401189125 793353679 854407240 980974788 499605144 658136934 866625117 963650983 805653680 858282747 768361315 882971155 285071248 540325095 882687474 981861399 749444508 895442087 529404452 834082850 129014805 913521308 234765547 894519637 278348794 341035525 657167766 688029136 912705552 943502948 52480021 423698644 180685457 770241133 843540676 915093321 505427431 767046467 823159815 848331922 835623357 945509445 432664014 875368682 540719919 690094573 515761714 823764830 374818960 837168834 673685253 977452018 58733966 537440329 114263833 554411490 220313264 601412135 275011626 917451532 583220662 731277966 302691204 302946428 235195446 810551139 583593198 794804405 909216378 929786627 520141482 984190315 783166342 925376300 596497358 963214995 793198310 845187482 926207206 972509200 816290690 959773331 965924989 981214240 735427716 971765325 782148529 883350716 103590045 270770547 883585464 945615298 90310515 847766781 832712620 867390342 875223332 888996337 657744110 852989874 312861382 313453419 767862853 921666052 523622213 922457849 160931358 779123838 41633251 401412642 549961090 648033398 888872698 897072797 403665746 492813930 811782890 898225282 112575827 301053417 914908008 964328470 369014040 886031607 534526100 950463395 20005638 654327823 250931404 368990025 355137556 441086823 358716236 904312194 81658823 993119857 884505013 950877812 40718688 768117612 147895983 665768009 915574547 987631836 118037176 492152905 397000439 875446388 277153599 653743112 198108059 719637359 674585611 836821427 708128499 793635459 677463282 838477012 168963883 644941575 359381712 450458360 548288022 907419772 304072905 811204936 291928486 488155225 883091140 900880271 815933453 961992610 406870258 885521845 224833004 662056720 563744012 774649661 304757205 637138635 522036197 813515031 462239281 773920514 126092626 618362687 7562051 887062921 119936987 489305955 399311263 721053352 938940550 965228602 826472941 909656045 167904277 252825453 282457174 320281834 336769875 831949170 302410223 639441820 70554411 862479056 820036773 994982940 570561327 585861507 538205419 884250547 134925181 680229650 473985944 991582014 412563892 698612047 442602210 881600805 850305483 909524237 249489113 672582329 28364802 246022602 57940265 122665799 816633897 865499304 932090814 993889058 173088899 445514693 80496383 992199346 258159427 757904529 240002186 888308823 966090471 990567662 79551747 381773000 359245514 740907099 428241343 967050887 814544771 996518939 461077006 972396178 108981431 847756668 809063113 859646250 762567457 971939007 726196709 779154010 376972028 568874010 925599949 933697755 42210720 686462508 834282966 845546574 933220444 977692450 142848788 566782207 744806742 974012968 535149923 968905157 345561062 886117844 611835212 787871748 978250275 994472333 463094255 557977330 504105230 555673668 300504772 860662280 834250118 900768137 741825951 818082596 322647949 369810652 423984274 880446516 31689880 762155002 404423116 819733815 554970434 857561739 893428874 913152053 870886893 923660676 290807086 576511302 113811430 125158175 394490153 739589819 352911572 827358590 763478195 857599094 450259753 467133175 408814369 637411968 102099637 457718103 983918722 998376209 925243211 971565872 869359557 892689449 911372202 977240876 38785051 684613562 6339944 396676840 188920239 787955637 257456950 569442378 55366816 173633205 88161823 455605037 747552125 889775413 306015651 635568042 714613413 923496581 349005537 643192715 838357435 909529409 979528692 980475150 427720349 479354672 185802303 621218225 399360756 783529867 514120176 917455331 571189099 782639533 526562867 681404429 106259972 259365092 348482855 814744619 371816596 519683110 533983515 725315982 589817372 968316830 47717016 263581801 126872383 213269405 588477175 708285647 318623192 993514121 665035150 933991342 372516248 825668688 860383430 950638686 675372287 724006691 256685109 878084907 953764847 963473097 654626975 873769913 498999309 699813658 169857449 733578983 952649497 962883578 290585494 675133579 776126297 812049180 943053686 997896033 896765839 953847011 982743209 985400104 84730209 976235287 175484053 705618372 431032999 487580233 899505118 962305124 583701610 862662746 416171738 608889891 657446376 936766247 666458878 912830163 264339637 962157361 881228151 905292034 497948362 667455337 988422448 994123698 23128008 629027660 514814344 991714987 942450965 998418027 491903787 872315204 113593171 140806827 238241881 733173138 226608409 707392291 610624294 949651719 832840946 841937308 596420849 843297258 224318003 382538187 954270803 979863849 140109908 149090387 898573926 931528057 952392118 985225623 265085599 832223452 153744335 881476532 310462047 542839391 449710177 676993535 560423185 808269276 514589811 870596172 205389242 275241252 331278473 870859954 474444587 485741366 648490681 763307924 320504886 783082709 178422523 777362433 260580537 975591342 723800199 744002720 355851310 357692449 662564338 725252887 870652900 915767414 769789011 859072342 772665031 882042074 172143362 970597179 340797564 433117938 178084126 255353764 104175763 807841773 879985298 934950690 825202894 973241081 183442029 339780666 146662244 556954085 50997563 673929930 66287058 418907700 102620411 458792989 717700889 834632114 440458466 967908896 246423821 485063630 646119730 815889705 702767952 712105072 442921270 688660283 708630989 770443134 526403360 901587760 967743276 968136314 279303362 350999845 604023139 710594165 547209437 669423137 262621108 691884985 227073580 569825580 431044219 856048344 601525191 728102783 589070235 882662180 233363045 535406653 558995621 609785551 879421128 936133250 887752231 965996431 536142779 840438279 229986935 969639102 418818433 828764244 435090346 461913085 588670307 820003104 729700845 866488939 319544329 577291351 962049694 985637178 790798538 794979996 215625332 264078085 860462694 995675941 792146536 895170675 818171059 860302442 431847704 616025568 344628253 756865299 29375932 422299301 651616806 741660304 643453485 814006293 354752765 568076056 892331681 946252669 303359003 716560149 942167061 958709035 973476714 989200331 435664391 998012746 66751437 466530402 593934363 865537686 351836665 377573304 625299298 748764000 371186637 938324446 631626823 943959122 260290651 735328690 30661502 975848573 788264324 997933788 312654396 954259006 175983709 434874872 568336425 784010351 804812052 842391845 343062195 643803738 602211638 646209070 87263700 757408719 368696402 435714313 608443520 656005237 607776921 688851081 294309839 857842860 739664685 838415765 877116914 955357962 760333503 914834125 75090202 528176887 901335927 938820132 427219387 542133572 141379772 828709055 130282233 960598100 913867903 991503599 722442628 929400191 39023741 578426863 731590641 948136387 446490145 537081593 709137184 869600183 516444336 669090545 293847152 904121015 606091161 822149093 231043693 548271355 634248038 643714580 953888025 955886037 394741947 515421046 617672465 713965240 353680356 893332521 887531387 919246705 787212971 791218724 874341157 890795202 468405506 547405469 471249656 496532039 480941687 717764537 488758415 642334106 591419413 800172427 901069350 986177307 947455957 961656834 524260621 565220833 359152506 664800661 512899435 667679737 710060818 983544328 451570115 879369472 443546139 909689698 44381742 655989057 599807667 655628857 606312044 844368425 544334310 888369517 170499430 901807825 825377035 991631382 880827766 937052185 78808428 440309207 875794539 970467830 545162381 598182958 669751905 685335441 148522506 362760052 102287664 164074057 24582030 235781284 445612777 990860476 517439156 664991629 716590175 780080605 798820753 867135853 39399217 78532721 416985722 977264073 331105406 530857643 585241737 751030456 39220929 439752553 830840074 868012961 9145929 197254492 724462215 936269104 870184176 924299904 593986157 605828464 676327900 933193974 770162886 795986417 655456130 666637532 376460745 848137900 430993033 755187316 913554513 913775404 975735523 990297919 782640249 794945454 724466420 877046513 417614006 481181047 38447655 977139163 370775615 973759308 238904443 897735990 941575318 946144969 447593334 947353379 437052958 986922004 6178388 463350110 571650334 813229983 53280392 205870595 336860108 343119267 626033079 893663645 8225269 907071991 442319331 477263800 907157979 931196805 698864104 904635971 406051956 580607697 742059734 892294826 980923588 995740063 771323377 851493489 785574764 926072499 506300992 877535646 580303488 821774183 413796078 563334240 92664887 401090609 349839122 633859257 954423765 986859850 75469270 268211568 98890776 401937293 650498447 652351282 259723124 937757596 45459668 450350904 240510904 397999232 254252837 733062388 661930456 706163183 48577038 586899402 379696789 775254508 865635340 895309212 582026309 845566367 836025482 862373119 533210131 830854529 168718840 452797201 98006043 393570432 408689960 691282255 508531378 664454499 871936021 939655402 770406515 817449138 118464231 396681433 131969740 745220463 247789935 375602775 130077664 845126274 335948906 593695910 265324113 271538815 593015531 625072625 908059963 945891462 40448308 338803477 618132608 833577454 341745514 506617600 867512664 886865916 822497810 974077085 63791649 653023453 922810712 969214358 72939670 114636214 442039372 694462361 11493935 161408770 739931134 906485674 535828005 727817837 137584501 601803134 622576259 853067981 922189282 997697899 454477122 764142554 346356568 529885729 64839349 76394724 142574253 618712492 482097932 608493295 240409361 550689977 606515837 633821324 119778025 720264652 730473364 962476813 873106435 926338822 376836039 576974625 463253351 514329411 264024927 470128564 3377332 668585692 629990124 723493150 843806351 910176192 872937759 899377134 409034443 822028815 654257364 913969880 515590675 699070963 221237666 461001998 580212387 820391669 205668434 750412917 211539068 799929622 132381107 999983391 546234343 714627936 217056501 683493183 656172533 812758395 916657170 933409772 911455302 935567552 44873647 850659613 519960625 734277088 850806680 866766380 926336782 943775916 920233878 973546121 845388994 886782059 115124911 478259231 368154453 490029659 422757770 877228776 379667870 716124648 889842949 937534651 378311874 873064608 748337331 825888059 722124851 857050047 730135739 927145976 915676104 951490769 21792575 880602233 402056815 767914703 99031310 350029531 211155563 760582897 16177681 919220636 601900566 796469706 414878795 416987586 53833495 419178229 616465518 730530018 462033893 581783322 188743493 414023006 827617 508558508 33440280 925830580 316011183 539889903 520596295 871367776 254270327 503765762 140448993 729566077 711967598 938583903 194292823 203719729 659829834 914788005 200149090 559039489 223092327 344581276 243807874 598317598 882467524 932369193 289116389 361009447 753560163 790447312 421556683 977106556 337627540 490183110 150704223 924034635 186302986 668502652 184413078 324927124 713357115 716244383 839976592 996475187 864082157 960787647 766633831 766993284 349553507 455066271 37401206 425892158 358734956 697015492 694765465 797897134 443711495 531907994 432252125 875885678 446768800 630877823 155234800 605089835 106688605 929505286 836716381 839853313 453373610 499981367 474474699 876693103 780792281 820998497 151646400 950260807 73605899 176433969 77821249 484178435 596707924 944674036 602020350 777090130 148024884 901695306 358657201 934608893 446843106 715610124 539097384 917078515 474440644 566485965 949390385 986865725 246026767 564835030 42316873 239947689 798114807 884147754 582098182 880403853 366804125 487762353 674106024 924058453 619266561 788086504 737746185 834191465 6134043 948417937 488243213 928879963 481425189 987571727 766004385 929456351 774417470 924639972 100260750 855586152 148867639 822414685 475212440 508683261 555149174 795890551 497618853 971779518 136996759 914385151 857795905 945593304 88831192 602040183 583545095 819435036 820155180 857047502 207377241 397719297 701095867 932232787 425941790 590584544 789655751 972618254 718426479 912029119 751719448 766367436 815828641 984164535 853996530 979137907 975000119 998448105 116922730 993588548 732978050 795471324 109874326 339387460 901889041 986411821 622755793 777732514 976486584 994775673 245278025 823766986 644975643 677972256 775486354 845734392 224425622 993619398 733373495 956631164 231753851 638102740 589919481 776486761 841303123 980757375 614415855 926416253 334694443 536786512 410424113 637751827 875385752 996794457 639529804 995899719 442735662 583303582 810754688 945100692 152114222 616508490 486771668 839852375 498103297 557111212 109988673 464791563 621433458 706110926 508728759 954624740 138328139 313694930 55814337 934199758 629243691 966185346 859866052 985598746 559425192 675232976 590991786 793144979 414091252 610677416 703672506 724200883 725036832 889574489 391642067 805761410 68543064 878308317 687672972 736366151 15233738 459305398 147579599 635144496 779630074 862481100 312354231 374842781 469682930 569179110 601764901 750128216 293884681 612114751 993337649 999620017 973864364 998686707 901596492 934469665 778897259 815854596 95020433 158009132 734120106 988836544 849296015 996094057 106756697 935710475 791796228 812625034 944795096 963072683 479395360 910492704 639387680 893261674 675435700 750724696 844532 126204308 383937623 651743368 177651858 299629957 851454370 961422850 745950371 992765474 425365452 654932379 396112235 940182480 833970216 923281390 298487676 686224732 964803402 987969317 309148780 554392893 323965311 448490716 539168886 775611355 320047998 899901044 349537122 506502546 829706277 987462268 962408220 997467150 39967389 732912056 783286576 908738600 899958970 945074387 80378648 255546178 486069749 780822859 183834274 457428692 59218730 509086535 379395109 412708383 593331421 839590156 949204204 980863440 855232995 988333237 85031340 390305066 598091741 883724270 246813583 787900392 868918786 897569147 130153996 752790036 207980564 724826658 921930446 957017349 737305051 792367919 938966292 999290881 772909924 796624145 342353083 566157884 780863802 833143046 689828248 822005647 87649448 383912620 548918411 784007226 572278279 944322006 822358061 977889501 199289257 536150502 397770759 554238790 835232708 945677616 145911486 670609081 649830175 757796701 850554442 969302447 889922838 940139567 811462209 964072953 526988128 571775038 735689771 934180083 908523095 979764171 592335753 922855558 308206979 431448596 14873522 825569849 517236104 574206523 768978177 799441805 409265362 766081103 447582035 827583582 862202921 879599563 104234749 146671575 488690724 910415470 135237278 283022382 584230056 905229958 316215555 633147261 716433472 824882694 2308726 48642508 340664101 494422310 982266423 996809815 255456293 282435143 850514260 934645508 460003612 620454530 133186151 318829672 977409985 998793031 478274000 608497208 633912422 698641067 255556523 803100293 189898491 711891542 143033547 479622227 366829258 501701841 31910619 84618263 36437172 431739191 828384416 861734993 712515208 946703553 246567824 476480293 725708797 729858358 272089563 992805482 607308511 820457914 717323666 886167053 548242069 752017010 89479839 429274235 92137941 692035984 526302310 732162048 632398019 955067343 956660453 962564175 542809861 940263936 563168233 809557936 100507601 557796108 987780042 989667494 320897546 399133053 944525971 989002640 966681456 992629947 236234964 542614999 889099207 907983760 34800558 854369642 638834393 786327339 968220424 998764956 345886712 951799672 461087851 591561336 683617941 686434516 663585663 983468426 795134335 936790748 794251772 809984645 335776549 766192096 656358286 902354593 131582601 869550149 119241247 844427145 926473457 928265608 829453901 860242358 44556360 414051604 479426413 726074558 882844453 901003852 638960098 872202848 549584053 953106467 801723925 936897267 1841158 82580669 919631668 935641959 390003671 721941836 654876266 804937113 918602367 955136259 261823112 763168297 597028657 633999614 518206521 805544354 301025993 661093228 82179462 803864371 188691592 536889804 745758272 855514246 886711259 989099507 858930328 939268800 668406876 687811689 512879711 854649951 950830640 981786461 61007570 430797733 156525268 504403877 660468878 811199592 174100344 618506166 241577889 773980135 240063729 661869081 330979011 511356046 399090778 721182332 662725935 794609413 638359686 837005816 988116711 996847646 574156772 791305564 95566284 404677381 662805699 916319305 160003812 512552531 295171060 741754236 739048179 752490505 294756159 609027201 807933160 991875263 531562428 897682519 354998491 577600157 500113733 746090967 662071219 782852173 797185290 963018654 992477429 996048961 491640941 511754184 195261040 466820750 347242772 935754030 573759623 801774430 422528416 872269733 135058561 994327884 936034988 946602681 798600588 862181077 354803249 559027658 234779460 735783201 244120297 901667473 341879314 358881956 759734559 935241447 470807996 670197770 401898724 902791484 251761093 415987195 661505555 846503666 934222238 952076373 369100563 691307654 449316638 551232528 999120163 999583381 47621719 394978483 207711562 275630134 609684719 789823088 21963739 985204579 832019639 961127663 551748135 786618851 623542463 801203654 213736179 755165858 465364269 767577273 5422049 149494440 88512684 854361963 702761168 770432191 74786047 304530122 591217024 781912548 284985268 721765300 197215002 231763837 969512181 974513767 44915331 268647832 204743732 354705759 619240320 889121467 828665272 922320500 585944428 699808969 908400587 916888837 60773463 370207525 525333643 581293028 750804431 898213326 329015659 390554782 280360996 693073839 434820960 702446018 927250490 984980193 928452026 936224145 93913123 447885607 580024828 900033384 275513394 531002046 846687942 984124042 834930637 930570986 265223368 435443144 517080235 522047156 860573191 936938585 49088577 978571086 246822639 339174944 65287632 308489724 175830220 481266301 235303052 684344551 768077637 797499051 608503416 873052877 137683332 581656497 470201399 489268085 267389235 426609843 491029025 776928386 261577106 596511940 265852973 547381900 258623672 477684713 981567556 983968708 967578512 968709831 404059355 529633228 326444448 558239798 653179748 680179185 431481887 685113182 528397989 750179390 978272864 983980499 111800346 397148164 513942627 977104236 880938819 932496346 372738501 523066930 293599916 877674880 658233736 879293732 392695335 728976777 472976665 738468044 512008736 727616776 83414076 588840376 211953894 455938530 723393370 785345253 631390096 776643644 155183739 626257149 754814090 906392931 8193702 437858225 543579832 760486176 505474441 825185399 12651471 478245583 778978143 941103832 720274479 723785661 919622295 959734854 581934188 840820731 17461272 931686836 15203613 376067239 89792290 880783475 487626685 787056640 419360508 626802364 551891310 884199392 518502640 523546639 5575207 12992143 157889211 381900683 933185610 979431974 260196535 464208273 223632189 996151910 197412017 583671599 374445433 775832268 601651526 688963581 125816233 418895961 86845272 487457706 809410253 883189319 133368916 463529914 696183941 741445777 394197999 702556075 211709976 607676077 534524403 914448465 385096797 672046619 253708626 889602641 16880812 668692690 806122359 950380062 462647457 975539985 760677833 790289307 901029472 999720565 354885336 562286577 109575404 180580351 379512730 557773485 40299932 303005494 604746947 760355363 520445273 726263325 169451060 614381960 759957835 862795940 492484544 630619185 548762093 570407427 328906568 940511584 485440390 930024169 464155164 592535994 318209382 668300033 260421807 880159955 582707572 738988072 218723933 354277379 820788914 940338590 860098018 988782636 703777697 975543306 759135341 794069214 40306941 672208154 752291818 995256852 595494984 969943519 27723906 134817247 526757687 653134732 498098562 656403806 336496797 941959180 278992386 449530919 205346540 850925294 920991879 960729689 769884049 806150863 642858975 683853481 338740718 989165517 589725808 773513442 32236848 119098149 104126746 628877609 118011950 546337325 389975976 553774241 671749917 973353485 113566097 851540654 404607667 821602711 118593403 158691988 309156801 364298999 332729243 586913097 185115804 338284855 571653605 612433706 375133001 949228485 182657190 736652154 427523142 833099809 920215360 983849800 45863918 826659771 278189894 868001878 311883480 574097806 483193675 583712665 380798384 990618496 402294438 957629645 287250294 567208813 296710051 941692276 462979139 763519502 921154081 958423573 814336438 944301872 624343669 852839677 625264577 645784169 467284308 982860074 616831333 663510549 658395379 965908076 889965040 933304397 33748334 355722722 604652727 636206425 251698114 471073031 103504355 610619971 64021583 328888110 666150588 783281503 211424550 362534752 775303742 793576213 971447152 988820130 208782307 531442552 714764177 985184160 620378242 854306777 954791629 974311114 155400468 695890844 635936110 638634484 440859067 599683255 556586368 605039807 15614051 875200661 769756555 876701899 140141229 881314254 207742519 593831343 514345604 627040216 730727335 785042354 62639866 189021094 549057337 984100894 551867128 983847888 315171127 451110153 538038876 551374453 21374650 118717262 610585900 639024696 441167288 653728059 112821544 938799575 982460762 987030179 807183558 855027339 933363772 985433030 220149201 966723501 203494282 643758769 996046927 998874524 408568076 534875320 392502957 597000553 261348587 424442091 314381534 323832370 130911945 461763464 358284034 701361509 552697285 840910563 226324778 937931789 85747185 278655978 171156862 625338850 776570714 880261682 823013786 877317809 914595481 982355591 227655043 874188667 545168538 712434965 77628129 486352470 157213393 657666993 142202134 487148213 446634318 599724078 911639833 987277395 807937743 855402365 723405581 789212443 550394604 594882940 856475313 942370853 824845929 857926813 453099070 590092112 158536110 395612315 370094461 980937838 577700293 829550945 380966413 680898105 768349081 791369747 227673523 320762300 272168644 889609222 53606692 368585466 517665116 885837201 865746955 965555468 289113203 940344827 987111873 988750678 259470451 797951274 24915240 529258867 664458955 724597184 537873062 749253129 221977232 330053612 426969934 812177715 335614166 673464379 969881606 977051978 222916131 721064666 864806446 879137585 757935024 932712239 788987708 876498135 74277250 287788518 208552741 271313896 215138823 431528336 243554584 803376557 401127003 888986552 935374684 987795902 263607435 625499554 354273994 749066876 647255438 980340790 393270633 774346898 871062936 921194864 510194746 542738855 261420383 734904630 617785426 971358139 864075702 947532097 285004775 521041354 584064978 935960352 451130094 524606165 338064189 461205979 594279532 843366518 239816898 495884984 923333915 929106985 137474427 534636262 986919088 992088988 140223238 445585754 601043643 946377402 84847264 973343765 33633142 925283724 302974509 349247101 163160799 567643381 400345495 617726485 2574084 461155374 449430348 479966600 115119073 376388070 88541252 198422225 982713844 991310659 515511906 622772189 23799376 538273041 241836464 694586872 733171043 764434707 494105320 779054360 160937490 545457905 503745228 701891209 834417618 895816792 452795305 534876062 491186143 617592453 307177235 629469288 789578653 840471812 192393435 196401145 200789532 923033458 313021656 568915350 525491339 925958321 273692140 671122713 309246927 391414707 784472006 991683088 220927408 394628863 386893778 461735955 349379354 540584356 96003083 510146195 31072755 692069940 704062010 725218734 416473008 628275979 109917904 751124235 758049734 876648277 949713894 977915003 845795568 882534748 839488712 889696075 455592578 829898785 10275631 378764970 597943034 871358448 82876995 770890787 396634337 688309790 324042866 458697033 520113560 617138887 64658687 189407288 509092980 701376461 742355060 955709433 137387001 836602790 453207791 551673734 528159559 551850121 36289115 531497879 637194507 895382665 719936008 732490269 525175312 620810896 75369379 803305960 497238027 952419208 684971475 925862772 983227805 985466797 264360126 712988488 797978012 906580432 80282134 359895811 523268501 727126559 161441557 986369058 422155354 434155439 421568443 643327247 89386311 248805898 199471853 705489278 49073083 589548937 762857417 977665090 382478324 965731338 454440825 612084263 969203809 997239363 868382206 946446909 833205430 979507036 784732501 951012732 99917097 698819388 29735844 794361435 252172136 587369786 66763595 643606666 986278627 999779046 739736256 956810959 836695592 990493931 422332732 903555478 260550989 677204888 204853164 600288844 232818707 371553142 839289283 857376924 800301874 874869603 319790943 464888536 353889998 355291817 2849110 407466935 266578673 585344187 382855236 652799738 518098901 935001693 404679357 704018695 936043997 963579179 321582786 832344191 639418368 868790012 488428927 606440245 994294541 996930939 102389620 494616328 149882561 700332492 192667548 542966924 198808365 494118943 506325509 681513953 806101478 869161398 694362976 928797849 67533627 97633841 515272785 874534220 741299925 826224496 603417963 835322430 47273120 447291472 20957619 253240724 194420291 830520798 777664032 857890123 49688387 215890473 787166924 920679446 225531125 903706195 997542873 997887273 282615055 553129187 939926391 968652713 466357144 573032201 399490760 911830584 898764081 948149542 569211380 917555962 637813058 671512476 746779797 849351234 161272108 822204995 905537507 965897868 93248827 711126775 580358900 763071228 815603259 967573004 109024908 352122958 452233270 754444774 996285334 999079768 985516012 992460662 575039158 613598248 289846910 730004538 693119532 892549872 857982626 977318745 792780238 953013307 507183984 532042110 618835877 817619048 601495228 861610518 736314872 956720340 775219839 870686555 433966209 883101102 21429165 988221352 205910853 950160299 208689402 847442865 181501409 516894117 913503598 936827621 554262946 965095256 567850551 909753424 956622318 972536977 260427050 440172418 650016547 928601224 430827212 986835196 469326253 817323530 134746420 324849382 888448361 963522439 752909916 941542258 319701937 699960777 607153222 806875847 762533669 786365269 83153085 747491442 387741789 475399679 860849011 928767615 748913330 949617317 969263579 982240435 110095865 360195166 509112395 794913901 644000375 855108381 840528183 860841333 869565384 870327710 879046095 929691237 303759639 901750134 169841669 970999577 971881835 976784911 613027682 615270919 433661030 922396503 597087924 779493104 73464980 847851904 978257321 979910555 815926691 817852767 360368671 892745900 348746243 351366697 702697361 821873140 806131668 860107269 113208325 501018296 653647793 799032123 862191596 926105384 153825738 381924458 920910442 974810173 196716471 671784139 945476536 964340883 196220698 245320005 968208143 996976442 535026628 537081099 85279585 903582511 23206511 782382234 316327842 587471796 900098209 924280402 340974811 416705382 677238286 722888950 422019619 887970994 363838196 480195176 324070655 971810559 902485623 975586749 6338220 653328279 785113876 832069066 998464241 998933380 494820561 856639306 997585001 998027546 825521200 970668529 747548763 867192463 148223842 732463175 363998255 906806922 79984026 813114720 272118395 419970376 578292618 732499155 651057712 901398823 679162927 790208091 801060107 911938797 846484359 866868702 502331098 560241294 812062799 890093109 367739427 635664054 409848004 993288898 876732474 900117112 989673165 992248565 713404869 893820851 507455389 758895380 627128542 982209326 965131247 986491792 517169841 855117786 17032523 84227838 140039251 890369098 236003304 942919664 510520907 932951400 252073347 718038645 379778177 413487006 960148204 998205917 748968013 832472998 117652978 682359887 495239248 849293656 417366257 602407689 447299768 627855571 716342941 926315413 23521009 167762605 301129807 903722294 755952398 779948453 494078410 959630888 369101622 724982087 971485626 989170713 286259916 404449172 831570489 855753659 660572408 881443465 699949564 744983121 231528167 581634226 854857239 973026285 934300543 996145327 111173804 436566400 828037689 928648774 805289719 880673872 423596011 561612092 252602550 979441776 399705875 794132493 443852176 906768075 501391091 661977087 643996810 977305897 174822472 664656681 745410810 927513766 237884300 587911882 887105624 958985361 836442689 995630336 97457383 399322470 433185437 834200772 719110366 949504095 448270202 981949155 617114945 853227364 525761823 653181150 490093547 507495757 121939221 791759249 923487839 971608425 316212871 700197645 903428937 934696065 959444208 994219515 989964337 999763649 72406720 174114252 329936965 728513925 305608815 763770418 652376240 861508190 160004099 798421447 937708078 974948819 887875079 958225083 10320413 209904541 559212444 560144776 969219769 989378615 189148533 762382754 488527040 513661020 338474404 510088040 302386166 907885907 330081463 494153402 854339546 939932973 132183857 734036932 95233897 887639842 626245052 985395774 341958144 938870128 726394479 918395948 777246067 823553282 420396901 656379881 204851453 878999287 164669876 823979710 468715982 587038290 855401080 878263831 234977082 994591300 955029181 965487585 515830773 870967625 278206779 585733594 934893401 959342649 161568214 992930131 886741560 928431220 948102186 972690102 850955805 950447897 979718493 987812110 241213376 386072270 757062713 887071040 931789383 998389920 203921001 966808913 511564193 720994597 37524599 122712808 668928180 920231577 624763164 879850762 643395053 857315992 552076722 645182090 61110582 236268265 180623532 947270985 223666893 705277318 239145174 486543284 4073508 856796782 252039603 326207317 883368030 963620310 314231338 516631698 968311118 981737903 875275619 991944738 414429690 683262386 596276346 872689068 504996135 780420481 269262174 895183564 476222093 483538995 181539944 232104316 293137006 923661235 726332874 992278303 943640897 972441957 586691762 788541960 510521946 738378744 341140059 907432167 691073761 802855996 240396698 390639888 753031419 873107581 651698829 887485035 379675827 545024466 177224611 516784722 16178964 760151714 80699517 352042033 262745374 735600395 232821860 406617693 748641282 856752845 19235653 591509601 657361429 927404806 115576484 840831044 652844429 747622874 438095247 687281933 550866958 788868244 432187175 467249141 100828347 527977001 447141618 767797600 166153902 623947038 321558987 652786616 713498495 808726654 108640653 992949653 990046603 996994550 338768611 734016653 544524461 546149400 950170057 987306654 308955999 884449843 673490459 863406575 771742766 930799794 914508736 932076601 827682640 968311991 226326358 788746160 683432921 862372171 341392400 719392385 733290780 805578694 290694402 758891382 833245911 880250501 760880211 873591569 971226982 996544793 385707381 447813991 364199941 855372614 131081552 516338577 759902214 985192646 835262407 862859379 572630662 868844575 300600802 824657672 630811435 937048544 826116327 924126102 339580278 548867926 811767912 982449701 568061792 810268054 739305230 794463955 80331643 450901447 264016782 424830980 994097337 998403977 838256391 914455224 471381115 565338732 574156169 589484113 396267834 682206935 569730924 618309405 246270462 886364357 705837539 724648902 436159889 670319572 284759904 777594205 673892292 860186951 564790332 713225545 137275359 394340501 990019415 998350514 103826924 997222554 993014185 993117638 98321451 319207752 717851865 982879792 525368191 565014928 385167332 876990198 365193595 418600108 700884740 869824632 222932508 357756135 573437264 660443042 390795648 665760890 244483375 815531963 801900774 887635742 608542417 791926212 688669976 770564289 327806910 413940758 225709198 721649899 697905027 741474671 413455725 814087439 542910562 611201485 194300450 570065426 714317203 982921241 645115706 788915849 322824186 367027597 853726878 864294041 613530681 967832434 143530364 421904203 701110005 820725648 889685954 975407314 202246551 353275064 113741481 530975592 410964186 941545380 197913505 846609920 775693722 875709525 317093669 912585505 490023624 834792418 575466366 765880443 460302389 671644940 222153156 892535634 2883625 763937872 243719990 564133763 515980629 598040071 196857325 607002979 858218733 945499231 549916544 899335459 497513933 799224091 334041048 789368376 189779298 667786351 193123112 868872957 884865347 962206350 309260029 560783343 423117360 822830336 15293900 22731279 434509663 698597781 795211960 879262906 153482321 950416353 952132636 968262263 668549050 891570965 511273559 745217474 61231180 463556375 967235130 970500735 525013208 752250412 564272529 726826978 337966759 528613783 858416998 964503733 809697762 899873524 681725583 783190059 717288353 922003912 286490538 310273773 832149562 885600763 168547810 747625416 730761342 936895050 274641390 467304518 114533936 591772195 891188605 953544811 33810839 131925556 521608325 638085618 437716451 586146383 533998000 708375012 715954152 802891420 840713983 872524542 604950203 960656402 206936074 907862657 819070022 951607666 527826239 618430724 536755443 836026042 4520401 984831151 233770045 450795159 325906752 583652186 892584479 895894470 728032125 829588224 199172617 232426032 77972720 584124543 848508641 909236387 916458708 929565719 598485204 616810833 52237188 251282087 36831646 255537760 364243463 959842928 863477246 972406248 269662530 580762509 303454405 931569850 82659133 912581828 419245380 468869013 788730680 894992391 471700869 832088758 387015102 596820935 511123123 765569061 747479419 817629393 834684746 915253311 882562919 956869738 782492184 800950953 399092758 771970737 912447535 993639767 661642873 875364035 620474643 768861161 302722369 486476219 598484397 610916566 383184253 969009780 272755641 515942099 694981073 992960081 162079464 624453986 315466959 983175595 463383688 526493274 660632779 678795693 69663738 203435719 992572816 992897417 930574551 944307716 98519041 151558151 354996453 582079274 230430391 415813878 497651717 563557695 433819581 564466154 458702099 491657385 387066925 760976006 790573733 811077007 421575394 767749073 304345347 657948507 968376366 977222311 1570151 730142244 781213439 803262195 479055484 498822799 276624057 740443121 194433545 919024654 259413193 485433016 813656227 995406367 937537173 996242480 710549377 852440066 192913546 573360711 971903473 988724328 780962017 784457838 926802465 958678197 678919076 996181825 137156939 315550141 672390238 928854976 912074027 974839485 819126536 898372358 736028127 993248532 333618807 802450681 873875808 957727304 121833967 760092186 22002257 945086775 792251954 992344880 41497134 756131180 609745414 780918360 488748820 841506068 316864727 410977013 100929912 681868568 108937696 612324043 612115032 637247278 554327559 681316423 525016213 898452864 128168148 394999356 993954295 994522052 69851288 317959733 899348688 902565009 400736336 742087024 143490247 822926255 433108057 847024362 301542424 524776547 578393138 797727541 690077015 938164650 645750102 981330109 885607620 892662758 641856403 732223982 521918914 744045466 219503371 381105235 620056272 957492882 70660227 447309199 981943300 983051032 186855688 894994997 909614936 953422455 168268841 494598127 852921041 984347056 877935263 990055768 143473198 727818618 117989336 176685453 394108589 603544745 502403747 717187048 226925531 690458945 247089676 617367645 964477364 967483249 545524238 982423197 639760072 965708368 771900105 905705334 493946849 511082005 9921998 563944189 536598385 800995826 982816398 984039246 239931817 922916960 609852669 963156355 567247701 820332008 894967036 974709315 401266308 529001793 40888460 975200480 274736525 506237970 178775532 379527334 194335649 385830253 201442295 220856823 906179504 934929986 614203663 653932417 871377435 921635756 242411123 608887288 879337878 976131417 712845697 755198543 538678704 942181905 777642007 784565952 540453817 786028281 101538694 694277958 127624860 197575378 204179098 960435194 920489102 937541446 11335744 192257615 967287826 999057114 498309596 652319039 659449033 683992470 940791327 990262321 613239230 645627274 467452797 553926487 962276204 981236063 854053654 882261898 786304838 922637141 267445249 569687038 776517897 826374547 611701143 844514001 387736292 949766096 325501835 788400226 938220230 973279156 826007462 851589412 216505182 382025981 85906279 815010013 412551525 890357116 98260386 660128898 935688700 996472565 332947245 988040079 966418141 970896527 977801699 983963198 310241477 870771905 334760946 728111604 662322263 683822898 17946126 973299118 49319266 176356271 896072920 986236538 253353287 869298649 514320916 607586749 348191449 440972368 385750790 512288553 424360610 625476339 42168473 688933589 354346318 754125461 519149096 750296789 754159794 804406882 189141831 308154749 920395418 921043330 940641991 993147783 273484276 911389994 378464492 540115396 336119732 598414508 550729331 670569380 114319033 520709211 216100405 325524318 608274371 935383459 117976621 584937190 396437534 597641334 781263336 814228712 97001 677522837 339839789 382250290 72322091 716666241 74828733 100797004 938661470 986950957 531907920 738888249 360860117 716166008 747520063 853111504 574750898 999991186 742868673 957421987 204120323 788855836 412247312 659767309 243008558 591805114 392349794 977382849 130101093 603349527 685051122 861416772 493842532 563928231 27664115 890546465 218428280 980715860 878782400 906510965 869581957 948753144 16700132 152360734 517410239 852676216 362792980 728834562 247132445 756553908 600568464 843128964 523846046 592547633 749855893 782578287 221215709 939294474 440622169 899570536 118781268 636708786 426960318 589656321 672155012 946088690 23646153 525688464 24893852 143473058 386144849 683813591 522333160 618237444 14082031 611249139 935547282 976482901 292130823 625616861 551192647 716698241 766938260 968828492 853311609 973034258 395046258 940609497 859407824 966968255 310585975 856235698 52835022 782373898 665718095 982295669 589577011 795833047 427871399 905830259 539466396 850960909 417888079 575003803 457115604 901849093 512761587 705281343 630352614 653056793 639257078 680744761 17598674 565618274 739589416 913513897 440838369 539078280 119752221 503003230 606338506 939845213 287076674 304011505 307013833 585434484 808529346 904211678 807624734 988093901 476532654 527736758 512110903 963467875 260885029 803759648 661651249 864883819 955059767 980017961 382175437 416475740 969899679 991610732 484685290 576117464 929320198 945753661 607046575 883950831 609231145 824110244 168782986 827457043 257280157 480692016 866989232 988030779 845096539 864244966 716916317 981117269 817086548 911806957 239172376 578285347 990358914 990541311 337676143 840316327 184619021 810053683 28819826 882369770 865747576 941828151 899851610 981871819 229947991 726352448 199208067 680294055 358400838 688738117 7995095 83526610 672174540 930011478 49890776 432290842 448603817 756842019 409685216 745753190 253867022 379145006 746133703 939052326 114337796 417035684 24884483 183333748 645540908 735651755 100696968 841631763 831793492 971005376 973289529 978016280 71208420 251422376 574469096 782787104 872710704 897800587 922378802 925743667 258852263 472827498 452456689 740898701 873854679 985035292 573860141 810504149 804190102 836130205 31978432 840543133 963172725 984980317 715084899 731376852 574214563 960227786 731235530 769462821 332005347 947889436 613876504 988614985 140433278 830521334 26386739 289599363 390620164 583786630 773070483 941480290 378598744 639524354 183428947 493300685 107555022 290877620 809965521 988150848 727518894 742100573 285693956 554625603 459605012 799076726 366362409 683857816 56010802 591284942 306052139 650572173 551696418 727977359 212582330 769019862 503781774 769284801 532811856 928924765 266073622 734697433 227457641 540272597 954369346 997569114 732624998 760331841 459458972 575026778 174208871 236170941 393103944 674485039 393973009 504517241 998741183 999136051 181245057 327885475 629454585 765224958 35603672 223332207 358686533 434082663 208868408 270467576 269722092 956104855 565878624 917514628 881581787 883085760 280647558 971832164 40441523 754541066 482862666 753027646 975170684 979942567 464318781 891237290 252315966 754560438 877350553 923985262 942573738 974363990 544835601 829317941 616910280 668834860 450643031 692241040 343429098 807325204 184826273 511654676 31941003 429816811 819842003 869246710 523435588 991246775 52618185 421441277 323575334 707741557 519535665 635447188 201453066 728706980 773653631 933965028 342580341 876077883 732900820 930683294 359133184 363747167 757133147 866066137 754912821 983813422 638194889 988578742 811522232 825544311 906687288 912956164 720002995 761920387 657650129 761585928 51490379 514209848 367120817 757661415 444624290 825365070 914294206 929017379 608703676 828062153 183404409 309601592 19282950 561580868 975914604 976841653 839191670 886075013 2992293 747372332 657344263 718539215 661829594 993438185 155188552 554357598 379703986 581991623 750868650 888221590 52171625 535335936 246428499 800726271 253667379 537961705 351411958 430604161 274123039 325361053 839265390 882003018 895364292 989172331 370603948 876830905 15657052 358779982 624490102 644743666 481876706 909078049 128758577 362514318 634452614 885065605 64888097 737302592 609312207 759122025 866340514 908403690 145533015 546784323 453895689 978036531 191136423 561539519 323399559 990969307 600387351 845928425 120329351 409421834 266949441 390881956 66384806 982138646 657969035 945413368 608062624 712278017 887055944 890326686 86570989 220791744 16462816 971291405 40640568 836185440 537850564 991206638 764218333 780796494 132538952 985774843 378745743 411600194 120960686 469950942 565039601 644391322 108264162 920737378 954962092 991691701 82354059 296861650 184399423 683853722 958384120 992970161 956376493 990267685 985163064 999163015 447365225 840530236 851254967 998527475 639567999 709797948 192663295 804756565 472114488 714132703 843052743 934360763 824472193 927771803 811097013 868018727 762501793 782962406 59295257 906930551 248821705 546805320 895280845 981624504 195632975 596879578 941233019 996410341 220564874 456858851 133644264 141790654 401525956 856222335 725716405 812007972 141130825 546769180 391268226 974661210 740345347 841144442 906914200 940562002 886283807 933550248 794293852 918352672 748599970 966728014 357265235 922514268 83681620 931023601 598547227 742209641 299121172 534225432 997264885 998601873 243939873 753376794 82419220 594947586 599193341 861259450 587779787 850693576 503555464 874208699 876865173 932374533 17401102 703186446 189850994 227815278 361927480 414971253 3478853 356235442 8415161 54254814 979732368 980860640 729185116 957548436 928419334 983487772 936366409 944923982 435071828 792507535 218182599 251476376 687241736 821924878 293505505 567852768 860787600 899942446 376096180 863053435 355973771 511966811 895145546 966154644 256691758 669190483 547534134 997788397 204575091 601633015 960559938 978001566 90200472 155938615 854490226 996011106 35524390 988796364 279888277 398434639 969640649 988280269 601818917 947417552 547364702 581688315 87292060 445423629 291520802 311832930 624820351 968370977 730636288 734767204 986152325 992647144 851586023 883988000 386533523 479660847 213746210 426620791 921084565 978091318 443124624 466432661 372058199 850772535 657047859 691346760 642781390 750078684 491707749 818704423 914628812 934745223 437468262 449719575 302962003 968331001 255518301 981411583 892011370 917874996 254881383 748069134 762181648 795901983 314681858 893265510 392189754 451925338 892640650 934141287 506720625 561199985 242459262 599168572 98173887 531379396 67274286 204670858 87552624 682182491 340420553 540890485 265105123 715483539 713501845 975933052 966912299 992445270 657413275 683334967 769470320 969763532 420544240 479051536 635600919 814757693 3639646 58866543 575933800 895003297 774011306 930383572 450642644 493712815 84346471 605473691 934984633 940658956 324701307 891622453 905941609 983591695 129489116 896044790 688393043 758434864 651758426 719941927 16379048 306149581 84377886 593491986 458084018 651260255 302970548 506926767 967039331 975147407 433006047 567479151 49123010 904144928 58511737 84746621 621981757 937515597 728004559 864489365 331535126 562684411 720833369 949212445 853491330 880531773 984210044 993811617 239075659 732628277 166781380 171956621 125143704 775089779 683710280 868486418 346604586 977218759 835745589 892543042 872886460 926202693 116255278 355131838 862469324 882815586 620814104 698704398 725810597 970680792 470659862 976788125 134399842 679105166 828368187 895696824 688859211 831476595 652501931 879293525 81714283 491226410 523808126 874806171 816022479 893811507 432981635 552661353 919473234 982261518 788728020 846238672 676675404 928654786 787123409 945069782 162839344 579970492 647297033 971492315 844113421 968159821 986805890 994347512 638317433 678081173 109558448 769822815 145069339 412469984 386061486 714212718 194028017 835417515 999787264 999842378 602202443 604688116 168891195 669377250 189268403 538609533 190326163 332016582 394514465 905893957 812566162 968358291 393684990 554426626 671445353 885700196 213578544 929226143 316211076 967417083 811601039 923814289 509660308 568866533 470473673 984437136 144147963 805416564 699896441 732598724 924837150 955240576 67552463 868609229 455918512 690442830 370493887 502446299 436638360 954389619 356358451 457994203 197705898 926526364 887403894 947508918 879614264 961576895 580040940 882332179 866524125 872682202 504152152 737353200 466246588 812473160 997856375 998058446 362429686 426459734 912809610 914032683 283667853 589216459 955799851 981401253 445870699 928719126 12231727 933373173 693758305 968685323 663316455 691914850 627756216 659243052 287293291 957451845 621899780 998032148 701876318 706543694 811905085 948406657 215514270 217146495 862384740 879081971 204225090 857765726 524081657 877470974 380539073 409213082 434075025 686888137 704616218 844382817 68622424 400758503 780144919 903850695 520430614 944524891 566658881 592766202 980450791 983139714 271345500 422764321 15218936 644355585 932287377 979663906 861325497 908633010 650538148 722841854 560172718 669861512 635636855 856459605 597271399 987101910 459943814 817466428 471363621 531638088 493531575 884466923 560313155 653634532 66851906 83873468 720783657 846413756 872112814 882123914 515326431 529396746 449151081 491048889 254710713 482582560 10156607 945802610 949705562 976619808 986694127 994031975 576143545 728475031 244044517 831182216 895188397 995813348 639432291 914663283 995448443 995737056 331061152 912343610 7188135 446274404 63677511 399235351 292398741 593482712 139398177 158147579 646391265 825167455 782821194 971739695 352993599 657196376 19173325 661107707 999920920 999933777 104080169 146329073 950115809 974987068 333739321 549684356 679118720 809810607 6042422 178439657 905868730 916022261 256330228 835223500 13890107 446238897 786944568 979770877 273399505 555074553 556184397 729302323 59347646 190691338 388132458 591010190 744267865 934781934 20916504 981335359 77838816 193639445 978586451 983530714 694068034 965970711 631441905 716764027 982899081 991445144 402903776 893777608 256299674 616173843 846206626 864984311 398708016 771383677 874425806 961574039 728860778 767498003 600677964 967329570 638993569 892322872 652143766 949178280 836387714 904155059 841211894 873457878 71230020 997927288 299146890 366593726 253339372 258804393 855341022 862669071 520382492 586345941 395113618 412646716 419130169 716468278 840087796 949130340 529490679 828175383 596936321 958532848 709737523 914439940 275896954 312134423 651705944 721776451 453217662 861310405 649622264 810604367 423285513 765343893 571108362 977489917 911597823 934624110 560773818 790853505 510528730 701589029 139999881 843527812 157831815 873384771 569833500 574977640 568130341 933017272 740579356 948153364 426398216 784236300 932641792 946859461 717468834 950380507 485742649 745524037 323818784 951914796 773582023 890030184 861335820 925557237 962122830 985919829 192521746 720616021 65047388 502511888 86678176 241876826 162375979 914444160 579531716 772023681 729313394 874216447 484330552 991245103 568260727 655340505 816674773 904397582 893823124 956978202 290887640 453602845 629240250 698195410 196526001 905708476 705625086 738078367 554894386 993646013 538052264 903470575 749496458 974220770 451678261 930910151 173165762 655838365 112114455 619500235 613896564 625140136 833108031 879401299 859762006 896773343 362962966 585728079 895203057 993025322 331858779 453838769 398927287 982283668 546840413 744433584 931090892 936520436 732259550 750714192 186097010 413880537 976998181 982891820 286261819 526264791 406994620 808656588 69623984 485754435 946404757 998908303 728674374 803798823 867120035 895958034 570184213 596489256 368466654 887920496 906601294 942409994 481975281 482102110 337366060 836375712 609250416 679236375 569597729 849194858 244201720 398524083 399940915 945906912 849805729 929535720 413133364 976095623 466101359 911529205 320455194 423569942 160708346 456806352 439358573 478015713 151394525 968954797 304478367 767937234 832771842 895397670 412274877 953917986 986261345 994844647 463912223 649537104 63136014 275303756 296891876 545015491 240487412 511787568 648655371 874078490 976131403 989841556 80858558 813688908 536421086 967312039 74364333 764436204 522964142 882519321 204140773 239876145 235222610 494015441 815216846 868858996 467065303 868480228 722429456 897112275 820893437 934921903 986964976 998753708 611202537 643122679 684538900 848911234 813077347 848578223 655586220 927678942 15410221 580670279 324228918 670791805 203241982 562708454 226540389 532762551 754469512 973477713 461407742 902043002 237067599 949820808 937343448 944260154 808092113 939291327 405938605 954255460 726987483 820381440 752343304 806903557 303425684 699862226 342497734 447772792 373266676 658093404 541677761 660705770 328888419 878926198 399182726 527043310 936697407 983624739 589094017 793424461 2982554 683484359 355034708 362513506 144753529 900986989 63571655 849360297 746119524 890170978 282655285 905635505 152945310 657403366 125139826 643757489 524174616 976910641 783930286 895519302 70728862 268889751 121786809 123250284 6404525 842405139 123441663 488624174 210329892 276418216 734624372 758517632 683340346 784152948 194928848 366992282 533637040 627088246 418570249 839250691 775796775 986556620 275627606 467942837 290694203 542796033 849940560 869613449 524342389 584952697 172875516 229575371 914652356 920110790 791824204 829910601 550410307 572942071 985193618 992972074 641677504 808528986 74231790 914929861 766642147 971888253 580296181 721578327 325429309 764707688 566636140 660462803 985215359 995866740 909969063 988869420 965218517 994232152 683578146 792797257 491429897 988484530 911084172 966337682 698047654 959876267 668749971 936611649 816275616 961697769 360341514 590123493 64365172 89829208 327694091 833756529 200190869 441314109 804352252 853811788 990731199 994265653 662882839 900196187 806726888 885576058 995331870 999714626 723791858 992203337 390245170 764882923 541963164 658754215 388718601 603031691 318236394 338719037 426912551 583291745 378119791 394632407 789073131 991663983 115583232 827901207 700957372 810587616 734013251 964668882 420487377 780084256 112460733 898049263 30382099 556917834 517766645 924563109 911707855 954612314 183817950 856015973 161003890 578713271 81577278 271801119 170182143 265894222 207770707 833017619 565422351 901706912 941249517 982315232 527625720 935389888 152684743 541835341 919263848 920386169 420352269 936175151 276763504 507759440 151110344 753048816 828465567 931392281 44204169 664114777 265496552 604925854 377172384 446850984 94316851 856599309 641087680 685555298 789463787 874182604 590502946 650744761 672665906 711681753 297869785 973584628 769384260 857496095 760765622 842487831 869786370 886148028 617243268 811650346 94772117 307381531 776894324 977920393 502281774 632410590 752512966 840148676 318454167 328332231 642875156 773071541 455242847 822788958 351397102 742911591 178589815 775847735 295898984 569261920 780508204 856770502 334324810 682296475 217090378 756715768 227224910 613537057 264245391 364273574 561222451 911083883 817091978 949342705 896131604 921628232 189832138 949606362 828596406 911536500 37131239 419519041 178870593 855385714 526523521 914050941 475893640 592750443 583297741 768011186 297342573 600697746 114904330 233979514 262042751 772029047 406973910 698494400 830936107 990849911 158390558 339708240 651768028 809737440 13868687 742502300 976086151 986466097 96212974 223322723 824566964 835496409 138016168 457849317 52189795 853115815 119832967 310757482 286651899 789821343 59210572 250431406 186411007 732450052 585814533 619783143 378895423 800301782 696831295 889852332 571675305 657880719 650192266 970379036 748307393 972774898 90849780 207958264 873039048 933217939 375399746 836959579 638984243 934694484 740267228 803532214 167042409 704754774 979837417 991990245 133406010 683060841 545142840 903091068 427355003 441796072 59262464 374806718 58075766 916730318 366905916 858066588 909669483 996134258 33215370 144254231 185061087 737771273 805949323 939674866 53524870 295111495 466713678 694006094 235612332 829768401 593022285 607035490 803851144 819727387 210111507 611958973 735994220 815560764 4320636 53371742 110548658 483132360 334516135 730807990 27809591 778041995 846580973 866345294 976990075 985207409 43983707 121601212 856148256 856324615 132545123 344364971 47536502 574538431 685044587 690112758 458349180 596361167 583244259 822329358 162913743 539939841 856924931 976984447 319911666 845741449 539794675 631467067 941055618 969804478 347103739 673175140 510681753 959073241 910970150 929612095 74379668 201352524 849012799 874351481 320201057 832730201 839647320 869598107 92310908 868376065 510933270 547514324 58918292 820747521 532616758 957325792 468757682 601954186 804553593 975181563 840814636 966519636 950772474 951335368 438289008 454708715 99478799 990836489 114914397 792604527 655922673 855407168 352410536 919695600 147060540 931832097 301990344 656919955 735434792 956105171 992791334 993444130 740223069 822208849 101450886 723761308 732632868 894791605 336792991 462845492 908015135 924785473 11905597 83175979 679546680 940015272 516594375 954602152 20839071 77694770 859431152 948499552 38993362 492377874 236760134 476871423 326361999 810000740 100054664 201766939 949325472 951899230 248126049 850707401 878348311 899900610 793722082 827158363 365383117 404089873 675328698 813386087 402483176 630191146 789157840 903169950 544195337 634346894 134036188 591634643 923891635 995121326 514063178 562645528 87757178 904669200 449172861 619128183 254390806 885480904 249666218 633020274 574060140 736506202 278840578 570344942 143489438 523986711 104469843 387986925 279664453 467403781 185156444 558264900 117557827 835531091 975432215 994441343 299958822 923558416 120950135 918672536 798808511 937962570 980942435 990299811 305124438 456645147 369195824 608712063 834973686 912144425 93214252 781582837 35206611 341575956 162919637 735232886 203172889 717948657 436630968 800074316 701211860 716203975 622749187 716911377 306568322 528852626 660410140 851806771 312742302 910075479 44663094 212692833 198002810 261637360 166280346 862613090 871132303 894795152 949883062 952198671 551264220 567705669 250987626 977564015 144449706 699556870 180110415 341225330 935578080 989856556 410190403 894611256 177491999 701968787 590095125 852492068 350759560 792178708 508799818 728738160 193470265 660065216 326610925 718605402 473774094 982600662 568408051 849488131 640308323 996169171 928490994 958176306 591105344 715772160 439647853 725829950 391967596 551325111 57284710 928316830 269440605 300538927 442549451 535435569 706363172 829065672 50245113 831822503 114216007 145978196 106307766 894768393 952336047 993994239 185855825 450783524 566256033 595850660 690616955 740101544 373227309 813382377 696608313 807542831 797538928 874917192 969265128 994889740 77752662 306860278 66358756 815818645 348331293 646627255 83919236 886430765 376393667 878484494 962461644 980542905 963880944 993372344 496155126 729929767 108272569 625269809 936394662 947124215 404720850 415000403 539208819 614707584 215877245 974854355 153302956 831747120 789852545 930608328 580571051 736840242 988988646 996580433 983086521 989987326 301985965 832435396 508858273 697965616 698467468 718095991 990510900 999534454 601656955 743162163 47290192 775473822 185199594 329101079 620866889 996390992 160703430 969658487 671213992 928947036 474479052 622419583 543790794 723299270 384289660 763106246 260431683 912291392 300676925 971806357 229180495 663714575 693388258 716647806 120507668 982960921 884840439 934820702 482558970 748417706 193319704 595130899 618345906 702039840 783407074 857863171 728636022 966442605 963822465 984661871 247829287 861303276 445908320 933543616 19055916 835869532 927978931 942912677 410650426 798094722 791663694 937002908 135694826 323421234 456230194 533189230 228635180 896865915 984421177 998169236 434357930 691340915 54364476 854672164 116465041 868893721 39613059 764865278 663703454 899674791 867953059 899098639 918287960 972738847 845098226 914646312 534431255 807363268 877181995 954010285 429258066 482120934 651562905 913817209 82284456 255257139 468538224 981672216 346706551 734050139 513004998 903252977 998888580 999493005 741213290 778209038 602860059 792608570 522094965 676973876 606489312 761054013 23001171 597512683 411652750 422876300 148329488 823018117 78788402 132186700 250876015 612825631 435310604 937576805 625673051 987935414 76928807 973125412 752652127 994755921 733834578 979248892 733051407 962031932 791544902 804089349 80873798 96688027 324235183 652859783 589514095 792332800 644170301 817326467 48971184 645075549 232996415 556216547 248466493 418805130 188750088 237398893 809671842 971796866 980036329 984351915 985131781 999758479 196999587 974232925 922262595 958237138 724952177 904039972 829753382 983134901 524841574 684843604 643087290 924374500 620003077 881650472 546209993 563776541 6661025 24574782 891136297 915279578 315103633 792309152 942405562 966135216 473241594 720639016 790551600 890477685 481947580 670258060 764576151 799654774 803769027 811446041 377769272 776502801 84342677 149698276 136911288 617739737 526531068 645007993 121221747 255493193 778871580 782110767 361031582 673744710 370255854 926057325 17561276 475496344 618300554 648089884 435600116 823524478 749649649 920929422 419634621 705336604 230079716 997018665 270414071 500956342 192150440 584357943 884616503 980716114 540206240 654666514 847095761 894666979 295717022 769791602 858834915 876552005 369060646 931209341 212233746 370896425 482267772 604106246 545641094 942997068 429916018 846943322 42521134 793406148 376493061 764517020 777998817 846065529 42154193 896891728 380335128 899917695 534531602 892154333 958703625 992212975 989549296 993347741 533885830 989749695 763913028 894129473 87336242 414790798 344741578 933860506 972696308 984096035 942446269 954213597 282967495 450182707 149097376 768975867 219654586 320990764 281290461 797579450 86035148 889741560 654213335 666335265 476409706 639961887 120676325 158227170 341745790 677493541 296546004 972055129 541389514 742535847 189872473 303051970 804950382 895705730 953166798 980168772 689678990 827277459 363765558 438995841 482285071 876954199 880485541 932995325 610594895 654549514 662790244 842191181 882182934 968839783 444737526 768725562 301833232 590775613 977371293 979169528 482688857 947405490 633582812 712112658 681863044 870303936 562290221 768561198 517736440 858881542 886059247 997583500 953080976 983785426 703235833 926409068 730910317 771757759 354947236 920502637 667596599 679197209 650852634 797108127 189571217 675319906 87000646 991095433 474334018 694250018 978376222 984719292 118017128 735879880 955999217 975468583 463363329 557192691 169097129 844893005 854252936 960586238 273393377 754016537 237192490 542817228 241113790 355953887 355381791 412954594 581004931 641680963 942833006 952543604 812059248 818129269 366753334 754586517 267895395 438168986 389350805 790136137 793969688 892676336 854603819 931331628 111804270 112188943 253982666 552052430 359222954 767418551 567344086 631526853 661808899 917222888 988668824 989248388 20141569 431591223 726148551 766040388 915123716 988399070 329657725 790816121 407464979 773657518 458495986 701207653 806304383 859044127 672771091 918551442 390826522 550904637 922098268 993664124 808915057 931943575 888243838 982636699 123058365 854363556 816610956 925197674 379404878 506644974 3790959 509017341 426744415 829176605 682698265 749387455 501882468 773639947 951432861 995055877 94656264 376961185 659267107 997321415 109831444 169864826 288276240 330710799 60351199 334551046 462553343 576336394 887878033 975655077 47115765 595587576 476836419 630701097 500047623 663469383 28106863 51519684 802446818 822339655 987627394 996353350 864969610 989644397 757211335 858539563 327476054 509580364 705361547 752808034 554825376 608190079 289228950 424687095 858369545 862479913 55056570 580335564 536032636 987005932 271743691 589033515 623329341 779519371 579201984 729990310 130426873 584349593 350484536 887925660 16788029 349822456 232369329 784368820 704834525 946325010 982363402 991354205 766779202 891133834 228255558 678616131 382223136 952923859 393011262 491942720 448569844 711446384 222434102 759796102 376735910 668750684 545750737 746068226 598891675 905542375 715095659 925620042 975593540 984073006 768547461 810659758 572579688 733335308 993579497 995777442 355995598 528830876 83351296 657510318 635511218 834037201 320032075 847692863 303144779 548421083 183701076 399972729 684579407 996613068 527557786 634583668 498038851 937902119 291613504 433391915 816691797 998837065 597526241 809711126 771823866 837968300 891265126 924887580 666797563 881406498 864087335 909534923 183922413 904505908 430042481 926838410 616036985 874430466 14019679 230260240 771282529 837510764 361237795 560246652 841251234 949726831 905485952 940233513 165932725 769362867 385621494 505139765 417730445 649640247 987109521 990068098 737671619 860580910 580325781 863759773 118168693 191865343 649323800 995715281 356846223 734731019 229083150 987323600 476661277 711665464 646853072 975328118 916222963 936250803 138903398 834397019 630869653 872548544 270874576 585919984 699742503 912897812 399100530 763990872 429348971 457433314 621306375 937429390 205620736 671812972 456716529 775379387 556808554 734727532 247482549 548683937 374473653 422160175 916381763 942050849 936929591 977299590 290618647 600433756 682274505 834844942 668097248 897722358 315185709 428637553 74938205 285347497 769979542 863202252 474648934 611994883 972235147 984783586 699014940 840998524 784291790 911938777 553711775 630148071 846901967 908062998 753315677 859654915 460176844 967116842 866089585 961538150 75793304 543457484 589782323 612947196 607975535 877583670 905141462 975344354 272425954 360488552 507649088 822436841 244446856 993585469 253546092 912514380 537083786 620354045 966851296 993514680 659518424 676366375 216248044 918421932 923430487 992600837 329466531 793408091 533939191 856979608 132647404 679157909 365527487 907320153 736081143 966380341 595183261 995471616 486026328 501559348 626294440 981120599 522378016 917149239 353601537 398440425 866204413 941279833 870236104 987842454 784367473 895587369 704105275 803787918 864618749 970440238 419419595 535740997 673099856 833639365 431032488 950440521 903707140 933994519 81081094 915664699 432337755 951101796 753804879 938462432 682372402 833135132 240297296 352568881 765324277 848751353 565720849 902743689 683638490 794419224 99972456 369507611 962901556 995834876 2372357 154430955 833862234 944744639 610124372 658210293 389880129 930162092 722179238 832519269 278440608 952643379 466792626 607198816 808250852 897021192 255801642 278771641 623112959 990684746 148640076 334378042 554245675 843007096 62063499 808920902 606063605 694410585 214151872 551146316 435050900 555568147 40284922 48075533 813745033 948548433 164465852 315801057 305186734 718763424 5796582 375387703 271923183 947869723 978507182 985592637 670810172 721961626 938022499 955619679 109605110 350157181 64889703 767390927 456780425 722277983 753130549 914032337 623188577 689385029 799457104 962382948 635055834 733150792 905679806 953275026 715332947 817572519 463263242 785013925 216051227 833155162 744173508 982119421 194331869 630963452 272898690 871132260 951753349 972214986 395817936 602309163 158410617 344249503 579121330 859389966 434527654 645718273 717689367 802292488 474933780 857377444 347099171 835857400 304361571 431073814 651624253 996551610 728800902 900490174 963887319 992502909 127763199 948566663 976608856 989045463 319283297 322911903 942970959 979526299 577207573 684962333 260324903 717503034 348424125 370948960 623914800 978631350 736503542 840880826 57718610 84787311 769896065 830915601 145167083 727771214 531057612 593673787 429630030 598046049 442917935 810700672 808449064 974719118 895702357 958307824 730168640 786470275 22122998 713644321 296747922 402626275 471098713 933441400 889743320 989291753 982001879 985108642 447423600 741632560 288422999 865227585 521287218 644741681 884331173 895333786 992832898 995847628 838705360 914863683 438304198 512730987 14023868 133446485 80936164 335798328 632381815 692138062 267507300 765031434 924808813 940998258 74626993 245897059 780647384 896356112 450410858 652541035 961881938 985401178 967584516 997021017 57450864 547917247 636837582 843677135 422709823 609647254 227026610 964423412 585908304 603441429 232332223 492353736 860759856 982273254 64569123 673716947 826311487 884849046 191469630 618614986 634553 276949710 642973940 734198184 138116176 678016053 547349770 832253607 238899630 864371931 199130409 962236609 625539572 696932227 308081226 499769002 914110873 941644181 927439043 986991625 688411126 828363366 451333531 966308936 250117226 998108200 275027572 538009717 989363314 990476874 503858416 611123710 860210794 916579175 758015551 803920615 825093881 865486385 702931931 986903015 536656265 710360245 281613030 481977166 171150376 442337497 402642157 949553256 783445265 987544376 880854309 972218846 794914911 959747988 305763471 482329126 79646162 435022982 404131504 682848650 331930134 582691682 747964803 825789417 770376448 780892054 641153826 803629220 351229306 737388118 984327560 997066566 732950021 800985643 509781967 583686608 23089932 758611981 461637472 487298894 761450842 767690658 797349864 944523259 426871041 674316070 226220474 836271569 352612270 503794724 671869102 994021389 565028927 801444378 948982450 994680896 761121966 983342929 402345937 707301667 23991747 33351362 995804602 998461084 318113804 613139549 214065873 722547329 897552842 989777459 526009175 528579328 206762874 663405249 735698302 924103644 747074154 877516298 936924039 965696925 869142443 964235797 347596387 383433786 493764626 661136371 457577569 546217031 924000580 962021070 10076811 714768385 438589434 761004539 558178270 802731717 97101698 824442882 198672905 261069130 321999061 422355442 128725076 500624548 915091598 931256286 701419713 789790375 5746795 288731510 287420571 730960716 421907008 696203866 463320703 841766537 189935418 975308458 954677380 965521305 638567535 796209989 34848228 578607863 962917003 973196793 937735455 972339461 630906399 751493205 241123335 805159337 511811963 957646464 630493688 960262224 225026232 813493976 975695193 985794929 395997683 831863564 387066022 743664990 910612924 972631001 276922985 589351443 35844598 57435603 870069558 949275716 77102468 246208440 103958573 435885736 900020907 932658315 358986704 645350427 829565346 837744893 487576616 564261036 1930962 712396174 831284637 849661703 432120210 614598572 485556880 602767313 188266562 987445810 587031057 861818838 927532437 971197390 365277640 503272574 905154995 910758587 129960052 278728832 210332268 274555183 512464797 964799492 217414898 518988613 803194660 808685221 833360930 953704343 123083807 973575404 871284369 900743525 516636981 581394762 381979149 440776884 210609871 239170160 416697336 577345390 620828025 777043493 623656725 826408556 843076540 872089948 766998573 865036861 47362279 943499277 518114430 586559313 934642064 938472131 200003116 818259409 577531968 716787816 179817666 426275904 709296456 883134488 895848472 918613243 255132008 532170268 381673707 408572941 8862806 26488157 931627619 968877165 621035274 690211004 327514741 862240734 244319793 444377481 644447206 724896634 883226280 898756630 240936930 528425023 726439309 774836559 816324646 830316051 127847567 772282311 85305862 950723801 812768255 893859808 366646092 457802938 649873454 869830697 511780449 717512001 599265270 940762853 496021577 892245181 718594282 928508206 70371293 604565703 155214740 920343910 543809688 910249653 797080637 866578901 946041775 978062499 322418694 463182978 445883794 615444919 169033231 350251999 830524404 853572494 967631463 995445806 241126079 253592692 641049996 913067921 300866414 427194831 877772074 910564110 498912502 927385723 62509582 765169956 288831672 598371502 514364461 797297284 478003404 936640556 161135267 181491654 380136547 420677364 87360101 996391939 916454516 954995778 850431713 869111943 984810631 997204971 298983370 359345216 974131210 982604836 548541899 890056393 776682985 841196985 820004796 862058507 613920785 978694673 603134027 768533175 767328025 799725330 774965856 906915034 955242242 983249296 357589175 843792929 626068597 839796985 956245842 968199619 887741617 904435958 917198940 918538134 553450708 812319969 247025980 304869485 795515859 846895498 252441222 313870745 90336322 542988580 328065114 677110209 151992688 723073506 731263262 819566328 994287070 994502873 463720556 551054796 516087088 783705174 489578888 928590979 887267759 967849179 432985770 711411003 411355842 436623386 87423209 569727286 2969700 390676261 954516428 963837694 864713784 869317092 752145386 882677792 196472506 511164679 780822870 928851134 259382675 607130131 987247848 999688471 613706368 688617315 776410743 816069931 649910945 924047308 607665817 934339305 295978135 321325825 154689316 784762561 835067134 898989548 558697699 743034459 57517929 702746659 957191914 975371554 742763830 985388154 268597526 565683625 263092462 941753158 353914875 790723006 418684888 662453041 933223747 974994507 825679116 858686649 760102978 974779230 533708224 894928554 360704158 419600907 214760042 223096198 866586515 947281009 637138190 777292670 520350578 706073650 215029071 857164253 270925194 976900082 735734483 813256874 909896800 916165308 187857658 796988678 109647990 406317170 870261179 909073664 313819876 484595026 130194232 545312010 1047400 679827463 318353710 577376313 178581566 960604755 849962028 945864187 455760326 567185951 992712860 994387329 441934814 843329995 783158388 802233809 764860376 979442032 259720234 267869931 647910315 996206105 842454658 975284343 584569677 745116671 362565284 742743990 683906613 931753072 278232481 591501151 390823774 913935230 164131605 553985100 317110911 559731810 214096361 999099921 525280298 887803199 742259790 776527190 369368109 442503231 272365534 874388362 397042257 508441184 840441168 991500683 542092861 567672228 48652108 638275034 55051662 770608036 567491753 985894976 81628147 732441884 44932142 939327960 543324005 985406862 503535063 863827868 128467806 939788704 643352107 740203973 608127876 849841262 232697589 719974890 782621656 893748812 51147950 80219702 576304237 656377489 136197331 213828138 110248347 552976232 782419036 974891972 907847883 917299430 918691194 944154747 522546462 575252036 244047085 728043791 386561812 668512870 513664478 839828498 796226957 869490657 205918198 294981903 226030931 736943370 659892669 843815228 555494487 690566039 746820105 786616510 324005135 632293440 565766679 611915122 401129265 666323203 811051409 956995332 315561524 412549690 245012775 670205948 80439302 636886569 901007404 953310045 594941974 732424609 362677772 612050343 521138676 759526236 391472267 488850068 468486727 931977981 965314191 998507812 747072503 881767705 113933486 205292608 873156525 925500956 468686043 824827198 394624541 860500501 229701871 720464979 275026433 957420523 408670564 694715888 848122973 848333832 77755647 559565889 363102740 549878579 445968713 742068613 851335485 981110142 92352599 764225415 234389398 898996981 993537741 995042925 796388291 954089802 85955058 100329494 55079580 691496040 204696855 580593327 596879874 790453831 257197026 886397142 50356187 453416336 970066910 977827364 303434638 776500956 277760400 667199459 321247355 819100042 765863592 877915583 158506383 173924696 147290328 470688895 624773197 829335087 363778494 815903589 671262582 724250174 192507384 317078719 837426642 906014205 985627513 997876362 7187273 605718532 846927724 980163930 169060554 343816574 423935542 750503647 344009260 561317736 751504725 852528997 458790974 761928449 845910928 930288752 83486274 865061714 490698084 603936736 425798890 917089930 941625102 992845426 902195850 985628832 557428535 962465597 56329338 721784445 962894366 980108721 672218535 696045105 565917389 693146915 203066533 575268687 313944612 759342233 322298786 927831522 519350008 818457748 156266747 743104916 986846401 989431698 760819289 861230213 474215570 564864340 212223692 995717868 515117354 852113295 747344085 806490246 927995592 967716772 334682079 941776466 605651442 912405577 704554370 984756822 632131402 639447666 228489426 957032380 65961397 404340459 574533597 921589795 116262298 480248773 196061327 891203748 504243299 572007976 637619504 795165268 292933129 906015363 241363756 944757684 676658643 800795389 752067403 992462414 40030082 822688984 220382213 945830861 68232986 236630191 356905512 543475183 125862103 561049907 418288724 666759689 689124190 823852222 863332341 977212545 328773610 910516153 574708902 648899685 54711213 601295489 3472854 845870309 543507767 792270224 877642717 897600499 573527633 701737684 473818713 888059240 186092866 755347264 668854482 792180303 908676377 937346630 743811224 944734619 377593398 386358822 24831184 136465250 351610375 701986627 391867750 914283202 49229550 270918934 600855008 675585012 677814263 763889720 940590071 994704753 250386207 335025954 16960922 671830639 936794813 946142223 553995709 858014803 852956020 888580667 577157602 911531047 298865861 510137301 916247931 946919617 142322895 640358497 974150792 991409273 211901130 888652417 498810084 691630252 444400312 902812220 684201297 806597927 69087947 967085228 313296021 607158501 768842324 863293409 445558980 822768899 802188849 904662687 54678801 309206241 476487703 898800775 369989124 550426497 37595764 418361680 892936975 922987751 211716224 766822157 551504585 765684605 29177485 542798559 296143834 534924039 782482266 822747471 278453461 935906929 485851788 907192595 837641784 913744363 699306205 982275225 115761496 379935009 520978233 886854567 812312678 953454504 888239785 968280584 360374743 701457219 773687677 862440385 335313624 439680174 543742839 741431000 278732484 536299195 608938070 869163934 380187770 431505476 805913828 929647927 759550337 763529436 230355704 595260589 625934885 650442121 282655864 291552939 772865059 848854520 765146541 988704010 729999776 836596637 678977629 714646001 631744124 876556194 345358388 867546938 826268517 934198564 763326702 946093162 688583620 989962332 658473055 996621251 378344605 575074416 95357627 446042057 405351849 513579698 165365634 584196822 26961382 341944066 372403709 494749729 225581290 642587513 90867969 282179368 775825276 782395382 906652436 937530524 353572590 715288163 716612822 931540647 383570839 843665166 242125905 872335182 604906855 948322166 420701985 532974975 599871365 971480181 148391833 630516615 729070653 826629124 955001240 998196444 687625867 715879188 775626458 867065542 978051460 994695709 959047448 964335936 795193485 936072924 475569995 667280156 138790751 477186605 224866438 667642205 253387030 927754012 436407136 620355198 218394309 489805502 37897652 862269299 862390698 924305225 794573206 984074304 431555912 990331790 501257701 841200150 227508069 309790333 69508861 205551639 882307867 917717974 436327138 948620507 296097456 832604253 240305055 908996986 881640342 906242354 120007927 738556253 851726142 928963722 530819862 981679692 994411116 995815627 591091993 948584996 790575691 825835309 34788797 162845634 301727634 634081442 23747390 873800180 60809464 744290917 872057998 876491940 311278887 467318181 896787218 979831692 364331564 398436413 405009143 606062333 310029397 391156434 127731880 933752761 39583241 269332960 168666951 245611850 56610738 338344119 516083445 956645471 166377022 256057134 977224089 999678442 721393829 941496260 216295220 352484541 555809749 793397084 97613799 170844422 986333966 986512796 573514994 712244866 370774352 705635564 780652465 806932925 495795236 511035396 344132095 900942895 628853740 856302111 178519675 321118521 60329339 464724066 50577992 69590592 82128075 389543973 838536961 981294909 447241952 578565753 864034035 928356971 932129927 982912850 152056451 298609364 648349 639270062 169395477 752048487 584749957 637174768 858806787 942496801 502504132 924012308 251660090 437683367 253006690 966387374 767515087 992211603 270075939 580353760 77855870 510362784 318157111 348233669 422483802 749545515 697468868 751531026 7670916 819178081 560978779 904394507 793557570 944034607 573844938 623369886 661402872 806001780 554303759 711782424 912953682 939915336 139274091 621939526 134540153 484329521 309198433 543132620 45712494 500200602 923195177 968032958 374252856 609363445 212678236 440442405 77632534 464677876 739599808 755325371 540284966 955808030 879629975 956177676 888585421 937010011 801296902 868780897 1882686 161202013 241077412 593397174 808969232 871733690 202908308 329388932 62918191 881058952 945565696 976292149 4679645 984132057 918638472 943028955 416810782 924478974 787166123 917001783 353335709 909903948 505601765 733258550 522077719 571815442 323667923 929097002 261431266 702329129 669192419 916293636 113311524 882973967 971835802 991244497 457234628 508514628 428355572 798399163 319491980 671500379 93187562 878367320 398582940 759940634 779941359 780924187 913245221 995682439 609506049 806069353 455572241 640932439 143351686 639118554 134666845 241509932 972061734 994001547 842833387 988991386 382122760 730492684 344753620 362791221 642474992 712988564 471091963 696352054 360216731 498707599 188508331 391199135 750913271 946629405 52864284 711963481 86141224 351283320 973693669 991695574 223938720 597109440 777372557 822741555 445586840 660218998 575277280 809443035 20669310 192132952 525845289 614476785 303222837 879245660 180855936 731732669 855274198 928593875 13615568 264113175 793938028 819197037 658769260 987331969 896549485 953941892 200728052 775647538 859207084 885303797 769134894 813537422 128050126 214931166 821438055 860185512 498719104 780188153 565251241 860100087 296741648 804493230 960510357 963476376 517278063 859185296 276410999 511516483 273728687 745706403 247863330 864924190 466723712 532523972 927188585 994792373 239429951 736281867 377841388 550555854 725601039 956236405 62567275 294153256 566656275 829715050 683154360 926747913 580254973 756001465 81792882 505221288 499552793 798439679 328159133 458123533 346084836 569628877 347457157 847022624 303518541 866651117 211483495 850035420 295056220 432031363 555823271 901679069 915732014 962790676 904310510 986143626 797993762 882705883 810107079 972808934 946761352 989645174 750102226 874280662 164323351 992434250 560504216 640727293 149769638 669496139 162756542 924805599 983944667 989872430 5489233 589254640 981613835 989992248 776479625 825629298 716406433 998630121 669262328 851735091 14599667 529063690 436405628 832964997 137899506 461943222 175034208 396500690 771442522 796065111 737750905 869133539 95032923 587103370 468746984 664588944 476309409 925256305 860112821 990617101 120758810 358971424 485119735 885885157 564455290 922228850 734582747 833526923 531579441 770856293 315845697 673422591 602247832 795634510 943386668 966163679 17269706 936700776 326080412 399582430 185113594 231488513 592399953 743424861 366415445 722506205 362966006 583090734 66434311 292799135 571633478 612745570 491626178 694931723 69537472 199039102 334546477 702177521 330038591 512465582 117979697 476790411 658462832 836442644 491938022 838406455 324003984 845192622 98841708 373522709 947046134 974305417 944872198 998257762 739599325 758572196 248351196 515318786 326147716 750897264 296920989 998622815 122609972 529015712 24957129 476496872 853428975 900080799 881168587 917198611 225465631 505507567 108084478 307099518 546973485 977424350 63120779 663253174 507138944 643971096 29580381 867561606 566701760 567827850 788395141 896889447 643830983 644153044 998018959 998734626 630869324 935410322 998032300 999591178 574585511 667157774 735893444 992573136 51484212 629369570 585485034 736977443 166248539 370457231 700159102 980850784 601873920 976834931 896721735 941019221 806402755 905973343 200898089 476100226 442025925 783808622 606465688 909417314 41238184 238200739 516107113 950650530 902898244 960562812 324818739 539662358 141090328 340422953 902413579 983900129 717399298 777847372 387384552 919611287 613216772 972239131 568910946 754326002 634877958 868278089 695745926 815799344 291279553 873920141 430238630 745598296 396298530 485095735 438209839 611602609 958095568 964514125 915593439 957356057 78466389 930023492 581834723 857139145 531231515 937554915 142995464 209928337 398780947 786456540 199501175 927886617 434961807 579989726 194801030 750303122 790662623 911272561 161058020 806122334 169751658 445106874 115203670 350669191 236214474 913911362 788647545 945031687 52707474 673578198 690763292 917896790 333843744 479087972 119468612 339909027 359109494 980278157 848091148 888097489 181337147 200774764 739832919 895643517 46882072 721218669 16843799 854013844 725803094 795317353 815061220 977098470 448911738 731148855 801089284 802074122 758392927 934535855 755203604 802259619 513024546 518757796 122754544 515326641 522467555 788118032 173703287 336307356 793143268 964114518 469754801 487531558 69036077 570849381 642026787 919490787 416316722 898025744 968040135 973482319 20731255 289370884 15078485 234371255 717222193 796140268 184243583 206959762 192407706 747263428 196763008 371430985 447038673 547018976 79881695 834369512 174026125 189313957 116953763 661954362 108916329 650775826 748395206 901904754 93823576 197494787 135916537 837224320 347311511 687943414 877077777 949748191 342245930 716672142 844687636 980905278 388179150 881044191 673067457 872977414 889380345 972619212 495021276 547130845 997962223 999124046 772851949 962631563 484874142 740447454 193130731 312966111 397836511 880602682 594680469 653982639 374921241 967038156 972269154 992429590 841219251 963498481 110744488 151407977 818483031 951609352 235031055 907285280 865484699 951673958 299683749 629948522 124680805 270646078 506945805 738332030 415445970 703096850 802451194 842508197 728568989 897327858 875609415 940814464 46296137 722157382 407822797 898345310 331881239 456634530 948581682 970036025 684312505 716069688 535768694 797054001 626320705 763439810 328408912 689704592 539844766 901986305 50818297 483130059 474122005 868046274 767274550 831158091 712880686 828137030 677890446 839142372 537560949 809572177 26327730 480765996 577623002 887978082 683855032 868276661 622337564 660609099 327188099 463786198 137943742 482710939 42956225 613179610 167651052 391393188 659504606 945657132 600794417 844549955 524103755 913710905 813301752 944330993 681802657 892924282 58772680 624159933 476494430 657257168 695337697 838682384 825391119 861512162 756942754 889171400 462904571 982141328 542647786 739419217 147012821 495026100 346491181 551637793 353035042 412383717 184924892 935272337 514736906 607548443 939462114 956549694 361805216 584365603 357051267 920387092 968124327 968503885 119130150 915231751 108404214 167471959 65371279 873975083 512571579 752700662 538264121 921786364 199988417 986299560 255370269 872541610 398019416 440963857 839664824 860524143 862625576 950644378 808590344 819474054 873037283 946555681 16737183 270849468 503666261 876009816 911361846 957075097 666678581 676185819 286414641 558400110 861536631 946696091 864938415 894205363 988971094 989590784 278585459 994299120 102418908 949597249 627617374 898492274 209535363 686117341 417058817 991168395 522934375 838155390 582500260 902374055 507001120 971468678 983293149 995136579 78353565 491000457 906059180 935525207 34436862 60363745 434894976 653676096 843282743 875262979 957510090 965978921 865491077 939993515 678474129 683628018 560841392 851409630 290306561 926950046 725742342 822765381 819495771 933977982 749203205 899018329 758314940 923489644 879724658 943323855 654031165 771147374 757595139 916746581 609885597 878987488 88218664 486814025 269956945 948887099 394847170 415624657 654724567 818224385 138045754 264162264 310420318 914354090 365250651 733276849 261458227 515856341 51723889 556376064 747948689 870097445 510643425 861591247 373259042 617858749 742049642 791616639 746527574 767053526 540492049 889536160 648042700 671849044 837287415 954366055 584063975 827121984 379648929 384563057 305438075 400752964 609193230 891334345 38266990 110757003 696719652 769253483 230688649 321098430 255299102 827723547 741244414 936256006 569365540 921968860 610071693 683678654 1323277 895255184 584205175 661511174 297247411 800052283 455230185 838861159 584699632 845312616 397785496 528065929 43654649 924327123 426412542 493832840 564050745 737346468 530304538 801743511 440167972 608006954 997178107 998800031 514373997 515241666 416275365 731906304 234847225 697978421 471698921 557292324 573178101 933991876 92114262 346440213 760287111 893824794 268031525 901247991 644652712 705306018 912980589 932050833 703910648 962317417 234077843 777995999 530475220 784728961 146021418 245580612 542309007 677268161 254760409 386022787 408414999 795105284 746827653 824315422 254691856 826178874 468929751 562165454 936698613 952872769 75853304 124078258 793383245 804254733 401906029 420517544 208106316 735075477 576309784 725124950 173101849 681788028 461312552 943439751 799629449 941833576 42774165 672179541 388517380 408039814 981488629 997691140 997357453 999838427 814911343 999447258 463943696 565897341 492082289 789530001 127107517 646727952 548585363 554149051 438298515 603279282 239985422 936149445 879929927 891027471 697925572 739762151 106188890 476740957 334621491 423741806 315280022 378894478 483630697 880446124 129184579 409499393 678002277 940501526 839202183 919110805 475142844 547480339 154500285 865206391 159127563 719933926 592552552 659924423 565651653 777139149 55690060 262336904 423786008 516714804 453213389 712011302 194899830 878586423 467015257 647123545 476792711 638862343 64335091 303475786 697475522 986653516 592740661 694039215 417768620 852987618 702683886 739597551 645736379 788524683 775825835 973217799 922087013 925902436 663337646 935706861 819564501 960274085 710891941 915708682 600585599 617162006 621298511 808119120 953369791 990495342 63371699 686188410 333051596 639320183 910226307 999866056 449488494 916911062 961324795 980022507 666054910 914661154 214029647 929043007 240988041 656520578 795786064 875419510 890540432 966805218 380133454 466244187 123956466 695069174 368070659 554595634 780359259 908619390 891210835 910656386 876041655 929483884 159617055 437778928 622778852 732604423 703636235 866084524 861384578 886340055 88658551 455013891 452065320 816084285 848716519 901967093 734857018 894160772 76021275 766779315 785838954 832397481 735481320 783944446 119079919 852053555 903372078 964694850 872546401 978859058 152846065 489853698 997856903 998452468 783675837 994321762 477975329 567859296 539766384 662864610 548663997 703152492 979969545 986331043 410234491 566299176 391845209 959249970 626671195 855708746 512041075 710710384 333429848 990788603 710178481 923417436 562459328 654319586 198882929 987838414 998036010 998696272 852876876 872921192 14149660 294494361 378167889 491820616 153022861 229224005 317282762 334392368 696152246 897940564 87730640 294966315 285149959 533187287 970873412 972373697 132085401 670683713 617581287 882828285 739561583 922661906 481180322 591110946 962403804 985339132 18754184 580130180 428532719 466850499 173784573 250853772 559154310 985460389 156058172 591843781 559522565 803614564 336049404 865978083 764864819 883318272 6484938 696245909 742782033 821386672 876015207 931627436 999398340 999752713 281891065 943242152 898635819 939857135 352208316 498493652 859110085 898561436 797361909 958157010 538489223 671194358 15694891 424825557 467253306 585204673 988468411 998763188 496758212 549184948 446504615 992738310 218154258 879930758 85946396 735158620 933636411 999266148 927634128 936396603 689035045 896792939 139032817 862324000 952848503 965342279 694480836 988124123 737306293 982321216 89650011 308060946 223191337 655932929 598716852 938429887 238893753 656395196 362100905 763470991 64523730 629125511 911119916 916506879 566709387 862764194 781060513 838373242 113653690 218576323 569465915 727621947 534741515 884808129 12922176 133713538 942469130 989950183 245744029 376416862 660830318 939454005 751156921 859621145 906226800 952902029 664523939 887380647 50264555 721238552 913169588 954063977 675620892 741698286 742509440 787145024 13487305 591243125 204114533 631315623 802388318 915126234 379926063 498296057 215252533 270589314 237644803 771589932 929109415 989009203 190095659 724708073 720824626 864376848 243372213 467358891 64128213 359290805 99719802 998383134 50946776 688575505 775426097 927082323 645396532 750147061 529366332 864189521 406472869 710884673 671134177 853758791 646704719 760069693 466458570 738733345 385456663 556815147 590054855 651887074 998081499 999764064 599224963 958689789 288710172 873416180 454957449 962891405 859693250 950475728 677105706 793146417 58330416 900270383 713547683 855690204 959780000 986786033 918386528 940455845 861360463 947126772 760593746 900150756 943647757 955691596 336170897 839175975 56723834 223588594 234908856 873394673 133557023 971617804 446002846 712588687 218853943 883620477 135364879 601455198 305863252 782068020 565840804 566174354 308941788 364833487 10986405 109485952 956718613 962422857 915818789 969467123 990980413 996076353 31183286 689032102 696578382 737780641 562082126 782383108 889543347 919137671 512616303 879697640 332915649 655214933 787642169 919297758 727097145 791302931 524917333 527693770 985520424 991642872 302319947 459983843 780205452 828384947 547009429 634141014 16909482 811639078 134869992 533838468 764639887 767400542 163226485 862687222 520478752 591807375 964801653 994542894 158701905 205847286 97017904 239319389 74822922 619107919 998118695 999519745 792761100 883055553 988840242 990213407 555709293 645163155 78629094 572812502 951665040 954602576 89304202 748248086 63591023 756458102 533049240 826114824 427481083 506009185 399382061 494161980 877426075 900662808 926938152 973370630 618254631 717612141 496642034 669202155 217522595 526347490 783185788 904002299 596488408 848576148 501147213 746003579 512221148 528124713 597074865 710786179 151579579 893285219 522206600 563069430 710962419 809345525 55875881 347813239 468469019 553462097 516850146 574888131 771451899 999935918 968992284 984185240 719640403 877468907 364786304 414979621 946114245 995412565 688937979 781527593 333663684 820056263 978236667 989934129 475344072 492700936 921931556 954104163 43140906 567320288 238060021 640797900 730518 930245588 574978745 664806924 748542687 995893899 99467131 678701252 75625386 966207243 474556545 896834699 471235667 518531386 407233363 448372357 484881822 851272479 155713582 316285201 157097175 589664895 47516075 448576067 378952941 928624712 642671205 695116460 959278106 981867940 483749968 930582432 992709659 999269795 124202360 691111990 448517123 561047524 155730299 460136403 104177690 518819400 398870038 444281486 937292056 979305407 505573546 552531910 693208196 875123731 276304521 428997808 621415544 654753225 609254185 867396519 981461266 987713325 193807142 552951372 583537782 809281659 748639280 916481945 401194453 507649108 865052305 929371726 897096503 954532871 640113945 692351828 822592838 895567603 489830585 649828287 519568009 964105989 181270346 605270170 245998616 673397493 517355137 820994893 297098924 894024999 335783039 504498235 414708479 849353355 71466180 251803350 502102727 798349108 282995774 876317326 897179590 944968605 530747740 596483781 383575577 434199314 58511654 684344311 966292987 996494420 490333426 989084078 689887870 724540570 320797792 652704991 858673866 871453193 298491630 308101179 62501856 387152556 899712934 964292772 202299777 267503551 935189094 939709302 736470569 761692316 235139287 673110575 225069602 978130293 985911454 987114532 201913084 592341538 847979898 988013705 35759276 74740759 980117154 998831797 835481232 863894879 922873892 961287200 369575540 739625133 51583716 503109605 251765454 726990337 755540196 907920667 748271006 842346061 853988445 864265012 656009482 957777752 168055353 250787908 527212883 832858746 702561991 787649327 107793246 490400918 195306374 270615842 289843590 293901790 104459952 189190183 438433973 457538911 968690300 972447403 349764508 469533407 694576803 939031591 619087414 818259579 129736245 234304264 175200891 607368955 797075646 843229219 523716425 705419561 737677138 766356422 79004991 910709066 50239097 198318132 263126745 979294851 447160849 643110652 313440760 677779019 500377911 914222563 86776090 777483610 850732473 881656974 212824134 460032908 556653321 813307424 376431426 451850863 117750293 906736596 503106063 838331296 901516627 945853096 372679708 803686599 675330610 968967687 914869030 966102705 507848707 709333666 94182657 179838149 225137121 535648983 611521503 973773807 774908023 863522388 147343447 827458143 594768037 946347629 939906180 989196229 904892849 998409561 505487074 598130826 338201669 564878326 377990505 708841597 37189657 140779164 745379597 860529046 161445694 306280052 392951719 791999831 781398920 993023971 368469481 968755312 958231268 987336071 634539710 937743813 784877511 932703624 488333537 741448881 88712296 294238683 553659206 633055832 47408766 658682447 241533579 536656134 791706882 818955733 455061463 613907720 404675637 627417142 54876872 91959604 5508291 214989996 797090421 811303575 603189268 694556113 325532179 515262924 794063171 875989948 505780571 901416080 470996383 493651249 601002531 666461207 941865371 945385439 564696622 667918309 235241444 989959516 683497986 989541382 658161911 745857841 635734494 725061858 610789792 996025260 917776575 978670661 845154849 937009314 94283602 838477022 399435516 461931386 977790787 998324484 666875927 940943551 692638585 767009941 942518129 957454427 739994321 921722316 851110567 956033958 607064260 962532170 748386780 886285061 265238350 639139122 468406187 770734810 631974855 813285747 794727377 846262811 887269061 962740377 514804362 872113807 152860214 165549007 466370770 941171906 196264003 211971655 382806533 787783339 997158856 998041564 977271279 984430014 325634799 714740858 512649766 974089070 480717694 891710273 840218188 886827953 923691331 964903483 354908144 584514468 428940950 560801822 489939650 895078871 88319154 550873304 701714519 934228601 481135673 947738803 30417260 108117445 36058614 258114436 239159054 721392195 86884781 451073797 82606605 760443469 58801963 790709652 448296004 763280747 91137990 831692889 659231558 696775164 806755592 899075875 960887380 972958901 114076496 755652511 404647873 407622948 483590176 837398556 100428743 265088180 76359294 345768490 171279027 759780186 205050953 298083367 701893884 786111510 427861419 932237213 151654992 552178721 335242311 529686395 914050151 925968219 417965592 713689559 675139650 777535578 86740051 271201188 439874075 652808581 717374434 820906226 377548740 737179811 924259815 938986342 389907939 932603970 86344265 797792420 591285229 616377893 382216038 886405840 797686427 869084883 815664475 840804014 636019665 922857913 662519860 687615089 964532351 966739273 279299803 988872768 108864723 999814092 605050249 750451427 115816007 437718379 540964592 544460044 569888831 767223960 710219914 888273061 412423291 939095415 376187299 493906599 846290248 885683386 857996365 867817183 882633020 943528655 690532326 940669644 688459937 968881926 556286494 822247389 104714924 409778183 315819954 806853777 536118662 884211181 762837603 873252363 863208606 877409558 162360 221116101 822781586 925831969 268230735 404194575 126457790 732637955 651954335 822860161 686922699 717317653 481028294 797569165 360801919 877243440 258573656 992051857 158917641 672073415 615364163 975411102 524327184 596700158 617783910 929396207 813769006 959648523 903093610 945388523 186580330 188875288 747754144 836514120 92313888 632957609 875942095 923588904 82745025 599896980 413401040 715812765 59153353 978715292 459062931 847633680 541984014 803874145 154341248 550213896 275253293 438155776 737057623 819479707 423513652 879006828 174072448 723113005 438621839 888387730 281908772 427605047 983295222 983538123 853535659 893563435 835979785 938852146 855856337 998203267 705528322 862112899 284101236 898218833 835863530 935721842 235108878 826212001 575202004 936994491 549928266 940936971 722478070 838758073 737548993 846005161 800344265 969305223 419375373 854172223 416651711 752837287 372741432 784416993 551452074 726534144 229305763 707511704 612371221 805508534 48050891 654663677 308728878 706772223 634875551 733983618 293070187 425352103 75255582 359043118 877127813 974632476 385988703 906710544 956023220 970644636 192691084 865177560 732862432 886968840 826864617 933638831 725590201 819511246 384189110 503230422 886748429 910823968 518107209 935185768 767002341 891758667 99842270 613360494 340789160 706994068 641514349 758217699 497687966 881827650 429373417 580128339 251680586 307226366 325918677 960285958 677165302 872528007 240228314 346702324 518612244 682525566 17433698 300745157 968768800 981177187 562074351 620939030 674398829 725750200 366174267 735458939 301144536 716093131 151514937 743053176 104680324 402619397 448275354 803796636 454338430 477035883 529575675 906956356 474870224 761143624 860359548 976229633 205944417 331505511 992311645 995109366 955784395 974850303 415089474 538798068 511179621 612933050 809148988 854788615 558844264 590650373 885251127 889682803 516774199 594400027 623978667 956018008 841654749 918576733 350196282 400340839 714883850 955022388 746757505 788616603 133790338 559601076 245976224 941047470 414857018 460071960 361821872 408777034 503054221 854017831 404966221 672800482 670974771 737285866 859156291 923328863 310613251 848617057 617532236 761729633 255132697 623397460 726689471 832014662 916216578 928242613 392845462 454837170 52707331 319092785 938447397 997235816 122466028 304662724 642013095 790082440 960553897 998502967 515719160 817530936 449353599 461206018 524969884 570676926 64182521 863380369 961905167 964555733 108986403 380570542 927807685 989341572 617684187 872070510 269435627 785999840 316904456 492265567 833075722 845346267 929832818 991938283 722049369 998231459 143303946 622091912 646306514 963864748 441787658 613061595 447478366 618248075 758322778 761324695 176994056 520839736 277936863 790954860 2964848 287855815 947748235 974636037 615658225 827087643 129659897 306585469 904031077 970481480 7425093 55959395 921969790 929284159 942678512 994061291 431672704 939038996 114431404 126714928 443716905 734507560 920240685 926474452 727744993 736745358 472494176 925776427 744921448 830942249 514095645 745351510 858428128 871902676 963070421 993498035 268282395 357957835 923989229 955481647 132278084 242982427 223785491 548932092 676138536 998514685 400858198 827955006 149005360 343062489 485638098 834979771 605786016 909537193 24785591 333096221 155862654 343074028 740882729 851908698 58666420 831335386 351268685 466977001 117363302 152729872 892840818 956890182 161921578 599250799 269123742 802040756 491408402 934167613 980118159 995678696 133735934 232186141 680177999 935381413 259196623 614277815 93579499 925697171 170033538 378970837 505449554 629879144 505008649 695354474 65825017 403063975 692961417 830072241 711360791 716783847 911183212 949074393 619841895 939083598 960199556 991386236 193786628 828006820 220633118 278893584 712858506 801663525 120407807 173531650 227255504 322484653 246160586 859081057 715117904 760232927 186422089 474257214 692502784 736562179 957585802 966005072 369262338 956351736 896561274 981850941 882586276 992073247 582573900 748416567 652824422 895710403 959364307 998808827 349336264 745250238 534971981 984107527 197844776 934243428 688196431 788179997 853583569 990008612 883008638 888600372 507080474 950665469 602352792 881406964 685432622 777204512 54331445 553587175 13939607 627312006 920115641 927612669 328531154 962714258 61072464 319540759 657411809 993661831 354752476 994807408 67865130 476405236 57799430 527674323 62798365 676981908 669448719 951044432 738308863 743087949 417196817 590824102 118261424 710693994 964197898 985232978 703265802 769901569 729619128 737152742 947343662 955834772 814655199 817708130 861202659 904861403 361468172 402369064 806043431 886555546 546475333 550155246 657996112 674468998 349338707 532869280 76939167 744424728 755330806 968654660 711382086 984257550 38532029 199623421 188545026 707812537 436145953 563276247 608840337 648165181 3459528 100551520 119863093 319818660 683516098 814830658 79764719 94475314 218700650 844691348 71098685 395756840 789255339 995193525 741939424 999621670 784303455 881551827 417809848 605551211 263093898 848597812 11347403 213073613 193505163 449369596 77828052 320168866 3954747 143909244 69712518 372623418 135201843 366316105 456782739 543323947 967533669 968472078 402302110 853351008 408543217 475322096 528537534 858214045 465709009 488408267 201650568 363512566 814425706 992903371 822553148 882873956 436155014 562948712 45287309 814337518 912847437 986794830 997744710 999537567 715063415 850917194 258685107 755368023 574727411 963610889 136435124 144297476 349680504 980789102 931304679 943082883 339761045 799696754 582253620 589086162 337068355 973381804 42583682 706537758 405609061 986690165 244188164 945018179 987291071 991388418 536318450 879667366 709435308 893089459 867156254 933854567 487032251 853278178 238035700 366557079 199962858 240926875 719310205 741589309 603540539 756685024 209425063 560807048 170114986 212142012 342624751 637770658 438739465 807432983 428894063 896277154 67673306 463715151 334788079 408272451 605009148 953750727 706327775 945869483 896308888 991781054 773272099 935608930 698287957 814065267 376086763 520150328 135749007 972532146 120807762 582574620 732624427 797743024 567099853 941797713 922660604 969387677 765822003 963574723 10230162 854532760 249235278 921891497 350920070 675546434 639607941 756436282 884226192 939143678 301036236 824154715 464397495 620697061 919961263 998671913 311597090 578755521 860300778 939050620 536513897 982481832 68999234 466181343 126836937 638274668 411233737 727430524 894409117 968108582 940449779 962075033 974327072 982228624 528146816 773763613 361426712 858050546 317562467 849893923 718978200 829403720 847107830 989629699 457068615 591082643 940114789 962395715 579489805 658582786 955443667 974827046 981065705 999433723 959637060 976635981 862727611 989675223 772009270 777858696 430940116 944680951 800159488 912319867 975892285 986834239 92352745 904897113 821147707 835079333 854464489 956657235 17487260 686041568 180501105 203257178 471963993 531898335 709995882 942076728 840999338 878786556 395924266 507043969 500068742 809314058 204141380 734897404 687438026 857487282 484173869 687854443 307172822 623572487 117610126 916044607 384139682 917356362 443040112 669402700 537388527 617681368 283005115 912762849 215614558 431896184 892912863 957656576 619047008 650884930 34677393 770093416 286483103 804005752 191458379 696784876 906555457 980822398 213458119 901243714 608136460 783372826 126698061 201831914 784446607 828180195 208432707 594392827 669724907 847811172 523489408 998563614 235964702 946975053 139952668 544976431 22317057 940221138 459055171 902765936 49082110 748785199 158117001 647595326 628930828 679774477 531418018 823769992 258347170 625833430 97301143 429637581 207915274 927318590 560878184 648482940 10130722 380988089 853350728 953583194 548623034 937560994 80866785 492405240 311896637 373767332 338780940 443012169 641784516 875171135 170703321 675898090 563035927 778410556 853689388 903100363 782222597 892692325 732106659 754680605 988105894 995232144 476809235 626334262 178684868 649048664 208047213 534975966 133081069 256635110 287670954 547482015 506624452 572827197 671442781 740436004 759574709 862092449 445746856 940079087 556323600 967452201 948009738 998399007 805226953 922259358 847256888 909540318 257877038 302360628 222165194 236330180 840668971 981408051 704157038 740095220 212639186 483678217 499300517 503451979 225865449 976049006 307808811 671684813 183588483 673718949 787144467 863974902 390250067 965671312 33029345 967333945 375064409 757807827 694790775 717873961 716382149 811941238 966443130 991463806 206690140 766106843 856805245 993533369 883328764 947098751 202336961 886596009 372884592 743434483 99258999 370296481 266411207 366152333 781558830 833507712 42582928 461295147 919898845 944935786 735206835 974480885 780005364 984452856 858844266 983015795 988911811 994113054 190089537 498314989 62246399 905338853 448185741 641805938 733293122 733763085 242930269 888411280 292005238 760211736 593530240 971758242 487800677 675604119 641550818 842354438 739894562 873085211 329793933 820015197 246130754 309785393 823723788 921593350 341786949 934871498 605780399 975015771 744158231 906387207 668272171 668809067 294026033 731781127 728523697 760070955 17598523 662884921 446378539 823694008 83723761 594565849 539498010 992126813 544550974 568017064 970906668 999197264 781612899 858286589 454895456 599727040 294959301 741021252 710027714 846831789 600448713 813107360 266104442 307840803 275176819 306516785 407827874 746596926 349728025 606423803 846443279 956227800 443782711 478307333 532013330 659331591 337703719 471261396 273028481 685153684 739487082 821602730 71848347 377246199 644618225 790704449 871638473 890552057 290059203 313831836 335252956 436435448 987598941 998871209 88682446 226119007 785170197 856108381 567908855 620955812 992498741 993835190 153450829 656200969 965757341 991599536 390543855 789420662 650535558 782847629 545435417 892390047 809800821 860188140 952751983 997837682 293407919 853678208 924203146 958357166 848826528 918426126 703265610 934766245 730448364 820725469 552738973 767666478 383755517 858561860 219386804 871259930 728819857 843966375 150588967 784961586 441173040 519927526 970365330 992587621 281408234 470174874 1473722 277032618 583188867 866769312 88441711 360096707 840878458 848050972 39142986 280216468 587097526 942809831 152219031 751043807 59602658 637908936 942598293 990276813 90441825 698030776 380453640 619976433 666473326 771637727 570455066 811504328 879898080 997775254 855627314 932484398 656725322 979129094 238486017 727525536 302525555 468156075 478978553 585798483 771596153 805467894 29031405 578063255 97882452 120104832 954265275 975809284 73323915 555655781 755059153 814828385 602638208 801103687 853980011 902192449 575222001 902425341 458923119 560947911 529805979 928128998 240852084 390245740 104737349 690834910 841016298 946971718 631777062 818551622 340881258 439435796 876007271 931528563 331721629 431326462 782737716 834058758 844366387 893176958 341447446 759954493 949561828 954608538 176809286 468169330 990823005 996915908 925043851 939135917 47764319 591896835 915376580 935456799 603680690 612088200 413637851 937354227 579324900 783226118 423850023 613923181 641940021 926717509 47798833 451376029 711771472 812152670 26168130 86848775 100404339 517887457 54564955 603804259 885603628 938607756 839063725 945957259 81844922 904109594 433052053 761079519 731999122 891735403 897961023 987201396 671543235 827500135 136183951 594725727 80272633 575874568 114125597 419582040 192846899 668140283 822655544 948188969 948637647 970509350 798195739 845908080 479616083 484872629 17464278 949504595 778021985 898580033 548490816 974586099 896601732 918641614 506262736 944578272 649966825 718785415 364312105 390976637 705583163 718638722 811008810 894931546 516634299 830428866 358384257 995160417 597061488 947848053 336805107 902036138 11296008 35700600 239881260 672144072 211016938 913938946 641380030 909081953 774168282 909531787 622282094 713128466 228500289 933092200 950360964 969648069 163598442 615936325 402950455 530691550 856797637 986053385 53192157 250726053 996768892 997018800 451866362 807781706 157347188 297150929 616705416 690118286 431602083 526853483 848739137 889167917 325571012 717620976 820183253 857015951 412077380 674651166 350777065 972478964 141063007 388067834 123522716 349474115 356938290 812614701 256075424 313484409 996272699 998075590 626172633 775644072 531059513 613283282 618836918 938486571 436718863 703539023 253718933 558864944 964363393 992433426 469054274 895203311 513551334 928686715 79199716 440113843 74167597 790109966 240976038 460285280 143385734 587564653 917474075 979725006 619355040 994129609 924776440 937666783 636303629 790163368 76048692 299469727 587666594 929734726 64386597 867186067 193130524 361874284 89376106 689181945 688505701 878421805 508872692 864790936 408484376 956807375 679629443 823135176 553299736 723642712 833813490 869891722 619573514 942061536 23105151 655379733 58909732 806004369 415678932 562580897 313993749 890066038 893414908 896213070 221783815 792680227 888236270 944526992 653413569 740186507 543647804 979580725 626307790 791844394 627307044 928745896 554473193 669542332 549188343 805639184 413441880 475906708 779459432 840923037 556380343 653673134 132141610 919930833 914386139 945313732 881130020 992266129 181024081 983851495 138554901 471334253 51280471 518431691 189710889 716859891 119609530 148207284 185204795 584927633 253816444 489635968 456970510 731573181 682136491 730855300 105590069 513423849 188109826 581482710 631004893 996612023 404716578 976781653 6874277 982446396 66428406 602935480 646332938 707299243 436618280 879973892 529204373 637905807 39585903 473871287 381912876 944904543 806676042 947805218 959132737 989400496 358905024 836507112 436292205 618418579 90869097 827398527 99506607 901294278 237674888 932999128 511721310 934062872 83837921 288770434 457318875 486500657 681094576 887351303 475435527 595573063 824270906 891690105 412802329 847007225 392485527 501552041 433463920 719922413 749056734 903849288 727171971 807735788 269290101 323972423 66412365 992039975 623321461 738869179 389138579 562229136 662883948 821040869 479793749 969302722 339262752 513151685 181444229 350277228 298115957 620673693 323795320 576066939 836448039 951646280 301909500 346964563 235635277 258413767 784773387 952888850 168853641 206063245 31227062 847110553 230013330 456965915 479724440 976248680 491748800 804474973 419037347 767237098 230564778 322410201 683596725 985554156 181478947 472383630 348443536 940157677 142157047 498072004 921430261 989089674 272441046 992103602 899993228 926564360 860513188 921782682 157547842 410806410 277168202 680045651 468618964 753946238 693373199 975887000 936519798 973592537 192128360 767096156 562091157 656802184 721869576 999397990 403968932 409821580 61938982 562739828 940768187 953461302 732159669 792759050 508765954 906999867 657112232 944671497 255160463 357417240 766646712 942373704 621696089 721791809 592208898 720043185 239381132 753229170 795630478 821149972 275226395 812414827 951346254 985840182 61524762 827350569 110645964 326588187 128391525 251355134 245960540 782988200 291239415 439735141 919680023 937718072 225763413 580096942 603176247 846170532 779354195 933105590 329300819 331585283 103242772 564064765 855537482 958096785 166766290 452397091 329166170 870815825 849639224 899607996 365398177 503553362 118251494 829687188 207680129 267886731 819961150 930149825 409220371 960487369 230494423 348533350 62765839 665487718 875048204 906112976 325823519 601748940 465525023 826088857 781616081 782096265 423035843 877621005 747943855 942929901 848649471 907845166 689716807 981523393 669353828 785718339 641527083 675379147 312301091 896960059 423331533 485245733 661442703 997267086 514311952 711780450 815546603 857916746 378476815 789391723 327573087 427052124 837498958 859715608 192615952 327066851 13115909 645701000 49731571 236797613 393372168 430908788 5369032 997912615 542574409 744601042 914429137 983993972 257020798 620184643 174431545 413607014 588764488 727701552 553543393 684846154 985280200 991735948 389569359 465351206 896183028 928641648 960340988 996505479 751710209 759225664 737338454 880502036 127153033 170725912 688090404 952344215 618360612 938114101 533931977 697292589 205624577 416400593 101323067 849324888 651916759 785708302 426288288 764648497 470757495 836011231 782855746 856288377 923383996 925588542 581735329 843038134 164362175 565828158 711112412 874996736 606729992 651693512 129535381 421686530 728405172 869461074 181006283 374294727 968962066 975660004 499129814 786469270 77292371 461862160 888564787 898246089 821114881 965958984 368670442 619592219 200701018 694349856 295802520 701813059 255743027 290085981 366230936 867062174 415036716 473397104 538567383 701653961 784183938 808404979 915641266 970720634 595515608 634984382 225152644 784163257 922335465 965185079 909381409 918818390 45878546 304951949 811583837 935629640 187243536 853308813 640297764 911293192 463709794 718858318 621735618 959096867 483928555 947856155 301647105 693007048 610265577 972906878 405170753 594148799 319068475 748082277 370903677 581321355 204160263 821672905 293095064 501936714 201561955 878117635 889997531 909871754 543725887 633342454 901244726 951611766 37787459 497526239 610231271 943428024 872047405 955788934 281396413 386913666 87405557 807804886 665214582 671821259 478226243 692828457 283804573 384722644 892912245 928270993 699642500 983352430 611244077 726335119 325595615 852612536 431342059 873112197 319350165 751044655 299321330 335688281 538487109 658189634 867341966 988185465 817467893 897582390 888009285 964583029 732080389 875108787 346233143 844287167 779718284 824616151 420793201 599213252 343815526 863395537 902453542 911241376 953361776 981130487 179959924 747695300 165804745 883985015 802925827 872259173 689781208 992415963 438744520 438997522 253233474 806388883 15691396 706720084 928680028 948183534 699541789 981422748 561984082 562087932 888042240 976956181 376829199 923933930 861852482 868700156 219000097 442286292 116809207 160775906 145215173 684577321 374779827 655082800 626006477 701269199 935614509 952021826 83141342 124041711 674403322 976473210 405108585 602970996 634015880 976682679 109021721 123274282 472712264 931786863 804866502 949481941 403065062 617275513 576541096 816680605 787637744 816412284 870872578 966265497 588224932 861919677 577627062 719989131 812604448 848625211 404076499 718876141 866728268 894958491 987039230 995778130 129807885 873695158 445772323 740489563 987188149 990384461 872363104 972329781 328164889 711186524 382081789 548594990 835625668 917157767 135845999 923664061 7529273 895981724 909373643 920843061 518092834 730298452 882105375 955540804 152598559 209524885 995261129 996086297 381396917 768989487 151362023 769980662 966663422 971051270 827233110 934750268 982115847 994809379 64584052 921481480 461791014 979847509 653951705 866978036 703143853 816581782 238805369 754145345 48826984 600094906 174865095 592883424 786281569 798416065 997431153 999322930 812809977 938351018 508488913 845558384 110631287 165644904 426710454 672952562 523069649 937609537 43548690 917503643 212682781 437683347 803702682 890999088 37635689 365271348 614819834 844110210 730468239 950076716 354227011 381493806 492710285 676790586 705294591 740999839 234680076 810671581 943095555 986349129 204787553 357509119 734824232 978205476 355141857 443508296 537746643 763388031 146684399 995662064 770932549 908216678 687880465 793581352 270525891 343023583 224018609 250043934 188666432 994999042 271937915 617057896 64993448 216953872 27043879 543409691 11535970 413316798 407140853 992699136 833566044 976771241 340903974 734448335 948531123 972088697 328495766 731892439 343784706 977794165 460933780 577465267 690572079 916981461 162255644 835319965 654048582 812123929 325385619 464300932 111398524 575232579 10286866 289351807 501381156 696695157 121965284 407011275 382792523 923585278 652308346 859736360 892221345 934889944 794842847 905508154 163929948 261564584 58970917 521353249 685492833 706198275 404161652 562108521 290933998 374655472 11541727 945442731 952838415 993741808 958904389 972109326 969782568 978397792 552192884 736767121 871374516 948480905 135626546 450654978 22822254 773096677 543147500 592520739 240764701 723407922 81096046 233977707 742907007 924347300 691617000 713590663 951104912 985249650 928380883 929323520 306793784 967372580 527910388 836685409 962370012 969016884 106634076 729754064 337512903 489946487 234946952 860422747 426418015 454158941 537646235 851920568 945478063 992156231 961133056 977077550 446770094 867422594 16729048 350030373 687703722 840326217 498148344 889683201 845872105 904024078 306980779 925090876 150120761 956200458 488506567 613145834 679389561 855474324 600259502 899737823 234902426 761461618 386857111 549185479 806542873 904366344 303832429 552579819 127142130 788917287 59717230 388097232 386257075 718765882 134011407 616093787 740499111 932329211 692878747 858457056 48200471 121210767 922601794 974313723 969113607 980162392 519294689 990985811 400054071 831208794 126485108 161456254 11357925 679416422 993855654 994027102 650205120 676858220 239859200 595713954 842287075 869769009 833935847 841952148 156516963 292759821 647829672 722822959 212437492 781161438 192004238 623192756 499405372 688346357 412580001 518661994 39309988 273764130 384671198 907118432 184950825 286227611 696040165 875377139 958532165 969043205 878556398 908866656 708514232 987870874 497690397 907339555 729961000 805085864 400121283 857426885 461606616 913692899 229522378 603511128 781811641 815235939 313663278 810172890 100631849 798449169 289234484 655535144 847551880 951609237 839162843 923008223 354345154 981577576 685750442 740281039 726426201 787595257 283942027 944190392 103966002 468458240 577754991 940228761 370943925 412182692 146249064 225860634 829080755 966137943 930141752 943783519 838241498 950798721 15266419 411316456 386235962 700631885 320223984 909789300 633678316 681568313 573220568 949822799 517396217 540655907 622324216 903887520 67338013 454804528 534314356 990620201 557600698 780947105 865101928 902441577 634364037 844831131 342822303 751112677 904835579 991670642 374027525 910003500 866326960 951599906 838981189 928800334 909416892 970130345 584567618 686998671 198835426 525803775 960191987 997983297 114937122 222044769 208680527 534168070 661286338 727718779 14951983 854482889 574713037 893308993 91761644 282306448 965835405 983255935 953900695 960296522 589664517 920248725 407070797 599598382 933297574 953126983 348936885 492214772 414350038 872727581 335198780 757303639 581234024 590051995 557097836 598161318 809877514 995654324 480573718 547725128 673954585 680422056 50613452 581404649 809659003 813895377 765379318 971768279 397026565 940556871 421349075 807344733 782626420 881418141 441065308 997664912 519102651 867094117 260014717 949556409 204616936 585313217 267463027 356942704 89469260 605750303 401851215 765917988 133292182 204653332 13519680 911657847 60956596 221856510 294413963 562975467 138015454 976685225 137689476 565081240 504185852 881336733 561792458 883534834 146053333 944288118 752143547 930867191 461558519 939026014 490018476 751126523 987822826 996711485 26697951 329964514 2603670 922427726 543988607 938173767 116122662 733657149 355022038 842650873 892257582 977573402 37691350 391433265 471862169 867163715 2399677 330020984 612240047 896624905 580267957 904030797 194486249 457631459 886735616 912866889 218364200 967506664 654938011 833560241 371952965 570762659 24106811 564024176 63114643 567825725 585199508 829929974 745267626 833519668 738995341 963903202 161823954 425455495 901162437 939217998 527463578 627246811 492584545 566875857 92271650 337404352 670855229 887713531 575138493 703347845 642789699 844682235 52435218 603139388 389780785 967569265 937861996 954415059 66626548 348761819 508356049 723660211 348869481 966460152 453620852 740804688 997613987 998004113 735199978 942269515 902393877 981136754 5143688 208090370 57054471 748161482 183009655 514696226 776093115 934487288 819562776 984917967 841791581 931718449 785552891 801286148 608298835 659358254 754029984 923667901 655317121 914194747 764837797 925777101 605405728 636076284 831353928 940870729 557573786 945899125 327817903 690144576 403719599 924006899 1827927 867605593 838406777 869007468 282142402 576405782 696151936 807455142 706408095 810554514 999015524 999018319 189143453 916780863 709017232 952272066 586186941 772235655 836957705 886828554 675733772 713297497 220194378 861159260 931405911 962762897 89424210 954048504 116517468 259788139 735289772 806119510 762536405 870934573 607455031 901272101 770465297 815786627 785884964 893117601 180829064 440508897 990765484 997719879 977334455 999720311 741876226 762550513 83383254 158258522 372480979 698221269 334181287 741675667 727224693 933085744 819580885 927504565 668297518 788980895 222841756 381296625 685359877 915441981 176358891 299749335 538726672 609558638 282619410 767791635 264085045 588606381 600137929 969947705 340829031 387143846 382182097 429014271 609110065 846356719 964286751 974898667 859243111 991446729 198751622 998746841 710618039 781787075 904943308 989199587 220179383 724279392 742312010 873779320 229183374 742261678 799501500 961546623 251016642 268705216 691040699 994684542 397419360 426103310 195801039 292491746 178415802 599115664 759475958 944091897 941031379 998032102 787281622 947162159 399729559 872139700 108204955 381411519 734330192 756908084 221996419 607691761 305444524 642180719 413789357 953739700 363901418 537636149 254754005 830133410 654655455 699095283 851831344 881255058 157519695 979506577 476108557 655544535 587375978 959640536 515504718 575049786 392055750 975535172 807189254 990159228 536323323 620306192 1362021 650170762 526414601 846617324 677895779 703372110 21374045 284908100 186408046 315258879 536997923 593713304 806028774 972496135 608576543 951580942 427851746 447993097 157599182 612765042 480478328 707569229 891055610 967182899 548148673 596078546 700181050 750089504 210269109 311030065 52548502 383017174 923671858 984444662 810122477 943160334 342457929 355937866 736624470 858201363 401135872 430941141 418047805 749207620 109693853 939133798 317758555 931614185 812741886 968364002 603617867 775845667 998545746 999845181 104231152 918053760 714495374 728897390 344718793 803704450 145228519 316591325 1783385 41400450 373407134 625729199 590160986 962749449 497052145 537603984 540382121 552378683 571063861 853744908 730283359 952716256 765757702 807849514 477138905 974337504 821583017 911308459 584538516 972503475 818224267 825799912 879109038 992115740 84877821 722338274 561897364 993121414 893786917 904917493 198420245 435756466 779195872 872240027 584214675 818132227 325070918 679156905 953107287 963596245 550005756 808206558 998143123 999008792 20015794 260504360 591891930 699832079 167122560 701253863 796627053 944000451 373619389 814367758 521897310 592002689 368246690 865442785 885418967 893923838 46896257 134990207 889281918 921648213 922573807 989081222 270085634 581745999 314240800 851003581 930800070 979524677 804186838 847024942 766554083 794109249 236168771 321426786 721790839 918586636 805905547 884869640 752204894 840971777 118433751 463526814 130928215 360511055 577250544 813655602 529204905 658708026 474997715 579013458 997923104 998551231 698427255 837912850 715437002 775871965 255847725 423600278 47884082 664599740 692070428 758934859 395947182 961052174 353452114 530509203 662125954 791905570 561862090 575828057 226178478 817067281 307759953 789342173 169036435 985168934 396063501 401238701 489284404 632609234 237061650 643398818 245545913 383275112 99933567 125109103 542614846 788423150 146237083 438267479 953646772 987429640 779474708 884565791 531436187 961009162 10160602 827754454 240915723 272096027 329912503 463251183 171855982 676636247 889582916 984174629 935246937 963733197 747706179 915922409 13805669 348758235 454982286 911687420 305307132 965050699 914071500 938386559 993080097 999658571 398765815 969966081 72738838 547293264 935447646 980664854 418584212 992166172 144599980 539168687 740257869 765899055 904689720 927582965 615751043 974712318 353887931 813612930 680797371 863120092 771887636 946623786 599342035 751404285 90386178 381757108 44279341 788167836 789453248 868101646 295897582 765664572 917275583 967576378 467030267 892263356 111279873 246346130 69785896 614501947 134415392 908828533 220379333 675177803 603317862 973152316 909494878 959262699 548842254 729849001 546949430 756714351 367047831 920640219 826801149 928475889 219126803 879854598 976913779 991956261 605208366 913966558 438330959 448285617 610082983 614181713 303643331 855770983 75594100 778410956 789743319 980297760 992736844 995659802 575466389 684089128 607160925 705756378 916388382 956740103 51857728 334375641 707023500 936933549 394131053 979105527 338953476 430272026 482719663 707442900 51765737 782291123 824281057 830598968 18038625 285302300 694320716 992090492 215862222 709620666 71504975 156791719 639888020 782315496 662762541 811282313 730920221 895701188 714377375 987445287 557041866 560313046 276853833 694325825 995003043 996494407 160070773 684272042 317925215 707729127 682777126 913085263 796865766 953560001 930660443 947782814 985332999 992024691 785299535 889098171 19693818 55550961 513379568 655885551 239391494 666244107 721054026 994410614 101560610 994803319 300547867 317880149 247710599 594010487 432491122 446978925 949397548 980885655 582710495 842066687 13285543 314363808 849601896 938629785 453274187 751950746 270752825 556704449 637058979 711007378 657537475 705767702 462425431 604397406 495088562 725193095 285787579 927243430 439318531 616832063 19035561 459257685 121012215 584429877 121473971 166360137 422702780 855776027 965439430 979842489 652976459 852387438 284125274 963375698 366926744 423755900 841935603 927996921 159920637 380692888 409303081 442229864 347954698 630094578 219249401 731067347 683859693 918485804 345198115 596547513 563936547 824679178 803785680 958454158 626000941 642061777 598969285 968582149 302671032 359288864 393391205 787540594 271134708 318684854 490516504 999807090 516170022 831273990 494681160 965004672 582938010 874855849 577679583 611362318 59545398 345198402 913736437 974891821 69816774 541863981 419755405 615952437 106453663 876196852 563908150 843257965 852805289 922231188 562199370 677569740 968795729 971235398 634788046 818362582 352685953 957574618 130219130 753553033 911473229 975719172 898779296 945229023 575315793 766420360 761210864 793908374 354227693 838789139 822394354 908269692 256993273 803475587 373447372 617775472 201777582 327841017 809273047 987066272 854570452 958578864 180608739 540360570 786815267 902659291 85754608 418606551 985047607 990827913 813511594 848714932 242961793 944420528 102224284 792887888 284388839 942979152 491480225 569329560 221410122 835133168 260125390 723139794 474305104 839041464 212774708 430594713 715075137 935238612 473983537 726495154 609263514 851287883 308253338 311588974 354350514 585961497 621964532 890037015 870252371 900569573 856258311 956304601 863861980 915665664 849163445 870001173 154076948 730036401 327726538 874484597 205475546 374020045 273488416 601871298 865285153 932016317 547777112 714743619 60643899 565669687 129908956 908269133 360073332 872328574 228324736 968987001 235142485 966119381 404571808 443238835 350279079 736705468 675679112 872277139 182842649 374978297 93542993 257386939 267477218 444866184 809098213 859880862 665426355 773979562 877254175 905791075 586891075 703342333 328986511 945072045 122318911 152586110 129284632 533002534 404375450 942833783 145754441 753095808 877593338 948371046 959209444 963563310 719454694 935605332 872061694 907747674 966071681 998851632 519600727 942895891 617566707 834211891 435313508 825436608 314915821 366332875 196767584 506074019 180460103 736186392 980156109 984407326 403125213 829975018 893070699 963325305 103924005 466970112 289880880 639062805 870125235 891954510 481131483 612694225 486566246 667334555 880347584 976602062 403343805 465687275 573495259 640479731 745957027 819271611 279607966 580093715 310436531 989665875 216904208 915976927 886634736 989287978 109859135 885996953 70312770 959796647 692174555 751370994 500181025 693229058 957109946 974119653 34265491 390362060 535999500 750950935 609700469 997300345 232743792 388564409 553684967 935142734 762546703 789946136 193043771 249837924 878930738 983009430 132461045 396901884 135360702 816565614 117065834 353988962 176808672 596756234 630060845 658859106 174569570 805566143 520756767 916193927 521954276 923057479 271301506 388285273 65939303 409112133 532203475 971367313 414169276 743548866 557009935 587028660 840750123 879610175 342063841 350723197 898743650 981694872 114028361 704636069 693454642 778364442 389074920 391611766 510199647 982913600 920703320 996786583 946704670 986537995 466031030 535289613 950680195 964757676 86326789 920225307 646839512 987475120 456370609 537585854 441727476 814796859 458328757 740730804 310094692 701941759 337686175 356693734 644864193 839767823 751131431 783915318 840527355 901010869 74409215 843316173 275755015 931727681 284980636 985219182 357241778 491715669 489435394 692065309 375541996 997124345 969615050 981816932 337978695 627048035 59730100 68324617 510525847 934559367 253006657 791960315 337818003 391184768 596117444 723793338 49895163 885229990 336022026 930871690 469493011 785849565 344035472 936295696 872858208 990321783 50928706 861209241 892231373 902494055 284430734 765737145 401381518 458562339 806351056 903295095 615877301 672339711 573194150 728218569 764291201 971405429 843168629 910013611 977959465 994313721 541718111 650001212 938980048 948020420 590115928 732697939 384104682 504199940 503662040 528471270 339501532 501304169 431656974 758109259 183342767 186660564 7821105 931398103 333432287 453164719 968836793 985629485 74372841 940711572 757694920 931317233 155875855 237744534 368572843 914389998 402422914 531681422 160544093 168926356 975544107 982881547 187081949 268201067 564536399 902180714 7758455 865870563 145513621 423640439 143625568 823582369 446482468 775938474 155929960 380639406 151359769 902660618 264280395 451999216 261358547 399457305 354896524 717953572 529105867 668105639 152456596 773870588 932136777 949965016 643137942 820235751 152280787 296783597 825338188 882585092 241077393 993461884 447519952 773180200 139769695 523142210 375476259 818126750 640878181 745651213 992039459 998425309 46712281 284752492 874255623 976949586 825766668 870307094 955609948 970357188 58193026 417668513 55885335 968269345 685777195 845524355 548005841 805869450 105377046 659326169 867440670 973259133 412918671 468308738 15164911 394595812 412475695 927462125 132307812 247198558 206100680 793327460 321622919 612517157 702989972 791213667 491639929 960289208 638638303 761445843 938398202 941280592 868445601 932995923 699882746 859782442 907304711 946211871 57131022 244449385 780319664 996318295 547661924 927344772 639510780 785217496 18880688 83609869 734545088 863050844 87099788 671145458 449641497 733747612 347887994 933475172 576261119 789870291 30780811 716147510 838635138 840306375 395715642 866498323 28044830 687778606 7179812 170389469 535798433 576369988 119255901 889658008 239947938 984336579 544581162 659562421 568243834 589352973 254497561 485959676 246070088 786205448 259371044 614794123 301308881 849910084 381725792 478604506 727180555 758061306 496866198 969412809 734397967 823561506 738527752 775266524 790248330 821356314 596086394 953066663 608003753 872340573 505030585 814068425 47591432 273230361 637575272 814913833 250561447 831626873 6448802 540323933 843502621 907067548 842009195 996713888 318154631 580532828 279503948 750916575 364618711 985879751 192781548 701147660 391692834 392611345 940410921 988400296 510786241 999468242 629387659 984960688 24805981 869604201 402520492 792261860 526445244 998772113 423287379 824251038 28884802 861843475 589979180 638169888 138258046 913633333 81100805 465082004 626400909 947331944 405451467 519005126 846044557 972116573 261256358 564739835 448283059 567200762 730895224 766633147 889893960 966153128 793403687 804080986 953511620 965954090 79164887 239900112 848996825 859377436 584899485 833096692 501289399 949686880 513016277 605904005 788664033 917639056 682203536 960918492 725227178 846103292 795110365 895723879 448566989 860127270 156590479 230440334 428508939 572381798 110194011 397995696 885098180 917452528 824813520 850826146 997180502 998308391 794926447 916203504 918225335 997193944 626225883 952031924 126205626 972256341 484282469 959051186 923684735 988613198 700279772 759524025 889541510 944820564 630196523 999250470 86880424 582070829 684826078 918322224 978219895 996958859 614889718 700230072 491749754 568768091 823951371 850846185 408783011 654387911 37303030 528438641 217663783 736364069 666551864 809424221 338979240 490073750 288166043 709188962 596979672 923632106 309541068 862942279 14808684 412275772 265131596 442918553 134669886 633311472 737324118 841576041 944404347 972991442 125604447 355846261 493891382 522434948 45342637 895995525 230281426 843459244 371834342 440265191 448372588 534634459 94566200 576843617 843478827 877110803 519220687 906249054 453484246 867167018 973421893 978344087 84362914 803523753 250404422 959551489 202327225 537377563 131313381 773461887 67861706 962631662 591701356 829545364 55438807 805899838 70791793 412503901 956189235 969229317 631499051 728947069 713904725 808948249 11419667 456885949 261417879 390647714 505036 190182927 452668609 966571659 443955860 896713041 21274303 229950765 611726355 981020529 905525006 959459491 685106712 751541883 598160190 844291308 354684212 869605994 447754333 805362707 141096822 411573176 946617875 952986200 795322856 885741706 73572514 475781304 820739515 860750476 540637214 745775440 881278111 893868811 927181047 935044790 278684052 450399663 928571825 963675205 824095576 946616729 798614438 944691266 165393314 413403716 983388379 995472503 700549860 929318150 362415621 506344731 712362351 925750446 706298986 757264682 367582724 565929075 106805930 186664749 732360546 976572990 777916156 797316351 781634193 867360667 894525713 948640213 950509903 956025783 29820595 741457723 453060116 775964231 269156308 278791020 508051321 979086650 325306960 503109214 476438144 971022480 687707853 768016601 650540707 735116857 577158976 909554673 92376297 222153564 607195929 920106207 509117092 683370503 972398664 972942286 674332060 922800012 718042106 796015912 688611738 962470743 182347417 566879365 213035545 225434104 356677994 417236366 421863823 728392025 66353221 274041615 598708919 867789353 260121597 277270438 274579000 511643580 69022991 135127169 505841867 872617904 406083821 824038346 827626758 884648573 428593610 939466511 364190274 609982368 284987099 420004982 627281393 862976817 215155491 678904802 799287200 865087969 123118725 790476444 358378688 365216820 674254386 811740774 152366077 604221252 287540944 969613671 979599574 986571669 375712806 510024629 78523811 914160921 380209965 391487187 484688424 506407330 731060428 886728751 371264991 541472325 468480350 870230513 82085607 671009771 833920092 933208028 682446191 733474529 758753714 778050092 932086547 959344270 323687646 347507934 67111432 827605571 259480521 580252270 784590281 799155268 533936175 813125768 355297313 609010628 848629103 964931415 28479439 175344889 114882569 736062935 190921891 459363049 635088315 729556570 946455179 950101297 754276170 904650852 388182131 994139607 474529649 492590900 64496680 502223216 90165252 190088776 395607583 959800397 242691830 855115524 6462178 74915044 483908166 673036887 979053180 988980691 401769178 823825766 932854534 935664976 608262737 818955305 724523417 861763943 284227483 352697438 902003894 941528457 970072220 994755199 137627336 163356293 319906874 926159714 149550025 606565206 602817352 636761550 911498742 983712475 383758025 762485693 548783089 786600037 241563506 450722766 728089156 749281783 130638048 732583860 956655822 976044561 859174001 965477166 701003994 882112801 18011937 793837407 105608577 201785824 351374324 475239927 218800156 392424812 5853718 959565089 239997943 986327020 388598140 400244576 610659681 729714997 483239712 529617750 157608152 375183196 397080499 948222145 527668548 911587089 81784298 827187038 962361959 994915317 89732932 956494678 499045972 968521025 719312356 859461112 51343347 628761571 420008337 891397422 760813712 975972997 745557939 988028558 772693086 846571787 740147438 983945071 387261816 515578850 859622349 927074100 616651602 697340919 377138508 831936098 325466945 967359722 675321456 983546764 490580227 979623532 459996257 628719389 339084135 464607330 431606851 509264734 522512614 906466107 115851584 251575822 857346359 858421536 676277822 924386290 797066004 908716405 473225245 564938854 86751377 783056703 596222449 858095665 422417245 775988027 777373421 948636237 184546043 456688909 895213421 910668140 695576878 834454394 247141722 722626100 954688113 973505975 100901834 303266953 297342986 838656981 675116258 809011914 778690828 857309486 311283045 695422124 487728784 799174613 182061184 325862855 595406404 860654464 735941766 991522179 374170578 800785205 408742350 854550713 137066708 899742721 527709153 827523236 777832892 804303754 358439859 498389616 356795483 787451706 70512932 470118051 162657093 631001275 728435252 900114981 926581045 994643203 69976671 622834879 682332762 914028640 872922111 955260214 505716356 894169799 955200080 995695550 569487497 611312633 991841411 994560694 720461589 776409542 78704966 304455412 614172735 876846560 323375014 902670821 911712474 997596500 265078942 749668863 588986258 942256318 930999771 967881630 810514093 953247463 208933884 419291978 107210182 235120848 266013086 311400496 901889374 934118889 189269209 348427018 604407762 722050852 126710240 343065206 130663623 640613815 521225881 532563567 348659537 590995234 907797268 961829081 191547749 859689388 343073788 485676114 256979939 786469299 904518315 946597746 24066833 891264875 16358602 723110634 778904359 986506454 69300502 728684425 613022670 832739615 696733099 875182944 78013393 990271869 524558914 603507148 802412279 940862648 766859603 944244976 860129544 967797355 118700961 687667575 781444022 951767170 924559437 981640844 187796517 366351274 994992028 997526806 310885246 669959335 272329974 896907862 998743669 999297030 174485678 894629362 520820991 775468269 284043352 504064526 144919539 169525537 819174938 841247340 158698889 303012179 932673792 959090702 573756259 598684634 101880369 581572861 790207480 987346749 368952749 909290868 221143747 604749746 856905967 987242560 28282467 436461690 98012207 138245457 641004491 895980246 952457222 975049165 206945755 435607412 394895299 878787751 37666970 559593115 436423896 670277202 116606183 611724970 356277805 694587240 426647649 788066162 52675442 150568722 805979301 830998914 290437499 982726370 4682841 92920064 445299875 524153242 815014181 897166905 786601187 834600203 848185712 945559155 740275382 995088258 453525565 853050278 483950336 942807116 181238090 988775814 8776365 89133168 644081749 797969915 12580953 235289101 385953510 845391210 739228853 859591164 257951303 735886504 308997638 830411803 964627633 990016586 124839145 310117334 568087965 620828494 805318743 968542567 93691437 140706107 104340871 110419178 921412133 992728338 612698323 887484389 517319717 792702047 6664429 476805474 111289663 347588304 431102607 707154178 238586341 755675204 461347573 789488542 523254786 763352846 178140336 761515834 373386752 777434809 345784575 720946519 770975949 942142852 12044131 756396960 904949306 957640209 465359217 765929290 92880396 964952289 852676989 972469829 643025192 664430763 374357335 513556616 267658402 765581268 603555546 890541634 923873306 961311590 277522936 587328824 440099774 919824016 488749809 714597963 289899097 473557091 514940939 872435452 934484656 941880449 564874234 911603634 690118861 731542998 932987172 958474432 514239306 816468232 334924080 700311498 810257969 866143758 39000307 723746052 844593951 996730621 482800847 877545106 644543713 865738147 928556090 952518338 665337451 822121322 172327678 897207189 742405320 908662837 337957635 347129711 312752209 831067443 770732926 834075017 28088421 409349255 520181447 850575261 412730603 842930699 636023846 779117130 866597593 926311929 210736857 543911671 778613882 804372810 20055314 519941244 766547661 818838424 219551043 532811870 698714589 767225174 817401435 980877878 722355789 736823400 423965637 441978230 51130822 319188069 576429456 858745458 466895207 561215078 249623923 387251658 549695624 716929191 719217236 865610161 998670081 999459127 770376568 837662282 841134430 924134661 425398650 839367112 39207718 855082864 394419027 976876747 246330999 538212552 554537597 859793356 690016002 923160075 696660775 909782703 160165192 397026653 162762484 981668679 798535393 996680898 935793450 947684467 486500802 629634581 71983616 224876259 63154247 503420185 664025424 713162004 611399860 830923667 291843245 358366589 342746567 360973024 928039210 982881003 309178198 313399810 111564075 497768765 544577640 658268278 132679106 980362698 218611622 406344648 696796813 997631827 266733642 559450739 28774383 474960579 513298064 762171000 921303218 929127513 679392059 786158976 813871087 967839144 967325912 982202225 369309618 832245256 230269551 805488505 269549883 624313889 490183491 511670086 797868499 912338478 675842990 867601136 822197287 985107347 345937200 510967892 538580153 706833566 951848506 993127538 18390467 120886112 374956778 898910267 937364437 978641057 892096499 979461215 904645436 974451280 487353032 991776097 325681211 913340564 276556725 401522919 810784894 879746903 929340488 937188752 120372861 667676483 989520990 995115589 476932320 683360678 234460650 882435524 362836936 734478005 833501944 903155396 98048875 449229133 192570019 742930180 194814087 236649354 985982810 988334495 616733144 870951440 821598540 949529944 537435337 606174500 498880204 752950042 807611504 817287309 697364948 957051760 781382675 978811888 69188821 411486697 304798286 374973465 190277252 598005316 16541536 932036835 250621394 472082962 232375220 739773715 249846990 488851114 54649590 208251111 470584173 528792947 174415716 765363926 474107904 858226406 942258550 987861063 483409823 745404529 193269771 271463737 83323334 373563990 936893815 952008040 76362096 229605366 696684718 861861938 269173963 530026439 864020296 886233421 5046258 995921598 600462463 879014685 384556174 874182686 306333953 462533875 82249951 337195274 323754415 589347268 323742334 610809608 404243262 788516345 85307803 510681325 412581716 425295296 228422213 752623998 993834615 999288360 182466364 486464025 719093149 745918941 638003692 714921756 687774661 814302041 361812386 718139473 759123896 959787398 402168988 930154160 43674243 551098398 236771025 270268942 297904467 892015997 434969840 458550450 311615677 711826975 695392327 910329735 764472557 829609747 52239441 270628077 731961479 916698208 997153502 998899173 201450356 233863523 582883226 748972370 98177416 598032368 959737092 998125122 236303712 506393560 566099411 686078298 219180304 320862792 303111012 748548491 774784912 847333803 277707370 560137424 770954858 914333275 853625377 999429592 12270805 739480976 641935248 951629878 399006597 990794594 418004014 686408281 679479447 885702581 395742770 456061215 729496776 985752350 105572822 847185315 874731932 881538761 21059035 949698221 386596202 691361943 244736098 825808371 555196505 716803811 367003495 451275792 256693152 314462939 919015063 958388310 258027345 966914713 89051881 843233306 759935640 848170665 265751734 274719475 605698300 717413237 12490058 838201096 924638985 947473157 919550997 991588259 121621459 558981795 576656358 861997813 833920148 847799455 699942471 862105176 738830960 891606572 599081298 798627392 56646982 443153141 946586853 962087801 45314874 400584070 30767161 747282931 875520870 922559037 151657095 285913035 906221641 995673965 815987561 847251177 491807670 783898859 120978371 437232326 782010432 842294952 422465651 919667348 174831663 758339524 267234167 537387536 569661481 714902699 594890757 910777562 605368324 885140575 929636218 998988374 964955299 989126791 765727837 982766030 744636097 932790024 534807570 574719916 973250427 980996511 976914524 987700019 417822615 990546270 431631061 499330203 400751605 608701101 570362588 833438567 26904497 683179062 641537713 769490583 912035558 942110374 969239805 985203305 824629299 868152606 647462849 968379836 839370683 957653942 973916448 988998711 233892186 364707127 292692244 909848373 682606057 952327260 967628870 981968856 497939258 828271698 711374668 858935998 742341239 868057619 766096491 874004947 36730810 475353920 95278501 170786247 748169379 926556874 529821258 625683702 953521679 982164586 413525877 849797819 440553203 530637056 836907272 925869974 250590463 873583876 635057835 864754274 724381747 776172905 846119200 912184785 38921774 281968672 385322057 734030628 75439334 201378079 133435267 457530909 735269176 909072995 440476108 922187242 354389417 962521916 852673621 915174645 610702493 920016521 875246532 949369942 658367516 914312689 210838296 715551586 685706302 871321917 949213758 962261392 523872449 784769764 203055619 591430669 982016689 992339335 113616109 357558485 895047528 948087781 697792296 795023953 180783850 929588974 616719204 893573587 212172026 248496969 87325631 820225497 72470791 239661875 496073596 660054313 601170210 746098565 739851242 990217446 493143791 642860130 796247120 986973218 31928645 591301749 296825428 750117731 692128489 760826405 31136232 622987471 786334118 897631236 892612560 912082269 521493177 614010229 299621488 551405366 168117534 579026788 812157207 832053160 640601205 809846559 983567294 984630593 860171372 905095241 982230851 994849901 989331319 990751696 10463598 566822091 493918206 583827087 722140769 995665157 453696015 978424832 626745063 685658821 229114024 925780719 627531869 770247596 865897135 956778426 57373852 94005305 336955117 488431065 428977016 470403690 629608470 992555238 541718078 587751891 118498202 920946567 472133058 507212953 656999732 995841527 381371770 968715051 913812463 944234589 782038472 817864529 317680055 482607664 562241918 911359657 241067291 298733600 957348140 994389176 197609796 970489425 555725774 732904497 163474900 557205146 695660460 723564753 225917536 627280938 996330112 997583577 943307026 993025731 777655447 897259152 77055806 760079541 669341387 949431501 739408946 982878275 637483787 797430907 858632480 932426045 397278628 584102275 347434076 404388663 121084214 915366093 528654131 884988202 46697364 733265714 945433185 975671788 706698017 822704717 872992585 959137477 792884419 920942386 525708253 721116974 687636633 770302927 974048962 978862945 727890626 870280898 607394687 742036847 213119305 317692881 381823489 406249380 819821298 881617522 916389910 938538361 279802056 907051036 937643001 981948362 580572718 657873831 365863026 789993342 87126809 719293723 907678842 972163913 231584182 667813090 884296669 968570867 187959272 498123325 611613929 936273900 961258714 987451447 257020931 787607041 221236359 376700499 299623554 948882497 629227852 720015171 97034704 974276416 698631225 915380415 724811787 903911038 544258757 744473592 772719504 951570717 149911973 814488666 492370336 937786698 154016033 263038814 624866839 893164821 306436399 444865995 926225160 990718319 555829726 583303208 642949592 993418570 322521320 957902063 226418541 947072913 739496707 793493070 980213035 993689619 668073045 860324117 917545080 942150768 102995921 899683510 170679718 508831032 202279833 441605876 390672680 479022122 327469052 934052341 868932658 964229691 32652556 927079932 118906640 594741544 856701886 857344216 384325679 745806230 263663446 581700805 125793185 595359321 701205598 876248820 496132916 963479946 570466142 868310585 930687963 977716994 212525907 353697264 709901191 868513973 517300237 612272623 92867532 459018057 43044162 398761382 186159633 889023291 344816229 727158488 21228902 577916841 41113105 58320164 123717220 245221335 325229936 466461862 570203401 952867329 311659216 930987405 958088920 989670100 848188046 851705388 497245717 607167712 628115253 671281398 754886899 945419024 725990601 888412352 468045011 845069597 259728942 323455976 31900292 648280259 156329812 917036210 136149689 890839212 304537882 645337813 676421487 882622027 315158246 572418558 764869732 990491362 137848795 838082534 171159983 545166626 505531391 768419379 535278197 856655227 886020818 963284464 899369372 997217218 142916672 726108488 181868507 483930063 445691526 751634110 136866297 205749229 134730540 945328744 655870008 914525411 297550 146062848 10273275 375542088 852826053 857030990 803241267 878845939 924105420 981444137 716102210 976110900 397638229 594667641 63512416 800729919 410555900 871431775 763210062 971921186 347202705 378431258 552164671 908123217 349194498 980245346 223719011 742203037 19624955 374726967 224027075 814327043 461467228 911739933 320910279 828199239 172808715 566533066 744243312 813931659 418596920 683800104 997311549 997323636 109668470 380352996 276611262 320656440 915060869 955293668 783060368 909415494 79144929 147124529 773003054 794076320 256929252 287387583 739396186 929587523 736494169 946457295 203844917 570701382 547945710 834349352 107493449 147189501 847545643 981651778 285441567 869948415 870128230 886359638 24128260 457302112 359495126 590879345 878439626 952612219 280615665 803752066 960320214 982160318 646033786 830229107 199884007 870989998 323268453 551825923 892557858 992878475 486612825 627821558 427545772 885589587 40875042 780904271 358216686 554019107 14556472 910130732 473023324 937979793 836733979 917870524 855201071 862431367 982179475 989003124 760451986 801441781 29684171 975291514 266936707 848531309 908258499 996096661 986909388 994808787 270440190 518294192 175710734 416143967 803612913 872353479 951708994 951720343 661083840 758594733 277819849 967125067 374685196 892917600 263915461 295464422 207778564 517392720 447121420 933091989 214810014 652747606 386979751 484568598 36012133 804919619 862004457 910534065 696781067 892623451 483728086 820653312 722914148 878764664 454309776 699290488 20762529 59868406 618878177 656773106 796120681 989362327 182594520 719856783 700446922 757527462 231402247 453832587 726987752 836671806 928984385 957479181 876789392 938762358 757192609 952651941 145017249 722590150 60870574 736181858 888455218 935162182 28833295 191260757 497825100 880763541 835692215 849158331 642339583 893160743 206068339 458788884 243844364 483808175 268198103 884620845 487126727 828049933 845943811 872526685 181587967 868556906 241164435 800942559 658379896 828377574 489062736 626016899 394245441 967708416 943862764 950067509 534051529 591085572 155099445 699164723 269691910 478629385 551308728 799738333 529951768 957813163 651984428 915451759 514054952 650833725 529560845 821809880 786819306 905350846 707275226 941010695 38506847 138938481 393128275 640922141 78664406 966377863 452009636 872717753 815743329 836128309 379529088 610086108 564795687 966415377 116855397 316638839 230309233 728438515 777832009 960372793 945323671 950784728 967506528 975675646 777905862 826001646 503976682 951379573 229752857 731676696 514777312 717802902 52888997 427940616 116777409 806788197 125185205 492285245 434484066 945492473 664367849 891547465 361057195 516151677 230818372 864313929 501399899 554866036 191042122 673749485 928508700 971903686 706243830 754623354 804128240 825254896 141261888 996343277 931876918 959676101 42283448 352705826 298010727 692121808 497949861 687355737 976930770 993030259 383793084 858226005 192699205 768955568 677689285 763126012 872232061 947782842 940050232 955661908 867899071 949090831 934898307 999840770 18573402 989569987 646528278 811801505 110806873 400151179 507328301 665367309 769554313 813911633 423700306 568861571 538077646 816613106 461922806 586542927 520471650 564977195 493619168 936152884 350399225 772821680 554694671 863423096 133147133 992824889 732002442 864150017 217695157 441057808 635489914 738894173 326492424 825092817 163213287 505998878 91097152 822475704 470684912 494630787 745704935 858362275 448242755 497247535 709789047 973975337 325134169 474495064 140391689 638744898 704347951 711132329 166875545 765198986 871169876 948246426 615068256 615935433 527553410 791661731 735489338 909071804 497875338 580985553 437947725 453625369 960718755 965633862 913407247 945018887 933236710 968129365 550947390 976978527 376144193 453922268 401773178 752921820 538733053 782224990 842124924 924864843 200865024 683213576 409392752 497423670 430748345 583807975 480643356 529473156 817667927 963589428 333126511 573570171 609995264 939760390 782430536 897956150 171982514 601891746 341866276 979673440 272095031 823956680 470448312 826330928 455051851 726603098 127829234 371402785 696837023 797788882 226911306 606146239 280744046 683776975 971719140 975654565 263278892 422673080 724947395 923174776 884985152 962378668 168092354 921910231 927167736 975453479 840960651 887400019 570695326 893564107 992504879 996441521 27250770 898246751 959105978 989030769 436635220 614835205 23875926 985035893 626428930 753004029 198977195 853984069 309790519 384782892 442469650 561649766 268217123 750314322 56425050 339029825 898550056 963237308 871971831 966744741 298400398 491278505 130128203 227753512 873996436 927775601 412145321 666477469 383989323 596672893 792014334 846105535 481152596 999124235 612123547 858863305 206726330 235526533 207269391 943776708 311976783 362719299 857420515 916383906 209947181 861931469 619315464 658815080 328172625 388099076 459689974 599296537 183541558 723998699 727750554 844713000 629147344 970804327 506682369 637025618 922109492 992786488 371147840 906286570 928685916 992364297 289959447 555556313 289752858 736713298 553159180 968832233 996273745 999050339 63629778 904120933 582299599 904734463 904792802 968485130 961044203 983725201 390936600 937316532 752355717 883894655 436070629 862543700 983238088 988134335 778737559 859243288 454765356 625254448 693308238 949405736 949789066 960143089 962587176 981020813 288996124 844537384 358764411 617808467 219886774 359074827 167267943 574032376 531928004 924386404 155803911 564870007 147042154 731746271 78217559 950689165 189233023 612553583 366670563 487471080 216637306 514431745 656492657 787073519 17195701 276685888 383070157 571274190 339574232 662754550 698286741 892256367 22206690 322397213 765850433 936260667 644076904 848604361 267260425 979794932 769536315 942685797 169770792 687438476 226840748 255190899 753410449 980215067 333628688 647726211 122376293 562711835 367794531 387779540 389340209 609193772 274278434 528181242 602275360 839133736 842220909 953906627 33874573 529080270 778561886 965569653 443530857 819003777 800547254 993063266 825297111 920179125 286556079 966935418 203514734 678528780 561945924 722004203 239794053 627149916 412248052 413507182 900488755 985766458 117914577 790097102 875478017 933216412 480010875 814603188 939544274 995577431 824150739 824430545 261564199 655302821 957109797 981102391 39114151 599034589 322695028 739864347 874048730 922399934 767747569 768137617 196024040 587908565 347968572 934906581 225339268 935887460 749822041 937905044 783454044 795088698 439081665 888486574 926021293 954270241 912502881 951134307 992606933 993785895 107181865 212935904 469523937 614173229 367056627 774923867 621756523 943598845 151121389 915126584 951401837 977316133 40841541 792094907 299292225 703295945 462328011 904412044 298082451 810815996 833551943 935202577 119106167 774609588 91551073 495254458 154126528 668009169 723808142 736302519 970758970 999271029 438753475 737935397 722963879 751830535 939151966 972359059 595176104 732035654 19293694 164189850 504040902 794303648 730152851 950791818 843352265 973328584 534039201 721696232 279725645 303848371 96701573 799359172 831281196 911775873 738804279 769750725 493544054 887857294 123369910 971296629 546276436 860637013 574058473 599343433 367192677 806369117 364012535 525343092 299247653 375856521 557662594 683346006 324473986 573254823 62829439 604772576 138830060 988201642 948632399 963949476 992884832 998576929 317836854 780129581 494526224 897896498 362187767 382224284 269297192 894889971 969418593 972655153 329749380 558613397 367902472 659959565 839536178 840626699 669230352 864518764 280090381 503038529 290190429 826616902 103993706 448112540 365319930 667404641 813095270 920996021 180951889 259582901 230818334 666901054 217490172 910674712 792705174 999028148 965369307 977154291 362247801 564067913 350458709 834813897 256069651 858092985 652840334 773227596 870729774 997080387 495945628 649730332 325734690 994197940 848757198 854198000 840487242 952171717 114649799 862394683 996989045 999344811 710117684 796572158 338918677 741760858 622326067 889742459 388484290 556931514 445060374 658053458 450229043 598964726 157166366 588253291 214006854 778873719 441865191 733110363 639171127 940283346 507472789 665207594 222969595 992736436 130615364 926222632 654734588 831971789 816547797 847757562 8960143 421627774 919858132 975362988 92867830 837455570 723077066 898181817 393066033 441249375 646039597 996588022 382840061 818468868 578741041 758534389 418083952 977230245 557052990 942223461 38159136 667407940 197028011 200614169 343439045 358345240 130970427 571979403 977716463 986067128 638201415 940457192 657756652 956929994 376231461 797530188 22909847 307539034 228240112 273556340 458803142 496435197 153016621 383168224 57768260 342896477 716488421 791634333 997372101 997660800 218920830 433600578 638017790 967733032 846829299 896280360 492060450 567180506 590425774 923333473 571135210 945121467 438058643 655049853 473213556 938363083 177150279 334715421 704897381 814598313 348473222 567215321 593671219 866831427 963148850 983274095 696757259 710985509 4827010 309312247 107413965 619974274 863554663 955207912 108765591 303175687 914244660 980736902 928016397 963528353 329242597 571182078 409025760 436813296 935668841 999376555 410412377 962552127 811579687 842225675 554045674 878489280 371750150 989272876 749168525 998031117 343201915 822432463 138255794 838593882 445864318 891582576 556748202 766281966 566553620 872135954 717504908 994296105 593333990 610252985 376397061 611577570 561034793 793255344 15895365 254272884 98896846 161403153 340337966 498963620 5288996 470872084 267962406 311634581 655825029 882487570 224697834 371352066 18782499 905494957 740203883 981674422 289965346 955058128 67925029 808252056 865434393 929217458 341436108 760878343 853841156 951012817 593563832 667324096 394786648 950590718 780895798 919763697 419073804 812273106 778924457 970994923 459802995 948283090 311800841 826205273 937081221 967083894 688079088 789402184 995079341 999047050 557929949 925980144 379757818 408401247 47329241 297768010 948202202 978701947 546952613 708291194 285707479 375834941 412446220 696391588 611225857 691134194 31735912 110458690 981050604 991281092 644895584 875165083 800762460 963586099 266272055 834691669 383834509 591956352 951601009 996126349 213552969 450155149 534234260 576747021 367543710 906431985 625051198 890471098 128350196 618279956 885609913 993973985 143103419 866332050 777214539 820395592 986277553 999582182 240088682 731595898 653961074 947997365 569986208 887574757 313938002 866667443 193747044 341346001 85602205 88434585 374150640 769405848 138619102 268857131 149003553 824313637 902540441 929543061 619528925 912586452 794010334 809702374 444985684 782918361 492574256 912106849 16675042 330144311 546352733 620104532 76346372 357946750 566199541 631656646 771681066 928746244 149108459 647614534 728071611 772870172 326758789 356232096 874472663 949790058 642271000 883635892 773170010 847113410 938738691 963766829 244496653 429350691 543942158 708095200 764009561 902921252 338279206 688472348 302317412 341724387 579076005 649289887 975550915 985151836 82095035 648758789 872619236 900361806 687889389 782058838 196389221 988870479 929161725 972216369 994684110 999710143 604594307 838170435 413474583 459677168 345881773 376473002 763421609 937742972 493594275 731777775 756467360 758168115 228403332 884140442 142474996 833006870 920060335 927165477 293046911 885607022 822127890 966370091 835241143 850809511 416330834 781531349 310092902 352234578 874155776 921930163 876601940 976262858 264092399 786695067 367778670 600159210 269730590 832582994 298482947 392914462 699816196 928765280 163364758 660415250 384662486 397233565 120247608 626898021 52619181 456224373 328292245 731085934 74770128 799697892 710946785 989729638 134327290 693322753 664288996 806559672 811394493 860559084 376956776 828154561 398013767 717431360 859419644 954857493 183753136 895795455 342461244 957813340 547511270 906925841 552105492 900072179 868839629 940456555 921917495 992500342 420184235 776250819 732997676 933857137 508795614 821391680 501061460 607838973 793191111 822655044 429026778 489206527 781188624 805295695 412324842 453564803 490783307 854800499 630446108 909022893 403295243 786102016 825832417 869237586 107362117 262551326 9715418 465965256 978548460 997636540 903712157 917857528 805280694 875713082 312904396 934738722 135940458 377425222 839664100 858983728 875229936 981182583 869536359 944251323 383711436 452846030 622987372 915540243 499219727 779097478 16927702 990744706 143939905 975090888 331835072 792113393 473309567 568356764 907832872 917378347 99149256 822381054 628306178 920881496 246349155 432551428 309612568 536554686 318087305 921440009 790138138 951489930 183782780 730084244 45721611 899639155 581357709 722168729 136642655 179015854 367869052 810777070 873329904 988598750 19784488 668476779 19192355 903771685 621846704 948388861 19244250 345303491 758788181 904444579 555450068 585478132 358253430 983802032 285879918 425637340 608095599 713350826 383118490 678869476 463470093 550271200 812378025 916106932 437524465 714525857 533957854 848219250 647685363 676497962 577937107 796082333 383635064 443994262 139826891 309246089 576301449 915215620 875080311 876381999 364077549 474060683 60450520 989901370 242686405 492774902 710798019 831121560 601858902 932332627 272749644 412466790 208527756 909752848 710587982 741000400 371933056 615775521 857329864 913077317 769538208 844927242 841100287 920475075 421432011 699215455 902739447 961401505 157388775 724783399 757886398 943929860 710299172 923951159 183711591 691820185 342736605 362372178 897291112 981681951 522512980 738125080 32946710 798018089 311665272 550163275 187290158 445591133 912716122 919950251 387090751 511245612 749458587 997377189 690316489 893286049 562331076 564379968 460966191 765294368 470285997 553241857 89622563 307772893 520701142 793448458 987512564 995927915 294350477 745884931 760544303 818762319 777666015 957707954 922985173 996502195 821769344 886313252 517374979 538310827 122850165 370958104 172661972 583372957 716386841 963086464 18337180 240077220 190786458 244546864 111472806 129032875 997023707 998057167 577466974 829254229 727157979 811254628 178125098 293605437 296078676 563965849 695117883 825983368 914852180 961657996 400306997 469056523 174805799 495372542 379758737 859412534 346630976 510807560 900245316 990512489 524411269 758184667 649247651 742110188 426175010 491700457 54179805 309522724 181780630 792944513 307143196 742559906 588274386 945754880 349198051 992549819 84969806 697648195 758108997 760260809 76922717 350379358 640752249 741939166 311947168 918483530 880009389 947893915 18360594 627831336 386550823 936768817 485890404 555386475 976480890 987371419 742427965 901972013 292632106 318070502 476142761 487234390 265328946 884960238 916984652 959422776 693864886 837926992 55926377 542082877 400724536 951474677 584885791 847798174 977760533 991625007 348573140 544223190 921574923 950298596 58781177 344449559 814526170 903920682 658703963 808252095 632569930 681520448 578795163 608588494 141109514 984111850 183430813 872528758 123644612 132869459 915725005 929112979 757011479 844516507 546619532 814424010 545436163 767542983 778412372 910427158 216105791 826354931 667803234 953649251 267134562 667223823 284145970 924250920 187879045 561049762 859551371 861117716 707108172 810152547 343383302 941486392 767544365 872110592 269535905 295942521 754112522 821333899 74450561 290186178 25785249 123530175 995244611 999391248 947209236 956326811 76707482 683609843 460964466 481573815 910762995 999426538 495714996 598562539 752242686 841654425 73379188 267021935 922297505 977922347 321689867 815767909 887906537 917931078 386467879 447125097 994726118 997828362 847371911 959565158 965319169 987856489 928281042 953505770 52774702 603011835 741562732 778012620 968719746 989666145 876277621 927202303 274497806 960451213 194004000 235759179 391118194 878557925 180260762 623754780 831622613 853723946 340407437 372886192 976998295 984310768 497022937 835820105 9830857 882032334 586436470 941771604 656401958 690990670 28131830 617429557 876781392 969285833 880072975 929932024 111794826 850062416 583194220 942265819 247437357 973069999 115696023 407694585 595689171 757217659 115441318 928205584 229035952 586276290 872936834 983587085 226629497 467853049 945125564 972600348 549730755 948916944 545168397 854297068 669589852 873678867 635121603 931614782 860026723 892240932 47454485 490403683 407530467 515485460 219962994 997435080 8958503 919050803 656200782 848155325 597611666 801624911 309706529 473996372 578890727 595694801 681244748 737614715 969035185 977140257 658070045 995148006 50727624 198790647 341888318 495903036 924056899 936235778 352017681 561451209 917956901 930956942 279700809 540736512 966119080 976069850 910017981 945471323 100177605 403329205 407696395 853207808 371957153 940935183 151079699 517479741 153149214 941244016 819500138 963568552 568372084 580057870 555425513 860270726 443845370 696378739 335588447 889954309 23523062 589575577 547581055 824817286 229208898 474693800 339039712 637770954 928281879 991245105 375006777 511520981 415878669 825825991 137589973 958588275 126999325 823059025 13356147 437432651 808557501 881254548 774022828 900461250 433217976 678854655 4633469 54003009 651523301 949607378 796022258 952632165 998443819 999486997 944724775 981265712 623931861 887500051 122687808 587493805 962272912 983546966 13005943 378034847 179466036 240024985 299381843 933402388 507907007 573857092 632788452 899805362 527581701 744310867 627224587 940480146 909313760 998289941 436142232 982509736 924174818 962101848 903715396 995401584 224857418 423156808 945715482 966505210 427424868 655985849 436465265 498169989 298520577 632965718 809073700 967081540 184183695 262907891 952053090 966407908 930362917 963590495 484602972 962817573 716265660 748400672 53678791 354233606 609516926 842489858 588556616 770034352 745546970 976260563 94766948 480381175 238940485 784563258 958718190 964171571 221651337 796516705 817698585 881085348 665763 124557693 725012933 848979779 285345535 873692338 868958770 952100076 748649960 958489608 718579257 908580174 746280993 985620463 731644609 739066416 276283402 469206600 271226626 473183595 173353464 724983291 400584296 873976109 837705083 952681807 382214184 720405310 116221530 140957415 450709197 519836615 99913942 688718249 770717907 912865133 712582552 807513238 51567668 790985298 481378896 717024377 808704622 819316947 814662001 964733437 307782691 352088606 902684878 974693674 21139174 662869561 175473983 862380796 368552262 945589827 755725860 908640737 628978039 921018687 175898083 404622606 717153009 898981728 389498577 935353920 939745425 946873294 501684821 660101700 326109753 595045535 578414767 796278678 439032562 982184314 952232192 967559707 515538369 528651404 256365710 677834457 478599251 630747481 935480132 993038314 215050743 739802456 332099282 344989391 572301917 988941669 159964495 808621204 393943561 502685086 885592301 905969771 589156679 992425129 504309413 726176343 194245164 218307950 480771294 772130730 155321513 974633468 515424756 949302237 175669370 994307417 431105217 761946889 711501416 943004343 963157338 997026316 772625475 952892304 723786009 878037364 499651292 708615017 860123329 959786326 780591354 999798649 832256660 844544125 1549052 212869164 308260238 435038890 34792361 788406595 235967292 837019265 356450649 917776281 260976135 511718600 29255106 170851597 36571591 861951190 767981493 954513999 60169162 713350661 279395989 551314261 216714044 245060217 757005501 841610232 494767192 672988262 785722179 902012765 416601804 836882601 834978014 962690457 463973790 884730331 877444349 895545200 449282680 898477316 221146262 614649690 682966185 953890760 291087158 865620705 269998331 801810027 831843478 984558852 732379491 807519023 350701290 632016297 472208401 591924090 933556837 947402864 909488632 948937468 486702849 832227238 552859955 954922766 180154649 493377569 378945973 712515812 211789411 322006023 815938135 896071298 780274269 907417261 607555416 845376559 138961601 721995024 417938801 453006708 957977285 999855022 826987045 931772168 88659948 698478398 522642821 557199943 646399358 736684046 733027038 866664675 88755034 191279528 990557667 996744514 502168475 547534325 888268504 932890455 656214061 951977477 183052002 281055515 500466939 547830152 805875391 980431709 257668945 798065721 888883886 972056504 872294755 961275491 394349337 740734886 265709760 882518596 226704879 859391333 75966705 897112496 502415374 821703299 979034153 998062514 849251745 990298509 199403401 384961353 881091304 992521021 697690697 739865604 793697971 826660124 977612929 996428046 246164776 628081606 204606973 711636847 743633475 855887656 272832506 784818810 314056721 535198731 81553330 392904720 58762052 609510710 54336633 424074756 22223352 580424960 695424738 920952893 671302181 942723156 905792388 918000139 126849954 259571962 395002189 729800412 419305962 569857333 58296559 203721595 219918572 683908170 716086241 906533458 386262376 788593724 406552545 794564107 536584326 767148106 423139772 525572950 923941845 994593964 873333028 912764678 136243682 389434354 857860055 876411880 711850908 976611229 118815846 675573086 814533282 943374547 82413890 450108775 824851940 956840429 232372493 937176494 690796746 707484964 17610001 566743227 873360581 887628575 343668101 481971980 479978923 698191275 809290426 969593544 779569296 954994947 285301446 501319618 14043604 177481787 302395209 915757184 93315247 218917804 291082027 422672267 194045392 873026480 345292506 356222427 585322276 914562734 347603343 380865029 649918303 836460425 467705190 942057625 24941447 856156619 951393733 961584050 625798626 774100349 32338234 401360532 649694378 890635332 854298769 945646643 157325229 817032173 413451904 557927770 438312636 487671868 699438063 725216352 157934396 869612778 534089441 743403247 754531821 871842788 433464093 606124937 71466023 949131755 743048627 984789610 303801380 922115264 18226 876981302 788171351 798954614 673379725 680128063 665170146 981050349 421962359 975911140 207324662 865903838 800909755 881599528 544574657 774128099 895223645 997328063 330783586 917480461 482723007 934784958 713750471 922034973 734626005 824224286 218735132 400337279 997537826 998731827 822234852 844531230 889300911 974504509 771718296 818338793 623775378 993466965 452417220 606048869 330220855 756324737 157728113 695199124 449748450 831661999 687929369 842088245 547126053 932758690 468770459 676273116 667169870 883490299 710294845 822877616 652889385 846095481 157086444 550185134 666028755 914876612 454184485 527644727 32480215 970450790 150079892 675875387 945856682 946084987 288996104 631493940 172699186 555955619 254664399 771573459 383052632 404552977 460344247 526105133 67199155 192579386 503270059 604980325 255445641 815174611 954754541 982110584 260498129 708373888 38640308 277103387 753226299 769579242 947591359 974264785 897482526 924693438 337527930 707103818 954179445 960322210 484371418 776127668 62937469 338480106 896522895 989049074 744854954 760562636 837452898 893721662 472553244 539811761 190128932 907581199 931756054 941099613 368786168 459957726 861069613 964805114 632306331 790407152 593477506 725598131 70253718 974963536 141690742 490781986 463815716 743780999 968471532 973630353 264145398 952928274 337072068 698685544 305857369 797726212 132524601 758175631 325408254 699145662 685775566 987187857 38067023 754683351 954724479 984537592 814641231 825484679 623677518 839143921 681451955 773195123 481406110 705058627 719110578 841157135 551126665 761363093 840383406 980601917 617255813 852485356 255737699 956651663 279373955 790994274 497366814 806338272 231106186 898618036 228125928 793545000 705537692 774006306 712658003 713624135 292965398 816108607 989345819 995181943 558122537 689470639 582832084 861821748 928846994 932914985 295121478 706803511 29156019 107780131 800558630 940692304 8748074 575044720 605172847 951065121 543111296 715011849 273973391 791428921 797983633 884321822 786303031 960681595 624324244 678864159 463474651 517370967 254272660 484150554 807212214 808920116 939712360 951399216 717877269 927859863 951431268 996696138 697316545 977465109 255396252 531520949 38609858 573235495 22930415 504197867 617051394 903212343 937983544 975224773 433969428 914070103 766560203 835429754 407550718 885097763 854934452 953331583 561707602 689869978 998573564 999728212 72056501 231824992 730656838 946791340 570836186 971041265 3191440 421955426 524641307 644817905 110491267 382716195 839120903 845912678 256157335 364882527 783683276 992069381 262064883 865440414 799014420 848531442 102633948 713323182 349736808 844412652 321023499 620487803 340616049 712371595 63773849 299141476 313028621 701087590 763057260 916806324 144466905 683998048 109922649 661159797 888004991 932354749 575327656 634685986 267730126 761745270 818485708 846764182 920342766 939678415 653534044 940073938 964474740 994139892 682291255 953903588 131732410 731473269 157106999 921868570 381268290 688876896 365399990 869549153 59571967 928791363 885318648 955984728 725604734 751561368 502859070 724526219 611009816 755576711 419474988 761274231 711583613 982219404 583017649 650622682 688862189 879076286 858872665 884676269 779889763 880225599 827106207 906899637 942606650 988591802 849948349 963711016 820060859 966091139 512478910 823041356 822782321 912905465 413979478 930555808 882782643 920777759 167177049 691725036 794877570 917275515 941319096 963800798 738542441 839326854 88398812 395576595 795361990 978282913 119812589 614303489 660879287 833900844 705527315 792231106 99934109 339010550 198507169 478244707 949016200 979040996 592743855 948730142 31143221 521926840 179094918 667409156 786314789 788820604 555339359 695304523 195655316 325043335 265214732 413588277 996930668 999568151 177412771 539986625 547210157 855460648 876685540 950347906 766685695 782656537 7147357 601246098 363957823 665842884 777231958 872960912 882480243 959787392 720849154 879752853 568075566 609573236 818834541 980624636 45379181 286761014 979237516 992022347 135511726 176982128 637671200 712728479 914750529 982192109 38873997 167029381 873633089 918626970 159776411 399651309 452458896 831210666 829385754 988294191 846903753 977684416 539761767 840192265 143728147 508030924 980612286 986697886 219386200 601956576 409121207 734828181 302155648 948620911 702527694 880837727 205174400 502263213 398402836 702135050 613567705 976193478 981263125 989243875 516047761 542130536 56801303 608300788 780975443 801652139 682948823 810540012 266132400 924657308 637886092 780434852 768749767 774334976 118195867 672119526 716642526 722549062 335480412 390538552 395399875 892569301 175061748 974793851 90339585 242548395 198310993 337550402 487219134 986628022 293668160 364079610 63598952 80880952 156689608 527186107 806210499 825642506 511550336 703187270 844424892 952198072 836288434 909367145 406356112 612146666 83771871 237459746 149341692 260102886 608263499 939091234 538938162 736638829 849385248 945725379 744090201 882512085 839675173 858679814 507159600 983797280 290569483 464129818 966124077 973095697 726394818 907901139 342764656 544518432 672703053 708899874 468611091 654932489 830075327 984532065 972824050 977220219 861432144 885091244 451165822 794958544 608180057 693882634 998256458 999223880 713962099 832722529 901459426 968040468 78686073 164922244 134761957 172967576 128093907 363095880 25446773 142164165 103491022 475077267 495101820 923056333 472145395 501059980 250496226 776957181 251300489 369955049 662344104 685880004 925546858 933629419 264461001 787727711 861706961 888109641 511425206 766782120 166669958 625076392 813901802 830734112 953469391 988689025 811357155 996353268 802829824 970294783 462953500 921572186 796291222 842894669 437976462 565536591 744719053 818275352 259222734 920994879 569904076 651591784 224258259 984379424 70808452 73279487 725811431 796352065 69269474 624272289 769708092 901473250 908212505 935236376 203335806 281275012 545920649 731632961 475982434 851891320 155527073 938621685 462707018 480231448 424753512 910658447 579298347 849752978 120076933 918297392 498774753 731190466 731273506 914861036 17677951 126332254 78815067 772389921 447409882 755841577 128256572 567972126 447874319 912810082 215465779 823467265 80641690 276589979 551337194 562937671 149691363 547344390 829141201 865639570 813859345 977961552 193685630 410997524 943896212 953159491 670428475 893259181 935676630 942215228 176770179 992627199 561225687 697543971 601764431 678736101 411395663 474478830 215798494 623951614 498584328 712158498 744036147 904770760 466869554 737092918 583527685 895237255 944725635 973487822 508184075 849987856 356143823 959213101 945245397 998615946 740303028 792277590 883245498 945879264 418404277 682946798 238126977 375960872 156692524 796429186 585470635 723918576 3992986 338613431 86202945 89382132 174128692 589976178 271609365 811434421 866607611 956881064 172621820 516074236 915701182 987066468 231480732 970861985 559317212 805177431 964548995 999457076 274666118 348941064 52397670 366101289 458656352 693877973 387601687 951534882 499882483 577889608 213305206 364066641 985018322 987792420 61335974 91401053 288674418 987990263 143701474 610861146 236829118 761326471 166453997 522515780 687821794 802608753 201974797 750748103 509840292 794231527 286193639 876665370 385927451 501306373 959444465 971341528 333918869 527331942 577953787 791430597 890215079 932111465 125144399 852037912 382936834 521821701 194679143 646447452 146970555 721971999 269104793 612553203 233739785 513085213 839457647 942648993 136200638 633157045 694406548 905903609 132849475 641872702 18778835 375978123 735201159 766265032 56953932 440123291 630517807 724620502 549962687 710834763 454540172 743480778 21005135 615860619 992261730 994213197 617099358 911264651 141197274 236918760 533842738 948124880 872774020 898849308 465000310 708384970 658635222 786096255 838272650 980248939 65577371 81723793 976802614 977378996 393963673 460414884 630408148 928277192 865268424 915642294 830755013 874552436 639306149 774256361 791082346 944461941 370387082 595132717 48189083 599390545 679884077 720012370 409275034 631375386 163910917 634728399 703818086 899229527 157233913 854411355 599109861 761213691 80504322 508568839 284880412 641536814 815745929 963781017 354781163 608682026 535174089 552401828 481257102 627346372 980988028 985728215 253943886 900956200 7849579 933583974 592078682 942595571 853887097 977467931 439626596 713432120 566756552 631634544 638487174 930908143 76207820 728266543 415643217 559901551 394121787 711072439 539599886 690647872 445256515 639813867 370703622 737407311 287326386 525476352 869912315 922433168 438742194 853763095 252546381 319052116 186526601 320028888 466001706 861060677 396327757 561840661 156672922 261865051 389226972 542803917 596733327 766097664 464167758 498132597 863187764 977641439 438511030 588075449 626848210 791844607 243757796 289154266 949725647 963777044 776094521 789312962 387355710 807676714 471522046 773111155 646996963 757594712 960744188 967587149 292629882 919995459 145872035 355641928 959429476 978441043 370182678 978972066 728339262 744796158 670151738 826042969 856888978 860836316 367435955 489391454 936527833 970712006 252930838 461282547 244850823 612751215 806581136 957344935 440848194 941378468 642713898 818400467 17820476 895704694 681595507 819560433 166718791 599441079 275064550 514934907 170320761 965811169 860427693 902861313 607605515 830445196 677012438 760701858 298493868 358579042 817923889 915195938 119844176 531651468 975606 372954781 552486420 879741240 283609023 589107739 529548580 637142185 155364372 836036525 562703195 830720514 56711674 895601757 281191794 421091478 632721648 642336691 676396621 805916526 160413000 365075967 388599204 897234826 299679289 955128802 276734755 721699472 752443355 804509521 677089278 768236335 329250329 737029161 249689670 550166683 895573692 935814836 463794235 542644052 8221988 619837080 168666824 712468259 678550724 688676330 536092396 864509181 508408681 866787957 19467027 747055417 879564878 988179121 713208365 877938737 595813043 803552120 901061837 928824927 138254000 646020314 264487783 285726514 51179174 205833577 645058653 909193724 63301491 988665334 977839524 981614674 394652012 514110639 72566509 455080461 331643965 698250731 479645961 900022881 124697211 384680848 773113686 834926758 111662139 684862490 797161140 991049110 803878509 808817204 311335547 938198085 485154779 526913768 865439760 925631673 955983606 991388893 425547242 572685568 203642217 694217785 365886405 382392427 398821686 869300439 441988169 987750630 205590656 239461667 158683 864907469 865699477 893393055 10704347 800952255 250272263 996084187 99249148 872898378 547672154 871295114 562226899 718587348 493258709 836145094 854232841 881777912 427925837 671265644 807841064 904332648 154002139 913295376 790750814 865325198 461058601 811999217 691744455 732138600 913864648 915392862 504025742 788508768 441085789 491134042 251804924 665319701 896948510 985147649 313352686 514347242 262819608 419549004 810003426 898260039 346186261 355329298 156759982 419518079 728931826 979389014 239714045 919676942 283118919 678296369 277373276 369878647 545227209 735440197 491763172 750007118 567031426 948783613 855515764 924106307 939333932 971442244 998672546 999021012 416920673 549083208 256395104 263971258 105061975 533952034 746758475 841607430 979743059 981790781 265249912 802892721 944100575 997671539 975082706 981686410 822289822 877222243 848231220 936035793 111047927 406659097 889688170 984093836 870902886 987511858 767004587 911812750 609002632 953243937 973217028 975605755 259023470 547324125 452353828 863928762 558891769 900691488 681824719 894150351 524169390 989510057 615238663 681465257 501397897 793672128 550618253 951408733 537743588 578318139 442345082 693825237 167061128 793848792 640036290 839826169 327890202 657480840 881778035 959614941 296128287 775797592 149098427 164147007 848936400 924510079 4533616 208690919 587981563 855641963 44579405 359449409 893664005 964955268 387875331 679478403 763996645 938929107 217096817 955796888 358514917 367381563 743728260 896320325 624286123 976784033 914871848 985090228 496552105 713939994 443309481 988309391 42557633 290419903 898694280 971914116 109230149 481238100 730324371 904393652 326808312 732305097 402488021 751470716 258574748 316864621 969255046 982207192 147411230 428891295 381385613 425885693 191584163 769237335 364834934 385363263 455539031 509394187 803583457 811971842 968159776 986483249 765412986 844590867 971546331 987025947 186890669 825696070 769484590 824854411 758291318 776021616 731652429 848975566 600601545 742765540 512216744 904850922 171772762 532147984 954016306 982626513 521129902 888188759 12008644 892224781 772651377 813354858 660753819 769951940 675727871 841938699 928744900 992292928 353989904 774734145 304734902 456291647 411260644 649259592 713211760 828429236 26620671 795275559 54302309 476085561 529114357 680448943 744941292 765609536 779816565 930069967 916904822 990877933 367300486 839206350 410398755 468548249 66339329 753804927 333896596 771603763 460613627 653604148 168828941 786552209 615410310 736946190 643097153 919836953 378633701 387080874 869332788 943521741 22403016 665073194 54216452 278052185 611377381 712107833 172467535 893384617 764220403 910035924 603268938 670225293 852870641 950815348 404987895 910151062 165492895 653218908 83292789 262322774 778844526 804691230 412928909 515798448 352233981 442807042 573258979 862701815 193740166 675488280 777913746 800835423 780015031 796717403 853760420 939124044 743381326 839484596 751475261 810832975 598723018 996739739 334910517 930156902 508941987 610786782 548121879 774643428 51551106 71385368 135974122 393054409 647037856 689701348 451998755 476562434 850228450 897677649 57807413 890093491 200611681 310769195 617195207 920675143 756471164 798151141 240710039 853737349 880264411 970353131 474631839 639007826 5249097 234095118 183992893 725072901 533225833 556462623 22561658 586063290 187729730 606645430 681311162 851750899 606110144 997197518 49010865 408684793 305609603 381422927 464177774 466514195 133147169 867784864 174844354 600697820 760239747 909353466 968822300 987159774 422746871 779301937 415182756 796416586 95971854 972270598 567662860 580284876 660616277 990103928 297786446 451949408 496117235 739323608 926910417 996467509 288001663 992565301 294330000 525096707 300753843 406433563 443973496 889733603 303717001 706183235 434468895 746548420 389254931 875195673 447585820 872656582 733359713 973441902 117097793 971181521 141665213 199341561 814549268 833304035 341778645 906951882 116856141 888446981 35000633 158145039 888030110 899255839 938386718 968259144 991384839 996532384 299220965 802174108 44504189 936180012 14746594 627671255 354518828 681699902 979022327 990010265 41360744 736774968 335472028 540868569 114567298 303821541 546992732 662045860 924175847 985660566 430092848 752643311 661248927 707831123 955435446 989528022 3042395 341741880 439984867 679978978 937163370 944597765 6475336 944617585 200844656 798354414 141365253 722433961 388375341 716205031 947856757 980125809 934690434 999845515 113592361 547137536 731827580 852264779 711730462 814695564 970601973 984400905 633899579 744579723 522633693 969102352 829177759 835324282 694722614 892736341 787411130 926291176 445943319 942925464 642051617 878061345 282777037 420251398 577744396 699745696 583838779 710257115 797510463 943027076 14494862 257179526 862105130 898092773 70769253 651697924 932409969 943115218 577762321 748021386 320705447 750559543 199573416 739385465 787478660 861581403 591006144 617614366 587417324 972754293 256801903 792553253 353254848 489469103 96938692 320038804 738109044 956863731 802055277 973289991 245881318 760862122 425376691 865866581 613572561 671758349 61929164 230037134 757074725 814493445 524621768 949388473 24468974 420199514 972866775 980342856 228875972 841618505 948318674 963971155 386323960 965824262 293786149 839484556 215268747 303301089 16717449 222823287 26367124 489768623 486363778 510062545 107816272 417361378 57601993 218456374 701882582 954704965 650345214 892806137 247532419 308490363 9058888 537212063 868521166 963179524 55313641 575228097 292373133 303516377 566699181 971697236 822087637 874833335 989352666 989923058 165260027 217536477 420842171 626649799 707200608 743721328 757551841 770419170 458501164 785480452 571305499 944829719 777568300 964147090 673406789 972986478 383221950 585462517 271883106 756380709 552604636 853477982 977380090 995542633 186027401 647882306 154887447 200936423 179547339 394538281 839369809 964195860 795370788 861185934 761164842 891885371 678465123 881136639 296325638 517751397 43478811 544463590 257864722 960295018 943424405 987031513 10941787 417114712 186296867 477508593 822051764 923080277 375841436 836080338 935439641 983135764 41538615 404240272 446970305 918773186 69149345 115478720 577998106 677410106 989127673 998662456 593651025 967043741 2772962 6407157 643302013 941114118 948071069 948609847 815063616 945478315 794547445 931564031 877026322 917374354 755842601 783201502 119148536 995047384 829779491 943984464 172189227 783733887 988175648 988444577 310999511 729444284 796749936 842588396 776449662 852672824 994232474 999684014 894104297 937845399 411592467 459407973 323752536 439128555 180344534 528219500 583860524 626101575 339394277 734474261 209016116 910878407 88281189 620831547 312368434 383421498 605687494 718786251 763309065 801496870 729023222 972183552 918981865 927935712 905866749 951246465 835693811 839596528 950710794 979571546 327454698 669618699 844464920 940135340 608065707 897366127 331405802 870654947 976244839 982701936 385694219 898828949 487345605 595344807 900051969 902351179 469980291 728341868 38133845 434925521 731265160 743731757 912099318 957087332 957410534 958889703 509904212 792956223 118000579 451853784 750402410 940644124 91259370 99141052 730848986 755195391 860608051 880143512 21528286 310822178 562909326 666794515 743268079 922364027 382336753 766679283 684155567 940163374 241179877 939823933 479434862 509410297 858069284 984201640 9423830 668107176 926165016 979919231 38634249 528158685 228875255 411521395 667739347 882173350 88704675 755631463 864194700 877633541 763131911 827358595 529422091 724506100 296709442 511440499 458238051 477780219 650289459 899605651 662513277 832324743 513044058 843960792 777373947 830167236 68941522 642044875 592429925 766890632 124166005 887942686 774320729 959542961 444332569 724613125 277460755 382937004 967341776 975319749 92732535 522321834 658096194 929156600 254917190 795862448 124222886 598127959 637579308 741066161 260772320 528951949 313036884 815492907 262175145 746337485 18750794 285221405 752819509 960456687 926419659 951049520 386795244 714311212 129778683 435238679 436003091 877031536 338411509 363315983 810692904 916942791 519365589 856737156 583585105 840364673 22932396 106057519 131293238 334840498 734251741 765104805 156430094 381932007 646144474 858291285 560263468 807683528 564233385 624203827 236054528 890193399 669606722 747120833 223843080 869895085 597856095 914591340 194493145 401408093 207229182 861308087 266969518 745436879 103664943 946992609 733565265 823858711 564201712 761187725 344378240 443947106 903712096 957261280 131511218 869627603 875980397 918147540 188522818 838896732 553723320 603121178 132907569 567959034 691773157 987644961 282795872 490142734 216520639 871529859 350714233 439649232 749278296 962630474 812084297 981227629 940469260 992660095 557228372 728515939 768838975 994035014 858323540 962252207 359817156 675078453 381581953 970951942 370076689 491707002 793484475 852957841 268281851 299422748 75088438 293176474 944112864 985447315 978180690 989564508 228101810 300249813 921627893 954328141 483774048 902275323 791824345 903083563 196552563 440112230 848254920 899779127 465066413 862119792 109510304 797631980 220474594 796435086 222400269 414199385 222651860 463086213 289053487 762308216 22675510 504492536 966375361 976756443 268473012 699114811 616761720 621950751 442047187 753012778 362564786 487534286 359499697 425452260 267703706 413910529 478688469 696058435 618565304 820390657 384574180 462122779 444889465 593208308 884791104 933369238 490812265 607893060 243023197 600115396 14543824 866990233 181042177 876597532 195996846 270150507 253369036 703674516 50122616 791952321 518426823 896725252 309459956 571784000 610522455 667965287 313772172 738141637 970236469 983835618 279961351 371615261 103141977 541493655 446592351 518147174 221281340 972267370 439661372 565269356 225577618 344380200 118440555 953070114 418132183 490785911 767563449 808912065 673584375 860780137 437664849 634882422 610526572 696090356 378456025 473862410 125320458 552063393 882547027 957460297 771287125 840091237 784514284 886144440 137711358 176562508 94806703 291069078 424889699 796985215 613561886 831142693 318606141 610107336 569060062 839428288 423855898 886864495 561261768 914493237 553989312 596466607 280507671 535323351 781970884 914464113 27333004 204214153 804256057 940267424 295607120 564439622 267068666 734999063 234149344 736145549 484243561 614492067 656350194 806820345 101315919 938844669 452716587 938277595 175801668 282934427 234128984 938387657 522082968 596269471 324608288 864558138 753530080 893103492 883044780 922320098 81897941 157234404 869758978 988190521 752847783 833499248 873812519 884887293 882242107 959622952 38323756 258352921 790398090 973497703 636124427 939463443 579695260 691426850 264250797 753120172 883323737 942980477 601383982 820740092 921288477 970512107 87506952 89947419 886894675 905644721 256960668 816125089 76954495 422675780 802486588 997148774 1609830 662440231 48532782 452389969 20047148 413399880 434798231 883878230 572630148 645235353 52092333 87571839 273611284 913068341 644468735 861398948 623138636 951151543 112146621 944806269 592038158 753116876 393900732 936338108 324483505 493436194 439257566 788183099 905769704 957233489 382590757 781560490 861743150 947983248 544051441 673996521 550169871 844720843 409686505 517366348 845272560 877928122 323194753 515069711 351292766 848442561 424075379 610581930 207499889 996618521 64501407 244066776 460177352 860149768 302291025 763033944 636770272 663885086 601950412 903591016 334250550 706795098 286555070 936044428 736535595 747421502 57922903 685347053 214756428 353955403 831700078 951011650 126370243 785789028 264051161 473170222 114929451 277660073 923741515 968478752 351664303 478852768 767797935 994308810 364538668 478907221 210045054 504208105 347859384 961340585 815067377 893297576 541233405 989906672 919638805 993208864 780325308 813423931 606654718 938814205 457571696 536876941 349447905 428808314 415556034 431584792 898998648 997595872 186363102 447871780 398014345 861630845 867371832 942944111 336234129 846129399 689530242 691992507 901569384 961870732 690126111 702026817 90715289 377825386 171039578 923718724 467397504 573615962 718795050 787765076 530738848 925887409 381109821 864584095 381353637 652851250 150403298 479466371 816680211 855906766 396406798 424489082 819910150 837534366 202334579 229826720 55895872 570789736 463342387 802909218 51186548 79659565 295402983 550979769 277687590 703251033 732228017 863493034 830374206 859861728 947096000 980150486 928235637 989091358 554746457 853791304 779845176 840229874 629269896 977774419 350239035 393155908 432533682 947833981 473078612 613890475 572350609 696004933 190356905 480283129 563846195 665399145 616959403 959211110 230698231 399911721 334139577 506633538 751308495 942289074 793992677 838886852 195466135 360730756 903553782 929489536 843027495 929903464 755611717 799286858 541591135 779981591 176668802 334495758 749465445 969915033 46264536 280478478 834006353 990233813 526537204 578743527 91030707 268709663 517108237 983313744 818928337 910587242 706198338 861320772 952804076 973914410 797085330 878691689 756619406 945343143 13028638 919945502 688458945 768538335 806220014 984264604 649352210 993457583 991931901 994468000 577414766 753291251 398781939 846965053 697490132 852552879 320517611 632603928 634399485 711999744 152170891 365268727 569444711 680543153 991758962 992086212 983904257 995320673 517302796 703965532 552845800 873204803 522210379 831816746 670454796 819665536 557096807 671361904 79743739 809059695 253860069 397191513 194912106 431613197 137965651 675007931 954550884 967207408 747784387 761415632 656324662 762397166 867772952 990592897 688023407 962544109 46094050 332361380 791098428 934578326 305951316 489390339 528717361 756629003 518814544 889860481 240527010 545381952 845686106 932341556 703230653 799410000 982691476 986992101 393677252 860208252 679447831 901976716 597847858 652101042 443784382 867799486 259788947 919378225 734730920 987379002 310938918 983815422 930908301 952407095 96829469 775823508 112497071 121814686 853232259 992050233 919283289 989626579 853298332 989380246 24801141 531626881 781657825 871151418 738357125 860055217 38424675 249880836 952322390 989855493 282091275 760659671 635710885 821418883 839564182 909997810 644540361 704134847 165760471 864585423 332246558 452141585 742009914 764688620 734311560 868106316 868505515 886065667 319385498 419653219 583368051 685967932 647797584 994552907 405445880 623262363 707894424 768190075 791254553 904781196 3068553 261664255 3915392 785191005 571680423 917830568 451990208 744949722 488289519 814616205 913382375 976600426 179072737 569881104 584511945 676694301 104978059 323107227 295994695 991149583 257487643 378054770 890576461 964798806 42115797 635411017 291518444 508623037 436127604 580875722 839751030 928949610 603453872 895794419 652178946 722159629 988938435 991766825 434614814 764273856 777859843 853244789 880296923 969006860 150619683 460197733 268743969 425153542 451777416 976309123 558890341 940940981 318403376 666212236 687249388 908501044 228103866 666092510 821441431 934342208 850473531 880412799 885158520 908583012 201725508 406045018 206494800 936117333 663344130 856968651 980742823 994454829 37035817 536507702 10058407 805892804 29101054 58418056 762594701 930617178 321427854 612853691 628090013 780284584 472076484 604608684 372723222 537382440 418762473 490033792 814491103 924346457 565813635 905212231 675252487 915042903 590651592 791343313 176974199 935442041 608334636 697479797 856172171 944014191 894543878 949350876 820611568 841643694 552044169 813431711 73109538 407555510 390500201 572819021 262419488 960333403 376763476 624926417 657168838 708613209 761877071 985340313 88468585 703057755 936743162 948353323 342836888 839833834 670921136 712465034 560247012 965858284 648573122 786590161 694975725 845886467 983339314 997236500 189704496 212199325 603486855 897291037 77528002 965312440 831103737 946966485 354691520 368809225 224844095 545616738 36200497 995501993 119887583 815061144 257295655 365422952 93395241 828588235 326868295 342143070 421768299 757112609 13123365 976379672 965805524 983906404 49636091 990643606 902121377 992425219 914563111 950630152 900646219 996489138 963285304 970552302 145887773 454029423 293389325 861599953 574565870 818685146 258242014 404586915 656889337 939663818 287658410 825757461 703773706 955524123 701184253 711865570 759269062 946063787 877906161 957296905 232124408 554787623 608975107 841397964 287540254 414224603 221880361 837678702 870714865 939130941 432367060 945486274 250071888 821228552 154936922 874141072 14877216 830583487 423369106 742536627 719169977 938394276 941908761 944225500 166735915 422479688 216612909 929139602 765969711 836908512 284961987 964721424 374003634 945375314 636725422 708750209 971516861 993823594 226421051 575704908 859081696 909421842 535278118 778018858 723157562 771606863 306733852 819135748 99867224 618236790 965174925 980342900 895370679 963614120 618722869 828783819 367685196 771503965 288458975 756428524 479827359 976092296 308342956 662789188 780940886 844079444 680722430 827527056 977390908 997567819 492221433 846931887 89263565 525217496 960452112 994744951 616878697 915901765 126972985 758656353 77318057 239689560 320133164 812279536 949586989 965838339 457991457 876636325 145913342 542170250 520033302 880509819 527746058 828561758 108259139 561719072 933979978 963053658 514528965 833760982 905567802 914227029 237408771 609755034 744860283 774914675 119918653 684702919 134725325 495574764 400988579 490163642 511341759 745671413 217326829 491891876 109437002 234341854 273315778 704344581 190533935 936680543 779532601 826351578 29785928 680027377 388066176 483589274 231106718 243589071 446698887 858077381 115576152 664527391 97509707 787688159 607323990 686420244 415507226 868946032 403114397 964859024 249795439 495423747 985632379 995009217 505082668 514651511 770527996 875974161 259924194 925358960 86799352 642282460 748767079 884208189 249651679 737976805 448722 601769818 482794598 680403470 66013989 302836423 595667897 706098834 638747813 768841618 172125500 281628745 883256471 945090016 789932840 995752131 617349095 778936004 345678520 755142751 940520188 958340515 438795122 756099103 586273423 951630700 899357681 940199646 106209219 633161615 446118931 884101798 52160279 305986671 122792904 288266606 613897877 648631409 741310224 842851644 49209071 176892390 12850220 509304924 311829756 512087721 150323888 896115871 127050180 903754920 701585082 821779493 255546810 981861812 504022062 828394875 966825473 973547470 988149337 993356434 940022418 971431175 265634825 526792637 76945463 239076988 690026451 874935594 424533594 827789262 94909445 349515941 880294956 990098082 812424293 922869759 402048557 910472615 167825440 172430224 252751070 722521828 135695968 315165359 485613040 711807919 829547530 881267942 129054734 484715309 960309900 984115937 632947405 977825252 206653311 849092669 638581727 878462264 627356353 994451389 539927708 991119143 498136223 877273775 996980992 997316076 511919504 731102146 205425470 985532761 356017282 422026459 253595446 377464593 191143543 810392663 252145541 607279080 958808249 986023558 361499526 506121831 845060675 878318531 826710150 957130941 208091966 979817169 524484455 687789886 192781238 924440534 495716566 676341214 353024613 831224540 213024515 272860286 222896077 438911053 241202725 894046443 699705382 794001206 174677984 960726483 442291994 466137898 988065857 999850466 949822124 957573310 516166394 814356518 368039589 995540294 413932099 944830660 79378773 531635208 365848001 943469066 366186773 821389687 576343186 999066996 650285079 836874935 255692119 838990442 605454212 613614507 357128593 416937735 424786702 873743477 563873217 701047541 982643508 991780071 803700735 953164116 880558295 917751224 253156200 266731754 910482676 947728248 269344639 786787402 122607258 528269919 584729718 599193482 287949500 850428333 214734028 859137140 834859435 994772446 398936586 940277148 82931530 218643992 706972031 750643834 295609173 464133237 441318518 569058911 901171031 997078240 454609894 790340842 723415807 729517202 316201459 450490197 555418039 728729912 144122079 859422135 184520514 514922824 372256494 544754047 669848929 927788554 761608767 954863650 315483749 777009067 479989295 745349310 985578554 993788760 345935300 862929300 926335653 988864242 391839142 824514263 209464258 366374057 630954715 988567943 988971507 992349879 496580703 878861440 591913825 742562367 5325414 11811586 637900400 999204273 795249029 843223905 556918149 870378400 565909851 856571901 469685799 595041616 922647684 938038077 2028605 219050063 176094349 452147061 107731544 179629603 91684874 464478107 269306065 766839376 325902253 353765413 92447981 224299168 185236744 629627672 307541412 335884453 93386005 219868939 518590084 738856332 237903419 678142885 67035981 137454759 646486292 805318402 438991521 798243649 178406647 400837084 76825515 252106487 858814355 879498188 53609147 169406443 186183540 387486852 721669350 781546521 821322835 942494054 352514041 476989349 136779592 145336497 354107611 371367067 82404151 518287552 74906751 967360996 27337318 616697282 522797113 794999593 314934425 956220844 195572577 206303186 656974719 721950160 886506263 899228688 117398915 170575583 343945900 596324473 595262010 681305302 368911891 490277072 858422998 985950282 43761535 157354505 742471595 923063926 230392734 951091618 216537395 244727282 457595403 550157236 166706301 380859873 995991925 998926069 164609955 694707763 977662807 998234879 889767477 890983436 745438843 839068260 303206005 524730038 446554130 568704083 621201042 713961856 180867287 543892260 784787135 809683176 975309991 997952188 697202536 877147986 673278755 948884577 288379116 602368683 672358552 878928242 576914251 587867365 217229974 457954017 593470903 868275075 747856790 766748639 592921784 732392331 722717141 870120182 386543316 686672180 966699641 991568144 912681361 989971905 624706501 658039671 376421206 771133663 678575431 987643366 51430366 223191669 522383785 918227656 489513153 716243704 72366433 428606488 933985494 986924661 990318593 993719537 354772043 447340257 262398949 800962895 900043780 969314666 754259345 863687385 369855808 621065564 856072093 884094329 968523484 978047384 972152916 972828867 716111947 774720863 46586292 766173960 755517996 983363493 754234095 965902539 487711992 710238296 58008920 760557721 440358809 787979794 783508346 891650292 618186271 985410436 247588278 810462046 476377983 544656377 677504368 949516757 776545208 987839946 3627270 677628060 791456765 856078431 606558957 634091955 97799345 484592565 979932447 996356733 870256832 923760162 417787507 668594314 857681985 947981901 361617563 411884469 635756295 645353969 324860125 981972307 442262923 736619954 490175529 501408003 305077350 954727046 79427096 584158301 819740015 863182625 47258297 231615965 163824166 266023766 644375837 913690942 717119951 890869327 282110684 554226702 347923057 659104568 729802765 763447645 249271489 870429173 870685726 978705000 917897322 923172830 905760197 906627086 84485976 860660202 277863140 443052540 122946140 360767353 271730955 279228602 478695010 642687447 759214306 897074747 834604080 921758680 961500200 999730962 326525854 693109841 965683367 981320461 508654112 940574841 486785520 961318640 977502425 994538537 696923507 803082702 949592702 990972797 858359762 935091517 278763482 378940823 200567280 952973021 4556398 355823233 852715221 917495832 589529409 672487470 685809821 745127269 887253294 927389134 756314354 768118990 953362040 983781618 673174373 760096215 17588880 726170134 542387291 809451334 313493306 518467667 844642206 969453740 701903596 912847937 708752248 714388725 373396141 384670383 544133305 915229212 390103617 890336638 122741965 703148665 508313270 826144668 335410216 720148515 195655081 272011908 210741541 708326273 268357288 469120587 333443769 628811929 317731812 527202734 542457058 794230728 856477416 997457628 979447466 997247082 13801599 590489349 316976914 758044726 895209410 921845029 859024326 881933787 170177048 695824784 937335193 949337050 346091873 571575107 748549591 990903235 582693489 817441802 495502658 876370197 80140297 620489828 948965227 991851622 959174645 976660761 249568444 909873217 40713386 622448186 48264742 48731739 228370901 907663913 458021041 505171234 745022004 810360836 807976418 964531107 841494560 906036189 602930179 649373871 715892772 737343671 542647147 631545617 346194141 592657452 810824736 898770426 499332768 636128174 185484640 708656014 133731582 503838158 724171563 787943626 299763631 752529428 60840825 189894538 74544661 207091774 825053149 897990892 424171469 948951031 828485661 913527242 201262745 208256632 193094596 397264058 578333027 844701613 532970708 876751157 152994804 256129705 779685356 938950618 126329064 509230423 209937429 593865195 347811650 608399868 156953621 674399301 538916464 753855564 948734009 969517864 59083137 664053809 658342363 997029201 661051851 699119766 874206059 916811690 431913257 631422608 474333777 829838505 551531915 795394853 423066545 580455969 606025758 714345631 88614226 781238490 58493167 692137583 125476895 249029680 661603102 942503909 904709978 929462367 304153908 948687477 220706257 350678848 314102110 947066485 592829363 828303124 959114467 996214598 920163507 963192558 366861073 658930203 248710174 470094554 641353810 897015806 482984579 977648013 643174473 689425551 83943000 876837106 439537782 983942511 750136166 864661638 462836798 607611588 948797529 989677218 77456982 357930490 34187586 372553668 474762528 861922035 743896776 766757064 271269314 342451029 294082910 704385265 277394477 743924520 254448042 784269556 537652587 562356100 286364470 696583620 216225521 840934217 998466503 999586988 152715857 358442143 984016740 994512901 352808642 605001554 56523952 684173414 917498322 983497638 850668413 942590069 253295476 842386587 651691237 790489058 474874598 878484677 764720439 867196121 614695958 859807928 876724180 924525756 719255867 835539673 482294963 924918749 840935647 918302450 448226469 810222674 609407414 748150185 653456951 712151084 808873258 832884690 20643469 157006485 7504599 790405752 820206432 889940794 803461326 838878482 558470514 617822474 205452394 303225969 176944269 630854060 442431072 633052906 781621205 895358265 982859660 989566079 207218268 752441547 240627016 828136295 484035113 698987582 117761386 353338045 740906587 914324054 911989832 991833780 533253670 771169577 377693373 621520831 927869948 971382969 781558925 863043005 932093752 947004696 305259333 627792206 969884974 982707698 131183586 526655902 509715051 514451087 865306889 962528991 763352041 976525770 619818228 983731320 59136362 133009197 295756298 928863211 240127723 645225074 337396084 346571018 41127733 215959997 937106085 966929965 852295477 991220914 196275876 961955946 17495555 158072079 846853473 910987008 151989888 938966949 416050549 990519727 272710821 866241964 636516075 687113392 243144022 662397027 135275517 317533159 52896918 343732638 694356016 716853814 854820327 901559987 247471378 892163746 238980246 278414687 335163952 744588130 837613919 947628629 264433653 913643641 606562298 854031254 721178109 737105819 118264325 845465560 680289418 962046274 391058152 557869718 26764235 237235945 282178250 940672627 813400125 838856984 430427339 543525622 579897685 637385504 81548467 764457375 607992892 979223482 41468613 610084196 588363722 842359449 259717396 507097455 520800303 666138208 631832054 942157249 408213947 738523070 684377393 685384708 275158171 655187505 518621560 815464993 306557167 740354965 107060746 577369520 77811030 733494305 600731568 969894337 462590325 930765998 371877763 992942996 167886466 901008607 139346084 269447350 145829285 744230018 270028117 712438442 320426915 919286768 160464817 281267494 870776299 984911794 542083516 646486534 214980744 934103622 68657578 99051525 85182397 200784960 401014917 571658681 477936651 518493525 880731742 962532475 24495790 747823827 341335523 568357675 644181433 967259123 29357124 201414400 595220865 725715272 863236349 968772650 787167394 961511319 898690305 923703651 394322563 858925743 87872332 533659774 411741986 968459787 975512548 989804571 411773177 595055828 600642156 977712375 213405731 214831609 444971869 570623196 92163657 921309203 105547177 414309458 700011069 797429976 673973312 904954331 522513792 637511138 665088926 822586380 830542942 976877871 803720934 903268336 50910588 232552270 252390418 980892153 421578112 860497474 841103614 864075175 697401142 748467997 964048953 990868881 673165941 803598611 531655135 934338797 176176040 823435366 475482657 663938590 574193281 988468867 832302339 978359326 625640320 673725150 589690141 784415930 255021856 329388128 475598542 583146432 946371633 997741318 671039288 764119922 444886014 506129578 322587063 461331903 127144892 806732984 454901227 866172295 497500794 592966632 825052607 983871579 746448904 852878427 546385144 717821450 841281499 906525024 832505081 854110864 224511580 843086940 825448292 864348335 751922403 753094961 36652885 219466260 236890328 538805775 291441142 417877922 674843675 739806733 549205695 952014077 377086269 574494702 739704827 780874115 317600566 687070250 143489604 298951137 418498060 732942565 530852471 538824549 837223494 981880935 938376198 994427448 740606883 907593376 989840736 991546319 247283020 633805037 607616762 993673041 363912418 898606550 599574744 971210922 749539771 851371192 988881897 995385092 735387278 978561825 915164198 928057059 31824810 416701147 310368008 369580406 652350631 843719133 289819644 413260160 691679073 743973561 368950619 718460475 365269929 608847480 811991455 957997508 70478947 952089997 83714577 319280267 865617391 894625809 198492750 536718006 362913019 596068551 421247260 700090279 980926588 995349198 319939942 837630403 622738929 782910975 957862448 978972147 890876660 976561375 716034621 821224540 664032918 874818116 556490722 858076587 886462161 995735846 315443359 649532942 102201962 372314093 31659452 707237525 998065084 998719128 96798514 323146064 829597181 921846145 926668510 934587683 933442756 950234739 834888471 876186014 320191359 343893379 790623651 933754449 890507217 895913884 82940464 101449935 865567015 913150748 774956641 885403723 355837155 897045314 764202367 775789517 872312823 994456203 260526057 285101268 295629875 815908537 661444350 875390509 316590209 849728460 816209097 851136606 36575930 712222096 583497531 761959222 192366113 369562854 412966465 426065129 652163299 743898018 802059389 898789107 548677173 740388362 456790355 688112498 418588626 612807689 283153107 605336282 790303530 911428076 293911916 918324969 569841440 902665866 339319677 499253177 902490804 918820698 496636663 898504367 560973514 679318674 494680932 764916893 332949094 664747924 634861178 908251202 802063488 953391339 754309895 847742936 476442993 674322497 396111368 976049550 583307913 901349037 61498630 618710260 636760093 979762553 683005935 746414723 981536983 988844363 852200005 933840891 957590901 996448789 573928351 900748832 939060182 967412234 98189554 116213335 294714427 973223093 834072704 864847959 490222534 836807941 269174794 526580417 585995761 877610720 398689492 548455690 8580061 148582852 150472398 827060314 786939614 893624923 58787273 676717443 179810848 496628319 277383949 456822210 910273108 930661972 402028989 796025422 837597113 991442247 998753890 998893370 932085568 969249844 845928612 998289587 685555356 730714911 477988668 663215031 214790784 938747060 391120553 995386696 174984723 666463861 183897044 626954904 295322882 920186450 411752264 985934064 314043285 661415992 530780012 769185873 461035881 775826447 897936305 930151964 241610143 615194203 745400994 969212360 255567900 711953537 761731596 902062533 624526858 972197868 416228079 814084306 776866522 895101566 303483444 491540119 480427546 811197426 950029686 972371841 730313677 865967868 314714441 778593450 647055980 809765723 410302851 853657510 692227166 724627077 343945947 366080775 20348139 434284230 503871606 954779461 549049278 991542268 973070890 993321799 180500397 390953270 772608017 883475798 368156318 420465911 348067060 646060716 632401519 675015033 713986398 889495305 402061138 623445324 875569817 911602925 533194755 896541401 457358159 817319101 838131127 841629128 532023843 842748655 727073042 892763302 531766314 983618199 692007939 905218467 578981784 922824314 248081517 590871565 691087222 960533849 471774796 898486737 3782144 322509864 775227239 925048446 449743691 952087226 639011656 831373113 338316987 969450608 120984099 681066882 65109859 391542528 203805198 360988494 418668591 691872316 562617536 607234273 537844395 796694772 831015640 928457104 457273646 667977596 179162291 464290335 127803114 304331183 799203855 945342700 998584398 998821623 23665821 81351336 611398689 642475544 5205709 811039505 619566509 978161617 941052215 992956554 398634184 806927931 413172059 445143851 400407114 783322313 748653931 780955247 596771322 903683633 346873985 461090350 726977167 760564842 305002798 307906177 624606483 887475150 911469306 927624758 683094189 732713854 162433087 293320179 38898251 431214611 131292970 161292041 605062474 685420052 865222956 948682223 337287875 620461616 863442293 900439574 904006248 939197103 543550560 580988770 30696644 881155385 378918471 524516952 663427798 798575841 441377771 493340632 246140686 871170846 524776583 936484238 270105817 923921254 32997841 297706283 995754486 997894232 245704129 446567936 63165774 937075068 703206173 943812303 318888012 572927823 959524688 984231350 361926506 731590193 586955290 659493839 391366971 567360193 188089842 727448621 115128979 599487806 928606241 952905885 977203347 980181951 643785296 868323750 823938365 855405694 217233810 389464594 607326653 732233686 80296927 320908965 17386879 950090220 627975252 714889317 959708272 998943898 651963171 909588698 144319899 663259191 433113259 453892889 391959923 790866840 489238630 665700674 864958914 879299808 932537733 992092837 407181423 990081550 724753325 863180747 176579057 416445347 908815169 955564663 432257352 693341862 467239756 650650881 292093320 927848787 142530957 478800863 593440386 787165592 130767983 193427637 351139910 634485076 161434862 754082399 585555120 886727711 601444329 726811807 470290156 778969260 322591297 706782394 703931799 888725895 497744515 934105652 462589280 704275177 969103422 976604640 650316508 746779998 163737487 792251039 814685212 877464278 46640375 987937535 715371856 763596941 798789151 955517887 65268241 673454626 419603263 490838337 379661704 745038641 593783743 921527256 178735876 399691610 525722906 617687516 109042314 409383631 285159648 789419748 660895927 851655657 124155569 912212122 379736067 667814900 523000239 574424208 719040826 859207487 391407965 410455800 815987890 986881918 604477969 861111137 781825167 818054761 113165758 518843154 592022048 661020702 903111039 911501206 371353429 455434900 340764821 898867407 389033786 453729647 658345124 692800495 370187580 444756036 152504433 922134858 706393766 960546758 68359211 261284275 706769489 872171084 621643872 638424734 685446096 727897833 424309393 678767168 712924459 954914456 333791880 510293956 701956140 944446414 638267926 925140937 609470013 836287231 655120708 854208552 470712760 481989688 919487788 936076612 578052443 907627324 191392599 213708775 248175799 529733672 430200558 639200078 12484092 729771896 913342363 939984116 467786158 794208189 135263332 369820919 344678409 550598722 178310440 865954918 541317281 970353188 12117868 317332002 858264952 950584489 234339947 665057612 9768918 683539246 249185083 359402276 320607519 466484677 805869675 842177285 572520188 794100264 817675218 850552450 742785436 928427299 780172689 863305383 102842696 510368031 495689941 913219142 11968068 151219872 900173904 903691822 144684935 177754121 942065921 985324132 151337918 224219237 296259753 435974489 571937680 710859786 568240203 745626401 548378624 851800956 46831898 301015171 137277597 968843742 280720292 655370803 56724042 547187484 571491378 871747903 706409749 757711864 961196466 972555521 960588894 991122778 80170241 603347963 684708164 776235593 217862402 392782235 607860487 936839058 419385686 752950388 680053309 977311824 361139513 769617766 306372650 877501298 571794068 621072610 710137677 782798344 461937127 752662462 734388333 792767557 166595854 884302216 864408500 931424889 251699630 364002300 80078897 643605637 671857270 877445448 214133299 229213098 85191539 698070137 166153988 861850408 695398828 864127382 202201059 796300741 164137900 340366381 654043461 795331136 114201492 765856316 831869641 852115057 580466104 773251863 814845157 902293382 428959259 974106696 945863187 974438731 318096883 979438276 618839441 998840869 358467917 466378056 482233751 777914611 236771351 479966802 867503220 922702604 713975839 798102658 445603646 659260645 453816972 561155611 331375145 584880817 231292487 881278822 591137487 928210451 169043348 556789048 171814992 490148730 729261896 897854240 787558339 966787170 460098544 496582688 234340240 658876243 607269556 927586446 748150847 852662071 512572764 669429430 465279506 933380567 991403453 996781264 555338376 937652213 313730614 638014474 671187101 675883135 512841309 856389377 981359938 982390035 948767037 964276774 391019602 817623363 188864437 387721873 615657506 994100189 484930471 856440470 617996478 859395064 118190035 616156616 404148746 640477867 796153827 869910967 821655684 868382933 778457766 840660684 641776686 776209240 448651776 486725846 140379761 656582900 583502932 800264672 438029279 661337453 552650059 563798646 230191369 564262411 100636762 528225066 112942377 175310898 158573702 400577569 965625416 972895843 422633101 877067912 658055750 793506924 221943525 945526907 534458613 824042925 928327669 959227644 991876729 999217626 913180610 948482985 568151045 581408904 611882909 841058462 741673090 815801471 745221073 842982065 234226151 962840324 557686826 998212207 678399463 856215063 848440872 867156841 795801336 847505332 836972170 838902909 453386315 847947050 382817151 805425447 986994405 992284580 935053864 967363896 206712604 676889561 631025368 702229177 156364725 890694459 521873875 982385668 492122843 911847571 461345577 928971322 401110218 597688550 636911798 737926899 159610570 869897065 410498765 989865135 784796098 973437027 918507663 996407971 412441587 644414985 218387625 486353164 139596664 792765488 743552159 907622864 110713969 717949981 308298333 504833486 989702976 991748312 482274748 947129350 680355498 914435016 60861813 812574630 961111073 990261626 453199634 609411258 824721390 916467717 699170844 889393595 100538182 433515869 83417152 348518139 970197075 989298697 517727190 643058343 166369054 213153766 174351112 251054800 85371304 868834296 82899092 379389177 603383485 962278464 146227202 658992384 531269336 658427364 692807805 755760072 253071680 887129115 425588252 523364977 205645918 378153564 874967148 931296098 670339220 979183876 963895221 972255008 417805426 922424422 29625665 665727588 321743290 973176444 73903097 240731665 420600675 996923279 135168811 177860329 455298619 590008321 179899826 828632124 284042180 405588827 917874214 930250438 136539292 489243111 392143854 846065083 992271877 992330582 531998775 974029024 687004278 899739408 29236771 728529543 121202943 565410154 937862510 992919323 707977233 940569151 806079485 875409575 221565109 467638267 296428278 495392949 393452640 479673631 147793424 810099621 915652966 917999532 276671340 533435332 110970686 709090280 853620307 882167275 53526065 468432830 462249167 622141352 51348704 826599895 10402592 630756504 76320932 76618528 158287617 884925168 753181798 869590615 202465311 230206678 723941945 879653825 666256336 733964643 185713082 899040794 611942076 725071398 252223444 693148439 949782038 987565093 232676079 963912729 82552622 495689914 553912357 612627531 446588692 766008246 297687913 770294403 198301057 433677940 352005118 639730797 794339319 839261293 26985959 229322393 571464879 944618695 919306500 990340932 38817144 751110789 445243469 555161229 525496619 619454106 748108045 962230345 885405759 942878594 799524541 940614945 67180449 795612579 518266427 853481310 534200411 670255871 28678551 136029840 561765941 668717074 883895093 904819240 3649862 881341821 968792320 983918933 983310895 985017460 961893193 981863992 549031400 610958492 416503370 846853635 665856718 778914619 136591267 398067773 176126121 490545890 346232005 834514881 335179493 595492301 844501941 979254521 544850147 834384670 119794088 384950449 851244686 985872550 544861776 743280293 336867743 924025669 514716502 865332252 894482583 983410788 988335797 993196225 20455284 989106395 582658780 779479320 206975880 414819281 70330110 543997584 840601070 893017616 505107785 757379021 854419125 978918028 391569339 802893433 930287948 952584535 438074865 831725134 255080386 965938298 958442293 998090466 796802794 866077344 723856397 802552034 186454607 451841181 915411117 999998801 912809055 948753349 994729089 999654884 296353259 975739247 564408286 836444164 380811943 780940973 310691927 985553879 587001587 777847826 280773652 800141519 232506467 771459412 30154622 976216338 303782433 445895801 719886607 990355184 984046048 999637346 767179622 999628498 595671189 989688501 302727115 671259040 682109100 982013485 220758985 555696974 338214450 534684039 971985072 995068211 526850167 838074514 439813185 965144229 811654868 854887361 681608961 936810632 699730477 858075360 912110633 973133799 455365568 547019523 15732623 380883455 967680235 999451291 742201757 926117119 635074094 864620417 300973270 369603025 580257260 816866691 226537402 968578231 960662139 971902255 969195887 975198587 631402210 902309624 298098663 836253240 161936567 445189719 169440626 538841105 103760637 535774416 13355110 537070497 50874194 799430744 923010300 948702263 147486332 423207995 190531202 818451190 337317958 343429754 299346267 860278348 872134427 926852821 702213483 950649094 203253064 375966610 400640790 979459298 844502296 948887744 207570368 966051927 275287381 802421661 881549981 986771021 880382477 949413518 970483643 979881911 409212940 706274526 913044823 972527887 585013611 898346672 954360249 956178869 41163202 262126945 576144619 688883491 445869076 974979371 410022976 501200070 826625958 840763864 141993532 611885000 155106505 932558795 5610448 706428061 314549104 469361474 343623634 435909521 614461520 784941291 429602504 816155841 311054156 541084960 397469682 677622872 670702985 961123923 341228033 551614395 838698627 844315637 779977508 981572234 185583520 348397929 463128710 821203700 528400321 926791318 787017712 952239724 131155034 675894943 632248365 990796237 340107555 902888641 625320217 915709257 686908956 948152342 667906262 819726776 959184242 965670902 482136629 643278261 670668204 810057101 57052212 333783714 969639014 978191728 964515400 975950330 62355970 882199156 821674838 954249182 342929174 608974682 376333243 948800396 972606644 993286499 533625941 601678660 252743123 357784253 963716608 974835446 158705542 836138633 715464817 838305747 451908889 726974667 334394951 605473855 207440727 662218578 981520435 994637640 280351862 868596707 301368353 738232276 278580374 778300994 339286275 344500318 741825719 786892582 105923351 317659699 756760892 996213259 14921340 876211669 556273919 764776083 473626387 697732524 630538961 825592169 663592123 694453788 483754658 685655061 95686259 296403582 17747710 290569555 508633316 795103884 937396882 966158151 717109936 787279610 915882032 947075387 854392656 859329870 846051184 886405906 596887573 806501528 562990565 607075103 226351231 338334645 337041448 397517436 248658050 296368978 74824692 476964384 650947920 845006922 954311787 962210503 832504552 944298780 775908703 979984900 883851137 961930773 590412678 873698237 583128370 854096933 729393764 946976949 910179208 976628972 678926337 719061748 193267770 205245929 780782251 831333643 797080794 799359562 223775560 836401365 486319277 988405998 649072622 915385230 338019761 627073457 54859328 828881854 327085057 937835468 38578680 503839194 397593386 467880598 877774872 981183746 467215188 987085776 205928118 630818426 74269816 968109167 115289929 236896905 797216281 959278992 262686074 985979418 45669709 572662213 267632222 434021000 593953465 644877644 816648402 843582728 614574165 765846572 190203779 422536427 123716061 166593670 942629201 996251793 333879118 533053669 270159969 496215301 504128535 785594392 978813689 986158413 50951075 193196293 522754823 940955792 939160427 965269062 882889136 991389237 285587548 323653214 419748345 563714532 291437254 478269489 547902028 616035544 826732553 879681521 914008386 941837832 432974203 443891647 613778786 999704312 36084090 356050182 679399719 982285496 976769941 999256792 691253136 935601115 104334624 723302783 167367322 199668733 42941451 389091315 748446811 867691493 321297192 586113382 74576401 364964708 33900532 370516292 184869598 291136370 506527157 525886384 668701237 758489662 972122149 973691801 64676371 553766710 224562830 455259619 551794320 721088917 227123528 294629804 57212919 726537451 728560164 740878336 414071202 706752260 244252186 549367046 794693853 825447393 135348464 513704733 424942958 574834997 537418564 550405761 829445526 987156163 919629396 923655872 490251749 511850138 504870206 549755744 537804622 655598835 717325976 994970320 161819623 233889740 216746465 414384059 378488321 683595338 456995611 684351591 873403601 918592845 720170592 835379282 211809346 481173665 505030440 934395791 704905528 756161417 848208495 942258935 580788183 647389582 571959046 797301722 414447281 704154009 628590490 854966379 424609311 465799996 172205906 228415060 564124781 618121618 721740887 907754746 900109411 922596926 727940153 963681216 979157489 995109196 877912483 975655509 421883390 685842635 612781412 981571526 577155846 588784393 70840548 833327852 414715955 946589334 948635492 994790131 964614655 975371902 351101489 355057350 667203504 795852242 763818978 854278978 740733625 795369336 223966105 780776314 747651202 883585455 121893451 574113357 305894795 632341923 493091873 841859724 256909202 629956357 609498549 997646039 574079561 954566141 544670412 555633499 221197710 951841788 240964464 276529762 683084074 875529492 774410832 975195317 623534848 791984006 603829921 654187736 40794519 326143264 116800698 195759806 917504005 922512124 381950178 940161159 198397513 815902986 36481670 453550933 28557985 345628841 363335732 613964298 560064288 906956788 81477389 687695239 401860386 828803898 217965202 506040137 320847448 686982615 746555217 968771224 164263615 862675313 49460417 726951509 181221628 797769802 291107783 825618642 223530858 755601209 526009562 691594890 867114050 874467773 910242392 976866919 727889767 974491219 930396257 955219242 282142834 665973241 744848183 904258438 311991080 721983616 80902162 802948530 978026774 990163953 505658102 932758236 171135855 687088345 346223304 565684251 631094129 866966039 719232833 959469798 730847624 863273799 40061804 620762414 502747105 967696467 655118393 676897936 367336305 400235139 457442480 838617800 664430742 738758214 983506427 987983712 444275282 644536249 89317306 244107244 650658543 890383827 358557169 895035280 220211291 826356839 371973350 479370790 470579156 711130785 906187925 971804826 301067949 926831230 13916732 705578370 91256505 656707018 678142441 738065020 89588441 423387572 953678698 961209864 772499037 866820741 794013791 851435475 339611629 754806685 575076413 884876843 286594345 562631235 751491348 813030610 645606304 673613475 791433529 793933477 243562590 817107304 304526631 932018325 143318450 633850106 928230762 972756135 951317188 980370895 105735460 505928122 383738601 545798302 807586329 957320152 773911672 909733971 427209356 522681502 450513110 746633464 272619263 989460804 502068591 743286819 333517034 862258307 218903835 890800066 623051309 812245760 919358691 981163948 287113053 775407399 936669169 950148868 751994995 942632199 328122524 856604306 490985486 773567594 506259089 803900185 417403300 591985709 273234213 796218585 191397852 443648615 380561711 459137944 915704478 924572146 814098130 998966064 753391864 915297401 597249493 919115995 186416899 369778281 105537931 882029719 983660678 992158010 748327366 968193629 532540200 635926612 869278138 931204855 302057476 696398822 856583762 909956082 743738653 972072523 67461169 794129249 794185376 915346812 301723646 691461220 605705114 713070254 197214800 412038721 440307024 718523589 954645602 971081478 146056110 285965778 59335757 992196546 7265546 657902962 89090973 767748579 51280077 59242445 893569137 956982774 771632463 848927605 456358525 740019423 375693657 604340788 415775109 588108811 124633095 743178446 625995448 765289095 722782752 898887221 847508666 901970710 966359975 997964178 942690959 984899801 331078615 805133581 233170784 546062956 603013346 939275033 232755404 261085227 37363933 262328428 725854563 816544436 589058942 701135689 358529351 483540436 77243406 90391631 195692052 798471191 19547055 167538654 191151475 274773209 572268703 788738003 247704010 343577899 793339887 848199503 41451817 46842860 609511236 995076293 261718425 997904781 108217396 399193105 707633024 865221696 82034342 848806509 768363051 971974860 185878998 960918929 746627712 804536672 858636200 859712871 878480125 971644383 182248680 483679957 260192436 900559407 374579485 631176457 920351903 980275886 534442800 761122362 519323893 714168351 317754232 801779454 463584907 638774617 612772071 954859737 674811961 902478492 782281217 917144462 244076313 941810973 660452852 800102715 635441590 993306236 553156281 949911332 643407613 992606040 704899848 964297158 325439323 794400362 958309885 967660927 509235928 904924717 610419984 969104496 905204584 931596193 967565166 997903332 259355455 783084081 931628544 978438569 479219704 644828310 619273408 658416865 387905831 627059051 5494280 440166960 930133254 982051643 940511523 948761045 928152782 950341316 676145063 932519261 250306194 483881354 38557899 916308737 719504313 969816488 189833799 513141306 341939595 690923681 441223709 493164049 134209904 448643164 201116783 226344696 825753157 966878592 302528366 591974994 710655517 750459607 375824915 685642180 125895137 167832936 245698793 503355854 547294632 633977551 836883057 977298951 271110960 509896192 509313155 708430034 766566697 910962953 224393516 369999286 735141507 797993856 309437531 978252238 335599274 835348070 928164183 940188523 588796463 911175575 240810281 981392987 202541059 706899868 573972873 815618104 921109632 964069599 832117385 832341160 590640134 824526079 596415864 940358838 770951355 828007014 938043393 999388254 508055592 658533965 502453535 992364503 653423303 854651254 466186093 581012858 140552801 804640307 189571005 593801783 729157002 956833980 183770626 717876821 348396289 402354301 461190793 729113067 111384247 160222729 287171898 669462549 982879761 986867251 593979437 616231506 452943829 636269892 903176590 929522618 301223761 675994219 517209642 921152936 989915915 991536497 45976253 922825689 166493426 762644802 549020931 776947460 774891710 830576502 721514246 945997038 923890976 984452236 528195747 543138678 145082660 835205873 703963610 741608813 88536038 199156490 998329693 998684806 673826946 788320124 123267871 880450205 166012298 171804599 64969241 146387354 706821782 749278808 115627311 217388270 509343157 687771155 942899505 995305510 941942951 981040465 194811774 594973516 211565656 480298789 632135639 645139076 218367536 404288654 552581053 732788622 872508573 933616341 396329128 413544074 210461889 678588484 273163079 482910575 352233418 887715644 11366405 62797367 190597530 354184181 578522086 602690737 208067091 980079309 665452027 845524578 304878001 423244544 758163183 968276794 322369105 629574755 841038578 943704371 40210597 658490424 834352099 939582508 289482879 454913619 311067791 626281274 830230953 921901710 859163476 983774742 450587726 621798677 636341084 778326371 493212846 666001093 676870086 807202656 291199776 835220069 700535819 824364736 49555728 500880112 560884368 810374060 625628346 944256050 869065755 956400773 561491814 830521294 755508256 880187003 729972880 922401110 128132570 330373576 218354168 910449268 460651354 853115931 998457495 999142966 722702555 904877663 375210851 667583177 907518287 913921669 72553361 428841008 708905684 985482263 247862301 947696882 464928263 784161675 882469519 929895095 939573672 998266647 202352040 897653515 443705522 608767485 503109985 678151276 258607334 986825619 475851542 663366867 982103800 991513691 263703411 312515971 569554659 633275174 972116666 983537333 507193359 733880718 306492896 493806634 825612126 900664751 91593952 456917444 684547844 788710531 196741366 916954842 129187180 217865312 575372694 827792715 765080352 826940959 331293454 356740477 177477195 904028567 597313595 659781754 958012365 960267170 673029092 696858976 836433608 900335342 462696657 583833648 627184790 639852008 368061732 658148945 506072933 635671245 805074140 844146840 166079098 264643439 942299301 944577494 742143756 745813800 209356252 644665559 41848699 796648457 825021050 960867294 759500172 868340021 337709084 696615427 397167825 468059411 54628501 59224812 615653285 816659846 422135616 895631201 502763620 793626420 38612607 260683660 816040467 840300470 619358502 861638746 964054990 972417817 586033543 876180622 393027199 475005254 418278224 739872274 687644387 739115065 987685058 993570410 347506404 458499499 540895311 587323293 955964999 999702901 494754715 670980706 38652178 814130701 380468844 562964829 546486624 828857105 861575492 982376995 496168756 758945416 663995287 681845542 656131933 972861151 687145088 903061092 337442857 555979961 510561500 607893515 906099034 984846496 324568734 644535684 558004679 652911148 890346948 918050589 565779827 968285384 387642933 444585924 646547994 969666654 599864320 969819905 17823143 885514657 446893383 886114342 910748745 942845440 527015007 632218506 318243895 729373267 823114477 886515608 366049533 387624308 71581435 657411468 269842591 736169834 834720358 846747324 542762998 794274212 680463670 955197418 166254145 465279185 757378780 774321315 459747749 742267207 32681942 340534879 725801227 767909374 15997798 521492420 918976382 974868651 84708374 197236238 419041907 648738425 419549075 429866102 722385404 825979504 641124216 956669749 713053005 847738280 194725047 614857319 292013851 771345972 159761908 999564044 381161921 651373091 721811078 875113528 715243568 981983913 348852055 600170731 298326910 372551222 753194466 857165450 731082336 917379093 801050986 839692005 321620500 936708903 886366345 935132532 427284101 450506267 49097141 354987895 339006779 573595589 949128704 983265844 979205922 979266853 339894750 509557827 703244045 951237158 202205248 795487989 118248901 141675842 52132288 872716684 728108222 739648723 920887870 929940517 777330274 811265195 835210438 837174173 377194980 613199486 516744662 963799589 17653976 653097219 923645614 936214160 657288605 703816713 355559043 556636849 320002975 891607108 763069489 832666119 530280710 948833871 96493166 784666610 865989234 870891391 434012096 906608915 678797735 984121130 833893161 863965182 420269483 973462217 791511691 871776466 842566510 894892625 147356889 751262205 966956666 985766368 322616072 481541735 886940031 942182831 815077994 918021506 806913388 918399211 981342446 982812888 914585096 958412534 279148232 476259178 934064927 969241400 156543865 391197229 704672856 937042739 827824709 834522424 257232783 872428890 13100579 280899834 366898792 995551030 244777118 464271216 526166558 610207407 199427245 459847244 200048603 521784981 563986668 654222762 949543311 969470304 330590409 911003627 242276036 519553987 548686824 809783705 363743481 652055500 41680119 335441239 580965843 658954699 906426314 999413363 178034931 563860855 147693895 205595653 252076016 882891221 481329083 620153716 719062318 753273545 891297141 971309318 500114475 907255168 431081017 614686570 312703239 824724473 238333367 395525347 740826906 833510695 876784399 954193043 193468445 700927681 541521574 795060997 89324162 786781767 113545425 275896693 947632865 969705512 92296821 201166616 661705406 760426955 356643944 534069077 735390253 755767841 23682814 98379630 326454685 400733339 764138191 880311551 960036488 971723513 806698518 942685283 856299017 932229594 926294512 965891338 397673457 749053086 653649597 686550532 843462110 934721234 199672069 926046657 939467861 992794622 957479145 985493078 417037745 602733961 628338653 696670968 820648323 823176467 244111470 247063603 946873214 972519668 479423138 875758331 589862926 625916180 687578233 708914815 447733443 471923942 975368376 978077583 292144918 633721547 682497672 911514366 292279261 816110416 741747163 940226077 613874050 961799474 917372671 933596590 706800854 788759233 392625219 620786535 870736780 962191326 38380454 948964469 699542718 719594551 867631345 873543242 253037901 727192133 687949858 787512889 403083170 598238669 670385478 773725658 635878505 849854057 469481286 848335477 677267511 968218107 52949229 720206501 615903560 640181417 642830602 750157264 530149103 782626568 100656857 363776270 603802334 948909880 948386658 973214466 569314037 615541848 813414859 828180237 151724971 654236283 496662393 954726809 825078470 840809698 889870218 928201547 632765178 778463328 759249339 996569717 892363348 936206954 835760837 839238002 789784443 892264071 515480574 756715908 602231090 727252746 671016972 715447879 8315731 883055262 86096848 869193058 326400345 458116936 988604566 998676145 956299379 993708842 179335239 565803021 988663053 993374622 270633459 668119916 167579492 723906676 197691626 983217726 632110845 748786599 723195845 915445094 492748052 519273529 770171359 995230753 690830052 978770026 935777404 979720250 44207237 152083708 507846051 845042895 390900796 622494171 699490960 759593235 705319778 835700504 200277568 712891861 405236265 511957014 742252443 865860436 41148136 295800489 115546109 994492962 938395863 985888501 264213754 884117542 619665955 717434830 152467934 693728224 72998127 964564046 286897082 646370934 343534146 932671880 737908614 865836332 427954754 571369631 622325734 675936714 534089597 913021228 740564956 775203465 304002824 904314207 151862570 851590123 671617855 995550998 245631525 437626403 438208670 948169040 889604215 949861066 331528026 610118563 214226592 391418740 833063016 976424580 249385521 611584448 373041876 934611412 928380303 975324134 601776628 693105501 983813398 988263423 103361477 433058611 112684116 329827095 190500899 347132250 264786152 859448929 848565768 996189942 87238416 112895147 96624048 132663906 1936962 108355858 948662280 972097298 29875117 117150508 289941777 493041462 847819731 945921788 593379458 663018562 282423323 418506752 377834311 388273796 275192898 778862977 970792920 975666268 420645573 582344561 535388229 894996063 46244039 259245936 388353769 864519971 490253405 654071051 861162562 916304863 92110415 939828999 585062093 844596334 555917798 993273483 198149581 743538225 652481814 987177288 151190827 444465759 98119753 923216857 113039306 618039901 712026140 809878505 503474428 920147704 768257010 831676129 21484808 137186351 667113934 967216118 505265404 847586734 869900024 914054615 898904396 954337684 178481051 534088830 550915375 978943308 20799930 111261228 305553306 376632238 621349610 672760101 961348881 962643566 85848892 397311161 714639517 977427566 74591432 478732490 277202236 775460979 21401166 308665755 774065415 957980157 908981533 917703718 29957976 376942219 536529752 863170616 347373033 643138851 534420431 754085666 810000247 985742405 36206561 724703665 701094426 760820350 870659147 871976288 277827595 842680046 430085618 882823455 575540480 760316909 762366508 823028551 629209991 853706674 986202242 994838800 715949195 858299429 994518800 999285822 898705661 899208018 138030900 660029396 790305722 899293335 675142228 819605552 718853452 779767781 139075936 879893107 108547865 568290025 528318385 865851263 827209613 975877873 856064713 995034902 704835662 754994999 759440677 825930460 607604795 734639075 270392194 555490548 770089091 908351044 952546299 966689887 848346459 896644511 633173137 928543279 273762667 829273417 452332643 594305872 282572971 748673707 579918895 853477759 366914321 428756590 980182562 987334589 553095118 985469181 331030819 340544180 438164541 958388031 822189133 872020022 673568689 996941161 392347148 636564633 452261490 796505532 965018886 983514530 471415155 506991179 948368512 953558420 942649876 991887457 245814349 727802316 96058965 761480040 578516484 923837611 278851047 342978723 222362708 530184991 608213499 937300893 435977960 869720809 733637439 771975027 700579843 778311355 330907991 917298861 870745557 964141543 761954023 792767270 302268364 437131256 918863303 988204887 958748674 991281238 170008621 564645431 614213102 884029109 395397259 484467427 354427182 884492122 436333615 774300495 299719724 718772729 388299720 842040596 263705088 749330294 273604031 479892843 282409952 460035557 692262949 973290777 34724383 297556452 150580243 866066946 223693204 889431430 608137497 920942957 554208627 875577981 934662999 975633439 548487761 857406793 489959343 567907961 264852689 695088388 617627240 982006436 971373741 982863516 992951836 998374047 345882681 782484925 124144606 661398230 477603229 513338579 8717630 482009832 326644967 516398465 139576579 728141140 751672653 811918778 904765959 910785813 754675776 975738321 632566173 640025444 708552357 792844509 177981605 532817170 9567492 364335927 224228328 961422861 379941116 857867265 219634281 802534834 62882033 160639159 970547855 986900795 425805763 900526609 960651361 997917153 613885663 673415175 166349324 516666571 252887642 303788523 19498016 460211179 875786051 932349137 771399156 815727747 255168056 808643385 912050736 958085562 688457461 916084502 136113 188577779 206755965 737279833 110648802 202009579 364929937 905699503 807446757 836430586 911285564 931698376 265232362 367108917 25349070 384743868 540327908 549631120 330843191 441223402 188130226 497605787 538690090 651951147 964061773 964135984 430991544 670010977 192011264 724763747 979724011 981511407 744390594 749083085 895848275 913837657 893443758 922367968 136922509 793222894 469640809 484832133 885210647 975525677 40006383 138095872 676941131 920219714 620079305 672470210 435257499 659596074 843304767 883312586 833728217 890053468 82551174 675919588 381457556 520398775 594539351 720926441 122622190 510112961 682644467 810940101 335580473 448213760 639098548 785762433 810384977 934345291 551095235 713129733 884601901 944645821 769000144 857809693 132091464 979328172 948445305 948962754 800840453 967264298 428342682 548362465 525013989 820840268 262903107 749915334 516775625 942240749 297003668 454116717 357041629 860872030 182996015 226167817 106143169 710581820 233390475 759614614 897674897 971464553 419778998 624720781 885931885 997693436 775688163 900675393 51231829 266676596 763306412 933496792 670702910 689280882 315878630 712945230 473874257 776754608 826594894 847183079 433315751 542956806 185402561 527922942 628780661 698240049 667078512 688799031 414548440 930100427 331086788 539983773 841958024 936704143 355317719 393481178 463070110 685382712 595604334 906273631 929189406 933932232 658809179 801079051 425977930 966698679 597630170 659537996 655120425 728491474 302283034 438297939 884379970 895248238 449559641 531968942 917048245 920283445 38548418 288152139 393206374 657208669 43679289 72345830 12718405 594011140 386244934 516645194 915499828 946238340 41175859 628541599 461955608 964227573 345394371 992154717 917378103 921658190 486457248 946271721 152849724 366650508 453870409 502201189 368562344 532438447 725106874 817011368 711545068 749394774 870144629 940318718 989135422 999546623 510977624 725831482 146614338 415590369 818496155 969297243 552998723 979311665 421280644 549960965 875429401 964842340 753688160 765740759 183178033 195001438 613604450 724101050 817423100 957964880 14042974 468702365 145936513 374631220 463022236 826235889 714143657 959617078 23357856 61785795 631560968 650024579 65273881 766067906 950465616 968175096 557208233 961068244 210443793 321734806 208527937 640403816 978586251 985735730 133654618 624741719 382939693 476542184 964638103 970290759 391403429 652051857 989163075 990313599 610173486 972798275 478199741 987248634 224110886 498608426 603716205 845805592 924435774 955602858 860395416 918153617 651209324 959306258 408678396 432006246 30660720 699650334 438132607 612169734 666316876 905057157 330847691 593132407 537058370 817628609 479877792 853781639 198001724 681174398 392013859 748338982 199823551 622779676 789922401 956456525 170180713 827068025 548050343 654542361 291512264 691497536 993026993 997675587 550140905 594300582 123193489 885303850 945859715 947664819 587925414 659898406 117249029 662530693 146851791 554747332 837254205 858771352 227492991 892901662 520208034 703155699 256840423 451691345 545548639 604416919 783499247 808991784 537455487 650445665 193879796 542222722 438821481 604850977 497260910 868258706 960620511 963840602 879333651 971930732 185150792 213588772 598084173 740160055 752973663 928451060 618107325 699556212 352723818 665604339 54112532 161318037 584909821 602703516 913731068 980810717 88597162 886437485 108123744 776091547 898060803 939752836 618701494 994947765 959642632 975582737 75564215 455817640 194033380 558240422 626551591 800877111 822282177 840743486 24481348 863557846 324691877 566641143 618334532 676892638 220822314 628956445 643189811 974938501 658509600 683205937 828096914 919882182 70625675 213025631 23332066 855884744 232317077 281396977 89160943 260908606 754978404 799084244 916157003 939318530 112974944 944379040 962895210 974501634 613118562 951192671 502929428 533663050 182539830 678188728 141340988 749443116 986074788 994875324 659468453 981308070 265929762 709529125 676242290 881924371 561289715 976496999 463928005 894121652 174059875 984569997 543667004 904745061 449395696 726810180 60750259 654104557 542247362 735256437 729736627 921141233 677524517 968121431 642200369 941335558 246918199 312873748 27961493 241528168 243276868 927626837 3732616 174754987 373296039 464108382 127151860 215422708 821807941 882607904 572122026 626115665 155560107 629699499 964320521 994667288 977522021 989239385 759644625 872634553 809539972 980115632 908199894 930908106 115501964 619357199 42327788 632413991 32231653 199797726 686758541 894822537 173515493 804092620 604107690 770564258 934103933 994763841 335742082 733955737 612880382 834799555 350805695 521113106 284293702 903295853 940760519 950579471 330477759 768796876 421744053 903837044 4331853 17032574 438195742 868974622 194593038 199342352 151329336 245501335 87208480 101499031 705155466 916641396 919146327 969083861 561611283 602047054 285032918 646154383 317815589 727364370 870816779 877927932 336455143 963112483 932935340 956413536 837297470 992552030 689859286 825441416 406921911 660563913 934131962 949288171 52884091 843778174 444401360 973009746 916353320 945930225 729578930 999775639 198788128 441170624 747577997 898783833 500834629 716091436 230654615 281599242 699778230 940424578 172864821 296174957 427043097 720252381 931722321 996548959 170322617 521198056 789657392 820771772 280441561 598370130 27734676 46410534 564414250 685726937 26010335 963398168 40525356 900692496 183974704 402386998 966327693 993272532 192255015 836107502 77931524 208867300 722410982 900780756 964030899 966624976 222068907 722392440 643029560 763004490 316788995 911735891 463925264 850586178 716238276 956374413 213323114 906746510 532558384 541098164 90838311 758731646 300131416 992654722 758198710 774887204 594748676 700527589 495559870 814148007 143818952 826479109 466154413 994167325 822925192 859096548 989300976 996535846 492545062 956572595 892838001 909314208 555257463 686268120 156470930 468137529 447149843 940889726 37028731 900067907 496769377 971347708 592342935 785942490 414409721 926343164 527080613 575610367 375904401 797026915 772080569 790757092 796396472 809394286 789503100 876008905 109569561 864139072 140117657 278633483 692062075 886178955 680711135 792053322 275760941 380951986 176946040 352109743 527989420 988357389 124118122 868656301 221352205 392281580 873175603 964771916 617018941 798384434 670509036 937201782 574478834 588043640 600791278 849340258 979236087 986948161 88307843 102449688 349311242 666763538 965327591 975292147 837675562 979866120 659008884 810598239 745999771 751762149 210896782 303271834 415734758 766073853 579867633 845178704 519448074 525814250 131495998 642027108 979847924 988693469 901795009 964632963 518466141 598860052 24041559 232217401 23359626 934944732 877644252 917970768 219381582 797691201 45508726 220064821 149655136 421730925 580252456 650870346 145417464 225047031 241780226 514159739 318257399 425295349 261014466 776401024 223030338 495674396 219024261 869378366 144288902 286356172 745593268 851877332 495171883 968513440 885442828 988763925 312571926 327747919 216665587 969232609 710294682 902206231 750323581 982093669 766766654 922054129 352806950 986460399 634866384 905977537 548413838 824023152 176731979 529299253 274610767 338757912 585117464 761722824 507257429 690544545 369392003 373150997 154688763 992650814 937365133 960377201 210313060 233055686 235105016 874905279 527429286 530735485 543360883 839992283 349272776 841198528 512865334 892618171 269905670 342399967 146064507 606957521 394384150 562728015 321024068 960499450 236840150 533165383 993932448 997897808 438425068 913818616 749917720 931050582 711351397 795412998 286356082 401769288 922620134 945409654 175832528 760766981 134842104 430630417 326423993 660100215 936213494 964371596 152488865 422356442 503799912 894957153 510615206 826524239 947621666 960583180 692701558 987487310 497553212 881074083 901639639 944713981 863874986 902276460 717457051 898168349 432231981 714530425 763639813 980635117 192957328 455193418 482958084 698931346 47152973 759680449 479756261 608983334 790014603 838183296 928836107 965697568 113582928 986788356 220051282 932987276 330612410 541917912 593737772 823330224 374778572 621756395 685485235 914020597 933298594 947161569 972925622 991313397 969601854 975403888 549040610 857488788 682678869 844544004 353633360 616388191 310950506 703868516 89313499 224238739 142375650 316199732 98034042 641159719 206770809 366639717 932501811 998881937 116455127 865332807 923097934 945491925 914984828 933873451 521236688 585994753 63681702 373782414 699969395 981348455 489420955 868210800 344112171 515455597 489844242 572353328 352130742 875389204 379702240 909710693 665199999 995450322 101892999 214198781 662199108 932433316 787629162 875842510 282992932 417963102 304246479 891112996 243671739 654720776 557997391 729093841 311615591 324943265 914129176 978905250 589347340 716805770 534915135 546017726 97839523 339172994 147565505 895044277 596437583 802703930 996104528 998508469 962282940 986885010 603070246 685933017 970008314 995123800 94347132 324735219 692287203 787188067 18809568 792282206 61665376 699563459 115907524 949940260 257358395 906185513 834393803 979975030 165632070 231094376 342287732 702591584 840426085 974390420 816861134 817906062 320393759 740662171 484775728 821391465 859239157 968459775 388124805 389254884 737405897 807295791 114647329 382299551 594623656 973110942 387359179 803201093 283930694 932586497 404842124 936000834 456948447 966054759 116551300 584993440 456541505 567819679 400215492 550949966 723213005 744304247 557744595 634582228 302509413 767385288 843529955 914788003 52291339 497400902 229401104 315246400 133689616 990927900 915262001 972819722 733720584 963921582 82365517 514938349 762999025 824802745 95278590 778755582 960731879 984350202 836222340 907365536 697881460 905109184 799423895 888954432 978671748 987955972 396749222 553483753 744113600 897017854 118015239 662504713 396120012 453375721 555201305 970138493 299431368 856181204 797017057 854024551 740413884 754316776 902050023 959799409 49523640 87050010 109181084 858914587 329719108 522769067 487991927 999328869 534038884 597834776 108434075 618206631 141954496 742767628 145318337 717695407 636897211 794833016 441950094 913903001 739046982 834609167 899115785 968809632 913072462 942679651 845775077 870065040 205891529 414299193 572016381 969762229 889423655 905973486 286638643 332984786 50585361 639361452 865332819 915224636 535063539 679175595 37213396 114157530 387344539 508264727 573240382 876209867 357385612 424230236 108882466 595135408 164431054 681010718 96544156 802528941 814170740 889783922 519914467 554809428 989279943 994647491 373271905 531191413 977175378 996069467 112362372 614795984 923283941 935702424 725451665 828802629 36548243 236899228 664365423 948126613 785602345 911259453 31060652 135544544 92917561 359840350 65185484 65596828 622428749 970180364 60861899 517746924 654174395 672375718 623245036 741996127 406371842 441600535 56144457 817445977 598426086 807854727 682323974 785393221 928124185 993937863 272198602 479066147 259140237 862441332 679841736 984939448 152979031 597355823 597931994 636554968 492478537 555552907 598389328 644388619 995686435 999889392 185782167 658062398 656942508 867138057 961725605 995252122 619948426 869892015 707046068 805354556 492862188 826663080 52853649 413266730 578987273 702292203 201626620 348612092 934408437 971878422 355845465 665618043 146739779 737652440 929677596 983134013 721527235 740999723 6617631 956145621 368752328 563672675 139852012 957836342 134404613 851423733 660689781 672735882 445768816 818326511 788702490 912692233 443210534 725332386 781641438 798580221 329542006 357249991 287274410 749002108 703633450 802552650 733311631 994516939 767642313 807161152 138748368 797159997 682109647 787746013 33558326 375935734 327247371 635326157 190519688 473496926 655200808 946812124 45857917 983670349 484793950 698989276 648362097 663036231 934467731 951653588 130122374 692859882 282099911 296572481 506797153 766768765 719580659 896067398 434364290 686691185 479268655 945567119 256381166 584202952 503903778 967295692 449941189 747766979 51147099 774858572 192774186 566938284 165181907 467128520 445333593 970387869 470767554 476946243 825157146 923035701 449972436 941887392 164284532 468552092 725336354 945194035 225931008 720087914 719071474 985696244 350181043 551754528 212828918 261520599 449782059 690104907 652858294 943912790 212367354 341153817 385250042 652602830 832176193 885053871 744335 206184655 853583499 892568899 135513421 322605515 427201788 723707371 534340982 762653726 407249896 701690780 741927681 778628602 48283834 327385492 493611898 513045281 220868486 739847338 493678720 724685566 893533834 944295430 502188780 604238783 974630637 979961284 804795266 881914423 116053808 160099711 171746402 470711259 42511140 69439410 397556586 913345815 231258336 754467983 628874340 866492177 10960055 108508179 480395714 940191288 120194422 196572831 362653318 917796377 229134000 472225728 199000720 698820154 477224699 534749759 402860509 591290550 279364242 368582606 195675692 321608392 278792475 392402871 977684497 998722312 126406506 295162725 851236377 856451842 215638050 966402487 695327970 812102185 426378511 756158609 553466940 560477081 823443220 998923635 571319955 856713551 551911492 734328251 736380751 986751467 95551580 894557496 217511993 902813796 34078741 667854686 21083676 676591575 65199215 656454036 686020611 878292604 643692296 764478158 401382394 489843663 114966400 910967871 974747931 978282481 818802912 821370735 485880791 564439579 106818926 748013191 163721123 899584558 747772977 917487417 523126827 880421795 22059014 283858809 470110469 854651862 805703158 987043526 466106274 619820196 835876408 927495640 241360834 860979950 768003514 891333130 167230871 558860687 261776105 440702694 336962362 674869161 735209007 771149455 871123061 940958925 464000041 545736458 163037652 640671827 143206784 729886306 225904856 482212644 851022304 942597129 597623816 778440897 721476270 807826061 172814823 331265167 687616569 836018190 946943383 960690589 537935734 663556489 253550187 858652232 127553654 205330195 890114915 949270705 531919658 628656857 111528036 392085894 73129359 969981918 309382038 859523308 338941922 849493131 297572267 319331458 467099153 589875175 943191653 996846276 362837111 689825274 108555722 639334391 250844761 326089762 529589945 591615585 17008690 748037788 660691093 904892467 42392329 612695364 918536197 942569643 231836227 458380536 848042300 931239481 614533757 719470390 268830699 901542556 417637324 761833810 570342787 897787362 218119369 546558183 464507322 884359934 382474978 739728254 526402204 663926063 391209347 892314411 920918696 940936417 105187965 170459026 244626311 949883311 512609027 651537308 714604152 955844758 903481946 904359384 58301675 842053830 470927038 572727784 622505365 768368431 7187515 83832150 832335947 856364071 455286544 801962290 684007671 903944890 690700305 807344983 639258962 840658937 711313759 841263270 879979035 902223772 228543986 575027913 575846431 610685400 878149295 897103393 631997536 784147191 225137093 560717870 371302137 948406495 604390534 748434855 836894316 912703924 984315620 986554919 395775284 581624302 163386880 380836310 469842415 800981797 437452144 515669095 559142614 591696956 938565847 968869583 371970342 490027518 300260409 842497110 556705522 898774065 158031088 873220737 535447983 700756650 21639318 181603689 330415882 676044869 270913040 613619816 299422473 857970295 361778962 523556304 704164865 712254864 252891882 916219709 143823999 604273528 135925997 721036889 305403101 977405537 77873505 817837446 188530767 520674394 49312326 190236483 533219825 846767973 631007577 794343440 632704439 872143046 184705005 362521444 491446276 607773213 645813445 687043405 331006709 755022672 132101264 778331319 256706788 783070657 341600943 479451460 601692876 737802856 476427326 761955247 205093004 259681584 29820032 228243444 894521138 930561795 378080164 409457231 533553273 680108736 342938214 737272562 409013251 856327682 400250904 709060266 415402619 427866224 680827745 712380867 841451031 902668927 552178293 737992026 838058451 943787759 441184848 587827820 432160558 619190752 217485854 718721318 860896149 867926553 498801578 530116727 894948582 957220708 329852208 601192157 11246840 487248175 989713644 993746206 228375166 696066719 156513473 314519587 603963379 620304687 901329977 981036634 488786895 647066968 184141162 842199077 25371799 563369548 869265581 894185418 450907376 883789289 392326446 696473497 579025549 715861179 640568296 893548293 190550280 827856908 952605466 975212578 569070708 702466949 574415035 851637601 548287505 709631628 918659424 968701888 866197976 946424543 999593807 999652017 970826063 972824169 583903524 776336849 223373464 969109256 346790292 348695692 709361241 822377102 893559309 958705431 247472719 397129523 815585961 873416094 404169480 619026657 168182726 931976780 29641452 851228227 93643813 279821023 393567081 963900925 668030482 715044030 20911691 770678232 291760436 872632464 155303552 776488243 787643006 986966556 771876172 823477979 726759045 997720135 310736335 908552627 247646848 651959931 984114589 986675953 794732604 876215019 902267493 959050677 413003301 929805627 633327803 956901094 923858651 927646631 829653547 919671871 47035995 345909291 200821275 779373569 335114905 510265937 573629582 716097478 960914345 966677378 320948264 359562733 114361243 961679711 502282368 753924658 879978476 908843713 20249761 481109750 206365911 477539084 794440598 899777261 748937456 782491841 175105321 431031110 788603976 792371290 212850756 229860389 103202133 236346985 607980879 624779077 771616817 867953120 558279287 872447070 577600856 865445332 643339168 791002638 245775035 743081581 376940881 631384233 861798097 999807307 832360702 934566780 604241519 722097269 952001935 982415372 376677138 878653064 346172721 491814489 855469419 908059333 581044120 751024672 556630642 777670591 674489230 973581180 200143997 449911979 688381166 733023556 490324555 874751784 919483284 974424161 578270642 999521585 335671363 407209988 858331792 928462073 465122988 701206223 818237338 835796455 743413143 824770435 227111722 350028190 313517034 931920565 32067592 455446147 672985655 971763540 344191366 587213219 990699600 998041968 969335514 998991334 136785538 724455325 33989806 505725505 250644421 874630357 298160280 845342504 635943454 996559264 162381916 742761271 877703895 962122759 11072434 762231079 152627722 526327991 835571012 911757603 794924971 898556345 117135011 162624822 269113088 409958384 140118596 444455520 319898201 639883318 479633668 971260202 527487259 970556493 295917846 674875036 402660581 601833627 595382800 838628467 721496942 832867715 316752966 673912114 206693714 273086840 198980009 967115471 225010100 387982961 986097105 988306368 503153987 966205640 600949181 924901668 783898054 915992614 730100580 809637092 713630160 724392335 279029981 371302569 421082031 661403044 118125735 492700614 30851065 663293603 138606400 597807367 431431943 791334019 823575900 942603251 561745166 996738598 442299272 595388939 667450703 692632723 954475927 991805604 93785494 155224503 959428116 987655035 345935409 838039124 161212698 585840605 755439251 897340660 111223390 744837912 816166012 863149012 722053912 742064280 298224626 625774646 508379395 729508034 641836820 701014284 223109934 600852254 891128516 909428878 249858644 554623710 282878769 318695144 707940475 797882364 230596633 585091653 171893294 781752727 357665504 905596735 247318602 766108131 119880180 921135173 69498871 310868140 732895042 762784596 293418085 581042511 221220794 955696206 65920847 628340695 764735853 857240062 427821005 629358814 970563871 975274773 437751842 622749366 682977291 927190102 858328148 921697937 517460210 763434001 400879543 778271689 614263382 960967927 200693825 377919400 742255080 984188780 862808046 977021433 122186683 720008980 158375020 410803910 39961857 826732212 738701177 890113234 444612295 649855046 641683269 742399140 167558 888068589 171200424 623651474 125165818 189294724 859954236 926629598 379823167 742304543 609512424 638166709 76581852 98019338 171364966 740365802 983821836 985703496 552207719 736373523 594685328 992390601 190223991 912664161 804590159 908718251 57405277 217147923 922462567 990060108 93013783 517989152 260558781 583169784 564110518 928234860 492561357 940714935 886223816 960855237 489250345 639734922 572029117 787420234 974914017 999160062 325027094 413522831 872697480 923512476 914646529 947015554 160112699 220862689 823400266 962889873 649122098 767991590 248887787 310270932 147479548 736613867 317084381 588843424 555068297 858845892 821583697 873258194 802450024 956212624 791392485 924268883 974101828 980343114 41972086 655471486 889297432 911490677 95634120 497757207 820474646 947827003 26138833 848652194 812184075 859555723 722975517 954062788 549667816 659562186 684731956 960004451 413011776 910258595 420694271 973576720 87294205 605972057 651267717 846861597 748483929 938329882 733116953 878794455 359595663 596821025 58256190 706623777 421599795 883952811 77297548 385502186 977565800 995017478 320971311 849834430 495769220 904120102 459599336 828439711 636918635 938842981 928258053 985245719 693359895 882305852 505023579 757432437 565250458 871447777 589004030 966622714 703155395 858635183 423996503 585798624 937674483 953591512 513947214 640665939 158412959 449413778 707473501 820530483 44576744 846580683 985401831 999203988 516575181 764437339 886139871 929570583 753017851 815114432 910565634 940780359 924586889 975700064 732015972 829293203 332169130 451437458 567622869 756174704 633080265 752839202 763030670 933572622 328949518 681189038 201584311 568495865 23909107 211082345 341591547 529721111 531365013 578198259 509204950 955271080 261931860 999566471 495808426 748483854 563005512 801296870 162289302 656737954 459863596 619894764 298672796 405908531 750143573 945797145 384775579 634784273 713190816 813472812 478268248 484273286 659766378 689901231 215131977 711943384 322793795 457896306 207764783 577532760 801971714 843802574 957215615 984475391 907398316 922192227 800131355 877516244 343670220 492638431 459988516 693398766 532458423 563291915 174103512 346434040 168494159 833098168 500444605 742743894 119395879 163837228 485809639 912140089 313008682 334771818 69823190 963598998 122980639 752478492 340893336 960351573 334143264 471467945 447250581 658931932 115000734 349201586 612720727 789123433 370881179 872578308 33105117 804646747 672842472 948705185 953652248 982167475 728066935 880290556 212338936 788426466 54674753 769510162 577185511 780982132 538241733 898254033 761016827 945949252 471694495 574664727 128427734 332342700 579809861 875092564 675337141 984274394 166936752 886423026 856046225 908510005 453899115 965896067 925196031 972223641 726357721 841031302 777690791 811064295 934514656 970368811 425641931 593385865 60422421 633768132 534464296 736414862 602579038 811512275 43809840 56058390 692136297 940242814 446479740 612886050 498539165 565298857 565482692 870816544 18572466 882816848 190982975 464739636 9203566 726853977 655412989 901262599 519437529 570908859 758729602 927454375 944124842 967202180 46086403 248580196 503698955 684818923 152633992 352800559 272416297 405084512 651988812 952466341 482126056 821861185 690766531 817805432 726903940 928898749 199145117 878359794 788554090 796839625 482833468 801682935 296650693 408829967 364617312 997851559 710110148 829399968 899260652 968714923 505452848 706194190 672038383 827835750 27461766 108028840 236402426 656677577 838979100 923358220 530120814 639898922 409859659 712952324 537228661 694032736 466915592 835284956 232882989 317636854 718843987 995280594 976090666 997474388 524750818 764781071 775573926 975835339 84626659 883422527 716025453 962856492 638525678 880021837 921493258 927970651 520350569 881108219 549929132 926208625 619461682 910719983 592884249 891528284 793154828 974248436 462678306 651115922 985007703 994686685 320856351 643330796 901759178 988402094 412413514 544042603 156154119 501394731 824122899 951572380 439481783 731022684 337729870 739757175 24278333 783139627 251774195 608320925 667150293 762866492 219315238 418520073 886801045 894186645 633721714 831367753 799828138 974039744 893923996 953984724 879404021 973720022 387305822 485347408 784301197 936185858 149929421 669602078 929256625 988229474 473344605 547339981 360180301 995453613 419720956 739262441 365323353 923826746 563117632 838335443 212397731 848319644 776134466 921716093 924187307 976935812 982535009 997605421 214362805 604571587 586465499 792770323 151021694 531838379 504503238 821804786 909975024 989926055 447205166 457098614 877807589 888498959 949682346 956102812 484652333 572520906 951970517 998915801 565038154 815807536 469951867 909706124 740499498 757444226 814689746 900975374 806813495 851823503 59454282 744480651 692111391 973143178 212810142 369381366 648850808 919016052 492894909 525695453 714065063 854926969 979326515 981601355 277088781 475633894 994045509 994901875 585887819 650383318 221642701 803463153 455142357 931355114 760664766 782419365 420230583 764474359 143815771 414172067 372384838 459223180 880970636 976244833 960155063 988634380 474242218 831145089 324847204 490989895 796262559 949236746 614501274 617056427 795639145 978837229 696418013 850304153 59899163 466639799 204128814 777309733 227082032 539013430 415113333 627846962 870193219 967106107 421446030 482638049 683165261 745496220 901488700 910273561 640947469 954174040 915776878 994826413 429750617 717964979 672055730 703074228 360056361 405821145 412377097 514584099 947843235 981859466 113242391 596070819 276521449 282432435 87898258 700463869 503985527 670030076 712886180 719978227 25298803 130470801 306657157 652909885 127448275 343124065 368600490 523385697 21372484 459199830 511023944 904191724 57302727 394347754 958276168 976141639 18774824 814049150 52674648 885912068 68737535 366476628 377807611 720800083 654869652 800533976 857564770 952662483 931357335 947896121 450804088 812123570 399309735 959250632 732174352 865074907 188723914 251633993 552063781 649397067 766373431 991676647 518154091 864790891 230570179 379852893 788834537 926252589 987303772 996320555 279850242 891889708 27891013 36116529 745649627 857899929 208137498 974043690 838070022 915708014 280271894 971824363 437372835 546235492 408536024 862050061 764810723 985254873 537491913 740318030 864910218 989653451 683926681 742456208 718827261 921966741 810591212 877362707 321602602 361364286 567581843 706020443 395823910 908290830 204465582 645002345 116421176 183770120 637754030 703474792 848546674 953105521 56763418 655705596 21996640 336028641 317719094 875068093 455656386 565036693 263376683 610111579 999579887 999889964 64715969 461239135 578420048 765431088 21224997 325603725 917015436 952879330 655278166 747841233 163158451 607873691 176624469 387398368 377630837 819121547 992689322 993266096 625266338 863670375 154007857 325775093 42225405 881993099 86301718 402304042 443393699 935308970 772169294 809982044 263634882 851463506 447161858 950350433 394518381 783571274 628841663 908796409 507937433 770710591 717623407 974364664 548179582 766469314 656582166 686408412 247991623 916031917 579059259 820561530 565138599 963018531 123319894 575542724 17478788 262461353 559284811 898646766 87953056 448561654 122928732 636803919 331862942 542307869 51848953 359709324 545979622 751280107 236044125 585289127 867453337 933506476 968325027 985439100 260556951 595537909 881082154 931381123 574050964 800463596 646735376 766993635 916992581 957376076 977679351 980595731 506715395 772232782 803715518 953241397 234596672 295685321 467530428 720228150 104459861 136424490 537111927 779137609 851679189 888556849 564834027 878935461 231826001 587854918 542515511 991336995 643801995 891578118 26188731 693214090 912673513 977333075 285292797 644692734 613908123 839498559 14891974 583925079 833572803 839594355 644809006 784193002 454462934 632773165 323417442 545732934 337981641 852212437 612497698 774637677 212004716 514218177 878369301 971479000 680028199 931636426 938317236 969062001 349382844 413166657 976937725 995875072 527455187 926338387 21339012 437937757 761758382 817056492 618444907 639460255 358317422 473101723 730475330 887444983 116313563 477676682 418578282 977739087 786709493 850997947 385421923 476990439 889804812 937829248 343865958 908204189 294548083 901617133 351284214 590245877 281931010 590039457 409782909 514453623 604501226 641515970 344152034 697883229 675407802 859850492 736471481 951916057 727849841 975440402 454474590 714122351 304385101 458461032 857535339 937976852 629059189 678305088 660483753 746875492 722964716 911516839 622015857 645155468 580167888 987987417 448767536 820013475 831543675 838288955 735233617 873874413 896550462 953483898 377101721 624684943 222895805 919089250 711395106 852586786 464420660 581427914 500435115 990581806 880819013 910324045 275802456 496695672 388674175 750936232 246128323 382897716 148035384 573215707 772023594 889892373 810424244 823485181 884624839 934735030 5536874 416481530 44567330 260888067 508955801 802629980 79993498 725618316 553533551 937874279 402575192 657910565 68150380 997514325 780116227 830730570 99910459 213172571 857680105 901892735 70747733 755159590 672383483 711208288 281874093 889485816 542988939 843215980 13364270 63914059 933640987 967054343 138053993 221464784 496602596 757229201 288057445 877235571 43278106 455098425 410745812 904631161 204063195 290383135 471073901 927425584 165797770 933766030 920575262 952132156 138016618 490355532 766248839 839310089 117022866 189287620 446703441 482835824 607123041 695064618 726535658 727040516 644274546 794416199 376596995 715967434 652488247 897537426 242038098 993911124 360567340 502968912 233737719 329954219 313646078 453661235 907954460 968951294 667818328 889843816 516673907 806174642 254481192 943764991 245187844 922089102 52516762 987966257 266495768 345492697 372481931 765809736 55872048 162474965 679474151 730232258 753180101 996304016 16328118 567870030 935470462 973716795 6733416 459249332 907214329 918264730 903940024 909664927 369079150 534688838 906882271 930273384 319204495 668130733 269035053 828844015 542184405 590454789 253704628 712235143 652901982 833952015 919669718 931062891 194831902 515379726 510769679 764626578 838384476 987247181 234290049 516341989 262826507 903350710 251006890 785346978 975796398 986111140 311967740 780968408 122839150 955848627 618018393 827002769 785535486 893025392 129524708 421645785 348667938 380644947 400490779 645972259 79019076 922239900 305852669 679300954 941520708 997617597 671514238 946761110 620123709 706642146 308390436 560710806 975093497 991409856 668641959 671219042 6149088 503903616 272144322 924094725 5468856 449263010 758753789 939114556 99786028 643488481 41815001 584679655 715374904 966926788 17111001 910288468 60590452 740803299 368756699 858885294 241367248 920157354 525665221 604289499 993383421 994754517 437525720 973810947 519638735 910331549 709203414 981105975 839173007 955244009 832050936 836516194 797032571 976788729 511178209 857547431 488256784 541556367 405898702 769569570 185558057 590102352 637819588 669227205 78969239 925844856 389763253 476056982 705927528 824403208 976387289 981064254 785056195 916401970 544149709 971537424 844966353 898092385 198822062 748044216 261271822 867563717 52998890 351295543 434004312 919144252 573305429 607373844 637101293 704624675 83894311 463309388 477874833 670492862 73342335 148904165 306687013 475569705 271268016 566337748 979497491 990925777 9711555 565523732 203156596 562996639 316632354 750923005 657900178 955992916 413782514 500639623 457029107 900322356 238395304 335047584 390146184 950432370 816987513 845722371 502764474 840224936 154452610 905749977 448813430 734887193 853375405 897278425 328530690 771000487 530098309 970992096 13038918 917674762 305167389 997143746 905225354 982445713 922505832 997742624 469193373 626730770 168506567 346889409 979056070 983874900 541807754 566455323 136721742 505037312 678594626 735420287 284668133 536136941 525727751 696255764 780849669 921236299 768385310 875890747 80130238 832317497 117269643 312390882 409699167 591696707 290701464 644587852 7943076 12662511 819398787 881613560 8408003 236963618 279969020 789953130 847647183 907780077 327483578 858095437 919240762 980582434 494003931 730369325 618536666 822476955 970368589 971233089 546534879 633666212 176350030 733226058 843840232 860459764 358108872 863434057 999129263 999429914 502633160 919276819 285408769 646240393 362077224 371005824 192859472 408031013 532436165 910267608 487594744 914975339 768068593 852562386 8714526 726842444 549985935 788653669 638114847 780501947 566195494 954597550 35788332 434795338 537856448 932948837 433725037 928574052 592053335 774949784 448994538 641471646 305774227 722031273 53418071 891844622 41980384 842774685 786502653 958849137 143301877 153671952 849802290 983306484 997721808 998202374 806455868 875338831 316790400 675007616 843766074 977440907 697530373 925161658 930254526 933291692 516312539 718511852 767539635 839785407 414974599 840002479 704275951 725365347 485107384 914351718 950130378 982607417 907660438 967585204 939341845 948272481 843643926 878945708 843042775 967915105 96447535 788133384 132731843 769111800 779872248 921382963 819491462 973348710 826677283 856956076 632155804 780216645 767743891 797289612 271938281 935959560 161218483 426830212 719884998 872467614 243401023 772299026 463275178 474593204 191387413 979666352 381838899 846907868 450451126 885263451 382088755 694776271 630491451 946994248 395786656 481818631 344455926 411821043 940743582 954495184 237645073 840212842 548014981 982556506 851282725 888175769 134558668 809951231 35843044 737015670 270742810 629349988 187766015 981956353 971103500 996270530 516712516 983022960 120559780 998096467 410425530 888216531 13675698 394727645 375594025 697866416 917861882 927817966 197396809 430591213 638972159 657071864 108281185 718974633 762517139 866363951 729235902 914711778 264627812 593460184 544315642 630519433 44207729 969722487 873186102 989707121 64628814 802319187 156646686 863164404 395785756 680297385 11509389 393807113 59389275 709224482 56533509 134531987 880027334 959568592 759105011 935381691 862500896 906114939 524564750 689160150 342635031 468960279 469180631 581872746 568237834 777686535 922584393 936149021 406443341 912843929 386873144 499793934 109190358 314006376 22939180 391326587 142468344 382514060 444786586 874728971 981094024 986481379 709946917 767106928 297573817 367990009 133871356 855484712 195774629 515001763 354807958 614337322 949162732 989010290 747783225 877968106 63927005 558266522 415163322 832544729 436975199 460819020 864114849 989303037 386659520 859138341 294835121 599539887 109841898 606700408 792051856 876188650 711314939 724001367 803437329 863068577 231636882 471989111 581865160 766490330 103509708 849587939 383345457 486405209 170295736 592352684 894530599 983402909 606530602 677650118 649267937 968330341 173040980 914746880 198849234 245924288 725314976 778980337 351802812 892448598 351987639 934382611 335563391 553646646 107327617 752834151 997717249 999977522 684419288 927727223 232025775 285872116 387926420 407714526 30854319 182077432 105960884 544341958 71948753 847449247 295644164 359990124 40560205 54567867 77815975 565927214 633620822 635152138 367924362 944737876 645005926 872751732 321982097 454850980 775726280 939953501 624497890 977512422 295084090 924633063 380033891 627343937 717610371 933938205 648709369 840999624 983106086 985883821 489597382 698668423 3297141 800853874 565716286 666332454 751107716 910329239 343027012 817310995 398836380 713458317 987832308 991187829 87678864 495655291 675555840 916175277 224287530 737774580 495447318 750604241 531401574 726930120 855683164 998811300 58460795 439823039 635102130 996739769 177027455 940304242 464420271 535082164 93324160 720452284 470297814 734152513 763648853 777746460 799349044 904243108 861292609 902137401 228843970 970904533 829396640 869010870 391452213 454611059 40306813 388093470 538618502 818272557 191320 629288044 597594258 771055256 691728277 757986406 418128312 503516365 398626941 863532452 146121771 552632784 86316313 97890041 796512565 988449973 191180322 522514572 68921677 535463273 478274976 721460606 369121952 446614452 734371664 741782416 283971126 478575458 195412401 572658391 666672775 850129359 46719758 769199518 265906485 293918049 934568263 999557558 485489728 862186255 171938612 764423444 288806540 878353065 289775206 324658410 874989996 891139545 514414730 748967009 366028974 578198466 929674912 988462586 252114277 757058978 972152486 983671865 484621406 602190320 445537377 859896574 335707312 550167354 859158092 960657466 903513406 921766832 865448794 971141225 205932915 672716769 375768736 670191140 478676513 976047043 454026938 831407844 970216739 993067592 68012918 934389572 828596098 959545765 211166609 671815452 294739361 486444083 402478561 621097720 807331739 953361213 783811419 813048886 464798996 772936588 183646242 623493511 52019509 823396865 239002551 462311465 767624434 768119075 327144829 434710066 202058282 812435630 493475378 834978674 320994586 862962640 343470807 894741913 565867569 765230694 609333806 678665455 173732116 830445292 196286437 334198115 535090958 846548523 373582832 490665409 864932701 977145485 880281514 886614929 379025859 451001732 293882215 302314609 791471981 988720176 752613432 918151258 848461454 953974572 835501190 888952194 462047695 771451444 477063547 671288449 681514246 707618914 17969962 537578614 320886467 480746148 649344180 816768945 912578824 942686715 48179734 928833694 229707628 350205613 345461725 764716228 893412004 926188272 103373115 785306736 21433527 352724968 928969626 992380857 65365692 175392856 575514283 946328263 975717610 978921803 155803579 432578159 106441057 156190718 824872149 971845347 863079096 873581617 640120501 844334665 992846756 996280092 540766597 810671740 45425460 79308922 817374393 938478973 449595674 693494951 325940827 432372383 148431467 246366770 996628336 998571458 750352586 906910583 965810163 980503958 423779631 663105528 609176673 773592012 246650718 432496709 108034321 538031872 652332197 948425599 379218759 527774308 131420253 936900371 728303506 936141795 116270513 334822343 991913173 994259433 253325169 484494050 139938177 246720488 335218529 804695835 139270509 876007385 837565732 959741678 23923872 681824002 357534799 958953844 777238661 796763327 250533395 647463930 442800950 665023332 871555115 970040059 162605868 434879196 572979993 705886756 714057815 761372663 677660764 974445659 951202134 961939666 215484322 520497501 95948071 890671171 120959467 582696375 533100894 862900994 984791558 990995413 224535395 971296015 236799268 438281910 948202793 975112416 894631514 973996572 833086072 846985729 808387504 853575013 335759953 842861411 651287496 866967003 790421435 791338575 44949804 788532613 556809746 999914772 622779172 629775575 149154137 970441460 262104554 634426956 917795811 941860976 165447005 437643774 892919561 935604767 735290623 898422668 289918399 812403819 442390422 995054781 242137039 881555922 557541618 814562811 890990314 962795760 729691500 908531045 858702488 985521983 789099586 890556444 260261790 924522056 547440441 595670299 899988294 926360221 283353357 403656781 904591676 926090190 725510431 772689724 565329461 874921103 323712522 954437029 616637882 818359087 109178488 951063402 259260024 309616787 421260511 695660774 418242154 808212778 673293095 712860506 181865765 470391926 670156101 806855595 83562044 640982751 564014423 814235722 953181582 957262507 934779892 936276295 597013995 985373071 146838231 210800026 334170673 616215909 166627153 600457638 238900137 568456476 90106551 452809990 516510630 981760161 844084971 966556215 430976730 638950271 931448737 965363201 937105208 941483456 433947409 621644536 972561200 998959084 873581645 978154023 341287363 737762574 188625185 403269508 837900598 908514663 550327512 569461016 635638624 774409403 180737339 955411941 763492851 900177060 214204415 691700790 58962940 433544450 668812275 831574082 446974654 750462744 6833973 459663106 284345592 351383130 557857671 770149976 995382566 996132343 155336968 861796177 370804245 846541457 545474759 602549682 820757755 918901513 10981015 361073639 534144443 853569418 449574860 627730198 959276689 986850336 170046233 348849987 217710630 529381198 72906852 231368781 553915629 767168574 71370691 995305452 444384660 917684473 772351018 824225461 905588432 958190304 489339514 961462540 218173097 563405266 770504561 999608724 77292282 970781583 708610580 772308209 423168018 929337376 927046678 966509205 117462960 912893753 1765915 168050004 495751591 548170408 501002186 902314820 177607947 993394628 582752262 965592878 890569160 903599649 81481015 323720475 201531712 668627106 166660745 924620324 202018155 625219739 451283363 631140527 89410977 545253713 673945028 991759445 690673235 863239129 527802844 836394890 399712716 529391021 122066289 340382367 73397044 505716965 17296172 319775986 893491690 907800578 510060052 597230682 759670540 825500779 334906825 580021183 847793434 944572951 242130651 689149158 595013892 986710605 540350688 960396294 238450776 740073197 255488021 274296190 993920228 996280647 912181770 963254960 838822625 917447576 435516116 744129508 559292098 609888595 622936140 960039986 687131341 709820564 233643908 729928444 443889676 883077454 64755642 752767283 985039006 995462842 129679632 636292342 41078709 534556053 430897866 771948974 949275315 977073855 998526002 998605155 394272409 770483804 810111066 963175382 800407537 980579106 649224709 653562090 327977677 443750273 238921867 730473265 870752546 889698631 446456800 940114732 83793756 550473080 263318559 992827462 506186307 929111010 982825792 992636491 88095460 171344258 250012959 556727202 732232173 914780595 639239282 955658827 159364639 465063449 456279297 917592983 367384135 674743646 717561811 926959899 380800466 907229763 761335254 891160673 943823553 975120262 586850791 815165801 492879286 930144051 919080806 989224670 536829845 541215582 901243721 993562210 78573450 221190865 334706782 714243348 754955476 861588207 884868163 930814040 741932854 841642629 786579403 972179470 686272533 868042285 15201897 51526448 409226807 452064618 199743479 852355570 957425571 982597852 354952475 747705988 734013785 871053537 48613275 276988194 187831723 720623581 730456851 735266875 302323053 484012131 193763794 950200603 521411688 755361419 411283689 560144823 984371802 991516267 184440360 282179021 488270344 807932102 526125183 993116550 238171966 718257988 519413587 896911124 631619315 631936452 806376192 946556959 884988580 944259902 745674313 948444883 982725133 988279426 559940452 931929383 896926424 928635237 327729545 554182976 840325933 907232129 243138785 548143796 950576017 971462279 139354626 461929247 765458044 864556934 262405045 816957152 227092320 610048147 722780224 867171309 598842025 779070634 971677442 979838109 190135435 235081896 839820062 946182700 732819911 757121064 48673060 792060747 417371657 633563101 733179755 862403694 288178248 664815819 933353121 985915565 935488742 962186849 483875270 569853685 960274610 965671146 400599878 578650756 446723822 632724585 84639181 445467173 601940776 812369361 981448668 995260574 15164739 175494266 463346147 949313443 547933062 822632901 652853489 854978269 435848615 671160363 628581135 938582285 712117754 766576503 867405392 993752648 431846742 752739989 40103057 296886771 247273258 795518475 46873315 435985134 317019182 929272242 902559791 982091094 1071079 318332049 707886723 837128750 199757726 845403636 604586464 624489527 337578614 941752335 645246516 880233956 352295748 821870790 161878174 781950906 393267779 986478397 514225008 869967593 845812416 889961594 450139396 584561477 251241655 486678523 358113937 446799214 515257214 738004815 809036855 954901907 979116868 990554068 292310984 657207404 703544152 787649319 545133387 667632485 433599490 446620154 292676086 815772076 863437647 928319935 772391265 961731160 874656779 935589700 486738214 615302084 854587799 979529818 244566968 925209780 103723303 489629847 99607920 602565051 394617407 567828006 633372527 833347063 708603098 890395323 877141125 952279639 290527687 842712633 121956932 843520896 866731702 986880620 787024383 861463880 849389784 867818814 412577478 784085336 286205308 790801731 507714969 710125372 990002794 995446781 992571580 995510354 522988455 687990162 64370354 411215182 6190299 163590437 50512699 828894995 576460262 700664114 434416557 495753679 410548658 530993435 872981285 880346228 515154092 727704285 533139074 963212247 387667856 491434172 262165220 889266128 758040842 842250720 545744037 735363833 385021050 964580411 843728949 978578766 136117152 941349917 114043708 146990388 796009429 914198355 669054390 804427233 418738731 806021878 868234974 916581443 866779054 898027308 767877534 824373811 997953862 998732632 849069871 938647619 170353370 183203704 349266168 539546829 321263165 752150047 936598637 984533385 337536833 723125040 475994998 478263160 645503958 801979251 643589456 917865777 408182901 913723725 846986942 967737432 255618268 456519560 490577681 693306372 791405981 943119402 967601116 980783557 684493377 733477114 167105642 276921979 187907937 979752048 895166524 932309109 751035714 883631564 696652875 866549749 702715082 970139300 913303141 982615532 170838373 981101125 425800761 898578492 620543229 660991659 493924620 853690490 309102796 795928804 762832994 866559696 24526703 239410889 652603898 934810048 444854958 596398252 795440398 855541221 399405816 945723379 468916678 898720359 343256489 576705102 724379560 728029349 212511212 217051043 37553814 923356236 933190174 964375973 83950501 296559584 901493506 982273507 148445858 555739797 355604307 658606144 989561642 994052271 596744006 802807322 987635473 999675950 253715914 603482736 670283722 680778672 185524 525946887 501159862 506951527 782911391 811714174 627699631 994138739 624827816 944700527 388184036 731944415 704340387 780997737 46970629 171452624 703344458 960240609 461301999 761309192 992428831 993672303 929935444 991027956 108088021 709843641 309465665 534096784 550942855 831557534 92311120 912894817 608421474 917295792 802900675 804157706 595634312 706235107 164274664 497271538 942055807 978457929 434913131 484714707 43942307 999288835 109967691 461542675 179516724 785196914 104908508 814369494 737258212 878317752 541576987 846794520 823336392 885250119 625871329 861600890 616943305 992236284 880638205 972353862 585290514 631955196 451929482 463200145 402137434 830515354 256395439 648918456 458187945 490791482 313423169 719162054 903228561 949190783 203360694 784124004 5444845 442716504 114958449 635773103 659303433 891351184 249858054 995274278 829004965 862092891 970954894 980742512 474442725 551718089 594697055 812092270 167586510 492968814 314225576 448918530 88226684 658857757 773168208 894735429 874744445 899371324 121945714 679020960 684038212 757078271 863665618 914077980 489497180 915954670 561926803 845223131 891415247 983045171 296703161 601150535 710948304 740014438 478117717 639187675 724491925 820768982 329242639 689289133 3253950 109147411 60259049 505563691 857501058 981310082 670402606 950290590 691036223 738750805 89095145 446770187 520838520 683152829 40476021 535544830 795636176 954586046 115838183 571652922 309063543 833781877 942182129 961445256 890423359 929158268 580283676 971346705 852089966 924116607 43661839 382054675 109754332 992565206 361201280 432390701 323868262 880188622 541810329 797433076 869112427 954512946 606940130 959076062 284582817 975784628 128832348 872291008 331692718 561742055 667251926 860240088 74365657 667491799 964719407 979662184 557938862 595411525 339933144 965853561 142309252 353145800 181332947 837026849 661564474 761906056 958514042 991363489 789152352 812255798 514268900 909087190 25897506 574144276 705766694 718752327 867892946 994269346 189151754 937130233 814650800 966560019 540186956 887273835 151267286 630115215 927843775 976700941 764962026 882272769 469670598 516461603 471887855 520784983 334713746 677792008 554465698 563261308 132094724 972368127 196187745 611407449 777056955 979551159 609506507 736372243 164894757 742249331 972083838 991674571 599716250 806658065 930134616 996199224 89282310 832036223 788542126 806875799 676582310 947325028 584104893 783260982 410350395 925460829 863105129 916854191 168770434 935036417 942391842 970369772 547646086 873551649 815501449 882817818 935083202 985248791 472332838 837988179 826274927 931159459 224946872 684586686 526383860 932987154 691641194 781637580 854294414 967935893 405372290 734981705 845808454 874298020 798009853 956051394 592330275 864436251 751179665 771252167 65920422 823811030 648214310 714467062 107719760 267732023 931963233 959384717 964553594 982435763 631425519 702313496 326612606 627480269 904232977 918063854 160659427 518543604 776035165 997291472 994763336 998600107 856288425 858203667 713922460 764055113 412712833 480215552 260194797 592862209 723711902 939306548 92859976 116958679 173565838 650556182 565231070 985365373 184701416 358569321 453188864 591303769 536048184 820323801 53689426 340783123 810055548 870568712 496348972 632924149 587740751 942241400 639382709 913769790 265307092 786157750 166599837 536689133 96523712 381622281 71607719 966591954 707278027 995905164 389297467 778432772 410669193 898578875 696988625 956183006 439298520 997203243 565290412 668383503 614984086 791777019 361865139 713587106 338652382 496390829 408016640 611521479 22264609 297795021 141613026 846229346 897184418 946200522 639744187 890773110 675600799 750099634 250635260 442579526 46007242 272740148 305637897 933597152 728757599 803219757 230740288 774014854 569208900 683562665 110896770 474208385 771348363 777094972 485418720 752050960 493496660 814454043 498908047 703424234 968224663 974992088 114937667 298642583 552140011 958793256 560452087 605951584 185140478 548550020 597788792 677282420 834441204 999154692 10338483 462555647 849742285 904097392 678426270 980837270 145892089 595906567 218717500 795476423 780954433 908712813 344650786 882994290 930069202 989923316 433530048 628157419 775449805 795549705 506023205 738390208 577208605 985421757 829154482 912226144 330688944 415423677 789150168 904385938 265505285 425594926 450033700 467659285 983891088 990822944 414544608 775909532 226063647 410450717 106967326 805907122 293583824 990268443 202556879 819826023 587562592 939993986 405391743 791539521 628206248 894178968 861533916 886335050 841877637 873003827 475311207 985598406 689357085 871966961 860603739 920925650 709662292 782962613 426681917 769527176 51236329 444680453 1571054 891509156 989141564 998417857 317818329 499450617 754390294 767107852 340416267 515761479 157346472 650826040 185133297 997984133 877663711 921194862 857555943 987555027 856140142 982062783 893330251 991832054 31961185 165774361 240836886 471943757 783538067 977227587 604911621 662927146 403136476 460472984 348032551 559860137 498347523 892621218 577308771 735874396 356212717 523561557 913544545 938573607 772814767 974198460 889268705 975337370 462719630 626780733 457503071 475918019 767939907 799533962 455598486 571270561 128320565 884134444 867867611 995738532 654019670 743366318 51645649 625125823 20557192 666165926 601610005 951633392 534219798 855605840 174257632 311565478 450803185 644926308 902265341 995339211 795500829 843336214 193387504 604811229 788375588 825838888 957009973 993407666 43549904 838451464 572062670 890428469 606329787 889208627 576591036 911448403 185880881 605804338 781907364 937095513 706935216 977345797 626434284 751512895 303242802 434582432 517436420 982765519 904203560 921729367 320734321 538528065 400962133 996460965 51140879 591573190 934112142 987069345 448970233 582422021 293644185 417819262 243138332 623642740 207623511 372224886 516649228 547673532 281156731 932358405 318947634 415766215 421911757 829221444 610578534 657664463 165031300 774476141 21206598 636222674 833852227 891473953 633664717 643142340 744874521 899402697 161007201 255679016 708397120 922546363 810178202 902994982 213491907 793029763 316265044 751775383 521934512 800402974 282922531 603938332 476153337 612167398 323430264 370242539 529159760 627388182 267091536 863801170 402196057 620638523 90724918 689197023 744153056 915700758 590116522 984540169 746317160 777840790 898017683 977296010 899734042 917406928 177207398 350817119 399146657 607050895 116988041 541867678 328543107 839457373 379903994 474036550 359310357 707753018 569608181 913090915 233226955 390257422 674401994 737782653 113600495 889347489 757416544 851457818 202821844 715416618 415952178 710081883 728122034 855232837 881912991 893687098 906698896 974067576 549224786 847291395 505825626 835902788 374743711 982650141 222766936 633713423 11679097 703015603 387533293 785501778 358579018 416699629 641555368 681066835 170723969 324670426 32751343 225390882 673923214 964587846 876403157 986240830 57537813 202104590 393359077 544379027 109828671 637713152 90009182 196245995 762901 583476232 750175715 942846578 426014521 998515955 88010138 990091721 264066628 866976852 465931841 615464295 556517335 673450915 449558426 540920983 179585981 669751464 841192069 998550119 86478006 171502448 747519246 948189742 292102093 436855927 301211427 395969405 704765797 773071427 883616228 922215314 7074341 499446373 433157573 554747412 361215254 366707564 475333297 687797816 998300967 999272230 400693792 736900522 887090471 988268680 155081819 177950271 462003551 550912306 924216264 929115463 445032735 454459440 55998160 571281932 658438601 700959194 193809472 457672491 455736306 529406344 897022895 994673018 843549832 965022530 74560597 583552474 24988504 967470332 363193994 505307879 862054705 915220653 963410707 965422229 584707261 613781885 99425034 646380578 100929062 277630226 824477620 854147362 940149389 986458575 162867774 457844796 808282603 872295695 814621423 881320858 973825083 983091223 381031729 644640109 151246721 444070520 508674862 685925293 188732241 231530848 331260085 750475963 754130323 951139580 737022763 857764462 963549226 964817251 895513490 946868963 446423105 870505179 733583887 762262243 328214645 460149553 728603431 944433704 168014402 997506202 393191340 876275908 882981907 918728269 993727061 995427156 368722788 963782780 241497350 530151736 85691765 490619504 269134051 378445492 713004837 832206524 662326009 800074187 759535242 938296276 386036462 904053089 218955362 391510950 208357385 367760453 161095410 908449854 927323541 964855137 490501373 815917095 983153885 986584286 368668815 869539159 490367924 652392794 143444960 597812653 547633478 816261983 680190143 954176148 540783945 631606558 198646079 721697760 486855646 848535628 130398175 415370310 264248690 484056138 791680710 795903449 903945550 942415040 971023291 992566155 398319730 884608860 996324650 997509613 325003299 450931684 166389373 983898507 727152232 984582073 473745052 785600554 634448858 905406536 42903634 724399880 18744343 244293900 983939131 999294810 659262265 886462981 653813918 662535009 937695841 945686829 758790675 985838187 57198087 139458229 669583223 928350628 709864886 934423632 152027144 647465425 47904687 692685395 186426933 933073471 311120369 847419356 547500881 837347368 287003673 619619668 157292040 846295318 792065691 934377032 365665059 991091126 882089641 907647832 180026584 882208778 881514487 883101149 359185053 674601736 191297136 215193779 312662890 502925430 966629026 984389824 148908514 842721638 587828323 904088478 100636181 680941968 239170357 339786714 333258424 599676944 220387701 673520523 321646170 479917366 410893204 995111133 681852624 870371412 676437059 940775671 766232414 780425945 636901206 654183877 369356785 939181228 672653296 866880527 17067889 438453392 517884001 872398808 916426562 936139066 333633495 387502454 584613359 918297447 859672207 867800829 622091867 706065954 482609133 913641010 904639489 918100293 986458323 990169107 343744536 566426071 656591208 659362384 200878368 458508773 768670155 875377338 218127367 708529010 54861746 355143624 5223437 837413887 205698095 358530043 729582665 783375272 563315881 573856885 627716543 840694257 691303535 706863189 205344458 647938684 731373446 989699173 724387870 799328120 193860288 879826009 571483028 607244045 12788828 899961736 241683963 254613038 176053407 932314217 194257122 573610800 11225259 107716857 642060218 791693798 935845476 937159509 964438910 980511741 17633974 124665037 219994421 487972746 428207751 569577629 317869471 734689365 366790829 913781135 830467821 983920349 758285271 943418188 466501692 480888028 595389833 820193443 739378247 965046962 16761424 139182091 776773771 971841961 876599485 987782399 623983419 929939934 508293013 886146511 481128144 883934340 944646778 948815512 899695908 961442838 941394286 960410389 595441606 773572626 317349496 597243167 268614636 351915473 926702562 939826521 569409353 929349962 261757696 567263942 67115000 408937259 850075192 867531284 435828733 816192548 620814978 726993782 398241256 767002469 918154698 961336005 613924250 847342194 371048098 656915252 746869078 788790950 38303574 443109158 664049438 814248060 262417064 606563593 118008764 659476133 65583051 642277066 804037845 941021999 66227750 529994923 540415226 777504277 903754280 940213474 564744032 936019269 244540178 548450021 175448043 998372993 531259277 894419757 602885632 676111047 168938681 553841268 623468077 930201278 385941635 890330979 779656085 939939607 92659680 436695747 792958179 915687106 209997066 354065203 345329979 463075973 573939303 809079622 750405003 902424747 13735954 718718289 194440852 427631262 445265913 840422184 130581289 318602985 88746339 548058303 539965662 902888367 461809979 618283407 685802508 745380685 557108712 945166606 734361378 864311092 72851220 113347658 953527539 978383702 509142724 801199345 126513180 951046017 849378323 886918865 313986649 607495727 704422257 923224037 903793422 912117399 738696088 943298461 442071837 512454804 436997480 722476352 943798951 964031844 496900439 671005185 852051913 986840114 648049334 664385776 470746985 967851222 668490012 767719965 831559206 991211086 930073534 996201942 543562772 625255901 49012623 746624974 58087970 475162360 357940964 615444537 668440964 788579952 781746338 861074956 293885529 338438762 173354084 585582472 815930105 946310022 709627464 949980970 406215215 686473478 47352921 377734954 434594993 448617146 38387142 959614969 488528482 678291647 283832668 427359751 684588181 931592509 455337233 544957066 142197475 775605758 48236486 513062417 282796949 415128854 351637441 424935741 848657316 950447101 210747570 650916130 373281497 533742695 337025442 478420036 798816482 867768513 291167129 867949576 575671002 955173743 911997096 988069697 596326828 864180255 845682546 934539440 911006335 982283325 376859186 589886111 133434983 891178612 606129927 685430769 678157302 928835809 164590755 394537879 64971246 876744901 939787507 961844204 716404054 957828697 878852165 888088140 101696467 757742169 388784689 447787673 251468951 651420075 504619572 582129289 764034682 809967010 855900667 899073858 142853192 584006865 870306048 878317101 972269891 997178478 818253936 882568047 964728428 985094735 337460293 472748422 177532807 289146238 740417087 948866272 306802022 800942274 220605166 519407325 670719608 924753007 94948038 935566611 929957046 994670649 369896326 610907872 880894398 971157259 695488341 896722364 973789391 996135326 650066641 930213033 873955570 929224393 223179793 856619277 746584402 763090986 882753980 917632016 113504119 782706372 245987333 399953382 878792720 897134473 932257563 938281633 117830723 673132407 470518534 976636983 731448346 951362096 338279906 609933603 904945962 950008169 367369778 479796654 809522187 883345429 366241513 492842323 151235289 668092185 687685867 941027181 310075407 665991618 219068720 854526425 520999298 860954522 653437086 904378858 585417544 802069939 296133196 432124613 225194306 388066844 620364545 996189739 866325214 917158579 565946310 629704599 185489782 828296896 236455644 708475030 539389364 650786363 939135184 953360430 879359030 990058933 348599666 349121302 309699096 702118675 29341593 62573707 835096866 846169695 154452402 852359099 170795287 994372773 427655906 955142947 461251442 608929592 962104988 994177390 500449896 608701363 243367005 427352143 930171859 945560531 438065092 758247032 589992862 885871103 765019447 785826385 113805957 698662067 40794590 825363519 904294507 910361980 717424588 874919013 435962985 635665780 127674073 206646479 18182031 692197261 974264977 978100789 602082871 694643342 430683396 812498034 522377524 867007790 213940799 677439372 750796317 829928960 174561855 602229935 667920649 869376402 896820842 987370818 744671708 969201179 125517388 731464762 296784030 660514450 55182627 706905145 154132425 911520556 677738771 997656223 433047667 503080108 860416353 909566442 100291083 510930632 688643334 966222643 509649059 915649524 682899590 788710074 917356992 957512476 972338981 981980134 522875474 540415789 110918789 707526231 256905744 973179804 228475109 259911207 913009152 991905538 411092771 656122207 794605745 901290544 504693838 953812733 780089968 864231492 322740708 547907577 538687377 688764007 947463154 984467044 695781991 761330213 523007476 580591032 90017643 632209774 8063120 741120375 186463025 921745255 432500337 740436536 208956430 692482989 668795548 998835407 828095779 884965706 288813345 476583684 98009939 413511725 435456931 869639207 62780941 131913532 965575878 980575111 631751431 952928709 485754941 539762155 933069026 999427874 578121316 669403559 306845438 685393965 746835265 945811635 434621311 475338187 295936636 947738102 930344096 933778207 516492456 961057352 459525144 869492580 560475611 723296302 116754915 325010885 802975993 902291835 978769559 999387299 382023696 409778013 187194634 781866413 586842136 812172820 509121557 537285269 960408178 989588055 214813516 979769389 432663850 761827551 260082251 737769981 388266714 975760753 17545759 814461009 147967852 212461167 136290223 164213566 657923461 963128799 530865445 809321990 877862552 910134018 785971246 901819089 941225316 999503337 761436618 896872964 461078162 652241675 81934620 751058295 787852562 885659643 656226766 866112610 51667675 282914670 466934433 960119092 927827290 991629638 893822707 967135643 399851031 925852993 71178197 423457462 842750017 851255969 42207447 368944069 288726574 885789053 6226149 738821537 209878470 939757357 995548196 997416674 401363677 417442206 8379905 921641535 765022259 884294676 732270799 782034009 938810790 949307596 978160583 994506232 636963804 992531777 703956589 798991569 541863048 748398616 271088929 392990071 906687478 933672074 979613081 995544359 710935024 753789360 877821846 929852129 360064044 775575414 622888065 966636460 878934419 918083023 716350019 814158362 16281094 535342038 85226368 751761455 77636070 321392330 130163387 602882130 66180373 213767132 259639394 697350223 316682805 400902497 17134464 650769882 953209762 957648960 36549547 588193229 776164095 869149249 536978227 936429080 195385361 331538983 740529777 936129176 717608295 826207615 112744058 610821193 282468089 384148185 20486372 175071173 928698739 931138555 345702600 525976647 526130494 929947678 392996236 850144711 892807704 909022097 621476600 826417297 382987243 616110530 763552285 788342696 920039271 978671138 977264037 988387249 780735401 976516038 970162431 990530157 168965345 524594149 945111271 967404092 852523342 973497234 877795525 967518623 402937178 851919014 666089895 791458025 527777268 897019100 540818293 582657699 754179194 984204788 879238843 957950787 361168807 411125224 240044105 918813956 969631147 985380096 179597866 290939358 531777538 874332182 467630847 729716517 354853465 748008617 448278026 990013364 326351406 952170270 939833156 981357994 988727198 991176220 317861740 460905216 206607565 244607631 985933434 988177680 529965407 877762484 242648991 353509684 864115329 979913085 119475254 209714339 684231521 922004721 216934960 433043270 625809545 995171246 993790409 999317772 24953265 663965133 619788469 831512451 748044380 819621814 504724480 652721123 750858101 759127542 168669790 376129551 369511017 982460818 569458168 795163070 858247623 868186445 972143718 974073642 658345841 667220467 999503388 999533515 26533269 572767488 148226606 617763188 906804670 969756247 993878652 994088251 124239662 557425421 513760585 946584371 512951550 794053623 74443757 292361974 819334670 882014838 865464211 999159001 648509091 858093787 675799959 815852743 466908376 865714710 450471700 722467235 447138005 975262831 892479310 945060346 701037336 707569950 169647703 441218233 689258666 717143913 519949550 970696541 404780296 408920897 593786109 833132564 960206463 971459698 213500753 475026791 273987183 607740810 99821475 408014224 364666473 416629445 301916803 592981169 871649476 914513369 11146597 610839567 298377565 946649182 755656307 922982575 250588694 967311587 675521475 942238078 83385867 512009535 208824742 844737967 944448623 979843688 622189097 793926988 170958836 594140340 95028401 651652273 478049096 972611704 682769525 807490607 110038320 259906310 948079348 993125075 967707002 988889829 931206604 979070026 824802414 850673400 68756315 596461058 358709718 952479424 283156150 894581611 753215258 905084982 777220469 987124928 697958936 747621529 830561745 981271569 222461428 827386228 155874982 894440984 483995105 973197459 834279598 908973177 962982290 972465314 275514152 528570570 80125560 670998321 118814666 797066456 85552285 201862286 919958196 979650475 382550873 470314022 824437029 848821116 632837222 806514894 893255784 976964341 678402516 899844987 435987723 552223614 321715630 750732637 178932314 935246972 253082740 723000600 770471665 931020092 848370268 938888655 741597783 890416151 973679816 984226664 562163413 812484396 507517451 978473164 22181292 596295149 859703750 964516947 740034310 834996279 267935664 571744163 573573879 762573724 724738577 956351802 128487094 249196229 220362503 562303922 114641606 652657932 738258822 879482666 676541011 777588263 708798665 811491394 607699359 840072871 985106052 992033089 352659353 715045880 774622203 901157960 466356093 988394828 254407559 883853034 263186045 772276710 613757668 982293646 318381431 840467655 731947287 957904040 370932677 733715680 10773349 895924547 626926809 852663367 610366625 814012907 774462445 892198823 445351227 723920133 490643330 664967146 137374319 158197962 116251595 527412671 500734620 680634559 263597082 335015737 30155652 340473721 286998993 479563862 793549600 966207018 316037341 712600600 830196457 835150989 629029541 811830414 148618565 580169600 193101832 415380995 887276415 966582719 239334169 547470633 616700792 858922558 703428318 746706094 976161253 990715162 73929135 886360763 339955148 360904838 661470029 854651139 710516248 964841005 677204787 735731081 193779722 603920392 688188480 880298483 633351241 708438167 851670242 952478330 731962614 970090724 849761900 865186240 311064549 546665449 804473218 845352088 888121975 932721864 947525298 995726008 78925507 437072061 290031514 313276326 472415868 818375279 143328633 365616963 981035324 992368267 934023762 994389820 628455452 693348532 444028570 728035832 497505458 981080995 40915164 933379576 486282354 857074997 959054304 963133065 52278313 970072885 215818408 570907278 828633149 967383938 809900325 984816671 539155230 553988258 148800233 801091304 940435733 971309137 227861197 992868528 631211582 868450190 351913345 904971674 273314335 714573582 126341388 171028313 461174297 762266741 326314621 767731318 455038662 685051170 233061141 448969529 25940900 253444555 11371246 564630388 909625219 950648909 209242911 774508151 129635053 434474616 768131309 771516447 120667783 583546071 88205728 161033964 680205500 822634448 832049307 950868332 212696807 362513629 938200610 942749686 179257789 910227721 466850083 844014767 514348360 664160626 332699625 901785473 572776259 993331139 380720097 717011308 946732505 991291006 311641720 695358957 810625023 824259443 854811874 855785551 241132444 794280501 631202291 817488470 163853988 991748899 848051702 883553427 556102124 641805733 245909598 422570920 249770445 829737041 177202487 934608293 109655401 450630565 569204762 842770962 90543951 829523851 704921006 906722120 123957417 376128376 555646543 777365861 213488671 255838273 951760055 995426496 876273437 959999770 604677493 672161670 595857556 889809079 880941257 892638181 890876587 993459929 172678870 307009251 173985763 349041726 78623068 273334478 674141129 726747848 139090156 788195922 539677809 759808008 928685076 946858204 827674218 889321850 394561231 966881917 984183808 991048455 333079106 880108038 49876797 782892495 456465489 799801356 609954671 749164218 462270041 600196444 239389615 299544237 889473102 932995856 54753956 189096757 787236797 995981366 217629482 449821204 239442245 833115424 937099156 948055763 156756552 220267638 271957461 325830800 965628644 999509869 631343541 917361374 886201175 892308519 305900504 974647503 980291777 992196406 532683447 653173016 132861308 954877764 318540617 422085811 512426756 526415233 972699630 992007067 910780478 958693826 979997323 991605825 486300608 681598442 715592754 839776965 637084653 713509620 862130427 996097469 322905822 997870816 631409158 768796337 393076624 941768603 82056253 250861516 905406197 976487737 960788352 963287420 102054449 312922418 788079232 964656485 434010749 521740397 32609407 299839717 695210958 956215697 713268773 865632375 274595123 668140507 132120380 576731784 423998994 758870933 650978969 775320367 44802497 754905267 79967809 539048097 512864809 923870119 453799941 579979784 511028993 710150818 297402057 820120721 662630849 791095918 781140531 781441055 62961111 513323207 249393766 743965768 901257495 975675759 255161338 949513081 631797106 834863605 835231933 917267204 751498932 776196020 595481170 797144091 840181301 855832041 886724647 998834039 476735010 966236347 260722254 352233303 212033388 979267841 772351962 954863370 681315867 887541679 580261904 835561915 825746119 841047839 568837603 999203144 448369271 706238152 730192908 864470844 104587110 242060859 1952671 225647076 464742433 590471556 20821994 706094637 219315192 657805276 221458439 267633588 547260483 770453658 209259573 689627077 716850478 989736740 899421820 902866263 297900206 362730941 141257868 224292683 199486669 475980203 102282644 198689645 645034757 937985874 906261189 993818935 344558708 565881381 378520515 516472016 848157624 876425180 871344775 886116168 463073445 484539615 467221643 877025950 326589047 504761396 383446930 984244127 257898371 494200397 168644106 390442966 207322000 640663500 524376186 975166942 335148744 749612492 141495321 590981811 326189655 959370045 125272993 939475718 553270785 570512979 502324892 934293439 772857682 864486550 683857242 739264708 746611660 768104530 166799302 391756637 542428735 741788761 161533123 166590558 569322550 880472472 109045737 807819758 262021320 321447665 591295947 948968637 317836407 400640953 495064149 738015384 37354850 986572584 658085687 760942655 778974944 968629232 460422534 461633204 920441636 985989524 756619448 973384858 349027881 640579574 248976790 336348781 604337704 752727724 530030957 936715008 375121830 815702103 43050362 106039907 954047259 982368203 911478473 987498997 61605135 807053359 552078661 614989311 637508524 730849707 538076212 728484788 861108331 930852126 375005873 867410165 796393170 993791506 282548042 888792591 564323826 919401381 259713124 464414813 289207220 408614980 603972883 846191785 414802817 745171469 169199838 959565588 23745829 40641948 680084136 835311937 142439814 245169393 235434469 762776591 283038153 535514699 425012354 951654528 971352879 977201626 796402961 943503611 510624402 988550976 78735890 795430122 149929230 168271896 696934325 729316814 184244658 507674204 311843054 862044513 767181858 967853129 511780289 928075498 475655233 549830130 28046997 211349092 286541440 543754069 200934616 750831272 189888132 880954023 681993831 742331518 680980941 802541154 163924542 252085024 943672147 971228718 382345531 735933688 502363242 582362803 431910874 480916975 790569649 973457910 808709797 937766495 40088429 579545024 907709705 953733926 102257057 913929659 339541630 355382172 816386713 907861225 663934058 947051105 654209751 806403372 622073096 636001279 513224192 727100630 742157967 931857014 581001169 915577473 222338101 500841490 764648623 924625006 480171005 591737172 562174559 831735113 499732387 981020267 74260726 563456765 191808143 657904836 724736489 959184091 253920403 946065809 25682811 196734480 241089716 527769800 343217589 849544683 698496765 910124983 991440836 997766135 845969547 898240700 848130877 910018268 104664507 807031720 872809247 923512167 839963225 999516069 519876286 973367177 786255635 982311394 306320088 437946704 606909361 854197658 305604487 966028426 346260092 558475358 782492722 924363632 770531814 814942527 898135425 914077792 211607495 748066662 217033365 390527152 645815606 751491427 783397540 878788917 520704624 617789143 852483587 939311791 7052293 430326596 492115673 830622839 97715665 480469187 307279331 737560286 941200935 978577698 512086730 768720694 168175892 321544695 390852801 515705603 187172865 654826997 178544004 902085616 237091539 659297358 619086303 943965683 68682066 250982441 632667214 988491913 879170738 890461188 699434456 809018364 756511155 897721685 620422001 790594680 39170948 138570590 459395527 935916124 270928990 463113474 140502953 519552745 663523887 993969204 142558242 310434883 270386831 991459922 101498849 490034800 654890058 712709757 502797086 714128749 759466600 805841138 620941837 928406340 928356719 981020926 210566639 275092015 157391407 819369188 537459910 589220956 924798620 993272590 5774990 167609560 255473102 709196894 423394434 429000981 710211571 895512494 621497178 940896827 173141557 806581809 45674982 914833242 132534115 666466313 861557583 957747302 332729096 335096907 642043104 908754444 81966647 378542538 4800600 742030796 584511727 827961439 627975508 721964039 490647887 809404949 243201670 670123544 33341715 344945574 157829218 244311600 515788182 720165623 929915903 987001152 126803939 190271934 992997344 997635807 222019135 372164733 31857074 290907980 37117381 401304830 150010338 153777205 868222042 932245706 121981940 790434074 385652634 528972311 25755939 511542043 390601022 873704955 463710501 675610043 680834337 859061799 380556346 822709095 746383922 939065876 886471716 971844759 978047317 984631632 513675528 709024916 958808904 988847109 862996259 863537112 127876847 386458999 619880060 651502040 655486041 911186187 967490155 974369593 826493541 836066390 755151724 816337774 593744408 648250790 948280694 966616362 305586643 714345148 269266363 846900946 604675779 873909100 215634496 722238969 976215852 986911435 731844863 734065539 395679612 847116216 200321290 790031221 356641629 965002562 49282392 949392732 894413465 921921785 667410948 865755572 863819266 937398478 390058685 685316924 924871769 981066953 46668392 262794844 406608412 683312110 29363086 106520633 526458488 582441985 904445942 912298790 132556233 520684860 767900711 878956247 238042763 908019700 48457187 887252267 49360538 374235161 89205101 210235171 606098438 689511708 523735586 817867215 728685826 939987217 689258412 891886741 43126307 808625545 139235634 943531225 483676002 879936859 467625369 893232299 454162826 792060506 844669269 889610729 724705913 899296781 826091772 956115141 672381613 946214150 310117636 535308306 821888537 856138381 824231445 928615980 763434895 941497047 27063294 115982819 56388648 811898912 257041001 491254832 97606483 383246210 719271227 897671625 106639698 659794154 337661310 490552839 119146140 957548331 826296870 904766844 268782540 396139876 988202744 994326242 673723587 913874541 757812251 801268720 535442085 790268864 486326426 817644626 340041796 384854371 866049190 892179631 957524800 986759532 780816619 949087812 383529799 603702864 351047355 417258047 601345849 928991254 874478342 925327302 292010566 498772260 464059097 857089545 647492872 959685111 634478855 720363528 861181988 900163110 718373661 886350243 202692541 467058394 896086215 999927392 494430252 896857698 718241718 795684342 526867262 682676651 427126899 558248948 842332432 924798733 402253436 832127982 285518474 425367800 629380958 697201541 582763540 965362446 535484801 894852499 264451322 281158795 498625576 840062043 848586898 990490970 454454581 963969266 655296403 731475448 704668627 877785073 5477106 93895765 308456188 649358773 512304093 966328308 966064700 982847488 360279374 544575229 769148369 870428740 799709345 882388704 229823311 394766745 523611427 958057293 810366831 976526360 35853029 955977533 676107885 818022075 224307257 779958160 405991195 414121263 857617441 900465707 219107282 654632200 186611807 489523653 371775968 896521119 280818342 441504250 269113162 485647944 215686763 299868914 827686404 928120301 322266936 348694446 885269613 962514454 848470649 993609180 50546999 905516341 868801260 938413010 344912215 782455075 597155132 987232784 396112262 661017783 741894057 991027417 213744864 601558259 18507068 400385873 21577145 328850747 711462259 871178459 308735346 692946047 543373520 662585266 189590523 200556761 462117558 954225008 33840407 51112563 482824180 671057939 879378567 962831825 475352567 738459065 443950234 533930197 289373984 643790372 38775368 909391388 978538531 990807894 433040021 579368782 590289920 974611433 783010099 883048817 809443025 814968698 77202904 594308868 665449986 875227812 884327135 987475972 523183039 660841749 139000970 893259107 127821560 368031007 304682957 351996445 295539972 516583835 118576976 732897132 772355759 991290230 390862955 775712324 143750899 648816309 294976061 403368612 894629907 927994009 45935224 96185905 856121429 917543643 756620396 943787176 366291937 419695980 945153902 961239811 463943842 970124180 666748374 953496014 370016118 987626165 379596488 495010099 356235101 411207967 910992642 946556467 246498984 817148277 253182782 771041964 763263790 861419983 825825784 887407467 920886986 944148459 313390589 363048919 109802372 212997208 651285652 790270845 270059478 482737460 306369128 329744299 33804473 251322044 344516201 814573199 297470222 746277536 897353966 971116502 906529495 982575086 387716857 576901428 924639686 933586436 941238511 966815701 802753587 991133697 535874729 720436749 220931047 957263563 485390443 504765508 145846821 734485660 39290428 292569531 498421338 883223070 572508961 932956617 582157169 913112325 738115910 956421956 934673189 936146549 608319793 961815540 839303210 858714256 115658554 307053429 623873640 693786281 892950811 996424675 537364916 957211411 823511650 891679660 834049706 882376059 712022256 949342809 431093273 623002368 934681420 941231203 922680716 951258929 338172055 823548398 869772881 945808710 986360067 986621670 573672512 799626683 135035415 388329086 500752360 982730196 370663756 554760977 859105521 980158772 634859474 789787229 288213041 487427407 678780739 915093637 692007998 792461169 699833686 758106399 643709253 871939241 557898204 824567901 178936301 221717949 595588715 861402909 801616135 943190964 679005127 913014268 45974155 869263314 372775430 870133241 713501389 999368674 861155490 949215893 295933900 836312350 407811698 943487671 926049672 944306014 660348142 811094694 833331376 889485642 770467955 987008907 242620455 997964289 448939515 688657466 346881983 396185884 228910454 976172388 734838098 943410769 663867095 814203014 1851098 506765210 193242017 457025831 66953471 369072154 970789878 974856396 403804806 711007191 950313674 988319326 335005527 970998398 308949815 869143058 103052103 658040598 353109588 873770957 930122041 993394850 80093291 876031859 766129546 967849429 611303969 749965027 626801900 715542742 218226255 884509468 643370086 666900381 654626715 831352040 992365024 998459728 789148884 856654063 858449920 917612793 693821938 996409079 729638253 752543552 462636359 677306744 45706163 314524721 283795149 982567630 980320692 987947074 594759347 794843850 917377469 970354416 13707888 552641860 766266229 989440588 198169484 468630835 841389595 926419723 777850101 991457376 455782183 746017357 242306233 992120978 416468339 974373691 301225653 356151554 799909480 964463093 594455300 939214527 769039435 989942558 800616846 866976647 602411146 879978475 332862785 401357823 368240706 475724748 609017952 808750077 7485329 692744853 480857285 557513752 61580901 164724548 988783841 991708384 519931723 917254045 963311476 986389486 188553737 820361434 44392097 805461037 423869570 503599825 786904685 941263413 981413606 985526926 825183994 959479175 658765094 812710791 549869910 923776321 317307593 867964759 5000893 922467219 204966725 586767813 429390291 615965248 869560671 972114400 199088435 666172419 593116010 918548367 444390290 947632888 144461963 684240556 222768165 321960503 373831161 750374021 759769419 974187186 146702333 175220893 957444180 961383794 112154680 892502284 888412236 966350001 705390639 890211381 844089226 964683704 636952698 660737426 505322308 538886981 570125817 702096393 723558051 939740892 671180825 818095832 949620915 964937352 787191918 850426037 703668944 949732857 302914171 941781217 55751620 263664500 771376624 872362487 107781184 840804761 827088868 944554159 527328932 831217116 377611214 739122202 705302086 782771202 328995655 867753384 376277750 923157139 351950519 551414968 504693508 902151915 427822458 464492639 879713914 902360470 662629712 891024983 613052448 759175404 603495522 717223169 505447601 544210232 752060575 778235112 125563741 836379076 656984244 770919820 971724623 994516429 102161213 855033934 958300738 969357967 719470391 909699594 576816422 956356383 466744787 768650919 806079469 828897087 84011953 783041377 281238411 345739451 489293960 530110796 661657491 957500103 543618381 710570285 420907247 917794320 775300399 955638445 321693909 771653411 676697068 701429603 958623708 961223417 590453199 635546619 251075183 270752831 390403826 777861392 588562445 862339436 253480869 754864799 662308978 801447208 78350010 203035044 471235495 663854319 869651921 922232860 596375084 755869403 317910110 647623642 483122251 730647710 684874739 801998776 584945379 732978006 221614914 651686607 429157009 698357224 915900920 921715475 805835200 981225210 315005132 354790522 353562634 808004048 108897851 922037630 845133331 949619022 501754925 636389557 21896620 125163804 742986464 972456136 878050198 992927941 53755538 765107763 125601983 471680675 496024982 705386638 385613155 993530970 925640738 948682352 362536325 621891406 131495536 474369447 616723169 965944971 486340805 694820981 401760477 657302402 271054629 425483410 765560693 946852098 153184882 459354037 550171213 929046060 269514933 928274470 732589516 824780664 178514181 293163135 413421731 437278128 251087762 876730410 941141751 971511886 149802775 418945437 952311659 981856355 963646501 976593483 824784491 859467365 10436788 887318704 723958208 987979784 421216604 465266682 443659468 453342435 467911047 632642860 763326810 861235911 750584405 921531376 834767293 992161472 824862346 990991463 619856862 620774599 974022990 999573855 957775966 959899244 783306479 787744437 863456870 883719289 614540533 615331750 152088027 599214494 83351442 794104616 604344000 793140584 408825749 543257028 874443786 932397079 521737653 552527095 827323315 852982551 920092104 965173914 211993285 587503496 519637227 687357680 727137274 881636698 967895439 989686687 613652908 676611299 468633464 632724630 345147195 759476404 707366478 914983515 748922726 943796918 678263888 873440025 147185904 268496523 33541129 178221990 108395287 828351936 714655985 785768536 427364041 735643732 746673388 912983474 307177029 539763458 834001924 888823046 996286277 997719922 496626709 520741395 319557214 386911902 364298157 716886868 642002355 948570680 766132307 781909242 333427593 430176595 739231536 809520647 780851342 915972334 776793289 979678223 468673095 763209375 641744767 666038739 393797203 476463136 114107154 154324531 191627943 290058530 247680786 730731195 28730101 477951691 259239341 726537576 615892239 837947611 235387967 592451170 360528933 375189653 398268161 627373507 904372288 944242905 260609560 905321691 80760571 88036280 389384366 868374769 319903149 810739579 191067507 300723198 645125245 745860914 381969214 658210189 394648484 606825656 131353570 147112054 204147864 601152115 896926387 927441173 900560785 984057226 259516724 379084401 807009563 812285048 79984199 861331483 319817431 377990345 535861978 743456753 699227979 836614719 836995744 908045875 220731233 795526741 753570512 899699066 194945071 433052000 508804363 935556404 377329612 472825877 590181192 626276326 341123938 816848743 467459948 628903573 709517341 836464754 203433801 559661579 4430933 952433076 346502812 912571929 753381619 791763146 755873974 946838284 141463004 753637018 830520853 902959538 864310733 992325368 744889982 946556286 971454637 992977761 737211405 851939416 330325860 608153103 401793361 657997311 662390863 957187462 509012850 742959732 799876185 884929527 612788486 814089235 238739983 366139873 65338991 925824892 794465052 883150633 95824030 294655370 983608313 992762309 475409612 572424934 181313703 797289531 131024680 249500974 816263445 859316505 78854733 125817247 879065496 915099457 563980098 641600220 439762569 534238811 548952713 664151200 869530913 924064111 879322930 973836906 760773145 868749047 282823166 642324002 519831517 802279784 45883596 327245573 148188637 581788022 419055577 683948457 901652396 945505332 908020952 949888856 794347565 993728899 850525869 873016413 275927960 295997360 821495585 944532005 897639390 902124048 532817550 681954602 140444053 343389255 372770141 564882598 50865859 998157106 423578876 654767018 219464933 932319646 795739385 963600336 502863093 925638618 755791897 925350683 991408478 992730774 369724730 553021321 359894831 688808015 636491125 962741090 218834264 492112066 388947259 977911627 43816201 184437553 130195713 434501378 924888709 977903444 83157475 835501438 294571468 974657773 181121239 639679067 755452061 822130733 197958344 879208119 755055925 923525696 478665062 858927118 193501965 300410527 877141870 920137491 288389513 981090182 929145346 937495137 828308722 951023215 872907484 957049776 737971434 956471407 51992792 399728437 99339652 628697795 816938464 911740973 152925456 831835884 932066588 967437657 67569301 718481983 794054556 943332820 290037146 812387295 304912914 400618563 738757438 860403145 980651704 982150926 325636210 605488328 204926233 751074796 287023435 746780710 773056595 788996530 37270621 933353601 149173618 623056218 889486912 949337784 706504617 830370165 931826243 933956346 971532313 983899872 552393005 859153000 16512608 506903252 695086225 995566010 624501481 829746726 491430730 989809767 450927644 514716458 63168944 492932379 719665239 797305176 447410514 923357316 911142775 931538872 913679442 985464739 103730363 913753229 229682137 651885778 97638231 448365663 628010888 799798805 366525594 628244188 545728799 715132299 719266793 789234371 629502576 997264292 559877574 645004349 877572845 938891158 578253136 941087048 614748596 929351078 192054190 198419957 84923203 306862854 394726515 471355515 364043689 479668237 240169752 890552576 413968567 771411805 463167161 825633831 635036098 765116182 484692057 915037779 216918760 218378154 282031981 293994814 891013026 891680487 38109441 259751089 898743135 947585422 977307718 981451362 36758429 839341054 797384279 815193162 428191790 473964063 984739264 990339628 637444684 949407480 580835452 870784140 620700026 690550106 630872702 798934882 203254436 396258719 139264344 778266369 591419303 946177045 424604911 790585527 476785679 781439364 554670192 896441958 916929487 971376625 174188416 864192603 320900228 386854399 687495546 935571116 399733579 640151187 232374249 670624139 799555801 947199886 443005615 554243513 869978043 950107575 899268615 904780574 42938756 467616581 543458395 680610750 133284738 474349784 959053730 972850400 688407280 821304512 300672167 633459651 722771468 924568920 592734733 976183922 555863303 726604363 176241681 998071722 641526752 720889012 77271144 971228586 854702077 989898803 388067906 971047412 885698614 905631747 272242618 840285821 461150179 845169412 167736206 759440644 591674358 745045055 42684288 89141793 462045940 931892722 131492181 901427080 403732202 974880765 982489519 995901091 158840963 461388658 712421448 928513581 613343626 907279022 500452942 956837922 303814720 609901668 998693114 999016139 197038675 577349973 853442901 924671856 999149072 999607829 275007817 824940954 93751429 767328709 618024453 662563526 537232066 967852217 961166173 971637689 941379028 950841915 354687906 615116625 110629027 655232023 716220706 835785213 312814932 783882856 763545791 833679252 434479495 812115305 312635256 999132278 159053606 969024124 258199257 284363152 143018639 632132946 226996435 747488993 232327609 646246525 476310453 968827671 158752870 328431457 655141962 878706505 243718950 591159786 740760685 819420080 805199950 924765066 595595172 713274872 229866285 242403458 72252897 913703614 574609832 594631099 834270161 942556876 473159865 797136244 75955334 971991192 492758818 661732751 26417608 326969332 658238876 845157256 717144681 795165913 748798832 956846042 734410370 912675248 310335737 357997181 394433888 643140275 773217709 859066981 602424874 966869586 705024401 875519954 864963129 956645500 249423745 677145644 491232910 670039978 124998193 395169928 310440091 482569392 707092428 761815406 299790417 361234874 425363121 570004191 136469190 758709229 521216841 649920664 614142111 762973673 51620502 896083882 567622723 971729357 587589133 678060236 344793040 558560452 427890511 588286450 869038958 997435152 547771154 627249482 442589983 677413711 305612314 842347029 317363620 858105323 524041401 688907386 183726233 411028769 872780990 927739462 525725341 561048097 848587389 924651070 995834946 998030878 892259067 932841310 420760079 999172589 616387645 927116316 29806891 769755328 863920671 927955015 434940515 822369874 845433747 934592316 2471109 38135664 532520034 707094077 376509465 512065835 661711128 889699743 725058580 965465987 268246261 350997125 150068168 572979289 949989391 962776546 150135118 300731174 352914858 817811466 945062018 970624406 777381348 816991272 426809600 892290970 41240696 806323373 1785594 978347151 573739704 929312787 758589771 931115874 627806066 644372338 666031630 927643557 124647148 408567696 445117737 622275056 553054645 727208779 647761598 925539696 347624482 440311895 158899854 345885674 99355717 611315470 811119849 968690201 947352142 988412274 237416899 643081257 597148269 761484515 681061337 713681065 289153464 917132031 383211028 506669095 464181049 582974543 385703895 919952825 195325380 998581357 345282738 498132808 323960347 967568634 557659708 739748803 907437304 926435171 334122511 408180596 269983442 494981000 664049375 896132916 825971698 898867697 221910327 576884935 954909451 976008607 981184182 990729776 293468499 892276417 907447318 982387178 980201582 996862930 631025755 646706379 294809241 524171748 956434578 971220646 362405367 700753322 156571334 424191348 74850531 851504941 97526072 240660181 484937807 619033853 884567750 950728919 473135708 525708514 971474584 994290166 748591712 793966075 144290617 533856851 708368792 767947245 710211057 955334385 334169176 915056861 755182737 777558530 819043115 903239130 454370177 708362168 215937492 550256470 773247889 868756978 927123572 989326363 135773324 761029970 979796113 997987980 468369670 510940013 925581623 972618684 742381866 903772598 993328611 993993682 516636938 751072683 94622593 650285127 907335155 977868604 898730674 996315986 700080580 946751657 650988280 967331007 137068040 408053487 681408290 733185404 465939278 894928815 679469797 731667084 717767137 844920266 585968648 938452127 938014960 989326084 160539758 691367770 520223686 855278478 116944403 346121955 533361828 759531982 15517516 57269943 459216276 657617628 508077711 950506423 269689339 938108574 160316603 344874280 217602443 776769538 76023314 814280174 788721299 838964038 718178463 843515431 754367132 758201521 250870824 634112517 192826083 383575488 120932830 915622608 504762632 668112114 320723812 825403979 276314300 697732078 924566612 958836907 410650028 717890444 932797404 939396048 905519336 942091020 140996584 779155736 15272035 394433179 466610867 835004397 343591460 973625901 179698033 524761468 554917892 584942269 317679485 924797569 519646065 865728513 455874907 666747426 302812783 668829976 298490600 490056301 27667651 775594354 603919614 664087135 693290797 879188598 794881472 851418184 593729292 667669583 560659043 806792662 869161206 882839827 491344712 715177363 900341624 941098132 738236110 967283502 69029511 457945712 416256666 556520685 57228521 392003133 472674689 735638301 356481506 781106569 347548132 600833472 407897287 753080362 317737526 482286746 574960569 997404015 95030148 226750908 350803769 984070910 471777202 914344973 605146581 923572985 371588006 602514578 677026046 747485666 774458155 822410822 279846775 568875859 993898071 994639030 521212330 875684182 811601299 834092759 537975012 943053109 374653762 902190837 400020074 547624032 57043476 578049352 98048221 396372702 730669364 950853207 803920742 807038216 135079113 760361067 835525445 955833494 213554496 847352539 30035858 659890630 932920829 998092322 604048425 761974169 691473116 863581346 47638060 484353282 779712429 847064100 728490431 737697664 614478023 652262110 725668429 819568312 37555172 699997387 617565888 851315923 873588622 915918251 495323463 621837084 99029605 997732545 892579575 981092486 45541721 630855003 556990722 999870013 304973665 955956942 8648298 385054466 327214549 619302190 531782976 729314567 220499739 821308093 357757259 933521566 731155078 878708191 191317378 481488360 882851869 953515187 519723074 928346358 619996891 730439686 954839955 958266054 989376318 994248020 135596954 642358992 216565536 544306137 937432606 974809123 670509869 808438846 375871113 985663051 973624277 975073734 393104922 969643479 730985516 790938264 369867088 933847436 640809224 929877229 889124733 903416085 432755912 893735877 393983195 625367989 893891285 951956203 351738466 473719372 926141357 936112609 941911755 969557174 649612204 880045542 925164129 965503255 739315474 862833861 795181657 817321861 86287969 955055019 119313986 623597144 302353642 956332107 312350679 448564911 632067560 948052595 331754032 644209246 666743232 964146315 757783029 857351138 528797834 550744069 432413515 674096136 589821331 728149978 569502564 960316707 753075037 973517664 135696969 315253434 207098615 960112299 208995031 517553156 22144652 536151722 929787819 985225391 862006286 936146472 494140964 514749440 817625103 923494425 191242905 272183373 881965051 964234276 453760240 541947261 392730372 647381642 795330392 987400655 196313874 349040547 608608722 785218038 965991717 998980205 409432435 526981387 280659868 403784064 480884309 709116552 533969482 993513938 105399725 406671461 157325775 181346791 433068342 469985681 106704448 326352146 152305906 400904352 89841092 285353185 284423683 864516587 45973415 717641252 285945964 776852570 685799707 704241222 30732955 45426604 583468442 608480736 908838368 978026141 240677222 948846968 281438971 576980925 495100997 737747861 608544027 826089184 905870815 973504159 299964159 500567258 903521881 921945268 355636339 977706356 868125810 974703677 686955873 949768333 345217799 794111372 629730811 777916024 155257179 532092837 573468400 698692098 770093638 846389257 593397672 935608384 103481236 588110137 978146487 979931241 684815786 720253475 239527308 484178153 653740844 981769825 113070034 639536444 364292386 625390736 342531088 816498110 949188529 980912656 33764886 325938437 460939591 525875586 264114021 681588951 963517665 999019178 253250546 939041913 248835073 445240412 452019212 975485847 822176306 871742261 764819522 769040624 961427856 971877685 536233458 688764808 650738649 994757668 591826773 640777153 993620248 993991517 138002597 815278160 796204081 921239982 242732958 416696733 6947635 782211190 595401885 903078268 717535257 732859813 986524112 997353846 671698919 840677644 83051769 149305114 884257478 885770486 346245943 973621433 90181176 200026332 300470305 995592089 666718230 747342003 690806289 917867376 877911497 889345144 17761904 929699880 783673768 787858517 720583027 913222140 8518922 657704690 77973522 690593674 104042626 863906337 436941724 907640322 821467550 873292412 359094902 532375229 843381680 867450801 329049257 799882119 959988955 973819622 358318329 823951038 906567748 947774848 10904705 369353171 944049590 985104302 781468650 845087577 733769998 989545169 488169362 635120421 781418589 909845544 134820232 183321372 62178605 660167095 229580675 842078263 5348304 187718647 823375919 954716599 644694874 838582582 902397728 987419901 625806819 975033874 694013441 930516177 241415939 427211688 465932157 895775342 263380803 480912749 449684327 607302970 899457318 957792747 943418442 953707520 371054367 659347838 786401987 826732911 672046936 852859403 876653953 989832783 145281687 613415986 112617488 411343321 276290455 978002186 524275339 750579381 802663552 992883830 687206210 905625290 944227233 990078489 516479320 954040562 765378583 893441441 543396348 809368740 225316392 364849798 144180405 492760205 752218229 936019388 96619425 217273796 574139682 645649163 220625415 381056731 37634175 299754962 460496234 963244645 815591696 821074012 911940196 914392609 781153948 850105493 827671444 863757374 573971852 739264268 695695677 767274059 842460225 983957976 206210379 822486518 79785140 604580770 648889343 795286199 348155323 607045893 944428772 959838639 383868581 566355876 142882552 621508063 520786737 657934524 488611144 999435957 201003262 706018084 671074361 951964284 116584194 398469183 515188745 627896888 778635418 885378984 908494813 940759073 196372396 451419150 298216414 865804513 920823902 930076701 796218180 973250433 864274293 964131026 592371851 687825853 694136005 892252702 933058232 933303351 582768947 687037734 322386757 794561752 475934553 684545804 201792993 594745579 147511829 198502787 881071849 904415161 750106167 944371854 270834455 495646225 283673639 833891644 873935067 940608498 658740466 955825309 408473767 967403366 908713304 980281646 79142829 864929989 648230936 790563503 907141516 992390067 967879198 994719028 179755186 188433916 104848149 128225580 978273788 990062805 220343851 512363158 550512736 952862279 576773991 746328054 104737185 823407862 762806709 971912640 899488036 934496636 842207461 912395785 230261183 762078907 260703421 577008674 254570715 903438289 877529052 942286989 471902929 672911698 830859331 945753115 51048352 395344718 375726650 582999357 355134817 394003305 683136565 973381421 617704541 744149649 774255561 897696138 397287327 868230367 789621499 872394303 859112415 875167508 581864923 594919232 728595160 730620988 656112407 705011656 604270244 730379745 258924646 296326518 877905453 940824914 246954094 592736978 604375569 967861284 984675356 989263168 24286658 182190328 151573351 156674503 314187769 376257527 581362413 697997499 386492402 538807913 397976466 664689207 98917436 143367619 954553401 991007159 198201629 287860774 859615323 886408344 406105587 824237957 169347066 278802224 32696282 692988535 6252857 897795614 61198893 443269797 395419734 410450142 364482696 627535034 653024988 793607986 15595543 58617298 884069157 966041317 932031038 987075489 23381988 151309419 840779169 876491181 406165719 903244065 570689223 816798722 871867538 937553302 683415108 992896203 891748406 903758698 650137072 855814759 931116438 969122014 312162857 900276160 77536491 993016045 27413914 49526956 868950034 920757783 321962216 829877469 621765130 921743670 319595982 571116215 593440565 972893044 805779698 976471270 120819208 996692789 593332991 963307833 587520400 913814519 610958128 792266061 596762381 745238047 82374140 742446794 295377497 936180628 126499328 273696460 73948392 598349890 827575060 908236861 141878974 405910773 204763140 417889860 372834952 767569503 789202869 822204512 262180416 727984146 884101001 886008216 680850550 981642031 904682504 964074970 772188510 845925123 832768029 971736086 413788266 914510441 179801935 260301047 377976498 753450515 988000013 989390514 737340686 794814787 470360791 942294148 207413473 612580829 837721749 852075048 290642339 834256109 154747638 170523298 171507186 840015665 615733585 894331764 621215479 949934434 487374064 981804016 756124875 794098223 773878598 836335748 761742888 859992902 703183783 809060572 327006930 542361311 835576698 842758395 168909333 403557447 538327305 929038298 768341885 851646729 817456111 886685778 433590601 454225773 216229692 690083346 207882661 708551268 977134145 983619986 274086837 864126793 121581844 425930529 16811909 159008575 42109556 305869428 728821336 805050250 104954148 122082766 999592415 999657606 392930785 475230626 920484316 983767731 402271917 660802065 861006843 879749691 962032407 975944370 555057220 979713078 980914334 999412731 20705027 758818434 413706882 774776534 633337165 983002137 700070121 778222423 916676570 987892685 943841731 958590589 466651704 779070071 374458908 914753685 833307754 852438555 162481449 798562607 41356824 895231674 378005907 491402084 872115592 876903708 161075367 314908730 789442827 959105590 402002575 950683877 881983251 974791178 751817610 811802464 820443005 921547762 699540649 944907606 792976989 923363372 329981582 501900115 707681627 861512902 492373224 795332303 142890000 371682603 766186005 848507353 373147408 728205628 928807079 967317099 244224329 257114200 45159204 217780827 820580254 996539689 79451607 543793901 286181964 835324371 50591030 208234094 381946968 754228024 538541697 858373964 967960624 990586427 58977096 353740152 342442096 498893231 414541826 449208644 163813582 905309328 31481591 802140550 650574683 831614120 544044975 984065974 472994374 610419124 643783395 955728216 255948545 357816509 90062922 713375513 39484264 301767413 637811569 694517194 359730808 704878644 896615642 924849222 524005036 554697532 126051860 537011630 331662176 650349355 990962315 993218171 963083870 963551296 511453064 900727061 884849949 985152662 781689585 811796990 923936964 932521878 485027922 594280050 433183629 880860971 248028351 335794552 237844319 529371413 982600057 992060780 948872749 973917840 387309860 809628894 796954440 857698968 214151882 587362373 30518178 784105303 331958836 487396588 781938330 869100536 146620702 357974012 567663735 651161220 668963572 669095565 411727889 628894212 300752392 869196925 116846275 344463437 693466945 874212983 244545200 269518320 291368449 779653011 999686440 999972802 615280253 911573293 775302254 875173067 553350103 710783917 942627193 950929227 467124253 612721964 579088388 727652519 594322668 811934301 477718062 837413018 166489758 969112334 16366067 892292345 749623779 989008634 892383058 977669984 325676128 832785864 571360047 720533410 674153427 676666173 289281225 576995769 61234047 844091300 436186772 491527653 542404677 568314681 21601321 744256036 767967227 999419902 58479109 170219439 324178097 881327950 856609247 940955293 772282472 982658050 133295021 155778690 207222846 514320601 798709590 844099483 853857609 907024501 420194539 976793556 958934386 989692425 850948843 910844148 783673293 945421697 546358959 844023951 22388815 940574936 716941832 967029280 109014732 208078921 332821955 523496038 282126683 450120437 900224937 947153286 643331611 941708206 470847106 749410074 722345555 866697329 804075533 975246386 37135088 289912778 274762474 783923657 28517747 241469937 814174997 928784738 820528802 835984086 601863363 681898304 977547885 992245655 108787509 551189813 13321925 253611693 82851161 784361374 859077484 870466098 15413083 792885555 709179813 713404980 604791341 655277869 380593074 668347633 347428638 425524062 942196891 955631906 490783853 544112045 139068189 163632819 926490881 956152540 345655310 908044155 446483230 697815202 743004439 757341798 713868264 877938072 619152992 923935024 556395060 964523471 189890437 903550164 852073583 928655154 983247901 991286277 963937688 987418555 47728784 330226269 861617107 864143807 703816572 815131853 587611106 889220782 554796833 817363895 678607509 835926567 321980232 875265473 131644419 744362051 339376731 640135435 757202986 931904321 284581638 466416294 809770923 820296281 258906417 568521374 714142327 921570672 789980377 967783759 1817655 338838309 394054775 717955181 699218026 713137481 571284757 856973564 488685319 843899016 822535029 898878299 37942173 218508077 472010886 866469936 38357833 171865174 135488230 516224895 515128912 805820820 708279510 844355973 12138427 304344717 397566463 964805209 214168917 443352248 533147926 610353186 134106053 901226128 880108402 969190386 279778496 977370282 694257495 733805635 711294631 986924169 926992339 986622008 681599698 767004432 189421527 967964324 13576300 428512288 944175196 965565941 931269522 931585512 511384249 853347339 586030168 712330234 732148625 958584131 22671792 310974587 774957720 958863863 872424860 874450073 750916765 761123600 842053737 922444803 297516558 476598643 546900813 855350314 937652324 973569203 181872447 809497612 65828682 218712408 951497985 994264778 739382862 752899935 337936890 530208234 577776396 696933413 861291992 975158946 221676409 638162594 930639455 967375817 628583697 664077889 626288211 920756083 946087043 970761124 200122661 514734550 652831584 688394832 133256591 540690022 309433675 649732844 362245731 453113385 170101076 954530326 949022647 975406768 878197782 902676762 316725498 996201358 695528085 993523545 254253437 598802271 492078553 821556966 500504717 754276789 454788745 797622727 265292083 626214453 399437561 634117488 701465386 785730831 423055310 823472922 47972377 766687125 671186296 918620780 638198187 754913270 555661892 809797241 721977975 895409893 555546056 628252362 672269283 817160747 67322028 625769839 554717432 814457972 161917397 834470756 641890126 903595668 626724181 978735919 686957056 862065894 508329104 574667003 62932439 514701173 194569572 849579510 620875173 915016775 915514869 942543950 807162910 845785263 269426443 747315865 948122032 979392946 32397892 700347494 99636885 600334943 141499718 746204758 938359866 946785099 702057572 981315644 70174591 716392707 111632167 242281059 599875702 962686428 634764783 988945327 166725921 975630841 694294617 725191992 100799307 779117864 684321825 687260746 163689324 650014331 956486618 959199826 834568033 910553434 954022391 986982666 710903953 746117398 134764973 574489374 602157294 730132840 658737116 821544988 840280853 952731840 13845635 628660199 4447416 362021517 556549051 652400029 614064386 674334559 614084401 839412761 691228054 889464453 569404182 737764316 112675216 882935428 672934793 882146423 699948412 758222759 247341332 575270562 285423925 372203867 51398022 61366210 259447039 630439667 578287116 802902305 819924482 883962511 206912137 830395404 131642485 945036391 288246293 913434032 732703600 961559558 477602364 756973418 23277825 161527158 4915963 489770149 486362954 675155143 309203592 806850826 117962513 447112999 782135288 930880929 753706206 814338674 272587497 880287421 487754711 977386502 26251497 404181607 879475787 948526808 454418230 844910609 800870384 848585013 514231979 583607686 945134091 995626593 840710688 908421650 986704708 997671583 170118609 501666874 144918562 649718839 557498818 955453312 50278748 651025969 462591814 817327182 68672790 363689358 687881453 735697358 608621851 687356121 126231753 128287975 830071144 940162656 917226834 934900722 471427221 860331186 245020162 696829118 46966058 233077233 494015332 496728967 328715885 419748497 696876539 987326916 431260929 883175541 113631559 750712558 107254932 743477233 218704821 464091188 650579394 870432684 266741982 544183765 632679214 686415519 840869030 847062336 863177347 894957111 390339069 677127169 926299195 964436501 312517521 521569680 117306210 387876023 615284347 849984476 337711553 622797442 937189636 980459480 390594481 444122593 565542216 800192760 325310286 701699836 974193950 996064473 257881486 447311599 726120749 782404956 568872942 644572759 996522047 997550419 786425731 889448191 974075258 984206912 449170123 731292650 521027979 857375653 312428707 829390657 838736871 860299801 786798410 873717547 936503903 950082950 952673044 956258130 874266720 915807312 288184798 500385154 599998635 775648547 579574654 608698449 954846826 970147641 294396412 768978297 484872477 642476599 175384729 368799688 255834439 498146182 130242173 831434733 782979106 989277950 218192979 502231158 282408608 954168915 388709470 797407183 650486026 932339912 961712329 984036406 28328262 351334248 932841821 984560215 259353126 534276240 230469862 993176926 975317015 986381293 148190820 414231614 649276579 750200359 849960677 964650840 327711750 747398185 41314479 785956775 730230821 901367702 472539918 665370900 934908793 995469927 890195922 929375869 94105985 193638593 871484341 901214205 214956290 308918329 854367473 912944875 504556339 830954602 887179865 900143093 706611985 749542177 641770369 754675317 70986205 590817436 296288192 621050840 585145280 621952236 161747590 315999422 454197937 871634488 982584230 994007708 123732829 434271265 421418180 779890228 542420924 637988075 249868260 581515593 937250085 982507597 706947850 948239107 3864187 19635086 877064885 939113806 812711066 988468935 178782884 677632951 149798295 723116860 352422473 909639990 674226104 723215897 276585228 302339371 471873130 612645904 209200707 898804657 969098470 977380429 713627942 778207277 625229313 947116101 299626550 619701960 640567066 966410300 83118832 560901576 82784320 524447328 306516414 475751366 339653200 483302252 120854088 498904449 142664168 898423672 848805926 941953867 151414953 536379750 375522559 759212916 338000521 403462822 211673181 275943567 110051216 194076410 503639329 708663250 283306298 425016637 334516934 622812238 273383082 978039081 872655766 939920350 346331488 482236022 192399707 335311119 83340780 175148986 44411946 635112130 588973425 846045542 401221371 757358768 605636302 609957655 269559523 726274572 667834788 919607961 281257751 783799269 112486902 651279277 498511374 751816289 9435146 621977511 22837805 296764600 130186394 410404385 248972078 897115828 425463543 855487601 822585676 833651119 655762961 840708291 960497538 989748692 329357993 516626121 370448409 903044851 794355627 866496187 666148479 974247876 494380479 557618865 370711841 403243244 832123989 890565466 926079147 963951684 452172267 804393691 531262569 677247634 114988211 343405886 66485239 308570809 232414309 558551319 195040614 596177141 479369111 996498297 16676537 916193098 301792816 844922347 264785745 583285662 654911618 951554530 299013248 524182902 468043498 520052761 765754556 784896901 208516766 847971527 450316827 919868992 741342252 783231678 21158423 658583307 607650866 833952737 280078585 775891355 341857735 752045866 927577159 934968522 520194886 905817987 397916135 961437483 82245383 361526445 838848347 936289796 84145437 265902502 182282592 729470888 671577918 810142371 605506532 717996210 660460186 939800319 104741530 455179115 69983384 513196080 255750317 914148103 439075758 822931684 369893134 585750243 252622669 433150191 668775507 775885582 326422421 899892519 753150093 822666782 981457228 996285087 436204364 607126441 429787730 933353556 409445173 448170682 69826638 544731776 752121679 998529730 923161553 923313373 906457313 969732091 908356155 990064939 91850244 362959151 759671809 949133757 886137764 896127526 97111074 295066461 770404453 975914417 4595129 777039559 134491517 411831262 426136496 929630817 753602038 935341653 232978705 944048698 340262611 559621269 409720990 946800754 175186008 398616805 55349623 943167410 987593468 989859821 924126895 959407819 870737208 897510084 81679477 671069469 370885799 407487733 519687044 860043497 230159533 236000049 125747416 784451889 257942619 371783774 165094157 781735218 412350688 968870300 824558298 861283856 94260052 326490843 915272255 981462240 255700194 886929617 518366940 585577466 238053645 400085288 585828488 774720243 960626358 967653255 29908933 310399144 940161023 980817938 922056767 968029724 130885269 445671523 821362135 873490686 845061373 859196077 840033642 933967317 252541207 345994816 268268254 599789679 405129707 448238741 851970031 913569247 524656787 982430633 617239320 642849417 903699359 963122698 435479836 493148602 105292162 191800200 850760141 927377418 927775188 932978984 590434208 764671637 501400990 776330900 625865551 956949027 849429820 855513640 34779684 294063013 391221289 975945187 268548109 770346184 445538157 939098753 813516173 984151570 128234858 371011658 768125321 947423921 792460121 915908667 51531864 695841767 842773740 937790036 645452408 745898740 767785803 892778889 488691384 997084629 105341044 973964912 260696847 262212340 128489004 246050751 191991469 567879177 528222936 944657442 818975584 969477178 27831326 296409170 946926491 953680850 858666568 960471072 773064665 845113934 372209669 908741461 371686478 594526460 809707258 967269419 270588661 386950000 60410713 822381944 518792229 644774656 642603857 682646618 661131285 931682180 651616411 943229074 459166984 668355506 636352356 733609669 165325036 469943062 42452376 235977399 67945906 364095979 198176643 342532654 830711922 946304372 615403226 759848699 435645625 813485786 384218553 622631349 983149070 987114574 761112291 932326287 305834478 853528292 861093819 904033016 935018874 970082957 570736606 601905455 464119961 848013368 917542087 990874410 238251163 950770196 214175848 223374473 249811552 450624511 478642746 498495146 43803359 680157474 252564812 890152838 273344790 999612226 297324470 806664983 579399180 771780485 34531488 288966223 89183274 663808370 307941998 762270693 798787680 880910344 380294918 719160861 683954459 881046875 914108904 965697522 21136218 449820960 171066362 223059060 644624002 795743985 342919527 728462587 479332060 506278612 531317312 585029647 945118844 951226830 440441609 753717395 332233165 509167409 623505267 787341435 917827254 983851644 134835230 697185497 897378280 899830590 83272717 380362237 616751708 733814156 881142972 987778136 542692267 982365347 968638261 997733907 758081293 969453493 330089257 869563684 151491902 751694687 238422484 989384893 731064007 778916440 288054747 380485417 229896402 530512988 757466958 796022406 534568157 787275008 278454860 979909274 359625744 750818920 442833438 515664850 253359664 739199852 312747512 748065746 38811244 922929735 300307733 878527192 285555746 978372250 717862729 807736255 740394403 804755306 797889603 994243609 178032047 614370115 439031197 813718325 881951110 929691779 592224913 744102333 634110889 710832910 852658501 949620728 135470907 803022661 75200799 769072446 426797423 898041041 252844986 587224807 70648867 994951654 736987287 924870728 96035743 972184023 529585014 981843296 678559630 722123623 229723317 256951516 816643652 994487400 202871591 433567459 943051806 999007582 41936726 98614177 973049527 994672047 441528707 767874973 588093879 861175326 198459577 979702420 702566367 758585102 619335952 646301950 321302006 994266157 584978488 682912797 714167030 897119251 853765291 959889033 90801273 890335454 107775400 741449135 783120809 791741885 416276306 696897553 131691762 735836061 142920540 835439660 79193886 451511741 663145277 844311278 437098089 890230675 476812869 481344152 197904791 498478364 7007117 452388162 682511841 903335486 447607222 740331603 981659546 993718406 815661457 830647477 746944966 856046049 428970242 877488232 128810536 899591001 304037842 561537574 170751311 434864550 679046844 770854190 138254532 404522863 12859457 679851519 849029527 933316841 498466110 756975056 398849412 591860248 476907687 881353797 880686580 979789215 639772901 758004555 11523051 301973122 310619211 846019044 751143513 945978752 24102969 699055051 228429391 306697040 687511491 991253473 61626952 535978601 997340839 998259545 129397861 447745638 433336860 576382402 375776449 589682461 926109307 999939129 607165473 715965403 608412345 644204741 700807027 985682606 169600036 864661122 498011214 716127031 835497095 863234717 233282511 638219312 424721314 961011786 970362091 986855809 201482423 701271198 479105713 872154044 391521905 633431338 20134518 857273904 799620894 946845972 778365495 973641292 200983641 777766218 446252166 580104537 251001487 785924434 633659993 865970523 334773126 386171487 43677128 543696860 395698441 476551617 934623113 942448301 210714663 225676556 595598089 874412686 378299845 756635034 177414037 589561418 732511191 939997624 438085568 674172024 902063984 939020435 770148564 907997016 333300036 403158205 512078263 774734712 237703558 842869811 760874864 834675337 332422992 595101205 348826573 725418003 607237729 854281162 109292225 445815141 959618736 999837735 264343059 778673435 795780140 822096211 591677648 944793636 738947710 956672794 599870169 882938759 580731612 622132101 596700175 792320061 819226497 825024871 807104969 935693327 413575742 596116408 444807594 761048071 409121850 596922830 617946961 985985924 135981989 978595150 878287873 883596583 715249143 955000896 971971921 975668137 766439939 909304618 186991969 949998971 46586999 355809683 315208957 984207038 560076267 646909590 70959633 181211589 476690963 637719758 480286480 632157171 462306617 796459515 903450751 988471548 398014655 651684356 726804141 783835315 748496542 923194628 80548054 224526267 207390230 215745629 971348681 999362028 768788000 907132065 331145462 427193058 768190272 910023199 455562554 542550968 427056983 697770470 886944468 988740831 933138407 947449356 78046652 836532698 478549303 828472695 62469123 177688398 576598942 742355053 638923374 773927325 633215186 840772827 650788291 748895273 208578690 425855393 531129037 747216589 490856354 679737439 561958805 814357047 947474847 970456603 165043242 312893108 402519663 795633213 991729371 999845579 459961284 879184777 641611122 915451325 762975853 962209785 194162632 617310875 663838505 728287244 570411775 604685963 845442559 954911643 321274633 672195926 962741412 992551058 532181242 809096137 602892285 634927265 309801724 876590890 473662851 659515129 139985882 734837215 788200393 844930372 741078755 797066297 435832122 493668099 916581700 994118622 247682993 796140377 182503982 540195725 114713690 474607362 224780321 892354842 110931230 476464942 569107158 811504135 13053036 644480762 60940694 870142481 177673460 274544270 715028617 857029278 285238663 336420519 957703212 974270189 156751676 941403029 260512630 757310684 260029399 429955214 995530278 996186093 625838257 749920442 173092140 718075301 651978346 819952865 178680809 559934458 756903177 963624756 597744619 984480943 847146397 946705316 295491725 529634681 915676531 982423446 845434389 971569980 185456083 240527536 259640545 289714003 151818451 354276895 692962181 911742008 612529013 687066894 438231950 909620902 790952032 803005237 992850574 995389251 803817808 868006046 328445330 552303132 775295968 976424551 40801399 403228119 117921922 540843849 826237733 951783974 742636544 832532997 987193074 995155066 468818406 626881900 47324782 924439866 579187123 604205242 597878172 721931379 970336260 996002133 551393681 839931996 255656126 883436455 268375677 640757406 137129620 689922205 233855574 325163858 419846249 583457620 282331663 311717227 689612098 836476721 346958479 754910029 518241631 794741321 597662370 724726601 850956098 993466870 353933066 954924589 592452996 910414347 458757837 707472193 133478403 831023995 228070627 507823841 672923400 706999551 711485353 780089225 56285309 907066450 56049114 255096065 837582660 897550854 752725325 990280442 102439143 655771306 462318700 673023020 858462181 939755557 815586477 880859045 31801736 268071448 357715007 561378657 919287805 996415503 556833327 821268677 898312025 958151048 966165094 967252411 227835109 261428653 437903466 790093439 577024791 891398873 625693644 750952589 184735138 779035778 920046629 990079674 308987163 636331394 545499988 949000357 902350849 917761781 208989411 291826057 969029865 981810258 54918449 68760270 289479522 578138226 142535256 883749327 567926097 604868741 994466945 997123356 439704579 597728451 670943265 953113129 137470573 313494697 421640012 787422713 460248475 918517659 964986840 984845623 629565569 781164533 148482565 434044599 780310740 872508464 616204246 649412879 116892666 850549767 888381555 970996607 412885156 550889254 981334808 983559569 885625065 996628639 741718635 962255599 970009412 992712206 960351878 966691929 814723619 977899218 769996221 836246393 20555752 692360752 151638000 796548896 402676411 831310330 928739694 990932555 340409806 695005374 3959972 766035081 77895534 209232876 221207662 804586077 346107821 915337915 69697319 444771391 395469454 475595070 439373638 637055900 457742574 902879503 615148412 778863551 10662788 807691933 949505720 964203570 225785106 631090554 805442815 979152740 605297652 735368070 863019841 945018279 395400237 925532459 131398503 727812155 470674597 535156565 876177190 939749366 865584982 870251791 712969202 966894402 665719942 697074496 675563485 756110146 182498689 804726240 226246774 243346373 669254852 804548230 363322730 857004835 943625646 986099600 244576755 751558758 943638717 986005287 740047567 757791470 903178357 966318808 980250732 988124729 368527274 417394000 523254861 673142088 306895534 514582613 368043005 823124882 380564553 460006619 479923463 724377803 871117139 887467622 255057247 257225403 758779495 916916585 764782672 885875405 138505514 307847385 967262552 972476543 374022647 602242111 110023122 195505483 400020099 789948779 364994268 421867811 515188110 931065961 285935431 509892342 953211930 959691009 731875498 835065547 594074013 731400836 613970635 772661766 277231729 505281566 109018529 148673935 95758583 720896453 621079534 837011490 833269771 929124862 82382579 284767333 916378137 961799216 883044794 929386457 219036847 926893069 606630798 740675828 975148064 999609274 105329371 976735501 177143271 602057876 774955395 880647961 824773055 866257562 944422850 960401479 660863271 891066732 146561064 807542550 370187575 482150489 835030515 866841806 592325070 612822292 528130070 903885568 82025963 769211573 844379705 934528585 612024133 940180355 832180403 915256972 637027990 775647601 887747783 975376695 840547795 949444401 697404032 779883309 35727839 224034808 3220706 129619468 800407812 928583500 206602375 550601021 424458685 669330208 560127529 790302694 552366187 919147265 687043577 833542107 164548890 342909372 430369085 861915265 654832584 806298935 841951126 997204845 414236434 845313334 697860807 757092188 34579761 615361813 301661549 772476905 47887883 897161708 54410514 398414215 552543139 956858844 58300177 351720368 300773946 424813828 724806213 865702174 497044002 678657535 388059305 466662848 390313320 701588756 219955675 920971249 572535182 971818215 662820539 808998456 69740189 783306966 926843640 936598514 298021957 683758713 116280284 719089570 476836655 743846959 358042619 975859658 489508428 964521663 648296189 731777449 384247963 799850381 262457494 660618697 498356296 730319476 665098636 704201105 755764263 878047056 941022070 945703148 153247033 774379114 849418814 968811643 275785443 832262118 511297697 543173803 763524619 809730884 254152669 842845156 247181994 781267809 363283564 788461387 214972805 563223326 442949010 505453071 728175693 814749527 628960378 693277762 606770088 878638333 998138768 999741101 746700684 868356521 363780958 591835909 325526444 717182654 600446515 826418497 507831442 776518046 175475230 631775637 352342351 646060472 737031553 851480790 624654735 985236189 679909142 912586308 247884511 454461201 117592441 973683991 847356699 895300626 671985481 728107722 874823679 967648797 56916770 298206401 241361692 886112059 521711600 946563045 480565018 521725491 439260522 466367872 262243104 638099971 330234762 741086068 297116630 947203733 676929379 876139101 688341314 706248090 830574578 832179282 685479681 938948093 609150203 875294541 325409064 481132576 9402184 58347910 16693450 323078274 403438910 486329246 281010083 771016962 323475269 569742604 561189771 616261072 30517054 249476393 867319565 895661105 984214635 994267103 42604191 984528620 605661541 908069775 553381217 763242494 308122591 595648932 450577518 870526610 732021528 890386108 666465664 996664662 807067127 861229813 515406159 843431086 949735623 986787888 44681227 272843361 713406874 876819740 417023954 962832471 758586577 781034346 631435339 975443570 780254475 881709347 728337992 950085649 721101795 946136357 425516373 447396430 167830643 623722960 479159906 912297905 537710930 757256274 646537901 999623286 171529069 744649749 87345119 460833188 63120522 388085303 505196452 606496105 473206992 912321972 641700459 647064063 914193052 989759263 364654614 809653627 85150046 907060286 732122699 745382609 591152162 972182001 736236238 951225290 903807355 931456433 584178641 919902034 124950744 907519065 696093283 828311290 304843563 507720619 373546277 822540043 970711575 977661856 105683268 127934423 807984016 981856846 967863940 973346084 924847547 999817061 100565313 959268422 539872898 960647693 189530880 760893392 428551373 701400671 605945201 925636034 426554083 619416714 976720029 992068020 85339583 960909091 893254335 938896256 113730177 672840879 88873303 997016226 313446552 414366521 671546323 962305585 99700613 181960404 711537311 820037354 336450917 858151512 668495360 881252748 724928118 832332903 791046530 868526949 691402337 781820990 848377503 851391616 229132058 584416537 69227404 231183523 712366740 804546824 995919757 999958265 23861679 492369853 683671045 700869197 225360381 242601151 942536925 995212216 396676015 918807180 906265477 942383237 662167748 875921207 732201024 934582216 395933350 781681011 345845225 694140324 760354815 849368353 764201504 871177666 418077789 505294877 394379191 702688351 766095852 860296464 839795794 849337533 584179897 903507119 805083507 807985938 90321350 756201289 919199576 988297078 475705519 635915517 550479755 895789133 485140242 755460053 748739526 825336469 131914750 285386334 633307623 657051640 108075394 281899185 160197234 947704812 276841000 982149320 55009034 621268412 852167710 952455308 657671952 666663496 844243919 878962068 254944162 258907664 579872399 899271267 203970134 466830775 990704329 998417958 865736053 973180450 694008971 978327778 111403840 242874021 345263548 483740010 148601086 901399095 460428803 556283801 4994696 711997291 384760047 515156564 280318871 372636642 327104156 688220449 286521037 990217684 175362689 921805224 371698256 875874198 145149854 745428955 208781060 492220471 273088340 496433794 575810039 722541454 118223823 282651935 760567921 843681494 336269982 906177953 691917937 888706716 116547403 366058087 645109847 692637352 777434884 938325198 683904872 903827793 930857388 961165721 590754354 748228631 509783704 549281363 488833288 552087607 25653433 666443002 380894103 591879381 182095915 728514461 527097893 811754603 986093099 987489422 883301942 929594075 439625228 765520630 713322007 902086907 442340360 546183302 982595350 997033988 215868688 275276260 995473582 997124564 497333169 956303304 879792106 890838144 163928470 725479094 359654582 532606363 892416910 967208499 491724957 499687758 423088053 926948848 520188309 695073920 9769501 545117820 463058337 711033649 432480680 639955256 102163337 207158246 318521639 540947449 326215586 795662228 344360482 551654556 96694578 852178723 868511528 872489188 294353732 576911012 421858385 557429499 863942856 927544853 528185106 675737573 330853546 875620501 945102269 969886606 94156712 825166387 630086231 683613554 648648053 733877384 254917108 719609341 757308437 968226637 36092778 500256267 889599150 942507277 777619212 910547968 809383570 831769290 581077302 700391169 383528679 490466399 862286979 981177735 86817759 164721131 558397789 858668194 205841602 269084776 497893599 727085120 188714961 931957177 626606873 795127739 912040894 982014459 252339294 504471314 546268492 858146323 318832710 616003957 311510799 512920077 819268965 889954201 892797619 904957641 78183504 309695594 330961464 581714025 235762517 316917594 812458669 931155536 97685759 120004500 853366894 994397326 34239595 181657005 67057938 436419952 536070980 866375630 161251058 336550060 136850178 804613044 126600058 442324123 470812430 656962176 106259347 390621908 660698952 957118950 650630859 762358019 747959230 952342811 695169343 832847137 502629690 816710038 336737433 986369745 782418406 872417558 373704007 559052941 358518283 578437309 590145144 850082478 573402941 661857933 903969192 905999490 717622186 880258404 882915065 886634810 37047640 851077551 960891054 994714635 174906871 863629298 385272679 929268468 831029007 868988832 787296158 963731953 319569056 421874677 590889486 869064213 781358161 783852351 278992974 694149104 884897705 902636526 645762260 704885086 775663386 811825864 546910910 771635473 144179229 566098362 747141352 826121005 814584488 950651920 146298374 374138664 92268430 173182759 125190568 629444713 863314594 977534582 979886937 991722260 636705273 980094501 69136424 110687180 726713315 832917529 171137684 791795738 396740774 888673220 514348042 855344243 954615893 972523227 810641028 950093638 838486140 931748316 291049145 612752499 270216992 589596932 564526193 990182771 448871676 990621257 802523125 840722813 395990022 593033430 443647689 629360852 371798706 454598246 684577289 863184806 939983805 964408025 774971157 926746011 77090616 525927817 938148174 974514002 31869513 433305248 509936061 628709274 342393251 365693428 914758243 922740648 642465104 935759133 130846453 246861787 48388082 186349881 714660631 964424452 372716597 665780422 656744206 929576930 314655188 772976347 148795061 939051252 521387111 963200963 53373705 821531174 605224536 676215225 344377921 497196938 930899176 947772667 280872301 492966466 559591611 626880516 449013827 549023872 64620449 283855545 599983877 790630746 119882789 821129079 767413540 948394982 738391546 909105020 555054716 596541029 70983049 152990084 458062201 703657806 527272651 767924537 86224690 570176231 941603055 989357122 840078563 957855794 234601294 790908282 905227205 926448060 545306067 852418168 838521959 940649462 423018267 527058953 826869581 939807410 842143641 969960187 863298731 973077760 145271969 259048651 310299252 657069274 782340955 905642429 184325680 560122804 655762403 998235597 284518004 900184492 835143725 930725588 717673929 858737458 806225726 859949738 605335061 651238254 859539961 919868247 853730129 966337929 582245779 801424446 929913464 943064803 473321011 985219880 727352136 961971910 701127890 869349365 436382500 799896323 722454058 899721871 933772813 996696500 198739120 904586105 955528165 986415726 780661116 978461459 257326603 951243741 733509352 857651420 879855994 909261286 200809292 746133700 198380811 466093461 590600421 811190568 354872548 998183513 511534215 975671774 21527452 45287266 467590782 803932956 109197977 897710739 352987796 667451603 801370408 866004977 357205346 684529926 377369244 592127171 405908547 597875036 827186055 856689254 347990772 878820196 565468336 914521941 186253764 251520610 974409903 990999800 631250904 821689739 655903937 683360207 207725964 905780964 128258122 647210706 979357438 997174392 536129762 785098564 185519607 642399192 646348310 763660742 554727526 658965942 936941454 944149889 754441350 762372624 998781224 999825823 331864035 509175933 253446360 960351857 74255878 655211283 179131771 553614081 828066020 837382430 660555424 999732086 532751517 934466664 756737425 820108968 584667162 593740930 232159187 376079950 664597336 740983700 421868221 763795466 381957502 486708889 408174984 988348583 643718453 979872669 424912729 710325002 658409195 906831965 827887550 999010118 799588247 938130757 335786381 744105777 66388619 361250507 108965543 837040478 247329835 618987766 332379350 873959800 751560913 964535085 297032500 941886264 49367748 530999635 216507820 468631091 723601179 806939219 864408503 967296484 923950264 981672804 575605625 973008758 358071831 592252858 423077588 577707977 406135326 489608836 171265451 959964973 733538937 766906009 123737171 863176267 309079545 356992612 642061031 693133559 930838214 932642390 675095089 797691448 5287633 315733435 5162590 281296401 273438255 710446497 778865077 901740171 498462207 772486161 796935572 815398215 274587174 298083920 54179737 754056064 431616365 624873059 848752136 903685551 270692417 608540391 471993180 906929407 117327749 790611706 54621817 828257580 800373161 899669367 719073978 824255036 480105363 734280434 295143064 775138715 226495795 406402828 835749109 983622882 173208778 636292717 674334265 896218161 275089559 370948662 926524824 935340389 488031119 672403346 816732058 907251166 558573600 799833395 468586219 966248124 831326156 869817885 36462567 201503650 259848725 329035631 671963413 700718946 140823303 699736335 627226790 760242525 292330861 651852728 513064174 528095109 270469575 982803962 586886209 816299285 814827617 911422737 634509108 900263917 322128937 533316116 465470191 654675060 50963479 430482540 809081825 906385818 94870808 978536177 205122657 499599013 636670723 929099397 960615912 979602251 444285921 486148462 885190916 894557546 954970086 956646510 523556633 848152993 226609623 232850076 591473402 907593869 885649147 896211003 152601053 885953480 775650421 788014683 406713380 635376267 209575984 625739580 645808288 980087252 910975965 980910547 119173333 720860095 796339296 953987770 816217498 846768731 612896575 934916396 217355767 567299875 540617841 741341746 85025463 394170868 753981680 771579631 985786262 993656250 185205160 534728649 89179980 619772165 696879112 912075795 653963046 960268188 231395613 888366861 313379773 901295185 465135364 641903280 376703495 396374328 189456658 875423811 466940208 894439967 786811336 854430260 67037893 807521871 261079627 401363860 967724539 971412394 523480115 966899243 200858667 423566968 283136508 434635133 516376629 618757410 297090944 849692910 727506855 801758001 741053572 980579037 731250550 751309065 455914292 963629646 632156096 648275545 958922157 963236982 583425042 604659827 844764818 927779173 499211801 950918284 645130220 828112810 962376994 986216941 443105368 522861318 97656862 475990038 266355538 498415343 522547103 821953206 562721719 884072238 872610989 959120006 156624557 689612171 237585467 687506207 265282880 679177151 283388118 662240923 507566795 737070620 733385114 841862649 757668302 904902832 715111936 783272053 968386028 993097535 859307170 978981452 947788331 955571652 566290487 610050343 527431016 615961511 945218981 945689821 432507770 549474303 995908896 998470459 219300383 236051458 421223018 595194020 641236298 922402099 77211256 781480938 752791358 964485470 776344440 782086219 982998331 993149870 742483010 815126177 48799637 101595698 908670700 982496823 82625711 966168551 416907163 828177004 781071204 994741660 604586654 633300227 459851084 943479094 773432415 970671849 261349116 934603635 910654131 976427268 878808558 904912744 809920397 962326209 459417101 813612971 469619010 564310742 924416163 982759959 366034638 912561165 77402213 207488954 409185333 918939754 674325240 919722796 102767595 442115022 458331140 506228576 424791710 979285123 163389845 895417567 764521235 957411807 186441360 756076605 689535516 797699794 358574399 701805475 651449387 988655788 572533149 907047651 843104582 883458239 269418057 283468507 679043544 721299000 246910513 596136108 334230233 353322709 666458497 755201178 713479661 719626081 771770702 796410379 703820069 899230571 642313300 900338127 231840153 405031675 609592803 679498424 300975731 698465538 429337471 892125658 223557195 282685235 858096618 874028970 246821269 618365221 328609438 339578681 680707890 687476139 826482808 865455279 284967014 978326352 167123663 217381299 871307736 980040072 270546957 999701283 229023647 718275499 910460199 930982623 482735827 721460728 500205119 801897064 731544018 907681667 651698347 931620075 754868209 930895403 769197973 933724966 659014357 905999520 126933973 546779684 536946879 859961054 31642798 554069300 981001275 994295112 955973913 960088895 660245272 692125273 184341171 859132386 146580877 833140032 59173490 560807299 191615276 936922282 248321918 430438971 34039407 925044293 715553288 822385124 577140183 865350758 231672658 616534766 211021961 930366647 57839612 718396739 303906985 429372016 30041977 926803017 692146009 795805324 899542971 961695800 472514863 708884331 836751664 941226286 381497012 820536131 279058031 998746209 674530325 950436459 921041280 943112280 557641750 706910892 329567754 394274925 381880450 790099653 183387819 738687516 556519832 794654762 776731622 989179217 372954046 548666974 627645292 905414294 694344203 827042457 153028362 256476284 929973877 982239874 824612057 899719852 651453122 818073566 825377743 863829136 330551779 704337413 341728333 942288173 125931843 758282442 309358603 319284803 588884 365010110 76986804 331968479 197790120 860864114 3527432 429612655 169091680 689819494 891255575 909003196 725572152 762150242 487759278 722380011 901327291 949454359 685625345 765367843 441562514 826052680 997332037 999119344 365680243 408848654 152716529 785181382 706661880 940923396 400352559 954877060 496488807 957198907 309559105 618353566 309268448 806868270 134994269 640830550 646913563 795579781 785835178 963050573 552032496 935042518 34151729 267621523 756281420 971763521 649869110 680060792 672058541 706365136 352960071 839202406 915499223 921100735 86610394 153890149 37988686 744947246 324162098 685644028 128236390 338063511 445583926 493237601 75010387 301739935 139734445 466084532 714722667 909562749 585447742 893903774 848651367 988213080 416761099 834137730 238390924 920631860 785330722 886137831 825822459 913455870 250613595 288312674 703805560 839650675 336239451 684247274 526933000 765903392 228789496 986193555 687135182 705092953 5953810 267111172 308538752 810683706 473005852 703503637 123212727 268188875 167962933 976415903 527517471 657373914 759716144 932001250 737119204 980290260 920104397 941153482 495708113 499624904 168399722 699212147 165629467 652543294 906221020 972426143 940317998 969224413 545474482 739322388 105373358 183897105 608995374 857259971 46134917 479737878 786514049 934448786 626972332 708401530 933260113 966879381 726887321 875047965 277579594 778716312 95951687 212460599 450903437 942823095 21803970 793674876 885601003 905399253 938547671 994766449 142685758 422473125 105979599 820107193 62515648 570049521 777398125 953904574 551809213 972793536 851740708 978685929 635184073 984336200 549508318 632079605 911431160 930140699 815061751 842758103 883267957 969894403 610480671 618994431 211200688 359054634 543299283 902598811 462634096 514934926 322556088 970921222 400081822 890696008 223661000 868854286 686249514 833097220 348896188 677686386 249304758 575075653 328524414 689030187 487541173 950847661 348665856 448428627 374567193 932698019 161841654 709699687 43052314 310830299 604962943 931457141 812658210 951189641 735605262 853897889 636959386 947258670 142682802 670507343 874829548 958864892 964047821 992316224 670543063 760249071 656625438 684513838 598481708 886024066 698884683 997802857 380261185 874709608 118180271 673838817 544793527 624197011 981258054 998318748 734234236 774135434 306813004 405767950 79914397 322425139 718106879 787279890 412295149 754185337 984330500 991830098 13264506 680679029 423747969 698732784 907020293 988559894 466205718 742171108 941588933 946155333 967454292 995919255 164827130 656205629 5867250 557176085 778277289 994758804 305505306 975110750 583512614 833643049 374755440 697730180 85590734 120815701 804169665 982785186 777179565 841737006 524829087 770110717 388284189 508027744 974488000 996146177 672604569 778555925 176123968 899308125 746845591 822627117 193441566 257885002 169880448 521734395 441805418 601239538 472319802 609010350 584570622 638438603 495048652 570676122 45971725 757678320 143283501 971629436 196901398 995482324 446400288 644051023 520791331 800055959 682284400 924158278 261418119 740593856 399414573 422185143 50333039 199955072 990163063 996394915 300314003 683290075 232776235 802275059 711844950 809593511 32069893 958323001 86131869 848707061 478006618 537964676 725035694 974540916 376787559 894826578 960719616 969517713 388660318 406887840 10803676 755348824 75039476 650191652 649911124 852010168 746825057 847709647 97421765 299377212 326987327 769986114 125528391 864568218 173914917 317023724 970124153 999016603 486684545 935534740 869296486 916031243 480289701 887291133 46846147 296276337 574380199 878537816 848389271 855240525 712615611 757814714 485862502 548528230 529924020 971395447 53089648 264796386 61050978 451865117 361878324 401977796 531201578 953620654 189596757 301879185 880702247 908669641 409677001 777373661 282200991 289093428 976307071 991839161 421011414 606820738 159221271 307636309 710148348 805618320 81814148 162024943 349240620 594808006 666727208 929376666 186068236 295626187 604481319 776637336 342401843 437180863 718809779 910934287 269922848 455402641 991808247 995074840 285413107 805115172 244423019 799532556 180513616 749517311 475446633 742089569 407825397 792728529 483867861 877901491 819875333 833886947 380777286 904454072 714647682 979349990 304439952 424924753 372648211 582756757 180559441 382153601 766687831 985487642 406166013 501927429 829250194 878399209 319652318 591389925 188986518 254869573 295192703 668754292 432255354 459896144 747694686 966972208 72189882 688413227 889140569 974475307 209200898 542313156 881045896 999991860 293083749 751396016 515599123 660641611 933550971 981679545 871153890 979576512 526036919 957248808 173722029 701182324 511694262 864506060 622247620 913033967 109514879 645491755 133197304 616096670 343942362 578418324 97029084 851984493 596042423 842870800 594938467 934616404 645573654 684828827 111163420 834153781 348951825 958073179 619460481 750886396 826778638 913566553 989602945 989800305 947233486 965041015 941451071 988417678 648263178 984128946 8263888 467865027 614652569 789429279 361915151 954944151 627265154 975549550 616188468 712899081 17340215 557844969 367558311 587831527 446103074 572015225 494409440 849184139 769683208 987569875 758111442 945150351 514831127 736715263 267265593 734384104 137851413 992652034 773997958 974438970 431144329 811759303 528829645 901617863 857401166 949984942 451666260 982673223 842486758 968862594 910876682 977056262 729654355 773229585 225149900 939185294 401278880 795917303 736985363 926987840 65168806 733961811 953290452 960650075 582495277 592169821 294915265 932870059 501419229 759049630 166818266 925884038 169924381 462914007 102571842 520151038 860844376 940351375 672178639 758106246 672920951 962919851 636886565 930478241 575065811 626526960 654075572 929590182 477332668 903683015 615203246 769890920 426079733 582612651 910916589 920365263 647975248 685045507 493900797 598942203 965736228 979488780 13660823 659204407 557001570 709812821 637006523 806420544 822631324 871295009 882893075 946058951 935447943 965864442 267335473 841301413 305696866 476556376 420466082 444952702 424884882 883139943 570408955 682618702 372936201 518783056 718610323 872568780 341964369 989994219 682101613 805701937 63451788 499776362 19986648 364807947 47902477 454428200 154684630 535702119 177080376 627397689 463490386 667863382 907642314 926453584 973492291 996367800 861377693 874545208 635706247 905425607 76017214 274805943 947831778 993145374 318623639 836031860 955490187 960998859 886041685 933671951 708956373 841570735 40271150 720275070 164232961 630575880 433517799 660474943 114659601 259237824 386165204 771385649 415368917 860430160 777592928 912484895 832316223 867693673 560423367 891072595 426748461 491788816 446025086 820872046 132934047 724866415 308508889 501195957 834365586 941732965 29356505 907072958 696633207 867060529 572768729 680787942 290476186 842583064 835747570 980701331 965258056 973594119 450408799 589101791 579072796 595984736 659794523 718211128 647816961 656957375 465297597 777753861 289332219 343779765 815669238 940937521 662069311 768604546 989929629 991304654 752583052 797714035 31597094 400440672 329165473 697250478 402904 474284727 923189600 984564984 135008854 878930527 964680498 992042374 730034157 758147859 238999430 926702457 823386452 886633865 28663798 117714150 509050594 987059824 376321555 731302347 518502078 626421288 599615309 609671429 424606365 931931398 868713286 977859029 618973642 950023776 196349104 420346571 969200864 985838043 958692917 991942757 544482078 678555144 997052664 997664643 892539992 945060135 910973711 944084993 806681324 828848349 56864175 499109548 546585583 847515322 470023443 586551243 993483432 996065459 507130096 956076918 844108654 856410151 211761394 942744677 208247156 576721952 548344557 645666749 242606950 306378259 477268341 630285624 456301592 602921486 979346809 995198819 239556844 378294124 206250504 969382591 860163860 933219295 373389703 802907899 327964286 332996082 847440662 862818850 313006323 438827824 783779665 916985880 928011091 990011139 865592271 984378341 400290197 488938795 647672436 955959600 71133567 413276364 608358051 609936527 983986548 999544281 730758721 846144651 330256386 907145130 446279578 877878925 678607794 735931028 129807644 630844318 242344583 659217635 145258776 675409437 259454759 461635428 777108195 807922808 793827973 803962410 470051202 607043415 59318394 215153441 448528422 861473539 68365553 483055349 535571880 611356224 522868338 658882073 874578332 898975686 273615154 410029124 9389295 475539978 235964071 258528848 249592990 304408778 568580893 795247581 203996114 533137181 704351932 713338806 335427006 807376985 751715332 814315236 173562025 856910413 879015750 918122456 770553611 895800848 550901701 728274613 548583262 786774265 684927695 868560602 966518509 974186285 919892296 991958210 724444718 937802138 313349309 877269031 430004465 974993205 200995520 297606390 486090572 809252506 538753440 959161041 43361040 797570585 490975375 772112168 41595787 135026431 88580451 886712206 200780513 629285514 592776903 658079510 46906702 465099712 224380696 719906468 79611440 554486580 133897444 841543894 22275898 747631091 660126547 728757191 620792192 915866413 61457420 932541576 625405097 820351694 328672490 663511813 493923701 801643061 881985636 938948716 316311295 988423016 196059166 910484684 406976398 834865699 981938739 999870408 600641301 654932148 151428783 906702027 925887946 992450379 955054004 966123749 119074626 791316670 409638166 565765793 200104590 885452696 909843260 919830539 370717954 917628236 971983227 981585159 830928016 982085975 26897797 468344902 99119505 260326626 402673346 428041734 353880883 697411667 961884258 971944165 550121577 877376236 733576569 856314904 628657106 994541300 516391667 597646556 140406426 413986259 471128536 481655644 959745566 990570783 801636345 945245885 621514565 923785950 53667150 249627500 649155769 745468004 471482384 984141049 731830829 779876766 726979515 871023511 283872797 790954344 980320399 986450089 219837079 491810886 942036111 995556012 277482143 293434325 964664070 968227921 464747648 639858207 136261786 950872601 625841851 944315171 595881844 649620304 180716115 755575039 483352498 989549108 81677516 652427410 291721787 604563089 963926924 988104326 358057842 756811429 617730911 847064730 666425706 985121784 152253959 478274626 148893718 838467954 536943837 800414696 58315508 807302779 543759119 730609525 879570793 935591478 867477317 992206045 613680251 683662937 797508340 869429469 244031727 628388498 495999386 683701129 278313788 774576423 249305563 447548067 640087581 947462074 791371415 836670431 763375539 827822974 934439643 982159711 353857652 618137957 396752299 887826598 29478968 306284760 208017464 945063952 958329893 991448973 44127467 571857428 427794335 538246162 889689988 901692999 181840393 553492358 407971681 592439426 433436191 669014004 198671012 620890867 858866784 879215106 50732279 337135863 725365777 961125459 562831507 721132551 126044088 877224342 917174113 955972666 152043465 333471719 280995286 721896319 880509264 997309051 788527288 806428056 903421553 948822075 489453166 910371252 25491126 455586420 209907312 621614804 200012455 518781844 225875583 359580009 631290315 802736684 809610329 843586524 367325720 418953812 264266729 433352984 614224605 707865177 313274273 433521849 859333208 872650423 484044554 546937937 670308723 871968387 443822608 531036778 207691440 635649947 429559221 774907381 165285924 337361339 440700344 598829056 55901553 274855543 729236061 994247042 250544541 922858911 79190934 190679932 150450142 181761917 596869124 715483477 782813162 912977628 688277615 717663977 224944569 299348116 69924342 692086568 618115408 626825355 326682422 734503994 560967961 816113084 955271016 967486080 444022962 671930727 263016804 388089311 427068170 948901830 666844420 904778825 556706760 950304739 894123416 899141331 440122250 799989505 624670588 764054095 4041946 835925487 809927393 963413882 996948184 999909999 649570020 843786535 456833139 656568007 618591145 784523175 474305297 988797666 758569316 815192309 824289799 848774202 287334759 851261166 553162991 645821113 383413698 490999898 329722186 887106319 507412299 742406628 141362374 851102873 758461566 991508557 221492653 457065978 430621577 694672144 373994837 689963099 444506220 913156345 604155419 626521801 960900802 984959934 510184564 916976607 808135067 864818782 412603766 929992426 424236126 757241124 189057354 559175799 69666971 403864101 354339584 729282285 506798952 907745765 789647450 803208206 984047158 988679486 527013525 993174470 742547369 882969959 518394373 998597316 646399168 655776526 439051354 602795859 560838264 960728245 904772932 953083112 43171695 626271844 27958892 769412404 284685432 521157713 647378049 729934591 469007782 980640154 667669172 906198912 493158593 932602788 79415916 692151491 309487103 464717061 442270265 873264043 882250215 980474385 91244554 251423906 986939547 990622004 301952752 340233860 395447375 629667084 332509305 334744165 180304033 743636955 641402010 928563471 289420477 527137692 806553353 956252463 997258366 999851653 765047510 869465578 261379135 404490031 365509770 851696711 295765057 979814580 347600893 681416691 419253234 819478743 972241331 985642792 450950395 712301718 26995215 907612410 993570434 996442101 697105856 950373706 233174964 563570464 482065461 684669278 474940764 549522346 100190219 348670631 471029219 877297718 422886577 735192560 837569980 898598761 939842362 953727248 207655350 688619567 23675887 935519001 811790331 855514085 97919943 478823556 726084861 889880731 334237990 341047357 571437057 720256876 514071899 828475110 560074813 801200733 948502764 996852111 316224919 937599091 75432784 119453796 863782260 951946087 492938918 794510987 320506026 440910859 611008042 879735529 256122255 752270312 158832105 772387036 6392778 524214243 952461967 956729135 284900051 549750759 101223969 666707593 869474008 944949805 854271053 936359230 250871320 660422712 47538046 114720957 863697212 887428929 583955149 783910141 947026163 966301339 606236497 892814667 43050304 215553841 505448640 885995328 737228214 981267418 722473275 961747491 981212335 982981572 437338919 637090510 989010587 995643772 586774935 819022753 703384710 792359043 971418854 994055794 45397099 844875924 515830981 895784210 268411029 318779221 65823863 457453961 811483650 984578004 171013768 844978299 367796294 913739480 714240071 921401630 667270786 916780873 689045686 740074927 130211469 503369756 936089701 960949592 549102232 684109034 384038923 783677808 816132832 955198443 264093572 337928198 827879475 849077073 580662186 789043504 797633333 801785507 90475936 369412584 30485840 227714708 823995007 960713505 854312550 923285283 356140369 871290178 642634643 952904159 395122305 851848270 855060049 933618813 115764494 272064278 739346847 762808211 343016280 746722298 526240309 720533617 672122670 693651987 379535326 620031514 163045918 965794427 939124539 963613503 685180623 913365279 762585944 811581080 648432099 910195079 117941820 680106873 669957951 788074179 871533127 909374417 315885748 882645743 49337496 401190356 13543222 757259869 651362872 768484422 888006810 931677545 12551000 389707525 935355878 967926857 959011850 973522884 885285768 926594354 445501938 627468315 744042418 814298951 29960712 474328598 859671637 972377063 973197879 982955509 714791917 783787695 66368586 889056869 573835877 601536640 337653412 467690637 575686303 885323387 591379104 858034093 926476116 950859899 796402083 932784352 246176178 653397374 78512923 323786969 43666615 624751420 104610822 301738313 418682453 420780753 104815877 726246862 505861521 539237676 438586793 837949854 578693083 818276488 433291387 577886670 851411149 889783828 47655575 771043520 588859501 678735048 224791839 625612690 683120667 696377819 707963725 966929151 557361108 598246880 982889264 987144619 45610040 141664266 58107969 382577501 82867160 230936997 645027946 700681707 509655327 713388550 866247391 877215987 951490643 974301239 334966394 632070933 574523180 765184372 314247155 756947579 605290578 869851057 265450459 275385335 47803726 549024364 116874201 654490386 33247715 755999091 170413825 232761401 56488311 786148578 800761526 807494291 245226685 252682335 440253764 456257184 20912919 437475053 319879512 494979782 551378677 843223696 59144346 416185645 279081603 550861723 581078042 600997265 473497715 978337198 262015356 486826470 124221455 697777449 321600444 376096242 890058230 974919119 457994320 814318749 135699360 316448050 864680264 970922936 679239699 906533899 827653297 921476368 574755366 921921137 416455319 771356725 625975591 637997546 246345912 548148898 417347624 560324406 621443789 955432460 696005062 841908406 992702287 998760004 858641522 919455638 354445668 794987785 308132508 407101316 99457898 399729781 668386298 948475284 381331509 740590340 104561899 800847895 160091059 839493759 325389903 956353305 574862085 845352087 713559440 940010212 274587236 676389836 952436902 999893954 912632008 929450802 387430113 806172474 802085171 976012093 910951595 981697051 152155082 723100557 956463061 964782431 816315973 972373869 741009333 873944195 964771997 994579930 769367310 911960197 541985625 647514884 974009058 983781839 278068932 826141191 946073523 992940486 248976132 725822221 806951500 964990027 52405204 333965109 260858098 556621491 503048064 526278317 868198262 902253337 230179349 840602710 640477562 812736389 391215236 535354747 95668164 756750036 770873948 856309246 984000464 993124060 566869007 869095313 818465535 877028512 676480153 799540499 495697650 733587269 272500776 540866544 609638932 841860329 728415 629988537 183137726 291411931 402566930 780601630 693326384 755144959 456699718 474047631 615480251 640545966 42128397 564433767 428723169 701241894 136712501 213303302 867833549 960915013 763649623 989783343 779509990 930321734 752805636 830281363 941867457 994915835 283641850 366260375 183956528 294995136 335738866 444024883 559088540 658164567 461829831 625085207 820656582 954788322 517765942 519498019 295665265 984385455 915505759 975231041 497911365 574652373 667927689 877604387 620936150 942600080 702314253 959015464 726431257 771273039 305196961 778896093 159383885 690573111 105932425 887561555 912661856 925960820 443650088 685491677 631089939 940823055 50644265 750812049 40022716 963529616 547397783 605355321 633012633 850411732 108884639 795809575 785030759 890835453 236615984 335393905 187670526 554594663 583456424 887009926 680775205 761458926 483584148 524986093 686125021 831962646 265779939 755308769 714048356 841839675 584779303 867704018 656809795 844630221 521305836 813029153 218611729 873034281 833072693 887079125 845561072 869573151 781193569 859583822 295848721 311896681 163697690 579517552 133082211 370599772 981046678 982334137 268243324 454634914 562223637 705995839 857497875 931656541 513320409 771145649 327925700 841006113 381041245 778997202 374238616 794831209 136473636 661033864 590633532 794750301 938380453 948192605 47395568 187847110 184922831 408279483 866842525 994751964 488422006 671797822 635472566 928435622 119935916 878443442 767964510 829633346 593001776 877975333 540996320 825195941 414162146 869907298 167111045 949449500 359747975 704213505 540804345 669707065 560661558 670383982 21065887 731083316 289341217 415755557 291179941 540619158 81727274 780433626 264737080 325784089 978141479 986433207 938671073 977962114 800715070 846278060 853327493 982356867 193334920 674466571 680015832 717990597 331649648 346778975 215162913 451149897 530981654 715122619 127215795 305510780 466086408 620163225 765097452 973406503 613501379 836912300 709632965 781193730 103224506 684928373 701932940 775263051 949995170 960976997 689595601 745102335 753991107 870326030 316693393 497281178 782370452 806354152 329455070 511958651 23674052 403826865 805110422 928584830 610246742 636714851 399580602 716148564 376986570 920821454 622665012 778179724 202362013 846621259 187797789 606582950 936975751 944618215 125414300 995314995 822653267 972008383 652361004 742242027 313042664 990160995 328980552 549468367 233861163 311125985 541691723 868387077 950545152 974569156 634762275 974340965 949666113 996676325 624854563 918664130 423237580 483080798 19064561 556773837 721405866 759190334 272756278 572636602 635510073 702144325 869361231 878563286 842478128 978308993 553526232 953842738 674166867 854546636 323360538 339751682 913647500 965154654 328757112 825005051 806906318 900270069 602416131 702645689 213760311 651853885 193310577 552087051 880556235 885623977 829771923 892760728 784897366 883444225 85540438 606404659 543899844 620038074 454465678 514709569 430185222 896754251 773183499 958224385 533667965 912274438 454035985 946519982 452106269 922151745 146368660 537796427 682277662 688130085 177047462 596864525 535217539 857697617 793489853 881323979 398187799 513740630 391039720 506957113 294838763 424406790 994988077 995998338 386743657 962662286 43496413 412196383 967618278 978382022 87520144 752391518 51703760 235235469 254605905 511402611 860576934 903905155 235676661 647894938 27733056 292102603 443275280 525309276 701689736 735801265 267014646 804846867 591012025 715574689 392482097 531758673 866899503 968230382 755505927 976901780 988288751 997096141 119618447 922946963 626030393 947959004 874803542 890973290 481779283 731283987 755982115 840687498 231618819 329224805 131948984 831325147 461727522 665276576 155988559 464483447 172366591 560181892 678982941 745165950 473137506 653603111 144366840 211417971 412926037 946718661 631714281 670621578 943527128 944908173 337459964 808081569 906692035 994714231 430695967 590940857 843646214 975462171 814588827 895769035 523046051 932885911 39436336 108335304 559725037 975609198 191850055 862282983 271629389 795565963 335584191 749459294 577044094 714512586 241518715 782738367 684196478 700931680 267280427 906254789 938673477 972895824 886578402 918666780 945753154 963907821 143098427 573572540 494672132 760106314 820742612 975401948 380528362 780635045 746702698 937975383 64212669 523351125 352361264 402583896 896830521 903885336 522416068 693853613 165101078 336576736 541674624 988442063 357155606 629063816 611643115 644748296 797856573 799553759 585863466 741478480 662796932 685212286 953323461 979736282 10774373 354136185 917042856 918195517 353404836 875906006 183478187 594598409 44080093 580046792 855196791 907953829 881949632 978615006 981046363 996472154 167497412 194563497 397573681 727517616 393527007 549641335 445857095 886821726 788837178 891272164 868005897 987878519 211157192 250537799 16385571 134000506 183442424 902463415 416432811 680321791 212264388 483931257 98706097 250887343 716080227 965354654 833828690 954669324 995288427 996749124 138913081 317686539 92306149 311497932 143036753 919391516 470537686 906083719 951840655 994322687 381627469 747698023 409634292 978502219 642804641 969008080 449188330 638199914 263550231 636605398 557903049 645870530 6508482 509756565 516151295 630237350 878232027 993183300 762309288 916841049 634561309 854406076 287152707 923185287 227714918 437814647 597410754 789510161 397119987 456897402 789912206 877861887 794757979 886651651 111981870 569814627 956509383 985625207 214523190 747212126 32704883 948695127 97231254 660615793 852515825 861421401 63476362 275099154 669031758 757376789 576791360 586936279 621440477 836866081 565101391 821104959 17161924 391656456 644129664 828649807 863533979 885946149 897894415 995205044 703542852 956228228 583044288 864889702 887388442 949020801 556706603 961067353 525412038 558730449 860366368 989612641 210983078 488350190 161421160 708235973 944284499 961234620 646009199 696378314 539899885 658016143 525923497 785081225 676164525 701393555 555680512 960329806 628816870 890163940 299661312 913067540 715148408 890897685 70188604 171108333 393896581 908910700 266869588 767847289 167783723 446919283 42666416 300591952 709887343 798794012 730897771 854761506 550592891 638775402 219091287 949938147 429752888 710171207 27984631 334016327 130349953 299402718 149022605 939145166 208286578 481411059 599981266 829602048 861120131 877066023 365311687 780380602 403116999 920162921 373846040 815577479 106548417 838052702 913466357 924111460 795009046 942427374 603360410 978092866 86894367 702048207 289131675 770444164 735832252 862812149 685724935 986211744 95276560 823054432 371489454 876660278 685627545 717396245 193978902 708636777 863784602 992098803 244115840 713643572 226616294 541079792 218899943 530590977 627245421 821955719 861076497 984886212 20477404 588558459 344991857 832172151 444976075 840291126 923957396 967992772 311712960 473112436 254062856 944142055 342679237 501065952 61852261 162866262 787021112 981359618 826321536 932759892 830472190 843450263 96935867 117488372 50648830 501481181 88742754 750895391 491700719 520194365 521187296 688008095 120395868 699662448 43577763 357451567 795244229 834667231 980413999 999844703 110177701 694520685 573669101 772617668 180697122 181261570 574104321 935523671 348930319 813951909 396133458 569785829 321301417 822328311 95285868 226504323 321670752 904537251 539706768 619508093 382905005 719988690 395040059 627995735 794345365 880271948 127967237 895080457 469063508 889010113 467521006 507816506 506683202 878588117 338998748 958967063 793940080 900455996 108862224 709211494 443799180 942604907 535820367 609047248 611254964 937315204 23622394 984011463 923714939 958343903 143950494 752883532 281831223 753541890 47580830 480625539 144103743 787190297 688183899 949598731 727915501 771076899 402007955 659412668 530700560 776303849 998503546 998643270 366260306 755133186 203021395 252838667 870456828 923456231 992332673 994432798 543939501 627998017 261358321 785023860 219500774 908839711 741535921 847499892 159787321 527418445 837962013 964349838 229564315 875624636 527689051 929259175 817114624 938069902 163717341 349290180 102862982 540848647 272085189 434082647 877544363 919848289 533297218 573334773 383498605 758330098 540481101 901931856 994411680 996055399 92945224 232559033 804735109 869331661 710460416 937129055 728706136 855705400 854329122 962272619 556647907 690830643 126886089 633392926 882089945 905702253 569063227 997824124 657937651 883978999 677900545 740288803 202129037 473254862 125513139 432113280 597103297 780549533 668116174 769077993 937348982 977459184 62835491 790814932 30863027 621648669 436234188 751683732 5691224 749840304 475807746 699327095 724581566 751884519 870850413 920925050 910562364 954656480 830902318 938119093 33024418 853281165 208653930 566260762 816002853 961393978 846984338 956030213 528533601 757919922 601156237 818162522 447607313 861412750 832935995 863943488 403075036 445982732 963645892 969165801 724030691 917639566 474339749 906645101 52897960 884591152 173551065 585978452 229413966 482167377 588324912 683095514 230676103 695043158 281767245 802596548 46792270 417404341 197862545 561358542 238832125 512859562 768865284 890679768 665412827 701064222 842661779 861330175 638885698 858733089 502110296 765944689 588912406 731407560 778064711 901776934 203544916 401472550 378260986 578112688 679775316 693963330 179834688 604328817 834870991 966712386 883341486 910443579 201462161 388237411 329870723 601119990 116357008 587815153 38692201 830953424 906520513 977891201 130663826 665051599 682275582 955745744 45962298 223086109 776752683 932835251 996070701 999075087 224961598 313913038 968030313 996318383 362112874 733632573 778861401 779658196 41318994 663491554 531538043 621470107 728724056 984479873 439350594 749416245 459549152 816211873 253478338 936179481 258895929 501644145 35746946 638075261 283236153 602022471 901427523 911807026 345418525 640726326 835993516 986323071 110862943 300940251 779339304 812304607 555769090 740652481 18254334 915729469 674874208 778532274 368791991 516405141 429849334 859821542 812673791 937454149 756212378 975899553 644197101 978490818 267768079 652473845 281651508 621500835 244002258 415318593 829523463 978815096 633887914 724750816 28176772 670824649 292615830 673312135 290146223 419210569 207016626 650180492 777890198 838450363 758459706 976737165 477949194 541744135 711185823 808813945 891875420 987345490 291428802 517765190 211398527 847819939 697174542 821555164 986548504 996468225 265299904 538903777 139811812 557453063 148286413 515349987 700466533 819203593 59489191 703764831 750080296 970611158 201111012 654452316 273809999 973612495 243539638 364595025 577653226 866216005 625706815 638841465 621206417 904435636 226926926 640151863 75332892 929395062 245071656 866232897 365904216 965683625 52480371 783330005 677828832 771910356 503277363 571873080 962869776 972513835 723985093 917972541 899294908 937517892 834675865 913339151 702454850 789185056 284743824 520215297 900287712 952787236 292180982 572787893 233177079 627380873 514679796 828311596 991977380 997244485 174464767 596647371 381730076 665313924 976612456 979824522 698616269 970737179 850968475 911193302 938702081 960776408 862126071 998579506 901051747 962394307 525490355 781825038 596878525 980556100 995720756 999013863 290139950 513645658 763565147 901409037 773389857 996788074 310022773 832514697 668505898 923689231 50397858 352333742 129771643 654464105 715892306 810299585 383458734 647497473 605236565 714577972 98572699 389813173 393675951 444184382 115338007 851439633 820109974 988694834 913814070 932116576 316120505 592217865 156723349 820628818 697111078 985860192 338712715 862826105 893592887 935730132 589608722 633014103 905008580 905616569 496647681 701386975 913969953 932333783 896028206 896526371 528048563 854525675 588318425 639300254 680645815 969250589 14078788 473724916 579615517 820909231 216049632 231048981 700906984 717393639 317527508 473342521 120364980 317680629 722621672 793841569 145414457 856063703 676937832 942444178 106785312 340448499 722387592 963434252 845567180 894568046 5100406 911493559 534997562 739066232 594863085 694865393 6975762 141997493 556270795 920206046 387631801 533439704 780996396 977372728 761048115 982796037 74042404 936410490 978113956 985109416 818592629 929337807 471600075 734385154 330403458 474267820 151570001 806467708 337720077 830113391 959821410 980644331 56094748 726317907 597490705 999155253 533960228 952868971 302837237 388079347 267088122 803807831 991841819 992851203 486355839 805383688 788634597 807838064 993346768 994478067 109010395 579453387 186881217 809959782 658655636 989865259 484432887 599059817 505041067 607838434 510206021 682609069 498876779 660889667 380832930 472135571 944766663 952990636 574056764 717620889 740797997 923842585 444183473 568766900 346865781 494948253 192979081 742786873 679938654 835848575 581389533 644446987 207064593 390619772 409261732 588959949 157472461 202368258 204408254 472839348 270706356 539521997 768481901 893096030 377998624 637964124 403429054 659878118 358290948 917344694 932809370 936782304 654968289 948332974 604017051 797407748 7398955 395654893 31659982 129775386 855613102 959352270 126072202 190228958 770517751 928094246 970549016 993721584 25424605 81650950 30413036 210938876 932438687 984799723 416569910 976442877 716323716 833934747 51190174 592721189 895299838 924125510 945830078 960939009 411678999 853448184 845504274 953360865 285888033 428923377 526014740 862433126 848734865 972608236 323238629 625474026 817845263 820260175 522060405 902662926 111472764 858669852 10693224 492203026 921355067 952137781 970011904 973935758 349523889 978101267 537942511 941875885 939860655 974015788 860175492 959753572 68898622 873096129 768341463 885083442 478169025 526010459 899778607 955312826 957829394 991351354 954492757 988292666 463212355 651021475 988927139 991237712 126577950 798444953 754877907 990185226 644346428 680725465 690599695 849217401 148480910 893706407 413024370 541897406 188351517 458070285 410121129 487384557 369988407 984771905 478664808 791325289 484020874 752689659 245026543 353461421 637341764 883330575 406805890 542122953 896974444 993020985 255075400 867348802 193298255 850221194 928445496 938859053 851411593 922374939 686542634 848761690 679378833 939750561 708709724 730509354 848727887 938532345 775321819 944900128 298169074 991083127 514409445 766697726 24528164 215677531 670962790 817751724 277302606 488463036 82548032 985320113 229819402 983373806 442903859 673136026 52034165 610796169 609661568 886437374 959742023 987638895 724730893 861450370 63810927 931244043 220024805 673004587 247811547 887076294 886510164 909771483 6752944 232043080 236426406 713742770 739995369 749466415 163991985 489422578 820300557 966900569 179154862 868630958 167437651 984104352 66189662 472451400 857762441 971778124 919237411 922515788 698111104 881145334 318946299 338917733 172986363 734460705 723889876 967630121 242399422 693710848 249246211 627928116 988114201 989716915 919489769 937275964 33883875 861884699 980977794 983368442 38811335 691799270 382065034 598607082 140973399 632500793 575320384 575891176 26425217 600188680 847549457 911795410 269685727 696148859 532827463 560559603 800265913 871129817 900127042 932187654 730895291 734019694 690954708 784437454 665518318 702900993 836169942 865800136 172761942 964662840 375044748 847378589 891940089 939412818 708379639 780797389 576204016 674352461 898291767 924742228 271176626 517792147 518591326 760521010 75737269 915418836 158908965 261503872 665966849 753960386 326579376 554629679 455531796 848702715 632577857 886523249 946788912 995394153 684404813 715542802 305789660 412207083 660888512 931397708 970528054 987054767 796828376 984042045 307412062 389985355 762558587 763760952 37234868 662550137 734212864 898837973 605555845 811232220 28588415 632403967 39131382 534758148 408629881 750111604 745178550 749091951 243740146 615521316 115269355 169765472 967589251 998970826 748159000 949618350 858578410 933814199 949837979 954883656 506009338 605825088 69824615 806604779 977185969 984001315 346721994 753900810 118623508 236643321 400208904 653436966 433307720 615314691 455646027 852464745 921862065 980514256 406382572 816310899 327756149 532528414 775049105 819514134 442494122 737056637 167277280 257788721 307545989 435347666 340580850 890092210 950823564 974598224 732039759 954802637 113311599 445174582 209487696 582333451 940359366 967759190 668599664 764764063 431970335 612265142 94717459 421242016 199683982 809296343 672972950 967373382 588376364 667372492 462656829 915865620 263862330 677780431 502351748 712672003 400712088 713943024 725303812 741194174 154469714 217062527 365009636 823351110 268479334 315202881 554351436 865864363 377812083 482114234 267330103 802068912 609018652 786249606 908125751 985294036 91461300 309420043 602461695 781908105 777671024 951431825 357527465 486175285 129083912 814830212 388757154 644353523 881566774 941355479 931990363 950891404 831764321 998138736 594580403 607251431 724489079 868314939 787457578 819906133 265911105 324623411 958689896 990432732 957788718 974907626 122684121 322393926 61040113 273332141 556397605 791961338 210751717 392947251 635116719 938739369 644694000 921101066 486835025 735214925 706110134 919350686 890771027 993349919 780532749 983351724 168946314 806893415 643415457 871001727 654835875 860389376 846844470 860648084 579275569 899033629 490763518 710541478 811799875 928458212 90878915 412508121 708387157 955115737 870510297 874805235 193064424 554840465 415692121 737953885 706952907 729166628 310662684 348067524 408741442 784689092 296059419 761675282 357874017 496377772 25981572 76848021 130008643 520320968 132462754 672831888 333106648 900160910 977167440 996977276 77064796 760122944 299234508 402438378 441808192 649995072 872868377 963909483 549214952 719165908 577291253 989772299 290435128 598333498 761590095 860898961 963900548 986288741 792063767 867142743 403643412 729528937 26170784 375329099 372066814 964534024 871066910 976545477 485762348 633739327 589110907 730465715 274682005 668605830 922804549 994237818 502964703 896027087 520804694 720986140 263006082 510727934 527850996 583169728 600304293 744254070 491018470 548893231 986517594 993285376 665935245 692141725 334947493 771869715 687421610 912602228 448012378 827183660 455733676 512475398 165181522 969976594 819608441 864255817 515014716 533182471 911076235 917586470 255487279 452867854 659896644 666403076 851804082 946582237 549850374 900088048 157251829 641064448 309204820 473393024 153744078 478071450 682572388 812336789 727782962 990769997 175455415 279214318 855565673 917214002 916822442 927976205 144057084 915431714 810401235 949375373 242854701 628051960 915526750 960788422 222509109 985704036 460793413 969304154 226811014 976346406 934124084 941096919 918136044 969675467 69819702 357392329 180027329 294740740 582605221 941428775 836396796 850751365 17658501 367550679 414088296 589411675 530931213 861636104 486368439 696040580 329843808 501597998 595923352 610733070 332673413 709160019 648353691 883733760 251784413 917492343 142701102 280619992 377845193 388715067 639373760 950525559 869315863 999136394 838348794 969393603 523168970 534946692 39392397 814126759 801969770 971049851 420301685 499648307 243104457 962046450 651794541 952014776 270662739 663960248 899452989 900554518 188092239 195333507 109353451 314612896 944220324 969616518 126152982 927156292 612335366 856981386 152974183 737169426 249905682 862548394 619789884 749753852 97131682 450957574 900363728 911500980 448173340 611654960 742793428 916081927 535183594 600573041 80210180 871540923 735311763 922287842 600572152 856846976 625844388 963618457 723531916 888134579 81708051 907006845 422112611 441597681 203403398 559689971 963347641 986028733 56417546 315427853 352889125 476233842 164326300 407291783 516796991 629719986 981292791 983583104 849289041 995459634 133879901 639489043 860876285 953666693 848656934 913876126 220347775 357539314 254536747 755144746 4376279 516088133 144519773 507628907 635810134 761919280 32672999 961214525 687591741 921636582 941147530 994002761 445628427 982603675 50521636 876711099 602838817 869471849 790440255 872835792 699578280 881767487 981221564 987245748 139422404 325534122 550194474 795189706 941379091 984523821 52081902 440698205 609982893 848997974 79775903 810723139 297830468 548515637 967590988 969525554 185433526 411553374 954848793 974552895 714645095 770538864 417446769 989604677 253813305 660403441 786237690 965504155 921733043 950708119 493193429 734562868 121329654 681504787 828474747 847851254 741746504 954231951 233383942 366308821 254674844 509535477 747387078 769767345 518936894 581933961 964907059 967213549 930658171 984046542 139642852 491563812 470915293 902522559 137044293 299878581 194739087 378241581 419082078 855345097 469458565 764847938 720199251 785182422 110036203 818167110 724028699 940693727 432584625 455123956 652235902 762168832 70738911 949990291 95931554 271641051 204856509 372991781 833012641 905468823 198985883 262334729 651295587 794138304 856106326 895303596 838741701 908399355 717225361 778212849 862898303 922977757 992102041 998132508 898437044 943922090 609515442 825489498 193419649 253486293 798172256 869981690 852761779 894770131 826178018 912457154 799590997 823772812 543533674 995951938 537278605 653656015 928888702 940462403 686461949 866860227 53131449 618742963 846986435 940881365 143843210 983686030 500460686 582159844 52146712 943308835 559212537 649357894 795289757 830538924 623684177 911020527 901683514 932832964 799606978 890893536 63430977 294538596 951266319 967258282 895188768 972845352 167153417 779630678 717519300 799411767 207789564 319970502 142862939 580608936 24539919 345797178 970142042 990019891 566497275 773460784 789071984 974880899 152964757 155991222 372826878 384480349 749666586 851256544 926273504 954830825 667466966 850069851 4467254 562833463 32425012 549328751 446107922 581915218 541603106 861058039 168345416 712194165 869429931 954215870 551941290 679310149 82762148 633856529 976901267 994875359 480930649 925515090 960850447 974923308 906982450 943813829 916777920 935573141 840573450 897288241 59241915 577835480 114726513 286450540 407317811 576365233 374705743 821894530 195889303 291176924 711212097 836297282 715509067 982164698 184578061 929917888 542472864 942908806 330402990 466522206 123587372 214253642 20607950 562738587 684531576 718042674 41137054 395188911 113902645 479728776 583917198 831265217 116506002 972431144 148753808 753214941 394065346 410337786 708783164 976436830 424180857 987252048 162341249 306204144 332860925 577133546 45621603 228653786 638671197 668025340 902367013 965060664 204976043 979559638 641977198 816599029 242912412 329060006 825896537 856896878 644821768 866612143 671443189 907287110 871790438 953651029 689990310 736286349 997519127 997756576 744632517 764445353 491183061 574398233 697599451 727920122 936250993 971737240 424184589 596239030 659679519 808845518 922811258 961185954 865262959 889623590 396539607 566144683 278402940 897099146 581224397 736512332 781328836 872248209 172919649 289141486 58198141 723101985 505541297 977583730 696092190 710227600 919688969 962279736 178872230 535641368 622439759 655884067 712404820 792208690 403353687 656593538 449221741 917878714 352733776 939413762 444888122 945983207 20036195 901618259 86421163 993047387 703772570 808369174 772310133 813389893 501530405 534579100 2221462 473655670 480497358 735868365 3613831 588839383 120122441 607197945 814745956 921326396 46940118 915250266 731052567 871015844 56723866 77329845 16091894 827899993 67092550 604086386 427294042 775391574 390614495 784216740 634180167 671878805 448344678 585334710 469149123 966820286 812174260 865085747 86288624 823880922 292663819 817879108 12854939 148222934 737875420 973287104 907474527 941305212 42845159 283346775 520608305 948218540 401023787 982420950 796642459 871802802 745136751 779529550 821351422 857957078 125489716 347930677 749009479 752515315 496873349 849470390 6976047 125865260 115054351 400099601 837930383 977100875 251704405 774180737 580107606 909636894 460701127 928459360 221284456 600222070 386745030 749903929 593702477 930728383 347011231 744635470 769893588 997637577 669951648 970022012 115376431 229871175 443196883 933499904 494330379 941640332 301116038 383355784 706932277 935605808 173052825 632626201 511822485 520512173 199556604 633500589 935084659 970339288 405563137 626405527 195544587 883787915 501194434 804398186 70217171 793974753 760802386 981736237 362619203 682579585 549361884 650657938 992001328 993190347 290772204 787787015 457018106 689953509 474832153 715432971 726001137 924179241 806096928 944988748 548221829 720932901 297918649 688315056 675134811 902348229 371818313 595834691 49641363 801406999 83087417 991206287 713205715 794676910 840935557 935557583 152353012 916155720 715926885 732876250 822879465 941418921 859367451 944959557 993687091 998964380 113352610 950444141 82517996 428712728 795592690 911966675 681512295 770642492 140166043 494342407 333874742 395896445 794413154 813936982 465759897 692442743 801776230 919870036 371657957 927802273 68403653 848770361 532559960 633084021 406476430 690414875 507371085 972832862 279032472 944048240 55584695 102535040 524781185 531077877 645931721 985329822 782201814 860248550 427475322 926802013 876439103 936439732 193766622 263583326 394889947 563477578 376403643 591789879 863447860 983599838 160377500 573599286 498262317 611708314 503891912 521465824 699506795 951601189 764755018 823407405 301318110 465530008 531945589 796711908 315664333 907870010 298645935 647728375 451035669 819801657 537213266 915982439 535891496 874222232 375271789 920779025 380784318 838123660 473172447 777798058 954314989 986145423 528433496 640498043 166549671 655505628 291734557 535587264 79368781 749329899 477408202 984358020 895575571 974042473 624870022 868613190 335530991 591516433 688594979 696472045 397501034 984037300 839781843 972381789 654074532 860791733 579902670 800508428 736487294 897466227 134028911 691243795 403389395 701159560 434572775 460514756 819091759 887886645 930001103 965009071 596318311 869056176 145560750 396414274 627621703 685191719 965963871 994885931 422460930 671862253 948046325 972727625 848556792 907012379 464749973 803072142 218741406 832077609 55662965 791825905 171876320 541444254 694130352 788494098 574967066 872213325 31734779 820839233 203185993 975376873 163836211 901500442 167552392 935382949 946393694 979691491 80777894 593855490 605036445 660470415 684912188 799001774 150741923 504915073 135845299 236836800 311209288 346648812 165283549 503211762 32475870 789081911 575499359 923665807 634824478 743690516 155212176 300284209 392802227 853322875 799586963 995180502 427391696 884447480 13007526 366320228 40391849 718241627 147596509 183718317 957385817 987631729 903451723 984002620 676780680 793103371 159434798 607298748 38932990 667668016 887430845 914198211 889257065 927067781 991490694 998001570 709012388 885652267 373132982 533120533 723137375 978860104 204233088 849461156 744542808 767921946 38339610 584257842 406889985 560492921 118698314 612588739 476782743 532116535 896052816 992655454 881834416 947368531 241209779 624448667 630731175 982821251 224401418 566466166 515164149 641685942 993006008 998258228 997624941 998440263 324759211 621683390 304478464 661835931 698370066 725293542 149078338 838009108 489158060 684706100 4422825 854952858 857584220 941994015 719625232 980514658 817733053 860219594 465513849 537725428 80694740 120641207 847336181 876999486 324790134 959472910 88096415 779854105 660937920 765639163 507972521 939853661 143156228 540377481 278622142 562198151 856714935 867109550 145868190 828251319 678190751 869747264 116394014 487979583 424305441 588459779 853270192 990634528 537371443 577623380 803777684 944738380 796161062 810863493 917332199 924718874 376040195 428992820 745645409 759626948 170768112 440690939 183424740 722458432 14221530 577080088 264342544 368546764 597118902 614215444 539189695 760922196 692179429 975386286 368803058 866323385 669189202 846519226 477618895 717559450 558794020 730573642 742337009 930984592 875381988 973560147 126754758 132778117 78123122 601329197 233397620 439599080 854147976 870962363 320021655 641485462 996745989 996913518 862502893 986531866 999635511 999672991 837435769 929370123 809449868 835201012 846806717 919793180 248424548 633408568 469473377 877204622 56289258 524331227 162639649 369265870 268953415 507924986 742427162 818757823 913706215 994656156 745504410 757081573 52070671 357539744 642552782 806421017 120219104 851351871 355690430 639158855 439415539 747771204 126880552 737520776 836472707 864364139 654979246 933139741 77335645 470787508 274441962 555244841 736574753 901481198 371877991 899209604 780076603 934899330 169581362 506710472 904501085 932500321 319740630 742859130 551778800 651474582 4234203 863077232 17919094 32892431 774632922 893708944 354127031 377802270 266394333 294206630 189336606 744363940 762763338 855012477 230727197 368341726 262290957 495080895 263215650 333770838 315992994 574691358 256477358 258079255 538268694 858137754 876176231 970697341 861746529 922268470 628546089 761305004 876959119 963614568 594879495 853990852 83597317 563542555 27815792 781137776 561792855 712549065 714206237 861614765 16485688 342040420 499464602 810365317 794193291 935322457 703007001 914770138 347383125 513142100 698209193 792142520 490339999 871243234 336737490 371401530 375140828 784622129 806157869 967078446 747256133 861424057 694933672 896706767 683827548 964372327 256422231 409637732 779280261 989164976 108756573 691682098 861975173 940696845 148730745 225675028 818700542 859059483 371970954 893092746 721399502 764136517 581149495 786634986 858564850 890953498 38460386 852881366 731766897 748681024 345624850 675114582 166817492 327974556 637911042 890777585 582436604 722814146 395076505 453535546 200545500 656725724 3843646 456557645 705351251 973962665 884911347 892472334 569917570 633768069 851896318 899724859 109260549 556785798 199619988 432021364 999846371 999852710 278785706 915020310 881605321 898934145 674343412 737250744 226425342 416951041 230993810 562922142 394483967 843994685 43781728 378038597 99495736 913257640 535207715 728290842 329582854 642915230 609056317 999376875 294637413 457222578 968699273 998012568 250994360 281504830 782673748 797094696 875760699 906264814 594212642 729463033 177245264 928239412 836290795 880954888 492222105 645160825 401845228 983564822 327172798 490240935 421618493 667904701 640896301 758115793 999648996 999886626 683936335 939458513 905109105 971312228 805509905 822356573 218832347 506624593 669917051 886095670 171651687 618651569 943074939 966846521 22943832 349500708 933314849 988404074 111518634 393193378 434737652 537839008 561690334 581675879 537283554 722618764 877578248 946403137 609631248 832222101 522308493 713476215 985013186 997421291 240074006 377349695 650500796 794661056 964750316 971745502 785151853 854000931 559078608 800616028 855214642 998276824 173238528 227032497 268989185 728775537 329333394 808560692 215193449 945870577 955819169 996250781 320150956 908721306 656911362 929648598 871649932 940959762 11821446 521484837 992602414 995234207 710083088 854125557 1440807 853633425 143522345 874461026 480386157 860669354 663289382 774238135 178514237 642470503 731395034 818414055 242054575 422596192 615867237 647252964 706332682 812131502 447627000 878434244 72337226 221469757 694438859 987253058 756282961 826265762 961157616 979006743 478830417 617106201 912604761 962557092 934200678 983256633 845162852 924566226 54275831 950245621 693999846 791427140 668084109 987628107 968643250 988606578 785306203 875822230 958170235 992469522 759851793 802418349 62841922 524262205 329097401 618291738 82955786 402559705 596446291 643726990 612940210 921853696 991411717 997707797 548470148 767383765 235786736 364133033 961532512 969632336 928137990 994193772 527454741 602463767 573745157 835132202 871704720 884183726 164941597 893589602 30349999 462998168 431234503 440370672 504870438 593165221 997840613 999308169 765312743 798361460 997307732 998681576 398901195 897245208 848177495 924380121 541995556 779082950 221324039 284788459 855992666 872140857 648617131 685886796 361742133 812161647 289796392 618865534 616822209 659784930 576983027 958567908 925786153 987171629 339954263 910049735 41906326 868674615 6147623 430747015 963769972 971822082 415007801 880302323 528464999 675419223 955780693 962423532 684042795 917634410 139741774 655148801 785942549 792723334 943241669 968334911 724461378 866459073 165273458 570160567 464245468 808761389 734029326 780164573 766952427 813730377 589379651 813326759 25806580 581215935 799638224 816565686 964720771 973446169 777999221 932047687 390916510 529153278 113032207 769112357 76423475 950960777 735563466 948212900 775265911 943396621 905003242 948933923 496549916 782605193 884309224 972857588 25651627 682401058 111218781 414267139 41584389 438154646 790949858 795145897 386694360 523349220 154136263 935470515 63186875 979899383 850094770 887254211 771536634 829096945 981724246 996153127 149074361 398177905 163777498 249472205 535520843 700735852 831406276 881730949 200496178 227982527 674328281 881735976 619116019 747803223 336861170 542059227 420363124 761972567 186455561 814242686 864055678 877262477 266809131 313905454 69622567 432536731 283411191 286759170 594283965 822192795 237348859 467719448 206621482 474855254 209966647 440924141 902095220 981332147 918077421 951966925 859366266 910631618 775425175 925669170 737613883 772613366 590998476 765446723 123562325 216388574 263255857 881729258 733475240 982900864 769928950 842746895 981871679 996189783 406904544 953702280 910384197 976138321 285730384 324663452 977804545 996258623 243395050 781209317 597339744 964194595 926615830 992792310 826151352 863392096 759644139 926132159 203495781 626535986 550629965 881988815 404490737 697735370 272023066 539935877 429801213 755688222 434445622 936161412 535114969 643971006 473999472 949757245 483870923 865927275 997454439 997569712 321288645 795850215 556780806 593551721 882192221 998319234 739087772 826989090 605244656 757423807 474336523 590550656 73702799 739911177 137368125 894016135 390751334 689225439 351411919 980799144 584945462 985722372 755969214 818873636 57984837 490380202 453181906 998328153 710511594 784430616 855152613 923441214 313605137 323283703 349119505 828309135 157581216 785158478 524580514 565155072 860709539 976739958 944538867 986392229 347197629 517958060 651158136 995787736 288657769 508014379 968313561 976562382 284602608 995764356 65056095 76557118 583104535 931845729 918041362 971490414 635693993 785734877 595166264 838421212 880160951 896108495 713230473 777587605 318156135 842766253 873549183 968369311 708758713 739751704 248034911 420407005 599201400 652791339 746797988 806719742 242529146 838805355 441343961 815491797 399446664 535910182 252742309 801720197 314951060 902863722 936775184 993811587 377782474 788795275 230759750 805249578 305035568 504377959 724246214 940739000 866414862 996845675 178187556 906118817 590946830 978360091 809849719 876901654 242856476 761010950 957945980 968990337 711281588 934228001 163822614 773289700 66572086 828893318 856422776 905086177 946489732 991770535 340954208 625596445 890487553 906035448 908280472 971253537 661985203 877809023 296541175 324796466 554273121 902165780 13476694 158897075 567427202 767619250 903165672 942790504 824049942 897036661 844450579 959024310 103288448 171946105 943052873 957249099 735811009 923954761 117366585 406814358 505977518 774687535 88294993 501597294 213134125 562865399 5240774 272492576 720906767 924236592 289089071 693868038 628103351 760539461 894226414 927716348 645449903 907743524 484219125 541758008 677063738 913103145 484407380 558819089 309026466 330732941 607760882 659214190 94929616 231081243 18971609 155244813 473659085 685235627 96307258 702009544 931664703 968068505 290652196 671862542 728400680 985273440 983456902 998365034 135989643 401411858 187857073 292097412 520012866 952895038 294204238 758881159 922502444 963689383 36648611 215414837 350363033 897395292 478120489 720665418 517977782 980265881 916623704 996569223 55162801 194826429 204150138 923958124 64722107 410531386 789893143 976019246 203938181 223443367 801691139 890156438 797880500 824986333 432814456 927073508 664529513 773028476 631884067 743046664 180662581 298066531 256341680 526896207 185089383 823467295 517329876 580700228 673149896 783853690 28876236 944857819 860544929 975764104 264354045 364311444 755927399 962050355 961412097 980817827 280840864 575631359 662112791 692790461 309843057 829780355 572816976 745945105 496198053 531048997 911485390 967679233 932337844 982931453 182679858 590414820 489823478 866039716 630329327 917537071 691692812 799742491 59803534 63522383 273015379 892670148 175780870 728638036 126141485 159926321 77140821 979586903 697263279 775009270 950993093 971803084 91247366 411868391 626116743 854451701 122334628 679182656 436369135 514819078 563182177 936295787 556480303 961150896 194805379 787336706 296970345 688885071 653822910 884225024 474298331 543422815 657775574 727593181 610294597 998289421 724038826 738099764 920913824 966918316 858961726 930536859 728257644 813695164 574069329 587445000 695253572 810156997 947884299 999404903 226402600 706496408 754961567 847144254 630006785 969684615 108088346 408273982 926326294 952660496 696523481 947048320 641452657 828172086 692525506 703994913 422222259 941979992 994663105 997369611 43275899 585722097 600851623 668795809 616073195 947223986 542983478 854511600 433431761 702786839 994558210 998712083 350190876 609232089 693400078 959163148 976320961 985673817 600527786 679607362 124483482 381731891 130381824 543660718 889908950 916981127 4513911 600739733 757712990 994997718 522634074 771606691 88758083 420631650 358536777 581315149 465677748 852593687 361961101 432201270 598228367 934082813 612569693 903049772 799704973 957003353 291499043 849869228 213209001 698890548 342666936 613263982 225325074 614808270 65605717 721020993 787443435 951788217 771545597 781868305 428281525 919110608 664407218 896100769 143432876 725493944 665639144 675275490 7778227 721648712 591859680 965424335 226722023 636485981 567694005 871556574 135303441 327710175 930112426 940510633 34432089 970034741 586558038 954410170 250979296 300161656 925819286 995712588 575306410 857457282 854199621 910382024 589601058 775744531 338775952 995198426 808825649 871334001 181198332 205237303 785358748 897612176 354668703 755507899 853116081 986177058 550697316 902370768 225925108 717802540 535608862 807228185 462275971 653110195 182607578 255317241 292640229 599110143 385932138 766064123 27814813 724780364 797501187 976811942 921677337 932593974 595319211 950188175 750629898 983542055 778402640 872667884 698974707 839459498 598081002 666804764 97897767 386361002 819375167 931546746 877270468 982278120 972094635 981742654 107263598 737639406 659181537 942573602 634779911 647961777 502120540 887121687 201508552 770184716 380171869 392964716 814095223 939794777 134954105 559923463 164761984 652981888 743501230 864724238 644682381 971103249 756746353 957482121 161502485 457123644 683310232 690886839 69473434 524666902 65041706 804072477 808508864 841221610 679922025 985706332 48389436 338445843 579674006 938025287 79899141 508854577 292330725 529729139 295274517 561845628 349571832 992617331 391206692 475398480 203952131 811862073 731311715 792231458 96885026 553345288 940410956 987699304 47815423 883689758 734301933 956278745 842885989 912019674 511068955 578279019 693620032 983364441 919096785 962994373 77900856 200336397 320033121 740964474 262009000 830330586 889067241 893170544 649560934 950691627 9912862 572589972 157227233 987345185 95825991 169117600 859647923 864824701 887215970 966065695 708409262 897786941 787671131 910687700 470846169 913844902 810717650 828560021 528678200 760586519 77743150 916385617 723202913 920911011 467874559 673122061 128687449 621818672 205509979 599469819 261705022 638825964 125791772 978998551 799523644 886491530 919705683 927119921 796974405 920926210 661285605 784532819 600406620 767541054 243282396 865110376 919485868 952804503 943954065 963826616 698570098 764764993 800682708 847977143 563474669 705436380 658684163 774318828 789423130 922411949 569885328 797295130 591664330 891859724 738543462 857532314 283181160 656474026 69731284 798254078 887781457 925750543 757651348 877680349 723587530 991917916 696161625 950129333 145089967 784354221 943341227 986317527 82168774 800926659 337419994 959214844 995330390 997051621 418471045 859046722 881778007 926558175 908704563 968200575 588704438 789281192 542116943 928353502 579415620 990525363 887462093 917577764 953911530 974514145 98290918 473309302 406318494 511310900 732674164 975548596 48270373 454832567 77313527 220625711 720831217 848893507 611815960 909650106 236369285 378426393 888707853 982720284 667490075 844886579 179197714 228794733 628378622 925610420 902312832 931081630 654388204 699765889 4288422 286794610 578022034 659380591 331568134 923383220 687424251 885119422 484988483 602984874 122466353 358709350 875949280 893585465 562299227 950419509 481606048 984400504 149395357 283355322 614480947 960007865 362017605 503438113 916805767 995187995 107036968 234705369 600282452 620007180 184452535 223766727 486753038 744556912 179319609 421382480 967265172 985601685 849645994 954984311 466384100 692688909 232804711 569413813 201473849 749536249 118735073 560519733 481889471 975821182 582068965 741061094 13494993 944485063 97400030 172865604 360546542 955388522 418611090 456504879 693462578 940941104 318552640 816864931 91712396 516641453 436579825 761054039 659150362 757653994 818034710 882972796 789583983 895189676 35423279 963058291 675080682 749774486 101173822 660875144 642466845 952058415 29664012 277561720 61532363 476009833 768876046 926173526 917447247 940635129 528653959 968269170 265490919 300080310 375103745 727390728 175802349 811479408 358152055 437855705 970678829 995695305 881025091 980029405 140395135 833429210 508747881 801527106 282476632 441727481 507515527 894290385 229694463 535267461 69465108 532491360 55876420 180439523 883280188 896023919 341969489 984520940 678065542 839340993 190859713 634528070 759111942 807418183 665358520 819516810 86855013 746625161 484852299 728193747 853026244 991726017 748685724 932131718 236721545 437986805 104648137 142397253 20878310 203422541 320170537 412929568 185434820 722775192 726100338 903547744 599752442 653305723 62336270 734129383 928117453 937647598 583989061 678130751 408368538 744068108 950614368 994598746 492870798 859789774 319671486 791746851 531990725 866155214 172830358 575091865 461068670 702881005 587699381 998076832 211866529 336086814 577047050 956849774 103393120 319183399 525709894 607572160 289681325 405412930 224001623 988610923 988289145 992621953 376489687 955658547 219452901 676271009 26403229 444302090 44317414 72998093 907176141 919157716 892754879 982916897 612946466 973249838 307535059 310678970 258876170 356334088 676493081 901889902 503498926 703222747 994831135 995213818 775189481 851735362 321721908 724368441 996987523 997032914 431578691 883857952 488151411 934300130 12556685 190089084 410081573 603683773 302181732 504168474 492056941 711072678 444300381 982150538 629390659 832121917 833830761 837086580 790929070 808783907 373905160 607041053 716293997 833993669 373994895 527960271 138679744 714525562 245850634 321239489 574411207 946459924 252453027 322148072 894229736 972750898 466043814 855502313 106954696 442084572 462008351 785665601 543102507 725394745 753370972 945157737 623983153 894339384 123270535 304797608 156270604 574068374 755839906 835151734 805336736 992310431 854287566 920709791 477892704 577363354 490306163 978034974 473212530 620131916 315645320 423685612 157928028 988694311 862966143 997581271 767582042 995220079 343386390 920385617 844676467 990008712 553731966 963513620 290293882 516837510 501939706 683037381 203877483 287987499 416487700 786121827 109722664 842058422 19847793 214787692 112805671 243548658 277145113 749020643 369207957 707835993 735896957 828293424 286661905 621123631 105815094 573284612 363506635 400542536 559129055 719909306 561167938 735388349 315401582 559701951 833122058 844566146 363014439 960968432 349722807 361676887 274092606 538554683 19301313 467749475 338574982 632883167 91182478 587775535 384712309 511731784 937337582 980087022 517694000 844384260 146846361 620289960 375075765 629196830 824599280 924315799 244588097 971324978 784749208 819286358 208243840 252763323 515939054 716469247 719837928 825311706 168101041 185251371 262097266 538093297 834903284 868954303 676201160 880494130 859808134 939254347 639051489 877444674 634085430 860744897 721204234 882299548 730475186 821645372 162142343 979567951 895399698 899024267 349267560 847065513 793630870 826893738 791401271 937329820 968735832 987935810 331178359 460530863 441633329 919525669 241831337 659838472 221998028 520101577 748254464 802357376 91689225 801902438 296243385 404186713 564006489 694761581 190842672 745804140 670084060 981334263 579766761 602568757 927847181 998570067 516261865 604971211 688621044 736707308 376187971 976889579 664211380 696180832 783856776 883624408 574119959 768359523 261460207 932791943 389017887 850983802 44002971 829873211 850299492 906565800 620393083 733094452 545011235 552354667 635124589 834195397 873920907 911020865 295557471 391194316 885986262 973611082 353692110 792350208 365786255 830741467 884919164 938384793 478186022 756450523 716426226 908006693 786714512 970494261 809966354 948822060 194405332 238712314 949474809 987165110 796355425 959957643 171572147 926477198 302307908 382988464 292735424 791744925 24631242 382190302 99802108 178901581 932884140 974807294 488276325 943840409 365033112 455607311 449818112 914528024 799576008 920417187 846684336 853236304 724328120 766976344 367135497 789762157 816787401 828996320 500861512 984839023 349109680 589742641 898273522 968850050 526631668 725751748 564264312 637884157 861732854 949115638 515242238 736104771 685577189 884986382 192837114 267491528 999877660 999929435 74213916 345002707 243899959 808724134 756078295 810513711 433646507 693769525 838698797 954740349 16057268 41506554 392495690 638655821 137601734 444909787 627680367 711059294 286524240 287565798 763232938 967664970 809710318 888728966 765640200 923201832 407565936 874350521 584181174 941750907 109703820 408525606 226832036 614987213 717215886 725267599 777161408 965475226 985890399 989156158 631211157 739019385 974264346 997459906 542850382 773761973 3645658 919213226 441504225 473968288 521402024 717712828 401351486 681907009 875261322 886664644 547196559 565859796 743254601 926827742 887014469 999090369 246635806 394330829 457340648 523722011 730093242 889094145 432797289 778091442 470628371 673408270 107297814 921351755 801141345 872845472 106147889 458255655 34722125 582120047 83657292 906827496 293618657 389072052 559139435 872908278 800197006 861500460 172856122 472695496 281514550 425234303 912844862 995931044 463967706 763336766 189106653 655411370 783361510 961703412 864048455 919744735 192167302 629827122 157725629 582014635 300534047 994716929 78379799 415777340 159206690 966030095 944484288 983950017 949502487 991484568 912580604 971430125 750248397 993038495 507664096 905033101 45507602 545495788 480024079 799414631 619311440 665941192 210466166 850061626 631754235 841574388 445731656 553790905 855028260 979430288 88606697 773544254 911469162 989456972 395704109 661591859 457592040 614750472 88112786 779654728 913425962 990279646 485327181 879558071 461050596 525979201 543942078 710089622 584208052 852487318 815010633 948765209 922022458 980965581 312148709 838408506 539902779 897522044 181401359 344509526 769880062 811003941 168331293 307123134 937490709 989886261 307546001 644112116 876502889 939364149 617377359 996105279 190426497 683107404 670775639 675739805 815878972 994211505 80284947 623507348 190694116 659706437 732655310 864274798 755768596 764741424 691042497 707338830 77468789 809689160 710485107 753814036 505252016 755991693 980893479 986681805 479506721 735741862 830363981 927223577 67911900 923308244 341102638 592038254 867876215 938868326 829819179 910135222 680087990 820706387 579127822 890497104 65913325 411769470 75831364 497996825 770926950 906467258 43384662 447898215 850334631 960471614 517139926 915206012 195122742 708799100 740891452 978188108 549475179 848954436 662427369 920078716 550091985 892750028 291614648 971357928 802382391 872887224 928412861 957907201 21005934 824441516 639895386 920029719 170609622 845486097 963954642 989310033 678365976 862059513 414528089 884633200 570990648 899841154 560108276 701730782 504109492 755736372 949388215 996618097 376616971 393512894 977280812 978687105 355777845 894597611 390983898 904155687 822821432 901068117 794236294 847978853 871107210 939269565 587311273 782982804 273080284 833746462 969849662 986241366 437085079 707792698 580148871 953992612 783844805 922293955 274123268 380436095 700057833 851400090 521995617 722337786 12253023 193455355 462301469 757098850 57782485 623278941 398097402 577178746 408216249 894595438 606304754 767928290 158519669 729222805 779491104 996708586 331329760 606502284 480325300 666428021 182825534 350964083 175761775 685054971 650876300 799435470 692222825 822450534 503287222 793140178 260226895 981165908 830814760 863178907 901640079 986608755 148163653 960667148 256486574 722028566 236089648 650411492 227332555 931811273 978009027 984752274 823138565 952948445 411206486 533427114 265198611 515813791 794497670 844626584 699280147 968421157 349480864 981379076 915624597 990347473 215478872 501608689 696948141 782452401 905437269 910821018 340010955 711260107 580561653 600745880 29491629 817854331 371064638 498075156 352174333 747655816 856732160 958544743 929842485 993198538 841647259 968760497 5301318 273652355 111099140 766901489 56174687 451390526 454688277 809278190 823280397 916395169 771160469 873912855 575599710 698501340 935635926 967284110 149914778 472766515 286967623 483997778 317944639 835802520 408279266 455698173 86591826 362759651 406344181 794398808 632873407 819642093 189597141 872823579 24166465 352521378 165705265 947874200 379054890 925016473 764655450 977375259 681374975 730076382 109342072 376982725 366223075 813712724 826925475 986751216 704841091 861335435 200294450 393143788 942540070 951569048 82159273 617647593 983996220 994573405 832233415 937623221 385171067 727085283 904230600 998391233 290117853 845340229 403973069 854063191 594503808 854492965 286478117 724504547 979374176 981984650 668124677 914748081 443575376 455846309 866790443 959933289 191252483 479751405 378207037 995350546 795122466 895050568 714247606 721832183 709779658 916295406 729033167 956207977 627166743 715153294 13198531 622438019 966794025 984980109 128120944 564947080 427488741 700333451 649917929 766076168 106677812 416161671 345274482 603685246 118713799 534521147 917253209 994260200 597762349 706054942 688919781 778305309 23007190 756834837 121934151 796696669 736122276 980687283 558388179 627751953 767815427 928728096 449558384 481213472 86257164 353488111 894586661 906999973 134493241 273354693 701861407 907283941 138922282 825353817 393287598 845898897 122049479 364447739 887467749 972809212 627834099 796292280 717670418 944166315 922738905 932399926 725394307 842549391 630464277 744641202 938762233 974626858 277868749 725672946 794088004 878974458 142937570 368854807 225026360 804442158 632052679 729794970 524479250 747999315 672712699 997001545 678366719 969967142 549326424 982095600 206279749 755448467 269378187 700911885 481513783 797279634 359581508 525842803 370777654 993880162 548746095 634351478 821578508 882874719 235735092 347025311 349934973 443322515 40432301 838399706 900717360 963964835 491080645 559344725 35724664 307946722 49501134 488903552 412697299 638515611 362708789 598005395 991794903 992752527 471205617 614636697 355395473 639681035 86870089 273711322 979241523 988597992 492128847 572725085 787639087 856377374 848423666 988967881 577685353 601466678 218843171 966280147 394312656 923619996 379069887 726460751 12975971 657567558 429246352 706784440 154077615 172714766 842820944 909874155 938278154 949411729 287507108 841207622 940255820 953809532 892923868 937136449 119065499 886625473 375912999 605115888 969830942 987918508 917789815 985022557 665829966 847777777 50602268 262535354 725500381 757918412 877998459 981853558 820530237 854174938 181564988 759766642 983147460 998036800 969852153 988613267 221982455 934337869 277452457 535802144 135868529 720105051 466646439 900217866 431329125 871666616 337397963 339082065 200526689 519050529 147399474 338647457 168114051 399663711 957573065 982507702 451646534 606568435 317937147 581611793 124715022 560455264 74881818 107918484 115075102 528951823 783321274 886687877 12990617 96015502 123976096 476998212 170832871 876228397 804614866 860095691 127539364 236307316 940952498 960931786 455076295 731475784 988724588 998985449 66950300 784429012 35996194 248133772 666308995 799025488 35017358 729250004 639269677 784666407 337337065 889702597 678899867 903291167 707131778 824772975 730777084 926814070 81442663 947568904 746637362 942449640 521472542 537924008 337588826 998335402 720409913 732723880 154433124 373368074 162865496 616861160 690579354 693827420 191835618 343156871 350954325 614392253 313275531 795499967 78937996 422674573 200897848 591632884 486139393 928675336 456627726 870099494 461841661 736985310 894846696 910197132 482676817 661665272 835743217 897474002 321282362 394245157 193253929 550140466 525322917 886336169 554444530 789850922 481572618 618879677 137086823 977967009 632913706 843215456 624772258 978744341 551970769 780658927 632895758 908896129 646214632 794823916 725876085 837772465 817822443 951522347 774867578 979789475 874131945 918736487 385010731 647625143 294427373 601510455 951611614 991920704 321787275 637567640 646528612 874622959 658415476 794337077 295645695 648236302 870610612 892606774 662123605 682250698 337550103 379937166 493470540 996312439 576331347 635216027 654064940 941309239 515063087 713352685 719087850 850457725 357399566 718673367 618697893 858323728 699275718 792883198 56782065 169580897 456903671 969351822 468740204 938775853 224295280 651571673 568287029 961394258 63085543 284741196 780963871 946997961 852756496 865018409 464438149 472000378 253694184 959269660 971809671 979205043 1611740 216924524 786459175 975099028 161568660 559103795 901249807 998778120 711251114 855838399 164598712 776230812 265649624 439452418 291489819 784048510 703133976 891721503 361666586 823470891 692937836 936852701 162220932 759476093 39240783 723848566 812134604 906649680 251039969 617002936 604847846 963802096 83611675 565070631 452017344 840038580 96872010 573855325 360050150 445130087 2521953 214141118 390660958 403914365 759219324 907436238 458459809 708383089 205806190 516354354 350041303 956151852 765125803 886637094 224429462 531076037 493992025 781796021 201383390 785345560 684669785 999884378 469062626 588518470 357685646 879346173 898918851 939613670 44735923 368832520 556559850 860615795 828222993 879201577 375070053 787124376 276029201 630543880 122769676 874699248 744188886 958057052 206294606 450547824 368728717 996974685 582123655 669524180 57221844 767565409 980411493 993519421 195534072 397942325 6957246 777526541 147124152 434202741 432794424 440295219 862493665 968959741 947679801 968581031 71456638 343305241 740719918 771621416 646206375 823768958 447541378 843408664 438195782 818749278 847885598 903089182 703577635 870844508 705624578 820645459 678290488 938205849 149143323 662374833 563557072 736828094 416614542 876953114 781758339 936224883 536187691 951893644 298877457 688640592 457279556 926510239 218566482 348939428 39862764 703591613 787601674 827369854 623304367 709772509 685598053 786919034 955932977 977499173 528445768 768199830 793517907 802892773 53931935 878476726 838247144 965956230 666840209 791793768 18120994 991962435 57482167 612053542 875555707 986143587 653378478 963123992 11662408 179332907 102649084 508104366 599443481 769524414 166684021 705571678 759680757 827364693 669749290 884750495 105006346 558328903 244539764 392073445 721100338 906432716 549791510 747685146 577215706 619425444 832010331 918586275 636509538 649115717 511597326 754350279 164607356 851884496 589022971 833374607 801918586 962322803 671348361 873734520 913981031 966794689 996239102 997782661 730201415 995725553 324221374 533759527 332927091 555819133 740624534 829308408 523443384 676969560 362311224 627881146 890595489 956460841 2099812 347453012 99622395 606911557 825527692 835949271 621218347 782594069 800479903 807888311 7327923 326428875 970089425 979803696 178188788 516372129 123405223 649925299 393175193 985520995 644217044 827216396 923386040 976679113 837291583 988675209 618627484 803489849 124099821 312367495 813882347 967209496 117669355 903317079 230285529 603182818 984093267 986878291 857041612 996903500 688541935 904859479 252906890 901582062 909250813 935725931 552969856 723252903 312304800 666002524 465506479 659541572 956472452 981408237 565335989 824179207 635609048 945110822 806489795 843273900 532531687 743770940 691503302 775932973 377803488 561661116 226394269 300443696 491703013 600954358 518116253 695383501 137692325 938310793 172895502 944646927 155700362 521511908 439931458 476059328 126664442 549585731 756824967 797651959 404495702 909834266 100501456 825934764 723242704 837090879 346282980 755693790 239027902 950365838 895021213 965238530 637792355 963244702 139026080 241164465 390129981 441165649 836905962 924377399 118090302 998327407 642197275 708421070 742502984 821054298 411335313 830878487 718177649 890678398 984384126 992714462 223356047 513304416 208032986 432351812 985414898 997404563 194705625 676309613 986632256 986985631 654983818 733590472 737496947 975650475 242434406 502882972 947067543 997140628 714491935 851803774 703070854 786549503 406231583 864103174 226233535 417743647 589433179 847320619 666235416 809030273 855289704 919630176 879406576 993352783 842756987 876878405 838326784 978334953 864451385 944542700 112820778 561200387 190886847 678851851 355400424 455531695 74626595 915825079 223526325 532611779 256967544 633514547 707771941 718246265 734432129 905776452 890050536 997898283 343801250 723720514 274271637 945906363 929280997 982325835 824457178 852973126 441368546 695871782 159636441 613562519 108280173 479591409 281898290 997694477 709106328 962751031 899784907 920215829 729877861 961712870 874047301 884015163 78028958 923164268 554476233 946346037 437209696 597537362 270568847 677036084 989550874 990666617 398301624 460950657 410706734 504522757 872135151 930519863 371133256 410487652 931076789 951956149 423103119 918937901 16982785 980314255 158796490 953859034 138494507 491370476 890202671 998204973 404795242 692536316 674480458 865800823 186419877 527931681 812307461 937669092 568294798 826100049 936533158 954345659 738473485 742183094 519201723 611714785 309905813 797526582 284274074 312956795 657308657 829936023 386598926 459617956 154062106 204811292 475601679 566252268 336264515 360053858 340317882 717920251 58647880 947478135 364151131 418510627 256066227 560755218 86180415 306009039 571685647 578561285 268885342 911323829 230809227 907310488 677225411 936532077 281079814 817778562 569512494 906431020 537904079 955604321 951226127 992714789 815512172 984903304 341329079 856587141 218175545 661738849 714939702 934864176 892601111 900536390 435985996 575269714 503374093 524235521 219293633 507175670 180649919 664058661 723025840 953904129 442875337 722938588 16827953 115175372 363333625 925857217 676604916 972301823 558016483 746089975 548787649 819976772 633560376 790281582 176763130 236623719 461990719 905721891 782142375 847795432 903609344 967084222 562814031 591078827 251214462 651460859 728139383 749454694 793383614 825503482 659431286 683348185 199164987 762434687 319080527 338249745 379589765 852179643 851264656 895421103 715168961 901115150 145555035 386034250 843262032 978319477 38668918 369376371 58320693 416033462 827875623 933244927 785457282 999018788 338729916 792302142 660342892 767852888 303036884 491816555 963580717 982729888 307749464 672784810 981118006 992337490 580234714 665332142 211279839 724018082 543980951 601135608 840205034 921163376 880331414 939790566 12785242 130239057 86465111 346964777 695886741 888396624 690160644 825121260 881104622 980695044 766768390 903619279 65589731 750665954 506028637 960886948 128105821 669513344 437925729 612782779 649842763 970586769 317242719 858892447 137328238 513655600 161859310 167215699 312116286 783775939 907597245 997210909 612855741 629838678 804369791 810536251 623192976 753178135 716800130 867232416 526203546 759245940 533421747 659930937 278804233 406278895 101743006 782047658 866998078 960646205 558087864 613758840 439192425 582892714 212178271 607570199 686043262 961413776 626141305 957724549 287432145 343600287 361632556 738373445 765985205 814337547 602803496 929305414 757151558 822781652 145523634 230459951 494890939 654338664 695963740 750137332 558502139 923876465 372308728 517741089 734605808 919319050 109998064 837464506 412478865 891476167 77736218 488625214 561197757 948823573 719264720 968128788 742490792 985206724 209549399 300785120 680873101 855060962 318010789 865517300 645543148 721819374 793021488 914397007 430452818 544248173 975457499 990453516 844439942 943106711 615095253 854501503 846282500 871214247 698030911 957261255 183245893 948380297 178399480 327498885 142221431 903309113 704469537 910785010 995357243 995591072 332206568 954127932 886812681 968728822 223197474 754545705 773519620 947228210 225902438 945345797 737905753 800719921 749974932 866246418 855339792 949453055 709994891 856902610 894416769 998899738 264792623 479201694 40724955 573980407 613723526 904252326 998049123 999928563 673118169 898145207 173158803 280756184 391130824 921019282 922402385 976532705 758362654 789024252 579253332 895822843 936541029 973958667 569461233 632201768 98076678 487306741 278686774 699013904 740885749 774118294 588148332 755390902 861670314 984894802 483629520 970253427 551612481 928485496 784383792 918524015 50434372 713761419 978707785 987379618 448860076 990941876 107781216 923858102 552735230 980167234 453503834 922000505 405265043 674927368 605193938 792431059 28668216 763802962 258054220 908998462 738566772 977116537 233329122 635133765 189507992 308012738 973944230 998064140 425616743 674926173 129090018 474150560 425593019 503978656 528654159 799405194 827871050 918199512 128513256 183688635 284805491 748986588 24260678 588628354 269918285 924678921 627464637 958280293 773858543 900423323 638394475 917833359 300542506 500665972 350707079 993848079 498732225 618563986 425698779 997384301 750006029 978304855 2800513 749308192 682497313 844159508 471804675 748985283 368544380 503742783 823473938 965960809 95709951 666766665 430698928 860556944 375828854 712839907 233544976 860898909 799130168 859630172 168239434 678345769 568900234 733096771 425070300 968585050 72180092 115159787 50756845 823161293 865001552 988819353 644306094 791903838 940076540 964950694 451731363 537560175 151861927 953299615 86907027 106134034 471676875 761308590 974408396 995305853 643157997 745346365 105590885 966630008 92318142 746316953 910963476 969325361 880479243 945051537 154924290 819893767 204655997 611466017 208617913 964404215 269098922 591254572 456374829 784832088 308865006 581914286 734065509 868141126 671524078 844386888 359755999 535044107 951233058 953037815 262468264 427738528 825311710 961045218 245410845 968486798 335669715 454530014 342364215 411153279 188999287 403337774 105595280 780834593 971860140 998351416 444074622 760606515 295629310 918178728 818374209 944374877 959845839 971277795 789679327 953888901 668046827 973584426 938316005 996495936 482603344 836156721 621513215 796199427 550823925 873310989 712551846 774704980 995428221 996594815 977968757 995894217 589948002 850378654 644265448 771789101 202026190 647558501 99912855 736793054 333214772 865572224 441110738 991709112 928270872 961127841 107002600 366887497 412742090 537921764 851835440 855420872 872284365 999784882 876042675 919376393 632005160 918786668 342513833 688156045 198807172 719001897 855418896 902816956 289943349 495256384 263712048 275504341 427104772 490852631 441240403 937580632 6951334 904062279 741942349 781419197 813620169 948910874 313273345 985343458 44793019 222639244 958518466 971785636 136273399 531800091 457158185 542761993 126258448 852725793 419179822 956235936 489089235 717659055 765473926 809891693 653910274 929349999 446951632 657332194 878421681 988215178 260544111 704768811 86340118 812748315 536228094 990682001 698895506 905129313 187946398 563963377 955067616 987878060 182414092 998257819 939503059 944853917 19611642 590785896 155557195 166187739 927557961 956365689 417102894 697552914 345937314 772572409 385468678 576463925 942054606 974577623 419121964 854505835 455521281 779896563 553948120 761371040 794803255 941970306 921678299 984119457 110096550 922722164 921327053 992924029 533258978 732643918 889584773 899038142 434986507 482285920 499556127 859902563 39164817 560418980 213612187 876602947 9018903 191113470 26442138 346354758 879986308 886761458 352323181 424713364 809840251 810554362 57884851 65852443 318885308 781178224 840267536 863367989 100611952 408071599 725563028 746714599 338952585 555889892 305402848 572318108 881777521 952941176 612698870 767702017 255920065 975871894 463056700 594828752 736616345 991894883 12286802 875751333 614490366 936620670 871096722 982570590 286949596 546631025 641332148 742317482 675071509 998251386 524560388 951813320 670388432 692380347 386700913 507151936 232857242 277870658 781860619 828533044 786862240 919497582 515323352 821849410 429372037 765120211 875402929 931041857 91244324 659285825 714979573 972056570 11575871 204239497 249537383 608344939 446851607 914016178 981372203 997033218 824923811 971033791 251125377 878678453 664637307 701036966 774558250 859561340 604376747 618703479 379582032 899514453 826618021 945994158 756932766 858383051 952448336 993759810 908624879 946513964 399836053 522433724 793057148 814989391 849718218 908133344 884455761 988031250 767391536 823554044 480779053 868733106 871986552 939865557 503781285 546455124 633167461 721426098 919507650 927665431 399728462 889799890 461024460 525635280 882624138 883933571 412626592 782450202 893059492 950737674 378439751 799120225 996247487 997286626 783280208 817756551 155385112 335770818 169750163 725605026 842939379 882293967 769732022 879135138 211602392 976697020 878888316 889815161 437405494 922442577 294587840 363528442 487085121 921967226 228254611 359695414 446612788 880842058 165865528 468475657 387953819 555476453 47278215 753589182 709641864 836634105 889228755 971084816 304559033 392586467 967850935 968108110 989595759 996597436 386136235 985462025 887827607 892729657 404568457 885688474 465121347 938030755 414862110 990404671 949886380 954128237 532397653 584564122 464949167 830101908 385433441 975857159 435009614 684639136 474197761 862757671 431346879 492580486 481807141 833930492 847638609 872355357 324248994 636956379 206424481 230345571 611190103 628170840 218836091 742572803 298322169 631289590 380830052 976560811 606928487 804950241 16043488 120116079 62692009 138328677 460268606 496092575 321851506 544539255 481399876 781452471 267894277 380170090 841232982 875804403 304905920 669454362 946623847 953318208 430019671 842448836 930093494 943934661 741280497 859071295 242520790 878703492 844680637 870038897 998509405 999647898 892929066 992922225 324591023 958555723 351128562 500666678 380006148 774264494 789811866 987186187 148738820 777085824 855854422 899181943 386042468 554847129 200106888 207118762 884692138 950423643 74130622 532805230 15567459 72279988 272292306 697573841 86522158 786698938 406383777 437788612 46604765 692724206 718475300 995190824 767905397 805943461 477268813 782589312 180438662 324116412 800594706 952793183 746527950 871467256 274365897 867536856 21245771 991206232 27707608 272076393 11950521 916954041 921715529 959584512 925605974 927529731 465351186 780808874 882492356 968912130 452730627 618288953 185673013 867786095 278440255 286400588 776651209 850670773 838488906 955575232 718773947 958099048 313836961 577097817 682508157 851628373 532799147 720721638 841233291 869863819 568420800 598779407 475365112 875785490 845326090 900323573 203764657 274337184 663290884 873387694 886091632 900017955 799512568 889374611 872153531 926138017 104399570 528174730 435642787 790601978 692154410 926475291 982415718 982984296 353452169 697225623 166401730 658147012 610160697 998788347 369045687 495419296 769348131 805509429 693661803 780041231 628407804 668511515 701478694 992940629 45661820 710868312 309490458 985001035 623334867 677243016 69349244 917096936 825953208 957384624 371643418 901513132 607142663 617449353 476843926 506227353 828744448 986330130 557074325 877543295 394109537 454128181 345770793 916667809 76902104 808707064 7215101 838383119 638009440 873605393 196728173 819868529 845394039 850036084 934708792 939188661 272928287 384181057 74652823 293754786 942150403 975622396 304559418 880173989 313314605 495648860 182545478 539774696 520899968 955328726 367533278 429101788 814841232 821756265 95751374 271750780 161254076 902984560 516074495 760896676 201043898 701391601 683261693 830878235 686710418 793583635 963250637 968989926 414338197 547144912 397238675 736448860 300580638 704034671 540555377 902392904 974583164 997756914 437905197 744112978 507833651 635117039 901150864 990118147 235377718 732224002 641795944 663886445 627570549 826257425 294541469 580998830 157463611 395465444 336112318 465502800 630223893 844620120 978449545 986305004 636061637 879691977 954649303 969833724 107914192 193142462 401065019 986014134 344617931 862477814 257250181 417519303 967744534 969873844 456911246 529766583 442245513 470152049 377260343 395597739 262982179 781067225 189330665 205780993 150176034 994147537 568610360 635338474 896571885 975981176 567990768 918791925 671568678 764719333 484957927 829669894 521955354 749233323 983964090 998639155 484478732 553968831 528362089 811365715 745146326 860891880 687457663 759497611 537464145 894231716 122179057 552790460 473922825 593190229 858043357 942587174 994914189 998316476 615618269 847817939 925150678 989997048 120247106 440979556 708215415 755452303 820434746 885085025 263221636 263398445 959878506 976325941 554908750 753824605 434417469 834743239 965162758 972161067 287474903 693259949 622878283 834940363 245350231 961259124 755115269 791150451 65159188 821114464 603663229 936860722 499350276 985599942 617860576 649559455 130323586 930621079 475946173 633154453 774649674 779962940 916446944 936508302 126963219 724462161 654950185 962700886 400514903 668753688 984463516 990983903 893793242 927999043 432748593 501596630 92488885 411950215 778676211 916137522 452474864 889134086 931118215 988274439 976372117 977773107 561461055 808301316 795671966 808090822 520895565 754302220 497212477 572090069 255011103 269287598 910520342 954769846 447696818 811300314 352990616 353437393 692336970 985783075 589544386 718245903 389750612 967313175 922326425 981892702 829839864 920053200 704908848 984107392 893374040 944747532 140811220 965365879 630417589 891315891 41873344 706860445 648783480 672221506 654935958 844732290 82976172 451718210 655840500 677232794 249727785 991749552 724552298 886977839 474119016 623148601 933325755 987650580 927615864 989793701 657985718 821310131 5999001 177470183 16589501 707777876 351956916 954561093 651286270 859104409 760310295 767139987 358746664 980031799 815700860 941673568 695210116 908262276 606473165 819926948 846460892 851777316 484231676 860929592 154069442 260480905 349011656 425239103 724251815 803729416 588253408 633906695 66882921 214152330 853624726 996024818 681508119 990810888 456148294 696886583 470451217 723502758 80944928 840846826 674405238 814066206 625645983 922525871 293056230 740769660 751425405 905989388 714634538 980676919 460866861 995179899 235590362 672441605 232715555 963871612 225264605 320183367 717980069 862455102 839786856 977303879 558193812 736563082 912178144 981680735 415382136 813405064 656299920 891632009 475493686 874322379 262568484 428148639 530415099 953383348 263774425 479848125 187654040 227741862 372094884 632711412 734510345 831478051 31717080 546239835 138452571 692396006 147763810 260336366 595879551 708261053 570411088 608396166 322030233 664203362 995328112 998364485 690659700 968784814 699164036 702152367 328371147 454627651 717984342 735119803 604799183 978378628 94914851 259491286 972441324 972612147 879127295 919819031 658623157 982748469 336289432 947765028 467796712 869164753 50711151 164631061 706528081 856942447 484417031 527821575 172410073 461707629 724566686 854546707 483718504 610495615 757048972 927653060 446284836 472257690 130401601 555604091 917937188 984911837 666887334 947095990 83366435 860110307 517983944 733999652 737851577 911999501 83270782 158374410 326931456 337437421 395972129 774667917 565043679 804540108 212915560 950811520 75705709 770186454 272182880 273836853 383703351 625791897 347086202 946273786 796155824 803714000 959193543 975983644 951131122 993332436 98595392 600978609 734631105 947407255 663873921 673604789 290377733 867026937 262321916 628061619 290799461 517790266 653434906 790906518 828214378 992104245 662054245 846933323 893408917 916652782 871453846 959575125 654514665 935072937 58437311 589788703 624212098 892181623 984839254 997001576 526603695 958105516 60470131 375186345 735273469 939602635 796445253 930719730 948277558 976801045 547962544 618617233 83793917 462393673 143635266 339938072 559817284 910012938 800945834 874721510 705104404 744734239 402913770 657856504 852356993 998235963 133431353 752693551 502060230 730266798 492654325 526657649 291296415 603219689 155263899 205397675 967861285 970124886 206863453 480137340 358450142 396761077 981457361 991920805 489184724 685940771 931243736 998991232 885193185 934146677 151611920 925584576 826726836 921441284 598184290 838413216 171686264 478373654 335958732 709541982 368055214 847276061 857706704 934135689 298510797 548377288 455215280 799473087 221857940 645255397 932314395 952449267 581672892 836627478 590399418 597236526 122870875 421533828 463868871 953042592 300421420 382838063 385887590 704201687 712684405 736535286 131820932 513914118 398665122 441806371 812089856 930060444 938366901 951918691 494700854 707143273 751149861 925447314 487413544 906771096 536537044 967362756 482591049 664587384 628059142 708519724 746525697 942293796 856096429 915650195 804355748 952269389 583638830 906439541 774086454 991377120 983081008 997313111 807849287 870526380 470161079 561824940 305737564 696407668 708224142 754428364 220302350 572623659 41839556 272115193 618938052 858710796 269059283 640994984 376512602 754929031 815673181 833804966 18287438 850194855 386861587 821251751 241811570 938063940 519003675 878374286 967203105 967498348 708057237 784418430 975151941 991887292 757409209 780213679 181103024 183096402 857232240 976253147 655904843 976151019 291511314 469510890 318844192 920338712 815792200 853121752 219129418 284863768 499046473 858186600 617244856 777361639 4651223 357372161 206749240 797941685 955984090 964841675 178816967 933135380 963343135 967401015 864759768 983298987 38037459 538399331 957304818 969715032 746445972 780014570 997615209 999034957 661261498 758162298 167991599 168560163 141844374 336018651 171335581 886950976 96065388 161669065 866319341 984033806 771217137 942372935 398888864 964901428 117842049 948113583 899078784 901062854 5162697 747821898 268865596 366144763 748193840 904203082 631233948 898912003 520680512 595850752 862400725 930338058 291088651 711139088 833787088 932478611 649489971 905455980 904818560 910595132 127126452 541638470 793482729 890893961 162144472 851531541 542202168 809810231 134962081 629488262 192792758 360585441 543997587 651996694 42087540 899996119 303291614 510731729 538949596 626976056 45926276 845700094 341755136 856775361 117904648 134811228 784220761 903494061 111500722 289112603 225980443 543847639 307639150 832744303 402244769 878137538 244361517 848123509 864874935 953444322 178040664 583526264 144606899 198468207 725481252 892372228 422337665 507710196 964765953 985229276 230200888 637472565 508574806 677543298 488371682 849466166 315705707 888846294 304505652 999481510 282277624 631385687 416487101 541855889 786476916 822754647 537848362 935774964 138013068 146780732 189463583 236344484 731630753 933874482 491996139 962620098 830527858 977539086 319680314 853728068 626663209 684968803 240421907 278815718 399563704 825120750 978921157 979344542 701648236 718352959 323857320 898439681 159552489 264622580 899275012 951275176 768998905 862400532 444297823 753667314 372906978 536505731 25119431 319694782 43839720 907643692 710611802 764778363 620947083 957653398 374892286 436430887 522960235 849204514 137687924 896695264 905683197 958509991 632681992 662397889 277939527 331017311 904434785 916373460 341716784 851198174 738878258 760374275 251401012 807775509 826978240 950119857 263070232 839299412 685165581 717376824 565688136 741643715 256817980 292042401 331341744 565634627 695024625 832036020 333034469 970762234 860924544 989704276 141842369 636773238 579877681 835033790 212998796 335973168 298178140 473595595 822822618 857343143 411746097 457503553 615390090 844319055 557121328 929529446 712241703 842561975 569480860 891038186 583301457 733605714 2200332 371691708 611605969 853268679 534490205 782228633 984297603 997181741 831644664 983213415 672232128 704990886 179215780 490891973 127937490 324433430 849670414 927879027 682006707 939744573 731504332 756827998 345849416 722669594 640258448 888288247 37039560 378521372 929910885 961212897 131216744 251317996 986619829 995854120 113570216 895771049 828686567 938932406 3973556 149657154 15184241 799167183 441202926 957720739 193856023 821063052 320198572 329093276 255004964 597886949 91684631 806886936 784047711 859478763 537362966 813338740 653494424 999146029 551113107 882929687 778157755 853361705 42985613 385846085 463492841 951701021 683881240 747076902 172533566 812635403 239143405 407949224 939852163 962474423 502459436 614960576 458099529 715528926 710926846 972735943 751519801 896902991 877599875 927654212 280090122 551637464 465124274 760855796 194579710 296728091 867604942 927430799 413949596 955808703 184505631 883147627 537435520 692978266 155044090 719460944 486161616 671242915 205835985 527339871 3719916 268361145 982980860 987139691 45881011 948096074 343130559 503878663 308665007 653567178 892505643 904108210 810373755 904826679 198681926 819749037 87928892 486014115 475515487 722410528 861076667 956662090 480099201 776476113 152423628 174712497 891035109 963715634 285966563 992612016 533661318 984211047 113441872 118129118 363157479 635948977 649172848 868578653 225036218 676819699 693810283 913218698 826853308 961769673 239815462 778348482 165900708 527299595 492862858 888825051 148534953 837964270 745970431 874833935 185152190 646016893 569420584 727832456 259098678 791558213 293166007 945855875 382082515 758229353 35121588 487751393 72360203 278713504 973230256 984669762 511722444 931659191 968626841 970488647 955610542 988120526 54175971 862905284 58633985 503090251 343077948 396272227 756595368 842720030 490875187 522733985 190754448 995750487 917149209 917731531 917169177 951567207 503227903 950565683 988672914 988800450 329103992 976620240 410553887 522321603 568411706 747638830 227551323 984768427 362294658 382787430 128057043 377985483 593821909 732008543 270165913 309923029 713144284 832746958 442802882 681619934 54438630 641357156 290545514 672989352 961867991 993485234 250335520 930363501 788337742 968805131 200382870 522659899 735230605 826065009 191505199 662205090 792871297 803697788 900092616 904106505 81523723 689661138 699500568 891714481 636192668 658654204 967925184 980560109 88453272 500342172 307186484 950052353 974873941 978195801 827150668 963791025 838705751 855733296 807558517 832763511 40083112 750562665 241644807 433882201 493834438 912825004 288241701 454589043 709114935 726983088 798432280 817224375 908374804 958297420 843616560 864009615 6386683 763397048 794781518 950398914 248388587 865782908 315818988 953191127 195822231 396735259 526846002 831661132 82858759 867814835 55311676 76421022 618663460 950953523 100515412 609045933 621970898 829099685 939679469 964540234 57446286 960429296 598252782 838915869 668484176 828310530 70086630 286360310 683344962 986645980 2134626 719346715 704498935 979223519 490821012 653091632 790598645 941824385 471710681 959383371 594410586 938492997 555492897 631844039 289841495 484231553 550943581 558781823 768981354 995981038 716713893 910936732 182623368 225849133 521881697 749435897 28674531 995048534 527454660 729673241 425720761 810408440 340605999 546894078 497649125 534331606 892005793 914427567 162582527 249727769 833641974 967340031 181260164 750265558 715246804 964477005 955804908 967677830 832894867 833819804 325604234 515975896 905664096 983459391 508914183 941845118 586303590 677895535 211505357 889172923 250175367 712527795 650277275 835756456 575098005 764914537 976961353 989173117 435616300 670545660 188651066 267721835 874087149 960424050 703812777 727161482 778342286 981989635 278186662 368954860 52915798 534761230 673722441 889262799 524343079 855818578 718003600 916404927 628799049 998673095 124493180 334497374 552284515 592229431 686820818 856783119 245157876 924724525 591657205 835130631 410829666 422498165 184223342 313075978 843758497 890121293 356883874 502130897 342702818 718940348 32652152 426378839 923598098 950451608 969122653 975952099 815265494 827602241 805803745 845805162 679944150 947774588 898662696 899456831 238446950 649279514 905160968 945155210 745734115 829664803 676087978 903575277 956781393 961433907 8863922 854329156 34859214 35005931 17117429 686280278 465528478 737883745 492505489 595610884 963742548 992041782 799921484 812478707 689753419 763515381 907388006 927696483 55869669 255342132 842857157 898993823 261799383 524162280 586667835 888426344 980705475 995809624 85761903 285523535 826777976 845717653 23443182 703769682 57847424 958751724 450344224 547676167 847565839 993507923 686514407 964266324 998442850 998449608 827917671 928776402 88467785 902952233 254165877 556033054 294972022 701266667 627687945 892414044 989962905 999250198 813149346 943529758 787526685 812667841 439671666 934835592 856945807 976044727 774122406 815766420 237188133 699068232 425470504 777832427 223356118 510404673 40370465 57948378 526977683 972618863 209457991 330402596 871157293 895570555 858520505 946845740 548850460 879415061 369984583 472231875 218717922 225912593 617232342 739123146 104127639 411144343 431384115 584577545 807254469 976392298 583963645 631385415 160888200 243470098 580082000 784156846 99069023 432773071 714547082 890723490 752745915 890200792 165205055 224672978 626453362 966841682 384899685 699967371 529627554 894840960 971953594 986215075 643311232 668277472 51159805 405100565 672612456 817907528 577642568 761798950 659257305 823141652 346671218 454090049 999811826 999905605 999955454 999965012 214038171 628143993 158007453 734723469 560294696 957648514 482997522 545166044 528560233 803294244 774479845 914831483 637857376 894991803 307936263 961025561 189475370 723664882 985466419 993850732 748145567 881919186 627689124 924498077 855966970 920434904 831824679 840271956 464369961 722733458 664344805 853568262 312887399 856939972 849412348 957741640 482001001 669554853 187661316 457153099 87180005 103247936 76729618 115462759 687849233 788456186 357728334 478995042 68544088 648108278 311760525 842187923 489105437 559959444 728752339 978376480 27178514 691733243 21059951 33161610 922789126 986255365 888953149 959373865 713766346 919650383 62254113 823983036 187589496 291667980 599745605 780270281 466229801 553832776 834000305 902838876 195559582 543472240 237715612 541183964 172746809 936252855 217433330 634792390 440277059 985007122 763894771 835160106 591858646 637926046 576748590 674408352 768343350 934824788 862356596 964257872 283515775 715439563 2107830 315567682 221169292 922377965 483903463 876864724 482976011 502809185 519496083 856666475 852504497 866271495 392698771 842761251 531333031 934479050 651800239 743962634 612613233 753609567 611277210 986826612 45323106 55463856 782941632 818179795 661411691 956665291 362890321 480677353 163628360 374240048 501276509 754209113 486274851 796051831 962743525 966651272 171048439 234032794 805112391 835066880 728155592 900061114 703758989 963165463 108837277 901927582 645629111 824139487 360359604 733419141 654966653 937753505 167490934 808113094 336007373 744034166 803037160 994680916 787179146 903850646 296067696 610168100 320000513 502153762 725426337 859033405 856172197 987255985 210993844 381019534 727998454 807236399 624442880 836427937 475804485 633064076 921079804 984083067 715052286 974043716 987306298 992360248 226543820 807670258 781199150 830036706 187826995 821864190 142765595 592138953 506040216 799419342 155411751 489907555 899490343 947640014 556826438 769303767 242736961 471891317 43102674 748862190 440074056 603068669 768583355 779003641 551780520 762642854 456986070 625025401 968306314 977748692 599315800 704402608 578246351 846919471 163197219 472278476 464158558 710336170 999307434 999942241 543533789 798237074 534932783 937789456 356531943 793371156 170638951 534582067 340330105 988527323 407374869 731548844 937371161 949210831 454043341 957737640 700297346 927261731 204856236 843444492 302947051 640644708 624499753 648971889 343370220 425343216 620943531 825900282 456031211 607169758 12520365 430662475 91366997 779185752 977878299 993782144 243088287 256715012 365647792 382789187 219116797 571354948 612130458 753676604 239811195 987371117 244007134 304634684 94646536 144960641 334152310 585539301 614065793 907365059 515677585 973797380 556158318 707907833 710367430 895261630 88710763 977960147 148411866 254449637 534046004 592623946 28400537 228138618 175856016 986876539 2327414 168532314 565770452 959760843 124577353 431361312 767778512 770460215 783697897 833611639 131359257 154683427 440464215 596091126 620579595 872975795 64262724 151672439 463081772 483589462 505464925 825559555 709087004 792654695 569614584 673065825 892279579 924155120 102342299 947607808 745030853 985737140 190078934 389417482 499409224 955312600 230776512 829179039 320563210 705111184 39058377 143658551 762788508 807394455 600487812 726267713 587207020 600958820 525916502 911135466 296845132 573326123 670616992 960116723 523275124 745001790 123028520 681865046 778098649 924466109 187100885 384706104 505410794 709453179 248353711 383418220 583322966 979106987 468936294 873009344 399952416 989100235 625091401 906295222 971991067 975186276 615621790 965734215 266606431 635683311 923251767 946584647 258560618 840178305 625980623 818689659 267802709 426464505 352802189 472833269 223463720 374420860 642234462 851179906 805731465 954199103 733453609 926745794 656608287 787706599 809755754 923522005 993627622 999817669 799031227 895524951 421474580 967850104 970962924 986177638 455466521 503709022 506888605 886085282 271053193 707034099 476891008 922156019 275830134 815696979 99541676 623019309 985309088 985740693 776891190 910516518 722811311 926093969 46937275 194911787 233375202 580072541 597238389 853478419 769868839 882561466 88627745 548928446 42130450 131575935 367914671 844578929 178180381 588864184 646012460 851307371 373726181 643636557 591594813 960646882 135621994 991460838 970886043 998140336 699416697 726379443 460609468 511182578 842419025 915474507 183830745 995691938 13533353 660958038 561206470 842413818 46342474 573628278 924730447 953943869 511682039 923693098 654727429 980840461 652409299 796627021 208606660 690773808 498000569 942769105 329259106 997492411 843128929 929728567 370469630 429663220 925970959 982838385 369809833 561224072 468606526 986150977 323989799 565820335 611519789 777536409 543239993 934173423 643957887 867951794 540297284 890480617 608378746 873105603 381172378 467118548 50770222 205335120 807084678 878576623 742246597 940409175 99780915 643062207 434649277 724794424 604461018 998847858 70281873 109285747 958035283 977975861 789978008 842143908 71600140 479282898 984108657 995499349 531125558 699609003 829127217 978529763 890079834 988183270 814371627 989882933 342610232 352937541 510987221 611358261 755636242 885676308 366797740 728426638 289473227 484809947 589365894 641149634 715746137 847582700 95289321 556308261 599747685 728140470 847939671 905696732 435502650 769521333 115715557 754135384 706014757 783760162 839556814 843206826 611460538 650209436 471237242 545495140 302550904 327442965 571393596 903227774 460172708 722621545 55647196 757792362 681061955 983714378 696096832 838887761 360950635 422057134 46361334 884379274 627383154 906511691 177465572 375103053 387270157 609138251 61338436 700680420 320524233 976760170 474659770 654733747 401194156 988845920 39861586 215180149 83772375 983953252 218823999 482322196 170972174 371189238 186290489 830826558 680586464 796323964 990371382 999010822 157931339 676375595 656426660 966790019 341028946 953289758 971498814 981042772 284961725 523951206 266318918 699389214 308278740 796255387 153072062 368947684 270598894 305360103 150540641 651624890 914100821 927416055 813511065 968204116 881284316 892249239 260535866 447247250 942141575 974066901 923921534 978005227 699227040 825120069 513959503 826014794 297301449 576765054 563675901 615153153 378578564 455203043 81888183 792069411 846068268 886649318 173798403 565523782 301373717 599289382 172861794 832078502 306254764 442007500 55062639 351714558 744175711 790069565 48291553 368759174 134989816 364114873 670158939 703945346 286584548 425115918 694304043 797112040 428303448 768965506 590141717 678849293 157852769 699766456 556701691 890891821 312469165 409835713 268238982 775750722 894524990 921815873 246398134 481552198 394424348 899288485 606577338 775073290 162676568 552789571 953401207 978200398 85492047 448276865 867915806 975478421 679240233 839752221 520166132 993164964 551798796 939897158 963217330 973299013 711572595 879198834 131803843 140792605 760541252 778966952 749389873 961182687 351841061 608001769 204103114 901896154 960257574 984608935 324911122 814924747 94872594 455950719 179023678 276870660 694945337 756348970 766348582 815864292 330678835 557161402 924618776 938433198 166308258 207127809 292896127 531190075 655111805 935201600 821307066 833592676 732396108 816857258 486195489 613789332 817721589 910003790 963098442 980393999 548139187 647367441 62699416 437581115 781312652 839123884 939043099 947022618 895896320 963910144 54506842 357863879 118107012 969299808 641384474 722218877 581412490 817405869 947889923 971106032 702759565 757256258 924493164 966819929 62362851 724298555 67440460 512210968 549076043 893256259 462668654 503409212 668666113 774259331 265419372 792101660 772657734 894708727 588634784 662261385 629205035 677247116 147749328 653556672 533340157 634571730 675143943 920820568 76052608 991235203 851935005 958664551 806736927 918005234 568826398 928742448 315276704 950001158 799042234 939347236 613724499 971413583 738799590 994125323 468188681 748100375 767549488 923407512 798353389 901278850 435738894 861361351 22784372 282675946 889498370 935087521 293967852 864017402 431144320 927545087 636848071 698672078 739769317 931369351 114235670 320178008 413423065 944907445 357782352 441699590 444787481 474348815 2402473 800886503 96636178 935620966 589876105 666417553 450638988 799474285 575585419 678564900 659031319 815709296 741985970 761906639 531007966 760125879 89323846 378379642 31478718 58542709 29746665 262435786 588653571 745679975 957674699 984538963 54404988 245326694 340611334 784317548 601882815 744128341 744934502 781586938 473441065 937188884 132315194 597032450 415621747 764226332 989208473 992083068 32155610 239930776 871008387 953752117 665409226 957899241 731870120 918845254 188794339 324243284 344934278 432624623 982850741 994369459 286831076 576718125 334374321 402780316 526449261 529981100 480892927 807272891 839132246 891691916 243119419 719064826 618232758 626017053 722791066 912508318 130742994 299349493 402243744 804456107 527179947 807449071 900464471 961356804 409922730 536378038 122055762 604139719 811067647 950321535 502776847 547736197 996861700 997446560 545008934 966353552 980393147 995056266 517954167 722491961 57971155 70213553 189178151 871619119 468219170 849200059 555127427 749059775 844314366 979865746 48518469 634535986 107976254 638444199 485293926 757457829 444684829 601991829 821204372 841522739 105976202 635554804 872999290 988844848 230098166 340423783 489758504 739597816 620031574 735441495 555816932 604767421 410053712 671733832 68209827 216710580 601242955 656708825 324550830 858465068 369435864 629053012 592398715 870749742 170952959 172896228 273110503 704821144 688882269 905760042 219560437 755845952 263211707 308433160 413668743 801367517 609953060 884214728 254093389 985285256 591142409 803539985 575197101 748331623 905364370 938741654 875959802 955668160 335888171 436571323 352763905 462529144 955235531 967961789 933778919 985256943 724777268 790797752 627166486 941650752 671898223 754713178 818291991 938007405 312480016 878439937 208774137 550225426 188563611 946308917 413539733 886609402 510137091 775627859 882962545 980271756 153285896 976247771 52503705 257249044 232744775 535928297 265874481 969751735 58656361 970874223 838952344 934952765 637377933 995241197 475232636 900957516 833824114 982691560 446892731 833101143 124260757 169093285 760607631 787215464 507004336 944112032 528370347 845784016 706423845 814507337 33224627 34825056 105717281 610151123 947750588 963576502 801277169 941338376 613447557 951157323 934533199 957796058 946023406 952714985 16062710 873638733 254212421 940110404 89283312 803530417 865881574 934498889 456920363 756994210 863940205 942398047 15322673 759759772 710106201 768775307 898082771 951509397 964665381 970490707 101407825 640449165 619191021 778372632 969311199 985731845 714885497 917688806 886425133 937066279 303646355 400489201 649994037 700712590 387109009 687043096 446398397 568217494 57359630 201100297 678061637 696167106 763059138 915977571 178954839 556119066 195044070 438725151 334637185 775592891 94457050 907239906 487334849 871965794 686981830 965305809 721561924 959940062 288525623 554079998 796846132 966375480 997635281 997894974 711184606 769015029 239751954 446091777 862237819 915241593 741648314 945803398 941465696 968789927 28436998 953747675 55655679 312125167 256278299 574255611 53250609 738048061 155796370 940926670 587070829 891775101 291469267 896119957 56016508 206500724 852019675 977735106 138650592 580013764 951043247 971718476 326695749 432310509 622549551 884200573 916715497 949275708 113817270 495015327 186030141 613869787 939607711 965581401 294063364 908855041 305105614 322515444 226054487 866707184 36831688 113159750 846564361 945793065 840173769 941418240 477785439 996329980 942358578 994686632 25699809 766231462 687726430 936439492 214374233 486670418 104828742 372254754 22678453 102827726 430792305 537524400 218137661 825312698 789380115 882316698 351056707 429938476 329201264 972504955 70158907 356142687 170739952 375761908 71376883 545603919 626836656 760971140 367465160 803314033 873745233 935360201 847726234 907872928 316480420 412658004 340123711 345240339 381620720 457321237 139167471 342685317 385875488 789391272 264175061 403834652 205345736 430075878 261981366 384879961 139072857 947142421 76767331 184664748 512900718 736445204 40752920 840498511 960148568 981144674 801070211 809919586 711788592 819501952 530012528 906489273 226098247 318958862 138924171 824673465 425227057 917561368 88451004 431047389 631180317 843622164 222657874 598962552 140204415 235329469 224686064 914303263 953131581 990288581 950545443 989116917 382654890 810063012 214084628 817445175 770722455 878041974 1280713 95078074 265257366 554956161 249063390 404674928 32155310 494157286 747588351 768716311 313226372 986898190 680416165 904797184 77620946 464714812 474269365 579015643 184434140 827231269 428231669 996711971 7069243 260224706 919159849 931555573 952997051 973389377 48279107 619772435 728449173 768025257 238968925 886530725 853137945 952962858 320347168 960045633 749668597 991233180 481095529 937905331 994946606 995740320 820380640 970535825 422291275 465054761 654023297 664908310 168552654 369178544 320366581 998196699 327347935 419087406 640780613 711421122 437960696 454672372 877176006 905579015 810946473 895426884 72121835 926242099 821539168 840705809 336657504 627587020 892524661 983039856 939716066 942173150 167409065 296050573 418475566 989084436 784014987 835922062 528486963 791320313 404073287 784822068 412236267 981902041 437743945 523296391 982529178 997774967 969470995 993624774 572505925 780017219 821364479 976713136 763386868 817407847 167370968 864129048 263120146 517624951 524519475 938177677 39532945 618178658 671894109 957521165 237942025 352477363 932687795 943509529 589396552 657625140 298587466 605835599 490365229 512268276 230766193 760990400 410351190 472384967 600704399 622478284 894098568 983590780 494142750 738040589 505949415 567853084 48531481 217747070 999869109 999973957 844927734 865829815 954260493 962538719 57689978 72726933 317099515 912582215 37521990 937340760 735915715 956713181 238433165 239225615 604578711 971863092 302218094 895485309 4102371 507369576 922932874 995387495 562551992 793578802 99063495 280183660 27792638 855181126 579758010 854074137 147860927 379964976 141614816 359710671 870457615 982080085 819739813 880408660 263089294 494471487 283851289 844125614 941525001 969907115 269199465 952378456 729713228 910108629 430382046 706113042 149582008 262818526 197200542 487898840 384701995 411588011 417379802 646806084 209183919 847040006 997170482 997883382 751603093 789558110 250732031 750098269 653972043 778378532 350619068 827029044 71945734 656114201 209790992 922195518 919752906 982997589 707466137 938744216 553386087 780833599 272440058 956669384 248337756 927906970 302748670 477947610 414548346 706503916 321579310 989496171 545567817 642135864 811419337 940887394 626816353 799155541 589549310 859735499 482650496 586527137 121759956 695226783 200747820 977864268 954072349 980308708 250585930 836827463 54343748 172390339 712778438 818648466 939896940 979720180 743654242 765529116 134504735 800515619 301773609 685985204 920945693 988619159 302455140 723159011 127101676 874520651 323266593 900925755 790532042 907151370 111888684 314463735 75770731 491234013 249752254 796018125 248409104 584945707 597651989 861512671 560753829 847655120 49291450 574322276 450483115 849555786 325579361 426313408 297493868 496487899 467853426 779643688 64208449 633210778 728147385 867174517 989941619 995576738 707745874 786367906 782786053 786421101 601954985 627694149 277374986 753471829 807136451 930866030 646209903 772018459 104108007 785762641 193775534 711084934 813992794 914796190 644889441 782787157 913747337 931314490 665568159 975938213 404890209 660222849 672033870 927631010 864156828 914164165 62904226 704982618 331228334 342166894 383096238 898994243 426531888 980645076 82497589 437216400 802656878 813358905 937025688 950272209 247842470 612175319 285894862 294370122 159635689 841783378 196010185 539874239 838225018 958375467 188943993 491162609 785379863 830392964 115267831 472571342 67966872 442069037 775549874 865664955 496675825 903154044 46037473 91216297 910732752 931112477 339602567 648695534 466792777 770001566 635885015 849982735 569746755 869265586 245595142 375930393 45306140 307550341 749532426 854963285 125506342 871694782 222477158 964843441 872324821 983212709 881113536 905457956 174962832 406752370 406465413 412780361 332022547 944738937 988164734 996322207 73878276 426293534 503136407 798576006 260554902 370459754 658482825 971529403 863314716 922933770 408242223 606476090 664832514 987036141 336577582 570751336 598379308 618806037 5404872 393471739 270823464 327808670 456436270 482875158 426839067 979688206 849054410 854032333 514505568 721081922 870875323 943827362 57818789 859686418 76867343 250542847 695383242 854871037 477252473 570727007 669435709 687793103 710011242 881741444 419549298 780855715 175340729 439000998 819133967 870385393 949177089 964519982 94660711 643332091 646661588 873813781 277770643 296241875 380909584 589585375 990926924 995376302 201537029 789938503 977581257 986057079 151125769 722045585 527554519 995777886 276476548 577955640 870000652 952186412 634732443 998747508 972507002 980031066 61631667 258366849 415862798 636011013 412068382 984452956 322013449 762546323 232496573 853675364 406906992 673016817 344582077 878860924 255432148 810465515 416999235 534589758 870776757 888849607 123586321 219231950 775836467 868281218 517416198 660541109 893710230 923321652 474224323 693160894 461108754 720192179 754220625 971161058 312162325 429384817 470126994 903604063 684255486 910882339 538427041 870861844 499150714 971526857 461422468 958773850 588075353 880038989 817416547 913195708 547296430 964473540 726373436 977660630 565239975 928331734 997964642 999148398 171403664 265010625 923625802 936565055 566009615 685158212 37561690 449387243 133991754 742776578 259424951 752764300 683838313 844927953 219745254 585122966 221188355 233245309 608495750 687276761 808801460 892502065 313851583 963219196 353731644 930298580 413059400 707017959 655042175 898871970 220541017 905598930 815579750 841155918 409879446 695211921 144445050 520349586 232831797 500962522 203919592 449566007 569215066 711797365 145799170 195022281 274123486 846460300 750275199 929545938 968155534 992135741 962295845 966274711 369816142 614420307 620539953 971230983 836262497 973872069 419004541 727533945 777989125 842393685 959867269 994146270 860548715 949833329 799604170 801804169 885170307 904149954 425097869 965913715 614308960 735988943 543104570 639667896 205737282 850501593 104579938 699488901 439393724 611253175 442136152 921095054 747904816 800222073 820074905 956416505 560556987 827632209 199671768 334703287 708444230 799859485 436628565 593359118 576399334 903144463 690408219 894078548 339463485 542947470 555620945 793279899 984719810 998648483 913006892 993686654 585284107 695171234 335327366 430085819 568538196 856032628 151853882 700657501 503422797 788697700 483463258 590520023 897814649 988607821 653028400 722755166 439543699 569348480 739216995 756103420 83400637 422428345 352466426 495268516 572006096 880732455 706291559 929395898 655756503 845507522 734647124 798694111 663093245 825027766 767021727 970257168 311346211 871337100 581228403 870508548 899016687 937852237 117176363 229741061 549957657 935871509 783867987 821938487 541348079 628708461 70678402 370201443 639035370 701987130 437913861 997854359 376940714 615339696 368479801 777358725 22706867 661784932 581678510 814975199 203448359 926446183 102377676 298967604 873759864 977092854 449779247 691578893 924134601 929401027 721573797 873947788 353840430 754766259 370414770 897397923 278240067 357918995 107438629 293744017 480953367 898257695 745814832 903434797 701343172 947732038 362472462 400014519 818083778 998070268 146004811 222585918 7440508 562574475 690674101 965923354 570437415 572889941 898029066 995471949 313182140 331184075 600840927 845139801 361107019 516080608 450398098 560723277 923765769 935594247 324285408 752379548 275206375 325710770 852332277 869781863 982021489 996228959 200478659 862469241 217323189 740284084 130431722 247857822 575924739 719426771 781877866 859416965 847448597 852714732 984166563 986186147 71026055 430816515 580155129 772070880 549705514 635560466 608302902 887339542 839287034 977771597 503944907 864276389 6854783 148046571 410001268 855974070 338976667 784001223 956526633 989324131 92970963 169836835 638756558 764386188 766477840 988189715 106768195 487774579 539235261 940770764 56554983 471392991 399336713 879409237 64152007 919324923 556357525 654885623 448664732 686054182 240477872 772950516 140624203 634241605 544267366 651236391 445327402 632136230 563841454 859786476 946322268 985264025 679219584 825234222 293783122 608301472 984589629 992491155 465709986 563255896 10019493 445672401 899885674 990765557 50988856 944803226 535407864 680251864 58442186 746329791 818199632 906414932 594519029 657424967 811173914 997629562 91297926 859029763 177223502 220336101 660373203 735664431 322871983 729677350 888712350 984628719 999740402 999898126 338142295 673588534 76924221 391507786 22977845 534803745 72323046 221401573 201581455 824962671 152709247 374146230 443591867 931329171 988203771 989725116 833339832 919542503 409442802 674157141 329499251 665318562 25384353 589396445 465837155 671606577 792929053 974324574 887651384 959248898 964864771 980800265 714505319 933517811 549364230 809942152 758051423 819482405 2156660 382456085 452552127 499391423 630339026 856453197 232803190 595480742 213137192 333223109 935639898 992628093 970766076 990246476 707346288 713875606 813464823 921613351 466011159 489523085 400722158 785830076 591215206 993892296 84416055 235633794 233683729 623700923 290889195 594066762 640167844 901892338 168566445 328923882 195949037 811797210 765248721 805581989 484865850 961555086 518173408 637219798 91596973 259693415 788084152 857375329 551011443 681268944 775336355 802720777 922709637 979358693 138982729 711262213 812979747 990057390 65529509 637053615 848198974 908341513 649919579 678078866 507555266 531702487 681313500 861451113 475918326 612838799 371505171 717138814 224733216 504137646 217379193 573800594 930986079 971485061 949111780 950727923 583621806 867113476 141039438 712525949 792510120 835666724 517053613 949164502 776839602 931115725 396501211 597471269 49928639 568025206 461650562 886141167 28528870 29774331 482575690 873969781 752307108 770247218 980953389 994159732 862913779 996915382 603287094 809740197 72186437 235157852 159580380 656897765 835739018 846902570 937469464 937504686 283824318 406405894 198987060 849221478 701945852 871006736 74512234 795860796 592648739 692304342 269867345 612496452 855332701 948428339 921557627 938569900 104202946 543250991 904609919 917447527 961365380 966355349 182672119 618873407 675408324 981374366 30650111 371246192 488349340 549572274 793573500 870241810 311293043 450397529 85984976 592143305 565069484 907348282 292990435 658118999 324486660 601898312 323868108 403885808 154856017 218923923 538019619 970716524 668262224 898419310 479387498 976534515 38208322 975972923 729379576 855659597 715387669 847077360 478754087 770479680 554194898 583995595 580120830 720443640 301922990 667433664 279034065 316342509 957175888 997358037 546504111 623873691 774745543 883448596 510805419 692567351 619622377 722436929 285562218 591546040 294332375 511593869 428806683 595842103 244859498 909532034 134099225 919024570 222926194 780673120 226103544 738342962 277569116 832670228 776912837 834769418 392701616 891801074 106714274 723848017 686370762 840131633 157135478 724446238 191489589 458944177 232115096 439953519 824079741 941516586 268308739 313232025 86677376 409736790 90976543 467564545 751763365 751774793 767240490 977769979 980061841 987001972 791764251 855908144 464795053 995500747 146613180 253132567 542250678 707148366 592284923 937735330 194250231 971376667 939982 690432089 92581522 690556402 710192262 929042441 959546821 965863128 437397686 559101339 210405723 567829227 15030462 59544183 319491460 763174380 468256012 701036291 393329927 531894435 193449370 317758637 647083137 785017703 892501404 992798568 477053316 754135191 902791675 954972833 217547085 390899894 687078565 727701130 657248704 940412814 615479550 754213588 71475425 414519076 153017501 665661092 351737288 409430134 601609571 995750575 515977758 714606493 564742269 864878773 667401704 865512352 581333468 905158982 653356544 909865687 389988255 665549138 316620445 422427307 899181821 969140862 397536229 572045971 77746980 225668788 342254121 403199695 821227066 889555533 939124758 997222617 295002640 789690499 729458880 936315889 351579848 516989790 644285924 764084036 622668977 670662159 729511159 882188477 316763396 551883334 975706198 985161343 478021817 653138806 195729135 464398529 96894750 498412969 824552899 851223641 980820715 991309424 990899700 995614773 426091997 920865969 340785902 841638522 842046624 903943750 943701021 944346152 552900294 746554392 789720758 965620897 863036764 962626451 263469365 527722875 744436361 838352991 67414015 918198206 749527383 958737255 958176704 959271155 370136232 542927690 745038067 922649014 164458568 258355062 842650351 936130342 446570323 690781733 504494748 994552454 481414017 795257469 474468521 500737409 362228328 879504469 984113749 986784629 595053732 914078517 888610511 961490778 853694438 884080838 195294150 629157647 758799510 952846179 135321068 761382735 625517744 852296611 613818988 658646201 875426146 907607172 475911172 520733988 119092395 748743653 875247973 896606044 213514228 703331589 298165885 907532018 55793464 806217709 212239188 241740595 459335531 842885575 723174377 867847280 496275727 884567489 376355062 689863047 138280179 823320278 564361490 949178563 559398228 822334381 675293323 977400693 673638432 963786807 790938214 798010392 283979861 613477682 969689540 974427870 622526756 990401120 280722391 368021273 947218381 966740709 689255014 802402782 265160726 627278645 825506007 852809449 55007456 900966883 577876325 634091746 868962544 979743322 301547250 311158125 26682303 590212846 835609477 967534014 901723946 971832437 57240126 361877207 195647998 626032736 420323650 919456390 746017606 915468081 565677686 702158346 244389421 743481652 730209888 760177091 934888066 987530876 985553038 986057631 933416876 990781597 854781038 888929773 943245151 948178249 634792584 905738463 552724078 713659510 721259190 852400470 507532068 542225391 533355077 885566829 306259886 999691967 847690120 889048430 943373008 961191525 498879120 972736507 250176103 372936570 368187551 393622800 527548588 752628267 432747102 451841115 71221100 249154595 473662536 736921965 345788336 362750030 805428255 928464701 612985391 887360668 304600586 692219381 564013044 982008899 743616247 796252026 617080893 625867195 100976110 885150178 592102635 703968521 822695676 924281403 973000918 973134464 545630442 994034813 261775548 554004162 232957656 356880204 882412174 884503332 159133936 226043359 779293027 835940807 640109097 652151835 94945881 988803347 349766358 365915192 33343721 245821022 847670230 932743531 236565394 899221122 338919734 628677004 135250492 760061988 192397507 322044387 300103470 338272617 724540099 864145158 909923122 933816603 94771074 956663855 961227592 997564102 320402759 654020978 984292203 999237033 684349887 964258844 226055774 418057236 869719500 965497692 4152539 32677671 553581770 987828127 540666089 833236302 965169767 990080003 274263016 547706624 58379181 691851509 922637047 934141260 35670517 498327203 233435453 445807890 856882900 869958194 464824086 585874744 138894073 857831654 344243932 639612460 376383930 736364034 356913843 486177556 457294264 839695086 353557155 724807088 415698044 498861635 723656968 850986204 763355440 808608958 578542029 588144531 917455144 980182520 635334229 832743572 768249786 789466620 259728277 991241371 710859032 744580578 300572539 310882729 833980648 906749489 476629877 556425927 252586141 380056365 89339984 667516952 260629168 434336069 981993347 999470011 791786082 834349641 592495173 926234705 976037805 989376599 61668430 165549479 389371830 679206737 818299726 956360527 456645986 747585499 972449175 998994696 277729882 809180953 220820083 604277006 806862630 808681127 448475649 541462341 666849667 977902718 534923715 908845300 953665350 988150160 704336600 833958263 203946138 557668496 769776458 960755027 874937065 905075703 836304760 912588268 650356719 808993784 807520096 928229675 232971048 690995923 870979999 896016225 602742237 917388687 227736132 787760213 733631122 926423542 938132094 969172833 644909426 877762184 790622997 929896797 645378715 737372037 384439074 641541949 509992370 969612541 569526754 573176120 766047807 950385655 162469420 734102630 238744132 660339469 749407896 757034743 296864293 930561188 840489323 849701225 39660121 712765469 867146903 875677411 729297359 812586209 468472305 816790700 404619688 512673348 350910417 829023039 310789646 380398214 378849753 785923066 535121813 988079383 22103070 746197291 336557088 504064132 392417898 934035486 490917827 774394697 349593309 958320485 347419529 819876311 328502558 343927856 421701605 507667114 71724676 106648194 154325877 384097801 625542959 649057574 85369567 360766754 765756514 899717764 552068865 727755682 695824973 909233507 676354906 927572842 27016388 347836818 906852896 989275102 186482070 927774942 891060480 999172464 564002443 564633900 757241035 828698324 139458806 539828587 315754002 977974997 463042815 891804062 125507493 218236337 770951995 878050074 429724192 935091656 598363905 983808706 565308885 684222894 467697974 473883568 126026435 572905777 820016679 950882581 27471622 624784109 244980046 591875323 437068412 909153894 364089743 645038913 80656843 736636876 799204623 871185200 277672761 493253150 122980544 580809251 335835387 998592696 433610919 949015172 853214534 906645153 405460581 820875382 347881679 777246470 677178010 938841302 583472681 677633350 813711584 904237816 669539848 977629346 834020653 909821974 701278773 994597268 157207709 571767330 354280657 795076590 818813360 865658523 365080782 459024283 451318722 746599777 440777651 649771172 316313159 925531326 388292263 923540951 695217883 822273945 960424578 977925073 711036781 975486904 249178285 335479943 809284206 966035339 438642367 461066706 808461810 965315851 246993519 877037440 955448114 984356310 517456805 763429850 836918748 860233966 30623883 432276434 628019572 850922463 2919672 937670540 93366301 838298569 162840726 885520993 252976147 822640836 891423926 979552410 933035751 975939235 690731140 696019808 441343849 632108518 601050166 603679542 990283405 991564958 198686288 473730531 865030526 980630533 604063336 692431860 167148372 250229126 205347087 928493881 917663341 982661705 381866407 577187637 24908750 581318994 867915082 994586271 161926920 816406990 968787512 973115149 922501605 998078881 136357106 781274474 381066495 915062614 26262540 274156567 136805433 163032417 80388198 195656727 265967450 490650653 712780618 866262200 44012696 675171977 476594856 746982962 448054394 889777659 754796013 830264670 237339361 943017640 239850107 659853362 717794337 727740078 441974401 798238261 998787374 999996125 562821698 694740547 678059030 723310609 463191145 895228952 316582470 797811074 884667189 954431581 963683051 972209491 259373764 483796916 379450862 432729740 104029658 687412228 572029699 672833782 553685306 872597311 478250347 856173561 349175997 748917141 885189444 952497009 80116721 450820009 625720642 755897415 11989020 128570427 134121173 905714431 925473807 993548307 268607726 928097413 339634342 874572627 834636567 900913817 841713037 989277800 147987814 557951157 846534747 956711086 713365361 940352227 528761864 848234084 749447384 912176505 441224482 795956566 736309598 859326603 990164535 990969688 324572903 910010421 899511703 994567501 122210817 672160091 435037230 728109581 247674985 285296452 449294180 921932378 196544841 335878680 862828449 936857417 779437637 871924029 204148247 724275090 34078177 387331945 706270656 965019142 259567692 495732831 160326261 273372969 105933084 980685140 314168809 959948163 738965904 829714760 508145977 628357335 623131370 692266601 618416263 692183229 162769739 558882182 307823883 583162891 614219235 736160614 831059442 866402025 79370368 519230563 488665781 642790486 44762761 445304118 244705223 378511598 730365187 773383691 617387238 983577401 596093203 671894430 75715144 866060004 668402326 999865724 784878407 850091726 882120628 962319071 852522048 883316897 417241591 534262743 826774758 996791450 425627488 827553746 131307672 972323710 437447932 993456028 656302619 832630703 71937655 221188524 400839863 736080191 587844041 659178304 347996449 427869311 604536166 832970738 655758276 737804440 37566585 395999212 155390361 548230031 842925482 976773325 937574176 967197928 620956521 852955698 303755207 912195604 358272480 935313077 130878451 445341710 774988012 897842922 545057106 699280813 419093793 670974042 634046885 696349623 506149002 908647731 953717436 986441982 986183811 997661868 462121390 665956677 140184553 160736764 311364934 490074409 102062715 706726972 867352268 932498047 791303781 994259193 17188223 429401034 190406938 205713028 47342812 606336584 902953798 950991028 790412124 996767764 785017277 956676692 817297172 946966816 876980395 884375666 872953456 915244723 985379898 996729505 867393235 885166501 504303917 710437624 445023493 769947304 198078908 990546003 709893296 779329480 335705476 850075361 540203527 961030657 146797541 804918685 863603094 869433188 644783883 909143965 368262034 882410475 110309253 913279485 146370527 228753763 510185503 622167817 720419099 976196005 834446101 981471880 232493034 946695200 257455786 753789501 455249804 616966411 561902322 567068726 915868252 993954852 164966223 987842141 289188182 949947182 964914750 982487041 939734564 947259847 448389178 526015060 116905802 925757064 579146716 828083785 54779846 863961530 61953010 991583282 326432133 431496863 127065928 949821770 306273855 710193116 824839611 964696781 250460038 519937786 770062322 886820492 440509968 781430181 70207955 91201602 292290794 719962941 851601841 865612898 193367159 709806791 646379882 736805200 100900170 482473134 220186588 760556779 972513243 992637366 103862507 412658419 956909584 959145718 774261179 837973660 665155778 725486333 55184821 957772976 138138574 830870424 751800078 899317436 845927205 902890474 267673142 333874162 331084241 339096288 901580211 919284764 760169492 977393581 103164582 639129701 909418813 951688121 49642624 407985237 34166914 980061103 95189966 893800741 97534306 397821002 492861019 909220856 782117348 996596844 561855887 622432132 939993998 987868248 771308892 789693026 679787289 916584194 770459472 867343361 114074988 491800497 398120375 680151745 420253438 549288428 828745313 855716113 459124644 860063948 316692004 333646001 742269298 850291519 742854785 842547864 913254776 958897806 755456034 979885079 258351158 375470945 547469404 695277075 231717417 847567675 963634516 979041687 928331687 959928879 537273751 587222646 66547936 193513525 748087789 998280269 513860301 823656020 219618590 900359502 172645295 931405734 584144305 628910222 206460806 808931920 119819729 186825469 256280812 313439574 504995785 918140682 563049747 798812694 694233912 945752481 965441352 983183395 278410928 556688222 615320644 908928692 512637710 625560318 682212556 886971690 702077613 720042043 482434823 925302658 558994257 838362417 517259586 994259144 74085313 314525011 821075236 982693484 358544603 536319911 994159433 994345473 657531699 993290085 862336334 921920748 664784663 992669453 942884534 989011795 248852508 675273244 396154023 413446695 964699137 991869812 20959905 400007353 577176624 733446658 477245859 660078069 152416820 946805648 764401365 785175703 879528028 899031388 359845567 648907206 285093926 411429007 290120220 711018101 346251589 511508784 679496454 886761370 150425673 598093123 900508574 935354313 590840307 883647810 532600757 908294072 572606459 744593104 653799509 807174387 301369260 590527539 758424651 904797936 211471767 796505890 167902055 904873200 79765666 973429400 668157590 756242973 580779679 888212373 92656377 781640837 416809315 746311392 288998576 559407783 172540322 226130025 147799639 731878228 335341836 870072424 753502327 891624208 432370056 620813035 113451920 682865408 941156306 966240418 920676304 945252385 15985522 435518728 911995194 999683392 707535484 795862875 807336372 964438767 95905514 923414399 63420322 508183045 491439980 677544089 785554795 802171498 183466930 937129722 222499683 362202151 650054497 754963918 700903022 902432806 645878569 979291975 694813622 917950288 448248140 695657880 254312772 736986924 658977654 951068306 99564357 378585304 947133688 996866263 342849804 947370605 245497965 545450117 176921650 910264908 339042276 499740677 417340779 717751436 112443509 897747728 258537972 890723657 417103055 966269246 608713193 923765909 37419881 328294277 504347856 636409829 511081650 597349472 988746070 994830901 115966140 374177291 430434316 778240411 974501622 999820075 574001813 769492923 969526335 998908338 630972337 969332491 847388231 972718730 436985036 443286774 35221042 92628525 525122088 625578476 261132270 546044261 904483740 939718620 830528210 977017865 610721482 990629782 616091112 755508640 215519477 316227621 641013523 844391672 282325823 863000032 556606155 726792100 445148609 596476040 756405663 886833117 918133034 995190227 169902070 273289922 413064862 640694602 622386622 729246847 561111996 578723928 172182992 378827787 806672975 985182559 273780002 806238256 435211670 988998834 48241908 260621825 572412773 691934571 34795073 614597871 1920808 513246230 279232450 868552406 635399530 731410352 933204261 952763810 903271750 914379944 973765752 983323202 387510038 541501766 877753030 934031877 909407185 956614166 101559800 142121775 977381402 985730384 230807651 376575913 188915689 408885740 552163658 923844050 126123119 312262381 913070292 916980397 30394123 707359284 596292878 820386201 381911620 903338176 883210888 947806847 380101782 851132515 569509480 739929202 612188294 969292870 524235590 757670911 321266921 767010106 227044665 779471316 6431670 271576690 950826729 951428533 435170031 893225977 380789222 947954012 987609365 990663321 502816430 718021764 642613109 748290821 458944898 877897541 708013270 972739275 955470448 964696106 557027364 657305123 249682211 407554588 736055021 958740949 866805666 970283718 67269944 481380696 832265029 932157808 193341613 673325866 462748601 664897834 916721520 995002216 784270068 856668504 621943401 827143720 713267774 796567210 595468178 659697714 333014148 834162013 572003332 853348494 684773884 935786844 669297193 749058707 150848695 874204508 278328944 569175566 611365268 662724353 807208119 829387733 374261312 863651033 213126001 403663468 306513381 922927698 185095755 365645983 712814908 916241491 933102691 933263438 438271060 998664454 153903775 373842009 952752501 962600671 743274183 783620213 987877025 995000837 358235914 762725053 273135380 423310026 651991187 872444027 232623851 781853306 432669770 566382023 746897787 873217821 622028805 842973622 979979525 995435249 661070726 797377296 467588433 670732589 805403038 846298246 299934545 367484519 979181930 984924393 596707080 965836692 598523043 829145610 608429731 778801604 218818194 600494191 912137690 940059052 233001961 764598715 409794998 633649726 764059781 911472282 5497669 517024336 132429185 968828344 856537207 921668452 347238003 950529490 478375691 837993592 220990239 276046437 358882366 545021960 306542221 945023767 836428092 882606028 36633594 651341875 273273915 643061345 632217323 878215538 563919899 669670257 985441491 996276225 619809004 751077480 743643304 889579409 510232384 969427645 35334197 502019570 969005812 995522169 297852699 405252763 934612064 965717856 881051936 946250706 151305919 460596176 732858566 838663234 504617088 647621937 844609187 939839479 104662730 922016991 967698109 982114656 275921127 531069737 892933375 898282052 885284109 931608424 928047 937865768 824505113 944554791 830811667 858990109 183725305 996441786 314313537 875690107 947017384 995292812 436605294 601453544 406514252 516767621 967800497 971252059 174998821 737735733 813429709 944261440 408018900 759690179 119972352 144315688 290897218 717296907 405068200 955056125 514973407 760277678 114299964 468811379 334399929 558042733 155910062 442769113 880143435 889355324 423763133 692157508 35858523 660007211 431624090 536001740 491890385 745036631 282496625 958602291 539975195 916082906 925810163 973386124 341285943 722763766 314948390 555026405 946019938 999803963 517416518 653898909 288375242 441138503 618156255 625110125 305166763 731630315 55370374 749508586 839392878 960456273 111344812 348255640 167607128 195870476 610573797 696710718 560704462 982713478 624046416 711057219 899222815 983983483 345191713 685278567 786357275 966607862 602040857 913152209 327823657 503262319 111297323 235257354 611454597 715146668 336729512 589327210 163825316 494811482 326641513 854857917 946049723 990280774 255703945 432241579 710548225 767196592 962387775 987985930 450671311 628605801 291903594 566143701 60053306 658848016 453068370 790583377 522257705 634776491 320086207 871158035 474859941 899163145 478126272 960830695 479169658 584727101 383996369 454471561 538972130 743947713 727517308 859566776 287313545 804907484 143539103 236981336 331714880 685299119 7815409 410448837 436442429 462193936 345429122 871320226 888531054 933031794 484860793 640932593 292913254 592154486 390184428 432006448 29253409 926433157 892350367 970920724 107523951 297233858 539204639 665333953 749096977 831316771 145029477 645895466 503389159 748402668 107083512 924168108 701708979 855905587 14885632 573846568 406608277 447915734 52939364 988251799 663668485 764581216 479225518 640231514 380897479 593870127 751012905 867740400 840159798 954570608 57257065 73511373 270750654 538271874 283483372 541298328 142749011 238103228 358032914 366350184 678079936 811572424 484341278 826750503 476291281 928788383 642508996 924016878 986527487 995751471 329687529 752215188 823779025 848279992 964553577 989375208 809719695 868428408 168802156 487526831 683417604 873865128 433547334 517674876 196054579 364153957 394005684 776669934 448306691 998805212 534854522 951270363 383366098 387833055 892499524 919594538 586530663 961281993 313107639 900671518 757141682 919009157 176002734 246777903 804814402 815369979 109667499 749234330 328097443 336129794 54984349 112751837 35758323 57048008 527423061 748443385 509715049 884627479 688483567 782801250 658391579 752664210 794613061 942153163 146013300 844220981 421413613 454344481 447369859 838895998 564470721 593152113 480676581 776312965 625212554 641841322 551630213 636728480 976314153 991277608 850114899 913982158 281092907 991248029 416213011 489894542 704778550 966933146 412114720 822113730 367615022 627120759 697533923 939473341 969687829 991703839 586070730 994735187 984771204 997863038 929764668 963834413 991124760 995311974 997503307 999622056 944854933 992082340 714655207 777573160 255306748 851269466 904437563 966053484 178908129 224740891 278087230 512244384 132402900 339245121 136217276 884928121 731259843 818185253 926107722 995303443 893769942 990322743 163189009 724361765 470360193 971824140 966753262 998134659 617955132 839192330 919261844 988959479 432527212 919655649 180487659 753364878 245911243 433591473 850794570 883578906 545067534 604050479 146507442 224738523 947019786 959940167 908479564 910256023 276845961 912288791 616345865 938391626 273891839 449345524 512285764 540589923 261592172 582434886 991577846 999222208 247580282 865662668 525056101 835189423 391061026 593463858 680873350 932882563 212091681 402939239 472800050 814537414 299232898 406496744 544355441 596000036 108817297 261756151 279583947 881890135 547719982 900899304 631908378 701582303 134167394 875266592 317853794 597272113 206751010 484085872 395203696 999839575 665476951 882069216 438913719 991249051 768053762 836038197 772953761 951405461 645434314 722964204 33768054 619469925 784332218 830274872 910945212 963066123 838152198 978187087 84041290 226123591 766553632 978147286 685452359 716224711 948794260 953727243 689392309 762497692 388889573 595660988 992852334 994977510 533523616 845108245 349476729 932882203 417990473 984687617 882617276 919861754 703865349 756711171 738035575 823990022 621976657 877583776 830646499 912071497 896041252 963102114 230042468 934312562 973083297 979501003 888525540 965153958 880278305 900860964 794143849 838090420 71548039 947083504 846871103 979037794 880298917 971310006 196983708 587198746 931077553 962244404 487102435 812044416 20886859 250205534 759773532 888364811 878278983 923886280 462876300 542108587 353671849 619117331 721600187 727574137 752401179 809127502 337755908 941395973 589994046 672877696 402189593 926776191 196518622 974795542 646337086 701220774 163460164 385577330 927247710 982873010 355524391 973252009 206798254 260506713 784822077 827919339 455641957 784475676 210999945 328573969 506050256 843744637 372640736 630203934 464336306 954802077 86592689 393032174 172755648 231023164 413496692 583666169 537008062 980890566 463570224 893000473 382482348 798163796 639653478 704431197 619838972 924345515 445535938 490109667 399093808 480817977 653670999 880636107 54490218 940080781 504524279 879940641 479238104 781159187 770094703 981189046 916284726 969785942 732266992 906325720 518557203 663758821 264553050 857280171 778565325 940941976 286312160 563983062 854980279 874555170 973886968 990815087 819698000 881124062 579711889 922547180 379690427 658617229 97053687 872857181 732333626 855889467 786711282 955576223 49068874 276814297 123661220 359558144 523098059 871674047 743401817 984903189 634325978 802049639 219919308 811076699 995854994 998420735 17475134 827748189 456777694 838962530 447303814 667880457 659848166 821515242 676127059 828380749 462869266 505473173 248948651 807144622 97007860 865920621 406337058 688007165 532945119 862053983 554596559 839894542 374122238 647974790 766494457 826749321 463050663 470862984 909169431 970076733 285692801 595026183 117012872 533913251 749210867 991048349 144584848 209337643 898285986 998091989 110336263 694731009 870489523 967905715 778469979 848567264 377737295 923983900 647463186 940317846 917584460 947780056 186338847 326885802 883508595 930415171 170126165 757608755 613250631 657196637 492945971 644971884 681969608 878361239 519622456 730827178 275030753 904706137 942862387 962165867 554069534 729074676 828243076 967727847 9490502 788756432 210335841 804778005 940324310 975692336 299574226 830900009 733586842 831942373 11094050 56151241 814780682 973566151 206241257 291545462 564657583 730950459 197177109 760974445 154631441 660100950 420933416 942469632 795058694 979464252 8791198 121712759 780470804 858000772 347516788 530710233 759489857 781542672 228148107 817593146 363445226 441905860 183078061 618540507 81143525 594941589 267879523 403829176 400653569 530847302 896838323 901555842 658268731 732536323 434702059 978075537 795302388 813739302 677083103 872345279 519056806 696886409 941630244 960609255 101053001 810589353 20732538 427237458 840274451 934409971 635364329 896090803 971885002 986869253 242659919 617619933 880717373 974770492 339644112 634187483 120079907 781627307 800233999 921197856 489395176 603227284 410174714 971834109 556445509 790360232 796251914 865121287 936884507 943010747 370684918 495574689 357547893 581048559 882259823 886469952 685641464 702447104 598401844 700159732 871062372 958063113 456994015 843921409 811141121 812168989 586356441 922868776 810796494 850411556 265435661 401117672 203748357 835984615 189731171 761182884 473777534 754386451 38236195 980083574 640136406 984184735 843230152 905084297 153584197 305780372 153592564 852978839 659170858 984364531 229278562 939638582 575442107 675363145 576432544 992937156 6508627 536765271 753997334 956395550 647617048 907333807 770760412 991364117 888956529 965140643 3207733 779781190 641378939 710455268 86777741 670065697 782036233 971539986 169542923 917180790 96330095 456046739 234029039 916472578 329891633 837233574 439575275 556886946 253873381 696907904 465753489 608860987 654553503 666115287 420225868 537074441 426511760 447429249 655799176 896351488 7932440 358772194 513964765 739409150 91114766 310515963 695556210 849423195 183736175 214633473 355755286 590759441 505687553 700732616 447509355 497718297 912982 208283594 396252824 682730402 683234697 690629373 596729458 915862590 666569879 691033604 832713909 963681338 644073440 820842887 516648145 791566275 329471315 367944102 195278699 865112107 679886448 924818782 754786835 856386461 117237101 701764717 648269383 673739626 1296807 661425690 25485617 718339508 630602616 675316256 702287811 789305854 733058978 795478669 755374275 971208236 486349960 567948253 416971435 984007421 604723355 640017973 177456933 655884095 966215100 999310856 370518103 434393629 975643528 999923619 948320972 961456785 93202962 339483144 713466021 794445832 179915681 489618420 637283827 990097578 721227180 778243341 495615873 890363253 883571292 981515044 373417228 779611007 774024832 965882734 264704891 340378933 825443310 922706265 770727542 981233645 681837108 950322868 335458834 909893113 496606811 999529770 819641840 899065861 628743154 994017102 730638346 736864846 93572989 600810653 255089293 399607942 850506357 874519790 70363522 492983787 504586368 985305556 217551298 936620737 795223444 997599922 273639109 992298684 566077449 968704654 459157215 731210355 234629172 752937263 205465675 598629924 597622032 610193916 35034070 282473645 728517151 927839055 227744944 581502174 223495386 261461302 636903590 986272075 7093997 435292929 557330646 965953482 672095517 788131314 751381581 841358497 479911514 727343193 721532211 910582901 618462894 750055535 854841141 890165934 489186420 955051069 563155737 640761947 31473922 84010563 507892885 615572397 887989901 960587492 414216950 719716748 811547732 942727595 551317296 984983761 520494131 952463362 243966514 943695382 170014654 977037484 725906100 829298496 85754348 648227989 590689570 741873904 22480000 161670490 914731696 935609923 801629735 986708085 674476720 950467310 700685944 774811178 742955599 843890866 511278288 727469789 413777995 567321814 884038043 960801528 521071461 810356709 908215035 931095412 419734095 771092942 549879785 756507364 717128195 792096613 390194270 755097375 496536166 497273121 376934385 598788402 735766263 798267322 78644769 474105435 53630182 633403445 380948339 655516827 413580269 469600719 317639331 853604212 53746814 834824025 372086453 735752629 77197197 396853383 669993364 702755314 33630498 623199816 361689693 723893537 269775592 497403738 400331580 850203193 106995621 181099142 245940326 298512213 772793815 776312087 682371418 687079481 337717939 749553042 368582269 500007682 701274603 736102517 155832066 577190676 512163573 878284333 569386739 746672917 967500077 971630672 737522216 757150783 836830966 997164392 597721415 762839587 234382068 717610875 777187330 852381710 292537347 709223292 426074602 536712042 900180317 947137489 503596742 626214742 108137741 429256277 187208370 783273130 308736247 694686659 664881380 700505144 292808820 758799881 398605424 994745100 913548190 945979528 610936732 887243114 982495825 992327667 361813907 533464391 646224152 758536552 729930430 863952023 837138260 961550429 906461341 915070984 332849682 992388665 346222265 449465245 371045584 588911232 683885253 908561390 836935673 856237913 171966557 842951991 988069003 993341939 78110110 795495955 838399554 976842982 91407286 758284631 854921494 976058596 361433361 681966827 2623287 128901069 607581779 767051309 576273480 977225720 96549077 282033634 685701279 940846934 582171296 661053645 866152253 913123098 537507442 937401189 45793538 733562244 721179316 853855533 254405421 615756454 20670871 785823767 472459327 539797865 279625983 681843287 907733229 952446408 889741216 963319818 126931664 145835247 27673176 170189840 775056576 911420469 26600587 790176867 281812657 344871325 725754864 940162789 867742698 914591053 716558896 836543113 556686835 660063339 715414450 780425984 278843587 364083096 150457732 372797020 194652128 198163689 989935559 995358780 967170051 991163973 447937587 925649018 170332803 847067903 512943066 880204600 721935336 973590868 271794647 899498047 532535685 935306774 710993485 934824507 608426199 838654558 395486705 670819532 779458478 906784876 919765901 923374263 339524196 906581369 635398912 911397761 525213904 886629477 651701747 875583004 682034558 759443126 81938451 852392963 35328791 267118696 656865890 814722595 678813289 800765372 118336074 411564090 106059973 536814201 362853962 487840798 134939370 495942346 387202051 861038809 141114024 410138954 109221137 131521001 767688929 883125993 732254958 788573978 257312477 412686021 535217814 912361318 138159310 728916808 547672660 571518117 971675426 975817990 586825881 666524465 504692352 656315482 290190170 835079130 497176930 750146252 339882962 922097375 991506329 995283374 757850598 931768811 423796546 530611576 592045603 962654860 608975379 626565116 319663580 896047434 182458110 549226856 928259574 974791768 649783452 756279906 159933154 500419605 220207592 432689839 882916644 915652680 349325271 415376998 168350116 967190311 615101510 736357545 616141491 906313385 802619545 958409413 910739971 936030895 416775719 770951212 898408967 934927131 267148982 481756890 342927263 601267756 915216772 951870486 733480309 923274777 94391262 399812581 647026170 908374054 213473275 557305109 762417175 978078082 386438301 429121716 585710099 790515449 241687555 387814812 539694339 934007972 636990857 678099261 945198769 989328874 415115557 712089294 316004497 388388533 86937485 828371480 707382365 883132201 148625724 275372893 101489508 719271116 327474853 542633409 67315231 249703403 865158990 962432467 789778174 864440769 114148260 735890867 62853202 272059065 98252698 925079682 496807677 864466839 264652940 414490936 516689826 861133377 416076055 945430733 158273409 224312143 644451652 769805833 357847636 970793751 534581041 750085433 39398194 250366134 426933931 464334571 54674941 976396297 609990946 692648331 479710472 777700169 256342554 880201755 37238441 692779968 460310121 864576244 601926103 927296463 848146924 860706444 363390053 525105854 738894833 932112405 69265014 987236895 122348404 772810799 330703363 475153601 377399348 484453762 658537667 683700645 586185240 586530870 311285088 557194261 595165936 609885027 497676601 809617165 415880166 980651184 874672180 980008493 127092449 130436370 584876350 605869935 983605674 987127137 41325128 575663475 599050418 774099495 541251148 960431431 329145293 672896580 990752148 991931018 216459069 897097935 607973211 842324381 787308284 940575664 55444279 134224766 396335230 452707323 520066779 788356080 691887371 761807320 52041503 135767477 973344873 985477396 898503424 983513156 2084146 210002469 944131338 976907915 93512351 878274131 217924840 715517013 83334490 540317369 28379426 44073511 269385576 527701015 56411319 448875965 433324129 888345234 464463045 505643676 537084072 977419395 544542468 835317521 845818710 993718583 532297704 951406521 131927807 638117843 271520311 443246523 209530024 646295972 173745688 673271259 463105431 466748963 319574585 517017978 576153457 855951168 845820969 961346828 103044812 983739218 987813457 992174750 261145978 501436364 920954578 983087968 455391899 749185803 579698293 797512311 85959676 585623561 973929686 986775000 94077042 943012561 447450966 792955542 88208440 832603267 502588149 722461739 295651361 399057350 907911066 956460076 258916630 499679878 23117722 82378459 944262352 984847964 966719547 986403249 644108933 926456472 496967243 557205095 720637291 810398735 884280472 949677643 142044912 247616195 558875477 971784823 867618982 884039105 818406451 923278977 799546458 974462384 799937841 876613457 953792038 978469429 49916253 260097744 639328363 744224930 392354884 943740684 982868464 999080094 402233115 519765423 799609378 992861800 570483118 586892665 171856313 210680360 73940950 474246163 760733575 895910054 362257767 536643597 987122375 988429496 68719988 210377130 389882894 620691041 582181036 952272393 340321205 425125838 311063996 609907632 928386177 954277378 305556841 664584141 917250624 952625881 83971661 100782547 199851619 504068304 71476773 573487861 55061007 779259775 61062167 365771690 113595892 805142249 378191198 521893883 638394917 654949881 175307417 908745764 394788322 834576384 940926913 951582273 86163291 923841573 104596970 357618631 550006505 550819767 138392018 162676092 61566043 230615688 205978072 864832055 869323503 871590878 465260965 984217145 379357628 975945424 538433024 669836686 347374310 858477862 468581065 556087346 476467788 783703132 409802705 810502957 201486473 285686201 203708679 786259092 369105149 655440445 748463249 994660956 78826615 506337764 276629557 770207370 833289737 934206504 922764086 957846300 722549110 805837250 926582254 948525330 739031286 953602636 979390494 997357034 201196025 494978018 706931611 911579556 753362302 822864839 387503385 416067058 273181309 611591998 822472367 985711297 856387707 991403383 197160485 862879843 538494281 907159677 512444498 702600807 933337381 981918627 98987052 196794900 529554510 690736015 584622203 855522906 965292823 967727654 236037369 485195166 237401683 877827563 975442276 988609255 474082504 910647902 774107126 844221063 348647751 978228863 530878364 837373092 927344599 989513893 185575544 326563406 40382787 125428277 412130012 452401110 744996531 895517219 815539640 967942766 275366652 774987345 678155032 874505236 481369035 999471159 713683959 733374784 234567256 898815886 755174405 911148172 55629075 768850902 315395448 791177475 930504288 966021641 339428904 571426000 368465938 442484053 569817405 879118484 191190579 279383603 331292599 538298565 15163546 858871565 94044576 470320339 145336238 891525690 117698151 126611492 262590457 886226197 351173915 954128348 553519412 706647790 857996368 969338692 434774543 996645186 99808566 765075474 199362080 514030435 114665138 325281732 514254828 794904527 962480699 994040723 181900255 785003418 636349883 737074497 978625848 995968720 797030507 957572650 384675828 531056272 301271703 919507932 242181981 758180231 867359679 929390286 47040656 851308011 205796654 578097289 287842111 906498576 16968563 728808931 687149174 787215505 799541350 814020779 881399836 994963710 717274074 795335103 305262573 996875291 287129679 586616665 774804974 862515541 295952053 976593343 913697715 946820145 718659090 903835729 186048737 537725365 128482667 548316100 666510748 890162796 291455653 426624493 896841460 970934351 486272201 685529639 759943167 783759486 310764926 554942736 818577495 851304802 925687699 981465681 620143195 783751602 657250776 875339607 395843015 596148485 891589604 891880726 612984355 970622590 699537304 834937669 833285796 864852699 940343921 953667498 493979040 549444364 314856518 611386716 935673615 994724919 514409613 820254233 420685003 706651641 901677701 928236143 14017196 438205872 30215158 64789857 438192805 887329082 636768701 830000323 805298651 891874869 903725517 925566702 59707201 464496712 452133165 931108379 333377121 391482159 827108514 887812786 801496322 864345900 241598124 858952777 668457375 882423651 919768169 955336669 358158018 964177109 462490731 638116908 644050059 740934799 43117108 923953391 260048272 434980925 743311285 987186572 548141366 720987398 314014277 519462092 145391373 686707205 324710949 455002626 237027007 420218281 454882799 802594949 643780948 902904215 215044326 737727111 837621552 846922730 87893371 148957543 693248341 697796106 834617304 838580320 366244904 392487490 364540450 446033168 381939803 810470885 669983803 852299666 540669568 666829523 216694058 498476964 208869402 833640574 212001927 271961331 504317683 509963454 310099394 812332909 390614138 982264877 760076138 937130778 947543844 980243181 545898850 663986290 711386617 961127336 389183195 460722943 967683815 969164837 159743271 490364630 971265553 987914840 744099603 854454689 292425722 441441575 396400387 588756061 834196912 847750141 570707609 799539561 376739118 654698455 420723001 789936835 860895005 895744707 544693773 901588928 626275597 918331099 298500878 347462937 549490422 600225766 941928981 985997034 50209190 814513583 814187118 914767209 541022234 731288856 8102956 806434551 462726292 973439756 875938735 945493473 26314853 856032008 871192270 896796301 443552094 907065060 359113666 723961427 85299902 385376705 305386091 969971531 63494206 433350748 125393723 874989355 442888353 831263721 667699908 969291602 639707099 972782297 474067236 876094701 2540982 949603044 164385662 523838304 178914094 294523447 38443019 361474416 965290614 980211268 381848397 546444181 202165831 384997431 241013169 448041445 944590585 989117118 559898764 616795581 912760366 927628443 113489346 753267777 161967410 863670775 782506825 980172727 266940497 985341375 71867651 857890076 361287554 938878577 902464106 923086008 88882724 338915830 625185624 672361288 900668236 926868125 966281078 984480040 561456044 677250363 5126108 648014844 49428876 245033237 868092281 956358759 595335284 912567170 420086435 604742107 483682291 629074016 950117348 994045896 515569873 527819328 971164831 972355678 125391747 224773109 304304865 469086032 940328009 998582695 821252764 953821682 648460224 979031309 230165370 963407303 734835654 754674814 287901524 365786012 722416063 875047490 17201551 395080619 738786746 965059328 906989981 964415300 772634184 943881877 619725893 623445484 294360365 304004281 99184965 497997109 486804831 959946257 475860398 589734186 847340642 879090126 854923616 904527852 338490013 765233981 919222004 944004375 841498510 898535658 550368801 828646442 85685422 619664148 48810027 332340167 145672099 595007837 745870666 984867561 558962694 807179726 703242385 760832712 432236467 645329427 760856720 984662830 64417837 678749836 194879215 862814910 153100292 685203644 698733699 803285341 77263455 303230541 62687281 572222848 33306225 101668319 676259835 730325258 691016899 971690348 446314665 810770790 896218328 915154959 421065643 863296918 228169485 401616248 953327400 993337722 407207567 888019101 442254999 654866714 95053337 987929340 68952125 258670475 812027552 956575949 727044249 855376503 926379872 985414910 866859951 946065135 18302538 310024894 157292843 885718636 418075273 896290699 156616235 311036143 448683046 768023315 76540175 937142544 427082457 507893386 815049694 871503197 907317012 934987045 310072246 823867159 179785125 491873669 512912724 902167642 236071086 514541103 425016967 609576665 116104661 737980241 235152337 309698309 881009098 977215160 976050298 981867922 755037433 973478002 711418818 765702547 634579766 909723697 538170649 958309103 288623344 467220736 857477254 931282916 988446267 993925386 7124109 27647636 545094003 765451547 685331465 979254799 545844225 821399319 977666407 988060900 795575181 853276698 745615627 808613757 676199279 824600217 504174116 591277097 359838191 737523286 113892743 403451902 364480659 508757924 861331888 880936750 429180841 971973599 853463409 953725700 89251014 270096762 983740060 991671818 617338058 786051838 26622701 840379399 958319569 974767637 959350607 996073063 911298500 941094214 114238169 946719852 831330840 880056681 895773628 991170321 453839119 819989975 943544451 982347430 163203604 340182639 220993018 227698041 412953283 994170156 238444059 866356144 14379257 644125386 278349454 611194951 916425249 961486873 834129420 862954166 872761537 889734156 953569536 981714982 36442048 645630160 95502700 740299807 496403796 872156628 547587095 840508645 288833001 544571426 848745878 990627119 994781035 998643999 781110504 891676464 596344153 845938743 912715780 922659572 529135023 727170925 905620511 975093189 603357314 780816465 878451223 896875640 273210674 724251165 992793153 994369347 332984350 611523987 8832259 460300817 130901042 600071627 854004468 930532454 49207580 795806989 457043223 885632258 596798656 806061760 984859523 993138415 665471389 702382336 316646927 830517019 326049393 681647431 534318758 786826970 979748726 983617768 612640723 673778191 979874842 990541929 712675306 981049160 970513777 999567788 738657206 936421650 439760943 722861641 987931470 991201710 921813677 932221786 569588844 580559408 290339281 605763386 547439282 571826645 401423057 469741124 216751595 519495203 29451472 456550543 214630364 375890215 737527954 932196006 339476940 834986329 491575452 898223148 778911492 805522214 564388722 674493700 988322136 989804883 334308923 842622933 411704780 829887970 929259200 958815356 304255108 806325905 445159051 489157366 646371060 866802287 480087621 798401815 326421258 702456820 38377851 384601229 861940543 955628724 506156057 554525132 708651515 873225440 33714614 438643214 652450668 823232648 451025102 963604448 976250826 983122962 391253923 803798240 54152939 933878384 839149160 933506633 967455516 984243129 826504067 961485531 295382837 833838686 543758436 783960337 595387351 890604988 829571566 885312324 844154981 901359723 972063492 990696887 837079539 941398047 321299995 349297978 355141589 666780745 672238821 864658168 932934963 977934549 516613727 754110437 836749567 891978396 469573636 869530976 766576654 861896118 812267156 990748558 401467842 828380389 220581449 370569531 352858096 435410924 973866149 978291150 827322862 905730357 654439921 774917065 927659996 995052530 845444912 928661880 853616822 935023308 665228961 888250652 466711285 633340385 298518395 772269154 82925290 532867358 318404532 329063924 149944255 532956451 835480181 907340481 679359123 968705528 284674818 645094703 546666935 873068585 683443930 716958987 200285441 538732065 362794371 632535950 363146995 415109522 238863446 679592437 79092749 679115724 813121217 885969127 558891450 992208136 159781370 454046653 897392940 922848610 766481946 882054102 31365444 135897257 831723064 874215595 163639617 974422468 680375200 823523970 713396180 978075597 363082816 934024600 434539828 570740570 850986667 903137496 125277800 445847860 637519721 640574313 387247363 972459486 430551308 480986911 115405394 495071841 305516594 922699186 463008184 856392076 411976580 611876803 250046661 707578178 779824828 879883251 971451392 973343648 71386455 830623342 613473582 635833299 449076019 698197883 788200422 909714353 87546303 831883151 44003877 670596920 562660381 748729995 526373426 527590051 505374778 596203834 689924108 811068348 12516525 496027264 82624872 833876795 521037055 786879191 819072788 971958762 901922450 954901030 196819345 790694185 487752959 609337977 960811690 962031759 279685795 405310229 583452116 635063317 492623322 859871270 992854332 997429382 337472263 727280659 819375069 914383714 717855505 865449836 546619213 778968553 846254585 994086324 497468355 633453077 347283161 954890862 732494794 814623090 851595402 986406824 985266125 996943563 264740332 606624063 967236115 969253041 931804819 998639433 114627651 174180182 300395901 540612426 690026187 896021858 191301475 322903232 213640375 861303805 905509514 989906198 670761241 921289150 565770547 568831736 828479917 865604360 574777993 589237143 281782616 365410326 143060594 605093115 131587576 388286871 761264003 910322166 581390359 771895422 774004787 862549485 491746834 743953888 278262480 991289826 713268555 905268142 557653940 681958934 83734896 213448869 872096774 951818914 993040683 995950454 458383746 967112368 203470118 618228283 761537231 966082659 992758522 999104466 157301937 974959831 430258460 581399084 246992647 341889564 79617319 839659592 569719564 694375755 59878721 112783666 427162305 462321782 354506011 596959297 180845118 922700193 994863998 996588307 427053175 890506379 869565415 882529998 455420600 501440348 818326269 940233189 893826881 917295718 130301943 584654920 569568320 635685682 791496959 800931192 340499310 583463518 828539735 884532127 985887141 994803666 966402388 986884703 871758850 906691641 612901819 801295558 278771768 616020436 618274723 995600445 404596742 888943616 186970310 693754972 794237389 806528157 32464118 257939881 341843318 369994164 321470142 835614163 900736226 970870849 571300879 960877755 222815958 227328579 580185331 672410319 82296583 620411429 622535764 922268973 440566244 841042303 905379725 967344217 905794120 914626307 289963467 557891791 375679741 980241780 94562848 836169788 899692435 944514246 396967235 918499851 971065494 993231164 342199378 647387747 595823865 970936873 919085879 997821392 7014324 617658499 685558928 719945982 989024261 993109201 56152837 650825385 695362471 922176231 743555476 823533721 884590741 912491203 217590167 402251922 22216746 133647880 308006101 541715156 985570652 997330432 212062857 949901649 533297614 976760245 580729540 705497907 880065452 980979815 155200118 441992061 152580512 262169896 263843725 779956884 795903547 906357009 783677719 869997222 6480732 470148195 994417018 994422177 975922031 981793745 565769707 579487582 449695210 545944571 299455380 783511444 895564619 981851506 772399135 856971913 685932121 694293357 338094899 821297450 481815829 523887253 512760929 762439753 629516565 843509914 247762202 497758475 966332671 998616845 164290336 983812594 921938198 938842481 575433004 730751137 191018663 363511760 456720312 988275112 587651680 594226719 579234537 799788328 108484922 207432533 792478933 957872589 943447783 993670515 256423679 437484835 30748901 668583732 887090614 972374194 797630265 913021031 258654863 893672328 296877360 583150197 40027667 169059743 248757923 758826214 439463838 643249010 162574660 689331650 726414002 761496659 827302817 973364949 907943873 937732706 432417604 907493416 680847778 985821764 79842366 839515161 542035460 699767761 125471361 906312888 450783053 544408386 602609118 854086451 301009342 737066372 711292252 733339320 771001280 849425088 53431457 909087357 319903426 515392236 652583244 686176002 572463642 805637591 194758851 427771290 677544883 909792799 433098934 483856961 980385710 994231221 274832539 893857455 415180559 422179046 309230064 449757944 543662553 551508412 176248095 405753102 622339154 984047923 351610657 522807806 310504980 463391674 834144274 975527099 319090363 436711027 733354038 865246271 677112607 983804336 894115812 899687964 479136784 527453526 294935128 389829643 30289407 106170055 408584560 709896988 971050658 995242339 424005491 532852122 807982819 885328201 146887637 300074350 952267174 973297704 245874319 922276007 889257049 957076291 845234551 947277976 792560261 973707950 450379434 707364959 691776693 968091784 101664766 226065103 927619142 976643762 678677008 687781466 991131439 996595438 54164225 169282931 568068032 976390277 902515445 910279890 208848902 464287467 89536996 552190506 401774952 916644722 823993770 882993982 26910400 154687399 137487585 770437933 181157767 872856775 822614698 904215148 282255682 868354489 8305164 194575934 164216154 884059867 458905450 856296074 276687680 495169301 670013315 801433961 29881703 535091932 952939487 976895230 756996286 790259107 718380828 741215542 45808389 616527170 90110662 872507652 279305438 762398764 818029934 943707737 645559415 900666684 948961128 958206894 541340278 699817294 886280701 941585664 910914813 986591301 906440851 914194336 660773533 802320453 274884780 737039535 681926238 960366764 916407717 993892797 63695443 794438353 682556197 733944720 90277116 812369180 662482673 673040037 816222046 827737148 108294407 887856220 661133056 805230290 894939098 926939536 972797638 974694020 692380358 693851516 45097210 56127438 464842410 830497862 564667362 705654535 774826192 775055214 539021882 825204667 311826527 554937978 738660975 910566707 390281719 581883833 563693677 756441686 292839852 385740736 570499876 825276820 549181887 552698335 617572023 884954973 283767447 375325779 533146768 886722646 480533136 996439593 186027443 589299692 977764772 989090998 513676799 598997551 90668017 212068592 904656835 927014119 862876087 870303417 327366422 742363851 834464672 976901343 94411853 670896065 616282826 986232512 917601629 997123335 897299171 911906399 89631601 388738105 52290337 254039897 779646977 785182908 146634072 420977998 942241714 992885307 940751502 965602030 37332368 475384488 222598590 598134623 975029200 985681379 660786850 674095451 457121085 619606303 444378466 676121176 781096619 827666640 409351331 908864731 945192548 990173213 646070959 854550440 441215025 621645792 766010341 982008249 794139093 875741297 90819616 914530940 834656751 965665619 69996850 350930449 812940503 944582519 625651044 790932105 927293315 942720089 106516574 426365045 288860402 681560692 337863855 466473794 554361126 790322296 981340289 999967202 925930572 975113570 669323256 943851616 464548632 977821040 596690297 667622858 813711834 959687593 467826953 980399802 792157725 973934869 419856428 946261169 520651459 820794949 996827017 997273134 559109710 752351514 266178559 366080917 970421826 986305299 663044727 699248206 219138605 486721345 896185593 917898310 592355622 618286899 708581225 731605773 418092471 969430273 865340168 976557012 488013939 540317248 987327765 997330123 467917920 513402660 340833848 994017546 793631271 855017157 385376190 573228409 179611205 546802036 674797709 970996438 955207742 990458450 734766608 968920847 503162218 545352400 511701645 821251243 264744530 709113378 378218460 603683936 7201980 500850465 798454427 901840760 527133971 940442093 681257188 916289910 653877087 959018971 954447437 987264974 483041705 663404691 813886921 868324127 288870912 519945755 1666830 447208840 781759861 946673514 413656041 978639664 226437648 396778277 71631798 809069363 661353825 672515142 782833119 987294367 108613973 455519651 980959281 982207766 859194305 947444410 98284229 801116269 241249483 362100730 920294486 988351925 303529789 324122261 463571196 884655174 762375245 962383013 489919787 661956156 667790180 904900428 465853429 866092046 747582173 832658197 187096458 997547198 407842627 503240206 646020866 985730853 761501792 762996113 801711475 842705592 413235941 703802206 191760557 342478285 567075302 812138955 865199797 976223010 831606827 852113907 716139711 904929478 652594260 985824174 887280048 911525076 211811864 244209122 596537772 901561552 303484777 354569750 418429611 694677766 354016336 771178295 528906750 761444104 380448338 898601950 539657610 631412353 194709854 351859523 806149045 909043390 405883273 787624884 660287883 679547231 731256036 827730631 292500716 748574034 29779712 727672536 35214852 364270016 689954492 980008189 201398297 479463703 796846369 952760132 556886226 989902847 678617509 969124207 201395228 980603647 874524132 968393689 546464647 861838490 588744361 777720154 18590877 610682759 741177391 919831261 14068432 869501779 835276578 851748189 650508900 782334980 194414530 825479222 908668132 924334370 928263292 942190713 645043575 848373439 647578536 748754638 29517810 504744259 146150741 419628077 934395841 973987248 983526633 989780825 193837028 776865020 76567639 234172626 491121351 629708759 382693787 778150692 934327471 936910889 908408995 976650571 462831404 832030162 967768934 967948955 25020674 600061358 538025403 645486281 578664216 851889985 486058608 900232952 836412086 856027359 828625869 929405700 638804835 870645676 595219355 965481906 261505380 346501229 6634925 954110829 245032294 432557134 706545036 945094555 867730903 927967419 760000544 822780375 272271373 618672657 82431365 160018631 403789571 879312479 630076807 826888160 702709886 799097293 33271184 633659169 8764984 632105206 276463455 484725802 59351063 739951103 954334791 993773732 883559697 937893852 721397322 733769024 925748336 977274776 554511184 887027010 900154926 922640267 551378928 610628682 586851713 846025685 152562802 337708379 829832362 868123940 581293521 880516893 127321866 682345416 79697655 905224430 505445012 810229662 278080121 781155371 601572961 677762442 314671177 359299374 278851195 713335118 172811711 963431491 838231905 888264790 400613309 989836632 42001338 295213279 247792111 348987682 664673916 677267989 811381705 916642197 520643495 527075744 617325637 919194019 638621427 808782306 58404134 193326255 159243210 683841571 949341027 989525792 604654736 992782985 593347480 969552594 454399484 969218452 461632486 686336718 14734616 683906295 762296836 800953431 68004050 510165374 444221470 617532594 254186550 300396556 563361504 682428827 322044710 363538705 850955638 967447732 160336015 538174843 769834240 878270098 469094472 653092026 184851421 399959526 834258839 882050243 287044930 971068040 748867255 900513409 936394841 989798023 749508755 850131739 265363725 467171740 574378635 764806492 309260660 696502169 579927727 836740734 451982115 793444327 504381039 862905240 595729594 844855391 163200158 476188788 241382153 824142683 468509437 735958477 309690710 915745018 678336976 961600939 235144570 498559598 579373924 886862982 112616580 334394749 283008705 357008576 33774568 623453881 504575884 912739307 467038078 730776148 574809353 882305276 951000655 987410486 899501651 966524972 304426099 916532090 783917701 786220141 897881306 946753099 146554116 691994895 210385220 672598088 151885832 315476225 392299325 751961385 384314024 591358293 859082070 894993773 37835905 373989580 627444137 946659023 63085620 429427863 627460124 977539397 885880344 901130237 138256984 782957442 358739717 750689793 710673474 809501314 825181157 993375790 34037400 777765207 516855453 839229995 877307899 961854730 330083423 666055332 38378180 740666002 673130704 715359139 706045595 930664715 679473815 694566650 42688843 152683849 759129540 944802444 580724914 954962275 21529389 437303749 17705444 112052281 389379798 984375906 197648199 300679068 560330872 848009004 198092407 292300240 217913427 336948598 599703573 857608567 241372034 680877409 536204409 572460101 90078842 216372399 139239506 242816782 301153485 823641754 622156087 958142235 224762867 267914945 800469035 964332214 532829909 649876320 373082961 966162454 74367038 543844583 372598545 998869072 801213400 891442635 136623196 856116481 236258564 979780000 352078384 768667191 414424971 960221440 644112501 886472525 252823896 385833397 97283161 532474507 3316567 692336980 28428765 790159390 361942090 647718506 643815218 842636308 865441517 992091849 810540828 994819052 281241380 922201788 605128640 967092398 164751598 769946396 747188825 971276081 435565402 482523459 869399940 952189711 997838528 998587436 81088066 474516679 961589354 989332698 782295056 875941488 634167594 793089855 689604483 814441475 157126203 342590959 778450138 938228254 485147705 711191882 136398259 255877253 256599414 606692849 797010312 911841989 442752035 631423091 466209968 993967717 669506546 937109191 432557774 827421967 337513298 887104650 445500852 522014657 785880115 929044912 908584125 941676937 435107606 554293348 700478422 892785397 156291798 914214301 907557290 999893055 341988059 543575652 772200269 882212507 163251420 656860620 327656914 754045169 681521979 706014424 537642997 622288679 689480661 894467543 354094824 511454343 462854401 478432745 481870477 625981999 909477044 961594428 384627857 818759177 629250549 645032913 476076333 896976874 993650945 999512127 25954804 958885966 747297687 946573193 159751115 743516970 847148519 926295406 328318898 487761328 404683263 542487798 41049586 170342433 977126090 982592809 582094207 637437507 404566072 585524096 845935898 894656296 605630604 612661853 925522146 962083666 864206424 955063424 224725606 241694222 784821978 839875624 535995174 582028982 665259162 836146676 607466518 986056747 865106580 940763214 694623743 785707223 644507980 756745954 903067872 970962552 92279457 986175841 676686359 699368016 496024610 561052615 616832881 778991067 316513351 894684335 227476607 709947503 294355032 891040030 720074883 989326063 724404641 728318423 522702087 762813168 923044895 965900248 884948793 904653533 718736734 966712387 724388909 913236251 463209006 927532270 774856199 984066034 960193091 977669555 266361233 797880404 39139411 319248591 838056593 980946231 556302930 924109789 755204364 840894455 863197118 891332519 231823085 254236234 565799517 798825407 818212341 925520726 541598321 584161069 32878444 373591582 890610330 989892390 799527230 884892098 434457610 630760328 25731499 71449577 587264579 931410783 385598260 717481526 429193089 545896681 389663675 643268039 382256524 453482515 818077753 880985333 850744131 851328240 349424071 889532633 944089719 967814785 775771540 777624542 53163918 162821089 680477148 742502714 313932398 512143065 252100624 720766019 617109699 912843710 82581366 922458854 936231602 943979256 377024177 840590269 707488884 988571619 105799512 293549473 777092752 858622593 55609215 704089409 165918163 400203833 475982624 885432561 436167178 564961113 566305511 729656047 849471723 874659204 325787754 693256275 48710371 981421760 479083183 880028710 556141918 933244822 825744680 969952867 7840159 254588723 903021533 995192929 335163039 522359198 8102304 92317715 845740366 927380398 807314980 860677431 884897149 964348520 248202339 692830609 702902209 762242492 984760448 988593637 469505582 538815732 439806119 786842406 622882845 986310170 97639374 395093688 4323923 941217935 555894484 996555624 678313742 797509793 132668511 284609455 986115150 994399461 767784563 958307907 971405772 976651918 940480056 985625026 724079366 867708504 843485079 996517182 727808995 837107524 952394476 980264172 443186222 717346017 973643520 991815968 743925082 800127861 971869310 999260163 605869769 871742816 656222903 731769032 819916375 887385270 266841655 352743637 39280459 425186623 620267146 867460080 852829659 898143542 618472952 659811672 258821249 284350944 207169811 340479541 727174931 841493563 29463749 287720327 684842893 981816128 346968986 808795374 178304559 789853435 287464290 951089275 477910784 663821424 806562351 974879209 204128686 227554614 121567547 151682952 982157312 984226376 664451356 904950289 143602865 768912670 500529393 666727448 729030853 958816746 111401037 743484154 883925498 956450574 289502732 932267720 784265759 957978131 329193847 474622525 862533951 960975084 416410201 789238963 703800189 940786778 9524424 498250433 20931768 797030562 428505491 746447580 141058855 609939214 395828684 961697343 944320667 964242334 877625879 959889356 84605697 319625410 516372248 939595580 158318323 973319165 798710416 990141049 484665633 579964700 815793254 817588580 386602815 670177084 559827928 951314023 699964354 754795670 861583880 907048202 730539628 828895699 232764452 531557624 402810026 696959057 835273803 899832518 123813824 180469349 199995501 218813149 363885037 979003763 722752433 798796641 639578549 775195912 991519258 995749095 129182943 860127529 346550382 419690278 186745622 521725715 658963984 794720357 330353713 842065843 30945254 956395199 816988136 910095981 301001782 851234758 983632353 998494110 870007163 931401727 804307659 875707242 872934953 975019726 56727041 104769011 390898587 508361152 756011731 826259541 306356135 453083653 199259368 371722211 325681728 793266545 910271541 983187936 933886656 951654280 882658200 937284495 205494782 413717652 118877223 839207392 384474271 826219217 944078551 953870355 909819251 998141521 492063703 985047121 844684146 895050806 475269611 757928931 650444041 757385126 997821261 999289724 791500711 973777972 736000995 986959934 489644879 766297993 766136918 984978916 603254015 906370928 283574207 655057797 570799271 999351597 535039292 725045563 341950249 687490383 97039442 262409395 505631902 589019456 421119268 987237470 122508927 954447113 92722206 651919216 912688621 912917762 252638086 967254291 714267337 890129723 297284398 837078482 659790745 732829200 435927283 815582185 564197234 701503841 390441374 966531419 794955744 841507419 599100121 827450305 55279125 484532406 244120735 462052133 871350061 880687716 924471403 980452886 744947342 969848986 391887204 755347628 354915793 789201569 171630637 283230068 960185093 992667398 461281002 712398732 324552164 712624230 219411922 294424914 963063903 980264984 976771255 987924497 891796907 964611877 517964458 860434701 940756953 985991651 650412208 744745660 587721467 852946711 823415447 844117160 840675922 980599285 909581710 980768523 324515966 532694732 568993520 681841032 257522668 302931700 947661598 987993101 880604002 990010892 608215828 972745438 205465053 796169065 877446780 963477503 376387430 969342370 901697887 925057289 680495335 728017843 692205687 729056552 106733456 526374239 636128503 955132050 462530141 582521086 14930658 824363822 396687003 851898960 701045294 720877885 956319691 992676945 218055162 971091167 755950396 950478681 515782388 723405205 936353259 938535745 576442044 787650557 579637192 831841452 496568851 989004591 387133455 770288674 905767258 950876973 464615296 505974937 369699966 895110443 170836278 579956061 439495103 723058980 689936636 904879691 78195317 869905949 682900411 797861959 114346661 541759345 504024625 794597566 244666256 291640608 685024153 848993839 226040824 921388993 988644328 990776772 538805452 823752127 957332884 962727285 204016224 704883497 769318807 879823605 241945823 880624242 395604047 851644993 159576444 490806047 217736905 725769291 592991088 861592607 689825255 951484815 519211572 861268940 915725939 930548201 824318782 958930223 440708882 647338199 658384227 721980097 619276769 656187884 319290875 453717049 857546629 920378620 669633191 902748229 766113762 926165326 998270226 998935767 234977248 327194369 866520006 899709553 176913027 938037858 789603019 912371463 449546893 585614829 175775694 311455869 963081724 986817605 421588804 772508049 863309077 911022406 722283560 744442937 76387157 623169445 679001030 782171725 466062825 521837279 814421752 863908364 292697325 906274079 79930349 586630884 703936973 968480445 119776208 731759699 14241432 220523514 456925008 758373522 45724830 273467014 198335366 786040776 390739743 587926776 790083543 915031058 663892291 895822286 884502748 893346946 14233061 907798138 463894233 903110456 476922410 991841429 525679307 673412882 230959597 606111051 95553712 463107268 534704257 951746725 942584258 944475793 553342216 872635874 435797682 956407111 642899045 970310799 514783916 644053773 737285072 981290490 535842833 573055061 923504597 976214685 234056329 557376598 173625089 811227444 834822341 924155162 729561616 754005266 952377460 954354690 138366497 342188211 282293828 503975035 272953851 814529957 707523731 907504339 90973516 141619688 414509160 817027146 232705850 445112518 753531230 971978057 633674573 682295243 273881819 336223292 138659902 844772267 658107601 957026106 335554250 578726259 340532980 554843960 463552949 681460997 387892669 969603454 540095799 562261220 440905963 866790073 575006940 831216947 501675058 939271682 500510283 856119928 371674373 889633498 501079630 950791434 803818857 970438400 831833318 834498664 993330251 997725918 108053984 226567732 260058990 697518106 611851478 806143147 598869526 644735848 824301340 932559939 258393861 407612908 664759771 717313733 470952022 825831611 266469619 784034091 946502397 973190795 140776622 608473538 930353567 950640922 228435280 365212013 599431036 652740981 751578366 905257892 274401771 495711028 58419403 878511639 331010824 396098811 953588991 959324963 531846759 614568851 714108125 782008018 757777700 824401993 789729047 895588312 509542410 664066037 195044123 848957742 105617143 741594154 276523090 385617764 39072046 646235287 103480682 331208240 219540456 653668619 209162238 220384240 781427419 989915147 83155288 167641461 306098560 897323708 872223450 905431597 373937652 766872053 954818834 980692025 875761575 916654471 413771044 895588996 257970283 896664503 975116241 987426471 524074105 772316660 525020467 786427394 458078042 631165489 48354518 608491540 142207586 833943558 992322296 997347969 62798712 917287225 418213312 802657882 948442410 988642484 63547902 557107635 920643672 943243897 509347716 660430983 106392777 274397580 855513490 912278077 255857519 611557745 549969255 686632203 299339109 918388638 623420257 679443235 58967044 631918711 655623536 951665892 352970777 716698321 594724924 910355128 750813071 894702053 746683177 874536800 642399799 783328910 576724376 665333880 439091036 996490932 896329998 957918199 91092715 474779099 309389991 545656243 54192626 283551239 829597639 941617241 851100268 935687738 952435737 999762739 586390641 608978248 111242564 273698290 150552903 751189117 865469182 870141602 37095488 322568804 159987274 216768215 552873409 886022640 819059107 956216144 538785363 920489759 197699953 625790061 874815886 969403582 35408066 125179423 235242996 494486210 266703599 883749975 225799356 359840975 610209177 978124268 364033211 987315059 761934083 863299496 340112838 781033099 896238440 910070756 935865580 956118081 18675072 192712573 675069832 766262197 899718322 980207366 396107697 534617677 677548664 704113209 692660028 739771497 380031119 434349268 795104913 805940624 223928414 687677067 53028999 366364808 726246526 743718412 571951194 870325557 712659651 847510802 533926173 672279772 285394586 768923996 821579700 930932604 288359889 456850581 33379644 417404513 398803199 943045782 327275759 839401135 647697912 853112983 286166364 331595756 786387084 796591595 856176099 984238229 167728700 864884242 439346939 840435761 991308346 997579790 526778392 595599410 105414567 603891424 795731515 849036021 862011836 949639896 741193934 974521919 538106449 872351390 529097088 864411555 66940995 940231402 212394809 740640646 622696890 707932947 301853593 372784697 884394982 971770135 416016353 450923492 98148930 930440916 525406967 693677964 588951903 626848238 638590249 740001215 66678921 153526620 587502917 680855046 7937474 40344086 921243173 958591740 13319310 346580276 846289258 930082840 20215868 636860275 639838799 691664451 281078588 983612382 325120348 688395295 345532812 866557965 813704990 891453465 196909039 595703896 720568236 814787492 260072542 705894536 6813007 620332435 778399291 818207151 826164688 904614416 224559887 578047596 332573600 614405419 446973506 934979300 890392745 934270311 912454758 984040621 345419034 406792637 211525831 582125183 11320726 269793256 846069301 942215342 130259566 918699265 83390741 230793972 10628360 946618433 166326010 557355395 915718070 950829438 340641933 622114069 307602321 762634719 695747306 799484553 855348181 876036378 385391762 880810099 377279625 758332602 887906896 916150655 655939911 690281264 813799124 924105807 96847254 128099185 335202011 578961700 351385542 897773144 914648581 942981293 343177020 667870049 69899118 756394640 994440540 998558688 19759035 703455229 104557192 623970634 860221966 906072416 655607958 860656184 112862986 359841928 861905216 899880923 321323203 660513852 324640287 790871409 157158760 416274465 895111672 996599466 641125284 839517282 189834644 769636785 764573933 896408101 191795586 893051043 710937463 803928736 481425771 807185098 54806030 387016283 400321022 854218811 683388022 984506178 98415100 588047161 785792172 835247876 422322449 740735932 204794115 587333479 772533258 923786920 253059978 360795069 488421810 735988407 650624005 984327470 336857754 438722227 658825919 813014915 598019534 645749658 547672142 938684986 410049050 707473270 1012169 69964560 401503163 681395670 943539443 962187692 896164722 981542811 307906800 618770086 882785495 990336068 507507582 905566169 162128484 651818802 27493473 45796763 362721357 714011129 214466894 288928657 137602115 755214604 437936758 587008874 883468205 922557458 504871427 974258423 839253685 874842770 270412052 465655308 817838286 852666920 28163004 602855614 181977349 914563157 563393458 616233399 634420543 714173519 305909502 678841420 92973012 623417617 545347164 786913385 483502293 805885052 414605083 505536157 174045324 359891830 516957524 678891832 711526626 936985464 102237713 630936239 465356329 497963960 249461102 495883576 861113686 988124529 237396561 897524050 31461207 696806651 625246999 857167205 85753091 746135025 984047070 988425699 64787672 695042107 171115479 802058436 338864885 656273235 708718169 770479366 312217930 594320865 292119922 717240902 807565880 971387446 457389019 868957295 115810074 626349288 734092874 815307012 835711022 923870663 626280134 705024808 471536289 656148801 285820935 924726489 977716556 999875850 908125561 953950603 727819583 924755625 683572760 959060736 871974632 897827102 980619804 993127951 501633966 969622637 103443391 457834306 78352340 122593659 699001233 945664561 950443220 997541208 31387288 577785093 54686116 562467451 684147152 899352272 128874522 468557510 885102596 922894516 596473375 668992505 944631590 958577765 15864164 730031023 202243906 493630800 960767819 976741240 897832107 951736954 718059975 729288016 948621605 992039393 777461790 986918910 984536523 998284950 611750480 704501475 935732816 948482093 647013912 907338520 186144824 421263611 209083710 437164532 941572555 959191616 808661695 965921569 894817939 985569116 802785887 949772752 228818943 276439729 563188801 858254070 579859628 965137796 460894113 869130825 119814141 629578689 98344479 936731494 717657714 750120654 643738511 931491586 343225022 762611725 57093879 606557775 325902380 997624376 366862413 786425366 586331668 923608992 204151572 463891758 160464163 896721855 341139677 844089579 186772971 604402849 133208234 273943204 512296626 626266603 131540407 434895961 868965405 905125355 573609411 836331807 861115188 918269557 474699689 503096489 148298411 751847146 937336585 949691379 849597262 988320680 304889642 538987044 3765425 277908294 618812261 836886564 248440498 770268424 486031024 998063401 882372147 887224291 763956348 964513664 149745978 541052502 658691836 708720515 1506703 654050197 266310771 692447038 359220048 413713657 615332790 728263627 879036389 955038344 693027456 989354456 405406797 884922022 303359404 498614483 510278164 853107380 541009357 869428651 124944132 646026122 106022020 940800777 498730718 632345207 9848792 311540024 61719509 493488211 390444642 747380111 174405123 419185358 166256750 422279285 208673118 743814221 235419799 821374685 322521543 846234731 530329114 593857669 396618690 559895932 926950983 929682459 558762720 927792630 939200565 946050266 661227546 971610507 559013695 593166352 990017599 998520337 926901603 968165525 305413069 531042353 554856229 626636784 136450235 454101507 86047533 697850263 403238908 505111836 194917591 621335995 664058783 839845607 461747051 820521381 93867885 897478308 937027472 980905015 847137664 927376221 690042518 883130146 198486229 452592101 697117321 796424532 788014938 795476547 348847857 924967790 437651692 943592260 622149300 839780501 837992230 917013096 588031396 905307612 894198603 999240648 634199428 973199078 282185660 958782231 632947288 772464568 995579377 998903678 426970893 531260041 632752871 938954191 162614290 774533736 297505826 597009295 593573635 814708651 199795781 523796880 700207511 919491283 413949639 566928737 671811596 771732668 505629036 556651283 822119118 989876426 174006649 679790526 910421207 940656180 795281088 883055552 112759443 987823611 640889600 759676841 832412356 833799594 17446468 445469626 591869340 741873049 85854658 501725513 816340017 944768259 427680321 994813681 735793280 767805777 90270301 185104804 232706070 897206548 358185888 842607214 471860184 928459856 432840750 870865060 756625077 780065337 870593858 880040282 297161078 865768508 464706601 619981714 948377598 988234792 94625082 127462397 54774335 980200675 790899123 813588728 558022122 628379887 555784566 571872626 391526105 695683880 37183173 811163043 826730704 999538804 396564234 605316562 768553264 907618658 33665290 625334219 447712762 801142134 803397713 864234045 60628548 475693392 381520130 418352114 399462306 819724926 958511687 960238341 900523722 981624526 767801067 977335950 270628645 954661670 841621330 909038664 92398476 223230676 934339821 942589730 658657023 774232381 545822652 794783564 458460550 465048959 617232460 700051699 732678707 888807764 313022009 589595339 925660765 985176918 59407986 926048863 25636808 265226979 970076926 992713033 975747177 998542322 783651102 935265421 502921292 968207517 503812016 944258520 790417176 997570959 33383761 967552866 308141793 817857601 920204552 989762814 122106735 406263131 935442358 940800073 394730238 822544350 961261502 987613103 869725383 916143552 898718645 956009623 779744190 788613771 977609292 995495828 995429941 998303291 448098044 668226650 989717367 994568224 237589806 895903111 649306069 753422648 439212127 653869348 135190616 222402377 196903357 630739629 551121224 599896795 504181705 662894732 515499770 518161544 785824507 949031492 187449518 739802056 409220508 727048105 436304668 777968843 500684897 985648271 815522201 872614980 817310593 854268079 167872044 204494665 729311902 744351258 46641914 679812887 863870491 885939384 622099266 652369193 622457656 950808868 592859499 821126342 580987851 585134498 829053807 926096934 915569355 949475237 530660825 702002498 542130853 635058118 729307334 899429934 566458046 965852310 768831015 879003197 91001649 749455498 892181980 898224749 357945311 901767371 228321852 662630571 75806119 996581292 438399989 719760713 938973323 998295736 653398402 757948099 451450639 513568334 61495319 320551261 900998352 905674414 41543007 805072109 235016832 819429515 43833429 284310364 536252066 568241004 239652538 734426931 465076926 763496725 432211520 586574972 605879482 908726426 906342514 970629611 573912507 962200553 746739422 757257686 441373580 650735825 858766346 925994960 76595233 834134312 880597128 999337949 866729221 995535128 275444969 466570504 475346663 723702613 548624024 971368984 577620802 919157704 16337471 419268168 329404765 716805638 972840549 999295312 921594686 960619298 152461367 274923095 893710673 917383956 99667138 809223536 448138953 757500041 155732519 589338590 305659029 522002218 36702535 189156637 571008778 722933401 267339595 803246577 576324331 745378959 38582203 244409998 466076423 901397082 730845518 953401392 966856041 973565954 932484852 933635400 150729509 173767180 286956834 441780600 836810204 950093473 435258521 548144047 773213500 843721918 524413760 973558013 289389430 816740901 56603417 475300610 275374964 561631254 62879567 924472039 414232424 432515264 571642126 919235111 31476206 382526605 876067464 932873086 11333902 463884098 491875066 817956794 729739118 906458131 357937007 910969426 938741627 951405036 76936007 124232878 987045272 989962690 265029589 715860888 188078622 345282049 166786370 326775593 11607506 968201291 578557299 885244853 180720618 315164944 887901265 990660440 55871487 507281645 244220431 303761856 167013748 959889439 527857890 888625635 220349019 988945341 273081262 697960756 325220264 483846425 160929530 785174163 629050586 666199961 550448458 653120828 57605633 483805013 299912638 674591834 916259926 954726076 589910903 984746131 389214587 865397950 879197164 888396092 730728106 831611658 353543774 733424838 564832010 806064078 794109833 948358977 817792388 866876675 987604581 988318179 584118742 820900949 55035738 776671468 787320897 992522020 993980676 995207454 114784830 459980321 107275192 286377304 815109059 830409247 961982443 966165123 763383667 810594101 136742666 808589335 117468278 205775370 569474064 973358862 832373080 958757005 456508201 516564293 900797178 904692905 411382642 664591317 905963481 932850480 108246291 223077442 282261758 617653188 476786152 767113790 634752636 697838974 46148889 754469713 892508159 966224362 948003142 950476451 186963735 251411787 584124465 706581571 229401696 873327441 811024457 949340166 906409216 948428157 673603739 965585242 775922758 813983761 861565297 955335272 475805133 992496937 12542328 516789430 780442994 960707475 953602775 984016634 497509662 755299176 546826447 680923146 700231059 800646756 726866479 968354225 478551757 540591719 644046294 789255881 254422656 889653699 600302144 952944945 546710384 550836189 882582540 943277164 464367721 528975810 267931202 368562052 574726286 935108083 655955853 871895516 492425891 522399196 68815996 882379534 777127930 883653635 184418728 776994310 639854828 704715284 417689359 758786980 652180651 819725672 433391893 477657062 539359834 832163781 661999525 846143832 835717898 968297828 532146015 659558917 417781548 993445346 679586461 852000145 575411047 879177730 238015715 983945933 629075400 758831481 541857034 631290371 106441341 321335308 940378102 982796498 878837695 961324332 261175772 755336369 534425609 549655669 709815403 906096414 173370222 245054371 806475175 940653226 751011685 886369796 621621417 768558351 448976003 618380286 97629469 118532500 268897677 426063865 987512651 998685385 934039275 954863144 331225207 401777011 50507857 136320644 869008735 932128059 374435504 830388131 939624126 997569786 469189310 485201433 542382609 972208957 561643081 617706105 881759770 895419047 608111708 735881190 932380953 948271558 88463489 410879363 83335413 515309119 5327689 746503543 912920579 927676587 62580084 982871997 534716121 812691499 714674429 806333467 176601387 897157128 292943262 417598050 368568454 994059917 83031654 116452116 172974946 284470787 867405181 959404577 589090313 592327008 36776440 103234846 679211553 898669383 181208423 695162091 696958464 930613532 25442199 957098272 643419332 943116453 244024635 521772081 285625897 500573859 924944417 998682826 921947592 968189664 162906725 720447499 953381743 991462104 338860222 605502950 239393059 348890013 12668006 630121908 181013049 355113842 834624707 864407654 891400282 990756919 379332009 981253857 813177096 979690006 907609308 913221143 77279441 305497643 951075573 975387778 976698077 998404893 561076484 742027085 440581544 949687429 153866755 631962532 807849991 959511983 795512070 869821094 653336825 768584437 552799229 603418883 881118529 902299872 18014122 865335129 300971556 435715162 713084276 767280786 796058859 838408004 917270682 991578133 905008928 943200516 230589255 551698807 874828646 987398783 64679733 294911127 295992291 671254548 155506864 508975764 552799203 556980116 340119927 523961702 970898039 971155228 53521541 995149475 487132730 602490941 793489959 953844565 18958986 708387869 635810820 973800939 757258234 878610291 328019774 975670736 948757571 991103606 606182097 974256653 937461520 959060370 2407467 376962631 172987273 242134649 925407725 977466754 322106808 903621705 513063186 814776865 674442613 754817449 449419708 922785304 920604085 953814772 611536936 623965592 847001210 911993864 355952203 541659828 858817598 995221147 673540990 947908481 58600310 167922377 989135677 991428024 30926691 857497615 942414257 997741748 776725855 932807722 236516466 870506287 398400005 662319119 884424402 913835888 148521273 659883128 540833895 997438617 658953460 668562718 421365898 552610419 619826359 670414655 552006282 588228647 947488010 977103027 218883809 771571404 717718547 856756844 198159440 696032501 293542862 390656170 458135944 887684518 892912024 976494309 619244119 974577833 166371367 791356399 485559694 740756990 679319436 730051540 238979781 548644251 500821475 610682359 10856725 731768160 863763362 998426733 595547648 606186011 856722608 955806707 6615273 259449320 737380499 857444891 34268332 429748544 404670560 840126941 671912794 891445413 987282713 991121051 252629539 912598152 476211689 708112096 523358380 708559364 536102004 551041995 301915801 648733336 185571160 820397729 586366623 768561585 828684209 866804844 319878231 831956403 314497267 450732810 713833712 793942331 556979061 623492113 96660010 980536770 110194005 413170378 453554051 801688956 811763974 948565787 231048815 915012632 785550752 995005214 908851445 954169669 68862271 645427441 794607356 813165534 878434000 997812169 674551081 866481048 589422717 983564900 704300830 759593190 111653386 304794903 414377065 938868460 985282699 987579047 212338431 731512742 949949861 959713847 689535783 765567863 770290889 849904069 725328502 776766855 355982684 785217709 686212357 934299559 680279335 705229715 408492584 675747899 402531722 527750745 595156432 691662149 525444649 951217928 915613145 985383174 136259215 294541666 680335914 814589895 860750197 962514940 832620476 854082533 874519119 987403758 487087733 695500406 637514721 809546578 703539212 718305801 400842358 489401302 501688315 664468180 349653606 646973338 734149774 997901259 495088122 935042946 537872486 602636725 630693317 684073880 130174757 912996486 861565783 961979469 191263886 617482259 439037914 916226239 922090900 935187621 612039293 764829011 356281009 788748259 713587463 979523656 422056140 594044432 445370348 724277862 286243182 507338493 928125396 955271951 259972654 394372458 10311959 974612740 158368134 492116902 608081760 843937588 555640179 574314035 53502158 599257109 703658434 865269106 29513594 60812963 199423485 530179621 549462846 877614451 289421131 656010377 846647902 933186932 972649758 982724361 510128681 551435150 461532231 487316486 68092255 841590033 102694668 602173078 966622415 991207746 225196040 389576561 187514008 441075439 768806602 856779416 642537764 987736257 729350154 998231436 860646767 971824756 68563438 596363253 649046780 906626993 927846491 934428693 92576720 139419571 751463712 813845105 279438447 863762634 824577042 939643742 954990770 975130154 292434869 331287433 839318648 924346758 325266725 457448766 197956918 618910640 518842477 742469541 205894027 767398823 392561157 650981001 14794017 748037165 896858907 980676866 340922788 568773109 380307840 805882082 706725581 734241022 484420366 530358109 644450212 720491999 426081511 473146080 69029258 454146227 826170958 899299668 580049546 912524187 793533685 842991202 365106906 717926334 386973488 828841324 397358146 734412006 267616413 719421420 100289799 844388663 818499356 904163458 654454956 694728830 817502146 891141610 386220604 652249233 693308245 762459168 431157821 651142772 79482543 430988624 52161515 621479213 302377832 978627761 558453455 925933402 377637792 683821374 623513322 783344571 466516545 553668730 921449274 997667189 888912075 967332600 610446446 986717966 996517286 998967857 101815864 807107573 447987376 667735343 327154583 387534673 855326274 909759382 182574658 872361780 221481757 866001754 650914764 825773995 198071698 253764854 607023765 883247922 504044297 753555496 23968360 341969397 675326419 992064622 190368498 605120109 755502263 815244267 274866898 438813644 963606986 990920355 10072586 416398554 548041351 746971412 781870537 863020431 290913895 590055762 960797041 999644861 386913601 416537228 660605827 955163144 96591218 408246085 202721663 298754099 912192874 977395158 332464508 478308196 482653873 586045534 42029435 752551599 553395923 939871707 363844445 842573287 654212148 707838980 598556846 703469484 76949389 535715090 371430375 384179978 693628989 999808647 300910185 508322291 84971619 634142143 464789272 629428179 289354551 979131204 773157231 806497750 705726631 784243867 935334000 937477940 397836202 883604226 850442287 864910053 659036294 846586431 796251596 916126424 303979258 981330245 936450212 977496668 375614395 661505018 870068630 953101011 819103587 927854609 199621661 329854672 720508042 878029449 567606883 874310794 779887652 896350245 550231160 984523940 580639054 611412676 9575682 527455297 748081358 931061650 5303605 280432371 234251285 872803753 420167461 519280011 459531865 997985579 271022324 678217774 888216925 958854858 48377580 396065681 543120761 799825565 784694566 889934392 845357157 886514148 570104380 968461538 802529903 832377699 844438754 849478917 441675452 896082376 692412336 959707861 364547649 897124420 523071464 850185328 795602711 847068345 129976485 817031686 283823165 866448692 936874427 985676733 433259374 458932443 829482738 885618942 120827911 485813259 523077176 982952933 258106579 721078796 898664713 964831426 260555126 557035762 759555738 784953936 229960362 263537114 427256824 808246703 23534487 653353595 191706062 193086580 504060326 573952044 349350088 796968166 861327849 909186021 744378397 760639275 388657111 413539793 329195052 857106989 411932533 807623370 702236646 805792404 66954744 176723216 440019000 513774550 645366353 744556407 344806834 889315795 287076825 511970956 987954833 996095663 795235211 813949332 816044787 858608594 387049470 563004405 521202760 939845715 979619696 998613701 823800110 901644590 121151459 715603173 948649286 983427404 525226085 850098347 232266725 992626263 418467185 548579401 391844079 536695812 120896951 202284942 239974288 967134172 468093315 565368623 838088005 987452448 420794851 973407635 782016738 851205367 864038220 883260425 397146339 558589065 677200267 938881828 28407545 198721511 330995420 998051822 818839311 911399806 493741633 903271492 625312245 999645723 502898860 678371633 746968585 962858919 496550253 589151218 510209597 791159941 982679030 999331115 329856873 740127915 330404325 529107075 120238305 911805341 557550123 907448935 754932709 846076675 292076037 936916136 280600982 891350468 241561228 307437507 390445023 798033321 485760181 654758585 467171532 985571440 862793489 863225336 421441863 685094914 566157301 723612339 13117937 261463310 881145853 902395869 909677924 927943717 606296678 949031796 790234332 822365882 365476165 883102416 447399362 874979429 360769543 466035600 953309752 965809224 440972942 497544028 345860212 742749137 101615183 360737954 305587875 380751553 757766573 918338739 965393945 977177611 951512550 981034859 145225717 187329305 498721927 760592803 477156642 769083783 475836288 811214415 125319928 741139992 543104433 767830047 527933570 900286271 688484087 697389983 67368758 710897176 238562512 686240418 19823275 527908910 343347941 688902718 225867716 343364483 229663685 616435229 37314357 429592299 714675749 879187541 310383679 927025990 642163447 783234401 970097782 987691164 439132308 982014039 717016256 984042017 475185414 498792555 943872539 972860074 537349971 657027410 873285499 881746856 772945979 938349742 775808948 785597704 927633129 999582070 444534799 935205659 356787457 847831530 208775657 809174870 560632200 829952148 33513923 872148572 906261488 966633847 891727434 982636945 537567645 913327774 245032503 682830928 435459064 964977126 389254444 734161578 386838388 911470526 808585964 944356741 3343411 292778135 556122641 759086602 850574860 923999544 36902142 601992672 826566437 872956988 388716347 721126491 95644686 155785024 170670814 651972908 711262871 714467117 79794838 495696863 816620887 872795858 470560940 482164874 409342738 996201488 269171647 574267452 446601853 994301935 747513639 773628794 648350996 846604468 53155417 101313884 836427296 852321019 891486758 979645752 592408376 719060662 862262590 999481466 400295992 862448929 414030843 725196968 377331309 482767289 77764069 833802694 471282685 680621560 505829564 520674677 346105126 881010045 81615711 911970996 618784718 846564456 490448702 519762314 503424536 945933018 326347093 760135217 124074049 150837742 379397532 909221811 821041480 836767699 593468737 868412576 458147773 837811974 524744908 743709661 634438017 903844684 837279593 954649319 107230551 545728585 85879678 265242023 657053540 997718722 946473528 990523073 715256483 790698008 867272341 957925229 722705968 728404266 639823468 982063200 699341223 942490547 940043821 973765195 228642278 260710341 939535853 997228991 914279052 938835494 893293471 974828109 729586897 915732672 799255172 803864244 560245633 708892879 928103242 931425208 192975801 486112279 189237563 578306568 229503631 623041851 762739266 797438548 872813282 897302329 869546132 944187344 293671851 951179411 298173676 918199694 574014578 772565672 474699015 585740932 302454493 705499028 993499380 995050714 839668591 972406499 625375531 865155175 409302326 847991467 148390791 194101543 904284705 937350705 758064323 759331584 154300146 910569683 403719216 936832770 856444150 882702234 681279512 830394165 202421381 872402038 760117293 940505663 608147802 903524236 826308100 856971715 179201455 722912158 686847762 746417699 500606570 670758063 907033717 978314881 234079839 762691462 405364116 955813023 980722196 999372468 291421478 663404879 522774158 775067504 969170609 971758043 237232441 518096244 502644243 977670661 672907386 780634540 462486385 493941859 916345522 976777842 962741908 998576507 117036592 751337989 326051565 409738715 21792295 32368651 994611871 997905246 991700644 992444139 847134994 910729755 460998583 849638193 518342275 750580264 969420728 986774330 899947547 910632107 795313575 876373809 643383904 954379338 875993860 943179427 211091409 903116212 423034689 745497959 426189177 729422200 128411776 969303591 824835822 835656683 423216624 828089600 690075947 829044452 3170201 854785809 294919152 643751990 805636537 870089077 777198691 926959737 353510131 575603653 890104132 992831058 874704430 981044892 899611972 905810913 394163145 419790606 393330936 700104704 675616175 823277032 374887844 757400312 584655134 933551879 951081397 972504633 772173679 977181632 372800618 807647592 792007755 798688903 261691743 587772539 278743494 838790243 685138993 928476999 681987778 786682335 261308950 839509139 716512263 878580448 430125671 498540489 153276852 860714643 362669958 608077256 304758478 848302998 596695230 627953100 212143504 404612181 736026246 999078712 996253625 998751842 164025583 368435551 84777440 912594077 839528067 988069533 54127794 808804715 822021399 848518101 224611273 643436907 294659180 721672945 841238376 952845965 198210244 327079880 162720751 587746557 45838505 448003560 773499158 918987931 780973390 801492203 621178440 894365264 952137650 976012456 492449675 677879305 862037796 862328670 809435299 943453753 600304767 918727417 247892132 481064182 182734659 618877727 489938374 513936389 195905573 597863948 204974224 266553882 610894946 686550615 880332081 886336179 748932749 996409501 1704801 215008434 33767552 799586238 747734521 900530959 257729015 552387045 756258240 873379248 671701815 904277892 779317821 980210595 363165804 403790678 746600863 933276185 660365048 810748699 399506554 969828360 92539943 310902873 138141291 218538806 610389491 639114182 544463379 742395495 830617896 844112316 230391885 333957996 437326803 736926183 674808022 823486906 516386836 913159734 574505680 786458505 891626476 929822382 44807419 472913937 958446620 965229286 621658078 939976217 70138355 174112402 245410855 326458137 984448677 996906718 939971663 997007450 326228052 799120066 500933096 879548135 387647833 517513956 871880827 946558748 57989699 924924450 556210487 612099229 975540136 985535316 333829512 936100411 688523 324221897 167257799 778264403 922855762 971698287 402234211 732169072 300118704 432544180 986974203 987925691 128423725 364380544 400815403 513363283 695709872 901165639 771608308 944982016 630739797 793959450 368696876 619291777 388442888 878868893 930270059 967113495 359586245 649069953 837132555 879250079 67048707 212079538 911390235 994180928 688534180 748250075 585178286 975074198 585392854 978992725 65602989 120096299 588551453 844331827 597921330 726424926 185925821 827477684 570277878 945750118 125668139 549613701 525373973 994931384 29819354 933704925 160584255 797990310 171067439 508988498 802038253 956641542 922986971 997410334 168481377 309807101 638699601 694428205 820643105 841990421 825746961 883090953 868174113 998174819 409840518 978233487 318198584 352859098 797017532 982860694 390278338 411438503 695234105 755884420 235539626 282070103 796207426 938333077 785082219 978812063 954798238 971752278 853846109 912654384 811918780 847881050 65369060 424588139 974386301 983151708 552712173 983713677 372432656 466132630 66936058 680996861 106030167 645365323 168073509 369761086 485568563 695994700 134883741 803915570 581802228 873124313 235603058 798061792 256052246 732299515 988319769 997764034 225624808 984772581 568863319 689199704 650708560 750091309 913823393 996971980 649078233 859743137 757406092 922650716 190220389 823406835 133361559 481386811 647334525 879291991 993704804 996943669 918830282 993857816 479861326 488042047 70613836 979782422 680498805 709006273 845237418 847184123 593226706 792253309 996009578 996268584 805191950 987304654 750539366 879131163 565181433 689664462 29846617 63912020 944337879 988005830 182536514 406399841 153404769 628146236 43926578 502876607 538645535 582435499 632691566 740144400 955859395 992326761 578949795 667619134 674804202 871467550 54123333 694293842 54517917 251979237 947568133 968385430 419726750 757162046 161076806 165303443 414746416 835157823 713359569 853984154 43728437 808253585 262158364 775838664 71852299 889409791 91282490 99496182 854650922 917276866 623417519 852368154 868215742 964141769 418823044 971496213 362694407 418083499 916388618 992397778 112492994 881957623 659594787 712176036 432006127 626825776 570624622 816312241 776281145 851377804 735149165 839933978 985364670 990953806 795402878 866232693 535593644 925002213 722087096 880118588 327641817 720345553 556060664 633997844 26748044 177044637 116166134 138206442 292312760 912972764 8013300 887117785 271182414 280735041 586117279 821482868 889282488 899028174 304348846 605650889 511790242 582370926 749732478 966786334 219505174 271512951 220944703 906646876 462621960 544085192 249964653 768245860 589613028 874011589 737338490 785221620 136630781 270640741 538854463 564329397 849405403 890201853 800659598 946932986 36616491 948365312 655173063 917820099 977102868 988194994 168864185 861977488 189104155 333559198 989982784 995587651 468167664 473336210 135637533 475978459 41867997 326762864 64120334 69236001 500385835 743625150 654971504 701696497 375655380 433826709 428549076 499939788 838857242 984246495 475294073 963771495 759956078 825826794 242267674 421546904 753005835 885436150 965954670 991608988 846968483 876673553 621377260 907154191 907594254 914530356 194477694 255167002 190102491 290881098 943783678 999283836 601008489 646483844 465500772 649172415 170390670 524090563 773167893 903952319 985449974 995359498 340694322 978586188 866483769 923487384 72359241 428294597 964867891 994213914 909030360 922746314 387843237 555839702 706274394 809424823 380756524 790427908 284665652 927678094 693881934 791660006 136461275 281206441 978272812 994200632 903518807 906314185 892896514 925166864 19371760 920456038 818196115 843409459 583485678 697723658 585512994 632999868 990754990 992168771 436527399 444563157 439561453 612379688 882430640 954851815 228006895 601039384 790793869 804908194 955028578 985300290 959577778 966613671 37396093 539698728 77393371 383725048 94503652 982888418 258917830 828908972 644238573 844537152 149067123 398942707 572507001 961128686 922775659 984475784 874929128 991837877 905467062 956941736 76684179 317234847 555626829 735742566 886031675 921998646 961124983 984180762 459842870 783775909 582817850 942744191 977164931 993588875 831528850 859192507 830140441 911114372 684042195 782349574 514534083 941164755 315802352 694207794 921053284 991964755 38880609 646259456 43948249 954435899 783468033 963498561 172621809 221745446 876118839 984463819 726190931 793578235 841050263 965694816 730511482 742929785 329013125 368061642 122202366 809588379 812300988 875786740 574945508 770712482 633939325 687408528 149359116 698009096 915466668 941591277 194546299 535773355 382121594 440423180 55164844 844404607 311487478 811547949 346613213 391432423 635987644 721691882 838300604 899318379 665857510 844505326 711490500 997078024 561749433 816193623 652275722 867676260 164631451 253299367 836171194 906658758 741429641 753627197 851713151 884120771 835128592 845813141 664783631 975465683 175112109 219267662 474233571 852706920 756380742 774775383 734118378 832299039 158408261 697303485 955479121 999757091 79305430 604710824 320956687 917782525 792281570 952734747 265332217 814258284 470985716 944086768 625409813 848146653 900239205 945676847 656071210 961661840 980694718 992530455 695969355 828171115 581501137 986964425 281675882 758961986 127740357 268945414 869474620 947791074 914476983 962468739 474528922 745223256 665681882 679416314 479189870 984918831 878810031 970941676 186552249 402023053 266303274 589436568 775122035 910778775 381187959 624103961 901190460 907467778 182469683 252590671 435341339 867239438 354202712 874620877 842733263 853290560 314725760 717796619 330333083 886465320 818065976 987911033 155405468 334083551 159876287 287375508 865133351 910508325 665168240 767903078 258211063 636223280 371193979 873941213 271846197 503919382 391120014 810835101 794033270 852780912 751743022 933875324 123592538 247896509 449527438 900733951 965538338 988828015 153891535 357370758 204555358 793781500 356347341 739129280 297844324 783022612 220509645 410547814 915763398 959173020 569951786 840366896 656579192 888226664 413305150 846433174 928668712 944885671 834358569 955270579 837071654 964222136 457696594 587681973 471363541 624014720 399090674 654108139 220880956 394161891 822285718 986457552 188415292 312077010 431788217 483399520 189056741 847932335 253361231 832298734 350488177 770224829 295138551 921381783 84664313 637485348 791728161 817404859 941253178 990999449 90939717 843025940 959877586 995896003 808662653 955894253 470508328 790681534 985211514 991242642 658276765 851508775 102355637 126911331 809215327 847249098 5473439 834344286 615714163 816490728 191697051 227788722 974747007 983430548 329147748 932606363 704199182 885708864 603103537 743970920 343074308 759822407 724346393 914683133 160562262 874505996 350315913 862692661 173852381 467482174 970951956 987666456 961341948 989923143 488453320 672427434 246019711 757152963 367649691 728600204 111798397 900719087 461622206 466490239 821872136 908017662 888277211 999193408 586272623 816938761 462360761 852321264 596923771 892495024 631387292 977587235 224851513 429151743 182004642 470509064 581139610 679742900 405163277 857638150 146930915 391083534 203023197 342241523 461843756 489482064 890716494 954328948 696202826 796688818 868585875 960280378 824500708 905155791 617349016 987243026 532107987 591166926 498614611 841074333 586518454 675153099 858998169 862295514 522602923 572295756 19585257 28084150 170996467 478811202 861255723 966260610 383366333 759905046 64155315 270192070 451910480 614336118 709493892 720440885 745848599 756198394 870302428 957735451 173322754 870750304 523482704 775353136 543218613 974576762 480843224 832864990 372559379 636081631 192411786 469493649 188133506 545573186 210831890 657737043 175686681 876514059 207731438 522220365 465571316 900034641 844181773 943047472 21633213 148997281 179389872 230040082 497222237 948770671 136639583 376876843 295086829 582834469 525941720 550140776 921527578 969026109 606924986 836141670 868588401 878581343 981400626 983897141 696901632 810938466 806223317 817191401 580035510 821116172 573421069 942071751 495113031 752573556 670475921 927508468 977366511 987350308 94592289 147909853 718289531 789648541 415944317 615197039 536717051 716310486 290758110 963690690 399181370 514857661 253178339 444275395 334209724 641043293 177423246 420102536 29064568 42265772 777477277 888576140 245709197 664348870 986570535 989160871 240359406 835624460 330226453 949851737 859602412 940523326 908985116 913801651 375981321 777832257 115481303 166300563 904359872 910085081 729297022 876233984 39524058 107062845 683672145 704106476 582375658 906855617 869054876 966386920 572138964 881209195 348503975 836419683 822131273 867121626 696094303 921305921 33081688 433558781 977253269 982472851 131520862 191999735 891465903 922700050 422909563 903979753 30264311 33757164 725666181 997223539 84284060 145216275 419161525 927405690 53085023 995152716 993981777 999423350 606718379 810909015 382621797 544126626 277268839 957929057 613312818 628905150 852484821 867327920 661667070 835926714 90480664 785079390 297443129 446527141 461407929 718926715 710300002 762503027 454403020 543191784 770136712 810324876 88794476 625486041 749017166 802660871 340874134 745198617 979096782 983054010 255254808 637035516 497164207 861257174 169187221 742523912 477659089 813591347 753060837 807016101 123787321 322352276 15351620 241675680 618672603 720860253 402481161 884257306 492256192 556958393 842621261 941485421 862209331 900269150 745361918 908856804 630909158 887750624 201456507 239350533 16508710 371877006 518271180 788124315 649961174 690172218 704493431 729448732 271056382 490288834 452266539 544702207 98225016 695235519 334837786 518106061 38440940 463879441 163201372 207915827 14777167 645335554 530842750 594794501 646675692 680686786 694312667 712930676 187610670 769364397 627235770 842123682 701404519 729907300 432900031 741872496 959933817 973299530 254330951 320270574 493652682 689588072 273823296 452171158 38911103 265109397 545501833 757264796 64541885 714348288 210742341 589340235 138733407 237101807 952038251 998592094 92545500 775376590 110966947 687543212 735933469 906918067 951034920 959207546 969534142 974613964 530516029 672532867 861693025 972459518 103998008 174294850 917704660 935316922 439402389 969227221 188650368 352545906 958580939 962509612 542551937 709276397 405832036 570444459 984134716 995532544 406139691 848785772 291269648 721028833 851627925 982030942 713108749 955320904 188097584 954967678 286854992 317944291 943189280 973796411 862196570 897833691 439681267 656451890 137688521 613293990 567353095 599445729 654462780 716414333 843048949 852749709 132523352 377067477 885693164 890970079 51587164 647125711 590859217 677983903 302242874 322032263 409444580 600956501 730415024 886556268 17524674 94881706 406657060 782603362 273118937 395033249 430244179 743847304 977579859 989546910 295472952 888433589 111685142 374791974 54179894 643850957 426877709 826007443 196311982 406838064 784352398 858361814 954639358 988969756 852655265 902151828 679208180 963146446 851386914 873045580 899260089 997173934 162079313 518288709 676824817 909509849 377553473 480694482 514061817 938426209 288295976 314595179 861516851 904121980 778762306 834350480 95120249 758454836 300303714 368580614 959038885 961998552 252382040 599432741 851410600 990697913 721869511 839216414 186624700 279423887 268050240 798578443 531202114 874618104 440649268 624219739 781023840 862215479 347050295 455188412 54213875 291724838 349605502 441844562 487473006 571718554 473384516 793746572 870116396 992478753 92641668 712381738 480470099 614016355 807848935 829153004 702669448 723254926 584150331 663638641 975746397 980386986 144982014 306424519 111916762 397104089 20836209 533571720 206367884 602374931 663482125 670997893 472153074 742987385 385720936 958299162 814061376 820047228 127538569 523557877 743965164 749489119 956632975 980604131 891808595 955572630 448668964 940443537 857887025 981788279 791647545 901971351 377411199 833126787 848946071 916114274 715962676 810491376 711494087 904022582 36931715 867125284 266016766 266259402 758892372 977720010 275811267 699466948 936453589 967042815 672014873 978171515 855033996 917317215 683520946 774594577 880314706 983438527 835725488 980914205 416065758 609961921 203368386 357039858 7963937 104358073 498461468 516804095 631984672 832671052 437492548 504347499 967384552 975357218 696994550 952847573 744908280 749869823 86243960 457394751 157298560 910924323 613239455 782659499 27649083 111690216 12124696 974884597 156817361 406887855 520857999 644526647 791099906 985824801 224914601 487463645 969604608 988752749 565106555 899696418 427990568 584617578 597963534 842023147 319709906 328139303 982239357 986911705 305217664 542195145 992460871 999774011 314965691 593607763 526114760 903235356 333559222 988593812 155509012 415715203 121448065 468729714 856218230 899479570 511389791 982617744 923955767 959195074 629497030 912865980 191665709 519369083 726880687 990287759 750067948 793789226 306229045 476839392 153171978 235527602 13806734 753305824 397944608 978439782 740664173 801309106 152069024 336007907 632812421 661306416 833267876 964433176 305725825 523235275 906425137 919118332 46020862 50586162 400988192 622650811 509168787 553844017 528179310 743661809 421348803 570691309 322799049 838685782 917447899 990254272 968214890 999013714 346385078 952137484 363125953 634538075 876328144 906943966 675743422 901369518 133259447 847022215 600036430 981844219 392525578 504615829 344992723 792488791 926677545 957805777 848443703 992887175 595178248 864577285 949803384 960370906 390800562 703323357 678396290 858300806 547161304 568126037 888846000 992596733 263916803 473922956 376754106 806635878 747722117 822117098 517327344 664367909 2400969 535478388 309762059 626649058 693109487 950908372 984709165 999935696 475303573 507314316 398109944 559663633 657468500 917965629 268877956 269034132 169185799 181650422 76968953 773232491 569812979 826730956 825432496 887330852 987235549 989203408 508201808 523408496 77341313 861147775 110470833 515436581 436370927 471052385 594265794 687683110 658912064 947081161 310389744 486789531 183602228 962646615 565152802 653819819 501432048 545344337 667466652 955522075 855926669 935858050 394701180 848516845 659812487 924045746 921609234 944761445 64427931 964660648 718792184 860923462 117180074 612795856 673811677 766194186 526420964 578386087 475601630 760058415 451611588 918318443 931640675 979787738 516840289 634197291 616527771 862852026 855512541 941321082 110026709 488886973 130134269 370653130 596324280 670842380 468054853 787327202 561740372 853821191 473811618 868958247 653967997 831718807 652075241 810081489 83591271 731898358 761167677 891202887 905632596 967369894 636534774 642101778 53355397 267952238 82938110 665346020 30890164 281733560 831351684 943298449 141568093 178111457 392966567 542464272 160791580 866769835 662935055 731270765 843403770 944915027 572451670 879926158 295460450 854455529 743346298 980683430 713243626 863337187 502762743 838830066 83654791 905610360 552726851 893940565 404737973 885028941 242459072 691265364 992747297 995132101 975241127 983669100 798220900 974350915 229956201 579919535 880266426 949011829 217597830 854939790 94743581 773159243 998577009 999891011 361901242 467452415 36944931 889897561 345984869 769183432 744727294 853960514 790364797 846826819 48290921 965394672 696421589 862264508 277859837 284006647 908235967 983873181 561449524 580533056 334957454 945560622 419177083 711522923 272043370 400122879 243797366 256917053 386166948 739271064 773874209 963972028 807747495 855544676 642663701 801510151 461288291 692758491 582576690 627379557 819545145 922578770 109367244 431765840 831042445 912655160 613121125 740624805 327663360 337517494 129467292 564094469 553402820 836818076 501044428 655747625 229338168 484267977 772067125 952504445 99797728 914295995 688632819 728132656 998179522 999146105 543807274 805755310 909542210 986814675 150708256 225494862 729315453 894636733 494443517 999389241 358938387 373632647 190873174 550198080 412497944 599736626 49098630 363623431 70320024 589379736 242970522 866674936 419577412 921116910 880313343 901189369 452646446 592403294 966871284 989651803 418560 790365613 733028173 749510317 410404111 735875929 921321965 931552190 589419189 976430415 916912704 946969538 625967671 682272520 16419165 249408270 341678033 818373123 102718801 411164626 853049638 999025611 46392064 734593444 220390339 607815953 536148813 967715072 531558112 796960146 227799130 426639652 17445288 323848228 65882041 773993984 290797379 899696428 825163609 881856022 279294983 621342963 653510631 911273939 41931418 267069669 108701281 647142763 310329581 731833498 694713477 960005031 829007371 940488709 421173314 625978297 442463234 848605932 697261285 993840942 103640304 179616868 39216219 989437918 571051269 822561392 117777854 266589955 416949585 578584043 405595928 456705403 634585918 864568421 914208476 980967880 919606685 970896555 989059838 991816191 543740172 764290333 692322796 753010201 520743474 712774549 147920224 919932899 812626483 967768631 574123939 750715383 557548704 692048826 478963541 807089520 778335219 869738075 605211090 845985792 931461462 975110796 128586442 159898304 896262769 935138327 524786208 990829109 267466496 563510295 925713914 931294469 707115728 799102245 694976925 792783132 731248174 972151789 528057601 649028166 468752230 635044584 684485696 793103647 990437522 994515153 190406539 561507954 401508876 698184858 546954343 874729078 258315732 505935589 816969772 978209806 638775729 865993189 351233530 840720689 889551148 935522785 57020236 413813243 835180234 882306793 44782881 107251320 40972334 64351864 960607010 999870847 430905430 786666674 849085534 983774840 541259482 806607941 410651789 573050545 138510561 717222936 435573879 672946367 178358967 751980557 733158123 935792818 441296445 618948575 657594592 905230265 763230727 892000361 98739174 690376949 176491297 850837953 81907334 522126884 563176190 655482666 423782701 465035058 205586410 854610116 382266742 631387193 68862241 103448900 908792719 966810183 471052058 518528400 135029037 915148276 488664692 586807264 400977987 872662907 513806653 828356504 290417439 607575597 658757330 666935848 615072458 801004797 590318746 761748371 770734675 779123646 400438644 550878009 53826139 532542753 146120396 898295709 325645522 512197954 102704423 323609847 294240032 346665462 404814502 945783431 473836366 593229211 673371338 888837389 190208168 473444303 750292966 802071919 846610964 974991287 615427857 946298304 610867178 940638219 449094694 669777854 997398396 999583440 149172635 794138305 500189942 668790069 794814556 895001126 661500902 679589884 127224884 938131088 45845613 224406081 255944326 633746933 342011355 972218126 147578955 662055575 62158308 981206900 375525144 708848037 875996433 994223719 882027465 942687843 704291052 963480378 458986113 915730419 362384348 485299097 634554331 772307374 92936847 465984752 156253113 545219108 722940907 916211921 238186029 824568330 921523785 998097117 942057355 947309342 488591247 491122321 89443 915973157 391388917 544786273 474210243 527723293 130483837 886730948 715229623 937980585 609706301 968643758 931798879 967264631 830155664 867007155 37716435 862086386 304202007 954976124 95433695 369636859 778854982 901283940 880003557 984608282 125664973 869507875 767813507 829827846 897311050 990383337 274808537 508233318 903852581 941531682 899168890 985964142 218411130 682665980 270197935 859618630 641188251 660140175 459692023 983449006 967623802 987854190 425625863 575572119 242521146 765824565 939811268 983778664 769666655 948730680 592014600 916620680 377432072 669302281 490226032 581784876 901773832 986074967 996487827 998338086 537652959 798338658 575134379 637333498 767548827 879538177 221152806 331775535 320330589 433799375 791588524 883330840 746404460 747298735 414494538 607906911 891636472 943392395 1500503 992131978 910447044 989933472 529906360 751392112 43677100 731226767 708175847 775472219 557614046 853429192 287855366 964484793 544064903 807656750 394563535 866919454 646024011 933241287 12130990 900565559 482038717 849040099 552088335 734431297 493669355 831669610 495791997 755905042 545892751 650937986 261366836 836451309 11805355 825873850 439209558 481859114 670259720 791296670 431434855 910208167 200614441 624930414 544107948 606117535 334645786 662518630 511017515 711787437 828170989 858906210 430076478 593387990 407307002 719579426 457031252 633334396 896459286 994609466 499469034 672372187 580726889 951224328 577338903 733986987 349758574 772346138 296809179 309282475 635576127 742353247 189009334 535144657 203965837 432100874 441772951 724499883 969924306 982963838 746217543 903508768 817747504 893205513 208880705 981564530 154866240 432705434 20973142 559586897 615501044 929855485 79984189 555657522 11962320 333430957 612812439 899869397 283407109 431933500 33247442 957045170 250394795 599198138 313902777 996112275 375911691 840146974 977518320 995510394 223069579 409761179 93349391 318999975 403658122 604759321 711140399 768425833 735100043 849012254 370163928 740936768 490011696 884380805 669447555 934249628 815156204 845216073 981413883 992658381 739818389 865072213 15460265 157792934 514384751 650235702 144379245 283169731 445789179 621674636 930106282 966075930 478757963 865885685 180892462 222305128 653642689 703226044 185802185 601532030 523011874 800227710 593749106 629322473 253694880 883543221 44609841 193420320 648153797 840895367 827201798 869195661 228943028 406022825 507483371 884626744 376228248 855477494 17286196 906125581 720953766 946051500 285480304 411738524 332581460 546704706 547116957 835244499 761619987 935695709 823978842 885040765 494370187 818819932 103667988 698034866 22127665 995087033 47483577 382702802 533228149 993542580 799792422 814329518 989189128 999984440 967268333 985569426 562297493 858853617 266616351 289919485 40474802 447985823 245688749 269564926 585079580 672918551 957776887 979441964 559638371 978040124 361122647 955779084 876179036 899291278 396683584 931071870 387292509 550838284 53877158 265406775 125780096 157677548 765416252 814202276 534205972 633310858 98791986 550259149 342104016 857627966 78575988 823564790 529277455 718678073 67321349 815634320 596718369 696015490 147223755 190870054 110755435 532360752 278709117 599666713 781617096 909434580 612285422 862321952 182407024 918855205 37504733 516397890 50248778 70592729 916852552 983751434 228298405 362242817 96145063 421540405 92836896 131168649 74258537 801443928 983600089 991765014 881376344 989443327 218986371 925507521 332278701 382211012 756297340 919634624 109453869 300312203 477292134 928967351 227899770 841645080 624752194 878386295 526839512 725868860 947405195 960428673 436290801 684653744 471265255 904140690 360469192 591409275 825605943 973883549 49697322 400631330 107594626 986538702 135995846 461543522 427520511 911681366 740652894 840193772 77285985 929704329 132268235 661734729 832939014 929301475 307030102 856728199 852529795 921266542 331553034 859179679 973241345 987855830 394864704 550284469 105155417 290789418 452076332 529883733 372107452 628044922 539843132 951395404 992755151 994527343 593391472 919049070 616246758 782954844 995124927 998301612 348613094 804022280 83149674 952634250 457257898 844154864 741247452 751226583 912475325 970476863 350615875 929828924 420613448 576637110 863746818 940659416 678687215 954497432 219673687 644942065 875475156 903740476 339386259 605738934 705567982 919572729 985447087 985797526 309336745 351900697 67832510 397240212 192123705 874730147 872665119 912994933 47787050 738645681 738448823 817815682 452897130 998514766 220464711 415253253 783164426 944537072 584508600 704341034 806334848 930232466 574171247 597559513 791604187 803624391 574601187 786306166 333873487 810214534 717015398 717983970 446885026 912250788 369594803 547032943 874025696 955003236 613985668 692384378 627544555 966356547 972683600 972995115 379803822 664562873 533543294 662132876 95681461 792780831 434866250 822704929 693814298 748005784 112835216 938635909 684418082 889827113 539846672 889240286 366411940 969450006 25398316 502246211 878288027 923793787 767743670 982755834 774203544 840779530 585799412 969938618 80001249 348363069 991512663 993934333 612150437 658091223 481467890 492953777 286509336 596776051 459063882 469165981 494456568 671310129 765868616 861502358 682502997 849185694 146338346 348478916 157901796 351712404 48030990 385743035 961368683 982688053 550782364 813766152 175254472 531111555 997899601 998266634 921936005 994797595 807927979 970051375 580222558 751675763 635451372 854022754 449653380 815296481 188151131 306836875 2597165 633753190 430401027 567495580 517736291 775261742 113809551 823949020 574970074 777878924 512876615 630815767 991020283 995007073 338062204 634542973 320258297 766470581 732358131 828224401 886922018 974104749 581447514 735893961 737769641 986346303 399524545 685687293 924692199 986530579 42629445 450557393 392973894 443514763 799593545 994434013 888432204 979480602 625973498 804393146 552068302 846192437 312820836 859945842 679916565 951433697 120358524 854763372 418046849 671742945 607554930 662718008 171790740 809623900 447344831 617586111 359815706 548818316 887147524 994960078 137133761 848615237 730330042 978191055 253911088 672231666 364716980 460866844 645575938 834900839 403405605 943089194 503484773 896084326 181425302 245364821 856179647 943288268 49488766 230754332 279187084 390517617 189037474 872400713 86187965 294413821 775385853 783215160 401959674 719610055 638819629 701372822 960304836 978891548 310285447 648339143 119510622 666942801 458562273 712580272 421313858 544314390 951665662 997873493 168286262 932655068 668570642 716919464 567143045 941777528 491662407 874665674 498901965 952330391 46273748 782112552 94811574 987213802 859070792 979711715 352553846 474058215 83806787 326857677 892139025 960141066 219930338 820463891 651476262 993180124 312664334 701068387 689330643 910936669 56316217 475433847 998463215 999039323 940818496 979848173 160060518 178779948 803357125 939276202 66808481 84894419 345319841 778697881 50575453 812430361 714868622 886049076 357501199 466200168 333670428 420044101 167208365 970153935 237577909 473970799 757289562 815596682 423707328 462707814 389289094 883545956 737214876 778212588 321050572 859308190 918528848 973099538 914358449 965247299 258205694 872592524 261136592 638276490 248577066 538820561 401236257 749172010 841133189 912248297 50015186 174759197 772957608 783855572 892835441 936393610 854071363 865882717 602385126 943846498 304292782 588721127 940451991 989181770 447669099 824562717 207730636 215805918 845896003 977551555 638391616 773267793 639195016 880715750 778980101 821287374 522448277 567613658 344879700 866081914 799299837 823004033 105023500 575088238 756825758 936611110 758866373 810807737 769895120 911610953 338907205 389171526 38776266 892970511 606095055 769340068 685584016 847159644 918880763 920667893 351064072 930657510 282419209 626970559 195959635 275186087 112178425 562561936 11557580 530623858 604114743 758372304 502402713 565991268 259786023 278511225 466813862 985473209 235024797 499339884 675606759 708481606 480629396 541943676 323850339 688324844 216809199 563370599 179667318 198604620 183562452 750936730 292996081 965847795 508415293 861576023 957997485 959332291 489579211 710018640 151627240 830310982 74577012 488204003 442292501 952281339 190892183 443882810 315925258 410772440 659772726 697744191 543628209 547307403 472094094 946320009 765813689 844433204 63761391 64230031 991440486 998111918 571680461 806271971 876145226 987040382 128438342 810198838 224711843 538109297 67646522 325649578 596800811 740054314 902070071 985990473 319945084 566155553 604325771 946690246 579549690 822534930 695594893 977725337 774304111 852673799 757560031 811914345 72059285 781556639 565977857 836899125 796494264 980295571 504242989 763762093 682716390 975960473 644615801 648768276 373343827 525633760 328036572 403295609 558535139 662683391 478542299 554982741 468870448 577883835 244860983 440723105 822500744 895620806 833100887 872714630 479191300 676986355 42871656 658243743 800883605 918834244 736823459 805089873 587265042 929505042 376120681 569914886 21721918 601902841 506901764 803331504 426133605 923100237 330107755 578575892 439858728 873069282 376775589 772257436 224749585 861611312 115864850 516352432 215109007 701952959 691060362 727209689 230912856 249657650 262040927 945344434 238916984 745706707 825847806 895131477 752948347 769810839 752588371 927132120 137975028 797007514 728373483 807752342 786425190 905369433 276696389 956961689 315700909 803803615 244436763 680113941 161712591 319473797 699141133 745629225 381213259 906810496 506174054 590690147 355764275 396958822 581902628 808289614 269027059 474304945 858731396 886687410 789049986 807074887 759968088 894243759 169865046 971628679 763564049 898852469 72289728 605604636 616708945 844066338 344765882 689207109 253235419 355277217 25818969 311501367 983389843 997012572 831070401 953370483 572107286 718328671 324034932 980711567 383813633 667005620 964329916 964809723 549241677 589787951 737581125 921213508 758325727 992998730 273345283 624456364 582556919 931197258 110220752 922507444 354023032 665658657 420103121 805935283 39850080 241388221 348143225 529620299 127520274 521994856 769875991 947859901 543698066 576745097 902432081 952546843 459703329 867616408 482515201 634045649 457403253 910920167 309173025 672049187 485879628 641684458 225394474 330677729 608742677 781285842 149465624 370782810 687951411 977938460 299079998 772125634 88023711 391554218 424302632 865653343 564105480 870057360 563575337 865977568 223658798 990831804 511551512 973325014 600059580 780707534 385973940 416819559 545958515 857116485 260350543 465879834 660503702 927448873 972148999 984424900 439932532 611901530 45289695 685823479 199196317 633867431 327886221 582941157 70287291 333333863 321089724 898757266 284955417 666959808 587620707 972901920 75870093 729295280 848526920 905102130 774094025 784543646 766812610 781905084 645151276 706024873 790190642 947421820 538620861 561892650 209834714 995304177 611050226 906101017 397282240 517758377 348782391 785176323 389458191 907944065 510170281 867245871 181521610 944881012 597555857 872759657 481320817 667262404 172247629 773440451 554509939 618864205 779115133 873022495 794933780 891902226 350878668 787477222 451001620 824451468 801382725 866715462 649432064 801504378 840666876 988295951 45217442 368650718 990187733 992564013 466460194 936750788 859611460 907599732 598801040 627525608 97652377 162167622 479440940 769010835 221698753 970309606 958257661 996596921 66926841 919100130 763593187 819265118 983408779 995698450 358704687 661567373 308773451 994221801 96720539 741323386 418294298 612015288 281090402 521620931 418025046 829834765 49609258 99649165 101401757 495818640 857861529 998887760 76283770 967126790 539692022 787068382 127914690 528326292 172359478 946669610 837184350 877552732 830060263 944719748 834335363 920071344 226959533 480895802 684367597 853161737 875527434 923370047 338415497 378167277 212841214 492145628 398111254 677712198 188362324 341951384 535691520 869272163 872918621 912197491 785425638 963735207 313436892 762483837 440292260 719360670 914548165 977126419 129624343 489209918 287801454 841706276 132835907 973061123 825005557 909002941 56875052 754783891 840431582 946604860 331077317 675788315 814739637 987681289 385223339 793454352 16026957 457171208 340281064 898404092 447805625 910254019 71149081 821227129 975590612 996559966 167198491 819858302 176579905 431567413 640016331 795834608 49144532 647238773 655930137 963755818 908030679 995093400 62534105 937566676 924388836 992019640 900781578 949351997 45422204 130319875 727624673 739556058 432217712 896889415 213507372 805408110 729674651 939534899 307067328 556824121 619879822 621838333 102403516 232545636 907894986 974947587 174745923 231102174 579790294 750741983 923121064 981059899 186615142 856200504 268972421 450057865 955949938 977258386 585404279 821632445 836868090 903733870 797375010 950047403 167855300 645691354 582338693 775880213 600344363 870646456 927728853 948258627 712727976 837378700 114512614 912799187 98167282 605544437 434741846 794154421 384752619 696126284 808086529 830827167 196346113 270929186 561179641 781306164 958215448 963985069 577695410 747766866 924723403 930169564 643333381 812271707 714262612 873141409 262372037 921473878 802490636 923017411 618860595 640724605 17523956 54568091 367284429 421055624 464695760 668942052 206876211 222918447 288312911 309768676 49148387 588063946 967713121 983748654 843137362 860149546 569812197 945211710 310179714 372110050 450285760 494362254 472382806 474098691 609391378 905016949 399205193 479961619 772412812 960306521 191563341 489646607 484873851 519957325 959938584 969542634 383268297 600939492 430665805 614646743 23889648 48374008 144320609 194775678 603940890 636376753 251993576 307674453 522372768 701217305 939833144 984906059 575299962 794354728 836084865 972425963 656268423 762860580 116608689 161309177 345856278 671895557 250945655 720395160 987604433 999338288 698663194 802408176 271359908 283664891 500777904 898135337 807713647 919902266 696472824 960994844 936408713 974887744 242150077 511832786 486975870 754890055 198431798 932666001 238463781 671699930 949629754 975131474 485266440 794534400 276563062 575948797 251961614 380224753 578262372 905402515 324002309 460685567 691129101 947122928 256269560 854207178 650955261 792985500 102279501 595471695 434508196 811154435 520903450 746830139 835461972 839634328 529670294 691397308 108981379 946265999 801425514 806813504 418260241 611181062 172127971 531811651 507368645 676545874 653631522 920274984 70717407 510880760 721732360 986508757 701227514 885835669 962875686 990591340 906052558 935585092 533625605 663285672 166817195 779903155 812873420 814542207 445706569 897114191 819611376 937359694 329487643 772118610 60160395 228797720 271665594 326198587 527318748 615357250 880572353 981905636 14491200 759443628 560905951 725361278 53203926 157455860 424138509 577119339 810666145 810904399 444212001 812954050 6786758 519782132 56229939 902907931 998934841 999086019 825680421 960338285 857026761 858072032 908714678 982601987 602810070 695474391 999991619 999998470 871914439 900765942 938269209 988982237 58078720 772551312 743302485 972989137 359300062 604143450 138143676 744099287 72317547 790390086 567959182 660299597 179500141 783905950 946868348 954004445 356201399 365877172 773997238 812528367 744515463 890367302 581592046 665026958 60641789 635321188 785808922 792626635 171389044 508203135 482436806 619909384 203191287 631904037 839641724 933387497 155585359 561637292 908373597 950652101 836883510 897716070 75750749 596783324 277361866 772062407 407493719 897536211 236807077 944969303 756948959 835296327 270282616 298009113 610072003 766143193 577622816 975073851 576726990 580085898 628617706 749817084 354564281 513207274 221029739 797383855 854445944 867379557 798644998 836888373 184890943 357641486 543138916 678052754 553099169 763468688 872567247 894934317 87382437 212417654 386414777 635449221 591826398 973011341 928502533 948893583 838214566 983285476 154065269 616771748 629047467 792215582 535642090 556172598 341151252 893942568 585705875 740930457 394203489 613660037 114488731 793605133 95875361 287170231 985220685 986530903 452268923 738401557 209843876 708566770 337090459 420278187 124408940 256798114 558241180 642590850 937046802 938068567 452933127 863126871 366073066 920138487 361174205 633180983 820247169 842338930 589030047 690684465 967547690 971072516 423498459 485938250 436880346 490986458 432487587 461986269 591692145 840959236 687491674 801720934 147056841 198551961 761464640 966008101 975691158 994434859 905363562 963087929 48591467 278281805 681233990 774008927 107177739 243761524 712576699 714589177 451374499 842450632 398075444 697717681 105324822 995302251 802606741 920106048 718552923 982310879 904884596 974634655 930298633 989627122 329370387 709869469 554227646 984930201 273521576 482766612 41253268 61901926 614788323 664689840 497302480 566548006 61427059 454217913 461435297 606760063 535729631 658679835 748925289 839914461 536401141 670582255 61917660 394092052 794978609 820833132 507846561 593562376 250645965 654538795 954478135 968913910 417727739 945951166 972299450 973217454 753716480 878582603 64581429 551682576 475848931 965101397 250283805 402747934 209734936 321745965 617272487 747840705 913307064 924820582 50474077 226208127 942086942 965903952 916537101 985625660 10514222 670325052 975135853 990268676 740950224 789725544 997564045 997826625 237928274 273364379 353601231 845681933 861621879 949030948 986164551 992567614 716765609 928604752 935125057 971172632 826206303 983561557 100441682 862697073 31950013 396997319 677350390 947699007 537913842 817647278 957482712 976506528 398520267 942193713 963861952 999691492 96787330 523412003 630756024 923288820 21206396 578149396 226261605 370566099 445597033 506226786 568625708 614217114 147305581 822889371 81445193 500090287 672929494 831302635 648376334 761910628 110819263 658521449 763790951 790592720 981891152 985150328 227974179 804662697 130892373 814115620 539387959 879630876 249104704 710260551 454886012 819621559 354689751 470433169 934479955 967882201 697348918 811126745 385024986 743068152 825508292 851268151 542317367 690284715 280852209 748083292 710759309 839925186 775166735 814837965 364511305 512320507 5851645 511288918 297216727 721958698 819930290 838535798 710393742 927250638 179458348 945126298 316386140 718460693 736722824 855776786 697949597 886818191 330122219 389748215 444798532 788397301 487244292 923744074 116677220 912610805 565115982 769090192 895698527 979527567 148950347 677947562 214988355 281538915 385169912 697763474 101027770 901158945 73696378 882060042 585374126 800544829 738178908 889303927 244948340 518601818 50607400 802664507 962700420 986757484 355800476 472196591 567236806 867522681 566021870 811694518 835567404 926732674 131038494 167937080 722371871 850950748 921417473 958123851 827910123 929569875 283254290 356121883 760446129 818003089 605402574 717469576 34832498 490104093 25482983 726938763 325378430 665077192 278231758 882499426 258197181 820470939 821710462 976792318 231401580 298861141 153210825 209301947 885048609 977540760 904087446 989439973 472751734 690044191 531347884 581623524 431334768 578500012 430092637 812257706 434949971 674842778 815273310 875542102 11570364 59840393 257504696 761800246 712557631 984190213 222371192 796097252 394834159 801283352 471442566 955998385 683678534 806672756 258322930 937593727 913939555 978094648 966854722 989568126 897253360 997016166 407540794 635610446 913535962 956811616 19165795 773933989 776451321 876205037 670341211 814458737 717503042 929168493 564061477 762075955 518327896 675169842 74791961 84490977 394583593 397833102 14129046 524786634 937831628 948828555 582636127 711604621 889123704 944955952 121331439 361601115 900455169 936908116 253615603 532249255 975008408 988404189 256142737 617149177 581953202 620255410 672077423 916683665 170058778 888905947 875701765 947027695 516005606 786821256 492399514 872202463 779723263 889814841 820526071 915954566 897707939 948723677 145518529 590762066 410440381 682273205 999179810 999188533 569054612 616131603 947663377 956040451 109044216 567329054 702508014 991344477 693568041 991413923 904132938 969300243 276963035 357825574 736959614 858928165 785249093 822812406 972568165 998720854 400867320 911481925 498808243 571308048 463747282 709121473 411804960 642459135 501436734 577210970 300453525 389348926 427307194 914793586 895394114 998683977 54856889 904379236 943102009 987475487 659789976 936521094 900410339 925686751 546758610 756186553 868886467 869048108 519915051 522906765 455961931 990774830 83396275 426492634 995165017 998301890 551520905 896550956 930553173 932060135 485961822 869434587 329526919 953072198 195652821 287398337 728656576 900234927 923211330 999207640 686290046 745768870 619504373 815852644 346357047 720235875 376733748 865011484 592186366 707088414 62883847 272487676 427222784 959370488 689053565 960879016 984092284 986510221 944468061 952928027 432352262 950489882 356503746 479651502 791647812 809503249 741675465 871843980 228885467 430441069 326814305 632994215 596696553 648684425 241777048 269131411 153496837 241049065 107860827 437703782 142052737 162235303 849071879 974796892 379334135 424997173 971321617 979986399 290716545 827745055 317421299 457735410 552774345 607638339 370072763 384871368 75402063 717010421 846922639 873201501 912051837 996585194 419989158 596352151 885540228 946055938 915580632 957108975 153633052 776522297 872223719 921102045 324144226 908597051 706496805 952496186 374202047 745392199 143770787 745649455 640047890 937262577 909438766 969542334 844595906 850209862 527430072 652499931 47651843 362618239 984244878 999334539 890092443 925757938 734166712 859027851 671713363 752294810 436882399 880304453 181493576 278003175 861770098 899916918 596781769 647782963 653734002 966037839 284238545 302368674 776161277 853021092 476203004 627534410 715239808 964304000 988737393 999399636 883418593 960343875 985335037 994078572 445071943 496299664 292198141 843914107 384988784 437505778 642150000 994312389 681031053 780876343 633660763 888016300 27551750 547938537 673079968 951866165 426429829 661710462 598017228 913602997 469863976 738217945 659026720 697028948 208597142 810614913 190681312 837333901 480532608 884915516 384552242 772872378 443168909 704105088 485263620 518565863 911215314 922158153 795114877 861259085 150709943 492194971 344636704 658277126 265631966 929833000 499228442 842269724 131189831 915771103 539169392 821940041 523584808 875311960 92625750 252732765 491981586 747892015 632607312 717293366 557521812 676634646 470551031 765518569 426229226 991996982 780447221 846382880 318871153 531917528 771599317 856594524 589645524 777410214 125061785 521224364 743940467 872546730 870403673 987776418 342798769 812877341 128620833 410751150 818956320 997781741 761689383 839963999 613804722 763737612 994180560 999868760 786144621 820900765 95364851 178870510 948090739 968847066 543725890 746671723 371376755 465044595 758444201 791822660 137748164 665875303 109294338 243252568 411315967 838779442 268229026 599022084 12181741 935578682 789115049 938911240 640382902 905025526 885364059 937879567 251060929 728249972 149423250 413566370 934993483 979344451 824854627 973240739 91911574 963632768 380852068 920637335 646550990 692266778 30970279 613076106 406957658 874790485 719700843 807411761 828645899 829521157 495863810 797291518 16227932 353790077 623181230 970120501 388412838 469098296 589314261 922016618 978595979 979662138 910423970 932567714 235857534 393331708 67469701 524343469 222617309 259050035 919337033 985183540 844416152 956857896 749667525 861223926 415103280 985376509 131913977 331463941 565893276 925814721 165617429 487190379 46602574 771263894 34679377 216637640 170435669 416811532 260979926 992519183 27159212 728893695 218589561 505979037 24669091 324203334 598146348 952974838 517863096 915701714 905783304 908612045 700736958 944512462 733956372 997965896 287082996 979843371 608806730 737367273 452579988 602313015 489472260 590007375 131952651 177277184 443589627 799344278 396494477 688225763 869897934 971412628 169172334 231426199 175874104 544104909 710736125 974324362 863587353 916330788 914592745 931422201 150112247 803235396 611945656 639226181 414870423 921289486 927522642 948638591 285565301 478682872 811506941 929400151 968430306 996197258 101854330 620173359 823190254 858329219 851682665 937559952 323649324 535882191 356577630 893846153 704006679 779015630 278865589 656382231 574143508 912197597 557716442 707062474 384822218 752634208 480180184 506183388 21456763 253960783 794027190 845109113 774153536 937023427 107380770 667702584 807730673 933722593 691032648 858456437 643582501 918250411 544890070 929517878 468495770 639330384 526517849 985826737 119988462 523155341 809270838 891699692 101262374 119447235 510491907 702051868 621975243 971676668 822356481 977079828 349573956 632271980 159810962 854341767 110448635 419404069 615991513 709834089 50682419 902351591 24202808 877676095 151906203 453126318 357736417 913526036 726852017 913877995 752217303 989879091 812458265 985630817 543512396 662714241 290491044 800626501 372844264 445288555 646996522 974125806 238425506 607392195 286859316 971308067 29479476 66843080 333758379 783446013 297755621 539937266 279856091 673492583 542356540 931025055 40293529 777730415 237546092 366831829 81628579 802907375 508485089 573117406 192176894 590436563 36745764 587871792 625810250 930604323 202386094 801376055 283587897 527248011 678814709 819695129 34047025 650406958 985670676 996537934 758791699 808543009 666699745 810437602 809820533 852564197 711297147 877080475 65023475 471420282 15983482 66378761 173907586 598884144 705014446 940401690 960790312 998373502 463344867 990412835 410197467 864027603 317989316 591925991 738276786 921561997 20005795 933176795 153658995 549695607 16980089 935116079 146565452 753037913 983720589 993054400 393613489 782623634 770103595 858644824 196050071 763363835 469200042 986129069 324569386 935549141 411228270 557687324 205713662 689066414 54568733 597378610 503438558 751250981 613141757 640392952 42564429 186111859 350454332 925284470 931120289 980193799 7282692 78577733 76611591 477608858 271472674 829408101 96064040 513268385 782547965 897724417 268685000 397232335 302151859 309473675 246924506 252833034 574418862 682027328 587505468 763871649 399161918 820395120 301184399 984390348 415710206 975166492 423031500 849583474 823972218 875247589 208897195 504959725 411713370 730765714 166855694 623509267 550046560 891018948 683550088 963709408 377585663 601754148 501100673 916558533 500515800 979381025 104593991 884075111 632045922 910770345 599204460 829459738 538840544 900397993 947765778 972094223 367964670 925200021 647013880 977253683 269503273 421546635 824721997 949392943 773151031 971807310 966310512 993215367 812630976 898658997 899959743 953324785 77531583 817188291 994562514 998354107 968371332 990028832 711727314 729392978 764265656 880823267 173333308 350761276 708903140 710643578 230363887 273802973 194763865 879331674 477961395 766325588 948118408 965355389 889714173 948140936 505482268 857734645 398955942 918734401 214766657 554870458 386220318 783035789 999103686 999291729 57467799 888964891 822887298 979445302 750829125 793045002 386363584 839358584 471996946 935326870 855791588 867748896 134079507 417624406 552614238 680736951 456391747 519068154 813556393 915145411 888101236 925338812 229218409 433597176 375977813 755386269 983080769 984013838 914314474 919645059 638715723 974656055 50136002 239858585 892504068 928003500 559622205 866396235 564224868 901287151 78173760 372489324 928080509 945230554 862230944 930110797 687386436 710299195 826605567 975946544 855000893 864537237 508601398 567646636 247691547 913990452 299862371 964528464 62750361 920264363 193270948 537801968 290010515 764031894 552176896 902997803 634652964 815341830 798392154 924923188 986854850 999663207 336591010 400375959 669093039 906029463 508195461 703708931 663433799 705831874 916825851 977089376 936980950 947992419 590317555 799521381 84163109 359733452 133061366 247381708 762270159 764829336 807697621 840821082 832187956 910324383 557763342 613201405 697165177 931764967 874955144 875892559 951982337 969080000 976029553 978478467 613665989 642738123 17785859 462346958 116487527 266608152 363804817 909496935 86374929 487152533 108004390 583369553 793510387 955394464 359369558 648870839 909420714 962908638 874693166 894964355 338738057 514547025 814192566 910633962 500938845 827674479 227905055 452405017 304476772 875954609 624031656 919149867 764079006 891703349 190358171 920693571 895976831 899016877 19005390 721119242 267311909 743873063 597024558 906280526 429410313 972946407 991567728 995681495 495637143 611067716 960150679 967207302 164726965 290711976 756142965 921204453 183565482 928052999 904681791 957650638 385968687 748809189 371255643 572801862 967899936 990309022 660756729 986525706 58379838 429222850 659343902 928052433 967468333 983467665 966611826 987131119 387840891 626028365 437516428 707641328 151921839 698357178 121449539 403857436 586136740 835612182 167772788 648925106 829511360 916343791 835559007 894616976 971670646 983050171 206394791 291804825 272513429 776147257 263559657 819270417 61411790 255434791 493505446 516543976 240423663 685576568 172783551 618643721 426166496 573235419 195032038 770846704 679090062 913051273 112655503 191909834 568061115 930240260 714146912 910443702 226031608 769568815 748108780 877967799 968820392 986987720 736778561 828008228 516405424 999939678 313397592 796217146 586378961 638699256 384044220 384700899 623687515 949853375 441657085 519213388 182615774 754084131 708628356 975984840 523186173 630515310 275831785 743068385 708216638 736764305 809882375 926221559 184924726 262919744 949664453 974683385 267472383 799213186 982242090 989436471 316586649 389967796 133491803 867951038 405676636 723758316 169853434 562295519 341214192 851495136 336356198 569072982 662187185 983395813 820548210 945836006 657996087 804534331 946536009 964218376 460681576 981676471 710477043 728859195 258059085 443298490 571675966 840850880 454997935 651481688 100232174 422860148 522465027 961248434 288955026 637330431 324982122 738262461 98246243 227495611 841466196 855107815 480968241 486876179 270337747 272137303 952887151 982480383 675180225 685954915 790445314 833090926 169352138 302003549 890009588 950469233 415258250 846585869 39794174 211579456 44569156 908341683 307438140 335663253 595359314 756255795 499385855 806049081 894638288 993900914 955156802 994840070 65600657 289843134 612260234 673207199 482432147 548482794 621650587 675320298 142859534 683155925 883556856 931077740 13216329 907925948 515226682 769647432 196014741 201208230 133199874 477232752 190235644 575654140 505573585 513929024 126983126 710224478 300892804 586758272 104007699 612097396 621774156 843857379 247200820 568989018 663116245 731390104 208910206 793343238 385363750 401948195 199772153 481591970 513672177 520893280 638809707 709711389 243497722 466962083 189134919 277961590 920388583 984031384 385378596 593454695 575292617 734078161 460187177 906172393 805844606 844587563 819014469 901382044 102859469 631256354 802677785 840502185 766783585 810503646 255027015 981143869 169652429 707572388 986174958 987712988 120109638 267451740 467960536 757606120 136779218 679735445 828315048 855514577 151589913 777655328 868286096 903098302 67167666 994139526 482694953 601498916 999667471 999845674 579124016 951291812 943993575 989799833 26227057 679130880 985744325 994277590 296864059 842403647 821143140 956339692 322392220 449382244 261183248 437051050 70288787 440271737 682466973 707594322 717933137 763171948 929575672 975921130 855403773 930668601 804827338 826555709 645740227 905576648 934593069 970366745 994197639 996474822 71768559 425691356 101097581 188496197 858235474 979868898 904539324 989609842 584723333 959187676 518891581 807555346 535235908 678854934 966819571 980679139 564162697 961594440 999441488 999512295 489813543 813971747 928508060 980310663 690460143 726826037 498060492 782755510 870434634 999843911 245564245 907353209 251737518 567791993 879093863 937346875 154305213 550354952 749331856 801929648 630987184 786692598 691051074 707825879 645915736 801505711 159492024 227003611 671985008 955690018 75450680 264742935 882691332 894363836 701958405 732668090 651039857 824385997 989222259 990092660 28145603 427609244 133275424 519115329 315335721 565979110 722587088 913798321 471341515 852828301 420565460 426397906 363194867 709861150 753048315 872266365 171782209 758268579 483230691 581109768 131302623 344951909 675067352 891061318 220793288 806897546 529453598 814328281 139995842 450578096 988090246 999705676 759348198 760595062 631160328 846045485 735164225 922000965 929442820 945748506 203052018 343463136 461934169 720420498 411734164 708083205 298845382 505750635 718617377 961364297 328018967 426660656 795070610 932516885 892626441 911178801 621725872 638633501 330935252 531968015 12881164 525254526 903825734 916006167 562195697 636230686 555000410 774058624 290330831 528265260 194388734 512529308 951578637 960842457 424837768 670363067 931854690 976594064 805171377 953245114 45967441 337997452 564237928 605865247 254080467 609850393 785795094 874495802 382510383 585197955 939162439 999396008 564622852 750464889 114311845 406924369 135083964 401541139 823336422 965888293 835510653 928454576 529277707 864444333 749153324 893928096 978362353 981862236 701797184 778465997 80114692 239080636 446013490 897695449 453923881 456964345 470267776 796775201 404462687 463939607 961992771 964417474 306970443 791912700 202071191 761248378 669418495 874916907 461066669 916559849 117440438 715142030 526296397 545133088 107183132 924479010 598264821 796598494 596798249 869439959 166534153 617939573 975962635 990771847 855596044 955289707 836453670 952541116 824567322 842551301 134696426 378163323 268912314 824678341 203082757 447617754 290821394 370009708 63240772 415415322 134403822 900184641 374053217 748095458 96519752 663683284 765750330 996369696 352889807 797099964 361720358 981223668 393028089 619172912 411636579 957549130 870243818 877182281 634769378 731518942 80178062 149996707 696384275 919183928 455968798 566397106 507783668 961033197 60227544 687081300 9966461 979634485 859359449 974343006 835942725 957494621 594342402 653408329 523202220 917774068 761368967 786666135 394884221 397580990 515015924 848528008 985262465 990296562 96962080 836768499 569561380 952273224 69184256 535612457 602531567 757607875 690387553 791749942 259688198 849262185 253024550 919622650 318861459 669983430 910603786 954543610 834146806 898361863 318724770 526913457 259945387 772656194 904446090 913390284 931180407 992083160 459185031 789346402 319381103 865123210 864066966 915631165 52837496 218711590 581770765 788026427 718473617 781558003 268991076 736112802 360304884 726657492 908298849 982033094 128020287 274127072 803162741 815874888 547244322 892007345 888970433 979208667 705189208 959204101 813603149 902745138 656454236 800122433 445237962 712969322 246442480 663132743 483502939 927177738 791790291 812978763 130743943 336897676 355157871 720733160 510308414 946638103 10100719 41861785 928662416 967723668 592726841 728143940 502485364 526071072 294831785 792151833 911998224 946075039 980108322 994497772 902860589 917491848 796092401 933786744 72003126 887816097 484607380 735553142 472869281 922959041 938004783 977252583 874663203 883616142 228640702 622872040 455773212 507066324 357126298 482378278 400783741 742874219 800237580 943326114 783633103 857750254 135528442 154694712 863917623 913646975 684275595 902235716 541242650 837651949 111571145 164925520 212508758 447637580 217233825 235695094 24513751 664638432 99768777 303101735 347188201 664123266 60825930 121822864 538139092 550343768 269921691 400088251 606177060 739301954 374929856 791453309 322508170 820294278 244411869 810031348 177723688 336409679 529352807 666007105 482963942 830311704 400770400 458161667 127773817 185152931 365734477 993554689 502615915 888024833 253278686 778276992 261969898 783522185 580065130 858584720 616895870 980087859 545138442 811670587 471095749 482130972 639654291 936055858 638777138 773345259 557402695 636085498 149408412 484821697 317417112 418471546 186221724 655931179 75108933 835390215 931003060 937431586 246723057 644844233 292200372 783359058 418397672 980154200 112682761 416294986 445688863 711996767 349206001 407230491 596301083 689582562 37294944 471297378 818326044 855024476 946190949 991113864 491317703 594497955 689366787 980463440 983575634 989912202 665736323 915042300 902157452 966562416 35943542 849297559 502879700 776021900 23186383 755520108 27003888 317583190 805160868 867829651 434299060 794135796 20528009 215595644 671245502 784305009 800410322 882352573 166071775 949162339 816787296 859494347 770494983 913878587 132245300 418337159 709754241 790335391 281151499 734062823 928852272 929468060 958068210 964605698 769499612 930440918 485703282 924945873 614262409 951170429 648672818 800147916 522359696 803871096 464064025 686146475 709767126 896215639 69569504 678468483 463354892 948943686 765252895 993628647 127707009 588788783 404802692 737082444 630413351 922685399 453766531 889995759 90959437 411201690 337199692 781466229 835814235 905261969 807027795 867193478 115007493 632190412 114460873 131542468 366951530 701665882 146877910 734323912 425527683 829965776 669758070 796201829 251333389 754413370 395802085 721590807 337212261 358973398 965800432 969644743 726237998 984793646 433572519 512891349 148650944 631430507 863750166 911130675 811623640 879988406 891956046 939571779 671549794 925974120 947514679 984557947 603612651 644559351 904586115 957933255 503783503 612936494 16034024 925232662 54727610 315979613 600170511 984610225 382961333 447782077 465529055 850613644 927919881 999978680 643540620 998347557 806606541 943318938 771224123 819770322 165549008 550226933 689748560 947365921 590948729 809393131 99989697 763988533 481684692 543015847 74331392 577184085 810371972 949593768 324984651 999173498 198661406 801508816 796307439 994859248 146703492 518963257 125688622 835004366 753850377 931185521 471170598 657660284 616966302 796385703 644927738 752880906 242102022 320782157 348260501 589951514 975399085 989885939 789212402 836773983 407856773 691715916 691295463 749643111 619975563 789977184 672112274 751093141 156401370 489258088 558822004 610534191 245528545 711227646 733985126 915767367 11706181 582709058 204397443 832889786 670364598 703944896 775542157 929465371 349080652 815627160 431575570 687543152 598253489 765940664 689296729 995034260 759503530 933960483 912556079 939772947 460573915 553815405 759069172 955985515 739323226 820607038 909937328 912740886 555996460 792503082 774129889 897860846 288762070 469749697 860519462 956930454 978284245 983105546 357914196 620765134 564854849 716518716 57582225 701757715 566171336 777953306 169394256 616610307 997994389 999307399 126821287 581979258 87787831 645838841 637718301 659596677 286894252 545366004 373661519 540913707 260521851 829753073 217929658 346872095 729811015 740924723 617610148 993060114 495443861 871815194 709167806 758999756 159878358 204767663 99233767 982740121 584235042 723542558 373556055 475273025 12570791 486246004 741420676 965831672 101804882 911081772 552460120 648457114 16132442 166399695 687020397 997770344 312504446 962565468 472385605 737915819 103625523 882551604 311882616 658657977 415391304 708970422 748709874 810959510 807172262 921508503 89852093 797061321 626405975 657871767 326217443 429667997 238510561 916473535 257747780 650048642 597991167 810735469 625931366 661900145 846742097 911936249 343564956 451140989 964680575 988488108 386200415 759674077 288623194 555113478 495267459 989356407 384144938 733598748 508417819 570854594 77425995 838769572 554988808 684088564 221571219 797589728 817464541 881501615 219298903 858100744 678646609 690626041 791063221 892774274 880927102 955036786 880869438 916756497 336495760 724098715 476300072 949130592 956736837 972901815 667355156 706024404 57092053 811427777 249654909 729261915 977255238 978416662 150994496 531401685 620724398 877120933 141252941 670079448 661611762 960976668 768240872 783000843 893141397 998803022 582913724 768637711 858406615 936262474 699626621 993253973 173659695 569011578 696486600 992955294 472336004 942506661 725006817 860197297 232840153 693648177 797460992 938463538 148060642 949826609 753333471 908201619 514981795 934072650 86268150 147047245 360791616 767436789 23438402 60194414 825257608 928479543 262729375 725394353 83294829 652378646 973720407 981123164 939791515 951896834 315000993 913836275 973487769 987254692 196812200 497585904 145102391 799040597 198124412 276034434 450160239 981850039 791643130 919552269 807770768 935345813 124380766 654218238 598228131 840397421 385891944 709836533 207673301 993249407 78660949 563123889 708856854 930821228 570058792 794354451 807399705 846479575 455482405 580190753 627230420 968435725 517981637 695210364 704651477 905417408 599407467 897502007 793287186 956834193 665824551 796705234 239242575 981740898 946999776 980256126 717485769 859732340 848375802 914002574 156246209 255798305 36094854 891198877 213572470 855736660 637092393 961943163 421242406 782656266 93425432 584654974 717378410 808410905 3039504 401587793 182390379 339455069 960978563 977981129 474918960 633801455 845751298 913649172 974697696 985922750 855817 337510120 90811159 673250919 936908463 989429201 69982565 555426022 675352357 785223506 256346493 712098368 192902503 905867343 515010640 565437560 592260677 641186085 831714698 911404981 695775669 830463245 110350330 531410284 286674675 992193233 256768745 320834067 695992631 848911937 369557990 605118112 121535817 411050395 347554691 543321669 331456174 535658567 647224203 903209262 508442722 929929691 628577672 636788139 149787444 650294162 191716502 537285769 406197 377868917 288243829 745091456 145692157 652218606 922844961 958826365 832527493 913888188 315378998 703011109 452685333 550942499 387654383 905972524 813055641 975286355 130030944 391360873 860616766 963719545 326641244 991147005 407217270 714186283 739409351 972560523 849099526 923304649 378927061 871446706 260760361 709694252 370606477 710101313 541104456 589203548 509248809 745753425 217405932 718330933 723543537 824876474 213987855 848219930 396899167 528334604 698001824 942205789 541566661 968996962 530758720 572094511 879665410 957933586 85664155 460462892 144297601 897355135 917730496 954484014 276544869 714772914 201432030 326898585 486429482 830507750 192628733 239273568 435867141 986790974 504639197 583051547 896196459 935524250 956102303 964419458 270444647 370086732 466986510 773937500 296480786 610662125 125906813 674986912 238578764 594946988 473380578 885403948 634680750 695162701 847975365 879302875 969385089 987229136 52554799 715138235 153716384 528075012 889585311 920955135 178403674 667408859 389926666 717352450 208666168 269165553 42469876 67249264 751548806 869483545 425678118 793844584 600790389 647815438 453387809 470459296 176144455 644716224 172561381 772687356 339822191 725320385 359788982 939680151 668312627 988013332 560744567 853182952 984142044 992979453 372717349 755530493 988025839 990276257 634531841 789369466 9788940 840168370 57311322 187088717 863938128 927366075 124339702 137884605 66959359 729143652 615416814 826671696 875989097 963624905 220114574 833501724 944204849 977267251 336699942 955795276 745307772 972342930 806558554 823857916 365675338 469311799 793972244 891641133 729735642 977098576 362864019 761625550 567334102 862708799 502166941 730851374 194770431 298219001 815383019 948450664 942717587 966172493 580274803 775311302 107093964 455597649 5647178 154531372 224112658 300190776 336084479 947522037 456842319 603138257 409061378 578684106 167281839 520880810 685408505 989211362 786519916 815604706 571768523 957486232 28144768 188126443 39942855 70571647 171254359 523468703 515757740 670096777 361597302 527316124 899296863 969054987 493770121 564313857 907040658 930292715 541464465 635850096 421714564 876769267 380370661 659154325 543123111 864793380 303338159 487588687 184694616 975257310 759028466 934672330 136974724 968572233 279101996 587144071 432148680 707438630 960026698 971086365 864587304 994508749 429190388 449616306 834855113 873619467 157758244 190165677 139639171 391298749 353855342 961457271 888816034 973463800 92831070 480102910 38351895 945920140 451531817 490282643 46609944 317128276 357357749 676804444 984033755 986604989 672950417 918386396 70754608 655337953 387415801 459771264 379608549 597699085 596115612 857851329 815587131 884898755 683157613 781446842 210287698 366552385 660244575 722910269 224494178 844272045 154994286 477438222 857603584 866456243 761881920 882368072 839690541 900175768 744784612 938022686 879297556 921273077 203843127 974661565 68639030 146076530 436005712 950020939 202584262 871847427 309495053 816180292 431443067 533190605 167507073 816782743 735868257 934213526 527124638 605999948 942910945 952790636 186150873 255460566 357722649 724665987 696962422 991127817 317941246 748300524 172884320 487928498 844449419 885036372 199802831 415155217 965797568 979070020 432316444 450683860 52937448 76485831 451798373 523359256 577577107 917912011 444429596 668399953 988352946 992907896 744288823 792477268 995993066 998209918 352925517 469747420 756152379 844252527 678751424 794078121 349210196 802400427 665458117 907642002 529360870 913586824 783315038 814716032 61390019 767872578 373464463 494097870 486253456 887142567 237593912 970182322 194611056 809788332 398332009 982462647 998309610 998872087 354033018 581570513 957249962 987297109 86506534 506539559 589428561 620553806 627834631 918518011 812797883 874773340 516416536 612684017 564253954 946518866 139891540 260079417 46486585 133745344 80334078 533167782 673994929 860878773 964955845 999446467 955624499 983532295 131233017 294516749 278003712 650436757 715686357 760721257 634101785 908255597 997666762 999894770 68712695 688976593 10915505 830858168 920079601 950983939 532238054 682931234 840724457 865735144 871484994 987445949 183023743 764416635 646283794 689654349 978177283 979825751 141371584 953522477 78175654 394932942 393328586 786040993 91397274 567107211 722814341 918633414 711008209 942517766 808104049 976445805 585072760 993766192 143809114 275095710 712758472 992907402 124723651 874443841 254029178 981798849 721742624 885297659 632897841 766040163 67630482 762198662 922605335 925016062 893315640 907358138 64007831 973249323 60998316 258704227 266206943 766305725 96464130 485598883 234510699 371421159 802574915 974898303 122142570 412157157 919836054 928192052 783003122 798325612 156180479 166253511 468811878 487596939 174643890 926502376 704357126 868054363 195439431 799804326 379952371 423671044 110626605 233315572 222598341 549020695 688810479 820462353 316706900 703437936 130212144 466762088 877660309 893055790 168318720 530260849 707983072 835014683 5983603 479469431 46113083 174285368 466417904 897631488 375159580 809570520 116938904 257527726 848143402 877466211 677768497 840655657 530391947 965964429 812226276 900556588 441324592 460314027 724974119 795617629 987567768 999532297 408483092 795775158 295864215 560471671 575490076 982923053 960655839 996267174 958482769 975689023 90244751 320377585 589615530 773680222 210669515 805933959 875617885 984139553 899911442 949495558 234470406 976880403 834789761 903568473 493925632 685564696 700903075 869315548 102520339 598303338 951749523 979972968 720736084 826544282 490225874 809076538 369323049 528067263 48560 915524171 126945356 825343872 657232641 824403481 909294807 994837170 171258967 209160864 241195354 665090479 45247705 147848111 676646380 959152676 464933658 511205753 715393137 854684920 146687446 625020923 974955286 975993197 243848477 793176948 385654837 886873194 448858441 938425750 4246357 277582878 626839764 696512778 811846347 855981784 225159751 942093180 623837900 794472142 55839705 838202219 501563821 808441410 551476151 833339824 401193716 803390247 952145944 976470934 586625761 869912056 838700472 910233400 603698895 861334316 530752223 706462505 199277728 746577469 9658502 165992249 589562545 878231677 29086773 749721790 808572845 940413124 760420209 908257658 245772350 648543342 306278157 593743475 689693517 918418856 271618670 731569411 587688734 906840724 941734221 963513898 80638263 519642626 465903952 704114122 765162968 779187078 952509686 960001400 929470520 936301222 950918957 974154401 696878346 969781357 546391556 914697376 2040718 898907509 433898280 440907335 328948896 792464579 693568480 734116755 341022094 896450436 711025971 770260388 806104905 816428822 940840680 972414454 446337343 723685840 490174910 581872351 334192748 644400533 61300632 429470704 752234814 843868443 408961608 742049970 482374315 892320796 991312905 993489653 567627608 617881385 603645965 935032027 118337065 211304752 417678406 527648871 402161190 950166807 90055909 129023401 943688986 947733452 820758330 888582838 600021863 731773131 535911925 772196613 777203223 862208030 341979980 584661662 767348411 814612592 37635103 452902287 191394364 616424047 439602004 519804601 978668635 994196876 35585143 407536078 608767084 844756538 364352002 713654119 474645705 487803198 695956271 800518935 527129248 613316864 553351234 587433585 708754139 789140457 363886626 519587852 952769514 991751003 102471764 720804253 295410971 480469122 727184068 902219628 82698534 262668966 834707769 892487536 710877395 747707137 311333686 660153160 916463401 994402816 180640689 362107902 421164938 903614575 614766891 954517064 4169426 641237026 114994633 479102746 70663547 81495346 756417532 975541762 889734576 923529681 379232036 615007056 792167884 922571523 254328344 388727107 180404435 591354686 672841695 714210877 942143681 954940619 681324481 920440057 265250863 609022984 398764874 641233545 979709427 996895748 392369210 677580555 869232774 898810530 941627514 991817916 818976255 994623677 649251599 940304779 999866934 999960376 144181628 358290597 67144810 864985063 59581244 611084095 797066388 957400839 247388122 374475761 926877088 989728681 542998652 942576159 467842522 616373884 808168391 939378383 354754011 401947685 578329745 806705941 466775053 681727635 446946725 746285773 496920471 747894026 984393663 994213288 791710679 806955918 132342880 632069935 59679670 541621836 733080681 875890934 471360010 968896236 470078200 888550463 689779054 750992249 569894844 989525455 276786781 667667519 951020911 998270422 901025150 954483049 232030254 948745135 344588210 492295083 806069467 874117498 306833507 582947519 9827412 329637797 760734153 981619114 395070638 651469395 42987316 754164495 576148426 878662378 457971564 746432275 892765359 930076935 932009836 966244128 295055564 708712181 481646581 583067621 116783813 443866305 263030342 314537076 611581721 737216710 237182994 493122259 758510804 848801634 272469775 959794482 885296917 942717982 644550113 928655786 783822660 957710161 514017725 803848483 157271151 161547474 577364212 862076008 625682600 736281466 392989041 882166495 360769838 405593094 568552542 723139043 41267438 540331897 979766063 980080876 846396568 877865193 597203413 955818862 841565781 895971578 512907975 686140823 637660204 722878642 918721958 935131993 101728469 405545528 38495990 170007149 980498640 992025814 830058535 927089002 691970601 699723540 706541108 774504858 33043447 225376591 619474295 736531610 217734253 719183629 798314119 998415572 191469333 901333070 227835199 790431692 595241677 734060040 692039958 957799216 773465889 871879391 689657547 893809627 615357169 953086392 639050762 897006218 776290889 968760376 687555010 944467769 269829702 772512547 943541891 951110418 14511729 539669447 991406678 995342257 413005923 734315674 943215223 944360120 146275389 230156567 504323062 881696484 747472762 866841632 634239254 946245172 48415005 175044695 690263878 879145090 459280026 850313407 761816223 786037030 316454392 722531744 532917129 644578017 774065424 835471728 234202018 306030724 377575928 487964383 118819875 743671516 857592157 898526489 427774050 638345983 960799004 978663268 49053429 934687025 233378177 582166970 965313508 974065603 626808872 713250220 994614315 999095154 990463931 990555265 490871109 956545442 164477253 333985653 364222747 838307933 970001071 973594569 895777913 950147216 891087786 913636095 131580061 347708401 363778806 608245609 206599561 826264991 829825316 974498128 669778779 904785658 871164837 933262392 991795939 998761272 537559008 650087826 963678714 982557885 301262203 937674830 239704725 314370429 702341506 776376553 36401933 345001529 630129062 788738642 283003610 381041282 991737192 992232789 106172884 497060988 465615774 544490055 149114045 256169117 319722057 867302200 279142636 781558135 533057872 864699028 928110176 939172148 113910272 686840319 302333697 995630548 634287316 705378139 876459221 922418383 482479102 821888408 818161500 855627664 755682670 917350830 361061271 560662778 611883282 974112713 691968109 907817768 211780713 363208484 587444295 666678972 242843064 381371214 393624794 425903434 154890350 356895978 795148722 924164451 732047652 950960411 625754493 975942135 371667199 959269420 24041911 956447670 511367081 704330452 608046511 681002554 411064305 676043719 820381920 965697357 761483799 787702320 303356066 810211708 768515324 859354716 131547964 135353802 197300190 654124003 873492924 952994348 329788654 572115215 78818998 503870285 978484195 995908600 174830499 381060935 282254260 337501409 7712502 276721232 272098872 771642226 161924753 961409565 706224734 762356288 291040803 766458368 282687512 614304691 407781853 744835424 954659273 998846217 449783350 852396473 10527128 958646974 771343269 848567372 315778941 382994204 269023859 540696513 590281173 902136969 681931179 928785291 75021913 618087455 978348225 978690722 220674508 397936516 913402061 947463666 324693101 587893059 914022970 926578886 676573919 800290404 980846463 983214107 393967659 884981500 184713796 538603471 583011765 868384027 461174612 611765369 783600401 812513677 303755514 635500222 848404876 885818805 243138148 656540575 373811409 775498801 782726391 885926716 315903220 426156029 481020083 915208887 507268658 968347314 627110630 676027156 2583263 788918980 539374088 540801101 318630405 488202679 423785939 639897857 740723072 938868198 612007500 824777607 446877682 862578308 369186572 696629450 990431759 997939012 708806159 840926377 985942656 999662679 772340682 852098486 708470959 801647180 636336393 668536353 219957353 223574714 252217935 743946737 118318691 459053843 17936216 412962517 40308176 402785334 100070698 497802422 5712281 722547967 98957907 929525710 968365994 986300509 507440339 595300585 598893443 870274593 771693939 771724299 617888441 834071229 83183953 684169176 583282241 904761664 845772593 908650259 726859734 732083251 561796765 862595032 795792290 978867879 36053895 667709624 379591651 399081206 72567952 223643163 131240069 386376701 281627226 823141020 79802249 513274183 566480837 576499708 561259345 657144882 166049446 997139899 325220182 978264762 160910088 959429360 145597537 926120279 195328470 492289756 972540883 992975140 984271807 984570285 300690524 344525748 977722302 992259769 746103725 980130971 141575029 207598408 169159521 188669667 350541127 922427427 616303345 674467071 628214779 687511668 668670896 692975848 662780218 969237591 755420661 972480988 690559427 837743374 783276736 924315919 373539636 789443201 976487766 995843126 654053637 773265430 820791350 881603282 494384109 968653798 398685569 958157565 332519467 894224991 78136948 524254142 534566301 815909439 512851415 879956475 742898524 750518030 6589164 823861258 352420636 628635317 303819065 593810610 557686255 904339067 181666771 527433227 818292612 850275597 453195710 968486082 203402321 400912181 921857196 932262037 62567541 953469311 566262710 723755528 658682701 924620307 173394188 854017365 378242921 403083926 584897903 631172112 25582450 925391288 365216319 544607319 668694725 985846151 266966953 345375996 917926329 945721827 907917193 951187614 235144755 440339928 791284974 850968962 132337121 836017778 958705915 970946661 26364335 92579848 350442530 377337585 481004698 642759388 859310262 981158978 238611753 287298763 249593274 465601633 577842274 796575310 507894595 521506917 516464223 520384495 396456597 606731303 721158451 921019398 786953542 801710178 490832821 991765704 39358150 323650695 818699414 824148236 761985558 855055198 375822660 815007009 771167825 951462838 740256863 823499244 478877585 622975901 949207883 974768162 627524013 995730319 747698134 805042214 588387341 781031223 739788721 768181590 86223288 681141099 16817817 444302260 494424509 896515322 371783176 570685864 277435892 908760887 236135114 403592137 268219382 746718316 936175687 997733556 401944696 921888902 724745597 728498574 631788663 744816420 501524588 592606180 407622392 782543334 808389705 975646913 889418645 954114254 209077162 506916756 137765239 828267703 49508896 912781295 285007312 651019567 166445901 430146471 486215565 660023659 470625313 552922060 643894281 761719088 439123278 592137925 778598896 859389978 430804331 895589653 337420172 575018285 457206418 668271631 863725771 961025891 673728131 740564421 490983818 521787910 910187334 929845084 258974864 880154105 260488336 626696665 395051685 874276999 404982182 708093493 438110477 956216166 339842776 773052753 866631566 960813464 483568307 838186730 134412704 330376874 309553535 391348201 365957979 730081262 144318970 751940182 104211909 925685270 678842322 812878271 815799218 866023901 671023352 831036557 162897499 866468460 957617777 999786475 22236772 350724642 439884497 801365699 298834574 710280463 160041130 875188107 599871191 956502779 25136438 582778051 904988472 932919431 175986954 256549960 145781287 963056592 554945568 966367461 749701780 771020147 147771539 502836161 814925879 933003337 151298680 739158790 590442420 659134302 101188647 116065659 104524653 348411621 932304981 954504691 533546185 698629671 43733753 296036757 927725199 932158973 399572646 636425457 298283648 687362453 36610821 872105452 698691769 812024713 103206995 790266525 425831896 500011312 541975239 999200844 420283073 601859905 799854894 882963760 975532300 991160916 30925220 919989664 838150628 935517981 609029591 708653683 214087355 430196734 111400383 290500887 22170393 990518666 904263191 957804340 765792852 832046970 409212941 832285474 590742775 823477865 769192325 786624532 372368590 425945959 979665 210958317 159745490 539082347 88048553 413566203 697430768 827296501 679259037 894044533 289356162 368578898 159447233 274818602 180024489 967936043 928061700 990503091 196110055 854428057 876351665 913640418 895859035 916785018 435153089 957469132 80761225 256120230 509401127 659037141 480012966 553876684 415542976 526478268 605712308 849798362 200738022 269298820 651127435 683584495 442546604 503316887 917071692 956583111 162690540 455319004 771013962 959731385 620325666 949461685 945700373 957325464 267661450 877357314 604429368 768495425 596477120 934819731 243902349 871358421 917090681 959544409 657558814 889199561 522002268 822357263 25165151 869761164 749460938 765990271 294011226 630339582 834863241 899843027 434324607 435084545 634478936 755678273 144139078 443868694 928847153 995937077 424109043 472576090 193115874 776237182 172266838 429858001 414391699 949802152 578123748 932450443 694854247 964314727 550504871 899405988 455646856 816980614 119671904 565290011 116912279 556742910 794657955 918631818 863460804 891882315 432733538 968885495 174028182 914333740 805230455 824344776 744069245 862720970 878153600 931632006 185555614 398687981 317245936 960563141 557704893 745659474 226341052 249616970 425910530 842270019 956063161 974571143 202282369 251998286 270117138 510392046 758512897 762168570 486798381 643491298 605244083 656286937 114923662 340745462 449743650 616576486 70776833 76628688 866463797 981278810 132381289 202202762 245667132 896290169 138272636 703496720 239393079 823898952 485767647 797311956 77762182 446541527 975168161 993105073 604014522 909301699 999118079 999758583 184798529 666238670 720108787 926764579 622660014 743761168 30974145 589395857 922841733 999128824 157331968 821335186 900090433 927529089 454974360 887316828 275948137 476314950 936540103 962500575 624429651 638490427 258622365 497759490 641841388 981194035 643717102 720643858 48417928 777679334 581301085 799571470 131279561 293019647 551003061 556313701 385772152 678605269 728622170 818733988 220331874 371608883 330644934 458144022 977687131 985633283 680395630 684775960 445877361 606609739 815277182 951956354 935809645 977405404 811684791 935119368 842198612 890245707 672102535 821985744 724224538 768021016 151921933 579256795 641842181 823465033 613411519 951082162 19401883 775634126 946780197 972807272 985946598 987929987 273121523 836154339 561686023 740474124 533930675 992723357 687827676 897211870 845246861 884295286 86077330 729729183 868681140 978159422 884711788 998409620 469131517 586167354 368834429 516248012 149232136 750819720 52692849 676279811 915723645 996047231 261219453 322537154 47844388 885131353 491664994 721802153 377668892 651750019 995061334 998431530 746254918 763266266 475299568 838684166 706370426 934323294 793381071 858195911 575433314 673599526 450429068 971266808 979028722 993438069 929851750 956466651 912078977 996185630 391265275 804346330 519700450 661464652 80937348 442940441 671946375 675848133 654106185 667916049 262246581 681681714 584660671 914706663 334569938 531240686 309035883 912404246 509663090 557959501 189107917 328085764 173214806 176446308 706463880 709118000 781546478 901533177 595984462 888283773 815768350 820485933 667374148 954574447 309929411 935299552 870643960 955623956 955911700 983155600 543430901 760357127 6219434 63442403 437620067 822412359 11145659 643462119 428302766 958684965 300272136 378871977 212420514 741313053 53938957 646360502 766813279 867484943 985691852 988752802 241822922 971369031 812444416 849827555 316638562 947831302 839197802 906601094 129833155 726472892 768109461 810477982 499068708 614839551 908328728 934611264 201879086 813382310 68239096 920361970 547711258 662808153 709401598 845087045 660730432 800891168 550706756 750095363 783923742 791548996 370645522 645667309 643262478 691417828 718916501 790168883 179161191 958104547 429229940 459389117 193304402 333158303 832866979 895481214 466738252 496905192 364633730 929497988 14554767 515701032 941001199 968624338 535486930 543609875 930546992 998628489 659068083 961222822 105195325 121911021 373601399 844715038 699630105 964531479 304966963 739177965 483466576 853719062 733218975 982458907 39497376 736551079 117248459 559198647 182944372 519089729 218815854 569029002 579571916 814256475 563281030 626484830 819258697 959110456 250388787 257707052 591472235 708766436 866779176 873077185 762121453 808040516 97130159 270168788 699164677 708328581 474792470 682966230 315016655 566057791 142388203 834016767 343367937 629779671 471412750 474360394 429891867 540602166 649392389 788900678 871530776 934451204 208714837 607289668 506323130 981653090 698789243 886904915 712098589 745695540 839683812 869024306 616031792 734138908 271766867 975005270 967642486 987218582 685112257 914551610 662164355 686807884 95280705 846593168 853753648 995143738 752480159 903258793 137868152 482812381 429520339 905246152 726217420 815486550 670512025 784066936 110429901 925955785 605313529 944512095 930919562 975328449 492352458 895998873 560037131 893624804 339433781 627576345 190440930 773822042 843862660 908332651 102993661 393433779 481237259 933429058 917237179 964441092 182972814 651145477 163344552 226299059 354780168 826352874 375096136 610097432 531009463 718570628 892639816 920479743 213780477 706762880 739269080 883183449 207793436 702715204 592352693 697855953 752046510 848487652 249521869 963209691 481459437 828193935 424352475 910344053 385048742 731661359 470442605 585011099 951002611 954298853 635496160 897500974 725785170 754272456 242047236 816020057 331034896 717290606 548103303 983706866 523657070 986964989 38796006 532209135 702456131 900115808 623610802 788413296 999490886 999786825 898111816 996657260 904444143 937031758 18152975 460932226 567169184 796437520 941019556 978642470 235136694 450588799 79103305 119679149 797694713 974065440 498128442 734684095 22488951 783011065 381577495 889148867 14087322 708655434 398735166 584534361 758158354 866263709 160812262 489050273 537689102 654336914 104757978 795395053 704846252 958930229 339210236 887965611 446846698 684577686 903493108 972482981 545255707 724564508 455045567 788391863 601273144 860193604 137813366 433504865 795036796 944881946 70743165 620488426 308289029 505949909 211239758 380760897 120722858 413118455 780663012 895405217 441665650 701429445 119370250 745885408 828909365 936878075 608974853 983430945 416403189 424350840 819364415 961823006 271610081 949846483 533803093 884338857 801537121 945750835 337582256 528379236 192580316 775092977 210337690 399663477 595796644 621190503 500652181 700919144 333362564 706243438 829274058 895504489 926786156 981854638 542209653 747355049 607991712 867983981 396893563 398951724 406671771 505571295 812498961 829152158 792697892 876212572 563976641 842707182 224637939 368216623 868679633 998198002 812559898 830321488 457721903 810336968 807290987 929144863 915234390 979656359 718429438 942895346 922333552 936007045 484760961 979414451 733278337 798535452 812647672 829859931 393197109 836485546 757988716 872412868 203121870 534205506 750973398 838650473 384352810 984533736 150523471 304207685 452582271 957787119 64577456 912489876 689175370 888545814 1189383 904910456 674877990 683961473 235819678 988431842 841672416 909262383 305803063 754206792 364524578 901673271 425946783 892485590 99216215 429438573 843590168 945301535 806759082 959221320 437338169 843521426 232659623 605595176 386584144 499739492 537137083 713039690 476079263 797157277 73738045 843705621 250250241 326402350 857655672 890179947 387360295 519883935 74428960 260954521 833808442 878034951 266792701 689834949 199232654 807267853 374926254 723182647 530308646 687180145 62199832 620388283 274098787 976575187 62051289 668137907 202373598 225494417 622990458 776987330 824898887 894027679 404088329 695971335 697860008 968301515 678353640 960794619 823681074 869656875 7349368 672223825 87561584 205790447 552198335 631469373 90262100 552995598 917178380 926615156 147022076 166062288 521789577 525871201 484706171 714832693 745804391 842545979 937132653 976674576 694829577 929418645 715893347 995724466 546047996 715622645 607010516 720930020 81021537 142890289 134786227 515020150 266674358 296992655 839960723 925508655 946237885 984215507 413196376 685938068 673594615 687900352 978891260 986368462 763390907 942058881 501513459 708848158 347396052 398809437 776373104 984539396 182203827 619033398 953572770 991288682 679294574 965630366 612624876 624064066 586245660 879667537 108818870 783816739 967452124 983466016 968035043 969545539 16718756 655567147 133194867 211889950 673955028 885270932 138533077 673074491 409587132 897717955 457856467 931341988 998314812 999337312 787264774 926511791 679323775 818419862 491144335 992628046 962348949 964859309 561873855 651424361 273332984 511285789 973610815 983969994 150178671 814586685 848911422 928088419 707903845 744462700 70747117 769481385 710761292 938086515 266493378 417496971 341443811 965993170 548833760 806260083 423774918 636690261 535657684 536826463 30335281 956446700 639088170 890003826 488257197 956710394 486822897 892460868 269990355 466232770 55444616 675166497 684049056 818082653 42422233 788563233 663985840 690233044 947746945 963044340 516232824 618627291 490463425 725402645 770154893 813620070 632185524 781378279 829383308 991508431 604356461 778586106 383074696 418238413 41936654 598357908 762596382 983750274 831293159 876870923 556335042 827535913 817213021 847418385 474443744 837497202 486716501 742707256 995011324 995939720 283935980 733891709 886728061 934723210 248018648 581741895 530637158 913477634 135725335 665367774 476966114 891703599 409893505 820488547 876437436 883366951 403649591 430225556 559991063 752623045 679962689 728752569 697463750 697618717 888502950 926690350 202352545 804622263 888555031 913445116 837886460 914013648 225950414 700515590 198568943 750837227 171096803 466659045 664922199 869785118 269199684 775299150 809817732 907623618 369836056 771187008 854454759 980609189 564336608 642646270 401814019 451612090 530953646 663397423 370370832 912804591 217377015 393503952 89728062 306093544 951791607 959835667 939910483 967683376 383786715 409406453 959677408 995988196 507807227 884297940 428319912 879992193 477397852 644448009 331251976 923027436 225979145 945498738 19259481 927153481 248830697 454020735 426954204 452929827 660678483 956003204 790075708 923021208 343909014 820636482 113187924 435079824 625186256 881642799 650400245 851768618 284684455 529464633 436771508 783101417 121887711 730453230 412192107 907056542 751200475 803294933 863058671 880690342 484694972 947213898 178303767 983949798 99298007 386018845 104342112 269041704 596773882 736663606 732287591 790547843 672756017 764123110 821235715 987775695 876141224 880088456 610953838 971242096 421201592 740997067 608656966 810915294 880059742 887078423 2849025 648265195 176765098 638100346 81882130 505456566 164087546 548004610 981494278 993528413 577385747 731742616 981666964 997619165 992052178 992794874 296472777 986163822 957814236 967604520 276954770 410704270 693911361 809974620 812605555 830824544 343768049 890762833 275104114 444751136 882320228 997613918 827583349 923361249 884775314 978187736 470829305 962362616 562240441 678738238 988463159 993125591 741659624 862711773 812722656 855149873 772482243 833874224 439489687 991582041 272622582 442526748 528513000 927208128 142006550 763036887 695627064 710695850 835575532 974366877 987865172 991521860 114485976 239341273 738788047 757400051 713431629 915305514 998565558 998643717 170545203 768246112 622539989 656369295 20719938 36837885 705750480 773542151 563057235 962699327 531864717 977794157 495302005 862157088 317097360 622745248 605843541 902282728 348346105 941143769 162663358 740855422 696404752 798885768 379031566 598189928 525357746 975521737 881807110 989363327 823278801 959336173 223211358 700634079 932961494 993750127 764255173 883464000 956203371 974041509 625790086 851009113 964682796 998717384 225322316 409202187 676836017 943430904 145616649 862960424 947284636 971066688 620282171 668607468 19298855 436449028 960878221 990245493 297665361 799939808 546353782 549890122 357859830 397839716 813689445 921332348 988667155 988855343 277690107 526136753 408823971 994493007 557397704 984240558 922589483 936140839 781175103 903748580 788072090 929607440 877321807 987450327 981038527 997757215 723699004 841639271 525480086 882798595 735482155 855461628 355294880 577506911 580817030 808858943 916045498 953284293 817051826 856415739 565900492 918459148 20258607 783967718 770203592 942314700 781261389 815799079 948524440 957566917 927870583 988278832 801288640 844196290 306401053 819765229 859028 455919487 172228263 390894095 340139997 390812179 704150692 816094430 416501505 862354961 197713073 831182022 282342049 304907422 513249093 725858429 537368970 956213945 377685244 881269617 404534697 604430371 346767833 858203979 163205055 563523446 647643990 655857053 946772149 952244416 955669241 983391664 721086307 971101777 84205642 995360357 153021259 947268822 862682476 950922743 733547939 882619089 64187386 788149731 280790451 671626994 402628518 660334738 999360573 999946159 956870822 984398364 617553360 999438238 467971458 703302377 43202317 543679551 742235913 915591542 239954692 973803961 707965526 895332935 30761077 945754645 493345640 654033652 324449058 642814982 488970498 642584025 385026208 733669462 975086318 977052320 378584889 510403803 76353630 465905398 983382392 985005181 609559567 644162873 194534292 571487842 508361502 603393555 49545359 595859283 692338488 921244709 624394172 850352051 735772621 949006941 621750391 723127114 491538802 519988443 642599407 734676263 24680250 345430473 592221517 822549888 712157094 814474820 964583526 991198861 904951839 945924239 539200023 869455013 291774481 339584746 703114982 825032090 877985442 971146264 465200448 947513673 794743437 815265662 543795639 641254036 99898945 472632135 103526503 870557389 124632298 297495625 79984641 158597708 955864534 977447510 547166156 652950122 659644660 806666487 748670231 852828662 354473135 937909699 106905553 583231862 319128742 524099712 411177911 568900660 60453205 634129862 189372305 229901685 41362445 702188161 442258089 508520360 199686334 714257665 636976672 886798513 236285708 840394825 547700897 687653621 822575907 865974546 994794895 995309082 807513321 854877891 239222276 544260650 548661294 812783673 319667141 989933374 323135351 328871587 382867564 732845763 205759069 945125394 521083901 604218742 626400853 706443294 549771451 953350770 831327747 996269367 371588841 904304918 265296057 827950804 761540179 963993748 953578824 991140288 881217939 969099565 433124765 531973819 682055600 725230131 910194914 986686441 182878523 911158245 342796789 813178083 325467255 982653567 122412071 577154525 361241739 873768119 162270719 276083600 284474957 963774169 477504786 827632777 433326778 567731813 332456747 951078864 253963887 592447389 607155992 626051099 942834774 966401343 964036549 983488022 991237994 994091020 68452277 115794160 635188442 910060113 73202778 618334222 360857801 681269181 972123338 977514409 285668957 649008347 495529329 854083899 491508800 534838930 448618706 549735506 292150603 637027877 881435757 955497809 617828197 979689668 749533071 846154696 295785077 316305248 665177535 701256657 393493821 715414046 481198922 527214118 744241010 834895460 818623760 852678306 880159228 915288205 979158942 989720472 862397077 949560164 924727374 981688289 174505416 196723554 443240053 926796085 894510042 947480052 984747958 986119974 244351030 361975219 259513512 593397829 669124192 790467900 733069634 981381941 670105116 913978170 599322156 849963343 310263641 490856344 492372102 709190897 820364926 858659207 412805803 540020440 737871289 767918035 202737757 934009377 449728275 634894191 473228318 498597300 734484908 898208934 981710534 997756313 364414428 431124205 807812876 843622580 730066590 868186036 286799574 656782718 597548877 615341561 127930171 844459363 483151463 496514711 670429445 895266302 457027147 728205413 13107241 928573929 236938685 554335900 366465103 372331231 634975840 651055840 247307376 947046802 972104094 977981767 585235525 843667994 238503760 792625536 726879449 946809233 431020598 900959014 229341317 352283941 189928248 532832598 481045612 972005828 469875291 833171687 659906929 737572793 956992020 978672559 452524633 725928807 956960061 982392943 677526268 710488439 696080852 894494608 141284359 230878824 712352879 952758546 925691667 955278338 836392049 984284829 454133396 596533606 266071331 278470919 954295672 979267374 275491176 482571548 20644111 876699641 811515639 864681408 904039614 934748253 252617097 989738932 124275608 396102516 584411935 919682517 361967359 629368452 151554797 892882554 442038455 901966078 436908318 759439482 521624379 822736862 235228761 386565641 294178692 514773175 87620603 812987850 255240407 575379237 786036677 859412609 463389304 944584255 464520274 898591430 556200203 669460894 705507873 916540132 16166195 807029110 755862598 803390070 176600640 186675866 306843076 650591060 342287698 888908668 446314109 459801099 950212375 961779533 557998366 836072319 202028726 218488950 550597592 961315752 602921650 937561219 791712548 856981627 661279621 913559341 547798300 674989843 629317484 842535650 109777042 299480688 165619311 338998086 155750641 447691987 28407697 996421455 116269431 169205094 8975907 737736970 610291667 969296138 928726842 962513492 319789517 758530168 427383080 494228936 301960249 669164261 661646617 838301372 744410115 828644797 473474793 952448136 506064997 625273033 37306953 359974140 233730120 592386014 234043466 519551715 895128962 940646052 148439069 205922649 578655951 783507796 128009099 250987379 763252248 892371474 457269587 481620268 213094879 303429539 796206746 834696215 787428409 886717378 271242233 353418856 104831234 855386916 680172554 874560644 333057815 699888476 190956986 739789745 37375053 946273137 536536 650193682 931457739 939239081 800281773 839345259 710404859 712355246 98066406 491856483 63691512 181774005 709475945 979965133 391779854 412206138 670703419 921213813 458955582 829317473 16808186 741293205 941359850 955203286 519593624 999490259 557015362 840260295 529135650 762229635 987159229 999578658 627630762 720078693 65430403 390421124 21504633 885843682 157215388 639379810 605641863 950078336 504789681 790677560 807383136 897357000 267018393 585496198 771618644 853795538 143052494 287596193 754586494 838183097 464778755 779578580 123077914 413375731 136317606 613911497 697244395 981865748 353897601 976032661 743768840 891449612 370616971 892568596 769899486 854879372 911840367 972355118 697602377 951432619 647149843 699546659 512577571 671650151 46679770 441493867 461672799 580451197 197779030 496443647 100350705 643167791 180310384 668284164 157465949 432554695 626930443 655833149 93747346 726379849 182127079 928347842 488388063 692161276 804419090 909943637 645040479 748930406 163640150 857232937 496017234 775606261 823506368 928169161 957331706 996066097 232889723 679725102 403752701 418203762 36517901 370644592 354660656 696181977 894064853 908816866 275243000 756852981 563446348 660949366 577933035 615210305 968768454 969443556 676021018 787668637 340705819 575865302 178692879 630991544 524331266 863831129 289772659 947482048 520011864 602973890 483503263 900453652 990570034 995556666 520164993 951461164 568261973 990464439 931687693 979812761 876166209 967237599 728491173 889481567 405997419 468999249 856382978 911229122 881092792 934580109 182394605 237145650 105880717 727680334 644395946 866641400 45344373 512113085 441190068 862900252 89683067 110902979 218460208 777895623 843561242 925258787 588167425 954634779 169119925 719214495 398070975 560500681 621463196 937126446 392240892 450264739 756547642 888231759 232949812 480562292 859552793 971274867 674843839 830351393 965565932 971559941 160341413 638110772 215779811 631832537 777343441 861095077 758736731 892469961 739334495 965738370 114924147 823547777 901226418 983189523 801592271 883396347 593647520 884024652 429905006 604087532 25300153 430695211 671956177 675378767 298301094 990903063 459560039 706167464 954309867 977332933 751263500 845182758 634384465 650778944 617772371 965259984 611364106 814371226 886455123 940362322 468096253 527990271 200862263 711742753 766886908 996303564 723286517 956496024 283523793 674792357 675066243 919715453 636852054 943666917 981249219 996204693 205177136 509590078 434327251 728173064 72576989 357905939 492572436 925129986 783729241 831944417 526320828 595108376 85025542 465807081 632256109 905301794 832876380 950700039 87892852 182601550 74330478 992856267 996200956 998085404 748120065 991234532 311416147 811019367 396770201 516810955 191652245 881056798 413417460 841153733 725097588 727456638 347862256 372477546 837654059 933524289 270644111 370963585 479913773 888163969 399322493 732245866 673546276 700913033 356291948 753324925 349746870 996061848 787458684 792531945 318830253 592655161 471569086 753251133 576373257 887069333 886930799 992465261 431800420 550690030 880250629 982074275 730421133 776693085 662400069 912457468 898728627 969288147 36312559 824974017 744398439 873718528 580647191 614915357 807354158 826761689 303350015 429340379 763408115 932951097 136253531 753216922 66148205 916080569 248142591 369611670 828888675 871557872 806056326 810795064 396636244 946851617 262119667 291674121 356688173 790572121 411442687 465147019 453387293 702428037 772557354 836740605 641796695 868816383 270292965 442478727 929427596 995549292 948060130 959238595 127760442 528491369 29858425 50229171 159755501 237587778 392163613 527005475 232504174 598430890 266942244 914519246 633790131 934869638 960762667 999129297 880654474 995084622 394192075 510343825 166235028 628787036 488323903 612821514 931052462 948931864 832679482 952463650 758797828 907277944 982415084 988797681 436221406 451484958 561351103 737292119 963423091 989940856 706111887 728753362 578273566 903723794 490075832 504354197 562623300 695999089 954152642 971661640 917106878 965048670 86684974 504363404 573820301 712658891 35299757 859787692 418770212 553506057 600875958 913304559 749588127 831786358 152628003 683332451 718635945 846081188 482946878 520589448 841923188 873796744 465071112 858714234 802659132 979041745 266635673 908546277 229558930 696908125 628723103 668154661 21524416 596016930 29436535 614921122 663626753 928814652 854913452 902052525 231095699 288150970 653685090 662440582 667712013 809730224 732856717 786226725 816600400 881020421 144905589 400669073 610421990 840804248 401856908 613684585 701641753 800688179 296577994 599600106 569181433 984143036 208124338 474867461 182788145 803045675 879449522 893287105 771785465 978651949 177215021 738072917 637475984 746331630 100650075 866166012 326679607 569500055 551298173 747204908 459857160 957874710 72773234 735170080 6350986 260727471 70682929 869389256 614448049 954192529 950411896 951577972 87982569 941809566 258748991 280561756 537143075 765209412 287298428 291216455 237084733 970736167 916954149 997892880 153066929 956333657 162236246 925595742 893711253 962113108 430292127 719733938 934447178 941761320 62656900 382515457 651421096 818656309 711125743 737425489 91824958 208784970 133666470 245360886 477034557 649406304 675197844 738596661 391619070 601194190 756122397 933867844 611613291 980277520 898160795 938125886 277562785 432435640 91307111 346194314 71988946 859198381 927977575 962171065 256817636 942859669 155083459 407897259 123016145 341498693 99189116 282292328 838264344 985408325 669002116 671613960 340042099 852816953 217429802 391822253 998049347 998667808 823823517 935668367 435671861 708963953 938735822 990694267 996003267 998739315 626607602 802226543 666774353 735017388 421273782 713968567 392860313 481964277 405439671 593375741 436900047 585197207 711387933 810984652 28635012 712165293 190363536 797777663 819716927 850628911 761226039 916305489 117613363 493422732 294859705 944206262 821710587 885041477 82533197 290879643 588931049 965449351 405789994 659116383 339092715 703558139 431713245 992284707 334023784 837585098 444253729 652558480 356618596 943130204 539613970 983308407 989223078 990479354 887701359 932151139 775882579 898718013 267381957 839499363 719451541 963647568 828605717 998519475 578708872 983705720 777079645 821670587 666474099 926017097 731038541 852114862 243679184 620401123 366313000 774557818 1469711 302186296 781135073 914587351 481571724 994682998 815199787 870497485 722345385 953140981 874221582 971173613 288750517 918124787 657498780 925952920 262007927 450812564 377995542 733549312 86657046 854880047 115000387 858403861 300328479 434702479 883466156 892511932 189720105 701246106 296459468 425463378 637924012 943335413 585937551 795323393 894802188 898191041 36812372 926289290 560164475 984912869 633745670 690515429 863178568 949218523 653525791 755795184 3466650 190952515 692650422 890193194 679346211 714097917 455594071 764798708 959423975 969048620 849010560 990153564 977865773 998215580 559653259 595602274 444101379 652253697 19566286 500147679 607223041 707142360 42256288 69088907 992594577 998723881 856979788 961334152 599871138 884878439 947527486 994935972 993823257 997201648 655010669 913138255 192270504 290508531 356342528 696956350 870953002 961909068 298221330 622979894 275142836 604669386 731102830 806780391 212813459 615038717 86072789 368665067 395020516 675327368 86813369 752940813 189277182 964884729 218387712 879855486 267393809 722843929 172206460 752631849 569160465 894731495 161165410 619942733 636322739 671413235 63337472 588993315 651825854 828107271 124065415 127126737 947984295 948670441 822775225 825593629 639416856 872049155 865699742 943652274 236768271 555409817 54800682 394830281 695413203 931908885 51379696 101342179 772810576 993987280 426223241 772345312 368498944 564032605 177733000 571434822 390332021 565825889 232138784 384602995 365416121 781087840 976585168 990533198 848854895 943292708 57649720 641167025 414073516 968456914 255842347 829980104 390785612 586208318 69386839 968919073 887998246 959474989 342535426 438671617 953675620 966847771 575298555 636894946 257814695 336036601 357104773 475090013 319315341 435279785 905696924 941008472 590844238 777276776 911298928 992958948 132803712 959371133 490661343 766958431 306658490 977553169 503494471 802030251 548462624 614692774 71790206 638380844 545362040 651774539 63477451 400025577 651103898 747825196 90583711 929192908 566494333 849512951 444707289 810934739 330314767 385469206 917968072 944777534 654040439 766628416 741334621 880045814 827778357 852549686 370392463 806640751 126155750 902468932 956137923 990234127 46892517 961865124 176640495 937616649 801368942 932764942 308438350 646334930 939552962 988616238 515101057 733225421 661623636 813970689 360382904 598601745 992960738 998335631 363570066 646324109 712115155 973811994 601703494 758929369 500016895 529463078 427255305 501023823 621006733 947296625 15814479 79744687 330485208 375565057 469403205 765492224 293825506 933220102 354460353 415622363 927540088 962408950 282815554 981066081 501250442 666070825 721713586 891897652 471211816 783427331 68820901 170355430 782228311 985070827 988570956 994442186 8897357 704342815 21769645 708150883 716582319 764627012 956833738 999310704 19601004 810969654 183998389 324745600 296753671 799958411 764979882 995971040 600196463 600311152 371698239 567554518 738032856 946414855 779374837 944781673 158674833 187875959 526607805 657138072 773181621 807348792 35599800 593024122 793631104 906606753 955232830 989938079 89433148 138681910 37979589 215262311 899501645 927483890 82001267 624067476 827595708 854818140 755365490 802790449 990624290 999726255 531485755 564193733 966408060 977565194 180591263 392607610 660300378 701473521 336298515 373717568 545862179 997244564 151720862 401480944 235954523 799699279 721825223 886035839 785869816 859625112 568809445 762049338 124507973 203288877 996092758 997971892 559309855 792028027 336015823 927255399 689960953 754117188 115378167 375404982 657578282 841703990 866865103 912823909 530268693 563126588 84504829 926543983 805847911 955573934 777043341 895171914 704705926 993950013 3616147 359794099 223130063 658494641 525665634 809545764 616975095 782322268 370319961 558258569 501938227 530604552 860510499 966579120 480864946 993986206 452364115 784563193 35870831 671585400 507371923 645701738 90114247 600039420 941173270 993609181 500854168 665016633 862237166 896666247 313482788 416910874 114955167 374878660 912621567 985659809 317349213 769369516 780275735 836618291 925956459 955908675 451407132 953243888 75327681 498257736 708035064 828207764 412235493 580123358 412631831 590435424 855137194 978597570 398051271 643690612 400628433 677176327 392219240 984682234 285732654 311705487 354146327 733632407 104363178 952051972 95556494 486554973 946570297 993364432 803148939 986412665 302660007 755236197 109996492 124834294 216567375 523799160 325685004 915697559 370226917 996121628 5197979 401864992 661677257 719984615 968332667 977359655 709061343 886084802 491265537 758259154 972752266 990956309 442106738 914569277 966397160 995210151 236173646 635506542 117762583 302968353 684767681 837180124 26999707 580237515 32871314 364030594 121552923 634745598 443828516 524450328 538924118 742033314 563772858 680588203 197885768 306099278 913242776 950298261 276602566 700108258 806828409 993513771 471979334 971983861 670134380 977945041 543692312 600162446 569741250 830488322 919346017 977072272 733404 48349085 577624927 765723460 180685115 804604593 87122900 661657500 323644795 356202482 717329606 828268402 37593691 633317353 478589529 795098746 448222597 730187500 736389555 907683835 56464057 206185393 150268136 312971872 172055463 573436794 440582789 493690814 30232349 168809500 62511545 284932547 515857343 770841145 220016797 247390093 951149449 987811104 549585474 917569244 775312445 807594702 256920424 301657106 131135202 256216629 384013501 770260807 430795772 835602938 187905374 207867135 421167840 643357502 578731155 876378158 672278788 946712242 624466113 739113818 903613807 956941681 484329775 500093032 542964663 721258092 500396854 506052777 546457172 683643279 569547838 982913013 770232417 883811351 93333021 991330523 690324531 697675992 612578527 887527765 997494877 998731390 583287411 914589172 646651311 776062159 850092309 951716291 55467770 418557777 256023702 759940893 364149212 966485273 571037345 868218061 166149805 775185499 74937495 287963493 888618868 948719205 573773210 679641278 697501165 923733723 812634134 853264011 368075855 394415819 321010488 489460595 794220195 998236144 381621291 670374575 601265709 832013966 162243207 500192077 186081564 550394456 903069337 988813982 545567788 719735202 993989494 999566853 876581995 899969103 415456390 503568841 107371896 494129845 106926586 374558829 881821085 895141268 872940346 916211698 191790143 605854118 731416953 943627797 219465776 363475106 991429127 995253501 444943119 820016453 149690896 539599716 660536236 957906691 478279814 921385299 624852846 957323596 451023538 951790337 598988018 907638194 84270950 877381374 915589122 976777414 385876459 902639755 615589378 790710407 486252195 613963158 738966863 832414099 909458973 932208563 98556997 873967207 195466944 645105034 69402930 466887780 301542172 488677308 210296699 753694938 657395359 820984275 820834020 956025640 769631709 781771196 286320091 365455575 225116205 625117648 264361058 613152415 365374128 435981370 906748207 958823441 393027681 656114560 992887765 997352511 573881693 595287925 678585714 740340506 114321827 641431672 291711768 790895365 941700205 967185118 887374452 994198611 244474143 929799231 473999488 599592337 240694760 356317468 901086281 967382531 948409040 989485958 85012484 92452478 20283818 576896117 357775523 436974073 747233003 962247295 261830751 743122471 62909943 961149868 704730778 936196158 761579208 776476951 989802839 996576420 349073575 418414018 986394006 986527199 236617118 989735756 278484398 849116512 626089685 935419142 681165528 694898306 990995547 992738715 896325472 906060719 509018919 788906302 197772757 318199228 518477811 585240977 709529743 985658400 374636855 725733564 173668002 303212626 434797947 969651635 182060669 803191768 812829109 867614887 295286611 456402208 638321636 881446744 274639420 915142914 754237778 942188574 699990451 761825512 654365947 711918034 237865144 683399909 588377357 896412097 884520772 888677153 118433233 318120664 179902674 256908428 429188288 547482556 572914610 995812486 999360749 999421761 123677136 922818958 336916198 975066049 967600281 969850296 450421505 636344863 778869334 935928789 301767868 321775025 165315993 966788150 167980538 687398071 105934541 537112051 664105343 770803126 557569457 834148021 902368302 912559983 650771093 806142175 248075610 960241590 199865977 641202235 927800203 951010591 72934885 569083442 285421073 807822345 799334544 917146054 445179908 860868340 632915880 950605693 19785219 107991487 28038613 253843410 84366898 504693492 428957212 553369629 57167594 64097195 631097450 844186578 543660389 545646949 906550439 977910931 402527259 600754249 32783184 323353973 971499614 998060048 952832118 973942947 500315861 682558345 169416829 629920094 760395845 889512582 743224960 870997695 383762257 697758655 862405162 941488152 285590034 562936837 613628886 720486679 800479403 961078106 228175581 429903271 341828590 762739462 662583068 830986766 406933051 470676056 596396028 868750743 934081493 999229877 816855188 920087348 150103976 983760109 371551238 519421151 631664227 698512057 609151733 842337138 233206375 838070517 653110382 872287638 972641359 998072065 329495240 816006301 984283525 989729858 196464054 724938532 413641840 872932565 42977303 843595747 999346200 999454557 991965420 995884425 56528409 260842050 33589307 293082055 617561190 765820641 542091371 630265025 561339613 858077456 84058124 90915780 763737830 977586053 294737561 706699432 4401728 982755730 177116197 777742128 696327014 878635311 111265849 922083428 581081063 788215301 888563128 923666082 992172489 994253229 207449057 648493495 718972701 951020767 910781322 932325505 697627411 900830511 675739046 683956507 470363032 932176554 702884134 935333056 402408452 829742803 994861631 996056379 442706661 538075588 4657509 257074776 77365988 726850760 671065171 890665405 703330293 749284866 55646958 312021237 53824872 127435833 247345722 497967834 14674620 714280187 244474859 707430761 325770518 461875052 944965503 976532346 976671567 998822023 440903719 825296214 417476619 817368591 669535911 687598349 649249874 804985135 220695775 841216098 885569401 894259937 540902313 849507360 261492431 986735379 798818545 970542238 183686835 538979283 555999334 655374156 526967195 533426971 976785428 986938440 80813354 174176427 707079652 764726928 353805035 903544981 977765444 985659886 740999108 756002965 606609018 951699168 242894708 266202717 123837078 259126250 50409905 825037601 580934164 985474843 895733115 944813602 266868895 852869265 564103602 944248723 375798886 441035155 109001479 771161233 91528748 586234512 771493494 790081730 687819851 763432223 43226396 609690034 649386824 682275257 511218312 783129963 222586352 429378046 935642908 985552991 550835812 850301989 242611421 250256161 969203447 993825858 264673531 772526166 684328757 877428639 419209967 548029255 618872340 773438812 596616141 756675838 564414440 760563362 287947301 444081096 961593176 998916821 28246637 293546208 582295083 854619309 969323173 997424811 639514731 729475746 607745199 665686716 29880492 324856526 727706029 728967986 327360858 541123379 754475940 917945803 389238020 394296718 17221304 660296715 407863109 789879461 336788855 377874243 377174588 557632161 53548924 167985988 254862297 621006230 608282424 876066512 416613941 481001507 15032168 370482444 232470474 233483994 841389461 900944216 100622117 442032686 320125868 676636212 102808033 874040932 497618537 506631361 359393730 488184287 908507121 984395442 94206962 372630071 894701836 938954695 180736613 278491560 333878343 866481414 674563975 726454231 339880613 550323259 916781440 923517051 59241192 384140681 22323188 853288623 899990896 983401993 103268972 485564844 72335816 470138193 179075543 746138789 913505301 930836028 604592941 608130934 288521630 529371835 902146774 957166630 627543398 814066019 631877818 878214892 104853942 430488840 641798368 661756953 387625302 713951903 39284438 735470874 11987897 600270737 429544984 467277244 58741120 312653125 941222303 991392782 476706170 526611411 60910540 454588672 821420646 929848728 707560020 859027187 736286524 768997871 377334202 542271850 173526020 539945308 345179119 489406126 827031383 898971480 265515802 950961412 851973717 938805818 67165044 756351202 366286774 963844203 932105551 966682678 543666933 741930255 377711394 951847395 626856920 810889494 79369419 566149462 983996165 998669948 86557123 190734882 124414079 509334374 394066168 586501354 151298958 168007877 917705595 991698896 953453681 965880788 334171301 902261790 340006348 352411905 244887137 812654456 741665017 923602431 863271425 975568514 288912827 631103128 808586623 979570625 977505402 992040400 933104948 934912206 454323109 661341064 261852948 897936913 915100650 957808883 659239315 770416035 219104202 497847087 125344191 580664131 22333525 405017633 530038301 858010261 353648425 584061288 16820776 581075929 419536239 662653547 680738517 980135977 207429585 752518836 798886475 874863566 547342621 965993151 976355807 991277760 802951742 880929356 522163633 977996850 34852217 165309101 108093028 826820104 951740056 982121422 780287649 980202434 641460258 693674868 97705289 766803738 31041956 129148747 464750669 758692428 849358322 967843711 434862899 825740088 305533111 874926014 735233900 906243796 82017632 970071734 612925757 883313765 6508895 986709044 663413827 873194133 41964265 253852991 548261102 642421425 977162563 985615971 590321621 934717889 842376413 875206069 813189127 917573457 614212835 840053650 831625849 869925455 586286575 663552295 440298172 708942955 183787802 393105921 907505328 977014319 893339314 919500327 436073257 491906668 150709359 379127369 761656230 787778038 940863403 987316646 951344339 954749637 872147014 882373312 140440375 242367797 845475481 929670235 73825613 224970753 84269929 619541166 857789609 925643830 86171821 556119494 298679593 874337368 472883333 919771044 365981475 569395657 231143656 773049353 567477851 908771831 157996288 998643887 668773279 789915762 174274866 911722675 607994016 996267471 234045174 829718425 216244971 399674106 786015345 906187665 243080892 780223486 118809697 494870091 397804842 824389672 466542847 901554543 803786665 952890446 823230850 981136679 245001302 296917016 872496764 919209616 648727799 924623508 582483287 827047096 337712154 672494766 266372443 671183097 573548876 968317152 656857861 937811380 678216570 801879582 403451619 505002059 316027675 334680815 633132439 918105601 224189217 607026381 140246941 670325601 10007596 638579085 954033247 990059111 942597767 945766313 233653883 581463579 846908521 914076244 45510421 929816764 598280378 991987316 701651916 724712008 266926018 447646923 484444740 594236736 763613256 935542674 981295535 989014047 709369114 939632566 213286619 682659065 694127669 818608134 471494944 920510199 273774633 517706035 284712507 327872096 567391577 641014564 875525466 984698276 491728196 822508830 927522006 967441077 259817368 372136968 124461427 301470989 850979843 961253010 246202310 855015417 386527819 565109661 659743244 727217180 49402987 998485441 573210975 755883630 952897346 983896271 940190038 997925130 270752230 361551152 605696283 806354410 842201931 942221471 169813396 466177685 770273285 887184812 28416638 997196084 340894248 509690986 363935870 609204980 728437348 819051808 787063164 855234530 800586182 965095567 99252315 256482636 169126901 649000789 697574136 707615485 247488113 401976119 24196468 878474075 596283785 902471169 514565404 584474339 373733553 907510104 786118867 882009020 70980763 544455530 591300160 733711379 5868641 676700027 795410505 800888156 733698812 866869929 303641969 944870424 835837022 859828609 263889844 286865727 972142432 991676685 420337153 917972465 483796414 657963525 36663549 78665568 221790220 885091153 601564809 982470835 520479057 558033903 444353901 496688089 100542258 103961887 303062549 454199918 371290717 536324711 868059100 914064084 766979670 768474343 866780637 938996724 33959165 552048132 225216734 470362584 772622798 867967673 221650132 348298886 488465829 753350238 162850401 466562994 915002555 936657850 145687616 198743549 349360356 741470516 913995728 989369303 943127678 993487632 766091025 903180087 40525336 193427305 454265970 950521916 324686545 515372920 228139287 514086105 20689925 555505149 28162422 171368432 190939813 879611074 538721738 912268320 493420467 635462622 159474731 826404467 366041965 431836669 95460850 379493491 274807053 903567698 57779269 613046559 985295558 997772074 52041322 533889057 207906857 422460110 550946208 862635804 635225108 813672769 921446248 976420443 15347551 98860603 223208561 261479215 220295527 692629926 170866018 372335668 34033834 573226896 466648560 970348653 542872176 706932972 778177202 994926625 712547011 725246867 283139935 361050429 596383425 843409221 471199958 842196388 129615585 178864337 10320779 951170863 49599191 305860142 945641291 969338889 534273113 604487678 292125487 415395300 633472656 781328614 730730505 765107086 922411421 988406951 985424399 990831593 672229990 939222545 19682894 831331011 247553636 335259482 791709112 800495745 618114197 681579157 814172523 968815122 64388895 911773823 853532968 909999397 523023787 791985556 526773 883164473 183537572 974401276 93005083 291504300 971513114 972078757 669532761 706294755 364665334 735717085 752724411 935274596 198722568 870926824 900184231 982801369 809268566 840214556 308804514 884069598 451785324 632204093 207024047 323129407 765554153 885715630 869702822 879481642 382040702 702383494 827817685 926699710 483859112 660620690 955122336 970309939 413169247 624023172 868014171 883594687 87752296 694621186 31790594 717491670 971575505 979673032 282684882 978957520 299439551 408384217 696939366 829511032 320946481 820259347 384143530 810358512 443553097 636045454 824387483 855594811 985939252 998506090 480982890 786476860 75894498 705950012 854721793 908380182 67343700 683672830 253527099 874182407 164219238 760673655 663354205 746508422 20708869 922294441 799676465 958991620 811658556 893939026 946593819 974906227 716182013 961758207 89647484 572603491 835926297 904644217 252029239 475210178 679271730 838087494 831673827 908084553 273768776 559778388 386366154 955174773 786731000 850864111 27177050 958191686 419731659 810006997 674068028 769637717 806305709 998516173 793536595 824950621 133936690 449834106 470262328 991813883 231529231 398519364 340441205 945887212 708757699 722890466 968385813 980924589 802324547 846650390 709061059 838561450 869850994 897932839 590508574 782866779 720003220 849205682 893064725 968890149 1230949 876238647 200659634 877938720 201184270 647330421 325601781 731287747 416917957 442172664 600916983 703854901 961891067 980473817 355208116 766242502 316804540 595025823 891734416 987181385 725509255 801516988 564016144 942546936 671650603 762954360 412006452 615119018 514825736 685919310 919297729 979278434 283227484 665575497 123381960 579126783 441358894 466852187 360125656 699593672 242886538 671071290 280804731 891631060 811836889 936562173 96219713 347547982 45126442 491552593 8630920 11443877 342853501 529696102 121273282 623361434 299815703 555088405 227897815 626693889 539012291 719047146 90176040 520536804 184371328 596856697 17453662 300919118 712620906 779131330 871612604 949343182 567075584 911848107 825318033 928582933 308425139 979165754 598311048 942361188 206755376 798589175 486134473 583784031 452829771 821955057 739634595 809061359 680179952 841291342 987432770 995998885 581150748 992957067 188089564 945937869 33470765 249148454 618632588 678606090 142690884 197298135 331350555 887749546 363483117 793472756 120762969 143989738 680927770 808582000 43990348 767394494 103920554 563508452 756097786 928441542 464549465 892586429 781246691 876669467 309617777 891709500 69817578 232319243 726650839 988254423 354799500 743279117 471649681 668787394 898604902 917855970 230758046 458840905 191655286 683692555 363852031 990493769 134790850 465528183 932237975 932441859 56929408 240067051 336134768 986613943 297476251 774805966 255519790 279592925 407339134 596920602 392036824 658513002 848007007 951245273 105612988 145519234 740441651 852104580 921700088 950606961 841704229 943931269 936727964 955904541 566720567 763024610 571216748 699692663 158158347 315879479 265989311 454537911 354327473 889712615 271453160 766064933 421340961 899463497 501443835 639981821 616452255 982596493 583044873 590451792 693008175 706642429 760390810 874131706 739014621 789411406 753235875 875421833 148234647 483673714 195144083 582692186 183284255 237249079 667634207 675404950 276983165 506463614 479548986 787992399 679114349 800773786 954567839 978669660 507511518 996349842 353495172 628667617 689980071 885057978 5899195 224773794 918674732 980209339 87960930 776287091 900346615 974076594 823195714 842551528 16719947 177343162 542105071 801531015 893904008 983005065 867181344 875921098 737975532 779263407 416856598 557401769 63693624 467263210 569533248 867745660 497543059 575370959 785803107 894404161 543706922 871000504 542544597 841353165 208535600 766202669 652819999 993876048 430836913 458024272 910535334 940067091 652824656 877499804 963063219 998119019 855852635 908439624 272935668 343227103 86191695 822041227 555907198 618465139 842150452 958755466 93641625 685540959 21914811 388140425 227020102 991892143 526536398 725947627 456350500 558378724 736123650 788432408 372818935 529889771 54790827 625789372 573262296 869855200 30653071 593748556 154060360 645891998 285779919 691348091 980400522 981328440 532421620 744951382 860859359 969702956 971052211 976539081 103277149 505824739 812986797 820828566 337615893 360305449 315384864 406586393 605684141 693634130 722111844 825912408 649136844 768239144 889824981 939938513 613240793 865766599 84222709 617043807 489864088 520349137 862401019 887014796 512298787 994507382 275289060 472626718 407408579 922200836 682087040 686391894 732309401 742784868 47854020 227840037 391139060 392309839 104875046 687228558 969111156 990442171 48571806 946952118 915163772 999746664 135523710 734939420 378181784 571598013 23115505 374403780 134117796 324011726 919522095 936882232 471868419 817096839 816169656 978114224 648684427 776336815 954492247 970101892 748876996 824372601 161777852 680234485 965094222 997767257 375455272 496444278 670665349 779527779 765266333 923297349 562421611 825709771 488450139 998394228 801657133 878558614 894067895 984292262 558125081 875929305 867146765 985782345 532766897 659666025 393783657 474321929 291437896 419238490 346216254 507415001 768679351 918356165 614383862 978029737 604631219 704651543 671191149 883067235 285985905 852934007 351417278 604243829 7427363 386882271 666293564 732716497 871135997 903055703 201545129 917229814 202171697 399456018 935981712 985064211 950931758 954410947 406890164 625707512 831677527 922466878 653013339 911294291 957865110 962950156 468430318 841240227 299111116 396224964 974658097 982212042 89911214 269476952 518578326 754797345 394201174 988846849 296153757 670761286 744934725 952401917 534807561 581550445 108384884 229125518 768977573 846441270 972548852 986419287 55219893 292512758 31219826 551642498 104013646 395159061 362042288 830896138 812801180 917768475 354611002 520786505 955961711 980470723 146636295 303221276 46915130 324343090 165403437 646908239 683410638 849676863 735867490 777009793 733051013 837892566 618431387 769352336 866346865 924301855 394910624 487662912 690847738 978616612 867665906 958989069 863708269 929025931 282117957 900786006 155704979 651212481 694740846 952793676 863722586 868154861 135027953 425065194 469642500 553158832 276746358 945066679 299255182 728285896 434945090 719070125 272432155 617164911 427804301 472431538 230353431 847772619 983520665 990383669 930078948 957472130 758444827 878342423 915470520 925584026 840590899 936108842 571452921 936424709 996039836 997737431 224743858 841601289 804126004 868020195 766385248 923927718 947470227 997896611 906625050 919011852 190892070 903378780 195514672 470666894 862520063 959132838 393614307 684828795 791446783 859886933 157258944 887838443 232725093 817167765 214318434 254636937 817348801 904095532 530168185 704684532 742438797 998529702 435747815 838812748 758302069 906394500 964751212 993939542 383016986 922300022 924881527 984217230 157464953 246973174 909658422 935637777 9777953 976808373 953117219 994410008 164749509 785119611 248918060 362372319 474794601 931746144 808982339 869773821 625748512 977473475 111716101 388286217 861370705 941042771 765718816 881840839 951469472 958501086 29491751 609381441 606973528 715816899 482168232 648900628 438718475 640326431 946988783 947471708 756770178 991590663 493713986 511396162 619622255 767684790 878391657 995382275 16710878 968867191 991854259 993381261 154306471 823361021 660501590 752583695 40131436 627333390 72834289 101474548 184752145 548649428 370159877 863008811 916220731 998105447 309160718 856854364 691873377 951878196 964022325 970331880 918777423 946648316 262085457 842143972 444435301 744616224 683898212 735973414 157959998 697194017 61532085 252926463 430374801 998250255 687537587 889170011 444615003 788948280 619540144 654308163 659963831 732826897 316148531 936302383 269536033 594053204 494384681 532907319 25620291 951123748 103040997 766547331 130521114 757430170 39294211 976022872 238158636 735503574 334976234 602098289 313385825 813582894 947394362 974968369 447232087 592099002 911591991 995089601 183199176 584037495 119124803 779141642 303815257 409759547 397420179 813448321 812494756 926360268 604821549 869576294 578218218 761916116 958658935 986619822 31239138 342166870 594757346 984323929 541230993 957013611 198959876 621520107 68518167 404512679 413404013 897797219 797566789 916211253 964622942 993532321 929960812 946305819 568130472 574547176 412687174 985488341 362776501 624741615 295306629 955189791 792065213 816140776 646571945 726435941 750792487 917573143 281526636 390191130 263643296 876080832 532138003 628597197 77876848 714368825 627081487 765111148 446930530 476042996 210013843 399860115 338516069 846172521 643576209 896183947 853725286 976175695 586671933 787587313 55477176 529789551 696176354 983947659 981089580 984479816 633423801 734037180 617532107 888140554 207776892 967339370 626200507 850859442 59582506 720922995 774713026 898927063 986629584 988309721 923018580 936994179 215543126 615608794 464238593 855058118 494373102 611684222 734067417 830629801 654267437 822380686 652712595 903485599 838533570 996013876 560220083 761402994 30280399 428636486 349810130 537017576 24790646 172845625 913995869 986622473 830594870 925578083 864107199 959721396 409382342 796629797 833446900 920214045 821082476 915450390 948072580 966670533 633395484 785868515 312185215 658678414 739616333 931089725 739337295 901517275 951825638 970242848 68356750 265847959 223255031 586635485 870073561 890987946 602041010 719541055 649267952 716459258 369360977 491356316 697570907 809370337 446515581 913043030 954838175 959843889 130619553 700066251 843483853 927136463 869958824 968049677 806963852 915792943 4508604 829349946 38417760 188951163 689274210 940261108 896865759 923017484 393334273 899928737 520030366 654466465 691036103 977140135 426914430 660727416 2165275 591453831 792534702 832484467 780155235 922011800 582478784 999420153 187230814 558496165 193920995 726111908 308319858 665245948 748823146 782248615 104521511 137771137 826789711 878622301 856942023 918313269 473743299 748166301 607960467 839135302 446377030 899589614 412018170 808844947 504088098 562670577 973114990 997353888 785927957 875160563 708895624 721916566 459193205 840140125 886664067 906662643 613571311 659862827 582513982 604652730 395364426 832969872 839263637 962983818 290357637 521922927 937507125 960321215 208387803 221470629 593131015 662226032 884819950 956695675 783156149 993625155 777702638 873328487 604152463 938103989 351944158 980303508 648771221 800791362 314704277 659390685 320682911 607337235 156331171 542874097 286934037 299464667 546308219 969742070 326924908 414341001 227800557 238908588 710767861 836998680 470499962 792137799 654044526 878608029 396161765 688408411 534511470 762363273 253945726 312528089 65923457 540112396 870622735 997363605 319871394 490544421 641360070 782006202 654540636 973487732 807456827 876337118 877518079 997749908 93691379 909594036 169063009 303501508 750073360 964133259 311902872 650339705 58614596 973741805 139785991 403987321 888072964 892060334 222839923 957000333 399340382 864272788 428771849 875648379 359308205 912753281 45761393 308722670 6882664 118578514 30909778 138678870 38434686 914186271 318390208 652624383 172001579 647870473 760149876 787358611 269337228 584738679 439858525 575262471 31019072 582361340 931086969 964547914 807539253 826087473 29203836 968415472 250835376 798301646 649995042 689273797 806731987 847736633 825087726 968190207 130405775 436304204 981292733 982724213 242263 650810564 180362210 255311360 670939333 972912409 598179963 739376608 781495221 809177279 547958320 574628627 714814185 804999380 918208728 934089634 989960840 993626008 858045443 898340386 813390749 914135314 716474726 984352202 746818443 886114046 809559990 862631534 360465188 594271548 254359671 331556878 398992440 804797304 109732970 753094323 109159675 464313392 114142285 847146753 168802045 729831380 677423651 958961307 415819684 964156386 458079945 901374850 712537729 716105553 790610385 832453848 358182557 516768682 357671327 628477555 231297637 263890377 370845603 440475849 240503843 720704315 859342501 977422922 107680841 668247298 471807506 885220198 361779713 497863126 405865704 949697284 282594068 870562192 626709631 703829529 890309210 996897197 180445966 816386350 230595769 288001275 611002499 857629500 145616470 494887591 69115553 835111237 25264828 39587273 123513974 407101096 977905297 983501827 886742186 999346313 15297912 404280312 570828390 944841808 836950825 941943198 793585626 840117294 486700613 622271856 854360155 908879466 32351056 250923636 233960683 555556440 394787731 975263900 261721270 270887912 965951643 975843629 351161780 416006754 715280036 805496605 764820088 912316693 69374310 729968063 64983595 906337317 480079855 964053095 343599610 649118289 204518496 243850098 227651665 649291484 912955246 974647687 18942486 309700798 914321172 969517391 588367175 978088759 133883561 362177556 285397689 806401976 611627431 762741524 400965769 896781506 715147080 878003040 903096374 957508189 490104679 544721559 732775855 864829698 886201489 886830887 658586056 802697177 29474146 30991267 47470272 843747804 809992782 900241033 468078174 525788091 120576953 907645906 590791015 676991363 680314780 686906589 616377757 910289205 460296607 995685998 228594873 408748640 275081284 926095362 118463026 805237035 646044036 908016294 140356369 973809228 487551530 560614366 313588171 371463350 702675737 849198832 869161265 991402338 645195137 900828044 606752933 759761655 604562996 947348926 647631901 851025050 269975810 321159179 767081304 855557817 346227685 483681945 554735975 807631939 301624884 485507545 212061764 966531235 952253654 978685407 336863182 947808366 878109180 973335685 692776977 947147730 449303279 761299698 557886899 675195594 933563273 944849468 663930541 728824182 70527241 439417828 130370701 713506354 209878114 534816850 872184128 888924009 945409747 973780365 466327438 868232428 371991591 695720234 562974190 610682032 605988724 868051703 752203309 972138289 934549664 987234322 76046098 269000540 338149860 785984115 87715316 512346400 808087769 843223034 440482503 789592184 2756065 876747934 123810567 469566074 567554789 647358811 829552408 976106848 174440551 850507664 583048063 739091563 805460781 846251797 397802295 544405395 796033697 949792888 905895522 955131550 663924649 794360934 207624052 945870676 179963096 768511018 936556988 939210996 256715378 772588811 853558470 896087458 626395421 746326309 248005110 742296765 800735457 831614112 173396748 895874674 650650247 958057687 360818327 684996035 264100623 700343408 85071080 961728235 965434371 980535459 292846916 752406268 693997911 771136533 934038621 938622132 399858082 475416791 357693669 834914511 169760854 551467381 935691149 953203841 382020489 804076960 229008533 725853148 607559642 810172311 282988448 889050989 962682732 991102548 267961203 777490630 775805412 802154567 554870064 844776463 304717435 309951365 263291395 531438880 424975136 482639178 889814167 975924485 141166435 319549690 640070980 874307811 595180191 610633503 819785740 989129443 234148805 790701545 769286038 885270576 734259436 892533246 677997226 951873957 740057243 978131861 936698094 962683766 710603993 787307119 64091235 422750341 769155320 896853387 830245063 869322668 323340941 386653994 683167446 834973175 506914936 959195670 909231951 992019403 754553697 989146284 25992988 765596928 405176071 819060443 651342483 789959703 973805044 993436057 818065787 860845350 757711937 768736652 345404274 935896760 164446114 560379731 667835740 918521300 698390461 877655669 488714473 575775794 541474302 615440977 598846358 765720310 973562021 977223286 394326261 633159498 710473561 868392907 839369989 873958724 16917276 131357431 924900363 930964237 344272897 560058517 22521187 937851482 528915893 603288751 643471246 941399277 583210701 594579827 944213273 964845220 633323055 659219050 776941090 970883109 884645297 978751832 978385218 982287278 464099054 868497204 361344385 857304856 66507988 949299082 721965573 926749463 537500834 804466774 594844532 813891223 461626594 526929257 701630323 973208113 35875169 296468730 758589764 980656185 824967668 872072911 744765849 807463673 117602808 404253991 1845973 250233066 230546300 442893382 710911079 729784940 982876667 997033790 850727458 856793786 538559504 797096459 157972213 160913446 692407076 819917560 446371344 698994184 436774474 939214360 251580917 855650553 471288088 937628737 852368598 878128225 571138921 725882260 191743970 224752670 564589403 776959094 761791923 876425657 20755403 151804663 704831774 859827630 687570573 994221841 391375840 853477534 395507916 510758069 421438596 474114841 700709837 708722293 328280187 775326944 440494829 824524880 358717835 358726941 841332742 974652818 571182055 869073313 582196810 680111150 993726972 995670290 330766963 909802206 702562819 759440478 149878976 523418484 298640693 431622102 599719539 966377095 394565905 968917091 959893368 969730480 516922443 517395328 682533159 897483558 113159632 233534997 224190075 422266754 154847808 867941355 154858365 736154797 721332623 790069998 767010370 887972640 109054685 858583301 99878639 437461459 384390962 701701128 605675540 652896562 651306113 751076971 59248546 985844578 716278005 739705859 803900106 880896573 189573205 975841180 743660676 947661518 682293755 979090264 700502090 943008064 683363083 979475125 428815024 750333284 470908443 719413305 218577801 453609446 205617225 954670061 908077137 968213591 359971462 645082653 345458231 508433999 773914078 790372715 957049134 971577363 362796461 663748640 320455092 802292826 665575483 727640038 913643159 928198394 831007366 857699324 540865163 780332819 69150594 798406311 725090080 818809481 259399950 658586072 988297380 994780687 292360746 820743823 612678204 615834686 995808024 999248296 340335070 651690005 876440033 919936181 378465779 833512755 966848841 983063492 763029475 904631201 692473141 995105046 762764485 990834378 127989368 482543830 320389020 560285161 536201452 660248108 532807615 985574803 709253738 808890763 124032811 988949846 190782370 677652309 402830899 999438982 710149449 841207413 929010957 963667129 507183187 724261364 148103511 315148307 298096714 606523995 664991533 795457918 160859644 864098797 769973786 955200723 777211904 866069403 14782502 138862119 876481482 998422296 358826330 506539170 738230914 829958688 165256925 270703820 377508250 459471767 613230909 759043765 364910717 659753599 812292927 920726601 76623473 211357816 184898691 247775579 66743521 737607036 94847350 829734562 285798445 818137295 643266250 766677237 134829764 175109577 783411612 924298349 779485915 792009410 959273626 989325801 84252901 207462051 40138066 972952498 686924834 898432029 815976152 822996612 960568624 969156422 283195117 570114207 834191129 914912770 338026286 841486762 472537467 774504647 668184451 765541149 867330275 905612277 524946750 548214528 89432825 652567317 699985412 957848704 530773807 854045399 271233244 536783999 321120713 909503812 839030306 928172876 371911089 964483439 946446502 996415186 586413106 878916103 950179985 952328520 963220439 999787426 271146388 546923016 436542724 475411585 756117733 995912735 360211979 719490360 71113507 718070741 617424477 803305619 417048362 625392170 65878159 67562870 443000961 790558351 330263696 464543910 412788217 841242597 336701943 399649821 171246616 389597654 504847754 946841992 914673171 966301761 865449315 972107479 847766783 897884047 799517882 825034679 181043313 464930639 504821933 625945948 600503392 992395112 232103433 333707601 357534690 394382911 41220657 272984026 305910557 378419952 780048082 901637210 830282499 946815471 504191933 781692423 346008134 688149747 86700144 215447244 56923653 449856908 921196404 946794257 189723666 918985436 842939261 915867344 770093331 783071473 632480398 758534253 941647569 996927704 545603704 638933761 750260288 751988631 196661268 941483824 980862772 984233676 935049364 994929298 33301713 532621188 530063755 656084185 301027668 931693751 966214750 990923497 789650947 938251192 932592876 968868978 716267654 935681315 717378354 728797071 300783451 691763917 124119847 449711602 9125199 461082137 913453936 971971379 570598965 695088469 341735147 516929169 117965961 772224834 113843085 277793340 129930956 558200628 881226192 997180723 621008841 852326420 957856807 972898497 424138546 717802678 913426870 933242791 115070349 768833101 506957155 937623690 694905552 829345827 75302524 434176235 676829679 724637650 722723286 900518992 725450459 744870897 83717934 377121406 700140008 795935339 553231759 781100754 134711378 217177956 99493984 951940330 708407486 764128354 285587836 715202263 124019204 459794384 407705978 741580604 292785661 299222949 976196809 985975114 898923090 941749572 283069747 994247189 775041837 930283087 899569932 965431476 508310936 742461524 496004247 987115915 718292548 801210476 621057633 685568886 851149476 881763010 8495402 852295979 6254771 852939094 33324744 507105583 827777929 919372275 739682037 797235584 404302998 747694270 998599302 998977736 371644017 378979799 415538114 450068434 643162104 729460859 918279168 990611821 537864531 792231814 499201226 532446122 609244017 769409913 934891224 935665453 792017449 944893386 974780482 986150410 946988067 998943727 905068064 979254623 90068839 767892740 254231502 531993160 396050487 410041934 903855845 908784803 45286175 744703349 865330607 925482290 786490467 788584950 758122695 969187627 734946741 889799066 846758581 985440870 818367651 851835722 958940887 995570206 97375565 746808241 226832826 750585943 73638712 393045722 297661494 999219547 188687825 714837949 208605025 224607206 976672667 984680809 175750656 601029511 926637706 973481865 685651663 767782299 460464143 834447045 743709246 893719681 972414891 992874389 524997973 657418141 295047510 450951035 200895430 202722405 491309013 613357850 46731319 705701251 422126121 434734215 659830695 700821718 558522107 636754863 58413951 632200694 129880591 575290197 4697230 107322007 666346422 667386998 445309967 676159746 438186898 518230766 959538798 966013363 992169382 997262632 875214448 992051397 104613717 124114980 415979301 807566914 467229538 736796137 865188923 891035318 242719094 682188660 873949236 896983681 26915678 30673176 857136759 991104404 140526779 903468367 275043888 498747388 560731011 878880697 580331397 695853868 159443181 914784005 423739947 581355033 168523493 461243002 353862924 881618423 761681764 953370442 786117688 855962088 615540649 952800778 305004270 361915976 123467302 564430303 654586247 846070534 225592686 255641659 732245664 936900974 755923819 902138499 811306528 986444483 548699386 878747534 471416275 610691882 756010847 789038475 47461695 870704054 963158850 963227100 367745551 807150324 646303253 859442793 593473877 662289255 907451294 913680129 813707933 983328109 733854145 993769479 895997803 962123977 359688237 804858197 284548204 357267481 906149638 932422926 734610454 816489069 323294478 791581860 607990238 943030933 234245955 629915520 360226618 839533212 369241898 584827828 792418611 831196755 516217969 669906648 565249359 856582228 98118245 389424586 154042146 867162334 518643299 758143275 668498399 829794586 393915089 900802807 755955567 985727801 892363006 915928956 685873600 729731229 246411636 581645731 540909852 692238470 897747279 969956373 938999817 988175054 328136207 501008929 309738148 762731499 712193186 918977809 167694584 842000291 423608787 454941289 247326006 372392631 781202676 954155181 185476319 875349637 675600178 941672862 302821325 694233801 895918395 978842519 930761021 990319183 735348092 958871986 670331092 983180953 874756844 982524471 566365178 793658747 168875126 596671421 669962370 725731388 755532951 801805883 484573523 642745500 267567357 500646389 582457874 687869511 487323116 898192271 808604668 934577568 995565786 997941189 448618574 916179093 584788731 864949731 294016495 758964323 578025702 613663758 728466699 972292438 551056343 741447949 642942835 771060419 183171750 335765761 750019703 839540575 927203098 972123467 424571969 644250782 627701866 670454265 969139338 971854288 22848398 345697552 35309719 796339552 680751233 775984706 745486262 876177743 486418431 491323766 810760544 963187072 808272423 894883379 571438813 650003809 880749249 988516006 429246508 782498935 445401681 754674790 319035398 621849338 453976645 890592772 40481118 913306254 203519076 813359289 755235921 878767830 144652941 903023319 439771004 750188030 244592799 882582756 705770474 951320124 732848875 738044391 395827616 608840244 849676737 895991475 668320880 737220181 55784195 291360733 714554473 904140818 132251673 473901723 183510433 515385878 849369066 957129736 411835078 635876103 497163301 858336546 275171065 859919476 46362781 459127037 2153375 157191289 343552618 487167049 746913145 957807752 634633395 922960733 624179096 717133234 492648152 728837401 997534241 999409194 449504446 983111885 237885180 662943055 744418526 933414066 272493834 902678193 721768850 899476261 897728501 973549828 742007841 791569949 620808660 898801515 700033606 855651739 297147199 491849299 807545083 845444654 130425481 356771401 149220082 330816672 519027708 845732786 280504467 409314570 755792410 980756197 848267641 911536770 782047493 995932090 928971357 951065650 186522566 379353390 666085598 855887725 486436869 790573323 486083699 877414385 251301179 634451444 214142363 680635404 846445814 923768648 914595313 944542092 366754105 898937418 561588190 740047075 571959230 649480444 946086368 992334194 474386646 577893009 590658136 795226779 728354298 909859458 268368812 937098011 973317215 991451608 279135827 712421600 71505035 747802204 228746322 231240544 401215477 726516044 310163438 591233113 932086018 954113806 399192869 934927181 168992049 402925208 732945694 884608013 926864593 928539524 816878031 819627368 884334902 927137706 929692638 992455828 809014317 899503680 955960961 986560666 804957476 846849361 592068355 759590463 573213921 662535299 985314431 994195176 370335876 924046471 464160611 652665901 145655684 203681528 684187502 960985033 793742267 886074090 697362705 803987619 450440507 886622798 537801133 731668173 525267001 888665099 351177612 905205273 280223027 650447626 507136935 614642595 455553456 604076621 458111788 806201813 199886214 746355687 613133138 857309496 144003371 837560292 293802634 727775585 264836430 775567196 237254279 513800190 182950847 434655055 858589512 897942901 932958904 966792937 572685731 696925978 299353560 610987897 386692059 999077308 499479169 830909483 647904874 927183493 815783352 910644008 754996042 960809602 802530386 907104912 370807226 626523104 195694179 946591263 737941554 920151654 192423574 634549997 295556366 481403319 169895895 747084537 447738666 888219901 105422614 771480652 4285660 636951113 987562659 990656567 270753397 322613111 625862073 679216523 138805551 275539737 815795598 829699541 430146073 663773317 22377687 67994229 803512074 822790958 743994767 828256844 985760883 996858474 699606621 870453545 645003283 966532447 99122298 403431576 313367949 569044944 750584067 941827322 407833622 424159359 95821836 895357519 165583272 957203553 194406498 599638095 120324452 140748996 537126589 826728233 374128604 837990430 286822784 833543251 21307659 932816790 705387600 727520465 621378889 856851057 318600307 741217570 57727262 255676149 741442207 934461047 162195263 373540674 713458957 894764931 618649874 943745085 490700902 610887581 626350502 722317547 166099500 297453659 879032753 977087059 606508773 643424273 143501895 398583823 319876691 714001745 69336329 190936985 731267667 829581184 84722605 719798899 151551960 175002461 951617620 989317812 912560483 913523376 72968650 194371703 859096912 999221057 840375571 970808643 763893777 829054004 547507068 569271633 984381929 985659553 395028716 605355911 825504359 897821099 743412007 766180317 113901566 598043498 366058835 995453839 505583364 929694065 866129124 923913097 265827103 948612030 379081960 616252732 230302409 457816556 672885431 916637820 800488491 910766126 479099298 836740160 236009871 990153083 930043299 943855694 328234308 787647770 522956075 606333839 789428857 824234975 845470022 862497623 659920077 709466217 821995685 860394549 745702219 944231009 130655289 338725553 967868417 986536265 683435576 831311824 985616373 991698997 776667766 819436618 757003700 892605633 360612245 545466571 587315207 685409617 968649519 969557979 632065599 942266446 196051077 392432255 461131123 843826912 394302087 757840412 956495300 992890245 93713108 523358112 44857650 670004431 425231017 920810974 892735224 933355263 490279126 825421478 205723311 718695692 730106109 836118416 902739964 934910139 31012668 863277655 82097569 438875180 789017115 925996296 616153092 709569538 894076694 953967384 445528327 840830050 55243730 691895366 407960653 724858657 461240155 818787363 649282186 878567999 312732907 418976925 425434189 864479246 861656270 975930230 438832109 648153165 426117743 913635819 832848581 859078607 268837769 807137951 577091649 809822172 449523023 841773649 805079309 876869451 620035069 669251325 621300649 692299218 140789373 235123374 844878932 890262240 171999385 745107262 823741794 841265429 478385920 618663864 801706719 855340839 197684257 341762638 709626982 807948566 379356825 502678318 859822601 978031571 264844142 974340194 101864203 161688285 785315614 843803931 286655740 389443149 598218842 843003192 317448803 992905179 401058566 875353093 388400802 804794897 661468751 678009579 230596250 695845548 22505736 810519538 1471514 194088999 267230223 826396952 6147622 376631569 418126261 538922875 863175734 882545271 773907225 874549912 248408283 695357786 285524050 985653607 292651904 926813114 206769052 729801843 723452476 867279686 333319837 910301485 310760908 880043974 427741617 717608345 968450968 995274355 897938740 988751794 630649269 951359138 610426076 737183026 610678122 821749691 364632084 591519279 206964334 713456450 804446210 968672140 398660140 728753162 643597712 937795049 692729634 774547879 159177599 365211227 260871616 336830960 454338547 535856473 789969817 999168624 292116143 565404630 887974961 982005428 551492327 577020659 590265478 627566222 249451018 582581457 297788648 395629890 386598038 806595369 679878689 768380533 121344815 797316134 280053911 306546363 208150138 728057425 862059553 996987182 257069182 600618901 343172813 931288359 425797876 654740897 743727549 816357852 481083511 650336087 326318151 915319627 849871594 863670717 532744180 951212143 677815295 793431773 485148100 937687354 321489338 352051103 540364473 709494350 490239797 690322796 701740573 859792288 309624641 551258334 900278362 995199942 273167618 795757715 600248573 816607506 657651895 737542941 160035435 977718665 816497944 867669746 310988754 885405690 845686905 916586173 150970252 566843784 904544427 922740504 649835890 953260676 74948055 685432480 795698825 834003466 698455012 711863476 14796347 245863571 446626171 939884448 284413945 864029542 649307677 737999010 373393102 742948218 276992449 936301480 948163025 973954010 699260269 770851874 967438452 999232822 971699246 987090839 292533609 353107632 698655437 741781722 494180829 684739119 874653756 967591773 390229333 611342559 342918680 650692332 598756541 830527354 880390731 882322376 211613176 466169676 396078912 476035893 767959860 957277176 490728009 539348209 646534648 911770043 91106085 771230715 514025904 941595850 514555933 784396187 912749134 967013966 923085636 999451859 922725115 928303338 488038162 663463971 610444502 641658809 689786095 968438755 215753951 567932394 40856531 775505225 89952793 392696677 239865711 879708435 13187684 991442420 966328414 993032966 773516855 981845832 685782409 912348921 87436872 873317298 653265218 813473918 982887137 991211752 660233025 897948714 441139997 887516913 447797401 977187636 966811763 998467537 177357351 438666799 899801685 906622102 737476731 935556997 795781790 972461303 654369201 899096773 323630851 531874775 578957512 934344526 830311527 988392416 982167505 982549411 902184525 956280817 57973426 535163220 119418334 160621716 829093666 896770622 511366849 598946979 909531660 931528332 213255917 268816473 917130793 948364537 381105555 719618450 519941410 729090178 738690612 773424561 991704302 994665715 948890848 995969028 344705454 443384251 161525804 674636727 279555136 298909267 79653405 604574467 424146055 782939387 190527738 666592817 163586500 713944678 396241631 745389719 246234392 927930146 654944897 929510328 872438386 990479267 644529982 743130551 170335968 676671409 368186733 910918544 925527718 986440262 121401367 811753420 446900619 454339674 378736388 819380654 866409943 971450447 645159490 673248398 721268193 815724025 822163934 943915357 817601436 837166101 442163804 532315204 473909660 872204801 194786724 485215317 429122359 828047555 380056301 595983521 801281120 917013872 883661943 993450123 249687424 396274072 278915684 583463822 117508807 327874903 492140141 686982538 766724837 931752172 425165959 645019162 741336376 770749260 877232085 916792441 409835806 723794595 258345575 482044215 331522032 563127254 567575692 713673312 257824622 893670343 694822922 855865486 635313566 940464698 768378493 908256000 825178498 832198044 617215528 891011257 297350066 406239549 280364671 621143518 242589726 361977150 61069514 112596875 401937485 597707714 422887254 606311537 225449716 920721569 857565569 867479275 374444345 736351548 262922390 936067898 771114534 964754625 872213966 957447466 988666338 997174283 409775767 811711422 806590761 988444187 914643826 937641851 893445776 899605838 978917080 996169600 524136986 682810973 734886192 842180090 530381825 703379082 448079435 801236035 652898353 813772017 563760035 900081216 751311785 821868779 373741620 561867126 496958501 902987018 982027988 990256425 967781804 978733760 588286841 823248119 651033462 784779056 512468024 874443884 315582767 987000055 11007527 275084322 743737371 985985177 658505441 717301314 31662756 150801098 826047755 948641268 941565444 941637428 787819286 922897561 882147729 933468384 2431986 282143927 733672650 910297831 934460811 963441484 170021098 523145836 237062593 949207690 794342773 981673552 165836993 480621062 106747644 966934452 824504006 894106035 766636738 885446883 193403957 586888900 102385234 760293741 575505597 893679132 434537432 626417047 183358058 810291717 836247675 995768181 259360801 499537417 519017174 549120201 890524534 942159253 226047724 696330715 668144490 691223078 414685249 998553823 554114029 786178513 474389973 583138188 660379266 796860799 11275792 574245065 558236647 992712174 270729691 915239212 872133088 937664700 949958985 963859350 433873690 615411241 568155564 679324163 603861626 618007019 683036029 865543033 94055182 947973940 942513745 983309162 125834208 534161628 478571231 833103598 151075457 648501449 139626887 867781130 464542682 973842685 717237476 844912927 208910893 906753671 971630754 971641566 662546083 973326339 36698945 182060286 486808847 877581415 479131736 685590156 127899541 631135639 828387673 962622779 280343416 782612868 592862683 627077330 530342681 932853232 546867222 559147210 607882374 713453690 936710182 981386352 351573158 995189526 538194788 656187377 106581331 272133282 701658173 795112166 712530918 738608606 877044848 957967784 748178708 935614475 199592226 511062369 210422680 289475877 868800267 998306774 865853304 895776575 334067171 516470014 308554107 643519018 110257232 351988909 161817751 754236405 552888775 971447770 717586789 933234810 542035427 976490775 286381773 543267278 657014791 772370509 182272345 438640095 505910658 867155870 311306587 770050889 293795805 894946398 174664532 339445244 636707622 844889575 479351479 570009161 907836360 915219095 549172195 594928198 953610034 988192312 484926519 978108735 621318046 852201894 550340715 942157690 732778821 837444357 559277092 852571647 841748851 843121844 993047159 993139168 721355906 915899747 925595869 938246886 632884559 794461897 467923105 927800169 658238537 820552264 939004818 976029537 336363690 434229940 770237315 840859144 328830963 599318101 275030760 728238045 816261702 942362192 821618998 852660644 886792839 987503283 69785649 731908477 237104877 416678480 950880905 987259506 179263711 898732638 858139829 921992106 465820285 857747172 960382296 967526792 156268643 552744746 88486343 670562978 241229782 949902629 419301225 543893975 192173910 343568986 648511434 749860852 163778250 327073705 133611596 676844261 758990270 890380864 175795692 681544583 227893211 232507968 105763634 583644586 616994294 951712817 553712550 714750545 511391518 956961819 451059710 787313592 250559898 927991815 336826657 804413563 957153138 960370650 949289826 991952279 704007633 720467314 120536267 457933546 395107571 780186744 341974061 910819661 969216712 998328337 418115677 930074860 631238667 856704858 719061596 768687477 389486712 858445911 17465605 938208862 310085754 756218372 3761550 51764520 870917517 907942265 767531236 850874908 532248659 534296977 14939595 633619997 61922741 196536600 165319655 798177516 191911849 826282698 595003704 990982745 97527216 552961584 959546856 965245260 407315837 572282916 949971899 981365479 495207888 517618206 73786087 945889387 302939970 827460692 83335358 460690286 927056073 972980741 929296736 955277233 68428802 143606612 156177032 354453053 39472628 489198255 486787344 564787765 6972929 716854830 157212256 440312639 291444114 635821510 522260750 595242489 194898484 595170369 337913165 838038790 583452827 933960734 934400630 979161548 294108397 549111484 949206938 976007163 849855667 946837372 318140279 955081476 797625817 880814475 874125759 924165957 609204107 764584512 659898466 700979677 371841802 740882488 203272313 931271777 431377123 973208369 746154990 763177111 455273003 485227448 540546867 929669355 895787646 989855065 468340311 586250739 980037581 988543782 309813369 825039358 381981346 937948236 937571552 978000826 458941207 667211766 665862215 893651415 908126195 936835476 790390619 971409496 417141757 638841063 909849590 996036535 116033705 264689606 327467865 907313392 194659102 871217685 262468013 799371791 120951904 613703881 104666860 841626457 874414612 887894555 242986498 473858950 160480887 646475429 603007540 697509380 300959735 969650601 480033924 910488677 459810610 691633349 372025773 943417195 718093481 757901228 787670361 850648367 540608984 622062277 633682082 704432067 92377216 438379036 595477439 804100962 412475508 832619253 424321147 942209902 594664138 794317314 130459730 964483015 71610325 934779717 605545118 661825069 492688352 884926768 76358433 346033769 263667958 819791832 749310100 952749608 853225267 860133354 767690155 827454079 449074370 997164427 473532576 858284048 524794673 770681352 163194478 638763067 607639043 730128877 848456633 903835932 259822271 769347974 878483585 923109192 931139257 956101889 646171863 756384608 782247665 946603707 539952930 772901214 495189794 573875144 160633945 530162876 727569379 883883774 760168290 950984264 312825495 903941636 202492466 301630978 569970887 862602189 525126099 851613535 460611403 889274911 969805741 984401860 482432222 642641904 921573131 985250680 783443867 905468131 318290789 379667233 27682106 897665335 645302276 651832379 903420187 949532569 367414622 755369383 383713026 845375358 551929114 708438220 280268394 937291460 779874140 811898120 437932365 713568979 766342988 867062554 37760797 42855071 165363668 873031194 879115244 932227902 434909240 666569415 353911868 881024807 303483757 416969390 77708164 349738703 520347850 913919429 759364472 822448750 284146351 757881917 556542529 699651809 619532319 712173380 986441404 996094513 775191102 908008909 641584729 696270663 741358266 775396767 582238257 654190515 17317140 113793610 930265315 963382785 538415948 675585585 18202246 419424374 892303241 928566677 255864042 594624256 230347192 937204158 666734010 932746397 404693523 471270399 506466583 841742039 429517155 949718855 321974769 964211403 550459587 976798381 674790329 707705601 196864422 898139627 156440224 817736329 227940296 648510101 998689552 999809396 628161108 964538599 417342560 816274199 648587159 834027552 846903354 904804342 484689502 755137972 950853196 969679851 972514814 990365702 413517598 746089929 633785650 996661319 40168993 369440232 837291724 996127824 308190723 613824934 474767862 489270055 340009680 958866180 326903643 736324649 231831002 580711024 368505639 869215359 721806638 901557031 307679678 724586279 388778693 691375550 540096616 739528759 542238433 888706972 549334828 578416159 254704932 999126523 380501810 964825057 575970927 617543201 710509078 948359263 625536378 899988197 36156270 188050997 778545418 848552706 844515064 942072799 975981100 989431449 661209019 676850155 175849237 929136879 711328905 774693005 385346954 818664507 319907207 622816686 735073158 793250720 217370770 460029941 425296417 685254725 836403345 867760701 767635033 820562245 447021352 539711106 190933696 491183267 493349917 619287389 689694980 942552528 658287836 675554103 503223657 880301683 998356005 999695886 55715918 794908604 283939188 338007016 796540497 913853806 979115411 986759917 69039323 726514384 791336552 812384973 732059297 819423388 628959048 887050632 715180501 876099497 899913448 962965957 927806463 970552303 414814371 850858835 706680305 960187163 886819575 903674770 304606320 513781100 787204480 912268436 258753456 263430803 516651187 543560408 685604162 926369556 432460232 553344946 660279348 775111890 104979317 185683521 187208142 479650692 945587558 962181957 44907311 601625574 248074160 382378333 290289358 375202940 680304905 938625003 248119823 488673403 705587049 939070309 368346492 848306169 55759857 570321614 421795858 550169734 826469972 867468160 570225532 609701081 329815209 796139605 811572041 891741871 827980129 898688667 221124686 815224321 363783849 849251834 477696275 858437479 144692519 775618082 471634255 736149350 133470474 605661801 723804311 807022212 635542412 886864102 743553571 917143139 451628190 956679868 358035830 387965134 236513104 359973173 980990876 993033164 190283387 668829011 461477460 480687409 888914209 975666089 869799542 936177864 684224259 727160811 846176815 929807461 166631007 873053941 655617744 835305923 156389177 271610236 195593748 699935326 104365165 431880753 345018054 999433973 434188214 722518144 66251589 500256000 812621487 830279256 202237605 815918290 790695088 879014449 953654008 991860979 155999299 402131802 346021039 407560957 900053714 915307972 894825246 946675794 448511584 865772174 16905293 377581446 974727556 992451102 374219101 627179214 493521011 862715094 648018786 700983144 683879936 778243950 67204696 907445540 846198611 957582884 943111602 969296154 977499432 985213648 442571183 501106651 331607356 645723242 850437289 856989348 124285276 355627358 446966508 607124004 858465372 950257346 952115952 991045411 108741026 879543000 353370027 400217806 824881641 851614787 142135829 962868662 246824200 846460535 22152616 369684806 133956856 705926534 877316255 897628761 895396474 955156054 346713961 601638087 541455791 874409515 625928708 871685417 40254779 184875672 983736226 994013716 486010352 693328373 246319547 899402010 285896518 481605413 82487079 596148841 269828720 821069228 583748067 979088087 844189740 985656084 397555542 438872539 550369402 590806939 257459929 370164036 104176224 776701063 573435546 815115277 404081317 666857030 620196097 743490078 244562629 588600031 130189585 955042020 392266510 752311964 660850145 866739936 178479262 608434295 431506575 576864639 152014848 791233414 5153745 649978251 82622858 323869922 211888291 485633644 861160846 864160427 659499003 776390283 969651508 982682887 551386607 593111063 742620180 837876600 188521321 645734926 550559513 710172355 154567164 452839381 425943768 849860678 604915976 900655864 177993098 811186681 271825294 568804777 885837268 901382127 224985827 585282954 701398794 967349680 972333361 998129641 647134227 895335823 440935768 850922004 999227999 999385868 244964963 413525690 257090492 757477923 326511168 729113576 482564133 848487965 753602891 975297460 530201335 661879978 823555760 996734938 119033903 496762860 129451565 927458210 390803307 829665082 977871121 978239524 907257925 939179582 153741891 594051559 239579465 996905047 146694755 544230528 552428663 914120552 109142324 121703963 999840863 999886835 477440014 541253952 791461991 883040230 71414662 907931647 297820098 871396773 133794597 354396996 475576797 888824181 177351583 393409393 602058438 643575685 305757153 957858864 326758072 984753547 962760464 989497284 408797613 997658835 104105665 962474921 549386239 551338572 768961415 868447782 676347083 856926171 203391901 967566534 238199965 680387296 424656528 827314122 138918221 892842010 57939679 220339025 254977896 955990596 524636653 926934349 444951228 933457533 59886677 708890489 479930222 499812631 186066473 207582016 72105665 452630448 605279415 744724892 307985576 376912589 279652611 280540926 990752063 998871742 477306717 935757722 415912786 538319946 864210136 909708643 333638679 971494717 508395201 896217775 727166932 938228745 310291114 788514214 347759343 349282271 445509646 645833056 406055932 642118961 211903455 401046910 199411684 389002960 650405525 740166641 144658715 191945329 915675441 954492112 204259542 709472355 617842584 746331885 767925637 855972615 396796283 649245572 117662468 854572932 479327191 710822409 784864973 883156459 907053994 910684705 494036907 723994498 362522830 366824852 400528556 829045445 153896703 477628330 703734715 996452512 732876658 765349511 307370423 758038378 669707689 932379141 879333707 960332479 264564886 786316152 956531003 993807162 675572763 992058749 858858040 864379343 264996157 777082510 6953405 329790033 659930568 953784310 155570529 745397508 473471099 801188497 213898613 824551581 401567685 667223271 537620648 914413502 42370696 361318705 121316801 943193497 233526592 987793487 266739679 529110397 253692438 269514715 935293648 940077718 999517871 999555999 886615841 921522555 354865897 672197984 546065008 676816295 857498644 877910904 334161581 358029607 436536887 439652932 915291110 917364690 826580123 849900022 48215765 464668568 827106920 917592372 947138381 947598135 42711386 503729572 70776330 783400020 751055478 848691730 186312830 406447679 51158990 698964705 297210519 303473458 158807147 711143807 805075566 904674237 350062688 885997953 523405309 844873701 320962255 561758745 770640356 774820525 868153683 957728993 717155237 911414891 958061797 969933064 505764466 532020996 909149210 916479582 472678778 957370587 309090440 873029099 59043599 982290750 596307004 806374601 757604051 810270183 444644807 531329542 658751816 815498068 414053938 990591998 398924713 693226322 590803286 961005714 174411242 616463058 783356349 788389791 160813718 612876644 784479815 832922281 59359753 545844460 708628143 999255560 6141086 260339863 936986956 966283948 812695857 902587981 903411861 973193033 116651556 879774293 284131615 801488647 680597228 945328859 202216205 825006871 336239967 660377950 369751347 825447649 440166667 738197917 753593520 855888630 395829135 733651307 708758324 997396097 69025597 848304998 301729352 526303645 370315998 966483913 318145896 942158603 814381244 904468404 367846005 681304273 799922647 972989028 343758337 974254386 600919139 604705344 738758840 784023786 615659992 947532635 785367531 924391258 387320390 574795971 738166845 752178726 702260084 862257205 157809948 353019263 907682533 962703232 852306476 981708055 412363319 480077351 41578694 236105804 115747371 185779508 887293849 941485447 422692405 464352667 917362584 987104817 590636265 762997470 237194637 438587057 564973732 757171377 549006541 958317190 913724104 983986814 785327387 948207253 246799310 575543005 699783498 819748586 651500317 940632625 506464486 658129148 690529945 999832071 278360970 462533969 950318890 978792435 404643012 566363341 81617007 547425545 31295621 872352552 789610782 970125155 635345565 999364844 135562928 383430904 495222451 775425802 949001673 949841182 364346786 862668625 778329307 852279874 321486572 851447460 888863133 923999476 857949750 880936427 663887317 678814182 862645842 941958256 217313660 627618482 221925566 873748615 379941178 889707114 378179181 624639031 121827406 490715924 899427646 932254871 744741540 999981050 326611866 681333807 912595631 922566621 509033091 807038540 267734575 831185435 882423040 990001627 173875792 728930248 133017248 400498747 164502368 417039402 562878384 841248564 733983633 769625107 814885617 904628592 776410948 926941240 36467540 948655632 85892422 698608320 131804045 672916169 421363276 712117863 828892510 980285510 16101325 98791648 106912687 216711388 466125225 846332200 95060740 276631414 556481069 623464151 291232623 356436717 796579459 947004098 381900907 506260323 609649030 657353065 864492441 926430536 770915002 838940949 493644335 806639991 287069657 828577159 52131329 941568030 128472 246146461 708356765 814445497 495271114 935426801 777203300 925707824 317495164 543327132 910727465 928904585 318857663 720316592 989899298 995263375 309842151 708369788 643530217 719002789 558942627 778862381 778554876 980796189 361203376 497475763 651268801 665686124 60166171 208189192 590697604 701973745 65548938 729893751 585612959 779052153 857778324 934402013 945003968 980909537 327166833 888801925 128589454 423088484 623763110 910643086 873355165 873863025 652196567 910467125 389818964 672521227 464717535 836845360 345103658 838137071 827061137 866476984 534240472 572380947 39092384 421707320 617558610 909949876 562498411 604099813 734561793 905198444 741159344 764874481 37381118 104429132 403515273 887484163 802088395 821871080 610474470 846760350 933231810 954878962 833039115 850045942 750948193 848837254 888608831 968707773 657994743 765859213 425085783 823745472 827889944 880025141 992882431 999678641 263062977 336641400 35131269 426434846 506899308 649458825 905444732 975939310 243576246 774118958 269318056 755107443 271589317 612425886 949257705 988267942 371655672 542237801 810883512 852184064 134887465 679390161 405069995 495012949 91418365 469366674 749913348 798212438 308819506 416883451 58242035 982124764 148819524 315263153 847119134 989846259 736757947 868062453 452567753 510592592 705190986 821510380 616421228 623452397 510586358 671989341 829997226 904013893 200988181 705791148 499686188 949091050 266670067 780847538 457319324 929163987 827740508 874684182 132059225 186817338 282859918 771079735 469443359 906250549 350802207 524568177 253132956 276588875 30773269 677957521 474069831 933113768 872509546 884804606 521952154 566503057 276631310 277812685 210677197 425270811 748016099 786125066 326862829 336069876 299037823 982566294 415583538 794558325 28340817 484079297 858878837 993635366 731434833 981212040 857137889 926583131 735847700 771810250 298545603 419150161 726101904 885075008 125663496 271207884 552782062 649773872 948605962 954807195 594541966 687913566 537470731 721455313 804955866 938845345 953291729 979757685 639137875 874444721 973715210 998506082 21064720 246167672 704396857 817362473 255225409 799789236 755696324 783523453 947174564 955533832 655265101 979362182 538378133 738554075 481487057 521178533 801585647 818169642 262604652 750921607 43513186 870909474 261318334 347729422 569963887 677471733 475200112 547399175 427576351 965108892 595569379 990517785 221466931 456160262 43917363 180094850 315011454 952925539 809257165 879904533 205484790 904587451 680703400 808639094 316324076 410959592 727403673 995225180 830907149 949106732 91225303 407733640 505666428 873591532 925948595 954080119 99242958 502454491 983649940 987301619 207209170 351163882 347603012 890443856 454409350 787554186 406498418 464389190 109965566 514043475 200119482 880297691 217418900 294490208 160955976 759955824 577924563 833735959 938100845 976753701 417790611 935010056 766085015 868011241 126069010 939393052 819518443 907618636 644731967 954068946 302865045 582120515 200889394 549835294 892846519 968709716 971013830 975245983 854792690 992777146 11285808 308300056 424128384 708693707 458498616 656814952 142030147 517251605 535199557 931275833 474383877 535722020 986897351 995517294 776134046 867121822 802089936 991796771 819389068 967863808 160900003 994881247 514170181 856944864 377783255 877045083 139270237 872177934 464379486 563842892 199649437 273037325 840297226 982520748 321020985 799243151 134736219 756011955 496982457 857753169 40374793 442232763 764608463 810847170 410430427 636007984 524771318 729316419 331761258 767319876 180101049 185516356 998053270 999994406 665177703 906063292 620311359 792863386 161199500 297634678 829107618 935024963 654979088 927858072 815871668 940222925 568470362 869581771 28033796 332106625 62638575 735505930 230432063 457168411 26345521 476896177 669516340 869114841 806967363 956874597 600007019 605398964 726268632 780113098 72480385 447910744 117539044 737537069 647680288 851436881 903391692 943004636 55674525 453697841 533565935 990546237 10160436 620207404 862918553 912707795 647680827 912179906 617906999 979459248 350911552 765501862 811421164 955527850 887606247 963579724 638878004 843935384 816304625 821203898 559157352 938096336 51167515 734635914 573059866 955053064 900538162 903105412 946264885 980863858 2669914 31438450 220234701 950057461 34299283 570387937 331291044 966423143 33518197 600075515 847568927 970659644 222376103 320630805 505490073 977254376 604767328 827477291 724616790 934694617 59021545 184011310 897901986 941317040 298646142 886518894 730334688 832127554 776227259 915482556 347083808 415747102 565903736 816052074 876109876 963371413 764031901 837899837 707891501 899794389 32335849 991909415 770861284 798798142 495820692 907701446 129836406 591229838 873438603 997816092 22902352 257110610 127832190 883286222 403315953 984798867 260773696 410870108 357604972 399785041 73418760 719852274 900090981 941294721 149446098 783245777 592465575 675414754 194869476 472178511 986438121 995576664 61464509 918864533 754329728 861110829 953076573 962771841 257194928 411117582 940060722 980018306 553932139 890595419 896659744 965885408 298599772 579928130 491022171 939847104 724256078 958616122 217090676 277825389 506555328 609947629 116802644 899359780 670775553 783459192 620511902 636228292 682750646 855629747 236374184 694060118 347612080 942220804 972948886 994302876 679698762 928951247 524260773 557790080 312970300 414282736 222352045 678167955 467537887 676397085 852844803 998919136 752064365 771576096 215590496 509373530 662676787 884901559 195765317 623384993 701978709 732611363 568982270 569921571 726655240 862574269 385910636 866596588 565779505 879713867 218346739 933685719 236079706 536930800 406601709 438726441 344390541 722469019 312235983 446340327 612851782 907437563 534579263 889249519 781069126 927296398 101054359 244199539 869092712 948401586 443372562 746492722 72319526 345622891 15313657 394567072 834512690 945576829 731449672 763719348 396524777 419446953 365189951 626985198 114382101 359976028 513354302 854112096 456831600 923184776 7319875 457368174 918206011 930119223 501422327 601519376 463291091 717637345 244391652 285154443 658320508 889295851 931472398 950073520 836566226 959430361 368337596 676103088 997064770 997978986 334178855 346961603 314399576 672531092 982285531 992608604 597202056 875805369 553977046 750228488 358773506 484168177 650873317 969767661 261593180 465298481 577585468 950922008 979062148 993437836 892226363 978084974 327514257 626581144 858630363 943701926 334171375 351503661 694806688 844765113 373916876 426519135 940846756 948901182 76092919 252146010 679339358 995709230 66634514 948397324 378674854 525406029 198874692 710307615 312778243 849595166 468303275 612744477 217426054 275531430 445650419 708388325 261092149 538491165 890608153 966384530 436912917 946545798 531235661 821610692 349287033 917326807 25707627 140973099 942212616 962880093 836140521 884453327 950988577 996471764 611096033 923649441 813939006 945098640 695355959 777832102 561563636 846589226 324520851 755888532 472061096 477980106 427627878 993706587 141952893 291377005 242485130 364595524 727166403 930568111 314949968 499889552 792202364 829129479 834958543 944568703 161660851 190072661 362080730 372737889 60030699 563230149 964333996 978020990 627256646 795168159 196500796 709817790 964663444 986954194 495747040 619464902 741895020 850004602 321343851 987389164 982032127 995335594 850546257 900918922 850801301 884069313 994139048 996292974 843727052 851726312 791173099 835508639 157305501 563038373 650759929 832487213 149318082 734859848 864352697 989161321 631002768 992978125 956679480 986242484 137826451 153004547 188408490 980649171 55116753 539056694 784833901 977541890 858233556 902627344 942937611 971449354 401602411 864106423 597531859 631888886 150679580 773952543 719956951 973161679 891100039 897934697 757129428 996639244 647987448 778181274 660563871 759005468 205952919 731594907 485648468 702430167 554237332 801616545 791865133 843558026 376213384 406078679 636050379 716112311 430781836 830974091 147996627 407858219 875045599 919557768 945731212 972429698 329842544 974543807 987225221 988276758 936732562 983178332 660168142 683636469 517572588 919203362 506343846 797260944 293445103 316280505 971127485 978134554 45163826 512502539 755640295 953447474 804889979 810315632 375415856 630911261 602982007 780396073 856843106 878146019 241108170 752428259 342438987 703897740 699142752 921041031 326019167 903858100 99892477 860854434 303667417 569166252 268308292 997177433 746729083 862607592 787026743 872528103 494177799 705574156 523873291 768227079 87904352 205604025 524364400 729100902 412114343 557109973 486536989 820596339 109013838 523196677 231066962 353675673 519026707 888714281 824596662 910917726 87247067 177245882 927054239 968506273 510728754 900769325 985977649 994027575 787252520 865144070 564368008 841033785 693980663 704808186 746939675 774104938 548468858 646643280 66914913 567256866 244074670 884645011 602515325 857210722 257706260 439642075 254437261 261869988 849809757 907762934 258911200 803536559 477483756 682901102 469905087 658291701 282488445 431833111 759371384 814513376 618569497 695435109 130175652 208946588 104556525 718224725 595896204 673471253 297985647 818714036 173472881 308925849 489986209 738232369 490111243 829171465 411202794 925032272 219713010 308734518 757941836 975780352 950837393 955533978 867014298 871222340 927177102 978583085 291181131 372869162 958706415 977877192 389794368 418413652 103081658 937271697 316661376 745144504 848095241 904536422 600086639 811597300 237857470 575000244 933838150 943686043 740724485 793267728 643175224 791968199 198174865 653126189 761879586 914462057 817586264 948843106 108457761 661499895 216933040 401135200 573831184 682247416 621729481 749510458 607152829 880519589 834287872 990202030 655616873 999111564 946161005 951457019 168393134 970408774 963428012 968103124 345449480 990408000 605532919 631096883 646079738 718685074 945823635 955437479 218481765 725746768 470464925 554379643 561775236 601525874 850476960 992536910 660917448 674196158 178642057 181019303 346474754 374906172 940944323 950278014 79825143 129638697 114963292 704142986 576133899 783819900 316863124 658356765 32171341 710754836 322057250 516448597 934573132 958334501 537197790 985754902 733766628 940903074 570085591 614561138 683158296 753417265 82610641 749561468 103768298 957676734 602658155 671607269 96329149 167485895 615853443 856588084 442363784 931377243 273297840 943393992 130374927 795832885 819779676 896414151 100677071 622211671 130134370 473624176 728080256 752370170 224642329 624442398 801668783 865797439 946179544 969394348 932140111 955487246 336546197 847952479 733893066 739700034 496235010 630103412 186763372 990781391 578724294 904913020 13625365 118350131 822968245 858985654 817401729 877582891 112819570 895658573 607652290 906269287 394957529 593646568 823353567 939098435 92374082 554386223 61738742 336563420 83969396 954426315 295377734 818804935 787874317 886057058 163177974 959287423 297086680 859819413 613430784 976562174 2069180 743792490 954131262 956000031 463288985 722512189 770828445 829141325 144897955 973254643 78866465 226484187 618198911 716276086 598772307 731280838 939395674 962160638 462800390 665235234 959365936 997532742 749678805 937689194 602372197 828830694 564494567 984574307 881400928 905118852 333912973 725015599 768282727 913928444 2827850 57782778 52373814 737595434 71636855 915584926 708315153 919661071 773764676 951134315 573784729 965107246 304428726 872853205 755170580 793259475 660482435 714239969 85938418 332777832 946856286 970687779 253415129 810341810 745725941 991810229 814505307 937350314 794611389 803648060 579115801 756030497 732174319 952850901 763183970 926277930 884784236 985557665 345727382 637745193 647332923 860684852 570354017 967875963 43078975 737951956 970157896 987316592 871582464 943679587 445506955 709889720 655362842 826124760 173951179 773237682 661328734 894578875 531769338 911127990 627204685 675197190 947002974 995877492 659392710 729929773 928296760 964429935 298600496 833515776 681504853 732117033 392960028 483288352 285731798 347107389 24065043 104310723 271418383 315473129 54841584 758933583 367523053 900429462 925693384 979520421 199766465 792422673 415006468 771642549 651536330 912095251 84288739 559302746 29270677 475517743 201010457 602987592 698854183 764197668 288357788 328937239 193558481 265993176 727310434 964597472 700863564 898676576 748998955 858545848 393359806 968006538 6062266 217546389 234642589 403993040 198764895 907727266 677308514 679029793 140421328 772719027 216826468 633075150 564957263 907506644 943604107 977556609 549685512 696674648 179429177 732109783 185985279 255911465 635189028 720683988 530436676 767593584 539962940 656973898 120736418 363114380 12565972 805849504 176522315 414089172 405316472 881098647 464451104 835125033 250082876 951182114 375193264 441760822 367639438 549717691 449873968 664204074 171562421 562067241 785984278 799554384 872129573 931707319 134672522 749924190 299937888 984188969 900295129 957934581 768439868 806995507 706082942 938088952 601836613 692399985 215179943 349279034 770711067 965855283 11214207 848268094 300828360 724870383 728746049 941428915 119412524 953985409 562803867 957597001 401222714 894439766 140934184 931023292 632878790 644625883 345733239 967993108 760928676 784584985 340720407 678301631 43750468 97505658 877116859 965085434 279101692 995748679 928990983 981983650 887626790 985596063 916116922 975580136 3885796 863815228 819311553 978315380 724804880 977112375 420893813 723389429 118091913 751111864 438013096 850815723 654387290 894099801 37365471 660577274 814205287 952206235 705545424 953212026 496576211 500015266 578898734 946508937 580179886 930533852 99014318 150137663 201374185 485448057 82657719 843314429 768770104 952895067 394107741 655995426 257204012 471084539 687301837 723541173 524888832 816503825 27957578 378356766 171497232 589282504 896023619 948607192 146948427 789427294 307584598 831618038 50942153 123678889 76010859 479747389 142150831 335480338 784476662 786778435 874774020 935513211 404395724 546643215 490568268 698040720 973311768 999747339 965062707 965405851 290458550 482951746 123055404 829897514 257318733 954442861 174932885 996900627 565784570 694034253 322377343 802250196 469624175 724435075 476189510 896000465 482395438 664557979 649491743 843269794 593242128 740989956 805488272 928792399 688939856 742378474 725797237 866332755 374303755 828385211 730097200 756085755 18719421 401823447 212968382 225009170 964557074 985920421 988099230 995621680 989160734 991227992 399667585 643610689 679105947 836708840 367785109 591895889 150053007 936442883 182998031 885712452 405722764 878087048 942672275 988400380 814207178 945379739 114980728 999277645 136992207 368209272 6910249 73523864 730244662 914844621 210520134 480054146 902217955 934175747 698964900 802279244 934164679 972597456 968355375 970675857 814106591 831985865 225413897 547632486 539547569 998424318 418411020 836055923 13600980 87940164 420864035 772440307 371354275 970678437 8290302 811251326 286724337 495411507 163892220 829694428 658406931 878289189 584880423 986907211 30422498 712947236 616438271 991999056 177252147 463825204 830871272 956191774 886017090 911160608 748091118 858344162 95530543 946875463 26245179 75627876 230155954 312889722 933215285 943422258 413746268 982049854 338378836 355463771 192213425 466866618 51822006 150463213 289720406 349437139 20469131 585311103 398004 145608248 511521504 623026303 794163742 797914959 383971943 700143319 682397889 788295210 748985311 918835266 484366033 596505798 980375905 995601463 543210941 753026158 650687557 658483694 66636429 901911119 819339294 831954167 273757831 990406964 80910363 451466365 41638313 636920787 642134552 841174483 494436400 699103947 824405011 885540496 14611080 961816638 262253996 299157047 744732994 774817413 393230500 720634722 191193544 964907155 211115755 933297407 422672438 624195410 898753249 967447274 158701540 539338975 971563703 994440639 687069154 824659050 232668500 716734704 274537504 442004473 810548754 964848775 236236548 242486344 356345571 714617859 639879993 894115320 653725896 749210535 695237022 876599552 58326258 319678411 390520324 465237896 816274612 901830015 895241764 913185283 331541810 925508858 874208097 959712632 720455485 871869259 228311038 349164181 421286581 859907197 790438713 797713180 397647859 633112662 259733271 349189293 302455624 467117451 84704694 488261842 28305183 255768253 726870999 781981342 142022350 254813157 947493173 949027867 150528974 524426968 316772840 786194649 178049396 650287198 856452216 993359566 887626381 953387643 566770676 974647327 936831041 967347512 155432411 281740268 501276481 820350645 693070400 861912675 345508506 674965154 706980130 939710699 428473581 518186033 821863961 965618598 180954323 507762125 733343089 855860084 143490516 339008158 609751324 713359711 416703757 497751652 696607206 791571486 107365181 967974125 813806759 913296778 171026977 434721683 402691019 891511008 123264632 869819551 956927991 971950132 99842690 657640573 38603483 242711891 77271110 994413983 628789226 899927319 95317108 492114653 147684761 674570846 329726244 941165769 669028268 674128512 690576669 967740300 712829162 937271797 575295982 765161881 328031991 774288476 292837148 614484238 343632121 357056227 63675914 717238311 680702979 880161038 744581014 907880606 809075234 935926959 610515062 792097951 514784629 625386959 491402531 514518960 789595026 987737626 931944464 993209865 968936716 982597816 837354773 967673681 588824506 826195044 645938453 766433345 172431392 989281051 736681210 774668825 469958807 569756047 870637700 982526931 886595012 942246439 566551296 885392110 607660311 917561672 682635300 793526098 460286057 709451554 275926699 472625544 89305119 801538198 122415056 554982138 740604216 886404792 817145379 971457211 214915198 434638879 695399611 996847295 312572529 435313790 900037484 976447336 652966031 677533419 934761192 983789276 974204595 996617400 999368438 999806967 501639317 619551807 583222343 631843836 853451034 952844434 978279111 992094451 981684046 984284784 541534451 630300772 800722241 917703091 470873929 751603688 625804135 804848508 632104471 764353851 16732783 740212080 677516681 749918793 997050834 998319983 345924101 766188133 145844909 945129079 802893762 811832738 272379493 840268958 279784300 784506336 939683362 995123337 78103183 900635472 340989115 440772139 106735892 979166965 113820809 608758239 694567735 760400216 984342836 986046680 395206723 985639415 510592523 606412498 510761908 658101734 11314169 961049671 285696763 344959136 87666679 939944206 991099930 997948494 472708552 701704490 854766381 882408085 878103372 917598003 585791480 871106890 438182899 683907151 507341666 862283717 840957844 907663467 505904318 524626640 465812288 890683584 97731933 163259684 335851388 911302430 279671621 525742058 856249161 919569665 971349082 980922749 275227517 445825677 387061393 562253056 504321300 894380974 185578649 622966224 305631288 838705447 333391846 659075838 319833897 497630049 411541754 963177138 267014490 631907616 944864319 957703834 15941945 700178629 729997187 843579028 456765901 656857281 931999395 985116204 517372984 767757471 816100587 934051097 869625479 966580483 326744490 465500641 219802368 923616961 43788435 142340044 949497058 962086261 688706618 780652955 197246018 665627439 786070749 842387529 20203045 643041914 719996825 941255782 607664526 743123545 461266840 787143419 853822920 869772370 463298338 510685315 353278558 993607768 857350137 963960312 243844092 663718992 366643839 741078593 749275859 810371833 778851791 890965871 435924684 828762307 820309827 839458476 74509207 246789826 414849308 432124688 612984798 712022918 96052417 500511421 574747157 754576723 260373039 796089107 177584190 683744436 531383379 844068727 169636464 277567829 544825244 974799735 27553957 911271735 990967061 991781368 2811365 897745159 297373113 832274314 370753908 740000274 405406419 996010322 11549165 753589187 337619393 565162589 836370919 970240952 259638202 823888584 270269221 847908664 820657711 995175407 291941318 517618195 234893477 685292343 444229627 942647553 297839191 707426883 408766816 655417908 470347856 696107776 338865628 517972558 445266287 817272935 308669556 902019576 754130654 995968147 749629632 934289527 745404206 914186822 339083441 738169859 812446876 960491329 344845621 437274481 533432465 561661710 774189501 889342024 39249549 448519593 416886400 908363261 973926188 975728118 855932591 908868721 274088821 546219853 103214518 179107186 471901923 557383465 776425147 936438627 112705617 259798015 474120850 689964921 38802955 243536954 552601303 710567589 680266856 975706512 182772315 614055610 729474629 928183190 608934333 815003798 259957128 899900016 115258263 495289428 432697237 438216413 958619956 990243865 618972816 962480404 151522706 738598841 477389346 796591507 138238377 524138475 407217441 675915488 915358895 921808294 583702272 751646387 910313705 934773109 982388195 990653346 807355854 961894884 11559044 528438759 47412262 604153154 918193299 926964355 302842957 476157055 739682205 846322995 942152439 967845737 210486848 704984681 732172190 772899528 101121095 118857047 943858687 996639095 798532592 948879954 540904122 832697471 477821893 508185262 118897774 998281896 342763727 992270690 693111887 817864984 87059776 360742661 448003342 818854149 297962221 640218275 617792941 806911336 641897217 914686931 81914576 313145897 39661071 877754004 953751511 974901992 987194035 992577048 585998857 751410080 159169137 694928045 794648959 876084735 807751651 837218629 728795362 897897796 938588966 953594681 543187647 596852723 698677895 896451990 757080170 986330666 678498149 966150381 96059392 686245639 425328612 429057123 954683347 996021502 269833360 800736636 655180838 773855631 430109495 925605479 75626068 105981541 96259266 579239420 578716671 763624717 997513029 999423839 907732582 989919982 290239580 407779219 580976169 592514379 145401099 575934325 613899910 781282053 899729891 935494775 322218577 675685806 966448317 986467673 556812393 596634779 144638112 178332364 446473093 813216645 21354692 445190629 591520111 658749907 533190019 698492348 980274963 988598142 319423725 639521156 710271118 791042459 953981945 995507629 405397593 810940034 815842765 856681201 798315859 979207756 52167169 126830017 752808494 754462374 431104176 770485657 219615666 460593653 766150834 960737683 449135658 632523794 254223431 422658964 763201072 966500399 345291765 952866193 775897655 904678371 741803190 807177033 442874514 855033905 987262267 992504955 23769615 775213135 847625731 883076071 205472019 861966430 471363876 650334694 228726437 501006968 351287268 847626817 147039432 390338927 802451408 840519567 417131387 932847708 771423850 945839850 222980473 674841091 346576030 431814629 995870038 999188836 643707771 944381686 312288851 914269593 157870171 976854482 647156474 916892624 659449355 978897708 456897661 579909745 625740589 635003624 25120846 121341859 37703979 224708958 375537251 930032699 914052045 937722173 503282674 922778218 837346899 882916420 799526419 830423875 368262611 534320734 594117083 815907871 527457789 975994106 625838235 770258117 344549860 712009510 797613588 942065333 797546365 856099867 857877277 952793716 520395533 585700515 175466418 678570486 16695195 465560019 103284065 870396241 936975629 972460172 955204512 960236908 873188099 955989578 609120983 620100131 763049675 865668441 726821657 918891489 489460701 743600909 106264694 426620522 69275999 681866405 825349710 910433428 307300112 805026573 116899986 437020545 230157357 247139220 169639451 598153936 326358895 860333000 147128714 451873675 263920750 760660938 156403095 192047771 564999562 876275483 893688369 990783890 893512937 918468421 657110625 782961770 955678591 987929700 166965319 763437104 808883985 995323960 472903732 695139271 523240482 724754927 562491096 759057620 900238200 968538981 70235679 785065868 156172644 213796381 37245089 107785203 863362013 874576129 698877252 761898537 533490206 581835992 695849470 776367053 631372085 921088323 86260174 263142567 672626092 929918835 194898109 545363377 594014679 914126123 335926187 686437655 467400032 818817991 431525269 475676626 251251176 290314609 231604502 280548235 972244007 989249159 440921093 543530285 12960245 568179130 726798223 838258716 939741373 981503176 79770044 662089066 312930587 789216942 332973572 949427105 194610454 454258195 561511600 700372458 530484864 836443951 496128929 699432340 630974243 759356431 186297012 471474330 877765812 921121065 467755064 743654079 788159205 825228413 1014300 94991182 160384435 240923192 878860401 933021513 640145941 815587986 879026478 905918660 214537447 665967365 674236627 755320475 615380370 954101321 461737928 591780076 974970261 994913782 834836645 990754664 256134003 342286748 332779344 796108678 49828565 970528755 506894083 725359087 669983493 703454448 499356504 610780216 845840558 943415844 368670644 788702353 862277804 935057127 118071448 702003485 348834065 832083484 15444633 608639350 342755496 491057372 952065895 955605305 997776044 998527048 593567802 699460424 487964747 842451340 328375817 847687532 720079317 852464170 169144842 631149007 503363308 772502365 53183682 891667032 444427215 518691197 512162884 592618823 620835928 833696916 498798092 618523710 749239880 878212842 288926972 416732675 733900308 907215848 311888447 453746929 975469212 977825279 203177905 834846255 159534387 634663628 399575961 400800801 489813138 516834970 990028777 997514334 207182151 678222908 633311057 974702083 172995225 844880681 878537773 878777697 193612342 336204069 537506067 940842642 149035947 712900621 5326422 11123590 604559931 694571325 162058166 767233500 657371624 957707571 969512742 984027000 847650852 927870687 438063665 485214753 7310196 597024463 813154169 881135396 481386884 610546822 950699792 983788567 76616437 183785992 984997605 998879690 148951885 934928634 370561251 895484529 509306423 941255620 958120255 977282660 798626046 877524355 313798591 928821250 554414876 886102942 513527114 756123619 304709388 460878931 506357468 623304494 488649421 980327578 934186484 966718952 735531445 935640527 352262557 623869291 239977538 949117472 350003139 682955815 25459164 986803009 244677111 349015327 296967691 307947403 574068418 741466907 956494976 961176055 176917952 269250875 981118871 982548755 834329751 973479119 644107866 713911897 228423754 892006879 836318956 876648789 613511494 966249479 814712158 894332199 68944069 302385423 826004179 951634449 526434079 905963441 325754269 333961922 672108908 926268205 792185204 965853500 20253564 952205702 972552775 997085835 222030732 726659117 714211005 863298616 181777637 477514862 750885782 949100373 936973942 958222536 149059705 216646679 103407675 833864210 919173269 951286837 237393517 758513293 787532018 980964741 96694807 803371411 817343856 999606824 286579077 955026577 517708118 711071514 110658827 878814674 97813046 705775882 145647675 679694060 403348999 575978164 333297534 563114323 613009713 806365333 595459461 790178425 331157754 416365050 767027943 963634692 545663304 899730065 616202214 947666818 844484584 873337398 318106144 627953858 425288529 679761527 803060099 886601228 661830511 847103152 154964854 982167402 702368430 836602498 174991878 439320637 214983999 683087765 957597325 959238259 562532988 993887044 566412570 985665090 139117336 331446780 209016968 297926230 533909926 993710942 17000085 955410609 929743006 981729544 563945053 573106035 656827746 799383398 167989155 507270954 812921130 855070119 36794168 360635221 949751721 962803380 20166527 325027345 128904728 558324236 395153435 802143245 198939197 756871079 947487676 955069434 102295191 764320338 790086370 941419601 962140521 987363840 102166134 528561950 351124980 635330220 319100611 779365047 254194863 606580880 206465587 259099938 968152718 979965139 154973361 180246674 79415559 568200661 998858279 999080225 869939746 992335953 339341301 461677966 684473584 736497219 416144650 896482599 535412033 935920846 30282820 698319703 913410458 920859922 512957336 519855104 313823671 398864102 389756539 429844585 778609978 853961028 969554969 985820936 602996415 739207213 854716855 972767348 200487612 724665097 380024896 595896993 181722707 594313422 769344396 996285187 792066983 927695472 468100820 800407288 363280379 965315533 38576637 631291697 912237000 953441928 895272264 898417600 100016904 451756374 972052250 975827060 22089272 814233744 995141303 995483476 713275401 965131847 67576757 557670459 797409881 960253524 926059503 999350102 525338773 820209743 108916573 944363823 550041563 657340869 907394491 985970328 147409357 915705742 898394621 946647895 673316767 781363365 907410865 957149942 692288159 910985555 485531805 839421345 635994473 722976772 647121803 792409502 144560856 152692424 157491035 496288136 118943188 981477292 956285319 969633624 953119223 971584139 587480264 931128727 240522751 543189304 1845642 328897941 290391681 998974986 976454530 998385705 474346012 845009049 635190307 928821579 958623114 990807028 131468887 846086339 494495880 660465087 444999253 941544650 917328073 958950762 733920754 823308596 993138435 996618407 969951853 997818638 49351716 322239937 468085541 542440013 291237292 732402121 32733938 599689825 375607548 677121023 534250978 841977399 216831808 387561638 577026232 839825354 518104239 818415537 17573492 318095160 888475302 922373609 906200058 957547651 586615730 613356307 390140616 671769511 453982896 821071342 544813673 856246486 210678818 554659932 163287205 465132204 909221077 929895513 191806639 399545652 274398547 873704027 223290236 260026661 863104967 922666631 611519667 963340466 844414826 870492689 502853568 746145446 880404917 903073979 89130808 876020467 846719935 869967688 193573800 542455089 516857432 818532708 600800169 674627287 137695470 189525206 135395997 733104231 765961578 930744150 137663320 260492426 740867707 834814846 859136286 912292677 202460301 405185771 820215347 963908461 247018399 334693454 947521639 960639186 583811249 778216605 904064065 984845158 421749659 752696330 183309601 962692039 886700131 979247533 711654530 931967751 100557780 830635775 79341499 145608359 948946830 971103293 655417518 979496128 460845963 513605407 984969932 996678115 937143106 962645273 75365165 891514379 324890102 792352334 247916385 293486756 828283610 973859962 279468487 854831021 514364684 743090716 955620775 970596226 342834735 687364123 640124979 745795234 675889737 852828993 324990444 789124177 498094637 679110315 784062231 950949741 405935125 689831393 607948694 823082068 173856571 196063297 619561258 904127398 376950247 808594257 992731310 998086064 32969180 375923794 378357768 738862937 951395442 992769409 877655521 983309369 123754672 782503187 498890296 906303766 815076188 953701882 98112728 152215201 8742015 853584948 984440295 994991345 355530495 370616133 616597834 790989931 349558638 881640232 957048596 964885922 426627329 597564086 865791955 955297676 19004927 291120297 236002592 271501161 775228025 795903813 490154001 909166113 604142535 676833049 715171756 815810009 463722731 747115300 443430440 771669771 691135109 723509614 777343201 892839516 822511185 959044929 752681753 997659695 993561135 995461360 317367599 351837031 714104465 719628060 578227186 649304654 435561634 656460440 351414601 395697774 655741207 884932717 594662582 615301606 305046104 827457925 555251414 843539643 513808402 519023814 175083685 831083863 366349120 569759179 455436889 877195636 647905248 865652345 815243522 907924554 702860387 783182491 157661065 225639293 769058372 945566261 282597553 628652023 739267806 787836015 598643839 764404024 282879681 658591898 935992108 947903562 546827067 779331381 177730097 454626030 971650467 996695539 443214171 732402751 968245839 996452425 795134448 974852732 493006763 505403804 866533350 998759976 221804917 248599449 266992713 899691333 440841724 796899178 118875379 790430270 482843433 704612831 435095782 788587884 189404551 712465603 952224337 999415907 859899317 879252133 405727732 842913745 250402827 857845065 75823188 443772677 246653633 884552625 914724851 943656148 805678204 890895563 313636811 371566809 160947507 662227497 26238257 538767636 540658301 879021382 622411676 898667702 125391984 182648643 132933467 922274472 747761544 923388213 423418576 844246128 406779674 989321018 749060796 762993659 646003551 899971699 804275814 844954539 267229486 811316550 461787823 873163249 969028038 997134653 283089989 496916725 490479498 685586166 504182884 575818756 509991829 807713158 632086489 897264555 337317668 800437070 783212476 861865166 174951593 791537200 621403823 753847257 636426052 861956132 636384487 989547541 238512550 337726849 486342021 932091943 425729221 940715712 769345318 874459723 923321863 972031441 655794562 934691823 108411900 638759512 124273213 320804390 486823091 717423761 765709115 870787760 431226370 662842065 989732503 994059635 619834914 852971693 717398938 896492027 983119956 995631443 778537937 880972855 944767347 987734698 928626784 970179243 415481770 531245895 650294290 721658408 264512031 909493624 854840185 902745631 79660822 667947322 857977137 896081320 539858468 546267471 486369998 638830592 538446904 876226404 351814111 675436538 746427317 949858585 478181139 860869685 814709959 897198472 102258058 803033345 56990270 954281892 581283995 622936200 629031360 767262663 889237406 944370044 676041454 973641421 948568502 955749615 134464806 208368843 960908847 964124761 257593686 948637660 328586421 352823983 175765987 546071084 12894432 670267719 354810603 466446947 729535830 788785249 772980149 900756266 442396721 534728107 900924994 933046361 569875677 886609492 326820235 781652566 606611157 930634274 888545393 913927148 831073529 878122385 541041119 554547536 864020956 924064621 951689887 969707817 835250825 957777083 465798050 707976955 773374739 824998092 449675567 905688812 171503266 855317663 159565212 170050622 982066583 991770906 868116527 889012383 589003268 933165994 949866339 971426843 539794358 717682835 477676093 968323903 135453813 163784454 542743779 663716000 661192747 668020422 603390704 808163072 585835550 840928226 929844003 941975454 136008682 564371214 336282499 467577781 236515204 604425968 684886528 924628522 126725690 860192315 944569730 987677194 983161878 991994330 741777289 764707352 974682434 992347633 904400238 967576226 815586526 994222050 568177108 686150768 687595457 947495099 820687894 904513186 222844140 801813256 636666269 953892873 949426915 999733574 91898608 232430325 465628565 570100783 827268219 864467196 715586923 764107343 728897938 873873911 844875899 911512255 661560139 975352905 795690887 970901435 555074032 590100276 48064290 840686248 519008622 596170964 733458122 780469267 982871773 999108991 961263530 988201053 139197069 426098246 186997629 627342093 2112561 514598196 38172517 334639647 275238614 455929292 641017111 811245941 618899802 704627496 84489197 745163675 177722165 985639959 656547652 705298076 714089047 893482031 152664239 973892787 717746660 944939871 810988450 847778345 870490837 975165429 272939462 975937801 51463321 163457754 998091485 999673055 930129425 999814833 2368637 850507862 861819360 965551393 472386887 874096636 425344574 733984437 538973904 696843004 7286241 118028101 232613055 967714819 62618102 334007609 651797277 851305265 291305019 726442183 768610202 781314426 901074753 959118773 934978999 935084764 145244195 742010862 385969968 473239327 68827217 801251707 590110522 762247555 894698715 972672453 499152131 876541736 694497614 820897315 811677112 998088789 550462718 652395564 194594942 727604239 254230308 376013960 625528888 661615545 139410894 393609298 642100640 690859299 30231141 871483315 948369388 995069822 917502213 995354605 731838076 734775888 548054070 991122550 681488400 787283939 709493539 754457880 151725744 343464625 294894135 890458702 215535708 469562821 89127381 137714350 117831784 138036374 363920031 964031047 860942173 954822059 828647121 982774020 558736887 804873580 59457896 548213066 456545266 735237634 593093678 889429036 455558270 604131516 670550079 683032462 471992559 541456723 455735471 618658697 907259885 926745331 319233073 957100028 51039748 886176344 640667317 785630081 823667325 871529712 691274858 899305873 352484052 550258906 862480883 955896683 524166270 882943248 249689641 338141929 930288640 935673870 889863476 974628373 264762165 948988529 596243483 966232423 123779111 360323965 166012620 406891650 611333990 919194018 817388523 862578006 946365133 953548421 317540995 829422577 756706866 903155278 605999846 641434742 706609777 952107151 914893457 955443606 390881757 990778015 169033660 992924386 312030118 341401419 716141710 848934130 586312104 816250821 755088738 987741774 474953386 496675473 712937135 804033885 102235331 796756943 941555487 952596333 25583186 243507536 987272114 989593585 309631470 725461689 842860599 880179170 642786950 710749260 808339131 836712552 558698340 673126390 958377213 999193296 727146067 960742315 229884351 927199135 265461248 838924882 775578994 852666327 388153026 855608241 774449969 995348531 930560396 935179917 503946855 842936341 2668769 682615306 233722081 529852276 833848828 903123347 575103377 917633916 607169450 748582516 335119025 699194109 773025576 893324103 730841100 878765569 55273172 668315736 646019085 853199427 397887270 483957645 803708458 834706619 256255675 653240391 241868096 888336692 930569420 973755548 299802530 455478748 805165416 822854405 686325602 786851693 875057806 882447886 762034475 926595248 345142483 703663609 986498597 994677388 885745955 951979793 481729427 939053781 22985459 235299959 868021699 989057617 767866164 982904632 3736269 579209317 312868159 531564123 555537028 559839299 206789679 748026879 275415268 611262537 366027034 852028541 500518984 521057844 397433120 830530688 663298606 771647873 478521988 515378433 102689220 682881134 461326409 662851021 174104960 857092869 228197283 365649490 511023973 659204132 111742598 523030076 801873246 853185457 86494598 349785151 542610401 932796666 285830665 957107943 763809793 998764773 309005687 428917494 971827387 978406449 418719775 829641900 313970933 725404012 895283611 968859311 801058336 998343414 582457743 794078372 482924765 762740151 735137773 969986685 63992292 312264291 750000286 987514502 63516927 261718456 109896093 941373409 403137857 745535969 530534289 588352431 177914458 930557627 474023489 512352260 51275869 368280789 352101260 867127269 127791976 600857057 719917583 775206153 482085558 709760809 556949861 743545537 183051008 462658456 357409472 927537366 88486627 397598042 758461462 869477804 491287091 536108993 992976329 996665525 252154300 469484132 493944675 878773565 113409217 796174624 121159920 699237141 478809160 673396816 568451572 823508786 890262707 970062190 746762306 955149479 578586481 841402015 927701655 936127980 39812244 977238306 230970069 657261583 736534849 854960129 69794244 149298452 877272614 954320355 753513545 774368442 344872850 883625042 346321995 978537501 82642447 395347081 29830120 502973101 274612306 610588842 168519879 884842570 654166938 994397556 721232935 973847494 449068209 554005721 507898931 870569381 595941799 810036548 332327922 434306204 780164987 886506889 114535829 927444122 624140827 828877001 783096260 905747222 543127833 820577315 433704487 492146545 823550591 969922591 144383700 445333166 927340738 996843066 172171370 312216001 441477853 616868103 817987442 982454789 35406104 306214541 398016493 877248982 421985755 769737611 242070994 956491055 235767311 719759981 700018344 872252351 677495 481990289 37061867 272237329 72850022 898278179 847823393 970766060 141355513 344336600 742202285 802021740 265060947 882157951 743153964 899798131 156179154 389073752 589640997 931926235 253403171 790355726 690402672 787894363 529709272 726436094 409260508 976476975 286691477 429284267 89378511 819768147 347616950 873761213 920649585 954603082 26890093 961617878 753954928 854651337 815655945 899855637 984002810 991070904 607245933 966449736 921189593 961150986 942795093 953865704 869464769 924835736 714263424 953049278 626945536 751723418 152033493 474756823 710741687 757561834 247084577 381166476 242158261 978065146 177855249 643191390 495340668 668305557 505714530 729119026 335910560 462307086 878978672 956268542 50452679 715945606 874808230 993720416 790815975 800104233 647530171 980815964 570852676 601021002 525216028 530273752 608566272 983410530 619104714 853966465 295348028 317983796 184408910 689061527 680929499 856479717 63177000 338964617 559058865 672130425 44401379 868987816 55016533 83361592 910611380 966954147 247557213 845567611 337551325 906422509 812764658 970359252 497888873 810211888 904633606 927406992 932498114 947938564 33283066 612437255 103567303 815727351 980699508 996859543 408714995 903111900 27983565 372906233 200628782 959195119 71836634 606306426 962353988 981413856 246783401 465553870 572554785 973261558 438563270 612949848 903018189 993573906 358064994 675027066 628805672 692106585 311161151 982058833 543865831 852253333 820417939 953208143 273248725 593425561 328482019 955185988 170226181 245912871 407050056 517915914 949917337 997750307 902207801 966594051 286448146 293623245 340129940 757647474 416855888 842397573 266500336 896441868 672455156 798333551 665783781 803494630 406444102 845136973 329551050 529950047 970494192 975184760 767828418 944754356 462160798 828329461 604488824 649657238 583073933 851916341 687743849 776402106 390268571 776953983 777264124 833625126 885952146 981686871 467451843 883081373 862559447 881432546 862550816 881488763 979800510 998526936 587780461 672825900 693454554 780496728 966667899 996444667 387575214 693644037 647734467 787086720 58256835 475595974 575091449 627606635 788256546 814685427 842828848 902925398 706658650 729187839 976262116 998844047 719462020 827734248 144420261 753134245 638226279 810487073 158622234 952851552 748147412 805173807 743160129 776387813 392984188 936264505 193923137 483387112 193050763 484833441 669472338 956981461 903918905 999431709 21603759 878452590 431101185 945087842 659632202 861534083 225177137 390820783 490209827 971356674 575647626 812253462 117126640 731785977 728001901 784204366 664950796 740780703 768218416 923914089 985986113 986959857 992181479 998799429 799909249 962553256 443355639 479984876 91941266 688188264 519660178 975167604 74016083 787023921 313526681 979601004 155559772 514698597 428034844 619316713 574906129 817809757 728046692 779996005 996617717 998260390 850449518 870954150 131469269 594854761 774048859 910529595 791017180 894431089 959292877 981623485 828294342 978506926 552594798 688181830 629460972 716837953 502949858 902495436 282033729 558414951 300999402 388680021 340186021 692915170 553381242 621566628 780470268 990494155 725265982 883022308 366373815 434692080 552859003 911349993 254067368 968539313 778656421 927417878 235622450 318846404 483165110 900028111 454777910 722199425 951523498 955900962 658939093 806865796 407563782 607054955 92580702 298039207 350271960 740648827 31762557 369873253 291162611 328842738 803710307 995591419 927403728 951947720 466129822 517587547 115614072 566772005 587431232 778323439 746250617 873313517 73676907 545052706 763658642 930550169 532079613 568881547 457804096 594656839 150175932 872324962 970396577 988407798 408852555 413742663 877242384 921219988 990121453 999175981 603406488 677194756 724194265 856693986 79287431 811435021 98532039 869862382 15553748 998926757 665378118 841030657 23848422 201649873 78167638 130211000 30293382 400495298 696621537 760270640 386608420 962230847 637387374 890776875 705894729 894515852 16700933 379847111 579165662 973367502 344558269 452456737 801470164 912503463 510540519 755785645 236122616 430100925 396479280 512699570 886544420 933127884 696280007 800927664 215387633 883278620 635866531 638814732 930335875 945466776 582066442 745125584 718097606 949295277 240180369 724756948 737776326 796899756 14579820 861236985 55542771 183021137 583253531 802156185 864877905 926541500 608392200 864481686 979771378 995375831 579495498 729371508 984878887 997158347 672898152 922784776 286169930 501013700 906183943 985227188 291112468 927432527 76722996 381421444 691550453 795905663 822271713 935767134 937244925 954347535 184004390 845535820 509959202 566174640 299759761 550533503 892629407 990798016 702029690 759490014 823002811 951007063 851815170 991848294 429921959 956456733 267039763 394287209 544626921 859692829 902346632 977766668 556719033 779832648 373125418 826769357 270073542 727136184 927474264 934460322 591007237 910247674 3581597 348015299 81220103 505870745 874717611 950533906 603415056 774550003 815177367 969473763 796610153 854461039 478395375 634556489 271444640 291048006 185152628 531271021 521643969 990243308 316397848 704311142 66887998 767856864 900386485 913271975 260395221 857125411 844011835 861003429 355607746 943302680 73068727 728618551 687082718 965020574 262553061 840945236 233389623 446106366 852732792 901546601 677934740 766619977 199161814 418791702 316714020 508600691 971373524 989506044 98082344 751220069 369233303 955312057 171130560 288148412 83193652 486983692 997249977 998397959 141577368 380393432 843230478 956798156 842170942 852753990 333665951 817841455 202023766 715863731 99407405 639345789 347449381 351574800 884918661 956245653 827697616 951309778 324161032 339044884 380995424 607591302 709082250 794212101 437198790 648503154 490604816 786055709 733341654 910506498 132239619 472781120 783766781 991975025 397489797 421817971 614242379 905390662 388791499 757350611 292294163 833150027 416907418 511379697 265270611 966703829 933962576 945530005 691622121 974296323 377703011 760019733 436598306 993960818 579245815 710073286 427395284 618302727 192384409 973553469 847961595 950602990 588181300 974323486 578577315 944322106 356044642 846871558 581406015 644482505 800310557 878639530 393315589 692120237 871817546 885923718 957051668 974651730 632306818 701842441 872663121 894890179 389505819 788888233 109686669 441845910 911569472 954036034 969871804 997265761 56436287 193429914 91369039 762063789 941292918 997681800 176897604 414331026 624188241 929145604 789827166 948252731 685756714 760549723 182469178 622102093 527031483 703509628 915313344 949439450 341246059 640851858 312717480 548807901 845713386 881042522 336067697 588455072 924040310 981152765 248634603 430901866 593846222 939902792 465158962 946996446 947206807 993575649 24901753 370270474 637841133 801384375 765394392 766483900 74228760 231830707 591378504 960640992 428330107 646905794 743384444 826385684 150807637 787295088 278909989 824653148 225270717 340972923 509394825 524259821 250440913 351832211 527716722 837582432 666877521 996442502 561281353 925962726 816971269 841823423 651049983 669824482 423640628 440947558 499846812 658715876 450115747 507317955 697910564 796987478 525078655 629882493 802715924 922904682 166266649 402347896 218685012 923965464 668742236 766509105 399501362 463429900 404272667 690994771 959049452 976488467 619883539 670762091 505033601 687696954 981203707 997365159 536006145 880499366 831527800 950717258 747245897 943260707 88136847 732938892 847554902 868591664 833188735 988186094 388603322 745192065 821857113 877021497 898798682 924452426 731741823 995436744 936452582 983573974 131092246 909006905 764386499 976621238 919153146 965000497 639322029 794890625 451208951 562037084 895579285 898248518 2678661 174119756 123108818 261067661 559682582 789945773 373129880 585627400 790762346 944881601 110541353 876089079 616079999 976308770 53992075 877406374 341496334 562343932 915584063 941467046 432912898 964223821 831762435 906735394 759618725 977966229 279618669 948004343 244641327 377284986 678684605 744426897 938922682 953113977 505987282 775660164 84515190 228703608 814697141 951622177 324970715 437326047 216418215 922695590 547894336 566058731 441281767 497686156 250754599 487452026 359271690 868034521 123634393 395355334 968524144 993080717 293684032 709058620 855950626 964729470 841580282 884646687 868066730 899134726 760334806 972894040 588903612 798107235 256206646 447651136 52364146 160828496 318832769 689354352 714723457 811281357 973319739 992214757 494161300 724488914 581059158 782116543 348031849 791973810 971260834 991233450 943178029 943427621 538770500 700768129 729459469 814686184 643674938 924195402 112400220 966120703 623593299 660124223 543116879 702790429 74523887 569249454 542135483 896974576 731693631 809427796 160793975 635846325 665035740 794653719 190881635 763806606 208558619 470521714 908693424 957910292 367879434 466866955 703759826 756495395 43109094 800680315 836420227 994422771 655759469 834093641 688118547 982359941 755336387 789383756 924452705 982390836 471501233 684149708 135137661 818946426 103768184 224462991 873211479 969755739 595064263 638984889 213923585 288195497 512810034 660518296 879730233 939117472 207246558 806895756 613842155 657206138 259402964 961453892 698756132 721124242 947040819 995132483 723519776 823955861 539662620 790534296 202541454 457004129 663716786 846378917 402421027 587404999 448170863 704799917 627310670 828093840 275675635 360944172 363947860 943894643 482676889 580010741 86538680 413248466 925624865 959538043 887465963 890084792 93312737 554102371 987105937 990556401 533858366 684353816 850959041 915106518 584037350 655778533 295123385 304079219 11868794 139142061 452935105 782440531 995865253 997401206 742907751 986929263 776890565 969653830 396237566 815727489 86692730 120504916 775396628 852501930 343735882 382730470 551305680 725149559 789252229 878146469 636884421 747902476 361558241 817442552 304049646 820445132 667836604 862239228 857691289 939777238 9449130 84043674 932758341 941356926 133618760 749579900 802281063 821441225 374457280 975158572 420253412 830341648 630082299 851172137 256704665 729811871 82508101 652248867 141404854 574408797 587486726 608938504 409367216 520658749 444893839 448372348 738949519 849328651 679177623 783131544 585773173 973217422 623695897 903717398 190662842 465109908 909139528 997478465 778858597 796708656 670012740 806817366 694434185 761753713 860680208 925880125 980777155 982907591 886602766 998432629 556555310 739358861 499899035 824362313 742958870 787158369 150563880 841019908 946650129 975157085 550976931 669102487 985450752 987084473 46533517 171939107 866328386 886613822 63874449 122075873 206950235 949251327 945159019 970349532 226770236 406444589 634376846 922682840 670278751 767040339 75853797 111329347 942220235 953239885 77582662 77637609 182561523 414232435 476265421 871092344 69601269 173074310 85253366 402968315 19868496 387358823 352072415 364937858 547930437 804594869 582099750 876183707 452654147 904309770 285424799 811710716 772849116 970460518 796086082 939103023 966164710 977301270 930530267 958999348 825718806 937650802 488478720 766458331 533050740 801225675 950549190 995802675 999467496 999772380 547402467 685543259 638170498 744383070 599295581 995087322 137054848 420911670 413070208 687036648 925698142 998860031 19385028 707330355 330029313 670062220 589281287 959670252 934992369 966737379 240217543 542915985 231267152 399134167 959298376 978692747 619183538 990986523 872544974 909142140 941904782 971123724 767369619 931658657 379314402 412746812 929556342 991606732 188833168 485602207 922782692 989707188 102209455 572421999 130578526 436980152 645550481 750429050 454304103 789878202 84134390 785235110 503102488 816512903 260616735 320659410 917517499 945509279 713597995 816439283 32197578 78006244 566994690 701233205 62317088 996867927 321868651 717761274 276962470 483994333 266968875 551724434 472834748 700007993 54267270 491312342 764073139 995784324 134965984 218998265 309380515 652915271 962850457 986277218 174134399 286895593 149805393 550029167 413952658 636203015 355461675 554516859 323202106 490552424 98591472 391921852 720806035 806791269 224639408 254532321 503718073 536916989 632449938 645645251 676453323 759879545 231574613 383339428 523364235 772665822 59412167 727451544 800730022 842454938 850947165 993303582 821770185 827090183 739282669 869723197 546055282 723176464 406656428 501186944 131821244 706265152 983995917 992863039 901076822 938708717 54395992 243581032 921862756 991087348 985038796 996046884 16364015 291912447 521663534 628466685 974198202 996279047 372297860 850970493 707906569 926644580 897256250 927603665 890176709 970771042 482226090 649090130 769749080 823577577 554127748 734445275 41770290 984120395 11867632 643868469 746791747 969983982 613069724 994108458 853147733 884731213 818739528 871894936 701951304 875468611 649323388 978730555 901825525 906457671 234750793 807125117 269502265 469089821 787780209 947974654 903263804 988079111 747138541 816500104 273651337 516651029 798925611 994758047 236920134 930222550 539118381 566431015 309510971 856963368 486355618 926040566 24560508 370393865 768022244 846296780 40168854 873922437 102189954 405251616 385249759 521509045 600634342 804104842 239031587 856882285 824869077 935630414 783213346 839873986 489898508 881647719 326322003 575095539 535974426 589729343 422777618 634659231 629821637 984042701 939192561 979021857 461591268 675034902 970199299 988356758 374820770 959623435 965703448 994506863 472894721 475017142 891788697 918795873 211153371 573635649 644114258 993713615 581796918 816954067 449941630 906172177 746304623 962881944 819592163 921445967 244986226 751261619 45076054 988809743 710569951 942106002 123787557 986795279 461014639 922004326 748219193 947899228 335125595 582703508 478306436 489562110 109502428 263151140 444358343 720658204 252632967 747623078 585425953 646349807 638191683 908448049 571959082 731580589 311173416 868603419 99529084 513609052 723660738 911058870 688768247 752286191 658885485 909360229 783020932 837696193 343739197 572573180 111998069 728119961 80348413 757305632 135064912 234265907 404242544 747666180 215387302 768685978 562426402 992628072 790221300 996691579 865266593 867069086 648458259 670429554 590007663 728791549 479189958 919229781 912462831 976842063 860264642 935678306 391425604 515585430 64669905 573111501 343904141 418501512 729971175 803480776 726164146 751675979 780240983 807095476 935746411 961687640 10457734 926947448 156641024 424556388 561821656 719242699 316263094 581442135 99206134 521166154 688810456 718081573 390194179 443741892 205743796 213543368 75839695 939623494 103075712 255607623 198995918 580658531 236377022 447052433 434888240 596771765 701099774 866266550 435303774 820868016 357521918 963053793 713573201 873992124 145359782 420913954 750371497 981012861 480165889 766630725 121153552 972510664 64816251 957229527 646039100 754920959 85493159 563813751 584579175 960254709 101870551 693865017 846067647 976106499 522589295 908328332 642803611 829113370 592482351 963663742 779602357 841650605 684340804 824224956 714026197 983253740 150258667 393280603 62604675 941921005 979166499 996631807 105141633 880454224 356009734 639727863 181546514 327075420 619418621 753124663 577324536 953603875 168514133 726318656 722430594 915331442 936525142 958892763 761547953 853299783 507737142 994641850 830823243 963089155 327192807 379334037 735027186 787890280 388412601 760490470 86614367 811147938 179963394 710161303 149626961 450642104 329697370 784572757 596493626 747298705 752393548 830934151 579567806 968849832 890266237 976836724 568055577 758851410 343216791 776284861 651018077 834051179 474297176 620331830 189834328 570739553 397647841 694408647 998984327 999989052 206063130 441036673 521190272 757883664 505376657 633841766 632207900 858761207 700445397 797134591 527410743 872699807 866851453 960184797 15601301 987862570 643251351 658545134 433402979 994441940 879754898 891026777 563447778 828487799 609130711 857232450 659065445 826995852 473095297 975282469 297409081 964571816 324836288 695339544 155333460 900164072 188231162 789242065 346008442 943336209 240135570 936089504 383131601 517866244 482445042 865486943 287990219 905921291 755081499 848320664 544688119 563906437 461964373 695834383 913992645 948988966 514803797 769429944 546297404 945171287 216100719 994349549 702220879 880435258 62535018 903791757 27889189 107789128 629599174 969295555 89213824 489938589 227568544 428906524 415097709 984875948 325566688 828586133 146609525 694728421 228212751 751121129 640297006 647094413 881803003 969174867 418344049 686214820 210270585 359473274 38219674 210747711 54986859 654887909 480864871 865104518 628468149 973275329 799721640 985499445 777671283 811650898 543623863 880204597 379101764 724596992 784975721 807776836 856750536 893846402 141041828 587922576 433535980 885956726 466629790 599038696 562932475 674950616 506213890 920952029 758300037 976486137 255538802 709833299 567011776 900321632 829050264 987986379 842888359 845684282 532016846 856739362 78091708 453277617 637310617 677396778 95388372 439547016 293689472 581407819 240709546 906557593 316849600 876930749 835648717 884760733 78758336 518932676 816909338 862715758 154795310 595073897 187232342 839832633 752574279 973238121 331823388 785908972 822486041 988931347 275733543 766220215 278330987 900806369 266386403 866934273 408967885 468056105 505676193 535912887 947777999 999789468 31767771 641557574 171391989 501765460 701250710 759280776 116701826 232168675 517166741 559722591 127734594 138187506 180279211 500901596 347811209 613817756 586721800 898048833 615551645 780533095 806845234 919380257 567516964 966213389 721293878 812591753 153656150 596172932 820630483 907434046 455228197 991869141 699738628 931170985 932022009 932111449 479395662 981778391 573784902 760861101 688679638 761079409 177150699 192446443 457132356 810779026 156559005 449541400 705481923 717528237 675146235 683225364 239806736 630954478 483315012 678436785 254812646 851207611 282400889 568858562 813773719 852536728 21615536 665702990 936608412 937450927 82348688 936635742 663054741 833845338 808458374 839343277 501035477 617307979 706657275 964315674 210336126 755631465 672637788 886766005 779919214 927130465 238381444 851741382 789293246 816281384 707187498 777492610 92031607 843000073 500970562 894581065 53962801 355225442 412103609 530923682 90569832 326156360 517858088 919950772 900584192 932458808 144892929 334066127 544561786 679027199 413998346 654176175 290876365 778559839 244118557 465552121 923818684 986846464 48355337 779561405 736310194 763112163 758647859 763306529 330486777 852817730 603684389 956530485 706849568 849890759 109536346 178518809 65757809 380474103 993867639 998913238 403274664 865084870 671668195 841391739 876738550 896513672 599965407 900716124 914854705 953756154 767144337 928802616 801090308 866487310 830328484 997118348 394350804 597957556 684089238 945266639 959748192 982903786 708899354 904720230 232737110 492910604 23649515 847983608 41752860 86346511 218120079 512955207 950566050 954293748 850924844 972733884 332253204 702297695 85820233 526750468 91022450 560844255 635254180 730212587 518329152 905553923 94808282 805897938 460324703 719042803 773418346 942467512 808964776 959008411 510725883 930516946 154825239 513706315 746215754 890763912 524804581 586077189 475986984 661132179 576011351 735702246 870206974 883817140 734035468 761810705 601746138 966845539 850861100 855190543 231353060 788152682 959332760 968457710 144408571 769254891 943484045 990184299 673351451 721283658 465203540 521172481 23453592 376838683 672299539 696711551 606189599 674096744 808400934 945628152 884158661 887090080 763312130 976223710 850803199 973566750 339570990 398794632 934155588 974358139 911465343 915885521 457690725 802834388 442331777 922259821 135976637 193118631 786496170 848275622 830917431 873861808 206694118 531573401 605839028 805384270 610520807 615911640 434683842 662330798 377428757 683889105 698041314 832086239 278016213 598258099 923404434 955812481 355197742 417684212 654512222 754481664 875629494 924092512 18440640 278629245 898005715 906859814 984541623 988891112 255259851 514098970 993167990 995373064 544138940 641298684 149151392 567374013 448906827 453557167 223098599 557133835 484854569 695155525 163456841 229180022 812183095 823425780 790205223 868490811 569689830 747673921 588019793 747911053 756006508 995025688 598609021 696943249 258565059 540188773 885803409 985460489 169363374 704774091 655783947 720448316 860035374 985775858 354022236 970812747 455654310 945501693 733740553 898754616 892808414 962278802 645202906 672149802 955918745 998185296 943143763 973530946 430040071 616154666 277362999 280424754 399564269 530885840 166020346 282399772 650248331 765569935 265591030 683824960 663847020 664373725 148224515 477378502 493824699 861427601 424396831 711759178 844687599 941651033 611080178 900878091 104436714 664085368 371745244 763403189 199004942 842171028 774795389 777500242 990576127 992816071 574043663 971669672 990952782 998457876 616994831 880349964 673500179 964075376 863121024 970789261 522060160 669150202 416184640 714736520 567058703 874364004 514953300 988201916 566932858 842298763 113451656 350097951 279810891 456041008 148685311 551110576 559072344 608914011 568830828 817144256 415500681 494784064 484400069 711088848 735379062 749829022 40162734 905306212 945677941 973343849 61324305 219195208 264885122 775427781 825957515 888393482 261292423 940250855 721049232 771298784 167899352 684076508 562344024 925120039 984921957 989315851 124332271 509674894 122764103 666407497 493164210 809466982 615637942 903823426 45546781 95245281 656191001 955396834 242413716 302752373 369969162 763160404 424816949 979562972 66774818 237259996 575676145 689038393 934163623 941827240 598974483 667665350 274969167 844810749 115551011 443370123 501054818 780167754 628868088 939731852 100928700 436045425 880234167 961540565 886594393 900370915 567161495 851124215 257372590 262807333 357599441 827066428 550994958 921045636 712628239 877323637 837781076 848841977 827109475 980228641 55468179 985982051 920431292 968502394 582680652 883185367 590972993 995243878 57222143 635334656 549477620 754153080 680273470 888503861 608396408 816629201 206209642 648230336 259196330 492110199 69805562 518950453 405391292 449227812 486314021 617449173 8279386 117930327 386528978 529438003 493287405 716374916 656625830 721116623 98600383 176898274 503140560 926910615 870480247 939893053 394642249 568173337 962029200 996358865 819230528 959809487 430891319 706665660 18877785 596891723 650671465 683577938 481056263 489709941 778896443 788538147 862985495 873377826 294797086 726679446 881061167 938361376 788667250 879769077 180600812 762927499 341698950 944539248 450938610 550144083 298066429 420269674 921197596 975746715 711414724 725723192 504034456 536405134 113489342 569949444 200070557 294421302 45196323 94934270 699490212 708526690 132392358 740221154 465678698 969604203 862914411 994765896 246723115 428615128 904571051 998640142 832026937 986231430 403647973 812388169 751259018 964591725 472138598 762424544 210449418 999941219 824601561 913894027 677324178 932315023 649813539 779997230 997204922 997478636 54328925 80442549 115669320 985158277 39001786 133735945 954337141 980456816 533515583 638757577 577687958 657590482 818607089 861822547 114678877 699044782 806694889 866292788 279925538 531652370 341219252 940044159 471959449 640455686 381820175 399411411 273487940 719574017 948202025 974297114 730976105 820116156 603290495 963711989 595810975 846293876 630696661 908558460 546983641 956758372 324357426 758374733 844119969 970504603 419794962 548363890 579677460 635419045 429474291 696548538 92931580 579339998 706221434 757500433 938277077 993150424 572169316 796832357 599701318 720728551 95489960 538260831 526243814 697916108 76738131 980477504 114645845 290622376 360564644 384184005 101541064 146231422 484394174 848303964 885022244 917093767 431649953 685417776 534206279 966858845 454657895 487874084 459589745 734432668 878154276 969985478 381542489 416603528 190082939 760701419 944245431 955657364 879593149 918138147 784879849 793542829 809543093 829724179 766729369 865063991 503044666 630688268 65204107 615281886 969457084 981715279 896033923 902348210 476389963 703686990 128777301 219908390 361073481 855207352 589846887 655340338 696948500 897242706 137340096 650642135 166243261 336433471 941584250 948748954 777902654 847720574 955439581 999881689 193155186 223696798 658041358 836939438 680645480 722338437 627576435 912408711 603391805 749617036 693299504 893701664 503525827 937663539 81370270 614672870 21115469 513604219 691250967 908282912 155959029 838117648 884604038 952889189 17335025 821602720 351124500 914200561 729276766 759802325 745653399 878551565 277048437 614721821 205844920 709937735 761688857 934788968 67287996 682154871 723411974 893730058 150193155 895336996 613735836 798655511 250328312 333321629 241781314 854479252 390664321 915461683 498755043 538749879 156917064 261169761 64112523 174517352 195602071 788914871 180002624 931157320 587630891 752555952 678752064 904756886 88391194 774020327 783815231 875314190 424996878 978640388 927339186 940927478 225281665 981987811 304328725 563436544 708562995 881624420 569697650 801803011 253362017 854743605 273393043 363860388 774530216 975491112 6869196 504409194 968712558 995713452 123611225 925366762 710326581 833454033 618347628 989609091 968046180 996253981 350349969 380477871 96593494 745367609 384176639 992862939 240861521 566620096 649718494 853666180 348477039 555055856 28761236 400002270 462316477 492999393 783511066 975679772 606269067 756390603 629376177 963937191 615232424 916502700 547534723 880816260 538004923 877376825 370551900 713056313 778543873 871822398 215769501 216103139 964364172 994630416 726845915 896005179 927578629 941204077 131113249 772097250 851242641 967919526 968732523 998229767 312754781 802143486 606200977 746696517 193008590 433139200 995649758 996523880 739729738 779795868 246908402 988227314 117872727 782619063 415261327 677291426 277433184 738113913 45795779 718022893 781517484 859092795 757642036 790072600 75929425 706288605 10710756 591004016 33908682 410853337 776737697 992103933 2426263 751342332 341504528 450769874 127289104 360806472 516508900 641790593 245541878 578754752 300159872 712780408 215809109 311555032 498002466 546481305 483723531 900679138 963379415 974316462 64140962 258405984 458110307 635222334 582301939 972905365 901284147 927675152 682220853 842494193 16900050 410015026 877478467 958087049 730598475 772711633 141002671 873478289 689850441 981936610 928529378 994980453 965620765 992810139 763252405 865167749 555145582 857148643 262400395 743891608 411624412 518354773 235430913 805729875 646221118 705626473 528025660 824363552 911614999 993422216 965268353 992448896 152509988 485441594 770154388 848929810 614978995 663239388 75397018 527235957 608670885 735492683 748136049 750212247 245176170 349467230 338250460 901799906 185474142 430642759 677651736 858426372 739340760 919963197 893196883 899991869 683474595 965560501 409972043 792572499 628023393 936117437 360766111 361474546 457046324 984403772 173717760 268052724 689461685 880765299 949974947 996899377 411836914 422301404 666600499 806101802 370521026 384932503 660963071 770578278 664876566 908461566 654560024 941069428 587940915 651694292 436557091 498249834 620521814 805490097 181114922 772872925 761741291 919679777 604191889 835868466 597790959 910837086 928544372 978748250 512496601 825731151 415737609 540037243 882063611 991186914 507727811 594980431 167188482 475420974 939387329 956607738 296094134 322457526 996261945 999957966 911817343 997321101 921378886 924778169 765403355 984620121 792357646 855296572 190677628 245951329 857509567 866589865 957036095 990941245 362314376 665179735 187635880 410335183 838778102 846568247 768393582 811696220 813816327 859574273 162468930 881264470 791474960 872837459 352563863 778462407 720131603 790703905 521580347 661897248 822560809 864257667 672609461 951157272 942866216 950433256 940393301 946280291 575017863 910615029 343649362 683306153 73276493 90446713 805003925 998444845 252541594 504097516 191667066 756320688 802769088 963512347 944447790 986837135 1245023 760106459 345380259 420472773 797570457 798905634 464534623 879520486 452260289 711966518 846561626 966956538 388692427 819644851 989387337 998555106 392560452 494351978 196785041 276434353 260410053 478563007 53120606 671370793 582109773 737562519 576382382 739024049 556992465 872287367 61551954 375006868 925039382 932127162 714257525 784399016 532113875 541525432 403320992 736602789 485868534 973554961 887725056 897947337 633981772 830178685 252608442 402476297 801977808 930011203 866340788 913092219 917539624 996792272 920057807 925888793 582125877 921406068 121178731 998129319 389076093 401096970 290147018 868538559 440056806 860199691 584253654 905871390 189158175 499987607 690336028 888985795 712445330 916736720 975650501 981061325 173138856 585361137 791462322 821071212 43245469 501833325 645865 195919532 213584166 808900168 479102335 587610018 898715527 945798744 301672089 663425942 747184796 893878920 988981915 992035548 942148242 949471522 574990502 924328674 255572649 698492458 858558499 992286644 390308678 409587149 265879205 379773804 123580524 530399311 680687757 941137442 301438069 775612519 680331044 692605532 64124250 182213690 596471852 620133690 131740061 409937769 235249099 933725843 28279235 117283251 181278659 829022851 215305307 451294586 864181712 994586959 268628266 696974747 543253926 682286127 416149190 762644817 950881334 975376365 524266467 584208664 562924623 960319003 368124908 990953101 871686767 918677020 503574164 700138435 814976141 848640504 871458896 992189290 747335641 953819575 921064977 952974313 390837239 468551359 419440789 976201889 534587478 634647285 776360003 948308342 15558082 540890188 144849017 645274135 439885351 579157688 89377734 199805439 302465649 951672674 700776752 986342470 946156339 980879205 337050998 512683160 442807516 684871007 783505587 793149738 491620517 719228414 344642119 660787562 265439746 899914435 893599072 994214072 117727438 707683637 324944257 431384683 781450260 859694508 47473379 172377989 516849658 667539985 110161585 477211174 722535653 981981454 887257597 912349851 367556635 491324702 738408962 756526989 132892595 260689817 570193046 574339740 179502009 880947853 961881498 999965544 679580764 865522186 140147130 675780954 353201771 573271012 845246724 890382365 659384925 859621346 850941985 898897713 888273375 973327405 197163063 202807650 465452677 871301789 848387222 909710153 799404403 970944755 688064302 896772417 903311461 995059131 804871921 912061832 419699446 504057831 555360066 770746076 460888522 948825007 119036741 986105677 408598471 895535134 593655195 774210243 599387473 747549727 744512741 909233061 498655994 868089049 103317636 255505744 765221421 821000097 285948622 907625975 772581943 981551275 310299353 414897362 934127040 948275056 37488026 717420809 873563596 926968221 908654371 976854764 696519189 806170767 843972140 997951722 519011482 753150151 643514406 764926485 349482557 793113312 647563908 698569282 64921179 87998866 778896500 861376932 405909562 838352113 674873295 819594108 369315470 391255605 707690090 942451204 139613526 819307491 65233024 601258466 648824464 978903635 382276564 502221473 90078182 830851677 594971148 912771438 160704006 270898507 753917328 893374361 57690198 802814967 809964863 868529239 485031999 893680435 953530173 976519407 309004705 326941976 858650812 992026378 407261228 716312578 943286010 972422866 594503512 910878655 818214374 872042371 622453860 710287912 812582334 978048648 763201581 871577983 73160645 474778929 619316711 933880422 108063545 700306792 809811985 841118190 598662198 644597514 746562937 816302542 625936537 769320134 110261034 488848366 530927272 609555525 90185433 699537483 303048947 320641063 187881197 539865793 633023745 748547566 702293962 744375710 947737154 982903480 182839784 349968827 819603714 906528572 534481421 542973677 732736979 983080635 901601234 946250294 334637789 728180000 224656369 599870756 266380879 743590613 967700511 996161636 651313521 762181802 175244985 971812206 147122534 771597803 390651308 955064290 397229604 822946243 481689268 664207382 990819148 994403245 241327197 979234484 315542117 658263153 981369075 983966270 337981085 752071663 893329111 912065037 182081124 457497805 499406048 560195833 962670556 973154367 797559659 891188082 560666055 697242115 983228327 995443782 175547211 866100845 972536535 979223077 163020235 179702330 227323533 802776387 873966085 990756768 220033553 440174998 577398674 626696893 674388133 798355637 869946309 899406103 203056673 893949020 360833506 739476224 158606777 808224514 710869477 864490323 485165604 613021588 977298903 999612106 512482946 979864085 945800816 958621530 35569367 359632378 7718320 584741537 445693362 777975333 59320805 663434972 529734761 661394479 495462480 772068534 693168151 853066719 646052962 996923315 89854844 707520259 938456544 974096497 758299353 971006351 457886279 577834763 834160241 843221033 39151549 259194874 953825448 961079526 975027439 977526265 677481983 677648833 478215873 781552906 349116632 725531696 483574940 587836469 806180933 941889758 456930164 911680027 794350578 835138474 479992939 807381042 894825381 931933174 785728793 992478421 620448402 760507787 987258872 992630474 289379839 414925728 217657236 570808520 451865821 977275357 656673286 735970611 330170607 448243967 964732447 995338244 342810724 348981141 770785195 787980288 104462417 911547264 677354825 918693345 861684932 974075092 792024825 814769818 605862298 629257432 2876487 911450908 839541716 858774486 181344663 806230386 849071085 979024075 833651443 913395497 151461723 635742428 441281371 758962286 72973411 537715751 74578225 611298888 155984873 289786682 929328014 958256000 562088326 808770429 217463292 289070295 129102612 984836820 172144998 856789536 583853585 612132103 563410469 829937611 624762362 975340895 75900082 993826909 130093148 743618129 911527569 940647456 235998643 473111712 467618029 541080213 876194506 889906320 241057560 928018670 840555011 876137846 653144828 975485519 807746885 916817701 849885238 897186626 945093512 963690324 374504605 920413133 143840361 699041497 912189535 945182525 992388677 992664407 456867722 755332233 854612814 938803225 535570636 636906700 488083974 973878210 603650272 820573613 609703473 683590108 922595353 982274627 523815592 680626413 600261868 836649439 754741868 801430665 95976219 672886335 276521094 988742630 984837204 988919100 828969854 869476715 831843065 842562207 190680816 349384479 948256061 990309286 591978206 698373260 810172451 847911398 340395644 803544529 420766590 703644991 407408791 501029266 946638784 973826355 35721455 944226836 403692317 957680244 911310704 949872500 66734826 210315560 366202190 805559910 790499199 878060814 260910362 983626096 862368598 865840281 236758821 393715001 495690461 496189085 771803737 784930595 57978842 398363185 779416131 934911876 985119800 995310435 674760501 808016841 419345256 738913546 509509261 569862687 96789869 128485725 396644865 539605692 419915301 616938655 327313664 747109251 762350572 778153415 695231483 953928669 39441804 629969285 388708835 402939778 555860090 827293530 902429177 927903396 510465481 535085239 327158785 877144888 781263090 999984485 837223270 917633058 653903523 954313755 61898456 894177234 219617645 729422718 573708671 648515229 606569138 657634109 256379896 922766233 589596107 783367976 775955576 817873375 421097789 690654763 924435053 979325288 39439927 541112576 854914364 891655932 400302920 807101840 255881927 982762859 482421151 730660305 387400452 586779869 55996879 660573991 822920820 886367500 136301932 979721865 121406886 271061686 592091015 715729358 815693630 832578552 650655810 847333630 29921890 785754602 796939973 890386394 80316026 901027659 273481803 401471291 721945558 923402292 352310798 675439903 589737368 945158265 983076780 983206070 970751797 989286467 5278959 674303547 709365382 826215692 555461181 910124587 819616575 995270767 668280409 783272158 852949304 883244290 262933941 471993999 198182921 891352105 675629760 817972702 104860398 288510419 88463015 302452696 786179817 947934802 487943797 804342760 200815600 637316210 234579068 607736457 881200696 977691456 859291120 927800786 588273887 709863963 60030583 203901898 618910897 678656316 697796604 871183705 434651777 596383119 571678649 717815236 257590427 402268865 892532554 896589741 5664913 387739043 14118798 652794901 113001766 998521018 362858324 787621734 545649415 759770417 244511113 692850041 653057534 794809300 711200861 912111496 217279817 696510967 394264464 609565687 287969913 427999980 116521531 510161345 790924209 962197722 936940758 966727359 521908879 522713407 232881357 776163491 186156326 313895433 872275129 984672101 25396909 369510887 22589274 786935982 626098263 928327192 486712329 989643919 165510285 716269839 726440936 970646269 83232639 688432676 954850620 958377940 678425040 776776511 964484716 964664774 201147487 813464757 694034291 962065487 471274914 892137097 199431767 536845193 384657864 783648607 613034733 849129735 582619504 849653846 64361018 180274689 720954025 920110423 877821225 962957255 520980236 658349157 848650159 956937305 462208894 738472018 540654320 569806307 677273912 686016788 823275328 825922115 358434243 956765965 571651079 590280144 524397855 725129497 526023732 703153586 981585075 982134934 705658276 953345134 329205619 413819464 503719678 712023057 996721046 998222100 645230785 900838144 366392393 863432855 592943970 635792246 706413306 809127441 997662389 999342376 236262889 691036881 915508641 955653064 212508773 326706816 772885161 854208855 352690139 677118815 910160095 972958853 655867215 993463789 819831613 845733149 580481513 840759498 394755304 846656992 529212995 622541306 377594606 572385659 789181223 928491320 374581877 394171206 400631614 652646206 100517807 585777959 648323333 872086270 460661701 638793039 802800381 803592586 220237191 747707621 387846618 593840581 433729548 489833522 465487157 945143614 326051188 366689655 762060455 876537190 794541401 794981388 829075967 947061313 213965590 728986621 90695753 835382048 881312582 998643546 974584346 995841847 43978185 776455283 556347163 567740673 603723582 730565339 202113960 304766964 295417683 898449844 641783617 644448696 180933360 786336023 139872841 733865529 781845631 856659215 908758534 958099614 636393564 829261433 262320079 896395192 601033065 801853716 988489895 996138462 942714329 951796493 169683907 608150148 721676185 788906200 235106768 704678503 963366284 977830551 565644341 726246062 870476059 988048718 436337625 555206326 810422258 916719871 140684731 602639962 487767275 948038736 269575549 834894802 838162475 970315376 343273490 799920889 258456292 566584713 306723585 473276207 693220084 941313574 894665484 929624322 910258424 998659277 969834120 978081432 30569073 976524651 480001115 983736348 154955815 259723606 817791738 841012783 854035292 890221556 648566246 668882550 355407547 358062424 461496711 960653890 702703463 991989581 644157992 737544817 539850946 571424982 688272746 775484115 264305931 758087297 212721044 845509525 121555514 253199627 609959896 880278143 64994867 570885800 469613778 959774070 572826099 767316836 56937211 281953284 286788295 407472477 671616214 872911074 981604445 987420226 40140122 321931035 93090352 793934756 432994721 641916861 52005058 548371746 609125620 944222428 294043153 632961625 870639858 893003142 416438577 538102383 495812903 813119930 890109038 987230173 307948297 572654253 675661857 820964429 206971117 619646285 940540135 983469427 148760478 538515374 651804489 746077873 191994301 604562738 328853931 848513200 774163763 900125239 95574290 398184217 363996344 966627248 549394673 580828515 759655805 894498428 248430142 278096907 885009982 957280407 737194513 888742970 987917591 996907282 938525679 943420386 989554982 991912978 764865144 769106048 94615988 347168886 735036454 780987352 653302134 678994460 555168387 892789947 12272318 799686428 986534516 994939547 43579710 998239896 577832844 915283903 183524247 299640260 527190221 960396509 163499534 640294580 252624209 470924320 826907508 834925076 355805221 978698078 117872622 255553339 520526838 772614250 635888293 903716484 549963919 834426838 447181297 887855839 421379941 902737767 691929999 827652202 597413792 660993257 215399850 327423443 64627456 323156202 70092229 275883214 153408846 468518296 641520310 980216564 73024407 295119886 915829467 981945099 757034613 811623007 986974936 987176872 36023641 385445332 776723172 808078452 164049985 245452948 193833299 887714770 766074513 891662019 179135386 942994185 38680083 214304649 705879832 777740656 773466123 903849408 253401762 946617063 895278831 984169110 154285153 538295192 314962649 850538085 348526216 508382481 7122213 966016401 820208422 879547119 432470793 746376871 577357338 749078312 254677393 976183197 307344473 759896936 961841943 998615178 359774044 787902110 570018107 620134469 293098655 869427389 747589777 844147073 202939742 667269899 558903990 828953069 836046500 960531713 516375054 625467768 433280569 889934507 947577644 955962821 338232162 932186656 31068865 567464640 734454137 758500801 235374353 640667983 266144072 844657584 468679953 646191860 533034275 879779050 82949401 590625795 763034768 811492264 923758351 926337625 941854866 991251299 748233596 851091381 47559210 635118049 681987374 789318420 143363894 799841629 952913354 967548198 321710230 624094870 152108734 473837444 88118207 129530149 699835065 705641102 969058974 990498745 531571312 931187904 614788166 677245681 539826227 595529366 95559492 354725862 611944927 643778783 548343124 705998560 524458115 998676321 710654590 828293037 353146043 913226558 983072079 987592326 222310381 246246661 148378800 888326169 741548264 762602923 934138387 950841212 306197166 594330891 360750064 465539730 535782145 987428968 618019538 965515680 178196929 481311799 244859122 326419046 474418805 983958632 904684234 932659765 891165505 967829257 961786087 978784418 873274226 909606613 400795697 487333478 558863683 691897266 360386820 827008416 949685279 988877513 649350555 835037720 508091593 724641081 988595115 997620752 903116613 986989835 909485352 956443582 638341272 824945491 781718654 825596318 269688880 665820779 260464407 792603053 298893011 597095900 630417141 767512937 413548292 788418829 369551601 557339483 124659774 546404282 408163471 815505433 320666287 377872667 48465933 367306064 206331428 514024625 347128390 490645106 371477769 873543558 955785720 994637897 969172589 976021245 670650681 823958053 700300811 950050746 80438038 442785775 835654742 912299581 758325017 955636409 340010736 500177451 167063887 594691469 756893073 848390198 267030304 724136380 866462389 930489930 104487664 129895448 297934294 554970205 864073949 879208267 59937705 337433795 296772836 569720049 22626053 605557109 238248586 975829624 225737009 954034032 994987459 996758738 502159838 570368244 490341596 552562970 321751616 646810518 423615410 695536407 518467705 692491204 812999376 882169647 10560111 623038753 297786203 515786428 102023747 823991881 512850899 773841352 861589692 901737698 193418576 888261149 379316043 923481162 997568486 998423539 444024957 814316991 624750787 920133560 103884421 634153381 702496405 944655970 889716484 958872024 957572312 986392155 429256697 724138007 550161964 760879561 579498921 961901430 680125109 863671390 4559221 375069905 693578655 939319543 335095320 809069470 133205206 779706862 31162389 604356733 837969727 950397324 119788861 426338886 753883423 907866807 116710852 242135193 283509302 497491485 302990211 970751395 212057595 273918128 647348624 702952755 448779341 593569642 129716621 220206766 598157126 610450376 293287109 650920168 123245248 213744934 839519984 906080261 123037242 331550242 316334457 887490101 195182317 450553403 44345825 394993711 430953171 810511442 903254100 921766589 492860418 606962936 52808475 802576569 674668286 816193543 935264933 964227208 87680002 469855134 487031163 810201224 580013110 617314472 24186220 672081706 989142979 994904238 334243107 423066411 416026568 644487086 539165586 873247200 281976990 994503042 80868906 295648899 737491795 917334309 301107987 628096868 415732106 423785456 818830324 888234935 439780754 453423662 881897937 980140930 980956762 984017024 445984924 942919728 455278955 860894671 194686928 961109598 996629708 999000559 55876164 282895102 41829125 599720254 657076608 661343807 624212558 802811758 607068269 823393313 454286798 912602486 214431025 522171880 359736048 693292760 968590543 990733996 388666782 624560968 744318275 871837871 626437330 891451751 372425199 571937941 489329679 701232582 68257413 932656969 13673666 488278005 834800416 922426104 883046242 951910294 595498022 653898502 616925206 952454796 288231797 884521942 330115425 526578593 850774098 896090132 692081302 900402353 567384197 805558705 277972567 934411820 46199663 60156896 752717894 769505461 522424256 859649915 66396329 408412805 621896196 924085677 708925598 790232029 13450473 290582132 406126304 749583214 256829110 362172217 949643536 977252559 911286591 966726540 113876934 691200587 847204259 885896872 860076946 883951994 666393600 709103655 53108458 970689914 434715473 953800641 386532873 733089499 764363392 878410283 866500636 911311740 804273132 965560949 330170739 862351294 391596594 577851929 941531164 989510562 510830387 559482465 982796773 983404601 596929977 879219349 868821678 922020451 544670841 928224339 319369267 981271250 571701348 614883797 396840882 780219761 851167487 965592463 432651226 825691252 710413117 906679567 642714972 800751799 459896648 705118571 291975266 369842925 225384670 960579559 755914532 823155204 133958003 163895336 240163475 722282188 668448110 944181438 803269469 993944396 426817296 578867357 162667683 640659279 845224966 941170787 82428547 967346258 353213078 482868847 235239008 945972811 565373459 719355000 536100046 927737045 643841663 973002654 907343034 944065767 423968068 986557410 424891878 694447303 822293878 998944834 112724476 264539566 909639784 997216767 276746753 884398448 669772140 938910479 611148964 851125970 509297933 681439472 652790101 839631506 813617085 904672712 111471380 420905802 240365250 747231345 775720897 892763521 268765634 876881293 362362524 520229058 297300121 773866296 243061982 760279440 79365238 142967291 324941148 535726809 650962264 957904283 170949935 792636743 31973657 290781360 872923718 911153094 467364406 539355370 873795042 989650994 669854386 717267745 936503644 956597980 84007882 796733301 94459676 910462578 607495021 929397474 662213099 901970899 593491380 847572525 531043778 871170390 673590160 854349179 404880676 644153056 573889937 611764914 187531439 829058664 80240598 905424746 998379849 999254962 849857043 978529499 495022143 995898801 101821687 826467506 736775268 976466144 806688023 937207024 112286429 830927959 488713884 901425517 882218597 921946954 324979143 847058932 843328136 879653455 343663287 969020338 256807234 483820184 243004468 799898160 108437177 592583975 462556356 569768136 549583510 750667037 699598965 929839823 672758007 786595000 578128991 752458299 816582104 851562964 791339979 928391060 661368154 905468888 37794821 719893426 828762429 954903736 319508617 950525703 837417350 851842030 632799419 794251893 687129302 918093718 737604005 767773133 284551128 308670186 932685641 971685715 732851866 998256487 769648514 894718431 787372983 935910234 691482942 773834851 911721870 990060086 190715944 386399812 955961149 996323216 663723455 831155377 841773792 855779533 667943927 906145002 707755041 722598884 783628496 879675944 540660327 756448241 874273759 878934988 627162954 746987576 435248124 979151963 63033682 208560365 740847586 945437541 287033613 730413511 498190675 664774891 74207873 731717003 5133527 983439374 917653777 988659876 615715661 940700949 233397541 741591619 519682714 590954722 667145849 948111765 474356051 677290687 661450714 742097765 844272343 989483585 381471987 438695504 890629626 895674326 272440900 968730354 996189947 999371413 389870808 496370211 813092151 985547187 603335588 929675448 619929918 975661612 490248403 948460893 661171066 718200718 252719896 862650933 844768473 980557807 422998377 965975334 560050084 672656252 75314559 188013816 185202134 810166478 386698368 734027558 527680820 685935967 498614425 548809181 193580685 766658847 207004193 584941406 716823122 932591511 276032528 622342437 106708125 631681584 761001068 779390875 939220345 962164041 118483606 839142223 473536670 906066155 831094793 971097351 416039609 730963915 896468349 924109772 627343040 902426472 124099071 539425757 698110431 880274843 22139359 683366714 172729294 409857178 378423380 522166232 559743457 800612574 629417099 825871792 453559675 551180951 869027247 904166123 184344234 666350499 687689990 932829948 272668099 820472546 8408655 259253023 30859462 201658460 199945794 450082875 201169979 684329048 941402527 999913807 342255606 640323235 638463292 731099491 581272562 939185539 878838275 879474206 687387927 720984844 147055925 637790443 408081996 752792700 395837590 984513138 304692907 714435278 278545592 677162365 47628200 545228919 933486188 982473928 397940117 749556419 814512885 844053051 85152261 879355599 908260731 957862846 910046985 922806888 306111595 330575351 883100163 938506032 594212339 914884073 301390722 812976453 465603427 665842555 705999895 748176014 741079946 964623710 775791289 874847941 412189944 573346585 550726862 666443511 366398181 706845372 740273404 797929694 11512232 226758924 711979573 816416997 525194058 777244260 606696013 697322660 634651812 694509076 750480086 773695527 588188550 673997804 214654018 299624698 755577341 793953127 731612304 754707508 524023874 593104635 540184032 843423049 45193364 612469121 269509402 502353257 298584309 944813210 778885870 876370802 942772717 964637784 303914984 381146251 796995188 853185654 857985008 926107764 47869288 216294917 215385578 229344126 773380067 935946437 592993042 797177798 784013026 986648848 42903467 889807651 396927027 478587049 591182698 624671095 856790001 899984905 914855931 935796292 892634206 971857703 570989525 743426470 413958465 554844168 536686126 708914741 787957767 861865055 145753864 831136761 762459103 820863012 342204049 701159080 711155554 861155157 854751499 968569792 45301727 539538127 330575268 440539359 551795918 924848746 629066637 738770775 122179152 285835981 909573373 993168099 688171795 705870641 562943814 870856990 991479979 993501345 141806269 659839179 466052109 733135948 800155494 828413754 466513406 952204445 269558804 776192174 312504517 638098669 688441823 741312004 224705840 747432023 499775035 973950084 10957418 307461262 316919901 741856789 883412369 884044805 986490832 987651121 267819802 643669168 780904061 989546722 37717934 680562918 215218516 328996956 985237979 991438466 230200795 436121249 45082348 384066369 544511528 609515202 946627104 995723413 376399450 569694416 275917280 466444582 518397319 915257629 452463636 513798084 745389623 957892162 131846481 688400427 457811988 466543941 27814990 764620786 901672426 918310848 598238288 674223163 723569414 855730560 517998981 686462743 932290961 949213497 66037612 267504247 375970278 641859103 910248589 929496210 963995072 985326394 335189803 833755936 13939851 293864653 404899650 995385085 814882446 929880363 103956212 927855830 177375026 488818858 876140561 964496597 558955477 596107909 888084556 963199094 480686233 798089843 676420733 850273534 279212995 629873782 565033604 981411393 934556187 940565878 953236586 962835722 878021497 937779739 93879458 599913187 608957587 902091474 427318470 851243093 644721792 659659489 71331800 407005178 98429228 107127669 456026414 879027129 215950473 309173808 459541798 866474023 353890291 564087636 54599513 695838281 875152741 938545935 9205690 882587232 962456047 980473747 824787859 833679604 256303077 969143668 836326399 924833534 441276101 676131479 226578889 906295589 485314766 844212744 799061263 912185822 582973904 972593922 12459648 696759711 412198851 892055390 599367947 781698479 378561581 948228306 722242266 767396319 846950077 904431852 888925308 994700696 501777538 596330367 347041047 969842068 298850789 588893272 85359094 401993357 464492371 630429900 355307889 923008288 591927995 657692314 712322043 748141114 906415370 934469902 852080186 934995003 169862927 245938180 712040936 915611915 56413743 973013718 319802168 973109474 871189656 969209627 168670106 371137780 868973165 962273449 762905519 887178083 761205996 833910037 463835281 496752953 592682168 959281309 634372692 759698262 713778514 717130722 243205121 440938121 659452148 731959552 276828641 498238277 652033275 722096227 633694668 678127307 46451964 445119030 767440960 799373059 298366444 714570667 575004265 973492125 914938413 998884656 681848268 764742767 724514704 990280301 781494579 868605917 674042292 786844262 437798677 776172936 373735065 574484300 440046799 524972298 329143337 619974701 732466473 827705906 955542934 968416108 567994975 603607692 977887332 979256240 886866648 996802326 154965452 822133631 860028202 924412647 388175279 929296500 207899744 755124195 255991450 841808267 504815123 929508514 168330930 212199259 767348387 921905806 637782071 713681479 83670501 646993061 141142564 908568868 589919726 753555533 340929514 931921577 378704034 483113473 896965280 989798316 959087681 982585423 886746499 902585266 775147377 825215293 380961679 588979513 399597120 584935204 925460640 999548077 632890067 794420595 658142714 860280369 336693008 925419647 849904121 924630545 20383549 349466732 161233892 481463430 903578925 915224935 931590629 985045421 489906904 493918259 667506898 951502162 393724352 475711595 529824421 938510031 770400822 993933561 895020778 942628248 208431034 550570161 277574669 406675291 752115723 831580620 952216537 990484478 757515015 892004480 823858533 866166625 741729474 753750090 657167055 804793492 17832896 931548189 135722142 506460814 866968182 932955541 410157713 421666333 821082340 854221322 12769891 842994161 740488074 809555618 457049758 891174443 37606831 460215038 389213142 555387579 880529467 905378836 166466352 535434453 44486164 649944189 525445357 826373111 559271018 628077108 661605873 744749455 827302402 892031931 649252493 840532911 425711047 856807301 253219787 816298656 86329580 840870175 916887630 989573326 254661636 953699899 963493729 992792205 647722000 938758954 418086460 947919987 386065595 406995834 411514070 774900042 863074435 983203722 175004833 733136996 360043578 540953213 473592147 495833668 26889527 667543228 151609211 164316269 913994070 949374834 687295459 935523604 490540308 593015759 10570015 333548001 631412532 723983602 607324910 819732472 175804148 198040740 411615897 582681556 730606811 903640783 546708873 839501981 878723344 975377653 462901861 842119451 224118760 760921328 268615449 811266585 318708024 644792319 629030926 932775624 763654880 839539540 566073043 884435692 514469252 969617785 409605497 585438709 418923617 555369379 631346153 915229295 577808083 947248220 971505414 998958190 360263892 887505909 444052719 775950120 688929516 827812951 378180728 790786981 566981326 797346572 336166342 993258573 460965662 649198437 992315204 996689548 209009728 407963861 310763227 954749972 718996712 792630062 852959562 876083940 114262755 387056173 436221555 871806852 681344399 703590917 742683738 856996655 479006882 845365858 205328357 277557683 367808523 608595310 639795293 869641179 156751474 849139695 643179267 681366845 360417586 502857076 473301627 930103098 429097893 830302561 630644882 669930642 101146595 272759845 476923089 497035745 379840543 727631646 221953520 915573875 657661737 805563858 721979710 906973612 800441071 906684635 877539685 942022878 797798706 854864538 543982412 849203907 461204232 717154432 497649866 565942626 282421437 752119990 866985445 874959095 151721328 810830592 889288943 955559542 324762657 944117699 749112137 800618701 666713696 908247752 362748516 525652228 972050741 980978669 267916812 990225450 603038733 630259247 482735889 932995178 196965036 963391665 502427232 844758838 667675594 856750656 956391473 969357496 725477226 920485282 701479704 715918149 506551174 527118030 664011991 916558191 451998813 952648854 935141130 948655110 402978997 528069825 628726867 771099102 84945685 657890920 611480361 838901995 255762514 634752214 745963768 959746684 736888422 905042987 458985386 995584379 578002445 912037623 29443864 611684833 106921770 148352023 674418461 768302716 409798931 894894885 859339838 902982466 495350794 888498061 921007823 947199087 161033778 389657374 571791717 635398158 147751544 398238640 300267371 710862553 770191513 815579406 292635459 696725572 419715116 647610916 191552703 949166594 115075629 869992885 972497699 987017806 700562495 885882909 983972834 998975162 599776429 631296826 97608145 141615104 449486701 508021199 810968412 818211733 968524317 989238593 726955443 939736929 114227510 491049859 876145722 996685607 329672782 668853112 462852575 651512233 190373869 709651386 936760230 964610288 858127955 964366703 263171835 517303850 119696420 882558009 634245064 761618313 321843754 992289880 524350384 628682218 538379304 776232973 561492882 862018334 571139510 776795833 993381986 995324594 691260553 711123960 156422357 782482145 335028269 615795439 216108389 278846700 130887768 556721468 536309522 748944681 75553481 375935324 981293014 990140797 462839136 837063551 325448592 495263695 896328686 907958733 797015038 890987392 128388719 217959870 820886736 871124428 762178300 956212667 697448590 920461455 338165200 865035379 197902807 708393128 351172138 739389473 896300492 998806663 980882814 994945993 16493516 742266652 829470386 836304918 73464833 843527894 354914459 691639167 349705519 994378599 127073375 643673403 939570195 959739965 121959966 463764041 217136953 946038173 33912348 439074884 652680682 703557276 674245296 805962396 706665194 707251185 989982281 999170156 269377776 988081818 661562339 788580779 814588530 888868907 605048668 904051070 109558059 593684315 760646838 811041085 379566857 703838211 20727283 423465028 240323248 868699394 232055314 494491384 259435681 919098521 83495367 852193365 582699869 585402738 252497675 678182739 625704345 788806117 108247884 195446869 357109769 943200380 978576353 982820439 617790213 906147966 54830415 636639541 99244310 643891345 520658255 653284217 833413843 912203569 481950844 664614695 660372141 882707498 833103239 970261417 200825528 221674358 863898149 866855746 806056555 875971738 159038381 352223268 969534154 996832580 969950071 994088638 277815623 355368746 933482043 949026522 713056317 780010905 472024934 492105624 882484779 981262010 985253068 996462361 615298995 958993018 905617673 909339598 629684643 947757292 813899112 895205445 798746250 837270602 874393094 966329471 909180704 933561597 217646302 280775803 860173915 910087091 560545755 872779459 897899129 963165576 723212001 786943708 130981503 159115482 863250544 912545483 522525222 757991430 741538076 920544914 549120466 967504955 539317108 781448900 314836711 958139184 965026669 986150378 71591795 698362834 279504902 361437402 674408998 923590228 961359582 963423100 855194745 984985853 126957036 901480530 861825153 981303218 521392917 934343069 160441935 937897634 837485507 990065433 285312030 294800334 825775631 872935842 710490416 947543493 41042347 300891743 661732750 917169578 181802271 480976256 597187759 661214541 731518770 826938226 251042597 563649522 323259829 400746698 784455872 979433656 271397773 453799876 735927248 742742026 981253775 993231251 566574851 598811327 362784484 532896738 832843651 978123455 278869352 347653996 234096342 990832861 289279850 291937345 325410425 449976099 705661954 714654737 38587774 92575498 250463034 928758560 118615547 800042507 899720246 949277030 879990444 920398333 525630763 700361758 877535039 949795430 601470492 781276863 827925988 915309873 281531499 890211481 646057935 763977065 315059380 546242647 936062660 960801874 515849305 787352875 773473410 983522253 991664560 998419618 21493971 261526959 344697788 399209222 769783704 848051274 751320396 794875335 309150402 661265718 338873963 643367955 53927889 239364672 398963825 686155403 687448239 908352060 81743289 517765617 608571160 835308033 16671122 131556025 359681919 886076403 882775686 888511021 959518018 963009200 2249822 556044784 411339467 737041811 346879495 447082960 429810051 548082336 650324620 690135112 910737411 965104189 946907577 995503130 883292346 901525450 87529441 611924209 536358359 580235455 809872643 927765313 786209185 916877532 643429251 889131333 197040900 254347164 722462693 819018125 248579837 834709628 649882180 784713176 59233830 527379746 27610263 892111493 739014343 802288164 815087265 896304318 369929105 518959716 490449950 582718777 401850440 708245977 629937729 888702609 741773876 754695467 728054679 932044403 555749599 930647808 27110537 951405009 301040416 710121478 158853262 586673802 98621654 851396890 231331180 755263953 555825733 865019606 613461236 828819374 729875917 730249519 422455756 544283531 692682676 908317181 969286389 992157895 606186054 728455561 495229170 660825971 464784839 941462914 458893395 468856085 130968999 962311042 175606152 346378943 501222008 858136315 686079571 807514749 546874287 657712468 884622511 887295597 8046624 750918887 202184442 485357111 455764559 956109554 448123145 995152124 722033809 876159491 977539332 990619138 564884653 566027231 215900344 612814054 407680995 881014534 944116386 973871105 338454899 631549714 443525709 794200702 662318542 764408498 625483637 927070723 755004474 982171674 407491817 866468859 290287894 516314649 598616578 709425655 489685212 652023363 222428510 259780521 317953553 645704283 907489789 922833094 285434685 848652369 778696970 906705134 83467616 97367064 387969618 469530960 286977463 397543788 319848469 777191752 69213724 927440154 993294072 999468863 357921438 706923584 218571604 923317079 166398479 399175056 204945604 740264489 343538345 374309517 816226827 816594837 868763815 884074924 268502395 542726423 87820487 461056001 397590306 448413399 269447489 660097202 96823041 523294372 252606834 515727743 509217454 641372306 361674415 477850681 744956201 756139312 290299548 979141585 75506888 726601580 382959340 835946584 3783428 998650110 681037668 838550639 377838276 484724691 628410200 947099073 60162236 854866576 428332877 534219990 577254022 908051865 650178100 751157157 373973045 587254075 979095893 994365457 919249037 933089719 374417845 559843285 991779656 992133016 483081986 495805162 141389467 987757390 332131150 943096707 483560937 677816479 750633578 856091474 373793526 538946655 947066725 953122699 576326544 616552993 370479853 910744728 784667962 999734052 227991889 859172498 24053745 510059260 64084521 407311838 389411628 994139770 196418147 776065851 481897024 638498485 773362828 944977927 980072572 993766646 532582157 743998020 841763707 972200307 332728441 849116121 58314543 894073376 593341086 633167990 556777420 656697953 701862806 933141243 915353130 994406724 789881719 814922019 954622377 988992259 284118576 551161034 586090737 670561918 147546447 462838131 649864027 991008235 494858283 535149732 824252113 911809728 447090072 724650253 605569470 641647077 270585611 364578270 959866139 985034063 495413734 610523058 259191043 865322348 191530118 901890456 150379834 697091241 125736010 802634313 953298725 955796801 576654224 838492938 427250911 960459708 318537960 847292794 672505547 815212848 846149866 997743984 956409588 957180587 604741530 678741429 750640089 868597796 394850549 471241349 521166788 523378475 959207117 960703460 131195273 724998125 447924087 602727445 364901576 672605905 48334671 358016958 179677921 890728025 588503611 605502916 178182548 313272163 981197475 983872574 467901963 879519166 337284862 728911726 881092479 931580156 813730641 940314594 874313789 974003228 641223215 738933617 371555171 700710071 240847802 271957100 463126612 688317507 530580480 728366774 254187188 838764742 245299211 425538503 230218955 312559128 918578133 999016303 561609595 900733510 448158862 701055142 638571574 685402270 835658848 902802375 878144189 880143299 335234147 490677632 762986018 979714402 528394119 856680308 352637514 950992681 838275101 965483677 112332264 540308842 988717252 995154197 667658565 675357239 112657390 606639119 297839621 299847735 237640255 875492904 140852795 330320013 261951201 417067524 661259882 780250629 884523359 962338836 67864919 589521506 850196885 892966532 109729970 804410913 635910392 952597530 398569209 763507281 341018824 970135588 855418784 953515729 336347706 865941288 337647652 781327396 268551404 380864698 347949926 902121340 517646129 773723442 768325644 854860849 724728245 783507292 200160257 508515805 564656701 935312335 658049077 709561978 30369271 250904873 428128522 464452596 599775822 994098858 419075086 690397942 33622660 687480565 960212389 997141437 431043489 514004310 878651503 881362813 17404416 92862752 380022394 841537269 806056697 867666071 842836893 863627132 187885764 823431452 839180359 860767281 409254123 794610189 277651039 416268684 511314901 719390147 97070913 197052151 564190946 914086071 213936261 541278027 196139275 454488494 567348511 947276373 76484822 376210949 687672379 840819692 777505937 864500798 742850295 859347361 696688268 970865846 108728258 654039546 857491232 867679110 809424079 979111110 69864204 177424384 423532147 636743273 6259635 605844093 241754125 630048611 661664398 712676429 923982441 935481700 703914393 925563542 495295714 790764544 728562596 783380530 74927480 289690821 994802648 997260175 67429107 675628992 619816979 626885243 262953165 469070038 667908532 790983134 697717793 822049788 197126977 929682677 690576425 907408338 173432907 235509970 55400787 394292422 526500523 955245907 366265571 690118298 569201767 985233476 501801503 700312325 730998281 869611149 524934865 883220125 908403217 953978656 530948432 637094226 549383196 784351789 403163746 740057768 980748750 990216517 218763003 429090464 521394140 946065405 510598829 923007905 738013179 830057756 214643246 840978416 501913173 662582365 587015885 617174390 504147488 677967213 833357085 940605652 134512573 593696216 716816282 924738489 963839485 981633961 255639383 567676870 187246882 561920568 698797501 888040336 174844229 388467205 837400245 920347311 864519284 897038664 431816805 536814720 163826582 748158900 827187237 860324061 703587016 876516757 807142943 928414992 573446335 994057790 621397444 787167387 178733114 393671532 116281201 752067568 586260946 625665902 275916560 919601438 129476915 697570899 165489811 192043564 579605176 683891808 669334105 763382773 73559417 767313912 461676074 933040303 632999325 847666603 562107905 713641516 943496737 960101314 109100416 789159739 22677400 365957978 936112019 967151374 257276187 742124176 540520850 615422344 725823064 966846721 424677440 847590125 581061134 914348994 330281352 453673891 923883334 976587983 302011334 819961901 608149024 791469791 390815385 874522519 464500231 591149406 785691804 843358388 400953881 648865924 442717547 656328623 842984845 843730363 400088888 537924456 831334842 922641543 32191969 445524579 371225447 777211708 199754956 377285452 963720520 984765438 465148749 474940495 861600746 866843258 664960770 671198967 102717717 146523285 369377611 740353293 530174167 848047862 232697547 697330645 522705186 940885207 86808160 954513381 892861762 913751053 866798838 989751519 220592508 672119721 742785490 917639679 977050589 990221677 784080583 784217746 750761633 922975080 425835325 707702320 788326211 819377409 277021924 306770694 137609606 548777973 881970906 892467221 178749606 466811566 249387573 774286224 188330116 917926055 170180017 543719498 147483368 653159509 130231256 881541638 932143683 983854244 326061355 692642501 371921328 838499733 848658330 954514174 850279004 940630208 444578741 650473362 762198174 937565857 525493230 590713909 706350024 717746212 406918410 484958287 661602545 956124266 215787453 980906743 219491699 424379002 484075110 676223349 672658383 891306296 336032726 511381538 69404112 673801456 730281744 858537534 953687639 962063262 846759231 987301515 640982780 720515352 180131085 946642604 611451415 967605974 461300123 741542720 716457298 903504186 545225577 582682127 435654018 898841382 695708434 997430976 312885205 589701158 678415811 966839242 601385202 730579038 563752566 876618598 193300226 216605362 438726590 479785498 30148245 584684480 436498434 701376182 878935175 884898181 775623453 910518986 418593032 511249468 102011806 672810448 975355461 988693003 133538948 368408551 899437774 969098470 809207974 844442446 487211247 525067912 12558534 451521381 294113780 813440434 582435837 767718141 309903602 781055477 488728049 758252031 118700111 892336006 125229902 484328519 305294052 437339788 315852979 754666618 927976685 937812793 513786161 900081930 66763257 330495178 357020492 358700634 648112141 658341341 974735487 989169980 462994999 952593034 260240894 803119739 12734301 398655951 311514989 367256065 821602917 862302103 827028049 832950270 7990816 710567846 624793530 701677904 587557160 678964155 911594697 937644297 789974727 912649045 760803341 793754851 533649123 798762375 232166597 598742520 133344889 241179854 810728024 960621625 514861307 935272187 758634640 960377952 911612125 922646573 423811124 782161969 312698465 789664317 222844297 694584546 204835749 536924943 621574180 921129985 121039265 921890241 325377890 713096067 374903559 754060302 153323479 940301149 462911393 992734167 6299371 819375555 407865580 779780059 136740995 614847723 433005644 737714129 73626224 972781826 297618092 766501386 344739124 596468531 700669176 836847095 757220873 783829276 652653109 721086015 432900529 813256137 299344053 331461497 52047006 300937188 154380542 332560511 136075935 527889488 307664425 378330387 859914865 969607134 737181917 846164914 117688647 311704996 232005395 949483902 711634147 870179547 672426927 797954409 520659225 784801633 39841359 706744130 390036080 586012581 937873 955452574 149266024 749501480 498398138 938448752 93945020 504676202 355025636 535020864 108326625 343455023 265979888 828123793 798088125 891012167 468223713 724918818 791809700 998612708 245285 682237704 598022160 873680471 573456089 903892606 659543341 891782698 186933378 813035178 925380861 942964814 618393019 670785513 18926988 51814221 657670224 730954665 151883224 326035076 631372332 772532108 311927516 924267158 451305940 880148444 521042455 981065929 820573614 840510953 364266408 842741509 860408010 883950925 479760324 992416100 134598286 966453071 966641897 998897989 215636697 361795944 687445028 961605959 427429691 822529693 443580137 686780433 496034278 982642738 726089924 899681112 64023621 586659220 912938571 935023398 120511157 312026161 602332056 927234573 853674089 948525705 466547017 885902701 358199444 873242985 925906267 995084671 925348428 955415827 573611993 752081590 643562284 828787615 204059178 830539080 46085072 297375940 342038219 616147131 193365499 577810319 762133637 932459477 120144491 737828977 467283178 989865777 395255657 826385877 670324487 782916937 685979988 943034293 262727431 861793225 140316079 809901031 568509622 632529301 892397409 953850867 735564743 989798798 601561475 883190442 298019145 515421633 31920216 974032468 630851576 642715629 493396475 526992570 570228881 814490422 283193457 559920343 756849194 893241234 155034274 225966545 705845648 873161719 57421637 398828653 317086601 349735731 362458986 556104092 546729994 826472035 565545663 588682878 378417920 627925959 175394194 941507412 176484605 363306322 539898968 825698299 289111120 472821483 326903093 587642106 411548931 533672130 845533983 861322703 467442364 736087486 325237453 968486069 725043377 985095942 1856565 296585496 544568591 913947056 438850302 890731526 98192204 987853945 289383850 817304239 798289680 829314475 889171099 919643391 968251707 997825429 831902419 896002300 45757769 141709559 807652237 998142047 407684822 757499214 309565780 763285837 791040333 839958200 528406244 862196240 981631522 994113532 609344522 944073024 77904769 662759946 939843457 955732839 37361745 836750027 59843898 853510753 511819418 576370747 919260626 980738487 450325355 794592650 158433312 939281726 982416428 987820360 955376302 959689992 826003063 874030812 537187290 543574025 479733993 843958917 557723475 958553353 276737136 408679002 269731395 968024359 562209746 962441135 631225693 941273150 650979097 778148899 572054831 775100983 37926394 251157060 471054880 809893169 555319359 870071790 292277499 841195359 976490879 982080182 764274225 783504702 525931416 707121751 552017699 902009193 618061174 917186670 631079984 874044590 537528489 962576188 980642722 987141180 175440023 187186735 815826631 920386125 90966993 421411457 175624061 299950926 19667536 445353387 187069920 819267839 385469645 669844528 293023681 396902736 707878028 827909014 688715013 773736986 859155612 965456580 317662856 558449976 732563102 897306585 324128149 504458666 825007147 947029793 332227870 594087503 627414020 712903500 841992329 991400806 534579274 743910882 738686158 908814286 234562863 436459043 182894906 939032269 70831014 808422493 479413812 779358768 153842544 975241203 618074124 850036692 606055777 638366857 417064474 450294160 880651996 917942814 751588719 762836166 862514918 986318200 1544780 524465557 381578448 425969823 268164992 471845983 564789419 724315570 430042023 510365974 914458709 971983148 921833317 965440592 923457583 944613369 476127112 842569979 282527264 998468361 711661999 981401409 541012881 595036825 436601610 514215997 468351785 570602397 778258944 966246965 507333330 545329628 591108094 830390794 618214854 947112763 182403924 329066144 412634070 722405305 693430823 961375103 171681397 932336005 390176277 640337395 186763547 323247216 163704202 335305387 383464400 412376395 630101120 699084699 235305171 800355468 839141973 878271996 462120327 584120889 244860086 901523292 160082506 398937140 564986738 725735231 554228796 642979909 65659815 179293114 346205236 406103047 568119570 664653702 121061753 391834254 367429112 436155026 516292471 562847510 187292696 428447102 959241550 964555284 610867577 611711565 400741972 503494354 482451258 929847053 271247252 284174308 122165352 904509446 329534946 430262542 479878400 487514321 133267915 244047294 867377642 877816892 973028650 992147139 732083867 836204387 940372610 995600504 862983390 981007782 109004947 820484953 792308593 892509360 629407510 830978973 932674770 971407043 557756954 653654183 275945204 731982327 118984485 612673918 843840348 845646220 681918734 817919032 976834563 991538161 790286558 898721316 497416128 716034172 45684603 262247829 476460508 711525264 842482346 910994357 871960562 999821191 502332086 969769707 605718937 720919371 386021949 720967566 192104723 553021618 409764854 642770454 133921665 209204808 27640075 940329486 235577714 918665450 108276256 551252529 318215687 363201873 517281387 834083721 283555483 655883095 942943132 998517517 566230245 974798161 2722630 792718022 760461753 764827211 875202271 998787735 722725202 860551984 314233294 680394622 230659431 531874081 481388436 865108099 387684360 813080336 6950865 827606268 515335514 547327372 607737238 889733181 199459902 853015972 181929903 220000472 165926309 399912054 360501573 814380578 780367498 830882680 98265365 850817663 911071830 979437059 329569838 572864069 557883939 593236267 800139793 856619879 988014207 990759346 710685553 785649354 668158816 901999140 615731961 652760825 178333482 904736836 544697122 819942857 672506366 897358372 324941684 479000313 208002292 871862879 764009691 914559137 520723276 845917979 525878286 778949617 91681097 287785262 30870281 517796100 442077957 606964507 980411561 986539868 887868491 984044222 536861274 892925565 790956500 924235691 771358510 961980332 143289552 930704101 122951696 454169556 112619697 324267395 814511347 928077595 170112096 358177346 311135665 884310980 551913122 970976878 312664927 636541180 389693971 889333301 464973585 499692298 257580455 294031709 322550758 488558500 884455212 986840051 65899963 180155660 697350342 739234507 459684771 559813280 980185281 995841800 191016890 210156395 418821053 851854025 344792595 380829990 23565056 617695407 741971368 804198808 64059331 922239755 151238858 492419761 684635647 756138552 885216367 910067148 598652731 726122944 932336440 980831092 350613654 387885060 502482554 617366125 348358875 695572693 112809191 459896946 713187548 753201670 941896678 981951917 278732555 980806613 899147113 903032105 889917444 993975705 151426327 547191717 27285715 280525226 743563419 765797325 290742816 634028790 227808296 757152199 936996730 954612636 158858529 495744513 495283366 528816222 487041934 947924830 474187261 844091058 476073918 765499034 895301626 922448103 621119158 936366823 34820631 326698494 215549711 706820467 386383127 717100585 112553861 789817860 317302494 869188455 68721907 777595869 716535102 772183309 74034727 814197387 113151548 911662928 305988269 709796753 97671638 429951206 192692657 962150319 362859390 390350444 833071704 993101542 820603598 823694053 691113585 797064927 465706994 504590052 457099639 763235795 207980883 776950576 635547076 773316461 145732717 352742908 115026283 379388378 69733266 719639974 504557151 803123657 368303319 655573717 856579850 888961595 42289461 914738674 950743572 965954777 136613007 639083048 139442103 552521098 115051574 665356705 509240187 662782020 336701152 799312746 35865111 263048138 697507022 891665785 682728245 735077893 896282504 933780394 585519799 588300865 952001473 954210284 257336822 264197403 865534335 931745954 354173917 623330281 417962615 910052862 32111500 431000040 465997787 996280648 154427489 464773087 444533920 459176859 963275912 975079612 924157850 975702945 861477634 913664012 561435658 758800088 235954270 565369901 7188650 971868712 602192654 910876396 818736990 914579011 684262050 987533610 438183388 825093052 349432130 760886710 398218713 529646876 497373597 548712978 220218887 936222568 476684218 861823239 863871642 868986878 510937785 851963311 656664334 802716504 976270136 997407106 694375883 912696731 684811977 733272635 940366129 953005118 791569325 979706125 379858168 768395892 325489829 687792531 988733858 990048615 821291350 866208250 308934773 585991585 303586678 890686123 672980884 790082605 501027617 884220280 732707466 880584643 983712217 996092448 19435238 208174987 90327453 577429983 230851662 761020630 441161921 545002831 777733543 994552977 913260279 951576278 138850872 277970508 784584544 950521927 169294092 765899518 294361442 472486733 952602223 957033626 387997748 936429696 15415921 905021624 294127370 335237217 274076999 721749739 842332996 862675204 944819555 947041332 747953090 943634879 77565101 425477108 142625512 259696929 465288475 841533273 188226607 999508284 837098804 987715766 673031013 860430179 895310732 912255333 654398598 834303565 335038643 607829284 315983154 483837589 774770467 973282991 646418114 843281257 350982752 968256568 540537732 562104905 249443219 958618082 183457335 285145087 895556095 924896854 430994711 837121512 323715528 515157377 940661805 945234947 667869060 775667663 805752842 840330055 32939469 376351590 302699141 561948787 475219167 543215336 802949228 977028857 302313426 330812487 279410857 555767208 280912099 530133613 90289825 740513626 568298549 579922397 423747484 965659359 603217159 776366545 667707238 920827805 638126366 685204763 611674682 695310386 401903090 957145120 112356178 718804704 947754878 949189377 228521173 348429218 601728403 733346195 202507440 362525395 686923958 798304273 290645427 319507854 104475723 782664863 667505012 816620343 966287758 991974286 310336770 878018230 724447399 842942414 887685443 944854302 714358356 849721106 543147893 876242634 450788141 786192720 776683003 886632526 804354600 932018891 623938396 859078874 736185015 979200286 62258615 609076969 39382535 686909353 304061571 526091828 639493250 716541018 158149150 522567101 744887102 793374007 103344523 896441984 339623034 444347802 640655329 954563840 2876426 183052665 558879347 929483392 683593934 993210205 693111111 750373513 113787492 366475905 365895622 878231884 523792378 638669735 61863827 797492177 74871126 796836306 844929382 873080688 396047837 979730417 184747654 309976763 232316143 443563131 819677298 997487421 861979860 934102488 148891042 513674473 418388125 739478386 446223303 853624622 924103710 926137399 103006930 675584897 488591507 563106434 450643492 640462281 790549448 995255825 579429389 675340538 472645574 782415129 38767323 408222504 51837696 324483566 833458636 861187323 923018660 962710983 810733138 899591792 104203035 388734733 192601551 651212457 268376381 336882156 894877100 963036027 60087871 201455298 303113495 727294365 76253115 554783582 669321266 851460577 59729309 905053659 557547155 807037312 415101984 755278631 68876988 331586014 945191629 954423495 66958389 526139968 952616919 991339089 641171593 971866948 790457648 966662430 338661637 892100654 518206380 780299656 126921326 642800877 909863291 992291358 461401935 622693164 164651221 477822216 996584983 996902123 216916707 449417763 450593276 565716332 117351176 163025394 983578137 990956472 564228863 963593373 920219544 923195729 816728274 829776927 698943015 765166487 116887560 273554134 903225644 989433957 623957773 791583225 179022004 626553617 346565379 481386264 681197889 813861898 208904645 961147488 977340948 978909470 689083996 849988472 174151073 866661110 594687181 937173157 148385180 835053391 244568124 510091393 247462663 643094737 122893717 132412158 974361191 996875246 228299741 904821976 927538864 951898831 233507089 936867538 216234889 250064324 668798440 799484633 198602869 487379225 91390525 725388541 793093552 835978455 978875520 992988951 433612877 854743198 629520957 676426713 622117374 654589565 787468891 935221493 288489555 845047691 869885832 999686788 697158266 864540652 756257026 793641519 902157721 953648089 348339249 384978724 441794326 876257164 203966871 651290527 746563106 980407349 827453815 903062135 246245280 531327710 961136666 987838528 899183780 921705741 535121558 554754232 479786921 597029078 776390378 898693659 23193792 225764061 465381180 744076052 968248902 991502610 270996232 755638234 696129310 748577699 916728669 956025544 910973223 971729347 905024429 912406080 953452124 990024129 517295870 627224450 458628920 880522973 974264441 994051727 300093686 366050950 347041205 743618072 285276472 877967171 884433362 886864890 696954244 927943305 739266378 944302584 296620135 884579341 8899945 869869752 689643618 742290254 372331138 967164472 461737163 787496392 912447541 939234785 732091451 949254888 129809267 529006353 388404696 886703644 204253022 405651721 84738572 613552736 817969968 946878067 955814978 996372311 336143732 921982089 953859831 971452532 865163719 953732550 126665326 932029444 513147741 735672788 765846584 925607558 945048204 967994795 848213359 941206988 366412910 676852444 9284423 784465338 735128614 775243885 606599157 684121555 128401491 649702888 553955814 858103832 950606182 952901687 258626513 550632352 16369386 110342752 453926422 463447148 59491294 581737123 908965152 987195065 47387216 223303104 946831710 971831637 256503851 717586152 870034465 880207547 485921264 554398308 955440996 967415758 764801220 965566420 52295494 956410004 695309322 884038896 250420885 559886532 463831988 882679519 196610702 818527584 546515607 784185631 70987394 384979061 586203648 906822333 586205166 684702532 859483032 871628402 620334208 903948487 361009709 783436889 601072142 956363591 528907220 554766453 398261150 745815069 307777543 555932678 420521544 978656460 445103146 956280451 649243068 839121288 494909039 783208665 500070270 665198378 891262825 893037916 955411113 978319658 979864677 985158527 725070427 790254214 111913284 939402107 501834151 776869346 993821372 999965398 895031210 912252622 482375662 683745662 508773057 560766003 421646908 801991264 935947179 985332706 271051475 861846052 861644366 987216310 102302727 997643229 2853317 792421229 293927025 794345435 934855599 981990420 800928089 834972998 758185303 879197507 201464123 979070136 431373728 966879473 194909428 460684616 653691053 755776529 607701512 861852710 18698526 877699382 236388119 897528203 314655960 802453759 329225068 646703191 746639592 802733082 988216729 995703044 5526943 929600461 926395990 980528728 316477792 844156211 520240233 589790641 850848515 915033390 572799018 958141908 499918147 513162833 458708413 686884171 14337550 410670031 542146538 739069808 590899948 770976334 219734097 810901192 893644314 958564510 778919588 959921138 879379627 968372076 791489981 967647912 499191555 581310739 104866798 415326725 744498145 854320272 475305217 922140166 355504972 712569170 690660605 793035665 107777216 631548123 875870459 880880331 256066782 562790104 910825109 988641743 984724256 993873398 285086719 285962859 320928631 435079667 12755996 850761176 397193906 458272041 943280368 962726643 682502242 997237680 972814819 989957952 737795069 769113856 470489682 719726466 685166698 738816371 1939564 683185964 717824453 845885664 149690678 397636893 542477555 831091936 107513821 708992718 989494784 992851960 119615581 168611494 80150634 784869910 206201603 289864844 708578428 812353377 387979174 450276157 860551483 991436270 752464527 764263526 396347583 732491543 618290918 863912740 740791028 759886155 535981309 802195332 507394052 788158834 282374221 352577870 280675667 365812016 591294901 970161363 28616467 920982007 763718146 838205787 91601680 298129650 946709133 967494257 959980350 970088548 798251400 800826095 983244437 987057553 616287583 958377413 988374224 998106228 83723652 803122827 935567430 956243861 224429684 244498405 301566072 860502804 270926120 486492594 79735052 448151709 114506360 826878105 700052725 727011549 21680438 884145484 806768543 896715914 109099708 416750906 478410340 963145469 726740097 918627901 504476567 805253415 35038777 568700676 105440599 118740784 255832717 712309067 951575298 983570452 780139935 874408576 639449908 736880958 591804325 893169109 551953769 973007307 883565512 923711641 412016795 799227489 130532102 908973012 620626982 775508977 447956487 927500489 455620894 565393111 87064749 238347854 381266745 677154605 314980570 350756617 782153763 861148514 732139229 908531657 246074452 346455606 328678216 419922975 280382787 714882376 272784275 844728283 442768101 487749331 97695885 398100546 405979398 511064502 130860014 506631923 362401719 853809438 464229404 716193232 676700245 732060544 470767863 824664463 336928818 352801038 197526005 585956516 453587484 881875672 775743103 919165352 859788639 922143867 620887332 811017044 452106994 579360079 850004011 935733081 367932708 965510045 161756051 579366558 779149128 886421065 793151076 854513418 191287567 208286658 390088231 452833517 952199297 971104973 98455326 991563196 311682378 872126030 746772918 770564405 399254751 732239825 197233739 695040991 402155962 831487816 802153657 928313661 442553567 510173311 605637273 885873495 229422589 580641715 188647586 597123964 167783120 516993585 574715732 698481682 495707737 621985793 338939515 880685472 445947222 547769514 893300653 985824287 140545321 907942671 82005528 256702659 446379420 698130787 851678693 950476384 381971109 466853274 457579403 902865017 340569666 848373737 799302026 988440589 503392736 712642951 563848095 739561888 321226627 524010160 14416868 653738366 183948652 843622094 829425643 925727398 33848472 167632145 802886156 844995316 480472406 490218629 166989002 873400408 45711408 923305514 45809613 511742907 657175492 834483523 167528333 912356450 191551958 712805261 638813245 742663874 808050094 810465319 310876359 510345206 513291056 774339100 863634471 982132122 234638083 549537228 535541498 923192796 167013480 492039602 715276917 861638032 500217776 872658120 584338545 867366505 12259510 210569816 796610945 820861997 353014273 805435221 289831345 718520351 845229324 854789914 685701408 876325134 715752367 858840955 933162151 943120630 692407265 965320522 789273698 851960342 923929795 956556729 735953433 814514961 814802751 920062181 642955690 826509861 927688813 987385789 727717743 976263240 552186647 636694398 79319100 778468654 177477805 263426173 456867114 788010067 386792871 497327417 992168423 998867925 960162905 994497380 56974781 202051412 737818595 903992512 81281511 910326206 692378458 866351992 948124693 964097042 555831982 945731309 540654685 664661002 956047522 973589316 52430516 457649544 532226617 869902458 307822978 448832233 841344930 870131951 662339483 813508035 279682212 317198808 423278631 732389777 979820102 998389523 125156146 177689477 662980906 881396855 318444694 645689482 643556987 723283542 770125876 827140446 516029904 588990438 335969053 986270297 698226273 971424423 132402710 616605305 539425959 563112328 386486730 424335005 143174047 822607781 755743611 917167680 114599002 357910368 914569280 975962095 976980702 990590967 993891247 999998209 927293313 932180643 202955083 238066083 23609967 583350490 728131177 978931006 427035695 977451519 863888493 918092855 774813672 945899003 275350180 314829496 3443886 131686387 722601748 787540784 979010518 980769542 125134738 566809033 903217655 908699997 63888553 938118764 689746928 862862429 953236283 978960022 135033175 183682325 117650000 813087143 738857138 811783087 332333626 966635510 454234609 574463889 459970781 829353720 202353105 589932886 574574778 608052639 334645367 519507460 428303060 786619523 922137355 928699094 127121909 384193317 247763364 528188195 524728492 805638573 15942232 734434182 758350175 766336741 137044935 540807571 749461208 815806715 592624243 896760233 923814937 955908081 121744700 701489292 795580236 987909256 189983072 447603767 813187610 869567378 779120876 810075293 713825209 936695286 51506603 215478579 162999554 465701070 105873206 382259156 730099178 769177988 957844540 995507302 530436480 998610314 810569451 857262913 685751232 705896360 724885965 965233749 146887817 715380933 328923471 874585081 519724238 626138655 534453823 674048745 495653797 911364946 315864160 960535460 2932851 523385425 71165508 195006084 573882642 807959325 658119864 825295972 838742993 945348420 30510485 708818747 384678022 900117433 279317009 501505710 568025664 728112468 340644167 685381049 331626363 492439792 666595063 815016083 316022994 931187244 515898815 954669756 366498977 741405434 579797648 880121157 375251050 875103780 892464290 957544948 501276865 625542203 290290308 789080536 953406203 992499287 279985853 754572472 681322284 704670505 731506783 778578431 766854466 850125588 138976957 588146663 465905215 742653037 174523775 521213785 357494672 763023282 46984100 569225193 966725487 971366366 596995089 882383720 788184757 898908379 604509782 798470021 691216913 701344678 823190325 958538727 65727093 749971162 33217977 969716927 817591777 974883026 30502416 587054379 823114815 846468149 694520320 993468683 816235930 932267976 284032112 409809092 515393080 521646511 436082659 525643039 800752490 963488308 272622843 382627156 64916264 938817413 967184182 998532659 747869981 987614622 416842264 549419772 291684260 770935424 424732323 550464829 618486251 842292544 225606847 448563979 641000549 760384676 754709295 923512895 225135022 610718178 980192683 998578612 852874146 950705898 971907891 977067812 996970125 997004616 29246173 579862475 615712446 867476742 221095327 285946470 671723674 769293374 10691939 356911770 120554686 473026066 443775984 506312070 936983769 978485844 926788032 931687889 600374425 998171854 292538211 766509698 770559468 915752376 39439698 899998660 553302993 652466251 536120179 625161348 699812832 812027973 824916818 945912472 897133689 918128929 355587743 705071582 663126088 785143666 167805366 672422750 741154883 819699923 507203890 972939863 725443472 953564581 286294946 514705005 56586497 146002300 156418296 402690640 732364473 853853190 310821546 624518263 214006377 557903531 23681804 370189670 848400177 977550253 823956632 996571217 641419642 933853284 118756612 259476613 876293346 889890680 659215289 769221748 958222607 966111197 3621359 835629409 666485830 769582224 112269388 852851693 7023771 752249550 75629134 762251791 226049762 482165058 692486860 721295262 38853206 241752769 388157116 752661648 753655520 925013386 455671860 975131133 949828876 999042138 698167122 712483560 878817438 975487852 788597688 807625183 184437066 703062635 1409994 189738622 689461590 747282885 978041048 994407219 542115867 854912098 282753900 722772630 743415697 900594728 738931581 743732363 179425512 880411619 620535967 995280121 993523341 993598259 388803442 785942503 360781142 386631446 483939899 953217656 787188250 888853252 484883848 771099255 685411521 769042764 638887955 785431442 289855859 706793186 119846164 448025009 156233434 703675819 630390477 654706820 864321679 917171268 611559486 900588018 472251182 529014619 466185596 522947534 883784637 903687377 35034777 624587952 68285228 830182821 734423449 827765155 507500365 709578618 854100897 881480727 420934594 551621775 871684023 895674685 870789624 882337811 897465661 991230837 348358382 492106508 813606872 920233925 539439506 638390173 998148043 999968551 773190360 998247337 123691903 784697255 988315607 998585746 921062811 928282866 321028868 422101779 284006812 671659270 802175594 962828122 902682054 951952516 654172115 867260231 507439189 623729365 10720830 267673980 230276510 379802112 588752257 663051987 647096198 957912681 200743617 651681005 651135811 925398587 85833505 200953630 341209266 640726006 894040946 958490943 699105914 949582411 155402996 683259391 715114225 739256217 775316368 944099200 35120144 526627593 523524457 621871695 658115922 885597542 707465 170961408 973457413 980775622 873483166 965314757 741897005 919602510 472982025 499275493 865565732 880607514 219143503 722002833 107369644 293882472 251740990 747184996 847479210 980458274 538217681 751072068 901514133 915732849 908918555 993317674 794741608 978054286 86254148 305833551 217560317 483235196 64965205 603958345 506200561 974114040 676963159 975532441 335727375 762831849 586507105 797054340 957781367 989284817 384107402 697206596 335017780 689622433 256159889 693840494 503377122 868486489 200443955 851735719 803997563 859666761 946332268 973255580 705546174 951387188 18570395 964316360 637514396 990945346 61037426 383389290 61549935 281856072 491605409 873418571 214287638 882322888 511899120 652114146 110090398 877275480 972825801 997874801 853045550 972677176 667563383 890767304 854555744 916945213 477184393 570103518 150279802 314921105 930629291 961829429 172074440 444935230 771570551 792740458 83830621 657722279 270308003 436788036 701067713 720887071 198615465 572167960 360198903 532901086 49102120 58241058 881020259 916921150 545535058 940562021 151129274 327490783 893249860 995763442 381333501 718594187 89744578 227424546 15200731 138968100 507746311 770869442 311675033 991425097 395724947 452009547 363716083 826753885 805836056 984805284 574351777 803259731 820214605 886204929 446310474 679248858 496733462 536942753 400312425 839747135 851033885 983248829 2115617 853840864 236096874 646005682 578883375 953611878 161123647 250348330 87159795 813554576 368070844 682839351 126955363 337095431 737832244 989964441 89342268 158339382 391543849 605597574 922783301 944656012 754375806 996269627 822621515 913061215 863676532 985025227 295222305 742375554 536507493 779381837 378742623 447489484 739762831 919322821 526694835 565987120 463503329 497742351 547287060 565104191 943757470 968698000 840796181 978198400 639133451 815280058 477054836 862647217 862971835 995325606 433235932 507486413 237622108 593243625 425041329 425356869 858028613 894766986 324364128 974376512 99945501 421946248 638615996 852409426 903278105 966364320 234623842 885096268 606095362 970095545 147698286 924941823 567867914 772506267 599461198 673741286 53547249 409112978 336489071 873955182 30431923 260486234 771719171 859507027 157104674 242553290 491833031 997082842 695972798 793854575 829542333 947831174 713670194 815736511 235384025 632386293 629378263 938413224 296362805 369485967 942694750 977875467 798251542 858550713 522133394 558552512 91632600 298939560 586640751 943337379 590996064 949267021 126684500 242696593 150373656 510791776 218005915 659631868 871392491 982494933 762156246 779409064 989589388 990659929 94733577 545126497 76236412 988138493 932617666 950016730 802656134 808414303 140979903 396670047 422438370 724706912 419098780 771344402 752592435 869368671 337955890 500390703 607170599 982601191 809270284 849200616 372192771 874108305 643698703 932013849 282110531 348096242 909278326 956944636 956914105 988155984 678462836 908668833 224173833 252946299 799205160 802336996 805144724 895702378 133076907 486098215 633868400 964990018 181741542 934331255 376745793 911848713 994212188 997510436 692869370 781402917 471805438 971313794 860468161 958440824 693086747 782248018 373834532 809488886 183483432 844487292 158404539 419887371 397141422 448155864 192997841 682332718 658609871 751006476 54564080 823263587 44881487 838227327 403216272 710510027 368602581 802423615 87775092 372208827 280663120 758599349 800565081 971210338 709596449 907400907 190529933 905988240 226903047 263955253 629995946 754557491 932479435 961872878 128617490 987445596 374721082 583558425 383305661 689724239 2118643 399870349 518227244 698564112 86112224 979157041 756114178 844044046 576440933 896850866 731315904 790941971 37172665 212259885 793775362 852069403 815996633 979618094 334234668 984799489 975286091 997334944 663542491 773784965 707337486 729373378 955692140 979870177 539520772 662842533 923748676 958864527 954236895 968648250 142683043 975297912 918367275 976348354 472384489 977670291 618719165 862689710 902364993 904404217 443076760 787242526 718413148 919053648 99636573 500638639 376890380 582090154 814084770 868574734 616535598 639480367 770306422 802125699 180314381 183320734 817198714 933368372 350925225 413086680 210081808 978936243 346334308 738073608 676086470 896038126 766170104 929263009 468024018 693266229 153448903 889581604 660202659 849668541 123616713 990906713 926894274 957875951 762844519 989354347 988166855 991451727 3599888 591994767 694165441 727913354 657459053 890016475 609904803 954128070 329143565 513104329 327283678 758226282 771003055 823039909 362965274 373379011 579379839 585230426 279124739 746002493 831489207 861880275 207591387 670109261 701903381 821716716 431795156 608034414 479795478 787698883 751403536 798333772 914282212 935946404 789926580 993358992 535684307 819364360 308559956 678914275 132985687 918198308 848708764 888655791 102447584 531139166 780627803 848529736 786697576 951935093 321222294 885119308 416513259 871905167 489822037 723745087 694014182 862323293 45190505 612371612 77473905 278133378 804225067 861459932 213082601 809715649 750232907 907870563 165157436 635483384 581867695 776979226 397830097 582724213 125097776 910440538 59761768 521826109 187245997 444775435 367352971 479933340 596503146 782426462 165111251 294014481 734920123 972365633 42574193 295267052 958311870 985082982 44855732 688950431 867573100 990263815 983313192 983455920 560342750 927234138 392080306 555710354 409569005 751353042 607912083 802704741 370285068 839410598 303626486 588672534 150071459 633924836 850447932 999553360 741457841 801937877 372631841 805535854 383296377 553317980 391691082 679482799 258026479 806016729 361573857 793771927 939263373 983636951 634128087 898810701 246607817 256635566 78635297 630600630 895808842 930440315 366843153 700225350 912535546 992825573 250610955 950071368 644858993 798831223 246649769 696402155 588813824 967408495 632351695 944435370 754683457 998818524 867436141 923994238 465443939 825626242 493778602 592961570 84575445 419632428 63380193 155444033 938976740 968920485 129254733 265166801 187591460 681017009 336840482 643835140 8858608 212480161 923160432 976609334 148016066 829728606 480863544 927021729 664890651 859895221 510693365 635802835 114187912 898384347 549822100 886947561 745821113 877186222 701915804 787319886 954654258 973862921 924853184 943226750 576183022 740852452 557787460 753453647 66789590 210227397 94893443 245049957 90427632 507265858 495364819 650727621 575627680 887799511 894366315 989627696 821510388 950555490 287516031 718065737 557198661 614575573 532659781 964952040 645918663 989134973 241548873 919288927 411828224 724162781 845714491 892238265 106822883 496925037 609948675 684109129 427689875 855085875 375276037 772047640 108518011 713759085 662728840 741172858 583710089 727127973 590341982 846705723 977255644 988636004 86561642 972934901 614970224 764954649 849509958 923293815 802588682 917693763 679613700 951757831 556227222 704368894 846420877 918136120 102587889 733367275 726430269 964651561 426430466 440450979 346692340 511652226 113042420 252500158 836236585 993811599 23036814 424395477 380897242 461053214 58015768 460494830 723495625 728221436 395135440 519823208 346088736 372898293 151616924 746293340 689666986 781909803 563588727 706961767 165684803 873175447 299387947 795429122 397493029 433247158 411641000 550729970 50210103 183040986 164170229 417264693 767267104 936555096 289800889 620409925 141278777 692390337 766326249 966263882 550657511 604926192 301457191 753403556 694069119 965581217 856789265 975358895 39915632 128600380 671388829 676832417 566591857 809684784 246831465 327446539 288561969 419255895 910038514 964469799 769568508 919242868 657424669 928180680 580527715 601840211 17560941 108872400 998214939 999712443 247184406 705465270 2514098 420609889 858876122 984744086 855514510 859643798 752963605 766091102 741827365 785673337 805311023 833896577 848409575 983901638 650734301 890062835 341204072 439643951 938745425 943876884 316544722 972646677 986159082 991331036 325723623 428673631 608931785 815225296 155696908 674144200 124613928 998201470 247471019 737263107 601269073 994867058 450593818 939409211 950929116 961651110 50161078 250828471 807892449 811913878 585712110 591516860 262047027 754596373 620727473 642954248 974625808 976848890 829494702 852974915 338916246 828706833 998547823 998747281 952776874 959739939 764994442 850977851 883468302 977517526 7139338 959865747 282191353 700590104 750756966 907744428 245026514 998383444 975217320 998291391 618182792 877677006 904882877 981471676 715576064 732622637 445926585 449266477 141709006 352453956 463545326 880781016 874606846 932905412 156201750 612565540 534000256 559185858 892195315 895623269 320067250 847419820 983248937 986038358 130533552 183762698 542916362 830111396 698800619 838552301 189707741 283762040 83404559 878159222 190883705 694700060 97764007 745668478 46651043 156406450 144665011 597356274 503218040 569552786 327910118 922315298 195336054 373139067 749596360 843148101 548150364 805865877 60345312 720182587 43942198 855721267 300828750 809963456 750583691 823859009 880057090 984628083 334061596 527756820 904645196 909811605 799243637 883978814 348763182 362301485 216723674 797939039 828512803 856815260 757690003 821994533 722369072 808843999 687541718 694714151 302726746 612005422 118478983 224039031 834596089 877881713 233498551 770937616 754736640 807476820 193299247 721550645 836382333 924563940 154137349 420780196 630839992 742834921 966968966 983458928 515567229 561287201 270944572 917154554 961378547 966892551 692974349 966252067 799336207 933924455 883557622 944232111 314985495 856551986 297037164 429750589 67600845 411703476 350771706 859540814 767764765 843532954 666988003 745530460 750714433 960127434 472056200 841790990 664655821 700939463 591040886 916823997 180833363 491678719 707716728 926183550 216585325 679945676 854692725 921204576 300339577 446290516 220112658 712285493 497012268 626930564 132539481 847641611 659547818 703558208 838132234 964802572 225621133 653185430 800337643 906043703 643662841 760960221 544675151 931698991 203154584 260207364 288415706 652882747 501584672 870954327 425815387 940973565 470216379 797012723 571910211 593817189 204728853 242542487 276606714 443297403 667184772 892525708 689796992 783743603 993716510 998311121 922819447 981129252 193195128 354246015 73326245 734145336 375061223 948500012 164249394 933484121 206878007 388773016 277704068 288822842 716795169 984725424 969414794 990842132 976128849 997126940 68058803 761902577 173404111 652652702 686227057 990802414 446193838 751032221 382261827 667832490 724763521 820092475 789182472 985619196 220686563 958850294 756667585 878106427 537832874 672184768 292398565 324380823 138177196 889504121 491973853 993522532 901503548 973970010 519205574 770608693 655833556 847357621 939626175 947046282 48335616 652822857 288972822 851961832 242556487 734989134 746210019 803720689 339096780 813507935 201662116 377135099 340232908 563929903 714125151 983893358 369748302 442750368 946708998 961992707 155028769 173016389 496835914 742555509 936117576 970028335 578690512 684950078 635518831 956146441 897935838 938747680 143280161 319637782 341336758 717799262 434381005 956344308 116414052 152641686 437582914 774937595 695199351 956657587 858640674 953523395 561627078 735005468 322268316 393805001 805612351 828294634 105481699 494859152 169304582 545216488 966342347 972331190 290437028 960688679 96531948 709948260 71801964 191673931 393591739 871494744 470727315 901544976 504965620 600253801 892689303 965923623 955529366 975601305 55883622 668737662 951242455 964881370 537581253 904085080 107931116 712182450 634939766 671918932 130519237 716221134 436121506 807971248 865348125 923278693 807941091 929297882 503306465 742160074 11442649 401839059 564336046 889705614 262995273 750877959 960092071 991017286 405736327 737808084 548364525 979964990 833879583 854627730 766827540 915272148 424243457 911818170 907817423 922936808 140468788 736269466 198008006 466329101 141590345 368654907 955049861 985705946 719362650 898737588 255936836 579813756 641392144 656886851 627413775 660253476 482088040 985190680 328971341 603512113 121751262 252560839 890046540 978004828 107634572 151693652 652958287 693696092 685226779 801138702 527825934 831658444 152391298 629785074 405392975 643309725 589831375 794947261 332815769 920328018 753910166 884961923 282072118 946629331 230163131 707886752 539670613 793326282 632732300 707711165 819310061 896357751 138041297 503577312 582676051 599362723 722794220 782472934 328820910 773836204 347695586 590699934 784606460 824328869 823915019 960180735 32742656 404873829 218848681 708656613 666647603 969873607 351643332 675566113 688867365 701967126 11511971 815264337 926789684 987313755 824429141 986524859 519881401 699609629 908210278 921953171 313057577 912096530 972501766 990836625 443505679 763371081 158199579 577265179 505721663 743733180 34710424 667211576 836526736 929343248 971455328 993538871 798521085 931215795 524317 235264552 384820713 870313527 431509818 692912752 175270567 205921113 123056948 960602295 412164344 738694909 943486686 988053089 415421304 523826539 768711435 997852056 475982355 916170328 68425554 478041360 875315133 965788215 819149823 931560595 43825991 810952581 950346637 991009653 619131129 804699541 464672419 489898598 635379551 741992708 707736168 870926168 979692360 982639231 892609877 985995032 44671980 159000248 22289429 459692616 154028088 431865374 728832479 865555577 816026901 861497299 272641904 749800085 288516062 484227396 368837868 600403423 791210496 830649102 244310618 286333191 950166285 990419653 28094143 883699435 447874680 633846608 174150739 962756882 412178185 976940595 315461064 665289870 140617804 801499243 918599222 982676986 826482779 848745839 887574941 941336425 430646874 624372587 958348319 965633504 883812442 894524666 956536266 977211515 256180152 533999814 282725072 578048471 616300321 785933792 364931913 631362690 81373548 842026221 54669231 558187210 950057850 983699089 160965213 314119297 58523906 707903016 84705275 924154770 949674348 954036021 849697587 863599543 509369117 625712641 359256255 458059560 624408217 866652176 931309132 980504322 915111611 945702165 161022400 188266687 55963129 323426433 470234071 908171802 53952561 297315121 116059539 443003099 208286533 264789540 47107380 780622832 720508989 879589722 4195277 763181098 85613547 484455234 901433443 933365205 23945637 40326451 99439007 846650350 899594809 997210168 575755158 712503655 986249547 990307724 323618875 891344886 830950368 889057905 920010105 963679241 635016109 903449902 24891587 112215463 792705787 898186018 105897111 150533785 725924534 960997639 840375380 982917296 953244186 961033670 242375326 743474692 721708259 747714421 115185974 139359641 507255713 966084736 801743145 905882529 519143476 689988545 899167462 980132089 554542718 856105498 771966404 903105119 542628727 869823959 82061839 599629692 2720219 870655695 811477784 994009459 859100245 937226668 910901004 981234622 676455693 705515163 334763386 893866762 852079989 859785324 811092247 849373535 831901814 939498643 436649065 796903150 459942375 498864782 930442562 964512968 529148349 789439087 475570238 997910502 763529718 931904769 55120967 482898966 721543407 876371133 199490596 674401367 7246189 317834168 777819858 826134042 705445445 882312514 666548084 781638024 707718240 754730381 802436225 982856732 686457296 807475371 979749935 996843865 891889143 940636592 128202 530309339 190932637 240838377 961751298 982185501 63303087 246084345 61888825 344384880 819011200 918554097 584904201 730476124 524111165 946441314 112235774 441117875 21611544 746822129 267210748 883233113 835851172 875844354 373750775 448356632 472455295 556709117 645078891 947118734 774902959 812397853 244695511 411233712 990375461 999949380 599358504 798396985 835909957 949443265 505399357 916009464 250082571 884660417 514337806 823967414 242133378 258226801 935465954 955542920 790332918 983424897 818965613 927102364 309498417 625150643 418612897 474337382 57234875 191594631 549894613 701343907 339347662 358656566 787868384 818819161 45013460 910644568 141824946 489314539 586042769 880946050 157989255 882046716 104033087 752107677 679450708 904977537 626259025 950472687 478187289 972906573 623970548 699069638 765908376 980871000 686024874 846855147 10099941 802492184 233180544 713600341 844183701 964314561 454810913 576487799 378386511 515005198 318527324 462841903 390507469 775498173 939322943 948203500 801255971 869161908 339124132 377434824 534350087 763954086 811587861 844400917 280354424 353705462 404456869 897581657 85463886 971002261 96725538 469910415 734148844 809677631 998251660 999977514 565710379 850414452 734473534 880487594 803500391 857102069 184304475 799873471 307047662 898882199 576145509 723867508 732577521 809887999 706623907 939151242 922669297 937710878 593078514 926165673 531832872 960478691 204917562 307286308 528411564 855532031 539014941 545753385 765129163 903493502 984167807 988417159 17192284 327553284 409078247 934258692 110804746 214584754 318032113 389755576 448027847 896960808 488760326 624747841 95793890 382982165 919051602 938493505 471799839 753499662 274661699 582073113 702979487 989299667 841567342 992610284 179480577 730144022 716801701 933747551 699899266 912984269 900419946 960967342 946877750 991544360 249102691 583177924 579461992 602199154 121494122 403639185 600432374 944376846 976741957 984037146 911543233 976510935 149103848 676704458 529208857 749567196 821985348 880325104 599410105 770539059 721445855 972158430 58061991 676000824 210639329 969449614 922517449 965723037 167851170 604886570 972589013 980840120 952570669 996557120 849271356 882471493 43410952 540013233 421608431 604211071 771571689 819034857 925101592 953872864 9735317 603121462 735399587 982772409 525914947 935528941 417823912 746651994 450867282 563917333 85108388 325872170 270509665 556016970 926118193 968949342 705311724 765346805 93051830 969948478 420521328 925511593 36851441 241449914 923474338 946572278 265644976 994299341 356455297 680799501 786463829 917316184 721882878 914872602 985061445 996493493 792573368 912278169 13113791 979529301 517574332 567327519 22875251 57989532 56708455 889133493 614077670 722285303 282648128 666409060 211492204 761495907 966722691 981323923 577089725 868972386 106302013 900639250 36467140 183306433 683164073 732387462 243791225 539056720 517124425 900177179 308982570 791060648 985524302 988058493 226859129 284290221 564180220 829507729 987706761 989086396 120073616 417094416 328200591 472969840 388409038 867881793 530700895 592534259 116781693 615864512 860298009 992858170 227671214 843734750 419489642 680950710 214435371 470217174 552642483 974919561 660501333 832961388 570230433 874745166 454457654 986371926 814426906 867647498 396256721 605603801 225010454 832977579 160731510 304404463 364374574 466770726 556237190 761146677 284670156 952809902 569505348 893467407 149648475 866479383 232215365 577024472 714748376 948249188 978383293 995259560 733089390 912804489 179943144 743785468 547595572 872277433 122309642 357417632 295194791 889596969 811009975 867739390 754039964 791097453 517262001 607055707 194941609 237457692 89463742 381242360 874615032 934720274 953318767 993955859 521890376 983732104 97341923 361018082 736883319 941694713 3082981 811254021 151027046 781006991 706327324 911100589 84856368 139134360 918677309 934095093 290731338 390562380 426893846 616887406 226029724 495976476 647507374 926278324 971566998 977706425 977786366 984852453 199009948 282221430 353403255 601909885 612952248 909709906 513768855 697419705 125992082 322682525 944370615 982807538 502603095 951378094 198895921 937446480 667067632 993401423 536658209 994412755 76776040 918725321 834854771 860143466 853135593 931989317 456678749 649320058 948663889 950334765 975331955 978501775 934135564 969879595 341217928 773596305 136487621 577139259 206783700 624228917 518642369 521075503 143127266 670267114 515440651 738997839 358076967 682355494 473674758 579793902 752346729 797541014 622096364 743104599 90218912 168128865 996993145 998000828 716542667 918214348 185905994 785782075 918694715 972685960 70092286 519699540 184775003 303699947 418138587 707231029 373307522 913857624 148350257 511869537 679900683 826596172 544425609 768881903 704565705 781605994 538257669 794050570 182805735 416052045 887839555 959533365 530665198 792331566 154835308 439805365 213806997 663127270 734867511 958645151 467800878 915335014 418354805 789900445 90232329 102121963 156876015 797884599 352596261 824864484 858830783 907926350 844702847 876402246 392831511 487495696 347733866 904141422 84928320 642841507 723059569 737263748 470516905 827871639 153959648 332069808 873088395 885216887 816890414 865294647 614362450 917583867 431150296 922587480 430617054 961948222 741146327 965265642 14971901 461443331 303238204 393246225 312053396 900155568 225408262 240368011 210994722 840058964 429651365 469645242 773852937 968676607 422364794 721309772 235899904 315355467 437733588 531122666 269218076 976464329 217857233 658439189 70786420 495667500 518969138 725641223 960406442 976609773 873673672 887414669 278214464 593752574 926276460 998956407 262725359 628909433 772168063 813551341 779779076 967813645 720260439 998894563 643796913 686501863 402327226 873393589 615679223 686741877 283947579 940515242 331873507 423491377 609106144 894650853 431566863 775560703 767656159 980737964 727601089 808001258 198157926 495437091 986653289 994244681 802285956 816137393 726886232 916858583 372334055 955279974 431251718 689106458 218998804 840652898 191117345 897630928 618693454 841447084 875295894 956287992 252998574 636713966 972283816 981279949 322991193 500038414 510172210 582739558 609922764 725946249 316269651 835632260 803929516 961841430 973406360 984837840 984237133 987832102 113686386 712746310 305997813 580770015 275954674 465507035 841691434 979805311 639926179 696529106 278517440 910182385 542431491 599700409 697150169 730472342 884458874 982097763 734375137 831819389 949833344 989002345 922395914 992652642 67204972 177116181 194238874 764939065 354024460 863343857 266384504 436476823 84161654 217740063 489339977 510028799 122374463 384376805 83996904 527032870 895929299 924181378 775676247 869362612 503428201 782498019 986352219 986407901 881665327 935098851 928070527 958172101 238845917 974997032 708113662 906538996 609888490 821519332 423160502 796386441 576383975 808067381 155337641 200324647 747381737 982225818 928250853 966394115 81206576 268099083 469073458 865144052 162877005 399339615 249755333 417353541 70937768 692117970 536013115 870758411 226465830 772771632 206307777 472441779 168451335 844971100 507897632 773990946 123334627 332301442 969997311 976373126 224626200 997070939 76067834 808549738 733253837 948006632 639628182 858035680 769519397 827301700 895826728 923587929 592497633 914152212 394579516 396469362 962750207 998974775 903510400 988946887 734689854 872864974 911101430 968208487 863537635 937550347 28516363 948457869 807191862 966768502 30737547 795288059 869674715 926464083 891085107 957523003 113694021 313425781 741897530 918166963 889978811 964993967 539608044 610518703 122608097 759504950 422518339 708819188 213593217 769049828 615164207 808449488 78410286 839111257 523646588 546601875 28648216 970741375 12667886 103824759 519219 725609612 775454596 854883955 778893952 830516536 127375621 491649719 450582447 553357727 234044026 763523568 392467001 541912763 391418994 686653789 337684966 895362821 39698886 99245803 3715779 568534916 58447708 470660359 94384677 925962967 696310571 781378550 890210428 977578324 619105565 686671334 349415007 535698006 461735468 918204853 727255288 913858575 343562254 697259104 363190663 835268206 478233925 931232220 984840239 993915335 394605947 512396504 402585332 851906037 551995573 966176250 869980772 931884463 2711163 289887921 405432506 882890967 525728014 861800630 301413881 926424859 320633563 811615911 786280982 872258153 480639203 707138234 328694784 369146541 661844136 751313298 743537035 855034014 604623628 658595684 455110886 964810967 126486164 394927177 945704041 962394265 864384092 990229817 350404814 762825359 682226450 951279656 686654339 842647605 912160726 937757022 147680139 306114344 967974711 997643277 960329069 998229460 660892092 792714711 596016645 665339388 209029370 251765292 270322271 502625204 48337193 794989311 886046479 914749023 809726996 815109215 555062556 945893091 479161861 703945097 722011601 967512811 117870245 253026521 528042871 966961616 146061575 147952493 108466398 772459715 82849315 163083654 456833662 660783006 983699077 993714296 973736444 994846657 676340100 929846615 48908801 972927113 331265062 501502066 337638655 649867267 59951369 518804979 724844105 770516743 978706530 999140864 106511318 259528094 354976413 423324021 966694654 969064187 459108888 654003912 417490248 962791361 788069487 909219444 894391232 905909076 698437482 718737828 707511175 791388120 413384864 724427341 430928326 432034733 839656495 906650837 275543198 637687728 849913593 962021808 662876978 677021805 426198487 626089400 380186449 615257038 745938546 812653375 479674695 496810650 735470995 901724812 881025140 980284927 565271207 602374321 512531229 543511610 70448736 837759524 159616433 928008842 139292342 225364910 80456648 100913525 602337322 742570188 210001132 758901436 981566003 983011287 752415701 757715075 346715366 533484814 149196302 608474273 906322237 923838215 789310732 886181064 618724738 811511851 868751706 881428401 498799154 789816096 245878944 952185139 531682002 654813677 769034249 926161332 681599839 937525958 938496339 996586735 164334611 660479255 989615714 998482363 750852183 975034180 813032265 949294463 615789304 685834525 416448401 460925521 218085362 883900421 154185945 873907247 226946182 598858291 958506267 986641250 659367277 942879469 984032014 987333549 353706139 928250374 379277559 397313757 864453667 871970778 845602430 885462508 997074680 997196941 592821936 784493320 67474377 302275078 177443705 509405797 820806627 869499826 345558935 846409553 521921178 566193733 19743007 847633733 45206045 140964548 695309408 828143313 565185214 806925205 399132853 408120203 647302169 867881693 225173176 340574737 713735496 962757095 454357791 464714403 474569497 941438166 403756948 750244582 14428895 597365526 953366732 983834028 925080316 947881731 257397063 463088986 498545173 624173443 890666958 939328628 772004598 875179487 703444861 945009120 38262328 814621696 394586214 645936224 295903115 607554443 441375473 542243138 515151049 698362273 159698683 370428790 517916020 813743909 502623114 521978210 959612111 981863850 768708109 804904498 773947716 822838771 12774084 620165847 72797042 174731124 330873060 695942959 113661034 339328458 736734840 945533197 387143853 980730336 391560066 396277937 852265269 885906753 159944462 587574235 715074182 955006461 821193464 902104878 898668725 990288098 521524377 865677796 974093425 989060551 22613055 513241144 879591859 922847067 40729867 475698602 394029446 950231621 903460383 937385501 377964264 578642481 796253532 873311336 911110325 987490889 73549694 998853087 628218470 806227907 808962957 944707371 888805560 987324757 710151033 806886868 419444942 915254806 974683412 975510123 414038005 841859936 23739196 196827051 672321459 718081354 98604013 879093174 285421148 793239922 391800475 681314955 820666419 858718922 690643205 886999005 200555274 698089325 474634682 693742615 572694623 856517492 830809656 912344663 702167778 954822052 148888377 572159720 63865460 807348535 275567559 739601641 410753835 822884267 127316189 728584281 493237906 806663325 689965595 705992995 119292 434075744 222632621 265353831 679017976 688800858 527809063 792943204 913913171 988143076 795998596 967593089 569806211 925337365 958994020 982201024 324185384 351428866 911908288 921781960 965963633 975902175 876398007 987162620 181655427 525776932 968970481 985498616 646760234 750386749 883551485 930288370 481608436 742875721 234500442 247408328 573210500 958585063 381150248 705798689 814472215 919319412 847639938 855208844 646915706 670869922 783746904 866247706 967797705 980239966 351232359 816504787 888153027 944273894 224786878 832780806 567111915 854529004 843448389 880852043 894407431 895687524 229869465 939946119 54506416 843666579 69705815 608899565 520833316 911056402 493805543 953120108 329773990 570907417 810245468 879254923 178929470 397359455 733034402 813429514 340873380 488536854 196110540 647335066 140952614 517045591 773270292 918129930 973218955 996441597 777938005 954570970 6312149 623999389 218490870 706849417 83453898 173895125 636266489 702185914 373367332 885397331 731274693 896407946 598739578 767423244 106735907 671897686 205511981 371521015 20183628 38973388 486721137 668144539 511031636 771304056 896977819 942938490 783106743 925529082 950625196 955910377 877158741 879430382 416513104 730525138 101352491 629918860 299252297 761690929 10628310 205110269 322680110 642273316 563698772 993776429 467501231 992226986 771299742 803326836 471744032 925577982 519059251 886848502 14547890 733477115 141122476 370746325 438520599 526622342 130436214 737473993 900572558 952797483 16674146 637700554 729790893 910629815 716783157 907962749 51330362 669612369 425820993 838311173 577442544 624820078 664212377 843462415 926333464 943040388 118827267 498010894 517402393 784891697 283621844 392631187 564105657 568115824 82014947 475273710 362388476 570583347 315359530 657610466 756786434 912459466 303421959 969017515 195791010 290537321 441568609 960255436 974181946 998159878 180191232 339027971 202675444 356937729 539751741 614606046 201252874 890136327 875554453 944416642 627156853 951662169 811630699 923194791 852544629 936505348 280228605 490755665 14408612 746399740 611528270 800066262 823680416 898729925 826719337 953051398 845598872 919858653 940070923 955053338 571225520 955865953 386776983 870650432 216518095 431648208 937453611 956956287 140557716 310801285 225415641 822701882 443222712 977968178 587086128 625964843 56751798 266048900 813216886 951242340 224366979 900368848 557991547 644946090 207445784 410957107 563658810 581181329 238963483 648435440 146673328 163777667 821427636 956160611 558616450 764675113 335324499 819122372 265352898 972297364 569631127 954931224 831913781 984048876 162552468 242829749 522608686 909896465 859036471 876610506 807288675 850615944 747796205 837477323 840985896 862073214 658850363 820816596 232519246 835449880 96028179 871338440 353320248 363971049 449118229 927188325 528505253 692559703 413884912 641179362 168570104 860188575 605610081 866774233 290757911 523222221 108589141 945074557 926137628 999578370 328761125 639214082 974424557 994878268 831628160 919330052 314209847 569365528 914771728 928403588 863896693 924194226 802526697 845089942 49980604 218274869 97772664 289896779 40496136 732530442 4458190 285529556 793280472 901634324 382009813 444355147 580571573 717772336 325095666 456843828 73465532 84310739 786194141 806056431 911437626 954503247 101105722 360089685 378860283 697008961 325065506 730385720 900530432 931690624 186967597 862414269 659251916 701941942 976621148 998620193 20865821 465552050 773462309 840915431 947418950 970920889 598711476 721675228 102442026 976735832 64320931 275561162 815631350 956197855 950371894 957345808 642678691 855917802 801480253 876434468 431362103 939276448 954581214 989143130 237242910 502068401 854459440 969472335 323948727 974405090 2683589 573306861 261300352 824185871 708512377 817549528 452553686 652160436 911996096 991732904 438474571 564918145 859194905 918571831 370561828 596942179 146171125 933409661 619231464 803019118 637977590 783099858 12115692 335032729 960116535 977417136 820849388 845024437 590127155 732896052 276310935 502813215 429051181 815752833 194739039 447362737 685681898 827200116 971831249 973409269 596316156 833644295 906842635 913168474 656604909 959572820 356178817 490913186 180529300 748723757 774525876 855744644 239223085 399697837 913710490 944881175 787408329 822709529 449018860 872090366 778030518 922757461 17558289 492131041 616830755 762965049 780438295 833385348 864389870 901948008 134652593 211031022 341091091 413731477 453712514 933013160 493583853 973659631 228235751 548076905 968855806 992374921 319470991 532754636 634330674 933312419 698650533 906591150 927889980 928579531 799648329 826463284 757316636 965976297 945692167 976468901 724518427 951994126 869420434 971968210 164899789 205483085 466954047 900542309 954844869 995780899 16796628 896621755 9404940 367069086 968488447 973295271 717237535 745869933 88563826 788323835 302949119 830684073 152167469 841911959 284398305 443897768 159087886 278537134 441625674 635969782 795836256 885889637 197743822 897890301 570924674 659028905 987469473 990741976 251262947 744783192 157202006 843476778 262147892 619926163 870982095 932732512 721009181 836700552 971832186 996106093 787654383 880443988 899166137 918997446 401908370 770725678 808658967 947106404 388842582 941997217 241993318 275430232 990155806 990452388 426183977 633520987 720911760 859649065 393733343 838243186 8500920 662782527 508143345 911650699 443824647 461707325 624471297 728766521 955940678 999169662 601388516 995936978 416948278 978021329 52310174 728497996 587647875 739226169 744731300 883001575 229010402 293673643 524788108 686982383 148659805 287004206 934508189 960258908 668265629 725502059 761402562 961322601 679025676 792570253 688098581 803505870 237495109 751070296 807107630 904301384 105101965 525438443 440227184 995807127 589224996 824774082 867606286 935761372 592433185 745503807 812939874 975547481 877837113 900514830 276566671 579969501 373824369 822494231 972127666 991007034 793828114 822202876 983268536 998256160 346404302 775842654 173336820 793398370 695007462 994277919 390321910 722864728 953507495 970313067 227954466 414932952 979667129 983851640 103050412 121898762 214638288 826532773 473406213 765758755 355138296 676991719 283457949 440075510 306374250 479482658 689526427 903415709 314757662 756665430 540488691 848517721 126461508 746022136 557803548 574003123 468503166 725675067 102471625 927163348 223268960 589101492 757922721 818588041 776904373 818744659 110592841 523084157 640460377 955284378 276971378 490430793 200178148 241033618 260988221 753958194 494099699 994559770 191268867 349872364 409237182 571480460 827626707 998873672 214441336 745351988 787909793 946467045 529715484 767766556 120853473 593765214 642994013 842354542 229278300 515098600 826724431 954432004 471658530 974737189 75534491 206127665 957517193 975445135 632534635 704255875 505946770 581420836 250176523 386741887 7156102 612467011 333067041 361474227 117854563 151560103 504329004 613304062 510129054 582159989 971639968 985685019 363629429 773348982 851894821 860732125 703664340 881748649 43685484 898620705 683426829 997210317 794807578 969823736 985834538 998399749 772524906 797170531 514888155 651528703 812129418 941687023 57384759 879591328 111978845 819091924 876315595 921094882 812212955 946811180 608295943 700960735 53851604 322000293 104315617 575523473 440196405 735384519 99539651 640167534 564516316 713756142 48204899 354847778 155201004 817512576 317874636 666063078 592548788 798209011 179625954 778517219 955253373 971211624 767104697 903960597 170103040 199026164 82437551 792573278 451654065 839322371 117488541 439049196 45329067 658554299 967992826 972179028 739982556 925658984 262395986 516964267 792886122 861461577 533334623 619419932 608405772 873315971 312550572 646564648 775557513 959784826 766689893 823145248 626415372 704932516 803151173 872099337 871956124 928242055 669135431 880197284 285207743 292972776 164294435 776056720 256844916 292353374 214852412 763308884 643735499 655914456 48892890 747878537 584486767 607566204 798470968 990440909 168162014 386825654 243408158 647746127 108998488 175212960 5304445 60186634 187127239 932974355 442593945 945352288 81831604 293937105 811127154 935442512 771000336 883552759 629046197 812553286 311529241 950736003 339569410 614003415 449796287 942472773 796424893 920859958 452093968 882971721 675813712 955915966 809290927 911305723 594509682 772978334 723772961 784979058 961401679 988085771 915374548 916192187 561065079 715781428 581517682 774627787 160240803 449189924 305153001 809896678 218620767 282555732 770142630 983838220 793470290 901583986 615573925 797962120 708104614 870039404 413941602 647291717 804640574 824157853 445150822 717855969 716134870 880272460 922650887 958237763 242771552 752338138 143012869 570856057 620554951 693766035 345820767 434771833 129931789 445861774 424100671 720176789 163226517 976769521 162563959 435244838 403573977 505359760 799275567 864845958 27484280 694706118 833531093 837622894 429482212 685586512 866915214 930154621 314535948 588320212 650238132 856450741 527853876 744727686 836213305 842840400 419189527 656914571 6929483 781436940 53769932 398696323 205776477 309726560 3367512 283211523 442627079 772500314 82441978 752809333 695351182 915732650 16663329 188988035 351531033 539431350 563537946 574534425 364462866 819085623 640990585 769352814 33685800 759889015 218801553 291107031 660287555 763360645 431285073 770401287 125381112 549705350 679219607 861176978 821113397 885324868 66344763 684721317 2999686 561945587 70442531 513671269 331318059 951707891 481422299 684732141 994881366 998060168 712009276 870562816 739497527 970972483 109761335 570112637 88839653 169349263 345738367 852309152 274128721 710353784 744379947 934367649 701656251 965386979 838686744 848327413 520694561 957468048 261227124 706052648 609365565 806823108 100714120 917832554 596615339 794689782 687910422 982044908 394715492 597978715 84610020 459027837 250813790 393029353 334597865 967404466 756763594 802514513 120061403 936751008 748493949 919177020 103223856 573662307 694296204 827107914 436975482 456718779 804843115 834142432 388655041 606725716 250169878 967818102 144184405 433008499 448204206 898491744 361766692 960816186 969874167 970398780 396235226 982597948 53719415 206771943 140551435 818447143 429933380 751590269 586868113 641631332 368029604 627996111 912457267 927179503 487815876 877857329 706911284 876451005 825066755 870335473 303386694 559469551 163821123 527051551 803692396 975862177 969136320 977143901 915814393 959103043 844365329 995467440 33858446 849317829 36990654 57407431 514248675 632687314 282414787 360106460 353705147 991533218 708113771 783179079 461401889 831171692 617107049 983655295 766232673 970798383 720049068 930683452 469139334 903830792 762005312 876140627 718479510 737596014 150959898 453259182 926305357 952096100 366791938 414027702 951322373 955778561 869510949 973362534 688743726 912793889 665807671 752870810 305258984 701833745 731160938 851461236 397560345 712459781 607438690 872285230 732959719 753360019 30717085 370655979 160025835 216611019 839253832 898284031 316201687 835441497 572866020 919184151 302606096 849544009 933993147 949524839 337296923 504372217 658333735 757771373 348924426 642394249 644694716 770849756 434626392 576610787 976688030 980673159 797253940 827614338 370958685 552813742 94356400 386564457 127183276 880363328 59270990 664610322 388923024 957609750 772105633 966524256 109247274 203597675 28819459 725595619 814425137 875066499 101852457 138580009 406015439 752746017 911791691 978020699 615779382 842069431 805005580 849184933 403756299 734115146 459722007 944664688 352253602 963386951 989374312 997992116 725601677 766184488 855985360 930776786 536107852 625164718 91789639 244584914 687246202 960373743 70886967 672376448 331334261 815835440 576709011 668437569 444312186 980653643 762734852 882114351 611523782 811501410 178268902 701156602 811801984 836963643 519771908 558570496 140761107 890786844 909265911 910564375 734974787 801794074 956111265 996653329 86878994 535978186 797566312 819194143 961720883 985128600 389901673 453616384 311883440 527163077 449161876 890039612 661763391 865316155 224809042 559567624 981289477 986834606 267298225 487061285 669892436 736855216 201546317 848654540 774312353 832300199 763945229 953664799 698987462 826577998 265184145 547372894 148298638 775799493 389211255 535326601 468141113 755234083 724728161 952873663 756300549 815222085 222897683 241546754 62462051 889347576 150349748 485768280 315038877 723209406 245935996 604569876 595410826 738066385 817000180 891934546 777593664 824135923 988132224 997707586 144117100 810816393 930822695 960479790 419428693 554649358 839007248 913967613 268820174 920080258 906892236 971375857 351661989 668579930 539283737 543007201 493258643 764480957 578114352 890835545 944054674 967320273 206664009 488462147 664929775 669846164 391034837 661654618 137562947 508231091 894017761 897574713 933679535 956857935 461845103 731744506 377576384 664213403 589223909 714494143 936632303 998905761 608456691 729727722 882509859 928688953 995945522 998861986 604209598 927469851 972919370 989404809 703755083 859744358 462965285 957161348 406959461 855630397 153251440 901031106 233445740 542819294 706657014 720694340 451802134 767875890 619778089 758175050 304285146 898522857 486311850 536596769 151867727 688052306 556458712 898637646 398158438 981212641 479756589 714176354 357916888 667176839 51325841 903313239 386996636 474742826 83290975 241881888 966392060 993111077 63275016 982764559 988078504 991547743 308671847 696969837 49493499 328880780 819872975 847648265 730918278 993947000 552645014 808036275 456983656 854480918 710469386 798652296 609797661 683184614 615898243 715472918 637529021 896695056 587633467 901360949 113931604 550413704 815979960 989032472 558659252 794816192 575576524 756736029 740238847 747448333 317109087 757244274 6526247 51117069 859425769 878201064 834245378 953114732 37187590 909352276 541547031 875131745 700340189 992522690 765253315 899073202 672411666 928038053 537035316 701499374 495475292 611839731 594757382 636059700 341353819 936456379 265538195 727778802 149138652 484515433 985717652 992809165 830648861 872338257 659441547 805817734 447950926 922549889 582591236 643689094 894708895 953787023 611548032 715968572 697931276 937243110 94385297 673892031 270536906 977138992 196554745 517385756 513855659 910857960 283047330 371709408 789807493 804139998 444337177 618902090 466996036 700057982 65219396 418539648 98236111 664625006 327787048 732950332 479765013 507362590 560578242 758109600 815878128 927512085 276316135 603376149 803503331 885367663 148430015 788371495 796006510 890889182 750482347 969337932 843826921 956474193 773767960 884966217 173326326 742453044 661171981 878818442 17666377 630179282 684319145 954400519 349409603 771726055 993073262 998521603 968977999 982717557 879000084 957282555 365732057 556631298 489932517 538473495 709626314 789574692 951651237 979513809 725021151 903281115 105540338 919383272 595947697 950278139 734046956 844546172 21677714 665027397 359403946 503047791 956327364 985047805 502675831 559436036 830465277 861292550 379699091 411197641 20634933 332676613 707683599 983430829 261975603 364066647 60890044 570776733 196893376 259494055 911405554 916836027 494610426 536771020 127684117 600159223 574500806 894288234 303490330 576108304 264806349 986489771 76504140 950882645 162890599 721850741 583462070 709743603 78543290 317126240 468529818 512881052 838657750 840246839 809761439 971612995 426275960 662508331 159476702 204237808 237564343 984334882 259536712 876825480 641593301 699656291 490589168 531756992 959238158 989242593 465016123 514749141 815458551 940608507 899300461 982330693 381448374 758908294 778609735 880368454 877013828 900686962 850846107 920372691 99541731 580026299 52783509 512967207 769221519 940090569 526567845 708986425 137390594 612464956 173194173 650842850 447612748 593763760 928947581 984999853 31519363 468170364 229388410 809265144 593136667 824706748 972230263 987993606 764546790 876937945 238830311 380481788 44753625 227654846 644059862 959456641 42395724 635979561 995798469 999422670 974698153 977198163 869073310 939389067 202267107 630364512 197359665 275074728 346191765 889874027 633701829 667734058 479546748 487574367 468272555 551231962 368834494 432091784 672444750 924334907 840534321 949360539 263685886 935305546 433655287 975923365 762787907 869514601 708337977 871683661 423134255 979020633 429440680 691832939 898910066 997187904 395403080 748680140 505495875 694935342 758425611 899699008 257628682 477697175 918205080 966687276 687021393 973656586 922090648 925812809 463739569 482222569 963988050 995487922 298748176 987120348 311561762 450758360 233119142 798492800 284070091 406933344 837914244 839305104 485620024 508459127 896244266 908143665 54372715 895757937 560249894 745085027 750084693 962622595 366977503 564415636 527340582 898438616 878865911 928650452 719918680 956780383 956763733 967479365 569836938 830527572 934631085 990780193 997369292 999617299 24879188 48926828 241350213 267561389 291386156 421304937 688797063 913742881 620098970 713461244 807948935 841601151 275917185 730065592 231352171 579714985 171126814 755133147 212558327 631985026 261844077 297326091 124168395 654755200 112704818 342741604 305655190 929324832 896921758 956195658 96092309 904629898 234308167 310795301 56389068 993988922 144032381 573085417 830203139 891152165 933849341 952735547 372012335 769611829 136416146 166955656 723409735 933739549 752880101 797266831 863420805 923711190 311644157 406297278 53580538 947290049 705837992 872316935 170613288 254917713 230062230 681560006 889135775 893432469 333431446 354319618 284528463 694307614 956095584 991953891 807666636 823941775 741931299 796508284 107772173 117887258 837571216 844757493 341897027 453505649 437966644 638965500 705453093 995693219 898040793 944279611 768667413 875905304 913827725 980011269 574262351 822039055 42592627 956765018 948709171 986526993 710958945 938927159 258668007 290668996 780724590 897858985 150695118 923807379 942725932 984841226 800181289 934410130 83993075 992691832 560626201 898953586 599856398 956517030 236472708 344121658 931160487 947125587 536630509 624373606 933816920 994872383 215202285 751818357 997777777 998555592 962266949 996671770 456701228 862645798 237707438 762232905 70195541 339084725 349182005 831820997 957123208 984947896 326235669 834645582 817290755 913302621 551710758 559512932 915084700 945057368 209153226 570072416 776165890 970733131 728337375 753765257 231568127 323714063 845878081 921978907 182406540 384584035 225553923 911522520 553158038 584835211 903586760 962389597 518100782 667651668 153663759 456538187 694878788 903396866 114163723 629096220 55491497 151290101 562323556 767845118 794728984 975860620 25562738 621389191 539887648 877542323 792256936 950933272 637129452 773659811 504310581 579478163 511864113 556001803 720909832 780178355 167420060 263127119 930851260 974793503 74190007 499248808 771387365 921863113 871172986 879682653 353758092 690581485 372553482 991840734 176399186 886961149 119714980 522082336 711937758 936219268 165077413 672090628 843150217 961551988 189266435 334298755 908700013 920513899 124835765 744455992 162252065 817536723 257472126 506430076 913537643 966969569 249951283 329135961 631545387 740855985 709712520 740003187 947369472 993893628 312493936 957481847 868185552 960176872 325474126 961527681 429802377 512599102 645040215 820824963 608985537 867814555 589071883 707937711 671027619 944643511 634034488 688080912 394289316 684641939 891553949 984760881 556595276 588523561 716234979 817285372 138340757 253682050 999423562 999908252 998477951 998985241 249589467 303251244 612431047 737332297 9975764 345800138 449426416 458963893 430380735 580639146 896427445 900891137 794124464 933923410 543548879 754112527 964477915 989743712 985143371 989843400 204780706 433799734 245278339 449640517 628159583 865203056 683373923 907753711 726711965 958993930 461396568 511009770 666677689 880094231 314573820 561901723 808435576 981383005 261492814 630788322 440805768 448705807 831834395 856493618 279610050 434829804 217405876 515741607 982539545 996733938 768356437 795856844 266053368 776364111 112544665 593389877 744319931 843058733 176343105 941691218 592909173 642881203 785398408 955025374 39847135 522463570 876380759 929785877 732009190 905792323 94554496 605227920 819249612 889371091 107860824 270789640 166115269 512229145 218263517 958339227 767891462 901881745 207030182 422855287 545372486 570085269 113321655 353663993 33625652 837018149 81414732 424772036 227783534 401990354 125637179 752446181 548208070 639025303 649626777 754426983 477526817 583188145 204348808 867694704 319824435 647451370 243063063 647633713 372297638 592110104 148650171 178037120 811300210 913965522 481076961 652373652 897444707 912569196 989551575 994899516 850136761 997975519 86137870 350517311 826220132 995814777 765059714 777779541 890465513 912527582 559050630 723941136 682910153 845107326 168032278 358388011 175363192 910208331 59440151 579201545 550307238 602106403 51798145 443119704 840013978 970413170 395147086 973562458 546549301 797539668 62117441 923604904 352042773 647161723 71643346 432681572 463947647 642745401 873009611 892455470 378699714 895556683 935159075 989976269 631708634 855619572 582168769 832856146 79661609 388343492 617473845 815912258 798104443 829216925 214633356 910029645 232647629 274984731 279577724 289380680 85617915 637148302 232339433 266098968 841971988 984114714 415299413 635197197 124109582 437695903 759373695 888996600 262595802 803540549 335982009 587920480 21759409 929716187 257857421 372629514 87356153 430938968 163853930 335194504 607100689 640564835 208443995 922323361 933870943 986037608 718298062 812769202 827197517 915063135 576558466 602044472 276382060 842299165 739729795 857663053 259960633 413445705 188165969 580756781 35680315 866496889 519514201 973425400 335593412 833026224 445457225 550983933 281610406 600468159 817211532 977517828 171782478 737229836 259304270 520670218 708145616 918240743 970406819 972200784 186739590 719116868 555360735 684123158 919550034 936336920 13004196 653171308 283275172 483908661 68738088 762745271 530106650 866844885 558143372 999857127 287918005 637788343 351989567 719592438 49794912 504821112 284633724 782418976 801936776 974022046 370631980 793040226 203544003 845031108 745573593 753312307 922079293 986631680 170560764 855067051 638749521 686019650 160773341 982961520 201061060 215147205 757518003 828118783 934931694 968197150 458798155 921635439 202932183 383831843 387054426 720933143 955419104 991700916 552608125 997003844 628131645 993967909 535632178 940940399 568552506 924702620 628410396 897372219 122149499 335677543 16120956 425972066 804356962 946463825 11683690 651486841 105144678 930435828 686258248 927296621 173836278 320194653 884335213 956203840 289868287 714646339 224163351 537952371 298214635 474023122 579332635 850504922 372765599 722723493 797529207 809268293 919210226 923587280 511793119 823133847 282588494 352378906 549296985 982638895 975147835 994253499 25774001 813518381 272957483 686078623 806004561 847419256 751625049 785382450 427194814 480401271 115255961 398154959 250433213 797561973 205640648 463258872 436651490 820768002 303301153 438631432 61297179 719284019 470907722 666971100 567793225 753320500 222094689 345261186 417827342 676802074 412140726 493250058 99587322 688224729 777655973 854004852 570944119 935154530 182686230 463586079 783467877 886226731 640953711 842059738 26765386 949487657 479469628 585032329 166937182 364015278 546720664 612249578 960440146 984846809 372210658 406258665 705202167 813619375 715774703 835297876 299521450 935584514 90598639 527475162 485719026 702934882 550116501 594506209 135961079 374677203 401940283 885194707 632797546 881809599 235452690 329404109 849923626 933596094 727124170 856241265 464362543 792506268 373425932 564081241 247416244 497001065 908601493 991772924 462742760 474838664 200102863 235105206 86306774 622033192 814771815 967605543 527941966 894874752 576368475 658606252 707885392 950536441 258469259 406447306 853078698 942020088 629019428 735192479 2333859 929182103 4964912 932989753 928538060 993601106 914403450 984846830 223896505 789668622 287541080 551400935 677213342 805730597 611785194 730165940 595201725 606894147 793385062 830043128 482143878 535496704 734310341 896796088 290786959 769472237 634538216 930138067 859241721 972083631 231262949 593808560 256553081 592815504 9935326 865914990 680232060 752771798 531667663 771390361 910214158 960760370 253677450 652340770 76315113 424792177 620507675 718609504 505474312 814846439 804661873 882232138 359345115 606743310 63687093 556571604 483631663 772031755 400038905 813026608 381350709 619742484 999469088 999480734 14364746 678827749 487290089 584627835 519872450 735156652 996347249 996360764 359988683 989554793 178426649 424400154 103968779 758246975 531934873 970825763 490666022 624664539 167086010 698574717 893726875 952925091 240183527 955393052 333565398 624681704 968742859 973581579 23732009 416959873 416855901 621719255 281010152 822018259 921565812 957835952 622141869 900114250 392780602 936239098 808192468 980637809 892934081 927873784 977992618 995458018 785866301 894294266 322123404 726565284 573034301 954169638 871057453 975223624 112748059 549684803 857181586 934989428 501725051 670876233 849395112 964923616 352486369 801901799 484815789 711378614 46405269 99537160 882619377 898013792 162363731 476203917 492566149 790627125 566720701 702553373 332527616 386348651 635062348 894293741 316030894 765425472 261008854 291290155 786084875 897804164 507664420 673697878 989928301 998801033 634897031 712924406 112775596 127931266 835180482 909388930 68861067 845909940 920569062 952772674 197964343 633446583 315567953 615855395 690820936 942308801 358676449 441736174 810484395 966467612 943226123 967214380 659132470 890840966 799873570 914099882 399184444 981752533 940898301 958247777 515316765 829832575 401553355 566769407 693536330 745454103 310461464 966961436 779188624 809743618 692124426 754154559 190910638 278452708 86099450 354643678 272600930 967828877 316925649 350940690 481153427 990294186 596339117 927854107 348107407 679108329 120468695 404058928 16352252 643000212 857908074 929472964 617046148 882653706 225122376 694295716 74787564 523065234 933796138 934055967 695651618 936169743 55346619 710956996 358869872 526119331 419111034 755796321 171109970 475912077 911164215 936137026 13103197 684611203 344836335 570947074 125031198 798827666 222600279 994384682 544548292 777278012 530454227 968660306 334261011 694879522 568137192 944780164 222136500 462692847 639066588 646581792 375470248 732134391 260737658 346716332 231936227 934929580 750484961 811098365 502962249 521679498 761420569 975281998 199106632 861117999 447987611 484727562 119258070 736241476 722574115 996054708 930794195 982319343 752361049 802268018 628862393 953137892 68732757 503912705 601695131 788195786 79824130 821416709 351882246 511193097 388757303 503674155 97543843 257697550 995358051 999283162 896699972 899672347 780881574 857058885 701124357 816777377 59257026 129805173 295037512 788808553 966605301 997186129 273162114 455543083 605646284 778859740 582268969 802627868 623439345 653291208 68797063 521316399 136582057 743104648 163004712 643061789 684928241 766700266 678216115 733668307 620435266 690756597 441143222 541491529 666003982 850289630 754437152 895726453 98735954 998530045 949590442 990525201 674230050 751753432 972092462 972964924 979626514 983898346 157009834 172733926 757376587 934345962 858997173 981223785 977459021 989937058 106895883 340010139 284532805 292150689 19840741 131694072 174601593 838473416 704716069 705335997 260642654 821117944 482361330 973948617 820534533 967286976 675859643 684944393 990187345 993924497 83427265 915992183 481116824 623245239 798468674 891650430 645274566 896825564 618593172 746205112 230689900 759491198 699778657 814828500 727304396 990921671 693850334 876575890 439513212 788570814 120521275 245780093 80033742 382846047 777506082 801131688 932664591 967945399 680398005 967086209 335460251 761524478 250899649 631752725 715459271 773998114 43750410 722850162 679395183 692248621 302749209 448793674 404979321 472922414 540144128 685694386 571204038 595895373 699299661 881060276 565648733 614296066 274537876 542568998 782083595 953649388 774832708 922986026 318552342 722850706 271863719 389827367 600510148 973827732 31190256 324396392 888899107 891659391 700435184 722627273 682990323 747209033 264454106 522775550 120520966 895819736 718719656 844120388 884074963 887197585 817363287 926087337 240942063 725321826 366467431 614707350 82512063 510678917 647114516 940014578 126817791 958643153 113328961 473913296 258721597 550652596 32393755 377898635 53463007 422435084 179472201 628983835 824061682 834102769 331594354 748530488 882810109 911791140 788985756 965032106 554402664 634196090 932260047 945564619 811064955 976395615 655509931 965965981 91772784 231739970 628349727 763957485 262496994 711413730 166160118 891254954 495843388 506098400 197635335 846017008 992516566 996960895 163991018 723351186 263744063 896576181 301678152 814157917 630848096 928211791 70705254 944761875 75509881 169231281 923864165 928176372 826228529 907746753 820645405 841068533 102405868 511931302 818892169 986580604 280947926 516539446 224133258 665276833 352580807 866209012 26667928 77750286 544296439 556325506 825118596 878135354 941374706 965232887 533770768 782710696 435075238 876902365 159709620 519467890 46626791 795830547 856222432 923165447 419587979 434850831 475017663 893334778 864350006 920665968 39294521 61153824 59096027 984401728 681023376 968870199 969664491 990467673 877464061 977754409 948235530 954724440 965997956 993339997 711852041 973319109 607254429 844107230 579220520 944339744 55210610 994469051 384472166 974904424 436644698 633815039 262686110 367739550 721523838 837812530 781003688 784815351 871906021 913968371 585015483 831658866 320423261 484645444 165852693 997370576 409459495 613261440 36965328 529055673 528583637 826743964 237291007 350196312 10384431 789352063 881585113 899444025 708390600 778286176 4460297 975035014 49860795 595581504 190991219 965687246 358087202 860989514 714806300 933058271 715628770 732985522 333790739 387316072 472118319 608574485 799378515 986748161 907134263 970871702 430651919 452817485 524253676 742679951 97349925 865816898 965597527 975405084 993291255 994443537 655607415 847166665 682516370 949910758 731138311 831258574 995521937 996840416 65234646 447815311 255024590 314315561 436616634 630951775 115428570 907980265 171647605 676292772 125779025 132415454 758360059 790625516 550108485 880541159 292303195 746759240 554544325 809838832 79503952 516823927 699618946 867737672 40579947 260488280 23331160 181192974 208075091 913409874 847857745 988903452 902973399 937526479 584785056 689760846 871285381 944504873 529017377 627430256 754739312 784450142 983717230 990223291 12731370 852496785 725430799 765407212 993150399 999937863 424045427 769906005 733242709 816180601 367410912 732776146 620650334 849762836 455310321 811913683 985710171 987651175 205867413 976595117 412805186 664310241 652945743 706390097 800541789 885714955 319591475 570275150 331105771 778169328 650206042 795841744 690509169 793329371 936732842 941506124 561944312 836310190 174280383 963080905 663796811 963593677 571331775 915457829 944373284 991333252 930263329 934961332 937149595 950491688 485009075 697202841 948435625 987733932 921570107 971725839 240804324 645509439 407931068 579124650 987971052 997963002 739514918 764551018 883375377 947572114 887323032 966202309 637055749 909694934 978406075 979754663 269932134 845216080 532895924 679712322 870848828 897895262 490416319 864550115 557623820 657679846 437784145 763534453 256681018 824096042 76975770 345350060 922079585 963779409 66155212 777963508 578052151 777323855 649861301 786094343 672633472 801358003 986725992 990719400 698583015 947454052 323859799 864092538 304703927 803838297 919544683 993357667 528224392 724944830 389837432 669855624 434864553 733058905 141170600 429787157 792492122 893478132 517752080 963197488 743892061 774801795 778566877 915198908 223520561 813138031 690772898 962134221 250420754 425853272 827270002 909331482 582407542 688755170 896926612 960617435 795030922 977493527 581828834 712365106 600838768 780552426 54474702 730175027 892366940 927257397 361060707 581176367 447027552 909761932 570043753 589453807 55109838 501124049 446437795 868253395 323248250 899640235 234866548 500491734 726263759 835797228 581522821 655444803 487128222 728725218 41817368 166551317 634242729 710830311 775427028 853117678 97284475 236735007 836271326 985267435 856683576 996392856 447763118 792408422 677872476 867631444 784418814 923620899 475392683 767791912 381864888 744689892 876195419 909598974 959300882 997093251 508775580 645714009 314089326 753754098 291442162 780206447 873471430 985076184 46907002 903699193 422895051 437461310 334512299 771049594 217300471 385418793 725873905 802840362 754492592 846145797 123636883 622236077 78749481 824640565 111264662 666608560 527281950 874357328 411149947 828693267 875492798 938886095 3337276 650088874 520948425 545736692 879623853 932051223 294471947 780047501 969523821 993921330 204940550 903666117 554451554 629541403 214989906 611680484 650373716 909412405 955662547 966156094 204421867 913523314 253935614 789012707 432700235 900041465 288392507 743281621 500383023 729566200 275264626 999643768 724939559 784974976 375919999 952916482 238213059 758240977 719690794 938058748 866876765 892875080 160523993 492476124 795317082 847249423 879933686 995386032 477685327 681863991 662426090 829779905 191061425 273117169 606044273 997456169 304051535 458504708 698328833 758114706 839873862 963139963 190678453 764882221 552641571 849706672 401177101 918363724 851182523 864315540 255162640 375543546 948426018 974608361 656392237 992115517 222682101 991969994 824754760 872482084 119291643 246598253 636449960 775793186 183447746 687975997 242425615 702717229 884593585 934984875 8500683 387289965 710864200 957092173 246068219 593610407 870150084 997881309 168064544 467857747 325295715 622018735 242969116 264288375 795925087 936124669 244369449 415199842 70204712 297906723 876127672 897391530 741275192 893406655 885564559 994736574 394004777 907022555 495911855 566314685 763795253 911058528 337950499 359631528 596384724 780543491 987269794 988479323 5528818 669380358 318522154 624189160 363258288 541715055 563041494 822041303 123309893 235698157 796514980 848701804 259819285 278795119 946991043 950145221 899038695 994123766 338631214 462106166 93178666 191793674 308370200 854763125 181798835 592520064 799255678 944843674 303702429 756541006 877196901 880437209 161116518 648950160 645211372 763763058 110118922 716692434 406108285 438745587 836183046 874828293 253621115 561889864 860764000 989581014 744301111 884016903 969620508 992978661 311527302 483364027 814530143 839430823 551724941 573056487 360346558 955256401 865775075 878406792 639364722 786502668 666020144 805576265 41043104 378543348 445476 232270513 692043560 789086672 579446187 982611888 624863586 947991048 618750448 795351326 385778433 522565022 860888273 928021774 745755227 968830424 431298178 549521930 225888236 969644181 540868709 802195651 353167592 444178328 714033678 859040227 221592099 634931173 829364593 895194804 820476524 845085921 29280030 826678602 476854662 976747038 615960675 744015398 912513591 940673087 651086254 721638550 306397218 559587763 494780751 705759466 323675394 616528779 424503872 698609695 607971316 700070602 5517820 241236943 312422013 815849101 857277342 957939629 330883719 694991795 688685510 878912511 184243524 992232731 89089334 420414965 716035426 782694002 487160172 489163383 942589099 985344814 769744792 882596093 926508302 966966875 624469844 768593336 873835824 937808609 369648960 638590168 406439912 800099874 747365317 786559268 712908903 713149177 568098510 571129675 353709044 573119142 940993318 960920688 651773149 662436747 588404381 601808057 14564976 116539387 157297080 432336291 861014759 954686685 544500272 844081768 572704029 698367554 691640790 912268821 538086427 718880831 627644372 695520765 617588410 787092032 703230620 932551917 379883469 447499279 9080725 585423488 155170550 320026169 68256938 307834253 812343756 938618476 818546289 938606463 613015282 835422616 784968591 954839294 358083758 943422847 465810418 692651888 320056241 941855786 92037149 479649070 363200186 564147587 681890332 770423928 995461676 997787986 754768802 828527827 30329451 974783794 724187017 978258514 734221744 805538550 426753572 534662967 43215008 902849567 16745352 260265061 813602276 819473547 309137091 945704687 97839644 401702158 21881949 299815909 409210196 892021145 128565576 378113466 369854385 972855178 155134115 172632551 474053928 781113542 302827636 355684878 442239611 542961813 200032508 290619816 10792512 691458301 688690525 924895879 669792452 907316330 545022051 852540505 701715461 931834640 99499982 951592786 749979690 921864063 410052172 647341875 621775618 837186334 460881528 672102817 607953193 790434905 61037848 218524748 923810966 943083370 635712591 890073328 747040211 854574640 467996698 615056489 891714083 985885779 218644507 936356718 530188914 776720332 510340727 687203634 236611040 656118126 450548420 752084861 897439591 923517935 677655695 715813109 142007092 151885058 899785555 907319871 25537042 142478591 602318695 783440848 969740717 996789881 122211377 437209949 352365607 696154709 715095092 957538854 664818342 785727502 598931324 823855531 225636246 258180912 273223295 780469103 712124222 715739921 394338314 709768687 11603537 663225788 922972400 987125558 411702626 507487203 66304430 163109603 9938110 595199249 57202599 180484607 655274367 845314572 869275638 952174200 959362363 960590961 127691619 874780654 916004395 947193897 844251976 850159447 61989911 391185218 743413949 956141234 663055226 701889512 822316825 873129466 335850878 476738528 215030493 770292263 487381096 655979161 426668198 530576655 586532166 722441408 21444343 538758796 262420069 849256485 595395397 741604835 752312294 799999513 140546577 283770745 260058197 441294632 921115828 988146308 531224351 915955880 120863785 743463219 378616945 963661471 400206813 589278259 26695820 685867670 638102740 980083315 333564951 612143269 178388100 557855232 192685410 908120197 861867478 934844314 406678856 818830949 556567074 914265332 323770995 848988494 654032949 836960366 24751021 978712124 573509560 643612184 255095541 292833396 625244888 759348308 413160656 699624158 864890194 882239919 277485626 621927333 795497379 804323708 228847014 447517159 837836754 935694872 35486677 156352798 149983144 321496567 71087222 640166663 732941854 910328934 73656521 290337474 78771403 259656049 660266479 988824632 669708076 754771440 926096336 942240180 111462503 370823514 606264741 640739741 343169162 675338392 520984495 832005206 877876662 906090480 353796228 798992395 745190631 987842661 13147989 656791989 493535137 821371313 836118443 934795173 67218642 999267869 518268000 901777617 856584290 928770058 898766429 907158811 114515650 632882483 593012127 676898034 840149599 874635728 731433191 816138440 84046427 464626730 184916445 758068547 573788967 897781833 482381689 684547469 93746195 746875003 218813234 931930905 218023380 264982973 762546049 772874795 979243722 987051432 78415495 519573372 749930583 879172803 517835411 904327469 222992686 912899778 319715666 739034645 920387982 988914371 637144607 828749823 735016814 843999724 56605543 665069851 897250615 981612062 289355574 297153893 39098392 65908934 365389886 624910517 997244253 997773026 993433636 994553125 249150652 929656562 11595674 718254598 301288605 485851813 601726140 840297205 834187142 864758915 510231824 696653237 531301362 931346703 269915502 687542076 317915166 442809655 317417203 528989804 410996205 539130832 910514 481655523 120376039 906039172 929926107 956455147 248196156 469015882 879647272 932028574 817948095 925656607 893462972 977083975 9516542 970122223 262515411 680630363 784471033 991304492 742389785 809331482 428285424 730348128 417483958 808174906 736036490 931559449 396408818 831443933 863371781 885416598 435297021 685488310 319704066 909712763 376828196 567218169 187050396 822883866 610344191 964685857 920776501 975722426 425701922 886376196 761366968 954976793 214966938 978891641 511761954 985319148 390114191 542372485 464640171 536470661 150302439 179003802 624693056 830666211 737052814 835482309 759090818 993238068 753866206 866717799 860267325 913006918 360359393 513693640 797109808 864729714 191989731 278257342 885093567 909632535 385350983 894610222 213941467 375682657 288342980 324075659 130463505 858434660 708561374 991004973 80221501 282362076 459962504 516327941 550659230 894679448 900029871 934474138 78742224 414370112 780571853 889300974 742376877 956427198 394044561 857064439 670348313 804220149 355735891 650287380 991428200 999117110 429833265 841492145 768105083 851728719 978561072 981864990 538420339 570915594 865885753 995802036 148924438 244705546 875128795 970175869 637750071 833524073 777747900 969387371 914973111 960756570 811278554 897361764 759891452 816947209 506184049 893288752 807549612 966302585 446891310 757140804 499496233 993917493 629642029 863547273 238812990 725991728 756451546 874296288 586576810 756513029 936481894 968281870 386148086 740397113 88392156 464219701 677194824 892450970 99951546 540925586 310874835 448235465 466452494 960994218 618719307 818869845 450380021 898327473 442179165 955593756 131665319 417851469 834257234 864554665 456980958 604398989 573994366 639134487 765448266 770636344 83123459 172028956 475347731 790411475 686284398 761846458 370478583 531242014 700992209 980471920 766936603 789993367 290731510 958120690 70779630 176910074 150164907 448467416 335920756 690477396 895073252 987793092 73150144 579966267 267602694 275911492 131412826 729964632 475085641 646104365 200745004 846370588 319202281 685504015 233862274 704597915 589685527 665399085 878882592 959340680 961852522 999683873 408342210 782848803 625171819 972352116 945939491 955671704 157512651 292458210 477197054 830950536 870046156 971682725 30161287 698778539 122426085 204672712 863487092 942196237 778493687 965292137 361778115 656683272 817432691 841904901 797961948 841929099 882350992 936595554 233367965 344085807 894708413 939520160 195746579 468760299 51491507 847191117 721542374 911648034 448630200 858814800 790583017 937639175 521935364 803399543 422101862 443118749 192760771 843905449 223322360 226209251 4352831 67352977 378771614 942365813 101536858 132376012 394692365 717808289 161311651 694399034 585924464 613553308 103941760 110929897 461408647 792602814 115370431 971988870 464517527 718683460 830163241 979579137 540524368 665729305 736587313 921978875 322204873 359695729 648023888 880617666 899690848 899892645 535274077 617446820 373204298 753769886 185310382 747982619 708577369 717304285 665529299 931994519 790727673 814800613 958009488 984539945 45791368 702767533 148841057 585902202 967090328 995348996 305791187 487911179 870821341 928941498 166064808 324144826 372562505 974964528 408612836 752109777 439646761 995379781 897449774 941954626 725344432 918344309 529092164 870342023 845448513 973115077 101894961 801896796 371807259 475718029 672582201 683541570 754348658 926881567 472921398 479942668 881570343 883676108 204246346 490504964 339020386 655232332 939333631 965867492 960477290 998318862 614883508 919240392 482725588 670001882 793831306 948010337 136932477 960119214 920992234 953036417 226513112 723508642 986445184 990174195 368260354 625686229 873081734 995764585 184643411 730975407 607936117 941995598 8673886 282289503 739366148 861975483 666655516 762333799 161360039 346455449 847520937 856105120 765137888 971008573 416369758 482976149 985291320 992324688 498832535 571802690 846482515 888894147 759076635 788189422 615979668 823729193 840221240 997891643 999057628 999518329 559374877 867731798 756725248 991788474 799120096 884321643 511853159 609828915 639331928 865333436 769561379 898151138 686192729 690507630 945027798 963657426 477560612 651110571 966060265 969232705 986117713 992182079 302143899 670788486 474559930 856909007 803526754 945023264 257048723 735962805 391371411 898805771 651554439 782767007 726088895 962083760 763058150 910678444 240391641 991400046 355966817 560233747 381637552 619292133 593349761 953100419 49783714 931254342 249527011 999115455 979830096 981928605 876951476 955973491 404693690 858477222 252185976 425564563 315377192 889463072 659396799 831591304 508701299 985165357 86672284 594616014 9640838 746840092 444314331 889308725 848013784 909744212 358921674 808949125 462115066 648487301 346888538 579053493 78876352 110925795 588078032 684746811 194937346 928508451 322748598 346140231 301799810 746223336 649026602 732552864 109031658 704719978 977922802 982345395 22989486 150005532 675977429 748810662 222897814 359340742 97406860 443321609 552978360 964907076 672160861 907232925 410050681 700571142 561917603 917582614 786036422 940313296 450210050 668728507 57291283 649925796 792928635 885089539 919410264 964199155 550554774 971562434 476881108 698656628 967384863 988666039 660939898 723380364 341745165 993610294 920678395 979915965 330446939 655012111 527697819 747354766 269556700 466046459 951108828 979401656 930686734 990667191 435977774 894685170 91363915 959245405 362820938 766564110 541962894 773929368 733472259 759294943 941935971 960796062 703139016 933469379 491187478 798282576 560856428 974242159 32593135 278821861 631959224 787738640 920088519 957812516 769639200 838421032 357461775 595017115 729432566 821735131 250214075 870619305 188986906 324953061 580681484 850329214 584557746 898157139 404869282 547407390 173189149 686016587 80113148 605747744 530589445 673924615 776333019 900269845 752981310 779411072 456677768 801152840 926265559 959806980 67360940 416801515 937772736 941975967 741267379 773253545 642963821 851239848 477556986 786637813 506900588 521060604 988612287 993909873 359484038 441654612 778967679 805377800 798883819 976636743 171703905 487272007 824579990 951396619 571521591 987544631 841175817 948797636 327536308 778570245 679231564 871448823 75466702 204827911 752255201 829770525 867657784 871637428 42861954 889260479 595019928 599432780 194336208 305815074 938965157 945124096 747456966 857521634 271256517 376582305 97016903 778999181 238016860 605832198 454290400 979029066 126677470 494129133 949386166 964854535 806479832 862271885 586368975 705692654 621037164 850964138 722087256 735500011 577618594 619927367 99363279 105156408 666152129 903686940 874156193 970152140 792810471 798011450 529143274 995595485 802441576 873088484 203936821 723386779 37560380 637824011 665911151 786626240 150927748 721954694 290054695 738351889 829781356 882382977 799737251 906723314 834317843 864083785 330168727 704110103 720844771 975929514 864229772 983339084 420980552 614681390 398995885 422759259 579438785 866263253 347210429 747786431 366465922 712477119 294282475 578785315 725074986 879215045 316754000 983798697 802384733 931476015 526542205 815185189 458877360 698531619 811037356 831579801 344940851 691280773 693939959 791340055 691844900 908931266 469694117 995041807 401115933 610571093 44277600 473124619 722445872 941428105 189180050 653648443 675886482 796249221 726211452 926680308 47088714 657610618 282045479 755405660 852844474 919793422 172323510 222655297 99729180 732135587 144608407 278214408 639385996 640344187 853204823 939412260 650629345 789052014 896489428 976948528 130623455 723014099 466747532 551647137 657584946 820382283 158542779 474650054 905795608 963063242 337139743 719180900 129823081 869123154 959933261 980917816 657320504 829978237 81235314 529491612 619763997 833932663 365864983 388046755 375496151 377892971 588135271 618498942 806194239 900019352 873996785 962892372 205125494 513270865 982682725 982772227 806264399 956460772 5914589 652256588 788038558 915400985 655719112 881178195 955176329 983239954 26178310 97809375 215468886 554660375 935718835 964600609 104195918 812053078 986759318 996635967 113421625 877049173 747578795 930733683 347714287 586755171 396132127 768855521 144567724 718727628 519534133 792693156 821082827 986742528 526521417 879346003 184320374 372703530 2320912 591006385 474869356 618130599 659918168 902437391 178260817 553256655 695107646 928302056 534066609 760526771 571561734 731147505 311992510 823499312 306404430 928725166 506039034 928025455 350975188 897523424 613302675 846297033 621106390 853067327 217865393 485593279 715966341 922521089 111284484 942510459 735918455 991752411 637278200 806554546 614030294 806633581 344233004 427370997 205083598 636163375 160164792 920718309 914540965 974539014 949583538 983633620 893224953 953557056 29339481 398163146 356763559 796775838 270796394 559917500 217122025 373203601 942972849 998639706 31037202 62892669 650664000 853443479 206330986 941942373 899965929 918724189 845397093 862496253 207393017 611373068 406635543 889686094 451058914 644195875 891769060 918699780 943385545 952793930 114311793 685992937 729313104 816365889 253984548 888625350 533602262 611366944 245443525 934345134 729665532 731040722 552319217 567978266 582555072 712411224 643419190 843688271 216842968 402161030 997358267 999873708 517850609 948008751 229728795 463241464 170364426 803952920 305140377 499558777 369243444 438015520 598174505 715638250 886698097 969874208 542441560 749903639 29038096 513567349 125733275 266249719 30222809 673733583 392913189 711007344 42122344 499291204 350494184 957879837 181744545 355729724 779240942 950599486 923368801 978211523 699635192 864230010 573999657 605318629 60250949 176730055 405543639 673405348 280669955 992082621 260476252 648829766 346066493 582692377 631815995 965364845 346925530 724763243 364175529 926135417 28847257 819302886 752657613 768013572 799450081 810779441 260157725 341706018 668201197 996859775 742668334 809102709 33574567 908435572 812760630 887772157 925469820 972280134 794757790 859264224 283593870 408734078 571795688 728457566 864524298 887447683 649531520 696812575 108347247 452274940 870289388 993074765 922445325 961085205 633403172 862702917 772052455 926347556 235968340 776753740 606988185 925903402 257040183 512481188 454343030 849040884 567469001 699002185 75723804 430078869 156785112 483883042 31530613 654977359 299097333 645467625 31866890 853024802 910233227 985812146 652806925 892195630 94559119 823594916 671898486 696892048 491901934 597294834 512351266 587791612 218110161 494746364 495152925 584194347 684395295 825620073 1052558 336071563 967297142 997543825 9445013 480038846 658483686 822779584 890262126 977463965 229122563 640533523 28046849 141880490 669059874 877320246 253044652 492546941 568829653 988564678 879141729 923107769 49170862 765957673 347633443 466943278 721802699 768751673 741039466 997182735 733747417 992318498 982637087 990400666 56419693 269564054 287721221 895849990 998994816 999863277 386815955 772479807 558870130 833717682 901942028 923961888 847396399 908195264 134588267 463546339 28747655 277633609 513251451 556007393 1970489 559325889 956306656 978172489 281114753 372066605 445727315 608781913 357056447 389061246 137887519 780190811 162748685 263334444 5481211 767610803 267816486 840694098 56954156 852065869 903728500 994641415 105533753 674228154 189119921 208181817 527115993 544756379 479363167 939423762 99594973 188279598 312346586 668312823 800906328 867670145 104542992 570628127 626923756 934621078 498386936 549572856 836210113 913357067 211381872 713342791 174719958 287590181 860234991 904178625 344217793 970849717 355790615 540677398 937144540 961694450 200497500 891819994 148889755 939713648 311709241 989183655 612072403 868398036 676000665 714072434 475954150 927266896 260191334 417475478 693860030 957508334 82144845 970266515 188329748 943371792 143946998 880603079 27892706 31989054 612130200 934868036 564365126 829334236 931372451 971326866 202500639 228378878 523074795 574263520 830300620 927705584 304514844 672905915 845281271 874322982 286328952 841795451 747803254 968001588 674250038 854603619 487790318 947737253 90887398 179750988 886134755 893484638 809950909 984935652 763442895 810380098 296332397 722911274 230434719 247099251 76338607 313176397 464823737 704531473 146295896 399466280 385744590 979557594 121490860 234740529 15274347 894127404 30314479 708873681 40328868 461972553 337181720 709052255 280057532 896705175 621433426 830374982 309707587 470234592 309683781 416696062 420605489 681256994 329473908 630439928 892711542 965496919 355603522 919513850 831873787 858559650 887932926 934932431 835057682 870915844 630030690 871684116 783744724 824922051 69861581 726432183 430532517 514603022 48344187 963026580 745878249 997958071 520916245 849104578 698723798 931382307 534000935 722358799 659357097 968204202 541679548 729676539 877169420 941721063 136678130 741213664 4217952 830005184 591664190 708819816 4251497 689020559 570186858 990132219 402712834 581433747 467444654 665476396 647303767 683196702 83578797 989501596 407373510 585209948 874674921 973815695 982493695 994690428 705201366 889905394 975553583 975569631 278275456 744270675 886320919 905331113 2294432 131139856 958470732 969729575 227555565 727550352 121772708 752784509 95599539 547289475 216453933 678956452 353244568 552058596 441095437 977380221 143199704 547859876 7363817 727173121 235823698 389405899 443097562 588947411 162878497 397143465 156430019 351119127 749380121 894602799 830473355 970977618 345579184 347564770 584806454 867044511 834991397 859825283 847862105 936272203 794997005 917100604 253589160 604053542 451381890 488249150 475370705 683409190 651469864 736344887 631095179 682329429 368079240 599363407 37893217 783677402 47623237 474816548 89403895 849196062 440914274 445607057 605967657 722875991 554897174 617676959 169423732 829692985 710881148 980248010 980378070 981384291 879007978 920866733 844637261 917012971 629818464 837166183 492499533 509324105 22532658 535019695 262167244 780929590 203092631 712147641 812890747 965684994 710374202 984199327 398901642 922888826 559506893 693393356 861873942 931475310 353368820 963277036 343033751 534255361 198524664 646286627 737860260 968077090 694156107 747026400 470590276 951586653 908549041 934457615 341633292 431450195 445357733 767197931 934722040 975441817 291836612 558968990 240535088 547511865 573362722 789501850 883251202 935607620 484895626 586798330 204152652 762790073 910279607 939821944 614725248 885279785 322502124 848546328 673749185 826011348 130460577 914418333 151864367 808143699 27925807 840105384 232126380 873050986 328226775 500467659 419003581 489341810 17551232 35032097 708612249 970057568 114308697 409418582 660259698 815767948 975249849 981959068 490226241 892244700 140743428 249124754 292295456 378942643 888171428 925755906 659324053 905538726 416151275 966582511 883796631 894209751 517918348 570641266 659199229 875529544 80604711 345106031 582362927 958919539 177233761 630005497 270095012 994928762 616268237 953377154 308244474 907922348 540946750 559291650 720701776 910993248 790114756 859968927 503546100 705738343 900387633 985691695 124784214 291264854 30363519 400604920 860936021 968342323 887455624 964658639 2943911 687907035 606475097 932501784 354284648 356366188 130845365 747428213 321130424 812211511 981526311 986660141 969373976 996307347 738862599 954860713 287979665 728832735 24635731 280621779 452294905 555686924 66303385 747748284 213180493 299058663 258137516 363146887 930589661 949200420 989924885 997672772 2423889 299183592 356921134 879229895 755568551 790029709 354949066 970631870 643437391 872126820 814003919 833546055 602040018 926398995 960924395 987518514 756675616 825182326 396822267 585845729 200993569 324072719 586966255 731037942 987158468 994628564 35285769 172759923 814419624 951998008 99532461 872464762 270845795 567363041 944818185 955463088 731362181 790443367 447536637 533319737 266298740 796418206 178415108 817515071 696780206 805985094 770578728 895530837 315125773 921323448 952037434 980519618 272659119 508358681 414855496 723740537 692153638 975726227 822940452 929150942 784514964 964321718 910694503 917200052 563383071 750081272 677133552 769385283 6259569 917265054 234114556 562906506 328886959 783427897 523043945 966017589 886777456 889769057 237340810 378071601 305453849 716923179 35959038 143387195 767502481 781979438 618517963 741279814 748873487 779887356 178617742 941845363 383744257 434233878 565488464 720257440 302322742 774114713 202474261 830236511 652138918 950141933 368812661 808800860 369796862 759142365 46465296 442638450 545390111 719114690 971945591 995270492 845601754 952753394 850082233 896728524 169305004 586618401 170355799 428168267 243887424 376432342 325926055 955505029 382023489 579464928 246611321 281593516 95600447 623099166 25049915 539598220 978027398 984980399 115167637 891750147 665194070 784555833 915661274 949564489 810226140 919440667 277157310 290310680 703937588 907403532 235275423 291325385 248757794 885768716 189532558 350559579 449669044 837357264 587462118 793751474 632854181 961361599 928111256 989378814 483492239 650711851 45910481 767295697 61767438 307487594 583709183 588928798 147528756 188827566 133734189 207318318 415661593 702750326 597788558 735150959 549940784 912520190 715418254 993907555 931830789 967572309 398515870 552636723 881901177 963000370 980491042 998062189 679303903 689557801 403388714 769210942 670964845 791993721 717966111 832336480 481168202 900192054 216943240 935234472 626982136 851986700 144044528 890239348 875338159 935837778 142571607 368662011 733668068 866856061 305734827 629607115 384776659 730759271 757167520 850827646 586338185 599336466 928332787 963340710 204888176 700772839 645728212 991578231 151318392 231148983 149222544 481363178 258317891 858985436 145682092 846473125 551266388 866744384 345913075 520301945 505857739 756868630 438583832 648507743 249822027 829687149 330269211 349357696 275479813 543701168 612556215 701944183 122945265 176197902 235503904 891395207 765586193 928885796 788392171 832132799 201654023 334063437 835104551 944914423 272002121 575027585 766755867 770672348 343627132 795432613 691754139 800273697 719053969 921385020 412607417 835979839 513432193 966609038 927372433 954670776 649928548 846294987 171501582 582851065 559346844 936716530 981264660 995240813 295527400 540594937 982248196 990747311 947117437 982756399 686501346 920740287 79019676 561196379 606744608 997578928 310324007 538431159 317447132 494709009 707926780 982560829 558279747 572855032 650217488 811842453 87245039 669339099 970562643 994397036 884022138 942426716 990956189 996094111 928633760 990260481 610888481 931989280 473230162 910413638 323423896 729604365 755839042 876425323 983543433 999973893 5496515 159958678 816487027 910494091 874102656 934441319 369003893 782144727 919627170 998917521 807389525 957283374 628385653 762425233 823451599 992839564 629066893 682063259 626326762 846079980 311820909 564322284 228354639 548874980 124568305 224064626 284519028 744782909 574525917 684782426 651729579 660899795 595455860 817510171 908010785 920547443 663209630 806746549 893847279 943489665 122926346 987767269 31605096 109069872 728691209 731947892 13210533 292467403 561225016 997449506 776431340 989617596 210996376 952615633 744175784 772114064 994367575 998014692 225441751 636492253 970679238 972788985 519958879 722351910 322684014 607394270 474325898 519792899 68737934 487813319 879413987 967873502 548955017 966045215 469544300 605998015 536968345 936007158 435233721 568042556 632890037 815830244 578714649 755242798 166066878 396059920 838399882 959170357 469262301 717044693 76247474 981941471 649834865 762225586 862355742 915419089 33423224 717321287 236887997 293286122 574563223 889480797 941608233 973753480 741903089 852076088 48683164 811498712 875006346 949447687 940580212 941955465 66238342 862091115 788214904 927592857 766036081 899623701 321462325 392668163 269805795 420297635 87063475 400736223 129178199 829733391 547621700 750550688 814708580 997619264 303139202 557317752 721483541 869295024 66887456 981987058 523884295 743324880 138207084 298338700 595670506 967495593 22476527 203021316 228896676 409237512 945743361 961885779 838837222 907550047 640149276 777358880 437061979 702873484 602966643 979850745 751361439 843513917 938738842 972126494 857727319 931615753 968763995 979679828 110579113 263007729 24720795 848433184 140124286 518711005 507096016 781179703 857991321 870336862 933210877 977425151 620985763 771772853 259640421 998172669 114593295 542969004 278253201 287026251 974363390 992755858 904192599 968084979 655658150 685614057 608363289 693204256 938209536 960045274 868911940 868999475 767401285 999009185 425407589 590291990 782290373 843360348 359362441 408106214 610346682 835245780 87837496 492321640 447758008 787775747 865725362 996798278 124330062 785622142 651538113 769437436 706843542 726111873 334794634 635010556 890002941 995652088 150418483 926944590 662363888 756369981 208234922 861342147 893619973 907500539 602821888 856127349 803599988 846458697 369827195 461506693 490599250 976383857 421340082 551492223 741303926 982977816 960268698 980860342 690108538 703430109 296967935 971787166 973569484 984192117 243864206 781628836 475375002 610706317 919238364 976006238 634592417 662054409 478221783 592955952 659140816 848787338 587370499 832974807 375753388 544956230 122527027 372232920 324704430 506575711 766990419 914614754 973542162 987110212 337352939 648150537 596691597 650111287 966012059 974953747 211473092 351756648 463818212 599429195 797036909 832918992 280875667 462195408 276548118 522774592 941160062 987956925 513606183 666575137 496985004 699317209 859812336 865841985 796836079 882446087 64725084 903229734 377781504 419060694 439012382 614536205 851876378 994897556 538463583 737979683 472072650 556793679 831598402 903033835 949441359 967013734 139066915 989984630 128743707 211805780 989197079 999699732 582157675 787847691 282267187 294728519 960233101 994356844 631406575 745868461 196001697 514632358 675392899 830039122 661496548 675249224 164536147 231060142 841143955 895992426 186776323 825264290 728636281 940634786 342155726 959169518 968929105 985862937 586023348 961790648 114947504 474397618 578966082 879893380 592689408 920987765 963663582 978928278 585614808 753698930 686392321 836296813 100232358 317244929 659288693 962020125 535255843 762237972 331545888 357133394 777984261 959429054 554372990 762467926 673573316 766265003 837032087 869663950 735733556 851504167 414240263 701531462 366045701 417263779 558967913 684609571 71387319 657737879 11383075 903532286 207418998 459987733 463340287 721153160 532843780 875641688 736682290 942053441 899483533 954373322 748928412 900064598 10230897 201878059 516006386 925462178 416874757 998322248 857270778 991349290 56829188 307435188 160579357 939573117 977573701 986361603 354209921 583262843 637118473 790697276 69115121 435003643 619312984 635984997 321544301 434154278 329368868 920397276 158402492 577714055 138686719 359295283 904653154 919518874 186234674 543000930 370727063 513966658 778965053 872416175 949674514 964308725 288265552 307333788 643219151 659126086 174583086 490563230 11560469 959940205 112468401 823101670 26160195 696286723 798367585 833867062 250380876 316115818 700510006 873670204 456831955 824310643 783920815 953226608 946072770 990975981 790746808 866443354 445381152 686952937 267310683 600313405 423204790 564230921 348578683 798031202 513572954 715626880 481458994 611190692 857615296 876439540 359827512 473934656 103677756 184531595 469831099 573288018 706257162 789709555 316555615 501722782 524358630 869870695 338649823 845889433 366989641 751950134 480904217 508177627 510805332 619725838 602559373 956304698 484639738 586494045 214382453 848368364 644116793 927519331 230852001 973497921 684339314 935562568 917120186 975592709 635475663 686628497 195223039 196906162 992331608 997725293 721213892 806028980 539194646 639164907 130475878 944768420 500332958 741532396 571431343 686514213 832025455 953991580 870216944 961790909 876948433 970016471 853524113 857560961 897777709 964776207 35706827 978051359 749248888 792640698 831146032 904079972 456356664 910697261 164255012 468163581 555726511 573016027 760755282 892482352 532845327 622432727 764019315 832364576 177043562 624749682 752026276 802062177 677497460 851079620 653764785 669599979 287435278 441014560 463397002 813796255 512956199 532244175 47476611 333496874 415225528 795203889 968842070 974060872 813014771 977098405 663307317 750015556 975121735 975251045 447405499 981050402 868145342 973148642 119431508 941555112 409196503 488398309 840920839 943471832 15794715 413845561 725061253 857583124 735845415 769288319 153222703 842744672 891230372 964365812 721278315 854805772 735714360 782689591 915125481 927983464 557465978 847734714 293376033 997476167 946895644 973356849 247669640 838821828 238307293 409559280 661517127 854102286 593842478 659311046 267610226 298073634 142454752 663467107 822889157 925886645 683997084 914996244 214507783 603037591 671692751 907346437 325457825 627459453 372813778 789817326 240342099 399460097 798866156 822093799 37420011 529892073 71738674 135782850 55661291 348289737 466674934 838878452 752771286 897799940 799258561 945561952 88954089 193202044 424160598 501305055 378670999 415070758 248427612 535686162 495984617 820607489 49388081 118070467 917117962 977060066 430617207 998092759 957629625 974842551 315275879 975945976 329301515 796824268 931177 377395203 783448747 978423596 850648361 907391472 493733624 991492381 650763271 843786625 845463427 952360810 822162423 968399072 712860940 737109147 542870001 670211368 750390655 895456413 273414496 739602252 151307633 670183896 805124931 939164481 108596456 216827314 473712153 623786086 981379087 995093845 987439241 989338507 508481173 751690656 500775836 839294866 112952258 583565964 685812063 801590219 687214716 753880589 27215073 367681977 779081616 875711395 651857146 969483129 441513717 788180522 476282744 954412119 750131969 805168812 954566210 975574075 226611035 633469092 203706930 349367224 913297164 962751732 386388704 431950957 684273636 820458598 904179950 949721495 944178215 949943620 277814683 498788925 344011480 754671169 483571659 921057283 29264547 279971437 910359163 985396307 22118342 760110300 977851600 990860542 633083412 651233497 760321197 991855646 130107087 363886284 921774544 965438695 164494463 249935791 878961728 920191620 262971942 455644919 441790844 960801796 672034211 898957434 550812914 663146948 834184196 881345039 142022634 687547856 27160493 38793113 905722659 987103027 512115436 753647701 437506685 965067762 504838070 717837235 771537211 875754830 946293227 952993909 720503322 933409531 288079508 832618633 131442501 829572062 526430683 832778022 83070719 584365615 649636108 693082979 988113862 993615021 391131905 741755864 909563708 934196023 264170337 451960756 285311915 462325958 562756265 768035635 536578660 738761604 893100500 897879100 480481707 675981025 833919664 834534565 844909162 939747609 254182580 946992816 8201044 918008097 126307280 204629059 810693903 916113390 490194391 899059715 322476285 360888187 147757862 678072465 313934691 946790683 472642942 669794410 790002197 907799692 278192228 865382797 732353556 811362598 452541004 649069619 936753714 940252938 84697920 754711305 722878924 987391671 427319710 885720730 410913540 716868534 598378695 714371383 394461351 727811713 889354101 949729518 123664205 725580844 71173290 319827643 122537693 638225769 817612264 835640472 194135954 399157509 198646681 937081898 18253258 658361221 393254802 949178663 879178504 939651345 465280946 816995252 399202070 719336154 277548277 396441880 724308711 777636653 532304806 779266536 619433587 715601627 233057120 503757112 670225507 863971781 174463591 867304337 637847952 967102525 883054861 934637207 803310717 841280334 96584702 829456999 813658520 964230239 815168668 959104491 231097246 442821656 240277048 841117054 210212327 639629750 831614119 909926218 502162738 951375307 129474210 269786146 650104036 996374997 97124338 558282272 104080238 367998450 443767507 733284126 909241328 950553575 219519964 321612270 368520375 873327859 185152495 721231841 566954775 577141270 738308397 840070742 252465781 335048475 778722904 970786224 643045809 906678072 254975540 731599778 815265304 978026972 478062088 714645454 260143776 926835725 97124120 654989421 516610152 939630198 667148012 816521538 764400360 876085337 279456683 750372455 902483671 961462091 24439074 974015413 699120179 970002822 481260727 802876292 602568481 817628222 635244220 691114311 297632611 885656087 795727528 856463182 740031060 940633491 827569063 949443659 760596816 799517948 109927095 364599833 796891177 823015373 104841128 344558876 77204402 559752323 858709863 865361264 102516070 693291077 847400287 888809002 136392606 997460571 305654566 548879298 28045430 311139775 279131723 823757225 151837221 500144328 639741453 945358010 699009825 754547219 155869967 227777992 645999285 918256008 604736599 761744596 126815465 342947885 563967811 577864363 144514006 980801055 817008813 841809520 970490077 974073746 384023751 725294122 85324314 132250419 847751965 921961629 225908058 269044014 780532710 891019752 293584908 822505615 39353422 919542280 913557733 978969757 329050121 401352826 720442839 908264265 606064390 937716236 404841661 650640327 946624090 963346155 875379332 934736371 723956593 805010583 532237092 707843907 899706224 914295732 115680002 272390139 965946647 989328399 282816488 533649625 670095268 684879839 4617087 904943494 697016909 757713173 926896441 985196826 263291746 377158024 122307525 465472517 587619835 844074035 823138758 948939873 222576319 302437118 754604708 967971144 545417469 944549480 359099065 512198313 477678310 654816175 85032278 235062481 291154105 766572871 989822464 990011412 872891694 910143046 900589969 998292758 135545027 985337755 316214582 738318568 886645552 988580691 822059899 940262036 653195695 757943826 476840191 477776014 965832607 991241439 723107967 755518031 673152164 933975899 836253706 946918536 167305496 604744591 809802913 939104193 855964787 887322684 559141096 747994447 936091753 992241042 688458618 801861577 455013668 718220648 529351196 715061850 445649945 964460088 639790566 739287885 953954231 982920553 330255654 452989755 944483913 972543962 262198683 992994032 814612806 859240281 83078098 151747360 71130311 396987114 343038886 693034258 925656216 950222680 182958735 197093226 449856588 578153935 832986535 968011875 232295030 420296836 828610147 860339464 153152134 757175472 118455269 167810960 64220796 974990034 889480746 961189340 641126173 867879823 916549520 959376733 658611958 907878753 483099990 573235076 915920954 953063003 144296149 942344263 227128690 496372176 646612253 718336644 469215313 781439582 236245597 968472175 130088797 330825632 202477745 589707248 970154058 972239980 508624925 788048449 382299006 846457595 501106710 989900376 444936601 921200359 156471452 922858495 758478263 760058333 904876330 999539218 412145655 919357460 737121201 894270827 80914088 649126506 783252745 950941366 276476286 762221633 671467711 715367839 479106312 524054757 449763671 608200418 768814508 945981692 832760642 920700838 648256581 838516675 425872476 493207394 359803588 876481549 792126694 852239446 803508459 955950613 282091082 991702932 396541643 656464867 720915551 812468811 665110719 825224195 89049559 954475585 262073771 656335948 338151098 367655522 694723041 813391254 38660187 146354414 424234830 813449775 206793932 234725889 207941865 945884492 517949835 596323292 864738460 938020742 211878679 749461051 519505274 970697369 579219298 857304180 306073956 728969432 320029135 936132930 89984840 981342969 298744135 886457171 912379421 946546644 31527395 735033713 153697675 453239822 164216919 799508247 983890255 984527647 750079155 826303259 597881768 920053494 835753476 975434576 745037787 909593346 189469566 589316811 845010910 966061271 322685511 519481025 186241925 344648813 827286792 952161247 44116105 677205165 447920930 779013048 94135372 129592917 111493765 820009888 32057811 556400843 131626742 582199429 489173833 719126038 653108875 779523520 609412442 839799761 440891240 453169104 82094588 734642293 686184565 868837929 572857306 630117909 861907001 949763274 407891930 900971961 604801760 677442653 545621999 988502218 159621106 618881649 324977870 368831890 476890042 531995066 246195031 673337092 570996270 932269542 530563050 758054223 744108036 846796808 261091573 979345383 447066303 489145492 938601945 985573030 852060478 947035322 158096492 591165651 429230555 598925928 676861685 728388565 700680357 760700758 313981470 418728801 551218708 622722063 251154819 557980750 306220060 843205719 383271642 786611437 199066356 799243403 267986511 311567226 828492049 835144930 162646273 652800765 526742139 769564869 471743430 957248958 552588520 616150454 804728318 815810446 604427169 854097517 998760295 999723256 241955506 762182553 922543573 974656531 453685522 528105135 866849321 972428982 294926912 505614832 140614843 362484215 695294917 992580802 375161250 433129519 747829112 962218102 807787937 931802410 195590501 715399492 938325732 971385123 59062543 741751761 529807840 556560238 259980931 699310063 446666444 872551761 284865479 339162101 242729656 353974013 283622239 711845760 124694021 243335730 561934863 808115518 771663012 993987030 848862392 942377150 927014418 964269533 564275742 576220200 989136353 996231054 869734550 918195658 879783805 896833463 110350024 866966100 989054889 990273682 916237877 974496178 877639301 912969700 716649197 961083512 790259720 975436417 663286384 775536613 215825631 812723347 369693866 609442370 413739748 513993496 85332457 136054941 138650717 567653652 299271541 543078275 525686635 906977737 722227077 904365233 926987190 952371807 440175354 670282352 623577766 903955943 705723043 869677466 953967719 983682293 750522434 830403447 520389653 702749116 389868039 800169776 337898294 857085134 391078758 798870552 80860205 822326129 209829615 331223045 433585573 858943968 837683267 874821525 197455904 879025905 771973631 969325526 829059977 890380600 456489461 591404613 933597849 939853426 275763998 720792755 524312900 805530461 340038862 536224247 372457663 631638023 368174628 969495262 696394390 977395611 710526020 837602514 99057674 264773288 364279792 521226706 130638698 186464005 261359175 886098825 5950883 505742455 939299072 950268620 503570118 816956369 60417162 277292628 39052355 591547103 78446292 436120807 650912535 888736943 66158321 221023100 190889206 906767404 633366314 818589929 685343304 972002755 851076688 990031615 263207893 399816312 656404302 880664525 948964763 982443860 565713238 614667512 494086994 687614743 249595548 921738693 334707475 676226389 483371258 538332361 813230446 817089009 112390371 316172316 359792581 641338294 81272558 465493766 992935232 995839497 358948959 741971962 726299603 823265373 587162617 778378345 124189523 244671457 712958958 782776396 914321690 937979019 700141491 718386254 341522311 828955684 241426537 694702235 269166062 755182881 856291966 901120136 803437185 849366094 798760729 926430639 280807776 435529372 131644983 658533609 490784428 994620914 896320654 916832132 380245047 493952340 432168573 935624111 664003126 672412018 890720887 953604019 73105667 721542079 738903103 741760531 36592090 417752511 868801543 912107028 185211478 587308640 890968100 996634319 846320711 874671191 736600159 854995481 458513126 799933875 154103745 480642678 198787112 802897341 362839872 670644331 361771051 573081939 345336173 820905783 618666442 887375542 740394012 817059598 532672435 678955059 395414538 660761145 220383274 923487582 780689411 814860105 197029088 324659711 676355504 833613302 683888047 982473061 346143095 599933633 903200364 994762153 966611106 998884481 49289975 561700254 257041826 689915977 992703616 998311029 445021543 510266819 328867878 746049809 159696944 243967574 50443071 340920886 675453442 952256795 950180550 992731112 81402437 420654680 436225054 884884018 343939211 690061860 865512695 950863486 761140821 997867447 928030794 991121572 93496327 539704457 981514350 995556658 165746463 759772533 258092168 304924487 779771016 844638400 961219515 963576047 195596135 877646418 264671582 863896455 481380400 986667769 383300562 755446055 685187560 724689727 430549436 978277311 60134992 755427753 252620283 744872010 725940299 823513981 342558497 761190057 931414242 998821717 851556562 948257015 129736619 593131709 813306732 926975340 471111811 767690462 775928741 843816098 879501558 928449859 288324942 556401309 952311425 953351542 961599111 969753773 783688434 851836922 706080951 908517050 108346313 528035908 889510526 923490513 939778384 946648323 977120722 977322537 636395379 958801758 756548853 804348314 926676004 981909421 150086914 205420947 368022131 956503906 308727621 500404155 923594600 943098214 343289537 965497176 978104462 978166172 218657823 785569569 793592208 911813483 629099938 686592983 184831419 531583360 248361786 516138090 619262922 927331355 353986700 395960777 415759326 600506617 416280849 914062555 159051522 718465789 541733419 906886371 598606053 741406542 268893823 579688652 127291659 827194787 972056237 994025592 259511334 263529422 926913832 998434687 413167178 737488711 270528356 754320249 181653207 268027443 329619875 798824276 753562644 898699491 642424716 686232737 995733400 997018340 13289179 900839133 796722252 859880793 185976379 255131148 355646067 957816966 332649043 348779534 86865539 236060028 152881974 950683158 105113228 218580990 428817027 681067629 684453428 701926298 956021012 981878193 165312129 874837470 682092689 848625191 162940918 476173440 953825849 993185352 210903950 232837257 67225985 918869459 199916164 618580288 336811598 926158889 204952569 239097997 491949094 920206829 513669806 777485393 661428458 760130356 661376691 703876807 797245723 941369493 534435726 664614775 103635500 516142304 807190970 961900987 165731506 594347284 784357481 834750906 798173682 878374015 59696952 788643810 802378379 959116346 59860065 203936572 824318868 922439519 530343243 895650531 891780703 996195605 203787792 565404871 908371338 982536223 557840648 561475712 446008530 652937848 88562209 609463525 43830646 256719212 587247131 927734044 476327674 584061979 275118967 520317652 735894771 853712594 566278767 578443754 218810603 977421614 773990210 988012776 877856971 904543355 400014355 911649873 544148805 983506911 496260614 497664377 424681315 630885836 573394921 774678110 85888899 834843664 772976776 966372277 347980760 980565138 552115741 992362771 398879673 819909891 999205673 999886525 849057999 974479396 370957375 823643529 212203185 602233200 259929484 345299676 252698218 737013873 135989271 917023289 533484107 582174295 147073434 889886179 207518797 688964172 896461177 942037659 108992836 584912521 836199672 958751985 782427385 896572533 194969300 995385160 938143917 967296888 481229188 678134553 684580848 969306151 518290169 574577932 934302101 974776590 274731787 966242813 803333380 979271680 541649046 906584744 763493855 985738642 500121437 968945439 616254697 694667873 800480100 983515728 625504092 875208021 866875496 941431363 416427070 811847569 268666436 696500955 357123918 499331400 359173026 959450082 947006440 960188652 460388790 941790541 810955017 895632951 478896033 972147034 89949508 347290401 487631090 590181342 15404855 731927799 271512198 870946408 357460825 621341461 42945415 792106972 428522625 669107014 575512519 697731050 511600243 971514136 893946410 969214546 889090547 939617147 747414797 836055349 43643217 579994449 418286350 423775355 364953989 707488489 920871792 981153320 907183727 915782526 491465206 538568230 874960021 965723260 694623383 703133252 692526697 963921913 160175751 197810745 320922665 404974317 522734549 784260319 393479976 415573507 719607770 815499074 967459320 986830406 182604763 399259260 202408800 310537499 853967670 868672222 760580379 887384662 704575838 903217728 299221195 620480684 255897052 754772089 716490906 936652696 897043991 962672636 588375689 730811043 920796117 935557877 436301233 605268636 326116916 605693801 974572055 977723521 874997076 911761012 72148971 842685987 753892344 951306424 239416902 694875330 727041404 802630987 181299005 286339177 585072477 759031571 934036241 935864060 177210521 355490522 36023273 154230074 739654722 968238243 323615055 776805510 461383535 748642597 861355541 948584424 223009178 437453501 659959541 978438341 715058810 788952993 105118563 242209399 68369363 946169077 391845914 424416357 163128980 390367313 293948590 441286185 519670959 552768942 603674684 736502928 567836981 711156066 263497018 731952793 819437212 916975188 451084216 655217307 261178589 722288413 977245802 993204542 956030577 988547513 67465456 472588894 505848971 799261306 22046489 27089297 412361263 894178059 156570090 566960201 954058125 960479035 679683993 870075476 487785184 722353021 739646740 848824002 116516623 548325417 898989371 959443969 718957693 863707306 410523479 716552716 247808770 866537172 416010612 872465652 493667926 985123297 633992420 784176729 461012276 547926843 163851551 856610725 75874957 216015282 495612773 533045057 554213408 981135774 594775296 824328355 738450829 744093010 489774062 775163874 86671640 979428086 79999027 408746279 489442643 903974652 685688641 955082005 327458421 655513499 963627512 965225742 759443958 909200196 273652804 799957353 505216694 697447623 185942358 227482649 204006911 416796077 526478579 659899024 775585618 853982824 250007206 782100738 769279795 946758676 759037749 987645880 163978167 357329750 556653055 564581370 133724527 180937869 326553601 580700179 696080394 828122682 779822068 858191092 893833662 992073993 816707995 984902912 619612214 964263550 751843535 838129126 267010708 897918815 865442928 874014540 282443534 941513445 46861692 757868950 796682755 803135331 798978358 840689677 112308789 640428585 973781801 976496892 773492585 781112098 762674756 915840224 563115451 946195326 391518856 744443368 620140014 670327036 816702754 899115139 371337284 705638491 130993178 322241364 539376991 996542517 514234697 564046325 4902566 646779202 252687809 888733908 599606000 854742533 155011415 164689990 693360860 861865914 373296798 536567984 422658810 606556859 664093586 775272841 723727707 952158293 477011658 851498965 664269603 945589116 629040626 813789733 558108123 993623090 76314301 324137887 990982554 996329073 555748730 701586477 933668585 984322843 927364389 956618450 521272610 940924770 91505074 545464248 2165079 222333212 507842134 919111186 666091992 888985086 188406919 517985567 552914868 596390652 283996589 602073925 114159353 675650644 469956903 944368718 179070201 192129667 725902533 967928733 24072079 724641190 532445302 605379302 607132493 626877421 361976167 971195586 187404800 216243381 863438150 885824128 412522800 803609078 991077845 994604959 215403864 600571741 197384925 790350777 313920682 546083853 345000432 508030625 303731809 887479541 614277453 753877420 517644206 635620914 917516223 922273469 766023276 902306357 521268652 802560963 725880256 873340042 305142526 504440720 489500788 776191163 227183733 931451330 152447549 449607062 944201709 968604208 447448806 823691298 301478321 676615319 811755378 995952475 587506365 629855341 273128046 371784717 348518212 971784435 519941340 824703318 763679668 802093077 116531914 484838844 251417783 601151622 699860223 719632727 371568050 599237997 684209909 800309982 70207174 264255808 19058064 639360150 508327995 969979358 322607788 514753095 608958591 986266042 167346252 720871311 878250035 972112540 995195872 995330533 616453267 987113964 507528288 680304671 676998067 962284781 721308338 858501715 469878658 726616191 825221082 888335897 56590309 780010020 651043946 945901375 519435442 902765106 677254058 998479758 435425882 658374283 184728098 583539149 441825192 814158628 70894899 761281427 973620039 982557194 782902680 841091047 489976053 828384241 866665757 874977934 114961529 913493153 38096958 80886985 653700629 777248401 292130379 891284248 600519784 924633059 909003956 950263838 689943232 958561049 443409419 735656864 345904152 880310332 462708485 486692493 994054378 999441115 296316917 967737092 776740201 898270294 408294498 691671446 485699940 682047743 491155494 831880234 640424381 848632636 311789414 599860377 900111178 929734811 531641185 899372121 362477911 820235291 39196740 320772902 346960884 610518948 876454204 968460075 529332123 845201193 650253729 668794221 94347065 664721700 785636501 865704012 285358404 347494316 319735975 907695360 968637665 977849485 446313183 830905143 354064925 987092243 91305449 457019374 686493486 790299805 990402622 998132995 493949997 994276155 31166799 163094034 271889975 858786630 592362521 779786608 41890869 457117284 709670454 785584091 872138051 963791387 163481894 290576297 563299207 804860734 843445718 916505150 262673960 424220502 2055769 670740001 647404955 656224195 248550657 428611421 797006825 913073418 904551478 979984220 852473661 928351416 45080555 869622361 869784115 897899306 807450514 854016722 247236052 322752325 459321896 694459080 115884830 197065340 847022450 912183279 690510005 989267807 381989571 583510747 914167647 916958816 860937279 948684068 744240501 746942021 514548348 697159979 725962912 768273355 631119325 934458892 53282322 542243146 874374049 956159524 98828231 325901276 552918593 846365201 29140857 795545631 219300706 672644555 871285388 941727308 801592020 830941638 574414805 905679650 512640792 557944459 849078910 876385542 669270075 750920163 278656934 736694934 515466571 680577408 17586942 349477108 614787389 674498214 853299908 899906132 239422290 736839234 679828694 711489570 469798115 671149054 212298430 362466953 374354456 797102370 470391585 829018259 513194282 597179145 194220352 760794959 127992279 829482307 498595681 767386252 882415388 984483875 582413727 597397954 14106742 440880959 39989914 791117763 698403243 741251433 993124032 998025797 747769508 900380699 77804514 521288901 395387009 948004008 358381268 496334166 105331883 237513850 403514646 563722973 981033685 992675602 213127050 458048670 784041190 874239379 322286983 399546609 657975448 716995584 619405234 988077169 380076511 497973308 547763248 826545656 294623188 492389742 312389506 366427441 576042917 900675050 962085328 972309783 780015085 936533690 528270094 651020705 29346280 383560414 516496741 565556756 401072548 941681183 890302438 938023972 150712521 290527931 201028321 437369480 111318183 407965084 565792077 919418082 636682652 804598834 307178708 871292246 248986226 712541666 328336297 956780002 849705865 945357701 930373248 982329336 387059053 552333712 570461847 928815929 689850879 809641727 805974049 971600281 60505416 739107215 379164068 752386898 192162702 921128632 274366866 918347637 517193631 728454690 435148794 694656640 428462881 631438854 441687416 783760758 729678263 950712037 851604904 898141444 547674088 628828129 836878918 933123484 268475940 899611596 505567486 829479327 87749172 676181595 980398884 981322746 568700786 970828770 329107341 612033666 843040307 964115330 183555190 578308431 321508767 523730781 147688516 572753808 534231927 669431768 388896886 740207005 46484853 750635284 382988119 738523005 562742446 733417930 198592089 464248822 850329478 935198798 128743663 508835375 451231089 894060424 802378529 874213438 83106447 517199407 810692478 837478897 556429217 894763007 543088075 780795519 67110254 607708505 167987514 808145426 559154667 964228325 552862018 803252607 204238029 987151436 809074350 925010204 815577634 853105392 795546537 928310258 992800625 996982409 332526797 663061313 277235424 556049814 670055315 747572663 500319246 547468759 338872955 600136711 306422300 611485714 899957560 993411485 991555472 992846190 458462138 597374156 868878302 935909510 894774770 938813052 273420247 987151474 363243820 838077634 306155685 878653185 431954549 800860201 564053784 986076337 812406780 969044709 431347647 862681512 836195532 870095917 49449006 896164057 758576889 939208205 622853031 962026561 459823533 667929293 668298482 895333312 31160366 885487494 935335230 955755712 687248688 946512148 606179258 660020200 247743074 627367318 401063799 402958463 383722618 755525481 294677759 441497765 660684940 766257719 967579310 983013057 213470700 785038615 635583917 661483164 613812510 618347564 744897650 848009533 30799679 609357125 984235993 998703459 137694732 930451505 89371696 393402201 384352640 539668006 447379236 910101932 669334500 873029051 160171780 737365813 838164539 855554420 167053715 204825842 430284508 661140350 416433712 725873036 152655020 810913456 652094689 862000453 413873302 572447147 798894656 845240154 21654593 999579284 662739351 886541400 258422553 697799412 850979857 944432665 52259309 197621777 363450682 870041828 343920173 979346131 514370889 741908473 314708569 352416853 959364516 990351542 779318852 896070611 706183164 750422562 774042882 923872465 105071027 904456627 115253935 713923786 220700144 840120755 512784795 647135277 725498105 908407829 160421906 307783391 272990799 640521600 703488003 969075358 755720924 979802574 731815506 964870592 485526056 896670553 101662983 433287323 805607487 965559196 684854308 975101986 519437000 868238877 460430029 679538373 190726178 938089572 940103190 999146224 886409641 940104414 880844280 931023172 505478566 715203369 652863376 960664326 787613231 970715092 260554825 321130260 455112261 721607287 912576050 953209959 756320318 865278082 532413336 722819103 701881237 984259627 420820377 489078465 5469083 653764917 195319628 508358529 338955990 677702759 767235643 923357813 700143083 782105508 675392325 744808305 866493005 991001487 827330889 879728686 603374545 965481061 740184454 853915175 644973437 956046656 265611035 931398780 542139258 741308979 70230432 842374313 321738231 708436088 681598520 745009376 897155192 966872402 448232351 627397795 225351787 982318007 41967284 362031299 847632134 928719634 672078739 886900316 953097737 999884059 898463071 930248131 271262147 942583734 493226536 692202638 605661044 853959116 594529899 941440151 61832421 183737398 731881425 802755516 813326390 858554082 631290576 773398644 987141408 999779092 165883262 190382651 617717963 668430087 455635715 878020973 936668628 980824825 259431393 768214097 509014037 675241180 610141982 819961385 238288204 319408533 379094555 618938634 900721361 986680386 672969652 805148616 805946625 942097367 800062765 987119262 111510023 381043464 313514419 536885419 378184081 912741876 737324891 849283663 580015296 601737767 953616729 980472291 59005322 902050609 240845069 517095785 968934814 978232742 528346518 894664665 207829084 753025528 963591905 967742008 972842881 994894356 419420399 807828730 908751038 920308956 61938544 672632298 196393252 755560007 543935903 620268947 151751848 407269892 729340920 836895073 816757764 963896046 607333567 975597576 672469797 803570643 60996826 509387871 435078170 828344368 972970525 975904553 176458787 852197409 899469647 977569392 774580432 948937720 255771104 713740665 644009847 919180800 347309280 531760580 873797943 980428133 683073062 856071861 820442626 930946587 378606633 457729333 350372686 664841351 383060224 589953862 188662616 538650891 239783464 444498999 556026916 812783809 572426118 972696941 403901144 892633391 936334605 947519097 189467399 480464484 484865043 765295979 940368791 986371941 647785060 979319748 88149507 233875297 447275439 503283713 743332797 941662839 287250706 738516666 317787449 539333839 689275611 718150331 719872531 816000330 433698221 781627107 814103223 821831937 918666339 988716261 593861869 624449909 403106355 730848066 521059215 991336798 487723290 709753754 610752444 772468176 230322147 701917302 534011968 918964806 571365436 574337121 256268389 853591394 979586715 996443667 90438223 599201769 751551339 768058302 26203544 705806313 819605928 892180989 180033218 963666835 721776018 850179943 508785924 933062706 306393622 669623507 1893759 13072469 654819844 812956617 405921051 729503741 841658632 908811462 534066261 721431844 611989276 927762791 405449725 765643648 174752473 936052663 113228305 871906267 279606262 629484545 334640282 514214228 181931273 909324507 497172984 541863118 439307923 711745181 680223407 852445827 682958870 708558404 372140179 750416543 806004249 897100364 615158464 786023088 195302489 278647988 159292507 918130545 719156647 976125622 558555552 797102502 721696241 947229541 262555817 913736580 284352893 464512092 916275388 953793773 535876214 620792218 688293818 988221396 927566389 933284116 720503102 810506718 301954237 484046312 974063187 992944714 256871923 713308533 390794840 726065393 27077020 921582957 314815057 626846399 705404957 799583640 577969181 812964023 388653492 956303366 129869607 627420015 875519221 884602390 99709344 820078633 144540471 712801607 624622725 710061085 476426067 955945838 441305429 933288895 944149449 978371231 816261264 825691493 242482816 556885259 933548491 935960152 670321052 974437567 96493470 915816569 206351959 892610034 152023774 782407670 165174909 310905412 432412118 713049739 19297290 61416878 276178665 604919896 153404322 384620250 185950278 920216988 535052290 735948937 708826797 971197666 554979143 877434670 939859479 989406322 612800724 956661567 337061654 786503739 378296295 692946420 973499366 979871886 424354699 456183469 5972538 741698618 923643930 957021059 553459046 990098135 319275082 473882796 191310839 379191195 829135167 919394824 184448287 420020107 374480830 888378108 140459033 704571841 511294924 713709568 631932802 903039154 884659054 886810128 159993051 567575532 668956020 848396108 493076942 515243593 551675257 634797587 288461341 318788388 316123601 671629349 66698956 913542480 755781965 995743713 798047030 943784021 963354745 972641335 485973528 966602663 141452971 587438275 200603326 345433003 36080527 965773597 184965572 231916550 751750565 754919750 380805247 575027940 153776202 516750449 894598766 904066789 434965065 529432275 754817721 758619343 572646875 991148158 299144118 449945111 208384224 958167458 406517985 583221802 41750755 74203681 43289187 109312234 237900007 699134754 85792534 309886301 952211583 966194572 189535065 506151188 847439125 856352865 847954666 978036876 996592825 998962417 667728565 741967847 973821372 978961912 769775294 920666628 568791473 864727263 658872558 790709814 509865719 914570749 219726964 568652374 447361107 471137433 715583713 817820490 999324970 999984645 823562424 916428435 66177714 574618108 804507359 999221270 629717828 982273221 600537703 645325658 744953157 798463750 880882307 940222141 474828 328193844 224708422 837500757 619489880 909989489 367625539 633008454 128296108 807225837 7097820 139756206 307735306 745620718 817397146 821089840 550260299 873447140 200376584 405656673 627893722 703913209 815204286 992441747 913811356 982262922 924314014 952076908 25771214 168201409 757717654 837899285 251307845 609151051 468911209 526397908 436547440 958575045 4149363 286684464 716567285 950842567 313132845 763790108 381406719 719559977 682302122 739503646 569380478 598454388 455499531 792279491 820296023 850804733 924704931 994373489 792473260 911842365 698888685 929311400 52095099 106412981 17939473 166128066 554025203 716950351 206024329 253489763 803088234 959005884 524990225 914608001 343085038 882602731 650471731 871231815 905178948 972455482 998663542 999696747 780257337 860849862 547357613 894365396 928203284 982209971 171319405 974279914 751127864 952318353 754749878 820922557 110885245 867909757 695499510 712111860 942033519 976392500 585328097 747797983 519575567 944674221 747388375 805949642 956245115 974139673 523482307 671432097 873486600 886332963 152675743 462505074 617535235 970236868 615282883 707230918 987388931 988860590 37486374 258990925 444694776 800497745 644053180 999697638 736750900 771109311 962803365 984481395 486059971 990084045 739947480 862081975 527084519 649786829 37241762 97607724 628540878 852769318 53225741 532826414 916205544 927919795 761902084 836883996 265851441 775416708 455623504 618813355 924762157 951627349 67160046 768692878 25918506 437143402 580024116 977476791 655632239 793832552 718674293 730662617 874718832 994426847 257655738 848535676 710002946 985557302 947530433 950706839 17555758 304737939 100343111 670075465 505901123 894774505 922628947 948112029 973263788 987363604 584477931 687546932 418219491 451715861 720285766 998438192 229338782 947463167 989027317 992113934 863184171 890563754 379534990 513245205 949181860 952073839 949296795 976182062 701336474 988092849 515893333 896286151 813962321 934554743 59783642 397510210 531096540 628892349 382071146 455583012 887801959 910647858 722322095 808040202 374539129 854653010 211726926 430396240 181808407 582772731 282967278 304219353 867930785 924108553 698773200 738153343 145376199 311527469 100808510 145030968 112451649 476194854 887380953 983765108 947972599 999996978 261720188 508710655 670861909 896519221 339710249 636726710 960547991 974074614 452710058 503754363 844208155 991319473 298901383 307165058 564468364 679222569 913328317 919270038 289955881 552125198 404999543 682731897 907324528 916835684 476014206 834493808 202244740 731085011 994173598 999349752 888585584 902384397 875298632 920739600 868272922 906226725 897819375 908181941 936434075 989319950 993961626 998616923 820902905 885378448 789490125 957017535 664169724 893559126 620351051 788482959 107169396 604883886 945744025 960787614 81935847 837050607 467814970 976575834 534658435 560785848 506558311 627043006 590715620 820782013 694563556 948319840 130006262 750909254 393292214 967749079 167701496 208406850 838372705 886307657 34857965 295681726 437621724 780573646 549946891 924302857 529821379 722331655 875381001 916751166 202947551 264358542 718750988 932531397 661214591 871037307 502651559 642941127 88286388 733229394 772621265 975259685 300664482 750767152 812657462 853326267 498055145 532137073 31435216 498673840 733670833 753399522 578804566 698380388 371964289 804530483 894069103 971376185 299389296 385292271 281220416 865357246 216028676 650174454 347442107 776760151 616616620 917003763 734283490 950773239 432212409 496824461 545531809 847576848 487369850 588412329 458009531 529663241 101158420 130697054 958950633 969688426 467567120 804519967 364694545 653772044 228864454 918315314 446953053 853991444 883008301 999270435 341292926 834134499 573605904 616169855 815350854 980155113 508024116 572872916 934760733 938237038 398196200 703728446 482580772 779302185 10156545 214721716 898270511 904844373 122137608 564139786 903767801 984153701 103899777 624535722 612780953 966133010 213725786 734752987 919949567 987769943 84401116 468459242 731389861 815118140 42465397 469043983 742638555 834810038 344731265 916985222 310753726 917135515 258870971 822927441 408052512 991740679 417912541 803205445 701034157 703006481 199894501 860601509 604862795 609375331 132564733 639979639 418869600 582431520 934484965 970023548 69687648 547316705 69900093 73253536 782763673 979930079 730674783 759749985 745166900 997023489 613086860 648170866 389715175 706574516 262763153 950578635 144101206 831727985 919201814 936058700 133885353 888299088 291936905 915852833 826235944 925148633 134848397 998239520 758780478 839975999 670733422 907916447 203140128 542022812 972686853 981506925 584377690 673693230 280591435 751202613 1985116 385636290 91524299 121620373 427828062 501882810 465174288 963289963 288184989 887799923 245968067 815202380 881993314 989703645 305602020 960403477 241144465 539635237 278134429 954069821 793660055 866238753 702611180 921843990 523914600 554358856 693428040 742812625 219682226 904395903 790730453 819812844 74633857 423522452 386755126 685414215 946584017 955984994 102322148 129122750 812929001 815096913 175561949 785355718 370532577 441650100 751999187 849277171 269150736 589351833 778221654 903000049 751129495 879710030 981651809 998060449 381963805 494054208 759937478 845503331 574568949 882519672 295854057 852608183 373738049 422777316 307064803 703149432 757502477 987116496 644562429 680473534 227760613 975858750 273395337 276880731 123634318 573761003 220282875 997989224 432891566 539791306 173913294 944041878 210830081 919305979 347466734 527972422 191688953 887546046 236604270 263244033 453774702 906737866 108988214 803908230 104098173 775276653 898964984 946205365 965124546 965539475 162830257 632332574 922876340 998095421 204966854 477390993 830691405 942397645 348429769 446801089 928658684 944096491 705635444 823233228 304967794 784532473 856489159 989135197 114906136 973466448 150778149 786540944 472884612 787952492 61618149 539063507 563555802 744305114 167402612 205150957 129086223 537397419 179307283 992897574 714056308 825228410 351474507 455580218 575766168 592185750 496489092 827169513 56999407 62327608 227702848 975608011 568743235 630130833 754046264 846027410 417194099 804103820 53966676 547361865 443569806 849358539 879757839 917415835 978715675 994048113 11200530 458224113 846243178 848755155 535154912 693673024 921663744 929678727 807012042 987297265 899498667 974610413 100792525 703244561 52796715 74407664 291232647 606087665 723595563 883551156 936330188 988991484 447548235 837197073 767392681 829559383 949919835 976258750 932361737 940542813 715311772 900260185 624451400 822329251 913043403 921222285 582856043 813250754 257533055 492554715 764995233 934292999 943246762 974932537 885053301 942268234 101027585 200193269 303293042 743228093 739986744 955019821 392822256 865814812 145913865 552385497 401048311 450926972 719855062 884597501 656890309 737621724 748646378 940334114 204862631 375740812 994211353 996478168 675556895 715000581 939858560 974665380 252233027 369908256 265568842 933656146 179186797 849208632 360387739 877586815 637466742 984050325 237169587 574113733 401151620 551176474 383822926 426855950 603499049 835294174 648754427 867109643 107765269 711588570 840211456 942664938 270674797 857008718 513937278 622410920 240464974 481048826 854643146 858654801 365957695 626062615 124819377 196633321 902191465 919923449 291456432 873717180 570232608 663076349 619796871 757949230 771947459 965341358 950622108 968263457 213211196 275481766 198794076 256872130 306025420 985006544 963269264 979254661 796342871 988217070 382361276 566320862 757699321 999424943 823678357 919704313 76007819 753405316 405294523 959617844 473164596 518963141 559496968 588027630 477613681 680989769 88771249 629606268 521450689 832776281 751691613 958711304 683168662 853874387 420875983 781098510 468250410 702908064 539447003 755485085 906591378 941626912 509882816 637244254 363019853 518583096 943201030 945781058 71341122 653242200 248280233 643848834 753722742 933540580 521124448 576879852 267913862 651550759 977405693 985297388 203198180 358624712 140907744 156823836 635867800 830160614 660474357 951364875 79774030 626807721 627317559 761285002 551655267 589097214 739909662 851727214 396525057 595657623 853386808 951444085 700370467 731894894 19145515 690341008 845244275 957366729 883872414 939731093 210068547 609010775 840390374 932451487 855839497 889816605 228691325 501966019 692100264 870642909 721120999 901307213 649670271 904007315 641788222 650001309 354611253 585874046 208016843 948818650 826691759 894907300 710121697 727291639 803359688 886584656 553304629 871101740 145436931 624200623 467690995 546463251 435054056 593567206 220972630 729570544 998021001 998309104 231054259 696416199 980257579 994961492 533682016 697143685 252512630 844770650 140324518 833353259 391156411 906967058 31016353 471545264 460578601 640142362 274324912 527961327 948113692 963439979 482827809 685692675 625199650 985762283 736969867 820455595 643970448 781570072 360963243 900806756 952608386 986620512 965310376 972930967 358341274 616813745 586934285 749741222 106488527 482502376 495604554 556069125 947091817 960932494 808204958 840169699 189411776 246503661 235981221 802937447 626036247 870802896 524799519 550670316 501025710 876054766 589479687 863829611 210834990 975493544 597458908 898795204 3668365 192519288 380684742 614397404 485628537 851736814 476102766 896875890 273287761 371814168 711127569 796160481 180360707 989939121 352158086 512338456 745279291 934304764 626686175 686401189 769793796 814212475 161223879 739430178 194443257 326061973 399472229 426634373 361088225 750867735 688969454 726557756 673921998 904402352 907700700 909207226 681437832 715387641 165246345 574844956 453726585 675317128 266529833 531450816 507973923 883968207 675247930 749177258 726188233 747274889 588382795 912200869 802737073 900138748 373161239 657878697 203327600 987137480 207251822 966656364 134495083 734594597 663169652 949959316 241458481 504820470 988451441 988463786 579200933 591513253 979240149 992021996 364595604 813554185 527073824 905564397 940886630 966429187 399293642 914769199 880138326 917022034 630825291 878808524 507605161 530975381 666264204 842416805 220601677 876968504 434891076 520635416 351408296 881857376 717201326 833503863 283526279 482044314 433601133 860896637 191569145 490575958 94302831 376141168 159956693 604705264 627908887 998964251 383801387 938942288 717958051 977364780 4661601 793521181 436840165 827967502 404253949 623858301 276803294 846741743 625910437 627118617 143916297 690248344 858887559 983248034 924098345 988588996 149826457 420644354 24519257 163631936 404019869 998468446 358695027 942715876 89106644 574693110 253197206 711723771 467219133 924098777 171246781 931733673 656484297 917253287 51761505 813703784 817491252 969287388 881160042 949562988 959109825 975055333 25217007 625869632 455092018 882718213 179049774 753457424 501847211 510669000 937022731 975061065 2264790 64423511 771308833 999523610 99580919 526410217 491919171 867822518 787796270 984465782 863431780 948892696 70137147 178263645 219762248 819355285 681005566 766532240 306902444 738735471 680620279 773067087 902376568 933857327 932234857 942009718 958713924 997945536 125334114 259638863 68967339 331945298 115513469 912710157 851878302 921670464 170141615 249310495 931626744 968266013 993238782 999539881 397843159 847710436 434083702 924789691 11075472 627415943 949392424 951195109 343572494 545534984 449767920 906353681 495023791 601363858 357470014 757880191 757791905 808735764 995764691 998973884 255454817 905865725 776739048 908562998 414492667 780379221 718622746 832982875 685421613 687782113 369216994 458243824 159449556 295872894 32474635 520001049 185651707 794520377 134045040 548143380 80048848 855315566 557097326 884565652 389959099 622443761 530758867 727028090 666833162 944853435 128110259 881256357 801295696 810220929 759921640 842025787 958736905 983261843 817030527 975887410 632097751 961675141 904385174 976187388 387185598 641639004 791209399 935234253 179707888 796550159 526265394 940547895 549105327 644421023 407003207 579272164 387983094 509265158 638691197 900592838 407414223 862704724 376419745 716209325 330030139 583051448 481348824 948125039 28454704 159237298 775502528 894349953 613562738 776648007 60018719 328817333 738343148 961517188 988863342 994504479 941457615 990613839 551143596 761989931 86840620 812288718 466295822 480187048 581397759 681340557 355788762 792990451 7268447 922873145 821621243 849195537 850422143 950969248 39376315 928996648 86444527 608359064 850720235 991039580 160198123 219347105 734415927 742140916 36013908 861325150 972645724 986597297 44742455 947152242 892803564 930770578 307668839 485164353 887885237 999005320 624551174 813690164 341836424 434766892 365514206 811513496 304102486 969266191 638533760 765225027 29788886 938777837 950808830 994590109 208772941 927753203 169152785 666977106 458058720 840824035 652686274 804675159 491460438 795395654 192460905 296767940 952621766 987325292 972694726 985405048 196918592 221543043 151640900 430941229 801109771 931274453 530372547 575956288 579385356 737526801 440012730 766642874 408047957 581747817 128824819 727725538 868500169 995046055 679992204 972430529 439650119 844430015 153671391 749939252 229093137 472139329 64680553 68647666 511660018 853467930 251927772 970670878 959757757 963593234 443835328 725378774 325015309 983753467 668841718 949582995 209629196 578806737 701712532 952099309 361673955 674481521 145691030 209738413 871506970 982895559 456303435 657455437 394206313 904261481 676357758 798990544 349321414 504903903 54370186 896940923 335016630 458967823 267051828 832684631 93516377 274958954 542089254 793318602 271720391 569813949 668840900 730091613 540001093 885365832 794946712 852713504 640578018 880265347 132940868 193167235 9250525 408017905 205288197 350072324 331208158 983801190 597469696 839097632 808033116 982253874 879367549 984412365 382777032 781182709 142229010 685090367 635614309 766366413 406318771 980196966 137782369 735064574 58261674 475770285 52825642 438268755 462806131 878685872 79317037 797205310 433590249 801508932 358403217 806490555 694216481 980304835 794407469 871007648 914874783 970521181 344900401 882243855 710676370 817455742 795396826 920758353 630549864 986414983 274848496 717046600 195846520 327038993 93737235 641073226 987995849 996573161 771892114 991470060 190592373 756039100 338214209 991051896 549975128 645618014 262742743 721798228 201763801 706089892 381826861 585559888 776193057 901862610 806745070 825228818 971434638 984813059 890686136 995061443 685776005 920204092 101554602 288443284 137823347 296221553 859738374 863454899 131849697 162923388 138387492 707750733 185723559 439041487 277166116 977379409 259592370 959146964 53965112 267779132 996655289 999193598 751210711 926513885 790173495 954223867 655330462 968717724 319220294 391346671 800080987 941467365 339891409 533979994 358937212 950151734 275012671 448305286 597867112 803261045 406746363 563087330 268634186 578578922 150234184 517740048 262238229 419935737 126964703 677427041 124330094 735854773 737358435 815467886 241988452 427966452 714082898 841263686 390441860 776962918 317952761 534281893 176862562 332563944 264852343 858458162 352462049 948365498 668253307 731926175 614282573 950132708 749103577 826412188 314808536 761208377 858360354 964568348 757608889 796453441 905346174 922347466 189191667 383791674 790924032 883314402 28737833 66190800 490169899 543942019 726271607 856420035 686139590 719195533 622617924 703932793 507382617 607907925 12142820 804081065 809623754 857436897 823760717 869759854 414333823 431392440 767846390 796667473 31825622 781637405 62511425 610667533 144764675 320694580 751664273 765214634 325296432 505475405 772425866 971055322 55631753 165411016 792345925 940794620 222997102 884708566 464004861 905347181 294520897 297764054 841919897 897757682 369216956 501638464 241903707 802923203 990909136 996753021 688853787 927986463 249810208 852720989 304382204 391387061 487445028 720864024 247867573 739312487 607010024 978096741 880254173 934004023 81150574 798786304 557362324 749255988 116301913 264019413 599343793 785518361 637289589 785945551 414437733 825582078 956804779 982621799 311760911 519405779 934731276 991549348 585521765 986719189 998673159 999246657 13984058 452240901 766642713 980502209 52584069 211513718 599860591 795427566 984712493 993364563 203149543 629358845 777441323 820416863 725312793 782212876 651055375 864606614 684408334 919737255 768928079 861917056 892778684 955873137 70710849 714073628 332836314 462948711 307302061 483785511 368959118 693162592 172955695 778235464 555028621 610871767 445893526 616911306 27491768 528026656 755156596 810901559 264701489 467858355 934589755 961026567 568613556 577410574 939580104 973656284 304254055 315392468 528032723 986270704 531762616 847253734 270778081 599382956 135423813 778897548 188231004 945008002 415728396 688814264 263590337 883047407 333436581 896472194 607320482 723903100 584624324 820710917 96743905 807859622 266808872 998295417 668670777 794755190 622983715 660384925 317708914 819756750 483186516 632294097 557722742 575791919 109281419 943396903 744317019 819936346 109883742 305484713 993184118 998401913 702553807 966379396 228058435 822552368 926556256 990823558 355171635 475777432 833825479 906060886 571097667 643074164 278786022 855597040 457432395 811339557 805360494 846469645 856084767 874383148 496419441 530617626 973582465 973623848 429878879 732471947 407889793 645854027 612805955 946090366 689636436 960654200 628037201 927292165 743925677 968211792 420081073 814792775 121524475 625452733 635444793 882322189 269951778 894908835 397819002 746199766 89198799 623565085 573925059 970138985 471907776 915325626 472096257 908050902 90611559 517259351 643169527 809845278 397528351 525885735 707363151 905153121 951242781 957317560 155394454 474371357 305739941 935679025 400461424 854403777 191574223 998965170 153248942 396427396 829009734 834442588 555672431 626855912 343309428 845069681 617221474 987179661 389933955 759651031 667608141 795651867 422307827 916472086 597240185 955851645 916636506 941275658 263591978 771052153 796879733 882078811 526204159 967978167 560776543 677960988 362184845 589343529 382671337 453279081 60054672 276550328 235081675 940311608 773998503 909317819 354595258 929543297 836134670 958213952 355886665 536701468 947138386 965466305 269373738 974996830 160520363 614240313 465363042 918411672 464322221 919335021 88974749 900430290 966929404 973948538 87018355 123083991 934858201 962827614 692070634 742589947 368100521 957992429 164533030 701827427 805259853 805580666 700908379 808729892 273070898 608142869 21472690 353687571 162820069 582722920 913072478 945454473 747854067 760912863 6603202 720100287 234709265 611947989 569802508 714169653 920081517 982740749 768747806 825295784 57126490 277058353 20283922 340430483 451583052 871129057 473557544 915813934 456567505 934969618 610595972 943935793 890021245 911623725 244111326 607911480 772634563 960313094 204919901 994043952 901567605 982681284 448342942 900887466 576095786 643680422 664652579 906280168 670639071 811637169 190196746 791235055 910760383 943898420 251691176 942434877 437341600 865671040 463989298 549735695 742885912 775706138 723536026 994005212 813545094 892684246 143458904 461192077 529208694 717449240 505661509 941589872 466125004 478786495 18836191 805967298 78745156 904351687 890004848 950367554 573546405 650548099 948853639 955157945 557459291 911694794 75556594 112771525 341406405 968042991 427064224 746298801 967649728 978190226 916521957 978938543 524106662 822243368 87967229 233275377 557470341 881780507 369104992 372775352 515935443 665613480 157101367 432059625 341315740 718317193 230559296 637490691 557089111 732204036 858719774 948716414 508567810 613114371 866319770 986666472 204002818 750367039 926907190 984496963 941483408 983835108 318104996 383906412 234441697 361922497 791506523 854690716 762373218 870290366 929810230 932403565 321357593 683275092 715384282 908196038 620790008 871886719 451165515 958630630 832357560 934031795 450678823 537904634 749978739 956304518 170062732 807044717 726777331 787801612 824394034 840709923 445518882 842628973 4159124 519839649 765529048 878921230 92696711 979626884 807008052 835075106 42310488 833856599 599387591 809311466 381858322 633748711 50912557 964438901 915868079 933229828 363737215 614570977 904496156 930735969 200039464 724894251 990834212 997050114 521924229 617493402 420700767 894871680 218748799 265195074 356132742 500697067 8453123 206653300 252089462 675156929 439308130 620436691 345164565 950953350 25454091 55779665 374804317 859456914 890344825 953174295 481753638 502005763 9358742 685875520 421306221 831296614 542017171 942311120 421152837 703632933 511522972 694175062 976685302 990749961 42945468 803804246 63768975 754022172 997513637 998710724 29004628 641694583 551005578 932248928 786448197 858046078 361042510 940173122 848201911 950776577 959036463 986240860 651134080 782681339 713382012 741725811 463257912 914662264 11073968 635673992 177250232 807245698 855347655 913003089 764193337 906165263 388611317 981881325 385939535 826492426 64482033 846298910 425992726 849440452 721090067 877405624 526906890 980125217 330839712 919529373 858610390 944715218 661762042 808055347 768557750 918012197 711842010 732299239 710118108 762986590 338119768 501545840 559817048 642431522 435910992 683472757 218665514 732705502 825512882 835930013 63370937 723723153 171274126 487864891 753499854 957941056 689766935 923502911 146606351 654948469 221659108 512802710 851947136 942459590 515006646 580558545 142020639 336558692 340945943 458159623 12308950 666847247 77994080 210562023 878097604 944358516 882849908 971104735 80295073 624110098 34464210 196042093 984702589 987515849 200585003 472190644 57039616 727831045 830606379 867368246 474000145 662272071 271953834 473542311 498765698 964909515 557234794 903171751 989051 993796993 876558394 947160794 724939492 838341607 328588454 780277707 250082891 514714653 401545358 660559745 619119268 976026066 64226997 724278587 463526812 516135056 657428559 723545969 335225964 975083724 549676392 752007133 148325249 271451719 297796833 401488192 270925111 706576579 586946765 965065632 729595258 980997564 846613818 923627698 221437781 222451364 287053778 859357441 573968666 907329574 16826815 803051890 41159152 218779758 423850693 762816346 724473247 757518772 273332493 299722696 331549357 491950286 19530273 587655893 110837278 779740377 518053175 724223112 259355877 287497791 126687659 410456348 639792439 755624813 581269593 646214265 39257991 780988244 766676781 873529724 650477502 681505964 389211487 827281499 563739781 752427660 481109463 542947959 879858094 976133975 389260488 786145650 759317796 833377656 39365914 173684860 934731965 988073309 341876566 670551366 56059388 357029868 810311533 981532255 871071476 961839769 665558462 872109633 512053092 517186446 504429325 658705142 366149790 880372993 681794691 706680198 690247827 971039949 833844809 854966049 857245537 943188879 370419994 414996034 162056191 398847390 810216908 847049813 468483968 675703140 855386741 985883471 98435228 616095101 461430040 711585313 954506401 996277712 643493658 645027866 752043353 912932615 543091597 701370451 112752461 899404705 410556917 861164396 916317562 922811205 64311527 579583190 325847495 971010076 497193580 544134055 794836359 831032315 695786900 799271989 9468947 941150533 547867248 961217793 904941 838081779 427537413 802524528 99032998 146580855 878473331 991996626 598284309 843173473 783140745 977480060 192935638 195806298 103017328 846902502 20560474 31349199 855558775 944938727 542350394 944815905 92102966 396690709 758278824 772086630 822654930 929999134 145855130 658225327 390913994 473364756 90708517 373066761 811444163 857542126 90604952 817959442 541257703 891881629 784856245 896011075 994444414 999295605 960080808 963148627 497832986 692102329 180865690 846877812 493865684 924940376 100240161 353610928 885704094 959002044 96863634 400398602 553246600 566591003 565246950 648613855 266757311 790996908 600217628 993106486 511011650 898305270 923831098 981798340 269708054 273305617 373230232 971318599 788748920 965169147 328499808 968885064 838183464 904561091 844012436 970044919 152628099 430877164 540365691 933098416 114355213 944162349 723949373 808861747 658761876 932832375 819375468 838483207 464356948 827430599 329850466 907700535 56448438 681588409 549314384 560789992 222845755 444056068 322997997 990581665 833350204 973407445 57686968 134139113 70642993 148962131 546059665 910441556 976506066 987648017 965054358 965339650 844188005 884256290 700387795 992901042 198819337 462856864 717615236 961383158 602113782 766046277 169368136 641098195 787861674 908042074 576777031 810796702 784930315 966344783 15007083 208000461 542467761 978440388 91638363 457266262 179898362 616960070 8652704 405367353 48750778 466406474 268950032 453836114 245712095 369392038 653255486 932041600 376011732 675836316 683924749 856293327 20250053 506421843 727103433 778862068 332267746 415117355 300977071 553259962 502976941 733834880 953100148 970172049 315310320 359604920 922535430 966572649 423940915 646753947 303173153 539717348 112925825 764943243 460174590 700780217 263286404 374484761 308800767 787824424 60331873 949243249 173451987 281060248 494928728 608963973 42040342 398465871 2639719 568665992 256101637 911609420 760349007 821686122 538655051 598185304 235021406 340270227 646904490 841071289 219222094 468170639 41968344 840241534 468310996 827235699 134911308 610795941 523573427 809696820 880636077 921104554 506739649 903156384 34324442 646703548 98743680 997442699 582940166 821276078 494145241 967131670 691528551 746125890 704530494 757132580 151524223 645788400 428498110 897230662 810986716 948465644 540663056 631385249 680779568 808696646 793909235 921516455 303024231 949154431 136055397 318833927 524710492 547275716 681877760 767543355 453797549 768261485 651995307 665244537 257883168 700127403 48189073 169033295 16304100 868525554 292158081 803212906 524492151 988949525 596702649 934892492 19437268 598780221 479430322 914852362 754717751 896897681 645230239 989571413 543657371 915956913 148908110 207579796 448008003 530663651 693844001 813500419 711147266 831992414 991912324 993355901 877539696 984100378 397031884 863753920 936396720 950288443 783259869 803889260 789864296 962062661 642768533 907180188 299343268 902864031 367638823 846130753 187460911 487059681 761734879 989347818 185723697 674473432 883344416 932699589 528493776 971101601 535069690 600099336 302987869 351146843 302774176 429392844 489283771 843271674 250401188 667402993 922518668 979501380 519823695 871804603 992636043 995967948 220892556 895086265 507229655 770532326 889939031 995405819 999272701 999777576 782500088 865266012 962380006 994828085 322379217 726557959 387774203 505342913 514168351 647719884 132566199 652610308 599005023 768225639 834029711 926272694 499153893 615990526 611095882 758934295 401079722 574277206 14331692 405037915 158103357 404240871 293151910 615812339 238377435 491924834 65135010 189234143 192256514 264905654 917735175 939184347 118301171 387927961 380134142 986786639 42694914 139301715 236154273 397722694 584668619 846074535 438888508 836260261 878696527 953248904 103058842 628403831 907029568 910431097 694582691 902438197 954811773 984381840 312509094 876199977 758514560 987282888 458765664 757756856 518440200 672467108 846410118 973679268 840979982 956865278 817860885 875612372 597919914 868314273 99674184 534144861 771008398 902400731 581770679 630496611 208550708 226709871 224120598 477831601 205771282 589911963 970361235 974499392 629443140 928522963 290225472 379430201 229268957 545847292 23129928 874584303 522781613 941382208 546998132 829108121 435383258 684912997 507101098 560829693 646513788 874951044 688897042 823619423 157515288 636656020 564482673 870674701 279357542 741724295 916696739 979686815 549861936 747124053 525362309 654309275 157222534 731893341 366625070 914683726 171878044 842372442 522068363 647210680 198973860 696920933 985857006 988877697 370219604 559389572 767556868 983127197 278060915 490222373 286676297 695864390 510461102 547937424 174136831 388118559 471099720 651914318 39895585 525722048 674476007 901765937 239412506 948026997 738716739 812789866 269008360 364644177 524651590 786073143 610175008 822240477 483836829 736464851 803034496 841587768 469407224 951599905 94047104 301030703 39823823 856281793 164893861 425281633 66707173 325174403 427007056 992621136 970941901 994374114 971713996 994929794 120173986 253738929 188876111 244020564 813845080 823819252 614769 222347163 967848737 974698981 172312929 200550939 611517649 774476709 163879660 404984867 718799638 952675535 596657325 796764558 478931920 688763042 18622895 621322594 528420408 651820744 268369613 711506227 568402547 885300049 554625038 979986236 180052150 594678531 363154958 909576781 378173830 938201933 751329612 983674881 722710002 982425478 771437253 880689838 725458127 738646588 780180309 782732759 889328967 907629116 388783292 970603599 144667175 613612927 168852242 608085170 367087341 383887913 802821075 922781250 111639069 579068015 427624208 761003315 509397696 816768585 171835860 716782749 237236523 826418931 830276554 884691923 126247747 256091215 719994340 800311371 526519453 807374170 865945451 953836909 901727526 979638544 947171795 969405846 509119882 844280018 869184948 988269964 569429395 846794474 416837251 801454822 766867633 945942323 531423060 900644003 525416591 922015108 697731403 971953277 549382507 729897338 210129748 896721484 412838934 433114534 361482491 894622388 6445908 394836827 9245806 420181503 179032938 216394138 898610205 985419139 711696908 875093900 649661159 806046618 60857192 797507292 817972127 968392351 811407316 817188008 811650453 898280066 936412199 972364096 931764332 944031911 557988111 874132651 71077437 229829144 772272606 973890612 365200936 923633205 460798150 628041202 953807307 999679458 83275674 668796602 103601919 686690302 779432869 784369686 593674364 656492374 719671680 969471526 621888274 833676579 467793444 660734428 326211893 417704247 524664566 639389694 559484127 751973406 436132797 460827270 410475779 826819072 654377652 706586506 222048013 389992235 974880086 999380903 432153081 676780603 572393529 946015259 403622119 425078080 682773290 752451640 193605813 540941647 792858626 973022245 601652093 702720936 997389551 997988958 628500505 633730606 386744679 644410991 164983055 272305143 725216638 874735442 292592331 782226217 434715175 631964423 569143434 992333956 246100282 948541719 840056697 889883711 557703395 675433954 614317688 984438916 982949874 985099922 432588907 575962906 908624249 957628246 621974710 921297780 859330646 903754604 588124557 868885962 4111822 919856876 630811936 695071802 991227215 998037230 333960 347533225 586390833 733911592 507919366 543310182 210509858 321037911 730763219 873068793 85627729 989458096 53808042 426805673 765756776 906332524 877892928 879738903 184847901 502433677 550856803 769593399 480838595 893109913 451799018 613146053 252414901 535055363 499713586 709998666 350208676 700560271 548245935 552646103 593222668 637525027 51041074 665956195 430853768 877547419 716915311 856764592 784696277 841958951 538398010 812088419 833541190 928075455 86814796 841769294 744670234 970011802 904026685 974224011 659809457 910145957 983130571 987399460 672935752 918226069 499846072 915043842 59834521 903774718 316383734 981705447 912743830 923823000 316850456 894403331 986308885 998417749 524410293 702821041 468114531 963752972 167615865 347244192 624781259 669418994 259984747 680469793 275180208 404382772 388992217 765350608 984437743 988304749 48746074 568738963 235732993 494398665 927825582 953785565 419180312 515676895 92955507 989484042 664514841 931183883 410282531 919084338 52934325 590182511 277408741 823822832 728707266 924059746 106962340 487240798 442203664 820389736 751619233 810584170 926710478 947570882 925083871 946280606 293805331 714211779 227820028 966354371 724478491 953800257 678155202 790958445 71810658 435347408 979608725 991573487 212148138 424012689 11181230 409927966 598168452 723836147 264442480 806327129 502010189 539900705 234516476 467455793 274004824 692494892 943900383 946142582 872366344 962987276 899554020 958461623 939563025 949422152 658043642 746300409 635999009 793754862 874723842 983839654 880877008 973353034 859322945 880186030 454362892 470964313 302388808 472579858 990596400 995471120 686724195 690283722 166817358 213694934 424661784 955768499 350340217 711551036 222197745 503297002 960068087 991338363 55513433 497129277 790003620 865567741 509001139 778371674 688725191 893504263 439750600 478774850 372254937 446485324 101133652 694428472 657621114 882519786 186611739 923434348 982466735 998482303 595207026 943611539 699349588 718968565 950041359 979182847 154051346 198191263 735545319 824978772 696377751 959818909 623583047 979906629 394389146 898905818 967162885 978967024 5733306 255703851 44608510 906341593 347650345 806802835 137613445 451328744 469515050 558803547 28248570 588330319 79331436 676330402 156052525 850000265 649557924 671934427 259554261 758303824 143687845 756397667 84787958 500330415 640212576 665933354 892409534 941915395 959735049 975954702 418677607 658298269 313173764 465512827 463974117 594660238 646913687 884385002 86133989 195300367 531990425 772808396 150395158 545683449 24081754 878947439 674963751 764738093 351512127 608219521 838247747 865532101 681205311 804842033 287353732 555981769 748948452 891853914 176917645 817741404 716419280 936440519 451578069 721421041 920710754 933687178 153917652 740152093 22659956 538064988 543541715 594023808 190264692 246609364 415843679 895512771 820896014 974977157 436302038 662998530 278506382 378884628 417228364 601484865 164806831 305947013 160117434 834251029 289572226 582188087 840578175 994883917 23438221 311239284 890765299 933746411 329608091 556680667 184700514 248341334 874771746 902046279 491421944 951599546 926442719 948657878 137657277 533446091 752818723 897790925 745000616 921684605 695220182 916266431 609820407 996891508 894162525 929148314 117971514 756387923 963719988 963899470 146893400 863785166 114974517 667437143 324478507 643496314 656902472 892123651 767779730 887521523 763081128 935723689 315207874 524408027 685071882 847972028 131010727 672646486 900473183 968941400 605951246 826659979 370926002 749651440 900861059 964249348 827401504 902430804 734422735 787445126 437791920 588579729 18265351 22337874 151925356 251222035 947293369 962738467 655247091 967143266 915782675 975366094 379490705 733789299 131686721 517880009 828216990 943160797 42395764 72559845 253351917 939046712 946465180 975950719 621338144 972532278 127156710 713477955 964294679 981716098 955187049 976384175 755664198 936994656 321474427 795929056 716827530 750295057 267760386 441025542 654125661 862434248 289965738 975406131 439803692 950492232 685066943 741606090 356754658 669717547 458729651 796092507 150628311 548844003 712464553 976292572 93710869 909393583 556331136 729692535 69262823 992795666 462728348 960969131 439730499 726562542 740290562 950078895 928191698 947635532 79585893 740127504 85174011 623922950 26377912 250843855 566428624 685824146 341718741 695989123 220647309 707711011 397274368 742513996 486972019 507309587 942684483 993885386 910662685 941967014 346072698 696567824 226662442 382968242 329309260 863976641 986375691 989962759 207512658 780893294 816439910 860781771 908871570 933107871 307794806 641052628 234313066 489570639 701681414 804288931 869620605 961769066 103891057 230057282 546135158 920580824 388706367 973521686 26506042 268929528 28894405 544800724 667964875 841717400 194558247 666458623 406076728 442582888 59338008 189009802 498612487 570466770 397265958 508683499 184520213 412935449 914481976 918224637 446277864 772942505 723516540 882448336 406287654 770297902 727817820 918543432 484778813 806182641 476222979 987131319 644802905 922636210 158370779 184177019 920172696 926425184 528825897 760457190 32084958 74947070 72693991 419076345 864243021 916939806 149912541 514832620 315674477 993439201 430193369 679630611 184352222 965063687 606686865 768192764 152812128 844437839 469684724 756040886 480415278 623954409 817475354 948536938 152805088 714656295 286809258 916564181 30180900 623738124 668924593 851858697 952003830 967695909 465287313 684240098 497720845 961141325 666148694 820149402 820934741 897060306 437483377 704431610 603877848 732870895 921259341 964269633 398998269 875816422 887794869 965659860 143356900 436606906 395382116 437849537 999773369 999813995 581765035 654468655 852922467 932404745 618295427 749412185 54733939 85170626 64827182 291809911 940026312 977580655 248366138 976876607 457798002 902375418 535410495 631968840 903830973 907543762 676601165 686479122 302472786 670125380 410883542 992720977 704443224 736571266 381120169 572459749 447156309 603683189 84525009 534884702 783882209 881246947 330756553 906709318 331726802 538441445 555776934 754120608 557279335 561855851 643476834 940104838 793919135 964004247 886317514 941916947 929686111 956588378 158176268 466244004 217023468 236796359 628234481 851063373 122702791 930128979 933642940 965946111 458846981 786676020 271540178 635826203 962633021 967316113 873746471 910647579 370570144 515012891 187557724 214411876 617121338 695660839 991706729 999867970 365626283 855829753 762319911 797212239 569779553 643656180 269179320 837508767 351381349 858426630 236028321 624094420 537987294 848472122 299132493 359795177 374337213 866002367 238008608 748203407 357317656 541973544 330301147 857009689 594299490 782572110 192782024 562488184 690503940 982812874 329506142 644401712 154344076 912661928 868197910 880561244 966413443 991513509 525500214 736972650 15400679 382864243 559882684 862299693 805543945 920173782 982432644 983286639 909934386 953009254 373124211 503203393 657180154 716301233 894007863 995507844 961617594 970349157 630222322 904166037 663351779 739008033 923975086 952217818 906102214 991171694 559841775 716966470 608895587 924850939 895773331 989665573 702741291 887194462 145424458 783861256 680127129 753808284 229597472 562820954 690134245 932503053 325411977 695092774 57759376 570639400 75637378 250602308 985562212 997736082 61181236 187596059 631095298 845101467 488193544 782691417 10555976 947230945 365899024 972404810 669219904 780369449 45383087 69564133 529634988 632290083 623724422 998402686 55238677 100494171 137184229 942101701 585054322 893402913 511937153 630129364 357390980 429367864 748218138 980362445 139774027 513081123 812200570 915236100 905683940 960254862 361862534 742202080 579909916 838746634 93791292 588515174 770252055 899461182 38309501 522285103 646909967 838174305 245678752 433105252 725273949 962797396 195808982 550133395 71955539 958995153 438224094 677255801 401421540 966207119 742981894 964497265 941082347 999028544 16327449 132178142 223212446 675517617 21602816 866555469 612331978 626575232 292530067 751478861 701505886 930511247 304025280 644664399 520062176 770691465 569716104 887337750 549699537 867142616 438675585 739404813 589528403 866328424 721893599 923180582 664156330 698251347 303733992 870526438 149062750 811924405 600410677 922449423 63703057 926173652 151889689 573494556 134422323 156824184 413897473 711782838 496127068 811780859 606761970 903339038 706212810 845089980 319085497 809203609 657084110 817462751 629104201 668015913 931996691 993892477 383199041 959833330 549144384 840762170 910753562 980587490 905543588 939769268 217522074 980955729 351981758 470977222 488292754 872218603 992947446 997952177 29985399 556914468 909302605 982981524 426770645 653462468 185912581 347252020 811568930 969360514 552991271 962115974 258131610 847282086 280353481 460966945 846292690 907855036 623067234 773634707 268874865 768913850 895894129 957659372 663061855 840623566 558026913 862017090 463672389 734784600 59895103 562722070 915031755 940601003 354534318 682381797 786283265 947637076 221109366 776714391 141613872 816016336 112583447 125335932 317017426 458860951 768866301 883878473 133154369 173150005 251845299 500078664 243678296 264861743 868859216 871206694 299678781 791765067 80793375 472964035 472996009 593918725 848968855 995810067 142040479 626150699 157682272 354408458 472159149 983573108 87259647 348282101 40164962 495539103 206464876 933699919 550537946 750223731 623858467 788392257 110147293 243100493 868178649 916963441 2407865 266140198 640929297 717182955 107621673 328410581 637600557 930226564 228794427 334258202 400979265 794590334 57276584 182108658 623057550 787667139 117701967 454226055 495832064 961704945 602032364 948690280 308865684 962401116 151776127 700557969 975665249 975766944 801160970 890585862 511454547 658430395 805146525 933882724 50960318 218585676 74756290 200402014 74167362 142039566 255945369 899534046 664760897 850271463 149046568 219467755 178430497 215904847 213510477 429912936 906286801 932001216 669133759 790983836 298626461 971434079 888934510 913755514 555776447 741647263 311602761 614732591 353932406 988855022 338066283 959926483 622461933 961605968 635811608 776328084 824568218 971553968 172923888 399849607 258485951 620243040 433591234 703190702 602551625 788658512 708884666 832043952 507767874 966494031 655793209 740473477 48891956 150749368 170100273 771270177 333037262 824171024 150539576 150859658 989995549 990949466 922271980 980399699 616593145 959850803 658716699 915168701 996864599 997946319 542995466 868190888 332297674 906437827 711171253 785423352 715907985 741562551 16292208 653762376 794601299 944586607 801892377 810414875 193025054 427963975 396491889 859845518 868618264 938920000 838610447 981931866 390448461 608711769 438867682 871090826 12415651 94275621 264598700 329976129 98159702 722774811 272009974 296146917 45824953 458909341 681377954 686343397 440695414 623776354 574578358 821920712 129878697 869750112 679299180 913191531 930916763 995227612 860731792 990215493 809832858 849393983 843849248 925016370 547953878 592468188 879874692 981752940 436621550 469471971 714384934 778732849 621962691 975436654 666699427 692370004 622332422 877240788 824217780 913909200 602081005 986748768 580202434 623470262 697670868 982781501 42456890 845974386 400389547 950927396 214545783 298090415 620457088 804247252 517301192 705334568 371814468 437677887 372873138 501003099 467815878 692562126 307912087 320690304 804033972 843954240 614130622 659928738 872685089 947105622 314561279 965550430 238038561 267999989 312649491 682167756 786800834 884867799 454595987 974220953 853275835 939109441 505369627 998365464 527236659 725535152 391496080 592789028 824349513 875765456 993265371 995072528 744444880 817079645 646812871 757906180 713133028 991417232 863125135 932025024 258460015 788987799 826102902 905299089 739929311 774242406 261562680 797294305 720586342 978364989 811814950 913669170 311763558 618311955 226301317 449714299 254218917 898058120 320792464 957117410 433443734 783163617 295460571 487104803 447586241 968832221 998396618 999306806 934106801 970411887 750080628 863559342 760135288 839051597 98047682 544968567 110341238 911843602 84757446 300097398 685575660 913156357 521546759 748519262 490701430 625341539 921789044 993164274 534374216 964998609 238996966 348509711 373442377 540311774 118378367 436281101 441709416 453280881 763206366 863258604 116926410 159231435 4317686 496338096 152577777 975813597 818893782 973192536 997340029 997883464 649199466 649667036 488311701 803157785 283383588 996233195 905199419 984107124 926317873 956763017 929691792 954094172 33945726 124031398 691544145 777691217 483703415 484887465 558432761 755796868 565111849 567981658 107869053 785587488 764108391 824829784 442159212 701073915 422590203 784985337 641339908 774527572 463556444 644509855 180809538 582760054 792691133 823456313 256675940 846361427 215478744 953792441 794944317 850258202 115805884 535806186 236190684 771437363 799207009 964584773 591250205 665309436 987889375 997952200 955241759 986770864 657395583 659215587 112529917 145093011 531474724 906932236 274083283 832008467 110288438 282199375 56795361 951660311 929626935 994153035 365955619 460252420 464911884 769802342 590558104 699401039 550158360 592686924 364699824 538215602 203705731 283734039 556580465 836380276 72349512 656726626 648321934 859989869 233794042 827394926 604083750 721566178 876754543 884686048 593915356 866241689 503712473 731176172 919007994 974886410 17057589 687672908 26288689 119372695 875227144 894263278 313627895 316550071 383068683 673913717 660632796 799656387 536585588 626179225 100146990 792195963 957631827 976151632 546638426 654018260 739535493 897882399 906955655 939413368 73296882 94194387 882620002 944700544 696886836 816232032 845170948 924666996 893118190 980120633 178937405 659098621 295671697 504766140 945413320 964917237 763837925 959157274 300644357 945482764 738998570 838205055 723349952 835681515 70770280 250746275 453092842 663598350 546411176 985067502 118626566 323051903 914496577 916520460 815630093 930675282 189050676 511176034 120930474 581777518 131018651 796951237 962450991 978316061 476136712 935733856 51434608 384767745 147749207 596301372 880612224 990411501 109840176 473714377 512195782 866578051 55089779 877673714 719801977 869256925 624889966 786946394 256927432 957969386 780664083 865140437 779833471 836970266 467507601 840057564 43947968 136995594 797042256 823469939 474374898 783662104 506446400 529669633 302168104 606459412 50176238 620956346 231326630 595466365 594756216 749239523 446789894 830559856 475211233 501974762 67250202 71697771 838736005 945412879 29883083 398656891 283047110 990872844 910400294 914641644 263871762 920401221 504631965 895167289 551083733 980120464 647409794 848893805 714943408 723332997 520095612 567666805 146276846 381460550 878422910 996006470 639194464 654849617 708976513 907797907 669441972 923582591 176325584 300239952 764025428 939008811 834988183 922359123 890575583 906546890 424898792 446461824 984595593 985753668 480529591 577458870 572204190 950679688 831089368 997660285 311362827 704490743 742863821 997071255 142434827 410213224 81509591 599952801 106066390 890940702 766829663 794925021 2219326 436799080 800828233 849177887 496169101 838996970 252872074 662082575 274563802 970048169 951356586 985645848 836672045 873531495 62572452 124786546 509425395 749211114 542974482 634467517 955254457 955736530 701837833 837923948 170173601 357811235 465177915 873263069 339065998 871920157 939988456 979940636 244994166 490620767 237808115 861214781 879215554 910546054 526344851 875043167 270611698 804318411 897340379 984497211 243954197 808115516 504883485 555733535 68918795 881427864 697226208 829024813 104068886 255359566 807443098 971919463 131013783 629704170 439485196 814714131 95251569 237593680 313845362 929272592 905095008 963236193 304202159 832313974 196685335 478607392 5292858 394952360 181647850 374382416 444603065 864368914 690961265 941455530 612230704 697248568 474880985 789228490 989109202 991328794 629096673 930067224 498976590 916729937 100315064 564594714 257965974 912327880 578307132 768216748 767466382 937016159 176214829 811841313 430462420 727666499 177531802 812938431 558874021 580348260 30883953 68011067 839705475 998478227 121780496 881703689 913306058 961842052 594545153 615876850 34160486 468382456 246202517 803320084 794849798 913482926 692760258 993169077 840268183 934194200 369524884 463764104 577728588 873246626 175995032 627559223 851021448 929379954 260218574 373166161 174254596 500399881 891887458 998817241 866532640 912879142 583954970 840625282 469431869 593252130 652206815 716032218 11251768 490430539 478274861 748572593 856964726 911953033 245903516 306406476 123144664 668123386 701642857 835504175 644265747 900199806 35358633 230307362 338700696 375130369 166378921 614878608 70005045 574795716 447815704 758663735 498991836 700237854 391277254 710184542 552596516 825087454 870952810 902305070 96508431 305877065 643854987 769885054 939267860 993733315 678048255 931032586 369387694 424783586 675574086 788184137 408679904 530596479 571271708 785426203 867218986 972299911 79561751 398028334 995163938 997916230 818762299 945826991 181964203 316161135 626962613 968579023 651912878 839120487 754224374 822309387 139138232 431795506 978340732 993287891 458169444 950017541 851344019 941041450 616660576 976554110 498252282 812202850 533931789 680496629 322406501 928371998 609507018 860266200 403771857 615403264 695477435 795319263 338149269 658385528 216180240 541713859 911968313 936997815 532656261 828582972 199046143 864686053 860267276 956966722 960053161 974748185 336490033 745186376 516918399 783465381 841723396 844312662 861376997 963577364 35392783 412585827 363408562 392404104 349712259 585703954 166501941 267490243 587775644 874306528 779187792 857890876 292652814 416468751 839862713 966045459 419199257 446919798 675651525 768007727 160474708 509371451 545226967 561114095 397309271 452459654 545558687 786385405 492156577 736331729 896645270 931699156 10031173 863915749 796025711 964640252 531487249 813954561 957048107 960492751 529471534 834200096 675534384 685281491 279069941 910864823 676768421 837154794 858123842 974432205 617995120 920506159 684679315 854959010 183654205 330038536 658042473 865759771 270753981 541302520 329791408 342962892 803086709 845519164 696868606 961208644 307463833 872009505 992163584 992490956 886592548 959076204 532223612 840988084 717421930 827226968 41842631 913211225 809174744 811652621 966252226 987348279 104748703 113727228 876443393 947952477 189866628 855983063 568937726 658186003 598180851 798824912 630157368 905427333 269030163 529331018 86026052 819747440 863567101 940546628 635726773 763398086 183622097 957019776 494881950 668268158 41116080 807402174 266682467 355686452 409164654 675158591 251001822 911780340 531999150 819721809 313071264 993349316 578089175 968930554 984777707 985857960 375132006 616513722 34559468 216347756 242972476 977640430 308301446 900445254 875926028 887664768 52417697 141574965 242913777 664338358 809083744 994019030 129500265 554381572 286229878 344013340 984857158 987851281 335652240 405223069 889259655 920455080 973260035 997451997 541142585 918435960 734139867 848814547 20140635 284240624 634046517 721846016 464121066 684867345 986599017 995077285 348192736 990991083 135220048 864517763 68504498 144934338 100675068 891378233 356456923 471757195 769729015 980781922 656813740 782776585 47844252 845666430 782506813 853012505 616516724 917149105 201699158 416469735 725104107 809995005 930943332 944369636 956057418 987590676 209126290 556688584 958366211 998236321 644682450 980212647 308588435 483156448 172255567 400481443 593909797 739664292 738159233 896827529 844956872 960990498 780118303 896792544 935344352 943887696 474902524 902472505 263678947 345476057 424562526 573810240 317127802 998971033 881104737 931679308 672993469 858500614 336353819 811856402 770523590 925169235 584032302 812366926 541460719 980655537 620997229 663987219 724493274 832522337 774353480 929755054 277161260 667747529 186844225 459793902 124598646 222248341 140369549 838615716 61117565 439851306 324804172 718265336 786361768 996427204 439455901 750512161 862273192 919493293 188462091 880323847 256904971 789922371 257641179 529286975 741434504 967606130 690219302 758892002 708931491 896519801 975554738 989723378 909677487 999136280 634118456 843500161 621157086 954001393 689269705 843960088 716221376 737664489 745035610 916090288 408437093 740975165 37139326 262693426 429620921 564359469 820628471 997922115 608611573 908194373 502130213 696305657 666709518 743863266 815144269 920833741 147369029 594232354 895765244 976545443 951678611 963859447 822741517 834587510 415815470 587987635 763783067 772107847 993085003 993825273 927202673 952480253 722882246 819657288 100014163 655853148 924252020 946809103 758146380 810960557 724506524 955900082 143812493 270899855 411820057 508763158 18036640 192627750 903251015 950025544 473367793 765118486 773661374 853846602 515402790 723801840 471794147 657677919 215390298 934819460 804422677 827289509 327932442 601546864 775359542 889938994 961498521 980283938 469155834 578537152 68515676 446605080 807771760 938772958 792495266 914536423 737719026 878238609 879007125 932747769 357676788 632168621 248637646 861704693 709999951 823886893 485411163 634944359 113825862 878002711 899936572 924129112 230949824 232842603 860244018 878217721 637112359 706087782 59462045 276001455 334041008 661089333 765058529 788266900 379437373 870475166 79136721 334184493 682715506 984349087 129587028 635176003 792750470 945242778 539446364 779296901 677693790 776073898 723853236 745242158 213150054 984490085 817373658 837448243 800665526 904355577 651477894 664178689 61628236 313918085 185583961 231947775 533464507 948763143 639991631 889834786 236230399 420535860 720863457 905966505 956257028 998851614 779394367 868559023 459553042 547324036 872647799 982034907 66404850 608672353 102642293 523335239 624530589 934392170 215160180 663437371 29233241 852028493 193237795 498424481 728557219 775878678 531651670 954999426 655849672 850784211 689950903 730863350 372629768 930831690 932807884 993163025 192259025 978902700 778381725 962506704 946027498 950469751 104420838 374256708 492353560 616121873 131401170 902397581 176616320 235106750 320230930 579277559 38745311 264532081 617672356 936339309 979787437 992878457 471597132 590671828 274915129 825718570 660241640 759023863 158155957 423207833 951396235 973993458 598647111 968862599 902340910 996043814 799094841 967376227 545561689 764155405 747085572 827460159 161396600 519329753 159057116 741487653 193679071 882281892 803028867 848388102 836709856 865786137 177969162 490716678 772498080 801833239 104368996 170861548 301701569 603654780 137700677 618890123 201989087 344895365 413524996 616060052 22614096 565067208 928437476 962758027 296999251 427674243 250452930 704123863 574859495 939241693 620006853 992797221 947056741 996761256 566532896 708249296 268822568 998405993 893156300 980511371 446413172 935462149 817981714 825304417 825883632 899228652 832783952 907924010 642569402 814066971 372560477 412257923 981433468 996242758 171069621 885213604 116486510 209574128 854558426 915249961 170531743 417260435 622864372 758303424 593549415 633338005 94504678 204323641 527832712 942214574 568507942 790976389 36530847 516597250 611255087 743698352 771933788 850437840 303276796 911896256 464502214 954941620 830435929 993493177 489896320 840940131 878689938 979227013 264447773 432323590 237530575 704621362 316125168 633059200 848034469 949290985 511307764 933887073 551773213 956852083 644739642 793874398 663057848 767081724 988415089 991582025 802935128 874403054 934573434 993018307 758331320 768537050 836894408 866964318 980619541 989797599 101519554 161024591 367811387 671595217 200379410 477889313 244940773 762773367 727590149 877617704 966818149 999489214 170246652 829468133 601274224 721654087 207659692 656329532 996123513 996805380 620055258 648129793 167541120 544599664 346103151 849152626 823130936 905719296 473665175 934219874 600978878 703134786 520763615 658856511 88074576 204783411 834741270 990783999 787924748 908151597 359363567 692319309 290301876 754967475 851276031 946475428 674760799 925318741 432884635 928114689 353838576 785675314 336326472 671151136 937642793 940370317 745264648 959772803 350502820 413014867 69370953 586105493 997587362 998179253 523460422 896222177 887733656 975638286 544366719 664782000 341033504 878199205 697739348 833370747 815727991 834026511 672616793 732041797 607034816 667070414 826579172 915578186 108077651 358475755 296555684 657552452 735652695 809121620 760000250 953789812 868911185 895108462 239195241 954863179 955872558 985872790 140617746 267190167 167080200 608281377 208517622 545814103 788335451 826817617 197489489 946100693 885006992 919656395 905292082 930937047 753572287 935082253 618455749 879068318 26690460 548843962 233699293 335410126 181346272 918572146 222286980 987374644 754726710 920077840 652546355 741495127 499213524 590298261 745013340 968377529 211255297 223972706 941493939 976808497 936576284 956423224 750662556 800536187 8246980 433996108 408103473 530722348 407096215 932333128 111811392 358221975 841950829 967731690 670118470 749677635 807526373 996525913 724836127 729153112 998758473 999297133 930891138 940869157 743632681 762208406 286542717 826658316 411148350 578211513 970248855 975401775 296561977 411211671 821054818 902164098 806626129 900594519 338479031 981679967 62692152 812607581 128348005 446081129 346042915 639257611 768043826 864818924 425062103 646924894 726583873 922442449 87023705 526910262 348790025 426705193 529685278 956821776 338730841 545022700 415823720 758041403 861573595 945383703 712604972 900969877 78387687 664948322 759230642 856644732 496475968 910824147 84539325 678796525 437250018 994626756 762473096 992891340 705474125 840471959 392286435 666733394 186095146 863484405 631665707 783473052 370064875 416157827 811458248 969875157 749162559 853988213 549267978 581031407 456265116 479707492 331380305 667808928 142804954 238116935 838355105 988963349 895815687 928603194 897811192 933793657 403823752 898506614 257772468 435766965 167825495 428969090 754639549 802883617 583502978 647994024 788159627 885149902 468080471 648732809 497124360 754430160 331108651 761316012 195379271 795749376 76239827 938662653 498267677 598792247 752138051 831680401 937688589 975305644 376692489 612569968 223927832 511872021 392008554 424827622 949916165 962484736 330664852 775930933 302281476 877435904 498731151 553975404 369562100 862294900 791257936 997850840 233649590 770612427 965661568 973348937 94956835 983517856 443762625 601756028 5635113 30882934 527416537 894200210 402495420 943239309 722414342 731021458 900087838 978247864 239167687 934408107 19313011 657657130 328814901 938653265 721140999 763415466 178269586 290034284 973776863 975840019 667810944 704693882 448058629 626008475 709572463 724420593 400062289 739785596 26066557 463453877 900856375 928104488 799663857 896858996 735443706 749343314 378968581 833344156 355200395 885282047 39060479 773606098 66538390 596539174 53285853 96849972 722911157 761489937 200244117 591330826 561054623 657849125 21405885 117642288 80174412 495987984 668264059 795273835 950916868 955414174 768817079 860122693 971301056 976289187 975085979 978060605 634535722 860097053 546975495 940539334 487276692 564373630 458285866 558739848 934531743 998657700 333057630 619701422 395370620 995089799 380022864 583177352 997841824 999016745 112707838 317428231 233998334 568017442 697229171 948019905 142061382 865050874 532086413 977395242 351528714 917771838 887643929 923344527 455317623 856439351 582977315 764853734 635359196 804299234 722727765 817543124 753627771 939741607 578876170 731918853 369605710 505670827 700140456 943929428 73619530 98037268 118181656 426674431 950885524 977887909 472709328 579625807 54498825 763196959 526965029 870080145 852910282 967665184 761514016 925824840 726735286 963233192 610198563 647320343 403389572 915597778 208546076 896257260 186731747 969163382 386919560 762466350 513307517 696259550 378433215 908311282 64586416 571793645 745840277 991478052 252085423 417875221 156582681 515194245 577192182 691099165 98978205 699024293 590673575 767996473 59321592 848580167 276759739 912776336 648201080 682578873 156000742 197419000 416105841 577172152 877619474 968112056 149329770 718668344 924658316 960811982 245127370 306057584 454574885 983214301 178661494 216463231 487396487 977938592 820116098 901489362 941882941 988834173 459623181 907890219 17008889 365052822 779608058 954255189 484510504 936035185 556401810 575914673 960765346 996997351 735645861 890774349 373526979 598949862 448733140 961824005 553176103 787086067 913932659 999415970 221987055 618677290 706056529 720404151 898308124 922983915 345313092 905888079 598144423 990739448 942656810 975630891 204295684 508010747 39653841 892553020 43024012 836887354 299586455 920591354 884392212 938010025 229662095 244851017 257268656 672496410 232547784 545577956 862756447 993363092 460626150 482370360 914577062 972773751 524020191 764141840 630188166 697280070 538918324 889929373 710422445 715296488 587924705 866903597 423114087 865220529 87161990 285757604 116611904 574168595 610334418 646122521 467701791 801387037 70175813 392977706 49406336 538409551 334070793 964208061 307289412 783655761 137373572 993827423 171143378 439554582 476179645 812852291 552854788 936395694 771022774 895411446 69480101 122721264 828737055 986527753 454943625 579839409 658954925 748077036 343361334 605161745 380121505 534251163 333980346 615778656 811518717 916771413 327729639 385640188 381055895 387952884 308749643 636855518 891795204 918515692 688310919 860788344 889216406 904972325 589922723 893261653 32126157 567873938 575578025 719024037 506264195 656266105 751836134 834122754 334850842 977989326 269732020 665005984 505215710 773716318 50113991 720420845 968357397 985575480 995873477 997877134 2056811 662304992 241328756 866999712 241480792 884486211 299556067 556564887 204831114 953521388 649562922 934362925 460023783 480916964 612995995 997818694 785833863 993953137 665666911 679542103 508287535 851037926 573492867 800461200 643370903 970302113 227782730 652689520 200814754 361966642 709575657 789757987 243234672 282853868 329721962 427210807 718738130 756567448 302398892 968161445 463460128 819243632 304968243 812569577 213709214 594888419 754662531 930016053 310863786 727041819 812515421 904813055 8502631 175907866 723484499 729907086 982355879 994111775 678387852 742590261 239624577 664004078 621768396 960045871 623591171 721511804 575256839 928800179 877161271 895068620 30959546 780720482 616112975 856213627 814404439 900924993 291711587 359482660 700910831 923019525 662122634 920878553 49276067 974395563 473265126 786959881 573972728 808430110 370991417 726069134 878333401 934256875 374997078 468531533 879951980 969578408 36626686 877303311 627313275 860255287 122469594 844713135 583620396 995370856 804528253 857636089 258005861 735861447 808279177 904017255 530263563 675841630 451273893 628911520 56571834 433860098 863930200 965721126 30722676 798210462 19814250 144711309 329128812 520930054 313312361 966516751 444708588 977234724 327869191 992433886 19841383 682095234 695635609 843033908 111038812 993032763 909532433 970429423 537407741 689826406 185086263 587461241 713845416 941974494 682632923 793051270 99309196 326239019 956161374 968487568 268842976 434186535 944007502 986303401 429503532 835417767 333707299 550024660 723937894 988517081 489040932 723078817 445681392 618394686 317826913 994994766 772236927 854703346 21250063 643068253 721961697 737050556 281044132 612711838 988971768 989428935 37519635 489999700 614772588 850402167 192082596 647638965 292969946 417605464 975694436 994931344 923419827 998839335 298252232 632455676 189478802 806898066 307757656 996471182 607393051 866199388 167705016 660001631 72584671 955641406 231512838 701327269 437040029 552306092 699367575 806303118 768334400 839800304 191213210 235328632 734388526 849919144 146978047 832016207 493258080 729854501 91424246 139353738 537908842 807983424 179133007 200917741 758508430 840043851 104591916 988692907 435063443 943630532 310886061 627382606 306240310 541535003 622933115 649953246 202571083 647944377 515782830 835346427 113810071 946962528 85163257 350001449 598461250 763496237 820810223 932390203 698592465 844081265 974038740 995208847 936246385 979598698 838672 960488408 956346973 998096491 57902822 393126632 969335458 998090645 264020470 632278450 290448770 929392598 843602640 932248020 311753439 455825168 435280819 520870332 613132994 797993966 985945083 991867977 22437984 618613631 280942380 706890342 118355997 629617680 689650250 722736152 119111474 317466043 230365383 993832467 579463578 763887349 164667010 459614011 19291596 372525825 24156586 505471136 93609056 866984105 380787482 601627860 714242257 911593840 612073248 998960304 284868241 602224263 837129423 950266469 570098354 601599858 6530958 339502015 98133242 147514140 380535682 597416561 468277701 842184148 601488665 722978564 327694797 866765108 677242806 871301664 878463183 983297014 791237037 924004245 385610375 862062146 886133497 911680279 96617336 353193017 53942541 597883292 904290536 913911627 428784724 874066762 703102242 880460042 69416579 267992997 692012963 711439774 493443370 753123876 756320162 988991398 141914231 424548769 761686359 912543610 736552100 896955166 114947494 438225995 342647859 388162016 739434232 896105411 844951685 955920597 870339157 901004133 465792134 584464803 930237639 944561073 496365573 531493661 975229100 986012543 180191710 845408308 759272828 959776334 117775198 526877061 215677120 806238123 689755984 883166871 822889026 854306502 258097766 471793182 714241632 785358454 622394217 950660802 910912647 927059506 124810238 527710132 746325436 808192466 298778095 693008733 183169552 436267197 128613545 317650034 543996588 629456881 94367852 118308899 16642639 848722960 815304879 826611413 385573829 602958694 978313274 988523216 561722087 596519613 817157864 848407745 232466744 520975398 234454292 621657052 599165018 897994442 478376940 617963272 817965562 837798408 195480750 861462583 421729748 861700098 690473316 902616118 745002009 998773031 750932345 917661045 872831728 996465075 60730407 742517785 867667188 942155406 709376900 824143119 593632063 931430923 959796799 972952290 6149498 984934674 79301468 320314649 754186003 860818965 645056155 877160670 701298224 843543285 864088899 982627914 887431811 965123227 533210000 930762910 635187060 766075916 265323969 418857201 996242831 999454305 234909033 443990890 851089475 955048500 920683308 949240611 457591432 781978815 912317655 995251892 349681260 824854547 940908778 975771535 173702882 205903785 183881358 271143680 604900634 839276441 105115367 377499526 525422004 743718755 101217260 561267485 201403873 805720012 179127429 825117346 480525477 677691645 26113618 521245384 77656708 906769583 957489513 989832838 348440002 607628672 240750257 792047268 245007866 402492746 124421354 159159281 911011160 938370705 369278686 701874967 666852876 792044610 998082195 999056129 860322656 876071471 420002459 588841113 779699972 854603444 767109600 795591613 240200684 394510936 978449649 984634585 240345967 481305049 140471979 162122718 381824527 767002611 783282054 924920428 395248338 814491967 631924354 888834478 104905557 624339528 945785767 989146226 771812821 985008637 612983509 618196457 364703470 748590442 539036084 983650652 744469085 891349535 229166050 878431688 436012570 734441809 448920915 994807748 569142268 605170725 561564655 965086855 411781923 766129340 774120101 920631654 206904846 591818395 580381699 702479144 401707120 530192406 216793791 679424228 982326347 982652858 308580605 470206030 536958398 893249684 198609391 661883753 863021824 937846018 983484259 994648828 699178165 813375534 789065226 923477412 793994468 959624744 952325509 958217492 484071641 493210273 459646434 880248154 371316454 586521532 444372458 503559396 979484897 990231062 573878033 727986764 414788080 832308063 593729258 654813667 151960626 286856210 663230565 851491655 831083121 955730761 771512664 773067278 999665690 999983459 1426765 913492771 797995980 980150738 660116036 776469560 556703298 983594116 887880396 900385637 770739461 890044862 762278514 971410080 181418303 393958870 382404955 675256650 101139166 758949462 197238513 317893719 269853198 406881716 365788642 536120819 208639257 252493114 418123418 979517370 833319879 838787765 931467165 932878899 628412083 864286300 932649023 973407172 589479543 685736942 625754644 702272030 121632045 993043656 875104960 920446815 505721101 735663289 609714441 765864859 80650866 564104560 835553579 854773529 55172563 379792368 888597735 889490910 47405226 483150056 128248093 531412452 370634998 649025096 615023523 935444781 122035731 214383089 42986482 297425413 225996195 611724267 619990851 645079610 902653291 988179065 994797350 999590284 827021705 961628846 98909212 966341576 993085276 998005002 306864041 657291872 970108138 972168514 715140229 860916130 901517325 937557728 727767059 984323787 607763484 839220817 682694365 965694628 825407258 981156444 519858763 531722947 511006807 727351969 582939140 943351771 229004315 758825815 433665829 755966482 970079519 971412556 835196316 904166056 439383741 968866667 237265042 683345536 623943648 773335140 551251295 977888155 983353773 994425351 924877135 985915829 601606919 733719460 608301811 895462791 579678644 602159286 482670187 830590451 812824202 989260372 658529144 867355802 348742128 669934905 350619324 923995183 110351841 409250216 26290021 184404845 990416139 991398464 935793425 958302324 918319341 935325395 150007682 853336140 72022384 974948101 726566172 986600037 941292592 980912314 654291474 814287877 816218087 885887650 63667042 530065780 136842847 558301729 729428612 734531806 37047041 998441545 316223254 368527997 84922970 122367218 341715667 376619927 167107823 284450899 495932059 690791764 666120233 830204787 763859619 856594770 684601019 734820169 773906455 823407661 572592442 906732548 169450005 530901520 861763614 979016848 179749456 271669413 963440082 987750378 979908435 988613305 340503787 342815677 991297220 992185099 926336871 946625031 942160579 998270557 396942255 428932305 618574109 802591055 22257661 354319773 255792512 483017937 191170655 818580556 38672634 906107532 45600936 939657627 184830348 237938423 135286268 338711958 373855066 722399729 573267604 846151177 320768867 948598963 124472915 282450063 646326745 861095686 873466975 914481736 570322582 605061971 613002620 744360516 782065608 947917929 261794651 494118849 903792771 912170639 848910089 984153423 959244959 974479507 98176171 491856828 877248754 919953250 315644816 960628637 482553484 808978505 824682704 936887335 386737827 558507218 51066714 69037203 446534231 642687328 438787037 908686658 565450772 794539703 109552788 690267354 158766290 224492181 124623960 557553704 999809467 999907000 373897348 948774359 801849253 988386830 401371076 577691139 89497692 799988585 946711212 959579228 53418765 73282836 982573084 987802819 104764611 488885179 378365396 385442878 183302284 246012228 194873681 898957310 542898108 894323800 899433544 975941583 57274607 975853367 515235450 655217519 129657956 176570273 371631126 877766226 386973148 739951851 166381399 910780986 359256467 661309998 244532160 907186702 145813489 253045515 233774784 300883033 248599655 450543486 357902211 704155654 875236270 997196146 135530520 880709564 764865412 913863655 206441127 326281552 367708863 802811678 959432756 973088200 707973258 868893758 294745854 454084926 54402565 516426816 656926397 933383819 243938842 465907146 164298855 760108881 305870588 614993708 221559174 730367763 43805659 501267323 612290071 721423279 496404602 574041791 521883291 556666719 384038197 409470900 416214898 723290877 94337882 192033508 668673734 899026159 55818295 748412346 812570336 938513430 798087508 824279343 677067679 750898259 822535941 896648215 199459679 803969045 123499271 496876523 575203671 974133416 158788957 592041501 336599139 381767496 732624439 757313942 426689346 458801066 921716020 926322146 568964403 926698983 700588865 749709006 924540423 952827826 390760912 991430623 594005155 630238645 715222464 715596874 386694838 691919679 737791163 763879766 994547235 996352232 563592878 857912987 711500138 879871968 374540156 922406153 596356532 979272702 286145599 467913514 748719952 851916418 613510700 614784356 87689965 350803999 377572133 646075916 873364592 990445317 835764252 940153783 537701901 892703550 938006772 996958859 102962213 344919453 377924278 385752068 613345617 831919982 458641502 662333420 303674314 383653412 674097674 934839679 954585312 966502338 142271666 867790689 815335033 850753163 961728958 991851380 967791794 971918238 15978028 282457268 759217621 990818391 818233976 866445946 57791994 720184191 206286171 786143053 333763658 963284904 239811757 678349384 141340354 176707308 31877231 513209385 317284066 619275874 882724221 970969850 920382136 947479191 267853683 322887578 99498954 686365201 914340935 943362202 136353226 322020801 543620527 873760808 412342190 445335765 843213431 920296350 981223389 997039277 376490386 523383333 370120444 774537476 195866556 293601219 460057087 611504778 737321406 876200589 122235943 320914908 621489618 886572760 558508274 830958374 548883412 712584377 108692582 161600201 189482207 237522001 401359507 925214821 928611202 943632807 541831009 986127332 351774348 397072740 516984560 979400884 160909732 682282390 356607437 523264677 173961565 794728328 567781724 959689061 729936051 779944020 875833486 941191991 258978981 383384647 275100526 370325180 506085692 979052154 919810633 951980846 215583356 517681844 978225159 986420410 163888320 273932277 951173868 967934459 777550721 963799053 362006903 432513256 425556623 784215596 787771967 939576716 612749269 765199488 725199441 824319910 229099260 702478802 959256678 968338205 89575121 720754921 705396188 789396785 723630097 760912684 590760752 665642112 942757923 995579308 748643698 890202544 540190417 706030947 655176309 992197802 615789438 896212351 428035241 731890857 619955859 895321205 537394050 663148266 64419842 460506570 783952034 844244916 887838793 974819084 378852023 905331078 146521727 433291225 890917742 923058007 477413647 654290061 283767976 501545129 616892559 649532663 391748078 878586752 157310719 484742108 404745121 937720772 271019750 550302532 912499629 994302023 147292488 920635936 201146421 427950880 509784378 689423152 955151961 962631836 899479211 973419113 861209863 903228342 762736143 798117396 389267561 885936195 943401239 985334025 489988964 642880598 436821478 584375651 460517105 604326703 753777895 817613879 639591338 840882778 284742245 779620166 852405313 921646166 106397981 133363558 890652865 909438819 442049544 916016436 220210938 485841812 504279867 739587533 666359145 739441195 703189495 738220622 104195914 583974281 539028195 870373583 56298273 243847570 666262940 712162472 208803517 264062830 827436406 986826237 717569092 829805027 87162345 810322697 303394086 605219228 919711437 972115447 269783597 322614137 35370281 49289523 164615944 318865762 354777752 479303435 802954503 874480945 588314279 619372318 753235727 978805970 445781837 803091814 375156150 666692681 56511719 91975635 10044860 216889158 127332554 523040774 919173992 989925105 714643150 893287003 571726318 656968228 201561057 378907129 242009074 501973887 612066922 842804223 123687611 713662993 721346739 829018658 185887619 953761817 180301751 888740920 428135658 786192620 288773985 789075978 389423305 884351266 861508334 965525068 413036287 692785396 602683544 660755497 411732203 788536858 966466030 995358129 651026315 793981341 945041440 994350836 404362192 446815249 315945881 444815278 161747169 271196341 368331309 454459009 158271832 501357577 244696194 625688973 627925539 852315259 105238871 323081344 989829312 995057638 164645592 891939806 924088707 965644484 482732926 658933262 288550645 806128395 421965679 435593569 191474279 499916806 608434823 738635984 802206510 902206519 335409214 361720311 55763924 515988550 765184825 782690414 65960365 295643952 862876703 933842608 263372879 902384322 978401476 987787040 109562313 682298884 502230324 945802907 843614926 988810806 449015175 586351535 289460992 827365800 861790326 933180539 501658213 530252225 455155583 623960968 528791121 696603987 74732329 881185833 897565299 982770065 536577766 603936783 716793809 856563769 90206526 235515302 981400705 987139190 544714479 955402474 705424265 979158215 250335075 905817488 823033432 959961854 112212995 316905480 319929560 636523934 727833818 875433755 594283303 729801016 300291007 998392930 619750107 871384229 562970406 863532395 54357482 197146531 3028310 655577634 322355589 366492706 7573757 254980309 495112405 909762363 609364912 709612518 401188269 682476984 314799237 539452130 161983137 771423707 362493957 807054638 646095117 657421689 605563110 874915051 19209094 189405442 46337752 233487868 21159040 822963534 804355501 833325477 355542129 451561278 157059794 386649383 732241371 748618647 222295047 392015191 837965083 966597228 514205943 758694916 443302169 452941856 128573999 965498369 771979607 977644538 68666787 620920290 945673084 954171431 837082095 962062786 500836904 542960854 39144634 697449957 350568498 608201956 314169394 827438513 310893849 777688407 780651654 786554376 498331987 543413179 544020468 797240307 419989823 548496209 284149649 487015975 464918159 856579606 180610441 397911379 156392525 996354883 820691406 864491856 792205108 929508823 893056099 895209630 133550371 984415014 463397016 883118409 383981641 840185844 272214315 431554398 34290220 295967681 68193246 840414971 105093625 493527133 357281329 912385885 701647876 780297400 207697181 773760601 318419981 941110669 347494607 497955582 751131468 974134197 53925226 940018335 873194807 963887736 211967416 747232066 774221798 955497229 277415153 335430546 581366117 902232520 850988519 870995296 998724781 999723901 765411074 919607980 316250041 500269958 235281500 867063842 241068910 587856348 558896688 767862753 979898425 988370713 157369644 754311940 21585422 656659793 489803684 533130964 935435624 992625737 470220327 883190726 58869896 178261964 687615035 753382314 272026624 359227319 865068861 975401358 951616051 960918992 279271931 723782850 619890083 978837288 514721223 647555654 431988422 965179530 878745725 987996522 455937097 961768878 676300271 887034557 896381272 929828126 202166249 915551291 638763137 716686897 92891269 500666486 342262558 509772517 312163419 830262439 861456124 881473102 569905413 574299235 646907970 923687853 412931218 466111091 821860866 963728668 568562818 987478770 894117148 929037686 87321080 498933677 704488575 817553836 636255983 692380772 869057653 956429290 856758832 859818351 996329762 997436685 177747937 740776422 996328740 999566632 742479605 987529763 413105611 813216381 838608923 845424669 290898243 562233633 959084906 999009878 872093094 939323162 961989383 982964388 831002057 985021393 699018691 731529008 7242343 18555889 60919346 351692892 307096093 481196601 274303091 383426623 944357903 957810173 710812551 999047669 393694034 463628978 509352766 520501036 599242261 730087466 591933879 663144241 684261670 778471603 719666537 852077920 181683229 718836375 867334638 882350341 373113259 792872407 122217600 419020952 409623710 507317941 710504106 929559894 146375926 199954396 941168317 991864933 209420991 828778080 787624239 889959185 501407327 640715152 795797848 893306559 837403534 980834794 537369870 744468611 206446631 337939846 709559088 798890885 228654309 677347234 387398734 414607479 597663707 986998017 250397418 860039484 722505141 759434658 89180498 302998646 718164758 779301996 911580293 955759581 524205 517336062 566582902 861826740 197794506 346703672 405881769 820868273 548633824 708749617 593072813 648086595 849731709 887414779 23882319 554678723 554939488 968706444 300049231 920562316 370252652 896197520 968951297 969701370 329715072 926852859 812921134 892825039 40569783 345741438 768885447 818740885 785492158 956834272 644533585 957771786 23940042 108772174 957262210 973092111 19709696 942834839 531497564 662368505 215801981 530959379 34715537 317238827 720416051 741820509 414110589 511636986 483680269 789592398 732700584 855667480 100197574 777391915 290866470 564780687 47356662 696355421 299681543 781889769 73968874 534917816 750585987 912841725 344085784 507533464 611442739 651129805 848642655 964302578 893075599 913468911 463527629 575831454 769750903 916208469 395251230 770952291 75669580 818171769 179995148 927751130 618689099 777281429 225386469 539730180 976483112 984858887 838706982 924737475 143914939 170791076 963281637 976004496 832088086 942101274 952251877 989216297 840879515 981469013 190388368 667406854 979505095 991915247 592200971 637307575 368799723 605644054 700016037 960704006 987754633 994093303 128302866 709835531 534869500 898519260 549029014 950774698 129449129 476418283 649517132 825679651 236352948 364010416 153406798 561718369 179378708 667229100 607012642 996108629 358792273 717659996 546184725 895501635 570294797 643913848 640838757 924840434 773513997 790889178 242844400 393392015 773459303 896051905 460417773 952126893 489693942 619634433 685693796 730932829 931746265 936282943 216381976 331051748 953776672 959156519 954818611 972581282 769813020 856758931 902384704 947788696 641799151 823433875 33134686 847866978 417798483 576788674 585451019 752965000 440057736 524623242 556212837 642026277 690028258 799174833 411646158 788827222 729242820 869345261 109115621 583683856 473664576 500991588 949150124 964205324 305711880 444248640 20207828 50080369 423008589 843468307 471539731 799760495 569225939 702399644 333057969 496242138 446561087 908075910 837989813 943066218 431401533 699072455 282890119 557772657 351923092 787329327 943226649 962750833 943855643 995828787 766007725 977039593 171245979 269798858 970342574 995127800 556693320 974751647 519385839 815703574 107144974 365039915 810036683 940823717 666912883 700515874 802702428 899464328 469256049 615702432 220972589 729911519 545433601 560987585 142355922 633916802 811591606 856541320 680819171 832266145 634757027 745989910 377650326 972412786 61987470 775234319 134577270 341757882 419067850 727839226 525116520 729355105 135578193 193784157 104033224 573949780 558799531 727212691 889596453 956548154 894925579 989876621 684777904 782667211 122388064 398958412 983942113 986075525 483419267 577230460 832058217 983333424 194925142 665118553 966709527 992942184 882629905 909863368 87097759 115904657 307119950 689817512 195556859 596211658 972252705 987866978 711679569 773071624 90956842 422551859 439515831 737465430 169457231 499675095 694518354 972950271 462447191 840999403 829780443 956196223 116908430 515036339 237562145 668256200 182944830 197258984 806948310 907668774 698311376 996247781 530744475 697507494 861381603 878331717 413841637 846775065 466681309 475408480 67252342 379750526 305489760 565548961 428256002 748521494 298577480 898797798 357338633 427889193 662681134 777029964 776180122 859897662 420040809 987893746 905058015 910532957 800310633 982759952 78281219 243284767 586045587 590394681 833708013 932933295 164645484 275295727 129183616 361416941 801260327 978516324 873509533 934589730 307098389 712845038 591256060 950442255 84491017 900703112 216365652 715565921 422266390 798227872 893785348 978769981 162271940 375661859 113953833 733441397 27013874 646628669 65617436 769864706 150562174 759716212 644790516 755441372 792202327 934040419 731048536 848785977 188611313 236556654 8389207 510459054 372294265 852960816 264544063 287269970 966669072 984715503 850618455 893066270 898991094 980084513 397248074 792944601 759529558 784544403 439356704 456655755 285095169 905202144 956321244 969886443 347935957 406983327 208795557 753388956 909900199 997650436 438806138 683523285 188350266 723994751 527686637 994735915 162480460 812245537 11841664 624994427 970625338 973897789 274618276 921202828 528656126 563211163 145107811 182979304 896774945 988649318 978137078 982132189 960283397 971110423 825044564 981293436 446866757 861016286 263122006 331109375 519489572 818361388 404766457 992553836 779712922 895939061 876030376 918421136 131802368 215655839 439580361 767473530 440736530 880430309 494902101 827309035 115513976 989568344 597654378 975584930 162238274 973915168 16806088 952957614 595896182 678385121 703937882 888020292 839296326 869669739 799306085 804751283 623621310 689124103 332267799 574006958 805195121 814769794 181434045 486931729 405188883 739195542 490405422 509828028 757307794 820065999 61519001 104136151 867738616 901308579 725544879 833553348 238810158 749220149 371249691 462630451 186994233 726773347 762688 804284472 642715037 812093333 210377312 371378910 536191008 818388371 548750654 877111808 520057660 945844193 699028188 770658426 644667307 823671760 537776859 808647539 456199552 781547618 226559180 474378322 931317328 935765535 81880295 929310338 513039128 975008410 209887439 211262658 94583423 591831312 994996087 995189121 195215348 801140916 748630286 907637172 739136593 928964684 348561046 366892896 230208495 734722638 999003562 999291982 967541103 968733243 170059751 587799688 507785381 884730405 771163743 821560070 606134070 631176599 848599667 979699845 684958657 873397174 452132383 542470314 71056462 989744757 268392997 780685300 274457889 955789723 12518459 528989321 251106516 291166263 172651271 819911720 984008991 991657134 596129995 929836151 455172711 928976224 445458027 963684137 133950437 756807065 338772873 713228080 27515835 488164859 152684167 792965305 122050511 505444431 321370388 344187818 493164698 970612076 637623361 925235325 250054577 351577046 726661207 850064489 843035054 985131125 865304595 885658373 454827651 874158028 357137569 369065312 759288222 867106924 808102267 887579557 522669413 739466810 977697348 996539771 32462189 175076104 289539851 757537807 1680843 901621795 137807776 977717928 715005031 831960463 462276627 573717642 806058936 876475402 646569915 815500635 707564743 943526887 809307184 953065812 68621035 666148106 942097775 965968462 245850767 736904778 666113364 794949653 630798975 849506400 58913740 935327537 143987767 964619318 81913115 575727990 751376454 782171507 361876491 772893270 775280923 970062037 284253418 631386676 918935173 954943487 198765335 694372828 610246735 646800452 752528321 783816967 733334369 740474444 604224761 814264700 978543267 995098293 633129831 676507924 179522901 761023590 894521251 970298574 423871365 581071622 102828690 186125711 629289027 941816518 217526425 693359702 496225332 617358314 60771857 582080324 652054482 978336885 988130271 996386652 78456744 556154184 685813606 925387759 532571927 661997262 583015967 966491503 316206944 941562211 827941303 935009556 643599693 648591475 579302214 878631408 621819963 813925352 242257716 618091935 605347900 923050075 889107210 997911778 999489984 999815357 53538427 269782562 928845236 991575820 961109253 975266929 840839915 875437499 921056774 972218305 252136752 611469811 211499470 651224240 138422101 140200537 977360080 996243291 340868590 898204440 833664463 989591765 587312311 785823844 369435526 417162160 722999735 927315574 464451392 908611634 252511405 971724360 290900319 601690365 887050763 955130078 187516312 693244783 350154589 787915981 655445645 957130034 249569532 431772681 61319807 193478847 198275998 906112412 899259232 985954158 432485749 594707082 628972143 999466501 892468651 921124541 215304509 965937553 879446435 907482505 467814948 698901313 203616689 679864927 678440431 975545378 917108468 946248541 513306960 943296464 460340651 501706945 471272486 676299929 30302535 470225646 823297637 967878020 541931172 644751685 405838394 432530738 977404769 993157257 240375553 827457466 527976884 549173574 385028438 950583292 442156488 966287118 431517727 514635953 987060191 994154594 97764227 232952891 908111637 941022109 271079805 313856600 492370513 689739081 982147588 987037371 211010959 993175900 40808108 53752907 742566314 762158705 330126022 408211469 523817689 725795969 95270132 833838053 154447493 304394108 923791908 945169009 265749974 463013162 353280885 426437819 361776058 715231026 691017018 693377005 864632030 957609706 538233494 856756754 521918917 623294356 286230477 317818447 224020221 509204003 593668685 861683439 175926380 685813172 681781639 727352346 760022816 762719207 200374917 241550677 202875694 649808897 87641165 469469296 754559488 903086032 849115857 963669583 723120590 882320510 358596421 719491113 845259963 874266081 182108125 541785726 971431362 974482434 253144711 867816059 253330404 319577311 676125744 911554492 303275104 745413524 702536047 809908487 373734496 676120109 360394077 367206283 683259108 951797606 323618272 913764968 505756898 686687675 416009031 417970642 359477594 651019907 98847011 529828048 649903557 991565908 967120982 978523891 882666859 889597253 117673278 655728963 740599638 786250847 218142651 733428751 711667185 835813132 363805554 399550491 703262491 718581188 715576377 915624048 660681092 820735660 427315111 748496055 78035002 115110119 244825285 554723444 218244909 753700738 40761317 845841994 859733069 994458023 530763575 643589846 927533245 968614243 493432002 969491095 861027136 945231641 105625633 754457175 598472469 881922294 316448035 593808716 309730746 889534600 270813570 765035012 785122913 952813922 579458222 626198737 319944567 919115803 538796574 638237666 516772959 641712144 803037084 923023794 635029625 835837148 158131500 573985029 159908662 692789399 819275976 829004554 726616670 978324508 785020398 846822374 743149209 745698746 32427657 316058048 911957463 921810215 935557988 966300408 642780942 702964184 154094195 849433029 268963491 455690104 434320793 682662816 173413077 191319141 682261440 895738045 377166426 546744179 100158320 677201795 361568987 723738520 204965842 863141627 512322344 587453242 842162881 882954514 602282774 680757034 291616069 459384935 688612565 897908361 170883077 441191521 945501410 983151775 908452509 946614714 587088002 721922453 627736049 644423564 551937614 980397961 223918283 553191983 675597576 795696091 355092024 867511410 528608929 952817134 729670899 763227719 504797048 946452236 853550080 892317398 615300122 814856487 856284830 990059991 632917685 669547646 947803962 975843463 706247627 997753664 197564225 395669510 400065378 829946951 823222415 891508907 149810072 584588330 554302624 768893359 238134945 780989426 229661376 420816985 266146005 730364331 249084776 696691097 952229861 989947209 750970175 778345817 343773993 935447484 690243615 925371191 691701251 783471379 60819531 809903438 523898680 546274469 579078212 766763526 136185041 269597896 988682692 996566231 846625328 894486551 992479524 996064126 138800628 724907723 649581905 754955116 669884399 797393075 415497618 663167521 511266000 711396739 146535957 589731924 505939171 730864650 650605010 791448001 296838721 445757003 21164586 96408751 449553561 481865597 967926349 968205078 620046778 698750581 859605524 886092060 544132996 921568780 377956999 897946697 337423361 946543999 914080422 944598940 914909321 979322745 365235338 415028573 853551237 865241277 111259266 250431996 828379312 923052888 293282490 900950803 613275154 946671520 513320392 722077163 238493703 741703840 783798501 939754192 217791036 687985628 790984149 954971867 46560778 250061247 261741219 781205384 650690929 757839500 828265414 841172822 73691094 161602072 480442576 873472981 952134056 998418561 216989057 464113016 144317198 391958158 180041405 835354602 864800616 995429205 821121675 922489979 25708220 871164357 62279639 825702478 477453843 839250521 157831123 231329447 807162183 913850356 954904491 957725678 501447045 695449422 992887993 995968223 562827643 749270676 123085637 218795087 963106278 985711980 922460121 958262379 952271540 997313071 430340672 877602244 958285410 966444134 974851803 986794159 161975022 544097601 929212872 974823709 822011472 883449248 244757014 854346301 604897719 657502925 500587611 564539044 323196763 448071941 312849114 465531081 897824389 948464298 883557397 911894634 642886541 759293056 627084689 719366630 118165726 519650893 492940460 512860507 661959367 849990381 527890829 894301383 338088610 833450921 397491437 553480410 505268313 900793672 67291166 868308799 60595539 539566351 250862376 941207501 278825475 806902710 537236358 589254113 876348453 879406741 672456088 901405178 760782679 873505584 141731604 962880320 225305035 630903026 311772487 809474137 525722033 945847466 145106062 378770076 372629205 402870144 328698411 610293606 834227822 883450919 602117924 959620511 116061441 135671502 96964633 878076948 193495951 295015922 549698496 596044847 671174909 870689660 535153305 941777407 41695107 135170833 140406022 184818454 975650160 989870423 695604332 706376080 231780015 675148296 587241435 727809836 567513354 783837501 209785329 324798854 779699663 789152585 583015979 722758796 997179237 998157020 162155887 263794383 974080434 989303518 759758450 980303587 979441916 991581981 745278009 857813307 972383329 995045381 128703860 378180204 987944494 997248433 125067616 971722573 499476262 952460146 147755278 634366178 728893045 752140804 414024018 751989174 522494480 844479295 770275949 895494744 529224578 549771562 439037818 956814887 516456799 883754032 964961533 984637585 837463436 956475090 312795247 322008340 486419376 768489453 277754575 944893554 289983821 429378423 13784534 662835744 525918126 595897451 247366111 333298889 698469396 725911360 805913555 996086654 67025157 325188497 292261532 381734241 976346191 978338805 163549562 373423732 73331869 331749540 23667520 848200058 800581130 972325090 4956421 774896138 520439799 676423695 833754239 875979731 121512091 206590324 667261530 874050311 492687679 526308720 190320919 423436255 595503659 897916528 625710265 818182078 991668910 994416231 268997414 879430765 579977804 812332054 41697654 777934009 839034344 982146652 343368764 362010553 585991719 876500559 998317518 998724239 924385583 930160949 598378882 808607133 193122449 657351731 71315909 576853085 935900163 990968520 86230489 139458430 180732663 810406290 541948971 879212660 705695098 742850467 867861681 945098259 493761922 542753673 242084232 363304039 705711528 736012228 150199873 459927047 868346391 910145789 398076739 449169917 334336908 443576514 990205457 999535426 860414964 870566564 992359718 992639699 513909866 919537880 506234528 810433412 938532659 996070335 432442699 799580922 888465834 996600798 472736939 898657179 988455977 988533625 347432526 588651545 881483308 938784025 844117298 983264464 235805253 275900760 67318633 424243873 292598360 849891615 180375885 677447006 740567227 746134295 62425770 651803273 995558467 996217752 174019362 753196409 789723387 950423025 984945176 992569361 131485807 502510567 967641422 970803694 720183614 966682449 621144506 922509954 656149815 666105769 949650031 973811027 580146887 774757914 146359016 997767162 453227738 809449568 53047736 888024082 46250052 330767687 846315673 979575590 918441413 978481798 495527990 888005622 494815807 600514079 443653647 961467626 520492990 911421982 413868899 815545670 278581356 622951521 33033879 905887289 400121387 423851079 87984902 132115872 943726744 958894947 352236092 477877736 934941770 947375191 123906750 394185950 500448411 502982858 973032843 979860160 302037960 769665639 791212011 800052309 522699416 706343638 448079334 469239804 51447416 629829655 776817907 951389569 215068061 328654281 868545068 942711815 679404021 985782200 936405702 972747986 784208439 865287167 19259744 472216580 585798331 858831464 153075056 171433482 837754891 988812515 603677566 747136204 709341028 914691165 196482552 422598782 46403647 964613574 963190696 963827801 848631698 880744185 22844339 489310155 457313027 905331790 132701313 771106123 185097914 470251136 566709956 732689449 265914136 480629140 96595579 538725830 708112474 830451762 573012376 831806035 913951341 960921289 418779055 673351878 55656696 238762263 914349925 963545523 832455041 840422353 745679823 834344564 831664405 935731709 793044706 960840326 3778296 34096297 184523269 606461687 634945498 911276214 921836149 995779180 259363993 789805142 778501913 997354953 287156467 293227588 342862197 599776791 924055061 973569287 147291847 493296856 362975456 701905056 993034805 997268990 354464917 896971350 931104909 971823205 438595221 858644140 26191612 905842762 343114500 577122050 26227827 558313999 233944465 257780909 638760188 675481711 142830615 438889419 860521281 912599742 687697196 788768931 144081227 921593144 457678664 595291928 6555451 137502457 829053374 878159056 453412693 969776020 772629305 899301183 613429106 670317290 664410343 821938480 729777542 849262451 713282231 955311033 365816106 875092076 475185164 800792287 326497057 514830455 213175406 451020508 292752182 380077070 741058524 745422863 777838636 802696224 168451603 388857664 676231547 841732688 882434843 910213161 167163913 947345519 184780827 986285423 354880006 402666301 286886846 911600215 926211017 965081859 770732737 988683793 810623584 959770211 390221254 706047330 280427800 631368585 207127289 376789345 72766851 665528366 499143068 613620649 201971831 381832085 598951365 876556064 59034382 656824395 412537573 730054419 727833796 897634442 493184557 764833674 286081162 478921278 244426869 282692809 537554695 867096509 246394658 656558089 674648258 744277913 766545586 814521154 33683790 175657546 907308928 930552341 855059201 995359865 279381703 430961541 106184967 810984614 307952647 485243670 157400008 344752707 352643840 473666885 957401561 997071864 582152824 591443636 365312942 934755291 822362230 903187783 905453852 962499723 131864887 870746252 795887546 828596303 239463377 391271242 253334400 276524921 887627970 929117990 729358785 865646427 713615720 906225241 724159181 883145548 103786061 343866938 777503513 936282144 901685513 901985712 273497743 782371953 75601668 188309810 170262452 607008655 283572634 498656799 210899454 429626562 491224819 529064199 739597492 911502422 398249299 763398337 262916337 608987076 516806464 709654823 122235852 865678134 781996197 921242666 635956209 894366627 708554737 805655058 376794204 881337747 392631637 750358044 895115683 922835516 920691574 925388948 567656259 777394100 800639210 928720183 693626949 756614243 90329029 985049158 678190405 771478982 379140862 452564773 821521816 960535965 218921717 836998998 17323686 714645209 570590157 981757034 21478734 429616211 321608730 911825434 730870294 978005474 529062737 819302924 34015179 291358442 773954798 952402104 330173660 628674404 147432194 342572157 185673357 269061637 819954751 832514135 179737179 498650049 979315175 990023153 179335149 415144042 384365245 931104504 909895808 956893696 130750024 962142659 559410808 963564240 426409794 525632469 882554928 971677921 924412938 981990724 735280247 889328571 716794987 832832250 342589750 895994715 736154388 897561026 374240102 772383078 241694465 375790190 603345060 914222554 746989905 928365315 356562663 565081122 730139427 752003865 969216736 994749446 122552576 467774081 74941020 304178230 156764471 982849074 764692980 971151367 519414979 557968715 163033914 384334167 507280660 639518676 220520358 898972058 42857432 471757539 91344300 603183518 332866521 487008754 79467124 87542215 263381193 576310717 594171604 811446678 417311606 744987810 226635522 662620679 155342451 699874019 676332619 979288806 503989860 979450540 495989088 693609759 227459301 446961447 746372026 890092876 684572585 894643236 670578222 794231701 965289845 990928195 255132689 739476337 446766055 693477054 770643692 882666482 252819456 837346659 525177465 927005642 848381160 880610944 671570802 939097250 676643077 980436154 547642067 819574832 415803685 806002677 589784138 689269844 570108891 997755960 727974456 775772939 481622456 817141704 819636522 923057824 974369385 990190537 479997304 668190027 778926038 923521682 217491110 567186953 520279259 649964251 830451028 863839560 429787588 596927707 10585050 518149192 487752538 715655518 563821811 999661897 771251684 991154378 713617576 990061683 938446518 989611140 117219812 416968622 694870298 836929216 991045256 992957498 531340770 980891325 470572437 509377305 37114532 294697378 753833259 836777027 170618390 209712274 75252370 761088136 373975949 651286895 375665920 432285690 725638847 920404829 522573599 606786676 625717373 995431424 160962873 958790715 434641084 489386919 248709495 480196778 5633789 101138233 679667376 942165417 391175015 719588003 756818450 867835895 382449135 675921148 683056077 883205575 765564369 843104798 610881321 875998214 786027147 971837755 439799198 923625572 223056407 482741558 203564800 404465313 201454212 939620604 66725606 378936548 668976035 698645040 750687998 926282492 56646131 450632129 487478041 511168271 511827859 739452977 264446054 949211605 338477964 725771140 730339924 854170917 799647164 803511214 921227787 982919590 364496011 613007153 821272685 945537033 65271112 837175160 887626267 988273192 983359604 989709343 74834721 783238998 51100364 339373432 879284400 943613315 125017901 502437678 907456844 973372428 175665919 826552961 630019459 686331331 53353816 97958633 875888883 901912322 776206365 917276673 67033158 140541658 444184981 784935617 285526583 314537043 926248991 986124913 374470594 985935996 185421972 343000484 707279919 782019005 181748652 433260197 720318636 967126137 616914650 778934645 782689436 793512413 624962526 991790795 734753649 992384359 18755461 415343471 631989819 740565734 222596631 380295378 229657212 728256650 527532472 956661380 921678331 992448617 968390106 973610930 266353291 968816091 820861802 955549701 891477024 898288639 54705678 425192390 149923482 947524197 565075630 824303050 953258878 983589838 109833589 867907599 119260533 953562141 438036487 727871742 332406665 408344106 367196654 651080846 291233020 688307388 733215974 749868139 664846568 668302086 14675576 714007504 522527707 874421761 571635663 928699254 506692852 935063554 222114565 568453516 576996359 985379452 485815500 612958012 338729642 391375434 950704664 989983582 276847637 640720412 292749153 737158892 942660189 993015365 5993888 449072296 614630608 697565620 148739871 963270036 160664624 746391284 214281680 817340313 120833208 362206624 153491848 958191044 94242613 380567933 829286656 939502283 993179984 998405834 423523234 854340152 743376038 748799525 896332021 936166894 437054184 822525068 898307742 965713667 677924333 729941730 353627251 454946387 272403698 909625731 615240287 964439258 674828895 860203188 510255579 626661375 535082116 882590454 539122722 602796357 803895448 840426387 731506735 791215600 236969091 645363488 274469417 816355387 819301730 940912868 985812476 999648693 788768693 967011220 227590774 439104067 966586293 989160385 354426554 780930616 827490363 854949389 473260616 670857495 41507021 617857951 586153409 739293606 345869817 969221409 390063155 748107875 615717787 725910012 437019435 964293460 116832287 252748629 644593567 723556069 239560800 403430868 211204221 777401612 161877898 403946744 603262270 862849774 885352830 891976953 88940552 286672682 810763398 866010178 626577714 666148561 686914400 777136095 639236703 710847622 752077359 873441326 720060993 733240232 136534658 977059522 141699503 588493677 762309494 862826370 466781806 744381102 930790241 963748686 911035152 995588706 903262490 996643141 878503664 926652778 992522657 994489705 674263804 948490814 319187391 626524945 80165241 240513302 263905296 715332978 714134948 835687435 794563268 911590287 476041243 624229501 655774466 810165732 785602410 897160012 34658421 234069067 260434388 890799960 547797305 759618166 764779012 897521906 302368276 714623640 499958059 752112655 954462738 958587384 654966267 742155160 880181898 992951607 555111415 988999508 354163067 426872251 851174559 943208112 781271222 912601106 566019002 604782791 148551619 663811453 895861296 994324262 373420466 920430126 143693715 676208528 83337728 345737592 849700878 849964355 2267506 254355182 831602354 956363754 279209407 974913978 702230965 743711242 621691044 845731340 549275263 884269114 428647066 631597623 202647276 717393608 746005878 809435300 613737816 896070818 623148403 930990720 26272498 835178981 635026830 695624543 8896192 626950506 205857927 631394039 989448388 998295463 502713638 678191745 772839972 994707468 346575315 977728334 150205793 273588805 311567398 555470484 976093634 984883746 400008767 680896859 2551862 800893209 971220837 983668880 439642861 713065291 378338052 808527592 560658222 852213653 495240783 824301008 907396222 995562275 511494479 707840644 876300993 924624903 429144483 494024737 834103576 954726888 202488676 229443381 279822875 917151927 963521982 986419510 971057002 996058210 356633870 889713497 659415815 922965972 39193788 177809520 197844389 794233097 344473778 964568642 799412000 981068095 837576662 864182407 20201515 560562578 837390457 937232945 139109926 246651248 603630993 715830106 177165627 464428313 450034586 763311901 696048936 884408444 424875780 794126483 665355200 892418806 319676612 436570814 492960353 537674207 875889315 887545068 624817982 969741073 132268523 548000031 832491355 924209138 938473653 974070652 573925527 944739563 985017391 993123602 98035651 322078814 42477897 675183924 292839667 924137198 40040073 825096355 467117877 718211816 987459041 999092357 561049863 920819236 111562196 558138509 119255441 747192100 23058860 787007199 657156025 901566353 657478300 841970716 964984593 978007612 158888186 454989753 591083385 948017129 413508635 997859438 760211421 772661548 133345953 250421981 73789372 725709248 3137368 816252973 445772952 765322921 912764759 974670267 122737131 430627323 103860918 590988284 36033171 746311009 840112799 985505168 40962242 925313346 205790107 808805344 125439071 831284893 554840490 754624287 97723273 350620798 279166068 571346144 340802245 596959391 997528733 999530902 583473921 869005367 952235432 972926850 914952407 993287202 664888335 946946547 957068739 964366716 465892259 944486881 231944174 366623338 545741568 653132090 840813801 869293437 475606868 881441749 426872796 693258354 467498852 613964261 333497792 691239500 291006745 320937016 579162986 623361786 354002638 821687435 700778263 832379947 131472647 490558889 121616436 201978570 879413177 972965823 991635431 997622540 69984299 757565874 75185727 719561515 645317860 994894727 949921877 987927163 352604587 892690087 638850811 767287935 564657474 942312491 923915336 950238013 587805325 903464897 279074677 729145570 711754332 959066709 664005305 838175744 407821417 726992508 88125013 209935247 884868895 958213183 418744027 431468101 935980273 998871150 57293471 881933693 279573117 840474852 891123742 938368432 533735590 810031594 656213763 857718458 667135368 869792652 474604622 504948305 445558598 573467085 280325077 621492163 925696811 930742386 80426258 586852850 411889194 859377961 344264998 453634653 800577226 939959465 887005884 928286169 905097773 979993641 668901600 957538103 708085110 723172905 2879663 908911427 646865138 920492379 364959583 496648176 99121770 942850487 765644129 869663119 859752889 959004822 402947685 825019561 106063967 689023802 784699442 881926502 332928127 761547412 680493973 782132350 320625959 359376740 522687390 828869283 449608634 682070855 394381487 645194978 654146293 822293877 343584640 490806834 796494062 999314057 831590953 933904380 911126416 977269635 267553134 833730198 573989481 756232635 254556943 351609533 666927270 892941172 538952901 993517662 51050681 958369614 126091301 897624332 506094876 559380896 989622780 989991909 719428086 744071044 45449213 240492410 73746960 565826629 380183917 396214694 640675880 928057286 992066287 994756572 62315716 678482680 514356212 833983366 796823458 913040983 797208100 875314745 36025657 671621857 741359253 978299491 886529140 976756255 821798663 872478398 417292874 930409627 997382394 997867574 469673279 735290328 36944495 463383246 534619175 984815798 151026961 481982727 240116010 271747748 479974499 560461747 46249539 430005165 892069385 974483196 606760413 737580382 59056193 178759289 99807899 549448784 254384981 704148616 843576481 963643057 971264277 979461160 85470316 838759025 819139408 932214470 204424591 557158514 226242646 916879788 953047888 953270293 832565248 919928228 112835338 849737955 181616926 203997358 303001180 590626664 718878393 844743672 142352009 784302702 356385848 945610990 270144727 943880701 19107501 605515034 155411787 181696015 437393423 487300561 528519187 610662340 433723034 639156406 269654179 323636301 117370088 223811760 686178560 925542493 691887391 921554692 804484434 974691273 105675002 646766531 951239002 968512624 127954708 253046879 779824418 842945882 410691408 741816257 746531624 887021670 458818830 982442683 306080196 921061714 244054479 821356956 464002005 810153179 995101979 999796526 818507589 989134528 271092124 316445441 966495404 975031751 776030692 990494046 630977176 957045245 986806076 997042498 555024411 882775305 658357242 918882116 601839890 637489183 35479532 300463948 77196490 446022480 998268476 998435456 119492551 850896953 331178786 456668800 185140543 327228367 244180852 247847683 839722368 903121354 489682760 559331788 57284232 346586219 779465180 912243442 153027877 685719708 465001579 602039015 205463625 571907298 501945486 943883666 714749313 750711128 223369892 472474477 665805147 734708156 322538007 546002445 346566640 520545244 883091604 981141350 457794022 793340812 188469471 839825408 950266347 972019075 738110051 822933863 880863825 924689514 64825311 859507555 70116385 686711243 920768541 988124620 285262203 617920544 547997423 721680487 40315792 218518258 583294571 729731128 365922369 906562233 645235419 829626934 861296985 972724256 542889250 638894902 411645114 937391189 576540305 877875922 895976821 929717422 689771175 931873730 226603917 606227134 339046992 962551070 786636372 997711895 889546221 962946403 704243560 954074980 390203637 470915940 898668149 984581494 255430071 907470502 712624855 776136372 495092375 840310000 342408490 547535950 585653460 794575231 713684425 978304999 362984169 487628559 119512367 227239786 262801549 596945422 560300755 654378170 724018847 972664290 780051978 955652677 837770082 901328269 146018526 341818667 673560948 913818755 234109698 235717283 582255479 761295403 451779848 613396407 541414119 580302041 455310159 895855580 248876844 584470401 829075477 842562108 841939647 904651477 331548201 983011367 262177002 274241866 278610139 283451434 769438385 907225314 528064233 547693194 562880596 636577528 638390981 946877937 247613500 733825172 353694093 885144133 604687062 796400067 637814457 763177378 936567937 976428077 813823969 936563781 82705810 139941625 371815334 963718948 428214226 606409804 656040026 963712511 119536044 791623115 868574383 887794267 323981972 451827697 837276301 925641392 809315480 919221479 176033861 789885435 203507682 478716700 906756393 949875538 119149565 830081237 105180934 455770643 768244559 775367526 889774896 894216220 931631578 936499322 520426087 823999020 765818462 768035215 761029270 823857092 414826928 572378636 217144166 839712832 706030993 946335409 894709015 993033682 103837143 691418664 270441329 431468799 354238934 962438137 737175425 834282263 579446750 797464097 760500137 893791890 938307671 987750968 503271193 794786157 543808926 839675769 960952135 986124025 122137670 719539726 630744791 757702589 633848415 682990253 263347809 312274044 950151880 983197998 39543709 693959816 147373644 579656778 688785406 759844399 835956320 998194623 941251668 976666652 13626981 296576879 731768379 839914383 490575652 806933952 851384391 998185275 36700422 932299004 471092385 616668525 239199947 449374121 31339267 756918215 655936952 702429991 907067447 933472507 335492966 667145586 986617573 990882321 209992062 901441184 23054457 747108908 989227695 991521119 951167770 996582601 883378611 996616600 733290494 738827458 596420149 873866213 814689145 997950816 266665103 636605047 743624079 858554983 528108269 560910678 380818839 893219379 247017396 736539139 986006369 996697183 357021555 768753797 131216402 202770429 72119010 259310677 48775190 486490605 248909220 284308033 384600000 720151148 381717015 818285159 884798033 960264832 352693801 401592014 600446452 771744096 599559671 778737067 349108579 844879970 191190129 349005664 754671476 928968304 849982609 963004355 937713919 965530072 237341569 878686195 693155106 944356195 504055317 856889634 442737295 997882037 120612988 410652560 390735017 542015228 165227017 565382873 125890464 364737728 956129957 961377318 577527324 922377494 665627217 923214418 257081814 655964303 235721484 765624156 365129467 912252986 471075448 825606390 978488024 999135602 546313691 572246089 945328375 946816520 342800597 682177749 180960298 588612655 23516658 128250961 836239847 959054777 115152255 596019105 156669740 214368990 388844028 911510026 630118451 716610394 207147097 650567026 443022886 593036116 523380882 914347505 600244471 634348050 640426172 755435563 328198596 661191958 445875288 462999473 311927656 569847778 365780401 852776422 591142013 630737927 891447024 930178823 375317887 442974237 791474850 852691425 573795490 990473207 407390959 926240258 532845692 681800783 92059005 560479830 947515864 958333663 3935279 977852449 495387511 845113147 953899132 954536057 502338662 853375434 833567878 885839821 130446672 845276300 18361743 148152080 736986915 916791821 274769259 435742781 730103309 987286379 459873624 876900490 77927442 994797277 756685268 908200961 645631163 780996027 425101321 996917841 624806976 733913209 929976779 934643782 475670466 989460700 273899676 687682909 612662373 722870568 622364924 643699806 703870736 970440486 469227968 975705197 3936405 923935074 283000959 917506940 391779020 479817070 228473041 701856107 871666810 901577164 277444842 507530967 771105035 892631354 508638260 822689436 804816517 969883299 581492645 636590567 975067943 995463139 973295733 984583247 371689282 751349394 824612299 893317201 800064700 856524078 449102595 893346224 85935421 738358297 542384041 783110955 755378905 960795921 411706533 665972558 943050260 949733227 142582495 964372140 872690364 977731308 947124063 997148640 33352901 568096539 337326272 595165206 897177063 950880183 358079799 685932925 944173190 989971019 537115811 893398334 99568365 812777921 945613813 974330058 849775343 994825737 125763838 445071938 69884229 472057422 18236730 262010704 878428261 953650175 605993811 844315105 287367353 941636812 524445175 948808310 380211770 969794290 630315933 843819451 421921105 568093306 704016130 804770979 356263163 522893655 535437548 653664279 615639199 838515405 43405198 739797640 355497956 369595891 612278051 964051996 381427652 536349184 171414169 422340904 649599787 852882274 827222996 907873067 271625774 449206998 838606675 856267958 693372096 714850531 330047837 438984250 388361173 699842123 712772231 821774006 285015985 445515962 850534500 882992498 847064650 987262545 120490990 312315401 672940640 995887251 755009718 924882985 614165232 987775001 495599447 942859961 545211294 845632627 101012757 174150658 653232180 897257523 384813255 717649556 58996397 604067207 460268675 684854271 267583938 280485246 332491685 484577722 448644816 637277775 896783428 954146101 647761820 984639245 675598866 867112143 433875871 439039141 925581983 996698510 479940985 950727099 174936472 680877205 334332118 364283551 527552953 929371066 372700 520074274 635034111 758539209 629851935 701420817 155090549 468578488 161317740 367992699 561083952 992339659 49360904 986831760 544406253 899203845 31018743 439299545 517429389 783570545 182031030 291126187 734988400 968268877 25366105 643575013 949909651 980669584 618048038 882966739 502314371 771801771 910492692 918250381 958961063 969440724 134214676 590943705 890555862 896980840 624106495 779828174 151983987 373233984 904941215 983904958 601446985 715048101 714944933 986898012 490688789 645450182 372206622 434990539 514280630 841794367 77451772 667254655 810628402 830371634 417131131 773765362 547356417 897070559 98601152 214208302 73550880 221465806 956245600 973672915 953266739 985160230 371613858 498933016 870900999 907463229 893194123 960565423 451264643 944717194 468861332 773899025 503922816 639602928 879320750 973903257 111132952 852677704 284020302 754420680 610739693 948217938 674734635 957815053 827044628 903014833 437762937 585442146 164335199 542859868 997655131 997899541 139041495 654612423 419099284 540365744 728758658 908663783 94951884 718724179 595848955 720261901 84559607 307479298 405514780 719689497 166505425 725900378 35085922 92184073 421798655 861772652 870555899 907719298 665288269 864263744 899208391 960683453 160454279 954898769 90517955 659199519 752002955 760363722 295624024 891175226 723053230 802103782 750795939 930829372 680490741 995097024 621509993 698534715 588618171 726623923 33918487 831256581 335952136 799238335 158842855 490336073 211420933 655359529 817543979 941233054 568148576 772265861 58229690 436276071 671537737 864430041 309936745 930688489 670145934 932919310 406352460 504934472 262389570 559737325 300829783 949628698 957289889 959624649 188578907 964209646 972524096 982591399 112229584 834447091 518292565 653526286 536046042 874785859 423052364 970396730 365516599 374119243 437973775 829431982 667939521 895694842 629160229 874485228 578374224 963155904 673973487 767517126 350521514 834189833 872142686 997202939 303835965 971969847 410299212 420966485 584180845 945136221 76044058 249335606 340769538 941467993 628461773 727521984 293506183 357096811 686558807 733416216 219350698 438541931 712686168 953676497 910787806 950661214 962276676 974625817 817814837 970934027 108966112 450690118 200064583 697633091 981666026 985410356 277287853 727778319 635579141 809004840 814379746 902732449 350872785 822472661 558870436 747867284 981244827 985765014 228055305 804361650 916202029 949573886 821901118 954319426 556260251 709459496 32738749 426744276 919310952 960574543 598068385 908812550 142042318 763060356 385953246 866475845 674072414 777528523 304959711 510361909 576225456 633335424 976022423 976304353 292437416 909724836 289380471 931884800 812397831 881728523 895891287 953224401 720573391 727619584 623573425 719019798 844178584 943821135 715765045 885948763 321704223 597958230 898660359 941465435 851272417 870133461 704918418 876341168 109658197 513279452 240420952 544172549 79032080 842355004 59668281 524568657 976365790 999177692 854876204 938581620 361059206 372083502 221175570 906702349 237436928 844328589 176909655 933531936 966574199 987480789 391021332 793801689 953370901 994015197 428869547 709532189 528698727 899603954 606169169 925747712 572669844 847316092 606359135 875149150 613223124 786922810 107387627 661003309 677731559 830900185 589326696 821617777 421229092 487261320 254972120 884460170 250338293 721523646 36528128 946453692 504409645 727465891 544955151 560014747 733163457 845750004 561227277 635333364 700871469 948040406 185080200 787512733 788897166 907951051 472795038 473432236 61313318 308488083 141867612 833657093 390322093 618942462 547579888 604383597 592240296 829222575 224359530 415161817 539354641 869948300 640260542 973897162 745935614 846874580 512503513 807728644 188236016 878296401 189502277 757333750 735948216 909777320 778225737 915765031 138561936 269373721 366343853 392897031 625859807 736909967 789553292 895899651 860881314 887636071 376141691 839176677 120891816 627481195 739503306 813856581 825171250 982868076 207014657 239859388 480940880 872192448 817059969 898308717 814396030 948106266 379619304 431456165 165447621 753099459 711136441 846995749 525178637 987201119 816346404 934333030 296920315 641213968 386375118 825534019 910720869 933021269 393308404 495662008 463770926 926169313 641095691 907047594 39913569 684195575 126708985 413018336 540828875 586854764 195847077 499052521 428589448 639562711 707765774 748105773 109571941 666994766 391787388 883644744 652724038 794329340 276791398 735001696 437524816 749941608 562514005 634285770 479772160 842948025 723872759 909984923 321031793 458735037 576007739 710007823 837218651 870551438 130541173 219045862 642716947 911766989 763815810 825454228 66950317 969662637 401236612 486188194 319989141 768653897 490922065 653687444 16499402 92578150 523200454 593964676 17810368 341558974 244588290 385183824 109574699 396077888 15675217 981886720 458388773 532018807 791291691 928107771 698457889 886701641 26251798 285790672 511809131 890150444 689215749 710966395 170392200 467312416 26262055 384788141 563615204 784762286 66713842 721787163 161406933 862697367 331402741 661180149 829670930 985013096 414656042 529263252 782344022 911842510 727363026 960012227 41547256 906990580 94693390 152975922 352946009 534546145 691381779 880337025 888733199 891981966 610514020 865381027 899863777 906969419 559038323 583728600 600925087 668574035 247572179 789596292 349429883 966539915 210093925 548894632 40356906 919654611 98757958 941547937 673474481 678376693 370480691 757246978 610284782 678010864 503097324 880705200 719446367 813203613 996380585 997691340 58241522 899446355 225373596 999677934 358946679 993621984 983572297 985462699 772037528 789646314 621018347 863442727 882412452 920285642 184810014 815617724 499660038 575122436 489792432 804453289 194424315 298270576 127183792 958022845 498183191 950004035 131382883 678292541 319685331 518841834 956727480 965961641 53128947 824071383 53904154 276782396 241573233 478440929 323449313 333842291 518744281 672065767 420102499 973753002 960377826 985701037 501360783 797584860 95350808 180802100 759627701 968653763 804966493 975090562 7001350 129253541 823251777 912088343 861564145 922834568 891949324 906515845 402235361 523413236 844125713 985480030 330564412 467189082 833292507 888123876 639230262 777402151 838793689 860002670 740062808 868137327 586024633 867271471 623989820 788476404 723891921 861820211 644002107 730322345 523939074 834393095 234407084 628040206 813591993 864065062 478192135 485977807 53375402 922006764 302575366 670146074 871929403 912459319 733587140 839930517 887631997 918784348 259892846 436563207 795500520 975786756 129960339 852688383 677211385 685126802 295369755 635681021 933146253 986817682 953433258 962255293 538863872 650584047 774098209 814656553 847074858 876310338 424454088 665840944 741982182 938783323 314795046 608031418 923773708 925283550 126781852 136963610 199938622 615378986 625054011 772321742 450529498 957533051 298756544 536550156 52143139 440943507 456997316 755416788 575659704 994918940 934503319 955614544 247428993 685227924 832380082 896138176 20410318 508501358 859931165 870561460 456701856 790152028 236382179 486613783 994269793 996255004 948189789 997818462 474489637 703189122 280974850 398674973 490316129 845727000 227697574 272823480 336966948 682907706 300850897 587327698 85286640 977333732 773558531 975175616 826075617 891731841 312269037 948811123 478349536 822738095 504537785 978147510 854854571 868369051 180142355 259211717 702539374 810833573 293988181 781314789 632249208 817619670 381790229 547657868 974057895 975336975 903525677 943687226 513117310 947675211 220292618 616077401 421577524 957168152 89331896 499031668 287005237 438650251 847732467 951150196 682639906 743508570 278082514 501811329 88333860 254268622 230724148 507703468 151541692 810241730 262290871 932260905 15082441 899503968 316965374 890014736 797467320 873820126 900034055 963855429 571992502 641074812 667151490 774328049 685974581 906206501 673996773 977064569 718538201 862382564 123967950 665162877 920945813 959573116 880324707 949072772 731191037 908101533 599267314 913267105 70545394 237512526 877989335 945196972 324420309 494668141 628297528 718134708 654654592 956840691 241494773 313551999 177376679 398089978 383736222 733567091 625050789 722471341 30127028 83462538 450919422 996441647 719491008 986127711 158715730 441537967 190057879 733974822 938157887 993384355 512536979 566672534 616889968 846404348 83340380 297752744 664619330 858819559 832323567 943694017 658279971 800494210 396897240 806121294 160665573 250935331 884744321 923653785 789869361 877454673 57061497 462013211 643749658 836069319 31448988 404990618 509090911 709841393 546180378 747963468 227703931 994442128 444550276 887515347 157312696 344272839 387383208 495251862 237382113 903145038 243739239 496773957 516775521 916267851 916743588 918106873 145120620 288282667 799612252 989948601 71786779 273978456 636249091 871929878 231994989 649194697 527971699 949187393 461282686 703148520 663625759 744435895 589883995 874061667 905556786 991096128 707496769 896223155 175333741 353284151 902903914 906784552 533989250 645420435 450553681 708411196 532472382 700307607 714722765 997657249 622718416 983678918 388287879 751852901 706768011 892352270 388174710 901732505 22716488 932394583 414345325 550602141 621038922 642458491 207497048 401616596 270728289 510774253 988520500 995261370 903054625 989598389 239708614 736719045 163358634 850550880 331193605 685154120 698775639 847910328 812662009 866318210 478037523 595979921 701092221 740697230 640518872 832092325 872646653 951509009 492220754 503817588 836194684 927156298 183257509 856519155 891224124 919877241 144068879 819306706 893920251 937801475 111530214 282195915 258041280 761896090 721213343 951911034 160859814 335028563 68140160 975399958 716686738 989399601 534176240 778080057 135315367 603274081 396994047 640144945 536109381 925425113 482312151 769108742 684519807 971705498 436421599 938885110 832087015 881543873 362580429 736560872 617680376 939801867 159286068 449360879 793252360 903788701 37092527 917312588 112617297 143781826 598079180 759325401 135828594 654675980 966061283 967725461 352811387 701263461 652220773 688102563 471861969 496340224 841825275 971114568 744166450 816468728 76134817 608777479 675474465 823117517 69185729 481115636 532545898 637513349 979805487 988053442 893396101 964407021 661108458 815834029 687307600 877742398 43515106 729027262 675090536 782982723 400036598 650073099 817735751 868842769 983741430 986303759 190041478 950825611 831485375 969183209 523396571 963734348 157456058 772476729 717584560 758493109 578243592 692112904 316367008 479498736 895012189 980892704 319639498 742892518 307896782 322391545 798089039 877091219 297620574 752951991 251766865 335943211 935641492 945455861 692881206 983089260 871993590 937034048 623189586 697962112 923199138 959610000 897353609 943672057 316996451 529932726 58504998 514534450 322591311 926134552 85160245 796365238 368841775 746503494 320131597 638858673 817602537 946417176 803401429 868662011 413988331 654193644 59036830 539839835 706618290 960379915 712537704 975400157 395211838 627669428 5751986 373966948 607144244 637532979 849489707 900550436 45218679 838404827 851838452 860835659 828065658 979424004 342739084 714056923 596033089 912296349 755304118 787123862 828442078 864230243 592975164 924470491 218740810 840842932 960701030 973237447 743301230 835921361 562522038 714341525 511432825 832779817 645984611 796284346 714832674 933932628 907544113 995427113 83477743 848397186 812422143 868346843 10906702 200659543 922070285 953295184 939023534 980052197 93886450 780659874 824246590 967478361 907837955 942408055 973829456 987966596 101313493 179026802 263155886 290615621 695071379 884336272 237669674 502172031 817751835 847190962 238573057 916439807 859171968 936336047 524708900 808177282 539597745 736130837 692525104 913278129 616081409 730853959 914140358 998572511 386601073 404109865 671892620 842223665 557378743 674147671 845306342 904005752 970316104 993253402 120708106 601132290 233492325 405988068 737584548 833379948 817420009 957084331 779993488 843269505 336437978 494347804 710270694 911355822 33471153 280044728 719303844 785150829 659204433 847722876 384540832 736500174 690863545 843342072 649351934 965949171 729085208 880898869 685429083 691504892 799782264 991781109 802424898 823687622 679561293 729985910 22637742 518854365 139023059 539368021 659827651 790647777 656732040 862930583 429200326 998536199 749548341 885947665 689385552 920588237 581985900 978179281 476542813 624409921 467822878 793867339 115424678 614898799 73640364 921942410 71990900 635841666 21064043 25467905 568518867 586775412 753149558 869647375 926145275 983293655 588535249 710901093 804563355 852820280 249729143 270177580 273008004 718548333 936344203 994941150 444499970 785718626 115598364 910446070 706212009 906574744 480190551 782300100 79800529 638770693 603774442 673338388 959870548 962621364 528242234 622364997 943020809 956984993 996965181 997306449 190452386 613679111 382323989 484725374 72747931 538715308 671862484 944106723 498970772 781718275 695173655 698118496 877057216 883995614 903387493 940616008 936941198 954745131 636998530 801661620 641796673 709066871 90675887 102291835 167462775 971832900 363279126 569599507 822934272 831940731 497782079 869077183 769701706 940749548 839244982 969973519 375477167 714626763 22518452 827205723 771635965 914405903 269049168 415573238 473025396 516865897 412104548 615953316 263071583 265441604 610364134 918165412 651760592 885173203 281912025 555578345 144925515 796821628 282516206 990197938 641798111 977223592 554197019 980290827 400350458 747478746 993252807 995513416 408098229 652017017 224355077 724477849 915369427 967058890 530157123 965329853 512885573 679621216 234780261 363751208 397108855 606972172 926257943 953597746 475494006 593612020 979101110 997926624 679123829 832933240 643221199 658054826 598649299 606064011 106563523 703367217 615366343 726844897 479056399 914041512 526685751 698329641 400247695 709790770 938550177 948073292 747716939 789881064 577767995 847514813 696302013 834009502 513616844 633597312 306906546 312530295 932606087 974696056 983066274 988294168 424091913 683267008 456014525 574078163 197793848 796934616 215215020 674051610 224622178 316311486 529487331 665049736 72648996 681771199 110728439 132754751 902784519 972003011 900290149 995085479 32397733 842008833 495739842 694988209 745168002 947039615 92830843 382312524 199678784 554527579 288863560 763772849 94955406 197167953 567600447 991984950 892494568 909024197 640265699 883810415 134445404 521894643 79204244 365137710 492429948 626709593 137763138 766712841 963456317 985710118 269534777 953785249 648306206 875742268 28131904 912554772 117988002 243158592 364885916 727814917 494738602 915032284 116745500 735431935 150885216 576613496 430644865 749783987 217318500 222037350 304033349 349908559 142777554 208947168 71788378 520491418 41166207 856652595 588190869 665461764 129358489 873890551 921531653 962316310 927974636 959958405 889300280 945570105 75981949 608148777 371174754 467364140 202891875 526708521 574415527 956868069 323101524 740809213 190387951 825569008 410730877 635014535 28500417 473680122 774596133 835828801 694739404 724796445 974958983 988612396 348830040 983459652 958235868 969031120 209260301 755543017 340057403 677965403 390090943 934529330 209806801 773177366 47661493 442875867 243453492 552149581 458977696 895130080 445795192 489489677 203797574 272845860 960878775 978403834 380505861 745274991 731950168 899693226 568448943 755011033 249564447 663092742 389339222 556335109 371310574 652925334 26360965 848856079 192499495 373314859 181887641 732293299 949134586 970195219 762945201 820203947 782007918 812237671 716795870 925686596 529541233 928709772 683102300 966954892 558497524 757600052 729745107 762706942 132556863 173522594 447126327 895298993 138264324 930557563 245167533 799335396 347215814 707003872 922143611 923710164 412140855 871969691 244209791 580949098 564386809 576167927 960395067 975248558 317958296 599273683 796221739 999031869 597048914 950724196 50210067 65094968 750519480 888384586 74463070 455972316 37610974 287086803 627474475 642164871 449186220 869428365 567753403 900391335 656336886 825553387 669051895 774435029 659356706 835419274 165107940 903887166 644341857 903209881 420011369 585544605 578383692 849819570 999889689 999919785 128392096 541227214 38259311 893360902 211948094 587582306 557439354 561963349 472100888 835667589 832106697 923215094 829214007 949721488 362820612 869666123 644094146 981604489 662306273 870729905 916421401 997919923 995598290 996020519 619293004 877619333 277556590 280476174 277250453 383823894 412372835 465260699 481882659 958160367 641014217 844155284 926082149 987520795 795388998 997876954 819272789 853433264 233842972 969867119 250989002 530024963 69359218 150595400 978630651 989255701 165775691 280936291 843864920 930321915 110391257 228180874 456320114 725907142 453837314 651367896 965620664 992731208 451098639 568549347 892292804 964544656 488406634 538977968 965327475 978133463 792080033 962484405 756531909 887719875 797705188 940614277 740947562 917582460 800664635 994128749 838730735 908975346 489193230 838091297 779217808 938699549 969778593 983069689 623625608 930455119 502665382 817738482 40311765 660058298 377147127 682297930 195856651 774526999 538438048 973915297 915897037 985082815 420670852 485206394 65768878 880618061 7704002 460383951 257017267 993382292 987253084 993761616 593219379 640236544 981279147 990879468 289062841 888035536 964520722 988912177 245030995 939596338 330694347 978561870 368634714 634696761 926362594 967873392 853661285 956237441 201165445 721962711 686093335 695249095 111161567 300972554 567314279 789076573 789061359 872486468 980005411 997324323 552654808 589945654 45785875 157921724 566556349 895996005 273122833 513218115 220704082 831147409 487073176 656136415 354048974 609037208 961091753 971607458 422479719 915115878 434524626 907791891 840506625 900354976 114575207 630405472 86656479 631510614 815802599 865477818 97767615 239251078 637976439 842587249 10472668 161411153 429841442 570101396 407809387 676390776 321631298 856381469 673145786 793677488 24600392 453865770 323290530 818193547 475426229 734486793 947618324 979674590 226224877 369255058 449934245 729214640 939927594 955523986 845549455 904923675 940627260 953855422 978232410 984074720 668616533 855653405 6623495 846384955 556083312 569286882 140203510 200617047 957774180 985985415 918826551 930912727 133147135 647840760 353710179 507472588 823887850 862266382 779927546 799399506 110131406 953517815 200887498 819023284 660076978 976727028 528200977 733159637 299413789 824574647 639903051 863366491 904259564 970601203 392165771 467338914 825225596 954502477 619334633 692116760 55146964 944933534 417728376 597511197 184336713 222526215 682357750 872952159 453409421 861589472 559391283 839896078 163614629 517447664 189264438 622840740 20879215 325772477 472128902 546642770 371453528 947704051 921066172 990117701 815636156 889080770 643548906 986466196 130619491 364989251 980145664 989327778 807693506 983906419 691687879 764317256 379225009 596036312 960617022 987388411 212636470 426607382 672187962 990945585 700101120 786992878 778525891 897193294 666552063 715597824 954477183 961843241 585360373 657406119 741976233 995214704 292274702 762171514 117036325 999893197 715153379 860733180 300681387 897504259 960959250 987879021 122438323 194587222 962040868 975097975 622179599 857441644 855703295 936824803 885448087 958557739 160672641 738136576 360088499 477423847 442395324 997683379 553287502 640495530 463663822 809319699 288766033 568932284 705855132 930999538 337990075 873621089 308298404 673778500 128760011 689611044 539411598 750687468 714543082 929739205 510836836 543743562 938365084 992087830 126010766 522066776 164835242 730447216 400916225 810789086 393904266 542759855 135497629 528205996 223833766 795002450 335088282 829112438 599817658 884669101 788149060 976130079 574101816 835933082 586028597 818217136 53142567 711272426 816341434 923602539 494853827 663801306 606971293 647047349 321302179 909849576 539809537 984232067 125724421 841014709 739925117 998272341 848375808 954790839 410016566 946424702 948441972 992076012 59584330 726870440 896979312 910748020 563908782 948854474 784705582 938437059 722642155 845632398 353350468 830704827 956903377 964292943 86953028 861231957 239034710 571103000 986708394 988871644 470619903 839459794 785484333 927466994 40026727 948047754 271920403 352176896 335824849 376182421 192887455 987446580 831866834 833395919 40151496 422018895 440642983 690732459 410040670 762258118 945780654 973359725 190689525 562770346 136982666 680258625 873138395 954250522 710091651 923831031 964268909 999232077 789016035 965658388 146613053 987255683 137832765 352347916 519189146 568932826 289475497 550235273 538284217 933223345 396619949 418535798 509873767 514200992 94533677 515609521 538469987 926202420 611392897 846062986 468095313 842963689 574223608 672310025 42667777 101625769 412571533 840033787 32750556 772617778 165892970 492859466 642601933 964125668 363792887 430377686 604671550 805629175 435820927 770502396 585755794 890060639 399577517 731857696 874818789 899557913 908899037 989227718 303024148 886520035 331150716 646001556 996682202 997923580 548383499 994157533 625563008 836973141 139547634 449720319 216637533 286732913 150906312 225459314 652172947 867304305 45562272 866756483 594396689 636351677 420735811 975978685 914140925 968789562 151449741 587231808 687241974 974793624 30926305 817469088 424639556 609866331 855030776 971158431 555402219 620678865 829577039 892707942 724902241 985634388 595875076 970032060 873438083 893419499 346433429 528199875 268190477 909599962 806451005 876437775 781861819 965006275 880770365 960165532 192176385 320685340 962954571 986930828 932287321 979958154 182494138 524666591 87147116 259195414 888260291 995108988 857467299 905291301 340772570 367406789 776175652 782824705 760892185 878271448 862185071 988668004 616745151 747476786 854837105 901145296 58633154 496611715 131590955 245549143 890823609 901629224 529348122 546472290 998182645 998272954 157475829 494268448 448211435 759386819 818391382 916699904 208731853 837392931 372113083 655435383 435874009 553100809 136714865 354683296 701826795 931820680 713423287 855888080 356645148 409669077 541408540 963331892 175671893 537537079 902240348 927625370 588168649 777649717 645856583 682801152 769993824 812286669 451711783 983885598 726650334 875421482 710388130 865054201 301219661 901668061 565386389 650285778 113192477 877615275 552495549 859565453 190625830 488584715 367102263 404098733 47537953 216109916 689100673 802053648 261097795 644032356 109979973 589580590 995340810 998823884 40938592 411343517 610590873 826375758 970402793 994265198 100087230 211321458 354637368 596542147 296176275 565750488 173022920 657963061 514075397 652330663 953373496 981331077 850871535 902943776 882757149 955193645 106378568 134051498 704478020 814244813 960346379 969217170 44470505 108657209 426365288 882713408 768654886 831030644 921148274 993193097 561545322 907580585 270060340 564716609 721716778 743694030 201481290 505568956 27304944 724969865 534519443 684725632 31678640 66970073 959311554 961655065 331688332 683204984 575684434 863561640 132636122 551246276 417486776 655751700 516154498 587498291 231145537 769626089 677009305 906857139 434773505 945777628 130160246 882684389 398650913 952087109 4132438 670090619 649662043 941553780 182535525 708710031 613778398 613800335 605579591 714794336 233113861 672922931 192750605 306145959 741213180 955376213 364191444 672290454 924483997 981522350 679358680 876482359 45309902 584572629 165179444 625697502 802362646 853609037 446781665 883476038 516706231 809965071 855141332 986681690 313097395 385900771 444949014 830550375 20266784 65472384 571394259 598461838 510791392 963202834 733871324 782429233 758719534 956511565 968969517 978398993 114005578 483634765 163670449 195940814 727540903 874759189 239721709 667754387 137578908 487349590 647414512 740101680 200997848 746562148 47103268 777122354 277126678 564178643 836650496 948926831 660054846 914075254 880546727 933156195 999287546 999319744 567214611 924422450 347529091 407017427 112179168 175680957 390845918 878745791 929118307 937658245 810121077 860126352 112978315 289211905 576168985 611861380 813196722 902941095 25384489 884381806 818240398 911144327 704896637 876615656 61844783 972593596 539049480 578868648 34699111 175333126 651675973 747931085 965032684 966052403 983727143 991918735 523672268 850847972 881096312 951147883 846105107 962477580 477205113 783071472 877724695 929516728 193441286 891328427 277700346 836067475 339722051 360796926 974923269 986662424 743201349 869265531 785605961 944284900 782314098 851397792 307214061 380495502 468683925 684764421 137673399 407479695 36477326 924328224 29386277 189074393 23190290 902470287 552221543 606074419 259923879 536757438 520853289 805223520 241261046 701682522 633087189 993649887 701032655 716994932 718570710 875419788 213089696 407728506 485043445 743417959 924257275 967301275 407028389 774155079 189612066 764060006 147257306 196625161 852072883 911269113 128717891 982955319 218937740 420880830 704052771 913784596 482611084 739348585 184106660 494938857 83429089 375043072 228942598 526106379 742077888 836756562 226741973 663779489 433674060 920018183 223872410 721989920 327962343 812579489 797633993 859148378 791883753 818080799 315286033 353443792 814869323 935541775 764520110 788385973 975635389 998323163 345974272 747529210 318318235 864934657 806369488 973678622 997790260 999585420 481486212 612127027 364774250 635281600 347103395 403609052 926643096 955170145 769612853 850076359 855078006 875427199 920719825 932043904 257736413 983413898 742632331 949875520 326718465 878264044 139747866 173847731 549401018 604042179 721798665 939354845 828908996 917109992 150004297 189509085 959179641 969525366 259121315 783130977 965876920 988025175 62118811 366627596 536374622 619253013 475052538 859548768 874548322 993199912 119121562 804362075 549279112 972035348 296237659 309208342 326970559 762948175 855355460 923905382 681174601 944045452 996583876 996645118 555063574 790106134 139885026 520899386 610179805 737588282 122625469 819177234 47661648 151671366 367300257 465414274 72877759 680125013 972064659 998377707 565415626 972113598 698766169 790262870 180710193 419845346 213526001 848252218 579154399 977953072 705017923 804163696 119828113 480006799 694460443 881973315 81336517 762138163 241092107 718575542 234727933 344542688 727386414 984114025 752562147 790291526 784047099 837864777 995154026 996044930 380618446 419060410 129819619 434522631 828968285 837420836 368339447 790243506 374246624 956803921 938295609 954557973 332056480 456135561 398927592 730562889 293264582 848138635 824985418 844686258 876463080 928823818 252917044 754216854 25572706 430924847 201300724 842630274 116500150 424834775 658078214 723977956 15708590 322861043 543033237 797425846 884378130 977725703 693296282 800336382 704480485 961503859 834602171 984702167 189868926 511261913 311097173 439234834 952710310 962038699 198864639 427867249 182999156 988329582 595324421 869858181 975132215 979237712 410027156 486778617 642331464 859745454 799314444 914113258 129336307 848321565 244623107 412798872 601958549 714048889 531075916 673444677 311794156 535544063 691752722 896413134 298190913 567824795 551685115 950962799 293976534 984494187 446204766 842273672 885226942 973659621 641163998 887421635 977963616 985352192 444375000 557474956 114459714 380500161 894766484 989487838 566896231 694444875 790293636 851723462 1146864 293151309 913617961 917117926 425525671 633823704 865952571 944067954 828304408 833883676 733062106 983985043 325129670 886369128 91007439 990356257 549154049 716757961 427210056 433455285 534929742 761550221 749668204 776788620 938811823 942740510 524276346 642186159 949510951 950512852 949591888 967227239 443552266 454303372 422767253 818599124 442254134 748745985 413438075 673184620 302895302 722073894 166979368 659327351 566658215 977791437 208878179 255357310 355362973 763189690 806969033 854687107 681851055 862239641 474428986 549849157 599260872 649394600 920589499 997552200 445768337 781275304 99449525 215035053 821790744 956570278 923897466 992844459 158318908 360441156 650122215 866146962 325809900 715817414 71961344 388258835 803431286 899044614 722364442 985936969 975615892 995743987 999922492 999945358 379114742 524497245 542305531 733156796 111098039 325864127 946801290 993749630 79203028 958457612 927579706 985701164 255076481 482079076 685573663 698121539 459091705 710651951 968795371 995965646 713779718 929101155 111886947 571038210 986973315 993909959 859675391 864004447 578864831 622173457 553554757 826602740 105559880 621661489 511084192 955192711 486796956 914197221 753224029 773038275 636380546 669189422 659145461 911368990 527780782 867051360 834500524 921985500 428167989 630584675 112790586 707107933 755928170 878917670 360866340 813015621 250920543 694542129 891132952 911389160 453240980 993734423 836395522 998315192 914738592 975369806 256317502 271446448 772305995 965052395 367661391 937868956 516105805 697924775 409539639 625397225 517202622 872388385 809591021 988770666 605724634 902180701 499314988 524087676 17185126 498528807 454662970 553799999 671540823 914681397 720974603 797861040 131421407 921979631 25064416 967743798 526622455 587880791 931383521 947073852 970441907 975860799 629075970 978212339 908703908 969008973 161395083 450839840 329275301 427304810 855084195 857877600 784524545 811820488 455370497 618684715 270448486 636446909 107122810 965028448 513315219 743859979 208503056 400458457 690211513 910101676 275368882 313387462 802366803 933175791 9932109 952713527 455464708 642946891 581939870 642036810 693505686 810745648 336130215 969040835 8923175 761834126 667695400 792792159 623574813 913910911 569176707 591633071 375670990 997247957 344711148 400770569 82707540 166709644 743367609 828899758 546626319 715627149 485171747 602739706 308443769 500211536 547386213 571827542 935642506 945965756 544027857 564341211 780680346 801119051 180379650 561453057 734544223 760018824 476034031 963868910 259342814 549732374 395432957 731214313 209142419 495382030 590464168 804481854 454749820 784480270 35627280 576346336 145823962 446968500 697240666 994744873 40925620 261666715 2130954 267225760 196121110 245702439 429603831 481155893 180610991 976746443 662061680 835272620 279615982 292651799 149057029 744104120 971031608 983166104 673861075 843201882 236069346 623707831 304341661 689003292 376970196 988275767 348488785 472480354 230323226 939855026 995577013 996065736 994806131 998233469 424279397 918744386 300588611 428648264 52233694 745421341 906781524 906911075 351821617 730169546 163676444 536621886 964493531 984155860 803376721 835164727 711643233 990692589 13568007 881022883 489294750 767748496 385089249 469233506 425498117 467204728 102287544 492343808 502240055 612725815 911960005 927577320 765615652 955175393 676722273 915016373 937735809 976404492 207726425 335040202 927254859 955228098 778832546 924784569 226450187 371289717 402933141 828703770 452541 848659155 57431536 670888998 886793902 925864132 245746722 448574611 564830762 754950797 276060786 966759098 155214620 352250468 853537324 855093738 863553614 908007345 145594628 241968414 787749924 916513787 13328376 333825418 668499724 975566526 925001518 934481506 482126581 534720297 609187371 631961782 732099581 926689931 632932113 814950571 579068616 831102214 434122850 459927249 480765490 573840498 95821770 681931353 552270756 853279860 914460460 973611381 775531042 821867747 842502121 883633392 220797945 959918891 375461571 758833049 263300546 755983212 796045900 831417590 920963420 967552250 732215568 836835237 765916013 971076210 654817933 967100579 394607662 950837554 325247765 932427495 295844957 519776034 281352370 464586395 352136966 752601103 647975730 759520384 33854882 738197775 530317731 706040329 136527320 775628774 14296084 865521264 434011888 952223722 297780677 715034900 80880335 638829250 442243400 968306404 494267403 703188146 267326855 660626386 902462217 978872305 746442864 944159371 408934973 423876388 120797826 887199048 758300341 784147890 844042520 965677271 381556262 703315785 424153380 669842778 566896202 917992347 400819310 980542076 970569458 973943275 410771529 422625671 612522705 688713733 728051248 895717740 149850930 278793764 208294139 387860059 128327300 165289843 490732120 667277868 13856644 516966361 348943071 400431744 651104750 767603987 384033143 514287202 180931575 400517066 371939 590203917 468573834 726886513 128811942 240835621 139532565 568855646 457545590 510355698 899168901 927365241 878704270 939099775 530365339 610603366 669063740 949761416 454913023 614828522 764831720 773833814 888122013 895578226 871466076 930094667 941298839 952573078 465975077 614552042 726348192 765319998 984471513 994678589 911344082 922184168 299037118 914695326 333628007 762062415 495255999 537059012 160232503 904151610 823879610 960704723 488905235 591841311 936387291 938947350 176092796 834984720 147381365 492851214 894368644 928408877 938054384 983768329 608997976 831808005 12704723 792462883 384548889 728592626 501492595 783717600 620488279 738448061 196107467 992365448 617073251 961769471 134512706 656502458 761878915 794056983 150757608 656988112 653335561 962759897 336045222 614549503 74711439 690370938 522785303 765920510 426722803 465546724 8508126 613207012 733485684 968816543 333866462 679020515 153352727 441146618 812039153 841015401 112736189 394117263 14086905 83418594 137344768 802896112 225106217 474053482 698740532 964226607 610375211 621988094 546998188 827429608 742857932 820196790 21696643 258284125 817816284 989526984 112471700 856195752 998620884 998726415 844715655 914641421 402028924 955306312 281293472 544883682 315606329 891118668 258590437 862780221 20771945 811254352 18768546 681271088 223015862 519440470 966192181 996380198 719626272 844501137 216426660 957079703 32930189 825792172 600998587 909276345 985608360 990445765 734331408 753916686 388206011 454436233 896468348 937724469 499642640 735944884 744375749 951644478 356273888 702562819 27766515 520590235 991618132 994560212 446678364 578020177 362904828 948164767 445392156 817802555 664055494 803895748 711475922 938858589 939436318 968324920 906550554 966754058 503616274 946928796 808381369 810189865 99320862 610009787 27706890 666190994 440556179 603446561 185108985 696269924 781258492 995257463 410416201 878959373 10912739 927272847 205174035 690501883 954686119 967994251 850998994 957238323 648806024 987156234 708846488 889873912 810612142 903407987 41600676 447476925 902145099 993208254 84951795 956005561 781634960 848822609 52286543 387311048 480197494 787773194 119444200 328069638 44019346 62093372 500228483 653662384 349414388 741661101 367330478 644214821 8158052 663696251 237732512 870892808 801741501 911575534 44362072 267382438 209118540 837734109 896147126 966015061 355296098 377352082 540723086 902314745 821671630 978142157 883703297 888541120 973624299 991543183 974520970 985733713 553674855 919004822 564150464 639487933 910578468 916218257 335936864 917026035 654028613 806255168 476335741 913296227 45381213 661806749 236226665 277142140 249548919 734876283 858402364 903337946 486337932 925067879 930398920 981931364 522977474 690217726 459364272 825140527 503706174 676617761 846490829 948779128 682977019 735065263 234181475 863676001 892390543 977777228 560904775 898159878 155194330 483559819 359847158 944778040 448714386 770668637 233413226 953129206 139640744 559530147 644163061 757035020 243983430 647600590 900712869 949572086 492302779 657298690 76748822 171448682 267293320 297878730 130601299 706453893 290305084 546605922 739502361 926266917 795691279 982933596 34529974 342807318 92336521 708517003 414275366 844238885 625184155 662053647 230491380 727626416 130905304 250310098 880754587 916066947 720408216 797558193 188895332 807261543 514575366 965231664 549744812 993952713 587428002 809254206 314219318 708452342 22883041 934571419 890872950 923120268 419811486 646115934 468333814 977924180 706463332 866233083 168813099 439532124 758885039 885097076 148964787 295433698 61198025 243154872 988849257 994759277 77193755 731270660 166634592 332458548 119804992 783189192 940340718 953431301 769350084 891905387 797502661 985956767 178337954 534657378 77155954 550055984 678077568 937536139 886184732 909142453 574803819 877305674 539423954 937462408 666475860 809025095 456232357 781467833 108327615 568368985 819863524 978142881 299526900 649989797 55485803 187613447 304665079 474447446 873895146 963740029 851684334 941817363 921610232 983971796 715338028 934886092 500102455 864649061 143749173 714045053 122460736 269944380 39130924 866942752 643766748 697185804 575675427 926697781 991723910 994273941 411603763 838561816 454352664 870352585 872334427 966361683 192400125 934589561 577384384 687795222 584862072 714547371 410524165 934028191 897945880 980918971 345420591 366765787 80929013 325789400 901009657 946014674 282444224 340045732 35953982 51142794 105802592 196903657 767013031 996392482 413015113 708868571 287429718 375800052 734535258 931912641 956627645 991759020 728689768 730213640 456610159 824588796 833939043 902357261 695831767 888640728 609495024 682134505 485742026 848283843 376301706 861907234 277118811 281959672 282989301 502622896 731256126 741228447 827722667 975613887 917793200 935840684 221522919 447582145 558925885 975743795 135734860 173353520 626678496 876631237 44609338 588135715 400131540 771509671 875526607 916196740 961024513 961606594 129707827 159116876 658997344 874000119 972244902 972695623 268487387 423083286 639388111 781530873 356877388 499910591 68205817 282288933 351518925 634841750 260311751 957302560 917058322 926282613 461779812 824431287 465510088 682282099 68897364 260288903 56237865 535200097 954776329 967759552 938636015 951853623 747032936 972675958 364228908 807069047 814901510 927934634 992051577 998882380 15311815 549904461 532523184 728024940 916310098 984353347 348888162 829209240 488215810 497655080 900886530 943836850 533563931 905223014 722791126 743243019 990968467 994825669 43210555 750190199 273692574 822675738 636725351 800566531 937806878 974114754 964021546 969008775 862981706 925533500 347786174 797554689 99104769 272924822 658237159 709370045 378200819 515772291 653945637 666503618 4103469 664961197 925146882 990176547 554396954 899358581 473907458 953864031 137324963 532725096 414937702 881318387 790288150 802972645 511323077 612710546 490705416 795655341 900751303 940146381 947020681 967593335 924818995 976891508 773325500 907970650 789963089 986229806 354048023 967289129 487871011 690040748 971576452 972604234 45408934 233000382 267035264 439531934 935032183 988936307 551177418 914382263 818674973 896696226 95298085 168173295 51045485 273548962 959345356 982787728 978438280 987633177 413166540 746348374 671330253 791916957 977230055 992032226 466550024 826909274 904444786 989369002 218117903 522019736 695891834 863526161 104219921 498333984 632155907 837929424 159802207 283138621 210029786 527609524 632154889 837042677 696091235 864581256 821907281 872818394 859646021 984424562 84579816 809236934 707356971 853589016 940621677 991481654 239596027 738718923 673539425 989679179 618887723 704851368 855677175 881010102 954605956 987838474 631868333 656303409 829369269 999450813 257655954 408215342 906264836 914134864 94617589 818003734 339288644 594560084 469719018 560245441 407078222 694039328 389620239 747170400 192823094 701072246 418128315 432884992 263209219 825905169 38393983 71013067 349855938 772162355 700319661 752612621 989668042 995614330 854352667 953743937 546156296 556265778 498101212 629591081 72851926 669146796 429046057 511946942 526533861 674370060 308951520 881982803 866600987 977062004 401965758 865270656 216774968 616556077 99478732 403442791 713048528 787584981 133146980 866120033 189102946 735977096 938498822 994371615 100783604 791908374 245283057 614736878 144905879 513148977 927487309 928200166 240839427 503522658 882127528 971028121 356730031 511745312 157994432 588622728 344065615 678950051 642197738 653872966 211212994 370591756 564379000 656570307 181827884 241066959 898240675 980329035 408216797 754715778 704482913 896422208 232671972 486179781 94042527 403960572 436879381 833726888 859769451 883589052 326332731 970251491 766998342 907712964 394575818 741664016 832215859 950661169 890391560 937378878 370300587 689222734 506306621 774384768 504210887 673141231 767084871 813992321 239041628 520552877 686722038 789844509 993889202 997315592 228701265 435544393 381584763 461079693 84093007 511906240 704869650 962387154 509325483 612074567 215983138 251510376 567731828 936887478 234000874 686744223 551010114 667247827 659981710 931025098 374658507 807096756 707607883 803567551 642949796 736705715 15916441 691895831 149184312 270752504 629885011 647409516 253352363 746452961 752057622 871015681 164272725 198328895 204659694 824146925 252567581 361684086 485328877 897000267 262530424 541961630 507486383 782945979 402120931 622824119 891773594 974223716 782631854 993798777 527390464 908564138 390254649 405461298 837589306 979845275 308718437 447971767 740669516 761696237 830451033 995888494 153928907 908570596 310127859 490087190 282696854 823920072 929330456 980559559 523781029 744205899 481517019 787935196 900528702 911092474 575684224 957969276 652311159 916603189 723080778 808068156 27458551 615592128 483606744 825530097 976626697 979542800 317059386 656443135 602504494 966996224 849906677 877624857 655272873 933540177 743070931 952360577 559216404 624714561 259111182 575065686 157869049 285736997 314511267 821715353 682944776 837097280 363422482 379171632 618474195 788364742 486045902 919985670 916990448 974883549 584627378 626992494 670646931 677194241 303331661 873486652 357054472 982442536 771018948 989068288 360626446 602293051 372319393 527240210 943726270 994666851 267880444 909821148 938813130 956989350 502649804 859254602 451017383 566421356 245846993 582434578 3505285 118022207 689256450 905542341 687755441 825454509 526861247 997364983 810429625 922592615 140073744 624838398 53698824 696375306 641510063 649783207 609976356 611928468 751614225 910045623 854179108 975488165 189358333 972344252 457106584 702567798 795224367 840226376 18188198 624770832 633506362 703110323 118645995 238311637 932976367 994106354 113829116 943192928 496251679 506262166 157521410 753503002 109828438 534742326 332404003 913822842 499669420 840583960 172211863 847221949 397269199 786687795 373856554 727580692 75178068 461302138 504153520 651852167 135245234 576807763 966326966 998115827 83667451 610619753 754633401 802627919 135225974 231731786 519063339 800087715 84583236 753429155 165297395 365394880 781674112 786320555 528141557 719481179 789344529 970667189 586195824 854707893 338857252 900562334 913981208 945844781 357621376 993357598 436966314 445509356 414596109 579476213 149892398 923721032 153927938 662080897 340444753 960987872 149747283 897354443 404331696 441020663 153937666 355903785 444706445 458935370 134156251 548715014 748472057 845684240 861087628 910812201 254938486 609491679 815626605 937006046 755622622 858973638 101551910 470125366 393494637 476923489 363917308 394144880 459699454 595177003 402964522 860431476 152084135 879594763 109874078 476267360 191497338 601462466 510475482 649496865 750172665 792602438 758182055 877436165 31304664 316838552 211462956 853446997 113890865 394898212 65652256 214276067 576389528 752629524 628730149 943632740 645082738 886722697 535827350 669775715 820378453 998646620 578667265 916677333 780730213 858082747 219577244 651410148 31094685 863063914 833424728 883983082 94208747 583149395 777532827 949793450 766520407 809579538 36580604 439903554 494848549 588739387 521504106 566706242 519360259 644796332 668438897 985281241 529566498 860835937 205081032 896045007 847742430 959388212 45693795 660106513 688550249 938462779 801939666 939682397 138426010 841608811 745344922 891870822 612062328 771198492 379447222 557543032 916268662 928638878 574470442 867933087 537178119 655329396 675233695 917819903 947943552 987990060 938631191 945792186 817123902 954793122 493632516 938311463 148557253 574017010 699221576 898889660 835432256 970442829 315471685 474493488 444225106 484474596 352382347 606545792 829556039 965761396 742373414 920116978 214727743 319791134 455540617 579302981 414225709 804717150 56341342 410280791 766356286 909052681 169558123 398379674 532405920 977438985 692357521 802100843 918757965 957654937 919322860 977605171 269236379 447991176 224347754 974613045 11046187 52592909 870812730 993701178 11002441 764512368 423125779 946410198 396597213 413250667 918780499 980624281 680142700 787944578 923254720 938523315 104784549 541079195 952175971 968166085 656087600 737117419 942806453 979325932 173971226 871493526 399241027 852199818 121328922 527602237 301475537 364338490 155327483 594387427 292387628 564082468 421819076 675896564 108756582 784308855 137967285 696937399 106521549 479355664 809011072 912608910 887112965 916694472 69473956 383119949 781592567 809634045 873615346 880313046 649152483 955764977 927338123 927811462 550468351 844720710 447490243 907248325 842715627 984548521 81791518 316590184 125743749 302989340 846172059 936881779 939554066 972959594 803610515 903853007 549616414 952964596 905464120 915029012 273745910 782242333 887376391 956322161 831807525 921985956 546527427 643898021 757848275 840296823 119377101 899619853 471522791 725781564 136531210 448643365 14104807 980036035 112411903 829595810 904545006 969515580 983865778 996301617 151335495 846455340 506612243 886718102 461527338 930482980 116329063 292851883 837014723 840603527 532067476 567844328 33643422 486619079 408964392 726192756 299789852 950340139 559068179 746311143 811694714 832631912 204095988 400196558 173205795 428814418 12575752 891609246 854899400 867057574 451466588 682077923 846092207 898714531 377733363 816721917 66500907 409651443 681911682 897989849 362277952 772578333 150623140 332571522 106832903 426601850 560893505 708586796 458673900 934932308 894905158 939714099 484538391 636605202 197352489 362658195 254628347 785046528 944700717 960840598 975725290 976553853 895719685 955555726 650168875 702542346 867817991 973822117 555764961 631348751 646798292 681387693 332608658 660600598 875469626 896127683 30193571 894922070 371653581 372385363 640825852 753961666 381089847 703448835 907754779 944088432 884362831 932524907 263306859 377617319 370531464 924382090 624489599 938975603 604961753 915918520 643691167 881756012 411782461 478900741 684660581 988462121 61310290 367150951 984788330 987227411 807155736 917156207 830061319 849768797 974906552 994952417 7847166 929469311 704695379 889940605 956145513 967590161 853066566 989630062 480402068 706959170 77480767 259010161 162637112 228161360 799213238 881198459 640842932 657012581 35430019 225639883 89847781 862524084 606826657 961397609 31610301 890227373 83356291 778099744 522039713 976999290 484558647 643336528 473671873 619831432 179332663 403120319 698487031 754591932 263074532 467637990 187402558 475282710 629579198 822418625 585549897 621394341 570057490 715780770 894206630 963460756 313620989 827912280 808126587 816995573 548578688 901687281 756740311 933320848 24997495 432352772 885591810 998977113 928061837 982905146 405217257 964747746 899508845 996002386 531548570 688548810 512523547 675995311 872550799 997163491 244981764 617241700 590786220 843867402 711593328 856909093 787466401 907578547 267409258 346669837 185945175 690403385 204460610 696621054 584392811 627916566 623671760 929834768 887920134 979492841 319143243 844488813 356604541 582542696 606267690 828154234 499472934 883771302 641841928 895763511 400705460 745597050 259787276 484153102 603147988 762912033 480575526 637351878 409844947 889250087 513460794 838937503 864926975 867868872 654465607 947132427 30482541 859232868 525826634 626541925 934035187 977639686 374450238 823781590 836124490 962300503 842508252 947074337 81734275 595257370 869132162 910034981 635460179 845120579 187283844 898907126 558790879 641202144 717597087 907821827 933530889 973934079 996522385 998538925 437203821 524625375 368405280 712392857 226453783 493744579 971270119 987277321 891862643 914289173 845146886 907839408 586833505 978851437 910006721 923592416 645432679 657956444 453871712 757925448 197859856 350816447 285216837 759716588 291523592 794041266 998948930 999595791 488597636 902581089 201377219 819726465 958154235 980874217 233510959 509197637 386242112 938694689 497044541 855572350 393872634 760680210 173890111 694139409 458626456 518172574 294709056 941853310 129821759 670540796 328161987 516006587 853577381 857005166 221902665 528502352 265496192 563359914 533997580 720362117 515739361 970833117 36267420 530273696 200648508 464184693 664253466 965963508 637014316 684345131 295991769 918054454 712808462 972109262 302449015 402884639 891732549 974896412 695968229 929074489 33190441 455949393 411785643 749260755 459952780 849242658 851484491 966988649 790966921 852001828 449828459 635591797 420016553 799924168 867162913 943967131 930103409 944293639 594788533 971059487 536514568 550602075 627370792 745767988 214906995 889148693 890378552 995733780 973785642 994164496 496780323 788871232 797039265 994438115 619647213 998743711 364232383 545690620 295974351 994457849 988403942 997582543 995670211 999124488 112563020 511794020 800377632 864253142 113073776 455516561 923545090 934057331 365195302 447640668 996574386 999025487 828503105 871928905 728711300 850365686 238915425 955289473 81764086 334273525 95094199 646970375 568147166 624252130 584294104 975919050 613512246 887283424 685224597 800010336 76517865 410388875 429552028 781516373 395046188 957080819 430987976 811318669 188735916 230705159 742263062 928706168 289038892 358658925 11199783 43288016 814558316 992898786 184765676 613940213 863555065 958062574 886415977 951924024 803784656 981855633 750460140 974666259 417511316 701058384 676487926 931081270 225699674 908862136 432651648 859213922 773916254 902054469 853681573 898860084 420722450 615830012 976890320 984162634 344978143 897810328 687923194 969246598 423995653 427660512 165538473 321982920 318698666 552576067 117961159 348153126 38335494 716529152 440764939 555459509 345940134 637589187 935085927 940786151 427416201 882324549 495183626 900459102 483500089 576315637 638722407 881731774 547694465 894945443 596182932 925001172 57330056 960398484 654043334 740155665 544427701 911337016 701931655 757227311 108126406 127129611 94437518 118353971 195899278 216755744 572714157 735344427 426922423 801958331 953992544 972238897 588211605 911022908 854253138 985439999 367778308 427757340 653101528 802449690 851753413 972489866 548748576 969047496 935911458 970079252 271211861 498938381 630435658 885691827 301371927 644351494 899154611 932546309 59995007 318388143 712681551 894915626 744174794 809420653 375845495 846653309 143076815 254324173 369451507 453579561 344839329 952298162 939919927 945843702 308548264 579026921 521712617 805012259 33501640 993355668 399660585 589163692 405390165 726568796 728932194 942963533 819116134 877298599 875599630 929778838 319700508 408527773 138573574 503413490 759225979 879039595 190844290 640135583 989127628 989602776 60600595 714928504 912515199 957337332 239227234 251515778 243922612 410756954 455356898 505805197 599703182 608918553 752431280 808307666 891425173 985266791 718127606 738170243 518963073 667318128 454219710 750845355 655623302 662911060 215539716 419831232 186786752 471073816 590981335 937626966 983240687 989278691 908998693 958817301 935957317 959893177 292193040 371072163 986393282 995513073 841045639 917462296 779787654 881798875 229822367 796419206 389647590 757695429 970737765 976852761 354244938 638909140 211003370 374605627 313729538 401972929 625618655 947262385 110016131 990515594 881850839 984399436 496599688 631033665 982212230 993585135 870820368 982595034 150985963 397635293 344531032 851614934 177131284 432197626 272487676 904000004 481389173 899707619 64998275 313672815 895983210 949898160 80970751 895651321 266798670 500267325 164500886 299462215 23019531 143242638 770717455 957045242 968918019 976519063 211690831 906349175 993423526 998369458 737995884 871906413 635151578 768385505 864049709 898042801 625988305 854837892 239230780 293663016 514342828 589504451 115324936 124097358 152539419 512722190 425688500 567879388 307078484 399511945 31154355 301444210 52797991 660191494 564016787 741841067 961306936 985500612 634173052 988885676 420079855 947622458 704465896 757147182 93014226 930905500 590121587 770269335 610410884 776754640 855238350 955062453 309588278 572431437 162261934 225630374 318616566 724480659 851096408 890001489 579668679 989064359 329154837 926056807 860442200 933836599 951187154 954511008 848325708 893844294 500171077 757391563 687902032 835604553 180504577 197391879 285462853 852790688 590694751 866123533 794347279 908438367 941184886 943551233 824735156 958552175 522528155 771157156 494589150 903998055 516463213 559151197 289559770 888253640 48121339 416210000 160421410 635336149 285272555 970931685 66150934 198561369 479873221 789936144 491124597 938242405 922712717 957351287 513494152 567078966 863142120 878065933 291194871 432391569 145548127 380761828 805871551 927035616 385003114 645910561 187802738 625725487 455034571 819936529 237264547 291345607 204152045 615208655 233238660 294861502 422630748 433641020 934714408 997584695 430275067 694894523 790195369 953088337 414572426 464796600 623837894 703126224 667570187 731151357 50374082 165105949 15852204 566005683 351074147 839149623 545131554 890239845 429692566 990723753 454785990 874330542 642097664 983906966 632811574 653945579 795760509 890129798 446100318 653074332 381584932 837906224 104392997 439493826 952279751 994430369 968745181 982083378 409823933 679017034 219501783 544477030 236866749 413338254 179806303 620873477 521222284 553556027 536468166 979887671 620981505 949766335 354984125 598650911 124079463 480450868 662114499 926026236 598072954 893060696 396817098 995681328 860640061 866231968 388703149 986427789 108537805 385769166 794648369 963046318 913262157 991213897 944184961 995846505 781545057 880104193 518020209 641713328 112099290 776483631 471129490 704672971 748772370 928607731 893881564 994811464 699244546 880427305 453333641 546029022 100511050 175850869 899209468 904403016 548136971 893781131 92764821 625447916 580585847 651607520 610448697 998542783 8414493 952776794 477541695 695959603 589620176 602289022 767546075 906050461 697330628 989381380 830385039 877039867 903385128 924768828 634501405 903354100 712001554 909299002 46426075 691354838 502070535 512260900 658770746 942829637 617703415 807913370 905603353 969277593 37110429 302145455 60113549 229725969 37067370 923357160 833237239 872571056 842943062 990571235 620274548 930952061 934375202 964005435 455238314 517940779 605101233 975025554 366561319 625388034 312309885 485004343 489090814 570874073 276545862 548202186 40217241 938363452 271443715 835549054 345716118 581303732 590718729 654808709 101299468 168232059 255160873 543382249 649711314 914498904 157049873 999522224 716941446 991594876 964697212 984296542 753483143 867221601 82817211 421267695 952418458 969565794 358921095 389868134 589040709 842871463 952853274 966021151 954877434 984880324 842176675 858105732 963494972 975541895 511322238 786810382 82149795 921844087 381450225 951801974 387771556 414984243 322515228 888359202 594400177 751393642 496091252 637816112 375747608 719630939 783563428 981791099 138390613 914724561 52964764 164462989 793184970 992827546 329537967 819524970 706962387 709830253 577562771 618716028 445252697 843220080 413723804 679807511 672487272 815649618 728742517 799522599 827576923 913729708 251068542 791000723 637414151 786159714 63341785 850970210 979433844 986680325 769466645 980257024 626415146 806793718 390570723 904162376 560753258 692935709 794728053 854765395 513686010 543193932 958334110 997482625 772177592 978422819 586461901 783712627 541772967 771253434 868074697 936666599 199211856 872534006 20696604 725626585 518400094 922301147 339905394 927724471 442417882 729519218 409778828 576724580 215454911 387866205 514437948 944460164 727984474 811282635 144331419 673605151 657254660 905178888 660019553 798619138 234222336 691564889 364705253 797484900 149333103 159163004 549346661 907126379 450271579 718577698 123972522 599598392 550024968 695557051 559758364 565222065 298594815 882643325 781971839 977808451 488024388 786223037 807340385 850801042 523712482 942213644 808765997 822299424 858630834 926407347 863634051 908044699 867936053 919239494 675522257 759949837 980825054 997353783 904887249 947619009 642015354 740387076 768917358 968614428 61699412 862438505 820138362 987866937 790479809 986882209 953064953 961778619 485857569 501681604 176147715 332560264 450232557 971545760 901740485 958549274 575312085 965310953 660844695 700295563 983097642 998012531 729096012 871835488 639399528 706676970 36111017 426833304 961547887 963784607 517148953 945105421 913531149 992022093 909965616 975185939 808863291 845117747 92089388 536018881 888375108 998041124 322943798 585754765 555891903 943712425 393988045 567565349 640462125 878820911 259026010 900918753 481854909 674469791 827641462 958452201 572454144 977168312 778385782 785109350 435564177 558401601 974690841 996878364 947272717 973002897 475150486 878837136 846485107 962408842 75382791 354602921 412650640 414348699 696915331 975037913 921472880 995336038 60547884 695822866 105611653 711536903 234078643 378935137 55600923 783742260 745982262 786928134 504477328 625195637 749964551 990445837 359415336 434440027 538482022 755016196 732234996 791143186 897510196 962448155 804789535 936199995 86013551 357471255 777176656 944287335 101267832 552273136 141223031 439922885 270273856 971659071 117160964 832534268 739799261 955452664 564797467 969652623 466113431 601502723 339131022 892564528 221121991 788357914 57304920 893627302 519819615 689890310 478440067 574210221 870293501 890853919 34552560 583565534 582527106 834978892 8156549 446780108 833262270 934657457 41437774 68528311 510522760 898540939 834188085 876960572 854675321 956240010 536314116 843644389 711334025 950220412 702036572 736780548 891746280 915359956 346387433 557057552 440826993 879786280 935420945 961643229 698942691 786837286 735401518 969638519 340475182 409331880 342568671 522332195 862355411 956351133 607960245 623554306 49464192 605677020 813528863 998907264 657078200 971602979 410333098 575578762 6535339 823443489 382923413 888194165 966976589 981011786 960661909 994483349 338182057 706615387 510783334 963642596 455490135 595339433 541395204 866513446 720522613 817570532 193834017 804179325 275346418 456312690 567111372 754008548 878702849 996954837 477818193 803461443 307880628 323682218 634839262 937547149 175667343 216333027 151289394 523274583 786413715 970713416 470496287 512703796 442601223 826173684 27841225 186848073 44598142 238020304 976522203 979666412 186093136 746875913 98786019 314866925 590416682 721237187 69367298 317235886 454836251 692163621 72420758 853367174 175067416 602280034 682024504 880938182 363106385 790714082 123688532 515888234 864317453 886279499 711763325 818948829 323683301 733943817 420734901 813247551 897084191 985372400 206302922 597695163 342492339 974852264 992910076 996222764 31236052 720856992 698167170 704907093 863962539 995312571 582937417 965748370 460147668 881429749 153326941 545361592 371045656 466638839 471276667 914635190 730124108 840317068 86816130 578502076 116297474 872179733 806236305 867043991 571001025 619652239 657303122 686632494 953948638 964507746 109822982 587071309 644560159 884960329 584847252 808345517 916557487 973022371 924212318 960742845 490066080 732971920 78985986 796463231 275866095 293698394 188741647 314842144 475199848 603952249 160809432 611217543 305441960 748526242 16212650 991025606 398196405 951652810 183270617 805716053 491335823 877445823 465450556 631210083 327390310 660522805 900808211 998261966 239938808 373042144 893327873 998037715 474333663 683115379 837024288 964201942 565021507 954001072 651633153 767560448 294944300 306450051 13875304 456927040 25809480 468018545 79038950 514009724 394211436 805595974 648937353 728115938 556504756 843430475 390085111 728143374 857353211 906332268 794557016 944716206 816085112 836978852 642652431 861198223 307167448 356304690 825623416 848609083 755181991 856586761 391129617 861266274 866878360 985866538 105846288 211401481 524280684 862869715 60616861 224506815 922823318 941947182 155837325 610766573 274210684 865731486 856459555 983134078 326042798 561349517 940533844 954476828 534180062 751868703 387954195 509296122 269200873 692410203 89094280 955621591 189568318 563428373 897401289 941480234 85808378 198879593 941366649 943893550 715407907 955272056 920176959 936346785 591607763 876451760 654575977 835713053 83220168 429394864 410684916 986863005 139460303 667949388 291594935 373608849 109427888 583530983 441551998 922060984 442719926 972031295 713826755 744221484 451944708 957989276 988167574 993039706 772727364 988882290 352043441 892496794 927956030 963474505 335044984 430071503 960548400 973806158 800878276 979452110 181967271 257601881 393731629 470174207 575815200 598873751 458219010 952715288 210470918 875770526 367117674 955904753 55123303 719131576 68968418 429161776 192753872 310504372 610353339 874677822 58574153 913655853 670620944 733001769 398560027 880189249 439267166 870343627 746823924 821392882 562980833 833191810 219803063 884730361 612862023 872704167 538915221 621858212 396792371 718312449 955200955 956222647 826347050 898976147 375070283 897465033 106878776 434377186 588363226 906442366 310446285 472128869 317566136 776643057 857048638 888627463 866574735 869451542 166661772 316191758 585250322 959278763 278954563 426730555 705960526 783123840 933339342 981897462 181052429 765928127 506410680 922740746 471827019 998421236 648937543 988517626 762298843 908863859 569332235 598990541 153370341 666097072 166807543 172414169 739466813 976016124 62761424 165881827 312846617 984304583 512293217 687097955 67802695 255791828 970012841 985252243 568679335 989411089 379427781 614891752 519159720 852141338 5397839 909626461 260061534 544651684 848045763 979812908 178377187 447471501 11409639 995673514 148232771 766918454 390046968 923693133 868750160 895655439 774528327 936275705 493080503 696400513 873420616 991319339 638749021 671792819 60000483 620908993 68273665 329906932 394942608 546631528 144696294 809085432 490481614 963612075 204307036 477525113 644303923 737927197 310681500 378398277 611327194 901003464 343764893 899976229 944003758 952758645 529364137 858011681 802410500 897745153 260064956 481492439 970685986 972087643 535922700 597973836 817639059 895712396 208955057 943488476 352963358 663098128 416152845 940152008 386683120 640300811 758292383 868784629 897149925 951181614 922705871 931405323 674321694 851077709 307527047 314096480 415978412 747322559 591529988 960139851 61843595 867039773 784561073 859935664 711398409 796300028 553690140 775448315 795730080 916019505 627946215 774475142 136353928 636368205 272600624 897066547 92542449 511757371 797316075 893219216 917445537 929087548 636551815 717927822 297596124 508204990 208175719 873619406 250945487 393916467 962964742 966467666 591877246 850502055 615297331 942077570 999120976 999995122 407463151 831127225 277756346 587668761 825398310 971807102 541476101 808382280 355885067 773119768 148085501 415462804 568219583 727356528 948093703 968402909 898374377 980779267 961261292 986824018 442773065 799324977 740880845 840831342 927371866 998343477 433777315 907852087 674327276 810000075 56362576 913727963 113709927 508435911 43387849 711775679 156618154 648478816 214265471 247854763 584164373 955345513 10612296 577547203 911090979 989615043 874260723 940494904 797766431 923788411 225521948 974405890 76345795 437612146 992470539 993248174 48358462 967852092 911583109 926356681 593157182 833655711 75919032 958531836 815021793 911158790 102423831 784201342 104058096 475405962 507255408 744893742 784681740 851888024 458578768 957607468 616457825 805798535 104075858 402278596 799800726 834761175 122356274 574399098 836539073 877355466 209383511 384096815 159422532 898379561 251508693 980222995 998606174 998848399 534477135 552951419 553864436 579235516 511498089 511605715 92826718 322871901 896864797 981152197 595047264 738002872 25289297 37068162 668305652 706105437 21328069 90783459 912879206 961102903 850887939 889946449 570392086 931754221 298194066 948848447 943025546 987323882 295448264 654363046 66076247 528636449 415191889 783509044 340986968 704147145 89513468 882562101 199875188 238044862 25065699 179424343 256486106 283540194 810834078 938360042 298069903 617248657 252798302 860872679 695424032 979646224 675936528 777101891 824070567 945086847 755769254 802581619 81434519 500941597 213139231 427225617 86150404 994754143 787709880 798574431 256750727 344211110 665663621 797353305 615755092 802280060 725919919 968037033 16760953 635418437 278653184 540592306 232240427 948234754 361553006 841168153 919316636 950656653 269118419 645940021 921294542 951311499 122361695 652304307 870527443 927352531 195385157 854566370 710196674 789788134 826553921 923638356 875373546 993305345 811561009 837884146 121528403 733856981 766088966 790487523 563425353 983672625 31901199 76587527 460328581 827077992 90330697 714435326 857710055 996055920 935025438 944905081 787224486 882918391 338780602 924513343 459729421 739364497 659263415 916488130 168958347 827161248 338328697 512424150 468127438 524042497 80216663 662303743 15011046 938948818 679225981 775052669 493475744 926357613 831506698 987409572 910832959 963664436 551856229 759141744 198695062 677055781 49654993 830448936 863391917 969095230 66511316 377779690 596255447 618985088 189449949 730925403 132083313 190919165 881927943 912224940 134113302 629457217 93037326 116645391 163360010 910573294 96665036 647981797 756571184 790082115 681279958 845027263 193489197 610134632 683305651 765136253 90253425 162685975 147393169 667256676 831788655 973967148 861441840 962755684 41209993 785480888 980361658 992594689 705549551 707408014 194036602 940389547 906160922 996439286 94166878 564484074 620123443 650574598 134696837 196388186 916079464 994239449 392992345 671882540 151920683 575617869 434907047 943336906 756708805 803820645 136633771 733597554 938176560 989749114 170972515 940155160 966545712 997010622 722590539 767154789 933840400 981858267 172552765 307791128 98420660 162374060 290993962 428789092 463735143 650374751 347926079 501990872 376278673 651618214 8694505 740494688 274399638 674716480 129585004 584024240 37922756 508087735 99139982 930779337 30936180 406617684 514625626 745658101 260115485 538438419 76478766 907165033 840687772 875177026 752477827 847771699 834186401 886438275 629180062 943709420 376289756 782210026 513107066 766476829 406636618 808985121 715228586 990877442 153871590 783834769 703298272 750379804 521932703 845472252 897523667 921084257 850279660 883853777 840745877 855636429 835089854 899787044 640415844 887166381 875044271 987109363 12555128 518325736 206615934 250820739 479689916 522064303 588562429 802022537 939599577 952800243 132936754 581156272 985432296 990862309 667939358 907636383 695751941 927858001 647345119 679911229 512167627 649389492 247953792 631291125 452209425 801478845 941475490 952353040 364288902 839269426 688392306 844249875 344337062 656663194 883439689 967391942 974397467 985688480 193000217 356850298 414337769 772827094 948447795 997542275 879719035 933436828 509701197 738151631 521650343 559700673 900135424 948887323 519694387 822146945 641659869 647859932 497524930 587099356 274971636 706199126 532526975 798080264 73594426 729102241 895933409 918211046 820733796 973482250 817710813 821854117 603837126 780535173 88722276 848854680 789674676 965771674 370952819 642262410 388985846 753436376 40917047 893215473 10080712 779222947 72904073 102519535 628106710 931276034 179114124 981933713 817367229 870399953 89296182 720233212 903851137 971468345 121104153 329327365 844660583 919252962 52398285 963545895 559536522 746925729 256226978 700235422 847002829 908234518 325724416 937648512 310270994 856854793 34289106 474535309 989956052 994735848 81083969 597900107 283302447 812163826 742471699 929600097 385706050 838489549 999867288 999978221 213906988 919417961 531086414 852669181 850621971 926955200 448815283 748221732 901669525 987375473 350840923 384442255 67771430 222546792 290026398 910806304 944481345 987257339 923288834 941930424 257667737 915228417 60368203 536702786 523458841 762184910 491089652 659425839 50364602 560419330 960473323 979391869 9535874 986286478 432852039 506294336 671806160 790551550 40138253 725745325 874554985 894788577 673941890 768461836 33880458 480436340 673809795 986197429 510733539 899112858 527508613 963528759 55760226 982332387 94813476 358014948 824790388 976696998 551762850 665322102 616272487 796489667 397548113 766244002 837912171 997842679 925584190 962396165 174413770 581281045 996707058 999684885 865630761 930931688 903220959 941623780 260010502 985608302 660803673 961577988 740198797 828791252 633616497 691039755 11114919 463998275 243019363 847211598 646075657 749350606 349870141 766080386 906652730 968707389 28584078 657125473 412982086 928144769 439468986 727391043 255157178 542069729 243915231 300465838 782038838 897872213 850159784 934722755 272766046 976037009 334068426 612869902 108429474 361806914 269742825 686560564 161570938 794121780 714431458 928119721 941239375 978087467 620553530 864473895 418028671 476812113 51387850 620749943 464741657 861031653 581881656 645974617 873897292 894969544 446887937 943145228 318541718 996751546 42911593 838996657 381911082 655304917 480422228 666026667 93613772 990312591 288332016 402000585 197652515 529717540 660946927 966494748 225108878 707857861 136535534 901918116 12894607 596314895 808695967 822606367 89933632 144704006 149167329 252772959 734929269 789793173 600742558 949180147 843758913 983076182 67188362 344117271 317666165 480912684 549050135 600802797 686653231 857662013 252372193 493267325 723835019 881951176 766270548 867824779 399846523 960027722 78276408 997511860 757892078 960809081 982568811 985600573 215686394 371733138 194299800 452912548 938792601 957420468 293961584 597154801 272080221 508450888 366771601 485741792 77505185 541955286 82268557 488457569 999998137 999999317 256382946 953047567 161206550 385115553 862817102 936470239 309447177 568485520 405476406 706485279 413264888 872406399 976513027 987768131 299143630 728403018 826307120 917293514 486423683 572551474 325929080 540376422 849436980 934134622 652697534 866776748 555602187 759858042 82380495 243108180 413279138 670144713 550132527 993300105 512697378 858414632 1633686 22039984 7184188 11949684 788887502 824755209 523947562 621216209 237628696 825179045 960744425 966807334 718739621 952173014 705082158 833687414 316769898 834372726 937546344 975077198 583178375 945048655 66956628 603890904 297792942 746817871 587348830 847315304 859092080 950014299 394134380 636739494 419891088 547313176 985965287 988603548 89920666 107791658 335497651 395201586 552403046 733589969 167550474 234916299 275860273 708736716 580710453 989386368 688512835 726883374 15305763 981288335 833544640 966973181 237851250 779265793 753454974 806477271 697249900 832595088 629229432 754043467 100971597 353860212 965822981 972409083 654430375 815342633 363017392 554901617 310664422 989808723 948192750 970257998 435382766 910060928 621210964 697243147 704198407 880339554 486220722 650061438 946299852 992752694 804549970 955250258 195541115 287506207 348474183 413969569 804646761 833001907 379263393 907583817 136435469 787097303 598392254 795407442 213014233 973125494 340488796 559377843 864789545 988458223 872373601 894383816 724446865 875198382 624355406 909604560 539317458 705857175 60886067 758568748 422430143 442725015 533774871 991279592 903862740 976206258 680696638 767757637 154756225 553576742 240310258 714183249 11652256 291292526 724659336 864369139 886977519 947166355 389958615 566991254 808689472 998139880 15661710 696685587 60809274 869290383 349744712 358394099 491823862 583617739 559924328 687345103 578808987 938880498 717276291 818446253 926109830 974462109 138040385 160173837 287929990 878912306 160444276 867341655 823329644 987235577 571723083 925746829 323036458 499548840 94443901 614600325 981450 912674006 249889312 769679311 93297553 317364824 258427201 541769286 605224875 952584216 395262915 624034943 225082780 348173832 827378097 978040610 218924070 907534755 776075828 865621719 700215669 915586792 168364520 705070892 9012478 932916458 756250535 933033536 473078496 858012917 878767786 939498285 551038721 741247152 533424098 832187703 268114195 984185362 53564544 615685426 590655162 850081721 3616176 579880661 618734723 964873680 235936043 715911973 446547559 491706661 851143918 859281165 380166270 916946867 923523472 972588991 645232757 897018469 677889052 965594005 728079466 837300313 607525865 748553950 13455495 494682523 143531451 153010265 974694413 996530145 302272844 986392668 781163480 846468928 271744565 893429515 578784157 701204376 802361242 940467201 794149088 800445841 315406685 456684278 945526434 999089195 110640671 959824789 562129987 932600206 283991599 442866411 544664441 745623511 280643471 868175081 832784868 881895652 860902000 969361334 935588436 938543571 618010446 840243543 310488323 419872751 248738192 489510793 320560474 416497880 513442766 965334169 125082415 431976216 46406144 928824996 235030872 691024298 343260327 590008655 92154006 689823533 108059926 684658155 738387261 782075852 223191862 472117390 48831427 720825297 921447092 957156413 112799963 678321032 504306820 681560035 255286198 875319992 830895295 933112206 349971572 745071885 407248046 688846174 411710933 781518546 60592847 540160766 203459197 802488753 875662436 990232848 652525750 949490621 204382648 784193783 8480346 266697948 490222803 591417246 631882309 662595654 40222240 697141082 594361625 631009967 617808256 844722356 512585846 931922469 362613540 543827525 521658254 572102429 389519410 918247313 947409947 990916260 108632227 583365347 424441496 974296873 336474831 485926375 13317362 837848874 336922641 366450806 505667655 702316115 127012369 165407798 443109521 603840202 743792652 819618812 403179793 931950677 184386256 512038289 890264064 966653300 46848377 241477279 567827287 686255233 822749617 934687403 922110434 935835266 415731811 981833796 706018132 895436044 190129504 712616487 173542975 796653195 7069766 392318704 339869525 654498262 17558068 906141620 935460974 986171482 212145878 764015449 6458543 506259861 18056021 404102091 630312376 781249427 276125403 626299112 886244835 934778642 392325374 396045807 308557016 582760599 832293211 963609094 74943275 256880848 625291959 922730096 944415999 991570333 927696228 959435776 395894538 812607463 173023628 688129218 406789487 993352653 475984022 826726931 639431838 844175030 238916825 451055435 342819670 966691181 173026910 194539267 689607075 826775723 324225687 845662045 69937824 527603063 725550675 759970731 574262197 621918122 448129251 830344425 813484208 932532095 865846421 898543412 583394440 908736596 561886906 935983507 34938282 286481718 828874881 982438063 100604465 370073720 861622553 994233404 553107626 972337887 639343784 739841751 701809927 980541832 228006611 378718512 379388872 912651923 685897292 897305371 41721246 926369137 573589113 746937090 658520770 924068446 120425887 437213134 3329038 687660059 789655712 903513311 433356977 899775277 198647708 773044276 910701207 971531752 501234524 902612957 424821867 842446096 202004541 543761513 595877140 895492714 217422643 241619552 835381976 890088366 561783042 915991098 754356022 840391915 999421137 999441859 972738783 990399507 619907637 673216363 485204209 660597780 136212728 298310051 857027897 937200622 841277188 914832649 194611121 464290381 255739528 406015325 561233821 790111366 91740423 544573779 362302467 642877147 750173850 784815706 187678729 555854381 825445758 991448685 317469003 400325427 19145114 418125351 858135045 987815591 792878545 824290833 555052981 728761127 930100979 936443817 8062477 553058234 791292508 980178523 532561981 788083556 107139364 410982972 844187649 966682320 664397641 782342256 735193070 804612484 808976900 850016722 12557949 156843581 882614227 928096111 519519714 740817309 45857585 307017278 194658294 597213048 537836977 657916389 989251173 997700851 197492426 335675399 601129687 787850745 416899332 486734787 315193018 908167438 959378129 978586308 977949537 995855832 459676969 480171021 81743863 190592414 740441459 925650109 524440037 726868677 985862596 999085638 755360984 873380009 171621405 460227326 247305154 556821591 942523274 971018972 335058427 710361101 57835448 91073241 620639662 927578623 338860578 399683694 368029781 611770220 243902924 330517763 46183008 272950839 686567933 849331675 670841487 694508894 761360578 859120856 83565430 425236655 48813782 69732447 404047687 743800707 757535013 764770961 748605661 983195339 246954477 899335666 596668831 842042015 433578959 941499454 769584161 923412491 937743139 998497551 143868340 208175664 892294376 934435425 896981876 924480876 953801463 972954093 36182620 970297428 296396101 945915272 545852017 840210371 871389582 919299750 477667627 716880694 124793209 376672850 726195540 853225242 161456021 460365371 324534423 646194197 855247542 925759036 629089968 974770793 849959126 866470310 11691447 653565097 597513398 917093644 940864967 947668657 656755059 672324599 231621753 698360345 125347898 300994227 264589495 803357002 368734118 916984277 481633707 748856535 551825692 759553391 611724015 996544461 643244276 816458567 806454287 823251465 901098490 941089493 78878582 696042941 19099193 115427675 143534266 768492866 722040227 973752423 311053806 350327602 58742131 460598062 454936140 656837048 423353769 784423346 351240607 414336431 352498424 361076608 698122975 940283015 8623107 400483627 722856888 980553803 880296183 954799393 296452290 826547677 446586229 903256302 971111299 979328843 115491740 712520792 587568836 593013024 969521113 975529279 834806695 969626256 566443518 815152325 640396294 702789266 750799801 817313544 160013423 777604346 774893870 850317605 31530838 390263179 873637732 970087389 339880115 926064456 233904742 342191868 863601454 863747428 27038094 844121554 722536286 735864191 851761996 872482791 948551962 996651246 563286738 808289786 319756205 674585746 918460670 925040635 938586484 999111839 840073813 841846146 218191718 834662502 750414071 817033411 253086663 981494776 895240668 988670454 803569599 987060623 830094741 880405251 213775602 345790569 403208379 798172770 533791215 850204372 133465342 900592339 724266870 978841062 645996588 967512980 723226039 980928783 334981089 486575962 453366756 841845356 23289561 915028011 963905296 981180951 556853809 849748008 754023732 764776832 94896277 345476422 707951564 765173750 643056250 854134581 421850678 466157222 895912560 988852263 555075784 726078545 355890538 885846406 849346887 896933849 162580085 546062914 700563980 718719691 251930015 377713587 718643995 784686024 142678724 543318943 2558132 731324254 594424492 596767413 252761719 813281841 807410895 883173676 611273967 715211789 697787444 936190858 682851679 745623787 662552085 687630906 636036899 834549006 340876855 340904425 410700505 830051715 60369499 165479718 74599751 777349753 629227330 930023891 91862061 504894281 474317293 490036411 296222266 566325555 433340763 929427859 60632206 704948512 210897653 699450190 368949931 386993303 671564724 878097621 678587117 825479359 464123265 602014057 651719887 657715286 816639713 828460828 957672458 966953194 496611815 960363472 662561863 736681299 787011723 845663619 166517431 294685179 953390706 957925643 880269605 956293525 694994328 811078770 221543968 815841833 290826797 499288917 875993261 928040908 279034772 976512666 141318406 884477654 227388234 712087892 735774560 889953334 185289434 366631008 519239154 657140011 184040525 491616608 403297077 488630364 684103940 725496069 434271831 567442704 420420068 837047833 902252680 974776010 993912156 995864721 236811825 418727516 483543401 947475424 244484364 784884740 500049687 542215919 544583410 918485533 883140544 981087006 520729315 889470805 790555666 931767243 30653041 523655581 254794720 423919808 608605681 967535415 798531158 890424344 991855854 993260983 194137359 232788718 464656348 806104806 279909319 308591528 154015871 213126878 491734802 962594826 327883429 458713684 87048561 374121135 176410694 325173244 153939939 289251652 100787761 618884365 618836220 953162672 790414203 839532215 295629871 352351944 620294394 703496487 618278443 822166516 89184587 212211120 177175246 742970874 772520035 862055795 390381445 942494497 346848157 962759763 260110641 370617588 600750525 671520542 259688670 794507226 472256046 821468254 85217583 612014356 464437997 784859512 121560161 132571783 809671778 883918316 902549203 965815414 886785692 961231410 846781551 975409124 208568067 770370670 205139147 210214008 103165722 587226190 988712744 997695331 709326676 838169621 215978534 692303125 806193756 895156125 878413965 931167642 223704813 435238383 132670090 427625483 170558041 441732869 766354795 848141579 739126440 958245345 203211380 588185406 572474302 959835444 509821522 879009329 354542998 485936203 456709041 729852634 340832685 714215754 934096445 983297050 131181027 276897434 659594393 899209573 860538515 984365659 765090938 863217494 895261084 920034472 488259425 775828506 902436692 989296669 624733302 751673632 144433188 312529289 206111105 326731781 779123560 911446126 614498139 786525990 379887308 412531606 840064082 848407282 481717187 907379563 181706143 805541949 299848556 596204274 564922709 568785878 770951723 973885629 605835944 996640329 503912682 633103522 451883277 957669610 251500170 701536895 483881334 727239827 137930992 384612916 773637713 976299592 204961302 812615717 35672672 346261575 475072262 699395373 269660914 810368582 767686915 862729639 914569041 986401150 455826435 479833498 837917365 903134134 242433659 304422763 248381679 266574921 416941271 573125688 481889147 926372862 852795775 914271794 11899897 677784935 656289263 764116717 320910284 591273820 753998659 890864373 554850459 670066897 986189569 997379012 45152575 182224984 168045815 429092437 184060440 544674689 948510201 989957618 420301753 463559422 7953782 781401446 799078263 806971823 187971466 986443671 727065743 834201107 30895580 611122088 10808842 384434576 134384676 867052034 469948544 832708830 664984638 883557850 506891475 848099142 955778572 974066349 641097209 716121843 285147018 311256454 136242544 429121535 79381081 953851216 112893267 351155136 801757864 945469547 391349759 530751437 63588008 337701347 30636999 713057529 54093438 848889420 12923307 661506854 629416044 764249058 461360837 609982166 705834051 809041562 459740008 565276898 491567585 711204785 27166400 124223760 318135525 474720128 917722268 977696434 854810275 913733950 244360515 873010863 881201742 994172049 761932439 896515459 286964639 866793490 483773509 601396657 221377319 557601928 89062097 973965410 22006422 75193419 126978345 287859868 745881043 891815143 335037104 356012253 770157367 994995511 347246370 351834047 967460099 999339451 88996138 218303445 307148638 682715601 616839131 862929632 71849676 221931963 136987073 344091917 837743644 857403302 292067363 740069914 707783223 936508037 686644594 975573810 434720772 941908602 488583457 940532986 915069458 951724496 197203067 398765888 113049822 214032664 323744794 763982945 164264493 698073587 370968310 443227487 237462345 441593527 830642710 966124398 594100230 877186126 810045674 982501166 162436822 313537617 116660191 275682933 6824362 691525709 973417916 995215243 685033666 898101855 420728873 946319591 727580176 913375841 87110307 762819778 626654782 909700798 345471788 690015303 648379160 651923112 410432233 690278794 948793200 952276284 167043730 911778329 460792190 640682531 598594063 619661035 824163024 925482343 270216401 778747463 527825294 557593108 797075237 866968248 105677121 167129866 514571115 558969153 578805305 664493485 440336332 944773468 35701628 993096963 31939488 858467817 153594816 988940356 473471182 974352502 806427144 859901743 15065030 418877698 500746822 839326565 675861263 915231579 316664531 384213239 880375294 961289824 541402785 976620033 642698111 722147441 436404015 639005417 766992788 992434765 640485422 696499396 134880474 449183091 198525530 239651228 891347829 939330354 33675945 471254194 927408983 932297228 768725755 826028592 766089028 825346136 604370666 719142198 498516180 587275259 987048693 992914539 534953187 846653484 645304051 873641353 408239748 670592956 281074345 752223276 96163888 622876465 607767536 907415992 807415946 813890124 266432722 297071121 479304760 778094917 572131674 738144912 434428342 477066524 282621310 752518983 97847259 847872686 176263455 841688317 300399189 655847312 59503574 574982150 670943650 885441780 62275860 739003914 41664631 668133713 886252593 923143411 242754952 552434549 148872807 704969938 916268452 986916925 796218773 937041481 898512541 917549798 783752102 891305390 892155650 939705238 420528511 503026819 187861619 837094475 564005529 784828880 884989811 990913400 139628790 996325447 533831776 741533830 605316520 707073717 684032433 804022303 466299241 769564792 705567768 725947369 93296212 989002152 204469525 791177021 422362135 987788399 408670195 515081992 307221753 887556959 961403331 997319118 333038095 381458745 299850262 510945351 563532004 726602902 99827719 353236755 293454754 724483752 119831909 608816303 319799938 936555445 70889159 804262245 263657146 544558576 525265405 591426671 297480732 648671843 494556399 535494236 649627060 740754385 40619501 637587465 180172259 444195028 14273342 155280300 452713078 835429982 972566406 995890485 544964531 556636654 127554840 527578543 709959114 792525893 599717184 701479582 82750192 590163851 572917894 951709776 394235103 718660660 186792664 765808052 93705468 303979736 57150334 692385251 726273990 819263997 661533396 832540034 570214068 618987951 907422422 939774966 249078557 702647153 372733419 924480866 692621827 791325904 364388351 605334436 837463562 962270743 420210576 422073950 533585247 790514929 630888137 985486948 810931763 862268152 565167614 653905286 924737481 969352067 201850718 366949206 280714997 980128441 742603024 999487863 162117491 356191723 263073956 288497139 948359431 999642170 207759017 465517726 62784465 552090913 680373008 877311947 769331768 830083167 25365481 706151214 553727692 647544538 112985191 516332077 926510460 938424452 543544656 744426187 329148056 739456862 797542396 814890310 398568407 622670469 423377706 479635232 189511906 455425400 339792824 504418691 104913155 892604221 583098678 914330473 485134012 516572229 964269829 984024164 94174398 530251124 186201021 485172427 61692081 169745314 128279809 443186607 771891349 898286554 941695541 956557765 704337885 896948897 75610442 709166629 575721282 960584713 225478729 268333817 136445144 978347132 246487190 577152405 13231046 14370671 993378920 994189871 82781073 394899547 186325871 768316348 142242434 880481011 375708052 378709214 593661362 887075978 495829604 810639417 712966896 854422252 961588035 984912079 512189393 906130571 631141441 886030841 75479248 528167504 299018283 968368423 321292740 901964878 204114337 649684982 518155987 923416219 87732658 640015924 607078801 649551007 304159181 887318448 460858267 626274391 111051677 401819649 771973913 995098632 405410791 481516918 767756475 905143073 155233979 620790485 907404048 926885714 187771161 862106354 156369560 795380207 275704717 863126819 614825794 708300901 964505185 990185379 592539360 909398683 734540337 880881322 936424252 947546747 689294668 751873473 183184552 259993015 751882281 947315209 449301187 826777508 388307695 536621564 288200740 698772295 890699037 942022499 376665328 684528916 376931091 895373976 231011135 590293850 810106973 958713826 960228869 960602408 850344954 962082094 59324979 135695264 182916881 239473521 734201794 888409760 800223787 963842103 212670607 723279992 303525191 676235371 850042007 889592764 904659341 976611266 594128124 925662679 251780503 550584836 746950867 831284692 316534121 708108929 13296730 993237901 714982523 920180803 185528926 189729280 903070144 985428790 138353754 284381342 270923439 773642076 305490086 352717981 650132702 742515205 524922741 843331998 863861124 942259262 708125221 839259610 520903521 995692261 291875846 617374480 124104362 808084100 74462325 321440131 805094104 859126543 483497923 959699400 644618064 654382373 619904848 772846683 634098664 842811962 524189652 561829501 620091080 869569110 332154296 946742802 342209846 468730904 251113810 559396113 486873111 962521998 977819574 980141859 750843279 899023323 51298106 538312829 23852789 517114140 629639961 999161095 210085173 310189720 455084897 870523593 142876437 217775121 926354790 956146705 779204892 909662082 483968465 760559876 103225270 806984330 867025512 920352774 319898166 694581481 612399863 755739521 95968713 367099414 559345599 760489327 264970156 429591628 752826214 896830872 379199824 846267299 275539869 282546072 234786224 866657793 578143925 875747905 666351539 750578162 183569996 221390218 565142151 966216123 897497933 955973738 778838962 940998939 860462588 987506941 635451374 762330358 741655856 949228802 855399485 905061758 593295776 829672956 335862365 732148826 101399328 503150924 263655972 300656622 919225989 983107837 671773918 688457131 125363599 282975342 625806638 675066772 933469245 946069061 472265806 526460295 159546785 961096734 810436632 915037476 688836308 983985499 810605239 951076697 233018015 581346646 556765360 983469559 736675153 966732256 586415718 789888244 513503923 655278634 34229353 136985080 380710309 627351925 240571058 700437664 244160254 754428400 611174867 832066538 905736803 914560394 749096316 935774556 731357269 767668659 997765697 999696235 735789530 907972375 408108916 790342011 127985663 881455295 929140717 983575775 554852635 670140918 574955962 810880436 28360863 763716091 453607894 950524068 483706096 711258019 409430426 496254205 272470002 958638370 246281739 501354746 494087626 551496991 862924435 945257359 136578754 176477572 671912830 807437188 633088715 861243416 3578830 749362890 297090056 669014603 668714508 774652461 430593218 798577921 342062018 759542576 976072536 989885463 169196979 994637111 990582818 999750883 310230384 631136089 801239936 822870541 196383712 648335744 731938188 846973130 352732369 953260714 139808684 261180430 70606105 510647124 599603208 969956811 413817640 494748345 421418935 589478055 729091176 874995565 734968522 774049325 667004795 919215995 77645495 829207255 662478595 772511411 504373899 516745913 969314182 972085859 462058093 969781354 26342725 521939024 976539991 993248298 138473455 391548116 515980167 852047473 433260726 650252788 952524712 977768591 207427941 392858457 606486148 947824724 126446632 425722952 418944518 987029529 20614198 387614897 378650906 608586557 612160798 928230264 935763712 974409310 804556548 954400031 605041533 848250839 821122217 919560200 103569124 219793907 894044230 986450096 22780311 483037523 3286302 354968198 719636259 822799408 812120510 826178447 239836068 760421326 422157848 564241749 845402287 990706329 65553677 429245990 498434336 939336407 484695993 499339548 57815271 227656474 692404770 956315064 785485171 916447574 680455829 966453155 816335201 826519958 576801976 904172622 853447113 914182653 472526815 627299005 492824749 908499672 617738888 675222308 850461095 947664791 904512177 933432221 28922537 520977427 737808512 853741180 57607896 166356276 553345284 871995408 480811297 932768035 620021823 940974204 424505820 680811074 484891856 896385366 960023723 991316165 539677743 884512256 558921985 937551129 8896622 193823168 185713481 403070843 323656560 887014542 133915896 558778947 422747989 984276150 883958432 989436026 327161441 382842153 589904352 781995761 217270383 824501748 348108850 799840594 254279940 272562273 85474578 933326143 450730735 794647641 452361991 765415605 909025158 974794807 72211650 305996219 544920003 570683873 516734003 570822128 76306687 791485281 346975597 880133964 468614195 934065334 536574338 945170381 509679762 781797615 182565846 497265579 553357247 585554609 695182832 797535609 417729550 971838512 559584198 806078463 781026274 961778034 895158732 903617842 777585758 875687567 36498632 862808517 508050839 629231197 998456993 998925838 267555269 763820221 138143474 453050501 674244760 818078158 708599478 819852131 554401448 875085616 66465151 793496798 555991992 613434458 414617277 808950303 536332834 858802948 3506294 55764850 962875189 996876499 285578354 892738776 419594962 857517078 826618429 937872177 804526914 818581487 61306639 708267057 593526121 960739018 159133881 845588427 209034958 989122497 876195349 983782457 293758474 888564610 111034268 629936518 33517933 656752001 162821030 374268561 177132247 831440416 569846488 860775785 212922257 666896099 305863870 796065382 839250691 973095476 194941998 680955832 299099011 781901133 990458851 990522303 461601794 572439649 752668926 937873810 537799320 912658128 93814106 251807289 886931271 929941667 348056303 507206680 149312841 767186747 618666101 828725060 452871440 932932352 989189373 999592887 845894920 940781293 968616689 977994950 239774850 587076279 672746509 977956526 847360512 887229212 688127003 822594412 754442006 872394223 659643349 754349796 223699889 630894519 91888296 827999810 199730483 233790101 919119161 935127928 926126687 935309443 202021161 539318408 141926225 922960515 126659900 914234443 756840815 927890134 245231870 388785533 261628422 855397077 266433172 424522696 886375831 924423682 518671814 977146631 100825607 243628233 880168491 928619424 818452190 883805052 171317446 849489131 897435242 965711747 2295480 11993174 40515111 970333904 981960368 999541508 494652895 842525924 421972231 702124687 93046460 816494306 693270504 777218270 619671000 682943115 453403721 834452780 711002702 784545885 485580250 813905199 810968848 853574691 63282384 556008385 305838773 674951964 938016770 970872540 22652991 257748527 989305421 992263065 614956312 853361782 983489411 987933189 321035577 951656416 759647238 881792667 456003345 676528754 575469465 705656816 119080600 246042118 282663605 961706159 266629132 756185343 703832487 966173103 22429104 433094118 723931380 834612767 635418074 722385371 232294117 623342863 935640848 997747184 431042568 482372993 293600945 507360480 616896372 665723331 154572894 176674484 473372205 796647000 645404912 727697980 785253733 885145754 623108045 855000086 886852178 892760092 787515688 863190006 689269262 909545666 920388286 966904074 95987844 201242779 695174832 976824316 937654362 982451136 545226859 671130268 908428715 988060010 828090432 937338259 991422884 994398695 377383404 818488689 423038479 821854910 810010546 986258070 326349985 375212529 688511491 995150177 151863300 260133627 331842413 816073455 708499548 778886906 944525171 952538560 525702947 975208110 33582851 271522924 828062578 842368135 804598807 837851427 35116424 44967882 35060573 103744392 831255545 844071821 799319055 892049153 886890075 915419425 846698001 952286417 723084895 805770249 999987415 999989836 228502549 978017988 350103569 883339800 103218043 707424692 228749695 491464474 748355407 921923756 545806240 621006183 882255822 883940585 281861952 482417176 683350639 747871278 906133090 915545885 234662356 306789793 987063649 987953169 769097784 856946005 173169401 646518389 703639115 758391349 372252378 427886704 103163863 373349214 422537126 516430548 426446037 690265679 92531489 665581925 963207334 999485618 184248628 616160983 880027685 956288066 748896226 782079668 315688344 783909592 21536102 342660163 227620075 526351833 621466506 992018518 811333544 864405034 420724864 641466681 512422389 899359812 788113013 903807222 169703553 230822009 381664272 662374488 717292728 895989138 28708824 476271080 547815541 585967535 819593396 933705626 696899487 788406179 891098377 931315324 371259122 581556155 80941642 132780320 817225462 839415696 107069744 126530518 378746025 713234307 854500673 990030292 757266854 804554244 608875546 940564611 216959630 684480508 733019247 862256984 85383582 551545655 467833213 590597046 582562865 942222005 82295554 832191139 404669910 739014659 511838618 605596644 831202879 950955636 519071859 577374825 739326775 757252481 752670281 851042035 413601550 864146487 343163826 470428378 763364119 833037683 162073652 427767572 558927507 560327410 28865582 38367421 651175349 719434667 792090392 871722155 648711502 738361065 353013657 800701638 48881047 827869283 950581690 961936552 108977518 311565947 938236349 942503659 547318589 645501185 233002549 915837636 967968941 998537093 400812023 868752594 275332621 765925236 473648135 745150302 857499860 876613374 630987104 755013744 19028957 286150613 263441997 422183200 769638080 783007315 32846567 551695081 60315362 750854931 831359269 937521512 194900036 875277953 142258490 322723636 446213672 659696350 886756893 961141718 170440472 649885774 371120417 900064981 877581659 931688340 167392542 242328821 341710862 570463159 75055558 437003751 564354454 938520941 820799613 925463150 156855021 383991069 156629383 890332457 955469815 969486328 967558825 991437483 964278400 988705905 382607629 778973658 188314452 751011950 961309055 984812685 790216933 953951530 166588553 355011073 82490676 761592010 340654876 940679689 943730112 960151420 506307470 724996801 688687306 710108492 397775031 904760990 936491681 976279500 33444749 545942079 522939088 734295577 741445458 997293914 10431002 191095367 570729023 821651365 334362157 833054760 504690630 819246875 780967817 990764630 838225518 912365956 682830026 851082546 289501371 776035543 442821905 751651197 666594085 996585334 288251853 460423335 428159636 884757367 199212240 383131851 360839030 956923277 801668849 978331286 476032194 577909393 167995615 430648956 488610526 565295731 839179629 844209281 599885253 623113394 953665379 964928663 186982992 460630045 907942532 972411381 894351731 895354235 898335862 955495845 535747928 725134515 14882923 883354686 876010381 881248187 618088855 961520453 292748733 692900448 574193844 612891631 183046482 626151793 61222717 144865418 969670988 979839223 698539597 794116430 176733393 351982768 606972491 660936195 366714816 426390050 519741975 823815182 193573397 793222085 846291791 933917294 951305792 991415042 97255751 377603449 168621710 825924761 450010132 771040120 889989415 953931985 451907456 731526270 897925703 956005701 1748442 281061790 384242608 488585698 590323937 834828495 311686312 558497420 910618257 955575251 111724393 136778410 589106510 759078239 910604689 945015564 811895706 839292423 92142422 624970838 125929623 840988785 526579116 944731434 910625162 997894490 671362800 789838766 953891382 977991477 230027120 823927266 472542773 945534194 971973360 990620300 906190488 929981675 11077274 897983558 729259720 983742438 140203458 536214994 410647343 921108445 450620437 739594335 5803811 975738947 692002417 937308432 576791622 740451542 19128388 249137683 710801834 883554002 813901764 936978445 751239247 960124539 947832811 980960121 57479384 281176019 10235305 397486841 25432973 79999983 877320606 998213034 140692255 371506049 881471866 988897689 403881957 560324483 699960907 722456367 38112546 430525521 772176291 873513521 935712093 950176089 618785078 995854980 122973921 630832680 400391363 547081890 494291372 747338287 29866407 243274976 228084983 632372137 714643029 827792544 644324354 943311380 489991483 920102423 562482458 930666685 336983804 741057457 405322832 961529304 727886153 782227483 871106868 987934721 384778848 438924941 826362222 936502187 23877514 507530817 159291005 239256756 82488749 269209084 988246209 989848343 78765722 211309887 880355105 884984292 48325291 680028656 91064225 885704415 398880128 525107594 519954119 691808445 505468843 773464204 967633731 987897218 956721773 976825724 685070369 806117534 800304591 995106916 195461693 268254145 697868631 887795125 175887772 824043075 914458625 979944322 407062173 454400042 275269996 292476682 442929350 511501928 1403272 564637889 123537798 835368461 814157308 951265422 564686920 798223962 170409352 922844999 898024849 917057721 267613393 805964130 731134584 963221234 888159045 973404013 921056296 950354945 27104445 613096656 948520453 986964986 184870071 224403094 422150223 824398353 140283693 564035817 427252266 498144425 679733572 709758042 883258683 946988894 22736921 33969033 81783334 241509483 873436335 895242021 958143988 973152230 860334534 995655710 929809357 956765700 898775280 973968774 825565367 836087336 363605043 981123574 738887535 856677703 847128087 945535329 315632813 688068622 175082176 198335904 797954020 837278188 946165817 993600005 214085487 286011345 595242890 879320439 154742955 795642924 679394435 681952823 10576870 216230351 346372036 640611537 879759478 988207873 391192059 774377650 807998970 827714311 393088718 562382657 8785289 471250453 4529572 744525869 193146826 524468553 241454935 994460446 992179619 997796669 134462772 516490877 362750649 451970909 406732571 687072808 102886525 792375976 428826305 837042578 556854447 948146868 674481648 875664514 867328626 929220790 345866028 829059664 112471303 796429532 770330076 881743103 83569458 479881541 616361995 951617249 53465017 157600236 453139910 941529451 506986424 698658430 683438367 729923691 151045613 893269902 490989013 999340172 181874244 400307212 272118923 657874492 839974076 963305968 996041679 998551656 93530429 964285826 46811206 866988157 248253593 362207777 475353343 797066622 25840942 567946077 925297057 933129592 144825660 597248426 779609519 845318062 792386620 995708316 632338619 807740042 903457243 944284711 641343227 769808740 609630542 920436448 690931365 894342789 4077900 144967025 365640112 748856788 261042684 490994005 899609691 956202252 597669463 704836993 236746527 666300745 633275142 846680181 975253516 978337420 693151994 724088209 593310477 725458458 633284868 659930890 622555976 703565187 408181234 590968212 270951897 410127167 938277307 949005212 283658833 407969858 473071540 840841310 102561294 270837163 271177389 505208426 403392306 484544698 606460532 814637948 172828023 601339540 372521037 460057158 584253468 625697069 956757630 960466925 928830607 933751644 73590505 640849642 860963902 978118162 95291189 447320433 339258518 862744671 388013539 725903425 135481257 780122195 234738686 264158271 773834963 991392149 120644219 514753095 969236750 987382597 250258688 569978678 86379791 625713554 863066323 913442488 912721555 974961159 650611034 747304114 711210619 725184335 811075653 902095069 970459580 974277092 400057899 884362676 849656945 940082387 402254166 440732873 255115403 572648914 220628425 967440582 239510101 868901122 968099489 969128274 691580290 910608073 771851128 996335908 327361473 730095335 854567086 994666690 856777054 993029327 642758542 958282294 668988419 707862846 57054657 108916720 759260727 971038375 227401489 566278784 717372038 891262823 584324196 780252884 348886985 442713204 283505086 960093059 534176003 881309477 490333012 502639770 896771419 982952599 663785963 941811701 157679081 820977127 588550182 589524614 2111402 772875980 765339353 957918120 167687280 945342058 756092929 891034910 756431226 985270083 8271572 476136162 349534719 444029836 886459934 903217192 583804571 953660552 16665181 653613604 500693255 948464762 908489451 914198641 991464056 999756236 493283396 549582189 636784569 934957639 139112119 682216678 88877639 803187115 403057391 569841515 106788443 482268149 302681061 909217500 291654801 716646938 738515991 807149627 520033068 939092477 901414685 992263382 725939180 878704077 484019355 487422491 905305811 963850533 190402404 956010228 107542948 614985438 634658159 776729041 445285803 923118424 714748378 940691696 273822338 335667467 371513432 974076706 73764542 424988376 780017420 914491462 987610376 990972816 16138516 324580423 62501141 567247513 724931975 829438468 521207975 768462989 576823152 847453780 950335243 997630486 246445655 644322672 968081056 984919680 202838457 448534839 285028624 886613554 297367533 560523078 878409077 921709748 385215472 823226585 835781246 865789367 985764624 998580412 56406539 975153590 399488544 610717095 852281336 994474227 741941478 902316770 463256258 518090118 948955815 991196906 691171888 786221937 135375868 861711972 992731171 997473560 364611028 595040987 496676872 892065883 237189049 908618246 702782487 922669187 977871759 979864571 907645518 919997587 28014318 398566662 380241559 827588622 113682443 523142333 475527980 505283315 812824910 823110342 246019451 872144330 26956654 363077947 830291284 942873383 272172738 588518762 785241802 931155956 401083365 686161098 481316756 885850069 222084180 637069475 871088877 952543322 365253726 743752335 384258834 628279106 888378102 997047646 955835630 961732209 707196126 920163486 400246894 733877448 717308060 783147638 61212011 232204554 9364123 690062269 703126765 730271684 557453915 598558573 108237239 330586807 727994979 814378017 303644397 805188055 18567937 392448515 116029960 734641124 278821764 650624077 202883288 949515519 18259053 140522353 521397979 842003424 632303735 697711688 672465578 990702988 919420924 979081162 502527316 828938892 483611827 612798915 294819899 586838322 430204108 598338145 332573269 970562631 498416263 990633016 84792889 439841891 613540854 894091154 692493282 790161564 547388311 875872484 99155529 107179445 76424763 235106738 528779267 590702737 410612826 417026904 273859564 621027143 397985205 939355291 947232358 982105130 481453295 658933423 649252973 931560530 694100117 907243154 387347155 670843426 425017540 480089649 301050255 437635783 880387369 998110397 892065844 974399571 189583012 452938609 331430220 742887126 60844248 556150664 500106589 738257747 284296553 751125166 521888017 838777780 85021141 777134759 198018846 457238779 7865182 47622954 496153269 798158677 471202262 644994723 897024684 907042478 766305796 922247024 810468417 832804574 955797602 989417986 639857392 699099234 974837520 975547900 342758281 671752935 397353829 480278892 141687493 668942445 144588543 307307604 783315073 923795200 732780876 855818581 491899109 762610979 198388224 664853605 83861824 743789432 698702529 890867397 854734790 977766077 487776550 891102717 391978380 520488066 145625889 807238641 575370756 957661122 867973086 984227807 699390429 870831550 361852918 702247507 813092361 884337087 708536782 958303801 760566470 945373055 790118628 909322815 258857150 414199111 125791501 852946336 76907091 769547321 39035398 590441712 882275779 910101176 450187669 559359826 75073949 386444136 210922351 836514839 52190455 897756821 521248640 941390908 495295767 898716374 968076601 983731401 795748086 890921801 516823354 955423732 477855474 857751365 8908480 916119729 484447410 799513557 792203620 826763004 973915887 988603790 291905848 404420333 321689253 657956573 984285695 985705968 65272711 240209956 313308279 523354095 299177671 419622404 952905990 972026945 114306853 599230190 814774891 975584555 899807070 959654036 651468807 917707542 63168211 390449532 117043422 731610715 444565586 896333847 460167915 930534185 652399891 869230322 244099803 998829460 143375486 952588724 43111553 181166795 874674203 952924240 490137085 814233892 210793606 439005925 495531315 920998846 141366533 259078460 895545084 963177931 715980532 896613263 356078581 713584522 401254620 613734504 126229530 646964570 52775529 204397656 613493499 899957148 128050006 494015734 929131566 954111823 966326995 967267944 760537475 989793037 922267725 995357572 612052495 812886746 846620306 920106639 133803432 863434180 597883228 698333324 728758284 734011415 326943919 882659124 332207058 555893473 103767420 748195558 835934299 941610133 57436599 341288001 456224560 501271294 30373072 688731523 129905930 329467967 671965762 794594388 997503410 999606433 147233893 438113951 240956970 600031369 647019899 873988075 729094601 745805091 439349391 972852966 792821460 912037305 412304921 474593619 350416942 654227248 833211167 975991662 140359075 887265201 394491027 442353545 436963952 796485397 468856542 996971660 967117841 988897121 302116554 426686981 940053860 983053176 824117560 826342863 576476292 609517897 783625579 921325489 192513103 673541525 693800506 945524083 700609866 721124506 327353710 408807335 325794576 968248262 642347165 979222624 49244676 729927270 514733773 691781714 300770077 306060655 634178361 665505544 976210821 996765762 135810612 308633590 75572111 313328635 415351444 633423010 197223913 723773420 377280031 444888624 368153330 611811681 225657302 718429079 809146756 838593295 240083251 618159160 990266241 990942923 59629340 92766499 645742490 666443598 142736292 619603673 132413726 674536452 462748221 681178743 214685249 770641563 430293384 447329931 117387586 940919017 776145671 780757744 410771568 416218067 982243428 983178415 121493238 876138927 116589438 782334166 56682044 602868963 61362842 335485334 921609844 968801757 89780093 754060057 76221173 220366379 650065627 997521371 236411365 446218022 778240199 967539020 211810255 836519000 98025994 564317556 825738321 914273873 958995561 991835320 589725087 750917434 511359212 768796585 745603147 848703292 689815709 809523416 785226647 903423777 616205095 780136206 201197319 824161920 666509650 965213906 116213504 397230701 387560506 553994253 132889843 270571226 833015928 944938999 698628955 846497039 420280915 900274127 653557709 725854094 624686542 677907454 249718305 517777733 226775176 560125318 504377949 873349498 240824543 441679550 920951315 979857184 647386713 797172814 357870318 670809244 912969998 962803023 290497718 426256210 657464962 811382488 766443865 810790994 524351417 847971260 313482081 413731030 828841900 902120370 152801272 717052963 610135635 849977628 539987381 647591750 39873186 760282093 942039331 980321449 772657974 924748725 875687972 925405028 5790547 717514439 719263771 971967908 871236037 917407895 833289046 884098511 441742523 950096648 832785766 909408022 594850021 660135581 659029489 850480855 47885728 140788435 78619820 813923476 973086124 984865469 385487584 743225016 142446639 407370009 270495238 292503946 738794434 993335510 280413507 799893248 822386766 871460840 448708768 535676038 131193922 231399022 767069235 783820437 675176948 857835565 431008571 818962897 259738766 747993785 212202658 256366106 532696816 951502178 153860527 717372010 171946835 723880233 284433644 627236844 535059763 897722025 589214350 731504994 321042184 641690506 817316199 836667639 339361915 991406107 129028946 568616913 621633875 653421146 819894118 919117579 295378194 923707958 375624164 377213592 686995403 726975561 827850208 961239688 952640610 981763931 756094361 890000525 635850160 791343514 830259840 968545427 338633414 609797403 2661983 341550703 479836162 523172948 943171314 995048926 928709069 975907891 799269170 800608662 35472285 920052915 592353194 814133699 694363593 787582002 953237831 982563119 320637278 740983847 630384686 909970116 88069166 531516976 6813867 494976498 531959117 962150322 949219541 983761621 336109401 600609737 82077767 274426035 977035596 998499967 767985451 867696853 60397993 738018901 873747884 947179928 746556336 805440199 287771076 980966904 423830816 746063633 440861940 615113696 832121379 846372789 758036231 891033117 750402648 775301578 811488212 848931146 227177017 959995475 679786344 953338676 745543072 932383809 34507114 87280010 93608992 130740032 118977831 940786858 718899075 808374271 870488262 905341283 977832920 997048609 630970109 925576479 643391394 722736134 386152964 457571312 233274984 566563080 430581904 739375927 460845730 939540013 189696336 232610376 235317896 357614980 298105124 789314004 225531778 774329652 487003236 722119821 481503060 702534161 744061544 953292927 781919174 877289300 586638798 929920389 37017030 351292169 300709655 374247774 25959001 831738703 268173620 988375415 513939162 975003838 696303849 752178600 469360430 687800223 940119857 990633914 621262914 999442830 282713399 779221460 755553059 943825063 819475576 960016269 85508644 88640046 750691830 817690882 81067312 300791676 860338057 925778139 56807936 714843428 224712708 600648568 918106470 950093112 511571564 993585089 879534982 970325409 147499290 625553849 899329455 976580280 477579599 822468064 798470228 827827994 95648763 366208022 21295382 146226016 924886707 944685899 447486028 668710200 584978403 976854195 775367073 968650749 383544872 963368719 214591511 336321812 595009401 858056460 773905877 802940408 340849824 787501496 446154718 594779998 277546078 557273130 231485388 432156024 707932274 798637381 976555666 982738768 526184842 769636464 922984601 924737813 503979592 904787313 852972668 951116148 400875521 694866869 162243253 581416231 132633525 328322302 97663477 390462464 46380006 389797908 863441377 967710162 534373800 828983323 61578390 648541574 823129417 863957589 225533171 569438263 393008216 510013849 980362856 982706949 693927839 695187837 692319489 813362295 435106938 500751447 175870938 556514663 104268801 831490806 864947208 959575953 665690640 743575220 853462353 996142945 52416051 404376939 399672698 883378278 982492184 990079160 441660703 937760611 970224549 978125081 432549359 857821693 533944954 970186086 618744348 934377990 350246566 677643811 80741905 531460132 241071996 780875371 377118882 390577733 97300428 186480244 661565508 926277937 800396724 971003750 610865875 763435967 859938335 958781764 860529187 912171278 772686189 780201020 428657129 543727174 957661694 965601873 379204989 698625251 687841121 972359602 789152284 918946696 453689914 759667007 853407596 972158809 792066236 900333340 675462454 709626598 361956464 635773680 770800500 787324422 17641624 490270591 939673513 987990633 413481087 995696990 923193131 970771219 13858377 250808797 276189382 983887330 131607148 957522471 356536399 378381979 554893157 801967651 991323829 997530634 614905381 891500860 851735109 933027401 41106339 429340934 760178686 812784411 996001377 999166227 818577889 953181710 272044900 563394982 967706450 977124417 562260037 822811706 762230936 854298393 495420451 596103860 188983812 985863954 426669071 927696356 571121639 983995182 514686448 716931446 592085764 819737012 196107788 881025264 812580598 999396403 276998867 306972787 952432455 955225280 226052960 849815697 56737078 621378558 162511477 456838781 761169011 858455430 9117194 478524998 203781362 335185278 784233720 917290366 482996371 835972524 239054300 416376262 810096283 902513616 762798408 806600871 657178146 806051158 201955023 218890694 307726190 955747971 329435798 732686755 359365680 566216289 262115397 879477953 978627623 981285696 176002166 369332378 199597745 969083358 648296356 866339391 839027734 877163811 499133376 728557401 380282671 404795313 727643083 756363559 904414928 972246895 876852923 927766358 843810002 953105857 262992592 718256554 614479911 666999660 351510230 950677927 331189316 793014796 479149870 873227200 182410968 630849098 377019510 701531096 741653262 958933213 769074642 992576807 223766778 478540411 226455128 742977874 459373271 965765552 65874095 603451449 798175794 961965401 689176024 781760216 405389203 607234901 151005628 756029772 700191599 856130639 854062919 878192306 63618247 851950814 188457560 657576639 219318703 317776277 542977148 814415118 819292753 880670131 616120094 634946882 89446885 383525856 425755189 640785429 19398374 911543381 305775525 934587775 469378221 611887586 562543709 833252642 83626682 290128050 571885798 887948882 76444328 400630378 600551942 650707665 235308425 582099291 399919071 640308043 97478644 747138496 671310813 776443568 259919383 371009599 301577252 773953910 287709001 449454994 71989914 147131456 249274303 606107969 868590885 997920312 431062768 718520801 153630944 796912655 286788503 947149090 575989429 880771849 497156855 677965354 437856563 788613762 745269986 963769011 300700467 943180887 136656686 552619408 509538047 754865818 95798745 572730550 346983291 485350982 544963488 793766464 333788107 652970942 792660274 937994182 216115090 747651080 16843468 452821884 977721942 994918871 135577655 590720839 360060843 936882344 751551664 989850271 916810903 978557818 548758817 801692436 824052031 940878833 429427310 876681760 293628830 895493717 679441066 983343339 216648471 697773673 843442159 889749573 851688926 906800832 58739326 429572925 808194856 982634630 408750046 784614612 469410044 985091973 491983224 622009668 140774462 911720705 857027118 952099787 531966601 748760554 334277896 636963713 324305867 453632137 844265549 859756397 641712801 892697840 115940591 186431257 422023487 431086367 766403211 917529271 984279325 992841517 414512161 780638406 159124121 801888816 371738301 537996102 195641609 270600781 142570727 158084365 171317997 528489842 453702652 453949589 264308113 466517746 568114138 628119205 862740999 905751701 466573302 553208385 65405615 674760868 474377970 769082214 556940695 762605511 61732513 443144003 344547650 636676892 314184204 446730608 622257559 763364992 647934115 994900510 234619928 360583361 661626112 840316959 721430466 835924479 612001143 756959597 517031873 907327984 601343062 936266565 819509137 982824794 879229153 975316331 743766819 964135261 741204639 952562800 904213442 966657677 47977355 522388634 353864988 364510898 545779576 595398122 111879907 465792520 570508551 952377247 512677536 530437652 56755309 192473686 112259483 661477303 291570497 344698663 224150167 638901077 618006866 896059112 110964084 697288171 393147634 809519887 667730588 832822074 962344605 996266706 926789862 980071628 913986322 936957054 440070201 460277300 922277634 996030308 877248976 937653853 255023205 438429002 930269899 990561151 835895207 935263562 59266436 185174759 315992218 400931061 210234300 990627543 489305546 585876523 601396575 854638535 946242860 972283381 746003802 928438712 487193786 679194596 375905459 690687499 117582122 166396712 301124535 819635827 717483725 728796160 908979232 979917075 687025235 987809719 883815192 916662345 467642907 526148993 194528379 224053572 522009346 794623577 773838572 921843683 411392550 936430449 940480929 977859477 34314801 771681694 188909626 638466751 109097368 745219022 166925167 625472259 585629039 613273759 68712572 491919722 69253831 829330558 69172666 887052366 359188548 932157389 620609947 884546194 671362902 974667738 196809606 401046499 18107678 96868392 659781644 660484438 21033988 981682742 493149357 805151876 604839179 651750191 790222021 918331048 900842038 998770535 130172641 576804874 744635601 787451310 848364158 897172468 715592351 782489722 572374323 942294447 248143018 996041381 328022731 613111598 828398730 937701146 355507330 542915503 357259288 803855314 24960830 777824264 484437030 902290434 351846387 901761786 824500577 910096694 830404112 925947535 86457164 322901576 793969994 912558927 421488089 442895782 163590459 980934331 554896045 578434705 582446987 775920524 70428613 498843458 437777613 877070808 52886124 725745619 357159716 883154477 612769569 754186206 903086869 986488829 279467413 365823691 693734133 933574635 424504579 675735790 718096504 964350315 817216878 975379384 199227515 781247652 882082221 884713564 612193931 989222023 103743093 541111724 207200968 364824545 707211652 778379295 191819793 843321475 519874176 987468972 642660215 915859012 541458809 760272853 701997961 851775143 278123952 636674634 661474793 691593291 453391906 650426631 907544379 908086498 910259097 977625982 405753150 982961769 7696189 809765810 529540912 818427836 135062647 448125934 676065869 886857097 662445963 976329632 637069047 839801099 508544581 605829438 800447971 806371948 580322479 952777175 364881885 795457668 810697823 967547157 549239272 967651692 241805602 897329940 365911415 796185397 814083547 887056194 363970151 418846844 359410210 508287879 3942566 496578242 937968982 979256933 699612446 849873870 297628570 542547528 524005994 851736308 898885778 997514965 323226385 824968793 954837210 990003793 100374692 397727232 664630234 891381603 695779580 707762626 145703829 932344662 652056039 773627925 292455697 989437947 184857726 777226870 486083862 530015369 419910298 565213457 615245545 803089449 47651722 652917588 233477695 765951764 483076630 677577049 67688126 638758434 426795547 583948635 358218594 811602735 292280706 931363259 915085789 996929981 5994361 590313151 977627466 980532860 355562539 541498436 816367258 943895123 386962536 396354687 80257584 251071748 530969112 875223932 111838135 187424047 814846038 906739124 404421947 420138500 811710694 986713655 504673521 620514540 884019129 915954911 849006410 959764667 563226827 831009437 959637402 989192608 289506616 874528854 817068768 837415513 423460190 780735454 992917076 999227128 414551891 507537439 180390291 990925224 556993681 624392103 389742580 966757609 363901323 440138679 189922431 862660147 19443 990333794 446341868 562837494 987246620 996318193 607482385 983903557 353212621 364747003 379605043 981383017 909643064 946711162 626040575 860113649 396431424 902890342 856960351 933729511 169859942 975224795 483058819 772332684 309905106 392248845 458580993 549563989 516310517 842719520 42938747 354230068 723934382 965141484 7718312 870037481 971528513 976812251 734492437 782885251 63396033 423958472 881873579 936903024 749895231 980514632 297501786 945566093 900467086 920348234 666932682 720715689 136324408 992119157 168413420 963469399 435927106 983277404 303909899 935142464 90816220 481765521 407687576 856117397 531805639 634485503 675942632 979264726 548419883 646258179 738282170 863498389 370503479 869281186 606652785 805478298 962690619 963282620 901886745 946481487 140529882 917929796 258013317 506914276 709536907 924293274 230932627 822441512 957720031 961293428 874756939 980235621 75810111 764869413 100636752 460795630 417321529 528545331 439548685 642602647 539111474 940997606 451473862 896949217 693852863 841703518 251889723 282793822 443059014 701757729 245647019 340925636 800806073 929016131 965183996 983638948 299468078 688716251 714982099 983386730 466701373 543299885 677415633 870726146 833102709 889778593 5794994 504735387 558564440 566373650 450670308 583280580 140146792 602951864 428999781 715817460 69110490 522604389 919280709 944311021 311519811 560545993 454746863 455542749 996190377 997834625 809920883 896170851 888868749 894811980 771672251 780131228 556092084 984144872 42375040 714642351 85529815 990391033 487286872 855524240 36162875 314104949 80834715 540979137 431630665 657044173 494385026 606312327 539415412 863310872 418869621 879363125 749328650 971280716 476925972 948286643 286687918 553290042 631551633 712462250 696402624 848445287 680620559 799594709 571135457 733591558 923867449 971018868 207535200 431833659 581253388 605085041 344229592 475467833 669040688 850750372 151869656 427277984 397286063 835820782 428626902 616724566 908497846 964391723 982822194 983745039 805037883 941198720 143790077 341116982 621896218 962365796 943955505 990214271 337009480 542165169 409130193 961965347 809234753 850112601 280007304 299563381 212872110 582539139 697834311 757408658 443370409 639510933 770958137 807488895 811526559 959014719 977463127 998149107 791423691 970484486 802417822 921093362 185423419 943729929 718060929 768214939 185963352 749312077 980256109 990592476 329278280 628090238 701885036 910355722 547242349 650939027 810782726 842787576 340643609 820338692 224290156 296418161 72395170 477620392 44343390 218783101 675838696 989313598 163882045 894156798 664074003 852205497 162464284 410383504 591767493 602320817 818820980 945434660 892365894 924545951 853914881 886459072 925681000 969186603 584301262 921733700 199248623 779032007 286312845 483038708 430111486 592771905 331118033 540144450 209821864 680867109 822092405 827539459 970755322 984590112 392532153 447410969 770025968 911040190 923895530 973156312 325447287 759237030 988675746 991615898 544043172 956365756 538868561 631503351 650641852 681870534 953681519 980933060 611728249 630552584 974051322 974873570 868464476 919868548 63619390 404502830 742604694 834341143 317286423 835387992 362722223 407531118 869167728 985158971 146983588 916084214 932208405 965399930 314263421 507075545 118392275 236192027 84088990 683640245 572113491 904562976 942788152 970534049 747897687 802737174 33088953 688697151 533072711 628061669 267540892 857512576 777621852 882040763 946069678 947998550 134443007 143241252 408617545 595214591 440280294 880459322 251734891 513872095 907715152 982242456 439994224 892451019 606964582 863340582 183397208 477818970 953100013 954977954 512873036 869743792 58814042 163699967 267515277 525401366 248313809 795528873 279740141 768932524 334368569 389171576 855880573 890250019 147713263 534756778 939647922 992075833 912428124 965529867 835873320 887228440 493582456 676834510 541027584 664680474 706216101 953016064 500164473 828846278 813806731 930909258 562919011 818069527 859164943 915832113 656517907 720437059 728566694 961175693 946079086 994151384 902376830 971033590 948673221 983791909 714636281 764770645 746584725 795912768 308265203 517721659 89303094 736347131 730111422 794748546 621264257 949420726 306532099 497311091 339944936 701543220 255427403 783037102 189321007 901479992 466171477 896140268 501899910 852723700 515705570 809162169 859026609 918683527 891006843 974086644 865062911 927039356 793777491 836597445 135036523 521028625 547911114 839175968 425241361 985740370 926500495 995463183 992464271 994532566 399931751 718060439 556422293 704499445 178949425 577464093 485114010 616011548 736708230 912392327 629824791 745517910 135748568 803906792 673803777 833345959 240506898 288304850 61449180 304661114 467356519 738565715 279759209 320397414 597619856 906508722 742433445 956939685 846483627 954411350 27630078 743502707 732193506 895268564 742986487 924751239 850167624 928487878 945048348 965953026 726693635 774511803 350694676 602158373 611933604 626999732 386169134 477905733 550874259 953439173 314115530 508572165 497449562 829569181 70131747 231341644 39351173 52642442 959340596 980392618 419588347 503528595 431942823 987862996 633321424 649750123 840962996 860718077 24259918 988673578 939917379 997233457 639790682 667348028 664565819 937983296 605269968 796200115 596679509 706766336 84921860 233141416 394067354 748705973 713327566 806992205 875675973 881130597 33994630 248371789 99047509 284465235 530680122 689794721 631392265 707719885 17657243 592792359 85538094 608009044 195782630 458587699 763207322 786028416 500164800 865258314 54606587 348132943 571293132 805719592 979554003 981127527 139118858 402461113 79479278 781128878 482922673 911148747 462100378 614319773 268253863 632464301 387155204 605726547 527393414 990622602 608789018 949734554 645687372 751044176 799797336 857423889 500819169 790891118 264538504 779646955 614904082 703673601 400821334 704991400 894264358 973314787 988719327 997708255 697658749 793360938 101777920 558630493 198456951 960274534 3300724 223246334 255201177 522043128 652585694 807302987 59800458 600118560 747263254 792950043 74202333 904869642 271728795 745036745 945919083 970877765 447818603 606253154 965330278 971214523 800491806 920624801 185668354 715159044 878101026 979541707 428784305 720593512 437382823 619833998 553573004 997904346 999414705 999779432 891573988 971936498 221844797 686368523 324803134 517809710 80031523 237972504 352101953 570233714 96450583 724871367 100176257 373328631 914088362 987592472 605999795 934195085 815071047 932484658 532125723 717734531 630128172 724721540 731737038 771659222 294164179 591799372 628636003 819646817 776370475 834503051 48651457 142446786 137284056 805950608 358685238 984122012 939557812 969600839 18164491 57060378 589253543 831893807 852827588 856944173 972061428 992528501 281621861 527478905 715831857 797900989 657339992 725491017 253508635 821410892 920386758 927319544 695791747 810911302 453122961 850090455 859516681 919080715 992832732 993027559 883085844 951646680 970447772 997155645 256822958 674357529 919021869 955713471 687601541 822436081 3412499 778675623 536631404 576738846 685426260 847527027 58085038 900876997 48375834 937361338 934433663 941009403 229489874 616208488 978602233 996137940 785207009 945648032 698026054 826692032 103475676 479444890 220340060 268939124 740036867 866372964 142352486 752551303 750177718 765773570 735405243 875633848 470824259 843191838 674298318 773659659 122568456 532518324 47007990 382047173 905591746 948948840 919677029 927853252 938956527 960337797 175566738 473872441 44260261 829178564 291646431 666124531 912911191 918085239 324552517 835609814 632737460 981206035 306235713 774758768 711184328 794096891 981744718 984807671 597370220 732006216 631700352 915604469 52145555 695272412 988489419 997792195 982282793 991927171 774898191 834861179 5287125 361780731 742692565 958965144 337356995 772926618 362052255 465280365 241937332 426984930 886403504 944109498 113609717 416585250 428030907 560238066 204375385 796168817 354397622 587306232 616963095 758603330 688616484 689677784 277269091 407788169 668256733 953098987 99865486 839799836 524554812 575938179 224381093 766622479 476622036 771691439 557530251 792224188 402637799 815067212 618041421 724550149 25291397 888811328 536686164 675539729 140792848 220874340 281522248 726469883 456062429 879755865 498268901 509376494 774476032 959647908 590909729 979551707 642829098 822334468 530947449 755117487 991893146 997795502 388011758 625837728 425271365 516907468 90254009 590925755 589021696 805767902 800960015 891616442 180268164 239808594 926635073 968713552 780974971 893546238 500988773 673873810 348035402 387185460 911849749 938833738 354355044 356332773 198314427 600413947 249372820 468983265 260241397 376194851 671388217 676879720 641036517 988214644 504593485 846155079 459877755 767448352 102956161 312265184 480243949 547613113 778976728 816577837 644281586 708840584 976392829 987385600 413147500 808797490 129018017 396501008 612533229 978333329 134042966 811442647 915720161 938111073 562446888 566340628 269698382 433267224 715662573 906370964 8768071 864771690 972148818 983104972 8924928 349207717 880651093 900977805 120218546 885120404 237784535 744287989 176654693 690605709 283695015 919532583 109389204 325244659 84378996 340973792 996315816 998760181 760802137 816279375 148208473 597081232 123917761 341392282 881809680 955899212 796790720 972652067 90411309 583687903 661950595 750834546 381258107 731263030 745327348 879757049 84742788 276262798 414646237 650231155 217191185 507452372 446757838 463258715 270405680 511823698 41818253 269601501 887223007 977778723 577355233 840762159 776415726 921131345 106983121 452772854 42002982 698544682 363207776 772424190 901594087 980067781 172887753 789911003 17607615 101751194 128469772 403923700 872951275 989884254 530490090 777709457 364213527 812496999 215371926 645778932 838331964 979086165 619041643 861071802 906973042 942974513 157575971 695746469 636523115 734993086 75443487 166157044 25329366 352419017 479888801 745158307 97020257 953231715 63667326 257524748 76495772 678692355 842225435 907266554 32960135 436648399 531785596 587564688 971120501 991200500 951342512 976637052 593618361 634978151 314148392 742183777 227624116 399924038 25721774 419609085 432503581 902164104 9148289 418940711 367384821 993525335 34152799 810149222 62923452 788368883 537011994 892549626 803973545 972037854 64008133 346222983 139429005 256646742 514488473 803408964 176107224 529103714 759403015 896200740 128473448 996491855 348925247 960000958 800235550 961416893 900385362 930296626 97666049 122183286 66783547 159299314 939371791 952841962 790885430 829645894 180889077 609838711 107337185 787182607 631843384 850874891 478996953 869769938 781500585 984874135 323597947 357008846 71655684 419280046 524087464 683999374 524135630 633060059 555319991 737427898 116271910 479127027 295030185 306295650 217051189 289750369 51248087 383601637 566011874 817178098 438100243 976601359 85972819 463127601 187695938 949228197 868382784 914833588 887773145 963010975 866768777 975558814 431604126 557919539 913170935 946334477 495555259 542561232 899033925 929967519 949312322 986932027 701856511 770604978 558883554 785493029 482726956 778851847 582454779 834628710 377680711 487768340 288963668 650855123 83369745 718489329 674485991 700038220 379805367 982295964 267655604 347648172 554197285 818163112 832063178 845763365 549712451 984005461 682872695 763174474 604228261 854745904 488106258 798172600 932997774 946818003 400545033 413974485 753026686 843753434 814433128 965433726 505987985 730731226 437135341 506154716 533688024 767168578 472092400 892094180 861187197 955308097 49670927 879682161 887705275 956521824 504255853 830279792 545793669 657159471 662511260 792698872 155614885 954889090 478230311 634175938 242295113 289968908 945869498 996663944 176821922 819191503 233417751 959533295 767387312 871475387 749124151 773483324 779201610 906780487 170217839 965947444 237909198 376184167 398307609 879277206 596788408 752979700 406645788 503429377 853682018 978592187 662237942 909895771 626104673 802758037 174121452 949046937 129996623 761091087 414281417 682454172 523359521 840613913 528761364 816176887 333160589 599708068 72973728 947285122 763392360 770991684 396301944 617433031 435241100 536076449 169467422 207140326 655505354 890497979 829161126 847560999 263402994 398138626 623879614 978577761 506877656 876990705 100783849 696265758 876722840 994378140 743742216 822970357 557145584 656913550 288895132 469917344 178707666 522089548 89095245 124095715 109655399 383274929 33903113 769956292 864826660 968531087 398101607 849827149 297636070 851376523 927299375 982814050 660723499 694165026 917070657 969094113 451731843 946355231 239717541 594112633 427247566 783761441 517933980 818192582 5890643 65699871 304320192 618801097 297477000 831210796 61836153 765648622 569973053 866447323 789919722 856449304 133344209 310333826 908795701 992049464 830123900 940058612 592818691 866049323 829371153 912523340 440012450 837860475 570574509 686866536 923910259 974434550 296895079 422981289 707467687 729912028 306958762 602225926 502833501 853112820 427526304 602626851 628863086 675530725 495767648 675583136 544514977 775041637 865065517 905453170 241966326 393776002 105808649 454794726 964960920 973071969 20004122 300579140 69940628 345153405 857056721 899310384 3101094 999273485 833884668 989726128 434825357 792461693 275800625 823366968 644354370 654672955 125862860 209624866 791190441 985924972 25684215 30253486 689729650 936302333 295168643 578822353 452095065 969925055 639937011 907740350 292344702 855213449 980836262 990795423 925538511 977624196 605384593 630734345 865919851 918751205 785286025 873358389 401190937 925220653 64321201 689140562 643910774 717048944 756798953 887479579 75051634 597274902 83174681 308108229 372333125 700943438 121727702 900978017 910911436 948864829 753404402 983216022 319994322 360180317 384918940 902061990 707485802 810633474 371376406 591252013 614680231 717690875 208106878 712012795 580390868 958009783 195242248 222996044 738312369 781895963 861283604 886013421 205709295 257726968 905473021 982179825 230804440 509467433 558150842 829398813 470856754 520170568 140804640 553465668 852543354 938166848 368951647 931896324 735507076 863413326 324438759 622587706 632788986 996942687 825262941 880100378 754910017 859462970 603988921 692603592 18957522 733268994 637484672 680154197 180474259 548729913 261321788 498017234 139450851 233725207 316584392 468911574 933253004 991032534 153433222 635090070 399203588 721524921 561892208 900757535 716241284 971964958 92302320 790765004 192733546 405833059 921749835 930225301 186797328 310726797 40993079 84988143 730688758 809335774 479709280 892732117 508281518 870869252 524340352 804748495 339243386 429415965 135125556 242188132 569018457 962888938 775791689 973899999 878383075 979936094 836012762 882013681 515540874 927977574 174219418 855269668 151371919 673003006 64855074 398429618 477895143 852938150 703512839 852267936 482223349 550367801 112120484 451594160 122572248 400566416 174585053 957952914 9242408 835806441 406231513 491159148 523955845 752131226 932557384 960826070 21779376 374128820 546846013 783293776 419111863 567722125 912146814 992656391 205512974 510284023 561065624 776601259 135131377 396488677 120145150 852854345 848989084 975037454 490949615 677524353 198058962 646770593 845804987 878896216 660485684 904640956 228814044 687158387 850086351 934648503 807290801 948941392 220645564 714417125 892326095 980026582 329976535 867540055 335585074 515449564 216642889 264015989 988509810 997307238 656040784 979520091 969094093 969593555 878596069 909199915 57400501 780545379 773485108 784583814 508357585 571837018 21890570 674463222 771433245 837609976 959514796 995935394 871736844 925412645 506367560 508174509 204586629 235984807 703284250 838784046 922535286 930930879 456788146 721404858 648447044 900283540 233105513 613024204 310827420 718752657 517379517 825508051 857869734 933129631 654438416 658968359 628882963 641202192 46545914 334513328 182567022 535188892 621806317 803845066 770615588 831156823 881714434 915426920 957591296 976869986 852653902 989280104 877907206 996740859 123396938 733417610 169779708 660056104 550449672 639411570 923592360 931568987 580645992 659102859 324531324 525365685 767208568 982286925 898108535 958894803 932484941 981871862 336627246 673436133 618272475 801095343 250152538 355735020 545675057 828544164 960224832 992272374 575123239 820568858 347638177 795010338 186132627 648870500 558840372 774701605 521833610 868908178 383966116 910015087 589490245 899205406 822618655 900934275 163849633 570129285 339601482 914140664 813021691 966696583 4289437 415026635 847619645 884554607 365043085 948754641 297667910 414429476 143797865 832232959 450037284 744405836 753998772 848051185 411141907 624582506 172461405 775592690 380854984 541605552 530885105 689751069 108734249 202314654 81074410 378676187 738562352 992222117 107947 662526122 239267498 793974146 209620216 718757810 538877891 663116754 787897704 851968537 772271100 924397465 301136605 444648123 55247142 391471134 228416213 967740394 557228816 839885214 273653080 617216755 429372684 702596925 709512273 773904138 303439612 906106695 854747329 985638620 106377068 172409017 930758608 978888339 153393376 920246250 824898401 958264718 400906135 586430820 432255591 443873896 984030439 994173576 806410820 827664049 95362467 187519246 360746118 573481836 970261072 983431833 784707428 963156113 737711674 910871491 574753906 984515690 973378125 986822045 257126717 732019060 977489101 985204911 911927393 978480340 920934420 962571845 736086812 958924471 430672576 793012741 753406417 857406818 108337020 676971199 222277188 287890465 557421607 930522662 105933949 764270334 712026752 843165226 898165805 938142006 991220930 992638740 943594466 952925579 489445578 779475756 663217110 833889217 591807564 976301191 999668666 999764808 315970822 393538773 607356838 729248971 548913804 971104651 662010690 975375674 115618607 151097204 239489198 858013947 75904783 511884233 925606527 990747013 527922476 826709977 498936656 661981022 417957844 732193550 200821304 746152090 332531750 826543432 277565275 822272710 575273037 766995120 262052802 901081007 502479609 978966670 729234830 848856697 256485273 995788452 781202345 798051945 349205088 421599959 246185974 300704415 795962938 933769621 391727011 973956971 719852799 767163723 873043942 994079942 660233330 736144402 698256659 724320286 455396324 781955295 818524398 906752371 893248701 979027208 400958703 445012340 801531293 983593120 473326653 830207369 756283037 978400591 956311896 965903345 705061640 975586009 843650947 907288000 861667401 949034458 173551293 771228897 384438677 810325847 684968297 843696451 933844676 971729417 695164025 781084760 948386115 996039521 166194704 245949564 600235526 718656384 403792730 833937708 575220072 710221294 254411404 709473473 16158691 642197920 318864544 672322124 686323545 799348885 452875347 684859051 748359578 997855962 354560020 450193879 425245912 832800398 701176719 947624690 131930022 619939028 902411983 987381553 921619989 949064955 336972522 925567242 269932260 843013970 425744079 453142106 849029328 862795714 978117817 991819877 544257884 615082828 5471441 942770711 907660918 957666987 719106698 735090041 974537295 981478439 848435154 896438558 763855451 927730003 718097790 888780440 3768476 373722800 140249525 681324795 930335587 986781719 690318783 693264456 792847126 909641653 497757367 623744421 473520224 791059596 315956607 397110668 676252244 798644991 860818029 890833937 611312158 747176834 986384267 998206192 890253269 972202480 820942424 863074279 432778627 859601379 235116207 361873119 89128580 290753446 508695136 850990909 97442956 604901809 310013142 709706459 449917242 963100910 916704111 923101971 465328537 858138139 761010763 786514925 972966350 988938027 918295458 938898913 318234946 381935489 596061588 921544421 234191350 492433713 379700165 800997778 975394004 990711790 822866978 940434287 640220496 840911414 837943378 982067878 296332383 579512992 858916922 867086523 276412426 605414517 249642639 274745231 371445716 754241136 440945948 756548872 216589353 825772133 892791361 993158325 82305841 258986058 876260094 995560688 166483301 653683813 933459379 952492973 391876516 878451964 210232245 341168801 660733537 768564954 619038430 699241686 284159027 550332131 893007691 893817125 469751347 668379187 40027321 570849858 41979979 815671630 451059497 895432804 255316532 785246956 49841888 261868309 261915315 363377868 688719671 985271082 663959093 866936309 847533797 854734493 519334417 659893637 785702730 955470477 257745555 354175251 980473355 996501110 693910237 995268295 355278459 498319385 66342516 443690896 128813493 456121920 467076879 765678867 288386373 767676511 593437563 887924930 294100011 599500581 942206644 955702640 538719029 547793898 541391029 670977338 561831671 781959618 317525544 456772773 532337409 700627242 508629033 946945560 376045148 509615746 794912176 849216500 720003938 862333186 255823551 263075339 330600261 647065931 614174337 818671530 201771890 580467150 20659308 410197114 804628224 944932792 554664851 953647029 513968509 576936508 869735883 870367168 883568629 890190083 837411731 918827289 89002326 314271935 389621963 561857245 953056344 997408702 200601392 324713644 471933042 576420171 371982749 718320679 366254806 961341983 940014312 983071852 896437785 911560303 751697690 798637040 538010209 637758907 397852743 537693009 593485008 743063926 991524237 999112440 766382551 976455549 764645923 909085954 659255439 730076589 702460012 771746385 256651697 365875471 104129709 842930556 988283991 997102191 964962347 988549957 208225804 566334629 249200410 962125625 911759689 972956799 225119383 272616139 504259785 575625804 507579199 565162972 270277506 788345035 791097928 907789200 407865567 951918648 280582828 414640667 494282261 985320024 8912799 47506353 335332896 821864124 147458575 884646666 663026790 786531197 108017080 483745721 53172355 673849644 406202892 627999074 327549835 874772134 607906113 905436424 280654017 560836541 13730182 106966431 546757403 786707532 163215676 320993684 975967024 987161773 241110787 559651426 827450049 845079774 124591292 479757262 907972246 996610652 98136572 976372749 611653268 681722867 803591648 966102115 574575226 954269108 324114781 762810715 385788787 645930344 95336778 775491779 295179572 357355031 301927450 380105043 976971743 999572002 408510482 733633608 33526324 843598983 626539346 845071374 561858728 751563545 939749580 979724633 599064417 650517664 279872199 735114267 793380075 823660804 175173888 614262084 575378953 695593305 547632204 639842975 986665636 990975855 417802508 711555833 417733152 783772396 857893314 887951257 20142484 872289970 840485712 983428226 385178338 728037151 748068977 989707639 230761135 932125422 506559566 520150255 81452914 676271008 784285374 793428524 930310707 977387319 520837026 942401105 717132369 786069339 194277239 935838708 121314587 183541340 898945829 908342701 911128680 986360103 583812944 991809881 127896366 162936559 919546647 932253224 591669641 711415652 986494335 999850720 923322770 962614298 610139181 897478489 599468187 899182047 441535331 775894206 49054305 381313251 631798370 772414417 420455534 827918736 749642604 984520789 706715081 775624337 407886655 475187533 606656458 756140001 180262987 706068060 182286624 344169077 784754217 804712465 491807309 857567520 151612825 887561242 279032403 790714562 494952852 948041273 538001451 720976233 684282253 894131946 948736744 961511039 1620471 314114787 238631155 288815481 350321850 358737421 488485011 999172806 335989072 883071905 440122462 545372121 851104571 907737826 633248551 643838071 305610501 830782321 701046124 987851216 777677021 911866114 783211604 831901200 930627069 972334589 330189929 503011979 104629386 173089410 616634859 923615463 211915545 537878643 694907513 982804985 729206837 771475558 561291437 866285516 265669534 782969114 871889049 988046433 287594990 954115946 768858086 942503529 740361670 822192343 923346045 975104257 940082098 981474541 68648848 651858363 978730521 987052350 510752260 726701613 618927524 771921570 267189103 518989224 735941468 784038331 281906713 541240751 421137082 482002910 746748623 953528768 944591203 949957774 362699452 982295191 707858167 907241619 730969167 800654358 406902787 700855777 897565801 924621940 867870260 987983381 547550558 589182608 116419792 534935443 849601774 854008525 521654583 550372586 854467176 904838496 295226765 533708226 130141498 160670775 470526833 620223831 324989140 649587843 760279248 975989593 441539214 517032578 890317769 951064820 643430727 664770554 665908984 824049641 326165191 670249181 880465940 906322634 425405396 740663358 647512816 830586867 971706121 984610726 931453634 984268250 62115999 891818467 485124545 744098669 702151006 891368190 607168742 665298476 634919995 781376118 387348337 742943069 770354503 986685854 591801542 995215181 581753823 690953681 345994371 627216042 561582042 822643801 463848225 489149237 811441513 813343086 379421825 727784300 110505411 641745411 249712738 798281593 299507121 810045900 116453011 833045618 479753405 684667565 274564 919927274 228950059 876909682 626899749 892809621 2387871 634656287 210987616 843882360 48050728 936267443 273363384 904586336 326709915 695769339 806155911 892999900 910311499 920062402 431976139 558407825 576668998 698959111 357196019 714986873 936481775 958891746 265135202 281060201 309014279 802689507 854443288 879216425 204685174 919237276 434409155 617081459 944216163 954160816 463095591 999995299 991567517 994206035 317388176 732723393 662057307 776415271 575121498 715746812 692065592 877124721 667154566 833876898 96719322 522802695 871727171 926031537 466690344 845767580 370165441 453772179 197400106 931956892 141617070 308302414 840687392 916057578 670408873 736203374 393725099 669693288 966833660 997287235 368343063 664488290 735107917 744630765 228123506 830992468 59961521 546404994 862027180 912743903 138601095 277703389 341861164 508002084 518330835 805098304 703511099 798487629 706523009 926924128 71673235 396707167 591649121 925209554 206466675 859959668 80311233 969701613 655058767 824073087 188211920 536518511 105226371 853662365 249693423 705133856 113372197 866232745 487594174 724093315 588631472 696983370 645055493 987023904 692099506 722990468 338245905 599631090 932158310 996037651 931034879 965919164 962573419 998614285 417831101 607188617 644580109 885622813 604735600 886185649 272872718 700032239 682140811 756761884 807662332 834006915 353030162 354334082 172429321 296483017 99051255 264273539 789250204 988060604 922137165 967164524 984307702 986483454 9292340 666793624 357242639 364225931 951824934 980355439 215223784 597739813 378572007 863413101 565304592 777637584 511943826 859069629 542778100 795191296 784083248 895926934 39319309 91181551 364238547 550942044 706131988 797248349 623098830 741336000 672484410 962549959 253074925 356168831 256120300 834509752 376443059 547588301 485919382 612686913 174613047 855942839 926554613 974658841 845867867 923554471 519265835 569925274 433935309 845843366 1326550 675068744 776367638 997666132 319051614 752386211 389085730 703268416 835448332 845482939 556472345 760383948 410211763 661955323 869445431 903203542 764683211 867318657 314058151 988783652 995979264 997677063 443103493 989980127 613427880 784517598 937490367 997991405 424438382 616470691 362228424 698642911 861051166 932776572 339820689 919544566 444595728 871741222 743667108 914895092 958498439 979448915 878207875 965283253 374403921 809551646 861000627 881054553 283727576 853540776 382597639 775517429 826417942 945355017 41906240 972806281 570163322 575888201 61916154 105308006 524377196 935378521 560179070 767162350 806904002 932744369 251360230 698870110 209370367 885713333 479600729 499873655 568885238 948569220 291368998 591013805 85030099 571849871 527561957 563490407 113138562 504229496 782088135 982529456 419433358 706851909 757336283 821289845 66752566 76432984 990044005 990714663 382611457 904783577 999290459 999543218 543949516 830955223 964379545 971240461 985443866 997525095 62779212 341508076 109209531 636530444 43867076 308517241 284715042 607810534 964676653 966059635 689722947 815065946 315734161 914502955 644455405 959003198 747248952 977111425 611829391 624601428 404068699 714706162 303489258 332915979 300152700 479444270 8333252 664456312 831946050 960706321 279888197 977819325 244853446 776534002 70323126 537975837 729825760 798247679 655710007 748322938 14228227 137656769 550170764 616132933 503315354 759452744 81971384 923843335 286690160 957075410 134706836 956444277 344025431 938129949 392956000 493004966 638019157 730985722 323657382 923560811 653810411 859211928 78541384 419247309 108315848 241648652 962482111 998968858 142938952 381368907 453547005 851520743 564342636 630860156 867795995 891008095 614930946 885459600 383333171 480195205 652001308 750877006 825415499 961765976 541828092 635708670 260002977 383704582 537239329 889907539 672296373 885814332 348912441 666149160 502808143 588062118 584137856 922927113 856049949 893777554 695982112 823980559 958280502 958501537 675001766 948406522 41375576 937725405 682723087 941005767 687090498 930391563 537111506 802360814 405259888 752592903 216959997 328270826 27898492 605540321 177217502 568077062 151285173 420999768 178680487 234100379 765244422 844519150 638847093 909012101 821384168 997568392 130595336 422314833 716128924 863702430 403538851 753760948 915271156 982782917 349856229 459269853 696899769 805790141 563163361 603725011 429067430 891990001 473269834 533844291 990513320 990927799 510530128 705300130 493079345 850973023 287049712 946371635 309780539 546632283 940233533 958714888 835399383 963640890 136034801 340898997 475998834 836335946 157029675 693655535 404416531 431502362 87205145 336605014 573657476 902459293 724744304 856281947 604118891 988764403 271288562 393933091 915285057 968395638 558962776 997678870 465045903 542096285 799415130 841664266 45737723 245745019 89775280 673553979 767567960 876896525 30598653 312134054 953534550 961111553 223650449 566195744 180961751 950230710 741741168 927830593 70308279 961919147 52227786 93124182 828999552 832672140 211386291 279372922 560134566 775885664 583881623 787023223 288045140 635752305 782203726 798166685 16232395 650465490 391029594 688819137 169775588 557932845 818482703 830936140 115954695 892671595 724092472 801584557 607752342 704632919 28084995 877948945 135243439 798470161 535978480 586822569 160797996 601904639 587043793 857621192 532369566 967414775 924505295 958520469 58233170 229046033 275926499 886711593 262742161 979038161 260822312 993124603 729184147 813593431 317918832 625527032 788976350 852957165 801722149 966301598 949030812 997616863 255696526 845196183 171020697 966904404 770780793 964071036 641441056 719036636 416456576 741659767 333080310 492959671 138635606 875658708 49458432 898798161 536104069 731891772 893428462 964467397 616175621 711582081 599089191 807899124 546725980 890810089 905907210 943724294 238092309 576077233 834912453 861305750 237771545 625121959 67547408 307118752 166690809 352509592 414487266 681781924 542403455 825653486 85141642 125746788 875419975 964270586 5141325 998629925 775138257 932371469 776716118 949778569 360823939 695865132 697698308 704345038 641463386 684681275 494856778 824627788 432822777 612709832 130586135 225089501 884198885 889100695 554957899 795755210 766612909 812250729 331004320 771647352 543345118 946784801 427992537 991037776 322951664 625358377 5530575 247675856 148863415 660752905 713768569 951080176 869323725 895877827 224002089 924844218 424503617 472630642 607997071 817385103 988222277 993894452 852678659 977289551 594138229 777177131 71899398 184785859 521450271 961070736 937881301 939494819 699286166 948778487 669024249 899010942 665694474 822229430 558568343 703647016 123832638 576654501 964275164 993753492 238818615 655631253 736797007 800794976 899502056 905542220 882308607 986793880 45408837 646919826 372188895 468277060 786613667 954596517 954256953 976511974 443904821 496658759 135418983 847493004 298926067 635570054 217083914 864386320 175274018 415661176 279801317 806783139 155240347 265841794 772957029 807327094 868767582 966085388 562673220 775220502 888175485 938821405 554443689 728061403 945861525 964184462 821026541 994295827 511899770 822496259 136934171 544434589 786161309 870752772 770578827 896039901 916704681 950825456 209387035 280402482 837953840 920321572 204723819 687684794 471476244 605177903 452492800 673933451 523980058 931263251 941853337 986753111 508894164 817591095 714496608 944428356 216853706 465682497 3031205 446275252 88991054 909316056 702712408 914199069 447637107 486324264 258219663 675870601 939509980 940950988 344864128 348255577 836418474 891247668 95420421 349536570 572241526 982007368 382142642 855703678 49161744 430784712 737391708 775923131 191612019 986797754 773814023 869217821 439718622 603181313 807232565 843949747 482422683 679664765 875051385 931110994 937099587 952284863 195013059 688621079 62919315 419559633 705898728 953088699 847767606 874941571 738329732 994731493 904093626 977339746 190283177 236661474 165720812 427073469 633349364 796043772 155545917 773298311 807991096 981332733 964114972 994301137 682668320 885774435 329685111 683540530 989497769 997169629 642410032 863510611 730013242 996995258 345923219 822547129 173276843 696806300 778471925 908365359 72274529 485519894 206552392 355840190 52364178 558154982 494760821 812788472 603024221 872606158 303933019 723518415 759190493 961210177 12207924 636441882 957432659 997714244 233377698 852731511 494251361 682023893 829751670 925823937 245543615 598052894 18298483 103452887 103184844 567885388 809259634 923746971 138047651 959859853 147112197 379935745 464692458 655361724 471371735 841048469 855752720 873950074 581453843 881311726 512667711 988277950 742108730 918106581 454164816 597936985 756875902 956547799 917564802 939905640 395124289 774619362 469239585 996653283 302255803 710962814 732012713 922022635 869406681 939236811 682787900 908801489 228935437 888377824 296572956 357542009 23708385 62595077 527864622 666724605 651537420 802915768 540229490 879767237 923829927 933389385 934045957 988160760 748564954 771824704 673213202 913493209 36039462 790491628 283137956 608219525 697149759 990095049 594244760 865830115 884601145 926307439 786845818 808991014 315632005 433403360 884240822 981241821 946671434 975067591 657539138 978111194 802173100 999515275 783904560 970396175 396030585 513798399 316754642 479914167 519443492 566009316 85311493 430510681 912501571 946042795 75017923 395375729 427061198 472078315 948418764 982327911 269817833 767347026 782318708 857118840 197898016 826500982 595112187 796082659 560306148 969967194 491872584 542382011 371989876 895721849 630396760 790271850 574315844 909702469 840967380 909973156 658274164 737101193 804796351 827449437 920657680 927288189 874711327 911504678 109184242 183531542 718642933 896637488 988744133 992679677 530336904 833145269 557638846 627934373 975248645 988325798 796291043 796579203 95787291 885177850 609908592 932714552 161459194 374866070 997094037 999144668 210050469 963196541 568124981 614951668 52711381 57509806 541767916 854828419 888891862 935818468 823535214 921137996 970179082 993398692 35502782 746538443 627463187 686342769 683777679 750490441 614732314 675401966 174353315 422771409 740290085 949881564 271514579 322980606 350521894 745009376 489210727 899622633 863876014 995597200 639837513 891145810 700131666 714272983 292290203 973395523 180296420 744001737 669161718 752438969 155782365 935201768 936027869 948401468 318308746 621155350 226749641 940762380 522315417 821950697 905502675 954368011 431226253 843906416 657814085 804052120 5259619 570166740 933309121 948433776 818044901 958863968 987633027 988762248 547893523 939996178 93921150 955878844 864921129 904003652 119164980 765826438 874394096 935341635 634455868 863213669 657515500 877347985 877372018 891603670 950841550 952376801 33825167 969768209 275272677 590922455 704444534 994775465 865083812 963474772 758999578 883339787 434251903 585426197 811654430 846981265 612417173 855464473 459220834 506871342 243402110 880721605 804127983 872414710 705889431 815844617 903770996 920521493 115541587 961811780 167128463 881538917 716475843 870442889 556389957 821992238 825600706 912393726 741904062 843664766 308394315 637863109 456698125 514829489 884770182 941975337 362017913 884507644 540126556 779175152 18055731 144777467 361377825 797038786 544065143 564415798 27656356 651416388 419360815 636229284 531544892 711182552 871927011 936907678 369722928 627045944 318625194 889010578 260581787 847698435 446440596 714464533 393337715 759304626 254468780 567564699 256681350 605589523 611211378 667058125 329795383 403065193 32251268 135739665 338359034 951488242 29313645 272860201 566883973 569108730 946603134 980728634 150122645 948547541 740611567 782789365 291199259 396465298 29024487 800799886 480033332 484294292 389698907 510713576 557685838 574581868 679022352 739938813 996307454 999406943 475541720 734916565 169023954 553197341 626408400 780891812 948874769 967076164 109922313 332557355 26585147 672766572 597678468 727306570 429985974 516024160 224668546 769670686 331981409 879887604 128816548 831389041 803570828 930724166 754304042 941537350 828553874 962837148 742830581 754733944 524379686 906642483 838348653 874924376 86193312 993200273 900399183 985085861 801271035 969550913 269509053 334354842 187489171 997496062 480231129 875557555 595013654 683902999 698654616 775020742 377418043 653593562 333774879 893635200 958933909 985099635 555096700 944512605 134873834 579422656 258529471 938979597 468175327 884964809 715299391 986044079 989465732 998421734 875818072 941962398 752483035 905911908 827276739 941704461 100018221 844279046 438095427 525648913 632012224 819860498 399399435 793499914 671866936 803886870 87289829 163191276 26463100 567845017 338563851 396300229 389813576 709636913 249806212 434839344 300967454 880112025 770050707 971549777 251045651 841289533 486091748 548116929 722660466 956208956 892015284 927027986 978159254 992154683 864899668 887781973 109918916 431387206 501377248 752874944 739715210 769746914 715937904 972229440 758410866 796053960 532780655 719154759 402547391 811369337 255525931 629352130 176316094 306157820 849119038 850401238 925481998 950823565 833199442 917917841 844500771 892654539 7029763 764385292 181916313 934372369 151450384 948758823 601363586 791075957 174848452 997808653 582517030 738732701 785237513 974763203 425967951 611789313 413666468 528345314 239225245 515266728 283280232 546593893 267202242 322242855 516274248 975261125 716840653 873712788 602602035 621835911 735761103 867079176 555365731 625963740 956618854 975266004 253655162 798180387 253146464 785886098 176761354 474223065 778235031 969248244 103807382 655732732 914915043 924992321 264113844 575458187 630909834 740774786 345366598 370460620 376547487 912350137 111924746 595132606 562122698 888549285 120986729 461854780 850956554 945557142 114334910 530643098 814988636 982365830 184312753 328498657 51197203 768230775 365705359 710837040 807694073 905420504 666397743 682407822 530849343 553148695 481077046 535338731 444945065 620918318 461904287 622313741 257192527 419782890 97217764 179950537 335207354 694065406 263099258 340131080 439371884 967580269 485491249 761490747 306248781 835671210 511995310 513219641 845522351 997344411 135052358 692309215 93585265 100071578 950836964 967758140 389895844 945477829 396044456 669387296 787564602 886379612 386002028 694761902 409383551 525979811 458791590 516179500 902568971 994144493 91807943 319791768 797729069 928133206 549965997 755717798 280913868 839399045 567436750 748129316 247249700 498287534 107526100 112286802 564387402 618485232 541251016 948267725 852490830 894990293 685878126 856773188 982535189 994946256 889506411 973635687 380132259 856047175 193073543 682854179 397062399 579348834 33287158 468432498 894077921 917907122 368314029 988888771 101462214 788928376 692291556 924542651 89658589 225665703 104210443 842214157 176313371 417834352 156917382 674374592 169060963 783622140 82912242 429901221 283519034 455823594 603050971 623409142 630369669 895147679 943388958 992684528 220447727 822113251 386875055 476321874 560103080 727290254 822280590 860108186 663973503 730807635 821214586 960342021 440141966 837324680 649250767 833934198 90824422 147941398 600565655 890678847 479700580 796736930 296294999 457062380 89493866 764389232 670166657 737245975 645916750 680678657 745230760 876832647 284229898 491030708 273908225 326032720 936416565 960455865 156422345 748009711 876496322 984637280 892401050 937857606 833988444 996818978 148332956 335574745 203206303 301487560 213128199 515003772 300262830 421155354 757279413 902279101 925888240 969748809 718074254 822791463 969286913 971069403 884308570 915203085 260891140 423905516 407301261 978169455 698486523 768451805 940053041 960317161 821387916 889239644 796031095 866925229 30338263 365639871 208402689 995041859 317966584 635659686 379687691 990726728 872114129 982013534 263203323 742049805 845819328 927981882 763614304 956752382 182409704 507689677 777034264 916507724 673557778 768126800 1842833 300252325 831711134 922840473 780787592 831209566 692685343 921422065 2091572 494417988 53577818 528782685 935100590 941874889 11069481 752301548 975041622 980962049 268473820 336374999 306468082 600043378 251331647 453586953 474255624 585162625 821769984 912198569 770706665 858917283 848475923 930309990 466047659 960583472 830867618 844985038 723218071 754726278 497867447 895088365 88308633 453259129 550185746 721377211 619135149 769096785 161377846 891825813 929503990 983164604 618472058 993931776 818455349 939933604 93491387 266699529 349146163 858040378 662731120 892715788 185507250 608465364 633104245 849883414 253070224 677065698 696836047 797191926 327782158 768349065 640180090 655100266 869957716 964605865 971900295 985372033 29311726 823904020 720235416 747201444 725890263 845232370 453272425 957548472 44875604 758090222 843352581 891267481 6435048 824742300 629085742 660545959 951720237 973668389 127826703 627898009 412352245 730192942 872100874 945816097 214897456 727994509 924033666 925772214 431340014 950505415 192012877 457760420 762713122 835186106 892635873 955519866 309328674 483981386 872156138 915914616 846340436 873274994 905845561 962350332 521448008 744775868 51338928 965304209 640271937 764361198 344038594 864308396 426004978 718564412 836670801 982508322 64086697 298111901 476071314 839905616 665585561 938831376 10671627 97212998 102113760 815180947 92506714 742363785 693051514 733340250 498758662 799630795 205250184 622086154 243302583 934653116 264308432 654058014 610980661 636174612 655630454 939614730 865229019 882943683 299137255 382976534 290870160 719273044 322612787 512103191 150714381 792955040 966398653 984918586 730351399 943868120 328796438 903062051 786938346 869837014 466644043 673211695 167127526 484133677 982662771 983207475 543474940 802120327 358231107 898846691 982657735 993849743 148285756 398945015 390871389 533446721 262005394 430528501 679236820 774870922 784141728 806106719 995914564 998396236 552231387 645332934 53334463 760996075 15439996 918579101 801567577 950372001 797262277 862870429 278612849 451686962 828202093 964750616 632710800 828474577 41381203 63374085 670744123 919922857 395138796 938882232 332103052 365093348 226747419 967545973 609940796 813886206 340745103 493574993 231980181 296695273 422691905 747029412 35718547 139376869 780974364 917149189 520336204 887971754 153244736 526399087 450671641 710620848 756449400 926175335 905594307 952311672 609451896 861492817 108237428 409536635 583689582 976311767 770950176 845521484 346689486 852453806 50504940 322613267 954279906 995791112 557757468 638207881 253379728 672484169 754892869 990961219 529359533 747355585 840651239 862025007 762114211 911714984 568495651 838195914 190415984 613710814 280599611 636143939 229537821 676946915 508443131 558062794 718391891 988113787 705070774 891285018 751093956 820163781 577337294 613630766 1325853 357734656 352192913 805426268 795717847 796855510 931363691 972303785 343033498 711997216 317686045 698487561 407057167 991484586 233817539 870882318 4488999 585014694 154253317 850482385 1014832 805635622 138301291 342027214 909518655 914069752 968437360 990621102 266184175 399393694 721102800 963172159 622721109 906750689 40016022 130991463 470045490 916046557 116961181 716346440 694575257 926066397 562158687 641460147 716093403 763582453 443593483 639314617 140432577 787975310 505067983 989767823 686081889 996839778 25764965 914799088 768463634 820289023 500333990 684280551 276311864 860047444 923503272 968888063 409959398 782756546 637211200 663919632 844520711 941614291 649227878 714222620 889512643 903970626 424067271 545209614 112944292 422361519 115368292 158592102 673410560 675156459 50844475 716731905 636058049 915221399 810466719 838649099 587353054 844195993 449537606 685823740 335847239 863153585 269161090 322331673 638613513 884582476 305198203 918711365 314162273 411658075 908227940 942151052 577950140 813638367 642850123 645497640 940414022 943395809 732376971 866145276 954315561 988248298 345822499 610588352 987107666 992260279 52511777 677371561 321783978 606004631 765740861 767194792 103851612 610213296 164477258 883629760 276198001 302341863 526300060 837528201 211653559 707228996 321659368 680083221 502379025 619186424 389175029 514859212 369337743 674418605 709064049 891098051 567615638 980609562 38942613 567493672 883990836 962392341 446980061 459470089 410425122 803819179 5901058 479153902 8128728 421088198 385461305 444941125 316026268 837431053 277822909 455620003 998480119 999539206 893029273 982972492 313405308 391569501 447095905 989638461 501121685 830487542 687225035 863958047 676778355 706571236 392740741 679469349 707069623 903906002 347363444 992572212 205734434 837345009 996606012 997507668 130928962 890618970 902345024 907980349 572321233 614762749 266229167 793415490 973412901 976741147 413889348 429303009 885998400 986967984 99854334 124541366 973442703 974628457 604849882 785765887 296806891 383395239 550004427 932436624 670652859 672414361 350830657 790492805 450110144 653236135 193089227 998767730 420893269 966556536 936381404 970993983 784502165 916384839 838967427 979261535 580476059 608793252 572034322 853088503 226325242 964947567 235707988 279245781 823240352 907039903 864452194 926784886 47427418 382287263 875395143 902378722 609092224 897037473 835257583 976530409 188758598 813498147 535464645 573978877 180116256 382169072 931643019 983734110 696742338 816484068 566125521 652215944 747591539 981993818 761282651 849683596 329749020 691536027 529894714 598152087 400684981 781993657 277032205 845542238 775542046 906042244 958768469 985612601 526138847 726029002 585351370 833528356 2618620 43445454 128468437 798292169 279771677 568231961 311692645 895305707 623129106 968137859 560762669 588865502 900151780 967151256 197070968 234657436 188157743 652189850 664208228 746853078 110663685 799587251 643515661 853190762 928402320 940917154 33598365 104172860 259228974 743595979 752815915 857467769 272347360 624252375 259637922 371623974 819147506 947241396 384276929 893528570 329447892 352761645 220399685 482768753 138273276 771743194 410667624 554526008 42778676 722733968 769730429 975311650 637334891 865848779 246997198 926061995 535867561 608719550 708086189 829151486 535092549 537638180 651304810 738983480 75039614 129071384 321328153 861575984 6397640 500065030 302320045 381281290 887358246 972584580 579097870 618309388 461533448 688467996 163301776 813031410 548753170 849278002 352167443 798136340 456110269 662502723 357644431 834033727 583597744 742428760 196635221 520466155 285356349 650043733 642879742 770586015 709618 795998703 328125484 558249955 978653062 986548815 145393827 501158488 36250426 812118313 166807864 735665522 682807146 921972744 385339289 465640920 687231533 691084118 675425671 740616292 687335984 767851368 50475220 106084259 594852279 626698656 524431600 643567090 743770741 804619452 948135234 948342613 200169563 964804902 115916152 169000172 446467242 468203379 128039758 301224497 816200205 953593200 490482743 571840840 970000493 991696688 460255443 593727350 960668478 981415528 390004898 420143773 865641809 991099369 344801227 931540602 686533704 968500322 804848224 997826137 441224211 989582537 253355117 818531543 62803505 907139124 147095315 773792478 483102296 931078074 189994543 257848797 374937301 547120282 714111562 926198754 979945064 991833350 655375281 983035932 978939707 990095661 998818817 999164116 500834340 707878791 571402921 776655234 877291120 994059716 941845936 960247488 884571358 991856184 323374514 953985664 436052066 470206201 209103571 320301374 104259054 753228930 535896882 800759838 893621011 979599199 453538955 542071347 147126463 332734638 785659612 865307352 861791202 875485237 923612271 938933057 432959442 820602072 23874794 974742528 194079972 517603296 515979745 553928860 160586327 841752674 264144413 785502854 439481340 577347715 723780523 869407193 56734870 342455648 112040985 708738646 446111425 870220518 371456072 630186636 275403659 560768082 522762453 928134020 339868829 523355453 211532141 912744653 483359608 942211510 565139921 874606651 525659747 806953726 407069879 668236074 415356800 823822107 102407209 618426068 224039851 655076954 919256998 980607842 210237476 312635613 599176930 690182483 771268070 820309838 223740826 944343329 608938504 681274823 83555255 660252531 582015802 948007245 516850164 842542625 320703658 486494448 820607674 860537132 307636089 981402824 347436437 517782040 233185128 949403288 591972673 909351221 658208151 759953505 425042519 814502233 819875280 872900324 439180112 821198261 640504605 816488168 612937082 625341345 227524694 822296147 898559755 919621127 45203158 824166614 78341476 791287639 166808525 589912247 136611037 780512725 312902757 518847667 691310313 710746647 205810907 978205762 220807919 683311835 772803995 899631476 31824106 870544477 825744672 987286475 188688357 802574503 98576925 210362200 831566065 851805280 109950867 247654010 179440781 787030188 914547581 972696655 79298170 237350855 693703197 964155476 672506444 962191626 456108265 660979492 293463295 967254971 635534320 679224958 179225377 557266133 197422816 567594221 380753860 804467371 931476156 992283278 517862562 719805497 634322233 849593416 36947099 53579458 277901479 666209423 638255742 879078879 963738589 982760551 592253616 671594956 340525616 474496257 452113641 939044078 115430622 460488929 49690088 810389138 259037574 330584906 164882466 321765671 681396660 897430857 962673727 986817169 386860794 590900538 723781367 729348362 451496745 592293929 138960132 925020534 660505040 982831396 35285290 849669147 415398620 795580959 906117326 937695317 123508418 273956538 187820226 601753629 363314590 961262615 280697370 963497149 487882733 531371399 772254137 909741789 493456896 514832351 313752230 529210549 49129461 145605856 516514333 695740324 119668994 587574806 590427772 813664590 979053177 980417587 273102127 979462485 998440621 998644265 462833613 828699631 959931810 987087399 546767690 816435727 418088127 943510896 488989318 924364075 797479750 806394614 141339492 182473600 663109075 856044018 227642068 800173624 571774397 712182958 114537067 725812922 780470387 977132357 951707716 972438749 788257391 883659027 84764519 400245660 552256594 701019155 762716101 967678753 734492270 768996682 472273591 925850516 684023306 897246283 889581178 971253729 963378000 987885939 70307357 706711982 367147991 810206699 557707207 629351233 564111816 692000524 214086420 370568008 204893789 531561809 133595358 447559460 119727727 378339712 116193656 549259445 673404181 748823053 336210989 924599973 472909602 723168394 725797926 744168780 345631909 387085542 120759856 599319991 978664266 980220480 498339651 628777070 129733789 140519446 453621261 930529165 71657646 581420728 283828075 491620982 708111091 762184371 462431309 627657309 707066975 978054147 264326317 647468224 796893542 933974560 111183201 414571698 626776032 798817505 277164477 773249556 933064583 985448849 832387880 897635546 726866125 925953010 871252267 981685272 57060399 306061146 841132965 968584009 576219167 584713062 615482362 884460567 578364857 607853536 658948495 891904067 558247725 992748099 892942357 973920309 871698604 899180829 123878192 857652809 417147232 689561043 19812847 914530073 178272120 336681780 680984263 805002056 781667833 816962541 619454792 885633761 153280028 750809709 422182779 616978095 761137416 820914529 667596646 676905499 137233091 766645348 165804873 205436955 143396420 616251768 414416153 724664260 611209325 636264291 651470900 971867785 582646613 718133188 766625163 848485174 525832625 796565272 404751025 480157091 830740858 924598481 743025129 992844851 614887763 677368383 390001476 852321984 26549570 953855908 876155896 911976254 93555528 498515297 69447832 150099890 615719408 728591559 171034124 969130810 903977922 929283454 899834114 992673066 653852858 940814440 147158804 341705461 274195526 705446586 764843036 971371830 433659574 740018317 823962863 981164594 353612691 525557785 38484030 519598430 821552707 961769425 319538358 626868871 258999804 449317934 977004107 991772014 934563613 999553621 131710153 579956250 765099604 879273493 636095194 860784860 552969925 862869948 86112283 256722062 799133061 954663881 90884988 811386873 522516065 945537835 742185506 775989910 103964109 146060047 314087397 996904226 339800933 770305628 646023991 942725076 294833295 319138287 157336498 680240393 192264194 580064591 713395671 724975425 596930776 652861884 287152476 643674108 860964997 959091201 99480289 819930017 713109420 715369740 60700759 854870893 334164992 916758179 754771002 976829386 403432024 524723203 408342633 962336894 79217925 840995252 790595134 829727973 852205820 973826112 81996703 200846422 60633633 609981513 673399597 738865183 631442116 901633496 554647126 882054717 595573705 824878950 982546885 991121481 721345375 822060230 897372516 943696206 248891080 446103069 812263542 855855608 58281850 284520476 868987231 981382146 90177186 200776473 698122005 933474019 617478843 658393573 142105587 975431763 246818780 827942025 82786692 986987814 526934486 743478160 952408684 957798199 436203407 688570330 976056952 990458970 672740084 961404253 330193197 739348979 114106312 455244677 116054791 693426314 150609418 625497294 191065628 340636003 872294449 897415959 861230341 972680105 785122657 847999407 219371063 566485037 926868056 932672005 458043132 786955588 529085246 605887522 372301941 744362464 81476867 892318988 242477905 247239682 779547835 911271857 984435537 987167549 774223516 989769984 906400372 912406512 106472061 736130404 410083645 469352294 386061376 838849247 653500387 808280792 482378823 709880572 730519709 810226564 647851854 954019948 985697327 999860723 480895305 946497342 436750465 813447745 26747695 366081327 458063527 834398713 516635000 778603465 474004397 793728469 382758629 390004320 175599387 924446081 429631820 935800238 185261034 446338219 164057774 614416624 822959447 939195407 164514554 866899347 906361536 928264573 629943633 747285230 788305634 932542338 589247446 608573312 335343686 971067550 697394001 755838375 449697753 745298847 977752679 991829436 906712525 999401727 267786301 976059838 549134132 981568960 486637531 645406122 570781047 641617674 272500426 899579151 421346179 711464199 830668230 963830163 516240291 557749083 265108982 825288023 636556679 767538149 607349162 638497836 590792626 942830949 826327130 928620303 428561323 598449264 979490951 994183633 507243680 862391052 698053118 805050610 162363101 610833790 314770800 626428936 644583339 966973151 3425690 110522660 108405151 471282514 739225447 959065583 140698807 965159720 672219634 867965243 687255857 807107606 613700829 722429837 157670159 837430335 249803608 657566858 644935869 861021309 83373790 280351096 542212722 783829961 686157775 949512616 888679653 919722582 641072973 859011483 959435876 997166204 945131349 969167249 560298022 965424625 810709362 877909648 186959507 604629122 226488876 817296144 93109087 933952345 809147616 832907734 303327181 855199987 566079187 612966907 875017021 960132792 304803828 651486057 230074990 895160377 79922869 799423112 88220771 100784638 961110442 998613298 826548451 950215318 884342299 991885688 628729809 828473569 781542950 802910227 188475321 448906694 470482480 840374742 12247998 146729496 164905532 945430446 891394589 903974239 396911315 595363021 620295843 752859415 745704083 866460330 969246751 986482669 954743540 974456872 567833107 641223341 694432018 802022235 578709991 749595242 616129120 854343187 771157318 836418118 27140205 451836029 20802907 724345515 641723871 949896351 824550640 886218442 280393113 516043525 823793570 856650968 599891018 798184504 745516353 838893297 105879013 799970093 995007698 999023157 626742403 928297407 164233216 631401249 699764522 967026546 627546929 957189577 402172496 535938955 791415826 990822676 658914275 756265515 648209100 941349733 131347970 616656882 562043664 964872080 279694177 475626988 805869524 968197101 928961049 981055799 65268425 232519033 264891774 781318000 385533177 478529726 694571704 826058241 183677572 995533492 454252443 829978164 612639247 736617288 20732475 714684663 98956955 426115671 9688498 536284709 711940509 844895851 721307654 791052136 9721834 972622659 782284172 924715935 319774876 397111922 354846248 371967502 97314986 991899859 541045312 932898082 994311524 998273036 728462196 769482306 894776240 899508563 623450860 900921874 115810602 950541268 139897428 247011251 990956196 997586296 932385743 954384011 696009099 971249574 997977651 999792404 668317133 883210472 398348024 465383629 89413119 755770760 383901253 628403434 578999313 624798657 783355191 980733093 223915513 294477928 514408372 687564962 73226101 475439700 509860273 689769263 203667280 667101447 114851976 896665392 427680172 585770901 871966516 985734390 833683984 918672998 345925714 885897702 501133463 727674701 154904488 593060759 605120994 943057137 834406283 906182705 503757034 976302527 902482599 916426192 110777821 983712821 932052751 961957098 100246191 258402696 638736801 737168197 279054598 711297763 215451448 558755083 747533493 864210070 38602596 237107519 991823977 995495887 299571318 438446621 881906133 919305337 373720309 811091539 149609738 894410336 466632739 552736034 582639104 982265240 967820365 970748910 535266618 737647209 24331555 699979412 401537404 468537109 978495883 995950925 887673127 908065456 859408094 887778893 798899360 952356081 567947405 721444956 813441960 836947006 900708788 957190710 681370147 954873110 349729216 377386174 523412482 819237367 780140761 841969357 565649230 617301012 940969674 993534630 135162481 193560306 615050899 783711304 726317850 827707560 80585736 369086329 429284055 431645080 287664067 414379517 589829372 922466578 970968721 978005801 760474505 789929983 527520359 761578597 14388525 937071605 55220816 334643601 770731564 943813363 540952152 626119384 23435755 377842770 114560869 809294358 315429518 738920489 159082425 261011734 446577306 983675218 528380971 563962445 789135843 790439829 373049207 457004122 808298893 969536515 335622999 985927097 710945877 984226848 523308371 903874238 671020747 897718185 564187905 650280031 63248710 66997684 316871894 475358540 696554786 860814489 142044493 186748678 273765687 696520678 12361209 666522239 230266044 722619006 409044324 920089956 560134622 867433579 956799740 996295192 192610427 760014964 40993155 875867222 619814824 683774985 822166798 896531875 496972254 838290929 105036278 619096173 149898691 729826244 27951869 330553943 765118918 966623577 651027305 983669718 63590348 79905336 129956753 467231242 6718481 820404657 599921426 857219781 259885843 919030215 790365997 916951189 638593307 683441629 564797080 576966700 257748496 768576071 481662824 604790729 515696390 900257317 487721484 534311454 359741726 981928707 534878169 969034049 58889565 445503727 336931154 690594044 605731012 992299124 482472300 903030716 875203682 943693061 579570254 930591642 323451747 791309539 109554309 155886601 483111155 634448464 146342074 818888559 36840071 133944318 815035498 986459756 749128697 955370792 777225963 802959263 702942764 716193541 300111645 378863233 296373951 951613655 28062331 314486740 607580450 959990514 927163327 958605139 873345766 880473779 568639304 934774128 676554755 725773713 349211718 704859330 105172924 829677594 19129449 323954528 800094578 852463615 204640387 936750757 267616686 322874964 30126264 422439231 679975626 726182014 898924185 907211953 222046494 572858247 293089712 346726089 938739820 960509763 679112846 977058997 778280840 971495223 677171255 717742875 926747780 972377816 831630654 901734308 78247660 778464500 561468135 921145168 985529917 999519206 801227892 961779646 414744157 902162085 403321885 529024915 428172834 501445085 866647262 921076784 253229041 846314810 316439310 620458017 874909189 909919902 21243149 706222264 399444561 958324920 537000712 919490598 302495229 431168414 136498727 383136728 231052104 536943152 427448001 912442141 767901527 878532232 908588393 939646120 378206514 738586590 580090084 918264529 756314759 908853268 453929901 671152265 125961400 456472689 277032273 496136788 558238101 723022723 552105225 618014196 841254538 892975228 278271135 988052857 749057565 822912272 860038168 903166543 68197667 198927791 860126544 922779096 75678314 831702343 346510009 586541854 66339265 593531410 955743737 980864002 643397995 810679564 156927822 539306653 424062659 947304475 919250342 985948571 398245629 664316897 726082192 746004792 169555641 763019513 299575895 860969834 50420733 395887746 377403930 786066653 578204171 750294498 585323062 706217213 351450501 578974065 236138734 717585428 218248121 771530434 997317732 998293556 444807911 867744064 839730769 859665486 102720983 863128865 58788143 755790648 935745032 938037836 638983110 833901610 900114172 944315738 371412737 936687089 186984962 507143246 732258767 975789493 36683325 585238916 297028842 504211592 233591 531414400 169284667 710413435 526531163 696811298 738214904 920516129 67340054 930502259 937098605 994529074 283846186 480340595 230058882 364218277 372598321 413181149 83134950 616063330 978160625 984930471 828183668 891016935 956979101 962199367 859789590 962381224 296711402 926892872 458152069 880634862 741752021 810883262 294106505 703382669 258258143 563525172 916445565 943470643 475850949 631338605 326487243 543207572 684739300 900201527 477123486 718332702 31982635 356778613 559483838 606452036 578091531 769128195 377799873 850672489 155578062 659117041 194202491 592803228 976142110 978633591 963336791 966299372 441119081 599020527 813337953 870510174 918839585 937352941 906853752 946234720 870425434 926815415 311619157 991223484 765898235 804211056 391648431 658017372 982911951 986135897 794463412 834239581 301425725 414744119 21120790 580612757 354794589 492593031 857447677 918435747 975699653 980539493 717371585 970177359 267771939 946484092 395291158 592195888 30140435 988735120 324342457 806454466 532226882 809858621 982390075 999049602 824034552 993855260 381721769 871587754 902907244 930273353 89551370 343428069 704993997 935910572 238510547 650675585 44349245 343632058 360039945 963782539 854309141 948769782 345235674 891690683 328682490 682270369 70146630 704560259 608078110 861146322 135129454 453546037 574990126 803685591 499401356 845241328 825277163 983984091 853197821 902690360 447933810 589225253 541377548 965844455 174891238 647632610 504076811 951755562 452320481 812378334 840146728 848527706 304167699 375460701 910622424 979838940 910839310 976234761 504851357 869720525 770155370 939503283 103285245 412247994 563692271 781174338 242462604 862199138 935690808 961640979 532136068 566845657 618638612 910118723 235927348 625639124 80323086 485640976 957833795 964377054 13351159 83187886 357112117 757203104 544078387 823592036 369423661 943800183 881738028 987038552 304490499 351343361 887694425 926275119 901676379 985038307 20623434 941267035 52362659 687071114 56288079 550031267 659189350 703875437 325004310 591355292 454248938 676443365 427394808 678837410 61550200 228572019 780455147 985468353 837705137 947566835 521950250 711241937 152658412 432747005 553263134 558650720 163125458 984145849 282423892 837055506 96841854 723237541 162960330 394892380 29476318 751947954 508563470 791990715 908080684 994146471 455751248 845831094 711517912 750374851 612260957 689282688 880898893 974344812 249649945 300967240 156733827 345454505 584245490 950166332 527686424 633864195 201932313 808166215 433094517 879300313 685122417 889021004 971694399 987506514 75104387 947194995 893503184 996635122 229925994 914513596 215053931 872176595 577742597 810723766 222947452 418130957 276310291 639566693 222645592 607830857 97066126 331959732 800314917 930256435 262875806 759127045 409409889 596173017 949297366 990666355 719664726 811034056 663461524 837794645 639639469 911217128 370391873 545509339 203748727 305969001 272762190 352210912 129320650 240359267 574041667 919326762 388549341 744152866 766453938 911310152 548737934 865597208 368603473 989581697 258002255 735930953 911591104 923589422 87137662 974109334 14176895 448098716 679696784 891871560 515432900 935480449 805485451 977987760 960714907 985930754 17821288 280301580 694085580 791956449 627630604 676276149 642433248 783178573 19944105 605681916 779389957 971826061 961658481 997831203 409755346 973306499 999433853 999515551 750217410 951394219 500267855 536320410 649135795 707580266 205589823 796102718 518018719 640157267 450920112 963383323 306959398 805742880 564754742 990393601 619555152 768097274 876432062 988327845 732612956 960381917 982293079 994072331 826712041 894917206 485448593 946181483 178976528 182151523 872953120 942290323 651744335 819444298 196434247 481951586 503463068 841668162 333532303 900334032 588391059 630624416 983411590 998920917 598526318 865903332 119314687 426287289 200107750 507957592 465653611 815852500 319661703 344693284 132610446 610384585 372737659 403257233 919784510 972206356 98736922 393854480 649206361 817504006 696451168 963226109 144480937 424794188 97388663 927014453 349746430 737880661 648959554 995294457 600538010 946340201 421806100 558504333 355240474 575488936 756709479 766572351 435442647 992123878 445812112 451554383 979154511 996249900 966288808 976776271 736353277 908849581 288320850 837098931 189793744 202968698 99962311 692969886 535722163 591592658 565759743 782145922 900280631 983765472 294484606 375519170 323224047 363690628 12506929 451102375 570738419 985334893 292085935 573317614 906851262 982127675 157830041 543445400 691336528 784896105 456160857 725329486 352301515 847857191 630917345 962837229 539082604 853635607 220632488 699202282 152862604 930192990 960810527 969664032 796613534 977084557 607899465 838292918 487976560 746289519 6720683 720085583 614995258 905150523 380010218 524979706 546998905 758174592 656809094 808175721 742662678 863364939 862836513 915957264 709459538 977559407 14001675 671140850 780916435 951500228 229266122 733142129 720143119 776155717 674137506 990496344 17695270 806378324 407169780 958723473 821561794 861294681 266544141 579620617 197732287 255056081 855637423 973377824 205822973 315062710 311939829 564198671 10380412 229532321 340095602 539115635 62664526 924426857 257029371 265425054 363017115 707919946 638513630 882654312 32448078 173208750 776046861 925123110 147239796 448513698 974427397 977681939 336478390 765239634 154344186 581729529 187386502 535867100 914183597 992049848 767667053 779440788 637737996 717208011 549480188 680475448 290905675 812678852 465894888 583464744 154525417 421363599 495926771 584882418 523388529 717641308 422766216 999625379 110967602 649152305 454843710 846065353 725101029 963617944 535502587 810530844 608448458 681689134 981846889 987252050 975540729 992307753 960829046 973650700 60754984 168081902 929779298 991905352 623158837 827800914 432176028 612375067 124803802 563539020 705474831 829738939 441381460 649845414 426394316 937657938 300624841 708252891 946202549 956187067 953616777 977016281 374906470 776196439 822402390 909329732 235583010 424796607 66475025 642791906 849871312 959646161 754791003 913247456 866105656 941014942 429201158 975630374 901632422 945945180 624817293 767366080 116220744 160177966 310070844 642684909 35725183 958066337 551563397 856973249 257270093 721186180 54039281 523485069 828379156 868802304 169412624 421439086 329297027 730759959 318166546 661859602 72620543 157379504 750776631 928084898 998563824 998595562 264306137 621230729 109479198 602258248 133769348 958102922 147198199 372604231 851092652 884191704 621239578 782343511 408010262 558320964 824614923 894849761 116029211 318435341 178025943 602064526 363260658 957232649 10999400 842394333 386454083 470883657 757179137 894247231 112031611 902707651 293158762 326804543 709441115 906896407 678996391 798429694 374775700 932143031 723943402 768571813 94621298 356498165 577592797 950421703 64242480 267433641 670073135 761383411 419578299 577955081 64373722 990399574 865211272 872651952 21488943 50820839 335867542 732883352 2193077 768157193 74380576 616023235 208487964 460379996 660271443 699446868 659261253 936263407 658791143 691288482 983927091 998320408 694127386 925695553 159226904 416636337 92804496 633873679 104278573 773121839 119217823 959530046 818895836 883557743 831872961 951321556 949722737 963376616 917068604 919290933 680270754 724832230 879365309 969305419 388789146 489440373 767657537 829684536 647866401 811831442 873607166 955808305 108911559 767860399 628554864 765632849 465105075 784725419 264974385 525888297 253944054 286950817 229828249 900053421 788456246 861334573 822747061 838782982 499201697 660709379 120977102 299985381 446351382 789104241 528311357 811019262 984948310 999644419 48757030 97416887 580076600 909842394 240106196 564052320 974678977 985897916 374752994 510950738 234330677 907995260 143360263 285425771 321213456 344339361 87080399 942267549 60460911 312867639 312161417 859208995 103153588 148712203 897080655 962010345 970435862 995052843 210299971 269753647 438143341 493453703 141962503 382417461 144761620 889671660 867053634 953002965 661269719 812490352 301815549 910677699 12865886 747103950 917316090 989011226 56690831 744204614 39133462 862318240 187404822 276914598 582574806 855071991 131929807 160581830 319393894 948534068 35554623 197199269 699925595 890961789 814770460 937611026 748023630 766370785 952467016 997236765 147155187 680628014 103865223 625786809 505046236 514858258 654951281 673939896 627739006 964528020 699067188 934792461 150645869 168774096 244587277 639358808 585973154 875146660 883854455 952843816 205909598 492774827 544709509 602138098 428050598 527408860 175602824 511070113 436260867 813459620 141056420 835311809 164234572 916489403 307638782 847430919 649767445 838440438 991908660 997074926 905801483 927351586 954441785 989274066 775741099 954363261 256307330 530825584 572248114 677811799 295159296 487396830 114692816 420112539 399005016 497411878 624139600 668093011 214405148 712666581 731134367 980754945 369914056 521648566 469880722 829435015 969628502 980332026 706467205 867826911 74728337 465618753 162217765 564865990 983253531 983709731 681568614 906210655 373679301 994492807 835850308 943815938 297664752 784006528 275274521 752478056 338322015 385339341 260564547 926508863 218039034 538878140 921047120 953217040 977242369 998529485 699846531 887215398 603052874 698512822 129371925 485690523 922657028 949472324 983315539 989033677 712838335 973190671 911532673 928955168 218272242 600420911 217438167 926293572 210758174 687479772 265290215 633975812 539648907 800809983 447999395 940095782 573268111 651700441 305165056 873290402 569035508 846090530 388586194 612619883 352500477 686634087 541458169 972025870 798298004 895257294 544676256 966515560 979348374 981187253 528264285 572536538 779581085 802043962 122092559 888439530 668418321 785482664 888015239 892845203 381387274 499264054 793499111 870028480 199535343 877743743 32030680 956473581 136845206 961417886 29607341 665438456 441291705 524047589 511343174 696281664 342491396 881710187 192651119 439743332 598227118 658493620 42513701 784703887 101257367 591964268 697680731 852241831 65362077 621369140 593272188 707637415 343551470 497030922 500351161 575309719 413096349 970536697 239459195 706182643 65864587 730579392 977187679 994449238 902927629 940497325 8323492 114934313 700348480 946704492 328036369 772260096 474016068 875891223 698575802 871663816 762992111 907089173 619737162 797976521 264840188 386229514 233305285 453903008 630473419 813727585 890185836 944189466 628503415 976481408 134774613 881658324 79783293 867096691 84142394 295131182 757108714 990603237 286662095 555806571 188628861 262402388 626628969 948472673 171126044 523643241 329479406 937964755 617889246 998780151 628958481 762192431 833933812 965670622 426325546 554112941 636566722 717871819 924826941 941945978 576125664 891125341 195508674 713464388 274490737 609380536 407469271 924895737 70886445 495544030 290655053 332692721 813078303 926848797 73731403 336445993 115984464 662516736 936482585 988624044 402723456 981392226 530526815 684495568 716909169 976339202 625147324 698608250 561993020 744239869 807627235 924922075 502757964 696784996 675871893 784321157 528743181 538060323 67422617 219131817 686857212 958281789 231149188 825199693 522043244 624812469 745339025 972728115 615264447 869450517 789269138 833285847 715583326 979120683 911080207 950685484 603974497 713302255 479135480 580980532 997395310 998648512 374846670 781324505 552895996 874943856 609232308 687958219 37204855 959143184 609440425 938566959 450107028 535805784 213824214 295195620 360916673 493526796 652158148 926960098 870329759 934822885 92819042 185542810 796536555 899972918 236465956 980861124 369958260 607856392 511087701 889897089 833659128 863799134 488334603 701349317 897484089 994754046 798403513 940188118 925355224 935895082 695105949 960655962 634512136 895251796 988909236 997655157 900279801 945442662 569044586 796750298 509573586 875800872 89101948 509169367 60878263 577488929 5403013 505662759 856343286 879935854 358700664 740768079 621850446 912883917 656567333 873610000 33252633 157714948 371016899 750421470 966420912 978531933 582245698 803057166 652410581 907612144 212303315 357718993 909586111 960794610 582077224 998660789 120219680 287378099 828052383 967741804 832843455 920642980 699407148 780255740 85952651 718225032 185204097 694109605 756191707 894672084 38807142 590538991 945757704 966444114 834332166 964394235 18581962 966475164 517235383 855679636 641061615 962869975 4192848 554580583 283779120 530655955 338697744 999895037 314438348 784117869 667131197 891107157 694765097 844654120 668075542 744697569 554531492 902515526 443670384 921778656 320453952 864330586 800193609 954947126 626567891 919153828 250755635 939026427 10697482 799648030 464553117 693316764 441219695 687660179 170312538 302871176 864334214 866067252 379417461 978093974 88761686 970230606 982144463 990697696 405669980 430293568 792118813 835088679 872268398 921668199 360432668 515088103 675885183 997209129 941546827 982745448 333873201 935209016 674569516 868998467 209161544 247064070 177558473 243175893 415329413 753961864 348001480 414854830 848310245 994795101 345071293 407769688 643451279 871248605 821050585 882807656 594529185 781230999 969638211 985850750 778729974 822716173 394614985 953479891 591448533 767014234 57638949 269375660 626440684 712709800 768531777 903787401 579934291 883297737 829133402 905495347 552332724 950445692 447345401 895160115 924881013 995061727 554463019 782432542 671552394 891305258 259724724 333549026 709854182 759637918 964216567 968212235 479963818 558548234 406027629 601339440 4402952 961435485 121092163 252818372 116974023 664384869 667102314 856997518 55490161 665991220 924863956 961260342 898919924 953819263 506975587 815060410 836903290 860407803 467276827 591185116 457014436 640529892 157014001 252143439 650090592 834989723 636364474 992886500 999567623 999573925 567983022 625725678 365085862 963848870 387702506 567412191 393753118 735776132 437738596 512999207 157469017 744773259 651498408 828769178 335150622 805840920 220548444 897190442 545682986 800253680 987111812 990795995 104684412 980577353 131674500 968877931 271902560 667460555 787467050 815245502 566763797 981924774 823357037 982133774 213209720 746191900 873627649 896804616 405984995 774891341 94222606 879838345 552344512 572749238 60190400 910125391 890769256 970855998 611446267 659252060 249084172 695008228 454712568 732018245 563152644 747857338 570435597 857992955 658578326 938870289 215614161 922934510 293078602 778348321 176707992 467738547 154301762 242866419 765791625 961472990 868941797 935497895 84477109 399437195 43300179 493529014 178009863 367099911 433253247 740987833 367241090 538076756 180155934 541046987 527157399 941075644 571602749 617797023 427971868 942177294 556351577 572428822 8631210 904721057 226065323 376062125 462908663 602664117 36720591 220515195 444760528 744175784 327391028 378943682 585917051 654058427 650968667 962310444 430978992 464772799 71299185 152411228 668003126 883257490 464275771 817295096 49686242 275414120 932607604 956470395 154288611 846830488 537907594 804786029 324219470 810810982 333952005 409573445 11266494 587885444 776533292 913404661 257827077 490147008 188731608 760615791 447058326 791024724 484110196 835941694 527250501 642938395 904726282 960238419 105383086 542323325 219749083 859101440 671013322 723076177 800047490 899149376 193478452 813203325 207474357 376469515 294342466 817793971 864927223 934069286 91357202 491293491 883329327 981566246 570327692 748237088 936336251 943163130 328027872 965549485 620503898 960272284 681124089 808949133 863932062 993229676 671880297 678007210 89178735 232214405 416220737 987371650 210272288 890814520 185758732 624805212 900175184 987120591 572206087 818777621 413252969 434656701 492458133 906789960 724639303 844110524 238372747 595935769 436594890 722375226 747571727 790693205 546936639 941433430 218918663 838442705 370169628 933095287 362650763 613795055 513064382 888765264 31894122 567754276 194688300 578314693 914871519 965000903 1841313 400302128 362999453 951400924 199545469 541431846 366011151 533111366 632594087 932398457 193144081 368948957 91272612 888155671 760687614 836533300 407356086 620267735 812939330 886787944 936356472 998819741 265767273 546860079 144993541 486455116 849557324 942393131 10307554 354154439 351129418 896067238 896780748 968984685 367851454 683110005 563613399 947007218 88629878 980595468 774896075 874748109 856951623 988826833 261031947 330787623 73121501 935309399 740224276 993527764 492148976 940122472 576194663 864590606 524139118 541052680 972446092 988147787 8083098 200062005 843179867 902410402 374368590 625030543 465916873 836276270 651132993 763709141 53371154 423932360 131005742 884180565 188282055 440273437 913731162 983122076 500638192 875212694 385501135 660429356 289926720 986371155 674953009 926017249 449729779 769323697 715186139 729713638 647719007 759544812 284778790 926966224 698706545 816893122 631533227 911485715 120277160 886260114 997148917 997785484 701829025 789619509 436615740 463094133 611140554 906934171 659768632 750514216 764640124 902232935 564227331 569190021 338542905 886483193 219724825 986104967 920260018 958397766 836429303 904470942 685070111 800709293 311728325 852459211 852618078 860878105 407909927 595159252 768103730 955567080 415792503 968995474 670955851 738398748 35511497 808977563 680253549 957156258 723636042 980843638 691361898 847175558 43203147 382799959 551205708 717919491 883292735 888270558 442810147 550446956 865047860 984195074 402052530 772361591 66375220 694939376 269781781 374551360 211718591 347422087 278588675 808378263 809453055 866059629 858375617 916773691 789350918 904646403 157763750 651999095 171987056 179694282 376549775 540891123 238780222 432596116 177037032 199340974 166814414 880397799 103608445 967723496 481271999 687479861 948918840 980092780 340487199 884034200 224188830 865772502 320290801 676592283 386873893 801694269 845089613 973887536 497506224 593292886 300595977 547624637 317168238 376286944 394469703 952833871 896820970 930942337 570738203 850520805 698945654 973995878 162190133 942088970 293702271 690601195 940390075 990544489 671021594 992660810 319996664 918666318 927824333 956100353 678392255 819860991 912196404 953951245 892124214 893377944 610641762 826319134 226981655 878780552 679616830 845906197 23232433 527200976 236872169 288357507 303918379 878860716 700863118 800942750 697860798 740263881 915827920 965015377 257791597 296126425 675575626 692809947 49254364 916571492 572402929 682810472 86570177 152877691 50480377 174150076 210314597 736452032 253855244 463864959 285746877 598310761 235286072 994265276 504567344 963567486 560832777 938815353 530605160 825067205 956633126 961128624 413631706 847297482 770164443 795859709 73650291 345776068 887856315 927823268 411890473 533018036 270807847 570296203 467883472 721819039 480826706 789212893 847438101 956285906 495694875 846570586 129619592 183512586 149847984 900070024 621815400 814252936 582930648 605154637 192202012 232488291 68959078 922877982 530585286 546955904 307095261 750717230 961666941 965263852 613616465 801267185 199909264 588318229 560035483 595878092 828277349 931034943 531742767 945484668 122699288 615218280 960422168 999870657 203068394 820174587 64797429 265287425 932130287 972969623 888182140 969008831 817892036 930305785 344542993 425328357 888544061 999712754 302682253 682365253 655234589 670052687 874893595 965173483 94206164 681743069 113852843 707890488 689341127 985806122 618631626 932653594 56683514 947913532 84502155 124215975 226737636 518683428 475289154 912308139 934950820 972779246 27477516 183002558 379831354 998397397 818942014 851235590 614953985 988822540 724966077 727552850 136301711 724096381 225591252 350796861 363983473 484317872 827503603 912153195 696614167 727128949 567637170 943908993 668285651 891871342 617983092 641462077 11761256 58604074 577765957 607828544 137877196 837699859 621036414 884189117 871449501 988742691 947118996 981457900 211317767 824618553 272244685 379093386 162775308 251471430 952952662 969301451 580859162 960120559 348373728 978959895 366247233 960319022 498139024 792300569 549516103 819790104 762237927 946972175 408154344 622232705 242015593 656084123 356864731 379072923 25747258 905592982 725870393 913357405 385545282 748287118 602316611 794729293 774866147 935699514 311582595 960704057 214084653 440618824 13467788 716270192 439132599 627075961 638752418 882870821 959318519 988740831 671653154 797838918 544898704 946800152 116213655 814868077 892684298 953817000 959876653 960228330 821640466 867852822 449366507 883368417 273118713 668227438 526790091 989946269 596222831 841461524 856337586 998443567 309349158 808350987 656331358 659319227 742742090 971639437 657214765 940377262 504120735 868834723 908805095 981231398 143738801 366901643 170410379 483166523 116629160 782181729 229618792 702227484 763391681 967997482 454832252 861456631 233277194 668838434 715786803 957422172 98103848 667459961 764953235 892491125 848197344 887195205 451078938 842140345 260489478 468228542 242569370 250727379 459739808 848915123 89610573 106444145 894099733 908927038 979682471 986958940 521248670 725807051 752976843 956586841 413164370 576517667 593643801 704718943 130518608 206164407 243665471 705132872 385416580 760137300 373449399 619013701 276490864 403877873 704570086 751266342 972506606 977294521 597350396 768623518 215683220 551388937 573518059 690470410 657960783 769125266 48872881 947516048 115441830 452438192 937890453 999193210 567406518 778183385 19369968 316974200 735284432 787387827 761556169 784050267 983742280 988493282 276780596 487620763 15049467 919552924 609958900 818949035 991450710 993132406 238557714 901058956 800124952 932894593 722918969 887932830 575647412 713197225 541846338 912285028 701123765 735322768 631209204 705789182 310905482 830667916 512463415 686963598 138196457 381958130 159277323 474957050 979010532 982611635 959591873 964611611 496588082 965541550 166903465 667027901 486296732 678146474 653364689 755309259 19418748 244409054 331560483 886037619 691588895 707239699 979827789 981565801 292397969 569465694 423470915 651634326 428497476 798240838 70478878 309697349 436092747 889039196 253663480 863776590 267554708 342029066 543256149 557829562 471823111 531201805 267952932 854554603 315479015 931162547 759307952 871361245 192820677 332349711 278210714 666377141 510121318 574918388 37896614 55201234 680484808 945924802 451422967 820879736 487046149 867301647 963164732 982790214 206147201 829224954 206103775 948200422 209354863 522787937 358611280 806617062 55290793 834429827 240926393 604881867 387422993 894490014 384128041 615950062 695338679 984064446 655266586 923242094 327238552 566819761 218497442 512154181 919083402 937005498 262058886 344122644 190255236 376250610 279437834 933569951 439302202 702273689 924558726 956881568 283834784 718755106 130177606 335699765 11059447 532315831 543563782 910099413 891897593 990464250 269215186 782277426 327623682 938070501 21015445 680340391 362457835 853082078 61500729 654518777 56490965 790247456 519500284 649962955 219127885 521068628 672817867 923577175 729579611 985013911 273512347 785578142 675440027 874037178 803055497 942549105 734029897 763972912 586560148 897280324 274481392 575835173 212685999 940852854 959174373 960689729 715995863 940087071 693190622 913785012 580312714 990808680 614567868 900939549 332877427 462947647 769002405 792641313 283284091 918282534 885187777 938542720 730920454 967402858 79174329 168799721 476920675 671732952 796673078 950461249 692066341 748945185 494060961 836197602 279061863 533364740 707008448 886550294 107785085 501100454 324129549 580494185 132362148 410889997 580454644 589458823 398424121 699871772 425009158 557509052 847789345 877332838 972333586 972954420 236810148 382599350 689731430 964344245 589543114 617453822 329725812 623972563 201835268 862831298 386035387 639779848 507429308 701579799 594876287 724616638 518900364 833435004 130164656 926505877 691619800 938020503 123836041 768069384 34280670 278961103 605644097 886877983 419316684 769664519 49495973 684115265 445736385 650984546 200331739 950568756 919488304 944822733 759758398 893595450 266244432 826859756 692581170 944456325 881272596 993441611 715735519 962176750 711750942 838612409 119233440 681391773 521335723 758190818 752752736 983770997 141778808 245810709 137399654 722456041 856116923 943050130 76354463 821920639 343717591 527270694 109105503 820820439 385774850 929399065 625867190 911111236 75194138 995416818 224325633 260149212 593577056 981389246 967456260 968321565 779190914 937161903 181527933 991102068 502270137 651862054 294637838 545590480 116804341 577222351 954753685 956801091 240094006 374523509 956297885 964385807 706220251 741871017 39321585 918316680 864864240 895860376 359733123 743172055 35752081 354371703 848961224 960628496 576456174 596273175 5057073 125991134 731315778 742069137 918674765 938871092 588232563 715303376 511880604 739523114 457949870 519190743 992918761 995780274 872003912 889794915 727307731 745173278 610270331 610899699 131161917 486175994 495090791 976064081 667450588 925372531 213367284 418687579 288096578 451237451 766087887 829257902 343089333 691149386 857641264 862071985 275124745 936519260 796500955 874736679 310528687 432127887 645153796 647474630 888707485 941144143 305310503 450589794 281537687 544669964 91561259 979837773 481885616 797844159 126467230 614098392 712179530 747636462 568765760 986200865 226117046 912207312 194741172 210025470 467878910 907605930 920889452 978497655 339620428 728166604 620810279 628481873 503186860 767779196 946219686 951968443 705930119 799624796 253393015 954093352 526376050 607621044 108577812 139573242 426550669 734847661 786365855 831098662 537603705 769741606 702932988 754480201 869580828 963975831 206387068 549514078 954712002 998884487 178932048 504379144 565958342 683091820 407878775 558504172 495667337 989387736 538359578 620236653 804574176 899332380 98863839 357196197 295406395 929951454 839808755 955169622 333831433 953478041 858396069 955869715 439547329 909184508 869822241 946466449 703269267 929262695 325334214 486735784 221070660 297376372 437700708 634880034 43916329 488115250 848560693 978105446 131340241 876061236 833700118 945930091 795937314 958496620 520670621 822163978 779000397 873051740 813063289 966083130 84050321 881076708 354895774 826489191 215533552 465240698 923847555 928195895 921578037 991780951 530560011 961152590 157485304 865508170 945446130 975154895 836502000 903370403 340470098 442442927 376166572 670615101 494318492 534906423 105768119 593290579 772665763 916694111 841787103 995096942 901271164 990567191 858716796 989691826 75701915 780509345 678660301 705814763 173913662 459864606 840054672 931436449 478989494 577654659 38437969 443578411 834134537 880346967 471836972 536726100 25064780 686945267 504781350 754777540 694781800 898101541 155826559 912906718 875235068 997267532 823243866 825151555 652562345 739309634 128726041 396521332 676464005 925979915 501079067 847103636 573983008 868486335 815184699 946589041 417519129 719003616 129287240 993758115 164304813 442590176 697776979 828739178 236681137 662965996 606802306 965145794 423622773 847282700 890337422 979712949 118530643 922296766 185358354 347806421 873112426 908089159 181345440 381119819 336932792 911686757 905559101 998378674 918912050 936673391 722648421 985539741 925414411 973861666 405100108 884235995 896781879 966302820 190567060 413862312 83886383 763521913 679935301 857662565 322870627 471080339 550792452 575987623 748153331 973473587 931732672 957356901 406308651 648747745 590058453 713159464 580706172 889051628 158311529 693436701 706807667 829586413 576545461 691484542 713481011 971676729 617019666 868129931 514732001 817703688 248680471 480021325 938962445 972743984 562493833 779605460 127146640 845389171 753033848 905162499 865562291 913364870 642147969 919573196 659823281 796977073 170338336 610076637 329881242 711867577 65722449 819613044 929423034 973056751 887457399 961175109 144360713 490740832 723096538 852949524 194797114 934172799 661426829 878782306 424286395 939470350 645762803 786631156 509948189 904053747 146428530 582183230 133294293 904736347 359805510 571485889 546482953 624879461 962872151 978603674 387613637 891380292 408119302 444161364 651937726 783508709 937164471 947796178 681640465 940597078 891646180 957358944 250067680 480651285 974060281 987965765 867567174 871102470 381002651 404132073 938845438 996374311 166811643 302799551 853187804 908609696 202437659 225836073 682977450 756033223 201898384 723916606 119137495 753044055 757264553 834036330 250241890 542805521 517520499 576403418 521523655 938597700 840991880 932078469 55947620 182935497 225713956 245918570 844932655 860543878 234934778 552236131 924045971 950548425 11207277 915014692 629072934 841618211 659812688 972350070 600836262 875682021 224296326 225324516 689247991 806170419 569232805 765544961 525693304 904941409 860674753 929494067 191915480 443783665 706224602 972355263 445713734 943634252 881439063 968618515 213696370 637765565 468359618 897353480 333075569 938406516 285570546 653787137 638067844 688064774 751577328 768906425 708363533 876144028 271824534 784012746 135523571 676642004 647664621 771905339 981065490 982992502 638871190 698585554 751480818 819903610 68883499 781944855 690830510 921698124 923761588 998723896 365490018 418578841 966105669 967391936 30608541 603966986 280220782 772047357 490197617 852509128 206662947 679841304 591952042 921695453 49626514 404456727 196210250 959246304 596956571 875885749 140614353 918256786 59724899 729006457 692593778 956149968 957588296 978864182 143716637 294169601 269003968 601400157 457144294 817536716 342873460 512105711 262051947 787845336 447705229 927436946 396128149 601602696 825021268 868971296 254790639 350759759 926991216 937639963 100215142 675576296 148390251 949655254 775943196 784829469 25664085 394028206 458842705 638127286 106061021 137291629 871724392 967612507 480497649 867588120 245290737 961393394 760511584 944635484 547668701 602070110 310014732 341260185 732850365 984647647 634337224 678889915 214740556 871977196 7415466 400907390 959241446 964830683 876357636 993942864 999161732 999754610 365415065 672524778 721156672 987435943 368383987 389765935 216106705 610528559 421515926 900999280 138901872 537599770 139680733 328592170 399673967 860066257 406963268 529218529 954157918 985048015 434319986 620791073 218504362 660742949 530293268 924916286 475116623 864519243 877356249 913726878 424210728 902127126 832961856 916284839 593142331 832874407 377090934 670058355 115631890 188401700 360016453 490997342 450166354 800070221 463558578 861500325 930187303 961888163 262925475 969181092 960137341 995726107 730035954 918730394 223020350 616725992 249884458 517534707 373184176 829459986 294798080 685728682 682584746 921223036 66565382 733630798 259780279 548261435 683952728 915155564 372268743 851342829 231048728 278869768 769359056 966146843 599430760 806635144 778338844 919393612 78841905 557440129 729564080 917129924 711146813 886229109 541748841 636939289 662091520 686125329 929145022 998882435 218469696 317131941 952694419 998639355 54281750 995802343 660681231 932338578 770305623 979048432 632113963 742964560 93939748 366178883 644423455 670061455 532578990 919152085 155589244 207909213 600754318 767886895 537239599 717837918 299497310 640648147 655324104 808888928 468557349 750767451 52174236 632075622 727615355 964750565 930219100 996475959 788240843 857227594 338108889 401582700 413734288 535266609 896288969 992461024 747430707 915978853 168991414 937075217 812726077 884595162 406738635 526171758 553525348 815172529 734832816 968779781 840326031 858548448 298205627 314769444 709811744 852563310 107261471 477044202 297590042 445551040 364340758 615950122 398851061 672536029 830852661 914182447 90501242 631533746 383929995 703199612 392258684 625102298 944482825 977439061 770549292 976561241 527008589 976243203 728828962 827431574 443393183 495327582 95578607 232604202 229904958 592738784 708737875 808400793 639375287 895660815 740749065 990260899 297296883 968715210 60730468 360094319 687104710 789797125 810861956 901200610 188737395 993440465 17324477 528181493 390692218 578199772 141597564 364660913 895975273 943203012 771256158 971290897 47079942 487353295 664229120 810939063 315037977 645826422 116822173 652060213 981645615 997713284 924017439 938308464 543753661 586005571 957972979 991814973 252466719 448177396 31230980 811014242 930788169 963418149 560337079 691934343 123547908 764209386 770280487 794465424 711072161 936690720 508060728 914529338 125634093 336795777 932878818 946100592 435785408 987571496 113032994 837773108 640915717 970865702 887095194 946927760 851444981 864648736 335069965 802431182 478972 377031857 698530980 923617558 751221249 811235957 3526508 397562519 480586165 984320110 485885104 727353216 596470108 788178476 281477352 476822043 805501315 886603582 947239427 974198386 127626682 424759293 925925317 963889825 137124466 656349689 387645419 531753838 442627563 542224114 482098287 655391725 129248397 474537901 14955277 223790945 933871273 951217594 197515541 743720402 164339353 286048724 974706604 991158466 614954340 802961875 266250931 458685341 377081265 927774080 508913678 829118994 854110633 933399806 858388374 881557620 831458848 925185622 602269349 852946586 102098608 645793398 472560470 846219087 508018640 768892776 667173895 676022139 248115280 777770675 853729551 902129741 135256778 581898522 358987212 432968140 104678250 788179863 884662416 895148761 837733059 892642392 39212242 748848297 805343312 935193089 218060858 321293774 668414378 683411933 280461005 496630013 55600472 698372787 606643059 796563909 978055219 984016488 493690140 875614982 457884309 934410750 111806226 921021940 704740093 857927127 372391605 483619286 554184737 741859530 412419887 426286375 53492279 886136715 960736136 966315240 700219719 726256428 986163365 995262814 844091267 880871114 929468492 954768901 349845003 463867386 257034415 788151488 129129253 205551347 113629436 472189735 827409749 831254883 361295848 502872582 675887657 739424308 663753397 970624451 58155652 322230129 118519852 236905303 307310498 667296753 265237348 274475328 867572409 917117048 810752114 966602278 498988513 849924873 61996432 743654099 837614756 884492918 354378037 664323576 964736432 983547743 191612460 663302410 822314387 944679123 469134682 632161008 127916989 731660689 145565691 292139666 484816725 496192616 878856135 973053250 390200294 959894390 377680310 695188754 243467919 590837703 397083677 578925102 379201422 588809839 125770712 244893818 853920358 878495010 196635568 975933456 618024032 957920327 272282135 381625493 645388379 811294769 20179100 191544844 144147853 150823829 42295443 88245181 793289352 861937040 200583006 353995309 62793749 704331507 345951375 867726841 707041328 881583876 594013302 890911418 633058242 864970694 948712031 993946795 380160192 448960385 539465725 865807181 285029896 755160927 114851731 973792080 546598623 632962637 222459235 340226311 105027923 568384086 873499850 926872538 812496693 875627109 329418851 957793164 280526233 784031707 191510949 704055493 923147123 988499123 836358345 914302146 42701215 450753924 976503627 978201295 346717421 516693037 218807364 680349539 104872881 414652943 618999110 818491626 597078092 856682921 192010733 979126692 166391603 813033680 178297710 848766749 667916532 762206816 528932443 771315214 81997239 910680143 327231889 768712838 744734698 785487867 528136609 895153767 640510146 875854827 39460179 398594635 607827235 685231390 382303431 994927808 772388494 899352674 879278613 910563310 773440117 998601267 92691083 497434924 971374858 979826463 376709364 640535606 887547036 944031787 465230030 850795739 495258393 957299314 721964588 852306820 382110952 943287036 788516974 954141318 535756118 826278832 20292922 369508873 477982328 549946704 516355358 794430490 784071676 933372938 846899334 866148900 593982381 683660111 168576111 307500856 954875151 958261524 612227298 971066595 36175477 710432872 464740488 812825577 399842662 977414373 325292684 677798597 45501569 421421967 778492897 890934216 539748436 953252921 330981597 464916062 838065048 880701481 28912252 384786006 447055172 651671090 22431516 153803553 704611798 711508706 696794084 987878110 206771662 850051844 217906960 958770019 378619524 936704352 781915546 929526782 476905540 906075244 954444350 994256504 999643497 999979892 42527428 549931479 27007975 144243688 870976184 945267913 136607841 449158794 840684438 917186810 190998292 450942925 627217488 790242757 984972724 986556565 419467592 819334179 537455894 980405783 416450210 630848314 830492263 943431348 238277014 972044891 455491288 509461028 23340974 948782982 258750408 411244206 135355434 232608961 768616649 949300776 635403193 687238121 129914046 211487616 245811105 993617111 508516666 693331490 94007420 731150527 385798335 865144774 62272747 230566812 965598183 972766964 181326030 682433339 340298168 456574765 238748548 443681989 741156619 937158970 740348516 812003348 698634258 909341426 264273775 367931857 425712753 769218095 881820688 931901700 647426032 901266768 558761461 616790633 173840562 526735113 195188375 785741585 444118368 816302726 995781533 996371848 870117181 938108005 464472738 579931517 47910818 634070594 657885752 760718380 169877945 268182388 898101319 930144769 761454054 917887943 456530847 534270712 22086044 688163512 271861799 717445583 62076353 563381004 783259151 897652603 664103547 978931703 373158194 587228474 569241909 958486044 870179669 983277051 531766632 875726988 449176061 576808999 105936504 472242579 376182792 696292419 374137164 943461580 187948982 577349063 753850280 930178476 427832396 776903622 915739402 954831112 509627894 561562387 826498161 969351442 865189586 875406059 150505380 730932277 802697344 992331402 650894339 690274970 592514323 715488702 74702534 726699070 319564088 605339265 446026240 528725824 325827633 530488535 513562004 825438167 250737448 800846569 290951864 293415654 143533032 150600500 370671693 723999961 382364036 685915283 326125005 496784074 34266454 889654175 532236175 700699313 408432588 946704424 935653758 967353971 644766368 950904403 223525064 695040715 783327952 976399036 304160142 413720934 631980810 857581220 117132571 534030080 960458842 998648577 611320864 740553956 450337975 542662836 987607584 989651143 338464132 650882240 41676643 525718654 936946215 937232350 853263033 953261167 560926187 732333880 55047527 852425582 898111848 952595732 413595133 739717759 625396527 863401533 770658574 893819451 486819415 862987243 703413717 905714871 34789093 208144812 907656442 971781852 440840002 669964205 685576244 737356630 258145323 658427121 371863442 532936219 818095162 833326725 383209243 755831804 563859113 577226610 662073173 920542726 236363870 601817798 40281192 646301406 688775584 897680610 40433402 894281899 575448648 770161424 282140619 852032950 589205957 872026658 219324113 245275945 254501113 372476961 426457586 898050700 239357775 299677634 16154381 300023806 477875336 750282817 362529741 932705089 37380869 533892897 390142740 676552291 438503713 870187038 604150779 942282989 240601982 948459406 797478741 835206811 656372813 808932912 979357609 988504792 11645402 970647138 310950028 413346192 565098899 924294085 529366864 992890287 510788734 820202330 895701113 964915410 596132974 846084734 673789642 953075674 207718579 907482702 950970918 965702396 444700466 453712445 755615698 959222784 644605269 937661014 594455282 772330479 490910035 670455721 565427534 657555227 3965629 736973396 231422291 703876435 754725174 969517979 756264884 882416190 812211733 957443755 176058898 226653936 905882150 930696902 386683918 555880061 603904573 972524146 346642963 935211507 812422549 853489559 416093366 699921977 383443283 695645868 86550288 184836798 296508991 670498619 719620483 966980010 889417580 965344456 252654008 622356577 248609040 629505084 259730165 679552848 103482346 978993380 730136183 877604736 441038290 992609133 203723900 275138563 962017149 980339896 367516487 399469230 801112273 803537279 364306434 809841942 731960345 932373173 710351767 840875098 206867918 669765539 986255718 998167174 435472613 965050805 982787393 996084402 306672705 747898981 395604851 487315834 335135933 943213835 609936886 776042721 558360781 827644877 624471876 646410335 573569503 872486174 289165079 501919241 305797840 740623273 908520459 939185927 885986227 974924581 128063402 360771960 352435629 570963441 472953896 481146291 700506108 938418124 819055934 825476853 681907972 811930894 779643429 994312799 45848172 851337727 762627565 917993101 993049676 999977311 106351478 452978553 901931336 939435522 42190842 982590247 476712755 519953259 386814142 745861647 276749807 584954021 124242959 749372516 985335024 996177940 163606611 201079143 307674735 954376926 59046004 181836284 241947805 297713771 221913698 515294796 331850490 932173297 522303539 611529048 402351933 594988183 902501713 937054095 480622288 829313178 302554920 644230139 911057266 914217761 689970334 744088747 346673063 541214191 667581249 895100317 114001953 843399237 184199650 670900719 591211788 683109126 926922008 957762610 37883021 420730166 62197733 259618152 884691061 995351980 304102457 733489902 214190952 386295281 659339995 720421208 279645415 451191561 223033613 727477837 630258337 643359404 602545871 732468901 331156921 467257152 739600423 963836919 443601284 971809547 446657142 992366297 38337833 870866781 661018515 949065709 701951343 799621520 743029246 924397232 455807910 966669836 202609566 291287005 491151007 859327775 462824138 701634159 366467490 567644938 78814158 438433624 551010806 871977549 732362363 964132415 887637710 972332642 712336290 946245293 623858465 715412720 869235117 968364797 596199335 751065030 999141028 999248918 311189845 640178357 631060684 858984285 977282831 987340112 642957392 978584616 567335775 784797181 468445671 747957500 613203907 952924194 479705742 705542487 469204572 571302803 708280319 971994298 416157469 836235000 526972782 739209916 156604864 176185662 452099735 549155613 84988271 148051463 587344873 711777473 676971059 681051821 494884749 499339302 229204469 774260213 800386737 924351862 40999862 619767549 925434668 950640872 245308503 387885799 160886507 825175723 854022205 981233227 804617574 918359388 656552690 701598171 96954155 864277298 748825390 837541487 150178366 519095030 993677870 999211162 196004168 971293196 502100759 991108191 789338831 990715615 458360056 899900002 84411533 916680678 424152103 973228871 570318548 696561360 369953772 802501006 284125001 698272160 52205919 166267635 957640161 990138014 625629880 926640059 940227674 966862697 274686314 672489024 859696870 948687540 531421209 711902783 949864655 975783115 50375172 137278971 968580613 998067352 922577443 932669995 707216452 805945282 709493009 947816230 765524563 859881478 535391035 711748387 133476250 487339929 170696680 807483034 290104080 303974366 328887031 993060059 719054961 797115433 597426710 678168596 465869005 474392757 445623961 508292669 989628896 995684277 111859713 315386151 213216204 989440430 739979184 973370339 438425432 558811065 245333162 487863649 38362920 501311492 206713465 462486456 649676163 721359413 428918828 554167671 373152883 734602810 670691217 860426566 894021006 915171531 917847308 946186271 828237623 952189994 490613397 555710930 211590273 401972498 116287310 120168821 808590413 992754371 277089007 341709969 724553324 834751822 650939155 700639762 278178049 816087553 354639179 713752631 226963733 380789396 816937735 858098747 447377355 729455931 566778957 960576110 103272949 939504449 929710185 970214700 123800319 838003871 50672556 973270771 569546217 666996053 919303626 999017121 640740473 653376822 902208732 912398169 95529845 323037546 319971739 502821703 456938865 548985741 911677673 924244785 228655495 694345204 758655209 786299532 567880338 982501408 204646382 952716245 91122386 770081578 620872540 870689022 588878156 772482553 870184951 951918390 941129638 969210785 393991679 680251954 957171981 979806413 494109739 954067524 892191410 949183312 105073699 887592535 887043953 936790191 178874663 936108352 738402369 946940862 422623163 734760648 831704470 940324394 457620070 962577908 696647612 706871930 556094106 992573443 944381869 983675498 938771745 989812531 623978945 757409530 191859877 202673247 619454483 957295838 755469765 946984145 81902588 895554323 392680079 834421190 974407026 976422994 296273661 673185908 227987244 423331405 660651767 758097630 678781737 716998903 837327444 885213419 262857050 526436256 654221322 798602468 322506313 574459684 997177393 998281315 79487893 492129050 362510593 786272759 159197247 706766276 859266386 863996427 376620342 802951426 342501204 622569977 713983934 765708709 941497887 998758883 521128211 952830607 731442700 960552465 130734614 173767783 414315485 943801470 699488716 807994428 509059318 825798178 188178874 295647207 772762230 872846736 811805353 822250933 772341695 928477055 521175759 818475866 753034910 787320401 869966002 929348637 721789922 822962881 469338951 938512911 484541382 594209184 550778483 596836449 768914847 769211567 507672918 899378320 244774765 671353854 336183554 598215331 510257285 800718667 134290480 890419441 186472154 374411289 877360392 918490475 56057682 611200190 198817935 910447321 481077998 984575104 354644463 830201421 5543650 891131606 481582425 674563829 275536421 937620673 50400752 576215408 586765691 936289625 501527889 747623699 740687144 997697167 798734274 880422950 339306031 795196751 557578074 629953908 968887348 992130136 388441605 420491744 31321358 686869015 922415233 964159932 193133132 910107342 561686797 870312219 299936199 699303072 347616561 860645170 399301805 981212769 884579834 906411795 430175086 757850683 257795369 289315420 579811602 747639778 133907078 701025080 459456350 986509094 433434350 798090956 878659975 888066981 901760746 908458974 510873334 981378156 368012666 799921011 808917711 991152834 356534407 615083058 592567990 628641801 267976112 743985981 541930917 903709063 245109768 845942964 703303958 829898955 617926639 951179224 217471832 499266682 686794170 832852850 281612751 763963050 56517634 238110265 64163098 604767102 261655638 779374145 472852569 900840006 571799504 933270731 566829277 631055127 831906139 885346543 898227941 965038903 894313876 952153309 536199236 913516015 565227886 813559406 753292863 770932286 424428960 837676417 611040528 786238224 805501937 974129449 262577288 434523212 666120265 706511054 353870606 648202498 268654261 320413794 48144494 498653505 970017639 998973062 42548417 232874519 456507927 694400865 22246474 97382909 277996134 802191328 581439782 614502061 54735468 380015337 402555721 736914418 986142758 991303168 899155938 981432264 632027130 649932819 727728401 800965730 659716787 807594448 389080896 721563738 386481344 735180218 18143564 92395035 36391522 432848344 797783674 900696531 983617405 997911684 841319616 857355255 156887152 639160138 138842155 351311108 840454047 886000039 100756282 538081561 404802712 984693075 697014442 727860029 785383224 833134741 499482584 831486181 771237944 857484715 371068520 732394824 267079599 296767851 70239234 515091807 946525390 978018841 937813959 971828542 58254004 214262485 504265415 878851923 335900502 918763283 888305487 928758104 110408222 333932323 887545796 978126879 944581291 998707682 120390536 844936852 902077413 961680503 701130813 892669970 149964733 248748533 14576612 767611968 897511620 949866176 24652754 187328097 784058710 852212403 73825243 213044783 72874526 156413086 152701117 950359716 262605506 583615478 553261408 570110675 386315963 667387516 380788156 690077339 797479799 811859519 9009423 230436887 395937717 938924817 760062090 781206739 254581533 515907677 828230130 973481774 268745902 957339627 785834696 936167625 545889569 783087935 440616142 732862119 851551549 936002469 368967254 377101844 314283240 384454169 844612945 871578792 691128821 693004996 204822330 589997455 689973598 952486637 708345821 817358099 5133711 607743398 479603627 722713099 847965330 960748009 33784532 299304210 830925265 998926108 905926416 949188738 596636223 951909256 856629239 923750316 643158170 915829540 637922778 718152470 840120531 851213201 432391984 893716569 515490498 751100906 260816424 936269182 112006245 380065925 383626529 852642448 449261902 670753817 742829042 783817061 324819872 916352379 371283274 819679005 53965769 885792714 162420446 841262224 986014056 987234490 690961730 701751427 58345994 336586697 224621788 954227104 600061171 900028511 396733996 456946586 941411997 990694967 61326456 586704612 18647787 93288652 301080454 679599102 352874277 611775152 684170651 779975038 355552646 486857291 333694705 733100312 655405405 809418759 929159204 949160465 178809434 370041613 282738437 520677745 234447374 761418918 419637683 782504504 94753542 367522546 256436482 825151043 481578494 826643936 644682464 988333950 985372526 999068508 509919868 537231376 621033462 790006748 544783896 950949994 256180511 276732040 817033888 980269445 875159753 942421853 612558842 780332815 807464343 888720546 763808215 977530354 102942018 385467269 720397947 861762048 881100069 883480376 892564952 946067672 433446978 580943335 753862548 867129860 405172326 946770562 206676213 927613159 742236779 926729574 918412981 918966046 721846724 874986614 789844494 904258436 894362065 983018846 441262350 837194895 214918767 375418093 399183627 764790363 428815846 823337698 830900361 874577036 112882968 656158534 719744191 937147525 432958887 767920015 768900604 794518237 518588808 600371723 401390609 469091136 109172239 765125729 539814701 994457413 164523999 466840426 616701183 787138791 809172413 952525235 777025334 872525457 886759255 976573123 63782770 871230363 827351530 848894420 291165349 718378154 460719502 514268004 185612159 559068115 544317446 882843559 184320002 269447590 169926641 609223931 811710493 907244210 598882656 807418835 263191806 306947126 26344429 482548300 500679032 897960478 211155946 566792871 431372152 735271807 497753985 863589359 973851569 994615868 343924188 478880083 766208531 887969145 291226266 493986273 503546752 528422243 694224231 940236928 816478497 950033991 324970681 533835576 860612696 980076144 992141734 995545345 893039365 936275395 947003849 995595877 661414555 697941078 124760569 436206454 170173691 700190541 676432372 952598023 712797561 840246259 830720978 983214882 689682780 925491485 316373688 955067909 852828485 937771904 250980040 696757602 427096826 543336896 600489964 756408244 981436300 987620214 875401990 907060210 745977245 828466603 864786836 948521791 930091306 942842017 997717961 997924322 947169407 990221815 782694761 947959648 263658230 266905400 614530221 865484588 359795350 974950165 195735505 524409332 154735940 616525950 615141245 750143359 63532556 911823847 523661049 570251602 337728130 922886479 996449477 996743741 295186631 685258426 36753103 226542476 529066907 747485720 302087769 528262609 214914035 553067890 720071004 804875589 131405247 204611378 392685342 417060623 162787584 207760373 132666145 407224256 415386420 630581649 225027313 634326811 562557302 750100147 91524626 370385981 354217844 551007618 721999848 930204218 11371470 512951950 595207091 651381845 964308490 978344697 57178256 184840525 419842532 912802099 248835442 275494013 119823640 740817932 608152411 987761270 461442774 586687182 988185096 989195565 498328796 790781728 95912205 378448911 258222585 990908040 919042232 934045562 356378405 457066632 359626505 594248951 602715743 952500670 830190070 981108708 752704371 841595637 344009459 870708834 361176747 698042532 765261827 910925375 513878562 603448996 506222913 748683284 338767867 466757373 674687863 962747561 245057785 456858418 458084299 942207256 487375131 900534153 430408814 524930184 57162618 344747457 868495353 970029063 953098071 957223502 313606946 827705369 310648109 350964731 313774791 324974279 39472662 170268928 900820301 916745545 179743116 537271964 809680412 830093124 96203156 841644313 922837168 978596329 77194571 362244649 876398265 958805854 722621493 853617169 399973372 860144118 206746174 708672331 329899759 930028482 164540833 276558054 567201505 790306670 450631623 785343173 14799118 888615797 8532038 767347902 516151732 579466851 445286438 869364680 613739547 969433991 479145084 609566024 151787078 319549152 659934308 834849526 344997981 623101383 329444925 435980101 770308928 938269681 146374235 873079992 727635015 802765823 727093312 986802048 494592125 723683613 916349929 963223541 919570564 979374975 120223097 850206578 733545181 738147258 759145799 832531773 920840104 921367830 122814878 527028664 667172674 999503772 957045800 990858800 547169902 760423701 445883239 838009258 655057053 935070262 881535291 954360054 770257894 990981917 211613244 513782287 526111321 815466289 628128425 901657314 181451287 987963286 86956024 378852162 730508718 829633681 524966832 975950775 953875920 983505985 641068222 673325578 238787769 902415542 922582593 927265894 407049205 514172748 916576400 920437908 697745276 957153943 365529545 610602202 798988613 867737380 199619701 637124980 611305603 750224310 693916154 889193761 464396305 642447936 646075141 663877543 241119763 473146094 375620139 594246352 919602622 945573103 432398724 549171364 972487147 994077041 42041254 505511898 786930737 983109756 817899365 881273392 942432584 955696649 394131423 832128830 182931763 511558545 617920655 802170910 753424723 780020539 947023414 949463310 715554332 933864042 287770513 358985647 958331807 980700172 806485061 956419203 270412693 952363345 678384046 755294496 876106589 987343277 498647562 583698919 27528483 50333441 66642109 898244683 576057748 980736186 586873034 827135982 135482344 932622462 48811859 850295895 110287556 147370024 822960450 886437565 652186324 761543173 13684739 872872742 120252527 453396374 314019671 831386632 572879614 681067097 445713040 605583028 965700621 989052133 844289553 979291020 533350641 739391958 686390795 713943757 648166200 698844988 842151296 930106303 874678903 977427985 159649033 719738952 329757059 867148033 524345141 524841520 61888487 773333072 185632785 874776504 382989747 622834256 342878497 968460616 477458196 628780841 130299510 186338111 122629743 310352363 435175701 680925036 904458136 975777337 16766809 797854485 257824433 295151176 481246740 949704645 527521070 570294500 687280003 875687448 516035483 742666457 83153305 736649215 242789459 307965285 404947988 917555348 953418539 982791701 47185624 289179217 849253893 897114361 18704532 499717005 57030032 377669417 472131291 679199481 186313227 305790265 290645673 874617812 556175170 921501716 591747827 596008817 168022506 593291067 888685775 967807193 890599376 916380548 953102171 957925030 952622069 953760446 128104201 218432210 497109638 647581544 233691052 532097192 615408944 758900315 405185681 552992648 843713931 859187510 287357643 643927700 287561748 889376154 945039224 991447769 462349861 928852236 504686472 856063719 700899340 791768886 338520761 957074476 736625049 895066408 39939196 88012793 393697004 620340660 190486203 617885960 90692360 959451914 495480370 615637745 520041844 889038787 445904329 735401819 186180293 691776679 75130937 375381819 381228574 759287656 150356121 320566574 333793165 975839550 703965733 921823525 658968364 828217732 888528782 905224814 943586914 956794536 361033104 698508366 199413232 409433490 255114302 990167425 407101802 522058720 379849425 597240992 258545111 370007545 205683128 929360301 815847869 841561573 405121240 524616445 533633600 676314440 593215719 952980234 121213160 328395267 444328827 646652471 258246763 608246019 609254494 994358585 877659573 972479443 804792053 954391245 309835593 504902452 799639559 962083192 283780571 499194295 691532168 791089229 164160800 170344651 131996453 266185865 665661553 680743805 128643704 884171092 702194908 969783636 155671847 761744811 535500182 648195221 556869584 676481455 682920448 787183684 303931873 397518128 65004431 490693502 580687240 599302211 467359872 539024110 357598796 629235324 483353276 985935396 818558626 974786314 356921462 928897403 719250604 880401308 592589970 700652111 315656988 856928610 887956323 943084687 606234857 723786753 315241159 783254695 929448799 939719667 634156498 751133090 476768339 664064958 884723953 999457947 901185358 942172309 252512273 473720212 666246559 833849524 832598161 917758917 561970265 965340750 944043650 970804124 229267850 889115513 858381181 903438856 49780179 889752935 299630085 512858603 216003491 765258219 512967585 890602186 230932297 532035304 259789347 345315387 780132873 825137134 650332672 932779682 253781972 381940797 872293232 968432581 75145429 544845032 78403740 326424085 892673098 910651559 314832118 365274852 424533955 757985963 626462338 955789250 582447517 888600442 548708983 857037887 680450921 968362684 615531606 753639104 560822008 904048726 377503498 889064489 678433108 727607889 444050100 598559627 135576746 577238181 514576633 957512847 637964720 975830596 185949934 710680353 20230816 858101722 613373262 978064150 656655239 716578293 693010225 726544129 438669194 804318632 628304465 848752496 409958336 700925021 419050485 807052147 256291275 500646545 397625405 612675582 209077885 390150459 577704162 847610522 488199098 945973384 995043305 999117245 933017916 943802590 614115741 650461441 504099969 860482808 993670436 998279406 9454824 105034859 282931733 672635151 314933098 779275021 232605133 760266650 446254982 678609784 5587769 483732322 324789021 338240517 228197552 521108896 135287731 971404021 300811003 982678153 950716300 997286682 214198364 873341866 181367675 481610873 399767640 602930268 478864313 792092118 511405692 604748526 467189033 607119156 109722574 944409963 427882167 691242217 270231287 861709953 407692545 766825531 15301510 811262868 649009215 943763634 667860773 724982436 506050713 642494061 397889353 994223770 482005496 985362768 259492803 270242963 103738094 733495066 109149984 967481888 33543053 221847252 853733993 855976984 843562818 921587538 976301618 988304336 791330111 847188498 236149331 504922333 740229214 929624244 371314866 804474585 673492980 903833823 879167615 925316852 190571253 844551319 2586437 249462746 948203723 973380879 427102620 897115341 604434461 881023077 894768473 936250914 120618819 859611026 962086257 997643478 50422750 130232929 508385535 608243273 238967593 436274439 830104787 865320381 503363417 959019698 330183616 512435814 265341795 935131050 773107992 975419583 445483961 749684005 585801824 806474158 713330997 976671531 770820873 947207017 59892853 381543291 242830225 622838592 624758096 725227950 872544038 959973174 288805628 557667083 789448337 940899182 69859383 998694872 858902838 942310986 117593756 132920660 629806711 912940304 104415826 825328444 298336328 794975477 981488291 993624222 249284808 629664231 172151759 507715583 254557985 303573602 603418718 738338089 527578751 929348287 381047224 604397451 179668497 471418889 661657305 727401823 799604450 956332035 304204183 944245740 35308329 142537150 595318606 961134843 566344253 975033857 810183438 951063553 316605897 897090520 17253731 44245484 513396078 899687131 158067657 280417744 563503088 942133382 926330281 990920978 346264932 823645833 756580256 858180247 435521360 646411825 766839001 941706263 231624519 740256304 566828005 996457669 985968342 999346247 991530646 998050008 219877784 341726332 496418331 719411033 599700923 792600566 491298423 841521581 307663772 526964698 782221633 848198809 403968851 610771261 258571360 757888450 685202950 909231517 38016604 385832589 744506519 975313695 78403282 458595411 691188543 919449079 629993952 694148218 945261868 961049893 803637064 884704669 61622021 98478064 742048693 866552329 40817056 914049881 615655232 984403019 983947593 984568169 376439654 940199984 435068722 714767273 625669948 697058512 36787558 237683217 613067172 945004141 91245815 569923119 156548186 640758672 462198546 482355118 152438994 371403902 814350009 980210750 882210484 898250523 700555727 787424212 539622544 910099855 419561059 456129680 164582325 708517161 439292776 859212434 520396421 893273313 670357905 791196220 286441035 794142915 911465175 913315756 603760759 694075242 429971753 983699681 658921938 927024785 881952464 912112919 189542499 722056649 621684007 840073566 142638420 143400273 309753922 895497431 678028685 879332005 84085261 769863572 209600830 440150180 941772268 980811085 166883462 296954973 927626737 973140985 167361731 235148779 422742259 463776280 978737974 994376204 65001791 369032061 362731859 757963824 959747615 986893139 405794698 589413015 896922346 993449529 752299377 757512071 917493231 999111644 727500367 743512298 786279991 977187887 89252338 875243750 212508553 974513762 28260368 455024603 356231053 701091888 88599557 494438514 709192676 895715191 441944850 797489782 315497110 689235740 431544969 549204141 717160667 817099477 532727156 668593740 27402784 283211056 75883262 995181068 432388690 583775949 472556486 497130623 996671082 999772462 374183975 395539990 350840718 480444927 535393222 860008362 322943108 905038279 796221067 840234761 884274620 923056805 268777102 900992687 556076660 564285510 230537236 379857794 355841390 539302198 744001064 942045754 184344214 456145710 747932774 925843738 444778121 693111559 479775033 939807231 685487896 977301658 428116847 547352568 312319186 789670760 248544378 982632684 943347358 951633890 420332130 593887421 256745168 926242456 539677889 734302002 715483133 827434825 941744436 974925199 900198239 940925278 313720603 998444509 601829471 893179910 283245808 509644303 496654611 609013884 830101132 967119304 437107032 527203406 220666829 348505179 206326708 358131264 159261859 384625483 51896620 220924108 402792998 842144515 160825766 344528606 226596105 856442199 714472740 806211258 775074166 913643100 460813257 569500012 476525766 819694973 507003564 535817214 506786425 698583192 564111759 817350761 926831473 939205434 469811334 588590343 581441327 870511958 538819041 778215560 277688297 584359480 743420922 995638043 862635365 914863553 519560725 977072163 630687972 815674042 645889869 774715123 751551420 785916033 139137725 441859144 602784 988412056 3106394 397272875 761621703 987701242 690304512 831376225 173704634 500276415 15822878 485604100 974857597 987304828 422281992 628879688 969911528 994770018 141074001 240553021 371088487 534203012 171304705 359960619 825713125 940667032 455026394 873734311 705213321 987958257 738052113 802217952 471096200 767299283 903778886 943995934 710920304 736797181 135482488 563321336 841131556 856517988 271785925 770258918 182979626 824138319 384978786 960194767 596716846 615794904 858475052 947868196 383642227 539334357 91051224 125120351 820063115 994671429 767970078 911347343 536616362 685420658 306363918 652443951 769687783 846026677 655424828 891825098 883863810 913886504 482813402 713077575 427259550 941175249 914008855 918879845 236240338 925478810 265601766 568465696 176385133 448344754 302739183 797474354 722838106 845930080 981479470 988559397 994845866 997987091 95104997 791551820 914515572 940757208 493842499 497154427 183976653 512731156 662305772 967124001 809855729 871400397 514249914 531708221 123506570 758242823 886257745 949367115 950673939 995371190 268749267 853994263 846642603 896707642 871377944 931254692 716585939 771456333 425926234 958676331 760499745 916954518 665068915 985896551 18486669 127662431 9066682 745066118 885703762 982532718 997138974 997340270 435333957 753363941 808684206 815480337 838923899 915068636 932217400 998904349 538247932 571057047 610691933 761886049 256928539 899899921 534792517 997843475 876870124 904087707 790360586 969154844 410574293 851757037 643156642 989325837 539525103 738940989 327891408 520522918 38915715 703688777 523119381 902296133 613675402 827055682 429930913 876287742 84878424 685565588 527893250 749879632 738819565 980061593 687990754 706003313 213817239 747754491 296988442 753045170 423932124 457716390 490214038 546427417 940166263 968111907 659332554 826647620 333035737 745437689 661847557 822379058 335312575 457381665 61958482 285803414 734828567 874473836 782666039 850292343 15037204 417984685 645854595 927532665 831816090 904729651 305141077 642463080 74337623 860888584 617010859 681856366 675690537 978083583 121993019 163373776 676864685 938291166 392330064 693030641 18580983 263551692 48325022 253761318 930491027 966097492 46137337 642808465 144211833 148060317 390563604 525148083 572236584 724069915 632932351 970396747 460408153 649406276 219154007 275927495 311159843 935486543 877895086 920261266 481159131 912257463 84480839 905392909 308452398 843564357 46465527 47567346 976293517 999125662 231116190 502369816 163525742 393560539 671428266 971939888 547750026 663830147 5709973 682969322 885274727 906963460 163703963 225844208 491107021 568084986 275299765 580301541 884071810 994169654 157703941 241676931 967973620 975221655 655498455 925482770 251846664 380599353 203365424 897966790 954566870 988485838 505500135 531854543 29471943 510444313 11087394 370727460 10449569 116886220 242742620 307951988 936660993 953043859 677721325 933027466 51886244 341476771 225820485 806511463 766301402 969560870 906268822 909889626 328503341 334051747 564321649 884964994 813740327 814212098 352541019 636637017 859617584 947973343 581008298 721503524 661637562 923875616 518949494 520492814 775970653 819973336 397798489 505120363 264876077 803452029 199100640 748683710 792324416 959211336 863363030 904294914 478364194 786740160 117166462 354392880 732624290 853215835 905939385 984825850 489858823 907876565 437903211 993506556 753916013 991044996 236272015 931388184 532159646 574943431 169576271 422021311 149711055 559890240 898820995 912789341 32246539 299631069 66509119 140644479 263083236 371525202 393929135 408499550 456427103 725113432 117990243 965137222 615925188 707274762 143931388 630088530 38275139 745738272 436727221 777740120 554146207 770436915 766183089 796157286 124479187 969927769 897379436 974381716 175440048 876965852 321893677 713101963 183743638 836251794 67229764 595013364 320734145 819962988 450406249 980476018 621826785 730878145 593010662 697759916 211371963 970431230 459881490 475362794 493771303 826303907 161555166 957208899 323454043 785490757 332785460 427247911 112623349 627320630 36260855 906429408 30865867 80937842 755126422 930124383 975438669 977731835 589583916 665735473 772652418 945936133 920486467 968181691 269878104 322104973 530375325 775130370 864381628 917018608 995689546 998811267 442753683 923584451 845225341 982214186 139178272 199659733 494081226 519208123 563131858 963665430 571037222 955187119 247117978 778209287 632317082 808957548 765236748 856545818 360293794 641441139 506323036 558279999 191907200 410488158 946285879 983303359 47004802 366243705 568822285 680639545 687159155 711808536 892420187 932290812 757850111 774165144 8919433 474032963 546048838 645121293 551696168 764037029 968295415 991917123 810341829 988891090 67076242 932970453 474469348 914917548 172831192 887455839 933820313 955275108 516777456 805597990 38895482 982426862 493313335 822990290 756213167 916613366 856849432 894143264 73053490 760721319 147539452 441979157 560351708 581792475 57571778 558325460 845420643 898043491 393486133 747613168 855271061 976853763 881397063 909572862 682772339 721993157 418248848 674661362 587316182 721265134 963845481 973834705 199559442 363611791 919579144 945470985 309308083 893590716 959694887 981521254 776732333 877357679 789414448 838784474 189156060 331366339 395442267 669939641 707811388 790080884 988828263 992014301 891465837 955629936 298348208 728423847 371445194 634648463 195762183 210447026 562772491 982208212 652587179 772224148 420499307 629977605 384544793 951543882 966785773 983624435 514483541 690215248 16743879 74431715 859182003 957391075 49061002 641104227 959512005 978560756 394353247 474483896 132661799 753370029 808244627 814482324 264223350 845644927 89190849 690957842 587108375 751202593 1473504 423159609 614739488 746789554 426389659 508208673 312777541 977785027 127675519 429931180 219830334 516168015 467007141 885166751 384832146 501313611 789739482 906660791 55187306 392784120 265385228 936875235 713750107 895539946 886634120 977155937 801655518 873523358 705021635 857523108 21620123 789196957 969738608 989117947 97778073 807580281 212845698 362697128 895811525 961935440 543642941 554786851 909408913 938314161 372252086 974679146 168804097 289649555 99591074 820124810 742618052 900141826 7556195 58056637 117585026 328442919 754771578 805308933 535152026 934586500 670996113 816444642 1432328 244883485 77573837 988611351 651543355 912557771 92757320 661153355 466367236 994452400 917336676 962396057 607897204 678072765 13552053 637068800 676461764 842192378 618136811 755917854 97339029 928317259 862559464 965953718 112493856 482919331 507985673 903389822 536216249 807238169 28111247 489648139 132830869 523540160 761414850 959406823 937072073 971802242 768763154 900208044 878270239 957413816 865051528 870921628 6011034 162550748 539654937 586304653 985839100 991319855 405211405 506939897 113085768 579696863 596794410 834198129 493604484 641256169 81310187 993985863 2995632 518572861 77370537 481778248 866302039 866967562 585976083 621038488 239418265 911030287 489925427 999591596 738791265 987661190 335115209 861407180 420647042 916473567 771617067 849579317 768433759 930591369 60278496 685870841 351046289 482335077 577110519 596028060 117594793 492652705 291537753 310389163 170828314 199426542 808988006 863878433 199200485 271999142 798061187 830519338 31678320 493467099 725698557 745219515 151023041 491626057 584748351 886164418 671278277 804092610 537550421 698696120 260718077 695267654 714835742 985085118 83750895 445020439 759357980 939989375 654472415 745580066 717586128 925230058 344935614 415814480 721022195 833553158 701122892 844287944 215287085 468761161 145883820 679805540 764206002 764278400 101668287 595889840 816587243 891433593 948234704 957768617 957598175 975078066 339077095 906527108 729401360 871997645 764211667 991438642 887076836 931727285 70163231 451772373 318591632 665615945 970265440 975734130 923169177 970823320 614858779 778033056 254513643 623084690 759030489 925577677 723595853 979679471 977286157 979594883 742250353 924555281 960864985 979434507 778486323 944385269 47458845 369404242 749503477 778320034 994678161 995422244 458986043 973959724 922041759 939149830 250085985 311656841 789195278 801705325 250710245 799811592 520065553 795070087 400883861 982708424 926207474 995170184 51666500 914362725 87191840 667149034 120349534 498852378 923731147 955233522 413698286 897168792 669466477 812869318 54694550 713920641 803154073 963352960 234226209 568646414 141677191 474335996 369270647 660840241 994507490 995889881 150225893 988962176 949187797 974874371 829192689 962446626 983008862 993595012 401023590 587102660 782131297 890667423 599011683 715317814 721408855 793828894 75410797 288556162 665602602 678500597 848819916 920174306 701945650 926409965 15019319 727375309 439166969 452527634 912691912 938804717 836453345 888692505 204297162 744797472 905980942 909922208 303527402 847901384 24233541 212017779 162927015 482246733 360957185 567287619 499755909 798012518 931980145 939549903 249407894 905778874 909169657 951288316 199649554 336708982 265951083 340377850 533116214 662595932 577804557 743229111 504309264 754919298 428157761 857963055 192598148 479832222 755449705 773486932 717311647 754891951 749728327 865159773 353294647 421310866 526088316 970095715 608671357 931067091 778830192 862627657 64530608 748520092 206863289 495364525 134086228 620296159 893392752 958659152 520421342 948260478 218638439 361945680 617779525 822666464 22691801 797745253 661826431 664650433 881685575 965259000 246466738 616471801 936151255 963059389 75144222 352498241 795581085 896470993 729844815 778623937 834245833 872944655 138241261 219600980 326073496 879047839 429298469 691886131 39044705 656306312 136697688 477950388 976356137 977578199 901184375 960497750 16124627 23202407 744300539 879073000 748174974 984207218 950701407 999668611 122285656 706205804 792323730 947588310 216546178 490345656 934875883 975871995 620789059 801898814 665688223 753028571 255981918 882104969 204721969 923319737 986331447 997675027 790291297 968090497 313025726 540603753 504802454 905118864 628308129 654182429 379946393 427985853 705621642 946909362 823086526 888437060 273431620 491372924 927947785 967600595 971662763 990732324 767852282 843340846 867344541 907013019 701746975 905718175 499127824 563468786 407478139 945322864 119150477 168633599 598987856 687555355 695817449 710816333 79857010 137207158 813987300 897760795 291207493 559106420 250195616 462556395 321115657 629823013 736724180 766514415 218189953 293874664 586571532 958553235 638751291 727179158 727417459 897930108 669147850 693375602 820575240 898807911 143187998 372780409 167745749 761136785 331994688 604268782 943891001 946762304 137663526 193827250 388533193 947184008 184931266 279957180 99224936 152309601 550953054 800056692 959264576 986242531 477675589 760630629 132713259 762955263 81494665 508144218 342936219 363463824 756387928 843435788 370785213 910221454 663808391 728070465 43061661 50317515 31769058 312858425 19592996 269245681 663331816 776415016 485496727 980867173 447389436 755267524 701341888 740298685 591599954 633985098 157809199 579621008 197424625 216481607 268682999 919362408 594590800 777061695 756413607 756929481 956300105 991218212 135730668 632477580 800167315 969624183 679656140 930642606 262607810 650260170 649035332 932650762 939771893 988662182 955081263 980032187 826067667 896791290 700265358 730595370 322915747 607031347 485414970 777200013 78354257 924455393 707773618 981903147 870118978 888676471 882799703 970706382 626161002 701108191 676493647 909974849 515344797 822186236 710175582 989659758 450658544 600815669 782766978 943387312 788687609 866625354 976133521 992697680 822129708 969281502 472154294 738599421 956465119 978740134 663701576 684008793 133088780 861547382 726372196 908179133 263175428 695104650 662000696 890754672 607915892 980066453 463377070 804892238 523865180 576512477 233031255 952316960 693625380 732621035 645898345 878542446 240280106 535837018 607981772 694963289 131767342 142615410 964275050 990549496 863294170 908773905 854248362 997947005 372398829 671732336 57657689 644662914 320741174 332253635 29556457 990139371 825684921 929996610 713476937 819249635 316125225 398070713 55976510 129295557 949310895 987357134 998869469 998932939 368853216 943481118 189603908 191230356 407841886 434586852 486418904 714237099 134393300 406649303 710709534 715781330 619598008 914079424 318994863 759404662 848841926 931733481 330643091 396228973 316066268 543472998 310317452 489558275 712473877 712712717 827527259 955016294 287541650 521562596 340189265 662972468 542473148 544880319 594118334 964480135 291552393 722475468 178368745 439600265 10284230 122104106 900633153 996127296 309402050 910932445 815359316 938488665 134414925 673551040 269243855 539200233 488842768 553608023 958334388 977511261 590423691 637030952 735592883 764514429 784638643 904443222 630409006 906510851 331979021 454817794 138586952 239006306 30035156 201142929 205184892 526285153 950845078 990618939 86026212 772721107 387512361 786143470 72069424 380722952 92847072 464470696 323238201 671828427 765757684 782219431 64358949 781006348 424661619 657355154 945105117 989923138 991143306 996434197 811678979 871733192 278682014 693289096 14528118 987363533 150806170 961411248 920406120 983019656 111306672 190311108 457053150 893762905 560871251 972227826 55750859 459307551 739581538 982126520 925567154 950666211 782073140 786416765 742435583 748838931 833138897 899442215 832288085 888552683 67251096 565082689 775136548 973225117 785268184 837544739 21184419 121816909 558329635 980717513 303229948 620823608 345536234 950207226 62733535 372268282 596483728 934906672 761483894 763203418 271451296 583850148 338253030 786974179 5187899 296388735 779806877 966897507 166502552 518317429 817401679 961738719 540264258 801187506 212396153 441964075 887226208 980355915 293037481 295660334 249147416 432968579 254985373 654555567 573697125 661870182 911058040 926301676 759715492 804907903 584398698 772971408 590564076 953142407 310940561 704628686 35447463 215094133 123890341 396349258 598434688 737646641 960454785 998931806 429335424 936927218 357368201 974047543 127554237 682161624 566259978 712696669 825046859 912615499 138494182 711725269 817466160 993168684 582401796 870932897 756232299 988879393 894347040 996950877 916732803 972967163 622206454 932292165 248279175 897398023 351543787 397686655 148218655 755613100 159562942 569890948 865032519 898199770 158911386 991531623 446935594 683638374 598561324 852747649 192326708 678378819 233174919 640796800 770592081 925177846 796200738 837633739 387022867 461659093 804120637 973019089 804321376 841889089 335412856 851980136 180023253 554363429 336457274 585135024 36521504 546364656 970883641 998338291 337972572 644702400 169340375 436121699 477094825 580787616 434722324 712874807 355992506 982951286 397660433 647739309 496396330 886071649 585621465 616754569 276772849 449872103 180015508 864908735 153224858 882077607 882219417 963063789 978258230 983251729 318159419 943378872 266615631 901777304 51329697 56928312 659783924 941870700 753917005 810329532 862339215 897641366 602943073 621906624 971906177 982137098 193652502 990018056 712638955 964008090 853989252 931499232 909174050 943427198 678881740 949175313 372142857 516799607 869366430 968994776 573700096 815876140 50932438 703758159 9910590 476525299 333743981 827561186 866451069 922773004 166586069 543792054 583589714 593014582 24866917 453745508 181225726 856097347 814092743 970660680 539149703 999426346 731112088 800909411 531585774 725504386 217008842 852121565 992643668 994977819 976734793 990261823 372214274 562293614 559378167 723242307 48487651 452829876 680861656 942739389 824359779 862270295 719430034 889091478 953002643 987802831 846316277 927047520 158484486 785392449 343117760 737217902 809102058 958312948 721629088 808695481 393079586 489336316 85614154 204540877 110714511 441868178 40470227 786087445 988750052 993119702 795472384 972204057 80394268 574834402 469100981 919515294 259443949 828819133 441298031 908011092 373936125 996751806 146597222 825577547 676414589 683308783 587300196 674034646 779484450 926252018 94748822 654734625 702148805 833614542 352344714 862726665 540922450 872132591 625989128 918704077 856051669 946427654 417145885 929253268 242047240 773237413 585221626 603311614 595844197 648640887 637618258 880956976 586401469 629816189 324785005 700337383 234121088 438584682 161657864 706387407 876536683 946261207 93715443 750542796 452995036 504659839 992340385 998727153 940386952 973095842 295048904 568167781 329372843 963637457 347995831 801617978 607839894 716196100 889202347 988036241 374980804 791747328 220257817 379186152 4658374 764616818 425656080 484680293 227307204 963205538 477667207 760765802 274320356 355759338 313704586 734457474 345288420 835230392 972479155 995789300 441617188 886641724 310237400 950739514 817116390 861573146 594436872 679472067 972164303 987495714 429612701 933463586 734577993 774842675 797321777 853283434 312870166 887154448 854004441 854146300 534987143 801368411 671564156 717853660 269241020 382117619 786691125 900847855 452307328 729870717 571488538 897528786 136933331 595681541 727500366 815253989 949862270 988771183 957044465 978290240 287531327 771663831 467723343 923011543 169774981 379652148 381038233 516530738 170337578 900358751 479665701 754517740 280128591 453567158 331361461 721193899 652457278 689762079 696480985 780875934 764111527 924524552 188568096 761430352 147710973 573170320 540256549 823053960 924499727 926812134 579080238 898055326 546149565 656196858 568766423 670068970 270098863 402499704 885186046 969880591 913602358 946138676 50639505 981441472 150394697 937314591 586317469 994565480 414442512 856196953 380525469 599366608 406798813 741408548 181725164 343580817 912998375 965295565 316450630 640605749 520280671 570823067 56493691 813647200 637131997 806927301 456491298 728603277 196573302 915423381 729957759 766984125 93249391 498385044 411758447 918905171 222962331 554353160 604555409 900622503 542393334 832737665 857354220 895830661 739917728 945170532 227051302 682145459 7251043 25159324 767880408 933895696 355326125 691516230 590197357 643007965 233034450 288107634 969785033 985950807 175533868 287541828 637085654 776835928 476345918 955640398 659524243 659587191 359107622 963478162 904166327 914710057 237974230 369796665 60827406 179266659 357933987 439213101 302886601 498201694 120849037 200916275 3832671 146188877 815026478 860573956 626671167 924414975 394437036 847963383 797316574 811330371 395027894 464797917 534510400 943554429 840875103 973923701 721103853 990752537 882009587 910709293 86175048 882124868 907685656 958048951 191784700 466798138 154910085 744128893 762547962 955727496 524369801 904101205 117745316 226178761 592326990 694684775 861951551 893577518 745288531 809735767 580053512 724918639 450909907 700836443 223703861 680236352 125587845 809034558 319575160 939498163 999359311 999741456 658017056 922888270 532424034 894936954 316340641 389850422 818805234 936730279 182978305 680570010 204323142 783340753 606128150 850600807 948553614 972259513 403500841 428887798 542105128 835637323 943576890 948255932 778728574 831543643 506895120 978352874 356040114 860060722 148018394 177865549 226379929 720353826 55306535 739329081 358169513 565230369 619477972 903052777 987906619 992989078 249479148 733846621 604624350 844648495 327395088 825003156 904431201 968763823 161208885 490050870 730089682 830804563 935106052 957828807 6624054 922586408 626980307 704590663 137789581 556232245 325013217 477245810 832860252 988189913 363770801 500027717 727988103 848047108 944528191 958252882 722439300 817917384 409101664 799934887 401176954 591415567 830644000 975317871 805895158 867487450 58518804 501832940 357491855 834833065 103728830 261113056 771025169 909026501 664089155 759807712 287630206 480465198 299134609 490969211 989535402 990426829 681288320 756866911 570376050 648189851 137170481 335956340 105925492 108499897 427283520 855947329 782558553 978343966 915276428 995639092 142314897 728219362 648345327 716641598 903302872 990132276 988693600 997517725 424312747 844395413 542183719 734299460 181106688 435809046 723296375 889147596 304708723 311968997 526177662 655380021 340113043 553867948 866279021 932030616 697291586 841382469 213470094 721858574 381280198 972253905 460540148 579725648 52616945 667058488 475618065 983392968 863825919 993813533 347314121 806407764 748839135 824807827 782748720 885799254 397570660 410606224 317504826 391768678 494356988 923542643 265512399 360358681 348835596 474464922 363395339 418862543 463702247 640877081 841854603 982863303 519557258 778322134 632592766 796869061 794047063 936407493 562534091 829148786 451680625 969333371 456159082 764315421 997975531 998320729 254591102 706392114 797661837 889631330 203852297 596695289 134287957 498843842 691723047 778974805 174447129 598329949 741591484 977181204 757132307 913219641 705742714 769633503 514279643 646849103 804707753 816150573 681541240 757908203 585859490 915683882 351874904 969047512 403161252 910986566 369256584 474307460 968763546 975071236 346482916 369792618 251758747 774788337 110707125 269470464 508214679 831035659 99957845 923410168 701149391 999590623 851392 658943100 662516311 995878042 136694283 681076620 621894231 693744259 398361855 897341692 328041583 463693840 165182530 353431121 147554959 468153852 837231472 903441355 956676491 967611742 75134086 88250782 451223837 966451526 945328924 959295366 55621973 940875107 20181943 795546549 183398488 720056574 985919994 994920036 561423611 708625305 402338612 764995911 101558215 754716301 592607710 652707926 217113718 939882224 411248744 637725405 557512606 599240837 234008725 450624696 65590423 555253537 183191679 675305478 85754003 235453144 98296460 167546885 324686309 374654521 554564166 570634492 547565512 764288350 952452904 993082551 324604139 472695856 386935305 561604492 2651486 537315262 621948944 936286685 555071628 925974875 373750162 883131400 962958860 980215127 200380883 941584423 111069126 644298274 707345037 853589191 123187286 542762230 729949807 824288936 510471896 723929071 443004248 652919471 280393873 589373276 660095950 886493146 383546994 723214958 435982381 555023415 664350432 926865899 973651081 978681739 634664865 772393426 301394965 566771824 593055114 957892697 957094914 986778153 408231215 786882885 568462723 999339493 405824750 857599364 288590821 803097642 581336208 993004205 609890862 807130911 490403567 672564882 269644780 860836062 141152732 198667218 957046447 981301946 673288356 677331075 395121901 653842092 435869275 574854626 593767164 594359318 879517401 955639775 658084469 998570398 514898555 962735481 889549252 924115225 537747023 896168510 168172588 545795138 446420867 557390087 87342808 209897282 637372485 720172167 161342297 790893183 497340727 628507563 220430902 367328506 241043557 257139842 235052711 442038075 707121990 801457611 424097786 895143004 614515764 655646528 292153387 931198445 760311229 952905850 332865154 402145623 272448418 777805408 358271725 479155856 927724033 971751051 583264020 746592625 417133207 926682937 634203574 725942636 829711039 904310693 542526304 677986608 228924712 502354131 683153137 721042948 229949741 512986476 388488798 480300657 941490005 983997382 588691620 690352267 461522591 718800997 410421803 611426568 375450385 521459833 136321675 848442549 855902425 919748985 806209571 933207036 954994593 960554299 716465099 936169484 645392559 864018229 352628858 635021709 338890609 746986445 549332431 560039868 47202542 312739834 261779400 327966277 999254803 999679865 117249426 443618310 554063538 792157571 695701437 935538846 389150930 431991242 749107933 749380822 183267062 987433169 229202417 916613281 859247473 996405959 343997799 574711450 634775849 815698559 690269864 985756987 583148463 874989168 364751930 792665397 174880127 352753523 935543365 971098302 642418928 960791185 204008290 638380104 257764683 789334202 540865228 694752037 21455407 921209850 874244705 905555212 112412194 498985421 813063227 813349947 191984540 652695361 241209370 717309007 410955172 505082278 544143387 995846751 78635951 587410199 872626505 979843890 672602701 992810148 140916259 429502795 551089405 921570529 506761074 778097751 542834430 698139634 52314870 953211713 325533621 473146079 590060762 986926025 765906149 891139405 92803983 838834953 774525511 987854761 374243349 539083887 111638364 880169323 360359409 522662497 300539404 401515430 887734311 947420400 816469005 901998760 773274241 910909665 90668558 887047129 87412671 228133114 473777029 949296338 917192304 958223250 453599655 454598979 286030020 948039082 936134924 969941882 230278065 583629076 341775156 668212347 627410674 809195828 646371837 961052913 585257229 939688968 753029411 857768213 262359841 930018380 984172812 996814625 541483941 924120682 205235161 866560450 345927450 757156818 532307160 535263544 872133236 887906090 617021917 698124065 59439438 941978431 753558866 842597667 170490040 558496318 237881740 920601213 324485930 638129082 635408261 692090739 42090743 623833406 127663137 154092478 347238710 511953515 617110706 845077945 107220658 248173011 215196100 495878278 275368838 414430899 673733923 894555430 523691392 645115986 205798861 941304035 551941779 889302461 826655508 900147484 805651854 974256924 210700121 358297535 648358968 658205301 604554908 938930800 773927322 795924322 266555220 602135420 188175701 230707680 377427287 558591575 928539609 995720263 199187341 454061294 335290529 646890849 525560922 956814066 841113076 925773268 635877828 943989135 581784912 817829107 366140478 429076415 382946294 666107499 810835498 829249326 647447532 758554447 340710475 769348967 835013107 986487225 919476690 956961152 533370742 881022033 179371051 447344760 72756560 538280334 223760118 387859080 287198627 471895577 950096178 956713232 730454631 909312355 331448465 494928953 769097764 796591858 744748210 903051459 37409308 745747948 957589531 960323853 305508126 985292808 602438956 838522596 439999792 569169062 78865784 705250062 884004534 888573244 869955180 992821479 596954316 679619641 369689458 718567122 189497017 774225953 88909860 92721476 381856978 853202758 904373765 933308221 127997811 366973175 105512137 483466349 725002287 866971095 531210386 928192601 772926152 933176865 753135162 846751984 2785478 859908045 180311140 943019692 113938190 466949957 655446094 710505422 382729565 465815995 692632693 967628215 288354087 526611200 75798503 954622639 304546421 821379898 2021546 346067386 401375523 805943962 193187238 997622650 988979939 996537945 380090939 540907253 782729049 969423046 703545636 805319306 951799985 981532613 830486817 931963578 829405603 933473526 816235110 992517041 70625908 518586950 468252354 642606712 90951100 219074990 611123053 885359131 641444930 899364334 455983001 993985884 816973990 818414536 378121887 470729361 874476108 992114758 88880959 626571740 45561121 272883954 307631575 952463832 722749327 735381881 297365709 897076298 417244536 420670411 660473397 897750901 50346358 621379786 219131181 399604377 270294590 502000808 716393178 987136310 372757153 762502370 744391697 917978404 745554963 817910596 174584798 405845853 602768278 766485017 770265174 864820393 642875653 926478452 498794091 874377670 817307776 959110628 887859996 958654223 859827594 999321827 39265960 105862357 14854057 304419741 861643239 993327367 878064627 930847419 108332950 601944372 932879599 967629336 504121247 878370969 206981108 477885104 863738183 937025615 649708554 844605236 313262962 695457181 166587366 874892969 320310438 790746047 610430087 937018838 862367584 993861178 854275435 965035913 636541704 657047014 181626712 799914416 748669823 770498579 98288390 494015753 946649696 953051906 561880913 872420553 17804125 618377266 758428590 883364578 863115870 907000984 650443195 697066155 33518556 911700213 353171121 374613757 545692224 663263435 882832487 969608344 844532272 978547899 832380122 979052030 707968374 854151992 272750315 497564716 992848800 994886589 329854551 505840121 333920843 997051051 600157901 783650352 678957436 997308414 808962547 901913634 31439556 739548885 195988602 362365567 6494363 909985947 884552552 893124395 670952912 964067551 29031377 852409970 829364537 926596931 971995171 984335142 865343902 896859180 38242499 291779045 514484266 782972354 120496408 571495321 396086301 432744458 815922943 966581119 521509581 855875577 393062884 908374423 590415775 765813261 463371219 505019796 307520665 543436074 785399624 789939124 803990702 977404455 307797433 800125388 802552471 840120709 887514180 982003438 510957110 972369058 651922055 872054752 611906218 783679925 472449947 634623992 124752616 763795779 497951771 540647689 572415416 678683354 79014945 704523201 757424185 781172273 197071890 488253040 572531428 786098460 817461533 992692659 335697764 338034135 446294729 668275429 48436248 307472246 255887281 455596725 719744784 921131395 406391569 879402163 343354439 864112914 390986651 420846465 936158074 959110007 319041959 697505427 44580076 880519903 381940786 976033474 861505133 991954510 945184435 987599506 148180107 397757774 741199428 823002504 982570530 995213375 935128884 994619421 44162071 808448542 348678580 409798106 224431 659826336 277324351 723116799 180371490 988994266 716859001 896774329 877054348 900091442 20200721 900187095 885623590 958777002 626997781 787569333 668617486 741787451 947003775 948948100 631150534 889715497 201222938 883314116 350008576 576359015 877612006 996497271 508849485 899041582 684788347 877358275 748156632 790094727 801869129 853374169 290903873 628551401 891411568 955430233 628673206 936181646 954680087 983067810 4287619 388674676 826874215 927009267 97955224 746583640 271477410 828326517 862059614 937993524 287088113 371279933 153755317 438730055 980491409 991253092 940071543 988138138 937175160 980333158 514804910 623903067 426479802 868881520 683054363 723677726 382036697 673306824 484519989 810877659 692255396 765828022 389187398 746866476 265188504 424750091 385791295 781565480 865241303 901844321 182331710 605018046 517427406 991435931 225616488 786087514 213431208 375591949 139893351 660912080 300950074 742843678 418030566 432926245 130607981 482532020 166425977 975671854 366130049 845079704 408950496 615149687 439164696 609016712 234146787 362265103 834454611 842181739 60462511 386390754 189863561 910674411 197523504 760997955 101919638 480109528 32057515 903565722 462590818 931316767 785149075 930857288 173799394 779660337 719278219 997987315 392252157 634134240 193706360 361332797 976076264 978195756 925047614 988370227 812460729 851762797 69448775 631722865 912717700 966768587 407346101 783327295 632866034 878458798 667265556 872681334 574578517 727485804 114541505 893240777 752790761 885637705 817355286 837957818 77910085 171187508 930034862 997096298 366773884 464004130 474535831 483198848 7856022 745966963 634056220 900707477 709147870 885166612 854159136 873482270 741581788 991187107 129734560 439879911 893440036 921840104 169663016 821457513 137958383 629246787 586830080 603075584 6855546 827399192 954454079 987873464 358120512 760400775 382153859 936840361 754368363 947484545 559051573 955087438 795679297 931781685 847008397 953511669 151853314 292651218 991739636 992558406 632792975 757430608 188762358 517915749 610535570 822618830 527888647 888404760 701126609 735752254 131708531 558623175 177539168 252112680 551220851 978004667 952368460 972049599 237886373 607676603 163565459 405948795 296198950 418665343 802688115 900795533 388998400 713597537 737033559 747052580 952678391 996560968 128911353 998502998 503892812 518227846 445927619 549021047 495149396 633198392 989967965 997038217 852720177 937647692 949627100 967072052 194909785 858248178 882171058 887603640 1998605 372429742 208849964 692519741 894247406 975285017 693100556 737482143 294942991 688477440 26893958 840212876 15627720 601184313 563111160 764227282 959719442 974647554 851580538 941352406 394608972 596667275 47561430 880115372 986751321 998035727 312245775 702207122 658784576 978481369 344754719 893389384 214793453 928259897 740437078 902098608 79273513 266224365 159129181 781930715 615229811 846648948 756733199 934908437 213987781 365075977 382075398 836520684 775133202 871295842 10596403 784003276 40037762 530997480 401710541 610535093 152018104 236165721 879152734 976414807 727321221 735434805 222328079 858191878 849685240 979921258 54327451 522570345 236151519 579912575 210375491 648073924 686520318 905673074 2556556 659406840 296009003 595423091 686668600 987662541 163210041 351182514 305131459 632346935 58597144 942705814 561786394 978903871 416507041 931111090 691216040 897613196 499521155 723603362 369121349 614549059 603989188 757460416 352712878 710310437 747083304 918491706 198094046 422109542 887388373 980086240 145975063 589833650 313779685 640085366 792730197 987379157 786942347 840597648 251561579 476549548 245881500 936220884 759415730 782878575 577508569 707086284 959918048 961183324 915660837 921828427 322005619 866613503 748426679 851811406 863952061 995340404 264820821 631814913 791404141 804201858 451854787 952416982 844567981 971756933 283704646 871874092 97464206 277667759 846360117 871770274 76482626 882953383 708826082 902501622 808756373 968761759 428717245 877760221 181805373 957993833 237321588 846619703 803894529 909494002 265139299 375232026 466029355 671187339 510448786 524665969 359748187 785079972 413296209 800523007 542434140 910988683 5178870 518325311 435258951 750067631 137847921 325714923 327829945 982755210 562587209 766822364 784044088 907933875 414388580 779762913 898491713 974986662 804788006 953319692 812212219 960482460 473948899 719024472 416755374 790630248 390383923 796675652 96264811 779203945 549898949 792849769 946380359 968534713 199197988 574943252 390343015 668869233 212962047 990320129 526468660 972486181 939234267 958418664 159853370 368777647 90282657 502874652 522245762 953900686 101929123 741219328 388974404 718864199 311105755 990852517 966353383 997921641 844119339 953917620 770379642 919145876 225362189 480080206 451325534 564712922 774900402 912608029 286346180 842621141 19198942 108260977 887172794 977388569 685645064 878906993 323879446 460754262 846643486 964973155 832786593 988174332 165966134 575498019 214351951 600057008 203052369 227279166 573216573 718823137 976024011 986128072 658688395 684423846 77161990 103001699 231915269 715967167 720894568 988944176 542231517 802296305 163496442 840862930 251979046 935532005 750447774 898038761 61117366 762680938 224509227 945535231 709500240 803916488 912036186 940628654 589918185 877857565 927021458 986553537 746794671 998941479 511725357 902878038 9405820 611625194 380515257 383529730 223216661 278140519 684376634 753938106 327793003 659272199 890233490 968571274 799830263 888891329 91223857 610492051 649771861 820977193 193034245 798164901 226831261 992346133 927801583 994485645 83800899 951308870 457557683 781537153 225322597 526677207 569239450 749759497 84301710 890637547 150811811 741310612 49855970 237994862 698833047 999899227 689007966 781738509 143616962 770861543 604712132 975032132 179979685 389305723 889298303 969707823 975784162 992648116 829402498 935054537 851486445 987988433 376742362 570550485 316042091 933035288 596711336 867909542 404159639 571914911 479378023 874173827 947084232 985706439 727497850 975383501 723881745 871666882 991525262 997327033 35535935 887492019 797763319 985752579 367323954 934881595 306174608 675134081 280694674 617503453 796203795 892181441 663972512 699514850 205644115 870217452 506601394 879696886 85548959 107779957 283811864 494871048 103501070 131737393 55426758 651165794 652629346 844359687 560276562 901155526 315645299 892748560 103229090 575191887 185919871 593573322 421337357 746717215 846997561 997548926 237850689 679295261 970607735 998359703 853096671 931891376 272768015 808955003 926744710 932380046 319212685 368734978 114239508 656162750 413676808 557965797 626230779 699541450 483958003 946060317 751901226 981352927 857721136 961920861 247445979 830260764 119037247 266901596 989245349 995433909 853855104 944484042 406299403 472682300 153233924 163877601 30566627 62874626 700394564 839678107 149018721 344014169 334254994 897989810 531609685 725194456 75890491 133487845 365370846 378053598 881888821 992046365 568401156 699340991 604030566 725222711 56948180 649923463 957990981 968062515 521910655 714536539 25956307 471612465 26672150 185919897 14309926 217413650 724278111 752712733 346710081 659612202 6928331 598902507 725698076 946396126 823568970 881697178 296061736 403468270 718050942 751009602 698298951 922756511 765748207 874021284 987086027 993833941 926900102 968724309 126624690 379754707 356410466 608358887 662467687 915073754 922908086 931484307 458674630 527606856 75702125 461077173 586976439 702189280 254811046 590130213 35492 546272314 727782687 973840358 477886869 586094329 957554322 970708908 597362996 830044936 532417877 749615546 737022220 773444676 184118959 498823427 545160096 686998685 788863223 907056906 955621681 961009583 809055110 916918351 302792124 634095638 618089969 757640431 919390632 936711197 717157231 840187956 112556271 643975082 752020668 983029828 420833214 745217523 212725901 779769698 656346614 863118022 900844326 926682313 739015746 903371523 253566972 613112271 235162964 277479012 890248572 996353418 347353694 577037468 439499491 981402078 603630943 910078895 155819855 557274899 165609184 524175422 91643161 186336103 221033582 475311107 721483959 879823798 118384379 848326288 290591910 411645345 596410846 929109751 8995596 741514324 883446042 929164764 558975495 842083627 670366249 741573754 99304303 222273647 778623051 917888620 677840530 821278643 769425434 921513193 286091679 800803209 686351733 817722001 713551601 994363011 43242746 218518077 584422040 758744355 266135827 604105155 271030051 778841722 670116105 742582291 43805120 863533838 711676378 985940190 818642361 911342714 139595855 867457165 899136754 943262562 565670073 945144530 94701968 985224203 178805991 499144961 667767750 907660904 292571296 961668808 699761072 772906158 353000422 531460420 62808500 753572408 657297700 837296873 186088153 951991616 61264929 108689668 185569522 305257057 201717310 535870528 303122294 488667733 419251986 447599188 194014154 537544523 465437327 483953795 816722768 862795370 982987386 990592114 546257368 947832688 129796260 770791390 132736706 549153219 377954415 776366469 128584895 806633504 271358845 400788184 505275468 782126087 685660410 791092066 269197404 698017605 404356858 627551851 950657243 964581507 793985568 951561395 14000001 868589685 463411385 861343312 326599436 339539330 190454550 996409691 131080826 945777016 626783301 755711990 973125114 986441196 98745279 177808390 464835401 822584697 987491011 990933621 521810926 650478757 441452206 923387060 44957236 959702062 467671883 616342295 224711097 982875321 299686673 717681484 942170663 960637643 744189350 900362904 740452725 751794503 368751526 908045084 957400486 985167364 503092625 513627856 813718889 913292486 271458351 839041595 108688217 763894931 492066835 880803813 475032505 823379504 547584307 878538956 785897428 826551311 818242911 982714810 500937509 551559161 171352987 331485592 310967214 643156677 910628709 924463570 763414536 932671886 532273870 595585211 434401980 842958927 219837731 400464549 712943300 908466304 314142276 353007251 192775269 368358478 493688919 945120246 551896475 574730479 993971545 995932431 417936335 608779095 597512929 882877701 797003595 847519087 831289768 961797444 834913608 896931434 377737423 650403884 587683609 755990037 636556570 937399287 22510630 354135016 186571089 712562925 845790227 868589758 515378890 619972652 254041260 714460523 894256069 898334310 493528259 720748058 661337374 998637810 431268812 553786870 202094524 639193217 563764397 651778605 675594432 949855647 30620466 802224497 270214859 716755707 84176621 760125437 663269564 988426963 268837367 392865829 97558514 494867774 903118401 999850770 245739310 718750929 210461833 682134927 812275629 912115358 702692131 996020217 372598372 490958406 285588877 798528598 648118005 889417584 707247059 900066836 193122980 773757457 979829074 990661402 724770418 727719557 35762168 258259968 611166473 894189509 330800473 941714798 713965834 916124056 946845411 992768543 292300907 503218660 931729695 980335042 236174453 827115488 264511342 906912663 155628950 474923719 408735487 794345366 155606362 159912493 237070168 715177821 671065588 757506661 907737174 941691173 718976022 745746044 512830829 574789961 969038100 979212377 765546924 863145570 968124199 971382681 690272658 827530489 145404320 949025887 45754606 705689260 250358356 945464772 817632297 836810963 454723960 941995494 400320452 811108789 563264164 978922204 54718002 189863097 855916084 978061839 634757013 957787869 743049687 822283298 972328838 973633182 866346926 908080014 851076004 858102284 545956555 594448098 447747135 703156016 249578361 577763774 828191331 943027948 588548143 793109861 232395435 379769706 453448449 488779776 449580573 647997454 415267313 915549764 150254858 328345315 846490130 895904981 486771550 724060215 513008060 614486393 316816482 796076202 401942537 646178316 196945081 570804451 240056185 242919345 860372203 904045594 806058270 875811733 385211871 524680566 567958505 623188887 603344900 748969669 941197630 952157840 14068105 203081157 263394193 418031586 246049044 760848024 216970534 225850511 589507481 622746145 390663198 403210398 972075455 994897374 886355649 886833434 768096665 979000099 939979956 985759800 551468179 850471015 240256752 749959337 141090579 488626741 964466611 997949200 255970205 906966274 121158840 278270465 132591961 855349985 282651433 644967968 426544407 497796872 572305559 768836826 594806215 955014733 320877227 763873508 800460769 909386533 832598730 921017925 63135673 767188875 75669061 891040355 384616702 970624443 760453687 856798112 946922655 977232471 404794175 452612247 418110115 425866622 442988624 810510903 750787420 849923741 618712699 884977228 281195776 925656140 9882889 214464071 710455352 908754142 922102002 955125130 702909132 932286132 56932710 849393557 440541084 926830324 925531516 983135865 296306837 662934323 7247894 71489843 202478994 804414830 674906455 828165633 271866191 322467727 467467290 849631919 898656391 977938465 723260079 904970463 519027546 814365286 905172928 959727040 9751585 847392065 800705126 904547160 987082120 999144493 875279176 957280533 807488624 885969156 887187911 962926694 914518592 925676924 255630503 969430569 667711471 937737058 813467059 858519623 115878711 396900083 946953352 960889802 241316046 382202106 452055519 705827060 663887213 743932217 738618853 794301506 749389837 789623514 504989322 779650080 980509316 994763289 609206713 824506106 292544937 492025190 390141795 517991363 847112476 865553302 873141320 924968982 610804143 642210495 592328068 779202497 44780606 831308834 963581898 991904049 735650484 925454900 802628355 903632498 823300990 967646667 733636743 798316299 264245878 497037343 498692294 763927963 844948534 927894585 101708015 658844330 13363959 954302987 91475662 181302067 2443205 28532877 455060745 537908627 473238041 609073034 166624263 192256054 866555111 937711363 729203382 820212242 180942849 722341391 228859665 808369989 341668926 920902273 280469341 948474434 900518490 916113755 222718484 869575488 355865739 599548600 329149722 671371591 798416316 826996599 771578353 839499691 165200603 522070263 510607539 868771314 953351257 962082416 327155837 723980010 7566907 905554164 868774190 906396510 913624889 915493328 787649532 806080031 69768415 107932342 649646541 905408577 312664343 758096110 235774696 579041555 906043100 951970568 243922499 511915663 920165446 931492237 854654394 879280941 7018717 499459723 299572815 740169494 292059831 941147671 711290482 995871584 3740618 122964185 481206685 559390281 592842948 834146337 994259085 998043359 300976194 775563738 565685496 862264493 457889824 672969396 178385844 533386761 371314263 962262540 915405799 979481751 296726554 447218019 402258950 768222113 836099720 849877920 727195007 892818665 184557463 885085324 278649790 592271775 171675701 736542409 952375833 984168327 226514573 665238831 230037454 689985893 320218544 787571599 122409787 800051658 738329179 800785040 500707542 879894220 742638428 944332918 501137701 907233218 536893404 564285414 736500145 751942828 232810255 762856412 678938949 912486161 751933962 914814500 801512154 976290222 798994303 906983031 288706285 483344459 157384074 191868753 553129071 679691933 120319722 463657139 805596629 898295134 814361243 820659670 359514975 949627039 151570827 253788824 686277528 721657600 996549165 999247198 229130770 543355568 834147518 954569230 741775021 826360540 36766476 206931153 484446661 582402074 913405749 972290301 468253761 477575503 388020614 560499963 848566848 895817226 202065041 899626786 389624048 761806801 355663729 394049065 376830236 581782325 918453219 970445454 154365488 275657202 50511805 796241263 943431265 978600945 663493691 975223314 608697314 973707080 185012007 190509184 549610090 753898079 257073001 845536219 447313772 893689202 217281045 284586586 603649476 884266742 814669546 916102320 457094441 966484761 839177537 910031367 838800850 896986797 481066133 495659883 486583354 860282200 818956693 897605522 378514776 725788933 326961368 342419676 322643415 639357115 77510640 446899802 590412329 633299811 407862467 976642677 463502720 596028885 289541973 574447611 130467610 150336985 461802999 756838674 999301084 999650830 426793117 732780106 72492375 790917825 844443167 972196377 746675572 862318722 466715003 881756833 805881647 865300281 967543929 970804742 402405207 924670759 849097068 936487149 648092144 974713054 238568971 338599110 989474858 990241137 182365667 720287366 733026001 751779459 416622756 529383072 136006953 504591978 401050515 643135814 44082822 604063010 826060309 965588986 97640169 595245008 257843783 944540736 414568935 837269712 561064572 708190271 888590105 992028272 41847608 600646839 978612257 987035923 984271159 997703758 540969914 839080048 759546509 804644424 501289567 612348764 171549766 706801867 998952520 999168549 956946247 994784191 382562646 887926818 379580389 977435562 731050643 921526029 206484329 589742173 521784295 725695568 348838621 959302541 973476705 996365439 178259956 228788248 313681544 885196784 517902509 929760664 120579331 977430598 876492792 919398983 190239946 515430217 236065745 803100109 765194425 895703124 597188262 695363027 180817523 463468444 907142148 933685946 77047776 117288076 705723577 975533034 286548001 488874152 24027756 597254184 938870115 982432235 882011441 907502004 214944922 346748688 198464176 753569651 314946594 436549649 753179224 931845613 740006949 949927324 248409889 407087049 272577870 729652774 556362122 928449479 288083102 539453881 150892354 772709941 313603217 587388055 442021926 965875202 564784000 593185759 775076390 916368150 814556482 877584556 19496422 166537742 750350514 989062613 546323638 724860353 809884954 848086205 391050053 545582310 880867131 935807589 904491001 985794481 991356087 994689105 220603352 721353962 876897736 974886634 545540090 994966778 829567725 875577648 81278966 710059846 772983993 860143747 363382629 390736649 861499452 879921152 43757048 254417320 384192490 732520428 739271367 899950144 450133924 943324153 27749063 203015828 497756830 990242208 746574695 837488329 354170043 556351022 638565694 822410562 7163820 237584378 257643159 504683427 379887413 410465377 776937649 823767602 712712403 910888420 42989201 584253018 361997206 680308498 818785509 916039271 746252662 779128350 752615476 956631611 948891512 995903244 772558319 839293498 843336309 991206567 53748027 72051544 528984166 780009655 705805423 835973701 59810430 865387591 361324837 747033205 22809875 377531807 901892632 929562149 162440783 389793187 944066911 981275483 478211688 993801215 368560721 437164021 998634103 999931676 626022226 757478616 535576198 956393978 574806197 600579341 47698806 489604130 449242622 673810632 126000121 837520468 165716404 545078878 424196304 882533037 824112005 898806927 286123249 321614835 186850649 599804006 465470057 881169367 360829477 430051456 377741244 968306625 390697142 916895084 726125557 963395084 331885301 620325088 130662598 628149562 307762040 345735149 84533986 664605869 458135271 570636826 342605048 590254414 146403933 441147497 300224244 754921197 586930250 812577638 851088715 967248653 599933968 822276511 87432373 754096605 443515772 753769783 551732296 631056962 111901970 665885474 481332844 815670102 927211332 971514809 143205281 224405185 61151931 81236221 384439946 756651273 359907839 945834985 574916792 858414154 105223329 498653544 80867420 182322093 894046248 926658590 421238952 798583953 191434864 362307366 278006481 976927344 158297659 487631170 199438251 593098044 240387834 547282529 610478911 728423490 456084942 576251559 750339969 923384128 458700170 906548683 111267470 680602659 52982123 925927167 716141642 733990778 436073204 937895988 953820771 967544780 709929279 866634312 231575260 400711962 745228936 990480986 262260376 836369792 623712639 668637504 744300117 970445209 344202517 707762377 910299443 969152147 158823654 314662701 819706632 938818997 186381064 469661226 247227521 906154072 807806450 857242842 345809557 868730307 983944234 990386392 29653385 449455831 979517483 986093445 712271233 880979601 186297238 578772159 559157159 989834861 1560086 352266698 301403757 902503795 188796603 263240078 598792306 994815459 245837678 538165926 362019902 750573963 699048489 910067169 433942786 749222457 823122827 918577223 144572415 309455691 882629413 966850305 895005986 992111820 807424646 869010300 91016501 783213928 644094446 656370094 195653235 206225488 520755083 944366716 386616354 530314322 873946180 970638919 353178026 556817375 614749519 866803857 843214750 886993022 994680700 997636306 237933115 496749806 628870157 955917217 641155938 925766541 824860769 833224449 692489259 711152421 398667098 875810819 89711580 661764434 745629031 815765660 758451692 874488788 88851070 481964210 185672726 371574182 496821493 927544289 531778265 556725079 558780667 974905743 895668454 979006492 635992490 954798980 773488325 959780660 104452539 105797873 559956849 915247419 972301067 994515372 908756035 927119665 435501984 624194040 311766968 574019171 308826306 474789547 198245514 656177972 707523710 960886451 15748228 812640576 778323425 970187526 414425267 859013034 883226693 906369935 16946485 18334102 222904790 921849612 120984247 173495005 143957416 942996924 418852639 536599296 415291456 698296806 900869662 934763817 394323819 462151907 51288440 623640839 305838014 406350988 504338746 592583810 930996076 945173773 250099808 750756307 583817291 974425764 252315947 740493573 85803226 884548215 182837638 803003506 467129628 965301384 718999432 721776423 348455760 513466748 521521877 719431918 803069465 804670639 867750570 931629327 605490976 864746861 33524146 427052637 536084456 828355193 128664489 775280802 696263036 770122154 538624619 701153888 902333856 922414797 537523049 643936867 731384869 844795429 207690167 520607077 605045942 725096593 895363316 967950031 795755590 895260250 515774669 656051128 898235353 910704947 559729407 731956652 388318759 757287665 327173245 404263669 973630641 993336661 987112592 997835182 499997232 692561986 545735600 574036963 116600622 479821150 162272829 187401454 901860136 926305021 527125416 698514950 439904010 539535661 754441621 868661615 579480057 625426694 860589186 983070966 788690761 813793182 431453647 787148553 809129362 825068137 559264468 784632556 132057945 935130331 360716813 937336357 599318171 643403024 451974554 931941132 163278658 504057812 583302168 946681798 443407174 702493855 460750785 639953035 162826696 626436668 37651826 573286035 625474128 792013426 695091661 780963240 799229423 914446581 365629607 505172307 399454831 825634008 342531305 638109080 191027527 733294879 874525094 987388042 672669676 799532846 225448490 607573618 896490241 902613158 92955431 172232118 178540740 355331430 783047297 822433494 662989797 829779759 680497423 872207329 862936668 973482489 77174980 218871319 507927132 771490344 642028415 701206192 897332128 938951205 344122153 898307984 580378070 936711412 182372132 445329417 647102834 693669224 410746716 834820599 319452398 846467725 903713498 997205057 732540934 830503828 124475004 304782777 893241345 978970326 590782172 892738536 952544676 974147329 976299377 995479635 558191800 829118238 600887408 814397517 761419995 782475437 247138129 335798309 780671045 947428672 198473656 545975772 743962619 911888197 542662443 917781013 992772328 995541155 747431417 928266144 629555732 924703027 582934706 665552095 239522973 759496376 927187547 935067400 487166579 821594473 261755086 828406405 110011035 998832935 779858657 983138789 916835230 952584747 721750532 757385601 243362852 458390540 11503054 568931353 884299380 891180878 604827492 954113234 82658843 511973581 985263014 990036866 996656745 998630756 782983894 908629626 318964274 514973371 500054513 631131883 888377730 926411520 977036890 991306939 261528939 609239229 389759699 942224231 944880026 967641352 746800317 951384350 883136254 975810908 93223530 589100403 687108890 828811404 168840991 766958105 212459369 825484574 796349711 859122745 616237596 653720353 506501845 916004844 975435894 993595093 648808276 874136947 126415414 263018876 886089803 952868522 896633331 914496281 907557664 916638605 626539713 790914772 726910548 754837127 954029449 982018201 777319740 814964619 884132687 888706785 265147281 976193558 324729590 387535448 540253006 545883322 3074877 987349217 312432423 351712258 676942407 777064790 47163422 129709182 433474384 974536452 699371082 788083097 633354941 891086539 859806876 938933578 451238807 691102964 673053319 804156670 503559434 604817083 631117891 740617774 9388777 803969927 276784401 470187544 217008465 241286125 368040667 793296137 982099936 998884977 533498668 731293073 522225920 902914204 488162502 599103290 916543243 924403533 169993191 880867514 915017857 926700645 573038162 714919966 379539023 424022183 981458584 981926149 610514651 911072406 761976154 963233327 575800326 727130500 666232926 848205787 521671930 785705099 515345990 850994369 19545951 59456861 981353784 986337705 657423507 743315910 766555227 978986483 585926008 867308173 135403909 763207454 512278491 635504492 629536924 653900250 482360533 850259079 268382042 867568495 667629392 895188925 869111285 937750974 772374921 969727454 524116273 691052498 557361700 678725667 662141405 758416871 424232301 516816897 610248803 848922836 511471491 959344406 246621072 844887364 865911169 946410377 872252987 954519770 725891940 781049104 893997205 967173194 868858671 983106836 937916874 990783138 969059287 978159598 157424454 531036791 253317969 380234013 421190201 742798670 26945931 640038550 882028144 932335872 130828174 340127138 539650990 900054892 585262618 926965559 852444716 882365894 919905806 949072551 791189502 948884384 184565213 607745529 94064380 656441358 598879675 771321152 608767723 617156006 886850225 897685882 33232194 948865093 191329825 618077816 199638450 525217410 260166311 752201716 102940951 325141229 267445238 954436828 572303047 921605687 717615946 918547226 529275825 950346483 784635853 876970959 872276131 924702163 810711803 843054834 488118013 902524444 610706481 906385157 25466078 197519945 684280878 936211890 329022652 338273410 229594073 238231948 854115170 979900268 646007206 888450929 115905782 291556688 405280722 564107924 865090450 891758168 744258569 942873668 256958629 893008384 660917364 710156914 110129110 301686525 219710113 320150498 563998758 807780560 903389438 904312476 806687791 929084962 511076944 806146472 311212786 748827140 6537351 414251766 899866824 902624823 798189137 983800665 935441191 996061704 126584444 980655276 719439318 802600216 893880445 945020929 113670037 358843881 952326757 995141179 308630059 811496834 25677757 688767027 44409134 837425639 977411417 980490038 752183415 924741426 687531461 830287515 168527245 903760146 266981495 610472316 349048902 406864679 116721057 122557823 674934201 915878966 487594558 620314924 795907983 853540683 133526287 521739464 249944566 726283145 985569832 989168846 484822489 582217589 104250303 737980842 244669974 593638243 52119420 69875386 499891248 559079212 306372554 321585713 661131660 669976588 489528516 790349973 438235046 943046678 396849885 631794254 179844205 633092335 909408124 926445133 425882934 968250621 166576395 776309073 267248538 745739456 880947921 915938667 135075856 617023608 864533565 943268724 612191220 935261093 128975949 531454042 448848982 769644818 524596181 800903067 612111044 791044189 417196021 440683544 955964505 986713236 122228528 214359336 73304298 983135297 993829697 996264416 886024413 973056819 913710151 960127299 526296145 786262461 271109605 846532728 302539101 808204595 50943859 833720568 585620305 909868668 872438498 949055417 131957325 792857589 772335370 825617534 633347708 950937027 22469182 721502592 672907272 839959325 410836191 482232464 250360108 870740983 539893558 950564427 937386729 972967058 426261195 539557616 766016091 940582881 783636561 851850589 767608348 862966762 47923656 732609604 125795186 151170172 980598931 981995057 40256366 833067673 470429177 530789087 162286806 630981098 434134531 911481112 651455856 790317061 965242184 978584784 17588049 465151200 491275783 559182909 271729866 620474379 48101696 985167049 7213714 973757261 112039354 553794172 986141049 990193124 306564492 350833027 819208222 953858115 795080443 800177957 314338988 607501158 129657739 800868045 901479131 975417871 361362835 823342469 311113783 798205085 607128392 986056466 86661153 611202430 329989930 954337393 391669800 815396819 787308383 988320653 834543816 853690832 476110562 826743317 399304948 604884378 388085431 751188203 982175982 982788451 334715124 559865080 117249458 845804267 282070910 903389937 787232555 897378854 826950606 924126465 411318026 643602291 885923741 978361186 85202032 172047751 39126153 677322718 71595958 284281630 718283152 974085561 84741914 540935906 473255667 575283326 556129895 656094644 625085278 715629927 901420010 903141862 89068447 723322376 845635831 870056330 793519664 886926003 417825442 583117987 772587220 925715911 742435140 941966282 299657731 711923254 176357830 397623433 786784752 994677451 226535382 435770920 443932632 924767606 332560899 835054359 600740573 814746245 168348314 497486806 165760886 596616594 454195431 561214603 846950921 877246902 240768130 410021400 278659315 785518734 255457233 369248516 879410408 910374876 787104673 832476224 770842651 824722664 564654223 672196730 534318195 804812636 608137421 928007304 970364960 985771491 569098616 775241507 993445689 994720266 370816357 371718385 453233266 863679330 611118742 967474012 536405741 762853788 587195094 821520018 419337687 467723019 497418603 697790061 530341914 731483727 361203752 922476146 521353040 670432796 240483782 576777433 12223495 941296808 917546407 997729716 172633530 890067826 463262351 637625560 469143977 549779782 400632484 774356821 214731617 335077453 47260829 807507671 98248855 786067423 579060008 700760821 31757857 509351903 812832325 986261807 57290655 890035958 728766679 785207696 945684511 985691421 985082587 991663159 759878897 846302804 541532973 671067931 492252466 697100118 631545306 778311464 774496008 816942931 615197669 793426296 711197951 744975246 757481189 984067815 438372302 453333568 140184337 460879358 105919843 259548615 834087296 952521448 832748112 969230601 844521085 845978037 312532718 780958834 196289934 833344525 592401323 930427552 426344584 429547767 514583775 910928218 900598272 985246142 871987121 883854136 947366866 962423949 465702792 600390655 940499082 946205597 778038445 953277045 241434804 355788470 542514095 633731371 648500185 703011838 217979575 822253598 42062521 963807619 158456129 806741157 193117877 824863282 244920510 829537247 84085408 500226936 311629113 917416509 698471001 902707567 746569687 782025046 940471546 966481712 432120125 566074078 318953053 718803624 510417768 948269537 85898192 695684789 829431306 984852293 454482433 958115241 722573897 951796053 890025361 947699363 878471545 924672860 303859136 502037297 544601689 603484134 803638838 971208329 647505417 931002999 3391063 898684859 206126441 213305667 970482476 995798060 677349085 955148730 453785162 466266947 407252732 416274605 444023484 663725997 176020035 994918117 562274018 798794098 611014645 949722100 560769946 897397304 775953416 873345228 702522279 764851718 293508435 614324738 103121981 869592792 261215836 715607838 975146067 991391559 728069721 811166724 425784534 883446560 283136987 632405895 456912694 756780040 828201234 861430964 937641631 950875481 229981169 346063112 847248483 905296004 829633181 945319607 992678580 994498287 644979066 899040828 173340993 458316436 475485917 738030275 792235553 886134612 641620945 933507217 660287588 912464498 632685995 924409006 269786528 811948097 445492108 712446563 223821877 814478092 722132356 951306974 53753034 118264998 658044417 754032830 912677112 937047073 719939726 879355829 917036128 979779981 815014786 823095152 106393903 718302438 540708095 999403753 848463225 882483021 137311865 529035563 52907745 677222565 271181312 296896093 414885077 739756786 326299528 927340905 887179388 940929724 275387691 437817095 999913082 999949237 991527785 996656345 981408487 993350461 817661636 848390847 539644294 754012360 609036966 631418806 744630112 821282821 97256618 714601780 469148792 480743959 213425900 618371723 509931625 699354139 793939987 951797208 626265169 741800264 877405687 889042955 325942168 793213512 437153023 737337342 318012141 873055712 226175556 273118683 581936224 930217476 162690743 437685969 334692657 359723148 779740080 857410723 199432280 534011848 592019552 750938504 865987065 939537623 177968184 938035502 382168402 691789356 485300884 746384178 284781855 559004056 210640318 973602434 841746506 998894327 642791316 952178111 171616546 998947442 26459021 120756278 349350206 564885084 976535052 978730112 403143691 846904632 671335084 718369866 873656650 881108492 653620725 980123328 6019108 35243449 416625124 445019273 140839254 412700394 784319832 927694148 485011218 582216721 554379274 575295267 367937175 683872825 302461317 587509626 259493289 949003261 892879417 901569901 196027260 989016531 487149983 718991401 832985524 976710830 536333932 640024243 38718699 559038740 317943739 552205300 894793954 983679861 522070982 912445324 220732963 920723599 785669354 993451201 161257495 970547081 385326006 505366904 219674652 306935461 977857563 985050350 989147524 995949686 657740645 857070121 136135033 284284488 362155644 718719797 743302756 887403737 461367789 464132717 215315343 687234509 280447508 735784703 589156348 928681794 323516089 756933348 626146754 795658130 193281071 199161026 738949000 886880039 597751913 729131477 118978020 137255849 414046944 425772191 539251955 618143384 672188858 957375815 14927624 830024356 663732490 806589409 199625002 217982862 282701296 556462771 535401571 904116728 49371160 392652049 740986635 966873169 127431397 586775958 64700097 452893142 309627754 552627825 196587870 205565746 84746118 800843173 248788029 678234894 699061446 999090458 673679727 839310472 578980199 885497399 82909923 540871039 691850769 844437506 88790113 954252076 306599420 861709601 42550070 768245505 900702008 907335523 771777476 802250096 410738755 631778829 842838353 902054571 980680990 982904842 440212713 888713545 44094457 822428220 856632304 961953354 903561238 961838787 560911660 991797241 629229792 981839443 50273469 231582279 285243534 426084050 187189930 526061045 163899187 678681307 208062675 919851113 655991976 722402653 552209504 717065163 227219830 616493557 802651267 913738237 942676777 991804914 273348920 829479531 419097653 940251994 612064150 612487747 271218152 282946438 155777639 970701584 426038521 543757279 845767338 929139136 812805079 933509411 607617187 798726374 237269135 999378723 141587599 529544755 183824138 435269629 978180588 995981596 114618574 515263964 548035260 966698480 162080322 469968936 165061043 618801575 386826965 726297843 729680973 778883739 972132691 986824431 936372639 996675367 305157513 852626737 795417904 986029083 111625839 138279520 63118522 996716394 305488805 874153121 377719215 578633385 816379440 880025485 225828904 735624537 299754851 908125573 147961823 906678520 948337714 973972545 488823199 708852451 588766583 726156286 935113414 946473323 792911818 881472504 335460783 943625094 48409692 140823929 467623287 805621649 763285209 812081461 598280038 637201708 203751836 795191948 767966156 985471053 367353731 905832981 765492488 994311610 114940967 927669868 285924837 486961275 289288238 480218964 998458800 999885416 423925254 781198071 739663578 741416430 694817654 720391032 350748085 674174777 342114023 657181820 58051301 266010549 609685384 785412531 947475872 959577063 531903977 612008365 799271710 824642289 21917186 99333118 167718751 674296880 264850163 828164104 307876326 795673102 182161616 637108972 954094606 979585738 578529936 908549620 78774854 717405177 268570340 306753436 196654203 584104538 98717113 867054771 970271997 986858648 548719433 553589603 922052600 993516670 431513415 946921242 964129980 983932559 880803809 952975980 160836474 947896071 679748981 967740523 235965766 946944231 677130146 702192958 6032504 183216314 996018256 999615160 818417951 981255760 8906632 274147891 554857933 630459664 490367608 650131427 378795959 863708258 160627001 160664268 862822399 979174647 734449155 801951801 496607349 581175353 448563718 717655265 181758694 887285476 472713012 545877058 678531211 996659657 697656229 984377002 485103191 559602313 874286864 966306969 491272023 822267412 872687813 999031427 107075105 554456666 679727745 943818070 245516741 578476471 569998491 946688673 511887887 943626534 643677001 894024232 247175152 977184123 643009453 919797944 432932268 531314651 61658590 409699891 917944727 947760295 822669304 905687440 907766097 959068281 797792704 867167582 12636015 188975547 813165596 825234548 675314197 733122522 727965201 789345461 468571564 632165933 56478665 128321778 398042347 530061734 614771494 643156428 693990313 781491864 500504057 953569691 891081621 963629486 4812976 154778787 613012725 711421610 917105082 973261505 955795989 990832614 269324078 496774191 402599164 500680704 543921474 591548930 466425426 800938282 396952456 460527496 774918654 824357072 594022899 764179276 187710083 817457469 304351707 616021931 566487400 581401370 163996135 876662170 333846434 337426421 69213515 571521219 901728341 973044681 208981328 652515985 891492676 980833801 779077563 890772760 198888804 759447293 824992006 987642947 200752368 685032320 828698860 981039763 387563136 421601388 527069201 869523041 73686871 690608075 292160353 996266848 215180898 375923659 394785000 620869881 545427189 962045456 929598972 972589741 469029892 908600095 179213816 886042556 387997584 922839137 451384035 532351506 657722396 668081343 546266411 569290147 213805369 584026668 383666178 965430627 374954478 778063166 14006922 294219910 755719197 870285760 662103733 852000546 146477340 648913931 814742372 849173344 812845512 900559495 980708579 995728078 931735045 947670710 526831642 972849978 153930739 225829765 221022183 933239462 491410219 804944259 40071615 137653154 172253966 619280850 3517050 71516801 484463712 923096079 741628067 934298371 176714758 346291222 817733149 915886682 108982072 316042851 543991128 869005673 202078076 361184499 23510839 238021488 935189026 944356713 43408636 80236116 545418779 701181153 954322699 999001473 754221370 932859735 533699927 723254052 934825767 982532641 402549397 741103689 738648862 938150622 10295711 33483412 886256514 956110724 270756440 774592889 810900318 997455226 114411092 301045261 983406404 994040289 197595489 750176881 385370226 796753796 818141596 908108816 778948195 998318330 438551130 442834698 216925638 326284571 57664822 113982380 46984664 379903545 855047318 863336606 995976411 998771078 49437401 593500673 382199676 489197333 537182803 751246829 947851803 969393213 278886820 484358843 422565852 919698036 431070060 873858205 819693531 824592364 365684169 497909496 933753809 981879403 818504980 875274007 293859083 544831229 35338611 434790498 307394051 320912207 359912709 987883695 687507704 689235663 368108377 936366962 560915211 578432352 152516011 297334185 794754640 903067586 240804261 885844918 679922863 767164171 977042636 995614552 432892181 721646555 306555361 488823902 767745833 821701775 775969509 819741101 674714240 721907659 339863309 575674879 779874657 883553776 952725838 995163121 181783744 575088186 593574288 915585233 152303729 297240640 3515570 330955151 557229293 640810528 216765150 937377246 498140962 752808084 100100830 651245278 398494860 581981931 273077530 509168244 633956796 970194000 235804019 790436040 822573578 845648601 493572032 627425560 388952284 720037779 698585899 981435952 556362658 828351656 96806761 510938691 587282509 600958577 969417549 997114446 197238639 850260755 508789452 950734373 655552180 885539324 169507227 728937122 100265173 273187937 373248935 618458324 855137037 949858390 571989160 623783394 113308991 148275211 692142051 940222601 68606576 420230511 370622701 708750456 284886403 891020494 453331277 877657306 210967858 578989989 892710627 967097807 471438273 867132319 316749823 332573649 990682001 995781409 870012994 993736484 534285649 581704617 688802339 801576899 432915164 624467174 735015945 831748835 790388265 971978349 682156386 928124995 477831570 627940816 84425597 542440900 436551355 500031206 670370877 870935387 105377246 835718120 229984977 442394925 14062397 146346988 526309813 642706817 380052780 697279260 399394746 602900373 256181623 942202729 303690395 503277977 172423909 768060104 541108062 551389762 215534308 644201020 954746970 999439932 828388543 980589241 435718023 943765779 536117563 919989089 705962006 913121918 970805123 997482816 297028714 937542068 498482060 902815699 649526457 905453153 722335919 978164794 292213431 302501106 786060106 811497529 190495452 768835917 390652652 735250087 989452915 997502443 887015289 960744719 507198819 579654628 648661247 939038781 740737178 793536011 828432692 920931041 232316279 897757521 849945095 884680913 679110533 811430185 519149161 571040594 833169545 841586440 425910658 759593755 456958536 460071049 3657301 668125804 531656297 677010124 220462066 549823931 562064570 607909481 626757494 859229894 478070947 630869743 79186367 440264098 445025590 613447330 55523148 963095167 20168787 818685193 429447298 985091933 512402058 729036197 551641553 714055886 447235199 642406740 453673195 476902035 432980365 465295572 211962146 282109699 990574519 999993001 508407916 581305334 457741069 479158172 544934498 678684854 464192337 672519155 180364949 747725731 330456739 830164796 917711282 950787348 483688861 995167651 172462495 410619444 907666449 963500072 267300208 904159288 830239607 907370479 542875920 744164287 332540606 392587036 37116865 214127691 186611329 634197549 866547589 954029826 401803349 713210472 399713841 955058907 94829725 803578945 969635406 985776042 231548738 691750763 731067401 847763043 634842563 730571686 513257571 632252718 856410286 907805374 709682580 893047022 141715174 411436110 920819572 980498159 20653126 995028662 64076838 163028024 981794636 984522807 791176861 984653972 361259378 788827421 593527597 993774381 504813163 945925530 637931861 688254860 975248354 984032739 573957908 803621794 208235884 212982295 646076925 802462638 243236869 779207606 622209177 626368396 965090364 973905322 662292056 943858123 178568313 315982794 698622889 921278894 41621234 143005741 575255775 595016577 12097199 699574373 204636764 414142075 58705262 457651429 288490872 704088282 873574203 958416281 769335822 957861193 956116878 983602227 420381898 527340826 375042650 851679830 209538372 594451203 479123881 991191888 957872040 974624844 796264902 874268320 807130882 931691660 234643365 513701137 370269920 403392530 385254021 410789482 677200402 839600201 814962965 922208785 654786079 913639073 940634608 993434620 256986088 617906562 912509618 923458026 643878518 997261261 417228431 718705785 661754889 789875824 739633176 890770549 760593904 964884672 830546184 875331672 307015486 942438350 552005533 900881715 485730986 906053824 56438687 610440140 411830185 649475822 982256894 998714286 730810311 766872240 138614628 865953615 744114189 785119777 890353227 963069586 671677744 952341856 923705710 958571943 544185807 609954909 448708799 525537359 557448206 590757427 631567698 736507533 997636787 998685727 56079006 879373755 231578753 239066659 302722902 600304027 912138941 984375989 189615122 232107504 339841610 940871572 526522360 603030777 366374658 979143218 861151017 980690148 267945200 274812341 908442514 971737336 222061595 992314526 423153988 538951666 488278787 711282375 506704053 783647992 518138955 653089435 51571798 449672448 904892285 931710589 435142642 749057079 557564861 783072245 129213727 654917566 57343302 817408811 635876533 796408922 563210783 930382435 663318199 878008883 440828619 778897903 608678607 984327248 722555068 820042176 805274685 996270208 53733678 139647265 932924939 964398413 167259253 964102259 210923118 760561255 324338622 405427629 427303242 911025590 56348153 660897591 153461775 532421030 335385421 694074539 43244375 543625020 486420181 878631574 565927984 780983668 885637360 931346531 84900485 477331322 723256205 959649463 928291321 981840918 510477274 942031792 848809113 904381058 151095341 456586453 109792348 407031624 437778801 711548869 326895780 567659034 959262187 978482737 520138129 988841566 205012986 840429481 884018309 891059840 608435461 630926743 943227529 964870947 548014118 570799038 519117380 542500658 734730267 776932103 809631921 820198726 916629204 925593490 231876328 722459486 519356437 691065153 292505132 499695083 229227435 259675292 896867536 955318587 432410983 683385629 68516456 538705785 166405854 273637770 317625087 489168748 62612823 766455470 954242899 957269848 720277263 832240029 557877500 871288880 216898171 281265422 998998435 999598594 857413540 875134250 632454462 965159799 523441764 552632794 71448990 491969616 504622472 795639701 159391920 251125728 353249268 635663298 267637719 571136389 724769901 900136139 382970497 793106729 518479263 943410000 803619624 831135736 969164740 969577785 727428038 923508458 52035019 84722067 437916529 681449759 209486335 278937839 72534358 926203037 699328445 841073581 498001371 593768842 251350002 513930658 907020080 981498958 855356687 974695525 785547851 828987629 465382661 545807977 161067540 808552135 924779745 968299519 504612941 817333419 925948123 980093914 566729706 980035603 86428156 107286141 478049357 960071092 692607462 769186547 625832228 923582848 308851078 583943365 834152863 843818212 421384496 605367520 373241997 565609867 937802276 949920678 156179134 222532596 576782921 771834876 893207408 974898356 239930219 263030415 923979727 949560819 358523750 505300839 481966654 750337288 38953241 582715697 485175860 594690460 610613633 635935898 546038436 698031397 565175390 686796205 140007026 417425610 976015372 976652273 969025657 998084772 882280735 965072850 144222074 732990430 973305572 984251229 780518911 958808360 263412521 506368113 819842187 937343565 664267884 896862919 674826228 920651726 733200463 768643710 653388256 744214549 104223693 637055708 789831159 877526849 819055385 841008840 323721836 560156774 95106080 514431261 909518649 937865147 364557295 436028845 751831708 754124948 305791391 421422333 256325371 694137648 837007998 849882557 839578885 993778807 468864562 795962431 494872628 932834447 928455792 938339836 415949637 652574278 642875496 714949672 352972823 715228285 319764350 468112782 196091953 841164489 715034523 858801789 585483216 619428552 878750065 944478469 340641014 707537208 380273655 617405593 767346792 952889707 994336771 998861725 812219860 991038354 516840818 908394952 343950838 864702999 253715196 690195209 591331085 778440420 676061904 703436961 688383613 884316878 344631328 954134538 477672848 532861797 644881190 843800511 982127500 993767826 606669414 811022341 888557159 890682841 725879802 818853049 268563759 761686354 126446830 532302281 784013470 942129396 508315322 848793456 517626412 793521267 125788710 824211523 485976434 822358596 775979535 820539168 313614336 489615612 708700446 748173474 566071154 815526607 956974191 994832332 683883115 892990418 541687653 834697882 197984488 823223133 425161309 565076193 600523420 880734378 569081993 871723711 139332365 287874490 516758950 557064741 933181211 979871151 425099566 427366997 553203852 847867186 617750542 960244937 612737853 643600043 941231719 990111309 137860841 492404093 370824583 860981402 243689482 386174706 806590669 858856216 478899189 855371523 228954012 742033530 925122324 928634670 760455944 952797471 438571655 518648357 58354695 530763725 724907606 842528295 349004849 674323854 84188637 431481398 606842463 726752866 612394008 712128536 137527104 703167321 797117445 976383640 932181448 959059923 74454746 863866934 604647474 736254139 637454469 747314132 473402693 667953902 475758530 882776172 470692157 662102983 47649104 943513544 569901110 728882032 633127012 778087467 330284379 951305488 564465091 871345026 401707945 858843606 564968169 805097939 965656053 977250070 49482781 666797814 751360367 906931614 814135452 912367408 423176388 758474327 290620054 904706396 387149042 621727279 392334440 889774721 391449253 666896156 506954662 630468999 794645489 990118059 775349919 825849154 307933778 387690345 614104421 826050981 216216170 793246383 156784124 985303067 180432565 665238252 318732938 852850174 134568039 381783765 14262344 807726464 215796394 609419691 416413935 996385705 714355706 873310565 548698420 762610556 213858515 445341239 683281043 866503824 445169828 563097977 384790539 580224933 523395076 545834130 950408758 965473220 630982863 685824754 879097044 936950365 413875716 693633932 834893575 874272091 250868385 479174557 860856167 966445891 931627964 933099015 130333741 996677351 797957230 824923066 14229081 279672251 844669149 972729079 371221603 975381418 55372375 300811615 696797938 728062116 680050921 761216009 471656289 786649004 458251623 512196157 638645580 737175611 273760317 931405783 699275338 865378241 116058446 511550870 248255167 360875667 181841000 679514684 64513954 137524306 349992653 570667026 308779204 915224718 213055522 786007729 752364827 801654463 715823521 869636350 49387379 126850067 8428900 224128363 134342935 433007751 338023180 812899184 907639828 925273679 922106670 935103082 950991591 999564029 421323919 423214011 347710483 829149613 996491624 997124584 978665464 988539448 793243069 894905936 841090858 964100644 25895869 65008008 960577781 961151439 312387434 827391059 718865862 760884483 719339910 747756471 836131901 933727524 222471318 617557225 204510510 790786473 920831121 973885410 638003588 991588743 148864412 850667450 355145007 948008284 57398647 866952599 915855185 998363778 547669476 557918318 665232088 710606668 440583247 736424185 593386929 955901301 651906656 974654183 294632716 294983923 202004075 446115258 813846275 965077229 892123205 953533279 174821934 782877680 832155477 875553282 593125789 724563783 852426550 956175961 928772043 992842297 225097327 909816319 229156152 581059515 119407084 275265606 991375975 998015194 384096166 735411360 161110092 311648319 199089154 902914518 547329966 575307165 640122389 654388383 5615514 541304650 148038501 359131929 648719568 753863467 608326950 991492093 968859874 970374062 605408094 634197050 411754482 988073196 394883610 875660715 865257847 894415267 227492269 939463715 767164015 815148620 455020315 910048104 642644212 939275184 143524699 687727322 208065756 959135535 382420928 878084709 148972355 727287265 174841194 519905046 633715864 875036155 396125696 928026138 976213810 999228774 985871548 996235606 63033617 835861987 108940182 679084589 705990740 954782673 457840193 814187399 647735937 675915187 900340726 955096691 961930429 964494701 664678868 667663059 221443202 349541064 822348528 870184984 2590030 208228356 808101401 879261848 577338067 646430897 953627086 984304303 684672611 948666479 698241206 761902038 501678321 702949330 131169283 155197113 243621392 295456138 478920870 514999928 679528528 706173120 480972110 866693100 461920229 996984788 404286705 608009539 731769427 942611193 800379047 890572907 429784454 734350548 293256392 655723964 612431417 693012018 502996920 886270274 812931108 855428674 477064212 613042081 228985054 648228530 41217036 447477500 369817550 977123443 543210912 850561000 352465282 856871649 881598924 904368366 572456390 605759739 10579521 446611067 896353871 918411276 597363371 805477982 230623187 798871948 118164964 547862356 928203644 959707245 915679763 919502221 255987260 477233436 576786224 922870691 172066575 252079440 800179242 975627933 558263778 572796632 755742365 942619239 306475635 629789106 708025988 812163137 677482875 883499756 688676715 815987490 438092891 966226079 354175173 434842704 785869511 808169188 396923904 540914719 370355540 620080037 822441083 855535464 143643837 776018425 732639856 984334068 887593309 919452804 906368975 916570805 278977016 755283630 857192285 892664890 367949645 430494408 753473054 779288192 939541292 984611052 447617204 883118107 201113089 351496566 139769861 813947938 565188470 900203541 899778883 952767071 174664814 348770461 249391556 966410894 344568561 643443774 40623009 403140258 886496516 915564463 448769337 838123805 396241632 529736035 157016064 603401361 78057426 354970971 575416961 681572326 862979249 913513110 258879139 433464506 326165663 434871259 105262894 147308722 585366053 732433243 546497849 682931572 851449590 923800559 422370612 915571219 901963109 936584464 805229280 812975298 829002921 910962126 777510798 838918968 673133509 981703335 707242726 851269687 100112011 169245874 720190596 848798129 655620687 934606793 177240129 407275585 34193776 734948363 981343208 994054059 183094628 886251152 627485767 881421783 634803015 694703248 169303377 421150840 768782111 901297302 603175588 607206693 731593595 767953179 283969792 416244466 36626338 181133610 120322271 861133816 301874881 315449001 47881473 289285283 636668347 826461887 583180400 837420185 134477083 847236298 842411399 991235627 704320591 879237110 14798275 292444244 357984159 627581555 736378187 987408449 554223968 973078539 110981559 811133415 71598853 968962062 517549435 589212116 495998948 667966702 454227745 501849886 365579355 951665464 346600371 821371054 917003317 987937451 582808407 746340660 515322553 931817397 440339373 505683061 929008429 968162576 224265447 671184840 411434456 497380953 999880487 999903668 969452295 991563149 297553741 755508640 268236974 610525854 92150455 187040356 747852548 796088989 369894780 508159977 885728852 931128253 584506270 855924940 830515861 993264614 548399587 746496688 878454321 923685119 313485088 897492641 527237818 819079297 951753446 997401138 474220007 927702632 321587929 769907862 458614216 640104826 774412203 962678151 233091391 917662717 118150183 352685531 360961031 632115350 816261661 944607926 204462092 506588131 158163610 526934615 454946999 599614683 561901671 638427792 608758126 726336993 795822078 998592432 236797365 548454695 916547399 971842477 922022408 951648337 101178680 333095998 307406891 648215998 164908060 404821842 629255451 724168950 452468722 905833812 357828742 368376314 358805963 973148674 480508843 923217282 317250586 375889060 551142484 575763530 21868994 499666770 242762303 578437207 671545158 921210071 411212851 651748340 399776284 520682170 584734060 979891287 294345417 418479066 978351719 978873289 317333167 477320107 616515109 791613699 501263233 901523725 217684698 301294950 412866436 849428554 225987383 786985716 584685858 694797517 975160093 986381959 841849536 999067312 57185856 483595787 268410164 677387994 677128761 852802734 823161468 879696997 433868498 476004852 359930440 795739929 509904024 754278346 924432486 962311004 966637708 974564083 51766727 68699523 210133694 319004934 80812262 841777091 506728423 651096556 12209372 544762323 848862867 920086364 262493340 392692037 590359681 938543838 604189732 993032795 825903001 951212422 498800079 610403242 358784209 629747804 226660603 694763209 989327793 992922083 162971709 955318314 318803937 894938900 805846778 957529469 259887219 340755073 947559522 994928419 529221730 718153771 168929634 333804336 710588665 830523158 994068229 996848676 117999437 161784366 965690085 980021953 442280468 565621638 221995403 265503268 893558806 928096120 780431524 852281091 972244798 996934368 462039774 863299037 790753125 968029714 710674037 985173258 900607177 946601874 63417227 480197331 572871415 651059301 830025326 921174931 77554656 300061463 122638917 239098154 231540753 421462412 93122232 972563919 186125483 229720782 116904107 665213019 729861969 829479899 655183792 804150350 553903387 738997373 280657159 466573841 844852318 949078567 682879544 887403056 426450028 705542713 807414433 811225234 3788038 983970472 942362861 989556728 755343144 764766598 222328707 475599397 930175075 948803418 480152546 863633692 931633190 956568096 776620833 840339002 235389775 693264331 560769614 890021142 762888510 782147361 667143412 964702518 424953554 790071987 368883858 839491791 913354388 956260631 602329595 814847436 535090492 989547002 71930745 629215498 85185580 180938329 218306165 752655489 707347331 908168359 486994491 647534960 649114545 749756553 228223533 249821558 652437382 881562028 906520923 965640394 798908824 933028142 446892826 623593935 499355752 882578264 268845109 941715797 111039308 543372635 180697948 832891728 288847748 782619994 69018370 188379178 436180564 842566018 136778152 587284988 444143330 451449015 401757773 452761234 115966311 765282082 576536747 599747863 855098726 908905362 881762804 921917977 462914501 508088733 353504484 618215924 679242862 810817146 144653303 809753452 542808777 586820610 98889209 299809292 594203630 898397499 816138781 977989264 285066115 937031769 680344190 820790753 108595412 978779101 76093492 600264349 110884146 451495975 244080653 442438870 421756195 539382035 296547067 967979423 344632426 357320549 994851674 995020878 741028705 811683463 806545644 897221257 162415316 239302993 397915242 496040891 679515433 936596468 147769973 229215736 452144216 763973037 976658173 986431171 821548963 857649007 284454106 639222108 871875380 912347364 554983994 568582299 606312846 954753501 629522218 885426720 40381904 435418609 914074898 923299794 249875377 498841935 74813127 728505938 210481699 215534826 707229295 789876397 225503997 952512916 339219466 708976991 875537787 996296194 652061111 659959562 886165971 920442666 876520972 925008360 74085596 174500556 379901538 875143955 637123574 980276697 294577075 356338062 24465395 628532212 163922970 265360553 388004937 607918373 764499563 954857002 177212966 313966824 717457775 945978838 552035462 761191968 507028920 531222071 749248748 757184957 173130697 586897875 351945029 417495099 270100841 660334036 989712436 994516630 666122460 750459369 537727434 857127784 886334914 943304454 984163293 996114410 86982134 327846863 604702090 828313380 319533816 901759459 197093690 334426747 300517044 567919052 21510381 168177537 118355798 790688283 522072892 791233892 955210597 956992570 965378457 987048506 8366202 262748862 377732159 755991696 5569961 835831169 277519564 718653534 853983281 965385770 5658467 686066945 948468679 963764265 841413542 899548765 316323848 524220318 312429645 378292558 10706498 940681376 177669984 811620113 970867070 985422899 446898152 646163957 282981438 938540816 552468405 567636037 657109332 960143892 967449031 975988466 32492382 460053015 623365958 650781767 5092705 327063393 429791062 534268651 799220636 958192806 25176890 837690517 951260306 980265030 775982988 941553020 725724087 996186454 986027887 986515193 524985687 884317562 464115804 659574998 333099916 398367111 516150103 806261237 924401657 951632301 826222638 852542321 350211846 908118391 824595233 831759538 659646843 759817381 716407223 893118618 709727105 734034684 575941206 893447578 481860773 526990493 254916234 662426225 979435428 996942601 84041695 646989006 102131466 382450325 728448408 873066643 9415794 61215279 258839965 656273874 330039809 779238950 147435566 359675392 621028412 657492522 96839152 605537487 509161650 683988299 743611847 961591007 61767055 271772863 794012960 978144078 944103279 965954181 537040969 570041513 960894913 967873072 272155572 735275671 943479859 987352030 313238108 799978474 641910233 950386482 812824040 971302384 926093312 958541254 356493620 712286698 651509745 826444373 607801464 646119601 585005304 833927578 413202080 818163250 432627657 449048746 575580560 675269137 153999199 633521559 816770825 978638336 894294499 944345720 725191444 934683561 320132824 980480267 633732511 763449896 697271534 931774497 413187749 654152549 908195848 989312703 151395211 243740915 455626504 991372463 777397966 839235154 290327079 789307414 924161256 954566624 252905372 533598996 511374668 827057978 662865286 975957957 66307504 323405010 986181930 999576117 669363383 930054433 361839570 874640371 953036806 977190227 645271573 767130619 390593642 935140237 390518201 674245695 567740850 956939487 532719502 979607686 131514874 346330977 44061581 419140752 602491223 935919755 334699034 775625280 838816200 936383534 912430501 968490031 505949270 635770521 59963027 583955411 470737370 959232675 815209534 858617110 281671378 368033799 239562225 290202962 822170806 991771705 535398264 549653883 84165406 104621734 397189743 475038455 359238338 721040249 771700924 833111968 27723006 620049687 903692268 979612179 381064989 609342370 138908445 452903897 184346064 900183625 121400499 838851977 705151619 737216141 132905771 299113373 905425105 906303331 453271293 509873070 517777514 668749046 773504809 971294187 24399598 324104211 99511942 410238712 562433707 830635091 548723574 914143442 781999442 912571644 293406072 909421266 723167531 998865408 52092016 581765071 911185268 962248784 342322329 955943897 71293259 244878532 403463684 625168576 512865945 752356545 643423007 999837956 982784884 984126502 877176758 917172341 103732862 459561920 973520907 985379326 290454745 361368182 415215771 833370428 310149051 959790906 729089348 898023218 901415243 968720760 634049474 789031338 223139739 620922819 351731477 523895830 707597571 917081104 233340903 708659056 102389766 784459711 206471527 675530708 674004993 760555777 332406715 964275875 478363128 656306784 20076197 588347003 31270302 972928011 201877953 953837700 642202427 933421300 752829948 909002388 696937086 764470887 580655565 891739610 899234667 925841979 394163375 528354637 539217534 751840231 854821589 926784511 314645182 641172157 172769965 214326897 703382782 946058992 964035782 999200571 134576106 758083237 544419079 983966252 30730039 624471076 957316452 997303358 303785828 919274335 161019829 517776306 66360874 404587307 642973781 769995107 786840621 902719457 548313117 849365564 699380243 809700494 288817313 353516889 903340264 995013246 188263122 905927777 585514173 707853310 306504756 407662611 724610159 803768712 235261157 436424583 668645498 958432277 689520769 925622839 830030649 835656471 698603451 994076307 686137573 748717021 344876144 662104094 413906341 992959233 825386586 871747957 258981747 951187623 723399369 946749662 932286560 987348814 280498513 296460733 181655315 445531345 153212879 864053657 850592722 980450247 890094286 931286583 562300806 669709505 388282532 694518238 242330176 965532382 173693652 278448612 231476961 385919013 158904078 333993301 88934985 238064806 436497223 443039914 176284524 590123952 727487724 935643140 328164541 973263131 168931239 289011877 629541891 963973243 723625546 735458709 766857941 978455831 784813537 900628088 414482960 644805332 330746850 472313571 25925482 791830302 457937321 798962733 618350299 660873668 200011534 348325329 392922001 909128821 998891039 999221430 681547779 867534723 174956750 545170268 634919440 841483875 122218762 591820666 655842865 830057340 743268645 820389919 626290060 811854914 296354580 888410205 293987159 505620351 587174037 633375178 922985726 970300496 384790909 501458576 586525202 604250044 466860138 646727054 876924676 928917677 855385952 975034606 538225703 914420771 670574370 696201769 485698411 636075413 251026304 962388749 59532661 338700368 686543187 990005750 224597034 760546418 449421441 469620768 121526456 922904497 933707079 968324400 984144161 999650017 548909594 938396767 790193868 798575033 276212723 945008451 821927503 897940892 981240239 985096478 295616415 484707113 637100269 789784133 156127551 189372279 41054767 735251757 979995519 995650660 24351794 736384931 484831928 665308884 492939505 674356527 934658632 968118640 331314076 930620746 37252629 65759584 579318599 830741852 282746438 835789642 377531289 752508479 762149233 939607264 545561936 918259263 691918326 734841245 907126064 937092397 136613460 750211197 594727721 998439378 700425746 887773603 795846383 968030287 69759710 222803088 57502344 849222117 769003065 802280344 911179705 981499717 555497156 987185016 139028638 940828962 324351864 609903860 710390759 906610892 968177656 982305612 100196694 864080898 692166401 723132032 25549047 785860923 926691123 966539533 362762057 545242323 461298107 852485296 764903743 821844342 267066370 643778324 681303919 820336198 485137884 627542773 37153526 785454410 5682017 393032582 164119582 201312647 13017177 256949875 874803231 947475725 460739919 844535919 379138438 958395894 870375245 931317486 994099678 994712886 494804964 539094661 297029005 313703800 422293889 918145303 795415905 815753355 744898897 959596864 504103672 919353506 849913046 993368735 389453613 557954897 228244107 973312106 731042233 850201866 455622260 937391101 843128037 919004394 928912346 938416432 94333493 949309631 921797073 924919697 907168359 964715863 667475561 768207297 454447896 762785245 888636858 941233651 279345393 678201874 362205051 754510231 3415975 15423332 692409725 781808926 488915715 502767754 92426867 615895311 87066454 741882589 517815723 844890818 505507878 918112971 133349843 193199196 216526679 684516895 719873295 790660626 707497042 784658560 838142941 984896260 175136755 815353944 756613130 843957464 277249103 713305384 682782168 848565915 551423774 626133162 443279783 850342871 11519999 751600854 118436850 818304421 218931191 234994218 683839885 706550728 507949548 815629351 264178823 551478077 422570368 767599713 991553147 997137775 583202656 897121612 963962659 971355952 219842783 784752134 668351020 706223932 148750609 936713940 610950497 893453266 577337822 824022626 343766286 546155973 835913922 920988230 632990813 970209080 65936774 161939403 154053719 877045487 533992543 820474941 657559805 793938957 410593177 874679796 232480585 966310014 904632306 942529102 685761350 898063698 389829303 867326198 222345423 509672049 336724264 366402257 506842430 745737356 964934515 969490451 6348969 109757549 378327285 855051533 555985319 908681557 692698126 737697617 9289578 415867129 192714916 643602443 238895439 908106041 464668197 592182603 431613297 938960742 193230365 541293562 707576065 794830616 23041781 390104011 659960233 709241671 892752952 935033193 375784510 874505179 461624980 575587927 391201752 401986736 39927326 78830779 822389526 909582980 365055115 852586695 59300969 419939032 856055044 898085146 11820137 497783409 740616801 947825477 736289245 817566677 87055952 766501044 145519775 584075290 982866453 992377359 103583898 288634834 955324519 985802477 211566552 979429214 846755725 861766661 788060303 948669241 665665822 933296033 706541732 982327987 507468913 645703077 746303897 989498921 61583541 987571213 186652737 996190793 141657735 800655714 151628044 441632797 897603661 982283423 348914557 977115103 548505667 873790981 59144036 584590795 29880271 880397229 455814064 533280537 434802167 509262317 289247721 946236938 600001845 770182544 765914999 888763363 560014303 911724564 923633340 978314025 261268876 951013264 113912542 569545983 185796309 995134236 712832755 977677749 202566550 518075664 745440098 907910288 306756138 904793967 902379374 955126069 371212492 727108728 736607399 975341003 793546564 912578677 127138354 877681482 357073462 925132569 658072030 981217956 145945444 712199014 844673283 915892331 702979356 940519669 513009581 756159441 734436948 776587313 421446897 973545421 800498577 992015130 194431793 410949285 524030097 891493138 157843018 453375350 286433126 343679675 363532295 809430438 631005196 680805909 432092918 542435758 541758872 580562510 258629214 803120967 565706051 728256335 593149768 831650442 247303824 977998487 767551688 885476713 416854509 427359187 992797353 999007507 979769779 981819767 780186902 795827587 764575461 851686756 882062481 964522585 789745420 851578037 235552928 264497955 288098019 590702697 940903370 958398776 159849980 687927775 912688177 966401437 967388714 983567244 909538132 980971524 741260320 977448257 633244630 768752273 497652072 654239163 799528830 981253708 288819737 670004863 947960965 968010874 870882106 914414037 310597848 421722279 419778681 515168343 348282163 835701560 78757406 265940392 283172125 728113039 819429362 873895738 873826923 968315333 16439932 392635875 758364801 945155672 795268552 979049404 21060724 213534371 243748091 606762930 153233834 393270578 488777557 846740772 933067323 956251238 100125481 762979469 307236683 695174001 341837852 747609617 213296400 587897018 830566135 954428870 750064023 853093077 691891103 718587003 848211521 955583495 824307696 834954113 407725108 609915921 680326800 936955087 294601033 359619732 700292825 834317420 532766289 749119002 873180167 946702129 51613028 600337163 883922126 935557019 943819823 992331796 697527521 903564765 975821290 977954550 712998389 882026896 134016201 904884181 655629091 857626365 200209565 630215708 853191864 955849829 917530080 958273426 712391748 864916676 392154341 772945104 143430700 314557594 710466099 881284771 528958481 937126856 267506542 856474483 66749779 139374187 989931591 999929317 588829012 695901131 602258516 787443994 166442856 340265021 232728074 935443511 122260962 474427494 59449232 701449819 387061674 601833356 500168873 550592689 266545615 362273141 722761418 878053020 202355097 695460088 224693035 963513829 550837676 659811335 793229398 961410850 601490740 898042657 557460963 833976656 148935629 336620044 744069335 814441986 684847513 997983751 108864349 712327848 152871670 991954359 282210432 315659186 257235429 273510121 60644259 516999253 394887356 593278773 429356280 542020867 216694414 519481575 658221444 825951589 470837558 782008170 967119682 977562482 717077962 824018456 635013066 906308954 299056896 518942070 150071719 973001962 442809981 676549013 225343087 381816907 688814001 836072423 718378911 788873591 199298568 997338534 873152055 882219965 777242431 925022513 381923808 886265196 900768529 909731255 547804028 968732620 350745081 420669255 424114409 599200759 201536494 873269107 880278888 906485142 731220659 943030534 80639207 377100976 863933227 911649980 580431699 694345851 277762727 928263917 810715068 904229215 402523627 653703518 584791919 685367543 791173570 804507487 388430818 559165319 375256529 489574357 9447593 426479120 901301342 922683228 256286389 905772476 423519205 915202387 945666307 959091633 41832290 513036274 368245125 500928867 183697981 254502426 824883011 907286229 180291006 746112378 595981221 924218791 522466250 808837440 822522184 886546298 320103569 948907398 37303757 870692885 47762625 526706368 347201675 706680177 931180058 943412011 749966517 939580717 223170910 520849645 130840447 484639294 775290642 867816575 698885832 931999123 349482476 375006046 300612244 327837390 45572158 496656766 593178945 765827813 562439719 573337191 651033830 900864345 954268838 973339655 616619915 637727961 440455989 725785535 507394609 724060816 718753253 954204820 473906888 791078556 565182004 998598518 27813740 480726236 207441796 929807781 932588508 996839497 891025028 953058618 96883927 414450625 817221830 999235642 110545553 715358687 921340286 957785161 794432597 862573613 532784944 757460358 354627468 931722750 540890315 646243635 382693436 521019465 235213421 291044584 2542679 425747906 955817039 972225193 160782485 795751135 861230368 997510033 858122980 929917835 864869520 968877718 864919660 898940506 170230034 673603347 202794229 272721322 649404554 942487329 519858042 563380791 624035951 821304633 828098625 895136320 471529941 867505993 547767284 933365016 454599987 762206599 278999681 883871375 195585197 923449600 724182266 983557828 866422652 868309439 478727450 577791715 979813612 983799871 190377820 478416179 819276090 987564322 948101193 986132935 425760856 684417578 881368691 889554869 61323477 487889289 259299215 616423988 398049275 955986174 7341567 19691187 402300770 899205694 370466900 584016783 742378677 823663218 417404648 434919756 498418044 578974785 792023829 893738377 412143878 733794462 525098803 623882557 291176882 650090424 272820286 709880033 441455347 611020200 827982037 879443262 387004058 418890374 451884625 467658281 550680590 817210860 636538658 809712300 622501943 868498666 361486870 688744557 832248938 889229772 584732733 602005473 948775395 983900630 791324612 958133657 459648725 495450480 378854624 420495230 114086353 745581414 377911505 612900782 917218096 976409089 283684070 425635591 142405437 731150575 762188672 937374953 966119157 979317191 501716558 596483021 678989990 685433429 981319118 992730197 859645979 965836179 626273139 909084674 89888857 115941927 955607348 996368551 625046325 888688478 209177892 966005740 989967699 990277371 117981873 893919197 604883533 954651972 446533674 962986549 607345667 960887763 837762894 862717695 451038338 918068434 877143783 958266264 679019079 718702699 269259412 767013612 874745648 897620456 83259201 902920004 274978900 475346685 847029247 854963239 472176391 794281223 735298456 815555762 545082783 622853618 762270993 961669666 28214107 249465332 425072093 554091497 658671455 720770852 760392279 984678973 788360120 795862088 246544440 552892348 905780218 999234514 294622486 466883048 279679398 672521084 156864212 495428039 985681843 986401991 633450655 641041196 603702683 673062008 710330545 742176257 629226185 937864696 479317982 665336806 687831042 792659684 107457887 431551922 778156882 811796005 544053800 645885855 862957489 933947945 827340389 852751932 288558351 700031517 999954259 999999643 248746230 282684542 79351128 175497897 295040465 643737195 900505634 917663623 612842248 933092633 776885469 957409997 148251448 415686917 922504482 942787893 751928474 948429749 357779699 590136959 714253378 990848940 861909168 919554858 884639968 985249418 674646285 863729690 447029878 920389951 558138193 768515115 880888772 952563920 715301579 931272031 719369055 901468811 694514255 955133405 130099765 506034507 995679178 996342892 766591210 924649977 432469745 718982182 772428780 947501548 588559186 826159058 200164005 742349868 654483626 785097018 82811742 545717052 548378489 863212426 695561551 893085819 739014821 970903123 129965780 261189404 234174647 761335455 480365199 753255466 123680961 718625069 510549294 757613673 108295945 470478921 58051679 839213639 780319364 853621997 540292614 545598084 508899499 960494632 663398322 824010484 198970502 293858915 557419385 890069651 372589531 740640255 218167951 390742909 920307454 986777412 266190277 961302259 992707044 996363138 84392824 841773832 918266803 962611786 664546109 997382421 368768961 548001977 348887803 859997471 544403530 853345827 569019617 836780875 108510705 398052622 234806796 959632386 866962610 891249719 574662501 998127022 923257979 949676745 474924989 778411277 187063342 245837575 498078962 665875861 19282305 640138468 750405777 776932610 994550865 998552077 26691029 915710565 900804721 926658860 249355739 634770736 327867331 857414679 5731622 981612466 303053864 990075411 143746636 178575082 323222038 402988303 488197679 981620576 888901789 914138427 195084655 945165562 749676103 892259129 822309335 984409584 874022020 986561382 109211884 630635538 92709031 449189615 405946773 978178476 190341362 541390306 757929958 881826520 901687473 952780879 338568940 844475173 172751123 839273059 59909816 486788901 701148840 743077357 885212903 912051140 753209854 832282126 901794792 914469323 652476746 665708321 557149215 941936355 828167336 979930547 934641869 967008316 721056778 973874330 920463884 929309606 370807189 729789881 789119625 946190237 781631606 913582450 289185522 613251600 417871114 939063180 181440658 884520927 728837685 977373533 261814427 764800284 213555192 582444421 127466570 687803194 435541312 768385468 750827223 971790700 163789877 211075146 866279417 982395516 604403481 766211390 210378175 632809435 830890716 847934284 412408892 875208472 924518617 944460784 560713201 850569898 639777744 653985830 803962653 937456887 199855275 906216850 850781470 865510849 928689433 937640639 673701275 754534027 857684818 859739667 9743761 59592995 83223103 171947326 845883085 885864298 200684626 451397001 839381657 866995956 909746359 986602122 938237464 958416565 734334445 964142907 129379830 440486915 12234714 893728103 405054927 776729374 421804142 881306779 371813797 537046015 777313108 971521344 635578432 993903118 538855086 896011856 103668107 211895956 649313455 706898863 564074830 953050393 902779987 907090540 679507378 796513821 574556785 626657963 809741892 990422580 999347115 999348337 614110337 667764671 408524949 501908676 727521550 740836343 146236326 999532835 454164903 464924658 323676604 878532715 764917643 903325126 928127690 932594505 298770527 470442703 447442698 658779705 638161504 665823309 765620426 995738733 668240554 841671740 514196226 605967426 995384131 998066805 140505518 941718052 654631199 985141560 928702044 942234558 230390128 565087243 743626680 795519724 247842770 339934145 618916144 921658556 614520848 880007099 238775909 978246915 263235507 271741279 272967199 917665123 884567460 923609338 451718485 468088761 440416824 687784020 969441973 983626274 616819759 751693974 201156688 957410974 312950298 402539277 915043640 935995560 629312565 905847455 897672615 957497368 665920705 905055562 323038563 983348036 497847176 518126356 756897070 866758755 549856994 639580726 478500476 971609978 573296524 678742142 850126903 964706774 22007357 219400127 151270379 421724947 673816418 791059436 453101971 666626975 87582547 868263921 881312490 979224397 101594391 950374359 488079988 578846741 573033908 632742780 176463515 968741421 287586145 598844493 479697208 972383612 309487145 620801915 937341211 952276736 154346951 554666812 660670842 884586995 307006146 334894341 612702892 934253933 946935643 971666378 712526240 951680554 516348972 568145373 702073739 742586619 925143298 949440560 466808194 773386116 622332725 728606710 21931388 462715806 546710982 762677408 773470222 858906925 409316524 534912182 448636546 560544075 784130875 853494389 837278429 944904742 188943751 319185514 699130633 805237529 547984742 580438164 97683915 539470275 300972361 535455169 981587373 982010532 929014157 979532600 446963332 903001345 856066806 929789406 852431524 922857692 89556248 954900665 513217161 647730371 82354226 461804612 991341150 996513802 646967269 805393487 14956325 599545947 844769409 844893431 521142242 918320976 530341647 963411535 501451760 765167662 997312891 997604805 644175617 686540365 494767662 648911373 150522243 813779276 64853109 869347287 6059527 326862698 270857696 870457809 87721785 571124438 120441144 502088282 901112554 939071118 35170217 174131360 633777558 901961286 141523441 918972048 499771534 542456877 690192503 812595121 537782479 573191068 66015085 604684655 570533919 815773187 937433489 945825345 164669325 650323137 396732486 497785999 187477477 597488076 345314313 621826434 639894110 752373770 902323472 936058361 203676132 782570425 592198787 819819122 78211235 148730954 439239303 719165154 735625519 815134767 361443067 564198270 418247656 649154433 819460085 874209230 898494302 994984155 772869191 942379346 27656882 711214392 875544875 974045366 88764727 879890331 519081568 938077916 655584449 681782692 606338250 802864548 927135291 976929898 96460758 960631530 428215410 755212649 591909087 854753134 408234904 892182981 861106296 971079839 223322630 917098475 994920725 998212813 606309607 810541639 861609000 956470771 851338773 994205226 941746411 971237672 24380114 662958818 627595621 669779794 514690330 740535552 88820041 915660002 337184617 557140284 677581914 770728559 823796602 840754405 113434132 114245650 658621545 668330599 595487640 928595550 592772833 755284416 992229042 994544006 77564305 628398844 136173921 972551494 158300807 177059664 347890526 914254116 598429806 681814372 59020889 102577424 705034930 778920596 537055917 880795856 781747749 798501017 550098224 705291818 289391518 928249588 908762889 956446834 480490898 685188565 363692839 757211817 740456531 989284184 906408927 963330708 862622459 991908297 948875956 973035183 524453715 580934730 493776220 560195726 341781199 894867733 334207737 889377369 995016129 998271640 345809415 503444986 724501144 788745716 592143995 932464221 848869537 996181004 886852299 887028761 877996269 937075205 375759016 710361996 750186763 834082588 57427487 840224592 895939793 982088945 335117010 923180149 372017152 914230547 443857305 763658481 605901193 644526540 243379406 868554476 140871509 630232506 281646014 530724269 305724953 998922062 88430375 153569661 547404709 623545296 717334743 763867068 474677494 977499158 69550125 199331482 624442856 956215109 230962490 849766183 362011885 731703723 863265878 896605782 958650387 990428464 339235208 734895780 539806101 547039173 5798231 198648903 782278077 845920471 429297087 839534630 389015517 782933474 77147144 899506524 815272903 854890262 220428532 510335602 506833740 891447458 855168503 931464354 582082344 890375783 89888132 877261912 826253721 896308199 386729339 456020344 134184566 496055372 951800425 978058609 550230883 672300717 311913133 332439475 377392946 749586666 170821311 503242294 348622774 754775915 666218251 787697805 119692661 648002952 380763258 581153317 362738406 878741018 992165194 999564982 670259338 869545518 204028519 513890587 934739168 985440453 994442576 995998203 862148988 950875007 811731469 850882174 287371860 397459265 814117506 968400455 687300155 831285005 773815505 836060055 105769424 884526953 608470173 612959024 786358802 824938150 70139168 474752573 881638809 909837056 362256431 502106414 195067744 941654285 51906065 398774455 523287706 946195307 758540946 814578125 374300773 457517190 42911057 901888020 938333251 986755868 985694056 996422428 422186517 532241246 496759054 504240424 263561940 635373036 585789842 715547371 477414744 985318221 832593544 967117352 430199596 758057575 899250696 929326897 230304923 360273899 412284470 685840525 968913149 986924657 783969951 934074648 166704031 634983874 492073053 592862475 437675256 441204615 90325806 920624109 600517666 677327738 599118271 603163458 392665650 483738587 28490657 755447883 638976740 689723469 5244460 778734127 274827103 812275187 723449867 818340208 339172254 988917556 552127529 896224106 686515363 704642028 872689415 941346522 479689866 520789746 371720089 803845481 327817770 773355407 696210815 902023325 987328576 991259432 528993136 988015459 700093438 826846125 440046380 550606018 350612796 639291763 59151803 583339529 260336361 727580349 7172021 605944558 296735751 967369876 161860038 274103561 307736227 651433079 424572900 954160245 966991403 988694622 645406333 821864288 364844850 611244641 807474597 949613218 643174833 921042561 680723348 696248227 273542171 990421091 170673400 755512667 883973961 983940456 576911110 598602022 621898810 655823566 926422249 966932790 629299680 938613257 401078442 642558190 563113292 747348185 675866238 758209289 296505648 898502746 151471776 713582117 661877944 732191824 191689385 480129100 872519013 942136096 730031413 944390213 244756700 908517885 396215548 678770503 200252698 822493957 711645085 907575722 220250456 320009853 50793132 132767892 213235896 875777696 109941310 493574908 142675458 319127476 702510445 876077519 700680705 830168891 782991725 924867474 167980534 788826068 40404597 877735059 325655164 914669688 437602647 995641936 132048834 884061723 198931098 492388241 246884614 546145639 472959093 978654989 520001627 834811669 189038094 399818657 999769139 999899668 384864540 474106559 737015693 811893061 801544711 974980307 905999769 956973900 114785368 568288625 154919365 506220860 963204291 971148051 31465406 417930489 448848879 584571419 952811184 966724018 127875678 203172753 791910798 870019633 591973284 955977705 631229500 693048163 767966485 872918117 691234819 920186801 326005114 775387192 666886822 807501596 50795286 875092026 415539410 713154703 310901351 868691564 583432382 863018411 762281991 855509146 249768200 614241732 188157519 723485924 6520560 337056227 803954233 808032814 252611280 677502034 917319700 974685169 377150562 660487092 992799579 994454922 228987411 846302313 854132016 881098230 833622804 863122457 867380789 956956120 230250629 731015417 107124943 131142538 486656840 685845681 726694614 918410697 642742031 926358282 198125193 862733776 934689188 974078699 933123446 938051956 616895484 974156998 824523885 967998332 747883623 931193789 899044939 940599203 641844623 895503425 273408763 409036722 106141584 827931626 193985128 694832399 207508529 805398672 341231332 698966189 754444850 831415268 7868999 707817496 190413925 805462277 93245413 446546094 636636925 656504825 95555632 306674732 800242840 831659043 870342638 988643044 920061732 973595489 151528441 160384171 251728764 692357631 557945760 986713732 87132448 811205991 885298436 968396742 676812034 763449726 817855292 908519097 418029380 577466030 911321270 976190877 365219918 489742235 988301002 997960491 639992009 651330462 147472994 359178307 135199649 439085287 568930783 678493911 472235327 819531998 913241872 960905918 54464024 825546461 145723749 839161334 179165729 305856342 534988659 619916457 43442435 935890755 227839614 751005040 401210594 901926130 537943960 744875034 859000150 965256595 285416279 973341235 693142597 835387386 906400235 973319394 305473506 449859372 178683290 428824116 727187777 931381498 172864584 478826877 773840142 873977182 153531827 400311778 568942230 701328787 237670537 603630506 252929736 792993644 912647103 967970427 348711577 865077777 331331795 385151903 772012680 936422588 160213762 350732031 204547652 920405941 100535727 822700507 851018210 993636315 651256080 846213034 835023884 896201526 359311864 643604126 303986278 673014589 565460501 984056156 101557056 439650064 53975927 683346642 24263321 976907284 595836014 777560928 932009072 969113417 703068967 781616376 969078260 988699361 763394834 811508776 491627912 841252619 370340282 793093203 385229977 594337298 5860272 261309227 633411656 637790511 290030677 494472013 623063101 695339895 522933926 683453783 577005436 888855015 478796648 752539855 322282559 403133647 323404832 829592802 517340804 736685028 160025770 945488002 396878993 466606202 518585461 800819327 331798349 440447435 51987747 70620738 601935562 961316817 757409392 834932992 385649114 570665516 442185978 561920015 438138169 800649330 749223091 989010843 927156790 985262113 616750843 696210063 553830771 918549496 356619731 682714224 894319188 903189991 702151497 860976930 489335836 490292008 626867545 688628990 658065588 941200965 930426300 986670871 749858930 843576974 567017004 722457191 107398042 495907529 443226427 979847677 190702258 377508042 938452352 961968758 55193558 355657670 264180409 543756893 278424382 531308901 626528049 647911817 29420502 84650522 922120548 966076073 821715178 914001364 706511207 986378360 822149080 927049299 95021810 242787536 35843996 413663504 510175647 833525029 679183791 721825900 148255740 454119669 941367615 986456153 211081828 648093593 36053588 584469742 172324150 690524416 716571829 883195046 872403282 950768971 223871965 330798594 441268459 524481383 674763349 876936163 166551156 612708577 618015219 719653106 531774571 841033328 987514142 995311736 737384604 847125757 409266689 558801484 758997382 955562283 892967218 899759187 78702125 202873398 794894829 892832791 320244979 417145066 875913180 900663745 888086765 921815409 874814271 940434542 761769602 917677941 912533732 963265670 615702849 761775290 404640377 934026183 614232011 911475243 514656055 654462597 413072507 728010565 682485814 732857502 347409089 620654620 674311179 683063298 514395366 867197751 595877260 941368266 461465201 936400706 474492006 512720524 643604965 804511931 60429167 967653360 85140782 952732956 546148524 902541134 235437865 530057184 694179012 830377930 189162489 766647382 343208542 583468648 192583851 995769820 31521636 539886330 371514793 772543072 86647176 882384938 20135207 142983036 270449242 717022921 793630623 876045791 144057568 623074934 712451750 819155010 821165953 988125892 503397336 964730697 105961384 596338530 113968832 441239516 387551589 664299292 69713978 995925506 359448915 936046220 376022934 700921724 710161448 869440390 558272047 683609858 373375224 938494937 993542527 999963390 71077436 215624977 384304468 753264701 679696533 909949187 666666868 822906916 285927177 826854572 796590879 948960145 576838982 702775899 303232486 982853478 278898645 960320026 965692632 991696243 905948646 985039357 421413886 597281059 698938797 739027776 99639074 145712074 383694836 788573734 904871932 915174973 751571588 932868638 379865850 555380833 963168720 989794119 830612545 929492331 349896320 793346823 900978455 946389285 904267983 942050760 597891739 738394742 970796971 986075037 53353755 152206650 498031519 651151338 848182598 848971201 671542021 798918584 496996370 669028622 614941969 713105802 380656354 803716702 400860590 977284301 170062185 831435438 104947069 929797155 648268327 979811471 20254515 228845102 525609139 573226635 836793410 884751134 363804323 405134309 376462509 646248764 899840480 962278550 79765678 603648514 795150265 818558613 457023182 570177483 442357081 762586139 541446267 619883706 697767873 809804670 92700138 805521650 487301173 622787510 958327191 976134075 398507354 937987518 665416189 725554211 582051204 926890125 599833692 628463244 733453340 788752561 7354536 764791519 577549020 940635631 419748659 690831629 178031758 930264447 715927398 787813489 560437400 974843467 414938642 675593781 276464769 983091050 903821492 986142160 621225202 655491488 866887929 917662819 273958174 906079099 672880596 691002592 930063325 960923267 711468337 966750475 361292028 474402596 68477519 199326105 967603162 971360281 963014424 990749921 137208655 962988781 654313878 938078364 181744142 648164596 539945848 546297738 692575233 818905465 159333420 588625161 467908835 939591006 607680756 978948341 828418907 871444184 471141670 792287708 926332685 942122285 836890808 916483611 299745392 900308102 765243987 946140092 21768763 179425653 613796793 677299855 284720345 405069399 781232344 846771129 441829369 490828136 171997212 808503807 892878196 927614288 599634205 974242877 292009850 687248605 964589183 968863798 153846406 536083345 598517925 658752332 567724685 666343452 481318185 744824827 315390501 464702266 886617552 936538460 708155792 893421109 219766252 398852314 599737278 862052431 387153796 987476582 777201995 961826174 361094505 785306458 32763853 878005697 116356021 542761241 525548596 716793199 834744809 950405147 540528104 759577053 663833844 948570377 851328515 968289812 302509164 866411981 970970472 997493273 799329884 799825053 917128688 925526289 190034818 549389987 651252284 982244724 703020363 938522006 43237629 989880399 595781263 687120004 671210894 919924594 755072918 893322511 156306400 642149698 523393184 745205873 96546707 199657188 426310462 639530905 31426606 142560422 593811208 937965007 376684347 944557179 607182039 708699995 917406072 922736493 86996705 145662557 780562536 982685944 267453296 430672444 766197934 796064690 812429018 835816798 714919089 816681207 873005695 903817005 75403473 974590015 930051988 957754808 629615142 756587550 70952626 515993507 153123074 969098659 272856544 303817251 457867310 831903124 466344951 756663519 512181480 546794835 782535785 915641523 524072955 805203111 612713195 813505496 954137790 986461624 69283899 851898129 820092686 893469798 332849496 913602934 11652342 286361915 550963696 920345538 211041091 986507444 967376096 990570429 110114771 440821406 509482146 557194377 375009239 860733654 980014494 993650347 751238765 929300610 680354788 862381887 138448852 325070770 595335744 912590825 935905862 946004831 795214471 889765466 780742894 910440544 331105515 641372053 194777814 211749703 279651602 675344618 961518451 966797471 82520055 113980234 163693246 261001442 963254299 986856151 820902278 962342954 750444157 798980983 123328719 553711399 398163166 539760752 76332585 599125626 929972651 948111864 116143332 291206044 218213268 220236294 200340629 259404026 358852556 525375695 759680748 955079994 928130708 972582390 576528166 971093884 996521883 996701793 704001696 875510900 285077862 318124617 39800841 903071981 919817118 925028903 88515780 460018558 181149896 487394892 33178032 963421008 321835964 895778337 325378111 973128178 429336096 561171396 321970633 662220615 816247346 935794879 849403820 928934923 84782620 104090079 573701982 657622725 275752271 656932907 419965997 716287452 922691804 998160217 33134192 420338679 125751092 247540876 23795382 330973022 899621712 902264646 489541177 611714162 779389848 900936230 696714853 766087203 648056316 730126052 17551724 196538670 181851192 760065089 394668142 882762798 369641128 792389967 113818347 435088041 370243731 582638076 931900567 966641713 256780914 631643084 554620318 889694732 246624759 772890083 392745452 424290918 108768392 731416757 516941706 977081015 423897561 935815148 657978983 837141129 996908707 997780867 878579361 929880496 832822066 893102433 778331260 975917467 532564640 906190612 243614914 415970280 868773221 988092950 974299212 999835169 2265342 946005200 775868541 973356977 396130522 578083055 139577390 213411778 992072745 999895030 686260242 915834064 80510986 960252842 784597646 828306903 388122661 580188785 594927069 885798220 439297499 595172760 853918496 916131724 41921864 331425895 162325161 314012617 398342616 832558313 7719511 137070122 342439714 507438799 236709106 244975169 585217087 608673926 264899760 929023101 86932338 445418224 151733539 566349876 355365014 915690350 855657402 984473688 22117960 840170268 838920633 844919399 172656544 465533908 504052198 543119609 881440755 996638846 104696459 701408813 230775164 390460941 430438012 659395476 829225207 945160979 247427566 891233454 306045475 686936683 878311306 957062489 308822704 826498302 80889184 337304541 557665482 641052547 540259862 542143249 35092214 937497207 458231912 656727748 385303951 830646655 120914292 526924666 967403661 989909880 9724013 975671068 273479100 610390417 809546674 954704901 461841656 668862323 240328529 823682801 931536374 985670393 446720754 464511930 641622733 971630059 48016908 582744369 969201631 992114416 930830999 998144358 849279491 995375937 745180757 962989961 563311328 942229313 31014793 315288159 283916768 851076231 791845584 909215536 143105487 366777916 536927702 952683445 895845952 934620962 409226346 778291788 263649947 823624864 107360201 755848145 779354613 993752229 570542420 613531639 564458188 882461215 931173854 933628320 723721662 975418726 37935849 759277167 599851546 643249838 51113108 169194971 548038286 597100551 355185317 542679192 121831459 463151104 989976904 990932391 195944281 426048180 24333973 833998344 640666858 986572353 11295826 284785372 302754900 358228841 793116273 928301464 734652889 935351011 146911269 320814899 104426826 543684166 21773414 821060775 899606066 910064407 786333497 883650122 193045161 569210825 711191725 853573753 24021261 730726125 626633039 675363075 433437952 781573471 378934574 592826779 900359847 913854641 157381188 494039204 665310722 779205819 809616891 922715071 778052982 848616941 147867996 879122905 9473015 383543034 181245723 380992840 950973370 966573426 568234979 720769703 864768993 938671907 172880587 869727193 127485063 463284856 330329390 775917028 106160113 798942987 615001582 742893625 361608166 625397375 474518930 714599102 937238096 948528787 616914377 658699780 315084808 521017493 273900649 685495045 786310643 799679659 933955361 970190445 442795225 495951978 39303114 240569684 835036657 959181429 965602468 987936956 539327824 958775434 363080887 512976051 545422921 948480036 461842779 642544124 47710670 62321063 295796101 303834496 687592278 903320619 927179335 988373555 190984594 413543561 322175524 699726532 967051867 990401138 53927331 537477943 341019620 723350460 948826777 975939472 710321796 767862965 605460488 691981121 521582904 891806477 691328946 764073920 294578083 814758314 699647913 799381512 735566466 961668548 97120428 769845882 390799639 971573241 755595133 894416056 631262917 790357531 754631308 789581955 677857797 680719287 522952 226086669 453751361 602416716 730042733 972029219 379706481 406888502 808838898 956794919 328504157 723908775 751473952 893293503 123125698 644589301 74860187 156064090 545513927 884192130 900151089 954503207 254277197 394843435 392792430 586006695 818325761 962277985 769505143 876027367 55165746 410387849 412591730 878975357 474424427 711066901 81214683 116283466 172652727 868827944 17924946 935556113 377454840 950579900 705422308 838943706 222009871 331775405 392940986 859272893 378933585 870021496 385264470 689643291 761876056 930012159 657354530 817569540 790041658 908748771 567375270 842528352 755531070 883995366 64481124 739316520 479666566 549559078 923256160 942651061 931086601 974184561 290709735 641402690 365108787 444365775 499450041 609400062 821565017 851384252 681014454 861146603 629792481 803930214 272041398 613602510 158031588 954682837 651116995 715710225 616102130 747170359 795281084 874336092 500534410 673100856 213106765 662082182 584039178 938814926 150352946 178528525 184614599 804559053 729772214 980854235 149748337 676035044 367691613 606990950 149435107 617119120 101558056 886828598 964616667 972850274 197313533 519685908 457732107 909398241 126572904 286910903 117330942 831545633 359157206 655113591 500064981 969925773 707519878 840384359 419875860 852381310 262428280 465471812 589758777 801533858 336961606 353123603 259391508 988710864 331562061 991830058 663965182 912730875 583698599 598515031 908578338 916612990 773818074 881764282 594121503 636583661 401340331 524805420 945031551 952357877 717527407 781969708 422234638 989792308 300461496 406857854 566861289 627814277 422489747 898766596 760489227 837837513 906192502 995847186 624022902 629495434 615988649 880329982 46316108 601787420 745093351 872842506 2694158 920717465 29445156 726127389 568221591 833398933 635670989 888644442 218670693 993595009 239146322 615722165 210762053 536718516 382832603 662814400 928408277 964943619 680052683 928428721 299699292 503026972 301859133 825857152 52789835 778113678 95330123 908883594 40706907 535222042 162659433 611757151 909616657 941623669 587666735 927494018 742523682 763985710 888002788 965271054 234389400 599250222 448231837 458963274 681832798 802756068 566864379 601335298 263836780 309472441 417894011 799197850 999316051 999918335 224098847 826431477 908726717 994712949 238866649 437475294 453416601 658069017 790948937 905163876 837003520 881333248 568212407 920326626 149323718 654847621 653668150 941277015 723577599 981294335 575448245 725590932 442109113 992344248 407957433 639545581 283806624 420623549 959316471 992053912 916574904 965516368 628542131 857644306 122514141 323791028 905909190 936460375 853606833 956623404 495237685 929084011 381815739 912768100 94595992 445158615 767450670 858280021 169469291 753332793 736870274 801887821 155080020 798353331 414622070 429238643 559497908 802219118 687875979 993437842 865885008 945018560 882790573 890478809 329876650 709053530 807190449 967826939 568174224 739378088 690920108 933328233 420891857 809558525 286748755 498692789 774942024 843616861 610040024 744837156 212358363 920280826 670420064 671332485 483371976 855054142 119453742 460408458 2548087 768189103 94130144 769312848 681664668 944158100 699488226 759990445 16983545 274958171 510312635 779525871 798947569 837886232 209176255 451237248 418275495 556759053 560955478 677303849 807232978 943765208 629249357 990898046 358675684 583173913 822516693 886003395 83264405 953264280 402691591 660810585 98993094 169303243 771764671 841585984 591770098 659561158 674134770 696486301 973249962 988817367 923450526 963887187 420884560 755575444 95726813 617604928 189367842 842631287 100669245 127520262 986374721 989184510 187159944 691969799 954076603 980323111 540409289 557587911 252679743 391071839 268854292 408922664 978298327 980207202 613625997 758788649 556619949 887402019 833770036 920022719 59139909 834316895 304903252 725125993 654036928 695738669 264678339 701620730 610570560 866118100 104652255 263817785 984453066 993760448 703191630 974430884 174575686 229821673 389278281 702316470 811790123 993783706 482191739 780283977 86567089 586542261 433106715 567154366 856423117 879414957 342833563 643471751 125605040 689165295 853403672 929971302 959463346 998670264 715509970 840748308 486350759 876371029 343721515 671288413 521890731 580158593 37408698 509142063 539897869 639646235 740977399 859015080 38006556 421764652 922393609 932964915 323510783 395937871 377738919 842644858 180977550 214318783 69151443 582597225 858215985 992968009 735897098 951437788 798556907 919328500 446817032 853358901 279658177 970975422 816359706 985049421 870362849 971400976 364458933 936691699 256501158 732228108 967218598 996815508 314600436 748504894 58717771 66451964 688911321 995612560 760256812 839391427 593645314 956027375 925752995 985792151 545737941 571733873 661640009 890599107 682239986 936867345 300406419 472112254 940789454 977871983 108007401 331542298 584423517 627946233 123736850 596338599 871116303 916902216 160232124 316906303 371827798 677245177 644680087 780225337 217802969 652815831 204153627 307503514 995934428 999172608 650696180 839842085 934132061 944980064 272055164 494603206 203232396 822440341 718879877 874753037 619737297 677643918 971269676 991972894 252884936 528119809 97080151 730561634 216059193 822184876 867205297 998547736 358380138 427229030 87787696 370339722 480404512 888275044 557848994 928101657 922049871 954339916 16396224 186384290 418504063 932115499 736854223 850679696 582007711 616365247 51983325 719795461 10677700 291236145 144787723 308153790 926493155 964934838 576123920 964540828 231430106 675930227 687674352 974939001 92582235 435591205 39326451 809619886 641212293 776431054 73483186 802452982 421149378 890302993 811505483 844713161 830369991 981286172 617683773 654059198 644218946 877732332 826714542 834822149 636305414 823240831 984902970 990452081 566714357 934738982 590222627 647441286 78589076 737136409 102480199 833760329 772189869 845919794 143178393 905296880 2238250 915927613 66816552 164743680 402373285 418967749 808310489 995198373 116563703 771701369 553640325 672342741 778044042 814461569 968600738 992492841 284127491 515146823 628568226 764323174 430448944 495196007 909480465 925624554 62879611 864121687 244434 578245399 120057690 985292021 919191866 928144744 973800685 983797280 693440023 932112292 496898905 544986989 80372172 380735109 255192282 379633276 509020015 733955910 902306106 905220613 324958512 467880040 494081982 584059150 36501649 805555693 56418694 623837264 603648241 979936663 540257877 655272115 139119392 235099115 374965706 881495450 536199708 825706129 703867254 780064055 981977776 985143217 95871811 318376050 499597507 854865393 661684985 869591620 39938224 385609551 892290864 941897150 80432385 478603875 230110663 233608303 144693760 333421881 310430186 356803800 122651106 999658310 346355434 550895190 724721024 879960960 141873660 186924632 837406243 894684552 745015933 930171778 749454106 825949991 322960728 490397964 968143523 988135853 464522288 997303281 216557173 439349664 863028690 982261646 670508110 944392746 202282293 539481542 501348632 722430139 864317924 904060474 195572456 639246699 38754585 835335457 635961838 954716355 707820248 916087329 23516301 781052348 457400749 726552732 267993157 542789968 300544980 317579890 479712072 954356360 56212907 163794226 755904131 897346766 39563075 623882370 100933016 651372680 3584916 672481838 195082083 196206408 378556141 577842404 589989517 865221180 206300838 938278560 257234879 789941058 179905266 330301402 762062365 814004815 211832841 614368535 382475933 845457404 301044186 484140711 324478827 851460718 768389988 922137792 887538854 972193553 701658184 844843873 54140604 826831332 754173670 877870883 790166185 825411625 309638242 924209403 53433932 921612314 273517995 362612321 443105298 682384415 217072415 522119283 952185762 973391534 956038750 999427478 927650588 957766203 600825963 791692838 308247952 448214951 871314041 920456695 339482110 758675898 483097874 781377835 959911607 991367515 91692554 147011208 656496121 665778126 601073348 753843920 689310988 953643581 705260971 740482034 800821143 845389197 62417886 887940131 868133607 965732391 643096289 850145674 518133717 663552182 28451413 431594731 969493734 988931020 166544430 599964409 250810187 924363596 430761583 444343853 923968918 924625456 711526522 882080359 213924099 955748002 965716048 994328707 479610327 950236605 842601497 920947245 28216478 244864586 538200424 719254318 178215596 841340161 678037938 770719224 314109435 955416195 210089686 632998720 859138278 903774091 367204922 510279784 209919566 569581991 771926050 876975674 918889644 994722726 77957399 360234119 414673049 645763687 257151446 992545507 915949941 978473142 472697006 507138583 896656225 960457996 990896989 997837841 744133489 762025826 870208851 914113261 565277624 619807670 511717658 625855912 933314092 956546203 380227705 628934295 285820739 390376934 434252346 615497510 176544782 648714559 347531989 423488586 339968594 576047350 409138059 433808370 580959258 952499085 841816409 990832767 500797162 791864481 667912035 961880365 4340376 892516749 462805824 802055804 784632901 960990641 362872546 477995860 690051617 705018443 770208031 964697776 666452219 752756688 496929656 872437325 1686483 731691287 834092036 961297079 419887052 497185554 709523909 934428223 83550974 110609395 580873995 751223329 468027572 752423402 166387793 524447931 680220921 960910266 261833988 294300907 820895126 844749927 398444890 889385934 770427899 890917889 80425304 532061908 798193187 841686545 227092317 447860529 255478507 999406470 405335824 428968481 808478627 971377289 104067722 915074152 222166807 273575149 428753411 793126532 246288454 457668300 691428349 779449689 334557580 483595575 416386450 888185838 259767872 689208045 41764133 153909064 316158640 731970219 913423500 987014603 901922442 917904560 833361223 883818857 505988653 548331331 594954072 927433383 682490151 902314251 489815680 803343875 237493159 845471293 849689047 967363942 528739757 874316441 15393405 439930056 49044342 544130977 996168312 997709336 318739861 730008195 929405372 995550179 771028446 916380468 355310952 983552684 789540307 877152493 138610266 250398525 283448772 791536243 727895461 785091994 748123158 797380557 744336667 985209685 925732801 987517001 847144711 919543172 708558807 921917002 478667049 827594140 915474670 935876124 720104939 724478234 925260115 980404419 547177964 869021668 708820913 954522862 550723552 960430873 953335394 987212046 641752929 700820763 484101912 587452893 482397292 598687254 684422332 994598552 362337232 974053321 597628316 902280725 233691093 307809608 218103747 904351434 914100834 917688358 496744437 528152061 673092907 820340619 114154372 827662912 597941025 606033643 500401567 581075180 11904151 234544259 845377321 908992096 813067105 981550216 184684237 455202409 484469231 823612420 381636928 715213834 861977150 945493090 689506285 807307841 878712158 893849817 860037087 867489148 689896966 768114815 925506353 949299546 536530960 883964249 767816414 911355369 758857168 847259112 816082367 857182213 646369414 964027287 975512992 978298479 811944998 930347282 679685106 691970203 143960698 512850114 564714994 754180062 323414987 408023703 189270060 672593185 166759109 439893923 5262562 483925972 514518800 789354416 53562417 267794200 214854720 509869036 209718697 870752721 704721928 934223055 858952319 921598006 602256824 768885007 820852281 897458578 377276358 540328778 713874380 738214931 993796352 995709658 465866981 615769786 223017647 664196773 386391644 507156361 331989966 445186890 23774531 332822756 943718104 995598313 859704644 916880615 636603622 968590385 523769831 785995938 951182895 962036018 953631444 981398697 541149201 981699540 359652440 572295935 568732384 825409104 171728961 306929860 630039244 934179897 648748847 660720037 901723558 969903456 286285666 873915635 86920541 890129582 289930253 365193651 71533377 947318299 593177722 609611167 204588112 960201281 119873502 538744512 864592996 893934360 494780526 864270442 443525289 659762304 923071990 958038904 430783081 535746250 811018544 921781444 439482264 944383885 76639712 240865624 939908104 947257895 581354380 859205180 514745361 967404116 897890284 907203750 425674429 935372047 484143784 851389674 862860817 997228339 612296078 885523067 639570996 808008817 900873110 916003877 102528668 418184325 802831183 816186828 407830063 966598071 169945962 407722731 326320252 847083619 100071801 474613513 220355702 837723900 655933246 846774011 800773954 953125368 462967696 463675198 78495783 471090432 824131500 925312529 104952079 327658388 539857776 841650178 626898186 858047535 129549783 157727366 932304336 981210214 328052138 727130539 740411625 919776914 444443810 769435033 54084573 278988988 342372996 510414016 459817401 634029370 549386451 992696996 799668781 880519072 9108871 990971257 789731348 827703713 659375661 681244736 986305627 987259131 371487475 678715225 513104559 791890862 770157266 814347834 157200980 183795082 172532356 979697025 129452345 435860852 345077900 569130434 967989474 970814644 147296040 452975281 34349068 565478858 715947673 802692386 281283444 821961149 983977704 997281049 947879299 973486615 212970341 498135020 86534121 864436054 303217954 628376892 160855553 332701513 82706268 811331934 949389377 994487938 649787271 852213128 417447455 852762976 565892183 757014170 708217210 817590067 91461050 151183476 564754739 748786284 199501926 310226264 138838106 963431826 952781703 993801512 541565528 675159703 989755378 994228544 61856035 945736503 307103012 563045575 305693838 505726501 120230656 568491780 475528783 654428894 344882304 724374308 785396635 968385132 1635414 726155118 893904083 931280625 852840668 939849207 544757038 738801627 672497722 997320794 643363110 910648090 80423191 569258339 512539816 676985162 780757353 974538738 216717725 524958334 543114397 622304178 462361647 931315583 442867180 983378982 752660054 912391350 428153875 483448196 412679810 545491244 228776111 550235097 557034050 851697296 867727930 881839761 823341335 997180335 216306522 376722770 418681669 955779324 586011769 979183838 632629032 731422514 317124758 487205454 26550578 275367262 105661832 510724482 217874370 860660335 121829204 781846609 846171400 963528837 559364425 654153718 192075766 569952950 721761602 805021300 767022776 956810528 149361842 633950202 229104087 594406322 277874099 772711350 423388996 847380424 745890542 945377225 634415169 643991001 118290267 930387287 615734193 717633929 198936679 431087241 868645156 892702983 177112462 695684347 969979510 971989229 88057306 605596311 83295478 498423602 367940145 818234268 523017300 566166681 394309263 976597959 711782334 757923936 59289906 421849756 870926887 881139919 670652566 854312660 908794995 949870811 523797206 690950559 361683596 789854907 478307510 797460853 185093708 823762317 456436022 776942300 940090306 996961917 650241472 920921422 32880743 738653004 271781559 772014422 26848094 583026682 30930854 597251741 965683595 999584072 321177823 408067722 515611707 543063428 773579499 810559632 737435898 913259175 837151597 965683148 493514960 722707779 988004697 991278852 57969944 798316460 115289453 481525821 230777548 341589610 645226349 903894680 651104613 884787626 279252279 295946400 810203241 813649644 303592154 447289764 956003198 990426391 691121333 818064376 566938717 596195508 125034079 677118633 182616120 793440619 613905291 880884840 950593257 992021640 846158961 912900781 349921953 750004587 352477392 413307615 100913246 108687318 694976926 766765034 49961312 110875113 157540868 687509482 914521362 943460570 292437933 739711155 180418690 222197673 449692188 560796966 809626303 978146396 909939802 945015099 284563341 885763616 994879492 999209368 664196106 961726018 117842232 343527933 417133590 730365961 335274963 569108803 352966005 776643732 281215655 335117836 394364803 634372471 755482936 964852095 714385074 882438582 346109520 803205315 668542623 781835572 526472798 987435762 859713200 971172005 328240526 560391935 584686198 721268328 639676430 853805719 759186761 767683450 117894233 657778646 913424083 984961319 402643223 591120881 521408295 916855806 581975676 872160540 717797272 802565231 263549437 336979935 657052797 777685187 599600092 704865287 631653696 733680462 933722898 948052841 469062268 574156326 886132031 967608715 929085518 946563040 743004957 839571597 904066041 963439359 676991637 771260545 946119183 966144857 764358056 935982906 541386170 847721633 355984975 598811972 895078644 977926755 588176594 687938163 79498804 827406382 625882925 755909267 547615650 855548131 404317346 590166039 617178038 634718969 945173344 966948217 499371155 649437053 550636110 710176834 820931707 921852430 109099430 464350616 555603591 710492990 59575618 618499713 667646057 991385950 257664606 280589058 49628032 718468445 219039297 335354490 672099732 977190160 568700882 771015446 862483706 945418528 715951475 918990364 915085868 994181286 254799746 637836815 39820565 225069942 837869692 854057187 28557795 65600857 692778500 965134939 131094384 894142563 36024161 312267504 806314314 951653560 279350758 461308136 658067193 835722277 255406863 716952825 415117964 782651573 198020427 608111630 891776147 967414973 766289074 930299788 296572930 905588104 830877814 880696233 262342185 838200872 458347917 498685018 178526540 930162645 293804775 687889121 863645059 879011441 584264159 980978927 102372723 545208118 911549893 959330605 596374062 766143674 830637570 862230254 332547823 388161247 345470520 516289861 938968101 973082784 838318416 914979691 299371792 315177051 205846850 702802060 707207573 743256451 817407641 888286115 35705608 835412687 202973687 454868056 372853078 940631405 196279437 797050456 908401403 929849704 696748964 742862024 115014533 749316665 388850342 652447382 362701084 869795206 1727320 626587085 229084220 689297138 913134310 934410854 775170664 895590844 337229857 556872144 202020372 806850520 735424004 933116298 203636694 237152534 396673403 599480377 217273829 550465983 370865735 841787481 89088282 983560767 446923225 561997411 874708609 993772011 283786545 725203401 502094133 637381003 140914232 861975628 110752152 574259690 462735374 506294146 125610200 858483087 809440297 840295316 584526581 924220580 757233045 976988187 871602194 892836309 475834017 749915787 598825660 829562179 907816496 933475553 855484474 936415272 459471938 702623018 572951739 848484353 144749920 315500787 866846798 901996679 921850520 953206871 798915905 983812147 87911111 611152173 565314992 863806104 996029865 997270191 207066395 573748437 351027960 684212471 452523733 583216580 84120017 664989972 39326228 732835120 49290281 273988666 963253170 994102888 898206308 941575251 854913006 926972116 563800158 953920146 778989280 930094938 451192961 956151094 526646192 611118887 411196064 925457789 24949907 355180507 747219249 808323783 909095293 988985184 858782436 966911844 265880217 692292520 917443439 962587846 372458328 764808614 701268489 732309484 625579019 962015422 351732857 634981692 554131217 859303703 523912843 757725716 291737232 917334456 408776076 558686119 368089575 891257607 508988661 525892407 855373421 950741581 782200868 908890447 23689318 293993186 867745910 956549670 635335907 686235466 648397417 705402483 60472739 354909537 614422059 628374312 304802613 757663129 167523365 950765160 850933551 875338133 806246892 869409293 798853651 888065039 939895839 969622151 403502014 738983037 88338833 805719076 739776237 959680218 855314971 953909883 917053599 945805472 268177110 887998784 314638497 526031045 105984017 140059992 555263990 996708352 723107111 759159282 187129383 663115454 934392372 981917408 23218931 420883877 395600912 895802398 838641292 924444053 392543020 430928975 788762051 859057253 22182908 466552700 528829425 677766793 777963794 885377796 382878208 749713953 700158731 836070102 861495329 903106302 23520809 176159663 180207696 283569162 527138131 780534376 343088389 616806398 611559797 984093333 870495090 903556650 472927978 547495357 102396761 315237780 525268114 777524409 303119282 681196322 875069387 945796306 296091261 545574538 546219797 604732524 973528932 999602099 744084070 931396495 607611213 700716357 783087930 944236479 68470113 272769831 166747681 495682107 566864865 682615753 904967835 949545027 253169570 871097602 406585122 626954116 322850868 437264460 830071763 967798289 697134696 833959112 829895870 909870035 328304864 516711130 466149466 743674717 558515432 909544639 386665010 419154912 867999173 922967998 158475054 476516515 92072648 475012994 49633494 635727316 818839492 836174844 609061419 658927253 105734392 602607052 675631982 862095733 817481382 916383624 133169582 555302084 855445379 877701799 168718087 494706567 25929309 427089695 859988068 908271995 951730392 970207862 259270797 307444315 436220822 662978518 396906716 478207701 29299874 442292825 315373970 802672078 694054692 957429402 629720392 921837863 333424675 506125021 398668530 923896685 745033010 885739415 646103788 793783780 611670596 738576850 763691427 914161314 585167566 641962994 981130118 993874102 356489386 656702768 229307003 814109383 326137900 665017350 978909721 985182234 266437370 435983095 407372957 973049845 702093471 900490302 362460113 825665202 871031322 913830247 247189559 848761016 578604436 735153477 414789946 857236759 227028674 327351918 271901594 931667677 575971691 894272845 185395541 211630077 856774197 944936636 294249605 917284890 63894367 211548752 361582851 828929149 54016126 910300198 641719181 756469815 267732743 794152225 332284189 623484316 847476261 982624018 886020000 896707572 646424426 677813501 37238091 530517492 133051997 360766529 146892300 490327880 607420928 790373212 98294443 422869603 382089264 913154700 277157446 823438605 538313250 709344426 129292669 484008655 222189861 933565415 309506845 945188284 709021812 784409243 531439481 618767700 345267640 707809703 469407333 816444279 858852844 877375709 174904854 333739958 251867725 282595791 701104242 792832562 388113399 528393610 965785495 978623570 162252386 404750298 899158851 989929778 292655846 383768529 949265683 984735919 969545105 982880143 4978461 804613342 731847688 832488331 487744719 949309321 63733397 195012276 651855025 943252727 88072558 791446439 498609432 550843106 826168133 908514260 750061522 945911975 650296506 655480025 180350755 889564027 73684796 392489285 638381516 659983995 949031017 969964102 79238607 704824956 576122158 947040164 405822491 959829648 659615180 943472988 641278814 762581282 478894787 639782893 642419277 846710067 485843727 835382945 692440708 737327871 253490747 897739127 985793080 987818049 485251191 505784127 293993639 968200451 258879860 392132265 12620641 325010500 566331692 787539028 728975772 919614301 37020530 198398060 535790332 880422444 350699116 753201538 151091978 255066936 484716070 792696890 713887366 761537417 279322976 768566974 900550581 962432170 505943172 625207968 913855068 933337949 760555383 813359421 139699198 531965740 909260724 923452164 182559432 502707054 104381146 858899922 881389482 950774569 207609841 646849748 658358548 776988060 564688374 632849198 384827853 478304842 339635370 381126519 186995570 634574695 445962341 675625420 491119834 906477439 629145350 955169540 441176415 556499464 882378433 882409827 718473130 746421644 335961752 974721199 285084654 500336155 156441274 692242483 351815203 795324877 712601688 861868290 65634516 591192829 765613813 777704247 719619475 940078953 263001215 419959121 73070396 203714126 816219846 909425047 700275652 797403443 691942317 733655853 568891385 926503792 100604797 626532662 483835595 568856913 637273099 733724229 298545969 960379424 43028912 785660441 433877999 884916131 126826923 790832826 282663758 974553909 52925401 285844021 7727436 654434439 130064365 869754948 257924193 402203987 182385462 636876422 756179347 924013962 561002398 574515950 372135377 926046147 473220046 957804532 12135138 922347794 242311082 395066808 415828849 634175220 337634595 942330674 446450491 805912068 798459884 968224378 919687666 970505011 229013168 315778874 736481715 879930966 952396708 990818271 883804470 992257801 990341680 991834010 623951333 986165579 651454078 689600337 31811620 302450095 78964402 603510166 372287076 596277910 512314965 851384290 739859490 841716235 40318352 196845481 947929296 948805191 784517201 862955242 42896255 338173347 101302682 363223306 665317544 901719269 66216301 429985768 150425310 929845004 219440349 942979092 72219957 770631903 971936757 993672031 457758240 760230739 152513033 194916650 124179723 788446537 306201888 392043408 287283815 774523607 199335590 252881700 328374842 390401108 221261128 802690095 549025690 635397882 457527924 661586080 376761124 850894374 141206622 225862453 7280289 708791610 267815578 724735208 237876743 713227974 117274332 584082460 93000606 203349147 31637677 469138373 539127085 855821596 987358456 997528855 142320561 870638952 213750739 259650545 498222459 642346576 891351465 948784471 958340462 965602945 139794825 725154767 495906651 644351962 707479712 779780381 694614241 901348101 154620440 177384312 927912456 967499965 686321929 701954302 451832512 521118669 343632679 732414188 515145727 819118717 74056651 346497704 466699757 735062370 708801362 825150550 248468139 442061094 6122671 523725906 821987876 822759821 439055862 954329866 247239295 990149607 805246935 864301754 948689004 987028085 45207659 693029599 77896422 871782197 971359983 975973449 303497744 660823674 122643438 757777828 156925231 478680910 524297097 598423836 789547838 943441343 872682448 985640101 964567874 978982127 875040328 878778534 7836563 922901972 154745199 562233537 746020990 815968420 60066616 160947664 708047450 863519094 149795927 826404024 95016334 569170582 955806612 990491554 381086848 772641297 158578661 756151574 740549177 860757706 813020100 958012930 778314387 848771538 519267680 601181790 731756494 829691390 784436435 923256705 314609337 576619501 24955105 616016897 683526308 763411992 331169153 725452323 216199055 732216435 871328112 883057161 791850516 941096555 423316822 507570216 685323254 944533360 264497280 697060351 799658390 921266345 753317806 990957299 468898430 629450968 641927172 664298448 728010380 779121169 379404891 395232212 112876902 854882193 481865429 794688989 433527014 480568073 333489151 410501746 896610193 965305769 347726410 705553166 625762575 784863649 781661828 981937047 737840482 935885334 632123555 764556245 595125452 655405620 370230910 966769383 955963796 963849092 441763979 721564131 691906224 772285608 454722722 639812192 154703023 321741095 149060370 867295275 921431783 992666115 14096224 279448658 385909013 807582349 852173885 853496641 562710125 639585291 427397237 911743200 39218218 796766997 995887468 998806643 429617718 594230927 689983685 858197419 799838346 960666735 361687307 838927231 791725066 921108757 980525487 981943791 188199978 260205254 873407594 985773741 704096146 965829582 28930172 370473702 603946573 886587948 263541720 430224239 397271497 561309500 908834417 951371394 80990896 983544997 421067292 927375344 679906250 891480864 505978774 727161459 29490058 425672822 413043814 455617126 605065941 923485059 279520300 626746566 171764356 588448448 605619907 980123913 864558706 934663988 160353897 872053083 919469853 984939763 747891497 949264427 857512821 945104050 790949601 945896911 3538437 591265083 391819385 840435071 201956013 629360148 275947362 523971178 270190117 683879749 994678381 996609550 131118683 588881263 329682584 678491320 401686318 467196783 32284607 109082829 315800328 480411645 276737855 990608097 920770507 995639571 592437361 724161574 727406050 996181000 551987678 683356070 609279976 840334574 460309854 559368221 113795772 704565722 467710049 686548312 630272098 809179525 692491699 746178365 542403391 991670814 592812845 782135426 285359754 931175339 265022673 828187432 770260040 820646579 487400569 751872124 700699659 933999514 621344056 886723733 503040440 530098569 662480604 881066004 443775571 700824983 112388685 190559822 126217800 412643070 256208524 271815773 541991673 679497640 745429313 753100620 816219500 892522696 478724246 815081686 544997264 735465400 742441850 961718205 883514769 993550666 228793571 462135070 16776139 270404346 427323929 433211761 381196341 388600416 707039710 751913728 747942916 963697160 629768315 826435120 385905088 805088603 913033813 953669673 856644772 861678351 423429353 643212712 340051476 458367757 394895997 871884862 555050762 731074265 607818401 935368364 111135457 295174598 766349714 821576190 408652320 812726762 383699411 575060443 873363394 998131278 268976617 990896104 424140113 478982138 237805748 355066266 30703941 776608545 959572005 964881550 26526645 889329211 791833305 882880496 473148591 962568882 542619102 994132617 646219782 980046614 636267202 639751023 396312461 947584628 835024261 978585098 204898657 428180326 145910161 611519386 953599506 987764820 986960097 999105978 716255116 936928031 171698376 252927819 212399770 969667967 823254218 931926758 196455907 397021065 326425291 336804217 194171978 615056911 687806175 813534829 688723327 832375793 154779926 766337426 904173391 952804884 40998908 114753954 164699329 765542455 935653754 991436492 763299571 980811748 265139317 859010952 449654320 899275801 937209305 966984691 384750538 445558306 608797554 982230716 539035050 707537753 426542718 999129995 544904148 755037824 606411301 753331981 906892068 997590189 97308175 601116792 872078407 872746755 598153564 701149874 782328279 793391718 783722664 900245351 25906891 90215462 144522460 814865042 914067643 942988404 726317935 853576509 710543294 756645619 410760629 781329570 7052603 112865386 272175863 736542063 574953137 850011398 583470704 797911705 750913320 852524667 16004438 358675278 414569190 559400533 635939833 787542749 972002414 980224878 231986586 594356191 146688024 334787375 178717853 986189276 840849635 844379215 126118852 553634756 236191535 302761335 738251744 767091954 809611545 976880246 201795208 817445020 975239186 981175605 974259357 993627130 566633400 957803608 915546125 981460202 445552547 520685469 164236718 880224463 71622195 75968605 410961302 883931172 154431537 594612225 347689078 667225791 723682932 816840347 392090097 507041426 531474409 966184776 899771226 987636708 764011881 845666276 172078952 205770491 392085028 558291947 948025179 978201913 863741937 926727388 847374929 887689246 487140680 974505001 735765020 800076129 63052799 231049459 691389729 825867667 402412896 500376236 780857586 984521260 978842053 987480768 249809925 559143633 319496268 377761255 332735591 980605795 184704551 675267046 65270224 472451949 886085534 891560127 49122903 624849615 939801434 946883606 947059504 962720674 594568439 792210666 169259434 733338335 745601980 786765472 668098641 950975331 693723438 950614035 535046412 536920643 282434284 452730327 786519688 856717472 689255357 815331653 679822044 833921162 372377082 901655085 537583925 766482074 106570066 261663598 338695172 692372215 464535391 928225937 755770854 822075038 778341407 806793912 972369345 984330758 200754835 633562353 91962213 801531335 327076783 697100753 848740530 921959600 709741233 867016788 29605931 505623575 140205341 872656582 340742400 971154094 230929426 481605568 934222065 966835710 271178344 533064178 867598918 987881380 965153954 965943605 52809099 366006992 783776120 862444282 524933484 744905050 827285496 926633563 335108922 742925102 217321470 709087143 91922041 429113306 336769240 551974140 908400225 975960161 436563532 493882418 408694254 551778770 755518204 959789853 162596862 916532842 304957999 583083207 548334677 641370901 549238841 668402996 456078440 892622503 671186398 926667964 111729879 332021556 72593329 719874792 23759387 843642179 191456596 407873711 482155696 548437652 459297584 553949815 620269921 968915371 781008938 936380896 61477624 893042379 681978254 683142817 524749058 636977848 702201091 720497378 843562327 873920287 448772513 804521033 230860630 823641531 391742475 529748599 641796731 658618958 616233491 843122587 203849231 364493166 173996924 572639787 651954708 919926262 626102169 726617297 476970833 631623108 249828255 462950405 900714046 999915328 20845835 122542273 484557808 497205296 396980242 985315133 47989941 535507414 889717299 983102290 972010385 974384348 583625520 799981188 464473397 878982262 426344481 568374401 442909766 649376025 756156176 886658324 774245743 986044203 73389547 163824237 575749877 953084750 612905075 870372008 586467463 782425458 569311396 917366444 529401673 853780592 434698819 832228252 630345453 739547577 833598582 940248129 918261193 925778445 896746423 911422648 15337489 786691364 71042406 309930496 192452373 806680803 689323862 819705166 173258118 677579516 686642625 800606416 870412287 889051614 751994745 850052106 426925943 689345021 109446457 606862420 386650084 508396803 200296844 661533375 936171354 978084574 546393637 931848204 559851522 563725052 278735028 776232475 308307469 613346573 317994267 792687722 293532131 687278017 930916860 931359351 913609711 937619346 912316892 953324843 540402859 743325080 541312113 780143669 124856264 553028381 153829324 406829605 237649237 477942946 507974159 611105098 852040767 867157020 718851374 858135044 956095789 973584962 82495628 724948916 889017118 990514658 290044681 887278370 747040235 867952082 332258046 855024965 175016660 246923770 578980833 711865909 602907007 834937953 197134064 649091326 423599969 602088469 139863402 767673166 998443757 999972975 546788872 704934682 422955927 963840400 467865380 625725576 125896468 905725821 815208219 947716456 903862616 982121922 593711757 761529577 20599320 304135502 137024741 648314597 295531821 959141506 352624321 400014767 226161168 962666047 326660095 341649109 962399190 996843142 738940684 813988841 450579130 876105926 948481387 959150364 314890094 768471882 214952699 284695756 941997167 987952180 167441393 230145314 988221840 998226586 111723440 833790366 58615674 885528763 398015030 983352504 461436434 796719203 960391183 994309809 391706415 920259372 289857279 883636270 862394177 941625577 170150212 730809361 468849436 665910933 233780722 691656684 139324628 875011615 367417181 596696200 856635285 907179863 357058111 563665245 145644204 185076106 629658129 810765080 77272146 559633754 859656540 939034657 904094588 954663194 97117703 504201381 818741320 906235075 555466165 774197819 706943319 836258234 589452922 752756614 899860032 936895860 191878987 248166902 457966028 613276834 14007820 585010821 237771165 271521015 550890691 699792987 629639657 986038218 481986429 758646180 680696490 828777936 700591847 978313059 909181955 998997577 656434783 881028371 934084833 936589784 541154701 692534580 813686167 989269134 878685876 900962066 514408403 675223528 316267351 749474291 372925586 449821424 372054810 975664308 830236421 925961848 928198772 953963704 170913605 329974043 960576519 988764778 217243048 566859275 16633618 287832990 170918175 205559049 647101103 755192105 574874170 780401140 274071269 810258230 2163946 612298604 181477040 226319130 92050481 417934737 5935061 490641509 224666366 240615170 244859279 248542043 274575602 334710537 766501258 794891825 211474811 212542781 815687893 935268366 652159824 767755169 636733561 888212313 833874054 865695752 720354320 878516117 85952145 174648528 249248140 323458135 707034343 967014856 666446323 668596136 525995741 947651428 881903741 996264842 242325595 583453798 910981024 911538372 899921897 900152648 916107932 935377735 798000746 950951329 851884438 997292361 584909453 807073237 280402556 432526653 99267803 670669772 826497173 985612042 91010663 322996201 121236247 281204299 982578783 987618927 145082938 210001992 478428951 633557755 882332334 926652841 935811772 955096790 595774693 986914808 739404594 856103756 11415357 789637716 899198653 984757029 46407428 954854844 52671447 868736395 955547549 984622768 334990757 934435336 598617721 798342984 57617350 767696086 501842473 975835161 633255626 923089553 561234434 573915686 411027567 673166786 796748413 913891776 302149902 655039680 810327845 943330501 845132406 952768026 350791811 562509512 723986158 930745747 669586339 829737659 926755352 983007002 551099088 689180088 602085170 828361030 245402853 304356021 509355969 856433869 465930904 699764350 777364445 940939361 976192452 995530909 959473261 976598610 481233047 653651302 524811454 795483296 270553093 706477524 256603634 455326911 950224622 978637123 783702169 909634679 626873204 888640398 483706135 879207884 278129879 810740828 722874686 816365136 327238845 744671518 415531742 483537177 138895767 570296982 28110711 366454469 847998484 942424599 943316703 990212231 424053541 497907885 785316502 791515316 222234591 977488855 854188856 900055543 823024864 877176741 311159358 327398255 878240882 946607810 86620668 776639609 167172629 473654409 25902410 776260554 966639777 977825230 790533064 887868007 107636725 624113784 176237232 892673685 716746825 878779680 826080920 952208726 164554094 873458414 187816076 483633515 925019273 963363932 489146363 769949272 58917364 913264566 978003553 981450570 523655717 934766784 487129188 522049768 527990889 858219591 875543249 909429209 62382659 611938691 236419299 349781422 714839071 770949023 453639182 801526617 426328687 753772987 256205443 939753117 908024501 974420934 735811675 973512290 97026282 586256119 462700738 850676778 639173782 655116542 233704709 585096379 759265312 849813965 259449366 977338934 969207315 974450169 271728615 833539420 677948299 791968533 879004164 986221300 173029907 741565892 448361574 939378559 735370798 955915584 91662621 391973872 758414849 893864145 587528923 777236310 564809570 750029712 476192111 589434231 838980483 844417434 48623679 559809387 833634247 979288649 672410223 940536323 964593829 989729859 730117592 981033068 495461137 683047125 567144856 739236222 556767519 912131031 103634700 485060651 590019852 688464046 564578045 589219311 146741917 830055789 884914225 897010607 484445796 570350442 223178483 813153447 359489082 639603555 319583462 988900507 63083737 396389913 414302412 673333645 322540653 905966097 827368796 873053229 593955842 664391669 648098073 948969120 42606025 118074365 280138861 440234332 619841041 690382178 640616673 848149529 97679334 675472857 513063974 656501959 696691147 807414526 476753117 988663852 380222950 742814190 713201776 731101584 210025795 527128042 532710316 620191758 91231354 867345599 715141754 901595446 432241669 695807087 722449198 744753070 774114216 971593755 245009263 486532941 654198274 723664169 784764205 829737310 248462283 561051974 763998086 925550434 42300335 914202686 75148140 313294032 64974616 339245583 400966838 970529303 261221142 883093652 233353313 301809765 914409429 944640720 491564357 886884378 827096432 856148523 485730944 645800994 507774393 925417998 918565414 973364099 17317482 290015850 889264 354344344 932083634 971899542 36783656 252918966 544327178 922685207 88092979 983334282 960702351 966427736 128423767 651902659 317967297 781124749 377860408 841257003 366018092 763069632 906242558 910129855 137833152 152753662 916391914 930867030 268169074 457442582 934116997 944605749 642845718 790108293 841711524 914197923 704845926 848471862 615091937 894414541 876764948 889666469 720629583 817432510 109691037 118618633 649632873 934381854 410092905 466530611 912679445 944603876 217036811 851899247 219685605 291239872 457167331 998800396 978631826 997223600 872673466 921386090 549679937 587321624 700095454 868896307 878559794 993971443 953248457 972111100 725799933 745155414 408755253 512312767 270111313 940699397 706225686 866000670 596618450 943130675 457510843 725903459 64748912 244053339 862646319 865214439 343523052 744980887 359795090 895624912 791105857 822094191 310590894 632460434 699052961 868942772 860539723 892336641 94723539 371110396 952669500 952840015 970764793 998143233 108714149 624249743 571905295 853569466 942190523 976670010 178745654 521497503 25484066 693168129 121848064 509213802 481120140 600313845 229408622 259362352 916947401 935424041 87615961 834417490 752492249 991367324 154420267 439462868 187102114 978406021 657348590 904652327 147855362 760931966 616651132 853222241 456095359 493693131 453255307 802410334 333494538 448839967 546664087 876277836 237858445 750357416 645547938 852990343 838061586 883749286 126655984 919884720 165996995 207975053 889795406 945485477 82627062 825639288 252952971 576211623 503629580 624552008 626376520 857482993 531699203 798691971 716562474 810193893 463709828 496760723 485443045 845728235 900211322 986764167 622527678 981617240 139930345 847750233 629883522 817236569 474196774 786227739 754433447 995200586 305332301 840877498 845232612 878144206 658575600 763234309 437422389 922417351 628377025 852399378 433099984 463800882 668097294 950683391 155206607 972583154 310822999 757216273 487747808 618157474 312886834 950635571 186545571 597979126 633390921 733518294 985623944 992762972 247667667 742251740 751049202 888195122 134686977 787938345 784190110 840546334 652865580 948418920 901960095 917347091 46449777 952715356 856449436 969670954 710234978 985969159 73061912 115493533 397149681 414073300 939121448 945539569 787647516 916389334 929652214 988436208 498505159 521445602 418872154 710559652 886955818 932584978 784115126 992957300 254770064 413424659 884475596 978131304 258493667 537216570 784023138 791564999 273845096 583506363 779483430 977970339 49323195 210727195 850572447 948302053 411388808 714113559 36594696 779458259 13069899 136655823 214039758 366351775 649746515 944652160 654322319 892015584 213955910 432524792 309705168 409868751 246709898 807299291 94963559 438704587 314639169 864340257 812605851 947621592 800109218 848818763 455908612 757621077 194343918 239521818 916897704 998155171 906362298 931957636 167355187 446506255 322913995 957910379 559069484 685424943 992411437 994155944 775418315 921039845 284196235 825986524 300678321 329218901 225238171 701801922 302285191 386446164 269163822 757330777 605003757 643456943 319951094 924118628 461315003 893562414 53704496 888618161 96733222 642598956 421882759 696144903 939233789 978078118 996274908 999162161 578662898 876387465 835583992 905104002 290187776 303842310 223375083 523396396 954130830 999434305 933578577 962883357 662305792 724679662 775054131 932074201 380556670 985340221 134981527 858682145 359172068 969305840 111667899 765481449 51648027 632479982 359872036 685053397 63675290 678564704 765603722 777852386 353635257 531306271 291307360 339816831 938169605 971973059 139982738 504607390 931341391 952717648 445415018 619055754 569607195 636220939 769862883 777389715 887977211 969602884 755294689 756087374 680995261 714310896 155855115 896820674 521895955 622087369 358099629 820542149 372830484 429417053 686400148 967279260 733414620 746598247 498486977 608704853 841339575 932498656 71655941 582218690 333424326 626261013 685719485 780955455 620135456 733162588 701448181 976090227 824729163 926738045 288492188 622654389 21760548 607409661 399646079 646167755 288373269 486835962 631353840 653202581 359139976 367155485 452670004 600339351 468170799 872674569 349407669 452593255 468678017 686812130 770654139 973848110 162285207 964424859 17147574 139641509 493819681 925818417 776330973 932265433 71577539 451682952 335496465 811499530 840100918 950258250 310212173 700425421 86239590 526039052 366723927 464780262 975010286 991857213 170885809 301318129 801326438 839614581 40911395 600279321 60561401 613939758 426035590 549476417 276670864 538212367 757656152 954579786 633093897 721498182 26833970 147239395 380645855 704577770 361512658 581306169 313684184 742333194 807768410 884876064 760891853 806044447 25771367 327895119 899775223 934989458 519533209 620468746 14471748 244564097 830567730 980084568 95785982 165550434 44767746 113351389 707191641 947969166 968489692 988109619 514971513 954318333 991354038 995063931 713526994 835683656 780877075 876543210 702001430 764299486 438118998 816187307 834923218 859093597 853671191 894271705 602674756 740332568 545598787 816854330 451468569 973390823 765837390 878880673 463375174 707956139 200091645 863064186 589465327 659383743 732911431 770905692 513720401 878247561 423019570 687964046 463185102 513039557 538193149 724501531 926571633 963577261 885200704 973595613 539920142 809698868 184276507 530595488 579058862 879058111 819543916 829633346 640222384 733795009 748228861 816345752 215519212 712347755 304557172 577600066 143014856 278723353 950530470 986882572 895064581 955153839 429845674 606158199 119967835 700718762 272394917 862109655 104039246 841235710 752020808 811798964 103798633 283307553 628936396 799722698 131661692 684006646 690402438 943801711 980692801 985169284 614449719 614929783 301349401 362638744 128161352 227666135 807281879 986296175 623817242 716123899 950228749 968027749 539838469 833082029 555132132 809672384 232306937 733274555 528239506 895540164 527182511 787875934 84104919 120084246 952247383 999903625 707965043 818335645 402641254 982871101 420101130 792054975 703293370 917468402 192491321 842897421 30051029 825383053 403535438 727276207 329744816 555951380 527106893 900051111 739274331 930550963 278148531 653707671 325858233 738624840 954392547 961389633 230484185 413944279 802777304 874119944 352831260 498729672 625257539 755728647 81422427 513324695 191452637 553568618 610223610 922093623 853439442 884152023 98563779 705269482 547954941 744850534 931910510 964446592 155627071 820731881 247353635 907535758 481735291 653425188 982709068 995018246 872009358 943086616 416465561 522246524 967440549 995988464 833246431 885721811 34268953 496325547 889329836 904549158 476558771 910559197 997163112 998115787 474847412 995637998 564755962 832003506 995024560 997710282 477468773 835492237 65756388 207861994 316725012 745113208 673608795 822887873 159674315 286252023 241175796 667804316 552767951 600699873 648182208 759143941 581353534 888216068 678884283 937450185 651311685 937741153 573964886 787303130 42960120 105200591 359216051 726622924 909923665 946010560 346191930 758801367 363500763 978123344 534869 404648749 226439255 890203190 505405959 612272985 212407462 326852437 245225806 328956042 633870593 772689335 62923833 399802234 890699803 950875360 349281365 928600648 554836167 860658929 295101101 653988176 437740382 576278947 147714854 793341720 966148212 985405308 424641293 689679673 733416103 744259460 272336402 704107019 306926012 636460869 489033362 499005183 635300485 749980951 313288238 932965373 987265723 993629068 800170498 979033106 712769573 738398154 618452170 989028709 442133306 477014711 61791996 848185146 988798167 992197900 90599717 417839127 327069044 813618808 298290668 445959710 736907037 936129775 106495866 619846207 957422491 993053995 118628179 629900604 131352722 720924457 6194749 215118777 901204637 928950802 113585679 672372962 18440815 55410304 64972565 847474418 451513067 633441839 724509678 900357496 864892881 889181592 74925082 398271749 353962390 382213701 925830166 944902337 227162306 607769963 282392875 646733622 103757863 838420984 878695239 942829501 150862165 866377529 571053705 933425949 330894575 766272048 38143841 643126479 669733100 791001735 462731763 889052426 242525677 699370267 215990835 504184605 849355769 995701838 46756924 482553324 364249831 918118388 546122330 960361373 69856297 737053248 926770831 988350954 642999483 901035029 196420922 650024819 182726865 651593591 794592065 930195045 214670946 364503204 948155385 987122450 769371846 886231103 143080446 358268043 548456664 680904374 80809095 417801386 299319201 796414751 454930383 786525776 33347430 648512066 841272682 890317299 481074108 650604669 33326359 315944741 277398359 308466986 529253084 794429882 385137392 702926906 302524827 311101937 524555264 907536225 519782879 681920785 654365780 826185056 74787175 440399305 303405510 939426185 906424915 985269305 721952999 889711007 58082396 129478302 166647024 634103071 89053719 809240243 221216968 689522297 507924667 870261363 504635252 820058580 387847111 406162430 137765513 935304937 417268690 594124375 177029804 963034354 920582204 972630280 723362818 896454275 138664912 392574191 677470838 820102942 531480654 533130522 940221392 956433753 877220529 951213203 821104270 967858188 603432950 691933669 656887715 847975333 656573436 970515961 629640249 958812394 494015472 758828148 865656518 871192008 139490514 543258278 897660999 998654793 963557611 985738837 390913964 932405133 562544021 892505716 25073113 419779390 772983030 805857062 640293450 917150402 152268438 288701694 285331496 948837757 380225235 509565241 974180769 980510989 45710996 176976614 605780708 955643984 473080922 572961425 849691500 973651920 430939576 871702383 65702411 993480933 638541039 792588444 973112674 983852354 976813337 990979102 894688856 902796114 232850279 517133057 223476884 662503282 667237997 848614034 583867275 767330081 294005537 301644898 899802136 977457422 754736087 816929530 649698914 927182296 924032119 986247165 668159320 846736783 404846060 564514604 632418398 934491655 857766833 932213665 310074657 875121255 933467924 982609769 591315114 752826180 135525425 223089095 343547201 406417549 151411693 170993743 860364081 969067621 742030015 758253251 79871253 299888870 937431288 998459378 560384781 703503411 479007054 903442383 542777103 724755141 787605273 851049219 677949334 713381487 164710680 245030309 271682395 548308998 656248773 771902066 743221619 971721871 742533934 763927807 249820569 258296299 568254417 606658726 122378585 312212911 163070640 830131745 975330424 979034461 96589417 959296720 754261758 966414927 331334608 844712744 517056096 837738752 999446680 999531058 696889413 876159475 190049184 647301555 704283649 798356435 667424424 767856744 4000128 577219354 153426009 430191693 251362730 260979293 973091427 982191107 815158367 963683681 795476348 923269861 262091408 518024163 92667811 944180227 609790636 997072931 992326727 996689113 659721398 961449016 828638654 829926104 52666410 755474576 573926629 606026269 65858665 286154547 382468652 460445510 503946095 832671244 175599102 777842105 952162069 966127840 345262840 579516284 278680816 960465173 338040649 495775347 636699336 969192635 443640739 640792046 685979279 900217494 382364079 941575697 749199253 775165337 479432290 554714328 416208228 614208875 335553014 443608315 427973166 745376089 21919472 478614657 665402019 899090276 588295100 842248641 365121668 403529895 403301002 854378218 213091276 538256998 43372614 150346655 72554077 726630989 575253805 910114118 826990309 902725139 659883762 805660278 676397532 784160405 538874752 859518446 173190327 905528395 805406490 836405573 41765159 192823102 85416865 653123087 525633438 765359609 76657372 455440089 642360770 952199297 842616788 978915754 325217746 374707415 769964340 887648727 644536011 772276808 994155758 999454242 95797742 497785262 805988783 976134007 211758605 714773921 960374259 997868185 829772538 999571150 324344422 543186587 721278792 860484867 399166951 916509356 233584967 764458928 987354384 990685818 961225734 992548088 85343932 625786517 954524736 998578917 188879679 352261768 166823152 695040925 692817855 832515641 136581598 441613704 608018043 963246597 588350915 881770346 393586531 624151246 419346750 938349100 782675052 920903247 23837954 130950571 281563034 555503428 562908574 942720062 199159532 632385466 454381632 684445258 598769542 963005722 254648475 711618650 880404051 905388441 808701869 885752507 240179886 740976330 944365143 979131945 883354407 985631764 522855148 893542968 173767922 647007564 853169105 898380201 643075943 778611874 628124803 839659579 152297716 781241962 407631770 436703071 781307331 895807556 145089046 350582870 62744269 335650974 901764493 929948502 839539789 898073328 587231852 935123358 634005625 759491307 85405457 331856172 30151839 42997850 519065921 974623436 621342755 823347938 311160792 584093723 447867839 685609098 30216770 373330060 418279823 748791812 631708465 932219770 813579398 906216059 273082401 666143071 147389171 552393897 520706244 578679506 215679464 502552873 140540284 235832534 122304234 850744732 219544496 301787733 694580180 945218630 246732781 770582899 678882366 913020635 825392424 826024565 798950813 970269388 229345154 309977113 873086214 881662071 35905470 490403130 464438596 474753149 71428020 525337889 414490005 877115646 393069845 475155730 350599020 389695518 132060682 641671490 657811260 742547891 254360109 326489442 93439006 603733124 347877183 391277265 812082818 902120214 23522119 59714518 866258351 878438088 460919230 717571410 844486419 909194309 278211671 602039538 69856901 624102372 771623316 998103584 672412530 890808552 570555973 863559109 300605920 819580877 197934054 764069215 611400083 659751308 497414115 750210872 369649168 601779670 761519418 955205180 857072389 945253985 182315268 641109696 93858924 476800515 949769419 951546477 869362553 988459856 187356928 382720207 854806421 964096557 708755326 877229838 758570966 767607589 633851561 840772916 150927036 384068071 701109120 949913955 824273858 883613362 915942566 929555753 163853333 827844897 874091371 949858693 449692857 454977167 878375867 955748922 633673350 654264472 502355567 673004870 162183022 742980490 945338132 991303231 374616547 651699764 715240671 962138113 202551454 504356022 310007783 885159549 782235419 808648784 659492275 833544518 707126474 891000713 954611152 977150408 665209014 977003084 373192025 598427168 435903807 859847678 828581766 853132783 752182839 767609743 350722853 588032169 642622128 753757058 241395120 439026239 216950253 245971302 372596185 966927348 245356195 765234166 416044420 546505811 625746739 830959676 150686471 527351019 257810372 460937338 252600676 602106861 493363758 494001348 142145551 871126370 298173355 665566142 186248612 748851854 773808155 951350216 796586693 966468896 573038865 717755814 263755167 560689183 833491153 883113012 95122232 509065381 47651131 527237125 704679234 820282102 92116844 485352813 471842653 754865325 218268750 881090860 889365060 915344505 289605532 313430137 93197485 413436204 326191221 762438252 641618550 734699409 888901050 907109013 381829883 708756890 546818395 882135858 293903322 833643688 44601228 235953791 872053562 905246670 474005378 486480346 650646 65471959 618140060 687299614 50614916 175655591 562730143 597719025 722365479 767604323 574143448 670161483 183959766 976348126 214050150 258664243 615296784 623040860 818587536 967091194 557183887 678162261 794117638 906321650 431544720 469711293 365896888 560736228 30793024 453448020 614853338 781278688 914718580 947492997 227639474 704746845 64137575 209770207 42507346 587654421 81365455 752736863 608232589 800734389 911317934 956423726 12362954 35536829 977325650 995490399 711684971 877312005 33597732 643609793 385128285 718404558 432578036 900122823 986539255 995538226 915904831 980429008 456821565 983022443 841012246 911787617 750306166 966796526 9201634 704264515 572927481 988367719 651248910 709797586 241710360 511531288 420521441 810129717 611240097 663852396 194179157 474890169 490879018 695128762 573860943 771211781 362943284 558248304 313103141 378919838 950657663 965388042 130744484 242337160 65178652 134447403 838145737 939464603 56048625 539895502 385682616 401593875 250307693 960657243 959849713 999280615 564063036 568677953 875424811 958314134 565576008 910582786 568461903 973748154 185051189 222500579 894037495 913560774 263547597 883932935 783273466 813767377 751336165 941957695 861533375 911286825 117803079 209445441 896708667 999893777 303321270 969999209 249300531 320038064 430690573 777829640 648787614 999416857 332563625 905551497 825597817 942199845 398889304 542956622 906176256 970066632 354174661 448925750 805323188 963491220 718623457 795326866 405943671 770428180 89350736 465317079 689015325 812432806 731364776 939735062 286226554 834515559 462188207 527288668 226334685 732315062 100730915 748397130 986013329 995054981 447707625 517278473 224583812 534398835 413988682 665529540 334676499 599874641 400231489 600630147 102121673 328048194 775231284 960817878 99365288 180829290 997411237 999766904 415210258 429096468 599999365 857622764 219482912 642757030 7735711 972010996 475316178 713642869 513245924 862542708 782466300 954927362 199597110 234868963 809741137 890503375 434837865 861330446 978142753 990998219 746998565 977066444 631411545 704885050 765526457 809735779 878774352 918652959 696621442 808810189 365266511 694837574 353962676 898439909 520206915 684657534 300935703 954157557 95746796 274124429 651814135 654639532 105946356 928433013 937855976 983036619 883892850 953751950 468806677 905925116 916122278 997153701 912905990 940450934 139984253 358461562 361610251 552998520 777456884 797008757 836904168 958193453 494982953 987032944 987268525 997787613 540130108 755200506 194652095 670589755 529256027 816880676 93593095 130860369 905226591 975789261 573417111 649159373 651826444 677258360 742859105 967088987 447925462 848403190 119061354 414913861 944858627 969828983 247719667 479736403 676081827 800420392 369383360 674905637 189132199 755959779 866586033 975734983 591511610 592956193 219493294 268650035 989672453 993816215 760414261 960268919 962089005 964454975 787275301 849681987 924340458 940054170 310303066 521789184 864982510 959775338 337900055 989280614 683533278 836264978 187359061 227368363 369037882 711201668 464289770 857177236 942963362 983756090 587609689 945295271 854073844 908102014 923953695 980694511 7263750 797648150 57726523 365898539 800544207 812674551 701961125 704249491 945709964 951379693 687110596 895685267 995403456 995572579 343582165 741642790 599071497 620641482 797939333 871100194 2671306 309427278 402617991 457205084 73106306 807454005 301675191 737814467 508691731 873599508 55543090 750718490 630490877 784688617 860976616 874353545 890221152 993620290 261690740 834911218 79744664 230346013 579973629 826138629 463879663 955378975 915188348 929347764 847621663 856430415 569498362 652867649 647277497 812094314 368914666 372438881 542077405 882667999 70566415 754190292 183328778 328845732 491972043 973123846 309127422 776197770 235497752 911850109 299570540 692333680 767658351 856938255 287382756 606024510 535995982 850961947 789813162 918119013 355374076 371513308 527791944 907208356 971943904 987333507 850621690 884657293 544605878 834005220 453456482 572549811 975771883 984667412 549883689 607298863 648128863 946485054 295291923 625491779 877775671 943784317 573635046 871152469 198339725 753901902 450095404 817964754 915602721 954944989 656949841 857803043 445044513 668245995 140376142 675443879 191124751 235240253 775579447 781187846 754882963 912351319 933126838 998858748 729024616 979343334 47632509 657980408 555807467 767867012 514692203 908129684 654787501 935687906 837374649 906528889 772741199 909942194 818090718 935604354 868101939 928428977 503291248 927035016 77524856 831577801 38819547 720827703 282550864 602067205 636746940 998197829 418815891 797080306 568818949 887253155 874369246 936139933 896960425 920150652 783882538 856643122 911290216 996335155 212906077 230003246 874705001 986965667 317639203 882159779 495757278 691651089 845954394 945428500 882884863 991921002 851209214 894020553 96930696 892499771 94912408 323068349 157476011 830095885 788381266 808910060 223832489 238602154 442012134 757189831 163505267 449252400 807820382 957455569 670025399 821589223 901415903 985612030 174737995 470833647 173740045 280198059 442439268 746835533 834428752 968731459 189312200 776879365 683431270 704925198 183760180 756943297 825843863 900873897 487720873 495882204 3622453 900189106 13951442 386419479 424591357 584163765 557326819 620457189 985867506 989261448 259042817 953122730 432936478 591220695 398858725 649295301 102489769 247900505 456026430 937613863 839959618 857146395 349686995 838561134 650213175 817910625 52289947 132645323 624816764 896049668 739685728 907282962 160866734 840024312 939973758 951416057 796052383 877981874 477723893 976487431 119444979 238651495 289712668 684273574 783986731 901991564 919931048 961362245 316335640 528276621 269797580 470591999 277733521 942003397 255904676 489421272 704701891 758290072 525328841 817613645 663185218 913876639 234183607 569156710 813038596 814420447 513025605 758220854 74661099 689466193 459757844 853316791 638145278 936701255 438186589 501719949 819665780 827534714 874945101 972033799 270422477 619295445 383973947 812692436 998378627 999616190 707032438 872890582 400838701 880943682 954378096 974417662 615448153 740644295 14596159 864179446 131560319 997698207 122361987 212475751 498484282 605256574 898023708 906466355 913035783 943837783 14517078 650526494 753352384 879418968 651981162 969811420 499049827 660511684 203999183 977783089 356849594 366886750 291971743 981752969 924125871 969581950 283164682 620067733 130769844 380595985 351404287 578152760 280137916 297493724 524967942 612013422 845323247 945654497 618123340 935010305 164485328 950963039 724419327 998314069 696298324 763163766 589029784 752165092 832408005 937227731 439158112 663307337 674702808 855597473 670815024 754500105 771945460 885476217 156707672 522237965 607412191 728572123 599338142 856769991 968011622 974607180 968125580 972470544 252453271 457280376 411808508 693308659 921494690 944385313 141319884 205478414 844514107 853554779 82579659 801778858 734791367 884459447 26856130 229734800 232400832 273624316 151931659 956267940 588788749 796752453 504546649 914274395 623803418 898649314 500474381 702609932 646666826 669788733 802144586 850732746 25890289 60114805 849065781 923090615 196395713 674168533 975139162 998510337 692432667 879241581 673566004 961218833 352390388 401123808 902041097 952570974 466279607 590055823 605879875 921778045 779601097 793160851 87649616 102826175 872939601 979929019 594953180 624676372 808179387 993319140 181057629 957695763 186963348 858962963 383355239 466499720 665692907 966540099 872555864 975969688 524410435 880492024 333867377 777577920 407928146 418592803 815028330 919647783 320725634 660804033 850023793 930086730 559961283 774584879 304009324 911041319 816563059 975469448 135803021 159157162 22136572 819438430 48645477 590425742 171646935 575173081 39565413 218986343 472309344 962323275 740011151 829504943 78435218 958697445 794435812 990230218 166035506 449283180 270408219 780906292 202850399 618696871 674921012 744983411 999378192 999910169 273949666 857586344 738587755 827164924 719139418 885596141 522893687 724909308 865042307 902380877 99310878 295200961 589098945 881189600 537062520 937959983 776397899 899598164 620362174 868325573 200139817 647691663 595611334 675073885 432942172 630564661 425346452 764756155 517154144 898351559 393968224 429248781 241074107 933608858 660240212 699324020 629537177 636975808 343711111 692146434 842764578 999327809 446944544 813765679 728065758 813239090 221238888 365792516 557309787 737718594 426402762 756579741 614380309 778799880 59643569 637918935 93189016 553408166 612567913 964666157 5541638 542745671 855546386 985904826 675991204 761856373 286809145 923442560 149651676 271782975 845366150 973430816 437518076 462103796 808507937 880307840 672178078 846547780 467907949 883552169 79267577 494546096 366664008 654661534 754217523 767589330 782758292 789834843 959300212 970204513 417517868 715471850 981462808 992096742 715661531 896502226 448706377 950038585 642191006 907665033 260340437 262878868 345304563 609405864 245419943 528788451 647258212 937977632 430778923 950201288 777074366 908072297 66862806 971036200 636859559 830271644 284853891 449650215 833279323 966868993 770957287 827770981 166786327 897643959 599707019 655215002 49864075 99572685 182490273 852578399 222413295 826907529 949448106 993070183 533207315 812928535 888952296 918649493 507526861 692698116 28208248 790294293 985444889 997773362 825505092 858667145 267067728 916866563 120560549 596244879 827457147 973157458 379292921 877600697 276876658 771897454 990732761 998524994 337833941 700695860 560928829 803784299 176700403 500196215 898184101 981278581 545782147 739631334 289438915 707423350 548091213 994486147 575874640 794545764 277643688 647163807 970378452 979658529 743257832 786504926 570610916 810878782 808318133 929183153 842340097 889073760 282249766 846681748 208263389 874202987 829964573 947805039 834770583 989011138 817395663 979543849 59622623 616101931 610947043 747364966 599236020 920057414 560441623 606860094 54174649 320480330 752357082 857049222 463209910 541719123 196442313 427957940 695642255 973496762 842373977 878718066 263429734 355264301 683688613 769219271 233401600 843391817 184016622 212268451 235049882 654024867 486590429 618044489 698170436 818737664 368709792 649325173 143297376 490457312 967251342 969809336 344025269 726905828 962402899 996768045 194968313 801354036 440858223 647399722 619236792 710980721 239677770 395342943 824642250 953812823 437427309 654715132 787781456 979442709 704923256 981303566 794773400 907626081 431447741 927912827 172547350 375853430 250809123 605492156 958725969 998906899 789177685 996724522 317459715 698532577 920555855 952755410 431546766 512888864 519950949 620268363 775903548 843459221 348808336 550180598 319264769 937268114 807738899 998500985 130767466 804993210 498449196 998692193 614591275 728569128 928850296 993534477 89582406 809263182 463170777 604806525 908393549 933728894 982933529 987578940 399986565 769637809 255776231 556996165 324704612 879760651 381220232 878628892 207396901 592242038 755955884 972451307 388919728 739559653 623179866 764218814 110807020 362335508 16760636 525153750 990342912 990533970 449486132 555601872 109545033 941467761 602745137 782384247 390937393 667632342 854137782 866017055 520583200 711656739 690990611 842705123 844783008 871181499 904002026 927331681 759498949 817156363 220461290 252684802 161303765 651891996 170281710 419486192 556066180 678873143 257826999 258470538 920078204 986503213 706483634 920108848 407027589 498465909 235191412 482947772 451920155 614793525 731810083 943143176 549469156 979641469 39244545 344462473 339867481 435434498 164022405 582532329 474314931 628572483 199404804 743890197 121404739 382107373 861625159 932517047 408150800 878859762 7409812 95274661 824121255 880134001 448330899 670281381 275678951 909112314 365876267 929986140 844510451 866767825 29309389 160899856 610449366 972350692 141992854 494688896 42179319 783283127 797586631 858704717 648737909 769994287 894110031 968003434 538196723 868348426 399110378 831607105 533947346 857789159 662696953 725588951 491421318 984431494 570501548 656014136 79820736 621966897 295234089 702894236 255251987 437154280 407628189 431040946 21120913 520257880 742083140 841279161 228382404 854149603 923224869 984077399 612407395 903439480 838661662 931898086 947274833 951480843 780631096 891381862 932141453 953804143 925391114 999106816 246911019 579750822 776584885 864838528 627502924 893789225 451204175 855757566 648002703 904258284 511600890 944476637 613650363 726117889 188226193 825550396 815345448 995914443 899607397 983494061 326222563 672873510 230982351 853941447 574936146 918109170 173187416 328211370 328536396 977099557 640320697 659539578 601379627 639987906 515421644 682702429 810474752 936049125 110912159 964043926 383310611 683642123 752146704 772929060 133136129 865238866 200111436 995210615 805966233 988081620 634972666 997032539 925774047 988558976 369566937 751378723 551444903 958720623 412365604 813340956 770140134 849905271 886129649 947259517 638326891 817246332 247494743 644968941 72470101 987760190 780437439 930910807 7282067 125879757 986141282 994819880 343552963 463404309 76166830 515068470 413452429 481430492 767474126 832543559 723520176 795975203 576091325 663673243 372818390 770460608 857528771 990117792 477037191 558592351 168394390 657825012 949565083 950299595 387503155 482362456 738024299 941877973 573692801 811687152 748309119 866498608 14486278 376961162 909879063 996811152 681742457 765882921 147487519 928823066 447874841 906989168 889842247 899747411 388534240 900122062 179271439 824617777 161567273 318064562 630803375 934967113 894421725 908470764 802906170 988468824 568382949 634896033 963156337 988920871 429301556 552752025 308122597 509765414 167384985 315132234 134784729 879239390 121986645 569181606 595125094 711430328 492942377 622522089 617534571 691280687 538022682 786918085 831287106 940361551 757463677 972959575 181533242 865290268 468959272 682030300 299584612 554898643 477555773 586066151 399049456 613764692 461913196 766730854 241624148 849258884 239902861 656921947 600472932 992106669 146778059 406646150 67197748 291725066 951780620 993902238 991167687 999055299 559199685 880679020 652393852 952250115 135269263 178263822 568945771 930027282 209742417 761272156 512016245 946835891 874801160 918340070 368573194 574022465 689863018 865719335 520097147 716698516 759732871 797540204 606038679 955402365 664679506 873223811 791538071 798092757 541286371 982671915 639815900 975969655 678576119 901269616 167112833 437026011 759843277 869324913 301840123 852192080 707261669 746844793 466088441 537408764 112326090 363562231 414831624 758723167 431632116 915180109 731478565 940781000 13929063 161615756 424190198 859145853 854270883 911886066 906179830 990229659 525162409 885693530 941097989 957813129 844857066 845752132 934061014 983373612 850551497 986618476 181926540 396166965 141664961 802056027 667640174 810909901 24605729 83505475 223244961 543221361 247620054 395771524 725400210 772732059 490746969 630482918 945324761 948249647 671437542 903356576 100301342 863114911 439873768 757045760 809274583 939818193 320155977 460498847 340708044 546452377 117460980 817073762 339694369 987084468 528995220 950882813 661092276 985592139 386004031 485581405 673030739 827302585 435164872 919511234 756726755 852373030 605812001 994585888 784617311 791240863 919120571 926206573 820191305 823817726 630591326 919288047 655827585 937416883 643111420 722038007 199405472 326787975 680650755 730937626 291788579 902579605 103604929 810316949 595910738 993019068 258854327 633718411 357175459 577817595 418630238 829370542 679418379 710316604 929400624 966744247 960712707 973292770 453727832 761257902 745299492 769140704 508121936 881268536 487150906 686984700 280190705 581323489 662385994 897166703 256799048 841175279 199674320 887583993 131329296 898505389 797280838 925280333 389519117 390475987 29398694 404622048 562013700 870590149 957830722 971623240 348869508 621916665 325628878 663795729 518551984 939433607 647789883 793013686 257198304 695704432 923410012 947536824 520573021 543150245 798105989 818348420 316203776 802135616 161442634 546058965 638783468 846928827 932264188 973463038 211021772 862682875 191093717 278962618 885809470 934889131 982036227 997868204 59747819 170740675 158523028 741886872 413360199 481557840 550943046 930156779 710366550 827413873 593343386 696764102 130921340 619187761 384418355 602610791 766121597 820926188 403133564 954389533 454797155 729576217 623658884 701331736 275947035 526605030 118822699 398058952 975382202 981897887 644480407 679708495 515837404 862914854 764324575 771346353 395871267 502446615 414243474 470497199 205801806 680517940 198818292 537328003 5009276 409028069 770229189 799212448 792629828 903307553 906969774 939501245 415984813 749784664 366402877 853793472 794782549 913034752 699349518 823362917 393734161 395995547 784022455 810820393 870819674 872454036 8052489 838381465 575036208 945881648 740013465 902223141 623456328 870873687 463095070 804724525 304537518 739775168 319337740 965963962 79486093 373579139 398309395 621935286 695515041 730836377 725362770 890382845 173311454 441508298 75759753 950620414 678356062 951161392 96533617 522933889 278651607 381578091 431287789 449571422 686187286 841235939 665159357 759104137 475091766 804457516 818931135 862794222 403180202 509447704 273527466 539344566 118356482 436331821 268884847 564046580 649019724 770912638 411508489 545942161 958971294 996019993 659251501 682624909 739604102 925779559 310566465 370681089 6439965 421831453 47428741 502549068 386475616 515278820 274227174 924088533 549571926 960891768 125787299 437595132 809263177 998092017 288694502 430063844 117008478 360841419 844072316 896116741 587499070 985726917 227247931 435021074 796132919 889263794 487439398 986920144 995097041 995309750 9608055 674086065 540895716 988526900 29572159 82629931 370443711 773472292 270767175 728948519 530398360 775898279 586233562 932804497 87043006 296147554 201382892 865569979 594640420 936526153 727437315 801909195 424374817 758244479 186238395 859862703 625061570 810540430 617322374 656393464 930884054 991646101 586569658 839635298 29880012 931880028 142298156 251290830 506364465 780603322 227959782 466765096 532214242 690269997 300210335 980592525 313363151 340033538 350148636 382743375 191679544 582208165 334403248 959328328 14141841 890163121 406552279 759508387 713549931 956965609 793726124 848164711 625586514 941040147 21526169 78601973 923500230 990047842 916400069 970992060 26577088 533511048 832310555 890680329 500287519 752984035 113232357 872228772 393627482 972403444 785977632 930342038 619946703 767895344 563203509 614140617 128997571 875100144 120648587 769323275 491996649 981039767 502850714 988968726 646840707 901856597 119489129 603871189 200390651 905638854 73864764 274952286 957487604 960651724 483791506 814744649 936538063 974289388 277686836 615115644 694415718 945867021 74071990 818388801 281257145 606571496 948901549 962727262 889841216 959091439 891254436 931476324 252207497 955932009 631605645 887046868 439121609 915546990 424446824 698701846 768379922 801895098 688729073 995019828 250110267 927898913 729139599 992484113 471485407 808856367 238348893 735452988 663630674 841747916 151374867 585516925 868380713 887230522 890441275 908966908 603416950 889425123 330784710 571022798 492941905 719960412 730075108 745423890 860876549 873779508 546227964 863774311 708307320 917900732 346979231 915750920 274296900 666079009 427118198 665805783 595789702 688216312 859928910 925448927 242092986 527680271 111596978 786618183 85330353 878831875 667574749 866007155 336900958 378171541 804601891 859393359 197109525 832151714 688583926 873531867 614301818 908563790 542342883 612253533 96135081 789223440 45235727 167398640 786310232 957422950 768725579 906438296 611234745 733747694 320406333 414005091 278694165 983395417 627111733 715923107 279532650 456177718 899116911 903069505 680505888 943526797 498497993 830794551 696242388 761180804 328882646 811436032 225142259 570339113 731627986 847930352 972813344 987799969 935939164 974152135 354940664 903724009 593542419 736854495 905197605 924060416 95722414 780471740 350678736 909857812 719715442 929850064 168617364 210484836 883306499 989795430 199263184 809343452 965543606 982540233 670849962 989003890 435733827 519064998 817406698 965210213 570642854 746962036 315592747 622055414 926788346 951946211 377259761 945607995 183339669 791989822 410121105 605581478 612524165 713039552 366015894 582869387 684929192 840708569 866448669 888261964 565235084 850866692 580337093 814332770 257335854 261723206 97194940 202020094 654924038 714397829 899184618 937460590 283907707 535574995 608911313 999896773 339180395 507061134 406806752 438536183 400879091 739717197 555603809 776479055 982767762 988623426 133552055 915611388 941175239 997338112 933945543 993372412 137788458 882632225 778100794 925405248 374460314 735038249 852940162 987715457 402499949 441685448 693055126 979502898 96583652 248685819 614219214 619084594 219905075 315783084 419634841 760125548 624776177 770389036 896485512 938581002 792201822 867930797 217329258 854127227 435718072 516371526 154759133 333704270 421446051 643616713 301352154 711728685 836127296 997963483 637067416 805872600 537920089 946864787 769567171 820685876 377344901 694267308 376343018 564990140 325399232 352797500 357188208 915183300 924187561 930698550 32599055 108641374 699210428 731130503 420836736 609040900 945769416 967838956 288469276 793883524 981803407 996528801 569671821 734746123 75815343 459794865 714014589 848932414 516237136 922831473 477060127 552152062 950902698 995643525 250089324 300980858 911431630 984081802 916817038 951441528 224297292 968537153 365458939 991189041 142827496 426669150 11857093 392973117 19075163 378045149 932785806 952248021 353582187 672547634 453700429 777792351 630928 700801056 708207256 910776183 305108487 448669835 123895612 989192214 468222944 972420422 422453706 502309054 38076503 902787156 618115500 895996866 756693893 910356045 733528473 804638629 585759893 842540822 17894055 981455579 98962165 297033365 43340716 708898635 305315328 413868596 88636127 233448357 720685142 908168603 429664537 612840105 391279864 734916661 995134359 997402762 146394393 360586746 456406249 708045951 598006595 989055460 571433544 925966443 607465714 861867450 145041860 818536464 526548895 619849582 870695978 950901906 703569285 759962975 432099110 855707884 470280556 993837170 957457004 985657186 658878208 880269951 378229066 384729168 312766506 452798700 392631880 683383929 9557525 539761088 35696846 976659823 158048436 913606096 514612659 951439590 545600889 734868522 282626148 387967075 298836827 412937726 796231829 891259175 670463374 953316057 365105232 457000422 423182303 615483927 300418806 395426113 249995038 405625762 984810886 991637459 965674695 969794217 31387398 767501917 124880427 335886491 360733433 625381352 827409493 980257209 937849801 980858392 643485053 691136352 527512638 987759914 827694198 964189682 348734742 674168988 963328470 991351408 237895259 724318103 820681672 925143889 299683098 892312208 687900431 740985739 600996465 916388749 169653684 723614712 430611645 442067805 467716640 971846544 313512563 905339465 917483309 992552424 15368714 183582654 791184302 987776169 284885252 979341811 681307936 884988055 245648473 929850193 321279780 588672345 213765570 687260011 6569410 981848062 17641206 206615177 837465172 903189925 168732336 698666977 212546673 695106403 779121842 882133626 580477765 698113351 771436378 994235449 19521811 184415915 240847905 429235180 569944321 600361750 399194157 688718307 238772215 790240897 568410750 902618939 255175400 284453762 519433761 665889430 373666916 811066398 606127026 683760367 337487071 470701600 750698159 841381795 54414329 724877518 442849363 446043323 166116129 797075752 545626002 558057112 135588999 496926612 654841509 769377408 219975318 953383149 134190436 219877500 27520546 929424526 170197960 663491657 748662782 883167533 869501379 945699852 920212549 923292378 200782505 626800167 822867842 983095620 852609321 888479156 338660357 966790236 557607260 891277387 959335905 976519426 373824738 926633550 813164085 886468565 268751034 359936996 45249404 433927478 269926397 795937051 444912044 472634367 947879325 998486046 828391023 868633549 34158626 147466180 729917063 990239496 856999463 997090271 49315966 74861241 893281022 978434922 322328212 452796117 467037837 724862189 756876428 865970703 327502596 929768464 990602187 994298824 58439234 870299972 203219694 993697738 86092770 696338727 357370178 494979124 237792121 962764658 964714475 986002647 377653981 993160162 193879176 468070350 986842697 989821909 420006476 627563817 342163334 825689225 563347496 636121870 358489555 629989464 939588004 985967593 43206982 384146107 464710624 783989738 968622767 978971686 778255114 863047013 654553084 841862971 566499222 581628039 389546839 977608800 409418614 731154464 21300718 857596224 814408470 928624685 533150555 777313736 855155188 874403475 354644336 756992255 261987708 526211550 858071625 979163201 856198713 866682697 358953430 750510240 159167432 887713051 185155548 334540797 618494517 978830475 371372068 881997241 113908476 558703927 482295780 981692603 340772030 704010266 936344332 978124448 788830867 939673413 433573109 495049799 624177887 881681659 47151511 190935550 666063061 978993519 820911332 876559021 394795354 919954788 158457567 975408728 495029835 895591506 489775637 507908652 200436211 357321282 439660614 984069901 41023390 184381294 268214348 288717135 469561645 553584223 488054274 882585240 881300138 924704864 784579185 936560569 842860562 989639273 667877050 988190306 565271361 905148639 506610115 766527264 908906437 954021886 690826454 860241371 527159349 644953868 615617913 973242278 614689046 916705183 894490972 980620852 563308219 632550137 129178624 200507764 667179984 963308933 885313351 930868971 680906694 985060674 165726707 626304071 433476676 990802117 819270826 831026302 16140444 869606501 948337481 981519068 785729619 800607518 767068476 906616739 143415790 524074395 913014076 950195997 547377167 869338035 944345571 947818081 648658442 813309715 589114137 671465563 281192138 766326815 383901544 730774053 20853087 361160077 788422320 822860436 208118186 895055660 519697377 776673890 156895951 695191259 445083681 621152041 782837934 907205546 316451913 596536913 449684500 975054692 683713918 977448454 83063056 746895593 328459886 389328043 817565623 911369959 478878908 999205080 954121340 994600761 996743787 998897589 675113150 827553146 86500580 447538149 753478174 930297868 649233594 900086729 995491784 997938216 326189744 781569996 253105042 574626646 557469330 881232922 774458683 879474008 456826909 825547651 990368955 996153112 167116985 560988618 923883865 941883768 116041161 596844876 828740630 841557032 159161036 182464104 204739542 412616232 312258045 402596384 883993039 979628132 492158191 713100492 556964403 691878818 934078783 943228547 475235323 542082547 472129792 864627682 362193780 479533732 265233317 918950726 935295216 961774270 643311968 739618305 642334462 782270695 416887032 599085336 352536835 475896728 750528132 921734886 603267619 680236644 430142090 849000068 750641594 860725808 414303691 493928615 928988990 930440953 767512751 937411967 210770302 898577315 633453951 865115573 390289632 774798677 944347525 989762140 563233543 889935924 795531269 826600690 998065934 999561600 110534638 697801883 529512953 850113734 809064573 869592911 905709146 963763869 911565625 970091944 619614091 972017680 975898865 977263985 106044624 813382153 212665655 415809819 579152487 719478838 850130134 955650671 962759774 976784006 392414387 483772934 892378030 943326685 757463969 904915851 900285676 944473784 120444304 617595344 534020679 878748030 136554258 549927037 98739092 506878210 171956316 981737573 732036104 761124713 574865179 787126929 61724879 705373744 823042908 978762971 555391903 750892424 108432089 548294827 275467610 345070587 243987321 975372938 251330419 502358965 318073753 976119558 525209328 847662208 599715600 986912851 582920383 778620348 49606437 765689495 395807208 817731161 785349184 894034063 918849352 949822402 220788554 483175785 88151041 924985946 815427643 920686144 931131812 940848264 181843548 681421919 55228680 456154970 428011383 532363068 989293235 998134382 720567770 800799410 1103572 664994736 388891784 488683554 281080793 717579675 319721597 596288248 422000877 439209301 339053643 990153937 86360259 119382970 994268935 999072989 748776497 907125939 495172647 616613383 975806878 986645943 899627048 972562106 677969104 767416453 496270715 585666443 439897351 578375468 444366264 809045079 239914145 361438732 111368886 391357192 9651954 919482959 345755648 374146412 477782630 684330683 979078803 989907528 456593925 561355044 495871419 923239574 376621705 837289662 887202703 892485358 486728733 536764435 507026953 680223096 420104319 558298742 506828610 773198785 601671 529113986 313329499 327426082 358375654 827798082 272949956 606900411 413903556 698525514 68665562 159369322 487973699 715715488 727690421 826611632 484834332 846009841 576168125 652466501 317617447 600145821 293604181 787317519 545500345 851807104 799822937 969251226 696607664 802822796 761141223 820700312 811546851 909726467 895751716 916803087 96738116 852632297 852731709 901165634 271258953 529742360 574161074 670473882 289982745 678709174 653501223 917108161 831704045 956639513 870195585 958015693 646887451 985356293 327961608 673365268 97726475 981149878 11917211 709863498 759494513 760791395 322377945 840945212 32056474 226282065 934453717 969016065 333678045 486768356 850567331 953467079 58925769 676213175 836216024 859626491 639557891 729797540 908008384 977910156 465766010 512802784 858500217 944802245 221717931 276571134 985502962 988143382 306899974 996372736 116727910 371501937 347795563 832662009 633087814 961497548 657492426 870720838 310713688 490577794 110882307 528184050 511318873 647347696 559018995 927900013 715651049 824705354 127085646 534471757 738463571 879846108 706196760 737218388 368083525 546765079 59298948 579016935 890705209 972977374 942108033 983566878 428727095 931009971 158710576 517222038 139567194 176059167 576993503 844389600 837652294 849825336 683954219 935735240 300893712 435342436 835240135 849055901 799101242 874016521 591340868 758446606 745472533 747357493 352681027 543828274 710827295 996258074 643081300 754787984 91524022 114603777 732027267 783046374 819703398 858059245 359247410 432676870 19046819 840681794 312197893 687254120 995284692 998042019 294412310 978730883 389131068 418967007 283912460 875112291 94551576 320448646 705891197 890940738 505594155 664369816 595406166 918546680 61096786 944639847 51836486 180340630 684909345 982005882 548394814 802944613 513758224 577259960 135149610 483331736 997174574 999643993 142265891 245485253 41712970 921753580 509023446 612108992 93409179 510247878 802900717 872268433 245422619 436027859 667642065 943420184 983876988 988365526 674705598 863691560 520248318 890293536 204031496 321286168 660152392 810776446 858238205 876308595 670172807 851481982 451420144 915380009 398751495 716947070 189938366 826106621 901468720 915084115 65506024 892271752 64796053 109213542 582016011 723407922 777079664 963836143 776304470 981871018 630181655 632570205 664024632 915178676 283755439 869097292 261218157 519818253 39690502 975633998 48701329 982205987 447538280 700178070 77333455 548572451 455317882 796116539 683741758 860406409 981022386 986539349 136035677 366459119 653033060 688637768 984951005 997335952 291290291 342822791 577263409 694249401 907500080 974923313 945652203 946555425 799637366 988557025 69416361 966232381 702345833 915345410 580799865 865136140 597600269 918520259 754653678 872877462 148650799 465480194 657485161 980701805 102448311 339568717 206971998 841790703 541995584 561155988 729182550 744878290 19237090 704021933 761638836 903030290 913893143 986833226 824607559 862072832 518120596 803062209 691631727 789443496 23667813 617172180 601052124 768431716 561160676 770242418 855587927 908893634 593456900 963686222 218538294 324224347 47048044 188876199 530544362 698941078 577701385 824283834 934397892 996614585 673703158 809665929 796927360 916571731 407376148 582081542 788882025 881892775 182221204 459197604 87604228 187934585 654912601 835046223 615322053 951451249 372463456 446204350 914090963 996984499 958421689 961946361 759942507 765573124 580248259 723751865 545399474 920318997 76712322 916998713 808300700 836684748 149541793 405113562 174765935 329413308 65491728 977785329 764470488 807983529 825322459 950238978 348856487 404985437 114656784 363407491 909291935 925623336 196434040 490707050 384988097 612261194 364361818 934646880 225092666 996915724 89621891 365810373 822469111 977082145 536498597 994172699 457133486 985388213 649087881 797771840 647609023 966413911 644388537 826986066 586219996 663761678 520743147 684823492 754347952 985883868 834450534 855432526 53329276 409269536 762994829 998510700 732766599 740784310 876060256 941969493 81653621 304790625 789311622 873143894 135979134 554427189 499938756 878232954 589761159 623239755 630397605 855312632 899359344 904630746 52382368 231759635 244689468 657049350 357211556 476342984 23136758 452841203 754467058 973269857 139857628 951134790 686524191 997776088 885343757 937976001 907174958 979191368 79081574 841161244 14114696 170185444 738684097 984784545 919618224 937437543 284660571 398926448 306388189 958015226 161489400 387328032 385281525 460662651 511925131 724214602 682811250 760834752 236924725 872804371 736538999 846837790 724102723 939024449 753018019 982632923 380802664 420238150 748833418 969459806 135194362 674436033 530307160 864995881 283012187 926133188 530859288 925421974 339577670 496287592 991504412 993516776 682349685 978228061 863959450 891350556 714524171 901620169 136953112 765453116 448204369 491516362 66859835 699185848 844334965 877584873 927021726 942099800 907105737 916203399 147971705 557309963 840999947 897118279 838855091 869626496 932596835 963427649 624888124 823189247 653206301 959176118 646153259 829283701 403684129 851310727 742625701 948130013 207740686 300036982 745222757 805026404 950904026 974328987 649036810 866675200 214889462 699785446 182175321 751455139 966201880 988071164 767323965 997715885 351983677 802576932 247244294 321080259 864318638 919730405 833569716 882281235 557640194 781618559 203072404 444230763 502550059 696775750 203605548 870084067 214015282 900519313 234921798 861733749 395218409 686939568 188754580 237873595 588353694 875182790 742259311 956098497 146670843 845808363 889205055 972758842 379624234 840157013 933697800 967621024 889503002 911049820 128100162 941478984 370927291 501491605 651838445 903105297 505982178 889785798 261416497 423985076 630791677 826792899 16714225 834844166 402616190 564702088 166169148 995510463 433791791 988203575 117678763 119033677 752625467 814242782 171591227 926766411 903588197 938509224 554655576 848916017 720993646 973687791 673169639 843630098 456373920 966342082 711319646 975965070 275162186 630800199 801726400 808599830 907779822 985860745 623894100 800947228 320526978 633030559 741441063 946611148 346883075 482267671 141601524 936247673 254744224 970712892 849030034 947709582 153374923 429348996 808233809 901970309 998739135 998748636 617191502 910414584 926218161 962249616 180978738 482979943 952313675 979003253 685488699 809805395 692025736 887226058 956574185 972478333 168028619 910727261 447559027 880982872 157137044 488323532 667370962 983297674 973615093 980731020 22525620 491265526 676229734 775829830 848620329 981623070 222555981 465107685 327962076 377848062 12539427 517417560 583564664 852037659 335264135 716719469 623581752 930207388 606089960 904869364 858877435 864331167 787282956 939295820 771538528 999886182 306351281 477620331 916569483 923149340 876976184 963205858 813636028 980074746 752639007 870993768 808647478 830002066 382476222 616269952 321148460 703329828 395433319 589881818 576456514 862693165 947959062 966145312 868819664 947483870 332560277 900406034 173129672 190100149 477679109 938600507 276371026 780269598 848052800 881943203 465758826 467654801 402827881 555804483 443308089 478770317 343066110 487806318 299445565 518591998 397307843 555572388 189373825 308451588 66089449 577710523 790794187 969459392 655867820 800468293 146916177 623974251 739504821 807578599 822148397 852708935 634493840 964559736 363595153 415969755 668864237 872335407 222986018 707697502 997948756 998754007 938106945 973114350 191286881 818577440 358154462 713525531 40053451 554640434 440259893 574978417 246241696 568730191 492452249 618373725 257546485 259503667 298594243 704193586 690837967 845653031 819205020 934613400 247893985 902076164 818928909 890942463 741733130 982969151 609399547 728319722 565451192 705949406 739026709 991419602 467964495 655646767 956314874 985881634 575371264 681025546 854143309 901666024 668145268 857330184 562046950 665509943 333444154 964750671 199849782 912590001 857199561 883180782 465919937 626862345 600521360 838432062 538978446 539594249 524072778 631486408 11408420 304139444 596369534 767221335 235025264 613200145 80473549 975536715 390361804 494817816 325761306 387886643 293514504 929084078 539102577 717030564 161951771 671620231 317422811 815103464 751958554 936697221 312602708 830571399 876487866 978275593 606526141 814935458 886202501 910112721 82269375 280054361 950696947 951116700 130393388 473998545 129647665 278062984 491803504 669050419 942391482 955516121 675889699 967088337 6467839 893351591 948041466 964790093 451872251 540859646 612795040 989353118 695560675 893231288 516329712 687448929 544790882 590077939 802754819 988720998 939202796 993314795 472718371 781138338 42717515 66536660 945075465 949915376 499164962 963723828 626174446 887387423 962517410 996356172 94645912 926694648 894124730 902252486 809039573 817250506 388037615 643543504 358541952 539522352 476386112 948465620 173643579 378231330 197351547 294167808 769630209 827292708 613323501 709106961 52715494 639064419 936734739 952262658 657452574 807242569 694073442 990350717 193289098 903684314 956536032 989723517 101600878 555907120 47337339 249322993 517433799 794734614 963847499 969714222 490444517 639388949 173992778 649077525 515302267 884441175 675988906 899085983 165036724 405775105 275890862 324505879 331187293 979812085 301554750 310180930 394613363 934962134 685641035 756742790 926950779 997087789 968185620 987791118 161554866 926017203 768711155 838987647 12845105 57657384 199293356 396761162 772162820 855436357 119074548 311277830 458138448 924681746 563516996 630635231 440186775 670170932 706105571 799874950 437750463 966980618 427893817 899569414 913748102 979842176 190613949 842734649 244792490 441578562 769461232 836978880 721404287 822657709 636695359 795327262 569483078 974969276 875155112 920736333 839408338 929009724 884078215 973297225 947493013 986748333 873619448 932735136 797112736 852214096 963910766 999930578 427839077 969639107 340421980 703454123 453679835 735953782 148117819 696023202 977933840 980199182 9610510 364463839 54647478 736687823 220527754 806497739 731276042 784371627 884380930 895005112 427092191 890075178 397900412 933064910 591024961 810641159 288572296 670546182 863368557 892979425 89919625 477871307 242727176 866714461 669945002 678346847 841753141 848413922 299194441 443304690 432582146 745812030 880723682 917508653 354322381 727399621 438755411 983060670 418455831 664903986 535410710 709105186 633162952 685429885 57852809 607568679 205709179 559994751 482357284 611178491 924732707 948005806 50051895 718333144 492303867 759120609 449020289 489129202 71457619 669334748 810697840 828498076 417188311 557530958 436021971 866580115 189973471 758768716 131894577 468036691 466109723 968417450 217905788 974201300 472015264 590336465 265297487 681813873 779150743 861051385 44808062 145156073 671137642 813322457 608220516 936714889 73862753 301565791 266786785 340709743 182551543 521196762 268409713 920371619 500610966 584462021 630841885 851154290 662575653 756599328 922733115 962539393 459907586 521732555 211941692 582162905 856825195 989268138 830291773 848339264 231851554 864543981 709339177 761433780 12016967 277164376 622126269 963823532 135776631 995585052 113331458 392579011 233062707 374337104 909838112 968039460 487345618 823362008 588403130 723212688 4073795 152713537 974051031 977467663 704404400 935225223 605556204 981444027 156820757 269518215 471094242 768479937 777001582 779150537 72487229 776540179 102263120 393659098 133153499 803635712 141982900 697572594 974815815 999185849 192796455 233394579 249547942 642057831 442064947 962628537 486331760 515157463 28914019 934158662 67772073 904390331 247092373 699912077 537355011 841417828 653223601 890243089 295877338 954501913 940397490 963555854 412688702 765134733 180167690 621596507 465718259 565445808 898448011 971366448 880350955 911215583 363799729 532181338 951540263 999163955 645432979 679272946 822682247 882046897 222070451 379512631 943732271 977736281 317003086 917427021 22114382 895844958 153947537 484914543 10264162 530779443 353066618 452822788 226712165 590362430 902662309 928100163 634976757 788084613 203974009 869196001 378269878 831666483 363106845 702849793 722384935 934573462 925954576 959232045 13372703 68522125 315473534 772575763 941231151 994992753 90288994 400303003 317776611 855907001 880489336 979895619 614048758 821148551 841661899 922757530 445130565 579939668 506524613 931598298 857754959 893504999 262219035 381526224 269360296 943602795 672294420 752615776 597115748 812984841 541243918 704253274 515965451 581078144 704999128 714054491 814889624 846412223 24121316 199213902 555925480 696545194 248832569 947771525 232570593 368886051 216334612 285794199 941807933 973452291 24118446 321516421 808378280 963697736 954727067 982843439 60572184 334029581 298412478 621813572 964551414 970663319 290635373 784913731 146008592 383258553 645325097 872922803 635072353 969523850 642197066 948670696 835156885 881119205 293204786 623849353 223090426 256313299 72007749 77858705 145021808 769962692 222562018 672433531 609820279 878812099 695916000 698615177 304411067 371633041 652740585 808762296 196476051 806944677 758701847 872896273 797890663 827651286 330390331 899295305 231279372 843379409 744298904 996242304 783259357 849162904 577921585 698403183 307296942 916660935 378720178 978410536 846889649 977098331 872765013 987223151 86234858 739050271 962757297 983870596 770349375 801776849 885378286 952800473 563561609 986442095 751275536 920515398 325706542 479048609 703789548 900992498 983635352 992026496 731590058 735738242 841565969 932851095 536234581 802995007 25778024 440602002 350073469 476123276 996984068 998717875 457028811 776755762 213336577 533517560 110876984 146679761 535099454 950266993 277982210 669517912 83988104 814475629 150825529 510263217 479294240 793438597 56576344 808534358 927789922 938765532 315850854 618915425 997230751 997699693 976496510 984401208 259959911 527558417 491500245 710955531 727049927 798839785 789634538 986131767 249434411 945171479 307375841 883444967 440449746 688310856 858049360 963577860 80185931 656232813 273193755 482392341 592535137 852770840 618489823 754243980 522882402 988837671 94175073 500207077 546754070 655438943 735152933 885885454 593724766 733794195 817072680 969018993 866414915 950030884 857682553 927732532 357264406 667575435 882966031 932923708 380483807 395446310 277273069 559804936 603302870 879214509 550489306 601619331 499333452 624662276 330093399 497471488 279839496 568118905 526189197 839807594 686771147 792696956 916223023 948205575 164099177 592707829 414946658 667439696 953670994 983438698 166020181 654949146 73814289 359363253 104233827 447500579 549383238 717078011 879687809 924745633 141624240 505484384 487639131 773561015 961157481 994089594 429291277 776387169 967733225 992771585 344794116 478964066 296257668 584148105 193949291 572796297 835804104 977047297 106915677 870619688 471772102 669580624 99953484 947031831 621560959 913869591 590983763 646341603 264386206 761499748 904142261 963607583 631396463 870195696 637972964 999603113 596403977 887123902 198201162 428677895 812378007 881194639 354360399 709536714 263720972 676277838 182809796 813391905 663166223 967479737 913051327 985665381 11121135 37893770 226959866 960917716 574589227 613307974 143728188 790132714 340212053 815538647 360731005 977080015 301508744 926286709 28059078 820770807 425060268 870187968 129792987 973573625 986044354 999741380 129608204 955906775 284434500 366322329 729112554 819246277 590784415 704147112 2717872 299432045 997026999 998261068 510179174 918447070 474564578 928250474 204095291 427435655 585632295 795948056 303215239 545268562 948886891 952339027 328984891 910704002 670501458 979836920 196690693 534903638 797499255 862255209 157313141 301043701 230037526 883804066 829320742 888892227 790744993 795342097 78454125 112463310 240723876 504351628 751168982 818625864 75007266 551123440 997730368 998917969 656557507 928758290 526772336 874545554 639815773 939941919 746788089 992480636 178245552 508443745 671122615 886261905 865248898 904333864 653918992 977018328 485589631 956532229 601521246 616557763 928278972 966945298 567463609 624237509 332950039 822243994 76781627 401089172 449649337 601771655 687987885 697348428 933772791 944657233 148059912 568703852 235279171 565717792 816671512 896647747 70800915 286856631 625611190 969258697 109078976 132377626 797641462 832368066 707838319 762317384 588253393 729499046 301912869 866616469 277988769 954014546 582212937 840978268 770121376 909216251 325334670 761261931 354969972 656093692 353353788 976925550 836801478 841986243 746775605 977954758 691378250 694779313 899717289 950842024 200893963 648143144 981665531 987707665 745511793 994486468 5622567 791034051 76180343 671246466 883253123 994130281 133536330 564633879 811764458 932208542 795642580 817135900 187342470 624240220 501851268 511763224 700555286 975501586 861491157 954888026 571696443 605485471 610937252 905927580 70539420 638780027 952282791 955581843 746151610 912196678 409056568 539868726 391275460 926921901 305708472 768904610 477275954 583275220 293655527 390026274 470395125 680237334 962313293 990927522 59897699 619440121 728436144 926971076 624741264 983261798 701055744 912459397 41939658 923157714 415160998 795879870 658059713 798007707 658140124 863530169 206233572 384259153 624262412 673585801 688055888 897751323 67464379 669176117 176455911 377211448 545534456 907103338 78345409 901780485 758644326 879278812 915260195 979621878 281919941 318759000 651694706 684746938 610834470 835836590 487774888 947473897 939126483 943322096 128300599 675160937 440649356 893572493 292149843 710256441 525416776 849396477 214677896 381083381 332495010 690336611 172724167 682799746 455660032 645076356 747409211 827537767 851439698 856116341 769835125 814362168 523669508 825422317 365156655 618546562 457112700 830735191 356700077 457352347 655937157 724847565 415215710 530891666 695670973 938459171 866937333 906012324 380136837 798518623 645023443 718488482 242739697 572577726 122023346 581950650 792583272 799220564 771976319 773219786 56914056 186935780 170933922 623959954 495010038 910308005 528586974 854142653 416415739 681096210 382497187 617064109 384419309 984348032 784799661 860581788 878234632 956157503 597432037 686315385 661681312 842471514 876643395 885997133 778584043 907493518 733789626 890089414 310647628 917382180 640322319 935957037 905224965 956205395 459040105 662610711 924911666 957495864 456951621 660846815 501140582 644507681 184201149 985892820 219518143 442100206 320878565 854960895 283546964 609077995 605801988 800137518 120512802 557777792 516078045 648183595 580092995 634860613 758236539 837918097 695229901 752648269 391925552 939281213 315938889 328468290 334282070 861682470 249994832 289856637 371208221 493584000 738263309 957135223 716583844 854194811 950806724 977329867 250034888 807151106 852426183 956998320 230211643 457172333 269576628 390103207 146689214 163025685 298729239 722662994 809778837 909635777 409642460 752842064 888031012 893497457 328038078 779627055 520211083 663122026 669148987 680530371 696479967 918017482 616695406 948880237 680870635 812344167 143343940 164128624 947895450 959965058 439957637 921062719 938884567 956597771 368048315 625615754 568567520 581717961 452144393 684576509 104558857 931223940 697219627 923683157 494379680 846854674 679860656 738184188 290405687 635454440 82193752 649414561 465655975 711776318 172927441 396895176 508985758 898457132 807085186 984415549 992024917 993538138 412778976 806431180 319153892 700311555 932211374 976259050 139682450 150518605 429731764 864662331 501735136 721030064 667821022 914720000 328318301 646516760 733466356 861887425 890518880 907943408 835049612 863684984 252886352 698049345 50145921 544584489 284696067 415161291 226652181 619655625 199358094 773512884 491154110 835715496 204999546 687992258 945124813 993333848 264532619 897990949 828991546 912830153 208880602 666418268 98594193 440772876 918927047 961336470 842550181 909315483 125718912 541403571 137338731 638095137 337402002 707424793 34739706 967180128 659665200 708448419 334735142 549669993 525445044 724254336 989568011 992197635 777386698 868162671 972178163 983976973 561062919 978245404 579280205 612791674 495664778 532888114 300747907 692266558 775566487 883474310 812951553 931655691 900245537 932430368 266410438 429175866 456758194 675048265 669855480 876503202 217061665 969896841 573555163 927367758 976251212 976435264 636906974 885047082 479171832 949937214 225992888 236423389 848752270 861104770 634200774 728889469 777916523 913077976 353461617 769656669 104437691 826408151 898478366 986248946 106739460 806234819 16789943 389291827 265959383 743378207 991099875 998374176 581730730 967116239 748429707 855961156 876852356 964646525 382966930 490848563 23474839 908531974 611988431 700751036 642784341 863100799 887235984 927418245 679575002 797129545 561590919 919301506 872578763 965447601 561010621 966390037 152279534 464374964 148966245 366628404 929751588 938228927 413171902 417756182 331030523 375310882 890113466 936077413 836254772 998687660 249482206 677185424 932276406 971148301 238747365 313261345 396556783 996594484 49100513 136426588 48852757 68758009 394230502 701943206 401496827 712739239 941402549 960248535 642691428 897145666 324224372 550427505 11947521 78244736 183739880 930992549 642125099 918257428 117535190 607909983 401664498 769081069 833438396 959932827 619198435 972165223 756253269 964270302 895415606 997719698 454148588 710081133 238712281 816311568 531050965 535521679 918734158 957028908 45916188 984413421 648697239 772212881 448527221 554666293 567874686 706320379 304241037 496457170 112367289 693181871 809876770 979946050 748463780 916149771 163952740 441622450 454936883 805001249 976111232 980006300 533553506 766177368 424579998 440393226 35422923 950813395 767117255 845985163 751937215 933028659 423263126 970680685 299561452 598778575 905583419 949134919 173597864 655933344 881585042 989025015 165346037 918400278 987010408 995719442 839275979 860781454 636179386 819531302 583133184 666340396 7054905 325479408 141172602 528190643 552052743 869970649 20765431 238623628 730166845 845260323 507174812 535980457 783899393 917718029 356149544 363972950 360659154 723355168 918668886 952191165 69862586 790876320 733033341 931373858 534965376 583255676 932115980 941455171 601214062 870019764 618873250 927632995 840875292 941595583 380403206 657841523 87632657 933149338 823559910 969661695 667860602 987931580 159199486 349962956 612617280 992620127 71507181 685762284 828451003 938220647 59550969 566915433 717234758 848297982 615771772 729816444 347561199 377376429 256023566 318121500 826503028 994724657 105582571 365125268 77448318 957645802 574250437 823773881 308938917 597556864 226952512 269453512 201907730 704525263 345519814 593629568 164338394 608787996 990563845 992190579 658888337 737114267 225692133 340838152 136391656 318533823 337005574 779917348 785532371 868860971 710751019 732026931 541447078 690484328 951947223 990842404 998257940 999371864 267065599 648320314 182435040 213961479 467971053 674174727 765381557 775865809 861982020 951934194 566872542 705725041 787116219 976867091 255679608 286561346 688753794 783716596 747700035 840587369 647072859 737978699 611096139 854449687 272289649 861103894 981381817 990999019 934213610 946454080 195601820 642905917 160110610 955972657 428846936 902699050 565855282 581511312 631332359 969629148 404460215 845346079 485887590 629944969 434254576 950820219 986420759 986910916 519117373 992707668 404151076 857755704 17694141 232981919 486176269 707421602 267681567 311020343 625595845 657180076 381390586 565050840 167371117 654582976 125969988 994402732 583583038 930119466 398010222 625833558 861211079 965155971 232110529 472869481 894198461 986648932 83140069 429571995 291913475 744960935 998040794 999358275 462651280 732488544 878808104 975397377 355318633 674495985 516955447 742448999 816444727 948717864 641006073 883376138 723996688 875056237 294247648 800058602 259078623 397334756 912979380 925873240 300473748 534659538 32664906 883331831 21577753 430195321 234909323 704383872 192784789 927999628 201503287 734830197 768254640 867843363 244714960 605377605 634209580 977993725 608589632 939233568 148140299 261423692 475772608 600307398 84067227 236018215 113290169 880997097 27662913 86757314 425390524 705507733 786416989 973695402 475473106 598445647 722571125 769460281 878389210 903235261 993862803 994755214 293203566 469725557 516494415 889765145 811154095 854561698 879288955 980020329 528101079 850555567 501361678 956347045 684108774 716566354 326318243 660137746 843249664 865069356 971569478 992717730 282941005 373632054 491542039 949821489 402346714 969949383 980180833 980493453 230716001 553008162 249935868 373048687 737160972 977254855 791235219 795058390 168156877 696814156 756894917 887092124 236532845 984359698 602574447 700009160 783247366 867036995 589295004 609594969 561165508 734280244 142137555 994598878 371174984 676712871 289351100 447771086 43188507 818156074 779506224 806559305 779706663 846581472 52659557 993729606 243433256 987131924 238486822 978548272 164502337 872566776 228490067 485118074 948515587 967759566 169603861 865996975 483900130 749994305 391932028 796182956 449877653 802943140 644528328 931846789 980106361 980889054 665241123 733804565 726662117 791470608 307999768 337337676 764649483 972421728 727637907 802259819 366731225 730391113 34917789 469071105 125684760 722036724 267561828 410662317 541595547 942065946 597126959 656460119 147194189 162066803 517400828 544681319 373884538 667917821 710269540 774352081 198720995 561807418 262823869 304308067 286612471 850296700 989969703 998700432 529627978 971601692 155454647 904198921 183353027 253096908 783570585 946414978 953630153 962094047 990702024 999544708 609775613 917883067 549493736 581625323 895898613 926923297 392453329 977557126 967243499 969756113 788670937 823830767 531205053 614354758 300622152 657753698 631668416 985757150 801761393 859834775 625339238 673813892 351490787 700036811 378285560 809979778 183124389 319999892 917899676 926046530 765119508 931088801 455041540 901955183 59393019 939905313 745405590 826740794 363961616 526748502 565873562 745166136 732647649 884906164 358393452 781477063 454932173 966971270 114242080 936034337 287132788 651724768 652027499 671612592 396236378 781989253 189207271 504373175 734839490 823726493 878765874 881772408 138834204 200572253 196833820 287956373 373896459 486904944 335284887 623807946 948025578 991981517 440496709 805547411 140806132 154128749 619519147 754635684 778942799 907716407 216959370 874227658 638578825 805670143 125137402 974823482 740668995 769363513 329845732 682938386 797881526 891949680 778978530 913783907 597585992 677932845 851023429 926535503 147329106 163823160 753627533 762057924 329888179 436625768 605751162 674423607 482742723 999277487 280034610 704643464 393371038 475034268 429780563 788162876 168616168 484035355 201211463 786846674 143006307 530226351 507265872 690060567 282849622 631422205 765217418 994604606 686634222 778411104 747530064 934730789 980864246 989944021 294349991 717509890 583538443 970872376 723019533 984524645 329927379 592622476 607149949 850995107 554818901 618772101 412018129 701344299 494601795 985850503 249603505 507309571 601015315 704268082 337793935 844334180 791633872 831638379 433358867 754534851 576525172 864943333 539071930 896169808 988191874 993738984 226857188 989869542 689752156 993492903 939777153 983537054 651009585 931562853 682376198 767502654 602590997 705059874 53761356 919298182 891323409 910875776 825795704 924733327 946140173 954039136 991340131 999146257 427276343 447216363 8191901 86262291 698407323 974217602 122034475 571667484 432219647 655697221 108577379 836399794 985523205 987400062 828930211 924685630 853165921 957982594 607941268 843738388 594862343 846831513 718513928 929423291 481266398 704386701 200874329 934244603 216815127 227006686 310785133 586599525 345048115 494662149 735089792 959382656 775379473 925801351 265287341 410215856 547199230 926196162 518838134 734926496 933758297 995186471 200232159 873011586 753611599 993892101 407545020 986617063 391243492 786414678 951397900 961224723 543808859 590041971 560066400 916832326 67413757 955558058 724916153 784681638 516112686 516816136 54411083 985233304 922437579 932142139 380121804 572159147 927817358 992022788 807690486 835829768 951749037 986837440 911573002 950612804 79733021 458411695 48300652 270642267 949241143 973968701 540713024 901571548 156118700 182765434 718269844 875666086 188251574 612536652 898698658 998597475 257503951 663229858 123184545 578353435 36314213 349650139 121169019 722213932 501921343 688394899 263999058 682463485 478760890 961787534 163023944 809993139 893363801 986781509 328307203 750049899 474704622 567067245 941337127 965434271 698082365 992556137 115591010 360894845 586447855 588115978 594486860 829032323 794842381 865672484 895142579 914889956 405949904 913611072 778813390 934365790 328325224 782839019 51091902 232620247 511095588 735181847 302001168 378054944 933592241 984351357 718543766 997173888 725807443 995635818 493044281 888029643 212046325 355027803 653333400 682768204 345852459 484424988 704018703 894908301 250687848 516708478 446037311 457636617 959131998 966511717 440933012 894904162 456576928 737656093 515065913 963340153 605924466 811099313 842215619 964120337 825225820 910624804 275317485 984310775 701406641 721556321 53336791 144508297 525347061 529036543 136143653 946698559 684193096 891092834 712160178 886009870 348641742 811941861 804332896 925163592 722185312 954199356 540869187 794232446 112941590 137499516 80696005 469024405 798682653 884054604 315413292 908605338 900941566 928131659 100299363 390313691 241175637 869563528 596885515 644294108 912962888 970190422 992407014 997147995 516755132 521522521 99906036 412359392 709841909 951494226 975361805 983949123 231827381 822206900 348199218 546738501 277430182 637171639 316746490 423008094 897053227 922900834 151927558 778109737 265115775 353441279 64999276 172270611 180908077 824232024 971824702 995687450 442807973 822960648 994928051 997064991 412372780 427722716 806608169 920472059 998078750 999021512 235394928 517918185 421487697 898065163 551005106 882558886 520071224 915948384 915200574 999615002 505636078 719955269 943880157 961712103 981545455 995214995 182272048 654694118 363378994 757530946 912241796 980792842 367090726 581248320 163649724 589140371 691399987 950888639 50233622 450496674 580092997 971252826 43106246 637038504 451144488 641951256 118600261 209666553 618532331 766502642 974910681 976390392 875217524 908518234 203318603 767619935 581830157 698901532 207396901 490340413 928212757 977618323 151994580 596424081 892970535 964980428 26601897 234058691 8064890 832962633 675308711 855713293 430852655 762755107 195732966 249230944 948318458 963195164 814564479 834173742 783811668 902212183 665037167 916280232 134433884 968972873 341510712 873656866 583265602 653670671 509822069 750098630 764153903 946052788 88048660 687436252 482766544 528973462 882109923 930730739 542241999 869236109 806603569 834036688 910772990 918275548 638919667 811691308 268898676 637510651 405551241 905272023 88857138 519091173 588391252 922196479 622176070 874159924 281024354 586836379 67899728 157616632 659621721 797214162 12569060 798397790 956228466 978209949 998054530 999911953 928005528 984035156 919426395 937265433 910723050 971369195 9551103 844548307 721155918 753904044 3529071 805893732 501707435 722537738 446679076 850010596 141917007 662038893 753021804 787887812 945110447 969603287 460641706 476986431 123581342 701023501 37784988 113582587 998517211 998529681 82889562 659858969 223366680 374399883 525835667 978431388 879369609 905799781 706916692 762348707 280953974 579211288 239726805 527143171 37091473 673418183 848032508 859277929 164899696 278946826 528899382 607806708 62094715 864081312 195875159 297283721 786004386 898564040 897850607 909060646 224349492 764429738 690906179 865110405 127379415 803455783 211743160 218278352 655830416 695192811 380067490 691464650 458733983 932034899 317501125 718368348 14709339 970018511 232192148 380665120 77908500 182110280 700916545 811197384 587705673 741715809 168875558 725967322 386020037 680287015 765704424 850829670 235365699 253358829 579805102 727184139 824253334 920507201 218964663 642641405 407500844 774105090 175372075 820623336 808934165 959076256 100691823 246823187 240463935 802571260 778708386 781493151 849445133 966642889 998937629 999474087 307415089 553199526 275547080 991297231 378670813 695381511 859838899 971994545 684867749 724314980 514933741 887515811 61413458 155122187 82029798 678608157 870624272 899950325 275977463 485650043 260309171 316065526 748060832 751360812 123456249 854567812 1101549 776274081 968003704 970806840 628447240 902121250 436281527 801149488 647417502 822376265 425292752 898775093 415518236 621758236 459882164 514618582 219637528 769414117 989518960 994038754 963672549 967048415 359750153 671337172 896996560 960896761 159501185 726440195 139290961 841791358 167130555 550319561 585364618 606282464 437910672 610169412 349008160 616865491 313479608 853072632 277947503 639042260 475937145 686339166 178085194 359532659 626903543 690379847 645975654 853875920 928133890 942801061 982408552 993427386 653937004 692052791 945899419 975799006 31427050 285208399 851477416 861635058 871758568 922581908 616915025 921661733 628682216 989158899 583868316 879470734 520705785 726544072 44398785 245464405 793848618 885213107 34435453 244128253 20362142 985904474 415925479 527798991 236953186 690815936 723437223 740962256 433163875 932971096 676510904 832480990 218516192 351391590 216330262 345301669 482768930 957840364 326698048 334317108 428615171 718824519 96723283 417667964 849186886 954260380 270606147 547590710 732365644 763074164 826792611 831657713 132915171 213263103 58498020 629797585 708366718 944340584 839795698 939968878 751779373 856037487 20956013 82005652 844456571 916699993 844496074 998209701 322318233 958878278 125667860 325044918 571893806 865229475 846151040 983199151 863635959 866749811 563598538 653154525 399161812 455072477 353527427 665433894 368370661 916514596 965615303 976688619 611492916 636182785 143602943 171058946 82891904 258752247 265725568 875779445 344441055 808473077 265164913 666447997 833573735 939437688 722139070 994167259 369966366 981574018 337909309 847008203 771522445 880671310 368716549 454526881 511223539 956610902 449220794 913968024 759706961 892229338 210055736 431564576 771798832 784362499 263681261 301463543 983410177 984720374 310122088 438199339 949279185 977130075 323064374 759474943 842672133 963076859 236488348 538130936 655194845 754927276 361650120 690180035 686937599 885651204 382779510 675295207 160116138 400180691 707392104 808829825 123613705 560847487 570760525 676655040 46905271 510606105 95378540 419180936 499574407 704335586 938358980 997797419 463096 510009424 607379961 907386228 229837856 686726784 997710396 999042442 754324928 932826779 954711044 988493108 651422217 821003324 31964958 995654059 925800386 928651920 644621487 892963438 751217090 993385350 340004880 709950281 436131198 791200861 72237070 75258422 753647928 871072296 956722947 961400363 410795120 439966185 244618695 341039651 618276682 974265136 362711781 974277614 482662911 981541586 102422697 268502288 142589747 259103805 341655611 985875319 678519416 722564323 947345920 971463126 703006737 734746232 850363067 856166538 464834779 525520282 823522814 863201481 14446923 564514253 618970502 647524793 116202000 518404851 279957586 751966348 871842590 982949081 640744542 782785812 393774880 951508568 875202151 982971177 269090874 811948723 917464240 999029699 402348018 986670431 874476782 910858512 119707855 539824880 597800138 653181920 386398147 539109700 837609191 994180267 390723628 802846812 816121947 832587566 558659210 560270940 357558921 716122202 378100132 389326187 469321495 491293325 657715460 751292847 879357089 939916614 827531387 971814139 854389123 908394610 81117805 951501054 481752004 740680734 630320617 850831374 97765177 662319567 890594492 959056476 742297466 984594746 105805564 125654860 736790192 940631124 67703814 761846038 291657265 414113634 399758712 963292068 193175311 620124324 46520284 134225535 296157649 604044760 811001425 902624653 867877152 991013036 179167636 943998021 534392286 796252678 750652949 946186616 151750540 823421941 956749929 968362470 950320949 990565238 834838649 936141291 631049387 846535358 684883615 908020671 126679516 797425604 84432944 874180134 682853313 977551296 56919301 331321777 353870450 982238085 401589030 889581019 608333149 710900437 160515282 315321267 991151083 993468492 343516847 344130404 52142144 724157132 803325708 857977591 206329069 344297510 159001042 534285046 318401464 639660838 262758149 427220228 644659137 851668417 160693970 271556737 718973782 812368868 781920981 809892925 503249368 784113459 75858682 941144411 526962311 771035918 968205141 984406555 769804257 876350879 638586378 848368435 416936027 805471691 828580421 951276948 668051814 864933526 649194995 849134132 648433005 987993408 200631377 593758803 535071268 588791248 895114741 925824801 6898751 11178842 271245546 797554179 82262405 678107000 769799196 995546381 886761977 933435408 890244141 962003387 557900381 914987253 116915106 978525474 274998875 965410540 871026428 996500126 463386364 852526289 497611796 968632240 791127330 889248265 518258750 703187354 65775185 411025513 102190085 567969213 642032701 735516630 924973093 939202355 977885305 986325265 245010080 711446911 29994174 581949559 746817934 959061758 778211548 818724832 457188521 913969955 61925759 293878017 338820814 397856820 379260691 511612044 47967216 556915223 9172731 388619920 262224345 903379257 19753748 852927879 582056978 681939738 627937727 733856467 574321083 892890288 722175271 833710981 477943445 538098018 850526152 906136841 596361071 668555671 530925042 842316381 34900967 496793266 631562171 724229831 599260014 996020929 408197434 541336976 310501090 436604977 759831214 988409532 574554798 918089428 653083644 896934449 542701377 863552381 379621348 441786561 259274896 597832782 105648637 783667043 641290108 748133628 915871329 954142772 343223281 670927275 745536759 929300796 270171957 372340934 215318715 645765435 627947910 650521054 620724277 977816155 877198006 921652662 828832138 918807541 878175837 885784054 416779312 640800027 980109305 998888259 474392818 805807041 694963133 802649987 399904445 479995880 433120102 506416892 550229490 788611688 545926071 684326965 707183455 833082388 980392104 982146440 238845513 382139932 739732426 740116046 956177949 984810743 951717229 961022739 66606079 305549257 763064169 931514826 951751340 952574578 471015541 852250290 476082088 819470587 89285083 969673185 582821622 850370811 103051609 790983354 808870090 977288286 541895806 565885092 145344770 232598733 170784787 791584519 822910238 878523325 586785230 964750885 134043690 486760089 554193624 912334724 392043215 733870691 221132204 322832545 338662904 665898538 537445749 916610628 525949210 978353110 120715684 693404509 815343768 941617807 692590908 929298432 720856617 886643753 703091938 906256606 261131770 351551285 919851310 982026258 272840609 959959292 396207064 968977802 581407206 827769277 273766371 802472775 479033547 854652939 8903350 809338587 848066162 852809673 6902519 584128600 946125542 949282167 980250655 994585380 745825560 988617555 65879880 315029983 138142500 714803646 156646341 566041426 646820651 778874428 72376400 208250960 184851960 810330337 234837584 787991307 613039394 664244872 835632402 927954717 301039760 554293460 816697023 879182946 257362460 281659540 257137131 616475385 358805534 875884851 927380322 973495838 908506567 917085269 272374997 738174682 488065512 626749053 983335144 989307349 704322317 734704085 509985729 729245344 615130914 809568201 598779095 795357630 960090415 984143776 254369732 258960557 612060312 975391629 568483136 629269689 521889917 964303954 985381633 990348606 89097808 759293333 596286575 734895313 699430594 747221897 575730984 935359490 890804608 973324430 994555703 999107739 124673513 999000499 878675779 949689687 288588218 836145930 541534024 921079135 724806062 810215612 729632609 913561473 279568094 888722690 217836329 410640941 204117792 540123050 490189099 928226951 645884366 772156382 91821464 803372952 879811022 994923683 848300691 898493427 325692755 520502082 640333768 665075637 628424839 923816169 728428627 734813355 115173617 995760016 887857498 888205233 982263592 989818231 523231157 864557508 182851558 471199022 605409467 999743783 930264810 991325234 358954890 411706480 494643276 917056252 950198967 967272127 684471444 688652439 910783392 992224270 103577103 633523682 556217384 711233032 637287108 748983211 72922432 228525192 147255295 307887873 345504807 818145302 337680078 743418060 18532934 547886895 868485906 975694158 332679173 656630833 683612712 828128782 301051241 354075174 729478277 926260724 93132659 767400408 454300050 624820343 663391570 973845865 503514558 924711926 660216532 926015037 127778205 702744119 463214667 848404712 305077694 798120143 909015899 938838737 374723408 951585270 613172961 974521299 404478678 632339592 392259509 993884547 296379472 717793541 882941489 992257392 178520414 550615369 846171553 976968774 89127570 757203008 934422855 961619364 793433043 878512856 712117247 844842448 538265399 557827696 965663167 990794729 391820458 453060249 372290934 829501585 628453964 891730580 569540096 984697724 958716588 989445775 898538249 930895941 592476302 753877007 537589399 695263556 228249013 554806032 335676846 730716162 550088678 926012093 867533025 962358800 859580377 930423476 460288291 962929755 836686018 947401910 481295018 512017156 154096990 629137606 739368613 962822696 628032906 632558185 610292036 975286159 73482560 851156608 600792143 853324426 435275012 576433697 715788214 753508168 92456047 982478766 564358926 811717547 951071216 956698626 100939095 714326292 853249721 989151090 938267486 985380271 389689154 426733795 80017717 829978732 579661997 967607842 588708860 802178042 138378845 964844656 390584227 488557754 958134637 973569136 515699184 516561774 344816843 557037237 69812951 951760561 285640142 477478583 445701613 713820098 325952577 705830430 82231389 967157437 633870180 827170828 770252707 900950663 767917601 985372695 922968819 974125269 62517671 889437700 777304697 942041583 692692055 959053247 246168336 540825730 169448 82789851 679834813 871115859 953358765 953832578 849419266 994579564 547655218 990330403 433296403 800022441 205804323 372036875 961716104 985375057 770537469 779348308 424816583 621663328 67333255 652882019 640826861 725936564 17781545 828865537 646265514 740638094 895226484 984034736 891551184 923830006 864101032 884446633 234268088 240758057 967172574 995852657 163557284 267500228 665467937 902383226 876760691 914258171 147594037 493076081 708698674 910109047 940786618 995125605 640389124 840565851 63632665 890142701 591293092 862735120 216139076 338866358 432989619 878117908 188957421 373821507 66035561 361878617 123071041 657676355 787163428 911151544 529441872 589536495 581166811 703794121 518653940 811736973 659236235 781470804 152392209 503659242 388659439 550618835 660362078 717827760 460282307 619155857 706428230 795554961 894782388 921599363 640397708 997488753 733419955 782473556 312613350 395453886 371142952 839961626 779534095 968008010 798533697 824106111 575118163 858579552 463369323 616767605 955280763 982459543 718800514 890384742 830587189 916398302 50541609 194854156 963419594 967508129 200564152 237027529 708388186 878513636 396145126 570391096 927015341 989280447 650029755 818574513 885740774 895626229 858973799 935171534 635125246 652631160 35261796 245862940 280206970 572765472 107712165 628740264 47913319 884068942 170335713 341848234 543151784 641869846 863153839 916822265 256867279 328784709 509036753 917117812 861675732 921172394 954859249 974635824 170150744 838630249 654648953 801420491 726092911 850386039 421060034 707175043 543228715 571418872 466768854 992992287 441158337 719449126 681020724 892402448 976863217 989566566 709481102 926478058 684783933 763238123 8576974 706052442 536714783 642398482 352206932 903039488 19718060 330747505 510017038 961765597 545050631 816424136 289134375 715142076 933693104 962838601 570096930 802993208 852388461 857375895 241054936 609191021 887578900 985397121 673626584 710863861 911910326 927128949 989078816 999373299 320120902 620771203 450523640 641839721 640304005 796160172 455734251 998303350 40250245 300471715 621045379 769401535 164043961 534322860 705084449 981552590 306140327 889741567 88091541 326775425 402684611 740427554 997631534 998995624 82168873 984995758 905672926 983152331 450834864 740745246 517359685 751580706 149085815 773029878 143991302 298199902 360491659 710843649 144026247 777290112 136379164 227692263 598953840 679316074 63224730 739300840 15306813 182986164 855309924 911820043 324860976 419394521 132357885 420920320 363357357 634844887 439250218 548275837 807638511 935925675 840104668 844711941 156697110 387089347 979837151 981367418 87980638 196928522 339172866 769673750 249088198 745040456 345947956 551625286 890330272 960000867 604341189 804769096 539180693 756916569 553494809 594407436 617657912 944260033 658702281 703486944 28969122 405151156 519553706 722561851 889320887 984167925 475819722 955070752 70247692 173776843 305621408 435755777 239048669 280283183 965529094 971643720 532356353 984693063 675338469 788706513 871770669 928113648 918836891 978944157 524423982 833545699 471561081 475430698 713819693 929880168 51602733 699748213 546421060 760434098 588004965 735657995 719040025 732492487 807365982 927731805 353341962 922571597 893299738 979166199 722455172 738007532 528859025 720399258 829076367 893874363 155925258 975530837 721895241 920152898 690363675 764533575 306640341 997902926 644257406 694221838 669442017 987911929 643659498 686490572 264945114 874255022 843601986 940013712 695383991 803268135 597757667 661750770 855315692 929243255 597606339 791212781 117886386 352889221 952511552 976311904 995104552 995797850 643360849 977177966 303904162 983618227 282490110 739946154 105633553 463441048 701903963 777328278 993874037 997414674 452411036 529112884 891299540 995022386 176684630 303777684 619755166 842796089 50316056 777604502 540532102 806365337 782870978 997081109 213519047 836008896 821827926 960463519 136167808 549661831 924688748 974775957 73906045 838141100 841216609 989096490 975140616 976550446 397872991 850165771 981781804 987874630 189842491 867277373 199813549 591266810 949987223 966675827 387137243 722527768 424631295 773741043 409190089 595027251 571750702 972513926 360717140 943389081 907749748 957892074 138297116 858219314 192903300 527576850 427839334 557674783 539545585 919810114 808333571 864353793 247867092 500105728 327716157 373986315 4993251 980883589 101587586 962442291 525151857 837472040 793488049 818220600 383463469 442455330 529945659 721855523 351732325 494254415 749654342 755670426 529405959 551355489 410701359 434369325 985584223 992952496 989660549 997044632 814366597 832644821 778253037 856116236 468887462 888715190 90149835 876585895 162667437 908885640 456095909 900436419 838395809 852547808 58120454 143136406 113073568 410938236 798123325 964061421 89619313 968814969 216903784 311424637 132935629 898297628 588644471 808002678 224000355 589389010 118399744 194986401 120523586 964035192 224105222 553896225 67830733 135411373 11723960 713103823 3262929 201492900 452348020 480181134 893246892 980558036 402193313 804845671 405296852 612757267 333643003 774187061 545444023 660101745 280507527 287839958 834543418 908937487 932704907 994911310 293883132 750327972 952910340 955522051 370533378 455782646 887617322 917281764 877400981 887737992 155072663 783642872 842089474 948587013 201754863 848947430 395853633 659774780 809622786 888735936 522992990 769919804 633821519 658829693 639949701 658748406 154132947 458954215 217302760 890798549 393288722 679627458 409665405 610855878 436352756 552134934 725343755 926459093 279783809 956412533 198086026 574093463 955664663 999966985 974057033 988042616 815820320 858530321 540908424 832878045 129622621 603122211 599529768 917616434 866003711 950009117 348001165 928606866 992784350 996783286 718302744 804829632 139189427 649601866 453086692 788105106 233731757 936683101 80754209 204538282 702412344 747719379 448154523 574480717 93331576 714852652 420610848 738472966 698630800 957070317 679470862 846045805 194721352 990731611 124146248 742972427 124297465 524404937 695831138 925348376 574389285 968531410 71748099 471092888 297085499 576626106 605084776 651987627 153840921 399679749 882909775 956939565 250941009 904545102 649716270 679742687 51228081 997158095 798284826 806457942 433999916 983036166 196129364 880365149 454967398 673744587 966520714 988291136 566816643 974165782 670013054 820693899 708191312 870304374 22255812 700717420 180155848 351707021 552837797 832909223 369095448 957715996 327185317 511171944 400076180 771950467 463216994 594748449 538819447 994017994 318024823 900254896 340278276 704684808 970817606 996748166 674286729 982075283 849646410 926087848 683961632 947425195 726764265 946545345 623840406 657147944 551715414 713591767 729448248 966049988 692972464 875653379 343501058 442432840 85209974 703674396 253786551 984607540 454553031 505270567 449517722 896748944 584902107 639789030 773533176 872324064 781771306 919429166 624817336 678131455 588781187 667517332 16569274 452026902 485976481 890091933 641642377 948909994 237888619 593065439 977515101 980911259 721498242 971841450 232013873 564320414 526771163 612281144 143357358 181510423 734034127 951767179 518098445 599533421 580328272 686433898 934835797 949924635 586105697 864046854 15289855 756558582 973272868 981379709 120684665 199374681 293038845 827043104 93711121 120542645 665468183 843914039 333011940 852412205 169094800 429608871 929064748 985817762 211823868 567414278 552592266 968292409 616833925 700703878 648134786 743829480 486759927 823787108 309450067 881190492 443643791 747484472 974227858 990781336 25730531 751573120 569298517 586145268 431291160 432006244 460928233 469392657 773131829 899285213 293782432 477026418 659535547 989322566 682686580 796186823 935140305 961130329 347802836 761392973 37628812 673379746 88715296 391272297 625012495 959037339 944175841 993958977 885601168 978877508 141550600 613606708 279618664 820624684 824610895 830808363 954448490 962679903 139861076 606920499 197018850 467458436 482923627 989548042 313460513 517174975 941921393 952842808 444702327 673500701 930877233 992693602 392715075 847459642 487072528 930988056 54448555 967826965 31877108 612529019 243961089 528372099 893172502 893496692 20276515 31356934 179422352 507055190 994886475 995124075 246211798 716220779 943823707 989490374 379989138 919051489 951018320 955159002 895797210 920908976 809380554 960271498 255230517 494579319 948536152 957535499 769480081 876279098 983898591 996923936 71413060 346053289 405162215 983726362 620888663 711430139 369971025 502472175 761486071 768430119 199990363 680295684 430047928 588116722 421497444 654087909 524450177 567673160 627715081 667932115 249647723 958459282 772985745 969451602 704568505 718675259 66400285 914740322 412214755 984991512 444447537 913493329 57571541 155397891 272185033 679570038 127067683 172885481 232470870 999288353 475280026 830779546 640311269 775096084 481070706 633576036 547967955 942726319 135987692 430674176 351931437 932079201 997415170 999395028 341931319 367259528 750473656 998827047 312705047 727368360 679500239 726409851 88225025 873318958 944130269 979956770 271958834 619314618 604442065 756654034 880842617 906265055 803764704 825066905 167133741 784608118 725647880 915623570 431744159 732670187 273982982 361908198 764674005 771378105 724841868 985022170 31629028 683102182 778032414 840557929 914704595 925933644 562354835 690125862 411875050 862933134 620118171 777021109 738132889 739879376 977730658 993036426 239786235 481235469 524714617 605243574 373652715 501921255 349123098 770516366 8149642 918483564 397598322 883561191 282186348 899331166 107690616 497220432 473805548 598599143 208923971 433835803 336349984 921676995 574341548 599116200 745158842 918080452 56878104 385934931 43387252 280013961 808237415 999522637 55052877 228247360 992099498 993661078 396827797 603801348 307684080 491962745 539744363 855945476 23748070 915209724 617126321 804351072 338998341 876680501 253036037 857001579 455435539 700575355 13665873 780036003 634308713 724103192 703728527 790283834 174774836 660802257 815816901 866516945 493260230 777896120 249539558 363639410 18394762 160524055 138800646 542042810 935525766 948350169 809624446 947514421 816797622 965797380 762736467 854905891 271686534 537689410 46501610 663584970 367512672 494950575 560484632 794658288 38269557 301173885 104681555 422900097 317622263 533768185 852480364 873180034 469086982 978329104 608297957 980640447 328870490 779412901 16277832 773886246 113885244 739387194 969635523 984047069 916993259 982678083 451294635 786753375 179666562 396035522 584884299 710451184 181788071 649896838 4480845 677865383 445816858 748671382 654103693 850719337 615163431 804332601 293815455 529081647 322621269 775231593 31694127 533594149 956740265 994446494 608686578 988744712 459011139 604450028 425269543 574826906 147477660 677486201 490770571 771781723 999172423 999585418 994778879 996655977 243858387 345779391 382074427 759626424 566756499 609968674 14036767 811757481 352211584 886527967 772923630 871492513 703063899 794692650 152700312 640738017 718598429 823552278 960880457 985573755 842108946 999105303 432840754 452528894 531047919 750534650 402337205 424260954 211739103 378535130 335465997 909975109 249104215 982861034 3493986 579644302 604323170 660337003 200375551 551158039 721336323 944086351 768336493 911628977 297189955 543547104 184457136 570493621 225288279 553304713 615527605 732703101 500962363 607945526 442614007 585841050 348205158 498685588 44137841 698717666 385939713 916827198 556315876 981900646 388927706 648605261 217598674 721556428 674504425 759493793 288100421 679125740 615981105 787386272 383236357 987576377 51941679 860561870 73862307 350771203 731637328 874043640 39432568 479500543 370356884 983357426 650002290 979512333 121390899 458821655 995206228 995313390 442394097 634804129 940942210 992140824 463572466 542623388 197602094 469712360 332078455 495631246 147178549 759853035 172898478 958268602 419350080 459361362 701190939 726903733 709337055 768000770 786658265 930455293 303286229 364139837 144120899 847203398 118379947 722545373 863383296 866672300 171219325 629452291 73369133 196867542 3548991 932044500 403234826 999226487 700298081 711623623 902179542 950905877 130442376 497800854 151429104 427486856 239332544 473587332 457101750 834012854 434830060 985687631 17190450 805994112 171363699 705652996 573689561 939138149 603298338 863885548 707476878 976419291 546032109 790905342 730437652 752143395 330174433 829889378 918803597 967073628 565744782 628776700 832326097 866512634 422274826 607043261 687831701 697187774 561524969 602590929 473260674 923660489 450295463 845008395 33352492 889921488 304410736 451465695 380013141 678606664 411572692 847278225 139366502 158800265 638648594 733536767 34017593 427388205 523922421 939094287 620063902 962874607 989403101 990638645 838495364 928243936 566758797 986264233 241425458 401072648 778586890 878908447 783263693 969606880 619360331 694896623 556409540 879581606 698014824 952863395 466718876 768812657 175544331 987591835 51064239 215510005 912785319 974257212 622362424 983871459 506592479 893297396 593759420 948259024 612041836 630547371 499377251 587954546 2729314 419700754 590634436 888277338 182096822 302087315 594298058 998288257 773325996 881431708 841985364 952076991 940555334 979591255 632453424 880365925 768291629 809462994 231589551 723096884 675777008 798472192 95160222 417129946 478334206 500150957 69607885 339346149 925569381 981996033 947617893 977265631 478524580 628129808 365216381 468227643 400482126 539665728 590301707 833875831 279814503 959835737 650149348 804823285 82266880 233313046 879332210 954177365 552914665 958011576 976784853 990837523 589511523 929641720 99038572 957325321 686576210 726251943 817663893 916141659 829831105 877822972 848917409 874797657 703978647 792166003 980463428 985966779 952562656 998829185 276737382 854265904 867025222 868640382 187190939 211878496 175535257 974676366 67867070 79574214 924474790 986431448 541524208 850644148 739301127 823113363 235073205 924712134 900417636 953527704 912247280 967854100 593278450 984288740 699018914 823735505 184878328 325772433 356217466 408798477 781062435 992469915 623975543 960451462 164963183 616390166 657518116 956768568 1650103 640938369 282444089 860728328 470216174 714712459 850689454 930381054 302304341 623076408 445823511 648452721 775596073 887662041 493620132 883728568 171196680 697248254 9050509 332817767 929534328 964897942 987410432 991218379 19437826 892290476 103756618 890525234 698864991 990548193 885322162 942852109 791351715 837657042 74979743 436914430 786613482 840482092 729734340 882110619 345131824 600544826 872765114 982090172 640002162 935741579 605942191 753778572 525005038 552842304 61504938 465946202 215505819 864894924 206324186 268387038 674018449 919209469 884541467 911982916 378814005 380232747 800435061 985649632 281531832 356868294 456737923 727477153 58868835 675460640 695849166 778308286 450872337 991555825 80722411 134279107 623660806 873781236 97503474 627967618 673247973 846262891 569832495 745381476 983565995 988777320 238649910 641356106 862819729 941357353 506378275 808875811 482201733 960976777 481746090 495068248 59002895 770602583 231039893 995018057 835984038 892056807 217203842 594581078 494492239 872293207 230511582 322930088 353346793 945315709 422762533 741293494 706218512 901484122 102719204 195064604 824183229 892514299 919746126 965654714 415493725 611734160 643534437 870715140 514108362 587144505 526882820 568540602 403447210 861082318 968039583 987152243 237494141 541675304 88406022 360773157 818453851 913570698 208677103 559220254 464714248 900279092 511817587 698232088 454218850 703799105 821080745 854819672 97673222 268413879 76400619 985946605 956962826 996619291 738750920 958518709 219864871 330939667 248739276 685910898 270719067 774359190 823684511 881952480 310015196 390465376 951121619 994439725 151738042 914074973 643616646 646370133 703073997 907498695 874776589 947536301 465634637 930787075 937315059 985757777 665896650 972755664 471462419 706982913 440291227 868765844 316224974 463194298 614726575 712965725 817245093 952015949 574312705 970208459 130012406 727406617 379955992 472933669 342668164 710865621 508565823 673518554 294411279 905313806 218075094 222589297 730758670 907722405 96743885 546159944 416721683 552349545 141507464 810732926 531520026 846603173 557848436 635604278 620623182 999959366 997468135 998839569 389695961 429619478 901065046 907775023 411445139 545869942 813990025 839562200 345660129 891180557 722881715 917545802 562196733 954196536 767838308 877781556 478219032 512077725 340046435 581182968 897680218 931677823 49939065 570233753 120870473 889495117 145330742 315069684 824194373 930060026 411439861 985769544 319617977 531738536 385595325 619827068 740175446 769270456 604180737 789836554 860458427 928760259 628652235 875625527 812699039 912767462 794990378 848467282 332159744 577643463 989703169 994954621 331338994 856066503 640916174 827884105 7245949 317629778 507635508 587697597 124900621 325006535 748691905 781243093 643322074 884483257 14695491 93987973 965304426 992780864 771406458 808376322 489610001 605969713 981852595 988964780 187410479 486410678 250254455 682546216 861063873 884900112 203760310 999773004 630221683 849801081 49464641 133833399 948411983 995331738 791018921 896968797 23472859 918894964 870731669 883809178 277642292 731788548 12631405 399994391 630776245 949548559 807681640 873616292 861837965 981225461 176647213 279540377 640790079 968364417 890972452 900136763 31721489 995338747 410678070 902754986 245164991 842539678 67593515 964732890 768729822 902538467 108260103 619547568 223815422 649065154 310356053 875599024 549399023 666699421 889390803 911640569 882067897 884257889 310546975 863198419 162820850 264932663 880168930 964961874 998654988 998877596 439716296 786221335 899864117 966726432 395274965 932337377 679855733 808574976 845925894 923256284 353945626 613958385 609180274 650535879 834409435 937717634 107383834 439819877 25137118 958312862 871910333 989603896 583868953 888926028 243437546 279209450 834904301 978565571 96935105 548289230 985055523 990614967 142210074 468328912 29573007 561645773 410563168 692829738 767660757 916869796 346497853 355687522 267460994 453907986 402673038 633066717 368889708 761371784 178133892 321976777 961623485 977896681 630175361 831154079 898634240 990106546 790716245 793630901 436101100 828626813 125590559 211570995 87402389 155470810 981150126 994862304 733701797 928829531 871612149 913341547 290499589 691854493 258516098 800823088 564338177 702977892 130969588 884235005 144028810 535459183 148577360 546684522 244058885 654484518 367378115 537808953 958710668 960864205 195649602 389914523 29466530 569921752 194797603 287696535 985976939 995887327 179957970 685463527 791891728 802444545 442100302 760250383 122467770 444585982 120387065 445965008 937836852 951605276 94012975 174026806 220589803 613700856 128464232 271082412 995965395 997794155 44046345 208491828 796143482 907046085 818271208 976655417 580420418 965940711 252726475 471296517 100531328 524034733 156129716 962626149 695255536 987165222 142605280 798640378 79030821 536986864 51615093 749054960 727014388 936614512 158563512 187522193 324336244 712252364 573680331 639192491 521694440 640954155 841993535 958701188 104919166 421130146 766355041 972116168 725750980 779831376 475239630 726148743 956111137 975282108 755812743 979003528 980078279 982864585 199415856 775131852 296987218 546014743 965133812 998625909 65036929 275633496 330672964 371438181 197331357 971084015 55457319 437008334 237496075 814036318 901432247 990119143 947032219 996526622 380462328 633417287 736050370 838988625 53072805 123054257 634141592 720118042 490964121 607708403 999780226 999820024 988226399 998598612 775234132 837127418 136259831 191486437 128840993 305298079 724958850 882312184 332799797 870837612 676609132 762597421 297092808 766647240 214394481 234124272 275312338 917169393 997436354 999273925 603728240 856617390 483789914 874023380 146049100 576463478 778829336 993868519 579722276 791005442 121491379 885730823 457606073 853367845 354083180 873226797 122144143 720221388 873819271 947881152 228077639 753597178 386430029 675518297 763720654 844606559 454399355 832404772 697861611 745060978 183102817 206725396 248312353 589407261 268559780 732242256 870319512 879747642 946289182 984225884 230410704 629614067 854102368 992638063 433800241 716843441 800201634 816855941 12327043 625427862 968167280 986984552 915437282 987562589 806377269 887679096 873813385 966442772 344202381 533674324 688238774 689041804 1616200 773644936 257605738 473870899 521429959 800482810 394710361 752675255 295126321 319658145 693884286 924009011 284941884 957213574 344083787 678400867 288499955 508155964 388673261 436672017 901848280 908283406 572092429 616406486 667806104 807205383 600392283 655561400 899642771 906223071 392890674 878722618 65517933 204180002 832279962 902627902 355702283 662521631 583994518 671681356 87254384 696361928 462220938 728155433 532197594 778536738 627007976 953764658 909842912 988343081 35605343 780831700 906276533 985435373 715480022 718921618 779073329 976455952 334685214 827619967 808366764 948265202 563193347 686735503 131506550 966357417 805870152 834418071 738953272 765632722 19353415 395317710 156882946 478873984 609204929 654316405 531339918 676098514 154557073 320109826 354211332 403645236 772074592 854053945 965316213 970415471 865587633 898294752 515903609 537128061 15140739 342354961 574113646 802563208 686354460 735642640 460922307 505190238 445056542 956506686 94201118 855232135 1750469 46433139 890262143 981033286 699006962 966222065 29405907 859058985 753988286 979019086 86411745 271207587 412348433 901481959 203204033 341228348 210637980 471451082 405004934 688342056 219451227 613065916 931906665 975250616 935162605 983244672 782052843 788817883 73009608 416432772 349694589 669023757 375554753 427264948 756937232 839823709 124775945 479344208 74442143 212463451 136232331 465973658 532019848 711072762 167597320 314824113 545158034 755429581 472422526 621205507 999620675 999879407 5184923 319071514 607457486 649247580 283973697 312189245 392075845 986096833 313686808 525136424 222490458 512876926 594960673 761450755 966854374 976105322 405613139 548973306 979424370 981023212 383405853 881040945 77356771 993760227 429289021 602451382 805569197 868997278 383442234 556551847 394279587 450983123 774672573 803132821 167790095 290364595 137904401 290395467 581111411 896991646 941420859 997589471 88722803 876024992 477463156 567831521 705845045 849137631 6051094 773390897 414617675 559234363 238211102 481766360 988927285 996103377 387721712 562418868 713222226 762129889 337029029 483512538 382243881 646019044 294013237 672264640 742681142 820609642 183837253 246558849 868845506 987626859 335533900 745206764 399354889 887283194 417090589 427489124 113710550 185538081 457676828 583980018 536711882 578498805 514747452 863955571 222920202 408532830 543093766 678742207 973443202 997634672 657534209 782102234 548615711 805056152 712060960 888862818 353319803 621471309 891095260 982329148 306308654 619696189 724014594 801912940 708285358 840825633 208555261 369404345 296512158 989308669 75888171 821446598 64268347 185938937 600951420 888202015 434066068 840341065 283649373 484173062 904288403 917061729 517879367 770670700 779828217 798587634 526166785 875412208 420250696 793082006 722752385 993780997 795234187 869750326 969716426 996612947 258687711 998441633 755792444 821396795 501158316 950528415 524775160 707836444 985635850 994449162 590877733 947921372 478843887 543030188 900086804 968222101 415561171 799149740 436123540 662565082 540228017 679202032 445016211 730294889 173311514 452697180 685401296 761749535 294827382 814771996 628049666 921196148 701937609 859178948 996393660 998365581 336540413 638217247 487760568 527826268 942724281 955839598 20761984 538341872 204856675 837463630 29263009 446078021 734041329 933287531 574469422 899442320 792991591 986875302 69026922 593012893 887895265 921625354 342640585 446745764 344265827 629133447 807840396 876090532 236621432 713586237 430385490 911365168 338131421 814781857 274340049 672819148 783257059 895165461 26367321 142060288 82296535 631568422 220720653 552824477 880428389 898233880 562863685 566589866 827503882 854038388 212581988 488342256 332230967 492227234 744923502 773038539 296083774 324058167 580477334 819764561 446678416 503102768 696444122 815002652 589068903 822057611 809279826 892415143 283281772 635357721 571730998 684892924 411690977 857782503 566750246 567442760 879354614 958006947 168746064 817906961 687172040 949409164 12009147 210042287 580485862 644750715 645626545 722195095 672438050 709878835 17905110 299435286 414646750 884302109 933451866 991775532 755354530 759545605 279494137 369827762 604241857 702900924 13140815 180925775 737448493 985955056 515925103 554870850 118503176 761469446 752860758 858449829 493017477 867054168 873739353 911713698 941755622 998216979 821356824 924015841 879308426 942638135 170477651 523645562 211723281 479812285 214531317 363922835 654204401 762150251 509380502 654994390 95051076 412194598 896756640 945603751 202126223 489208043 5018234 143274386 130506197 642843625 237157830 755850027 926540840 993241480 78695491 599688316 484690984 558871135 201444772 817144013 642770973 875862528 823127693 866242017 891580325 996016426 700735973 743961050 777247266 877389118 946286180 981087228 919501555 999055167 63289381 461311039 891498614 997319128 899679671 920831779 112095499 250631365 385520567 621425471 425067095 679775233 807495253 967553571 614980913 678309094 500337722 570438693 787349737 895672046 165090828 601740843 367607879 641576465 360957481 457048868 923417838 928804708 737126401 887628622 106350750 329784149 897571298 996516943 851850585 922707130 311296190 733054162 358452611 750260062 13163203 800991171 801352930 924451306 230023630 347633699 458873277 526957233 5745714 226701716 522457546 841558796 75084238 264769147 669796917 718902234 629637372 789324062 989041785 991611961 422770391 704620799 88292466 443001928 993370197 993670572 385748319 787156666 472711828 494139289 444058172 744020621 845939207 993761692 960150569 983008244 980147920 998980846 741071418 873517230 69326422 320058412 939774720 983495075 791611017 888463816 446381293 620384272 858956476 962911423 587636940 687513019 218159879 696584345 56334380 340994397 133636688 204505973 581672306 943624011 939994506 985779555 788925831 909250967 306820483 565485990 545338406 594236708 264619697 571939909 955685623 967350212 342025787 729779330 856557483 966809072 355548824 466891567 717703734 930394813 106667378 296884949 930309959 945455511 316201728 424093483 18859387 99033510 181763523 321743444 400945767 525268817 718440168 972038307 921247449 947417601 468884652 941775706 632440336 632774415 6923263 572792670 746536649 967472072 475565467 996228628 579311932 645513541 564453582 853678631 566508469 988801155 632608604 859518828 448854122 778210788 250891897 969157860 391181126 961009823 712002635 797305489 158267863 658828866 154368473 547217435 554879906 593854830 423112043 793040512 34922020 829886566 840724732 913983498 107565689 253632656 422855264 613985643 329649170 950646113 636777630 770312478 700622751 931643810 721758209 808027479 906982536 997667233 72312060 747468321 410717906 527023622 447670561 764999904 783229165 882942837 348170328 494065533 431546486 822476765 221232227 716517471 601357009 607727489 400475519 440049059 373097074 984201992 359206981 894477355 157721858 877937225 641038362 818567619 294339372 593102222 138122977 277528701 587856292 854054473 793824865 925140660 420196720 999023497 804311932 892399545 367361557 899503887 897593735 928785083 705456145 784022089 817595532 886436327 668741553 732843042 388238606 879249974 713028028 955313304 189848945 774279759 813792354 950873652 306514918 931398760 253007665 375076462 80062068 368679233 794720768 827782963 584637434 944901943 981470619 982737162 92431199 399718670 818680125 846675051 899899240 988755758 326566084 339892052 587828816 761442544 344966135 427493725 844373996 856035963 327510890 718341024 746265194 909905958 593602005 796572507 710767546 987967838 432790547 786744456 208823195 410617884 506035456 512998245 782547075 990557713 632692049 747903685 423828064 583867794 160171621 167365099 487188948 505105883 785259893 839144405 556205336 727297123 967595631 969082031 227609390 279698998 749316539 989168003 978282307 978401719 105867660 513425701 731327676 808924623 256109382 318519682 234358107 508328582 136776439 967207275 547787873 787989517 112595651 478162191 243891867 956619289 947108410 979318327 211425068 949304779 846571488 911805295 719171048 761725855 345989049 724135683 420977159 879011719 236185271 837391823 776797029 868166540 415901184 466000077 157389666 413441296 639331851 792100771 344263659 433309256 472646983 485799110 224842874 422849144 528609611 953499667 575465 438373621 985884410 999730467 806061618 992140471 39146752 96716839 321392000 738166339 454915955 514413842 124780495 126399408 367403824 670321770 453416682 504231532 836776310 987238310 215890385 821605504 721135543 955062367 71634935 417563099 83819336 962819116 826353344 969112117 667241766 942893200 648576743 863922770 617934574 621663736 75630031 937460626 301295320 963990738 408486509 942715012 219031690 705497836 733803465 785691439 684019350 976478638 610239453 820552080 288933971 649263516 188613424 548092601 825454466 847583429 239304615 538954823 906745540 938688781 511277816 908295730 785258835 907265282 521881719 926526423 557732947 732986598 700305232 772732118 409884644 773362861 551901190 788055254 987215478 994459521 277510195 800997893 674470832 702836928 535984326 609053457 197929313 827664628 516591923 543352570 874792208 914038758 552379872 848944823 899367564 938736419 629086008 934193628 544677270 624981345 546589951 734915720 270944536 977582713 117755140 860624561 333608115 605425290 490858017 732271876 479191199 975258545 212750122 962766699 282698055 378351883 3936728 924881239 313832268 522331622 594586592 843884951 720531600 983290640 461088192 468572417 558070321 733263969 85433245 779877782 368109011 436278515 952126739 959693123 412985441 661697591 247918696 712789135 942982905 983074923 80652353 996636025 951342454 958667733 341132717 805311904 17879251 449246402 919194734 983353533 886061190 994877181 748640888 950029051 569523631 724457743 385984254 863171210 705403075 848350777 680266992 994772543 755514059 832567484 165842126 311681109 498346407 639327607 608293038 931407798 433636119 648626000 618741683 734405102 373875107 567914230 251317388 838428995 927589509 941826039 113754898 710994114 842893943 886105949 876852154 993009854 564445480 633408161 405900187 992306608 985732480 987557977 516826591 795879965 952106738 991501924 245407731 716939363 983099014 991485983 183463230 216917850 459122534 877313294 564394718 702043031 128417631 619392830 591023812 632949514 451340473 524364191 787217611 959875451 953997945 989308914 239753469 834801647 404090031 871354232 269189502 359802613 65735460 262094957 54085374 58801226 736838257 936062312 890948505 919016718 637749 714155395 502323896 663447267 235601484 746606127 498693779 620933777 622631651 666650263 587998582 639053117 655135800 725593675 394118903 476025968 908004739 936064838 585203860 764954079 213870314 650290502 321180570 610161519 425458907 897254421 537194695 581540456 137059190 919275730 436297464 918662868 330205011 918477893 20779918 153739277 126061516 648233751 874599188 996823067 88029698 599313106 695120209 715593671 582577675 674824671 913374003 949936560 674699453 973400368 914047381 920948881 518680331 931688908 160526551 259595614 483095566 717301826 369493195 489150715 848269696 852643704 166560681 950693912 331089350 449384349 762543471 981313835 870004955 938449412 407826805 452537270 303150195 754955203 31033175 737934956 183987127 246788274 489872942 830323783 409212506 415464847 120285991 441650036 900349605 999005915 929551912 978234512 876105742 919314679 222183707 736654093 336367196 917311261 542753438 943889270 194234107 642008172 474719704 861935383 5203789 975424657 653519824 805013377 39052411 649826744 112752443 263945087 876697769 990062861 323106327 544851473 736638631 859298000 87392314 550335879 510342920 954081410 769911783 951022970 600442277 989060709 255535462 884966359 695040500 961546672 190082117 964053114 135964357 815621522 656956602 754636165 668170371 713197122 632516166 706008179 731061431 799020863 24530934 272815084 519278589 911635802 2156167 434659458 794772559 911593601 739326259 910805042 181744762 738070867 673824169 953985948 99966264 533297232 687098384 986012310 598959871 792679537 316512420 706944940 713042624 805983470 729433008 836102298 848457119 870997005 536758365 580017840 687325693 887709780 777205099 954673812 420747455 819753629 483082026 813265335 184144389 810468442 565473881 958335574 194171324 932935172 243997889 815019042 967587136 973272532 315713601 901939745 666000163 681280803 251088280 913844693 755654874 875346196 250892551 547189233 92130018 835999273 532644218 535469410 537636733 643916302 386131337 584933133 213770069 733116332 988584712 994099261 454985267 691214628 34155550 233862079 536717502 539311087 228016396 650110623 139269976 910208517 488211348 623601983 649562070 734164359 537740364 727542198 429783605 580812930 750565995 966884521 27135766 222554866 906284078 913825821 23091418 700728547 453050486 523536879 497490129 538820236 803994285 858704076 748863968 759000327 774560154 796460405 589308757 671645098 126098855 753232434 866558368 911654933 990718036 996433187 210638184 325615144 143483098 312254880 364131081 938684736 724329361 968946859 927241735 951172510 697954299 812373309 146261916 241310714 786374078 967523651 644356878 739234204 612850964 857685776 545437440 751150500 72505407 379287934 24650142 709299882 780650623 935802800 282778264 385633156 292652641 398655537 615313377 780000942 519492296 780789430 781134832 833557566 25395525 47815234 9470722 723545918 87007510 505380479 309782152 350828734 32222548 225593827 977826456 980296210 191561064 456539390 427693480 658589465 570156082 603484968 848782952 855997685 443425834 869108029 454499329 489769747 987286502 988236973 697762974 858341715 625831382 909473636 734075613 775498037 808718521 959646550 968391107 986790213 975072599 981539831 593653304 769777216 179158606 182174780 484399594 794424370 689147452 822549927 837318497 864776772 297491791 865745862 560018054 781444586 439993249 884356793 317346873 669419172 446087371 925153843 88865207 601486824 549610585 634585893 217961786 419632662 351838624 985083147 44756399 367149206 760710747 876959199 323840899 771257807 133136582 376333526 659284636 879160153 465506291 592536524 410561493 896127004 779582263 898853794 353525921 979300682 62684471 519419067 465151195 634129787 631641723 637091284 850725219 959642496 827683139 975952787 720582606 931557773 304243607 842305712 22617363 506038803 313823791 379022627 641724887 996835939 934347119 991402665 890379285 957448859 73844054 767748126 322240935 707320112 886207890 889900324 253678280 530308885 706678987 923336736 744055457 777694219 730998628 924534850 725538187 895559632 626346283 669268133 826241004 957542782 946856794 983601769 105674758 885994777 96292259 522272165 538325058 917767049 104302246 529462489 479846192 643968732 601751034 857513811 46996617 113593628 63767421 730784138 847597262 961480922 310741750 951691099 46575984 189527743 595309088 787613512 88015913 205410887 988152284 990784692 806083440 809685126 472114699 482840423 962304003 995326192 779965145 791780608 487518216 532243435 592193010 666417524 910957245 944482153 375293084 921827329 801808050 906126733 460424067 886451553 556541183 602887581 371891560 635080166 428083787 759092535 462310740 850038907 567224459 797944608 534078867 618960647 356417787 751630793 538405037 944354254 522455517 548232589 948771433 996101569 134829530 563571495 390980227 730165263 402473725 907793813 204325994 376480702 492632861 912187320 641080019 961350022 378318404 847250822 12340957 487502544 535872827 716755608 897445244 918836463 526582371 863253170 846013615 912949126 729974256 908043534 709216598 918147661 348769415 943196648 891636372 923265942 753245586 805567233 116914699 966472765 336399177 776638740 891647741 937231605 720905168 947029598 229496033 711772433 205724835 227462794 289093063 498256214 143441196 359970169 967700247 988789573 962580608 994622826 23961581 743651332 693080260 702687152 230828586 951443906 481440559 733756079 234009291 414628241 526965815 840065328 732042816 990479690 572670269 809323021 597552224 649169502 648527905 938258935 333367971 595524573 644232666 670667512 442488637 951646090 920464797 937008946 92486050 724126543 351774164 701941329 244202153 546853217 460108930 694461462 570757377 938660216 27305985 832430975 138056723 332904851 387094563 831672752 293166150 529317162 783228556 827728397 642141980 755669988 382995310 555949319 792715606 989036723 531037748 850474472 795373263 972346047 362035755 756083038 908291393 940613284 790513118 820177318 220221893 557110571 896790925 972766542 209683254 351656778 982826864 992384944 617308912 973282091 168716711 716097011 889596528 955932576 763669241 852573503 139040036 376879861 230325603 431439653 89602803 190529873 54190920 171100036 545856754 656427672 946522635 948543572 438406668 682331435 492680945 960071373 834582996 844785049 963836483 990877741 419044010 537088541 155683335 623691955 788901677 939516574 445735634 543623309 141303974 300336114 772439771 782385775 284974691 709538141 735526964 893338851 719599218 876968166 840754696 875143488 32716390 430994075 854579518 994928451 543931388 912125581 456686725 574081182 783787944 991627990 793023192 976269902 61452163 980216578 858368242 983307382 743125013 755693898 303606793 626576837 741240911 746108095 289113381 662677654 168903246 380571271 447957140 935462907 275881977 887667950 905970616 977654574 736538758 935868026 717072176 905587691 452978265 997700400 880796945 953659382 779841649 941108997 86557072 574603505 526957085 636408558 439760430 789398507 493586440 568653087 262847391 338083316 847180306 961014767 973473304 985446622 637163742 795339890 646792411 970895874 987150306 996922448 785914345 908178885 181966485 344271001 592584633 908831660 713547520 892623570 989728330 998884798 375727074 647867721 978799580 991534165 149099443 656259002 638643842 819648990 487737500 908208434 298880578 758882766 127415986 857642848 445494811 638688270 314490519 645911663 899963704 977969236 951644953 992517052 246559826 533388077 719019715 959834717 370898916 522180131 145016231 896663937 962264576 982468197 888152211 984487364 112010588 849131167 101854725 766704802 649788363 718625956 153249232 919061110 801779292 968618543 883233376 892589479 885407249 976417680 64256007 490649691 502559472 956714884 59899580 885092733 740494838 840816537 175245043 911636063 694770625 917469976 685930269 792303766 230052379 851356023 206565349 546786477 361120773 853705636 601853442 786635502 66888015 236963033 983425293 997927223 637818318 834033952 363887075 843218915 23012206 265064732 221176729 594138061 687248990 900529128 841229624 886007202 839842661 974822057 358894783 967267894 240246750 662375522 45240446 195039597 666054605 735399880 493945897 567456425 175630387 596633526 908329493 993208207 794025784 825347920 915812092 924930608 582445672 965285122 69489641 846316209 914491880 980170161 164369433 516931418 131734858 281689309 916540856 949745715 380328476 975705600 643193917 784711514 312922071 859311545 222494594 567627652 825165729 961417378 681465398 761689345 763974889 793358175 378207859 615021488 412493649 609137809 448879752 785258471 45043766 360326221 984549254 993435685 507316659 713106403 431980576 894186306 596822786 873344012 507540419 952818281 967934040 970813862 293480353 416415689 800425685 807077290 437137578 947970851 932822369 965687584 901806987 979029276 72950391 758757309 855680810 974879028 814951873 883528502 243758828 415251358 318694375 318915461 213110902 269274369 559687893 591877065 741939738 755796638 260219153 620070549 309859954 797348718 97244363 192245534 511095428 818156760 461314363 554436044 145792969 812267897 319929263 956555142 113733355 967025284 760770613 987238729 502713699 748863549 874336423 879657944 388740468 478782141 938634010 963038286 327043825 738322993 666613327 897816271 691086469 847024914 388758376 665105352 884246294 936415139 939804753 985925943 601972672 965418527 273840648 452997827 704743207 897882939 79883899 218259904 683951455 941112613 511767736 683804645 116464518 960491811 481405301 497858971 618203829 814746877 969792816 978282338 308917673 634468138 903277966 959908246 849698977 858463607 575293451 973221216 107438662 243540320 170163433 456121805 158131845 272194429 484881889 627921737 721134415 894254106 329219004 718276472 41347049 261047887 719104808 972154467 890252591 981666232 538135470 788143180 396098106 960628072 915118648 966076569 248761300 437878243 495811978 763754170 300849792 825647247 864051961 991030746 926693958 955842210 566078543 882540608 722331499 891878626 444046779 492191281 375136888 675086135 946043402 960456923 979913819 996466934 98510213 217207048 260010845 537855035 855085044 964845581 399699568 711656941 131198147 911557080 394913584 753159157 11805949 71942291 904700923 917711126 388721641 795231093 161453866 229505886 491199322 534331280 907524811 995166170 204394485 439155457 848514781 875737135 71722773 208404617 935141818 984812617 93642150 650398277 356770738 928991552 891836167 913581244 373991380 955286785 277644021 707985863 685114371 869255283 155540174 436333932 497347249 819853107 252477536 638255045 941225978 967683231 191511212 422391607 941791278 978000757 889138813 949391764 934946729 977315159 35426600 104231590 870908642 979646711 58931522 549504850 540320888 670869935 536417791 734527296 17680128 330836836 545123778 567844411 610666675 863845731 854956108 924175582 893669409 943203571 304632158 936524364 757103347 802162354 691616453 724986647 878530937 931003669 607433979 758834598 370836978 376325480 140469957 972818279 648258966 887478749 837960448 838584579 831204054 865508110 62364117 953007385 535946747 778091284 263095399 480549912 150067297 572772156 5412442 220254613 621445116 791652114 784740460 980038868 439956080 966897666 888148148 973001440 816968010 962870930 780971160 832322385 661928811 796024255 786978104 822688434 524041927 639411527 353325578 995607973 663854801 921176777 467512544 892298157 295094249 647068833 324802906 397408173 633184550 906598714 468845087 796420962 965296807 980426630 845595389 968388278 440439947 688113655 325433688 745900673 491688841 622243336 796879805 918768382 327183619 807713752 688350668 857641933 530362200 558121453 55911493 268846734 639017045 671659585 423165043 721762364 956619352 996218432 657509671 918727905 260425201 480658421 617579546 620865874 612433364 909715477 274112649 992199078 205319219 493273270 897229671 942358180 369774578 911888900 430404755 522314379 25303933 584893932 519845875 725084766 654670745 825624268 620970452 988248444 804530587 805686683 923430130 975693903 548781717 753744677 916867967 959834790 470030439 490398200 910338694 995456785 677732596 991241401 28826318 603104404 511087071 744464577 320562803 546571779 375523120 552411713 573475720 662763135 150264538 280458365 940829896 982080038 27686441 515753447 611109990 759979992 174621488 288979200 447619624 924711206 477902953 768910326 666813245 707305595 211565876 340464966 860675353 942621615 96198778 850961226 25226939 230784438 27322915 733115366 114554385 906915891 683954466 753842178 90699937 536269068 545383261 756435771 885836247 964684083 156827707 380687725 443851919 986648028 470635241 704684182 833601680 925510695 780378982 801838338 841324590 943749459 88718530 631751557 949548449 987247156 961543093 985744252 72132772 440869905 627936949 957348181 77394077 121195967 943558260 945691811 4678368 490521091 222712329 499096811 411778231 887991689 144473604 883559588 870584271 924739891 996589254 997083862 137113742 790559085 610901767 737616160 547605610 695928480 247735579 468437139 330818773 753456390 449740955 720838877 51004068 420160466 729436131 748064307 802336646 877970898 752103964 888588250 122182096 605483345 258468360 384760037 553421233 806396817 590529669 713776337 179130545 321461263 585417171 906602767 886852150 923908360 850491409 897973420 367424308 461723977 555781601 950466231 196612211 690597502 491613292 811436724 893143056 933491370 36735514 840714868 352120218 516095990 525308873 950050188 445000188 682172889 615699171 719125651 54975423 573748149 902537267 947395694 999780057 999945445 366774538 881224935 944125202 961575578 193268121 698608365 157853574 566581396 259814531 689997455 369125654 582963196 629909391 844060605 578823130 692325753 618457838 778355321 794050336 852505879 561902351 631752366 941998830 942103790 966790307 978903689 770646569 926029657 372922739 417491653 991857078 996818223 484455809 558832958 65556984 986130559 21342719 959337765 799129811 844593844 423926292 531203928 157209830 381384948 889348466 967285652 870588834 966266062 298633683 373714253 559467850 926817892 690368763 834558543 800362386 845298111 890217761 920955653 495568959 730198513 828055783 887485278 837501804 885897903 38949799 616199250 657139401 735021945 530431840 954459073 635221558 702595288 954818043 979977859 966612365 976294481 853391281 924149619 249638111 777368985 950187167 954657035 814991903 936659863 30642133 438778975 701999983 975067524 742884164 842554651 65792203 906438677 701063963 743546739 404441727 860117317 383015987 965846136 944728508 972810288 925060419 936383420 684364097 765443677 928653146 979146024 653304419 891313506 518110968 920447682 567821845 687418209 404046291 613679528 236175788 345855163 183520342 793722644 372758938 804694395 72066522 446018454 299024556 654687766 809606924 988196391 220242531 550992541 455238367 946479191 782481165 991926908 604465375 796479231 219118905 694243504 988357749 989186424 290337748 372878077 421387326 806645314 302931374 344933920 481016589 936007256 50076450 601987115 917825647 991585610 818204813 994062629 61884813 585679574 18425114 271533334 469831980 826191037 758322159 967112159 360752651 841955431 546842759 565278165 49312943 85987246 321870960 616060266 540238764 693552119 842186217 857064664 927047075 987148259 431536392 933607214 667741260 734518164 727687847 833988864 371139277 621972577 265687065 441974632 847282014 911978168 633300114 803277058 394656658 672046238 64704751 154684845 547721264 879976874 611652403 856134593 870069397 929720607 645908643 812916278 640073404 656390392 847712426 955246771 639009490 696290444 705725033 973523766 540306303 675351526 789063808 865423216 314744730 476701533 545469556 847161050 787770510 973985376 679108263 758433391 149209104 966649261 303582014 961765896 815532284 946316814 621874108 959960958 484811338 689443244 297531508 578428973 245129008 591142345 519084304 858086826 896728919 980764158 514903905 825775215 734446266 920178981 899664642 923986249 862441087 876795097 181323645 501959839 151931239 779395414 470105907 985902060 397147063 874231065 23188020 921951184 115851884 487073404 768752168 879648395 969437074 994969307 590442066 826474396 104147919 592751798 648499858 695258067 314483451 477021064 183181803 957786838 316555076 872852532 132388548 866007865 248753962 519206494 937923950 958032324 690131931 690934599 218351180 258270280 12942154 940187565 711618515 786540446 322619313 714136023 648412860 751938040 663562730 893024614 778054489 910085225 814627193 842624276 924142921 980152054 268120279 870598831 696434002 981578106 651789998 790476777 566113023 913300649 461577970 805181867 384753318 670086028 108927689 227584519 126357057 647631101 223890498 596152229 53081858 982453721 592866046 854106592 154656942 154752999 63890317 299067065 32658987 99009630 515658391 672623495 553305477 759062071 633306077 835089740 654709646 955751982 420808071 469593009 682640971 962653456 321348937 770411797 769081865 779442939 627043186 796932677 49164292 166630056 965682124 969747050 743005286 895128800 145052229 244646984 865163181 954636814 156438019 209474440 241384377 299262424 882251915 959177825 883259728 904676777 42654667 244513145 274017171 673075066 726823279 988995676 776543890 863882843 602074221 789163424 210836710 767492055 48073137 582865705 318559996 745466487 624295868 800678961 486593241 798597494 964683794 970047559 580117212 950965716 465886638 680609814 662806619 877820688 858064381 975971210 138346053 481300703 772501086 859630318 813189394 896989255 557951423 632788942 311830761 380001577 1093568 131210308 541565739 655600947 263296382 933919265 418427645 716302264 212522733 366900869 561163474 566299091 589487346 761936567 404104058 642512606 725528088 849765170 164895839 279941206 888766867 923208693 817597660 821861099 334478381 742950318 965168159 983333916 527890386 925750881 463635313 552485309 446702704 888711633 202025671 770425729 596698826 976453906 63610149 502678781 264471188 387930460 33535951 45429990 544320155 663086824 638988377 777939575 789675315 888970126 872210356 874900175 248740704 293997445 690509009 699657904 979884978 995318312 768623326 863868773 86545255 414014830 95647691 256254717 283527249 885910057 233604410 369130111 377800858 721360286 599751648 695218748 850166849 990951576 806551909 918781462 39742605 318772517 359289352 697214494 715957508 884912697 484789269 685594245 15833308 282490802 898572709 944726393 546015282 637644879 533837362 577796900 199427111 672293930 172746999 701117142 596880461 710688271 9141260 979059278 894989007 934110748 631726829 778097394 551616814 669115261 265966361 647641847 384765129 911205465 700483848 828814599 264415982 970546651 591738571 628497426 297730461 839701785 980440233 993888141 525048502 712641034 662110003 933349252 424914491 639785829 164839910 812513953 392341468 446607696 339680060 773138439 100824682 179666089 215121246 854434952 639456188 758574263 453026932 916022901 941287112 976573605 4482589 406142143 833988629 944039855 696678030 933427455 139592702 190021409 855575921 964687279 643928002 748093162 96978574 628812334 79791347 864705835 302393648 784340202 693882874 734568256 934302940 938895835 979115817 992537265 920779578 947968979 724734329 811967765 194646094 746113917 801133558 906107221 211435514 902809354 594867710 765152433 83644145 242777944 485861308 570595490 615306910 801405726 231573541 515217874 77701840 105061931 210993454 390620847 552546384 696222250 977554073 986830132 349871001 850342087 254392821 499411178 505299997 582529265 472015025 655808802 495237745 691648659 183590404 427906299 722607050 749800025 505988541 733292500 780748252 792099724 931253075 995578588 379494010 642983573 837773387 998181795 382563952 584239087 179154803 283040783 160223559 339190226 75339804 345284004 67220661 242252431 355443698 480469624 114065129 904699283 37566832 254962361 855203500 942529878 445930197 545605177 552856417 691372628 595380568 598137673 389948389 592213860 222846598 897442641 372830480 957850526 322060667 338565190 14549933 338324754 476433882 875444122 878555691 997869302 246132123 262980897 904701348 992907112 186470088 785956359 458111737 703780888 705047115 711950805 469473979 816947443 283024186 789658751 115034203 955036493 646377091 818257994 782043602 790467683 103455493 618215201 538699786 904526792 600495168 678191221 949497083 989950083 965938552 999142911 873575146 924703969 433589903 891291612 903568913 987685547 572495422 987873987 844610092 875012330 548290232 849326630 42636197 484996778 16720453 215409098 627814644 941566080 851358078 958982510 67858116 978605247 980692825 990898741 222610407 575353012 518366079 981792857 878430777 961136772 414767434 602974977 228690455 297521531 74999740 568161998 697214728 765355611 695545122 780184700 624966382 942932985 902327063 969310438 76042407 761933395 963267872 980111861 481735587 869780016 281725172 590196945 74289770 931830231 892971531 960558178 449526467 878784974 341471577 704031262 223427267 712153324 750430992 800392520 333528779 673992582 493912019 495797021 700235577 797336893 439723311 713310593 846338639 976102663 259079103 383419148 102612937 117293335 27302578 664853106 779098111 799053449 722944087 969693205 284758516 879649189 926301115 986944964 719693727 755800986 187381141 761458454 883031572 942332954 451168920 935987047 953324337 983333838 903327399 942708548 752251516 984076481 291085494 743517102 308095486 971655453 535421558 689867446 635804461 778279972 424600891 663203343 778862272 959895476 499624846 748643279 421725771 651080412 688839522 744623620 498834124 799370805 358661508 712881618 241635105 650042432 361159352 662796789 79372864 279568826 772586750 985378438 179389659 356908481 751472596 880171475 411055348 792419667 879261580 889677872 237857122 410711773 338629564 569067467 267685127 661185693 983562400 985366227 513017498 962485367 136984269 185148376 820523105 994045835 279484 830200053 230204943 542102136 334725642 496339546 198627507 819927993 643382065 778806151 478253234 704422876 289471878 417478404 522979557 990637958 996510469 997530275 112305380 898881944 132345160 717984256 550517393 882025014 473408547 795706383 56254869 566529458 518554755 685667068 193516623 762618239 597001142 605835331 1937069 22575829 742132405 863198118 339153610 547726113 873867791 923150073 561709712 703014681 674743501 796843717 217478238 322465630 892050668 911176554 758145459 996512086 742661375 749643874 856706507 894990269 409688105 438052512 483987823 592749656 307133413 886028029 365547186 652397134 622980872 975890019 959079932 992209854 219410213 277210504 291122405 393198690 887573387 987135298 827224235 930874235 660014727 888026166 520901733 906935702 643968228 921176267 117413659 316246774 390691929 923952844 424379033 454749790 736680477 876501871 856408100 879923867 838738175 913551320 478597997 927426725 177561974 607440841 284406793 696385843 899825682 948155182 979297018 999042977 543279565 710313363 111477557 806295227 998041499 998578963 125914216 332991803 312115972 507477724 483572282 610044334 34817283 636134089 531599778 881577722 762143724 865416830 752364729 969456290 355110381 393705614 94057707 233113349 984979536 996861956 651371124 922591621 161628658 735505631 957497477 984034773 802305239 951846684 599362097 893222605 442341261 922150414 787457794 998544013 215098237 323880713 517917306 630827785 23295179 162911558 446535181 794231135 185158004 981632144 600353113 896805717 893219485 919344058 975060282 986346083 110852138 554959438 237570461 803059926 526880756 655602356 845936022 943196082 84967480 879114541 375402846 674401971 237830851 305294432 308427077 843194199 152742853 184191870 215898649 772657303 345424365 643525819 27646216 846157035 458966274 824948900 434196047 940295745 138548233 291249360 10830199 779187622 229955256 386424469 671157507 782084256 181351909 292965130 211066696 431942400 801538781 885009541 954665996 986741211 17385858 163153657 897388812 978523216 225008942 796011674 924251043 989603440 857745772 917220190 402780877 764384803 581087503 897095453 310494843 883248713 286877198 548376231 248448845 764993422 193189498 977862335 442551025 781753232 341776333 485842871 179402074 247822051 53718434 377779342 510481759 956393184 485409708 989304150 169087507 729990404 636613098 801782964 5115324 312035925 317305488 419755373 99956973 625450771 700925297 865843431 536165637 742910087 596563332 895566459 792388215 860420990 133620443 423583604 602564161 696135326 571371905 698496880 928222337 986921251 336677543 498925078 109385708 491901125 850300322 950268185 515586339 793887884 15384897 656569780 531163370 990354306 130143798 170466864 414335715 869172411 212546520 617465880 446557316 906939807 38446836 499158009 574667419 973301364 116179220 344133185 755070120 838087494 314385719 830671327 42508916 92673469 644909259 849560437 610760601 793048962 830782860 918773055 383571239 677618332 754005661 949185663 895940979 980938968 447833177 905787581 916877127 988143661 535790749 804151927 705760364 954750987 910507788 931224177 184090345 851256273 112451556 797012488 558881795 958438909 108648903 333822490 463512400 776807395 425747513 844537214 338060244 522218692 78745425 968496794 144716981 562994603 570163810 723468263 369311993 429428666 529279999 766443953 159905851 607248794 711342240 735686647 263400580 524430443 715366498 934833812 830532566 887931076 829264070 875230835 941101923 984026084 679293563 911394213 495602707 564639814 961520344 969203757 895269745 907579611 194826217 231212234 412887132 420911116 443296469 568626870 260243513 557839456 252520132 454916384 29578287 612318750 644310317 666132193 255128807 497645830 413074789 714031704 287634234 335660060 506940225 542788056 253692030 950422932 929687217 945630918 338121123 345636789 161146112 756916115 447128642 448283392 806928585 823895043 658302566 951202718 457626955 516490138 55823514 279243296 105165147 821710031 573087711 699378130 499678668 966638873 614178060 836032897 344988300 435479066 310447919 530851733 10002150 465075819 709370313 763125065 713589559 793824324 119015859 350520901 462339796 998662251 129349790 741956552 58128994 301793310 598978302 602417168 503514896 594175380 798539751 828444306 301737716 664454241 446118986 518997997 68177710 711664893 872852327 973387799 355574902 393050015 465388726 790160072 593814362 750126205 31049765 559233527 393740120 920287021 961032559 970395409 288800942 848091429 548198280 797448320 194048700 980951592 623538178 898361982 547886723 556123523 570392747 737226199 408405566 497644572 846115366 954809007 241603332 939562195 819641913 940940910 74747355 392893301 662090178 850649121 41754196 375668339 112918379 845981241 170360863 729488794 885421838 925812026 946778075 979888710 454374308 965759800 261707217 966693990 382286952 514916351 600366808 782450854 783284133 969179112 974765301 989265322 227359086 918477287 867954312 946149419 10645181 466786959 851635007 890456210 367879987 674766956 149204410 204036798 601067361 921412366 383621149 513377586 904204909 987635722 756043363 773673889 413260999 599025963 397311024 713362145 555885466 737501960 556667924 882251758 504364454 875531462 602199086 717706886 959312903 969424353 88584886 503657484 269530545 767352588 576440040 803123446 790084863 881537517 597453727 813485261 351983800 506432255 381298355 440376704 475628228 700530137 774184306 859956968 468797967 967004270 281699473 515400102 784707347 901056579 640472067 729415650 4433566 312957809 80445648 501064395 7127925 501569792 716278004 817746486 597808076 973466635 951725128 983371949 124860263 727283919 517188638 584735537 630404885 670111283 31934320 993116283 408247989 915851951 886399496 910067547 567353552 833360868 965025182 968855656 900023603 922344808 163169073 963877009 505704781 972511492 493968459 579961347 14153300 779154995 526057851 898186000 915808021 958965374 461404124 918081123 584517421 763463463 439711644 740812568 172123494 435947711 284572115 793173796 260593573 952065158 494107348 986744922 941058374 976269977 960649133 971451094 957292712 979505627 483638953 925094783 619203558 715444636 995431813 996200516 390771082 475887621 37455754 569176946 92437999 354728021 96874002 486630197 436782897 762259180 927881144 931218964 390656837 458649058 165211486 518598323 952344143 989138675 221302781 425152567 809941224 984545277 35225964 748973648 51874040 946577627 630567650 906435752 667045962 796349566 677000896 684438864 58283926 976085850 307477546 628451197 445854387 766183368 478911627 848683937 359156419 710196353 707815437 710900197 821816552 929669741 822523783 901504380 69466988 74524749 356680351 479714517 396556539 596186824 450870038 451089962 732915358 922615742 511155119 860621870 346244909 393043695 984793271 985641843 568054860 654127141 281692810 782011896 840683984 841219183 880203726 899495365 501192404 908791561 188967547 911368770 595787928 986127911 56074440 278194020 777948888 853476247 541956060 757031905 303042319 837451584 147376965 150223403 594989974 861390206 911376268 967570063 400869529 516395762 570900620 878814229 834349068 899127477 369349726 398266816 937830854 968730919 415789853 483015783 220346422 843093427 821332775 845844038 686669677 693080730 55018719 976817060 603498660 655537118 441586460 573431197 424120339 743619871 456379757 573159057 400052112 737086672 427750985 592566296 239872099 491089690 156035428 893855306 476576078 601684087 829287543 865440123 829423549 850917992 686544588 883614047 452128520 884085714 715862961 866205868 781342496 867298030 461821617 764434888 771879613 819115252 185167228 277190227 587974184 613821078 595588224 642380116 201831274 552580732 340810225 833652974 995135823 999700557 789473280 817087686 688718292 930566216 82528275 845065480 355958335 788798032 812432260 905233770 827513754 978617751 262355279 830709439 999282512 999372513 193743163 296448903 990555180 991594223 923717874 956361500 179211402 694657803 986854098 988996174 587888050 795362825 17873252 693220547 839907718 961678397 419596183 869701257 827264247 868334391 78715700 601124735 680768728 885716785 29151473 992239384 499631863 506834326 738553273 764635419 165892025 861967873 214593199 392617931 971696554 980940393 447885220 721261124 257817173 387190806 255915061 349500301 826503425 921113294 825443110 899325925 909592574 944846865 10457475 905174959 430161830 942748207 933404 947861302 272126224 287850179 3537044 668024968 879572129 913083278 475952480 918815317 514846586 922516230 26593901 711531706 412557410 628525962 75397925 346461476 548944678 933332959 362611574 580370980 251359077 348429131 284298958 582022483 184603236 370726149 345169975 893793651 311080021 420325756 746353070 791743089 352375445 414187897 125509592 543601238 674870964 871952032 955610447 987992680 974523470 983634953 60573002 503637320 189241285 570787726 218143220 727209140 874065731 896849879 517364800 557430897 6255455 223914153 70008586 578070142 186112557 842838466 598877136 850435834 736829877 982963881 5965993 316644176 777120560 868864865 247240901 343923602 654891682 786421603 753418907 880153133 346400965 582985449 589771050 779481995 530071730 677652079 396360720 786573016 99496877 619199341 62876993 893971515 954948613 971303691 580267758 754686507 211600025 706584456 3667980 340519796 623393154 698543282 247009622 873230156 146020207 287380396 441466378 901266021 380351910 648124650 29782898 752685783 916638718 995223303 549943964 712460056 24586527 312584398 654175287 858346239 667274304 695818258 214436137 241561002 686181206 797073202 395091609 859990131 114915833 623996689 328320832 852963137 898243564 934747656 287655641 358621192 508532863 918852238 966639367 998725866 890081811 985626915 740898050 939431917 834475922 984083460 722201498 931055303 208441797 512308101 452313839 890683256 975338297 997745437 488927043 623554189 63037209 617779059 499492724 861348687 240907346 683625561 398598189 805462343 26799690 88458292 846674302 920321670 428538054 627120529 212068494 324309330 83365160 667613807 834477021 955942044 809292543 890397051 178913811 886049608 244626850 916206686 626590197 698643304 740337048 751979531 630688941 809251694 156655202 474202801 447651855 882472390 60155464 142374292 367127056 843586745 503702562 930222728 734772757 879809117 59813946 378293889 231192149 482652707 697419743 834626347 205583763 418424752 384348314 391337979 930316012 938057418 398101714 659361233 379371156 405590743 394471212 645651593 844106032 985597993 442699108 972493151 292497247 792169204 991978615 994298097 366828243 644125216 55488205 99802012 426008002 868417859 350937253 733785157 87941599 713600698 618142129 841538723 708879942 942798055 116567250 452430232 977352808 996034147 566647019 852901835 953386130 953757687 688780276 870495301 538853045 900755193 713756399 859637168 543904886 896509421 284289441 570632634 92908141 428812793 148074046 519888554 799018684 967096334 747406774 909878864 840445996 924240598 771644435 857706372 260989164 567901188 89762285 318272203 463678969 966201211 704431574 924822416 372071712 669621209 24057021 94299970 853405400 954691104 297814822 888966581 827799657 876460960 402172513 708114205 483767676 767518574 971902073 979475030 633737002 867158950 544151895 701890822 649697529 835291736 256929982 861405660 819929014 966221673 956445278 990737388 819453910 963771819 957986134 971347765 755045233 918118008 530551471 689592684 732251888 993734917 534162478 702787425 740981083 876587901 285258731 423155492 560332297 708003980 322791854 518508774 889571110 969979702 17058885 979428502 792920688 811570863 715428 68412450 76661837 353753188 757685957 909689123 954109136 971803578 144821200 151137305 428830596 485315050 519561004 574268087 966333966 986583106 374000928 612203229 505151547 733805905 944518919 954449474 686490154 849744894 934999712 952223793 85626175 570062191 62382628 139511118 613611594 817967779 622901571 733059653 956216991 995044453 292518352 836363963 263654387 515282284 677011061 759245345 822796354 995442988 540641266 908236249 81754760 189437093 472496725 597965014 872561579 937832896 193067234 485226374 637348745 704147570 892231798 903194225 426999328 845849896 847689602 973198336 695047295 787835563 619993479 643658720 9294598 876085457 816416914 819647885 638190062 794878992 237041428 832804982 162757746 490679539 660330237 663832148 688986989 903327400 150248418 762697949 860355129 971993704 207668343 921443335 890006455 920759814 337564094 483107536 829215944 926939006 550884954 915023243 611031275 727292742 525543689 712601288 985926355 988679967 558464491 592700410 79983670 82862673 687613621 804110050 507982049 799414723 256249365 708679394 47180680 480921350 833761432 972741185 721577552 990962001 746597178 976906147 572264771 868095842 382025071 556604903 424897108 804701641 455796978 680970402 321474412 838879425 559783770 734313600 932718549 988482689 504393567 788296370 845952934 935398746 660734524 879394682 141120064 324803891 637180994 899217908 291376659 476595706 616335941 789186627 539070637 852538745 206455219 353293699 893145644 903339583 369915677 507908841 661292193 803646428 232757475 297574549 583526528 816285790 232136508 364588488 792740002 879069566 85709434 307376932 366569300 519315147 935445969 957282196 591927435 693444619 182420352 480215776 845131225 875807105 420021790 445431687 972138902 999949225 518842615 742856064 292539248 331701949 178538148 593986726 938461880 991470620 398678018 883013164 958789521 979423724 121818921 173616768 773633909 868252289 996391903 996823647 769883247 929867175 809843140 978994016 129342471 156804923 620460232 950635223 375455642 927392216 30808281 365342678 449438395 860451557 444596386 751150799 525486585 675395068 712190427 741923855 924689053 925582323 4485529 518696683 68613539 753783145 273528902 664478379 222859376 447822999 731714809 845201876 708393106 979454383 170502632 839597763 815430571 910186790 974406006 994328357 498333566 718081212 939175380 939572117 739751998 787346932 808933638 889278009 325642545 377709755 423974780 980341747 179475864 960003718 81793356 224044462 449467844 801146691 836580658 960740888 130171031 903001090 243020117 480688508 677229440 789778909 324039916 869039435 504657322 660598408 280190609 785775915 602357710 975362863 862452497 974563581 895575608 965513061 255783125 599072926 218063943 959524888 996859969 997395011 338763100 564901615 798812764 975758204 556441438 826731931 280527071 904518228 502762840 933866214 717506520 806635739 804555421 826206134 986649162 997875564 562827603 575761064 291423719 586301107 438762683 974554636 531053716 644269490 138169810 302481835 231133805 899636600 782997269 871553547 50165530 70478954 426877562 559906468 827830378 993897667 142993045 851348732 450982591 453978326 787313662 986154438 397739279 602883796 375340793 496427918 120461514 529866362 518768092 671406114 763922935 986737647 763349720 802708718 917023045 972466411 540629654 744291779 68763321 407475198 994036313 996165135 807399500 895846286 672968934 796395655 393822766 972491686 511457195 745443114 485454123 957629057 166283235 743313476 223120048 512031310 163502319 553323795 227499486 357620679 524578803 836691140 239543058 800444264 736990131 967333236 31124059 852638445 755519090 847131136 671413735 988123594 846023829 870470452 803081314 963109040 109859504 882084882 20912668 455622424 905543863 965467129 451038680 950218025 252450177 666394806 665458288 975721293 686133856 807138174 500066835 689693591 252238223 555737816 389955169 643840189 478493577 876371082 265598869 587103535 418367116 568899459 316480093 536878158 342082564 517860409 749680680 891972721 96733560 692578058 108992329 891713387 722773160 959814757 136476316 147160831 662002547 702666810 690537273 775287893 289063349 593174675 817206691 908266481 543404823 853407005 269318679 937603309 448472316 998025310 779221941 926111840 22709585 760050657 976063821 978209994 341999670 539299700 288603856 653430481 425494317 855196332 558772718 775556204 363196925 597526002 90277307 317274182 302327851 805026708 758131602 857611739 987763986 999799289 515571502 651532501 140148649 690446744 111664665 407379579 758816066 856230692 643138196 758199180 155992140 734976144 177593436 554367481 472990295 744818620 348995400 606683252 318409464 805378958 754044665 912558625 431953078 658247996 974464312 987517778 30071452 737358537 518028643 705129483 69423447 754774173 578930484 836397071 972950524 975035104 360079139 724967084 884515976 889533739 79710545 706103346 429708245 917959578 855448839 879251809 621799717 695018957 435211721 867754357 250993376 587589748 326206470 808043365 358448163 796161331 417671680 717468192 385111031 971090027 33710675 570662722 570631318 956310773 290791295 649278775 702812398 747972882 31106386 71052917 134625927 606285948 657944442 996079671 452396921 960483989 879386384 963175871 747108688 896426163 340559185 978260321 695345450 747208545 88198421 246276135 584797134 728292649 899152250 936205247 113817803 583845149 854434297 954582686 953396445 970525167 764368106 838918811 245824106 346486971 811701615 874552112 109946253 732974535 876001829 972673080 235924071 988298083 995745285 995973149 252557137 692958332 459627406 946927182 403298003 989185027 231955143 531012114 124880236 572947909 682051559 766707853 925770289 951163556 757173358 934496262 224551704 823496874 198598307 206526787 585485339 993299089 263969921 789137056 764564389 808580410 882010048 886841733 796535825 822794432 862242133 900949992 317087319 509417289 73506699 181699331 316809909 791068850 621452440 734645329 80284726 545466972 54298041 375912660 667894396 867727300 578561729 988657301 240713211 390507375 792249691 878470659 885928896 943720014 88939261 417521550 835957215 939813600 790641422 996692147 74274783 526558356 640697682 932558218 383084234 967709239 497081093 535132730 332815960 766327580 178197012 715539837 777030141 897505306 180266938 401656564 908278225 974371651 968659183 997816905 517124172 548056725 881735969 953490556 196997106 763135892 962923025 989936920 331382436 733848829 510271116 686117687 479459692 783127757 410456985 732506195 595604879 979952518 806589887 969869198 751608695 822359245 933669413 966473185 537199437 675103193 353097915 949681553 247615749 745894218 355472784 591013814 440462485 849684542 389249899 642513278 435684305 451892947 26117955 66980670 18635078 912676741 249050432 823661285 287441974 306945436 962280940 970526028 909361653 999651257 54426454 446771726 66977536 863794918 898885329 954529209 152845276 472365125 385213266 484731201 359156346 804247574 966360384 985439890 18317433 818468370 560479949 973964108 142648270 257730624 652977635 895334715 778610422 855901035 815168106 911490796 977355904 993117709 831992535 990921011 828972339 993707478 968330976 986972429 67587542 75658932 483787162 516047038 439654761 893016840 114645831 166770505 489567063 681089735 190516277 382645318 264477065 507958942 896298905 905092837 7157321 824123291 531345311 551207855 791608411 983521183 495720613 855746154 204606827 773083283 429558710 431242359 1896013 844829059 449658383 808285867 331464497 699021151 807228451 953936044 208582510 733441959 445981534 941575135 6488130 202450462 417515984 749820421 699177879 852302261 854153298 887347454 577518470 657527738 577720000 943362064 83211644 219539551 777257642 808483575 584989843 760785467 668263714 902805967 561648441 839576378 149210077 892876540 519652441 707032015 624728795 673442441 846683855 936238369 248621734 438724164 856224821 943554620 104252585 511365835 305306582 442457476 786637086 916997331 877216402 967495817 653709158 902776670 650356032 680995325 864383629 864715933 970237796 972563476 806554405 922575921 11792459 218744298 112197976 929186881 441749011 623123146 417071952 832724772 640500362 961402949 294620052 958084317 507113577 616401272 899902764 974043142 78497391 273078578 957483552 987581195 100025814 291852704 415233882 494026594 800311769 842734566 190817313 844879840 818999386 985230507 982312662 994721244 797795732 983529718 748898771 958978840 626181142 946925371 247113403 788321710 928271078 937064438 442153498 975277573 927225733 953997329 623984079 695437994 108170001 656330280 143829625 871486961 953089418 970515895 934428676 944457634 975120401 990088459 653486036 658276639 503673026 830384713 660390190 695199630 423947653 688886964 838151627 846257063 357936988 688089999 161007388 844928097 248788022 383299980 321488119 868312205 255533218 379657010 210405188 321029208 140340992 577217357 319963507 995789714 192822007 445154916 737157676 911391696 503221498 609650939 864241052 879992578 329045117 839201134 290521977 516256666 634536349 866789791 992113242 998013510 976934543 978296161 967967422 970875109 733483056 884690435 381324909 804142369 355248494 800990157 530848741 898215442 190772711 558084021 898227390 996168919 810232200 923144216 783093305 923303775 469306487 506688274 364991600 972177900 335963534 828478632 425099290 711886305 222962315 358895863 905275951 931879334 349877598 524780153 548630966 696266974 980299156 996903436 381618248 605676556 335232149 718474848 218660464 509969302 875140430 967280277 251016717 704836116 224313955 999099139 343854719 433733542 263267283 912175692 872853577 969654827 188511131 230133024 520823335 942008332 608393623 856159310 330445 235311827 771338311 898393359 53542711 800897493 868266023 928138004 304062910 455747143 806169665 959055400 143939579 246871194 867533983 918344170 654310190 710094334 314203564 376906644 286186226 889304356 489961607 838920057 136663132 528653328 729899507 926920012 664785025 822979116 239585450 483156824 20542806 416195692 664479860 806753119 378278945 983133910 294591394 784543833 280611198 769998316 988719468 997577264 273489201 671993593 778949108 799496461 982946066 998427142 731324604 767548050 187219731 604590594 73965522 452241770 118780518 635305793 990805683 994571589 143918816 247013298 455960730 833468325 981158977 996671710 72865164 649385456 121662703 242513105 263336156 884081710 448274018 845213259 692445258 801868908 463326636 704603440 405347991 977843090 875942814 959440898 272140418 763812994 354013912 710097630 624856895 628729857 391460272 783443527 892850414 997584747 718622735 820515805 37197247 801864268 80171416 231681159 639894635 646964288 635008121 760761780 280200190 697111484 493209230 564810080 606719987 878168118 227292356 412801621 880610326 978593097 709518186 749587872 989607880 991123755 365867936 634411527 931065947 982397200 158808425 982401219 291920851 470186057 901841430 992616533 255122319 924275871 389082345 788734970 800757643 891527206 724766333 737774418 517866314 705715896 53879270 149683907 276907172 516093857 421341885 564609970 709172111 765958645 185343590 821798839 302043865 984871575 283072611 791288509 745607803 999741102 983934707 990023440 149749395 255951184 379128402 833662730 123112677 176009651 45447813 301986047 955033934 989582394 991372874 994701436 891436039 901091695 684738326 702444547 690220283 945400077 325073082 818000792 792194584 997058407 972859635 994098901 733066782 894194671 278727389 418552467 508085841 847655869 55127720 145144954 789022255 975330942 422943831 802450309 389475730 642613830 594164554 882440539 315483634 497624750 698113201 967972978 287479447 483381323 155085 326906453 579775405 705940736 590716059 948525958 171512764 440916234 322800468 847547943 254608988 647174709 721748822 780075233 889109768 976082247 989498396 996430119 183468253 929691588 921733903 973825474 242628208 549714298 677917428 986842886 628061110 847487581 708016588 735162395 532355081 950194992 471221545 481667183 504633451 588389998 946437041 951186451 822144585 862311653 188661433 455327228 396386070 589162785 150032723 418098483 670905610 808656927 761877010 809529997 329661244 409054936 418226186 644031381 962753559 970362068 845875085 852426996 172688507 228613214 538265458 962465277 743766419 862194614 333614296 937510674 775360249 810520209 647695415 654718092 957596069 990186481 911235107 936919155 180114210 269428663 764721990 856883446 508696748 916839939 468018778 747949878 476917414 738369097 34166683 204712553 592838258 701389980 188271709 822751208 500592271 820692335 306993722 363373455 609355405 646316881 721560562 827414821 497141406 674321136 720899440 968714875 868044657 894336895 912243684 959540735 812527054 934195408 960279738 990463527 171778527 640126090 848936708 871038708 188071270 287247608 449273848 588806556 257540539 891703106 644456211 762141856 502042578 623003646 133698846 689056786 566501176 890064396 360176300 454059195 745259118 987276375 567980097 623339547 691626751 855835532 999713112 999897345 574591587 907298424 770800626 800755346 469591851 535676896 968110949 988748848 300963721 301150636 452265368 877226430 988149774 990031885 15098184 863012895 790576085 966899967 218939189 403207007 493875700 813330237 277457635 286863051 121400913 305103230 592981052 647078943 464298809 593651413 499285895 941256201 606468694 686202862 5411591 437407651 177677031 723057397 150491544 694970473 882212064 891286079 579877515 919894234 694262715 707690741 115025170 983642573 452104978 894592500 372749903 633490251 816071724 877322277 443777199 570243967 898986898 900165049 272364570 859704647 618634461 747633452 101262165 646289390 527185408 867069583 961371226 980653770 717749672 803819521 859494484 910497339 9153997 969298961 324324045 601348722 899109937 900974960 725762763 921253499 100298998 671520575 75784335 502685377 470887643 945212056 335953930 860187954 476370063 618831565 872545852 914717148 980241161 984096383 122737324 998549062 199870782 596642512 839497958 958529112 931338340 939846232 404010095 611330785 181849495 685530218 643561490 751481682 145454431 322373740 516558076 578150889 634864982 892749346 581324172 653577461 98355117 524150319 139921830 312046971 612360400 830054352 460423403 647655942 241952927 354055733 129142487 172261369 760559006 812468884 75064997 346283965 716518057 878701851 172464747 346977660 875990143 912506951 83301167 869804700 343014045 836963061 507234622 753519598 447174853 461185341 858358798 884576301 460574467 672123570 422603184 519942401 737600776 812136229 443974325 960638679 921800114 937034818 932420631 969358788 107582885 498259689 499139749 972733110 238752282 506081850 421004286 588758650 517540007 921147282 466314208 780191186 830714022 920030013 235646564 421586261 255269187 940796030 304998101 763930522 932166696 951532240 871812012 927850249 719097629 882291112 90167887 416880869 489720765 915238632 249831999 837600554 677781563 864264922 86127121 208398668 103588583 120170172 717052660 921183570 889984693 943649645 98153689 296401150 303042591 685925095 688450641 831300502 436566435 850137605 547932448 845161480 284170596 507232841 612444036 706102498 231531738 669083941 684696920 835090746 273108972 934195284 274142439 439304096 879873020 987482482 261966153 724063685 753131204 880434152 280144034 768278948 475974730 940080864 787027673 907914537 420411963 878601493 689861219 892178313 341256035 994612970 673882521 888096473 286045189 575993533 818087520 942003075 227380963 498834221 205750338 643907201 215246917 801484683 1477028 997042611 810442020 960379372 318023917 416650784 194625614 681788834 300554838 313415319 314630833 960417737 82245812 96650475 896901598 974134978 404981142 949586201 821285480 931656164 639083781 957996360 296802514 861061313 916922220 989361821 693858004 922525589 315076186 320674500 989213546 989642922 211358751 898875235 352852954 566304702 973111498 984932680 645483706 960091885 557264707 873941925 688967260 909928528 105995389 170816925 660596604 884896169 366638658 756680174 261123508 685690932 20642588 848827573 531741211 878283153 495082055 770288786 393072162 476099300 473843451 748700983 292793131 425209439 648506960 929500283 602439368 898239839 604378650 643046814 511828944 717055412 122735245 333172850 148884466 871559005 784310525 961735846 559834893 925940422 131850969 664030699 715551466 830976686 7306537 558808672 640313949 913492231 146754227 777924265 905256005 963999562 27691845 291266821 680329936 736568534 900947886 910207981 496391276 985973813 406634478 557573608 289948026 352530201 423875109 879285541 215283379 223921028 307641256 354833939 597645990 960653793 272368609 782848721 788878505 967682383 989784367 998681017 970333699 996643775 541365594 773775066 444190893 670338534 160981869 645827309 34983664 240255740 364190793 729879656 320313064 929226295 314457981 802479523 851072059 894168776 735520743 773919616 843832615 994339683 203856123 965498867 586303812 693214419 611772753 857007876 657020743 696277759 106462522 952332049 316566350 885256566 312587750 667819659 636434529 996416507 533513717 933507389 627632461 849518440 415502971 637325924 448501808 829087124 139624249 341948695 566226210 835041004 180311404 925553393 666088439 881737927 155332659 812230529 607062805 868031050 153384740 394340331 726370958 990131952 354858255 898601696 514369465 805877164 966635387 992859704 357148532 640440505 852483303 899005086 332650316 607793074 172738257 971765303 455794215 626466135 510056185 883071972 558451304 728454030 930529190 977747782 54615275 775736050 251397957 728734694 440798851 915662090 437468172 785074742 279369031 905194423 122490328 204568930 221028904 267065216 987822369 989831625 960736303 995015079 469026141 925886318 264168805 497651854 994763827 994822126 846018976 911773688 268849809 493902704 560606684 733668645 490693117 943663640 984978075 986407108 58057370 115177320 646335403 696984951 508809311 845518044 128093500 314136482 976794542 977352750 884133534 884295080 876571762 973170389 424912768 838484412 621685261 858537405 873964103 887297262 805429124 979985603 170952559 253908100 537366999 572491532 328694560 522002665 404741774 476509060 67858342 522124434 415194278 707606605 807846350 884273538 214640250 554585201 245598997 374389056 230401655 294964067 675965468 946492512 560307857 881813899 369611926 587106035 710058552 767972983 574433357 996685388 51885611 719037987 341493743 910301326 342528096 730979005 886582048 933171764 306500581 564646083 718783677 767510219 965920646 966017358 955508517 983259545 730558113 933410634 196610412 368580722 964277557 985373584 362101730 892094305 891092124 935551483 793802916 913146618 511545476 708294815 452193673 535329931 716391362 759222183 417249359 918709350 348925828 372565466 206203181 575425932 254467472 797416078 959124081 972244977 64528365 147238844 982577662 987716142 219699892 960734007 300660149 561492644 981911625 993487744 53321433 908709029 481348651 541013638 943949286 962854789 549035685 789537069 801669343 840337817 493721318 872431266 747466983 815508038 543880855 569250900 575166112 692089467 21895419 497694519 361112826 962360665 543964291 838809280 10147473 795401041 536317628 663810609 846729766 916060195 264475960 547586793 884711257 916822058 626823687 782532879 917636402 949042490 190869567 606638775 431866944 479983639 687118352 886998261 654355883 759609120 767325690 819709707 388268092 941185461 565986560 593503193 296344485 854824842 884606075 971846580 904485781 960085691 628849388 903045684 536405821 811750828 172891952 553226111 92745350 579825875 317094590 956312265 596586289 809073399 309063361 988944865 467428470 958840633 988976769 990914074 523911577 972126218 2672024 869245167 418679059 915314022 173155288 253900938 168378120 689812276 785048413 954551927 651372426 662682765 270535795 748789225 586502530 682744895 651479365 671193461 709105056 726201173 84244201 256908010 468462629 913444894 968961863 996248899 465495808 673318515 214949188 614304935 437618832 596537364 565700769 818025301 946851995 987302923 776868152 916002358 492196862 841685375 14495310 722998135 559634108 891521115 4593327 89660127 287507451 410476049 229040603 954400043 202429405 262649053 127437943 407437346 157230278 765421240 532097809 632237094 271072921 608208498 374073729 684945767 182670954 260723473 284245910 951647465 154103312 281116051 563465915 585037839 206060890 726325289 311057371 594415515 666518713 805832948 168015389 192712526 661562173 753759043 554389598 859857887 21543094 863352937 240763035 272980447 105106954 497041481 625971518 983190110 620275728 923382161 245909304 270728523 201834853 498784083 507905422 749793931 578926161 749907003 96044871 616254543 43953796 317802588 236580067 556584579 752552434 951191172 84012589 606174804 376126994 970488514 331968956 917172359 309200588 923260583 155702918 829736323 717704592 877969391 738663279 862685854 676743919 846938164 315961134 621012975 765195362 897071733 106221285 730612093 152250249 170544663 377981287 891872586 552765080 646783915 437242814 870375682 175037437 206318512 308111949 806166815 799167959 913473523 866759610 872867658 760105227 760912949 917411998 948574422 997455574 997515988 28818496 470319337 725862724 780621618 89941576 184348750 1321572 459108700 67617518 369510259 72978304 519430353 815550029 986417237 852894176 967213028 382263655 819200563 428183675 478913949 688218953 931644827 366799304 684755206 39916998 216584685 247194894 718225283 723929844 739001226 566736613 755694573 242723567 831208506 759761623 911743385 153855934 262121082 425275541 560233015 243873088 420522036 763362778 833410745 579372410 967428807 37443428 530415645 398003689 753193331 919247501 953462508 164749691 513931059 897690178 996640509 206187296 213752205 162831414 679108251 258491342 701535793 360937944 970428130 308682471 972755374 214758925 894061310 246867164 404016425 385883913 911413801 309384936 400444429 299637863 658526567 846337523 952882685 930734605 957712547 147658554 425775981 993443053 996195185 234799160 795558209 799327679 880129756 472825766 744461320 838054792 972759271 219100437 332361755 108921307 309677946 856225160 980337806 168738996 568580586 634192924 767713297 151995692 571179824 971907070 983414671 67073235 753821394 775819354 948949772 680944671 828970677 735770082 961220116 205711987 279785300 439966974 441789069 925304629 933656660 374661537 713079898 713508583 886440823 520491262 722094311 218682189 533902765 236990681 828065578 225608599 371764131 708674221 860718455 71309676 776210096 450403835 579767169 685421854 685429580 220031835 665429457 96335907 328039636 584359574 692025472 76406566 635152067 243880968 926355005 554272044 697211770 467532483 812441440 264258689 890262432 894357638 962619636 66759718 645810824 119999586 447834579 194798544 568639144 116990759 960760066 520536297 983191001 992502993 998208644 888712764 911637374 125896836 700779528 318184730 669166477 123150628 539741035 120536937 658920340 927016433 939266799 270921488 821860279 435784227 902083887 470021495 947771845 631342480 853305103 972530442 983205221 536254382 661677950 559911288 630072420 171534004 177159637 553445250 763627525 626283124 931282473 856018920 862229543 764825917 976995029 523797040 822697850 797663622 860908878 804322657 917666547 262773077 434262439 815380994 988564118 651283800 862924701 408971276 637467890 957652565 984667427 404136059 521532905 871997980 990311046 217118479 802180722 588963711 885112122 728643120 796347834 134609986 643218535 763769117 793364097 900308866 910789480 914786171 974391588 156093017 313645034 887451765 959043373 617374687 776727276 102879937 733524397 342385836 537218580 263721177 323836487 701382174 808068807 521310779 676493119 172035486 291616625 23040326 316846190 561354882 722855098 437917894 523778261 716577228 874249615 145937181 384233545 951312264 955907047 256303698 990522449 551990715 803143875 644070416 694367743 785635704 934683716 836115149 858891296 246548072 638486461 612503685 839729713 516748706 882001121 345320513 610843922 598045272 633013322 761267104 972417296 15844051 118829649 755722659 831791739 754725392 864727206 67601296 756169454 546384904 813046641 235923016 831089525 846467101 853993498 270346392 304354436 5813486 468130977 673851104 865160293 428065778 979934236 811719092 949468534 600527038 791147928 935248060 997695400 454128481 828030481 165004850 565232413 382759559 624669765 78750542 904526512 355708511 367574327 558388158 985441255 850014401 921103723 405480410 695759128 765491150 921292843 501140538 664723086 673201566 856120559 935693620 942963083 237118743 871264018 612568567 618530463 245862880 746104957 628120873 636249402 489221514 501833810 121893484 433046362 292843704 742464945 685534289 976217714 956657507 994029354 738710963 985521658 391651975 446777206 997663942 997968411 126271963 451038439 538413477 940547929 281685427 805362226 528259649 921868976 411746548 652387770 909113560 944586291 522908075 574719107 975408273 978933165 658644253 744084132 40810334 299048602 54728071 796847153 279958680 600930524 534172316 587516804 430565348 620750641 539581276 791098055 848661239 850618040 225733016 408893193 100757484 226273691 388655746 480478622 550834423 671767456 449774973 545871080 43811076 611351220 668688700 892301156 908246431 920873513 887811584 898912299 68377663 519648688 823062544 996639442 63224059 251544627 163722322 189483498 329071317 869974534 153451178 657863969 874638640 930203500 923590776 962307763 670323537 809316201 906475932 940463271 659505148 744776845 400923115 814813448 605081161 730554866 447360519 776231450 39111068 396268602 699796101 732025625 758277978 809747651 373360376 551727226 957220299 991403994 976725799 996764718 773333275 784068278 436461884 458854180 337586231 879120626 340220154 976449476 484322190 784225661 937973737 947179500 656059423 834785770 50592487 401620561 150750832 258229117 39316069 52998433 911564664 949808249 477632345 801968709 632528478 893677810 271883636 414490297 135007869 391193628 124444175 757780281 214533408 984527319 922738080 966565720 456834418 643388088 161170808 556423900 366589660 708628978 229929362 891292554 563614851 658384604 849782568 929574004 914557872 987656878 545480161 789182037 699285075 956564177 221044300 727867835 686870243 921441658 158543052 670524616 886052989 913671419 596158539 744999673 590103705 820372887 134729582 782212390 24723510 542118197 70246376 912162953 691312204 900980591 2180553 684082546 831226130 976613932 95685828 866660706 220247312 647867985 991725440 996671584 633872382 949912222 781355147 973242087 177367789 285518949 322228167 730850385 922657237 946328736 53829210 343244425 620998786 777081988 87815389 894805682 234562046 955909925 687261579 945359745 690740369 713091549 515486050 716705264 830770576 886495414 579435863 674025379 222794960 659979856 462965314 590018985 245052522 632576890 165140896 929735278 664053040 748677941 144339171 152668811 258869539 294982776 198335574 264028277 407725571 992238797 170794449 827105996 353559460 783549831 551649518 762369650 782950456 870117748 201116613 525269684 760151908 954207373 390047153 925861243 427310376 891092316 977789895 997480653 787839058 848055276 817230862 912826713 889782932 978457675 378001529 992872811 619555064 949658509 19347883 524795634 704049869 906581920 986852116 995701121 662965196 876976366 577299385 704484003 675093034 795680200 295679045 454699422 562021389 852805829 824251723 953703928 725493506 962132813 964980860 977828585 277554632 586882637 814039517 928375622 659868189 940381976 922443933 928779944 920648885 995756911 620422550 918417533 376713264 706084035 895223123 900914653 825949264 972473296 522466453 644166124 735955708 943374630 90646510 852045090 726281236 938639563 216238308 592451090 104359883 518691487 875105942 950964370 486594223 569055196 554316663 770184099 340476224 796323725 154214910 964537291 592957516 983279964 514180126 530452770 883004699 933142937 474140960 639714285 86220189 713603609 661272091 661944748 993023347 999406152 810105260 847719364 358851755 445326112 288650366 937883576 640363445 710469925 717717481 837064773 529854123 777828535 382612763 683432351 312772099 350985323 598640717 718201692 775982363 787095006 769356830 901330864 486228370 694713253 996483180 996607896 562880752 963375480 455663069 557963136 870561517 958433128 492895600 749995367 65743847 843969610 785146396 800662713 231662102 241624252 317265738 740286811 248718202 986374666 209915070 687412607 491255722 933982738 949624649 955098260 657054407 961032057 346189229 479289050 226057291 859115670 638683609 991145963 357164752 582075930 681975039 682569248 470846891 678561803 74777670 232590539 472068960 613846366 681529205 735221941 366971395 450671006 119984731 540463575 137916866 400017173 794892066 827429409 444308382 725029182 760488057 927833267 801454511 956838800 292237951 671881113 363716713 884996798 252209320 894617948 38257647 683706912 908147132 962217471 501483138 594733371 750989566 831405602 536523427 575476298 123748797 483972491 972073528 973547722 809430644 873542674 60166310 943161414 133873080 794124832 622349848 851340811 435804814 913746533 709542799 827927821 836532044 876185021 52410808 873247434 49664637 770534632 675982055 970919723 105237334 290365242 501978574 915136103 520645645 629559332 340244910 970702932 699916215 784324939 758968763 963780361 147138928 852249973 188788466 402473908 508061527 558149179 460013187 896312065 473650657 673926314 214211218 997515229 675246974 787328966 214504874 892240944 630839717 721822438 706995407 915772879 823858422 910386869 794315455 861315418 99943018 543877772 855524973 908040295 197736474 263845274 590981674 799201519 942156835 994953431 178603428 466832776 526984566 554625063 748028604 978574764 25532868 871149243 567591808 758725178 233254662 322642143 643290509 784900991 888885987 896408442 811629073 991808577 900607520 989452971 448566182 927844601 84861883 517447205 720024163 757736106 875894106 920642107 147686431 753234355 296094139 991121482 577916553 603953542 365894498 745523390 521749718 914595709 256157965 277386332 701371752 866418476 876901752 905954452 884547621 928683827 838714583 955450552 731586852 840638771 259487759 328797055 341360629 524059325 895477090 958159414 174651173 700864517 485488436 799750652 694035027 805660729 972161166 975508083 726527566 794935003 735921759 876299128 685941332 804305228 192734803 459645930 353534593 682455845 327247915 756018033 187349743 806887767 342914138 671248845 350285343 865641789 526055945 614246995 642543585 711554093 928630836 986595713 57966044 525331005 159710622 264895587 69438912 114634850 420720833 919390636 485765586 653279207 417500829 616347737 810772184 824114279 318469459 338405742 517662815 544795024 634112956 827959770 23020030 484920541 829138729 993674002 167485342 701748022 857365795 969194878 796640814 845458640 912886954 982448544 413972209 574773332 55279286 528086115 93540415 840013782 116495695 818115396 462076380 921103282 76825948 284074786 937007252 976391440 520295466 895257789 498593014 795825301 986639000 996977431 119338071 479785761 195727945 529091841 393362098 793576412 625942523 705349362 295723626 972505383 835814804 908645414 785653755 842374352 989765389 997366896 402358166 432102345 479659889 920920098 973324194 981315625 816710789 976374501 862413770 876011472 479515217 833993571 478631529 945525084 98107163 904355408 327908174 635220935 935833248 944009487 850543711 892792363 927838761 979790491 450418709 891792713 632131105 665033652 760273778 959105732 383789607 929381196 836555103 911893956 542359494 665705697 47265394 780147936 490167029 889431236 774814463 983933167 441063884 556498216 632733830 891083561 396295168 987041826 20551460 566055627 947493931 971131367 527346779 834228559 54183926 987949763 569840660 942868818 793780970 818021237 539242087 550737062 211103273 557685852 8829747 978053958 495677036 838160565 716037788 816066713 826627965 932924575 728068603 864360536 377572352 640891487 936487093 995722473 404436836 830467194 787906234 870654847 179588019 349405577 6077107 743751525 322362260 843597806 569922611 852941514 179376046 197733132 855607534 979430969 563062674 583078040 273430478 660761834 336493295 901534177 614074147 858493333 90606654 341833447 890035029 961997190 396417237 632551095 861508639 874959796 748231877 850558664 142925970 442123898 59270551 374591754 886443530 969751219 525056160 812603566 663814138 675645570 566725705 694257106 202259352 871423713 787233007 920337179 483251091 678258367 830059023 995856816 507110104 642212487 560532478 691078118 440414225 903703924 809808543 904046790 811249226 956028482 230915155 669131020 260149531 763539455 444651731 655056893 525753339 993905004 443618727 932523232 923535501 965492742 335534882 660446650 747069404 917326286 367633197 933844223 273041449 645561585 614366925 762399858 43511343 692995666 114462644 294223501 843322697 988816637 195501364 801627044 310716762 414995033 899883011 958264179 130213087 942932459 320377220 810079738 597741421 662100830 382460299 665659234 955778380 973145235 432412558 514980625 879421124 910648952 96421107 512046172 475748653 632933469 111015706 917622112 339311129 646206418 509150981 910089920 926739113 957944041 144686414 958318556 147619981 216121814 781686906 943118247 548451927 744740371 996168236 997319476 974227664 983686778 98331860 539154246 545511559 970917501 930178153 999362657 45319667 253613863 633452848 751018994 954391138 959922356 386088518 651648117 770851542 824807260 646442571 832456013 542400733 732818066 564923469 996912806 37980966 253887209 986590554 996947535 927011775 994904200 815183336 909526106 756778097 877357142 570898042 973036630 714793202 982875746 705338867 932306721 589907375 881309779 941858902 993722179 867393654 996401045 965699256 997845433 212669751 979377417 218999193 439333298 932304478 949747578 141289155 180017386 899085804 908184367 621516853 900143473 535787895 603278948 745290057 860238916 389513054 623537262 684570873 929622436 254070992 385730463 633353543 942160849 620620710 650370367 193190796 714159942 497891403 562049813 995828961 999564468 543995683 601946438 253906155 434781948 404482297 651244231 563721375 800109355 441954851 539053043 208212147 509805946 150572195 259675569 375776339 754775864 682629844 786617880 123097701 303770368 131267766 507849530 428285556 708705605 483467687 532510209 239830367 825463941 465941068 974739030 12758671 137324168 811136616 968517916 579500800 760022512 253139500 440506830 820050098 981490594 759888744 831364265 459960191 587101144 777704196 906906228 865928665 984153294 443940485 754034532 414415363 745974417 386303010 461312757 914052821 932377361 419234939 536892632 115239868 603317660 528151403 854866082 611556094 745269150 630466410 821233690 72252525 211532838 199498097 592471605 724966735 925986883 812474918 921785947 339306073 807272352 328667783 946122189 108461719 918541422 680024642 829724800 433421277 949237654 181783147 562585059 104635676 275573178 378901735 391463086 197667517 864578354 765509221 954380115 468454176 827964941 670634312 786361215 474643591 483671800 394066569 497181668 676062786 770696052 547288481 823290722 935545980 957667097 29573319 642383399 374321205 904212768 410831232 983117838 525477341 848009938 461363119 768987795 415166162 982175958 478604592 939278428 401634626 541972855 269876864 986854611 698212542 838976442 37309948 532658120 817813547 991463128 64701983 774388629 577356670 846037241 699214199 977518970 912051035 966624591 139496749 708032295 438333619 766825040 409957664 528930137 521928519 727371865 641025891 849420474 842718698 937917396 185818404 996145435 161706016 410354696 582043729 789814658 643109212 924195080 679345269 726550992 753276956 831175571 116858444 302562662 451384304 628132818 852505603 996838397 664164254 854226425 152057274 356129323 608653761 966829950 959954027 964154970 457180839 668400638 386305151 916071813 92854255 822001049 232541736 862829844 641640275 762572634 786878460 811493240 792312303 910515221 859615399 861981449 760757537 781012968 303506578 935788297 266949845 518949365 60065402 877458295 205649582 340127318 4189328 821841465 727256927 779870240 469425588 793369877 730030282 828897905 187554378 444740115 760846488 868438245 93915032 373052860 791344667 808160342 940105674 970652059 270474435 277921937 303553017 936185399 880948003 923398920 476764564 957974619 390307667 896354853 909680301 926834109 317250604 355610889 990968210 996557141 735876553 861909345 915935617 997806859 846655844 929000697 712537705 899399963 608487124 664387328 366850784 485737493 556885325 644651729 777640669 989579488 421797943 997883593 814857732 913252125 363107949 718690431 193196355 264152049 907052479 938818216 4777135 258301253 355691799 912884088 152125054 968441223 934897458 984989257 784839395 979334783 662636921 723846786 109725799 342924858 906246493 937360362 666994951 863452049 364315346 930685249 311839857 688893248 573192900 763229325 597929189 761373660 768267987 875388942 179868556 478845693 518606126 636719272 118183300 330586837 285468152 297687647 143170920 710333241 771650596 915936659 953939616 995494743 184669368 878268277 313836900 581551255 906158240 912169512 724589562 727827774 707069152 881470657 774539357 958445172 614477907 704278308 530730251 801712645 53111851 673180026 246333164 536773281 175401129 569767026 515101732 526125761 117322216 586604444 729797556 757624377 498673236 666055515 376059692 844924024 624225783 666138817 293107236 862415083 789097894 878998231 324587627 337046455 116601728 802506961 724195879 782157342 603708394 901252489 813228619 968943779 778713357 892628485 860937029 919390655 689299514 981760734 805981013 943136250 304484447 387085485 423973413 532094292 353991118 502835079 681643821 823990160 550697518 820681830 443416317 957403393 852367101 946444227 804501705 996147504 938938703 950689592 335969190 389669918 49775824 332907702 901836904 922391284 247787125 388827890 245229219 412752471 220527238 380318407 746457929 759398319 957191756 969231269 621019265 835099478 537076953 586352909 866632023 883695480 38775308 572022204 908787074 912760160 682445918 814630736 895543540 932080185 133052593 720628911 50782317 434999997 57339412 576709414 976510921 983831114 742482287 800676798 849262644 922490029 617646060 640635813 859703500 977223311 821519756 994753309 268519709 590196645 49499041 212629544 902228214 957726958 562085575 915179748 970149324 994739696 186270035 701514193 389506285 729558135 252904060 772241372 480371522 985049409 192449661 251795978 257517040 641293047 535724943 986611784 644647591 932454595 263877752 608914946 927813358 952048826 619934461 770854185 161121777 415237380 754567880 809983997 949926581 951938065 946107781 986698338 761579720 836802404 315336488 628716388 611027413 800780897 127124770 883208480 587516539 633363486 36099869 258341526 939213493 986239434 458314143 698148186 70450514 671502554 908984098 982059785 654663444 707087812 125556525 180320624 846519401 968304541 712758137 948080204 931034610 939058275 502650475 721990738 451650067 770395314 570505889 847684006 284650370 335697207 672869863 958038661 994782178 994990339 232003704 867835986 87611508 346925245 560527294 852288890 753611070 792680701 244434062 610010715 91508972 490803556 75824295 347261041 967153690 973054133 844003720 964455682 221300203 426771758 92972371 967197015 424608348 480628515 974423473 999809274 327121375 759714679 947971027 999073040 154028017 228975558 884234089 947752204 13177629 890260187 470629515 839870339 45569643 190645611 729586246 767756142 484006424 981870747 979003943 997528865 250863589 731579590 509666348 793052950 513307337 960621644 714950502 802049007 383020600 919841273 353047400 761260807 256554156 795923860 500711337 961021936 67906077 146751986 950479145 999276032 698120526 973911599 168773539 383024783 40866240 385809244 928980484 994791370 961798056 980562152 70541573 657150407 690719086 816039791 993360707 998637996 948951305 992115913 212072986 455413497 142860768 704096956 460826913 756833586 861623406 960682352 921037064 958497979 715966959 775346055 202576325 368880166 231180840 236912277 636864580 725333826 16050157 636602846 143030347 446972537 162139493 234896757 138299744 386940104 805789877 852194497 107899438 185191796 901953498 930291164 365372871 725999497 741209166 926765966 285675510 792739749 598136935 987336329 290146877 984468897 295589888 987469232 784871626 897055167 924491179 959699883 436797562 741164418 154821432 531165711 258763454 923151966 141289595 899141401 951137176 996632223 993118061 999618520 401665719 524852826 415622603 982420725 667048260 707657352 726975655 790543595 869354302 913917909 307307744 443500690 1836748 46551618 726979694 932437560 423143734 759438553 730985839 914720795 861539724 959800771 266638594 389265319 445103346 665146597 112661188 679082767 837931829 841263513 200048058 415737558 600594190 987036130 684380276 898970412 187052331 828853830 40198989 283507952 171930260 886668040 20494678 155129508 774056251 859656355 697560481 717434892 387901751 754686114 937307116 942516656 614165889 902757138 410502984 642386699 102057588 742127137 597542606 855087528 956855967 991822173 937380512 960470629 322644010 483358935 919852220 957135463 224761900 408995182 424150456 659634077 589111873 696266906 539601941 680421295 9606676 941629172 489347089 594531357 788264325 989342363 102821051 931670275 482367287 955625404 758799255 920313253 350272763 470870840 508988078 946083348 400873635 930149274 724896863 994090933 346573845 624425935 457753240 811633934 412505157 528142211 351464297 720911191 235470572 631234905 247907495 276952254 575975202 602752058 267120674 405052012 758699969 843846933 904455872 981115007 782934961 967780006 630073001 872743362 186431293 828201541 195176830 286686137 299122306 681660100 927510299 963186278 625660156 721084029 973784118 985814026 993965561 994375755 873558836 966901403 970004792 999548569 527473006 689945297 718128369 945418788 584146119 779573898 969531228 983716898 393067638 635907725 421248616 895020723 253231506 376199852 632352793 947667317 688670049 845572428 748398803 996371294 447360913 529037006 859647662 886103753 280643299 449237914 413474976 760360739 467949625 865983533 523469333 941917365 11486996 399177834 652151854 834433367 450903502 982926582 560460553 926189178 97666599 417445109 320801388 665335427 838570276 922952644 593445075 997913858 257501256 687323434 587032575 696431108 178152356 714414065 174863764 391828907 380086470 659693655 872874021 934785368 488019692 921932337 934156236 948159982 128503015 449050409 170767646 611758904 885725306 950488593 34401358 563535932 256724713 329708010 544919428 552743829 535124900 656747516 541385036 840971443 920211490 942702355 33679317 520253372 842495686 930601121 59488 963274656 437521413 691253401 448400158 690610681 112214637 733391729 638005571 845205342 215928239 879728152 907192706 921337959 463468554 721536149 110171587 180222696 379570374 426110576 608389437 826252215 210108312 559900906 648492857 845401597 834542599 934138762 726498846 829458630 12306078 765847808 426094640 766148180 816083135 913543243 601380483 636671572 822200406 938900309 504782865 592890973 940342436 977800088 992190530 996982983 796423085 867155058 579805376 761477346 559948547 960249597 657735660 830348480 436309734 603995410 621043769 960447211 134969404 417420134 530397214 769766204 101227578 273795593 737789546 915615807 819330602 848920089 855261222 922715835 706339009 867793690 544817350 765083825 480576666 569186908 947778161 994221640 863855143 953830764 100810922 532713857 722786512 768825135 46484092 795450985 232726163 386829879 372208053 996930116 690052109 786319862 939084600 978281334 476681833 582700569 518585705 928507419 414288629 750276063 15261910 255596598 155141649 984266260 414760185 896924923 273858674 638748871 586646952 775182579 976814927 976943850 190705390 729046507 760720170 863975942 923604244 942609673 416411566 692659215 211662026 319741335 982428300 986948054 30084390 309335644 917877483 944016197 833858017 938729243 628184869 975428756 133767687 569199651 114302298 493687471 822019645 961077177 947065450 957883975 267613571 302473043 351030488 666134149 216262780 373352345 818024338 988015655 230543494 343265938 811343014 854516020 80097669 826152523 469839674 612321395 832684204 892654543 954409776 959421994 707324699 895484230 92014846 336993427 999113947 999485862 98535519 679744290 78690416 875190601 280395790 374422018 492358431 889963435 111378154 256438699 336078968 791577621 280567240 573724766 574527777 853720324 434412579 694270817 356517965 616683331 712647958 780722548 242624275 916242016 309161503 659840173 953170324 970199817 2621987 387517695 187473891 861894852 311316930 377534240 95337862 307783861 688311121 768885447 742750132 745750317 733593445 785271240 289464626 435294071 421898020 521035991 916474014 979298319 377773343 725947311 257763309 822026305 333342044 369999129 545361454 845174537 677551198 834035199 315531045 963523339 453809238 926127346 672537890 941592228 515091791 884972090 827708962 987345094 839349707 883353598 888679674 992476703 581792175 814890877 852152364 920096953 216560820 743491182 414821115 427296401 275343102 718369547 919496884 945582038 907605659 948858586 42111842 499843487 593765009 780382537 771137603 869181496 915189311 982940912 394141489 968296047 42801146 738584239 894488464 922615545 654674833 711689174 382077114 918737245 330542895 610106554 527122395 826229732 428204944 737612951 783172016 862357412 600314018 879058088 530198862 757002248 661412382 742145720 504578538 638915545 56577099 245290745 240371695 369999912 258281291 817732920 834476286 989469801 374326589 599831740 467801091 904113953 934344295 974570437 355533798 954725737 671777591 930798228 326046893 738665159 250058880 284732315 363455806 547936212 878666340 974701324 766355323 969512689 308234728 411569725 75445430 605611154 951624088 964418635 422262838 970241526 793468769 977986322 171402149 696247828 740961947 946948374 832044536 964372584 244266585 508563419 7941404 614897761 425119083 857551819 997745434 998352449 12404770 305068121 840584328 984523599 5511449 534691929 552773670 804981620 52381901 703864658 533629603 709320232 209959776 486201541 200768576 490397399 547969630 752197179 603815898 980651099 114404916 615710341 148212773 903032917 662231052 807760195 500055227 543681856 383066464 900694505 578689427 728633886 400281657 501888708 754291389 984253571 220124710 446066945 960831067 966375113 92726341 360227074 405413897 546424437 64861073 999669573 625863676 798913468 852463710 950938096 900685804 997463771 328546167 686940109 243095987 436465517 508191536 800049741 700054206 778157396 38995994 218842138 887951010 931569278 113430158 842400990 266317127 849288420 748324093 988686084 775352749 828939150 589318073 927411547 553198156 827310858 553027427 714962440 149884107 706023169 895786314 976485969 528227513 756499703 866656012 995526688 857086096 869609378 694856552 977663597 70708278 831456887 175928498 570304074 99157172 394270738 984178246 991807875 316438028 390816264 931501293 939478404 810273473 963709764 271702048 916425482 356757321 548552168 736643305 957330621 946764569 980558466 855525664 912772643 162683738 249085508 681122450 770342135 394894116 911194113 442166331 886321326 54090348 827084183 491993736 987903617 353663889 591150467 104194523 478602131 508070053 516088055 757298649 907759059 768218348 825529030 707870636 779518086 397486469 729220908 37023573 226832120 76555293 432197998 302533339 773084300 488468437 726835390 697718315 927318683 665538317 715284173 299828514 783205327 223215665 282129638 652007050 907177711 659848630 933120680 655542941 852259123 71633281 864754612 76716217 744296590 132581624 271451402 583523619 831699796 501241667 776327565 909401296 972238286 167632617 744086556 529039209 700957564 860155440 902888036 809078260 903105630 604320753 726143561 599267622 881657074 906884250 995576404 373137929 886393865 380884546 793825758 509833590 565733656 437911569 888008168 556639599 773759257 409229416 911037274 993956509 994643242 412252625 639993667 746174554 939723376 487988010 823642728 31167573 155167810 594699818 799036753 122347999 971721168 179942786 732656856 638957297 699532878 524785606 864312115 523783249 930461404 971695391 989145943 643746041 651419807 801725998 816235536 42563409 916024906 542527155 802793306 626758502 646186242 37507289 302549797 192761241 795754052 516828819 630643726 307889549 394528948 487912947 667295530 300966569 718728481 735982492 931485355 115744670 532778624 470483112 926106548 192874226 441692586 935742636 945905147 384181283 392285247 409205393 815965767 351471134 808444483 385688816 587958761 473749445 831175352 916605360 992245983 191751236 855103518 123815265 479925036 983341090 992979318 395060998 628771624 552455876 798729835 976505595 988311519 459835754 673925580 506837478 688423022 128360292 286766385 6839304 287149255 45121941 713127876 387337936 993728141 176376277 401885188 193715708 981085896 998659842 999842535 999235418 999812221 409154259 671986652 48575360 275562788 379201501 813103366 158273501 251267849 823632175 991336787 656286882 999490748 149554228 490157239 907698338 911567684 760036764 796358278 276339658 788278654 383065445 433452089 238557548 390363572 573482300 651059182 314869948 690401428 387309443 805463995 362585125 900045315 848351207 986352368 803112758 864279747 639141466 753758740 544287224 941511943 191820568 821461772 873649558 990450754 95658644 617387002 948144145 997524949 647985978 675611113 147936931 642059877 471061755 827766321 671385978 731769481 88120507 871368770 980957929 998802664 303035915 446819663 856282293 919852014 545821692 705061503 843842630 941190850 594279175 597724594 679861562 861781636 448442749 980101316 690860843 783133243 80796666 338694972 5244514 305981977 957431990 970362217 298565678 805813859 387743478 635079052 722306558 977080563 698325448 879702969 682575293 714497431 288485099 606853510 759015462 918119571 491308322 496705445 331374750 576092789 449776287 593027122 638047510 977961912 45150400 873507150 566244025 766663979 338674900 399359577 492630749 705945825 810527304 844548827 377783519 580686968 245604738 703743307 53953098 809532241 579745387 786870423 536785339 554186431 802630875 862379506 215613548 962131772 654474125 700044551 656214593 822339780 333418236 502051318 170257625 873606355 302488093 552371707 613751455 664030959 840401006 886945011 433750198 870223521 163057332 622783843 44238230 707746211 629707669 983307159 325684451 613335181 269301474 398326121 869475480 997626600 104539964 789939060 264786218 894603058 247106368 918480745 650001772 775546781 942460332 975683902 11815310 114242029 641062838 738205254 35890739 705068334 677508667 997320908 424164971 932417874 126630734 392938910 188281234 933938153 159173897 712574580 45274714 941492674 824369400 955324989 310806246 916215801 268980563 587043374 880141978 954727789 437017529 733722796 36562863 419704874 686532270 776640206 153734113 511672898 433789213 588779791 682441782 727523068 747430420 973044049 234033287 414395387 4408244 33378607 128920932 987087040 603874521 859690441 864140465 928670850 564556753 963567196 967833432 969654681 860544437 947176314 940152701 996927932 735111321 919719265 269259439 840722169 682523384 911587028 278718251 831051166 213140923 236973984 730100954 765363166 449401863 695153973 7667709 773792436 62394886 574179554 174666513 912915786 695212424 899473346 844421119 950980466 736800504 985398620 432978205 531941689 990507583 992120258 362945686 883225390 187744845 807199519 519503588 524097001 990703885 994920583 612872414 930479979 517635632 828715613 755351027 881049272 324347341 811187413 945252036 952257187 28855100 363861587 606053004 755230841 683321737 917541969 995924753 997521438 801675580 834838922 19108398 172502232 253097758 784665467 500861091 556186027 962600804 985069797 812202277 975596030 533883719 754640993 492233459 909940947 489347982 901936076 17245983 690576618 840812571 843111893 190193758 709368574 594597117 857361416 149125711 440888344 479905507 793019459 745016075 784167876 810964894 893186147 257928081 971486056 294141449 509635740 205407257 799106859 429998485 658060068 309713527 509631215 927615639 950058787 607871314 892280643 800142861 833100936 14215922 775457779 389939092 610399428 302308521 876855470 153765114 985963342 411527341 912880652 159954677 994918083 87887329 952854072 347225984 522280709 688408164 804015750 7947324 159774433 68001405 217813020 490235632 719559862 387485830 885115022 44527404 275096835 968329493 975047235 223236670 508419320 352065810 926511585 675706236 937730187 33063582 760906291 225093716 727928531 268123810 614171656 236318214 480940691 575358101 786517416 199687116 301491017 873729411 947315474 356989390 897793415 565926515 897918639 746374587 927417654 390142554 628637892 587257801 721846351 566069109 644552076 891124311 997131624 366045635 615724508 191285535 529031140 426260587 496523373 553064126 930801781 564066699 653826909 82682361 84181218 725472425 770743766 765824372 970901687 422931014 445380018 201004655 203467270 492237168 536183818 998288494 999692860 610724764 825967260 61339231 404439247 222287531 356391405 715726347 837087186 78684432 469572751 374905409 739297728 514164186 957466019 277256678 953277277 419271170 976164308 117444939 417535889 623316218 914736046 29903218 297079318 492880785 636223667 781781114 854873626 24980860 835196787 575569365 743544386 563990088 974541175 50741831 651417417 266529999 418377390 502842348 545904568 691798871 721981972 820167885 954945442 390332793 476254151 811691932 859659684 661031324 758518145 954501201 994398199 501875061 779295506 691364847 810593868 62794560 118360754 445303620 712198545 492227454 583120814 965799892 981742681 595368175 811721599 473179880 793325212 11475997 745042323 215131446 722394865 236256496 740659359 142101978 314258534 846687155 930500576 391523808 957842824 237331852 620093509 717563549 987102379 559279854 745787604 153875070 577678688 511027694 742169592 951880519 996735709 320645779 874695341 701268654 940358536 708312981 851975858 582454422 692868986 553177812 713296281 693528352 907317625 781252773 795824817 528422229 755934087 893743497 999961554 996552896 996864967 157861239 638257046 709044960 845485569 403214138 716185357 79699709 222107292 879229956 896943662 54026434 249674290 37204790 151722686 362270590 827190700 257479532 710479368 267025528 828873825 71991995 520123852 202067921 805465818 423162685 683327324 109629135 284837984 365099240 529938497 11216400 221825730 728113184 826637324 824819482 856915498 773164199 797972359 662331383 879032702 427212379 643725277 733150607 785833949 212326921 499824975 988238624 991422657 863990090 999891303 962207419 974066280 763088483 896935825 863071268 953540618 499894870 755898660 753371363 927836585 606897083 964594037 882929566 904369615 156678890 834468179 43028145 233201404 230905313 871735543 434939274 880686260 112248258 358682093 410964954 673626826 635154321 836397959 289865961 938717808 703187531 835089481 818758808 869413799 225629123 821743631 430288689 747386174 832768591 983819886 906976315 922449860 114040201 806307368 944497080 988794397 468814653 747244028 129128351 489730510 500377858 654228143 376493354 476144432 248321253 453136810 240911539 839594032 239144452 904178051 513169437 999045310 764003393 768923179 317285413 754860152 970419096 972438566 645511783 980579523 723496641 899644015 174080234 892031895 843920162 854122478 797276179 901650511 10357865 809732117 146038028 559733865 293470626 807272086 837030249 896020274 749160645 775406109 455596286 738494454 733236085 835165284 906304706 968908439 673874730 844976930 413566012 471590688 721388676 839833472 590958510 980777642 883141856 924479254 21609783 830735255 222711107 261482207 496648680 533334585 342246277 480244301 831373137 916285142 435195562 898991207 582608052 748536813 65475569 734025347 454256784 621142737 777631073 809985773 258875332 984831074 816230934 943512305 968127217 980077002 930941193 998874772 191146353 390636790 589083074 693181843 849183286 950253783 928744312 964499075 923696829 981318765 959494757 961120300 92002465 295225814 75946070 113689154 940445183 949980192 693594196 830092358 646169087 730797238 375331522 628362664 166907874 879026544 482150206 608801087 807113898 996461708 687303669 972327889 807345119 904527625 281510206 286005839 198181443 351139688 218683202 326507489 494144176 903407181 705533434 833883969 58962124 702065903 772992028 922232300 279800891 472516647 805410490 906987135 704739424 941973658 754370739 828958270 862894664 984041839 695646985 863644229 267107635 386940268 771098324 780318400 992363541 997626586 877975130 946143771 255288148 694446683 589575723 591565118 29310739 237429888 688780872 967677412 430210660 734835976 847110150 863145463 315592706 584587288 293091128 311286157 357252603 752750311 141950053 233598554 283974791 757965118 873528209 967147303 294166674 476023746 176835721 202295394 573240646 985588340 296827410 935944719 794506306 807233248 477366905 676152921 993775984 997956910 208798656 841722662 214829744 446517049 614851677 921822117 975079373 983155648 318583540 491760912 189097835 831216377 213897198 986484568 122774284 321828903 804064786 836877455 806195241 858759057 826834491 892166865 274048432 669542546 634161749 962413386 505161177 562556476 390626247 864893811 55013498 867095121 657470942 854022195 887648158 900094390 597964245 969727043 880717619 908386348 714842762 930322146 265289325 834218782 77873866 516822975 682366170 752383845 889737076 982929429 55498058 622774993 292163211 306035111 718618614 844745348 756641163 778121484 58454689 610058601 464168349 514880703 508510305 954012031 642453344 945581452 879930490 948644312 171586773 598715483 336544519 490043611 929266856 941909333 829793774 957878418 344654601 556442036 653542405 691623984 865424068 930355757 324755436 455341904 956876750 962834962 632298268 780117208 542100669 551711037 297016697 381354601 324909641 830821238 788148657 845360200 780058906 919576309 529425364 755857886 552186530 945728688 870485632 887660976 479508670 536411890 308678878 394696242 295659441 903995062 789854514 948720407 871646306 964308133 95041449 998705260 188052807 562134607 215095738 515940361 392758004 418786844 241451839 803181169 53653362 148998115 892549838 946444865 607742691 635289758 364984173 611757475 732601295 961650568 730999169 947257207 433300147 685630795 483000240 886068875 929360309 968660811 841526369 912228506 44298348 888106771 22914818 381690692 154817068 750607375 73343275 191357168 365599965 722394997 329324496 474445605 337379491 487189028 670067306 863289172 676904002 758964167 372368427 640114594 538685644 628629481 142209604 841176528 568490761 747175582 518721171 842153589 977911135 993282782 926082402 987574778 756859964 952228106 220555827 910752229 244886679 731056443 302277422 550026487 317649746 763079180 932198834 984286637 353268132 437415432 702483372 740720768 590459822 771047470 159430076 806997533 981249282 996977467 568668492 748681684 946026566 964235618 942914697 984658492 728047900 784090203 707791920 811140047 147653910 232066130 822613223 947852747 820352486 908158676 825101744 875525241 287900819 944987066 737909604 746693888 987383912 988607056 408539627 926025549 980898008 992674600 313157964 520688338 641481190 913819790 564974568 665705253 941783727 991350774 414460253 499221253 502784249 668210381 928384730 978079843 635926318 993681432 654249 817591405 594242113 635065721 504202672 840372148 137916428 967796888 398684974 786459889 292360249 491477929 473725798 847780097 532418035 778297992 910493939 928180195 277479517 520345943 348377422 798522449 690813626 699640035 989229863 991955064 231399954 426185874 712146678 833599610 892831978 967938717 945716082 982682092 275914365 741243811 578732769 817807406 837662011 850277412 988149173 988571606 257126272 312661203 347832056 498232605 160658918 172357108 22757525 231645229 412590677 934598941 416575067 887957797 800678436 826526878 599216427 984466161 365469701 365613466 880900374 977467112 562641229 688633416 300085512 705633707 73548564 972235105 632166780 828769526 1114696 285015204 17717391 262911637 300773815 917938445 260457924 879118233 405858920 456589687 270098754 548987670 576438066 710773940 173793670 709519422 23052098 82461488 298693513 333591377 936130998 945158867 37727150 651767305 286870050 609417257 643838266 698223434 140188477 878592608 33120970 747619356 120593627 395719603 498857050 952442636 947897738 989146248 482170533 952796943 107297456 216859659 302955075 742600900 723425236 982032977 538824545 971964491 757119376 975195395 884606271 964627899 492737978 504020451 445047613 626863908 159035655 406663061 930612974 937534915 201801048 790164995 657086948 822063351 416862171 508489461 264600935 956254276 993903176 999797958 36203933 737308978 734258237 902255612 962637533 988890214 869240139 922960255 508959370 694369212 766524751 905959416 69737208 665872044 318136720 367092247 478138103 774978424 299883315 302414036 802094914 822597035 431154349 955677094 529350032 903071704 588671077 630264588 234265394 849124930 869058238 993364470 932090412 960422845 462178605 729408328 57223081 687864245 943746952 982972872 106873543 676824387 495056362 521059844 70577952 830879359 919633332 960016669 656470879 786030864 785747620 793231768 249278456 573175983 119597849 864631650 496097187 547988590 923620601 983227715 16607676 112892467 546518044 962558701 767144030 850091065 864234318 921627833 899758627 965882069 575189512 687796768 75497917 274820061 670258990 812689986 521281403 932325173 907641545 956960718 377030803 532685681 357449866 416803024 462028067 666402669 837483078 934595880 814087548 903241384 259272869 546139069 946266223 953221853 787619708 906653938 728396343 756959978 828657528 951357104 86412926 825994659 836596553 979834032 587261256 808205746 528633147 654730622 143123849 597354833 640912698 675988805 83916214 235278687 688617720 997163175 452004684 760268320 564141752 950483467 459433736 928460350 106328876 844505636 939299662 947132019 715026124 965579993 19999385 792144925 814373584 969377726 29398193 421664938 848330520 904040453 650630800 721048391 330647995 664429670 122305513 819115728 485376185 966221614 448161495 833364523 217539857 234422049 274816127 569206551 466924029 804484693 709803849 739120203 364515734 486837163 792406312 860673644 133771502 218788070 796272415 808310220 400416376 824989148 723594920 860811889 217535622 975960192 608025447 661496035 598394655 628941723 779091489 996214407 430406750 985460107 533165724 895053724 381747676 745551232 975798711 995642189 129596345 429489365 207446159 800079877 378575240 663127697 715741236 956314846 988211134 990309208 175057224 287033284 349028439 563195647 647106874 910049269 681308618 795261001 615660438 923981135 52823188 624925179 159293169 186971887 365969266 953836779 556042675 945777493 792336176 891414476 271922377 821713493 511657029 560605260 138301394 995042219 713048329 997613438 556643468 750896031 609111040 674255261 539639810 649875671 408358470 419527971 407375570 453467789 305317120 795670309 274732872 832396883 682972101 791583042 450784106 906147436 334381974 341117730 162910174 562905765 158206438 793212788 816794297 938584218 70083727 314342795 211270064 403994080 150148692 976727967 826933966 909142769 469428432 983385494 601850643 677093435 352681892 790882064 711878650 802136021 744340045 869594181 756641906 977273501 512344210 704672319 65752403 904692551 836591171 921718412 740135029 883140240 159283870 890959933 656770375 831084570 965855353 990242258 944224021 968946983 248343178 643285922 334018248 359722061 622736751 726808398 777618946 951352568 679610790 970969340 214209297 603794656 945274459 977008968 869766066 985625756 732142965 815736182 116292992 612100736 673960295 736939543 762021110 829247006 39214426 370088102 493785825 949159443 709271210 874609696 301026035 628829448 329660984 457272781 563564252 681722072 540065386 732193694 604412236 754492886 265310560 767760946 558694860 669942437 921510060 930399778 344244545 429179762 215432725 648564133 712562467 914421510 982878715 995655691 923524182 955853792 781686264 784875928 696677424 968027246 532785784 721884229 15877950 621868888 718792984 787521421 729585067 833444930 800772481 808406217 709080911 753737955 956006381 999828396 696909968 975292011 753829211 949734609 120720921 808814490 497097206 862845412 757775558 886157554 626968814 810592473 840940097 923806931 19068212 117787563 782350293 935547534 818431339 838234025 506098977 969695924 622659250 934718064 832294243 929279091 291394676 793024788 553810325 994219291 341771231 753123672 249892381 287903459 328665493 962753273 547068142 905425260 366046914 422192106 637504625 938254355 94272472 466102216 493796557 696823086 82214285 142552149 353461459 729125044 691411754 983402453 605909122 705139555 626614840 738966076 800226424 811131456 336905526 875292324 131455814 961466457 862493928 998682176 907140142 920884767 868602635 881146409 184328109 973573443 198700198 845512917 552528740 582554066 418042459 523132426 12381889 793898431 442695927 856733359 669091151 820988953 380643402 896606819 739122423 884961758 250299278 617824279 490236482 986468731 986684894 987181287 513693144 622733830 263531897 779940156 218672920 351443642 706856544 882067422 306707337 744934262 825129461 983018621 51268741 770168772 851300874 908020091 895759367 918787172 442313340 973093492 895629624 942752270 361094591 875207465 576089788 613740155 661513130 679378320 440290942 689660960 182427153 327539595 277840918 329380542 438682172 557541980 51671910 655079527 373426721 654184277 392276919 669489511 208793636 996068046 959733805 977073059 541359979 755036205 355716003 854418212 297933961 892166753 573211643 982050778 36151977 942734692 692938329 997858063 824847389 865737958 677370205 749011017 218626967 701925499 846331968 881492689 435230045 768630802 703996534 827680692 215277572 511346439 631929363 654310858 413366494 681938678 518620064 639509170 831727377 980631132 570381583 862773666 697428581 895063214 332612073 749097615 1341066 638590939 983695098 987687228 713786446 998909889 520075645 766715831 250306682 615545708 723936095 838468953 504491428 992093527 700193182 858282448 873247282 950504049 784938935 936511998 392100440 464584636 456110837 505904246 364694685 411783618 525531986 900513796 621475881 740117268 469352436 754637053 542906625 793233800 104865066 334636605 930363501 981777316 567867917 723197014 131853778 757384592 144438675 652991491 13735833 151733128 543562897 922194522 357973214 607083853 454737123 805348915 685950699 974020406 133237805 260439331 907683184 947379979 790338764 985575747 727179860 790563489 247758574 661730605 928607631 981740376 26496404 99075457 349738636 531662470 353905601 671970329 847719280 852561739 533274099 584668564 794417304 821088576 239869642 655274411 808688472 819575511 820791667 974279304 592215388 964251640 512337142 672248488 350527580 905372948 94680924 475210001 402922274 550589072 614748245 855524348 205202446 631130080 134321522 715028230 786731796 876643035 678557685 835095070 304146347 722288229 796945772 952677215 119823923 846631935 26302168 357455146 261624612 281083310 875168348 955973186 591721474 931556298 753510665 861047731 388335263 760310237 535127950 711356517 345788876 832675293 56275111 354086420 584416384 671663645 938136969 999719590 142685994 164086295 502873769 827057358 610365933 790504364 398406873 916833292 122809312 481389226 365846839 872117597 413830276 733174029 26604052 631836256 494130595 597881984 657169934 910953245 450137209 547545749 905427902 984924481 506447159 892318512 312741564 820179139 37745156 931116908 354251708 626295708 412559402 576883559 724612746 988785147 957370024 993272047 939405738 989501951 464865424 487682363 738420541 906661587 723981472 725245256 488046399 766641917 954811640 996827258 394656183 954400271 379887003 914721087 379757960 909893835 711559204 787340967 725608016 755337624 619465220 996763842 118434008 563060207 591240815 636889814 96707474 403044627 574744244 899264651 936451604 951753300 991537411 993554326 390315813 405070719 197083181 292328521 806601674 963739500 417883568 702414201 784891415 959656514 995681431 996089617 883706356 901088116 450738973 790036531 182480275 894603945 134465464 712334050 942291282 948383128 927745089 985825262 647598508 952190571 895403579 959347021 103086693 611350020 747876535 807851411 710319102 843315355 386679325 790661073 893429111 974375072 410931069 732031789 542907477 797390499 788342292 892709853 660174211 862840748 143276113 552092588 245298210 417993352 980647946 995887750 182528547 950819103 132877639 758279930 713886972 983150844 816913135 973811911 859194483 967394045 432678074 929676535 433401914 772754813 655376491 676055194 913583456 927188973 549389972 647467748 305664235 664400981 343645504 384350243 587449456 731971602 694771112 741250476 724051717 930263199 439926064 800708851 160282533 679513006 785654396 992343193 675753548 934642791 188022215 704202662 283513710 821387528 146030425 805858019 838575496 987479231 818328342 902910228 786192312 820080882 918345804 948765834 347172577 777745099 748768193 858969983 95115552 444548251 320702814 587382654 715481122 882793996 292627219 450595150 822490349 909220464 452260266 951986633 303299469 340365597 556209846 857614447 944139353 989922879 745771644 948054497 771895986 934518354 337690653 965530170 946685862 988655370 375260591 928720421 973321718 991684111 699834200 730696564 825606972 855628734 212922925 246998824 509094003 541923379 652076804 664408153 444493825 608338035 379694015 881132304 717887415 958807320 226010742 862827900 450726782 508093782 602831444 957550007 769679131 796541980 580882974 763200788 508930466 677354654 150755450 171363836 762981135 990790759 285603012 477609278 884874099 887478416 746491724 944550324 881771811 940751966 638397049 882500928 403238894 892594854 772038113 788385466 948156842 953419312 752819170 963548015 620231804 752328031 59879188 917607409 631155421 904165289 829277834 908951459 489855162 840951762 337929649 946828483 806065352 863924390 480981782 743565078 103604991 238367634 240873068 777170896 942167227 948616957 969476439 978042161 727154431 927272684 430370222 885744058 655088832 686232435 186390312 292626596 518726868 895815067 236527608 567259445 14429573 862483240 125827908 551601087 6088152 963067814 245734652 823656138 210921438 945402710 398043052 751634699 482188610 784673582 93468708 527802608 211371922 711787536 969892955 987512601 829030029 833589357 959812311 964400612 767566977 998547736 57838443 663606221 13962029 100973315 347925893 827765538 911571552 974146139 718051957 923016698 575121982 922506794 546789126 626031335 777364464 973550750 477344004 507024976 56902640 790131421 222165806 855315876 469927614 925895534 528017808 972922416 830157220 890959498 438926998 711718772 20705266 381254931 686122466 954342489 398575352 718742027 63740917 85697899 883361815 973279858 612563426 887031410 306092553 394610014 361915125 628810127 261366785 782981760 50820447 565415957 283998796 876297928 623409110 788539162 228713101 579626621 178062468 387404417 781229466 880780593 82729161 683310948 750725843 877698353 950506328 968437973 756249669 985753773 228604318 567593791 477494977 547371648 481022677 638898336 37748921 816772307 551056575 653817563 485306819 853944659 192012211 768748642 864635384 942886853 164417845 369614716 459157360 474407815 990646198 995891647 405998136 981332819 589883539 688940713 533307746 827969263 16475503 822910061 359152441 447280487 235328866 383036172 595869325 596921769 584727255 625592035 484839744 662343312 370989259 487893210 786208681 797735954 221329941 505541447 49735009 605680912 312558266 347518123 450368931 872966228 728929462 954677447 582066207 625483105 709547659 853121116 170469501 231133888 750862086 806345991 141604162 765591345 553539662 825585276 913609522 926979929 119826181 363339960 538651003 700439798 488657569 981165153 315721403 739619947 434254032 925391209 569600773 957249324 462355591 569851570 908851950 940944715 454726571 905744351 373348113 848832612 472698426 962739762 151220588 760675892 791323155 960803683 538096166 814259628 786650260 967062430 394137070 952366526 128526929 259257118 416934303 707530115 314282768 641747814 216525657 787533374 710221519 922186824 339437941 424256170 580601318 855085115 160026981 291025338 946865552 985915532 901520431 987109555 417045749 427568861 698283814 949414570 45184851 272385687 945062015 967039248 866919480 902936087 961565302 987165886 779234398 972163580 18175209 625320873 220064771 469722192 470997180 868667292 669313579 789616502 316557203 887875712 351920402 844823498 291451417 465444752 969378915 988779036 558067897 751594880 744719821 996805394 210411853 850972439 56972835 496313394 786782098 914953430 665029216 685770876 911883875 973936690 608117295 637289270 772151216 898860188 14774145 337032399 693040347 788476528 547828419 605805086 982469310 982928015 339747805 929999299 939843036 964489764 835595270 857548956 745201732 969803506 506710874 561413189 52638646 122396476 870554900 918826939 15050076 474905387 758283224 936777628 304552355 622852008 819532328 978963548 277100589 604425349 835609731 948171477 253946508 641992325 447837015 479718111 827454217 926926304 333343731 899048148 717827667 894227244 399469838 531167859 980111315 981535143 45930901 536350947 308218634 679163745 229368137 244456956 221467076 540601728 471665770 685118964 266481743 614888833 978822941 986376093 501883850 872031466 504496110 717003994 134926544 615872316 398621768 609482538 755986021 778403569 203752490 648294895 781875256 867623653 149760872 841317756 707144368 859441902 528402195 895106699 363875722 934876347 64974419 735279880 238053746 308908603 929458822 937864654 524870789 939678553 52923574 725394030 681475899 693968820 225618866 988950666 123877793 902892784 339930437 409471479 694638976 858490623 416840088 870742874 688133679 691814873 327923863 997054360 448367229 804425613 841461696 965625726 60980676 354371113 3814824 900662274 948665237 996525157 521013558 573393619 332138851 382682809 247382252 715751182 791303031 877980447 10519252 79215371 168755647 316046088 602881608 634875560 935317997 943480428 536004325 927864031 65516201 617566989 332442210 354782892 896096731 970509326 581694428 616369657 416514966 580541300 618868903 823761534 888289933 908273736 586327920 627162166 291709763 387919509 460453911 941347658 854459196 974624093 73583575 411772388 681208789 785545095 909061101 923120250 641560918 825930515 734368409 838309365 495467243 758466549 942394448 997577305 662143830 918410634 525656909 547306700 947279328 976534716 648413601 796292173 910468407 984017944 63182440 665289235 373627921 438194402 638407856 787970861 667688913 754115181 494747833 973909177 414842274 442478580 335452977 651833623 655303818 739117007 858859460 968071517 77501434 493888087 349712096 850031160 89214384 284193839 664404643 851568338 555129255 909566708 390355244 703274942 914125743 960991240 110306364 537775007 763837953 969466749 627202079 892582725 415845158 913120270 51375286 141041171 419944303 757767206 783383020 939311816 255564711 534634722 636903674 813374852 29477828 155004201 256607275 655321379 816886452 961565727 62125643 974544426 25897745 926650987 657474606 873752473 346626983 942572066 772319359 946474726 269013120 454988665 538555769 706908394 409653852 872564130 60726325 717734780 673106237 824378194 205850101 797276846 224078787 434424767 589424000 644460031 199154170 826943067 565196343 829097182 475819366 878901094 930368252 939183403 801848570 978840469 449183614 620644157 253428199 612092200 81444320 381080457 904359721 950840585 630630616 684698895 88244702 589515733 713037879 995494293 638562533 934496366 86052475 138291560 737058583 841985426 887472124 977207618 242201086 685548666 850241526 984137556 555404088 982255448 758048019 860973971 60487593 119752921 535116813 586872505 376409066 845854357 264685983 687628068 723567058 881656836 572816273 872167312 476660146 739533644 652590713 977890816 833646046 934242090 668847928 776261610 565138159 788183953 636349485 662995776 212919904 857855277 568463645 680536741 997978127 998066808 255410784 371717386 191625987 710850584 176198623 961306847 842914247 870744198 843554633 848446640 633969362 683076768 827240628 995900696 38250878 247353210 63228988 392020921 331287458 714711230 681565334 790898279 654986919 710074568 995958301 995961579 169993858 789730593 434692594 750278628 188564631 381996891 150465908 326901440 549169077 804949259 804336990 879066708 134447703 909743485 111286255 815387258 793267409 850482618 569312952 778168504 30306532 32007275 186390635 650162963 856977061 928028971 37918185 714428132 63792528 871208416 103392368 428854215 593035563 843036864 440918446 632063967 723028133 994182163 573916311 792799494 25052836 965298197 879579802 935647731 221311260 482515410 627289150 877341385 253420087 599469743 233323189 304096609 207952356 257543009 545044923 965798486 995317472 999512020 268909194 718935876 701883271 935961608 120018628 654130331 953119944 958544540 118532121 861523143 96367784 795056581 316946328 367989939 52746886 788579253 883248115 978467058 606082016 851297131 291469827 480851943 335660983 835869511 697376654 958422106 515029984 810013203 249808113 316190615 987653840 995676030 690039822 716270708 76157744 480970004 495769706 570764258 685060251 782770515 575714318 611501369 793605499 838278287 895260587 992275499 26816982 710179459 691174575 785017792 570090142 764307655 289700240 922729946 566341874 568690037 633719017 855035986 86816626 957742915 632429009 946084753 842988374 996870813 13685043 166704778 561634203 909829958 354650395 705158623 254432887 267458657 204480016 658842199 559971648 620814214 290176673 705316090 839811527 934410911 904211335 913050181 942051374 990582299 309253474 637404847 841056702 858755265 235470041 804021237 72221898 444916968 170240526 842911325 26408545 674822037 129273635 301070673 410968839 534350386 516771954 541622555 793368685 794280798 663253872 965435788 427618662 828153792 297203566 902544215 458699209 700745253 319843399 767605276 214770701 323661812 816453322 999219587 71550947 867337763 184273317 546524531 106616021 899844987 973204870 989371815 3794558 250942133 385943283 700206158 60510119 949318523 888909206 924077071 903425907 976228716 703625926 899776928 265586049 744924356 244443678 936765062 631628657 723961180 672883958 681670990 815179302 836958159 53712086 693899340 489339021 743472869 856113817 953743669 368876316 891353709 907463660 971605729 185852122 787154556 252955623 868020684 113288541 965907794 358974560 822078122 740646216 742922788 617439206 877572422 22296526 706651375 776086873 789459293 989014570 992846155 10147293 544810598 866087852 988867896 920995610 958195771 17871943 742528781 19462240 373271542 790810936 825695961 21974306 162168769 430873037 733867886 188561131 516369747 562574909 784465806 438676497 884840370 419644451 536505282 502812145 512140634 387720737 900588536 274082394 453357393 206710618 518464053 473806190 541498379 373075991 420647525 485989776 808448593 833350528 948400106 922265839 950452684 11725843 684006726 185106462 774504437 777475306 867642515 99621757 610573619 218349119 524009185 739191859 904631845 435254194 450077423 485561399 489295857 372048520 374646006 801741209 862959577 566732971 838104903 229064492 972264297 310385207 778100769 254976718 584283764 179586960 197648560 668372359 917881597 523127253 727969914 61878555 871544193 788393387 855633908 610765601 749415690 750358358 815925955 852094099 958838022 834851674 894487317 197731286 709177012 684676915 795914185 907584525 930915025 519456061 986574805 939565392 940618668 299826095 517797630 349371238 849439359 107449227 487865687 925079299 936058636 295198302 881671504 148179395 210945984 572593730 626651940 769347626 943368132 746724896 907210876 38340588 606658053 256158800 522294660 344572612 558254919 14037963 418065313 238687052 800996736 668876138 720558603 163862341 436945217 766679651 768854715 84584669 428126814 764322501 788235357 115879183 399519171 179457351 950945295 87803784 352759174 426730628 860487924 564513917 744738476 889615800 943820278 478945617 723744141 895704236 984158302 592594605 683232974 706955027 887312838 484565698 644769035 722297490 859618344 341031146 721594395 344361159 753171404 195634886 925638608 769991262 990975630 633673508 845056220 972870146 975405499 621049508 691506306 987436642 992173306 981844508 984426755 596638050 642131774 51302017 274189638 585234860 939332195 203472843 991326461 99651475 252069430 254881765 276388812 820724516 831794773 781649703 915428511 529683549 988028736 39667475 485901898 401341287 958412257 805191971 819557428 426589562 822349057 469690120 776435012 183449225 301497931 994917173 997898596 980992816 981832252 66759696 727762216 962760116 966703211 769820741 970850613 61135671 645427202 432581857 652650676 835790708 870817383 360721713 379357511 238026257 335703708 19348117 249227030 925576980 933025533 524408640 799709890 806096091 909960778 172804370 891058642 404261121 804583734 392641545 456797412 189937215 680519839 177669164 728794981 860994421 943551106 704189295 993215052 166306129 388602933 959491048 992621662 972322609 989381338 127095497 406299729 85800997 244613866 573739282 915085136 972900525 999931796 13061123 671180397 525992513 850275524 863061227 965304714 930704530 961647164 937110344 940654914 775149058 860829286 519165708 716478131 609962173 776508482 767101812 845245993 789206172 957546775 861028627 953303611 80213926 287014043 560393668 989123671 763487847 912282434 759685954 923801369 293659867 920535229 50622611 386646606 477066330 839577715 213848452 249976375 551499530 644233367 904090459 986286427 445646412 749561081 305998212 690959706 169104415 211253006 626117085 899563333 916432793 975470712 156660434 849097281 209847804 983886419 889347188 954781675 384832467 438542306 38285050 882181872 462745658 754332249 439408541 527520922 697969084 924979400 587195365 765661588 522433788 721128386 902433852 992885282 577124783 857243005 683654043 964009465 489397112 895954034 624488406 983020489 607607285 723947886 994853547 999623318 433286834 755337097 537443302 612587143 624262082 798202217 845004141 992934378 163299295 564406471 43010320 224313386 471306061 742524949 204824998 774699519 186412077 890154647 498097839 556130922 83982134 219665767 923329 12864183 751667547 858363186 889043176 999392291 810261515 882888203 821683453 987594742 971935192 973189883 784578077 809784069 623727807 948663139 353857646 468400590 856661349 995697444 463151404 816606733 643059356 966547810 311474982 620873794 27986026 897203819 961550983 997618469 903580696 991063026 491578996 839281010 695089947 824577592 223037760 714946932 884674058 983044793 959017340 966790113 863250197 968113788 240759555 760572986 938984448 981901842 119047841 665440081 242466388 937592636 278869106 564712907 576055972 997811776 344316295 986529243 19618691 486247212 660748664 809107735 358361860 602597067 84275856 146515297 819043121 845162411 326133582 578013233 312654678 676799034 133813316 706960778 921068721 950266344 742608735 764709305 525622028 775211877 226271874 930903159 458774454 998307877 885862720 980584513 380325356 718471403 55804631 497146756 256282871 613876010 59528304 430790241 501011093 580641760 560880678 681829158 651681496 811084499 478945889 756178931 144733313 221464101 468794275 737301134 240066194 981766974 477871545 932477986 303755335 988929050 117242987 705042412 896619604 904415660 647807224 818333583 989324783 994539802 342514779 373909197 754287989 990021875 387215134 908481681 581280297 935959319 255189683 825387883 456784916 742309658 248178211 686514426 460992707 627405729 27238930 827158692 415156450 739081923 882936318 916490589 993237676 993311111 874123415 996255617 555666211 882345627 174503254 639579008 830193987 858093197 728345970 742125924 619761010 832719025 671759095 762029695 15185633 484316279 350102563 625963124 170910157 914585842 384193468 522216510 908583544 914709578 422723293 713174970 416510622 821157953 993602268 996588885 668422976 924125629 147463352 169361356 203270043 828483276 425006653 905700293 136646276 975209037 354008563 721002601 257723508 503985189 371861428 448889358 305419352 945572837 774485309 926542064 49196769 995134922 350780634 514545796 52963843 298859343 50089136 301920642 383520892 593549481 555296779 687181515 426238388 827447134 256650538 775393045 832417203 857315910 125405043 405453284 832757508 976395771 591764651 766820832 712589003 902671229 210661414 999548955 567218204 602651262 920946754 937016176 982003382 989500099 965542874 995170508 117856761 864924588 655673973 696010834 54839604 438883206 816546302 926332632 187955181 923505026 562437051 922134432 426573658 728573487 282894121 616732597 361694240 933990581 471134754 806718749 727999220 851851448 120294221 912513201 726849628 963303911 449609964 925685703 810255634 979793922 582720545 885370491 356914578 788222123 606228489 685781416 40538550 723583959 963349347 976230625 292251511 768062683 241496472 262274115 106245962 779362675 556155779 867241285 63289233 927452200 598936544 731325149 597894362 796085046 213722156 634944016 346609555 435062559 876446627 968051175 931058603 938546068 806433285 817466420 940809449 976943436 606576473 688446793 435102787 466530626 861834101 935603913 252635973 259171449 458322165 668687111 999424721 999963725 407310961 939367665 466638063 824655764 200373894 997645426 889341526 949429321 485277628 597314324 198378614 969812801 327152758 702537085 799952643 934740880 265691297 625460182 841881358 876672500 802802097 897469547 549350182 954793089 419984673 617664443 649379243 878127706 661650683 888576928 636600311 812436313 861406485 989676983 976420662 995575297 9724532 336724872 71848314 937431898 121975781 768985727 628674267 801455064 655103307 658553360 332273616 725795809 837645835 864577036 534138260 598226013 743367426 873338725 936799651 997211164 442490187 902117599 110277129 324364428 499909330 527846857 321480931 732858973 559854648 645492928 497507187 610934616 332874227 803013635 157707131 983788007 430471997 618093684 789545154 908003406 939607462 995718705 653256340 833754445 362590224 811563439 825734380 907128101 760499133 985191887 15706785 953327098 981615852 993415475 516297110 819318937 777285912 871137378 880688770 886850255 160974285 517781276 688341717 960668852 816158325 907478592 18049024 892314436 28678869 711122103 223260908 557426748 578999379 818013507 555080623 589073551 267748146 465401796 990895905 997459883 629614752 642933294 580215180 633156915 920236207 996513199 166689925 969751170 677391691 696589007 541697995 985907638 17569382 594233924 429603502 985257574 607279936 927415255 655812269 884190240 828722120 869394550 491818605 965482937 831355700 982612022 672287180 783764302 470498318 551032007 802893036 950608603 285745532 529287860 135439542 594111382 378587847 565290114 601615721 758178514 231322355 977820607 16083911 821089372 467970599 877942193 93540221 436292745 581644875 663809784 290746168 817432137 73322079 910621963 417474470 420678088 361813649 959224602 906537167 990065769 867698356 936758154 558644701 838606695 499541979 874580675 843561301 873702644 98552348 837171800 853831104 854811440 689495697 991335423 675613304 802534326 371307511 661685630 366132206 410592894 272889675 630117168 620474109 800004441 182193022 235609756 535960238 745542153 598040538 647718990 403640350 491367705 580251576 877397238 542161902 706954657 970204577 998723962 215530122 916080401 790350757 826539942 360224179 805271018 68780388 349283031 369012600 848298148 567786888 603844066 187806237 430713310 857734289 955477624 991417369 996214929 459984400 692016641 844175 465580469 608394944 647381079 345513052 875876163 27609978 477946084 665765232 776086919 480561238 783308652 233541047 263071877 817484989 957597803 907283209 966098420 960759210 995841365 434147972 818969392 815198014 964914086 481782453 991464043 770364213 870799298 363031792 615073665 607815508 924804031 698546571 975802763 313011843 520795029 956294690 979032136 965364557 972143009 221215292 482110669 636766459 838778352 225595077 976795504 99822097 352068107 564800665 651178316 943008035 969328231 966551182 971082443 51028521 378020964 56117447 371943973 97399476 189303775 320012513 982147919 503546061 893597069 527279468 592383259 436999208 653241987 922798923 937117162 946696911 962329767 277774395 688772075 590994237 689478102 692942866 832280290 644704703 926308019 30845838 142919652 491132503 551090417 110623827 712204839 59460657 778132892 257874365 717863027 144059203 620148720 466910867 706660338 131100172 457426183 409592206 661208900 653990060 783474516 853599085 892747402 377445258 661928655 796414469 944141693 714570259 866716999 170071254 892570843 679667059 766393086 949777350 988542488 965964570 987798278 893479813 926714081 902581104 969064516 31713075 789518319 252293039 498247978 586271813 910609373 2156587 977544038 957989180 962112893 41761129 492409181 32237533 319323162 779924885 842426281 733511267 849777936 842123854 969450094 285212033 292732213 325877430 730779407 741055129 823606613 834717829 909957148 372796498 749059468 668859768 976166384 616457529 787467566 410773737 502111149 619817877 884738831 633574790 834418598 321402305 609421708 946118206 980238482 493757098 511680519 18292946 503238067 884117297 986132534 976121081 992769277 804738253 926629251 267648340 847933879 660570034 911020746 851119421 944032810 232763419 614323630 407598778 428677723 323203521 615578830 140061606 601636939 329327904 449141319 970444677 989726434 844928560 850933991 594551267 876986211 943245286 959176258 694021442 724708715 382542356 553875305 215980177 813217230 579036926 690890723 160706775 350008871 989909285 991258501 750846059 907191981 815615671 863592455 286463750 922337550 976425655 988991048 605718093 637240282 717565310 960582828 612039642 850147715 713929102 956804641 334590507 902943818 21920360 78840543 927055679 964954314 470552163 531207915 138994340 972453114 335212912 646375746 503865299 539105934 769950050 844462377 413794682 678222539 749485715 884616644 949484711 989669227 620106274 786931148 81908285 806903599 77271496 434752364 51293117 635621209 910741790 922212618 970680702 990883490 577994413 623110637 750546362 782874377 331978465 786528375 575097388 600313031 443513001 576711284 424376135 582111322 600816262 868056621 960026582 984937217 460426033 696018986 122955775 256418522 581024052 790160589 903976516 928898809 588305619 903353723 138908993 737750229 68937447 472462744 129292091 942178728 295957368 633129398 291333242 907149857 429788756 463849307 809044531 820681038 209405998 573648722 151403113 658623553 259761729 739366608 597303685 769531175 885172107 939743805 219986013 752239334 541336634 834093823 469080865 699928974 557556704 949091909 84275173 478380937 159042581 891536496 201413576 657372163 771899095 799388781 984429349 987532349 489285472 684226157 829083130 921210951 441074091 613910544 27143267 240943945 912143035 971570050 414818238 874690230 745446700 944198026 989431234 995905179 690811806 854401245 586491969 678454470 178006859 577042483 183474812 526352256 563319578 792815045 845770038 959491850 242498191 363877232 665981360 959114652 584447767 677766196 993857816 996381476 724721906 951687831 354017868 462445429 208526424 473066262 528862224 725728690 687147155 941771850 361501533 506115787 235534185 634083616 14072169 726412346 542341639 839883905 146559650 344156399 639512004 948682193 121882079 282562623 352577998 921744135 817971956 867390349 516175265 996476532 73938407 452872026 589467643 806325992 885738487 945811335 991752833 993458704 686334554 971570975 774815619 864481697 290419362 967809753 544332317 724168124 791832497 930151853 68117076 603144893 622453729 916804323 184171768 199017723 148952320 705129391 151905100 299969866 538773502 802266311 280179579 313922318 519406102 991874563 923030547 944299909 813742672 906795286 881379341 980841044 51545692 443144169 787142306 910901618 361170907 733867109 203250948 953770760 261779593 499706447 621270509 849352162 768752645 787563888 287843677 525930177 780599987 929059036 441473722 951410272 568653373 918641925 861936837 968649357 509534859 882299554 806460723 986956450 549523860 755806099 636507583 774137069 79855047 211095182 873927706 904870414 554601160 959192100 577127120 969318841 18688845 183453144 206899351 982124616 85845466 325146401 113119215 462454840 647661101 922139235 40487618 540501725 826273903 872506839 733105538 884130992 646304027 671969074 562656378 642568979 400379152 868599909 512156651 953522106 325943269 673461508 610714673 721964855 944054543 953446904 294327321 959162226 662719656 879071269 642951928 947196445 902378768 944264961 746098690 792722963 699299534 786113044 279783576 714436745 827449221 994149558 609839285 829662867 832626429 939151596 459404443 909740206 384074606 697308242 584664740 614302297 73723522 761248407 864116007 889895186 823704433 978012020 184084265 295837188 506687409 568365119 953389363 992725942 164630908 226019347 344585867 959156879 345827157 907875153 189047902 545553112 227855239 861791606 182273244 996653023 201165696 209856204 332046585 332967823 623788647 848446207 318901956 994720328 223041480 860198034 426176705 648665182 846980863 887911054 175413298 194331933 262761920 545696093 720285141 883374537 99653669 934391212 322394861 799223209 440861403 515500058 913815158 982930939 548329209 882301791 821619788 903712950 290800899 815662104 929831606 939025370 835413099 849444138 716762704 949948073 210660932 852494702 562589577 805966658 291983111 468930663 514098798 703587495 710980466 945552806 318718981 813213575 621039099 821201232 939419400 965274935 170540500 877317458 97407377 948173435 45808973 124835196 687082108 947637048 529617249 919591328 512264221 513594355 238384337 350811514 617380633 964260854 691243883 932993521 796273228 980616444 281792192 934398593 652470384 778788122 897148076 897233404 491762410 534745610 788030602 991730833 95934558 175619999 154549112 613943135 475958984 537992718 289465454 582235612 799841904 807974256 887900159 923431186 257264906 640918937 423496812 457146390 643295571 939504480 948752741 980177099 609633564 666608837 246986674 694219329 439271532 472520638 143165976 388645664 339154143 963188041 928551452 994976318 97184631 476616454 990594216 992713527 968249763 990876389 98482246 322432982 981120112 984949310 861577292 868473606 301556120 737565155 168337348 378523266 123618388 674180175 286044218 501723369 149384251 664609918 954121390 998480759 651482654 813028766 706301927 770015272 283654575 996273986 10949377 939535713 66892503 382491332 926164698 962760877 473092665 805874248 303722498 544552021 97942720 852317435 886803497 964000993 869556736 987394062 383661499 764848457 984563445 989739500 993593720 999051255 464056804 486316081 763292515 824552683 849482351 892527254 830887232 990852672 273262938 786450586 619942199 673473250 753311840 846345751 678125708 984097756 553748393 562856168 495810238 647163361 170289506 894371576 109420270 498415730 144295265 970241972 428061755 921715716 322007300 375406428 258834419 784085238 660485510 697593273 346899569 773655843 204971429 450107624 837883251 985028252 997307798 999293895 562700355 676848138 820955064 858419172 413354627 841070591 687137086 870692177 151937423 532624362 631612154 711999141 46238407 900889284 974036927 982787756 914165035 938249684 130401721 619291932 335242277 527015779 904389388 920559607 230797875 713789606 43732194 484108902 91965875 266532973 805761985 879526602 924039282 984747413 290437427 672686397 443247808 489826525 849255216 924272297 380592853 750060456 227869089 715342769 295997322 513146242 513980709 915761062 7685925 983223589 995664219 997808874 812328548 824880427 452301588 735182274 986908481 990664624 224870856 396312486 782855194 953649277 698315333 762996065 563280592 644564391 922902464 960533949 502438191 817868275 672407253 742119832 218009968 837787201 123030932 152879165 243132610 579488246 336226743 597514019 78042466 976720479 528455724 948930853 494997488 943891775 986584313 992266565 962316448 999519089 251830935 352484968 556196795 750342627 697097776 937566703 284056401 962226631 937336091 981539250 208071266 727547820 328551475 450127486 930972548 996066703 14939610 772140521 397755096 603485380 160901659 746994215 219115291 405217981 56406633 283167814 873929647 924772536 475448831 933976159 47575472 317922357 148087554 953994105 628901365 949109051 10858746 434438942 699773154 738610034 577258327 865482299 831010325 937537893 736709603 832104480 567098157 722681112 103541767 163249781 270387938 738257539 727208999 926696561 208170342 979060662 384608927 461966891 801078556 827646907 791777559 986626434 704487812 744502889 166721661 712313320 636588795 842405834 294948930 469404460 510506533 957536692 319325611 929754230 33133177 191804371 458602895 690418565 132443220 885682476 929720217 955341344 728948493 985127678 565466549 836345392 939528224 968960473 554807483 758008203 967718754 981517443 21773233 367815187 17039974 137024317 684340297 741161288 266996425 709642304 58033640 953073263 230711497 460531108 147191565 677849823 118171864 178920727 856815190 950878371 1447229 488529583 236726274 798686603 944152393 999708666 351388117 974339080 685487036 873854068 917975417 923554881 812900454 855195323 33863017 296178987 324898118 354398639 60743570 948144181 644752663 704859687 657006012 822862459 400385391 871740525 748293926 884247338 872408776 917480914 99678945 688569651 601712527 702867776 261632087 413019343 352097709 733377133 697914611 706327779 460420223 477962573 99368085 412494518 577890703 637969434 647334257 997296835 374266628 397409379 843210487 982310883 655164850 667588450 227121440 412998395 383792913 643920849 6467158 246709464 527803870 684258393 178897495 779936521 50778846 610068458 552946821 824584696 100324695 280174957 230086898 572518217 556565304 673557114 966775787 972622795 896532818 900845538 639074614 700002252 612578819 820821522 605685 636531465 658607780 755678858 795867485 918780952 517667599 707599037 857450391 870362365 653676640 845755383 954659372 994240084 667572676 917578249 12268615 176926652 485769307 684269286 67328744 745455863 387576041 765904135 826413251 997494293 639838086 695329370 936260087 938822272 657161957 710531475 698590157 898925084 497293490 684355753 864210404 926352042 344707537 392995467 470927691 816918069 918874901 931780175 649163923 950030778 113490120 436226781 720941730 838541037 413545862 413658094 979176047 989837579 218896790 766327952 275895443 280350034 950432724 994214797 884353471 966061674 708298779 992372832 299228558 300504659 171832411 412392268 582540978 681948650 746860400 816209406 333016592 391051732 614746936 716494023 242925783 821659938 308900479 714754794 756606906 983729957 249029389 341798601 263012917 296917168 693983850 923054461 811137656 874202939 28552821 712641744 978813615 997898189 4045188 48129406 343438786 566249903 778933475 958990685 745540943 899895314 788259501 944808779 540070911 897558313 162149218 479827566 500363885 724644753 928855277 988475543 785909165 794605650 232441732 386940644 955096527 968436902 383523190 729969381 70679230 632587483 655824497 699695695 467499013 833663625 909889407 929128233 23008664 940774996 123435024 991722413 478367045 645122875 436106694 626369829 248547875 517673799 987260470 991483519 794766824 902213932 431840887 696218937 983558784 997201360 397428785 841866123 314286914 585282657 342971612 714152848 905939268 932191620 824274526 930630540 648033923 845713471 397124677 633545416 991627806 997658860 603296098 626785690 479487781 665699897 968251518 993608315 82477378 284430624 408638895 550526083 667426130 944489419 84506339 765336131 982058242 984733580 56948596 214683192 321991966 771631047 183303815 986791088 707142921 799014113 709484650 834391598 815370500 925194387 780055657 919647991 667195315 679425698 709746303 900176894 67259896 350953549 853380474 975429831 719090270 897230221 525193722 768797322 102224358 634628121 173914497 602181597 994545941 996142859 382518430 699076205 114642510 965495248 875784577 921635687 808018704 869096174 519576365 935581492 573725246 991676891 648572014 713916343 227903160 578672459 96538410 103361606 686225086 888369111 653170565 787251184 734004895 862971006 321759145 613035280 993032267 996466798 103940642 117178886 549641281 563362583 584495498 762547358 248816114 951026652 311368306 971016347 293568047 913982979 593291338 656593493 835250511 981234816 565963909 760105050 516720016 740899019 183020066 800947206 18512928 88620804 812174104 889000566 567111136 935406164 459565365 495956507 10139836 50788682 126520449 225969481 754955362 977276866 803621965 897906722 120190978 190297695 277651167 698934366 588101279 806103303 772950314 826722485 971148166 981690557 624367711 953696061 658753002 997056249 409261193 774667512 753538558 922201196 286168432 305562949 275962051 932620289 208557024 643071173 233039105 618488684 73888917 570219482 362094150 862311428 782957116 850988294 511198638 688564132 435375153 744090565 840503935 968235869 414406816 528627095 135564538 209248522 550355624 649509201 286443619 607286805 290888610 364811859 899231190 972204616 372843676 698285844 783802297 903989459 459792973 763362498 443617153 726686346 51136312 711993541 403529581 464761489 101552999 643133573 683555928 754228926 248945485 404522641 391744389 451607098 306558716 763918335 730497288 983774910 641368775 986206986 151471373 739057330 274230394 288225482 59883893 293888544 666003293 998763297 429672532 747702205 746678828 928220375 988847619 999097519 558223997 659508162 405311514 810789115 8937514 328703842 954933292 969243266 649733407 703922880 466795765 740645635 849665450 929400698 119182523 780407725 287231436 500707405 187364689 318247846 985564097 986151344 971277339 977895962 67694110 353326367 392106901 716865454 203046698 600059874 391673379 894674369 817850416 826673954 569166645 940958344 723194483 998520931 776402454 933497430 922643038 942927044 650874362 837066465 956661881 960842138 787339782 918626221 506318593 655880466 899348891 988369936 823283328 883931617 317745725 478930441 362594908 574142617 440680322 616841153 126827336 137207110 890130195 961828940 744666185 789340638 28065653 397505815 686568833 846215558 733714730 791670016 255344500 693101130 601975841 746591998 104349701 928879705 967230 800291423 584941025 593076281 689587220 979386886 393421375 634805977 114035492 832380519 812050563 945170375 915663447 964011051 217435651 785386827 809546942 890203335 301009651 484014735 592558823 983567029 410246594 873007595 524531489 628079101 207253530 215933096 735531793 820099733 207235988 889991456 586224412 789877461 289450499 717904517 27638681 847488899 304252042 450297146 351681998 858694048 625799097 873872667 926705107 959813977 658172936 675093271 473096764 675822980 63207309 362561856 423599003 919496585 898756787 953654994 752526310 850300991 777134320 906025071 49226422 429275133 234619348 893333487 483322162 616972541 971140051 990570883 35183569 137721882 374992059 875379518 508606002 895091796 828933643 967359076 929202685 971212542 191426535 213592019 345891091 749323105 493887657 637829499 543497927 593513846 82778414 120083949 541435661 585926937 58493177 750216538 797152526 812833913 39343824 550831262 721343344 820448535 20614681 534459412 426154491 917674712 348847958 371019514 487347619 543990632 247809209 848286389 610674473 654491514 147368789 845625983 674630652 959839057 117335917 841448730 427548025 659344490 922298607 965929259 706041085 860750530 816352200 964784756 735894181 800930211 864815378 941294621 149437027 666512605 13727431 835575108 977985739 990101676 876622781 878423324 620421558 964495192 459413556 501627524 841883159 882385035 943536186 960378075 92744619 399044104 214191497 992238259 708505898 901336617 541950942 574605125 451363888 668509040 427159128 973579843 535152243 724485597 300042361 990113149 164968247 357260023 795317658 914951681 966942893 982524674 631382192 896507847 859162615 859672361 621786739 653878791 239751226 821906395 347810696 614092380 64265158 832987312 382119879 455906455 288370934 834030368 346419542 691773072 448806618 517804106 779818044 861915290 670192619 858429682 549167209 817346593 565277525 844642604 292651349 450657056 273083291 556038908 863895264 984820860 688236472 912818636 778634827 914082875 648413781 784104328 707738625 797416792 142793148 563549095 15240531 563533135 692178862 826565644 589351719 862633940 288632009 344692729 773807907 920699187 974537284 986212025 227532415 649007418 561052642 625278702 552534907 952689593 331545311 362866727 424102834 727331588 347603754 388376723 458191007 518324749 671051160 699810108 913610722 998506991 159361207 934437907 556055238 695509438 287377737 895952574 235765236 692151276 391075602 571191414 478459490 742791044 895680477 910765913 336941776 591344206 879342476 966645942 4318619 24882323 100320446 789655885 823819355 858473471 119273422 543070495 960427288 964351524 954422032 981673479 470813100 930128616 623750321 905099298 9435110 973493647 111810352 889584853 387869654 710273798 332958582 721144479 25559417 249681953 49712377 754412946 680713701 985778978 745728323 942382337 617718515 832802156 200907279 874945181 221684129 878449187 817638844 933290214 997091490 999285751 63360162 882336729 124745212 491145889 518757931 739103749 476607335 702201234 624544996 728282602 76915336 313755493 245491253 383479539 72270032 104027178 764228303 786935231 230337325 786837210 532501772 974539697 69592829 746674319 157129123 799104811 917775320 979367429 163116642 606868641 328254666 437686483 976631076 984289027 840564133 911711243 728810330 895996864 716123737 797831232 9117804 462740471 469199716 899095545 326293250 855257983 940910045 999350265 245687309 775004791 567466126 838424381 618530615 959710898 886334366 890458814 548887339 594205053 927815490 993322392 514436012 808811820 384161655 858273126 293895887 537868978 695945585 704340273 899489202 949668776 185718024 629618675 621643740 778737366 639512525 702914832 726996244 905972638 125525622 986298849 27689993 446063959 561132604 948073690 263175526 606534273 804135584 987205304 515321503 844700618 715840055 747007937 227174664 953691964 961120905 987128154 809456027 810734152 83187523 215367878 190425017 366821920 889388272 967514883 691474392 964427056 827291046 841718491 386253761 717740529 214859279 459069819 632438892 730376479 14264533 639208327 921503700 989141352 894679668 920815174 226158560 558621334 413712731 597270477 818087959 867484904 130173268 625294588 205893169 308835002 141777025 504779866 972025080 972257784 683486499 877028283 178379116 932038668 764017566 981074050 88127953 602353617 141622196 804644467 214630659 441216204 429241717 652666248 353325928 760415690 647307597 849660935 691360769 702779545 627398052 853070469 56647842 832731331 526594909 665582521 5111853 714099172 213638955 298900113 710241530 764657773 840737282 930139052 848199182 866132626 624449749 966398494 128125842 773807220 698286727 821407529 517109988 694202839 61593230 569152218 882075777 960129181 307180031 991906949 518226747 721793859 275677433 434069279 744590280 880451777 35736188 40091072 664348151 962678850 614497194 948411152 419324284 518544362 219848434 392705424 302196480 775373951 879763398 907825836 803400700 929666233 673199770 951321315 868869877 974794061 703431945 720796566 422870407 544836489 821638743 960801959 413019674 532394835 895317663 968428349 644213118 859722172 926360428 946377698 480007975 831717979 298602402 321422168 998882598 999340698 75830409 711556287 726386827 991607450 954790409 960093431 141349988 609282148 84602356 864212685 645939965 665371714 524808489 730913325 162121809 453951738 841319474 862226798 627045874 734232930 984041504 989062017 190856450 390101133 935813742 936062299 654938491 899478355 562867704 715427718 974806381 990997850 220854292 906179078 491919855 946172019 508515632 783265961 193188102 257224190 852117294 903531052 743917408 895850884 202250682 980248297 136731150 278533909 736600276 918511365 870751170 908618375 156798727 377937009 519769484 527773869 392019967 899958587 224103861 467708656 681260694 764094975 654033173 660422869 989506173 998712483 980638783 987063950 178427677 191472025 840756388 870077192 164038757 287713772 976231584 983489581 366927445 871346466 579573236 683551441 666397766 879521908 951614657 984501255 575148915 892667098 913845442 998908150 967652141 976822454 626282810 673202321 87030365 99368700 985675142 993676359 232174535 814137259 526931759 887029752 868095045 952838635 550727847 870746879 678133276 965506042 465634347 758249778 97800476 153743775 877656372 993211384 856124684 968276127 360952632 406449206 38739979 652976854 329198952 574363639 462094480 568374580 263132912 771680992 426654406 468864910 988281201 989714031 229090027 857364031 84002781 107432068 327924004 996578921 358450500 761405482 575286984 859383633 111910110 926801006 419025298 759603547 650009076 976923688 913327004 982321778 124092204 563678114 354502640 638864895 11455270 842916887 427192134 583128554 285557389 976502198 620832878 846902901 771824106 783193293 618134895 946219935 88093421 262425532 237471094 544168041 707924711 812608833 533970568 964602425 62951411 382503153 301467187 903991078 855901480 883612704 905180388 977817096 919418878 979427821 169047182 590048694 790036476 969035165 632442084 760721099 870551550 965949687 261591255 555213640 454853617 990948799 942428417 964746041 901999784 993015262 123777190 841841820 551421450 885289459 228593403 772222956 699814836 967183938 73978590 785545087 734241759 816316844 907083643 965817213 93423757 148594324 275041509 429418174 12272390 239392512 944321504 967936045 147309587 311643796 790163573 830846333 167596870 886916303 30743693 165406732 173992267 339635417 788210920 872356807 13263322 114315366 577922596 714933903 251812851 376037845 960724161 998446294 783489402 980493288 846656654 863186172 131825851 651811326 3731713 880683705 824365679 949003886 647114168 918163974 674713381 727301869 488179539 818396613 330641635 721676251 173044130 999115767 354266360 673234714 263458559 513593282 669081356 755972052 897690892 932890898 998737824 999562455 585869598 890879485 308210849 793471534 201102340 778190056 731053448 818589676 7328739 588405174 226410796 684729457 440322539 836430747 247444055 728200462 591428746 870852503 771058286 995672402 788485670 864031746 961194153 998896759 808889776 985982591 525498208 935850620 708476117 921668575 147008936 721255010 301295073 676278012 63774439 804015720 478765313 660625445 310961477 970937931 465169353 706405541 325428912 961379231 908842781 964575600 473323710 904307348 27438879 830145881 234769144 401860930 860353384 933194946 197602589 789563425 309538475 536197738 729222301 806823136 227318694 434444255 923086912 992837114 88749123 154361723 2893329 355287320 246038801 983519749 2861956 159036175 253308866 334332325 130764807 216089225 406382637 434729378 269304110 379008147 930178914 933852400 512675030 921382178 406318412 847896213 236882342 435468946 722118834 746333359 104105361 647639190 459856077 779862378 503286269 627899530 951488322 979581752 184521698 920214477 570693874 856541549 342575608 664351632 12058042 638804002 257588626 690728144 327444669 386702943 521683677 922051971 917151443 917974389 608626052 931572142 140247633 932207576 976945949 980557390 202862739 657309322 521147643 929039966 502721380 640987263 828864492 831263679 781447984 895306728 797042992 895259344 788526436 968579512 916682427 994982166 462819833 984450366 670228580 952254015 161332361 940401615 131550348 217399475 526013665 914257449 24002877 40085811 703556512 894546921 72794873 233210537 27538481 667286657 218849384 612285090 891396098 930310137 136229037 378026215 753034242 757393815 753374707 843509814 675568683 732701852 688759535 869935371 2980544 941929804 357839227 941509101 444445955 674917303 955091765 990793073 164200314 355024452 595335824 779492611 419822640 803843218 682919574 711673871 816517550 817548499 740439486 790046050 131166201 291698147 840725489 908044585 899149631 923101925 66462373 913637277 461932853 745876046 518729082 792300598 728157540 862132229 629011767 695336521 790162438 841421547 754393580 897349884 343244599 955144438 551481716 641043630 868864071 989112934 115097687 560255226 656394094 741983325 845196060 859851472 133150791 334564644 546866880 927490846 245615255 723007323 319447382 832615820 532894830 973204995 53691961 327340772 312199180 838835790 210303314 580052498 466949894 713984951 781283026 924151790 537197478 886528812 239365931 442685302 181519802 781198953 509092550 529023371 209446382 766143497 347470358 470522902 116857361 797946068 547087803 824574981 127823199 460116573 758042042 815304914 232159852 387042722 838542935 890843896 235550318 967988509 432904588 761004206 949608418 990879181 867984533 983157549 636741182 839158818 412560459 957119972 534801099 556671410 150540778 855814974 292731856 327265655 720325236 741522525 857363617 958065849 554518340 727536109 145327495 854734056 94512847 783871641 829653745 944508835 204749649 550268967 363258300 364418381 823560393 877747984 247252494 973908956 366194595 623675998 344885870 842964464 918402490 954323909 973816120 975992919 994467535 996178176 154110291 261348289 560855694 760548237 158523412 390685691 836060190 943648918 786529509 869520815 424800127 897647053 851262686 925410592 313354959 876888757 835743852 858898349 511611246 959327209 130745966 819793320 75204273 442973528 459739767 704195228 424776485 526648741 149268357 437076663 824594318 938562115 469193856 595032576 855215429 953714695 558813271 779947617 155117874 467392235 602950101 670000379 916128740 925779132 890668476 954348918 437135575 816013542 191422482 306343415 836024778 980317333 281428193 626138093 832101023 996371445 719937068 998395344 20515314 784608476 965748514 993387960 21935344 938849448 273025215 330656929 618354034 853821582 553769924 671812039 157878022 340988847 113818279 445043711 312096901 729834177 428243601 759556842 8411058 124247077 988505203 997826065 84965483 334138555 543687855 569937081 400210664 956979160 675946943 679272096 868781751 924576430 141528162 678809499 951354132 954086254 413581567 666252905 851825473 987218155 142595853 705810557 518692225 682429680 573335095 624358182 626848490 690453505 679569173 720010388 929719799 992126501 6867724 327449334 712028842 826774057 83653091 664446036 804630183 991488555 950172878 980857409 137550195 250701795 338548906 718502766 984887187 987102774 35665439 443457455 123761979 562013965 387305595 752213434 838204396 997212089 223282317 363314462 800540145 821279295 288956817 806979412 10393404 168182746 923935932 957725624 758173631 797086677 745520785 960864679 49032462 436562054 272022278 963638364 217652712 243564348 773951861 873825256 965122620 973121262 978873109 981387297 357103349 786623986 984648146 987181654 566218399 965801305 806524567 817344532 630751016 669067856 359335370 649640020 116889444 493276333 354629352 492940994 20375276 772761606 739378511 773667796 702386699 861826579 752271267 941869008 102112829 400467923 62645292 118251054 45993961 103566829 649945082 873659853 227241783 352852614 727083549 822658578 908223256 991483502 2017489 28555908 887139937 920361011 101568576 913907625 845255027 962701513 652689109 705131436 474524995 506430786 194996779 939790654 616660554 898756349 830927596 896850861 109210148 952317815 745309451 987704120 414186987 812042105 495779155 939432551 504181092 831156455 798368988 962133496 662907824 744531710 536871713 852089275 487922147 730120634 695021396 763533470 398208496 914652061 699971218 915546186 216944731 689427938 423370930 942703772 806983550 928864677 665524279 981750791 137146813 981377907 892938669 990973935 501197816 699467666 989728847 990071836 288834814 685297592 942234851 989142673 917400477 971702558 431743283 539805747 198017789 332266215 441063604 642547893 946333113 981314929 943742999 949976568 178376635 587411846 64409268 281566232 208605788 459089986 467302431 782510514 859147881 996759545 415156614 912209658 229303532 307664799 389491235 984065167 594495047 920427197 574400897 584614744 381419593 387184240 45685482 583707753 548921828 848408061 124802870 183707963 122665321 983379929 256637865 763411943 998310488 999521405 911117576 995025629 852885015 954006376 51653211 422502631 406441106 492241325 254927589 603755982 708966420 905013054 203634387 577007553 978774533 993390123 845408802 946318473 868974437 911822509 356176176 578465927 238813298 605988047 756194029 941274499 86164013 687501997 535186954 629117363 98915810 243858690 833468812 917108903 939114050 960789823 70729267 610885986 841735056 907818169 783470211 985208182 194618244 332935473 892998067 917104919 227109140 269387660 928938364 956471913 172213747 227512331 414916860 829380750 717542640 901508369 381012094 386567134 66940170 853854157 6841813 50443470 263858029 314760432 142957139 705936305 574827377 745655594 178482039 349846379 866055610 935086428 604237273 703562444 466048946 833888047 911449715 917561025 217237100 514676476 139848172 555880739 605507000 695543941 922105319 923726948 354008963 976362133 920444854 967572690 580029377 799416197 865035675 950345763 506493157 666791704 919610245 964781390 606258211 760282679 108326425 478838479 370322233 541437017 986089419 996387437 891028686 939979491 582180690 989775714 346375325 830052566 634819409 857428013 126909330 744069980 698397012 959576874 391275619 905621251 676018403 860327297 596584540 693984864 733702694 903885553 582315330 848275936 734666253 770470826 975542732 989650299 760238914 792498478 883963040 893567710 409567468 907421069 295425486 682327046 255835851 917642850 480685632 814162124 711607770 735630816 600004466 808614880 799162338 915620975 651956945 691239452 922525875 949241797 121709827 782966799 94961552 150730941 5146810 375356328 73405204 454506792 46957436 390355788 525423469 945263632 606693980 718281886 194929379 884572381 143555397 534841833 841425798 872183433 446947346 515723643 890165963 897855370 814498559 923001517 419591283 653789495 372030804 656153131 343749257 928618840 968626254 988054811 190766205 651518934 32439201 587452302 855111667 989504435 618303118 977531880 708387061 862419402 580194027 791235069 551145316 885844418 665485677 717638266 115416637 899548986 785534887 858061782 868752110 900429963 370097288 713133281 708368495 820679841 525156409 713691408 991764997 994964673 859249705 983641640 638713469 915986543 226847470 849325999 509855881 820909462 352606087 989887566 896759507 987608370 964589233 983274275 287551793 876256176 944633962 976161301 529888875 804308926 641170945 699775889 49067929 283241167 811708989 941913335 892865322 989638545 977583765 979714099 232960294 542799241 727153864 832417179 766902543 900241925 337825510 595920980 950339247 981452900 868268148 934630817 329366338 854828307 135532233 602735801 106143705 805198233 416884 312728886 17955934 364658094 585770768 636853203 430972136 681068114 137901022 703907719 446535347 645439876 981455190 985132380 277884097 818393407 840338154 968757661 842421736 884211946 442557362 503851337 725839227 770856806 549298790 769476564 272485639 732775001 132533587 909752891 710921583 803719601 384459438 511103495 529496446 534214863 426829042 907474974 925495259 964686559 862298753 862382911 501012744 597547834 692126949 880252373 645973917 701843852 336955467 706082912 177654468 400930683 994003998 995930431 275929144 742512726 401143651 968979468 330580426 404713514 50192592 434513377 402921747 906152746 755406247 932452893 762501410 763102700 240946740 720541405 95382867 827628581 109529496 481333846 357898745 620117968 621330162 797316057 822984700 852318159 186741356 582745746 575306035 805053855 281669553 493279724 47209808 785804707 808699766 889376703 657267588 794175302 291350848 935648999 692157478 755141676 599081007 738552301 207493549 876487392 567309883 787736758 329320903 635909702 674856683 907328534 479321832 621725711 851581613 893604152 349737442 865683064 580885008 619181343 217507600 935054277 154635565 802610994 80592288 755850484 867683695 960125583 277257288 302487547 678639016 714511037 1301709 11799241 41968531 266820344 378653379 948098080 85763259 910646817 749744822 779795403 63349993 938517835 209402324 580120031 228455716 574022454 435891976 873294161 135770628 577764100 356603936 614893108 847849588 955990220 125323012 567325317 189507391 203082127 517170744 633762299 507840030 957216646 169974472 672050767 778264810 938633877 304515750 938544625 647961435 933151007 877808249 936301141 788280133 865574137 191007142 625364212 643419135 746357635 151836270 966725085 946465723 959031468 731713698 795941233 980631178 998917760 848480123 958335676 10111265 506875511 586838219 977221021 724150717 892783675 394124802 451666247 168421301 914816650 933736239 986962454 276687463 407237654 382015483 804417272 827365953 845167637 305340109 999808681 597391547 657081659 658050730 767504822 129210357 189765196 623205320 625976047 187637264 395180031 401527280 626216083 37963355 374385011 990725572 993767484 59416097 86959253 268618583 479127233 957288209 968248742 472198422 628529607 784936065 794987842 372600988 690147036 765343643 856746688 702167082 749511768 766838643 827920842 895522237 997199761 189027296 270441149 431726410 879883757 626254169 638651009 789944629 902816793 61905391 588665104 899457111 981820522 951955676 961945058 467819912 844385535 925037421 965889202 119752082 226652090 928863557 942081064 28493020 529883750 457627748 871339228 896815624 975843088 494182028 934516523 940511297 963238779 556021683 846425851 170447322 543249559 662955148 801491720 573975718 874993391 61828420 125681939 202628097 744780749 588005178 959071180 438762600 963595965 955669431 982484422 687930688 994163300 218737787 310538487 829150650 950143808 89495142 489806922 813479679 827779012 533743846 545460773 238362770 432472596 569468339 602887849 772958418 821237052 16771538 597173863 258094042 680584118 300194324 470544195 850930263 864045167 321427041 556693657 331945552 661513468 440813647 866868984 520662812 819895626 681438068 790939012 236899535 886851445 896026665 912495870 557828904 849549970 569940129 573265395 799852889 928597137 105785312 575642284 41319305 517314936 303608080 450358710 730763815 833742495 8308281 649481594 182253626 982927337 773283209 936443808 163635037 966847044 45826029 213238521 417695276 556273575 594960826 666996836 550868343 962459961 638843895 981983761 477300053 923302702 297856757 700547852 407718588 681486082 569709159 609873678 72565269 830439419 288014508 784682270 749274273 870796343 314733698 983687734 256831409 769651776 154616857 203207145 164537336 774431433 997143942 999866335 952314035 982860485 713812638 903511902 174067612 742954421 713293799 892522917 543712173 606895468 87584945 632075758 662453341 827579905 395130886 463215447 448991512 898813291 320431561 323406900 951436930 952620531 984373232 991285059 816668084 930476583 793795825 868933215 427603487 774659908 672946710 901849867 698498490 893048487 625376049 773423580 910115190 984315694 60038301 376741424 637747870 855213649 944069832 999551033 918461802 947488459 465583736 767695933 816536262 959085754 401523077 820963908 358927846 474802658 988115322 994529369 683252902 792232253 529593992 758627335 101878862 420804034 40842139 528464418 772250299 808022753 281614684 532356887 880163703 887393751 103841921 405281499 483284803 531796256 711659746 788232787 597054046 604720032 725311328 920204586 521785591 764509402 67522142 321337904 568519052 864345752 286670818 931460646 735662582 787784998 920956819 962528522 591790362 738990655 881265039 897714379 504469182 998402072 797858633 901621121 240530704 424363653 174244674 739207649 548432056 938066797 19482345 74881064 348706284 806497784 170448431 900315226 894953015 995616567 815174142 942025087 757271396 902981788 223905870 653075410 228334807 305065402 223286875 962463981 825937011 884103479 588026034 716935917 538663759 831672011 971419149 989138663 151208091 726899489 292153180 627367184 279227267 296671227 25037597 448864156 692999443 817546040 53189057 251134553 734585943 827095076 955980888 996063944 316458955 949633168 758241098 925260857 662919519 942127979 695735105 738832406 207033231 322572230 939212244 966206290 730087462 921102424 817084041 875659385 634858061 952885215 809970709 915965789 346403141 765724633 663666954 757458109 514503312 965088919 414588298 571135956 61905096 387246007 239305566 739760152 599729373 830823394 562291040 724875251 882662257 946810951 771715381 802758681 675523186 949064269 198880228 252486030 480938482 761929947 277402143 383767907 260371105 870483762 166043486 627195437 436035609 527813770 491338339 624865591 975267595 979687174 969781034 976241353 708842071 784038050 557826508 851023429 994006416 997060728 863985114 936822366 360662159 516894234 103801038 940880796 727321762 868763407 334838741 384758668 286121523 561042145 273760874 809204003 869700770 978342582 55304929 574661454 725914238 865769564 536910214 701218108 415254842 851962401 574652727 702197003 740590164 928817579 418919393 942592812 416979234 904737379 324057819 807107862 254885199 449623076 683950478 692938805 168298395 215575852 125456488 326561659 282594491 584443448 945418042 974746283 410550746 533443154 769696726 833666946 391845877 804209235 492017195 826148794 481554907 586188838 974796230 985360255 326648344 900177438 963854933 987489622 205876590 488972835 499115934 631735339 532402034 608964119 498061598 507801783 817314530 999291876 162073363 661591441 926159411 938511713 947157932 999668888 979579896 996066830 961393356 994202273 331504957 468992421 730654005 923490582 772469606 886649088 327656440 480000174 650443420 719062499 170423556 765039102 288000057 448621435 560443011 580361030 585146961 658157549 529248263 843485099 895130796 932359976 786274729 958125045 131164754 548420700 976465317 986473553 303128249 833192422 316183069 920491512 854257334 881501211 592080335 847754509 785834718 894371017 898496905 984829831 270764783 614075057 3002314 508144174 475432016 487473012 189499622 368111845 285130853 388175531 504548280 510918516 281003571 493455457 623645378 651339515 400991467 749847085 531297080 768355515 596709870 872278307 513034574 638455256 56816656 614192945 898336474 939343415 128092841 892801097 253684841 375701355 533370396 940521440 998244166 998845738 382161455 885805835 779227696 863019838 987647793 998715922 922749493 948350079 178247591 588684443 160301005 256770720 128151309 729410736 391142077 901314628 870141743 913788171 514380357 937706862 23327817 483019593 77163114 831670528 881123127 989647632 485451507 933246179 640032714 924360172 54832814 805298998 871964297 983506895 475236132 930209447 299397400 865133640 37470794 120323801 164120792 365124957 743324788 933783871 883689727 993756794 553173822 938735395 917745147 919875718 87144738 966609420 230178536 996778051 131170050 296989555 773106664 863084051 397266484 503473190 1768155 657705045 1618334 47607673 925815348 951652995 497603589 623096591 123559646 860351956 561921832 961524999 201293523 769130496 166968467 751553102 731153216 761793741 781486597 875363252 96360281 676408100 589092757 861560912 536095690 857803882 118822798 365504427 20843917 367512993 187284667 671719762 246526927 409104028 467640396 601401676 286657552 363914452 752831475 950076437 339889734 427097539 726685573 955628509 630010500 987084664 625000385 909064993 50430276 876008032 860020863 964041219 465992345 831686361 996129007 999421809 520558286 879868099 898464998 949288980 207737020 671215505 467620043 663020453 4748771 17881302 527478588 574940821 616228144 978158882 275417868 969527456 771614510 982530626 428135346 513581038 59712347 951345264 788542692 942806816 82990036 616368477 356713198 810142881 575475255 622800548 477205087 977260078 207506851 224814884 407556746 702430574 480160908 492788020 696223376 720566413 288215883 882842001 578880329 957671478 23284685 239941480 966816630 979103399 799018759 978464659 19507362 133393006 323049670 922930136 867688775 920656314 538663389 564968108 364551273 768648046 643775120 708774124 762092765 810009827 132961913 143810548 469947906 652010624 551857929 782516659 368124312 755417839 554957691 719478423 424024052 751143546 555044381 867009361 925058763 941265202 224108152 374878045 298649477 757433442 898238589 901594010 657347540 765417582 589172969 677503148 459412867 520285018 436762681 733469960 605994247 830255203 769464829 939704199 924963483 944694524 225603883 430802676 884537656 926363185 145309668 853529196 440327606 835245922 898576509 950909557 155043553 255053253 723065136 801257993 349987806 820896651 151451657 726386032 886535910 906778199 994080211 995558584 933840448 939742419 622279905 760546140 146944652 465996914 59126793 941022831 713492246 961763337 585677440 686739097 329840093 699878970 584341042 705325509 915587395 954669141 367081187 723900865 269104401 316562250 454052592 483894304 677795199 691682463 400719012 418156723 488230373 602695868 314939654 794423528 497491292 621591145 656386661 803655644 316188172 851541926 905193151 947688958 660820096 780059721 779168068 801620306 105522957 206498061 434709173 850703987 89956858 380367776 330975876 594004857 650458905 974167051 858105345 914666991 778361844 919256446 133925356 681073935 974609777 976314630 127350570 284302233 106520250 526345534 313350636 642558014 983423243 994335638 464285018 924762007 255561780 710395635 997760202 999721364 488221820 830652918 778831317 892444762 569021789 996203646 880626786 919510290 132066797 342925107 727846911 784566104 730007381 965788419 986752077 994226037 443944595 590699591 845701251 965394399 404147587 536596632 752442538 849980413 42217362 440929348 753335463 756945746 552761070 792818494 121030497 807392516 763909477 790005039 267150525 954689480 714543142 925634271 240992397 255357784 178893142 983145853 930166308 987158017 382423681 915049008 569140694 664582449 203112527 699919272 507000803 627797166 421247371 726663673 617545349 913013132 424768053 619773076 765663806 912334758 67108465 787919478 250366947 996457883 468151498 587553181 857972963 922964273 703176385 853618462 67520516 270061547 146722174 359682226 709759171 762629271 863921809 952530458 917543837 943619648 986729446 990656037 26885876 956528020 595251413 952962273 590613729 720185136 556989641 843368171 863253534 919968157 774453108 799874721 472626292 794883995 998704277 999151905 39753226 975740936 143366279 639210514 624434671 785681938 751503335 799639738 648464690 683000722 491570289 838421033 521766174 560106307 981340086 987892306 741655361 812726275 228290451 978340046 564393679 914098764 602205655 661298307 718867564 935266537 243443720 654519292 347265373 713519845 181148335 676918107 337523330 474762778 298169653 607915993 62929310 194698062 28527238 763536703 631400133 957986338 50383388 936743830 48824215 320846308 483231824 525663046 96749584 996739613 539153879 609303398 641022349 692989798 696076838 742312962 590815493 973591350 33189890 787546868 564713635 700438742 423915493 800379544 575212985 900612406 458040316 765191366 211279315 495913854 886610182 976553894 633028608 865759836 69968076 500875819 605131158 724579224 716657426 944194310 412459140 625852861 648940470 891908104 455706051 518516470 126182478 802456395 141034032 241644399 455687536 566139536 747949592 999629835 894526032 970312952 167442878 236933311 627692716 725114926 274695881 891307140 188336162 497063019 543996198 599164660 890365960 893904996 757437347 815126466 906934943 908024089 457276694 480349636 331470408 544774818 424600457 687935630 280058425 792957046 979337104 994447406 856735608 882252946 894636586 941645597 802381941 847821565 306960400 347562614 894999018 953692165 51966177 793678292 287853722 666259976 7207500 244044631 932474370 991770356 191344637 952328878 332603613 813973377 630437903 738985769 496438287 563770297 87569137 565395805 973805527 996887686 233963380 767918797 583555090 679651484 489568601 918123646 764260412 887469723 241589260 645432306 978378269 995697892 956325179 976364482 244088883 879551044 442898314 669255489 537409604 854841936 289037135 620121842 576588756 755027032 639251376 904155966 463314749 997146727 597728165 965794090 9955284 888493245 265747863 447542649 342555657 704735392 814389898 845499301 423706247 940186264 972286022 993205016 133551809 776937708 162216012 351629588 21271228 93895118 511235145 549051411 129744734 797107086 746368309 748139340 889388897 912409089 210286297 276503548 269632685 552751360 629664600 795925840 668331703 780694463 212813697 296698167 601087166 914861115 571433774 719359203 529535666 614211090 455893609 800082928 626178840 962054947 138664383 481282613 112682707 584849374 75468675 359629539 337245938 464947061 18207871 886572041 427024865 951858869 821053927 946666196 81726299 975029156 859909064 905596633 142810884 556981455 994482750 995063634 39376205 63351660 664341684 881908388 392745257 584953296 867142269 996021131 957386500 999538318 766863872 863229577 362889953 955893918 608829791 676732559 826122275 902838491 388676483 615997115 856529812 950683572 873467670 877572888 791242197 905528676 680344490 955432953 246541805 602183778 431585367 806746479 515208312 646931651 38342812 49233950 906270702 976042007 715672698 810366383 899812854 931199450 287328588 763651661 278858998 898256739 681321512 767750520 332057927 671545894 74667586 571673360 379105996 428972124 599790175 854529013 275847827 397627333 495949697 578840094 584595807 681379100 955762276 974742176 373038449 945639562 154887653 607982444 411111141 608015745 548318606 735261980 350633180 878428033 748172462 958263476 66427731 305694513 36333186 562729474 681552480 969798629 566703122 906858538 498770395 675377613 204098719 610257474 556412751 720045842 140756822 425537094 610264911 655260654 209168017 735274127 9439014 851657810 290569583 682254776 370410587 725522825 280572571 699120106 355499794 380388743 225966090 709166963 276266592 311622669 961067829 962130761 915030422 996011892 321259402 867057679 310760518 925664828 950737718 981569465 720113436 940866394 577720233 897536160 306019881 679604249 966165101 999691291 202566405 247917234 353572238 660230642 900836237 972342620 953117352 987213732 553043019 921927728 689055922 861674784 225003180 773835840 148982286 153858012 245054835 791570922 963608080 985728913 895552022 906138515 798908620 859210055 639364522 923497508 86535519 313227850 176175739 720988689 190501213 373166183 489601552 657761394 868943272 904845742 734831735 932099429 469551641 698518322 942619096 992761676 155740408 164688991 72411495 619482541 226912294 665428545 725679101 740377401 591541039 602768904 261820617 288682282 18837062 439321172 101133963 805525511 272247041 309012359 206019122 630574255 677797948 948365651 980860984 994648571 700823898 740682801 509309043 659379033 666774711 781334808 606104309 918750494 400721775 736454000 323542433 749970942 651018095 856414180 67285446 144020627 568293657 599959923 723189878 939673320 93819279 691861479 548203893 763362590 43132541 961426202 283618590 755927838 389401110 803779913 804118487 976001276 705634465 991795315 986189795 991719359 146551760 499389930 550232622 872775651 798849373 862060677 742527267 810301888 994433748 994711443 301538878 915985732 901243450 951702826 861400544 987340669 944858218 988153851 130244468 214282341 523496160 880355106 311313592 820394764 154300453 831922586 567574683 882786162 327782119 785395331 967670662 968865379 405081050 689347200 715144370 900356450 723999810 769795646 713761545 986834960 950360000 988973611 171124200 629006956 169124476 811939825 495873173 796567237 122373533 140248838 531660659 775012494 612503103 731134733 908774371 914662332 925382473 973185376 570552143 844752713 149901699 166500884 794491305 802405524 352335224 768163012 249833323 884065956 919161030 956427588 827510602 884906949 192003804 295294042 681189871 953799693 118453424 152828095 876715639 878819387 307071480 453114216 102693029 333309011 789831556 990767429 273427814 344455457 327080449 630376659 7845704 162757738 820536944 896448907 525164480 733585881 848920230 991357036 552098274 959986318 237707988 548096299 463282161 577411830 393109425 947049247 972704013 994014264 417358103 420137578 957282856 977853046 149401308 581113300 802539312 841835093 471999642 478556152 200280916 751440658 585015024 954877285 796909477 882372516 997301379 998476497 298311477 955932487 701170734 748458403 723603111 889391632 122508742 208770171 927943261 991774000 769385348 951295480 677507319 940807356 157788766 286216542 326062184 925975741 66469088 221508557 547068667 766483663 727134700 983819313 197760230 419037480 622378594 825413643 215623588 651921118 16436859 881388390 669890794 797677648 996006662 996180016 709383688 866821309 676744860 682163761 586540544 839167830 982494523 989228585 379096207 490074982 224005721 878633037 42644874 191470253 580965849 993861324 342320634 408369019 852156357 993441616 696868142 871571544 116320541 341483754 610598633 719312786 689813742 935573560 630899978 988070899 313365990 559216963 107587640 376303991 250539511 888267854 487971689 630554175 999964072 999980100 862549123 893582297 456248201 513212627 231180914 796061759 263078245 312833846 997058753 998165019 131402595 285627454 727327788 811392154 357676299 845868657 855713549 917691734 121869575 587115660 678408565 720739366 298005905 707572266 58809762 163465631 713928154 843497090 793785618 854878160 850487556 891023203 370101646 882602117 89068334 350072179 254005294 294844794 945409858 989051899 334753347 635450495 118654176 295087531 30562033 101163708 95551921 600116442 989209224 989906292 650172153 677257298 40035058 92025388 60094664 415199040 319702312 587486327 540897656 869802610 788665194 988825013 922261885 985534516 796909606 861649408 425508480 529411467 697393327 741247439 923000826 945431984 223573533 936828928 334254049 721464150 563902319 753166801 158633135 495698118 302576109 577438984 818462877 852216755 314308052 720754715 962695133 990190913 348017512 987113622 751489503 980353059 185054570 309507786 268428203 418625926 925658576 949852880 794420015 951787556 556516112 809583888 164081297 164636004 748565695 874447757 599751445 688876372 613365742 634748259 433063906 767598521 183440491 424720396 536737599 664227520 328162086 550960986 291415854 682795013 776916527 778450127 43013416 762540079 756784666 766581865 318832880 592830584 58433555 334745506 790279375 819237698 611332129 736314123 832663462 861689105 334386868 442765770 683657692 983942161 166882437 514463265 471854371 496752325 292604465 347703573 251679541 964618173 291543110 391166454 198883220 267939125 691442171 843458866 231977384 375401310 587412983 895157222 295976117 706841566 256797356 331291259 263467039 732234516 831462599 995202507 185231211 766105247 266239825 761720426 615148532 690558986 438400314 463600303 688503655 772189062 401656818 538555217 550529499 782715215 214816405 432506828 427663891 892857603 371951779 426911271 594886163 637547929 308411323 693758149 299287787 593516685 612683703 633269554 218246093 319851711 835374843 909831439 754812200 874373292 141450619 572040917 282592666 487671865 428019537 959623082 581643176 928229205 687153289 842483675 143713977 516594045 253210116 473812227 363121249 835299901 726592513 901046260 85323968 939931033 869959424 948724723 977564018 986923130 140759742 611714704 707578441 761160850 568779502 693389601 997192664 997695905 743677348 844288623 622093489 978397157 400679257 992406675 622487295 739540015 471380131 865424218 818751989 991322936 87704774 726440554 115754527 925253321 648497986 750407866 505948180 594379843 253916948 844119852 216269918 736388440 517649024 527315544 757768345 908291841 611667843 781080386 622487833 698820396 43263445 220875942 958210203 983528328 506078937 533513179 25044144 61221477 610103467 926938925 590580048 919996157 808498473 964135854 363179614 835060321 590922585 916223389 977580014 987409346 649801314 917683441 96538876 999452690 228900505 310257177 438932042 546101140 436493419 620688723 464332374 722109088 228552958 281092801 506808258 564631256 617835506 668768299 991349612 991866717 698350909 883192633 446882747 788204452 863927614 942867159 398551148 650109409 761636849 771875011 184492893 312644910 788977747 928132133 256039715 620785598 796035510 811553838 151842911 446327487 995035237 997986530 941767047 960289518 174949342 508350082 926510804 963243418 421411328 631320765 466844756 568211057 153067201 797420134 375897060 741549348 185561472 491896143 624091002 933127093 710978017 949678538 345549163 545209882 875348807 977309774 649423134 960700525 519952943 689356066 391309263 489860318 349376725 941488183 44423645 447692905 898866737 919251687 324106512 492768504 398246964 601740078 260693817 349256834 536277870 941295145 393466951 687147803 679862886 911630485 326785132 445201714 14371643 181333888 264470944 279531240 273558613 719537820 552172278 788594682 145843823 838068582 234166486 961346429 923300971 991690696 632291956 974258032 389597585 726303971 63076534 486469936 957066072 988718101 215938902 319999079 452415660 769325836 894582270 981300343 722949160 956435750 92360620 644862916 605037771 706695034 165384061 669647123 747602673 784365701 856765758 858780957 762055587 772481767 534326577 705020915 682242738 981700737 190704414 474815954 47506149 166800199 348254670 989400362 501609853 598125771 296920397 954654317 951625694 978429146 956117204 958405678 259981122 453413007 735185673 804313422 139940781 745341481 996146866 999567808 330821001 410725689 696713610 976822046 409907626 827856165 618626267 783182459 90191305 179767253 821516437 868936661 6040077 298768814 358842655 635685501 625240171 861001937 820479517 840975487 684732464 715532787 904231689 922958964 44263331 216019381 407156317 570376015 173922022 981022440 996011545 999627284 633334021 636282338 872988189 907189654 322224021 386545154 15437185 154503854 450283157 730007269 653676767 820616663 937653005 981855182 997506909 998752889 878609103 948106740 524797981 914364301 977185154 998330103 440835131 559965433 455702491 887068712 981545864 987208942 619549863 642062763 620199645 917355284 24434085 128940397 879501693 926278591 186431622 387573410 40439803 130945423 398564452 523107356 445897347 976931437 83788581 436237095 332381025 457344732 594363738 664560753 656672820 723725275 716080182 925455106 429529964 683528412 409957210 526315031 151659274 505350298 938216969 948391305 449352407 840623868 796753283 978815151 914892528 966263454 741854757 807088889 265909628 646454700 331379799 785989761 106324064 361383905 330603513 752124870 557875240 585037091 657444542 723440729 694330449 821303013 213572497 236511341 857216226 884122823 300618125 683916530 34798931 125939158 477144148 752649885 818976858 998791607 851309309 951073820 808345531 915504837 181655739 255809267 187367982 320406479 997847292 998403258 822143116 942480992 803349772 924158498 853237803 985049410 392477805 854258159 730321373 854348226 485528403 592163291 672409664 862726574 737979241 852679131 543664960 669844973 539972658 800273387 467668835 754214826 612844976 870454124 398057690 679888770 753800900 946653790 984011394 988763323 169554201 185358622 958426155 984162574 331174401 405095821 536475191 919870810 565185653 944380388 826887852 840873825 860140134 896488303 936020946 958457420 886830181 972333260 964917323 969955959 507827677 856048676 162514008 269193831 427476971 749857366 518251234 859091447 325579988 894394086 921539817 956002482 53818601 728344082 666594808 861735764 779358690 847638946 247555761 813379680 24036139 424139153 547822230 582829232 33242106 727341843 535802892 968226749 737344665 909877458 649578449 725038915 423732101 827637808 433002595 525475080 491498752 583481757 419765449 731216076 436642974 506373222 900651255 991095845 922679350 956997395 486202492 558998799 343517714 786475151 639608394 901151018 300686517 577377502 677862174 769661248 331234733 854932117 987945257 991859785 838904983 962320586 712500649 732464779 98837575 469822808 551274418 888425998 608121782 816294392 270826881 668222642 214112901 874724313 161980228 871003104 405836969 462844040 558632394 929635773 718107898 788531023 367232147 446281281 955556417 984918759 260840493 351694635 819649236 871850031 448802764 940798630 176963560 382548127 806039102 843006817 288414775 381495838 541037571 976257157 151245020 721609645 27372860 504771782 932649855 988557644 140064723 925157249 203880014 828230623 429329007 438867508 929833870 980757655 287377138 535500608 50787665 866606238 200986305 471408463 187968219 837737150 322418963 452485307 437596329 725316398 693725317 788732311 243340044 331006625 901642721 945311650 660023506 977867695 504112720 649363758 541550457 997957342 654207881 936659627 157440753 525763427 179260020 337972401 447827358 637433930 323683629 908613318 518224548 722152163 727685783 883457070 175841531 926170435 32957638 460032863 510674259 550565230 274222465 709927893 950803011 971478202 854556397 993968339 770780088 792626721 65001716 116738117 286619527 998356924 930510611 992554648 411965752 502366091 338215101 683198656 695539492 956578131 697748408 967378842 508665801 894718493 417493999 765364272 756005434 876303323 168939729 177032392 172959743 909255349 380415948 653230365 71121572 946408592 484552592 934870770 532059235 726232068 66040015 325520679 438610930 440424861 167835755 732478322 818467343 911291163 5275477 481130837 114979384 813893418 611362138 746299374 751615535 783726920 300804944 604233432 121851447 475247414 740842024 818210302 732161159 764499646 240121033 381752570 420790273 876053807 456151000 666658347 131346301 867061324 654569495 930482982 786485813 978376500 82234884 673491106 381363974 487570632 69324523 367813413 583036249 585469199 583811597 652755844 858262243 918011129 697607232 827110676 963973003 982308188 467076346 738169515 902216785 915869072 117217492 772286907 815330690 940477493 815971877 821045646 194572800 412005690 609761500 622322298 311036209 942987447 582543327 837035973 964992210 970288975 659829015 926934512 196671872 676695658 791533165 896181137 237835113 253308356 685406977 748481685 996418686 999045262 712091642 890846604 342004871 648267092 185249797 470540826 543819662 912824997 603999573 984446939 906149040 926350213 414469028 775935990 30778317 889903161 234369178 308133876 58177000 530246225 151890218 443900254 636082352 818590797 373935792 543094573 135839096 621373380 392997192 805011950 580723653 589301415 936146239 952032146 590524056 744311766 981579330 988455237 445811386 587703069 625933576 851863564 822771240 891297734 9644039 930665516 719179145 765539306 15028255 684989119 62331142 852196307 834909106 909956677 237111369 635368616 881791134 978499979 146846283 478452359 823874516 999496837 706456799 707826276 536873755 811478939 67812459 866467261 978344860 979919280 988984930 989877008 888776643 897335247 765367713 891114545 17530785 258353383 860770763 900711385 221615569 627399432 536934257 717832569 894032670 935268838 362041527 938620131 819031677 888799549 392410766 755125316 290661053 522442830 309167788 943820622 953884900 979860667 945348218 975280431 861261738 884660652 910814880 999876559 951840312 987504313 56893840 247493494 374097305 788366547 447890528 588560253 500013180 740340949 328864638 868219870 764985042 932416492 804942992 832985455 955153284 995387004 278856719 592689663 659781082 765902855 123374117 964755976 854869424 891527897 221697997 309021672 552275470 675782905 760684873 861788631 265312651 314390883 848512500 962309350 625497325 801172619 340054845 341882665 858613752 924985884 246320555 343047600 173158249 657989712 341788709 695800725 984085501 984595047 473542754 631781455 639253360 954195400 705768535 957722062 285452224 945931331 348282783 520680847 20797009 86755622 546418660 930347406 644791767 646501451 412122239 882567129 163120246 605202299 729084782 867555951 164495118 247195841 640177438 782272646 618227687 860776439 313876271 558874821 283120735 508937155 28482838 473670094 968394629 977888290 532449322 728698439 546213568 823824219 362561078 391707697 52712042 984566986 232376549 556394232 747289034 810945505 936584807 995640539 217577729 979681206 771111817 929760137 478532112 965656757 69902154 593040425 317745445 417220424 390440648 641897929 248491009 439633766 315006148 365824935 168533623 782156662 240798138 933243145 636377725 639881078 539768551 744432773 700285087 704667022 804132912 947922034 511529022 694641308 542992104 886190311 33148192 313700399 511941941 762127981 192531521 767075433 102450227 448943123 466683384 841933688 752792742 954991988 34801561 178252494 328514147 522873210 325172591 789649282 845039760 979198161 843690006 862124932 231103088 991886335 315109139 471823641 925563206 998277454 366486331 428149434 750230596 900235586 912820992 994057653 434565509 595924246 663218747 894976465 313231660 980182584 489845132 681377720 990159054 992400404 87951557 717985123 84237691 569554090 595966242 768399879 422197007 556184537 143758224 252105419 154404958 606003285 230780679 603195559 492897243 743623712 267135039 882236782 331122790 950610650 970549259 990631333 593285642 851478957 694350062 755768828 379400463 414616756 622268769 669083336 608624911 819016786 814163237 936957943 423014192 830429940 677210426 908284240 833220270 964037380 439258701 834809767 720856757 813399495 254330380 610239893 280597506 542958489 229420023 298926145 769732977 827285207 686978479 850972889 895100428 927264566 349575056 919041408 754040400 778784032 188724472 896024817 525788385 626975141 408207004 658821459 199209768 575145640 59392477 728923663 714199514 963923131 420667453 446323950 571210213 890997766 246969293 496776057 602216429 892177387 635033354 836372570 726549734 751059934 422591375 776241182 77106072 169252127 311011128 798498049 308802057 474537074 789836314 971223300 965338263 979542893 118020950 698927779 689899823 696635029 75243295 221712711 23638146 929678700 59000490 610735526 791566728 909315806 281545776 499168962 166113334 322589173 294566056 612986632 679849670 735464405 43906711 623595015 212205203 359902866 626008415 890001327 656991729 737529637 492230950 798671931 439157524 621083270 68953037 728867543 601358965 879180271 957624803 973403299 277339144 645881437 190642576 636121447 119392599 415655711 718354027 936948085 178717431 466916922 228308636 811271252 214841471 846041139 773135224 892369181 444983116 824825525 768158046 909601767 891487870 904073987 360830056 417418886 642227953 683359507 86023335 558582146 209567729 579992248 753533899 923998491 223345370 779358128 74472279 162252030 771092362 987471152 374769712 798276317 59997376 340746169 174076187 983002200 133153579 295172895 162845682 887856097 312342064 461108550 974700263 979288030 431441028 455261608 194482582 627329419 846896533 947788583 265729737 686445059 961370580 978756782 813813843 889995814 836034732 920708320 180544632 692487878 355936099 838370606 452589145 713424736 32159619 472088085 368100617 878166819 968990882 982582895 660026852 702760338 405719324 961777139 305663317 473709687 308879853 693709106 635450464 773227976 769509173 772260998 333784417 935295750 455270142 854514948 644288729 941904294 625274428 872340156 793759563 839345194 98233412 966442875 65836188 168966990 478403124 749980632 78077320 764897242 995918381 996040593 457903273 650882087 194159613 476230678 946906518 958705224 553422657 782915659 487481928 508668244 270636721 927926803 28275401 315440610 950003146 995420655 794784304 829151299 729215202 799569206 549848630 584444198 337705876 601782474 240630469 480653677 13921729 712285268 785070529 899043522 358626072 447380127 684028742 974001167 39612287 81857907 516613863 531615280 258863378 760085918 136978972 842176770 785643034 871273172 462151735 862424400 912350676 990686072 367773833 587671509 649578402 942948731 6524011 621895804 395844276 640982524 169579084 715946799 236094207 414542410 347778622 957577058 931001938 998806112 931162683 995363053 786502255 875010049 393628400 493711742 505383649 676733270 250649448 332512808 681980311 696266946 340291269 898271844 339940639 369717892 813367670 912911657 193231775 429133722 314143441 889920262 746521404 787264601 680121618 763059652 79544389 137717937 380963847 484477166 523863807 823185612 229814565 319227411 48158198 81912399 264743800 668164349 298180862 961659544 235819323 300670656 129899846 266497974 400495366 513021091 49089118 496577700 997337834 999691488 395392275 968224293 27483618 875040751 201584352 713641739 702956198 954425655 177786692 733483198 604375881 752020058 671350098 828827497 997001827 999129944 77234975 757644463 761420799 871686554 793937244 821551355 483439440 767101948 970971300 995870004 739396655 764948103 80213197 707534230 72295220 741152627 320659411 384461214 106679064 674716133 320241069 706206313 436359816 642994201 811978110 825439465 190990881 956354015 33808860 593026197 719120082 775052197 488224581 561681554 735372808 860136921 94137922 563952923 162335631 417865933 990023697 994097874 819162214 950939858 565914179 965598434 648755901 807483119 420701304 568331737 403887021 866963522 268349101 562520808 209087778 449942867 87835356 286160873 304275049 493831291 545255521 615057298 96299217 453457255 159828480 970207286 914665987 919427802 519229829 580735509 904550967 975253257 940864850 963150428 6262140 751227388 414975894 781481911 201169513 617702626 436674118 934757674 702348629 859895609 628130790 942815090 825295284 976709972 415724465 590533572 717239999 833523874 283618259 420098830 605483580 704710218 578837685 712702964 163218506 335933618 287621800 299103341 959594937 971715443 909463923 999761586 334217089 653957004 748187796 838718466 813631800 873336658 451003403 633510298 869346835 974838396 717574823 769105874 272850833 811742401 775896230 912016232 821622934 852230751 705692127 863787633 668706898 756643013 866102597 894818372 17268608 63746238 589953622 834239267 276502238 803803184 774024012 883048808 768835484 874837822 553775363 634757836 976412925 993094876 790928253 827474135 245662909 409213783 850620008 913658911 25980051 698981316 190402587 816067662 659077229 737536951 786011894 896609616 264513528 536359467 790209941 841051634 675922684 787537448 876561786 992265394 110816539 691419312 878260321 984134155 397514403 797156619 802705700 917097350 208450216 350539162 559659317 913146723 183366571 305888698 454056599 547689040 516154451 535629799 940616647 970481934 394337185 779555448 121100196 685887059 496533672 861106815 500816444 769401924 976881266 987433910 234572378 335731650 279088362 840740211 921660016 934153125 881500350 964562527 725453734 729823720 406042854 709396373 761645879 827402776 175048775 965217831 451928560 765208928 501073247 977243160 314756037 588275701 934843995 959058718 425860858 806872677 792873878 866675562 340504126 957664269 60692762 304719656 923827550 988207635 865624955 949870769 179028301 926282910 19731896 865598357 881723106 961425943 31217347 791966017 888239768 917548549 216857730 664970242 853408237 895549089 45702533 900432773 353147319 422226599 521629217 589249147 667899658 905057968 13462894 646963624 652110589 863654544 439143367 626239154 715516259 819326771 493570669 743941628 756134108 890550219 572532597 993260489 798507346 976899141 473621042 709252082 590127995 680107275 556929049 819458568 862536433 870233178 688213958 798284265 830864147 964495585 139197795 254819181 661571552 858178697 34538417 499945868 714648259 891206924 776380586 878775001 694634782 702003636 87681623 984441747 975488092 982373379 994437210 998126917 62286039 304649696 479666511 882689737 582180357 638540827 282453208 932814897 920190707 963472542 852058054 994464880 54215528 866571922 459027297 772748873 27258017 725624686 763702895 847235033 234663204 935869878 740036720 930850176 539435038 579847209 662273614 957769983 930317705 999911326 718052388 725864581 463174704 559083709 616061282 742069717 300870222 364059873 864045447 986010384 509270801 682567775 761931611 780357447 965574399 994262480 7031250 597458403 380791483 969274710 138380690 592099729 144775572 876854334 239568359 841912975 880259738 990404988 288683804 602080346 372763478 793241490 160425585 206137829 22149042 839748687 24428866 156028437 739987677 847836307 87172703 558393092 486228718 487898677 831226233 841178893 411960961 520145589 986027918 998760453 831974812 929078744 366213114 693484165 557899597 734758810 513149639 611362637 586735348 791773830 798942693 975565134 324880860 755025871 246787532 725794729 977946263 987987472 506511235 617689703 865639663 925758156 928359009 951423226 955943979 978668716 548056500 701193216 539948700 873138907 880624597 917201679 80710311 194796038 303531607 346720255 672854218 863137109 233742430 622902052 35359592 147750435 578968027 720311927 975032820 998362064 264249081 377547869 298844629 872173473 355585966 376201536 962602708 968692217 336285731 716850912 793647114 890052694 391770957 452561784 484454978 825594951 895742763 898721201 143500014 441560691 508763012 774174653 561144829 876646740 837296542 891895030 873151836 894271254 975775106 999085517 193333 306782927 753435562 860729438 733645199 933352627 341121715 988170357 499665077 946868857 496515704 644511982 810421927 877305656 436375695 529576485 818178114 985808621 994843869 996613481 817597654 887466507 555049335 895935013 69823420 298999323 71305746 312410214 586551919 849391459 235449312 396179321 730336826 983054602 25098414 884017734 21700649 547897327 866601094 888527967 75839474 592268798 270698261 284120685 598953309 712761941 245960953 726983151 964259577 977506742 196560166 267840135 647134477 743624588 174195257 376434040 127970774 764376001 473600720 816287513 249090969 333166095 547537237 987346015 470339282 687415571 987131603 991028376 115344111 736095119 584422682 738392111 116063295 650589211 860375690 943452082 23508706 208220615 75215998 614820750 892870350 911506464 586868421 760196402 482654914 992411188 598721984 743200836 689282687 795810772 710423517 998164793 506106109 961778858 89357808 214213042 644975880 648182490 606059819 687227613 874050377 939932826 831355976 976940437 59666072 251256663 108644667 661194166 404887959 765578633 378380090 720448335 839837 187075145 5115342 73799163 138553886 534491765 437554473 819342390 693199306 802326042 429250111 882619418 858106209 888236704 389047063 889034379 764872559 964518791 766422715 815638714 198991849 358513324 341095503 600810881 159037142 908465877 962329975 984595328 130633264 469961817 673708111 846110095 195284682 298068545 254512747 866062866 776290663 914658519 280547523 501848360 688399159 931362227 269666076 770949655 196424816 944520362 822969669 951878657 507160213 800573633 776230472 993096839 222225095 754048368 257774432 399730643 780539635 938191447 849586802 894108557 742608990 760836933 175080970 665840303 834472351 985586787 649275280 818259417 23602420 284918694 42216155 316215652 636024330 854977682 983103315 998868262 21506829 563766355 956772296 969346397 659697886 926057739 241161827 350886093 604231430 613969015 149724377 838883887 962552961 989318623 623500887 736425482 492027561 852360296 560458885 610020714 702281382 878603944 822188606 940222543 408108898 786788336 971868379 985061901 923992772 999668947 186745968 836998473 318656277 489827943 69884250 244610483 363458452 472318611 657808349 746545717 626985495 931448756 308031846 626657473 923071827 938953964 885304267 938437856 258078258 981518766 976676588 996505803 139421171 629039082 398932561 781886245 867601332 884206306 286398704 711047897 856714334 958912460 910944291 922491463 398281316 814774950 100729263 209486279 204060784 838836502 246963141 568553364 549321191 957198254 395442053 820445179 775210612 942695133 269043187 442144797 759311046 772725964 76496706 259059393 950767982 958125433 733634383 943776176 412743770 558585740 120163553 438078509 867142282 920777400 689340681 696543791 760629600 895500493 165180219 697020936 120125606 659338048 897629323 960895913 636938790 744614032 300524424 814428518 526537357 551219262 921654463 931062407 942636857 966354976 12786186 151304660 474541356 521231188 608085527 793697685 175236867 595722595 279934088 909463421 472356470 930539021 423222894 792017699 675625340 894896104 588497406 761327388 600427780 663695156 526551918 621449013 221090006 914541694 895782156 997435914 850124106 925785323 661354577 760345271 661008630 976013413 854743651 973669554 887612185 971789953 804173443 873261857 680697291 805442284 845112247 880096582 600324756 964176920 642351192 648519122 236793583 546667388 785446992 861161110 263646482 631136615 690299080 924441447 32553885 43365919 439174784 739120463 805361187 888216561 574263660 894985682 323578198 620608309 485565185 533588522 763957564 936592561 642714319 875180694 430530111 602264125 241110865 480205966 944850442 972361817 728085151 922763653 494012231 519621888 526040676 951648533 526229220 976127660 356598823 680431197 514056179 796628705 973475077 995258976 6816712 275592823 861869885 918740821 559091 342363747 197576344 519223591 33894845 507912652 594925400 624849982 872399623 925766678 85858734 793175167 431112565 691647353 306626040 763944825 339252847 994894734 698855046 993427236 815106995 987364723 852538900 960242786 910846805 942394714 418570415 736940430 426857273 923141810 195042961 531168956 631496516 825556638 688305783 797850050 617261391 928214874 184101201 505202628 620720023 752415339 680212339 830705764 487863727 745446256 200912385 282755925 659810190 811305584 313924823 637585792 657723025 827880184 172331542 284930145 26092179 694119740 108300103 134689430 456855936 786423179 728194499 941294736 96372926 453065116 412770796 841522286 55419760 881971438 871849786 968063032 654210693 765994412 940489128 975946877 563356343 838620510 35966790 240873697 789568805 965302596 811188204 978231426 567633799 850549649 801796918 938682793 837269235 982207792 769456755 863380310 50952734 703314000 566026694 658613534 798855300 804783093 905879396 911188636 649771420 697296735 7690262 501043859 119860703 926732924 58301837 715687599 807638425 885064943 626470820 878239742 235186935 332066872 144912514 717386443 504619259 876607241 39313741 270182723 133672565 741843538 997601561 999847255 453298533 782715972 11073205 712249118 941316689 975503129 712781794 937712875 776613538 838120535 82287605 564776513 337624926 881204299 205102316 531046130 855386211 859855805 813512080 923588382 348969718 856881405 44252023 377448882 956399887 983737608 814269853 939782941 677465831 725799922 983989661 993128305 896565462 998251104 607519820 799893501 926738811 941730170 583694079 808088297 446284983 748189265 84816793 603942992 254205047 282439302 512782486 986701216 310935220 483546574 775516527 926406705 287033925 968288449 777890891 858282135 868877592 893808066 296656466 755582495 510170904 766296500 661714489 847279327 112389447 245263354 242389310 902572113 685219175 718305711 349572291 493608447 619530467 692621738 546631759 556581447 215813068 893501216 538706547 954820964 945682710 986159262 683967499 714008369 285524077 845664647 432759942 781400857 57887691 947615933 156820983 795596991 437409159 467850100 4347582 241346181 523545098 653706115 564721961 876530456 847951107 982715563 344382893 692632084 293770789 452053541 756130188 762190082 570253119 766072906 189969661 859057360 286146378 831228917 706146111 817789398 937011327 954912225 6673421 375056152 75132642 308574482 490407811 564553344 558338236 581564898 143091383 586719022 403353772 761418992 208842598 480850929 463764059 666815982 851735778 939383168 221634839 832622741 820767668 832632604 528224750 608384756 891046896 931586978 616128958 661610281 160997298 400594113 527981074 875947326 469904992 960640326 134040978 589602646 375171186 560267659 272015623 913403660 848992069 930265993 348268591 431722832 319388159 398082617 907428010 987191109 832773266 991756110 364661929 494906372 917658308 952238523 800286354 853828270 552332912 878365774 65571158 854031656 135367281 354096032 707379896 765282332 614094483 961059521 629373146 873964175 887306374 992453044 804273014 959930314 506473558 703341239 718333698 843908688 419379105 544053585 971038256 971211155 263728939 410734184 535036438 619576981 417039102 661743274 845105592 999237836 507531606 993780010 874775230 916342807 595437346 695545109 591675794 791082700 253359804 455279809 203430272 728451072 528201536 956955306 156398103 361546850 61377372 111460086 308555631 884928531 793619411 802469097 626575488 966961945 493649936 506126704 661802324 697014795 726639510 843304073 903787322 987643926 913466081 919252642 575574174 676634385 572926096 578874139 295931460 352144612 737093818 783030211 145430341 357338108 226863714 469245030 168203089 736367295 153694835 448162377 701847044 925249215 878825560 919158904 148512073 350456773 91908901 408936165 523296745 585746584 127384824 430582704 115367192 647417333 525236040 649707811 966531249 977247145 289140297 936165343 892534182 959005591 455626297 539766399 282009209 606404920 336093351 937159061 161968978 965583772 220869102 335594983 427875791 500217576 812477470 818983261 785730282 864101991 977737283 997941996 339816068 906715998 264117688 724420590 824424479 875872421 986589885 987689886 649751935 969647332 347463631 440918201 880813275 913362014 641986013 811095104 982592270 990444015 905961738 912287746 730131931 900072477 764751251 852436137 100442451 564209898 850610136 859282334 843892350 876102450 475722488 829275836 865870501 925373051 294696786 949803637 669104479 771348993 801113501 969539402 391239708 999680186 528847836 723486886 951713850 966398112 154557639 841662105 51533157 560059538 331676075 815510081 362407301 620748450 148884122 177942270 662941386 768258909 261835289 922913493 668486901 959985805 568932004 802598756 10136282 529922527 154380761 619155466 492188609 776743367 415730874 619630924 398184127 634112170 578062894 813620887 845667921 947293535 840949769 969963066 268657337 384532255 608711381 998077476 833866180 996770710 961513192 981129500 698733904 754660614 26136014 101141803 937440413 971577991 920069172 975731771 829009831 995260967 545838119 886773843 124387310 345343987 299855029 451941682 470948978 762122796 149699771 612855967 651962198 789495473 589617010 901325258 574801104 755027105 189739825 795489065 415820701 761567090 182675062 409568333 103993260 904507648 209433156 477656286 35228379 996468436 787407518 815039214 184608578 601144570 656148240 726690293 564135512 767240007 679221402 795398129 985832709 987865288 48118216 777310615 612402437 846626748 692556113 896809053 176969675 521329145 294353121 810027567 448773079 942431186 589107650 811682874 589150754 672667795 724055853 915154957 948107154 958650221 83434838 97571388 77715645 635387224 402202550 661248301 539518142 765047984 31417027 759150468 92784266 664808465 864452791 907547940 629634139 681917174 420494006 691256370 218112345 387651637 213295202 506145777 920118743 985808572 281978697 647006420 355888657 651537932 303081293 358088955 197199630 701184455 30000239 334138735 951732811 996410292 911731674 940243263 414499971 572061540 90136251 805164180 413606938 955114817 337538927 825877771 265218751 948685997 544482527 839774994 461471238 502003061 575088939 600927929 578798503 718552786 45895761 835575259 401794415 496379304 981109320 999865763 773374944 898056083 103267517 171882841 171082408 957751961 360289424 730461441 261837414 588671588 36824583 843102324 613405791 903492317 478463730 818734444 781666186 843287623 561081040 792870202 679983379 733897941 348566222 787902156 827310411 856663911 168354361 481775791 855166101 875932466 380524321 632751446 566492918 886574188 712995443 878812816 373298669 901985859 275384713 678721582 30175858 791041028 290261826 618698387 152664202 731055939 356896954 483464779 375706271 779133081 57057075 851077541 97204330 957588164 407172522 847814407 736198038 787727751 190734931 594921341 555824852 915328565 758394974 868618264 314004933 346922904 440489829 601750079 992509820 995347449 49049019 219201741 899861991 966723397 61648537 321283029 67072051 322171039 930868759 958222506 809327550 993831793 340782638 676804388 433305105 551259054 596431124 655934741 980098591 980981476 158217095 715476254 630883713 837973485 320917233 411263680 833177668 997888128 551147065 859468909 791442161 802825284 454671853 602379182 779931241 803121792 107424554 113835808 455571049 969311031 122274001 608730035 484101692 778527019 17109935 392134458 664241586 760406930 415664928 900526985 351422860 738428364 494027171 683129263 235317967 488159590 49196755 417062352 842446887 962748973 754813735 844884427 526727276 787817977 280858283 491395769 727521364 883938383 277864965 878761604 384574375 915636547 629605328 762361424 913457745 993312406 878144384 897582561 723114695 767755727 513399744 762043480 501722613 831276856 595909161 960901762 514225174 608567728 655936185 912889980 414351170 815637405 24620482 691387248 994882075 999125389 53065428 660346131 485260031 564466414 66011003 313568079 201824976 228360980 487040809 619345834 27035677 78378014 332173144 801401315 133824310 738243501 476110643 490573107 541496759 811116727 777879342 941260102 134365494 603448265 44141034 324386307 882555416 894344331 856476064 922059599 709102037 942777954 223293068 526731558 664427947 901104111 82294367 822325925 633765561 742954960 343578756 892302161 385951953 500652919 6462127 901908018 655082399 931713032 563644182 711874706 402542392 995241680 117833133 442758239 906390248 929139150 192965478 771409481 734772114 949222334 301380524 602482683 236364575 482760119 465679734 860375395 378720119 955584244 79571057 134127932 235415402 513031101 777097726 867735156 116337234 496277147 279991176 749245867 769621279 802086425 33231235 807369152 115942601 332471209 973841400 982216602 80714522 703876150 474235497 961078714 608443730 731471139 375281412 907944869 702875528 854832461 333026815 511108334 670742429 969224656 729744494 870741440 912179410 981969979 851038689 915765375 31654261 172310738 434179101 578090394 406856873 458363840 576394099 897775445 36689306 507411689 150528736 538561377 295273690 629384444 848703705 940738931 71767699 528572266 799413100 806373958 333056069 945414512 166771751 455996439 812697307 844560514 753429532 842741905 239322372 425784437 416015981 829173263 327440098 892527180 727147150 762570722 750968794 821077094 418437653 998168887 510980201 822759892 247851593 679471786 727399561 820352379 665469894 718915398 398851857 512990953 835452656 855111172 233467191 731102487 429931457 710350948 146113720 918231473 73934228 816931106 748642180 825090517 425666483 693035514 992999882 998961614 847447121 923375043 117411027 666119401 218760729 855418597 579542222 583102347 419927657 811224673 655462698 694210051 775643472 948023196 815587924 876163100 573622267 823695546 417581442 689429311 449208578 795905584 870463193 901516096 546635514 728711212 721884350 840593279 77467214 159686401 807828972 861096226 399996412 930261164 470969902 593118352 921697040 958198145 915877581 968604958 420501159 531701328 182523156 873851200 783703981 846747392 562217991 797630097 41142315 714838265 229990693 665362762 947587436 987644886 84407972 781348287 739840577 808164302 654908677 665806771 24581440 599859295 717781226 962697015 844782767 945901329 555472935 648948452 820996734 847745704 595572484 719882290 726389478 836275556 823983850 979674113 344599971 591499555 500296349 753143185 723820452 747451413 3441419 644000226 254620336 418013288 10568161 193757555 981474545 999347399 964107032 982414603 534077863 711156952 670467182 903535131 506159751 929326192 602574312 743245857 990784943 994979171 129226982 851781386 373278088 874979820 587986392 810978203 321419787 617616592 619158142 874975819 89493540 652575557 543394120 971403461 31483071 325359365 634587441 887567337 240259268 546853898 13050786 903998245 320296125 575171776 656081866 707527750 56069920 571567195 910843527 929908178 919396961 949110965 956610922 983409554 993974699 994896393 947972965 992419602 991006961 997498871 539465455 560551468 559464755 841700187 43489179 66140898 896398032 977970997 292367127 769504182 418720220 851743950 670406786 696377997 15452504 527491735 288963849 945018642 784676941 936092052 971877093 986600009 892766 796400187 931910493 960195261 468032198 658741960 837400321 860306625 635015322 692781799 53320903 795740991 360138789 794670269 182067 898362102 20975260 488680107 507022468 891675822 719955001 753075774 335109602 775250710 268144128 489642327 176907314 938892279 279991257 652209828 504706051 654037648 443782102 684880487 518284519 664273003 702550035 770607977 625210331 687325810 53994076 170606887 803807702 812212051 328412679 631534455 594974833 925264203 307836286 464308442 66059155 116343042 320429555 677355884 574050786 845588289 352246261 886310581 725163836 837906948 86606913 776699442 454789468 558486084 414075417 985459874 862889199 956596088 237474278 799429628 41586970 580496833 798758609 840915187 876841363 923537516 764718088 891929529 875753285 926317475 797940995 930326878 821455996 833458537 931945195 992451902 84441643 984368921 623091706 943021584 377071451 382122425 552355533 600793457 729294980 744506156 207162785 632526981 774302573 807707225 317883816 385587330 659958836 962775890 50460185 729857511 674122600 801304131 376662358 584634421 928614513 936575173 755084393 983614520 430467876 467971283 303827474 532473736 480853830 828206374 89894566 194933404 998095610 998540719 587590917 603825656 777748778 792358476 299465283 545756834 519301017 948081321 560151425 784453835 395190002 913364901 22828843 875322466 913676094 928403369 698471528 802500964 399018576 497537958 537980322 911920307 590996248 851513939 721886973 752075647 667426116 856349913 331959479 982104616 576062759 725854981 451780849 720605367 744091512 810867118 623357253 707279237 257414976 952315802 827748130 925159490 231145918 546683793 596162401 738011194 704657089 727600234 994187436 994556120 166867517 498311504 682290069 684049261 692894623 775392340 706944506 943272079 103070055 656397613 320130597 353891518 850794381 916811815 347369585 751801568 162055077 547053082 124653001 827446069 216016189 866093303 898593204 915602368 810179107 813210365 457496539 768049984 34461198 545493217 919944764 941772688 402797244 543597029 374664716 909424612 609022158 685036782 931567887 949569944 471275348 607131704 647854375 950854167 250943288 395718582 637023441 896400119 246850886 754863223 57844786 125773785 489690852 849505144 808437110 873493783 553634065 893499574 765735569 775551793 245684549 898092969 236802353 671750476 55746979 351875943 895401716 915988408 639822815 757174148 927664475 998414924 491043748 646999024 809928338 877245139 615716217 897852280 683969621 789127619 306370608 807527464 942100084 996291216 200284535 470703319 501004214 846193701 89929810 693942200 175964533 826849817 431946624 598852539 35377505 172080203 892128581 909740986 136636085 829438956 661103814 971749467 335839636 692387375 969242869 990589029 663376335 926073644 475401692 508943190 196751381 857823871 542455919 990200732 481397231 789678731 151156045 442915295 745294542 986497478 362082347 864202695 678963047 746570899 928832197 956037867 660572828 869881333 239965895 320977211 153574397 992154798 902684597 974343097 935831735 985685662 366056548 394126087 558402771 804163474 634225697 948024879 631127947 895261236 155779128 530023421 921332168 966921724 44862613 570807725 421150008 804107129 879577152 902182321 506986629 786073822 126360578 630487301 91322060 322820010 868220600 983111839 715733592 809852186 669857497 792928370 738398076 817132992 731788641 788578584 35952457 641557270 750376251 967346532 419686955 751332238 506737654 916490928 766685404 966640652 116107039 134821976 794931240 920629492 939310289 957829437 923563760 948721145 614073760 965980174 84059197 187864174 316635149 743907865 989402548 991703504 499837298 500620432 355929044 917597557 530554959 876364047 150339730 525114678 840370191 976691116 517959755 790699814 92101418 496485681 339716462 964429907 977273164 987353823 492842100 926486244 377348091 694487008 612647803 889226919 823694160 966760686 704323393 935713130 639566048 836940752 696125440 768829706 812728920 994610489 958036247 999749649 203171797 664945039 537940581 907485730 967160723 970866221 375154654 939709278 206134910 657927228 259150150 816330505 496528896 962273307 559499909 605466240 635082685 984477414 593624474 804045898 846657691 951502619 907219465 958603519 2233027 401365477 719570977 847182981 839087053 950227623 128776711 358210701 831465393 935996797 169319804 873516193 332124578 388259876 443723853 930722480 672928064 724833681 640481767 944380097 973698285 992440949 871697426 980047931 368315727 584934596 653182396 837495489 695360868 706120686 307578592 906083076 74919536 712724189 267177908 493435977 761963787 996705198 128495638 963143100 175322554 444285421 172726698 250267401 893129674 913394077 198597279 908670125 192313371 685528734 420269928 830932816 341177974 595205945 557039279 783335682 881583725 919462743 473763432 505394099 758594649 868150045 321927367 332874684 100213434 858431783 554327468 645967355 257228469 334042306 295918310 837540179 812845120 872307902 711893667 776522077 675985394 790986558 645480436 950239269 73689184 338127095 846095043 906910009 646874454 953518897 558256369 949370158 875451405 877013047 237380956 651680882 461633251 675109550 85260828 297325896 806442036 837940256 60178238 430880300 418109777 499004493 667357023 902423758 25741352 31686874 308210894 446895558 459758722 755676089 104934476 680206711 338909572 703413143 467207671 472172165 750856094 931872133 64656643 625114399 623040935 830643484 784716332 843761369 667027426 794352849 49614704 561878103 456869493 774202970 557698120 571935109 102483518 336140618 91714185 257845486 257017933 926594952 52785638 561087326 821445512 953974077 103835067 412390175 756553719 805911530 851284573 899178979 904571625 993980359 621046529 896044009 871228809 995914387 682595551 710391628 976598724 985607198 841923732 852063150 594657741 796838174 510908598 536744216 696755689 955721276 129639950 851194516 921300873 939765491 592520312 725181530 301944154 692597448 788979628 944906747 529088786 738838509 987022456 996402374 599845656 619045164 525756769 686886527 652464607 733290293 517059855 564716997 839601464 868040563 596303592 954949168 730717959 922138987 317409259 445881259 898858080 936906446 289681718 359548642 976488505 979159295 963254408 988036127 948026005 949817953 756320285 872765502 282034572 838575470 315095620 315524185 876062571 903106938 550755488 908496798 305989798 536380877 768090963 890830043 390265986 491562064 465532897 888170779 692029792 747819442 528373763 565761771 229354145 827329215 410058547 563260048 749041189 801113907 705012816 853418151 443314194 880016212 65509089 878648252 56375349 772429043 816087259 998788872 878795807 935318095 557541884 869097108 516813172 923640000 876385875 914540683 841919382 907307113 986651486 997944466 14486093 69086776 186199979 945956461 79322218 693632900 102703407 517435584 77916582 972787935 270370140 837393684 129740570 358859170 476708901 648901822 680752994 936319745 819781945 960743896 141230552 634379554 276651868 518106405 172296528 189697273 179853505 443940903 249907792 961846393 206411194 652331859 535093398 803248307 897736226 909251460 707961143 847532610 918117528 949385408 733482820 776894885 264735072 544192804 476082470 955891183 406693338 673908162 998795068 999379650 204791787 703985496 432333742 557184568 480500219 993332647 418546801 596273886 688338746 980258547 328479099 630903421 952049426 996530590 931910459 939248752 530724166 643913529 527534891 831175078 177451686 334871543 893695231 944711993 918075818 941482352 133313637 292308180 643849627 653003036 70029885 645022206 897714681 945910936 142813940 452328658 29945316 833348751 374249868 854907746 231745958 579679781 61063242 437017985 680492337 894043422 578239890 645333518 41509437 871826278 564609064 776531050 996492661 998241510 3216471 121199652 248190104 892434215 499185341 697207257 767101470 790176020 900208795 959733852 62416116 660039029 621260475 990777021 501414595 812296714 678116156 838573015 702230524 814808294 466006501 949908395 163525901 878312340 583864322 596788200 726588700 765078224 113565788 355451060 911945489 997148033 942069895 968776582 202878661 621510299 689139631 999782321 695929768 789954650 374044210 526054528 319612306 337335891 382435359 399736962 700301095 747054694 428819427 634836285 268817098 619444236 11590688 814853251 299839038 489289845 492722282 896436799 261110965 459952015 140689328 620520859 901368520 910002140 484908428 952194825 408269892 418376317 94998717 693481726 302374081 736086238 430286744 800019876 639609796 989985901 865831654 889131724 573590391 713848878 185657189 947710719 746400602 791210205 889766024 976991752 626865016 784159611 797921697 979588307 291173768 643225727 739121622 816190670 337625093 831724488 184589590 469706566 223366667 972764812 330643900 670215336 765349209 984874900 569067562 653860114 610600010 858076447 615789427 939785513 656220027 707648589 460996869 534955239 937484279 951228356 691673004 906148167 829744929 832611003 550835018 963312275 242310557 481480621 226550373 900360927 463735454 932141739 383167096 980307502 938337214 996725570 366494984 709316572 849088447 994634829 637488653 677697851 927684725 943573791 547407822 763972505 898513294 989406997 982316090 990057086 718407799 805329414 662958277 677614321 542614697 832981069 954205353 991602870 940123002 999308814 798617968 806567971 481815441 708690310 832348101 857561700 955079977 981000891 15117436 223612100 137345302 955332733 792176895 980561423 160932485 943983394 624675102 863155396 752605060 920680651 274239877 856267438 716846873 964687569 613825465 616605005 54973334 347082100 891274047 984204989 950553784 971607727 45971980 996517730 232042159 639463805 520859550 808059224 311594426 843450422 105844704 458020129 985101685 993061953 295453148 883273078 879332452 925402714 337259139 761188319 536548897 887762280 505896898 718005926 654780307 667509286 140485436 369560997 859971917 945628314 380745824 800198928 391618110 648091856 362799604 734110607 509336979 866330438 899355525 927869790 445878501 963042602 182084898 740614928 231054220 250064716 91293009 633955042 539349955 642977042 635032729 733832817 817558535 888442076 358906400 871754796 981178109 986859246 274921839 611500344 242877133 534505376 435150329 928829304 541230442 713046416 115974900 510994290 835387359 994947812 637987981 677697765 775184716 913789615 620956196 805821954 644573309 952263622 742230461 769159311 218992073 605953601 258745898 474512355 327744873 745443336 861721862 946853829 584512941 600103864 547367836 889204982 949593605 958625027 376970016 814213305 284038263 791062940 233584188 971697234 866794756 941352332 102678490 831411817 658493851 981023232 437199986 956255559 20701121 891655077 358711673 933775021 950953995 958096996 580145836 652535129 365458957 995421441 313600704 634740176 84508198 677033436 383445655 671369141 201136214 284577902 734043478 866218470 382900268 885922285 474069585 573540811 670904887 808453374 879571853 896586854 597929457 936282965 972811196 999454016 415441156 449583614 606433692 776962035 3977172 546949466 774855984 990005785 79260004 218695174 652872251 706829416 757582200 840105151 71936728 253071483 815720375 843744424 415420229 806293497 556577660 836485347 459854266 896341066 210030726 309440187 806648603 864765498 238988289 630391466 815727937 910599494 663096766 792339477 977689615 985275031 995126224 999037813 609340634 745122253 633269383 935759578 33736735 985069853 874837584 988022759 301035863 479181630 561025757 996634179 500319401 918198977 934503962 975484466 743615140 812087481 273696718 658539635 93734424 993417926 359771378 587747776 359939975 811871734 16563091 936961903 937954370 992047148 939580871 949278412 230938644 938022718 846989149 932160459 958041440 998628042 15876115 812388673 196140291 957273014 147752031 368612118 172940737 339956957 540413135 540620648 505984391 849458823 810046859 887979269 180394109 707883676 769778523 930865039 529169116 976763298 246232473 838582501 466389654 912426663 186215419 552724650 909100906 997584122 403635630 813109953 184484909 514245672 644683963 913532826 78712167 316174231 911765095 961248342 540249564 962156038 736516147 869286511 457778280 851269148 42665226 372570417 158279010 882214017 575386616 637491135 9417687 45503482 436316875 552610232 92218213 439872112 169795171 225381527 871656367 872862481 502802711 602824685 617872992 672497335 707967715 871444255 861854181 877912655 539911316 667880012 833519841 872736505 396600792 997385211 953895543 960890918 962722682 979056182 753702491 813086488 660257936 902150139 788058168 796685919 574787625 745131908 317766600 739784729 890655012 924485447 285805442 342377031 426561555 622125131 501721385 693715618 963397138 983283627 110655343 729393567 648841336 773630864 153167265 432333397 573076988 770569310 569753237 925924332 467537950 920471811 394287778 878441066 670422588 697293819 378457550 901376221 293219841 535767503 566087785 677627704 732404959 876594130 929939576 973103592 281422729 310884527 219373199 491431067 644134495 830702661 728167316 788570561 7431006 369848639 594488825 604732981 753994557 818633198 829609836 947692466 979636192 988167700 887638654 936107600 304269575 861764924 160627278 257586396 396580419 969876041 303668249 888189836 277575478 643400517 117152933 140042244 324475781 804823689 353971189 441099404 367458722 559336530 802028386 996972536 258580248 284597200 249909590 765114759 308441269 313769558 18233920 100277097 363562317 395361209 64231908 844650646 928787750 997157909 474324059 617082225 889406318 944331693 521871310 626344295 53065762 686313963 823852915 962050760 924638841 928556182 539421307 664930495 946846365 952439086 631640104 910317247 148249518 673318116 98604554 607296356 661968864 841835512 15721841 599345443 479079193 544453423 354923941 835826051 885856971 991064723 14951706 585959654 568476825 773242655 5097973 144605405 278656752 596487860 235124172 896299695 312993969 373511089 124356354 459042651 864997200 947120003 491924900 512309677 91483079 129076952 303333420 887946469 474456538 858667609 719803788 785065037 731722851 785137397 326063319 357984289 63952513 978983195 32445477 869743391 985157602 988322557 770847152 947655817 390419901 755412564 352932325 607673771 696088095 947151035 120031833 866144183 141846289 937556051 774896541 798509987 828510531 999907902 61123982 413690681 198699496 639229297 643798497 797178216 232343726 408956714 778713478 867519475 783861494 812460353 817661679 817782038 16657269 556791327 48109443 70367893 856509785 986769755 315680132 695971088 989438828 991526585 831739067 943518540 432578367 944438770 425032491 839485161 13512199 885704005 211130717 751490717 496170564 580088222 160422181 952161864 993983842 994571224 178367105 181899603 946323806 949320234 490659973 577477516 570208462 708437588 771142496 825501978 624207431 683027370 622817566 768248020 716627039 825920680 769201911 813969207 914967865 946400083 19706375 808227758 264573410 998288790 883634274 891369095 995526272 998869471 468675245 554012037 785734204 839913037 914151005 937504572 313646061 928088076 635323570 749796411 80999671 741810721 976153512 983703841 570528039 798875193 516551672 672707961 397149384 445674513 26888408 650607341 676906660 741326471 788953404 790284932 578483720 708756131 192836335 199226945 132149202 550143933 243413168 856942895 455437291 888775342 529799107 790300195 273209938 706862947 498038800 841215858 746760206 901860577 431187644 727106992 644507843 712910447 652232115 945599546 234946204 719256211 174215110 306082294 292282498 864157400 815065691 971812974 701844037 957188955 835645884 874947447 489399252 779547187 197972381 577709062 370214056 676055686 545237492 577676910 348777489 940200929 780576277 922170427 112404322 585504583 779767025 802307446 140971940 877391725 824050777 927573358 77669742 105714269 551257803 628968005 337494229 889907199 319147185 755770407 647789650 814530228 823550960 990167387 313949427 620103666 792788901 836657028 713259766 906464499 196744903 572351909 619902276 633831934 800496329 886195452 938338952 946048084 902902545 922591479 657173621 688431109 702295777 849253912 574260059 864519051 704313504 834778651 304156498 508589294 93849738 860431298 215197671 897969789 477301195 987812216 397259601 701233961 739677625 959255349 657571949 910295843 692112833 989141006 989404180 997660985 173534718 531801277 613208530 725310527 951935380 958991008 302999439 767866500 33772486 944114715 782734051 877551372 135055287 615199545 595007636 976606422 332237596 499780460 603458809 606150026 314870560 582838896 20655719 91003432 519111791 597934748 990926942 998395810 862238452 944731794 984023857 986732585 116527283 292767387 131937270 770159814 968225925 987516876 415046192 551605485 640832977 941767053 861012644 951505374 124250254 645398349 119515416 937948757 623141995 888787529 745645189 781213255 250399733 256514442 139000903 985076772 403164153 757984305 282257366 890084184 706504273 891744443 753452672 988824048 782964414 891089848 217342823 677175305 200430686 322066957 283012674 737589384 482253149 844104548 883492885 932813354 658413222 695369022 110500922 870233546 322808534 485773478 207779661 817144058 641355917 824835722 434517076 914513245 446667480 473303385 569212353 798874680 975449150 987549143 922341762 983115346 867076443 986871973 63359230 883407450 197255523 716638640 70749793 829015323 394086167 401023529 91784483 563315289 545135350 819571729 343614420 949379434 919666712 966446793 594306834 863938708 493648625 982290186 584155323 818943749 956465588 989278435 261863450 486909375 483661978 753409957 195088368 918031108 946767029 986984180 137451658 981102930 212499971 221607491 401886169 575789655 278810218 868237976 877146087 906693420 836617993 902763159 870235738 953147218 40271147 426116614 694629043 959988644 648943891 995960626 214498074 646221936 333971977 679993692 528363896 544256352 90947594 788969450 705258359 790806013 783201576 832460960 877312052 919221225 101563204 716402666 858686879 983479711 340276686 414613487 334335506 878307672 980025078 996686390 988007176 996348804 320331816 815563011 462527484 510437918 668764834 826353290 58027907 748336640 77670908 724447472 503342375 631167238 274443191 699389479 118069421 856265626 454361792 910972724 876643835 916747600 479508187 882012572 695240066 858893615 213452163 871122433 266420397 469456731 940787238 979532217 704748546 801229474 683934650 965717300 94734282 127850996 987064190 993142534 657010785 971672680 498428254 584127371 591018334 817552256 430347398 836008287 154874248 739955417 233316266 258650264 844357709 958673902 530759219 822026804 339079083 696178421 464526855 925847598 244787221 836834218 697090837 992460858 821718342 851491763 289985486 375051804 640002092 761515252 553902073 676830906 434920186 916913116 998458331 998777505 783973246 830803824 492565113 627166037 204403375 921268635 639843974 894816045 154782181 757305774 416668225 895189374 58984271 233322882 370562697 398858533 771490254 883324796 705574332 948796353 879165951 995245118 323307280 813719825 543407679 926658797 11056102 105920020 793099583 934298346 463282655 574411789 988202220 998575764 29199689 157930601 907358058 979938745 763092133 990541083 164993636 504254808 894627767 939050858 831499052 940153401 476255919 918711187 979605608 980958307 393586315 724902841 606542330 797826959 320950925 965490222 546672783 912703075 721681104 931223045 673830991 773998526 762364946 998693366 749361773 833625847 238740512 522003887 3015564 202936606 663408495 821939722 37962908 927364242 411168882 819927794 79005728 321919945 253988536 310756375 349108494 442022684 357920266 430075371 972891045 975881719 852208284 990083266 445142399 678256649 142071120 990544146 288868623 879535296 768691987 909011399 184504570 256095085 688978791 918051689 459295461 857744306 395532321 421181626 408128587 521420627 817977837 988547776 270433606 908169464 226287891 574051094 203069701 882293452 315039713 330266346 661351917 662738710 104337037 365100856 190550452 242790421 260801194 485868954 265747708 745770398 983997280 986516861 458528977 653004282 736104853 950413485 635213272 823436657 719253949 991091314 337246090 897937728 855692401 987107374 793159096 862750660 685159262 975214014 325910851 614706119 748394310 854958539 386771987 908938558 448528604 971560373 286119057 334691637 996628000 997026394 459396363 897838615 294199237 448614390 278910533 808651184 123024911 282832395 875429501 945070297 131543011 898814889 764131024 977978625 549749846 656698513 461084284 766655718 350467129 354752292 90325377 721997427 918740190 964157681 214960093 707144502 264859689 739590745 659350457 770452869 319853304 758333205 151081476 167674536 701737817 739072168 564451665 829626521 86148681 797196964 7057541 228187069 599592119 877753856 512073966 833163125 817928634 989453711 631823281 805561849 747532227 875051733 163458636 230240489 77941234 337416545 565537238 767674556 416002712 783455138 7786229 727412914 324719298 921618025 962363366 978336085 168358266 877230169 682974889 855195606 224782081 855729193 521566099 905352409 566315603 568322750 792959865 939472493 686524048 847129493 660889068 758263709 287295792 289678936 3069175 672300528 730376979 764375022 686042072 706471867 104205498 532392709 112810951 948801034 44952844 149235867 622545602 625091246 931565051 967665411 876682537 877357878 291495375 855466738 237844670 599788870 515518297 831632000 365146690 989902236 593862531 632195440 516844692 633615001 202562465 821132274 247278477 931524590 803807272 807950482 231599351 700910537 624968479 988308397 963035218 965670399 895652776 949209616 690959324 915021790 580214372 765703382 366054386 985035603 892084637 930413938 265544572 377029187 563608786 865464299 14289419 458744692 950057660 961162270 288016463 325439942 286254386 358197928 396445867 669437858 458183024 652926871 831719139 966137519 114002888 579530505 854001764 886862554 381998253 601314801 571585974 937792917 550130067 908403417 684561094 756121223 157587237 983108587 68690961 567898572 352585728 506886973 623512299 809371031 242041849 524881267 176007911 176302781 973708120 991337042 477514181 560675032 855088681 962790643 612480351 813764576 771719371 977981139 568293310 791061862 431516842 927780293 154608823 998567491 451434425 858641748 167211243 221990645 999228280 999295559 958694637 980096126 918958362 968518186 726325919 975735058 998923092 999635204 163703165 407996918 905146126 961192743 978251598 993941884 555364466 817797896 160232404 541881761 461167843 554793344 148560904 165624293 484519180 804010517 886791675 902892144 659571022 982234066 912622346 944963249 719984954 735512786 794776703 899854357 843360184 947270392 763956122 989416215 984001845 987542703 612548158 863143908 345108995 557049061 687958688 711263338 993841239 998536332 963091671 978785551 69851416 885318735 691449961 855333989 874814217 886576528 625378591 667799334 637206122 966124797 886471484 973596998 818814348 981918642 857989529 870718529 585197430 853564597 712650712 900330500 787781781 815259208 746470300 940663652 817827705 924515293 969848686 970863632 354338135 596993508 925444453 942505135 339985088 724913066 859203258 916724267 283048576 599133485 196206423 701854110 689489256 738679318 7553889 205070036 969195135 975844845 459722247 471760047 785219579 852603822 116978626 457855335 865409745 888321860 748534108 765725802 676332476 965140999 131057416 838683412 996957503 998660331 632333559 936296631 62523746 509604313 541221319 662483551 525786059 566200915 963159679 988277494 150368352 803761354 95861431 840622496 120051939 604086231 854688635 857176563 102108941 586511105 435012765 565576169 376579070 410029355 398208558 726091570 871808468 939932689 939527502 985238809 340237856 756929763 629683256 823436316 626380432 943176896 853939793 880250986 564986408 866548291 678426383 889281460 687473013 961401413 644519018 829927897 870347447 938742894 602364979 767220641 772463448 943567472 497278979 739084388 131323123 322115787 725796752 729346645 804936230 835450309 309044025 497122879 336696068 606731209 83346758 715432264 728192308 850072712 430982370 712352855 552441229 897311512 245714680 959831505 416218838 769873147 794352210 827670876 86155082 887494095 682887633 945097326 889519548 991698077 254666933 637844443 71396555 309078962 21269176 73018299 69285946 524757565 152167316 252585259 166280814 983082953 94746486 214844444 635494158 805306373 141755662 185614777 71479256 639487912 34865421 928688320 482852664 821076247 289088501 293043535 343363843 667066433 532956776 971158313 857522144 976120568 946892976 975664666 928595463 983089546 957293936 987373312 52889573 233070181 853085641 902967845 818999280 987964849 843659775 956458274 261346381 625048282 518587798 755417171 904162395 974225185 490496247 762273722 724277255 988904638 251752147 403008305 262263545 686428070 619393440 659801910 794270746 980928061 398075398 683307058 534661716 557150281 829106753 924611523 242930111 693107334 89029883 408815274 254321686 976941013 103364912 432056364 485811088 793116160 870684853 924473103 391188317 826613333 908583882 917872102 248862492 277937424 419660583 475469606 181659169 181840134 147904469 557639287 333863895 904894938 118546297 782554634 912746970 935573612 482135302 916734085 873086465 959084758 169456653 773989847 750613845 921237409 623047953 872659917 860621060 862872431 543018271 679354631 639727614 657330285 941051323 957381195 199277394 753071567 927413518 931634468 757733802 794866432 862537274 882699042 516504321 718853246 351258683 451623012 1498094 755432337 618181758 635277364 758976467 848474112 781405379 856701470 215573506 331079236 235416808 836106563 405890295 667583590 157787944 818275683 60700972 653822938 79068915 325085355 580414686 871526027 638570250 909231767 448990460 936046021 36630624 262304832 661256404 769030175 63556210 160379946 442710950 975419988 254340212 936541678 683779967 752735719 596813755 824187297 68731458 906906272 369505741 553993853 757387946 905296043 325655485 402673556 117545229 245273261 632910197 963746469 798832727 944120717 581142958 880278621 31131238 419959512 925186136 941777193 563009757 709160147 834361645 984538964 509625825 989915425 430366460 474754825 253055208 723201685 896424633 940411485 857758473 959885691 581145036 596755843 93233795 361904935 106325667 562272841 662821334 941501289 872496640 910937794 362814634 844644586 485695348 787828782 785196970 824027824 438979053 656480228 16564590 217747216 387434695 714319762 648928888 759734216 795590906 918549611 781230701 982936814 568947105 587271266 772975197 825914528 214351442 320207059 302012444 702125248 756731843 982128221 219186511 660292973 133692727 342752442 206275742 656641740 843287909 982927630 923562587 925876484 666721777 833799056 957813595 968347406 142466174 941533255 178710876 493338742 210890611 343068678 653182047 666717268 845036717 914845790 347155623 669372461 140268780 745086748 970711307 989929962 546717436 664039338 155882050 467847741 852679150 872170329 863380476 895906392 950703150 975757441 412233360 837538081 523229311 931177227 482472884 599558894 671795380 849691457 844058315 908825358 487764603 903766194 23970371 451731514 131209851 825872240 740636933 996504884 407539361 410908546 729588400 779988057 817963260 966499167 685281458 946827424 325036663 537577046 335181643 702362010 151611605 499662407 830032938 958134553 412376028 662276725 568451497 922264918 49281554 711972984 216625977 572618407 132969478 567508541 698347429 937730479 856983735 959333997 893806509 928566010 378902325 850290362 786738045 822098977 454060389 881659366 567096626 696967076 554801619 725665436 908404292 966100173 306115809 563970242 226128769 736112634 649401731 826605774 889576774 966279408 835700526 840876808 39399610 50677301 669842804 753479712 264892725 773278106 245878239 827946514 14744037 366355801 554240423 668370285 700672172 874088923 395139328 624675249 580524886 722714604 877227393 900589849 703600003 713050946 371253698 611213937 995333482 995644209 508061763 976562877 9086973 969561865 780414151 923557750 750489201 938730751 52261479 282515782 380449063 861413222 252539129 948565212 788317287 890192878 855966529 884811992 211280298 812762726 303822515 946322475 598297857 628751259 221711979 981920345 647934708 780612799 490316407 765053806 401150614 750843730 594976790 934140292 510747170 870828913 900915973 924583344 719939346 902899561 503685304 873841944 90676349 614698906 967780242 978661387 505207821 648498776 374805420 423320334 432724871 670830610 35559301 89846120 114026467 375577898 979865013 983571049 920124225 949260257 437467512 684567768 817079547 871682755 53178876 570515143 723956471 873282246 391441901 606198405 353276707 806329677 570195605 828291528 436260863 966757595 441336412 803062613 191247945 494693221 831042426 960689934 449056908 893381117 734162649 764516682 536279498 635823457 158078982 627685111 429815149 694658216 452820239 808237446 683048926 763468503 19208532 979128607 776900855 873431522 837279778 919832001 155944178 298942509 789820622 818108728 364065331 834333847 904874383 968146580 906316155 957514508 975205786 978924795 81566893 266563995 70839982 390502864 597903462 644510883 549324374 994822395 595953022 727796891 975879150 996795033 351862558 352244360 973318 988551108 311377099 468204435 336321923 950968713 808539907 886649164 426880299 878470265 618188683 691835091 300851615 486692696 359166191 989566855 21237123 371573391 652203631 898987920 14790827 774977460 884671770 907142233 856647357 931007342 458815320 972043672 246154349 469467414 525246687 648261146 34493811 720570051 184294633 960150735 790879404 840344252 446612080 981924323 431116682 643822129 549629044 778530301 983531621 999637946 382749807 853648285 427981506 672245507 639972817 964947051 251280343 288448655 768810753 867852044 222880020 556687017 882088274 930352738 623095572 627638503 899209009 970753006 647937523 960175450 988760956 989214284 917405863 927912496 962109946 984876136 856557843 919862676 821877309 937213530 261764595 511036871 639515712 689257916 760395548 942843008 729814919 783339124 383785552 490181157 371071105 864526848 509850058 575276489 240355001 592612703 264123687 912731901 107374950 757191969 464176713 841714402 342361637 992139806 609419406 667736064 205864120 551799986 56166253 455738100 148959322 210136616 705605718 947039107 78184452 489487896 778123702 933522372 606888934 910708978 845955805 876174766 760313366 845933554 964574882 968746221 56708980 62918043 34070952 985174363 524048248 585138960 700767951 902597879 796530241 845061359 577268114 699933307 210420635 361033163 889138146 914552173 564345057 857821672 733269648 986436556 695036921 877643454 813809760 850872762 861562646 986846016 165724344 868301604 951442814 962673198 719510131 783502356 965572044 978197787 361607256 844590416 230666686 869305541 402042945 862094842 698316102 988058172 117297945 166507696 796347835 813638024 786112223 946923852 289248022 345170980 389613609 862171081 447246332 735101431 272332225 925573948 343154335 765817036 662030083 765592911 409997456 728113323 742758586 786681573 260659419 410088770 887638941 953687641 497403737 622744037 697631164 934052400 160292996 697875236 772692959 885729046 113419473 551774285 28739116 761735909 912163356 971433675 573989218 908713838 655369051 892877368 695567515 700112547 267597671 446917753 35893710 160827126 159992239 860237159 322823414 638714431 578075870 957554041 263273055 405645749 17126130 824746098 359435840 456902993 729209806 974504631 547817232 747117434 391917489 533233115 842513961 969713102 336283196 935672204 827071643 927671177 519089255 768943182 208692345 267859186 139641517 822103507 736433235 993482439 834791282 955662760 777229956 998411170 797364181 800456716 964870999 999441599 422518282 737447492 620640040 747779777 886192630 916999988 307069855 913225912 692492640 965688579 764764026 775770809 323382923 593329286 864930508 900193379 303373114 541595091 183968996 286954952 541930925 730856807 257980582 352854143 822727559 867688049 847830084 879346881 158461807 548765866 912756698 989155238 651561575 905143272 935993356 991144056 559161456 990928413 127363055 886413726 608531634 692323855 324804919 901983205 873431629 982739140 889872273 891067955 643440681 858881332 107042376 613829957 907798084 989090243 130095246 611222120 435783574 450833353 166437830 374683453 209413040 717085031 543454124 584067231 373868257 803837261 988196411 997434675 316864893 446878977 281465686 918188141 418199995 967379794 818372471 852398281 900436918 921778004 550508403 752124013 181003784 814170936 420054347 442896352 432589232 471240554 996092476 997761749 111603513 515632494 885511240 925363584 532372338 847816866 768352081 956003548 298657502 587835350 927607180 985425954 216234392 378770701 722876922 898268446 827046707 898026671 240175579 862632833 394682619 660221243 346603281 484629084 299297598 716547501 948621061 982418887 971369661 998780900 87377268 276531237 703971575 724781015 383800887 957070535 209190505 609178868 146125247 984455849 943416805 983143770 752718905 895373282 903988431 999052997 328821502 846458732 53904787 285652077 676906360 832402161 232826795 536269314 462119663 702569597 476675393 817229557 16129826 542316634 254877320 702887643 38163857 533165695 361282869 959013393 881006968 971708951 956414084 996290712 586590879 873395665 882831366 921712787 753869910 849350970 910154979 932444278 87345074 248867002 219265343 395820566 912456245 986045074 43504660 342779822 518415806 699397713 125936281 447484659 943101083 967654784 327341811 697147174 41120555 349637853 300391512 581998046 999152136 999644097 379823444 396798067 809969537 873804898 418257012 493322972 574324661 952949409 68375552 100384687 884345846 942527162 473787431 582121226 982974793 986741348 820986442 841130457 248501476 301483666 589926290 995154348 76576792 850598101 268708153 656256022 593594679 914998566 822670535 825710109 283425439 669807980 687661900 753629964 188111212 868553902 566886314 718832056 249028247 259236520 934624172 982251969 880006624 922403648 185852499 346627304 424843147 543915738 545586577 928143387 515240092 585092837 793402793 882532177 903373005 971164745 782318369 804423650 736284503 891195630 322772082 972664972 107615743 964641003 815105649 896522566 788829252 971915919 167686604 203843777 798462705 931287856 305251503 808558139 35083344 677878304 742573425 745118973 796051925 826477288 992822217 993919755 780919063 791882209 153623704 473348335 507077933 727297532 767247643 859630257 342904471 433550681 877698582 953803655 938734876 953230141 358158670 890013530 677851254 720703952 561052118 566934273 481252194 874849874 641618123 670271256 314715816 675419811 5566341 236512652 462263302 499413826 201797036 801343628 461209666 812885738 442463807 664159688 776295042 785303586 464309016 674856183 822750708 990093913 559983490 808087319 728262149 878830020 757159869 917259343 819679890 984323785 620906058 898262810 918148482 960541202 165415393 968207525 158352782 567082369 898664680 965343759 69790938 693944031 383254829 622636858 40865046 551379157 853303663 922995162 956882617 960628058 616885804 630025393 611257028 746634905 430946754 818407866 983161940 992959365 723001772 819490330 142483821 319439796 398672331 784728289 912564931 936523529 873190950 885454465 847359211 980061563 361014053 369681792 527542419 627572594 7506300 336069251 248003756 259556432 228079264 943770759 305839465 810731439 72621999 712543784 22442917 936451725 47827902 927741784 279806127 948230237 749841167 969287742 198976466 223259581 709548431 935338526 338784738 823076403 805756788 996655938 356806267 916804787 537944821 865232538 234221588 879209862 862343536 944683343 777990127 781067444 946348018 953035425 953490165 983937293 385704913 804489331 600539623 997418660 947312694 985377818 737811950 824848050 608233389 706120336 37020147 141719335 563133745 948192059 925786981 999614075 844454131 888632057 798389944 798456208 222586939 313864648 516592757 632707059 199479391 694504962 57264154 802547266 575480220 938041433 83014425 461003045 452128572 549809948 789338993 893354411 913707110 929967014 423646331 722992490 167328251 201200076 933637583 994955577 902186350 981510533 132789021 698528519 894302021 958804640 376016906 802625190 478772317 957703076 190893747 317382658 546206346 687717536 320506847 871395865 569828624 637142973 548010866 850624186 605403064 782139777 147788186 382541167 568334727 870520764 731040208 753128092 878461624 988315650 616735222 959137959 726554704 972242642 955347160 977316806 382807373 852743403 273121433 467105435 137422244 667522481 583484907 668810724 8911668 159296321 461075154 557166023 687728920 717373652 939888120 941149252 932196427 972917376 209849048 789412690 12181253 469824989 652922734 759667670 359214829 515198600 615964695 750549900 632037195 956329599 788765003 880444019 604124180 982455177 387013490 875490714 503236999 681763858 48890688 686357270 643355093 957996498 312856234 927077999 869878043 988904154 181638454 653265968 154156048 903407959 209930383 667355387 95961885 356662761 871693625 872718073 233664988 812743059 747013070 882387614 140493676 426867167 569645466 680577597 974936885 992562911 813546667 839112560 356240452 467515160 957709386 963505110 936245815 940795246 447725957 786113819 522168465 649539885 939903593 984615951 625569624 870095795 578560939 928378620 714441342 964577699 444374926 864763314 253004553 967986546 292736902 320881543 648779164 665895677 901503607 916944253 630071013 861197583 152802312 514429220 602446701 778137830 915430898 935137219 676481920 756465141 745347108 796528030 829451906 840156191 182524639 661998988 682030996 777239277 330614447 419457023 94740707 407691848 989726780 989933842 342304090 679711643 440150577 531732499 735250891 980800383 773241841 929989902 97502494 600106712 911502264 931222940 344368611 715183396 320457982 642034836 94253324 978791606 612693786 805690876 741927422 809709190 995113130 996871145 649086322 700476497 841663111 926157323 499759589 604814729 511730296 808863460 219515362 638296318 765781575 862132852 396387350 811279034 239049113 521414975 80646719 304301479 766856163 908751556 851546611 922639211 789672559 813892956 689547853 823938907 906060769 931669179 366718248 484327923 624484772 999704042 442925769 536100418 814555214 874220490 45326650 366143503 54668940 356454908 391521735 416204255 86897273 231496540 452813975 708838000 989578365 993864359 755120851 787007476 695118022 907740161 269755429 770497975 181380443 671416765 463196432 932481008 562292460 655442146 168635362 267872091 316824770 462667268 395251635 435198503 935577711 945977587 196787485 614449746 253676169 530216944 80931382 886602328 189526768 971313198 880106122 939211433 584062867 648094574 761181714 899732339 412593832 794763167 414556126 958489204 973226384 986356307 873335871 947104202 980384506 981931928 604284554 877698571 782340226 824960583 823277759 971567061 770998967 875300250 782320666 823687262 291662832 370189138 105230672 757410881 998926513 999716449 351837207 529705009 268414064 945391334 39931023 48802324 44362545 317865532 218717845 229441805 460225435 552224948 242247445 677895499 281635875 335256012 642798518 952757998 973834761 994575134 857473027 892637753 261709837 363087713 410327422 424180734 522880411 843673455 340506167 652631285 988862613 995034711 123287476 200477662 618528241 675725135 334714212 747903231 912486740 946219663 480890357 671058354 362241359 552059076 181605523 453043629 95716269 354997124 476820076 902057406 909127630 912939103 796380624 823416468 965620565 975952934 9197323 209310192 746699659 931765091 116282358 566800674 185845960 930537388 609616315 731650918 167862264 607060926 19839215 997959181 564798877 832084113 657947728 920546554 842798004 890013127 13511201 990807956 755381437 843082869 218094682 328371746 153062 378713276 874596375 898175126 322154759 657312361 472730814 802934020 807458922 970614498 693208362 905177486 933321500 978587354 179392180 724630931 51855847 201705685 812812126 945161663 507025798 574714490 328215084 894689052 293996988 761135721 299481969 344922771 876957866 968245482 311512167 352931204 599900279 905952206 542178833 669519376 91355253 291093401 649525950 931334681 369400585 640507212 755933762 840905994 266470656 588959432 318789444 824966954 286926056 676942685 753659537 888907008 142650084 237562613 406464877 542880728 43381835 983046283 502422675 768445163 70956824 990719373 28208283 236439513 269669446 723372797 147916699 908653932 490761134 593129851 170951566 615803995 108816618 464358940 168183011 987057784 708054030 901508451 517326128 963946584 866201728 992316879 704600329 837622205 359778081 470205294 858526147 942626511 250784324 794742221 772332795 965246248 260266580 887574859 200960775 803197480 64305039 944668556 445884014 987130224 501552307 800990461 427495529 745505729 28184542 30625070 859197713 951388618 41993177 340094724 218751112 936893432 587837758 866693452 421680658 852333973 507916063 680943490 252327112 529379658 490090245 797099221 403629603 714769338 589188665 853554775 602634606 968469459 503729635 652106701 667712877 958782298 770114644 863440838 99370038 534768410 637277830 868851046 65963551 319709995 460012150 513562908 969666738 979570708 378466215 879266352 975600694 998161594 370750299 883253413 257167813 735459633 372143737 638086253 671176924 931736423 83657197 813620650 376626784 514956064 627362226 928409641 555729236 871958596 351057234 909709394 642731810 845574892 352055492 635973575 894079886 941536783 428598142 900179942 817718052 889698918 113555487 573668314 987773807 995455230 667149633 929975960 251181981 777983745 418249746 722157687 373020259 537268817 478760560 975799535 731700943 928262787 573377803 648230534 318221885 731214278 513972077 787020591 537685534 585735856 581046055 974822944 579183867 826305716 516208625 921790999 24999627 389568001 479985934 728400604 361165402 578348298 90462191 723696738 581944553 670503463 582741590 656637464 366552825 932891173 692357534 895437042 166527265 966662541 358296027 381405711 283399010 455690283 313951959 444605678 645961174 799023852 707277670 863760571 442560493 710666176 227391504 845559102 893343300 955783566 105482322 820661327 500791171 759765668 748635915 845918232 778758605 790286132 366513075 759163163 956159475 969312902 462409950 873398214 541488227 699568107 58962789 137261186 200181690 614524477 643437099 816856166 495856433 903020860 334874674 715981015 363832761 463687761 382498733 410049054 165633199 787258205 129470035 641152546 714861352 896023836 611178041 934605594 613175559 817111109 181310012 451465382 845982872 972302940 124977015 599433521 498254333 692907701 983373847 996768534 856141976 927318103 549069755 678856391 668951306 745745876 331257982 960978893 824284550 829202287 17761350 845068774 190859580 828801338 321167236 894203833 909857705 947509437 269336677 672942072 189362208 262242594 416950554 870005910 685539038 953353447 834369049 932595201 41711126 76380405 385216307 687709951 661762133 957807782 92415568 653385036 192971207 920688164 765089899 890111207 874264626 934239268 884714857 884867147 439204482 502085988 460526638 956316601 352876315 922248304 425126316 837024883 160994491 166777346 630623015 878774504 418093598 465640076 606719903 917531932 99688962 727010333 503109115 716531580 192240032 921850596 494193865 966785932 730241994 973987748 339970981 860878388 167157174 267685744 285091266 803843744 345527626 781794863 299832590 766530735 746541955 747041566 11268697 968441134 842673157 884216607 751753457 922719105 362146466 503896221 910016577 972793060 52546994 184254404 526238672 852297587 631389363 926186613 724273227 895936450 64334469 391871467 645835337 978220808 497246424 672794142 135507953 383581740 216723610 738120513 749167226 929516047 968982307 970106620 208101682 445925338 116002606 475827045 4137067 727448814 519712070 638367844 881858722 905317284 965603691 979944975 217685823 688234945 601390893 994661886 440007070 844125552 216325413 799648459 713131159 937245515 46824320 683266265 697294993 751589353 115441502 950188041 540342529 811055952 426060589 505011951 906692873 948286107 372935263 458261632 978634418 985294386 793109149 957461509 500925558 565607203 698194573 891562733 82967709 631177138 957750139 958189419 323495737 528000385 811488595 912371948 631570790 997341424 742498158 811476071 238720520 316369845 642355394 673369336 223185316 700851356 239222393 458483391 480103741 487688459 657830638 986990604 640910205 898201990 692311766 898090306 825162780 919586241 720451888 922946030 648128337 797572875 113843393 842825465 132175135 962924160 860376638 929225276 912370469 934228638 227317502 730476575 335957933 362706162 383286637 682751445 302129054 625270034 458316372 993207131 160109276 350555917 434823586 806490501 937851966 977887499 528026880 959981106 443578308 756491469 656105326 947892288 989609788 991148018 466622228 748611893 704586528 859276707 108095981 748675111 655121469 859198640 859954703 922490118 728262317 995818403 463291983 813693951 211552739 421008560 439425901 672771917 65525856 443046424 3800160 759844733 656059578 861159706 13745372 86968092 111002946 405557483 103344934 772462961 3002212 801641678 548647965 654035313 666382398 806523997 501499107 715898270 632185662 749457773 641554311 793287002 747701320 933008192 163582389 377250733 166616688 446206488 702622385 882272237 399230039 866417033 726335645 805743701 185114626 209520289 146254401 312341434 918867620 944406140 46865092 849072085 428786295 981721451 148879324 494798402 407362416 519423314 125021074 352605346 261724420 464082445 658452470 978391538 818648794 874806827 552601707 650128310 130258442 892787626 231826855 773110442 820162514 841646911 447734885 774494639 24255284 988944830 693255142 847627209 264874201 301855873 811033485 955280091 27036485 230530673 49280605 924506787 752054136 864285335 332548553 760183992 121852176 287301492 447759861 628594312 762015965 995670194 787613616 872751857 573385458 804423615 36227435 262101625 141149473 752754150 772270300 978407745 142256415 543854425 529482675 724361263 413359978 917720296 348520004 926418414 103348586 599030905 342474697 887200625 375523974 622381514 158121712 570611200 500098919 633357360 877127983 969600272 583959021 678755864 969057544 995576093 519399126 681578457 223383538 259850950 383276094 865441796 688061282 950673925 931404843 967076714 163454608 771947143 109544749 504813079 378293977 735469828 821324934 981350025 667836206 778652912 8206543 821091212 749905158 845766550 918656411 929826870 914225430 973546807 730838945 835128657 624567379 999087252 946031805 985677758 207086013 990066572 450195221 735827071 484453992 828315955 253044838 280193477 780605212 845036291 118049380 395697909 941905879 993368148 864046874 895843126 703725635 761372097 682317564 899828625 471810937 938544953 800981443 899037220 275601258 809627305 637742378 731474288 740176145 773178262 36451604 216770430 386355826 879006245 206505765 790794247 204858575 720686546 653779012 921066352 337374570 888425103 981934396 998332519 780603567 841012821 702483591 756748740 866117805 912979768 565198809 897849752 290620183 846097432 913775533 999267745 556380035 894796179 434290322 789907738 721714215 901257836 564708443 627132455 733896000 772393644 53093734 913627443 272864681 396518643 402071489 618647776 510546880 544649454 437813670 698248963 860579205 977351282 321522353 323446094 334260699 492318874 801198169 947068610 827755457 899741736 326790768 425637807 935280817 938582568 226617330 274820870 825199724 993019889 422965196 933537763 127738047 825856210 244063884 306550960 399506328 698848059 518619589 898272239 922002991 950603134 367289616 867296173 996674501 997588568 979675796 998246273 545181119 840296582 600655041 658684911 833515773 983306518 912585765 970711521 775075278 817838155 113341672 260671350 9493695 123394879 146478272 606029726 474983557 698833790 433885679 919156654 183451122 404193192 273161893 797677621 120065591 963323205 538835216 759352618 379012686 930111705 328873953 882433274 115163161 742184684 859926007 985105500 939556387 994628503 160934416 744678694 393894470 404128934 663610691 966967327 547251649 675779424 732645775 785360774 814811887 911296108 988682677 993797712 33383447 305917453 226022492 616266513 765718330 782948153 555172107 580503003 696790274 814068203 173527469 206226363 359351947 924079454 207200525 332751431 179948722 939860354 590096793 979235082 195582476 561471990 819595293 906663976 426921142 609691900 313309773 989770509 841632846 939893043 963577778 998493653 724165869 943730637 130115560 576797531 722101891 990596526 469996668 488303340 304373995 851111391 566658955 891995981 62660605 174246594 417531005 434277408 927501178 936901008 596719182 960372155 222370101 564952683 416675129 859035870 854032017 911149150 469448191 910101199 647474173 719449233 694406944 735381036 194770373 813400712 717346254 731948503 813193460 931078938 437258860 524968569 235293726 771565757 28944404 885938091 942960262 953969542 332465341 547742503 480490628 997150155 34392119 333565209 610492522 927516505 632831236 823531797 688687006 902325659 694868629 858741091 898256357 968550976 756335955 896470533 157631354 708632318 700227678 972721933 775518096 915458774 987642744 991168689 473619099 820990650 194219290 274394234 121212038 544671962 127267199 872053368 583089251 775557032 741591117 972335792 715545831 992446064 328138553 693049194 924354814 974483142 261453734 417665056 975194502 984799347 770325276 819522943 702960388 714039145 429982979 755141729 271328061 981834205 641403184 771847084 788527364 863754907 493885607 611571790 16957091 975689631 753876739 947451702 781399965 846167884 250070932 843966095 955636777 991852349 606949499 967727047 925759410 943736479 778962986 846513182 945519867 952292430 779656466 994135846 982279571 987963842 255460464 344408125 948758279 955243159 325842690 416653088 505389523 786581646 314546509 374530443 686003247 733556992 47239396 614916249 507342284 922646377 85405756 703211725 642226141 650537732 501277822 770511245 30908949 702195470 32151428 904302462 344997474 738324924 298717956 424945429 218557830 948410965 397696057 505042540 662210054 898324092 27525259 597667628 19236492 312769004 965469170 976874527 585039087 648035205 17334907 716738521 241649352 458964227 240356020 323527729 470631028 938208924 107655952 750520061 643460622 666533854 193541088 228887502 346255846 644125188 528173472 582479670 527452120 596608800 177496248 712665745 475130701 584862717 702073357 771397001 624917349 697345092 804318392 876920871 375169183 786973962 4142007 23564902 164480700 236940713 216675475 222632119 972908956 976170912 925298644 965844465 234539441 260536665 628437020 976470326 483373550 599030079 413038527 583781055 661895147 677075848 431541000 774389641 759129976 958285201 433751068 791855376 190074769 597676971 219970591 746240964 493414678 933552687 45173938 831556144 121845636 171048117 754038363 892857845 540848061 708086809 13034973 873057324 875946004 996744753 825661491 946324224 577535592 609154302 404366594 420381370 968958336 998345812 5445988 162933135 246818608 546742018 422956599 794001379 749887295 797167112 9714673 264947178 851407354 923201799 216979299 710552427 650961902 872526512 877548669 916685832 700782443 815805355 19928190 100599468 836689822 839821494 882850704 906658712 113105216 326381909 178386262 333705868 939759818 961518773 200012211 362862934 436044565 829543867 362061595 985441257 446825454 876328634 122072753 420236003 532761068 615204821 842895144 924430615 253662715 403426948 399567776 601564391 109749145 804666637 382323477 746767927 38195014 764116557 48430012 230216529 393590650 451071040 695461081 830991929 600632846 842460224 444966005 864606097 470117939 483216665 307873056 430244052 354569279 528589033 266502030 355675137 567524820 923070738 536824872 926644648 441295377 745109046 719815633 941188273 209439489 279962457 508051693 690035843 443730702 881676974 542050488 907368007 42007183 104236793 925525667 975192560 972303190 983030516 508661045 769527476 300717326 667581732 547003454 570058040 634796421 713278333 202609914 721119622 33745596 954367119 778486934 893794957 204953412 546687918 595378023 661481945 403898636 969267998 491333046 937227077 621499913 829490705 52496045 886442159 810783386 924946530 1081331 39030042 965677742 968505472 211559175 247524719 682270527 738475257 549656985 937352160 24454248 777585072 414433009 420611512 551213928 615265935 483504039 599853857 522342350 941205982 874806980 968850509 466658131 817720971 257495532 732921667 900930158 970153069 371736822 971358965 465013980 647845462 102540468 818548987 256192702 283035713 568671687 670316403 455192310 721725363 419078383 954787796 101900004 171093626 851768859 908756983 793197351 890454409 297929775 359052426 487941818 662807581 86394994 389637846 757117038 914139154 910608857 970451808 918186245 969540945 357751245 760815584 87675082 899037332 464606962 631963351 766383850 792044179 354043778 539766637 159040399 591570191 773496875 798085454 33970795 276066542 715117819 754133817 710521264 715249664 20518547 503930993 46579972 949967484 238065269 577321404 188348387 250567258 771799096 991893124 933161766 937104760 747346727 852857925 97866637 862840191 636168197 948423319 544743364 802093011 278626624 606008713 437481478 882873663 887597185 924183101 370368654 948034458 446155458 693270531 472139632 589250024 901908709 953236129 211301015 345873401 93003301 656633265 670277257 950827320 274428550 755127654 266207357 555801371 747432827 749054282 743552426 990928505 361714697 543383119 342776762 644712852 916975949 926949145 528247894 944471143 928856885 980884048 851196373 967014815 966054497 968274460 880566588 921017572 899179677 941645650 56661543 148993042 15141067 143503696 387267134 932170444 274093822 834733039 785500647 864094697 781385766 793914206 956875061 972205902 368692786 854867069 66806551 254737537 795044836 992413010 436835180 751078785 177496419 550633701 145095027 475265618 988332252 995537222 31040842 586622693 957737414 976123262 784750801 982104508 912714150 964146689 410384643 445774569 599742914 787265140 967719911 996209850 413079099 775919566 803805025 899527846 128512597 863780187 101934732 148063655 124828266 401234952 377020133 869661424 579948777 672407795 530283740 598274921 848933449 882373449 362146399 628100843 936237825 981586214 877784369 922240801 969957048 979473474 970337354 996503832 707949869 756965445 188861837 902822973 454119953 836838418 859763263 949252424 55466313 502493354 269728991 665337771 270842197 590933112 227186453 986023199 796088595 815016228 630074483 996397587 664907138 903878868 208911060 524587815 610958920 939753512 881886045 945439977 674174086 817891587 453201775 491589132 791521233 812731044 680128730 858679455 407723246 677021860 987474276 991329968 221914724 512216784 537801525 692473847 433156971 630088844 85214059 261773278 968062106 969431321 778226441 992514639 12961274 48186286 374589679 755268602 254728907 979412899 188341415 694044935 591033642 678592879 858689252 890310963 325506648 928718961 15541602 544509556 50997786 190779041 356075413 366803966 43713199 568326324 565797224 999792228 413711420 597087636 709073708 790532774 57467804 691645337 556673602 630217364 576306862 597841960 450446468 833989390 878367509 901545601 268036177 513663168 146035710 746108821 8169954 984157846 143320880 375983314 775363545 896440154 99936888 178035272 193096243 724275308 377575015 768006007 805654945 954892951 857817233 910823943 696486551 772421115 218102313 842614974 714495200 974575609 805596863 872579079 671368086 958068122 329880557 624593032 839329959 932891999 479610636 909402623 487094955 809701907 99864401 451759811 769121342 795587394 437055217 999990730 205328757 588896843 394819983 485038279 149155964 440624881 43396640 297101110 219495695 788627619 720248714 976974859 317141833 970682259 133875487 291250442 627690001 852206220 478281394 928866831 238634893 599923286 370388123 755070317 902722576 955601419 721960731 899000857 387047693 947554887 411736842 618084532 71334239 809806294 779069091 845615614 965088165 991353446 388911038 540663630 496283972 521908678 765853020 950787693 118690732 450126462 480930691 942268001 342545233 936170192 659162405 848560044 930490626 974553865 592494306 731608545 383979805 605893407 299331699 786388879 973207383 979466389 260869381 323722062 236862192 943100660 158228896 934442933 329754204 529992916 116843918 182916846 352185026 470875390 527406077 875238755 463668425 973305466 823137456 924877233 539215883 542331305 488212799 524257535 749984485 834865586 935874577 940304431 638082230 938396892 227342316 744696215 282634465 378036752 656241459 918641798 52056372 342210236 512684153 830597906 673093805 831071742 320353866 793750821 731723925 877514900 96538181 153560212 120663751 851101465 82970678 599646767 167593998 750451952 223900402 898205833 720740085 749610361 414152916 683491552 952057029 955369906 951682469 969414883 807388652 854624965 278062782 986578366 908335167 947871108 923059963 942874041 697414258 845739821 314145316 590766397 515864039 944782245 707084517 923595576 877024856 899195696 922060375 950106532 721136859 759024536 5024487 508458119 569954444 968701328 491825261 962224201 158937657 552167149 500091364 967054594 457080282 998677355 232907756 524961112 426175870 795587226 956462844 964659236 348211665 897314365 564298541 984358588 709359959 845051338 136579850 498024235 501935145 536732131 286987391 976312664 72057392 221059108 923765891 933911875 216463283 789774656 347311212 506442599 954917775 986437375 543872705 578152022 134275199 916295546 665354312 811668575 696456997 872402745 464360167 520579277 10512078 745617122 378023119 901555369 775523970 879238515 887905091 986198785 639787110 645004196 774395517 882258796 158546512 835048730 424369603 784496796 816745233 870739028 274774504 415873064 723989765 840437538 188817497 428447394 287707928 532567002 899182975 959991628 892091194 968040730 372764550 593839004 541898747 583709159 397374702 429885803 233836553 250822586 706270156 804175891 80569063 894989247 85437764 955095628 246121440 480385900 468525207 512042615 336003772 738555319 10249753 418795475 547400338 972299969 606473913 883821820 306972978 458602710 167289257 759928871 720712546 852010730 29465738 899704635 725487827 753034141 673386006 982036079 516165115 853126241 386547766 461773682 822151792 852093080 14242754 598251571 689811893 858112866 508642348 798470421 751458498 894675783 747851056 808912876 760398769 919870062 51603198 511783650 824088309 861512870 4636653 389199350 477339087 945422052 627002308 663976440 413762996 657190215 370366473 597494128 467959400 618859476 722224221 905062560 523106394 964544659 585350253 990646559 401139748 940350939 98829613 418943270 261001627 580256643 455948105 681017000 92494457 676176817 412817881 628564121 960494827 995550237 413861251 655119127 51526935 376824967 458660591 887130558 243122897 718589821 457202237 801623670 49634645 802839034 326915668 735333015 995800826 996919317 645592186 759252175 310479275 350612200 190335803 299509987 42414100 808760370 69177122 747404724 328776685 351361218 921997445 993772207 29902576 164873323 932760662 992859408 290351203 846126565 14609770 848724430 337929523 654390587 185773469 699263341 679490044 927415397 800445332 833546896 741202815 817294540 776355589 875442940 399351797 935022087 900849781 946109624 432021517 458361281 655092011 736226413 425569025 434264087 100494105 949524700 592492425 798233007 30164474 890740808 202904287 803153297 570136387 834149633 713975640 729500281 793032915 981976798 894364276 995807413 349297028 568783485 298049506 951721402 324237554 826452246 549652002 798818176 79904913 555164614 653391633 740261610 687578795 752619652 745041191 907258121 896471879 957129074 636533714 665050510 787921872 844517190 654806333 761478024 284077364 669124233 509388190 776539231 948188407 950929702 802148002 906245992 525870955 640988771 564398639 585340076 98394796 860910889 228037320 826531682 954245520 970511318 776847709 853796205 39968594 584538316 786636287 840293110 319789055 981101471 763707684 927687905 488992944 571199826 284377372 783936051 391387672 601783650 176397562 474019734 726604181 927383810 85764318 428293708 126327210 179129363 254581598 761495727 485229495 616277209 846210178 867631944 783999733 854230836 917133247 933333317 303053558 338924603 7265495 792744453 413025128 723517333 174037825 220272365 583972732 920838516 650179140 832423223 64319254 956193388 764763971 873500602 108656428 992505001 347299440 487614537 465042799 622731266 845711087 950483197 283725248 555575148 442792587 511631451 229405552 640316420 948255160 980065334 477786796 640558964 864646647 873861247 142574202 595174644 321526507 492074753 960685143 996302398 264852166 891589052 55628441 238656741 301960881 784065801 616631523 785882215 345020635 732652382 396034589 650410988 213790860 953983783 347381081 952338199 42716031 59473404 537096950 640903867 65902282 215094720 597165522 833669913 855020629 990357070 448827735 770586638 474810456 731706284 504438800 703713646 371134133 372152405 69681201 100383177 372371869 643465285 106781979 861862251 749303280 911331992 472608128 789663934 369107080 784334015 139043536 938707477 770572490 809547853 269123469 698415955 729194602 909215933 728546279 953345513 40681164 199120259 617179965 979545360 163545145 356058856 766262684 883081796 132969065 860718888 862043339 870256270 591599320 877527438 552481076 986775878 856726363 987456921 75095369 288461252 948702632 988920886 117513732 393961374 722212324 863875243 942442480 950436549 325240730 961978385 694689044 730651537 363042912 618079163 114472383 736994186 231158445 379375749 671558672 858265599 294305415 958411772 757154148 810248678 65186851 634865075 119986421 678896069 543309531 709466722 954040188 978946213 704642252 709924961 23889458 645382310 807216550 831574082 326028499 914643600 113765349 710533782 768117679 800284966 147592076 684128084 609469333 753499985 464117282 615971057 613638814 690946785 98475491 759007669 918377561 948645409 361715809 804477687 456886336 481075713 404419846 595746045 602745895 672195530 344722015 572331888 774836480 891668596 728281575 916124200 294687580 993819996 383758223 745586296 508545971 601447542 343224133 795114123 518505390 732311382 628785056 679684950 616519978 895910216 7784072 70706759 188101825 351935393 179052655 613200850 797930647 880346385 222258381 416574840 351972930 568912273 283607789 789301858 260279711 906482843 907510683 931683045 882804507 945095270 662038411 867427678 59891798 336025643 40197067 791387330 200446181 442824310 752497012 793357462 64392935 409646154 625421670 749851799 325707891 723776476 24314086 529044672 211445685 784949424 369771801 475472691 582232448 807078397 180768204 543240653 621256510 625101438 465615541 817179945 356253384 437787971 900638706 912266942 999361935 999607004 851541626 930696726 35054611 601910708 310059187 591825468 241248454 592495564 61198051 978721682 365206576 728364286 217672160 906105377 627114340 955410915 202408563 330902415 982355151 997833890 146757980 589609157 446150488 506621030 728734762 966994623 199931882 265290112 742725122 941364167 437130373 590813668 656281172 887093511 558931885 653658332 408373204 597340756 241065263 980597981 275559139 343313976 441384374 652174718 114737409 173751749 78517361 78867848 631707400 936873650 220428136 545821207 449800192 984510330 959626726 964840011 54022253 383116188 86002313 276649889 28243656 654945298 297909722 499084627 734038892 985854278 78298776 809128733 437663653 742971451 659069804 793848765 953161788 981542786 740822908 972232704 254016822 763083221 938376772 945727048 30108242 443612980 359436904 551651900 465111727 625838434 379478208 773001519 236368813 612194379 240639742 335522193 184981858 799942203 379750753 753730142 18650104 61835568 66561553 602192584 727141585 952255310 306329150 734287129 565771443 612665015 384466595 460209119 458085432 598081457 300131607 614237153 343562832 395972993 347986244 813639310 865393575 999136729 143916995 556260030 395008817 629762645 99369544 748056148 456478718 864284032 571585660 824606548 749209785 966103827 459847438 529773467 408473122 862832130 895022023 898604233 421631683 670884607 313532288 527669724 593393334 891617901 234632832 668693700 685859508 811438728 348693172 368507548 762816394 828283690 1011512 406396558 911781386 989910490 467372708 731048352 275063826 997431328 280899657 352119927 558691578 789101112 110035034 651267192 430049532 864051985 35180290 723495812 83813896 268484617 549452968 913687769 706088408 789630659 360811585 855263530 1865137 560243526 447068534 530397276 907649003 976507627 688259978 966116770 904993659 988046667 365971745 843607619 259874002 803635522 28353939 720522729 194416084 873830783 920361955 963418479 113631927 281996912 614541340 810639870 411530719 620051420 567366741 876910884 249093711 260114259 193364518 812662786 606821544 668229650 986226032 999163576 619505807 821683925 49486887 538912197 962527403 999007113 69019310 747574833 254768832 772736553 454587609 600293139 722251867 889734445 70650952 591085966 452844397 635895330 995900321 998427084 43856964 300863560 230937728 279735754 79116203 902615455 838784069 851801253 152539477 980660355 244862559 455938012 91573606 206392106 83475580 628396003 88397625 905131095 920536992 991846577 726470133 926217835 189588222 506904225 882400403 882702178 519621856 576244936 230192444 760788575 967163530 977894577 249539150 682562335 171901338 474732921 280515272 286583687 234154669 982032662 344655334 847183318 805995476 985045343 593027527 973347964 726769057 763225688 15417486 517148368 506821943 656676058 688437194 953159646 15554753 709694670 60392463 148772481 835914600 966978304 898008419 902026918 733271364 875987758 154475480 848056125 284585129 597417714 371308696 822068742 797666563 922352119 855401028 960838575 580478573 792082009 407093470 846920262 45005351 468514606 796816900 870216845 323986042 786059886 247458918 952837761 628419227 785576032 362111673 953865893 636897371 981907338 375418773 792118199 460792574 799916457 577037921 768192805 513013346 766506673 7181411 908473391 164272693 396911632 545380964 716807636 783071196 794884708 675308119 920692880 344191107 818551148 591975548 770789212 536079023 800072910 598617742 926211972 685324488 710455471 275251805 381641157 259651345 504132348 918140159 993959773 635835926 983401150 553983600 900021190 557155628 997218481 137365763 771407879 538731131 932427922 352451531 465226565 109307694 825599912 427420014 451130349 606358908 996309719 920257610 987840550 595348219 853146734 95497923 514014593 472844227 798694167 156123426 864040654 197409494 950978087 617035480 970877421 225152410 587476501 565892759 570087225 226132786 920200422 535582800 870670595 638262157 699497182 276510593 934166852 984607239 989261012 741945782 782166073 526890630 778321177 943952848 966256355 825194367 900995224 922877428 937566025 888956412 966559521 840266343 898654212 362854929 895881622 229163544 860610868 537429532 975230134 125994581 822020823 590517748 615405749 461525480 878870287 305316486 503105818 63426826 196620772 28184687 477520443 169365204 408315077 28683157 166063668 609192573 827217544 183369906 808343645 582974227 782321356 408791379 505447957 726928822 823382808 201168285 572171829 776939072 930778041 436290453 546491333 570992290 977181151 811751257 870172001 4021969 381938630 455655690 564449736 704747572 906544686 283772910 969440281 520037051 961032862 112759039 636442684 500478369 809879117 194593467 413626197 594100688 971697429 632102934 954395344 812906847 853681468 546102682 753207337 166669725 298766772 345494892 821888354 234461209 329382455 499055864 831399430 123321878 969179156 868766921 984166870 430632382 997856006 117255837 490040961 816260034 913113975 572325945 708236566 770001190 844989997 567941909 589687368 394002423 827517263 976566170 997210010 904841528 970948322 15601932 203451381 212099296 236840011 88615706 646828100 550982159 931822679 250849331 432935496 423166525 891305122 569760845 631905698 579735934 787348886 537356250 970185453 199889108 565590761 965065104 973202029 832202900 964817010 293431507 584814514 945067082 947217777 977378275 997661970 684779062 788332236 553446867 830886509 743977336 899478876 689690447 697801160 400889843 911872247 527448590 913623321 479445772 955277561 383846241 625892515 853415060 860874270 247835660 701442056 870183002 895219984 995843509 998538685 760043649 860957389 332064895 423642267 656904270 869539086 440973953 703125446 824445857 848376103 70031759 880468145 123223951 762113338 874323922 968844308 176210692 355519411 596492246 647618391 437443391 925546590 136457730 193604843 183088994 547132479 380782847 392118842 321950914 619273869 307386071 407453879 16298176 400161506 678749640 710841408 286633502 823484947 370040228 707478853 339605767 417410781 614700446 703751292 529288865 822260415 71272389 225440744 856074338 959980584 895354228 897850904 57647085 797718776 947806647 954705164 217715881 588869858 639820961 938894528 808542420 864961840 334112458 883443417 473928503 737194537 354096292 394234850 493520539 953551168 374257493 767638229 361900642 757299583 967000749 989241501 541889227 856912047 862846678 935358174 501867484 558814742 849818136 907515917 266701819 950199665 967519484 995407917 614061151 649206887 921764949 984999457 779741822 937240333 2850668 698681305 350950838 822244995 779484489 795969202 700764749 749408485 39115978 774771875 801090156 966371152 550593457 568190969 133814368 550195651 118447516 333693240 747820564 984133427 726320639 874608494 718455762 947633059 58117061 308678241 920416075 938155823 954336214 969188972 780529519 967689048 699374251 900309668 577878263 686855119 793784496 848378367 591134172 679931700 153088864 562008473 367824200 797846320 312819178 907167372 295969623 307095699 201647368 672165032 539664033 737266478 481999858 982119252 241195292 309903497 841793419 857751772 798808692 966853740 683623504 772193029 614652294 778423241 927331463 989992356 55864175 453967705 980147987 980606003 447666322 517214901 619877764 699134561 456640674 919952063 737959449 743577576 472076518 973016196 920109740 940232886 792998757 948393422 176166452 852546891 213829538 746560099 481961475 639899892 920637682 943839112 428445715 868999555 137211778 799518731 727175730 823246208 806077472 995500949 430066277 558968813 227585511 619444219 23183276 475296604 726567954 744927969 273598683 362662125 820210531 862072575 872764543 996281798 754499577 978362701 996405157 999750841 74909760 200713619 146300680 335886270 569514255 845105561 962702863 994764167 166183704 467753826 488362630 862303435 808862003 885612792 30206426 992531584 652799101 716521840 4142016 552469326 447501955 772846803 804169320 868736718 120001685 372025015 333500167 580708353 596553501 995032886 501639788 901523814 566443693 912205946 48897921 939721308 266202318 292197169 520683394 724442958 694167620 999270503 331460681 612998869 125635294 811127699 826443258 950661784 472800958 499652941 184861851 790759254 824898748 837273685 391475958 927846699 530373195 888297232 316883520 933335860 394929548 852226170 422931456 934398087 939490509 957794634 441708330 862309739 27769907 473999511 925843646 943171018 613471868 789239926 986738400 995163728 167766402 591206362 333651973 911388562 883795014 963511654 913064599 929473323 730913616 791866948 956819155 977441208 186296003 219836092 126245446 827068564 925421361 971009633 40581154 574547410 769288296 942767020 9193329 436270918 33168476 807711571 827555900 920419930 335826478 485239275 914457392 998540511 363759442 954520851 666124067 681643920 464984855 661922476 141070801 379038571 322760304 901927204 457871882 751618463 533276381 890585667 452496907 529904172 938425008 970849593 291740856 513031667 586144642 637483795 771240646 817910987 936546749 949164233 980953612 992579972 247021435 502772512 27884078 45018043 260226248 867397773 635594928 887061716 402226234 577631729 136896821 430178385 834202928 916492299 656285498 978193570 575618854 887808991 211915028 869325600 794931431 962653695 698615453 834897722 167561923 784380833 816729141 821151637 472849551 896329556 807550756 914101382 79463652 198489104 334831843 726047340 89583484 352606045 145010635 687958785 241058999 854484127 152246535 307518551 123004287 974992755 688884009 850203151 129560072 593376799 768712800 840528427 36096354 297680740 393469288 965045834 266417775 597901028 620227773 739800925 887824584 981875317 212000446 264447306 119067393 666798767 787529675 968052727 704692382 888275480 474654735 824103880 948877304 975553430 600357682 786158317 840315864 903186927 887073586 897782497 698404163 898182062 294729012 629546295 109513226 214708135 265709687 513452372 867003447 989457692 339531044 840211283 577422719 777171051 503103497 837595294 674731618 975858509 810647292 812272308 370197074 824177056 200867326 688379824 473535553 889600172 389152524 483577685 379203916 610805730 377741351 451922050 655620755 757170130 404331309 960317601 556111816 715897724 931680680 960466593 319941208 522988957 19067838 630314745 115328202 816073203 695730744 757083071 293881585 607373530 95548876 860110410 316679684 592900878 422696109 794773865 907985554 971450954 762749609 815139306 348921312 668986872 662107820 694784579 974943064 998256408 895331285 916379651 249012174 311601690 753224387 807494237 983421844 991539956 79621388 433981934 399611704 942166216 798025270 820861241 116883525 824753137 374072902 643756717 385267927 964537029 575535638 877891923 824078831 942567980 284971464 490160799 112543106 737523951 886683979 951942840 216207902 797794622 699800340 699900081 148558839 299062336 742524171 754723985 310755162 625225499 225700717 567992675 183331152 373018730 224800112 844345724 212538614 213655328 699697585 863638527 969969211 986331632 283830771 374729485 127602342 263211958 714557502 876827206 975999545 979359745 210783110 389593872 213868612 847624501 507051906 983944972 828125902 857217433 681474217 829353726 102345233 616986788 139160939 167752145 277740214 681085715 530168618 984214668 574471319 734961048 116861611 602469182 295245308 404110598 474205213 756556031 282010696 506083826 330949191 821564407 966979587 989061779 188146718 983102658 11578660 940602905 887183653 924982432 291791491 842648052 384044539 970172076 491483342 867378870 964575627 975116388 797557834 847194160 841533303 965850191 117230828 634617818 455511600 456609034 707470434 812227556 507204838 518663555 625287101 942192357 998253328 998258168 617805931 786447678 688203798 842080819 653840749 768229427 748306630 749640557 342450542 812197716 129231822 461026190 613282338 653093046 812497313 959263850 84614565 135844172 734958597 875359101 630829184 678936500 707676253 896417107 129887126 517638090 388492749 684975661 588195583 839842062 889317332 964886754 738925526 896759023 553380078 871395163 542318962 843893354 448888320 948376454 811448036 890112383 511602127 814139248 863599362 992023146 162587801 490038192 197334411 215308043 483904959 539765569 228584839 932786678 23787447 813673316 492916488 816969668 493472999 697788844 965399995 968764447 137391149 735628699 547580309 771416860 704917748 969824156 740433857 801664989 862657603 994256593 541822294 979236412 108577191 630005688 48576287 716999607 41719005 708768043 801876823 863818756 360052541 665120118 261749138 757140412 637598860 883584475 853522576 889687210 40348618 865112586 147685526 427695686 947580033 968025220 492361256 769879866 139272979 765194074 805877339 812951570 40502751 496027731 242522374 955480484 425703350 714999856 385656857 534667741 841941691 944242647 167256546 320143692 468089970 937038106 358678282 740643696 497080759 708067715 967231776 991349513 52823362 167619019 430109906 976132678 149174062 184526947 611718178 813692906 352633945 415203066 453458289 910130936 853580187 963683973 990550546 995233454 397099527 417640421 693557457 831093167 430797738 668457515 317868143 966360355 209484351 690529867 558853411 665115368 333881841 962446407 715943353 831254636 322804528 414512461 677379365 832141330 510401799 600238398 571609446 703391613 766975286 883877384 81051605 581164199 430099375 918008311 245067643 893717345 173197013 257633008 337185770 985043793 984447558 989325359 156279615 285090210 507516378 684222468 849028196 977775126 886329967 893525490 270727228 274057066 624265524 902100091 745870243 768844978 222018249 473842658 583712317 709613845 938519700 980653092 242816368 702159024 337844765 452837710 852678588 872948969 134220613 718884851 37207124 605255628 197819256 282841742 114801964 965068303 834286436 989380610 11616022 296072553 783948807 879008747 150718266 721772816 895452738 976632392 40745624 642965619 488212142 715467329 957883167 971884807 706948668 984245397 520491368 580733309 457246263 716441140 841748687 883294273 343560512 772989392 600937033 601592926 379003253 862538931 207087582 531434254 216530084 516428441 668906849 850914758 145273549 342592204 512352721 669516496 155992740 776033266 401403613 471194502 955987745 972505350 481259592 783818069 689008312 737508150 18211815 23207298 785609884 796387759 23714043 113000158 329515825 712718878 531066393 991406836 287759884 766733301 686609146 872287962 810879285 976951131 930506029 972732444 11751163 884901951 416375646 448587407 615139208 921478128 899946085 937273973 725882206 974630307 40860696 748673886 857527027 903864808 782110365 864736684 329994179 730480838 755446665 859586769 428444088 558857053 982395101 988846598 82317751 109286293 885276201 902757492 944969290 984838770 789535021 807503471 316701907 569206292 658610631 996923022 503774128 679229370 232526199 427092493 300216566 915209882 466464400 858032310 198140395 637289403 868172902 907054796 411798122 944414841 432257802 858821554 277887820 863836272 72807173 156189580 290321904 407139125 876302679 991094785 596339460 827644761 633252325 970257892 235290194 974913159 705348453 971416437 717494276 873341737 831859866 933406980 104809342 654820900 675303103 971964687 493992779 979142426 871130657 988780429 24606678 921193504 313819590 992789623 876431461 936479915 448878933 789422182 224560544 349427684 69976384 873019058 21178525 700656321 815188035 988381266 568174873 935163451 503689965 753259486 15476196 92419579 18303444 752580381 238373266 665752756 554064576 667829107 561218114 896897687 309120861 883232664 837553719 900809423 769885163 970812589 902447220 996003034 719734149 761376635 967376628 992699858 578323352 936020196 309666065 918575716 744107066 992204948 399170343 641422154 732665544 918852276 958389692 972534038 261721801 952953076 30304939 397589299 972279211 977599672 666068597 817448898 888384561 974761739 735180353 787817627 454271022 664028027 21486089 731262278 183828302 825313505 141671662 184647649 323979773 612251493 258694466 822058040 950346986 986877275 72371434 987037264 196779914 439584356 479621082 697998548 926685601 948340745 623507157 960279262 55145381 757612175 56823544 182273108 784530205 860971459 46625371 251893274 223228042 652733613 842803172 909480568 146281812 645400676 925287504 928680774 791460664 877461293 252132011 548236702 195407044 379311590 733623804 977004133 363004581 573377833 831251685 952861890 712817003 941806046 667431904 704680444 691225865 736930216 460164623 499345685 282987181 543067831 818034425 894221750 685623870 693983739 727089213 744215738 752116936 887737139 871958826 921004010 566650684 677688822 918533031 954781012 178668736 402926930 874357990 919651114 149996904 738278966 44451715 756647340 665434488 719319425 926627030 964771751 213755880 672897521 226825693 564283438 561615378 887871026 746330692 980491747 777133274 784550550 351139953 548075559 549865822 950468373 170119448 352949172 931153445 990305564 497790209 615709632 889485303 923701333 911366037 954854349 916334327 926352512 560321393 911014667 883912602 990961312 684785441 770916451 955768269 989470174 811144999 821362197 35768763 930758933 380489796 697936326 503254010 965545939 364449212 565422799 268757242 504787726 181168552 477379041 5560824 612471023 798924553 939458463 354470048 790214074 77201256 613783451 183665707 922270375 508673706 652451292 350481398 538756645 389344651 841565024 546553672 582486466 624162501 708741453 305183281 918127520 883858308 971371538 595312423 800133405 260409637 606890493 382590056 534027159 880478910 943371508 429153977 496060434 654565055 896710101 208586647 337104548 377361619 813742926 396972653 785469098 370136491 728060625 519202566 930464136 833403295 961142399 485224127 824432784 619085577 729655296 921588940 939185518 98087717 787248923 850665280 974333514 808575747 967261833 834734810 860032354 421142544 973174804 244148149 326553771 515445103 813675158 541316034 764936917 175395878 390053876 96572359 118125039 93714457 561677533 480171267 811469776 237106866 864681294 800784494 825769416 193466211 602960958 171710954 362728894 810699180 887533257 343357849 926235908 378429056 409695016 328667648 823583918 863046440 981990882 222655625 408744304 537827226 557467316 117160550 407316531 658788266 961618631 755037883 848590319 653564913 866407042 351809595 900853825 364912008 990766648 44126225 392920457 732648732 806096513 936866502 968072181 317678158 736344712 383022505 782365449 68702278 142397147 152645662 842808112 356699085 474162321 224556374 271684954 980746415 995273832 296323574 888594720 963375856 971669415 800674147 927933826 165611967 513680247 926834893 953486828 804464358 993507955 426020941 665652049 797765278 836934675 380248891 408130535 619604520 761351127 734319639 784227495 338943168 752646695 423981342 688453718 373697163 501833315 654322481 792397698 404263013 745491919 566359364 569393730 760643230 886129340 22467980 689571236 862876181 952667858 656514419 809489789 202797532 345726132 470176670 785387279 819733153 945892451 275607690 799678359 929316615 997948151 872522526 982685242 437164074 713482865 709909076 801770302 456962661 538967100 499977004 559659006 589407472 809338604 798781545 962637211 944359522 970680704 239221777 317543075 424609885 613549211 41389477 758678787 832566509 876221917 240341588 478332333 25275797 821670379 392828464 793661624 349989766 897633475 828139865 889187221 512231971 515504366 789101267 827296726 259182291 323177358 530256211 966961320 662043928 940857257 853176873 937334846 689899223 952170919 903858110 909680002 353960913 964280516 822376729 933106085 835088930 873638610 737533675 811688842 801639717 842177391 301758033 629818115 319159390 356457127 837355683 941612529 865090512 885083536 204989933 702821831 554994848 857244138 702258809 929634075 534904438 773083346 43121764 322782231 3909412 648544918 508296117 660476872 768217255 893543694 44972341 150095359 736641403 808253948 441834148 542556109 290966114 632491033 779717825 860782300 12866333 530955124 460193684 812138959 249523338 624911298 485999570 832457018 186594438 640790283 481019456 667208272 9349342 734722397 967561482 993312626 316570362 856084817 73238113 856166921 274308761 710673629 19326774 139164098 218339492 391610462 293578849 519661174 276427154 623860124 841799692 850712497 452137216 829817335 827586056 900281303 740100234 794743800 352440527 621668215 162023716 684934162 958207058 971072334 962505727 996728995 888763821 958701003 475057596 655763286 594440580 932391454 793017612 888025658 781472172 868353708 360333664 489931244 880454669 986183423 745508153 997885519 7478481 359708787 362023079 717643700 89090573 972038944 321118907 790972268 736814701 954979575 210427691 731947023 513610481 535248690 885661566 973917305 166056581 354006727 891050104 891433252 124365493 361568071 481489885 891371563 727968842 928093739 115593757 927517933 697200540 749873293 720068181 959471813 256780036 621907703 244916720 361125760 567895238 901629212 269108215 297528493 1682996 308254961 257618826 471455079 274315604 374149536 527093686 608541248 425880007 728241858 45429039 721392835 624967654 647226367 736443274 930115508 8278130 293222067 362083237 681176783 831264770 992644945 469999404 826015504 965753212 994709309 668931980 916800969 162986303 494586582 369244021 908038150 211683933 329699853 121839511 544926973 224425075 563707194 853293279 866185643 759239672 935510913 784714416 817123955 170870882 904723601 232196635 916016891 389816809 658110971 598036562 842768091 128281875 195923318 209049778 646718645 888912814 987768844 745098518 810324741 227986376 936358379 614521091 681560267 552148784 608620967 596084330 926454290 511520852 813318241 852398460 884296738 653764140 794703648 466407732 468616046 100089325 597531904 188720720 675653953 953535188 958609714 470405218 980351412 346011693 672799847 225186473 900336039 845157002 865681401 230981799 981943057 461985299 628321507 7778955 366162688 390342229 776847790 743456866 869983450 580545715 773279314 700028945 824588037 263214504 335970013 359556259 450478976 694048327 707426364 487832815 886564761 635737347 894126353 228800190 971308232 746428170 773302707 320605520 914233801 190381909 496184931 997960621 998820601 679466192 945631186 141968339 394200127 661526379 712095199 154159395 829841711 302542803 390474827 585601577 642006008 111171099 119123621 584249268 785388930 3086192 233356564 781078888 992926840 816504313 866729783 653175066 992451552 690516048 881670790 224974114 934105735 859874481 899875182 638659494 885563498 439428419 561876987 924766918 972287906 489852098 716823730 639189400 675881247 978657736 986545680 119415137 499674677 820967033 925792689 76301587 500814998 675776298 857456546 161682963 693211496 294503934 802836643 705174578 806849321 479252615 582651180 902148169 953305649 682912133 955340374 440021601 652148804 266984711 561672051 988861722 989155812 306267856 349442887 44950812 329752575 417555853 992295622 626352935 927913400 276393477 783708646 358435924 567407665 892741032 998072204 745377318 781194188 346420873 527208181 696850782 892584101 795236088 801018693 670777758 863571936 536310585 882230940 663566152 955747184 961758239 972952258 926015998 958226536 671459608 764600738 914783966 970939919 57134489 622494514 917802330 933337882 114511337 422608447 452560171 598279801 68639358 567233291 686291462 754395086 938131042 947616411 80848205 442471920 774109710 966728543 211837401 858821797 395157273 950617964 986578907 994141452 874950806 876763242 812679117 919460389 124826262 484929717 178508376 960065913 525387848 640952937 322106553 383775862 261157793 266957726 10926490 385435656 521248454 656294616 133807260 486172435 586609629 865664828 74055413 770635390 282313706 818266802 187621705 271253015 783695947 898614720 7655833 787375536 812479640 850720007 755423432 898056271 555797695 929833974 75918698 870384220 347129567 994059659 68768455 914510585 27084595 200562479 970466771 974288369 649419827 898762268 331750170 706387796 416931034 458120767 460633130 543715206 799493344 838657796 958309110 971234363 776180024 818278276 816252881 866192905 317355612 784298435 797526898 913252396 667155924 746690008 903799443 988298569 25806025 327446508 183043754 656530846 784330244 956394154 641910223 850582465 463026966 465450478 97255046 251906364 376776870 741622226 133415738 557377981 215980726 846852922 107457630 500212369 691875526 823921503 672423367 716515383 77653689 284496496 910288043 977918961 208957198 962322426 110950053 901519271 157521168 500018107 375984755 944395950 564253342 667780607 201807483 373554718 367694078 728488099 288920307 628415943 422017081 454276546 957927792 973248822 631473978 983510819 53653772 793245331 57015586 793617292 892874029 910730988 682994073 926780846 360619921 477290264 357614222 497535777 790248964 902582214 784586703 797493946 354250735 933851951 19336772 658860126 484744422 522796583 333151206 340901975 607088101 717553647 152683649 640653972 166415432 709360810 295773299 692519759 80445823 741763174 17602643 474447217 666677189 731768122 821096020 896814341 523402330 676953980 222269141 260643727 325526689 623006377 224055227 699685992 384789305 436940251 232229436 838814180 16638483 567665654 2367734 898975050 981378840 999026413 158541687 230955756 204801141 761023634 473689810 507700527 454066042 599946120 631507103 969978238 730272071 799205692 482014156 804355852 203777087 341376863 481066984 723431291 639777385 877385242 464770597 666080462 414975037 967589569 643862911 648888204 82637955 923366527 988067692 992288194 637759517 641012341 446712644 761854980 413388153 871507115 452927065 610252126 725814672 779458418 681681774 779750262 903132039 919472089 115330263 609324829 530154773 592268250 498213168 612422305 883597530 894046190 710419190 860134886 787245910 943604904 39223317 53969119 914337942 971374265 458688881 811638535 19121670 282968155 413897170 576587071 957752988 976849916 70274513 857342753 946730250 987438444 842018278 907442956 467157115 641574134 837706908 905372693 58877979 412717278 394887926 443674193 197905457 656624592 690538479 895214176 823423512 846731147 706180540 996337145 66542192 504899182 413813862 645008827 352640298 531156785 238781245 703124494 416115735 961266326 51150245 57262868 962227427 972033231 520684856 965919898 974376315 988971683 644349532 805622051 661524502 773250205 414375145 972575167 974238426 997910324 626148499 662159312 798405520 842964447 443338975 491727893 549442852 649679870 802995088 861657842 428922360 881300521 374984947 390636577 292566886 634513902 958646265 962381491 569263817 972883308 614042353 820817616 154420477 229922500 325129309 355222502 130331056 515207279 232334816 559579931 872184416 934559099 911340408 945033596 15599036 52649919 534206524 751241067 18411291 718204076 769093055 873803836 184681112 408457787 818382448 843257552 226401897 381788862 874613281 975899736 350087995 408572031 45011786 562351373 421701540 517198800 495720263 627928428 336933909 759213441 64330002 754414201 697480487 882180463 357948571 797977592 862803030 955290218 34507827 107363635 224446069 770500641 568597206 582099107 126794998 861147277 458079030 592815032 366780692 884649072 964980366 971341510 755154264 788910412 453873060 915397155 300952918 966171847 684148135 760518232 208507123 586315780 312567928 545288904 772994607 994733543 999597985 999785982 733396279 784483518 913848092 959957862 542300683 955639783 754082686 929896497 811834703 992984229 312123720 389319171 6597846 81783668 902165225 910986833 522264750 660932004 194459406 779758539 805936063 917399789 348192047 608448870 9436414 536547315 980492572 985132720 167569947 676556170 675446581 758279536 494261426 614380380 900340279 967920250 57772909 153150874 255492907 688177023 369960349 721359158 371828001 700733826 213199983 592565230 35935534 271367817 221618875 511338103 537725830 553515259 698957041 971758914 820926245 859801237 446574905 925482614 968042815 982076989 440093670 485714375 810887302 901517942 690345768 951422759 240771507 656879505 782644875 946591653 636454608 997655140 743798219 875342039 180917306 317313760 528561386 595457852 607068667 920123153 772385034 816059701 898082695 932374257 871003689 957722815 848424623 994732333 26526138 785043240 840842829 909710217 919379603 992094339 201364652 861222055 223393190 301226025 414925422 867396620 965622279 979514536 627047858 706039042 959318514 981575405 389662645 556424624 376537581 761534061 855373817 855515380 84675081 92535539 288005565 827154632 766800273 874799068 65785564 199293748 494562646 811276637 31532158 656088609 132762579 277176698 515393267 773955049 235303474 432825599 796803699 808799359 545100819 949932657 780364409 983439368 709212349 743981535 835575209 890363435 628723219 755411451 491950737 655497614 961874646 993588666 882539049 891769791 813879561 822306258 328691629 678778286 687235376 790546918 613861357 950177512 17285043 583291847 530449506 900185530 819409128 973253511 137627317 970212166 395397711 688025467 155487766 824462225 604920075 654011921 454901074 943508261 775889450 783026804 121242368 667138542 362016122 730238655 702234468 874459577 539402037 910228635 258340399 635358850 900561046 994615263 70429082 965603092 394478646 564822385 794023723 887031504 920253510 985282793 26396189 428626721 693742356 935499676 104414118 358791281 346444912 751948780 269903173 348294702 197650066 269153088 618197762 974724290 477086336 605576738 27718648 409876576 105729327 247433919 30101492 881164691 826239355 837783021 97933636 326863258 183745941 313102255 368676708 605498977 903177351 942966930 529721213 941192321 758589023 773508162 483250654 888784033 562295660 712061404 161691820 408564831 157865473 478990841 502141934 558702741 949266034 988075355 673829076 752101022 889480973 971175105 105223362 184600986 768038091 932407706 942299167 950929757 511255819 584453336 993205463 998427042 871881447 934283568 310282408 582245988 464892383 798036190 199405685 401789093 210393709 584568946 689148324 742727656 987921547 992665063 231243246 943290789 984633774 991175835 972598438 988111789 846877486 958994012 421944836 484085681 343632132 417482892 751993744 963904305 418919144 587157638 212369698 413467231 950502223 987037804 624375258 764692497 537759678 553601412 147783841 312405722 636300138 636964466 116748380 525212885 579155982 779529235 963191992 982162666 544480536 815910818 609167169 709068044 621816601 964755177 733849597 966188031 787539105 931399409 890385460 931007450 51634271 620927215 632533975 871476582 910702944 935389389 184225219 419721612 122909612 389068558 35213613 408839776 749383671 789577250 728281228 908870546 692672315 799691145 805593313 882762229 689688951 722717723 205861325 772265691 752722130 978797127 292506265 310396903 495285601 758163658 425238965 752828925 214512930 966239173 400170317 993444091 758796510 858148430 572861301 899227629 968351923 983618985 839525971 863959672 493082076 862043271 492361760 921767683 735854645 981192111 306649761 546618996 659797682 812689742 549511283 616026967 661134454 897788342 558263683 656144227 611547968 791428334 99448528 702150231 346956003 828053575 558578304 778784486 695408857 982448222 967728863 969312438 498632834 585653762 288228266 365941244 72825039 148397676 518112249 790248818 62755657 739361145 556880067 997460367 19105977 144665526 417629933 788089099 186232532 799202025 793113539 891024715 900077550 901179413 11673625 603289465 302213682 303807871 766344741 871452055 309692635 440424068 203034904 686646902 195452505 729635061 193971525 705281615 232318545 889614312 789011026 985202762 149821639 781389805 921456090 993269929 797462917 992687171 651765164 883400458 171270827 687658131 150804148 201335448 918014496 989592108 930303309 942054994 102268577 806104127 215118937 475467155 200829854 693906579 911323317 961123671 966372614 972329363 195937543 309377752 311291417 577963983 997831621 998395222 54774498 399942720 714891857 836237145 948997242 979148507 663677370 845736846 915678568 925760431 395415517 749127339 962331902 991670359 494018014 806087201 128084127 582182623 635290029 682845973 373133954 589621272 769434183 921701322 315899095 853772500 346824945 903433374 555739479 669250572 247990146 392193769 658283817 820330424 102395941 174413845 891279358 912413051 736381220 740614540 830854829 980268523 867306281 902228949 201696210 909518131 540205388 616787867 316781817 329313728 995787608 997396976 13886456 789516123 844062322 867031249 721030688 777793829 869335059 871477298 857427936 928326401 598348752 717180872 747013022 898069701 414689674 836502614 891225888 966786157 846791353 958452700 140130860 348877843 442892107 512625842 948397820 981403742 385577168 404558131 569206375 939719091 382122092 468846385 287336026 925185650 381676693 515211439 942475333 990963395 685953461 944712529 574906156 884782364 575572535 931469084 586311102 728355008 945989348 952075581 227968422 393049761 954132837 972167544 39922045 827848874 922203219 933523356 692228762 745190253 816705908 967028606 780110366 939162246 255817781 875469685 71744141 487989911 849539786 870382970 700055843 863758916 919548404 949243560 408896367 548627535 990776603 994925609 704948445 912637544 690413973 953706090 345008366 807698611 926252403 952849249 56447671 92672903 176942385 447732846 432470770 900969041 27821871 580005277 641653849 805222268 304312800 386578340 398054868 440141255 718401487 924736386 556555052 983334619 777777970 874400137 26804690 381083313 561687205 802691626 576774825 868167903 817232777 971794100 529051793 987584373 546508202 558932619 547176847 927937476 198679799 290112687 451944310 671478550 614153471 998945308 357066817 695341354 352311062 975737815 363118627 377065403 817750977 954642546 120601990 987432184 761672494 888446893 314764120 435411710 411149467 869774380 593898891 758712974 64344306 674373256 950693235 957429600 245998995 258714120 57110071 467613576 718219422 922752596 411287537 576051770 849907153 994379611 449079578 678186483 605405278 967303435 435634387 870860063 884817774 890089635 633742762 840317276 582761809 861164853 382446509 520843611 820914441 890771781 731714585 956673927 196061263 787300279 135527882 685732209 496549652 600838389 543572980 815867548 695330553 874235726 331148794 666954981 691933820 817988478 741407353 820427695 268781568 760508508 29071605 334495041 811844207 888914141 300762276 692390629 640423313 897994130 844714287 986870828 737434160 841186646 441340652 670874810 983905479 991522433 565282764 824083786 385854223 544407169 571151726 747005896 954077377 984110966 957961836 989001019 924228913 981437069 39650114 368946976 705438303 976534695 709527662 913971794 52052479 982600252 338353344 539491905 944623562 997425905 792828286 997911939 101532324 573332310 648550215 809666401 915105613 992649137 643434459 995594713 451994682 895070290 40011781 919298068 646040105 751576372 786308995 977536122 944364296 982631111 475237191 712281607 960064157 991242155 542484086 642171664 589919271 661133657 699190944 879921995 887825636 991752066 384105880 476534458 498634511 963348895 520186573 863545752 827048 354254446 30545224 516481961 409477169 544889695 810820749 948694248 174378004 533888232 946077064 977295316 715649870 743702966 960647295 992717476 109309919 514580529 197759446 259119287 209645261 845004365 975368373 984831969 743826812 783600567 851940675 925774671 111372380 385246363 274959025 474187038 284369318 404095115 285716995 890338156 14691824 279586233 662422465 994697173 760895846 783179931 851916304 978722783 860112088 962111855 610891692 838714307 33513959 350543442 343400381 485757445 744796820 989089926 878099847 979365757 810740609 904148438 155395202 339348421 154147508 957101055 283382693 799137801 473789970 602570897 924554574 972782135 601534775 999705603 305223865 368241013 895137493 980750131 984547883 985773138 215011579 724949569 739280270 740842142 4512557 412081429 974187898 986113686 763893572 947802688 76685897 937622902 478395152 930175877 136006711 615401344 651119981 745713265 938149273 954396978 960845365 968147736 497872275 832381402 668124317 753013702 320778209 794648567 505623437 647237306 503805287 535527569 898591546 993140070 144875431 717522162 789649193 910855868 668186873 936411376 251669506 454812258 494000420 564090061 277864964 957765417 754631696 943519328 297993349 692550756 843397978 942981095 794950168 811522061 634507072 723290940 792017222 975463433 928202734 936304322 480055760 871731204 120011182 898577554 752665400 986338261 607132277 855759656 983765912 987024730 967931555 980798057 767008439 919639792 700027660 975347788 129178848 349502737 842490672 871913647 309412683 726074536 210104400 482859336 188305468 874409963 987449486 999135469 664481579 821894518 271604042 320165813 600712815 906260348 737590577 968500887 122304309 696991987 794389187 981726645 107458737 458481627 208373424 375049135 719533254 977931970 665059995 870573415 235834528 891107456 511030434 564114769 172107075 334128142 390684205 637044854 65202644 831115064 43562556 55384846 155073569 777230115 69827018 95295508 6851010 241543454 654173432 923966483 909722243 962733361 545340842 851862207 123031681 722017793 111896327 770190700 254991487 414628567 970743029 987142492 883760941 895152026 653532356 712222754 128893479 367784087 579229136 925684498 273157491 808426072 163669402 956595043 389866823 814849103 632442937 957215488 144234001 650505742 945631000 991872429 507541941 642784899 756717503 860028582 35963092 937964354 986639551 994927323 192859277 612938966 713316466 937461521 896127264 934737788 843027606 944255868 433563389 692055308 553602119 705355566 84511652 684275880 513413396 988129286 404383431 547262088 33547184 800738657 382310441 752309907 38152375 449742019 171577822 746998595 141828343 762260065 646247287 735583791 362744997 759429285 568985947 623986636 703758278 831940333 832868158 977951089 491721511 594823686 473279945 685980571 891325691 914013951 435389617 549240345 534032380 785238259 797941821 951922729 277210202 381412031 610167059 770224664 819839892 945621936 604583933 715645542 530481110 679995457 365876788 694881635 275081339 679676685 971611308 980424458 166636939 274831180 210037722 330745551 952734871 994954014 231568582 756252330 647725506 781537423 490613074 569957656 615849008 884174856 904422295 998163679 928399788 956330358 535480637 558089609 923856733 980193029 132167410 786098663 374284485 437356509 337181982 737941136 138636363 864870870 291130843 963194964 297918191 665176117 710802330 956218175 468810533 855745809 354837864 765289101 843497459 954470854 541206889 629527779 107397712 175574513 991711184 998922495 538904594 928159237 200265082 539187863 762688244 936092879 464932494 961649575 889604655 906612436 915410314 932952799 652671526 655849642 366291888 623674196 493572843 591960203 86586249 707769403 304588003 776101126 186915792 824516106 883958733 973206490 459034549 851091770 618668524 641329855 791325500 825376230 86343984 112599690 371395720 385254285 828977971 961014304 461402716 809491027 675243675 995777771 612045536 734898635 887438040 963352259 846817427 896840041 973862503 996199794 282764219 886229245 650613563 925076419 509405295 694220293 264969552 729990996 249763097 528599800 746995156 799753834 695094998 986630252 525879889 962933158 498177291 721620070 126863123 135661340 653618243 962992586 512417240 743913133 277184607 796519955 532030158 604843039 951690502 977503037 932010004 983529525 891323753 893931596 320072088 474550689 343170976 907738810 55877974 765557276 28773569 537555123 557497468 659156306 325695818 534094468 704648267 729624108 229845802 958789629 941023091 952749636 834996358 903967758 966420537 986378972 480453428 849340257 362129718 453932505 258008554 781714457 933096836 980143504 716948071 780649024 845515326 999271908 672157312 889924993 126530429 723752450 81752604 887367278 73916659 647162461 270093195 807639573 288164274 674037690 983550497 998369438 904545622 958582537 648355618 703634177 148867412 618554088 319159260 325009688 817766260 879373094 175812049 812479497 288393884 831031878 250052238 817642207 949096459 954082543 215721879 996634225 57132897 510276574 912197364 945478180 902131522 959004613 384905247 440943620 357502874 446969835 325242618 621837810 613290298 824929880 336598910 560076243 455266571 750014914 5916716 245004746 559798104 700817681 83343866 566425951 858976254 967854226 93310479 333403558 379673507 801347794 730918360 936126143 370409319 951068904 163616362 226951329 707305369 812474527 493422835 862600749 629332287 723914981 87594084 853756653 480031077 828875030 907568982 945607434 330300185 478707349 374985908 422789913 913668123 920947965 38034347 720083930 312635039 637917881 488705316 567153890 994166469 999723024 511497438 761916712 358761250 739783132 355726959 601069094 829511420 852895800 339889802 570721391 861336492 881314149 866393262 982106798 952124655 980861319 156187698 566516473 14573892 830898202 173453853 174221514 47119323 849596165 566882614 912720615 192479084 592030636 801957366 864803760 178788373 375832495 258026004 575029229 467958251 801053405 193185054 783241374 928353725 999532982 329345540 674385145 427777294 713397251 946931656 978347773 943446891 985137682 727481716 732526024 592600477 879301172 834992796 928133657 333021386 879573326 795604141 811922897 927575465 975832550 330435107 495433967 834942092 942106885 128753020 283573234 566081154 730418884 710368113 951738260 750197154 884423869 144678652 918619755 104033653 688482275 215963508 893210147 117244872 720144075 740470222 892800958 749974512 777624581 811772215 973821147 40088950 378310713 65904598 958979727 756890802 994839169 463844695 971193698 442405569 851430154 222054174 658414705 297535296 400685317 311528387 469230101 288091174 908898801 776101583 929199810 667730824 964487545 941803028 999381813 486210841 933034907 740942204 994131037 462061396 982748011 808984449 909576818 69535257 108045307 389482638 402924415 727230962 778997955 919701513 928417191 215348269 616379074 612179434 948481342 781510943 961345348 323899689 989886541 407837332 805677633 343179345 969163229 152537871 729539800 837532574 895729621 217584157 923627987 849105701 963526845 106799951 747173495 404085761 629373514 406249223 518453838 726122747 862774003 181503723 632130668 344270558 543839380 859608616 902530980 426306335 960169539 282605254 870596165 796844160 924677353 478328045 783592378 639863327 947171129 130364901 558401411 594608508 688125383 238283923 489934654 397091478 454745837 763443878 988009199 888606910 941885993 539143322 645789547 234215056 794946703 379955908 639084951 506342563 557005307 96663054 385013921 202126136 282743132 82030422 194238347 782541725 938118337 912180004 948853075 761162208 994140741 55216688 240720883 932225895 944975575 856683714 868326858 666147313 736843861 332973952 392849131 620919901 640214566 511276739 761195670 427125815 520410080 35338170 140305820 589449988 756826698 282664754 816810646 985596154 998398605 401219413 897080346 567101808 795630241 847717487 974657957 638300856 880507059 143395002 757041114 332426434 958934385 319412071 725721785 531837300 824788227 240801812 592087438 942189933 960381019 65113945 485955533 619443229 883511280 654415799 983034212 678079443 971198449 25951665 907193495 427905756 564741034 361213088 888750228 275856977 450579633 141285722 597622033 602260253 805191755 622954820 799868685 691227401 763160734 270173990 655159708 955994554 976807378 118533357 800180366 771544285 978581458 220205549 285913619 929329101 984850176 348860734 596477334 676034012 983833187 711793227 728418387 503797955 749191911 259629719 352758845 772054162 989405965 783210806 908779695 453269820 530318616 810848031 838580408 13163309 96544183 84854071 928001486 205186133 768876311 743182693 984981903 911673817 970499389 679062614 934439522 882622278 970400945 463945016 887240249 933252261 939019500 867442230 960201686 450071479 499519381 208302989 493699106 420022695 811612134 159162467 405832068 54169810 364169382 618413456 961783122 783365939 937326699 254746423 559690443 641259502 675064723 179897262 976190266 745706312 872564730 726684745 821219553 511650355 967548856 620350107 989441634 989708650 999732619 73623253 872483044 526573671 944565355 997095086 999837947 258576940 812895383 507678698 736912497 383295499 509403816 726652862 914491002 270018985 593779688 441244049 919558741 17279568 330525760 349492241 803667771 300355083 389224675 990424964 999082977 208278990 503750673 444615065 798650366 218860531 704604289 770999016 901039976 48998888 57574987 537921506 610281983 327718625 679155074 627608931 896930055 288812868 379105350 177801056 686010279 939996410 980998829 614081318 757598252 362338054 586136879 353671935 450755933 516883891 876282610 214894294 678812418 575965330 916725158 265627051 995901953 317784151 742180723 519472349 633891841 198426719 744804577 763119197 918081489 476880306 680582685 260788592 260922251 208352745 680365583 986631844 989107263 819343127 827411482 56383946 495963643 194751176 734305549 868680286 915336540 460874524 839606672 314814776 852498498 989985022 994657298 459822072 672380569 829447870 935444235 562385435 721712321 438671650 992617244 777819829 876030502 656512942 970248277 863072332 983038617 857389492 911917262 236066186 839073936 171238575 717747890 362222619 951868658 591087552 611519283 963179088 978674099 668693579 946352115 110423679 892631250 780389392 891447208 895232025 909331466 486569345 711248691 927514805 982557168 344240733 455868149 673625137 935826379 767832191 946966407 266075484 490659823 958643153 959436328 287076454 304864281 951390454 994568377 718384783 952000750 622466072 715714113 749914419 750309385 78513746 647499870 815716805 863157756 60697116 600018189 647603433 980198705 154015029 336597886 755334594 960891645 604465025 900346540 974132620 977595467 420509907 449800128 26612424 818068866 315458566 367562539 908097746 914334475 990319554 991406187 51637799 858849764 793498555 814382905 705124553 899315727 551938885 665306203 872560987 976794689 812582335 848022897 433469518 800774264 273392155 977330740 214470772 495469968 214107814 910064947 132102036 428499795 448670678 980989111 955891581 966157859 944652361 982101315 932894340 972759629 940539557 974345890 388768935 526809596 387453496 859603567 619261552 909503136 594788186 963432861 780810652 984361881 509050991 839329399 983668598 995892307 378762191 979225798 646332551 658497195 332074859 867670796 231620046 693818665 253336956 612368864 979987668 989763009 11312117 987074775 312245979 325965271 942782737 976059900 325323796 714428769 812903690 974246950 165784528 935735294 448025722 970104140 243476487 884986734 499863139 644911882 122062750 574648375 350802718 838907424 585657080 795630296 660198920 690360763 521547553 922082725 997719564 998314752 313609473 629100354 98519784 330610558 226205247 888094035 688954249 832427897 10070408 405612402 202951726 497361445 755728286 854545648 773962947 813862643 767114979 905226724 475290974 597403878 998011040 999290531 88276841 220399472 140172594 693943114 656332959 728258324 492458699 680683729 237818542 602814625 643223668 987807149 360549158 890197538 230025358 824424779 582954384 764306324 113739485 884956550 446978222 637014902 119915433 745684689 624578415 671861922 714242048 823962131 685999744 948628793 318340986 430367368 381143436 705072676 758564432 961592785 997118422 998025810 211644864 873775536 148968310 723499939 3784777 887087929 916741801 971731323 229030340 802527038 848411520 852715498 808721048 905828136 909118952 931833831 781190738 827638687 140525477 282692770 325401869 941772674 359769047 812444371 687649816 693884415 239511487 366462186 603315253 951784897 838434206 947904960 168786981 935246871 448442405 808723358 955008561 960426311 767344895 799898678 582403252 766698521 38059556 532888376 346902470 859003077 604906192 906493160 444193683 692468181 463412678 755616759 838409841 850226188 141947376 834712822 145214032 226928649 546113892 888528841 233756958 963310737 700080590 970735416 424821770 543684450 52670482 405559080 199094018 636804972 667718751 812313556 580455058 669095149 889198642 958174370 786366418 983691882 629641515 726262862 532331927 803121854 80122347 992837916 77802927 661910381 966687863 988565867 988178017 993197361 144041762 480583000 630384754 778082556 781422090 898548059 329229704 549110946 206943120 766315685 653340785 941618101 964237910 964350322 178453789 579563603 673610226 962297833 57332389 209238981 489377525 792428159 696550273 876072119 972948523 978346308 310888491 616132695 568564748 737291959 421027887 940007782 280053016 478917784 329952161 360997483 79393020 516754015 501035904 631696010 157057575 947918266 520747303 690242636 259512803 424423756 447370446 657830141 828123216 838070068 242378548 911637246 851618318 959206781 116137595 303427744 983723973 996161432 435982247 499296008 231529602 551045476 555935636 995177241 194141049 703396099 494311167 938672663 88006697 911333617 116085573 986452020 717141816 853686706 55510089 73821373 617433027 691601737 780352085 933675211 516567755 703624754 892838670 930164694 148778409 243317975 114565369 140103116 572747378 786527065 949863817 969536026 341052465 608273540 724994436 807812921 551056622 890872549 422131467 671034247 203571481 996115632 577546945 914030771 451028718 736610035 684323160 904093708 194788507 251791363 251963133 949691603 557306127 568983969 485770462 944915214 829218539 864862390 24980287 297930998 114855241 529138875 159774691 430713211 334217468 661154713 375498651 994917846 96546867 452661600 292351886 592963787 356978568 914311899 573495617 842114300 521366848 647043876 675867678 931717396 134883170 371267527 871269813 909773745 920916072 947908544 792407496 837991236 25707465 709654639 820343710 921154079 552758669 810775511 726033699 943986396 46812594 264563664 105854265 484229326 363376599 426016397 375482834 461844481 737126607 942633750 982106897 992246404 722108499 766244274 766696432 925522603 823806901 928619738 739207679 904804466 676295890 704840014 551979847 906208363 510068032 902262708 784733374 926316644 89963133 553712113 690534612 792022693 361471094 647232184 155614112 213358808 147174737 643845862 738045148 743948633 463749547 693561395 320277149 409147899 222305118 682821060 309535243 880589695 886681259 915543639 777752315 903082878 831869225 964710215 994613878 999937139 615214315 871496613 895412876 964906486 596030415 779782068 267286467 337899303 624613192 932319367 219678214 491510328 782069219 785107530 556650045 596808187 654559852 911415697 637742225 981855219 331761206 751858813 881320519 963222670 501165557 615267844 712814106 722996897 736284088 880043059 180908232 479155050 686437891 867306322 987709039 992392745 940228422 979966793 973253508 990946375 5832849 710719855 709560787 807087890 599309274 817658083 117412311 815652654 421193400 770846791 248065407 443182869 54712854 698325323 108915867 247228304 494327698 693912410 679129893 989309144 81537765 319437824 374128586 767811215 378613655 755623528 200834108 298919720 236411752 264292952 88768612 226351770 700184719 836786438 802738529 830932688 733312028 962420966 423438358 521048918 280732157 594375482 277400145 741873150 492997005 789564499 634132427 898329045 205775645 589994865 358121148 783765314 4914877 378696768 465096858 499747249 204833433 574400352 478606160 967658538 383016894 947304153 240923428 328946469 529455601 648752757 538554092 777414054 279554784 755294683 835343151 979266739 359750643 938173858 102013787 407475799 463718325 640446031 820442870 949759723 877519585 902253319 275555838 548108484 835912407 836332411 137899110 458391367 42588995 747689605 610053293 858897832 66158770 653077257 617874420 813707678 509219750 828911108 931491739 952165276 856052963 992689056 293773640 692578191 553855155 793630453 818645852 838956888 213168558 960245681 377761155 669046213 630692523 723283704 513644180 691130405 145560200 796933738 313785183 390209489 810344625 826898244 474154132 497807090 702418677 769958829 872470197 919624777 425106729 632466872 650546088 717020569 908516337 939047950 132284147 214975755 149703281 449437276 935881219 957164696 565969553 800901692 582577460 719522896 328127897 723095078 233135954 789177590 313012084 601770398 768128111 879285659 424771776 572098650 897474877 981258504 24861347 616990326 686679594 722308520 874639283 995501196 88550491 476767187 94260141 632981852 658483763 714152878 755863051 805916795 34498476 881572935 284216506 906805631 814601668 899986340 526356787 552314903 328239756 788876935 290221279 963252503 125343747 895760398 400624461 533580775 351471070 578318132 341137202 922168343 481582909 899683279 734441447 816065672 204752032 458156791 307161751 560336289 532478414 561334661 1576863 157467733 393746897 934366781 211684097 270677691 481259240 743187524 308811810 416534153 742270425 790796970 144861697 321382168 866554081 908026969 380841207 853848857 966955028 996111435 725509333 913713244 585393739 666881353 522941944 573227788 548866375 868081254 11598224 443745013 261954416 455819171 749750393 874648362 877770617 905981935 462685476 470009304 983541754 990369782 606698172 646927070 528818902 925055186 917529836 972861928 156438289 870124844 274139242 993399742 310471483 828332175 898284481 921076960 597335544 624674448 147227659 516477827 229262554 342647839 416242087 942004634 739384010 988629093 53783054 88174189 721666705 959810967 489175644 594550782 970963057 999887855 329065568 382095045 28891497 903468891 80925092 761583661 550805056 686957980 943975208 957366746 876290758 879029494 32410775 830744764 500271823 787130248 936171023 996935552 373206447 997816312 379933276 791384604 286701191 342907791 443591072 459309460 393841100 713238138 897001025 981540137 730329306 769876775 588703694 927967530 895576819 929437604 81406565 811163937 360606207 946130695 225328968 754292774 462244070 665506657 431525636 960310548 576238507 579043508 332594457 673346137 856409850 954837162 23074059 209087234 577442230 654119424 425257464 892901121 316638993 323229852 907102901 934388993 756788672 897399703 848396733 896303211 781701658 936279086 177093714 220768293 531743318 857152476 897052112 957052223 677400319 945403331 422727176 967433956 364509503 471613315 468907881 889404943 447843169 680268350 613346841 821238025 306587384 348755995 864504845 951650550 111893249 935400474 748970787 858311732 936956269 952407034 421246222 501311772 429113217 770381103 349684431 561183045 6961059 376955206 655826234 946237920 483387355 503699424 208611281 416554062 984349752 998597862 576676541 930211259 216504339 685555009 256100730 482839547 94610413 796252061 359579819 627483976 963538388 977680037 346688896 936252711 803641751 926171690 810411947 835412647 630180241 803829991 785267054 951508647 858229717 865106284 176997759 516138284 778848250 840967639 812412547 977217071 788575935 888567527 388878418 835306786 217527720 903716714 416314928 789635469 934070429 963069848 488577566 664692356 36917146 51634709 386263329 443327159 788140327 845131174 879901007 883781277 190309105 236533848 948005892 967991638 397943976 736954977 792136983 940059512 933964452 947145714 103486893 545399300 409858835 997414100 934911883 987082298 668660351 705228488 490298833 501656383 544780303 798178397 224303124 271042016 694159377 842661511 378707278 466289272 207514950 976001080 433441903 750000852 411858271 707194684 566839330 912110837 716784713 867244156 812849543 935921903 947899687 972742725 990963835 997710955 716461559 885150987 497275071 966067597 862738715 890859366 528177120 721011955 625511366 738344958 334449030 769244871 352891189 534357501 447985440 586873739 683133595 978686558 775977774 870395390 716071117 770571802 761971231 789817498 866909937 921191821 458982215 478298685 766328212 853277690 605905395 880079744 392871910 446685765 871703364 962941759 352063888 990360469 163347945 665448598 601068165 611920273 547617150 946511669 323679754 435524211 751265454 971788040 642554799 882716464 40523018 701151386 898686851 986699623 830297973 852470632 494805067 920647996 590704897 854150058 139288550 465729063 567782378 982857702 150416777 349947421 903026154 917641071 357958024 389264018 302976472 637738759 769703601 878869039 451593696 834433449 845034825 981703611 143439801 432296279 174043228 198818756 923478462 986005095 425346660 826727796 492190444 574939180 319412374 515454090 762887491 812594457 409799354 818154414 290870032 400477691 691921 609889834 371261441 796755194 997036024 998721729 374872758 662927030 779304416 872992602 269385171 888661879 337512814 459302850 432334245 819507031 91882400 522540984 420614701 761835303 121448063 438500014 217723354 521219262 640244997 863027692 261182250 519255664 142751349 549313860 392053448 852628051 435584102 665812854 563902409 869302396 509970093 997822263 648733306 702460206 798927957 964449408 535950541 813440834 297068163 737620169 62140804 791092447 289807056 684403748 697593816 755011592 828731208 969265540 935446141 989352455 946209306 977857703 988757016 993933833 71735565 401685225 347099985 867527575 182977484 204497490 324880170 826535264 608565494 784430960 967123454 979181550 201384788 637344875 992537083 998616320 586157459 751279921 940019120 979232132 746648439 845675926 221315541 801279046 111826068 454900300 564538906 838511415 467872978 918249284 285269979 709241069 827234623 974684314 973463655 981856804 699943545 997203306 889516086 929069140 407172867 827647553 869200557 948482578 337543872 495847805 133288084 246273892 329248119 380171137 356253923 772189024 102125218 259324331 616575808 760370361 3941348 421980932 421881889 889169814 245952648 385255648 561139402 624316529 52641752 757209544 220763298 379773485 598006562 770186404 253699512 487213990 361659303 509215325 167830898 248137174 177783354 260576504 543624671 925403430 819333000 891023587 29252564 568331426 212079883 600035891 760425899 846573230 418667515 970438278 129832555 349793128 459278102 781627053 396895547 527103963 362438145 572046825 676501470 732995355 149495846 798774825 204626526 620385781 16734283 271422055 722773874 943741849 392406461 560403211 92423312 967146101 634212804 987690931 790559927 973473969 193002514 768539530 928561425 939495685 846232485 887065420 762261305 986697292 393033215 771967148 165561577 587571315 374048976 420911097 652443339 869778546 482600713 962508136 460546310 692872638 166864448 675285951 521832484 841478369 819106591 868083100 518451242 615378475 113954974 385982931 475585450 762235638 618319688 696743268 240341569 415855793 893411930 986031883 94224257 372171177 385012756 762108346 132851986 956566971 599967265 785721944 776787647 847729670 219033828 558361753 810923071 834291733 537781540 821539683 5703998 599602016 497186817 921913131 151691731 873793095 22813187 912981828 33696833 214534773 818404919 865271443 601648296 884809033 491317538 610649383 552054487 810590706 120038439 916814356 396276889 801287318 193974074 307198102 291506328 874299950 350586353 935543717 318439151 704266587 499375633 523077062 731417382 910939482 716200280 941517275 49626252 995832267 450972880 739886168 267686631 870174238 788195214 951338091 371618902 747037725 950224945 989630099 826859957 843059593 724628592 798359730 725164010 902295306 536812049 823804854 707153623 707239442 350361217 981613793 821181907 883979769 735611770 897508165 309940185 950591690 341716981 467122273 267964886 474642735 870785821 880515269 940331482 948639883 687601609 878132257 513662359 935363260 264188571 884948078 265466909 893278179 145798249 228571119 570249015 875083377 353712697 977891335 97127282 365813701 716901683 739308535 341873235 938091571 688355596 984850119 34245490 47248135 289303156 656965581 872825794 954976040 849469978 946491517 319066333 986603021 655805517 869885958 301707640 644625008 159397586 889687555 677959296 853284543 316219293 522490824 826944400 836279081 241585185 733498917 376776254 777928710 506344569 853433486 420117036 978485665 569375912 993252891 291851331 647038905 651752250 999016471 172552290 540717352 387358139 560248135 818832649 851944966 936053692 988393550 385778216 810639995 870038104 948699833 607122512 654943646 951284837 960067296 95027396 983252120 923337312 989253182 854122546 909160839 422254907 528744377 166168194 689240047 643149068 944601509 503131739 609664340 530904758 620207626 673204982 682289122 627641716 831517042 448647575 615133470 524379862 785078988 894450747 931829685 252937126 587320017 867210041 950555887 357157318 780892676 979539851 979575635 23178030 786778325 422991037 857080056 144050334 869611022 693162364 696796049 974114973 990386921 694319980 726913040 680560883 805914457 345885528 918712520 557909112 759014436 239294917 793365034 969723987 999704979 784838439 918729475 51045393 83275970 29603879 300972878 248796275 795952892 199223057 465633636 323843279 902091033 980338357 991228008 583035808 729661472 911539574 938015381 695063376 998282985 151987124 167057654 767440978 805947823 147561035 311420648 656341034 809626955 671321589 850151648 745353740 886370837 651243324 779433975 300972402 574188808 564708597 762199138 902662096 919788397 887714673 974143556 938678927 939063791 153724973 955602061 288383154 436097247 492567035 765040551 180928691 501839222 76781240 485859374 692140268 881300707 514305135 988869331 299605417 847861813 90729667 247217944 197931548 410533810 704091040 809982329 518050318 561612150 10070929 109998780 505912937 539876753 678473364 976726573 339427722 553322600 598045225 923832292 525408626 696440259 746966090 852334922 782523529 996721874 548478022 697363117 210857990 816779467 38685882 731914213 634029655 748266045 315896186 990365229 357982297 431329773 932439438 990339005 604357410 912070941 241129441 726299527 885175816 972868812 331443054 389693501 159947420 372467754 120257749 256339908 117866127 463490496 165572694 382196187 797316005 947938053 516780266 606460086 235950632 864076774 56900703 430498260 142449739 950448584 938733141 943988012 709044709 869734126 255552395 326050745 631191859 912885877 840309583 988712238 496371630 562665736 564565767 671049462 350807327 351635426 479153761 833513204 352279781 937190830 20542009 272215396 333002973 994565594 717159780 800941222 634769556 933613245 925385100 991934490 171018590 392647064 36788848 853037396 89314900 608705339 395595671 609534435 108649517 642241891 801587083 929567016 915422834 965585384 878363557 931572298 900724526 957479721 273100293 767095883 467204069 995442178 38041045 657147739 212967557 385741190 419059628 915933550 885205182 915755323 121427456 885891768 900978468 937537450 691301160 955794245 328112038 595668890 355702470 970492991 387681300 709208971 472856129 945271798 114508862 210132349 438136343 885582522 885883969 936176727 108621787 254822366 544089667 905869902 378524841 525268408 947824650 963269657 626944735 646374217 120664174 352716631 755128427 982106597 815827286 860787476 522483416 557817335 773391179 976945814 976504839 977777357 282840132 939892687 841943879 958266091 662959091 737411399 639211221 750445873 700048280 772675938 885425507 900462732 759810470 962720975 954853576 974525129 904724537 921618943 554482177 641597226 13486100 947296267 927182442 961165530 31794854 37059253 961291301 969417471 989671804 994489541 724604864 946104580 735920398 978502468 455642591 698912854 94534257 256076875 139763368 258455328 771929316 971450633 786422627 826166439 838012547 840222156 581172064 906832802 66473795 204895389 494069695 870736534 574715075 903160744 411097295 537274609 960925262 986210956 278948366 372170462 893932247 921654050 737936788 794553017 935058333 976550354 105917086 224311180 600035791 704110997 842129639 982298931 435701921 459061137 152460565 743882572 748109221 805807540 873266112 873728428 380876142 641331612 373970554 887119601 749694958 928278165 612287668 960615185 884701410 998879688 897751325 975276865 150120866 215861643 515960415 836797073 439338203 785854153 609027416 945223394 238964701 314144010 687529670 803917121 439938736 481320067 439384434 940192784 555282692 823849195 166411011 370923484 921153130 985758611 282706911 457677341 619616470 719971809 534193446 654146945 945373072 974978271 159099404 219320355 215259442 589792257 54970852 215494756 829546726 927624328 712088986 891882612 768255634 796724134 396583583 842693763 192902502 432930379 710284733 881036254 986111351 996333360 562044202 784634515 867007270 899584258 90952886 116560826 160430861 209862738 618186975 834492188 805662800 879240366 988008100 997728276 546529052 905187341 56862615 380865359 345405920 583806619 18032189 988203804 907756673 979771984 329362094 973630535 176373980 192713209 445164921 930189657 446490056 512953656 312736175 769558590 547447494 841720454 473742065 826545352 901320205 956002941 227443634 473130860 776011306 932330963 601360722 730096593 358349997 509392831 471442341 768735815 192701296 634513053 506929598 670105483 234838176 938640442 887832853 929463756 817677032 913987288 483855165 496744258 150020962 773045208 259033654 353109487 537262219 645063475 51723762 340391858 968167181 971857191 887972450 962822873 852849117 892552067 920022705 985931402 681209752 963879245 613459459 723094563 648047267 664614614 433999748 922455064 471643658 578916181 925416761 972568979 923730541 966109311 662561545 838323653 533658228 611713186 27466636 506435117 953654890 992774845 896648826 950076057 512630918 762894329 508240743 712947726 645452655 758186681 416341795 505558688 889180831 921870418 513475065 969013586 655130880 970183221 574867638 661958307 118762210 220398329 217752044 874735112 965925948 972204320 667035088 988894691 184570443 883096819 66766417 532433564 519253031 703379822 351600465 555420884 272084710 394330211 513159228 513647372 107960662 675839989 796283726 871249618 977933979 991536149 446383586 954757209 355196967 523960425 821902989 928259415 142107870 914428969 186850771 852029282 378293815 748314482 659545616 721954005 122775270 744648812 878132769 953312196 538327013 873581292 68399099 428469328 229076756 299553579 639462126 946133815 581770568 958830896 550637827 790382252 590693311 950661026 736346678 821433157 651343613 703757581 377385130 438306690 302435232 458763476 268435798 725830378 687848063 939650789 480488301 782367035 492902109 961519858 374849458 920693805 745770199 746187925 473651468 864854743 189522050 926032149 655397746 776011405 373747562 573057289 213290148 348307578 527013623 945096513 966659706 998972997 20247148 636755064 857366927 867756216 954472299 962510812 340522653 811670156 471931602 737797018 616545283 736589601 138557593 725699596 364531108 739128433 6733498 538942966 843700454 933551879 184877363 686957182 936645752 980138863 641607745 858323456 692849686 910326882 98038149 450535085 679563358 920809440 288663590 415728131 268064172 661162769 620131131 623177099 723785683 983661504 988821106 994418662 887499825 932495308 592158037 748693131 513829273 776153173 434376189 461114185 930260280 952310548 177155342 971681294 589629163 766373573 798434003 884397983 325972308 887528801 421258819 835074828 445188296 860681837 364367320 414160577 100124894 621089532 220068292 679311793 698704159 854362157 309765115 833819840 453272905 540971216 446641656 993031414 947576903 956708635 255918014 332731397 772544360 889975631 366356841 918934103 671248425 867454767 728777446 773611200 469728937 574409749 905765580 992008150 800729448 801809628 490835508 959119536 753941982 923890798 82584344 591526912 775398446 852775782 672167333 699604358 278147546 489485126 960217172 971875451 424208317 569572505 428297984 820582599 882370923 926325000 56084313 606230110 543870075 636797995 669142081 918183031 817493867 941984577 315370748 656706747 349911832 619907580 292716921 436587020 293034355 445746029 849110198 877073812 959635065 972241513 476638930 761913441 960255252 969669757 221215414 828225933 715754379 839188026 506041087 582831152 548883873 591444108 809894145 903563051 691095079 933100592 630213483 983227764 731596301 790513124 822464044 993769972 720007162 947576956 630519555 991720034 860021504 918881296 908187914 992817753 524596491 848356631 654044240 715246812 259663843 930459598 116264935 871020163 681684739 900808303 337367909 618779576 226769633 590451507 170047662 538304356 339580129 345556059 592847447 644411412 903046455 978063597 317525850 989913152 577382840 934457439 823693829 944645232 569675459 587060658 109601537 530365524 48217717 668151934 341100248 791686662 972126517 999911849 5767369 843568075 257267143 640239194 742734406 919556656 472780857 841821173 684309467 878052186 527899558 556486007 446283985 537045089 412598069 840983226 753572532 781448435 559235904 606865694 769912563 966377192 27598326 485008976 894105120 909905397 19766577 502895375 759841595 849602136 574793022 860052216 51726805 359299187 216270295 615370275 764076495 825671502 174252776 469644724 546431154 607042086 565970001 676309593 592633915 758238003 519098807 767218795 336137724 353107215 630038430 758626835 847414667 970314703 615719306 767035889 528172053 528816511 761344486 781011370 499883826 600963269 873864375 931151934 345377873 803380914 812987061 820280744 89569546 904583799 933424438 981826643 956562233 982862626 223282802 837254518 274329698 730735420 863910490 931134453 315907798 861743413 167242691 984878340 463858195 770471224 995141267 998025215 798389695 950661331 99699923 680414304 813634004 822414700 936631860 985335052 18770383 672626987 526697539 740542712 106081653 366595817 694699300 899248420 370412780 830580096 885250021 906522437 902339328 922521095 693567096 703567161 6086335 791075506 19120275 104928259 19035948 539378235 995081470 997520185 499112022 988987440 249377852 925496471 882297713 943503918 247670146 960781022 759783120 876998629 273721687 701957867 580597687 964670902 438171160 834451522 845411584 856277464 212896398 353802564 640244711 950805803 87181217 886793773 351312305 935042351 712736237 918214444 459814232 611905679 902762139 968071865 92541416 698020646 542198235 910902579 635073818 947023369 425789583 443561786 585822060 972082241 56917652 763105713 483758482 694553198 983863013 984517407 134700492 513832709 818884052 913750534 768409812 876265112 879716613 894410516 884677061 983266854 808007550 905895330 891393732 979920857 220790927 300416286 878398175 879521026 54796199 364946781 82432326 460960080 560234184 635898538 622258753 922461629 144809438 585776979 825096280 878167386 886259797 890222597 574291162 722459625 41764219 663230747 120901054 410442101 963596694 977937314 431440504 475589463 971566617 984206721 887739442 981838264 671215171 861969905 655772210 799017610 508686357 584899473 171279793 312878416 982202534 999861002 637421113 762302679 577285612 748918022 928761480 949958300 741345160 828671968 544809126 965313051 293459734 740702577 382854988 727889761 843370285 922792892 722857217 770769317 706641243 982054563 239417899 247570603 775296148 825623716 451305322 845947774 346076139 667890987 925694055 969164045 978372622 995765648 843436712 930497456 606230418 833696259 837571402 962662161 921242517 991365704 418158853 850706233 283726284 677767428 84825667 391209392 316074514 915703138 425869285 740462935 599171535 961687689 194330915 203043486 941529251 948524950 652177217 655651356 31995685 839133859 445596160 978712200 419141208 616440312 16917754 715228025 711954010 948472507 635775923 730879948 377019818 805408642 828178301 918389463 179770726 349206345 183143411 819557537 278451088 322305900 264115079 730438362 949409517 964334277 686134179 765877594 121632383 789974740 54956279 88372180 228250242 798686003 882964024 956013253 322443189 543125132 89307683 935377073 143106237 956277425 847634198 888689698 467647210 582575497 648757443 761791669 51715647 402334881 396296650 615458138 311471882 826754891 787009679 962620485 646653105 859313001 151848945 432800759 373180073 671430507 48749789 971871952 144444982 788189330 856735360 940026112 579009160 620418468 227317687 806241541 281472247 948487525 263514857 417462608 468549270 664049144 867064558 918079472 662252989 918561612 494974722 685692843 597271495 991796847 440514022 856338565 776494951 820204814 168141087 487141315 469746954 495925036 386766387 913103646 905011007 914238006 599947123 679633323 359139318 458500180 647287071 799918061 853711282 965741058 319180027 672423432 496574744 779590174 315521864 843061684 212298641 493359613 520986989 694035934 808669074 855330982 377902555 951074455 381277281 730925365 617815317 811233200 997741533 997962320 763813040 934348629 127769269 172199130 876297047 892728123 7161723 514689331 710891253 967199545 648406055 979893835 344749398 669477964 121109738 818033793 756365683 758335270 132331330 742445112 456668609 549009837 17857345 848511133 385570475 438018311 973519123 989334581 954629573 994510992 123951194 723685189 766487796 771476104 725207402 813770997 453280820 603956185 383984336 450084076 250937210 656198447 361738397 430407528 861536300 995132296 214914733 696206415 58138502 264305364 601192809 964425487 367534403 616262734 437320315 648799010 639838413 822678422 618661699 905818317 184784196 740397208 133587711 625943983 250602403 790115159 8605632 748651830 328802319 850414948 436017651 681948967 763117866 771228594 678337950 965020524 894361204 987837008 9885856 778081738 894157099 970887592 729762602 903336645 470270403 985131967 326350626 812335114 30134509 110086045 382240497 408851521 988717501 997112631 678465215 849827138 115358303 587802208 483593719 729867200 66873311 854776830 446166317 717885163 653751516 809450019 222346526 536134767 941557889 987223310 444049264 573054312 360942630 826596277 807983889 809115529 451175730 553321129 770910258 853017674 225564438 644458873 832419316 927763968 100322484 149489602 721269221 978972227 564785191 755952220 330453749 671217976 58216225 436645472 645362784 801642866 659028571 704464169 719174956 871315031 191816701 562547563 367879739 781919022 626788239 732370913 316583046 788138982 786703027 915608039 848902042 855652753 670860642 751669101 565378691 772479474 82397785 622674867 759267287 860897395 439033605 654931732 891223490 892765678 208146178 698769326 904161611 958705942 649371458 868085300 716216074 905164641 461196632 547322652 950629700 980919476 218588265 745716807 377393297 567633959 787161113 939780707 442893217 729472002 157986602 542991936 875444534 937968044 130834624 963865826 367004896 968249588 637949444 876343086 967280655 995781662 180540079 778826538 401245376 499334146 68262464 172007443 314848039 890240675 835190371 859272138 147046914 174906607 409387973 876081435 137565303 785232606 422614359 834653221 405100392 871295603 633229757 740523007 140433252 273749866 738993208 976138293 871885342 947392183 377702702 821319854 797817927 910744551 52378283 477309202 343264542 621606797 698011900 995624871 282663196 831772931 574296280 810307891 412976937 516148846 864397391 875815234 334690464 774627647 552316672 697145053 427592381 989683816 987178284 998464510 339112888 508188352 133577824 996078161 201842702 719048198 343072150 381106334 165188467 272062346 204819742 466764360 873046174 909003896 83514429 771531233 76615239 775475834 6809893 406222824 877093381 946389578 182423333 601273530 894039834 962655347 395876641 908742548 470489960 613671710 956585623 966412435 657057712 731251454 15177879 782965606 680039912 729120253 208355687 922211211 737237056 801839057 403005751 741066229 256369560 757945783 507233329 982888660 678447891 905008613 161029210 586766244 811012392 928672051 679402501 736106768 317428529 376486602 914562480 997542720 322275516 588203320 906522357 955597325 366548812 983507129 500317221 689524229 212181518 999041271 530368358 931049812 501774855 827144430 615654178 838320071 158240806 607432589 51115235 170149431 905263975 918613715 493432199 929474364 549070731 982366465 611080631 677923460 456464004 479233808 21617346 46387645 183759194 230787357 45694391 526567049 384923634 537347115 583571053 911891662 240286981 460415400 363556587 697762670 55002773 727812535 748517271 885493808 243825067 616283197 468850652 921604950 484523830 911690696 102929273 109128374 949281518 993340738 759376524 953800521 927405025 946192234 708660140 823206454 298671729 900566990 233650466 693508535 933052595 943775364 430449946 683909350 662651146 814944433 263016779 301814239 460570115 886940823 711005423 937020479 70028231 737401654 621524682 850068848 709242663 721779099 218178710 986477855 807931573 856942450 68174542 973792255 744466835 851218830 472505602 607924221 367303325 714460488 726585285 854754291 837459961 942701625 991018038 995957235 849073936 968535744 424422670 912500241 424256438 948229875 579261588 921686212 99141353 682700085 193008315 358155899 223461980 824477025 451781343 851721432 644706107 651449461 67814717 497157820 816857867 989304701 14484847 914958094 390193878 747024586 228653045 627587082 503414201 515605113 490275523 993751815 952815520 961655199 59707392 67828654 984220266 986434134 516239970 710057712 383704841 807425346 677440884 966781113 408401512 600078410 726884723 749854222 986702237 997371278 908196224 936312286 815849114 971103828 759526789 935633312 582684207 698308331 414648500 833466303 98293914 971229622 214352866 866436327 889818713 949256383 289682571 783468960 382369171 773001315 832290502 951402657 868090208 975349836 526850044 873688141 241606535 916960231 293303792 296091149 836023649 931508951 586796831 630564209 27189056 369474996 564281208 580355215 136273616 784014604 626780905 870611398 277323241 758591616 206531521 361350598 584291031 825438658 754937451 988032251 872441230 992408817 864598882 921467332 790773769 998518648 594929654 854756569 941657103 950226569 708882697 966583350 371238407 477002888 933785525 951459355 79128188 159179754 248610648 498097709 628370975 996728497 650961183 915223997 760416421 866725008 902530354 934039055 678414671 835471975 290457821 429674133 255855842 458839373 489168985 815279978 39360153 251317764 854626354 919684312 320575218 556659593 198683807 204742947 109568350 207612287 919636149 949206993 163879585 982301527 103423161 276573945 983843416 996829476 313387996 342913999 411057674 721054022 367222246 614307230 357422196 964511136 528548368 548462103 389851155 787593251 382427377 485232862 608635503 619194083 399591132 855814660 409209705 477836877 534220486 765939161 731978237 980398162 407781379 592225910 250897419 341628709 108989268 200660452 947620181 962395331 481494996 908949535 516795044 634359981 861338205 984367214 19148343 650163197 274738966 983738856 460501494 989219079 550286889 936450771 534882963 540016463 302719269 872803218 512092755 614787359 736173582 988446537 249770156 266318917 483270179 544523440 341081477 961625741 195328657 369954788 25721882 188475162 666858327 823848152 872627951 910101935 459154147 564763620 75557950 745128770 469762380 970739967 79239385 171445185 721967193 807203421 422220240 980702517 13544133 329650631 835976926 957507327 746781874 851490018 71908991 815149318 445864062 831768669 854237115 997221406 208900112 410039869 308627473 931912641 953159005 982708070 632501554 885224072 100323025 215054124 333462931 752226963 761418286 936975322 485673387 704550660 705507586 767560480 844287384 931492730 638700329 759389463 501209541 604733209 445256033 694571499 10841622 450915725 868981036 951458052 328725762 408887871 381964944 806970808 655822759 695901259 729092898 938228006 314805428 752046031 868460351 897231506 865782261 889571891 101532616 723854185 752319059 854015921 105679841 448785751 740218463 776610284 909499422 963187741 821026502 960403297 568976763 597095278 436493767 523175818 978894496 993872916 734274236 838900278 313331531 849495953 802440431 938071954 195782100 644569710 931900798 932296578 34058447 64005462 470540995 673013676 1609171 793696919 314860403 823169001 101522012 828410565 752487019 767368215 688368270 812289809 133686180 688348977 584939247 964830629 676387611 930552325 151183849 190013480 938270228 980074100 178049984 559866533 954055668 979803615 758809524 858829127 260055771 413045288 687302952 723112092 851357089 946857282 904191967 990175737 661461585 776189543 15241269 698831908 817329770 940453691 293735893 352607846 959693029 979316899 569301094 851589881 717942586 847428216 904347306 977432736 173376143 827281043 86019896 514179654 435591913 436050792 350975893 482297220 980016708 991559831 557677185 568203910 752842847 849422496 63972139 257678778 297993724 392909265 744262593 750521479 476546289 639800652 45926077 772173180 289948709 572568209 411025634 857589732 983309334 988540097 292021856 427935992 41437817 48368391 379781239 546817999 291376372 668344835 206920869 910211125 432500619 465245244 467400254 945253511 926136059 996418316 823408374 868957391 310866253 852692670 675201386 991700137 10737142 449426085 83644345 765973265 942214868 974526123 438816289 859359732 363381912 953363478 118164315 320989137 404493515 875603859 35273668 555090070 775346347 953736554 887229008 899325855 867539997 879940810 880638159 901562892 308569663 833573869 989586946 991832018 859729523 902340656 554000773 655628273 940912051 985950048 297940246 339383809 106402124 647114763 938062075 992761323 296158470 580563932 435421190 687500080 208584184 488353270 42772538 762480710 171470724 626039957 619020243 731865021 566378113 657617833 968003821 976704483 925837582 935993042 360595556 638936093 464422407 501807459 462100078 942885020 76928961 251972396 671709916 726201295 99966524 957105508 230312613 458600860 81099911 865195984 835616829 965094433 38339010 798195134 629994697 653375176 78688855 709854731 595517233 863904898 263285271 929296605 599284230 663176144 384160928 409983186 223654498 512054215 279683245 352224969 954011736 996830872 955322873 974012885 177521505 880504701 438372850 547967854 559163074 858659557 355023235 717978503 584360708 897342488 789171216 922264538 387671083 485780586 559756688 812427012 747767723 823116156 918523105 977751319 314443724 548060320 55048115 695367795 897038826 945520662 977980634 999820126 737198311 895291128 462904475 505914295 574725637 889289091 38915689 698216730 253782622 833360606 465690875 754768276 672304052 788234826 158560469 808126654 724319215 788222005 537188833 990227292 910261381 990347057 854859700 988930879 942884352 956336323 254527360 331619592 565041271 768928326 120179233 331374128 637317333 989804310 761235215 941729829 936636784 946457435 869314580 937058888 739931496 975132734 115590093 738062286 316794930 767333383 415619045 961558809 820877824 900852014 428145016 601177555 801567603 988125273 222289281 286672847 217153509 985148821 965890813 985889323 56992170 85539814 488431072 739886409 636192420 718967728 586047641 936296603 625342694 970316727 284018776 966092371 397461638 736809097 185507989 938256638 492415461 546966204 959387006 998886791 336952642 508938638 316416514 761056692 435405415 527716803 942621119 990758724 408482559 562541430 920842570 981003404 275109705 835497878 779838429 845131048 318318759 696655596 344540487 466534808 86530111 242133303 28585773 512831235 677145119 908200191 456678325 591203236 65326010 726551748 10096828 415054125 849418651 955183619 844412137 989448519 557928423 874878342 213688194 655834398 946559635 999110061 911660256 980703575 584438689 997404504 800045879 801392011 550156672 883829473 525153533 918765389 404795139 589667330 17626232 978832311 206493607 526937115 128588212 955568613 817402922 990328674 915139189 935968517 530877195 708273938 243237230 389739769 405051526 958170986 836943442 877667341 973438324 990041037 211183027 792482354 901398016 975757140 592521940 797430858 896520177 920081691 20169574 917736021 361525067 529933112 462467513 620258943 296696553 955373207 275597655 649202492 265402373 631403950 683878166 743092573 280024309 650019111 530449936 725813461 306283737 669751438 531260433 656096732 909614515 999755202 455369158 999889966 279437329 323244769 11664552 968874467 16958875 821727948 219180546 907497022 793763300 890027652 840222107 863218218 731599466 801644958 921485852 934604237 56906456 313364008 472285936 993144997 902585463 986842402 510335101 572588706 387532338 764608652 105288849 327905551 990285095 994985252 384574746 876921975 654087134 908870268 515731217 839814593 393624938 927784300 161195730 409185613 295163081 354824582 337478125 956060090 40603714 660813261 687195754 929273915 763673904 894620861 837127478 988278725 804272079 835705988 498940222 952202523 90204001 712181328 704564388 832287066 518273885 713564993 106130642 804265005 935501600 973173091 714093759 863445889 719023114 744174808 256400827 679703209 44248520 337111749 842781592 975107438 844592251 917439430 231328698 477438722 350774634 908213980 875747196 990584149 355844197 890735241 536857688 866460084 68496653 192988938 402507116 722156815 310336842 693357102 249340386 941428793 435311543 623156365 726374460 792454468 401164202 514351442 569799509 575765240 465353508 986901273 541549425 875128938 936505429 964121709 233116318 788934219 235004564 242320216 752255755 852477289 546653010 741075959 932509718 963292509 115822439 858389384 833184914 990645731 975075848 995693612 224336865 901395878 796583249 907735063 6612273 616166469 150288824 621402849 658197711 672472764 760866946 910115531 826841172 901279405 272618977 363407657 427084660 958638026 886709266 927788228 459391410 821118360 208050839 578850915 377449055 397558989 417762980 561432047 846184631 891195273 931593855 998733684 818011457 914871571 202702400 363488606 922424267 950311877 931765226 988193227 147671626 668417259 83495027 704031200 985590707 988529699 410712881 836436860 969549901 984348989 82836235 662404950 185590361 945905267 715488626 901239188 999890553 999976660 193159844 892258097 354566195 371905676 808976739 927506608 895131852 916389870 192613570 397743042 496018718 722405483 305156401 480447715 61339439 471152627 152623178 255883686 30033581 373165111 377052474 998560243 34659104 682373786 97106842 221057080 256215715 716987261 92359713 555129134 260241049 298986365 674777475 718605468 132949926 282379162 319217521 815444202 833014220 920706474 933569670 957363506 752898568 828467832 277993053 692825748 459197108 748207610 380496129 900343630 29920927 159956419 791214437 854866703 562903469 756389879 995706534 996171565 91594166 400143963 158281389 811832564 403372461 843885209 743702357 896712238 552914158 816528044 9637330 56214072 941617241 978057135 152853482 731756279 255441612 764181582 358537872 850971432 306784908 725550628 152126000 796021499 857489575 914971868 438840982 897377648 211338302 893462957 839311658 973808976 781926761 995943259 456070526 689085415 1384408 586335929 350786528 745222759 793867035 979443142 87684732 352380727 788518458 817333383 156037442 927342596 262598160 569917473 709731943 743249659 293416009 919107957 496818069 788491929 462545273 637161425 771426256 806257135 850834670 857160050 299705997 437410952 542402779 901086554 507198989 708320733 492560728 711487893 572490057 665844807 228248693 623894410 436398511 536462420 715131296 867043918 766547466 886917998 379783889 950026187 81093250 959218159 235408212 339368352 110984008 634132898 273695426 581438579 527287277 552916011 378671024 449883028 999337469 999758387 567089382 745887983 459760536 533845854 991468601 999465483 713717566 944294995 471844277 762489086 397233795 690187321 378930752 649376039 230623322 692790266 120147957 287369042 610339618 750829183 96436275 667419969 665001672 845956395 841277723 883416176 971307857 989514672 677741713 878483145 822439112 948991309 397381990 481224489 741345537 845529307 855368741 970896532 890368732 979073865 813574511 913779224 98012268 425947469 845284774 847975213 169749490 343101156 338051443 780721795 965091870 977774908 392474188 449953778 402023372 924902632 747700038 833058038 769783811 862280701 210794403 924926050 485784713 684720290 669767116 717623826 672210448 762974628 791541673 852450160 451944344 467715419 692972316 871908722 711036666 922444129 560650730 635963471 197776785 356096825 181423970 296939607 749834942 803039680 507468898 899099708 963357494 999441708 685649423 861619212 532616521 548543077 299011195 596562615 851106421 976975459 74939212 247627829 392058623 747739182 884058454 918150053 578997414 839108701 928556354 957451868 319105214 727411369 23766238 756113744 609947316 667415673 941787192 962426633 778849832 906691272 979018236 990023393 541949260 679815744 770877472 811270522 751266306 760079066 778018518 998527017 192550148 739819997 311006026 883139614 884657466 998314722 339832239 474799938 346118976 717806218 152748584 313434343 338624804 643084968 457482673 860042668 629191339 716564219 573399855 711180570 932251845 955964253 754707960 778906244 892415370 932988438 479044216 945267791 583362351 730277026 108122774 763554321 188471115 382182378 316456658 459162877 364259087 979790490 254259901 278022449 621418466 938422578 87493055 769161293 162393729 691495763 764763115 930355316 307426168 597468432 413454848 558230438 579457407 587308635 593607740 627098912 512462239 909047645 644871981 885944771 525185340 550764047 505603131 993265207 164902535 849609061 338479817 881601563 567791596 997563308 582110952 795481361 635204859 748079514 208831198 392238223 406629058 833119793 409638451 587223049 487507198 619038314 402465191 881122504 516420855 949778252 517907371 928216192 171444593 994634457 680585485 993581242 653065368 809145792 171047688 202999315 459883412 537062374 877545529 900115211 930901561 994651706 257054668 679117627 602628893 780070258 641922916 773137551 402311156 781186255 699593704 884086705 226120401 259780176 461017163 891884759 457774178 810533451 214267096 909110087 88462734 94144541 444613238 928500532 475855539 853045347 448479950 603233939 949451766 984691845 990479793 994610768 103268649 378595651 772137590 857365968 487358836 890320804 773241493 931931080 785131980 851480997 492518393 701611728 976056370 993659780 982180198 985153411 706213528 979884104 108853593 769393191 427985928 845535685 671706021 700937509 942022998 959309505 339883148 897691669 606659435 720811370 632960209 802178609 379301833 833221290 973505958 991893335 60679728 386077754 91189170 943699289 979239144 992271876 446612403 784747944 299914048 796334250 370215674 530283721 520580166 584424558 113759594 485123587 571943777 665879015 737947657 776787795 964536943 996410239 993540373 995892817 170693280 804566304 120104442 879664319 566246409 646316010 729759421 948004591 664843725 698383727 225382126 824361159 769501372 847319940 336444674 801948699 860564762 944859928 393262718 641535051 430010785 739789498 464773777 852007401 403056235 719582991 107882473 538976042 913733324 949197640 834716809 932586217 459965191 523785475 249615553 362043002 967379240 979071302 318432127 594669434 772444136 912324267 942168834 958466966 655292308 827244866 777744851 925809534 65116020 275066982 854687340 979870762 856858282 971024774 52012464 883366958 967325263 990413374 879458686 944054115 621352911 840412531 321504438 920213443 460754331 666071935 412554111 858250591 66835442 420532350 414929719 546110676 688468438 926275976 782923058 785171595 577471926 847769714 778931012 906098620 253579388 606749447 837998078 866038976 88623946 167722847 976265982 979102961 163189164 905546703 631032781 820068384 322862817 517373389 893304473 952607850 628618858 974628596 598433299 837382726 895244410 930374876 353627742 808265126 284419345 787581304 783389394 995371329 909639233 950700427 32493822 288961939 566585274 610716113 991930501 995025984 919456443 994352388 279939929 543667003 268547940 700280513 714223854 730026851 863878838 952179245 957346147 990064445 779736599 963373598 504493796 778054714 356851418 965230877 478752610 712564431 557599576 685533811 835847832 907994699 54976216 252446367 377259153 934885513 187056885 393574037 98329586 529168928 774674653 901019058 215893843 246913520 446596114 766817631 553645216 581948069 831880393 867485291 355214229 704013113 289895069 501661840 607460090 934577550 943294746 997308771 431746420 606918515 10754790 175486541 963772706 963977735 450992704 516435549 626535437 872751918 779960510 963747364 583239918 706758188 279089206 398870310 840590716 918816134 187985954 479436786 993281867 997872704 788931854 986919340 971772640 985344245 905769913 975366024 391346903 901072671 849599315 995006572 214109446 307468502 947904072 952800787 300346801 894338340 359991141 776915477 325761754 939319447 244756679 768382118 199818943 484858777 151647182 206516540 36454030 852094177 602198499 759494520 232721488 331270540 125930851 915157755 896676284 943409217 854852995 886101125 653042587 882813584 749303592 979368763 847318589 957697901 128371672 330675575 352146878 724793618 482617945 791032768 582800921 587516702 722902719 851399188 110125937 889095930 706543791 804555729 384728361 529059115 221684565 702306774 607086063 924048671 661501875 732639000 684411304 795283643 116807954 533907964 829303610 927431304 937374249 964955909 60113783 603687998 651701507 705768613 792404034 813484843 480900439 702645785 220953877 568253246 966092449 991724283 429032694 593751751 812962957 948707869 936691122 966298690 71223107 76678455 575214987 718915931 945680563 958462534 243781287 905840059 908507334 947914452 970399594 988054052 764469299 916358144 999760044 999778222 657571807 769518951 504898152 689309049 145915122 546234344 299533857 836245735 737130244 858068359 946339496 958008060 432851506 932981866 500144631 840288440 257976065 551913334 249840720 922187787 559138533 872189785 582756333 734059585 172188217 695432640 174051451 210069629 792594967 792892070 35972825 750499960 73772491 433640113 370042933 681425442 10740616 855045274 585269558 890335492 743989725 975185815 962793259 964222225 153349198 507065660 928470359 952049071 200834255 507863434 132841339 360264064 657934113 976182217 799878212 923376881 970647673 978761401 229712381 272197973 942288482 982687140 694227132 739800509 538846935 927324822 505209884 999155194 630859052 916624648 683424173 833984901 559147911 834041465 397186231 483131234 330621735 376347653 865499580 885852256 792710331 980938547 675492453 918139208 576076314 685804513 979376657 988971711 983398793 991648995 880775468 977439970 431148501 700404687 106975669 450880108 583458745 629038592 594771514 709881139 798208156 974250556 757861395 996361094 286485781 792939312 869143370 953920643 382108546 686164401 311464662 459565494 50083547 152260819 491999262 992476271 783887578 813537924 762959886 855339640 955565611 999756722 58685134 96998267 818487595 971276018 727365544 920262071 574854593 810284453 254517023 596985645 547321522 695196039 717055228 724158262 628404312 772054207 441095067 705698711 267405622 331786825 351412735 909453244 863521525 890435849 135205636 677868870 509322995 517822812 373444768 574245600 597906409 754225861 676174001 730858450 264093754 876503558 345644923 828229369 609438532 616955604 787105857 919089667 835890522 936766067 94704906 333135697 131677551 993599080 687594638 861237970 61484309 563383681 289871990 353780176 795306694 910690927 195174535 820742901 920750540 990539694 206943781 729406936 840580071 909322578 167220206 547902131 893846500 920209601 962357158 971601931 274138698 484428659 384717543 715880106 914762609 939923703 290144201 843127385 295073027 528052148 624453728 980972897 352096863 929862907 546648812 651383599 429751708 682858353 648683357 849079118 977712776 994398547 341831914 988856290 387922349 672277665 541337208 994831051 505052807 706872622 820635378 915351265 660763785 730952953 207603734 753828053 16436048 867460445 400259838 664331981 231547657 354843767 929746874 975670297 312667441 451060302 539159516 816200704 761814172 896978286 283049131 755254161 22009018 603221553 476108959 597235594 397739822 465968154 696321988 783442606 758192295 789182137 244709582 982232133 784065666 864867222 666997414 871543024 838510996 962124123 778889948 863573696 775727921 863621941 65187318 304126225 760780939 903588872 43882754 160882704 392742317 907822135 856088001 868700024 436005257 836065268 107961426 229578507 287962567 748362878 624200506 888052782 794575236 848750401 303295999 958249666 151997806 525912623 134623313 522446625 213879960 877365065 188571147 341095316 334809390 648588559 402833905 495708348 342885524 922739398 775673093 826391072 196656044 667326367 594212672 885901246 380267125 499628529 874527829 941781662 442190591 676636900 32592073 992992347 279144899 927085684 948981648 966540419 189760874 427412361 491667240 532716334 978780103 996184726 646955410 677823128 548445871 722732011 928532523 978753701 738439424 993234951 16252351 212079958 535623364 596774469 205503580 459380284 116955354 425227209 412739733 963820989 327483839 754314150 20601852 570651801 144283964 742411734 200905278 439000360 459270810 658652398 380990492 566310840 196375679 321807808 505708477 620965649 171255160 760133215 696296336 792888553 735627383 999211538 492337951 871673056 660103330 847621654 669101236 921897491 423042407 530610131 6166386 412916083 131772354 986869491 301417963 784106433 349488948 702513428 82632709 932799530 343544105 606018973 41389034 333537741 871872084 961756328 576361391 993194967 121484769 820402320 154051309 740128147 781881374 805391617 491796306 764167690 335027443 645128650 284905303 980956624 887737313 951122154 214009816 788815046 961779808 976450337 391282452 862973719 774847126 978327597 137177837 719075640 373863470 842644208 63293900 313429252 272615298 420830269 683625289 694349922 130385163 553209978 38112963 509531413 790546035 998736469 827103447 845044960 685955309 737383046 627392990 662543841 868431482 993844404 508457775 774043126 955995439 992244197 646580333 718820767 627538580 942256811 106521474 794247119 166081826 734944476 202878012 563838150 237227738 984177971 399758093 967511705 222891560 571266064 532223607 901391248 451803774 460760341 924204936 967575263 517927804 626212449 560835436 699840050 605094519 710561996 595210695 712878769 821152243 851192855 608187664 621668714 141869535 452606707 417540412 604265696 290711351 929961378 168681558 505898878 637675645 977877302 576914758 768575979 429217729 622659270 143375915 719995326 24817473 875605538 767346025 827484169 483941759 976901977 108097779 976258789 232381531 815132265 34536234 642842509 185866988 293330165 859028241 891870484 591747995 776760594 433674555 837842732 877445871 954925999 891369932 965566702 294164497 879524829 283891387 659839688 643006969 975364204 832424260 904428706 305773031 870076659 42883032 518770208 102453904 448782136 445339088 836319505 293767246 537172991 990098760 997689840 121659558 583406758 792910214 880657957 968649561 984291259 845677686 994303746 531485899 786837956 252081778 303902435 811489664 869767780 729451104 864553134 935142897 980519760 639300036 738164394 876173128 942767757 28206286 893556101 101730638 202505890 129562132 859008797 910385360 989093162 3613861 966319454 506370583 545802703 978481071 997438486 335770179 490029542 343639846 465955173 249170027 405150459 788838847 939366867 686826923 722782371 863017409 916276744 997334463 998329814 921525148 954044285 986522295 991627591 133338866 406948541 517920513 993377196 549874111 583738762 941941752 960137529 325966292 458628864 915700136 920510165 103347196 228400968 735368770 931264534 783650573 946851560 892930345 918943118 143647683 884219505 693193422 812567004 69737175 234428621 7290946 370577321 133571526 963987429 83491069 836998170 792193749 912741063 192480332 380464800 620941320 924562346 820629310 900772680 261130390 384890410 296013054 778484979 136116282 493248298 488559230 494352987 529918589 934922851 50270949 300898861 532210161 589627079 323316340 744384183 132608738 585340599 588205708 782813050 629686481 794981472 590809855 701861172 666898738 668621224 974526901 998846736 902889080 935318521 649694585 937378332 522320570 742715111 240131960 526786887 513276150 979195869 350395778 568844602 939926885 977531668 408568239 535171212 814960077 939769119 691295927 948218036 236245730 363408242 282554347 798416455 794422626 888948705 972152597 995896052 812538280 917518495 425182644 536800364 633860766 902059653 110146070 888206072 943811142 995732339 419644434 799839654 608421151 653383773 984041184 985057087 292826943 294171099 954380581 996769374 306021911 542051061 968075077 980978680 880362813 986225997 870409538 934337532 990748382 995848091 332045501 838349615 574244636 600768135 213514913 395439225 577830644 796208918 539398996 873177559 47279409 452596235 62906739 74656855 372702301 970789878 494459974 834855207 663055736 867370645 73929296 214704395 653192393 976101530 836285156 972525464 108251982 160215140 128071099 770549231 333078523 398393188 25273177 846674036 61585754 869515149 603386772 942626003 803190680 918739684 823049085 879936563 471946093 913981509 588593969 878047082 759375755 842101863 677341523 889081488 541604177 547263123 735911105 829879842 435684822 511738806 98043455 144335455 7531616 812569632 776921439 943551370 202055744 986017791 711323601 917879933 9514628 780861566 994817648 996811268 758223927 877958642 450837993 615654684 633159269 882801160 38707319 347339288 125660520 255268527 269403051 774135324 165061517 356011240 601991913 720105965 345420728 822285110 707611958 743153591 412789761 728405246 700670815 902737760 575321871 720831260 84725746 129802401 426121608 463735713 725824220 974006806 776904405 863401445 773427905 789523633 908752432 949354999 594350210 687885073 838269409 922122543 646349950 989892588 479274209 647328603 234860632 394745979 4283554 525672017 556836509 672665791 85092426 310016459 815883170 844630463 926712774 955164422 347994807 910989091 427811859 872362414 846338498 877405645 163547641 391844825 642216434 912838244 191798564 754118422 185939433 524447763 9113481 62912232 590045479 967715944 204058965 883486808 312858663 900145728 640698705 730298549 130496548 940347758 435708882 844352739 681460623 955399428 757188364 977846715 505501408 597450336 881042294 910019370 664348155 974744788 46186629 243585127 488583737 765964271 318319750 490190581 577701862 918075910 6077792 65675211 385972038 583400024 678598130 710380140 217917748 683632194 930078867 940924701 355733750 856536725 999496252 999656086 130704659 529183610 354567177 885556843 189405442 269478271 767708331 933047981 648767734 970169818 354243080 926596868 188146580 744054874 193628126 983537441 215662157 853591438 705189409 849803517 171931397 606250702 402279099 954121241 977469073 981940565 529394891 628186973 774009667 933539680 837260459 875059068 627835367 776946582 785748523 840193859 271892825 752179122 210254944 794496180 597910317 637212090 438221804 940416663 656603209 703946233 573364425 656094036 354546822 831712824 866612615 915051574 119743143 192579679 117857609 916501104 684501457 869640700 557156185 675262346 154232901 272863047 605884091 943649953 385933911 584973036 547690278 620486635 570013069 784850039 632376433 700330001 63731943 631087504 978001808 993159039 409529895 947328454 376353550 688522167 737003051 911349834 233445500 442390535 63978994 429384420 336294400 368782215 888477147 913016442 692072528 855982699 537594185 775541412 729228056 819959078 614145693 868906571 95146128 620759860 878112451 930903364 740638040 781903187 649336964 677313053 801154947 865383868 353199982 671177833 868064476 947712797 153601062 210635094 655625956 656657275 795602239 880426108 293028083 723239077 815504668 860362521 268880623 623412367 877874547 962689388 156355793 518915575 664536830 749770029 59487958 710645091 978440690 979396448 704920651 870671296 687404652 869503325 790556820 889979108 663211192 797708044 241108297 411631188 842731042 932590209 34759705 603498736 866801581 949466391 824648153 858544298 109778713 155230602 450768902 984670341 960566834 992495496 327526322 600439384 673498555 746036103 33098971 235673894 82311377 486675207 352084574 763233907 244586677 273792380 526829988 642726394 736274579 760114496 232403095 406636945 129463919 588755886 368233022 536004124 783503258 894215558 103145088 273236003 59311307 956755900 329262705 959945103 437128633 484193099 131720885 407804430 244996154 610591834 767134686 886732014 800157864 946628441 275062957 885725630 547390559 580852046 836250727 991799219 259782547 889187726 622866126 999919664 291287182 567972938 916908380 922394164 930586542 960888301 784505238 894046068 912836357 985890231 351609993 800739682 212914852 547718556 454767111 734897000 49588085 250890170 844334794 905364894 36028975 107466040 418159623 519860993 546610961 706365810 105350311 619204738 236915276 412480590 332018210 591332481 375287460 403997387 701319494 978291366 222534997 679939273 708531227 824783504 792987822 798726245 206513227 528821201 843357289 946223854 756027893 836882353 312131816 939627195 112129098 599457468 862315402 865761189 537514002 695899363 368566826 609864445 484411962 507833188 959881669 963089060 442486860 861696977 152673769 548176606 72074320 282707481 825225750 871167815 329689633 389302726 779590954 985798150 149675125 525633247 942929228 963400397 525870008 659493063 471410105 877540388 873455310 910899065 944793412 947671644 869852673 945012961 836113369 942321327 222600007 951924318 638905539 809107403 884376850 961107566 39536163 120407395 99115083 469247021 374782546 977110444 818609274 850490415 192436705 363404236 364199206 933045564 206645434 873979006 822945830 878087932 529936596 636383491 317888467 650252105 785833468 818167511 127931503 241624304 908779878 977120970 412044119 514340169 468827037 969491720 89537829 157155853 773135188 900129136 854787184 985741593 742938642 772026175 570022279 651032801 262875829 489727498 901977786 997653809 75969199 794057540 616714642 828982176 401100016 770179926 513161426 768392728 663809051 925619158 328970394 391502909 524222132 766627197 147784299 566425211 344603108 377456313 200232838 594647149 338155694 868402922 549920156 592912008 593887179 702664339 339223275 811321185 465102288 499435867 592113758 844104071 935459793 943178904 578947446 961737608 997805882 998437506 661948897 889416607 469383435 856737028 781994066 974805382 28318234 783224039 936547466 995903126 578916333 988815942 149549104 918709995 364922109 471936214 145443059 983054170 164948951 855426053 391274337 810167077 388645156 469987030 62971842 536745826 57031454 471060365 621813963 662314488 683152831 954372977 720037995 748918707 461720126 779832280 57546330 760094051 800136569 804663348 780351632 934602939 279765031 825138549 9232142 299538822 667200540 712471370 666614615 951987277 844794409 972617278 873300883 944241835 370985471 564727336 32063031 730562453 766820633 908595491 595960332 875635105 519541270 821098878 351172312 728823811 907117442 933882538 855620937 963698835 636449867 893196594 988901333 999436667 930499973 998878273 199846520 636120700 619673477 630854310 682872957 960909722 529298644 576991769 34244613 826424858 893230599 971194136 731175900 927778834 143092692 856682335 903150835 993589280 104159463 824538853 312634223 695742630 87880077 721669620 729655337 799375649 276493341 294018532 824077471 928281556 475597995 820073620 288541030 882677109 771740194 918319704 251479297 510147935 260343575 469241965 77958265 89599573 941942159 972002795 231488629 631688635 267838184 764344126 668488713 916409900 864075387 928097014 911299099 971760946 859662973 933175932 231923872 244127008 290061839 782051520 205830236 823351687 570616684 969243982 52000704 262410824 314736894 628197635 955436653 973003991 675706647 970079764 704582494 717979603 511257467 786739901 345711024 511197122 868765608 960005418 298863787 906761623 532066146 850538054 734314644 931614762 752364697 958246989 93507465 391879088 6827942 640159189 147274800 638756913 186402440 242685243 903404086 992939193 647027297 656889334 657766275 905300228 381028525 561510640 952684241 989747191 52217160 882309725 175402608 220301994 43413610 205897669 423385077 604366901 835656652 849638776 632260559 804573086 7151933 697771185 186897172 444584653 391180474 463363767 4423672 660977384 478017155 665520825 138167990 803169459 676193011 688269963 563790532 975811335 855067450 861189888 594956653 699395370 841825995 865764198 395346250 887971367 540743320 904916332 257327830 930827368 100950045 562543691 419349357 675233523 884705478 988752173 493030248 706584951 41752310 743025186 624415086 886112641 590672050 899764573 619593703 843277780 227706940 520674961 495116025 653407698 6464395 365178645 498706925 916346026 89560546 376454575 104022670 522444338 850536531 917437443 958410176 981207966 374077250 992850407 474734384 578755134 84739770 658995550 216680464 797136754 342960619 860009558 188862296 899408832 593455065 864375195 624885948 926554239 709719985 982499273 915828483 978076068 837829248 885543474 281273145 662647539 858580253 926919773 143841719 786735457 225728643 675290595 78452542 378084565 887232800 929495843 855620383 997866846 209030675 712648906 312307735 987412978 169247685 752468419 424157637 509348838 43878387 767285400 741323001 972555498 377574803 663687637 440019150 893891538 86042059 786455548 507354846 893513492 379191236 704411379 344478457 823835743 120421358 470594581 259942973 393566962 833101288 982609765 111960844 485031631 72999130 816124998 899039577 951484105 522851012 859936911 157554309 651434712 163336034 752315914 93140413 950884000 104139214 329988803 118196884 143014508 456623481 972150933 179913125 522550008 988510175 999763237 762348615 807701534 184437741 710394025 615392598 990881745 224898718 806520170 249858198 708684015 860765799 916636609 940291951 959890787 218392758 940953864 610814467 650142468 692484624 754819836 623128061 889741004 551009915 838958985 161047390 609991136 302420043 843764792 753487606 957503032 900926841 979314540 834658794 948731963 501490715 929848111 787701848 988404065 84062359 746432026 939194029 981119126 241588489 699552613 974694810 999989047 742736348 998843254 630779812 873044822 819433171 961110052 39351657 555381469 624630393 874048323 967928723 986331679 479370219 779892889 258587276 972204072 14501245 143503513 232005712 422211488 3698888 92755835 394367597 408104649 108274419 261837247 485248416 498990822 353299770 920648394 404797953 794303409 45621623 207402548 363484795 640808823 396417151 975180945 121101899 240348747 96320664 366457708 377858377 872381914 759215769 965280038 878777633 925879695 851363823 854888544 346126456 506585646 733917540 925961236 625611062 795161007 287440881 915907891 115103963 258010300 120623928 252876860 80813949 481345024 663961323 923567373 169209560 214284588 795852880 809193148 139784426 438083179 919656330 921206314 533934279 767139988 56721316 216182424 568946471 578297852 168252981 945424497 400109049 409576533 976344597 991488612 263798840 481767603 455017380 523873070 851035749 930060579 792570108 954531102 755841215 832187288 979158063 992565516 52735637 640934515 154717363 439646476 350451843 660288746 537017405 988249811 170409046 751824630 197071500 374277644 793486025 864372861 103270580 728066785 152197060 630306226 338769259 828908956 272920227 772981808 48855345 828711290 580503671 869046880 25411159 199009705 517206317 923260075 492455689 655597445 362810756 551535004 377860021 634474651 685792013 925047920 688229468 907713405 457641165 746425474 268105812 345346665 750522839 942700844 436370051 977462020 268494129 535998421 942863817 986649533 557232320 968446114 83530128 883398065 822135638 978979797 804667452 818652336 135620005 836303505 972135032 983745581 300689940 576355746 264010967 614873519 804766534 823197412 443222088 864334714 663409354 752493223 683925036 757493223 464525260 657289166 827546844 841951797 868225883 994746614 454923274 886599161 736156914 978737579 644208748 735583840 920647674 977150392 992734123 998991306 791032586 861534137 859987868 985801364 821446990 826769746 859312439 961659381 760237308 892881446 659957949 954677170 350080388 751553193 774206771 901478609 516079746 917523403 677436513 703174098 35034490 363264352 668772551 886392491 564643475 975950054 641818219 947095860 946677456 988394724 16845190 768201502 841759955 954609238 885622261 999532557 923307926 967595383 181356507 223507674 725061087 953978485 51331221 693100190 318591878 475704640 698490458 707813407 426479292 603868102 531291039 783478242 607052422 852519274 142843570 894614057 560965252 841218187 822219990 872610721 531823928 541759320 970877476 988727538 887175300 902583905 663985224 758194134 446686049 913494810 246198511 551973031 845857523 954666954 655373842 665518555 998729430 999717163 218106161 672560408 885130289 989380064 735363089 921485856 205763448 895732523 400411623 597705034 402027052 950016310 982393768 987325297 373064232 485956719 292771614 404049225 1367732 662095771 840338471 987076650 962844921 978089446 921828537 976063382 512341957 577629907 609721223 928628588 57449880 150916223 5772694 528354467 811063867 977896331 221840285 305620127 364064625 589630740 699205942 989781714 327425939 943845529 746244682 979253249 466479958 730489881 180824827 223884869 23840443 239537942 704917216 934824258 686243639 990150778 364125316 729353467 395699447 430272564 392472425 528000129 970324221 989243982 291974876 972921634 93348208 385079341 9225322 383464868 129288615 840732806 348770001 356894748 337720307 576178381 123473879 136394011 546343433 685968218 80979162 489199949 796534874 879921840 283884449 614511516 179337958 574472846 615813531 756196320 557481189 869236269 880225023 968111625 251024978 656049972 264204002 424607410 494479335 708197335 906507931 910677575 603537747 639600636 288591125 852432101 460624562 812861302 243884126 993971563 961126469 986036988 89124802 404831151 372293541 822007347 75506328 821129710 577971045 657099718 491314473 970551918 848668283 994163401 264274577 533067094 931675337 948144475 41957439 423882160 302092544 816487976 214208013 557690023 221591077 547990205 702583785 904342392 176418681 848216573 933201267 981229774 430462901 695069540 247941033 822263997 121547814 892410636 385660765 606383421 424053457 850801735 279468331 550916240 687031099 789331992 52562408 649452541 20048073 59479593 640843572 694476973 135661327 282898124 833967359 885563997 884988057 986674777 119350809 258533032 323983542 404325423 238232150 269402066 611812507 657309117 624000464 642038609 419996877 427145647 17250814 218261580 282841168 700397571 635212699 794180893 504331634 905526167 328454953 713059642 376713587 985926015 156869445 759102886 667897738 997824734 381792415 956034097 534650792 643857203 646014839 966532605 263781244 698962725 831950736 888614880 746944191 816277821 528652359 589773012 296523926 347924634 888381130 963698414 895488131 983702654 585426225 861338491 115664522 380558994 801700377 994443558 398440199 850947217 27838649 865593502 207552227 339741432 127361991 518506519 117759255 669902083 18551045 505383328 429313108 779453563 347954252 556623946 144512910 502838318 572548377 646319034 293301313 437305196 263938570 655783810 695550550 727969259 916068938 954523481 380035233 394192662 827162982 946321963 669388605 961245044 654338606 682775300 207052756 997445203 46038553 136883526 188079197 759951750 290798257 453145415 47905230 528206064 300218359 411028915 54078131 265360902 571161859 957941677 487869139 612941152 56301346 783735044 290011933 510249993 278530150 567880403 189627796 981516991 877078773 954094040 760719969 950238041 649113355 914196104 783698549 989171831 876802937 926752925 680206168 762417074 400962010 788515990 580953844 680352823 821748073 985677278 390693504 587165003 637759755 739295884 516175292 711348836 90315168 218560062 786589952 868069150 894083583 919370816 31849864 296698481 379134894 971206384 740909065 904355339 449402962 694097956 865222622 881193068 130923406 750592520 579951697 667605300 474233406 669063771 775299451 919183718 868310699 985708713 496352060 892190215 144077679 882204802 612426310 757945750 158354363 670638247 731043824 996676662 487136057 986165166 758957457 986545190 344548464 435528918 645473013 900268171 230636909 574487354 26680914 99711452 193129150 540397217 874046520 905088411 814672719 889186837 811283355 882781375 992764421 997184383 970878006 993676854 388289659 706252732 755730671 965335586 122146288 242503705 550059578 683806292 813190242 815047058 409162465 871849052 518275083 967033865 794396340 960041144 927418539 951704820 478438519 834166778 947013719 986179495 361694019 958489547 106764580 945384334 698454709 875140969 874798832 989569909 576745977 916717660 221453533 795201769 375231760 682027116 338793163 827791204 228892256 312845848 495776897 797594071 806236224 874369579 770466828 995759027 706693956 942568272 241119270 363254509 963024605 978373307 436419542 802183257 301197281 867296228 271197346 409810181 12045780 866124119 250369901 274057618 482504830 901623255 563286583 741358402 818666434 985320982 660362248 936513413 931578141 966557426 165235252 860666789 148700384 737401095 136770709 798706616 617094093 662401485 677648540 696626704 407504621 922129328 893573174 926477093 291073592 512926160 615397293 802542017 107601648 190277522 116042985 786648937 238709385 674319965 681962527 762111155 173333165 703371615 942577715 996017620 489867799 578091860 680533172 756728856 253206224 817781000 399881811 768754372 346028182 418284191 680495427 952352691 40326241 54624336 387052134 909799393 83186538 579874374 574972915 989830469 720960536 975770708 782113476 846306971 533017321 739010166 754744408 849788481 370245468 549535574 658817835 960220732 589452650 618459641 596583123 689764373 943271333 975901188 311613664 669334737 673589215 958426010 493499740 763292003 761776424 951513204 529707492 748322719 515447240 600213999 231232148 322080456 799335374 958939346 705550750 764188626 902223355 992243880 443906034 582069470 471771319 524973728 350187404 788293396 957732916 976418907 525388005 554191007 602182087 851400835 393032656 632942159 367604093 463882451 590406978 613513343 15051678 452350655 130235775 613678296 662524531 939696203 271231230 525528721 575137535 794159731 821618390 910770370 607406140 791354549 895672252 990811289 502393010 529269507 842242348 937404373 447109440 665314153 823776333 885068032 73680082 586850448 763473573 862071274 699498489 955039739 752213594 830612710 500279443 902174673 30216452 190593812 318199035 390618192 262931996 679399095 426739935 774480787 515621443 805837801 570906190 573721777 301481302 938265175 168682126 970413645 656284835 694848567 435992459 554803754 412340345 978128024 594892856 694272086 862721166 928652076 917187562 983356544 62428003 465304361 99298742 359423416 551193783 563451439 465916744 697161238 496790624 859896503 957576001 998458716 354540854 764455782 94082880 873780632 704547193 978724947 605335735 910091045 873897443 915898214 269161203 417487298 437132025 603389273 194243843 814018342 223901281 244808600 879201081 925957567 353259900 984496942 112920190 710674903 801313960 954390690 744162389 864838047 51258231 973614721 726583672 922307539 289043386 897915817 396353901 827952149 517603890 556993072 778937876 901097341 185698610 643145924 943874659 956025850 617581928 758438384 757854473 941372967 392158074 777308007 604066333 727970684 702664423 926665215 375327194 805006595 200572074 765981483 988966466 996159064 610426646 672660041 869383037 986844734 830931507 984315495 851210138 986662610 26600307 35722249 703745105 778559704 266048228 797759601 867669921 896939852 839967177 896523327 287258450 847403725 180507825 963121670 347347626 454065914 120918195 941833399 763526130 821889827 674476136 776484492 431623292 549288447 163192108 807212083 235904173 964618173 903777224 959291113 588441409 681790603 115193279 234184482 558459056 791143768 659347155 967859056 186239215 360177511 94967563 991865107 151269938 487920207 968707216 989746905 447137263 614365166 31064293 83722888 76747191 920111079 911185697 997792721 514386974 608212322 80395365 167837235 911836710 969879392 288511678 353400923 301594233 618320392 347870196 502554948 514032048 876353187 150811899 647695742 170152500 723556664 283211484 650232485 398042163 659114587 353039974 796220062 97790900 506650343 58423701 962369049 415286242 757801720 355267711 517036054 278447151 635869802 901284061 905908842 95692610 475235720 677101420 690229163 563272301 985062457 389316315 961401450 394544540 637548136 100350916 759355926 319119580 909949348 917774167 918604800 964500048 974753775 652188540 907688035 350407215 438371347 394541773 694132859 929032483 990202903 259781260 322532178 857149503 932492431 156316375 263983610 428730554 774626689 236578916 642599806 804689841 813869087 402793698 850581814 603599567 629802228 405634419 600196170 63616924 171065694 370275221 901673348 119471447 770731619 712666477 815903470 101522862 580856715 889527367 972671611 536501820 852784832 622333676 656005700 363376581 919632808 95778933 555154597 334695177 992927170 113977974 643204724 671873857 952816260 960756908 971963993 304544994 685367225 314846077 586903411 76355571 826640593 261365661 903570444 530788428 681216038 545470603 821143989 820091000 966453981 738389838 973930857 39727006 356705573 97869274 519110048 628707898 859632064 759503031 963510782 698661512 823970697 913933597 949633847 541996829 671398348 816341865 818674008 147572679 874081561 806608282 807439165 525827352 677133364 862112870 955762460 923696420 953492457 508547771 962795128 453425469 454255146 475195447 762395031 992816515 994417941 967396163 995078458 881882489 957120115 954641684 970885557 554991704 896174153 667049249 964963001 28752639 854670711 410088002 964453111 261825916 868125950 798834423 883725760 672444497 949828400 498848219 666932568 212910930 375108930 868236573 921347924 284287697 288511201 30458072 46545053 4435060 622502668 728404631 798480506 342748442 871005161 107277500 539532961 604354718 694921698 569749861 670967475 44656108 100369920 207800178 212658212 623199251 931950092 726327710 750263133 889233242 983011078 398772431 418720472 640079237 790580823 430272785 732956904 559886297 616603045 598771294 790011310 137706038 969293935 153948523 329585419 508850115 529210236 854430664 902718725 679706400 929718304 868442506 998575020 754796188 886906711 758020888 851317937 225574386 979870650 591871916 640191840 317128133 631909971 920029733 958650283 367757322 368053869 722891450 941074603 602867864 845292936 449170913 661452025 837183311 988252251 802293444 942014091 725505382 993674892 89926265 302725853 582464194 938541211 334367382 670591077 639315732 783495048 86668524 293049306 468910361 744547899 27833506 235338885 955951189 960280988 743312188 918088638 924413846 979495818 283149728 542785726 782507327 916116162 404522526 477219370 20848496 387868997 858896450 915917880 512372227 678096793 283556426 738454498 858044973 916277346 621807317 785256739 516733439 970250108 243485294 365308358 989124526 996712051 248219777 524539196 840600584 920193154 974502426 975080465 735667233 983432094 620566031 688164059 723648706 905761948 75966518 658440391 402303577 609906132 459089117 647950244 893394529 957620231 243296760 562174432 359435256 667711266 511348545 934075399 359433221 962807684 618935879 967096336 116549636 574243366 682069846 714457564 176528677 610108974 279848868 800677484 925143301 930911745 233637332 771798875 849071458 969656597 25838268 124155520 770645837 841786584 695312542 797495107 442299607 847011803 566381398 757154454 798950684 800786551 580059895 972504079 674291776 983061108 589134993 847379590 157256723 328555554 222381160 393210162 763628026 862247638 445775789 781859071 474869425 893247076 428227590 859362910 730383339 967820938 382078148 885126009 729589310 798009162 970361358 994509253 328045929 866865021 315872833 710206563 869300891 933094702 312916055 815980532 240920891 990100830 937569415 997853182 921703696 968945961 317715518 749216660 160631008 282300916 61027990 422974151 89522316 616886738 595386043 952822622 355512465 934471975 440025624 722571139 235650358 689979616 949187900 973331869 941844031 998637417 388355132 492748264 647590819 930523180 115885451 332531131 176236644 199344233 942322424 973413456 345287574 660165032 565430387 668921736 185386211 612165211 778030495 960921019 998961567 999953999 385156225 388716628 240333603 766724342 68810891 375876853 208126628 475467280 269952450 905566951 966541952 969384863 879394956 955061122 408039252 559358148 146953367 830245203 803398022 934325437 152713574 894614112 994828411 999134387 655655295 895539142 387932753 991198801 897554452 941370736 16946186 722343643 957030014 968203276 339035618 950034447 336809315 566879200 996681834 997108032 711812401 934021040 27691747 357551591 174621126 608761048 444469880 586772708 10455610 195551303 606759086 750144101 557659392 713608800 661245771 878190295 454783667 976451127 962705499 972664820 379553334 843346227 569321394 740475635 348583066 890242083 353031663 687426315 615963387 911109056 726893983 967394997 966675525 969492987 843106481 897970240 812783447 999052142 132290596 284957399 46952340 993571712 180806525 296615597 257747418 659612086 271108660 789473690 673795926 990539870 250019583 299796094 858973275 921011872 718667999 902921358 967862630 992669534 677275939 745295524 887926488 956668349 3010093 411764852 95610946 881453587 753643317 793955959 28833064 666822896 76608309 229890948 276406822 283488888 296712127 832247480 165974269 428817244 269554032 278731095 886711897 959868616 902269880 902480411 953918157 985586885 664046220 849650850 429257389 864002159 701252851 826453602 384834686 889425084 172980643 404927356 384842411 402301595 133773723 625897827 995801186 997659432 16438417 451255797 840111259 909885181 564206573 879062693 699684542 750022767 361103420 524865412 963117108 997925805 301472405 766266329 733683694 966257702 834940923 983511615 206936750 280771951 212095439 932041861 540053961 926607683 902500381 922320931 906865169 975245658 624039107 809242321 843329160 864279884 445140673 855135834 16445149 881383359 280386241 717978800 164367346 948869979 913165212 920040801 692188700 919656900 775856650 828666666 864164188 913445805 720322210 883885077 498981216 963960850 116138230 447640886 357680220 774047050 736230169 967699900 813646422 897802635 874084924 971618606 881601269 898287002 413323182 524097125 210609004 288282732 213341117 215836234 801642283 805104126 797348750 828340462 147020931 682227132 544079619 774093180 824874286 887600501 878997438 945244991 210163088 751913035 597608118 872146346 723050328 812615947 74485508 96068277 191287716 868525421 332353063 863948901 996943184 999028924 778692515 921920701 871039168 906577818 424677850 544073638 270709590 614806778 877172301 878465669 391866944 444337673 20890823 405478391 990126510 998863603 176127256 524234607 795503578 868339013 872530755 883879697 657507612 860741659 10415004 247706167 436973479 611461562 551531274 576508527 736349968 780053200 135643281 404819413 704464132 754957159 486317747 966469938 72053990 658885710 117606441 928195292 468046924 805647525 873382333 887012796 87331619 403486406 358723918 823855577 475556085 754226780 450547228 534207217 128434946 996482221 280111811 571135252 998393514 999707500 273593799 542648244 714460616 823095317 915166163 930915316 990947037 992095647 512735849 674032226 980159298 981894998 517838838 957671046 777661430 861442191 217596810 822965469 929739529 949545717 123545969 474741808 273581155 944025935 619288307 786813346 221821736 436345486 125153062 868689455 520080253 839288360 677898560 959086329 619221538 878673229 898657420 965339486 273222434 721803710 256165763 268234922 507852445 687227178 244521050 270635425 109414078 856119830 908987867 960279438 814397468 855937994 926809431 935862729 297319153 819451007 57222606 171605366 361158274 572678341 561288066 959988421 831501201 898035621 69042528 451962661 225073748 928725501 256877277 511279366 204824191 537282948 481796694 608242085 148696128 708127741 313389598 495394587 662396127 865400881 999014248 999944886 665657760 789239326 425206441 561100233 589012007 613691300 280491950 666024160 703323019 761424352 865615095 973978717 753117529 846336153 961728341 964951359 836259836 959142684 533309670 945411251 354429995 793648775 240193997 308871312 536273733 931477362 615071674 860308130 734248534 845174972 64396449 767628584 356375813 440146897 938330770 988878762 191401650 418198932 968709804 989809938 238279070 910372725 332061688 392904375 681203367 836544557 498936058 664225957 430146293 984353446 417910332 847105979 138695315 998415530 644033491 731056005 928488691 969364900 806872695 837163124 112253711 515910927 759129301 971655676 338915615 489824688 916816455 955707623 563166506 775256813 467580988 491382469 297488490 713278775 126616023 440055531 348325736 420935767 287234891 856716765 738952939 969454628 254339246 720325798 507053218 543212101 56853755 359600151 157949303 571544675 307726531 961564535 332181310 378194330 726544263 763293209 73685562 501647171 457511791 546481347 694599013 905607511 674995873 928206622 487155104 812461837 714879928 816901677 398559970 531334228 476286581 838508912 384237555 526311900 463866595 652233882 235618621 617151624 445396624 675144808 372017288 501485426 43641959 804858456 77558467 813528586 794272522 962595152 66406570 545643744 437147334 468281970 242700573 609309577 133228215 386657505 785461777 874734585 559205710 670176360 526700693 912812968 552867358 960256513 364126866 572262883 304722130 851843591 907124645 993154752 255039151 758681958 407136829 716969683 708104525 976158287 506986311 975053979 400996172 473899997 639198915 933271537 134215502 551462446 576761457 644360736 315951257 856162553 361383557 732195316 780200174 921428894 175901394 276538435 136747230 814827148 859948496 999411328 876138549 952633383 559538196 637299035 51741123 372688359 614793890 712601166 255302409 698671485 863158349 952048957 819421132 975527581 22838261 278545458 662185388 740553431 712038315 971894522 755915321 888101954 47296793 169929624 10675439 135888631 762844378 786107475 313457929 612498257 942353029 990628770 846810209 853727064 732236473 867565302 324746337 394395545 161130195 301135551 330060218 861649433 818816484 848227345 82771744 948357146 447340074 957566460 284719120 419999847 906481247 964658914 671249236 752786581 922113789 992540523 576411006 942130126 821057941 887490366 762525938 878339753 142260184 908002245 808207276 930667491 210816832 578774649 221839713 659063471 468135902 715305794 436656658 748768397 476230790 968290269 612728856 852147915 469924089 820575583 365771301 715089313 652887038 791939008 575889101 773653230 18992601 98775718 542352375 733930617 162952336 338425367 725478919 773764675 595450250 674495534 531518693 850418919 704573824 844138158 577999018 705863156 439608935 937616192 931233066 964492492 658006830 762755652 290256747 946149195 298802385 527436418 437669691 461648200 122819648 521727348 699770362 804478998 460955271 678883536 938657771 968389422 843041583 931719095 171929498 776105594 20547109 27370119 418130843 742879502 69671470 759948346 360553738 760685617 227680199 628206267 186778420 546589609 966834280 968816354 570242205 834317831 714771817 950958696 272652292 644080302 26879822 814223820 372429298 762862875 66958966 874572908 682858820 921908022 475728271 760186033 170296163 746650955 748572964 853522300 422259885 947456784 349613676 913578486 77993975 749341465 364807283 730588167 888296815 988786484 76978807 705483528 901754272 910010949 472492351 567881117 413885438 465748650 139282380 371515030 757981110 793278765 922915931 949960100 371699373 529830084 455217496 938569606 957245552 974550998 588252654 599933940 203654786 354106178 608313532 894306612 263390128 479859247 987682003 990241429 429442836 881860739 39527230 959763587 408773205 599047831 533800210 626822050 33631824 934685077 945296168 979001341 358486462 655765108 828538009 946416957 911827678 912413235 564038423 886832385 112089807 250943892 549898028 864543990 67182783 962475538 324529758 837344547 180277502 512592735 900885152 980972977 527346294 875260252 238592039 815041479 647060261 884000238 27111392 874129948 4989627 341456640 718972044 988115466 862825469 890744064 467116917 670701978 549349273 662136224 700567981 802955069 94614688 122041584 303409252 418019077 709768233 942913473 740606344 905665636 11762877 150220173 617185576 859409481 359896414 389622206 814700767 907960275 126908035 665575458 572908845 905388306 394097809 848162081 237662150 608721660 437890512 542552194 149808405 824174268 431078375 603295524 297158510 945750323 247290871 537378429 949389855 962192485 57710435 646064936 670553097 813781592 365651924 875765344 470133023 888308799 795321612 909217009 493150674 676472561 706576032 825203799 312906376 622892421 677457206 890258336 219887937 849539516 598800476 801026740 395999962 764095053 800396824 875866314 720305189 984567196 301387920 492403234 420629834 566466720 204325411 938135108 206215951 800015810 201985423 505482983 424629356 799084238 164164732 309095692 350636590 723959581 951221089 979226478 757724840 839846276 738941666 988836010 314739118 536355149 566403641 864264832 592989239 911558976 90554943 530742927 599708974 659578426 816362297 878173672 302006325 548758882 524810493 924576551 204304597 697506079 75274109 281113872 553278248 679778652 181110052 830890731 573650915 737984467 787152035 842034630 520415540 648831333 501481631 784444246 25450693 232465250 734270571 866374642 637198360 980160853 973806320 992133188 800587776 819876488 822813558 995199768 440717567 952831497 890965613 952952670 71574597 918660521 60067083 983423176 388721249 879324642 521205900 655351415 759918434 785752028 252126470 401797079 461064652 770920866 771376344 860124081 655606317 854692431 945800306 969751887 514336579 926148552 816135754 999561409 364111179 889932931 236036282 411842233 244327838 736817102 188157370 956799268 292001458 467164713 108074923 181592325 881641068 925884444 410933777 815507661 317233136 628353966 53266457 310967591 962170077 988780595 816480659 885627497 474508898 539224273 605313896 796228039 195080320 687346837 23845655 981621787 661053408 763199201 823519912 974096308 629679624 977125433 505300317 651625820 375174538 637418234 822377625 840939629 587101812 735792182 48086408 533374561 879702326 960526983 261733136 794356562 147186745 368431734 812223318 884695673 804099474 901530865 717754385 883304279 668270313 795477758 206848170 425883280 892668479 939525064 496353367 730882480 446803381 867185841 919838904 980143610 632616087 964061740 325008980 515672130 458625041 538028806 696474699 894802671 226441542 465154826 631311815 926557299 79360950 146137514 33131207 613956428 550838984 951654554 971716758 990843930 951622387 966553212 368656978 920459414 88367921 360088565 240865592 645532134 349454279 430563513 306353453 439077587 371342119 822505867 755525968 975284195 749375781 964445024 748274385 976593390 701885486 913972136 636898153 993784578 435476504 759073377 882680658 896287593 366182858 702451116 88032908 255312323 126768979 907521287 276570697 518031020 702297963 794814396 577946998 722278590 619745 730883896 136430557 159611992 133380192 651555040 869421849 891368784 97330488 301722083 541991534 823536882 878344259 882013160 265134899 677672287 351052324 761002352 352826770 821097515 848605120 953407092 573814584 791369600 711812466 951012456 27339095 679791988 113470989 609651483 286767177 703720842 24500159 717036253 725744483 810060183 255858636 947600408 436350386 686246237 432135829 559457689 51199146 643667735 60892383 471455338 474728207 802333787 923958680 946681359 437235992 662577659 292024698 497748097 976090511 993392389 499444631 541162120 951060425 986409200 947605478 990873166 381026691 633134514 674347973 927285844 909370293 989780180 827518167 851618713 151285414 805080570 450122910 634200546 113752920 597264329 579358255 861154064 43222045 165312625 633195734 633628101 951745752 986009775 901106182 956163423 859410234 879847556 32329237 401360995 633756299 778879342 240533434 409757633 17438056 737408026 830381545 865811600 573906768 651350361 601145058 874563483 256457110 665337268 560724409 786329264 520738021 723822726 90187236 749064020 373888004 800615467 3415594 614583006 302092965 342036499 329508548 969733872 258527862 524069560 289683870 794123448 167952786 181170516 545272956 938744492 235815386 251716112 250981044 361283815 228951767 853058834 8664098 94159032 626105333 739351097 722365467 852614374 787332030 996630218 280329493 847792039 779398826 940844310 522385550 596434437 485526479 640862647 777246467 815683496 205024041 339405528 731995466 864328358 38182388 79933543 889804337 950510576 737706209 892651122 529371765 990659667 143196036 335452172 62599792 64228808 419803366 999727582 409130573 853116879 148754881 804523466 244847396 540241142 92549405 125129497 415672675 599216643 265196997 585009590 380142305 674667298 2060153 997004630 672863906 817858466 125932803 462744338 922069517 941291648 578701303 997379444 211293306 492700093 833057139 958037991 219883800 687180547 17286655 127082694 84580478 791113742 135366916 733637372 103099332 476185561 348761170 912118907 24499596 391649761 33077390 363624663 623884695 917453702 965765291 966941970 899554610 968632795 56599581 176627330 712647116 887598727 578278953 656041571 438518602 790404646 781446292 849737477 980384228 997587551 881804688 999270312 629418536 871334496 790085245 878600129 226644408 421441561 762920900 949502307 859336205 963307583 78830232 860521316 858471667 893086237 358195458 548274905 416228739 501639756 67860642 815064846 579401983 814446569 392233837 468002805 239065699 537165481 475621143 906104427 735079310 926608738 92607016 814550694 788633167 851488619 810180548 999048709 200510552 646547741 854878825 968557483 374550450 738441597 662379578 854624082 803639323 854321595 685852790 920340409 156253338 816633655 879182480 887880215 112875200 416316619 404387721 541469350 986850315 993911619 777833855 907364579 53698698 168959750 339576539 900244563 540589205 729895712 167325617 474850758 368267005 992355051 969240667 988693555 572871950 940337981 106072215 255820021 179881202 628286043 984364064 988520461 665384520 998122022 471137725 492962693 105527807 380743861 494420930 763504269 84772057 670248379 94975449 558680884 191812840 688839889 602508967 666557421 546545049 927432408 3602483 911679696 787624988 858671329 491900261 707701675 59173493 485575868 902984424 958861039 142068508 345809109 201626252 569738615 505325339 909445744 467845746 522045700 757354849 919035853 328769143 596503111 591356623 605713688 540257315 910496116 945892718 990963291 548937379 907865010 692224319 715303499 481005311 896967737 460468889 974950991 794199690 964731395 816469022 992413238 393636392 684783917 736808371 944364073 225218274 978640230 531035870 881306385 641023571 943233971 84323092 948717301 668021572 709098048 460865957 671326162 781671908 941820822 957000586 970386848 369459878 981249122 560066419 749533807 996424002 998634507 60120908 690483059 896422756 957545102 238794925 604987927 87060812 273845127 145947555 848946915 173115098 345772247 696987479 862688006 873961183 926834106 529783202 806873667 821957954 996313588 302680084 398837300 200412225 216560610 122410978 901697683 8000132 724738552 524365965 974314537 914570390 962069069 273528400 537823745 835587656 959348229 21949770 456420277 834896742 900604347 729149577 987818650 441729665 483476381 290125930 402158532 392891079 855031977 168915614 262972000 944914221 955667057 227146528 804720458 636514957 958341933 471862754 616093153 892514104 916591407 767740578 870635301 832544643 989755862 503206419 696977503 285933606 798911999 802208374 858461182 969283138 969572388 887201161 980818878 671476254 743359914 537288537 898667961 566460243 900590536 975265147 987569989 493171392 577263421 677583157 916579028 128826812 826516620 521929440 657772920 501982660 784273302 614114016 869728531 615732579 816000136 321536280 786128752 496120138 900743737 72565770 822444339 863202745 940783628 699991732 941551363 703109201 760986641 972811120 999408059 384718037 838527122 869180665 903758963 768346932 770967506 776333383 974102579 940601798 970614965 663155309 711254097 340504832 802069838 977203839 997916843 815613616 913055190 55621677 351328918 229365180 273039293 705944924 906364843 801953430 940079409 442115721 687884817 238536661 331615625 393783943 914940400 418435017 709883857 548616974 622258009 656354373 719600600 865828775 932989052 278331190 525477637 52598743 293209403 748109869 973530623 639213622 662149105 17775022 151474572 767696740 814187260 863490685 885743247 887475028 913398562 47343352 428301090 55815665 669796460 568973917 742725554 106231746 593313286 990547855 992488469 944180596 974961432 276462175 291479025 142016801 697237901 951429310 964839609 720931982 926229300 689390037 804531679 284566012 309760041 512662610 565611771 155488406 367149495 690835947 696540095 649003809 795714786 821909650 974908010 106617829 366468678 16940359 310836843 500518663 845563188 334746876 825697196 605611098 812927589 653992235 670667694 941695747 995299444 933389703 981195630 234349632 453920493 271454632 604114191 210592249 326497845 821869041 851442138 150864720 483143130 697321090 851768261 309564270 385715234 656596325 797975055 878517188 959590728 783194586 964925801 331015980 807522430 20725520 555256638 1310968 522093071 180167123 762273528 16694986 847654074 405464968 565217180 146366933 472880733 841599677 940743753 37564896 434779163 688908382 707848128 95465184 830553014 964380415 965192222 876288939 951651037 456082459 881935100 167270263 488172294 127659798 215280816 111633730 836065715 898931266 960471123 954514213 975263108 332239069 642424884 767820794 783558533 536462110 774783016 460512626 816694584 285171560 929368916 408108539 802613543 876618489 971234503 908161363 966807343 424519713 860307230 375667808 653042902 292518228 536679269 928021901 982151155 450240138 837707888 323462610 777109959 81150445 256723864 919447896 922436449 178432628 582302334 232191533 942109033 302416983 592835778 254411351 811219363 734821442 880057228 270861983 648771805 857136909 982881006 650151825 916275976 757577392 768283071 884020613 941502807 3920607 906466061 951880542 955632602 549810031 938575073 469230420 569478252 328667094 937108123 373943820 646701972 32481182 370076568 941843078 972606432 123818780 355489737 632955806 998402655 282073826 764251192 709534938 856637826 18208850 390361096 161922427 741585163 174107374 510558868 312672452 805806739 329614534 573617737 628577531 635989757 164232410 254421771 676976001 694685016 12982197 81445823 515859959 529554903 624751614 712204454 817030007 896225636 359818111 841588610 295996080 541784666 412974812 437652648 1300295 516877184 129419350 326605113 940524767 947552359 584545446 989291710 691558602 877145363 360805774 421385038 362955712 730857092 271873631 549955525 425750809 732978036 465413305 566972045 568871765 926891755 946671194 998469362 972098932 972885695 630216714 933837348 604971474 806260396 112542050 732059749 398653410 614069996 150667400 471564610 179783761 859415936 87779175 247799815 692596399 771059332 641181407 782243851 120285079 767126087 213174390 275711385 400730001 727547484 766194912 769265007 260804144 895701471 742195642 844597069 663938049 680168338 765601504 940370252 806341010 938313521 782542713 978153818 736485902 801947423 935536675 989214772 35605177 347103796 510388013 629027472 986253184 999367818 342742721 759305497 189367856 266613652 784740394 872869232 748731244 968195202 19441 158379988 823086394 998327885 5835094 771217741 868259112 940214710 223809668 246823591 121402657 467830195 989609301 989645617 880769170 963654390 180033208 810368562 492806110 611162920 904473048 947599991 351896562 780858412 509610833 659121149 421686126 678437676 496078801 868646496 835348526 959566268 975841545 992475026 37929274 825173919 667100946 871816958 987221774 997258771 942961977 948842375 192523854 562998796 506881913 870467773 910958419 957975498 3723381 299661965 925678876 927003369 921313598 954975471 175602546 771201364 458574452 538677569 997812656 999845078 165370651 284030766 789872294 923061729 285831135 385025156 956420777 974676624 222767091 505912906 150453231 884731077 465137592 741031869 797708481 810914362 95744602 865062493 310730278 328325026 802080452 972648914 637643110 864701479 535139682 957033787 432340259 839539818 699343838 917152886 677742795 753117266 754396651 851273466 846035504 974171100 535540709 881204402 577995346 587766457 657789085 772127751 559990211 659150616 943060574 985129355 850635443 920274023 867389461 931992629 8421178 797373952 913196845 991665662 429821708 715215758 148336938 537313202 325649455 684999330 960804895 978862509 980566850 983923433 172180908 405634044 718414661 998189875 988056149 988190081 575119944 591914293 169053646 231736233 623481419 627602308 175821257 790661585 304866588 459133767 195898750 812479517 548302748 984392981 739448141 819177487 794370708 870461550 66938035 467896276 319267392 656285201 406940855 781059987 822185952 895281770 991112261 991841688 373485797 953355037 816500683 963857489 678485475 721929480 701541361 765905248 10514063 831782874 647529243 918805482 571534350 930006185 963049845 985373207 365600498 379810986 851255042 904490481 481420187 884434330 972006463 976240362 460586123 696760606 876469820 972809689 499659788 821440896 669239178 865120948 602017832 749452815 35846252 197037596 588146857 942781076 742537339 982585050 988954990 990656997 119586892 154056022 990102179 990498866 938755782 987497323 235428428 890680582 130545241 989655090 894501944 955097124 918336762 936724146 863141665 935213053 475668541 713443864 508165735 705024741 636157443 680409055 409181457 927711869 408514193 735945940 454702985 639518220 773123863 784147801 454964977 537533490 5280602 667775506 894621054 965742892 30553414 601432411 329665487 471482166 252358900 612250808 387583727 413273309 238411313 947003162 133592462 536181277 906278665 913795530 407236595 864612110 706977997 715165232 798812329 948707943 608357341 930216307 442797226 654404437 724852441 960806975 408309292 933596145 58804099 874746038 338046375 655328716 171135988 989577041 132589251 749697414 904500590 944583903 81541830 546921904 882129786 987227263 404305738 996499393 27644613 635023510 840237146 884863687 804413141 938619039 762042516 997385274 544993228 853993393 260298390 482650136 818716706 856719374 591445464 854795249 194432438 777499286 254692252 487547084 431135153 596656553 700173235 769090114 805219879 912023063 420704154 744312626 836036952 968753590 211724039 423819553 345748792 980750837 846030165 971936230 589825858 853280916 908860754 983661147 704017717 960635096 81676014 249054428 236973132 819212302 603618813 699082263 491325501 756136952 711135139 851698635 243942217 739955955 512019137 705751700 419133196 653918205 572561691 595375126 955151043 972833847 435532147 464981540 723915991 916182476 93716325 191892896 722675994 988676183 469986568 861894199 832037560 903345455 558545038 952295245 434165983 877135199 957908212 964299225 429535433 482241752 47536303 458470054 277722991 689205337 662663525 861271636 506949928 799308702 862959990 865721268 148467018 600187325 471539 553279623 142612820 356109020 52707115 326055735 452101560 643341870 95058798 607071944 894695033 937586212 835837632 926323756 626682996 797477712 757234984 946671372 470716413 818361156 912735603 977867709 990585268 999786969 25828793 82137930 60747004 635084167 761617321 928850266 233346094 729332407 239797535 431479261 448158235 618703010 278111656 486236857 843949170 892056842 50219159 827380915 42221554 449985118 359106760 768715277 709730846 819693311 880261309 960191521 769719092 913269780 501497558 519336784 597787442 858727721 527296438 596753878 604732810 962659017 558110987 825166302 433843475 562939925 393948008 918039576 389240018 473308485 694638088 714837973 437963052 929573956 994413221 995316913 542893865 565280782 600077276 603465609 792442347 838317163 844292652 971286293 954847085 976529161 517257078 955773361 763728492 887680240 479532490 591542654 275024435 774640206 594164327 894810333 610787259 647668001 970434001 975420612 461501561 686034351 733292835 821229337 424141110 644569322 884024253 886923303 827597046 845541875 933541573 934008847 708935292 929327912 885791129 995244982 190167988 797474966 22275069 165930469 688662393 938251009 323281351 411549368 684070072 946674218 536072673 885648691 636343945 668491630 613786515 723749087 615546193 677952277 557457307 849653804 480956415 680050516 957381678 977408604 726469242 898048461 468673113 924127552 662048939 893468971 199460352 418828128 980662340 981892267 819456497 968397408 369277862 443426465 947263407 996474444 579781913 887591855 92572123 365939906 365914583 929688127 903586728 943693128 413181385 901343729 308269532 791826392 802547201 937471884 196377629 485928545 556096047 841716571 335397621 432972848 966867683 998796348 306385700 960155808 348726106 877840265 106835476 999134981 62035235 229109427 851158173 961066317 538464765 827385432 52460104 511237433 936224332 944336851 274197817 547348339 547842541 593570717 553833095 813448802 425257877 648380248 608304590 767723339 957096713 999757555 473466833 931215622 106521318 536983949 720085594 832073927 276891869 659401255 280269314 670638208 557033269 704623872 566538316 805917347 153791353 593415477 874309729 979714832 112759246 249169650 427778191 573425671 893265578 988232034 16878088 63992581 352406183 795104689 746683093 969842880 28373442 568134749 635375886 658835391 431216967 865515460 320819547 773700502 241219534 878976567 901467148 944311009 57986804 782926375 57050425 700935890 506004681 853879422 210173768 684677575 721653768 945058125 672981942 682101424 934498707 941743384 154493767 885792355 303443896 373046092 472414468 685998437 418950488 966077746 107477654 270682873 355547439 364313683 14216512 473829069 487150880 980983714 542330967 547876674 236528401 431710075 36490837 849864217 142048951 586768682 208377400 515420062 164724971 998885870 192296014 462988205 157286051 742912645 976664572 979363859 6724361 446493479 500561347 819751376 340802210 406182765 766712817 956515910 381042960 700249944 845673815 879382258 528058342 766820886 931059182 988469848 934282097 976345211 370569401 608258554 119609145 529757420 521558959 542851408 81159164 414447667 803914342 952393326 570487248 857312552 43740898 779849490 982216155 993180500 954744258 979973704 719331992 849722268 213900796 351647481 813130063 941675950 318552209 403820982 705320607 973535530 367783731 563729344 378714576 532677292 171525756 756495605 345520605 684064836 830762769 956604232 383139119 729919531 137065486 976239611 516714180 863915250 120949434 378511804 801734097 850777228 112671683 353478343 463290399 891099795 661321093 961682368 423364476 895189056 66300483 228923566 906815808 948060966 28259476 594494557 695192107 759109254 624079800 667225010 160012041 309880679 98576827 367921557 614304596 835685814 105919025 873027754 779635954 886510179 186043617 637170411 474180590 581748058 663537206 824975145 43724665 473008905 597428771 957405402 723901054 827909489 841120860 868606979 75186614 703489186 926891856 930308327 551950909 861323559 626465204 772446765 721666841 903457739 938313762 984727385 770626570 878741366 816868520 821255727 692872258 896981386 147726743 971928963 968052973 986429658 15375091 398538609 98669210 862964167 214814684 442356211 809340165 847917223 20318437 243291780 279372111 751360877 21461889 631523323 795456685 803701892 448716245 848921363 434320543 757037950 724184078 760092625 756732742 910681976 615159189 655022498 927156142 978867898 647716839 792992554 932848550 964659621 460332871 698127119 787830579 954376691 244950399 866874618 955928304 980726878 772355445 975680682 849409288 971069378 259236208 434611257 593716823 722590999 22445745 918318805 997601379 998459190 62496885 605219204 879210606 980585680 2047459 98088484 163459899 677105227 902149000 927733979 764573868 806743706 722695112 734331687 604297767 627060719 129886295 550473340 642056106 775210266 205805666 953898965 962784545 993688936 256759520 852368676 614009341 635655270 882456941 979690074 742579865 824673910 596990894 809240206 69125913 78578402 339241664 624922994 966975346 981019908 986870848 990610007 244960856 997667822 472272745 875329678 68676717 284225601 912286876 917524325 923694425 942494421 242227980 741526210 143907845 806749484 28827268 829619959 824384496 921475499 702942702 742952141 592295514 636954777 276663865 399862859 581567666 951416866 326247210 506090207 735856745 832447531 186115567 347302926 940665968 997846065 174451398 252167114 642200773 984419614 207338316 472901327 12251927 733717286 757755702 800709531 771642073 925816351 691944437 995158730 122237582 784380473 690479215 794880550 459436806 550703834 698819083 917238592 676929631 959753136 590894235 958022064 672160358 981713077 994483621 994528944 630341415 986406782 606052922 764607812 679407840 763255154 723606137 836075328 573828416 852070362 762032282 966824834 571430740 762062849 247608361 362145019 963453885 965995842 582783537 682133806 798570991 900165321 42783561 158547049 772644499 784927679 886881466 928479764 985593813 996880363 97282670 103269739 829907100 936762815 449588456 716456435 593135497 660892698 906397119 911523758 444228338 649979079 593816898 617591799 12890336 269715971 849947750 886999694 541984250 621202789 308778446 987574641 944231535 992532293 516216503 680272374 885561000 995744478 848289203 920157357 719974764 753502192 43674567 959169967 965640174 966763105 850909021 897238668 783786482 874511889 91220751 371359856 963466850 964341139 207801838 759209535 330542422 483738665 67320520 761910630 311344979 490865249 333255502 513408565 457509907 546134504 904752159 907547864 404579329 851988939 981403122 997178961 607499606 731611766 907876796 936266011 680236981 791056873 596722304 935613402 45342518 202677966 591897635 993818587 507168439 684666110 788504027 844304016 458357552 649558474 125434097 781987824 607084171 780660961 363155290 936078550 4667352 808671935 279761566 541396563 466158849 881164973 194453989 412932380 504287386 829482741 448002394 751882765 351134298 394432672 313090796 703426558 585214593 904363282 469111525 827167026 851637997 930890287 517042651 923326803 102716999 228112849 959961641 992164405 14201619 229766703 69480480 419568712 935569388 955527182 78446203 472793001 812035445 952566356 635049346 766722789 130957468 879770797 30059026 304357029 579679535 635273556 512161096 919629746 80927711 429147728 372140423 609039911 292229084 762374004 152292786 238590844 300300294 660268611 924656884 967107930 302381781 368444178 355910170 673040535 603757703 604859914 756960530 758305700 10378232 87008573 881986662 967081208 979146896 988614838 774870214 890974392 171279216 290959151 420233910 810264476 349117786 406640730 24925550 209103235 65547427 374356730 875372931 919651518 747848588 785678310 23885553 297299893 85047512 610017956 875752778 947660338 449802573 910027178 128369968 599695230 128561264 416774567 24069274 465402824 388400673 612272586 490918222 809123567 979965514 989923005 332311419 768464163 47167759 805290025 624678734 998009616 123169999 245583983 398105602 709819175 828071452 915223320 645833500 647746163 413848851 594425094 208208542 409169054 538905244 788791417 126874586 263276892 16236772 484743955 868811629 884679274 420231948 733181139 215069130 612898692 258255994 351615102 681678314 710412122 692683860 701836528 470582138 773298552 271347607 790214773 351880668 963167431 894284788 971166792 393750622 436855858 493546370 897288068 411956657 511618538 566392007 731970745 594800183 725519133 88855430 589021484 785539061 861735949 841362409 868259473 645666141 906330330 545194899 723352126 818418249 919808909 184803508 459229866 456373898 840769773 728895381 860257379 671381965 729944719 108482606 323075086 843809489 883801800 536486546 697789592 295483020 761912507 425635590 592353795 130486387 757183564 998166250 999972088 428852308 451062084 700378435 933009206 797140116 942445137 998306131 999244945 986484200 992058877 10071748 618021926 630420477 704737964 333528068 492888629 176114034 974012903 687842293 786352678 361531651 706109093 581258907 797257587 728883849 820790750 534525725 598409052 571335642 912289697 713053543 714560100 981750570 987413359 461394256 670851592 979744294 980985590 588478809 898778519 280365553 612126295 782132822 893276635 573448961 740968632 953742851 967080277 855034489 916453879 275139937 672870604 614324549 643897301 686947998 698854573 124217270 324064771 619985768 983921056 61189781 200408898 765922536 812295601 667127641 746933642 273352411 882377444 176356698 249581507 976611898 999036278 51522745 943010986 813456966 876568671 551400965 787127420 832313604 891197811 950869154 974267895 605659108 661504061 859181593 892545254 271867236 916631247 600074636 966365704 122690034 478223095 374228607 698442588 760020044 845581799 915244392 957620337 320979045 629197011 625445175 746760198 535165227 713347145 990627644 991179634 861555763 949624975 477208581 898684450 799864420 839740461 90683812 361809288 93167778 649040886 773784626 893211600 691244180 857923031 573178752 796615084 569936842 662184366 706827302 898251062 343010250 393787894 794418842 872995126 762220491 887181171 123910067 870083940 934519734 944400228 355892438 867286980 92689610 982677781 293815039 928998531 570625459 893128200 481343708 808937015 693429388 742235761 286157333 510022516 517427882 990421608 139309544 377587109 85114716 695477551 423409030 703282885 723480020 906720586 670859896 723434639 643911205 991726478 732045647 777653204 652951761 710641361 617395964 651198688 451528756 799895794 585642894 974028881 410583276 638396562 363431279 398888426 586921041 858208319 257949390 738981771 487671482 991152210 468750004 819404843 322080071 440500241 11155665 406324925 131712737 757522681 819407106 949677449 80203491 636764621 341343153 933695217 58945863 231973499 943237623 954735086 177602395 313454840 480569518 979787920 750478474 832029612 603556419 642207591 694998476 956916455 267134023 879162926 715103883 751587338 808722364 979126668 773947432 791127895 417689226 769555966 700702615 983882272 870017683 958279721 902063343 974012042 256900499 756282782 597110605 958308174 581013230 739263991 999869240 999937316 836927298 894233088 39998272 681252817 440070766 949099792 805973008 928912223 81581195 366117558 811765766 870770855 689058020 854763714 316270502 617557779 71514821 512488795 469881971 884634945 922067589 955632672 928927840 978834703 50783370 188887171 263204712 946087194 117757889 206462760 247797266 459765473 393516385 923842614 595016334 841974072 615191125 761794268 273484670 925392435 658508239 825500658 962478482 993168374 592127786 744866125 668632506 736577808 135262599 951736685 982165610 998608444 517357172 900533241 306756893 580876295 609498889 755111546 647102748 838647099 459926922 641745270 733435068 964433817 518518449 778163396 706314423 813558055 667297050 871536739 673208025 875347094 947989275 985126225 877711887 933485956 430457947 707360880 389163498 540781993 682417491 935540329 890972991 995572124 575865699 872054761 485301631 717384956 949483104 988112941 171102460 303584283 439881815 997743627 105975398 279670518 345277125 410010021 75590927 527616291 77538020 848929997 747366400 851074596 342461280 880428492 523970128 576879157 385473566 530695685 61556050 863054421 661738743 720455462 508699325 754397972 49386846 467949527 578412972 634927628 655664491 776306621 647692054 833320339 435102064 919769450 482051790 791239841 630730075 823945211 140015047 279557614 979239054 982442823 297329757 501669628 63187341 320327079 441019278 853794316 1436851 853633295 928933783 953586746 494200863 942447073 373267853 990272286 55796527 101301157 190307580 531960903 121476782 606735453 316235333 667256745 523452421 834601465 605772267 621903000 401561591 681543438 567475520 637334850 319303349 983862987 847491816 950392488 224669368 739331836 820329253 894600361 47131206 571440804 210485371 521874367 832288633 849736974 939378566 968064044 130507297 642371142 350979929 703397805 588993357 926660352 10235337 652911878 126967356 359577297 623021620 769990540 761882676 940566374 969057483 979945141 107760150 636438947 107106159 819616848 192431437 772020343 540618947 650173283 293595204 466545494 20849218 893670237 246832252 555214791 828765017 872048053 697229998 782267982 253788114 530412708 521192512 985675362 128465235 889995578 927152126 968385029 857948316 943890750 428838552 649309883 760912043 890385014 808498757 961227560 919919421 937064466 83379194 567698638 526421134 660861029 874293749 915987084 413150827 547054245 196156823 218648127 134500230 917254330 584100869 601867795 201733964 903947606 445208757 918726831 718661175 782710423 926558021 999073887 586906209 976261099 732128906 840939263 72062198 202275768 74059607 284821370 77255445 116850897 239572270 698351205 719672303 913043070 739254730 886537761 921044090 969144810 524474248 972309733 505401610 758305864 419441149 560002606 291104414 816199248 456475072 908512324 267587872 762946036 825954409 961899475 7233259 770999498 99377350 291289435 308048565 386266980 113380687 299472449 343918492 698908856 580379097 903149047 795327654 976850238 457831745 888919928 75796786 721631253 918349802 964613506 550074984 925448086 614473245 841266262 824990074 863049421 330726038 472707180 117816601 381486531 867772145 927133138 324356611 502986409 764441627 947857021 51929706 764194839 58598225 377101358 678234303 725763534 699086735 998056380 254275079 793903563 534500663 914456549 182130728 229509698 6830537 903937395 942992878 975432693 779593495 900577909 629225315 823028934 328210737 702500580 72629148 100787283 280818914 931634673 390474202 680785393 281063423 702411043 101025717 960569390 806615437 967827967 810659645 932325231 985973519 997748265 109263208 969267754 701761342 929403548 855946446 998507965 249763945 836654595 895874829 944998284 433620757 541194719 19713074 612977803 700910119 788973408 355008021 665474821 744446155 952076592 453994745 540680673 502611004 786690853 293062618 765154183 418447190 470780430 884513529 987658082 302485445 729252073 720907578 769198998 391430219 392829309 105483419 861328504 169948844 712979550 107224785 332191929 672611402 700363220 978477734 989397366 639487643 676267084 652890960 843560331 211667363 323919138 404473514 648567209 129181363 525966867 210364367 509614494 70430571 721207215 544301354 554801206 347071142 417016887 226622638 557121272 743107930 873134407 601886049 661397758 767835942 909845520 838321188 868418783 442086684 839868936 493836472 707538023 496094092 957044939 254849535 896182111 610488679 895665630 979622247 991416863 812540982 960017302 483528690 511673945 832276933 883399984 328706413 738064774 293469739 867366749 103632092 506220919 484773775 791947307 658092422 972872117 786570916 879855898 769456750 966331827 345261708 898459193 784916224 836123980 575669043 704522510 153305418 577812118 841539527 865322724 1642836 740151445 223295083 251127352 361914496 785386481 391765115 785344321 542709636 624336867 530627032 765487291 543431076 752177697 214353787 848070903 594005549 935134235 898679426 973421442 509102561 514718624 174396001 996280096 97347155 331292605 360834873 614880221 273972790 484915008 161776642 408443418 343983090 415441981 631187264 649745260 771955094 817051674 939374892 955414412 229979603 921321169 406063457 872447667 28760730 520575628 375956288 683455197 910173946 942093827 90254490 420862274 833008817 995229839 639158031 993649663 90695822 512059014 776425695 788446607 402968514 956966549 113600422 435122305 589448717 722815541 295958641 827905061 17363516 150074675 116418620 958622356 499130090 949077502 518322172 780194385 948946056 959471003 616238880 750392888 160736525 201707667 8054530 472872891 712146941 750948205 415888831 489293724 887367679 959733156 574324297 625928942 524978189 844025584 107078809 636200254 808023665 833637954 368399920 788924683 86904218 938417369 447043586 755296139 232007982 822787715 718506677 781523189 73184990 117624706 185641113 666056707 94976475 901551884 113835913 394616314 722664928 800450031 22600142 733346684 231730775 478124040 467623152 715359302 722495146 957119633 622104311 840310664 928874746 948024470 304678356 636944305 157469752 542777888 693765801 916538767 347912808 736874340 433586784 438375702 767766436 783955393 515896446 641223746 345869298 716668608 283118473 373461763 417315825 733168909 692158020 786537290 79711305 901438264 646599072 814316570 708975421 897339811 608181919 749719719 938327113 989812748 812320332 933566238 512034752 822753839 267401123 499992587 29868838 563940351 160932929 651018495 501830950 618553239 399702768 486961189 957646039 986122947 772235506 903153882 761628356 920184475 699777786 784411714 983562948 997998136 787841236 797114795 776368194 931211417 73799327 709120400 532394110 567117957 798242318 947223078 15174812 62517320 402159994 504791153 474587908 658682240 967896773 984026346 639935074 847217127 375927611 878226284 299082086 549312803 251756732 439686505 446463955 666447542 505912958 924915225 276435818 308072801 213155478 343136828 809465781 901656991 783375121 899453822 714912884 979828802 233476170 974956108 532162752 894208103 469444853 714212426 510830194 882514306 208528117 768145757 885995815 996650366 843408527 884723382 572441865 883441865 695925454 863708186 950659334 984512413 225918659 369044085 626659440 715109682 969061400 985495249 648455809 730525423 45965676 485611671 648667923 853041717 781900748 842357077 276782548 641469749 945214953 975402477 759859597 977095163 753908252 858103362 210846084 953871852 575370230 899855095 465227941 723727208 793121658 877168036 296053544 510877718 478575713 906319018 360290598 740061092 302953638 553154676 216186562 742442715 40568647 369336479 941608479 962581610 203839754 975625855 382447739 875183252 162041721 910611565 620354888 903734610 477151504 794047884 786364089 853532962 639314082 763740316 912558223 944394005 610788773 705018525 384570657 778474574 834742212 974904061 558507918 686605257 575545598 731969835 637077493 741359950 99206939 461019754 977364602 980049652 133067180 592988237 993009499 998080606 128474413 462905684 390306182 913626215 636460088 697177567 890143832 991108587 591774193 695567122 466615902 822624261 593655670 913869097 989323312 991762425 301094188 558132495 312153605 908053611 945090583 962725130 118303879 693821821 15331803 668737047 318657109 823898518 925411619 930735525 80571306 821701876 480051513 832363620 547375195 914290140 396354748 585166615 350944674 923191927 756305356 888595197 559688464 684961648 439239278 532285840 65656832 320505855 151899505 154059898 363426094 810680559 136732573 866814598 151920878 608465809 697978709 844291108 425868123 992209216 410549596 643671411 664723498 839545955 638331347 750372510 748351591 796780845 716307435 747742536 314695194 771634075 13406674 511207792 854309045 979958420 857964980 913095343 566793696 780620975 190712591 833416511 940713562 984567046 332750859 989114352 404102895 832476263 329469832 914798590 930408491 939837601 938457858 993038194 26562347 250551048 969654574 969906206 621485479 897992327 44088800 864471010 235331076 495548259 842689040 957797606 140299630 929846448 25619406 955116967 15292524 310328840 410354213 467628947 79970377 916872222 605372192 932462974 593856563 808284158 16127274 256103583 86892527 890253163 406903242 485400386 923975257 956744846 228767918 653841016 905017099 927422567 839410530 868356216 10196621 697638457 992845747 998836770 847493381 936130852 486692529 862950265 827068151 907153836 480651527 835987895 487027787 872024815 982662320 998109057 650944425 735478452 146531673 425624375 950623352 967880626 211044295 834275223 294579747 970927882 820062320 892055721 215842973 459891019 311980429 356569679 373477802 719411743 555051563 775084330 534802972 564522707 94467955 191695194 343513235 490101949 984952586 991049111 819523056 914261296 792304131 855305407 978705191 989748249 153946239 277143578 580874427 719016330 15522102 594878621 138989811 405674008 735743177 929957248 360405011 365534558 117799744 273949531 483061248 870063639 548298988 821613425 653871549 922097070 276781292 894548410 358378024 977540728 559435167 890303877 286980454 726601667 977066035 991402126 665574183 848870893 268561985 627672025 7649976 897852014 803194332 953157173 189470844 313886663 814391388 917422565 87340817 897130037 702079305 989411763 312578842 563869563 914588112 973460302 666149452 989487683 902051347 938306597 758972209 792047652 405639891 464006849 795666879 874060350 523226281 944643862 403336891 936018108 107671588 266274046 475602304 657422496 11001453 327064880 455988472 683849450 323072706 433349743 547817714 677143642 702772236 953725032 240884965 741445617 966910901 988662022 5449260 777927509 375057663 437830816 895689843 906251663 499052542 798202283 587202790 692257717 296626484 311863205 542052740 637942480 785517356 873621397 910948799 918565606 736401859 960776398 681287283 882433194 499085717 630248167 399048508 653538028 692651740 931356337 106015582 352011071 722582909 944801452 8864164 100428578 789713932 964623425 473028128 852238617 528525162 539481070 859298187 954986266 388645557 461047721 25866377 645039973 312013496 662549982 168907668 401872491 389205884 804184661 47281079 488863965 518392392 870145881 769682519 787212527 31275568 815642161 333446855 820227549 884332513 939349826 932150212 937921294 281071929 807790672 88143465 675000740 700898991 984359592 886706719 901665225 553282114 644092841 807021229 848144284 497507124 966227766 163601618 164861164 884416218 938271679 661518123 872862230 564708179 764735342 508754832 858524776 117014004 421204147 813488405 998918919 705795182 772924264 990327312 991952509 708504364 860918090 346738409 885789503 92567326 733673033 916647275 949266003 528359764 722915198 45843331 250928822 553874864 769908198 634487561 980584780 546925578 690601912 383599131 708540297 594033108 799538185 851090058 994125040 442884589 627900817 535038409 589697028 254938285 976077632 900038038 943417209 96584216 115407626 994138379 996080102 83853532 999886022 875749027 991425339 791173267 957181613 151510565 850416349 947516448 980808457 43853225 206303667 128402985 777854353 426304967 829097975 3328997 224081531 952874494 987142676 487966099 627073390 706751404 746894904 467124518 895090236 395228648 427721529 650983923 976294375 881451674 907697226 437857351 497450463 959529414 960631527 112002752 431990614 743807887 869453880 288712207 427267377 156371659 609784418 409224764 659029985 943485252 961490234 518699604 919292550 509555364 763703075 416361014 820533881 601265439 903600647 69963093 908538258 434048342 999604649 745203804 801582010 873377050 965533295 922166308 972922482 759564913 999430545 280645828 872463139 33616952 888145082 558013917 628432362 115574573 954931800 729693096 890187865 592299136 788496212 238504306 928546430 928208808 936306745 822722916 956897958 482051849 582021106 425740473 920267113 270659233 600939602 95937499 947610676 629712647 916483185 112878676 375851261 689224301 840814543 134579680 800509503 348775004 392678193 76872094 756691694 932589230 962593835 243313846 666766962 57665195 852988946 658056067 830285377 604025258 825122725 493035058 791620871 627715728 944324990 601111656 738711644 153426702 545891710 288295102 776218278 99482997 576084849 348186776 876764431 120413250 865717931 341354505 520029490 633486971 976532197 285711874 683349114 669228172 772094775 446616706 647806770 449650302 903633982 967309060 990310456 470902304 909881426 794396341 811533560 830342612 858887374 547187361 972936968 528357241 940856045 966386149 972662665 845360073 990908542 633482424 971064861 302948830 849723107 985054088 990703654 526991298 990989942 589542158 968242203 525757461 867779403 326768133 569743045 557632627 961657254 433276869 456848413 292508007 509350560 340061103 516957207 684557328 858120412 105578288 921993018 385038266 587432877 317331788 594700452 566322924 796913068 140444778 303085878 31593063 557604806 79458053 87751481 538188337 698872021 952945546 959517635 526568046 655434798 827778094 859490770 246443632 632964805 468066325 964977296 714733775 733356724 178925645 374429635 96588354 333054890 614395754 917695299 341499840 424019042 630197339 685593676 864915991 935567997 505633405 542975857 838804596 946689743 419968829 906538854 231931255 498299073 787433738 828738425 199893220 778152197 694090233 857494075 973581823 979462216 189237382 600183566 955240339 960579343 964704604 993641138 698427622 852800047 979682637 997422139 400480560 898203748 344831200 380708730 511572643 839531668 273961494 545139414 233067587 926259744 217695916 400584499 684261946 794270024 789928295 949154162 521164600 887426840 138430567 597845569 828734805 942080361 923257139 970142626 385899965 634958152 416343669 504182108 363921059 578992244 563527353 931071727 306569784 893579076 84293681 312037238 701158010 764130644 519274959 735273445 567334323 839788809 367842433 979878532 111253941 465509495 475878994 643856497 257829718 883590634 478949707 863195801 595516269 669553729 806822994 861128235 582247618 592915911 116148213 320027842 790994531 952692065 723670626 895294588 439970671 741260775 577546206 580757698 985536028 993150195 547164952 900606688 814324567 912813066 321860979 421316400 206909498 449446738 442318695 980940767 694186497 865787518 717734705 807294177 8924883 989722789 873378450 966719698 712862337 835175901 867720663 904423811 823370948 978563601 947947427 987164872 361723484 458528718 60217767 352645916 669763981 816407564 58591204 954902595 420499488 724033705 929035294 993083209 216515335 365817612 398678711 765610557 740846522 747329200 279654918 604843690 895311481 976405349 453464188 556430724 102605169 971189640 590380483 996437242 712742957 938142852 413109520 531379866 226655017 778774447 24039564 958663277 507341830 850055383 270586914 324424996 544929743 997342929 446742145 753567457 878144316 979003985 680526523 736566772 861336708 870305768 687600137 688310204 701233781 754094422 774335841 785398784 219277237 957433936 642301993 927419348 583630909 969881597 220296908 999649281 796946213 808236775 633268051 698368162 790133523 924500645 541735622 793070309 472755465 557732745 159412123 933452744 2967768 94955939 761328183 958035226 258471149 866103566 545796766 938232374 559436968 904389292 115306370 766743490 999040826 999396964 204163694 314274069 943189993 968310245 82791695 531808495 14908516 431143990 458510326 469987159 46999638 670719290 829499795 988587977 599244728 880557060 307820101 792575048 37079256 398428444 444400952 806181138 521047396 648311901 311529971 779709589 853535854 942818534 797726253 920742295 793014770 895324396 25008320 405506043 482902317 509576104 178583577 697287538 105079117 212129049 780806690 852590885 390294850 840263059 979119137 999327800 153165208 187965209 187310077 384164906 782321441 948246635 911157201 990321826 290058927 974090271 921723279 938680003 750822917 846806776 289786095 715226774 974719282 988306459 246358405 403002991 714696091 902662675 236143220 814560274 701239129 941716633 172389381 827567080 677656090 722926370 278935898 723721795 655214846 719247781 374085485 981889820 943009667 991510167 17892233 41979480 415035204 697284720 933992170 980580064 460334700 809510963 737739042 930567760 389985263 765729454 445405218 769504803 82602970 132367932 625586538 754490430 484718176 741368346 568245334 695766848 405223890 432039151 262334471 825009130 148313745 234441130 459757964 627446639 852927549 967172015 747559743 999084538 108387311 417625483 726609136 867535126 480976315 896628327 469855779 750800163 451724459 500125912 651347376 686490507 87879416 495021408 121404335 559393650 628547731 774946803 697211974 750598506 840843099 949856383 807607653 967184963 896463497 977075526 526125847 791474185 927875947 981390243 963082111 974205749 918346295 937059758 63657933 784657073 644933638 698528591 583957096 776852320 180286538 864034331 450402442 960299812 258313166 617952432 297166247 528565589 270211388 999940275 453143098 738820243 129783177 808937581 436037126 782627000 272572595 439637010 41257128 189887651 596176478 816468073 755627619 966820326 429925 268743993 176183047 900063943 268383448 822508080 832595165 908499594 680857111 947243645 402251835 753054413 61034772 408167489 465698339 630904421 630883067 667654230 579468796 777543531 431280820 523443162 732776766 816818473 115083677 989522843 991063573 994559919 596906164 833992531 462860445 683201182 543501384 780587236 784911960 831301059 661105288 759307848 484339093 692596598 697570370 744524771 457068409 481187046 62085690 246151767 166698550 218416092 638635752 696576674 617689193 949571242 778817533 804720323 852524937 961584862 956107458 976132337 726520120 819295209 433759694 506166081 92381348 660245222 409217930 445969253 470172202 849450820 287009532 859063117 147593942 286787089 650285121 917377670 801673537 964417721 517247695 670445656 777284632 790005546 463669294 746020074 811449364 835091350 212473717 945568595 857431397 943016730 446237730 997118913 666651979 907834323 127981984 745243911 933723562 974716564 600211649 938190945 578884674 906266006 328000022 728749056 901240771 955112166 430563988 820793975 544941707 658299816 346295078 969033264 245038936 323693752 819902301 922544919 610826343 638184179 775041836 860595970 652524454 718213170 38051700 991996172 62925389 738990737 431508154 951663430 367032299 453951188 811454789 955661850 414994518 534806486 82357250 446993866 556513868 751304293 578537109 594935683 665617888 710998188 311221195 751017165 951321295 951960891 851109579 951604361 972247473 994024406 300582051 657454242 940756958 945867043 296740043 737892523 555424938 617619313 117628334 854803029 754598343 831669659 652033812 652401292 231679267 687339789 965474779 993649983 230600201 374799251 334736814 628093136 580883104 943812306 411499487 422802921 126094919 793991260 378197384 408607724 355443141 795273181 527725254 996700726 582237439 996135737 477183068 960513603 663763379 975884010 824912869 932145063 247445432 880197791 876940657 938178344 812018335 945324705 565755609 952909903 809750594 815472410 95684783 204525799 560586899 978424224 677570495 916286867 790312432 871248036 987159684 994710584 343393843 922254114 37757678 854092407 871660088 895810290 234264379 920450708 900235557 970699803 913535754 921826353 349465624 902261137 561320439 700845743 974817313 982942887 859040432 920062566 238714642 490427644 771367644 867465171 952080562 995045852 509586978 773335310 705275178 731838987 816926551 866150706 497211158 695485097 775725457 924673344 150867595 920779945 195890731 278185208 116444399 534928759 773296617 840802555 171046446 342735871 564519854 678084099 841858353 888063340 644319332 889553199 622439367 822688956 61142540 719433436 958109318 994906015 309161029 504587801 776630474 967342440 539161845 776669350 913586835 977890374 488646744 569006348 508691935 613381769 19951593 89452929 844151580 858811170 545370010 863406150 286114460 704883377 579193166 823071540 817637859 919548355 973317467 998799944 753202470 820426521 331708458 864485343 43153003 700820470 333169369 374064746 418113310 563338537 447403808 797001812 527345371 930645578 502397590 537405208 951845550 981782337 110683417 471657865 151147326 838616945 657292383 787178418 777529004 959639853 239924340 741623777 8715870 207950568 930077240 934808830 292189425 341221102 584988225 951675168 844709004 922083700 368342131 631551074 408519286 837756930 739990584 976607053 236056744 515545320 483479483 985910504 539848995 545975358 701936865 885042983 623830331 960683604 190100827 237128031 528583919 664580280 353964619 528301087 751796403 785916177 986782510 987976700 31934078 871671925 873887658 877847611 988443176 993826319 291572653 969218820 350640598 587601148 13468738 217428695 932519701 979651497 637985659 864859835 450123466 878090402 243425240 727307575 104828158 768145184 790716250 831905422 671818831 929688977 549736392 752499434 553635872 847648573 244279746 879686671 36221198 865996132 980105801 983380589 824023825 901776800 69585586 794636089 718278928 725420662 848654668 910052307 813464274 857647805 879719006 935560170 644092885 670010853 977243548 991905663 834461688 846039442 82952201 267188063 224771045 865834791 662688129 897955639 903980035 928839990 9171904 671855092 561857727 968632360 333011021 871524400 107798749 374984585 480488748 505889242 871988372 967431744 304104607 989514176 679626997 757985090 226414776 835526671 73809578 846268157 268356239 317713171 544400856 635691334 889510934 931090348 168794507 406116905 277168682 585237658 852631106 991010679 128865057 480780463 402649514 957951967 798457372 979244719 321648459 811134392 605513989 835404320 815140802 866219749 446878189 863208624 360236531 904345460 546354945 555425265 347511910 457736613 756630266 904389378 751678991 942115639 254928107 564211264 994327347 994363552 638239915 991665529 478822089 706751867 63941607 601452779 313452810 605576518 245149219 683740626 301813575 569503777 859864231 968796211 61115773 487286415 67357770 711343386 956233863 982583275 766700977 916485890 871669994 878519509 331811913 711593722 854335478 992241368 585612461 701338288 986485334 996723023 374042328 939944328 912363303 974590479 879194656 990187969 124467298 446801526 779775487 990367204 257431788 951122969 183607620 316073332 966647174 974431286 279299179 742308928 815186417 888197014 520788883 769151769 210353634 861867718 77436304 723823459 271235922 560892367 649859454 822587270 409623015 713625757 360656704 522349573 317013606 605010086 109537511 609733507 145015225 850860808 531469823 950906241 889965311 948789082 106241303 677571531 425784860 483005069 769398344 771559886 405084974 631763515 768845445 945726525 386185473 547013122 587893305 758119918 257826583 458236924 625407564 674932735 63941516 337612500 280512497 537403623 147305266 917726344 445040460 526597220 659994055 715855962 415321127 925388273 640870266 822232380 670473498 855612725 729301639 876309935 336546136 831658063 777331491 783830019 220995117 385830395 213884366 558734444 243307661 506359219 909069054 999288904 581470461 711631697 866815382 998427079 819362755 984038362 195286233 670226902 940070692 979566143 650518750 999567364 367621533 655889603 499906859 635306719 569329402 721608550 413863119 553953616 600695779 865092209 692239469 860777903 68456205 295001044 644607142 645723970 73910555 750622306 292860563 928887340 919667100 998182415 47081046 508561446 318454740 393552599 386675959 530968545 580660478 947881072 188563760 991175154 688200102 699395310 365639405 942969792 817433600 938703886 862324850 933645133 618080914 788455715 649828433 839542895 894900645 895937081 947070281 976849462 905995877 999143616 783548127 931170666 416217977 767440198 776146994 876060011 966852486 988924678 236390450 885300840 460047402 542212616 551207146 937093558 554570535 606524327 260174529 927761171 744872990 817297674 915407805 967122489 836019921 915929816 138558833 488754625 940798990 970673602 328651912 482240862 233431155 890356104 763082820 790713309 236042177 707264571 93307437 338913884 501567516 586555748 312145207 908691657 916937261 945113564 488289948 808083750 741167062 796627259 177709344 679783285 548502371 772417093 738846901 981491656 81562676 233540039 534148651 786460834 261533040 332877165 290892683 845200291 982387090 995348729 438707730 870418844 167495112 318490708 636332213 815005793 442779793 700269147 188989477 236650652 972322652 974327879 474872341 717624866 638398343 884425626 105237450 689241774 645795713 983509797 516472918 560100959 556180142 623124635 286991012 831295449 178261211 195048124 835146986 931962685 16257130 26165201 498329879 765092213 177987681 853417687 266097878 747136502 184539970 214353485 229948224 966271154 584950287 849791696 808403601 925709858 649863344 660056443 81743740 177954825 463717668 802590192 405513001 553927226 508251896 834928630 588270526 710851376 497201447 833483587 896119294 978030948 588884761 739969938 616448079 683445356 584550255 929920213 192773132 856174474 621410419 850132410 973519868 983299753 575752756 679322579 346057887 515189762 546626057 907033784 481031754 741858278 523792009 823731699 688437094 929813708 167659305 698220971 248247303 507617436 830142166 987390350 371156997 601423568 130069995 569012791 326126465 371351238 422799487 687825119 904902479 966007372 811297212 824831900 752037904 904830126 788738324 848098864 934591583 988504540 8101201 320469956 417077164 929294134 2919147 771542699 425914063 792948266 43730364 129674741 383077301 989890320 941500895 962046167 638473516 728861523 402858752 514037938 497521869 959272683 45822041 737809608 159157429 328756300 98416404 605355458 761890701 769073571 478896978 710331184 806575773 902410028 850666111 961053619 885805776 899835330 937063849 981888151 62858641 762914176 883047427 951740461 106968837 258174823 446964476 735391824 250367468 899197218 521941497 571484819 291125633 394040131 162998791 468949217 950531500 966743627 742909326 784795928 91683203 559305047 609062084 939029198 8984025 336973845 378552797 485088988 319766644 878891227 668615471 877247994 742305057 826361523 827967204 849515112 818500299 975220085 148954517 282553823 324790856 517974784 37926192 868614890 55572756 447498301 690752013 717663412 2344997 587254797 840259565 927037144 323319493 420501302 345315522 946574903 178207525 577821028 453757852 794405825 731582160 799123846 28028974 597030322 168329209 208575889 633678545 853079236 840412012 947250464 323544311 868698975 992817919 996883869 519639632 914450833 156076634 907518602 934076800 996921736 337469390 766212949 319111836 678094014 288013075 743910207 959253656 989400976 873429189 985197459 590943400 898602432 81819357 502221486 434802038 449237318 112371715 947794139 498916729 999518023 83039398 455877616 891888042 947146207 57194369 406303687 308023760 361009843 986683258 988416530 767767853 877805148 33055877 203092000 378974623 859492998 167831481 402081311 154164627 572108731 83019768 956158194 613761538 853121381 172813045 878116516 474075633 947892230 628145682 754634760 316829220 406192147 925755316 996736672 891598362 971318724 61157940 919022609 864068953 885872829 727482683 995334084 286539323 898200009 996002564 996828832 77439621 327023857 728290222 837639017 154675930 771167583 900664468 900762396 469542589 827658766 8973796 182956840 659270558 836336051 368016682 375141450 261257605 506734299 731107572 922751191 526578507 569752435 508691844 589725492 309468071 353330605 427549880 439643004 552026083 591016181 824582653 894682928 705174402 909493360 849224559 892194295 564717248 865145166 463744185 939723384 556487264 605201655 439750423 965791713 645229472 752400262 222433527 993878039 239891127 431195088 215330895 564875018 861595182 891990991 994693144 998759220 876400894 948699274 938212853 980849788 298505090 409504981 388867762 677678647 189494150 352103399 199530772 701537026 316229931 855039798 983398096 993109350 864394276 897303205 417524141 925393028 937116876 959534689 199306563 693056178 117593791 842785584 831871171 902614194 499940131 761801764 720827586 791695081 117530748 801731026 967185710 969370347 258898174 827945734 456194578 728906212 647415807 770880296 738418535 994445341 172453934 789757744 854693120 983349588 865176681 866509412 833302648 991294382 381831148 991115188 37330607 580290804 228781312 996569473 915137828 959245957 512767604 920706536 928840285 968517700 941756459 993568502 322883674 707541351 978440781 981276994 51670693 864168997 346475284 578473201 909961887 929591341 283350899 721029663 274377209 970067334 435810682 670828800 768129685 851502746 404408749 431644202 981196904 994837782 752542078 937941605 65993259 393299510 686623829 946794128 975606616 981093410 240279365 306202011 599123233 962778717 670910736 738047874 480443316 496165581 235528989 334197333 172758123 715747074 341602691 461892577 471542997 946155572 155112949 492943496 831984016 923653058 78638543 261034769 751826180 770256606 386692445 898293915 800298023 970517121 47510537 922561547 445480428 839087770 282713726 724694426 374492878 896482490 689275548 696832340 639937027 933102296 656602154 710199854 741412588 798441848 172884686 184185275 794931670 894816667 894296627 902655921 554930970 774159732 20247597 570237001 941754430 988024992 33767653 314823550 204185019 742596594 864929939 912287883 143442347 615243723 368773723 953871104 553294748 673970071 95125056 632811481 25990214 543011071 514839735 937312459 284085044 751739081 256238918 763708145 480958140 839546853 153580213 918070727 34923939 262852128 667102270 911457141 729817583 872644686 807644403 938210723 655931671 834089282 949709768 952119572 156454468 386135682 380003109 791467940 773453524 838156910 752106009 852788398 766181833 807372380 826609120 964189249 38750292 966705134 667489145 808703142 958458963 961668038 846752826 963963484 205886852 475745343 211463622 762615452 737158067 807531035 82450712 462540082 520784109 891873092 190332878 597129161 289793460 809991091 682554764 702307415 617291542 796807718 188849891 408912681 770302541 825711394 793536885 851312663 199847274 533515965 224612824 275334930 26300078 300418503 823837614 917693351 885976401 989657495 909119749 979424287 962571114 969307203 854406494 954977071 29449436 937218495 876771039 909348003 910707189 949640584 192573190 717291877 632289709 743487723 569573842 745605805 123739165 611542727 139928465 388408253 464873548 744483987 610598409 769274522 908127191 993912610 371220083 542435085 391388985 637685484 171888415 648915635 637240054 637545031 434313537 868553231 504820076 656234744 108701831 660272876 960828498 980125934 945435133 975449557 897793801 985796661 524089354 623901087 668908618 809781702 872679147 895207143 126713197 856629589 903082102 958236919 629746147 671430087 566891896 679597891 274392460 554153526 919670037 996440002 966386147 975091441 505987845 617376153 856725820 994457600 464335482 881956729 686535818 751880537 709221827 960051981 983455684 994758061 688431653 948163726 810172813 881494299 72409137 914935135 225697510 366951623 354165312 427959686 50786589 626388531 220688993 312694208 941626598 982152970 921503690 945024820 301002480 760359407 47386757 898306134 489755992 871311644 242901930 897918494 675395894 821719418 763918670 825896311 148396855 389720344 387327964 695396393 15443904 806110651 705175189 780921677 769618550 982633818 509025458 896049949 832705950 885878516 428625494 587741051 117127297 966255624 232725136 401775242 505765229 589989792 463532655 752678715 890289049 902823295 389316919 897791394 923124458 954212223 940871554 985181715 603490159 935273485 754765569 850032555 5412281 384902197 146458800 196797785 66145715 73353841 902775831 995165829 665759283 953838549 354498049 737762752 591592812 833713939 302123608 495037774 201261771 365959419 371274007 448123077 306346688 319871835 943354931 979556610 79978201 688351258 272374010 769247086 96447167 439955212 704280702 881219825 11467742 668241771 223612955 524032021 393984566 449771177 781125765 907172600 12277871 262474674 108250648 623344441 156481136 780601004 229715950 255787011 96933390 859242042 575700921 660669570 17083534 961070233 383507063 980308058 228124600 461284372 40118689 881148464 89976761 234567376 808263324 887153859 554284476 745373668 503086476 659382879 655783839 950062509 951722119 984478269 981416808 982499479 159258499 359742239 459259112 631505762 7671382 995527588 986625293 991009213 29068586 391161922 209278544 534877813 531978368 810714245 537906068 747224609 244583220 775508128 804861441 981201403 353580433 427552664 198170346 780983793 154644621 401599261 946212316 993099473 475900422 628588409 278121947 791352054 570200516 836405849 661646410 803643308 617638836 831098027 869872779 909147386 1703446 91418966 826176417 832051087 396294910 654983731 12640588 901711624 169564364 262078803 931211351 935049490 74134863 883696027 511672524 903005681 497400456 591263046 31057307 277084468 938103431 942977834 670684606 950166064 396920488 614565044 501933108 999538671 975749969 980932849 618573256 657041818 103682406 265164810 566675254 746832957 711623381 821649525 681347837 932566853 833988239 883604905 735592053 747601254 754937403 949230559 662807203 939268245 460899876 983959000 279966372 368657165 943969844 998661687 357744293 680735735 632897727 994037340 617689745 688079034 574186360 638271588 503251906 679037794 827418165 902963261 370193254 662807158 114168016 841899331 635860983 988022573 567165867 892924129 169031164 752666838 198713474 225856635 278794773 709927878 290653254 657144301 343981425 411172964 124655837 954568373 416389005 980845624 246669380 286276013 693993851 843136102 377834003 457634153 940872593 962203236 202755920 560104823 774753624 953115291 360888858 717887575 538268017 794999844 782575467 942820590 409072469 832715301 48152269 342103479 144978472 906270031 151207227 589233573 647223755 876947250 308720570 711607019 182461508 340258186 614586265 807040643 443734533 493166249 623141949 935012787 91903463 974917862 65559569 885053864 478149216 818569190 994626784 996052484 726294952 882514726 612143043 812172949 929088413 967999943 216349071 972352119 837337298 942419669 715241439 962192228 293384100 905619490 125170444 465956180 273530816 825064725 493884453 496077598 11050736 258480207 660249540 986847278 624695771 680870242 447860245 917506914 345204964 966699208 448305711 646208007 542128822 833882496 240826094 970034091 773908810 909146361 254042679 612929752 639311577 703226773 369476574 665714054 625501792 751327992 454073222 894277222 970328972 978681042 486139818 583787998 792411596 819609334 945948067 965980208 339895416 613509093 773472236 922898746 182970762 676435579 562018523 677362839 632355436 855227283 571303324 956582827 303530467 443957962 473406113 687476306 421305028 731079546 536321265 936594289 743014831 887161026 308088870 754687011 132573203 838417382 930219602 943130725 241091458 271233554 969925806 973031163 181726342 349456071 618991779 779909432 473829691 486104320 873655250 875600543 198680383 663854271 222205091 675908753 132133935 965422550 215258094 219503076 318548068 977172638 836180578 953210560 391014197 407779028 55837824 966093256 751161431 955265407 685324257 944525463 772635681 804054352 398674032 568015470 977720381 978827525 391458185 535645601 957653004 990684889 667207401 839563424 994711836 995697952 163218632 519780693 632610632 968329052 125378383 518901642 404351611 532828806 158462153 781096088 458037412 830391059 454812226 712826704 170402386 674265714 732755077 926478840 567173389 989693775 935448401 981206058 535144181 665141532 89815252 881374394 840677949 967518839 221937613 568939232 305376236 984741219 461896172 618372112 791940544 830047214 6645629 835388633 678423533 734047468 464509044 607644330 296237697 744829536 55661156 574131441 911834115 944500414 550687178 792071473 459139854 764027047 297218834 924003494 668330763 769759972 429913163 949962903 361068192 735620843 618431911 936972835 332291560 635410607 724030232 769329681 698565016 788770806 830804103 978621018 612722042 912966464 528577415 717059569 506480422 694715186 388394635 925409028 562090414 814432120 255870795 960061590 521180077 666118210 588439801 928778391 927380598 965893519 663422482 885992041 407446288 750384166 698308925 862915928 235341578 405324947 614411929 825356401 877542460 955683269 186169469 314988576 563402032 854921812 462473645 877605083 921448825 964807974 254209923 366736101 865742671 948096228 351038781 689406617 626826928 783964885 78433401 96905811 145061580 532901642 96223672 538499653 864486037 970453730 579313264 683389182 145288747 496772385 559909115 777052877 552293192 916295681 137883953 886538626 256060923 776455889 845378134 950658244 251010787 371196219 114027751 646030738 989789393 999644911 22193669 836656579 149665865 166073516 993068813 999367581 861852722 984703879 133122594 462117245 400477949 537930037 452801814 699465359 29595492 681946791 281523283 389193255 436922873 525969368 804631824 862139274 31753674 817319788 854759896 969000291 521323392 741989177 903663918 935932993 865084976 979991056 426857180 561269039 880225786 924282482 762695627 988410009 926280922 982332106 710373393 896839456 267341699 777144077 868120930 965323281 430540747 955981767 236225480 791801805 606100520 715036659 369420341 394278272 178861905 654191747 539849169 724075287 915558921 933154800 531413452 984618268 880480005 883677155 9417520 590853008 674183321 948074404 75646640 759490874 728272225 964302366 624304101 823680489 434668021 903443337 139888562 641435948 588413535 823225199 948497388 987995882 661233543 892332827 553686750 964144277 436812950 443343794 598861523 925893276 518630179 950196957 432964453 640832311 53855598 677621546 967078608 979521897 784161832 935269581 94869169 872501837 225075794 299882863 551542375 970623871 536513293 971015273 527497125 654921139 646687696 647023478 7520585 773729575 816936842 961322456 730177949 944878688 471719578 718958955 195186085 697376615 626070537 697105110 275783273 688133423 744276618 931602264 67594581 893667076 855735608 894411688 286968791 580455579 280371619 534961984 796323274 809257112 299142795 722866561 472196732 531122503 308860026 846362679 477763108 596164564 32030780 475958431 175193913 797607610 687773514 909179074 1572887 342881169 986094007 987103994 469290833 770475040 540363475 581060250 852774999 898210548 646541080 855955324 990852539 998689772 926672150 968229827 412678811 435743378 587487848 971388394 717983999 922895344 539993867 824522914 610474539 786422455 451524083 777921024 537800296 954136676 168424212 774909868 927978310 984715494 601530786 877840070 825243106 983883578 209192545 301551062 719790492 872756954 550161621 829582598 327425560 878154634 909431203 980504157 226733171 313334613 144906932 796085831 562737486 958068451 154817782 221224119 861534378 895187210 273255704 698942017 692858175 727500000 582916106 855438587 545016883 895441074 322529782 691213656 239224772 822026257 983306275 990507109 605258281 822512783 790424179 933413177 646253759 991993809 584328406 695143941 339966085 703226551 524772782 577303329 792469164 875802991 344628116 902279533 284281186 707326040 854635523 899580229 669277933 858628218 654646177 787973610 575177387 829511608 631702802 674333990 69051519 399513882 487456285 615632730 150200061 492126042 931230092 964533607 192932893 987163282 183741906 723911541 867240869 870960141 244499443 611786020 772453079 925999929 508520089 826704219 334627412 888256241 902770819 950316442 705135407 854449710 320776951 954973093 779306238 932849070 629012601 842208490 333423254 562362118 455523857 539424587 683164618 737956059 639284461 836896277 729745835 800327643 621003227 683079115 608910628 949470547 29846114 840069706 425971547 901030561 46131365 69785020 494656016 926577026 689380008 705060360 468897270 749467011 640644846 689058665 766527896 927931284 903146661 973431230 506111937 544494289 345142774 441572683 363009788 540335504 42201925 431463482 271753737 759660813 400735361 792619599 331109303 335063618 196312627 297206825 774184905 805248910 612150283 949065316 80267448 465898062 981436604 991222598 226556493 866417928 955570902 997954559 959768687 992198860 867304834 919760807 259939701 417356811 618130911 631617355 431778456 996660355 514462745 795812921 347526314 940326949 212484255 988098166 390285414 713271634 782865892 853329101 404229692 870310777 386052319 494413191 874363806 914845088 196410597 875626799 718482035 744030953 511177453 827182675 197949244 534812001 264432219 990197530 858345873 873206449 996682730 999763478 782103572 995762562 678803221 787422648 353246116 601921143 165722628 507605646 575023871 982670323 166938172 840176725 26603596 748022375 426931264 942151004 816798435 943501649 937781592 979702887 251191439 803105866 161637487 555124746 716139070 716862994 528800844 576725277 220834425 895338183 618184590 720355705 911187783 921341435 847496925 952967338 643767847 771747022 916347214 943403395 113848345 206899851 27581977 81962355 940782434 986785538 769101560 976064334 47367305 441708907 696282468 902474485 863625433 933454996 682813082 965951903 420735606 680665411 671209442 836591008 757702366 929372703 118409669 457338024 899572367 919052553 529330123 777708056 738336847 840879375 707424972 921627941 750951802 781291365 808421413 904809055 135869015 877680936 433131959 649903580 801524009 900551824 353241582 865987353 74736711 808763547 796960519 953342349 410864309 871429339 251739145 365522133 781144366 911556507 300832049 969368341 863450384 947151753 885691733 964466504 848729404 947763089 852669782 884512431 139379398 343162573 331630357 835431880 289945058 386125801 268514273 285369550 58245416 563458731 824926691 878729345 878140384 905786575 76227670 149364251 983513094 990143794 751084460 983724834 977787791 990018615 896462417 922511888 562124587 707368968 721544384 856785312 112443661 136967456 779390941 928726578 346793379 445858412 870364913 912633288 22722301 927388721 99745500 987534510 131796015 667019523 480254863 719724616 37410789 56008825 772275042 975527135 986518435 990746914 737796684 971639631 191826061 557441759 775250529 940432051 892503596 935181583 968916528 984803026 584130435 956915302 348305437 818630360 916859536 997691198 144548917 380570705 770639121 815641319 47591372 371775253 19664328 464815848 141025074 348917906 633872538 880893850 574781333 945940929 162742120 403879789 70419681 722885769 970261324 974131002 609390609 811459414 749174154 801043779 923592434 929054777 903429334 999288256 256986664 779775549 727991328 919895538 283871985 767656940 835260067 924795719 887692596 890268821 159195926 800766507 163654569 744614921 455107359 539607201 449728927 757644857 632178824 708724757 215511910 892439709 154785597 497597639 346016038 520779849 651282819 730052341 704322033 974579767 595761470 803022375 19146050 481827450 639267826 715049166 694701275 852569068 130233471 576619517 91866808 509103105 208974225 412655967 496919143 636273739 461788075 744534523 923903588 926552994 396080021 665663613 18084070 410632826 365804002 837368144 268704911 623334668 182085194 442859117 488893484 713324292 295946342 420766691 490387950 681601238 535417959 717228834 564997151 793246029 656364731 930638779 833189406 942460797 373922653 976522244 459231495 785400030 436300919 523627875 996587280 997834087 141198109 532201771 608087061 917245504 727087019 841689049 837126490 854428760 762401254 923676225 886699846 960477302 142115703 332266609 527958215 697783619 982600426 993594904 674298941 903321988 212514664 362091957 606851699 640629476 575406625 791958842 831022674 916520124 326786277 916199962 43379238 741915991 178369671 458196323 118493093 671519674 439801905 971817602 796348724 930227056 179434467 469419855 475341458 915081122 511523331 884524348 654329218 839130101 650125783 939765769 824084374 895340120 894069422 963930281 123307027 933252347 690608316 700514951 686755823 887682266 917923677 977108677 641010359 844080038 232655290 931463077 515924042 825988173 128489692 925534941 360179841 929327691 958991894 979218461 802363972 956399280 246384621 408825223 537148963 810514046 553486400 597006472 202601812 334193487 887783089 909666466 498171862 841857824 286416030 417471418 660997941 711814763 139929504 651402101 977388055 984543500 981722121 995920610 717093854 994803963 665339357 691134761 442673865 907737596 298798969 365135684 21111160 140910768 275610545 468329110 335875411 459242734 870763670 946692196 747436151 874251386 601934869 857592317 301114183 438252154 99994526 143696118 785781641 897740258 44871320 172795251 924667902 938374847 332294605 555895382 577059145 644838704 346853401 545301017 682043833 927889167 330246623 919190615 909945467 992513365 369215662 879663940 595434925 610216851 162986153 548081113 294378071 315174590 469144614 785069760 487854367 770873569 71244452 457618318 232949519 742796437 505374765 599144253 627809739 726591685 959403066 993983548 349214713 647443977 650246705 942165919 215974888 746342694 253111719 729974373 501032134 688954600 883170707 993875779 645661910 832519105 78483353 273271281 499819171 787944430 736887455 811596415 21596874 480543114 409222708 626184705 710990676 891003521 435091434 903518912 623016520 767998957 969771468 994122704 314226496 859159491 987137105 991805869 649078967 779423898 508128269 876298291 281508237 777405640 361958942 772727819 792002783 940628445 265778970 538717901 636201371 657365641 768017688 982500449 338354539 808060095 9241742 968129772 686753121 708462549 85733220 190399324 648953706 696058850 320148672 466523326 785207251 809093771 934711613 981204029 482156889 858059217 54568996 555394715 812087348 882480904 148442547 649925935 903458703 997704108 236620096 884427505 688852288 704202169 391137982 861853706 48399361 577393599 518033345 844452539 916581240 936988276 990243315 999726912 470665325 652382450 89317506 723156471 40804256 649477739 443873397 454930682 85568219 739235087 344673683 345204616 476429846 716072024 57945906 746020513 904898242 915670433 404571767 605878159 81966012 261525674 513013771 749385999 7937955 920761075 880843245 886366477 341929580 868216579 653044233 736753312 811010785 860486592 967566772 967938678 469072896 487897651 210899746 417727197 370805428 687330456 848669319 980596772 662967679 814077311 290184557 415462970 445627321 701893422 371095989 794641449 226537874 285450663 292534588 872523376 349727439 420015424 90308296 704698153 414501345 432140533 798395900 819398800 853936152 969877409 871896358 971832991 117799414 494267331 118346508 762927319 576327167 707435613 762032495 932408710 970675080 979546488 268060783 547990841 411128429 487683992 508273253 783146584 372598925 963147391 370668559 620951152 692644785 952964233 357823841 812524751 15251316 163897700 368160318 421143706 492617376 608713191 467900270 734030495 785369159 816002590 588197978 687469989 83718818 175957777 832148028 919318411 667448538 708970764 684796024 972498756 829474439 858996283 593064296 992236973 977911678 983128523 919537782 987940025 836151891 900396016 787314787 942791799 35457367 91464445 444008388 749809571 250283774 437037592 195530535 982058177 486313466 929395703 484964648 576303358 851952021 871243277 20889360 568830320 276829480 661184485 223872344 851976210 530035610 697555089 17928205 866943301 218746767 363320391 194132724 347522281 336349134 776339866 911603194 958504990 74793114 684008759 971568067 980887616 595444783 770537848 796392057 816237311 943663960 988965068 594432000 877779670 869742368 919177675 455596719 984236218 45759846 262239879 31290571 244276561 669054823 962258815 182592326 389428134 642697292 864483847 246525944 747675984 722751886 976587657 816350208 939737355 6016451 325856783 428420903 553921753 410224963 753434775 381069990 908618865 906295242 981019397 792744067 796438043 932293514 966497442 319094815 802484655 982227541 995395623 77354529 653981172 394277335 582818358 318242330 492605777 893316253 970585667 928146841 995169103 210516643 492959441 486195277 901234318 522160088 998126152 490854096 829702832 944672738 985203011 720828582 938230879 67572634 786471777 471196170 644326151 160749167 880737172 29626611 405253040 475137625 809880214 270912948 336640440 26509130 202875145 528268844 790469827 636536778 747823221 429081873 499101936 523845478 691982244 126133895 259620516 789483058 982899696 573862929 861109351 319083964 747633381 477240899 670638424 975291421 990776904 310602277 390918470 972717343 998819355 80893517 116006154 998363155 999556429 668110125 816386228 160264963 814771645 650140763 772058381 133610166 739499427 878945098 950179763 338392821 419088598 469613212 472454559 312970603 557623948 271811575 601731163 313913443 808718366 506767058 754561917 347855391 849230183 223067127 944936574 793277910 841025641 683861531 961164802 778811476 897303702 527566079 599148028 30915195 766100551 872006452 876551370 54966585 587147848 937380677 958234933 56328466 86006469 646090311 830389139 13555141 837818019 537462780 739590700 748404781 872945024 145920701 300389027 904917211 936827552 626936312 921208098 193798435 958528189 409617104 942793178 438568762 473333415 328843980 731486522 616274095 682963428 517925376 734686332 628966550 718566999 610581981 975354733 784002787 798849640 846900383 883175571 63656086 804192878 982924354 992731975 929704092 936794983 688886693 718641179 21967198 726781847 479595375 854677674 319052426 413972441 571866645 670352097 298937417 398155568 249542724 730525158 558666827 666148028 481433542 521849496 465791553 881656751 470787980 572121648 714557964 856296873 925580529 940904198 982070635 990109285 165637403 861542408 165224201 950718627 721411929 795077477 364369982 490301450 611565746 902716588 495224544 705413356 482684612 750648075 830130572 909094538 480669903 647304351 712214564 752854367 460924653 640611131 104357261 855732618 907320491 912324729 956944835 978308588 862699813 943234215 377814236 708267612 922766575 978120767 50987523 281067467 105981009 909704465 874016981 941324144 234774792 425946304 883939552 975775496 882139523 972121969 51791213 749015573 914057235 992642638 703723423 888457740 917209871 973593038 312000474 409425443 657822703 988781130 279866898 785579498 853612 463806127 194639774 198986199 57499358 93842874 728930295 752163179 272955932 669043757 879325313 982670409 640468539 738174805 355528419 727101240 636735837 707147712 685004833 992743799 5978307 592608418 623348941 795094801 404020955 768875965 527101045 633208422 359696690 751626420 856690531 963142826 877259493 888597799 352378099 829973241 729723964 743443727 980201110 999851332 101239355 914613038 766882881 994244155 490192958 610170415 721765489 788963123 348739986 953522933 929573394 988822822 586940297 980911081 403852023 679796068 732843636 932559316 514865807 767682327 112865411 554813480 614788029 779704847 800308703 815406022 502746263 780405475 338005432 859994887 584660569 858274081 401945843 927971599 675947595 723805233 838214302 929957631 804397864 827344493 483006030 801216432 807655346 948356882 112488450 189275700 242438065 814450896 474668643 877419570 776126439 801171543 667481254 936169747 739803989 897661081 566769839 820188164 755910613 885889257 817364803 926086541 744120530 950636581 615076726 945681770 878819032 966642161 570582977 647324860 161045987 584390784 473699427 691201742 753499541 775853426 636342800 721648132 871869984 995227189 48292637 953155097 377318058 925242259 788090618 920390534 82422170 318759092 150411314 781763740 524416765 592213092 948156458 952331143 562150205 565499521 247755967 999566237 451702530 916575011 798150303 914902546 453051247 937057993 591237888 837753599 521083916 759959259 991377418 999404317 672863995 899024061 243414465 674681856 378400897 666491443 130295147 744468375 325578858 703622717 530441134 956440096 953748761 997933919 900711063 924129838 517591856 779901873 402275848 606627286 526457009 610076091 396178491 621286621 378083896 971403704 500144752 729936204 810345231 839858756 861918358 889149168 831637649 997006586 769648434 995687795 899036734 900118844 718772335 961929432 257197356 829252067 403089847 974615521 96709066 680545306 209525946 679609718 265402514 382150618 577412708 675558523 854703838 872945999 459759830 669500085 439606498 499799484 633293362 641376135 663000365 759393522 862227899 995628696 517393453 802477221 902122045 939277024 340857225 764071717 54599199 974226095 152244911 950886868 36053269 360163387 465139101 942258663 95748632 188154930 136120554 538866739 634985028 932396772 550838184 560179070 655710589 667029856 193448090 966294088 657488930 766558548 521762151 746324071 756403353 987846161 481764981 857639867 23785797 805926031 627014240 901683106 245160763 533043980 539161165 749260547 222133664 533461735 704016585 930161120 49838037 349565760 230566496 863713133 197933739 828484507 228861490 304944938 47924964 531407431 344384769 642290914 466535426 925540798 5317253 977270862 311852906 871152507 300816002 894693514 58605471 78249038 561265010 611968422 425551644 909322408 657224044 771836841 641222660 723771532 226381273 318957568 464220477 912818923 877362440 970936139 211397736 926596488 202664539 231902109 664678051 830934553 733273873 733390951 121658020 601558527 269800027 627345331 299882060 529796203 208219518 885792760 988701832 993693159 889919476 891856519 564130451 787387258 794766676 795466542 736542602 788193045 779468927 874656930 644639604 977240104 220268277 781537145 129448742 523543667 150041823 923813070 232712817 966877624 899038432 970246321 908672011 967726068 77150786 661792620 395698212 896245168 652000957 992606160 799188031 953827126 91573189 265178065 320448164 788554261 135720994 797078263 819083561 993842802 7318319 217003403 389872119 786011773 815543176 850448107 191511166 685489487 476788395 578315018 349777060 785150799 122605916 517774795 894174882 894564802 760641346 849552504 281517790 429087936 419146722 438881209 206510335 319104323 822072502 874160128 661656034 973057308 777554325 786368047 484420910 960955641 909565711 957546242 743047602 851922699 974131878 979083313 428716517 803332735 478803600 599574310 945841674 972116304 9080095 900669760 966951507 982955560 336725299 639701730 302960115 710873507 350375097 961340503 883432824 884983936 355642644 726873383 207808219 932068563 366568924 368046851 554420047 865909395 275182925 448600245 163758860 885497287 187055407 677100127 71879219 619481047 593537655 622154793 465787779 843979646 179489318 472782803 283872409 596929085 352978506 531992966 173190399 326647988 645225020 783984630 761459633 963868738 819428067 977860788 496344701 644304401 346848099 637682859 350819900 762180803 53599472 438518635 922734154 976508342 629605369 730283727 363344592 786505480 608491864 819763744 37567662 106070060 389435214 630890338 370112560 940403579 476530213 642415430 370705781 899634374 964138618 979155897 168703110 517156525 304511831 823129526 643377221 917573252 270948477 602124296 512897749 591939501 311259883 629032248 392035783 832353328 485174550 859292735 197114664 931478923 378605467 890940681 117868687 799908380 441601295 850926856 325905518 464959969 61503619 691854341 225809759 821866685 253533602 566340346 582938304 740297789 96246948 926157996 510757762 914830849 481538150 599329879 372187788 430172214 813090002 984135412 953258070 962847101 357330502 809878759 132116199 428634918 396579777 410639231 712915591 963230766 913238831 976177001 251057200 591040639 150234522 440581299 787941981 902440400 218673778 708421757 266003431 439608651 962451854 970177037 231735362 644111622 842720114 848273759 5039251 846681056 358207060 622804322 403963156 477963041 984221840 996054915 955221653 985590727 519279657 663583907 244968162 418899328 826374399 973246390 370382058 430270759 843400486 971866537 770079336 905612359 980371243 985047280 897711501 902832512 820310126 964359295 39874341 436194468 73436962 781042115 31173829 893575843 938759208 958790237 94859943 506715583 576012504 638827128 316561272 879986689 850883534 960212639 29060567 442901444 106341768 887697672 179285465 712621572 205133413 324885820 25927284 70415236 313547483 696119982 936805514 958365543 157622846 201321835 187819769 602811060 100746825 724368682 752532791 786685708 11734913 57144926 542936052 782923745 400821594 640847241 860833341 887639166 252007456 888902083 185525972 793784833 783107839 845634934 67388646 686032936 655186782 827168244 347555601 431524220 296716274 808725255 704364566 765202983 442396519 483000455 934100061 998009394 480768716 664333243 337314325 748164759 777353445 891313032 579174856 935826576 598553653 760603594 692440252 839553125 643331789 933349034 9836688 191332911 856086532 876975623 730026275 841261239 647368886 830080677 364077934 982973679 951954830 973991613 89613449 115159039 202680400 375021432 364812866 889662263 160240654 692209899 648111334 666741083 96502051 792241567 588075829 792926938 825755011 919527840 75059131 376876591 792057565 962804289 200906289 355231279 696786847 908381227 848005699 943839164 324148578 542597750 465947258 527215572 153118518 431810927 802855259 989921220 913315762 955613346 341147204 588737402 457348335 536454274 201944016 725336053 670946283 970349738 563159592 705625944 883634754 967253460 166210303 530861629 231842749 753546582 152542007 491677912 363109121 678101338 365997570 409137786 817968603 914877102 793878797 909166970 391824393 982138474 360267246 692172471 654251735 758782629 542083329 856480962 90564539 646240370 679168559 962420904 833962877 950455130 908996537 944418765 87839703 219052508 804086261 863225705 439673010 829507744 362116958 448918800 939745146 972478941 191923115 506852885 557263095 630689862 729434227 806717874 728165078 981262373 269142382 949556263 52275550 293078852 94125834 542379179 762369937 771999940 33644312 659804050 995913980 998749490 881754539 913915847 352064312 519569813 528561415 943672501 934712355 938068731 836010534 905341358 411908160 822263997 267098242 975147416 226562762 314202718 936118 424521758 578932684 741847847 391429995 649641812 266937905 995676149 853940916 978675849 568115054 713561766 872508509 900965456 392869602 965364920 268717622 347469384 675648689 767686877 237346680 948868579 403691724 442681989 143797346 576596100 430980955 876404181 647184528 659122154 404218377 483451588 904016991 923068099 204858028 896096052 768933259 908758226 301604320 526767790 335795840 808593189 268701848 439385711 139950647 176033655 231301241 251881171 109160724 415289041 151963676 750054012 743404353 850540210 485968541 505241013 693285241 998783558 815352383 995603046 564332145 660723872 683900185 915487380 720032249 975521769 672256127 883582304 752605850 947616234 834905008 903440433 569034230 609288504 611098284 748637234 754436046 908727146 717692287 810843794 968459408 974801699 526300286 884753080 939362566 998588442 897880498 909722805 188401115 629423522 566148944 977280920 287924292 947731195 24385270 226981550 397218643 936239839 529601082 772748270 463972392 997576677 153448209 793486423 874061143 971979304 370104838 660707844 403946571 540969500 67902813 968699161 219185146 408919467 779326053 923698744 373463438 976017762 57390894 86251907 598563572 918694799 802973138 842107656 397993166 973155204 131228182 192414455 848875676 948163881 741155339 771402018 293635388 342487604 53552685 367937223 645424001 886832287 844036683 934659819 639789286 744097369 844722746 891911033 879848097 943433958 959294943 992264227 538967045 821506040 304101754 839378011 168802003 697657213 116940418 305336416 400902143 450575919 919866388 967824721 861694031 890709158 931507985 937397403 610008062 979788398 279458736 373771747 58073390 411387074 256540389 617873261 797896739 911633775 83341016 770204655 445226117 999166088 582328994 669661278 86188120 697574662 241003230 419060627 412564868 892113730 39038551 963894770 262800492 659687006 422267380 979312619 376968102 680619800 274338301 683846846 515149234 765274501 232001143 935991112 702777042 883538815 25257475 76429843 574833487 693266342 781316523 854617899 264382526 738043180 195647559 761114750 140095978 175969595 872047856 963927634 287604356 698475309 82646624 280096679 326524665 388943028 640169011 853992765 20353494 314674638 636312696 831427711 991275876 995338740 20958517 225904603 269328905 735770180 832102408 980607158 490355454 971083180 562865126 690055316 953425180 978497100 856264215 924043750 812768543 835188992 828335241 984852275 679525890 758373778 165001989 941019894 614004944 892226152 96868654 217021229 240134834 796441038 295011325 432999176 284744002 375074773 108043541 444425750 788992861 917067480 542626532 609930201 341819760 989573916 725653064 762587069 753667984 776748342 793613451 902519777 204551357 411607468 962035475 967509569 171792138 896256522 641338395 730622895 1413516 803013583 37775586 888208695 792057773 814438846 78912328 506236012 689126414 788872176 876723322 888204962 953778906 954144603 154925779 987090894 767214975 912204346 565302587 575097764 861273911 997403589 4778213 335446724 681006646 915825285 804278857 958657899 155779665 452039459 516458583 675500073 183209590 549372254 704336429 855223071 794044578 947463550 361462306 826512803 26139021 847442793 640039112 965145322 645358884 996454544 908681248 924669375 592971169 737337248 259554538 876702316 61969828 738938493 544516599 567761106 285322887 821284990 128812872 998491410 431811946 953873253 363268011 587837689 406558071 469207674 296869167 686986047 740584762 860253505 323946964 948627502 559348807 585947200 163345892 428378898 964286569 972884374 772825705 824639282 682237754 906366169 853804533 927682499 406727923 960902135 650594316 752412218 192835785 373683518 750866466 873479740 945135556 987877422 268424094 958559647 753467227 906006648 740937763 831319416 966467709 999478065 586779479 951464361 275773675 612310118 859020771 884746730 339344318 690714780 760221906 986445994 637400527 856577670 59829897 195580333 65356522 164166877 228079774 995765784 914222879 949936181 420765690 491605027 903965150 939725731 421564543 858930340 830692665 939662737 528153611 956710366 124297737 641633576 847694318 933112648 647359438 738108127 30720412 169546778 57467636 67903831 827350587 847485869 818478762 823447988 48540921 832460258 716049223 966241627 873893165 926754552 347536782 876033830 240563705 868271619 837587735 917734793 240944645 329856312 277227420 584514782 843241634 924109101 258690452 779283099 196060977 510512559 113835081 405967825 735285853 746613721 461266191 654435205 638657212 986725163 773926257 900733912 140137447 768287119 510252706 871212355 126625543 328473874 394250746 902523243 951964761 968608183 598914404 919361243 159611130 168098640 411533267 699078257 795335646 994297049 158559885 970916562 640553241 787146568 726789874 779075973 364178774 749038339 920522751 929751577 769737939 839581070 765358071 793553278 6559751 324671553 699982588 790338576 234034106 924337493 113266802 318475111 816791686 896946935 18458573 737498795 917019053 955650926 176732030 367171828 45141216 226469450 532078566 651383498 274510300 582255958 538479431 966741000 123806776 991633789 480433007 623591296 421805106 989919588 871618810 880069728 925275550 967108278 190952714 949867541 328532843 785224653 591420908 708091188 81082999 972814979 621639203 725036986 52676223 292993382 714644944 872625546 66349691 149926963 785796109 857292929 340263821 853546915 773314686 867394612 723942785 884367564 624835835 807191302 492615881 918756479 417433254 599901659 326144274 696801664 64377779 749401860 842937379 882926899 593676438 939560898 529934681 540877594 800314317 950150152 849265790 889091541 381885257 795501370 335248301 356549823 564732547 930344583 801653249 935952292 1653188 839602209 208306878 964878523 538451687 555464817 571411678 659133162 702695350 882566137 909661014 993215057 9333424 492862936 198161278 477593302 879793132 915956109 907761345 973994916 132567109 336303564 252566683 495262523 183947554 300663791 271807241 655083681 306455835 539170763 992244139 997306138 78028962 291625983 272828284 953085419 94209826 682553529 693702751 931107948 906464227 985899250 647222054 780480731 691122648 789535958 848050232 966929465 959233869 986332782 236128321 362868623 99082829 951447931 203074454 411002755 73804642 268294944 662873850 962826569 695317421 869672543 261743387 838548149 906075386 909261268 411737700 506073216 317847901 341511784 630145828 910848114 997648506 999548333 967729517 974570518 504354489 942813125 524095292 664978564 644431719 716103570 65882950 593320748 427149370 492137510 562267228 665977280 709393717 788419872 133767382 605878966 274458935 927212677 665299891 687545485 184961229 819708051 995301733 996397403 763965951 882540610 290162304 970414911 307492354 484433801 732070625 781352211 731193766 904951798 359678772 834400087 720402308 892266715 992065226 997408897 762124148 925082976 555023124 735764883 804477846 875581287 551258202 935386399 298560871 997207848 806359023 950002062 845017797 878231777 404088612 994674902 308118572 774550250 862623634 962032966 831134809 846225312 766630941 824756527 102393921 699663740 936584657 973105032 501485107 919185133 947041837 950125812 775767020 989630687 848963655 874157119 789477997 850441951 30326403 125174625 388240583 443585655 863970629 995656459 41219986 964451356 176090289 623125057 303008039 798895115 937763620 997229346 936976027 969408861 145762143 352191699 562913920 878498872 797956924 865230192 124380952 411379140 345451546 941836900 956760081 957121485 805927456 912883339 647923149 793820196 287009480 706208727 657166410 952307296 88496514 224117293 363520878 717977378 231099988 437223215 836235035 997003004 276565840 603649029 509553045 741753528 723898627 862740114 39291571 827240075 418604283 430292394 215070988 886420808 897398760 991510780 242993301 401180039 819040762 922238228 537335839 683783524 93294407 419116609 62858752 343218637 740035125 760029114 627577275 955534712 21601909 135226406 633684358 827895312 730441473 782160621 821850780 981076051 554993770 887799514 759265022 995475718 502000330 788853036 757264567 882122627 532074186 691170512 59421243 200732132 512900161 723533961 628399845 675482183 537621550 623246629 825699120 839903898 97178028 460024764 352286964 806282431 903566233 968213354 428770278 785158264 33139462 373025568 258410252 726357112 803087433 807062985 174185719 692599498 370743784 378928802 307170265 952637892 211128801 487028208 330024135 413184235 647031562 744506395 582050617 716803194 397114808 814883708 54851215 76175367 347378591 662470106 204439508 401908306 540236096 856786945 685165948 926890923 601787627 840460774 377697781 810602543 277621333 750214694 931173833 938931052 80121493 975689602 462203669 499863988 507780571 799810331 153252029 753099598 72781882 144675622 275457897 834712223 198178962 687589120 484243176 659181855 2413292 66429141 838851615 844724264 151440308 582052267 813448818 863546564 142884990 766990123 838898230 976670061 650419187 873176777 363160694 668036551 233698718 736961632 427549175 757317081 643553747 748349409 399376168 617510849 40778838 422854686 26392106 512535162 983662196 987343087 252707404 305312573 137493878 905494365 437992063 594605901 797039298 919912105 222176344 515522799 757284067 973120912 440618795 579675010 373439947 462946378 660378518 730422055 38771800 205282396 670567136 877894744 569292557 773904858 947367782 948010566 170817485 806064531 584762109 883467632 19104874 158411971 120130175 965618128 392128041 715374017 926443478 946987812 802056395 807112780 451607546 772820657 228905558 446613815 155386287 736648747 844465795 862315223 754990314 857242788 879622227 937479031 580006314 889811037 863828397 953315227 644246787 716279984 535996977 672189577 653806384 884425041 462170044 613314158 8124444 444614878 249712128 315496189 844602668 857173990 440004073 552608482 65837208 437810331 644370700 893286567 598619056 805551299 23424555 355187415 845348207 893465746 179858058 659151823 5735027 634995451 863253261 983849623 445062679 574024823 423473737 473821945 99970566 618502356 220801807 860585775 988691010 994247796 525864079 553697006 232436120 757029098 444189261 916176846 464484675 776033920 490552559 757762289 294367809 399858579 715473196 961206459 747316396 976156203 485217064 527340557 555640530 712020413 223123156 700125138 209745927 689262885 829296461 949514817 305515385 341055821 955586532 976209692 264279625 964761020 758632350 821163558 126049921 401225811 951490338 981584259 286238999 294272804 673512801 710273256 898802151 975609566 626123991 860241264 235696904 419045221 944282040 993420128 904197440 991127286 760052333 987269173 294212369 685380324 140453081 292690710 537125895 818349494 140348630 627774094 265397000 657930084 191849776 273282878 835380216 888380680 694810215 954241770 848847753 888984314 468665180 780230842 713153350 855057187 480094849 786659327 41517625 928414960 955250002 989090422 315564604 361446527 827110631 893665607 913470074 983828718 936309589 964173129 940642608 982966810 453689313 563675466 831910360 978460885 84351664 290035075 216429119 778485610 438983463 742863480 723147988 799653168 643509926 723077001 830876418 941817326 786163502 824020855 770488630 944603643 510310129 703617513 745154052 761978437 218362347 304202454 995833128 997475854 985575686 995438531 260435615 466969334 161994178 296407871 27154856 729368044 251484140 316020269 394418826 773868890 911762424 991740370 51129486 125425431 431778869 853695648 336618021 434938472 417687079 972484349 287840766 419692325 744699951 986509825 603221054 894754615 575175752 710329684 233398594 614869846 322489814 943157990 353103441 684030748 769002580 838547134 549981776 705353396 136285731 553806850 838833647 929856564 190052275 793597863 331897937 474293820 556126240 687069489 622499142 733644550 912808664 995017859 801946594 940437908 100905203 573647885 854767092 958979443 587175017 864373610 208088138 845128919 649310483 870682580 897888212 976182780 896941878 943438913 654560174 962666571 104115107 669284681 402832410 494726008 768115539 831304583 359173050 841203393 509093630 565196009 140831730 453907735 203264120 318906811 462091404 577537284 52896448 804145021 248570286 782783332 371161416 753342114 827665861 878419472 287938258 820004347 35030801 880489590 423309894 751675755 142317641 671472484 113079520 754452274 894554177 965159120 632736157 899853490 579194133 596664746 229400291 593265520 846271897 863721930 514977968 849272397 93510962 552891651 811678873 986704564 326017719 929075197 44273217 880742091 360093721 632998511 820521678 867148104 5180581 796107517 710294981 808329351 492342094 599695550 43534785 391831183 865453780 897391534 582572771 784282629 567310109 719486099 132848278 627172830 692966414 752399816 486549693 603547343 244244255 674510519 281285145 534448915 125481804 260980545 140020977 890650830 927883728 929060329 911641016 963315360 744693380 968984194 129903840 639367031 254803175 964863011 12215688 79267359 729906331 739849824 377894442 948010638 582859961 862234671 370152525 786786797 553036847 561558834 475894849 654465745 883578839 898925552 465821847 912997842 572913801 870606553 716032618 967483319 738086381 850816773 383741733 542503867 680319062 730629104 941408343 991868264 194346484 375312795 612932983 955620017 83104799 234459315 52529514 909647029 510231796 879630003 603011206 880561352 681414779 999105869 219030883 347816295 355051151 789886702 169246440 225749322 697936144 814217045 956232287 967273702 919413502 988974759 232008134 986409704 894247217 981507562 304835523 723182923 595715259 709485979 847540041 857079260 125236947 493578529 418301438 939394302 800889554 959468688 941260931 963678085 741767499 846866915 739723261 842827285 506900657 535226371 181595162 435396488 702676513 993664744 344089987 461641278 969347260 982045503 853358518 907206669 980852603 984716405 586959951 625693824 234992538 312073696 422092793 790058860 122035921 867518316 933267138 988056790 274596283 775901078 488326014 891042465 306520002 674145710 709505851 794843545 730305539 831589929 175162992 622352772 581739683 779974520 748622012 901920652 134308536 711288187 214787741 946256719 210956610 956722655 817273943 857093118 347480570 956487954 127823794 858417161 491173241 679645838 591526373 900367702 840301739 922693632 712633462 943222540 950831922 992802879 292184184 817314055 658482638 919076995 659264821 765835882 578451852 799943887 765091015 767806916 451518297 515439342 810710640 933198487 749151071 886275286 476361605 931931089 935472987 960709190 852142331 981345123 567836427 991518913 49656244 815307046 221707688 880655842 121945583 726736798 237931029 798716023 66860536 742487450 581130394 876183288 230721107 506322580 958024985 995344108 709268780 744590955 629733581 680035643 119496686 712418608 710612433 789944164 656525179 740390438 53962878 92797983 720195887 978729658 1107349 438841053 347459106 453619913 282290047 332107999 113550405 264056264 584582375 989899318 506616323 930992933 974309687 986664995 982252363 983055363 539731770 999429539 816721090 951265966 552089815 869137570 59732449 217720540 54700384 865284988 385373695 851722101 294133498 914757194 54012460 797893289 387108978 562991468 391333637 549916785 663065021 758911454 780726691 838797611 956011707 959263812 86417080 335851783 617302715 719823715 431481854 906584256 569784142 946371895 249963892 669303824 400424943 424842717 714352294 925545031 173685570 488916742 883802029 964914363 502960748 783714907 253590512 866281108 825984438 940783256 195471829 956600002 214096851 687212259 751124854 849088312 983223562 987222710 661139493 796820009 208876340 253040278 749747285 790575631 215055055 543688919 188533319 364082196 334630766 438424734 365017873 502478575 451288740 609068743 88435820 299958095 573534985 825601351 100488904 711553988 607536822 852723930 771178982 855605202 152976142 402227914 205320536 785604542 546081134 642933447 663718138 750057828 534995583 691277717 769524033 846545419 833371557 842274809 15867693 707599697 463364869 572938232 113828230 779468084 1004442 693520140 486160934 871856972 323251680 665396556 741357426 920717183 570685228 759038619 228193609 403531878 485807750 734835842 580301787 662209988 793352796 908866766 40593975 913391675 907353366 916706737 722398595 750885938 745442811 903198130 117443408 210891557 821116303 871318933 537949959 844939025 763447667 902532586 380988375 874646532 10657346 328380368 923203236 974676140 797961259 904781227 118696275 907766186 303768856 619780265 408941875 576478907 888903951 927304335 343190035 975336502 345905497 846427098 14768394 105636841 38302359 465179468 936417937 975097947 761780960 831259350 30750936 480586381 95726035 588331444 579205937 800116429 455838230 761385020 734147887 790406164 226767372 289974549 466076146 843666254 353229838 904282131 901502291 944136373 457663218 668937801 845058224 985518904 530657621 884783256 532682708 954037812 182377706 545960246 218148183 510240645 568019413 733294014 471606017 810076325 697346341 847525900 102895574 277891986 623744699 627887701 560326477 677363719 210802855 898148797 810452688 930328761 463667356 988107674 247096745 396290034 308013758 685642309 540396849 928284490 418479120 747165290 238208239 269184594 823065156 849227887 193739181 979051378 797313856 820624260 527888692 924558925 236976031 830327530 473246590 742132320 318213106 740246080 329447261 527220782 132397150 255188357 239238432 449984220 101639365 943513909 180584065 637651973 687327539 972307847 594623562 613305333 182268723 478636879 563096192 771928005 165324573 402346786 670017309 745778348 725893465 968203347 487360958 696953222 489708662 870063534 609159302 943373659 46040996 583441531 572556309 906296936 618758301 843503242 314169821 850257795 568011579 925205159 679750167 990508695 232213324 538704554 287761319 718279365 223009708 464418659 424118082 937183219 303612627 592926005 317824287 445306309 220522353 837374416 729114305 822674846 641327542 838359770 890250498 912727527 531360752 896276244 916755335 967485396 195854259 231887007 810140455 883743237 175541580 799330263 663205589 951363502 911720961 942573338 191387746 400812378 775402305 977469855 808527047 950224721 287256576 880278512 723645150 785046755 987650492 989809853 188762499 684913911 822477561 861340484 253202388 852417844 839280552 962668915 466814469 687373017 449247750 925988463 319185660 394898915 769100655 844534749 12029761 75804482 842872607 991082174 4343359 503277524 410863117 615285573 662649019 829938766 598661193 785577049 90956115 178532597 203488823 864894804 523509882 963759655 850401539 910420522 71595690 478785442 377391150 402889680 343886483 735841013 192968515 438599819 239103847 662329474 820505814 859326480 149794762 520921077 336207012 992643267 310148516 775956999 588057219 640531094 399223352 983837630 465709310 799824334 79453708 522680088 681704889 887051126 690018771 814776786 97985584 546009206 502799736 670798849 63545862 482973740 527470497 942193450 384637348 903425071 929488117 953171875 868271590 871408962 669667387 784453863 193156295 706701475 386416052 430075384 445998018 621924854 98408897 798759870 520236186 974648882 730752332 977758043 73444838 906264042 308471952 675117889 855605129 985127140 645308709 958432791 625229973 723917841 151932458 751443237 483134563 600167021 106280728 473549122 562308358 846011900 575218008 926815578 349418256 469470297 957852654 977148000 567754555 846238796 644128663 867033433 810829888 923486022 69107838 456053427 306895288 573747935 959935249 961250525 740314067 890905181 529245448 899346691 239890006 651742034 971759348 984903688 486446359 971643300 655667113 986729724 587661284 989110981 972415883 977903575 622169220 661814875 238602718 832592177 331538850 337823588 235008248 979074438 436153540 683855237 680972987 974191809 686976106 877529032 595114926 698605705 214591604 340079409 617754823 952353963 395486317 435153715 850348298 984444318 56213291 79535568 80586697 415415688 195892289 228612691 521963225 619401001 591282906 977791548 195957202 848416356 8193854 281407793 935690185 940793013 235826916 582783347 431472791 950272647 225306975 232350780 282186622 576315514 974492445 980452835 51157377 244869347 275278785 551466718 764616783 988482483 999400154 999964552 337567087 754954763 420462055 579896964 80059427 765971331 320049954 519954999 171817616 620281796 94203829 429606718 744711390 938133111 690382167 987545277 140766368 406502131 37211064 803525834 799666591 945959932 669305769 879759318 368210743 922877428 258615865 306991419 640315596 793749767 363457488 580632709 118299181 652021716 893359776 988771720 910673926 924708244 828568202 982979945 455324149 616620465 485199322 806256638 710473544 828670247 62594282 209141145 178816659 945391283 657601857 668855640 355867351 365907349 776308007 846504061 208345748 798786237 764177489 868482193 763394426 917601586 808375127 926623351 869542441 897228827 726329026 812444544 107230269 918427823 566738683 751413637 861105771 973162295 744127362 810928135 180322981 779277015 596329795 746853021 570416784 761022944 821407572 960377662 54370104 684458217 592542922 750993437 179824718 268127048 542601697 827040248 32867059 573093450 237424332 765053628 379169455 680972366 225652557 588723613 66711399 256358613 381408485 675996085 205460546 415547887 904753789 984933749 802298422 967537770 421092734 790672008 303569318 873976605 809570013 838719332 6528929 877504727 571841941 944533693 204320530 213064064 118336005 146535648 632203005 851709343 296641776 994772981 662376801 925199575 191123068 344170849 585556045 591147284 10880543 614189786 817931252 890899682 728629309 912009086 138087473 442961932 638384828 978309407 596033269 720917447 929789732 947643517 927433762 956529858 828576817 999603229 107397032 280248557 908890102 978356802 790513617 993308618 676272050 871934255 696017359 900524591 971998112 978398536 835802663 967250482 602304720 974310852 180710912 783077965 378237737 538945348 249771347 376262805 509345695 707959069 56060577 220589575 142260983 179409108 939878656 947319604 956659117 995891322 206768109 684382483 115015902 572565143 691472112 796339462 263056765 927058966 189398706 644807083 155981234 954220369 987883725 996427458 409471456 949462772 907184539 942085277 404825631 674659426 760758259 998461069 31890196 375636563 949483867 962115791 478037725 564458854 71418511 343903831 419367045 912540060 675444428 955857243 244302376 998187958 519300878 811016997 632293005 658897180 92975081 659464039 234504059 854359473 347429666 804988574 210449766 381132550 591112699 986698956 194578869 533203428 6278748 779785524 951340460 962454013 231648637 508577962 404032639 587724213 412688732 993500262 939580256 997233930 165000709 605906193 468778134 959699700 785724858 882275090 255002465 867476205 329862232 505366844 728027772 934514784 40184877 983933308 848013804 944017333 713312658 884839462 655831512 928291271 409258133 599663610 333325947 799707074 689923944 835526027 100028262 656868378 104647198 835926278 388442903 431953683 307342568 761437170 195158926 857715670 128419228 938415708 273510805 411312490 184630629 558992570 187635716 722887372 142485540 520711819 545557128 567388881 30986082 625088463 453181149 829091861 219891496 871197296 776206716 977038783 421947628 526700876 356235346 776067590 254395029 717820324 985268218 989184376 143036402 488030523 797241072 906442088 725734858 998230896 936521330 975864593 174336264 253666048 557636673 643955271 585811348 991466629 560957300 971699691 906176450 962630362 466221182 475248132 693398754 913841813 194165570 750472913 672949543 899191496 171092875 859282108 982396467 997493069 114860212 885676273 582650497 710742799 621947998 764760782 679538762 971280979 378960297 724895663 92427722 784832315 641883076 705825643 957460228 986846533 741221905 862956864 270021846 528606640 591118203 950262191 815157366 909193129 65213188 996090553 326709026 940280679 305155162 336286002 572985313 816148183 379678463 478249494 1561597 572782308 122529946 790508139 771244513 966179690 782206644 869319128 954354838 973437285 825061200 846130039 234456796 888712439 266243861 473771331 468900059 595781567 364712854 461644465 193634843 660450869 956758509 965205963 507035806 999417500 776479554 975391826 345040820 899419776 936652274 977057060 959344759 974778979 470039758 492331207 57147025 150064627 621248798 844279313 979614292 994915219 172652127 554041378 687312383 944503922 125829559 928822126 855004048 868949265 886051263 939941151 585124934 656410705 193058020 246742074 675493931 959459436 7607358 709395833 2622082 917651200 273400862 368654459 515180482 693486023 535600745 616767663 367794484 537870578 847867071 906812855 190829362 518932323 160047907 396604666 857741115 858218820 844140366 887892902 960845793 979409237 65807827 973215254 245005655 968034162 462539050 562414490 595028910 787020023 502362323 813560473 703041345 796524694 847737935 962803320 159063410 747973933 686423320 892310003 903974938 952252041 499142923 754105987 105109865 762427058 208005766 333682944 392148470 514146171 267191455 875340106 414343605 479428304 547430423 554998588 283187953 643057636 225084498 507139377 219425000 619224256 506133956 920106647 872783567 922423835 366148980 528454367 398618561 426977760 675059574 971177129 66014839 515739188 434876955 450973245 783195029 916214785 55490677 603075994 304500495 458305010 782310685 795089137 333438942 963169929 943657017 958216142 7112519 724341883 850158607 922280444 722392280 830348197 487298184 673202485 155939636 646207756 851135830 977263433 565916750 597722307 926784746 943945071 503877580 526237891 797560380 810219152 305327973 808230832 247574736 624095028 364136119 992278166 901431349 908394993 256624250 909670633 269533076 645528851 118264669 148666106 477805185 606628189 405989524 772531131 296690999 490792592 996506778 996840823 517626533 532042193 334711202 644423253 665870992 902832098 532361320 638846447 605183043 786459614 224731764 411704228 880475561 896961166 407808526 796780375 80490868 411946101 430094454 573279276 431643058 841608410 664173811 850922784 67624288 722386418 753989492 975818594 266080620 330871192 44018087 669855936 93334295 397400752 397179599 445950712 742561767 906840644 910314754 954333348 318319711 438280262 775710221 893007152 860944588 905811877 864485102 876292169 218780472 963423212 427751189 768638720 415921328 666869061 444064631 835372590 972100636 992884768 294261157 514144624 874160417 998630758 359528417 466581984 890868167 912500968 296248872 749672524 923689940 967980346 577404939 837229736 515666328 809662990 899429441 915023194 590126617 753698733 442543946 885856083 262676688 307370349 354216985 550059859 701740594 763366773 234804644 921338351 433535356 701827073 659418657 895532732 273190127 334173601 94691512 645635486 92432956 311139833 72008889 700267610 112303886 958487408 777850707 844493240 940840218 990906874 328684661 960575699 459302875 509152876 827784413 910380638 613082631 795923763 852575975 872908314 631322859 898549256 840678717 842022885 50746369 640106387 800826988 811399857 159754056 347431688 426908347 659957887 847055839 907355988 706110903 728296351 703810969 791429538 715570483 905169383 981343178 998058042 863974434 882132147 572665321 985466070 944357819 947528890 844239681 960214126 693512970 747530271 271129323 540015492 204702397 368368430 368335260 560118878 583113436 883336239 166233443 873535535 605127174 857633837 936316151 951825099 665470682 889528049 56241937 483734532 501031335 656329325 904047372 908271049 890700963 904160556 786518145 883522122 80406375 778753489 706875722 777137370 670820644 805915000 749393118 952840634 76580075 194474687 689314140 999371773 430345923 539145215 520150303 804836305 197016213 466455073 209700127 240515964 162948428 351804814 563623824 879536047 967429360 980244343 761930295 780643748 240283707 877826401 774832944 970537019 843762138 870975676 117073141 144227866 427166920 859240039 453785251 968758109 90629010 680082982 352304918 608288541 628332712 916163889 384019681 949711461 772687621 822413335 620145367 852690182 941277727 963818824 521604544 746059549 351747145 730557246 637262555 762781740 685645380 982463984 91302425 498733111 823830708 938740974 680873226 866489160 565242067 872298190 969459308 986753337 771477072 905782583 778857134 899015447 773160531 973905727 636399750 832945508 682701362 991141685 601613589 679765890 93450409 763874257 32935855 170327384 963194151 999582748 501228326 662995825 253839635 527248359 595762504 624993417 59968298 950465287 592228808 936653696 38010859 780686864 691920264 901949197 562098661 965421670 840154064 953474143 749401540 840060236 301019529 807758531 176522912 803421810 808110768 811216217 296181726 672230817 140976889 671835070 343822407 689896181 208370033 475181725 355768996 914985803 271693235 601068686 210045576 505271378 518964168 782275265 489093204 785289683 399492665 692803752 563234980 862200115 950794713 959745276 73156915 282919217 884789257 940953618 995110380 997717396 565240502 826750783 332134155 952247860 330342757 519816907 348518818 968914935 405711605 580879016 839364969 971157145 837128073 949509404 292848544 443454966 520927188 535411287 33514252 263762422 314593428 599273355 582467635 994663397 171857015 697129438 123190116 769592724 55292712 376806745 40598937 466291746 895019423 945320016 773683735 930437942 872656773 896363527 474471129 652971683 692092666 858714547 491286664 792266825 911697546 967638201 677281175 770004028 968018703 971616535 234646788 383424556 893962168 970950681 520706080 606827885 803416842 986189253 482074422 736725864 838963121 935989465 118834189 127235863 39025146 960908775 67683668 997776077 420586766 510285709 778735113 891800709 172530089 400092150 852328186 876981265 489767541 493733897 778248894 891929321 86971376 277880509 574970159 734613070 999332851 999792972 741003807 797114296 629961839 888931932 871037874 875646645 396100696 764963666 680609793 925276136 726701362 809532619 337639900 599634229 33495635 225056090 476620628 757032110 923033680 955157966 709816619 799385198 461601851 710381878 601942097 946199795 194108296 843206278 608824522 816425463 124084818 395540314 118601649 823402729 836850959 845558913 2231862 789859950 722651654 954540194 449960616 927529256 459357613 727893497 537014109 712746985 718818618 980210391 593156606 719657180 875527098 896861565 337722518 479132391 329705178 408589035 788031119 898409341 995967892 999906861 739031396 856856660 175385097 239830057 184127057 396702360 875811460 906005325 841014224 922605222 871393993 983644667 20689191 612238111 897102983 905781430 302796839 882738156 819960469 944459316 283800438 798967699 636408915 937441068 243580708 931453058 756335629 879691469 374634081 714449453 658798431 959518514 917834999 995303929 651403744 690933100 278766209 469182779 396261308 668663995 161204292 527216085 974421769 982275174 193519862 400143714 768654808 830118324 629044466 646354457 59703399 614299068 69741188 951847446 626292534 807534964 752941019 867232000 622550477 939084591 551697981 889923596 163983054 559758352 978059804 991306246 878373823 997641089 922810086 945069043 330946 419129220 490955005 929020334 215803710 509497462 399422564 851008382 862413935 961538705 814125774 945385184 717885309 776843068 36347263 237016745 732500627 966970078 59564681 571102078 735938759 790316557 107185192 724699415 923370928 984933837 347020403 841801529 40020995 358588072 394273586 851816546 524124793 564913867 958448440 979737851 858493558 901851319 572397148 899777356 350479465 658243493 967434866 990472500 768599204 796779872 736439871 989816407 577876609 668403892 616499367 923825541 610254622 798330135 921738749 945085464 544893127 831695892 826956369 985723099 145851067 545815560 621736897 791706970 576898050 954862436 690131054 765852659 360403857 675475842 533124017 777794478 349997171 779025400 465843381 617740234 890355326 979114220 220274792 525947668 374120356 556400798 746239581 772380532 454847432 743522860 802096140 930597268 655601300 695704481 239682806 654385813 942410558 957114728 440063434 700512133 582800376 719589314 445666203 815542084 146790764 692700648 312485230 711294459 515533494 638461885 535670677 718930193 947429968 984007201 627174213 899065626 15863633 231026110 459766832 799298824 200893464 642009170 772009188 995610355 218004288 664641812 612827543 931896232 181056783 324134193 301454416 335124701 15473965 24767178 821266154 876983370 712228193 950408438 919140106 928269505 285173825 709177024 475478482 688307831 600359512 679666205 428482533 944428139 333474190 689940780 774744589 996655462 274322125 976435656 630993095 889743664 565534588 591434740 845444686 921508599 725599024 884995463 558892816 931996026 701391071 781057365 16427556 137200471 368866556 894717958 127802164 876230606 568371055 709694958 265224487 852954905 141190789 462445155 672888751 932170280 517621221 908775757 595135939 675040020 559353907 908599432 705437815 922060786 566460322 685201739 659445531 831617462 36684949 43536454 428748063 997903229 245273172 916240153 406401764 556143812 617793844 966624145 909207268 963111910 468610950 804251669 385126021 534053407 968434689 983806221 874212509 882571880 498903028 748447163 224066911 958718917 105584734 311776016 256108125 910919538 607765797 944577630 469263285 907300118 426912672 546503648 549927416 621874098 155889463 473888464 445519381 662573258 429847935 477040573 853456525 883552328 865218842 938126705 16122467 44422037 848444119 890935177 761931970 937355977 393923822 626808324 328664243 962461714 836442275 916414495 130092927 222417944 294068742 410825049 20989362 209390465 815033577 880920391 83671514 655467455 887878162 956081435 48817422 862144083 754706616 988693271 683406087 923980942 706730247 747437228 963672949 992076068 190649997 658794075 441056479 589864422 227339805 958388375 464035202 495090879 599109601 809317869 315616584 541098511 184280933 671603493 995442050 998715628 81624600 628845386 159178734 543555582 88984839 509014811 109251614 165935260 529290566 933591999 63463932 366735288 974121271 986670991 823544104 990297059 349634533 848258434 625430172 826515047 541924860 697599058 732781696 941232468 304390616 661942033 526651766 694485210 343521045 982092646 594193628 836229294 273646729 733675408 357187152 661663927 503237988 812348182 299001969 708887896 689934905 749674383 772350919 905152133 917516806 982695360 849441490 967399656 481538455 584563926 177448941 329275557 657454679 683547580 440711274 834829734 664935974 725762202 506033183 561591143 629086796 793388789 876408166 997290117 71793542 299217043 456377821 697791685 331929136 569129188 60362112 325192680 751133816 771683770 440462693 571682638 319430592 351317715 8624808 416699032 780680013 932926713 602866556 704979449 866010007 903737710 30921129 527970660 512127716 662271474 123164874 874910552 736503894 988492501 66816489 227537620 28024600 618699173 498564377 920095603 964250943 985984403 819513031 926083991 406724786 414336011 252507663 654020694 133123069 139665270 283213047 660059597 744084351 831435796 298733447 977286397 15100650 154022078 978133024 996040660 841287455 909327009 49621770 108412003 845914000 997745072 244512821 381153866 131024689 924007880 480149791 617687739 486556877 973546307 787943604 888085396 256117789 279418155 749916523 950982307 40206618 475938791 244242400 466368385 484536202 488123593 433579879 922842973 763053064 825362522 67070987 753397330 111288091 212658644 53874196 289159692 541903394 730681871 751950405 903971744 759749127 929287989 856239076 899073148 625562452 771511844 67698138 510507756 462538059 783192275 521074427 947419298 738128596 786680035 622620872 773837936 62956716 518931216 114653766 529226632 759621934 896854491 645184502 789530238 78506160 818285347 602585452 661125911 156973510 995867102 472092891 760607833 151806245 189112191 100911214 835857865 204415350 379491676 467131804 715008417 624717035 747076037 156707396 379800167 35872214 504610524 71111835 159603818 112946426 271882968 204900910 630028825 371496879 598719482 570177072 714039923 372531028 826439780 462202586 571089971 354804997 513072605 378054762 786359504 57520886 866042707 840521229 855923283 919119304 969951721 910655504 989260233 183239235 560630564 947753098 979463042 212402812 880567091 295135038 946154074 314944468 522665118 920390083 958921817 540574795 892377468 175592657 955104217 450907671 496091750 538327986 561324318 751623450 998461570 416172093 699663278 406872699 458904272 40405926 200958086 543718935 739772194 517331779 720223140 731382117 840056519 897177140 949367879 148606419 767613600 129457963 140525077 620891270 683356144 503217221 806953450 7871126 531646940 678877433 949356543 665250014 852369383 665741078 672655233 170428345 929762788 685065425 967547472 130607405 772531987 727085621 785824578 232695451 401582204 895510937 933421362 10619621 268571464 842237020 936399600 673391294 930682647 238482290 392409328 514899856 639882692 670469535 769544933 707981375 966805188 914787253 960792148 747368096 748426900 385207625 832812829 620878203 765023526 675795473 991297409 284703250 699972128 634599275 979017081 961874277 982299597 439229759 687425276 185136151 818045405 761801768 811704792 146541 49786506 450909432 679884820 491493570 997820516 160195657 372162789 996961698 998734502 66218978 332798205 327391656 885821929 127175303 819276797 58200506 907709054 941461160 985755005 119635537 477087126 578068354 628618830 952040849 989715905 703091517 984920064 384087401 605037018 362492401 727802593 532594587 710567121 491636879 785611769 254641809 871192174 732861617 761062415 329476594 520371527 421158477 862338874 831802399 900494819 317018647 581508897 77220321 215947874 435310109 611315119 518526044 599519998 16151217 870805918 504107081 587271538 450421063 704855486 788359773 877343531 991466188 993085291 992538962 992706247 505986656 679895720 448434522 580158871 465865516 926081778 911385772 946614500 269368066 915611372 898078652 929165941 126071656 471528077 719106658 975099364 185912262 737276531 638692290 900008298 379894820 449582222 940430792 985662470 746859855 823354670 993701915 995183558 235718112 666885087 763696392 995691308 404840587 505886887 899998239 944905404 461440604 904169194 424758189 669120924 812186624 815252688 551489441 688811586 300055716 476398498 297076265 907584940 844917625 916478607 213330729 863187840 167716835 636565641 323374964 668740695 662922235 972355157 694418762 705463354 476372638 523534538 720812461 972638578 779470456 855768763 403875536 612415725 352221465 749374361 182725242 592571112 311257591 892609278 823991339 867433549 476702313 568268530 736527652 740117573 739120443 988589359 211556728 593268578 113654530 777770352 738192173 806138985 359670169 798687716 786121173 946654742 51660926 331163255 973833452 993535036 309388405 503724353 103039105 905767598 852555450 857090158 426778910 687917084 438269818 916755510 762695580 919257931 417513445 586443828 919558513 929130410 270869031 998030812 47970643 88692057 29665286 541806960 3984161 821103732 950372388 984334565 752208018 869290296 425829980 510053092 779527260 983917929 400914254 896027586 776978019 778358786 177918151 764407502 359052338 855132818 765296767 960065988 607251678 843810620 20120331 833920404 278529650 298130863 349997651 927690726 111816827 519209940 182691068 336675516 380805714 854049333 673558890 888331458 360665532 673939611 664792566 831723326 472767749 671863725 915603818 960044243 578503239 823506337 553152212 737128444 733517660 778215552 981312111 993898818 872786183 874187192 260695759 777993289 379532710 995525873 84784253 198105795 822677037 930590650 740463766 868334310 163917872 792402259 362046435 457781568 129159904 264427759 78646765 341954183 975745585 982240497 425500382 631377211 188511854 391300861 166283361 331793647 619441327 640787799 848798870 992761352 836654472 978571374 892650572 920388144 493719755 807471784 367323054 911229263 806665717 991254578 960797988 986564934 971519356 998921361 987049013 997141502 615410876 704887066 75521411 599186983 495431539 509387488 225446221 487366180 122304825 474841102 460492823 953577945 403449192 913541539 255229792 775668093 550128712 902007828 975797556 980211987 602233466 613994555 562267624 666109247 533376025 971607351 807169774 937618032 957430292 963078536 922240539 929718953 189132221 659809941 947212298 947911837 545336438 598831471 556762780 648110038 490005083 780078449 474965198 987834126 645164385 707644620 799065574 855873437 803461730 995634060 591178239 814627860 299337775 745792900 182362493 742731997 130833128 250749503 207154650 949360992 840086372 982187534 605491649 679434724 854103617 859102614 917032260 958208664 798582199 982295116 995639285 999097903 561776072 953686275 671837242 779311967 229085840 312855117 102525163 674545157 564540551 881887113 176997289 802379002 685810789 872275606 419601894 565638898 218220640 436717599 895678848 907027573 788444709 838173973 284777388 593409075 743327922 778728930 636358700 823693277 800707616 892320095 620830684 664756656 774529133 959239951 26698585 768928565 123890173 851146182 809459498 809495146 609663129 869643813 147077691 200341898 892095867 941265163 507893484 708889569 531196707 803090782 466344908 505628212 72682296 119300689 675040182 814124657 849474552 853338495 235611030 480117851 38017065 464112877 252909963 290500109 772338036 933097746 83579205 944323892 210350465 285678959 868842733 915369622 958277095 981463629 931863494 972120849 971890373 983845752 62529277 220859132 637571803 790385271 632703001 725439399 101795445 774080481 727569715 827800933 105702285 336235751 652090949 915276997 376900644 889165220 765952840 928163421 261603441 898514600 441370560 857830947 939923032 970242028 430684376 477448797 687495519 908552059 536723126 649744141 320016661 331179434 951006497 992854443 610732196 642959789 240453056 992346855 486480164 705619563 511655088 640143618 18044714 67918624 819763566 855044730 444810088 981646818 515206849 766734364 249234589 322945064 925969178 984312493 790486136 858696905 484306009 584051472 30505507 905307485 463847679 729482476 660074477 752033168 735637902 765684117 881249977 952244927 946553185 993589746 987622403 995530780 307512993 353627442 542667698 681177858 666190408 714713647 44905176 291592889 250233091 498870407 85731197 125501508 863287692 880582710 524336789 989286207 981080509 988230857 763240451 880303137 668053987 790520697 53427451 232025586 721925843 976238498 366673270 991434739 61510303 311153896 405486750 679774555 357925438 624127546 276720827 842558664 552762756 926982453 628441713 932824515 982698650 983461771 408684808 905889270 473854440 950379724 155834599 960732829 520720856 721551443 100974621 753507369 478038761 755224080 174584692 317040153 165920341 745280193 312019903 415691172 259459075 939310274 618285307 791833719 511685165 827129787 464775589 967229264 766531887 975723359 565670866 634049858 725852988 992855711 121507431 560023555 67115506 966057381 433175476 940082408 932122247 998023742 287749250 897237380 580199114 937782355 148143877 730207606 890218347 978453550 611478364 837384880 180079810 799055327 50782377 200504071 553307645 635052717 392384496 808338485 989506266 992426736 356670326 904003012 256567251 775771323 51190003 341250316 288829221 762996407 510795504 736117855 194680503 680050801 817784373 839788582 811381626 945877294 81072254 225541817 826938821 924312429 855752480 945679330 30092756 370188930 122988737 837252640 814640777 889997303 999399166 999560431 119969997 433781986 568601743 955962724 810821302 927502780 468771059 935930061 832771210 894674211 712453074 993001155 434115880 654090043 85296846 90560879 71309028 728852180 90521133 130624967 572001722 858234242 524222703 932437412 214079697 556868542 190854149 659091692 57334905 242411565 807763500 978221095 170435348 485405889 420738339 598348550 465963533 910570219 526561614 602205859 546109967 705059925 776174657 840096281 563258351 974964286 511209532 703317701 383086227 477307480 364733516 806218055 969232335 999606756 60775021 786574256 402869001 588805039 52519179 686045879 293492078 986105885 716586510 941200424 439061415 797803190 697342228 841525487 136957973 569950963 170956021 285287914 369857798 776389242 911537191 982198222 586208497 988255629 822836582 951002509 352604168 997717297 965393660 965909707 9095582 183848834 513527924 580273866 785782335 865924037 581197469 644495735 945906352 988462487 64818857 845449278 240549942 819038767 155132852 574858898 147136744 473738093 837134752 871725694 225524312 667746674 425896932 800445612 891183518 902152903 95959850 271978793 71094335 999566785 583898209 815416865 829488455 976209546 460747462 905280836 426921924 929983390 591388110 985112390 460972103 986725576 610726882 628438333 500281028 868748806 21869373 560765727 101050520 520894649 178058278 276107340 552720359 906517247 974723114 998041564 664465568 813602591 86871935 734662145 301587194 834430208 759750239 950817534 935497211 985859960 14472857 503063651 400484663 440230229 393886078 835435468 76608179 836326322 581410909 958004078 451265267 794015415 841090795 957456690 580235779 665675546 693864869 944633347 679242483 827737360 430713312 984908049 625552214 666961259 379796335 772948908 605077482 767177540 890027951 989955579 955653620 968247639 799729897 974017604 262053872 753927902 362718741 714206920 787212952 901740651 173044586 385446988 937048413 967809849 611159518 728391143 19762193 43557243 553622053 840538609 893930600 959247320 222120615 438283535 344551730 501996767 495341910 767538237 76334697 293141416 184716859 913293096 866763364 954008860 6487832 124498002 332505176 365566057 443687390 512366974 854892503 855316993 745381542 810069090 599660007 880228920 302836760 927610938 492945924 903240274 82557208 677860760 175837580 758860775 122690639 952138873 664785938 964425902 652765180 987033096 978559295 993296392 876263626 968715649 549045109 811504373 9688878 525372122 22015026 113515187 226827833 226911883 902274749 912939489 471039035 541610135 74737912 156849199 752666592 908525476 10438202 735926001 857496915 934919609 175258465 971150003 816423495 907908645 339228983 405568010 209841998 657858649 602311432 645899761 336934854 851972589 772574579 838912359 697502882 842290383 484168237 512371501 462168445 525483958 978352872 993833979 501791349 504112471 846444064 909527567 653243197 846187038 905181833 925722882 400435909 755232327 816842019 832169591 253841975 683216645 557267155 936721697 253403241 797744911 610634035 652176827 794881488 860825538 582644266 601701246 970385741 972523008 214874686 946907044 284086694 382449235 676673056 966422088 980124759 981729252 596802441 908954986 4968915 739994199 27918979 537855522 144708477 836229456 392434969 646745284 503192349 724662917 618123237 961665404 956809256 992938530 637906697 998641546 394736680 743368756 904001504 985898812 462943336 934924342 554280326 708750537 116137287 718597125 436402140 872738203 15939854 402262324 127173606 210382683 181260783 311841876 231061557 738557058 880238042 886510132 20616202 924636699 408615623 505492685 150529963 892121463 364959189 478146338 142409084 150370088 109138386 901460593 472515461 869103954 609707162 711999821 174812720 335069385 537369540 708639113 152344264 717442947 541813793 732961887 717958624 743032375 662645845 852543121 764314506 809487301 170527145 979855103 602786549 861001504 980025699 993540406 266681104 850956603 743943867 861720378 177817431 692545884 257750915 300820986 122513219 463363854 447224600 699266964 325449197 712585507 901452868 919330107 188755305 329410495 716653742 829476353 444812667 894719529 109365097 411237310 602364866 618202100 451589535 861936645 386963415 808271266 776500027 794925405 864549798 891528649 890295427 991634828 603507988 704278226 688426936 743857435 573042315 620344002 275945426 925091119 977129570 993193730 272442301 817202725 584372945 696877243 103606625 319677870 884740385 965066924 924169031 965125952 142794824 840182788 138807823 241822794 840841084 925051510 722741108 806774709 810251560 949987373 378294857 923939166 34381546 188396341 691133051 979619311 28388406 305642070 538870391 841300144 890962805 994359214 23256858 392207579 665064074 721526030 65736173 353284568 887672666 989970242 702510199 922799539 421119539 509610844 873948344 875102976 539798425 883307443 571472635 853065325 331069118 400483948 943517862 978181394 723759566 764567193 286083850 570591353 656807923 775358569 38317218 264654987 796476177 870913027 188410122 382616867 473568229 881367081 669665727 813983932 887490163 978097839 727624533 735868798 878325486 981820692 538158987 682725891 829724200 887358982 754732614 962201938 946919813 988853593 271789132 599800991 215914444 750115826 99600896 246144314 69774128 901459080 191865142 546045308 519531591 884205589 251845260 939557134 130894750 187931611 319875831 717252054 537681736 625972949 671931884 785880940 795095549 969245087 453709376 728281757 903565539 931358744 315833535 773412880 420940251 908334246 906299768 935192842 898948063 938846212 203962824 950353529 965192709 975132280 517194227 896963836 401433359 462652006 175685446 188155026 363933000 589076301 643841078 706127838 737447632 942900097 703914258 818389061 314654432 808953883 182463459 205871281 539926096 616490791 407238812 907917707 678790156 720636687 167180820 574357540 411711555 646787195 456824622 979832229 586387556 845235539 143055624 686057093 126117185 800306318 471739907 929595887 982685850 996973206 401462138 835621198 366253437 928962541 533977666 919226726 35905523 872425202 931723351 995244232 647191416 963310068 881464401 972826473 9471498 853642977 718063 792935380 478042383 659043840 254710651 289824682 285317460 477860855 421404572 791585340 363584816 639093006 582394198 624063509 830855378 973117947 815857027 902745244 866626953 934871883 195552914 662484282 845344767 966892882 636902112 808689963 910591226 992765942 674973299 870510229 692981272 935601124 550356832 680951283 887724887 914482820 358104690 362622591 410284008 978918691 440051923 657239041 881715969 923828275 230441316 675644056 947375354 955112393 921154340 994220287 207197086 774350192 101899173 199396416 933309526 952366351 108772531 722441255 440941760 726466885 168384122 891010670 556221031 605642531 566448793 981676052 3497932 363654963 825199581 902563046 490114064 550357865 697300201 826881049 628922471 840289122 140316082 437231736 456237261 791860871 654062272 869767020 779368381 814067978 267184058 774625860 941233958 946598945 739460022 782493105 693826697 929033240 837005191 931947100 945234865 974250028 905502271 977903184 806998255 895712904 566401385 842627433 307466425 886541434 482616170 752871294 40500263 176315492 883604469 932694067 116319966 213546247 222817051 785495796 759507248 898943226 162050941 881377993 502986471 773587793 683879946 715690225 333207355 572426704 527758315 758808610 240190836 948703335 480925742 865275814 310840954 863510058 162437319 290919688 226000767 644303244 95644175 342915781 918664205 966724492 803500090 938685825 433136210 584689696 380911519 745015979 222292208 918140944 811511551 909646155 807751469 837035034 439807037 669926619 750278733 890951105 339716969 344913202 896039814 932799917 724928854 949346300 330314760 533477572 705088678 710248280 605153750 721946377 886906145 906739541 544365830 718498186 508084827 546096379 917838681 924516597 157134803 197534430 609230414 943531085 48054278 770730338 358916157 387006158 538205276 928426993 653733793 920950886 704456295 735600273 139912622 672457870 671356089 905155505 445543728 841311470 743530450 770592605 651836687 733947149 482399747 813169194 347663228 519046650 908903401 974254523 446454168 686947550 692463361 970934696 212653208 261011681 459752129 985308589 909510509 928371751 92010931 551158896 822762315 997128863 759635699 944177867 271882751 273853517 2044468 142766810 896147510 958692805 735641649 740440479 726324705 778857997 924743846 963641121 19752788 37502710 272598894 665644313 803700721 828373815 24702394 375132908 481140031 806732612 886864523 934783447 107267205 886329596 389752279 538446204 212607645 218426655 257504344 759664995 643399383 826713899 719494644 883685368 767393523 980376723 748895016 800355754 673177510 850503391 712259590 779942760 583686660 795137605 467502679 845564296 533100045 926959696 592215373 880905723 691136006 704713489 69339033 257579861 992913479 994833338 448906960 778648487 487041320 989016606 180051525 193585687 332754345 549749173 503702522 707390123 337814546 701828644 515382245 550657304 897904788 987470269 44483364 129678747 163764269 996507221 105648212 178567708 312877261 537478955 641621690 925718649 302274715 759733628 401329618 561822630 955170654 975084873 945408762 962975151 588086657 848458000 742251134 861459049 28049956 918214804 673648383 709271472 238115642 923979709 793075709 866375781 303303890 877431623 69895206 119277899 53133931 514751089 608504456 992271720 426873249 903989246 199352821 809327595 601607849 700965310 451051556 931941053 663285754 921165747 15695081 514028933 563064623 627494961 985941266 986535334 141929950 477795599 713222183 779435845 381481180 967050404 736470492 883403008 712593836 924739038 234537276 681774714 21713309 670304691 593030433 781596918 233324525 935814784 979194881 994583571 4201996 681541549 271616200 285163755 990039404 998551333 123089552 567694106 450039678 680245879 90113905 355772305 956783538 990221191 406506962 618056322 487222903 988598080 190772692 796355192 634084939 949365018 106984626 973015969 763492720 908393984 838125626 975840122 407687885 888221673 909816084 972160462 330764274 461478359 793516105 876338249 92674434 502246804 783847283 909401906 889256273 913878891 85088949 464403291 855661223 882236159 267003645 406673339 911563787 929127262 49806702 863378522 14296584 599837464 995116411 996221909 838753980 990958300 407069391 675726889 582998356 589092808 601125007 885704853 813513611 989403020 925682267 935486963 625680039 746346508 27499220 65632000 155720225 559578112 55813807 243464147 310534951 914203873 400475323 503592398 368964161 885647697 427278766 786229628 798794752 801763898 699773104 741406354 386788029 775191428 840629991 982793235 650202502 816038029 554948676 644372559 856220273 980031679 93909171 408063890 842516450 929513547 630131373 696605225 499985917 753876869 69827050 185208303 852814751 984670008 991789004 998270701 257481825 934038750 23688844 269562546 993091664 995356612 182652720 475097558 517764997 610211710 876935053 967973950 288564989 654718849 370954267 847775948 458679784 646991080 875639310 993628106 937434945 966371066 886920646 947618168 301561870 394423991 303012880 945756680 410135902 903991065 41223747 733204519 533608471 560768321 949266051 982066494 450747069 894357023 57002562 564534943 867224023 997740704 707091996 841892587 494082120 727090369 91404083 939815229 562802042 929954669 979081023 996433743 327876759 485427146 644005495 761689891 658725512 755451763 485587405 937708816 567700160 805743977 295390212 587824051 577480894 992516602 282527104 668946256 301026055 472698335 281535590 370090013 897274546 907302239 630506230 953357744 936449437 961316774 51157508 601141636 475237198 500134082 198273297 415241745 961225928 997835151 497526446 785451755 762007354 825225537 761475299 790339219 515250769 549763946 131006665 147725143 32092195 520316856 359607479 889409033 875197476 912919202 474852609 636462438 683968866 816425151 318459009 734508494 663769099 739718937 79332335 658929978 296694001 679368387 246647736 753366755 900881720 992234772 180326231 758936313 597474045 628643713 308021600 741822686 816403128 974125452 670004762 990638671 958406137 995869695 915393454 923267059 657528129 803692223 699240576 871029026 832170650 939739020 810059662 923241342 298348534 321744944 336520133 860434785 96275353 202689316 786053650 791593363 972221341 983440560 68977648 993734648 534159778 540832962 516804214 725908968 507119560 993407683 325190264 514994434 267542148 385122387 118776343 557093465 178645561 853479733 581008663 730495745 12993534 749547345 237804485 960869199 353940987 473179507 316594262 350318078 977986985 981311848 48969518 586770852 125637914 886618552 147839039 747864256 8062013 14769543 458009953 527430064 366678945 967352829 450493574 474703242 309719723 907103244 592477414 998786827 149518099 576220274 9167169 497979169 697367572 955399170 801203770 922389122 93936028 742356399 662134335 851041466 287609238 948988220 27244707 567228588 730280953 842239445 137550612 201885525 392364946 751552551 99405662 362762383 42749008 754874695 258414225 513290534 224183937 292250080 680214959 900568215 347157813 886845876 649211674 923277997 686321127 777266998 746721207 831379635 193778595 674415532 987465396 991561059 98833714 610470581 662128053 790349572 208944013 422993846 62774769 651520925 792582823 968226302 254612228 626344455 938118863 986673156 139083599 333963484 651938711 997117849 730714528 807755266 977380431 987588010 292898263 831032952 571605766 720363503 120571029 549008238 285281304 398068082 734986381 884111598 195782849 411341735 772277762 873336105 477758324 481418390 106520603 648833023 908202462 964378996 486930692 574550447 933563843 971473332 64506841 280789235 2823657 913608308 476648713 501164342 288334517 405230218 489383257 795649873 149631626 336311359 776257049 920887242 449729489 718220277 998585069 999240332 649342160 835709157 740327665 780410918 627700323 875568651 733299274 777708127 868437154 978274734 188972039 419512775 31487645 684536569 356822275 431430356 59877390 206614369 254091485 720550197 365451838 579248735 752666741 838617853 893944908 978973810 924590751 981568446 307431036 909864183 306745389 767851062 974633976 977026018 472543881 573105127 576465902 833562106 761316969 957300886 131208294 524108194 484647755 594628662 194552139 336133816 498236047 614598127 531653278 662388769 841019316 947355397 995943056 996206498 144216794 724281809 990194189 994131723 125751953 177662953 803999069 971114841 532265108 679029353 764660755 829832381 985029527 986539717 136120000 831691583 279591649 864621139 66809064 508429174 547224761 698132354 886353390 937542186 687228528 956914752 833417842 888016550 165112394 397006639 827931861 830899347 682002349 704948546 821372947 838812710 994160539 995261635 650722342 816354446 496218019 924625991 684828491 934562413 36277803 373984595 655062943 728554321 472804385 914038830 540356391 708941032 288353662 392623069 133170729 664046183 770468597 905903672 195072138 268732077 209983311 564537532 784263504 902193904 526790842 588674345 458737784 892811718 495337128 519821677 757455351 787052663 172735610 210475444 778861326 836196870 888269493 993374552 620813336 710659102 510454736 534088997 830820364 837042170 377018975 491238550 702409018 816627051 705158204 882391624 23970100 106749350 474017211 910556864 764845411 872466458 802950567 921927619 492752052 548672030 955030209 990656462 304006430 841696638 137800249 244466255 79517347 331262318 570906624 791397964 417209010 462759162 250296234 344128959 211465474 902782780 361305021 392910424 232479833 873224614 637198909 766073200 255158952 300592006 169644621 172737113 2036395 371651793 559884417 715360563 892778117 954228710 791625886 988591408 675754076 872862765 875655253 916862130 42481305 723897976 499623144 979206174 943174564 948507446 857582659 995365498 462600098 518939225 38805860 516209299 464677302 530029971 28052593 491441334 729042677 999525410 742155609 900242569 854460445 938199682 315003811 882228531 442568927 501137149 202495867 755227107 895180838 943862950 562322153 624097626 434245464 986212871 169332406 315054313 20364265 494481786 68716223 330205019 859124374 993808945 491280267 926245390 750740872 940612374 340943740 851000529 647867809 669680627 116143339 181053022 57230337 861119607 597102279 966890445 2034122 673616837 672973016 748262932 652395336 717776632 62075452 512832336 15842953 204017601 424939427 503928765 482424078 984426292 474658162 610977634 140513506 413083539 56111693 424608530 973940321 981059394 172208113 772095972 443759124 813094062 468102774 547279321 600200144 870647285 19159889 134953005 907120520 932385302 877548824 921759707 450884354 748635203 54829280 65640038 901044613 944459283 869410769 945961448 235897475 953237494 132656830 966846834 396904116 462480334 385629190 578184262 844411297 917228315 102863672 595702643 858914976 913072633 28216497 988942430 880344550 979576516 612134444 922731120 482093586 901390567 711832473 888799035 562029211 699845251 258029537 881689647 532151955 629992698 982567063 997676875 317494831 463335026 874001045 965485503 698672444 918833441 970203367 974654661 646060766 996466990 291387209 776045379 827776667 947943711 917063303 920000668 702003074 982303202 853715360 897386680 88303037 935671970 180717421 465254226 490686216 686023844 411250401 467361626 4813739 325882733 952371585 960331248 124540974 310327756 269320966 953630603 771242835 965784877 370648615 816821736 21357318 627560329 404503979 662382707 562481911 833015123 651406368 829389113 580884490 818127502 683730722 750415703 436192577 836716468 357464653 678668189 604026004 934042134 482750864 692976964 485808090 595449403 677919099 949424541 460982095 823106169 815164258 879698350 315827365 738483444 378436116 670698124 758501454 848528032 243482021 535113434 374246579 570105411 609491794 709658016 733617976 882903486 259233388 283622902 976655890 981596974 309014649 369891325 572233164 648253006 266227567 885447746 954538322 995399684 142915857 579548145 919379316 981620591 758767492 979460648 413330691 636972816 272489993 568026532 580312329 998551793 494714724 620772667 390681453 910822308 283943954 508871023 652319018 977398111 985742650 994338422 172799935 944650544 109070283 382821130 446363637 479234699 325244648 846343593 794966747 829322794 880379811 995189092 435969659 779847669 986126712 996177052 727024996 945153681 868721176 946555141 309000250 922311965 563762754 742558854 272969743 977294609 300513649 568968867 753296028 937656287 273090314 676616930 745931567 760594445 560670665 840914510 223890394 589607951 943180720 947458163 350112501 978435810 210162986 442400030 634848416 880847918 746990717 910188152 793506457 846579486 636837805 723749818 819533057 963097563 65534807 265221656 967379166 986274303 981052244 987202671 931996183 962701851 205326740 281435361 346209755 524773841 300815689 375843243 543058614 960247762 748726835 957762614 268902553 415797598 513010059 886099298 248234335 802854900 368325556 479950906 428562203 946940244 450975993 888193792 289789674 695677257 195310557 829566272 417348545 729079352 338171354 817990615 36060719 594580189 40860008 504961295 249805143 872715832 629549932 827011433 216555039 873200096 549135302 849055991 183657151 532531586 733185982 737853057 403818842 414498984 313754010 606115000 861989669 928703476 254634550 456288428 178153420 817079919 262213919 356244032 311930135 367559205 222697439 672676171 171210947 900570167 571047264 727388927 924318917 983978605 145377962 711873509 453164560 579986226 648173924 825971159 743046271 980817426 727400861 883547084 281904121 920644639 227795114 612953891 324392054 362548345 671770345 997688951 330072919 944120196 28237471 407292936 205381006 684106137 455671642 662816378 549717133 756585404 313405458 429142081 295851184 665829744 925986807 959684927 243588923 453013061 263310508 441499372 67350707 142480302 186893289 688835771 523785245 897423505 701163492 770297665 45764191 988668831 817121506 860772372 128635669 838489312 900582206 998358149 735368585 949624641 444718842 824619874 470669124 840278330 627900370 824059509 845268864 919867973 476317869 556412215 152683231 244669590 215470739 446525946 646728890 754768024 416903270 637062145 207636450 954929252 213527814 926507780 660051270 987497941 399613173 796106174 691151205 723941358 341719642 805503460 551582676 977366349 884514153 889586191 860915053 869638915 841573124 939380949 116431855 559381613 79843690 168021904 43584449 249604868 31959161 867274998 18211499 136184636 76589563 885347710 998902813 998914165 533693715 900465560 586032064 594102851 146439215 207681221 307756209 733678214 841495009 915391067 954633786 967189973 395701481 926411005 900786792 934884513 925523524 950471387 845483865 990515548 278579071 659817402 98596583 290528522 907954894 958502943 383998125 580651191 346483306 849400645 293930537 989279314 157402442 857126678 129832331 190482168 286889370 935359123 148568441 828122648 619749328 899627812 729683531 755496292 487366471 758286708 880775731 892577206 113828813 728739826 322975611 777813732 736952847 759039093 961129704 981940275 569695649 627088587 615146737 721909161 986509104 987497290 393169213 692729180 363811503 507286033 878776553 953311669 192722341 380109453 571755934 761466058 569712357 963192812 507731089 683462046 291838373 486420085 714071667 734391788 487299414 740012015 161835256 458794166 959936159 981473896 716653343 868754712 292495800 589854415 993542558 996769601 797243986 925241612 603234105 704221988 145607652 459851851 104422244 118122772 925565835 960528810 769958776 914042063 302544869 808495335 353298036 714635523 410641277 913378047 422213416 785903168 438680173 934045834 93897141 399173138 746845895 980714390 795176113 993642752 349313769 969598069 618535828 701246905 510718628 881768154 556188915 603724122 194206060 762487259 835782122 964413767 771989947 963506891 265142245 877715262 498823239 584743231 999961108 999986685 687259051 890778467 12164197 426426256 222590554 978732691 824819719 902659034 660985686 925165370 609139442 856134461 44984689 114216127 298483494 848841595 463619897 649169525 272517088 652201052 677740076 899228669 667979216 754102609 206814559 877511119 335785657 447055361 120386310 201241483 10050614 539893509 424843782 898586739 706655475 939052662 364458307 831163856 363995848 382369748 627586175 951954352 724895475 796523225 908230224 942435754 855724800 949769575 524292968 581735367 27064564 263332664 815047095 955753917 446593672 611217589 548745170 590739373 997246559 998504231 514022417 546340114 583038406 883760700 810419318 905340455 676169442 942371039 699290185 941119269 571245039 958963934 411174727 620085921 725374463 760639395 861597538 935110478 550225544 553831192 950048721 976075655 685402516 719079772 142297259 832410692 692041357 838315102 522980661 609503812 561182130 838851412 821881273 937478726 621967983 901511009 113575312 584690886 522552604 815716770 900813979 971731303 696184345 852027704 917773308 945197886 766123997 785407190 351857836 478615347 394008421 796688456 759953288 838222564 607896013 674990575 738648843 906472381 55170871 535716887 251664275 258595206 153088792 381490471 461298217 659643972 954152630 966345794 504659938 855574529 343244770 628356222 350002729 765704173 986715169 993000074 975961359 977217870 871712950 973442890 891769528 924879077 541985015 908832316 902574022 945383705 278033474 480936636 491227296 897656482 832801018 908095374 443029380 791101496 76501975 432134897 233828461 715682158 73328032 597532583 227405117 549943755 523330149 547136561 501162105 759507620 263234510 666330673 118763122 500666153 870485795 967207785 666327049 979020174 625910881 986720172 560737144 703241282 399324975 761061504 258010430 555787071 191733572 311730419 596586802 776025923 980001636 982398429 134145362 957178378 725443465 854537532 413850920 432831961 693888968 863323100 731596213 881657942 319424338 574885181 876805653 949954773 245608426 431410407 306092421 371622850 58459913 812319112 319251077 742739536 60659766 374779145 344976151 639180017 807887053 899159175 672999324 911460054 680233219 787917263 328319922 414710007 312497717 575141685 169388407 426526833 562368145 650355118 443393545 670123789 554149269 928232500 936693409 973677730 283864195 905179986 226352029 876605764 294300420 407058491 616824927 950240325 446775770 942047356 469789978 816879462 945066274 995943109 914283415 973154748 792257649 902276667 501712751 859954648 225814839 378964048 583378746 634897375 543201689 622395144 737956725 836279933 739946953 962855279 294310252 356726217 676995876 728488910 38285656 410134395 939397639 980314625 879415242 881484394 528012847 774152692 375734194 956132742 708089035 709344629 520120852 954642461 58569877 768526979 116587933 816900895 614116062 814281970 165547631 859762322 127212630 789737366 85163968 295043504 580831721 952061265 401740342 683637381 617371946 964701008 323467164 408104920 450663177 610870842 621091209 920595589 104875056 891815678 916838341 992338250 569930837 723850889 115510698 560603647 106398218 515880672 345679337 773128832 250887146 283036536 151015381 935527552 598927937 679272894 20994486 267948436 282501172 421564702 63347528 461036936 37549205 310074821 379446471 948206393 460334777 610802712 936717181 942463498 537091295 770594701 77132785 218521256 450692496 949982067 174116103 372198314 565405790 753510878 288367837 600721307 822513810 918188047 388321772 433178782 300207849 857883556 306019284 630802002 198402631 597140455 646717400 733462961 646673961 837594990 313655923 528962143 378540734 686538044 901162575 951585911 195686251 642680659 184834141 680281711 762568166 844920597 700106893 953259850 520528662 836838923 904462225 933319486 39452812 395077879 839076558 954075658 94360810 868011475 456485630 735653239 929487461 982221461 959032441 966487862 888076657 952340927 475997705 878493530 732448023 992613658 426535673 857722602 856102979 923613478 647348309 719204425 599684189 993871624 859325874 996887607 936783922 942632491 636959924 972574833 563720773 599759359 416693859 813126452 738020505 910962497 455900573 515347234 952763402 996196099 540677544 822916530 659319029 693992672 312568172 900086686 832005655 984286573 395773523 471297704 787474367 873468201 773096543 780623457 784613252 852039355 162337312 401907899 283306555 615791464 979142664 984420153 724894282 730924746 799670173 850567853 145204335 604428770 773853569 909064555 721374416 903805129 687239440 964605238 501544455 641478766 981023329 984264906 56355875 566262383 182890891 502173976 367682797 735483811 851550221 996405582 87358959 378013413 959328603 979147509 279899886 795239525 338849772 430944340 329881211 342932249 61913182 473046457 161672578 541458279 17111548 827330996 152515953 831686376 678059523 937178515 581450004 829418546 808738882 869355382 406351946 606188705 218952494 719761977 602131003 841321839 721023886 810132107 654775970 654938629 548886197 960506123 120617136 794052119 576453630 610294956 506316047 834454318 687203423 828732163 383852177 859613713 388286913 405845469 473377779 556214493 760499113 856980761 236526760 552619987 999316320 999542546 647232268 879053796 812017611 844740597 764623294 883080831 489525893 862787357 26796834 740284433 375276530 440258085 304651104 409911838 849214745 919473469 642887248 887455020 494268480 702220784 734701625 993920731 260582549 351689180 229714043 659723639 697321889 979877881 306139888 515045726 554850952 748309092 795049057 825325600 414533889 435375627 202329532 263068633 253830268 848323726 709450526 877049919 425376590 462190948 808121036 999521255 996530843 998856871 851576764 892877980 290767293 494070345 128886055 591196018 62094064 471713263 457194040 776730405 904746826 998020568 833947086 874906598 262421021 716470901 849982768 910916892 273013659 766080680 392718670 431216755 487989252 962198353 283071815 689441238 955901122 997161385 869894488 962822012 910173968 997533365 505357983 724253158 929364280 933746251 13299418 906160768 735550497 901304474 86043510 171862213 299119335 536831519 642983397 898322367 556578122 904034234 543726269 779568199 923073607 941978522 109862400 134205637 484373738 746580235 815200461 843169212 967819115 979557695 571453570 904613829 737783838 871675474 419547186 622227792 816823157 887177369 351235351 701425264 661676469 763057463 272362641 379362504 208414448 512886878 879184103 921879736 228542068 304893659 850341613 947346827 894008092 933587564 201789928 887396809 816413618 971117647 969179527 989727105 270324902 362435976 632857147 824961384 710312525 933580353 139041607 321800798 788794330 855599037 738534484 942639581 573328231 697501237 303732130 682097328 126776834 134948626 693062794 775673817 936292465 996942488 968270885 973792754 596513768 619982046 799401362 992561829 17577676 498918112 949167302 949225166 583535308 737263691 101933063 177909481 495698015 569279604 59343964 843364754 665021478 679373246 355125985 609107473 517107361 758636741 772583791 827604595 815068187 933065979 313893758 670505369 619461508 883361251 352024861 820460162 200207835 680787632 860166124 948552122 525485930 912189251 669173379 718140813 289863295 460628974 143854001 710406535 698287179 901967373 19741508 834182423 527225755 750217055 966959180 978238678 739856388 836879196 308935200 679239895 499512341 844074945 407131139 521269087 210706253 415824667 35934536 761755289 709370421 809779057 113530069 219582594 737243794 830092296 267909199 887183069 714305433 892736576 303979524 473771169 147133673 435605278 437773433 992682472 563417204 942924651 701854634 936970945 629391555 845782908 504770122 666987309 523875336 598795366 616678377 866303931 726823795 964022544 919681643 941123601 293718458 987636543 569054485 837745818 48074054 624678991 884709254 989139149 866601870 937975376 536383159 738033844 444544000 966708640 927927173 991684730 164568091 325526433 27805750 331833628 550633788 951639049 908074673 915424664 137277581 975235181 333345542 922751080 659748458 883874970 48986559 626441107 964649633 971808217 494948642 585123040 729768763 742822494 242536952 947801072 302840193 769329881 966221112 984800410 830964625 857566135 412130339 497431835 620815677 761054155 452391172 518150377 454468455 506629023 775613469 980852995 553429136 838814078 204490081 690161071 955819026 984048958 715734953 858441470 304190385 665554521 486209959 631787530 15255578 874279940 922801104 964934708 13568415 646423615 522145155 644616492 573269976 661833928 436019859 652816216 726136152 973907112 864328550 871228562 544798999 768450012 725723145 895485074 94030519 391423460 34362559 169684391 793252933 890721495 466374634 945881000 518234560 931859608 538737426 649677302 559326655 692158441 798396401 919752837 872944214 995977894 775097276 824655890 505381807 750366878 958416736 987934156 461208931 884508587 846917040 864076444 536684544 623337275 342008192 515821861 292646974 650169909 935495096 938364168 556792580 593207155 24087034 80304418 269412966 750936461 526950371 841820076 63329040 537341171 990832287 998213818 398846510 484328628 786610437 846361478 797207913 953607188 326681395 871061396 126370561 791071359 772497498 926012981 489315716 860906386 242467802 869679498 309315204 988098321 898276086 973121147 224456447 538412782 450317678 818645633 201382774 490084008 434730486 888498938 830094484 975445955 785585266 816073776 879672285 988466062 894495386 977582495 318600641 576685356 598747357 663670158 536769640 824865895 573197234 576633226 920848066 932660605 977487052 981445385 898221214 998633488 753545735 951815507 561502664 817601508 909925063 913299019 257982291 552318490 481263121 624937420 676293262 946724691 912117327 989159370 632530826 904573806 283684066 695327294 988462939 999299695 262773249 284567332 337322842 869091035 168977246 872505954 152518778 972798076 771725589 954720591 943229529 993608440 175239271 254649736 512739415 689717547 95426725 827271634 510833437 586208265 484351009 595914402 379351403 516366308 483977833 543057804 916928197 998366530 205851590 506284127 206185740 596815621 833682134 888705700 371622798 415076344 411004903 674207326 388949878 621890769 875165395 989074901 367500724 369587218 519799729 833613949 728419892 844232788 327281518 675972464 245720442 247499235 75524366 261866100 15145552 49595640 433030231 922927355 490804565 972590547 977874691 980482701 609089718 817597959 419720494 812629074 944209889 987694924 880087462 900632522 663323704 981524495 258945759 940267403 192177931 617094805 690002989 868904209 916226337 960034188 60682085 537344701 299672643 883473777 209239513 841741643 930219875 968508574 755910606 889250604 935218759 964999332 690984940 770789357 717155299 977426135 124589239 849919970 94167389 150645454 683844380 722192242 550953646 792240124 191318998 239244392 80815984 176848064 587828102 672803154 561730009 713365545 302877495 812652317 564646454 927758798 753392604 832682063 87543135 748633591 81348 612771390 221626367 389106361 969603691 978950746 979493058 989297103 350912647 817154324 245711162 820261612 376985777 786708214 774715034 815846572 371710237 387234644 727533492 979469829 968948533 995911535 548269410 771038652 34903813 150169173 361796574 551033870 336856458 481152515 56768161 275680897 437632976 694946166 151607916 943655105 406945925 540691999 91025962 995016553 262012307 877499401 845371767 950666098 678876675 971725887 641821716 785593574 573592399 621440523 208166862 452922194 252043660 390475628 721589368 902524041 6768945 691412128 475492604 721236161 193028366 522225440 761582385 921301296 750410300 987024479 981875736 990390181 808440783 832316152 255145290 332107460 603762367 673459514 101342687 526745249 690785175 765131540 253194311 554265823 653824488 792674427 570229496 897446985 118347818 794055471 830534323 872614209 721785414 939027995 184064936 314246113 841011788 886323302 277580533 830637249 178558655 915572337 775137509 943933214 30987240 51155422 173462089 404271172 443987822 766495119 683111210 748826507 461399385 909065948 458767941 739299534 492071298 608577347 778346539 869003502 946081634 969537425 288317173 438174842 460805354 882328817 711990157 776448093 360840202 785234549 499882991 874570228 459602181 462653755 826383341 952183900 844215440 894552267 704757612 940240740 828489388 892592342 172828733 641190093 362031608 779416706 33268457 284443022 529027301 542093162 274287718 597428751 172250912 455413348 163561028 538841272 680311997 854593265 408237516 591747648 388239378 684859105 980256875 982268198 921690262 945524834 774075362 879602584 785556764 855116938 379979544 614991975 89432029 835437067 450292544 760471498 554912754 823216351 868793159 920321453 960968257 973903562 947737147 966618375 808908150 846231123 479344065 488276852 158819356 788172916 119629266 910187742 870752371 902521851 971012032 990642218 18696482 913434871 440847536 956289951 489164443 920831982 410461578 917501467 845449681 910002472 47991102 885957304 924966597 990103289 239591261 416361378 946360324 975856130 288036291 597640422 749841381 837085449 961702780 992549621 688450724 883695301 586066943 677951722 584411872 636454164 291628042 417897037 540996793 946947095 325992087 831716062 264236439 590805542 712706560 930363765 705727822 736556579 339454523 376020588 241412240 848436460 668702770 984264972 89478103 647513688 622561554 810830246 810783070 954833935 285365470 668112694 841683203 882221138 721177028 908594169 448849088 631748417 928623796 934733604 441811358 758620666 234045863 639080182 894555066 953296977 687658202 943992181 410343440 680943590 764350076 784815497 819850636 998352127 771863290 867467009 581544185 599115197 719647396 817746738 301244049 976394822 294337370 829059411 94106216 970614850 742351202 829445395 830055946 942733211 699229131 967464211 785883227 948000784 502221022 697440536 289588379 925925224 368629098 714406656 276597724 878245982 332904688 767113243 806533321 912174338 29247214 345731195 454038316 828913297 879346621 889753745 305710985 868980308 78075920 975508150 296118783 471349411 564254030 588849082 251079167 814913859 98810763 599576277 479946270 866440359 720720838 830921360 225936186 594757552 698473841 986103045 136580674 740975065 847858498 943961474 664475348 808164370 227012032 796823831 668941038 848272216 822345370 949159187 233653733 589885622 284042171 635614692 918637951 930448431 975861996 985231657 299294627 917097284 439900975 559349560 902131176 919283949 762564267 785143292 953082062 988985458 303937009 981975240 189753604 736762688 169435715 460556521 36698031 941061330 531495793 735661746 555580690 559214288 835585656 908258309 804944747 929787982 485170811 730330062 997004424 998795127 380905651 391646617 194790833 890248016 208427498 375015071 296738314 485610760 879882033 923936094 890323053 984814762 412277762 827165305 130687528 412816106 334551860 352467478 70317888 256037772 543657277 705604290 785784572 978778275 208778071 582376136 23387191 124346032 775283536 858683090 867995933 878596170 978452955 993640828 123832199 718440279 563166493 646425782 569886046 601952961 50341417 329596119 279097990 380250261 507406809 574577814 578709040 905422800 433339223 833935581 343744727 531617427 370750404 922014574 98832455 410941219 366463040 457816057 379216983 469067434 682930047 965864219 762174419 990030400 493695139 772177856 359368432 464526677 531326136 715395345 558397359 610358728 609987874 894148883 66993027 682503330 608687984 957219353 75956449 525184663 801151031 862618720 127338741 210163338 523178029 546309122 509635307 619673572 85622266 839453879 429180337 965659496 729251364 884544760 914619559 924831432 90276172 302629208 370906169 853126517 318588388 629326834 368816312 444923442 791696234 948138905 940203100 988408266 680443319 916298636 258781507 818329659 647940529 672946319 247932167 760283104 279821166 978614103 828812197 979097242 207228745 571633738 215518378 630796812 486225465 714441722 619857093 847121930 549412926 792330395 705345450 729501950 157919328 988081631 418092731 422274257 333676386 973761531 268261142 525718036 306365296 533869958 401523366 453051506 552576683 562327984 562489181 828882692 136649399 955923677 626376137 627000933 631852213 847695677 67885858 536566185 890123965 922960254 185965248 883842830 962815339 999288373 365133463 685547311 511173955 954082450 60356984 499229602 468069808 502187181 19431892 473417274 298236962 362621334 907260524 935435009 669163719 679375807 241587568 324169469 550038183 745353430 30219657 80565142 101952179 537224093 410329201 824593719 495441117 763822640 184162808 602997241 441339951 752655836 702552600 938072215 700972149 779793425 316211237 965794288 937031044 986841596 893908916 908147382 955881214 964428730 757926999 963792287 436109467 789640229 523998772 794911434 396489312 517701505 639054355 729655388 674849857 960072280 522193631 651848619 528943261 984111835 696824883 843032535 965870435 975892356 831127404 896449372 611495101 827771016 183051716 389463147 466358699 803713076 121436939 135940953 383537549 854859787 523669613 721059004 584385004 628283740 365163234 840581455 603205311 954639644 279593495 356293676 905215632 921363248 868839537 875596986 250291697 804887480 722929816 960280522 977916885 998652408 883611618 961336615 930927103 990838827 587754524 707182141 828033428 864889111 213390196 726720460 754131554 834497404 862227229 884091863 254344620 921047098 446561842 473404875 297315228 339003702 333784819 455076994 409428858 709793367 259701346 854367870 261697700 325628594 148026973 320062288 743584051 911678424 376646073 966076155 781884140 837858950 494367286 540611594 168045246 347464181 864810805 934651015 535190714 696824054 426741207 826521178 282243655 935564426 728753555 871395579 204492177 621728862 120305173 498227643 489840466 899268467 771623559 839367363 828237566 908682788 369040907 693157050 714448063 895889940 27799665 893721617 319854888 520393631 30031657 49580176 852518642 945659901 54200346 807494963 952398072 964812454 63458772 650123534 742747580 934634613 57912156 90005126 7819956 777549771 256225092 924113630 302214028 717752000 173835562 294439638 325807701 914079942 120593964 140138513 372212129 747793169 234375360 762320224 375554689 766328170 380434006 833058476 780147892 969994253 507200186 526312750 898714795 928368092 541266064 639432326 794588938 986678448 426994182 755174815 759789935 845257733 591571752 863191429 423835619 695035041 378743566 577676472 473304499 944880812 867563253 917139259 825081557 846408032 902977339 939350074 532900309 879409615 576831167 698471591 687537804 796538889 890747285 933946263 690409749 757036520 574056910 789475466 690623684 986005433 221258602 584976701 761041710 957879837 186787583 856840473 3883055 868851947 560183964 861689390 540857485 947871773 920635479 982733966 368398404 797594067 669711963 672010995 35590101 333324869 377009650 469516592 269973431 429704140 264837180 309116887 553699375 989645296 959822879 985308040 789493908 831359732 936196087 985463211 761620494 819771501 757434754 863512820 585065381 681739944 256740546 383355266 105610292 588844126 591345692 965876335 785547958 934557958 395665847 592223525 86671853 561006130 450301044 649789078 589128602 635430704 360687991 930275674 854827503 927575330 907673355 958135279 134334090 908031493 781318226 928491712 776820983 891462479 830280702 929946292 248516756 920900790 608080492 759220190 351097174 864118001 483784694 714875979 560214571 922614240 853164215 987601509 86882476 127980858 598970605 824305510 159390424 275789164 894441121 956023891 411904893 541166165 316759873 899100311 205189642 233840836 758105980 951537869 742432442 754952747 682387240 890675093 285515524 388214607 389361706 983884343 620122983 647483674 39761691 744397750 134060920 872240251 407431866 454759930 239934091 255283739 453829779 524743104 225900967 354307441 533151288 848832124 188395558 736951222 145394888 190490944 839339167 979072874 841762613 870344538 418672370 485340286 622505763 972077618 66767408 954488250 968254472 968623584 560915400 838150806 639356648 909540897 712597773 882345653 487204750 969928926 467349411 800991966 3230764 518955810 788342187 936863582 620846670 965149638 457255497 858024709 512223338 994095525 373253302 596543984 886356491 899254455 904900898 942749265 930446881 955451881 874267824 875881721 636096052 839853084 36918141 867913732 368731265 930220149 412670796 591462484 830424539 987939613 29963229 451509660 758161654 811158370 897199171 949544642 742348701 812217986 791869961 879465579 573387113 626989668 100630975 816668269 235621789 402666607 548717017 691184736 2539224 101878460 453046856 829372841 92377160 652739815 516296131 735326805 198808941 521021413 243246416 886932254 472864870 933119299 403607827 817476134 169181467 805076422 223901889 590354625 99221715 360705987 305667825 355901285 898510895 918579728 521472194 793072592 56143429 351627518 927049530 986422247 515523374 590626432 198906393 676780175 468602777 773977628 324748737 749243398 933355373 933533610 774407869 879210547 594974429 882710321 460937183 770039909 750314106 755211355 216647786 540315880 574627177 941011938 115577977 222639080 643682427 700829039 169607327 894632478 822604406 956120608 150498528 976670342 54829601 857019448 200634883 699608365 277407331 688902453 382237387 892722070 604102608 980703789 732274974 930960964 569898249 954987122 509206712 901427919 134133856 900716483 196486112 434071324 825966964 935646988 773148072 995961119 468195424 691004662 384482227 948268070 516068036 702802281 456052638 743977348 689747696 917246847 355186537 779305579 506515439 915471877 217974255 397636469 840371628 929971155 924761929 941471376 825103544 974492660 999380891 999993932 55193656 279162713 725990629 764426301 546202666 564560480 588343194 937994783 196751239 734872658 75435008 877031914 265564930 815019784 967256027 977601387 546278356 778004368 801506751 936733626 214975852 826113088 161042307 457458916 715547500 870110931 221482842 376062051 997044034 999822611 658378477 831765627 589835202 933986493 50655604 761014239 663489308 806876570 402276459 835644349 605015762 864156080 70975611 902688039 821376734 838451977 316053161 326568307 520165109 848548589 388685679 509841050 399668800 977138770 188365433 239521090 829947243 846996136 258060986 423437600 448501852 517229038 965758832 990782393 652613597 999560512 51038219 803251660 402281013 989317490 13063783 184405715 57971501 585025688 236776648 807228649 911511274 956260699 222490640 985101586 363821231 888565906 797291192 976524778 86904357 532607500 558158248 815166890 688475766 785876055 34341671 90293604 425111671 684427583 913750207 982153453 520538117 580392275 533202775 642315673 282573677 387972700 224301959 621380389 169406862 183812076 613196316 903736593 277927248 745791715 133393530 886354746 2571017 452936605 178099094 542727751 218900528 976559066 626367637 744641782 984073740 993886293 312632391 786161580 1587005 726249843 232879746 932407574 731753040 765399071 451944609 991597394 620889324 767324254 504038487 534491618 132458964 944697806 711750581 923998377 597853148 789780666 409962645 568948869 539466417 839976386 189378133 732778569 75065108 847476186 275415105 298895579 346680995 609114899 543959446 921401419 250603556 838314201 760677366 921712741 587635632 921711084 8065849 576282711 723184216 852161886 856812479 857145099 124863520 280485029 641424481 948116605 913080785 916760438 875422825 929166753 567225463 971953708 385909263 603287450 148425005 448009908 949765070 980782883 276054973 320600879 262570320 462358038 282377011 434356595 925964773 947701464 121710167 389329331 372153412 849402315 41177950 923596044 797615390 926547729 573218572 815092583 999233054 999847216 304902286 447699156 287969101 492868046 156160366 165244416 894837455 935062204 865158264 865669839 714869642 756951182 871186277 967190663 45316255 790292613 937941709 954889637 60008025 385661414 351333706 735671472 323561137 995811628 252901626 711461724 871980666 946298598 339823027 723483478 632530353 704019592 164872736 490434522 899942166 948772350 221579274 885966725 749655500 920491933 915899331 967069506 869694909 881287849 937962869 990057222 813989500 980381797 396383913 444953172 273014866 554124095 110023935 748100977 481164232 704905655 452793115 757278572 298449371 406341642 611462562 967044538 859428727 893260950 834151522 872870188 85491872 480634910 199519343 779000470 987232008 995717440 38193729 377399886 482111951 799934765 343482953 485151028 700116097 749744885 482494555 799115809 676295077 790746547 142671285 857393076 737685054 916928954 967762185 994615129 766539440 785418620 488820642 704375850 318624529 895584761 116480805 649752491 11775309 176541987 580456154 865616089 132805521 255499069 525341962 917919329 45154683 684385502 763963237 978535193 766617766 933850983 430198487 625377055 94674916 826919695 263590277 461856302 71191179 666891150 338839323 396264423 41073630 296415527 327146785 348116567 977610160 995538896 290301528 529001105 934609219 950760772 133046401 799815533 223005089 636034090 393944924 475323814 60747812 716893238 207373125 672826789 666801347 846213122 447662870 961235093 949337199 977460721 611114949 619702292 557882402 930681184 867933752 945965909 255316928 822694149 335985617 535997457 632511418 689469537 855762871 880515625 608969274 898501459 546463722 656556026 306271292 727281957 897421262 992410830 13376874 33033726 325269615 357643445 457856111 666277698 620373362 947260409 106382465 271346359 866329769 903082584 100023642 117626862 574221071 726374852 682558083 960301150 570614284 855424766 914863601 994422745 426857676 738352194 469113139 885794922 96892063 506311736 191720695 634776867 207179757 668379353 890435370 949776052 89936275 631501950 348259834 628793776 631044655 663919086 294734764 374500626 660787797 799701228 115292994 862291726 649570000 676099270 263318584 349348059 314188883 335295016 81826268 383214118 639781028 969290777 300037312 375351003 714316927 928264461 135642753 829131478 27315569 510109829 719949410 956523574 696918942 820064748 685468921 982182087 541739856 844116118 840868957 859344175 863208693 870564191 704836074 930273834 65441438 499596413 906808181 976403322 166803682 741923496 36960056 223821979 360560188 415839517 629558869 691020811 754683854 936960407 603594286 970594324 973700438 977689491 680472575 901918772 680323947 726308326 371868073 921433139 165916116 356406287 705001718 772743340 110088724 989792003 188885259 880943929 733807250 807082809 235286572 811423038 131847692 297597621 10716956 296278763 669703221 875052338 385872363 896231504 544232376 627718847 881243372 999428781 601544646 924914006 414097550 570561695 718178902 988091663 1240091 844976747 418790993 854503938 977922980 993930587 488339057 831370993 37448988 591438192 150725614 559734407 44204239 727921668 362447584 704891891 890876963 945934565 127352474 733224388 53120064 811291398 67449552 700510618 119442167 410587210 374735177 546166265 838075965 998465956 110011665 531622000 528062257 804386584 930538080 969488889 929378272 939624589 133360225 187054477 510630048 753886277 63582933 798147437 847195620 940733627 224912147 952491817 213098293 443526322 164640164 206983168 64991773 535443225 36672399 864094966 773673721 950262934 792347437 793141043 567606351 725144037 253819067 724736038 44606683 602468199 311228331 939931947 623204059 679324850 581279833 789508931 36413947 701279377 128060861 669638644 10940577 627184782 237146727 396928982 61296159 361277813 445491025 950263577 302534011 945173916 414117550 966652947 56890401 488150704 49422770 988315184 360258740 874127872 589435979 917969198 551813261 608658480 251101778 761114131 572558428 683504856 921575498 970648269 717977449 856185024 400337429 628228894 267133280 646859495 462797020 620623792 472574612 881795071 107886406 591548309 253498947 863417473 805887406 809525640 854569933 972538855 11749861 102687130 887277033 926970229 337897837 412063374 257264824 703343995 399424694 586036248 956272939 979325104 371096553 584370790 739252538 898319779 473468945 476569199 458325833 987883193 191576296 665218547 641155246 970922871 645207819 789182456 376392893 683226270 303577686 871752439 807898823 938957807 43526690 144377488 206002262 726698998 450091188 761423967 982938918 991437151 272255479 504640526 681466310 800367262 782475080 947205413 206034194 540421051 641242693 852215967 968896855 975266120 950160472 953251097 672467135 939832258 432693741 525087276 815021486 915265401 663636160 848023101 561383437 855383202 63369709 909236736 755143199 819139018 258832365 786117516 973036645 986749174 333480079 624438871 585834047 660769568 433277521 913296184 108031226 987757641 759798813 773069402 999956137 999995445 883468012 980812972 144953422 678872655 371825213 603646044 414614604 873465835 518478140 688788655 128865582 986289341 751433582 911908800 611638031 933107811 269936786 872298353 722448581 778689973 345127509 466193035 35061252 416863090 192114620 335233541 785506293 997060926 410018167 990727059 296302474 635658087 481483310 547109566 678232385 835076287 905780468 970660651 857286542 931527366 389236505 611942680 547801981 607633925 218010310 218925539 279787481 562324608 996508320 999500747 118863124 577171402 256156762 533791007 970523860 999854391 675786598 853030655 711285778 974817796 858532103 920308573 229224153 630367448 176316787 448500083 846905042 996303991 224126831 850024575 414793373 482588024 440086979 482942760 932530072 966324884 60739945 786725787 409845554 573820902 846726762 887726681 326325149 584248873 560402641 963992834 419940004 862581433 852323147 909624130 509349781 674229622 17788994 411088383 621996884 881508556 435878568 614990364 945240088 945752249 278264095 487852129 760394708 858086038 489748057 802828182 944064265 970584857 686253442 967319785 732820216 739350719 461985030 851134139 266784373 686188436 353276826 735367386 776750276 963988597 698859598 807575656 483293730 739137300 94501071 515687703 333088806 667762200 869481255 957688841 490375379 579206782 35815118 864310381 191321287 626756106 223365524 796219674 116227073 223264920 257466531 516233789 778595922 992676482 525080754 532664717 293839907 356550375 216281722 466055632 604750954 658789435 525215616 857424235 1182928 457887628 720277310 889308640 974667501 988732102 666969433 804802894 204128530 478292182 630098875 669498286 790377105 833523423 527122821 878731677 235589073 903936475 947132484 960043087 973811254 986495944 548496304 628187475 789306538 880364889 133993496 680355915 691258372 826936655 72913770 299286985 690860964 998509276 799883661 939245838 9501664 281356643 922929932 986898826 258740122 753840649 718917573 989925369 843418693 975459588 361468221 445564595 130408106 712427564 652742162 829690105 576967048 887944757 238352678 804916540 402461402 417246376 489650738 852883555 222310284 766379973 628841064 648370211 158830811 690224111 130120603 484766627 6241287 423452258 871394991 872466551 617714389 841574989 580127347 609851921 299450397 641822248 691390084 827000054 856776641 880962520 227409248 264989321 123052351 697488595 827891202 948094192 238307697 406162377 513129044 700670271 906568756 990540715 434660107 930461199 465521779 792281055 42270 685158230 691490367 868362922 601043218 642326385 513235266 695106632 57861774 571447293 230168256 931565993 420037159 800215547 608435768 999190339 463867705 654642931 951305033 953367311 213912404 256225921 173187137 863026481 382073588 782459447 157059683 350522251 757504435 952852058 742577098 972975704 323493281 714613811 110082743 254647522 698475295 924622195 391639274 432263130 123128836 186537860 938513825 964872011 636715978 651691343 792670216 792745881 275568195 758354527 356259152 922706101 879633292 968291393 314571675 352386877 853793934 957277130 830496573 979585714 451727158 700460117 284041971 331832171 801195809 844159848 400046287 908602893 763450522 875200479 196988902 332415536 341095080 625836741 269032709 415827715 530777288 628766661 143492151 726049835 450222031 484405868 136580392 694271332 906910262 945861901 268100446 405793525 729034354 824330931 396750028 979258793 462097011 959020747 400098609 428013322 189638838 964496960 981407690 998668240 547127090 950925350 917046682 921034998 91740527 464537295 300848779 613043830 340901469 898139074 791507361 868376350 363274544 896747010 373305395 550019112 421757613 685176219 693678413 730476330 61598435 548753022 787435859 927396831 149695657 800350270 353909840 839179994 328094797 691448191 834904686 988198642 854477548 863164650 74673514 87980693 355807078 541685933 383083422 875932270 89022875 231225213 938438459 952564069 794027840 814843214 302987765 401044910 531082605 561058541 601227511 763261963 940185920 949746275 314819793 986962924 329149191 793876065 48765353 304517655 654328834 810987769 942465644 994248274 629389042 849103832 962208099 988706010 437789583 936898135 911158009 977901900 482246376 630139764 246159206 447678998 549077894 860078678 120044251 830738933 399825531 477530172 386861013 943833570 559058249 901968188 770307921 994863279 28769562 620114818 611407497 767504373 201978458 744340463 338419264 662187417 975315454 984387529 982400796 999811959 990828139 994457025 143143567 390756507 299279273 617534775 383960327 580160416 581449878 950611361 515208988 962863293 561585674 747664482 726678982 848882550 35308849 335295253 689251512 868996653 998048673 998404532 584667814 711739596 782097410 990663464 336912760 942710231 698516051 871379644 967872943 969171991 722660734 822758434 496629846 797951838 689138128 729150751 964518679 966578019 706042601 979416909 988669337 998352752 3248911 583114165 752491982 799820940 913540789 927298608 445169877 661926625 294309958 759320262 591086863 868145293 62368498 703829394 352955589 680485935 235819183 367906335 1250801 533189956 391701481 948947695 748888026 890765467 113518344 448490819 868257284 925002799 845078602 876119657 438552533 945130839 422601797 852756524 260170970 682711887 900914585 999627827 258132294 552675559 336299745 507274355 203846163 655091555 498696804 578578661 273825041 982931418 305646774 965923456 87018297 658395375 345265429 483553637 814478522 903776013 718534400 999595804 340990355 693335528 685262725 811560319 203726879 485114225 924319384 952891347 766311665 915937631 344300513 692014209 279536926 755894553 95104268 578560544 582395927 602342910 482732513 853070900 647182017 908836517 595628113 805208143 763358696 770015538 139178438 421512707 19279729 819537087 132888905 263604504 149159295 344142725 443513622 717921242 152651727 475940492 518946623 794072449 810278793 899744819 431629408 763994265 736493524 814329394 730888793 731800934 429185150 435982199 875684539 887485411 42005890 358014161 958307149 987091518 51530264 277804836 676556727 908474950 898083227 983103126 538874856 931786638 114679119 440842731 290856362 369496710 300138062 391118690 793983850 934989681 249442676 701648296 817956712 867214327 130670498 756871221 202359295 982016777 10946023 741232752 337093614 521683137 645482116 749414068 409335882 844396007 837786183 927527672 665123214 671343664 39555781 876569642 515224438 910712959 11343331 627637465 738963287 946661991 183924625 551653564 505449878 696631482 783780038 945797049 938576632 990683408 798718321 987406662 707446263 719566320 17672693 436362559 745731325 948732740 585575251 620919527 643632180 662027269 208990986 586511693 421849835 745564215 120397851 406315579 957604046 964562365 113095153 743023599 600202410 717683290 194225569 519785166 514874505 567417564 338414747 480979430 810723593 868754629 774176416 899165869 835341525 849063222 559849906 728877616 91385260 432368708 240379119 730288259 694321486 839290909 675858368 951459530 204891840 868285177 415006555 432061360 967082921 974260767 101604788 791950561 664352851 976648567 787617463 820052333 557831600 833052357 178584314 968251568 332024987 385601998 963890907 980825563 538402633 551222870 713505804 815119428 831754243 848749157 21665708 823436008 635223015 758906075 314261752 923175944 704853076 935536006 819324538 917690131 28296077 83616749 423848735 539300806 727154993 895192568 583775808 855998954 293109802 361240456 547374414 582148143 615685975 816669117 393563634 535227663 277011668 883362122 883926931 963512852 299538924 605867836 826247423 903800218 897840352 959833423 288735053 606574304 614332734 784591220 376577727 869098286 572062439 669131483 936911995 941707005 49454686 891964587 52294032 972308889 255645805 321651146 62024034 491932563 869245107 929277707 218580079 313358973 888613266 930020316 334571429 995184997 115874543 754786619 648497974 748573868 348502941 475209859 675268063 708439741 978965429 997507216 971727209 974138669 482390252 798966065 244210143 648585767 471084950 789109889 99414031 103442217 380087438 694611293 728196905 806105079 256657905 286559285 131607601 941620069 146602334 974130622 343382531 825116329 211035090 865063015 639275508 927125664 6027666 856762373 435085108 514088057 751441422 751667862 123975000 384377948 375063456 792928577 873380866 935992960 137657852 776248922 963024523 966438765 917186801 918107994 105400721 203625048 358156800 484493681 245748384 325751841 10220493 251287570 86250070 990229681 559101865 743666005 548208498 736213421 442253946 977057060 272064063 940899644 457941781 934018920 679033819 736648639 996028609 997088940 982740500 990299287 453023627 505881613 320724815 530952442 550279199 804886943 307271202 950149664 201424442 454748295 760163692 974865868 5437043 447692022 888256212 996697477 755363099 983668166 610928653 818512239 526018428 651949297 964338641 968470831 45226394 310642260 958473725 994286724 381876411 439510885 874479731 936875694 525512668 579164088 186957714 871509621 601650589 637235403 504186024 546813215 254953530 842747690 442368269 986983201 99259017 657129755 941211441 988073124 619549840 878192267 813961827 853072021 836214149 881787878 815873982 910395690 266827502 795019267 674549520 935686981 90122217 555397480 557485638 908843600 729254110 733886072 503426394 822958367 534486039 651970136 505916184 711605962 232852688 386296115 938579825 993751490 312500750 458101302 846809356 858136694 950000040 970472358 357327152 604059666 364855680 646515649 801917484 882824571 346479149 918136792 34716198 113217901 408084022 646368891 72403065 741373188 829918656 860294536 808073389 931329367 882498984 930346770 684819890 716523070 131087292 453227754 917492719 952618409 212627373 250834075 356281567 520369434 825896369 829432053 214897978 528977747 335163782 993505626 974197876 990264919 845107300 938156835 976925476 995805869 840903158 946067588 792434354 970694966 728071943 932542109 929956133 962222647 188663836 352013470 798689689 839487118 695301714 882170940 109568494 298515161 207452261 634117505 448897461 768135756 402658077 746395473 607976539 620349528 527814916 873149075 95755254 167422246 547055047 842860111 287954114 727099019 40056097 793132728 100900014 340446274 806859905 876810428 175933283 441125471 234790774 439822869 725788480 865806916 422667324 786257499 655872926 741771528 846834590 914599600 790628096 994466703 962301131 999907803 553124253 818488773 620149424 744835168 998194337 999179506 367919413 455774791 391987263 611871863 552194302 915064745 917841306 923466418 328706710 476977267 445516824 889140478 323879932 477593160 853592717 905947749 158435079 835390152 114025792 445815419 136780838 900780687 479892906 688729126 557195056 683032662 671941079 801340601 873745348 917293699 21766602 815511058 896916193 931642781 693333019 711616270 121773435 448267723 506162366 595995574 243686263 294061523 711178441 736629198 642158561 762237584 699044545 994754641 527069680 891953637 766784676 975885208 410814363 918977292 743231668 806460139 849869433 851199884 1612822 724799608 900878852 921555662 467510166 799497057 431095364 709907233 553873552 954010001 335555600 626976881 566045349 706035701 683066558 815118149 382342343 491529135 468344902 479056726 724323481 767076370 15431223 233467965 996190225 999586597 901273919 940014888 521075512 710384780 150328123 186789071 984249619 997214086 521311542 718006625 445968585 563820210 783371509 849403736 154095336 327384788 343530903 345664829 154697542 515154330 950156285 992725539 307204155 383370446 594829400 742483527 40276065 903018904 798805871 900953348 879211493 931162201 993796393 998559654 356353914 885646022 44675070 934480761 990384112 995842806 660871485 753465770 758774888 789589128 657452614 939926496 293472880 854934373 352781707 881544775 987372657 997898183 992437974 999695167 30897652 492503188 765809073 797807423 655225835 843777206 261769860 565597525 108019622 625227935 503643023 582243199 597398057 874283418 548374429 913517251 937856935 974284885 740339394 905667224 340009119 741970661 893736669 959104504 319062118 781417955 253363889 256546824 54296772 233405535 402914697 954430917 192802339 781693572 868188645 956432756 272311597 976155438 435565375 520516635 147653216 440125387 762177519 929567032 330446904 359082006 64962225 286827400 48674164 940814001 39605957 385851546 679400265 820198885 694273649 957460005 32562804 732600340 857134642 914481762 440069899 924088626 506692936 967356190 643110195 772328665 860323746 930899905 479889074 952245274 956117616 999773076 720318067 801028698 510730211 534297345 11896627 906470386 28729899 114294671 421091496 808448965 710817924 840416215 311229257 719195976 257007105 504321750 877242516 888918335 436113028 511468513 814084590 933262936 762255044 847138954 291598424 762396997 416800576 808499318 382135293 960113677 400645206 569333883 934437375 985486731 756805421 883336663 819414773 819657378 914003999 988370411 252029399 275108244 945662720 962080791 259016943 789388390 285646741 635895623 711938088 949182219 831331026 892578279 627237522 687708235 161250092 588142770 358346026 471602115 254479926 661039434 461261119 835305077 47325326 722345824 327693926 488710016 954926254 956551437 869805653 888201704 462713781 674350487 161269280 285240785 90716491 990304901 947606830 974004290 996209423 998788207 450527185 577873512 887297700 913319226 106134414 718950619 274034609 884773295 510691070 883417548 720960216 816325091 740005941 839085643 344720791 349214081 577195817 968836095 310011208 717280618 933983786 945301262 30049683 725717936 142894987 691561141 322774684 663917855 25508118 550006537 840535114 958760097 78365827 341158478 915156064 953120024 396600032 912859462 982586400 992391012 906201794 973312629 357270112 932734005 478641585 568918663 864111600 950189836 823320810 986107082 96022061 563007182 456016076 939864950 379292907 464949821 725129793 784105474 534511382 831898767 780023547 923241403 845557833 937273968 855150481 915275507 461501053 659661310 770990753 878140612 912368341 992925733 225890325 256291919 754633511 954679926 634973239 796424213 476570959 780854383 742143933 814621668 488783956 689246905 983876829 995926420 364334399 621484769 955523094 985867865 824777307 926736911 908756817 954831959 184964491 388550625 516196768 807322148 447009467 597709194 275856352 415845367 315668614 456092130 535859304 638539358 442763563 743284832 561379553 988134225 82286145 202751944 273253404 340135348 612947458 714186198 489018847 726600503 981942224 995593726 348703567 620142117 24979267 899224135 985411782 986867086 660804408 687106245 690025293 809277436 846807354 982941558 21987112 871855348 389309011 847760623 317141042 477602026 631776242 858980852 478744982 996237074 65465295 177010963 613407150 889212862 301654099 908328451 570426102 685212186 387150660 597900085 807171945 831046759 487959535 884112649 42038219 705219186 774304590 967458941 705599715 784056767 643874333 733715895 791894378 928030062 211562152 976820732 873168319 957632163 987462649 988567325 425400452 825243130 947541725 953749403 351404162 882643458 793754258 871621263 701599531 915464396 960462713 976283587 637000148 845785430 495331110 827884977 136627022 715925862 444925736 718082774 161396626 222404674 311689627 455874936 951990843 997169557 514913815 722776985 153380847 482526769 560767883 677033367 257124729 599010358 8395743 583547436 609585372 746286444 810672534 890217374 10829342 22389636 627281181 779708880 356147863 415006494 278876761 990685448 441485760 593643786 906594038 953147073 466853494 501657217 385672144 602665381 636166947 892531309 326663702 552890273 904545222 940421868 127191986 524863466 131771481 647315190 747144166 796561193 770964868 969597788 645227904 925032621 445888635 782873160 172119141 288705493 630718741 922034798 26319889 51966131 980126391 982496883 861691925 957950564 409227105 564480508 591872317 912962225 822043947 870149517 862434271 990532601 382048507 871318179 263782332 406470716 854176358 867558257 845803128 882686276 790476537 857778509 890498923 949936180 490004168 648716519 331030122 708164162 680186505 977553525 760471270 924299562 943155994 990237989 160588826 746694903 156884125 211536567 923243339 987417484 654069525 864715679 208780314 254025340 143821681 479520574 14420505 211555172 325597592 585547736 88587044 855626025 673715408 921472996 627812687 673326412 681696564 927089111 130969776 174135666 257612027 979065284 103411251 283171682 864230699 972913014 550088728 560631304 661573252 858155274 706390106 709635192 951902659 961079007 807959501 859267317 196354500 518203957 366468510 662304172 546813916 582458239 965764970 985021178 846294223 994798085 989777536 993504228 511751243 634471739 216525834 391659745 560356993 841369296 514391793 874885807 859394675 879987450 417711534 971787146 45013234 134901479 95597346 974667186 430807497 822688520 733254528 861836876 345304217 724041628 836372178 917371610 115337871 248240614 174414552 410880519 319604390 884168984 933087723 992207325 579178484 886501200 711295542 854640195 403325967 638732692 5146710 880718592 406990901 803345248 585983937 873754003 535639109 610231514 874944807 903153902 425445027 441851404 496017452 858927848 28116786 203456804 641342025 700842128 393996497 576190734 939089181 992723191 761850637 821725611 550475936 985704689 860039518 942610993 888767122 930277465 505061722 915758300 510896371 603975612 523243910 527906160 319131721 527438638 930816749 945363802 670696927 957488166 92086171 914160114 701651387 875929480 352924749 389612279 276300654 953754203 153841311 279712816 81274169 779886869 77201601 323857851 281522955 844241532 697029813 887651235 165818586 778277581 530097142 981123534 207916342 935828080 967182696 995394319 679331888 894153699 192921296 230687405 162831660 386290659 542923065 579559543 720988700 839226122 272725858 695548017 180282101 403239115 522018793 825572828 682823684 848341731 818586900 867984510 37545832 618381780 872091030 970322024 257633309 682961099 623369040 723515194 410945112 775198450 654322579 660322614 762120110 883044726 51388193 603208576 923409706 986997667 221256115 850840513 143045109 560276803 716110639 967305577 728285350 894863377 665314886 998622302 619883662 839099656 940376260 953722825 86930761 507838094 415746823 705805587 329214675 478188466 342152172 462906219 177851822 474496947 727826675 937586139 230855250 495033684 221618063 497000807 637407064 951445506 799159916 896161749 782234370 820688805 92850679 217247554 641757135 812585298 866062103 972921381 428360765 811830686 661237146 925403293 681446411 717528480 299045123 513749196 716257002 813508429 645019456 829094370 176585026 717263868 508309819 679209967 492299573 562405159 684024187 687672357 378215138 653339813 94328343 820780404 115462624 944641502 648671371 835061953 930766948 970973883 986925884 996506144 400270115 701659593 463515375 738047356 404479480 849212746 617592448 773916960 380678220 903530864 331086886 549896483 949465882 992111698 525413419 819365149 48487206 195052857 991261076 998424744 373224174 387964269 573990644 766754450 545509012 616336137 668633732 782137719 421153228 780717594 590344931 772421274 764638252 807906409 317864948 710363838 748668370 815214767 702276591 805045278 614601496 860881971 410723072 814949637 587397295 684070972 581661238 669862491 689006267 692379986 591055774 764403447 413306537 535296852 131880300 339609667 774420754 936977924 90302172 696730808 534258902 988313586 649943683 658865778 944882589 988971953 750948825 839060108 940001179 979575361 654635586 980769252 70896511 93236915 824607791 930451205 627721159 958818043 48886748 238669828 514902645 678718845 969331915 984049259 535148796 991537890 786627894 944041677 364193150 749427220 571556864 959471314 899899777 930726673 386046388 678330253 479672563 509490760 26802984 70854844 309939143 506972083 397037446 972340251 927301434 950060009 8922008 439166233 218392486 314890188 982101175 989892035 869470837 924191278 882052460 897402990 873062162 975226294 289443427 697661878 836162580 930653504 253776452 779487250 899176698 905445604 724441273 877430093 96566769 203482229 250899700 754082204 186153907 500274875 522398384 959690389 80707014 509828142 166298170 261800563 231526973 924902095 572687693 575740897 922787455 959993967 2480401 283258668 525938240 696854042 547085660 565397547 556884489 680960606 665571342 770243243 895091723 896009038 378782882 492598936 30177473 330996655 402130164 797930733 103525009 140640245 302618820 913245590 89606737 787405755 140459519 458554147 956465327 962163113 701909226 885043342 195147104 848360900 631801678 794634516 941333696 960770059 142936192 607279572 910079776 953023647 257647584 615733599 912204111 951843615 410716454 674086459 405765100 722863854 263631860 913138094 822108379 917001262 733785036 983631080 884479985 911787155 570505437 683603293 109603197 502356570 15611298 833479783 474880602 828896739 363438771 777112859 277757616 928493430 535737440 932467403 492663534 776849981 534240428 894673670 898077197 915443934 697144929 794805588 450298673 747821232 308874511 480110802 269458907 308419324 394486245 976884176 549487939 669507385 778683211 899133811 347842750 875936782 79727517 711858291 615777980 866695070 367380557 930774487 805208612 907196698 256781048 292498913 430011337 703867994 986215336 992652582 817281057 850606301 389828505 629305457 728816394 906146253 360044304 829065345 585674059 791464845 547368978 739047872 174899108 723309844 538013660 786490274 313208327 690091143 928928965 988743372 957847830 994957761 121189532 334392293 954194920 962776548 182646416 818675126 943570147 969378247 504488497 969362868 261701060 341403453 24850080 256405630 613670185 660997349 321814841 819283611 90774940 922654704 482094325 566423572 609844571 785695388 748168594 763404940 207834949 582730971 231296777 589200513 935812864 977184440 137588343 970973231 866825177 961542016 534771459 957335418 640413191 729252539 924977660 990650433 35112554 417254466 980331301 993687196 546486312 837289288 40792419 665927486 608322444 714045966 994913166 997263460 623632597 968086086 932984489 973321996 480300578 901095513 413343401 831052066 374862554 405229653 522276096 787662310 796995436 909969328 26114698 355313982 74499371 88850218 870959049 993075290 632063587 933315826 198667167 860371699 935155559 935983038 372349470 712178987 281768893 820988504 585940459 642477593 941092144 985433262 44371657 569430912 976628742 986425374 833900953 835418717 775600312 824198224 202734298 740080522 449266395 855169971 26362895 36900560 702755605 724144370 439023946 500611240 861156940 879825139 208242575 666859177 378512376 809722600 583124364 588733558 635408940 659224377 836784059 924137363 682249486 703497784 269559471 811267928 545786453 904989090 634345366 747406097 402569033 874226804 42623089 355041023 827077717 891157352 463547267 602111039 60267623 222073342 993436938 997027431 83204731 92008720 449927980 647808033 313585673 684440357 479137789 765358264 597211659 880369430 119862995 923372072 364146424 660208217 97527973 166015217 771870058 822025904 788473417 918834401 435774827 894635788 256355434 297960365 310920811 695261238 743960207 886531870 515938068 772604171 430984931 934239071 576884333 901858251 373553695 836313402 477949956 533190392 95599294 366214966 696864362 786131114 237798042 336070963 383354226 931568917 272760804 958496132 53322920 170406858 453852660 993120605 794872153 820725707 749531081 878695512 314639877 394130758 349466919 463190420 868549211 924299763 449420060 576304544 438639354 793418603 698497066 869414718 711647258 808523539 646296476 878724388 441073548 977770035 944972165 956143270 534485866 793980679 316386878 706191305 427952512 447543354 368651607 586677069 48810706 252541299 304312548 403881691 374045909 856788502 335308273 500766197 617955571 635021626 936682044 982933958 38529199 261819968 476440302 683846690 107277534 949005928 60491189 546429408 487217218 913479782 429684589 876355937 935832850 967469624 956047427 985675742 322132902 761851645 669530340 939068456 152137170 561486907 889922634 995815827 520594558 931986422 513902809 927760618 497663887 561595447 651947840 831379245 226355747 998308380 672808527 994753598 253866672 531790159 212872322 762091729 194251140 440580984 21805488 519937624 720683176 773631360 154782422 598239750 17248655 307471126 618145264 745713459 285498846 850572523 229782492 697158529 490795272 712743166 726777926 744377996 323213500 663698423 683339966 924718350 128553847 453103810 227140843 312805113 833678996 987676320 893552845 958981144 82055337 360932963 312463082 507821378 844942485 963696563 412138347 720172168 131417656 438005502 651362402 740214847 714513684 969317257 803909068 823512674 816130096 862350962 112236008 886003476 589776260 754397573 955786914 956126431 76693002 177746770 616667803 898251981 818498120 882784129 811445740 879395499 988325179 997840690 241376337 922863009 806473136 868510777 444867906 947925659 756026167 928686822 784871763 920855083 44809234 638804473 134956545 419949570 771921379 785245488 229059376 655249608 722255746 760923113 385336398 948312680 830737770 989985456 234894314 443923053 85109312 498887769 969392989 985657777 778778003 814403422 389953425 984400273 682636347 849289619 107272787 900883478 753565642 782953905 809533599 838462651 350642499 674861023 304275401 336774315 418261424 942153783 793122265 896439702 17522834 119015826 604651702 642972724 480296456 809974670 430115341 909889571 451575652 599402301 256703632 540580343 317181645 363498476 670011577 738205892 95803201 874112428 712187237 902041996 484760838 847948155 201292059 869786221 194932433 502703911 692011813 933204648 84623340 944875986 389947759 900231200 688410648 788504294 508455139 785255961 668930649 930321614 633306610 690322509 773987819 862257664 732176693 986578624 737363637 760996763 331158348 370801321 541328449 844660653 744460026 797350117 644466551 948658509 254690809 614964242 734366054 815429922 547591219 698593538 345517734 732499130 362781858 465109027 861119522 869016891 331581780 862092964 109805129 219186996 810460694 902161107 7058385 87828470 963185363 972991686 354828408 744719827 168575379 928345482 86379929 939652014 568283690 940796769 5323862 942717113 528390042 693719170 229096325 400158482 674296319 923972438 558904139 871240398 966583297 981277949 104931794 875677662 739774733 960370848 290363480 777484384 219646020 387310928 809845151 968119863 539083496 683271255 170954574 985473282 997262650 997616763 642336868 864622978 717447577 734427880 849852520 936020789 539452895 786291464 908448290 971797089 30623014 675777019 328728008 875689528 398167745 725696925 75650055 398110653 661896728 717977066 728369836 967765559 526236901 560351334 80650232 137175604 455701030 826786006 840822663 993234045 323868542 442255874 681076505 928779788 940340554 986227304 770496946 846011715 410866246 542956590 109463256 239061259 228575394 424515880 821199398 884880847 248646867 719581783 56582165 397442539 879189307 936483823 851059304 854241362 571019173 882876676 544296547 561239879 211554946 857662462 348627808 789610375 833786191 992824964 914521668 990508100 646420775 738610061 878905221 924456568 439410822 932844116 42110603 755754140 51872180 435256266 993084408 995331305 208414050 922622493 466112040 876592063 370503698 430036198 658423869 707830977 942878770 949225222 319518310 405805425 331652585 853159257 886528273 937276605 931665792 994614512 755095431 777067074 206226092 934305962 179668186 497693755 756811347 777949211 670614750 881636686 52453053 871615278 30638239 700965839 613405030 653986681 949536868 951418851 370870354 942913453 269671572 275540363 735433335 818353950 60915408 675098359 240997329 612984386 630346572 921843767 289772244 297958237 109859642 165575750 130596409 843409691 350468055 515203512 928363703 998039874 100064650 811486234 290409315 750811998 32331357 119844642 416835296 751265466 662934954 929310037 622179416 847811419 972765039 978611591 411221426 978876385 655973334 814944807 970774250 996341379 83015340 978165819 847824607 928347527 651447681 920379532 650951036 986015567 579838644 915750022 623874045 716488590 155347912 593273464 585756041 806649091 37416996 137073097 656654746 689330543 146671827 549915212 283399714 665623749 592761226 688172285 848562194 931875361 652780237 685312125 38673292 619180795 189423629 487707005 615973194 956759846 378894523 746646751 425270395 974101012 659390484 912836853 366904444 386753826 998808177 999448044 453620065 620879460 165519222 719190919 194913348 367971148 650541337 658895418 278520206 422696071 436298357 757944888 527717302 691536396 767084615 928891693 603631405 811764702 688905120 863051645 957722179 990865767 584786599 952223905 147840708 188519838 147335233 256705648 862248747 876345251 190435695 226436075 701128355 891150546 312160681 350859514 259917332 510847071 247166914 374777622 721871313 971615884 977698627 991948718 20059446 249522859 220927717 772020338 587773037 851685493 219912651 756427612 806826916 968059196 467084784 812612448 576888686 581530864 901949474 965714324 591841980 775832292 442162631 479606064 442009235 742871136 838107638 893458384 657806585 731543445 933736455 994948029 488102137 829717771 486213371 630939239 429091462 828498471 858781482 921240141 989458932 992464587 461468558 757005598 249755287 431738191 595778650 754511332 149282130 713523480 336578231 939678455 888836202 920957875 184390805 315371029 252659062 452837143 860789379 866719920 419658738 637773538 919296985 969297826 654302570 887469357 254590853 956568805 560337263 567770649 825767082 852666694 593335581 794482528 171442269 594509075 270319531 952144608 735951289 841369208 642463610 914038493 695771675 753763275 535360931 928043046 21243102 596198547 900818398 945068523 573936195 603237872 662949397 751829522 763630150 866686472 673227849 733920231 443410849 481666311 125364946 679305785 187798842 652770299 702833206 965815468 187979985 251653007 423697291 807055997 208901088 535803245 205635272 496762821 46357696 450019092 795396405 993717837 722922009 881765457 82447992 190919224 982692698 983520069 522785620 675027780 591940868 696162726 553801283 777089429 486421439 812364361 375234664 562241081 823839316 946190041 639864389 652112459 331222570 713050576 896134435 905660113 593783900 969592300 111196341 779284594 475805173 994422607 389666910 781750458 948445821 989613985 793704140 961596849 451406976 485975391 540154418 760664251 830153930 871922775 68216484 741319026 63392799 576666454 303571101 636835723 495310713 841704430 484148150 802891293 788640520 977782629 510839752 654577844 461749278 785272925 293994187 663895625 467466825 725753616 633922780 933746422 938001896 981763696 248434495 761735732 498013061 734119286 67805420 456953237 303994368 739374365 32824240 390899883 241737080 572836559 299022891 404351825 992565715 993808519 466679256 687730300 410590265 732860035 695138845 870147535 847624718 899372370 641195657 687146043 500895874 789082351 637732993 885042687 779758039 966494172 113113271 943856753 71018442 72954698 970626321 975070841 711547886 896023144 928830613 934864733 909831726 926180942 248406371 639511314 636104430 648638345 64292011 883101546 171537437 277065641 725609907 729920707 707565071 992330099 523722647 853642614 684536008 879679009 661933303 774853792 711993738 860815638 289135128 509356561 458843609 934043919 684763303 922509581 777842592 997357898 937718451 970844990 876900865 912119041 772186201 895359473 832018298 958067565 553927655 565369216 137542091 472859184 613132197 780228926 13164184 315830141 596121367 704934797 605161573 971801614 261227352 874759311 863395855 891410514 79694286 445025381 636957421 755400296 7692107 227389838 265471709 438008225 796856460 994260201 472546904 931565004 683501448 859417883 194947171 537188334 28071151 863533623 388929631 696520321 595166307 660647629 4509396 925887100 376955027 796759399 506772813 992853819 166006606 715960598 234927367 330305988 795862093 808486750 685263767 719150123 323691794 674169910 830425266 936811182 13341818 128898915 461457896 821568445 283113073 522520885 690643536 809612754 681606761 754462734 77308047 201791967 365811242 541229903 125555601 975826893 705648047 870452541 665790424 817393855 243556482 569416298 981515981 989860725 20730137 928627274 15935479 476260499 939121534 984446297 667815190 695931179 602949651 958404642 468635931 557023112 188488367 311171997 34854393 140857463 382339258 701859121 49064135 456513191 837942517 910489927 684406896 927727830 212382835 671208068 779696668 889788892 227738789 807898978 863155882 941841317 208912337 271420874 260917483 840885568 378105402 650410125 899107755 941239273 780699841 934530574 280553082 424211244 250124891 587826086 800636702 826376352 2829866 792548591 486115180 683244294 262015678 878914304 553079232 825124507 649539932 871064971 371274544 484161244 694493600 719364265 147284955 669304311 686009212 965401845 830705278 943736050 547537516 912739989 765794256 791672543 72600965 112043702 857918184 911545159 754297458 845766120 551261128 922404771 150539235 457654217 70366298 194865549 426742885 753177319 698660377 756398497 752779731 869961434 491632509 919121991 427698026 636244102 239958091 494156524 613829925 703190987 550122127 568739101 916153614 924926547 302279945 455163063 537848608 665810861 414237456 970572303 58028493 403660534 174040441 588725072 186642391 594857516 36862652 218192056 851223391 860171990 810713653 885027386 834408919 994635075 588813031 937395825 672877112 868828878 658593764 809077079 434837594 683359736 441608822 832422344 849112028 908786805 611886143 656784528 980714748 986478919 139290104 350353131 366592363 933403571 585140171 599189434 227966516 369137238 471449357 989377848 192659971 396892154 849704196 912368723 294713671 411997308 955573919 979887836 271167328 308297993 161636910 515705033 34224991 638643513 423974089 586741376 687808321 830458175 392712906 724380637 309901683 488676348 735394025 919308607 970554666 986187444 412530587 704204723 665479861 911777608 949068407 999800731 587540047 789171358 435548533 501142137 572364130 649382228 712097643 882011498 657619615 842124029 583617955 706973993 493204225 496624990 475112769 534151262 658143366 785865494 696854385 736724621 483856916 494695909 94439942 132644212 332306871 383443034 987082314 989523437 989097974 995448218 174237005 247077709 432316873 754076479 587396587 814039172 282524755 662547247 586282795 722853537 211906219 807183783 415892987 438624703 891697641 925060926 972520168 979464104 341496795 670305768 988470745 994956123 346867268 892659191 224572980 247397115 9717596 911830028 620726121 621095603 593898103 714705150 492537811 522254546 793497716 876010047 475062660 477975169 75535908 414140720 242112732 630625241 370807153 372853683 760158185 806716663 471106189 837674755 758018131 930403470 578928425 904909349 628753874 848261100 978781906 989637467 45759876 805743757 108468314 195570186 766928942 879938110 116639737 659440144 899908764 915793179 686017911 708716750 846602098 882241997 703909019 931436569 538203909 779543262 787431557 909302916 330821886 797839354 188006314 398879625 696277884 716488581 734718177 989790754 494709853 865202562 299074595 464410026 589393720 930665727 413044383 783705538 356724252 971037595 400780549 599549421 7759993 612675669 970976290 985103253 642406885 971290013 973100394 974497953 371692755 801278948 747207950 957259551 535455392 848602324 103110151 596686040 272278878 900530235 132746568 549114252 761051225 887920634 813581146 982855176 584033826 664744903 971418219 995472266 354212550 893913483 152507615 284769916 484921235 821538584 864658701 892479832 630710374 764152208 151714996 473478503 95590012 126543502 134345081 226829928 940551043 946822916 707051786 872128449 310943243 711164334 262851872 387415819 305069397 914531263 139697830 508589213 820842909 848531430 828449972 968006548 324008866 394596598 890354593 924374364 718103905 742758687 380356441 945554721 967597887 987681750 36906307 880775104 360167352 410214053 53245607 396630061 693438599 718950821 282838094 924428248 608062787 992122895 465106723 537232036 138173632 387994517 591894552 794847419 464949300 966821394 645872092 753700280 639756669 748323256 497716163 814526416 472692641 926641277 927423130 975760567 329930356 657390235 886650140 986069521 435061721 456656770 866801627 873704161 345379503 986978083 469407710 705164546 33552960 222274297 849043045 876595260 763659250 925092612 356354551 381781888 470687436 551557486 906269289 950632672 545426892 559722279 962763487 980693000 126557597 445768767 753790037 922564600 944121276 949149930 308908492 485812849 229148520 448938664 655922186 792770829 390098285 515823802 982615143 989669041 676274891 898738328 827039537 851608539 359612984 622176496 253111354 860465870 607524001 869106792 441549405 476665438 640126997 735755877 410177458 883624782 463584394 708379098 691879661 944070298 93846035 765752733 452232267 870888197 122606794 863822069 533214661 878585883 825109738 878621717 254332787 636972716 693665848 745725838 812647962 926701853 845987181 869655411 443552708 654575154 336508874 746600013 808008591 937943927 91067128 756976581 165960990 531534568 707385285 926626489 275630014 872102224 859629658 938905372 600053572 746617689 465693195 548396681 474454298 529552724 506811432 587603152 835412714 998146756 819250981 839210825 577162539 763293660 674901654 982347118 233801804 738042204 79702153 300969712 232372699 509985036 527912854 877881891 750930658 990036795 481268397 851173814 97683253 203982311 711998741 722355769 363695267 603652637 271692521 488422659 712315783 858673626 872208566 996366292 67801747 863076290 875007071 928446969 601277835 880622566 650302235 715798645 622103968 715859118 674737154 823169505 292922556 923778132 608816106 700118011 174327814 361743510 305768602 807379647 620199305 686319830 365228799 641691702 545851572 567083389 51113372 772758927 876131370 916877842 586947073 651899755 360098806 366798395 150938720 741340743 507578213 937347750 368000259 418226038 222291043 438919201 975683948 993812167 53777707 389803891 184099910 389767217 700062343 739104861 39858783 405321257 526122615 853158485 324072517 937168966 772264869 790883852 242392817 272152485 90348498 932711436 48635487 93998306 843470143 971450282 33655542 429782811 11574649 92833200 504218763 943050358 567228258 718701532 984034521 984740271 216917508 866652680 192808558 691019430 278644258 782490999 189255053 919199879 929120122 950345755 144226836 517593043 682789871 683537497 670351974 703843125 35077969 552027680 195634953 939040948 90907864 860898872 63407161 577903543 322996730 395022221 36519328 626470945 935113386 963390997 412167052 835415676 697003736 996094949 317597230 398208009 467035103 766220511 387374287 527901692 512473043 805976202 818297748 913920184 322404906 805762749 317213444 377455933 445923886 946874583 921283554 985758724 388631923 846546856 753522491 929064170 22507328 64508791 546922285 798497196 906110472 949714209 473106761 794908743 43557765 303436958 665814013 946072678 78335970 337002999 122079362 312662698 638212872 937620835 787390161 845382888 664379626 796158241 58535956 469201574 59997687 307685583 781582164 862346264 61474935 375250791 217298516 410995404 96253317 899229792 448114129 957508354 622398211 721200791 527591483 528365114 196552217 694939103 51431263 492693243 851976897 892698895 933825415 995022956 727526797 938688291 403296892 812959493 61083809 557189081 974821174 994281404 714959783 922819256 724268520 960276099 368608505 727481663 39668716 68180539 229903259 631189839 242563899 768664658 424089664 736892376 654161729 895337767 189219498 985912869 834701787 860168796 816851912 832751000 549507067 988658036 445421598 674582520 417804746 497116657 384814632 958921597 645651116 696866648 490095086 731715621 838556606 942816949 448633472 969433603 846210703 893693179 236429157 605055888 146356888 482811193 292187475 800145908 1090454 715408206 19461392 895470501 411245839 989950388 721270461 902056678 644857046 779695626 310678024 608293295 144029191 608963308 878829531 968977178 887073489 902747693 924877137 945417198 108078692 860937868 365206079 506658747 345379398 951579907 320072688 732191857 555641914 922564906 110880496 513968295 394313468 999581972 254153510 980836629 411790012 618051074 612645731 838563517 368200373 380955982 833247247 966097772 146263593 815179693 950624837 994938107 926276320 994166071 39886893 607489972 229460368 466003845 238200914 447675411 643756827 796621331 217560962 736439647 709808216 799448216 641957201 761707591 820172366 860435807 346469039 626222976 945363894 957667382 446052265 848796103 780265587 844568743 465136600 956964710 826255793 907298568 41946746 108024816 22882949 305895905 167303881 576629493 299604472 540672066 859715322 995812224 401545310 938418036 779442798 994516326 706896591 876064065 32470335 522368582 698935462 939080389 198062453 418365110 383418477 798776125 35181296 428119571 350970069 453796456 906492917 923614532 20182198 572685074 722759901 834592659 861983802 937510645 115700383 888554461 214346923 344581393 719839673 919048592 744987021 859746575 142240613 741821336 503114424 810983923 371477599 537866336 189879509 796613174 727333733 853619047 328199408 473744481 819888371 977329325 969521256 987079864 731272147 858580037 357625068 434670835 265070475 569988144 386686059 516821533 65096291 186991365 772325297 800444713 777242311 956730978 588543747 978502878 36488261 786842141 155405795 550177754 524642935 793134456 703109735 736806528 641783372 783810761 71593741 141360340 588736745 967989317 852623069 878423648 646891703 856111083 174493924 505196971 344317739 524948172 282792662 621312901 637461335 803049860 562546784 596589981 736345740 918175310 641022996 930773527 624341860 880997769 688088053 809137281 525203636 541824782 837068724 879847563 358480622 892336794 589111002 705299776 836232899 845786150 837156092 984699830 866342205 957745408 341847813 656956623 221709146 765761663 368801329 442304037 914006370 989121340 183703477 976958521 410455701 719812471 452677482 544170131 493216014 860989558 322815376 635041339 773790265 905820503 284554976 673687363 610164884 774594095 989163213 999268810 868317385 943670863 280605118 859984117 962345745 970996984 794796686 889515458 316262645 433490206 284302602 372841551 75953762 774544393 30762659 409846332 272222997 632302670 870043066 918816195 394585137 599939132 106552770 225249389 93520013 195790549 725500781 800127993 813078584 961179576 887712786 966907124 225712193 924453815 784635026 839079004 888550867 895568549 742356973 820414555 702572255 860308309 868269191 871260572 891189975 960862804 831454477 998977301 104289561 710165084 434443556 568169128 276863973 787972505 16619414 827566184 714945330 780733561 907814487 958595806 384303411 905888744 731772351 748502151 107960055 550956101 207674806 338329069 776516352 839425616 983060088 991657335 461654461 472433953 73040427 481983137 51482258 352056373 80092059 858291708 145930376 409891193 465392382 917735165 503824205 892307591 967961683 998013642 445857275 870996101 383381134 625074110 929249231 940210267 536564944 589087288 734149040 924099801 370293296 727578196 949784696 982809824 261200111 623800773 167855494 853111873 473115232 859080737 807725960 936836941 333008270 712890403 984569689 998818850 223159691 778506727 939338471 966942172 328740447 663892387 249555155 940177850 706525223 871950538 266830388 782272832 864967883 967463574 779138173 971666242 104862085 211378413 829843859 944732243 626198894 726774904 664944386 952588283 166225497 607810195 177300858 382222073 362270448 908639636 490860284 903428895 47092098 274280023 415864450 878077829 507793276 785808953 514009954 638232624 664191621 737635982 455470936 790492209 44774065 338628509 73744506 821805104 759053917 917954765 499037771 949590481 382070021 926488739 609086093 750588945 120990689 904789145 44185650 826590829 545642548 878481519 20536444 903189538 673776368 674452103 879258314 880291487 931563363 943695322 569578092 789131079 153278418 324891281 964744454 965610927 137257096 496704442 677146878 944261387 203065477 676446927 831088660 864835240 160492404 665729061 651324466 687377981 170444285 637557462 457802892 912062095 944852662 956096010 550943980 552720611 644771458 885424083 146166841 364735463 895851066 976049109 168879841 451096996 250741545 346682919 666759476 886940271 918930097 949976456 819454349 949293061 129803037 642051367 888902427 942309897 421692997 704529550 282713316 975173237 706569876 934736858 894710353 905070110 90273840 611605295 351801740 366283697 565991803 687680879 786575421 982762265 268151331 311599962 965358839 966011223 412562075 592367480 424693622 758171930 708040227 963838173 122737451 372651713 852539935 887309739 531725958 951716688 938842340 979027044 856980042 893146240 610568325 932325843 300951808 663575471 390687694 962016477 410222421 743485391 187957399 823036553 218968716 521628648 713068667 797423498 976883004 989868609 484458836 754140732 349328373 882021967 149199265 239382893 744423143 748109000 833690815 971583575 751957597 799179149 62372226 833691495 940903993 997180014 977517216 992659291 846252509 942666538 393417847 823973028 765885359 885390331 672681594 720378184 126040015 741403698 214459235 415187264 360207264 879200578 748350279 892828644 958277203 994293719 765844462 980600762 389681140 489828117 437610137 760453159 567273389 957053387 755673956 829518403 791548652 904475641 608330078 907510501 230596378 531478135 402776003 964050503 360429917 474640308 909724267 938866575 465114414 611188368 576488212 818651249 622671248 751645619 903448115 914491573 923846122 966334937 143501630 344998017 736826765 830915654 1182929 533287111 60827125 292790517 920715301 961845560 208509667 216454545 340151101 691731097 922681391 937284394 847994077 918190920 493070003 792853009 99955065 424391494 201447783 462710923 879463333 914846803 481625782 532015357 778552018 831813675 569960826 956184721 707433113 871694792 445325142 506962877 165115734 234910857 295015995 524033620 276299608 822156152 666491202 735582467 568186652 658084777 788407427 965049214 786718375 958766050 292772382 894310241 239083575 299185262 80030079 442187632 857605509 983479637 787993788 888465337 376377747 893589708 677908782 697054853 347004860 674708325 533781707 864152140 93813622 737487507 406045120 637721405 485953457 833533800 860919985 948365202 244083916 564385243 909965505 915056972 999937361 999979352 294215581 676092091 43971490 214238218 51540203 57188062 736393879 819911961 965497125 978290696 839173473 855836133 233016997 569954975 142690849 716088735 639448013 756194081 646744484 985730353 365197540 863796405 540149377 773198842 135155662 980330435 833038269 835358515 509551819 859060967 855787330 933137279 255403356 839067475 893810881 940885877 610483374 983124520 306330116 381651089 441358814 713442482 301520855 829825857 867252497 873328086 692656891 807176630 514001013 680350717 991097050 996997507 464304157 737405319 964303889 964881385 607502215 804057153 747678494 859163980 709413630 868465715 493480335 612443660 954977518 961023310 234327255 751600205 278073896 489415627 563840519 868090431 857374318 941137603 785458058 888355306 788383649 957321876 47711306 721136155 938682467 998942964 509071199 990642197 325716213 403481428 504942512 598187103 206600427 590498351 223563881 656525405 20413901 852409136 305282089 931949618 517188431 986813607 520166459 744459723 378276040 827687635 793495525 853015828 14274659 65755993 711989526 712598531 711044526 875655610 242279802 665757474 225016208 343824219 151883759 262404592 840635129 937408923 340318142 682434367 105127266 581447239 340186325 598029680 994340352 997363234 561396489 590529705 985156446 995160191 592465526 767914026 168774765 950279302 714656399 757873433 643902041 840418561 251981156 602595528 466864647 472172884 351011416 420745469 540311800 816032345 98454517 664180702 74400141 98294642 244575858 680659821 56446510 898316305 310926335 957318125 450658519 980223608 264563563 272804785 322097610 860368595 232037165 740047432 186883188 879461377 417823744 856407338 881811333 895352194 471969511 576669218 969819945 979763084 237618866 554706576 118417894 347647690 131992782 568187773 498270700 611482932 981256705 989981230 102215571 659723868 844836635 855279377 745658621 747311947 800464751 844293398 193050328 421253714 79625031 728501046 312005266 539017989 219099283 359704071 546081397 881489627 400612032 482557541 428952157 879854306 26207881 377416996 349368999 526106525 905303283 963164723 304130591 442855120 196587147 919883878 905428866 906037367 989735864 993298902 855729515 988319717 760917009 902893885 517984445 577546379 891086455 926723735 326821171 542844201 720317550 892775741 445653464 863942630 40164839 347551333 468035162 674856906 388951177 722546926 413083242 414825470 415831604 791013405 203469940 734987267 832102252 978025966 970701201 979342046 301983387 643554102 572616312 745822575 120243943 527437740 488954734 801190988 858697883 904362065 605512849 883363612 579386987 888283747 905307242 993595566 874653738 888173949 183312279 781053034 26632813 266290472 406809480 764814436 46980351 260463628 956660455 998007088 989169126 990753497 472872292 842483068 49148517 861957233 297364337 484764394 51782341 382880478 154939134 546770410 688899101 750155240 887371768 936336554 994419411 995885139 446773255 769891525 355059056 938050433 41958217 511145592 51810623 822034611 563166611 622589126 976804191 995773353 44992337 545783389 475863310 751138037 549986240 966698680 505160629 578773091 580208986 922804772 211186867 446922355 494112932 740965921 430870852 442683931 465970023 673036857 111673534 556182719 976001807 980431919 752265438 870548136 666407186 762187319 724482766 728931571 322090167 487559430 161281124 878242345 763585439 840887573 88019333 286806230 355717225 426915355 511883567 968165483 291075545 996653260 160725543 921493910 616418401 950646726 742743312 938715889 873991982 963024434 272727299 597176344 174201056 790024270 346303468 976271383 343745 495979783 120418191 213360260 15776177 741838613 440396277 705489792 251414328 592344147 961738668 973008809 247477237 464405774 337277292 770577515 766323339 769580485 625149911 934942918 471017427 958152967 406689665 748187401 500490355 963246761 835435679 925504483 607574487 807714681 722788434 946656549 15960309 339762337 394196435 762147819 410091583 970330000 870927587 917025783 686097481 814589187 13715430 18691487 875532528 890272325 229544895 389000038 103090234 820134003 56018449 118793919 828934129 875420697 317989587 562125512 3316007 687432694 531512823 782806651 997567821 999245258 700905048 854693997 292844538 570827697 918753939 919255460 868914893 914913344 478766027 577896162 72510521 408063686 501079365 815656407 377486369 588021157 525803983 855447198 163847245 757724182 909907790 993633756 619032244 941514634 141659683 286061032 21065621 104619663 528667067 603384864 518775502 706472042 609523564 939979235 536666938 791020580 625285349 863057458 418899641 529679486 596809170 934959181 755866800 876570499 453375240 883967810 766441021 880464715 765571340 960455007 460144636 555885233 199764532 855953647 876685324 978977216 208844875 232186441 489070870 784630377 14483748 359813573 663411978 712471795 474611937 498446253 963030227 989184557 300468654 643146490 194020158 551321611 896113481 946782396 827604336 938945838 386914024 502491679 438104714 950527902 986821022 999143138 683159726 686135626 418652790 702922363 130516778 967382368 195572148 831907328 848829981 874137679 740744804 937231393 519137202 681901683 430176341 513947403 689745127 831717519 227882361 886633227 563454628 863270084 596753249 807077790 883731042 957051965 288878660 323098287 678546835 680023348 310220011 945324976 447519979 602304423 92942509 118802524 793402476 831545731 943458553 961590472 658544835 883467998 619174787 754081175 832988187 833536867 512395791 806394289 206488984 982526254 164833434 541352921 445920996 477346809 262622126 322761358 466519429 557272025 623111849 741123765 621211757 776697786 664002681 955073864 590744608 773731056 232245390 398341624 492781792 823762502 883356765 979722753 688912572 769079289 48251918 560748263 86966173 659644380 17711813 749633246 476319602 911751512 936806028 950810178 358094431 915050147 123417165 917899824 334395499 703656560 388990557 771858596 359041092 853702293 623144966 816686457 405857261 616137370 789892081 829548384 647213532 789151974 18838206 587589914 774175632 893703414 779672744 832571106 869500419 908186671 34020819 377716434 748248423 785585723 159375389 867939223 552031256 905639719 146265744 473349434 108493680 326928158 14086636 242640684 572619816 787106468 510723955 900630681 582413540 818402718 625153948 792078797 120027464 158914563 470593070 768877336 45795401 940544610 282855090 850998670 42826284 114355766 521728125 972314892 683746249 783428621 814547497 862399475 913015899 958666267 766119133 854547318 208955822 824131035 776018506 914233104 848447525 944908407 819792033 936255310 452922547 978531021 406617786 413479566 531412545 564494526 600951302 968793953 989337111 992623184 388603065 559654883 244887584 831314240 954977291 988583447 719574589 918650271 744339531 889086303 633773871 961773177 75314620 509671451 32908625 841757674 807134359 980204427 205281553 340615752 800439432 840789456 208950230 347409803 256802722 502272493 722902289 947741905 324717424 756802356 304425826 684873840 252256683 355578216 664757480 910287925 314024996 639639451 279673174 541307986 826800068 858351381 757949306 937435828 651596676 795755719 967583148 976861534 969343601 979554995 473053170 916288312 196416489 678540214 106300558 877455342 894904954 950429054 587927548 614612444 366323269 575947979 520630375 916951049 921278727 922106031 513732244 595373897 209855795 309193163 320030423 576943325 123672443 437870284 421593181 502559094 813374601 934308443 502989868 830205282 598517742 841070238 820787193 882222756 449809292 551225747 713936113 835221095 367146006 910658057 765265472 909007778 160073357 405108635 973111226 999599849 319402322 606984402 192238374 882988244 540031124 850862293 629466522 721392191 738187276 987962487 423045108 550212080 344137536 508257274 384847388 958955416 726941395 848096988 419595607 872799094 517212068 756540047 99245224 797168383 707966813 755596071 226226779 729916577 134487099 855209775 588713064 976303124 778294125 970133355 843579349 851201056 357302216 727542214 687613473 741578187 285613130 425341049 154551795 419861246 305153937 518759395 74943764 286601361 225544486 786881203 932653699 974620655 746272405 830125521 918462131 981464896 265361385 565844788 575140032 667015890 894511124 974289478 677001963 881749168 52633857 282858735 958327871 972114861 493993671 956801894 871366960 902595202 530300242 647345099 104673908 971243205 192919265 672029532 175815776 933451777 38584406 881541743 487296949 621208556 345068250 550843466 960517450 966848852 234218485 272767147 1698010 780370288 906083772 964500982 69975001 948298814 129483667 981607570 611351674 690422432 20601286 259229388 863326474 982700284 843898856 975328440 963864958 994211741 211031374 480430939 662274333 959909025 414607381 717598467 871378046 985906486 17035425 853485209 930923756 949113753 651144741 665485144 803668650 921033140 717397679 896769940 80594936 350669013 865871511 892350665 950568588 984569876 390996777 485564960 807322234 950782793 749574752 916056618 749604099 998671816 208583627 391585550 479542120 799175667 556768259 721026211 647100777 762629652 326267413 993447182 292189436 955074043 627052971 713757078 783481548 974857877 910187909 938708494 117639447 624709721 348685706 632288962 836501900 960252700 164856179 746889970 383610585 675511072 351916655 988108396 303874368 892220290 617946708 831900948 686940804 823146840 608952488 872283083 227763293 917941353 108775676 992931714 541455759 817293840 240748986 604644753 258658009 437130051 741990530 813967432 809124726 868436175 625581645 954146107 149417855 822642662 464033677 537343644 261166722 442583460 259031770 779838999 57182611 878162136 232214267 700906740 574550076 961755026 968682862 992968532 822580128 963023865 193781825 347126717 763802392 851238216 769273773 995848715 419215291 465766377 37048053 592671744 769931854 931881645 812672334 998267647 500312715 808213092 376269068 506805009 197872445 639547793 190065829 786901709 598338647 636718338 885090563 966553398 848322476 956547515 297945965 363845713 754559900 996751218 564270451 618554677 648452541 982258834 139490438 785765822 966177973 992073233 571289134 598223338 283437469 617390034 181405467 416392890 230315119 729192368 166347746 843886025 398710438 523409864 661410565 812600386 380161164 409967506 2839800 539173340 847409159 881618148 490752446 673566974 811581541 927353015 592943675 890949137 24772491 907812587 603596539 862880397 107020295 620566847 842950933 908545941 197021267 499300221 448537089 986655164 438513000 623905728 418828974 825953909 107895471 568744449 34539634 424737895 859637916 929073037 432781736 877454748 45671993 433927322 196823974 685070600 940365127 971625438 444266243 614875113 104407286 804123640 308376756 691414622 290325746 900682382 119018474 830691132 657317502 792355595 379280100 714149101 987384754 994223685 717996726 887485859 638342740 649067083 445667549 795710308 14231694 872344552 788670083 844718043 47301662 751405049 756206077 845343405 332903865 688750155 838174067 947587504 732954224 808003046 955693132 997264160 786030036 939431902 365115223 523182425 199477535 820484708 136530974 350903985 515008290 655594135 619511688 869236499 170165704 503744564 801804473 985917976 960132132 987494654 709125132 872674434 65708460 651417499 483540107 574752335 637372148 754160216 454615333 610365766 667839121 961793754 259801727 955819923 128418930 618819277 68068812 596610401 906395721 991586064 45742332 845309105 859936495 863719276 312497729 609669125 877458467 918770471 346154130 384973387 701385121 905269334 934811676 967250510 902132701 941940730 56334571 464455868 169836859 410341668 274952239 771958034 595366295 607139205 168013362 932970848 799220980 984988748 687873068 735249871 328830644 677938618 997128440 999893013 886497149 972329836 718282954 752584730 469415046 743455723 132165920 133580697 161579852 837742334 497067874 995200928 875863867 924281357 208623031 374520609 932695579 957058134 118153618 647891406 826185994 995118982 382158764 645149299 975278998 981095367 513201162 798072797 922210347 942945949 99521373 957074554 477250074 714568596 873646134 948778418 914827776 989594250 861470420 977354611 309505946 528837023 289222352 486796069 270003402 521164783 503723118 732000893 846875265 933206009 263453924 950370159 514559967 891549361 214784801 239906975 347416473 955586259 803786774 845460832 856312791 940124326 830262572 868607526 163954499 883096406 165333714 860529434 36383447 149564560 86579286 531565254 583900812 591272083 845036521 997774828 137881694 788909107 519652955 964809670 724555255 950803765 570484303 977310417 790906204 957153927 589842449 703522944 144109847 419145834 762977185 870357517 281621243 733107966 259467930 717058664 651201915 899627697 751537715 896759087 322197891 566997473 750916529 807749209 762983363 834133690 890464931 954535062 464692297 636884539 251348884 554188273 407276908 812638517 139759099 590481756 316944883 437203795 636554209 860492995 784788687 871361940 245897778 968584587 102971899 794640113 568108279 788954258 918509951 921620936 555422023 864818869 807038341 959152398 905939510 988000603 660889105 662847841 879655744 919676443 984382362 991257921 682596151 903014235 373290684 744228554 155168265 191187145 114868661 291421064 345132687 773443961 545976566 722563482 637134362 698619699 626895854 652342278 544685344 827070563 296993086 838970677 879877445 920770492 202322264 859452304 768788168 831565671 783170254 828034731 180727697 966992124 581538368 949794015 702926055 772735661 820462869 969275123 501978434 595964456 467050311 529636159 570738196 952133248 691437517 730793901 570067841 819131903 383613696 554700782 142079648 983039672 161694934 759150049 273804604 671757531 360502113 908993723 770185480 820630099 142179436 671305523 277796053 657670436 388618614 888242182 147300634 465450238 81731646 605407017 479575479 624029305 123102399 149597545 779136089 822712349 88258505 567693556 661657247 686655309 326329331 436696127 872056113 895999774 974713398 985554497 387336113 931758254 281957977 470119117 576856340 708407006 772298371 950934217 315123993 440645694 643964819 662603018 477611349 504652619 606262262 762890320 556963221 921353651 637676252 861731548 984353956 990683644 273292334 909094793 204728609 267586902 665230526 939090832 335575733 883473215 590315986 917891998 546678796 626007376 646509310 988705713 932151749 934921913 551151092 835990005 15162311 957452579 36805231 358626555 690669135 996212360 845211732 952220444 522749830 871439459 715302027 776687159 501077795 848536752 564500318 738003361 89941888 279472584 659945821 828809739 607885853 703384836 204103713 646479551 108379600 152083314 901809306 993268339 404568598 980252760 781234973 985709930 437603293 806187628 887307301 950819272 280785320 870646566 364989155 694155701 438378817 537874668 331359348 353849885 168433221 852855118 301695628 684676187 8766172 609985275 385521044 727760158 693558221 993248417 505991996 600243829 843538608 973877319 274788644 729154711 355525909 795681949 455295928 664197059 324617321 926917661 387653399 446770751 277146106 907516724 290771371 739264112 228789353 949989862 730844273 761687913 827347726 836531407 979777026 987554025 164283829 529346306 580973324 952046229 693681464 986655887 483832989 890761215 353555695 776738690 750467176 774047129 537780276 745975139 721257827 788064977 179488007 629078155 511778971 800099813 94005884 682352436 709785629 751268941 983309687 994794899 127552236 614377996 589555510 971869247 404484850 541083469 618923375 882273785 955310287 999849435 618354777 740925268 468462991 911435902 328231817 350033633 5536219 540373274 26628366 346772462 147225565 248479459 704877528 820639856 387473465 468601426 783677905 936217604 778973353 904227013 459418451 630011743 698919502 969551499 465942346 784176420 357173341 421825680 730273425 735744040 117660968 471037977 239262076 332953738 719064221 774108698 207890498 247409038 265627671 439748890 23758691 57696301 766025945 959452362 127058809 956436706 352172454 827506534 851735347 908680165 712375075 876560075 598178742 807881549 183900642 322928056 895342697 896537883 672565531 720850679 191173833 731047733 942863544 990903869 872555773 944098092 149569519 663657664 313029257 604115527 667783392 955278633 118491012 757997698 997069909 997830425 977435372 992361998 648337575 665668169 653153220 805081974 59624574 319147906 353257134 887207756 28005530 669981452 928911585 994740685 775059717 832248773 988196006 995920292 388148823 725135156 562740218 997943060 629188766 907553603 961522700 967406510 243670181 847709350 770475696 932514143 909913274 995818956 596609787 963583480 33283478 522298426 182310585 307137362 296133037 666862624 310890577 343637010 389396752 574271189 613883245 724830424 753545923 925078704 722302579 758259919 839678214 868974050 491158668 810560460 865842056 964261650 396201275 717299061 467240088 538449106 173037515 820054790 11749488 703673663 334200354 587024817 611498889 998255817 790688658 807328763 158037706 845874926 432845583 581876008 754779657 812593375 592643346 675028778 61669993 205335184 543208039 653491065 474121043 661878071 636018368 719810090 626478661 644966383 873151649 914198517 5886709 171048114 702811696 976474091 866808491 939069353 531110635 936915412 976462334 998632882 227419433 852298143 287073911 919640769 391172645 963113266 521987039 598600120 671177771 992974679 797408566 864495957 958707398 995115456 968325828 972952478 828402078 902992048 718055787 746212397 274221297 530197137 373135493 431313545 972839825 994910872 879594232 992220767 903271820 956498602 657662159 743239672 567243412 848437835 975639708 991072937 994934462 996019564 469093587 904897896 505269333 512986940 758854709 807663670 364174501 449669403 959983588 987657730 969270413 969430249 778735413 932862664 716855591 884586772 968597059 979588132 397152427 778289602 442147239 709592826 516535592 760039270 975998829 991073677 974561761 998538984 317476825 864326406 454506831 825326457 490631450 808392041 703123594 708505842 89334825 797455039 30956012 537865778 126386457 805754902 554131956 582813902 286109643 490856642 546674719 834029279 502095245 677932418 822569810 849759688 528616878 561146238 535878899 885437669 784733641 786893992 715868062 955908221 923924844 942422361 412963790 581562155 675968594 872251832 315729995 627222378 467117511 566669785 850139560 881362752 239267358 356556427 887009005 888424316 773286525 819037440 195103399 772415906 101800753 219562484 946661308 990618083 801794700 956070164 620210306 971595956 978474995 983394997 826476976 939176246 869964383 980761702 177739588 849830445 9474573 81602162 720128427 985195897 629189725 914972487 276171585 925095041 143101121 589074687 723368028 843928342 936860112 998543636 35022192 469210446 568998359 887652803 157054923 638317612 997382200 999364753 455834648 555310431 114790679 592374603 768078879 848353171 161519142 959248946 225020876 397758169 88376003 375551763 144241751 283523389 572652203 853419006 669289936 919064401 61256732 907890352 823598721 835052943 668010733 941157589 63844654 829780830 762988617 989618084 665696066 872441421 54445363 538466777 461744205 925014437 805892103 811556004 179167096 339999567 882057313 951787977 609595751 620200642 461444695 862586542 595188412 967614875 996667295 996967751 808821759 841545313 748380830 832586495 271328529 790825504 58248643 248350697 783889837 901849518 706070624 844725552 950798802 971693975 340570023 459105566 686993328 911523764 236300850 415977601 593977013 701449134 789033626 804486341 740880389 907018990 178106269 448690319 742905126 839360910 230784361 692016013 472113122 559137112 947634268 996234097 977333008 984593587 534167048 875425475 375311583 880924604 217065467 765157224 134755619 711929234 877820236 933023307 193270304 924764495 439339119 517466070 177248255 462838272 846311386 958926247 585747413 727516534 444878493 727999121 353183235 669339836 403727196 550126603 366382364 536160975 56014242 437547328 712750339 964958393 994617830 995720789 341704778 491125993 459129768 809062841 577013770 684100344 558534914 713344983 918009355 976508905 210199417 616847795 552556231 753025364 128840165 705785986 231071235 961123342 358415263 392635616 310114030 746359175 165517303 864317092 353372547 484108654 874361067 892020977 736525358 758044059 961035095 988696857 214214437 248064342 110498640 675702376 105682689 276005200 479243092 816047940 653544962 999724742 179970626 964468884 519043021 663192082 401138397 877199521 525505003 672545308 914774724 997537444 83966876 673029036 507967151 617830147 586821988 587600447 520815835 835333331 293861931 461045051 486123109 526726123 364011330 672299921 33059467 427489303 442907093 504846514 773842169 941320360 425993329 827635481 852788896 860702877 908844952 954949582 857897537 978115870 545362487 547696518 622943111 719423748 751376627 852186238 821890989 959369824 37386972 219633515 552499579 929245891 857790870 930942815 250615070 634018057 934085392 985049291 141839737 594615884 240216125 611100574 122614602 360562408 944884743 996793734 174654887 536927727 393082741 667563242 34566725 112285496 660109962 877337433 881054422 962484096 525776856 943406009 359996994 928151475 373332474 752589354 303286501 964693606 882738563 955710141 501541274 534840820 942226465 943244565 31904149 96786839 731774823 950004953 944762601 981949958 15661049 23625506 754699608 910869173 789289401 875536104 986614728 999123336 164237469 671142473 3086213 744275606 428049412 525564833 737088980 954214419 378781127 678397939 393320 30548673 888136626 937651541 710020436 994861807 604491568 920570126 956856343 983224655 19752404 726862289 164169066 951819273 751917127 896072155 990652617 993561302 580293485 768519005 672106905 673761163 789540576 835108415 410195271 642333041 91844964 671403840 132608479 257052134 59439455 983571944 540238746 910621999 60040295 337993201 843127982 881732905 508858357 644977589 485992248 838099764 8674778 670229960 77637383 524440889 342147366 589348083 349118913 697067565 512892805 908548663 324916979 763538047 101383711 700216690 725319864 863923658 376129527 920194624 411447395 944716641 771180927 810874332 414644417 632319458 436927956 787867630 885218080 929268001 49868164 378716598 372438847 441650408 130244253 248109186 753253832 791763503 364340745 845321139 529825214 898324373 521851847 574448401 607104663 803001843 308822864 510361930 263112967 670741901 871662032 976941447 19948858 652969583 952189674 992285461 44691080 426470996 813558529 840225018 919020117 940262814 854760844 999756798 505634505 515353460 792977449 966323876 854307277 898904537 404514793 435012061 500139092 758792563 654148886 987000832 71219884 703111628 28120382 667803189 953139294 958532233 791559114 817493823 969064116 992267658 1169084 63910798 569875271 975822895 841829740 986168387 680477867 792625385 20956819 941030663 756250705 961582843 2318676 618790395 521565989 752683815 451103940 694542262 791395369 969572077 854366831 915132602 436785452 578512916 279936909 690183849 393986991 809961304 825840320 826519706 740894215 915667316 682323294 977818728 558115958 866561800 513790174 841133410 50122323 378914286 873568891 933290388 171665371 814584437 597021642 832179818 217458947 458420163 956772019 994531511 11259655 919854610 175225314 754885102 463178804 591499131 127003133 559470948 127257582 428590967 943972848 980651611 937287231 955311822 620927643 716523828 167040927 904876191 604174316 988384434 117571862 352906000 720177845 840749791 767874904 783656372 362242747 852879919 485730729 997261921 427262796 884317813 591854228 674692882 708311453 779780710 821325540 895104196 873933181 907195768 52195032 146356234 261619329 595459937 441352722 569916812 887129015 932437818 628908227 878666245 543661885 851932533 731686928 908220645 693263210 920907028 453097070 882921570 85103851 546007895 386773334 410165907 475783104 870059791 20237647 203174337 226596928 708508238 419875114 467390588 217445618 945192483 147468285 947857061 326813379 525137928 804966782 836125799 801183016 932587483 83698470 447376181 548386461 937862612 122275717 888065114 157110212 340312255 58755504 384862556 606990064 763748941 246828016 525288197 44830225 588391646 340832760 779204543 216821899 722417021 886593047 986761688 336688739 519250994 576692445 940158193 224597473 452627041 487506179 854099175 459842280 516832830 954395570 997286121 869423674 943102904 593087276 748202315 823493792 827405338 323507655 967395961 449379225 984781787 616249952 966956896 723473722 942843150 685587009 715238947 988746427 992431176 34789800 970822412 968357620 969601993 122732175 315960212 890919297 912615133 623567987 974290481 899703263 959961469 906018556 932650387 402114039 415687166 577016682 996005028 234722933 552361958 235581312 669539013 724381380 750267223 838248655 838993994 340456508 770832843 138063803 158948249 698906418 830058517 988585811 995445350 753457388 979042980 282078440 736140205 333682960 764991234 441096637 533395371 611559344 859741811 841113684 910576277 720785522 940123041 264895478 603963626 40698056 729699271 890715107 962765410 116617686 761150591 144060376 913529269 873659070 898945750 320507603 890015757 429965573 874745842 493959669 859633813 959086258 989728853 319045416 630867681 140783565 637041416 552351225 664219716 5383569 706907637 977272978 979546009 554916134 719218127 728813561 869102500 285417783 694028004 52317906 764586096 545928667 855233935 949880924 988375757 507117168 639575232 182803877 843251246 161285379 821341514 923583087 940391342 244440630 500268476 511413798 731532270 284957919 846557772 354631076 414612754 608135976 845068165 669543134 871431377 685631330 934431367 603212376 671687825 497496667 616493487 900264413 979161687 832182727 926565867 806953392 882545756 96812251 560160165 246616532 747745963 646344004 855023439 284060745 662794853 351986239 455863429 706471547 983443059 375902247 526187007 854677689 857995701 325057080 989334853 598165030 949864236 641879637 681960959 305410222 416530691 171409516 654030380 758099600 928219893 662659984 958061616 689503716 774770796 9885255 449539629 147280025 558294210 482940560 522489447 756945163 853687028 222578002 924304320 68376566 995025387 595716831 757675867 154062716 479631378 826520900 894075146 830094380 960627387 210548953 517554309 692715363 984012363 411287570 965796251 129973232 978153070 277271976 964035628 17738532 658178478 5498797 6686200 857216374 877647023 193464228 325625639 371669258 979964425 971738132 981348690 47536896 956098432 688714842 734127666 233124884 589980136 703204420 710655244 984167100 993441493 156496872 210835142 834052657 912221653 747549995 972842228 878673877 977827603 984523409 998826270 721319891 956131073 4569709 623261574 491058328 609729446 26727356 917750016 579515483 718543983 107463941 679325005 274754560 304433135 90645639 580697405 377400880 442150519 552121672 772145066 545040450 918599715 239232496 513875291 359137219 746224089 914713042 959057145 663272933 884347669 168092323 175329658 268972083 512281348 399444528 865499948 504648930 934330981 670193698 810392030 169608510 401788491 28390690 916661179 803569992 836233308 522948661 807173301 221787515 990761736 718673988 893075279 602348066 993262209 588946439 841879615 499313553 784997342 15687294 890566258 779343883 918726044 420992283 633084489 773214014 805579098 928084711 957993076 488927791 569399779 88936295 545835232 719601323 978406633 560101918 696586858 716041710 870464841 498273103 680153974 89607886 275917707 735882894 875117931 159892628 248035095 583130921 662715509 337657389 781270921 249651625 451072904 636328203 718236102 476243816 835586802 928101922 979039228 448358668 590016998 13739755 515364287 959346318 969412481 15128086 875455657 975124732 975647264 297197065 658548355 549312823 978547793 763203647 974329431 684528372 914345538 461974068 631057893 269850021 840818785 431571644 560549408 951059735 996001846 23278028 862494548 861841352 974115505 314861662 778756251 64534030 734557314 292887108 459158311 901394882 956190514 712523608 715862955 957936713 969359199 679602699 882203748 322291967 755950958 626938647 950989263 575688663 730215733 957244654 963234855 876131703 992766531 306111695 999608164 512743967 980297058 137032056 392972552 396903070 686728665 751477207 828904100 710838113 724737954 390705762 740322511 911333940 951333560 879379496 897545372 301002799 303736478 270542481 412148846 303735764 576787634 521398129 661628497 783213943 858930371 636899139 760821858 372756613 767401114 4090167 302851510 456535096 730525388 356944216 416647709 629114428 843957093 139960593 155711752 785045270 820905689 735258721 837945497 328688038 918645215 666328338 753050899 276120627 428288749 112375874 251973653 159307574 553794784 252512071 516323109 8102736 517866018 409142315 479978188 236737769 961070231 589512605 607117188 933519017 954554887 906603180 920301069 634411621 966773423 117316779 496318305 380240914 574824082 909882823 954231642 704430053 812213965 298730137 308041638 789021767 801519334 930649127 939482864 638520384 946165532 503195885 939993790 547589855 663406901 512224302 957144541 930210012 942612238 993959733 997910271 837033874 919651143 419333082 714846230 277285545 561922231 997054608 997200784 920541987 949553629 690085591 925803784 609828155 804849539 252888454 376055661 442267215 909051974 880989884 984771559 1574292 868066648 160133941 523536978 692838730 947832723 315686770 552569219 373593862 768448742 138128858 327659836 106085105 994624667 891261038 996542312 694096045 714248559 227540259 235005164 330830815 777776111 500885145 949277696 342033369 942627126 216966900 469314946 801068375 965932148 26843903 404319399 246357885 638816877 34270643 788795611 150844363 204018116 352962349 400756262 812366598 989299987 476995187 525339565 709886883 801414227 570552325 943672183 644382994 877388842 97404827 631674720 190957042 370770206 786259220 806491236 737827962 960601761 540308569 937216093 778827143 862060219 46414622 625106722 221406501 585721700 217290264 384614896 64379110 213176419 768485780 964905554 908881315 959486254 447895526 587414293 989742944 998947151 380040764 861320890 392206553 482259395 945327510 958112720 308941088 320511798 848686319 977350772 117967696 687599899 646063687 998248694 357679272 656170210 757383774 765201663 999338418 999809599 215338792 934921146 175163851 833537340 377286275 886443807 562804558 699026903 311126985 939868765 321161333 613037745 213759798 286354116 993665991 996268888 92067416 177330011 231191761 529428305 908188755 917763677 308207409 495657975 667188631 740898077 740525332 793610728 11669210 934803353 990367008 991738576 65065043 427720973 468982827 510336534 726992241 760004674 401266418 950430321 538375582 679672414 676633971 704059140 491750149 946672534 876354214 970061394 510144245 789184502 889019376 978125267 204540488 356006759 939000359 967281089 63306452 97383462 614039538 931665335 473648999 740389166 984304866 994781800 213855616 780498973 198782634 240430797 667711086 908268296 900569179 911317533 28930704 305904561 199328883 286860625 259583164 906166921 311052237 589723066 685594098 994595185 705984459 720381223 277143702 609788427 405515217 845205035 5784943 772181365 128653566 424050643 480314022 680488924 35859007 193730468 845509448 962755627 854691815 892426730 890559083 960731999 754121459 796095328 626682219 677499518 630165904 854545355 27310965 617823899 421702491 698233893 513424536 695673372 831922439 946539099 25092175 461781687 287585535 358210172 961000536 975541867 694044994 900495031 41299895 742610383 111294886 597773939 705680798 712629009 371164231 820752774 242778260 464529876 880339565 890252983 209391743 622846304 767863452 984562355 592258459 746968152 365159997 845140552 736533970 899034448 780227621 815712448 791128397 898087239 242355242 885643507 696650100 848991658 81636446 648135593 718054815 875011668 706001060 842030989 662425950 961826198 366771351 848173742 825821245 912758854 219476104 984436472 795655470 857559509 46250115 871692946 662128601 786627104 138710964 401644863 276995449 499239471 442649305 752257413 351319439 409563031 250222365 436194826 490037015 814618766 74502259 223224902 430401380 917563529 756380489 851001612 852627597 907587801 399528257 454975554 217141504 343481721 551872773 967323593 152081360 341422294 686172037 792222023 718026662 765620156 872364794 884150238 758351435 971541854 178038930 762145987 565401499 602027719 566944497 674574934 123161768 770742383 185359125 193350289 381080604 946716885 357173861 384937576 988822011 993203111 506076622 668119256 62954009 369703535 710607356 968578354 496293013 842239394 865538246 874877759 201737857 868198491 960240608 976139471 823589287 847162806 830596731 882852190 772915718 867976912 27159167 648771333 866288436 869456425 83319037 500303804 790246253 929603416 132780986 375798310 497198427 901477668 279392245 779779954 871588425 974198161 207242342 548824203 267412501 561818828 905027252 944144289 300596270 393012517 979268634 993083642 910963838 917280365 28128660 456692528 908743741 954052076 672071278 818547387 146986731 630276006 60849254 88110356 383933081 496943665 365018943 838972103 223401737 797036797 737414563 810107270 769008511 941022678 209090424 610506040 619555097 686084702 422930625 654070177 79015761 113130306 793269848 803967267 682359893 692104477 957431540 985337216 97323636 636967331 3298139 273697999 858763461 874379717 90821579 664256020 366811793 895474110 570851056 873812289 314626342 549078524 738209935 856998979 562486023 688228861 93518160 395164317 828841899 844470742 149630640 355607558 724470808 820390333 694668162 908461193 793335997 844354977 426550202 883544602 443646006 527605390 447054037 552592177 550681507 908437204 177533622 836473736 982979934 983599026 370414241 432732279 277020694 872168217 146669122 941623449 992330749 995765628 691162365 937509345 853104992 932685087 10423703 891317646 940905953 941052746 347428393 471182154 629229848 985570216 194309851 872904246 376307531 494005115 560900719 761264135 435155092 841975398 331676816 583378465 460545407 526792386 532308681 585157970 239588725 735989453 617391158 680897389 817944746 984615034 762138565 778680815 880705175 920206419 481614628 585344960 633967339 853849321 374867133 488468115 904762351 982553948 961140145 995213236 770872275 795822492 945617742 989844053 229962595 406184610 180149448 519172808 39797479 351469091 894807519 977912926 790781116 811288035 690005506 816650162 182528250 750308973 727555994 838034161 792058382 900193882 644972251 831025015 128093564 599171253 535910571 556655126 2094079 930888363 510869326 773149772 820339344 864435929 934847724 978696659 46741858 467121348 60095638 518248360 446440606 948152309 283947477 869889424 381178215 666361898 182905620 578768402 990991900 993134107 170430445 563454225 959000670 980294236 248281089 376461659 831017981 952564413 13656368 447012906 880020880 946664250 805248542 942031781 595160474 781696452 128729826 870622387 784354935 866377788 698668909 831856063 507110205 897803008 977422399 989009942 23568351 771401644 463346118 830474224 50336258 161533945 471423686 906404081 172471741 495245049 949723459 954289843 922971606 929624395 95138900 947225466 721730269 948384297 608467058 784607126 488423804 928837639 488631381 571362057 894309572 928860210 347158082 404893406 590465765 869142471 169854073 364600729 588818081 960222399 190268172 210161868 765633630 869702220 126846354 935341413 401965276 594242401 563180260 975977456 314960672 832078903 189305976 719687839 684689040 891467508 495322988 775140534 972016650 992379162 896101618 959890337 763838648 804649649 325867207 477145924 555372204 714098611 154976503 672456274 23490486 146133196 748194294 773838767 904158372 908265847 803188171 889507703 183430361 752174769 957832061 958391784 17720065 152525734 766581075 896710085 521187667 760288133 72044157 351496308 901339118 964807254 349002486 731503436 237797371 383467121 448921569 633561705 881912507 996082500 800925154 875328042 742782846 836523882 246253207 336017652 648966529 801665439 865416400 972799907 616466856 634305187 496439517 651566070 428432638 903154074 980379674 991898715 557453166 601006296 156817615 923974236 174970665 899366717 391808734 634888924 601912278 986963533 178666443 603843601 433284012 522603196 160199692 992904436 36003101 928301462 326119829 424185964 83333416 161563406 338998923 510497280 527084329 933413321 154981363 762208665 593625642 635616371 149305883 637607042 302004707 517178519 261055080 368088046 478552985 701324303 809164224 972997727 545144426 753063052 277008772 937258040 687078981 845685707 194650422 305987279 527998686 939435634 697470400 753959551 71418357 462649726 558672111 822464799 795245262 957084140 145302650 582238357 195485356 932144253 692947669 852931288 704788307 956697862 732237908 836852268 96261677 750517534 288860893 401362983 12126430 887267742 956358157 982059702 952030822 981678678 643331643 826668673 325977792 957875576 13656261 521967751 200248175 858190374 105061061 833264361 717098817 999801603 320412217 499942832 171938648 590370760 231538566 523925955 174702018 573727170 790629909 906483405 584621212 662422909 591421192 925710136 715036566 862497520 566368556 745058783 585855076 858595829 737283957 863082139 560726263 989833338 155561634 592852331 936406177 984989459 872242866 874410462 727851546 992326026 299727509 815247209 354968181 648282698 910050952 974644342 346993568 889561420 926225781 997006370 54388286 806969666 852073391 897526707 626704539 903213013 89244543 831412704 116488452 995275537 157116566 407412164 235601805 951490110 737932837 790663889 178677028 325791146 53901240 148869247 631185821 738561822 123760330 714649170 484796301 809557939 608922987 653443719 928353273 955585657 173285309 368182714 200177127 648035367 693062668 718740563 743488639 896683120 166023060 870332752 807630317 852839387 499466403 973248126 702305781 859095516 712064366 862449936 261486459 511373544 494496288 499752281 538629488 918619949 804811986 857461671 445292377 460439783 329168735 982357056 823939607 986610246 657908062 917279755 401581008 511916706 535991561 753282332 945983413 993057809 771010138 854545723 353980115 877493397 911001989 964175096 95687560 632707196 973797101 983910701 564423723 918353830 826197414 952638574 335232772 397265996 906463574 991215127 57089191 825895499 841941972 911791490 232869585 543713699 559825174 689236883 964673387 983164809 719744326 796620108 933907437 935212422 134760238 544266153 801716656 958338136 126154752 896379360 138388915 764174547 846114235 909649545 636459563 962371972 301952328 929794694 77177033 81990922 94476664 905736989 594774049 754753339 391069895 771438275 642939276 932756748 730827323 731523424 186163173 807838021 939840799 991422336 518965576 955194435 745711824 931410380 10423355 599795562 734968616 877991403 972280436 991583189 648307764 949879857 838882974 937661802 297824851 836338952 624231559 952679790 62108471 299996789 349080922 701876125 46793910 699733679 809684170 831333624 354102202 449932692 836089985 930098677 445895765 466521299 586470908 975177941 714864189 787734147 763775558 915070743 383226010 669099162 181375201 933576494 978484767 983194926 570124675 836124875 492400066 992638479 421087159 650601745 448544121 491996204 833239264 875625820 783004834 876139734 869062475 884747882 885199135 914847232 178543266 285330619 367236782 950741727 26127407 619695388 992043190 999080362 925897440 926490655 525599520 781752078 141728653 769407122 543623000 725322869 13721259 199753286 82925636 807660233 288797126 332502512 175496353 832136796 657666415 662909878 690703171 933954274 294438415 342183436 697294704 710274642 204764255 966131500 650607457 810219326 675928942 879265354 766725173 985640600 706880445 895486012 596211191 889731193 815895947 956525381 840171111 953513415 935831411 970314055 522288989 726577273 628521330 858517257 763073516 797995951 536977915 727768224 522305791 664003441 917006410 970540303 140728310 721486030 619873549 699026476 828057703 841108458 358659461 557187850 944367709 995745201 62353151 83440280 365146679 934216388 75151019 906318841 357753101 743502111 994114928 997708009 687127151 726686588 291881155 590438060 434083903 955180209 717492967 841157884 549313299 860157058 30114964 185123488 749268929 970968844 429494979 466068609 405552347 950357443 81096514 841174068 119901591 827412309 930544279 973726223 633948908 915476847 384824550 980580636 713254717 967919849 385929524 536075251 455065269 606207424 998238894 999953713 403269267 502834352 888330670 923609973 818487192 866955937 31377999 221720587 602037328 895133983 833769085 999766369 756681049 814186346 248223369 455169791 588170254 936692637 591835125 913294640 188068431 671031053 172235670 507063696 781531625 898336510 97173880 567970689 60858260 95513642 276009496 784017250 314908937 793166001 891435458 972358968 856950548 946658139 936875390 948903202 54993383 220670269 862987125 968241386 773733916 901436330 45093191 709712839 843600622 896257377 258465761 869378394 820750508 886740812 401913609 885637159 729336178 983663161 206099580 476488946 69391170 129256125 912153298 958560506 844285482 886779969 653363075 943662020 17812358 529426608 759799170 784248500 458356184 917686825 920009154 963698169 485222470 703564074 171162099 538758924 302693974 977804789 817763024 835888256 98369437 347371027 472186312 682581913 524872181 588568492 105896739 359357421 78175640 112430544 489395549 740147808 128774652 555979601 979705009 988759086 346463292 990058903 807308483 841613476 842476842 854757810 43609128 519607632 870875394 961042099 318996515 337532110 485472827 888351459 232347118 700577897 32312735 156166249 999959941 999983418 437786406 499740301 967994920 978599260 897575228 943964885 13559724 446274653 907260434 919321371 351485306 604461953 469849143 939841416 564109802 923966337 761753563 882468485 439038996 604722711 713717078 967699664 474050573 853191667 707920523 868243536 563567347 645220997 687660261 774558317 578204313 727829233 940619964 968572973 836134211 995011090 725636143 808724218 414052209 861932524 950311114 974351510 143119676 401895441 329943848 461642428 120565805 339132363 855402319 883554058 868617706 885405038 749586919 797693418 787979882 794258445 707993974 860028582 591121850 944932034 911241204 970042461 702007473 758293343 584950928 893227231 922858839 958072784 83907716 429654252 781862649 851892263 15233796 317392630 36654928 467804726 794266830 868884211 272791859 869035367 682234188 763319624 205703442 459802696 829939559 967166478 701088733 976445319 604447501 735410902 743379717 888313966 530711607 574005796 195292022 849473370 781940153 842446773 28406507 245628229 397055311 814869365 576433463 965506150 428977951 744857423 22895156 728289766 731179909 807288455 878094450 999138796 753834080 991673165 106866228 329615552 308807002 810953617 113907439 169762207 738421825 993889958 113691943 288308796 406547187 706069218 155799795 981187359 630333989 745056582 145892837 544497889 572989206 803250538 778194965 875460050 56818629 571907203 602497533 711606613 153489806 544491472 212092396 440680539 336545673 546242515 823353715 998445680 52440564 258102240 104310417 111428765 465957411 667595933 910581559 992988514 939016613 991117636 641669144 805801021 478543933 565905804 577691301 735106795 132702577 223294837 425584960 861320304 778438452 944493421 456199755 729256411 436435670 705439342 951693711 993691065 674240619 870446042 494697682 692313023 296528926 958781849 353392768 563206268 448045167 487943093 85531367 979373928 573813225 798610748 904022642 956271206 605986378 650803655 59319077 515143973 108670184 433119047 168692314 455735695 760136434 926637119 52555556 278685996 122600156 681092949 267038825 548560401 214399211 682361303 792317705 859446858 919093393 973349996 753925407 826198907 666389559 685027669 503286827 902926036 634331093 713358651 729814710 793948518 942592681 949011212 369745315 623051107 441862225 518302394 710224882 736218825 802708270 962854161 2366333 939511635 697391932 929676144 71076158 826459117 53680193 616388840 599503680 811964937 447863223 572203662 946977934 990868084 514557561 595183748 844831842 845743339 882931497 998407559 788896490 801917146 47502051 417284619 686481226 972626460 293959659 693523308 152630410 898790393 496650816 604327542 359167018 544976603 54575780 313642874 360598065 580358673 941947473 951430694 136483252 260601266 112577098 670633787 462062027 951358536 607165337 757789739 305807157 569785123 940449796 982186032 588292273 595919550 308698213 817495227 607400509 805137479 670715472 955441350 636992531 835218684 314262805 625082607 932651431 997032302 859361318 986617411 179511998 276598438 319841050 595655545 647468692 801710583 613419997 930253023 382603488 927520210 131306563 361594827 246332527 285574504 627244308 810373408 155846404 682313012 840989543 987982632 620813988 959441604 61200346 595634263 436685449 648712465 803446115 827534630 478372988 487022768 106190283 491418619 656829914 868445202 226932321 493556637 428706760 734329027 555199608 566322414 774581362 914665632 361888450 783358066 501176880 605612681 124863267 488177526 247637443 341147358 435477752 588585806 847386081 974005035 653385761 966920200 971806297 989615298 89211633 803676261 503803388 527838038 264045189 534178745 155097557 195332213 838609870 956366718 33173911 976050430 119678989 788262086 725373632 873167254 389652625 849479386 914117473 959622448 86949000 978307254 208206416 259052309 608338598 877060475 566509900 944053389 166279036 892026680 113844566 286475381 957150494 996970351 684858160 793974896 787436809 815758960 12931143 557809321 724935132 805769392 849398013 926085745 263850687 371181052 609587116 654422873 332322277 682173838 550173841 647830926 480377891 834013069 675823004 876620623 195587991 424822629 12150953 317981642 507680830 812487180 143252830 677355619 942681214 953079362 878716823 985809366 75505215 824883750 354380450 961187207 658531909 786348263 877799756 996193307 192190260 408122231 479127129 941448915 65940894 678293144 773181500 825643886 875085622 889807614 315600865 826047649 73212331 936046716 462477622 649860533 75252974 373362646 871634014 972056734 455894190 951388280 769531600 813422461 820057926 856256980 901038046 901048155 505359271 522472892 722320154 817248159 797455151 830868458 98066259 845986946 402635056 718008729 499684706 506649187 795515791 989019785 875969484 926702766 543309883 739478603 627639537 758980687 461317044 540661091 133149576 618505038 852569605 910824419 159713627 963557147 345415255 728094727 940857333 962674108 389867373 516399508 65485347 811124560 95243307 775412068 848711713 852701700 278065702 705181589 279850468 538252755 515855834 590033675 448854535 716412512 18213623 289687078 935970706 949718221 908897829 953521685 691607194 913420757 459166759 936341339 841778212 849119261 687109316 884340007 973978915 978631377 905624039 941077202 108989223 329135953 183196286 961183586 617335249 991211720 596746958 851681920 420089208 690529009 608855050 753681785 855567725 953810241 510274088 556331095 977316126 992598260 150038902 371077889 694987809 796522571 319835760 949271793 62612140 105758824 732816590 840445315 792382336 814023213 88309424 637020599 894058800 978883414 253526669 962356461 786120271 990080252 124510578 235836160 533986719 925912635 516575332 737535268 10414057 530907010 515367548 545718692 578990803 603679224 239963422 861016913 620429891 719248380 58567114 190409370 603347111 765762242 368049211 742456109 441215652 668981704 965653121 968457873 108439607 497970858 858917966 917560857 188655944 861822589 393742083 907158635 146496523 158343001 629612046 946306071 398204235 913203717 749798642 801045502 10247111 589602238 105081230 740591956 978649495 999021407 162591957 473454610 998369831 999321400 580439230 654508116 440375494 991419401 256593461 936192996 634191345 671623479 219183039 465850440 502965792 700192846 950585962 975409182 700204100 906803600 547329344 826033588 978760358 994176703 926790411 938870070 997921819 999822543 576084272 642398683 379956841 446541755 1443166 530700343 384824855 408606478 861532532 952586924 327102410 540206981 658346595 699766303 32775442 587011786 56040327 736300533 327108439 759928301 445075236 798187707 721865206 907551440 887147469 924916752 277320237 705918609 742630322 911675843 565619315 837525133 509831438 833016675 538794738 881947818 133916702 734427664 289023374 527246924 781247707 979041520 255812826 527448756 399561645 405739207 409698989 611676864 883747100 934512968 124228078 791509598 737502548 988811148 237965846 676402265 670808819 818623590 378407170 458328401 573225637 672337949 163963570 637428915 192448343 588116669 275580355 661850807 244044352 824973385 667391024 792650253 606535527 610605129 477614368 727632811 693702608 827602224 361327604 567182021 67994670 653256535 960489412 970202484 29049230 887710452 324007738 356190116 378518274 819201548 307076160 596407192 117853833 818579872 135797664 698919958 87394066 952246951 927193146 968043453 913288215 988237602 16528281 197914184 532031818 810650248 839950852 907347487 722865153 904116059 46152091 458060598 56552794 152172968 406011644 695144225 847874123 989938283 800217545 970608255 888514858 917693349 53873994 339913472 315585397 574307030 104991076 635073847 763951804 830029303 895209891 914095862 324276087 986226589 295239558 595499375 401452399 795327193 297582889 581394804 362091522 676642738 391529668 855078216 168232734 673823646 801241698 839712719 382985440 810354749 486756697 673976256 252149664 644225741 518590910 692918968 314854511 355804734 29949341 892717476 383360935 752030057 440559834 797017108 93642842 418542552 458383803 998050663 707500230 893282281 148494833 836373569 437116881 617934978 692368746 718728531 831061009 922545075 170404612 538543767 631002836 771050932 322802598 524061745 863953910 881097475 568132332 940898282 933947319 994939009 683463227 689314831 352066844 826025199 769590873 805993300 445617688 738138368 459115866 727926279 778925489 969508154 724121230 867371798 494797416 714119693 455440103 529820545 477202051 725772638 106688073 435428120 443961511 560267486 640470260 962843334 342328120 741504631 594182697 979245037 385947910 710860420 511068432 532249976 413290073 926623118 358627632 462140723 441447953 442428901 199216733 982453188 216359308 879216062 470495017 705892053 68397187 817276803 474833907 671845556 401242226 966902312 385267030 558706403 323234870 948782753 517621787 526114035 657368238 762987449 218249231 402960194 866622466 919198179 370484929 543075068 530452485 549989147 742490769 883091905 94157928 155308541 135345311 751637319 581129144 979376007 794988618 992650224 925883390 958432486 507226161 872510409 160738278 755944253 268302324 539559044 40062352 935636471 469483569 772560415 994364498 995084185 231500973 752033406 883810735 961760945 484595619 600141127 373254090 978417797 880971744 897741416 622867214 923729185 3054318 926031244 394701358 695484569 387314088 390736304 508805406 660605218 61412401 218992281 716616046 793988671 200987646 506210908 1203806 119865192 195409979 360402398 785600975 936413828 675019660 935966632 422752398 894668823 703618931 893007149 521238627 733693379 303130545 767826075 225431394 931285859 709311088 963351306 154870524 375457947 967369641 981759435 222357251 301348060 60471530 334445158 229864201 594182042 62500986 71775595 57157026 363808689 34095529 786522790 213106670 622933360 693951654 851760511 958372102 974901868 711846307 901324200 211982834 690984818 571642807 812882329 445949532 694415124 872505123 968119502 230815554 961141753 101639191 738559339 497220165 976518382 309510713 504249798 668892390 931499587 18719434 837961686 909690569 924365930 442967420 879533342 329934604 849346216 947786621 957902152 632874610 957267348 993338030 993358966 314953742 405999037 588706697 644188835 391124815 673196575 968371883 979626937 216879649 541737075 140555860 432901255 655111258 720063497 601597948 705080607 196306693 235309061 213366756 787397970 668877614 781235249 49915043 998941390 698387610 933154715 479436618 904807169 834309272 956201127 12791536 837226422 76260189 856947953 986795534 994896220 763983800 791163043 237025020 661917007 381081002 458159572 241227400 779321482 625682634 767771117 865260997 987066353 23729689 514785947 327308878 754726460 669629767 832856021 208105866 482228199 851868341 911181126 181743626 373248947 590656553 697849755 387025508 448831414 139252792 313230071 623404747 900734534 646898822 684936089 614852040 826334522 920848938 929863588 318039620 898877956 318830752 717900708 812670149 822465511 932699300 980509898 15963939 981900357 285555643 335391201 279696258 950668903 491582078 661371627 536119448 731179125 940138388 948804684 7430293 918400552 704343733 943652517 151219184 916697083 89693373 258813548 620422274 670443290 946646497 973577440 219635891 620738482 347428113 719177217 437036053 610980992 552047076 747113100 555524503 698200533 329512920 904550853 18743823 149348848 960627281 992997379 292115806 638617496 732604221 942258331 985175401 992278613 162151256 255431976 550313227 756014923 817274615 873923406 245418941 859430090 251231478 532151269 265162674 634827843 554536164 857706397 704046603 970829554 392852266 919903627 284323684 671618355 989516637 996051158 264700706 976452403 322737694 967812048 718605433 923922502 370052896 691559097 118570415 533324615 831478205 910187864 11046135 435350861 534683037 545918803 953388803 998597829 844564097 976039150 144124054 988339099 67063857 546409783 441714994 842465830 441652453 456782016 381623448 755508732 892124471 900858188 619565887 760368709 137827605 669678841 62240072 659627373 200731436 890272370 310117468 708053433 613231754 667439665 316760504 444205366 998961121 999419192 120283048 738327993 824818339 975922699 832210687 959439298 34940969 231308508 360346659 401138761 329018873 677625052 204978819 906138792 141729291 806963914 303981521 541846230 428387827 997466945 373134074 779277871 32747830 812064042 211236846 325239383 175250438 606351662 746420579 774362491 871934060 940645545 934280327 950746600 922809783 935680228 498153533 587916990 197884699 948157550 299610861 346161031 992739172 999717778 691948893 712483811 864940073 975515623 220405319 870868536 92417887 99815737 364437413 528219170 446423742 900169386 393580883 913099965 112621951 193675138 941727252 997873243 222221512 494531286 364328216 761551157 568552144 983269913 955407129 956259201 245016267 627212314 933315404 971242032 246181406 751532933 425602236 871972408 474621492 682124413 322509546 431358373 249321775 872673116 446967032 895344303 274908235 660597755 778873694 895741299 950801862 958420506 877637552 897787285 319108458 451327379 951141178 990588499 810663 401858040 410217511 593465423 465983463 603340033 606713642 909706868 647412059 875648843 268130814 735820058 807610738 984761980 370734576 437106280 688388747 906775960 364442517 983034713 979379807 982224512 931095427 943468745 732917633 936089473 842056670 859175012 604789150 848145919 194721020 991131240 926380197 964196711 967839653 998080818 911977991 937375586 512218662 887995809 30111133 515867320 7844133 863975808 327954060 629349638 588619430 808298125 526619633 931044906 897949548 916264676 681670448 765648346 879336496 910195707 254188738 579959932 916290593 979934087 840294712 900936770 13211988 965694528 254156396 582517525 691021870 693156951 877174788 962115629 773585688 943939754 36035033 389849976 610906763 939266795 324029517 498491819 115707599 814227584 471175803 833010683 146321493 996990382 198887865 304428585 583798878 914905982 469039414 502977739 301139078 488464794 951129907 970424214 767386802 994429148 101756015 266180066 3832236 204062993 435823779 644122651 191975832 775479199 821783301 868295177 2031983 896174381 703775869 751031002 386432441 965609611 810629081 831028484 598824229 853315562 553549832 651651398 456704923 491399667 656396366 996137448 478101337 729725964 419642247 486353678 326861890 707725354 386515389 652847780 849132944 936875830 23103940 333763819 283773308 759255506 296513334 707581283 647644161 740415374 533526890 930701014 337270587 946221571 248776814 357901494 379401600 994133376 356848934 412258373 847042433 964187020 790569 726366600 226881874 990619360 464611012 760385921 113502581 644178255 649818162 652941134 936031796 944422134 568999940 580030055 563907860 865131606 583139154 784248104 906966663 983559416 202469193 914964823 434140630 824834149 859607865 995251885 765374563 915009680 663449099 739722215 586535262 790617221 647815703 950701029 743914084 757598266 386421693 906095063 803052385 868190527 603899218 685262461 366528793 606505937 960657830 985295430 563061456 641571519 380072166 871800366 741690176 922001368 345831996 651701717 468317102 731137355 59998988 407251608 554231803 571011298 649016303 815690101 155192856 597020922 880548157 969509676 777749933 848928736 774122507 778029072 852431925 866763286 915593052 958779296 204068103 214827546 101950912 758163443 742028885 768140180 744819004 961856200 105872971 750756084 255625393 977259401 548269785 747480431 197499008 775561360 605716909 611716132 906115331 952051266 602479394 934687168 997619849 999763109 675053564 804538580 481076419 863641428 138696026 543311491 681139818 983973856 653415990 818470573 710928733 880560761 229673408 506314653 81175624 143970732 356849504 489515303 694617740 738293221 108154725 211112165 325629633 814202365 652944330 905511724 634956892 923900711 602550006 947778734 943106639 960159072 234999745 923146746 489659115 646265609 14041374 885201517 88923406 333461606 784808006 967749582 157131850 923225858 234877438 394090207 86253115 232071236 883598917 900731431 939041229 946388970 986054139 989048059 59878698 910744153 229386369 419562934 277096967 395946431 729949894 898830884 351700087 966810506 887058474 955885969 80010447 751386091 384260975 551736451 807637833 807757375 66415699 984890596 218915923 920100428 289417567 596065441 286074849 689651166 807509694 959293138 858150539 951249987 376066592 698277171 768131825 931707208 57741841 312138439 2030058 239596739 934371893 970404090 848554047 956787959 940761052 958786558 952702728 955548135 388339252 943220698 517859828 582664590 872608837 997238128 341946712 375903988 719369007 935877211 638504000 856997581 911967900 944486255 729770641 811956583 982667380 985986962 301436378 698993357 540396924 752905732 850194828 925732959 378417741 607113643 422460678 766916082 761929967 767869833 104579934 341935277 21486710 228056334 978613901 983119625 658192269 889677136 804610995 896921087 793717696 992880371 729117839 891843955 515463379 678571069 952578465 990106284 812771565 925237728 303765570 519227377 272769869 761017094 278863440 524831315 652666877 740529757 238534270 761350213 278007571 640179883 187753490 887055625 646028767 772805049 285627480 473090980 94555026 978712836 833294925 886967744 281500968 836148399 896847030 981324363 484809115 836537971 268435324 629738901 345721395 837938902 937861667 976241745 186624954 218581095 948030896 977451494 550797329 920889613 390426014 750012835 71247966 734474123 559928635 806539489 634640666 677299218 769511290 793098073 8314417 258722244 546607637 980929939 609186048 864854180 797020079 811098132 992657296 996699768 611876989 619158852 289562652 804463464 362108223 981541245 370520931 453820090 452700130 644550108 733694896 984280566 906986931 938868366 918412271 943961594 86919864 910535719 41478922 91076516 933238099 964255510 780836359 943194570 164404112 171211981 447599368 532519682 915321587 982212227 787434284 794805346 869129924 924545941 911849737 974743072 213124795 959870195 686137263 784034878 435040844 900759114 497358828 587411722 864550688 991740083 244378597 547914806 755318554 769845406 852087581 939580707 236061263 889346321 720146442 757150005 164953914 344923137 2768783 693351331 856512814 960131388 326526518 866655312 772802040 824976193 635603353 740167618 104453052 409670216 780841760 882325020 586564484 738915220 697417172 715237928 693864629 959989505 59225916 991326340 396646422 745931357 386400056 394532599 915128298 953842565 613408609 655413599 591040653 749241154 572503375 873780503 768505429 828322861 740352137 804264471 323123197 763893973 507409719 994925738 93832109 691509433 500396051 956412579 597354123 681228580 609018660 668194801 197301420 683139104 425176618 744036924 183265291 413875259 839294757 890112838 671459224 931708148 799107630 899107721 624942268 697454746 420629283 910760195 715096599 747516640 659261399 845179253 807441511 822559686 511962518 855471539 976894782 991450691 898696563 976042525 74521957 87404577 150239336 776035944 98471123 554425414 187762465 661520884 775421103 790051700 193815958 292209828 921298115 989945723 448851943 520408821 368958817 743421408 144706875 903903450 544420099 612179582 600776876 997673907 96534474 243991057 188876461 246421019 914946257 934236177 583389408 978646535 151049232 606195705 511784882 553847459 117556522 436356126 991790001 999957066 425506864 944630774 194253421 473783427 992889976 994813844 885044806 951317850 360318880 551079239 180928627 722821544 862381776 943565515 380556045 748081719 904354214 916371811 945177597 997093832 313495066 834180435 918479032 929693385 828383695 865779368 823942418 864538401 550716792 656125879 814761106 999521999 263610423 640070524 675285736 904550458 414112266 835478337 382292884 592191651 235754883 822613954 588283613 862513283 222568750 354523598 997524314 999879471 525906437 683753946 992633940 995643086 221540220 699075254 820156277 939123524 953278643 980345149 658503448 899589748 903614414 981338630 606563611 787992893 281982883 858890042 486325245 722987541 337012345 795013148 730482006 877244586 886043161 935305248 197122442 716738735 150915490 524644312 965398634 975866039 721630858 880103625 228474517 543076114 434370042 584620250 399181472 925361847 561306899 579848312 368897177 960658977 759063150 838128253 762353798 776314509 193952859 591512449 297469393 808294112 761904766 944212808 801865076 837963685 997402568 998898417 874916579 901474518 189546893 821950476 646827291 957096030 80519903 926707932 10188053 201844454 471285444 760825484 586724576 725542073 350538664 555890007 599492210 606742264 746946074 875730672 786345437 793715847 191380794 837546342 435759416 858064427 290801090 633386194 927099404 966044034 895101749 989088454 679979918 908226424 53538291 154739003 88403955 257820354 370711432 917095383 605329715 683163062 50148809 785560615 143645027 861022869 721661722 723253556 99798795 209841644 747269787 783339529 489382109 944205420 343693441 787102367 779266614 786159286 18300047 882791192 578718043 762081069 811677918 823812297 75759284 529331964 51025798 835614735 392213760 978851885 1820083 458514150 111106348 274146621 36354066 973753302 316999250 632371074 103919556 284284035 392499605 896123420 850685270 955144873 341559915 999716435 997530797 997660392 395932126 444900110 390647654 432568144 559857423 676771339 850042688 966537306 493527473 508791261 922619063 978199850 449709359 604467601 116808121 372087183 5564300 300286885 204726547 950998697 647611901 669181844 64146678 760339645 997228144 998254026 233226972 653016355 575812226 775095712 549913356 778906179 372666544 983081635 916155958 980731186 833304398 981268544 589584777 950606868 11652527 712585193 623050556 780084604 751276456 821666541 923516557 930941876 680339943 992376026 830005797 859561130 23002698 589120009 345576814 832212491 823566304 933675821 799322642 998318019 265860512 604847255 780903517 881252245 1552953 225238840 149138228 308969593 66751114 969178029 824146605 924177181 509417597 939146446 793342899 900834381 690769373 924493933 796736661 989862311 511860936 667138878 819209347 975541298 841442356 991623213 172224296 788432310 491833696 957069570 572362057 712321534 364316436 902899382 556618595 989052790 678851030 867561320 930015520 931708271 323720146 411825727 322869379 372231739 449824808 827217335 244894584 358026916 265963094 266050823 270510681 981219493 266766312 506679524 880212153 895505731 927871700 945887922 443580719 738731328 260801984 459419768 986414316 990850195 781048690 975283633 736501013 796794137 876861045 910692203 837027069 906117092 117583581 614703793 21946280 403150844 471967330 592179091 301883180 530654729 782729333 892865079 826646103 880321740 603798967 945622994 919720913 952440450 324167590 407313951 155198593 346008510 455662366 896610032 336805025 859315368 113227056 837289115 249586912 775777252 956503766 981202353 473521548 878186997 448510055 743842806 250674283 549105915 193343799 284233925 968900759 980622283 687810616 775568382 132605430 894638953 110540919 589691972 485834744 840951642 494177329 731234740 446567090 528486350 17699811 100673350 768041917 818340954 794824470 839715204 196635450 892977690 303336543 787061297 114142914 522731932 379155037 935976229 477663282 501967686 754425602 938241567 537084305 555572245 554679694 833148332 73621366 446309228 954610329 973542567 919452681 963540185 451650905 873754118 677707581 871702454 610560247 752139177 14301412 971980363 766473814 801145475 45162974 578770001 11686895 690829493 228506196 875879340 713487015 834760112 848597921 935908617 575832516 946967686 91919902 919348153 163470421 446326250 759318630 880871480 628726659 738064958 565770169 598427475 20931408 743907165 761330419 802949570 331980473 488692245 898201876 906931549 258530106 924384020 13069544 743556261 336099150 601509455 752877275 858029711 690730769 738064998 735292680 735684250 471120221 676016749 747757624 887583951 48425883 670727614 963599823 986366095 161634112 290949171 318810576 583146170 29842962 815031024 199699051 534761104 574737121 816806223 599732426 841801823 52366269 892734507 979604932 985834037 880505013 996260211 405889268 806249231 678917389 787043645 291120538 769316845 930513535 939893534 992012013 999794640 762635556 800685284 625780923 921070714 370227305 569516285 365223941 913922819 855034759 885950208 643077419 646074788 277560134 559494162 580861186 742266913 560148748 923256320 414992564 746444527 467761124 889628933 677335865 835799541 358878712 815294413 14682116 633647905 882468856 898299598 625228463 873108942 236149757 513755236 157806140 464536459 772394793 942250540 901589832 986840990 431463627 824757549 158778439 265693892 246715054 608168585 662504839 699431729 928094052 957959112 930803194 974842826 344662532 564070008 921392042 971558222 522379642 650726015 911732194 924690099 564897535 688364403 350888700 632478612 640242433 776015404 84342706 407225178 240597906 845662653 551315859 972840998 338079031 976151870 657668609 682693708 957324453 970665822 986623120 996801887 559573981 743932321 460464570 817834362 729766495 763928672 270259162 550045340 786009657 984708424 222448120 577091681 835847892 888438255 864870228 949135600 39149408 587637369 420854806 795958219 815294092 998525820 194777965 411144920 973633294 995579747 313131056 918771028 155143106 573240414 226265912 498224496 466846254 504881114 795285086 887805301 554780732 916897471 197313835 388965758 984200240 987625926 286256604 579752348 521825425 893244952 653515503 897540419 332782387 804586059 364623851 640758298 36854326 985581123 312315890 388401691 708634584 805771155 758255514 813548730 39408767 918938693 342026358 475522272 889225408 905458139 219666119 354074218 840568540 910372861 736237334 824770871 232621554 457615365 320746010 951788983 478880711 675462371 791009480 990314251 104941147 468284593 104750718 919716565 420739425 653563307 464744302 911224167 727458625 979342404 599629824 736323382 202717833 411887219 429273079 560006383 130864814 816781771 204503049 271851641 917760793 951270868 460231326 467336648 418840517 429459514 197192458 806758823 735912723 993420859 880655143 942980575 621431627 894716048 374178233 456763374 844493556 868442752 454313073 555398345 142333715 973253917 376854484 874427256 800178056 898832271 323865401 767144170 632138346 791298764 553804086 825704394 984506004 998093031 643074679 949064377 140588901 633847882 609053972 805424971 279474333 872470854 59299637 974043267 534941553 622844948 440773599 738626916 290381473 729632787 70638587 431075532 643209887 788303646 793658682 982839685 687562094 906778517 797030493 820370048 866872821 986888347 218746578 832745373 193214982 747271275 714311317 960858944 500126597 562789177 253746891 792310424 974884926 985860990 751196486 934524009 397484683 671099898 899110309 984930915 487858656 960405243 345679178 871991295 756996999 868258842 553147806 720258280 543093654 996694451 576410681 746139629 83949737 662369631 111133588 731972853 14320535 198674731 200306564 892906233 912119623 955324187 164677620 510406387 616596232 858884253 7310440 214616642 104938711 564262652 734531949 990821535 433325957 631258597 218516062 257550120 280430892 542136749 782136037 934459880 624229806 667314648 920883487 967790637 903851098 930238108 953820184 995057581 324613101 539520651 193497721 438054952 155385456 248732433 27804967 637030056 49048181 547039953 222920923 582163781 547250039 783841312 842338071 904458672 821565905 852426087 824623205 956579570 691091665 808561669 132858816 628542734 723746095 865360803 360875931 784482171 836684752 869148488 170674750 344316886 97580927 591464550 209341762 902266696 803773260 818858668 104870003 379650034 895275163 936636544 72709777 429578534 873243893 936001472 582748838 586128767 974156189 986928105 886869701 934283668 714445292 722459938 202845224 502815795 883370841 903374333 161130926 547239565 901282740 968193252 879483295 910243871 446678209 857712345 492958070 739861666 62703742 942980739 220653789 750844736 464390202 488814505 932458040 977384409 136578080 265515515 672761523 963296454 773455643 940444469 331907756 780189023 702630407 730943272 539208288 828902067 555020425 608646242 935903201 963687017 687016872 711294714 476756149 503787334 38707776 990347204 881349551 985533781 973518490 973657757 274298798 449235505 605120322 780652162 776063144 861017719 238312858 889140346 814894003 969418000 685083091 781012791 503151266 939767959 272108912 538527254 945982788 999175752 712362844 812473236 503279857 667262814 954462680 982322472 316828587 809299399 202405932 252197414 459924231 937639289 76300654 784681526 404539655 900003699 752161940 871845746 471906006 554154680 308739288 817428747 211402256 473373056 101927355 497476750 739907522 900586887 990846815 992050234 217337798 665402366 103785443 279274343 489556745 779308306 149754288 490680520 834274877 964643174 968025259 978705514 161152306 188005302 798694113 854346616 323274250 999746661 221025260 758934526 733928265 865551822 77456624 312128299 945581555 957691839 658562450 921667556 508363982 627356529 824994214 959017863 814518213 851890610 666179595 754813046 182527226 746015936 149208437 823011347 333898714 742505040 468891282 640357101 34369292 884003921 648427178 900201149 743128644 844477479 529329079 533314224 658263612 712126799 153818289 644662018 739980118 919504818 816593707 931546791 655329247 709788909 320149122 671570663 202134259 715753934 364685099 846110605 418440839 756715166 545487595 674928775 216816319 686030448 825433547 837221985 370120543 827934306 938481054 961769454 961520361 968274679 923960240 946925744 934690993 952005063 419225524 907170887 936681781 975161693 649968485 991118836 467033983 810099085 129843405 607771185 480613626 632250339 21669101 886911983 874665114 891384633 987147814 997423598 905009299 950774862 678279883 835950573 650454376 800476591 41822443 161820292 185647300 640871328 810457883 919342502 175389486 889191212 424967462 595763505 694735664 976293428 24424102 469263265 85291921 284484365 548080599 649905330 599425874 931968754 614873088 786214299 907936867 992198210 207895464 648418464 200758 868776294 206355129 511860407 840448746 976086624 626829858 824916761 805213079 865409626 217183322 546117222 727126154 901382366 693288275 903143836 104104149 623515369 303804649 766174481 453541346 813952109 390934565 799955175 467688775 716127594 329530760 800144219 849664127 880021557 984514418 999899105 604453547 788741246 323863196 974231629 393542855 736487615 557405941 785825205 867174929 997799288 773263106 782887299 830192633 991647628 437045344 697355462 81163295 662299007 605982245 879090002 34970470 792486997 38614946 632323040 712353046 919504215 280243400 376121631 481737530 726632915 658470717 882660389 466714511 910817141 203540343 264993336 635021770 720250008 660232536 981073313 771936286 868346866 664942800 994752246 931517881 988417636 99129236 630123875 41859010 918549506 313343874 965608791 553006192 976386206 448079372 602663316 56020123 812537077 586493566 704183671 201944271 730234841 753595465 995986160 294279320 657696400 967507892 971169035 531417222 979842880 539088094 710002781 41924911 42389281 13397765 211207758 609886226 865125441 249211660 871887733 530298999 874047254 549825258 612978165 789749727 906852198 327267538 343360216 138183921 154966687 744422914 935773401 666158408 764018769 314143585 470191586 198283183 988045994 793128617 809748565 828127829 882075944 37006652 620792348 482654247 651513725 703810247 958411718 747688719 867330308 257282416 500094041 508571994 722328245 784005741 938742048 892687957 980198831 651856523 957408113 858129220 879230828 452620274 729772889 824638843 824877898 104583563 727661349 435811666 790132960 889614917 963655020 959446445 960908489 454242734 768933821 252508034 913516663 736254402 788625835 825632250 975754837 995471440 995802497 84067804 643188237 14355869 750856099 323729173 678901818 313051831 407404252 287828589 971223591 112958444 699391272 838027570 876304506 106405831 822482094 490508315 826984618 113709329 366360695 111216372 609242670 633155040 694416484 630459819 909959737 289041528 417362590 736093569 867802570 982384989 986372544 155924151 494340637 710988749 935409222 995778313 996023818 161147530 874838034 756839178 891941196 312778408 613208806 431625196 745362739 44307381 951817720 795946063 867754825 589092274 621619121 257514554 840493557 702897929 821611861 501214605 626405241 375275704 580963701 479576102 556371461 327040645 445031173 817744930 893915544 222699308 585033063 854317917 996905847 104896683 710501811 75431909 539776572 779094384 780023616 704466370 724438628 256509126 430032618 212624244 389996889 816442253 960110749 537140073 538100721 845526121 872595949 541142961 571496110 252290355 324041078 796090828 901554906 190190369 268919003 118727417 447102314 65329463 662587657 383166265 538665480 882092260 960450627 694771258 751524741 411212900 982202191 665847504 988327727 846896301 908278855 911556493 914507582 346801389 601945923 530928531 824629296 940468598 997914907 831135411 995420255 346766962 705612058 235662340 402643354 434053218 480297447 845674157 901337013 890411636 904514043 623407065 679587446 692964781 987145282 836933662 926413097 632057564 644049074 61520944 328409752 769140040 867097778 321964138 549771590 353925035 393024842 478092011 494912159 546087012 915064893 905222012 957059184 77099219 728339475 380832943 582127371 245537075 859737899 600054648 821148603 131223889 288119485 841246426 898881604 619765658 623616090 354695786 893551587 857792795 955686433 656891766 794186757 608975919 889172376 275028545 283024657 984114357 998645324 53266771 704292550 630780004 949582484 572933202 699415105 263284023 880600378 364532368 691468746 838557338 894682428 331276784 538507205 76174061 352421951 221784282 618406788 37835545 888857969 279585936 329061916 153616017 774181101 581526773 858594334 909799633 947701321 159596152 973120024 418006710 750045463 168067626 631037796 609644907 985232498 231708286 250349381 938881279 946575568 119065381 998956095 128356011 434829714 509297158 796083799 736548988 769878427 403913772 497450103 258300632 685194447 537560646 983965763 859709528 864241810 269465114 509368044 439709573 483092297 844120264 865481828 465507494 514213537 704686670 968624606 426537039 710919794 719807969 854571241 460523790 627482960 502269708 979922763 867814564 996647789 159974850 436454100 186583593 392844380 589807385 883915795 455703607 520678501 257206571 851213878 158861182 268029604 271904898 632436647 806897387 983717084 295721294 677719366 686355175 689819037 953082962 971499140 816611986 829671470 702296015 818846050 156465175 691528506 35274945 407596766 656374471 988404923 507694202 517629623 670727673 676253007 949254573 983717382 162429212 222983408 510165985 730120711 388876563 561250295 893432735 947882212 588884132 793171487 746348430 950016761 201453782 583483577 656769384 791408962 20104650 723354754 855521825 937154956 512600836 957323662 896236376 944255355 279922832 389215744 412312633 995968157 902826484 970389679 443643464 644447164 354004458 556780481 372502239 741651534 65119826 403283767 665104469 740649068 147026203 195397901 692594626 727316638 885154440 907663859 456947856 795394086 603552425 974437846 823871200 978605782 905486498 939258187 227389812 497896228 74772689 583971708 998964561 999739312 630620042 984169651 412576515 424269138 792116991 874938961 390417517 412122222 756425227 810602153 856587865 995627133 706345712 754535310 513240430 620546307 686118701 905861499 333477132 851489775 913129317 986987362 652004434 706362609 484409967 652285026 910273585 984421768 191000877 434618103 552751654 832982094 499278797 945135202 312562010 801146885 137185919 396226199 603092047 984950447 953920117 981982245 970151308 990548377 264838729 378241541 247537034 657484103 309069067 471033578 653646185 714422203 44271346 789357174 452399321 929678032 362282556 381029701 659724570 862752102 985857385 988114426 287628469 333444411 336208006 473511710 345731732 883778466 938448575 946550729 787936944 899756920 135203296 187074007 232695904 603308153 757769914 950065929 874246800 885020200 263435921 820348455 636728191 911824156 3220083 130300271 963540684 987916060 920815804 991661259 155933314 832915532 431683147 666249710 521862102 841922322 311103178 657268540 371985876 451259230 101695849 554813456 444342775 460035523 964780329 982083053 644548460 816726205 212095695 728125767 613163094 823054666 341073214 376831764 87262460 392014141 586588250 701778149 15447192 234827496 872202080 913435882 524744100 901765007 460437028 480833465 426192537 723204521 65164250 447285970 841918188 977879644 83973118 583391418 433520978 565541740 617828543 916702363 886206849 945145392 150744756 627472928 532095966 622307374 753801509 973439432 627182132 848399676 330974862 734566388 320737953 613037621 299344351 641791127 150025056 967302972 162197248 693219606 802887372 847186437 976932982 985988620 647590898 723482869 200251158 281659813 536884528 703254825 351227263 814833290 577885227 817097644 7789702 850764867 925991596 978556150 909452717 918573234 946847219 957732271 110489137 689026875 238222739 737864397 398839501 820048100 942311015 947511545 447604403 839041449 898015616 910698375 909902123 928492764 51270306 77736542 344989919 865063772 787060328 897242358 67617498 148335968 188963422 320029804 65573080 637024802 535050646 698706463 578633595 652358624 682243911 833257240 53260005 130495500 4339481 899673226 570945440 595828298 690435307 745880372 908878858 931298184 396259062 789532638 538609968 710045205 480657206 838987555 643078212 714466408 143793602 750538542 937934406 993591718 506625637 820082468 611586572 833237227 753163369 763375227 350254345 954837021 857137619 953789825 34587038 694698770 102986682 794241089 737723763 995627330 265032456 431425359 678292734 855726734 699163890 966498287 873211126 970715768 812044835 870888971 646589389 908110664 497231542 603717986 130718493 371624183 855796093 857423512 732379418 869954650 922716312 980877722 604423523 795343908 130083747 807573670 596930826 981767269 756836324 890267633 953002515 994671777 234427025 288374445 334197974 405478369 56681105 616738557 573571335 973917661 801872097 963220275 967039091 985902640 425783148 479018732 576316793 719891124 949720661 987331161 595032241 615629932 865512917 879005569 467994246 912521923 718428109 832333924 468674104 569690397 306108059 642997565 388767359 756335408 814485575 951966092 147609033 835906768 833337639 868834331 171587818 851120561 852892053 995518328 283395311 783275697 193184578 347960664 985273422 989260161 480878335 867409493 794751015 995123686 371612422 616827210 699873946 954897016 573785344 596709455 877493335 952877946 355434328 771357742 393637597 774319240 631417081 796253692 325898839 629663972 887863784 990281563 728244656 923122704 65043383 489224532 216381216 737160389 219099796 949838153 662162042 717575888 838048369 855659547 562573869 637483888 390828936 743957462 170768946 635341697 787555741 847360988 879626104 887898389 933690911 950347211 724628900 883208384 89244821 196414429 365868676 414996843 990221720 993310572 926385711 989667877 129160070 932257559 483062523 695844437 110292606 832935178 536463869 811645057 659975678 862599038 713170839 912356965 866064931 939731462 240041731 802080286 68336524 998378985 829961883 849869178 157927514 603561379 898312261 963538564 48818445 897193482 878954699 883516536 958558199 995434541 251259712 288622209 229741139 443626742 761523991 785322738 366454566 815530985 489651584 719570277 308096920 561613718 584369640 868449306 935934312 941917638 184405269 732674314 805419486 920065732 207096362 639137605 891482992 911542214 783644118 823121665 976699866 984699506 130948968 417379035 662996879 774862362 774503971 973229845 556795135 988488760 155662901 319910912 287429145 965586432 184818691 481721832 207361448 952515015 329271494 810031119 290960749 363197327 514756684 719775640 859444591 897524236 823391086 857603446 193073123 515074763 91611202 408148526 332402438 463280766 258463626 698277901 274648218 299413582 450869685 961739973 808615485 836096849 590833486 773940960 423961847 877904843 394000842 442661140 241612090 693910812 147032088 397171921 449250764 808879198 307770034 882649210 973099249 976419330 146815248 974709927 368880082 695094337 3445743 551601171 121814608 425748727 811981722 973263664 247352673 892449631 88675162 458001825 858834374 859675651 212717880 955442235 883665456 918152508 578129268 848350113 458677143 855279056 385122468 907073677 351769209 502512932 601136408 818059921 943364549 958085094 977693532 983342034 862517441 889342328 107213827 140147177 546858912 566665574 720614954 839228903 238285198 683498930 868460622 961754003 978249475 999810722 568404316 726538049 295389676 617207674 151952536 656076905 710985262 724344163 628164208 932661769 931933400 959731763 423476929 734145074 992031911 995048856 810683614 977592708 723744879 823021176 467822058 567008842 733395484 753112236 810409041 991352551 250910976 987769192 84166076 808115318 13209596 422194999 86866363 270167252 212550392 474823505 662744303 895263370 349026976 391862308 784985922 959168133 972521598 984202710 236649695 756239392 385027123 989062262 888776909 932836507 461942178 632084573 662116187 954037493 456364940 519132783 463378910 974416543 684376147 838109922 959677022 985172897 462702605 667092628 133741563 157470589 980151671 983875144 917526297 957203565 13046783 785279505 261454734 866713340 110172267 759226096 94451031 295138336 324460012 822554319 770692785 858486941 483670499 490155094 156343083 536535362 620366482 974959403 632585153 922380602 215249157 462459220 22477202 328585881 155093713 456599009 126226647 403071684 367736390 761080042 835637384 851179106 212124614 299105121 886132625 932110777 436799346 973346550 230203803 584268486 418551387 655824485 483504971 757044014 995158123 995563736 959490434 983124586 655912018 723989837 517750056 566548287 431209733 708954284 713360839 912790023 320539568 905999332 806574326 849987738 863941989 910710421 726767802 782914113 332348575 935987061 352101939 914598737 523525585 664914587 982394416 994326711 668751640 991028209 206033573 316936914 865461355 994497621 16769616 656790341 13982613 972714358 883737593 889782358 431620583 515624721 910876456 940452118 502854034 932617719 200605800 556403209 191329536 319633874 463110191 964160657 965759149 994286796 143970497 457155626 726441845 951656114 964004461 976917597 159262433 429225138 683528551 908683375 863957923 986985625 403149287 574987021 635137666 771291099 84046697 299106666 863402753 897781351 873413239 947704891 330406137 783399477 550702851 932359237 469285867 976747443 95814718 679584719 169522979 620219572 331309888 963219873 758836929 925899184 404541595 870207451 933036780 954701125 127654650 960502389 338883715 419555250 797161722 823972227 667405989 854062871 984851604 995753230 949391202 950126395 37077097 91544499 871488416 996206714 152869905 584666085 994179057 995740319 514921397 558173689 492452987 846160043 839482374 871667124 421968101 983621501 131205998 200686165 120357039 328975745 315353333 994389276 251933926 716504373 812846301 984943803 569500041 934259152 380099601 420505034 845466762 995468294 361633942 395484266 312890264 496388525 917943393 995128322 2280499 486760096 988840277 994133488 735630533 799890517 558005257 607023701 250196638 584990442 737772760 920550998 173194886 511012704 30906008 513836564 507360366 826834834 397965792 693490138 260525536 930700191 339651744 429227117 471292963 792275220 252216108 827313900 348814214 747548416 544997813 626148651 809495049 820701505 461992703 862740499 51349871 339132431 758219458 982953663 889650424 999410260 984206303 989998275 37785051 167132050 879264384 955174038 980536197 984032554 521022801 753446437 223354593 312082564 199665937 488063367 884070389 934554023 666663556 930730123 842601410 985596120 537483385 773232891 988121857 995573976 5923491 243866749 194132266 521852690 801232566 908077366 854057220 882738075 834412097 958373872 579617280 951149297 133484098 241465864 367300553 841618875 206403744 561260436 616358388 890622536 146935438 365667061 261416581 913057046 82828708 633557938 771997827 951538626 286480678 619225385 185522480 972713078 541138645 891690686 795576362 977747533 861467763 969065275 870017371 925651627 628775664 721200412 25848279 126031857 313722397 614793372 44701334 639419412 750147936 782415433 311661223 453590829 78872952 340247548 417385905 623857354 179613040 807917034 590113579 767880701 977854783 999691653 254465656 329288857 644706735 888095661 681567749 905468213 669020668 922473624 101184860 412662611 545298552 933844874 437845477 860488722 48286280 593105013 770637291 941223084 125466501 913989837 913301798 980328987 471372353 750719370 570111062 952345730 128663005 148553385 765341148 904405794 714555269 724329483 241928187 411203306 468067063 758684546 343967412 799108557 948308245 967610357 959480566 978275100 822458411 839896173 24882452 449419419 253235528 605953303 592206138 725095824 692457799 951687284 726539330 886324363 740367883 817246936 978793019 988515879 934122504 998899719 821080786 885084132 376032876 510981231 13984923 108187232 137303493 264582662 584154085 852384135 412808550 887777662 461627786 770055644 65112473 908206783 58829263 189711524 581714285 964177595 68333047 550171674 878732205 957538583 916785042 943596173 460269475 740965416 231448666 990408389 947882234 977621399 469329947 836021613 617329685 942357945 149346990 965704261 622913024 753024816 656896175 983502951 283056992 466619071 815256549 970666939 418973103 718505354 976403826 983271943 51452561 783776549 727906717 891006192 59951713 193189826 616432999 941328600 557127061 623672291 599858596 987337449 740811726 743973282 255983474 421141700 900905818 929203422 487706078 598294374 145579749 885039339 412602105 832726765 871734023 980203803 94029219 746749236 815251946 978088881 655715607 882936584 941940177 984064433 767023313 934408606 212413007 272765154 729370527 895974841 401946423 584466831 724200382 848216069 608642111 801743403 282765179 959549517 165544556 308480061 348851260 939388229 561575352 691399205 603018914 754218199 283044878 885287056 810070303 988428343 786334099 983636510 543958999 774090523 545158009 863237252 254627796 283665165 884667 286497074 909166462 942258452 506601314 562994737 515894425 802243211 996760017 999093704 614707138 929231334 750920077 851680600 730682097 745419040 159130546 448584055 186698324 754195215 386629824 705351985 303132946 367275918 419823584 898107512 606442708 891177908 468195372 473310651 839257685 864349062 724013418 948145145 152676623 405504126 610663626 940054707 719266520 789395881 209356931 776898371 910523080 933852934 419428333 726609221 221493110 349027568 513094606 568927204 593638050 857535746 341216127 945800061 505247112 833583409 990068067 990299309 114269630 652886722 348236125 540868135 570129550 701987406 775762740 867703173 424027678 662908056 696145713 808128265 646199518 794511540 769190207 999208214 808178370 899574607 328541836 985683130 350657633 750270224 605384611 916704470 873364335 968892857 730268425 759101455 684020552 974143393 500021150 754974120 539678846 566716220 357286141 755872747 310687099 860077344 422894046 849225606 205724675 436907619 504828460 992029349 645446428 992671360 928921605 999238935 6962307 150540656 65607669 597483642 44419940 953947186 663728859 914675788 925830275 974770791 66613166 320636018 423306239 931143625 688899618 986950284 834054577 912383733 966284057 992756700 784034327 866868603 288927867 457898871 18411608 293352362 930150658 957830685 633906136 785991724 768427980 768635910 706188798 890242377 255339142 569801017 866012223 896378158 186623291 970736714 390405697 636503258 343681849 992294495 521571716 923619925 537576950 948556343 656402447 808377349 371735746 867263310 372642606 826056651 899692818 973924814 208430591 571841339 24620125 425319110 89270550 893439966 693666650 974690457 131490159 831325659 152330407 756650643 283517879 853763730 229321144 529287667 550436436 794044107 909209397 975595180 615548189 660299513 960005614 996036180 259671661 782080753 603171652 934095782 727841883 930665580 932011300 934264793 725082226 773350858 759596790 834976485 655772701 986204320 502690678 741307078 215036256 966533139 787715030 905984678 346499198 885747933 923722751 980538446 439650366 669802540 75714941 930076813 109760502 903787578 451881324 629142684 325716578 640132390 844074007 856375113 185372347 658872178 620782216 631738989 830357340 897905307 884272501 975569084 820076603 900269153 883119714 944345711 860390416 978132738 350183414 654893662 510750112 666919805 837333142 852990794 17513254 954304954 26904396 539223020 890624636 948079350 722684021 945771387 931248658 939926800 617575182 843464389 826572832 915942581 456985453 640253244 51613642 333110813 793195327 954560209 928506351 964379085 559086312 869136675 772883489 832492092 269475522 496763608 760871048 992859605 298645819 796578127 644827521 767261851 795658517 936698886 710961700 998204421 756200753 852761043 413599649 737413689 634083140 745041714 157042056 317187088 903561735 928627448 930861682 955041467 571531458 665062734 4570305 154766427 457189861 542816228 739556997 782767204 5179143 579753989 733976942 761714512 214912582 780878359 398049044 593733938 308890852 431631951 991630466 999727323 55495297 856560259 372954339 427124526 746066 856550151 432797628 958395278 820404809 846292759 477817956 616802265 912530549 939038544 47871362 439522608 648028032 760225452 471868698 474932694 51532570 766493429 379178782 643741660 302146844 591802058 754937574 870187690 130276941 720835532 972521799 983240542 401297803 927453008 404152726 996762505 957622612 987327669 575688622 780871498 177679063 845005274 499211782 706670926 849943607 868894253 241815791 638973271 227561981 800333944 622557469 786297741 512420370 835159488 959860064 986170090 89111706 986745750 421121186 525028983 745195484 766020584 238050105 723428104 992230794 999705398 879557449 978048853 567347745 847823779 800239075 862672467 742153887 923587905 449768863 988395131 871217371 901721458 914447024 965358053 403582722 623145998 322036527 701932079 561621270 612615686 345615571 863618944 467814071 717489051 741413163 872005968 312207513 786082134 327851117 963312075 180606923 807911619 748641087 802471080 257538623 664170624 739126046 993688717 268194001 533198073 284174593 733004310 692211455 793542319 330129484 571393251 201309785 421810147 997793341 999915227 692477431 848010310 82010686 962829401 783059509 826122641 703479629 743449561 617380656 726688919 964385182 970441970 134256813 799848560 143854715 926895254 560578105 877347268 991999757 999812707 672977143 797140548 81129488 129583086 785526236 890465729 784515961 938107057 354965208 936716438 137080354 588079367 49772526 51489743 812717694 872579298 498259442 525605307 576003203 978579676 186107085 488507488 425829590 539499625 633284911 996511942 262804670 493650622 753595777 934163096 586905119 740294365 259651791 304960265 474795971 905657055 678619703 879542549 999735102 999738627 300303380 971379218 869273969 901597211 183373259 782018707 694046868 758084108 429014835 903973859 595960745 997991396 631117753 729162593 849079735 896538149 689745727 778006724 513894782 811288842 771593877 896183417 524776440 926708031 322154619 337633561 584736175 774312152 465822947 968857018 810025488 831227943 492549457 975321369 976924380 985675653 251132844 314052465 363733778 522408949 40813171 275357642 571955224 887494110 55679120 194757474 724786611 967057393 922157030 964109673 127442406 192633034 556241599 851601074 903270565 949753601 555830959 704038510 611871663 973311180 320480134 384798716 783703726 952509405 920933433 934268473 909872096 972709929 763515603 873757411 654512555 877192750 450406594 928502363 957737147 965710761 859613972 989014915 234222715 321588635 296507032 301281134 525225855 945162456 112007552 753027672 971347610 999989084 473723602 578313641 400545220 834746382 61715723 737703133 713896667 797439262 690700153 750729599 721789401 843958495 55521339 454572673 609213011 617552411 468175211 744224540 93202952 841753423 927496644 979238227 483445137 613231028 235589779 671506410 412276133 971588243 871214540 907939661 494464258 981524399 773903679 783159405 240813085 818950911 278573328 704074585 724984713 834252600 389449356 674032084 802029917 888333689 803648690 856195631 165413950 894666635 957472595 995026780 737586000 817903409 557370850 947244665 415508924 592894147 311771511 717540275 62518518 83231133 80188958 830060635 510895515 890152155 987994640 991007767 924822744 965362897 549014571 755521706 411585553 925685109 757837100 806458611 272020438 656920778 488913908 796137860 282301587 523661677 281383238 817458595 59921432 409548560 399017486 621125341 190028456 703668793 524887342 870613283 388471151 833197609 498156 15316477 40921387 664819066 716905792 751487233 755186369 804800572 353172851 608074760 36704478 238309660 303551390 499276185 990723772 997835868 444748995 649404315 254433396 844241513 323417153 523454220 650955175 814548902 563893556 907724573 860345326 905058085 720632930 794741480 720595322 909288245 40798966 779206458 98967814 759101874 756960797 801151641 151388910 196092673 24827520 891747208 173579592 498953878 490015183 955974903 3254776 343753027 423958558 889281811 802554394 940794908 287748714 869782344 74607577 491466691 209842943 706263225 899268266 943352779 832636789 905471570 405209721 661598768 162281207 933880119 452653385 818233919 714940137 819706971 187639513 664175500 218069157 414665237 520298740 976767055 604828288 763705866 10523699 243730449 82432496 531547838 999233725 999593504 38360395 555129946 550479514 743647686 706820504 948130308 726410047 776368887 17771124 331111151 220534554 745384732 769338719 940749349 270770829 794728920 711105997 731164000 452238924 759508436 449256430 639334855 695415826 753154040 716067813 767074469 559713116 797417287 212877423 832827877 969031598 985086788 252454326 294558186 443237599 855296616 936354576 949931501 372145495 716702500 858418603 879251392 313991404 722962390 121138985 400852319 855239999 882185191 242976894 427910345 23444431 217470589 756804762 976652261 898890092 969135626 17828808 183908462 372934412 692632700 534387322 850242219 161106608 360745486 888298373 932229099 381512942 507482176 232027164 279603051 272179032 599566772 397129633 734268061 798173712 976334664 567047464 946803380 747132308 778542271 332757867 352420528 457586573 725700519 271937500 293856466 556728416 858188948 532000939 889730746 597521900 931473469 582932320 731257386 418410436 753453614 674081101 931249804 753622476 759366881 896407741 900017507 27635790 863137651 615604631 941191486 604973155 950502973 40940175 765274531 363321852 527675643 798665821 938640874 885974117 891773057 202151440 674186198 993482942 995972211 959078919 961791643 272889991 280707188 579428411 756094178 215390312 315214663 352865968 867056013 304518411 576327828 6212510 982083196 689446144 773857465 593355701 838348379 340514938 502696212 206638802 555625718 917587028 957504442 823323651 906589454 753071634 981780169 2343259 281910008 888169677 980206433 355370410 748656845 360950111 495738773 848799575 951278352 879567708 932376358 739572241 773472795 885285177 979508655 235011282 466805840 323781596 661795242 906846652 932643688 571064478 908510785 669611741 862138952 440256841 638763755 244538141 334069855 990416599 992861003 902168317 917279777 661745116 981795925 842749873 948215114 996639433 999234702 71057690 162851863 228470680 907523559 251708006 625409130 594079980 914185643 810411684 859753823 996153017 997053973 320162991 515178955 928397692 936698150 132398723 605620162 615553181 784287715 133015856 600538036 161052845 620610931 730849416 899587787 516591778 690891149 465585341 873856451 989066498 994049907 151031322 972840355 237528299 975789718 163010012 787139822 762881731 911402750 638660535 715749284 567773750 782379326 126965827 333858724 71867364 647757881 129585620 860215857 998494278 999596979 706830031 747244132 110831662 420499184 909962086 970878223 911559620 988720190 474619710 638813645 21996885 216854799 831152162 970539134 990898526 996293583 734231303 941018704 521372417 978168831 879613277 885790339 684008278 767875611 810958456 971947506 862151325 956624532 936822847 966396206 714403607 730982600 777661346 871187261 100081669 416504382 178812407 945772375 483419730 975380928 577806454 751818202 715812678 791731862 358525202 856336192 62772135 706066308 878755147 994663787 383940577 903134835 434552188 505889611 884802279 906237873 906965426 935993818 710463823 750960194 667138686 696852454 932202919 956794154 338172751 714993051 493862539 723121154 297115484 434438435 172834360 708859381 885047577 896979616 851476310 926784296 363632920 584681407 400003336 712032866 456938280 940764935 368865770 584022982 237069965 926616858 246641734 895288343 438837147 520615195 317702793 972264074 787875672 940971432 5267065 85705678 887005412 998775957 160227910 383192602 371930320 598612348 785924760 863556096 517515506 797834024 425579738 729275991 440748406 932626835 26255576 114264629 750146259 880825751 195445953 450777430 983236494 997258342 336277583 934265169 172267867 477873418 426056037 741673137 760257002 863552224 729421536 897872793 922171871 923118676 927359475 996997451 72575505 95961825 949165505 980340125 93086716 272500606 267126619 682168221 259641469 766143039 516039933 683578511 871174707 972521196 337595575 440538636 199059286 425618374 94210829 478209014 551659108 838700163 708251847 724105160 996552772 999782686 122077190 628617778 513647006 717657713 780141824 807436742 722871473 893332043 300400039 850866620 15941262 676814850 23395843 654716767 353402363 492002852 897964648 988274384 716525667 859711795 995162447 999546505 996377517 997815133 498397740 630786033 501113302 905349170 980481110 989840833 506453303 935156642 894731036 915607531 121657235 587909917 480089779 991565024 750625346 993329079 723235330 936795195 233370121 857215113 389370962 715007244 311290209 705839727 192708511 790249915 657666074 966518117 121290642 960925684 800990914 954288568 242464507 516651389 353796033 473907156 564040312 642792751 42329176 837668915 170941736 935973671 695199629 723807683 959057343 967138916 196986932 989394439 383335213 880906394 792817520 817618341 87709698 534606319 288492407 432280557 603060490 687969233 906098190 968276718 606512299 820782088 716988808 814785403 743635410 806918659 398353447 792060353 322807536 796391394 984376632 993140485 36641988 144617316 23295789 123287912 481568846 601651038 387840508 738376901 826930313 927003432 47686416 137649346 736037672 953924577 305141277 628022038 962405256 989526596 719944141 725803319 90044 993782833 235719223 677774334 15019626 893429374 66977451 493276925 742137129 781335294 688142395 970538591 166128236 955161880 369218187 930347905 167852779 947911940 537410311 981581563 942315890 947519343 431689816 559093975 345105724 746215075 930537116 994992546 6997084 26029612 184482291 419594836 223267146 379165469 909559065 975125059 436122486 575622281 345675556 862081007 824553089 848776535 55734996 167310686 599090734 967189267 726315629 982334398 744628890 782502089 989110663 997586334 806500304 834133452 483160029 697060294 132926186 812334286 145617241 760814734 36526022 84664267 417670656 874792371 632538207 897561605 528606865 757771224 283140839 729919851 454591972 627561020 959362041 990015109 797955601 800795516 769859662 795061953 251750231 993323796 913024520 919913206 929443843 988651769 314433979 830019606 774613159 942353320 660336554 767086097 163104571 490533186 638635811 721881054 554658407 679055149 790719356 834118941 908831609 914775943 815364062 984093464 162507773 327948305 963940764 999220545 673812446 683487994 619691366 665965727 718923726 743457882 419763287 733763348 253994054 881363150 73290954 838588117 381914554 559518254 20410085 616394773 568260306 744410758 420813841 541288155 148023500 312444932 321722854 522357209 622859882 773643021 573851074 972992784 923507014 938077068 730277317 896567504 357042513 725278185 521687076 790190165 445891102 546140683 567408213 755578391 154858557 787052827 743713010 791778324 123635607 711824479 263951153 282299362 827929525 877854595 652871931 726142862 30938444 342836402 188767612 852221159 758764893 818766270 155527081 751514937 946514526 953067110 567273822 866375777 720654136 993600174 760612241 912327710 101158565 167396617 739511159 857090929 418633129 806842786 740414974 962658818 930419238 948128375 121449247 774354234 277367352 675214744 624337137 982157874 183764766 597840383 819003844 861123984 215766816 281088327 190823190 858265161 736933081 916716941 520700084 764731531 204542219 298713252 622448901 769727401 173275173 716732018 773296887 908815418 565468923 879516181 428542912 751912290 321507010 737416083 119809933 756373309 912631731 966198490 62339911 802818172 982127059 989408411 549461104 559203402 104900334 507919710 163961324 303302613 80374352 809588744 231812249 597892544 93301739 414042670 680910615 685682788 358371277 760088674 351735010 865627365 337987433 411272419 575031254 596213006 668629601 906985026 173519483 976841704 375514592 952251472 136212394 884456680 804382546 832398677 927989726 944252115 56678006 233895424 823979114 902025634 172326457 310122577 322082724 402759538 576337782 754226279 562697907 605539642 981748541 994719904 810987257 946782924 996183415 998664540 359644833 707488124 586471230 794902920 673823245 823305451 203371117 941072756 405020169 830752873 591560351 623406949 867326201 867517675 219125231 628916039 731280130 790131271 82147272 359291373 369506346 893544006 436521608 982386323 908958235 911891850 594755525 906964402 15082200 326640880 983736735 991407002 250282819 766272247 650405654 948395369 413780715 621701376 15648976 528782007 943607318 989235516 460126232 712767211 509442481 536260820 857317346 919921145 416300893 619443633 279770277 690376262 646160212 689634845 937329853 951459830 291182707 407780635 966966054 979998983 889883317 994951933 126477615 446799314 428190214 685710443 518899167 603688587 80945615 801251180 601321208 845588869 920959318 939368058 34564076 929550812 596689401 851266906 348759033 466033955 627759418 798362685 852787846 863115470 432503723 970426054 453350289 680797227 531014606 884588277 478808071 770921360 497949091 988498908 899285101 931305717 795316495 976737772 856520438 902773142 498872327 672916918 647382865 841003058 171590210 601755746 737364078 936240814 340835523 663781260 81013952 987628777 610062226 912966408 968359039 979598645 17828910 494542714 904114765 971581299 532963691 707866128 986770401 992117426 658848108 898189097 593531046 910896979 53675794 297170743 500348248 771424218 178290041 984992508 341025423 619243418 617674153 738310773 797619337 977175539 841537032 843301561 195418654 209830962 471954576 603772587 928093316 930679738 640202734 850642542 358951304 631348526 82568253 189345362 126189577 379526964 336185256 707139463 423866847 618235583 330013006 565577307 110773914 818697817 641244370 974489917 592695317 754450696 415161805 419369287 330375264 684609573 71267183 636327673 943620478 980297048 438084483 624721955 465468964 786105762 743614679 744013580 471853035 753959646 136886814 692312165 803740617 922165711 103521951 962007533 153343707 615714844 678222820 862417071 713126216 873116383 125422518 147447206 732859554 865630344 813673198 968857876 234804747 791813502 46438773 393061895 825312452 969234290 50413660 146458222 463229609 784804725 906005149 916276452 295639295 726897102 656679588 943122085 882730425 975589487 883450460 967097022 810371156 893700416 109237855 640456270 209996158 742658203 551746747 559647978 385941858 736383988 284577766 864863990 752608882 766313294 191078293 202447217 991818618 994031861 465361432 770643876 659200004 927136395 845919984 938852126 967071170 986160803 304085374 517657358 547472857 994028305 219952245 978408933 831950647 967100001 474451490 857837476 171495054 501937343 242539916 288336843 358215980 784173838 420079032 611095390 161986282 569376117 195779300 660187378 752001220 992328967 849540440 875661035 118167844 684931168 185145986 895321960 395562299 499586596 242216088 622384172 907399004 942830043 621483287 826401371 570822366 589905910 998009171 998498944 766962975 901916542 433886865 708942867 443541265 876688138 125259282 530023751 976230030 985383300 501965265 638514667 293662014 787429325 501924374 774219653 135399007 895583205 976397641 987497189 16381289 579936716 554336770 686108787 996819412 999738363 182247883 835182074 60162157 331384269 918665164 968554251 89971610 692713915 307607876 877677719 633439669 950926922 107317489 789386197 433899890 531090765 109526026 965235159 276688148 580361112 23582534 67875549 489400263 554421154 146287018 255397307 547417940 747921109 833305321 971869001 189520002 998828309 504978615 516852295 342776080 829374936 700020770 969997414 249998417 860207159 120855181 910875147 811065127 960447835 198576411 694030558 871852642 975760003 259129695 371747118 97802269 784801728 600311763 954344585 720905312 997200686 257223005 876533790 84418552 595176213 524042693 632310770 539026229 647410596 374203113 592028617 373297250 809437920 837612705 997785750 675103407 969319121 954999450 965044804 152414180 272427182 745382729 762499099 129105349 481372042 598806873 889639856 821300712 942351925 416977259 586415095 99917643 487296038 109174150 885522473 385839794 796369105 355071241 761493671 636988560 986196843 926595780 931147322 242896018 781273098 969950635 983415074 493396730 802875756 729046750 753273340 260646140 275920962 547930068 611461197 744272299 834584112 246736876 620690021 167439852 882005077 557184303 686083787 866765271 965984278 217954642 714907567 190120395 251245302 743654280 806564713 457046915 906724497 651315679 795509065 508018264 850308943 993048642 994612334 852500643 979561610 589652487 772761519 185547886 834039931 159612644 176126982 751090565 916449331 238162166 977262505 899750980 975717520 844420014 896904124 359856532 571810989 453709020 707653462 160560696 484330022 511077443 847003508 372661958 465812096 758591172 959774538 486024509 833466969 283467226 602257803 704059797 802006340 439335181 938740205 653514230 851092469 680157498 693567128 325429541 637151745 961682223 983523396 290623821 495147755 168312063 952062026 903956953 986012492 505048271 526563303 32545704 467527762 290430529 888098007 899552799 954299417 17277531 884762098 180649216 853377890 157679411 775630894 750179122 766687610 54155643 489815318 833860116 860471669 8317304 798691201 867657354 984252024 251775267 372306249 894461111 968502853 251754025 366980076 73041571 337312987 986049377 998402577 203657442 593352279 289047305 534556693 40250224 139750879 777913394 814802196 968538509 987741813 716831188 992085839 155911108 245943317 678456116 874986175 176388240 430117339 312267180 567650806 946898017 994467606 290496202 603031329 552920493 750729107 723850045 790391314 582173509 951836181 171433806 652367962 225296369 435860624 522086660 740947474 630532996 665785845 81717548 969687383 548342024 778563710 348818910 422039937 599235685 897308149 308185576 560672994 18448236 951754107 342566419 990122386 269287919 699111179 590066760 700722273 789154716 904523031 225070303 460763810 941033889 956871624 881715373 924044594 301410022 716023728 39358402 650384611 81710182 158568419 548510873 564835739 90758798 357610942 412071209 831208191 676918942 699049716 201910888 324036182 357794767 501321290 387085851 613830899 622173785 985239629 130102256 951705992 271461639 508199186 658069457 861743997 404651644 510551570 853504939 974199933 304420150 804611773 675949142 687847715 395333593 998493792 341417431 345830687 46628524 167275931 442231843 863170450 742575207 841425738 566063492 980647723 452215538 581237594 827190798 993369431 169628379 745746099 542280088 874840764 95904578 408439232 479921925 982594489 68591863 860489163 326036976 641318217 465626337 981845496 288378612 813285418 292697202 323775995 433519263 942423325 29316286 249454308 81724858 725256920 942227349 974626397 735588996 736625742 626332868 791466693 750311848 965021144 585648169 902600296 340817810 636128488 345205695 777024933 193240397 368983841 910966161 984982440 730898302 942922242 864384016 945660712 800272275 967546795 167496605 822146850 466374848 663196280 54384846 326673188 13803829 833922260 504189939 778387385 21341050 955916174 52861094 956406557 472033630 892540558 54130000 127088779 90217936 210902810 666900390 859598647 624861064 640565096 799966220 804282617 602173634 856571439 813394694 839208157 706938938 741899507 206009698 513492574 280737503 832563204 482230600 801154365 996289652 999001322 710325703 740560275 930548353 970110313 794725606 919133786 472518879 999330430 732034953 869245899 737471271 763395370 620923011 892920994 301566448 422090894 676893589 751962083 131367124 466739710 325413852 866769015 415811231 688707962 94920488 414736270 179728281 925227056 252557075 336203463 494952440 710417782 712396986 944426572 607508109 936144933 331554185 472186552 329449905 817864118 776106414 804665494 657824135 672206030 313790860 826863814 904686320 980180121 557779246 673258352 826048904 996527400 646594425 990492068 336927520 765308941 825740790 917623305 109941049 419267195 967136860 990313183 185391711 635389147 201032573 847851254 198585789 303631746 806253848 853227164 410515491 650432254 925996298 944052823 740133403 835814687 188403884 955755143 914121405 990062198 286065666 473270952 654097011 895775770 938126834 971712726 316157504 734895444 7039300 934874773 272395964 928203617 100603135 121283495 857678005 923735449 218730944 542076413 400966585 854251313 416422775 793321454 978938863 983774150 540117451 864651452 765007493 910300069 740202910 886725895 751165151 940189628 400899743 831040916 97407443 759789245 620493358 783759200 929577966 977025859 448834595 879891975 934570460 974566508 848843007 911363896 130756189 583627275 215035944 750269917 957395956 983345037 570883621 922272243 835483098 881247920 745043521 982126842 631422434 846058651 611215905 809198693 468970599 726190954 827875604 937048979 932022610 937243006 786132061 870545509 87810901 588027311 131823099 528176997 485318679 571503234 506515409 956614584 862474837 881882940 215926086 812064449 686799826 747765275 178715200 256113655 43021183 227159645 391950879 557951174 189246272 924987220 524357931 818142502 686823440 836086526 123340603 438585426 920163689 953859775 363768780 761542587 937858548 954364839 997735437 999167147 376776064 502192212 154348326 700207210 613009063 938841064 638478504 771668468 671905700 702513663 311482768 968323238 346122240 882245462 452481038 550256954 642853448 911515495 316231909 536755905 820291385 894726412 874609258 994954190 317383021 708918053 573279700 874559353 540933388 953232350 857949517 858800048 512092038 611900996 284623163 368103364 436415808 817637431 272775923 474306205 948968301 974864617 162326169 274563660 592541332 661963297 295230839 596141738 581219750 787430149 51221406 539572110 46323922 311091104 590882999 978572363 161564759 680130867 671334510 708894181 117360066 814282047 180955609 885847708 134804378 910209794 941227027 965630378 79816442 907467401 263749238 857456038 644626933 781199779 984746943 987123584 557772771 765107576 969117267 969431092 473124144 633733270 852134480 913458385 475845767 590240696 695990150 706835501 311068360 750530629 153763020 348286149 139078063 251496319 374504854 997103449 22195076 82850277 98544969 661983898 979667502 995696853 588291247 721588907 725435304 862891154 433277089 607899015 408163845 944416571 963941766 992080822 894524567 931204817 117219824 968808824 188572322 325281242 4715435 947501908 400857026 565371063 886294428 945152130 163532962 901781900 825404250 980684741 355448843 424287520 479453993 726577703 243144879 541969721 942962482 966704233 944005142 948468016 404237682 818432449 892971596 963833289 597258201 935295377 661694296 989341445 930402312 984880883 578281424 877521307 424896830 818595728 95640205 760652955 489638615 774432691 648497695 843515952 729563160 814388668 922094383 973358371 720257667 969608599 998854011 999532805 332676313 883242806 579472753 608990252 555029697 870140373 486959360 982920136 951878766 978881837 258454398 293515220 207100735 533886124 344519610 361519028 223294011 722571931 862331490 872218971 288973374 887877863 518976499 821988726 539222374 873380401 101557763 249842619 554926413 659896793 824012167 964358713 160896118 491029464 99502750 722546738 836778482 900741221 693748172 744399156 137923225 529473237 193191019 567766955 379398048 700970938 851091399 998701716 154783228 340927462 268547032 656314088 343233472 770287820 678031024 966126854 703557008 840428207 145742360 393465899 753796370 914461923 736690405 807660338 234704308 247164730 769453298 987297155 237256159 746399233 79744723 281800300 761577379 798482803 208157180 350830851 337712614 715305233 702914713 740490205 113962483 907360855 307360270 818182674 121896833 509474241 937503524 951049189 963306060 968672950 970851833 981418544 792367712 985711206 225250241 473070461 878668429 951304360 640919863 738032336 686148295 721177304 473906881 999762037 692068780 803034426 407652660 517824710 638521773 682805124 736974884 855856260 122509580 355680627 411979999 441464092 890869171 989537511 238824771 743594040 969038300 973233890 640707919 760964505 780511784 837081504 509465412 510090527 356369852 874449114 620233323 901877352 390916540 692147437 102172894 626199660 308012215 958159544 183044207 513503353 851656733 997426162 399378187 534328331 327397101 978895604 745797770 817648324 746168550 765843771 836545373 888525578 133768738 312718298 468142968 704384432 721971711 896579226 553480771 972873137 795330256 891127836 834095429 932015190 104196372 453814259 39084266 171902566 385659401 714942368 282690194 429560211 435077679 467735795 522756773 956783533 492528990 782882651 753103357 906966263 550592547 732291014 695904338 703790292 627791369 885781572 879754519 991797901 444920573 523572616 258567470 313684504 304112681 602838195 115383547 957835816 516975734 963306668 853393923 875554705 266845194 619855196 652393591 930014566 158405934 815923676 266041713 770137671 997037983 997776210 257632097 620495836 623942382 987151336 713633861 919633905 830651339 965787034 610966670 843122201 458363886 975836930 12732541 254820154 488888540 761372960 492907612 721104201 521603893 650786934 124868275 162008259 819245138 893872678 749433452 771452651 898751156 956905076 507510525 695533328 772259614 872718808 634037916 821149369 235031314 403633430 77119249 253594144 861819431 889532188 900734693 996365269 303453664 498048925 232465260 259614788 520965335 956677308 46922492 239185346 419827079 476390194 569686267 601454039 401080058 565173888 900210142 942967475 114837346 778831947 914417328 937839235 830938042 911543928 575341037 900175334 714910932 729433129 725664542 744073803 967468839 987793617 484707919 751513105 406830412 778498797 378841504 901902964 129636923 723056339 579817119 597366403 983006160 995689784 30687058 674388358 104989266 222248137 275789781 946070871 518928950 535932598 240173065 783050006 8864761 232047907 851760454 977238070 527701201 907398875 915364418 924718328 511794533 785229091 408766597 558011676 474854360 905638626 912250242 995847745 71913297 581569809 666385654 757096915 848663264 896071840 76094189 261850741 136280274 398899953 264700376 880007281 786903425 846895019 187125815 736100883 573191293 915410643 206540167 318643918 457404246 855770038 73259073 74153331 391827111 948057227 824175270 995194385 852027369 983801240 999712120 999929310 822620949 997119827 576258846 932013941 636265979 848548997 949575992 970324671 540925247 550589986 934514227 980506382 357642084 413400579 981114949 987638702 322255897 397860887 642356545 660244211 840166789 977070451 766987671 961181067 24007628 669954702 287681699 432364017 932165789 983973069 134677890 315362518 600871275 652277291 876460835 898341143 290690634 309133245 295578278 742514848 458963993 797647477 349498189 704654440 73659577 659783432 790164523 924520558 622627913 873676296 352041676 798758447 961057401 995415112 891489666 921291403 369033274 757273680 103006813 483501842 969750590 980807269 423477410 549194364 412276141 542807549 53658767 744823418 886139268 971908286 45636308 489316709 277820798 934734892 497703033 776951947 41208783 253426048 552851308 808532855 939624157 940659116 350568675 508749007 104577573 324865478 836103688 837470830 217999692 927779078 955216971 997474142 666015572 871156310 128749111 244054360 27031171 639794055 59888262 547196601 343515953 725823200 58339327 75844160 213353303 822420319 680117647 973019109 59298122 518837620 522258464 847106116 370225265 500193428 923683970 930005996 309999690 525486857 258395613 890317045 137799407 663494188 711549874 953982005 53164748 803772235 236486303 514821433 910148982 918264012 633375823 941609142 612040636 785512322 940288877 948690149 754415072 766034594 528720635 990039217 179214059 968758859 489428290 754914220 452857169 789169548 787055125 890824130 186270788 596518702 283587371 506268317 972345842 990615465 767921342 902460313 142451357 762440904 92907741 764098712 366673194 723747675 331891372 931274557 948241167 963329288 722084655 732073997 689382832 864671150 458727440 613391081 600850546 934251386 313561870 579252912 906649875 942064847 614377927 634399941 638550132 889256250 825551945 913034342 44986906 835167635 98459715 427073615 951211000 995446840 724442578 891920230 822356241 902597331 813250020 827426119 700355147 866364414 857848258 941911408 991300257 997370829 349679954 655841762 74564352 246828373 267154883 377026800 20539986 205160111 392735241 518959688 460822479 938983144 280634709 720097208 916082468 921275002 39829085 273708700 442565555 656064158 95764650 479510081 980972256 986898554 245943105 847357941 413035670 709116849 553844558 637406366 377561965 546492541 74262171 511782470 116435570 838240516 161131131 646418820 271282671 324920107 171777861 728364135 923786254 977188829 303205039 403424652 663074045 996282153 783239903 974097748 264079397 694106242 343543870 739047510 380698172 547670491 361840092 410194095 850622162 985028386 60831375 158830958 994243521 996821318 920321969 983096298 215158124 507128432 54229413 572150703 766895954 980660328 574375317 923186150 166240357 924474264 166306723 878645857 326378986 736266651 291661131 472119298 811012497 816825385 253000002 938009310 643639557 804958341 501781921 806078653 228916570 717620941 209519919 731939164 309817461 614634237 543671912 771494295 310086024 532231739 543067770 879386696 651122650 856611148 65792022 512209705 287233665 709806456 900153172 933191024 431856207 884263060 781317535 848894380 594640010 779962758 82193079 465840447 125876788 969882707 741241762 966089394 273142381 884248272 502896564 945301531 186678015 395330514 266952407 609421028 137735576 201213608 696189440 860518271 345720326 443946839 531725174 563485325 570445521 691256784 492764444 846255859 435266419 677509156 745067063 911560067 343324546 971783825 824402699 852880693 491046195 749036256 861291990 939601341 421461291 552070168 839447507 856324223 859104337 931592421 752166383 808832774 760492474 988538914 233751392 768971435 417438779 792717782 690036934 710509303 596497964 922020686 587489349 972423764 958058964 988217897 892314480 902578156 270290943 545839833 507554979 596533266 376702126 765316408 289769688 995176470 630763756 748550186 718433353 735411226 893681205 993241473 604061858 804184900 846129516 850011661 350398620 828007054 141805655 941402208 637474940 692674826 471152593 538214997 487687654 659724594 13160853 125315118 696183144 841482110 497186047 934935407 637566441 686215591 294416649 421494873 233353904 717625311 770179235 973537548 62707045 734492567 918995360 956702825 144986109 618177989 965424469 989479088 660727399 699990002 799214926 931710120 668771263 846742688 16841599 478334407 879013957 968730265 132710916 437854535 15049039 362807294 370122634 501961815 423919662 720212205 346877301 399212433 319622973 492183613 838764951 893381794 870062657 925859960 157157710 705189483 167449272 499323739 471661295 505110509 428187064 716644447 640205687 719630191 198267694 359569814 148859424 794022831 604990908 913609878 485611251 536495441 596766826 984465294 256768344 386295550 278127644 908804369 315116717 783406510 929133293 981671812 885592579 996306999 681087260 725249348 814295335 987619121 319673501 926508292 17259304 593950894 291919168 724983123 504253341 552270035 81338830 227282701 641994967 719164700 309443670 470331871 515565158 663725089 539426457 607714964 957291969 984388416 344631970 971829152 502532664 641390670 976631357 990966854 826880714 996389276 51470279 235832930 633985362 645361125 710539125 759075716 564766857 887104238 278688469 726218471 17863253 968252627 55375621 457857798 227018784 561348658 620189148 640785419 139763162 340037223 433891666 479891686 949624550 980726301 554310293 558480714 585274140 585501528 623623395 841402645 957214467 966217389 173545007 913119833 507165747 818736883 495765899 769238725 637517815 668094931 649498371 909218855 902643540 923426282 513614748 542209443 176646579 866383614 111403624 876421304 114369471 446413128 740607420 919346440 191195935 769942384 271746109 601788671 824787933 991971856 671225905 740063496 982094037 983188792 902922505 971811183 618864767 656829708 202102496 340754037 25991183 891096546 638228828 987996609 869717296 959718039 337050734 951804962 150746374 329485393 394123148 468042065 707704609 951710220 518726685 894027996 265023556 337744579 122867246 189528377 493561502 622859503 461888791 528172464 281374954 972078608 165173977 573112146 923193753 989524134 287407558 912434272 653757999 894128569 901242786 959036649 790236052 863772356 231486558 319362274 807582872 901546151 550085730 684045739 951085104 952380617 310786765 887124673 489824357 816814265 996919118 998526147 81791178 269244272 616377301 798108534 501791276 535294840 19695610 952553916 791740372 869021289 15531799 207540527 435966537 885956742 262354781 507580542 711744946 907929647 503199250 772125906 383601674 634327647 546457044 870959377 957415072 983888692 904727400 939159306 707135925 817191975 252021599 929726994 508073986 693570167 241035261 334677740 721311462 785715759 330688214 626419153 385513624 598361124 263268146 765660996 629082038 856238351 493520386 975878414 972738105 990179891 383640235 654396657 471546865 762682340 331280776 678074042 656307054 930118244 95515236 545665679 785890906 794125443 43955110 662863506 367019893 402712871 106319310 544069019 242731534 461767177 463902118 814488676 353383096 441363305 15446407 916874484 193719681 876415658 87355713 891004071 312769425 412653962 166724896 454866585 552127323 590924519 827173193 836756534 51367081 976859118 202815014 587381467 475452530 987179629 277268916 762533145 535402975 783002372 877483685 950862345 679168445 836345258 984443300 984608073 717796891 770909333 640626339 669638580 152400534 756898202 505047612 606989082 878873539 972486487 718882084 821754747 855962358 857400239 770038980 771996355 925784862 961084744 433276613 645703880 632401673 779065141 263039072 578537553 445388416 718881468 856968382 870823240 830716703 911457801 606565070 651985436 133591088 336733284 197419522 325743889 52456783 66149974 244341815 998155757 455671407 879311733 601145723 914183147 443608751 653726472 768684209 855068663 772233291 991681081 222760560 364136668 215601704 379127543 830876651 909463542 250755890 933383946 979513104 979922240 205080786 648194917 865330788 957034323 447184363 533137586 300533008 324284244 109404144 506167132 115634138 675624986 880915358 972753180 850779823 939162469 925982437 994574307 704700401 762492094 885364026 899711511 433559221 589557413 235926305 820827766 849929661 885286656 395939062 649606798 809474612 980575073 27325797 804578146 509187051 707969633 138727496 676807394 662821944 792550547 264094147 679922901 367467816 606438342 904395820 988819177 843775438 968989944 801411394 923302582 574274154 937753225 616343951 652224004 110409812 258016697 678311880 991506681 127674785 715959088 25543101 552488879 346188092 891119639 997526676 999244085 641181228 914332169 228613039 384615868 839780528 881801143 836138895 916786221 382342175 382598024 958299158 981823315 556685769 865128722 797317681 974946312 123555361 731976365 251803245 908080429 739936469 752209080 171033508 476882367 864271515 998254285 5814034 569759270 843096336 949641665 922190464 965593843 427619390 829295342 467220950 965114078 554667075 625076866 752967333 967700039 647868591 740061317 169712327 564554569 826257918 856814107 768115069 866874672 34953701 953021245 718299435 754597471 73663592 394415163 593054580 603517687 448067434 462880470 572215371 673784195 241846021 767439713 502511851 586230793 412609793 768802949 645897463 726612963 483197589 976663615 508440171 733591699 721511925 879707487 733153913 997266206 649130063 649724870 502777630 612528275 534168713 763603336 134289720 136285871 554817041 718338275 371181966 831248658 570372791 948942663 569014297 994918124 396019918 644733510 336972366 617838056 760869243 810731782 212910053 746230279 723102389 966276669 270582781 494001821 594602570 695987267 486226370 754205011 497700469 813103650 71028675 606568637 334491142 615845886 640279375 940842531 505518027 605687330 212140792 696095115 192818925 579048739 588736629 820480361 849468256 958200925 918761934 922185871 115070034 958157943 394624381 657731615 117750417 717037249 881547698 928754365 478608872 793037025 957722882 983459377 590574930 781587285 164571264 568052341 738546106 953254538 860821894 974692480 188023816 285334646 428267447 985543688 181290937 695064215 260336165 450852456 702668612 985319221 394507728 801897108 517306457 674494871 226710796 683612178 499533736 584952485 802311625 946045468 76996614 481875846 595958176 643067216 640038317 658461366 225833043 467913548 460530561 536474623 792614637 812245191 463533226 729003332 221498695 595606439 998012361 999885721 295343692 445847725 724313084 938983649 895694966 968787750 515911497 928227765 408215863 695027867 17103407 606442441 439396057 615608759 654726423 909260512 802644964 827271429 521393565 590418914 823351770 950665662 24996095 198906200 377510938 554378863 164649037 705205696 738760629 777835923 20491611 697537676 782362340 917699565 544996859 874868136 827755168 937328811 874034771 946300610 371994727 866679935 167774443 962124231 636312634 809931271 899992022 956663470 449560214 655504634 102316090 793790631 210774681 537845272 701005634 837250670 232095602 256661465 509359041 668049658 864480419 896375242 98608702 676738079 68593424 266049367 667940462 884661988 71970529 239184560 640013833 761041624 638578634 977331482 536953981 572184807 667851458 756097122 936638244 939411305 293485293 745444139 742259959 927731133 657683567 674787637 666022427 929774678 643592715 766403284 387292688 565901768 646962321 964400354 874707270 944704631 969708784 980353088 794517878 898984134 470864160 659272153 465230116 885654253 321649776 745153641 897437451 970136228 55852138 678953964 965456979 979018272 759060367 890153410 96635687 174695765 779453632 951047190 81645370 103117417 222078130 883421995 718799364 813518964 60229656 680416392 142601845 306870303 305501799 693976796 424489188 455699643 886678566 922008607 831608156 907609033 614739143 675932826 889282363 998886993 776878259 833762090 492024301 741161978 186928388 384931372 552562786 908933603 904643916 970281482 717658088 748029369 89961887 371437063 929088850 963499050 348163231 761495823 160648992 792884733 448442663 541538051 125136716 759338348 864289429 953185273 934601338 957941259 520966290 773095862 876508828 906154142 844510249 948119911 339220702 853036365 974671339 978184759 728278556 781797576 784776461 872872296 649824794 705550518 351215887 735213874 266362849 876363146 729511275 833721689 890023542 903818378 228606991 477585082 832748614 977238933 587636616 890598753 859506482 935978115 162578658 922563044 346980807 627181069 254615682 341549922 495272256 524320616 540509808 546830091 123679528 518261042 606430894 676392769 176079791 819903006 522233794 684333386 356819620 547079477 786277727 791959619 410921696 604695734 712771892 824125264 77633959 926784288 959660982 959877064 430014259 474030623 501480560 680367014 511049686 824440996 787255835 891807571 331612161 498243788 223306114 607045496 9008208 598578102 118230445 816296874 550114627 926681081 295050373 551055812 153969160 391078688 162773683 676719589 799255504 997508397 254684085 905154784 695916135 988162937 195063854 347710617 727516706 730317429 260994622 296402418 508309171 702005699 432428615 438333866 152454331 274124750 377888899 404391007 530022159 587930293 843427496 893635914 230454603 854256970 601363505 769682449 223654154 497774043 135374363 534948265 327434924 541512474 816655060 964798705 518957009 706421398 525835607 714073886 701746277 848560079 159951757 559056821 792890900 887549436 704824550 778381668 298370424 339974701 285235038 744625977 663027383 994649526 863002068 963049735 873692231 923122765 921438582 985245765 593333954 867824402 921059193 939892128 879643132 914385466 47163307 403148608 892334725 892704249 777096203 790581547 742278831 798674430 167012945 830313175 294548522 409063707 294735541 639370798 49188629 459837895 917872201 986085397 384530300 979580663 979352146 999345879 425589405 929150641 936486457 971093074 109140125 142594764 729419176 820791734 824935404 851996575 662629824 896782433 752191320 967817554 739314903 925641337 383735759 628104765 334439423 536954842 91371453 175714998 694498305 695983148 706022775 870709841 319549174 521017421 34210075 793703406 28435908 232565828 714064282 819608335 69136328 166151220 904065999 994348984 67690461 227432213 860202250 938776796 197437916 899338266 641993928 987702744 355608549 925748110 917339279 990915339 501673489 758488170 883962143 932912361 931991813 976966123 728296159 955343106 506919925 617653493 947082482 964670552 150835484 500470562 508091303 745583113 681139777 824183543 200731580 680210131 594661738 976298365 144038358 413593533 873270830 878668442 164848610 329805924 550302357 986437772 498169639 685157829 365222911 531048546 189858998 368067858 865859973 983331362 418649051 606371697 727976864 991559703 652004534 825251274 807739593 942726137 831420222 846804197 744820012 829620770 985754132 987303541 554067801 599928368 541264426 904795288 991692936 999757342 594532605 694629685 588495767 841631807 926806398 947195980 596170049 896336843 161626745 426502703 446186521 680388189 390064761 683485461 348540605 519689188 883343347 990130437 664003311 992585356 456145337 926116238 720752579 931977986 806991478 904890143 587501046 609355245 581302612 674752042 406799345 619836686 953971128 984339898 314989085 778234808 329004027 765725782 183202664 199486045 192505514 940911771 603531288 677653067 696277667 851205392 954286164 988643995 476906339 953447085 293663463 854570702 32187152 707437423 197444254 771889406 810630263 927259520 399728116 650748964 655886195 738743442 127754117 915745258 674040674 919705898 609324777 957857047 641859237 997882848 743493392 841603528 793502094 793673230 311288200 820458322 360379504 441191988 423746994 897466107 433983153 732833042 838118874 882267215 542923903 767718375 461526170 489949189 702209083 787800893 654707068 724194052 883198876 958388831 805645320 922690549 200246219 795800215 897933894 921624069 147573709 548387086 35393170 751543652 437053121 901176499 762251508 947093665 371954568 451606555 284615663 763555975 739879388 882640547 781624829 845828240 479263171 662798276 537689248 715335012 386783606 482668001 414919104 836183849 276732027 707404703 771876935 795456420 597121425 978826094 77084391 400881233 242389920 430370129 917717647 961763176 750432193 863424651 195477852 924100376 354075047 519061044 126358039 270893514 611966560 778003187 775686892 881211805 458696582 667349245 288287135 883997794 492470156 755114760 126497449 719665457 766622389 874362352 370172612 519438037 405233816 892070944 117365594 204672817 988480857 995451084 841180824 961228959 704738773 819670938 199904978 355475373 99322349 661694124 595787786 881672518 119137183 136172116 420767426 637901825 670357775 974181130 779859375 869190087 464221418 793777966 928668294 983081153 62762701 157281220 196054977 975013835 858002894 925524986 536641731 592029543 473120085 997498964 427315592 706838399 132290512 971270930 359637615 876703610 847347816 869552602 388600499 763887033 552252246 872114160 771936457 878556718 849289040 881471947 293976271 835789546 521620602 595528612 458710901 599823527 123061062 431636607 968796935 992853374 521093167 562226761 464631775 758149175 503193289 579705514 583330396 647460327 223086184 823453369 150946257 616466425 276914091 829867148 296945925 340441948 764730524 932914052 995491270 997524486 334892961 401966026 2658363 438349196 302532599 537260334 947379262 979706701 15892442 431816635 832478658 990828973 759619864 814665452 998971388 999443278 870043519 894055667 284824864 403635060 812296198 982891983 749852170 982129727 823083081 905175797 316108544 459823040 896871952 945422770 339916795 456137119 741944852 753892115 830408676 927109475 37170387 94089790 343403142 864485125 328631963 623764750 67241702 230884733 408873433 567292936 661401850 860211726 835448306 853373449 412567909 629637629 32127597 146854527 308126865 355810781 295950106 524004187 818041442 983912557 453981344 943431560 819096660 853979304 578552444 713438191 865874819 991480941 694354328 823063123 799401917 930124482 521880891 970184535 613420684 834280169 113670712 213430512 249977310 291998341 419816300 957048176 651544648 718235368 304632641 457493406 36021334 945885220 5271058 174858530 871247549 926487778 400659119 799953771 312850600 437517685 543192549 883022387 32745353 137552553 411968657 561356356 319346235 367904985 126826507 577677517 245182886 349942589 905325687 912868382 785305812 876506847 396640536 874788270 678969809 733333732 540468710 787661642 605748119 962661124 76918407 902512742 770822120 821278288 673698534 749149843 534182773 881303330 924827405 959135656 374118931 587788243 799959940 918615521 652612591 873023910 343176840 503433178 231596940 983637971 73705790 575636916 371059136 657962766 90037827 873997134 361838481 362196538 523146347 560492345 495095192 842352071 574630749 748335172 821363264 904949310 686228656 847443604 634441541 810328853 858117028 931068631 826837343 948564438 134804582 496669486 132648110 920526252 317871711 984573312 741383237 959480946 226087029 253681696 677347631 985566185 809528093 963934771 820928185 858631575 913866729 953136262 211442353 596771093 298542244 686311866 565176387 937812349 522126567 666648198 404678201 879225457 224318312 712101184 122414065 658176393 463186180 718855223 680356412 965080803 213336196 382967270 601835046 740306263 317869940 989581098 580471677 713400859 193868613 556894884 336982041 820011345 507118669 704528279 561104978 998472957 689531951 824248844 271504195 945077205 288140082 607442398 854993350 860036154 529405174 777919718 954024229 977726993 27798173 75331841 397508626 777204239 966579680 984495166 623126057 760787842 764100562 852888658 864998595 980564573 319858345 558997792 517767075 636522761 480515578 653482743 2860264 854747242 46718217 152975525 112365124 233634136 36261872 956423658 637580732 809984520 16504789 320610346 187771970 597249851 238735979 471631502 171346613 439652413 639094380 871963733 577602192 661453947 167032507 867869645 468280022 775869371 701875213 832698300 543764561 919461386 144263404 474411033 774004871 994926789 12501284 434745556 774675073 893897113 150196692 562152753 62823000 257663896 971146520 971668011 490298470 577253476 993778757 993967327 276484797 595539392 273943907 994553702 704355597 910653142 268563757 537717806 859967585 932761249 996722884 998989054 735737095 903817042 803721976 803937156 289808630 430597856 513233870 877427305 558703691 761274431 871684708 906942161 70745678 619792870 629198609 981922366 564064238 980001047 52830170 706662935 658684288 712535955 882900894 981985050 653813220 813975172 439988347 760794511 64703608 631383155 96670256 997265137 434230090 444710413 953523018 992893757 337323704 819022307 399513061 652216401 741794173 927865907 732710144 943796875 103162444 886889960 857959665 884450280 691748584 905349777 243651866 656033592 580406934 994294700 307670641 823064400 445876786 486432608 740255770 785322193 11609160 864739112 151072147 698700692 591741524 711924074 535176876 819419773 436317175 581271676 911552116 933804184 197377387 233440400 788030284 799944446 101126857 531845054 738286740 837321659 359066863 891972907 49961396 293244692 858812969 961008044 780841021 817329153 798577252 921727950 186576563 982746804 724897093 865750979 28492279 529482063 122089798 129235915 952043128 968416946 827628176 994587258 957654888 967850704 813331902 827354874 883991874 979251307 464267887 637222916 173221976 659392476 958261116 964797746 591079475 721878255 573461965 715136241 804371513 958505564 938413063 981709326 786469074 953663841 39543707 587982804 903341174 917463812 443356112 457577000 536265596 959805660 637704547 863702899 284430674 353072386 180682592 564817575 775551405 829069079 583135575 974296829 579715581 866804027 7867 700225701 680548637 760417292 958821117 977733825 103837439 334001392 324171861 392817391 712029139 936026921 907716820 931322943 235221582 928947454 679174542 976209317 668905789 933112617 416784828 547262185 632554944 675987157 7253333 831539699 745504883 830639033 535259553 694329473 693837552 933433378 798402225 968775942 86894012 780696868 826015206 912521995 383736463 486981141 511019581 924679667 273729790 773299184 739194116 782665359 490138972 572941778 829909605 876368137 469277975 602730824 786962355 791829398 316194132 771940914 315607345 751920790 322394231 477068872 302588834 817445053 961063687 962632896 434833408 568771394 190605264 193539053 804097582 884101221 773334315 848183484 292481022 642657253 304106389 636613028 277292158 359149453 757816444 811493470 782306345 955075862 509984856 872306154 753111022 877175036 672299456 876230924 999109788 999602154 195234743 633356614 401553418 457185313 34294509 664321206 109315691 989913102 839048001 847887938 978794792 979562909 184233832 383424971 850147418 857508979 367820593 601535242 433595407 604185394 419231221 793134283 422766049 748064831 125017750 177855617 922966886 961552482 684344298 770387360 29427418 458631072 508923209 779005508 914117249 965524563 15279465 659676694 352176569 592323021 425136916 910413612 44632210 331013757 855473851 959826459 616256967 979965012 336875529 543193014 178917405 284885909 530068949 539370898 274645079 941015542 914749086 988649596 937078902 987008427 234820896 240546914 790346463 915947805 160237026 584414924 358340279 817732226 895474415 959421990 886035609 988058149 851035038 881095010 653760236 837746420 318491291 870828667 479644687 728472169 377422394 784476151 161792232 962357604 139827771 836637991 295123668 439528248 405991167 642420328 861340283 992317111 592860092 991115020 475752195 501041703 630146557 702424594 324246785 612393807 211700161 232471346 47929384 906441874 472120639 606649926 729060341 965534452 815856929 929531905 520834817 526129455 177541675 536852154 661504223 965754474 325436968 728615063 370561917 552545901 728123056 769467284 666157667 700299946 863753313 953730471 306746103 430925571 648910478 761712266 426043869 722372320 78049726 315299656 51186413 116907876 716626544 965169257 912195875 986704999 955881080 961137614 611631593 739008203 503793241 969637998 850322791 906402179 69144092 98593999 503517634 955624933 572276812 850212457 93752084 205702828 456018501 582077198 222407754 558575664 378549246 834694366 791707012 958516621 958758795 978744218 194440710 668387870 980645002 990944610 494968200 567362961 461029000 608365857 646332498 963023721 24571011 889408956 963451103 982605736 38594334 835126571 646632882 769523622 445813512 540485296 982273419 990148604 956533685 979490699 485506961 800885375 886778009 906326643 28357880 552647371 586895839 977596680 500254637 637990591 768074892 987226569 940371162 978766694 594020671 858652441 924049768 990543942 641141696 786891924 771205032 854068518 766636082 854683446 196355940 546558016 261034925 827395616 613219303 984197094 939692495 959267541 314374085 804006567 988747377 993619666 627410182 720422050 903700937 994501702 166618275 414117254 639120735 653350762 755424276 879545665 241705293 436290946 68355092 423643649 145010497 546729929 747669298 778707495 713452951 875389325 688616779 943217460 346733451 684800457 289867693 399725536 212406706 726320725 384208503 685158830 747697758 765715926 819467040 820549804 137470433 437566858 577523344 601508559 467394615 906118232 480174784 626890525 994792802 998638859 580053705 891746259 382440466 800599152 991535499 995875182 19726101 291959667 427752836 915268723 878453111 926073527 544671264 783180886 801069331 843634049 164219968 935173006 236248494 522929228 445618601 542753904 261343084 478036677 974189998 990896541 656580205 788277879 575490900 957842499 170987964 757905775 370225196 760509663 463505365 806485450 879723538 943797680 456643591 551327416 172954874 419421396 952122625 976491091 428047148 900350152 127716374 292164603 807015242 952674610 586350774 765670661 116173758 904396858 476386510 546653097 466904394 806614293 351881867 510845183 54311519 774780425 359115625 880216689 702231096 773458376 579261674 781604754 147702453 968660309 475360508 508878457 995894941 997738494 903470715 982537184 907692166 938919275 43929900 246734890 966046212 977777443 36151952 235578257 534215612 971350406 523151023 529789159 878634139 935152834 360584927 581671125 817929924 881873781 631250718 949953425 459227955 836847558 268277246 409887277 827977252 939211112 531291088 575127027 457705282 574254103 382002223 541490808 799555042 987451268 509021850 790371930 223917954 439158387 858674997 925369697 124083103 138157911 922482563 950528109 381823177 617818698 894393730 922148861 165045712 918098209 160456751 712113492 852515457 981422274 372674760 930491573 297228735 610252180 233588759 348912460 956589542 994353098 796444882 826588555 911159708 953834788 304388194 745894013 711027368 749815176 458477900 879219848 901720743 907592651 555848754 652414249 404734213 598821083 57450281 867456340 555308678 779681665 343328388 721623042 914287558 984546417 670725511 942987153 69371744 495210176 76496672 538822384 225216280 602085262 869269825 961626383 81299414 566438195 36505705 805561394 707450830 834526925 640634661 792679235 257352087 427492343 347907422 425998075 215918582 240669255 896508198 937057364 581893550 966455054 380712668 593899666 211540134 892046047 681039798 734782711 233366177 358478262 600673089 793132886 592408488 789841473 967902591 981387449 145410598 704200872 843501760 988522353 138645176 505005203 395227887 740196799 969353526 996339986 808161084 914586246 187499160 537044629 643918002 948112394 793249345 979383763 15784716 850074297 407319607 806491811 980528912 993625132 251249031 598029627 132826158 467475682 491187895 731183840 651855035 915940914 389391627 615693770 432792350 495467961 349045063 792404154 949112054 978701385 444865335 707893312 550411329 706959476 586313983 634165791 534820342 768919599 355757796 858708481 431451083 790672146 568620221 774830658 251386443 828281189 293621538 623985296 784527969 862333441 622235624 715703829 946753087 952220936 155841770 257196684 656580063 812312801 747264782 816892626 152654050 981841696 729979182 941307707 449318358 560947875 711653796 974922378 480165551 946235425 596474328 597920051 234938098 349937929 96231933 217608019 714098659 921216026 969993879 991949510 903602960 980641192 486995071 638468794 313576277 825396714 846563608 899794409 604800540 864525079 447415258 834153244 951464693 983116387 442796669 889550671 579842753 688573254 792317521 793525016 198981833 319446987 959911894 977130020 894649463 936343101 920478361 931070668 997750593 998582808 443528796 742928769 432215393 451147657 915109125 995460343 16836069 312352000 851169151 886404552 456407519 798215070 388197969 842173817 757740769 830648031 999897008 999991796 872730381 983366970 812089342 967937812 336504353 582686435 866796675 941567223 29989528 426422318 256563139 788183822 81128397 781921546 40096298 161352765 59761169 162722155 782834265 792872001 623687766 656863627 440709253 551821742 42346817 581106382 233245160 937668927 901352301 980560964 467902915 573746554 192265391 348218520 540769675 838176004 377363342 767357379 213701269 622125933 486696725 876064043 875637104 985665012 981089030 995146839 221718854 350380855 360753238 756654952 963705054 998706930 960127804 980362327 467896784 916441122 465739605 861264362 966720546 994540668 110216171 831877748 490502468 497530739 329507288 380121156 812350583 934284008 474500202 936333111 562066574 703075576 892762889 973395168 301458178 887459629 829359756 955319564 276786368 599942295 458357587 578756440 296290742 993176907 672836946 711622187 146547210 631305607 74747975 377381250 13074083 897535821 632320653 679578874 110681800 547863097 582494168 953065803 995613220 998678503 580491544 654433421 292151205 990835744 33873247 827405810 155779311 571019955 198304870 382137448 912296972 980828541 915271071 939133681 99540631 851265897 475691942 482074612 11435416 199350671 701596569 923969860 139994351 478701845 895827007 900445820 60571141 583387734 269530012 501008154 8056161 642053917 969469827 999444199 579796380 765069286 110929096 815918631 309772052 483348546 116534075 820280813 279235457 509013813 894682730 956997001 379995277 392422951 799377936 946321171 324719337 700474592 978145114 991607558 544346961 902798731 473534074 887202187 585257238 769342563 424241063 499150373 447443906 621110330 764664908 963586560 59056291 317026106 240113952 355960743 674743259 870122595 830662163 983246242 650596378 801953288 76026718 324953896 391337864 487999170 926190323 967008958 67942174 505071904 301067360 514927683 993746355 998443195 994432311 999279003 844652573 853316051 405906210 878631882 767658387 878271178 60150426 297897609 824535204 857205125 256225711 946445443 493034314 834497089 924197846 967687952 879923374 946789757 970812947 993663496 500026149 526620483 665539353 947353437 163653269 457567174 334705503 651272209 978618278 983377292 706816113 867350335 407780898 586697472 672791676 789117586 972433613 979077751 691119563 992449959 833440044 855699548 962981127 969592597 200625259 477171106 489892516 573839212 897704253 979117096 812598463 903111331 91209236 823191159 521808401 986010821 932339592 948826536 930514535 955016594 928992940 995924090 641318038 852474818 37209927 716939689 323286731 419578743 818363115 976184332 97572647 615370557 56331327 575274372 360809103 642516100 84331210 521245451 679542836 933374174 950759165 991295709 756332574 830296382 246113495 366524544 909732218 980072934 581831104 650381955 978689650 985184363 120285446 690996072 639211470 658731472 389900763 993516591 217659733 618894336 450173222 883934975 787761774 942770906 894287026 954476683 763339086 990648627 406594736 711347884 429786334 599243839 861203128 914214029 190462624 329373781 688195449 826203840 779443944 841756462 316082436 688671939 228850478 320581423 164993085 292336390 904074180 962050573 683924860 977748382 359705644 635244345 82562431 329023265 684002184 849488661 76346657 720328077 89045317 712723139 354498160 514933622 438994064 621384623 583055104 716516703 838168138 982964049 560989200 606902171 222355551 625194770 624983051 681977208 138768561 184241141 988810508 999585922 165078793 759990640 160760793 467009925 772731617 894777445 770105973 917131744 937111513 940683999 609804785 724632309 985375396 987388395 464972479 587243412 689785789 961307043 921988147 931981648 381815191 444884560 927015579 927036530 870745796 962389378 941516991 965678118 281240728 395845516 893228457 962888309 921750037 960340552 950621361 953871393 169355455 209154360 102955420 583177433 768150891 783160807 183534079 334677548 725334858 833698307 616392740 883384951 643721898 875991195 84117278 770094817 735749574 741251363 888832655 954627136 772642032 846978239 145388500 566605420 795028932 981822353 330114698 991909991 703821535 941987706 605646014 984183417 838989571 995451460 353234823 709437034 822470421 986441005 688979539 689525301 87385631 987485191 305155070 815844967 453921793 693729668 953773530 992946535 4995873 485562913 626077388 835980350 498980790 598229324 263790010 838257214 415461540 988949783 556354512 583998641 104556567 209285750 888543605 969400603 675309374 821950395 391187280 406303435 123887903 336417709 366352190 684528282 259850977 581168295 353208660 410883644 420528228 534086512 871221445 978483382 681923830 840898571 574320687 956666743 686029827 924106752 495499839 605314139 120086245 505200815 542023037 801991382 203012163 608205370 271868769 352301314 208202355 692137837 637158979 903517513 949935750 971354039 764574175 777373934 667977087 695570691 544294052 585944625 98480283 517462634 513348665 956790384 650532080 822421249 306983907 817747122 764632867 769335676 176410620 484739079 436065364 938670953 87392405 159737555 428266265 890803778 587636606 911011972 583185556 803979310 980799386 980995570 954332187 974966003 588362795 601925001 997615663 997815277 913927851 958668519 236007803 577406970 707515842 995115527 402524915 977253070 716156428 784370617 814951020 857492231 745716524 779590611 466102096 626895528 891135192 937671743 629961690 674596594 288057752 634229589 938271812 942999397 707188333 907350407 798393316 934843261 45500710 254850919 856120715 969716458 925288379 946165402 828289568 911555874 808853632 962113906 812099986 846491716 67257585 94745268 4126610 170752743 578241709 957581356 957254131 992502595 228366321 327449260 993978534 997344102 471622026 846395881 62823012 465625135 588748866 990891639 123275569 995760851 178708829 936225918 72760710 200716859 867331141 944277522 115353535 343119620 860206733 975612949 77073128 781989967 833902879 934347228 325568292 839502947 544741079 551692095 126995450 380254074 660874658 993791024 209512214 531925086 197347044 349418008 632268324 934832873 739475197 931945887 39238285 933009584 939979011 959852695 958653532 963377326 576301398 930709869 582597023 611350261 42732448 725006549 914900532 936382797 212607153 495585102 937007831 973723175 970488650 992307248 218820393 403969257 44625395 776607375 413741917 676252554 687320549 866401725 626299765 677353737 48315570 89492406 48844879 891709134 613988883 749592444 512760725 885248915 282319456 749796043 50181738 305664721 38927123 343469632 752214643 976285497 246300431 503929474 175913110 687406675 378586498 899462697 401922934 784420581 925943653 981278046 43908561 768457068 664053482 797469099 736826064 919436372 948750849 991940817 831958030 856986892 880108841 990562565 727824476 762510271 86575049 515444669 192132504 436590618 764699597 868680016 20858382 639930393 760863705 848959583 922000193 968493080 558683311 620874331 363867072 615581915 531516555 552371417 742710868 982355563 268397992 335472085 364969094 985241522 420700052 484818585 74404461 785768433 973624816 985360246 268504340 814140256 307688098 872214601 184859445 707562243 751242471 818858698 285868329 415416989 392474159 872134729 376490780 576864564 956439096 999132197 889767444 987442853 227494434 598644589 382586089 495114332 905334569 965515416 976153636 988427198 920988517 930127102 973434847 992241812 551497299 924943961 423832103 430388433 1985785 806265595 529858086 889789029 352828883 687607528 936824181 937400405 836467604 907385790 533398373 920779386 207036456 407703253 822874993 997611184 702499218 942299262 978224026 991866690 846993725 918422497 339397515 472358093 530766841 685160705 402755079 760755865 400253649 545897135 28334349 472460445 138856806 761401795 126545389 874290510 115492764 284703326 283819117 795513862 745069954 871519318 774013590 784187194 313501746 849889196 937207785 997219347 58889881 646157512 990137270 996481773 938800302 969188470 670850525 817126072 877950222 936520072 273609107 864655104 92777065 482523899 91625907 698379798 559189060 859609686 428397084 975825766 146356981 898288739 310185854 514373175 875075193 950748689 981435700 991398206 566638889 936684589 377693821 613356245 10272313 119149937 272971524 283187664 497234267 635094508 786582953 970276183 868575336 880085852 869024982 920060628 562422987 735329264 932179608 958385102 221913106 509805716 824402694 842580181 793126421 910528665 98496407 637833345 901396444 973996739 849382844 863727964 474789522 977169801 98081290 187605621 345247954 965472061 991537090 994672824 504436216 778799941 176478557 987734108 198062944 209100332 211887491 693042728 263002508 567575713 493742936 795191626 25727130 145294189 170631671 266759237 342331538 564602921 230104842 643005816 632772669 859061886 488628858 594454299 223159029 297319170 89183056 226528464 386167912 517045677 663070185 839788805 458486904 634802120 699144952 743276332 708207098 837878447 367638643 639304374 536078251 894919475 202321764 476824665 448583866 863175045 859824906 969472160 50601349 732053197 809331310 952950304 980316084 998027866 708436301 844227813 647615792 669524259 470279957 777849389 112878781 310311724 261517282 816989767 395056468 506978306 43297223 878784179 529359069 905659086 552453686 854676046 551331813 718082832 801883773 993783339 427972964 929439788 614057000 760214869 163520862 357302229 418588125 586613403 821223241 840354061 101693344 299685888 130308498 906335400 764184044 868020081 606947334 973888547 418092503 975489908 117601596 234253818 122890861 921308734 567299103 730339094 151102619 706482654 569064531 978873102 623145815 976501438 884979204 901139079 186961415 373419998 63190223 725181435 894439622 947211804 286601876 978655275 380605533 443186673 485150191 859025110 536398414 704464292 921672146 986904905 427447912 552436755 221433625 529421789 118744204 551133810 366150450 639894745 492981897 683201527 127098066 767811620 402664834 561548963 198659613 415836053 38234155 965318064 115355074 719954126 622801865 827112519 945291316 948024300 379892159 538014592 50345616 450354883 714881776 887219654 330213648 934791862 854961343 906636477 634558112 971484174 273329784 842387162 656429001 668115516 553712189 685231037 301556519 888615730 373725440 606669749 159752451 812560919 561979920 742759754 46030467 284753727 375982172 993950583 274747990 627496216 967257476 986745138 814382650 943218601 596653466 603612934 531592160 636353790 499143477 942779371 375523430 907274593 470605421 627989734 133934766 950027314 521084181 625420107 699052390 974417492 169877546 631651294 897984350 920907996 726520227 752601415 446037027 999707232 913238932 948963521 479751398 615815816 481724661 506282327 719973089 805033256 528121772 938657123 810270730 874667756 702191716 731787522 148724495 510473966 944929255 979538256 434417827 960536894 184041516 325394485 324330324 981933692 447036439 447936799 732208239 771334005 882019242 939562382 881548471 915361083 940375535 967385060 741810829 985026442 767382752 948473628 672601391 692207022 490525058 981801661 997427943 998649023 269807808 732965387 379025031 896895159 149431686 190061941 750362373 850581840 362121498 694049109 39231903 139582963 89644697 557279080 884964823 903565272 296368702 879607494 409720132 620961802 994192459 998346158 376338224 442007788 936202995 956731387 354316130 730743698 236279339 324561486 21123205 70645878 98098423 846402675 107079377 143538222 312330721 750406890 830015112 929382148 19886879 644283829 150634252 647110379 809344258 871127303 855231710 928952730 12266935 984630567 734964899 870739751 811179335 909847289 987511479 996385319 421815473 710078825 439598285 775402454 827692267 879846584 480998717 699543373 701679268 747793313 686575199 847493477 375284317 747786159 768281498 900137986 293222144 511425930 552670489 827922138 656876567 826635966 685196804 964383564 891725007 932478078 439187956 733837164 127770291 919968525 681566518 872141155 488089371 894428164 512271750 923350668 97344623 658369496 930070084 996132096 461728729 530911163 412531372 644859496 475682633 834866334 773954253 881493015 623624872 737204814 279197226 697193449 650707962 877242636 908652859 922812772 171242569 973645494 592772594 776510297 405615403 637783926 774469554 909594852 88381616 359388676 914537377 987109983 744786202 965870414 565171497 921603041 542488067 601030480 314334302 820068141 92516601 682781268 425148764 677239955 830931050 853664741 706242700 753895447 765766328 883642932 672801894 691641239 629134624 644169989 309736827 599242495 576445360 677918326 60558013 924137259 609692273 744982431 637629615 745641625 69247257 688900458 65373668 395389755 213335230 629148318 489552695 842740744 714071420 990113721 154286353 648732458 837603212 857754649 91753902 882715909 548359302 953365250 140048638 994229763 314933578 535891831 30199354 859701057 284924074 564552558 24381128 428583814 648660116 739765923 532834189 902742970 903082982 977070064 897059182 997708696 785934621 800326718 11344897 393669476 966266964 978561353 615314989 674401328 104357466 899557874 768151620 934540354 816797722 912706183 137080953 596270454 324526453 363655874 76680812 476985940 742378702 780178963 778875972 816019199 781760801 961901414 198033741 394756132 645986300 647014949 803341855 818173281 139618665 252893432 339243999 902193575 185337876 980043418 581293849 635165609 651646384 967964885 848866653 887247500 20965017 739606129 904075125 983403730 935739960 939819100 968194829 997291906 440276366 633062872 816879665 942383584 935436079 947643163 560777765 739007252 942804794 951762614 436993392 680058127 815152711 899796088 343676142 556267860 607134702 793228098 469529593 650737963 651935105 838397657 735284474 929654571 238657562 522823868 94835914 466036008 910711285 947079439 383957387 855603482 763279049 869987046 518734115 737282520 12751613 155422421 614534070 835738711 501376467 932124992 364149491 838342793 119867500 368882492 779282588 889315100 279006289 738864599 517919441 801476079 398677006 553334307 116894566 634838954 213986148 712392869 311800676 639336890 154194749 249403948 561552941 706071880 955991559 986273601 994226411 994954461 248779947 553792204 502718669 781929264 74157054 820904904 215684590 699664172 65613459 392442160 910189003 921745154 134011232 509723310 675419150 796972411 922979444 995550466 38750140 173421590 405570223 703699364 938727929 997770593 613373701 703697051 324429856 820644716 420054799 487110044 157066816 880026650 133936649 330927567 91709492 519633338 990040484 994274968 634529350 753756719 847072517 888906750 550046124 974572097 366919325 444399912 762088731 763941303 233102441 259938094 620592063 841920222 99385705 434908778 228948276 876817927 291132768 324650359 130649184 450843601 79388447 172329714 172741054 964188683 946841441 970195190 411304761 931840360 145717502 692673893 961431463 980669751 140131422 400233270 382515875 956976234 67418531 445353238 708866028 939255402 450235557 622170573 847084503 955045560 859169374 966242053 172901513 349045596 490067668 598194847 934847671 993888827 820618678 850286267 295478869 926270026 677057295 931317294 892132198 949828566 538995292 965298900 371780625 491596202 332305572 597521291 270567627 740086242 780347195 968778259 551664938 816301552 790892762 872217988 112083678 172210465 298995669 338507517 186707845 589717663 67480936 351929480 825206942 836196481 154629323 523314092 577654274 650649640 692124650 763327626 846633899 998237206 597556764 819854489 496460697 983035367 316037947 784631649 730816122 754893355 377054952 721716976 919321270 999947456 435817717 743393789 622428067 970708047 476603508 832475835 480134860 906305095 935095361 994344793 277213017 459990051 421753135 702444779 501932726 937356986 384251601 657831342 401860690 705836755 556094010 981508318 743945669 905063096 936239617 962035526 303697687 562289032 868531087 930089671 796107583 956183284 133565584 653488676 142934341 512390719 576816222 873644125 212968805 243256401 554794587 974111881 878880597 884684669 689412592 858514860 464414759 472568049 594118278 730419975 893004756 943334358 40878560 598467389 530576263 743513335 512966935 619177157 922517417 974110865 969825570 990028088 532657000 709633431 998457602 999222122 670808853 809301759 76900791 377529790 95423401 737282841 111766921 181636307 155951471 461046049 662409243 859961288 237699185 706694207 218752659 311573055 732626200 851311501 413984151 425410833 151772878 807519347 637284772 944422088 270825668 755071464 663360407 957107694 169498821 552159384 413747510 496073222 595829678 884485780 405494388 827074431 198433619 485967423 981363299 985189833 113829422 863822289 886598285 927676428 378228700 413991903 875759739 945338321 576700420 956900140 194036099 901467912 661598983 929556569 686219336 839232849 356905586 805724204 656013313 733694022 568279882 924293026 502861018 545585927 240490822 767704795 254561830 982488486 206229488 366688636 635488348 811159632 205845760 413345676 65579559 774067759 995259693 995505597 690026731 819633826 481584979 624227157 768548455 913186182 960818863 985658149 794573181 926240659 361737190 462750091 735653696 991222878 541482619 951044123 638751720 965799676 729076433 939336927 888561400 960676377 278484921 451388938 963827875 989366374 432874817 838066062 615882672 714220574 197614087 686656893 858322940 918987304 514034380 879507528 342269857 437594367 361435598 944429179 546403680 881186422 61648739 530918744 321658094 527827486 502869593 859297260 265255781 732950963 987154978 993383092 955288678 960292309 109042821 157817581 611541323 655505985 707200299 962438220 246427727 546984756 390008555 814699703 718969735 980029883 253459387 991101075 744826703 853436055 834161574 917994303 926347539 978366279 594535207 735541647 209063849 478126556 611851497 907704676 339658482 705668655 223089652 350461529 988465036 998346446 300999013 610806930 502747349 893587605 614328354 846655863 642917657 823706943 228688771 892796719 447188945 823283722 596437671 827771401 867074679 900811377 779697710 794587617 529364534 993196210 735555815 857058890 557123286 815597488 873877911 921187215 897165412 938962259 30209716 972424041 599866946 938128890 837914928 997233300 956103648 998199721 690587498 918303682 619803643 735761732 218659205 913297576 934977031 970823490 616804752 889501825 227061949 887251539 267387902 699652141 272922311 925761855 521524578 947114949 918035099 952163170 578517411 774495803 526520710 887261264 911705879 973891185 302419535 643774948 702385465 977546841 772233465 855344272 155729702 747652096 748730613 976928063 319841508 363699644 85985552 464081640 538399416 711681080 800011121 845284509 885594377 929582299 799799224 864742402 651028701 750609490 133163680 420288436 529325844 908497339 787235012 879601218 672716219 809162227 311212815 509718887 681378650 924071901 383651793 553973022 923401227 945506610 160932917 538344503 898051285 971885838 395870824 619588933 777371846 806929395 926807743 991442105 111199052 557434015 425207015 710702219 581937845 908553815 804139111 863411255 84650378 665672163 66628660 913064863 556059396 716726793 633180952 639467214 426738596 774653361 815967133 830467142 671795117 835807441 677185118 947129759 741131209 871960864 224785002 723701386 566325905 981485843 157552061 644624719 241211193 581704446 434592579 954021828 552549268 766238730 485394491 580523866 43116062 351157077 226567713 338506022 950791947 954573098 143020938 316719912 476098411 499246522 486736165 681612049 751054708 978058170 646657930 997216070 567304289 949730319 678899688 773698575 59349261 590682095 666776848 694770214 737989574 996023780 657334475 917042085 817159001 857954077 408946809 492525517 353984502 806565385 553996603 885813646 776814964 789846091 369995061 654476301 944546798 955484787 369119792 580949193 414929922 667475052 743226261 826543988 957708249 993429913 710411153 853399564 409267282 963417738 231966100 393010027 883673415 987881319 226051811 364996928 830605840 989231145 142128570 983125313 816246519 889866633 174869346 975103971 11264879 83867263 934633203 991350865 678771262 873402966 676159564 718230346 517861975 794042651 436772064 923238505 195781562 671515204 821268313 976722815 417544289 744502330 486054147 852069421 247404071 300748346 245205063 523677530 616261927 756198253 758178292 920487815 152321715 942069872 9016706 816547956 105439884 481507209 575015049 946256928 859847604 941667029 802131799 813571458 707208823 823397880 946265695 973191412 38938889 587317918 306311692 580176889 331093938 632655240 402853865 865693620 459527803 726396801 463488083 985623340 462474232 560397314 134641270 550731718 407367048 626886740 385534021 789498808 831071602 997401973 796895932 902096126 711172781 901584198 81181274 559153141 210618614 359624279 65576461 290658652 320447494 558910147 470410681 754039571 197768621 529501068 328336305 931199145 670700994 679175906 868852159 915010026 517544089 850993359 698900781 823795565 754154695 813988944 503383416 770035381 830002576 830480706 405590038 509051131 354254688 797988828 470388886 940751940 497771947 837080690 618249838 701443484 744816011 949382543 739596558 884973950 413757813 558045059 110243694 901301163 922700872 965567873 804332009 871655021 468822824 663290992 971882898 990609205 674930041 927079253 547223627 788607934 284623968 698784013 117541453 373941959 362968304 708428058 697775997 705800118 735112211 910985802 64860069 374096670 661259222 792937032 866072791 933515107 736028685 896560901 106502912 543977992 917468496 921517902 235800782 775070194 161142050 732391257 980983296 996865219 662296421 734256093 21091903 451583768 950211792 984028805 712180133 997515524 787445689 934920028 933573770 965173922 308391631 822671066 494490189 564443154 42513294 468594149 400154550 515189925 262122339 421995101 324191023 837362397 304891655 332069759 598283279 843473479 737331620 745887179 588284325 606041759 153992036 570462288 33370904 515796199 28646879 131029182 804135089 906521537 423982881 566191486 220982209 755737851 280642572 659039871 130757037 331407115 504077278 972175777 616343107 923325727 797769164 988639865 108829302 556922058 151855783 915194935 155617575 163436336 670111500 913079142 91340604 299467303 331113049 703196350 83907382 488391780 322207575 641065894 263285515 707119807 207442360 887754676 979396334 979596217 599814081 735770364 227401584 321030972 20195783 397750342 848249432 880628007 282612345 833919457 206442330 737125301 363994700 538806265 478249287 933998266 818579714 852074624 646142943 679207633 611738241 717692496 337358423 717140342 948248276 966720058 470320785 492554658 616166118 793326041 916546991 950684736 806642822 948312064 171807109 485615634 171898039 651198842 638867315 697551896 667203755 875932263 122238866 551624780 991231553 998030421 710127857 758628194 462529534 716846829 32602484 822354282 454476290 582753026 724299387 785411798 419837463 805599750 90371040 459728803 932327969 933128032 325705546 940562758 289444913 332383821 638667398 876499500 455257292 666160599 809827461 886522780 233014281 380264188 280346464 764824206 218033269 648785184 803794356 959073213 355866259 505686090 54595647 186891486 82399115 895449365 167966862 503586911 607753871 990734410 905260101 929073626 372342520 417795744 338242737 970945070 941968316 954616412 110151675 992460058 740298412 912937880 697459077 966995700 280269055 562771474 203500018 744750181 307832023 835165307 314754740 910484923 814000337 934746421 947281425 960309099 138810948 642123128 108022431 183678673 449379070 481853154 390990292 595932446 820812274 962149174 606649523 980350165 339356293 849973462 493748720 977759821 257797374 608086182 642617283 927835942 946276459 967275849 297690833 899074256 117349770 730768447 597268132 719808802 258037454 456897413 906098964 926810552 192373760 696188944 894040647 964458106 971747251 981393594 833916853 867768249 323991750 930863195 396398158 503013649 19478537 108161754 583500738 744404501 722298427 998910091 422946274 872609193 356371634 462442865 740492377 949711267 213025214 233331939 933836124 951921744 848290071 971720226 440189680 777200214 354711348 611562457 777201746 870863899 921467310 958569519 179838613 387328530 748609898 809383033 814963892 880999424 41532526 801484068 135650118 978067967 526169861 925190916 500208899 898531869 295003401 842592002 542075562 642479668 471569647 715413025 589568487 885042729 899582831 970575760 785394319 804827788 140825886 224172553 845048209 857392788 605100381 943518329 436349966 970928464 603384215 754291566 489740906 853719549 780845193 909375044 99830442 355085866 473525026 812363428 487628631 930829017 66166713 483103982 313903616 495279357 33828330 614043171 672870964 694365515 249208129 431732438 753287099 933147001 168952775 766756015 908086298 943315135 149675164 881105039 250701526 267108112 635145991 755738521 892299802 990744527 583348738 945633530 695984375 811505240 595530587 742545136 890542264 985200141 131191298 305915941 607697749 874972201 34487440 207074516 879713640 922769544 982501816 992556764 791540413 797533253 640300779 853837528 210635392 429825093 929790065 982325075 522511291 669481890 491925806 519970519 829269243 976819765 37651007 669909769 246973732 545233176 21772697 694159438 80568332 440941719 704847840 982701830 543014981 556525638 67299047 978871486 244593232 826509593 703398644 896357789 227977239 895089868 277121912 856094803 77611681 997375071 769208157 814626187 849875491 946014883 741343354 790529421 356138917 768931260 553559268 873675074 585685669 821217399 610451985 628800403 208739711 453305297 464844737 898514742 705562355 965274739 374199773 785101356 380229150 857686265 624726308 740716550 95503272 159780349 181466419 301319836 419522750 806111075 618803567 726521930 820501938 976700251 853193659 968878322 376929930 757732161 809680003 896723135 593228767 751471134 847375642 941157479 664501777 684386404 507860773 796344811 376171819 438046895 213973637 959295095 60562132 509694469 280618232 545952666 487973306 488952737 235862110 645524189 810487129 994210255 301604632 614664577 204515787 346448466 347878532 807695836 952961087 963056218 225166499 263738587 556597622 733562558 840825131 987461189 900478002 923022880 120555540 395992683 631622065 645373567 839218083 864989448 180331337 462792125 891016457 945479068 535741325 965856365 809851594 939192987 118255955 712647113 275997628 894281686 767818087 866670448 652984784 772207472 142873417 936218536 441284277 833125427 244980719 713688216 479672559 694725058 781963669 937548895 923412717 956791946 954032369 983285614 682352583 971732787 974754242 979648871 746119096 846175864 653204893 977461519 693990996 764782760 343871475 821105434 19009037 228281158 917506123 974088389 161802274 775894560 566814163 973574858 74556160 559471163 229837358 813900291 939386014 967007902 166726187 202918143 536136702 836108599 390952034 439810033 155112088 347840920 245085315 784456899 42657977 642625754 514040936 713899250 796749621 932606603 552213985 865236984 434342342 573796904 44922147 168951898 571112668 894156722 583952187 716648274 600680554 705821710 638448636 827500048 885854020 992485628 346183892 372141749 349825973 493958358 740103074 776012981 456013359 492693403 426063280 660205247 61531308 740324433 890740537 951211904 941704293 961122395 353800396 488584942 396722084 589869340 685950363 741179682 910547435 952580667 563755872 608303162 577723587 993305113 173885533 898154838 386968377 783516215 21441188 192788757 134742420 569605612 683072371 975630101 253570747 805975995 543187634 626465898 954598293 997836490 565889137 865183734 312788781 419748496 94526877 887196279 188526296 718929152 422196306 922303799 164468881 703123790 1633734 988276174 692937536 861433239 344105509 435227779 66097614 501005024 398043133 491135071 819951437 962251954 612212533 797144106 954766997 970075846 123933447 304296138 459089807 935932460 679050560 850819256 216406251 266048180 303484201 438314056 298504314 784594438 827627156 982211540 526033409 835722432 988555463 992112872 473436738 585229398 169747735 179688975 889178800 962004407 252335362 286019044 588663555 807205784 152543147 907654311 953422656 967586868 567641159 764131276 476068716 942925970 156785284 888325859 816510722 960430655 358008803 440552789 659246242 708435554 942517093 971488986 836734733 882127572 665792693 925436675 268699160 637626591 327839184 987252523 45029936 956301557 131540665 216550199 241656946 715134746 389505252 825900419 56809757 57883853 537812309 604586559 90147907 516325354 648661188 977324642 900410452 984155383 562519414 999375596 674481746 879375346 941196600 972442499 33838265 347582227 989097729 998981270 22491647 31229503 701730372 899819785 42535532 487285326 417269067 961112830 741084351 772369283 814597648 900918649 788222577 836355171 551992013 875021566 642151886 795995971 899358934 957028592 362905121 434923044 961983954 991998457 469534809 891794897 53720184 869219179 22840280 276569432 923869576 936222868 746708890 828387239 823150591 922272557 304826277 467176864 196437633 987919619 751680064 935064323 563836958 637497504 161669444 308797150 404629152 680094059 655022841 933360173 145303657 848673957 964637046 990799865 35425691 857015370 614906345 672721458 478770545 945903151 647240422 796890231 333057842 378654958 728919642 886395020 185040935 396982414 715803521 798176435 605419959 743943391 317047110 610025724 730028096 857575896 505234649 614895647 357961665 474449533 508593060 627820850 840517168 989952830 583201120 628535206 250656979 762715872 875114918 962821140 371426079 948383624 115287424 914611580 528053228 836467342 74392754 851153578 828346562 935419030 809029896 824114512 142041814 626393657 906697850 926502958 104044201 571245982 57474612 325746487 677306335 864152986 543133947 929773262 517946439 602795431 970019595 970770435 532160153 624893261 966165892 985894969 231093426 314996149 921517784 991323984 56224656 258219739 273704305 731186165 73794846 636464035 243483617 494541484 589571397 600109783 159378898 209871586 403142414 798918292 16558105 652426309 960131645 981867115 139396738 314355470 341298586 680699331 159837326 745078119 676522264 874620008 861424533 895955568 754149767 897013620 312764933 680080727 282905372 603804070 307218368 690241114 829250080 864696920 768159752 773085024 739896760 983818517 217628487 610950601 732982588 941420326 840860168 989947368 326423659 354972089 142099736 181130788 411940165 459432699 448810014 457213614 48038453 430160308 132285008 632594704 996787333 998572736 67203040 499664594 597898316 726467489 602573454 671280892 936777189 959541515 995555292 997064887 559810887 611683732 386561500 814646855 818949543 879337160 393265924 872710851 610221102 949239943 482369398 871450194 587762815 979538542 74637451 743585861 900578853 962719754 303904428 508820636 160258178 254795158 977591901 990072728 453096967 973431957 697231481 791013408 602426163 992497950 665580493 666167667 75159480 889714178 612785893 715302475 769053854 846238090 97169515 954349094 271503810 907508394 922621714 956425751 782426105 827274434 303416666 821245069 893569047 946069641 814797897 947384971 557221657 803406519 97529718 560862984 412574995 788246631 516626120 875430034 568373541 738914291 750023709 796937783 311152093 989960253 88261097 508023915 709784258 781471930 886358595 920504103 490829430 666765683 539703970 841657346 549865345 876661565 326847917 602423259 347694876 562179103 357182085 426359128 759603442 875781387 250001141 861882505 12632858 709682544 845576487 993946353 897636437 979430471 689991007 838997020 342250329 545630622 515673561 955336293 330389152 344488531 474755922 892483495 93865542 154483663 564370831 764147383 824158335 968170625 939832104 964861434 57538414 437552213 216575325 492421509 355779389 774878969 194741461 602326104 30376672 658646582 112389039 261312625 338061510 751699520 155943735 221733518 724854206 789147054 703316512 741839442 641823087 769584496 573856377 747118422 208949881 553936932 370845850 855248051 378162266 656872599 752200636 770120976 338015988 882431502 642365148 792824486 832155921 923844851 816092732 997134307 529682548 594228336 342121594 342580727 229235317 799718752 695790441 757079680 678877101 743114949 342052807 840151797 715262724 896862149 923502716 941681083 273442897 510279843 968913959 999776900 145199496 974695681 913756237 934761231 930481913 954008490 305677577 358127478 968630489 979182765 29122899 980215719 994724540 997979886 720019744 826048499 956459471 972855112 260421054 629849014 533379011 715313683 530581711 696496767 135081206 988564062 832608394 993866612 502856251 666382821 46770420 345164681 241986907 384365819 669990949 866646670 551071514 743471594 771823546 914552368 745601390 786648392 242733764 836872718 524057381 552317363 252283199 340629283 131688155 704811289 622844540 646288970 579104748 583973550 579520937 790985624 821292853 826325711 18954876 186578764 902823348 982006426 610192143 710924628 442563668 816692254 125196891 711494285 379153044 700460732 872420414 890637054 74030336 113960309 974995311 983912617 893776529 919041581 933253254 961666165 976751250 977998435 289791174 725341606 27175178 501795798 846532728 948712482 396096639 872260398 832105192 845688195 994973791 997745814 162752070 436660313 569326934 982808695 135110111 946531356 663056339 675786061 905805222 993919771 277138205 524400440 280536498 572051096 656363045 829252587 76045931 108746505 509966185 751396906 486728711 494967767 606277972 832135269 742311318 753679212 554597915 660808425 696005304 905398046 697027914 825921336 866487748 946229235 413058291 417566313 464255357 576974813 988064881 988424369 807798512 874226624 221756264 659834776 159762620 763255008 39336523 594201095 983385966 997590143 200697611 656781587 449325346 483096237 969469100 983282541 934041089 980235615 964040681 986054360 211721474 958017243 19496827 222389625 23981318 395374153 551204908 831087889 479707710 979375462 478845398 647435059 370773501 989673494 143635594 317994747 534294326 872822739 267124877 569168094 173061202 301761053 360045672 901896707 958274306 997735471 323968898 973602109 715824156 955313701 769063715 828548868 405580417 797393040 343132911 438000112 31014242 813770234 37775431 48371287 246771676 790337895 459951780 473560812 154711138 373018859 524214809 757310062 773409116 893679537 999037821 999244668 746838664 884885790 982612536 998460856 531797534 589574147 230156517 569122146 840488594 881283371 567334026 665969591 321257423 837182645 893199607 919562956 384159378 417999563 327424343 848687666 197929241 677701269 254883762 776477459 254343345 321083562 398455927 689925438 480019097 926675060 903286862 903758061 311595091 788581381 994861475 998137584 251237729 531786803 363514017 515592989 161789650 410408308 735790360 750923855 866516520 968046140 582865390 999305993 107311932 716875173 321820166 452649506 703551433 731727273 182169218 982883155 522910945 549860322 715409871 895440300 21500194 304837164 252245210 422751427 793922982 843628424 541780597 739510755 712009112 788553296 791963894 824292026 264377754 639489995 687087583 704579678 43343242 655735533 781684988 820603135 117007355 690887857 752209066 912183432 439780897 887191039 178871616 237700443 342634676 622365552 44268398 852780499 42377111 262830351 262189910 397942372 111767881 732725937 436411721 925238597 340810445 447990336 447312205 626065675 497398940 720259510 503596088 644967921 126855843 512925651 870106586 913866259 284178110 735405790 44563284 268033366 877812075 969543520 768609348 969494195 864505592 994587400 264953965 317261320 412063686 469393851 504523501 569049584 469388687 639296085 362971081 819554166 678909829 905676293 301746850 585931795 927379508 945669859 333068340 641787083 21904812 123694830 611952666 827934727 10822404 972006638 584956928 993146683 490357967 613933068 370079385 700469161 577756700 950805454 146999067 389417582 102734771 693533835 128625812 892219057 497417851 509878967 393223473 438995248 67578559 960770074 40046686 211929138 426154527 427731480 74264713 587138673 955856040 976498568 98422926 176203756 926651764 967315279 150047 373590401 158061102 989099856 221678751 893948233 92145516 559776090 119288318 633167294 849333738 985435753 943198168 960756205 860327875 896857206 578178391 816330967 51442069 472598458 686056638 914956041 371194749 543570397 879194507 884886612 930849628 939814067 487226349 805732697 728142551 773274683 188058916 481837615 647925513 766968660 659505846 837740331 252858813 373010729 394118087 894840250 73820244 512788424 829584241 958913848 460227181 636215917 707266604 784162961 246324181 409818221 307747442 789571317 106046885 205617795 927661222 955389465 111498195 307503956 672231955 938795713 126422147 260139650 655489208 745194448 11856117 569545274 270778864 737488992 42684766 85947089 703894737 910605274 161155815 518058476 514505018 953237302 429742274 537402619 409156213 911873996 275503848 313945711 878596187 938157396 976629689 985624175 83532149 278267847 140631433 864311395 686805071 892175355 779545486 891057112 365321887 411539191 837622489 906118680 977158405 995198669 936889547 964579258 181012086 319097694 152288299 753229017 21856124 441126983 842612515 864448797 992774797 993186184 163599201 237674964 355283075 437979386 316692339 637714987 86552946 200858317 442351115 451320022 724092553 915219614 749402508 786446559 891314812 984064471 849920520 991565920 931230823 972611772 59826851 889524863 284703881 345254750 822720980 945351184 486190718 906563113 867460472 887221182 748991092 764807879 820919267 982365708 651479523 856364577 285684424 985895586 309805624 578343257 695456676 856020277 83468461 509759476 238380079 893960229 678192583 733220865 799301289 988991355 750385354 954494075 919596474 980313946 565082687 795033954 312641342 940468718 631894334 647436192 708264294 876181165 362309634 766449136 464045812 775466467 700855954 778829665 314760928 693841941 279891101 556696614 149807009 509025998 39128712 72636877 494574542 619996757 124755829 704916656 572837818 991143477 9963724 69071863 251021313 877691339 197709540 460556747 305227285 507237092 263592793 405182795 627881026 719766037 313309378 946745033 395957885 624687656 960622964 993181875 985860760 994254018 738313924 894885557 951087642 970719993 805918629 885408835 627790292 701628901 896160584 928949319 716576720 796964395 614176699 633626520 248717801 404325334 332947750 891272799 573012195 922085793 200354653 533599370 10483622 368963887 338691498 480679529 954833926 958457221 313790159 941481133 967844787 981416613 469345052 662088259 949475253 998812921 904681797 992313354 152410657 683017459 112474292 777842780 148373551 235604276 156157007 816234475 506774547 991010801 856214296 871980096 922707701 949295991 834172863 939140966 325836545 941076813 769730980 918011599 775860820 869009601 921966108 991043264 510318670 769871154 438532577 671142748 244078683 341652476 433731314 798266996 640164118 906536664 702389072 711146829 323321398 371745714 706821348 725364568 76693078 162170673 21291003 462127316 917947523 931083881 728116675 853443779 283887135 787730695 268103420 553379643 888227313 988089614 805690931 910577760 44680796 281845251 728827965 738038186 662994525 850538418 316221915 940407138 603321989 994289521 55123260 226269007 158358750 915665896 342740470 428256003 999830658 999955593 802801460 960188711 246320490 943336778 116913799 619257710 535214876 791283184 567221960 600056211 747214232 897229615 725495680 932030567 230571776 448110349 551386227 995590235 697039255 981894617 666310428 725672341 703212809 762436137 645298600 683684150 995543389 996216627 161278149 321497534 622883019 642855380 934343792 989026982 99743583 162538746 457939609 844980982 321232080 629000585 146360519 271520725 244380459 860754962 530707394 605453481 387677183 787807787 893535198 928883962 153031071 947878052 130771156 985770268 617468123 957828203 13165338 498330267 687556912 957677086 484525597 991105211 347974332 426717262 474452887 822841254 418374964 849737659 74644191 707935747 167603546 312640952 873009149 992924401 624250832 864429711 411172411 508120577 53902499 79527264 618574196 675631995 426723689 630903809 87430377 943508949 719804138 777405895 913462383 995299714 279130772 765736616 180624647 941554209 732129945 815976791 62957797 186277170 614933960 808033358 691685473 931929076 160207701 716714215 998976499 999801840 372341313 778622019 133310855 439003864 287197094 314843032 947667513 973047191 594944912 753902266 623068116 670269120 411846294 538009383 157923356 753647315 842866166 853564383 209376743 403165572 428740760 544041823 829747819 968573794 567242704 579584453 265431630 618053737 20308698 179569705 175924224 262871535 930535156 968162801 22381756 331026352 74998407 819495290 123219706 729492563 536822188 580644343 352126118 584704138 454317185 969119352 606333282 609480139 142289155 868414520 946982591 947646375 718536471 783452850 387079917 600347852 62155271 188512360 610934513 616571526 288609459 929241778 781649561 917938472 62378568 97378159 525599956 729042956 301578608 417079732 990882875 993392999 130296180 814021102 521978114 995712895 846270321 918905759 589291801 813421456 580323787 701916688 956685540 986808749 322905078 799080600 136347917 193698823 392234264 722155540 462980937 552906413 877820880 980983024 215809096 445894076 955585087 993446007 436527707 572386943 249504102 516057610 529218205 765000638 11618104 850115000 416270821 781241894 540567214 780437779 265619639 734466604 912022967 980401039 520014463 602468954 478279490 501541510 117780951 316461568 979152751 979296876 814217697 983509410 360483649 949419615 166976593 263849312 904267243 931459140 326115284 826018546 651082448 840875707 457015358 708838772 90016262 451031551 860579736 891113255 570032248 595492302 552954191 947335213 844571895 858023667 100697239 469364394 197867646 823578405 141674717 308916106 90660014 879562453 227924690 586572216 8196893 65607987 443829697 909182436 36695748 614022658 674429674 994126916 931118681 932007448 810969363 997758897 207901743 472694459 557220900 983366910 738976461 884131379 471417546 518560963 847373306 925117758 994055882 997383823 955939360 988413831 373730241 710352475 173035095 315034450 460354627 751418179 141809826 722380467 968903017 972435238 823461157 864517314 79730443 596184736 699266632 824485388 327762273 641554220 619374982 786577017 446297184 695715455 204752198 951868074 963602117 995340545 60538768 719219637 492534428 782999134 711894673 798255027 497523943 895116621 517651921 594596695 687620850 759227203 846321845 976652259 811269444 896490841 712063733 786453325 268274193 327394259 288450611 822316899 961202134 987146634 798263483 901497973 694053650 796316632 914384195 985895740 266175039 321849069 177223512 569914742 101260 879477141 474753403 977401743 795135891 841880048 161082629 245965013 423540912 654565426 941964667 980416990 353983214 714787873 569945685 698314710 592175752 687009690 829047066 878813821 267276132 672511687 138596653 606754688 435061664 498554344 520829265 980041987 957993202 996153857 764361169 807773618 616144138 994484002 790921594 840136203 392261498 745162440 609719174 806255181 526981499 975552720 986307851 995025513 279703781 810383801 623361846 906891147 535405358 594153948 187688749 741405686 615380711 957082541 586909676 733210008 834864614 841125530 383424719 777027420 653864304 783805570 832043348 935480951 663938806 919764827 719211902 829619861 115197779 311957393 475037361 545845441 256374636 913294598 239973920 970195686 385258384 529711107 894518050 981856346 871779737 994253286 97692777 296093941 272442362 649614053 482703721 668371286 494952270 909521051 10466369 437766731 694085261 789553188 10236733 808561267 542340826 904085581 517608152 784757530 656194462 851528490 963224007 970470493 523091787 897918149 681435564 874297982 567930126 955577623 485846858 521365053 693615797 874359302 824090896 898898424 424594771 451152976 529928785 583953411 219446960 537295136 300347228 397768717 933423295 939452605 878455777 975600253 923881790 936855742 77589465 115878531 222296060 441339268 900818629 928033397 405789052 701057752 424797820 432822115 104303359 253072397 964388619 989210357 523517671 698154961 954742054 969469485 281039905 853132013 476908833 487996993 268428027 639242788 637740217 668017239 15340168 381864707 44539372 984736212 639006787 684019089 691386214 948966283 929113221 982087254 768440222 973182561 47818594 619889108 643923136 902690942 152732392 591178577 141113564 196689295 44135634 308473443 92241420 182064851 965557276 990036827 972224422 990147633 183105186 436424911 565793795 872143445 180270926 315432004 811579703 929353878 93033742 749132107 492260716 560929037 945096272 953833764 236914584 514003361 986632805 992423351 2075093 452436468 695131152 868505197 522379059 697442877 69805268 607474291 326480678 585796249 307067423 764353633 697377801 886773727 18434127 770220841 478890707 499437893 57544999 223809579 341680386 355419311 914687533 954466324 440960033 601653824 33413436 396880627 21829164 547547394 695574506 875154969 6190306 846623126 465099379 832262247 472752479 973115346 873211247 892236543 293649118 628281500 250560207 414747295 978343480 988431298 62830341 736244797 844579177 951872716 197970606 954063408 397551086 448027293 82585521 802209007 572941637 954553585 892512856 916388314 15464698 836560542 52201437 75942213 94680750 714308798 257283044 939098563 798535193 801886469 46140219 503645340 111074773 339290848 775108287 805920832 23695963 495696894 406235382 426991509 243831227 656087956 741169038 979524442 862798381 921793165 853946585 950954797 638941166 915590288 294963712 464325251 55354362 208460603 670394235 949897563 949771953 959729785 686730316 764877326 47694004 963943225 173118992 631455520 43633472 541715263 432817325 745047298 35594950 371433688 4487869 503015214 662979815 961977482 469680306 714184607 447654947 668834239 651137664 939394534 571901142 663496872 88251726 699448729 981484787 984421063 533359060 735516719 492633946 565842810 504007994 616788256 431106252 436430582 203703969 971717694 227591160 968647104 929062265 959960976 17878582 415529642 426628882 491773271 171960529 596781396 623072898 747671889 141611570 796326437 306977578 745293029 686336126 852860953 530324657 750751362 844389573 932957437 910330521 963354526 351554392 748512728 280772000 942212337 19610072 471791186 192930817 650921840 351308629 790638794 305094994 780342312 682370375 968842641 820045013 899405881 755443469 793585875 828295997 994580294 917900012 977737798 961941177 978104039 236442084 527694121 793509795 893509896 377829986 639210090 986104013 996788045 517777353 828297020 895420953 943217961 74789954 456183843 817117453 856943431 465767763 865980556 611212705 904878167 219385094 755494114 712179469 720489081 204753420 348551410 331239921 682543417 140152214 882319591 842390982 884583478 3670069 62748566 843562862 982323376 537721547 990462635 102575817 483882725 44470815 481887888 927655399 975689962 751009838 811254839 961660005 998341771 137211219 630899732 59081115 102170676 664337357 963413210 519182343 726140048 546125876 858726468 297576980 609357974 34264675 532829165 155802738 271487984 15134630 47575893 778440960 896901988 445478977 982104139 709761820 998979638 408934956 550274252 895909774 985234461 503373183 546152676 520519930 599541797 692160024 802754934 530877191 990347616 772355990 840777276 780654126 976138176 479950252 767968125 632037193 858601478 616541938 782677197 729583216 785176602 510025776 685733144 161080295 459997792 814994636 921206270 748526005 769912865 542649634 563164590 312270566 778824585 301985008 452357235 944268014 969580663 559665278 647636755 282870832 850062855 718403456 892397561 92481892 317141874 710822871 966958643 508444531 944764560 721897086 872456124 334158200 872065340 553053138 920690050 694664814 949711974 664308732 718425150 100696999 391846243 334685338 940390801 14943769 971159506 307121476 578745772 553969437 659409274 286543872 358929538 44958534 73202337 804371301 913819728 187060117 431527125 655743240 859523337 307784702 490403341 846521766 883893429 702650193 737631613 305337069 529712067 926899376 942162011 36621627 407715040 315234721 435655245 907525144 920841223 539141948 589976524 716510006 730373469 278299809 472603982 962050581 979944603 2461386 352192949 606507668 950797874 253093890 419330458 70854194 295693819 804844933 901047660 228912773 973455101 312914404 894496547 82536359 829339841 116503088 583682814 685376845 685611601 704991324 948525480 601198318 981198058 652740713 800186810 294609081 675317195 817494122 868529842 446285214 459758865 546493030 951742541 461777406 478369314 925415264 941990999 473038432 559459426 331046162 911666343 241567770 968693569 365075898 451195383 743183332 890767324 814753228 929583542 325030859 993206298 417375248 630657999 248746010 732110973 644199729 763603521 276979496 483724534 111460303 153707335 900432940 990934359 619954943 727556012 780812685 793508924 808972601 848757981 783826567 842603356 972685860 987908470 226395703 703038067 981548539 992865915 274139282 804440364 204607727 635051632 770283287 793552390 396585872 908907758 268798411 750651353 591099706 750829039 475622261 608099872 279086581 304526853 640615610 718233738 530405626 680616756 858717318 913577462 676387968 868159271 194454913 331672617 868599518 984677443 764303048 873848938 520384881 558067484 250406689 432650083 850492916 986709573 525321496 575805287 519088250 999105138 307021408 416844739 477511180 706689436 362814370 888888732 301403159 342454635 449643299 731504056 710671480 987821774 141801923 172588942 728882562 767441353 892411792 984499479 421757156 726478573 106383809 835444532 362191386 774620096 627521525 986173446 711046333 987183203 984896368 991553617 22057681 710952284 306501949 979610251 995685235 999131928 791021825 843697247 143135424 349962266 662302174 896855764 443094786 998078173 110859907 189611638 73297579 96196831 209403592 790370335 459235339 951915966 431812500 617998049 310448792 706787354 642627950 840779427 125334952 651546334 621775814 853381847 473407343 704628322 56300273 210365099 291302472 713406602 350303981 444331461 391768634 465072735 442848622 664461585 76130004 529683776 907981089 978612323 490646248 713170046 118857523 809779390 891304303 944776670 420210991 718567326 720000487 839921113 317824769 642252923 286851334 541714198 251261120 359338896 100247934 116802864 852578147 941221428 394214740 782554032 543769309 874453615 78552934 370494338 917704188 981397273 486075323 917425884 854269186 880607184 88890607 307677826 663753332 855010768 876135161 994162390 319473130 820804665 543244164 738768685 354015914 789633067 211521502 295032881 239003760 384222728 466476911 844770514 858838765 861538146 657633155 895130411 436224877 543487378 739501361 968452663 465819432 696149901 577067528 933785786 467769063 580996719 359853432 752687570 139663514 865151014 395024657 791298822 459924858 658169594 485833459 861177194 144617340 456415460 964625489 991138374 107859773 669197357 115825115 942357054 781267401 851327713 340699380 972430510 975119724 983502435 183429159 332224266 543833722 591502196 12132112 848886227 710831369 818783281 765713260 765972922 717145248 919584384 779665182 867377247 251073469 307463558 607217129 987810105 409518215 625957432 541104990 565134921 685115914 760530679 505651054 943549305 386635514 747566363 676721387 889406049 807349479 892465106 466704919 583605758 786785652 958117682 541238934 587076370 355245332 931260302 641806718 987062345 320810031 495449930 211912166 737428078 430136554 961666021 194865926 683774149 715708224 800182919 4984897 105273141 270060387 428228554 572201184 767424356 389272260 893423441 973207158 999001156 479860084 645821848 40372654 167505035 376267737 749652873 472453597 987639724 906051892 986253100 502472279 630408422 938935470 967575192 92040210 397911166 98398201 456743625 872523039 942320646 296112167 367952660 859192678 959356047 985753091 989018584 592125814 864123037 486475635 676372465 679884770 978500705 58435263 238173238 138802925 630294146 841067958 964052458 18668158 593499262 287901230 609750655 964235828 972728444 989401790 997458942 945692032 956286958 877775415 953167405 537262036 789672205 94348005 948454442 205296385 539058679 544695470 695457439 920514943 972575604 481987018 959417867 327651663 785876580 219190643 866438038 941538918 987941862 828098407 867287032 611962292 701795891 130049607 416945520 62769278 833799958 68050868 715342685 790703118 913626099 920865766 991066002 342335981 873992633 766357290 858759179 12345941 578104559 952620780 959445761 111710166 779682973 326837074 556122427 985957969 998735918 359848971 555844010 787589805 953552847 554133565 577955406 23122572 409571930 23234489 194547467 963795741 978485173 267387013 343580119 500375299 711137187 974625804 991984577 187899648 541783855 142076615 268701446 65451214 513336594 380809350 900399690 293360310 469827976 199184083 212003900 590659599 860767361 852220433 993777470 874129318 961791889 211413955 379681446 154546084 923354324 915973133 947045909 95025738 962931560 730073141 823340109 30953770 87710469 519242087 809495099 74518069 348950509 131455183 135433788 588894425 824751186 187604256 969291091 694653333 777267964 700574810 749635740 498056807 572196715 586995843 998677527 911643643 975881861 949618317 953115254 780083484 974888568 874069510 987779138 692519993 971626497 449762857 464658277 595138617 904014278 151721318 532014252 320698856 924168785 871370071 943907609 330563019 379063904 43702913 603324306 230957005 837155183 539280523 569818536 826240778 933182354 558599202 954087747 92198827 310270257 920978313 972258772 119384361 497320148 223072218 927813838 247720725 923378614 233279917 390084137 51872750 480645980 873571245 972376755 724705194 906801189 762216862 811090920 982566960 995100913 980587040 984307239 694685698 929315620 338306094 752198453 335976752 369215689 66925302 230308491 507241084 517129920 590677265 675588063 468553734 767591493 760689665 889668429 391973835 667367163 783574106 886775215 855901983 886283632 475867595 658722765 119493963 172223375 87196300 305270485 916439684 982019106 760534916 762505091 229929914 577640521 820785456 912842983 915237874 994626141 595457428 781572254 481456788 748632798 94328966 675539389 351978321 555570213 950898908 969893702 306604995 981939116 77569570 979113192 287601443 853750948 245818788 455914330 404939983 948415108 624076382 804127872 118958738 994043719 881726429 921424040 321750998 387746474 941079410 974351932 302270317 336987707 55628285 583582638 930443574 985792803 835958364 907779364 73704421 583023720 573102884 726109848 112772040 342974650 127490910 772113260 117123923 172389622 571266517 805218434 674697270 989066453 789289631 830387462 147686895 628067824 755746323 906130368 265957141 800653022 290718819 296594507 83660839 672452207 949185424 974814116 838724672 995151293 3335275 151774139 485748504 592639799 830620126 874414986 551050759 840460749 673840920 712272684 351283058 867887748 313171128 553716255 258930420 288933190 410034627 600095778 148289946 826464051 609605644 884626826 321483068 469670806 183840682 773123519 331423504 738020684 103941148 826469014 831078665 963525184 228798564 885629338 423144530 628322827 29037896 774171529 237395008 736802073 558848350 954658863 433179933 956974943 317953460 573899367 245556058 868968313 816268024 953604381 969748020 999889950 682913459 761352222 796920263 843860459 617223067 842987420 953151288 957492166 283206751 971469219 45284993 749072130 885681184 909553475 858956788 972783249 988563005 992419150 826628501 933942202 501628919 787210253 754263638 816472851 579027787 840834763 19687168 748088571 334810802 868590330 842177530 913834968 928148705 986094914 128770117 250237227 724888282 994974215 613232928 743502944 852071986 958030290 293049320 873496796 484291373 565498359 311966680 539645505 925248607 989668855 575457127 768828363 423206224 653914142 677231440 841534445 295738052 522786286 17584881 655028778 811859842 906403880 741437943 879924245 16280107 297155281 101912376 265396287 941419639 959464446 730496284 749163164 307084265 424862184 693863375 757120811 773938346 989616052 833056445 887031814 922863609 954547267 951084664 991998404 659266672 902480726 3566333 547647011 337751216 891181241 806197539 846616030 510995452 778287080 63810627 830778366 411725981 570319196 845162182 988991481 72445944 389089484 612519311 943805830 895267480 932068615 636382750 797949143 148720606 760604998 332518413 683837558 643121552 730668103 448390526 558004813 766762751 816755016 927511012 959342976 891332379 986453947 327242270 949865831 459178896 669181190 43013192 954713909 259216734 544562749 982296328 993731466 193216167 455389858 905630462 950181755 887003281 997228108 758745564 942322732 584861498 702695537 740912045 779780269 945176065 989122384 820254792 917097643 112635317 669148710 554122051 844085252 315771094 698180838 474325590 571120328 273087198 741003268 379682525 505265377 346369695 984792091 623136796 781859446 307316018 495116806 119692762 903876319 713452239 864051779 759391143 855184231 967085880 977163882 483582558 863060386 980791759 995061012 667499866 890644577 112645330 917271443 455446732 699683906 76760395 822216429 769637343 897491126 168128929 987518452 973856132 980936521 286040725 302758498 612540451 937036928 441719631 883649545 504551161 913946012 565069256 688189192 882101665 961300807 334925342 809710395 830304374 988378759 72025249 953161168 833424363 970409046 447316308 713556763 286750375 433279596 114175212 324801213 619260555 821983634 56386958 82138223 378118709 653102683 266849597 451543354 426118802 939639168 111602655 420012620 634388515 797656271 144345422 502569727 335853721 914021669 578512704 666412566 150466987 403306536 429597166 473723953 639833078 831467243 590486160 787537439 621632226 625628573 728360109 852293507 310570212 912456690 202247627 700528868 946153572 958672429 292467195 390328787 263960201 932724046 323469351 431936885 149112537 762078229 561958977 574714966 169613822 224167894 28190408 303136642 249114937 884956384 419118343 672910057 452263764 773365165 564082404 817153256 445608855 919164103 830126350 877768582 292739093 326477194 371676655 743104035 810437589 850951989 39552895 969041693 473660424 730351700 651640949 821493529 223439779 836094195 508896286 917521623 444376936 533998028 500457450 601109119 569904576 581801505 206682091 501792152 16200737 400344092 758693051 889351394 655431650 701612518 970790834 974254575 10182066 222467364 192544241 324093148 899602996 969978761 957347935 974858422 436670256 924450450 947471264 996854072 351712834 812037844 529283725 701484509 886978538 978723714 184242868 872297188 656990663 727638979 85808172 993766678 127212645 333904410 16605555 925627086 420561226 622703692 733488996 738659290 578239146 670191212 803443691 912584993 115710282 581303674 245635194 249221114 448010198 519907104 568758649 575117807 204507927 690519358 613808022 715478005 637679336 948841117 678720363 867617949 202119514 754547323 906796822 930075204 237337147 610690893 1778871 532703438 133939233 938294469 777457184 854049534 576406906 582548960 773602811 896670046 211227020 896124820 728294189 989778961 5337285 15294276 531059743 785487600 824086013 890734432 436309938 558388601 652568646 916331472 421748623 655730608 203139888 590982008 253883727 870112791 644466482 662250541 131879466 966159631 618520998 663233087 512955624 542942940 479667746 685162206 485367597 696075428 471432297 776006271 850762498 971689445 443635980 625444470 716002522 750346409 543675136 749890207 41790943 482023455 926789533 971993683 540212523 904739529 463950277 933769837 41454899 866740089 896406706 910053694 790116101 831376609 597912294 756949228 159657032 504510275 763319170 984339312 194081860 555780904 355264553 824428780 688342785 841670581 721834743 799700956 977723662 983309932 389803701 544303481 839062853 975311545 388030629 773526941 703833135 769269568 574250978 625594770 113689305 640484497 259832861 400582461 206911339 584571522 794078024 953427627 994682005 999161943 818102147 949299405 133386756 611782656 575400814 667773452 116091993 518551524 303849072 710458260 663618201 795691930 87438894 568472511 465162175 930157150 413944552 825847488 452872536 769130664 254159839 933388562 951375783 974882252 173026255 885737174 430056614 753707757 755465616 905353059 949752694 968139166 9279167 512415570 30559119 830199849 563164619 701307748 723999031 811911966 759557839 999440271 152265163 217381302 117765456 793251199 206184927 498698590 327967115 764291959 268511444 815453607 854372916 978597403 929971950 998325321 891813613 901276587 18578710 917657310 500096552 504568643 763452093 909688904 793144022 874927680 439181146 891671173 250555457 365578222 774984848 829131211 883259510 908473708 134447100 595786502 630701095 856094219 406686957 575068856 881268839 921409029 515104246 918054319 159930764 308293673 382699597 896457621 901546008 978052465 886647712 966938093 759034195 869448447 514339191 893161324 130281717 157397731 727337743 915464288 246454250 723067530 376871340 566861537 41555925 54183061 637761545 699310658 44087317 974984389 450413564 494407679 382002985 462960418 681250104 919474636 73602091 355747964 80828872 370290691 708816505 925941253 375068504 808216969 428148852 539281261 403391326 406861045 42268494 567511732 685229966 999395821 179251430 540830335 319420982 796910696 92982505 959479576 455428313 960060275 668900342 934388994 941835972 986973919 902002613 924843074 782744671 866158994 411079743 496657235 67160506 269553700 145601576 369314197 730660167 834499871 50286325 570391229 579436179 846558019 731751732 910534079 50431780 574695521 148010833 231142051 517292895 709089564 252417441 984499588 922243629 935970143 577717379 603931048 645458263 846355894 368482996 969091694 34229814 179246086 230138081 388542228 642260357 691327675 266688140 652822412 333297181 477241141 735572525 993439534 851081109 898851007 398838579 831068662 418875100 711801326 378807040 902490940 904700894 974156428 717253538 933319313 250812154 820222323 892561736 902505749 614973218 627175139 99663395 811103535 560099433 564841439 703505602 871104305 287192086 574079211 981741979 985503242 276280119 637789911 694716775 974508813 820029527 885134806 247095989 278047380 245915671 358168096 407096930 684532210 384811837 735572218 170831885 472449144 798386369 838242481 545699566 989406093 857337283 976757141 763624708 788756631 886933325 918892759 22849154 438533318 951720696 965765196 151199183 761159971 225946507 407227042 730759448 731327362 58614796 699650904 504537435 567202325 295954968 321786894 291826550 845846852 292477991 773711633 591208963 921009153 68198125 175824696 213176345 406797369 425477601 556944354 693409348 886104821 587736604 759789936 305094587 393868484 431630565 591342199 254144968 320735344 372172118 703276961 107408560 806566943 750020429 894965776 314410331 857507578 501841411 820069807 669246755 824253732 962934761 975475203 948345943 982169874 592739165 790380345 794335343 816850408 356313067 488141750 332945722 873654903 655205975 880028969 603382445 781943934 610524241 972899752 324911547 957474661 970921380 995149419 728368341 809161683 485610185 771181674 494685553 807890996 490536898 892434754 975766591 993356141 963619662 970761923 674838180 797536597 910633007 943191716 290312710 432033346 710565767 864430266 333375900 993083868 460309965 490933223 516636893 816501469 705430366 918153772 595558464 784923486 825049219 931020314 220325371 916326400 15030659 389668916 307064072 419777231 970502599 977808663 467688109 481084604 39417663 395734151 178745578 939488374 850413697 953333434 763704414 946045065 691624716 726095088 555875735 878620753 685071856 824636966 618033660 618060277 783373069 869926526 350095387 720389430 866713293 984620727 109818379 705909256 161503735 633838752 600736210 913786445 434454665 821693767 146783414 347858704 100207907 766142689 30309121 782269388 39903564 255692165 333220362 926729168 428886918 467019857 423967050 809727855 774054698 801479484 677484929 947850649 755280618 921799681 437452049 772669978 365623882 735146552 377177073 921458099 762532348 874905740 482557678 774047925 310000983 715256937 717166354 765329833 716935600 784918746 461704140 819597396 600208227 710330367 944817347 986079548 786523019 870373129 156059054 267197014 200307967 591673022 971163810 982112286 707031669 883582053 650649868 960922462 482480813 591896976 839158915 974472960 272493452 587078121 639641556 754615618 80610144 285195013 991236616 996155929 881832464 901268839 575163178 648609880 525047517 714852601 526197683 537416280 813217488 890359411 354707518 528591767 155361674 649985692 190117246 558716425 972516585 994428926 957670469 959192058 390399468 857884609 412192483 556498691 668683358 712996373 877033465 935932664 898065512 977396841 532855203 681460984 241676716 783762172 206977913 652894007 373695525 920091303 321501905 709914309 674344903 959447409 592754838 989453476 89838916 520689699 315653392 488015426 64593917 762441648 111433526 589595269 590850757 624852539 314855198 449065573 161838698 631338307 626406031 794085923 548272265 599317174 106354765 467487306 778706029 831078198 565329833 912367303 595182190 777575547 728812780 826067979 887167897 960093527 430815644 644769005 757490123 842174472 740410277 849930731 729238766 810424888 483346671 626125657 359651158 786630162 881232209 962905883 905480403 964132340 161577594 276913602 223271932 249708920 224283758 289693117 520711820 631465569 779783736 792728250 442762057 604730203 689850911 848023369 877103259 920765504 754304353 902546671 857511167 919548636 229848763 231078483 3375798 447554701 82575243 147112209 335739132 470829206 860226951 871862639 144874255 156202111 779896585 968462312 829292043 909090863 747926067 941272908 676016860 711934623 523902457 801926711 623224138 984041350 797335950 882931599 484664713 643938519 388857424 868243104 90943200 702105133 6836141 31896328 490839155 653451012 601065351 960603085 317874702 583746104 347377540 651503459 868192093 919921672 317379183 948235536 134127361 909840058 91857273 742888896 667059616 804566469 184723072 904694793 119497839 656313081 33999586 250795558 623716756 842760622 851067171 998652793 861344048 931883687 739852270 816400708 824128580 936045886 139027440 727052187 132782501 708787726 835871168 840433135 447845210 459283118 742679691 760722270 910576926 968686091 431741048 909158253 596630848 901991342 329191545 358605725 692511785 903885623 638626554 656451604 487670219 693620800 565696573 591540839 6811033 813434003 369416897 596711640 847771404 937641839 561608924 818003948 243751602 915723948 186299443 329217084 602102376 682043485 593242154 910036306 409314202 960787740 421550371 673145452 529645352 676217290 931804943 968076913 559934147 868512612 446848284 910785354 769042414 791593699 192153719 715660159 702173601 969602620 608697082 732152088 915188120 992582228 687786295 782373426 747656037 786684547 188661608 548013451 881075974 931104176 682547489 814372887 322564817 593166502 374657745 929614041 528364596 921227417 953937288 959493857 475465019 521078900 135141506 749276087 991933464 999689553 702888068 799737764 902534845 912777208 242865393 299435878 34942938 536616208 776856029 864138681 120064134 626004090 635914713 960931705 154926191 887903811 291861833 768536478 718052365 891108022 333026767 941755455 60254605 317232784 92381877 364237179 742530958 761130200 508526466 710115938 612616728 995074752 545333602 601653988 28296565 455711462 268193980 476156108 736184945 916871130 156887348 241341809 854732288 856771176 183757087 620094684 923913788 927844965 859567682 907335116 419447602 557074062 766929946 987822457 496232815 906776612 284493468 478906187 174305855 294960750 947266212 954808796 358000937 900895261 951088836 953035663 835559581 860443683 917658422 967304874 938277386 976668780 618826561 835943116 391730271 561113802 819672818 967075588 954625136 966546800 376343328 695191682 205955672 932927329 321418942 744681443 557828900 857713906 478720754 661184422 284199525 835672702 126533527 680495863 516097347 542135412 925422930 979695328 60520845 871920050 456526394 748696007 141926773 374963892 678024127 768025065 526305694 932398919 754329329 919730505 574348045 913457523 264542132 376453589 256105837 257776058 6511534 198388798 733919312 824929995 347267185 606055979 378009343 548101410 620194250 734442318 252419938 852265208 306594174 566971229 912971449 957119776 779804454 865192310 481443197 882347912 529144994 985526418 432664785 922273703 676409299 727260508 534645830 818636503 569393073 904249700 714885166 770301644 335118132 470354873 580935080 822229776 141778654 699956766 337682270 752368708 657306660 738571176 453180167 985149059 376603234 648267623 179791910 527905595 841295636 923887744 359257294 648039075 379906129 660970479 99668139 448896598 714788041 807314061 604192882 715372631 862782143 942532252 806213737 963962151 587948858 871952014 672621051 854914707 760182615 849354033 592857167 885930825 282490741 659299064 470281050 822099624 900895681 963466225 33120519 314075169 506257524 840623702 757274037 886833238 436388522 954894489 439683865 847419819 598065654 982184842 689306780 887819289 361009845 894898059 464508444 855261878 170551923 671126233 305971013 481172045 977389151 987027531 977122585 983894124 139006662 954794503 998717053 999558933 637326989 852384563 818116288 977351377 711497499 730805238 282991766 683267289 293169670 408298662 160186106 170925503 10361551 773487030 243774772 927098683 21744193 959332875 425154093 993702625 449550232 562690156 924349492 987889438 51980862 460417639 511851073 781693393 886478702 927808595 582247933 967357601 493065456 947822268 328730037 401409277 686080494 730695989 139639373 146353513 126827815 266495165 738334809 919914841 802902686 816090918 947377223 976086678 692874135 969270589 158539024 464335966 287890291 470497146 590634320 835994158 452948945 694767799 715978342 795357497 618259846 902874232 186637540 955386906 940317138 949014049 50136213 519377682 694184415 734116091 737301313 983874136 863446818 898763552 821321882 955296515 607386100 773120689 948466561 963689127 554985092 868976245 615859897 812368347 604245487 947481932 989257249 997501827 18279485 276104838 215804294 660828190 172408616 836897756 30913942 102734763 966600827 988808987 490448085 629617711 316740618 593215959 536784920 908219135 863075954 888532582 689372663 983115706 964611622 983002447 801141121 895560434 86463673 974994291 939425241 977231591 89740225 746531025 736686678 921174286 5467099 365167408 103254342 203481347 529059201 691603540 115580605 978725938 981276314 990153665 960557205 984875588 413570669 507196579 966499060 988242058 911257431 924591555 399578969 748408426 475956678 819678581 565267984 777803926 105395181 759271933 923277330 967118814 265991945 313948266 276451178 397069509 431677444 812679497 775199847 944158345 770554180 771004603 152720204 644292358 737798069 916502338 836543655 973780072 312516364 902664856 653044212 995491826 177273151 746545594 156961669 291731237 951312020 983379592 817360370 829247469 313241011 715949748 761390383 847933709 150041821 551578097 220565653 604334943 674833902 868765641 928484388 971709023 492780113 802237770 350022301 359176247 934764097 938763614 863415708 948558333 657147659 720342067 168303581 385004306 247037977 655232883 117890907 997627364 738423659 755070331 527252990 789490155 609868615 868421184 297997228 745827717 168561788 765650827 720974209 757207540 628289101 848460834 258645676 263952064 69759651 144824560 77158805 335335510 205363083 636488427 261352782 390620488 550920867 633313777 779892411 802583833 84347531 118278733 863991767 954477228 868907524 930204986 827559824 893364643 568736424 681892314 658340239 777913718 747909163 846995447 376242681 704974375 526529753 724890395 665967337 853341422 496188012 636652977 549560111 760666013 614072556 623609006 598251459 791592113 699311739 837643041 27677828 624514474 826036180 891091911 308405835 330116603 404736539 680774293 812805936 909701714 28858633 583662334 154240424 370860576 278401572 823800275 188973142 979988910 273936686 877130613 51677014 936762905 127914256 709832496 953004468 982309349 496209957 850655508 532154913 606629777 494843045 763671773 84787408 106668451 758600647 981609182 45942525 981339493 85518977 942370305 358945513 999371431 849204230 978340161 950536312 961557011 470041631 713237445 576075497 987898103 37856141 205548464 141679173 260501122 737256044 943416667 36124207 223312950 375660129 466170236 226896575 923026878 820891697 830929006 849458014 878110760 695188468 788887238 391402536 732486821 161462721 537524947 127995952 785168169 999166221 999655626 383258212 922833062 354230370 645107452 344289244 990680689 499387595 623871062 773588745 958868536 695553137 980540468 960904070 984242740 580677245 944737306 696736929 891411983 714982239 861692405 82328975 336056237 621478250 926565361 102873776 873291417 243071662 563056322 228060110 929841570 661587218 701454982 654130988 666200048 973423037 978689183 701584921 847978503 338253898 762582985 583912323 989314235 583066715 824353852 455537839 660768276 606026753 907532345 871415699 893781812 663301284 985358558 691816137 850405225 110612178 304931534 595854215 989489235 565616972 591865864 73209508 536473773 654035314 785909538 278546029 555651253 196383726 405292803 813670929 975061432 626130647 738822769 987081048 989981016 352180557 959304015 967963671 997033403 645911544 726974048 582691781 942781557 773786444 937957763 918156938 966695037 241342012 683684003 463445888 729411549 310794304 471347699 526455575 554942582 695584025 975584480 31324810 637681717 700519640 792052929 459930448 938742751 209457064 295483493 955783432 961443289 507643241 771905586 906797128 940186401 881310604 895614515 647214974 787531177 580324864 949184394 581452555 973163327 110211882 922968046 598934835 998588101 469040874 743136736 371839816 557415813 679437282 881103952 885661212 940150419 958341723 989577816 43519606 199338952 233923139 697160297 249144150 925186614 297781600 471109410 137603570 564813167 673632769 681188385 711538125 850467715 669439980 725032665 626580837 747177725 540965855 821244638 775958415 952765993 358424225 943393469 188690956 448787585 318487163 729012580 186840844 493512783 514104112 881176931 735012660 910802503 907164115 943963455 175912017 832986409 816775281 836161321 96363280 701621170 234242487 375069779 194397653 463218760 118746155 406398440 260479416 997111923 31661637 245092144 197976699 754713070 336962934 864322597 833547416 909435347 960280860 961974992 396350652 687401722 147939559 411095869 165704246 906019408 206393308 594498834 64423986 784454786 90902301 239666556 496358563 536342172 538884800 940770479 172373921 220714480 975747895 979107538 508411670 880681460 264380060 415565174 282545388 537627556 613333827 966876605 631974337 672101964 515976632 700982789 731099026 803219003 257481191 627222187 573968555 619920748 701030467 769707496 772200376 796937300 854073912 902124964 176919471 557421292 528769892 699282331 663327779 706647274 472747388 884477346 372401391 846984943 162452682 394052789 152924611 943581074 478408966 843240585 385986611 803661608 745064591 894598615 888080715 908574452 440065700 863227253 140502997 765159436 273467642 892583353 840286962 906817628 800262034 881043373 748068400 864709570 648607278 698119822 110347248 885528422 823201549 828198976 377798501 802568878 896742679 918787039 230045281 734924531 997196238 997882627 808964832 933255703 319927715 796617252 37836811 561787727 636438579 860682681 354348530 981058192 506235320 573368860 403874692 423498856 843596009 901500876 665742899 856272706 197208054 291925160 542102366 685832642 449696207 949088239 845712336 916440184 737354826 945707523 247274623 762778438 293852119 933230781 905996281 996559907 737209498 935763477 689534204 957336673 154257609 309139326 721013259 898391854 144988421 867332422 180343628 926023671 462225213 994759033 73514358 822330305 362108883 981924200 380807229 802163963 418359667 826891243 79091522 292274307 434489445 988672280 465751684 986281964 368658438 451502593 865460060 887131089 718261704 878612121 612843081 962969430 483098008 766449258 95410698 810784320 593043701 835514504 676239859 747510527 471565566 987600649 972270093 991320648 626178916 936485660 375119232 387225829 775161193 946912499 233105234 650766422 610353506 843552681 258682731 475479720 789119640 990959680 878973681 926788272 601451948 882586811 365589099 975045796 417922567 918503437 884744628 978179979 728110891 842318314 796387534 954100735 632557089 743967254 398832448 417991907 173488439 353931726 605355851 931117525 676232045 823864667 794197470 948672209 177347025 837538626 560787038 720709531 5248188 511580168 958218285 980489051 858427038 886671592 265963542 785038695 294402465 324507182 716699210 858265586 46448323 693133305 761438393 826279048 456879096 511784903 559338124 959286318 833825604 866276009 278081463 907397417 796072928 963819741 972832349 978773691 535249335 663349815 518374293 909464254 338807070 750390039 76745683 885411929 410435818 929477366 692461903 748590761 507301911 903551008 68387740 612579521 697061913 774015599 603256623 684061728 190481605 987098205 243497806 509001693 854760410 873271928 666484112 804776853 731647468 987771014 186360368 329066594 656808554 867177987 526600180 650196840 649561137 787049426 126278049 144035026 926203247 992197107 10772241 935815139 725761331 919206921 656582250 835257804 358556859 625370026 842724555 934493625 553570179 626872345 493483824 866260853 451916168 485197455 557234642 766539983 717031006 717244599 395032676 947931171 324806061 827238821 792870810 945886810 854922767 962619727 419113870 548001151 157022235 407552487 607516664 970972415 30033655 424270728 239220410 840353693 379862430 798645729 445757245 932929319 304374931 675556751 86078426 231574605 172837729 949000005 212525616 605274429 492599451 776490354 458324284 999348700 493639480 934725696 892902485 932504089 855916661 903541158 299478283 845399596 38486284 129482367 801770659 918867706 351568347 479071656 480163264 554899776 288578133 727214554 1432873 772566469 786431494 936669280 884777632 945495689 769617999 781667825 679387986 901971770 137406985 494091960 22418852 943013447 243638459 908817777 632722475 757099710 747214965 812463526 767232202 983912534 340110150 501998596 973938515 988975239 889950850 937492377 209067664 630797239 592619937 780681475 909358080 928991862 977734897 996595057 424325334 648749244 858490912 892370626 944788038 987251299 352783112 698930376 613464171 890121131 334468630 806064555 769478209 917230541 534800831 576157679 81044757 93602261 500382200 635844237 57862352 878766258 95037698 908516251 754549042 811191560 26784129 381322074 70822660 749900639 63554650 405737130 957125203 966818700 229236774 518708319 603728556 942054155 555183829 930293022 38554299 140360060 769807509 801931667 53588456 749660229 296658221 787513710 119133133 505368696 376894193 455841916 778723424 785401504 597550790 884773717 157146241 845171574 894437592 909256311 953210603 960811683 362349305 991518310 626180746 754601926 958641544 994810628 993450532 997099837 554760966 839395518 167069187 573341513 46279036 758486353 90989895 576429647 742886014 807166061 673866804 903997992 626009519 966351301 916649692 946686573 706634115 872212079 713983106 890825452 635403884 940793001 960217754 979806889 600139885 632086277 190464961 716171707 452975721 782058886 157676608 305630160 378903341 661154472 826980005 954780114 955339808 969400224 201204379 823224950 550933939 965008012 128418056 448887750 212796707 316722267 761903626 992567081 462835436 777228625 528031449 932438687 786909625 900116418 842462506 921057859 179288409 335342278 712923897 891992394 805192400 810078756 411056864 429205225 825390514 856201553 356027629 691719356 465405968 536036144 619894989 966115362 512736651 771079085 783863534 959492389 382974910 980971065 243359434 623289973 388487285 536455337 846951339 977231657 616546686 959375748 872191159 891438258 369581268 555186831 149066709 153361714 326801444 385083261 614212210 900963614 147467134 220937607 555825117 575245683 988669267 993004096 949064638 971410426 750714761 845969902 236276811 523057975 598913803 815393887 664901270 672594316 811856078 893712403 437197613 855875745 719689337 846354521 521174490 692918880 532145893 656886713 8419647 817210195 274208699 493945396 411035231 865027588 949442517 958435755 595370313 701882454 270334646 874240944 887702081 939568691 157918409 579214605 489577602 761000736 89721692 341712963 193130766 980636126 744103029 827836816 956622237 969665596 495860363 953183192 428734009 430264071 844280635 860983841 108640715 721632486 399681214 894481121 676516754 694533115 359797161 718882013 432952767 997898629 896853471 990987038 754920309 843362676 993367005 995313870 28300428 341159496 247019846 592209416 3744789 257113227 247983430 836913873 733497087 851301338 635954553 794026278 88698505 548025573 207530687 907969546 102936694 927555297 801692679 888643416 507024477 755199693 579456475 600998549 744910168 915851313 991625143 999101537 905551784 924358939 222532692 432953123 158345731 226755489 14068941 300934754 912615467 992287549 90706492 731539765 991312877 998126207 543105997 658566781 742162007 917838329 968307778 990659590 801092385 935437133 981759014 996941869 227612207 345832170 352788021 893634729 630024394 866552451 615149605 875221113 686082195 989033527 691930250 723783056 855216934 923194274 637217809 802848718 817031360 942283115 120580298 263315475 692157501 724655872 766433772 816394800 909106565 953609434 813950111 984228700 282199736 793222775 913678836 987608572 194164258 682874697 962457383 989222923 145618222 804185992 673042721 740529874 526269158 945548643 10124963 233752753 230006857 234248590 872561214 962183232 66165651 298721109 324905485 582988044 986100727 996680589 504550131 642196063 450408246 942711931 607690043 906221960 287949827 960909248 847213062 949810059 164582007 311742232 923436122 930611592 851841095 983653096 811458831 873420918 949818562 997102731 641867407 699877105 933289151 953824120 301004513 338183758 712443637 928797068 651151009 912656238 758247087 941325097 526121141 848800724 727602808 869262351 778624653 949646128 60349921 249018503 686659100 720932920 390839851 903519419 68207753 889464568 85540341 934993352 476966765 789465727 318096018 763548793 31591164 542024363 751052357 803648472 566398952 735669290 147161326 741309724 307005053 643595065 567091105 594170769 443078689 705901838 749350601 983860630 79480125 998491303 189629862 423883129 78203786 769790153 245037911 773439700 704633938 784291139 904378339 969828027 909057555 922487580 651719074 994709226 989352001 994329568 614683136 638426445 915959192 978141476 118787121 714133860 26123169 118211175 324579479 707746975 990678582 991878564 238356221 988091570 56058504 132309869 751966060 825402237 75391115 588718526 312276398 963277195 65126155 193259923 298792343 391695749 212618972 506261613 225528501 853215925 18871589 54243350 233018866 877076337 638419121 651347585 644942606 706790755 680188764 693146280 759782213 998608289 726063639 908941275 236669552 291371385 471380695 663407478 894606813 962561339 138221734 921192092 741980268 762706841 318663993 880718035 69341853 375461676 644635146 771539663 25561414 922134928 614619001 886154423 88699998 590815983 439997943 444336647 645334719 996544044 790752940 854079323 371864421 850138222 408021230 765314424 85930275 301541715 11945741 726160591 422659704 506491712 702833954 895152907 158680870 706147919 810059755 920315008 710741192 911406336 116530705 166856528 318002713 660713250 514059018 629308635 481334342 554381576 528850952 991521161 801626067 855261853 326249532 727747216 472225068 677382819 679770724 729125958 565113835 684429225 90436638 868667565 979549114 981267726 748136038 984911057 258547946 906947354 575416132 645139564 453450234 981765822 638690195 662596178 111834955 626246708 794994212 973086918 409311655 764454371 206982852 924825760 283471967 999503544 679438893 696836156 327493729 676828297 145880714 918915108 871868940 925811796 615480305 680281610 198282661 467214261 813132163 975911649 379129227 744952782 451849598 807692568 204085610 287974013 517162922 818930375 672422421 924667740 167143073 860400634 479279486 684678881 847189777 903849738 970683147 974432461 484150313 575082873 270146347 545678840 160769576 162209299 557460287 941700864 830071614 979908336 699968828 825692199 127239383 598176544 621659764 776812150 480278638 838135092 15780200 349254083 116169503 357475116 62652635 253860956 271969389 753304671 651541422 823242288 878981215 913556816 762519404 970911889 253643574 427233693 816442048 820940156 660284862 855284432 244309179 426985892 424902140 597066276 836762434 855900446 589681206 897528914 178477792 906647009 469525295 627887716 489046811 928907207 301485052 802055398 104162682 999351911 408643370 439490523 954305380 981722963 999155620 999192371 496195828 779014913 66527483 117008616 96479658 549134351 379272187 962839630 49855694 770695928 484004170 709757967 866531826 870454525 542936325 714540539 782540726 862368655 588152655 773591333 207859389 411776702 351867549 930359303 64922455 241543080 678453276 703963651 561978973 876082532 931238929 998130139 485242909 795531972 651383922 820252437 294781652 623739865 819676215 989435027 250216666 653961147 962031151 997934397 487242505 783877343 411169597 472703265 477129303 679471055 934277811 952167771 263734261 551875357 413541296 547659498 173453390 896716017 190080902 228293849 331537555 978041851 328530197 442943422 280612445 345324919 496734469 784078037 617636833 643297933 843496998 856957757 309164720 447003776 795779598 963634557 764164856 952294012 216978044 622937016 469188975 754849348 52253891 444865841 452510874 651964043 586474887 912805386 738180879 932283755 274019062 715213955 459325850 934187772 407285381 608585835 248698745 799285063 267699723 486535683 448164963 557644771 730979174 796303930 829185463 926668879 841453823 992620807 865485569 972921769 198202722 438603944 918038700 941591918 661865490 751182202 730109072 997609903 234560141 448509018 461856541 924568699 595042519 721932048 284554629 741607423 28050993 674716853 838035401 890825327 686749675 959521854 639339259 695053975 666785477 917223635 866206076 959389628 102672600 350295664 272431840 296713571 146292203 591930448 926841574 965268637 459906378 936105692 365344129 473201343 120124894 712998359 494144721 667875052 720772643 963446960 247042074 787280563 297382288 614438856 600264595 710783053 58976688 817030703 600524484 788832429 458850329 975574584 613403301 804714330 554225765 640236362 487401734 913062673 812361410 979514217 691263071 901365052 550164541 617710593 242769554 345564473 839676382 933568276 605174349 927798372 636814879 852363494 50956116 640745688 838234591 892136321 405644152 766530449 160246510 839115321 567905544 619530901 127129409 351257059 721601258 931463759 472180167 525690581 625182322 834618129 771287354 887946922 303133502 730967903 511351804 793522329 846584573 874653846 34044855 678267182 741485222 991119144 177302049 898117564 166814943 232589177 458719320 960840639 388596758 883593529 556123582 980179276 819730642 872512612 613404521 788425797 893978479 898837052 258957349 565339028 610216224 868106048 978765611 992888649 787197639 808485907 957662817 987239365 996655048 999631608 649898159 970016369 837850461 945509963 222328128 934031991 959937354 998575217 174849104 394025745 219028665 661824190 887298435 991408017 201186428 412450357 880331238 891288048 113957316 902050090 746236357 864974182 228038661 287696015 844565026 988851316 148836415 934565266 220299900 610416867 151682245 912556776 843752815 989132016 673587762 798162405 703614262 891908539 645084172 951298818 663897052 951975166 194141302 286039602 731113398 934887545 650064538 710698527 994913001 996363566 308796907 944875924 747676076 895452955 832982840 935354735 818258362 978665979 664193029 866305555 883983314 985981022 814856337 848563300 769513938 971800972 478704207 679595824 1062329 627573528 984591642 991218192 768330913 971293086 732718810 915195981 260741564 960506904 745726197 917071393 782431415 800180746 475102278 941903140 843093344 902705508 769305401 990908775 104604210 161577804 702420839 930293262 180233439 417619270 469032974 971394252 688540443 899819201 412853282 422322902 829586520 974431724 860545300 877460736 489310646 804601200 418375821 477495699 839689406 937399220 417697737 974608400 405686713 418734149 267298202 809991329 192928328 660368839 563629305 808060539 188263791 661066415 698315973 915332350 38639183 758484763 633380213 728003245 540346130 544775403 880415975 909589546 996879597 998851852 793341048 821868534 565730633 946331276 876559694 891645962 271341478 465071897 256093234 523364299 926226287 935802607 127373878 517115952 680206857 923523404 538932293 896034972 439685574 699794414 645125836 647943828 166640810 482202722 110301828 713450713 811176102 951476733 747464408 908397587 654170024 694589234 21670300 617381257 369103867 897562959 427782058 937343116 592719956 754428438 310856050 341341661 989961173 990950658 474694450 800234897 188476586 848589107 684243535 828919522 965703803 975686291 890591269 913025241 491963231 691215245 913597917 931690391 534557669 698998888 59941604 423747945 148014387 510610044 283549303 637149700 890137655 903669640 483160766 636036731 580187676 731046964 435907526 523199422 174960077 810564021 863414693 886518522 834406907 966519120 357621570 820986031 882054204 934872051 689045166 698281107 39764176 535288567 286833085 531939250 13282665 579465487 104948832 251983197 316436304 827423161 769801026 993475941 431181717 550144874 2564481 727866818 353672589 711265858 386070370 786341065 280343187 550981164 496299 196372549 858440973 993891657 683042375 804134408 231702697 604013798 984102890 986946965 978632265 999807967 487346006 916240579 87380637 386922675 868760161 910848594 243663892 653289076 110487116 631233673 124753995 894833413 942051355 963481747 590353069 882710064 525079072 981812531 981206007 999364911 482918429 591564512 694953570 752003803 148735897 887819355 152884657 799567250 631297150 985250093 858607144 887856511 391920803 513850345 91676423 115507133 60669752 596284869 105525313 938970117 360699776 591193792 290491634 856242998 76274879 551958735 362085178 376812114 435074439 769266246 114289262 532908607 31560651 257538859 562715629 787776520 791557839 865563703 208277028 213093897 612953501 822847694 520689782 774821245 333045597 878224664 780777414 793600999 809688903 970288107 723253422 878532659 855077166 919013556 182021967 560774228 697178195 989822085 130356745 137607656 464380398 764460580 982172159 987004314 438989194 561158381 863487088 886049860 370404629 690958303 597664358 613174811 856010493 915746512 784207746 992122320 254208791 484791679 50019848 138816313 85420500 751030851 969245688 973371149 613928268 947133251 168187026 704808912 85868401 193461690 646217728 914783156 620174014 767666173 622156347 813271622 639376751 823616594 170545303 728580017 756863596 768254401 394967776 489582624 283289422 955052134 827084745 912728718 439572423 487144509 434595326 719471727 23534176 258559197 701621721 855419872 570409281 699279350 241791786 243783679 294340263 586639333 146172616 448840576 540011768 830999576 846578292 978514105 230538025 961272349 704017811 758176527 584889689 934697757 18910313 462778174 141081999 227189291 852770333 883488124 150723547 283638819 966923453 983159457 999683558 999784156 16884795 904399579 616390897 924522354 772907366 949209235 252582772 643464498 682841413 748803960 350644008 693213697 229743353 884498924 247018621 528016944 47779203 553159432 263400060 405569524 434045772 462546208 846681265 873492420 575321642 996217556 629844028 743010388 259494060 333947384 521238559 799455666 214086840 429950624 737290079 899962933 639472461 912481035 308521136 676991147 66704712 925516335 485966254 799075328 348928449 667545930 373204495 641746910 488017283 963611338 90661202 406032162 664354876 844148265 767931597 889352167 911256862 982472800 462733753 926536106 222869538 564964298 191661271 701932969 339346813 490409506 153998125 974172221 829448220 978521710 200669112 423052766 454172573 565953813 685412060 764056880 931680823 940749262 422008788 716458377 874216429 999426887 315934164 372619754 186058123 959686961 76759662 127690407 410673831 986860439 869933446 914680601 691089132 802477078 293856866 597263092 335094235 903061726 628832373 757811763 737069246 933711711 258399901 780834411 290364363 626860294 883944033 947264736 29814781 139314110 605043638 928578553 403216471 562295945 58260138 73203746 459548135 738782209 319037060 954795266 508285028 689067272 667668771 775807901 382014645 525753092 188552875 964639242 402658653 655048056 480321441 534661803 602644193 610587726 780951017 949131026 804945126 817773231 205268840 570055054 755822988 967136473 839203544 880867330 902254412 924817824 602973995 681048171 484445683 890472050 501020051 622062123 982100001 985079362 196885478 722887453 314193568 407872321 546190348 617058796 998383815 998409050 443224161 917778627 671686303 853770866 743266487 985297663 324650663 605577096 571506806 813219299 607906208 896084334 539435289 581351732 864199550 883682048 889179042 914114032 461743598 504995187 850220038 959605953 808599867 951039706 440244803 668454049 293065749 379783342 35539407 266365246 588341181 616869827 410214262 878046885 309779783 559343819 356958318 870262368 649261091 982515455 490051290 543065757 385458393 706366897 360274416 711841706 231877240 613874417 638834649 654469699 902416149 938337563 753145766 939573450 406566429 779160457 166130237 783778401 223555872 386334867 175045231 483586865 677375243 904093704 679388497 714818829 860162389 873931025 121342846 589606646 179888977 557174105 399943394 455966083 398349501 772420714 314537135 882358890 61370300 206878301 699805239 818530023 823790474 947848547 347051961 816702036 101509414 440424978 505263598 933374988 504611032 948569364 923854560 927488800 873950089 949854805 565487077 841706652 650399606 787694461 748822220 776092335 450340297 467730753 850719733 851825712 575996338 887775060 265554562 512895125 132671614 645834781 855259455 918902259 580073658 756716166 443946629 760475550 759336760 784423495 508896549 854816109 29499712 245435960 734312155 903176315 467349508 917002638 921929931 924667742 419816784 583412618 578129472 942849562 484431888 941549500 8698418 939565439 607911441 720485644 942600561 957642644 194914910 385772566 465118903 753236293 672171435 696047302 499783060 892007875 433824647 692624998 10071192 324974357 756198804 798134260 151725858 349737120 626845677 729848387 871811478 894377610 257413632 475633624 155103503 333371325 178054534 886938269 8710393 454593605 846762518 971420441 582112343 607658490 870049947 958140364 589808660 637393707 182169726 216248717 262049155 878341123 608787775 897008830 829174334 978864991 577297770 659348289 611053275 731387926 986251230 996054558 800981320 926143102 332311192 450518971 37228028 78186194 520498160 938296147 447730300 629732582 545699724 553402694 387014732 962325465 504607343 810925542 645775702 719000658 757860654 818993700 331423104 896485567 817398808 953085340 164903942 809299539 424280776 914720744 852568371 854618529 245969438 902810417 601557814 976136531 614021491 769138603 876188819 927705331 144341813 168990647 937333920 974050818 711923376 923500272 76543806 197685673 326868156 510140332 366468536 659498638 476173584 639943833 105043807 191499605 268759202 769237363 41774028 594305119 81397093 472615896 645278664 713023788 305626138 626580395 451279167 613919031 106096585 600741929 408392792 537406052 144082921 804763284 817889127 960838886 106202606 228119382 633378640 928109773 335378453 530911526 799887655 805073093 6074447 238837912 642831576 675661692 257903625 836983196 711849590 729453563 221345431 233704891 291073881 718668995 351050418 809122489 483708084 970374710 162612041 841497932 212186113 524884349 965335525 982067882 353835348 837056197 357800330 410909464 93252898 441237228 203367345 305043312 893466685 937171395 155376822 566302595 386754505 930059599 337660844 715943540 14963431 739833159 616402769 830884648 246346578 654800432 669200971 977567595 779280941 860870379 339945134 718810315 985868790 987888230 545741394 922960969 279984578 348864465 620406019 944203512 957785185 974679891 577328788 952848263 150393968 523159433 787555847 821735275 236101137 282308592 38397882 136234453 471109917 849849360 155925604 937807992 469611390 849138152 398485498 409312210 238941129 745212013 280880204 518028587 894104134 935276167 420886285 548082381 927672454 996562270 88863103 132124691 460514743 862600511 23218043 786876517 583042548 641799375 643046071 986354274 472616722 530376860 485645875 832258789 381676849 428727904 991682486 999019093 555902477 626797591 189763776 208986954 660847730 863944865 409521797 462438039 77149801 913717560 172909863 595795051 216596761 691658781 461363052 517551677 559283237 964963632 487298766 782125707 939522268 979962997 320818009 909360913 754043240 855893784 623871417 693027047 347521205 660515673 190589761 851853068 594532051 978638290 744931980 782560106 924409953 939490183 81377775 95257296 34669267 841513716 5957270 245317666 402083616 684295618 691015202 869803144 958427336 985408004 96039175 409743503 122152976 648370655 112800719 785928505 156400404 653572049 783897578 892345027 124722377 898704895 742098765 792957251 91458057 923183006 580773161 887625876 210270396 275994624 599175705 704019755 611900197 948362174 885051461 990357490 521170405 844297486 544489189 779530142 917335456 976972147 713346840 912823638 127310767 601623356 31358683 294325824 668530214 709228613 550564465 749527098 575437311 832001017 550751489 705255681 96569098 665951143 146794169 417989477 53782003 669731410 463097091 996857010 706155804 912327125 384637053 752868855 163786058 310142338 635701387 913366604 122735211 542968074 423673369 661346940 428453114 891136795 615290475 674957996 853486489 967993335 279601428 333090713 771190690 774892224 534396382 981187276 855821279 937034938 634432695 680403556 996596101 999545871 884986707 905995520 969369072 973424616 247367158 715122086 2726615 340040897 954304529 996507844 531085020 631034064 812669215 813800482 647125209 929439773 511716721 905629125 258684838 618113548 301984443 654075621 614451382 674882906 821549589 859358233 710167400 721113199 621257947 760426743 127991989 576176704 620801395 675658638 620827441 877254821 101609199 642287499 505825975 901672355 975459189 990183110 341376583 863627289 362377045 622251121 753918833 820523987 237789785 973450794 875990006 918718662 128538577 264442991 16004900 313256394 585328906 777463138 116377154 369387218 846729529 931294155 3167999 592921385 467955441 948252459 364741875 647773503 761034632 843041818 381669335 520709239 773995373 892398611 645334125 891636406 331219616 788328373 875277541 918331163 234086476 867414163 976023844 989489385 4445954 443930405 916765597 921832747 821778285 852020705 631410310 808835819 463780314 930872641 813368051 831244173 966032683 985516166 73764524 768633578 445799028 820303518 695690880 809998276 481257802 843566729 696226722 886476829 944436639 957861266 934287216 934643908 671292943 717797080 386430291 682191052 245662278 987611766 373151701 583521633 507361968 711351726 462837136 835764450 288802524 359069576 583785073 642806318 966386907 985721436 930627910 975373109 890048408 954678948 813299026 901402955 412432854 787089297 312104703 424160952 249567449 627743508 32253601 206614960 410855892 824276343 953464265 968035576 880988065 988707375 592114221 713217294 471846887 689089780 646480612 764141876 164709210 425370022 276687680 460713443 824374839 995161391 593829091 931021082 931781995 944328217 635183123 665706423 271642328 441550884 992106302 998822746 258776620 577078934 925281907 981276881 667359222 732669633 850730634 928772967 388038861 704451388 904108035 934108090 457617305 682803237 538700775 751240350 975171401 993216483 676670178 792246172 432117552 834036486 172409392 678018210 848244378 896205603 879450320 921329556 391070483 934140696 51954641 684822837 409658315 416990510 393276685 787232884 24346245 470151370 613690090 871953677 553720577 909591293 132818540 850080310 502106679 826387359 662077920 850381857 317587934 771289384 148746825 524157331 534976538 681033391 954283890 973586474 503179080 677611157 81890070 741666001 531676095 841233018 305472699 535255400 469173314 875312184 206273729 609789484 669852272 999838946 337708406 737041366 989560774 997292916 514933079 957505235 266531929 288025343 100824285 114240506 23309590 54457256 891719968 947854907 435301380 667954320 313484603 548035892 743506705 780982477 634125428 965289685 923829446 985451362 786273869 965628425 399113651 895261326 628890814 660857011 60503205 259157184 827800583 895018741 304281823 757786095 835536959 944839964 509710696 927498286 264955134 400262198 41361575 542390161 473084300 596490189 641007983 816748687 226898804 959174506 62041686 619923577 292146327 586026542 174455408 242819827 220858152 702818324 446896111 502059846 99054740 342371044 905087433 916769129 727990387 728952842 85100006 743995956 488915662 606142198 136552137 832478028 593228650 687449644 814867993 929328233 230849154 901376753 448816018 757314243 375262064 536946701 932778739 977458662 78505742 831944403 514989513 556438669 236775190 246552572 944952096 994105483 882424055 901419475 967842283 998339434 986471986 990079223 445558027 683713768 638892832 966983224 882461048 925840132 737863229 973443485 112134815 431180848 717752042 797514548 634071509 921021703 618638003 642252321 714444168 844291157 186457302 900982467 257204871 987229937 739653152 897429621 808575657 987401966 495729302 700039675 183988750 521822721 757848009 840662402 570627296 670599197 722883972 860830724 813938424 944230891 610407717 805132661 611966452 702690305 98860357 248274723 330303613 882522952 450319411 576806053 33957857 814177511 93029231 476342116 733545608 912196463 737923860 822300445 886635107 998164933 986278417 993200840 214704751 314946627 950294893 967561882 303571021 367834780 82457533 889592124 321639242 943407373 540720110 641447344 317094111 478321701 78275594 363100635 428933646 567256463 468227608 980609995 111831667 294808917 692660457 769296032 581535391 964570749 269582677 891034143 899504049 963521591 583203357 907729100 617543702 964867006 34555920 91713355 365130951 902749290 337684743 862620116 92006548 279664813 577399728 942040283 321796549 448167982 533321453 843661732 447400789 681687817 693424244 929009615 89897522 170825308 473470728 634409294 521844506 630716974 95652282 435814713 649321350 840107838 581866456 675433114 776484 465649900 188183391 638406549 526974015 675023350 781251115 829082563 235054805 776416775 375126068 546429554 476167484 703732140 694850644 882094864 350695049 500018714 743428700 811245279 38703001 393316061 706255987 796132905 631995453 637613657 503743909 602115534 139062813 329714537 539353741 974373782 510476976 630798466 371217614 751966735 818087826 897950484 31625247 318821155 904841873 960410233 682196207 939087557 916016285 998806535 122027706 512761492 140063701 625310056 429985711 916673515 704682873 999503067 826284716 901466277 836853315 879670591 756011960 778700106 942272674 983659080 659316082 873411888 645763464 719613978 512432394 770390039 550106150 597094766 831234559 864615733 395038888 972004014 168148063 875618181 355825050 842155078 411239188 761075426 189634237 773760638 661476814 866273715 238980730 847945498 465859596 569124392 584753015 846016840 131887138 368355220 597222881 943476885 430937979 846138951 768707856 832728894 463923864 617590847 24936082 238428805 308652993 724110966 833872815 965614526 531913110 998833500 26363455 96898820 49313603 224045643 619162866 654838639 755373112 796523757 160879470 533386799 219755074 740058307 73062679 372215711 965300312 979676185 34746083 636938487 341762694 507204238 846369796 932577011 278661815 572188161 103955696 568366188 332363371 460858646 381697262 897436471 926859250 994573175 485697253 495877853 209509231 556806850 387599327 443068723 605672910 792394417 50069685 802223070 371345619 789801542 627248642 972738422 150089742 971658970 358422203 890491371 488922759 553838661 144589275 603498878 634780938 715638107 561126274 614215054 392843079 689730239 163821678 776628753 794101093 887201826 477535475 608212550 852300588 898130432 132453070 229585533 485783320 511134162 274355469 460509653 840645102 962328820 339442490 872613023 57133054 401613561 148103347 983453904 910970951 920635548 595819413 857249988 700073928 995920935 746856634 928938469 821857201 911180306 420881991 532110195 258059831 384153665 16917545 372835855 445188018 523855128 924090786 969887135 216060090 549554274 454731066 847951232 997807192 999636054 279908617 676509068 538975097 926806506 224158321 974223599 244731344 600561073 280890502 890060327 499802143 855868400 422908992 721882980 364291163 710865832 14274893 861605011 778722915 940280086 564616245 967228223 38635594 403441579 352749585 996276802 89725127 663916371 639628738 777490344 732535110 851032067 721170885 745640476 218029316 768426895 278782254 590705536 942461078 955744848 968530770 976537521 43631615 975475649 122956815 844070018 682867589 836199337 16303681 455309511 421683932 618664633 409388316 668551885 863564448 931589128 150515708 646133265 33682037 596974082 462585531 805362417 336201332 778408313 948744806 974565799 302858855 931641814 305467413 341932674 361674968 786300061 172400795 629844006 754420172 970432967 374721944 802214564 671386980 894973695 772206710 944011397 267646228 890456112 881081554 918893628 34312636 986181815 669553681 911474757 951737587 962226611 124601483 839277098 464257654 647598694 266870211 498261617 909002014 968235421 523146203 949456031 412899844 663442455 705283102 868017136 525682232 853401125 622202947 978383297 941371140 985150274 67122237 753990712 438664287 772589621 754683294 772443144 677655558 818022811 221277821 846559258 739268397 815544271 941114941 944533042 146632465 261377003 491605403 913950606 18704287 906459117 439863445 666917817 297886265 641535161 227532908 555565319 273003036 829623353 656326576 975338315 915993336 941074407 738959242 933321216 96326301 657411638 767876599 885228532 454761511 598692555 25913190 533527378 188703217 720483843 763141046 887836748 51173723 761209731 858643841 949880797 25692394 165963356 206880210 937453621 604047596 965567762 935005794 937118463 604082133 666246154 424563220 933560710 61126288 277134153 967706457 974909426 592147513 753435318 854861213 924602214 344104412 399374928 333974613 716927951 209849494 928356047 690992215 923136792 828558631 959028009 45759100 395093095 345522786 779348102 429111955 533252717 666893560 908899136 91780247 397592565 468789596 854718284 513779461 838563942 621830382 675875193 586249629 702066508 674032450 857243899 670564906 836573749 895155020 914592504 151522534 581700439 686608694 861942064 212224601 270120193 568903779 852055776 575910016 687914797 542332212 686138631 697787377 973691319 296296815 802253167 927122809 987489363 156153002 926907581 823513617 954826575 152599681 562036311 707703478 840932721 293096293 731659414 76147551 99675969 113427657 890799032 917938971 938746990 207958810 722328517 205914596 438413243 916132832 963521028 723165236 874028234 223210353 915648416 232551139 653148904 40859966 638227512 103030598 355489284 846235134 910658210 803731015 900581552 968674506 999624018 787827644 822468768 98761217 178164534 219164266 598846315 123980465 622775816 222464923 593959867 887309721 924916517 158255734 288251108 999304486 999607823 456597423 467667915 879457287 907406251 565113998 728106450 786932914 797193143 509330734 889620138 909714199 924493830 871228305 900756236 98205441 565463886 52907187 114095635 721548975 814784327 196544386 856052359 172150710 702962591 778818596 824679293 362494047 365030578 461279446 931798411 779475174 896139286 645913640 870869669 899730250 904965012 614126395 747949723 118374943 180537225 89620705 831391709 321615071 919267623 489941124 586733278 177305446 223211751 381501564 721022774 958665405 992941043 808975940 972705729 99024987 124486267 716919662 821198229 988100874 998403463 753976206 875737248 542100566 791254536 488103543 676824683 827246330 944090597 798785380 973486580 977366151 983047397 77751549 750897913 641011695 686831419 883103215 956360258 930283716 948011916 203198722 765393909 620800696 972627379 478580304 785691366 265567730 298879688 796292097 979634530 871405084 945797521 496389413 682589328 162340121 350660799 110673287 442482295 575306978 593205515 326978111 633023998 739274808 844061479 892978305 979889871 104195052 805642906 837945507 902092588 971424668 994139912 10225786 807578895 26596987 388720679 240986810 323557745 601897428 945103855 740682702 757365892 364960174 544526052 401199098 914315501 154935764 541429438 471196754 678230827 651282840 995561291 242210279 902153841 719908366 877799459 654531892 941451953 262008707 954249084 422079589 812464984 714508467 797665018 432278356 918656567 674939120 984528885 23385423 782492841 994839854 998905649 361052991 516968567 309372362 649083435 487757396 936051354 813816170 982381057 669792221 715498626 706532341 729321074 895899113 945023536 871432329 880868261 276028122 396753755 836815462 874787613 46012191 948278602 298460022 982179588 445416530 788222557 354457480 740701477 925072912 926602887 984340365 987232292 250408337 619039512 876036244 940726986 568414308 750705751 814463481 867121043 981395243 992278225 572027946 795649116 362946275 370742665 634476960 963874977 834503981 882686237 706513589 913760954 568993972 858858818 283542610 455395123 842543308 899568729 492964358 572851894 728662891 783987768 907481522 977265036 883813828 952992004 576880416 971803555 923729971 999619996 865534938 939282057 279129516 321573735 93748519 313790747 273113883 612731655 422837491 835911848 266164565 572038672 387392741 520669623 575294271 857619717 909386823 964971834 210635902 813014894 185418250 959641974 887567828 980410772 278691458 563783025 142976243 859323457 185697193 984337730 384991922 476756949 726969384 991050034 73921613 196251013 629118487 751791922 570819211 887282616 570217469 952147209 812656354 844762134 779904742 954437570 412909522 775458310 445362285 885456122 388568204 610883168 269696553 990206770 745884850 798612804 287670858 370836866 856465012 932659855 836007968 998076480 645029053 937684681 417383746 677785067 357933629 643591426 492653793 729062156 420577593 827261282 649593740 714015847 630037407 975366111 743250165 857631334 868890412 962310888 572802805 664083030 741246170 983998156 73594278 923602465 851185680 920140163 425422078 917819254 235910524 808401525 462348613 650569308 577694250 855489012 558711684 768052178 919387237 960261974 849290155 892418619 33197141 329096346 713648346 871300854 171819734 834379386 717499461 752521785 105084397 772257655 117130070 312456610 680180979 858488507 498324523 981845195 650755684 793513059 194463905 673604778 904602335 997245601 461079696 758519760 553845929 939372007 504238210 553911757 716429252 985608425 888294999 952838200 548636234 776860054 792667013 881947788 391454309 455902446 502189434 786330485 957356677 990547680 328108257 759882588 987742626 991941557 58634331 912321985 562456768 641956113 525627264 587582192 870746019 884151523 48110186 950154543 873726796 956527489 641596271 926525041 685926605 701573938 962487677 982241321 592563380 928931632 540580240 809157868 603226436 752666044 913326943 956814182 993577259 997313979 104420337 940106914 598963580 699780814 388608278 775575895 503410380 956462272 375762582 859245222 420752513 743784407 359133530 757165222 389912722 797611035 818345706 958449907 575126239 789568749 907642197 985000615 803852379 920318110 557002490 894904699 669401899 890727141 868442843 949442195 742177536 921219006 2964658 508938037 812420083 899390559 508522277 805782752 872173683 968325331 536714324 831528207 59805556 424967236 140924921 532198021 620792542 974254949 612679295 946922647 368403501 510210355 928787285 950808718 334736722 451392686 698205840 917767283 109787115 765096679 816729397 825823340 889545560 893909347 919162904 979449757 903309611 980153936 665881945 720913527 755379051 997242379 577307893 624778683 156045249 918310816 930395436 935225756 434114942 792790790 585844743 818352189 452107856 761087327 328307960 639627145 771881918 940522139 184613736 370305225 857163257 948796197 896641333 960640309 720083786 926985999 613830586 974106353 311808836 343394934 297508639 583417845 627499994 970699200 800673819 933752981 553728597 981161494 707585126 799184407 728327921 977015996 555059855 723970449 974581104 989511777 185598221 669377675 407588856 875694843 152100556 917683786 690924795 842904309 210860375 368872395 257413831 390856761 96456285 206681871 254227263 719509937 384605399 436320802 130052054 670972049 223697601 766523567 843566371 868505216 521180713 860857638 460576666 586826358 787187178 918072204 902441530 999777073 986381589 986520619 893105708 893923228 290329219 525974136 617145004 957040493 720301601 756735418 630170235 647379212 510180830 566943573 960296231 974100033 852320746 950684992 65951025 809203447 234287134 861198428 446236742 495348968 377051640 495399548 201389977 592185122 5218560 674280079 20019682 704638523 960615077 963790623 45187332 650192830 547627550 982466590 534561729 652063482 819294640 949916819 255912524 730760925 676287289 919224981 698155057 715755376 462736815 694731553 783385761 933608830 27476604 193463755 925752170 970348803 437315334 935176773 135208694 311799393 835903661 885807685 576033319 673211539 676018332 789973210 377942807 829679653 433784769 663734895 126002379 266673189 737749932 738934796 803950507 812218706 97282127 211155397 634874898 842668415 391450175 669552701 484635699 947989068 218886450 400041955 465823889 502078318 600691529 805856991 769944421 815144292 489304247 778894008 984493107 997640315 178124755 764845523 340282890 895682965 349761823 927895083 265506758 459574510 892979883 937924222 949625141 976853897 784501676 790541773 76065110 893357258 227337725 274465029 439111608 689508272 950036006 968740264 750805186 768161233 69698799 894402222 651431936 945967720 193736003 258423960 342647027 409383037 784904083 977261835 957500278 987506161 169355746 286774230 370988486 878688773 7846743 673697247 831123664 986227181 153838990 200279363 54944583 214463220 395524353 575436924 746703522 772681353 326524598 749805569 363998047 837569332 878756393 898950846 425606020 815475912 709775252 836900884 963258906 985213119 436526763 601821553 893680954 928284651 609847193 718063134 571969567 794771309 626505165 918672881 282821613 627778985 548697864 661318906 921376052 985190789 952809587 994603868 368143227 580490989 616045666 946608668 172577583 192376213 647966320 877421962 974117010 986949230 571100381 650731983 502122045 816137750 298429724 784260615 150587736 634938278 98190023 910070443 11081614 569341992 465665698 805926979 841050136 942545551 435618126 912931730 813514493 856375763 42419295 433807410 576992875 847674474 690751073 988153451 901587281 978781576 421473925 917876762 576725099 893036762 978794933 989263488 463248546 580319476 232606709 495794301 241250176 953604648 990567093 998108434 935703297 988000927 619558894 800322518 767530161 770164245 869314256 949683191 90724563 572558482 957557290 980690119 653008388 757294235 287382888 808823664 776201512 932856461 789428213 850158082 134494746 999568924 570779181 823202904 391285759 748842253 631940798 813520491 563112561 953815157 531322809 791351984 427990290 958877322 198378984 795762465 678857080 960778517 951326477 970101467 760221178 905169091 654096266 920344756 188057600 919158695 131293210 215220883 257858721 902946284 125811776 350151194 785197556 794682406 479214491 512820053 898244572 933108761 537317648 571387067 301111716 588006211 492962152 636641990 217121219 907505444 25246523 568635390 230089500 797626498 30160725 435924045 245299071 750744895 680071397 790829849 23074019 973531320 330803155 812536557 217663213 423040510 920407594 984059560 488724107 546930183 12732571 446895918 69218795 890261139 187157287 376722559 131176097 751285306 144858306 668919092 13736662 470212956 718942659 771898650 658016527 893911344 96822969 908263157 653768755 692527309 185173348 293403237 662767479 936498052 111458009 297019407 921769612 968653709 464186341 515478959 493336230 972487813 328749927 715041836 694829627 966494620 712373751 946026276 858983454 908213872 801596102 989843565 284477047 812029712 30162311 358183640 857282905 982915631 50931067 984429168 815870337 989352387 148133679 231262846 663094834 720840061 576744626 656555469 409238084 713777121 418814965 817795044 316020051 771307258 89304533 925463848 900770760 932222051 416316208 740479798 295211924 793570750 601803882 673734865 161684448 230767040 910641591 919579131 327087618 495594878 657041765 707148596 536438468 999925320 898446149 976259748 602984291 609868247 412611561 583453463 889366846 999463661 558670883 873461338 698020167 851910416 209859608 409966093 920670583 929426970 961309994 993518731 632210904 775443679 39365290 437768245 804091107 886932852 953963608 987300188 621305478 979687156 424169588 894753232 544007397 702320311 571845847 823157675 875567639 912092634 450575839 702675565 873702180 929199474 844863887 904803704 238692918 707226039 413518827 727690205 94246045 378329747 739550662 739994408 560989630 992773881 429843629 515197933 239398793 269368599 199308896 923179460 745322287 839864899 551217945 979596379 460102170 785769366 166416929 246450357 250246021 879299626 230847279 390451258 260972108 543771084 922039394 974622694 175696593 497724209 959218177 988894250 958168821 971988831 885751802 981294982 375834115 467602011 624034274 889231436 726884627 904881860 71033473 385912582 401706362 736712268 979270858 994187990 531010370 920025674 167565933 771998426 790097672 791881532 991660316 999052956 747502117 784173397 245329145 461593396 772260894 929631314 913076996 985127061 304705902 411982892 36758337 333686376 279927654 739754985 902898913 961191999 239466214 285819662 376082261 782019769 705284971 736641383 137317909 422800634 387010322 484470074 50486046 650345959 347935966 357985300 770339898 999357882 221590633 499988399 717218224 814169551 455720125 760946305 807855631 934988012 764614397 978743005 136784588 708052973 136628529 936382909 188619005 359454319 237609316 552798097 163472920 589483924 675554876 715492717 226829714 815738339 478580612 561175059 361476709 550365270 818703799 925477091 434136020 456004246 106677067 800124786 200839091 450092233 730128033 807494085 961742961 967824416 101294287 481987198 951951637 960361781 304928477 748002643 717921565 949875139 248101797 282502834 642758730 783706669 369133500 713739047 515092614 653757139 712095761 873756201 99901222 985574564 760934071 853566501 886729838 895087899 434211165 462954581 5892800 526491664 816309313 864852906 439914899 952031443 380357443 514502796 518896544 842826239 70817556 390248806 108946438 821133755 266323545 644578117 303980909 457897088 813670913 995816297 270147439 410564896 152772170 467723195 968367790 998068039 527627424 694356493 954953162 987884596 654090262 850643637 588764753 848207856 353857490 610170584 915581951 936254238 111703262 426658618 912753684 967327798 15893453 560679241 852068180 995342439 472946996 908102325 246906579 725019839 234189635 770181433 216338924 533846545 501887363 772487609 183581901 357710505 270478815 328206766 771368646 930244558 412274090 430142691 586004734 994374410 648619811 986257210 336327276 634054124 819844533 957540915 654622851 845541168 633925150 755566612 871666168 906539872 231527558 501750166 884050498 974581881 571636131 657621268 443117787 654255862 655313864 746791697 764324164 775539168 209411678 731459734 331298367 848348073 416739191 527488345 587811151 934951135 733982990 764954103 551206134 592305645 696189439 748303585 567517635 942905205 885589572 986096519 549764353 988130285 448524541 645056282 515350382 576832949 608530352 985809627 824850263 921455083 923993504 961261259 76660966 902090230 442147394 560390286 369339313 920807333 384554219 568423141 479603105 555628619 86854343 902367783 705909783 740309921 982265047 983477231 981200123 996685169 974156831 994132668 111850093 141968896 787264059 916028113 524763820 628621600 388480013 408886923 153553254 583851504 490029016 715134020 225669601 589701442 484491240 669711477 571369848 581037520 759638727 833747037 589541616 752652621 257958750 795715304 528474777 874553053 967994989 995984896 963560939 994156745 938914959 997097449 359462353 726160900 829691325 834504026 497394832 749982237 363688241 873276656 820697371 989445545 48429706 670741036 881234098 894014445 257219775 677077014 792644317 886310126 292527258 676998396 39048644 861673232 20508654 531955186 412569905 534400011 957902616 963839263 149194692 836734087 777607440 801552954 140948043 545680272 536687146 912604449 428223697 838211566 825545198 896564176 697006625 902459386 375463417 801847550 19386960 283563587 840225423 889069510 686807748 957355270 495056396 969193286 553987931 671145102 406853835 764859648 506975536 984451280 134525061 938501553 531960623 948470853 213604230 660895029 298141521 417258658 675702508 839988097 498207239 646053296 328126844 818418851 397621934 647105673 483444803 985733465 93592046 619663689 376325552 383958728 241104771 871410288 436919121 799819536 82400018 870818003 7777721 417764053 416690975 765858010 467903008 751486297 995415285 996263513 642846987 857605670 918887480 940712553 10035609 319448081 256721227 903418388 897629032 916162359 990253836 998932280 116400344 685450715 972038347 982898849 859919809 897624610 289703383 951708980 478602393 879593212 902348231 963735874 561175147 788054105 763267939 896319611 906754350 912860339 424625067 431803136 973339953 973679674 271344880 356716891 510630785 989078283 976424545 998433085 223295762 990805158 447048311 620437969 949176420 972708869 617600751 919700755 15624437 102095249 795644515 836125838 63100506 794827383 723471285 799877848 644120870 719489852 315037886 947879246 906126417 928393842 514732089 865194764 601600656 816709084 370577032 926290756 508116151 548956749 73580500 399757174 1490499 806648745 677871756 978172852 36299467 790752110 76393838 910346969 756843642 942158818 440635085 576704358 186813001 266855527 251680198 630415279 279696749 669040316 584494022 886193216 573797514 976160919 599276713 959042281 867593301 917333848 118738488 472105598 308269502 417194665 463832954 889085999 517848669 923842738 491064358 778412549 186296044 779220945 226310068 388616969 998013290 998308934 576571084 967936255 322553295 939754703 61686494 579131354 705740984 955408464 284955741 529455414 450852689 866426679 834824010 869611211 463477423 612560339 886391354 981045362 344408718 536114895 299978478 565374107 603838599 961482434 647399947 975594513 164807888 843824335 37034189 179193198 185593976 891209953 312641011 632872842 661076356 946117155 743323701 975142077 588802599 774412409 182965645 318244231 806938464 847391608 132712828 980145128 171243052 888930275 667317475 760310130 797730175 926078058 929322222 994326694 85949895 942134521 830637079 901801131 442671141 975752741 720302587 773153784 61869055 526176774 118344885 601475370 287798126 833662338 210164364 444775558 122069793 595628724 782637716 862095366 166736047 299138455 396851392 569041537 515879881 830202732 122123 10065436 975801455 985056028 477254191 637393495 409367142 571974340 584724650 775529618 322842000 818637345 844508749 887722985 511309967 518134868 731120795 811871646 828209638 915705165 247166178 422616420 471187916 641257438 559392515 888229048 379406984 648177407 791931237 836146164 432295965 515849703 588439787 981567863 949749236 979321980 90550778 121471323 206363762 975822078 383318147 729000614 514592335 956936386 902523311 908643043 88788627 845075401 456162146 842866351 805981438 999453449 641151195 691222475 975694698 990067474 300416707 475463531 809312665 853020448 726069568 832075334 602089011 838796026 1264528 987927165 914769146 999584901 981523692 994817864 817665127 841603855 623278626 953890571 632305635 945877340 975679432 987525748 245359997 655957738 14390289 285337908 31766477 583237316 238915211 407171611 597486506 895329577 554823914 952706682 552526117 931038322 688764328 871944714 150360647 565934283 315408035 947700404 436984813 880576007 331697935 996037989 343509101 769291184 193443818 719605224 451980176 900225287 538140725 986012403 573356113 827698039 513330742 780416988 889956409 921948261 65552541 675544125 506664393 654011404 34018330 493354967 849297821 863322595 324462993 363872576 421353723 725872287 38513753 62472279 70011298 732462822 654972935 995119094 900874900 974627848 219824400 301545458 156744119 648117721 18066732 429225857 24417764 805399046 801748881 819912531 813688052 967808226 595142153 949082898 270599279 658260588 191564432 772772215 433155943 938732924 142409045 199690550 35867599 805442064 76498462 213792843 575521095 584312546 409395463 850814524 588852889 907338694 944453097 957230868 479178249 653728462 248576968 260939407 50583265 887322259 884237591 950308192 464235992 561025067 936000910 978586432 53899850 471099109 57602668 346700977 289793989 474927734 477134093 903087139 968400667 978827271 76544653 86517911 434560373 842141307 845019316 893138118 638588479 788895381 227959785 821115841 964248563 972412888 725203656 841532496 472339187 525670875 231400817 428786889 575824341 753638939 247423852 940660482 324311118 617579434 469014072 944133844 73085100 255008196 90217870 508894625 74802855 328621346 739988066 813277829 810220120 933377364 248796306 488811510 876453031 974333474 658257678 664118733 957578016 971856958 413910436 476039211 15258112 147034157 322308490 536917256 637431380 647033692 216502083 896436617 164530325 563506216 880965571 986648444 493911746 737781747 783586348 982950041 400626509 840808669 397389853 818830629 463366589 471579649 296550441 979207341 820480041 918586506 917770790 997504743 912515118 983764088 945224693 984075950 737738636 943481485 287951273 787063639 316006607 924864859 913759393 932809766 17788697 226053375 78809154 816283263 1336906 873775050 991704702 995771289 21633191 493877832 629730093 833839391 420030874 682612016 776545935 803005541 610487033 718537025 670039097 933135259 491449783 808028709 514330219 541159203 996030533 999708216 715290288 895793504 61406024 729978012 365489274 842791461 388195461 402735205 298719929 449589002 786398636 787700186 962229842 986578983 269350760 498861136 26699638 501909030 638850764 704049528 593161422 984462334 752894268 766042337 367426480 637777751 737659976 892601584 173889507 430569229 310075709 593241827 330434079 355873372 397347010 829241359 29190370 413294645 964823695 995216568 916238103 944887024 365766218 879966387 818890980 862499500 315963013 429954730 906555093 981511207 391776120 775728849 16654037 432688571 168475954 658849166 791471442 972819863 487751752 655878444 605157296 724761782 150899 194210465 671114713 979689909 537357208 792593786 830000482 993777141 477125520 809234528 382607241 752219448 477212463 958895293 490774143 811306323 134401302 753131413 429155165 988399244 868020905 971110004 637894146 938438532 296516706 431518635 600117821 658041150 310689223 629742200 207133725 296088944 494048554 709449158 946641983 973593178 242270239 489577662 294495499 331221454 197043428 239034161 31855651 42972412 166348211 845565901 312440464 934393680 750289845 923770762 129248831 818295743 62098949 420418854 328329649 541520346 584966038 621703139 117440565 679779570 293941290 976229549 238505793 951429998 225421588 621353960 519520781 556198385 597223210 786226800 254694688 714372418 720798714 999488115 57463494 536910282 925468831 979566718 817559097 849209681 239134212 784172383 532501072 879224053 704740268 782575908 770526986 904446462 861506365 944281996 501415672 988479865 278971142 613630086 159597515 935426201 272998718 414537799 920225661 957105194 832815393 880391775 745457948 979675818 501165172 935528455 820098864 931819399 345908145 590002297 11400290 520724843 605623770 724129200 775233124 976806337 71935570 979449941 58069867 248429753 491111314 518955502 843581569 943012581 90718042 913493091 480091756 648061253 338094106 355333796 966982392 981825809 521440659 625547299 10873519 17424691 768720692 960772537 42356957 270901330 658879266 993308147 586552411 710960528 943450686 956474509 471798614 472428451 701431878 871157901 674596656 764265453 744864320 774714969 43722973 892075781 711555512 955933264 283480175 554133841 432342167 816839125 473582450 983102443 661060395 748839517 431110144 685114454 166343564 399753266 711578115 864179793 408028422 806781033 131455946 747070674 438755737 912877844 637845380 768094773 52735433 868968613 143911873 363681382 206427419 458578016 292320940 376007249 118307762 852003041 174306705 791335342 326762084 825810841 933469663 964338418 437590011 580652151 300730332 719111262 410559812 648831042 328749258 600696738 284700805 894661037 383768996 733369587 548621838 807785667 846962023 881124598 997379671 999690805 163052374 294388952 58661901 533246704 349884141 373299780 867300187 921684561 238985321 372631016 829627384 945744074 924281765 989402390 229741762 826195412 715703044 832869873 567281682 771671133 116213154 446557138 188359117 249608112 425408506 997715322 907661503 929527521 587761022 601824198 555441861 734345860 58287500 263691982 818418266 845197658 343726250 561054596 671410701 798650173 366626016 419536290 609407221 645479108 787241962 913318163 831334040 896409528 113314079 213804870 989134056 990813936 803355582 848264457 4699163 766910718 766465640 961635765 363361752 693225219 655980150 693482369 127564172 841792911 257727050 292624553 868169884 986730847 443185501 979285838 654124253 725765914 344831525 608866777 673874406 719663450 551301110 775254814 352446494 734587613 386801617 941491119 740846678 947307172 786656211 926039357 684684100 883505902 729199183 921686256 188567277 641301138 259310462 915102313 145856115 983168040 935275744 966850174 482259004 896261148 936547794 963091688 613403837 759508444 10992418 921096257 840008385 957217727 348284213 449006562 761035915 940471822 407688243 467912236 654094293 705921673 63980801 508764528 369476524 857387182 82549774 371955659 25304454 500723157 786358028 821804746 478233105 820766336 945242688 997609212 965968570 981873199 40496403 902810702 468250854 557206338 514705149 558027228 561771941 818509884 636147266 894939578 243013205 447623676 159779506 996257441 284116497 303450147 591526354 839856897 508884108 528724134 659235617 665046873 889906360 914176545 532539454 660830159 972084375 987093595 826438426 933132460 694517382 799389470 325735644 637099013 141283490 877495768 422906966 928441960 908601386 963083582 550320476 800995303 590311704 664546727 739409531 993855703 317063806 637171545 986673733 996038375 13015020 863586176 615165790 700805814 783381609 803671730 243754766 257833440 614503638 655564963 162838473 997403755 682692929 751674425 20312635 118757805 789618044 936849373 332443066 651950542 277092731 391483737 620679290 702302748 918170112 976808695 265465744 308451028 954196598 988901228 341011369 655996957 725141482 916475347 351288277 563247823 200162531 546427389 878175336 944637580 546633321 968747055 626123940 685451869 244926158 409359344 782441004 957132433 386524889 923390644 543509315 940560332 203089900 408687540 112977318 851570542 74180102 502956920 120570520 126439851 773666755 829452502 136261134 330902576 435876352 593321260 394028030 626214550 936701724 992584998 269092782 743539194 65077800 411789295 731627294 766637722 525379777 953457320 212443456 924615010 675457361 830071889 144922205 221430357 655098650 727733529 368510372 535619395 323927226 591281669 319221924 397427772 608929802 908451810 535309518 619173181 704664818 804173089 425595880 848956715 272892171 541038915 343507573 900668880 906279299 999000344 887041531 887998194 603485755 814965119 748300440 933614210 859308256 911234711 510563801 585365095 569451886 810210766 386062313 508224369 826623850 972542239 221690340 959663948 49817423 834975318 664415297 941831642 848646684 864551264 310499974 985042505 645730133 874766578 890819101 910265664 36036448 865692551 222580858 975284439 58841945 313105570 872129549 918997646 477323868 585233393 199301399 792209698 52344985 154380038 680756617 845291451 808800476 877641240 852910602 933848476 175791493 407800436 430620453 541640848 597873004 834807477 133155220 829531550 708431082 964128139 522942233 570075373 375149180 996477728 464981030 868212770 967371696 975733944 431197949 870246140 569615443 729107174 24880604 326822629 68210953 770156315 429301296 565261089 813357042 930285691 173204715 829305436 142597971 232518290 878982945 996076851 396890832 526741150 81503192 501285487 192884082 327110185 945673567 947354058 978677069 999029810 362188470 819799836 778609753 892631520 392539896 749058235 90709603 243722892 234922305 503468294 862695889 886071751 317073370 689611256 823819838 896963474 92199664 480190738 460353529 914313763 307802746 642486090 840170471 861817222 434515196 612460124 448998446 528911599 986575492 988061526 193169659 714892640 990410627 993646043 891862172 917429574 450710712 980372564 666559668 825528982 211370439 862762653 499652442 778198148 831600954 928838477 957666652 958363158 400383800 546849141 838480625 992179336 87805467 936590967 380559554 900002051 450520320 527941101 869918740 961903411 644682664 946940933 628020930 928679584 36053225 440148087 942259771 970337607 446193317 591806538 505527430 598366263 243500874 455820590 157277982 952789045 426135881 492769526 392886312 935987249 322409461 675640846 944650432 952346719 247232142 416821113 289418657 569894110 602508490 894256146 905274620 976371791 360430410 467251254 566268647 575046837 255637630 620617775 91952040 443860430 380112264 662173623 305150065 763483978 998961617 999138452 136503541 709680525 645189456 955859162 688961477 827554066 22796055 97884139 575994350 989503003 18794569 120678135 502109923 630210153 912301153 984749253 478731510 548327275 903178166 924059918 868075748 893101121 758389584 900880325 916140892 979388341 213685045 953723865 642426089 940098409 66310080 217796676 819804699 984649312 303914220 532716682 155868162 294611068 762806272 770658288 83860628 444441742 670607725 907469704 649601969 783928419 563843496 589296694 763073786 985280142 708820300 916184329 718654989 871586924 801637727 960281396 664181734 711402975 624669520 702046707 889587559 985258709 113253521 616115595 912926660 949586210 451660251 505074627 482554913 984513650 941109292 964013088 456865688 676516601 609406448 855100193 338398441 769045292 526695204 862128966 705784032 774834994 409509984 855594543 156051762 647768123 268016228 949496770 472941642 941673013 388780909 860986880 1160001 610758097 67141992 316686160 210954657 599959597 57826114 542188595 343474322 534602155 495688875 811594027 960258191 995313548 460872667 737414021 6132006 275791220 546522223 907999879 850222636 974611819 136238977 199959869 602237479 879484580 538688414 570256500 322565321 898557720 323688586 824781340 712222690 876160512 876262002 991352931 825748275 831852184 260150706 395577625 614538022 874539086 272567825 830839571 600008193 930995080 977756284 983340918 796724910 868586081 348792778 357552318 979205423 995661746 187239876 801463960 230539406 747922229 23322250 683725475 177900001 757138834 203605940 488630876 716431244 988911564 952913033 996370054 10015183 677391654 553446936 699105255 452231696 822983774 924729469 993916197 735552912 768363432 301121394 378129159 53127584 908628607 410403228 773386336 605284492 870197011 110794192 639930915 988189304 988950927 223065111 539819706 50927767 687159783 507840978 761016403 664346491 725424168 342981297 944634423 607793799 717466353 280211571 455571516 998507046 999080992 856792174 945099473 828557926 845054272 391140709 528289954 730282829 954469097 20467436 88800137 274165004 630767704 53248053 821688953 364418276 890361159 297150118 692779665 774389490 849091276 469987993 895929222 555642582 927620213 725649536 922455341 930900534 949538421 877433481 890676149 458516754 796511817 91837458 761791894 584172722 940512048 685883442 963695314 609821612 668127710 349842824 419076873 779547581 860838020 92560136 866776531 893839325 920906017 299388462 719473785 66201329 868470220 154380676 716072194 108713058 761224573 343742928 429486910 288944923 986995848 866185280 959978798 345475939 978625595 710158804 905540615 104213769 993698313 540251811 600143940 654910122 925266401 541358308 657954985 269193743 342762135 859220916 883967295 860829262 947085876 308443364 728193941 93955760 992061853 927328100 983571906 151094437 995352925 263267519 528710092 30661306 964991509 419135358 774574007 993478091 995376017 198120988 828425290 830058996 937632778 870352425 974371103 909920263 973538899 932584744 982335214 560924784 826733848 448559848 674686655 668759340 855477299 586428964 854564975 279512667 914824467 737547707 953675490 686838763 966856100 655024301 890922730 122290894 813147802 203015058 900384307 23728163 850472370 420008814 478442863 672814548 944219993 640258283 858119058 823149985 936177000 893117172 994683321 861607476 880887081 505254060 858876194 289500975 590014148 626013042 693336706 77800096 895399926 956742968 996012531 542682121 858018712 762060028 995304465 909160086 918123610 724380538 985696691 298751737 554351793 829771531 844058887 584648990 742212966 427712080 778710735 116079668 463779746 353296862 454734569 292117852 317483313 646491280 670828480 358325030 548482617 845021283 878620075 960884214 988410070 819013978 828936698 976549547 984527794 235128670 270706033 302754653 779811219 218167280 404747688 710472285 723608423 80947013 277549590 452579168 699884468 586963877 870067849 634106519 807145362 30312191 917658502 612067461 669702257 775466855 911449995 538053551 981414627 137480427 146769351 76628922 127656227 453383472 936899247 215634224 891086381 970738658 996607538 421498664 524460208 792608306 814395939 776787050 879852805 538034190 823685142 754373625 902660885 942094041 943523565 53126049 706029912 420678260 959979540 538991976 938046398 659785157 819164511 455651212 598751632 181046778 406326568 796261830 953878408 480765714 559116303 816906662 883767035 259733675 359345275 884329732 922635708 302512078 981425908 515432426 591898817 103099940 917105075 821477234 934389492 711260444 948962116 188700610 887160699 308808892 599674132 830338455 950629635 259554730 822282805 42492101 312782507 122087138 553708944 582077479 786184058 964184578 992666681 432482135 453919306 592426551 851153029 142121124 163444467 674060746 965014732 842273507 959973613 80287784 385663902 197695130 509011774 75384202 663732911 18337402 516636130 843865538 900018906 876835961 999542202 750884538 855057955 807827367 856050371 593771105 809871022 235576797 250439936 940586686 974024141 690336852 788517199 173563244 260191190 611386212 616924644 201356441 874662259 522213144 785634975 656969702 825324494 644355909 658456959 989821232 992847042 629888463 663743349 370171395 592364028 395209837 568828268 787333878 908930719 519813924 806158907 715706887 953520869 45316483 844965457 198822589 714523527 323704028 519802166 188122031 476891387 156291405 986597274 958688650 962997179 487339832 981274853 49485222 488839609 229794289 532484128 317715170 718601975 759507872 916630896 365594764 483604462 33487087 621337145 734094187 815529896 382931820 557626022 965707218 971593837 530440511 705490537 690864303 924365706 891316258 962481430 104920611 861427428 993953231 995731326 442509380 494162259 312791723 837946014 670521388 838167749 982043141 988320468 181347581 544108609 41971155 869389613 951696795 956764938 315943491 897770133 496366537 956923262 183348832 437490183 668162277 995418820 762087280 899530730 565378819 939418962 960558478 963774270 215944006 612388337 142437605 667872954 536929671 631311454 152119269 166446922 334111062 683285444 591653666 949042302 582412197 670177897 198906290 345188163 872970515 988882702 797718284 831929387 53308600 575647956 949707122 991856401 771499488 927786653 787873739 881583796 53217772 658597214 507174930 800136246 951659526 984642312 968687604 973541116 247869621 445237970 847893668 928255303 35039355 61247506 121322480 756548963 946509647 982309919 256569098 650814437 332948067 635799642 977829737 981375636 411989567 618853037 384527457 413069760 536209956 953694262 697264472 890071444 56789567 299209646 918612228 930133623 937758540 981983107 428229888 428429947 986669239 991029233 48990558 477752088 864367230 930320360 363467350 454844686 185166142 769788176 780431393 865021140 703414293 798581700 535681424 771307227 635036374 807109097 940035393 944804327 71838833 803451138 969317420 985458811 941421537 955262206 99126942 824567391 164873500 819112587 25303275 410432940 793040190 884289936 115144594 584955426 57191303 847291559 560607432 861993243 690364907 823475626 595431563 958867799 276421869 790510063 342973862 765711600 990671116 992887109 473358724 693786576 281184758 632199852 400580811 431166079 978860194 986737205 626262912 759630678 64270496 148980006 600880664 874576560 906427249 938147007 867009894 967999043 732885177 960783378 591784636 698675650 685444964 703294205 473578681 570637970 9146679 415939670 281240807 941375474 103269673 782680119 495131768 675994669 532681973 960059449 97768511 622519162 99020547 768628056 890532593 944231312 623979167 835554027 708218164 998731519 657416561 716082530 858935707 892262622 992745390 994359094 607489960 890709270 548673938 924546300 913054552 966527115 18833681 907581222 654442033 883606420 833766369 910499113 785502448 930262169 364990839 465585687 494860154 779652811 320564270 571352757 321441820 576678993 410585700 615030042 980254716 996145782 180391200 626657178 766550876 996797499 785783355 880267089 79259748 446257884 162030471 523386350 19077474 719195073 785474534 847533937 46550924 688566518 632103309 674896179 357324562 658169452 98731805 641220640 812058558 977102714 921614762 995969782 175167444 593254254 185389977 584126997 478913591 675118056 815461585 950828058 938286244 942820785 2446253 17938695 840674949 969850841 339178666 878232340 29888999 937629360 317436597 633201990 560864166 913254613 122873088 917949341 621175774 974034514 319298962 788357548 424449915 731862992 705271271 803875135 914551414 915551974 232129734 876058967 310301783 313682296 219277493 678366818 723900332 780355245 224603945 850860954 855666840 865754198 340093983 989733802 544318407 722956967 822539126 828007127 486153000 700584725 564221929 886040393 968512542 971181582 228166659 630617088 573006836 909803221 951032706 964684477 103332489 197865760 492473333 510048864 654242595 806122083 484508023 785411703 535431339 558284825 873898160 976746460 358829247 789455127 805838189 874132909 78311516 656357945 852080852 873211804 286806819 412271268 942293528 960852807 444814530 454893186 725446582 925400899 518551549 854206456 70908420 174078922 778882115 991248070 424444377 682365035 562903332 840011202 794856421 799068282 707881518 930508098 506471774 804985071 233193125 778913621 763466794 961999271 121021250 817290054 224763727 418276076 964124597 965974185 569281474 976621715 369461305 637428137 687593440 829324138 167672499 611641724 546925802 878057623 442297863 621550552 769883687 992414249 332123635 415130209 733866928 913883504 333416729 522187656 528436203 763414082 808987985 830432977 667555170 757002860 59585639 691090395 767737931 974035771 92983400 319769301 20516094 38196238 1559564 17752819 897313710 976177665 627402942 893021602 756535862 790110620 572536711 735973151 260695774 906067070 592890837 685868714 351140451 813360467 143607101 177979835 805844024 984888803 11524864 29809526 678994634 946439293 927553160 945999040 898717171 913608458 895312289 912131214 565162268 809663082 596371411 757136826 358181598 870329736 381588623 791543486 485041979 822946915 852431646 859171950 440771002 526532446 281229324 959600396 710519859 856046033 409075616 893552797 532052606 643873676 210453141 572865146 349470872 678906191 961031884 988862680 264583862 867311776 844789894 956913974 936218342 992863117 570699606 727216595 494548291 772179584 978082513 999391093 261048068 454679702 979052724 985501059 576626337 686201572 312381247 472885655 703686516 835167142 838688039 852948682 404593329 552219598 331452613 819456997 953035129 986911464 247328029 468199003 195386467 341260573 311778525 382461074 840901079 990524705 314402527 513365944 578683365 929024323 954394867 959956769 669596289 795574912 934704065 951819184 388716947 884892142 990879952 999477243 203536374 368805463 191282105 571192045 84562667 612469648 7090353 418937011 52855891 367388280 210293274 266053495 235806315 634895774 479968889 573147521 926804924 993963107 118569723 814505894 614858565 859952006 642981965 662067787 141485766 836498060 517915833 831814944 221882155 349381443 466373079 691857020 106011882 630018320 512244478 724387207 472639889 596503364 856610407 944267266 69444233 497358164 744654396 921195643 772185680 943374175 616131041 792734184 681657652 877728059 151200655 781725951 42040262 774125512 957563865 973466973 911983848 929518946 158264025 998141864 154284305 606547717 285146403 847808740 244294972 536648702 734310819 965563407 145149192 721555457 844962527 974218720 230882295 760693733 748865303 850578386 715955259 978958764 75851372 253121145 577309065 945647267 131788476 140843258 576905067 671862001 759160246 997719862 229806865 553590777 829740140 946844827 943840535 960296761 423306063 894960849 529380641 737613141 354490471 659630043 342377695 530530901 406158410 952802999 530533520 594108448 335590 122122031 206508890 553005923 703398448 829585939 213329529 248657779 506712975 898378382 241165796 440032997 283983129 671406490 107134622 894926828 533737441 534219231 794706397 807156339 621197470 889864625 720072602 731073155 174651971 771752838 360000580 422060483 100985691 418013647 361394644 776722444 386491957 765814717 325851548 850272922 779333154 808781056 227427706 959731246 156842000 240019345 550155991 661637600 687006755 734653460 140286826 718656843 57275795 767549435 717405999 821380355 867480712 891127044 369818349 685802542 283636004 730823360 106713038 263981189 4649568 101106846 595419051 806803874 224117601 772495979 583341896 934218475 842205542 965633483 564108148 949370307 574435927 986240483 634284823 637438091 54018640 405364621 188917801 464927953 248622953 525049699 799982711 919761409 550886429 996082741 563454414 815588868 926090243 949279140 955804040 980584039 724124282 764832876 639176489 968140893 807604140 893706488 363947292 599602227 124850184 282032891 45099456 241731659 569494633 741319592 535201108 845349521 16309570 469277421 134381575 374511425 659288294 679058179 751523321 896476289 754199074 791559500 396619695 499364241 162004864 792095737 510762693 883557746 797461587 968132297 435867194 798938583 892680378 906942967 458110736 683937056 213062856 569532817 786235459 851919334 978143180 994766369 660302633 898282031 226539360 730309407 885649242 939002312 749028558 790942028 818021250 852957730 82342796 490858930 379997946 478040966 557701854 980993933 615061991 676516974 523012352 789640297 578727001 646957688 767241845 938393046 115107333 720157340 586494526 650477152 299148358 401039922 16868740 720983468 400677153 475775515 122753531 305787856 400060482 509798969 118365487 826287445 830434397 897812415 394145944 514307184 471998700 674467296 185655833 311988632 55702322 444305320 419530427 485176685 498073645 964977613 63488809 800117675 569583730 685342703 919401494 951038654 452127775 927678848 104199595 457399477 508382445 606719383 13243441 112060594 431350837 549373959 778613175 942494640 738792180 948564859 782450786 796198356 436500087 898161956 872987147 987763779 295521962 712931942 902403906 926184702 564724562 917416060 917526565 948817856 516161716 778014054 645876369 721316887 629910089 949091161 510014020 552267093 920353543 934354756 117965470 787642947 500913545 642604581 217255766 971350347 616887928 984835742 123375704 159761687 488661484 963657573 943846841 990381735 991586898 998247823 596565349 910813497 685068211 840244412 545505717 716689265 963818972 995853591 630942956 935531113 40293200 631049892 710881122 855379326 363823237 620673984 639525173 821576421 468701163 496739515 568354961 619146370 907956158 910526264 675164949 986954152 630191301 746174591 598749534 851854960 151832083 346661246 645971828 992723378 302059101 953711810 411378966 453886025 230434942 442037672 957535051 962648527 863834461 963455730 270308277 357490555 785768234 862027543 528920596 578033060 243380793 906037514 568895471 847113239 368656441 392331616 643548937 697534934 998721324 999290045 600046729 798313666 189496347 568412518 200378376 966910653 9390705 349650074 541677087 867338754 693642041 722770875 263166191 449174142 938985280 965828328 991972375 999748336 820855331 843622764 891556801 977111896 388774499 641478080 745927672 925631996 651342802 749006897 932875043 981014913 178520678 237043495 730687391 801251263 612508824 712421017 779548816 966552953 852910777 931447690 626329573 641138742 238351296 734710791 30430233 535456620 591503620 602813319 234837116 840462824 450239626 697705163 753581105 808098991 703892759 786479963 380954516 698931699 612867569 623746918 186013720 843141363 839186898 924511366 333606342 521967532 400753963 449297752 800690444 915282526 600945929 702785169 808338883 839288691 566719437 713477922 106819553 266277992 459754433 818699851 726798485 961008617 914027329 940931365 167248442 871811623 643530233 945608750 650147526 923676677 880692714 995591551 42052535 954510446 532763811 706164451 293561565 869816568 293405645 426218030 321508478 435458596 367674634 610312657 816535128 929438506 935293395 938415492 659236594 795468244 915343747 952000086 177557466 704600075 699587625 951469542 375523248 959078007 303091199 557169054 979916332 985167360 477064407 870985414 852069261 936355129 138992734 216313307 752428887 913120858 30704729 974855517 716890680 820478888 160763015 502738472 736789855 960552408 759601224 780505908 777267815 913506301 343705408 774738953 465025741 649027493 380663405 627713868 714844740 985225252 442614479 995134485 829917525 846087184 230649107 840914172 744191924 865387988 392566989 577135956 340479475 563492561 351207826 913669791 447091714 598223685 451791130 902981272 331546313 826445073 967385368 977591369 926082440 997855317 257820829 765177612 800921508 938690696 943107511 986509794 209365353 701289337 130824197 450584506 154400195 248577250 838731609 871172896 800765783 902890155 300829013 527105343 993043379 996696611 334709850 493485537 993641394 995236899 978634992 998438528 134938065 748919427 353060645 522115451 508239006 771850333 584103049 963226681 164670374 224388705 353568604 599642344 968524994 971961974 109047576 659125247 238160019 585720455 461294072 559301315 834529932 853973193 485500842 877926496 602661054 678123194 698888711 707589580 266916441 918787048 464997074 959534696 192094307 263859451 922629724 989666882 436412778 610811287 595668737 598031106 482616308 571465977 132080540 220588598 424242908 922413973 296511490 749314323 775116419 915510472 983272782 999539650 775148714 878812656 705448294 887925402 394943090 822756553 631055181 979112598 450530149 920047473 886002385 999505063 786593700 868891232 979750783 980230323 756476192 972807083 692029632 864053602 959340425 961207164 92948328 236129367 956721195 993099538 499728589 801247437 140255323 368512821 286298371 752256500 947437890 962690226 171768133 283129629 799664626 916050325 450883229 800834734 745453585 997726512 202586166 533002085 869954016 987675590 131526093 350512703 741708503 786574670 554791666 629107324 565825562 620353119 788394098 899746677 123197911 782909930 979257943 994548496 173890198 376127172 393557301 697487596 989870050 999206984 430827605 457852286 455310254 709298553 971304708 993601900 782766304 967776431 281949327 873415740 710097561 747753168 508297575 552314097 850400452 975704512 448591669 904150059 338583610 847249501 798118196 931819213 387963463 844215182 10487205 555762118 232631036 974102237 329384760 491893620 214668902 733956643 781596930 849579364 641524063 860281666 325071522 939723792 811022167 938606995 523311089 818912077 808622379 827593349 86006876 489638681 887998389 913442099 556901715 880710700 601352399 671136195 840147946 892795194 318519609 920935317 945724653 950096729 547027385 559904861 651346616 977353436 586439556 697816263 988964415 990993453 74512682 869941124 284647348 604970267 982532862 993854516 23356316 268570084 678545192 953924179 840225629 992476710 650012035 771587139 467841067 656965518 137492004 760999168 570240653 671698868 19730875 160992523 802707843 867407765 137793247 644259056 948413059 982590294 224522704 868137574 924388807 952716294 952393659 988724740 912358239 946952128 921385721 965232348 860887553 955762736 802569618 984213551 798575490 849821307 224743594 745552474 213199451 881322358 850942818 896834660 908275550 949799915 479254486 757924698 725788420 797826756 4627197 896423923 765347684 773844006 532786798 730508761 173298573 565843289 273393335 744199183 358484818 882399041 446296142 570437718 463914171 483759652 459711227 829100340 22599593 923180214 368679324 902937974 101916271 410582674 352592445 443582325 339593444 391001213 76604689 632475956 235373430 770272384 359862196 783030661 672569250 676513147 775187925 858612929 870542354 948826826 68486578 103547678 956610568 958563616 138492706 325182245 141208403 636604026 776613973 921635651 476302308 592134910 177678558 635379341 24103989 780661354 840668056 948397495 139264389 447086308 9295865 887841078 550042685 747491334 595547555 937009339 655229302 856609457 88461679 767722791 547627521 749314266 659176944 967784187 138276653 237800885 44505137 174649516 860068155 932784340 642382070 653887041 981013855 982092107 16220755 693279447 378788471 773666377 268043206 655538349 84889562 704163497 291550175 540525508 939849204 983406784 96306115 950051380 882709718 996386427 123876270 507205977 845267101 943640810 786285375 867956997 303388999 993749443 543312866 896318406 295067774 779554287 635827948 783587136 602923565 629017798 133080290 488422179 111319072 548258047 332448329 575208674 563871998 850712844 966229720 967602797 830347139 967182372 732845358 877658389 35862826 650617551 502166670 563486860 514098262 834291862 643055350 821385320 789283109 935990118 230618515 703990252 273699990 363244084 838688212 839302551 872929074 874025602 231153953 520929900 707723205 955423322 152121545 638531926 667246841 684921724 118945934 786496761 892028956 931735156 972632491 994125735 942088459 961961044 274663420 324502385 814175691 924387650 176573715 237471038 361008369 536034487 840762416 857002215 682083125 698615418 999158418 999881078 3653643 358199179 259966967 423894277 299995094 563712715 759698504 998627427 504554332 655875747 248636792 954137300 492400150 995724174 433788417 884070018 552220596 762515356 886954131 896061111 339566313 834316245 640445696 847594609 511843145 753513692 97712914 685809457 50070169 313267630 636306697 718771797 441489827 474143908 849868590 870080192 805224411 853476779 980250328 995406086 392447200 822591340 849568696 875255422 907394775 944102666 589452205 778523728 266519940 934216909 537293812 554564459 206865680 893397883 530221722 704464910 313900382 795925388 18363080 545602346 519447267 789119774 321251862 750610972 809546166 953418498 500517066 756855009 578268717 733844461 995150468 996956532 18909443 545253837 191585252 565455429 321935591 431451833 103264605 239329604 901021461 924096856 290845077 996258639 118097097 228494591 501056198 749901060 169535676 429102006 489689847 527869449 864822598 879694419 330656000 880545521 558200582 687834999 621722431 755328767 78637063 399869110 329018033 772334060 331929183 560272314 764755942 789257214 477775470 665428168 88487128 179760022 764206521 777460183 29581166 933138514 482124868 978648961 21757157 907573369 80314517 266131265 522284269 997896505 985588183 995111516 572233170 629849174 141024582 756130060 129268061 338401987 530829066 890541671 158615319 459674512 130467236 519699825 176262752 517447530 965706584 991885999 832384011 990290092 153145405 192723798 713288815 784621843 349571215 899367670 76691166 589395453 59350628 472606036 766486552 983175798 608399572 939376522 766072959 947623562 958887202 962997333 418370367 917895384 161870234 465828885 572935182 949608505 722780601 884113733 361986350 624460849 487548465 977817628 933872720 951529655 271759053 552143364 502819209 703009712 116412693 764612318 302091412 520932630 221752762 321334190 977748338 988272910 145640684 165791868 227016897 952586581 886460104 900477455 897798639 970292611 396970770 479029690 339556649 398713354 324760581 413066764 62020399 604711777 516045008 641148359 772044988 777266138 986842648 994000761 671710553 712808437 965035200 992391293 662687140 899259795 969501276 984102757 154077101 340271825 158594389 489268151 841620976 877158060 939694051 991138822 779793851 928098245 713963464 828582673 735965636 983671787 41021021 853071683 957359797 978851007 739429813 769916914 753566916 758791320 185300340 242030722 894155551 984203282 959146270 991244220 156424126 215968922 539933802 738176722 102198827 479630437 906538432 974257442 369571658 528765831 530026507 849449553 632426345 702801807 487392862 874214771 71266822 98163286 723590909 867783953 190453916 790734504 592587424 810630055 812706412 961545664 65981411 996294085 478292983 942649120 841627366 972221889 635735586 679250458 422590089 533166093 26845445 269589851 925732754 945060478 269085210 469694410 86029482 218721028 261442632 262587989 105503407 591357246 329712272 825414478 660741738 948902424 907934811 980622351 830956719 906078785 301417280 837054817 184828116 696829917 874710657 942184066 327217384 849159666 337668526 995503971 182915268 718684701 483200813 596965309 155004725 405968939 160875390 984636569 287054637 907935388 823587730 953386204 933606841 981950819 797221963 882632948 349018386 837351371 942607667 962780106 879852821 958789500 250045138 482227520 498899241 511840720 758375210 876174455 800910306 893875479 411143369 580439121 743412947 861163601 930652561 970324735 167655552 538083568 276502458 489054975 563370495 770787708 229323560 844218934 54533342 327754668 593050804 853600808 325556878 740986701 395750210 530867224 837840221 951259174 144667361 148433021 687102295 858132955 36831714 564142452 519030052 895963972 417618283 999493066 480825509 612005864 586375286 745941111 155323442 461201058 673467695 894897941 365211779 527145148 984559975 989557359 326301598 935663492 55305745 103935679 155556128 633765374 354537986 869789059 751659980 969492902 723637715 757912830 135685527 145532892 818309700 865868228 955411333 979143984 948872707 977134442 974148880 993266253 373341153 389190237 776738574 987490560 496649465 703176860 695303718 790335472 133183040 872521135 386096304 762475366 245926813 317931730 63385055 854440328 136555098 952557235 150068683 409595131 737655525 825296391 291365045 955561893 39926140 182454213 176827495 646238810 869956433 876714817 483037087 539922514 449135348 938532351 291047922 529518822 977384196 996237741 172325907 933322318 430481103 689481143 618158321 862144212 372295836 870146280 983917131 984611490 516241971 557841218 750131153 775214687 536912516 859696846 976299179 978666302 584527865 669661201 942375702 989251183 146234123 811079260 767687902 791970606 404972585 994728669 914744817 922091671 119537098 849346890 172867903 645934298 192902753 432982615 626014321 803441001 143395825 872139492 586561288 611793805 84976195 510958169 805430990 972492214 7182758 979027996 924055042 935020977 233170347 299195851 862050508 935173672 527289070 708982906 38463408 229346023 113056958 387370532 611005894 788873988 325443422 521247853 475967303 479767742 150419181 345551110 645828301 773715148 987551192 993600954 310836384 758522796 9194621 108891491 361865999 758870895 74377957 597358037 574873497 872796850 395492098 979167600 429847698 433769399 870598121 901901011 46882597 318008753 722458576 897012920 524817716 558049073 906334659 924367834 53731488 661177072 342808179 407779782 393580971 422685216 797662837 846315509 123572378 163013297 815093978 911302958 581668716 877248560 870740778 968915702 666937592 885892698 925244015 939549090 674553013 683914706 73701751 132438907 362343729 496933295 63971213 621825869 816693604 998285724 893969138 933446714 917784865 950753373 579420792 757273021 99922441 948736911 287738963 359708495 901442601 978816845 797440218 931608406 218370794 266809299 888524759 897331301 693753940 872509584 311773807 840719764 595857474 817747699 823389258 989895691 328261320 456797490 655881432 669462542 673080194 983708800 6171973 781561731 664019332 860708486 79360142 234058921 510553882 688775080 758645926 799983947 295784381 376821074 883570097 925318525 402347717 695455311 377790322 664544067 30327830 136429705 881470231 984093485 93399599 684566794 64071200 715824999 590916322 842918779 1238308 106580220 792921092 834371014 150134822 726883698 908871262 960276721 761554706 938416258 212672900 671145939 430139186 635283238 649436781 761199652 105754993 983665370 840268125 869239083 20379829 221653656 876500115 930450766 936414971 969108346 86764426 405177179 260018841 861531120 346102363 939821921 368083676 766016270 153537611 944507023 538600143 631190716 66247041 491815463 212991082 948123533 840510155 865709916 911345093 982282856 762743646 927760265 817723396 839033010 70368636 874702226 429350982 694048341 688719042 835796335 690684566 789967494 132438052 360935647 863651847 961489817 880606621 996701947 29857747 947347251 558629752 585069232 57556344 464394238 373279909 640163920 222668266 644397471 513018309 574415749 421563187 625929088 209400035 816382517 588079429 832092008 213094365 970478814 251250795 388755486 605911258 622888265 730160183 776428328 803038004 843537735 217476058 560419162 543240522 672339507 554799401 691741194 24882059 865112198 920839599 976001876 583134286 718627213 813295814 986030858 9042490 260976561 621695508 857892091 755311067 872662143 198193228 216799391 40735249 582250900 453838198 683059878 509650439 715748884 521984852 560284800 149783161 194355924 694473653 923716088 215338917 999473656 303747816 340377214 816426803 991468925 555990988 631439604 473977647 949959134 272619552 734481946 537020534 809295346 8704565 800143016 925577355 948523673 898117076 921795317 420344881 932647898 476294257 992830796 790703239 981302019 329687197 897776862 789001014 911964965 217913412 307750206 158288977 983264984 284994062 439800519 726680642 800682667 707362419 986652319 996596582 998503637 191216359 613287360 978511518 980987864 689013379 800735244 77519002 845902515 620658037 906514868 23501885 120572919 19946648 795116927 42327885 562772009 111355848 606296565 561221947 939955118 849220500 865103806 623941445 897964019 160631997 510876272 149922477 269942617 163570268 196059980 818642754 941362782 611747970 861351564 62518541 233079012 160085065 252462488 84706484 613236304 229830682 760599116 982240454 983105197 373436922 981947130 519935898 553222649 343197064 737825771 191328530 980443996 597505512 911801888 466214977 892412787 668851545 841608359 855201573 952849057 321399370 961930529 914654607 956502674 813265203 850034183 816573326 942896472 275502175 573003304 962584559 991310255 620621767 743346143 304573865 784879810 263858604 726404485 746253049 947994267 616345412 844383299 679312585 947997614 630633027 668220482 829403517 984556265 542749871 874056643 283478361 296135484 739582164 772496651 719858196 935571758 100435338 694343031 328498100 632462767 500491581 731093899 588624464 851580495 143903610 885159365 195459486 738012380 862455286 915810607 720336425 865533072 82871039 730700437 725398144 726142509 790351905 843541705 665602727 778665001 695441128 747454440 854769623 998225925 576451763 827624173 115794800 875257221 898712598 977744097 922190310 965755667 291561421 667322463 708028505 783953212 450683353 477869381 914956924 959267001 284298739 797427983 454095002 528678319 109111126 425831017 613648158 859822228 334999548 711594926 124929313 384582225 239887426 847830959 629436751 913786999 217923202 318212610 401405051 864581151 926128885 965230809 413093743 942312362 194039902 761219915 949025706 957834705 765100075 872479363 606079408 981389404 257951009 698613070 428031326 781841877 994774057 997928464 111032300 684124826 115710513 868485566 925424193 930407672 505319274 607597174 670355517 863146876 108071091 600718285 173375135 190164744 115860666 682089485 503228193 776678665 978111809 997401413 772554078 909588828 785686848 847047231 777351719 804662507 101418216 379968536 179516721 598552536 479209544 509268663 577452379 592027348 401514501 769994199 33821084 874304548 547480487 934030127 362098681 555232445 658693876 719415011 372709871 615137799 713928937 851736648 439589165 627819340 486130135 757272179 794985610 923425779 930033041 943676399 260453603 319851194 670474837 676508788 601837192 875813862 723760543 964362857 540466288 952543987 81679271 656428806 2773694 260039604 682221573 872263732 661589255 885123382 303107345 398295070 504714545 721873948 419721246 572724153 141943112 674605891 732541204 813981007 827790075 873835909 196934668 378435075 141430088 806296509 16353340 493569404 785305305 914433775 424512507 435821247 268537131 548368417 469236401 489199000 433306016 605410409 179786948 559105270 241718558 746907160 872417320 918329971 551767521 723566241 625011229 869443296 339013092 359581530 430375592 836244589 357015798 912416159 390235681 878752725 691606352 692120914 657456504 894269135 928495173 945493421 396432611 656458478 560561974 775821259 159262683 528806267 410771563 470128718 43871036 652467803 368710411 548272155 612807413 952840499 312804979 817220538 839586603 968197972 683142230 997309154 246077991 885427989 484303112 746200375 763672298 951934181 668099107 805802862 747576090 957535183 961350452 975386398 176077819 633217962 303638649 357158434 745707656 821400032 348288425 698656260 204161504 711369075 627256195 693715706 712749608 782918960 991988087 997272669 405294636 824598300 755579949 915959943 934084289 957250037 765555335 940045983 183547572 984102884 768806447 817899872 153043951 249968353 59491182 203049733 323415573 784046403 782803972 837095774 753054523 855626697 923400349 949639604 103510329 641551553 64371543 915921778 126051448 259802356 298138032 726531729 158778464 869109364 358280270 704688503 23953965 741043323 526493215 921410842 716222557 841846293 390322579 632791486 66394444 840904564 61246373 830785960 488354225 724387750 310171627 650457026 27756261 283051604 456303223 957520843 377882999 667284393 509357540 783448080 596176788 824747089 677511523 683609974 455351731 765149185 538305720 840797773 986557230 998604223 293779558 994765653 838774869 960805490 449373327 605404337 418459373 991781467 293710730 409151041 55570158 147133740 81570177 742017425 422862832 915281331 723881899 994594508 256108282 943403075 456922293 580554476 659734368 697168180 341472138 763547005 987823750 997413240 768498710 918052680 806331054 984730315 639400476 981386498 431788716 750498286 747692173 886367188 671477651 988166874 236734067 647759213 332714490 892980652 997436624 998584767 712553656 757130965 643936454 897549629 898696810 983155495 443885622 639246527 631769082 804324678 927570786 975994205 526946290 667180321 747713682 799120757 897079883 916196827 195902025 356606496 128240720 404918516 759981250 991005423 144094836 232582129 341543916 461734973 199982525 468419593 251489611 585350332 33249263 118454374 602274246 700453324 371627946 388160144 111171055 761079094 751325971 939601364 336636043 366411565 256801171 752235948 820576471 845029809 527306587 662587080 442477568 718605475 644679362 815460367 506999881 511539878 176793420 663897552 12552205 859039220 952790070 953939923 314985786 880323768 67893481 983732344 719231464 933220258 317319122 616897586 232039912 709022424 558719784 981540431 696467541 954882030 28811376 435525724 38921563 786176170 421136643 944822990 432117189 642080785 977041022 998313728 71919670 865834220 966599196 974589121 845376769 846162773 668516905 934043125 149240928 589480169 776678650 881932062 551848506 977559250 575050867 709550055 645239905 923719924 579127215 994126500 367224223 630256337 652930826 694271044 442999640 973306826 854935221 968444128 882963492 934155740 153250371 346549267 59259337 285894266 408887650 981647150 148008762 484155584 657578876 872117942 241932994 482987122 195265051 522398129 86195482 800443824 127113063 430778972 631482956 739502636 718827103 937423737 190956951 955341992 951458320 968044058 992038939 996360422 348254241 574008641 214006912 278071793 922218677 996859849 313821701 933703251 316653237 858314662 746291379 942623407 379282700 634917411 854892691 903678647 638514620 981246853 863120261 923837947 645523269 735014153 179256887 243936594 855458056 932101130 384431944 646615181 651710643 760376743 886081146 952100407 849270345 978344659 533752707 938150508 180779463 712641802 825934871 975984102 45052830 133716190 550164929 870515045 442146629 519475068 69761303 832384013 681220745 905545618 103943830 987530869 591333239 614538985 515836131 772806906 946356101 975637613 339281061 551381592 208345201 290678864 819907803 989281337 337206305 403533229 209340664 773513665 455978013 926499624 528957488 905488205 570423392 648798704 124744563 474970501 836738392 881975307 612158205 817737837 409178021 751480455 723781524 772606974 679698597 701798242 19609890 423762727 531250085 907386600 965053287 970183839 869308580 965778134 241021591 949352077 439590777 794687762 754268692 839689973 9548931 443149947 882257276 963901134 898587337 990314774 224266078 681272174 222250313 716992250 353124187 917218499 978818827 990360810 74975109 454889264 95507414 321073102 697016771 824414662 429729192 663703972 76583264 924161474 60268434 988140338 277410538 915688877 213586405 812498350 65190436 961564823 826718461 931279362 900731682 933326467 166900800 740571596 377153985 698962564 483867791 925293262 242842344 862272799 788794632 877821162 607356159 887514574 934917164 939802514 516183515 634614220 847793327 985973858 388847942 894077622 399455345 939219613 534298742 624143601 661312680 770252308 286749214 924499210 187000807 418864703 980917388 984914839 521423916 767314963 75345211 255529056 304273890 377715425 959702376 989074868 236162690 903075996 270296923 544575808 711352980 968255769 422544642 996034962 573540840 607280024 160218520 954104284 869185203 960960553 52435886 887255829 180926549 714979641 590732229 838882696 312560604 806882254 530934218 872606933 405798099 775816099 945334305 948488630 19953124 785447893 289156665 990607822 292030594 548901555 785474433 975331001 991670217 994401297 311181549 658221100 813366345 826193977 618733734 637746817 830069518 930115394 360795450 641470763 360080130 759493797 298517424 523760211 266260880 931073537 210720971 610002193 782945349 913913526 744792230 930365996 948576113 993267835 23928711 427923499 313684395 601050019 50533353 311390295 396953203 716766838 796644550 932546785 212941251 726792799 211013255 447988416 771812424 902230735 193326945 291393221 19731086 97660788 116469277 247647190 583119719 632627566 453311140 689750660 135440880 288785544 788632790 912985970 925882132 994869666 961324337 968926105 220225115 797761527 488416716 541229182 186857160 362531609 808397304 963259915 532798171 633342671 894134270 947193121 490453968 659757084 817178609 978743002 279741595 476518201 969327610 979247423 558822057 745764692 285340807 612205491 333936137 914024556 801340558 924175174 938134934 956581533 180986683 455833784 266755886 608370139 626901520 887485839 812971721 930725912 444983373 687565983 998452371 998514662 996929025 997382137 841568717 972249871 834092299 855961808 100521402 354385355 545283665 815682672 915679871 971612081 98053822 565955730 940757488 989267738 835141737 909909725 778372708 787444035 170665184 960273061 181934673 399465627 291534548 432447332 569948576 957298139 736078724 837062064 376698062 870852513 175769702 195999187 766403397 766970491 324226631 899252816 645706194 891301639 412658825 583342706 62078553 65042488 352094955 464479432 972471301 999335011 509044927 734672482 780593016 996504805 716732339 719255527 52808353 759396214 990239309 993744604 846577488 870260089 225143737 713364445 764327870 829252742 7122760 890908899 662443229 741565781 798530165 954111680 290412929 313176558 328681393 599517037 94028468 482433200 179927264 452966391 87660896 462139141 729111949 872588220 547929296 585530882 842579434 927661479 964747599 999783339 697688030 998159244 253335752 290708761 220108731 491735658 888325948 914303718 136498950 921290263 467940382 626265960 435502436 448963278 265770558 356557989 275598377 996933822 207907597 303512441 67293459 97776600 218634546 625829683 582906091 740194248 999541639 999571140 434084614 935703712 455647558 842561050 493213962 845626977 729257317 930084629 183807162 796138559 598537663 719783491 155773598 649737878 24615336 683923733 666663047 850616596 436483938 858074888 908624969 956227836 741773121 760548723 89848165 574193262 694463582 958836242 844951925 884024647 913134529 922477280 268913712 910497158 376454152 784915979 629823134 770909575 427982962 658243676 787100877 801977875 179378017 583208269 578323377 747147830 398577560 488191144 54406553 745748999 399195413 903059486 288810694 443516366 337190636 897033136 323010356 782606856 532575333 763493761 302576617 521846247 459745080 652426774 747276980 759955131 402587605 633788421 851567205 923728278 659474925 711746797 440203850 982215442 105245666 798106652 887457119 934914938 270749390 416194018 632179738 916015799 631344480 760130901 18533587 325292116 37929167 421754530 425564084 686671318 323386986 584369006 868445569 935100486 446643553 824116581 120055674 385360676 525961627 569907310 46883676 348426326 399612994 676553932 312372190 881597681 698487549 837910397 203768837 470981942 422308415 823788880 36450768 636422194 99178910 732350124 305765788 650034611 696265661 948397501 237586572 701279873 424014592 627523610 458510438 701005514 58795564 122131126 943304227 957853884 405638104 866165683 521436185 912568939 995796915 997578040 502226962 577852357 315366185 970098319 888203863 901482236 734635653 737039544 810723369 905017154 796096926 944349391 899521013 961105251 169712466 985622330 497671128 798121597 430236793 762197818 311963144 478831732 285936389 798917414 570082249 933032494 828590427 903440553 759017333 856341358 164176206 874898784 214260796 781674007 806310236 950483290 196324566 684727761 204283850 675894562 76580993 893387049 207816494 624850564 81030501 81563554 937743524 974604672 896561822 922440151 812060213 858780730 792852992 945719423 619114000 698021492 615663293 659552547 206465881 988921220 643914599 862946634 957884074 999416049 728613979 805321625 340358744 761006457 30371116 255933527 804140745 998356822 896526220 965723951 193650468 456772163 97340152 882804301 556767015 994508947 656528376 991434434 100723947 574626015 127477448 726427443 532013474 925281331 347528109 659580709 405966453 579109514 951291688 994609234 908565594 969694701 555974380 556798808 527068741 602916988 445546668 688257221 125890296 365917105 979370066 996440401 43128897 620302167 688590568 931486616 3227720 413838436 371236374 931575896 613424970 981049887 704805909 852946539 605777813 815991086 375467951 922562207 956631431 975012415 966931689 984593505 523451308 959617130 774055471 884627928 631958325 679763671 613770773 713718503 832718338 994732035 648962128 914058449 261615894 687344419 243365293 735686475 459465635 579084562 705199899 754116243 911770324 916506434 25941277 293006647 132110297 571245639 176477003 719904896 888453733 970838700 67180437 183911791 6250887 244250919 854946041 946223105 128521039 654253149 652526066 660149186 756494411 908433802 849756585 935549590 709104875 942252565 849096906 936060713 35021251 844184114 922895281 951728294 740092433 887478045 521963226 850757506 123964693 704921748 784904822 975431427 886292050 994761711 898700398 973540612 949745496 981316600 387734056 977033089 642342927 776057009 601831878 960214427 708318636 903933601 2160953 347753545 462751652 485037544 127110522 884826381 197746485 537513458 117186036 879552058 674064737 925340649 489418956 727087638 839030756 972923905 911771513 927455493 723972758 924706967 335813362 660006127 127346110 231018156 847779593 998477258 648123878 932645940 305697366 764148169 389245899 709617257 176864518 338432014 415759429 512531233 799369337 941167731 733163858 973911068 81686815 110907576 200757520 364529612 639376729 987544620 142029030 896729058 418838420 477464488 182968737 221968591 833451912 851146024 246549730 471895929 720260499 955357703 760800566 816698762 759957068 858310877 34227989 450513445 898372271 950966336 896323777 943588563 504543315 830674078 860451811 951060611 726941823 790637199 864916759 954592494 350666374 758343122 165577927 387177100 806059814 818416373 308137920 458452156 470379483 568130982 651201840 968081174 288044101 482103323 789193871 852416483 253156027 450292136 997739027 999610869 262633750 978530535 961215336 985391052 456395649 848160625 38342710 508491763 960817925 982647534 26520163 859151413 810399577 997420122 945686261 981762595 772421077 885154270 642973085 693188901 159063021 823900162 104950096 289305108 446969757 491657634 982106900 987869835 309643755 401606386 666779587 704643583 592582146 990038369 595195123 642143889 709747421 805857708 636894838 681617437 178066413 580176236 37023734 880093055 794203834 882477577 382975581 967039343 774807534 894394831 116190058 383645728 251219649 964970979 172353197 962323870 852108976 999582719 858087648 906665405 737378873 830647541 514854818 607028060 909988498 999748075 56506698 484301977 921893963 994992439 974929502 981844149 17715152 145506955 972095983 989181483 170391668 326723135 681171751 746627163 67244730 795453625 19347959 311602088 261571293 400853844 918666290 919625064 44889244 695824553 145462730 342884425 838379530 919290274 567978786 767548712 205552607 849557164 575308623 907441261 785642648 901920817 810336404 933291898 977933310 994418688 252106841 346447099 292543552 293629807 114628680 231645969 991705828 997130737 583642895 606430494 678995409 878202277 380828800 647479394 744244340 959587126 947307985 952000384 291626204 410477415 941144726 987336978 217916893 896878874 952301285 957966546 950178348 967182330 691907481 982452570 740718902 960037790 166059332 717140771 657870810 804570397 73369155 747172973 85857367 341602891 815337833 998716446 762626094 863283544 784417429 853823744 855295641 903160422 413113338 508833583 125534939 421201945 520930855 903075143 941693087 994703459 866696088 943748985 413206627 461367681 354858313 792026043 441272616 806456784 998300491 999341943 808288852 824565113 102633655 545798220 511012410 511780114 443271 664220453 282853348 341170753 876246491 878071727 955560094 984838818 671484842 985601666 521162204 888896632 487534216 950865654 320928696 439164545 540782259 562988925 770606043 981533092 798239026 968459837 582641871 991530659 976778382 978258555 65985446 828037802 169727372 486308317 328262153 747584248 532229665 936188522 564068304 710219798 361428388 479351904 431621062 454983536 266968301 340374146 137296510 354680382 180280585 671085004 792950033 987876379 219247542 374426179 440748501 546721055 295445600 796447440 141241647 686630591 26941539 160869743 357948731 457471271 969245725 989139923 765652797 970064077 756193186 899113509 690692999 982816242 97336437 751558210 6287457 484936648 598771303 936498657 22030973 550188830 637021825 923770150 622790090 775695227 337324081 505628127 521514624 876337303 479465325 794256476 611794107 622755437 382046181 724631564 317124493 985851961 132208156 774635971 817381795 817730238 869110479 948483780 177142206 503216876 775172948 873132434 557483480 689564162 654996727 978987060 551578572 912748088 647691521 713155390 376492354 604410477 845586066 890340274 49008979 773038664 761730441 832936130 829615120 861625671 56847991 866969834 203614511 745048701 364707608 718902201 258292290 701220301 603206899 860493646 680342240 805946165 353450340 801368587 543031752 566015174 487626559 543658768 898904065 932688467 829650601 899055167 520866635 816501551 388081387 618067979 917128060 937604644 473805123 678690118 320255831 353982772 62472534 446863709 41688430 801505496 323898168 878281861 8042681 122571911 570641076 637356532 716043959 803567115 341318812 585702694 100873599 130166968 941295399 990113450 512609041 579149649 322690430 906499679 107436542 747812671 535313929 917162386 782583701 811829888 600971721 822645250 408478733 798204702 587353588 990787293 760355620 993549714 67262902 694831532 972465232 975461217 368392505 662684798 50508270 939913346 129915153 825899232 325054036 904204919 651505592 805934483 346449678 719098813 363723456 510884902 78823439 212004907 929637915 963006168 489003805 796414673 898242458 932643984 964233908 989256329 265170410 901152373 481558418 534135173 991188777 995582900 593177861 791613197 20183834 574031050 574824608 675009204 593834527 757710502 448822088 469471518 651868337 676472727 909837774 933232956 445826077 741578958 846171166 930817558 239565011 486482027 689116195 846377337 628321584 980212982 519486715 894354011 97478118 203592427 401462810 638276703 889217110 897940803 969533814 976012911 924826700 991757092 575088924 625763812 834667420 981288129 946399614 965537901 510625961 540252235 770738922 888985363 508834053 712240900 410319811 705890613 681281601 804611507 495576483 832630465 100663665 829318445 593623731 815357121 132664369 194318450 700340835 731105410 280121054 567967419 514953731 569889727 873213124 944548712 137781070 639558835 104005167 237914462 125764398 612381735 301421778 756616667 46657944 528614965 811150334 919107683 240501192 861437579 80546854 584738583 333989783 815974667 606312170 620983829 850670015 938959130 700868913 711190739 39232891 915388765 50381 169266269 308685792 342861015 426173690 585659442 882835351 954852996 776110606 862930951 496197154 581820870 183938152 437421280 885899743 970576847 440260980 622381551 558426574 645364949 569580829 742842623 58075490 835812189 387126762 551407691 184740599 197220815 84677704 351341327 119319853 964300570 428887089 953611092 986099985 991542038 526880053 703114415 106899559 887356127 958406690 978604773 461876462 630671477 110178557 457905354 464991798 599457074 794357333 904627663 910965413 980541117 267679968 692428995 646477530 796424699 947375157 996082142 554961481 844867954 700840105 970928204 884866245 980520539 891933282 987550465 619720051 706973049 869652006 992657918 21881288 483696964 987260179 998422104 101901273 497817081 426995893 472507350 130781631 474010285 641393018 870589197 405040179 738978476 720445822 861455843 921738582 966303357 836137243 903384496 656857584 938317400 506553328 654810762 558374618 605999586 693851536 945146047 453088703 546686052 364942832 792547239 712263491 824452218 80936904 567707029 90330739 663353843 466112019 775286963 206004502 766706910 273076671 328995837 35763963 908557001 744600113 915186013 351755949 825959851 615523370 956284610 111086039 311235394 671201913 795547305 479073287 902914366 138610033 865795892 93280166 938409984 602583554 779473268 131966432 613065728 517499146 925326313 248364946 949925731 305147425 895522424 938794114 987084219 833652179 954140518 48416727 957803155 709607051 864286931 114407558 476369191 843040822 966230762 835851785 941521069 511396000 729122011 782364655 817616234 811714602 926892436 639848182 797383425 633608033 843086133 43567607 968909179 43262050 124794513 491387449 629213781 870791986 996667808 616190778 756080540 905332892 946001882 983141420 997232681 421885655 807078710 33881871 781159514 326270735 370890230 365813797 872590755 310105133 774544834 594220458 811328525 177367833 604583720 936279346 968923932 494074983 855226604 181218734 536558251 222178303 613131546 43410556 687252512 11741834 566289333 805365027 917876329 657351189 776747089 733893753 794496516 415347631 806537810 940015479 943712793 967612475 972262942 767643556 919150884 894580943 976952775 18798752 224874259 448132657 940274760 481480637 879622323 542780030 717769883 432818908 514923883 249834715 634134659 914208204 991880383 874046991 887176007 249210311 339403523 160045564 935265821 479173407 949520675 367900027 873401806 854823905 975222551 530362075 936987674 231991683 497527920 342574028 353681302 70538942 156468967 390902469 553140397 53920314 689804459 156067511 509232085 80088787 593641661 476813437 636924508 617748762 750169429 984008769 997617530 456917614 756978401 727091197 852085091 730264144 782045408 265615652 657642569 790912252 851533819 298649608 713807503 624539841 862540363 644194917 744655281 847858041 924408042 818765670 901866472 341153173 710946186 432864850 635302151 541319130 851222459 793021788 861015085 452219583 928332610 57803551 938138908 162155538 359741188 433762542 478295975 182761658 807025975 890024174 895603943 473977152 534446893 322584311 983979940 501614945 870801294 527853223 717077180 180252934 515480053 372258214 681435632 355746229 559945686 902822662 989792720 561832022 860320173 564720967 576487523 465160890 751800767 38985621 909670966 596647413 966709937 423679056 748575459 904714005 921491913 949602771 964810532 885626953 996697326 962572103 993331629 758580377 927005582 452437804 979944818 186776237 591213030 614012693 953262805 305208974 992605129 587222 690922775 868729891 993745172 889123116 912095005 546945340 959492502 773604424 973874663 90522234 835058531 108725140 998908546 604513936 608916959 877423038 979946698 140787588 180126867 500077796 915279914 793917763 838407928 532700799 955953562 441474443 588108151 789401279 874423145 132791835 274794028 764209277 805944386 693685592 881886053 242738294 899666617 617788527 880470283 686372360 782345488 77377850 895868306 66834062 385196945 484781386 573242082 909031207 943994724 381488086 568718666 804114930 830252058 510584384 552322737 271683244 861117711 910617164 915970003 430395243 735321453 289613104 384305005 824825046 926863813 608343809 909952231 437894623 917649179 932375012 973098487 73635327 890042691 759966005 810188799 694615408 708017551 575048683 631233257 144144161 464708683 89967806 594360040 738342300 923092306 794893033 840172208 516583480 724958649 270094953 998951762 442518849 831957958 143038018 339269129 526777186 541433298 577091415 631155348 303301026 927921751 361111762 483263084 347803067 836524524 350773728 648161959 831028502 884508872 138310009 257964781 320601280 435339346 197829918 759387885 598717971 778034814 611715084 641509210 546668917 808744579 183687229 833288201 170590826 922500606 393585840 542022170 408325438 733222794 830763364 833359428 431816394 806880390 503105508 759796395 33393958 58435772 730355982 897677542 844922193 873394209 913209665 972748874 235618333 978459111 676367061 727636009 262012196 686409803 752652655 902977261 193731531 508171644 370938790 708919741 444920188 519477364 546432110 563658539 24883285 405159543 971042394 991312609 853480235 903577350 924024856 935319157 677748749 934904600 4951106 426254708 190282288 733351384 949842498 987174148 459943800 947256017 531212036 797499111 386825202 480579263 142907392 955386913 390524155 431272154 363150031 779700276 575651988 594221450 903205176 918992627 280600289 994813056 993367983 996342468 611370934 933330092 532867122 814362485 263688865 963812975 188985405 775635671 380927336 502890882 312855297 911150890 897030942 966903345 440145524 890908476 848651335 918226449 335559274 702837512 823884279 969951802 465051337 858651517 50827260 220811317 715135324 955710868 507847239 558484124 304383013 898259459 595519367 899187247 408997868 599844923 862154943 942892779 702999170 718197139 61195667 686771326 361609189 965640135 753601297 771633305 117205321 513778122 787869178 907585583 738795741 866300863 859457075 996791765 176221079 657911005 708195450 842506461 564706949 625775000 715247711 983548823 1926984 634271220 80736067 813010715 646213414 669476810 857680977 979840324 315007916 706981896 395995887 778207943 510922843 971089097 236576780 451816908 539449675 973109806 615514558 738845427 311490380 323262916 906799371 981258133 801652454 860331060 544162229 628404547 170845219 525964858 266009673 980319911 615626804 935068269 978666481 991962596 959901762 960661821 318743217 531387284 910507326 952642845 513853961 979972077 30669392 321486148 134832329 209529122 41273581 628035815 148367909 804498615 183808144 676436944 927401317 977820024 818809915 833004287 842630828 932349182 377380189 406162024 487171316 973902772 854263213 855649137 392479162 433444940 274228825 932112236 310781884 315144707 306732305 895656101 868960546 968251038 83586593 427411020 595851506 829398085 277291352 554807126 291538745 547666784 587046829 932389572 32772020 795222634 680852050 708301729 817472631 967249034 340357957 756990999 384793603 411148714 546671035 871988227 528343616 700292864 663266758 955266098 106415316 455481356 677086566 766630906 964854739 968757382 802194175 866205562 617299420 848853323 688316235 981441705 904246317 991601544 631734691 844128610 284543001 593852463 548849293 620613249 225198033 996102102 829211104 885844516 978023464 986765778 447365827 956916590 347374902 894475598 807405935 987591541 341930019 989074381 356718723 544339601 596537005 727186289 513226927 604832084 354466582 371772659 991768949 997935551 496442933 570546133 438756008 898378953 771650481 948304448 418416190 876525642 788479312 858715018 682305180 742209631 973138655 996623260 29053195 177854607 944724338 992322338 176064315 475059899 51107960 476933182 633954457 703922500 668563548 777127281 727492184 880383680 628821642 693318380 179806691 444023098 203125569 679182701 78598043 989181411 761220238 990515794 680684807 755246375 208321496 458350204 279144590 380502040 337157212 407414251 513422773 843763547 398797052 997599519 579130960 759837478 935526005 971866285 937204606 971768856 385832143 395038494 116064027 372238332 390921803 896234235 169640779 629932434 367213782 941492746 727837397 801142206 743262254 749887313 879800061 945517767 994968829 998465212 382442743 934844271 723881516 997787275 574494115 804933048 721251252 926607237 12563533 698744096 317852808 887710135 737376577 834098799 265778339 532827621 372530563 594525651 598443086 956219104 418579172 996555832 664691419 696808340 793423396 798545534 747323313 894320994 846579000 874022718 219563697 865634460 886468033 980262162 303324706 509323770 688633515 821473587 683942357 935987841 972875211 984979523 275478802 391259601 352812593 759601547 617765293 812915710 249268990 702878112 671399864 925499255 208062561 543877132 947837876 962592779 131614744 426092077 493841640 856667100 913642889 978532489 445461865 448040559 282955541 709825025 613564978 671584049 51541210 770728983 108146776 927272010 894257208 903184113 564583349 988986392 368730378 771304522 701595707 888125488 155732116 691730496 81591534 696837300 765552037 864939233 405620835 509632294 128438584 777336583 225863577 484749938 311656286 799567009 649069946 671585019 246881557 625359186 638642634 667943914 428018790 556944208 452144111 988185290 504095365 555520785 437411777 958118807 458028468 971661048 906545064 951752653 683223676 725456268 764786173 809227438 175380572 917381025 40671935 336838116 178320568 324070585 540652784 833040943 142303054 512759784 169766837 465282666 747586721 944946924 981201972 988430157 561333436 604013946 739613432 772173176 79586056 173728891 191859852 754030369 840603782 983822107 322710691 505256755 823399027 914814774 354062160 384884460 738409549 802189115 545653713 711739165 521922236 614168848 583865980 670002486 477098179 511293845 522847784 556446200 272744647 676665211 289763941 563778734 876871614 930034726 960406190 965842342 444788687 506947546 664749154 909500457 624011331 681035251 750827375 964442238 307955474 802669730 491168680 899820924 812200051 907666112 995697141 998865369 651254964 974103306 812676444 945928772 256882739 617318986 282040521 297674590 959035494 961687437 731115350 739066578 819256040 958860004 590729748 797052508 906332679 916444922 657728798 869982493 538780071 667840815 489835907 610351011 670331853 933113971 626280650 776843907 172588284 173997077 420708734 714704569 931960064 948349790 413871444 746117866 224875126 575947280 188466018 884531978 139486370 256786755 983074777 996953414 567118380 846978711 294983375 884487022 277938972 413083586 637321982 779455296 998847880 999634735 828824891 947591905 551889740 606658611 893905960 931340063 368917764 609036350 877102539 931228568 324814670 387184693 424743847 763578396 479408809 567124165 393143459 712301867 879302462 984299762 91697817 952722987 31474791 705806071 943089203 988502863 544214594 550643387 374966333 535961267 144492749 691696251 106971507 442490638 314838071 755990939 10931477 74881711 547758368 672892769 963505898 988202251 146143115 306819028 530294344 843539836 203566737 960081641 770064353 799777367 891899116 909449536 606994824 709566719 240638767 359718980 727098426 952063734 511680127 767826320 194428602 771516024 329096242 599890011 866910622 961746213 574294669 704819530 744123352 835777286 390092126 729932774 814270239 855847570 639505947 927651014 552232987 820691177 224917544 575139162 188987147 422888492 229038901 332529263 129802942 140315905 30435660 532968595 551453094 995268754 607522187 844499994 702474437 710978675 851248029 927600151 982118497 994225409 762191024 856618314 21729788 268959280 22773618 621415046 332152793 692832206 523422427 983005114 941030056 942123893 261358210 343729176 613575245 850074632 718240887 790117040 949087484 995763349 63853880 254412085 326522806 406011052 983815700 993185169 620524126 629373687 104078375 415940407 616334112 933980637 110389562 125514458 368224348 950236932 236317787 407840599 785944700 966161340 225152553 713794694 520509826 880353730 212976835 632384717 892973427 968030977 221536699 360933364 633695044 673246220 433395110 557013416 423194572 861776662 748794961 899194095 54888621 417985374 280062586 599039971 313851189 847134236 353974432 810846277 536618446 716681805 195069096 558492129 986138407 991913640 44220471 370558717 52414973 545323261 126188023 345670390 559724786 659192862 650034151 925562030 848624661 991916300 535738064 831656688 152841855 607243402 896838436 936125325 384549519 784054796 173236370 960227293 623534196 726126842 638826784 695305265 230007643 595952748 424416704 870123279 519869170 823342576 117769247 686896213 231524420 279963057 947309494 973151788 254652475 744349735 471244371 696215357 997133790 997363348 500740946 712411605 381804645 560893147 145089593 550957735 641120560 763193400 185196899 290361447 188111019 298400840 327113470 721230134 277846196 804283722 568358798 667885005 483196897 760590934 774800120 977059343 347643810 888590911 671818662 785219639 177036449 777606576 258991661 698824081 834672990 852082343 794501443 844409148 431901979 781058868 858386270 927650397 150742935 399265027 576509137 883310944 872881114 943351905 515410570 533972773 247226550 508855865 968584886 984677020 608987324 835710927 701642336 768091377 633527590 636312410 72669867 509389104 592376692 949996996 743338646 900010872 200403161 944832098 166767108 443814552 812775675 999990332 833362783 867887830 132732165 258649963 200950589 616979639 915938832 923253779 718147245 765971704 985871628 987800973 83316948 435080065 342633681 400696058 264000314 760324832 53492332 218982920 549079942 807334392 740080730 860386833 277463836 742875980 37511025 488104066 867974662 939523231 742911114 746627893 373716701 802350250 226769494 862959165 383777430 557415968 396996594 522259500 334923172 621639114 303961734 952250894 641722691 800962359 730533779 987462745 202778998 751703736 692830445 730766674 801955828 920141108 408461794 804673395 154358168 420547567 6579038 699647816 182415177 991077193 662963678 689919569 641843443 900088169 372827228 854800626 381306572 404057911 828238834 986018383 435003021 933309798 277267381 492740263 974205903 997455318 648462280 921611874 513972113 686592481 404101628 937042933 889679238 999610505 914942387 982211715 504555772 522149602 411030998 524108761 113212826 116415240 991887079 997728111 112476422 959342801 915586601 922302400 759824945 942545168 151919257 565190584 501148878 809483124 738427116 995046319 739061383 840309205 175638442 254542619 247221185 301423527 625322884 811387468 177541269 568241252 433018240 972367924 538900689 849515687 853696881 975790599 637476382 952288932 410321940 967273883 954377877 962918001 19606567 367172498 934058466 973378680 821882173 989325684 430769757 591164613 433344535 970165341 596774447 946800003 227122932 491172926 298987924 501908154 768431047 794533387 782919264 911011507 240202477 936842928 169078293 703997522 777876558 786930710 596137773 826871226 729109607 909998525 52210235 182732672 986001718 990107514 64962692 594033514 581379566 622978716 618455261 698482206 639263889 936313783 100534272 215393779 147417313 890906261 51660392 881603924 502968818 578470947 40840705 603437141 111674157 168247137 238311755 637554110 961913894 973509026 287403154 717332324 593445109 657956554 115818933 350905784 223926243 725668721 414248108 740035744 827933796 914707872 441183146 879494017 712103770 927808465 864870932 891429735 576522385 982230429 347613677 667540740 84416709 232829965 695815912 829931438 694443920 996234030 770811233 779123730 20990454 380618013 125079542 919031558 891627627 961361642 90245915 332457217 564477333 839466537 337624176 750185591 787416756 891554372 584929072 966866483 588928746 660321697 697442318 726492411 682380250 809861248 821274536 881481556 272661977 890481966 192287790 397456521 287152998 758904113 569372482 681761350 22691757 721750344 383732274 724991742 262079673 663044361 147742176 827606827 665421698 895249709 869724630 956859054 904263069 914956070 990517290 991885490 557423904 684205970 414101709 443524504 327450904 835677056 531316747 801924537 518177216 602599198 869541788 925566272 982279594 997067850 36543040 118116865 858585387 952036653 461721391 766260196 546572411 868637608 782625347 805225427 167673261 675677250 304275684 540437355 380153719 398445397 843683129 979066861 455194692 617599946 416194293 796818600 867396078 927405031 467113002 799631157 879153965 999686868 299423390 939309720 81540872 214013447 865997996 932807548 406523981 523506520 682400157 799439035 382238812 959743530 395904577 720644493 64078547 978514778 957912847 994785079 318538258 741423562 124917484 924105607 652595690 832794643 997412364 998997460 868995018 905859266 97908174 514208505 379703141 613846120 529291048 966387602 4773775 363477609 302814315 835357324 236138282 740899856 404580540 981375493 555607010 688618149 786461129 926095922 21373881 261478649 90396462 429265473 259921999 729025948 288679149 801355245 461838102 977804478 834110818 949775671 777838356 793965050 549350698 772344641 181042966 913144943 268084831 609372975 542417044 724409087 407088714 922109831 419791326 449264759 167835959 274579030 922400165 929996709 979003905 981772207 230732226 279855022 270989356 473306578 572093753 710080428 260129354 760776764 513292609 804208944 568530839 812171040 948721073 971796975 207354023 758874497 714314259 910844989 987418370 996144255 99793627 364713103 124348618 399577322 979573893 982826143 443507428 520727463 842702026 886593314 946128825 965087681 479637294 920637713 951989682 997436235 19935317 320163777 913346754 974066740 181210912 255260596 671426275 860313610 937332385 973969088 590820647 623208622 785391424 823125622 819331639 975860136 945981374 995299478 133052302 740218454 663871968 965772342 300148945 878207818 948544982 950536431 376092814 583192454 425400679 611184788 270510140 786164021 741773336 797776388 95676936 824353180 117508807 280679037 668871244 826390359 929406184 952241398 248114440 399350793 588883633 968465790 18315163 607400621 219593752 742818855 823941398 866423938 373938008 676882132 191145209 424566409 120732283 531643831 302532218 474189344 923503082 971545493 710285754 894217282 261539331 471853874 875827512 889646270 283363144 522402355 690064942 801547919 536113765 636838626 439100635 914866361 792984482 911669198 473073970 968972748 389826898 701716905 220584555 384456601 703089653 979991689 126983278 763684197 477287708 772523368 883925553 998813927 765798852 789659311 978234266 994181326 282215131 478477358 605581529 695993301 544452055 753797169 894060408 917360380 957654600 989324147 153861920 596853352 233145101 651880608 541349415 682911934 773133116 850262443 799512186 854770698 576403037 677059968 556241368 627873583 552459682 863431090 879896694 997704863 222848378 876907551 241845471 398728412 2299145 605225779 387752952 473123451 162448065 552292466 206817001 660792149 710332005 714775329 595989755 661225607 828267450 869213957 292897733 460130196 501615984 669099805 346530854 718733610 151914105 261783349 532444719 706171803 846542908 965448943 145466135 943147984 533763659 828525393 282353191 328026445 585840443 837727593 731256748 919032817 924671050 952474130 396594977 823864351 948500405 974592351 743182689 886234521 562593946 995204553 156335738 494428739 66305129 617392190 777562228 826056099 947686208 989478352 576240295 827103335 463985942 892850812 127542197 364420120 988507016 993682775 292964311 831895325 432495074 755873637 987339737 996903140 890074554 932770429 118062419 656109120 398860465 572084298 91004084 896944866 566514877 959193621 758310212 952494874 204651514 958586780 377705750 842945300 31307206 660792198 840434709 908979265 34695762 613515690 332711548 753604604 173282452 769798835 246518050 495990893 973290277 979896984 662453421 900973378 61795512 522596993 473600321 707598182 259962286 478738635 665843901 977887902 535971497 985404013 988502879 996705485 434605741 799964372 198347869 264650229 595185225 991258199 578575202 701189889 307531910 454195430 354597053 383900557 52842733 279806041 688404714 737738268 388300447 573172230 63346529 981859963 56741955 669348146 915087350 979996585 442712520 725341874 982849322 985150972 379272292 487191671 709867190 975405365 831002048 978858427 138374459 675839051 532234564 686803396 348543879 798655408 928097572 966775597 368856130 500974431 191953841 581426333 574350392 883806944 651829896 771005720 205049975 615416189 927160047 995007680 347672516 583512917 858993165 920220241 921605245 973815448 540451705 855015171 433841826 619411268 975094155 985651672 828869721 893531465 433363332 778521375 849686463 923997890 967022338 973326699 585428507 634500163 700899064 927653612 549522225 689437678 720640751 891498786 415578704 951877066 823789819 956710984 10427261 312378154 951642193 995976796 19780573 233914116 328540425 638246533 702182236 852230174 870933065 981896939 951423990 985321111 915778473 992935659 997040894 999986637 837711984 974413439 518275700 657051687 312302817 440653604 314792577 654043882 977354569 980686036 193303158 763754408 484176627 567165689 729690010 987342631 717208946 905869328 791920371 796343253 918499275 948860416 614285508 744793529 238173458 304467290 71243576 114874109 260158154 391545349 557731707 670526638 631970478 678370031 216040162 760772725 448109715 489342161 508685219 551792094 505307704 916370222 277829571 728787943 277406826 436206483 915047563 990117562 277583658 712830126 914809410 956841421 785032926 974002884 384621267 728976399 821501671 920019491 718805575 943432530 218807507 658294828 575075219 644367319 893253789 976092966 39159918 75682805 546630071 645584525 839403749 841073936 863649730 890726764 890292748 911155646 548616011 558259657 796037523 902131942 848440481 991092776 300629610 876844963 408388357 861805776 339004035 507044911 677535732 680981383 88396861 501967927 73504033 769955699 989550347 997797455 740608756 980929085 929637029 957711197 134770940 374555615 348688127 699716191 256262149 577986379 50833372 152769339 864606429 929308446 440746599 607413041 772956342 849411384 572588812 838933159 217856417 434181758 141284131 378693966 78691267 376965200 714226295 736709700 57123777 993912602 734513277 754345851 696539854 773480148 508657159 549425624 331090005 423215964 725265923 768005787 780508676 805255242 489154982 809998105 646649933 800948970 251653737 396341325 324508151 783243050 943860051 946529785 367134946 761990746 440372473 840817989 948429235 995038983 129275499 838526632 118338956 943914063 84157819 719889439 747697115 909164354 518839984 527953720 282618993 732353777 732228281 740064775 394851127 531078339 742604371 984413062 988261860 990833794 396194568 963593919 285453621 759047016 711136567 819138201 866246696 889918857 621182182 876330013 484010864 592102063 878162129 903052661 831091797 960627308 392199832 777692377 732811498 933236746 32481665 637425577 36283449 235570281 521401258 633085874 312464861 837438195 874053125 897603183 890876920 976771177 816262763 977759273 712836165 896516541 128457011 840081143 227133616 364340207 284304937 917693266 875963355 888182085 525355958 759113857 534592803 876765463 149879099 803274386 375274824 481915673 498792911 634243519 976817883 981570458 738504212 845527201 880117821 985989557 329499739 463640193 69292945 933820595 567070475 758501391 54259224 434074475 897629250 968406068 137425218 280391955 167088907 555007901 947752070 991398739 943939881 976429499 686744724 981054144 152139323 654882096 565477732 871029581 593970915 965969509 269345990 957779471 677717476 755292897 396247436 583042085 439997616 700767859 92286753 270566199 861552310 952502966 244307067 332172281 311933787 624137682 466747556 762301650 608385488 952882865 715002325 904011652 850097788 869514336 732537952 892258335 982596526 984344739 154862193 596479353 716900119 870069141 788332106 830219733 339729805 700928522 810024679 822513696 209807345 924389135 743938453 851031096 995973207 998732644 904126491 911422962 902574842 927939857 378587229 627571720 868309648 985913517 30641677 730237821 819258601 965961011 295293877 740927817 410050124 754879022 784975335 981779371 482945674 542530875 371920706 890297273 415071210 993464469 214543395 268987037 32119905 322888326 769796765 879977996 533773838 834744141 890956109 977267435 943925896 946159364 115841912 429972804 707881156 848482771 5192709 555315455 682359063 973078635 267232639 670142498 296726621 509823219 929760803 979468237 904950657 940368285 575467321 928265329 748991250 916910210 608624028 819447698 429323456 791254963 467296482 745209964 620203145 932080316 280561518 417132359 176936153 817148642 876686745 884438177 750433086 810572742 584242263 989917983 113424952 131357417 633290819 674418878 646234793 766534598 269813672 912470513 126011151 166063074 142471215 783310603 811370398 935480924 352821619 740206093 215771800 326919506 280109013 470740267 132106142 371000305 849129868 913005423 388451312 612334038 562383376 769975488 166704679 776868325 266260324 707011204 161193449 417060056 819047308 837791539 443687597 807613969 615694300 646915818 897735634 953895549 841851005 928315654 223784666 420652228 524228062 618521253 139796726 476708194 977062789 980892745 372298527 642625894 77447205 835792476 928599546 964539339 166729513 828124827 173315420 615800717 584235823 742656979 498095922 683909875 334477390 613174090 579451491 621490755 205851466 629452244 654082707 861207450 451846420 691877782 839718169 918513764 721509171 733183298 541057304 893325839 713103716 762930258 362109330 743645694 193919795 552689118 406374760 827686494 372726851 760540898 226759770 631253762 911141294 999486707 795371665 857535679 537908265 993708017 438677198 670830955 580928397 912965726 711654483 923611778 314088223 524022006 111558309 979600386 281833917 985661512 356270093 462954926 292137516 577764289 280568691 737228995 176016788 813677190 229443901 560046430 578033121 808629669 156400391 852904545 932527320 991030855 431470723 820669740 8672887 385032663 795454796 823476545 600696842 708025402 676701001 930649120 877097169 918568644 226217135 975874186 815741568 921535601 5321509 802332217 642990473 737934393 515417225 523508754 137101785 258414155 110014876 368648563 603027915 688726937 56338351 138100262 371607 371102122 370310651 404409229 995131957 996748459 555256707 764681637 148224343 669870162 760089490 880400332 37701377 211241868 789036076 871868160 83393117 670125037 638356424 679858638 176259648 950887739 252170848 514924862 700193709 895927826 184187407 731623868 525034034 886444614 601185256 909830987 73058870 796168863 17894290 110539022 8511782 33318503 504782524 720583110 267072951 690337862 844431773 962024159 370682777 877449061 699747113 735131409 487448394 944865860 253684234 934414061 417735217 463897465 245744761 711828822 215331392 262797101 949505124 969012860 844330763 995959486 582111829 874270509 719212583 847847103 740174556 796250489 299093302 771257180 948037896 969675280 229391398 816947819 508287794 827422236 330957323 803929495 609880650 730770832 429445583 897669801 63832053 657660110 272048056 593700410 12219300 594757453 926026753 930717446 910455065 951780142 176716434 926603346 957804135 994493093 311745583 522543471 120209720 964246858 100222377 653037938 759874763 824922626 393221556 467059839 640976907 867926340 623872551 648207033 389704161 737858979 375540476 529147257 394046665 792296393 362058322 859374755 968135639 972251457 139018440 234094034 951646694 961257152 402813016 852283116 396781478 785511225 452114084 933414103 4146246 934833681 808293598 953481114 308613938 662248353 265603222 421743046 311182319 371715277 826772373 888003311 966681336 973613912 831021180 845250499 243273045 790041826 209803686 239816301 386257050 737516665 923393031 963306247 81889502 129304627 900726738 904058735 399581107 673845788 470612193 535867814 258997448 260414846 79251973 727113890 209613326 654316516 47323911 501943646 921442097 939975131 113418438 827225508 57876868 360819806 325568946 918488874 69770985 193949588 263128637 552140016 360738737 393910885 429118530 952381544 322761783 524085693 814183065 985960121 765524346 900530240 110251348 523491768 157345591 271356501 603694056 691246692 348112642 763756090 283968643 379849312 698960142 904551938 40699085 705258895 240748705 736451995 998567555 999268095 669901642 776633865 770657193 924221870 607249810 944864385 308108865 707562436 705700707 948919726 248519028 441100571 346435631 799159082 801713257 823857394 267304906 377288238 298671017 615719434 322595755 506909599 329423240 724286472 79416131 321450041 339578348 886211891 136530965 634281919 339202276 710606708 400654454 724793128 788083691 921292427 517692539 851893939 822644936 892063311 305928233 431960789 998541172 999591172 942367829 970129643 158642120 824610522 819824073 854902409 236151524 338767858 914496333 919063573 662910713 730330516 167291013 484204978 684289086 777278057 853736139 971356344 92996406 352942775 1207061 286148344 517969553 596393348 926495521 969013784 933321827 993396997 24783857 441005300 27656001 221910271 651637579 882854568 755643126 868998440 758128032 971114677 319864991 521851258 223293343 429100038 228126497 430501013 199170591 622130807 820346235 991847399 395353124 619885073 226473804 771371077 802006970 818254031 464428538 634924036 763911347 998612426 645907072 938745191 411900480 602855669 686600526 719492294 652724804 801421200 473520606 796382028 508610050 580836992 757558002 920811709 794144596 968652760 785428568 802572900 478659423 537274193 188384545 431789447 904531245 952025120 960825023 990663137 244620167 266898482 392551249 518051491 160506626 552567961 610368577 907093991 230467951 437879793 721607367 882623960 636519424 639561250 536058409 633683567 467503533 548820365 715173897 971117683 856513137 918149828 216419680 942754372 312235860 680617095 274542540 438254178 966260316 991043218 717993816 877753290 703040870 947772854 861133324 993997872 736001447 806922674 260055767 622196194 659048518 810312181 768268143 905077927 535868307 977193101 144268697 758662176 606697629 891815918 880156128 957936136 84966315 951146466 287153678 768661590 716092130 917336262 484808887 913215535 863583957 932520993 576259475 662479042 887377846 914930703 496553040 669070803 945413060 955989555 308636976 890065543 687113836 725826914 240460152 829671640 593370009 774085214 704154824 827006239 457825360 754526776 273520304 931412976 590370050 648485472 56582527 872263835 62515670 882198673 34011915 770487283 91300402 883278702 481101733 699699275 873935251 923981275 293824754 936564812 533250545 974563669 276954130 606695188 960904625 986931042 746062080 785563963 735623741 798749278 604779479 656917901 174198175 376735566 154382477 795180913 818936945 987687321 635757038 751682716 899718246 978892056 432972868 718463297 757190316 996578918 429214636 545644338 412651227 938977901 116888819 887230159 438159375 824112013 64245921 724458065 89707707 367590781 343482805 973529672 68657477 928110514 581393956 731103055 338387678 552528914 721365799 949666598 304713039 761248040 631473385 924030596 600178843 868970960 869957130 968460309 195683630 698676349 899074741 903856653 582624308 744255700 518834057 519722551 890739463 913357817 307160816 362708891 129134089 477795595 844796864 966588858 176453515 987412690 533845090 895572117 997455008 999728501 897010684 955029561 419836323 746164949 341075631 996620166 819475815 929340867 207895030 279516745 898658330 974615592 8055416 946481491 544904812 778789654 694075994 772733390 441337602 764035363 732844803 996594046 646614902 882804623 325591083 866480057 167459898 847807259 351831465 579188676 651311285 904673220 533790020 780177736 633500826 642960674 39412494 853351891 621867179 720913581 103778108 114950207 99764680 389288908 958176830 973023350 175354154 338609899 55620604 616641100 936084470 942159603 202348982 734189367 934230553 983916115 308239479 927028809 473517273 590910958 511445954 808227412 534855527 639787579 871787409 965741018 399764842 761113503 528933247 593271615 639308874 904089669 587620873 986629357 736814103 925807406 830276273 972254489 915790328 947133198 836002437 980916205 659872608 675287712 609336042 671602971 288635125 571554147 530035311 969077273 594604337 744866851 247517241 443511812 142005608 183141983 580268483 677844076 999480868 999770931 100038130 449175152 343414961 811984980 956472136 956676443 764590778 767308493 147762774 998212332 990896018 992585306 336414460 479574560 268222900 358113897 108261278 165179423 250999726 356207409 500274332 651513839 439969223 878092859 472278018 777123192 833125159 917513314 489853238 989556160 621238138 683684769 69299485 799352917 647011149 909848940 161908052 546232468 743202800 970709994 447639314 562360456 455316416 459318187 567780037 602616930 398902340 663820148 511484550 665287325 186956844 392258910 654272025 941864645 13814369 721628798 499334094 543134660 43514382 216405593 963529410 986877583 449604609 782324413 32522513 865650684 970853292 989837022 851562399 944086915 876698027 988436117 393171047 696372402 292815025 498477130 752224815 950066917 625147311 827493567 244800983 718501967 346011996 435949313 516591731 518063323 502308714 597477230 726601686 845820603 436418277 711603358 435813076 509250756 164895606 680028823 419216465 490711945 363173732 519630317 301259270 726289740 103249594 393166143 40719747 503157775 623905413 702519275 452274102 804492122 289231092 504125271 950255146 960202210 654485451 711042093 425338815 793452728 142810030 641060692 28079184 672292411 81475868 139272271 341615787 734494859 524611736 654783092 556045018 683755667 281183410 563982247 187149057 259743777 727657782 911590049 794522733 860118025 812505681 946582642 686443584 838238480 754430958 921272790 621160698 660595451 82549257 369443375 56719619 482322168 104610253 463034053 264051428 405131692 425720705 446636556 525710799 740375543 64863229 415313057 244810391 867058365 560965155 739478970 420150579 655814304 848027657 881978829 30890130 93999119 634107322 773024228 51233383 340626198 798528940 996748652 47331612 265003991 379958995 652757526 402924033 950143763 395657696 664458463 44203510 713164915 367434866 799645430 117551433 172731869 52778886 667024148 126276652 963400332 229939464 559580157 353728186 402120625 585615345 887894263 84349051 628859697 622964713 704183211 825258770 849381483 863272567 889189164 338200344 345816000 998197637 998238207 77307904 714964329 498704089 912559667 190428750 703103626 469686701 533472533 869979177 946947341 171123775 481523716 118945759 870339536 105046632 175278164 573496285 727382134 854691239 923183784 76323487 712255312 373215688 891210508 379068904 967879808 679944709 989873270 863774422 996827317 941128223 985197325 257131656 535597560 396638233 977555943 459679633 939251173 764521776 905333508 74756021 822019038 615818472 915442795 116842530 911341039 872506943 916569766 923943752 948890539 685202205 811806998 554334951 829010866 644913679 996022758 350413512 500524007 186278019 308165710 600234244 620890566 994513856 998230512 724271973 960208964 395406986 607008463 232378129 962151276 480870065 869516451 57326342 223426819 527244029 965995255 83082353 649414220 74732415 735422731 400144146 898294578 270534347 927937182 736569639 868091076 668626323 846564653 614937402 817890380 384415579 580135987 438150358 602379071 87485069 417588717 253084627 926286834 92371825 477597427 85822291 936478800 869427665 968537728 725890103 792615581 182881786 700012544 34796395 709499122 740002244 906927154 262246040 400027546 165569689 479952458 64287188 527150221 1020655 464745195 96874140 384560048 204812165 412252291 84397677 965009997 582687612 714357399 790193259 994327290 315050536 471123187 744702352 844156110 450397791 656459607 766744274 956150454 829537710 982503740 292763598 797078243 472562205 553968884 102578185 964383647 682088153 960716852 867786903 914975910 571657495 927347210 841508514 871227850 120324721 219240106 696335698 834138146 686577386 791232403 861403021 985869846 492828282 778263361 519231401 984739232 431057185 721446350 912671811 973374694 318137010 362290623 107693989 636625976 189255804 644537007 903982217 995945701 732854801 756572057 988911424 998911226 610480694 853956991 100363133 616232594 240304097 962056313 243069926 414807842 398413744 479164633 382323236 685787777 916882746 933884162 371180432 781828274 225705990 982889114 536233216 700128980 676122580 965248936 822910693 949557082 281006996 557819508 819004415 961859939 215813390 460112973 562455242 849369067 927696344 957980640 126077925 257234467 865818984 891307221 761000187 929045454 79178059 980437273 520153522 692474596 768087863 854387841 707591997 952794474 740843444 775223913 273019704 978006131 740262046 790929981 480351941 722036419 749405581 808054703 347887556 825252792 435335451 836148217 495166948 936972606 922717112 932270847 510689110 643466543 96320587 939223690 946522823 963081488 178588748 606780312 894545430 972919590 980298540 995257692 361126813 474511980 824397337 947365602 648313102 750884731 119858191 937703928 389488495 720995111 589417817 627584375 296039381 602069416 839120600 937401469 82409235 85932745 609229101 680737870 751089269 927004917 563262297 660597367 568134899 794021381 406866592 683673080 379462290 873935766 965714823 998007304 876948978 899954767 435162951 545113703 845220169 981883876 462140861 848499273 383821092 766607216 171201781 176542706 195807647 412546653 913481301 989512305 57476392 208767580 802030519 921718683 657489070 831614628 687466034 941263801 686049549 941594086 878940366 980004710 509733820 775141493 935297787 977255544 133555036 315298075 138151617 262548399 256147261 652861887 708009960 842447673 680344700 780429353 345832398 563165849 325743857 772073678 261209924 305288353 471630834 856897988 270872113 949477616 820559422 976423236 660603764 971641030 825455766 859504820 813683391 955591926 669696857 877514532 72558606 152023813 732754683 953667603 90252694 424543813 578115315 746178842 18917864 72619858 465887121 707397366 858539498 942095893 140644127 565151087 521086364 644637127 429222080 570952925 463718143 716859018 992726937 993113918 69010835 839063933 514080832 630801238 392265229 890058990 366716314 847836156 948897606 964479880 344296398 654327945 297382074 697956184 981475260 990974426 660314107 959028444 427468203 517088110 671316455 692918735 319434241 401593033 301355992 756791179 664478496 970144515 537914890 764059934 545173886 805787867 839615912 949275802 401765275 515867931 75857888 558974229 214250035 556325280 975540505 982586645 570879580 841849720 67716976 285239452 862086407 968030796 535378268 560301877 845208221 873265418 402430924 431651702 366729310 911690878 672104622 683002976 783750750 978380306 83209816 530423542 679652900 972713046 140770781 815420383 320116966 921926273 615201234 708093787 679155220 758838389 664760496 686125271 590301755 628563516 829158162 834434648 73586630 233063511 298362921 579262083 363752031 746636289 551141752 930459848 416976210 489859423 852657155 943846791 320161719 766875444 177538077 363698585 695526500 782367760 829461910 889319116 509488245 932106404 503609878 770785475 128920621 220577878 657108904 839120802 67632988 505078242 831409413 996392216 36826994 521379367 139481614 236588832 283242521 350388510 907076282 907318657 463233106 966499395 249300693 424016915 85019605 134776532 965753642 990881434 209360880 683623642 768167598 988076800 499492534 568444517 890934941 981107977 115646340 330860388 368711679 918198164 82567162 396496984 237390143 313861346 554349376 850241886 80042835 722103393 328083230 532773484 65241679 287418525 767773046 826544347 529721038 803323910 979102928 995363023 265768118 740412814 773696328 839969043 322392996 600353165 419900865 607316341 400102340 729006390 737498875 884170523 172025031 505070088 847602514 908912364 389357988 418603281 352862830 445427958 228173822 938360909 208112505 733610177 658579975 948930897 56305116 979391075 516359669 796563967 76544700 302287016 541532296 687255195 9798334 226472438 956764407 972623311 770739028 885915616 514160755 605539536 49369564 629710436 494504714 724219822 353275986 911886093 995790706 996084134 330377882 584774526 282928055 670789543 368765065 537023102 904498071 937500881 719846120 789986478 626483198 980975632 134810812 884697439 760092948 987724739 324312908 578261154 902479855 934369627 354647670 527547457 692940166 797266292 738290983 762766923 800229490 992777400 232739123 677843542 669464983 747284333 603059600 817334859 370387353 540181902 781809575 818679421 449629687 865194867 963988144 979139685 384155249 723314689 865482740 994192365 540477634 588473848 162863976 254619412 789571037 959767396 264674789 281675839 341087561 992799119 915129259 943904633 597552858 999565406 985947761 994384091 73975557 390638982 711078109 762585891 332019097 789274178 456018805 656526656 378732084 407178777 259169960 518805842 374882079 671670496 663473090 971703910 40856036 434631631 397421229 646878187 377975891 467106039 652352238 833053372 744275242 929497425 774541405 897095705 697786005 747724314 960616244 963054906 191351358 450514010 680865014 773141198 958780091 959562705 291373730 897434828 350210113 797217408 2921771 300450062 506584908 590023956 634789190 984835991 108545014 720877389 520361076 763864384 849898577 961558040 772554371 842591307 62763016 570198538 561824161 924949473 796698688 975405196 183845944 359601987 949887479 984102093 490380521 595218579 405122697 916761316 83269755 885209978 76144691 335674794 381995165 783915881 142259017 736698221 296706502 919789121 603431329 805126221 778165663 963415232 209976270 514270404 844791123 928430739 43182427 213489433 918213031 999421365 38041863 264239886 334467996 881145344 110259014 212073135 718700986 930162833 486567875 558614380 77702500 741115024 706690987 776810492 877764347 932783028 302890140 696594031 705346117 709867794 9237305 615239252 984597332 984681092 571851701 878537906 486037283 908386324 254830544 639479888 618781759 800288126 467195112 714605108 215687595 741778460 278360913 631128824 910884233 997225430 699712474 897448849 234920834 761534509 448987393 483489100 798035727 831355046 223951983 580296795 38447238 400085382 916827996 939594831 256906223 287890936 772669310 829014711 142779519 621198391 370175482 694946550 745100452 852184285 251045943 295622886 114128695 731159192 601774807 724257176 658300046 966296603 342479839 430193269 156530691 345232799 707643016 989365034 163210116 541130190 512754414 788690128 231731044 490367852 347715185 740725014 786278473 988597516 913675093 934369267 564059674 700312581 786410800 837368839 244502554 998731065 242119042 269558850 111893925 318080941 421062180 515082803 997502927 999407603 933673493 951566776 112032483 487577149 270427718 614146045 198686605 786560347 738230230 859724977 433377442 956802440 626645366 697265343 758554051 882810217 743015133 995414622 930704669 981509427 935233196 988950801 905814733 961522937 889005442 972132684 331934120 527312724 916307201 994636154 237720476 972797429 898896807 935013182 365005992 901937939 920908169 974926608 110090659 775024249 584798068 914834080 26177006 243764631 348796207 872944019 812732553 965479303 252228390 970724746 441577275 967523588 66044476 765346468 109338846 901874402 234087824 399760713 829295723 865681769 493882657 529336856 49478326 756263347 799213355 980304641 472591525 780513758 5210291 153959190 253143536 373485253 252226016 923586403 410559677 648214953 568459821 817204518 246415005 401056008 259235341 882194849 478214210 657598497 955679340 991704946 856786657 857481725 186952899 530312265 92063738 813704206 915763236 959800364 917538869 982520433 62157282 316130278 106681425 898343705 329244167 369711422 616538394 959044095 605561011 668487552 101844042 237971321 863650792 923286247 324983322 906340866 59599820 514908297 204779563 982209245 975756577 996115255 556721673 961705931 829102405 956577957 414950654 451990607 987722249 997821898 462892625 485614360 341899721 994372260 64921259 383029873 318174452 676736015 645358934 674690058 9422459 317982726 653415586 905245091 200346916 747650415 646112067 990751283 325755690 403300017 113983136 712827907 599727601 721175987 142418741 560546508 455164399 702006372 680963426 713565317 110878984 198036667 878460281 964085637 344533659 961346538 619178548 918532746 133449060 257028859 225909364 512379504 589916626 787979751 156354174 575950785 330430902 900494842 40307294 314945726 39211237 467391376 274288292 671800170 607251913 863493950 653922113 953428929 592692827 952186417 852170002 905706548 455462807 620843493 928308253 999972336 699923548 759841992 437172110 585878625 215853114 933339466 128871330 974741772 873514081 938436633 486946120 670573943 265574623 332078734 263738025 468864014 935949013 985513197 408354494 513330995 877509160 960374751 626857767 658358808 526882217 951180495 802603825 918135374 239175174 967767420 246927739 484229329 43883187 199261564 92458061 821300251 894693609 998887563 973288733 993132246 248913233 998460592 390229035 693012094 190072182 614053279 999842077 999958598 216000217 861411920 278753847 896690582 305685365 394461301 608025713 984923699 273692257 360190858 961735150 987091139 722630887 782593917 874216202 947737592 483564321 778364450 12874261 941073513 207245659 267557449 348895000 382419530 217938510 890468728 816747460 948975888 355663630 954005795 495337654 549131027 175504525 208186976 130605445 762290389 11504672 337893492 813024935 815284025 308285385 702839928 625527998 683171706 556656789 946354658 355172745 726072732 810643554 864543539 379177601 581280282 493298431 948953939 913620689 961030351 863046681 970445705 320197584 674470769 298143359 372406942 976375523 996495840 196277857 912599740 754060964 816475347 375145788 704784026 606035556 743990677 947927408 955067011 902124528 996382447 633985674 813900042 309535555 488349942 214888781 409967139 39024772 537435614 748861410 977668183 694037572 833313867 2739081 558296501 616298681 702694015 363327340 788152047 433080416 972856199 428054112 598377046 444571281 871355564 816721998 903285894 115199220 722502720 168203576 526164370 779914051 979864226 322457311 379286083 651944345 957041905 369442517 900004832 533542716 545162171 950220842 991737767 408725620 547690670 142678493 796781209 215609519 477851891 28250720 938892613 882157958 899081878 476120093 807352072 495998718 888017947 410556081 631037829 990758448 991622769 700937911 750987637 434720476 875432218 174044206 406541592 784837024 914965526 315963443 330841210 176779830 466476289 556699421 925529974 257501307 882406816 486537447 730842137 572597537 713858424 521791013 832743121 390291252 950296147 204732894 448504649 96878988 578538063 663413533 690047268 946088927 976087679 248127941 841800996 588552711 919400139 539391696 980423438 997696397 998212331 615671438 738482036 588808823 658052445 103237755 254395689 350907653 758672335 12891493 818030466 72013108 150285375 132394002 417539159 484099865 726164851 340029600 615319882 151110338 867434547 759632618 934864293 899426456 905896973 97253909 976662110 57390694 698860551 282614016 394528926 367184092 705598833 869806523 873623936 788249734 876710380 823511466 932577016 169900133 823937018 587268276 758975834 71000704 851067630 793974503 933602281 605981392 899876149 420183960 731843687 336745513 857638564 80753508 743334997 304206499 996976938 307598984 955488844 298738377 512669587 704682475 916643539 555360612 829817119 585913750 654362257 799730595 827845538 504285647 815260979 894945068 903605575 182231115 226744182 494893491 578913541 922067882 998102766 878967730 995165709 261835868 374762186 676907558 883853916 511941170 974699262 779682723 837050553 417822580 623275973 586553291 968729048 262567037 721704405 67489418 149919246 351506300 407972177 496844686 648451848 208278091 602782797 404590600 477050024 659071968 745000503 896742564 933011402 974392901 998504935 340333156 391756230 555584597 965037994 855771476 982917554 339928246 759191740 93952971 926698367 655343676 841095275 745618821 961394298 264386830 857512703 485288227 852347855 678279288 706499191 891811557 986464019 289117232 843361577 220509803 508540365 586243094 677184014 415501402 585854062 785997508 843463536 661376756 755178883 389978368 411730363 247087956 449064684 174834532 332223125 824764589 864259086 843315240 928925519 166795971 970112013 945424979 945783809 28528264 89838899 244611176 400174527 494272095 531297224 999177180 999347798 720914235 958344199 623524883 694489651 513623734 559323394 205051291 472297216 460359522 563329232 851790337 914889582 418535763 904810838 890413971 998748872 281899398 473561741 996300797 996506581 930498580 963855370 74473700 87665668 781205640 878547421 248008716 670506875 169052405 821972132 67568795 451885314 949581798 968364380 812080081 943352281 317739366 879706043 218975190 918326579 8447697 500830269 830372252 836868824 831461091 871322375 458509646 558811397 681367475 801134342 636304409 763786458 456975145 712678326 551144253 928441408 721451417 984689310 89498996 967062597 969598482 983517649 370725996 374468679 838159691 989451925 490479705 628729642 279779601 482122131 825602834 869161149 584997934 884529850 277375693 685211080 32044460 468912645 692353493 829714928 798990094 900960783 823989329 914266098 738625848 944172470 469086040 522038493 95655863 491498827 376345938 993747085 139752419 156314096 272701053 980246245 355263091 631568201 711151068 962577341 491196784 776400375 25876221 102646210 970082528 980140250 713038715 898278115 704093451 802038097 613925624 993819565 952016925 975514894 400143301 506289879 722979584 982491465 836807754 878530109 298199575 858577187 655315549 996003660 672599604 778992354 366673775 999276933 140355704 963772193 756056484 875964186 92829061 170782124 313814964 849479338 150378122 327843677 110821588 385891775 624785698 929393971 576033159 659667148 857800865 953742960 156740260 791035894 485631827 601537795 432048170 749073379 826827325 847653384 874710644 983890883 322581263 951696122 632779162 666715670 653121397 725838105 902439983 972922331 84330435 684536321 58623767 105163486 9244805 26707680 810158481 919056884 793794896 901534857 391096272 782174481 418945696 564815576 129851865 892041937 501637092 812996755 207806196 713440049 261794116 591861469 970545687 988309874 363641528 388394253 484930484 709626593 842002442 846117003 517358155 549543975 134218168 297750996 53757485 767158029 599316106 627528885 986929642 987773171 463403985 774178054 210518213 926457926 804267218 927275715 200867492 900113342 218143762 903260777 677408240 885067632 926659376 952856013 669551864 788672992 321683541 339127513 383539463 508167169 305067875 853778462 557351312 633690262 789044214 888460338 768909077 791606318 999472509 999796087 949731033 950178083 988483273 996919449 800289359 841723736 696367816 984685656 54444771 136823853 895221166 935964121 715754890 893317265 157930491 544968947 860352487 889279635 599081660 948598759 404203273 637898932 632127445 800378010 716723771 888821783 365477229 655003675 443618162 528730575 704290771 705700018 68339443 559662239 452629766 522429740 274687255 515528397 532907384 661859705 637183036 764985043 472113369 544144659 378893087 584703163 370139564 403337568 146659109 161707848 960044633 974838584 34135545 489357541 408667078 495672890 480641738 741840806 140840101 357037542 451118452 957402152 689945666 736300394 600439142 946430910 430006126 968944767 395100303 972905026 92700820 422430698 953775150 974391418 456018453 763713554 254134980 901316493 909920764 913535157 110139174 502080941 39247819 319561876 75466274 419765090 244538094 895417282 218825097 325306311 684827416 874314890 76953586 542205806 624710349 756969919 247713506 502346144 686506220 939370560 620613161 797151753 707144090 711490190 197729601 549080850 168616322 449352465 525713725 926289638 16634624 818208944 609725087 916128075 283135660 291979893 354733816 689858424 921032971 955596456 794183414 901883081 128283145 865366594 921002274 940680502 888047091 928552991 28586043 381371443 52064856 284465137 624033939 819371274 436582462 958258910 134238549 670923090 876806178 998100717 976287868 984305780 308220666 360576749 862959441 941681140 644627122 705893313 945514768 987170630 201733279 391463092 194953027 473947963 769507914 998439345 550838299 802802492 606155503 975436670 946073344 949079466 765835858 996799442 444001614 705242314 187031529 478842385 345149631 802810201 432858309 623798190 231188345 694733352 159646888 485204827 67250592 978284099 850638589 885672295 614357382 863787831 947425552 987636317 587786595 592034816 198647247 393804508 576902726 660687658 690038722 745798491 545657056 967764234 391429629 533006721 761819447 775769514 439770819 659479402 309530030 954363109 158469534 767835760 911038238 957520396 927633813 929436358 24598931 463825216 457910607 902921300 130708007 939422456 566257067 908513296 580840321 647952509 304771447 851726282 657155595 936828651 335963343 488948944 850332761 873127719 202087511 585950578 32615992 606408950 629198390 895977710 696370618 890220906 293122481 883723931 502513574 903694752 669973205 995167502 403105879 658651971 579687724 775517108 455422112 744005659 127094673 952942486 400563986 811414095 586047862 860096955 489745061 952673856 523951127 537500134 263296219 382164807 376081663 436350457 713051426 739456219 680985247 937518228 963890841 985332770 879860593 907217708 687542264 850274066 582468892 654214808 76985890 688730603 79198929 821273175 272483458 931458785 428093969 539840368 769881776 786179273 256711771 651154449 123116219 571485420 115160278 618557351 590774991 984231310 476239918 697875347 597653351 815733454 35062098 537378008 956955620 981792512 748801757 768667138 977974461 980068797 341905127 697899380 928627795 982172203 494392819 631834435 457004356 521787470 985348328 986652932 339056868 453998572 243991462 336058874 608650991 908171731 428935456 928476291 757970829 877781481 846767021 920168251 168517762 872839633 953779759 974646794 851255039 945085030 608494731 983493305 173651341 566136820 175940899 559478575 190000018 894884239 136314986 627650701 406430034 479699929 332209741 476637689 728314161 757797031 505957791 802892088 606987414 815007349 299143068 801009096 498650589 827987949 285245806 917180104 572166432 667366789 124512603 800585325 296917542 990452767 515060428 915714075 502279988 911521725 909157386 924649030 784249593 981743066 204079618 369476736 710104152 758741332 461076439 653481701 487493228 704476671 587147574 830878657 142554554 360030891 634496873 991656777 50207521 903657578 403080989 558102024 928169084 968593825 551497649 953341289 916283653 941723032 505212742 960596593 736644253 993577061 686744121 814697611 82018700 634412995 977971803 993287111 454951491 851388415 690937848 810450047 323054997 404872441 107984069 572703830 67045406 928684321 181458694 787263955 871200142 967493995 636477049 908663678 488153282 762121146 576757009 841749075 862614123 936363088 761036769 845689036 525072570 566598745 284329430 804535201 921964445 923655525 207496509 788757404 771810148 816039214 173191973 342852371 841984609 976520893 348733551 733063435 881434583 941568575 746375987 790688872 122081854 762921624 236116280 238301409 582007091 683591491 149411429 232961010 921614647 956514839 884537499 959368651 397420345 718617501 355587908 996534544 61825748 337404783 618488354 855244786 995733758 996769906 902728838 932735471 786088069 964001969 20953547 446227126 968834444 969396962 376255944 523873629 940033790 975132071 873616685 887810668 945899988 950216646 13757971 347442061 847820758 952513271 315596944 512279933 945571843 995882452 161774090 189898983 209347800 743599676 585728259 966779135 505674093 599728121 597914278 911226717 418148792 904640782 762314791 795120656 186072570 567683881 341691072 931143218 463262115 950199513 958238583 959455964 522980642 929411208 949092543 980153649 8795809 835944164 557841974 629849545 655782889 877438787 224460724 866002074 203948588 820372140 62589684 424014667 993149059 999530589 662448602 776959000 730637294 905537173 515586704 519053161 824908763 890811146 706991192 866288546 488397857 621645539 761304337 810503080 908380260 935146360 218969447 796395154 378400222 491583723 256098612 459759048 833769799 843508793 343521183 632721564 87284227 212294945 867248915 902251881 842640046 900086034 773071529 834808821 97730266 200101461 525509230 843533702 419895261 546426351 613345394 815313719 178237650 224013838 791709144 878902415 946788179 988542556 868021333 887925322 804870498 806635000 733918108 888966337 828838390 965959873 494196353 500000769 991941659 998082593 466533932 797039883 66991537 757326918 765557853 965002078 872634441 991042617 490663735 599268496 389697651 858542972 426622160 719928034 55292500 131679752 543652184 953102258 322320912 856033588 665666378 714497554 673337928 722133383 78121676 371885258 486639450 884704447 87840679 674331956 201743260 430185647 212962668 962716509 222772682 311382917 251849883 587140676 174140461 288496176 467099719 688644581 452789916 989303745 775469018 915134994 973965981 981711584 769778321 783485302 416037428 838711699 532655362 888086671 357615295 864824378 444225322 932059742 152011410 668654449 794693201 818563827 417368192 924284025 19406148 655533552 275342328 868680059 300837203 733181917 27521996 662166716 253027390 494048599 152953962 734363341 908482844 956702367 618169988 742882494 262210625 872965714 32555656 273124234 716794473 751387057 957174850 988449884 410160089 582003092 909675703 990980783 620704260 814606500 358028268 621440564 512033921 837503307 532906036 836661342 766143246 998025857 999846623 999879420 297423970 437705855 286667421 498226875 204955814 643959872 195596185 658152556 897077660 913981975 89437095 903278752 28500257 840406998 84946518 176755114 587597215 858841327 586645856 848475225 10940169 67592442 433904170 618804685 584460180 998316420 781000460 846536974 240783158 463237480 59043766 452831064 21156119 257709218 318639838 422112404 44877714 850685538 651632996 657058550 612213079 965910951 921731298 997973908 393168652 615727465 539844753 737793289 669515549 971430396 958054816 961791503 444912390 638397519 865540687 995129935 947225315 972258987 761675238 967223223 305015616 495122826 826256955 977067834 392504221 616701294 539201069 872436858 362915000 953785024 617295538 828699229 931039933 994720999 422432666 788021213 852190512 860286947 640482162 981751537 649230482 781995855 433115096 497818575 204014301 798029540 484060678 535725849 107571718 505434584 893119756 983124551 824120433 904296414 921473953 933144477 857654290 914556959 75137244 419950293 997189200 999940390 314761471 359758037 519719091 547493639 178297478 871442263 296179383 491523515 237632691 753351397 604427569 981720988 746325996 972957310 545567761 551940172 203330034 382521319 75632974 562182620 63084668 647285492 227326818 962600852 173936958 540127559 478462126 689724304 755766264 778361425 868636503 876553729 571328930 643258607 111731968 439501740 886559175 945653358 878768991 888497748 565706780 696863591 645078923 952510411 622831566 856848853 920290598 938629002 380799005 549474765 265277173 398308647 43152873 356056487 960366994 964281805 845622458 875211636 18712460 77466777 424466169 939904658 431799302 511383473 954616284 959390784 320540792 985689889 345935547 451554459 935612232 966604942 563406017 870488419 491168938 954772195 642145819 972010061 859778724 860655366 824674492 898332910 637783447 863021907 663883792 943421587 564436725 794550023 135630250 192529170 705493396 857413399 403487194 425728976 984120034 991586382 19002930 962897500 807470253 946862638 692622994 984087418 419458956 752480261 996909460 999346996 574267615 687760845 550039773 648776788 365837988 888281892 673012758 783913986 886108470 979465320 932494397 989292889 270842929 879353847 237021153 281452254 101416732 888286910 286482948 519883992 237240045 852141072 541494898 720132078 509085761 567289849 801436347 916364200 336699509 802002445 753896030 754900000 305108741 414873378 571787000 626967908 514957327 704581491 509742955 787725809 646213000 667212212 560348134 657574099 925202167 997493392 956701744 973960744 223518804 470788082 332658393 989274083 419635129 647982704 830602670 922217713 898249796 974712254 782462690 981915208 30310284 236377177 863388657 951559784 344544258 389490935 102824569 773964084 455433888 673261294 553170441 556516384 132860773 896557547 593580755 696981113 381640362 402153496 284701885 863884481 108813157 573208675 679821475 852436756 50736811 258300012 81582209 582649218 664254505 784362866 693279535 843159157 299949933 524980925 505757646 792611915 315981301 336900412 58220420 841228331 945446430 968233870 118856001 212004038 498330118 969582979 795685383 939460497 521758408 879472838 428264542 797177152 86935770 324670255 229087276 750088331 84918754 443745176 860910052 953717925 669085963 981002923 244312109 942910414 653395876 928295486 480745088 874361703 67981175 832782300 20562516 157918186 681048802 696943483 130938264 527040638 437553186 774047249 331663048 645323019 810647915 869263117 220185984 890957424 989868388 990381366 283730929 677406246 443730586 742112465 954795047 972302587 780531591 981466546 808116307 983224835 173303477 414290637 444028970 990685357 217336350 559277375 258418272 790561040 463115636 692962509 711166866 883068181 596632027 764036543 675833091 835649387 326102380 433453549 493976996 511365565 146473544 991179236 110488593 163454319 566556173 851503175 380765296 550711106 309589373 670155660 823780351 913019429 454671692 829797903 71868430 931019795 690060203 983625217 857795403 983145858 142217649 897839581 570323861 917967186 92872973 272061891 920195545 970666226 225184779 789925357 861629032 952156379 799954893 969460782 892617543 964415180 361970060 540008292 717189633 836385071 375189750 422326535 517838929 731317459 719212268 940082047 626778733 819557014 750606097 868974292 297417038 543163237 363306387 620688829 150483826 742914939 761562758 811099502 555560142 972202213 35835761 684461168 542091479 791955361 117252028 500919494 906298772 937666779 91045227 230313172 550319383 904156590 786835286 827344832 806360824 831656171 481431300 706062998 472713890 593923814 987907596 993668881 976010108 997688990 41210547 64051426 16766253 786834886 623157682 779313355 39281470 946628506 681357351 748882304 490805485 545587841 958055024 994177870 165207374 954160011 535025079 762584044 381059589 527898950 921366037 945403960 294438932 876950946 158633300 694767834 428149847 952525420 982114792 985173956 972426392 984443619 564444299 982897784 239008440 711572446 319322660 926155820 656733183 876147084 814463730 888996520 522954618 732153283 236852053 882790507 916450609 976731644 685116791 869676828 913005495 997392695 620852078 809799822 602210534 900143911 553590456 941955604 738840073 802175985 1695808 418703954 224409872 393688358 816968335 998190647 261150172 979398026 426250548 890236363 749650349 942910578 25868405 344754548 360014618 847123576 576839658 766020828 334018059 685125274 933426281 982724946 478345533 603295201 92656388 290620561 693584787 836718644 393325490 733954537 967198762 986801853 103494213 725381013 143533716 394633752 480367852 777808041 119089892 645982592 68568839 350362540 965378094 976559012 584278564 938198784 324063033 779768089 768807354 853428078 503756454 655936193 944808211 947533869 168096931 408153604 857914852 890379842 141162736 777873490 427885605 804610171 3264196 747629019 34513586 308433481 129766595 710957944 778994667 944564475 287674744 531648524 72755435 951432521 531387129 944501071 821897982 860669333 809197317 946849945 307043517 493485965 678500008 795440094 166778604 789814522 617314782 907610502 339050574 996913840 983002978 992752555 489409110 631889774 854235735 997340281 278668805 354367607 342827739 574030139 203385599 866439371 780393835 789901044 325262169 874561339 422970612 678728116 877682475 998618437 291226758 985333208 13857366 142177365 494378856 699430823 127971312 512390543 13678204 633152590 352382712 971978402 743603353 921793192 404964056 664102624 739339777 862363264 202327253 446299481 746129273 908727931 611657488 771194902 559929772 923620792 167685637 366868520 814090959 909567182 788161563 792171884 347970997 862569133 553841424 982963863 584031765 598374216 935062321 946608216 223441962 732615527 961450412 997865864 804890571 833608892 513078661 558739945 540400561 663825793 703261649 932229257 297555117 999731146 188809588 941184283 236054839 362911207 843702668 902976086 377118862 894174767 63162445 235059570 633524927 737367134 633846371 724093208 972412412 985711789 352618554 701901058 398073420 538895971 306675582 698028451 914990360 915682815 922120719 935203169 145151406 737220758 53082587 239430940 796557981 821726323 488898918 708926964 351936717 551019340 524973562 946668464 399429892 675155530 946381149 952421567 505263707 786038785 116343342 823240940 321508438 695889309 416071046 911018301 803328357 994634631 901713369 941249411 809632079 821742147 340889232 863788572 211665461 599066211 194551228 758678905 908143785 947612208 571606982 723219873 402126673 781326374 368969751 555023021 388193435 950414727 693191759 927222284 512288696 653313349 867905806 892456601 829391891 999087093 156369246 302206580 803330937 881285622 245327813 457205404 723560229 760535059 373023374 660727859 664106975 872165146 843104841 998727980 321740600 983995821 812813969 909307296 424757072 980157192 366229025 927675945 845380807 999226206 692250802 768923024 294284418 833307491 296981312 457918969 533817429 789641508 767162027 780029410 579656522 972083369 182483553 639750244 240231319 774865810 560609180 659021374 1593148 67628384 184358628 458767025 614636880 663573879 609326610 710563855 34974630 279270969 202818487 691590548 213263063 592841931 596537043 778835164 784126596 948780110 709335333 830621569 978577416 999847506 225361514 322187593 185481547 203280027 551818306 658541320 792402177 838662337 880026473 928500541 659533922 855852412 662284035 771654344 312561801 903827745 534849244 864731665 881818731 988550680 756639990 909481057 745253250 845885315 995033478 995272561 313924201 503393350 422224840 580040371 607851674 668752616 310943849 311761247 125801896 566467309 810598975 947692778 197009167 468572115 262985842 507033305 939037432 986799369 990543516 991846322 284799743 929380419 337948755 444350899 857914461 943140684 850929076 958979427 416608117 954936792 211400946 645626832 740326522 875370289 928082861 952709676 364920243 800682078 1499186 534556367 496736391 920007118 123099911 939046115 730836362 946817127 37155037 317307809 608006374 699242126 18468252 253362941 836185949 969452164 504704480 930397458 517279577 873531271 856622364 893114605 257882422 998229725 640543991 979929670 923478347 992128553 674643699 712701942 243499956 445167075 985512401 991677664 286272500 369103136 563619381 879650160 371386549 517694449 311058698 714064500 252164792 975547188 128489486 988865400 951546176 962049457 766304841 949283866 903486730 991606927 730636939 935388926 521723543 929169072 182136846 812771031 351739158 383173301 126063722 558535717 798373512 821783164 608172459 793414314 553587606 803074406 149750491 171517641 473299644 975002855 777049673 869466845 802650062 834903086 409836417 596079820 101444502 188957024 148966892 768344531 550034053 984922566 861247962 968309007 652604568 888758472 536740879 989580789 35990540 707951018 379466956 397498221 155509199 252955224 371156417 478288882 943684327 991980297 285979055 589198732 302476193 426717200 489367692 546265033 570494143 678960224 600816424 761941400 888488079 942066340 509039407 781092516 898123675 982937508 354819275 587924901 133773481 869975775 687734149 928346828 539810609 865529980 193742034 338532956 308451993 609110694 398991228 956153099 957798305 997256311 499964984 905632253 45142514 169917718 760562090 828533009 171903196 466482388 870129341 938562727 17715234 229379279 501536058 932008163 131349985 272563268 666181756 726553477 523484459 524787657 292239639 356991399 651527096 753891126 565058158 633472290 792937733 917674744 489722544 922529610 478258091 735028536 60949145 488872387 333494456 361265730 796062939 999208730 584683297 598793727 296850447 561024901 329306945 840316818 42910282 575182250 267046003 322845172 451954643 862239223 204133058 416911748 927745439 946603040 844685652 984249491 574062161 708495266 808606361 882810501 434034554 930987224 702390886 789170893 560989506 732874449 264011033 499862123 33691454 314924857 405862803 817337479 204744162 335025212 164485520 854671336 226284243 860451283 607258819 913053573 314302963 353860192 580643846 888422727 345535785 659776253 429847720 951785079 383753764 884527126 77114514 446506841 719942887 792540999 224623036 702300962 70580603 270309814 369179265 730545087 350448291 804879891 305710499 307599589 278168863 548010786 176101467 387930131 238428585 942172042 303873356 535768232 164192728 254784735 238822236 909787425 838838160 880021971 869516515 980605164 600615506 723985892 20003251 512911257 533177478 913067427 650503789 793366779 33470213 198202926 853901549 858763465 588140724 797919556 755254173 816689899 406008880 541304295 421246072 717799016 391467030 938541047 521797508 658467808 914833910 915034429 709816357 921087283 878309199 991549691 535667661 889937274 78504484 590720568 921738357 952932970 310976389 994170586 499209274 991519478 632176950 850454689 113033085 212635357 843620159 980087135 609189180 941562612 931984415 965784088 671786613 832023126 198224555 666716028 981285329 987024661 922153713 939524546 615798142 625830565 24302858 602819961 659086167 745813789 133648495 692190690 598534316 776936089 551060899 657679605 589818222 796146020 360875347 878456953 805993272 919540152 74835725 595113734 893709816 985071760 993234691 997746129 243952990 665982807 100721817 567802248 918973440 936555567 78483224 619669550 100804195 600850663 823690716 953465460 627295827 785638467 346378783 528420571 624872968 966503823 985434402 986122157 314991628 818144890 793561264 952520214 683526458 941847815 572898336 991860350 286080037 408205733 534453395 643439873 336335915 531351415 779747093 840966969 372435384 749118054 275144503 559372704 871661276 963077922 937490899 950180183 844589239 969375618 384669494 540380532 717467372 726390302 887185089 994674145 647446332 765867064 293328192 801488895 406022990 917527063 152532698 776019383 852304549 877424517 66201310 598578356 753903436 946602280 24460611 280280311 489026236 688117497 391774106 872110305 960231596 987847400 940804546 960623279 230805939 493493877 654783599 803298764 839368556 925515136 395465955 782986893 37316317 651088203 28571647 93905121 589898947 952794860 833726589 981210434 605924162 697056739 922419419 930568058 694430927 759175499 103231622 560996091 72869425 113198688 282140187 574177592 887845489 949265914 168813325 795480473 229490230 667427535 382699534 725873373 380433070 850232293 495207635 555570391 341827223 981006657 903482628 994748763 466004545 890304860 237581192 718876361 34306568 659075120 531032805 885737602 338366321 689541622 421675691 650608954 861927171 961923542 385168649 630766452 374823746 752344930 726165168 967279009 949374054 961319729 749455390 806103056 445242011 833642377 322631903 804375472 705649475 779186146 228098126 823057105 593410438 930168073 260038943 924522846 421590698 519913958 373344546 486408192 338876012 350060253 894895061 966015368 432952778 791747783 571163135 855147723 14074246 592389472 677506202 995034182 988426171 993657739 440249690 993724489 752931556 911298916 646142694 993968940 724451572 915564811 736960490 905952089 576524737 856855641 904352336 957835063 704718441 797276098 273156634 312903917 539527703 546808824 798799258 971612119 979905602 983982001 90737448 297830148 195408883 945296429 524103070 774910095 668155720 845878990 205597425 977989118 265353458 400023093 845948282 975193910 151112607 319000653 49340452 944305560 770046942 932414236 252528351 862620594 117594428 172306095 260082490 328221065 480652634 640701827 999539157 999586374 642193369 665703283 731354653 908492483 423426183 625764863 686048583 792581356 795323408 954411321 269860022 595864525 962348235 983519816 603870643 732908658 957976887 963911167 891352437 897562815 625015117 661832085 866826308 989899069 969157587 976503644 997080152 999350149 793508386 999148767 98166133 775153671 675565114 715410310 25070502 572609658 685203032 840963000 287111823 548964307 593274027 823161122 300257280 547179327 616361277 898916375 431075949 671546661 717102061 961382631 490589440 828696458 614044926 803935609 446104071 862830366 34131355 435804496 516059679 545573227 972946810 975089471 857736452 924222465 914651542 945218366 831655987 873641375 643417862 799967220 304884888 872604740 473827925 615025168 968720780 975512926 828031462 963471110 699308610 747874892 723586952 877926646 343294028 996181155 518785501 729576854 449772196 697457913 732328084 801417612 389427493 486894282 618961936 855979458 105754791 615872480 537769715 572215490 168444412 544165802 411203987 957334969 193742013 279442697 927974785 976127259 744752332 865645648 586020704 667902737 998676293 999142248 323290577 556607192 699729149 979589909 193546031 386125985 282634219 345021232 707471755 828559819 954544359 981982078 100664813 588260682 298675964 608587624 624385423 818140114 527098170 819787192 37305344 493751920 625640914 988603082 565500733 706206843 437966396 919461901 520603058 812877626 623178772 724902816 127825197 234359369 950114204 980952150 868834615 996701116 345427916 488113753 917209137 981164698 677157566 936573125 747449418 980767268 900620085 991000911 210839955 922335327 829489981 959920501 902302123 995448887 755601266 762963228 55808516 620367119 204075001 341823217 196651363 291308514 898154737 967135375 512076657 534297519 210662008 596674879 721879679 758772304 669622620 950244207 414373189 646495717 813848183 972642623 561806468 949742949 436989206 916969661 869604180 917234463 317740315 467678345 812352933 896287101 524940109 572465570 39036284 981654262 851383939 865539768 253715219 650504672 896362340 984525235 575809247 696756058 971181111 995936632 352168462 874154843 408490999 820128443 746674925 854190877 536920576 898365941 331132068 822489742 768956980 869011769 545514080 788770574 64601200 149572226 290090336 516259071 707357563 892857218 632676311 999992695 997347923 999105711 935143306 960237180 68628747 880149919 688811151 731336372 247824998 799089032 19593657 686921059 464160319 968450053 375195610 558415892 630335616 866670091 632881974 800729135 789414489 844836059 214100200 919540812 243184855 422059932 903035285 966515537 277624188 417962748 996272339 999545429 43313260 409608994 401383805 876546659 263918172 518366442 451855537 811068832 714010977 966129936 100085609 324275029 846093689 932683699 527612481 618422051 636867117 933312332 50719834 949876072 107466218 292091329 924032883 985037873 537509547 663646172 154524182 841702999 900583147 917356285 474343004 780769681 834112348 836201368 296848533 519916364 358058558 501372819 978030694 989390986 69007568 717808787 662627811 841888945 904374104 940577049 899708773 901036159 229071612 299768932 378579206 894130918 958727784 970466429 880986777 911547891 202134208 731294999 592727950 676503126 382452893 777955067 864224246 976929588 407096563 565193320 547389106 733346287 200653567 975908466 900756090 959985785 617764806 638600943 170194057 321943061 868824322 971806007 901096314 918750460 727172684 762438172 766509777 870702423 653142549 828867121 565790272 644159098 266814265 963295256 956288411 963995094 473202387 763000044 463147086 748196699 784050655 889269865 250520846 476522859 19936524 668501791 319052765 756403985 339598784 694287827 184439855 806945694 852791353 974104292 702029851 713571571 819581055 886570888 794598012 818382924 303947895 686677774 607302286 889133715 674667503 743943805 958288559 981486846 480806209 681659719 472708183 601713475 586145387 843321248 699665347 708390126 494760734 940445603 498183986 566144114 450185470 720600473 76039145 789713175 18620199 29415306 197631600 963774743 200102342 670772605 460820993 855315355 19721109 299798601 758921156 769744689 814419007 919067447 451168151 700206870 193538772 666843317 570132369 795814827 15402417 129576773 813805217 910899289 71089998 938500330 779919348 845893271 137600769 446614418 588640194 766813144 689394108 868608848 197824700 616210486 626271852 789925490 795794487 847754498 49252830 330091502 796874333 989809202 925374808 926830646 96418057 954304424 971662853 973652217 921792794 992737954 899296596 951429831 102890265 756840800 816385028 998373501 875728618 944384284 263043803 811918842 605385308 992081573 917644834 939337037 514977103 986820738 942476054 976357092 337934019 661277787 533774091 846381197 663300451 957124292 820332661 946847731 616783506 834929203 674941833 900649123 383753186 686352873 219101367 648293886 665093782 969161656 70785485 359764587 55544777 336640978 485837639 888613910 759660561 908127762 916503605 975711523 451759152 715379721 625615290 720564916 805600591 896469250 280394822 400898473 412265638 798568413 119167203 264230061 293541888 395063375 193603722 980358593 448924178 961175033 75476404 930794807 449737840 619095897 671952720 894049995 661872201 736922020 500762467 959042314 983868510 986428243 865404725 885709658 329865688 352718513 957286343 990446514 621426409 644350149 827070441 909790102 729016996 907223347 897428996 944898154 707860691 724821240 981987176 986053882 799747555 847483003 735890973 992006994 626976865 927147825 490747613 756606290 967421723 999166370 66804528 778022222 209918821 654903350 407334362 952883362 373521894 945070485 620078392 943016624 488735793 559465792 187545614 855557562 904729479 922838730 945277029 961459479 743346089 988817459 832571711 916705224 473055603 483521594 748575269 767090532 225450362 963364183 770239600 928525838 600066785 677047072 849332951 895643530 798366282 932655241 352080656 728230924 962443604 999016085 87774492 995410975 809630599 900054865 614805958 778982079 1922443 851153306 448707279 900768280 906630793 909705716 234031442 388510365 548177932 674444867 781612762 950339049 498179512 716108843 919233315 951337593 819806476 945199127 250404425 957672865 907728851 927473904 566569873 772919836 226237375 948217501 698197653 998107170 686112735 957591335 277804099 950628870 42555599 912439247 178391747 909646233 229715992 291093747 312627169 629451066 604822737 607651377 652532357 675936837 180043609 812023797 462832652 799194014 842994580 901100900 803082509 835276571 524791644 992865717 181853035 744843585 19335604 140773124 531047456 672744144 446792434 698761351 573167384 678445798 794411229 883923164 600812619 697276012 802504178 873631614 674729232 868246935 153641932 880562787 418072103 869561082 650739928 670146695 352408056 811624216 543315374 641557381 39957496 501562242 658735161 722571837 865393989 898499810 982324199 995306320 711520785 796353963 440310556 484071923 571955815 720361811 629719174 760606038 794222214 810655941 669955847 834292099 771380295 835539380 292302320 424064936 744220630 874428243 432030131 686711966 952993219 969279967 137260437 322122367 836540018 897044529 296990854 386298172 153936799 495556053 323085242 993429330 102742735 645464844 127633049 980300821 134906933 188041277 841253300 851540387 812510185 947477502 292732812 942141549 532765897 861767438 542663619 719160543 420657747 634282148 183068117 639140375 864475860 878041967 349350982 423803914 207413565 368946320 295482978 820382736 516597613 699014632 579941655 705630964 611037798 977716304 724216067 954884633 214641211 869915099 763182631 961488336 282905644 968047987 575218836 887964252 628606963 753569543 910558369 997303696 857860871 969661879 510273976 919249479 475244967 574780694 55531409 343028521 356487609 434357104 233239534 645931243 734868790 855902873 817772142 842380378 758095133 799792625 764073359 873882013 76117765 448900031 415751670 521034474 649070804 778105470 748296509 812547152 575117354 773775730 702564629 914839049 242116335 657660141 254632235 539429452 84630292 419549520 20780051 324211368 740650866 989828764 748656652 903578579 110028779 748004325 251969038 450317480 268150556 359053543 296780618 766605208 911451901 931280045 170662257 278036330 684284489 839697484 753383203 809390154 775164823 984557867 354756641 546464760 32829183 625094714 342221427 823324610 447496669 966347481 84992916 566857915 291554405 442417815 471900987 490161662 811614134 970912742 489953377 792351858 311695145 632313279 381097414 975743620 143382485 734724832 204662235 621724177 63182836 527547439 4308603 244638586 643648388 925383621 636652166 798211295 492190013 835468138 957932716 961036897 616047043 810739538 569661227 937529674 539254092 742849241 282870900 503150616 712843118 785847818 335095885 522885097 2666346 850739572 734372440 956772428 253966508 955591212 361052936 457118015 211566961 580756870 821516843 823304408 103632519 714719964 2443584 571827531 474143743 580925835 243305606 938731863 128409033 370655492 385078352 488376286 922727229 940941259 983094986 995461698 275015697 771389547 427282138 436433458 860422456 878497842 549666955 621197804 781870381 881735015 498727889 959773921 404119326 992986544 162702179 933557441 237935090 731335210 387317780 516358844 576472325 886538326 528148427 700162781 77765143 707910412 928104702 978541565 738308977 870543423 402175677 606022714 742630602 828729998 599298480 754655883 529363394 927412891 751376768 833752052 387212518 581517049 487912144 984669986 619288311 843942106 109421653 938802947 391996032 871250710 963630302 992366646 410575796 565630837 365303487 906091514 444258084 603054993 261836024 727248973 748467037 765123920 400766193 832838028 372068499 547589504 829120443 979865994 132274046 508998974 449312706 534956693 590835735 872382433 870406607 959904657 519569261 898026963 220850936 672819453 453831788 896511521 548810299 858101519 485099968 788021539 701550543 905817852 314016808 323263470 721782737 752938659 443569828 527135009 477244274 586551598 133663537 972573551 261828529 822426653 60940780 861448989 98849897 722651826 589275197 828426835 174276263 203170092 779330047 851869758 304086623 732441758 758915635 954448222 740873174 851929882 952948 766507592 333271628 750345578 502628654 753785588 929238519 952481330 488016172 900442858 951383472 995795481 392286592 494371584 683263334 769908987 392831303 752824663 190895237 322874417 773556565 939546829 4226741 28959558 945604836 968270499 320451436 459650080 230211917 650635041 289871970 495073450 357478489 517308811 549201405 641157670 675040315 862592091 470529125 501594340 704735956 951965569 698221997 791350569 709735512 986934480 288599639 495927465 568344444 612348164 170703892 483685165 216996447 626285940 450865920 908779602 998510437 999998944 850932463 865257481 289973757 448720054 382472443 538456288 699015075 844484148 62868099 980182805 990609138 999962745 611691792 779013191 889218887 916538761 378283700 413203526 598544557 764015493 990805106 993705539 72494072 630844672 809701445 895197781 968169611 972018498 304887452 813055142 304741894 341858293 676518241 701314602 170445503 797612758 941141967 954844197 550037031 653638817 826433677 929580078 100684062 186790864 629098524 871456142 280942726 834657299 976108992 981580383 530822349 872998694 530886569 694808977 961375720 984973740 387874062 872378671 309371563 992891786 380150671 446313483 604130015 943665866 366259065 976841197 107729920 716824354 493404439 938466829 850095908 886122990 83474380 170085472 987405559 991856442 233857915 740095779 705304004 862860062 621769826 963945873 78937922 933757103 26568717 647368478 9746311 937923061 716234833 771108516 720969337 846878326 238951814 478841012 196926397 999935897 371651418 988696939 9959540 657831101 740923799 992280619 653563709 721101995 172256770 314170279 567385297 849965055 620656685 628477550 940600712 958082512 739633903 869707293 715059636 965451514 315829028 828563373 289135536 850309565 745616063 774967384 893182322 912654698 340330850 988257909 749922064 968891015 245813049 649069666 65030933 410786224 420769074 706587061 761746263 946218006 351913736 362052262 383756932 494776421 460178619 781321340 272007452 739003632 294490845 555597506 767227012 867641694 183126444 976297063 855033550 903776561 161011496 195973069 756003716 758353310 892726870 953061338 558001967 753338375 889792011 935411760 620304531 903593672 350837851 650779794 342555504 428848998 724662223 752920384 768659697 966889018 887997567 965000873 200077854 555358911 74857118 634376267 438097493 571826417 694681363 836869531 677489160 683202725 718088686 813677310 69200694 384289613 771646596 906225359 51476432 388167601 686865388 850836512 798802602 820509560 759668865 896247509 910756515 928666678 829736739 888201601 40178273 841027759 844650540 968196323 581004649 923016132 568216389 848290646 618907866 992466795 329570883 983848808 286125224 560208291 640397087 768987126 502637250 511459357 153778952 885082733 524710698 577561179 93724928 549758893 96405814 331049079 429246540 696063807 809201620 912359550 955556223 991640627 981752297 994767381 356635906 381047231 886158235 944794848 222356854 896455378 135266093 222578763 914930326 941207672 813800891 986569373 898220852 965677117 954603274 974046334 947223760 961716928 754270627 792768135 501286615 817232293 29824297 380161573 215253419 491029767 40356713 217397206 306585957 857520900 429990973 691564623 647621321 931819879 866994894 916017206 570701106 957491360 904039111 960277049 150243744 504449051 637075808 895903738 420175601 536955518 617214603 759871624 693173803 952160763 586953048 866864681 68520817 320216860 908205981 908853400 620419213 703751637 543010446 998527228 328017297 454864883 552381994 905297567 390275969 425425069 253790250 314629648 27879283 944482979 965749018 992507190 598023787 778139018 727523030 961191071 502271064 839120116 167853444 363042780 40004274 591992749 165410532 272257127 713530859 718772238 821619188 861660061 585164964 836233456 663426778 670910271 948333159 989320535 545911719 571048868 459444073 573302818 419804575 714704954 404532387 694810853 843660005 905874590 650422869 688163255 103670683 421162615 702926399 740668368 770199138 821731537 557708721 993423750 494101603 764992291 373518121 931533241 598075184 652359755 585195682 771866677 51016892 648347031 214784011 532672386 301223388 416203453 144196491 336592732 23350631 953919451 280090918 510100682 271669572 597096622 378047089 990379957 747239480 954069344 484617045 490350330 335637161 827954498 344637286 569029140 875825288 919559300 491040556 587685103 109898127 407077190 504843787 745901200 505289883 757892235 109650112 783036358 555943887 582496592 544349770 848956456 704874795 912514017 848714041 851043376 78723932 831259975 484180369 509906956 739830897 953965466 863590198 962716706 399508968 668826822 27569570 45440344 696791408 752121600 785031013 813483170 422278254 867497585 706887432 924375363 682241364 907178286 754746876 964302769 640476161 811196175 133451443 239171772 137360639 188571253 144412643 321561108 268240632 410541500 277123992 905757665 215651523 373961290 131213583 780136235 23016105 292623777 598362056 608810969 871635497 921332778 80824755 976625817 724818679 994947851 689486725 966060445 536582391 787896243 101987081 774661264 254207394 940571939 714713366 836075311 47214094 353828065 777717469 881877814 417101431 673770831 906140053 923286179 508319477 942817958 704439533 724058795 845521824 913710765 122259798 655612013 957836404 989236272 929056634 948961745 351728657 933084630 127954422 212265203 368604071 483768576 710516738 783526705 976182077 994044139 133723445 721102128 651567034 886139023 161646970 171732629 123201508 462990826 505747193 546900551 519529837 651653560 559798256 899484223 184027522 768822292 592633744 884236531 517506458 565744411 922458273 924431438 432903181 768910851 66259354 820130652 865258842 871677770 298772623 808492218 984121148 986788868 341384063 856610497 772195875 853354250 279257699 646828439 515464393 983819578 898579163 954633206 477174171 973402461 282802078 640965901 598060830 841294172 605839122 846317546 827185800 988167846 433781471 963865345 91547254 454086453 980298089 993046960 281662424 618818481 763610658 927344117 729259859 986872328 471745032 809890966 17654985 630807311 338924570 989163407 39307173 62541632 32400733 319178915 770357921 897925612 674227043 733764768 755789441 898907821 283335541 938719574 859158159 922223369 391526049 750315529 336685083 389274862 206726336 535796886 104216107 831282848 614681977 678216974 29502466 626900786 310692698 530009278 924215612 972874024 446868088 537790552 703866656 988699450 818765732 842347238 841586762 915337884 412395762 678282800 278755699 627164937 982222314 994927149 609748786 832783984 87332704 827298558 221825210 988024197 273423131 594545807 414345953 888786170 415555076 862762439 285726589 909605367 281861529 798716824 616788390 750497571 431750417 706061131 627928726 734086618 150086273 983015584 829617796 838803385 410975586 727623767 20248970 876734786 520949851 547402729 981189766 985141228 890670466 972469643 748776085 976924777 261299646 664095593 402219798 743887482 437672652 521784523 945730941 982648823 292317253 314764178 971551740 995236634 800213350 861272726 459849244 894097237 675192418 692361921 701566418 997288980 888277211 991329240 812335202 864928317 588478044 942388601 767870283 881982559 105563164 606233156 610803282 735203185 495269820 652773538 936498548 950250010 791369164 806163594 475872517 528196142 239381001 422669582 320939825 962125291 388199540 684828158 748768190 896465579 104424906 690370990 678802310 735484347 710624918 795018686 52931099 444651762 14793746 293190753 873515913 988839689 822118229 944305553 40651586 131759374 881381687 890972126 376638095 994112365 731153291 876955571 275065720 646352343 664037845 793998984 482042205 872217108 725262577 818102816 42433690 449388802 283143299 670900553 948261875 986817374 372696579 787357127 878044575 915523786 223021300 900343728 428261593 922957935 822682187 827321968 83148735 793207046 735357305 994121248 823538961 955110420 636980112 643002575 127090479 301224156 845333277 853970446 131181105 460022779 168596430 734815176 728167306 928831283 421405016 683595183 345676310 751142196 294595453 862849418 912963142 947128632 514483097 567926546 572908361 857378419 975642960 987886232 61819617 460896829 6000260 89485752 124595004 604741824 691144745 733302879 571393413 715136239 937472378 995572126 490744761 575399319 940201511 984629484 532577192 955617079 479653091 758288159 743206325 973040489 740284486 765203709 914027290 980817776 824921446 941229096 852016388 892627944 490073496 522498037 540040990 940599780 30096595 988891132 118324085 987076046 149819473 338990719 516327614 892534154 167046325 985959948 258643825 943181716 375795089 670857981 588530750 855664764 59130736 876737510 884286266 914783583 545349024 950861709 890211547 996198955 242245724 457205753 434730053 591925724 581992318 696584470 844845475 961128404 522470425 685411039 862046612 973059243 458947023 591298295 881279614 998700570 125933474 475911000 19831854 209517294 52668305 189595979 535331541 924719810 822324846 853583552 970528984 992759839 624893637 759892668 745639619 820571308 742908347 971998850 220240133 345417926 367995661 875166888 237079901 977251534 20463567 465849225 730649869 878226010 935738989 943510333 287854265 800573255 992265825 998380729 19863491 280540516 720204280 966392918 259498911 980252641 941973701 974119750 58072817 490634775 624618783 919506673 402218776 944263183 327485387 860130899 399396243 759254686 737291020 922502091 515591771 864754090 884015453 925830050 211140656 336946992 920641430 947140304 168744204 603858671 894381307 965197274 785511353 977382464 16557684 949949841 502272273 704435670 482399479 528620948 873330320 925794491 984708569 988399789 696214792 699624400 285155003 451583301 299833531 917429071 359444180 654078658 386439664 506301282 339237545 719536072 470192836 865013440 938487524 988691238 205628572 247603873 964000733 986713494 845349164 898481848 788353435 802170551 991225156 998202390 498028445 760532679 318715988 894875993 596351837 879034235 876481500 945578502 778905543 945272934 7489890 793943496 188558200 239094076 279994619 425768472 421374154 708032015 237013352 923500750 251959734 966203174 168081576 831586296 454146700 749466204 46477928 380165019 408854603 596829082 563584372 933799589 283118833 984199582 693629510 778433355 668716626 888159743 721724651 902007171 862554862 920798053 689829731 774894763 799167853 913231091 999400926 999730260 848021518 860358093 880264443 892007703 782353427 961193729 104002930 883029275 973555942 986506442 776463257 887145590 705755166 892187025 589550936 775511670 421268835 917936296 120612523 706595638 354181552 757755199 385396077 827972977 335277340 383821379 562716033 789968277 838599896 886037682 464021257 574634974 719283924 810283733 925257554 984031079 271292517 809110589 53521687 388038330 773337229 796573415 716996417 862531307 705016824 871433366 924537454 941782076 829296445 906541353 489393055 816801745 573690300 879495491 609969986 777989898 590888720 836467090 751602412 996650749 205997224 439770243 636286255 702069375 587167308 794538439 418234618 439456010 639197196 895844939 196398319 856630599 929925129 962374020 397183173 695481291 873162312 923920868 443004888 663636205 191362062 899971610 557859667 699405663 838845079 953600988 707845365 955708871 678810197 931861184 971789426 979931585 461853050 484336494 698283475 849923511 986055333 987920163 958115440 960590424 273718464 851835438 407741965 630323046 836626307 875646423 990459540 996360361 59433008 746590177 556000720 627985438 669271773 861675114 973519230 975093805 862603456 936601932 397735398 934794999 462272964 758735728 229839693 379299515 354117199 365338388 453379237 525125508 782127919 816357445 539584886 958010407 242779832 250812329 244237988 363258446 646836072 718192188 267547021 898174513 44306260 928182045 442632561 834397548 149248151 970272486 163274711 799196435 395316601 624315533 58973416 844861347 368373883 827946896 300809527 404801287 10474759 980690411 880451888 913236486 172603703 554275382 717344749 786509836 226301166 372771938 3329452 480792831 181185677 773442302 849386832 993344285 383145832 851863127 387353047 681279303 188904915 658145207 964154425 991699003 395188368 940626685 188470587 495229879 211585622 760906478 198621891 715198686 237174615 579450200 986937932 996578603 161694460 390815978 547569913 975763175 814477208 931624109 48788772 274966433 137274349 348333080 170317609 207409628 441805950 705322441 388785544 774669705 478284827 860823776 725871679 736321306 935739060 969056673 499576222 754766257 207846516 352352645 576029664 693992032 60573956 91066724 735586684 935288134 260336892 827424557 687073338 687968606 689843052 730238628 839788286 868954168 995004621 997892410 938772106 986617132 418586077 839505690 465826462 637004768 546447723 690396024 342428350 732445012 594962791 760698080 480742152 927148749 357286908 525898000 835349026 888430322 601558738 662995194 847659370 971665963 176854919 820922785 614514948 629787226 948773427 965606128 418583598 668191895 277577419 617646828 406620569 668103684 262351229 502289622 999312700 999899542 767382913 908018729 238986245 577206829 115328284 348156818 866264488 899006503 622363165 898239888 845329204 915327307 925357413 969808133 33938620 471517924 857656147 928522730 241837813 501151658 671452107 808591867 113024787 662441388 879283474 895761497 400459937 838821908 607665077 729383149 406351064 446071179 417267287 515303741 104050249 388923861 970445035 977069433 732601780 740144773 598446999 877382364 200370405 550346084 79068491 847192519 924581387 990869764 466289500 594279394 191972587 810971596 608021334 963746821 106744153 815955513 989242380 996905121 18377616 197342785 841945384 903000002 933272570 933501613 924030386 963027544 51310150 291138049 180405721 638454531 668647702 791405966 515439373 941371649 865759861 999359207 2898294 954800129 376065881 390118382 789383735 876244206 989983716 992524319 657463568 820504449 114696113 690863809 93869565 768576620 237139768 601783702 537627379 567357141 892073246 955808259 973586693 979607639 463568075 595648078 445986569 777545740 97082889 725366964 409275289 790651995 516587469 541938748 215170368 839239049 429326485 940523516 827093741 995654488 894490996 940534316 646735657 812087604 750516842 777334470 104961913 386581650 40915070 984458653 905009964 907021625 810586522 940186627 889149398 904666843 810193816 915891517 62905782 997292999 599678206 704411530 159236509 892474034 311941761 449967704 998990742 999856553 240566839 760630364 481799362 808114018 645446430 657692709 989093065 994635404 646433201 736293745 379041664 937300822 616205975 665191074 64570495 432724100 157448672 334031856 859247900 864657289 559038739 579439442 548740764 588762214 109208920 441946589 13162821 397061911 605041385 853129812 612940125 905309762 487650941 572604483 319904672 926052846 172164973 386835027 372336896 463021153 563677625 809040319 522372506 938661090 776129593 992833469 79187153 650361590 461638121 698682876 272026312 294528978 724269345 975390883 578229785 729217591 997305946 999483918 391372504 885871868 894298764 910309814 446811642 963703886 641686572 758612689 675213696 839577585 229153759 788303324 806253863 826477511 375890660 889017229 496098495 642541580 335462763 983375982 653126966 807820236 60964653 372035296 874330148 985385260 245596212 355596775 717337722 987895567 3211491 572000386 755795345 974661890 878272442 906222570 463242539 480100090 156791416 669994261 253056595 394573304 682698250 887076509 28671059 394353140 325759888 844603148 537015075 709441401 795206723 976532305 586869339 958239279 418826494 696954809 565905881 650995932 545184471 859264117 334651599 607778859 913503421 997358554 664170696 878500265 769926356 999833226 194384685 653615003 228558123 906943422 370788226 949887187 370279579 844920086 883893736 952557850 408951757 576676246 199855597 566552196 73539460 489878842 716806593 822765896 393612295 904371656 58902866 607794915 570553616 916874580 71753699 484397386 120532946 655973872 972833305 995364465 803316404 968403408 230988698 824237469 169469348 734442460 986007420 994319497 18693771 564089405 354187891 859075404 451105795 612773715 55524176 882858550 904047181 972239490 901123385 903900588 975899429 985560191 904294222 916421975 532721425 639205961 229171685 668427179 972236750 986768700 318875816 333421732 793569474 925049440 276454698 303719903 767499810 882024401 349309143 737497935 233934618 738144115 353352361 761628103 462593257 741840921 792395144 889772947 930367454 973718243 809571616 933639783 806612121 951514248 671980226 813447747 564633598 890461035 269182030 595270719 725633910 782703814 634884094 961057099 905064260 910696801 590677488 779423149 367663884 416529463 792078994 808235565 196044184 830874514 7096896 756143397 870831616 956653833 143597141 563444900 817584917 873407377 809887217 919261663 973854105 984545559 195125831 396470208 847320698 984704593 70711164 988162486 742669938 778281137 450594472 940292100 916087810 976336886 653519344 657606753 256023989 821596165 130028971 618451189 234897787 806156777 410053721 934061697 533930976 683239677 341059854 366230287 132380793 690852067 780210446 920648792 865979088 956899718 761845467 877505691 368999128 907300442 248353951 753568674 308788023 707237863 464520490 676595038 13526465 254175204 555373720 840186941 900182227 992113825 933637814 976262309 136956496 734576452 578507870 890345439 283447573 698479636 720527618 742322676 364117750 814647426 382377747 769133727 391035304 817472530 724409098 949929696 156118506 186899051 869494147 887020831 417721014 934483772 482305053 753490496 283147246 410307178 221772074 237021278 180776658 630174514 41992830 130988745 66128278 927919055 521855020 775476763 184968569 596325926 604854433 707227461 684397066 705391689 645286574 742950520 475760788 491321108 155868174 530353776 386977546 996175564 488124692 724538026 488153922 742942876 511205685 640606640 276030766 870814351 944066891 997179373 995972924 999978857 656714654 686245052 155216557 936610935 309140856 660504584 131217639 596204984 440180343 871994702 18958265 663113793 512305360 879141509 764488302 917155154 699345603 783828872 814965510 978742350 498759715 961552054 879194046 990653202 32774113 324964562 470081708 716807187 414123523 739974052 38366007 140951298 570631940 592852024 246308669 898922604 304820649 872910058 428240634 554154386 734009705 754049565 699660426 856076329 369903342 681578351 157788479 534593829 856708964 863189726 955240545 959931557 724612687 966291555 389651599 803699690 216866085 543664319 454482051 506845097 15701718 96026731 473472661 695677260 115471328 443817353 786634429 868987470 569818555 826365145 482024489 931937017 939478890 983990269 824410275 902216594 964207985 987645557 617507832 637507629 837632131 871240880 993813559 995905596 605089261 872344902 200398840 920770184 999751419 999940077 979696272 979882429 870886481 971863203 676907649 952470415 879798181 958604652 635061906 986197190 536887502 914686995 982297298 985824814 869145912 975598668 462349300 495142347 543369352 993616712 843762567 912621992 246543008 898652103 395452208 452356082 87261962 794245064 555024499 647457249 861841216 938559380 79956300 646892030 11977146 302573316 295471969 682230401 170823919 507357095 272533396 412302515 836796846 860116452 777940683 945400353 745331486 745600421 635314459 833360416 510041926 679660871 764291674 865090103 271063664 612787301 203122909 848176403 600833906 654188726 625557570 812387913 489385206 876393889 743452277 782364385 985379400 998186834 843403925 900102706 815938726 958817030 948766854 971888076 926512072 989973974 514127396 788037850 140522757 308631502 740079984 888158951 81114921 576164227 293138436 673046971 395481659 529532551 255047959 259083737 78636544 864322533 345002220 924363142 3070873 760247768 898112727 952259219 189867396 456690628 657978899 714453929 689680242 924592174 638348345 676397672 346299214 901760854 111974138 431203490 171301978 626089992 578792219 965428503 469062591 527541025 853905853 897980050 989760320 993868214 960846542 963075502 451043176 804800717 263201996 317320467 924915772 946911118 94148653 761504541 887261998 919362232 412555313 505560985 779085882 968842808 112876251 186627000 562488264 569141613 938376496 956902920 129423556 809178122 60163496 206090456 961413135 981049775 166513816 730402166 1722338 158961958 611264532 736712888 658748976 779108812 685327724 918706874 822933430 934204461 336571649 403943643 834220850 933154829 918103582 960690598 53254837 645274184 939072173 963679322 577972855 756240627 103825229 556231180 962182836 992112576 672258235 986782456 763182425 929700632 996690199 997936075 916729444 971999101 943581131 998179763 892443534 935506013 282256736 426416526 21971513 159101205 304449731 409414138 492895268 831656835 561007788 669608823 301937286 999115814 450019893 864503469 93033903 368272675 769704546 969675055 755174033 887793315 284318095 897431683 695877077 787398399 856787419 884272879 304054530 377226700 374720827 815582843 994644270 996297547 31680587 766261257 94415825 160837245 380517281 711160354 36787069 175236960 935530703 950076554 326160352 542039593 435019090 956547728 359921615 830644649 846533064 858816311 2503307 239205281 316764690 601771618 316245535 351604435 192941762 519740833 563306872 716575321 407607041 969748831 954728277 999716205 671763894 904628003 131530986 195712410 438858716 572005949 810786004 876791542 971241683 973187875 609227964 849003477 200035889 959804076 62613735 721723242 143846414 261076704 498605843 515500613 439332000 688640619 212233668 936608518 804242774 882989825 835094045 881057458 408431942 485124992 243318217 430100772 748860854 906587034 368245942 616848931 685688473 905594775 127274977 244518343 347231608 385420880 153429314 182033278 85019785 117262927 145543260 993060088 745463890 774954780 483741948 924997051 729683649 932106939 709053216 955417553 68116064 580510888 116064638 750792139 362363906 527247179 443533648 733017627 16737563 310428554 611994718 991863655 49793196 902361999 399443398 672515319 379513209 805298286 752801187 964863469 107759950 628388084 619454271 735416895 991951110 993327088 784142505 824264406 689398950 816781139 53785474 480942392 791134050 851331268 175607100 477850980 140976267 774549139 1623315 576208767 353431548 844654202 695758179 715171061 111052133 565866016 609202218 962312121 401559205 697900126 35394633 781558101 574935049 757360451 130839723 577519279 827396621 994369591 979234010 996428262 839592228 875023735 897430658 956524153 890740043 907036535 884505377 954928773 148308102 539185753 687651754 731485514 404047629 752313892 459874044 839074933 973175945 978954427 777934759 931472510 279248545 666934469 459862816 464510387 467770060 941934257 141353083 986205892 625222558 790269085 778097784 843068187 727783920 866046197 873621759 940145949 186778549 952085182 844744692 977835687 902880489 981604173 756488554 959446191 87995471 802602097 346107409 768219006 300438634 954532153 702590805 756885214 809672352 850576297 108842670 366707885 416989802 991460630 883885124 939693671 62814241 991305576 255871479 966220857 201373848 650232165 184354464 539797517 372904813 571332199 47058934 802383668 106193316 700248990 621868268 924103434 778882330 823674021 945267723 959736882 400081999 750234545 256765718 476471441 322749136 806081299 934072300 958702090 551851420 718906633 888355170 980120186 572849143 947063729 999852356 999997143 526502280 876991270 4304665 990387143 259886882 328904684 229631978 359017905 369442579 965031516 196005933 611655247 454910804 579450572 703811255 870380108 438160813 846026595 699496255 896928671 809913009 858646919 977458456 982062398 117830473 500016582 141135880 347795186 609278306 881648685 450643993 559015761 140612159 508078747 408608474 924437396 563633008 970162108 795532583 833311565 907458586 914965364 256685387 722228748 58231526 817938821 328216089 781341514 34972566 72684325 304908750 837653493 616334084 678183842 680945245 683662506 554678410 872239607 295535856 911682783 813771552 900921884 639856163 970380071 353107086 902398345 173263371 969786255 745528349 986089459 578082633 623088390 531052360 568869245 372197935 680169369 584435626 702052778 69925463 117189030 984660526 998540379 504171380 769322146 566403810 825996390 972698841 994876071 927072632 972832212 880458733 970468664 425442936 855648014 112276107 552085450 24115910 490186880 424570542 944703762 12591021 538012412 196582143 590832479 206824568 542716328 122796291 227502245 495393393 967412753 831613885 969624943 93380679 781797279 130220266 609725070 400543205 530056582 585970435 763959633 513293429 913552061 466947992 969912256 145179922 783627405 876581587 884432505 696673147 918116534 650409056 815876299 432312201 448276942 345135078 733319956 532224238 729556812 671176920 978132347 413401400 833499844 314141442 609212607 851675283 983042571 250340346 724484686 664497300 927470407 512694803 890835976 535880329 563722128 190424152 499164350 530457309 813464513 611561971 822380156 927731129 971476616 721857401 856890257 900384780 997312578 299190925 518625292 333490063 431955956 700320330 987697408 915113076 997358213 182592945 231404498 969738677 985595157 224646157 789796609 206611142 389438684 129059458 185739090 112748278 537834563 409871483 952864578 417614477 777300578 649118388 698787210 943197425 979593357 107957320 606793325 202127815 728950902 879560438 968528898 961922277 994057293 449930550 467003198 6851746 890915282 302335542 933016776 373851231 599927065 621563289 965814564 812096871 828571870 763095366 848257722 434852140 544330211 263715461 599800714 866556294 955302937 54864331 821223475 142351734 604862046 31019537 540581063 278088372 784967727 76937509 924307190 382429696 946387536 724794979 907081470 464285935 536476134 256271119 499055670 349559974 864796735 29710580 777443824 688419382 733706814 725543377 838907970 449974852 730208639 837858799 981390275 253271707 666494136 641523867 741758114 819492100 953463579 380049683 950929396 811872284 908472558 682625985 685527487 631443393 774683425 735231522 865678528 454141893 801756646 222253019 288378962 201136684 212366063 244232617 852965419 792487112 991432819 583075250 971907746 642800955 841341706 713663850 806895443 458135261 599523779 508737713 998446092 933560088 996103779 278270444 669957381 284880951 642503320 215548635 934889890 787183052 928647137 501791547 724627784 400171411 429323920 676961687 952524380 56189696 124911129 872074870 945512621 914140721 930756699 374632047 771955400 712304619 850142638 873040832 893140378 83267812 905557947 169794480 710061003 944765243 946263491 532623101 991460217 238844214 826701953 898335241 916149387 368786471 646614219 614896757 936029806 47389897 658592331 532336341 636935831 186544187 814361445 814413035 915872167 676699748 774356046 480951157 675374790 207352665 986776167 365249205 849888663 40019467 635514110 321973822 905378461 55326440 290973206 921289586 947713205 649259981 770251967 572308842 941587434 724129547 740600080 292315682 424961765 909992404 933485737 574988731 683152602 522187434 863085107 343667308 707652972 799037227 867246533 137869843 718344446 899516209 996154890 895429894 999989683 215120039 950297652 477593758 959408083 695878961 774239702 834472070 943150081 839787160 988105022 217068036 426081710 898200788 993619844 682670827 832789572 64112588 434837088 940354256 982218501 716769625 835415355 856494846 888772601 16974141 214366415 6586534 816086998 870615288 989611201 664912782 801811594 727759367 867799839 807572109 923387735 524690426 569638595 302827271 826296855 902 304697051 14105366 450750346 97172560 314744063 524906984 663284895 313449155 333633824 355272920 918380589 792123577 960991806 798908307 927618863 633152300 826387421 882718943 893654853 545961740 718455218 663163851 733869560 699337979 852424680 545914505 724056973 730854744 841048800 649816147 749393093 953259473 971425129 989574717 999124369 691162144 852579618 856140855 916516390 254890025 941437475 289408931 809595895 330000856 686016345 704633429 939498643 665441024 829335268 54998409 677431092 150473902 915402430 16439364 390255934 728551625 788079966 305763014 644377639 701140286 806732628 381190247 791635563 181704930 941618093 153100145 682929639 547750507 984406806 696819796 745189886 249462564 426280771 862875208 906803867 760265548 893297072 174179509 920993405 50984116 302125610 899922969 977359350 980596516 989262998 403848519 588112819 76750919 294666352 703964074 758038996 215976394 639132117 169830604 280369681 534400226 647397862 859433437 992061486 909277019 970976532 957355886 970732000 396472431 648275535 895886899 994753462 56205321 950785355 607093211 942315749 829109811 889786098 931284503 980456450 165680465 605399872 747947127 908051568 128711055 684748933 457914708 882890832 965386034 987031605 641364528 689209639 213764227 272379671 226002168 569692416 807388929 980780494 675710114 848996935 34043140 905600503 223491597 239659768 85395083 475186219 829722015 910751878 449943157 848540040 8597177 309455755 104038967 969210531 345671833 809833527 84406776 500761783 134813004 160734681 767759950 885386848 474341201 674244066 930337421 947650620 377271074 450414544 107225282 692433594 652374862 908117629 544086175 792896580 424012528 538419973 293627778 821999134 59392225 583032934 586827086 811798767 344983387 611962647 458080984 917833638 990702137 991079558 663605414 835449039 309480922 661713776 268831034 944684437 874765393 923514044 801839392 954288327 858272222 966466122 670691088 813902142 693302442 723952715 106974357 539258388 337773729 666820627 843270386 916682505 546326141 978606010 794096783 852279813 389286016 782571003 788258685 790724486 315557676 336721528 562744947 990735705 813530946 972952374 501064538 575924593 102907423 132341511 108932381 737446017 72866262 118533404 561041588 607290106 277375658 529521735 877870872 879249374 411036241 923989209 802868259 835214172 235592860 683551852 468029948 939030209 21672264 225815997 488048239 819327310 74886265 212532416 872727820 912263275 417106622 674107196 232153248 994168809 543105159 787484336 983154941 995544845 297204835 529951449 799162854 860146339 996487721 999571546 255217112 628884558 493442534 885862974 287034881 841196760 860836196 879326260 927081962 956190573 515917458 853498932 846883210 914577270 257003039 936539946 257578508 990097384 691893934 723056812 241345657 305371769 245826746 528611819 695480046 997797848 597985906 676206890 823027679 967754219 235074577 737413326 134079054 966589722 291620681 778240130 879851842 948534616 104282271 684300991 106082279 531028146 214876262 544249656 60171323 485187239 382336841 463046885 692751198 733525881 772939846 910679338 987831847 991184256 776687703 917562206 978715983 988038870 563242026 744373814 762760708 788770162 197470981 579695428 152691674 725613072 584586288 661275424 881220840 972995692 613665227 776118998 759719499 981611357 821207188 925594538 17948273 214889542 217985166 639352514 369507083 371245632 750963223 751594522 180201959 463487825 251881429 756581763 666012604 756525656 115018932 856336842 470475492 905108042 146704448 191944913 898059221 931810486 712603069 933917506 676505601 909818637 306042252 530181459 180916768 999191698 327705770 431192086 852292886 913711032 472343032 790803636 603388730 956013057 446883978 719267204 755231496 800350955 783088498 803739968 96693248 760215241 827257720 865547708 149012113 708844185 272236937 636597466 696528106 842495425 387979675 495007018 382469463 711973654 723926597 888938155 737218731 800003383 5914437 291886222 460289237 982559063 345932672 521366262 949510087 964987978 264441631 445986220 601099609 951004785 788250952 995107350 624667033 649754076 108100135 371625184 607088343 911718247 153503526 189220433 647146572 785125577 301685474 991938503 83519612 460858815 210134838 684856966 663582015 782308918 268581655 556034921 798201576 912308905 294610714 582173770 456793028 864205463 49720284 171861734 253065763 483185009 643466432 878967466 410368991 961136378 202539036 889248160 521789875 689941731 388725287 688653033 48575718 58424591 320049202 854129448 33824819 523167321 24614936 640193835 615958911 788331969 979971404 986894067 418112640 773108494 929375916 961505310 455745606 798819440 316401711 618355744 167917843 415473363 188203130 913942841 181985348 696816528 460818321 945222298 625598725 884867774 513863510 585982919 124675184 452125013 152608937 297446572 280792233 529035228 150317981 862712509 273599954 522151814 724166895 997467707 644741210 868511378 780212482 891033249 610003479 834591081 640700570 769489913 521048813 554504894 318360605 571560185 305359346 746507123 312204831 550583826 556124615 855510694 873945588 946745362 194824172 598546936 345473561 864354886 645533807 702404981 631314117 653470408 625940691 646244745 713193218 846680992 117047191 405360232 655750100 839888259 963167495 997979876 389283892 983803826 455672058 734796487 609895189 977029117 409424148 738365936 559318021 608938248 509261578 876096633 784328755 847611011 531142787 633414643 41680105 517739997 838521531 868123891 388568026 684295642 869841870 929600607 757536672 912203552 844348094 889150757 584665100 620529258 860372961 895537587 544508699 924424485 73238502 551411733 100722717 550570867 248651348 686714588 676195536 890062699 694967473 802604971 961279121 996343452 271102063 868382479 812945946 926970049 257466053 598449230 958267105 968707525 449877090 456506203 69037639 932832033 865593860 996946429 8032353 345389303 627240210 642056041 628759316 856601393 392622663 847985772 751204492 886787309 372424709 704953723 422904638 909193354 600381668 770833926 420807090 687368113 153523147 355885756 898882334 955628103 723082328 895296058 311807356 807087990 18337954 411677064 257858471 539284961 171333291 391114372 388914181 710010305 850098244 959445750 359111970 708932177 977573900 990857992 146785890 927640020 24918873 814857913 475404336 912710182 435661503 506647644 490602911 559061755 70851322 452516429 176758728 506275059 40458110 585658285 272761159 768253530 875517655 941595066 320352158 475165711 184584898 735272341 568104892 597095577 182307649 281044858 554654990 810044983 564449036 682963484 603615531 611756574 38484958 276142207 762316070 896719458 954053176 982173456 445084012 614228178 763877757 782424691 122190437 713365068 987859493 990336287 858821916 941400419 328279278 808205111 956536452 967024742 587693610 845883323 81144944 757339818 859361200 931802980 114462219 927958523 627554436 677775321 133076596 266260649 199347548 951831359 529470162 674200224 806249461 956545024 889378563 893113508 547365335 750755023 26994753 573354376 485146988 707423942 777357221 945250071 81172759 341889086 827210736 844995331 468888468 757671457 873368163 873581198 724113127 823106556 214683508 595469810 765048830 817605888 503661026 803722952 413871535 621650542 575364849 607344277 920394687 982334764 840149714 845960286 757694602 857214736 16629348 773110153 302812891 964202727 314448262 963713671 514773495 657400579 465876564 750110926 335210169 951140217 595663838 984588166 17310656 73151991 932427296 956304145 944955488 989754348 269240284 561919795 41741161 779101090 955273080 997385985 666568905 793500945 463839660 980945753 372293582 927437594 899126766 963550292 822510548 887312440 228542204 471457237 67978517 792478585 324285562 417881250 564886512 875378048 793621725 902765917 152205868 522139947 643714679 938854274 778674122 925264949 67927066 926315411 952033082 961311326 413599120 848013595 353662769 379752140 645240329 924691588 20286180 301322571 597894058 787178350 331583101 495264491 937499989 985776882 343742582 501374164 391449208 491035513 159420010 395563069 428033139 921005083 758773267 844801792 133665260 149266393 123537398 648473304 656521669 969019740 533756688 945784307 148846073 213510552 118186959 471439804 593013969 827123115 495245488 780251805 124106813 631122968 687715825 978385396 727458723 785071264 412483728 598213698 527083727 612115715 154108903 503413036 616127414 886631325 580351973 890908214 119503808 681129814 748908890 934272833 966243706 994189784 349619060 721179843 184560349 449005935 502214037 847239918 216713240 971510867 531310509 764494167 593583547 945125109 572404720 874625076 441128011 697729899 439327306 504021751 393773751 652470635 357219073 533956833 410810542 710507403 681722385 793765542 916266322 957024532 660130154 816709685 721450297 994215381 918714175 953716445 984756273 985980620 680293097 779585246 431691916 529195872 425890549 938712050 724856383 911402265 120900610 374902492 678904731 975656800 874091514 992198491 287480315 863056421 855025784 875893485 9485922 765341581 801622405 875829004 557716946 582312864 292866685 395120074 868049032 896901160 365630459 369146075 991906444 994332010 952287012 960024361 793982901 913937908 338719289 613519693 181497542 427563070 632808892 824645823 480265583 619411162 156431938 667122359 183540582 469249870 698272433 764469947 18043743 982534126 595675591 808085560 529083854 889206691 4115937 147590292 474880203 561494645 13811425 713245880 999463492 999794262 728143722 904927460 878003579 999197377 990305785 996791154 286110789 754908181 972509911 976017649 568422534 685756101 326854835 839060951 882826221 889394073 74806768 339489214 531317805 883238580 659852332 968399253 510606264 741250776 874474579 938858285 612786071 785266555 999783132 999977487 579637597 779785301 816506561 979111903 49536894 94145774 830640811 907318307 808095428 974313494 667866583 997903344 83134397 916577280 555517836 683785508 286006036 716890290 498403918 835775686 14227664 337383579 529129532 548495229 529494631 542684793 839073550 952439350 38049926 477357157 545880767 954240128 697427385 988006280 267815786 753615664 47989336 271342453 796844296 832003922 263414747 370383242 515554041 976681522 999808523 999944998 681205185 752195116 935591548 952156240 961425351 963981820 740587462 925270674 282532448 831821688 432669935 675408688 548204829 970954847 11697262 813621703 865428423 984728546 732965803 907302783 286313925 875344595 703454513 829046687 590307221 935782075 598421604 672089563 836568672 888592116 512499523 656361762 218463945 681524449 186552859 491116303 301032115 405665973 378318799 843679162 740234807 831081372 211561103 269256937 588351951 777405223 227609256 974055978 128031570 431905757 191584125 502915290 796187561 829214807 672985365 678292941 900792481 959872229 207231723 787999040 256209397 342631223 485168543 584332887 428425269 876339311 371804586 707806771 345016847 958449240 357917830 629418430 839566464 987241405 456284620 600188882 203748300 739468394 545141597 602605773 191350467 680260607 964833775 993831065 394891687 766895322 564733542 811818732 602549857 704910132 171388928 233227729 84805947 889851324 698983369 972302604 149283862 827846012 471544022 786846111 808539437 834534626 936289107 950915411 722021838 754943624 942497373 945718769 728835626 942403165 343033589 698930312 175570957 375847300 793766262 940866575 576599406 658662182 237064659 720620223 165973437 544577535 961608063 995894215 316069591 327000485 568908369 945618488 451063038 738438812 907843617 991519182 146980015 586601902 152474552 446001215 58411662 633475705 438380527 634186398 851725193 939721972 437167698 996933145 205069039 605101930 515280746 589102935 998347477 998851458 754158811 940095273 383361452 394533995 392299300 702757981 566892670 957226084 909789345 947293819 4666237 41809306 627565648 632011956 61016850 418325536 939776464 967435008 359009983 539200702 319534990 770547774 55132035 94626712 921269997 973188971 901182900 956667994 52468777 382658910 160183574 834873004 641869919 911171444 253200022 666003063 446958458 855217850 242682488 962941111 547906067 635281673 766174355 780694192 555777830 593706030 574442904 892948443 677469563 967488233 598046240 868749658 791541123 817816737 747303099 783120836 451095184 916104300 74894613 815178964 428280868 636801279 117171373 881554553 564311732 868621952 934276363 972238110 490934157 796593563 801264304 990520797 466972175 700628374 162019097 718954034 389849497 696275926 756653948 838063015 446825904 984834638 210751833 552034242 495091815 875696605 659404048 996255137 883476545 981748579 107281246 844918304 529323827 731058064 780358979 912901670 453379773 498063274 627763332 708354381 716176710 930586011 48009104 659006507 574353036 819523099 903751786 994863388 423550820 745447407 492985507 879508570 211712060 710793667 693036986 720646206 585501329 859267782 431272217 742852589 915880355 971463796 208387430 848526386 724453254 898501933 225877558 406425140 141133550 674337349 996840244 998509516 903582406 978905698 775621367 952864851 985952157 991786052 741088965 990991066 710347704 975510632 361040816 755933595 71623952 836377900 501277439 954768730 34831752 489046533 685308064 877526236 916515973 988065962 856377441 989932890 883725034 950747270 50819769 176739433 738510105 956318468 467571271 523995179 35791234 163916397 533381410 729833595 836862735 861195381 543645352 695787838 965593902 966538267 618907364 884562677 296171021 448709896 955861216 987277872 412462974 726019893 621152118 926340973 481191452 772025525 231226739 240577973 665990988 668583046 82805832 663563235 279989632 515053138 241455311 266220591 860714593 962021312 754288672 796405352 925642876 949538708 929069893 998746598 551941278 756297156 74345603 469142818 806165860 855080118 306870953 852388830 418323327 824058914 853464917 900318151 48003655 867392670 120511456 984913106 257033411 605217406 892359507 989480069 437403877 594981902 70081721 637023244 599214435 921084135 614098498 967884373 571104475 642528895 766336190 917144624 388003433 727430801 878804752 961772539 115785159 744185046 140743396 145503940 389812496 764029711 635715957 931092239 368895134 944697812 389987862 890661743 50487407 616142542 970752542 997468005 288834234 785247585 300213764 359809568 351452248 527938422 750896916 862103554 200816168 847775151 17550698 689195383 956266116 989233408 85129291 716815395 203633337 326669708 469078685 606791100 519652883 973539517 765164498 852374942 172048366 174148229 558097304 647674416 594124398 999094286 983269677 989854069 673466443 766762497 417122223 535667342 409915329 622962814 268721309 701735444 929808294 990903150 638348038 992593452 544680603 792167778 76224921 670996015 874610356 969051316 785115846 874785430 8885307 884457869 180957056 422011238 769391967 814125019 50996316 695743419 104361174 187251439 939084675 954328668 666690828 989540475 431000809 884075854 606673827 954135044 36835775 89302490 191001858 813197089 276002780 690180045 243458994 695493497 453097296 713406844 113203477 793022095 633532344 909826323 790122770 903810483 42857855 973021762 557910563 584839464 408083941 482441635 535706524 769872857 179606156 262994983 321093185 394121844 831721189 992710446 987350877 997839920 218875151 299138256 430888726 550521177 142473816 469147930 814826871 941959097 276621880 634547827 744009089 979034197 221752309 348304152 245135661 875244126 825561041 970075415 504842640 884959453 922181392 938124853 1183556 912466846 108353238 773409253 83728111 682003448 746719337 837094432 223927974 642780221 856948550 949223344 717265961 803328032 725188901 939611214 532725862 873290218 494621605 700842343 888497453 965975083 878996759 961291104 205009035 710075141 417477084 963011791 384672876 588387128 483219625 869032950 721861944 887365817 159643089 822892372 577626744 930577639 160776642 308713180 137888977 373324283 843444983 919253436 489986502 810494410 876115120 998607166 831255316 994858303 856573836 876764875 172496437 984722127 299285598 670481615 491464296 953158418 224480790 463532033 777969960 909942588 346244415 794365401 309431037 806840326 581886951 758036120 725954875 747922133 157297830 376269392 578454659 683558855 900982408 915181106 637494466 972080070 239655021 989097701 292769053 430930084 849638893 939820401 167294854 173740015 743899742 836588037 894280138 999954400 538663605 753222518 884554339 925535215 71786545 415933224 248313390 684879660 661622456 716560632 319055465 597426205 829383323 860377018 51954484 628133281 397574015 796407720 72824396 420215382 404388856 419971261 408733490 476376380 226269442 733015591 904725117 949270842 566221172 711577143 326217403 565351960 747419498 939721708 107941291 610615076 860627190 861128654 907447719 988842246 877463499 934756134 818575036 863889911 912644745 972846828 128159007 622731339 897253405 986820191 322150432 687532931 75692938 597004066 529063842 719346543 290661514 387300497 243346215 424638824 572394562 728944418 142328179 215279908 420485082 887986725 857240295 859591054 799825769 850780853 432877837 705605455 729750220 911481291 478357709 600297478 468619663 753622266 725525857 793063172 553624216 619666176 565841163 908791748 128016652 566477913 560032070 893402160 679558956 833435100 133211711 503251858 852044466 855959900 180554210 520874920 691363618 951250591 202741363 773026153 847015424 992042090 281762962 475428662 658582025 815260584 171636300 441280917 32677711 459147920 541635147 549428923 326963972 986674287 913151247 936061827 267200288 683459740 506001709 555437897 917920986 980655552 899266463 946671009 232257119 903430272 207100963 797473800 738774096 788359595 784018211 901127671 637521500 840799043 321893350 788956490 445267831 556458539 349420254 955387039 800513628 960763702 57175188 147799544 717022373 993639544 134531528 216844170 995637296 997201365 28191132 409491314 938306055 990128626 227713481 284569138 351722390 754664808 690667649 711935380 954315845 955046525 265304773 802438568 496619850 541048073 807919332 866053777 922335735 945954537 210496380 908468284 811392625 909245158 189789198 920094859 138637455 715811537 132607220 733293350 585649083 696494027 411320256 433602115 467370498 927630021 579856647 712417440 189990690 596768836 802312053 914026563 691194356 748717366 144794733 809749228 286371942 598049926 692528306 792878911 361137117 598952344 482969163 841103109 415674469 685551014 429664425 825307663 28504796 642914274 228162304 390468404 354131270 747181796 579390526 722227459 807391986 982417428 445516748 478258052 512156533 925193825 501954241 922672263 301150312 754165871 129915104 542348427 751235730 952174437 343469322 509763645 566544958 882774233 189431596 703197853 269098519 823015309 790546542 891364178 271646967 399156929 391920985 585947614 347984110 852157057 377133436 441993738 838513091 995490122 544681304 982643105 120584167 726325548 337591372 744683021 38932528 788917902 549624870 753374774 987291164 998653739 998744189 999103303 690626584 819887519 898442452 995754799 361614329 455886581 59253203 729696038 238999637 876201621 161285409 638129325 332841708 989106959 377481629 993552995 251246508 281964289 498458097 555788290 74882696 724918870 221201821 231595323 88551412 110866164 814869054 860260199 868448407 955412247 855419663 963276542 264237242 888090650 447740364 678480874 86107413 423625018 308166877 876088027 848151909 962604300 237265019 918234275 498638872 601508600 367580597 700866583 921385787 921923680 37709116 999611860 519813437 890655849 834461272 836059772 697768191 789416872 893465530 896029682 888952069 980185571 435244366 822997142 537032273 768201570 815522446 939920416 269932567 547241890 620930750 747027128 978620454 992622966 2484898 626163991 721151782 726925720 556366917 889412398 323606804 973742160 84882743 459238961 677050690 710388033 409646688 572383797 363260996 447252001 729667576 872352364 391343210 682223877 812303975 850342352 681621832 768626019 831263191 948452354 55290299 724558838 206066790 574845492 996261048 997696619 877323049 888054394 146234152 978232723 847815580 969988272 987467426 997307754 164011480 757295598 744474961 783559680 308429947 493792280 314763747 709212008 638487805 952062808 428006481 962707210 943112749 967265679 547703475 800511723 580714438 762676986 953491262 982738667 538426906 706681352 228473401 786299134 610994951 690999641 262160765 936955352 719775411 742494284 541920612 998151925 93495681 783752673 591266574 703829986 189266505 278551306 830150126 920446838 935001945 986280182 169584312 227937745 177218988 290518007 55139513 484478021 97140845 714558201 774537051 980075743 602925715 610849315 251410001 327132231 819876790 984604151 475197907 843592277 871806880 937682902 262161755 270092725 510941052 554539601 305919725 877632543 598023439 758825605 376746664 885789829 335509057 908248898 158354365 891518909 39294279 520386927 45862577 471436676 69346796 668756957 618496480 620012137 576058582 600740731 600303641 618615441 147670655 695774338 541481254 960437347 323917418 720806535 957492836 992710183 641561684 877321423 578276956 748794396 869597834 937001827 814645760 878682615 571434604 873740142 161300323 374848348 429716140 939902874 341916943 400019074 15425276 161361135 596019733 606470562 867537785 946344983 998059197 999390758 399740721 747536526 16613403 839019941 667214469 928910621 302391873 620315321 94105672 357164471 532284889 835612580 14435579 596074518 558796635 792730365 357797936 724489097 939808902 998909278 815567057 921605479 295379472 794828238 71237183 737779614 486971724 544468170 497187455 754905940 35698419 385351020 223462788 396054201 952562887 973785225 20826119 418711658 228163700 242695000 961514130 983665594 263369151 794003872 729387767 792501988 24586493 72163448 320349315 829223638 915630531 963766139 878522037 911877046 698200466 918181391 60174168 648433138 921483672 985929149 517876569 628266276 723940895 754711664 608655209 918277233 797277880 886447648 586326129 670290246 825932350 918635841 417150529 621854674 361289576 966228765 954734758 970950202 47978488 600665094 261655152 416025378 847643278 852932717 524839678 938978562 857233673 909309050 754289758 880855427 920309789 960229567 7008437 493170749 192193 980192378 220368106 534651556 937790311 987714289 222869580 634107791 51349113 470244925 143328073 572018694 652168892 973873139 623572663 672641981 279096188 439860835 203510943 540739706 109394402 329263304 46273994 239108785 855314915 872947805 618259976 807042724 816410593 824307992 970197582 991295635 475731008 824801921 129719006 471098767 734670051 913581535 262925671 678916391 754115239 798097406 737752083 750065112 266644828 306851024 655356531 937207196 192312525 424556222 478424513 603217110 293354747 449480154 652342250 917459205 872811354 916603560 701942303 812908735 367025974 727633198 616565574 881274197 645823497 935469125 869901087 882240184 47100760 738534479 607870646 955906733 293730472 697568896 558058248 664923594 254111386 270216047 375571141 882797109 743732206 806955061 875721546 972708281 173993480 202516444 15835858 655632077 453070249 473094261 793905363 881268934 915105699 942395816 803030032 905735636 950228349 981201437 467695417 875080719 131199213 473695449 748994625 817741205 894422434 966400492 215512244 290049644 979699969 982603403 3795701 497247529 434350463 516449169 868750088 958920510 843716493 961118708 603190282 716532996 677050908 874336687 872826831 911612609 112726133 310560507 970947096 999758619 85844013 485486002 916212931 920620966 227328150 922891621 932832857 959705189 340453372 760249724 914988745 935062658 655612093 906111404 344682285 887006337 569062239 844418289 750754128 955915291 957993902 992066325 633426471 750772135 397006578 800863961 747145171 951761067 47025318 694002247 937508161 968908295 132185561 827084118 356084256 843981804 382996665 605096519 183838817 484002934 660167389 662536590 168544989 276665468 739323277 759319070 571443268 879855684 378551946 677933357 826764286 899793780 233900489 575612358 384212385 732023106 969841261 993184928 446878759 630437439 655490242 937359237 215514330 776923046 127202340 323907166 572254673 609004638 436229104 458668438 53731931 105662603 306202410 615812270 79312638 361443929 189757726 656190975 331987412 785649125 449717681 619390505 678796118 719511132 616063174 981024367 587816954 725543594 944910193 979597646 395724613 563331833 474810350 724704161 33835602 854124376 336433019 699462820 52381120 442961358 430038952 711342853 419082255 900997332 769550059 782767018 632420834 985217661 525759678 595940546 401085327 892202636 531894002 899577091 763827759 842035795 131686504 426198299 566845381 589321743 902702612 954568074 745675744 973783328 743745851 745882528 282628503 314192524 467052384 592766926 689163723 921833379 671987154 938532439 607178256 950982533 731206778 738761479 923124398 925319750 35458247 882457498 605998651 761168405 677799208 816187985 840703981 887570370 798436559 891511332 81237430 446082249 680196797 702283620 772022957 978717967 798340719 939165476 851946200 878381437 689608502 978277685 949959924 967834960 134759068 361490725 999962042 999987949 414652277 905923756 707737483 940684698 765987164 886185539 937581162 945813267 982952853 986228090 814380804 843760278 58629580 687475664 641674624 700104114 501248716 612835982 606319251 822657671 536580156 854116072 160403968 931400114 961810872 996949528 619809689 720603102 321334164 994033695 14002331 175588125 506010368 888996384 825698225 877155900 105345336 437809332 336473600 885602456 156657077 830928003 290809378 652908163 174524518 178894704 948925320 999038490 840806509 962346806 203248863 585879014 73685612 110411419 755096643 867291026 988939649 993245135 183527919 919866106 175300710 206072240 47536711 405689953 195725329 443914627 388482751 674294726 15215837 325033900 380263131 410404190 778315080 945555391 230743830 500252699 375977517 428365219 563834551 640923834 391836106 736981427 737100348 741729358 661113295 894415566 833630392 902339017 38043491 86587343 620997153 939852210 605114422 650567924 660803889 694169777 658538665 702358193 652327771 802663968 556440279 918154427 198170796 607533983 398163644 577140924 991531031 992689456 778012564 909330122 965717134 990149530 418561360 690488452 128342375 757756229 939098475 999286044 80357806 578378487 396266590 971710700 178223321 834983232 802018913 820005459 836836301 936787819 577766623 832697646 589618581 881167165 446368366 725522670 231882488 935740486 453500212 734560727 409872679 443387692 940584082 959594592 62443968 290690017 995307648 998474646 189662445 679280625 475814375 620942454 566032430 746084562 913396236 944072128 197766781 599716164 71594134 706036813 131413569 629007517 921184010 986959101 845594492 922569861 414670150 473488839 427277392 979306155 431502925 662154173 672978679 681133398 325106975 539724030 183077364 431251036 932010365 987273902 577339238 954303485 677462575 703322006 631896967 921614991 714105600 888180390 515116408 760250770 648978857 932021676 982469907 983716999 321568599 965947889 124391809 222824526 294835054 945922770 780066592 999488900 535483722 591255225 911909785 930845082 267612395 567356766 206749307 822672165 872767521 981026996 34226152 907536350 566826316 870007916 677659212 918814561 339539938 434888212 318418957 979416436 806256470 820602767 736670331 764790186 21070208 291906442 9289089 31952640 152013329 571496531 965052689 972182477 934561887 982010936 292105436 498232213 154539584 410458790 288337536 792135025 784065354 989149371 208975349 703981005 641374592 947103072 45763947 917901252 8723401 750163590 209713310 811132778 849396004 877307610 84056755 793459714 831566349 856551718 87989464 672941212 989433260 993450867 576054311 926410497 678168248 805512653 908578783 911008333 545918449 801620572 48707330 277877314 955335577 972721417 338522788 479820797 912986057 922373685 931885921 983052995 145847798 366942970 68727904 731282035 441902656 704043164 396116637 769294234 295774721 326858479 169037044 438565908 118058393 834858660 763570948 930204490 579941885 805472105 625578732 953534560 302793854 577716573 687867339 989616036 148221913 772138428 357192962 799825750 761017223 789995800 298267113 311901913 723615373 893213607 778006773 780977278 484633004 492645962 580480423 693057545 742032406 781987590 612630316 748491087 596824984 932375168 996407986 998249616 461807436 714310346 413802033 766783016 405357568 879932353 164873750 762657040 564270819 841390838 802996097 992037187 543517916 672076654 473008284 561645347 948649580 950238525 25230814 403337936 543822790 556134380 502689317 612430993 214932327 347722619 309942278 538065654 232297334 300192301 720456113 813684077 404587638 556455087 175973252 415071795 189485863 800629700 979149856 979630400 855098452 982969427 340064039 425540086 733028735 944958538 535368308 993193074 228943299 623977600 624967366 962268221 314163510 982190874 457787970 652105767 996394202 999561784 932988414 936966231 258247792 971332650 596214318 942520940 51146210 611139745 200985702 494962824 848278995 977359672 390827550 911984511 661509475 694966187 325763259 453883724 359724125 389564499 640828301 708907972 857120966 990863300 726684758 786002865 916336601 917563952 445162565 826521752 32346003 792128134 882104274 912584199 58617194 363980921 772458529 994267182 710649453 861582858 744128229 868642615 334092659 795541161 740187402 911327579 520726082 624528556 94724695 407239266 22338105 640391365 379749292 686386320 822818469 888542510 819385064 940999810 270565202 925698050 768382916 909910607 430072199 715310682 995663312 997236945 987525402 996057134 570438543 882604457 134713386 157995862 216775434 916658343 888811966 960099823 384460968 422331257 809815751 811198029 736519051 800033210 702390856 755831699 494732632 566549710 425812102 925158216 996476140 998002377 122480480 284785302 431904731 643305526 572938103 927442248 53409252 662752661 915907923 983254660 55332415 379227362 319843422 521059917 339622544 910116136 414460538 823069041 306689463 316628542 778005835 862453446 344270927 723324421 415427723 557951127 737124079 988356936 392863133 871592865 812330295 921434698 991550063 996799376 360289777 463344378 43635780 465298743 811072874 992678022 235296549 983172987 125592252 265985212 933219265 991777760 994758636 998015271 603172002 777238262 494550489 509440534 23252150 90752344 442112104 876041922 107827837 509461245 40154921 186795549 648291815 872902982 209122209 872551712 884598257 953206393 457380067 653511845 132333058 752922833 894074618 927015967 880735777 980934122 593808367 691117265 820471526 977175505 917386474 955020782 380907073 959632169 372540743 855367713 301951326 351974118 954580926 993158836 68988257 429560243 317750041 394035183 915482474 961745454 501529936 781126850 876850583 887182780 539070598 667337647 262279675 659812467 642229880 821059278 58636883 786744799 137717918 154865170 551674983 704097197 679678942 830484733 380925808 522055513 619668908 905798450 9399930 553891114 662097867 713774691 466407888 818489336 906747256 914082026 833780987 871127864 942346025 988979505 227681470 625584887 428476037 983441790 408516184 981546523 446698756 943479164 284585256 776520556 436500803 975295686 786941343 864761344 129532602 182424416 344111644 469742682 708849957 852997654 892121919 931108671 361904856 862649022 417880453 788297469 520923151 576701400 486354239 757405217 650374419 683506281 900652854 929379789 630047423 946510395 718327948 728228673 82674440 909132251 945324965 994120325 947596448 988560852 177176227 340029028 13204881 978380857 818273019 922746418 132462261 716921937 887671030 959837967 675165574 734564143 179158209 795349679 115933309 440858128 418309843 696369962 593332622 861036788 222641178 666353337 913746336 950149490 402438504 463997480 427460532 615787898 311303104 481073122 503812111 788671036 645270289 869378311 646914151 791047459 490356404 745697976 977500969 999144484 698101002 834521383 230891579 882998124 459483440 478592542 325532313 987618328 570624773 881743337 399026260 860426717 385436291 551487796 775763473 979873430 902927706 945988810 532738802 964593741 573515840 915427143 604940318 966027156 536803401 712250980 145129518 958758501 114295895 914928311 309123795 612838710 455699389 931172040 487808928 532776697 995785840 996203145 561978468 571351237 499640183 586518365 17050774 157088210 886391021 972107494 154509464 373802356 759378982 917335969 755829403 766356602 119394344 881659427 765729207 990946137 670768662 948703550 523281612 982643705 246954133 912746391 510994076 703305643 962517048 967960153 940437793 987310042 102271369 547816208 411479865 619742746 49767429 718612460 755354799 946802597 668191334 736327346 443491874 598372912 396484618 881230912 604947058 875220104 4068362 364142362 321026490 391294619 6675462 850305696 172791587 939759424 160826482 935436269 114810298 527428134 382764871 591628789 472080516 897629004 517197139 944084518 116880721 727843133 442994271 851271430 327857866 873671971 609238802 759522976 15403874 724780041 451924401 554685210 52016735 264834151 968091645 989380560 279663387 347905448 952772528 976455578 39122371 150245873 731033401 862309621 276213841 980354817 618199802 947527604 743410958 786608092 166667931 574256376 970894021 972731331 712240337 844021631 534297509 995254309 310204417 454432706 948095709 952413720 795918191 904695825 200347750 499573533 883762351 987400678 630531847 914172132 870581009 896489451 768700242 921422313 814473934 944490279 23476480 526802296 250788200 434534592 597387231 754179938 988121761 988478963 654145315 660942853 746781204 843747527 991053961 994635354 424492060 679210061 550985440 809724972 850303569 859637996 110608340 475580685 654576743 660839212 552909382 835595035 291138651 571270718 91953306 890459500 539677139 547766926 286529470 865652337 485780841 965684483 803339190 996144638 910308663 973632997 71957245 542132255 352631046 634785212 147074886 548515950 439361466 907760102 617851501 873625352 352583863 672134050 314690161 788400207 382814562 524103567 292738839 736708488 443721470 964057175 480247178 780294144 466106598 700158236 403397549 808714801 395849764 438567846 929220608 982344569 644661643 802461478 92760577 478723812 151658033 506570433 159425273 870808046 619208151 625279836 90722553 614981661 189388083 615995640 481821051 929439357 836807748 925830166 819500323 850855062 521909944 767648786 646693545 696361408 604650313 852974690 342314727 504025384 164612566 897830274 695799429 971343022 412630063 736737551 72852513 938150661 772030982 933337753 316379025 814485624 129674980 852556221 593789173 701242425 156956568 650474051 41728074 274058608 567121316 586788282 15019516 560778197 967780021 984494873 924248839 947331012 966400639 991792424 148390455 920213961 81474239 618767531 438721816 802134197 621700853 928604108 185503877 856443737 766394789 898968222 53841384 429460101 100297830 179741341 185695132 894476220 362942477 612341400 672973459 820852748 709571226 999212869 784301300 847811849 327513204 858605125 713718105 798782810 424195121 621651428 401075799 694325831 697245665 951335550 784566035 927779640 714576041 875407220 261276893 759198404 752358897 763077479 164460333 464883317 959905882 967034388 815466592 921135878 213414538 928641153 152117613 994661131 312674864 805584836 830504914 926634437 813334641 911078257 475477344 578288926 120052412 638789033 54401208 779011806 884820852 965311351 95428621 689872292 647921819 728041895 613798327 915672409 474260019 927033047 31903503 478337227 334094531 914072606 441645026 683627429 665393156 915854118 508488212 958519927 591511796 779906210 824086746 943377666 242332881 246802221 868576561 989079841 905361847 930194095 893984741 961842169 212973868 961532053 166310826 188253259 313694368 672129185 636367263 663433648 72463312 724925801 834766717 849755961 8344471 794493232 791652189 886291346 587033901 884642913 447330728 783023774 568589786 781063047 611687096 674343699 586472516 863060236 984909144 989244634 736761443 823946209 151679241 740564648 273237058 957290080 953066105 998093085 881279360 950148527 979463126 992438870 688070758 801709884 31272936 333474296 340436225 393621039 481577785 801468890 246676625 528424717 502212239 865908734 359480423 558265880 859450839 876833686 583324825 927263965 404151143 618044101 467502584 578670763 899987442 999922869 905929823 937936389 787409687 949037796 330395084 792026928 81744949 563145953 484812046 940127740 314240948 892492291 763036809 997223085 483449354 867952108 573734418 877489287 989279486 999494367 358475378 377916617 775366232 970681842 148461025 195217385 850630747 919598627 532115658 933430877 239074604 471571209 551506859 626595787 665493187 857335141 326956319 720736104 704700833 887886830 187956202 252652947 477328277 750636381 330853980 502056147 70620368 334094777 858860768 966851946 957096410 979341318 312776219 524403068 910123762 959112429 826505365 965220566 294966466 588933502 914436036 940388199 470345979 680377811 775626470 894367840 485094970 986280336 715759184 801209093 264100951 318685748 878349477 995397560 868428386 989145110 975001501 975438164 381124243 511865877 606289170 680540473 92134286 528246232 9518692 662262999 308804823 482486395 462122402 869624461 577352562 630226501 66023690 982374018 485240551 543646047 458242058 656722462 119246505 398356278 464624730 995173443 198934959 282646416 549386701 999761658 302845441 608163422 630054291 914040397 462741388 573368723 233488493 344267645 347908252 671223856 795187979 916478699 21059793 250200252 816060690 887429037 902818153 971168275 116119335 706423998 943848827 989307759 93946137 139751739 359992408 862311777 774114003 842911163 832257477 921268123 68874114 475106004 587163298 740428472 823081718 830552651 889591213 908522363 20430646 763156847 217150301 632462951 638620825 770559826 783465268 819288689 83700212 490843560 885764854 947997998 570097054 587565546 532168564 750451930 541131236 651345233 876487222 965498913 734175869 985396560 86108831 349225738 601884276 602288796 776808025 865844368 909699189 967838235 819542417 985343387 374708752 921516497 453033714 532672813 667359475 930284642 575064419 655792845 502256808 720222536 44416910 994218135 402588704 728355414 654017106 991315960 613914391 614052478 985624531 993448598 942015107 988915531 549241386 887133433 102554098 152789371 468164146 834509943 637153410 857754566 722533046 898050019 395795482 990077667 614969858 905306564 777912533 827548888 869004506 906528673 937825064 993930085 220180790 450842421 16443319 290884161 332268366 552203640 673035513 864698557 829605158 993102743 50720620 508354945 811827608 951165821 478314724 819243285 416331809 712774490 266052875 704872504 119265963 705770838 485761240 572125047 652350332 911809778 625207 498708363 98076010 435043655 137962211 904327000 75393617 993395800 295809960 791131919 311306187 412216985 352224966 562852648 658591306 740242352 656725357 903822977 156510839 408585982 141237812 321975741 429291763 641498614 671021086 984504768 813372125 940549859 540129947 545581890 738257885 971509912 586457555 758003186 247053470 624765953 89907023 407463561 756478043 988429194 755125239 823170881 546072796 670508576 23510990 873939231 338221914 828481767 830178996 848788187 727870343 910734940 905739620 963639602 628109144 937107187 940820438 976911653 596807787 719697686 609125902 892919872 119660885 893562545 398894184 725401697 600153898 886536730 850380979 923665290 754049789 887181084 556938500 970870649 714686955 847383955 831419230 919245624 650632181 874398614 680855965 775972646 778097734 825688644 40818674 952717520 869012372 931915915 305759711 316178733 953538797 957668358 560021375 612278079 201291692 996456762 319819668 538744516 782424144 820194176 940228971 978308487 785216156 930258349 969935394 981283195 821667442 962478940 120753902 495762007 75463078 467745862 336726056 617017742 526958510 612989156 874893788 896929983 993796774 994562935 858429962 957083541 338187397 386297325 551871315 718224416 820704224 840692639 955151518 999143655 983473385 990143696 728735013 915575981 615033354 667049073 801392103 902602025 730809245 800295158 32984623 369381187 156943825 464013408 245582627 893560651 699997812 874591023 838927721 897246175 610363934 814755380 438251167 473074687 836448004 863853321 10959401 31189141 844621463 973176091 353166489 768068906 882348187 954673708 38139290 321378429 96638252 335597792 184168378 584369418 848654417 899461766 353037148 409627087 187295423 211562808 472873256 624321452 612747986 782898411 787745270 958553197 795245100 865696598 3082185 841618982 326530030 840615529 780061540 813893825 485198274 598445190 800195555 887909764 915867925 968098929 311510509 392338136 516191468 522201646 176587390 626463207 719400180 758141964 409736390 808243710 182502217 860091259 733922319 873468204 292594879 688948424 760403130 925047671 772911747 801511470 696355051 837534269 56305189 537879864 952394307 976137628 915798130 973161536 396514412 697814689 110515174 174023414 63075886 987900649 149616403 351388683 65630843 477231489 116476370 550698983 645476129 752553910 808346876 966169843 799768580 872319513 96144251 500004216 297119835 606753831 309252742 941400740 245159597 559936210 839929920 990373838 984063147 994364144 769993854 989450378 8648748 400865617 330121655 436725053 266557293 896285772 365439315 726237583 865252795 884916093 18646404 579556813 10638147 861496899 912915406 942673415 310398421 843358734 508906107 874264950 594692953 726505642 376014140 991453860 630946150 828068649 492268242 831018777 634268428 858605692 931961388 961433157 61279181 442233522 647737226 712860357 400406218 876549446 53013103 270022809 887765132 893055201 72009094 567972929 320826550 713829169 408676104 418495298 464625170 598855420 634939225 995092042 719910819 724390552 31251609 606396335 729281615 919585809 539535474 579892617 723079885 805222757 103569121 497290368 323225609 981670748 618128050 732853019 866257882 941094236 676798054 785580670 405111493 614105261 389788469 429911279 777464600 907826353 672477235 780398534 827406768 926028313 863252650 872879228 34441691 769550585 630610188 966172555 673554919 863031631 859219245 939390407 263007618 506027146 159538195 623320494 112048461 763903770 968781832 978171933 307262629 569122224 190538110 721895305 894683524 966613586 829202316 855003233 895029931 925161956 823279908 933464390 908389310 956835236 937495331 965734983 605285976 844065250 518023203 546912303 312584197 574321431 165013575 872929313 980051613 986367248 339984252 984850836 979722860 995931487 92451506 567828742 61873975 327970427 237612131 411939783 676738979 833248278 107143008 615797681 343130529 431982916 873777170 910840871 825855175 914337241 232820702 394740887 756174446 969387738 35390189 407594065 456490402 598612303 32028873 632301495 865981023 888786136 969570384 990080463 300651143 355012290 216161035 710217747 320429366 751965064 172953282 322779537 963999937 972025082 547019298 702339170 618297127 972543875 266074950 325405245 166905363 340581894 148577944 455008945 655968879 665236984 205902154 621842145 675712630 727943623 937596357 972598192 27617942 254210432 72070152 75578231 60820381 892371613 937569289 985130506 572565571 985863966 908417671 973871190 641271040 668017522 57173532 999554734 944168923 954673527 808215134 966130917 519783269 537488827 946077660 987573760 648891407 972149683 98802388 946109311 711323146 870134625 767042931 983899224 552529565 805087904 989893952 999697939 784530969 825939335 894947914 985827244 736913642 776386556 504904420 556170523 335874571 369711670 305269364 949418883 718298227 940781338 215219422 492325457 793993693 794926475 422858710 491590032 828821170 941665467 53874846 221699372 185591153 218334463 948856707 994236143 128981362 626270172 404443157 726692877 296709639 726069071 365063592 669549110 291711114 339273168 615280550 834066522 590559234 622791170 290678392 309155906 898278527 979260306 384714594 420192083 822122019 835403009 856763845 896730814 809981404 858531077 643121270 895747568 957118538 993268545 501318830 676830771 299036013 921315978 168510241 357574519 281492465 684542731 546913444 830407229 546083554 916421247 522992017 716584868 371946831 997001654 468373934 923910552 66942737 138331321 992145319 995663398 332408145 606508466 144857450 249494008 589939757 693346091 912905719 990553625 486621163 495897290 801822700 917142568 102251159 824738280 546950156 682924761 578931241 703910289 898224186 987255233 161393320 820972883 372415866 506482761 849141252 950928194 871994495 900320827 322654306 794185169 487297907 783650183 330799094 732539376 737999765 970871621 481020916 862161497 464324773 558560199 90840998 243300059 804050995 973036838 384160988 985825227 654597373 767976603 676552316 927200429 450107997 577756635 941513132 988378842 425083470 569726801 382955358 924526972 67994087 225229675 208754292 601031242 671119579 978021275 988262481 996798401 227266071 884304850 151022231 959126889 10849645 331782940 966600739 967711704 446309172 642593559 412993443 600437866 532134565 776267888 618799346 727283065 91789599 280726282 755665054 951002431 487333258 713795125 427581264 794360225 720789330 992937663 158706876 503191635 543737313 780736334 145276315 757226811 975856554 995563767 782575022 794154473 356688232 539303033 800388184 950797009 418498693 462643561 199018015 967188322 616847795 926722184 179806178 859541906 307115518 848027242 757837499 882315255 845925255 865214748 298401017 330983107 524551737 867798034 437759661 535326540 857539314 960561127 64804500 818946919 301640553 820772422 661204207 946039383 240629810 572670477 246673009 906955183 116479009 921827511 164025855 905539189 367031803 832665101 214216340 273935522 894318317 899575676 758601455 917289560 850211497 988166325 777546766 800016186 456377703 710527672 688889076 692652962 860260929 872580470 884261399 893729906 938077694 942711831 398403973 653950525 217627581 471730161 93289206 927258175 340985363 450055825 174095762 257578056 601798480 837514879 404243908 691871493 491809730 657848266 541358964 631191294 646363039 712630499 419557088 804937442 261711235 409524904 186968902 486277398 39660308 788295905 810832226 935604463 54034827 775404318 968193069 986008955 304134498 643211223 747426364 953427750 920638420 988176581 530209527 967172580 430749186 724901666 969538343 992359453 305737513 331726706 743914056 784599936 515829607 637577457 888467798 920539239 575742311 727794997 3659221 376114166 710536217 997575773 768685435 845944565 286850403 467593943 333126145 575437043 843676679 938071598 945911982 984235269 598708288 737196794 441382166 641169193 996621417 999267449 449245562 615518021 320748832 524995832 784296019 972191563 766938046 901225747 765955558 953123583 904456432 931084730 527176214 712827407 382248113 930454513 897641373 936475403 400602517 884243308 349110471 765043865 354484582 505396884 770703358 773733227 109419774 645473970 232500810 648624145 292822342 953095980 621507662 743236599 115170633 181009541 272908609 394946028 925620776 941012376 809608188 928216880 666345132 751893421 192854883 248585336 396619340 628291204 157560875 192244092 452049140 579664237 304391485 681240799 699825814 826770262 967608018 996142698 537282470 781184874 173774485 812690954 680486681 768527193 845599975 966126006 744431711 873303150 469935595 964890452 222341485 492942837 617530811 633939721 191723548 533250380 715095497 831533196 933719406 944751217 707782373 824159540 643407670 702521280 568848296 628969721 792567365 898350980 313997885 621049242 318846855 474326518 801646742 821755454 415960622 551708558 332664601 550686425 631346578 800142552 297311102 617847317 43359645 440207013 686447851 822797370 974526736 998112788 417231620 466577909 443340172 799426261 566293594 901490365 68033541 962408343 850124241 922823634 253383422 817868390 598576081 882949111 620110449 625858426 365750182 498038615 77129113 597032354 956484427 985909365 192826601 352730908 481198467 858476629 947054497 997542528 6510052 166798575 341523252 656979962 503772308 667548837 598287353 620310013 728766495 767043704 426230910 790831400 531943150 821824940 280101386 562377773 3899397 346412795 864175482 892850104 820412501 864992101 595806591 814791915 683386558 930811795 600506911 707001962 361367051 549800897 938342873 939845922 332881977 746755681 733132094 816386635 203299707 643949411 958355854 980299011 305132784 998023780 48613140 662573197 508127425 621509280 618322238 991300108 556660269 637104560 620740919 663102556 408970429 815187557 489245721 832753836 792225820 915745059 937880900 968909154 452815877 470093951 875122047 885717323 623042750 796750943 333210721 458484791 604776320 960517006 954287188 977683500 304558912 967155512 718112392 820502845 821858351 856758480 903790038 941129380 688671124 725004960 941646366 992819335 252294373 709978196 229289569 375475517 968232492 990608429 686796974 930055460 650807575 712070911 437858848 852274863 30305523 200194704 590531539 833606625 378360931 975288994 446214805 577851923 884687055 924784667 980817808 996773568 138997721 916267358 329210525 590159063 887963076 937158316 775861282 787684594 783109212 939324616 578321532 757064652 835821292 915296531 236424181 288301299 468039084 779408684 849775054 929157077 663074771 745921701 207174685 492267927 912753394 952010016 629714667 798147101 633504952 938326261 140236319 270993091 454961834 907675886 302250173 341437233 979327040 989608530 413841178 563985962 903552336 943978861 90788124 810325727 661404794 869887840 119828059 245741586 304955769 471908160 956036409 981852813 18679090 992719828 510307852 920775219 960928833 974531583 281487616 382876791 721629145 836779199 349786886 577477169 806467486 977526569 193527933 746620870 179400141 587691093 773204045 978678390 320291433 996529892 387942070 837629045 632252675 638292893 223637939 626431724 782511476 926997192 514420053 738213377 423521794 768346828 481779990 729039326 780644104 935101369 158914287 866001028 746466020 927612387 919475429 925077140 291660350 739850635 824541320 956392279 873671068 915556768 868870079 978460146 2348020 808444302 992976012 998099146 450195569 565786205 384487484 484840914 178258402 857968509 618373128 678755589 693115398 852976833 680874963 866153238 515723917 556927693 415634971 914704849 244830966 875460642 580346257 603925048 805636763 988263329 69974683 757924990 633025069 882837654 593048883 767888485 238581956 449272418 262513036 403823011 758505808 801433202 508931183 689400069 710229606 821664980 921767498 941209250 347441183 810012610 17643581 26356815 837614435 851728235 562298524 714591009 515883372 584609032 55916938 396940421 157178818 495153440 993856252 999305185 314888329 705387290 528852699 718293552 920711903 922662625 581681646 925578831 663706567 691471017 339472258 609231580 613099384 682799245 204661951 654306694 440420933 823367375 377728023 765174803 698306655 916708094 253723496 842342482 31709224 134029118 149785973 285164286 7689206 285845747 609201063 971531451 284298858 864544801 441267036 779432385 442537009 568902372 913534100 983492534 604547118 738838421 103842447 626068344 771444404 895272593 88062786 704570355 251853864 602654978 683196678 793763452 837124580 850771094 541861598 715614471 346803388 445261284 98886717 655583700 577695810 581460460 353712596 562434307 244478238 300255915 738202234 793757169 158784737 815007949 672134508 772236629 653830280 891288634 630776019 760769879 880099737 891617912 288997102 592544940 995517178 999701451 864930795 936165365 283465339 357214718 588162911 850808127 603186667 832895876 53013073 193153596 331896519 517208808 181798472 353048341 239970930 517152364 894406854 945624798 293901683 593360541 289988685 843405624 33284188 569953491 59029253 469277273 561830804 712564407 758429851 915115236 772299418 892159758 515405908 534102005 262840969 951491499 831004770 876003474 287716493 932348739 193358019 290051898 361460940 687856209 791205168 932148828 664796240 890289506 695913465 741877958 864228212 913578042 992007954 998264669 9232287 733376216 218588167 491177836 590494410 894532770 26168315 472585249 701626791 814785915 926152858 980641937 944375481 951433553 123437581 583540254 244565777 820785400 564373660 593441305 958146404 992790727 91129962 557131355 291873074 774763657 12498886 124107588 877374850 993613157 255260719 487240846 671497162 935675973 451184114 812237877 860891500 967057041 45987857 703375442 129582149 975354947 263582661 314172831 75864736 753679596 727763818 797091603 249165145 666760187 178793111 207706549 66735176 308061683 143898310 589208333 897625410 960417034 472719045 963719733 343085866 855702602 583440985 879840441 314263141 627713762 648587980 797918767 13578912 407777791 262991441 761750202 378618769 863658982 737389757 769365077 622450867 764392700 725940326 750070506 316267581 984017129 376477498 416378456 378317539 934822743 850368011 930843308 137911042 214782846 280670394 755868186 862262789 969818513 811643808 940783538 893664325 963037206 805923023 837626031 807091442 915837975 298127316 775377473 245081186 853811772 962784560 967667177 359866072 520093914 393850019 650264328 665482719 997559953 181056151 600353090 874874515 918947662 722334338 738085304 77103015 573072224 166088016 327234062 221096598 623999106 952135255 952562174 182395929 864494239 954919396 973186739 162767572 534726825 727620558 956038604 370869722 701532360 767650341 908266659 241286740 658346655 842037594 937598557 101013239 110386563 571138757 957529642 202509794 967251508 648554838 874288879 542949959 816552460 232217879 537416179 588581873 921570780 247257605 584118703 477214990 861120560 917736922 984336600 870013378 953156085 634227281 761539643 27749482 469827711 768368963 773859626 788026730 807743843 493453120 910241046 367123039 625415708 385173160 640650436 37099203 890030666 78600226 197149372 551817004 742258302 282198863 879238217 90924310 994922541 477529527 777967936 218095302 885693357 970919152 995730071 801297320 830658711 326466772 999093157 632190085 683158443 625645030 705036235 539937686 827857177 890127619 970007864 361407864 918501868 298652906 872155047 976697725 988471541 575953440 701544511 391096393 918331336 411742484 486761718 348535635 512337334 508295207 761250048 911802033 929288334 377290050 662542064 11388420 565907225 22200759 655214696 757899278 991573836 848472652 867086877 98621086 554535393 454507105 593510442 146605265 428681605 739880177 941995925 641240488 959048489 528583219 600714343 130670077 636835676 59087556 614401995 341846600 671718838 145843671 570482787 11382702 777389007 490814528 645459702 843219346 970014188 567750381 876147698 655770950 852520174 37898130 399840346 256143483 821996403 793250930 853262527 465824031 648394518 715438177 911637742 276127753 597273449 759215973 983949854 730447478 843641897 744744468 932930094 706152154 908420148 669626201 740274901 392396813 895959815 724436196 981045274 682513957 878351540 762173115 992390921 825807819 856083836 260631372 322503286 987722121 991198574 84547268 239319379 569254194 602591779 413393125 946613852 773026476 971946307 395102913 857332219 498417725 659930786 336592062 839636677 65993316 210478952 948531616 981210983 553835351 884146900 857706921 870182556 526164305 622291956 839898743 915451572 795678393 813304978 676535542 683435346 431075301 989777266 471014226 781966817 487129182 860848837 934701531 937624916 198278101 755287186 924846940 978535130 629582517 995910077 293134418 379852496 791314063 835860451 859383703 905823852 8491955 655807999 302103291 892200798 781866732 934730384 413470138 784158227 696902459 813340416 838477009 878464034 578222748 642929614 720870745 757625952 568049541 958295430 178830238 842292955 41295547 728601177 219029114 560352725 374963241 466062310 503658509 593548872 273064954 875633495 380542119 787994871 583931427 940715855 844659995 852920929 627679041 651491906 958702212 991648748 378709956 556048811 724844147 784918577 197610181 894015850 106351028 682450102 972527911 984713188 462899449 699866010 217572165 818753239 293864224 892251317 987512465 988989757 621855606 657664395 946793791 965170105 43596958 574473167 236367742 262034261 36404928 436753154 114558450 853476170 391034995 845078676 597928099 618463178 160803052 441525655 649876935 721731946 755756846 810122002 172549643 300866028 427621859 992283263 502929930 932301275 695046661 958282333 999051180 999858554 74207823 625650618 990026536 999480556 626708746 767298809 505519802 624054649 573837345 945994639 132002749 379438888 780261976 789541287 633453761 860760086 100412049 991512931 288454932 632246929 677755610 794498474 224693224 725468930 739143789 869645195 591598131 861751556 111393941 236879746 347891663 486284692 869008349 940369177 255770982 828967748 5002872 994569223 987191089 998299006 60475685 727099326 11107694 176469494 662284590 710900780 710120939 953480594 948161264 983682821 470587986 540710176 752630079 831734758 306992559 566931127 351152324 775486280 991997768 992092137 852737065 886862839 292166707 570637227 267266386 324896310 425699590 620114464 734614530 973282800 25613273 249168724 487223138 959683869 52662788 494946745 878016291 971044992 843406633 890553289 35428068 165259307 102394237 698915293 179382575 977149615 47835530 398138960 169446905 436399822 522200093 724822303 567021357 727167135 804228560 923104984 895072020 996474862 108717526 140213630 161096256 986633393 269485178 932256169 45195457 457757989 903488208 950459559 264445144 616568698 41147684 498250547 830391422 888300097 356888779 770534534 29282650 462514766 888288802 917682432 368226809 555578819 796612204 919470804 762737516 885068245 871100242 994198587 618827281 906432654 211287771 794078081 195433163 212817718 872121090 985861409 944492554 975215159 505303392 926628902 578307065 988269606 114420761 352413650 702706809 812273799 860929423 942189792 155316927 991985218 346470922 585071212 454248028 644698760 875376036 875833877 664093474 764867078 797062996 849556992 539550596 728795759 229867978 462032094 734927165 764120608 237543954 980568856 573309037 852470719 465649646 524247711 650869806 994515792 963223624 974223126 618165860 919478014 810224853 990026080 960667881 992374083 939073579 996931555 853058708 868430194 622581435 741504376 78262210 947274876 52762046 254090397 350230842 370767183 664734089 842368789 394087309 572407153 507596449 671916024 503159605 535801255 623199564 940462291 703757766 770073675 94869885 682871908 142226755 401091226 492214212 921407851 629201471 743975844 86929166 841790663 729593666 834795700 227732225 989505475 854324727 994197782 555818302 730155649 866798956 904081486 812271567 909560867 802222282 936034306 390449802 984739891 723277902 980795427 745698959 993576432 768598662 905220398 272262176 887590553 320856329 387086211 833888529 924374872 513802100 778055702 737671501 815927908 552218340 595294347 949488733 982719382 604702333 719858270 804778857 808598361 756603718 924313539 258005613 419299417 400110738 847376808 223223322 451185683 757550776 923760543 203445562 953705384 403503834 747128736 157594389 368926514 125771607 847267277 982324213 991658993 581390134 626270406 746786658 982145893 711389583 862082931 208538856 790444377 822327480 824981720 698314531 847803255 641204311 980870628 680270624 808017477 694485674 907350023 491838210 812469373 90423826 666540548 916780393 927959871 308658955 576078869 664624469 685332446 64788298 838753268 836474981 838787007 576035341 960822993 94484929 312997856 755405166 768762751 759727208 780979623 166474146 581074228 22631767 973209069 384581218 612482213 655567786 968767539 940463694 993984694 227060779 519055670 640958787 713271796 753600258 864072784 882573413 930099461 480510411 788051620 517204573 822862579 341192864 552303263 780629909 951268178 356637132 942446564 924260116 998730247 264374729 553406900 991179544 998617653 247186448 614473422 477915195 982034067 223517911 673890514 748031075 883285366 602333969 891568430 971163125 971917896 246284668 980273248 55779335 243260070 614875214 880529500 873905215 964372415 715746780 862308835 114566611 515321416 909062849 990324248 825748497 893899610 659345342 983511223 112702733 932007900 873592991 885092474 361815952 419126988 945519220 973336865 164147628 880980753 886975613 914294467 55292908 604691991 220289804 522697201 346787404 820320048 333122524 556090541 93402609 982740564 253505172 643553311 538472277 715043286 297299827 838643945 145828266 460875208 972165437 994595845 404317535 813979688 761753504 833634432 197196585 368549542 429494454 928243956 761747845 957652868 717998808 909607730 816572047 865357760 735776443 856925548 544170294 780424333 932167226 980985819 470351267 818102805 501650962 578065479 839046430 938802287 688899409 806306059 871619025 918149955 715248282 786306730 253284029 914384210 570361456 592194420 768861282 984508972 409731955 689665001 332954215 523516151 349459126 378504822 8299140 846411556 587164343 632429527 942029772 980228245 348402610 896031159 316032834 820794668 905346435 948646461 200699607 480840861 442704233 481416759 594539509 895925894 929008567 952569667 395146029 559050144 68654817 658605578 834277550 959336934 493445374 882884373 572888552 943807015 979671008 996290533 617622598 730858367 832423998 839729559 509511663 828101013 789537821 948027681 343339851 928963140 485115602 858643274 168952438 311264721 447774886 771259240 19907648 42823468 987665034 991865837 860069141 872890054 737034664 745716753 141624553 265495598 262014958 389989182 782392275 810020114 959379141 999796065 21284917 640187917 359416531 749177624 180347863 881206223 809666127 992702017 26216000 685826071 307620416 461082616 920598673 994568520 509618584 543886233 832881223 988989050 126329315 380939481 344835485 434519710 618489118 992105594 76637411 752242626 732179699 812537792 497370638 765015821 198392495 370970932 471183965 842027753 51849303 865401766 490333198 538505529 824263086 895313112 793148990 795484566 219788151 787995434 930955755 935790547 397857872 481125544 959034927 976780296 552238240 821871987 725199832 974625742 329042750 525203191 535394578 933896295 963837477 978665430 677633818 981545393 436515963 557149963 932712148 955221373 48793117 390376127 553962431 687123609 78370938 164799387 666993823 948087989 149213864 310275206 479776983 610291048 425446017 983347104 942305018 950065446 823862668 981596542 436987369 958158904 925711694 937115039 50353897 284544435 842982500 939629296 206164165 315635953 49896064 613946698 85426228 765745589 490324991 522863160 580785329 622742066 314334288 559193274 500247236 568199499 571387511 915395980 884407414 983328798 631797775 957365947 446273965 740145884 293404356 842210796 463155650 646480491 16024559 290491281 203770134 969721920 277457067 622834112 511225446 710798929 859565775 894304593 23621810 499617551 235993698 244180901 657439073 960805491 978809687 997332307 548406686 613761433 474925064 491301170 952127905 972426675 946521492 976755887 6488794 673903888 388725073 895494690 407093356 909063177 873166418 990140252 829770998 975188364 268744842 799580752 222588126 463058737 418590554 920311375 174074730 579908185 894349198 930432435 744113421 856417003 472134708 876818079 640204924 693280811 726461745 754491134 840805642 942407092 799388884 865190736 101268642 524285881 15194255 67859972 26509445 561231078 142008438 427599169 707274316 969049874 592855276 655348852 44958961 624019231 856141530 942659588 907498451 998780218 974381336 987973015 877835078 973307644 537245348 557536552 584339831 650188493 707159165 812190342 805658190 909455157 136645086 839088677 760915593 803787241 664719349 992304841 333558227 776618774 573410738 601238972 792033472 877603710 945089019 978498285 459860503 983129596 445728004 717521317 285016321 445600668 931070285 943876884 658675110 938292997 114685906 360750477 832671117 886120891 259619581 479084375 640576118 991271647 75594642 290885391 518781858 723509916 860752873 969618112 690683350 872056240 264415535 949160956 184598054 886263973 234266366 999142525 587575332 741958515 764005584 958572120 437101576 601786505 961078060 981138338 523843587 864888684 386591543 939021695 785592028 792957114 20279744 141510782 855059186 855253859 326534766 794100659 427369002 506025477 883076935 944996020 547332489 746625827 154596582 798127550 318005697 762825715 583888268 630148747 220874992 522734540 787697094 787991115 155495133 626362262 509418823 914994207 707967957 925281611 205453395 883069508 380587961 442575561 218920884 322175238 932992557 962891713 668772068 739786051 873488737 989638530 481776375 612045684 946384311 961857191 666389548 782863986 109371964 819892949 113611973 677858163 740708256 766899829 865301784 998270950 221140459 480853412 412131316 769966702 936283972 972598790 96904684 652937821 758704448 814363631 126078087 335424369 750404028 768144152 125891351 248264670 625551913 794335857 613502090 643821057 397315341 809098219 568999685 737812477 730442905 807617571 500086961 883496138 59864685 768134247 512221418 837192567 372905018 635173432 19607883 187904252 86829755 543636551 527660293 656488030 323785356 896715906 577668703 823307627 597742416 794446391 630892876 696651661 304851697 881738869 285629709 973811965 119462227 850675398 357518818 997986529 345705787 857855605 443840665 732728983 668077478 897787042 86380595 302788694 175789614 646626424 857117207 891339735 749159492 790088134 677690156 861458818 794078303 979123288 636619295 674680402 178808177 814623564 56880883 465889289 847132493 863572945 62800781 344126743 794488996 994443932 40726223 130966467 496105431 914089099 691855561 989095187 967491927 980324100 805073931 831395133 814911207 982197714 405246391 984803154 849619598 955078253 466465264 998797001 333527612 706900755 533568208 895986097 722131664 750046869 583516204 588300846 111479714 268243712 980829978 994473560 743605185 833053005 273662890 973207651 533050248 880505927 679616473 814735329 531706131 693830371 638508575 774374194 474276080 519969922 131466720 845814821 432783061 735602712 427373338 753133066 130733130 536841801 943550286 969556528 870173961 931985435 738197777 751429610 37780566 808320337 781469140 806137002 845319697 972422404 480960742 483191713 693295735 926726859 85559084 716594359 765533849 998117004 95033504 616375862 223983285 699071001 889328401 889418928 728609445 940860887 945241979 963016005 703969091 996354728 141257649 717157389 793433032 913887150 155240460 748118046 797337694 938459311 397577483 838734684 146148501 949725869 554437667 952205557 491560707 925632004 218984682 860135695 349007717 397185311 851388867 896831044 360040638 720340901 924244097 998283525 813699379 973473385 168067647 585342690 165857659 628590714 969395321 981907615 621842340 654090628 712054044 716293093 788872229 841629535 603023556 949721694 574418031 832823774 763502611 959486067 283153965 946312111 656301063 835001625 90896302 499764070 845562017 965758285 232297480 803410950 314463914 832922090 522982673 751783602 253183116 380644081 47538934 832456057 702727194 891302460 741666340 920092352 473956715 923300146 964491798 965730716 459060851 509661058 581225818 679725158 597527506 926738160 450474316 622224203 445938871 732706266 256392642 873449961 330038494 600741454 310721474 416886643 295047142 776514295 759174884 768007239 500492360 578615202 651392198 753742427 725151550 916171483 814996731 829787535 239667498 379394027 42472000 329489282 22183935 309738969 994315140 997502668 197980534 730083742 205757136 895978386 562065760 931626437 375876661 402844316 414859290 761331800 248314642 975384713 277502497 676834630 402144351 743908804 531750949 846359541 537363716 948922078 133583240 946131457 1418144 780525007 320596769 847096326 957427246 976210199 224514452 357196701 103800047 385377312 245609658 845908261 894708031 980962757 856885262 928826390 447083121 604414918 224588686 895824454 352930721 908402811 144210697 776033490 834164130 986089133 744397834 770028959 427080357 630316085 891180784 986147855 706338478 731387043 138851955 236073399 88494086 147988473 505248218 546227146 188829230 802347655 202335232 409717621 686248082 705215965 163307514 329983106 481812016 746600924 420508881 844290692 822500974 908312917 899641989 978951857 562622610 654225068 915243821 939504055 530701077 533511076 528966395 689315551 755817789 825730965 783913365 964712168 710139914 964986961 883711878 978291557 839846128 864931451 657081476 746138667 29746657 273642034 525861886 760925396 102340852 524092043 889111667 920503080 715838701 949104952 843715113 866682322 12454270 399687748 501150003 799789577 674353511 866305446 205539056 512491465 533029298 926517306 478527262 589123470 471688661 912482246 326402755 741556198 799271746 844466956 327973470 431730160 546157920 916276156 471430914 630649652 586733895 831154308 942484842 972926330 607727096 879942986 790260126 833284597 513840131 534579501 827244711 878721757 302035534 594131909 199807075 307545926 950205561 986442121 793197175 865764082 137203399 871763312 355337658 741558075 460690945 720148514 728999633 865918405 498843089 735294685 931101161 949245480 10618126 697048543 35603164 916742988 271489214 511974060 861435352 962266617 409485629 712309072 414758355 478935296 115969600 902320854 807087489 856095143 262054206 593866265 792970541 844179251 921899926 986930318 718670694 830510766 910881709 960824918 187716511 367633075 648145122 903171681 88043949 823535875 187728195 642428102 812979580 988303840 713527338 829093441 272406939 543614868 690984557 771816696 135433441 301152873 556564714 589373351 845673107 871544716 949130400 995408713 184314667 972902888 728979094 910542303 349732036 903856705 117995511 969192691 633940166 644173763 957040428 990821118 173399908 417458733 45577700 271322109 813414313 881723827 508917424 602768957 454009525 933062814 102061067 566934386 285224140 667534834 447034929 735116659 654699247 775405891 951914267 971344739 798093675 915544198 791604178 815674581 722719090 741084724 479047939 538011137 6856765 268646550 636823832 767697308 558087664 747492527 724750116 743823289 578307473 689429349 66795205 736151189 504897400 693673324 252530787 329930454 64465387 990812835 224160742 413473986 143793338 757311880 18583110 777964941 557675237 838829651 93936560 163884548 249672988 467272809 595685653 925352297 669581896 804437834 542546872 621419457 34234736 56772078 108130771 981425411 518660792 646260986 197541082 451912793 284706590 703154518 923801157 973804951 636083280 811593601 370967769 910039517 625096953 631136107 622847853 705111606 793671529 941990166 41306074 174533746 501816034 582733991 329125555 841452657 260559465 964882119 299205280 641418606 547821905 797554417 5637717 803021466 845319222 913657504 144679569 238910870 38924722 665659982 145021384 897892318 144464180 332730343 189713509 358115764 230823643 981970144 218715397 483712620 315551744 405996166 155216443 864313857 394077339 898076348 909415263 919961312 811851012 902246924 489600504 805834013 192968961 856049062 159921784 504531099 597785438 909113339 492143756 702478936 487082843 606096558 147489998 160245382 521308415 681743842 486603529 584888786 666402953 812084161 617024285 838329859 129598 40391689 671224624 720241456 29533475 994445936 666950847 958396378 548125282 726127533 502197034 719807864 466184403 472917686 897467081 962425444 714505533 996722001 227962332 673662970 547032551 899809131 101789649 534291951 736831769 859199059 531408693 970258941 128641180 825248654 76211543 105677414 992440892 997386108 38238072 178178082 473949008 853147050 694182540 859602390 601181918 684181966 996278585 997371894 469289976 902278560 590798253 671644581 541522173 985412391 785856597 943200573 522496656 667756148 545226648 702983556 304805722 407328138 188257636 415887246 406027209 922523492 869580453 886784685 838996317 959439132 810585077 840882991 681658690 841179205 330136465 379356693 488308855 504529611 362950924 581638305 623370078 795379814 676972190 984834531 424879678 891928881 720880709 729248757 987710672 995561033 747588166 873438876 494460284 630101188 222002454 898165811 32721632 575587242 301491197 309454793 976579882 997037096 972669548 993634328 363057042 888597465 785620992 910784069 136878579 958398013 755239997 773957576 63413411 366286876 788230734 870212429 240752303 385564915 902698012 936768458 308615331 511220017 169852058 535319979 730335749 798185868 114317125 441413855 650475178 794292251 655548071 744589879 388419429 523215021 227644130 938790341 454588586 970255019 920312082 988367024 416407707 587683094 278369623 329453502 167318622 853853369 260735716 358531734 334884151 826865097 394121311 479662200 99472665 276837558 458935921 939839193 428575141 736563606 504037197 572532365 806961586 941128343 424059456 484311775 527398791 529030977 12081227 712065747 335021849 607380197 920056492 993876708 745158512 932255413 999015293 999095010 205310023 603492217 785663088 973761368 460445768 681876693 286060210 706824849 102373995 381339507 788973314 805768215 361571565 873800195 821220048 825528808 846899506 867937317 413385 644333167 279083410 795624292 459533766 718487214 6469449 791695336 292710535 782499551 560641121 750196347 22796450 367666217 460173317 496707405 523795193 582977558 740023865 995005543 494353910 838917567 925732358 931412525 381087273 933512615 613646413 682191079 762702875 938017823 732612888 991460664 645810249 781321156 152406301 524670019 614915553 970745747 223707141 541868099 956525677 963706125 158310098 669927327 687957886 905079089 298613087 308194511 511634769 610507473 195511478 984483391 598488765 670209847 50862154 157761184 342007506 533825935 707240466 797053144 80646887 290681576 510214290 739460633 674567984 828017409 200291418 678418615 21878078 547969722 852052639 885364680 468404630 899985918 465487155 664461220 122801355 828281159 52345325 151045213 160389687 250622602 199231884 796243911 393735826 951988797 641853991 686499451 242871698 845485320 119526230 745476833 11626658 485478958 464274681 761140625 546217221 617671665 195443183 233903916 798955637 900838363 481452883 724303539 109416708 647115231 989189925 991232978 466489205 867845767 332986336 988569314 863324241 931613275 362446455 649162962 296924591 887493886 217466457 233853550 464637475 618658845 887447450 901008673 200869237 425909154 513699175 609658562 309538810 316018429 575763610 714391763 743852966 982218752 447887074 535909295 402122669 615462383 917715837 977092363 231373356 926162861 587460699 671562108 120246015 211103070 539279545 599560173 414800157 776822864 429235154 672594591 111244474 658473922 665811214 817384584 369829255 967532803 626820048 956408499 533755716 611022504 242568293 626732828 999319063 999386379 87166495 460553845 823830819 869098992 722201801 981601453 675488910 724141466 643403449 856144341 145965389 610066696 786675450 924937362 902565027 946317271 559715863 749386476 204670363 725715512 452611141 989433333 938406405 960383562 903096888 971823732 925735134 945639729 949067752 971085971 12903015 211302063 824023464 832961000 629262487 766880987 715212650 908334098 823113785 980877635 171294452 597440422 420100453 537381320 819335868 933156913 127329482 366316035 443593455 835171620 535995909 630159490 344030529 675441906 62772195 358755923 366850773 985907148 284103426 295417724 974169496 976267686 125798365 513078210 26885794 635334019 688995981 721188583 537731775 974599519 54184053 472208961 209102505 212547687 436156248 488761185 434085032 951406079 553826789 612429461 514564501 833826928 705312280 745217050 303301052 464853760 927823435 930434948 618160633 675828387 177924626 468749788 820336329 895614089 103324491 695337735 166811278 413993309 709258350 782214096 683659776 935903601 48176376 699235683 953258382 981031433 18117358 367676515 937111726 939372208 629061810 637917450 229213462 548609604 130478648 993232420 521073341 865307018 844658654 964660751 792589502 884111221 917457418 969136720 288308005 619968155 686607713 921702177 28969255 552408428 959121553 992887742 149277284 381968522 377733791 485304523 885001788 900038081 885354626 935358489 228639751 440636952 463868423 861994986 458565248 869908768 118256600 536371904 262480552 414969357 770729046 935492258 766514789 865926717 816794588 950663276 738028296 889195930 171042354 651575084 364350225 787950394 814972425 840654359 144608159 912341620 774121140 860761826 825876469 875753027 146926782 306345473 152498435 290975421 780248754 942977740 661238911 689408287 400943941 416455265 112960726 268700512 823899410 868280220 136490115 613444405 864168530 880884351 265074905 470572053 846951306 849320224 940724271 977661161 372461814 619777996 577530079 627659285 707711832 785623444 712310105 970848156 745982874 964730532 514801684 677275932 337810528 893978315 175688126 557346635 790865473 882834069 545329158 797845290 403059133 446287870 31925238 279634058 443146558 966154731 98248198 444847789 81914782 481623269 976342908 986821047 509544195 825864960 42547054 615644369 141987396 187388041 33294019 867884113 140369027 160525017 454537652 680720663 774826348 800804287 427215982 606470043 39090767 796141918 59504674 81970803 296458724 465530362 324482723 577802065 84866129 715262442 913086460 946449625 88985150 733302298 247932202 975122209 165447433 589944037 942972836 973792218 925123931 979259394 328546828 811238643 323058465 844163684 343284222 832228654 385908540 455201127 165765515 872087482 211775690 499803870 636747839 678739602 261931701 689222257 399084144 771288044 322946791 347613177 580857791 847357476 157372023 217259132 92050282 738011791 567718247 942671737 696020321 939788696 896921658 966763595 515672838 813048433 58185584 938451290 356366193 676582924 481925486 577275725 354417895 406595969 880766649 886054834 366844829 412879147 544105507 871224602 9062992 829074941 532140025 605047360 374799615 810991752 765955636 795869754 437214006 982840368 571947116 683201971 801207430 977740283 117444718 199912093 899144453 952353436 868822384 889161027 856670807 882498892 599236834 995261990 889089925 998250825 506624429 950867450 806969510 858809095 653312540 684671988 812839530 936046992 706613619 833538708 132387468 830155187 223044080 545783153 10145856 74559395 569969405 663707071 157873781 740005198 938203739 989511396 960548385 986721392 694146805 959968892 968452886 979561376 103422325 600027569 190588065 240535063 69822279 867809541 839757762 923858920 418279519 673188927 980069142 999989562 793122631 814139940 450061906 719658574 31130248 338718258 602429830 702730186 228573780 454886367 542929098 674652955 667117454 888227804 150684134 179458696 684067561 985672610 55884338 213633500 334687410 602093885 222162421 896437508 36611537 81573418 712645961 906710068 276319512 445071818 81424311 605287493 479665246 662200989 818051863 942537855 915201091 962164443 699515212 799839593 255013780 989168205 478809202 735476050 650852147 899325001 645326192 712928738 37151079 225827778 106353391 689834737 184303105 725390282 28736535 876685381 805486701 886618388 947136463 976012519 538554307 682799448 510844676 996444046 489011933 938290564 294449427 620244423 987493751 989462929 277169315 308632939 70916935 642286164 91978958 295117769 73444544 109937647 846637323 994213514 38229532 994861801 784426396 986427068 80327833 273127365 989369406 997407367 745848911 930688082 558497108 873023986 313642174 518967499 45981990 95811677 23990767 914702006 950703714 960211956 50639083 191799386 830160852 926380042 357087660 474191666 918613193 982926935 57049050 731534513 465198535 887053709 849752708 891546716 228076233 637457856 341369004 989772308 871189987 974956896 680466189 869810375 899130528 930258507 67359716 288691678 214898486 745239009 523901740 971750771 727629796 744857641 356976030 451378295 365810465 814313676 789474414 951367280 194456831 783607269 738054307 959389131 358401591 943820524 395591627 483070306 340238592 750089465 347936560 866724024 872541745 881898226 443776408 515583849 343899427 374201994 478421267 596854693 884519990 895625778 334851826 479711586 265178791 823570962 819284496 951479908 477181543 870132692 288580348 837376419 949636947 990726815 954631461 961808340 711977409 838499022 528475606 539939756 786606411 830484725 339654507 698265937 421675035 854480072 119954115 883470232 328991248 510443354 89588031 459712304 570198157 857604835 780687605 972408586 34116595 977168631 707967144 915662061 58603900 198435749 29485540 831375879 833665851 898088732 269492007 577415337 177359299 483568872 153000205 803486780 319773800 599007944 806241788 867605122 287985972 296367734 660629682 693791251 14848038 300066106 741087033 950456792 814436063 978598037 884672263 954148665 572128089 604134413 440965159 870355791 448155579 638797895 352514738 447576124 503185379 997757691 195128049 928223879 56494744 818489464 554822331 821318412 39741497 621700842 164843886 211079599 46020107 696004065 325372682 650730144 634822657 713709214 997935009 998622154 150915274 255225892 768740629 890572747 999140099 999768767 94430172 374857732 563654439 950583709 710774690 786662242 62743401 531045719 421342725 542710058 470576969 981677785 529955021 714462656 735821359 755486473 220781180 486576536 181447029 419615187 775396114 978345161 163173805 273008854 322152339 895157815 980206910 998099179 682615081 766592779 672536726 897859998 340661877 538539203 873821209 953819569 826187418 862700003 243053938 300612883 156342420 871877330 231546848 786760780 792007230 898408422 920058971 986879935 622257526 970295851 775258635 841096683 427127704 512104324 286200241 452761611 834024381 899319722 79416703 164230797 127462832 753330844 337914243 534597342 197820895 914155453 423667111 739800504 796276279 822206364 533759383 717683782 393762739 505299571 530080071 994733907 302140965 580533080 284326586 453139779 49887126 267665914 766780862 911190464 602601948 750278870 121421652 331394051 454392330 547951861 537580009 642118033 218537570 283009586 855091049 901092403 566646627 638081068 176133247 421943075 557597582 918001001 87153942 236582308 191573078 486276231 166998792 668869133 474977463 857723184 779609330 945628537 655186767 847947861 739868231 832619671 445461983 450947542 518957145 680820474 336309693 430550207 775510139 882205225 696620902 984406256 618867958 767895386 969205120 999985740 842246663 942264460 799760844 979562639 628106787 892962244 569111669 877245804 445733175 744500975 931573254 971525276 251675301 339383792 77229138 885879088 236976025 443623585 366765284 718177689 939581289 940730348 342028815 397487718 208476739 342056661 601382637 820834303 246111134 364901560 346177062 826422557 388353358 882665361 907748755 973299194 318938803 767698329 581896206 965034693 336649411 547030896 46003012 156576847 259091281 420851126 647058689 960710451 882446716 997659035 149802025 694896825 615996975 826606336 449218192 879515146 519798910 795500955 167209715 424196839 639704935 655013552 951577390 957713299 442845741 486004680 213756595 576906270 940237088 954483975 860745388 899901901 646391953 818488620 378916876 746857891 667306175 722089348 779147515 848597895 55715675 903088844 157205140 331015092 394455872 605598079 923023342 989687171 87859457 470694820 932871691 955271459 602879081 788254990 232684128 631974175 105745168 926213948 32691533 731141496 380875275 564107266 482812416 887209699 912785757 942595523 754117583 959208169 797748536 856245334 751953005 949907365 600465972 800018150 515260414 682519927 339881588 915972927 983709805 985726098 884776288 951893916 303946568 656208417 896844986 916824411 719226765 878701586 600860706 723953276 241709913 309860731 725585960 945564782 525879094 847747238 209790497 851290222 84382771 794964996 805770775 984708039 994528738 999475389 529596876 932916326 562751428 627746077 522398163 970278230 717910221 996592987 813793378 923715893 184722224 845514841 535598942 675348279 27050506 542367456 238840112 777245251 764214820 778192652 525303809 540646618 858927160 905979138 943715819 945202010 223687493 892238032 726861037 988160719 189838439 435681873 749718647 980332190 906279325 995788502 667227457 851052957 636753277 996418062 883531526 943248012 64072506 893272265 854525973 940545972 343149101 676371901 221216514 442878801 791340885 964134483 437764099 911034877 365865478 575767892 592576074 841420506 809099814 925674167 159311841 565483525 685506677 729512907 895986713 922284294 359176774 696644752 157283257 569666523 568870404 624090990 133615787 791906729 253582037 646965645 987026301 999996543 741176358 750475331 609103052 883854194 986503319 998005694 698122351 883273539 727128340 984574142 531824726 766201863 48255111 711038502 93842555 490100955 701868043 762534191 232488200 735843450 120219181 506892965 603626482 986395201 707972255 852290374 460404787 835710402 215901474 364865368 706973213 972692167 42901582 46298979 826798322 984131667 252715840 295244353 418570658 706220586 598590807 631341169 654920005 764414790 612752728 900383926 447001998 585267175 921895447 940076880 849621156 952405751 527832410 914287058 75517563 230243952 43852034 999547813 228040757 257840189 71884111 952948960 695530507 722005348 787759184 894960598 815983299 864033167 321371341 368649257 187809155 848166093 443859923 917604315 428691540 976599367 893687638 966375815 695068272 925058913 697797011 931925442 917157896 957919908 459748741 718912708 517705215 822403621 330375355 572571663 382456733 401609170 899619639 988756874 551337812 828577164 343297627 357241457 427636006 606449117 479993591 930041887 589348992 657421078 988873088 994933847 726756894 838012269 170501170 656197589 927850274 936747519 300473595 857900262 827115169 845586148 585451685 888965423 249187252 945560709 960232983 999168130 537226772 678897565 30391868 919952880 640028986 930878079 85099632 484096618 564905383 765943402 864584297 945947887 566554733 788485322 837499824 955952903 494393971 892659267 315759506 404750965 644860739 985086700 935592457 965106669 531804377 537001383 306593543 480822054 36798726 215991037 217272041 314074416 682267017 705860172 953675063 992248942 342864182 725638334 655091475 988589017 35701578 108752901 550899063 680761074 354359284 377517440 841936080 868815492 920487336 952476703 72379159 150442822 89818015 667377249 279415262 733142349 798906106 932669595 724209891 946368520 602709079 663902582 68348883 886235401 996312139 997699359 358955987 668575990 737819014 951435475 62237061 861870089 204440777 664685789 331272374 353185047 708341569 947087107 157562072 931712482 819344703 980639765 559517020 976559720 224902550 280691864 825404161 835260121 702420139 877180882 464854041 809152919 605923671 989591907 170433884 259849170 280832331 823866828 451485069 843342415 130415006 676228878 706891960 986569845 515205107 641540229 43781471 556682771 5781304 362877737 759697034 814616126 413455995 849387496 172758815 971500803 830078717 994327505 589358537 772003173 89576989 562001653 590221541 976636966 748981013 930445205 639179755 750459616 396297858 602011262 285848604 810331513 784298783 837091490 276638168 502122638 397494131 534714630 716451000 920691317 689769619 861335649 653199232 923719278 756932944 792675475 703628148 826714799 724919488 910285899 670195425 967672826 150112252 596259367 770122326 934741617 172985355 417997365 297587670 892590161 894658918 996578751 450021067 908727208 916209507 917647076 796589095 947667735 814500642 935896435 176293247 306950865 1285725 338787393 828797411 835166399 363081417 925701574 737966545 908709358 998602742 999878595 856760836 941430524 435309736 684289228 969140012 999251380 528637401 988884043 520499645 607552199 185403044 971840935 78657009 850970019 443422397 463105402 540064575 986092777 772712329 994985919 883452869 940378858 61016032 958004396 707783349 905717442 894416064 900229158 847841429 872203434 96953148 474356360 244255971 804910653 652775538 815619365 648038332 791458640 532272042 579180543 155292431 234651085 872653876 904470146 566431937 986833827 138866593 373181157 809214230 993009427 98987954 598998001 574237482 682893714 25046030 824614330 15557408 517121718 929775035 946602657 193086446 905216345 562122348 743312143 856288855 941760604 637239635 832483340 427465827 446257773 127471483 610267433 993253828 994443336 605289561 842416423 909321499 956078970 768414113 875703474 36362672 291171067 222655435 471820358 990734721 992274551 995672863 996637572 354296020 464490281 863801913 955557670 754975261 994537966 439491959 922673316 727960677 927834766 525264466 627210359 301224806 443777644 391080906 798654791 536237429 649364128 501818619 677175859 115097543 436258696 463262829 898289475 169914364 812236169 592517226 986059383 833040776 976451240 903278709 940315787 465191212 677332694 148880312 267854593 848078615 950223455 580497017 810437267 327176528 675119067 965033197 991686281 521849063 649596535 910002868 968138632 964362518 967613496 681055014 883811101 489388644 949868980 448473888 749775203 904846088 935665933 322360786 537615115 632298154 770836350 624207694 956734304 749309785 884870429 702275938 995803812 800799362 853275675 167684474 695703807 849880159 988077081 129114438 369789781 742691843 883107923 231162739 814375470 415039568 989322838 779911534 852976670 710439834 941838355 517347273 818502340 899116522 978628847 231400128 258199866 913598966 957009252 268918509 720120276 852923771 950544359 365123004 513152456 219716748 443592555 478762452 933291359 739781453 911843224 155507852 983188887 917910071 985546754 187062892 467821117 776618977 919356524 906737672 969276171 59562683 457883706 204781855 585529425 588898383 936122092 451981342 506977466 624029046 868410714 308528852 650927575 972085851 974214145 880590901 984167678 341229186 869854076 533932992 861211469 6657504 616139743 906335135 927120990 162370095 606773478 113255620 870693828 433454608 823286702 904580734 920002773 82655465 375725141 803125854 930045526 225037895 500810483 752568768 779928305 924074595 952284714 483939759 508999580 935324979 957827459 633662511 640842143 763510705 993292542 862606271 911266730 118858128 765023185 564192622 973238921 616335326 737978554 385691322 710778533 595773672 642287464 60975877 119794677 975718285 998574398 515559451 848659468 682379840 907701171 941466266 962601900 901162106 988786200 231735032 793061817 84068522 967379273 608286079 626881170 104917663 796494624 195995149 238900990 285862370 732364672 906776059 981708867 603732016 845241901 38033080 326860512 969867684 992211269 504835882 790190207 479345491 564362290 12281916 941256965 307305769 924339542 847940751 941879726 876930347 913497361 624366964 691667231 401586202 913220873 373508038 716790589 265586347 971613330 963440263 984481638 240553869 405027179 647543865 761161865 657778130 758406716 902221074 994909624 334511984 457301244 688836115 750577284 936911967 957912718 489411584 974291347 494736458 654682644 59076568 74642484 6657188 317345055 558398039 935246478 748512900 856372228 219876034 429788905 626409940 975420210 737239799 880097702 463691755 588672474 482249045 766906792 183632898 186304804 698274139 800462941 352202399 676385958 841670962 922899037 947771911 948963253 475944259 532675130 448153700 487026537 998692466 999485579 940220057 973644112 578226296 793025376 783225530 919391510 683499357 802922229 780076870 910392668 201265785 555937449 679938854 793743882 239074525 716057593 447048598 501359312 16307367 671959340 776078496 859709140 521101181 562013918 496948157 574246315 299921357 735808072 705365092 968035400 895361483 948641091 997663979 997722590 220878640 414920430 788482950 834059958 845131974 928152034 637665849 880110575 135569116 503094468 596863052 636366369 141992580 852831061 243577546 840019911 391750168 731127473 72281222 331021078 653880526 962312082 105283667 122645578 478653089 863135163 749022303 750131975 976695410 984645184 979880204 997703821 552485356 999061088 213696718 451685641 806284000 973856621 481331250 628951380 700799783 985270350 679147121 844800885 891832542 908600505 840567166 924640861 431526802 510170065 893907768 905393829 943405831 985649114 549688573 708366297 408816848 941877930 893166141 941772935 455304087 698359239 504192206 576172612 380590021 607509679 277680210 690159817 874205196 879610096 550258175 661751540 120737809 632405815 344363380 988999416 423703478 647568957 880450273 885585393 751076585 766929721 580808555 777099258 39487431 283332099 311159899 724673576 313653661 384893992 251102767 909062041 976018868 990499903 712680433 957862526 101069788 893079078 524806199 947308920 820341771 821815465 662940832 897325578 728573323 938546814 643709035 762299358 930609683 935292515 958807893 992557762 997865409 999390413 67569312 96451864 239855638 964619713 741522358 959395423 496827334 761765783 514747344 726766515 205416882 555865431 899410933 926881019 979650950 983985346 674503259 706082140 961929263 963567440 432372418 941389946 181020118 579599666 251439971 270096506 110438108 242453902 407498166 492772407 15597921 41583028 248194263 552262497 925957991 957961638 993811051 998912822 844979310 921858955 334049163 794521230 79716648 981379502 267449010 295005156 156335794 767052480 832621623 934545232 355277057 398652276 958874162 967634035 178665748 677383186 66398055 804041326 325747537 584139580 879410340 918020161 232951854 872312503 754282657 841605241 169491570 961994571 553920986 966235565 400564996 951219666 532991279 958904998 932463805 979286951 505895869 706052640 787206374 893508348 489475703 977134042 166681483 905601834 76748602 748230763 874134773 902237192 530191106 617371650 18438025 522727110 358695812 599791185 288979159 992867818 571135607 744140999 743986815 968530409 90857151 942997380 380244323 539820702 399479277 888633417 222253025 885876843 691049312 871348925 598167686 956800113 482490358 634295728 539094005 908715598 579827173 899162064 237064540 501082377 179019652 181088554 822200211 828137706 375700808 832464960 14549794 60681671 417917814 806564476 67700934 106934402 495352743 530262331 643120893 809206667 782366127 910172428 872413913 969496766 187360666 309032474 77884874 645358800 231621618 285114015 260208878 327727788 712529859 936428457 648592771 659547028 532963872 813286339 271744757 952519269 36284074 750279294 726340450 757389695 962848084 983271317 686728443 804600126 574431726 654349675 708690191 874509364 106897786 494750642 866949335 940795684 521164636 938123768 470926478 572245962 307332938 627848605 665541996 800269788 939793079 989029770 339267911 676237728 171681566 656755929 727970178 834526440 659440643 842375594 552402679 917554902 219564686 665321565 526600643 711885611 700028091 961308600 256930276 524152277 731791618 837074842 915224212 942930624 624505620 627732130 523181750 941575459 790756363 867548551 167897405 928547168 584650645 606373800 21611359 848585009 401230727 825897535 224570935 419701833 974747702 999033840 639483936 921429524 539879816 687061333 809167742 927822133 217564483 812783544 315302779 740716480 618627974 839484852 702393894 796599710 339473986 967385164 281780196 767529362 331611429 649533685 441726599 697006902 926627389 935241486 774189638 849326901 409891845 779997763 242941998 284343355 806975404 843522103 511049437 804537768 569070220 696302502 282181600 763840375 931911491 998835885 576134451 666063229 866635119 983803705 73141274 537156107 532126371 861587062 415720903 530183289 415563429 546193479 41830928 707428343 848348173 902860950 412027378 675782361 69237873 587796739 798325313 878882070 991860974 993492609 702330908 847999049 697295280 990575836 851937484 957826074 519536518 681696337 973958317 988522917 866768341 950308017 307393586 738850654 318652233 364976322 234680722 705507449 380453911 855369548 360368146 373073638 241471384 643682027 271744569 652984785 985173122 989501275 488499369 946792811 623455133 769894577 628383081 885485691 449996921 821704451 961397397 994536209 549822904 886305937 714291027 920885344 758338024 846870017 448096671 937401606 330207723 751087477 842243713 894789207 915923902 967330984 222234522 295381153 97317818 871159464 324697664 958343107 196935018 364886350 3737090 672999448 364835571 505102252 905324774 973310462 320271410 539986657 358435631 491684402 954651292 956131386 489191047 526935489 843758673 978828572 969150329 981941810 692278889 933315674 190516500 480508236 801592562 871636985 463149511 900995053 823888498 870662465 112690732 493818536 29048101 938413044 824951170 847731402 703509357 925411889 436250953 953533652 364842171 690876698 172237725 219099138 217911621 302584851 7742505 814534985 256695014 271735344 601836524 745823438 358698273 843732824 939060707 962827028 439568125 974540516 72152947 693642343 979092814 981662315 854257481 951248339 970461270 993442201 917918221 925498933 795709457 863967142 942345595 990961144 684613000 845030985 4573800 873960795 745234498 975078742 394453150 707526449 129578266 992685838 869034516 962247587 530081299 633680744 10067142 477586722 694034824 740091778 889033363 971452550 819519587 835011319 583570164 765069968 219901990 731507732 152089155 239593894 631192484 836882696 694237070 735664601 763060222 958665051 981379395 991532070 658383072 687834261 253949296 558791087 495715556 934741273 870895778 871991469 942801510 970825521 106385819 175972902 820406222 961726198 631317735 896540292 369577964 665278711 39511351 119705214 554468057 898255061 537289601 945461018 871837162 952420056 178726067 299761021 244077515 593803613 516701777 961911022 759930153 888735058 653196771 856772401 687203914 843895263 781440071 975904787 940244404 972480545 794063764 926104317 886109463 902340757 233649755 626319175 692418612 698758688 288592112 770053177 139901662 393972277 663536623 810265953 593405560 941323027 270899982 609092094 334301688 919239994 754658929 929926380 291030548 429199222 573564691 999768889 813560473 855766502 320816196 915045481 928637833 969212122 363948884 870968963 218900723 358437059 880841364 895530463 135945571 313126129 42166001 84960508 516516198 567457616 530496988 588335806 432534768 684178280 615121935 809305825 19377884 363558645 728281780 956094742 781753956 802778106 957422228 989803636 870957803 954802865 589534922 998179342 492401327 544672585 311364646 857158973 723526980 920180534 275514095 552112524 428611681 848709555 36521383 159604914 518529106 760346677 316498178 851655411 224481870 258610656 740871565 992379786 213066433 265552525 47540929 607396436 377226082 902906830 166128326 514657402 196586342 510396545 41192807 723177396 440558796 944380451 388550838 499515646 724353828 963723119 989161942 996078076 99678886 302239611 220766903 820526387 520945805 975526514 287735246 974002444 907617652 925989739 508842568 849225102 977538631 993540759 468811261 980303611 53782565 874862703 407405202 461544061 869906129 932686793 146560663 963178336 786689678 908421979 421914110 491211195 108164946 539921950 72918640 957585910 528535369 870786023 494229527 599360208 668370101 808508910 607871013 793937238 851257946 864592307 382703806 422627427 113751069 550309654 375837225 642449771 946459965 956017732 200951351 532147593 723895865 903461435 443696893 653695825 22462017 361467041 989155142 992929746 688589470 755901188 851599829 879047043 647616916 861190934 339189717 640723620 713886929 801253050 175631897 428290254 932662272 964974427 973967881 976756370 807349221 868982821 387694248 969803782 671924593 726123158 384499192 727935523 107666177 170490961 461082457 659679134 962527665 967161018 94274286 908495486 123598563 761290801 732590186 924308283 321934415 925550345 581859117 795498820 612110961 933762122 999341668 999602345 194076650 557883085 134258974 763957285 765553955 968999819 197581912 397917565 318373265 977026810 659040064 977258889 288399713 434489974 213218942 630754755 433276489 614683351 737092798 947469120 678806068 708602342 372143551 802037033 603851706 977099043 10698589 493721493 35342733 489832691 999472715 999571223 48153755 288069648 299854576 859755873 531207326 742415455 521437920 583766012 182698364 938601714 376010464 798858344 161027919 800288717 703512380 886673440 290802784 695759048 39854497 484724341 803412444 864426283 489954908 758802668 308538408 617074425 422986830 575725487 905984700 977922451 567369284 974272899 666203918 868246003 880142011 897771371 240891360 344485826 480886263 919675620 444952223 902960273 741704250 863378507 175026709 953219790 949180333 956535108 444330955 624073079 876664844 951225826 873502605 922622950 461280705 780477014 682705166 753050233 610121386 867013695 4627923 519001721 979441286 995171898 415921354 855683070 813802234 862961741 414089084 432642736 961630325 988623980 70315793 673628280 320785965 324994580 79343018 688705383 374104 422134175 941819457 954191670 934745708 979376250 90438739 785181174 166733891 307095431 361344160 386244167 958488433 983055297 728658724 876434101 119921646 271884460 389617225 619390564 554507589 625111275 447549813 882207421 875360758 927247813 991124836 998369487 827819714 863223831 344167433 962409811 876055519 900395243 999840555 999960491 648987377 786062072 944659467 990238571 687532957 776146533 447509390 970495019 657665946 813402136 407140228 554178785 500799147 765036489 78574022 662352899 628668633 867505662 145926856 887094424 443789306 572617420 304522380 429222450 761445560 918841692 45763195 830410650 349476333 856175415 755856040 838017943 572033828 761669248 645847355 909484221 692332940 794197819 799163428 821873404 999429813 999759289 203323170 563513162 403315797 690681313 715706672 845391057 148441443 866323608 819999433 930784464 554645498 639620098 465771751 608809240 431563277 547521459 176445555 850436004 75218564 894186169 763696195 926545699 533890837 695283567 685039330 761660113 405510442 627651116 407274019 483130903 983470672 988861493 384830196 899991136 155554973 667151286 333865182 507826120 356252723 606954549 430073620 552071410 176589021 616368350 588510544 876724130 24560516 104006092 363955356 534513684 961917759 975696979 362822354 789146536 6851431 617053332 201325577 218217686 674071196 876963167 387155247 714049089 582504241 587539259 463841268 601168810 396944447 744720347 606594064 985308868 247968839 507606636 175801020 983703458 370432212 990604959 956049104 959568955 673304307 791730367 510677904 663845386 495547228 991260461 141655529 256226021 84253495 239691741 295042801 714886558 791898725 864151504 373145043 609791313 741238090 922884247 497193475 975050637 152398718 506443145 389768361 877688924 745647717 987462778 178513649 521200196 528718128 937472819 875534706 943924783 572506768 623463312 495673407 932180016 488548236 506746073 567970600 694691917 308084225 559101451 62381759 541270688 177267401 963928487 273875471 637930942 320415349 837431231 197610439 286970889 144718348 501991546 491093541 519014036 150596273 609639364 815452565 977669924 65913392 819668848 128242618 140462340 486178531 621940522 534423402 940063759 446290379 709069996 487393310 661514579 568077515 766513378 507142912 679006854 130888839 811778978 235608842 924264104 796698318 973484450 980676625 989038440 3938510 985840045 400944830 434389315 941177755 943880295 822983973 941000311 456348813 717491935 609413286 644115780 160882242 841838019 611352261 734563234 578419710 587375704 873543319 997022420 536159829 945255272 226630038 595986505 121047881 522050407 693370959 823287375 916736266 917030967 126394303 205065972 611529825 831572172 921847998 991259493 539454744 717758447 117435033 548298219 752636862 981815887 471156802 828155827 940264732 976861121 970522439 990091241 834468374 937649130 170610878 769511590 711163578 730386221 399045267 841364104 671233892 715983698 281340420 427564388 471219253 814071990 208631855 645700504 136496306 404267966 33223268 385636198 425257002 936004167 667929496 677658623 274491133 708237207 742920100 786859686 378505380 558490444 629486993 847384123 671298255 813199982 584843460 830918216 419423212 585657628 340514758 433954654 686076319 700420218 951737496 997735344 178275374 808935739 810351380 952276559 333278837 916268081 536950333 757592380 362220241 907163389 264985432 466620243 233751432 248378836 727004455 732546759 442444231 520488220 826678439 911499978 645864186 997356753 360809913 685825331 211793919 736666534 113459308 701325835 669793929 789432603 748770696 767881177 809398729 961596918 283471594 644259614 928517118 993438586 602344168 754336036 957745316 960598932 513999790 998344052 552728935 670040900 136883650 518572379 238544128 743665427 269129971 629554915 250906880 459537692 209783813 960303797 248834573 986291293 893959349 937873428 928543673 963931722 693587758 932499117 352775787 458379105 92507317 365366546 12194377 468935014 685261683 762958925 353376690 953093149 986822900 999734748 681332930 843937365 424855828 888720316 868258069 878415903 689452285 990280647 831449149 915079790 63854843 294389176 978101448 994785654 507810224 635956885 846636877 884829634 306695241 591189077 730586427 847884176 612552565 844287794 271544776 974985054 894933613 951101261 885317746 888531075 129151050 644861018 31372773 804344687 869427260 951328563 455896436 566313746 235989844 579642991 190793556 220310779 821963195 913192536 348290302 934477785 751105652 821743453 974371657 983880719 571358264 748232659 295184009 398852707 979572210 989220080 616543674 819820398 857995730 912243400 314646867 412194316 966170198 980725588 852837992 901049330 401037835 545520405 634656404 819478079 20966295 171791760 193367258 478298780 38087675 952418453 716938538 944167126 193569516 551510073 142490546 808750152 135542855 905345577 890597512 972072241 607282870 759669679 26175217 951887125 311231141 958609857 332206549 744669536 916881953 944180369 209915705 730989867 751105224 800435134 546045086 573256127 810400074 876275031 485113614 732631759 5927226 869702422 934251145 965559223 278768813 764823226 413807956 514652696 710815665 965487097 838152721 861122731 483463382 887983947 982787618 990645229 585106999 933214419 572355249 918758806 289391816 305032746 470339944 919112989 320685827 807785407 605582359 939929793 783433835 800419461 836007276 913175213 204682736 342140507 864072681 927911994 664865979 976985754 835153726 978653909 720696652 930560056 664305721 825670635 237728030 606371665 683929734 792747459 746265325 766582384 328457357 331699661 714205544 774663270 787999653 905491518 670458386 855600636 775935368 822586262 986605138 991015168 355144313 368226724 657054479 751775253 935834875 952133110 15741519 419192811 5492933 801525275 659766099 754264586 117967546 491275033 851304838 887690811 978646488 993381095 791401584 874104994 637927379 741716667 57581282 437537336 161282442 601159019 793992852 918432372 481990525 722190775 499361100 579802509 334446189 918252700 722832726 934293276 9532503 583402821 228131764 765183447 745142977 869693714 137476023 148117600 400988721 663751448 767543046 840351951 639717118 934056178 413660506 945025846 471454620 694140741 210507574 407339431 944242824 999066063 455329275 598803482 487978052 877031416 732880492 782241071 290445099 810218846 186420333 729270932 223356898 813941952 884185475 906212341 767229454 965849341 264710085 342871408 137512554 875117076 939473349 948192617 876958113 987747830 716736479 832166710 582326021 777445150 704751209 767655167 664134177 744834302 941610423 989349702 383360993 612488385 596439760 722501944 279613080 641945268 771071774 852038361 574145190 892677510 924369018 980961276 644183479 809704614 345480397 739333257 539410241 820009754 854579949 968184519 70353587 991118654 817919584 934336413 607426305 979077648 845168386 924742172 11519410 813053419 654635662 841600203 351331599 701517654 872794499 918542065 161653894 737466891 159452890 922020051 447275383 894824409 393423727 909638686 546086165 994364132 818475973 876153898 288163003 374717844 637845818 884416129 180222188 826744817 235216630 842487090 880393640 912146948 9172534 199073204 498979371 522303683 532289519 792934986 869406070 972836328 127935517 846636806 838489731 974896196 70401804 415722306 749518139 898558947 23690657 936030153 862153756 915556989 249849445 860208343 817809200 981281393 811658992 872839878 826055605 989478027 40850933 177617354 411326932 850495714 236197390 500277495 631831136 985611999 939921114 945503330 65591504 460108555 231655470 625689151 200834576 654071382 131971774 565154286 42197830 440440910 425789864 733369278 376423367 662913358 418300766 695216584 602619380 992717064 225260359 321871013 352513721 922644856 385767247 637688208 654978788 873522229 649690625 671694468 630352838 888683482 760551217 995775239 76606618 592162932 866798712 937701703 757701363 974314337 603745502 820646548 371865342 648069829 158524149 581913551 312496316 345571428 204581972 778028040 347703207 405058466 106266789 389186436 439115316 694910596 363330116 458552076 340980998 933471397 257745062 380054052 273781827 973701677 576172527 999116475 526277275 642221755 538506040 954583835 205301780 828617472 462255605 760588090 909677516 915876668 419181750 552821614 949774951 992055084 624304941 729568560 305449146 825731298 160661545 659065739 878941026 996480774 125998561 618758948 582829196 709715463 942667555 991639448 752649909 905720028 717570082 740828560 643306567 909465159 251787330 921641796 917109400 968120397 525823377 848969693 367936536 544508923 632871697 656258603 599757798 733999147 7137949 750484055 801573087 913097236 381653477 995869173 305006362 551394392 683986590 858396930 82222113 213702957 638942169 919368960 287440972 574867092 801133862 841234968 158505256 745063516 388096896 401188159 428454333 602821185 653764486 813645581 758630716 848289551 918878671 925011499 574887104 917456536 990386612 998840873 46282169 541195244 222976098 702330243 35060949 858508166 811735272 972007715 39013274 268826193 7331886 283848482 426396754 928298067 818259498 854506059 12797255 967989317 670407685 841346689 700006850 760924958 746157899 793178611 770704223 922835790 640062730 927281295 110742486 359037838 800201310 877889503 88141507 286427719 758804537 907469249 895351646 917673181 955937815 996944582 546718667 926591175 774789126 862219865 283397141 995790969 795319953 896605998 554946754 917933446 694094268 896782046 841066199 927000692 278786571 574242271 341246772 756092142 332428767 839959482 307216104 762950762 974839771 999410514 549371456 681206227 171389929 540376876 116532664 785806368 221273709 467946541 914704535 948653139 770279198 876339260 405988980 491019636 476272269 700166302 71412173 998810529 986983050 997922387 6411742 53177043 530117518 763004336 185361450 308854588 593998967 668432026 30039890 822299219 868036695 992698402 231836157 535538929 640161881 771870898 708425620 771293978 123412204 987825114 32387450 765453686 643610666 784178832 282695800 950717335 71355472 375274961 634818574 828565264 956245024 968262232 576759148 787584339 418160353 691561966 460794221 622857756 321918878 836571385 508453905 771692623 100278241 692714727 294842937 814615217 19236922 744705243 645184298 984109210 407686529 963811082 318998868 918560128 362197328 610314510 429173540 500764439 201560232 321103313 90980275 625954233 141679247 240620497 765523445 944664300 139398469 771511852 219219746 697236066 472707968 902860940 199629813 474836047 58477342 553765307 368898214 954300917 371258052 851387901 289671098 711132828 921931517 972561414 825062401 883379980 70215184 914236937 361186744 906410447 211329157 868578413 690889864 723110135 852946042 913718612 225801461 310439206 753094711 877761468 76002770 780037455 536891707 960137138 371259929 534699720 180776756 851957629 568385453 686750475 533278335 773983142 91109780 158834452 656514669 741456409 266821103 895373683 754812847 935012071 743118230 945328068 855924902 890698627 488555782 533268339 985786748 995511659 154205644 381439159 994404482 995687015 663846574 959080910 475028744 632473838 560491993 997343331 450938764 879164603 589189592 923131440 617256896 733073248 461760707 534943882 806754424 934455609 453027881 554269500 369678589 799022420 105456535 576984494 571879269 625606673 682525844 882419420 483751140 515226002 805602066 993098901 656970297 838247319 568412010 662408038 7664983 201961563 360773445 950253462 120891299 193572243 920979933 946741883 436945289 721676369 110259954 797510160 54258107 175648837 21166852 391308973 288654230 342973424 481143266 750296282 835730907 879885669 15348932 506730192 343952363 741217114 883547775 985831764 379515677 602447035 970032163 982943277 58598394 722566853 60981801 636004294 738073133 851354531 651563197 983331548 540821275 922607077 540219968 795219614 28935386 307628024 707213763 939539528 421672931 900326827 622570611 738628790 731796760 941880926 91099058 562558160 977522393 996603618 330108498 599754637 87343169 207844775 781132971 942751608 73524021 455286295 286316422 925185745 649741575 959396660 171621161 907722969 824326732 907191770 95336646 355781007 960422694 994518059 276600224 669389605 208894381 980776423 92905899 815913217 319569073 642709529 603047872 881453515 820681380 943300969 115113896 761641957 54657746 270083786 723158940 965312868 136722814 881090290 783786825 994227616 487395457 556150002 509745680 900570144 102974271 798764341 4560336 721935243 697592002 745040102 294557708 686458451 763665439 898755363 563522675 934308504 24480044 575915007 762659552 771669836 950384246 982510628 159294369 856042063 709992562 982201864 923378175 978967101 732421978 896815477 536879572 770252112 97620379 564378797 514258002 640302857 357736028 486077398 191552957 405248010 146474961 148758942 799704242 876065981 280226569 420577780 937580903 975668797 547971346 916980996 475633471 838840260 200776139 651732567 74007902 547374404 344107179 597845329 273489151 341355447 173297795 404044467 809751750 870325064 543572486 631619413 712833326 760828208 35944288 310374167 851406184 935453117 830885379 893843341 143063770 217823604 882420877 894464561 781832739 823238977 49974848 312032786 194574702 246076927 26101598 544193176 397107875 600238019 399582452 504280524 326373619 847142248 889390767 975211470 452802956 941556351 7063450 624538816 137478219 224347512 728741461 731241241 561057169 785941980 303481982 310291747 517014715 557622953 826980694 945905769 255332000 616731472 902039737 986726670 303101590 746308155 347043177 815219015 271838819 686727798 149600723 891824823 417082546 667488726 853477869 969667903 828228755 853628095 317558315 894237324 633307314 899623326 139097044 452737052 231235901 361894506 12261796 968885289 775197436 983185427 175385996 191969515 3144697 706240486 44487053 608247022 168099879 497591594 597585369 834272768 534702023 833692188 215975480 287019679 712223852 899265051 143348566 940608483 902685505 970903721 876516169 936802251 625034038 824312577 258014859 376319617 152004971 802486185 709003088 870964921 562370295 569226817 190162932 379176170 999806552 999892365 982641689 993670312 902531805 968161972 956934263 992225479 96756803 197192779 376956410 557448021 705893249 956561394 821563786 940108378 48553561 927122058 204261441 609986917 899671852 977993790 8531750 262252426 114383922 192126036 952406365 962372273 44692485 544730436 811215577 970096738 805860913 885674904 551150744 916639944 400442696 819344990 801955560 969537530 365293573 691442443 793407791 910842752 828231236 862960281 716141974 994513115 482184975 538029955 24726883 492218089 978151090 993164769 968353651 975008879 684840952 837730805 214615846 729352104 899101756 930730641 712650533 718941776 510436415 962735332 219434292 771400735 621069208 693386964 162041667 933888340 900186463 931866065 851073532 887674452 120149128 839479015 103527753 310528964 756146357 842330773 241784934 811646387 832684876 859835068 195121094 975638388 437051462 985460098 960614816 998130476 407357291 687634393 380750471 945941825 269545406 978389586 488700585 971273258 105828562 231230169 665320754 801393636 380866241 652362239 676068383 979352063 311162876 763851448 470146521 893490740 650515219 728063168 238228324 612191037 500894370 747408589 461938827 772533065 8628007 548904057 810284906 987949134 957105654 992821032 842564680 922730194 353139932 956615419 710360487 848240415 557100641 985636342 218985640 491873820 35923261 133013095 458266067 782222503 93437501 869282229 768674270 877762078 194743683 333066375 157923745 658875457 201326419 737461610 45283469 233757806 842754108 918462517 204950201 329360355 541589519 830399329 729946717 892741078 509290491 979762516 259390665 903306459 541666828 835859982 758782622 819705624 45399293 367512027 302306458 800947571 233771026 484320802 785194637 867994489 526938323 866112890 660900240 807246132 632100907 874628224 885621541 915554753 252542814 794904834 293870180 777035678 33522827 986605743 862169887 971746621 571317316 633737827 211237230 677191078 88170356 538305652 567311340 753209557 541358154 649317222 553767508 754448836 87549205 174779006 63713878 620385897 673937885 986842485 839407127 971332319 61137107 419667851 383340691 530210705 367769317 731618162 526377447 928847837 650219515 933359512 984240312 984809154 37713981 175009745 605936823 751992079 943696034 985332529 992823967 995327034 325787422 693105147 450877131 794054297 551060379 574281239 877083270 944978383 147864480 586330131 379594463 401326018 209811911 279371526 961769580 969919067 215555120 463973264 275075846 700108727 625755687 847168161 776791344 940246048 885622856 989002968 377410526 569752226 931568135 962342723 891921664 942644036 58991646 391033190 55184617 182294331 111493746 266420950 688239876 716675032 88984906 618322643 380257336 739814372 946704208 961423225 652220223 712208104 212879850 463536591 181707898 443625737 113947836 246861964 214110172 406712139 141197715 321261158 61498310 498303871 985889346 990306997 90706562 91310711 341019957 342325034 147598507 664052185 4805012 475311315 55496521 541750582 672044752 769160574 773613668 837747522 79430145 633094932 821849620 833482307 741499264 821446055 99498755 981942343 557785595 630087014 614473335 996662058 378210019 858380945 388369178 542119858 222174144 333557531 3794336 936487888 719246358 971433238 467469031 694124135 659632209 908042787 482229621 949749343 573235104 585289153 443865613 880876491 77110050 863524557 769238936 799881012 269382426 822489494 136124878 552633893 355356091 579100185 901157382 906884440 99613901 296186199 704050897 883542356 129062188 991416214 711250785 984517499 32564377 819638418 818568086 927526140 121638995 946871659 934456977 980365299 197222762 890662970 933325446 939240134 100700196 689888805 371713835 701526916 139598404 433828414 143415909 296191699 495402274 922365081 21915841 92357348 277246866 919292998 450481608 478476182 882430999 975875442 195581213 229701721 23724219 928484860 558671529 985399147 814610975 825656868 599848276 800671237 399355734 671790877 778756498 983147765 807542388 985883953 465161113 829890871 471440158 876311635 200943932 307345588 760674576 805795538 474696916 737553154 349899497 789764176 509974217 575999586 744562312 957456879 736600934 958780179 196021420 871767542 460772929 729822056 69173649 497429796 955292237 962789882 290226765 930978716 375079565 754435224 617312047 653102257 360126065 449124708 402777561 554028450 679712402 693398661 960839225 982722851 371675967 448619893 501823202 606441119 712193682 753793623 554884335 739194477 791499663 805956669 826872630 901435026 128849292 883909429 123449350 591709739 748262970 780235302 813542318 867634681 572276735 672679554 217958667 857181487 308025647 721209585 325137184 451979582 718199440 979999675 351216694 445566308 873913762 908040374 478470086 614360110 593260844 840555466 579495635 864910882 870739292 931745775 345676236 349082602 293269276 567627418 962522609 975238734 492940872 930197460 15738198 168773593 577282148 618559071 639472542 854954656 118607273 933403046 218034203 477168971 466254200 839794356 134793074 482742301 333524792 927249135 692560901 996526757 258801005 396075304 871727018 989858922 288735091 509841100 885482710 955889723 106013016 544883859 591597994 672481208 211288493 496375860 651439714 974148488 939916679 966297319 733326061 998724931 472937475 919653129 710642606 907437325 262553749 611867998 690277592 997657156 38887721 262290825 123949297 806932429 862970749 995193902 958678512 987947375 934391729 958201077 945811889 995857923 639094981 836749967 318464439 380980942 499396597 657703717 319625548 481471749 340715003 762396985 705735475 898862590 346460238 603721356 282033388 814841132 235612202 735598360 643395906 822080326 669707277 846077891 983710861 998013348 172816134 749489486 747843647 778644214 141293659 560106093 744018722 881909873 487077460 572649776 347931157 441899534 723295541 962266465 967501759 976019025 283058612 337216644 133099593 322037324 965771807 995784518 576885045 935528684 968157363 983383847 191694514 377014688 882458275 884147083 309254179 553739155 205970210 487812390 651880812 682373421 886244133 927004804 783036597 823252711 249113173 524686680 820996265 822512052 730331807 887870167 304098484 561290763 971500181 982380792 578511608 937751802 387678247 592994447 517632484 828526476 746806016 962368507 352779386 449866271 140199605 611159825 845579742 974597997 1642733 454403537 313590704 475759462 256344569 524307962 626587109 814678347 348483606 554571808 352031884 973904746 919528527 978827272 388603957 985933477 464547853 838854239 726649800 809385124 99431918 406648767 319772048 559813704 606193814 622449445 36756740 537232624 643851019 753659070 645784200 801213344 847141035 992137109 680469290 868721803 803502463 921468044 916446028 970400730 476175723 818018572 72798935 380193772 565137399 936704676 939616488 961707533 231357751 597502136 543492550 908988783 190796939 453029898 64291340 932317007 789675421 987673834 619520157 916316445 899426940 935173518 793352776 815523090 796793599 991880702 206285441 980925184 570010917 728086716 553037074 902177303 605330758 742338873 398535623 681673692 636879011 981055357 149028309 209405487 801858975 810003997 346004083 499025634 183041553 438668487 448148890 857359446 140940723 186905339 862878189 908113914 510805406 573950868 466243198 941685216 673846312 793156246 719244212 798108015 394519095 795251674 534843097 581288771 994838042 995438586 360244877 817306292 330249510 880702464 840983803 894675725 253702471 497865131 948302510 989417549 524075727 849403032 315890343 859679136 397291990 937952924 387297504 478042498 44703365 705286728 590366030 663397141 631736364 771101239 845130518 943895942 168647198 771565359 423211448 523061000 691879108 799805699 542588456 976523667 538249397 834588972 576064194 692144542 885876778 932728146 33210361 565818962 382728383 672461257 321203618 555230697 189127169 989929883 497485562 617624831 211650146 732524681 721500893 867703723 384816391 428828014 167267924 654526149 10178566 888884810 458850192 891056841 308143761 557952317 234991093 572289812 329697528 846546927 390742855 521629844 224029772 951821727 818705614 961029645 644658891 825469938 795906021 824108480 547472659 762295522 175168329 443205642 698241206 992967618 517552726 879574707 526172673 565977835 645551784 714987807 205415752 312387561 795837457 949566365 141865158 700468374 630750728 649239574 279568766 918888317 157425178 570097573 488685715 847078780 872765854 963160676 383851209 537283782 265760396 274080900 497395708 587824414 589753316 939372204 19017791 316403126 620947904 950519207 422526193 684762336 954223567 977663626 540804312 990526241 167112490 317501535 996183095 999540901 646472176 681417793 205440992 934801820 872627706 990096655 414193383 715651589 323472300 729155183 152778475 348108759 738382264 972572806 453912142 978068650 330277100 724665370 320114423 337574302 312696898 534014743 827798328 922409120 833258968 995068330 230733425 254559781 326992755 929835269 422415326 727178606 303480759 868198169 26556645 543179536 790350155 807747342 149040745 499423046 872147501 876187392 368600067 584685124 822641745 859959036 855878153 875016956 74772370 140272910 630021091 989036901 4172945 83820303 13251754 843364908 506797615 568226282 398354924 682807188 543261584 647763844 592817626 863179242 942619872 993840776 524040840 543739089 467189794 716008498 755461040 759853891 530902320 829256481 254799577 433459133 213617956 243597186 388708616 483057713 571943939 684446047 965773032 978298314 849253662 906876428 343968222 799305469 785699508 948438868 400001316 855463728 259095743 319849520 124033337 161047909 148873793 639199783 690508489 766908012 50514975 995525942 689574302 822834215 165854612 798329696 876161510 894948706 710812765 926176518 429945210 819323602 64101639 176407474 113988558 324619947 53411682 268523103 64723968 497139795 606355715 848602708 530178712 543561018 553642513 973911511 800505951 974351651 289312354 335473044 854794701 932735011 965529641 998280581 778219799 905294579 953708546 990739080 781767314 860625851 536253810 676710464 191360493 748076240 953887894 987814902 819409226 923478863 630278948 698163162 640988950 855292558 830422608 996753319 323813230 753274271 389791573 547460983 191586002 295857483 16159605 119663752 485789417 744980205 716596594 847641485 998652807 999697217 198491313 867940520 809044185 961537374 49397466 795787822 749164072 978873657 213946701 919545195 439986610 771526717 552885953 655049113 269991550 440148409 95144388 551061385 861437006 897604186 467653721 930350535 692288923 885234963 920424892 954835261 676117960 723958889 834489641 851623239 456254833 803926364 948478158 998375630 233258764 621356238 454080831 762250907 425319476 604016077 209244120 874070200 542324723 895106469 146809381 747163600 227736118 655650860 180180590 585320031 321593537 689182139 210253362 352066999 46493793 298224638 5979239 896244145 704233797 957017709 492043976 969896872 107757827 156680762 909668741 939926585 518592966 565531389 657763565 727436679 589162928 638802920 352404575 647900424 975965546 992564756 538123914 652648952 746502590 840718670 847579245 852418093 373747480 930137008 558516879 617256402 993105455 995559909 198657898 995693473 536053852 837458806 33418072 866705738 363814938 891104746 560476354 608957398 871377292 907645587 186430316 217277712 83229338 917859280 742625821 865585482 393980755 751696353 332463728 945647330 338263996 863683894 980765813 991632055 237315565 643132377 455559313 902307454 107322130 782553279 63264524 590008008 384705193 445576167 527432356 929824903 295581826 546696708 276356484 730575310 305049356 429895068 944283460 962062872 118411799 297384604 427037050 700518214 240420525 640869143 660545286 763298302 961366267 980974233 970502397 977364550 148821915 357254750 168835305 987594438 109373576 259114781 468956154 929782454 19820761 918979996 166677965 589781004 133079894 626938134 944247500 946656931 333320795 881646795 680396254 901305140 592374768 851715381 435190505 488692231 472311383 561766492 364781628 671438549 775694491 996653644 473489765 841210442 235337419 903505575 597601095 980761535 846724101 904540958 231721907 736146321 378217071 648880054 662425309 985387689 146991025 351499433 44450355 801920718 346170606 728879060 638959273 794933742 779635170 957738208 27546461 800553506 830189176 943196107 44437191 238025032 176462166 490491106 850664572 971854037 226383109 406179543 344819884 458722168 371613068 654893210 320233397 909474613 343738326 995918964 809904305 865133995 460449758 954198101 50602965 650555885 871994111 941759188 910793668 965096868 222193666 755309598 414849446 973267240 358597166 873913189 409840590 764071908 466175670 849107936 997773860 999790661 791099008 823879139 523889771 696807096 287436368 323623060 269721811 621621144 401362142 842719933 778100748 782859975 110130882 850407787 892157952 953224053 539895775 553890041 526361553 617158805 70404418 581042455 69268333 804968420 417340386 711457169 294509442 921583664 5854894 861088224 526119818 662500923 233126617 745342338 575011059 633852924 574414935 725915970 972641192 994269548 482472861 857353668 511729339 971797691 980542367 987255571 257539569 889962365 890360772 921477335 417353455 731395358 388453697 411672106 367615119 648080061 617733025 850722779 464082176 906426762 274050081 839995130 813589449 970626904 458922803 789565097 471885805 565649075 193165952 601037911 469251548 648633604 857676589 890346406 582522578 585843102 84152606 122834961 59743755 907062752 349912379 856769036 441595407 876486118 278527781 685822851 572760482 903107323 519927525 872851495 345767789 744756642 345586207 840977431 318610948 796373972 377390804 411590457 851099236 939742893 928322051 970481441 976234638 979392850 313353667 800052035 956402773 974176636 760041842 762224541 884767361 888287273 842048797 873560357 794999211 941757282 412459550 843581083 130591195 644087108 210046404 760149890 303495857 556702103 429682858 726501361 954987839 967897569 971323868 982608778 254249328 718257965 657018468 700289603 809817087 973428410 363403561 459142427 56461530 848728719 429528403 937720170 261474567 857061330 149244720 628263349 143163060 442291365 535956349 820032436 425645551 686428246 376443739 890751753 594435666 755850486 687738022 756045834 208442720 879928703 226087742 678877717 126407498 985330567 882450060 953288231 761676483 830650897 885551476 989507874 770495125 966892326 367131607 800465973 943163404 984334761 294258169 303496960 797482838 988567534 278664445 422359030 273125152 538413150 411712265 944408614 971283307 977437524 780294185 799982028 634134945 775478282 703469218 801438892 247375791 738096354 816281596 981377221 487485688 712186551 422502839 945322368 180244462 857191458 484898294 691339898 172588599 452389527 933937506 991619163 218934007 897941252 480453035 483969212 29972670 757400643 879072386 879724497 835542021 944955399 570157172 684060971 854062932 959602775 593084488 998803766 185143896 849669584 247501642 452341708 420334049 570302396 173450865 462620050 372860179 461425149 598097144 856229011 73998234 206158686 682238395 862487451 900695199 961830880 906570996 998194767 76457090 524579192 714094116 951131509 195761644 474771004 672209275 736815686 473461738 999511759 339195425 946308613 827362530 839418076 419970832 727367680 229128555 904777648 887864749 899572354 607663351 865127020 771157946 883443092 73886047 810103892 75622471 987403204 687377869 888452425 47079804 642369859 744049433 826975092 348884977 485462768 367951950 874487627 466784159 476106526 304156143 986902396 826825487 896074191 389452261 700998619 710808469 986026442 596928490 819096792 809460245 885325415 528177494 629930833 461237110 544369301 49191831 910318889 838854501 939765513 31501670 859151515 542728428 842454901 437190709 899642961 224546958 438320494 575965749 777354141 250740152 459447463 316539983 345434609 870338059 912943006 830553617 973264839 681058089 750751459 467010526 606961397 485279573 731122211 368251611 648390394 119316472 312520824 306169612 828982013 540549220 876999625 59957886 856104872 116473887 316014808 108751858 597324124 541167664 843066769 376263403 575003685 619837762 891451987 124383529 649468596 846937133 888190182 902726659 935244549 48242743 235875012 270767861 352265383 995818751 997900529 509027928 563337580 107427217 215325951 196846042 719421389 161932615 352825589 247849503 317674329 133215982 710266225 133509264 187069045 260677945 338576891 759987944 913406992 887889520 983009158 100865654 239916081 524008314 878399890 886960870 943036875 802063680 941993058 219739694 999378414 184366058 882983583 377122057 954429806 133306980 836895547 228601240 360390647 842044039 972723892 13623982 223993664 882531125 961689597 388229097 678920343 162760534 815211580 385777721 639444838 857841486 999311010 190129241 306962304 565799270 582547592 826901533 990098054 350162990 910359548 742723175 915374694 627759805 633386459 877831039 884358386 306099945 786869293 302270342 813802085 168415233 247026527 410319370 741392487 4448688 496914898 515311183 624994897 448328273 874761443 197174328 252228294 12937922 827440998 796566943 962557675 208379106 713012706 670922406 864862750 173122896 607008889 978991485 991927754 473717407 631791920 830302228 845212979 973209714 983297340 547074852 710618282 431930334 976037675 741351252 819620032 544549706 925764306 728434262 883826025 119895726 227674658 139240135 526624313 75983293 470384328 437498223 706208161 956116895 967373081 513990691 876469794 780290431 961740998 960656594 998101007 252066837 412479192 84471858 726972881 754643383 903989578 650042337 986170336 116762370 856449000 36252539 933789901 70629317 982290243 783631463 935692207 207750620 758797164 50907826 409534268 307367737 953071330 903896155 969474155 827473595 851037455 695074222 819567854 14792882 915203640 255449985 282020611 764107345 821265847 38270105 902790475 756568833 886263180 37497489 905704850 999273557 999611341 652285950 700461884 365118202 589582505 378839861 426943543 928849038 958073329 330411906 442973814 567279906 730970525 126104670 668550023 649074675 883647773 634046781 996662885 364860158 617370422 642776193 868958359 417463004 867087667 200184021 920164093 520648492 936377297 111268258 414683979 661841828 781869008 312696749 607877627 461706680 998143524 953851910 956001519 805302853 979759858 519903037 828183052 630728488 805334473 726741794 853775549 252101540 614364977 407438046 946783278 460282886 497138694 190521717 242996748 946109585 995658742 369322218 904284119 11242849 890136787 193487906 950909996 357757199 576158242 468801547 724204294 564411091 833539676 776021456 804610180 735620210 818681890 529858742 594109099 194996523 378895459 491877931 933721078 244598705 655124642 752476744 752671617 219950955 580299910 221014728 895494770 187417595 796148729 669031372 948413222 532993802 691333395 123190420 543814751 471705309 847115490 933918915 951561239 836320227 945948511 821692763 857460199 719693854 824449293 125924716 366651029 778734187 880683667 352675895 984403696 55017505 102505737 759174014 873696046 549019643 845091734 818628946 920706234 509525795 642457233 960942596 974266482 77972543 116852638 396181807 798550245 364461791 417432456 12547892 672972277 158919272 652377033 319249222 929746122 252892845 378420956 141191332 196293801 721808907 737742912 315113905 686206477 927134055 935102526 4213198 608787892 655839908 835663659 532129144 921328695 899926040 971513911 233797924 743223473 427663871 497515395 955150723 977856652 785202221 805475921 317359191 854965161 715312960 767013390 32776467 639399486 565563935 802167158 106456140 894695097 384939659 444364150 594846684 785092911 825653457 840458977 485063935 988992843 867529858 947139500 319162043 796377198 8409303 660098123 565233481 854535455 21522901 193391570 211010808 535932129 467653780 755493874 248243174 948615365 405525603 851000719 234574298 452086762 607761824 769264964 83159495 475733057 560829793 662255196 562975058 810116803 714198956 864545041 188641235 504998825 610669505 612986439 539321696 679207700 287670159 989527172 669315146 907843989 550229849 586547381 50047317 509264251 982611563 989382715 155933393 685482749 452458592 721834190 512440872 608980131 521360256 572325850 482462653 577681828 493606265 885478659 635979539 917777016 988594452 994078488 109106617 732216592 898238742 949416228 309324126 891295556 369127684 388331278 402662633 987030791 357188866 367752545 986861269 991551193 88734850 174377327 760576330 867368440 152855789 395978527 838394321 980166345 342891283 362519502 603412796 893048804 358502379 601163246 194085856 438963408 467117809 474082689 647135549 945966150 567738425 596401812 983243445 993914211 424199960 885171922 461395929 736311015 232532305 914429920 720113646 779115162 266169659 636802988 155290403 362879629 3610257 303808374 369025686 412670602 112243741 789474586 813173227 929841939 457893134 983537305 331352197 610257733 95729860 871081687 639919345 674250291 840106481 854386002 194109802 379191400 885944347 896699414 19929143 913583986 127430091 602538784 844274634 862739607 826505277 930937984 645407659 897964132 47578429 428979107 150356273 833025152 312846643 902502511 112302563 761618851 647983689 743753118 153876236 943854832 586918897 742738362 488383519 781585128 981697423 987336178 273777179 546059572 774511122 889667999 462633973 867561457 653745361 867457197 793504044 973194015 189866235 865995683 484686764 547525359 285835862 449880599 186753472 698824493 289142534 350352441 719595141 959385599 230935848 932782077 582865059 592796749 192166692 666609604 189160269 932984740 901400814 909571041 862522342 907940062 180085549 830201490 15868012 296165178 199806605 590769989 677902679 966560899 56360451 211718816 895557850 907609745 570768357 687241582 689882512 800304112 741805966 859637935 811169223 835962169 588046983 822164065 177461844 955465385 563099859 807208779 801008115 962151766 701118250 775171047 199683256 430684757 811223408 878007751 949055957 959048921 302893715 493258958 82893231 107485587 264858331 874229691 984240701 984871722 808891818 962299111 992203779 992709527 534819832 740838208 542539000 979392803 703198439 856694912 134323307 144476117 525711708 665475024 390969385 661479127 785114202 940316556 444741597 595436374 179942913 574632514 367930981 518447180 911823222 995986144 734068730 925168464 214201954 597969764 512204248 558168138 706329330 998449429 830803528 913852156 95550248 848137871 494244050 621894390 82004774 350762388 329946599 626696812 541501722 834674405 201814044 886583198 856373433 912195337 582327635 744463220 752468837 836648973 489644656 919510691 255733709 417704535 158587747 501816851 210934406 843737233 64755879 386961071 472203632 875265358 943871163 961376356 548281774 582433802 593106176 947248493 526469555 884769093 389449309 813155405 263326584 644974999 740192245 795674163 358304703 762458269 896431086 983280921 219445116 341437178 613196713 902719275 706849927 712047255 318989434 477314610 345127300 483117378 356973 497678656 838830161 914983755 455751101 478844192 401118113 951499828 135865021 438016734 106062816 281498664 114629325 762478788 574547583 814501904 541312936 892096256 297494369 908070693 539291753 941919987 230191800 377169246 785199195 841771485 406383334 503880127 826298971 856768129 46254937 450179471 959686572 988972540 701058460 963515047 621047168 698729411 640729072 932415617 674612414 896220991 493659534 579524882 580106934 679335132 594245854 837759792 942533600 989495376 307596408 739701278 709665412 854587093 934301481 947171512 945089515 986999163 45449972 322056868 141942914 820676393 114880397 448024500 700630607 780771931 156902397 428568176 111297544 625416037 189847046 354636148 780038153 996934102 774973721 977584279 29830029 769098831 722786309 938337259 168129736 412856296 122857543 531175302 458378062 936284902 373736874 590021835 134446606 602202238 794774426 962169655 880495787 996461888 181260020 507160504 833236561 964270304 134574038 770387177 273646018 446419901 318918101 872986403 766785863 981741140 464075071 824730703 886573953 924808035 146203753 587386760 828635196 929428607 624337774 783110524 245152993 700672181 722615415 859882958 127829474 241276434 27558574 114555564 632812746 856921055 856868243 943143717 499883977 956390042 517873084 841156449 341974672 998892822 548952101 770442926 236819275 662403207 908096720 980276453 3822113 86873641 15368036 82038221 919902001 960690883 715533153 884102382 465050446 938595942 201465305 447880731 741765717 963216254 383400767 942435184 403670448 472375550 32347754 33346348 858163029 940819066 875363391 927957937 954974610 992397102 413353110 757423132 66911921 495011805 231401889 474809624 234373587 507964787 42991442 404044996 709618007 728209288 264241109 755580222 947755276 959214675 359580951 745455370 405438686 758957824 216553614 644561023 256945488 555213618 957126383 996893913 972392347 999201096 655834965 661117488 410198922 991366450 508811112 574530220 937761939 954285537 551461757 710662010 651010036 679591053 176052584 532072871 459935193 678425415 421804327 428353078 361159095 587224847 694493526 881426751 666216260 963906203 123057359 737285090 816932220 983801639 417589374 926369345 674523569 958272521 769231094 796984742 196106415 389051238 725068448 742067595 678605155 855654541 745488963 944473302 278144975 335208195 972996344 993574978 456910503 545212391 355877051 478846228 193402598 624080372 280160798 995308249 654495650 734022345 353625742 757796042 248169613 733379882 704628309 895262010 608361934 992372276 175409160 222624104 309720258 446695243 41760253 863016740 143960689 212614380 933210401 941557150 670793837 728235178 838249553 913386005 266586017 637751187 212243689 921506367 261272774 558519065 31236733 33514427 283003846 996843678 192783814 566648845 256024983 756757329 232974518 253332564 45945115 953878672 892942187 956134112 38192703 217333637 601991159 760837034 716749578 952379065 295602425 356141708 970671983 992020748 448767312 603794653 382810922 772638504 158609886 782112432 890553905 937347380 329471253 678714712 26436890 463171225 941917696 977402161 616612284 734368507 512935901 552741976 846760630 907107987 405772471 570871470 712466283 908988941 159635486 759812452 708237830 750110649 655989709 839277728 366680935 804391659 309289991 530114352 182810445 929595248 225642958 773935609 736233300 950517064 243843095 929258321 695378889 880396762 804744776 818432716 654906086 811676684 494414675 646835074 42079495 886461242 460462902 778731303 917543168 942685121 835087158 912017360 411630190 936216381 697912670 888464597 531696318 996513520 967416330 967962299 886990699 892943186 8798460 765376070 201745465 434079507 509623825 885288538 341989557 948472331 869974077 909019806 942420351 994096896 630102374 927282525 75601136 482374799 994821219 995151440 354805295 780907476 41892188 415031580 453569971 903676119 645765558 795353247 554888294 592130615 652068846 941072506 716648828 759658952 253644490 799941643 416109335 806357879 238005549 903995997 996727157 999414036 339518276 956647354 762004184 931584975 688300530 777880075 528493357 653691622 130389943 334564123 169428812 229386333 781863036 901080220 466627309 564894315 534155429 922347539 12334378 773513495 605356180 784164275 691836953 758034163 189589060 683023190 768014008 901589329 849406486 998182875 132453861 695212995 332374966 601865769 724977448 924006968 457769657 989923132 728494600 769007831 455297446 690856948 520505354 974600084 401079296 468045240 701181652 727249002 627708641 855137280 256069266 881349584 679678746 904542806 450228294 834524883 304773256 976779320 168402653 710152647 888905688 947685645 919117604 983906662 376833482 634848838 371706997 537005502 138373630 306934777 757808720 802551937 974759498 975406662 891815708 911986431 203361207 259035877 597912634 747437855 292423939 372085704 658499374 934842272 681667118 799168122 93326815 166046253 494119037 597958241 73144164 664268166 883420285 946921971 275726635 335616184 981415327 993394306 207413987 518782694 414631278 737500892 999198208 999280342 10471175 841650467 78230710 469873076 768050909 773935235 8646725 751353335 583090818 807830866 426873693 986658924 511700337 687222219 876892366 952678571 412256269 546852723 171752392 936568701 475771879 987942329 178153411 850956061 20839849 361217040 425803575 952298420 231733249 916417616 95660113 913727112 196885954 427889126 89796277 581497350 956313063 998683914 386212320 659236104 186795583 487803208 876209379 928363819 495711398 975902257 828287860 872819500 830018312 897596727 794983997 907624944 559997957 996866198 747857364 919331917 696935123 965500011 676316252 946923771 852855504 958572451 112816712 310112612 663320592 964358484 815929997 876568090 204827444 207339140 305607785 360369529 747907363 943247725 94861485 912795933 127160561 900350154 173247665 632864949 845667772 904848725 996237141 997980447 492234327 784625246 998675780 999545417 493314961 514066093 411792069 611412283 514922904 973719490 727642585 973898218 760421125 879800385 341511924 819204247 564418789 767666299 961775172 998005630 570945143 773130978 477493438 666973897 868585463 971301498 369509162 664968325 215113217 693054925 998911072 998997460 569262909 645587841 657657583 685327280 37500338 556645887 663935767 886089184 197096287 994397999 814891750 958650603 626644044 753502737 825947825 844180340 850352854 861764150 410076732 484756521 781429745 873350635 203465618 787284245 211451034 959485289 483325919 491220733 699655284 830803414 368784521 653716287 980506940 990709783 352287257 704004006 882491881 990227094 545092814 546268833 373810170 592820737 464741742 742937096 691669450 728647565 208963367 820723764 274508231 545135467 913442582 958887964 633419929 967622195 223349606 250181503 69046118 867495596 69538307 236731263 209578980 218216221 190097531 756435701 794507014 905020521 443500989 741914426 278200068 762196505 544436077 821090909 185371862 918072643 863775705 997782253 296075331 926251240 580498143 820214939 438223986 719740752 134729864 860705280 517658831 698907621 910514051 988234783 655932599 718340385 46407346 137870255 580594 140051498 897344975 949113168 720418017 982319521 498167289 746394625 557944090 991658929 251517345 430168955 710862863 987795917 860018516 962286475 193620948 281433872 749963406 961103325 110014854 122208619 270846874 658902794 792739843 868338772 578124554 645707086 838402844 870779101 555715775 852939088 11976644 68623996 387990632 420992792 827331388 911612692 331602671 431903689 493764877 955424662 419889503 765228029 385924490 790700168 517965000 630841854 682192748 949223238 889664502 976784737 591636865 902503804 702077512 942314898 426370798 770346783 66485890 796112884 439370707 639662063 492859790 967908384 755324212 878520339 41801099 756529849 745638175 933034572 128414783 165489349 289752562 773928156 175798962 944171637 853260673 967533698 432178030 530671975 337917776 721192172 743231179 943839613 377915395 781565197 15425117 297148468 47684957 187036433 828442077 944121437 555277544 664311246 472334738 819024922 780240723 827671851 694662402 983378155 725454378 853938705 330150960 341615098 186306576 975700075 172305128 429561020 97727043 925460599 830149537 858292608 846057116 855320559 515575764 732146034 503456134 510114272 335936553 416938773 907585460 958321009 431134621 690262333 93241821 586712347 402312906 434811463 7803705 881454663 629928371 924746802 736289830 983896535 353474041 382345202 872467106 917704140 329073462 886350848 758629332 910277148 146374333 700026970 734060903 821683688 68710202 241259277 280921 137282073 867276236 894959052 120417636 291747875 232748235 756614697 176852488 855190664 269002480 569192847 84608480 994453587 675480254 785672128 610136205 797415084 274362753 658177407 704733859 897223916 83660397 386108241 119063080 262703813 102935236 329897039 961108040 976283481 834723061 855214154 926143501 973110006 630775916 868284162 279567730 439144679 86444684 539554788 25311161 413327036 360903287 970860006 555420307 790515463 48114916 138635753 503433923 748507318 993218197 995530983 343941659 938093866 705037414 962577970 261445790 525159032 810422977 965365393 320354098 548280940 512378941 666772664 760546740 884500327 837221795 877489816 361792416 803430185 487355914 682353708 240811654 354865441 830235967 878791145 155386851 597030792 369245665 912553631 42198507 969906852 337893897 599530240 603237397 937206615 381735735 905877087 140228980 918974032 267565805 297769998 657305510 711647222 468871078 643954313 922260739 979623930 587768132 658945417 818228069 968807624 812595993 894287701 711907197 781934178 126882718 450467738 124712785 978362657 30203013 910092355 809562341 850725868 197689548 983286029 696227296 832982564 281362752 714606958 848396300 905079094 61389421 834105565 214129790 406140481 747513579 800924150 163867452 796809158 810501330 911101835 817548627 967296252 361202820 486859907 680108477 931616269 772528050 879271982 574191245 846719251 849583509 958860494 977216686 993924987 131007174 459780369 516815193 977925304 77653737 906641488 899694044 963850847 607214718 676502927 347765734 656599267 726014303 741897231 211850396 296227252 882463663 910994045 302140864 455693259 605385170 675487937 98280220 807254156 647691174 880516844 919252283 951907159 883288854 959719689 901982745 965571078 933615856 947595400 264081833 775236600 824951723 930213590 978765322 987888917 694775526 835751559 263218686 541803476 196753387 392427549 725275400 764313782 289277714 819291440 228146935 398899421 84246088 659412722 542740416 867681312 491454516 752838406 451211768 567838493 206258138 394457380 681176682 925584521 644655716 783081875 653353794 885635461 73343034 423643418 106517487 603531371 732277978 775156485 765479147 828801593 957351917 976018263 118617393 289450355 327062010 945448731 743751099 801269238 167079208 364550241 699050767 904661760 840965221 914564141 770927167 999922608 795601261 851576526 938664076 997095408 699419139 777802523 703164641 961447051 247109547 953422768 408670211 969074721 621535063 625122915 650481097 985196097 730142535 869850835 97228328 731505396 500794664 693473816 488623490 650186649 471563916 893158850 671643866 780858517 718799546 851550455 969517531 979627616 788892787 835782461 341771180 450000693 985643041 996839994 997440642 998212579 256760580 718828831 669001022 884711946 737546459 789146792 623888961 805254930 976345792 992434708 993665442 998373713 917443450 937549143 228373353 666944158 965488581 996982524 196858864 553182415 64577813 790832598 240439644 713960012 353713876 623173781 497076756 803967356 523284619 670060149 865544885 932237110 211468411 224732574 704477749 736958424 395382269 667382533 151562229 705431633 792566613 882621336 315028528 531035022 267412402 571854132 223619625 936893801 227143566 857587436 275026774 665812801 274944210 637598141 464607436 931704829 163922948 525497075 417828872 933104477 272714224 694713499 226433709 598689339 197593947 648160636 79137504 124357173 7896124 131798151 803751472 839923681 765266343 813639208 992843245 993825420 389533901 921138960 722658302 955058956 488928673 697205200 613586411 682606038 593935920 904437098 423890806 700626670 491671373 837944256 663759458 926933609 335159298 368511501 570427460 671337660 580874180 744107472 576971235 594912258 750353829 952690002 688145894 909053444 536436055 886931449 779300995 913615728 387445927 747685120 677268237 876739839 816265040 852924908 993340565 999545552 856202641 871109943 748727188 918365615 271571179 931940057 486817902 558780996 618075590 827538195 622117900 654682458 510908841 784869778 501814124 874512443 922547036 990378650 957705004 985853630 14702988 969450730 693643468 946005750 748629864 791937343 43538486 586856641 614221572 702543830 768588404 863832487 676714532 819026688 606445613 750346657 370599789 595985129 461938880 643706114 939334181 960422313 609404448 802212201 815576801 882542643 720394837 921772422 748206671 836487400 76962134 365993170 953200224 956244406 212301575 886609638 844361595 927102237 125794844 670503047 425591795 527531511 443986556 784887298 146157565 568036795 380361941 792299614 82304458 627368311 406704749 845099801 42929911 489837191 412969951 800056723 926848044 974661944 507783083 796273370 507761751 602938667 650616669 803418447 22579301 44609673 476035190 926683045 974274449 987274005 331229419 544606974 495621339 618917755 907844920 982495013 657792528 721465062 257684940 919648410 832743418 852045977 836525439 867171559 910001294 963295315 499096009 521751989 532667781 856082511 716049303 914420827 548353918 565086856 902193069 958945470 382508488 462146503 203526803 904651408 361380982 995698065 115589089 879468160 731981441 817586905 978360841 997363389 150190387 212984228 920372752 939901760 531549383 848202594 619656318 768620826 680853364 924959150 970076484 992392328 506135438 668116422 533155959 596156783 558448002 855682081 587506453 764399492 822094996 923523911 608013201 708958401 89509790 213268597 622455427 642466602 79769101 357739332 395536537 579003548 341706359 401559891 596901739 715797030 216228882 442388493 301072230 955374367 528396766 961115630 528149257 548089731 120163967 218827206 999981507 999981840 728947467 820875885 495004403 909923852 267264536 274294183 917621733 983935486 920284 788819165 850329517 929338391 198239882 428159405 592571868 839331545 767081081 942766905 887383148 994106056 340242448 497454251 742274381 781816916 284423121 896825761 579617011 829855183 740073867 916066578 117718772 429666271 461943073 784713193 810568104 855479781 839950768 942299428 55343952 282916575 79650290 175595997 961080497 966748544 299160144 682241967 590682438 746424168 405936149 634670846 311696026 814131017 760576566 824333965 830887950 996763443 422264527 865891116 254467638 781779097 264051070 924320358 3871311 20857104 688573655 969969105 965654378 972589647 602929171 763160613 154393353 707236821 909363124 971448509 749935736 940254503 654132839 885229188 12039148 334645741 251219654 375883637 215203694 455526308 443380577 456180752 463681358 826770977 42577728 583369868 694404887 793261908 835144533 885567641 883855786 911902131 140056320 946021397 88538142 354782328 929290812 965512517 746588761 960576674 182340819 611371140 21530828 938580941 168096844 818878793 540371391 815314910 745022340 974547257 910911775 966159341 855699162 916890200 983191225 993244526 717929892 902731324 395003208 852463252 853003423 918754364 76747886 935141664 856029210 992825878 521620406 777191263 179816579 718293423 712782345 803316357 741761356 904813578 227621821 481031071 11586950 240587585 561361432 745233413 760649493 931358712 250843367 503419407 559573635 750426120 917394361 996451209 363701308 526629909 575951599 815924033 960507584 976743560 914027620 980596370 81485842 179107041 199346301 590782047 604063053 904922189 856364535 908791509 692224698 883712293 224607471 792449808 656637808 864737173 463735436 892538710 906626214 938767740 423878227 609011690 784065270 923825709 488037006 778671882 828585191 939344971 254148809 420289420 20636987 994727757 519402212 960198879 257206194 328645019 989079511 992343474 908698403 999005262 602004210 804950456 912136881 921944525 26677581 337839498 32384337 483926901 924600026 991402389 686801318 830648650 122066730 718617934 607020450 917033345 365380097 860677564 877911937 956043802 729332070 867537725 683668319 693194531 7604033 423231866 570090086 762155676 689954497 939375211 762789315 899268235 444238180 478716482 551444023 600082006 115572700 586675059 866737294 930397057 728433128 952295823 377989289 944289694 594774726 644991016 881101740 978970386 56039657 640518026 653748014 783472014 374166935 536273280 99998617 744046289 160274315 867921540 500478555 824143647 628243368 927664399 628561974 655126536 589981587 699096261 739008775 928015318 239657832 528548865 228031030 872329216 568718573 880434613 566681569 644136060 792264199 799655540 228399663 874859974 891861355 939329648 786972380 994844276 441588931 781551912 30480636 651512264 973015628 993927877 999909016 999990690 616289637 931060724 15798296 702039164 7603960 541600957 649919754 799036326 573545597 795783121 72295038 341786460 161710010 838680124 188605652 815606803 79112195 445549931 104036454 837286939 824240258 956107262 719490702 996739218 893802933 908344426 231646209 671655200 310978228 356803770 566814250 933976481 909664980 914828810 934629758 968524754 266486453 952352717 95772722 161577250 381692874 591419016 748617981 866202701 43449093 761861236 359319843 640694701 991245947 993398863 649661442 687198704 358497661 800312132 719763887 907772208 130052804 436568061 962742203 995964152 194517454 484889790 531970893 584189118 638511765 703303728 63146010 107182917 542905509 603261514 589308803 920377843 479149640 863522636 861364986 884022490 937055660 990411889 780826473 986898011 1323912 68739055 192225262 975307278 58476541 316139682 63132639 325577303 294456684 564191397 966913317 993446104 107297731 497395743 637225222 694336157 650890937 958489216 115326325 808220354 818216640 966819447 706543157 890676865 777043368 969653842 205725211 609104331 101387950 127626758 305111148 960586116 248470694 457847051 233922915 540802014 22524893 767994871 86887678 998741482 607531753 658860822 431877592 815297564 827817414 869116382 498988453 610035074 214674461 480821860 86630635 988590178 130332192 209566214 852478307 863952180 975503176 993868886 368199738 783416992 417790226 885768783 482572450 851711198 765088966 801999664 757943339 973625532 915472124 940023339 297467913 736225736 538936676 759860523 415598000 450656131 805640828 939080577 267762211 641205493 71670977 282372019 475570752 495423919 591277217 691451965 203165975 353540428 815777587 882124474 861578729 981985277 58526389 380620428 987232445 999970053 691689103 760565424 851454576 901192880 984940372 996105977 109511377 644694076 324633713 519637526 285224952 381702255 427221347 678775841 877704417 993828666 493406510 758436326 198010279 554989813 404642033 667505814 437585762 524343632 203104724 666119987 862421138 896645567 273531328 410277419 971302918 993486451 940783837 977003786 278785257 332333954 159781958 271292247 884528287 993569547 472310687 644291948 692874127 774245430 653517847 952269624 518662805 742433274 874719019 907326053 399997311 780752766 861379496 958301328 215714609 286190958 471694138 780497776 120336232 817731357 742875124 834481385 428675502 689912587 129939404 452499559 898564082 903599580 901723857 988375221 606574223 785268332 421316993 792471728 363277928 654175442 834959672 950228104 145792234 902224869 147743288 151034162 955177541 985047185 331515018 714632432 6067781 562784816 140042784 739584813 727567257 741000355 398380164 905797962 674592230 730096856 64170427 936068551 615018111 646126155 372425770 558967998 20392248 990283768 244958370 725607385 594293144 749342926 844156062 881195595 520688863 555048815 884043404 921480600 36600862 309132892 6073782 858451685 75496465 879137904 193808513 505376836 512821633 925826846 956264750 964716688 688295572 688566052 871745353 885500834 510614870 838119601 312453428 689519360 122266307 902604899 465405901 784016975 373861463 715026444 661268680 865559607 288147217 971746928 25343064 314538879 624694455 886236923 355036346 757421461 922694630 939194164 624046678 983046067 478915965 489545475 607887837 751394292 553117650 930243013 484482094 744856893 718340201 896561081 95988794 930656019 848508104 953890996 142080997 947995698 792447678 868240137 117888311 184463003 590200 464949132 629103689 930582574 343220099 699233800 5769930 323975512 84381318 554148869 418361366 521773173 766613568 911426219 884344527 965115826 112404447 946464921 459520662 720805753 91152188 981452382 595549373 828329051 952238914 972964933 617365720 967800720 775315934 953399257 898581050 906754506 562108364 754704253 448598933 733238040 531344877 606685499 67855442 353594961 583162368 733859271 76013216 986947003 787535942 940197172 432838549 714957221 846957758 876398532 799279212 884191641 568446380 814101863 357686090 896527002 229451813 586829152 109245099 371186023 102454723 974006392 235929319 973359111 463408903 723677031 690047305 735406320 492639160 933294812 924775968 991133348 394805822 938511536 75906566 648241919 734640548 743724906 79086352 531725152 949341544 980922608 182367813 225008560 584451484 801659748 955687442 987761303 395593537 592136248 671627908 843119994 346282859 389663778 65625350 356862476 702742741 989183196 683082260 722954125 546860404 776561609 887795889 917967936 390938414 888467480 737982306 950592301 120033071 142442164 275903630 544057278 420835137 681058469 629011358 853015441 841729132 873098505 32630012 861995433 886260251 964932156 187998964 668944335 938806995 968681993 787964422 946378114 551641203 920684881 497952107 850897059 825153040 840345825 472770361 652677596 837914284 992790524 640060123 735180540 251007678 271707482 313115312 535197877 882125966 899229146 639907213 832393472 841432178 940471156 928916345 997142147 184834728 289769707 595327893 633351177 795601376 854155719 912707456 936585422 777131099 912528109 212412506 432225538 252345317 385033416 150324339 982349652 993705383 998610023 239047176 901020711 500452249 919623908 151253841 825314075 732470213 809404117 46563596 246279214 736112226 882437001 418457258 842864273 277795198 795085846 487035840 880042821 906961872 915582701 155466423 169575833 475171858 618795415 353653038 985004602 189765465 603777664 568220777 678517486 964909989 975538399 883693801 983813011 306247028 813883837 629246831 962829956 861446564 990384653 534336583 946915902 53886929 983653400 874029408 874164554 159045305 276160863 631317961 808059343 916687970 951711905 325816905 744807596 161174955 754322899 460971934 813959948 555860551 643091597 775482739 799617165 780993637 888178237 646198686 834322488 998719605 999573344 901339337 928178879 725677278 984656658 627676447 992954985 962166226 983956145 328291314 972011467 896235820 951984994 387714445 977621627 909153417 929226390 510929715 583826938 422277661 889999338 763905497 850751268 453165975 456181942 123020885 619269405 294704856 416778359 380300859 665240955 299607552 507666191 130986702 366288231 948055967 986763781 299704103 667127786 389931780 740637073 670013713 823336555 358788189 959525435 990235106 994890990 869623806 875851763 914640740 949284853 888842532 900289501 627125489 873808679 784044120 928136235 486368485 809004624 183581752 782720863 473992192 827975184 526454763 818386789 250951942 880530479 524053055 752972469 135622195 477499042 397033498 527170366 652901996 865759282 838904791 971233012 197596727 791104462 349595217 796876724 856869226 981516989 686759404 742609025 728614783 960592305 20842014 81757831 192647150 232151126 641279122 935454496 510517407 794781297 40833818 140083799 280697066 398205376 619514853 656841990 558163132 845251469 710190479 965395276 262391065 624330652 991096439 995649245 899896749 951628420 892815963 905337965 545402891 910814134 994258407 998386592 311839099 574308544 786788797 883402796 13090291 258827601 920355404 941748585 693123088 768481010 635620504 735068945 632525402 993971050 345134279 418424617 290471229 744547763 920188356 998883333 313974102 969777586 63896581 406983894 289066407 955060447 412061154 587365003 778283300 983201814 370096712 809661025 83447388 125418204 484040997 810260249 504368786 573253550 528529682 904673675 251448972 677359719 306560615 903055801 303332239 707100088 368029239 796041609 771953626 828058974 976194035 979378755 886575550 994508234 917084675 999452085 470818843 553475855 983277803 990664742 93831734 243047857 690314649 723644744 748408310 941914651 184178991 287345968 334109197 860907020 60947135 497937299 743824250 828626972 184845492 840017034 840933142 925301310 501533130 782769998 941533932 953247419 682347370 837214884 670787353 762988327 972349533 999428802 39442078 715229297 127064431 565060349 625367037 881237646 653843066 893913438 891845387 935554451 272487660 632703176 230547137 455808347 740992646 900527801 711320659 878376938 669063658 843377497 627104581 786202797 387698698 793493735 871050746 985652982 127889822 284483515 829730178 928856892 826739679 980209637 727562983 903372086 596679758 930546189 700063710 740778169 9234521 999899434 96044036 807203142 487030645 734409545 93759706 659815380 131037328 412031565 514229935 768769305 344187291 437108308 281424639 796929713 889223652 996962736 156596851 315064634 913018525 959783430 18258024 909655383 779549946 818622908 406977283 818285939 858370301 994261456 884995870 951437761 12113455 333479773 897658748 959215627 198342495 760784690 701127169 780486183 382358851 903810583 630712943 932313151 964333049 978981092 499856034 542909409 854313960 907292694 348631549 440161152 258067403 630751182 103700078 593656939 741060320 937697368 145410055 494411038 516435866 989797537 186454561 910835458 53104212 716899806 550133586 651727809 700045717 860070114 728456360 777514798 804506484 884525757 487394733 872223086 133274551 681452743 750031266 840855146 827717425 977992560 220199612 525404563 720975294 752027561 613810256 862019141 804307100 957671867 513440843 866726707 525927287 972831278 332654602 343086711 988540288 996223330 378696049 430678576 157186179 877469332 777900980 980693713 176712951 956818492 98822825 449483974 154466352 858727880 737652699 926484685 80390493 862908715 700078654 816617920 144089878 612182745 112852770 267155570 843563432 873988764 646106960 737671051 134826279 414309032 95738807 948613623 21125192 546968210 642570615 958838471 481701664 715827075 597229754 948101113 23048259 291887069 526968368 822795815 937923072 944899816 90317001 326581143 845865409 861160971 179750041 645039117 303522983 985702638 806325610 927782127 862797415 976054683 173407440 445729293 359579358 556550187 908150286 978188168 590310275 834389528 965804144 967150260 147579013 424633315 183734440 571876327 673099287 803711381 452621854 456148859 791542651 963760633 804700175 867933333 763459090 898538548 368194224 678093232 168201221 610720736 163078638 840032550 558199361 736395269 119318243 521649132 465701327 962045433 585338673 713739348 357393858 645329591 805739103 876980118 636688975 732763095 852991951 988384765 98841417 800423754 704794492 905194133 967336941 969124546 122316616 916938413 380188466 674878783 609654027 960171681 746880939 922974643 92622453 561884190 234447245 956173162 461683633 609824389 522831287 787633762 952141551 997154454 587515006 902927110 126281331 968037917 676315696 961633632 607049921 889231855 712453057 719104508 85741318 425433138 711480923 905634135 722698230 772633819 474102766 731463049 725905065 804825504 334347702 656155043 611148743 900076199 568667219 920142828 86229149 749881482 527284970 532920346 421736558 904736651 202966604 665478800 538748048 685320799 504468513 599843992 915266947 940151592 648423586 681700976 47757305 856706707 333433397 800726122 532175947 877800851 810812753 996345650 176098969 866828544 102050346 980385118 608831323 636885763 235054958 621073485 964118019 976294490 782946753 871943471 622420521 736172276 769707265 857044657 233816312 671228515 714361524 763831327 195509617 978863650 154300980 849527946 497069974 535257425 299164236 324305014 776668930 882532691 359808250 771616082 309492691 739441377 327247821 433189333 103797412 999653891 666578421 922065702 988590087 989839987 297185921 302206814 246967238 435606188 184834720 451944847 110545842 683589973 901511782 990522276 85126862 471945934 439673534 811163025 913678041 933369289 950926807 968788955 63325541 403736485 651170998 782096258 961813517 973394349 778557422 963543854 250302475 883820953 275859420 289930937 683175167 804908031 361248387 722852843 280567307 302211593 736748470 766009470 241005526 535343674 481827389 862995958 789880022 968898722 115383413 987025833 918118830 948871526 564517447 600594990 486014148 791550878 432810133 857891933 334831029 501148548 185184839 603728284 625820416 817767695 395805012 506897756 545493465 827909635 531655145 934244971 626943403 677605628 166899896 654566619 956378786 980818888 408272551 956447977 673764022 678231079 187787034 670034400 966391576 970915576 622004313 837654535 723428395 965054585 95226440 790946713 93189501 147245514 187085348 272158204 815024769 939403942 830838139 916770801 496303614 899295408 553417838 784086970 791906606 861163218 825379714 956105828 766283303 934819596 793560093 865088486 662739770 899707050 708684092 775828151 680157407 920642489 586565747 959300086 794959482 835967222 538793944 618115901 180400517 939587113 398449171 896964815 279659410 697226463 677248823 734466566 976936451 987605372 913893463 960679738 690582432 924663204 618526209 744918776 810934098 884433251 798003836 911459371 229237466 645333258 788734390 856292086 336617085 495069123 270312294 626732953 772668151 809108557 392027790 978316850 455042840 986363887 117916242 665868468 818278028 893560474 160357160 324288450 872681060 958577517 396903419 832111743 213339973 859425826 577300688 853794815 91366620 665057952 426159399 787545704 229719603 430315365 743878370 944529046 349588251 818968480 955236885 971389222 743522056 967168685 725777112 837995706 58071702 705098570 615507576 682865918 273164797 832228993 714110231 967094023 159490504 447434238 786201495 997932311 978208475 990253348 568478914 830078825 157449406 194448780 53185179 930406010 78375425 575874282 427535013 849844060 834222785 925021829 932945936 960355880 399581131 610048239 862749956 967454229 25959873 415440123 739072446 966802177 937569188 989464577 858161690 945691480 313942952 928918674 733059460 850848823 264863080 480843307 289346285 768645064 555075978 810605164 583955744 598703469 104370333 809366776 571845482 789603858 575727624 626384364 723297066 863299476 601617237 933887179 284776370 342838973 315497855 350548738 57848340 691513566 683795603 918277003 541178134 650664493 1765816 424014189 245607781 656583250 121664126 284512324 245050525 505947368 516942403 868433495 597702797 926951068 338718509 835116338 888060384 995036181 178169433 280769729 926852423 982450767 18939612 832886824 276847636 879716027 242426941 644902775 962150008 986213314 121119531 161230676 257298040 724663617 927172827 934828765 414969499 650049088 301154610 622708133 934413235 972928805 494062122 956543070 692338806 876016956 343399642 479782200 167772507 372848006 109200300 628632116 172990823 198711785 921499919 992118497 478946858 676497545 812179564 849208319 660039008 728752846 227393250 623549502 111169941 482088810 463008241 706686204 34864529 630872544 727633497 870965835 336850222 558855149 672162787 815741480 699199881 783661084 614301447 809916033 884777995 916199763 436052592 817744334 652118045 894661125 232246709 705765894 594364529 768287795 613799547 661589566 192289488 914245272 927870758 949653844 52961901 928854797 307477113 690789434 565800320 882973040 128118366 927142652 595149636 779344952 953791672 980767781 839318717 849012888 145621088 576627597 154023528 532621382 194874189 939424939 682486034 756626240 370714331 516080947 537713683 893667967 890651055 974719969 201974900 812310184 355381245 684670423 589176902 928294057 917088046 983636365 382542462 847702982 2894707 466856944 835507433 930749019 699697078 717566016 793241164 998127325 409261881 465756775 340332902 719830177 166864600 335857542 955697747 972744905 55159289 819526502 559544612 911522001 511687216 817363760 685486492 877009974 644256671 863273366 171968627 354854669 481279533 921043833 922379638 994594330 94448545 861812844 563412970 633556846 753239900 817928525 125555960 144070275 83345055 119957073 659079256 984501353 71206106 951504874 280834491 704515518 633056260 651417546 760497870 977037392 974311487 983530535 90104197 510392875 447846865 499520017 845864022 962983748 835133115 944439079 683584171 961048320 866803794 956509913 73606197 632815025 439192951 981073517 893768265 937482906 290914006 757506761 539907487 990890579 249331278 635846889 732460470 894634376 579211974 964129184 768631597 966103046 415980615 634105440 993653931 997989023 224054637 848703838 971390058 983889492 970089747 998078582 226396108 777264902 614464150 811953504 715976694 758550270 473096633 943817143 355059374 608843137 293746871 774046505 707223448 877324740 408980211 783221147 648715617 988319663 990829141 993939801 743777882 915093336 32207135 535838978 669465735 802600370 721631080 981258186 460421101 797004664 550536880 659530630 515189726 582193735 331746447 366699713 281722852 428165767 104698481 534921170 999368152 999763102 381808740 607537908 312227112 664441032 39814522 171415180 315120599 636120708 883024282 957199878 158430728 982805802 862182993 873089014 817209977 855795784 568917737 897050807 86997366 685059066 17578017 743057620 187385284 282373484 371972048 554472451 634868115 746340596 908254248 986892738 292998499 761967383 585696501 865743644 951434547 966409891 425502612 442168400 986959535 994599154 989314296 993241072 539557569 642141271 408088348 447572173 57656631 910685609 234328911 266033861 58866402 743788500 813256362 987254116 275697124 757909514 251916146 922182764 221684860 545144643 50653141 995758982 943211989 943801947 712415437 847876942 680255803 899226724 518057816 963530817 937757353 985761022 394599072 749383724 613514707 662685512 298022784 888828742 944772298 988231891 545781115 930119176 576965309 702488723 308214871 596091844 991968529 999143324 69692735 959814248 989652745 993573341 769492517 914448348 208675513 579469788 730528277 999898950 769342450 992382255 311416122 329076446 997820757 999892408 664903147 667640138 385268045 705752359 508663327 695733438 515535697 560001832 201581189 992559203 871806402 873883619 18312696 945955753 347779600 416756595 994720598 995180435 934336467 960674348 127604649 517239643 570602711 996238993 644962246 989860633 20633228 95905686 717947753 743598344 377676351 466397167 954824668 985273075 418881775 578524496 598601266 679183054 196406986 282184857 2770501 748936595 599189476 818165158 612511575 896457683 827720004 879019690 579530447 616439066 412434014 840649495 809271207 832912354 354274893 919214424 398956841 562200645 937934650 967512271 887423673 905249760 31282006 569131968 881318064 961340351 75680990 193021581 721049626 931797270 842695970 889651365 676071224 757095971 879718575 881276200 937729227 973824501 477730262 768254056 804502980 965872360 874246007 973801024 452377594 943049681 707886951 783108062 882433524 974636861 510259436 992479335 85799623 867333878 613699970 948088795 730817032 885116481 265754996 764649962 219523374 308406496 476381230 573048380 163651332 208257009 618993523 983140779 476435704 791016381 692431691 967002395 586573527 681858618 332791739 909952158 991536712 998299754 162239074 598526866 908252214 922558533 209387070 958405704 541562750 642880392 594508910 837006720 633313643 722177103 476117858 805740284 269761696 756098090 562630057 643080346 934526921 962709675 295810710 341257134 784107675 952972911 569487002 896416707 289762467 978323939 311249012 927457782 48844267 171160453 368576540 740680603 533466264 900315819 747853664 835926704 188926128 837560426 626245879 931648838 451763314 738132535 744777370 794895870 497890867 993503133 939004901 946227980 490194109 637894283 255908880 933323464 246342070 560668439 867347744 984183142 823950065 861465961 643651232 998518970 614010961 881302502 228342007 905669223 909365779 992222077 98639166 280962852 195524534 432741656 826638651 827903778 537475677 847420325 388814275 508453807 210366326 888086955 107613256 500249816 26243059 54673153 967406269 981392758 483383297 659560997 868066339 975496226 261032878 323536571 931807187 958852481 682647538 777309335 133626912 349717915 725016719 727292981 55217888 996262501 798747686 874285373 488782907 815555487 65103314 974959732 666823655 932228296 387638097 953793260 139965585 890013376 317836091 459059829 962918764 990409677 326574377 515421659 244914125 612136232 379980633 897274366 724132243 799539689 458128394 710291164 599319269 673273925 604199522 927143045 68362557 702611060 945786575 975955626 541666344 715338091 279385913 393468925 199299626 864176122 595846926 775277414 807855114 894335068 537875821 611328508 877236829 996474777 408474845 589066249 718909873 968086245 38524226 533744691 999553395 999906116 698788530 754234085 604455583 864286829 383329457 558326540 467105387 659713894 353714768 444639724 93086100 936879999 173474679 618477722 840836575 871471966 360827581 389798744 605326177 678652595 526100744 749482741 186651182 577908609 13473442 578468727 301950846 308008283 110876625 642275322 420744745 616448194 655706362 841712065 768411477 893127786 359123683 569632151 154444270 373109851 654238037 757337750 907689152 915881647 524842856 810445620 89779875 513781514 326380321 829356587 730667104 832614020 241729178 316447959 538100629 923797826 908883600 916099255 134276417 287339337 807253678 888818597 961942360 994642356 965115823 990673779 297024385 793684905 873578551 911199045 978484428 995545526 661828917 834132218 626654127 961068998 323127819 797665418 441946340 482016237 725074351 979525621 967321780 980935473 135356681 370873362 466112014 941322073 513663658 983559454 356635567 699984196 612660645 716713203 989817694 994348110 232661408 758368582 132286125 231751842 272694587 730848523 601507568 655538185 717316875 831368409 240414742 691925776 485005342 918277734 759277394 777790538 994931341 995102799 366912016 787126182 270504798 537349512 472035585 889135729 394830163 846327568 730429023 757264058 432750087 937154593 6050064 383610296 893186721 906081479 757236348 772390502 495007355 540735796 970954121 976261168 338874384 850321181 147934899 439880511 733460714 975525080 483765052 638931975 928960681 934421877 849504807 994993895 921603362 987193701 203330830 247817414 458232845 691757093 211023543 927342919 788246319 816607977 647482059 978205165 740399595 902913108 866421900 875798760 449448880 487950181 980521019 984176512 360587480 632930990 522779605 887395645 945302542 975550110 231101411 467721740 741178015 920605583 461936396 517633829 980716658 989461217 236784961 510769239 11529357 803310928 867089174 897247811 854153350 897779002 482902927 967124911 916473309 938591218 474463508 601064931 338741444 355700050 953457536 975085769 528162061 997054469 524683930 791341960 100082074 468280959 206683439 277151013 414137270 672923939 224764645 621366223 136376037 479357424 639309534 913623137 413699899 604075356 985381883 987365229 386478554 445274331 832396898 954792489 746101103 956867718 968199656 972157190 412028681 603842394 7023115 300424719 989859525 994773860 999850873 999882270 120393301 908839705 307935566 854338180 295752470 372614880 516480829 740323284 709492682 844857354 535694440 581225326 697612316 995624809 477632321 551809517 435592331 946498720 602103470 764145338 164342524 686093073 497840720 919708215 482882645 846699863 960169822 980810382 911059544 958071285 958301697 982776373 30629179 825716538 742175184 871897753 966313764 983080294 817502485 910468347 521181146 978048035 449443360 630739399 773984202 804772234 98918856 639247289 2370664 855690406 99467183 363148667 458188962 636156438 189303090 235406111 614660692 690905954 331746658 567839734 762592444 997772220 570233816 703351868 85391550 728432875 968443895 984655113 957684836 972137910 279898630 587654983 874428688 915310150 357575132 618796313 695430668 837584057 679084630 973358846 144626287 340276486 47857304 517723936 527319821 774008058 886927411 971752358 377629268 844548797 777348422 800136791 295662987 575589079 892305789 913130543 627065013 763212419 7303056 408814279 906170350 991592185 834974511 899610506 420691736 649574120 224701352 322539360 928964432 957000463 929883968 955666985 457502702 905839664 824318055 862175626 675061549 740966023 812615219 963806956 808826261 836923950 19615506 690373964 783845909 841635669 387657682 951888121 209708039 914587271 487811584 591708300 213795443 372716030 922788676 932762043 695520019 869547464 956622917 993590985 397933313 689235065 627904965 990379742 641975477 818863383 671528935 829549824 526634654 725787069 528268001 731364933 43517278 444414010 43874835 599832591 599141932 649445125 257301322 577897469 679143556 977783636 775995434 855852417 829594884 843259386 348254837 782134402 332386970 743703989 620208469 649122103 976154148 996670718 225877983 278198045 588195507 850780301 180114170 606903205 505830766 852110406 205503309 350320154 975835003 996878817 362841114 486536666 108912570 308390936 464092360 796922462 153004727 384065295 847695582 940711975 833169653 928255813 993410899 993923029 166788497 225663945 635323244 694795562 546110266 546939626 815611004 943020482 24726729 531082306 724093833 852240598 162222986 447820165 121684656 366567404 235679868 272576397 548494787 807828200 209676704 723081175 803166756 827555970 547081785 588757844 162589972 224722220 535905888 992390326 713346263 963291455 380171011 652173122 870706935 977508834 413145705 800304607 991265120 992386667 203528064 967594319 259142010 487294858 169034327 920764139 393733154 650197378 441440756 863877857 950054965 982178491 436069554 659103059 222857815 541169601 415093629 974042917 411567469 835106067 184429890 204597629 336209864 801285151 821348318 922590391 832676131 841742388 597909046 826794051 363735085 998665482 995771043 997801110 805899548 890484192 132988326 135709435 631382364 690358089 157326960 265975463 156765074 831978463 497951778 984833595 674592730 812081175 281245207 554446917 997223192 998490248 282094988 741605224 711215118 957862107 797456920 915730990 988863196 993957819 76861534 230488542 630663781 899581296 41155252 528449839 494120278 872657623 980593538 994358581 35936628 345731483 109237214 340521954 944765995 970852963 773995709 809693426 670425647 728670582 151879428 959286879 281660890 808616199 638727037 954323778 942971726 962219629 255073485 519577089 696497927 911689598 348993202 662268388 393963048 662358450 693933233 741602713 998220464 998667062 889204498 910696652 336856395 557718758 42808377 539012849 847543053 906022294 826279805 978810968 461474267 498056574 671762448 879907936 663826340 811624975 113500127 673227447 137388337 161749788 485228066 790023060 738186916 738648920 944808652 983769618 464174028 892497280 588271141 887288361 294869528 389888425 255537456 805532835 379729523 797612744 430724982 794013711 488729250 948604891 428519140 911619625 277904637 375663512 539596135 565625380 896010835 916053988 577368086 640809009 420624479 837824725 702893451 877173691 773796599 908909574 585370272 845641336 812351888 825944637 784422664 794949515 782703369 878876312 202471291 471575155 143062088 149160676 529058689 949316225 497865455 890287078 5705448 694523441 707644088 841975448 23932555 653118242 891859749 952295191 937346199 958391614 443178439 825355025 681543969 694130265 978769348 989544410 693210181 833097231 654134800 960553996 471596291 607508823 577773107 872600399 659585955 691880522 86680288 179041171 689071531 996484213 588095934 787085351 375214542 609966720 292488714 764706910 989607910 995963574 725635546 820601366 311157054 947470661 406378516 502377717 89866552 467173537 573470421 682669822 730019701 855911531 271295699 726963164 680338205 986868957 401996015 869553258 43689519 107942802 330103208 836372626 705798321 864100266 815867846 936891998 126383626 677975069 293941118 481622840 877182333 920647939 760022012 777346423 612630766 916148400 711298475 932729368 253608917 621999017 517063077 574684125 617310059 940106528 427057267 705190347 400619881 886353433 487833169 528472472 734189913 945448676 709592676 944120664 826889590 909358929 436092298 871463674 53093746 912129059 53568604 102952323 95009684 253104232 711267474 850561766 169280173 215714528 174697600 196420310 884127882 887404117 663766309 798696431 908844764 921136457 335964914 481997249 150737338 353993036 406657017 928422586 110049613 407728931 895515433 918320340 552124537 851598425 456957240 899010276 402574908 491933152 460306183 893221050 592446964 771902715 264550418 940166741 240608951 345157401 308157004 941439228 495695897 574338361 636976048 932182939 481122003 962030366 472565680 636905321 833927954 984224801 370612646 870063401 551240888 579949022 980006962 985517514 466315956 549338231 989826258 993571396 788321356 794621849 754208571 972144205 282487438 803260289 876660847 911494356 518217112 750569278 116429597 214556643 602834016 703626305 736596526 969795864 176953467 451536368 111608428 301153130 411266093 781090716 213582817 356603638 89317414 918540854 569213249 702855217 924295535 972747524 212940266 442501112 600831164 727696909 478397893 609554348 881244695 889449475 467106168 883603798 162891494 825730986 792032786 956707331 810233690 892541221 441533791 876095518 486831526 952866141 109410477 881533747 870293821 928246855 669165726 695209181 19010193 98806551 71824565 288119832 332583484 399332119 721761850 878782705 491766132 591292294 792632564 823157856 508325925 611593449 552929649 676875734 729932375 946205222 768193137 895658506 671136234 680742204 744058576 972962673 299931827 346907754 858732147 967006419 249695589 600695249 193898351 479755774 868100860 953019239 525330375 536672312 211811133 788950530 133812036 266195482 417795359 937560295 961831253 984014420 404584616 965902782 888097117 975383989 350999236 871421476 859640344 910066591 302033591 616356278 653836617 937316197 650742630 689650062 765513011 854247034 417405953 550706534 133095975 566703818 262777736 795265737 23614276 803075394 106851679 513720553 40254467 728801358 371693120 492755695 424882341 687945627 296621944 789755039 989424474 997528969 280837952 692474968 328400716 708155502 435008197 917638506 168294230 456111877 952313085 977780667 710974627 825766591 884149918 950660960 928700362 966786412 41195674 386453118 171262214 746301848 833268180 939218126 775945385 879886334 679382855 749578822 424271597 675588434 709191801 739817220 592865871 734187857 849530276 862872998 344612198 465398470 974630806 979410373 664322439 708327306 717119250 933938508 271526727 796591885 157538494 645834119 667185253 674934287 478635022 750096431 2074961 837842830 525982152 964238392 475464644 896376882 665271948 999411103 565349506 647519283 326339435 416427857 115132153 842799992 110596220 798064344 457694482 655196875 352424355 540645685 838441804 909700072 473899124 608310477 236311090 365046119 2218218 167386252 346025222 733511278 647855335 844285423 344869580 380160565 595118840 701404326 967577519 980772418 747178090 908339073 711865532 913942325 386323499 460225972 859022989 990631449 755514738 887144903 543981621 980988266 663219473 808555804 694837779 900395858 829520593 999008953 497410817 916750780 405949594 742345711 12329647 884793963 236310612 846767990 361748145 801388790 767217462 915910082 793273037 989667498 230079285 424076436 769660557 908801261 715900657 838814813 698146644 755909260 68238523 723719091 485654626 792765398 305959334 693907668 810674200 879618498 262280940 293398586 565368005 900379809 708812420 800658684 293860627 795816269 214803479 794709272 422742013 934426735 436552901 765016813 48497871 674385529 718805254 908740916 700913589 923130687 77960573 141857225 929706633 933499822 397654183 583367659 102060794 513118817 774253664 801581142 7985164 333960269 805353731 893966216 538890929 584672338 292297508 696110508 405671494 629240927 355557892 601764945 371906940 965926213 4278010 296438805 481186892 846449084 466500749 800610759 897943401 957799427 741893612 766926821 306283880 885551660 547218687 873059026 650854335 821495773 993790304 997529827 311480412 671840707 565676130 909846497 485320833 897704457 282455934 622385276 668551818 955970311 99408968 799214579 688544721 921308776 266283283 830324364 498859462 936386241 435325608 657783720 280419205 937107044 475013661 781644731 445858219 707438349 59396605 852824115 276562943 474040415 17662344 669488228 102105325 603091568 701034476 778481357 153928302 730124216 651584420 789464548 846014544 900436854 941208304 954405315 773735915 982852850 392339480 958666369 395713416 602189166 168079079 172372865 647649819 744840139 755028622 952352084 404695015 758832104 50511063 76616872 450736784 979266414 920834678 985359265 747907428 804457236 138511910 579042908 745950807 901399816 224419846 560426312 68997567 969924426 638710381 655737575 577585457 785123679 18641963 461543261 515710137 708238018 501700630 940152148 200322703 644131487 302107616 369563442 366542388 396877954 232961174 466350162 170855266 928314314 466907201 752701584 503254930 577641102 334623735 652067136 866786715 885545421 363725234 376774767 234180308 992791681 208167283 712784242 773475324 984482417 579617943 981921945 100415150 500986389 995705483 997122441 136147120 623544612 110392321 730477805 847388882 935751677 6223312 383791851 36958811 977775483 962204260 995464464 602851936 961109786 504250031 852751201 114058782 292629911 758559011 950346373 482765995 997168401 602796042 631275796 957480324 964636679 75613323 644033914 403985139 967760858 826285251 991413312 617991577 841067431 821395828 972758384 481904385 819683128 64415190 568676431 421726324 568391249 679813739 820593125 659885505 966693636 864544430 933320698 695238055 953419988 497214304 834134178 686392809 764072067 874092712 988589582 745847688 805385475 777446975 804056534 154326529 896732044 175903782 455217182 335603302 788947174 336113663 765584223 26000574 89634265 2533604 915769465 335764849 558652818 773090876 846600408 279894165 777123674 720165174 905341931 15543713 180122185 8670423 72299356 161113131 606653005 157722420 425721758 74063682 295186241 625591042 878576410 466150381 938050957 83580317 341517016 841884379 966485705 706561693 730392898 826079202 861506724 17826620 160159520 330047457 764665414 578618415 663470856 402185413 996177029 868398672 915859236 452929704 453091186 9780219 308605675 690599862 733278364 624129348 911991642 752262863 921679893 492134395 928165198 163000611 827312809 891100728 962773870 528802630 964509888 42339455 767818690 553119309 569980636 275283753 729363072 374822593 620852951 142791971 761093460 238386529 813675519 541759443 733097185 38562853 213100010 276752743 955732228 730101399 862032913 684959377 927292423 18762527 437738300 797580919 859454265 417030431 647655059 939014728 969146741 272058603 476998611 932686024 980846675 280507621 734816724 826158984 833440098 666256567 778341440 494698243 979634230 554510971 948607632 217822767 278233910 188815159 458125397 963666740 990424562 965507120 991655617 902194520 958881913 255501850 324353904 986096748 994491983 255843782 545338920 765672896 859296159 794397729 985809067 896371921 978444617 450345427 658167473 213380780 841331761 422893753 995120422 921525593 989874841 257614077 997351785 353040921 660532145 803917941 860312449 514378033 719095353 583466639 744200748 733091707 906810978 725415568 941708281 869967843 956414159 556615345 950460829 528980305 682196724 562259072 835351620 358530812 982180929 574635871 890537862 646473256 830232384 95250437 539816486 782915839 893832985 161285342 162419633 39799540 75852245 680582067 977745525 620574501 955274267 759967424 821562115 385998513 847994528 346881997 971635874 110944789 338883027 495826848 792217877 377816494 954568213 116536492 233596190 791079001 851191857 397120885 977782527 621887368 732367892 861175856 872782144 910989010 955837870 280185098 991157498 43739049 899807949 462594292 542427332 641561669 989306105 631264565 682316271 440564227 812381650 681239730 754186487 358819915 495807404 525225995 796378376 905377046 980864100 301340822 676204292 618957563 954949233 937668150 959251905 388888930 727958057 216760340 376197235 196218463 458251056 269527511 891873094 568862133 807777908 419774448 856641622 688993688 740772220 982053578 983033858 286621533 829215661 589113511 993211473 267060411 535738999 435568474 750959222 103566626 539960194 852430282 951835146 970352797 997924043 550927547 923699602 887481699 956445182 608337707 767916312 542305222 843578308 492852907 611976128 163878133 960995045 63004077 760388074 410528012 425279192 751634114 786168899 136933701 405368768 610465371 871576821 171988237 810222534 313028159 450559216 913625416 978212121 335772928 822365646 533282529 592146243 722781855 839570888 201106897 730769315 781948075 876464763 71672047 499578606 244655497 383148337 617824233 917348709 890975801 898409082 552698647 677150664 692285858 957907866 718393045 765175124 417442021 957904559 410896406 592328726 889038587 966818327 555342779 887606102 536432311 613952696 696838114 986078672 229221272 270004063 916449916 939377329 965008893 983120170 946144313 970254399 514845533 582360402 295428895 597532508 747386363 888792135 554903681 907945237 718229951 726452650 766995122 826323851 904562615 945293238 646112686 763457036 396004451 454493862 616563457 972321913 787166764 946911299 928694693 968368814 704140502 704610619 691866615 761369576 865316347 973882736 20790406 983174370 900245954 970530036 112084976 401647609 738755260 787567332 960034254 989179086 633667370 717590414 214728433 405981601 665055180 683645346 601441632 768902236 762033113 863271183 265243903 996041523 488037360 677024377 12551808 162397907 338754694 457751831 379141144 904960745 576247308 639987393 110048543 479556087 54160288 354314638 614371788 763258860 899623881 954914130 179011846 675976023 983217014 992698638 757113413 855076484 216829177 923560204 299396146 667035429 996735965 998040304 211666835 367447344 77222029 944168181 460355385 741644122 977753600 995624289 299738921 507613983 973395259 983214679 537019711 794848342 899308865 978755479 726445175 780787469 844717702 884423562 575669775 678526032 588316944 678388752 644599617 781633131 885473420 979887285 185591979 942834900 111696126 863284530 377617637 823904371 428029911 846132985 494302934 676467207 253766299 929227167 528585950 958337074 328194711 640083024 525784429 652006505 561404327 671914653 625671555 684090138 803165975 913264693 465764829 855851671 379275871 659411338 169577987 986306029 44052547 237371069 155761160 798605505 687087479 949431424 326400880 562749253 81866142 733181762 484001505 941931959 407229615 888572439 217658386 723958416 311307267 503427070 109664145 411604275 80485293 308882448 132495948 494552521 508258518 861985672 940025623 966970883 747906820 770996480 765953498 962260094 84552368 381335338 965909563 995397361 547503387 584769498 460509174 999429240 79881966 349236028 247795560 369235697 856619696 981474345 839990923 916690710 918122998 998706688 346377754 630496351 864605963 988256874 650174154 902169131 873371774 981130328 443154041 609260089 975969806 999715192 370238084 514822062 625725073 863868671 467835637 761170459 944772499 996876832 406661095 633283150 156060252 587805211 822456551 826788779 563220929 683190708 408353889 582049904 23162947 255786666 757447433 817364000 308322667 902550757 504666500 789500919 237826478 624552142 778914422 965543580 720406660 814918603 563005519 950068754 774725869 862994868 272218527 941117118 256289641 321639476 899325558 903476440 614586121 872124451 888376282 942128999 971264096 993030184 473168420 630874923 403494903 419976887 436719795 886342145 50825602 81941583 114616797 585971130 627956008 976985510 395011605 667258090 715968822 761651583 760699823 795739955 581364613 637679823 181814373 827947990 817941776 876721295 523084788 977668220 967202485 982621076 468054213 670695846 552165381 557831261 576079143 710125785 544664214 998585502 276742626 376489783 251035569 866650906 744862043 763697674 787042020 815699474 714513508 758672913 712004989 801658082 443594674 965963119 431314020 549202923 260912989 528288451 949731112 957699163 776315238 954204516 237276261 925182881 353091674 714258271 278081555 531269705 575501673 700863909 368696800 889777521 923337192 937813645 36573930 362841063 316700234 556608151 499586150 721353092 20577642 160260739 504766733 990054757 545980036 910847905 125893268 892682059 401990219 641102969 65588654 899789422 118242289 307806435 475049767 887443696 659958824 794802272 297894804 388067814 310467061 438296588 986854413 998044781 362542683 487794073 952443390 962639504 870674788 924510542 312547121 841581156 823349245 986898780 168378132 830143004 944585496 951516392 478805970 903717067 825704873 912965157 187378956 571819175 933476748 969282191 660831723 671976392 971293342 987767244 465375967 494614223 206086978 984600561 345181678 929519552 207191883 342877138 489716819 753366608 368697070 400510837 952267383 980492347 432255506 632459049 502023130 654906311 539750054 762325444 811097954 892485560 691284942 719876464 607206556 799886840 417582083 923345813 821088399 831296000 924022972 956398676 363319336 737633220 700493637 935844555 129171093 336187442 237670114 522869034 769652121 989926808 27220349 887808395 75397445 115253623 273539414 416808475 667989453 870763412 869260726 964004934 790696033 927747523 38361468 417008931 639710735 686072218 21887129 130852925 470803552 475258761 905819835 962401425 217782293 693401630 750150119 821080190 530440052 744607642 123038998 316365676 651222347 768890585 635765126 953018294 595232772 845225695 477612563 739407923 665193432 928249091 962412560 990377094 330537536 673980950 58969348 205959406 249758968 837138444 10706433 484425963 118995578 772495297 912982895 933127878 573050163 780567874 177462050 693645208 635194072 725988366 28240843 777725107 562788069 707339562 336738209 605947309 158527540 874752819 61351703 540584316 936851878 969022962 371951656 870261769 255637680 504238288 773962946 977623303 597621461 857506777 26001359 802478329 684641214 764637526 442038512 546501488 125072962 193119761 179597790 302442426 713763323 806491305 409627784 652240408 595883875 706509099 743130145 966297504 497855291 761490008 873683276 890257609 804742919 943204010 449798654 579878995 385258435 747804745 383431776 785017838 103623103 590009702 767438934 800104868 803440527 912908501 681559302 752696498 511892511 674084443 376126117 812389056 33163970 912873558 814979601 896899786 703513182 958558226 166622470 644645203 1291835 727690072 357230250 868175956 604865159 868466049 786804459 881541490 624725657 810657817 316327388 917342173 621152790 661065050 634215089 745751611 367981218 896924186 948377768 981754990 411967655 558779296 982719859 989202646 4142129 430668907 475021837 677072604 435905678 731430539 462068470 941479749 373411308 901245551 528160289 540249099 601229906 941676740 202728287 443507437 582832735 810503244 632462326 816237161 528328496 629500612 600743846 767698821 621291646 735257401 898696230 921086247 492664862 883164830 289992738 862077735 187782272 285824034 778664382 943906879 18584190 821439031 131795896 757192285 89870288 202180146 753387352 998864809 485353768 801926612 579372095 751974057 930059682 962408587 107516147 775990188 542901206 679858905 748263081 752006891 1880113 735235711 152754825 820315430 227012345 322811351 349726595 856065472 583073962 909090142 996918120 997453174 449772025 625136475 416274303 877140382 14305088 425447413 481822085 722300145 463924838 929436684 394074535 593461641 490798917 633201638 169267890 476750194 304591537 348641282 756092679 887675654 975604510 996250866 59421800 831338386 209681430 395472053 785534936 849044891 885415555 975735242 982224793 983636218 61527605 662596722 964024068 993573889 355221950 961639017 966717066 968336151 395537726 436390956 889796722 952088677 592056741 993352104 34338006 839592616 906353923 954843978 244138350 610756345 317323245 486447562 832542636 962115342 148084987 288043578 719660289 904429298 41942587 974796267 527650406 600859741 793113703 922405030 178494709 705051175 303744821 861573921 64569531 510775122 996472410 997407995 126481090 329576445 922863160 942748384 631162568 678253589 509491753 553175163 289539466 961158908 598612489 987697531 349990621 916051080 145133733 422567536 556470310 947097214 278818520 316703464 371937500 470499853 255231434 899286496 423138719 514957274 337265672 905939638 430771786 576158089 100778201 145858951 717617240 754860422 889234326 946061397 804701378 975583210 594340276 823147703 363773120 961493341 218148400 260771506 600317765 873967062 287655427 670917203 674688895 876198587 601592071 669200175 242369530 757713475 978351944 998902684 124985621 820308443 914209007 949310600 179652551 965934307 504930886 848985006 490463688 552833649 118385543 851289233 955794792 963368069 709004828 992864540 436937184 764857631 394205650 837928343 288591809 951658476 18923665 545728573 232633230 394020233 748624800 983010457 938541583 950844975 639466350 843515083 326680929 632344999 721985023 974492677 970343862 990743601 964098554 978561214 837483681 906059115 289502431 944074695 289365785 350996610 378348124 631210719 951610217 962268162 821499527 892400186 149095502 354984110 679787510 939398446 514241116 863833729 630926760 644572542 497431744 573356089 295832230 996742625 845517520 864069236 578188578 834760009 695617417 828219389 417365914 745031016 889733787 944459707 896968878 959147150 936385788 998022025 99962102 485889771 118623844 821893191 979212347 995866080 92778693 226579952 437024185 870269289 628850636 685541185 384315257 943623476 935684473 966183442 491700481 837064461 671429203 795064630 26517053 134546000 355196086 653232681 85346536 453766751 379691167 920605846 542332639 717667389 791484574 894157359 156185966 794815504 181740644 758422637 614191286 867674057 848214852 960271288 984877609 985147135 755018804 957330737 719253633 851215861 875444319 900466348 135311613 761092790 716658864 760250531 588143330 881814769 299678699 405404653 473987643 517802545 579628917 876632108 708904596 894303916 145063850 848623090 788779596 833477326 570743062 990517597 266329080 497465321 804593901 894909946 268390027 864156897 490227542 766629627 786065359 998357665 407845008 659661883 728903520 915404087 253358662 604951053 957986665 962052170 179132444 312117247 573352911 623458181 741025517 804952988 172428401 679883734 22735959 954022117 721106733 721416746 774332800 801353299 693151707 697502070 626034702 643191421 791956247 876718663 263099589 393594668 398192423 548251640 20281033 829040996 381413788 912543537 838522416 892232275 287428842 706164453 932884696 966045892 12745309 958514567 701390338 998900921 714561558 756031856 350926230 970551747 694666399 841305377 375715170 978057578 15280046 80608619 147248708 333616508 985460477 991957936 468669292 852125960 614810187 865687523 849773842 947882865 612168210 670060788 492629296 558340414 254096880 716845606 511826648 912172836 639362947 885793139 837195033 884032686 598909099 817268044 789600911 894825668 56436770 385001297 935751517 964534594 449255381 565645151 585928236 955670363 360844945 533937126 70093954 526952170 267420554 952586911 281672565 755164194 825497831 959034667 548085496 736533882 33781902 483830217 893472638 942880906 42540155 859714312 3648475 224337291 784090059 918034247 904106641 979053070 993609159 996588466 4380462 633408689 996816745 997428213 704893052 929824506 345956814 610998385 99479135 450397994 62703413 90670699 580610909 888028975 778407811 962391407 745129467 775623862 569684141 771339875 872883865 974015348 944929880 971890350 327969485 515469461 999198784 999533663 158854422 906986291 201953935 907495831 806494752 931134926 92076252 943002242 482253448 801139231 814982105 826669327 673515490 841377838 803791676 918568263 684630378 913439968 797948493 855611371 231176270 669743154 24095253 113106323 925601191 972347241 532260311 644612050 432894122 969632700 871394304 914598669 735893475 745100569 15907157 591726335 813804394 917613642 231913158 604787052 248646464 580039318 952842946 979719012 779685121 979917049 835442677 946043105 104807605 582539627 8853329 531671117 253231370 527719522 684807212 985096269 880383444 970473280 809188007 917823178 96483366 849857258 418992581 591483007 663502792 911526736 76471352 936039185 542601416 743711027 966672375 968478560 969525708 998571960 710920569 769626480 472993803 920939489 218662010 419187067 164525016 262951555 424166781 667800343 301869250 722560743 125546898 363732750 298165227 401076030 821410422 949383805 739357966 933482013 666298534 715098853 782373010 852643469 743426742 959571054 4872483 306606396 785028338 848578627 800673380 987240237 7263450 504152238 690973920 816918059 856927706 987990640 190240153 476741459 127244820 557111014 658516827 838233337 167146377 745808017 416211448 467930512 247250943 509257324 61638013 740060372 929939022 931341923 774303362 794347495 14732353 777033006 138774054 311615571 526773902 658935701 446968871 649539759 814672533 984190676 361068064 877178405 153213928 575646618 314455708 778545107 461656476 646896483 609741039 678520764 103672394 883720407 896853020 980105312 987949988 988899488 681111426 824804897 440351182 666231553 352173267 619881915 164690998 270277399 933278417 950094535 426977752 431321405 773304116 959057708 962832362 979854409 166718269 839456909 257423825 674416378 592097609 827445928 49892872 870032242 653049519 711279045 267616109 753416683 993154329 995550301 39426911 238744858 409838224 770884755 306489891 757399861 146399475 159071970 35430580 442604274 377493032 970830227 675452887 880190308 6482760 926464163 650508635 847854175 336032189 913304292 388359227 479943195 68997550 206408027 304508804 841570267 174054621 336173133 508207939 869430010 498201489 609714628 467135594 519237477 186673052 640112594 364885232 504938736 79750722 976650018 577352047 931095026 815011247 827387607 814961520 889178180 407584802 897043474 739963563 916470351 310286827 538194507 407506336 656982850 423349001 572936221 671932513 958758304 24227181 432619528 421861449 608035525 599562521 803544966 118769154 183932947 817748301 948596012 742420432 870729183 575926616 805966129 164543453 964852304 154393504 890528025 195173717 757075119 409432661 557018115 658787119 778232367 895918798 912574565 216677250 353496542 787360789 834715738 209912235 733573729 353713886 557995306 93751697 733032013 685947939 883009430 340869914 818834568 77228398 312050574 562162791 770062335 151018102 790979034 712648739 949810014 316907949 378472194 962222078 971965676 222861780 522632809 534873270 783187862 387233649 549691723 20713376 37829313 835911442 923984978 20898467 925236364 899494840 957543482 633039815 732786480 678880648 971907810 103917408 261354499 14950148 918683600 777647274 872500537 39132998 299635055 896191757 971866597 609477238 858473860 890347805 900273308 885118944 912701437 462585940 855145566 653732453 705719155 705206396 876843110 341459756 640843170 540826534 900719346 905404321 970984433 194364243 654345259 530668047 987728663 976848473 984959616 430078611 808998499 263156899 397308944 514659134 821995883 179836775 495067058 614570935 724947407 521321642 554479632 703039201 759028527 738649728 774978917 898323609 904177909 497722991 923407983 17378074 840573591 438565223 685579105 250869947 251816257 447422296 829342938 649201235 688927049 253025301 509664064 836864192 851640528 304729255 797998885 702956302 867705012 50063415 610008797 827635280 975299270 785338647 838360675 229346307 837133106 747036994 909608944 24951281 812763462 156117306 170575805 142574994 580380481 960779217 989432116 281722428 661792421 832263625 910951244 323792791 366151427 360555755 968882741 438853573 902855106 663200208 853642642 460237714 775022016 335294207 640399076 717984598 918743531 805612713 974385710 933267002 983103636 361772999 935174168 483829720 871248137 744115573 937518680 106885132 784054789 896040926 905605026 807350625 972176828 715276884 966789306 165622220 404961352 790710470 946829930 598758887 663929650 643951838 689464041 321425109 918606529 721795274 753327154 936315460 946062842 302707589 621395745 897743287 899932732 348575409 906979588 855960552 972709518 766329448 957801783 833652670 895938787 208151718 767905921 582323911 621467950 402498123 648238932 245449174 850451671 491585115 841601894 530179308 841867755 894697438 963315505 704658671 835401870 953714740 983171336 214328982 315974265 531246167 548675694 769867375 967051268 77434586 511671624 610235316 636478516 894570530 905758791 12310030 992209237 496795676 912965739 282586627 684611818 307126901 501285629 607751164 773314395 851145141 973485921 118546114 976524098 574477265 956512376 224676071 790154015 264673487 840538917 460974956 525552062 133654930 157343782 479728945 497412253 618276280 848303118 227967428 457390741 574445803 821227652 119591659 424791843 979437985 984338463 370120795 993029973 478497006 684590438 958360478 966888173 390332898 575655919 308254415 761196284 388753619 653455618 276673203 428334079 588116831 630008769 85401657 967589065 965845546 981546810 847893711 972012782 923277925 969805626 586636083 643028728 596822422 821847734 538828175 715198703 630401663 694636503 283724647 448962813 766348885 792472664 7812153 119085488 298643624 708627758 110989135 734418132 702802860 828615926 554313931 924406455 418745168 975054426 840370315 999047952 144590108 933436170 940145690 990461307 242230066 957961951 954791395 998189966 102209544 723709135 450224677 470034036 927775032 986140101 247197558 370274944 247956030 618286785 214319195 717002996 924651927 979633852 760038982 875515879 167656546 620917341 384882537 760110841 594136779 917402604 94622122 776577604 892254836 956393161 96100663 130544610 463634693 710425716 695718839 822587049 566731620 606430615 711971572 775432188 966484528 985278532 483261291 557374873 788361118 866221666 12365164 781719208 680904070 867187237 772984441 906288880 192561609 948460108 837701331 952413433 862531557 900635162 342994161 860122223 253462999 363157656 247066307 689923331 437932999 605394635 826808205 837109433 113647029 142681161 103930280 306460207 430507040 778454172 310579012 314906419 258838391 967490246 346288829 518037025 449067190 553970877 977576762 986256291 755223280 976723207 341610076 755154631 680750655 920240565 948281356 969842234 638517916 744934542 96750165 868509030 214297962 655175856 336337095 972137792 616929195 817604050 533819458 903506598 945466870 968645866 724315071 765983055 899663306 995581803 370620948 679556363 121887308 456388025 867857041 945140884 161695884 694874397 260741287 931689477 87656697 227430110 34674621 710529762 503830278 920036944 672805267 775459835 554703628 648310688 465602278 584742659 122489108 685443997 15318687 110486331 748291689 984804725 970915761 975906017 596159480 642703030 404682229 556462831 793069188 799406125 134216320 505327692 417852116 932527644 683911705 826032990 841093871 908817311 396274518 929710489 876225060 893174629 292415431 408512267 67249746 760891391 260040345 920461026 413428218 590300140 742047947 936759412 565897329 786140224 333706493 728645432 789664631 942809970 871763533 906148984 691182317 919785275 282077474 845557543 379921106 829451487 811409892 878204058 108033224 501129940 897416533 927199096 398456194 412826831 77024949 416749120 911808915 995563600 720240317 765115202 717193716 817171015 247428481 397120024 210645833 930348334 891262968 973837829 842007062 893461096 858059390 870928984 7881434 156204779 946207894 962946663 762593196 779286010 717902815 758433610 548454238 854236916 725817714 797021279 68289990 902596715 691084124 824097496 182382071 263087255 850219854 923239650 255513918 426419883 532827808 700095661 74735544 237367834 647329943 673313119 515222846 899856053 466772527 950525060 976943622 997353258 140393714 926260491 275106644 483844695 264804336 995786765 900656299 982950394 760884309 900157461 594350844 826717354 734096127 867767469 924424120 955752455 452693643 947934698 843098983 897833782 524509327 759019790 486528308 508722061 385608151 790657413 698868531 776445325 705731593 820935674 755767085 791881378 855799435 956470240 216980015 874986565 989214145 992808229 456108030 911471911 150772340 517403220 340691466 735576433 618119875 953915355 399880720 986484953 30875951 858460264 775307653 957907473 721044921 977007938 805828374 929546695 240050083 798553592 416902765 616603890 259135530 281620616 727429255 911725409 995034820 996525216 921358682 972589134 142977163 705643876 456896764 866610254 325831 744156252 493972874 958486923 658005901 834813477 9410736 184222039 493485466 837388091 724243413 922179903 693866249 988674019 620000461 988153878 513396809 635634808 34834368 914960430 603864 919600306 899060484 986484468 459765291 922736836 773572534 869567618 950721577 971923313 277830224 335937567 984508938 999887261 660436468 963093878 734645687 756986873 241681705 954717933 140381860 494071499 45781747 982423955 283973905 435891591 89890001 861914173 353615834 684420401 201953468 785366115 379780340 995394773 473644407 492832985 837536561 841810696 860925702 886170271 787363580 981431482 966231139 994293983 5019024 534370068 821630801 863713659 996006510 997429735 759744624 897027707 400987285 430200126 528364348 931243458 206659301 784652635 418396812 735345402 895419470 944356818 549975905 773557263 428321904 503785843 115302601 969764335 545307398 566694546 827537444 853991437 491830710 876593704 897481012 911366159 224508265 736526740 339961999 535616698 235447530 884664609 299544440 581626172 396931288 689833700 345191894 531984797 203306984 981934240 82676376 841047201 498618181 783296269 257128958 356725085 330424979 947647109 354313656 413312795 688340872 724695499 130979130 983659955 722413121 997183978 91145961 468223234 282373815 676466334 17061843 451593680 424332544 601013752 44035094 322258569 981943362 994599748 597366116 905662540 736609488 956649808 454439880 615408279 670142053 734726365 777978419 992184129 977660514 980537863 378491886 936292001 217312888 635882815 597803395 957292711 673941817 726535322 258455444 607931701 331512046 737878133 309549059 871282462 362961681 441047238 274574524 982677874 63769348 347955084 631205621 646305942 627186402 930197032 303045834 714703758 47852730 449928531 276379741 500686423 184142286 536734933 60900616 239019154 333942505 863021309 307246070 710936292 215261395 465597689 663040071 975968462 48202160 337384064 158876301 426830876 610358499 760765637 451985686 930120847 543386407 939473764 910792464 959575084 461027451 674992231 893571785 931822824 707971534 935054057 206857289 640271683 348967720 611828153 340961156 825263737 911759893 958514864 718724678 778042637 443410036 668975908 761563740 837895288 585481041 999292496 749505811 998521713 158443185 308582222 859677917 968871320 994095021 998996364 507247657 885731652 437330291 691444290 137979657 899066851 483463265 788272346 899449996 949827386 998304647 999736415 681605437 863811568 895534260 964338455 772726098 891707206 295564813 621564604 196889912 958621747 956482839 960651518 81220716 476067617 522171945 834425916 2022749 594263083 721710176 828033223 158671505 787970370 885578256 916165497 971949947 980906996 120924571 254845544 335536457 925852518 400195657 843693914 204414331 545577677 659556339 882961783 975116257 983525872 444806052 965503372 511759737 769210809 732131294 827045315 322855149 326285584 216263643 308864403 799355206 956302790 80342281 92422942 399547847 563190553 898247496 979520628 438946673 786555262 192532046 585759386 856517115 869433562 541141588 961586708 726484964 734803598 356187451 438437956 366107814 785161743 838060144 914498038 336149217 582148408 518899893 542663124 931196344 948416049 840656964 982057121 596805579 897711747 916367603 997601717 943758622 989725446 197128932 316517579 937419912 950448780 598246561 809004450 425115624 602723535 395414054 547174274 327252661 588530809 20477848 393159214 215985600 714809914 321717154 603042579 944293127 971754158 454581132 671046798 123633715 883556213 864759738 985437183 704796556 806241409 326509510 806878906 896854775 930137763 680998477 715618574 941426013 951621301 450343997 824480585 833610180 997871494 773959647 908744956 358841519 781151717 280768191 297712627 224598985 414862035 66491826 526985092 573073310 793545565 747217544 809952829 142451355 247794089 133867882 936206116 80630561 553415816 555367186 775310457 352225526 464668496 217555887 423619801 592887613 678438651 672793190 736720102 561629859 916771613 408803513 444212971 872139040 895740377 771729403 963726797 147269210 188755347 651241415 803457194 800557663 833359641 235368908 785681476 320201110 764602149 414717522 616679426 330642834 408479464 937304972 971401129 497263388 574305671 210193857 228513656 623986785 915243232 29301620 94383776 99920634 705373191 257129758 382493973 685622796 735598526 766402259 936256515 53318887 908242516 394358371 771286318 791862894 936303555 763217926 777081637 474732852 573044317 530590800 672752979 165454699 519599300 573251417 833152338 308815980 602806490 9131794 300684600 83860949 407512709 105413980 292604618 74968403 387700320 754390419 888110824 135322460 739750081 9340412 653888517 780935032 798678593 314047363 748537877 260968822 866934802 175279575 967376541 70271547 408667419 151148621 321914636 639566535 696976935 347720003 794025339 46721737 600133442 347375178 421732460 357076775 918510791 615618500 651637308 961905092 990217994 505705383 648431906 859809347 975878958 503539842 978244391 856654660 930336121 42294753 211188956 401194348 908881102 24121009 764139650 475522249 587685503 637354810 751394607 274825884 347035742 314813692 434343801 403993207 767343812 521358504 971596931 273766611 410262455 213505435 624869246 780704743 803864608 583496233 678422895 220643254 635724309 948138885 990241008 108388566 281714320 132584078 611238671 250823761 358163432 821442948 907936815 919532584 970621071 207284786 540747535 838998537 977703113 772740131 982454865 796876421 974386447 982948353 999702861 821373967 890797675 263411858 577984958 230578956 469572758 666026650 975527038 34547757 288877198 284396632 589288366 826983457 994393563 666320012 807249908 589254856 848419309 961642685 999434526 919014821 993809525 795786994 977746904 768042520 882416430 996907091 996923440 168220090 922269624 13696065 274661203 490267494 951729441 83726803 392118508 108703192 435629757 175831099 262432736 543092422 830519412 14639261 62154381 148314671 637170594 342615103 438248799 67165545 503060805 605283469 774293845 895626141 990558116 513929033 568065098 940622993 994255316 799910161 990197741 411736536 919462867 21861877 549455719 837344600 884599988 439774841 733539262 194106145 863649864 562371629 661918875 894296895 995829935 13892923 722519854 929008804 998309312 984909932 985118129 292574810 909827424 65951923 543162219 467302135 540630263 677539686 884921456 445772012 802969618 514101365 609106990 636565862 749608081 30622657 171601027 60705145 236226613 29456329 660702292 410800508 514188739 409916623 724749936 921414938 976757711 227724861 542201230 568541717 797999860 725771897 851708087 547396870 636846030 525145392 786958987 906218551 967635039 958528285 998795967 391443329 659344830 505650353 649399623 341160775 657365426 310544472 666607768 148702130 630915961 491583631 491624218 203789817 863590012 875226934 982677311 391748684 544442339 380537471 523668198 705742774 982257599 241357759 987589401 545700076 589978914 762102271 852475876 730268022 914252056 847683591 877876028 603328500 950045244 915106575 935717368 463093421 802145337 186254879 518538652 956977624 960579089 672569425 760429461 213900941 402309478 251519713 779957261 911043725 976646811 195405168 930106592 217492497 523074249 983116081 994255627 69513702 98634100 944755641 975454950 457646738 779584665 104685833 186910586 131115548 183524657 890446628 891647931 455684073 902817534 556512834 971460932 227294365 457484693 140752472 738157624 822025888 968990790 431733062 510954690 853688701 975966593 58945997 880870445 73328297 586391119 254141994 897056425 570977394 754851870 487111188 774091772 269020593 572844384 301135736 876666800 539461040 760798162 144540643 835985238 922381897 930814871 304970793 435613402 179608520 234349777 250646421 925898351 600416952 859480746 179153040 908423723 546412735 638909104 697548118 803910127 721203629 726774854 557710210 959611816 432545655 501330658 611190276 886993321 884414685 964496608 390998806 836934452 184251835 320185329 725774071 793196898 310654046 796453837 944104919 992488960 479040233 525521808 720006726 857803626 105006270 433385982 339745795 343314262 103781344 811823580 930336761 954532697 788803368 959226870 767022707 961161736 947216218 993625119 700890094 920785005 535461097 858837042 882229096 956993087 793535453 980207206 315934921 723312950 505869048 577640284 172003448 704987185 980539644 990109337 460342315 815654660 411137055 905591470 764756708 950690563 405022208 535841154 876221348 957113693 293846410 333662995 368820721 458151490 257521157 689956515 902390324 946495399 758967628 863333837 936798636 970772280 283563565 464460024 694135828 828364102 808837505 893237297 183774493 845226420 623949123 960868421 56556903 591478790 607595917 870854039 204956949 272535871 355939960 451732415 810112720 881484155 508143080 948527834 277167919 801887888 857606065 995078268 108821476 297028616 427963726 547002007 321103921 692260144 845030787 883498344 843073999 910379453 260572193 508352101 744675648 934417425 488684725 858094700 50518306 929159940 213162430 513333835 682372260 684865108 231294517 893015177 243547124 360260831 821263137 972787239 103558502 249990849 898947755 934773798 208314472 938430638 61042749 653111208 568157510 969441961 973261288 998504783 393857465 843109430 670386235 886983008 811894029 882483413 979454399 988307588 242431182 266842151 846924218 921512635 812515197 860947943 302497429 510140536 564621618 624274337 384329316 998225964 550276675 680778238 517611628 871149609 451861387 742415045 975894469 996192411 333603708 335939513 201434305 890207114 817984775 999118270 593078742 651445799 64514732 852467609 511388434 842993732 783461499 797010386 138579350 856263913 845203814 857810173 928999749 935455226 197266327 277920370 195351069 562157772 687444342 900621348 363912168 949652302 237238213 792354474 24634897 228747910 503064900 988030768 757418128 956628343 230031167 841714878 134134249 892968470 428341666 984990011 873535945 986850398 313235685 346905087 728132006 933214384 86684083 394524572 985497428 992996282 295985247 969133171 909726743 953420874 672105205 907606265 30468906 120655019 305544933 723661921 927551143 967302742 364239429 918868752 961059186 966757701 573555798 919243579 860799738 891043732 322335894 474604945 221338182 539884951 564450565 906685557 623327169 664650659 245832943 356516457 689187257 760612227 471249995 814418997 804734955 859841705 792681239 844144425 744758689 911339116 40202296 382979222 901107112 978815177 513068172 882599995 290143250 559094844 612625433 857905175 819765299 952068153 430856093 720786549 152017871 562754024 267393529 560775704 983654640 997145558 234484360 463903676 798144052 927371896 305605856 687449333 772294889 944063466 271284689 329110165 426886192 587003246 428344251 879101226 559111172 649228811 39683946 85764762 854363672 874763772 216679334 818661734 132595332 448353611 266070447 698826711 684589331 934833202 532953449 893344383 943316393 952959101 481243599 792334643 208030240 624184910 565074317 605026542 983780469 995170766 504661587 533505930 211084931 813572790 483094111 951820887 743783042 905484453 573416624 736524688 442186819 704417387 424251667 747226941 467681082 710388319 630003307 982361010 431976376 745289789 903157541 947844481 141654837 558377768 951573042 968909237 235375476 333612957 577266135 674470156 11628650 183457932 891158564 982285583 903298629 968365918 629467247 756308249 508929357 937876088 897440356 979094409 292184560 589092547 52229574 900837653 383295928 746345565 203208310 213033628 674567285 901432313 896190851 896396617 79638745 780284347 944548119 987131086 984812528 985329282 896176317 909472667 448315245 905570619 48959038 481667482 224443270 741789199 94048392 133020726 542746245 767903724 987052912 999618414 631842944 983698367 466507770 554880224 710786163 904986653 144146916 270401914 163916161 386336471 259735001 975891079 533383477 952167971 221691528 811886512 720691666 850317050 351381299 570292660 428592709 818987889 31704328 856973482 142883607 562853666 316983311 776831509 300229968 325416336 743357176 858583364 796214174 852668315 605992570 629896102 147452279 554809200 852535479 876850063 915196727 936786171 278462362 358971768 920822183 931179092 184770608 825956289 738968748 807037880 16103167 847546904 211734108 505250788 702167121 940726771 277605193 846441117 324832814 390737749 908528640 943915699 503071251 814725833 559198934 683569526 183699380 325954714 809430898 872142426 864949301 957886670 610544690 803868968 11522464 347369486 56839651 118017300 120983270 640232206 782779521 960257040 917692741 988129056 909969128 947792231 967028913 969125929 151451567 560237220 610756537 709550130 51244069 834888881 158574189 255917130 905064135 921196677 542758576 681547748 984504448 995376636 927398193 981259786 15368614 596382994 458436481 695218688 212409549 382336633 528008171 532355847 456321580 510213948 578872958 805679604 689169692 749515616 402785180 539858447 70640791 592491528 457222213 740363199 634432325 760317613 419244600 837284122 936218614 990434089 584157799 940687120 536772190 942492438 946655422 997406015 831271075 945434430 422528301 683054811 422232512 731460143 534055589 948375211 90870241 602904253 942380538 947044187 185041934 994706853 560761698 792866731 149573089 239647494 686596448 953486094 530361908 750695039 169975692 693900593 986336751 990549893 772747227 824188455 638233190 844829709 41875467 260953646 33978953 936048147 99267561 710216852 312245380 980580743 46789921 145431374 635486121 988216846 614734557 771716449 113698471 143610103 815569725 880232244 800053136 829146687 784234767 955945607 620538786 920300415 921851955 959223221 849457639 906924063 447038090 544386569 162996535 568539605 514761023 829896468 255459773 773797290 350904971 804435255 805411309 837478678 552828418 743504471 435050992 824919754 871844249 991432427 123237487 816451182 591488654 889341632 928125408 983953020 213394381 261897252 84011342 168848601 896069351 981422332 346118141 519118750 205820404 480387729 838640047 882614807 417623558 660846337 961088097 971203949 955985401 982641694 832871407 963560105 145060190 665314512 956625040 966617833 506796493 526761562 93687821 956517413 269288216 308634974 640775171 999915830 19383329 959650304 636242142 762187543 809061643 901720949 480380047 725559085 654764367 901710403 136064454 285582630 459863230 536223363 414988657 918014647 817470771 835658754 766904627 994711501 358043163 542047873 148634148 685138482 422621433 433999725 361131644 748982401 419446282 968207094 362501972 980417712 534537385 578371960 866148253 984146972 279928568 302925775 459396238 807736676 858869573 865808115 305235004 889661463 149741085 607186313 752648432 942263378 317840560 916939312 607124324 791318472 585637125 716194979 333996129 471298261 765211709 960608794 576644810 596824629 837665463 945245783 148664347 914501970 569162522 745761764 786211486 797353673 354030558 980179095 237124708 630291653 903584591 924262857 168717442 196227897 746433763 757580666 93361990 209910489 78569647 846330395 411888414 851847227 646734493 665272450 473084954 475028565 286703212 781044524 364590527 724099610 799610557 875275323 821684921 897034212 251753725 392724504 575260346 605660789 664576194 822072651 688881639 884745375 820457897 864482912 183548503 687136928 693781045 894241080 384440540 771073016 649223499 824032905 40267495 574317046 828765284 951535657 843753547 953917460 438298654 652005979 534636521 863305375 970175490 998971895 422243993 810123980 984542327 985797069 775185187 874428695 429080822 984492439 799193724 956123321 787079161 899256715 535868283 539034604 633967134 897237200 367666828 904223434 276872946 576391650 911708909 969890307 278074403 958983499 254729276 706140209 41150422 745111206 692139956 719413683 258961975 645630617 966570279 979511775 953070253 985512793 249769319 322186377 59862058 857797486 802095028 893880449 495153216 913782674 489195141 721259082 278825333 955375820 618815251 628125654 628696646 668905553 163862820 916053918 350365761 755727920 538838800 570891405 237349036 405009349 512365005 686416030 481272079 569627123 497593696 846075803 34219746 718220525 340505315 780578546 443505818 604375316 775089585 786897638 752116952 894877887 405774086 804636122 489572122 677309991 728244441 895122443 242677330 827192882 204349958 625669770 482262197 947171476 656792870 794719127 19213132 582882205 834099287 956995725 617051033 941734403 672859178 972423788 89900334 189306691 370196690 867777368 825533228 938984906 192291783 576703386 528755030 783344015 950811866 971330559 310308479 344176548 308340574 386419190 936035436 984805392 30982231 729955374 471608199 913260928 123965735 467676572 998828921 999383833 361268005 477583157 153629987 608331202 613906136 856577689 700843851 717109345 929024684 997498063 588033120 702472447 990145399 990528857 438698197 787364885 476499707 863423274 508262957 787537408 28318751 355982242 789518567 992358315 219445703 401905843 117931509 512407894 741784089 783486610 946146607 995797685 243496678 813576769 696219827 907026019 713968413 968710297 849606774 897548521 740907135 764761001 750775332 916649752 601067684 735879081 772695039 983479650 78291956 147350695 950073025 950939684 867174313 913844957 569997922 750106913 552453653 694043875 666287005 794363882 184268267 944439418 465421445 828365651 101006644 857482240 453800388 619192506 301953888 867035470 738374346 829585179 185872736 781399306 146834095 576088430 930657474 985080364 846914253 996863865 869892383 896663636 527101766 687072705 786186193 791135918 694773319 742006969 138503641 348103501 43172319 45103232 350494876 561638680 614536606 733994661 121156607 996074966 228297761 502364185 826908543 879984040 332796 529787453 381538962 984687564 435940892 615054746 730657390 958523208 838872590 845630866 439623083 982992716 500421547 770793255 713351324 856779277 388175147 901063016 706387056 800050457 145726094 617276908 232427219 617426046 289253618 515286585 997087607 997627104 129925296 968729840 806266629 931607109 584432296 934493774 262450757 920193602 117965062 767384346 335485548 905836023 334870912 826071832 103489023 905343667 106520609 356178972 386058746 930225159 740581308 912981238 93114584 109573096 107796257 744865476 472117281 475666616 233339494 806791949 415611127 862521738 75834344 105681269 349112949 780591075 222024666 660558754 774069293 909353342 944256064 969164500 44741233 567488472 548432698 853480200 308015057 706327253 535580392 579582957 666821954 817569387 87957517 815026995 856626366 988704939 950451212 994408451 745313569 958489687 492448288 814443664 151346185 279792708 919394745 981226616 19481668 59153180 316111532 347406033 40345437 91323172 239927720 779480742 902175108 982998097 899802371 919460885 76686171 827198823 698307101 789193172 501254753 839448456 100885101 941055190 374009147 632971255 979078281 992992463 118799645 579657552 941676710 949308939 117948510 527646341 837594183 885411154 292859548 346890943 585318214 610183883 907015274 989160591 67102315 343389330 537071086 621954144 444382744 609923806 140857693 637468649 990560220 991849085 985563252 991400942 578832841 686790592 889776727 951999031 413147891 819987105 236160003 320664446 121998668 188476462 740783315 810082994 446289982 761669981 534501927 551369053 581606906 774043856 434243956 880257036 755536320 987045358 305584104 900868982 740523743 903164067 702852884 783137516 497307786 792662849 386330209 445027776 571157896 838356226 439614048 531252549 639955602 888833978 518640296 802701205 552403925 672235636 265627310 860015418 112631329 545526523 437691861 948072799 159806717 375824853 496342596 731241328 761734783 788653852 470671996 903981702 864939719 876269044 41213949 943335345 147016152 594352981 499056962 796978670 699744963 722699875 83705968 220698874 135283777 728017435 510193455 519304622 530046825 810114758 125184833 450529991 815372839 844927449 328324779 706176414 772690276 833286220 398495923 737803654 411951642 696259092 916440143 943781569 665959726 717087263 439479756 689911038 641560874 881258284 26468681 874426608 886586206 957691933 209795075 287707746 192536718 253456804 999720116 999772441 233337897 367219520 198755459 867774826 908642562 925151058 872578394 996532483 185878511 906417000 955926598 965487218 905493700 948279147 57079523 317375889 189165317 226499948 304396456 784651328 632779296 833824371 559356408 580760766 444847315 643206012 275592036 280720014 24819037 574804192 91053164 954329997 892159851 895007037 164458954 594958266 795115270 993814247 684378133 809859897 5424912 860795665 665575081 882057226 53922131 535452881 280088831 769314328 339571347 840277152 321598654 459081022 692854928 730107199 823108377 894269073 724836891 737689210 908549056 959866032 659176839 957872964 327809935 699518768 132120732 857238001 348009027 483186443 480198379 875635798 216708383 606985806 721602440 789911654 660267432 879831009 640508715 742735747 71564707 648210756 963267692 967458818 852017371 962387779 618895745 743511690 125261505 205797886 336494781 742669695 502926938 688279644 687254741 834396820 162244152 737341118 94037355 460789338 631358131 679073533 782579153 820982817 149025290 359839757 143890643 601216934 362352411 457480375 516942539 920697580 547362457 743119675 19635666 132162955 619285595 684824540 625262752 641768000 10349255 106778561 403786966 870876850 873892236 943401347 454641861 594641324 706842883 793582555 264896627 443235978 286380685 876673995 241664556 375958835 475498769 587183621 712154158 855565705 760227540 977155054 310717619 376312812 915739519 975728065 512391265 864733539 402335248 572981797 704016527 889820279 661295953 685043305 5388264 651753836 385733707 828459175 51747046 57433308 705148873 899989254 351943610 645980969 755579359 844952799 331407589 405007595 681814211 960315204 389619310 933637368 832194350 912246148 765185570 862180232 478579591 721881685 701739753 870836004 428354364 754744420 1188562 377798705 65333927 668620010 496801155 975459062 378761998 826511711 240659165 671932586 173714217 463830710 311360885 833036573 316018094 851842649 734334797 927967005 718778695 848618652 977565140 996449321 827875334 834241051 786678540 841406032 309956545 500963403 975158727 996955965 771297799 932653310 304419451 531196867 720021456 938087182 12978067 688101510 576486245 901117040 542375412 604915246 72704824 878017324 107400627 471776103 588725329 651214254 51333589 487279725 64790172 902426913 472955554 525516440 476993295 723890309 187676880 305446148 437172887 723082456 760850239 784569101 383896377 482382681 959875066 976789777 243724763 672302094 363037839 757723970 680647579 837884342 452345307 805203491 435622733 481460100 676478963 855606907 342392458 850665448 68829197 753560992 497407111 734455542 796302528 916261226 715984730 965265734 944895955 950450766 661905618 790284412 482186126 739563419 851969972 964518436 402810628 905520002 946288136 973810182 327449121 331930503 419103785 560391919 274122524 860293915 554597353 668378042 403573759 482511270 994239111 999028387 857233353 927359818 549855944 797522903 903284809 971808152 438169733 881204522 782920810 921311896 222662807 243262563 863789402 956748365 103193808 523401386 107416029 306963390 281387039 658517013 660191918 873749416 693303942 981625866 751020958 799706182 219596326 393193136 774829277 844285723 217570723 962389412 480248649 969056727 913054048 944064879 675960091 804387099 210669365 842395183 298508871 734652056 749952098 855137837 704506740 787773069 252372270 302595779 182266454 212518757 124200068 982005652 453969058 854845991 394419764 690823508 608352824 682495582 133909429 527705456 166870604 744388614 605820185 733781753 928347836 995003229 94875046 216520708 272741178 980958846 399797745 874799172 803968012 887778338 548790672 943605365 551541452 766285975 568836490 950188288 142056986 331611072 770870180 986451992 262265986 306117094 534996700 593897676 893983563 916299391 461134337 537441636 344805774 425640574 468806269 953312526 227067927 945096025 689409840 749030387 983815231 999631803 807340967 911150446 243318425 500098246 938116878 985920149 874597412 957900843 248142517 640696952 902775025 930751303 664170063 713115764 555224724 647147179 771779692 806126683 575761020 909527989 937288363 993134497 675821317 934632226 803045634 975492791 796178108 847385785 63780472 669305441 174243438 835382344 450309700 657385693 17806362 611318941 155375394 350152682 98297706 356408643 210004395 828159517 987007875 993637139 689984656 897821062 205495736 483398524 454234861 671175071 803893996 832335974 919613695 962655177 503147835 826837096 663096559 987613555 266865570 551344860 255985680 611216909 947197555 974849909 375979375 400902431 6124020 870965607 18483078 405272249 785253667 839266768 502611643 784729247 325221642 344507288 187307876 466127882 157443520 336642416 973780044 990080264 558558743 811720468 739472108 928599376 86899163 835745108 368020821 801495155 208831577 288444041 121575944 372918185 329719082 926067126 304650011 476171457 972789083 991208762 319000917 428867286 765212633 776416097 67397038 541878212 766580281 774047966 657910831 729634911 537451904 613876461 910778629 922532591 399964988 960742250 110410608 579557864 471791856 729962836 988779698 997301176 283538676 489576507 108681916 434503269 401840528 923897671 522214391 552763057 862260356 926134444 605246559 745337741 347691541 965711324 640151371 735989990 947256581 973546641 677005949 678199083 310755799 627339420 646367758 883586355 811264162 813349657 392573396 944475508 719062551 935789120 352643065 630729501 514891067 936436916 251227663 263398783 208510769 921086775 343671248 710041395 246267691 983578195 708790727 800395766 905503586 946871726 644027826 738638950 820317607 939490107 97480380 237696818 12462186 681961610 990950610 993068426 53927796 201117682 921924003 984703589 579619891 790263656 832698689 909208526 138658314 303097511 547464198 722513525 123506362 261642538 158245674 933851323 970006830 977129172 161140575 206054730 202811985 248659281 34418569 939333674 818805674 859005323 405380797 791101066 507802515 828351600 64865833 490133859 942554312 988863301 252001285 774822139 823529039 878006005 115012133 751089971 259558184 972096007 647945928 675504990 902883275 908564666 91942113 899314368 540052423 928205513 845993154 977706793 561445245 842981367 301880939 518106070 57965916 917694807 264062384 943136089 972724761 975745575 126846647 669454180 286111842 695083035 172406859 323771156 9695881 859739933 372807228 901417445 650874957 807439014 143704067 184809607 989983934 999559456 93302694 568746662 448315100 800985053 565480761 650813365 651785308 832808026 936411905 993069973 87866648 519574165 969821449 992574683 765409777 807429467 853265895 921520152 232530084 260639866 699708073 877758209 62766852 779382112 413144447 852886532 927773306 953553582 945456750 998780722 789754110 972430913 254389148 361862928 775132523 937867214 454615707 687228420 448826478 662524619 746759427 849097050 122724837 979283881 959503247 989458630 291849509 695032936 540633329 963035863 303268515 420134447 235820421 630958999 902446288 976553576 217852187 466121465 306924702 472075754 969463514 978355636 900034991 976611692 971302513 978726741 491299759 992545304 953513139 986782426 44099898 794824959 933181350 977138453 707680165 988072342 72949020 289306472 212367147 607287212 733827961 811571418 444057510 813963961 606125614 845714213 239353621 798445348 912475679 998166108 882944859 960752027 315810446 836477122 55291907 382433510 852544520 958761869 695997184 807222642 775795407 888403725 398347769 756039859 789061243 810155560 856363692 955073095 791480718 830078856 876246366 917254028 867524673 915154885 537293853 569405009 7056628 528694289 525761955 971890018 713820208 838224446 312898869 735994221 841985094 972472969 16923201 658803220 145913969 147876939 977357040 991146501 195080382 234574861 523547752 845349107 920368630 962893818 847554317 856091222 742245584 962611077 934848068 946731162 151273702 813094757 697663535 843663232 112932716 729660184 191454235 726598402 670867793 992992962 912712671 943713411 704913636 720594676 414696939 998671467 63802121 73300019 613945878 894317465 500678079 772078580 492494276 899486735 583146186 894380573 698743800 855109969 859989764 968103468 864027594 885958119 729221827 796419181 323046541 883290348 775174127 881674930 123857525 237379128 650027377 795126644 953567644 998602649 200612732 430620541 638596980 881980685 330689350 758194054 330410516 510004965 675764749 980195099 159964402 517805367 880481858 917275825 79956057 896250770 248002228 311735999 801196067 812816707 260853749 313350321 703829095 937975577 296028948 565589694 559210531 725913694 550675490 934892032 176975033 532902000 490236235 891987882 415947888 904845510 543740001 668282707 758386362 831241765 58080920 738541690 284848006 432282076 654412383 695026446 423686555 892179512 181016158 981672172 717997104 856964400 793858921 799623930 973606230 984935927 631068816 773406732 957264098 989071364 786580708 900374120 718669537 947349969 467629128 858322319 274656806 906755964 646799925 905206430 40096960 465727272 39016786 358807321 417993132 759723942 436609837 516063674 698989762 754692036 538600812 913683736 52901882 690860200 702692849 954850079 564310961 932979408 823413402 947956238 270689693 596065803 387143483 650950830 692553709 781304910 386644397 806841882 659254696 833813108 352220217 511315771 993107885 999853956 897488279 932749027 23539499 151128190 830164387 972262033 700300473 827764468 675550366 888838246 7500385 390811703 738585833 875768974 954766365 998839821 882600451 912091497 343552662 995905260 116420795 499189623 433138917 685134543 203213332 578997064 897577525 973899753 810148454 868256543 131803846 938451264 893412058 936799176 106810402 855835177 730943169 737631363 905415776 970009908 160014736 985838561 610008637 815624741 977079757 985836930 309539206 719919596 438456024 704220297 664784924 835962101 809374176 836452394 565221486 935651785 124908316 983786920 925702339 955841449 898690724 983890888 626161255 700640755 638700272 726932734 205680866 421732069 536158673 841937732 49670072 573340537 868789704 999965554 869578687 914788095 818353315 997986549 600667564 933566675 830500079 886246136 587427535 647276125 821039405 913769298 429416128 731083230 757994119 828719893 775476818 814797748 781952558 827416357 344801611 878171469 895723325 925042248 201077543 202342235 947820028 951408251 88014640 953113649 121323644 979067702 211332514 647766622 977239635 981707286 223722663 857844513 932411311 943829028 380914488 557731496 58850471 336760854 433871527 959755477 140847789 985863392 850922610 930567385 623518782 907783985 133719783 843685906 105304231 883841806 638232204 645068552 857613826 943283708 187841064 276378853 561442756 819618097 98651790 991923831 554905412 630308588 751088087 776088866 336077133 603774235 32019676 565328711 413772143 572994157 412814014 574821336 157388294 415238926 767318123 849075860 257504979 685219669 941162039 947086744 411098125 581485756 86129669 389832991 675310565 709857453 316579902 415615241 589215852 735572157 453210636 830293493 349896426 973702610 274288059 807547564 388224810 894199755 338828805 371678734 922100911 959226938 697927586 933234956 858520620 934250028 598605476 905631541 26764100 740210712 390142243 594472455 497500952 615388671 688679088 708483477 449004508 458188218 448498025 511496113 981246713 995170102 692121404 983725883 161440991 770327976 668592364 828582056 802079579 844323684 365206431 887044189 127988398 718806745 378523994 903568734 99449981 855912473 752230365 894788955 934342419 978252119 612040004 833243269 989879981 998895151 194873460 339155992 405951108 874968454 270041903 442007187 155745333 712370646 790825708 995604079 463809494 515124745 61412357 267035075 701557112 785019090 115108679 116281832 55115920 140930135 892168136 983597639 796194862 971969660 381178650 838542015 137734181 680731783 88871628 883488463 951504407 951825826 879328300 982358837 309764045 925391776 640259906 730467956 203742652 989848320 944946719 950487823 155535283 256865037 827872811 856476407 205509685 348805838 486552917 835620966 853081052 993296914 683392021 938224169 51440138 415851092 478834858 530519327 769106968 812775071 742785909 825830622 355732381 882638716 316577152 616350128 510674898 829430381 195612800 536640857 55817563 557764384 23337868 229994568 329001445 651950048 709506315 875122151 454471958 575515679 935309807 978407337 931089409 948909316 651138349 992613104 216270819 438487276 288693120 466385763 635415433 925519100 953397053 968124889 540855185 883246673 771256367 960166917 705184019 781138398 350431968 752654080 727226777 897188277 447268319 966765608 192472433 975538542 468329 894967479 323031081 688699923 335495044 386673590 834452585 886850188 717945358 878299340 932584954 994068576 180825698 805693407 21840692 598690150 976604320 980896040 149348033 278099868 215333590 250996391 299589828 417837216 720679950 966183299 143536291 214433097 48463443 525967161 438032492 831409124 815588615 911360467 651647062 911467315 307449748 436639208 971914827 985371842 690952100 819532606 959541760 989606884 118773321 157421365 578778072 732385169 163229206 379631217 806214602 947087427 168226056 946091330 881839282 983998696 637978568 772942732 764492281 907387672 474018453 493409731 188358977 680016524 613316084 657496013 337005368 634863796 484451450 849349691 784446632 855096666 382605267 476030571 765897398 950447188 576337477 605878804 117824819 485292654 712193431 989171827 995081242 999447752 161635160 437717074 951826244 959837018 325280468 495144574 135433123 964797956 53382139 222698797 661965134 804001929 747969860 756145547 884133107 893916159 429116679 774437877 681514936 862048821 557734954 885411516 878798805 969721179 371647940 714681683 571882912 723709465 524427456 749668304 949693500 984911937 966975582 969722321 881597143 974967532 444591472 477783114 165938127 566965431 609518815 951833760 367501630 577177480 674041660 939691623 599499505 710826876 881874390 952946706 817086772 929303561 209975070 458771596 653871575 811751018 940812582 953714492 653729938 761311172 774692130 879813505 456895520 970228437 205683592 785869505 195099009 231697884 496776096 610065470 594772544 815220290 384674392 554167475 525733461 753349466 203935513 958241139 500919622 746895302 302843737 447240277 158934284 804197979 583033700 831748784 916896576 946968492 928192464 944794330 448552538 689421058 703663277 705944494 154162445 259798763 794450782 971510877 603447811 696130325 759113272 879871417 480421646 561040330 421407923 851759507 131396468 693591769 528700815 813245663 908081224 984375081 960851817 999553319 991271805 994608033 63779063 889077634 170450454 369951164 34191869 105726400 206547705 404958263 707013390 805876172 142598412 913358138 425596332 683016182 537479466 992354881 827050580 948537143 216134476 775873617 659212530 962452097 361848391 570392292 111677728 753635219 765250036 962160210 242730172 249760702 785207949 828666627 311206255 934730153 797823025 830980444 162211709 770594031 543192609 671196912 563416238 962476475 116876467 792167493 706749895 916249853 726019696 966701176 735490852 899581029 48293259 692970693 997426113 997988002 920158495 925208626 126679473 162553007 257557233 760460623 115095587 906282426 128987705 977038138 259791499 586733839 651243343 937226880 738188752 787116328 290661838 554954807 539438752 980230385 39436896 62715092 886254127 986518184 728757887 844102628 439160249 926263202 78859169 239236407 389824942 713650082 269097388 826345694 613071931 664376776 150013595 395182383 714672231 805196649 789485739 977796797 912142462 967767825 157566379 410195918 962144266 971061282 307000439 818883545 75771863 307402265 913121220 968261685 563879133 765324530 380752870 478943355 308044831 812057145 446672927 825746643 750082934 907699802 104618770 516859721 859013181 954789543 838171657 850287223 494979481 572294851 822431918 887925867 789469887 803856594 919273699 996898914 153638306 657232747 195896842 767362754 660481044 831038139 727719757 858577240 186483925 407676213 68003784 747418494 939761486 989488101 116478139 250987383 641718206 961973824 352053939 543639984 716552020 952031765 558429843 867883719 618440759 621839337 877850460 935790324 152491085 644149482 458820363 888479880 949334329 953660157 297394083 820296327 134109674 215798635 320633296 526378220 636092275 673411305 755231711 983659292 228868607 755092632 569793265 975990738 375915120 816688138 950314581 989546046 131770695 201160896 923555360 977555885 862442551 874446685 9770142 864627965 770814346 816071687 183981491 482989193 127458325 250204698 931625016 982187139 869106055 939895800 844545102 927155495 406271460 934910405 671848218 928673606 699200228 733708212 306799273 845762670 911936041 941556590 548444070 683581707 166407080 947881286 374232732 909628466 503657204 911009338 623343435 766500481 206947333 661257961 599171185 833422638 799555470 945582766 693829103 736203769 12002369 625174031 78477725 126167113 216495263 552702436 246243796 871224049 53342061 91260641 917347469 953707730 84788379 373260908 507071993 568830306 676610783 788074662 162874193 730375573 199868507 498928000 696897582 791756518 646873166 652165806 621905948 717731566 9604802 928578620 652334858 804123333 385780481 622704953 450099827 464182596 63411652 463790711 832930863 998995435 721522536 918419351 805475705 811917751 947157094 975546606 258698372 759765126 646401319 853215962 178593490 503235390 829379629 879222530 216891786 637582219 846850063 936389113 398827681 638326677 959823884 960188345 988042928 991274393 925614822 940588426 96201314 994732468 484420671 695794872 666893545 862626520 844173601 949704425 873531578 888213097 965749566 968240862 412715238 420853089 683404939 888336247 278633536 855584329 924915127 926661492 79457835 599522652 56022620 166944287 963982352 996595227 959093402 992530478 139658240 195595754 431623984 904205870 649833543 819215415 636798038 946107679 241911327 973810487 2064050 85823098 480568705 704581495 113848448 994110508 240087026 904941016 541615975 631589351 749625917 984158620 589014456 837501564 767336570 869972580 189248036 917672974 64121300 540706279 479981089 773370571 726477789 981696975 493961007 614952938 47230520 835241107 751671217 792877881 923636937 960255340 725377910 898149959 338432276 543686905 924522785 951236106 85972324 221909445 598599822 818197756 574047644 979653518 381574007 569860897 76906791 101229328 630339842 835150063 921075433 993222692 778403546 980588304 349400169 777007959 321415869 428067554 281299998 713770049 242194195 940146523 374514835 905815405 763588803 866314867 328988328 616572290 196996366 324958197 919031885 968862803 558924783 923366234 350308413 499386565 937766633 943115473 762769063 847745399 359653589 655993065 233705291 241548968 267494201 267565508 883202074 939679660 278920169 662329065 660774525 988854165 75923595 256361954 491568777 923699958 538411669 835573206 154676630 653903135 382027622 867320806 691636406 753950740 476649909 614303769 259273467 381270191 109391670 829410564 618618416 667516070 641092109 905475389 83279785 560149674 75543380 224878510 259708525 874092765 615187290 862937460 661002173 802638841 96267133 281899560 331506240 770894842 915221862 916120432 768087506 883401249 397045104 700067751 467065846 703948040 398455456 702602560 148173450 585920321 315163193 633863710 630054104 708325580 104052405 591121186 333095335 391712847 752497381 981707381 74712541 630849982 273412223 574412592 75110645 134560707 675278851 681323377 746833189 950234345 447677036 772549364 257725995 718929317 165731064 561265900 158480624 435593893 789437216 983393034 675964886 951906792 784096407 923373946 126349154 959146185 440551530 615606485 299146222 715010991 896986849 953600565 290147452 423849993 948723675 959617514 583373631 792117797 534387147 789768040 373862779 750648150 737773390 745731788 365360539 997423307 698164342 975806079 452194394 654406383 768954403 910643938 331216398 608345058 118728036 569218729 996940671 998472468 439568646 896373867 797429730 881167610 876461506 889924467 526057227 797899773 441874263 743383331 288015594 745535149 859450679 964564481 789446021 817950757 119126400 233496179 255562465 389649483 923241088 963497501 554709601 820284687 961182681 965803997 45064771 148549497 960623173 964389020 43710245 900014927 806032180 866750942 226703878 924569496 636938866 650962259 153872896 454112889 189574924 436730391 958010298 989713621 781713841 852016733 130149988 245199547 657819330 785699454 172719160 208080639 70272833 231907959 663607398 823986690 225836098 793938127 126484644 866020996 99463279 332361576 471718864 691295901 900642614 901379781 552302634 697596300 89351595 401668432 984739643 988839945 134013270 989962197 249667890 640760691 357189641 900556891 971686051 990186665 158180769 769988690 815810572 986180564 800936673 878768340 521787275 588905693 941220236 975007026 743827916 873249250 151065147 230488543 9798364 130974810 611102876 890713803 896029933 991793088 612652350 785659448 148193941 822699342 940979407 979604331 777394199 827092151 248607522 536099657 763435754 996744223 138662941 744357402 981253964 989292002 829274105 834361241 338603072 571270037 140186482 366274753 879251318 928693722 660686714 854054856 25318673 960100946 185899203 898053656 199950223 825857681 447095792 510315232 265897874 801236993 933814999 975119895 974988229 982050013 828703910 829173115 441060577 451239022 357650093 688026304 572765150 917434775 826202822 867243260 112930137 673826333 75354222 271363018 250244302 952970971 928460749 933532473 309630125 885179313 281199639 645248970 771797082 823196082 926683942 927759041 80139774 947461285 875442937 897925260 393452651 993048813 345785254 904266893 64714488 990765277 788015982 822907319 1325248 402810152 443002992 545949250 359461132 594169985 453934378 913173690 160332700 557863286 337706340 956842874 715455653 840541178 218158106 353021000 656681317 676595112 964926151 988390742 50681012 500812393 367621290 697718856 991797314 992317081 612315120 746864074 215681163 395464897 595557215 882727109 59763808 413327848 937895621 972437161 914819794 916906088 21322100 244663878 971468037 991487344 325446145 993414574 327336015 983335830 452899438 914854056 666326688 843313120 371085581 562386884 770855723 975484596 1458854 457766335 776810662 874609841 253452384 716569602 446787022 892588402 655750156 786792733 776944455 816381173 669104461 920296725 740531422 859859307 486369021 924562925 210218311 562869738 240508763 390782864 670780902 944345659 50470939 682041550 445045038 751467927 658743659 836461391 252898636 286047909 143918025 324848346 124301274 624242765 452122296 699916396 357889425 924384582 777011325 907913254 388115032 571528287 483601732 910583810 567833129 765008177 540227417 575720407 814958651 885547678 319377415 852162991 26708602 408026998 756526181 834365302 539805512 887896094 836714593 836922465 389873468 906113960 125483854 412710108 292492829 447797184 493605512 950513423 169182568 643871456 593987688 938575307 598355424 766583135 357068992 877382605 368376444 937744912 625330249 690150276 509943526 574785814 361724711 981055936 720347192 779075525 540927916 698386200 108436152 460262760 238667915 705026194 195668090 220666862 418035438 683391743 340327652 962050245 723928105 739312885 622405536 726736846 888082866 980100715 150308059 164539342 399964049 423752266 883871973 954524583 355728925 988959669 319996392 480855995 320634431 510860870 739525200 796548102 432829541 837657806 480992428 926644850 450807917 496491475 678963937 985478078 291294049 390486120 643076536 915551538 201316065 562341957 404067704 908369726 915658544 916187070 828299789 965028991 872964827 956103850 588383059 882453324 848974623 856617703 499820998 649911287 166923680 581499247 663672381 788616137 722930186 910291963 923228523 976423109 521762521 770598313 68124251 738568817 595889858 943838648 365829794 562558560 105541266 353368268 256154579 527716675 689542732 924512751 753936460 817230175 954507746 986623434 399712579 795872735 833669854 846767809 872601260 946328269 548820766 615651409 870804639 948617723 338233127 871468487 586336412 819608466 796175180 948676587 361190641 804592388 324663116 629507917 316771240 773036148 255823649 532334686 498808234 660594960 866091457 913053596 620416437 842398158 961293339 968105985 777896286 798601004 905787957 908314182 701249206 900723472 433961881 949213062 8456433 752693073 918224112 929312252 213925864 931037673 915805651 992719064 183335962 715799998 811050536 924600204 262045098 777106358 360304794 435874344 415035204 772591627 258002986 341637066 373140215 740649044 318389976 359820636 133149737 341842232 605085877 825564435 867310843 883083699 680469945 924431615 769127247 932311731 708206693 803546990 199347255 870819816 918480938 964030006 189243162 443802051 728598077 834169934 708045377 974366477 958842759 995198341 869113016 902049348 993362550 997135894 478614976 841476749 182872048 271758036 687025679 755890585 320390383 525772469 159846551 704101170 27595506 907199028 604196118 724901319 337325080 807665569 254322523 985131939 374242093 582491026 708548273 936225928 152377080 533174736 301074461 794634447 614025819 865930597 633718335 783524750 530970212 951987822 636810044 710691488 502103195 731004774 351421311 873671759 250679805 295242048 795936064 934933909 305171806 470135067 818378587 992362174 899417492 969329017 994051643 999147062 463429893 795330148 81410057 845177606 743476461 875129423 940332488 986171964 741064658 888134722 27112502 687256600 675142939 984440862 408656207 415475170 937592677 949520180 361869190 804361542 641152755 848682749 407805611 533502136 588393496 705651175 674490194 802304990 110559990 687480664 825117543 864564390 107126815 613723788 929319320 985585624 1824697 413176721 213894105 710184183 813684778 851095504 71201694 274942524 967733930 977716889 208240679 536720137 423865081 986815725 131867384 219918131 501393661 884733957 243793977 742181198 178150792 434357292 992041156 992480363 995877820 999990842 451029344 749567302 455955778 587657997 934797838 969927773 268122690 981241397 830346563 933391954 65777207 259309697 748991389 778963636 988167473 992252270 230612777 913728577 792982129 903757060 467698199 475685925 327955171 352096591 784721072 856035945 861052642 912290981 346114848 754405987 140809034 430546439 449823436 846144719 831393570 927408082 690240048 712487295 172056635 898894743 469855005 480993525 162733746 597179655 932799882 939274628 943610434 958854340 305650376 354487819 102656007 338585674 814448333 916757740 993671476 994248129 250423698 600012609 307208533 397602317 753765497 814741116 134555699 538440135 257361290 646231185 812083009 826714525 823379813 832966048 253281245 562452351 652039808 760855014 385690473 725534160 921995940 925848067 774447148 936197151 245801562 764847279 124148499 650415541 525705790 905789961 179354890 607670310 485650166 972924668 356633483 964816418 717692025 823352020 253031117 632244750 497421599 543821634 460898779 863247127 206288098 390106579 306811654 429754418 349948125 488699562 870197707 997149295 331358575 425437979 909728211 972624756 640173496 920027904 409563573 472187135 42269894 44894293 489835150 613596963 34568249 621396500 279617076 827504578 841297976 868528960 55141538 172863676 97676351 716219049 246774364 301957083 609655556 609723018 308894121 908792507 30936464 932576584 700036976 895377109 207069223 839473863 169596412 271830325 154289086 214657965 176740744 679934817 288912181 435973020 805696029 992217184 66354646 612110594 904492533 905687739 661808727 689293670 971772772 976230595 226105196 736156683 864857020 912680697 505381775 702436656 215324895 388384648 397346278 809647300 481242598 972920563 164857406 799658433 848217379 898976048 714205225 998342394 950706465 958482401 95841949 212052416 953838000 995957279 425452115 730606293 428014934 679784089 718778947 938170201 788744134 855852437 346139735 933460964 784621300 918485154 54863383 186165183 21492889 829728197 469038772 948094114 343188656 348486152 597631714 799064607 655118954 749882038 399039478 629193134 790649944 937681082 115936128 282205602 580271061 902894652 389148075 805574347 480297605 896912492 658459486 942504534 889008666 910994295 611817832 882592159 179626505 336084301 961405254 967657182 468638202 489182967 26005277 308738852 921884246 987034104 350547809 678673545 193724052 371209225 68529991 207496480 858126434 963959539 829087430 970224154 622862008 749031340 967207679 999264147 221086689 821469285 456355919 556307748 25594829 528141154 397843529 544221623 731483320 860303078 602307175 799423056 28748573 395284645 845310961 915077879 772162964 887915240 418891658 610085840 38578140 412068263 134453870 212490642 372128717 808800441 457385789 537657364 179346762 394323006 907390817 968531696 99881257 507613126 561362963 917072593 854618719 875822851 842545439 856575343 25371594 700929525 83525940 856767089 687666228 864876170 923375725 990748938 10285083 899144665 380383368 511118104 811242260 900970118 854030095 874062174 699737764 785312101 986338366 993512790 685779780 720215742 374422908 895091848 535208599 662988864 254957597 700051725 849801372 852706541 311833945 737229362 753188777 759456844 414890424 868596287 727906787 922649619 355391270 370844017 538347813 755860378 362310667 405760726 134652099 645207606 342664917 366287806 100065075 170181487 855717558 989264752 720648358 744907043 653646993 833969503 181963261 462553742 702029662 880641177 778743814 846050238 900784086 974300194 858777248 993021901 86120989 758490692 478305003 884076669 640434684 734045660 512425006 898290599 296075022 613216151 127441687 986699390 608058370 856973464 338667355 713895620 183212005 204796580 312862795 971922513 920270162 994954375 468087174 999247806 838087620 961747033 897164156 897399193 544469160 701515895 39702448 138665937 237496607 825734518 811978876 934114315 13627461 634322852 672695720 784647702 492960816 909786476 911813435 970660711 172074410 461833343 739582332 846385560 359583305 903001919 880453110 942902378 24763937 205645975 628861363 964874892 303111823 717531131 153335989 584271839 100784622 136473147 920734877 963106259 798765126 852933799 470038435 624572946 177729330 319499056 639183437 954478290 271466107 915426568 850667320 999095493 510749054 900425059 828814169 952873574 534708740 818986508 913703149 998530362 572257777 601060856 454296850 962756009 806960644 879233501 740237060 785384183 889993754 966847300 557307168 957208440 197097564 405540409 294448154 841289330 200572412 844431384 207193197 630293427 684803765 919529698 84332872 647129362 227392342 410667799 565051747 826977086 625640684 940936880 867778413 872568952 761467328 979246780 951498553 980567851 17772687 51602207 366191547 706999160 660277717 979955627 66096870 835806732 653952408 663779746 510906403 570398084 658049897 661836538 766984211 905674359 874690722 998449526 215188894 941469733 191137432 616223219 371935065 750449945 635197705 638678829 965366829 970703299 830169996 885757568 539677201 585153199 166517694 629596747 36953503 967201313 502798723 977682172 214878233 335015605 911625705 998146899 901293996 945274182 838800005 908561841 324591785 398870259 562932842 690211029 702009288 932847267 610794673 668232762 874925769 896347235 252437471 746425323 603062269 689258766 425406372 533060278 798046826 893595963 586531863 947086312 846623726 899716681 829059672 905734541 59224814 298638188 284489430 726786612 994845324 996620422 997122028 999189553 171373805 852056617 745852234 935256894 13293833 625386186 359692626 762581089 827837072 878800433 21489618 207328641 603111736 813354660 515165269 654093073 45474290 871279534 885501167 888074551 928514525 970695462 467248247 547651870 964241605 975518030 607772344 904709015 331932545 431117924 649450853 842487007 891928724 913009156 276292600 558640298 333571776 898697368 704211351 979281086 823700006 985558904 620768535 972550920 378565050 720425998 271675958 918508320 410693753 955110472 867110088 867421512 571549987 861688067 326588723 933120763 385175970 841028277 625704898 979011425 563739652 801226113 522777243 652803733 899131271 947850351 889787131 912395742 824100564 987446820 168690725 786568722 579570511 992238144 339770451 576160863 892434142 916740285 164852452 568688796 16295160 852318033 335253958 992813546 35329929 262344293 357438349 826075134 153762721 310827285 232329192 950684648 816637002 937383790 64105919 991451236 42042006 510716188 195908672 338752557 842494103 998987988 40021192 157340780 333203092 626065934 578166694 799533075 646584360 847280378 647633442 850486719 247776434 592945345 273117927 333814540 825351871 940213111 70198938 496705365 500278845 986241199 418767060 655598496 547355559 743269513 803175715 912959838 908940059 960955024 238244674 978886541 207975226 751845765 729992424 860969130 102112938 881431093 648491671 736090693 890553699 994218026 135506637 783325939 822959099 987492119 32805809 81226145 40580346 226544360 393231486 610179250 415485475 807052039 625300349 723492058 269769568 561538239 584250398 900573986 812878019 875755802 40007618 599405691 678351634 924951221 555628744 638306544 256390181 675097064 202353261 862792916 21856829 390475137 334713769 447025688 530147757 598893384 142977224 613038034 154344599 286727327 85131745 667818053 282746128 375633047 102339884 426076473 579919169 681338935 875195676 965861434 434442243 955203822 158292053 589454919 769146169 874331749 435913964 628849139 287062558 794697155 471460487 660626132 390276139 880048369 911673090 984789945 904735006 951936056 716022633 768867328 265129957 777827810 117144069 747551787 905791161 973711682 467954415 966514995 314302946 662228456 801919247 914804999 62938755 995658438 249405496 806583847 132325828 487256172 371347113 522488044 123223407 435252292 861961140 887397283 988980183 999844456 573212866 606308312 993636043 995842193 119463949 794430767 433700148 916340387 363317988 538794296 632205037 693986211 953222030 991964740 756993550 892279480 72295545 563665749 306000882 575724405 430963822 490035932 519931159 925551244 319275094 861524348 30673665 387607111 843947319 867721181 700703998 974803623 900637295 987526594 657635043 965005410 303077857 790691964 421114691 637717069 302087490 837515963 910616927 948240014 526456363 562456842 146628225 686554467 228207928 740903006 497871268 627864734 972626183 986922748 968556123 982440177 952963345 985219553 535799197 672993267 667100302 983711818 821964033 995515373 211463864 266092841 14036552 495107463 395906256 658459527 991131346 999693167 705452555 705479802 62298366 427002859 147952594 604039503 892870180 980857368 487723037 741096287 351587523 430968826 770440069 964577647 420391674 533143725 254736314 738415201 234245894 278497021 177608507 472653188 985893299 999188755 532735551 999889137 63965360 529812958 468131517 632182421 661085356 688974077 773332671 808869536 633903855 829966250 940046012 993354482 518392730 626855916 13401982 105985292 672862548 718605056 845216504 945814255 534143598 821312592 787180010 868975414 868166554 939214757 948596016 981660845 324224804 973896031 776379296 796569185 720152667 847118578 291128162 830022106 474503282 544384944 18962386 310272952 543647873 858067836 758300092 852667786 76629603 333926393 172383657 313339752 174532749 567739543 793806615 826642830 52683671 787248287 554343040 772944360 117248367 766948257 346094314 614866614 540832091 625428635 668399208 895562881 358255060 921416793 483279149 780376507 86452352 564426308 408152491 879912865 618150080 831976188 19929413 356763514 844396251 985104983 898786920 943825717 498268821 825453740 997920033 999492931 827662254 853236796 302036196 547076289 297718248 605927654 915678745 999967430 589371319 646231950 378636313 522699349 288967812 451318955 39402173 678665750 485781750 744428633 572864531 707032308 75983122 817849281 311912374 579293576 32155037 617840241 653525156 941938911 620328491 983022342 616138357 795288985 780166100 881203894 461940883 725732007 67109098 681050868 100833734 283336982 660848555 761590954 845345034 974641863 264989752 874344997 433370124 740388475 958271829 975517841 632186863 714050951 244631333 356631784 578657681 813953465 658788830 926330270 639963443 869175269 477520298 664939136 116484820 334699927 132361846 584827308 587528869 794682211 2463631 180283955 777062372 879533771 160066689 812235317 588165048 654896083 900728 741398401 988655792 995236777 73934257 321167403 327539643 443533050 588081961 742954521 629196069 630396898 778234096 820409653 419931292 699870789 960342551 960594999 287645806 502153230 624149358 760662437 345257944 925271862 268648373 513659783 138253697 276660659 875005700 892536945 576280875 630718138 556355385 658905747 904455222 943415165 987973166 995697085 944676378 965799055 405505971 640550823 152118547 765499379 519789020 803894267 396954984 909054619 287255442 978797784 728972566 821234583 875191868 965650960 651205712 892271436 43206606 499822472 861226771 961436279 282597248 658367995 774194805 943060806 192092544 490323401 873226478 891993493 592141099 713004519 60335892 757845852 349628947 954116674 630157882 919163083 194825140 916205143 310952797 767327012 957595299 973678334 252337553 986206212 339617465 749349012 98283561 397222112 955044450 995614107 81379772 481533205 545378035 937556355 12548420 508521049 276451790 367206020 354531005 558223981 970755353 997576988 510980858 519980369 138331870 963111704 262426536 685050365 393178606 496261300 44295824 986958706 742628527 936580912 806034996 822677604 123026939 415777396 575076090 962503451 502466740 562662830 301814120 615467418 537385833 691220485 41857150 850761658 708709883 719503373 609806847 931795215 547056370 701083005 526402119 929770852 440706215 761247379 480005387 820309095 406220430 571276354 948946062 976585813 50644109 783497986 70907151 132768487 336274796 556751791 755701390 959987415 450626446 734662360 620730445 915085869 572250463 699311323 494065791 892915888 176501162 580635747 470677335 942998735 762966815 808215371 289133726 734214690 474824437 723647407 591175567 653275300 229546082 357218389 585042719 962188300 359756761 387224702 296690084 913878714 495508340 803218417 462041660 598795282 937956695 986714916 913888725 920967705 63919442 518206835 484688616 945211273 381929186 627513302 996465727 997445960 937526159 974754871 58109266 260241402 299405181 362889954 372163495 872636383 786241863 836228279 508648377 863881428 66811929 138368011 706485579 907712199 768949163 922014161 402984366 469197722 881267735 953828663 413173396 581191590 493848655 975990179 16060961 754297148 144862138 762411432 442369381 691356126 59550874 720156607 243570472 927100663 50348964 735751868 234326220 887774046 34765177 778514529 868225129 909578167 496335401 885535927 800514677 989079390 705350787 779875269 547205500 671067754 877488971 970124768 194385158 413911524 992710537 999604923 523703773 830757328 836733951 969897520 84728282 374328482 824886293 949510643 308319456 661141652 855658066 885188163 530945480 730243261 70956977 818852440 620182067 651514178 51938013 627100594 876384193 999063012 682760933 875341148 419649537 477729908 612330438 761516498 406896285 502342024 799564145 999357611 429063190 524280449 700172509 728370205 840651094 885846493 595653712 846322214 848716038 869791696 272010010 734654543 272533491 591988889 284707262 564202216 791989815 969342944 529994657 754174071 657669897 989799621 114365311 539572263 551242491 834603371 9577785 211899443 506146949 840269547 873267047 910138455 144919366 701097757 977279357 995779439 973581776 986901908 148547528 442714336 134726902 631328525 694179545 921926845 160925956 565122792 363417719 681673448 116463034 714099698 387870890 830309366 37998689 896078728 960646425 991940627 628028077 764972897 283642655 761003063 105466963 336931997 414137947 508528688 628557438 991163983 451544990 794956096 295560120 957053462 318329237 868227638 41269167 70478692 338539367 462421239 119641430 586907717 457404629 512150066 965190591 986645633 947383129 966479907 261062907 988588936 320527149 683593431 149004898 565658629 404874622 527055022 462797525 582909486 777600813 850524165 527187136 565310645 309923171 667074539 119902004 712655249 813076213 889865803 941082296 998905298 555924073 978887405 625051692 967188420 573108433 717901871 133669833 425504585 369578381 909018735 157911522 512005143 46906593 386492491 682217233 692810166 788389293 848311293 758769997 959844131 760668149 775379874 242354915 532044719 91698376 517297446 946325496 948762463 647736820 977524852 587958276 634581289 786717565 873146948 378651839 663219688 71608100 622132721 37877364 524014702 27526640 293475886 659588404 818950314 124746000 928612938 909093991 916905566 880508820 956373789 324841295 923017848 570582247 603314993 848751999 986504417 596766730 616283858 357386247 888700684 893133168 960116330 532493629 649714753 845155894 864939002 704661492 961171911 184668100 380510882 647680106 661406398 2513136 980679201 731945294 934513025 300764475 907297025 674479661 952479501 125663136 354815145 673731116 979658663 685795973 862995783 969106859 985074852 411435214 750326443 866534860 964371137 945426410 972309638 867911748 938047539 999302023 999515370 400555704 653011488 319063910 565967652 190521120 200949101 927008300 933408655 466654275 511472778 548924748 932332171 697474351 851684428 843101771 897931838 512997330 927523615 655595755 693735573 71644523 754927155 947809249 988084898 820922722 828814494 769429991 791589046 426743098 459476914 909467337 994487512 628442531 831868674 832583324 890817009 719298225 858570883 609898360 788501591 929378906 968655935 304534690 458180739 964856446 967166865 2910281 646665083 568912598 682590921 343357257 464920182 697351015 871635257 985258211 989766351 864216851 957404865 215087400 888036490 603894779 863294624 439766330 461403037 853876349 916186239 956299261 965251038 495867518 568015891 284549834 630499059 89111874 349337311 561327460 909326882 109691520 302321564 666644491 759908841 856229792 979398843 170175930 663646925 494723042 541313389 869688715 959305788 878757852 880440532 19233291 518968557 236634030 303412602 651701118 867501101 841220929 932127192 536980048 931008681 761842633 908626219 210194453 561579149 73931872 264694029 548454039 882250879 171971424 364637303 856912942 892611287 966498709 982855831 991413528 995651499 66148221 676469683 388595439 982633817 72883335 667063622 139695769 827716930 920293082 933296559 647659802 978717175 574325491 885929275 315163406 474450861 77207800 635141377 269447783 772277820 259164386 768008241 816039891 830403415 623397444 884277415 717755 357222892 168509758 688384975 28344789 898709206 102514813 587547121 978002000 978207526 29485441 716592650 319136881 887238277 660492064 881975346 539559406 945212266 613564746 825509938 879595614 902114003 222903392 781987929 437989085 628128290 66660250 962704488 712509408 994260249 165112532 942397526 25141358 635325983 708361918 944980572 622053734 802322776 259803315 663437633 637602688 945524264 504640397 673885546 253150609 429902089 939818107 945233767 390346136 953724236 377969131 515008733 48065948 465772463 315393556 467209843 937711388 984344834 503022495 961940342 613621044 694894789 173958994 750218324 723401800 725376728 50244426 380759102 65643317 432978757 380005577 811279475 290040729 980554487 466186517 618234833 223686862 424525903 842466533 845510293 835593974 960086039 989948637 995847926 518409929 932038492 512469233 568698801 632008185 827568824 181362913 990769462 310588548 441960778 26726026 150826854 895813191 912003229 298851738 603401276 969616625 978525135 538259165 699703604 230509300 596009145 952308291 957484294 59014332 307430799 667714555 782364120 139641231 362396905 971741541 976993345 792403791 963489003 594326722 883866726 18887717 731904731 457440191 758123473 746039025 788690462 563635851 577849682 913541067 915775388 555818365 915227846 636826125 931348839 883286291 994876322 506440391 837040213 472905139 809582679 307877579 426505061 496013301 982682182 84169819 602300031 776029834 818887306 639848559 655491027 785089051 815455520 41460035 880436645 316822651 849652990 128182200 415239567 380059592 841876399 3436691 459387928 828980114 988558090 817898555 952009974 615947444 841468281 123375571 635989370 289247562 800952558 150513535 345752141 470089452 800610940 185971381 325170133 2279146 418419074 844044312 921015799 654070723 773183748 304551630 992545651 676988242 708249082 270717896 809409991 751130805 802343210 162240447 420435366 114363359 389799143 810236106 894794362 285483818 617362177 261672292 264434512 405149824 518171944 457913856 814465328 588725842 825749653 631297912 846117502 211654132 502946511 550717785 880885993 17154663 146485009 412129048 628640041 342711844 533284394 608019314 859497361 392770620 915412611 830446504 923868566 431440928 517522780 362552084 896239723 929866537 935370460 735920577 970381274 306680054 492814779 493728938 624164462 703860783 867534455 213657670 830450883 923464886 964092466 421297027 908290261 684330131 749615892 352068455 620207775 726324754 857558185 701646394 846883117 721448066 763792240 14642574 191110573 767779469 838210091 238860617 712220730 194464544 877688082 842469809 987902191 982547361 994730132 21069839 893395090 460578896 892702240 191773283 881099754 246507802 493087383 269266667 711147396 808891535 904298484 872440482 987860966 838963612 857901125 830637157 943441055 561030276 650566573 195323781 331399919 469515193 728981034 879227496 994247515 509994172 975921135 511701934 584933204 244304283 265077414 828794410 908805386 438512521 780717513 163820535 944973856 322809685 493021894 532582747 818667419 498718578 959108111 607575126 910960811 277965628 558913621 620170483 721871151 512756662 562446738 458516196 610325661 75709345 901799874 902209811 952049129 164368367 905636253 187686357 475848152 53259743 874380624 273743852 990711887 365412711 781756547 481075381 634864540 989455366 995353339 955784622 980386728 184419479 813150439 497314114 911463962 598697501 997014152 767857332 976334693 762510404 952836576 723321395 886419737 967253657 979570217 90829873 932244416 780848586 927965805 317470247 671847569 215693170 830765497 337512131 722464428 989809575 994892439 48564480 994229255 814556876 967166674 570448099 591334714 68135362 297822855 814220547 981092518 802868929 843451938 760353446 867897793 153497066 390314870 77636140 382711883 798891444 821098119 841172127 936162345 722142208 931389495 759290047 953617197 239806512 424122022 151197071 458313239 264358948 522778083 705438531 940253240 444742375 992608652 332484094 827039555 198289517 804435465 761929150 919372485 472198184 967235810 810224508 892104830 147182819 516340427 701646232 795659498 51308041 665806903 248391948 543928845 39431708 395524702 431664110 650837811 905029027 911973789 860481218 898363182 27722812 581694634 224676619 455661071 452087686 868665843 820699332 821435637 852832343 963668597 983804749 998432910 612374299 752749407 943889457 966251018 256418870 695241031 291773955 942544313 459828471 524399290 716470875 768758500 109147721 321178779 499796698 637835998 641434445 831364755 140790992 185286600 258068279 473171254 659256267 730335660 267561672 437755339 38988183 903545767 394722696 725875350 909062576 974582159 804161091 805301037 943976289 944799838 24517940 498682881 741120709 986574947 762363606 937067038 539188591 781575618 430722716 788306080 667578453 917742251 197124551 560106561 7916476 597907506 6289504 290527973 127407570 987456780 532474046 674222427 600871328 949614644 217665679 746835534 962105611 967527033 490923042 927234277 318285222 425336990 848502885 906808428 542433454 848497484 254490264 808395100 625079246 682024415 385925502 966733095 497704440 554354527 150915923 708841157 643337822 743629327 190263345 669606176 768530321 982279856 572184996 904983716 223185247 423977710 808223850 893661094 23475726 634337348 912269140 995524244 77112013 810862527 159427357 850373294 470198841 826234884 435739707 623887484 187004517 826690170 313810168 916565620 909842075 928323200 699031768 769466332 312819502 628836458 315368661 404016294 116460052 950559980 567992506 735869431 846942915 985914655 961353093 966953464 670899298 786772834 132326830 305816946 13268696 41440522 122276746 794337704 291637412 426156453 301785879 738059820 366984863 910888373 728474179 807793197 187293957 335390661 567718835 799739929 291904167 386478196 129745212 290148409 48274952 681104067 377739844 724459729 500285598 820690636 880141351 919575707 939633632 978108711 556671571 950722681 908058643 983634148 51680692 274713686 685230774 957139929 579295207 789372576 870526558 950376300 976941690 986885619 555030258 931041260 939469255 946542474 361876791 921920152 523552238 928034738 674263480 839756344 608779176 911842671 287832713 469384213 765597240 801992569 59708815 449077882 832032724 950490845 929230667 964568641 860285656 890072917 775076498 803559817 798472397 965230038 817452803 994085853 824610988 981191081 47160680 232567176 597588085 697184336 105586474 497180132 910046868 914069662 911034501 961888418 521827801 918925468 321382955 853090896 66255889 181829717 614954170 990170004 272794381 829297230 452410275 767332786 631302699 870266139 701611320 924967381 774404950 976419213 717881006 727033706 746526049 828789728 340031526 574071035 552202864 604969001 840318616 864523042 133577612 167194490 860339647 986218949 437280511 701562034 411837876 440624317 888881550 922292749 530601247 873807020 931915269 975335608 623479388 724693395 395515529 580136579 327821519 898568084 689220043 768805038 209227941 989521176 400648182 655640345 356326402 447992729 175107930 551271406 569551741 938688393 941405442 962358689 230103598 353169769 106103162 256112094 549644505 996298637 540924204 797531085 243448407 894607385 118648950 534455336 496474862 896428650 939546500 964658751 186353145 767943526 750173565 979561830 108242281 621444177 269522076 940211385 938081375 971538616 657919170 758277747 97607543 566052850 55612481 537698876 280403384 292562031 128678451 321627113 679799875 774922046 207103258 428144049 152950803 455054739 400999106 403318840 289085047 830360288 338457493 871020947 312587877 973389905 622562651 931632760 170027575 886450066 111477624 520813974 174811991 751268165 870654943 910612897 377596346 558683215 2905796 299441961 554439587 831758580 740601373 858869757 433188767 577509762 856646633 957746595 877239923 962641493 616866716 674156037 68734580 414946128 821402486 893440002 76201841 310403071 404215006 619289682 613277413 996383800 396040610 422883913 503951403 735758158 826987162 884500636 14217670 761736590 992530499 995511667 758679736 796796894 378583863 740196448 353227862 978809495 480121551 593428308 565296825 772326787 300723199 717051598 311815729 542718674 488754605 982521265 961031738 999695623 102254409 269273588 17257332 907316931 125996274 985127492 51076441 559727004 630190505 682690046 481037313 990660933 628523306 773336465 149655733 442701788 663672061 921774644 403993184 516590433 599060843 762059038 406791594 562218123 647208025 893881836 724495681 874191123 1936675 396620377 127948655 828005659 397530893 642370031 795176026 976047961 754766186 789019091 54755651 978355679 753102279 942011339 35926245 251084707 33756504 460956563 284546460 329245026 472872073 786502283 48977612 361955239 736868627 833639206 169695176 864820238 384852318 764503596 214112715 873478550 627999089 922909517 638706894 727346376 901608478 942747860 216604311 837733170 224828660 662022961 818203004 870627320 894773115 967003376 382901806 525420428 425211276 749357915 786748762 970921178 123406674 299432462 693730035 723280109 739832074 805589220 518643419 843312358 431045116 930983530 849902874 933729260 160991932 975150688 259899427 591804095 622068267 946802196 275670458 900589180 173452049 907469114 172047398 275025684 73741391 609789862 175133620 404075695 783135023 971129477 477349042 886897792 471514865 795376566 367787417 590739764 882820573 948460493 390197969 884914922 262683633 776314540 202182686 208377965 698759862 729991544 886038794 952299711 720652149 803069654 577440254 717271762 444733211 798498238 294333712 752539183 361591533 365723193 201796270 261923927 510025604 740208839 691621902 861712993 944417068 983143764 936364326 943717992 872437775 895009664 77931568 431790105 480471879 586315100 600457379 699377082 920987035 986798839 795228246 823748681 417166926 428212978 678214020 874613711 656506814 945140222 322236210 397203083 56483262 734214644 803501383 833823140 775218464 790512372 614041090 927901027 85246068 554675791 93274905 567222002 177054219 853824145 405218989 830752897 316069739 981957218 212963420 891696156 753301929 870806982 249882629 870842316 497452048 866223607 104400051 415828253 960308587 974701495 275947743 313050002 59218879 784383821 402552079 657241838 48659565 126757169 626679912 863887631 540773448 577884557 26331482 311661768 257446868 697693870 635300294 728833020 178746279 923014342 332631400 438319752 752854688 965062372 7672043 447096388 709711402 844830846 693526172 933906777 962843628 975751696 964485505 986174294 228236802 425420522 168225858 191220636 336655735 849296671 649756228 892181979 216475724 815492658 881829418 999527878 488659805 949585835 329009797 854993967 346844697 405597712 230899734 763245812 850024349 984538327 494697894 793674413 418452826 507928134 324997576 941085661 786347372 840726921 675795403 844389308 159357824 295605183 351213250 633456184 913326475 970857398 946058836 981697827 206035357 848219761 620745342 981112397 587299972 851233091 566589076 692152405 895583988 987635100 24639759 448676470 138049852 417563265 279181976 962456493 403888316 553152039 229502039 236896456 884963665 993633119 710864144 740687836 413901138 981360970 867764419 952734135 879712279 952294547 746692504 795029309 210747971 694232663 456184751 759151119 594558547 801289246 163290979 332898962 558305712 814351686 145893436 952886381 105005381 966971924 490004474 782712345 812442619 926970216 67763021 921837786 52904758 637818915 583761892 908242375 263153105 355304061 93572318 632635008 251793708 479115185 357903830 567480324 327096504 643046722 284463301 515469080 140594602 764952573 21859325 845406972 500489607 821906068 137878410 992945234 100104088 630035831 83511249 379678946 415657845 888298904 424961424 488117038 840042494 938528312 629709648 815877232 154538571 809650330 863582461 965765153 885561839 993596495 365959682 652063944 20080087 930136398 98569002 755074501 84431561 716589661 521819293 789953528 293636462 378089519 58635450 308772273 954590416 979640071 882100752 890588588 81683303 742818341 255961399 399332205 793489250 988631935 125856487 764016888 879620679 977357111 34604293 328091409 980458037 980582949 388620600 907866004 926074236 945195557 879801395 931517788 193645681 283851308 864614761 978453330 46435856 869557992 865746071 905281329 405685031 920631254 940566241 945728271 764016100 914556087 742151349 992017901 486349151 981060915 825456230 917761457 826384488 984284133 269427042 663818862 49567655 219119672 755807171 940603532 65689897 485145495 724238621 728095190 817452154 914461082 814547390 902092679 656681195 729138350 181544179 297649816 939733592 947393448 96686733 912553914 346478106 643430830 481259291 573758521 964623380 979032367 433780918 956618731 601007167 841539023 919586873 945800562 734981758 760635561 767323194 808522446 674017986 698083144 975366226 980840499 41612949 109814545 629378829 857488821 859647621 892863403 366864586 554952148 622517904 959186615 603444471 735016724 881848683 905024943 755097882 875509280 361186307 732475324 36861681 828755302 147249672 462055500 196621077 206207200 443701624 549252344 377394155 598715680 944071504 945788463 946273507 959257161 405038259 951377386 610183304 754842574 527649110 939757752 307704014 400432807 231528751 652418220 40489500 317848753 818020327 957818221 228461166 921360446 395874865 929534537 47595309 453199863 482594264 773660639 252544945 917922473 441472731 952201147 622757871 645606530 881501883 920513195 20260807 891043755 741861162 989364646 781311632 861772709 46144741 513054404 991378086 998662625 141999752 824514384 320064112 801390820 626379571 741455381 248604916 370303217 418369311 577578563 7160252 97674291 941241299 946315514 494402352 786224471 932237554 940812310 318479366 767078381 587748883 876066609 211652042 404817819 261418008 509473721 895657004 908353606 67035381 405714595 326013413 646391962 628599805 949537910 866448097 913265185 366174119 528718275 987778961 991723117 959939367 965494244 394634591 924691257 354259973 672394890 582714420 737982053 532736088 857248787 673223543 851933453 537922272 776151629 405420322 497670791 665907527 684076792 190195334 296824687 84149088 165317583 688068687 724150313 646172896 916997189 127252228 696591148 481404387 498096577 548044064 842534266 142327185 838580264 818080583 910147290 389433845 862736195 852320922 930384219 6972797 144698447 784350243 867689866 896071272 942853702 133244958 897541327 290740192 845070748 12970871 175898917 59944859 339959328 39066797 212103766 451460247 647121062 360440607 982207151 312363221 550839465 991139369 996325627 156156439 738999443 473001711 619709876 845929585 993880658 369482134 777817841 25819213 168260964 366488716 619379184 152201870 892933590 425795400 522857841 27475726 416757551 377861234 416857310 963402780 984515203 504651724 983245875 694521529 752644074 946547407 968766108 578950179 751543022 691629211 712645413 827998666 874791516 364914268 453197525 447507795 956532417 889168888 978625192 544061063 986378723 50211646 266295176 97075278 712128399 980366397 998733434 505144897 690800190 717949629 759355279 757207758 801902984 898156073 994378496 644217165 973058353 988710895 990925391 41644506 293120688 180174795 946710117 897347445 900109352 557271990 775159008 471866044 735898919 965892603 998303672 781667559 872223618 497653936 961482430 175915129 693522206 683411544 721593290 317666322 523946112 465798575 955024832 992783510 993443534 512680139 721472214 607538214 953959955 539474003 701615462 863317634 891868550 899647470 935134854 728306786 973338784 997436886 999213330 651192942 991119172 164854676 627588211 904515003 910525390 893523183 926139830 579190362 748079337 192111791 683471615 641622788 686327159 886068407 907797925 589410812 742581903 623321952 765356698 825210132 921780253 116526461 755155502 76117848 462016249 893515504 935866462 687467587 701794668 455322525 708841133 727752807 856996472 280952309 403914493 215605694 544839523 685094535 734860529 121779465 786160012 788218784 994498712 504974566 932406872 153105359 731401132 987694312 989100645 817921430 862004076 305380223 412718152 890195562 989357425 134819278 227095792 984348444 986044072 669772846 809286129 121848575 217906877 211452371 323992125 856335698 860290340 311876882 455327624 614437912 939206760 264348166 805912624 964937620 978080802 901253814 970385084 852110989 897565344 850090056 974730284 378560960 543850867 344974476 792540183 428408621 849566898 869059539 902858649 859795582 905071135 121068763 670761695 522238040 794175197 571307163 671209889 612489916 649335490 960186008 995855043 682160876 920532100 510920060 553247947 590523238 999308534 950748166 993744890 535443484 987852819 303622660 747706013 510662533 755196810 350974434 534843211 397612210 534267480 749472928 833277972 258086086 936529748 445742841 499131172 704713587 796802116 891869393 917257083 700153161 944428733 418322732 857604916 721646037 869346052 950084892 966631429 522753229 789148391 501705508 641234786 408907087 628545771 34501268 688506060 491093786 543213930 51839017 659240105 572301417 922013120 760337763 932621977 283656352 639781852 289545633 407576872 979512084 997418100 344718580 527065297 143015473 973171763 699944289 819115204 542332160 662587213 29247863 416847461 401001680 895367541 552916239 606663946 189484408 209784279 825359370 958396330 25363311 580791661 186656859 252886098 148969507 704052223 538371791 676314602 359412533 438232736 673861175 895287026 971210674 980021414 516086378 745015878 142568601 540732747 893865707 916225472 79518617 913855909 189681138 541816520 779666511 924858439 27714070 727414910 988459408 996649468 946133647 968219537 190624304 780910934 910835481 988582954 445484222 901304295 166450996 849456248 687205761 949233231 602678208 859211265 616244578 784449659 770559828 902616408 712881277 945746189 99326902 695094701 215147491 844943164 540983625 589899724 201031172 420653696 682984966 922705165 665611805 804235271 587056898 847621191 12627333 488611693 236519800 530146036 208656486 512309341 909382556 949952762 81559495 555514609 4393642 270816752 840196725 888495578 696195456 998694195 74015841 389371006 859978968 897614430 807385846 868671248 305566238 381998940 261828183 743113772 78090306 611578981 590097760 615905113 419058575 768143917 223444251 894176418 84735425 261215901 698904071 790314192 56284478 104511162 383665521 911842976 820767618 999436926 670600126 676764279 712946353 908158236 173870467 930385846 692673999 912676597 500978335 991938153 982743638 995052550 272411510 389665210 473047056 578881336 795868039 940720761 896438882 991799754 149947388 185067051 988792233 996647813 105414484 332069772 532522249 885549920 426641324 593122969 167062773 699704002 766633337 810452304 819262040 923373662 171516118 699096939 279711126 434591568 427268925 515053177 239106480 817448428 764237766 820497937 552415005 568391683 607872298 705768819 608743672 953482863 953274284 998750295 817390395 826464921 999002777 999495302 373020883 640143294 605743372 641180203 549037318 743524922 108354463 143644271 823383492 874494334 533031112 952074855 572403828 979666300 871871267 974014637 107917213 267568752 848392842 942083266 972005545 982742244 383414237 561497880 90270599 778226350 153713834 940969208 261989543 273185577 270782780 539870184 216823610 812425663 765889685 988382615 667116735 883494552 257396702 721484845 753425464 928063410 480936863 888171525 432080113 435772020 211083871 396126520 878657188 888268092 933719997 984055074 191727578 949040164 378505641 984696358 211719857 993763690 212059626 870207902 242214284 754535073 100322912 298765641 357864444 588675649 192590269 304371400 765479784 842514179 127005459 873358161 576762528 718010960 229111577 442573260 607490622 953484149 596638268 673253076 242427134 318156712 591744184 608160675 206138036 330952011 952798254 970894065 103419448 912545349 187241121 613051078 333433427 369642419 767029024 836027658 391293995 894741764 242850066 288266240 887606167 979589432 101639290 763275760 112315229 614524435 888374655 922871253 804641428 929959621 545399196 581312808 17972958 337367383 223567442 277134272 835660092 986910602 486740933 775519410 986681050 991122838 835573562 958637685 105051452 874318434 465766350 539491143 759879805 843979160 526749194 905641804 454179382 804184330 51276907 958647484 879875007 921468799 293095133 617797080 92536791 835046543 848936697 966261702 802017575 810985727 710541024 970561991 71260855 736813322 196131324 958907432 838228738 980192617 578888174 759147128 455614957 943421435 233221587 759197125 365112798 441704023 504086110 971633070 754628463 863652980 49015870 742691072 268419554 705760181 341605179 469289636 600634919 723145536 854694240 991491908 554215213 923064080 271723580 592503131 588988255 769094925 267933699 734311498 804257755 917238400 94776671 295343384 387867675 400932563 924425687 980552126 37088289 47548506 790344025 853496336 833970165 916903869 127038485 219294344 39488740 715135904 158657112 696100459 256744845 819529284 247575407 383574296 834794085 858372659 180814952 926897417 163923601 331024150 567330547 926144274 763028250 818324043 855706772 978421643 654221523 729431498 154691101 793997816 986260181 990420904 102102806 459222468 160508176 182648533 453074360 574168470 19548016 358720399 851446255 855059445 728405805 962598216 61036722 615612017 973047778 982888575 140515504 867512249 464455419 962749876 242012175 875439455 830450106 961059839 340626521 691326173 287828034 867823727 126570876 302691472 982223257 991193486 666289622 741844423 861545570 880130756 750112363 995997733 548902814 662240853 332734315 784726024 361168856 990509487 850132902 958661872 455904009 957499337 351631280 529363783 93073524 602283849 324199692 987628373 460812588 540606433 362257568 517991399 612798609 868933211 746661597 974040495 813962338 902304307 619041398 622087630 226472235 785359622 63191299 801250999 863165603 870773245 296399829 555414632 780449053 950627125 342363204 508539315 895238854 989531685 519393161 903426439 158902837 318677984 264625371 630656648 732121200 809330634 724598256 902011120 880306014 911781678 91028283 638525810 522803792 763128866 120370058 423932522 472058678 475432636 918450408 921254353 328446109 334429556 21972421 224186565 525750885 924945175 753483308 783376886 373205667 733319141 829312589 859538124 374500113 621312712 191077338 322426433 777360558 807434634 16791853 864896821 516176019 530999342 352751231 416747174 116728066 890440635 605713000 850626091 855336063 892679685 637605705 772842398 658310499 918295213 663287724 788874786 878950889 961649885 737848949 938397567 97751898 265423154 276629212 909139530 787160674 839448804 293591289 381923231 762249177 891597576 154196228 758442804 747135666 843244045 838552447 927817631 124257482 988715271 141815963 525619679 179834994 423235524 395051723 407827232 548163039 637290407 170633823 976716085 733256597 756380487 658441304 919358180 407011953 741868744 384819540 479624240 705695935 779582636 530936671 643411564 154885944 324132567 339447118 756480168 96363945 845301974 78630385 796026232 129618702 285704719 166522823 764009723 687868834 906835188 625263814 654186259 601831436 733751359 588046722 916868376 301013906 981088808 471660096 853486409 859947293 969776353 990406805 993358815 368178613 533479912 868757838 926887591 931544648 936321706 210085066 490170992 550624728 884110247 738329536 774868753 247303806 661517655 393055187 598947425 900691601 970441982 857427976 949385656 625612981 960626474 112177223 854128122 952032345 995912916 691855865 882451359 62976747 81204355 857809763 903006639 768450351 966681265 629287758 898023330 210795768 522095204 483796259 764674455 520948685 721361078 240827530 846666280 73668637 243632045 715281846 914982652 764563793 857003026 241544622 718074247 52473722 392839780 244176997 907542338 677018630 745031996 637278952 908749676 661421511 879653222 848298971 940902203 327856563 629969457 858255562 989358849 154920562 155274039 136124288 925140602 626664273 727305054 178607831 706439784 558214326 673087298 62847622 262051685 678067680 937087340 660268579 869307718 325316010 674570790 976000231 992957437 114544484 176202274 157206623 239117450 303336139 384781576 564819809 923641154 126001259 746738464 825961209 999304593 631804305 637709648 894997294 916641227 210390533 767933781 256084173 837670291 282339972 458203524 839326048 842737651 214056485 678227528 585427945 959508901 665126502 703675027 186496897 273836439 492529900 562135579 766664241 780912718 28142512 133674109 138613631 474060947 983704918 987003037 632767115 837132247 16156437 459275639 213666155 248959832 857917746 942003605 384310385 790222249 644913798 989676189 49703966 55790934 964654554 993117091 107301845 262728458 291141012 643707704 244136913 362304813 663161031 923661219 861835505 967079013 414339467 769890244 836268834 855643475 203679391 481150910 303450182 810242146 188874603 980502358 178194259 537877464 255663894 431707499 174006801 633034716 512705150 985786415 212807660 750730092 375254621 593800941 749787356 912259419 292235293 338807214 491795764 737027557 510238355 640218699 76835603 775512853 465077409 493930159 268391664 598317810 416786915 497147345 412166503 559182933 697862678 745615061 230366017 566070971 422517392 525256668 575358878 592610528 540610370 669773932 749470106 883699690 103046023 604922103 903571305 993306419 742321085 789987481 762765006 776678251 325130116 495808209 888075848 935846197 402183116 756198143 755059865 763149997 542119473 744401067 604061473 983238415 918574199 961287277 415148226 494288259 957773742 997553566 347721039 636399235 236666784 919735625 25435624 389611524 510623796 559516855 872593686 909556802 790709446 945699748 853132658 880028000 511700348 878307522 357426319 806294396 110235259 462267394 790694038 792118407 49935790 761298295 659540649 805182440 851948570 922723600 584750176 652233131 480948683 854619156 209991598 845087920 919289461 928535857 872045609 967699975 85002475 278367637 634711923 954331015 338817896 612128664 819443203 915049597 935024946 971405528 439310513 854241395 474676712 573964520 281560495 283012870 501207290 542548030 358081002 961102474 582413109 876397024 616503844 929089792 736432282 913507460 171966306 316993646 253711629 651032734 584526393 851081543 173303989 606653027 985930994 991819903 139851450 299285257 358196535 980392998 187244785 928384084 407033452 948096087 857350461 876542413 64225607 687722372 210826206 921787494 450744200 671595790 430047505 682068987 496561821 732098479 501615971 974997167 481432569 488448192 708613354 914052368 120440740 355667837 470635753 673921369 596016359 870373968 795827512 838907273 957683707 981158909 575767816 919168230 678109515 872377084 392114901 462807377 122781225 127489058 674573706 728875550 894392868 951900992 646985317 687905364 429791950 467703364 622530335 675220538 49640520 64265683 337817630 457122356 575038206 592442767 789454980 835159464 476090073 957466815 74251273 962241230 513905293 730414123 598647178 685087896 282193410 621081321 275064537 912049920 713054606 905101146 961141050 963618522 472132503 512621919 362862340 907968473 278502437 490409174 378531775 545092846 941555057 953837515 438215070 845176792 62165294 672226247 457166002 766234378 30978609 213979078 782814152 872995188 734895555 851494467 495367175 585598026 938676124 998856319 63204609 264893342 854487872 933328056 987559666 990537016 76238695 698428270 392401558 948958846 377904431 678059094 959395619 967006886 424676723 541856487 174833979 846180581 96441855 797690380 798193645 840014384 384203467 535668429 623973036 755690513 786300453 911516524 531711833 559661118 887582288 890825581 984966008 992363062 478228412 683387876 734129423 815245920 955643089 995225291 725238961 789712883 414708342 496832024 370691352 693711159 308025960 385365221 824570038 962340527 931664412 996015956 407658780 588868902 348495126 616929286 997880013 999637483 385770428 986953544 405981095 716771784 909558682 977443876 282287386 323033602 956195108 981054002 413869208 647384370 283372016 726774851 235760682 656542412 508092444 534801733 525820962 599824773 293486342 884198409 642080751 905388817 61437599 225787393 653474353 919864684 420271859 760739236 420475857 451038509 869874488 972440925 397344164 882495176 68128535 560080536 12044569 489264716 710595218 915544265 602288756 839275505 16028420 136066012 351171265 734606199 798172961 814933562 312255545 439702506 691359470 913242395 585055595 847060979 199706695 655584366 290293941 515991995 527039008 943425599 258665554 808053253 824430118 844083735 141362284 192206975 305991983 791170767 681154984 932867659 829564853 950170148 678591923 924167949 482942252 645956793 937393233 937422504 686893294 932085534 290440278 519345650 766953191 812892159 77046229 480828232 22429563 547589328 651592897 994071795 436705791 944854512 8151512 15092509 68318086 800591013 514733085 582344458 958851015 990703379 219549181 783638925 701623404 738531441 877066568 883116983 823221473 991651202 539617893 659496224 12724348 244813410 793344408 866248764 802469750 964833669 73214974 372707832 916885762 999615329 853211378 927461347 646151471 668460645 551335480 591245482 263717137 879463768 92660436 346143415 241577159 352418744 198971990 382162150 89133127 573970803 836922440 864121068 637722206 960428355 210592023 499446876 898462968 957094640 884243304 980538237 79378786 789485156 838130563 977792382 605097047 735274139 744564947 996282711 152409840 828247210 172201442 189293468 382469216 767812778 713528041 836381715 918138406 973479260 888814741 900347442 273313855 855730689 925370359 941101324 940083979 953578708 310071768 972685349 142844167 919949356 907162795 986828719 762265685 851573359 538534537 916851866 197774353 608702288 451546602 546703469 542708885 892602574 394458533 809843907 316980635 934296127 788195615 856608745 713530885 792805205 80286173 653683328 261527617 967236621 668446649 885597669 852038890 855146278 95302782 412487355 333036091 550179461 882972613 940214256 654916322 744730814 190625730 917191144 370729133 928576989 505201483 539689292 663078236 802922685 882798574 903012291 150730454 993476396 691606849 834617813 309236618 352415293 881882353 972776461 905019125 955133565 655766337 798410940 147147240 656216629 785260445 889781577 244480005 361827487 454581937 916860585 160739096 406889937 602136518 722187928 96943977 546482686 921706202 995979115 528120637 958146858 972057305 977703253 472047562 883173136 797551097 813499299 570778978 873285587 487158914 791753922 407653857 437137374 280040936 915298334 377016425 984078804 506328576 541306925 442506585 455657933 70502268 78068451 133107068 151295003 841129338 890310151 997607726 997969348 984627146 991259768 826754335 911171274 5154042 982316229 684227355 946056256 716555404 947843110 365414370 668505537 998436561 999214170 165015976 411690555 64015103 711969262 844886602 952970474 723508362 794178470 523967126 651790472 984291160 988187223 41393764 581436209 764088689 856012834 988289361 996889639 836155523 901604762 386434156 577078997 136992513 727166854 89523514 907488174 140037596 452446470 696655358 745462694 465391071 506475646 787946459 805770985 189942576 498642391 627932753 852578832 887703643 891317987 624945038 649002427 920196486 962784228 709488195 884101860 354219293 445674079 545354670 785574515 610193109 613041485 829845761 898072106 564702832 998161137 752000643 935049599 114892989 292550988 354342965 914687737 848618437 931543582 789484435 832553468 543001606 584080994 330316212 904572820 681159376 745225134 776484272 853444042 88465829 804558016 111735600 539917756 779935504 986751083 894790456 972851126 136883759 872583954 253070743 262025159 966056756 982576486 142004877 421120343 558668620 710744130 194020841 245545691 473068187 808304250 326594861 330563176 981684775 992747833 791706609 985818862 873696797 993970975 129816991 358595922 216409019 988880739 445779885 855922505 768787949 929690131 270939130 602449340 489415647 676095902 508151362 639850655 117846583 221983275 106417155 224155149 259050346 749747015 700573228 897258117 540546569 803282189 114759673 952467905 904971116 910654953 125364538 411762621 632424772 807774021 239783084 620736356 178542833 526048930 566988183 663327044 441517957 804497889 565014574 779311067 340527981 731384050 525710731 909955727 166432256 829554600 516296655 861286271 107256182 442077320 199845307 951784293 748136010 962090508 772184486 906797109 676411930 950691281 610218644 890390380 761958056 938796079 21220301 240750509 290771973 939612166 988760728 995238656 335260660 773575156 657087691 903686982 104727374 644249647 562679592 718681149 909917021 985256158 88590953 694165808 3040978 911102464 337223870 729970217 942280931 961599256 855116152 979491014 741204104 901198089 130322396 584896553 724968362 745904577 763185204 786075482 162595769 832881554 531740982 813344964 773161772 877139060 597328144 734542471 822729028 880058599 252000417 634121526 641479749 727951973 61995786 461804063 706178095 778490310 130628713 264926739 86658682 974521569 118257913 751716330 207117879 430714145 689850233 982310502 421083403 492168961 483575326 779602606 567519631 811923008 195927996 756182722 912102530 955606385 661403310 985467692 480809325 882801632 754830546 853574585 636377489 959773434 678490225 839958639 751964585 863680998 908336880 944362290 607769415 813780172 485450887 932526320 321540866 863164197 87406768 838314664 569772635 757632681 881243112 986242430 212572463 586141403 13845873 131325806 862617841 974932274 693720960 967502139 31515500 207003597 820716827 973060298 945962316 988362712 902963495 928812529 280358502 854006274 38834204 174470434 957782215 980318592 410044990 665933041 508786593 738137674 645641040 869500611 596393549 882466610 957222190 967745883 904730741 905137158 757153382 911136406 356619524 554115346 107542462 877917145 226676487 232022559 184905916 287525346 74071850 372346382 963084572 991187712 679644413 726492872 682342960 947722790 117622020 272147519 157014779 292570341 627414824 712034899 227640652 350906793 88712269 108483719 803359944 975542874 267069118 708629887 57340744 917494988 26192088 57815132 734470597 957481882 476542096 765867278 127087431 237846705 934976179 943060489 734905302 983087058 242714724 347785982 349561925 652720311 246380355 865247280 371367964 918570133 278828605 642592661 880131626 925637249 758504395 821773762 960267987 985320403 472422255 510904426 303284892 538991456 786933922 947117872 796942883 847822675 387578421 910834194 892619696 922467482 781911441 988613068 228671777 827028856 546197447 598566777 610024582 650474838 634166965 830249548 663988332 991724187 531583351 536514028 764694218 850929169 826859305 853566524 255953742 522098159 815139449 911235018 74649945 448207867 821961489 957433486 999245033 999365014 370932963 540590489 997478227 999968466 915587428 922510293 862878241 977173537 189603796 776972147 210479149 835379579 271084730 885656456 424471634 541078735 855663062 967899695 562635961 819236148 37671076 122620847 202729598 407357377 290991615 698820199 31431416 78371216 486428928 611571366 766993779 896038739 783942736 857660933 532326722 967841552 913025722 930399764 718665025 836048774 815911660 865541357 889878158 909162530 266671599 293185471 889403432 899143388 951505886 968217266 837656012 865668332 406507793 920246346 297607564 676703701 762505619 943087984 306649981 643197614 308765725 645494450 149290405 858727526 283760110 551761818 369752239 936041713 606637503 962899609 613766231 704323288 579919440 917724476 525340525 877594671 392484467 617086027 824490552 970166457 680845280 899873015 394867991 952380500 400721161 545736424 92340971 568260732 703047119 790068028 778291091 895037013 919673051 954259561 97252337 483037792 27571068 661724959 647044445 846887827 761256767 874163848 483049803 823758140 983192956 993499695 482023651 615953382 905485957 936648618 239904351 821194255 396274465 728445495 975718887 994236512 405683175 530094792 825124124 958041017 958923394 983861688 395384980 617049170 672554968 684789830 187288476 773460953 648848947 947994470 93994613 324766623 452314574 675655512 695655235 940912034 895914433 954308545 384080131 660931746 72588349 860407520 716764506 753404113 587078071 970723234 713810101 935257366 277048716 661881899 623811721 720007419 818928402 914935467 308794471 754658598 964331175 999641566 110926521 655258774 468295078 956876829 484314536 527147429 798105061 869907977 456400765 793894957 355719322 654318197 115386144 551109947 288462935 748750304 642179865 863503108 324575967 457236166 530902294 611503508 970182463 971321672 626741916 679122695 241284486 303021339 847416569 997852811 589680925 853826464 675805823 907842035 132075279 253687749 52837200 481739642 517842763 543178031 425832316 598778842 780222176 780961273 646708959 936450090 256308034 775375875 438861336 687586346 85709172 945790960 271339765 700246314 36754116 994335367 895448724 980505130 524876667 655532664 313327931 756592434 117538091 230298208 116793879 963988593 937468318 969546974 658441312 678071791 717529625 995512774 363602561 854787826 125659547 855416188 636074359 667520827 712152418 947317934 871584115 949357413 82770831 481752760 520599266 755896589 461114636 979300189 91997803 908424003 892587276 988940271 471498087 675734807 881129291 985933843 715327448 838501776 443567054 451931530 560356317 601582466 929637930 962555369 199026191 651715510 479854866 530548023 13239894 73247432 6002749 502524076 904712431 989030501 753551023 943239210 477582476 914193022 785496440 988033914 294966784 783664109 757665935 995457828 652141983 977473540 5409750 267460492 70028041 739312347 405666608 487802340 329033387 670720973 468489526 712028977 23063556 778437331 342336139 621302442 585261282 689607449 960158075 994381417 682895942 801938704 236425132 499872880 538756698 817219824 695376844 846456576 107837381 346079318 255459298 705200732 544238813 833853664 828003578 954854715 334544814 628312186 983281382 984128401 351898199 867161095 823066525 857298342 16213570 34254914 980598748 999809191 573747229 667499404 278052442 347221821 632016222 645681693 770923568 839406795 271775149 882745423 564453150 843292717 561389975 720135574 669924763 830476408 6421561 721655571 166410978 578080352 67850973 708863357 554173944 816843652 933329843 947880388 608452182 932781644 928138281 991488644 8283047 894660584 129460130 559606584 135265754 310254739 673266051 906365802 97884115 321901553 266322828 695701524 452233697 485952704 4419260 633474647 401013116 980572886 522772921 938460757 881738694 946311153 834036806 979370673 574388416 956282422 452797398 745723418 999247191 999817705 370261106 826624487 882147543 945268408 40003267 269228795 112512784 957536399 708737881 888808661 509672326 561030427 452052534 950400917 653189226 954652406 431128581 501961758 793313515 874784459 970801901 980989405 985373531 993710890 853727813 949613721 334815467 845828485 319385373 803964728 805965706 889602180 764907747 968638947 718765334 722096421 772024484 964311005 726645234 793784140 761561568 960205130 223981543 699173327 657587704 675125253 495715681 588734044 974529297 988768085 501141016 933963690 640274878 698058580 997487954 998909444 5575763 359890488 799189068 863246354 139780224 143480014 903626484 982714759 188516105 992940234 210955070 891081750 19820318 917922248 669745370 765128408 361903615 985121898 179300073 999441370 607822396 852174055 183285809 392498413 926211918 968276514 11572154 200775017 910501238 995562005 384308953 536278232 146351478 955107602 19359036 603377882 529568904 874121045 983732209 993707631 431169082 731234558 377460054 623085425 171302750 951662185 595345340 612102819 575870223 610382592 688477023 924835090 297508657 723752785 817255367 895096203 178016229 832744359 826267170 854982741 255687735 976164655 724947209 775454995 82847168 431673845 916918468 962385317 129351494 756803077 706907755 755583346 660780019 744506490 952293318 976809671 933989397 961310683 426935944 749694675 965388134 993407652 378479122 746885816 489140224 919040184 684463993 907277083 909313340 919686452 790130574 935657822 807800264 989608311 475663683 970416766 172325769 450980891 283707481 341378034 154961487 799964434 829277085 970344183 481010262 675411466 682687259 792614848 458616691 728426894 195819402 300421192 195743026 693057666 929740814 975385244 68614273 481675358 273341403 737610112 452051338 698402144 606103593 624834919 802196048 910655611 645420576 803149908 894082212 938818264 380474848 474951428 838490855 842834848 208037819 845412506 155446762 802948166 450735366 758199867 899636614 962200872 776432899 951697925 924927237 967747495 809721656 976836805 257097346 527201667 46135406 914934117 801237648 822203045 570494994 588107821 293379976 461610020 280250298 632747105 726835600 764117116 750897492 953880624 56163323 639425753 19875065 592936103 912625769 976655894 592462892 986621326 874673969 886420263 903618570 914879738 832477785 884492972 3633626 933656767 790097333 809748165 936735612 976435072 23855902 309649273 966047418 973106753 371456411 699846533 191381740 891019427 313010181 383113817 720773718 951070642 231577246 391220562 248083569 358439352 499767220 747187318 683056389 801932101 232336176 593403156 815034145 906601644 365575624 700036803 775581501 903733558 810203400 828067379 955552946 996541960 242335367 519479964 45038785 528433894 694749223 868887669 767236735 773434364 610870469 991942185 319977024 553236097 746578188 795942197 882181957 961915165 488207859 542201216 348903191 937226228 531596904 668761199 256870348 608577968 825797772 965722228 134008142 494247797 878336634 909643807 638798049 823584951 606239120 751381792 43849199 271744014 836914643 850083486 805491416 963567504 695665276 818350834 514574391 825317691 299131016 521505521 471976633 546183628 408214107 558783127 754295685 849480627 342566292 994387618 546607609 562497433 75654682 98557681 326545422 532877477 784079439 824317793 962607172 972021462 317354582 459722990 849346352 908053402 710132565 934013977 387748125 712001455 896645777 951399769 359024838 504011955 933778657 940244907 89448912 241688282 776126415 958601783 906597925 971623273 190628220 308576891 860787975 950180753 842662606 953030827 291207414 673187216 701222246 724955428 444535071 993281295 108290444 827327023 929444620 963255360 205942247 441783664 843399098 853219715 999439874 999465672 424806721 854250436 961616393 985209829 941216070 978264542 213377407 286960165 473503296 836945366 966335539 979491216 400270189 751914772 696912370 971367714 760499023 959177522 807501085 996509317 945565942 968014636 429560050 728322361 227001385 338522314 258378421 752999887 299097550 396026350 333659300 829796840 311869792 909545060 580012537 813583760 340403617 803231534 293226716 926008090 46087483 299200985 348002653 627782163 761175430 928172875 425455217 704410330 238317205 336459740 612636976 784642233 388020049 389830300 795926068 904807322 311274697 488796667 86522166 460387291 566813612 799285174 631256311 636173918 655691911 749423660 963185414 988187430 127234557 409959648 929815698 934713570 894752313 962187151 237604374 260364732 62492035 584091529 887148259 952150901 980325669 992535083 573831987 614803277 880506832 945635953 813622432 851443056 999040872 999895574 84923183 568554915 197748044 817157962 172690363 788815662 780977846 930800797 213107576 597124391 361969260 468399355 901431185 902843828 243349810 882238820 772315319 905531640 219463920 729482815 877488233 953964779 342266411 421779595 987289614 998828544 888445542 966626520 833777218 924859897 294507102 885671587 737793836 925579941 684837308 742931353 474960307 699926086 418934939 446860547 65506252 800325501 397986672 875756505 42753773 941054780 176527354 791860680 952954610 984548821 253999741 837059673 452711137 966541825 970217770 987805606 509576886 598867090 531950364 978500299 529130107 551843664 528406672 625899835 286300418 809669376 524710158 956085610 382508976 891873312 135352217 523523543 50841042 712133160 239032872 429830071 936546077 972047703 602974038 829463201 411187403 950643446 428320478 784964701 995704300 999181601 366088603 837107110 650305706 780421100 799816394 995416371 623087963 912840861 977879018 983251559 695640094 854236637 35407187 247681083 424903561 942491818 247205324 424686784 384015796 729389772 739903847 763161810 186863197 817740920 694894918 816712632 772891367 937822007 722336819 798428273 534371401 772429675 812951776 901807269 722464270 998244499 238973155 606422751 595780913 645849044 411915773 966677984 330042854 440384770 419667264 567914879 483467266 813370189 26142667 860555372 979873232 982109827 566939093 957546050 249657878 998409224 954840599 992851033 222859247 607506489 176922302 186064428 714596891 739900901 852531976 896687549 403493249 664304156 139629770 232807832 295935948 552267916 241984781 435990491 838832432 996325760 864592529 886775032 913808309 916771992 826321508 846909121 633050733 767773418 356381707 520166380 570536862 662328748 253928353 636083948 317294032 421929164 176264382 877965495 688769012 701724711 453076882 606132513 574622444 737465258 527611401 679478395 812549725 867320929 75133572 531200194 926379991 929170515 631413460 919921650 506872316 533347259 546360358 587370070 665988821 888869143 473925527 728895197 316573855 633745334 455177472 565036080 647818067 922887975 319296423 830679960 378329229 960917802 207203740 400284327 623825614 648720601 48227285 618858048 228490258 851405736 1117489 607342078 633880967 765462889 852861252 927573540 746637498 943531103 398570235 914896771 449941156 686367475 416686995 818987249 97327102 616886913 864184733 947481415 845258820 915204434 51910025 432927816 189129404 710996409 259005467 275107929 965823711 999704443 509661442 626169339 678935855 976030341 383768514 959926719 961192875 967727111 495575492 716219658 431246357 507179282 196763465 789686827 634033466 940769332 721979979 962888837 185984407 217288749 747905596 988075792 650073398 703771137 146413123 438720066 920245121 938502766 669163043 805097470 559817240 830818797 121812880 129295882 386078298 696128227 172956986 654677464 686402131 924127384 549741227 811034794 637528342 656477623 556812025 999431347 352376149 580606717 918839664 955930101 628126222 854596564 906256755 949453739 701786783 777982501 69978748 567437675 766159156 980139716 989123387 994151519 520817829 743341336 398277774 992885767 280114818 829091724 673772642 806104663 172176185 273022079 14887475 709572157 813044099 818018631 492768118 625093116 827604672 837147220 702081639 895749059 135782566 305975453 211725739 216321953 484382794 759412382 267058297 419183453 373485063 688427872 519801625 709673697 290488595 955179733 64667300 522692709 644611868 780485428 817135974 830679078 450732551 804748967 989053420 993732460 770306808 773962628 165921399 500118712 772106161 784044285 132113266 244629533 997671296 999141204 223522578 746571782 638318891 881523014 151897006 836715289 647461561 688665078 224100888 357825836 832442546 958635543 161585086 683550240 828917417 840770360 801050831 894900291 941715044 957142097 768450325 789488498 787031722 839597947 345813584 500738119 232445061 766674562 233821849 824202052 335895710 744814465 284117085 933467867 568102107 743145448 179431765 822357113 795135144 862677003 347081836 582996729 634267279 781631028 128531867 349184124 411374422 860269636 820405984 869357438 25531570 179269054 146435447 845816503 660172505 798423719 695949398 874177159 177528857 456691963 247825049 478648982 424040527 912675081 7873249 471322559 490879371 974749076 951364069 967368805 436131614 990607891 273076214 335043868 833887285 923052623 630774493 925568543 585133570 681493470 387353935 693219970 78266861 900648190 311581979 511655369 540677857 932850632 850814337 889030113 798459287 922588662 511801869 595374963 561498455 584312085 445416928 870313131 208697937 525719975 362083031 670755132 987238916 998335913 980893868 985270453 308065373 440740147 45273882 807976488 597963047 774903013 230739387 912077422 863059823 898741571 763138253 984134757 876748173 926811379 589934263 686261579 604285552 707640456 587759607 890739109 352637224 992799672 422007214 812997306 110389705 497165303 774403337 860391138 821228797 852692190 522524095 571492523 212815112 651044611 979313964 991077857 176704507 244762750 669883934 704518724 958672569 963237337 50268670 537472858 920945162 928471525 172504159 399300656 935418353 952224217 682261840 767349955 109112705 608435909 868427452 885974304 438011996 940192545 404044570 503097535 15327605 874570382 751532418 825829342 262550319 997068544 803855650 852312146 753910205 829827077 631751794 738156702 413489238 472197490 140089052 434424448 130225749 702676900 934569273 969210886 39928563 186293444 943946493 972851389 787741301 858376888 989595071 996030010 747198196 855606510 361407916 867916267 328678861 510110168 93664024 860008705 435837091 898142294 140150227 748375561 937484448 986056078 171211289 856459525 962736847 968817523 891237499 995782348 325549801 917382474 211235279 758539728 920064800 982618658 703302583 892673024 859992881 925494421 777149777 950393351 162956712 426965193 884463842 994861596 95292839 680767000 542009182 658761674 417590514 591296147 778729937 843023792 738163505 815814021 157021657 923767544 185121543 461998158 676331956 906434992 564212166 591502477 195044173 338158695 869806293 937796881 712697429 863771644 616874784 863892879 140557406 862093291 45497563 560748187 390203034 701549757 409544507 856368880 910210136 912495946 105499798 703536615 965131655 979680214 937648926 938009206 61279863 329433959 378109684 946970340 669562929 798055882 704199787 783353946 616259867 960475250 737494006 740202777 771448160 909136991 269780457 786892050 47756767 383344866 719655574 941325404 202121678 810128960 765342778 941406071 180658426 454181526 923038317 947804606 677252464 872138404 622366518 834470775 62916761 624762969 515145224 735406712 874814976 881362652 549934151 664340644 962988926 976768400 669122116 772476394 910699648 991934770 301130299 439823252 639843209 747689516 252096664 290665182 857322986 931460157 406288843 552761395 207952733 321223592 664013502 999366342 401021790 794949752 777003674 786301068 590922877 790244610 749091549 786794441 794955878 861584914 733265155 800608470 891945482 945373390 393653318 493442319 364285782 797195245 404475674 496245000 900178296 911901821 720465135 923367227 146966693 521511585 915994272 924634511 746443823 899538830 765089827 988370991 535060671 777137993 701687307 743952413 213018860 432413780 888408357 982860316 920571101 961166593 371645268 842371674 851619495 971227069 66602337 140954528 373035223 373487339 28116556 395056447 390125661 829776153 374188342 567821239 472829072 641534586 919495151 933043163 960090074 970442106 676443827 860954873 882999140 981040879 922582236 924258654 683644059 742020654 9867958 688597151 749750915 983865491 428469885 775317271 446144225 464858617 680212930 968619596 401571057 519555378 303955768 720872618 571724921 599995128 563381231 737973372 53918710 466229705 547042238 671738217 513298435 982680478 155767859 975968866 26179160 54987295 738407352 780415096 213183600 999525819 217671064 945682412 208557868 891082908 794762072 865097491 549615078 748735786 291870283 880020023 716270712 846033090 493808743 778144636 389247008 864872691 568943136 758639049 205520057 271764803 917694384 933379911 329977554 695139099 786160433 997306445 769465384 840845224 296360397 610442247 592857063 802159943 47514089 395904948 232979191 935277043 147555047 703044672 632467554 950438458 955724838 956813728 346213144 658820498 567422712 841722788 124254597 301224228 725317041 882827073 1292226 883961898 712798879 967146770 823839206 941412571 588884671 640899997 786913840 926035844 885450811 989204337 161535076 161919291 642876812 672580719 163536073 824373703 369917066 979696515 756513943 996860422 478361353 534560406 543431672 980957592 351801509 387301004 797575682 825710172 153420372 406157200 653645725 659521956 138957581 419384425 292627985 844005351 228378702 794488841 33603959 398940382 926168468 987999872 939313010 960723520 816408701 964998884 89850872 262171217 686211668 739582527 358086815 683352137 430659889 778035893 673713373 738971827 123907636 762769002 17140233 159374466 455362518 748365494 184292735 497806520 901694752 908867903 821702521 867781833 2912933 197147246 337272193 346392279 695486447 818027346 317572221 670929920 589766842 825402272 477737837 673541428 955681779 957569828 880728938 903122193 478230462 951486786 370914045 985028146 87702748 682236413 872136557 944328173 776122228 979967113 496390787 686680980 268731637 602033961 410251434 894936607 125755531 973054770 173280275 885559067 80576020 287629338 946153238 947668507 73617985 975549198 543168340 720649314 208778356 805577168 387309783 982434786 426998788 657472183 307994262 779246108 545684974 818017985 763056491 791189950 455933988 640945362 921297437 952973659 428531793 708807996 429169247 656444987 862246118 877296588 340417980 655431089 123934107 529268210 679765093 813046751 619296031 896842958 739317905 877391773 402144580 581062173 688502796 985605664 494294551 923580838 936945292 939133833 411516547 897377773 455142591 824079601 870164345 894430569 401162651 521590736 894615520 973941374 56861752 490444253 29352178 916460272 162021896 461844606 162439961 709473562 430583039 902189545 462791056 498439178 198956162 778580862 457297495 959869818 297206071 331067333 670935736 831768507 212151657 936602533 751702509 939202905 699290456 817866965 143094163 865535570 852605492 877483655 867812690 919718936 299631549 764856751 626257757 688237684 612066000 651429494 653314946 712166644 542408778 696624120 793127293 999438318 599920046 773143728 841918652 916478553 420868331 714511103 537405338 634097214 591951733 876328036 641616582 642887514 915619185 924044363 993280128 993710470 631147205 703588905 810348113 900380124 539434796 944964595 527145006 857741160 85132204 616512870 412125005 434516448 330865377 618408733 863285238 907041936 614269669 631897540 699892521 807538825 214542155 670360890 968294468 995688194 72027794 788009504 87794792 167469649 905527030 951934492 422516735 510327915 672971871 729774613 135318815 254910763 156515984 460772487 880978770 914872409 285456321 626677590 587043476 859023522 656575159 871250597 91339898 229790156 139025991 476067766 2752298 147277121 635635883 942360570 1682875 597235748 953543269 959955309 287764365 477076401 278005548 985954955 248568008 982319782 608359449 983149359 44300160 587440393 677261707 963948471 216189226 345969835 575055852 819819471 925220448 929417940 161346985 176399062 672320586 994862050 302739217 447033989 885145274 993657017 659074619 919725328 407123118 881424259 191700237 896445822 647063600 810261589 118241752 436778266 246556558 603768190 980105703 996797213 386031851 938353536 667830561 771384649 897961470 955214107 878265085 909368847 166579695 679807508 780218438 833848416 885955916 921560246 3526415 497394892 536403173 641280460 558968833 742312860 716216112 932157261 765428745 879127032 958769991 989566849 626152207 710743429 119388068 673863269 654047587 894752647 990617553 991210346 211874509 423739070 353413690 401764662 558295790 809151067 618118703 864675926 4231096 840122974 720521136 739378918 453300247 514426085 433963216 658413322 701634708 886410105 501707228 519680933 433595768 640413311 333624402 577312846 551266047 669861634 703185429 930134823 56180606 961453658 2056425 633152116 892402296 982185100 7525500 365088827 852235570 855632078 905662458 916970127 474499235 966109292 108323614 993665990 229491479 632034502 926319955 947160029 897483378 980449799 244412027 330371702 488844402 647906689 725640868 725968883 369400007 458441664 410954856 802087598 723528980 918966149 353786662 526677989 771794938 939177718 832746115 955704329 654176129 662665801 836229275 989225281 605835935 742288890 412500774 716065790 101643465 935580484 374676016 969027180 900773094 981727215 534175594 588124413 916357599 918196609 198584310 400046498 997670672 998364622 540126894 837990325 660334836 784360276 107420510 237715701 125437385 770761824 178367655 187962647 102192776 760650564 756512516 900572210 836514815 886988072 905009115 932026276 51855013 738653615 271802406 361308466 586812844 768983873 5784672 15103100 319266250 639671072 331640536 787424459 517972887 641537110 973771491 997931015 869507366 878040276 525799152 839239505 519041992 539333476 960853148 970139209 755321303 824880580 991204163 992874081 210297761 251898380 462956488 463119642 732100538 998969140 480351866 516113936 287620179 860350405 361967018 903540699 455637131 958347635 326377151 794528077 930924584 981248768 490422201 949930620 14248788 825259981 957264544 985440055 260256478 735483687 875586326 924480189 730071318 787406383 895543053 897867894 484379158 731540360 430006900 510273404 631710465 658449537 41380861 117809452 348403184 618829616 697647904 871259451 142491756 773870272 563704171 641311142 526938441 934871171 363789614 792536196 23031162 521418212 72036972 617675478 274793411 388128776 427399945 907948998 344559804 426876248 620527239 886669867 795041657 920847384 105833513 573752330 482623565 914845827 712287124 950513529 461167574 521604816 974196170 980922427 88163566 829025803 306406722 560482522 905149356 920653488 601103135 958961394 240786093 818146008 183455547 857570368 457398918 885631843 823430451 974553984 587546315 625191280 217799647 594537089 378822923 683846677 192225052 397977542 987121571 996287734 258665194 660997814 105774395 755800568 394062783 617698174 158707606 188342895 953908124 962652686 226369405 921544506 282689771 874085985 734467769 932035755 648315643 990056330 691877088 783304997 325594390 432752271 155261711 312196345 347186060 444912434 67296961 617171918 306965695 378217639 591289156 789484252 893976828 933256559 609170022 924572524 130654025 170727457 315908916 952541258 223059885 863957311 41201066 240071776 227302071 606849879 157438075 710677083 877478911 981886761 142975853 385955004 899295836 984193108 411601124 980360379 240422592 926952492 925137528 980973136 569187228 991223237 998817054 998921882 99715109 497923944 158555379 531142720 80338957 849180377 428278714 571171896 559723271 788824132 434323559 644314723 585742689 653626664 320637893 430253427 114558071 530731432 112482812 450612824 42219444 299016685 661788424 980506220 525734116 687915444 227424946 761832487 431485396 523203991 119546348 990323803 239911064 691001519 497747964 734812814 96094187 773330834 581928512 696736696 129225726 257696649 913318118 992991564 24671907 157696989 104536756 562336872 137864247 331379273 362004671 616730876 945812803 995850144 431106441 498050594 756607862 874660799 929873514 988889940 590070777 896576101 432985521 505319443 108987836 240569503 96468126 939428742 243446719 418151214 795235030 858413942 941019569 957884176 836814760 885568291 715135150 905222407 67261221 916605312 868907059 941492447 356535930 995295063 786116820 809806208 776671391 982751346 831968930 959256643 627980518 764177285 401883244 426888500 341015561 607497860 217303567 772625143 353918019 756957507 796237436 961900000 630018222 701631896 768320827 998961548 560087462 627113586 509491841 833726219 428887799 520437746 429644763 901113327 582593084 858672509 510289351 515876880 466630615 473167613 9795872 353999794 373548463 492765758 216122827 642781365 140622105 242166454 87205422 467493528 508757213 601642876 646745259 842432085 949320281 989789601 963099699 979074655 402721746 619509095 745363065 810035721 757169333 943098374 337919568 822651259 467601623 775711244 11029809 82471778 312155087 924889733 340685672 884413824 869039782 945242790 431098679 766766943 643425354 746325314 955567032 987820526 69263905 609234175 968987847 971822352 207874763 680034855 640929701 682306630 682157549 752956802 479458515 900020071 639039634 734037643 217959784 598559477 313044174 684802354 575912214 977884043 478954794 848288993 771068492 867393781 539505653 692124665 93239777 559026461 766577442 831840995 909665115 925172679 42791945 884449470 609311111 966734704 186674570 469575003 905137358 978772909 122738724 481831279 646470677 930036111 332204706 587584434 743809448 994907879 309060631 771057091 651095743 805935991 487145762 651700618 607283189 718425977 849523917 863485804 687912815 997619643 597621901 880046672 231244345 357840917 282702740 706550587 462677437 804017778 428932571 505655633 727847415 836289624 276995880 718912321 559820502 950088175 945636638 959504179 206987517 585397787 158560774 703757642 539462182 903928914 200036610 610155180 490544036 576693778 64670411 227826796 605021772 978146789 799866405 903900676 906888350 961749338 792507489 798154870 90961415 569434730 245726442 359964285 341778498 934828753 934070870 990998332 460010164 875167108 491093882 958684622 189441926 206730686 696589291 803644057 789494166 791242752 15116677 841398633 304101508 473779489 535110152 875143591 9871399 564463341 243770392 311387511 748349278 791818118 790383032 861537396 305923715 742357004 968370440 972367527 32039388 470322547 224910597 487340360 655853334 711980810 62570956 234060412 186019705 605596560 898077960 959711171 749658160 943092867 936689892 969539119 853033395 985128372 10063064 605495823 559409772 724448307 765866962 967596423 283626410 815066403 470908701 694037536 286065194 637778143 148026452 204442038 653996242 835479898 951181341 953877314 98580986 505612183 74829597 505800396 977514991 984151310 333650009 580725761 14273103 895914543 148949335 319797109 90441972 497019266 993586893 993757805 144806698 866382675 339389919 359196957 52660091 58742403 857897282 947462591 262389894 822761609 307853028 677419069 580822942 892039950 106013795 302016758 983731198 989167964 6722716 53033223 204233341 500134030 362453531 446711970 808015818 859648487 724639676 996781018 619372216 727998209 178876652 401747812 442354017 952870276 335223616 625123670 749671318 910742409 401904364 558947048 824263256 916673795 382612331 429380965 223018471 993816834 693151717 823150767 759944673 939665286 644289785 795931359 133688037 461618579 99315776 209833032 161074492 976097104 89236034 526915031 448089073 458986209 728674073 887528609 702490705 720266796 593690042 796955787 676713881 773306475 898761895 971602519 510750740 669165030 621327905 795424640 343095399 542134821 558264623 643887527 54761688 440419141 151730284 488860066 263891332 832870172 950548977 960688722 430913103 825199792 473074149 554033460 420523158 818350000 938599795 939810734 744499426 870794702 266125211 892723551 100231994 133047470 377158954 851372554 675660569 915697656 677015707 969811444 663244766 760657196 832065036 834421803 893714541 899685780 908652564 998361197 189481722 487196799 850121440 901126238 339655470 630362490 988024948 990711326 238233954 514803371 739562750 829459013 96938543 342329663 673062755 697426637 840893663 965294294 621578388 720230840 345066218 734078436 953969656 968907008 435881907 855202253 504144701 516158598 373781390 679419803 769600779 879306305 155323874 267336640 709648174 785404069 597142584 913979723 845343170 946342973 850858695 991707801 35981184 923091785 47555788 783280727 163366472 420056693 584111473 696319726 634108251 845652805 809804495 988042084 811184707 914340393 485221882 617017472 245471069 254905746 435829607 649747302 328212597 492387203 438847888 790802951 116187829 818954369 34686156 574352107 840293253 972232070 30310114 806747292 256634839 415455374 154369964 687993713 942257726 963036570 369923198 949010812 410607939 870233579 963138500 991717143 994287074 997916960 774695093 795514230 231884330 252734763 335898709 552922266 67960318 370451712 16975534 307254274 302715260 937023452 143062484 177906172 706750024 792939206 752446424 961400565 126522469 548147804 893607955 931849473 179354428 564578236 602886120 862134026 967893906 977785786 381196442 840600255 672588939 778585134 303753790 928523464 527412392 860587044 85528846 544682919 507080363 749026907 646838964 776958599 114048320 929152501 956833799 992452195 41105124 687100864 432902170 540101772 880078069 991124775 598037411 649924402 884596078 969039208 7967394 459630922 521918125 929229994 977288375 995810122 43430622 176715282 62224684 285691882 251614469 293510110 64125720 818458972 119590278 197599065 986874898 993290862 683139323 911662420 765027203 891105630 352117662 511414317 375778625 881578899 383358245 708961103 16759663 365263778 803889696 891763419 382466515 861451066 243094518 564612200 856726549 931802774 865177275 946636051 613712780 761281067 505275192 995597191 692567973 889412524 587041349 765114243 455938097 483581155 291618523 584066825 832621573 832802524 930924385 990614755 388722692 869276305 556416577 847604229 934790683 958536358 260672947 612255334 517877677 565990726 658024264 745740931 608768625 750579994 654018731 877766110 362722783 920734018 46434831 610154045 348972685 574749375 169760170 212779297 58805520 493230994 181274044 657516329 715458579 942003067 361355819 398652017 286689144 294207609 135356717 466253420 315808092 356137760 642037517 983340646 266441394 919221228 648178746 891836200 969733087 980329129 280749104 378301526 353643256 669399074 273352595 557386810 835122756 909017232 58430514 62907406 422957832 808303804 572316085 834472628 703671304 745599220 105660639 585142762 146116127 322867437 264864338 636590901 171354093 703942713 470403698 537537582 81466540 665298437 956897999 969363258 635946432 721038884 713806146 770987069 990272593 996790682 578149804 948117507 789780918 886907497 257776046 567942530 410941641 487955193 226384395 935381429 279253860 712094093 835893827 945956963 930257013 992528334 484164957 486296936 70390736 364210144 264293705 999958608 171119997 446000472 45410617 73996631 763934292 980305376 121076006 254069636 943433791 990263768 333410263 900672633 579740949 613845690 885396795 891966902 33632685 299876337 755644546 764435271 932043350 946934917 210899087 276486148 296232104 562157205 410520994 639657380 6360206 683831837 515632016 989168747 662111556 886047600 840731681 846059224 117664892 513069683 20985837 343783122 247685572 308500440 298359789 396952170 916868749 989642913 446732304 805139881 965263716 977400687 65172178 698850776 795011718 889998165 596901005 958524159 687202573 869631322 842390655 865371311 860401462 877466746 923135936 936544594 212606134 791254441 990037822 991710119 922891160 947014990 67352182 400452429 907362450 940418180 109428678 151586063 922144110 941757805 583316997 645559956 552099650 835863641 659840564 994586306 796524609 819958979 694795381 882935035 592795439 678307258 125681811 837143235 616479484 936896120 264025438 466614034 222588277 328507090 389630661 841780643 176539623 598453594 605240298 711686099 940788668 951606156 122294130 352792594 991249008 998328153 166249614 332878106 417389663 796169262 569037540 814584395 111978783 798750458 728562854 971437003 287858800 501810200 337251144 580148880 685380482 906779315 694452669 717451907 78475614 620865461 512615260 615870357 356560109 627300117 770729734 888011151 181563050 341432815 880317836 940849157 564261356 708945557 596146038 659431678 488909045 497796517 82460610 671441797 377299227 533804852 800318909 994052281 971740550 987833043 809041339 990741689 791128501 989908803 772666582 927547712 516816777 790396843 262631721 827047958 308154814 406904271 447511515 932867043 620165527 895688978 965384337 971646842 114189393 944043845 645863224 853168142 259083901 661482234 20183026 183278020 782680822 990196123 690070342 858132590 673615846 814810030 619176401 619433644 422158814 862991815 95928357 610116887 887480846 987650957 335725729 803721715 964120390 970641749 243541069 435097020 269424042 884162968 307446520 809695258 296949274 392561094 325697758 812011948 498110126 799570810 102481976 707342303 591495811 740463673 16665145 451917248 115460382 696279474 3721979 587382214 617141619 995526709 945278085 959471547 684836149 954200605 662831109 849990966 811332104 937625586 383154174 519324907 731355747 935282381 46744716 207752667 620496341 811687288 162722371 681361412 403389226 834178576 712867128 809041878 971364908 988169293 709940171 767846065 714429998 857443728 151029512 465738260 320453516 589746748 748991107 956109872 537180896 841737980 314987810 319973286 728943398 768203604 798016623 888324968 970308682 999877073 314287294 896760963 852904491 902994349 122603556 885420461 915220297 951265412 143383170 856567952 225256851 905083329 611900890 927498628 56898953 665042794 8447319 915914822 30084481 978399429 356743053 586928431 358370428 674988522 983251467 988310121 879806149 964900474 256992273 759935152 509061684 841970768 591480596 955689767 535959470 732164403 703924113 928786546 721463158 956347060 930671438 957978736 288350376 837745318 65487570 306510415 585672845 603923014 854356134 938357598 365177977 826496792 129002205 307167654 420865141 654751017 595962918 633273440 106727017 164005980 529994460 557441855 338233422 978891321 85721155 214574884 995039822 999246672 699601145 885318624 214265075 856120551 406349286 720843833 715170292 718802221 389733638 613948371 258848042 738147119 632081298 723537143 309696880 727944619 924205574 954948473 25578564 644767363 140373511 900680424 36436721 417912246 434149030 614345200 340983766 531739207 151042340 617599108 275016620 323601028 629593642 913242183 159776514 923165974 843120220 894431744 279505010 403554326 27146506 52768178 890619315 972934362 83035181 385879363 726428207 814076748 191004407 402291330 357629697 600870948 760944486 812434717 110947438 634294267 109918734 171242470 993712054 997377829 884533180 887669013 9841453 36330298 779805921 791543121 808449215 964163596 172248385 902173589 116124185 213866169 29016154 364216798 332765444 995693752 716716341 803198267 393147750 836470228 887344848 905738414 311025961 985061707 475339029 861602107 347545159 577563522 981820716 984932167 184066518 373233415 515844837 603714817 10958553 510164409 397211417 557660475 454023940 843525550 680904389 814747650 122411550 477906429 169433234 279432924 780452408 785301193 574021488 960390905 717590320 942807179 64576501 852448279 185869012 996296337 919989420 996605864 973143434 989274520 457672034 576046518 630336483 910577131 561311815 577732564 637153645 746921542 329391850 874433088 667240004 979385320 199012972 206587682 682309576 808287240 41060558 602401643 274554718 831257125 211094979 803495064 796360072 890262338 571998709 665028465 939800718 947993718 760406133 828046008 669590866 800328551 367210889 434391020 151095712 833322195 678618981 939394107 767545707 992495856 430907003 996806893 5626427 178721941 382067877 788525560 389387622 855247130 748695039 924323568 377402755 783997623 515319996 724029508 830527033 991126059 141758916 763891778 300519375 363402243 551356606 667128694 938181609 970473420 786312025 809779820 782718084 856240687 808829239 968745751 77096772 935295450 951682668 958376803 800936324 833345981 527154092 761638743 665415020 813389612 987269390 999258696 331283133 986347376 338275982 570406895 719021317 978459836 905319620 962522100 98005882 868104521 603217315 737662170 677889991 998929793 87790433 671287773 424979617 499652584 530636737 764277599 345983658 560843791 839148184 876464669 754160044 993467814 317689448 748592117 730984910 795894714 224093252 830488656 82951871 720039805 298203987 367528839 382153345 927526707 936270413 984226413 499573435 607188571 472911358 656133846 144016048 823629540 223813707 600589401 452126988 653239840 213288377 840773892 915046277 990143248 552284448 710092494 772890524 950389780 601779441 921826052 593067721 941683501 177735068 396916886 907744065 941287569 308362358 918578383 233179076 622035239 779103188 905081777 590979068 598465021 814691402 964222064 546499016 873818463 805816209 814218578 620975512 662493903 885788655 936376924 549388896 879604184 646420036 857820895 501297179 549503017 405432947 685783217 146364619 320770353 322628843 840846014 741638907 904130198 540757050 578849430 472697775 816517951 945178975 961300552 960270386 995036041 844815225 933421041 431961790 970311877 852437512 927545372 304542651 311822255 208210536 718007817 552357834 785272191 153422818 377877880 276029856 656012061 618363301 949975393 647395148 652114824 755140360 979075720 871045977 913532819 731246681 903848493 990589857 994557008 813709296 988624223 782285345 978000511 940065508 966938873 56106870 696992254 58293973 637720294 475674014 675798100 691893488 759006771 785721236 915542447 37175345 956483495 48172088 399135459 393016134 480596038 987592688 998704724 937317912 966676086 547873697 659006605 733775881 992579259 140471340 423379277 825607622 862004112 605864986 994243084 338805394 845398289 597737357 771346337 15683575 293079613 162933563 649228827 412923882 497791958 383319305 531265777 459611283 879094088 15685166 22850157 708009984 863489443 450691164 948923144 847136450 991478780 36793040 376095685 179753615 590598806 796406639 876368127 815828193 836518626 169795533 411817844 56225337 538207648 913250449 950356534 387302607 804137113 999120779 999422644 697840833 728430396 861927965 955421513 839898337 967465210 540048542 967210478 773047325 997338394 683774217 953921795 967779814 987305208 808303751 927816285 786034294 997155211 944115117 996900607 727779897 738932626 514289474 862237936 210987344 916442612 751269433 878966074 402399362 512123412 525744740 582426575 291049025 594985195 267211295 393598619 890703363 993739304 937617579 968885262 151271637 936207797 846191048 870054062 304352202 826434759 716620394 786005269 112388591 685049327 300711280 886528346 256435084 725477215 367065190 798713468 484572293 821713845 538766690 793141985 962847897 969703928 982480171 990283840 454761951 755800553 541711536 909399873 22758170 747442103 906643364 941925818 534429064 854056905 10190174 660253665 984895882 989650958 285082656 409153886 646959066 767291017 847673511 896877686 774272561 903013288 89475271 206774165 599405089 887451872 622846020 734814782 303849762 998857713 560847540 580596376 324809123 972180121 356469316 562716165 760456509 772415345 397820509 878749527 600544765 774426576 773715561 804895192 149417713 276754793 673353246 769734993 791045864 901454843 234785024 616592262 677241787 796773820 962081219 964155012 164522596 191077216 733916469 762914582 59257661 665442571 824393290 871361752 452245510 944390829 842617066 933589504 67153043 993792619 784118758 989789693 438243241 839010414 805641455 974767996 453739485 477926311 464083691 781196668 792147090 977542292 50695819 176503119 361558131 924318818 452712864 637807387 765440940 892503280 613712073 647510027 933455942 977732663 797953291 907271564 246352009 435935042 689938623 914673088 851763591 906203873 256680555 826504881 554131211 565372086 7821598 928644187 306262061 909897997 782115550 931432449 200764432 601510556 429700634 495265753 750098203 901702838 909762190 957296044 217112279 415475458 490406159 647031586 963592509 965954398 15206723 426028837 416895334 583973393 955751511 981573266 387054741 997507375 369955702 475462638 958908579 988067405 881878492 969968075 505507947 827376725 842162620 907751293 6904640 929508509 16703489 181790289 712381424 935560213 506392507 604561375 316852524 517034671 984575523 985608022 377130703 497757551 583294823 697871195 5863567 312584259 23395547 240046002 200822473 877036726 115680328 446285308 830997056 843848384 283016498 936265874 873768146 925353109 599296433 923537044 565942033 932906041 94376652 534112737 94511775 556022314 41926474 688094748 245878843 471708919 425117903 588265330 894522156 974417537 33047715 708175750 238238561 446581408 45448524 195168830 137450825 576029338 65856820 750689382 825707179 829177694 829482630 976960078 540641352 830054479 72183733 699807000 222046511 414161241 365806675 546592390 371101736 809703130 221423840 770360376 465470160 569075555 641808640 694253739 855487432 973274782 140981615 623178768 343072875 976443905 934715849 976530129 758656918 920991882 404657952 667809667 257926218 323613176 83718647 495944918 921061078 941497983 246077965 417276210 725962967 790131151 280765765 544111437 673486429 772251408 935231220 966324953 900197370 943611222 994559263 998463618 722530796 965553577 646626592 776945083 865414577 991636982 113853709 661360685 703049983 806191692 934053077 973634197 454207876 822470662 909320252 997941971 631591279 830453254 175973278 504612531 856528699 884324270 186495339 270936329 362659237 504625060 599736654 891975474 601389136 883043234 78112006 912875032 53356534 230088137 393330660 889527103 134460185 457487726 172805232 548197484 90716295 631532496 587684350 725396039 27336905 837417875 90822529 385792776 813903927 885563597 116620085 916071420 540191238 847940931 692803354 940647447 212650831 288946171 43682925 631126891 585636313 987878687 838882819 984472605 885196605 934773193 984363520 995255843 727251481 788703322 275860549 366427310 358232240 831747270 543514300 578674665 908259703 942759075 937411458 948524855 702490385 746580370 267518938 651932185 873565092 957829603 85467028 694637523 905038100 954356961 637153080 660080421 133116562 580243240 629423159 769970763 356919457 675249104 308714667 769658946 309297891 556816831 167103872 616589851 713899117 811157877 436238912 841257446 39285683 563378138 536897021 579856489 73424139 236343137 881280652 902868278 806138230 832386412 588307578 870055074 734897451 790331579 353889557 867113093 925079684 984888124 656963176 701555194 160605079 552869173 974310491 986131946 246215974 431632653 752481890 763611064 502494826 877002547 528982474 555452508 794389843 933586515 68943243 766634110 206190783 262172928 918395492 982666669 35576248 669649271 234112645 304487111 169090881 830516433 267349034 647323231 720047413 851343288 69915019 269657391 136534717 656580423 321897794 785545201 482510162 526659666 839420058 901711158 730394206 731252502 196336818 267512425 929620454 984211671 211979673 400366600 796939389 991586376 422785869 467234980 726523170 765366874 782879702 871763468 229740020 911560837 608920570 972881257 744103225 758671063 883982145 971532332 499565861 579153035 778695646 793777273 169949667 347785873 644763470 952296218 263144074 356480152 286960421 630486059 272162360 538895730 137812931 719968051 342491185 446279581 333748295 927912776 444330876 452243092 941309915 942379794 774712765 892909599 567777290 971714406 241299911 779612424 985925736 993737943 151848746 677092633 209181998 310345675 851309148 990237021 911909100 975749749 22749167 146648103 618530469 736358078 617727064 758859588 274556026 372735203 547349311 630817271 498905941 886030648 2415744 715064419 998636843 998779141 339036751 548516728 55069615 274359215 714646156 797919131 374763007 917618310 617687204 907336197 236710980 959338817 67614853 351322520 173077303 705331290 891313421 938860778 372600936 388689815 235854375 760150418 319070820 604074497 758031450 887803615 279851702 702279997 80639405 974558178 697461942 948470239 282402478 743946753 324870267 528150267 107662253 429195651 817850353 832993452 352723401 995243865 274779556 700717373 325976858 760884415 111347707 467446903 351890594 537885662 672264574 767254826 581813339 707666143 990065734 993022817 992338925 998561379 735318385 908051161 585710696 975312293 233731151 704076738 844482758 928363212 767250553 815109786 490865907 550745637 151053610 791719239 289461980 708593142 178132760 195715832 642912655 843893721 70391681 657036254 643820192 847112436 4565883 666289055 309595191 690381344 534814472 716065321 688388715 958388234 781174245 860918707 489088981 626638400 199803532 682085877 883555703 958715143 429972609 785269163 512829024 607466184 252567672 401663057 659499384 675508513 628115920 653258519 170050129 683992218 513481265 932083956 522831857 591618300 935794971 969460061 176344612 411939965 967620418 998565990 635250743 696935570 836322131 959840372 373545956 828069659 553225245 983040523 830661001 922011494 457220768 779651430 455317690 668183363 944644286 960098771 394135558 787216347 430634638 707209849 669395968 944795057 174861787 823687280 191772769 273257596 738748262 861636139 793204161 973381096 702637425 933316743 487407974 558819989 140310051 523394159 558272495 651965862 279916781 880508487 389838527 999112730 839628615 892977005 456937379 975825751 813079215 856376812 137240283 551979128 238080365 865701811 588899986 868407384 669368426 928452651 878101837 930900232 102370432 589957697 911386038 950196743 109860833 457107976 203755916 648005431 221760311 633362627 28352062 654123957 338496182 668888554 889333809 974823532 749926057 857327856 940222946 943528750 211231215 750669263 150008343 419497712 283778964 458471782 269278971 644235187 946948669 992981192 78407323 852443428 706694888 887741116 645591553 717306505 140103818 409658613 573455313 815311920 3475360 42086764 793492117 954508754 201857846 521261774 689914327 924940561 257007913 422464801 189828695 428500055 449431001 995347707 215260323 938622732 299176325 655596785 642351296 702126270 309045664 958799084 836052577 957214358 598825026 700508971 975949115 985250415 81956045 233667852 43153802 468988871 886672704 887987390 64543182 566752799 95668674 265188992 887455337 910185607 287198431 649671683 639484686 749943400 573986208 966317323 259636966 795596774 638679315 788578582 543684669 663724259 517109989 673667740 291250506 318731968 744033693 964012142 643630729 665716730 182837983 227246742 29282243 142541410 287423100 335645813 876494908 946831494 2032149 369702642 523743732 591696786 741005661 840909303 243454670 710958034 847652613 847706919 540664752 898408370 482739596 934752979 619985598 946067359 769969263 788182472 749870202 938655919 137528461 202098822 300497488 944271127 487238715 727826503 165342635 528372547 853052238 961470023 507687170 801957937 20378953 50423994 373550657 984643648 155764231 294795725 180701669 649598808 951957216 985396627 152252047 750910243 625261652 914992606 144952850 337633437 859203268 941709836 274896586 746230922 179581912 272295635 945978184 978045098 121518023 782824956 568381802 629574675 484961739 898771471 714331317 902524223 275713447 417126631 893560684 932397231 93780385 195488815 501434507 754729302 222907195 985486439 858358793 990543852 908517017 948266347 378642866 960705114 858239988 862504941 850778479 935109685 402543942 891593490 874445887 929612873 433314327 640473740 64588298 309502280 553689809 580477852 970706226 976168018 775244126 790729999 599174977 710930278 328103937 600546989 39982300 564713975 928756614 963675448 684816116 958246006 44405163 163658089 402697849 826183867 922492215 963299478 127562087 343104289 894214436 924541688 184793878 304976209 966658264 978734279 507526543 509758406 138476221 992699810 221998225 633695001 261462124 554002560 852528642 943576775 742193259 913501767 294801198 542052878 855108099 948212513 41349469 799532340 901420570 944115296 323045727 990554795 102820536 699762140 423126262 552612554 933851201 957078877 4709531 249654819 550225698 957192067 246234486 551223577 905552389 987080421 219236108 880057669 293105878 546612704 910148617 983611648 36848260 872419195 737263890 962636385 370989550 511582407 377182556 954713085 764462766 825106383 466434456 766828765 807869152 902599125 827155745 875198497 859838761 971234102 183370895 550434808 305712118 383019818 444182884 684908836 335268856 811925824 997282194 997501410 229560158 876165688 467871761 863497187 307385592 875819121 962770338 982575394 944704851 953870764 218076980 970597894 265524201 625404904 949058075 964148756 456989762 909746547 87368962 900251610 917485670 945202349 14250872 153440877 890405714 976428650 475032617 578496342 753840628 792452351 224676513 859846090 728319196 882548071 536820480 958572546 773036847 783494929 186650282 262365176 551395203 871781744 557341964 899132424 748367665 953973613 420545837 752456010 597155506 659567172 74334489 547070258 917060323 977703932 657975965 700752008 835654599 855030572 107487731 606057023 7248853 246913252 393212086 510792272 459901941 539863132 817207914 874563616 392228046 552561386 770167192 775602434 445773560 866546438 598071967 948517016 732975224 954113571 336493985 892778182 858010233 918697614 520578360 555516389 666851972 788164566 1014149 519763434 40258384 125749773 356119078 916341001 589146609 616728059 203159267 743393000 226405473 407056527 831195608 868070524 402802668 882097221 145034766 614455292 181016766 642172649 302536253 313876609 903287053 951523275 969916244 975381644 949639053 956196962 6992305 142340183 423671040 492277249 640708118 896802741 364485155 568052632 371856869 548614489 506862662 788636662 31474158 513245808 24365002 121125357 138861316 640954756 644603006 691725031 238051509 885517587 342394002 926428601 864659964 956257242 109271282 629584530 858248973 863742027 469115066 696880920 972590982 985555521 262652965 928166584 218257356 547704792 44997199 947034645 634996237 743991835 334328611 521797411 505817723 550846958 830629356 917840665 522324613 920127646 506359891 644854910 856229201 856765985 831711138 947145433 150711832 661593514 567465394 821996026 275925852 318441578 637199781 790599134 510031032 827040085 244333868 797839386 338141000 844232076 766595425 868152880 925780894 940118646 687064107 916106282 935270515 982169471 950354573 973666190 423037250 482889855 5761458 110336665 361973726 968272687 60806878 608266707 687204699 705586254 270515205 301652245 314513749 760880850 433210 952301876 166411519 168205390 171619508 616753049 197580966 927993325 763465972 768785805 342062282 675585687 528441125 901061254 525409711 956125295 878110761 918708404 262535182 552484838 433318863 914914776 309870203 533318035 391792921 432301707 48848540 961204934 458797008 903640248 763045228 957794327 830667744 935095184 167659607 898013755 982728008 998764524 874767014 964742164 49978882 130644169 384161764 829056764 22062516 853424452 594857910 705357344 185267616 574091009 668239788 887017214 846912629 941575565 482273389 881236716 21021421 169445962 922541397 931944658 167665417 579199350 540918508 720604544 36205130 837956385 265567704 797128105 876696773 982292788 386542292 435239879 655220752 755443781 289642649 596335033 808419928 876301383 598432189 906920703 357689705 548688342 293463536 867039198 825988411 882355381 300985325 955725861 267350729 638924682 676706313 808531050 514918644 686258870 813381483 996149801 442380981 510643015 366500356 701022248 947129518 975111329 683441987 939327057 863687244 960575518 369735389 602224170 33129248 384465226 305266728 578382779 558705081 558786593 231826743 672911035 443379876 699869158 422680537 443347120 151515679 748955429 223270213 605166077 672275836 998750997 558877816 590329153 723492877 893419107 882401739 906096258 502923956 776896264 122442626 587764983 521995173 924409334 878864532 932059140 879004963 968091649 58318284 761999094 973608977 999335563 271733077 673104792 390552156 515387084 301854650 490843268 537042772 585702526 294024449 328020651 32743953 987823348 846458062 985682696 609277580 820618056 775405200 853700682 936216440 991707280 527150870 960857567 994049673 994079173 537097566 642415582 325781758 747355306 626217444 743757839 653004022 683244725 745060114 892368410 429868538 634804101 17546296 584265905 623704024 935248196 587346232 924564580 661247102 799409964 820953084 916130857 329527846 568662074 107263698 769517342 309512985 957241790 895937125 916207684 683349981 924182071 317500861 626204579 771391463 932512244 642656390 643831529 924181563 926102921 633658107 772419255 581164154 755443453 627450447 790784168 405517542 481747165 603666304 825953925 821907856 883202888 834020414 990428222 982944174 986027093 598277947 959281439 492523845 885808230 346082328 679393777 908621823 962364949 403358088 552436090 395055074 588396766 83270433 94116645 163761850 527910446 118299396 950502020 820923381 909476727 92430284 446449285 923009284 982860721 978306717 980250343 105458150 434837952 487811722 538034205 686785012 720166515 301328216 302736584 516521496 774507738 63311344 82851736 404717686 872205804 275864831 918766152 722286770 765995349 191706560 372709629 700220542 880223667 618586752 758757742 446487123 717448800 200159879 466256583 121295246 775454904 140025055 313313002 968815107 975091233 487716266 706550496 673087184 718890832 462720499 916438175 854984653 856903159 665848479 847141409 826656987 999669732 54671398 899109847 337361320 534198549 323735703 902650926 875108207 952559208 549741828 957181481 244300791 743122558 329218223 522848860 793722386 910099925 521842248 970054187 684524871 812705399 599265601 782570696 525841126 528468700 614651133 649084495 591120179 957784307 254023793 846168864 439711608 696889852 750785011 868596433 909008524 917403015 852422535 974808967 353663490 429461575 736867648 780481173 379082121 837649250 790502002 999767894 221037072 887516501 436444383 974788357 116301701 306103933 300486912 858258014 384393422 520449804 86752544 498754519 16933046 400371455 642457713 886258265 331694531 523624442 348442863 662207547 903892823 947536217 539427039 694471668 134052638 988165911 747428648 867610840 46546769 396746249 670977716 806379565 270915208 892992186 470300413 987736269 368219955 716066505 908170631 938133797 854439242 966616800 217415506 758302354 590630465 968993448 392919974 404715593 492352685 565855111 321627005 562367826 369160269 601940812 341170248 549893103 568784593 750213855 847929417 923441903 585021286 613143307 647393449 925074871 960377426 996322400 114719479 418342360 610276900 898424934 190836577 584715034 165917865 208096146 528593246 947430746 811787468 865311681 981682213 987254228 66813360 409012617 291298935 737792930 946122094 988128424 576443308 816144916 948218726 978546296 108436125 224804716 181419456 480234236 186625276 512253914 547135534 756648979 344085717 463537006 87022433 975950110 995552511 997358354 458304952 916767441 245368891 925499366 929943123 977516626 53809488 556419429 857092565 940911391 757390660 964289807 940317799 980959365 864241546 922623484 506964289 629922876 243052675 508512202 892503500 918710319 542458148 911794564 648166854 997395253 454533686 724622796 713717645 829881250 265354887 275255081 560523515 875797302 893658354 980237647 294742097 690959072 688739003 996439961 28299451 680438494 367890370 742099188 128261978 826503750 567789072 799047087 299720553 471775070 51249663 212894956 379456110 703236612 710481825 972236071 622076012 641486223 943274403 967099338 55251734 672324999 168955396 812102003 853193331 865559531 659765107 669820021 780367252 826001465 962644558 997589077 160244901 256520896 911962180 959041003 693003188 703839014 373310432 453657007 225287590 757219186 818000470 925930426 301464586 972267509 880222455 972244907 927656277 966428567 205630249 804337507 562230876 960026695 970563269 980444692 80779586 228750586 580366917 814632549 655193866 818461904 275297833 716689172 186880487 800601928 681592328 908098321 218501330 370851029 902743013 912298663 165151918 238009417 505085455 519667644 991112675 995024053 953449491 994752274 705223110 834878977 359868329 639524325 80143364 350714195 347268003 365993667 478004336 709614148 722545044 811250337 497187339 639616042 139740934 566516996 649097561 892326978 894453867 959182846 394067579 638172149 253736642 441777086 680773799 739072403 62651909 632257518 818270454 956246292 97608658 525907627 928778605 979673220 646941083 771392129 204412151 530819357 133392560 164517329 395931855 553266158 411556225 466030397 225016948 466478954 9705721 398674043 707939060 978317103 779324030 978874118 988316788 996336148 767032435 993933952 46353829 144856380 377137979 909580228 664589500 936583609 358470015 443190683 162851377 445789002 492009244 831865984 579138626 800463699 507706852 512849095 779892124 883724303 252776553 739134340 800198273 986391794 629286958 797119471 100824449 240300565 471973178 958367576 70323218 562634885 911655295 947988198 72712830 952738707 520622866 704888948 375548025 556905872 345010004 886606747 472144588 759844913 76955706 271888035 913625413 931908427 458815312 779812843 376720569 581835575 723300778 861319723 101723471 275409975 312586004 485214100 682581727 965372309 665472706 674026830 744118604 779521709 48612220 316895358 76827775 782936601 985922555 995949020 928508107 978632707 257909016 865263323 779868097 845795279 34827628 942420522 351690447 749027219 715823714 826613529 158422744 504786729 413149395 771027833 69182962 456262480 647227629 769399155 262232606 553606364 292818983 889608128 263131419 764971765 232424943 549128649 530367128 985852908 264920822 282128212 772959804 970858077 772015497 934512241 747774842 928663444 570071955 963604394 146765145 259971510 158589046 643436742 22498589 707940451 64370039 344279679 497277921 929854650 723847884 854457397 448479349 730161310 557571338 650267368 784595655 876049736 38324308 389056423 481035883 728860501 233700865 993184799 906747861 911868753 856624785 900069318 218031282 930123122 452528738 479823446 129138458 473535547 716292794 974882705 39553967 697386198 654250876 667271551 385791972 941319777 382409906 949028413 501689445 628309823 547958783 748772032 95175882 947617971 483659253 746816923 102020695 476931229 504474948 586945859 297521613 836056976 160927086 942875091 49563165 132296101 416857604 598757767 41631928 512551383 809832435 933830496 188116458 393014343 661143969 846998818 39479348 938016880 752539183 865995714 918625261 995592535 452156848 648839828 562021299 777876155 467945020 610118673 250374007 708586768 753161438 893616311 218551872 320506043 783927980 796220940 235769482 905587328 56471560 646347129 500447537 950981253 850643751 994794633 186039797 918166984 207610477 601845142 13975255 223583079 255663367 803658054 340526945 673300300 539770785 910504499 888354530 985780357 787679763 936817068 791519211 988050241 316623013 762058332 387721845 419728869 784271555 884876644 43282958 482483602 727193296 958200551 992738279 994207756 395317247 916935933 933263263 991900288 64776710 587227200 938827967 964787780 928711312 974204045 850566950 865743588 779971571 798161963 6234577 436514916 408443751 582962440 198959677 768429542 302077806 634909272 566116871 982718640 172615349 917922661 624357724 657833481 625968338 750740258 989237604 999026103 617068057 999062974 294386323 557353574 595435068 828451382 755266797 878781270 680296909 998023029 594155446 941703801 484572797 710428573 126617083 671058569 816706947 950513301 459396201 567916028 94833343 623625436 5395417 341949667 614848114 616271887 674171900 955251768 268136754 649491274 31353837 848311551 537390233 782030209 38089640 801943735 200195452 599642161 318056450 785432039 721710331 755532599 871900423 953553031 399109112 952168874 402355107 741418064 416507339 556159046 995250936 995544342 64417112 88712566 643485637 723500574 31023134 346250776 847885913 936511845 835043703 984646077 71049185 118560161 524988253 804877983 162035284 454862998 355383504 674255957 780440128 799964839 267638470 311356010 791254602 884894957 962806153 981659231 648820093 841174478 80533283 907875038 474062065 476258897 500894480 547525886 865000081 984825243 406263551 504724819 88397689 472981083 444056052 464837089 727227827 944067797 644732476 983675492 331816262 854988437 90046703 720573779 263261534 879426979 563136225 982263353 400924855 934238543 853849043 875421205 102024996 381768438 225419494 585049075 14982117 875588340 636890072 821303348 665014300 859757090 331491481 515385950 375472402 947000133 871970684 918036407 336596813 490960005 805105419 874246057 855189223 936353720 91375252 361303197 947462823 964937355 912881048 980841534 625950361 675826634 585208979 671973302 335813530 710274837 322718245 687580820 911963257 947867255 958214179 959839587 800083569 961305058 653413913 811187397 503668036 520943755 541204729 732862984 173052829 185155951 137368093 573548178 597722676 633820666 929122367 992818586 921162477 966995715 254939050 474928393 366767600 444882622 615077042 744803878 336559705 704105698 827767172 896506200 345611247 722695968 644354347 957486563 530513279 541983839 309403906 892175415 553094734 945047588 780511587 917912708 213971609 727624984 771091718 917807813 773109322 891171350 338738393 782186282 43738295 610058599 797336469 848490655 579078745 891608306 191608161 557813817 191939277 534165609 986621780 997445306 702846061 893708621 801502760 894430096 989790098 991709105 332035719 924312299 447302156 602534023 124629341 235779898 342479737 471374520 740981318 758974657 781223710 810263604 34516987 623524074 69139998 318179232 768355205 930160668 800333229 928092867 722865482 959562204 42124340 363410150 415201581 763795800 181141602 971830140 458976165 511017627 939788505 971347470 432203631 890089269 867308709 909225051 531120404 549380352 556338765 838989152 316888862 603987577 377737139 804545393 556467309 613779348 139092090 539508915 443620282 946059808 504670424 530790279 239788675 645006184 892929530 971432189 740508404 792060145 797512154 997637041 192453418 983952216 11871696 274691604 557498022 838651898 191292250 294875506 834651582 960490545 813717607 971362744 371519653 926764432 701386951 776307134 172060001 672113152 188750559 707217355 946852136 990184692 486771984 940422114 63906153 146038282 364458928 682855830 712926931 788276544 997398444 997996419 387741207 511220930 635182780 697442969 308192553 347057565 868262980 919209005 512971925 685475449 417048507 447161034 35455260 490575506 369807776 798351608 973745701 992539062 683215259 898797482 774694406 837131560 390776671 635596599 565855718 862059127 82908294 384623782 857656832 860959201 597134410 867259909 799662308 955242443 379433783 535194664 696997291 703943070 231679121 792736188 315798172 710729474 594540510 978595846 539341589 888124675 345219139 918137548 791890159 862185590 515453673 611172246 772127042 952971732 802768023 919175059 220533374 846512665 424667406 457451827 333160770 463132636 903560592 942875854 886807234 906325970 431406991 542541525 304048765 709571636 184814734 797250177 978909496 992952012 172975089 446502096 945437984 972224413 270775667 354574687 734627732 743478725 81437886 92814183 50042856 463317658 581902674 746158379 953943513 959539640 739298474 824252842 981587490 983620129 719700587 761804917 383893707 916678799 148456950 367573185 451978475 642437399 172467904 764358384 602108521 926049681 541129341 711191226 124926064 160330147 249662649 563851193 260798502 470771075 750493837 814344915 818912077 984753570 421569017 944163108 596759192 912079763 263646087 469262341 661497384 881513724 890273478 955070897 925926702 956520645 845899392 996743703 370861970 552464171 51976218 344611682 390297371 957404313 791271153 971735670 499080148 877886669 264029337 912786968 94300141 827851608 985479190 986959380 466389516 598980261 671422743 745400559 397782608 425208106 855084779 879352033 8319115 348326596 43746066 255099304 441768402 637311613 573357545 940037107 82619664 193920834 777870401 932512517 502855320 653866845 186190676 952242299 772432863 993526311 747714630 756850899 284251316 369700904 690538536 839623082 457308952 685282238 156751131 913424870 335703664 753386993 95857481 703848772 266492483 305200805 590444645 879219394 133599190 594106803 849197445 961577172 415729561 945487778 812225185 842010486 802772964 981287609 161162218 849569317 21473413 30301800 742573158 955125452 505039836 945657828 394143954 449566563 154623298 680915109 433481144 814060190 217838926 965436518 52957391 749050021 229897160 824214919 115631944 311578575 638342346 802592054 869835119 870911019 793289061 894553448 504671957 686052561 310188176 876150891 498067509 783167986 133851505 380856820 837951327 894242466 890556154 976646221 595828319 965576521 919235073 933064804 404981754 868377923 361185717 545381719 768319950 920401028 808703429 852572511 429221734 786793655 640696204 866557237 795068329 861635897 164429044 753344614 800255836 832312952 10259640 82137546 861568372 899406717 437621939 660955288 754052715 851040948 145502197 334780197 42907476 982494683 950404103 983934189 816320452 830774273 844856004 883165438 946346347 990117025 140704009 768102543 641379077 923669224 787220804 932650001 507571294 554824500 157784230 324543009 142824582 986090070 830194094 999047463 849154366 895182264 721468484 726226393 602731496 627545301 509630092 895930566 731329689 869719311 741076854 995956210 773012359 830663993 809256630 975943370 541994547 795624642 642751565 750199596 121928688 702356443 803237770 832122566 728209478 942645903 409003447 730606286 979790231 994378366 851145202 907179428 358621897 835429490 385706944 788153013 144040486 479380539 841898269 979592848 922433576 925542106 2580267 510065032 187831587 210962748 239050415 614401444 594978555 990938469 753574557 781344501 225438342 883815853 760248587 823746963 907652182 925151558 733198750 805636167 584796853 917481441 945834445 950602765 212509201 731978646 821780174 990644060 489987760 777418271 767608892 861430902 283500208 481666511 226399608 911622153 685834816 780319631 793944608 866920607 136075032 406843476 783811136 819253644 999003641 999330241 777888906 977799837 262473744 798755776 496763191 785374942 606288719 887857112 853054988 857138188 70209986 361312378 720443 943069063 61618116 858625311 456896893 719034802 13803579 737240876 215222955 460923870 258963722 768812667 156992491 617142229 163172017 387224638 153487031 938134790 52704811 245466621 722687906 976794119 580070013 846258328 448677019 673292498 904700373 910997201 21071167 989175404 454974474 693114068 94832674 529586677 905130094 970335784 806581707 940604189 175852270 585764263 335915176 549941579 826954226 940357582 644470551 951276814 853901638 949264805 129000252 711703145 567656100 831503709 326973811 401415158 302310156 587138694 27231881 795929676 274021245 756414743 85757120 655918566 776998910 860264873 944065343 986815262 168665766 531050637 587727845 833918468 100803121 332063122 163582710 191286587 618234405 632465362 970541934 981795562 823501944 994853662 109488530 310694202 439252639 659944832 757837222 793290350 556992947 883993909 487231722 776242231 504890076 879596085 219201828 406113595 68189942 242869178 39425983 305561135 272064087 511248420 908857667 916697690 94722206 157020986 565337591 595727336 252062205 700576385 435860322 818063308 168372861 411159611 228070568 826047815 513007372 843939623 203090965 400822209 677567028 999141039 644821422 929260205 114825706 360930783 415641226 855596623 388400251 544075707 515746320 673947331 162293309 434458242 583952237 663214576 531271106 706560518 458980302 522334422 43407328 825224227 388216907 399694721 660251673 996938137 514928638 828853495 220813011 947279165 700922297 716187658 736207000 904731477 708092073 846972181 85850315 879855707 352816089 420419257 207098377 893521196 569154038 695053279 34128533 35139752 914579760 936160570 950011948 957599699 388794745 987121634 658819042 796611840 11226515 91105001 15251859 578135605 392214421 648713083 111546648 481229256 323241628 725978931 13600511 932939622 615768749 816326846 762703205 793214504 691275579 797041804 436674457 938604709 332285018 468267797 752003656 867162199 117688739 647754228 452439351 908241301 504906753 743424868 667408325 967623611 89084275 687961308 42976546 155366191 733170135 854588209 312088597 320658730 29838858 381350169 210371083 619777559 741773446 988468238 907436531 962922296 498846170 604008440 426244967 483702355 510735636 715386685 331629836 362969144 871844021 994225104 492082291 627706826 529475227 751808526 18728033 161121151 914642412 972926483 518508479 656989456 68512192 708940340 198488048 744097246 427967568 952061728 811192761 930324387 716730886 895844852 937546399 953931822 158031063 328727917 434490289 685824885 993010576 999205707 234619275 937681962 782966050 973993596 675032514 712529570 18815422 863838508 982816683 992198951 457962816 934332095 807754840 882930312 543802942 824848025 802970285 920461993 751168164 883637571 663063240 841275898 894032757 942898242 866354859 960360835 138094633 235346709 967846633 977821356 743757544 845349884 270505711 830783727 410857198 976349255 992272489 993450088 982678220 990513002 880405497 951885073 142374736 454686626 822174250 989543930 462565965 817293756 67967648 489311711 958573320 974975699 43974091 718167175 193015330 517283903 822898665 884475168 407199242 868154692 827122075 989709985 159729902 830106416 657349074 677017721 90126601 386593693 954810074 991952529 698653392 917849243 569429181 985121705 38788203 784543428 137305354 796323836 363016422 918494443 885389562 895892066 839174923 965336391 152983706 419199787 445160866 565619333 358424156 523803633 94892376 923971548 820365300 983666419 563195882 766182812 452952939 502677252 110030162 627942773 101149727 255230194 661661644 721372878 100254149 181787725 256007186 919499608 819636729 938597196 845117377 919309201 560548373 689020757 686565331 925281438 901451335 915111162 48938557 859469503 772369778 817417087 982805740 986403375 7608711 56142480 915898506 928972149 366782931 615305667 794825644 851644847 319533369 483224279 810029698 952893107 587904329 719214681 736508564 920679776 17779089 568658230 57410760 229643342 513620537 994044438 281337791 848450513 27439693 827270819 203481660 813583577 970207136 984633748 226751116 393084229 71100678 747020983 149747952 985189843 415632449 539847645 284187526 327900840 945786930 988708703 857522515 910670016 835022040 905821471 821042321 956272888 713327323 931888064 168183 640622738 727945696 916851769 652181635 758860689 896548148 991426294 624021751 676422708 351800132 401898178 390125080 536206005 426855687 438612850 529120982 691302203 55436022 805486785 7297536 145782623 191459042 362271662 132854214 794841023 869005961 872344632 264310735 763602321 990206030 999702252 239522134 976457001 431978930 957745759 58974545 144423317 584658747 685466212 512193976 934959973 772902476 913415013 327145298 384525439 523899817 817903202 927038271 956973497 518462303 838899338 362534492 871797293 42059341 578127369 180748037 619422380 707636747 721288291 118994306 855038800 647917525 865435563 397376083 894033647 304380459 695166491 608954613 965842355 582654713 751878817 65291156 342497722 75299240 612734424 960568833 975178128 611632291 960285037 449975584 550757772 35677538 166983085 522353450 651278563 881226870 967667213 337781275 451837799 113322939 449416450 658762047 711278659 130606581 188073744 150885304 609432058 650040012 662578199 757133887 789875583 462406503 905471505 593238739 647488195 452015682 887673034 617782323 659995561 85573285 102497745 746518890 909858061 903413843 928265051 127845365 736858848 627377167 947078068 762798054 882193632 51215938 268208699 482425831 850336702 658428064 699003399 644408121 659165278 926632874 944527245 447366026 642664921 171615295 480553895 144206528 952908018 991750186 993328103 766287877 893959842 442813306 703925064 259077183 987672247 301176301 410665303 69948698 491301113 868685126 888957549 873657505 880781358 869624850 929897517 760472516 858555959 970615232 985297447 237904354 847527101 12314664 43594156 884468115 954557901 399661568 556577455 794995776 833383705 322853519 859237799 933049388 938258242 601958107 889615694 74872398 994903308 440454898 755665932 426552054 743476949 976619075 999762665 570506750 722835331 784933581 920939689 706060343 956526666 971981159 988297427 731773390 746645500 13062147 16452198 408662852 908426849 388600728 451172277 372726377 894127661 210026462 723825257 497908730 922472214 913532495 950691715 50091944 918786059 515478014 881491444 924473779 941306114 130738933 942797409 170946294 953698899 968540117 982780452 889535999 912124022 264544072 986527433 160604275 879197022 106455292 709078880 118458660 166634749 728926826 844101891 45798080 452450183 551677283 980062316 443281297 548776039 221421496 810491278 611522019 926905220 526382942 531213607 968920075 973284606 144200961 360306531 322168904 578465711 592409709 840759211 655281672 662810487 795776323 831137191 956416071 963360251 127594737 432598330 102146925 961296969 22270278 395868549 11574582 623124561 751376923 979575400 824242020 907556289 458205245 582894767 397037136 550848686 911138322 939591220 660171184 791296412 121043896 168957302 686912141 691312023 156999963 888478096 707417810 988675025 298537383 760009361 580083082 656587464 104481012 882636928 490277594 681651993 408546562 473959971 232505624 913594536 662425428 807425569 971204883 995312440 524197678 750987635 877732155 933367087 604052847 722712711 931015340 934388510 437237523 675874294 828019121 980462967 744079880 797747827 215535904 516158637 707825202 941622520 378685112 435251066 724629726 762776863 255551124 839994735 804116488 931772424 600668333 931680880 522463463 800924953 374242284 549921742 617900541 741407348 848112099 856113825 380999110 446920950 297556283 771906981 169084977 769171448 67788502 737203216 725837934 799489447 111220751 545555133 364173389 679897308 203108346 319330767 83074009 842635800 762476683 890228666 955133466 977747107 79733355 183190297 902252230 965972398 429065522 458057686 550881634 664700355 980949810 988420743 258743161 360761903 886681834 893488362 192382483 840950913 241397609 937966352 568000065 701764577 656598848 809710497 691085743 947373240 220296868 279781190 247777012 494875237 636671543 728409682 275906287 621953814 178993846 648356147 624564290 664936294 493512911 708216825 277740721 783482970 368464206 654139923 477692138 712265919 416763422 736193045 932731166 991519975 177692060 575415268 225082462 249623079 595574756 898624929 424456580 811946087 994706854 997331451 97999286 735169186 278185129 554791806 534124895 601581024 926474816 966331052 902742748 919333001 429758851 781299347 446603324 715185971 465534805 729439744 208145655 621145684 181106059 522170885 729091943 774226444 923331159 948708686 501744249 943881833 93562185 825355270 626381313 958480839 88073795 656847548 86118329 566610279 998890397 998938918 478616569 922459318 962184208 991244360 600278929 690458476 612774317 876885861 321930627 725485349 562192897 898502421 270902702 842140076 827077924 985678042 99248329 648790655 996511661 997748882 280802184 990675390 342723700 580544209 93382654 829277297 709256576 909062070 731514128 764849460 239412730 717985594 545801321 984982982 902131276 937867637 862425893 876258329 697047550 894228559 999933015 999974353 449056584 839597938 809865659 859144723 863359170 984808116 553665765 619125023 567650768 589021333 600555845 982982843 261772175 717848371 617605190 897800707 697214399 777301855 390060669 466257154 117149915 859293775 199307683 218341829 640836748 962994216 931358431 973770741 804470838 806888663 703449855 962823449 401296853 464869904 8506804 661992742 324864795 494945149 426838461 580776754 299118724 715812503 892980781 991190767 282435653 786521413 535527922 853989292 273460923 575968390 807377505 824168059 825288959 884224562 581290592 818543266 639847187 870569582 44796661 629719451 792271710 994653576 196968840 477290512 523916348 628221686 888503274 892973867 9711424 934876663 991246233 999918076 406392543 786390146 925241213 965313553 596320364 912666295 282224480 916804943 617449350 869571863 531994349 627007126 189828100 436322430 104007077 811684423 765159099 909661702 879602734 933937043 829208822 954973877 90361704 638472125 309840171 423145209 966412025 973398563 547283491 625004846 994011752 997405988 282310813 731456922 249417615 844588476 160763306 320844709 277813970 490518720 496948524 761321834 24208752 604912077 276992432 784007823 525076556 710143242 484825387 517712754 48328993 748956354 34482546 151373244 694248866 987108193 159847336 565593360 137862988 648777409 114267467 945749601 994246931 994606366 264158186 678929835 488926469 580584007 820077069 977411202 789181246 842502141 393157880 492802595 3257991 256470069 359750119 772012356 282031801 293112917 478151168 734403688 881444207 932832632 670897956 970699466 947767825 982371920 753959553 889112401 879806124 947224822 36605303 633352415 655623839 859853630 394064568 895384285 955812283 993337307 318747280 912483204 666714900 943580484 291331729 344555502 507347632 835583221 735000216 977898027 197579264 375358535 922027276 972485559 389305648 881277751 758859001 937846763 118218099 202325467 676624252 731073514 500094827 976938344 736374886 855765334 654991800 824468175 458533756 707036686 687881158 829528012 751724412 984333024 44264590 138183875 941884790 989793406 784932201 805363232 354964011 892422970 932995930 936285845 480503961 687784762 913288779 977793877 860570803 879601657 688201146 754226821 601742031 698885487 309965184 855374423 507661660 729260105 400805593 454208815 544455575 584392373 151124368 163168941 184898166 879743599 888541869 910291466 272477234 769072227 331312103 817463535 520570712 998155047 66855737 426777193 739884677 831356023 346747723 770660570 268141796 935695883 341323887 588611739 325976502 657087823 542038828 902330739 332620060 808385311 964723309 979434619 595951174 771665675 614365917 843829347 217684702 385504140 855633324 901342631 668461638 757024461 418867053 977452948 443986208 963945260 216337727 957558497 556713720 841279268 207275918 525509656 53924483 164225691 882113613 914934419 952567951 956343335 18963799 758181459 191667168 796061340 592691911 697848766 212842582 631190340 440358615 714587686 536536590 811682612 357066931 482785659 641553965 731913785 80106001 731711749 621022140 724194772 306951261 506626501 236139248 674154832 793034909 908436669 933886479 940953040 641308268 757823591 320582035 461948917 758648105 903962429 613969825 660031954 805671425 851851594 635537846 838511414 387424993 416444625 728796348 868420084 574229584 786332557 446492953 525471159 22322503 795787668 828308031 993963400 424272378 924211514 612296163 754681071 196764781 553961642 911246421 936026891 247908288 681378551 691528985 774832712 324284021 522108965 801628729 912161654 259770971 752028473 224222079 780729920 196285833 389341561 744226840 866494573 237361255 496072856 325212973 875525961 245114738 249966192 983979748 998556133 596918898 830771384 849557455 997774844 946217720 981190491 890769525 907777652 360643229 849102427 14304031 992689646 718044683 818516324 802466768 829518453 357917032 752725206 371530893 470616201 418458956 461239891 216596814 485686450 182030044 644543254 721117061 881341345 28618388 902953922 884663952 988110914 839704507 864848431 155515298 332812798 429204830 442209618 386095706 532913002 194644071 517486899 825504353 962204472 168595457 402784934 50611622 755596340 599209397 845525856 562957717 738027704 321418227 895956609 935415188 957540029 519913480 559257687 651498495 653071352 625094463 704193877 76609026 790107397 724079324 746413405 355102358 434278982 846669924 862343290 909730719 958948730 823145979 855526693 186772480 220073044 717122658 824926754 614199607 988000372 559076359 970136221 798679114 967159108 504636373 739169371 499044936 844340458 341570258 846655101 219264509 349910413 774883200 959101150 276668583 835346380 464960391 722026640 941325113 944758781 224964937 633671076 5753364 634353094 677711067 800924606 911352104 970877728 211322839 837032061 848486338 876715689 943573884 997861325 632727843 700378035 446948036 468133904 65264986 730260120 667529318 981002034 566213544 637750564 691890382 740993598 258422362 619340656 259896482 424657126 751627635 885599797 767005148 847040691 815780529 997874907 263279514 275228946 219597373 751861299 903925082 949578655 652593810 811383710 260725368 622573264 626086101 750491871 968765834 982058820 60132096 106358706 168431601 432285807 455278771 930241238 669079955 680657602 263625931 931408494 343181493 769584582 559157194 609388149 843996629 882998832 193942301 601842887 923711476 953147771 742465972 793293397 311958121 581219547 810174697 911803630 821447895 887760465 268709472 476691480 33328863 950210374 623884652 954224666 990827865 994763182 513449604 696313275 945314889 952978804 928411488 970432799 948708381 963005266 248348803 677810077 328962142 751816204 726165679 760157044 104640647 561713393 372292044 731979606 551043394 964488984 433854379 821529461 860968849 989413398 205429068 684360547 272189915 483161772 892019589 917331029 490736298 741026671 756822421 810044218 661264385 726310051 117661790 876872799 717734489 718288741 897943390 935915644 838659360 981937899 888639682 905203030 553020909 557081353 953299556 960908654 599751642 729659536 649175321 841910196 276196245 429182623 613573231 783767662 455532783 576684012 308698314 468344898 563773812 978614035 859874524 887686283 270151109 349756363 564794477 713284564 137638002 361831689 166467964 206968423 686792489 859327655 559278880 790516893 263401870 873206696 361993140 671017703 187009072 482113211 536917161 812345969 148284985 318259643 705810044 814545891 975719971 989449421 862304700 974714079 895595241 971118827 204290975 413805598 950173087 961167984 979029343 998260639 542913738 995790925 38945816 617913947 626571343 822000620 735763758 742843299 870659473 874417674 280453484 735523856 143515859 566080793 191119981 901041797 144764600 509903244 499342487 744225712 849765134 980818955 267921476 335606321 276168698 538594498 513667707 926849515 535727210 901283631 250064170 727267778 56553730 773380654 870225194 878385273 127690729 929617480 828540317 877544530 321001001 619775220 727715794 944221805 423713804 535342753 327849830 541302244 467124058 915072945 282329795 561520957 189764314 327325046 580014708 838626052 470953242 867506163 402230886 411209275 32726758 777222710 496660927 950888747 347437389 415176423 940267811 961258095 400806593 633157956 940943659 973702532 769727808 937563952 170324765 351914350 17430206 744545371 507929040 979454040 829393345 915806156 525714120 697094009 103557463 500432547 204168348 646157189 293985243 930528957 511864666 820416507 960311319 971328415 33003143 660339844 847687399 935346232 148035945 321730607 564930066 622998459 45151097 668321934 481275826 942024907 946232392 961066030 793245517 864208765 33693578 839381229 11853275 137921904 973796954 990876547 666016096 979625481 437325502 540731381 438479014 513242006 813850112 896859474 629425375 860946751 464985220 842044727 831125994 839026071 763137050 987703886 513746149 575188355 591863673 735361751 210423357 456230652 894446038 938128590 227666409 988351594 875585338 890870040 635622573 870684220 693336423 846333858 992463280 996731007 100124192 952643538 769084209 775976956 253855258 708162763 883132658 930573049 113948937 436993751 168289152 948057575 951325515 954893799 451343757 943961322 349131657 749389557 955938160 997589206 410810442 797316112 391815077 438119355 348382409 629905849 101478633 340854114 92712451 686160768 733873105 841845211 70036631 514182373 615724006 706292079 662549260 841443669 292611761 383980248 105573507 531756506 527936619 917278907 799571169 871962117 546441977 926646298 241283628 857129747 128306061 444513674 301609652 458961595 734341035 989194458 407589476 919585595 982458705 992988795 43027833 429795893 443266055 539313906 677202551 763483762 292812431 561624090 446698187 730870444 516945567 982264869 698310525 698543209 128296234 630877740 522357222 976893926 425865066 776515946 956021250 967045798 939856353 950454754 634505253 903745216 528239972 644837354 227056386 986182940 682383486 825119749 583272815 730037391 149998166 807894597 68154263 965891282 961755711 981211259 42956145 894423053 175672483 436433458 779317541 794445337 666705909 905055939 858926781 887163108 675143516 959986342 538497748 993780296 869308388 971928311 251810469 681004077 380385356 888870199 20403202 57505896 643532944 711014850 808134405 991149738 749243804 776766615 225796146 883021096 212073699 434883554 485624699 526045811 460479252 539590710 673141175 736782977 303808084 859931401 319421118 616785241 601748750 911227569 606531455 924344635 20613382 921106745 948634065 962494828 826669245 945322817 780719267 880814989 648378923 882300350 210880981 410589378 641727385 747422218 322610832 517312192 600119527 934278784 675352200 869901631 815425270 828143186 287317926 636331270 657022165 679432382 506293075 957858679 361318383 767767473 846992385 877442388 323652735 439024889 389759249 397057770 995160433 998234160 971432802 988528816 63581344 92823140 126120287 705984144 374405388 549942761 269711231 587250365 959444295 972178707 617135612 782797786 233205589 262264217 379851765 789603910 414099084 556041190 941942642 973706633 96716579 902909207 763896728 849760526 674055641 916581674 101383936 342243445 576270806 789825174 185700951 384316569 323303555 998834812 827964231 955436396 565833317 842346516 784404817 891327812 233510136 351528363 795876812 911940854 132434742 907327690 94173590 466514084 953249222 997384386 820010959 986489895 116881906 825103880 102232862 739550181 897044903 991150692 95348969 584337646 374891143 982072969 110462889 325752218 230363289 315300536 274015675 372569561 885490435 971952233 178116264 673338619 772817039 913784702 810464909 989784649 77890569 961894126 586879822 934885129 168060882 300436041 966389969 992629507 77080914 607438525 969439191 994943477 619074022 830478476 253841658 648311675 697635855 981077485 55730424 398991170 310625791 695049879 844407180 924240967 63646951 999959375 80949180 313867415 62067904 511038225 718530349 945791714 120247604 997136515 158312969 306709283 407610134 896173075 48648778 166234800 510966894 813128274 696442624 851909264 648296465 861628550 719628516 785850354 636538367 847880443 438495758 581040933 698153449 986131018 820713848 882054055 974199545 994851446 592191613 972773352 325190873 416225586 804168355 818225647 830657791 838061282 168545395 709688911 724945245 939201391 83779333 960322316 706874371 915067080 582659387 774537658 770918821 798491485 768728540 960136624 697340406 755986336 80904224 566629735 609771843 975864867 157932753 943836041 12208685 256353685 762326666 832990793 261441437 876020538 464182196 815511764 828385165 850443984 983222889 992434676 567041862 799613071 701247715 908646098 242458632 275233685 674037374 999392760 451829690 808277831 764884168 841395202 113806513 951311186 105650970 765145948 907245836 951993352 49057322 517231055 626660812 745932951 287013697 448343283 492314319 825171275 968081481 977542805 973206760 975572597 702656396 875925191 613932361 667023203 183710360 940161925 750525732 890218041 484118274 637123375 555571770 910219872 686667333 803367255 892835957 900688407 619474030 857289300 637760942 914763010 90082511 943247289 554762955 711557387 987609675 999962806 619933550 628545810 248829920 594351572 970384786 991794519 420661955 939293912 525970093 699995852 844572157 869821634 717065629 945026051 264407624 479895520 139381682 518553640 387935627 712722049 225472945 322845756 186554630 362821518 598354720 871700127 869799617 970392594 346924490 936227264 394395508 515208055 376052797 634001823 663772792 711367817 239937972 931254162 883701414 946494507 738113224 742678854 782550691 978281971 958461690 970343690 156113934 665225273 490759914 881917113 975521977 997830874 983604472 998165551 107239591 496658618 578914525 691673916 326987992 963007764 990833872 994684951 481358094 504383101 709266606 841062849 484305434 506054638 266729409 597531104 445078661 690100483 347243712 550502835 557305773 621233237 173984858 994881702 12642225 519047229 816019602 899455307 948280262 954165681 534762968 708521018 660951410 817014101 759746042 844507536 328427149 600213307 991976834 999716821 630696947 877720780 685621976 760775100 233417462 415633799 769467844 796020083 161061529 495737080 38811815 215341883 395649513 916049172 463989244 648679967 551892189 716537073 225775375 537693641 978949542 992679162 767431373 993076193 185815790 602862220 645126973 958698572 479483418 649953673 420656882 757140491 187704320 417572642 889681853 943606984 693478818 992347508 735975065 739668197 304836472 900756603 87373189 722135275 421360985 500544685 356896610 807905227 571971558 780333706 992565840 994624171 823655490 838855364 388354204 491980908 906679332 944214350 225782125 423469688 741818978 921216760 64793007 944964008 642011879 987351403 547708934 921641450 60099921 708130167 601753316 875405305 5064453 478439249 674946717 901985333 73542821 820530451 983113291 994671706 574738456 786577755 257463859 665617292 776944794 917455691 837162919 954303541 829967212 966473516 853903031 944291607 620629870 854893030 430261128 836934473 171683651 615399076 571546036 733685105 627474758 675216438 655837689 879673624 714936714 772781780 327875715 363498282 880455997 947695397 699637068 750161684 771131902 954234798 730765455 806856415 443428560 927246917 345369263 387941356 911924357 919373203 754163708 900979111 566943384 686839366 124624425 986001443 215079923 274756152 499190320 758191481 922121523 938193695 108328339 616310316 273051400 455932504 976142898 976753183 585726353 727699592 573025621 751236638 63209644 970991910 956594019 975199579 343216915 685060167 342960395 579432929 258931615 646219985 86957515 93078509 861422051 959021153 472951667 852467763 906882656 996545821 665109863 770923259 147341233 321180634 605096618 679020819 327545145 506073661 745164656 870338831 280889845 832709867 604851888 943089327 34036618 931328166 298131945 651538722 970806018 975985468 158226785 263419499 564868747 888976775 180340377 548168718 745921735 913453168 126636645 169719684 436522093 858603019 223273765 789345374 815301985 853087588 374127169 518317066 683352302 719411104 849113303 976636168 335024302 841390168 993307882 998292640 451813271 731389814 93143633 425355231 936188503 960889046 467926577 497098480 88972748 522158169 888844848 947011970 659618708 834627221 262680439 433430093 663656462 726379436 578729674 929834246 726977876 931629440 379319054 986266549 120126790 528988879 797668142 831224355 311234735 705277835 750011851 875939630 475273048 761856371 701812417 725110537 327215444 879648583 337602822 678421889 316198684 363658857 394435963 596198240 411941433 766308239 337354059 531860889 457296779 948371900 61980037 297109771 658333746 884449872 703878810 822348803 509404662 922177319 137414748 722421615 605641774 802669333 732351647 738052921 341271381 581484839 993540802 995663776 673022235 982045337 666011735 853391328 608539086 736737282 609460273 793431766 322634403 962456652 673602547 918510061 300293878 845244428 873194829 917479404 436747271 524409564 907459 839974510 564065466 959729999 104042897 902142600 953698405 958657300 283362482 746263372 458714572 629586866 287006949 588807166 26785161 541118391 31750458 951528277 688109101 847338198 956712063 977048160 451354497 976776879 817008441 947448019 279392413 466504614 946795057 948455842 944915081 977286918 558598081 564450671 175997229 729840609 59904257 75068739 840340819 858205687 581406622 815120550 915328670 964818200 99738369 109990426 572749741 837396527 971223731 994432149 286619394 297319476 739947871 934010794 439442464 574799067 336874147 371838585 973587355 994941036 782271228 853643604 284013087 615867753 76848067 783365393 481667997 709993989 461993446 531118014 984110778 985446886 32947922 884894450 587582577 786971800 384205883 621746673 774090332 804772144 580831205 769494434 626088086 975720687 769557625 903063705 151587423 214097695 114110910 493327621 82804277 804700872 663045307 799880551 302179351 486648686 605134140 653046276 653180198 683772909 856921481 915262099 894560362 941220469 650234243 765333862 312786635 419578124 962821817 991754910 125514100 280051964 433625185 470121589 224112011 892491776 569283510 779817495 648026600 710074866 97566125 596357297 665364115 696912096 969825871 970380831 341962428 445317507 477931147 696518091 928728725 994516114 411618936 469950974 169222915 802837316 191873900 658273929 410289259 466650800 345700697 631807702 461584092 940591080 968467322 997528288 385256057 801154427 907918216 924031072 515139933 835475005 642809085 868826154 401947194 622375645 197834753 929914150 856004208 948940334 389481828 447052146 849271313 953698741 378890734 920196305 479589714 957251072 344293335 941028479 622926570 808880971 883745287 977807087 9014480 556445846 191854079 739231808 306734945 536357976 978393196 991301093 939421569 961447833 700892278 762067360 343845889 960075308 430502925 741289521 139152247 942499625 466266198 562659461 591656545 860679962 897219562 968754822 78412111 826978768 285599434 760607918 867187710 889493408 145700888 998966351 829833699 962241689 53948724 765107895 282083983 611883444 59329503 416933443 952770203 989256789 974668503 988640724 265718886 669735144 123209531 149232164 780507101 838334406 855513472 863307327 146890186 821283432 940180408 974212086 711812001 997421138 629859072 769237508 49848121 694602761 856835465 972644695 488784098 746639220 84357605 855475489 872034621 882580757 524152144 721029170 382329094 930734281 411864561 498036318 506381732 764561635 705878181 860635197 716641874 864513162 928570929 997265671 993935956 995436211 491755635 673898941 304361924 834074848 688074447 741994714 198734217 780017937 818983904 939850945 335169536 845799794 860164386 970254379 623236592 629604732 446665890 449782862 150956826 608986534 921702419 996715385 57894051 75957485 301483140 825783857 544313736 723665747 33219494 217837725 493223242 574989720 138425324 379030158 102131318 771590479 960778444 975851129 292705900 323618001 447550284 527466202 592336215 926937433 237518513 987465262 330909620 965208157 89050129 612667687 276566056 889922178 258860714 935218379 705093703 899377960 203859417 535272421 294816455 837919350 20912752 252432900 123127050 396675512 223837369 273052558 817063678 851665745 123615600 238218064 719394976 870418640 977286219 992638294 573710496 726416267 940080170 956666323 308616288 499798077 777301156 999886328 204139992 823822248 120742336 934098152 134388822 909766539 807152965 968078039 107242356 671560658 914650426 933687144 441175264 758873500 30414907 729204189 588052875 661518678 175970165 797128012 517608182 858346032 141089841 755197630 126912480 648914494 608772675 761731913 60761828 82625959 415700834 979104724 361227773 464715290 591606531 947339302 832625643 974875147 707685411 803503872 126498112 340791254 979638649 994976838 103932313 799507550 74599743 876101472 306253315 594321114 866215166 997187848 663632746 866711303 290378946 792002401 779366990 834599487 861529566 872646911 6869359 495917738 908774610 980922605 533383929 537348877 9312054 974956314 849872140 887343302 73872516 946802495 882929148 934807120 266261235 667644699 255948374 268443942 684165412 746679924 988827536 990835079 603341399 648834654 673502661 860370444 419847770 674354624 622599982 874252760 163078397 532507115 806357482 807934536 741127460 957066724 343835802 833218463 896855308 918432129 219777287 571807215 65403644 74181374 346786128 400064986 584941914 621857110 104810483 496397529 747513792 835193074 681484651 794973623 299763672 534317966 446019343 823930543 60070742 604055651 895238752 933351112 787533254 788488392 67039312 310398607 279601584 576940426 667895917 949781571 766628764 919843134 30375227 983281207 320622620 354120463 642803695 954403973 891305715 980161007 54038519 276752966 631001304 784017066 990859189 994142273 304101253 366010727 885202570 894847531 904034316 907496565 549247012 911216347 664081627 889431860 225481269 830315025 613770527 861144156 878014263 960034323 971367660 974205772 498263552 746830711 848622678 950001989 927366422 958411508 330966169 928894854 772043515 944388085 68436716 644322372 373123836 584781711 862232658 943992938 562847412 740435034 759376832 987021147 849290275 904959518 846299314 865691801 690156228 866508285 150061840 763819809 86466030 93506088 578684314 705587537 491937662 835396142 391645393 712833429 182219136 796018487 315202869 539331722 114351535 459950625 614020950 795007271 683862523 938970445 393531896 402485674 899111919 905957015 465827553 469248327 930003142 971803194 968653200 992625585 319925195 895053499 315468542 593099046 146168652 379508897 406231573 578170689 223083312 303929197 683318914 776574776 873542877 956554500 715758823 968828563 215221168 291140995 794324466 814624495 983344892 996561304 223791966 584566333 83209669 805187312 559706425 615121491 805757689 998064058 548573841 782564341 764524652 821593858 223260971 535454679 825671290 830323880 791392606 947861619 421554018 509105710 806317844 914515812 116992810 696489239 335185735 408896566 608421698 614920486 827523874 980380731 950972940 964898595 12005649 340275292 276127450 981328349 897540928 934200282 364573431 518914016 599755763 639360502 873203441 992022081 498275725 909946613 722682578 864664441 697242404 783747589 116241636 326460422 420630787 822288595 910650114 996986540 898022099 936064813 173953825 510829832 48780603 470389942 972694304 988848982 853677826 918236590 275988570 295420493 632262325 676413321 441907136 948663302 233744955 567225124 674123298 922951899 669741009 999145601 308128934 351838322 413429853 830164890 225684791 857492331 541987114 621788851 483287906 783925427 376969327 485584963 305521146 329553764 938583935 955269233 796478361 886178586 561077989 587531682 646385121 692233114 354661308 959528791 565335356 744252681 659369635 937102084 621627863 879854968 916099029 939025091 509944061 832617615 789160732 915194656 820843417 860032026 578675256 697141396 370316034 526224259 697880590 712425500 92838468 191925512 831647086 971203681 288895952 525640026 504379384 949055094 173425243 724553242 403588447 621468296 405160619 681149319 969005378 985311379 877162632 944822423 456683743 623102848 279525999 881482224 220764444 489861963 823999628 995068211 745704876 827921328 112093553 370701191 674480507 876194251 183986838 549503157 384495399 532213204 794575231 891435039 903896613 959781083 42522210 532939685 106360121 809709350 205180488 368663313 597158863 963930407 975891789 995375278 496004875 795589402 579138102 608710195 721396975 793797082 438179667 533683231 144064690 841138148 413886456 849131179 76992690 252473643 689629468 723523052 255092406 580697545 476854820 619175767 991892878 998362849 666724872 711453396 331130248 331495025 807575039 916500787 100233696 722269128 568163642 603412677 152413910 316298737 869403869 921914064 236034960 825958365 711709181 815722032 328043591 433355334 779644437 870237877 253226043 785418912 867239769 914649824 331528895 647074390 214371936 700277399 984189293 992494418 218900432 559055123 166259893 605432748 461786999 592577465 100417015 725162787 877934603 931107694 824686935 849696888 567180236 684855768 398222581 457203604 793446786 933595728 393939295 902654440 920777179 998940596 480678961 700955377 822845420 843387274 536638364 918886831 227058232 584382711 636716812 727092558 639018519 844921596 587538671 898823031 845950081 928662413 914213138 938197044 522878699 979017296 814952358 837719750 714807024 731608908 9272256 227691846 823627326 867742143 36043903 668577931 988950761 993567703 823540593 882836034 412970586 677279887 942578555 987363180 561239895 766005033 263782693 831560090 251139563 363217900 132504459 916402094 864821533 939803282 382931076 440838080 918848806 999223464 333794054 600907153 267322777 442742858 903975419 958380629 92044017 336673594 205122278 811462791 9866020 900668267 111137922 503580888 138217839 856099501 567792202 960633895 541357092 556966134 47944783 508892088 171007345 699125958 231934831 802441091 999638345 999989026 551225995 750856303 531739382 821639336 358376264 920158808 457824107 873173107 800850178 921604172 256505064 733992563 421475608 641222477 45302493 329887141 30091469 402583620 574051410 590589273 525073354 820294174 684742262 884659725 774580792 887727307 724562386 857293784 496416807 840861677 42385094 633180620 244893755 854384514 505060873 987579001 550663617 969354429 168710746 937504485 208495449 754156819 738280985 926766608 122562012 148432645 474180074 580685783 748379252 862723574 448349689 932651447 484203250 717353601 705601646 779383052 974568769 997623816 532470197 811632936 151097940 208658313 251025135 343611558 871962027 873374421 311263652 778601222 955300413 965006676 35010178 868881784 210769032 538737654 333807260 821501890 924559781 939930956 808338190 992175660 42519281 46057717 738118829 919405908 749768981 821857066 595404039 674545355 246293904 925918792 597328160 950771531 152576061 322774523 382443134 543968456 913291491 992668124 194649089 718950750 223749338 564902807 827398467 895326500 827969820 933928237 492640577 806591261 996552143 998965157 750321139 808224545 830751555 951934088 691053511 903762677 512487989 597951071 70812657 100914700 444678058 679724863 768295412 871914600 476406782 778143365 896390151 915871010 937716082 949396861 437828992 486580756 377776689 413576718 240140364 597677427 730283831 865625338 286862168 893864343 664378484 819470517 635564414 728782172 874269026 922162231 162139988 322489054 751874789 794207022 19900643 636494644 876829707 957390107 631530700 846568723 210676295 325657373 527277778 735538943 782200293 983873745 114656324 353373870 742650482 912817535 205869906 882568031 121516218 654758634 657567277 998623751 712432150 989667495 562224014 704092739 895264780 917451602 738227177 934903094 997760355 999646407 488117472 573769327 637190237 665385737 863281933 888233199 672524933 820674761 468667628 470683036 881948053 941606169 64719084 921307384 922732665 940217976 239005176 809862991 80378530 188059634 312769768 508644729 983268252 997656275 730926860 895419133 839687541 923084957 687144903 970828630 512923804 890515537 814560309 817703765 93400068 189579263 947850932 980108897 708181521 928529357 899566213 902004001 509197859 528835364 884029608 995786422 20058749 69593838 233818758 744277271 67437296 282100602 921228725 987762907 99112627 144827161 438440706 713419397 862983711 932683326 186928110 189615565 137485558 493864780 680291173 736856935 107591433 254437138 136278179 378329218 247201527 384865290 31996073 899468354 827473048 941058581 843005550 861563897 350363082 772657910 498889786 500021168 676821155 797826804 232824125 481182101 128174690 219855587 549562384 862605613 390078830 932051477 158382786 919041485 244096765 256882007 81376273 284271534 939747643 953686507 177389273 437421218 392077490 730943819 580182253 595225487 48864434 818554720 939269735 948702876 359016166 722737600 624896867 893587471 147291798 291245041 989717346 992845328 521789644 920211808 377041428 551636964 432118793 627660844 773406029 977251641 322817383 659437407 450772836 470845190 576253783 705150341 805746896 825115459 327112751 599338329 330222930 897073429 28650166 738668230 721960743 993113133 607842079 772028370 574386613 617649590 667699735 987068805 937611235 972194128 994742228 994971704 966762159 967335365 789560485 906623953 420509943 565588929 614528075 697962528 306155590 360775052 585616788 612261673 874939 368241420 774503888 953705060 673215985 702461635 224062787 948671120 53837760 748484549 130371778 775389623 74396718 955134601 857860556 964402526 488667441 683702980 478502527 721101720 711862190 819448822 84925352 244094451 213311002 984225049 766177925 832009772 764487817 797430992 497720296 592812814 461808772 559011949 312230089 499555165 716509486 953765805 637665041 891220299 481590354 580907902 365261525 900821735 634271700 826351386 172655037 561850651 256568387 879185303 788120796 830176523 449676005 467559131 728942206 835182654 153770091 972384450 683590273 871854150 682770691 924529524 322934325 690633597 529092292 868557640 704346550 823452515 912966675 914267273 654565616 803313796 461081633 802784442 301178607 615345489 295715407 589022745 959642182 992099131 868575461 992144513 659649786 827370252 222088473 940350159 590060719 590817334 374807961 454724171 726262548 812637027 748123157 916578633 882541037 894128495 272510651 606329278 791123954 984241870 145150645 226374921 887783828 933671224 704891055 963559105 826264549 826974971 181003947 829095361 517670101 765709690 619358198 994777711 921603325 931673619 111118428 205904042 537695347 986476177 894112415 991215278 276248299 866343233 684961111 729068035 549093446 652559234 489557877 614119034 37447401 935477118 914656524 971454488 118776256 604145580 694801407 984027240 9804185 51088871 889578139 944809725 599223401 974551370 450155906 700492869 346183011 541514649 661419230 781121684 665912562 972983070 601047009 992903323 340000785 956379757 924604595 940697854 765207224 964299572 524783485 551022163 885264760 980139011 461401763 553256857 62219087 222455339 656395136 987217267 383141257 947972021 504372560 522026669 720448529 782890594 809582869 951602153 258689507 610574297 34496081 839244234 59781243 398996779 582244724 948308470 888010859 921355149 282371992 980703584 858829863 970551174 739318360 909755282 103537798 813173940 863965426 870088243 679244452 691272504 617641443 957924227 592732983 931312551 43230712 142649771 69305575 885632961 587850595 787202508 571250251 911538018 869848749 893750435 38643958 294771718 50805744 773493412 538883965 565762993 521883452 895123397 261878330 900609439 661373302 956234141 676350191 849943117 672478205 891371037 794336945 994586789 947933412 990122759 184951469 596430213 323211491 675686759 512069386 681557644 897052640 953191983 800487479 876869264 5264131 429062006 317946841 952642268 912720281 929475213 770460742 810721641 759742486 999537573 163041438 520119057 120325704 182743894 597728493 768586211 368258818 780238855 143655795 372435071 96325644 320029550 754946994 902426904 41138468 126970522 324329947 518231039 208025266 450929296 618824035 725145780 103511464 238800357 857939326 882990996 669484901 872305280 383675878 938725358 571840234 614395317 646237394 709714050 305922641 401866440 612699530 909233797 132405256 945551438 871796816 943539937 752256475 846188584 993356859 995859690 918311599 994002735 777414048 954160299 701543987 857095622 757691567 826055442 860071870 913879137 530060794 786803224 689799317 743154875 254076486 469679943 153200540 583176848 398571069 670692999 421925465 879922039 24940539 154695600 653567492 785986408 822297556 921204922 362289908 398804360 979730022 983176127 513128559 528093190 155654644 476149816 366155717 923050006 554000420 950888015 10592991 490274901 400149043 525634210 733207789 807012956 836218606 955563432 866615927 991901684 893090423 987179942 800592485 868572181 995368988 997293966 418624009 629009472 871864986 890480869 868959935 975718576 970199695 987668567 652750427 732631634 999947842 999958716 946184589 974674966 446200647 942685017 133482032 438091694 804449320 808427610 356990071 451485158 435527403 483183900 274813897 763045295 528328927 753410503 497009098 752003464 212238153 651981602 45051069 641291499 990726360 993324168 370456092 400467674 851500201 876387832 824593429 897992922 674826204 972755336 993730156 999356673 979545273 990865975 232945059 887178495 948888401 979619627 192064981 828847612 945163584 976419806 328837232 921217351 235242819 495563421 705353213 816571009 385878286 913681624 1753341 110533258 742300474 943073333 832071882 856079895 604253668 671228170 807456432 957717503 737944786 877507599 985599599 992986226 484699137 959846522 696179250 812060259 260762769 739437259 92324987 284216712 866039123 929681652 918180543 939338346 446809521 591676035 771084261 877500424 965550186 967708539 801033631 947836064 418157252 921989632 361226977 697946486 600177131 628295057 929983424 989859180 2859540 484958797 2548349 425415444 240254235 474336029 145942791 396995572 790312562 871276457 895287762 984900053 59441847 581125478 122070687 630850005 376993537 380054528 309302031 953994193 18368487 293669114 857242202 942621326 850420593 964155705 338300038 610966277 362974867 957570321 459197918 839502496 759783212 831109952 903570496 975030496 459701056 834062905 881086631 947781413 887922212 898332079 978119920 998958789 995621031 996399253 361669384 674303597 151696474 761359704 185945275 884810818 71539131 754937458 951330138 975465683 197379631 289958078 7037823 568968642 274513018 654090879 987048764 994041877 70286034 132510080 833825035 837870604 436080692 740010817 806901683 889600170 179596653 870356701 686451924 938378560 855591772 955021613 575535776 793883343 106954699 761510789 125673603 327524072 19773031 689741480 453124610 990717433 163478504 797672956 8289930 245946557 75051049 391656387 588354739 886856248 171185786 943577007 958830689 973625099 73428296 293321282 923048341 969347446 915419976 969361019 941350695 985039030 689235983 993501752 630610787 971954678 704609255 950750261 403652099 977429484 936351870 965662830 64496036 132680924 241981694 830308762 837270619 972547820 40561971 172752025 504353847 528422340 437500097 536894860 32581104 104813578 41055432 955458625 26698577 132659535 633566007 821436133 187565384 727635661 738883788 912922579 494519333 503897168 789823471 970142094 17464439 973074047 154967276 179982050 644692252 740002084 280552774 898764506 515967980 712133312 868079225 920500467 458656463 885492774 727127038 963573783 167866303 188743907 931607893 974985571 23629156 390013327 404901718 959213428 905047390 953916668 990774022 999141747 860452068 962618315 102523843 807715185 857854470 887923969 828167107 869223769 144997881 234077596 971045229 995540157 324840319 637793285 173474240 394457028 766664168 901547983 139154825 720240363 40764130 984464744 194311062 949250466 52503538 595165873 643311608 789018561 552157462 911272849 434189074 721349603 499747188 673757912 1467122 586817579 973920555 985150496 980671884 983011876 875366678 952071604 471888774 999445920 221930512 390580418 94879270 461510561 203476 545657214 822783335 871781646 769771612 942667199 347171246 394465444 48317826 336532992 919323065 962526191 128811065 510526995 517019097 553894385 419420597 671254530 609186937 886763933 877163379 901628067 949430205 973121873 858460745 859042480 610618371 628260761 328193858 471932314 53912301 224116891 776776760 903036761 972753287 976015472 798984980 886403613 562225142 709111726 319666463 981280696 908880075 984446124 397127498 604776674 257926776 644055477 640160279 977780174 198121561 651563121 601565392 734071964 939870231 971845610 477416490 783138665 983582356 986386885 967696493 979740138 924162303 985920171 224485582 243416412 122890037 162242238 194053612 600799793 789118619 984587832 900618012 992600733 539491415 759616898 241346036 737354284 173706443 236896176 88535306 167522098 124848701 769486997 899634473 924186461 380773753 670109936 591927136 902588888 765096717 905213896 119653720 261899932 403163951 744834471 706446111 770944715 954080072 990794458 513593802 768998581 178408118 403579491 111926031 923316522 198389972 376440705 115505704 629830796 732292990 961170045 107697547 583804972 927310588 995493313 805426067 953823004 690706998 938209875 772669021 876657277 39211402 872617707 66009906 238675343 394325988 406422323 502859286 689657365 339073654 736523002 318777523 842900062 447312543 765230065 555347237 882656072 672420133 782476138 604207458 714256816 386134640 711637278 229998681 704746176 367065822 800062410 229314470 916670612 563325149 974237816 678736992 755766123 849948967 860058986 414197067 491012144 137352327 795346089 360413868 808349934 205595456 849474487 384336151 621359041 672229157 917897152 844845718 953756910 88400195 415437344 491507112 577499177 852149162 969906598 494013391 668447516 895705415 927612827 561427732 604959939 255086299 847388934 442197621 449384515 64553876 334722051 528941881 624401885 889412280 889976615 988601739 994976716 324447773 641171798 897240001 983103180 95977758 832199185 495607821 758359029 128887141 550413361 443457058 667703479 401213347 555328226 902438452 942700177 67635962 666422645 330515965 882553643 915518201 965030634 354279221 478478148 568916650 867879514 392608690 576930381 937892043 946168155 374125110 554777681 744096401 922440029 960674680 965023663 106211825 210601452 750366383 842727163 892741721 897935639 726149006 937667907 989234221 995464194 749509366 843253398 633401728 644233885 801021372 968606989 977768441 978660832 603653029 875479115 366739101 937148769 897318611 986781585 353071879 626984854 624744273 689658547 401511427 966274068 461287618 871202608 656133334 911235045 861924567 877549125 641615888 979466738 31285477 884947386 819209449 878384428 851622300 941561459 114379963 878217553 920707604 922418697 401936558 463884057 824117254 983412134 586456478 785857856 584036030 846691101 19196235 920775563 117372236 778458669 701725818 902999850 497628348 989923284 799825516 828727994 345893468 683531797 826837089 941955040 720155555 819486164 800656378 803039350 208969138 271357156 848025987 982755977 84520539 263565200 564985680 814048046 612697940 788628686 67352576 413661457 81824868 716518122 67198675 823994406 402569218 508480135 345038978 698732707 285595259 999820989 51816889 470057300 236114517 735063209 259374624 596282632 876091109 886140632 216142696 772961832 916113834 916672950 80835904 446527800 437572578 880587354 392466038 898215368 644967163 743155000 762929631 865804511 866323800 886113892 453054962 580450225 313372538 942106493 143995916 758734137 654427083 864008599 565461593 955169470 971976156 972544863 35868188 916967373 788730628 934943973 272460156 733771078 452746044 933116139 901141609 970308552 378023755 483095975 596570075 857991925 21020509 574136695 359403462 968489877 326472400 393071426 51441752 478056932 292659324 701755037 462948376 518645116 874717667 885443698 226955198 268012475 453349501 964632175 324204974 450811787 298571819 581125691 911326170 991399412 989298249 998730583 423450806 560561070 631851806 642756754 437291330 758101848 520853898 772320437 786042732 910314609 579991646 808810774 867438408 902702853 954209088 975543876 605296391 713046119 317474433 588715479 338377172 915444837 593561131 935031187 16786688 214418062 940425840 955256329 851558366 902190980 430861149 474824314 834258710 964648057 959495300 976951435 29920333 244535292 946904953 959075109 368367948 546393636 19296505 900434809 626090552 773851172 17487413 901914392 91114502 923719911 942836468 964902917 932357713 974941706 640651759 689508985 778678184 878741387 666012569 944341576 387529503 614195590 122904482 389337080 294255956 895889480 59825909 293966492 84691305 814320271 593334056 908351587 304576469 786997015 827740692 876385172 343363289 533727687 233609559 934438658 616897077 891937696 965523286 988606260 319106147 469136150 326827863 841673016 581560123 733425131 639288071 897020357 472773577 853279311 309856874 937800003 120809761 873854853 131781830 514022674 138237635 246668553 641069692 895259482 960656576 986498289 153720144 622344224 747871764 848051393 697321708 705991578 308918619 941183800 587611959 794561557 588652224 652234354 919670734 994306839 582543175 932333881 845816777 863254873 367911038 700736227 424609754 933469576 591276258 953098646 398104375 518064565 80162769 745591513 114016711 795327946 695719173 733055236 663294019 679553186 838032089 998479922 962957821 979375123 605352113 702033726 246983508 310973301 482272634 638670960 98194769 899504786 37958304 979281097 462380634 495547688 8775898 821396774 674746829 935155208 540868774 926464679 318554824 367957250 675384538 770478571 753585518 943635501 280464969 673116560 290792168 973646878 847427759 927235814 905620749 994386906 406926177 926659600 526000363 650550440 455627043 563484626 58562945 832163898 373478329 633063963 314999525 780545765 625411768 810936223 874355226 920079421 945427949 955318585 509254770 857078204 161596434 480210227 837321716 985204624 395323298 759226607 977771207 981097038 85578397 151985181 24408520 829510565 830054250 935550880 915927459 918726559 59916968 240514830 286163452 353040322 290616777 832189150 204375952 398726833 320548799 578170893 206177758 522267068 29865297 136291307 375504404 487286540 268419874 858274282 848226029 988302986 75473890 883517026 137727587 365249354 887987610 979159069 194715112 997295356 920796474 922141411 630922805 739671520 423058647 463984713 40348690 930711266 787155332 831423614 835393594 901518537 430125160 445457199 79745494 131883103 345080733 571251439 5637930 690676683 55403125 620878826 316614415 328232980 911448413 929057889 148945816 379723125 592211876 827491053 351854854 377668279 989252899 997144765 738115642 810422497 847229741 858169213 135809249 542196668 221192515 472676329 244453259 984956235 616191691 692381929 850835777 972063893 587032302 807394636 610709211 743764047 494271597 667158167 854452792 991510791 441554393 625380975 371654894 714192984 991577716 999605321 830029265 908161896 644652682 878685503 587822247 710867054 54661877 534947417 284819075 769837586 589321783 597471798 797025352 948235083 223469981 586907712 462412651 840921886 773912632 981140639 148577371 511918516 818460835 918169636 396456888 517406005 158367185 180810121 69754600 987981663 957446521 984162865 771404852 772278964 874943831 877491598 547167155 599154157 302885828 507067703 370464850 610073873 721916402 823390617 448954258 540519024 864447046 922495997 24439496 297048863 298345964 311628716 538335165 954565183 117235723 316996832 963342078 966742341 523665521 613072434 348000049 867064191 502128749 899551729 164788236 773927816 814790040 958711032 189451481 920968523 267293312 942272462 822913774 971641676 271681597 444277527 387993862 839177392 580272442 990609906 4421174 639596884 95734905 741453668 790776217 883733948 93309968 785900710 447055926 460896344 458808791 985547159 15206842 441260774 731589138 746371624 833537162 973350418 693095471 788372509 775355092 866086283 746775495 800816529 787760588 985490419 977230243 990196577 301720867 519989750 524919642 732519560 67393323 890997947 535189391 915155147 336186088 423770126 147631406 990254530 996026087 998516585 436904866 527952715 903508573 966955223 430013213 440899813 49984249 696589271 629544274 853612692 196758698 825749397 911791690 969032049 378564825 706990213 21620840 917169606 670138012 942169033 857896448 940875032 998368415 999173750 548373938 933545604 862511153 930964609 592864120 911831086 817828286 924088809 553581062 776132449 170550131 739466998 406715397 630182271 209206355 312972371 376532303 819920967 539404132 939128591 328751388 653961371 360810202 479366931 949624111 969947047 911240542 970269419 43247372 457209403 68661417 848781578 21669447 782193629 435804702 768092960 699833737 700971962 57824016 654360090 293773638 596818987 972741094 991105884 154442508 879540508 996048026 997572732 405575998 719528232 562530547 572340304 303779777 636775782 863150848 928816521 829240497 866225293 694818082 809662006 558004833 778222179 830769189 866325519 864614476 936739152 812712308 858645006 282379513 432299882 234343279 261691552 802695649 966751674 97211530 526869853 995354016 997220910 662272319 856254533 320691989 347356783 881626834 928421199 896664311 967865413 956885076 993061396 363045912 416373552 241153791 561440939 147662159 698894589 736234434 737443807 242384044 989134447 861173158 926525786 34424198 352149472 983193262 995132176 751400116 770068216 141150127 679390749 629367784 792541509 554875049 824127075 633301113 717232391 561073253 656640187 521452863 993031745 842703385 877624080 630644968 906606715 730910219 737160075 712889401 766215951 707956556 711695494 46258085 494343998 806440973 964749786 702314998 778201143 729769396 846567363 526092382 780511243 391139997 486917011 872819641 984575101 991551045 994788623 739126320 882007197 993664492 998996131 243247117 625444474 623364574 804194954 289347779 987292052 951788141 997211389 300627067 686637554 908759870 940993902 183818601 908897493 977321555 984323192 715488980 808698500 902628102 927727711 116096792 608501615 514088475 791302678 523250064 982296919 873792795 968020747 484299770 732555841 93104011 659981206 498474789 732421699 46465389 895748078 231554352 797621121 685819738 710026876 809498059 949136427 674004243 715875798 256508260 875029376 286832962 604745336 280370909 477459780 473627394 686671678 465143069 735777795 798609110 920674857 312305577 381243146 218642167 984980439 637763124 816291415 897734463 979626401 876162971 881705016 724884136 983303846 498138645 935469120 390016552 871474210 190815773 486164629 249808473 297590153 366563943 665112292 75202596 942217244 398919909 624126659 109597023 398345628 86075338 267735650 557229246 954520422 115083934 290368565 202580795 960059152 876671103 909504801 614632924 892449412 622580193 656201393 14521419 219477721 658706007 714069370 363864914 947586218 175777815 964017641 637204754 883066543 397105690 511640877 793795790 998704876 244220734 906039154 543546557 675493698 702409334 842583599 697195254 765823279 303057047 989308918 238474891 667492879 16413741 825346915 709258706 888679724 991881130 999836898 170154137 941258676 344936601 348404649 946447573 996944883 541201016 678240982 712145115 872455842 249717926 526970929 161177540 962923384 471572628 936325197 777663318 777888406 555114238 987213907 91199097 538712948 713447218 892819682 30603514 547601608 717280420 784418413 781698536 904225118 871192262 983976158 26345131 173428062 986236423 990342329 931846313 936104212 314500642 489959630 608100358 895001936 204537302 692859013 299483220 645766557 775305158 814923065 53447896 919711086 789486269 965847436 151970902 763613984 684447082 866589660 683062597 758004788 80789722 591475315 908481672 922954001 194683600 462129069 956869240 987889722 453446060 809902377 828209370 987349768 151103004 829771598 500859143 961123458 555031667 852027807 831498271 987646353 258133512 522773454 685392043 934771702 166755789 957549177 711482670 825026782 183664610 379402533 930863103 959428568 883525949 930238674 919583138 922293127 821111217 934944308 143603504 982571270 25355980 472394409 226685322 488154587 593137754 868408078 553200966 966276043 929517342 958670734 743876669 754271152 933140710 940333524 801109403 961093370 685227594 720074069 263812031 404718858 190308719 680011501 730521149 867064526 188552675 731513190 814783172 924898404 58974715 84287064 343137964 943162291 599591125 629217692 39109591 434439306 538874435 977207434 580519243 836852007 513527638 930991756 678386543 757250221 367671052 529118946 511053915 818098808 665127324 678582081 725411348 875314920 585020671 674957165 784769981 981340869 886268977 893810413 835678142 877910421 266859725 821206865 986878992 990559073 852014910 871818377 308224392 422533404 81883291 645558952 390001937 870598656 962744557 987101949 577896119 733760021 85710132 166890588 337486332 883802959 962545849 996516332 143923172 778595422 523980263 663209246 633439322 972579114 351341581 672794730 688561977 697323820 811562349 955592966 674084066 928187722 378836142 680592093 459793235 974332674 59898410 598832791 947678379 974750662 807449486 828879772 681178617 839460753 667160018 806591477 880119196 901171298 513907969 566910265 381115409 494191745 893674135 900211674 881326057 932660973 834955310 910660909 928847314 985281659 117560854 753976872 569355978 955467944 587614315 664424896 94497467 385922870 956250956 982213265 830559115 883253083 280536511 713737558 843718386 868294871 139839202 160736030 637822263 827376817 624415310 995527332 452688938 895095905 6861383 847982770 385829363 392992520 788786111 826316168 72501231 346193811 229077001 759788738 990115399 996918741 293189582 336800645 405610852 546253649 44300330 414903290 132008778 979372592 988973822 995344530 984257189 986290172 172428706 329509637 576966543 752116533 420537803 868810535 110377824 709503298 610599913 811461986 613230178 937440615 446224264 572567492 970211947 999343408 875293036 931543983 962892243 965830252 572876006 609008265 344415129 969820382 125533155 534778158 524468958 539261504 313125120 899140570 99282934 782520799 908688715 983246339 470496909 663696962 708569838 797112025 67812533 520060249 104100237 801673785 97431670 195673963 350623509 427456791 764342996 959910261 966705151 977171504 97731427 839432560 496394099 571704940 703673121 896697752 380174844 499224326 522051171 653236801 481271859 602932024 418498194 589195921 122618944 364990795 799448048 814889656 780720762 813792815 282956311 812630577 944214513 972643355 532889057 875014900 361111197 850286363 412211213 740564024 920812882 978929194 947148214 977138739 926145588 960024496 282357956 552669947 219708246 521123822 831232458 938860048 243567369 740052170 438841151 446421960 670934475 986009421 280882215 385966929 128078967 366856850 287423569 316858907 601913715 942434149 577213132 971195371 27652317 326395214 835307641 948183115 390917755 508789286 182294838 825822821 923560043 968604691 265349463 859208509 250577544 627109646 472169535 771485682 307377252 976950660 342785380 884952125 887917492 964268615 42861135 278834050 980865909 993055521 129674410 331477398 766104230 966928261 597754968 748251652 441528734 595891997 311366896 971788992 781168097 985101670 18227387 919975940 109469768 580334318 217162799 863308422 996869792 998031764 114850722 410680583 370633845 999023853 278398454 994475575 980212041 988201415 188125289 247616844 489525087 737479514 367270323 646701296 254606689 966528863 29753550 878914042 299009261 509408701 467777437 764606842 240130004 586486568 646352498 943676571 480372217 784110895 645624289 778225294 613141633 861642833 76982728 992647186 930790572 995948930 34651198 34767630 897216923 983353609 808683397 984892359 143054404 677080639 893364836 943420112 31277395 122735710 909902106 959860924 713928678 783792922 320439398 881230198 272982943 292827891 771405847 922192096 841421428 963556210 105547397 677911094 199940951 421393492 140540071 827576086 158036156 446151924 103309435 846559234 319295950 996817460 832005043 877550504 281247907 798279419 327916217 770846526 359911964 749673229 737818960 970895373 929616132 962822481 690788800 860776564 911828697 952820898 533680487 615524511 428527281 484195167 305063761 657863502 348581661 913613929 849082602 876974789 54362236 875070049 286673249 846748186 439699014 934825517 988251680 991123351 271371837 397605571 490445499 915738281 463217082 996315132 885296401 931141524 454162819 839087887 617404382 995959656 750276829 961369191 279951357 477091957 391282436 762696035 910804118 950802765 857481365 868166434 741264102 957854109 256955483 781193123 181792851 986981537 595802588 944462548 690147984 948829064 759597717 959795707 154387796 464691874 297644750 519933095 884114692 989208497 451542829 722177402 9438169 533509312 101340550 264447547 851041350 880815158 758980453 762753037 647404181 950704202 167992744 664340435 255022790 572303603 420436684 800643460 897651135 957497079 726127924 866400553 181836555 675827200 749152119 841299105 835135408 841441718 604782597 873441056 949693889 969521497 248669738 987781173 527962580 819004332 885590239 986068201 169215818 993966520 571083812 944569414 417862661 708996214 242386630 975437498 868953450 876759364 777003870 841347997 237261125 733405976 462911926 991462134 372027028 741963140 892132147 971729747 591825234 857168404 813935473 817005003 739995969 963706598 169660025 928685238 105820416 243082387 51774201 687130632 914383460 949774843 656993722 955825693 232063022 242605946 852566186 901984191 229111898 264940966 952663114 980562350 121574218 885058078 570629387 800427963 894515218 938861880 185950210 636621259 609120253 845105987 603257951 784176868 936422487 982607922 988204288 995323312 8669524 526707204 798039628 986302124 990419103 997271464 830284562 924611014 243502426 530044071 493391051 878301234 788916823 973328489 657187785 948914283 506820206 730145632 431793198 636726666 639560230 888697694 776701041 911329928 909113332 955387596 452130216 721705783 884523790 941710011 48718669 370508553 225736528 472520787 597048607 931921460 830488870 902848743 138348949 321481485 535515214 753843619 867500951 884559137 149006359 513672051 732639862 957640183 513605334 814860331 644157470 732369183 395037725 486322499 451545438 908931024 348724981 432532789 301903397 647854946 162765798 317687178 104430444 298962287 972453662 993847449 698798951 815670702 90185537 900289466 766017146 990398369 626810252 691262330 193301950 916090828 547685183 986083168 274503142 989324331 365061972 942500184 989734729 999439887 53541742 739389030 430623224 620971087 597772021 602924123 147904097 267320579 224849251 459275670 726833890 999025445 691514412 953047727 205697046 355348471 867268856 947607519 847167491 936512566 655824863 808750265 514454255 773912112 946960235 951324031 822893954 889000516 291543378 803851241 149657064 768264883 129829559 291153351 47248297 445468708 239935042 491419602 438770413 515755388 418794086 619582696 158089984 251383837 615795916 730637363 448391126 452736253 591567751 804447700 716832152 962514585 154886612 358236444 426375087 890729984 827247674 874424943 528167042 791250005 58820913 929539188 639383921 684986462 109399380 620224474 288219900 810944531 562706928 580369021 851943042 909400181 457381326 700644298 623376675 878573962 196931999 851392097 797314801 840612409 874181750 993651210 979519755 981792084 779971997 938786737 641267708 735318786 401844721 615870224 388949414 565712824 503578829 710180001 743646791 876687020 64838119 182875259 550111663 737502951 249114136 754715176 777068045 951330076 983719141 992365433 322235526 639729018 137617890 727138099 526253082 681275978 337656938 361137529 176832048 788992352 299870503 569588775 801144270 951337963 43093586 969542912 623184740 673018149 31004280 482977918 651940917 957194857 293097770 962612447 298630852 510737751 771312609 833041881 863394648 957898580 973432454 987778782 487182793 697800218 734341479 888657213 255781327 602837004 421463067 815065045 635080052 663968281 573771445 710269057 496804310 727605328 167898785 860093327 278992143 740680299 602990555 843418508 809876289 880982718 935924532 941271617 127007575 366048650 446291579 661255434 658307293 790890987 896211569 908892362 994852790 998753483 764766959 981493629 217698478 583532730 218865236 685069494 89483359 373414437 688508065 691407616 682703148 949590348 583047860 989528877 928749816 971631467 2323480 493324436 403981087 650065935 880182257 975720053 157230232 698394309 584035378 768235710 885599654 928987591 698274446 808943165 567601073 870646589 215041228 225540627 528069898 545898352 894133468 908827439 185000745 812198296 167082918 649163823 720352880 784752509 70861323 778929052 315506055 642038313 183879900 991703245 536020417 754587848 740822982 886341975 664312097 675580476 397653931 794052780 289654717 985218877 608349139 637171616 342637344 417618579 462274629 669946257 85203395 595692156 878194536 998185510 855719239 926133633 622587898 685772244 361653379 954644668 419747327 904894518 844586373 868723947 786440113 800401136 666638771 794383320 123920006 531229635 545806222 952599739 683940617 947854345 627266101 747068916 331215575 524816603 312533612 617103494 263863364 286411665 725792304 840931192 619647425 705273128 488402850 798570610 732308740 993465137 634941864 672426157 369550928 812876036 792028745 968463256 992239518 994822901 872148732 908635886 327630928 517122881 504089313 561876952 735183500 969663893 118414967 517603246 183134401 760970451 835227525 990033954 466077027 613430373 559972817 729803302 610436295 924830375 40084455 988888004 578327671 997863299 645476366 860197086 830703522 869617033 387732756 524956592 136578217 750769187 288706201 607847250 747956161 995064076 926426818 932518602 492224809 574239415 467978181 795764396 502900486 610021004 236606814 292444099 684318237 936006820 149514322 312768529 462893923 665742360 743687566 869907322 137839009 541302045 925421275 979558599 35000562 457195346 159389621 305358434 26963524 842327260 893683182 993675752 36005116 51695360 619707571 844046254 861027068 888193007 574434302 811388733 516439024 728333734 383503251 502617805 494059350 973754798 746560233 984894586 727367991 826752663 459189756 769173908 142472423 653353090 639755094 778502626 351120446 934219810 463859498 514129734 952792962 986315755 729591989 767084906 201235435 787758372 42988014 242702445 268908430 322448804 591584593 842201783 551698783 562358418 253450637 262298653 75711676 419176633 806650333 950431620 27829643 487296467 367621866 370698124 389244038 934190006 979413263 985184139 655445577 936456292 2587800 950269130 459559586 651207655 25378670 829155305 796873374 973523708 912773788 962929225 893739338 961928497 226315610 984269144 625550205 948585265 172178777 505858726 78800570 739735278 654943382 729551315 208917569 334885888 27134661 429525608 127846426 240630516 649541039 798933755 756639458 851265576 547979774 806859292 285919854 436147309 668360 755728634 924635782 954658356 602480771 676452862 391119597 845411686 391944031 857270130 161796340 168714929 78004379 963483631 369278256 449404111 725137981 855539603 782411867 992104695 45741581 459410683 190890820 638791213 162456680 272360860 478041339 897836169 449788097 776247056 464540969 844245106 663844767 666995702 567378276 711869849 131386121 646501594 747316166 783041522 73482053 75749184 777956797 940620198 37377661 876934629 294276723 741346973 663259590 931187815 952221571 998847330 930439384 997663226 967509052 974804392 246994682 378101229 644789489 872699856 478681375 990108735 926707311 968854491 272583555 366065441 912629160 940015589 258141504 376279205 960340508 980090175 590778889 649477283 556610403 883257069 245557754 481350763 61290792 533940745 183263721 770103431 209719907 953075133 711824111 798581660 467966852 524840821 939776933 942065732 53498670 215338598 525903775 942887731 716814499 830118055 378799280 933828583 93870023 445170711 549059925 752594052 938252233 958842654 216540822 247094109 166922506 417563256 104839274 641781325 764008273 779108703 829987181 966619163 15297719 814043264 859027619 971497688 697782817 934452834 955829696 974422603 356124328 389017379 887099278 947495567 625519081 928039733 160980954 733797213 698451405 703502807 657919238 691906259 528620743 735711002 465373482 806397312 151849886 395209209 25417869 759968007 827479194 865790718 371262156 659999764 341505028 765080936 893495212 893901909 230507794 901353976 251730887 284829466 805608901 914117132 259710984 572872692 925223388 977881583 786035992 936674368 525752550 768679365 927045346 970384429 871751517 946585655 330420989 461115013 447169175 758120887 395527281 728146764 721335597 728208624 924587545 938491897 781059196 845941100 37451268 150341327 571256405 788166216 372667480 786822175 271713458 878802225 186162365 517769450 803433814 888407521 392804754 991701334 404972804 557639242 167918012 751363616 358293940 406779810 712750546 732777898 92842790 659793677 438585903 445711744 600247508 933603612 54904380 445488937 766326276 825844886 960455944 983278579 417371948 741406515 203403740 218349142 431243437 623636012 845449138 953451399 307707643 509389897 151013509 332858879 717046726 979175168 357144798 955684142 373041777 876198537 190137826 771642497 352875036 599202389 839678202 896028838 697098645 787643418 63931565 654362471 646994389 649891978 798630163 939467598 27436609 644049235 334006227 922489513 983759317 998249751 494501362 509794832 262542928 760159099 257140656 654427028 191942478 616529445 524327809 939049109 339544207 655266431 192825396 866224949 751702698 985811232 562882899 773521702 761609225 810580652 842349719 899478260 761435268 960601865 477304804 590811864 539438594 579521540 458327041 869772626 612855644 864536949 544234320 991029743 493709683 843234395 288088292 981886340 461184959 603336743 444050050 709027184 495298683 939079589 569567413 589409250 742640903 992259968 180546361 961214903 406933088 411515021 214418367 323911639 829455658 844119355 54493907 392185144 184024909 270092391 298617606 738310056 180025595 755761259 72530851 733958134 123349103 936156773 148942336 686545116 184325858 917471614 15615489 906974638 122745372 944466322 640691614 961823628 220123703 362142634 942964631 967991580 579094577 699412429 402965299 920083966 174214431 787278771 297090754 783314019 918687458 931635283 651067621 969617701 569216583 998668115 394132457 396503347 439139333 644982406 598799247 710088234 215846287 902880865 914896275 928486183 784652363 892687351 492087158 595874020 913317726 916153312 87861759 557791562 709894401 929131540 64698296 917192691 622181394 880420822 230534860 294446577 875382590 876933141 818429468 942007356 925300246 928321263 737553615 858860970 450789862 761011707 12160852 981512074 614272648 796569897 153908281 510873308 279486678 466934204 307581933 757915228 703957349 966377590 143166428 593720352 172240563 708146962 795615066 842752115 140015072 190591352 244501563 755776705 454299161 842759869 450654880 972061434 175391388 421216072 820770398 944797088 316745440 475300359 168309148 514882663 183283668 570126925 117566751 940649178 976235158 999993378 116559479 352196617 846352956 972464323 172325231 191133830 14195303 284744090 370847020 842744354 908908873 965236523 995479895 996978994 312361666 833014632 698253605 891835274 973826333 994720765 259661358 542685265 118282814 829377298 73160451 451127071 215360466 548240559 884680575 918746759 197979758 603377865 363643802 997280927 819818844 901279776 880082922 979745476 294004166 318580011 316690036 751193289 617406867 715094737 947408414 954298682 568097417 773641337 893490898 993000980 310341607 705946222 443670431 636057518 64342547 167998573 157085881 962456877 906082998 922226147 685898541 738351022 172801467 416521999 788803709 793305612 219999869 688084258 184767615 905935328 627857772 987068830 945074040 992251404 417521329 791672019 222302052 869009662 685658120 739183807 909100959 932121965 874528128 992275422 53611390 118876378 781092674 982790492 689816545 880097722 770200921 923411125 883598398 923877582 333571413 743171813 87565012 307850299 456066189 549986999 952413738 974807204 238853305 299262380 532035682 686488645 978276851 988122085 258897103 730734000 880529916 963698348 927132823 941943779 846444066 876451205 276441899 850871982 328099342 395026991 812478959 873049919 252973619 709705325 61431906 613473946 95865588 727946430 490092476 776856021 488160395 640449406 954165039 963486690 599692832 707369545 802062972 898388499 211327899 414240012 219266066 641154211 500876189 986758098 599120343 789945684 309326094 659510126 717779902 951007884 567601204 659904104 36601171 617672074 699085515 770243521 563346098 882597892 198033121 252101865 986949873 993742012 683451920 832585101 72145211 265749805 45702877 338747085 358495179 486099359 854045645 899120040 642635147 826522944 955849774 968382401 345916096 455409700 420613761 491846449 19556454 757014694 48353150 899272406 807129470 834238912 466196187 709888343 221876359 804150959 777518966 958562505 208192164 227402661 503353352 896259362 192227477 942356007 507599456 718846262 406759154 946233792 507965933 924706670 301198701 750146772 789249148 896601296 60739827 782880430 788783705 974336197 721970065 832355635 503909564 792064967 955822380 973386352 114037851 638191349 419043852 571310998 222988412 782104958 624232720 789319139 829456039 859967601 202302730 649850755 671219196 808954513 504765373 753543947 526922276 755902851 784424052 919249170 101878963 246954275 853973881 905907600 721923987 770458985 722897771 918738087 789317134 813397405 324083386 572956168 399589576 669504105 214646124 453681941 148534189 559357808 798259203 899610885 737240483 751739438 821022842 868038376 627995720 815664124 183602058 596774285 307475339 459570727 349043640 480594998 910728718 950298240 500792782 806740786 969362348 998474353 810834773 904080955 110749419 706114958 819725868 898760846 389932575 677500820 67360642 417769480 660667309 694948123 478553001 672137549 805640695 986666515 170322656 859780235 127884497 816791316 460844919 988050799 116219397 384487983 113223826 833621883 949050975 954459152 227899104 417253091 412600972 797482359 304651407 969412550 592392878 610712931 513282975 955882780 283465241 467626342 883315887 928598764 891184043 943424697 712509064 936784083 372378521 764149454 198330600 437203397 62527458 807352640 886258335 941108195 506150723 701861572 307730821 403879577 944941492 993143052 515803259 996520663 976691444 978588019 382448667 878258469 876929477 882139003 544113670 585297007 353950244 415290668 510972889 996050550 767662577 900413246 31684109 338278061 843954215 912796567 780413059 862372976 125889581 592911722 817449965 971192765 96121991 262750510 212902489 442926996 578904378 841715560 332183806 829725669 103753028 769672739 878412212 998612098 175393253 313272062 27236764 921326270 910692865 941510164 42400423 69071990 346997135 406239845 285379297 669190602 497698612 798841437 817270845 908731170 77060967 920337660 365388186 641685520 754242528 897684887 521086723 947619447 562232282 598247340 723027644 905326309 393861122 844196559 331864745 489169405 327404664 910795592 402484722 741662965 599443272 875880831 588333937 887039425 449453654 574782737 925249220 928049900 587338878 963626127 341060677 830776727 478753126 541926813 673979237 792354558 928289321 945213919 691400531 779178216 886830143 977963960 537182535 943271258 345472204 501396382 540926430 561483705 22087621 815634262 231964623 955928094 498753418 582224633 98655954 441443661 627991753 699752911 754012342 943465297 751179869 839692960 747394494 772953342 671829279 839917885 19850705 916142163 211364624 831889042 510359237 929827165 923727765 927960139 612252777 828142222 854232999 875306301 583681054 714465353 488477511 541220608 766021409 972766171 943123822 999128253 538529015 672257900 365815212 608198457 882662671 932197030 291081370 971885939 525300148 738044101 997898231 997973375 704945236 938807384 487540975 686847319 492260637 659119170 638428480 742751150 151291474 754765088 783084749 932500485 648657598 788924712 971004030 971463048 824912781 870090550 49415283 562473805 244704517 760191798 54111817 208830737 918445219 967271936 269922534 614940289 129381042 748274144 994650111 995866249 380629745 989639639 582617978 707015556 636508513 804176454 961608769 990060688 979298483 995329642 682708520 916688953 319134748 534047301 255958081 708384845 902064950 929903076 143040456 422673518 237191038 331238220 978910665 999810137 424847240 770370789 631465267 814752035 209161064 561925031 732563397 960536721 804905985 806646692 65190426 750728053 172701689 428039383 730534484 834467633 462911266 559992974 972329220 981745222 187306353 203723820 261087630 701353871 704412493 895687519 378673221 606012033 335897023 586960070 762020908 891664545 747564057 845022474 596609819 653199256 645022215 957507887 471172437 507935653 102660361 846247835 304363984 331942555 752511584 823743923 345842343 444120573 82507101 593239199 580932277 979640882 985642833 993270694 535515681 923965872 78172581 787744110 547427242 909104244 892499771 989657562 194509166 444211565 581991293 846302938 664122915 977869837 528352348 680511352 503780231 750738656 230199752 916788098 928762418 975589781 217893370 462911036 667620825 965557092 486753440 672019365 665428564 758719287 746258354 899439724 938563413 971516156 786814080 994212567 7974437 248791480 464506698 742826517 960646118 995029796 576602774 987452687 113361303 589205818 10824836 290006278 362310842 747708223 255622783 956830473 203658947 510513846 942609804 987459174 763249357 846492158 891294416 978237861 796156830 854108525 81763 939137567 491220781 808335940 748074701 888760689 285574159 539148980 9173933 353585587 259047792 259598629 26644442 981771669 424350424 792062492 79520220 694600705 731956042 815134592 383298914 569447271 725444636 739189373 786045240 904229409 611590401 951554317 894279704 917905268 788219687 867615416 969942651 990168455 418750909 572031207 39092109 642032366 713925655 874880525 438241636 796044961 724095233 988537617 666975487 919746045 589991397 656727944 531813250 908103349 948219378 972632584 515027769 809796184 430739230 452598814 9040011 592397219 241203704 400365704 388264481 915858528 461762318 766702231 505813620 672684413 245431600 599715952 691289664 732195040 119584705 315995785 462948509 488856786 943145610 982149966 999577256 999711159 232883699 539468334 45674068 926120433 539407867 851489542 947247142 991220452 812766226 915252633 116947982 837044814 519183644 747160881 869653676 960981626 950053485 982417013 59393319 609303854 870183557 953298288 467321426 987392762 714569769 942954844 68900899 592370384 110598348 137008528 869599944 872616445 256960568 714830070 771514826 810568098 849521367 939273287 562640117 815519633 947299570 985696282 534817882 969250993 581500728 661269162 771557316 787841967 458340308 604472187 12984431 315844534 932508593 976845749 196146994 952878571 176961610 700925838 254422013 597269233 374973454 491056170 524778039 863260199 604119882 712205181 739070976 758155012 240965554 564697500 996991768 998076834 768577100 999619638 538018150 694822932 750926072 896018695 533151495 840272954 510828746 636517111 771966701 872331391 710549387 958147829 585015369 928184147 962313824 978312763 471103645 560339057 709564725 714348642 405975763 548053432 310482015 481925165 293858432 937197312 337427136 534553437 651173592 946250196 194776725 417590011 206661319 302859949 476981602 797234828 616163752 626344183 37259753 773470858 411893072 696318124 748125918 837400650 427435244 625265963 523078973 679469243 77256376 688024851 61947541 965085098 438642671 987222167 850733933 853999592 238529791 382917993 255268637 919441501 403488286 829610760 75013526 417167033 269232693 734943280 513323619 924061068 159464758 227255120 453669351 829965539 357164278 750596673 70128814 382729806 465812843 762346632 547218744 690841939 5297246 766258567 59769175 557688250 379819245 635557237 609303352 850463716 591005384 794048549 804393024 811851287 242343828 322750981 62849452 846024833 811118259 957756089 686985094 718099916 869174913 904915279 57974826 356702735 532450795 919371255 8083605 449382262 798968444 914393613 7867421 405941389 137353032 465710857 75306504 509671630 473406703 947659613 705611089 914700720 143857266 899170979 380139321 932266487 517056613 900967457 690231290 984096351 739481823 849697035 367564247 446638494 177461491 570015940 767098343 846051174 603832674 620433664 13894635 219956977 72155457 276545530 349838210 612934985 376700402 451688748 424425833 843850747 751593264 832959762 174012002 548452355 397105269 625155083 429139616 928293390 722330382 921841827 738658716 766264627 83148884 885527425 377927823 733708804 742532928 892118714 940725586 993583800 765392580 780939516 590929625 727784388 806866369 844188467 475561143 970872108 139357601 641891580 798231685 887517689 538864249 915861470 28676517 884079714 474350970 995537981 838604703 860925855 629540171 655048259 5592562 597520642 496212556 861399980 797883550 901979218 896426166 915077717 737850680 923480876 751227550 794292554 614978838 707397580 920323259 994484056 592125801 811205035 584385360 584785273 173613284 219945290 70557733 710297707 140862039 882061436 253369223 572293797 446203847 673298083 408033479 800421969 405738968 586047333 553834523 729083267 444514805 578937945 296671707 819109127 773113579 797920781 340225405 428138151 700277636 816207278 21603083 496289409 716909248 784354007 146592087 329842292 846253649 981148905 150150787 780588549 83760175 849908620 819249965 949479253 588727219 914790365 822943334 996670416 674195335 717856787 514151451 899098945 197740070 941869902 432883280 531158491 953075223 989924265 682666496 813113513 701392237 876937673 967678714 997947383 823661880 946429570 109837000 275821570 459004369 788007733 602940458 655700856 808414695 935361394 461065750 894932839 814313704 884539280 560605454 747963873 130199619 567846988 400307745 489046769 420167103 775670911 346152941 606941559 843457260 878675840 354233580 855320267 775958631 937939740 763155717 884411179 765608257 832039796 742941309 930317879 132255378 425194391 67250533 772226630 949749964 989794415 792807711 821421655 953679090 958010959 141370767 728301857 263927259 989783002 309479568 648976333 356584812 799691801 366278289 452458973 715351107 861887481 57425163 670665858 436755016 499203071 608290328 787272136 152154618 325323815 507879454 625200483 714508767 951846657 544549429 619812895 824412934 989854117 40284137 146854882 834435277 923843150 100762175 897403552 889144566 919405934 900132782 900162296 686422045 882020415 619297203 792320223 690989829 929797206 723802703 934282074 810967866 995385759 912369265 988193578 242542660 299146544 592811473 780967566 625600440 819503116 976123311 998246672 121537976 281466152 85026590 147105088 318136177 970249877 341473196 824928249 679236567 914871992 70255873 154871100 298532275 349208341 756453649 998216930 77012825 128959400 381797300 893336714 796571026 996108163 797879591 985307859 409847836 814818518 928710997 946249969 401379864 678624412 177337685 265052776 494759668 548384594 199150963 435162713 150545484 800401284 136180125 851330287 850752987 861976510 245329334 651551181 806155059 871708500 53905785 190995166 136656438 319848876 999232502 999906442 109915706 508536261 311296980 941717937 104146589 692367900 375876070 742199677 830988240 939337508 241357826 900139099 802448887 999553754 478421818 824627469 267423534 538276899 179969496 815059584 480575860 898653707 385678588 644387705 298848983 533222172 557297773 850375277 399448190 697468824 795903688 832136506 958118211 988231842 121795462 597792776 426733558 450691586 821135135 961791303 257420098 374010119 276785866 740242083 131325387 158797772 871393137 903666305 995563439 999225474 137295080 500174089 273377916 999686336 131062898 506517725 26520617 369610307 563258384 726667905 641024272 800849413 441109309 647189564 768819140 868610239 917429282 981360236 996787252 998362998 452768981 553132285 702934560 783009263 704497455 716684131 329385827 937527364 663661494 982647170 904549729 966607309 211015823 820151196 743661299 800449662 966922310 986795325 947072582 972029097 799810811 811177356 732305179 852302914 777397953 850550503 892382816 924471794 355951100 571388332 582088459 925079498 897257190 972785543 596252315 998897532 882667177 891841655 615582142 926190053 454663399 974941959 234505413 964579680 606552491 769028994 506552225 678612215 655497672 916075533 5486896 83789611 753347393 832031656 281248597 333379189 247885037 312941906 3338217 877907169 164055980 453009060 836295176 879522776 768502819 867125348 215552140 611522273 283376556 388346403 54879959 958090575 923671208 992246646 739022498 896173809 606046379 863177522 55014131 234870260 518927235 854086176 4371832 862271394 574583986 952217590 125146721 648497507 157614094 695523001 714233425 973360268 582302455 589236431 212938409 406669124 744311224 923448023 410941967 625543684 65443801 476607813 29372521 777848522 129348221 562751707 888304323 946571695 953885119 961305153 716612892 948364191 393951102 682068954 691269352 694746061 279617721 717637000 98100149 873535823 481015259 611421184 946333518 973101408 178037935 853461136 893191078 993271976 586051740 714141791 887844053 909952729 932105762 992550233 168027002 194329413 954162141 954743493 414260256 557892454 183729077 730171885 454358704 533419991 642273758 840164801 539908663 638634115 258887392 483589340 225377932 665874781 304865804 614692348 667928411 774433347 97852611 770380637 836016123 957856988 30918242 480906104 143247401 960306253 261683090 576315897 276549173 580703191 45566265 247215543 282796791 603073841 711107704 880760318 233525422 269460175 672056049 900228541 14383355 519773033 310434017 864292021 609235636 878377888 961150218 983001737 967450483 995601942 225689570 865246438 462007016 899278759 443772160 471854239 238554959 395988645 803726992 921090477 643235782 791548143 92902019 758656212 881534438 966538480 213294680 967459117 272306549 769096169 7516784 37065376 712933702 880528030 277743616 866953450 106584912 203902666 507223312 548118299 749927020 966673485 232822950 589888710 737880684 855348904 645813076 696587285 100428999 191657463 796455685 998989363 631223565 679930051 689830063 726188915 328996249 989912150 65972365 868868374 566414923 675262458 446500571 490463260 223512426 236482703 754095333 797589009 50802723 882101273 745917348 846096275 136289486 584788883 766335274 779339511 526423722 945550985 411291370 555126920 917334819 919137248 860499263 867199331 827401515 988086678 846716335 858261777 273173885 943106706 640232107 986851378 505068086 607808029 328442977 774633838 803762636 933051547 226886587 421020339 266389198 534289195 494940741 632851507 324972244 978994018 934884263 950547528 174223781 765636208 173076942 578949078 331566528 953344735 771479680 950690366 312652550 792761523 827431545 847506080 809652128 944680366 145145948 420766763 114909018 631763237 277663836 742985195 458439336 775212680 220759555 412614506 775202060 921869504 923441890 974639864 153642238 383478353 430264501 658363735 711797105 739400662 152352736 723662618 727397710 813503926 146454561 581268218 275531962 595353461 422182604 742076579 967090049 971862459 477401904 609170487 569421286 992186828 22414593 498344587 384582529 890188616 282493727 400482925 593096641 692058149 256126256 690491243 592712155 861826630 111528312 621864407 86200207 247245654 826313719 982612181 626217210 635998309 453058751 693236543 608556756 977778860 308638101 891204704 332220022 845108665 875722746 893143786 972099514 983236181 300013146 898587892 155125031 445866338 495807069 726182203 345247611 619306896 551789532 952280818 214070321 254639868 715061862 931467981 425375900 900217933 940991839 944343619 899496395 928681581 603086479 854066995 641635917 891941954 564547533 633541751 639551413 730035031 973090075 973876104 851028782 891441975 864710369 879143873 180608166 252277142 223813684 796781078 42614883 340954579 880608440 947262080 495637061 647672819 761172134 785514990 710877886 937286853 138348604 685667015 108256045 760740080 600003303 638721642 891524500 958795785 326928887 600104894 381087779 888270477 216405114 493514998 503270547 641218996 746670370 908901905 620848028 786754831 158303988 406752789 255840562 884562702 478678691 529038603 735972064 827926837 37259388 271484300 255282188 978512467 915100081 928729838 59197151 751704073 292491490 990006824 509136229 611197965 736279462 983424832 231212066 923186478 348322603 978036344 15267707 28236082 267691014 410505456 71654415 291483278 911605180 993655169 346990780 819989689 155558142 593135254 21619946 465681943 5327254 359191999 603229304 633136864 677719446 994364091 119814720 227119916 373634372 635092843 37432649 260718332 267099518 994428047 775195221 906404366 541940488 562343882 428314355 867881323 765242331 949389952 917436230 949682273 610890300 935323051 337737962 603598845 756898683 817812713 597105914 875222807 836527769 841073359 876212979 980399976 82857899 267113949 146267117 191796998 776636123 978859418 891655692 978814523 450570127 784853190 679723228 858659894 861821755 955257110 511834759 534970691 546376550 854001631 690713497 844913113 442532932 575271699 179142878 924821447 290667176 839715142 171132656 618546297 596151418 810638967 783437946 932973569 699417753 969880766 470286214 777045072 517854705 673278121 922988525 953782183 267232644 672157518 212397575 808756451 518886660 755042711 168435057 600359544 554300732 749143878 755590655 996885310 7494271 198788767 43821287 885633947 96677292 755158386 870693440 970714548 48674534 460864136 101408076 678259682 649796750 861242800 831604984 953281431 816611648 999875756 292782391 566716854 292743363 565755809 88921950 969206015 832687475 869718278 962705334 986831689 144907636 895043743 549199242 883785476 642411968 778865045 151946211 458000541 722244931 789327866 200565596 344064195 282640262 474472858 276747197 546627734 808859372 962020532 387554660 702714700 964727488 992840788 365643539 817929571 643382700 764658091 396141334 846245927 438729471 947761571 26674732 419635047 130294826 743592256 851288760 917153410 960857430 972346171 455312526 632773324 424869177 854176792 155493296 708741839 479071023 567639427 366428138 525403678 768863818 812886990 530006362 836053141 808067969 847171037 744827848 810215214 357475601 670306202 914648085 968081413 823669228 848115206 578137492 978356953 102597297 560956499 850842944 913968069 271132420 816759717 567453698 909860654 297379920 379677977 273664817 923117988 6304309 866066280 158491324 681173613 613303784 990901570 707518267 804371039 114675723 189523756 368166251 925367084 375977624 378021692 384297378 788151311 582980108 666970197 12462886 565778236 100301184 954757482 321409574 551838228 922433845 979552884 777922172 823239961 610826477 720024068 193657291 820585819 497366508 830901604 822287725 833841297 535128553 863857827 88938165 378157194 336117516 690150018 269996167 842628449 393182419 939156565 434323138 748174290 222003222 246767325 725810836 788742995 533979011 676432220 454789807 509090204 661335696 878331057 563409269 706969410 333621248 755700286 241238264 971013803 831770267 875962234 605333592 799010560 636570440 963502596 484344549 506122924 474857344 939107188 377578107 637448892 934287955 984149856 579194489 850560660 975530441 990166397 629873860 783313468 544138041 658741052 4489307 288041471 865943606 945533476 959403730 977125699 796219113 853030819 845720340 857616429 245457465 651226324 436379562 595852304 5494109 772464074 479344344 678926540 54360339 667131107 598556075 616140053 395193552 474873121 169194301 972145503 221727319 514759554 149301341 588077507 574937882 925623546 360651990 824469770 611205464 678189906 340463389 670347494 817591602 921061889 745822441 804770927 388625994 668514390 271274160 953235217 380831139 940227885 190439782 744697730 172512055 981625059 385584976 934391996 378508727 918220830 490182820 522736997 431325151 518147245 71703324 541061122 1166688 755639696 541668261 541994535 393021408 877998524 487898254 831045867 992722955 998912337 995367818 999804218 697034761 924670995 173423473 775213074 198884771 382701926 589793730 829895491 238021418 428627206 290826864 371428026 897202379 920884922 811877452 992198279 12353058 282476109 119943287 412120916 828245746 936366685 82757629 765001310 109786799 983104747 991505675 997666370 78295240 111800057 381629992 748013849 238982293 722941071 667646887 958498131 864841145 988440777 379589251 903128825 842833967 919041259 258177440 851056952 945719739 977725890 103349066 997151042 605925967 844494496 227846851 305629061 633799244 888726737 851806339 916257100 891509055 980702105 709430160 949277954 345859244 974031547 472876900 558383021 834261300 988644966 482378924 795695544 621965767 920402251 648409256 769847179 961509551 992073553 350956835 822629695 351399349 628833662 556909720 704049323 824900194 980140759 44370962 649246276 728225483 987017900 114656220 598501971 245671783 680031611 930445072 954420286 226161234 358697027 433054234 564243489 90788236 736750648 587465205 965088517 705289726 762901157 487315384 913191524 952928723 975800808 712399313 890114518 938272699 956026963 397109029 424053778 449331006 749188483 720350561 726382725 935565273 959052649 145407603 722425980 932041192 964724183 231346861 233608380 983319309 985034408 857380462 937817769 880348093 925692323 130591122 736558978 888493966 984990417 331181367 515175798 490833627 730546853 731672632 968506551 677096274 914783619 926643209 992613454 714683339 970802411 893473952 977620430 572900895 897831446 803232756 900215366 490566787 858291530 895748548 978180793 381099233 934725284 365085102 546802828 74537034 158793678 103435295 292538920 918627453 934322123 932348840 936889769 517950962 955448006 274161481 499092794 261226987 329786390 151840765 273169717 313652415 428792010 27031317 686877564 211145383 402524183 619957845 801165613 609604210 706856143 601996327 771818418 426412210 964760555 184750543 973088012 561822759 612316764 454269886 835299249 962636560 984078485 892689569 985522581 490679069 715841906 287059517 721447877 105847313 534604697 13262762 697321233 895909139 972134748 882800047 915610111 414284269 490565109 56021148 98242115 459324850 656211667 259569970 513238253 902085737 956521554 638166029 943653172 203304310 678708445 444861607 764699563 973486374 991688260 275441263 811479336 509897276 839912375 647956018 883206504 196504543 216855028 725461154 826239574 269743561 702580458 771913536 926867896 957557213 961342816 872287179 996103746 495588260 866100508 857024193 946992506 455152512 863244091 563803407 733006247 757720 379320135 692798836 854796660 886128315 914102264 437844313 688807646 117871835 615413358 985920207 996327007 743441597 897057143 931055357 951809155 296322636 809126778 581084159 903005115 200211899 443407668 967233582 969260157 565322195 623047793 302005962 768153362 417244878 793967586 293066651 771894287 219381163 886518902 404276674 520333249 931321032 988631591 922307530 950658707 368147676 793794141 157825621 334365928 510225625 847161161 982322156 996489487 50703397 424113710 20600677 373194302 873448279 933881502 433795062 800666153 321670574 574398911 28397194 725874460 983807475 998927000 149413113 623539700 496604605 975984345 974215829 988373447 738239992 760437288 278196767 498221457 156283364 220980185 253691557 814584963 130755195 546190259 874200115 903650990 135738987 557288711 642469118 970907446 245354478 425678590 70390037 775901355 236210754 887988932 156324286 608998746 117505895 630985473 281486064 741258806 68175838 835658146 504338221 727088851 267021053 717084113 836312650 929080153 603461597 916494807 294284903 929269641 187589802 391337971 670043658 691733283 268847197 394567729 650145667 851826897 591324874 595669402 264798638 434055831 553213736 927828781 725669059 952203982 400794537 503774689 366942226 656147876 704306181 998297664 449448643 976807470 409322548 457534497 491687907 818675859 536324128 811726740 527397373 762263683 295430749 381425806 872998798 995968561 466045356 690852632 839180121 932183066 789347021 951867540 674861101 962558916 840922021 929501908 106674013 740719475 854774923 909107468 461421089 669222665 362000242 533329105 256162807 531698410 159587182 479805391 445947159 649140922 621593027 771351140 205121473 587058957 954981002 957176213 793372805 913032779 260314944 669964928 955883900 987931240 40740943 780539314 90611534 886017528 296656475 818814904 847952337 945024382 494925328 973473164 85726415 900847084 764906929 801879047 520232572 745897156 910934218 999810121 370000658 684185608 940344893 941939328 249548696 656359676 167792954 426506244 926857738 932916116 852047551 895656825 441769030 446792993 629116151 940276852 621047200 865941530 244627088 721410599 546042192 798231038 877170447 961864793 407419100 706749232 37527961 233952004 505995820 894292912 325307376 895878256 799828539 878200511 203463594 929366228 744969422 975678300 144418892 530257194 865642803 878418193 771896476 996125678 862795997 973600772 404327234 604433320 511899780 714034569 726287590 728248986 612978597 911823816 893648042 916373722 991256657 999686688 491605343 713236555 921642992 963837310 526048531 645915464 716770434 869752949 922179771 983204518 601258075 851834254 733704357 882639567 424034445 769345257 340595057 890047584 126811696 958671091 272857885 408672540 658633282 838127935 658184278 870939061 690628762 953858363 215319517 526084784 602356293 887660049 348813306 430771276 322130877 998526826 914304542 938070172 198732782 897933079 781148024 850079202 730560494 980618734 209977274 864970626 479414158 760788363 595149366 964633384 378434561 676872225 699264690 785366517 41961666 114443847 937010127 974744164 468833187 816789121 978439814 991753008 334484448 764614149 215523363 811135176 127132325 942196031 827424899 855486783 752268687 789838184 602515466 952836797 695778570 717337725 73456537 390491111 410995463 905812825 833131916 950261427 595769493 947122879 827780218 893349955 132281558 219406884 357164848 797659331 670932655 929404573 316992292 541100718 723293507 724097526 889928415 951943417 896240562 923014880 757731938 807318919 676858776 858809634 531842758 595936564 836242159 939850097 466931142 642338782 256493070 946386636 662901520 870184078 27723945 166012038 41288728 864841004 489017924 970925285 571954996 870681506 153886991 759217477 868187126 963820189 189123465 803293844 118686461 626349467 896612277 907734359 898431321 923256781 224983414 844693871 156976745 616984466 206406204 248213530 774928907 883200147 27901744 958747084 145028299 479065330 287252729 336978989 108439642 710224813 378767346 705142366 593734119 679537623 461541623 663847562 208809980 946907445 939885692 961360731 477543159 915815968 787293060 888368715 73928765 411934738 859254304 964140728 47723247 437740816 74849988 544657097 315978123 366753475 76614762 772399774 549154430 898410557 648117414 682797110 931618300 980732514 873570589 936690561 263085876 467038830 24735073 136769197 428284123 784236915 420068158 474168334 308455855 706030750 62016788 861392691 931722113 990673578 230186684 765430599 677480398 999627349 487867134 674697202 315289852 922041315 492496996 764540563 558284453 967113041 932476913 986840982 679816748 937955238 512048592 902726182 952705982 994650189 346358643 785601677 817003839 847169849 526567097 669414963 912725609 947635913 647282086 727474711 307541573 568400542 312684174 385221022 233443138 480979827 10402463 143817577 871609501 962404359 611817518 975312447 255732772 272765080 10092498 395902718 220757338 406969282 562549314 649580850 687636373 843624314 556530856 722568285 317673641 849552151 7176527 671829228 625163199 973889746 766781946 836125383 917853694 984508658 352448324 979331982 851076740 986991534 409470198 716194629 654556968 745610099 880017457 976469667 626986912 873487054 848871668 862894450 192136959 592540082 863723363 952662297 830529533 861202680 245323892 280976565 298005714 334940923 663633889 986550694 793741364 797576655 521764066 535425990 929027616 979090513 399327134 719577822 973408924 977802836 59706091 787828785 346664383 953262428 138466359 950506785 787534614 807993455 195340319 799096622 952367940 966234666 113599324 657612235 815650982 905604885 259271067 393909732 132260868 667116946 418305112 524487452 32037273 250256357 949946343 984471026 104099462 309533064 1093042 3940813 748561996 802903945 206503316 431272739 70262813 238543022 667827518 741053189 334117325 425166625 904922735 983143134 296861552 356698046 689297940 981184958 784292887 983532553 626286889 826818454 501068586 997308074 512206956 678714270 191260994 712958636 563855035 736027940 379765773 749662104 335299574 354153129 336769343 584559012 843603032 947386739 272292401 957362143 796021525 797833278 675773686 945693827 296432511 315172261 771039313 944533597 432311590 989996975 819721363 829623996 898089546 953114082 679849402 977934010 93456026 122759757 838065249 994452872 444590091 879611694 598328266 659127897 786728673 854132887 575277372 829227374 605834820 656418963 309456703 473735642 290530676 728129070 880890100 980396659 952296602 979479084 545407038 819223751 324909081 839194248 336815131 778006876 290487418 371827434 596959292 895504466 25025338 777027898 34136582 428229505 361636200 827161192 447371449 636419176 642229675 816837766 198715155 251277029 384543818 404528489 894554463 980769992 462825268 516326142 349995677 367073542 407885700 951404909 622703060 857302412 382466990 842887191 548593985 750643072 505585604 813959248 638016931 785067291 890566902 929690536 158376250 320181836 39579368 455485809 295757409 932101060 268630927 963359458 673487414 988006342 987733470 992957924 39998192 577191057 685940916 932068741 545759529 605196018 319958931 720095497 219871866 788232781 767944452 909983265 325498420 476720271 16988778 378422263 629083098 975789763 208507726 910569326 873331059 969254847 765641807 801127186 373358746 773769533 365949489 995233379 957511548 972780801 961211337 970088485 93342487 463715298 430213056 755938900 805567953 917263112 445299337 938019952 756970841 988317330 94312030 887731201 717076135 824000996 148283933 426113722 833003709 961388688 931639544 940110104 53897967 300900473 709697780 951535985 458273725 735696409 363935183 779095511 626970958 747979081 513784284 522762686 681096516 971120444 84353265 171505508 586246362 759448555 525333168 599687096 932494144 943686017 173510086 680839224 132566735 821873228 101074890 702775995 363276558 420476161 747907168 928043673 249086364 347065074 648102125 794084475 192368877 297053090 468785686 926848935 192579435 659171881 570629965 595823478 101857755 940439322 364479584 891240129 562763128 951407554 686447045 701784133 448797681 503379584 330248494 344364525 40249979 225562063 156737246 434564723 657971765 710231472 716894645 796287607 676337041 714049595 450106896 695213271 236335792 830425593 507127127 692421668 612659069 690018452 246912135 939614510 974235280 987998645 186549936 965353586 275325603 493249506 272967203 788815016 657509173 909981115 542068752 947181666 852691089 977396669 265039788 672477877 30843634 955453040 958021187 966903206 772490004 876740569 99670741 686076888 440339424 683182667 92162234 414370411 754383121 790311305 362320084 926570189 750265905 929614064 671396531 914413161 444227428 560060216 252537198 738003783 881392620 944059692 56831632 362787082 96437317 698098232 50684605 413673426 112767066 788363549 468871262 478082885 852289366 929060896 90444020 345927266 75921473 196963054 487878777 679434922 893733917 952965939 760786413 824886772 320744158 514020390 450827499 837308090 712131131 933141261 380759433 628286744 980380664 995868922 137150289 176603807 147871560 840481171 246594440 407611607 228149035 368542782 404081463 415543298 496345919 616225465 895064748 953254136 823066866 849579206 903298892 917735034 638441545 710907254 73053119 661522057 110936072 365181008 577804599 600955427 56206454 691471155 780125893 784982876 345921417 948910329 713636922 787938258 832373395 873350500 319807829 547300905 582880636 829072726 775681263 808281689 492510682 548091298 127667663 312437036 999798562 999980137 154285308 212932000 57793887 246808477 17981783 141799785 27270143 262527428 16781124 399130577 56630747 800309222 158888229 261339172 462460421 567693109 535380860 653930019 103811637 759399999 277785452 758212740 426822568 481633812 228367767 843854017 667879162 711113469 422818074 433181761 55811261 199194650 868801873 950478919 983446448 989112220 912274011 949617579 242900947 760555534 863626403 955455950 375393769 978823363 862293787 955610755 568249910 858758043 903985463 914138913 82348683 808532183 26962844 350882078 344930608 627942133 698982067 973773349 620473552 696641916 914774204 957172331 598209896 904100540 131044462 552531847 754918400 788524447 900131658 904809807 867486574 943011982 837858641 858082995 290479878 750456660 971182031 982379715 646097700 715082878 892992087 972135150 334304134 678381870 120526651 696355469 926560520 974994107 809130096 820529611 297717082 567002970 778874660 906287827 592194147 891208166 442056396 527183910 111540150 674425689 88810838 899165017 870296104 977225617 96233141 241679345 159899732 994520481 314945753 993806818 504341893 771425526 879768699 959626264 277403100 866972385 43069647 523984800 264295496 580835695 519786606 991678235 24487968 338298615 381859865 886369412 148338375 737826723 684615588 695644523 638770867 825310087 761920548 884984104 737791463 922553777 551513170 724563813 960245929 972633431 527704750 976384665 626969738 793676521 680894611 745296998 302892823 912921419 495263039 683004647 43288608 478423404 448275916 888423028 299555668 507217736 544064099 678573496 34920547 845826533 706966450 716556758 45026140 926199872 698094945 991820710 805218953 912978750 979767465 985986095 647559091 851171582 538531407 545408937 859877752 966649314 258685324 631271749 736308876 789632398 396632672 837318105 887338469 915279237 797225961 997946643 990113999 992347531 470134586 578639661 91424198 261390947 832575 760471832 464269196 869051917 435419684 656692915 950114277 999904021 491805793 510092956 534595102 616342907 12607234 806480845 903353011 979454823 492431980 859223289 789457717 895001567 275612996 870313099 555633137 616992990 484044944 610615573 758380868 950314147 471743412 966046985 148781773 411926937 330033880 456314968 125699470 740024158 129627694 692763000 990846637 992628277 250984567 480134971 612185636 694198472 306785018 977575648 194784691 767920744 60199802 370334406 469332021 751427519 958856214 997210386 251009531 373820458 58586909 623255489 293353802 333949729 391296602 884122556 855810747 874942370 786167583 918311074 265005464 521775209 271713081 709950316 483244269 650408464 627128980 694490262 982883877 994060964 245325784 778624118 665191566 724554945 694921455 893562737 691682201 924207071 994713769 995737776 480712105 805242913 533518871 763508431 378133277 866884056 168585666 457127889 960444394 974044424 213761861 631073486 484563772 909541897 889384246 938932100 519672404 865589208 265637024 473737502 362485335 705569936 110588760 240740743 466361745 890108595 117906055 265276245 275568818 624320655 232490675 292035409 926255260 994817204 493096212 881783189 729158473 941759913 873704209 962071361 22786244 390350989 489925266 612765564 352492735 762563359 879657106 974927881 546849226 653531536 868629575 973143009 279802384 375971350 723704470 794590311 530282129 830969687 156923369 982138521 677578598 777273684 558195874 916341283 624342344 645072734 44384005 65842430 743649713 982629182 815809511 960444251 456675878 851101926 555815922 916715726 824467487 885350549 252504284 805266151 796923259 827030415 937742497 962005470 26877626 232446760 998352197 998761593 297021170 341390508 649620620 933687362 175886642 668789554 89564474 109593721 645770390 996424010 908528161 911643734 251032822 814425447 270703560 873274935 77453923 636568603 488484081 789048444 916003927 943439714 107142347 730238407 984834452 984927689 911395985 930929087 361995060 623411405 928260424 995194965 569826883 891835517 370571974 908035030 489042698 819055307 803946532 931835011 968529752 980575111 92036888 183807067 274590416 288142750 969070381 979054590 713574836 947806013 775447787 979842019 188072072 754834237 186712591 397083867 499612399 549931684 683925760 961831752 867253403 882520614 775803591 900809930 938411295 985603596 390005541 702560083 353597164 363941605 894390774 961664103 454169320 457040594 879190936 947502506 498757789 944151452 869953359 898769400 857824730 969623422 851504997 977590690 529541217 984633034 89313562 205850656 517834232 607011725 676916807 810455255 436810718 798947271 163579582 430903925 153539160 185657199 321315350 593413220 314250340 649065855 337841381 972023875 64408911 860900830 171337884 613015164 138592158 827879477 347503531 665483341 472074224 652676307 208745257 472487566 536136229 920691572 275115150 286592101 429017393 804204266 241313130 822010372 276573637 643637553 611808889 924654218 220614321 407024990 82072306 165554418 71356518 788305814 35464523 947441078 29656816 392865304 427453004 680051239 927154869 944099757 512124090 592771043 156951052 315419798 434209897 876336379 302575183 687094902 176114709 422472069 137723170 522358996 231329498 507462485 616673118 618781218 323514635 624259956 377261400 558714153 979563103 983960503 879916432 905933108 909393061 949341844 748422738 922354568 30366861 353008555 531894762 555491238 844655223 873166129 755884673 769483548 276284438 489937969 579724322 848340976 504136141 727721392 920066980 964358232 216108609 248718119 530838472 834601025 327603226 602185490 453851639 891609137 273622259 760512776 90162130 345932817 375105478 891675695 945759137 994103055 790426142 938100918 692348169 712015865 608482830 609820012 621340082 767104909 708548184 796238190 30221551 623483423 467014477 985494621 289049622 426257429 133937347 246172121 121735083 364190811 449585241 470736908 312141586 492312261 61992022 791059608 451690686 562056625 767853337 797113933 249642275 801497167 377934476 703392439 871430554 984104234 98136305 601509670 932395566 952301260 102762405 597762575 515356668 944765499 132824945 478238413 902092109 941805932 33731220 996797952 611076787 860040913 637605086 957610828 478075725 628512201 29435568 336518761 370353987 944174820 862451856 973220259 363686201 858049006 768007855 925571694 574528262 993957058 660969635 677716348 100594998 772204304 137217131 481671416 207589305 359958131 411848921 759007207 636536183 788454285 679138707 712126677 86445068 463180406 229110500 584058924 746537407 980575081 792278530 984897848 990601858 993365580 933022430 945904908 776251786 798177644 807901780 823340692 331807425 684955050 833931083 957746113 426552430 901412011 784681841 928352383 894220041 977282876 17573051 804603629 22776795 378304964 205553899 537010106 655493359 925465590 596860346 927019813 762481726 821465626 672196933 677561153 709043631 730257456 501559585 576774134 554674088 611634523 442451157 742941114 976681713 998155112 184991336 322493431 167863312 276819444 118103779 656458773 356854060 482700763 972912108 991127984 266002527 700889918 814415180 903160466 127204327 564847587 799365003 884954545 987579698 993698821 496568433 889221844 834415995 935693078 721528572 857397629 745766969 900299748 301891530 415805970 281298194 703110167 896649184 968010891 60755905 697525698 706941909 989806422 445855790 948768580 587304572 728384619 534022061 659411061 982097301 989925836 275691502 498707780 864323856 864401900 777481307 823511509 884347142 950607811 891049767 992264268 47755437 836899980 10212279 901727423 964755895 995637887 839857777 866599414 388204903 819405331 997870557 998824976 8890524 626328679 73575065 519470477 377420578 383762752 833913068 919471096 905981862 924688540 506133330 516075207 270439269 718855697 866161949 989016636 843668837 892812149 85429710 221658524 585144835 811001846 71765641 835459646 690329295 810539718 780697018 815413885 849275633 935574514 649459202 754996115 422805526 737809757 910048151 926711560 468523300 992367143 206785888 857637360 994056744 994127155 346503385 732146178 665952239 919331311 282096257 800580667 340028298 470602927 427455807 497064449 218709021 876925660 900325100 913820770 210858002 924976612 563118658 570195045 570488893 903182809 18538517 886083662 730065693 932099887 737274379 794416661 272233428 498844542 703739965 921889995 544826861 592673844 520556463 895585688 704398729 878000865 757522173 969368827 725107026 940133436 326109995 813228247 940796901 973093440 513946314 638943180 537379286 568203248 752503227 877499626 664592875 915920532 319867441 838333869 749645452 932894102 734403388 775403293 828692661 992642288 608523024 753969342 781614718 893166508 777577321 810698302 598269112 733250263 592566860 863271480 955887595 958853702 163527843 476322959 627302251 694343789 863826704 887421428 691053692 730480240 138130543 630612145 422419670 762976582 677295455 995722059 460910487 475038096 296201874 987629044 354299894 972379539 376679738 635587923 668906926 811782667 268898538 998149989 234868812 639536427 780488250 952729812 991037948 999119903 995116490 995848281 178328808 400825490 776934139 933705075 104498101 310546709 113208384 750272696 605577911 809278461 71861426 826990784 69760212 205339681 829823635 959720016 814964757 850759408 38629371 275785107 158170575 951448543 738471547 871944872 720559647 870773898 584866110 792121919 747909766 839271998 725003221 769236042 709068832 944801945 739234895 828157672 191566015 661676395 265295049 381670776 739155517 915531055 570021274 579544710 521838759 588354250 389192860 613396000 400949083 939674269 495067610 726276935 700343051 788881851 982153018 998119322 544858817 684250761 577473151 761602352 572805288 735845888 216782742 610817889 808396173 946602988 726554304 893475328 64866126 786848760 806812142 895901030 211974141 423396259 998834852 999580345 562437099 675509211 556851983 881079271 798587494 853729672 807468850 937183778 381099947 665907309 424568266 977345234 415982338 588589893 451659008 781054574 695998604 991375352 713252512 729381590 778285202 902157226 979981829 980104432 918476187 998169146 658608358 892641467 214179612 837331592 723526776 915980742 742051950 946870704 210537918 498087345 430923950 786401131 652613057 795995755 837163100 994838945 655215296 684898323 315499699 875993085 338558412 747887573 721553565 826596284 520027497 903147518 613518130 770156548 692214728 736188526 758982567 764681826 248386605 791138534 217378473 432087212 751683791 906574101 622597031 814056988 740112227 924996979 464347971 605361513 660820183 927088608 601534293 674628447 790372786 980912616 32735483 399888597 196794065 532614776 199391287 320762216 876907694 929158419 498134768 975378558 981572340 996324536 651897106 875811672 880965349 940623638 391431109 758505146 427693850 430044452 21566028 283058322 922209655 923684690 160787211 941663195 221669175 461915751 121410397 947367641 133367674 744803644 727955238 960730123 992527099 997724413 787506051 814992111 38414424 741764922 496261683 871591817 122092821 468006506 703052381 795157072 346839127 603352232 999897880 999974223 372368655 466173237 882127897 970979426 868123824 992514278 112950342 405740565 760976507 774680299 52552904 60390948 194212901 355393007 190469022 606888256 435629868 606397003 865037272 975371302 274795663 954700567 649674025 750135322 885637641 965562196 670665822 923433810 203336140 323773383 928782624 997045700 439629242 677837687 165045666 304479227 783632424 934985011 778513463 797843849 892937046 969488884 689320666 853042204 526082329 604698653 606737714 703516852 635228974 925930247 186060225 816810751 366804378 616780432 321468187 727692788 170603182 723233352 742388168 845573422 957698938 971156246 624698006 736755946 553127899 575649443 797182716 957260590 851385426 920846138 765923202 987962962 713053125 839579062 888110764 917404950 179190998 205375946 855669722 904165840 207042952 865717079 179161259 474914590 812606073 846409665 457386835 941271487 20970348 163444919 594119526 899824138 459716990 600911509 622136494 718276293 603507625 971060817 661247141 708868603 468361765 753719049 283116487 331789381 484320187 877392535 432822753 755365852 901622966 921067419 430205021 476564874 716075914 862208857 272393999 511418621 480974790 839111857 926142335 974256934 261505913 810556150 557941388 667275186 774314407 831368082 19108415 441338682 487198229 574216527 345704921 356700826 505748214 959340068 289803037 572992456 173222021 581468776 170341922 948843165 415780247 671724932 574113820 903078367 424709639 670162332 783955301 934613589 907099522 959007647 190375316 316963380 742327956 917712958 551536150 720130444 323919506 337127588 484957453 541633592 975605704 989758348 557751511 786013504 805205562 962374881 189656804 494280755 684198239 909460672 40153898 160462540 688295400 963720780 803638075 869454899 505686952 959063283 768167113 988798427 660167077 937561832 35959176 301044251 626170788 882680558 114382752 841055423 697278908 860986714 968711026 972722634 782942747 922098981 279002872 525435380 64128025 77506826 400461362 730617926 608573224 843672863 441162508 692405656 460335837 553365597 805085491 856344184 729574694 966702109 350365385 617900972 532253410 607924512 847995075 980265354 226225385 514666364 647546573 668749141 308648385 477253004 781106067 973594932 532944638 771879940 287784418 526954609 58603350 59081776 748696806 900238160 851760356 927794635 667710785 956504869 603759659 754991709 624931282 942860225 411794686 942824753 454566524 684091157 457969505 584958806 136922671 322622132 357835800 742182081 757485044 963766323 794742152 890834868 409769050 690484303 706695350 748206431 140612849 777818022 960265697 973108368 232656539 411050463 457831671 853161836 906061120 934682055 803542546 939163701 477845711 481539699 994813947 998103486 468098525 550162713 859038709 988219514 645297520 660117321 807141246 997672077 182487522 563616990 713110886 949000691 657615461 736965036 232976548 367540135 651072989 967747825 306239335 324712602 392728982 461219444 324822731 499119624 37330438 592204796 648531744 766936399 820973670 875880979 131031307 546466995 776856208 779427415 729524234 939254883 3915594 419538077 989736500 994538686 907599713 944009103 645388239 891833162 397489989 660732669 151805411 773357342 793759975 944805828 788187708 918934444 156206487 278201858 63953184 670589149 833366326 885435060 722036194 800679680 258253941 611303130 865477343 889195763 654045994 760623564 867478983 894760347 795420802 921881876 348240183 359612607 100118270 149330823 782960837 995103460 807483446 820607813 950577436 979015534 798961432 972521250 501099192 534266465 380625719 684204539 516636271 977486826 393608014 835425034 552645609 815928468 199749003 404169189 290270515 934048244 310444894 536871346 750245238 850651986 546301175 769339646 219232904 811259260 923229767 926251691 20079756 496591706 218948849 896956423 386452337 930935645 920382843 998274859 38985978 71994614 621213930 905180138 18121652 580590364 665226667 710867793 255939066 704340568 909088916 932694636 72102936 154398036 109082547 816384680 661968809 740599925 652145905 681490343 779378174 893105912 81592346 827476018 45178746 999589554 684881901 734259048 101285361 404541626 594909076 632721809 609254607 970916714 405949793 679420887 263773916 279961058 150541841 845145323 517921764 805404856 52955912 670109025 96093915 296570663 386903457 729562020 339616505 601996419 202020909 802315367 265905114 343741209 122205321 854501375 115837552 478123841 75994634 404228124 970012179 972124599 929690502 950226674 535863271 654418489 462417653 986191403 481643201 645581360 219636601 788468333 130934654 275268134 310917364 436415903 517995975 765670362 627448215 732622017 814998953 875655979 33818509 594850184 961119212 995315367 492061408 936674463 1271331 638547768 858185834 916575246 942878218 996268621 543245361 746339576 579031873 854032689 731829977 747465309 237713952 927203015 332094016 549002987 340263461 769711459 14156854 557591395 988612335 993227954 621299421 646271269 27922025 908439728 51583120 156669399 440611244 703802965 398770489 698243665 232392066 673470724 481586273 669794816 882815871 969648238 861367347 886642012 857476607 892800886 272246985 761924732 545138043 676840045 461485990 799244979 314589896 576431358 988054838 988381424 754338344 793891111 866728389 959729656 264981106 314805762 963272248 983377540 621384869 724608807 100879343 279882712 498975122 917591782 76774506 582838433 456281901 916312420 330708071 865379996 62349794 708391645 875966421 986808627 520124940 671996670 843417423 915177454 491555807 747067075 609922830 654822003 162062405 175839965 219240288 805869376 997938027 999542752 252977891 979900544 715000429 928885023 447971576 534778485 258935310 389936419 415276618 986730999 942383670 997480876 405259514 536437087 407120988 875239437 638359627 709106709 807535552 893879074 594185562 991514210 319787458 586368683 567697635 972827028 917928432 996332344 290319376 679579963 706868960 791557145 10850606 633468434 670065356 816211276 975682136 987561434 94258772 132695701 867997904 870729171 46037074 620897686 342917690 942879592 904243210 925715045 970963606 979459200 53688044 192460138 724721333 974220441 378093565 402742549 366954812 464016792 22781217 461541141 292210182 514298843 589549028 649232538 926365006 937984689 226288553 550126202 389698979 913175966 87489545 131230464 733078237 959841640 673100209 798254524 930977950 950991225 935943737 961300087 176528784 438700307 648384919 724772972 168276297 548965359 932905041 956441896 148178776 957552701 178103663 458375013 180950610 627968044 35171689 661016099 385397175 638378759 353500759 898005524 396803353 825910190 408650862 495325788 28775509 803901546 388238128 938440123 850776656 888742438 960323113 981386733 645044311 970743663 395253629 960861907 36182251 40390576 151333116 275924556 311968837 924460141 442251258 997585110 466966084 573412408 239011318 556898631 693910272 888679116 437769695 443986397 753599075 781854338 483237000 836614606 158198350 387365129 865276227 961369159 824276536 883123920 832099822 919284072 588892640 683740699 855289022 861019960 704013367 840254944 37928753 232299602 551318641 868755139 936756752 980036426 541606533 606827380 824331803 858724738 442446101 807718378 67467752 130636524 532328580 835333927 880328418 976090747 188173865 220710534 300158530 856833710 970012380 993916867 213258901 647441167 943508512 956763034 126650088 187929792 274735111 582793082 704850102 977825279 442273216 747599223 188849827 811095161 996437855 999178897 473916584 600148237 770255971 839144573 737164594 803541356 631120259 997552826 2305551 913148919 75388364 638063790 982044719 983760337 778394329 997327995 997118475 998472713 506848868 658652178 396430017 523495768 88678193 704836708 183007586 194526222 382014105 424718187 436090146 513172978 83383195 951066936 684974461 830879603 539270903 715099335 622953456 857254857 228319239 402457269 622777554 966917803 400533659 996519709 354658490 477026239 337169217 876798526 702657452 915001648 261215324 786241774 296254054 496242708 925815394 988501646 890929590 985174014 598473683 760269329 873580174 998167764 273893536 622318110 556418385 908647747 715698695 717186783 521277108 593989680 853792499 869871165 149702601 421063551 401124981 977580871 765766406 906285502 181924393 332645213 542336186 788864069 725888495 900567012 785981730 956135830 892906871 982478082 466610723 714295518 947562507 995633903 700725977 794244520 354814527 923943010 408805626 852123751 925157289 990148835 156458693 885637302 849445795 922889576 400575240 410575300 93345713 433548685 795086317 852666971 774785665 997676849 545215949 857911818 119199887 269296288 842792890 920426921 900915361 945832448 258911623 573143691 8982460 491109444 208859005 313395438 610656115 655060008 718835500 914958044 376476674 946934391 119713300 416079548 153292593 589128901 378623483 823199574 943046083 952831715 193213848 405801954 85780357 790234090 714533308 977544411 378907196 841910875 370972768 426023447 414773406 636643313 828297222 996939022 454449132 544418833 363669707 536120382 557101262 860627033 479321298 642624800 108926190 307151131 495766744 496342801 669889973 962113516 961695358 986515212 484885577 827342372 415635446 592378991 51540125 401638216 521352095 871210594 601612777 658916573 517457525 947341210 503356204 581201471 463225578 470216030 617533443 969650882 979932725 987917923 874970741 940373696 351483501 455618217 237422099 562207931 223926427 683396651 703158519 788638859 907220293 954349935 180467004 194433165 103884849 485678678 906957780 983831236 211256124 777861527 381665546 852239466 51815039 896731038 384531632 584680046 592465826 705836492 532402969 593216947 151845016 561547393 139236902 146674073 72223893 105963018 834948063 859080505 739288642 939584012 885047101 930037225 464467026 644704298 11352671 867010243 206498976 600483362 608094899 798564691 487616533 861694798 557473576 771166954 555974822 988097149 771527464 921319487 734500797 914946752 240720475 335985414 698496768 953401608 833882126 897263416 563531094 606000635 321324676 774940050 632365386 915651138 87763713 104748501 263986200 767421159 93166175 179467132 303463037 455453716 816064295 861384019 549914903 670986984 672912725 946476421 555003662 933144761 750114983 750974960 226649499 654910585 436310709 711275168 797473619 979729076 684551121 834372718 324233035 712113337 161028139 498553851 622430382 912654140 373630373 702997474 65591640 214673659 661687494 980533788 218529236 404176055 342247327 786587935 240022519 624812892 815686803 918782946 566236789 776344796 248486614 500448776 937944340 980410105 545796755 855953318 841549157 850327647 451462841 532471450 390410438 587268244 945975954 959354518 86502121 977260250 112602436 765006516 849937888 896460269 333858247 751723132 970965225 993600502 662204669 771223003 712081542 720482781 588748342 842611169 634559084 683181494 147849607 170869254 487274123 579535237 700471212 980358522 302081377 824183601 161748340 222230508 460148947 600963409 701119456 752342619 163445809 508869524 1313280 408125186 387115616 830869936 888085595 927852557 736563974 744833214 412100856 902033988 708864794 801091669 734191612 743093518 344628675 376653784 211483167 479012918 29654804 465875590 896298246 927053957 743494552 899550759 45732901 920322449 315610267 363096251 961983060 970580531 48524600 325806882 359252574 814114584 502816664 773388617 769607928 991367141 656413617 787354554 364846923 608892802 515397150 753474055 947439632 995780028 493998611 566722784 281202352 841180342 539036024 684517391 620048587 663678719 940468982 942162462 186818825 267876592 514565423 811272597 389351992 418983822 624694918 701137683 144993973 800200117 707024163 971344065 675245493 817057748 981613185 992305766 73384582 828429884 608989523 653495163 63832757 189995817 814028496 983565882 702891484 998086958 982738538 986013266 527230914 765044985 38473001 275247231 49764993 167107793 17683791 962339646 501980484 774987936 73101937 221298737 665749566 707382818 614439549 821568266 876324456 997442032 264089733 618805708 612725099 817331988 598248445 609074784 80145752 905823462 405964231 526956012 341851836 778271943 152660271 457286021 84211856 955631836 92240539 831449025 711174388 900435568 827440056 935798793 639915229 725983876 960600901 961653783 108297316 928882447 976920321 991868929 153342310 834802073 992229237 997428919 839833795 891688519 231910090 617436669 20338323 83603247 407358419 947043494 210777242 780266865 569954170 926507012 512480699 884114402 301897082 509043541 178917062 971848414 724193560 809957387 570472092 883925997 393106092 457269525 298461382 661284326 191476026 552735693 899940651 906815911 125432379 748204676 644017625 861555206 667162579 897799113 518000246 919172270 964187162 992679578 934498203 992112909 362628373 617107225 140955083 549193034 225370271 741764651 751222421 798800718 199094907 416451473 742785680 920093315 319273100 713157428 323312388 993026558 843350492 938751088 526660032 937444687 622829921 915228126 263233541 973320255 863170762 874029933 955095768 990252488 625110754 957430616 529149443 673289229 809620129 860698970 916113923 950563205 542118300 565796117 812668221 913896636 914295800 965104476 335351055 911244043 130410954 199651275 173098636 612847222 242638333 557261207 768499484 792796066 612181592 791648584 452881451 674634917 188041672 221317918 347102232 547732731 850064068 948320187 414595794 943077169 218698627 945755369 369154291 412424703 673546695 940229650 892555114 966920965 706054910 812160060 882389480 981486754 18709121 383821170 642652896 839923586 90200259 421614648 769633589 783163938 739695696 891024296 277147731 520586243 608072580 763060757 225540461 759128062 433739717 885563491 517321825 924594996 933120858 978135706 763208692 797132261 104106974 165056988 622439685 860608768 163193097 957966333 24254648 363262082 854882034 880407371 187608182 210334402 67077242 234388494 41049276 563280125 147543395 458405946 771071556 875958075 85800371 236599356 906065001 972790304 163137466 981228630 699280534 825594742 528724295 651304036 264464765 523029626 205867858 223264510 91126501 243430084 926024479 976895972 258899016 578391441 807917095 865336379 290393375 716334176 156723679 538645407 620246023 633874784 874222140 894376508 75782739 548437783 596330317 908008852 958003141 984600692 774583209 996805946 473308839 543357382 989059415 993435504 477175057 646756485 244050608 442447328 417142157 968659947 916850807 954030645 16620482 286863540 665377475 783146956 179040298 872509080 792374411 805094446 394569566 811999256 290649259 773680995 406150104 898945502 927111204 941998765 580448607 642053916 468794815 753514268 890391994 912669259 520404686 954059268 366738437 970445591 584274872 601529282 872498833 973521425 73608405 643444498 109474544 486437520 237161360 313050382 749767698 784856586 561128662 698568068 381111483 426078036 591504412 879589525 21822318 615032570 470634214 649458652 435341456 641631512 289377775 335922798 488189437 809837142 481227327 517555711 399053385 911920361 346348158 574120037 552921246 568784690 930702994 977262360 633437430 833649127 551662421 861799813 600896109 873495468 737043991 888568023 799867603 818703455 496592547 761528287 616571605 994562502 309395436 433244232 420398366 890550183 551969118 586011801 890945164 946617642 843107631 919738909 563139495 707542132 103224571 722866723 568784673 909576538 181389541 320663783 479196647 594893264 375729336 596903877 188347856 892727390 872931271 949122989 382102845 568575978 68221331 211137184 563424575 786474920 878560599 932556497 768846947 792075781 589942502 885486686 641124178 697407766 22471378 849725035 344691638 984617189 795060149 955051020 912193714 964116303 94457187 704211153 212078629 659955631 273978522 362323595 911391975 934096683 132510273 962602011 522014176 554710417 871852189 993218268 968853500 972993021 340188810 725440703 203576818 756850634 220178679 265843422 322246184 855712934 289683262 425315212 157095967 646868493 737453501 908598743 706155000 764658057 474569499 599707415 393468394 492969649 324472619 615819275 508231351 919067702 100151709 665884809 731382782 743626082 294872457 989818255 610557370 930145937 959660167 985311892 508070122 616941318 24667557 151451233 96782888 108057849 459164580 476396198 503081906 570527574 301901243 442767489 918462650 992393481 758526818 963767715 252003896 411805645 533169833 726457728 585478141 627447594 986003684 990558627 311122487 577092599 690192720 927954106 248203238 748010018 958023271 986107101 189401143 887665151 418541319 591136256 497177231 602813501 180912130 808802085 811317947 823341464 860995512 964057863 735446922 949602358 113023236 839736070 601175237 997165693 547198349 610660413 766054036 907727841 574539008 814962813 672859070 993145404 116817913 697232924 766791883 783788263 515050604 665093863 77687528 812308048 510369531 722061025 528251140 903874822 93677085 433124430 917202675 990903685 251060989 405918368 923232637 974306897 861399449 883722683 898561893 948905141 287519884 656710484 762028607 887704987 266689616 511813515 757731750 898485999 842179177 856050106 962038678 972391796 540120570 907779539 979411873 994991455 266435592 736545046 385634575 607094914 610462777 759721650 387235775 492154652 859250692 863333223 304013326 534813359 666213192 816799861 82003622 878035322 54455880 212802875 75777620 119245698 201737504 865855223 628055700 703545410 733377140 803497348 562406757 979939912 886541103 957739726 174192856 570594096 814324484 950653488 795786610 899105434 314865278 519617333 840375441 992590293 607463586 661421578 512526328 853170198 637926296 925608765 479640291 966143815 621026446 674256156 480876995 531988586 396801013 666621940 778565022 965471096 365039398 449867127 374414240 646618627 438118170 443598527 941001855 973592376 382709474 902937178 823532787 991133995 790025912 965914658 106465530 282882244 410608492 760448423 411614160 951051520 835258624 980342692 300757427 804893353 151858532 171708740 139237684 862273261 391424038 471147412 568190155 750989559 689875982 843615007 66055763 555748963 876885001 938817905 592942509 773511692 918131310 954124645 947189663 970921307 737556943 917890032 339477920 732191723 684512407 712083715 937583949 948625202 476551777 933920137 40898844 355513387 746591938 784587536 64915643 926940781 90799025 875203140 326236635 614838468 597006164 909039864 170974535 475725012 867650048 962871491 934896418 938406319 441204633 571677923 285959531 893273117 820718218 964612720 846247846 869253093 436320812 491928419 40626316 696382495 388850099 724670555 289476109 345039178 669813779 965296056 739308553 963028647 96846151 735849209 482004038 542638265 65728349 975423924 624587729 808009723 797630915 937429378 967791992 985400343 575631001 897611001 624929712 683638984 659633153 708437314 693207070 915139416 437450109 503629232 795845779 925594077 919903008 929981398 303978708 879703725 806919818 943171442 553302220 724785274 283943898 677442831 390071455 393879606 509415158 673322923 787252812 996708923 34282494 263579051 798774568 929407027 193358312 915817787 451961069 565420397 989822334 990096266 459226732 733196859 256950369 601084792 748436263 820874199 790964750 950565344 619951123 806861329 342854798 687243948 488579209 621820619 369528933 637023008 485290382 802823369 142761563 755339714 846764828 907698361 897226063 940810612 800084266 866876431 541905895 572683080 782699277 996032562 991190358 994961066 169008406 767581494 192428967 883357741 744920331 988910277 831873730 921544595 806256263 964058839 294937895 321946913 701706421 824257500 436226677 576257394 197313859 615731469 593181010 796315785 937704104 980306294 548699178 789423621 479426933 975783393 685328166 894626027 801023701 849012101 561193659 683645150 890637210 986997884 267206583 867577619 853813587 868697245 472167743 643556834 458589221 716024283 755526141 831097239 459350850 880280767 483562844 904493374 518867162 687038020 37344224 237626572 217725672 304369236 17362327 390462413 544224796 619689636 468586207 547197390 668462855 932575003 776932231 914712289 921089579 961053404 69460299 357824203 538285755 962288331 171834099 300003484 368181109 585703319 993542198 998987120 86358959 175998266 163135751 824322164 396565983 553426030 993046562 995563189 55670419 558220806 943911711 969680172 812377582 817106537 282103030 424082045 317599469 527989169 967766907 984968319 117536091 848704511 213680761 235223991 263957499 487022485 493659321 768844929 933170475 988153858 57383151 638432112 26302515 969125413 300084266 346899490 150182942 588747875 794898978 842432634 202953249 229153803 588670573 908620030 396717486 812226363 608810980 983728818 222843472 723285340 178535720 912663640 29460891 990853371 946256461 963158516 219907056 567069032 479646227 725210108 805464873 940933735 21400970 286022781 499534289 874083921 447466640 726483811 542304151 562633919 152561863 851903416 489828197 905919619 887965850 930155948 972773307 993753759 897585655 906728672 707638592 838129336 407800856 419380739 241168534 705110245 81801879 707026013 390926082 430615492 838830857 878387417 593949336 994877738 677220790 867839345 73403818 964349736 295322933 710383665 732524400 841929523 655129074 826604052 940068152 984410504 478854770 989530347 437944163 729979061 420592014 721211226 584854540 700546156 682838467 987479800 209502413 977313998 309777486 890371074 291287907 863669105 251390020 346650983 198557632 220146836 498191607 740074385 222471383 235308062 441293076 861185498 509095785 927577034 653289447 687350813 429654817 764219927 548570977 642791553 372119054 567612323 879005528 907457472 12921609 646615655 928030906 940173110 789441957 893004672 732441806 843363489 110379976 537657003 987982737 995556790 285773793 755435534 602232622 769393161 780777061 817200661 32225756 995710952 132885121 545006939 157442765 502290405 566730555 595080135 325463282 399353710 958587296 968570137 364927463 555599549 916723111 944147890 694048000 833938020 693993334 888065990 492360495 739127186 77045892 425694943 796219971 845754967 90416153 95256693 224911337 971463454 429729629 856413390 290064028 788231267 670902372 908666528 632959991 938685749 910071704 925983405 407285411 534247173 917905414 952489534 365126578 737435132 7611653 370412387 951014995 975558804 802074301 955053524 630856233 840633397 95507286 711813257 10246713 463964996 275754806 338236502 648025518 670200598 31067994 377240639 543265676 922717658 609274091 863810483 353422302 447760997 353249744 864815238 704744423 814560481 164080959 738983155 166400744 665461266 251012708 668179853 67720622 357344040 532324742 834555719 255437075 924989959 348030572 757725587 51369919 427358560 481798902 702003154 240149542 657974282 18264227 537116435 646735302 950426396 557014930 762031079 411769707 699332230 78167646 982878957 603395376 704068971 151983290 935398169 287460603 472654748 731999882 815315478 176753982 814782407 329429350 872400533 351747539 363734722 684522961 828553030 143708711 525734843 110312097 208334626 557665125 742403480 752978989 887258700 498812465 778088455 340748240 787631491 72302097 519711457 94579638 380779194 55214908 244416119 84668175 179235205 591334502 664554396 980580303 996609094 733000798 918646232 780701080 918856892 38216936 366696729 725668523 793987854 148132295 246477691 544936737 572588710 42750593 377772482 227583053 425631528 715310456 961321593 652642466 931577912 567506965 687891309 429199688 754651733 68941022 866842604 87022205 431238835 796707801 944159421 661187840 791299103 674384298 712458308 494453821 585713306 26263053 74578017 197693730 791931181 486538628 801663130 761382866 776759069 873846181 884438811 671174194 727104645 916315906 937826483 308317238 376339502 837985894 889656943 259516398 463032121 281381943 308642435 462771666 873742341 237394039 971874088 102091747 833433936 465828196 905953138 340638880 829170238 92225195 374939903 489119579 950684234 141804499 261109153 825404235 849998568 239840179 610361472 879052479 920802964 352508876 755997527 955805540 983325654 411009075 926576902 484987999 993438162 9279516 330619656 642833432 969160129 943669309 968151244 57271783 317440236 143632442 602540568 462464106 839912961 410683805 957683032 782337209 947190070 923724001 951520053 992988054 996300629 413178085 978031837 765169193 881260992 76961409 695777906 37576105 521264421 334922709 747233669 441752301 534142852 286271321 745870710 102930248 391552531 307632032 683249893 58020991 722984506 448845691 739851099 851759154 917032167 500622340 679027390 28540010 197142107 848522623 968361815 600828814 751373036 715737647 747110205 681325961 737015286 477345083 690190337 964708130 998419029 143334099 303364939 424687395 688918751 563099477 720716011 381318700 446184249 133374471 638451734 264719314 474546993 148108601 826287968 748353353 955453680 935161129 980246192 964560952 986891103 543299760 696769601 703126645 932015997 349233527 729324875 841531642 951188584 592780378 853440981 410825901 470354050 944463685 960840449 364971098 900178645 579913029 999821341 630716838 923686737 544281825 586825798 663639629 814075981 815303775 975609808 995142043 997009074 19890582 612278303 534358902 829723166 402625458 778562368 670574386 785695255 633771559 814234941 285307055 918647208 600534540 879159288 839256744 939431620 642380193 725206062 469129374 585974844 955542840 969700460 512178303 720655475 9260413 881699302 961401902 996660786 162027163 507062213 807462862 844501478 569477830 582823478 471018730 999178855 77286818 976608205 814986371 930305984 700874766 756952080 754490715 767567242 846847368 931505834 47815206 610330955 499718085 864003413 91078082 906486207 401290757 917421473 60142506 926447872 268047756 447701816 413228288 624118437 78119315 136367900 27062700 969604273 786594122 822196389 292750006 752107557 64452816 575213496 51369914 211249006 771354877 890137002 990290256 991518101 4761513 922186384 170892102 803960299 430148664 679902481 310571815 379996080 405421799 982671551 650013525 807873391 684535776 963856484 688715413 721116547 897318620 994827670 297123410 951588048 848593071 971459315 621195424 627108348 615673774 786404348 50308545 901274224 547746893 657639017 432338378 527860121 226645151 888165908 404999207 594733244 208088312 875560459 624810541 939118377 207766092 525419410 188617345 803241018 393774736 717105996 9702639 617533087 962403908 978531569 904471784 962072784 912668364 941696288 554790798 963705681 969067230 969505435 199511813 405652609 879329238 997879777 894882663 932661246 70954978 345091409 766710959 837290256 548899489 942817604 192354654 237171861 619914840 977891119 203720860 958465812 112480118 219307384 937007604 985181363 935571278 962583000 535722269 984408381 720661251 765275181 729431610 795408504 145689820 896435527 174155429 701070685 822161515 887223723 132718506 190578846 502960473 929375303 40452010 633707723 147504519 756533721 347779222 588358317 481247366 885454345 327500117 809107207 141261208 329631414 504992994 628334797 688288763 948572023 464030098 947564234 538341337 679401519 274230187 546676823 365847574 647341708 138151145 766923069 718800394 765751289 445298882 799263455 918193217 948909347 374440715 808323694 375102050 576185655 549781492 849086520 528670167 901099861 785249532 975775515 576120194 932694939 37276959 408970622 241453308 590392191 6497263 382166776 715298894 961713166 620702571 864211316 46765011 971780725 473144768 733970938 907702466 963551262 454356240 470011475 564122748 605342226 887370984 977893170 679547879 957215211 202198075 277650624 415424980 728610544 961596520 983600015 311163091 466183204 462179920 764501506 809417572 852552569 706689492 857753061 22317677 525193737 814091048 935038486 49645338 937061322 226439748 403195611 217916951 882866678 655855137 974847786 383809381 510633898 583513891 968134526 283375726 287262922 788994773 824753484 469404541 551081718 237216903 855259451 914508663 958470453 719677257 984207361 112574139 422595495 592897185 643208722 352486933 495379676 504728655 973704085 695213520 967902030 91307642 376819497 443365055 779497953 960951410 983884049 232225743 446951825 726972227 745656959 22454963 694362435 316606729 832311564 330598473 519434376 473652721 853164679 455281019 779337345 996139221 999990579 359621915 456404423 411428781 570800552 342007786 744710703 809214793 896088141 45804302 212067250 435626239 738531209 721013441 941106291 783145805 905111650 373167342 806626385 845721785 986122931 307018086 775837321 506228880 599301951 419237190 551901268 750234690 817237684 40281014 960366216 481186344 673355193 65906498 771577224 401679102 876005155 373459292 589456130 346094411 683493505 146717359 312432957 699666091 990462864 197702012 412118024 657268862 824341279 66557531 264232985 471589306 593876748 21328182 58441184 739041468 911042486 468524221 837338760 546786063 743727770 634454416 969901409 387718268 983342070 709204221 978012912 440867790 757840845 955543827 968681641 727954120 778283457 982495584 996321867 870026754 908054730 917366537 999935443 839551997 969140478 463538791 759297482 685622018 828417459 484456124 999158420 525610241 564660567 693163946 881144391 957314298 975726731 954741157 983114627 469564899 792468323 217997624 820464646 521065418 611886049 145832085 765046788 27442993 91766087 630711283 962459620 493337697 560950045 78130454 131073655 679500498 717992669 60013360 503685639 75448909 118599118 270470529 449237248 551188262 972313631 388794678 649484816 478939683 716522538 311453164 949177176 805232705 970947564 29837125 333468120 277912504 851900447 249512997 420758368 114064217 467822778 470703612 921168862 347213156 955453858 706452939 920711744 88904243 972059451 449324134 559825076 772482125 899616794 380714462 510194714 140049647 504258094 409534838 859358902 888525516 984696743 93280062 339168511 287671771 810006201 903686413 959698528 341077605 670348543 517835268 677838983 347324319 852606579 890496052 999033833 460099788 708853522 171894704 457678327 504852199 572808387 357789495 439955533 146082998 242490155 770510546 952699103 226475019 737583037 468702299 787391777 407609398 840954912 484442736 529681433 620671873 889243136 955530918 974840693 143564568 742503874 109667650 829044858 354550459 454715877 264221418 667236785 489349713 575761406 669667084 796039675 937635027 987450981 654556848 680871479 129575207 285961387 874159771 877822995 916489877 943862586 850412678 860938034 503179732 900427298 882386809 893267222 115838697 348539669 665959605 787016834 69145280 786140546 491805423 803150886 404446505 814082671 647672868 867312530 671101322 955754789 323616238 964812799 760366674 912775000 24377433 72207189 325684362 905690021 39315530 839771670 417522183 917592604 989756262 996228555 551407749 561447420 883989514 975771112 604701077 960074721 889803520 952313693 273370054 770135325 336373804 762498342 246812480 970990876 269632072 769488937 105788968 471505139 638744639 695791236 862562556 906910254 855391885 875884697 779736400 992282160 832401029 885217060 410461240 803385920 406835355 547472093 24669570 637003946 382300740 781862157 993743820 995039095 218979792 289510817 888341942 928510707 569467120 668373715 533457933 536990774 864931550 888984885 60329073 774725322 461939793 967453965 397048928 966598129 242338119 938281718 449643110 968794375 122117000 799909385 850840381 950921429 984302396 991169351 121260918 528348386 819527402 843240286 959243476 997750828 276545913 929998538 64962033 891382914 453096495 730237332 303309404 579601959 22495179 171045411 224076698 412736574 952161825 963217292 380687447 726127163 812677753 874299020 830784739 850324682 537114941 655626614 71783263 558646916 371350763 671107200 359813153 377010678 844589228 984515195 28372337 354483993 161983875 235712681 973557437 984588215 675247427 721306848 978517913 998881267 977520791 984201784 770009188 904473751 236598085 512402742 353270421 417327526 698458578 874328564 231219755 338732614 670341680 938163605 939154062 984362189 404225416 564635833 203534787 769209983 548272612 615059838 688551860 839128765 437789455 468330608 932859584 998577130 692713076 758661657 17078746 36461858 441230175 751931166 403119374 627245357 204912209 798041994 843239509 913393492 71791259 815370841 105833947 130057001 232523210 674647320 819996466 900091062 743929981 802945746 64081139 219169367 934788552 990957159 620311956 752860493 264048560 784994191 620881203 740690749 851030116 992890393 746663420 800120095 380996329 511723763 393965377 666235491 732102537 799733806 385932511 860020881 234686315 743523513 991279564 994407518 536867593 689647331 702954968 774839755 80578503 391268569 89141342 443504584 413959078 739243905 551361570 588241787 611447705 903332771 785332012 913262230 444667177 998163926 474280255 506684486 177848716 848112299 787522157 882408358 124708413 231877774 208690939 256827510 559516778 799356043 187356811 913832025 92759614 312273921 465578779 589407352 922267690 979512314 509391999 629706816 699310128 803889902 264069600 594541141 631836414 752759339 708571 156593937 638820826 897138108 876702496 960515783 443776246 886754818 491979510 513644326 434256637 818437603 374589592 989135907 386641424 950074243 129933926 224170492 104396351 288442714 851781884 891312625 686184133 710916384 38547868 409975355 184619938 961649558 972095002 978492727 730567129 982308971 883432442 916725325 57296502 259806558 278067127 717608056 480163008 946368573 144163250 959375056 18660748 649225549 290553571 714206943 310733733 647571817 795974095 974644502 857597065 968973523 184749133 911026345 799772800 887155200 884403984 897040806 192025647 846690086 618896993 899373929 538340147 891458145 965569747 998865811 188591463 671410709 459643794 965085141 478219498 844630935 467858669 760471300 451914105 711646482 690974 695030724 624261367 944200722 265902323 517635714 98652282 675822936 461156483 616966419 755145466 974541017 635293311 957245363 438520797 657054389 951113989 990582517 109820138 696072256 577539042 777666355 556752060 584663483 949020870 978469649 673591264 779529958 44490679 385988253 88120182 719703437 376291720 888742223 3998307 281787104 307910097 883596935 501168339 785564218 892180696 931248164 72070521 80335905 856152467 952767289 688483777 935556210 284207883 709297187 135954458 150170844 165676009 902472351 66396015 215614370 270880419 694077692 615891993 791590109 999269591 999465001 470488451 775676916 240814806 279402624 597189570 907025754 931065716 960107397 817974175 846696261 682350219 819026108 584764768 603925904 687336100 731163996 924141877 986096947 246902768 774882916 655872358 657309185 550735077 830024667 122229843 538577005 830433951 952936970 396695098 694123709 431334293 641158575 78931761 641781573 283092744 690989567 238302172 444346953 464284680 864008766 996383279 996837523 467383778 892834065 515383241 554080461 448479481 648151211 633994972 738819916 444992377 854979878 877397596 938234144 745114464 879764108 799969187 953866222 946433037 990880490 841372387 951787429 431936249 791206132 479323076 819720999 437882409 779761935 832857725 848369728 653957677 916127214 996938186 997634489 708814676 889271240 293495642 555756079 326207808 723988015 189165990 442770086 543400548 723360313 667035566 978903359 494537303 641003145 608211578 690448175 942744682 978433056 40074432 827312246 541200545 586461213 178276565 941780174 693171759 791787263 81297394 740543381 108180036 801909595 574308422 775566586 847435234 891033143 124234191 547122803 633229332 789124263 790566680 980440357 678009732 813293263 673080323 788769357 550994507 879016474 908543330 989189295 149037951 253366287 844701544 966173479 190109456 784108296 732919052 877554797 659177114 780598622 662210766 962467273 435538530 884420817 956416241 969407500 348386137 585877318 183259626 276843454 649760364 948735183 202129232 549554002 424040918 603608830 371437211 763845251 807872740 920664304 217511502 570608772 545516706 645212114 738126245 835651622 70731112 470586619 893239174 986900864 647738106 799946194 122332969 924973250 195911908 891272971 96749664 428877220 502595592 659418978 382606020 773792194 858390436 935300638 207042834 748964710 719368959 823759398 259306315 436562024 577855216 733694395 304261519 396651074 962740457 973734108 29785223 767448402 416206034 928140585 767236101 903198850 557938545 877784235 66034079 750438670 75932042 137551346 206252732 477452800 593313770 739598986 350628179 579248029 866237656 989183890 581175378 725668803 826196561 972102108 277436150 501437214 70126540 662206356 542406 239744411 527482073 832950566 761352313 975281603 317608738 623274123 638460386 714286449 341179479 607194229 546582126 682875387 272772455 973823688 979887179 998834887 496401043 538086070 770022993 856605155 113335878 650678949 152395349 842727883 793164531 932729765 950374938 994412906 935740434 975376314 693669675 812858203 56347254 922786771 771704640 810720171 15466540 880877766 540516870 549462936 984001197 988463849 127162131 240863444 469110191 576135994 513939361 623452584 617534543 963068584 419833949 649427960 40587003 55576205 101086930 367031760 281144375 555700957 870957345 881780019 319328415 993497113 127642635 485630668 884131654 921942631 433085239 715510343 413234081 602189675 403209939 901332160 728172347 970701788 59198333 205592219 660435227 893477607 817624819 822082687 957761180 998170705 699216103 899274550 430714463 763546878 129577155 265673356 323966257 462119799 506717235 593073796 365138739 872087106 625809245 800488813 493678927 776206865 371681186 390099735 862417301 950576164 789016056 980898996 435209277 527745471 212991455 304210032 272654623 555189678 382013824 815638278 385432583 410728193 417763801 631652167 816938766 918283192 572981578 734555145 181497131 563109288 748387178 865425747 619223730 776979587 963365211 975812119 195702061 802411263 706261298 977137852 325437054 930001622 892659404 929808062 359438139 822811716 20642592 219531248 39208343 127557535 364442507 372155946 903321776 934212875 661855300 964652259 279211060 380784996 960622368 994939337 474909123 625146123 395055204 967067514 752158777 847187426 244499897 769530242 136392905 643347646 441624639 649334544 705185958 852289399 933698550 985930998 188736981 808876195 201425564 739266380 20719876 573454371 661012241 893641718 2536794 865786492 147024902 432544881 908109409 917538840 520504443 775166016 425223962 492711346 168287359 703336562 213953758 546919342 988480990 995624809 422359900 762693893 982598460 995695838 874717693 982983964 439965637 504872303 947207410 955776809 177150604 465174441 912161343 979764428 912302202 945823952 920587390 996420218 152690758 839549472 772371005 790237758 597569028 645374377 20144891 793071479 539510102 547655095 31780222 592826224 429399800 658545923 314771401 529164328 569039949 806909964 994404443 994897291 351951447 980495650 483538531 489075522 425179555 454598227 608161022 906825020 552045887 785541034 12609572 235403045 666059203 776085672 596631723 681459070 936464703 947428466 720207551 815961310 31679158 248874165 48082930 724455459 258595078 385644792 241806688 711576310 111881446 745545958 982639165 983790455 311921986 463091917 240994358 821823484 809760959 928169261 594147194 656780311 159077238 802644132 879530489 950100233 379379558 569048109 948219569 967082254 178625419 555867069 505887352 892940912 690193349 953789142 625582273 854942466 207174313 785948435 764941807 984105256 877900896 931051447 649052405 677926176 477571187 847593443 51802074 859493016 859151548 884967768 932204628 959474934 22432007 507100051 195143762 792387425 416979181 647610095 763903353 890235222 585700894 943275518 784481567 930630010 428183713 935984895 769937357 813967630 541482643 788062734 273766130 778731065 986541439 990808476 288234175 923497152 921719616 949683121 178410547 760038687 564453820 826469515 275077483 852337061 954699283 987756710 201549168 540801800 144869893 541961374 917440995 983619020 31947715 833946576 856936234 962422915 740103890 902049465 60688810 853957871 721951686 802157820 682814307 770619595 100561530 359672115 465578304 867840065 196144516 964389063 641419009 943958757 772075184 861604384 431738889 667647522 635343972 990644377 574410285 877552353 847345094 979349132 218327271 532718533 469114608 838838986 610360160 626250781 595317420 641593254 201070662 270367368 487488766 668507144 24230032 662658813 589095856 678819506 210710352 724837510 180463789 649680902 42173889 882253696 811389694 850524148 57491774 118424179 278718203 864007347 243026483 947418514 848868906 870300019 655475103 711191166 353088415 515523973 29094304 437728294 375966694 947059623 374347502 414507065 831880781 903064543 764372702 877874110 42193730 603203823 130005347 414977831 871150335 899472407 607666657 625317925 677411256 954452055 545664482 985324637 962052876 967962438 606516157 700666713 220395558 271653405 461152779 765382053 419011788 718433489 124642894 338475943 953733137 978434297 648183766 894202610 11312657 878450740 478665363 942610571 944990102 975235416 468767225 964277491 308743188 491165529 412478827 786618160 979105316 996153222 828476423 955903335 69022366 388700373 537881314 545997614 707013390 910251108 711749937 937691696 641542427 708933535 384182904 808750083 717354387 756637158 227540678 587209461 28932790 567326481 872222179 949891496 947240963 992893840 322843152 798467928 833771613 862533453 832369376 990158589 648118810 793545939 407827421 594072907 483912754 943883199 392989158 965912502 431784099 652449371 824812914 912855715 248214095 682473473 713625155 858083607 947519498 970446617 847604788 904031358 978066841 989091017 605073253 978644175 692423807 882040295 174749699 437750411 615041588 962312034 708595970 790049857 573054508 915157563 912770714 944857514 52406338 440328236 589473485 692194958 234882304 297513471 179462335 280896886 184865357 687014115 603185381 798350498 284885651 985938984 81458958 249920227 513905253 598057207 55652982 149237674 698465524 810470893 275575828 733985706 770889548 781683455 513314271 769723617 21309264 906999767 794960326 916189367 924278641 976949580 948175215 958236630 610502074 952790711 266806846 313426626 884435937 981392888 655744575 658392667 774944516 858725753 227977111 361141758 522052452 694153876 742861917 974518242 869113712 988618232 902902345 964955573 81387038 298788592 801613345 931850550 521446931 892818193 503620764 907427461 507828932 510772164 659248957 751878057 37938704 604410380 678545560 805794879 462523001 778141141 347603268 891183188 827307831 980553773 272584912 292839708 602533992 980318228 145184827 655307063 119351283 580663973 48940193 170097690 117268757 705082962 659865870 878828628 563323244 685486920 767945735 930734142 664813081 857211278 294522721 712662634 790310036 983028936 684716948 982293509 974571733 993260616 129782836 239219678 177182699 523638473 852960644 906019848 934171643 983968485 501349720 867919126 589199475 694147554 989447500 994132225 197362767 999890134 576110475 950181938 707310672 841419463 345992402 970919168 763677003 891085287 755278307 970438313 937929713 960743732 308040929 602329193 767968305 883931687 983837623 997251931 287628718 665745595 909575888 925249584 774780307 800349837 586546871 941924384 610063732 907723649 510774988 887479752 257803789 380470486 97630408 844657919 369892591 790617229 160026159 190502564 701284398 878388936 425434871 861622178 564140654 977360763 842283956 855389325 984258387 985267923 352408532 970837950 1342132 476522183 178548850 841100203 962053697 963575297 66989253 500852571 679366315 905464594 726445206 797861345 686305785 925861076 889767044 954666284 826876716 924714497 868552254 922711193 856366658 891662180 602489815 688860640 865198612 902516524 379130258 536134023 405668626 740378331 12679687 615484309 775753514 874789389 624040366 692910193 687648578 824234481 938884560 990050824 522707136 654791193 922961711 961316629 688003999 703647136 832493629 862638764 92353458 373228068 859885249 903733815 41243622 724959491 797805386 806075250 998055567 998105588 733481587 823441232 298388708 815329152 167978163 515255200 313962284 531966563 862683674 978684950 937053703 951196676 612318444 636704023 786673124 906583252 551891166 888167833 470216852 520596979 943583847 975174379 503452478 663293730 201622454 390679205 351376943 777200053 337695356 504434207 208760343 400524364 898441734 973879711 853865211 956079993 304124638 334915699 517383673 648781533 777514456 798661874 30591897 407648823 780196054 994118548 596612471 832943270 244219212 336244561 602734929 709696266 164543537 774350701 750297175 978326080 750508181 994459621 655559514 950511351 438412167 522559512 843870708 922036235 651832223 911293332 251102513 471724600 929927329 966220353 592913644 937791840 631444417 724442887 207129456 236594907 812465552 821778220 550751866 619477908 384487216 991430087 779918704 841045179 53742756 883026107 529804443 832236831 104312370 138931629 124387708 249122048 565464809 810101062 503632667 571213435 11350099 539777841 86100253 436911293 265566172 718417308 116576777 135839869 654354125 853971008 441526685 821274618 232274009 639586869 881065938 953444327 278281788 768521072 626286755 734839262 101155029 318134264 153663354 502404532 180787012 188799006 105067101 319619959 37465952 73806028 13265982 934403892 983038722 987293229 48574060 266712143 908548463 980887888 569963850 782060619 998342012 998808357 163454674 416625339 775836811 839547846 78877619 591546446 329478152 513059273 936742629 998323650 165770843 472797642 135382949 654340526 545147937 700606542 710023164 958765040 90357082 126034877 839806356 953788911 617715441 691748159 914082782 992934796 861710264 939084452 71378204 727766674 106051616 800851417 271900786 973909060 783720383 885011885 13731981 241916795 810324881 814802200 93511692 605182425 549395229 594662924 641747662 765422269 215793205 712647527 452700661 939889682 627134740 906968263 816979518 848433728 828128075 899284199 651741162 797940407 663248685 879207359 983589971 995127229 330280346 698777094 23053621 262259741 768200433 947559797 952541555 953436508 716967527 986562327 159252003 176489387 721561926 984949792 342395215 807564319 860226048 895695370 86196623 790779436 54773106 968255284 930582023 951313288 939084488 939899199 618814864 798927695 252873768 924876989 408566789 854795776 224396814 638657717 951816682 965869698 813586397 856240958 631331001 967235136 341002973 374793588 751870575 791839554 823919481 921384881 860719274 916864283 218650909 846713768 68268457 955300442 708300652 917317613 21299081 805005465 58722097 388869196 410796545 754462811 589994991 627616538 89737676 470234458 931151328 939032602 198014012 332442644 562268042 595066823 499681467 741126210 993764123 998102041 899989194 917401955 156517536 591156854 67793753 922155936 439737999 874921040 638171635 800400289 951004925 951493113 626397805 648362807 201169196 727591364 388903130 782586803 800947963 994304785 820991887 895992725 961613932 977990125 265790505 638584061 339674289 471139687 494835406 524319271 266654411 288405473 864568400 944634190 238525965 565462125 928510778 966436433 519535941 524843042 112763637 422897098 372125459 665796306 55660349 319211745 636651559 999835951 617061356 889931545 118215725 448302293 415901682 917096815 375652226 578962450 966357968 982937665 685359209 730601962 391861001 445423991 411585432 923592802 206643316 222172597 772243442 947339938 577869531 786451908 595241132 801132047 320852898 893602674 411816473 831189926 933538010 969726334 657292943 892095430 247144626 616922715 601914473 764657197 686548148 811371444 886991893 944799648 708930751 860563673 547433742 588115983 357400144 794731659 948808488 993697300 812215032 909763720 641098958 866069090 919868519 972862935 294587091 756220269 564076785 597803727 922802462 944213355 35192664 496704630 131877369 802458007 729819911 869009088 562206849 676264328 333932956 769362893 281145816 444426682 209361134 815036192 466695953 561519612 666058218 930864906 541135025 630232558 837744776 898030385 520039086 963446731 820598877 989102948 543183840 795467709 446987660 797169456 92126282 215139111 280604805 609090280 931669761 943631995 410260525 773964081 385318062 770969429 962957304 968470531 927608038 989082894 317247048 846651676 799167162 981244938 876922441 949649740 799917121 984204085 768792667 935258142 874655128 983772127 779913699 929131093 606886158 860355697 161649701 363781192 232024874 508473098 730471414 822452215 214536032 999016424 527135335 707753265 936636545 963384065 942633823 970272531 212782400 608195850 3010383 131549875 592062463 725712355 22922091 444933490 367250053 593830832 396415751 910050174 254210518 511975057 635619752 778430684 114643515 487565815 322308920 931006082 995405875 996183359 892373370 996355689 829144309 897833670 995326416 996595027 200471508 848214559 537500691 731913561 63487124 90295324 760295600 977004133 500288872 807441219 72982037 416705480 787913505 869850939 19348095 382255470 197957253 979359044 44626336 703073268 666280726 972329195 374565813 912320009 164158980 958114295 82264688 602167980 714086217 878325382 609433885 842214313 648095318 778214469 318960259 877880011 76073259 828790391 427809801 676958838 29480230 888211489 20208006 809910466 81781738 685477601 555907141 814653835 916049152 918541592 236938018 329954345 560473687 924133121 426360381 614442325 449701708 782366686 846503825 870661909 336066057 627777187 537925868 793677954 844082236 918234624 376963191 393257384 259527628 310812177 827236257 868473822 209401936 722839372 619184916 886902342 631209405 777836101 615750338 853634527 755576217 955513517 244009379 388371225 94304750 307301356 389716885 681661496 158975400 928204801 206727867 857993363 726500737 753106375 987113284 998397573 62654849 885063185 187186022 194726396 945418568 945891962 665256707 866356770 886872303 978190474 178136834 354414087 54619458 169596939 128919477 175081836 869977007 880078133 192766074 577796611 490134874 941486105 807376610 890042784 682749357 923440461 853190389 870912850 896089903 903529148 831313736 945105208 950703958 992517836 633183767 663647127 850342790 991775864 383716505 785857827 837349514 994202373 539793327 971709776 571295624 648341659 776769720 928433246 881041057 904604806 884765938 947265373 149676872 284864676 493981655 989341230 245837611 919051044 733623959 996476262 319132605 879773545 960762382 983027434 651764594 834172033 872050154 957211540 145230301 234582261 237623164 997730273 605796833 667180139 105602901 323095460 64284319 323662946 750798565 853777369 280449654 724756362 485808659 919736271 485767034 674081349 662370365 757951910 664192605 996921094 839278909 912959695 590773773 844908437 470208035 562733480 520920462 953841847 404645509 590538300 637903219 848916096 940140269 972721163 147784728 754185733 328837411 734445889 934160190 992271169 15961626 50754439 788369852 802886553 782821975 787021906 912951865 979240233 67717672 926933354 497077901 645231211 249612622 391235063 400201355 896579403 415059812 518368626 319096678 551939213 751246212 858632295 302206440 671592029 81548902 553177371 408778127 478140797 976626228 977576222 610903638 896752788 630269349 784058928 73246046 919952693 715611484 891606511 254938111 320451107 372010128 583230315 815615783 854900011 215809569 644907153 327676367 424361223 886278295 909440092 255141166 814204047 690217896 696506780 559365176 699619038 467472284 543585129 427989300 737679988 374036850 472665161 446021933 482547341 255861110 772058337 804847854 851443144 604825741 652629028 15136104 895531410 206500895 895058335 697233935 909143132 287284968 430957338 922518559 964720446 933292889 974022849 111415355 640492061 143081153 782113093 40158590 455432380 311681798 609564131 867232514 922638244 851229375 930097725 122569047 257256854 913392681 953964928 618277643 904396002 294460782 674292898 7031583 692457971 501104399 859419383 12141193 587562276 94281996 644512437 22984865 81131204 466605785 575682245 912701143 987763815 522758357 756605269 514905774 630151035 218373451 691508623 575851866 960215419 525875844 620673494 646202039 980779163 186973920 480399817 422300058 434448394 133824085 761249828 787103331 800931533 830156969 844864831 332407338 343517389 695962804 940993034 122945249 490767147 470617427 862821330 142246142 328287561 467421141 902193559 370334188 558974368 413368173 775736648 909794537 929343681 398569428 835320044 391209571 993081798 328748916 654976405 858065632 964151584 651062496 753455975 435461931 657349746 378650715 474672434 632727236 696644111 308852648 910199550 338629019 820294334 819267562 846551760 449020568 477412591 785078841 818605659 516769010 597777765 873377259 939620529 60934766 741722142 429394578 595621143 112746335 327921510 492036906 874738424 202552446 576486050 209883450 874603614 445051258 653804216 32542465 176502805 345661087 698225916 43683784 101704123 25328893 834477858 607111612 852442145 223104413 724321809 263740486 329779149 333776897 824080794 271787733 652085859 53395286 109228727 408652332 931552333 213493141 890312643 104180869 720343497 104268614 413464109 530240216 723339100 502985537 936717779 18502173 56961013 98943929 245970066 493798330 627339580 729231697 811566497 405439402 560164868 420357604 466368157 218108117 445779309 469884254 835760364 744121644 838182234 166605807 949646384 136026954 420467554 889771093 996491757 197837846 438888145 293534590 869893601 122002985 294210439 234068028 792022705 633022536 735852845 663386485 793356700 74548376 207644941 370439202 791278628 56003398 984412819 502387997 881810522 846337745 852062563 458815731 664152534 508055357 989065842 799386672 843032285 722669221 794647869 891926384 895322889 756541177 948204663 845759680 870860457 973278644 978766007 13305156 291400084 989048299 998049662 613044803 790017723 768075462 802100808 5451669 611814869 457606320 641305821 150203436 302328788 824270537 865147575 761175320 901587145 252535672 628485267 335813164 510544627 295710495 778339081 547837614 794030647 204180552 664032457 836792491 902592641 745494150 866629644 880252297 994959235 454656913 669028406 742893209 995591309 428616115 798112496 90293241 810672660 963484351 965580678 294407667 764508587 103481363 473803980 186775183 683715311 788842539 855411024 375020131 450435583 186844607 825988662 559182434 871231598 906515538 958608410 638911657 914301261 428698471 511517580 675808443 774493123 462334705 825446041 613464468 932972982 102393238 110129885 913256285 947910385 134444353 688027124 235015350 418541341 611920877 960066491 12685458 966422205 276698953 888272669 609077485 659190646 901687006 948347467 345239924 378543327 159814081 788915920 737836377 995855015 834555683 857886059 922000185 973027937 85764589 954793850 457262705 833349842 938153749 990854413 611367801 911993682 13489100 399539890 203375729 756349420 240272039 609280189 31204394 680299044 53184755 169347671 342971194 593430583 739062124 864030566 897492189 994743174 809272088 884828994 190833445 515079686 137194587 963934783 810032864 989597486 753082339 798725671 157139182 999070076 769457673 778691704 801840601 962579028 693486199 792912466 490973653 812443791 160754298 664705239 141421879 656188332 156221885 932664710 496253008 911826931 372127525 605206629 52409886 848972312 574683683 746408125 111429847 478922770 75122590 429794878 736480296 835399187 850053617 968157773 616200770 700395945 663404092 802584590 656080818 916114648 97998174 903521022 362996549 599111385 993923672 994157355 207348281 370711344 645959288 693749480 973368680 996181125 974953483 995333472 907975343 926315883 137580778 557534296 323544339 677057841 337643205 959643637 889306454 950043741 250911880 876213695 320592403 502140921 249836988 423417944 110093111 300634139 10442020 478805449 484899477 847239213 313900677 599715549 812826151 957638356 806298469 958209238 726371607 852516611 907945050 959285408 283254738 541260966 729166367 758088809 143008332 352077285 659094659 998045444 166293177 402237851 926505386 950172778 425591531 559305424 910574589 982289589 904898282 952939377 939872627 952742133 803318919 982858153 956877916 970591408 739745128 903214179 336961388 870972798 632954326 649984553 293896708 862370554 262415450 939279974 308263510 678152611 813330695 953277557 507713416 516400016 34527663 334028509 291998788 664190012 815015412 932191736 113346913 477546477 762912307 896268020 905933101 994674715 426965996 739538798 832618718 908394550 220211874 523706916 241878621 859781856 879329343 959206532 780142063 936481889 737464548 896883465 536348408 977023462 160372870 710735224 156005828 657425416 70342609 213344761 983877487 990279121 69619528 932287134 773431212 859129417 711514566 945387950 329588147 378698311 578169814 945375560 903941132 908191598 95051106 679741483 654883137 706418696 996839723 999145205 553154206 864813029 855278372 926586752 214017305 962460673 390298985 766761453 95136027 578964761 541735259 611009511 371485338 586615465 981711882 984241183 534260018 711661133 899110706 984656209 975342728 996653957 525143406 743099375 909478679 928053704 928056167 946818525 600308755 689468811 705156215 930715140 257212070 827093266 809403286 875363477 20724244 811686360 366439769 603449116 135356711 399040064 544864440 553342872 617688125 864605736 656288325 932839135 727537597 995687999 912924053 934867133 143677128 608004517 339202166 885061307 490632756 916040275 158942296 627611746 309236055 784846462 205501460 608920730 951568438 996588453 954602965 970203321 406895351 705697939 414103174 778786594 401766134 412184546 480116200 519310442 529479069 761751864 611900506 987467626 186184932 759133611 974612159 987434545 171566196 444174530 82279508 285291973 141278733 305431439 638599460 724256075 238251122 316770390 691373401 797100015 788613675 882546200 955068046 991099431 838983462 845892486 320009576 799269679 22625918 703585289 132313135 545455424 930276073 930781892 856298140 929162121 912218098 999408836 197264962 511350092 207689156 293640992 895897099 930888012 496441802 871414181 158141678 562130173 759067326 775537728 932619318 960513519 390120367 749396345 131952103 910480845 598343232 665856451 229810602 489895194 924630231 936302057 148431504 672243421 22151775 303870193 718603172 954725784 68399692 322361185 829408772 961933272 454587123 853982470 69691340 942246010 543735320 792585063 914992007 916697529 768938681 983264471 384760636 677483790 870029202 870590580 233144688 999575642 847999017 879265846 421874162 423363073 102864499 186081993 725375920 734058826 97736774 400504206 627755520 948717387 342353446 474551825 735823938 912058248 58775478 252226858 386717494 769311815 769127247 948528011 691321591 942484146 831065877 852712309 894875637 932882766 513417269 913179509 733656597 980071743 751585702 910479980 953265783 971124227 580645086 749065019 689131730 773993864 87209628 511688841 87960746 590353129 165095321 336692407 493967411 549417037 590700142 838138600 683941420 793305854 149657714 546266947 594411586 894170765 501246735 522040135 147986359 906787928 273536898 491437003 657641349 717326509 961942660 966218187 940811306 968270880 161098469 253713868 730879174 906182308 207063901 223713301 381799615 667027076 334474603 574267520 125025262 353277347 490017328 502684043 285459091 844595608 221927026 254650130 333311818 955065811 217732052 898228210 269768422 339172460 213250531 415204140 624316372 989935647 640533864 764968143 658322903 765836640 236732196 973057088 885718695 939185834 63862459 248211364 162274468 997894250 545596596 911388642 273674745 323219858 210179071 709276759 944072738 955258370 397661898 860868772 866368402 908683127 930785608 966833639 691629097 861266096 56977480 989710402 949308251 963736826 224697441 989875054 292515197 825984182 740306434 801705048 678790805 864280015 7843081 707061978 438043985 569618299 519239648 941415973 937897130 986896237 228491085 553830242 261571635 427203941 355776929 801274172 504349358 902288572 742791619 875151076 702337339 877330178 421643786 701519062 284865275 518479121 741973522 815389145 684122323 931093361 130435176 938934346 811202936 852790062 217444489 461452248 643172497 781080096 750910199 821200317 89394492 271555635 99204077 481744415 51165590 394217888 647283725 915855547 269366286 608864247 519627312 976400278 405425606 902040727 583939943 983871548 450610817 936565346 212954745 529921164 645948324 842322506 671052234 903588374 86546829 994825087 696737635 741685181 223548105 689022520 336682092 459148318 445887933 936579876 706313387 981768248 347191516 382153083 285815196 401067967 483115753 633215460 300799487 607269572 204223918 979251167 827696096 870367925 279982347 887731705 392618671 450810724 562498733 796037343 269078086 779966360 167441053 821107820 313579129 377172646 109134512 129700940 579494583 759356969 468836109 964433659 131270952 710754513 527587416 830246479 639531291 985935804 636339397 933549585 138110895 523940490 37593159 334772724 352883149 685651349 689019170 928650037 370802836 495592934 496352098 599298360 809232850 947930750 698216425 831460522 916457662 982542885 438139179 491738373 584974952 821785928 184084545 502944096 447934137 735670338 941183721 980987035 123817981 972447658 781485894 812588602 527351315 781390904 284022462 441631415 217973727 741125631 536012126 648408592 330010152 503178246 527956812 938716422 796013044 838786878 272124578 993885144 184786931 308570966 269215134 486645638 243447755 950192211 114689315 983301308 450545396 655502888 549848030 717917080 716407747 895599725 349641184 940581457 682016145 944378200 652985159 717362684 432441970 616934808 625770013 829246713 947679926 996800170 430637843 939528671 128600698 349166844 762981169 933575863 607685231 762643710 84048516 592580151 992125416 996176546 825151809 951279894 633276595 661023415 864311571 917544350 733267380 980330693 739181780 759333269 97495062 463915180 270651736 491607896 912295659 970916317 209315828 653268159 696103586 872493475 617589349 716851965 790508506 876596746 13406286 393995322 47245257 188202398 805122847 836565864 965376715 997524388 467189965 736169628 866256886 893304457 789550407 994968816 217979348 867295893 892794509 894559258 614206922 681129306 357430489 408209847 198076050 796927602 495673436 674711118 227696749 891202226 239711096 251407525 719162447 872021578 601520292 796675733 919100759 934188862 312408104 936298408 562322885 723944701 667215318 749202997 409683006 903770243 18784133 251838742 959809695 971388060 383287237 936180355 256344634 938773721 187373693 561287934 70968096 767424453 194134619 666541933 915462896 979563998 80595571 233197286 8197808 122961088 702226510 778907638 75963413 380664332 933116088 959596350 310076535 390865328 856653289 918962131 892278903 971939828 761417056 888206520 429972308 597372471 252536243 286882080 745683460 793092533 131496344 646192542 814521921 964556732 607936444 822809556 868765079 971088144 737336111 842724697 769724093 869443751 84770547 966050209 175953525 721586800 792798642 938906407 193579138 666233957 997471510 998525077 560069923 763002697 134153048 191073296 341090054 915071623 278388389 347224164 550267664 883917937 547808566 743586528 876681265 899901582 248811561 285695931 99706252 997442861 760846664 987488635 926429008 934292605 501625819 786689156 620121013 783398886 38146782 241991133 933326971 999205344 688216984 996855339 22069334 839439767 32268894 670030756 829158949 860545782 275220214 595364882 13963658 608370064 228033594 277969928 707956077 977824370 787951615 831879903 997417574 997527110 396404834 972578529 161987260 738407130 150479490 776481233 447665262 826374626 411668173 650273315 304999079 873344020 981151651 986378983 895861157 942470599 895904466 953840962 5906409 196822416 862906252 930291794 75442434 220612699 502680390 950335716 294255680 641861408 798860464 876012095 692390991 838851563 578099742 851173274 494901984 544364309 549676267 828656190 401567272 613442087 892671602 914486671 4890581 921651494 819895227 946545733 890610917 949844326 920369868 936109287 54110064 924497336 655878791 660880591 596574971 932717679 459993409 823422676 780031226 986714764 75199973 815661850 643086845 787375736 723019110 939898439 125621254 614473527 860030295 892466828 979496526 995406834 93618830 741340187 5138592 181202031 63858430 299965056 202478255 682237077 285584245 941491316 720381285 973751065 615395806 987462348 410759541 742791551 803534291 902141510 849108250 915092530 317445181 771751575 613480016 859141479 531153653 766328052 851293529 968693128 449837051 714066798 678795671 807698679 983607190 985185064 943265106 980714733 513587873 769331056 739368081 936137840 816032932 862152663 370021795 540105637 882353634 965946192 641892352 895634021 739712463 852967811 264335023 933763986 14848636 918870064 831757222 887157205 471476171 822733871 466834729 479427063 451967641 714659032 682459301 747538836 897799345 902661340 309828697 373923046 854633660 931324897 495208601 724250406 706417919 853699371 559459450 870597326 597728759 813490238 718164338 756550687 629091654 740184454 511699081 976061935 198439513 512306867 843989156 942172249 879284258 966426102 272888489 327452752 860781192 965033000 907221474 992804277 270090974 883573956 156701330 988445768 662554641 810631793 454532312 530698377 301960666 511504710 76621748 414509272 39109659 502308754 390671630 675518841 84517875 536482345 659266680 787822657 488309057 862017925 370996497 371557275 463427320 628030700 80796731 292546452 349797334 972403590 923782351 965797797 872891039 944563565 513246824 898955507 864765267 921380141 98374900 549626729 698701517 894621903 321978039 431056565 995793260 996997987 949777169 987658498 820175602 978920829 190934264 587497868 286709079 762296308 448938504 655871896 287038095 558301052 438416100 607593483 857179090 935553724 204466494 265643923 974264811 992094271 200224159 229677074 709843729 995693847 879909679 902708088 677182363 862976360 918582824 930437332 43079775 333250016 663150046 709325062 428822459 967967151 290963095 828066804 94556766 395521496 953142372 958620513 366439022 497025589 537655508 917260282 177101820 948276370 26945110 69343390 662508533 790173446 588697326 730564962 102666313 615301084 620177765 654680966 247044998 483566753 159341358 562863135 808223127 911917970 991407500 993928901 612617578 884957048 286436937 621457666 412185416 648513552 575825516 794639160 354926898 763613192 262922561 605443206 990693521 994411371 874150952 992705523 938421720 963094146 382036033 815485523 103727532 827605995 605324659 690139583 642781820 831422087 458589994 883259455 178226972 284174817 654662359 877210729 930824580 976983957 400526358 794691665 200573354 986041431 194011309 912876425 27084425 310549339 241182189 530516217 459133026 873036842 934941211 978191515 338454687 872073174 471730465 699932189 91826545 172321141 248776194 324177774 72390211 312949283 801436201 858941392 881160095 961102851 329261286 576403395 296762345 820342998 157348192 900580605 771081531 893981858 840162915 949752418 639374802 766969217 134850533 414092351 868953178 965190432 188433590 305630542 72852865 760320569 229964708 527854613 156921560 826482337 641162541 808691313 342420650 736190762 692644196 757828307 687550486 981146019 534519076 848575783 560158816 782718371 699074024 959874349 783222564 849513405 978256812 994500219 456423710 917503015 635184487 722466675 156911573 299977732 490656942 942148152 177136592 422038577 127755129 405125039 332192499 778084906 505170326 824246961 882153328 949616724 14074949 607283139 197344425 597792782 351383589 504686975 789675136 882776313 51102727 323263111 419813773 622531121 831573492 834260031 931528298 987769833 639141164 750750694 154249098 246777708 393706709 721909298 74235980 616616522 105571832 995491141 592590233 604373371 732533787 924670484 821021249 909432242 488326184 994149876 949474384 974584760 638249605 694319345 135101587 710069968 827312007 923331540 591368201 671897604 392907123 406292659 772444975 916899950 117210266 200698589 993991555 998152881 664675643 893489905 269034551 387520826 685485242 983637857 546430154 785913838 696029382 730552624 447944584 724824736 475683622 921918837 500309757 570021219 131078307 732215061 209760458 728602644 689902914 806382459 181515399 506113133 936697238 945997125 575190944 595528139 784003469 937114983 927949406 945727626 147019998 665051919 776670062 802040044 91097448 938135591 144923841 627311005 301151486 682328249 336309654 771538019 112830050 929010223 161787561 705020610 452405937 479741642 883357146 903720946 839927787 968261477 758861113 925266271 853486556 900851523 57784040 514081688 22021142 79146290 371955478 722593966 484173979 752406478 461157845 832215235 546084515 733365769 584713075 998219237 492532499 695352726 354991154 893068294 568387256 842239963 172754934 584195925 730633592 994170839 680823670 881892507 926258429 935071310 178788091 685240225 569276849 686727235 32394908 777096888 884411286 980988364 11306101 125106532 570652299 794085274 415221889 644681132 410814702 757492953 745127083 941241396 997235783 999437548 985796642 989376495 772286516 781578596 862776868 898619127 166214770 792182878 550187196 719568078 6002794 154992271 343331665 397147729 612520674 750646478 769541549 877852565 357822700 885667010 524495958 879908596 377824997 623333195 432940190 777420141 36930036 976928625 465810176 944086415 743847774 916637964 10090944 716736797 359644784 428038951 332156 583900727 329298976 610138572 234179182 675481434 759155663 948411445 482086276 968571253 678998865 833894731 701358856 848249087 981721183 988373946 791618952 909550461 347053581 393273442 568889677 947442894 533404334 858589948 130283708 702443926 426243866 520645630 35756844 103240583 211328381 516276770 81469538 734675907 260265005 662564032 600971952 788375010 28899513 843362662 549807730 978914901 700026519 800580560 996920707 999986415 297720420 725586497 164879994 283234256 457235148 488212856 506700289 913933976 227845363 716238721 519506707 607692529 97445228 871593313 810121006 860272647 460573188 763356304 304547520 745584953 702357076 735937204 524543295 784927075 569538544 785468643 74443951 540362960 211878262 551134700 677228408 888357603 532682838 569559320 141407040 337106284 954816788 993637305 364231615 774855878 737857628 835410328 630989640 785913392 30910335 583553167 408311143 568375602 486698110 871292469 859733631 934597358 93928538 283726944 515853698 648313275 898003208 919770824 89165883 210686814 813480766 899860458 207499837 279853694 423052307 790860257 706162955 976219263 386729382 992756725 874105574 948442342 464059715 858812402 914748826 990353241 880092393 969000850 39173169 804078099 142600600 430100902 941329591 988685100 784268378 913001077 148236802 969454710 521571792 615364494 933271475 954340645 262950948 790498949 213022880 648637677 872910779 915059643 857902425 993084085 315361912 635899238 418818794 699163274 885034636 927887015 355492197 935330364 930424481 997171729 228343164 827434500 217470607 337288981 354882750 975399145 458900829 744482119 171195377 931756431 269244709 273503698 736404759 959185556 608384279 902774670 780975960 854506914 430473008 824418062 912968684 952249548 702850798 933426800 958004700 992601859 328884075 516048091 692928576 754101070 306825350 511843212 416343256 491549632 929173389 951091692 464656041 837436947 79555257 384501187 470310085 642287946 234829495 657552247 684737808 741511084 574568320 663811171 919737426 965683512 525652912 877102349 365132446 802212928 25291655 873517093 689062909 881572559 984887347 994079051 498933469 845755741 956111354 965676164 281096108 291013702 56746898 840263517 691263490 968945545 24155646 534373265 335948537 672269388 22510076 925607949 113779192 917158746 623361835 923405255 118094557 321422856 103404263 228244578 98726540 864474398 249932593 418670053 860491886 871882904 604093406 671672160 417547800 422553410 92764728 414004523 352879615 519122284 628652552 863262913 968470329 970701015 445958009 447659411 77059342 476250622 976179007 994465478 784185129 845254965 310078193 540742934 705434057 857049590 254821252 309210569 907147549 930027096 901665069 962708247 218938331 539501472 719000561 769107531 847890087 996150299 260851425 295423444 756742926 843116615 681675967 956410048 470594064 494566929 692865897 922014880 787360430 799737579 774268510 819500392 731948494 878363298 445392377 810246527 206952650 938458168 658598387 988570303 250489900 307332880 508407736 833003053 647387123 901458457 105848539 266565113 701105258 908552888 570248686 782543653 563890582 679117684 266025112 573642809 102391053 748999596 781934144 884988289 918660516 946738684 39042627 71882046 533861362 897826588 655373427 832903648 859655492 999133271 952171462 977035323 695803933 741883096 23590128 759127137 64620493 905679427 316093617 510378904 776276249 810310701 637053624 779773113 251356983 823027926 37424368 602436507 858847647 953174134 106868024 882253783 650306155 750119744 171426349 555427578 971538044 997540819 625497244 875589163 832551639 880896975 956441870 984694209 450807013 593032399 150644880 436450608 209134435 280090970 986959636 996020853 782426603 804915137 3155684 417081435 341450722 697433835 550809715 942329190 860038236 978583165 593553910 780195807 566133927 987910348 262024433 852870504 555705033 589697323 766637123 912203344 529901649 836276681 842512832 872043770 849114778 902804048 431409911 699516160 168725165 220635527 403639795 904415435 730281566 882866521 407217949 462532206 339337304 567813493 625448389 685043181 497605642 547959997 26458106 974522069 759850499 932749163 908507101 916327561 719875893 731005871 910618172 994173934 810968244 903909587 420299135 886101395 317966589 714966905 130928246 978278029 603531415 760494901 363595085 578854544 270192567 836799035 745432314 822546672 382729768 909905784 245247510 768659786 905375463 937819533 415302260 836878739 985091577 996116235 729381348 736104262 270507630 685796256 612014845 722659368 367093732 414841265 314902336 515937172 9286737 369650068 711529934 712906447 356960298 961268197 396452085 606097582 53834024 364741849 375714948 647105019 974067414 974685633 838419061 902956257 45234809 335282526 510062355 632861020 184850167 414755683 698283438 882070440 220340785 708788990 145122274 790909462 427537702 796817316 15613458 456787735 135557127 147578980 784130061 915307884 591302823 808696657 504380007 936808949 190594580 587851017 766044374 840235630 96336838 913973961 367477660 512547724 430927418 964922952 799970478 982661269 340758515 593612405 674406127 719812544 779570481 845488618 370843895 756979477 914093764 980796786 459190765 901799054 686799504 990287675 904803945 954980989 243981984 996041438 692383669 692955739 253375675 600966864 572478430 573196196 973093494 973156451 922047789 959813770 789466188 851534954 178679477 715988701 208536909 389219273 633776676 877590380 707229332 996544189 33099944 258529210 679947555 996038222 775587239 906252516 481806930 950437293 723948809 764262592 919925903 946471829 6557797 865094590 550995322 636680085 935290344 998410530 479735499 664717830 790743032 845722242 393380991 808422423 414011066 754711497 3152660 988835153 83952652 540823576 364813696 908315085 114716897 835793869 957113014 997648863 473174531 976657643 829779291 963324333 72776880 788955818 106188980 281648397 228645110 545902755 906308002 908150895 141014715 569922005 845227939 984249604 40279746 373586669 395575922 889051929 850381300 985871225 987915654 988850439 605620112 806645424 121167903 923933814 885902073 975869019 624096100 987247192 407437657 692611071 65066230 537658783 621989198 926109353 344455880 699320103 200025184 236463947 714042926 840277450 455353652 807866676 675296724 810881991 224473570 589711889 230172330 856456547 153227216 773550599 184640180 388171279 166090113 845966975 315060093 504635336 645155284 971391504 564277854 635657323 760784985 768850029 530852301 675753284 445621836 703778367 859465652 862726552 59646124 237684197 360810411 562750119 711780110 718432282 468924637 855629974 525983722 926991198 446488661 766366275 571605527 933101668 747078469 989822043 853553308 865916470 691791551 866063275 927696502 967426683 557673430 732989642 208790231 810743954 640509185 865453937 130270894 380630108 136879004 861334135 88677849 574020812 998141567 998171718 231797850 790432173 658242439 662551843 228447225 408618168 697559543 898582714 136487563 451653065 814170003 975912710 302624145 836078526 585925871 846847772 258007463 661818889 460169509 577559478 938372301 989913760 800067015 992579107 316340936 794254476 438832350 511102343 957061802 965493051 447438957 817632855 317333578 661248332 742860527 743402042 346722463 911591751 764444304 827589708 662711735 855832739 195235953 460358559 279786854 553225003 800951809 844006007 530380346 699718703 876853524 965516779 669225487 886286224 246327215 456249702 294897298 995978891 84330756 903403795 394144526 770959337 512024598 534919319 628903802 694427200 527857447 946715554 455130018 705175253 532189688 661874977 632850912 886140982 19442173 166159588 637744645 954504902 552971199 562655119 220143237 569651141 310721657 750968536 360607604 857259036 309311882 997335082 141480360 177582395 238172027 936841125 736311418 787943221 192698685 581181894 455963514 648436789 403913595 552379183 594825317 727927311 535573737 940444791 639748981 872632832 79816077 331876932 514127384 630941207 522654684 975339624 736127346 888259972 190244312 203470197 129631673 820978012 214241762 840875908 528547722 759509974 246371706 443941193 973249692 991580803 406630141 614118163 836553472 942686198 106980956 768345760 825563222 992412196 308232223 918277726 328336656 654501804 916976452 957511708 404388237 742798033 953903540 970796743 517969233 917466810 166550928 657683948 129239086 873963949 776261053 824633660 748009896 859427875 254480263 329010822 366468955 623756596 405909458 949126609 992786017 999080816 326448988 701216824 49320904 848447488 33699101 708519367 275792015 766522824 169286104 247981731 998161925 998938042 878786744 973824785 688057928 825797998 151824971 740901816 549988267 753805436 132115116 320328784 417134330 954210130 394951679 695568667 16048776 280068735 228606478 370299954 83641181 487608092 435626890 442247978 114030076 494131779 924898143 980366120 398109888 948744247 386683982 822436011 957726544 990764219 92128747 787711017 824997305 866281518 192049286 914621083 621897013 642713811 714163022 994204233 939246221 986149981 155633672 597365330 315561070 809035896 801737088 993185761 81158800 103115225 451268703 875799832 893539523 951151927 481051675 703032369 526986753 854495639 830651058 930474259 125891400 661379157 678362437 747804573 528400246 990338344 684384115 824618270 60535925 203628926 380468295 787727433 794650582 991853550 83213247 415618460 820113999 979098724 252541784 807089338 240653990 448512491 80316946 926720356 918963310 920914968 702198651 790360410 310472925 528905136 428808276 671177090 476711120 600555877 244047391 634687597 594254488 775877660 302575920 916979429 178614390 650587231 406499776 515811570 920630408 983283972 455075014 805118820 451344046 997676024 218913617 510153816 579272076 660130037 54657423 560223739 425710458 707603824 568910631 704904816 135004516 447087749 709712013 868173708 534452040 592332636 192948755 332372173 154200676 467100513 711953049 790796721 950813212 964164134 242904148 391537815 997541020 998780955 79894578 464152244 75007950 135124679 948057149 961853438 62032280 999169075 529205139 956585057 609818351 689713239 214649613 249215779 767909069 857513556 712426781 977362448 321088054 639429108 290556168 957866735 105221425 367412048 482234374 663235621 46252636 486492542 476744548 759918571 713369932 735742194 941992463 959144693 802594233 869356090 61892432 812115338 825892642 843574302 216154705 746287211 916905432 984862634 188760445 626896798 54369143 343823283 488469184 610951059 532470447 745981889 806053398 832449882 546735740 984369444 103910484 244444628 369994366 781681425 222334171 856583232 240892880 764455755 60230010 854660951 298122311 425857734 658800207 841303147 483414774 707679533 833248181 883788294 489899531 796787337 747477501 999199804 559819204 638611775 490019309 954613842 370214606 512039926 274472247 404610459 634243561 832260653 580002194 875015372 85891797 117466276 283313910 283900129 700089637 792834528 860545201 871322867 76225238 529458394 612600002 706641125 982777668 988101479 647076347 692569741 590827382 920337883 711917172 807383220 38400115 739245060 808687521 967447559 155707017 869632511 294873316 297773101 407918485 458133975 827139351 953373150 393175678 964980554 533882806 623295769 446268210 621886705 872618774 928043820 905793538 954482658 702007688 819640280 345203497 761500614 171552059 835417862 953670371 974364962 595795385 719987998 849081510 859559795 448367574 813169439 187950695 611487914 66208980 512210493 123911116 265599978 438106656 779780906 665624834 761159963 580533180 772061981 648770154 821673270 8725137 637550454 753029456 951237858 1473833 330319657 62090357 167165778 968016647 993365005 778138554 991141351 236300684 326095238 854470783 871318109 871524546 884679577 944853417 999514606 422382429 936822205 538621629 701132401 260702280 992210430 748577268 762082009 849487870 865963710 278968198 376679295 986034429 989179079 718433308 873509977 789671771 909509052 498828489 889826733 167927804 273223784 381604230 978175269 306013220 673495675 217961658 841865103 105903440 654180015 606291036 623858542 174162169 299524856 821177111 917347186 316902319 696023001 986058165 994344107 863894259 917875039 517788177 886137398 480747112 729142771 43824919 634273387 963941344 974481111 502577646 868758052 442439449 644862193 305809021 347024333 971794486 995636320 14444985 946022057 446748103 462947976 884206149 901760754 403237840 414727010 238431431 637609919 898074931 965080823 956074112 984879158 623380564 779586775 495261876 555457633 955282816 995601621 171288430 582664730 632288161 856497246 487270005 906255505 31547304 471551604 148447864 334025569 102853791 455850777 955382385 993316893 12177241 778513989 308204929 539543659 186730050 636865384 787227295 805302900 582157682 906347223 221486762 674839336 745070427 835892134 898775225 900233929 833105969 976954760 658905240 790845620 617081984 890953463 864507788 974438377 694211577 914643484 860282366 890614721 349027743 997537610 866211787 978192223 6299114 289305629 861850815 991075758 367675124 852409512 343550569 417119892 537162004 807694446 809035510 862356682 193149815 464631326 243889494 257752677 966523054 990847336 431108386 977767371 635208721 984673142 537574374 973452458 786593784 826633554 210736685 423720537 876636553 975709453 861539077 953011207 468642333 524253530 14433214 465169394 18205041 717150708 200204204 510325136 810150743 839778180 884989570 904593797 295357038 311984568 714493602 933767609 330893986 601313442 561882727 892711128 951881315 973274267 618868976 790502148 516562252 868003345 738771226 907110562 370511930 940554688 939347024 968557752 346249895 836194433 633826632 800814507 648958857 725759460 100258652 862744453 766986888 845383265 701649791 873047498 546215425 988617145 229638703 520123364 419124155 700559403 114716332 150542150 333691068 559497487 93914024 149643064 695065498 965453884 965531404 981854481 181785098 935825489 802350195 912303666 960799151 988099803 42158545 127590307 147677575 429784067 799859650 911073741 752958025 909615046 782418465 974691667 999493614 999878371 208811941 768275320 376137066 674477385 172867489 531862153 569758609 917979368 83035866 386254650 491268387 730290115 977816946 995324631 228830877 274055978 487016336 657219925 394862442 499293868 50783518 384959785 452855515 938468045 554211034 641373021 667275146 902933345 298272650 810900310 470349978 927320173 833390484 853896819 935561441 959868112 846108162 918848804 353188770 748543212 273781244 615636026 344384107 443341888 464850221 670017249 767930992 973346466 142413183 551565313 182121053 989246211 364482168 609333211 562088678 995096841 183588326 520167822 738510736 797993208 320684805 472804359 383463371 787856046 826673091 972107571 764258179 772776420 145526408 458880518 351288478 760449275 963529847 964732890 364908460 675933048 390987602 922044964 497631998 769069792 209360119 684190910 20318693 506498752 747191767 989224388 932644943 945310136 538053771 676848562 191253413 492053383 268425585 544255742 170439845 738191966 468836505 998621119 879306930 987091043 670133172 844540373 647716462 746877628 137943952 464507041 336839843 644926103 661419351 779320314 567124261 854299073 523137822 911785779 779074459 821366990 699631561 891645855 156027421 943593914 62114936 644315915 184380277 326098927 781721273 912609828 181272502 835395996 394233352 619830994 410175224 848008848 389220241 731184922 857610938 942759357 675005072 774009646 178012338 703789058 742599978 821992008 924791611 929796798 679737875 734012339 463381643 581825697 940478956 957804992 546410875 924042946 142941642 802618100 351857643 529496154 964198480 976631973 984872924 991888930 549054282 762733538 362664684 832385950 887687557 908744006 158569443 747078742 648342736 986365132 458527981 611778641 290679716 534343201 782196534 972299317 131925246 836930735 224334749 780415395 420896201 682020097 36852523 735242955 331106854 940281730 999441830 999557809 200913210 696079255 212781077 579839424 781925055 962623361 476384790 530772749 981662964 993041297 215690787 623287883 393459735 853409621 358875963 782017060 692073520 833924802 463316795 944548255 247998988 681096591 982421926 985909789 723136613 901737508 934563060 977903821 383005544 989901089 157038927 764979780 55315354 918478645 383923291 478713529 890246084 899172711 263848176 285659773 554923148 755923745 819816701 850450211 426429888 900172462 786652162 840169500 61348786 814094476 872481474 907164813 495081619 847061179 320483901 503295572 94888187 426293742 771972205 799700589 377018536 995757652 892968816 914023526 734130895 913708175 24484792 144387040 877615455 952690818 632705320 877915947 149339107 346165486 772273290 929313111 279696943 444277761 868671497 888293357 66654731 677946148 35362282 842571955 558813137 933293122 125132275 601330048 183339818 812417111 986905610 999087808 891537827 971101558 262979897 876959312 187121665 613071493 883331389 985395421 910567772 960112242 507621536 520221922 123021278 994161409 198948260 310915739 85237367 428632925 568463321 802199425 288317093 419224481 111139594 614066891 36673747 130691441 610395942 926368639 504231241 632406451 985219252 997974677 887278288 994351346 111442911 458681106 828628473 941303949 14041802 258194573 692973218 930848291 521128918 865618650 704983874 902531072 698103608 739601908 922352199 991595495 989449741 993134327 954022518 955740570 250522286 590127514 864401655 945757657 484052587 756509007 759974645 872012093 485374346 612674799 157680906 813182422 56011311 743551604 924496979 930139038 944969536 970150957 205313139 762411397 246811209 792607764 313789303 729428859 516536854 702970280 347744582 676598656 662289205 938719007 259277092 977025802 345389337 386044106 54698291 401808576 684016 200282939 214649851 600438399 619724387 762224896 251039645 478793793 823564660 911846384 354655997 567177138 389537522 702116576 989692818 996969123 726902738 782048954 146703135 991387706 522251386 651321432 662886685 689537854 145675178 522462104 466591487 564936243 219190974 391842923 874023718 882610561 967253306 967403976 450269601 989851919 747166246 758583313 162385096 991052823 137526406 543459035 714416115 936622930 297855026 816509997 842530158 892723537 833985165 949501690 926306171 949069461 740498968 832918106 670074119 692187069 191535641 892569235 582789991 841474937 339144879 975666591 847816890 886870379 81058806 701610722 532371163 895474832 363138277 426083317 122122898 570866438 348102699 668319008 807576290 813598147 736398988 881904702 590564939 681388120 211946301 342484359 962306560 964400191 442077055 869987225 641540114 970021146 466943078 765015387 508530325 779899468 631165804 777701351 4507747 575813854 238829620 942424106 789916460 928538864 935493490 970641584 388031287 445639928 842542753 919595957 373014697 409753841 405451027 560668788 901121027 907760373 443380609 942685713 178379514 179994839 914009571 924349372 162533900 316279603 427631890 827539617 403957433 795667553 32278394 626881664 294387441 509796031 228490826 282154730 109760386 466061497 915319330 957501515 607383153 912592246 425613231 543698553 756382717 952054108 597790305 602860232 364251435 552340170 959230853 966548866 846302084 993325797 264135626 680517890 676831688 745302068 285392712 789638779 413918814 645174818 856530506 967497051 210921130 810537560 516499522 909635370 379376065 601023900 507116246 901476298 704602754 957843619 748453964 966131375 538104944 815342568 887803263 908710784 545823570 842929899 425091490 527042185 908940868 989906492 418458795 622870554 658177160 718832940 117207975 226412845 375885051 518882692 58538213 567424415 864615762 903215886 336158290 685978875 103507166 258911024 860183547 993665199 810419920 979251680 305613544 814292491 428118323 655843841 423984905 726352347 747925254 964710987 399314086 503532998 309119934 454379036 407940321 565064408 369752617 991299397 602601133 840190263 269973268 679814568 831101236 954595905 876068736 927903142 199961544 714530179 68880672 255045524 948742662 952700860 794415576 915513942 278498669 709058659 664586037 739994320 935427977 978296655 933761481 993754233 606431039 994561167 313090547 995873621 197767532 726659788 58798241 201905124 259275852 636979087 50190771 922939681 154031012 695294295 625144926 691182101 256115 496640884 149621581 610641358 977119464 995290724 257381349 387913947 350742132 718225169 152059096 694717781 121036650 271948910 334301305 594983640 137976675 560364989 542446044 608571365 276254617 292216598 691618073 959406988 565880439 663606138 225621493 476294448 680752230 793371325 821595766 962569566 332964321 621798671 827171491 860778241 309371357 912494140 665299775 852185205 295054346 858735487 416388604 554595716 346803498 648584099 865015314 986720209 389974091 465621487 296622044 310579678 813277767 999650487 288480398 411178593 317357369 359703373 403233474 738616918 988833744 998982996 746911088 996803473 156939613 184796032 491815069 636944129 340676375 451388051 58757573 629467705 322095139 831478209 163990282 993678948 318767711 675818898 933008154 987809446 4960997 912113195 814386694 970064930 715458360 719415063 411965695 801365061 934804716 948805253 419312878 923561988 587935345 816179218 896560050 989872841 499449585 781808050 553747002 993961437 129804510 936618167 155135558 348799922 431876030 835927653 590005041 933390019 449747214 680290457 903425331 923005699 343891328 819743566 526893240 579164714 516834912 690451251 728274101 899710634 209954545 266567299 884161516 975250375 464792444 748384078 996477877 998808393 980873592 994361455 181773328 763541250 907757822 938057153 444490855 700164998 263965207 841897332 921899328 967211441 70917017 733522336 156967915 719532730 663982667 972803708 525282059 992478285 754875969 851695981 233290023 924517189 157649728 415710914 109154027 382511412 377992918 734668126 969577889 985946682 759299180 900653565 626937406 980870584 482552226 604894784 460732724 598653727 71669736 95073397 772146652 872910723 263462771 686308183 752385876 816900265 784558915 892670423 574622843 827074487 774075255 910857635 689780219 915990827 488557390 532767311 470725650 959282101 898606793 932247995 511793521 958976488 630804636 769784386 619038673 678705135 343398993 667535471 19304644 630763605 228376775 940591524 634448454 701507239 574148089 883484827 206331305 478939839 843124151 988814021 4117248 376768001 191927690 620058531 313153706 832656952 405324714 584935753 711936902 937490835 880566768 937301720 257302213 637550782 457843527 980031157 589899612 947581927 61734809 985848675 372435908 516690269 930004468 984047808 402955234 542408693 295564206 834206933 574238618 983646741 574913609 695545923 980602549 998462297 573222678 918996455 295635972 918477279 698355528 998901244 178727493 686463315 57846650 495954868 325533533 663615127 574127957 608981580 836378077 840474456 730662612 891864897 550618738 677467610 451606149 670856085 61177162 638076231 350344206 446876449 688991059 828436424 60852889 481450491 132516152 204379552 352103826 497885546 77768812 991502757 183929685 450921838 405582528 464706591 697119901 867054205 503772773 979249186 87573731 242373427 859087647 992726091 987459155 989958854 400271119 527975956 609744248 645480942 542847012 680295904 652536955 872926712 785718291 864972098 765705582 834889422 491461808 632059259 781921052 805993576 452027405 519519671 558767305 587917672 601112913 779816331 793332535 928987717 490993806 922030334 375484576 380495298 718661494 901877719 988481210 996678778 388682185 745940182 425907720 760376124 889393046 952390410 982564410 991744817 190946054 223004318 47526210 367143931 557028984 697720106 407208694 675734896 822277764 858305352 27520749 101922159 560677467 929411311 891552052 967680114 306039718 707772821 702629043 777296040 837666421 869671624 575483235 914877247 687320088 724264190 315126068 532772913 851571042 886510011 916617100 956039833 639691263 733855012 762980389 881563495 701364717 772316413 191572517 935316519 617676936 896849889 271006152 574233173 713462565 965442793 293354666 881874070 617839110 843548270 51528371 571426676 156472734 165171048 641341957 779905662 698380420 886495437 484517119 943292869 467802564 896015817 114136834 286871889 241318795 438065977 638496991 788739427 806644779 891139214 752697339 808498660 398504375 824416771 805999193 964693283 678363950 742375988 481812995 798218387 614766684 895992703 900725131 901127529 135640682 514250277 599073444 649277521 666556663 803444493 233095128 326697268 411474627 992947220 982703688 999903351 677891104 896006293 850206122 969084422 756307284 859777375 572684048 715635175 636156686 839497354 160106734 794995136 847246674 985571947 464607460 796652614 285891173 404670692 491433920 986659219 301779939 570256469 514406328 648685830 384510048 941561739 706393368 812131904 335831777 626835886 936192273 991834837 724365728 795014672 837823460 887313900 121184733 770258475 347429973 983491990 472243141 581947276 186688903 694099432 243336509 619110256 874257331 963520023 267947130 720128963 899736134 944418915 118057896 338935083 40191922 55644682 930707675 995386107 938454704 979801605 18433004 65847332 793579592 919127258 969398748 991944103 569305572 658443290 694666865 884821139 478887087 798030244 947827047 995073294 310142212 478449682 282724351 898259007 192880333 532285309 668634052 761006249 761526903 988318840 481512821 989766963 913892734 929415154 204088952 509978619 286746803 883071810 984671452 994137987 845495580 994356023 901369425 989505109 642538435 939253384 764715938 863770225 432518695 785592067 330231305 658093686 868023098 911711565 484922801 906731802 360194093 805838370 56628619 251413892 84974706 817119959 195019785 267900515 982162997 987313211 534946619 803566103 583499486 818236678 744804847 894633123 59077254 314486731 782844806 828235225 225892682 934873322 25234919 608171037 366074310 621011428 649371224 922276042 157770083 646364238 249295322 822848220 460316255 721839397 459737780 572208976 636869957 848053129 573941936 806954476 679616703 699890304 72989952 442821868 944360149 951253963 909854197 929874818 914652208 961519302 47634322 732411173 272402458 337885387 664842267 772172049 102594943 688942831 23411963 607942913 180534794 599458252 545282014 888990916 388276891 539873149 383203382 825397093 175120032 700197386 65402423 942083773 863703177 922235188 7349813 363450632 990765559 996476104 92799049 345974038 328661156 444965756 713384737 764556616 581900689 710902183 402781745 569480361 113460773 281202434 288814848 453386233 696409941 733726928 378398996 619756967 833518704 930226774 98303277 881211180 937031965 995050061 508599341 606119384 11865909 199033843 581699864 943577440 2614518 340902001 482131317 963419974 5712688 689052371 863978150 933676141 746346435 811952709 836808759 912443659 43617724 562567393 201533533 332173769 503809770 739709792 424662237 581865533 786666527 883298650 557790778 562903486 861177726 872804425 162450777 383691363 229845938 801632555 602940344 793298440 437691840 526582601 372527739 544715765 261230913 478005227 370497779 546096759 477691925 714077474 128326859 315206290 77507069 295516075 11418429 521724584 782114497 897673774 530991995 591192058 474009442 629731248 981769813 990834637 934509595 988723898 180117332 902162301 804354571 839434626 276940495 957237487 504772563 580370024 56585935 578196844 201580208 855921126 960194400 988241960 193090668 402974317 824660257 950839595 477539070 962355290 517808898 997477659 588170382 892487825 753781881 968284918 748853429 958424670 193906198 399958443 788528211 917607723 261894410 415241779 832472818 963288074 837686907 986496993 29166471 446170347 482240654 996652089 953235815 997420670 141481340 400904317 347715266 626983354 114106033 383582639 14757806 451821224 535271840 964216805 512951489 609525966 684328753 901939542 362203110 720818760 133920573 208196417 238080948 569597166 263852574 603150343 826085441 972815874 548025642 675482229 641167503 664427518 756499690 807149906 166371626 409682883 203863539 545182576 78942710 947159289 276381283 458580601 42074316 525348977 128019598 483934261 59913158 546956088 467515051 496649320 768397287 922724922 704001541 984396368 358868793 709360996 986930882 990999088 977347083 984950553 981259843 993233687 434904308 546037082 419868271 712873086 171261287 247826358 458286268 699192506 796846136 944854786 692430093 753676403 497209247 680537274 296112315 974391629 178900772 955829596 182622697 240118055 59334039 907483291 62837910 428423604 901769861 998472281 399771886 755660369 265779467 655594740 225262386 284900988 184197392 428522828 136154113 976079961 125406515 505188711 49025152 54006266 582519681 870521926 199340129 876609825 971630847 981962484 885224917 895344666 449994760 773106828 49332158 744876525 695655246 962991550 605360286 881579312 41707227 729823961 160093515 647353014 113059370 915298125 716817664 717461894 811999329 820462857 62502879 892096670 426189668 796671853 889349647 902980637 63234612 795362548 811401263 845492696 29643191 723226694 337705535 354883323 702393100 865456827 588842014 665714703 680819382 859562215 288127080 993945306 535438296 690105849 513397854 679730108 587371623 862044181 843751113 888171293 585938090 898111550 357666284 846716237 78044352 763330606 809734071 938176526 333961677 372495524 879127939 954510788 908486464 948152700 93674355 235638970 518510603 625248270 977885632 992114128 313929833 408298532 92192272 296044205 904738063 926517065 406512581 441290546 820909443 852352880 539736856 816076746 993463604 996210134 830058714 945858860 104877770 385536963 899180863 899464929 425768577 866523982 830095523 996353686 837890881 941100427 254502097 368333074 214922517 521192922 478008870 579238804 57570831 657021492 13832385 609923169 842554476 893258932 903187279 984592044 811385436 994939920 614269326 962224823 242432769 427295288 518414288 921748685 746940503 926825406 594600798 659157290 553094704 864783207 368593747 470964435 916943390 993744609 321467174 658836000 160116970 634617411 739595420 839135835 694386005 832572568 163024975 542822147 46283590 898842616 426043864 999697825 515304661 606807891 261767287 264828602 244937587 264607821 642130258 656303463 388141833 636875941 751380103 814606486 498984046 722249995 925670998 987110866 510874579 675465026 835794151 843197404 719184895 818884041 181371953 951759136 66769167 80936016 104865767 861279614 843110268 977747715 436330125 997365471 90476243 481749104 472396736 537089028 164291720 995668689 836960767 993745538 584114994 997911312 71483421 821937207 635752722 699209494 972587247 984561214 510243080 959967881 914448197 974225753 687606637 703656180 968033483 972132709 901849509 930550762 37964971 748036724 728973698 975104549 30367860 194076543 737852783 908490454 106330692 859133316 360437765 989988874 503700744 988300121 978344093 987003099 525960564 757747428 267509594 616317246 734126088 809800343 892086277 956637087 637432983 657934188 381716798 384986893 230359536 950971168 472340627 802652981 712776393 777748931 913200732 948805097 321086575 406131725 220091231 609068409 437885465 681481103 306240464 395069750 229097091 542153739 89291711 404931899 560671897 819698738 559387833 802150757 804576529 854589635 523934823 805832922 145755195 493088632 525400375 573169458 904098215 911211055 753726559 970848684 980894197 994867760 759923695 957939340 788389720 940087115 973833302 991342585 819706415 909200645 900955219 980229869 860277692 906761256 578303877 769604813 866782370 921510118 514667697 837978359 944471327 971846064 404187460 666793588 864346360 884313394 133509665 530217268 488432340 999161090 192175135 960572798 371410887 970595268 814792113 999836679 69362038 591938949 187078091 371416802 428422464 790498037 640160965 814492820 760314243 770680516 393704897 920314809 459072234 784674015 170917076 629553119 934851942 998504008 472174604 608187474 697792468 698318835 967848114 990277470 629264070 903703516 999906386 999913175 862934919 955725248 890869433 966017561 88622618 580634252 829109904 956273112 425121207 629372301 68257495 250171305 206081967 437119602 61986339 959826964 750699816 761103946 854970721 921160569 298882010 749557871 198018670 533641998 13534873 23388967 654929965 759220650 521534650 587697874 398027456 685786242 470144085 893241334 748008292 754569871 378844528 866173563 918774380 962813896 632968376 852371759 751440139 905192924 287519924 902102745 841864103 866686376 998790766 999249069 407008601 772781814 391001179 834776938 632229616 844034547 576469932 899216595 588429418 686625540 633501704 784748349 249634136 450246278 814195804 948500869 880737443 895126529 776013993 963581146 64307176 752874243 302494157 962934801 524457389 564745410 87608766 307770469 69485203 97268088 313258557 495065730 23601966 350558927 981918492 983255965 858395213 995572353 825769692 892153604 32290763 655897790 679505366 896041956 292533909 379464679 211768756 809264364 480627359 708780309 760376654 857314991 810531981 956769884 505825526 644218541 87058269 124180137 612255071 654750823 16948513 857402799 41817102 611840382 819329999 965896345 602739200 734682184 769930853 954679968 758510624 861230449 846349378 965184196 363028361 561801433 746084409 868783502 847520809 915204494 698365859 909794683 76587490 350614075 345962130 977014404 355575034 686211840 302927698 464312716 716471134 774645106 803915423 885592694 994616919 995679959 447362312 517886566 901736252 985298054 531941864 762217488 505124625 697113807 661297998 734064654 162339877 579681988 792868310 828589574 241562039 585966977 925342446 956262487 595620117 989577747 166833188 226181450 310070462 911979429 81726568 342043391 933350294 996038446 328794118 497627483 4459343 628015891 633937018 873661400 472356840 949165990 443071121 482736245 786076594 970906350 852291617 862498534 211769922 625256970 535933924 773342623 638830848 787082167 777241347 940902720 227975128 380085114 255499293 421019181 326004394 508978323 194131674 800780359 296721942 742418849 545847113 745345167 193185897 678679553 270988280 301356732 651101326 671894046 279036680 738114321 737871801 994404451 354776824 364816745 448064759 614961462 304237808 431979265 533143602 788924300 357078027 655249979 707282741 992101079 892873551 936421295 923835542 973244157 800378319 888359433 192956839 474464345 333289911 369007981 570362149 856639739 428748386 797073771 444438999 728425009 735031830 788637126 283739945 865706701 177886278 249940385 452445829 947650337 80795471 626944969 563438755 731144522 433914330 828673023 517735972 660932816 349956572 613179680 220453033 282676956 959458474 974464733 739612692 744975500 225614503 694048084 551738397 563295112 657608268 883683061 1663338 556862473 659793995 818397562 121307335 300216298 366372004 407407428 515568561 825898590 909194332 988171818 42095011 315602641 998095453 998734644 29680313 68597211 378453043 876806696 159059109 776426059 113286940 649209234 870030501 969154155 783425253 968241734 447538481 846062279 348824393 814805069 297181053 901417779 541963529 983468020 356606893 512206390 477283549 739253083 776253606 942569012 108176175 999792549 939070483 943502960 243722701 662600453 642683936 652527490 759841021 804502039 123251704 658557221 898171735 938908615 19986459 693013421 240873155 597260733 332315819 918031113 660547357 957978837 192110770 352848922 94181331 558167527 13874355 806008863 81639709 276859352 825692891 910660714 456087411 987572557 341602192 822192987 985598748 995610501 995486388 997032413 567466835 736526443 962833563 991335879 627843568 654728644 403183201 994078912 17978091 656358706 972352965 978950057 990095130 998563491 618851513 809345537 223989314 376413943 801140580 998272006 642255346 758572345 557043051 840419943 135357688 829797181 653279492 699835611 194962870 746366427 490025305 727406875 99249214 531546083 976258878 989457507 16987163 904497676 809919849 912483288 802527848 835388016 860713522 934715481 297336947 393785875 105022305 943806773 843229038 984087381 591018419 852161636 496566166 820409901 819393220 880181601 578940818 759610722 918501075 978523265 235579264 933633096 817712665 843717257 428731114 462743574 355103802 727899233 73803238 224386459 998846660 999971512 294294499 584751793 974387317 992606508 223686004 937132285 737519390 987935201 412105939 422150214 568351106 842737032 940702587 972212374 262171101 571664042 78319909 737516048 232317259 258647618 808960914 982848671 486009572 872542651 363180522 586553686 544303813 854316447 878791116 984850023 913047818 953983179 277319852 714101878 57441689 606100787 762209758 883156678 443904285 855104033 220792996 392633619 91329446 494565226 76359091 849633622 279370987 320344814 265873568 514537531 101125280 689436209 454428221 960616274 709174876 947983353 212295636 944133241 799833991 915955664 664479541 732439850 427481212 943068594 452571779 669905946 571546615 790219676 34548612 636647727 320492594 555448881 288775014 722497932 454457466 706596348 590802133 990986059 588954571 902257004 947076567 990492127 904174154 991962063 535517063 996524772 891859993 953194948 940694688 986635840 944081142 956649984 521206563 538818304 605293837 721322203 363407910 921682262 61844126 433692499 941982232 999901741 159463116 642080619 715433914 840202869 431655777 526892245 501744159 823845421 62426978 834832993 239048445 460412190 932397550 964404944 732236448 997120487 620611067 723615554 8049027 620475416 523481594 534515507 575364418 578458164 481409360 525648388 843504294 919757311 672669561 984516802 802446493 961515343 722482261 748985329 587175059 992710630 785275150 980789517 29234193 949819870 717830900 811888921 364850140 621305070 995811530 995865147 970646624 992851893 978654196 982934515 572707733 821387179 47613250 974076289 544731707 612149291 682885787 837114170 200217941 495277959 288359316 371167940 776587880 864928260 899559938 911184055 233804049 808701348 542427856 757780808 599502996 695428773 522933241 635719686 526982898 550717906 876899460 956107925 310960776 504288158 153146093 233373433 956595381 969400476 123671426 392903217 343957798 818122407 348913631 896284467 664589962 894579040 930311348 939564667 335590981 763879325 708160002 860438196 186568240 257653714 495638380 590554188 254941627 343739245 286747884 679871217 309325104 771608217 521182638 568948296 217207602 647065952 771929805 825656433 129529904 189733009 164799149 743909051 242195240 339943948 699565640 718746415 306651108 940394881 257234110 331588073 485919286 488124376 983712817 994952933 111083016 590418600 224582787 817054497 814970854 958308976 407759485 905708672 828781105 926793735 368751610 393014244 287252437 636548633 883702155 889654565 171147280 386696572 163933107 798954980 118784598 680426366 51950969 571386523 626117757 691251145 141990273 652744112 482665725 706805905 321050032 682101395 200787605 514752465 651439101 953876597 827919132 908362257 99215790 773709390 198241212 725564343 348617270 713877001 854159075 952092107 141235291 183351720 59676541 866864737 880561387 964974607 129674835 387606319 224003629 427442036 997085988 998606910 42904851 842479648 723689 883672599 222749114 518792253 60267663 374226256 304470674 443110740 794445895 896709040 446601799 747224369 40201558 343811414 935560689 972741628 746480513 853838076 660422799 950720061 151252028 372460430 925557609 983908432 583856972 627546385 765710822 921179400 4610696 745769156 527002497 774031158 708478218 839341605 647319447 953754226 19931565 329833801 691762025 885274107 224988676 500556370 387583861 965675769 757979775 906601032 787939764 941167616 157592096 313760622 220645850 350802240 716462215 997085852 178775347 310910307 653452156 966327606 183836722 303917265 238154072 653531912 172903617 808214420 561097960 691129848 893266644 953576653 172904561 719316724 876081620 967228367 793372028 941090949 141493612 155102396 133208770 872323067 280399214 885159319 117607714 460237181 372445778 726597464 541511124 672033215 829318261 993766329 880712809 963432987 793663080 999438143 812003963 999297129 716772449 777126069 422017105 877143053 724243493 829356204 876866921 958045610 342978626 568213706 340925432 730170993 721465353 901733737 116718739 549793080 820235812 863566100 994576160 998310073 273053459 508860723 207431309 716319610 273916772 777750187 915913752 953140627 525573826 608892497 803578905 836110482 426863937 700663261 797679832 993067289 768084712 909942959 168696678 530603180 864070500 953468984 759853701 983756933 564390957 756586956 767024774 866067069 113236031 219565156 751314115 791250685 321869799 364731321 170294617 985771472 818041190 889482521 461534348 921601977 620590963 997904764 754989428 924177123 483212280 485612107 987436820 989810057 297481139 455452702 80636875 467846228 778373988 885802830 490588818 538616041 495909472 517993734 389550794 967809084 271569213 597808007 228995702 837378553 241471751 466084295 736422821 921346607 702894368 835711120 39498904 429482619 189794184 209335874 257027692 578095311 349614169 363790466 788221810 991513286 602924069 818241617 778103810 932408286 455005061 714236613 925672314 982980299 183852138 803889904 493476237 817500086 596438318 620977855 649212052 953068862 792165756 921730895 521142878 855577158 193732898 854226148 280339831 757403029 785566068 833531891 992434889 994218509 3959162 686463410 517991701 713759402 827572853 940631994 623726749 788766049 688244176 875835607 504920670 665995382 173292243 433822216 605081406 919937958 909302920 963769183 757334294 906363993 222405955 597324450 462299374 580744537 557905163 725919846 209851708 486161939 654607356 729477910 832709420 946471349 467034644 556381549 750829799 777762606 293761037 597639708 985109230 995229199 76762093 795288294 876946787 890516095 495554130 549478020 432743597 436405883 589075112 955729084 476739914 656121624 868114001 967213582 366179194 491589038 195760570 256991661 734398679 786602275 510759789 629974135 516014385 723677743 948688505 992513938 749390057 824500294 964583470 982669207 647633098 926584616 851423760 872396363 575068089 927298849 184167272 806997194 73204754 283017905 579547703 842773417 718712472 983194633 700104971 966811467 840673431 988354973 209926297 551775006 645858001 904973822 385367255 662436322 263807103 895317532 305985141 741303057 942921537 950645938 85721660 957080288 135430402 584669540 792071784 865211018 15570656 516124915 279645100 691185132 170027206 802527711 441425058 817848588 805055473 934213283 455138745 606775899 782327601 850638756 91135107 137355955 559003572 868840616 902696571 915911615 816673892 936600665 277920209 986186933 273392622 469163691 516887016 684487393 646778370 696714526 885696354 931742904 772722896 868270539 537153746 838300600 806167501 810257295 451184996 814683712 27412879 401591589 818721769 830294398 206950670 885793234 63997462 976816456 674997573 702799027 782109146 884165409 438711661 997780477 23482023 911845924 713068607 786244663 169662246 513901244 348487952 958324231 12364516 123471783 927434056 955991001 46306939 445432694 379982908 868825497 609094750 920143174 676788854 680461593 134121697 819895722 600301738 807604910 688834955 919190189 175335877 851332376 601101829 796435082 247853254 859730108 919532512 957820095 183473364 653509099 430386280 571266753 390751553 486295434 220153609 241299426 465537012 709589560 900737145 954622231 338729336 625784593 265220591 303689355 801893435 878792401 206296851 620091090 41118455 213215885 458460728 754232530 928440293 949507889 795633421 983859291 949455011 990552170 208481909 578871560 622395112 693306191 67250342 180626304 936594919 981340235 481754662 620320147 166002401 207030779 645776260 928980004 829528622 862880539 559177454 926896009 697132350 821803101 843346982 961226660 163327936 754666250 967273793 985349031 663934945 748005447 48035538 363762832 839456283 852421686 304718912 373880065 622132489 630683739 760065887 827377786 540463352 901880450 295357842 504962682 947014916 976789384 904397743 986347051 593259845 931170174 874397037 943807279 432149756 475464976 675017481 970184741 296067492 485406287 688814474 859819748 709609260 750702725 306850525 666627666 594504889 972234098 798872483 848740714 208106337 656541421 664112741 907772934 817386377 871858473 333614886 508266010 408376302 915459607 81647599 176141951 926249358 979967242 522856936 821501650 322574567 725781022 939283943 962539185 769904449 854805697 497426010 774823072 85345331 931424040 684232982 823026178 340368338 954126159 116429126 289733929 30197539 258800612 210367811 760619854 468156098 848135808 345083894 938865166 731679530 900839423 62720158 271198696 315703183 727200919 213739926 819102903 551319850 662070265 352821094 471071649 537558417 888037546 728959779 825497243 121859102 582933425 601291887 638489515 987776524 999418803 806231200 913527222 194213953 454118575 644408087 645209414 834888157 927042362 849442804 937760786 666743701 820184985 663029851 987740623 507499075 904084948 161681977 221337676 91234217 518259349 34211759 747316442 256093166 980775071 966682505 968157547 184459128 535737228 187397316 427443926 168238088 286539373 317874015 422526990 385501712 464863711 462064756 892583735 734719353 847003111 265130295 844227385 103835029 489844305 754550793 797522239 615849288 669342690 778568855 814335592 288352629 532511168 215194828 386162388 747841975 929176378 461046233 735428383 959664189 985598798 243375873 685479374 445788643 489013964 625984069 642631816 699107662 936641602 282029828 450750231 158785515 786289078 907874293 950337295 910486419 963922809 190458807 879222201 73202574 404787694 36143368 812704131 770081950 902516843 524043108 706874907 730239874 850766565 86678538 643511094 504510600 941902280 469625198 660022255 839451989 894690353 622199856 633798044 525662664 862587432 630564100 952066794 796244855 923799128 813096996 909487934 414812870 614937947 11691721 581052282 618533999 847993509 943262840 993647677 285153789 621649814 454712647 883323703 771262880 798065220 643195366 776468499 181049745 630421973 925816958 994066543 253487152 705588497 1029023 851636129 85996993 682279550 530619340 756961275 869571431 963721133 826629743 996724214 232635870 422255324 600891848 863723480 626409185 763697153 905587834 935539163 292202764 401959318 60765547 472827414 796289635 890102330 573305553 985102133 129084187 680276851 374989951 895004332 394172151 686766629 312144614 313103095 947070930 961180625 172592995 687880176 121573250 232249426 528525330 624406261 999197171 999888199 760439465 818291678 608858038 798634375 906909037 956841899 933356960 935058303 705255798 780516152 19689655 838938877 52937637 741871689 695551261 744715270 634642037 667244552 906827179 947387305 317620962 898912869 1290638 264722238 203579461 744276589 400532021 615501188 882621389 950673729 184415097 680064924 90360401 875475944 646290834 983952163 987298568 997303728 609469153 826978642 127225822 291380395 413804142 668570634 798006352 871863158 657418344 674727557 559044378 941237465 910372897 987063437 724641151 997537070 921445658 940376899 208572084 232613914 918220907 995405435 325182436 476827098 776132733 819890553 734754816 824350250 332992639 765558361 897482192 974109139 50038714 917492754 341021073 501828598 343022281 531831618 425179038 931964562 902294140 972819567 730158857 864747637 621774856 630701130 500351272 866844211 80127456 108619482 8441613 445492970 375553630 641606553 419183306 581497258 455815862 926388775 311425214 584375118 225668081 535213605 657168574 791225876 542126176 893306209 478430174 955513785 259609495 779596037 141624492 931354897 316244498 514759491 867927716 962845316 852592960 995041427 414401420 529477578 361617187 907530858 92526124 514074918 281182972 973298178 927046433 945644403 609020160 930101521 849150757 978546363 921665214 973289114 983047936 999426434 15736905 136640534 837229146 859911894 33417526 321432429 796750993 889835882 400223532 655555207 341212354 775553579 670747141 916281035 367996624 822718213 252255214 962439203 82275766 768828033 737404131 804931358 813310990 997552920 352726304 820886238 215475767 289607938 670577526 779346933 928884002 954060682 392679510 918383926 361510577 584673469 708211534 963829278 109527465 485534515 677702218 700747068 494664046 496347088 183594826 774008950 133992991 448748136 421129304 953372262 495107143 640923597 173365563 832915337 174203298 530279701 378409319 504017359 787102960 822135461 144480036 246745247 747195303 785795312 475949964 544161590 143293223 363804439 459618749 739077593 746617708 919582027 96005355 132594855 838795303 991755681 520225087 781187033 221414481 719911134 488686928 650883952 895828549 923041327 91656873 496117970 719935622 936769955 732916794 954471862 437743935 586973447 251755108 272861321 918173082 957801758 404743635 843540430 482277223 832849757 12057378 212880530 657667728 697863708 532087019 636798786 962809589 993066367 311363182 437287286 501431711 588634520 710586854 916040969 708780139 930867516 77130703 592605141 829508468 973291389 278603639 979470637 230176731 689037617 408144139 481968603 475493078 913650370 440767311 663389183 235271088 536175277 207878468 462257604 275465678 346333309 851178528 948293210 286817809 544226769 15263934 154068124 500634240 936976842 98228991 441448009 806082856 958274951 765863547 797119725 193323644 426349945 558617036 638889105 970078376 975790627 709361654 725829701 346201825 832342932 208409178 901164499 521296228 830726259 967437981 990573737 936224161 964007723 937217861 950427543 139679301 946346106 268327916 384835675 927947098 983057097 338790811 859777899 443328858 518001389 791212712 996264154 461695759 745196351 114112435 518005719 605092569 887236471 460665045 976738354 375770561 877375214 900941192 949237270 381138768 663392171 837667359 861008386 527916406 876529986 978368329 984859191 664459059 996117862 772831981 853023256 940060891 998632298 151940376 237281295 833824962 903594794 517747993 921391819 333747456 564828037 765514778 826263407 984961808 999350679 89514086 596503459 128864967 969499180 501420419 828233694 493244469 851546495 4213910 475128246 410050837 585475926 206842682 254363232 911819585 958738902 711843293 877366808 37474586 669430638 963691609 981425011 738401543 739212786 82965508 879487879 591697760 718280797 845029140 962048095 176080641 923947989 701094579 713679085 861245485 954874898 513819662 513957465 252905447 414518491 348380436 946680890 89969168 581855962 983832900 996268295 83673934 916883537 423055851 671027758 957133215 965459065 325905653 468377854 496213873 862248326 518544311 544520906 610815051 995161263 488011780 592589763 804935963 922436200 338266481 856050216 431131636 840975534 204134422 360651530 16763308 929778249 641136731 655606379 21688838 212437718 82610054 474250945 420882219 743599023 673319042 757565072 583824086 786194035 765408280 806179485 44832207 889706012 350043081 490512052 32468481 698495193 511764619 609466643 412458925 650590756 509426044 537435827 174427750 517762611 18806857 403075167 994742388 997989138 664963245 855906853 276412030 859849676 547310579 932594712 691853743 911391808 391278675 782238354 665603718 767549073 306698677 718344812 406589490 487636157 988296830 996613620 529163369 952089870 708926246 779934813 747756964 955690954 337836974 968457458 285065625 544116964 390581406 700764021 635042989 822372739 588300271 589198177 260853984 398681692 978369818 992305045 335605912 339775517 86809538 996729588 399336798 735115457 175859698 788198540 32725773 716102975 480958816 502586031 530617999 878778574 532462800 772482221 765176867 960782077 257556986 279563866 460591732 967577663 530566287 550521787 381051895 461809977 573079951 940787540 704865612 879470903 440143968 947915734 503663944 561186777 578706097 924884220 218330582 990775010 574452271 815657057 422879491 785901795 826733785 928444984 581019229 955691153 471867364 992202928 614232762 961237671 261987528 492900923 684444538 964817861 214601027 590677871 16704316 937975829 229046260 478385103 307382265 360501698 73234802 876355768 344976687 957990383 159306328 414827369 223327545 343639846 320311450 489015042 42242847 90535564 791525695 906044524 553055923 568064534 446726206 453784030 861572384 895264761 836927466 913058577 784400403 943780258 996720155 997057443 17142082 784742382 629815175 958796471 174894223 876397870 111842527 470882462 362044151 835464214 745176280 998596633 313118553 833683754 65134996 777271493 71769225 148952044 447486835 793964801 24691539 506418030 68518664 873920254 41696611 882220957 96858730 355625433 907540188 953393509 742091083 806861446 403523562 731216400 356677177 538416345 987885871 990280402 178308668 890515573 353411165 902857819 420379547 956142134 607303507 980370150 43019453 294815413 158190108 294864571 244985700 270251307 521765709 996229987 918449203 920099487 485084905 507407752 486732523 522785065 893494895 981389200 905430607 991642556 579681835 936002337 796491961 872383045 800532267 887893224 207684677 667546184 621899526 927712235 900016112 961354199 924980025 998836888 233567297 882194850 653884885 933144235 796067727 975602346 356198171 572133755 962016635 992035022 416476776 742080228 100311224 501590513 751681941 782501892 9661754 904575178 798735223 923598397 59556976 922101228 139407960 600106813 34863743 951628061 482949076 926084846 698356135 868599019 630053786 751267743 919172994 985729768 398651009 789802256 1162709 320318978 659289776 885389554 33976916 198610351 944392626 988274832 531347549 593912847 434066010 688891382 711318727 793310799 412370300 556007597 463244225 485332806 291651260 490772649 333091683 529985239 567000517 896477720 856805000 886178183 77604674 128137724 25734739 704658568 319838220 775063181 29179705 292482255 875800625 991009148 60081428 685184911 755470376 786044907 263255923 761090595 840272708 872157011 889429965 895995369 122364201 253635127 916734634 958091712 917320825 923066941 119130102 738655011 653961082 798289226 651475224 832954016 810227103 967816010 949238413 989070725 678470487 937617268 38740516 503660812 128494830 581031175 168231394 412423707 513193380 849762638 956893554 990585217 379251157 589508412 21355360 142113290 903010283 924398884 366166338 685581962 179226221 685007711 128704154 573268295 276221915 728904960 416099168 903555074 540127284 821475234 462745190 546325300 783604822 995337458 569880667 800384722 517106553 722590686 257503734 426280844 185515416 987274811 882286253 923779525 71922395 789442387 44254826 786938279 337904763 774196639 740040866 825451430 494965125 579832899 334142506 693789566 505191435 806638619 338531774 776608378 383537120 794801927 863935834 870280401 333664772 434209642 223559135 398685848 373702613 412375347 884240572 980729675 683883013 756056326 872941361 874353340 149909684 823740167 702954518 933863174 975315250 987551619 637278349 684110702 426035018 882712952 959672028 962715408 168191637 812928475 817407905 876590806 393791262 888206136 543722516 683220876 436792676 965634708 375810000 518374527 960059582 980167406 432816973 800422217 51779347 630165315 666084838 852478249 786648812 826027158 661521068 987345642 538034335 994002572 35024835 474184361 186600446 869578021 103394646 957050652 560745818 957530389 264730039 604211469 176971530 566103315 115815175 311190810 13861028 422384759 903637052 989608719 556466133 906023259 701782067 901269218 959241926 965107536 655098425 671307835 382723353 567886397 636569079 736551800 694504091 880745372 695333747 718529569 496527555 564874634 947713239 961673432 266501454 957087422 446775376 921282107 841244239 985905618 160610845 741289614 129707644 653372561 887263047 895229901 492035996 839737291 891880591 972767375 131280108 385461869 324482595 435382579 600724711 781183782 163841522 948742645 52296090 194674767 478701279 755344995 953186079 959865100 811685357 905409610 993431926 999815573 139005596 387176980 802603520 948151111 291367428 745235613 210164365 837272790 865644232 908288431 926059864 959432296 293861993 848988644 789759658 886881723 76511161 460757037 416313468 598978148 481428253 910772072 565769793 662560267 300808317 391608208 694504195 728681586 553626014 656908589 124037787 890632810 266071197 603639377 731368280 914804364 787282528 979083854 297836539 670059547 755860473 798408768 846824383 994605322 458242380 749680639 285602729 326049589 460813292 877444064 755534740 768370521 276788533 381870952 205028567 224735265 708943738 958224853 970554764 976289291 96555616 449022570 414558621 648874709 7876007 547722676 503435538 578129807 260207759 647795103 381639377 890655244 124207445 459539511 814061035 892712648 921667019 941476541 651536002 821101789 666437482 760914543 985515936 991360901 944212464 979604277 583605067 713315170 279813645 789519319 734078856 860438426 588321190 591518602 586743170 838986069 33890899 932938106 268320970 850179005 893649829 905398392 273957302 931809797 451248773 492931749 881206754 922529491 185618826 899297907 64089221 577546781 33535463 801208809 530293118 976729948 415243276 605101435 568749698 810633436 581478130 939282182 966045051 967025453 765155129 834354353 615527514 882836818 606477469 745794330 285914689 826996270 531825048 769699540 969192207 989457617 193507392 905429941 693576737 981322191 300333066 326437611 603788117 853597298 551747691 851504982 79604021 363737529 486360153 856411550 945966780 965716179 178101561 198578150 32852711 904278483 870197512 894720696 917389725 986994775 429814980 479989521 484451571 894476831 401691900 658856773 816731218 888093085 453369726 518863125 975194201 993385700 853446990 995165344 228201921 543230129 557138831 676980443 308563743 615189276 190787033 461780324 995443391 998796393 498692001 851845279 645525295 681124904 315424264 983493136 904145761 914224614 538352068 785247566 706226855 983985137 333900990 491227482 185083098 937904713 357967508 633239137 835595096 990153332 174878610 221573071 11339863 842786429 987935083 992925531 35909907 865877710 279478291 497819367 154026529 227900522 337429602 644787747 48918367 450284279 378231654 711813135 959741048 991128379 630684087 851954861 807083094 848716224 38771821 560207868 752077175 810184071 700120019 957440630 620414514 698321416 207106531 976311578 247793105 667558642 987560686 995967749 556369035 800277240 877243387 911734832 999432147 999889998 751544761 835944135 694486629 927546356 98252801 635633052 333257939 710573532 387366228 845550968 908155108 962049278 256378209 345157450 78147273 919005098 575162385 729202249 956807261 991119838 970143866 970399111 27038256 692892660 561054644 669224591 594000667 873928631 979978337 993288764 855034059 895982027 104004726 594836901 272105326 633978533 382035534 392109660 254246691 413647669 777641929 981249281 61372172 483264951 805035775 854250865 725250103 934276873 614769703 788177283 497804602 802372376 733810436 886231719 582530215 786860158 757257273 991818160 688341564 928176671 205502948 766452305 338676301 604563900 191541466 447152423 145979781 426867381 276219683 541588785 845801681 908314826 395070979 833781772 867645247 871778046 144206427 979556030 146291314 564138351 433707786 665431003 943485900 950897007 648495132 794155489 228694128 293677963 263341266 851502893 805684639 876447429 405666064 933730189 340330833 603275733 342501413 458797942 102409591 680196131 432640289 947669354 734503584 750669335 693135561 857535906 430665815 434037969 800110455 849280357 334777567 373285668 687582601 761633907 361655678 599632779 928298492 932484608 914622234 918092997 605586624 981684364 908766503 971800685 295438792 634281450 484957869 498981875 52240044 738863816 160223235 247610843 132121550 399334348 993570431 997475207 515546912 573218954 888900295 918616978 794446067 977344686 845332895 939406889 291797183 823974873 309346534 714030188 879580420 957091879 751652847 828674280 498247634 601916973 436860476 815203661 93315901 864413511 140515019 577116889 819540176 849835884 707289142 897280160 787424826 941772272 677701160 967476742 445731836 562321695 777128961 975686559 675008843 954641134 274711569 917019382 251672116 594722740 756557597 781558633 735871970 874207635 785826428 827697310 168003810 325564977 215812230 952480522 69773605 73547194 667636286 677508885 755655188 976383427 902125292 921945146 699211024 852123761 540910361 754143246 240511952 383206038 49489605 110804196 896226193 948351494 496924584 665869010 938994292 981335112 334062474 908600300 250904574 556039435 962172910 975430960 930309510 973824977 457307986 724257697 906394846 974306266 316595421 398919408 464365877 967364182 314332407 786031064 285064218 608360241 840907703 934769132 22245952 890640768 791228374 925464481 896225812 971775873 29988764 67970243 548092282 882313090 710496057 938311984 61884985 236677445 8622142 899042253 147965050 629400711 793531832 939164622 423538079 640026525 289813741 295846821 758178171 864072181 556209837 652828015 517066708 620881075 553287543 645099336 274892306 730657472 852540350 942900153 393563187 802559484 634996406 782599171 452567018 469919059 942031824 966270020 429086841 682088728 411794013 444769021 647289916 648350605 938284250 966169867 731070460 940347986 790987307 813097780 174198888 324182473 656259337 769318812 559171103 592122047 149055113 313869290 853213180 997777230 204327328 251217956 920699834 969531885 328554373 658607408 101223619 720208503 878464077 934090110 671497678 840335575 755801756 850348348 247451842 887958072 674175303 929833625 66269934 71070513 814332623 826859812 331093871 892411368 267083317 365977501 792185015 895646638 607048040 613370867 317599626 589547731 878013836 903826871 342957763 916063735 497243418 776523685 921076365 924985648 539723787 962605120 300401258 681521400 834254970 939137617 514253764 638443528 213546005 599718930 254624004 804593301 728611736 918895706 812885500 950569775 576352406 804052138 915235313 969854540 521108577 765374673 457213399 894747547 425496135 492003188 233012411 744440675 589141822 690545665 380603652 680585948 155662899 352593037 217550801 527679223 551736873 739953730 487747492 854692940 734525303 835333267 972165022 982117274 847403499 961061100 770604271 973967025 119528414 776612531 34225050 337985503 105514962 762612459 614472294 943968213 515272130 643329028 320077554 629517319 584136262 753051042 995400780 996582008 480482425 779120436 36598287 146743825 471193203 908313079 254728972 678136838 171456605 253301958 627392585 971090013 764119180 905400162 616218467 863896641 855051084 857052176 697722085 806982753 707919323 820063433 472691839 747937359 775941136 944817457 796201859 920910629 19041992 276185184 510752953 694022208 360374640 706341871 459791820 505219844 708575893 755401111 814202209 914008814 574278614 841208060 988008980 997607355 480246119 872459875 233457015 356947157 132559433 409241352 297764220 977572645 322674170 866232852 428854709 603286909 815755171 928087600 784975419 856622282 600525795 823582992 958214286 982421258 492799556 592977762 749364117 929257227 93717249 395676556 413883412 833431158 47934721 215244486 89031378 682266058 506468517 737195272 219204245 514942607 580128458 728832915 576247324 996540669 528466227 918545812 358326326 382661521 779378271 872373201 390469166 976284979 501728720 602483445 24103909 255526695 118647308 445569042 245476423 911395972 478635259 945967837 764042258 818404313 822863699 845117882 982078212 990543151 787476184 979133719 746778236 852084968 33412839 474978046 739055477 980932854 50497247 324887004 304052927 651013597 29226622 90417264 58926886 909854319 227744699 578072341 285021095 394455773 68732347 852238366 920274706 938154251 139587146 597020033 665452248 681205038 821053754 985225891 168811377 794852661 93474566 791487267 595334168 717133016 139228674 525177766 919457046 998014130 2127186 568994104 762620570 909448240 973402963 993416131 587838500 904145170 628132055 874944991 440237808 529347274 659493740 744218484 47501807 133601536 736663293 829038548 353103511 484425228 271427278 342488548 151530731 957459503 233533243 738824402 80769053 804823465 383897938 540259905 805362612 991725730 212525640 433736101 809405206 834070095 409674792 945146753 966171092 979532490 911370397 995381593 871968582 925481003 499883648 677760694 787305939 931264923 857371239 962400710 611065526 816532299 359582133 463458142 460652714 948400760 963888736 972082800 372973615 401326162 635819208 695745012 778589999 815172112 828024519 829798355 479856725 890028764 930467106 965440107 496008522 913144859 914254856 992430302 561228213 842295659 146087208 476181953 861011077 863592025 705251359 908361767 958229755 967667156 810524893 925455728 688368387 727267062 587003274 823223138 702810332 796952585 543971843 912343723 283733070 663920778 481355929 513594680 694104406 716010852 339333758 939205325 468409667 515214561 402627161 508208757 317658077 906739872 275492922 941642604 377610605 411014683 747479694 828881393 507591149 640959044 121493605 689424442 138893372 589744956 821270995 940564302 186931118 360541760 555041189 561593681 447417154 896331387 533767922 545277222 680231209 824038815 167944710 574148170 200093188 426040200 196955766 698158310 33863773 72913660 767409006 771185867 990845961 998767288 700777719 870434317 565743792 723243332 593247113 738302172 365430744 516240487 754631350 785127278 153250176 664963531 513365133 911190573 574916123 734284956 190988179 496957321 388913998 646274919 359809835 415255157 527959518 729966040 931357025 961721429 127750955 244892379 808617833 903787191 96909042 353081208 130165212 255452176 489709933 600036378 22972023 732743139 168155539 724503072 487318585 811967004 257915980 432499282 886586741 908359468 43024714 190810985 931777584 955036736 619454812 802693743 290879308 906457242 933600247 969610716 223839904 496704249 645799703 839544594 421694376 873234682 34176504 996610768 781855929 903304444 27256356 448094554 131025128 484583758 487603102 535243441 549960492 839570949 655855768 831121529 412264947 777707931 770346392 867747381 803022139 976553579 291998353 405680700 378352392 567817481 349224091 438894479 612129371 727274833 12652157 80989562 431416467 549255309 7711659 961684386 651612573 949082450 506204431 507577037 251589485 560687272 686526984 754214846 76962638 206929685 226773835 675690388 413540791 979119668 43330226 258528783 701412390 716854561 56525375 429888912 512899590 861049092 369316118 594887584 868093301 887854505 389194818 974872757 58455772 603865309 485386660 595751166 607088558 917071246 826817749 925174888 6646956 903891557 137527248 700862254 27856109 529254055 422799286 723217132 889963227 896266084 1305104 520401298 658345661 734431499 35603414 127932030 643230621 841553864 630727887 890222266 642470742 859334275 522634444 843400313 103144324 304337358 68141129 502260061 744722894 754526311 913218689 924008752 996570105 997472690 140539287 478868050 294223249 989130035 803049341 837736227 186571678 262308482 693840821 794012501 353540393 757650958 385288820 647335973 830322128 891141388 90199356 722198151 486625905 825541473 742541964 997020987 49427007 582413514 887392611 951577884 924196512 952653893 345619358 817734234 408592300 847974054 1363319 319953269 432629229 559674395 230654224 654362021 323791759 918286432 92613395 410166885 217631510 427411034 281384845 829830296 871032291 904522483 966061872 984674634 650997440 896971614 446855453 566778061 563372117 564759290 52530299 570090958 433643479 831606874 187819717 512264278 630218967 852262632 406272008 970897213 370908603 853536673 307906663 967700634 104763255 685838884 928175833 961523118 990062292 996516700 633769979 985749174 155812425 226301432 970487012 995856715 513574061 732313602 443387390 831098431 324837957 997505429 109753816 155537133 55264523 268689183 120162159 938380261 941175623 954363336 161095604 997316951 952740375 987053541 693778678 887663329 952223620 968338062 592786251 593187729 737254603 832952453 389604168 801065301 955877165 996719745 544814650 983117265 611001870 809280388 410131897 594719194 869695997 902358393 981786724 993705546 555978291 901947645 110022716 875761337 358588447 832609025 285220369 832312114 394384865 406791614 997925260 999179358 938680746 975066893 216199045 297623711 56600364 377908238 912449496 932562111 91288809 286930121 114873976 852258408 127247457 953296176 954462766 986451993 169651240 924361366 628656805 835303067 719442144 896893466 460365482 869348502 942993818 971748628 597013607 848015238 469312145 726004146 714434945 994417989 466361506 514760703 847401594 860160261 249356258 265519282 411274308 591755419 162824650 646107685 765322821 860994287 148053587 525598480 165259229 331774644 638890119 871419158 267340678 622139840 373123449 855882179 284503909 374258631 309619674 574296407 32878272 852773561 381349623 876520503 743635328 817807886 760952032 900163305 370665815 663507563 457155234 716789163 341417895 999101518 189749862 610967499 18207704 120189516 747491377 956032610 25068392 200895187 286180527 514581836 565110609 890144979 55556032 548068030 85392349 891604697 280451950 283868801 983341200 997985217 576193858 856892173 641912701 941285929 489800532 853811568 797308988 954308758 835577266 906377669 58122899 642801904 370910057 542436947 689136452 768380884 716018893 825977243 812480926 927106230 600744366 894777816 133553852 289595333 465198299 619087788 98140004 982741856 735431307 956078048 580744341 787483778 623678416 837542520 224133126 449957638 891604882 943206898 949966356 972436443 709209807 973020594 712903268 811100330 15298420 441556523 928965790 974652349 742143047 767000866 988980334 994670431 242827184 491531455 252514118 308111899 863383610 887757059 701065327 942562948 787946220 833123118 520856424 865683328 550675960 834161455 549805232 866812264 901770 247473703 276191018 994642995 250525845 700609852 227288893 527296504 277791526 584311118 965056160 975133283 539766949 742286035 441753749 767962823 250027524 541171257 651095479 747724102 591150099 922136457 346892862 909950083 295391411 665593805 39426019 904081544 769341103 910673197 924873582 941092040 470304257 798378853 32984312 638161529 290386523 975518882 179042491 924742528 417621629 519449117 140220564 667270589 757857528 987870250 166011299 248803208 439143689 540399494 510526608 535369981 197288724 419582878 690163188 707941547 966840366 996863457 596563637 612186806 516468216 602084411 802544135 984270796 196665716 699160248 916901039 993359645 75067894 979946927 156013164 294339699 517010414 865279574 550114600 639926580 835549779 942612638 157332080 863166469 925201934 978414579 827058254 904498108 681426493 997754562 117971273 871076041 477851137 894990341 635984842 640691893 869812083 936973069 782281955 874098813 367913318 634755765 870622922 973451813 440525329 443794221 184321226 223254140 211017180 921501846 509976590 633177439 717482756 846394461 910655670 981946464 404442485 842193699 780952351 842266405 598895456 599692375 451190512 557261534 770256676 982060723 34278466 796649486 424623395 617965561 656801000 773677820 760330266 831991763 383885463 664242067 59824124 299043278 40269599 843603754 153769696 193685831 92479661 830964792 665837436 998476565 528733093 982415653 803137836 812615991 471701576 986051955 972503661 975942600 463464877 832197795 193920165 467754156 910238342 939775406 227008348 474698277 206350757 482798732 529633684 682442935 232221777 488049684 587862082 846805126 447176454 538196334 532645140 934154232 708051035 856434817 178230350 981414191 725984219 754184848 221129372 335730898 263126224 808404911 828157453 855695202 83289120 611863050 272864169 341777309 776994495 954265072 597448576 661581572 689690230 738386933 893685148 910928373 664472657 708130005 234325045 561819281 174976420 792281276 516952242 634263815 27206892 961687845 338475480 387234568 990026473 992345758 245324468 400710235 5692419 735739797 83539800 315573509 876103028 939049523 166390814 792267881 216359006 500186081 806188573 927955649 941936752 965746022 686384760 748360594 478133245 606050921 421353667 979124595 593217039 845573167 694058270 696611662 953773905 978600032 945748925 987297559 491973991 521907243 982484040 999358904 193690756 240595883 847402703 854472250 328504036 777953394 485823219 660209773 415408299 687565663 943245321 951113436 332236366 566521468 674565479 978632311 739287541 848654214 35455657 98601828 369521567 975804441 447131928 628658733 310001053 336763917 64413594 375478382 943271867 963483431 980630889 993424870 802486966 816393304 363027535 895558085 903376261 981137390 355849498 775434758 984605261 999784180 404659819 852347111 436283829 524388909 320484299 847911154 352626598 529052677 292097515 900684212 712100429 867119895 683555327 740851221 483052796 609887535 829016208 878848832 107661632 824573485 853229583 925616396 910423341 944076306 297327555 844784994 548215953 644641413 76510443 259867673 511044872 550053828 739090166 782557888 696447008 932219147 834141942 874587899 971313308 973077153 206583006 928842538 92441799 958386979 253169773 991312752 53502868 611832934 42518455 856478160 642746650 900154224 302992624 625168004 574315891 666444691 206596235 886272048 551650177 771800470 814082623 880808623 568117629 619142303 376124099 768009638 502924687 760824002 191241723 484939049 418222471 465169410 187516625 284087560 761245818 788090632 897650801 933373096 620121806 653255593 488302252 766478220 154517097 190290747 501847109 937318878 142913075 722756345 907767604 989440992 884839632 893194189 541664508 859525908 881347506 892005738 407974735 795507257 574537201 976660882 234662316 461489918 405708700 767172905 599136176 930621086 64962426 128155792 606502867 894825268 496018820 606154910 200005459 337827085 183223575 224846598 680223302 860043835 49135703 155910227 819126518 968593002 193892820 324746181 38121861 662053644 915649528 924645815 475415565 679597293 647916077 971878343 13247520 713245908 76499599 874776040 422574254 837775884 618726478 696476320 481135886 998278319 352271695 803372995 232999661 862649298 358673315 893209483 169793962 644119388 944919301 995496002 128335980 384296465 805926474 914867840 524557393 694769065 265809109 434874802 163272586 635039511 328281487 576544462 438495907 631114442 895626866 946208272 47184612 899202120 839988436 872692174 228466542 673720012 734231371 901347168 228993054 704128084 958145635 995810517 575990657 987836131 987312472 992537005 283177296 510467179 598812923 600940623 837887697 842651517 545949596 958564544 131114847 288677032 529886946 648730843 829164053 829365120 827003907 862305979 227275566 520475796 370848596 492690025 312455591 815922981 446508755 876489166 218918647 567779187 848572099 910685586 594232778 811244506 190301036 990720494 186497689 411981837 958815088 989573506 238554769 510132128 358658249 949878878 652879952 907187044 647013295 932764864 717683597 940213483 272638680 447092361 103121649 399240563 227236183 533771759 489136925 835469557 938444265 979311286 957952734 998740350 343045894 577102254 226273310 973781755 985352599 996342557 109944754 568893905 492013440 712013431 991043771 999315809 309240048 611913790 908272888 929246924 30684542 755450680 728345728 908616385 615256784 622326013 864245278 986611235 201649050 832642512 152783017 666407416 456566903 540378095 738054586 760700601 225329944 290287444 115459041 813721317 785432607 894232864 25024659 820709588 158187966 512354607 470490498 538183888 873513408 951155569 797041717 826382587 788346550 981334546 896327059 996037433 428616283 708927618 347205049 465723356 287390277 979298441 47462257 905700778 203665456 985392239 45603336 124769939 645827206 769223713 924475761 962581129 827937245 967488237 869793775 908827925 960187840 961269144 530927407 634455408 946319483 972696740 96702608 298567468 397658671 986928747 768151423 939658786 766671799 902277273 229243840 734399953 246313771 287828109 223022499 478960981 921290626 975282622 221689394 734309934 902365722 958786986 1455671 707675381 789430369 884791091 259180157 282017323 276069951 883275368 6438216 949345729 167872278 781527026 666549508 848492455 291975378 591213028 24258969 285115597 675589470 692726582 390787433 419128794 920615377 947084462 564476117 780675607 575001784 693461110 189469185 207400438 988213596 991062173 67242198 911667677 195273623 560592941 582535552 680748007 121784590 355807020 219130707 496707591 322057679 599707623 379562175 930664491 532394133 997731578 254082945 474127769 345528890 795792742 214037673 824482037 696109517 705345408 405345297 615626932 794074923 977567636 592580037 795317178 557247804 596664274 207572940 655441944 40752597 386577421 754628522 938018979 504767443 777381634 24965973 525006711 290023930 816051121 167572020 954120503 35772599 180457378 379032637 998830215 850643083 953438684 80060885 541990616 616295680 871608118 855430234 989352318 280523591 668184932 684519729 905515260 865565826 928429091 992542097 999414433 283614686 335125327 459973273 961571521 681690108 753752645 585542968 922505925 701109313 837277013 9720301 915463010 138726708 798156577 918036208 982167509 538473613 650677049 108581175 640920706 148116927 629538416 958154987 973124224 403863099 488244679 242048169 396791836 925228906 946846778 162053725 526620908 838891435 906747968 317761196 995827295 791157459 838465975 122620522 823845525 722949561 978572944 45123732 991361427 441377543 549638432 295716558 352469338 922283769 970371695 648714697 958909531 278587263 612600334 941472659 984901014 821702939 911443262 133793568 793670188 351455619 563489805 620275927 884921792 106750193 654749482 665324628 847035034 126563109 717446577 697373631 744998119 683490312 850668636 401757446 829482697 988082770 994442986 285741749 811594116 175785115 505282355 696319847 696473247 913790623 922147763 766663993 954793626 133682549 326844490 625881847 699897862 194934782 832338051 377272749 512166236 314565399 704587392 112373507 196999935 495840056 706536130 27529945 845604952 356802460 524846862 748533488 785395934 803956479 812604440 669393495 955862297 996807185 999791319 803288194 879846772 34442987 677494810 286457621 491275165 880905577 914589310 872791639 936129882 887322058 890634464 710944966 732152356 718899435 779468704 457967663 978627911 452270823 470728607 909239170 997853542 130252674 718133218 134603923 294810522 125977339 660129255 518448361 684666635 715557970 887701361 693211955 762537440 998693737 999228888 573127223 745558487 535810181 655052892 332793937 741334460 852378709 895241699 852082459 924335391 480748504 978261486 412105376 780959311 783088449 952591233 143430409 656299357 647386592 769249056 61538642 858651671 103117620 320213482 921714615 958870130 820006745 842590308 38403526 254427875 893752015 953039376 783144925 887015155 267640018 364895707 364496062 763670313 393274986 877681596 813901156 826189410 261346473 454203609 289056843 898480462 129874429 449191654 650400778 796625081 892330115 943535001 302726969 609381136 268303352 395397753 456924549 641894847 903336017 944331865 94082710 812903192 941320835 961832685 932568908 948827478 666404285 803498523 761551040 804352088 77250040 913504069 121381668 808451007 850381857 857763673 633300126 961272381 232585997 562004964 741508122 806223749 767298930 861057646 882695081 908182384 715215392 952658537 295073870 541514564 789315925 981438670 669565966 838608231 47018335 48217268 501034670 986514258 957233113 965374296 449739915 643228559 888784652 940844443 74948252 78753359 48719223 999092529 133182413 934463846 657639678 774666087 103263517 565622507 833194799 895033366 288677648 914222102 646503650 833247537 243693583 331165242 28363727 199819130 915697609 941963802 622936293 751761406 392604524 588325781 109529602 260046109 189674762 429997902 862043959 917503316 844124807 999262271 981115953 991353921 419350070 813421251 519752525 535420022 124128838 439915705 466494180 721176561 794853776 967431146 523579543 733940380 659793022 660510740 938503290 954861901 626462904 691018492 902365277 915453074 72532458 289698868 524871159 741090071 281414065 444375815 885591946 937355860 788889181 986298139 580064847 688157546 380725050 604265497 377619490 769013784 569451635 637139880 418350282 551099783 372120095 933258434 320187402 460433957 910533171 952065281 827821234 868643227 704979587 913102309 440233181 684120410 500590870 851238347 360902272 971111811 562389502 643075053 202313338 864735633 684744248 792906116 649873931 851162026 994429958 995338586 50020772 916515367 78765442 950265972 659662021 806318753 697184656 902902414 246801548 906916538 843531062 867984102 716162917 824818066 619374497 997647776 523235397 584328733 195024190 706643215 591217435 666260525 231409533 968479853 250853109 784796925 719557974 951503730 205003676 923088075 425517988 943739832 923625300 972234968 431672740 488875025 168640608 335725731 70358376 641767563 337663688 831605172 192316212 769779643 66200980 727995380 777431065 934226016 262164446 703237700 573301681 977918165 976752250 994999574 29992835 953349240 673878830 835169698 791069596 986302743 285747323 630025317 312795771 784617274 597048883 647217315 834798297 840387064 663716458 889606982 846440512 889253551 331082718 615501688 791985185 974647804 120599317 253599917 274748604 397694142 693194607 745661412 181369409 636287611 447881837 489787671 608892721 688270978 866198458 967001624 875371041 977511752 368083241 508872609 552603979 654546925 629092262 872580285 308669086 916609616 760394845 980565750 694512029 880044643 326090696 822650057 174527341 898215920 640607906 672916186 585955570 797223975 663666109 695128253 540277758 668104918 890324639 907983771 332177817 952929356 692927979 778623265 192714584 920429280 767573993 860448175 137410663 763574166 423828262 601468223 500574146 725079319 763080090 865714004 671168265 766046101 581752193 725111484 682204297 715019566 522188989 912130218 301537538 662990795 526948458 811401070 860591286 955317448 714576459 957055458 292424317 422956156 262653937 935087600 432342057 813596035 475023273 965688186 472817270 976542238 878388681 943315188 236581063 307139652 519080203 607182879 994423618 997648113 880062335 937841842 520213088 928500380 976310341 980123911 325566487 778945788 506779534 687276392 929155070 964413907 686405764 829963984 870091402 941063296 787547191 965791709 240056010 856332658 787169144 792516702 285523293 996202418 316231410 748150645 515777711 989216407 123156834 820218851 924681561 927956258 277614962 703682826 176029775 713449020 53515649 650931985 466130113 908053920 347684027 478542862 536079861 961553967 247746876 905339675 421046843 741026908 93211635 741861931 370434661 396301615 480438127 855608084 72148952 438781449 902609886 948150559 402323062 617943789 814878065 867972566 145636656 275543099 828637528 939577179 493155442 741346246 66818276 255632071 626943827 954610186 127694009 788716039 9927846 901560116 26749831 966157652 646566181 699292628 400047848 655000539 401793354 455472640 115209101 824575996 110716345 501220683 742665356 882801890 940423012 999618251 21076079 999177304 113275691 926740187 702146250 747102300 342701041 613558473 414419699 716960898 733836918 814655826 346850568 567251219 465888499 933060503 734037081 835721983 668117598 922940406 375871998 420631806 934465069 993397848 26265654 372284094 242309412 469299428 720866599 870178162 573751663 883658016 437243544 973911692 525929577 840973085 796298421 823258057 813325458 844241217 700696636 918922916 118606628 205109860 814950912 918876634 507845055 937255625 123094528 668542241 827982776 970676755 869137041 957046022 759604248 848496582 867444188 884906488 910228022 995623466 780545689 917758027 585726260 827987592 917364925 921895283 139160795 181341921 120603075 566304066 247707185 348447740 240851383 852444069 444002117 924243254 671127299 931714732 823587547 861937091 716362149 787975582 706178420 819499954 552908710 606703115 917380123 943610241 64479370 507001864 251541861 935812066 303665336 608407509 480873471 924524508 643062661 689472374 299820212 657059804 602305448 800524544 511194851 732774668 822819342 992179838 733593944 854372731 518885948 886736964 270248926 585073900 171510030 824137664 722886050 846461864 339237874 844916170 749074017 927853960 480307241 528190602 883414261 976124021 77938630 314281854 584597632 803571908 732889457 985489611 909846974 949463702 707109641 820730684 418567689 788435173 740958038 950122600 842317233 932204118 382426878 487236257 145836162 770365691 268684147 941337684 332462752 911151191 971535255 999079273 159537367 883462816 749548483 763531811 189898394 461678970 828584256 856964229 947330025 952937624 882982362 910861703 924595970 977423775 340114028 999113730 295549996 893924674 891000262 930803460 934181734 938191261 729514002 968168262 43220338 305823618 934097192 960943721 107801828 144862164 720792486 784674716 383212198 905002406 594696179 839078706 692169360 901299673 88308650 127434439 377992431 876732173 61228251 675735853 979272063 991236378 809513704 873239786 657583112 947604846 871147355 994837313 446971114 955536243 250680340 892790657 118580035 501028848 212180860 385814169 776678222 951559011 151116819 461571459 215905532 270992067 90512661 368312519 293091671 965983568 665294424 930701956 928841859 932298535 818044761 854249933 552740404 921600734 75608877 647477879 913893447 935004774 806752887 820332326 746677873 889043417 102749630 623614376 393369411 736688400 731714940 845560968 533582095 758064558 55052398 602728808 700964452 847861688 528148197 943061306 840094548 937574359 212281261 468177336 277328357 355131767 988639533 999083793 516160633 827322153 976440736 977932235 783956437 903454387 678769366 746517951 153462377 755891123 463675620 651651379 992960527 995978881 286597267 368910459 480801112 610398405 833485687 999628091 673094577 812313643 872527148 940984519 989327837 991710415 484540189 994723787 124739732 693474591 608068470 971306293 658677312 857505258 281693517 503840251 282415476 579529002 748395808 763248966 557824714 628699825 261580490 875193396 913867636 945494349 987809121 989145389 948306037 948421138 857244938 942192770 938126291 999895499 554995882 675161664 510030152 933164890 890397659 984053553 828184121 975996299 310560713 818967208 465082180 543496491 173759698 707935279 688949067 791858136 379859091 611278780 33949824 307021577 896622171 902615264 234841100 796918334 904607020 926889319 76253950 301411818 452676777 963521536 358482726 590737657 477235710 902247128 856082222 990199142 218692697 401866359 268599365 508395302 454182411 771489232 197234001 272426128 697649559 895183846 614468809 908793002 862216932 959470468 498384617 897386806 218561220 600434031 501080697 721956436 437627336 832839298 147078048 351439272 802007142 915444108 823206303 825652684 369971926 489779542 74909100 812836825 809552363 904672017 266971965 556771809 563947269 637960643 817360773 934775559 580311205 857051738 753211321 873080707 382227850 554214513 376822766 836262947 263420296 733884207 910386126 924064537 888316795 925116582 728556668 886585401 900024077 956834840 692387069 979964785 903946992 930093912 258923321 434667428 205047239 891340306 129083537 567918302 305150257 426001903 108706087 813435219 847581627 935864645 462708725 516197927 940925546 968331467 135096390 163742095 815819958 820202972 475416086 889169618 324361119 478007284 888573739 909791288 878899952 964865460 832270231 852933628 777848106 961872612 518392275 694433622 566425891 573210621 949861952 993570120 128784158 256696446 403973201 659963715 695848592 822688069 633363188 969629891 407519993 728198317 22658935 793273039 318903445 914168809 227081611 498848376 371171701 816201617 401564913 702903430 741998966 834502182 573522356 706511738 629338028 856069792 378923772 716324159 326987240 456599735 905239472 985403230 797933977 809009991 768526796 796637944 880348157 932385606 20665323 607074316 847950220 955287349 50557667 791352470 555798781 904324495 558598449 748223023 124381849 713433842 598351552 891809367 672968222 923248601 274835906 847681960 37284673 341218287 172502135 756769407 311224518 798248857 984497297 997931532 543591807 685562375 46646680 593106865 370361008 881259441 850070910 857343583 4325342 323805484 923071166 994184833 668378376 873178998 435853027 455482930 693178914 814948928 685345243 954792727 403753136 818862048 485644356 740322176 626018060 779841566 15932599 691119739 727422472 892520548 513120713 588948032 620716889 737047549 381430739 491142384 458712195 488106169 291780471 585590430 759519320 879541943 542483305 608688813 893967519 936812782 76254714 813891857 345111633 352209921 821430393 912297183 738048987 923624758 559893372 750493766 991836953 994284756 398353969 769923502 94102099 841297754 369574730 944207919 414092029 488919150 486018988 948603255 269740916 389353200 713005313 990767606 953665738 981252858 33273227 448653173 287894097 865110144 29646660 342201086 858323204 885963313 86643442 740147826 853314468 873146633 109822650 272304349 77077277 810166174 743984561 998269062 732788534 926416468 336392224 556875175 723538798 785419622 481967206 578249620 587817075 910367271 365977042 828318760 822451825 851068446 322598844 610223466 608067685 661190562 682690403 853882988 169704502 356219756 103190935 354111747 893383599 938276838 889028528 896332344 822063196 962986096 965912520 987628659 877777134 965475273 572672621 802906827 556225210 762747265 570830765 643908611 348324892 583816491 451033248 486240641 779902381 825823237 726607394 871052396 816850190 957536031 363037554 779916845 156819874 719469705 467135636 581430551 578123840 902292106 49970024 661836633 240435902 863806381 873465810 877295696 164371842 654371459 653156103 702741960 595293821 713537506 198989982 290655372 600289930 946583835 63769374 256078246 65446138 139242116 302457129 950418822 92640203 981205584 819185061 967503812 672752715 949638730 592631272 924006615 748681883 964178244 506016362 746308104 924375603 965692425 893468384 918054583 319031194 902760477 881564032 967617563 214590261 287893272 255459651 311579150 207407214 903750123 881643434 944880746 864800857 886423752 379359727 488488182 500186474 784773870 339972132 565700538 75682623 392771188 607229008 857582861 95309131 399345548 123312186 838030265 794781588 828491532 176179990 420607120 33424875 193940875 376629583 748220227 104871531 886788615 423829465 939137333 582096683 857980984 990177363 999916629 535984722 988936340 798704194 921227768 655209875 887977754 604563026 962378591 598836299 672456994 286583910 642613763 702076581 977368832 4892102 477164177 276769028 856593853 649668157 656378911 119630345 572990664 942243793 994702816 57448150 314997349 994565339 994623283 53696316 455162065 993571660 996035385 119811167 144551576 878901515 934358784 882189507 988745039 389538918 943718504 814540067 976074979 472619602 590019506 335671415 975025668 742016102 946433878 2904593 502536176 601933095 864061235 719192990 789518042 855386400 944635260 115961217 947807709 87810708 709403629 191334077 817070516 735142502 978469015 380227483 937498889 90892215 414732866 52256317 842493041 112716094 116305700 31522439 261184999 781522942 991488970 900126497 946588658 437288746 919385674 469181508 615938256 628250511 746965024 818883582 924474757 653186526 740826271 350082777 562951630 585173563 734070656 704126829 888661725 337431898 556993900 772395826 955795694 732991336 835285273 399439320 658693443 119097522 683409698 951490055 988410509 565487604 764625931 532274287 745064082 219516457 234663316 400932161 407624597 273349571 510503901 736894238 956721244 202804675 993867995 562925405 980272991 381487255 766091008 819569757 993554859 57422036 363483934 931849933 995120251 366480400 408362438 888432577 914921573 530697840 555236958 635934220 994615469 37036249 169258359 458233257 974008881 333041442 493934283 781498286 802502421 109793753 190910326 395237531 724830396 312994205 402791479 994810643 998279444 129801192 361463266 831509274 920765444 6233168 193223376 640475256 808206718 652442804 752768746 40261747 488988511 104258184 662760714 774829488 823097276 865560976 961643179 156245363 505581212 570318885 715361158 792071663 931181598 277881506 640550033 411203027 691946623 384905220 823250619 322388308 332429085 873540023 980746841 741943268 851802834 71852909 96669533 210482985 476857652 841061229 879022257 790350120 974751855 162094089 653995356 335979050 896549508 977878548 996901034 349301047 351775439 490099296 648155508 657100722 844653171 234229523 955016947 253873674 788192243 291827883 651619168 113434675 570042985 81425747 865610905 141354695 160971670 640423579 830936104 195208788 212140879 13205212 157614729 639804177 943064447 601104928 611030832 610066794 851796537 553714031 920112737 740751850 887673729 467895782 603481567 795507343 798895744 815873939 900211828 838957183 965920886 162330045 412647652 769663251 839161848 311534160 445332843 396289633 465496022 422293071 436487658 671688367 890605003 647058900 698302363 153208068 312206205 860676649 992816212 713940821 744168400 745318797 795486198 181783002 287916332 428939277 778668284 348683410 480651398 977739834 979941602 30667983 832671486 657081992 736776488 210232071 816854246 402927329 781275387 335743256 470844643 873617518 931214707 24667024 749981430 338385611 993971392 532107692 612180785 337288374 381163292 454448344 505030585 35704978 584332893 806738078 819611874 372479035 446292398 561399859 945358435 154379612 510071604 404400439 829422024 413976065 978729155 216032982 636382188 944071060 947182356 283342984 305261708 259903696 298522668 709270041 772558959 166424513 283866288 638569047 910641767 427292767 801965942 958949195 960476660 83968689 675657889 835140568 881817372 490114787 636144329 154226455 868693547 134295840 206185599 713304088 729092188 469791490 476179509 475605471 683961471 428440413 456139558 182874753 468809598 639812236 725284943 621839845 653072880 454223940 646715864 801398901 894669744 806707880 975180265 296030637 747988079 441647855 491113293 388651841 661373123 940740127 993824836 15643245 679521530 458066016 606247685 810783781 880198832 830341160 985488996 416105569 754704565 913021142 944201973 912952320 965414915 382214669 770311115 854733874 960716475 99249867 879510801 107555928 765426547 384228280 608041758 387632010 467237704 272443703 940678171 579668045 877922555 773785016 927020901 71520035 994973870 719721839 861053846 793619984 993001271 697653139 709089626 404840128 548039291 641034031 993400869 183409778 480942325 745671777 914826815 367500433 415895951 15974372 777549608 882861470 951455609 987629795 994041634 456423041 520398581 789815554 885162787 133558345 460777471 847373169 854783348 726872494 782954357 231056353 863957451 685436436 938351477 960098616 988690406 525782427 548925410 279124076 886228536 598848401 904163856 148496385 998896095 803499528 914186946 95681260 128783967 184365498 659876865 816293151 953180716 724255885 782857238 332508969 628439351 863506874 869359857 204165308 364479290 366608993 524883051 654530715 888803918 635589754 678577152 899666672 978321633 54455324 514934283 442367320 858362306 358216785 620804394 997823465 998198530 845432221 906298406 653169067 967991224 206210360 519154967 877788962 953551843 885969349 932255702 685448937 822488629 511842491 927801988 821025058 855036352 318037659 673530394 646871956 912935238 998267666 999640680 616274433 982570506 576269115 807612816 232010576 702249286 948300448 960622210 531686281 717842249 556396408 608131731 394006033 406649420 838857135 976154520 172811524 907772647 386621274 511906937 384889836 893609050 996097944 997679192 830264146 944112880 564384478 881034396 225301992 458732483 264853597 913435067 326546212 609126575 299021914 687271473 697449127 775224052 414788318 600904307 400703009 725170049 540865031 888967624 663521763 986623402 769245015 898606410 946730197 969520579 779592700 810673281 112130948 326632217 930057904 973752829 590711909 784867795 720877063 777629414 346236766 912763499 675610046 686775471 893521580 972303713 6491495 659924168 784742931 993181490 768436915 831331117 927523306 948692067 225170017 704645019 62923073 832923100 658464463 737700778 800187362 835825097 292983247 505319974 791726448 847825721 809052451 979456410 814996915 904724078 644710441 984900782 873449705 911561994 823144981 976945653 442688370 815326332 379637068 457761171 335189389 698089743 339519793 471445652 612436541 981480089 490188704 539062491 945573759 990532069 780620817 836956801 20534841 435081220 76537053 360870101 865892348 952427753 52919877 727619244 831221443 883026341 531103141 882603976 476151284 552395524 637251022 934653090 550689987 678554090 530584370 835456424 327754917 915346666 68644968 525157083 391846877 455554803 301787173 651572866 415074424 822600137 230625635 398598487 971489130 999177445 764160468 877065057 6198238 525390217 589675739 622560333 122759568 163830449 210420712 807837527 131665598 350981474 514099737 748465825 533733958 991336246 356935502 370255193 401706390 577253538 443937614 540547947 339942281 390775004 223566200 888689247 299439076 814932175 141073640 960239431 281992879 534779742 780017325 858543110 326437111 404496701 146174265 490767489 307817891 869141550 623491212 892801885 707511323 739932019 466188272 957559977 343059041 784409284 70502162 661076352 183952822 291664397 33606996 548757683 822299766 840280900 205655005 749875215 914282231 945789598 547211775 904313220 636662098 670980510 887374085 893029470 951319835 995333323 154626631 493964657 928698844 937418413 566222340 596630176 873013762 889048069 555510411 967912356 426441777 987583588 163247133 466270043 838828790 935377031 410355947 748557175 758170602 990455911 650684027 864281075 452425252 811894952 482397341 938633637 753552370 971415831 676524904 733220411 504937483 973082895 440014312 646120527 483494116 525916193 193691204 398448906 993430579 999078309 41396149 63058691 184220480 328328403 74393130 457446918 181824596 710068272 543356666 608185166 537748399 664663682 537299347 957391156 23565379 907902674 237983224 784082256 775183028 886531908 686687438 997194432 981938932 996007481 73934935 473546210 594957147 822099762 693019160 772078785 753760314 933804036 299737371 464315056 469831766 866050192 477774880 698225727 885071983 963070905 185585571 444221111 758805650 900363095 721760628 891383133 284059033 540830049 512480574 727225518 381603742 777303916 936225063 960698245 834940521 842516393 94724536 199443367 56242373 577602775 166820737 302999162 738072470 980997701 307808714 416990618 142670309 966267910 18850433 272919712 633539628 978386727 738551492 911991042 464434456 843810867 187646089 653652290 271276732 326706338 480876535 541938132 747337935 827541927 817853416 933515589 246542819 379118534 87203939 323828687 918368738 927644324 851218273 984697810 580823841 767469450 362377520 781154273 156958938 605121886 386024236 406528451 613222395 632243769 736916134 817253312 404537395 516978863 564454014 587021225 451557229 755192023 588377582 669421679 402271470 841993506 84050673 413258590 432973441 544397328 701396553 703416488 213305935 408819662 599965026 924766590 855010614 965353258 28660563 88825721 921343982 931675375 217722224 308599895 153518566 982658247 386794767 459766944 389201295 774003856 585565072 858100073 512154247 610595166 260143372 842692188 742219428 965166789 180795848 698476237 569726591 650509360 167307996 533007528 248920230 424466915 696220823 830018891 799720202 877078143 731478014 839479162 601382376 820801154 204646388 629440719 745174730 790407544 321794978 540474142 186576541 607340119 62455339 578297478 408483796 578770710 614768185 723013605 735558563 998751785 14707021 85905206 999712481 999717635 758574540 921678603 864168723 962298768 525398982 968565531 397627325 709879636 68166235 91573472 508165205 521636064 37977948 134343827 160131211 370062036 929021808 977039683 82420635 933012940 271383370 830363829 571433574 762427300 665192573 946871821 693360031 848104623 356738346 412588188 371972699 847719333 341460767 809250080 894679608 930278056 582275265 859346244 611538367 764278690 166056875 834072011 138087768 816385335 356456256 791357452 821753234 963954629 888575490 926893982 552861705 599737176 556557172 638360269 453062209 657014208 35262932 648916098 657129305 860444721 279992843 515700065 730028436 917702036 744733514 921796676 4757489 137387614 866805699 961557261 309435813 932955235 746389942 978054744 93019781 433057591 568726047 609761562 307480906 857743422 50925987 69758320 91040448 754503823 467503704 562224065 397026315 605103936 486393917 961907223 184951420 542494226 896533725 905107717 213372547 417121762 839153861 980007801 588132993 911250821 69106909 746158989 596230641 723369185 70335365 442656925 606904264 798525239 844909251 936083235 633384010 697360784 577589380 703122178 36054593 149322342 244983549 890555315 845381336 911554590 750838271 877487295 115654537 435229680 489262648 604326992 962641182 965654726 169780920 464566692 158182849 946041487 495410279 622976221 813916575 832828601 108830348 694544897 684406519 940001308 502060588 627969467 981880118 987778216 320175242 859302919 923258056 951122263 819389533 830715511 718753760 866975277 573986407 941464798 208900051 501531321 826441877 962369480 983466964 993413760 371966167 472245049 614204926 962296976 106254909 279562653 148481017 862271004 732008105 866827711 816576258 989619183 134453221 486119155 960808437 976425299 401844853 787290101 738896045 996091302 122094916 402400855 245371950 259670948 109497358 129019657 11692591 458716095 457488720 944384797 502588398 539884444 896741379 915504435 194942287 516385706 288997464 451061320 80850589 909892541 949034505 988655358 562290577 757027827 99672608 894557098 248560899 347212351 392712681 665042315 850057932 911736298 133746328 562925136 954339186 959421693 986600293 990925564 263925344 562346112 327741194 939326528 264294498 814311354 601229984 715632597 928331230 967897274 425537800 834685127 707206489 829681059 149178831 694267523 193783788 676541006 953094918 970973885 837930335 946984657 193824971 211364607 170602294 394158915 707882632 828707501 466634327 702353307 851198725 911576587 453806768 669481081 386631987 524163400 855058492 873196558 297804348 758268628 169547202 322688290 239798906 511390512 241154098 351013628 84210061 161006239 991006004 993073323 607758344 918757307 733512467 912331557 114502430 289768986 951315292 982502134 225973121 462678640 306886279 640269346 684244201 941171307 608582604 609835355 294375711 744139546 156364122 482181450 826171053 969834020 148236062 326925177 599866306 777106728 567510946 747469850 322880455 372091252 399013129 956483474 977804321 997858715 848482893 925726879 837108723 898563198 722714409 781551817 344251229 555077866 735203649 868748375 449330918 876964732 575046803 860437393 943055249 952151634 891615526 903797588 498594476 543616357 545134638 845730156 383822866 959615441 730414413 901857277 63225618 945574041 174120909 918231189 796976517 902948076 388660724 591716615 351130646 366314311 481952757 695575961 557629280 748367855 55702805 625728216 227211096 601795180 387362474 712700581 359139308 483829024 860831896 958334555 355496575 380309595 430299775 775481860 69983202 816507371 922329071 943287783 237085935 304922363 905739627 931406960 915711026 970616093 340394236 419381233 226938535 235508584 246925550 417124319 61323292 603192793 458896599 935158471 538071312 738891955 196023595 679246037 800038611 855758738 314486450 868601623 59041141 156294946 527118553 826047047 79575353 619073823 180114835 593949508 976063888 980303790 382052493 985406946 498092101 850634295 705612796 731125825 166365057 596356755 735456632 874607764 258074583 700625876 814295190 821914282 276450178 384193140 734060786 990711895 786192301 932163534 855975160 896717063 938118718 999607108 665855369 870773212 423059640 588229570 699085999 975258896 938390232 952589626 333908232 782238564 863505230 900386774 679263320 700922708 206284679 210042122 739885300 996719759 781851462 831145129 873147698 918066838 847243799 895595314 764580850 815481557 918382204 979908874 195932710 735571331 663578258 672462123 477959830 785879038 36294651 947092632 655817273 743098551 771567066 855458009 701530016 777366578 805792787 816794159 489314769 592086705 605503931 752351823 823017342 968650629 906774135 962940138 621377388 644921296 263949704 890024290 165610986 178576081 205639977 642710509 29945600 241656552 676105411 874600121 274024835 838715910 649657049 759210420 338704323 405079783 25848624 337680786 894933180 943405380 449106688 548058292 352479856 697530712 428775871 524917182 813037748 964412318 676507445 918662516 79575345 358045201 961139968 974665310 823851217 956233488 355360637 948255340 135102918 698739246 812796450 979384534 831872115 832312314 361813876 806254081 769472953 964728583 370632288 809755023 689405778 945493179 150950604 355310506 976669771 988793631 87590392 765147400 540287012 555014807 274026072 503478181 267801928 617840553 564130616 842955263 908197992 947872414 835130683 925914268 332201373 678145569 553855916 724872097 586588515 938454799 210236610 887512450 990783313 992665153 852061896 977372949 972663354 991967683 957442181 977472143 58116881 958767215 455360187 493584966 251695580 515349998 182250394 901022629 267172693 924773938 84991574 643939742 26158156 360931758 527957790 805733768 73322876 343000882 536668343 632589340 888934723 957999957 823523515 961534300 148120185 269826695 2839461 645897789 189236375 565309254 916443494 940458296 997549658 998315623 272970712 522504601 221138488 621705511 522984521 595730969 93227537 468102246 666916335 971158349 979532315 990357488 683341366 729421899 157316649 402919134 158833702 391916964 241400835 831712091 656604712 695095698 558836665 701732067 87333005 575669921 269305704 630624805 764638719 954727754 631808426 778348274 588541348 746858205 673988332 715109090 991527145 994042920 762339580 992590186 696041684 740884279 58055370 201393672 734323386 927809636 100112558 729218109 882513351 957453615 749917271 930474290 375405442 755463590 479971776 638959497 451093720 673791949 158923835 711901815 353389557 983787242 588455650 771996627 940276658 946494010 338673155 431033047 413558257 845201226 381375012 588818525 269261110 883183681 251815996 569706484 36332709 351615190 388665447 600397189 722463522 736180087 238701045 603186938 573513892 639648025 418002895 788630173 6649545 917199413 924396731 938323890 429434651 937405660 38407574 526350009 268713470 841437952 978040713 981076124 686379384 974466628 818347888 885997664 623044224 864930284 219704237 375550802 907280641 966225396 107006654 379732584 483288781 765096551 927863218 942354318 398040601 937510250 702830026 964758170 634846436 855866231 256394043 592110652 2287037 543281990 336718499 485410490 133573901 879009299 126575981 819433397 523259439 888256988 221414189 286582745 738936632 782304304 800514494 867390839 11391319 114486111 977975321 984535531 166038356 359206097 31817367 188909592 565080646 931333909 274012181 788245418 53082565 366201741 303501104 592819585 492098054 603104266 468315721 818030519 567205701 889743751 329712122 582868597 94072779 325037956 620138690 628414036 644495822 860923029 317938919 489976712 355802457 512371271 907487317 915143001 719688786 792240910 417379690 694716830 26157722 360175236 113554878 237296821 445529095 600590699 837493503 887433676 909782568 936934214 2579320 66849012 218871428 397551981 48363371 669624955 859194677 877796772 817497223 897649953 5466026 963616001 891249712 908335865 482394667 992411700 284805577 525517836 70439232 372010335 207221819 825862921 780249423 877028157 963992598 978665412 473757111 964392124 443880205 622357727 8594483 557786210 542540527 876131847 168656085 771755066 827069212 836009882 593216362 742840091 36009992 756659140 689715336 752716611 311639678 967729679 18570534 319115685 190779337 756697442 599603760 897406305 750342292 768782588 141994151 610523870 352472015 785978443 996162741 999972789 572175766 831137143 559211238 584672556 324071658 745059627 896267018 986619381 237409924 986775686 862935864 942155848 231691779 884718447 609245376 657737380 723243787 907186142 30131729 579117369 261020059 575053533 424876510 899417992 492069163 942741464 841222560 870395858 106037530 490632191 602183806 773191784 945744639 995510001 999658634 999846381 33278250 134367266 934507610 949924737 268740939 580731667 249620674 544635070 98260467 815496707 545973201 971875812 636159216 930852160 906962883 909091144 899310139 955212905 89645772 165679035 665533852 736278671 197832681 592710229 675414183 808690855 925975097 934383290 342983151 600612410 40992198 577503093 898052506 980124324 248286098 930438842 908625565 976993052 849506568 851080875 573020503 598876963 508161481 988746943 334810096 961434248 34574585 418050207 898285568 911271620 666209094 745612681 576662589 866261996 577536407 623477081 932135215 975534525 256373982 675905797 90410155 227040739 350615215 880871150 639039357 732500414 323313949 610861154 315755569 971299267 577992674 874593837 872966467 964198587 516456134 936408322 993184310 995156588 322216437 376221968 148938937 585036413 141171927 404073041 559310807 910893674 976914551 992134338 181699562 638987499 911669470 937217048 107323200 298008529 516752488 521078649 681126981 725857678 899389745 999372623 294441178 419091256 511520554 597727401 655260410 932391128 864020194 874911972 351853606 547912132 272970202 921156508 671920341 805717386 503649953 764125610 211587365 467897882 728753020 770591892 411406261 758250040 989228733 991381966 488351312 840159542 442054431 999190740 587225441 994523327 835890409 938215122 640328832 674649096 598073197 963998704 351760244 390725811 372150214 929599887 796167594 959676149 460914732 626151820 827087930 908459220 788996732 897268334 118505569 274141643 251467693 905909578 17831126 552842790 110630866 630292591 993443000 993772008 193114543 562513468 650495698 980019432 648841373 705013697 736927115 923239688 214666218 894211397 10634491 602182615 762283212 976971643 138569422 218477528 2703027 630882293 130635434 800084695 380558783 929024137 726360784 745397751 807519174 907646074 234106319 785967878 53172474 965395307 726379489 893267664 15332804 86434268 632206070 692573052 301311760 678213764 4297394 687645323 728183477 814006971 95399529 127831130 418147708 997451871 989376836 991341575 202096626 310231472 67095458 402052729 201822275 813905011 9677099 656689345 751263201 972486968 347479250 759031042 190247086 242641368 982863466 994502180 51448678 255704146 725954997 929787611 843557096 985074083 148387706 729104915 857762742 903773944 853221999 919030859 458223979 875888607 611897231 790806675 707527496 907637106 292399167 354846451 417998167 979439204 407084437 624862465 972154453 991602717 393600354 415374139 141578948 817416695 478126185 961892235 514829755 629333148 751660905 830271559 894715115 935083612 593001912 684151043 47649642 397603757 932159111 987755231 1646340 24665133 87113033 299571010 833066292 879661645 267795753 563254530 783816539 833594416 761536184 834654283 527119564 931644250 103930095 554012437 569459853 738368664 587792809 915262744 288377492 343445098 902795737 948824791 37215054 90662116 492189623 771002640 845021806 980978778 904215186 991894776 538588974 704260128 961754125 971964689 48115111 178636849 264188725 758960085 720096513 830529242 884406337 911656639 634344580 856475497 193194085 388318101 678159512 976707005 877843353 961291146 599745907 903283643 505730636 648743218 882234005 978027375 274167115 434970808 532486125 548848990 735398021 881580150 195203580 351344642 458419910 708775690 456827442 791497347 991981940 994389789 5793133 68490413 165081126 442614256 124415936 427642999 810761542 942693656 54598676 820734866 787560057 802396631 527601750 945184233 423132679 543884778 1710302 32948932 742894500 893113845 86759535 289336989 550294320 865314702 411978696 642198262 200725362 410275202 62945983 121364845 912935408 933696909 570495074 831810277 512789984 835431861 528325872 534125494 607683978 960346869 83239336 215740855 859867126 919141425 561064717 632917606 653057957 777666044 992171017 992195961 286639248 365398372 851096698 980496004 626037102 925448302 841892199 943741288 391958803 737119145 836054738 973728358 623707466 666823410 629398857 691306631 532568628 607611741 480545095 550747583 961354231 964707082 549684092 775315637 696554829 824646548 5917019 551048616 933432948 963859332 584930296 723154103 457864871 705479432 927121384 957143745 179867459 592311398 216374410 566786665 716782243 846855914 93760928 173241314 418038585 493367335 479236826 480291537 705328354 981056372 116792975 244628042 525498007 772574340 208527817 574914602 149742004 338370694 328514031 551461272 571284251 573345599 622178262 953613032 561476200 591038014 12727501 228473514 532946706 976581986 857507683 907687359 466319233 958810674 688487878 764988969 351741118 684977344 93186526 95490956 342657558 578435183 840297828 978414490 150239197 715048986 85224343 354754193 133869707 168274256 271699523 321692849 81915654 407178499 856833453 975972942 278692730 545290148 612723157 658003261 309777639 518402351 626003143 692524770 921441471 972401832 140227502 329324529 864670310 877689483 271102011 801514238 123290744 352758501 632124788 686963617 696142288 890661049 810760168 844702411 708293305 924076547 680035166 699773853 563709484 891588592 843106248 950141940 227761192 874198669 953185993 982978822 687444897 854153687 764364395 978365627 845918917 863803561 350622683 489668705 325661407 795054612 562239995 709417061 533265225 719811917 329557478 694523331 586674044 936593986 82507093 993770203 715139569 995069409 335966138 783935003 638686262 774775102 69134804 940483797 48827511 442502347 986899434 995067184 602546285 607194177 452458368 722263011 307443176 554916999 889144795 908327239 27334589 977338093 24726382 333186892 778551286 942207864 602636050 982608296 784786177 944460462 141214269 199567578 489802381 865407926 302396523 994509251 496639233 656544197 316282154 946345985 582006183 878581722 864232805 875652901 529397285 908891695 994539209 995057983 924131219 960176703 559737003 626188883 850219585 940320930 879286193 904656867 316544239 671810209 222636543 879100819 315904979 326021642 290580 978455088 645489730 802260706 939889290 945377571 714748691 832038592 512617418 697145160 533404168 713859798 623274632 837985828 801963495 947692415 115605885 481902114 982420283 988470976 230086262 870137077 13764696 253466775 752673243 874152817 351985338 855967735 971499213 990006035 723453920 913534132 452996931 787443139 905434173 923877758 760448311 805938097 692573413 865078126 254855500 492079226 772356306 851100930 443736046 603946414 126162519 740583854 211234633 313836821 709806447 794815608 25131291 115317383 862807684 896727152 992644611 998322061 507587625 630098398 873326890 956170623 521672023 653087313 490616797 837192110 152995276 930277536 713913772 845895262 68701106 901082404 660374000 877375543 865252667 914399571 171547258 342480989 132494418 377408508 13110507 620377380 729225592 905298823 327324464 705006063 116897998 286721701 568682432 953444536 373053903 818842837 848187312 908261827 4289298 131742266 178805288 230301260 687562530 895879593 522794539 766631993 396937484 795453868 579262131 921525177 130907854 969138894 114690522 130801171 855567590 902235806 826040088 988682688 86100132 537911898 649367957 948886297 933554907 967146333 576139911 786409443 68419652 451545790 608983402 624632306 758450512 921211659 627647125 672852813 588551723 832771300 622319250 993584674 649311892 911971454 679010320 836291839 332265888 416836368 664988092 955510377 680745452 789035581 346519639 732800223 628445786 669348806 650866561 889352311 55751881 505948361 589637713 708429081 360685045 616847670 787232689 830445543 816373240 885761216 929908421 990526339 89666836 398656468 324271405 621196587 596327862 648214266 253545116 386323376 348283640 871371103 16896930 981695240 147413815 663876189 784208305 820155731 197830418 352473242 768028407 961453187 403811758 625957383 583191763 860274084 558573903 613854395 879876496 981114880 918293493 954506735 155110429 821277125 632925013 727871206 659637907 843843578 724262324 786577485 495677538 718492714 717092587 902804903 938525229 953951054 263430985 590180004 55192083 737854713 864569686 916713301 261391858 593571470 494860834 810121213 943179539 981250062 372163018 650721079 610371967 738694922 11425582 147313926 272762947 949368704 784637567 830634316 974697143 987643106 445345531 674938199 494295845 822436349 869585424 892141908 608263971 775228997 87919162 222645467 744610371 789133208 684422862 990563747 772060443 845250255 144389163 157861192 603591825 697682503 830964221 987163270 323688138 800988332 66538364 273516742 544566329 647606929 990060010 997798700 688255379 977017458 810681880 871476672 787146949 853778569 204886063 231576352 256886427 567772261 150405683 670539210 937148759 982841749 393719130 743600474 842817529 946271677 282085595 409525766 298946511 668177331 205880105 282145084 599261286 743232359 425863913 732110279 94065148 995307727 488113966 989061158 322569215 647369512 190598925 296094723 280753833 816010897 693826144 986775640 184294283 628735234 411294564 763989913 121683654 689887518 938001948 959274243 430416876 630286718 966675947 988013692 409439323 503933072 317251821 928778217 176103269 919241212 379195384 923733922 653557689 925604188 410092764 529483111 910290137 990547867 809340719 875104982 249497833 788862492 742313388 800421487 285766342 542496948 699725194 799616956 760544549 896556204 346177651 746906263 494221239 999564184 511337626 888589281 348475258 893969194 459567371 826650800 40229608 758098028 451251592 517647155 175739551 226218506 731261048 773507038 970469067 993356467 56393314 853980059 804180338 915108224 846550044 890809862 703638526 756618716 13796740 643231655 708630417 998285004 108023385 666756289 758122426 873442798 121696940 830077429 325916381 631069695 923633634 999111494 603116472 798939340 698206259 885210531 736442554 993504930 528206609 641539923 745481266 958454961 417648490 530837745 338435765 930833110 878801266 952766404 650894545 651150488 602344649 865021304 3608711 190724250 30985289 147611302 776252975 798827450 856421184 965378420 273225724 529953652 565622449 885723497 421633005 798331798 731818053 869997257 886656332 981397175 248119604 834654872 865235420 914709319 4232883 782516869 846680953 981627459 234175619 385888324 366488406 501958297 247715337 426725178 79569674 92421785 812429039 962355690 60121180 886758469 497750383 956783866 471690860 508178871 480104396 638802633 808491469 917509035 556329355 821122150 147923973 640248953 297988396 498440830 952003596 961525720 209340587 848119582 317517457 989216841 138188763 640260906 196558799 534765928 617315017 851314492 566143962 860435737 417307784 532701137 773269552 940017203 962278086 967599757 435223479 563317664 287492608 701662543 967659782 984002326 459462689 728114579 932542445 981089548 517244042 976613153 782578287 826060320 304656063 685064662 798493689 821287009 483179423 777103890 323616391 654230354 960584601 966863582 157400366 942104449 903655527 907082726 634043857 774194145 852966748 969151350 352665885 499110078 465961773 720363254 591706257 978753522 75789862 952858600 386588808 609771159 522297917 914328774 565691800 826502209 426136874 750133010 386279890 927882467 690033990 858204382 15512986 389122847 233230907 353129746 316769784 899151356 986516310 992118065 668640097 679840058 667776708 729628960 646489737 876289800 395188485 488055480 798088379 994436272 487184266 855479364 638137198 811607435 828192686 963470932 286206368 584056871 303135092 762229483 801725877 950867864 257315936 593351846 647341504 807679865 834618168 932213901 596407805 797264681 940420678 984817698 573997205 688785028 130210995 855618229 443316928 904564830 654242858 899752240 541667189 953615088 294201179 735926790 626431503 671510729 411699867 824572556 405879944 735223557 387062856 398112062 338016991 504130699 75766806 686407727 205337721 587637966 831820176 894701612 385312394 701947457 141807849 664788196 265697583 807422151 253953986 794158740 916295313 962605788 556066111 581330616 40765945 795104065 456120285 974205747 577161847 949591839 189825628 295380332 24253750 321645799 61812172 692385542 426140942 428887940 482383442 809338808 282155209 648231899 97487522 567967240 653523520 862368301 300959593 751516327 683156547 801863175 867175896 911511509 417484647 710212250 396274117 806883441 976845912 991304344 564189337 693503109 144005072 565887535 991583519 992764887 267581961 853862071 39408531 593716643 739207609 769613605 818302611 836022796 368710931 679109475 508089119 898073516 904906690 961219761 635251378 938678331 761346209 871065982 992841713 993250425 916605574 998405100 463780367 665284804 712072662 788565760 196391097 999792284 472236174 765889208 968731263 988530203 780625961 847519190 327867744 959388836 859388331 885015779 553739222 691324601 636940258 686821000 212209204 326465944 484276647 907891304 140285298 501051069 781419945 893844672 650652245 997037890 774993851 775930709 736087682 989810132 398593307 568401795 741709308 753585461 363478672 965191611 976684041 996627695 994279557 996419185 810127870 944411738 893094196 992505661 364431935 888969552 603579617 854525002 368706342 702911396 488665920 680950385 648584029 794372252 76024787 676686487 973416604 984227537 375717912 813387808 28108174 784491731 348348571 931322661 46231613 395152105 908813474 955145477 831302933 923205959 503521955 613284009 988500319 999689120 106253839 776779433 926446444 929658490 549857592 774287060 960801364 971226436 475215074 773892927 280745767 971845354 215865728 565676064 134630266 707372025 299007028 856292569 944355061 968995525 884970737 907834250 227651031 517852610 858305474 965680007 63291043 698720709 961723297 986959828 221473760 895907435 610386758 879846296 808754302 917510773 797649966 988986400 128430590 956729332 29286572 646912110 590567870 855581415 365026276 450574906 238031169 770075038 804015831 923684651 665663543 780823408 511382267 876627416 269546050 660121235 622776305 704854318 541858210 656835026 534826366 798506974 983495783 990302838 917033257 950000212 717669080 798982287 789253698 974869799 358308894 703665752 828515492 912636584 212021036 730248215 205504844 967970793 3851625 812757405 410432527 879516721 261085449 268277685 555911431 833878497 985146298 999346556 98227034 369508509 514124884 931276244 122394580 938106790 158872429 196615693 169433578 300571358 930867662 972730654 217727763 893782429 316231385 325740130 755979126 877518131 136560015 358015754 57383249 121875932 716183538 902724002 678699343 759241040 812224548 848036545 546188111 813770520 56460409 816377466 47560783 767981758 670867143 688040343 847837393 961900178 138622932 963054210 150568201 908954076 695210638 991035342 658213524 818993692 990212956 990796710 154952800 912225168 330934180 629934436 501748085 813382394 346936613 882431863 573058641 831083734 140659364 551052818 883980383 921314244 151955698 251564863 352931656 560948736 292248172 972514955 887071426 888423417 836088168 955925431 326997497 544514403 641074318 912947991 533158383 817997439 973607702 975876459 255487101 306209797 39071635 313210612 569703813 861101939 658192629 998607953 551670217 784360486 192156720 988204116 936596673 968156309 115952974 527790967 769062319 812511282 213279249 302091514 833524263 879856468 884352485 892041163 897268060 975259372 742177127 989312294 903133021 972538738 231190701 396905699 843718717 944423823 577093389 635745810 840863639 994587273 194570729 714942644 264255550 498427376 11376643 803891511 895901384 964555574 788472810 794900790 85420578 124307842 898905341 947015065 462490766 933850053 721089809 980687439 499043038 628058288 669943136 803755277 977717986 997869156 680670902 878920390 710935383 872398903 641272331 896699330 205950048 665665834 987899698 987926122 351505962 483261578 970786289 985873530 386762206 983488509 180547693 439869982 164389082 627037950 41515903 873229855 758113212 856849920 211713230 318798805 100304113 591318275 756264042 935536158 580168160 688232594 179420948 251250906 230408851 510397092 679857125 999214591 864815586 971548450 420576717 648476479 817843877 931402780 966598029 990932804 132207426 771628620 372698579 575264398 638933681 907867533 42624425 865694833 765447177 999921866 312694531 912850066 455362821 658204274 715533264 735479273 951225470 974548528 365110060 911906812 22723098 724972556 826050662 961762099 834304167 856835266 229608005 946903452 220947768 378972743 745252584 967925806 532394555 904091118 845613027 850271113 149374778 793554709 733041853 799716795 707453479 966921979 543311653 844453677 949305554 973205848 364555695 412131630 316341966 835265023 620352354 776941870 78604672 311690309 235319604 914636375 919528112 970966138 654621480 768887162 443941116 484333575 812011934 812199533 53961076 210747042 953657960 956128759 465497889 734009994 342026501 647302687 452361893 617809037 558757369 590441215 263216290 551130448 891710924 939671432 517197228 948627950 165969528 725758913 53696406 859583164 257972521 544415174 33209882 348729549 586966813 637826526 826623243 983472452 200906059 943815088 629545751 784812517 849794784 912498109 984644568 990065689 64148132 691017512 808473119 906840618 14524627 495988389 603085870 777677369 243856954 626286197 638247795 779080760 908489789 995399172 92774549 716449169 286179356 412758644 850215341 965500843 112712519 795322133 749949408 882275844 633461496 692739598 627143086 706683625 307077115 952513109 921919118 939299719 370694694 828232649 535834688 812666089 429215462 572429345 616547955 620882182 27068412 727192121 152075038 631715081 578282983 964716657 884216294 939437141 450078431 943519654 36197414 325799251 414956729 921128353 836608763 944580180 678353021 873869555 449838617 522653371 568426809 866705460 465923227 492980902 968966544 988951748 324053664 484327744 929330718 988800241 494858226 676479687 965717409 987068796 989410461 990176145 427763075 862241182 112381282 708351512 961630184 966364909 450598467 672786539 593098453 725961855 902764748 945093937 338514858 772327693 988966263 995806620 924601663 959796066 527640307 579212910 953854818 982064893 937255758 948107761 959530319 999897878 741404835 974638938 434778528 751662213 179453360 457434373 365114515 604250276 69032581 874429915 239178567 830295707 166942711 524017809 681985350 742636799 899477716 937745889 530079373 711080084 735953939 870337680 629935292 904845286 561478313 866419671 797875632 803906462 386032623 803801877 454922976 955426109 716342328 952499251 942329325 956503361 659225043 920248096 20913381 225136484 182582530 723706630 152927803 353128874 197887324 408744724 474276137 758709016 64471598 475767250 645676751 764622580 710624813 983052633 722409945 855713094 556461539 897628539 506950749 912620777 75531898 893809244 900783575 949435723 157757120 823606499 456385646 549285670 591849425 643374214 999765631 999800859 12834447 41618047 822650415 950171238 252924533 767942413 220944506 875506406 38624820 446685920 133501091 408786159 452943738 541442406 410398889 862036499 394071784 827924190 109890010 892656728 609166644 631862137 880912992 977564305 725359424 897302374 74820677 529054265 689024519 694842648 382837913 497889898 451290821 894464688 561676373 931431119 403979693 813735122 960061020 988390708 132321064 311365827 786173408 846403761 533125756 567493787 212086484 641669161 417992525 604767392 815446957 860485879 12195433 549600147 825327489 916505536 185136096 694662295 746184798 823548924 583600989 623705298 377756020 580767031 372092040 950079452 619365073 737118900 97182604 660987196 67080085 838943491 423433764 725350062 859414693 915521747 556559817 924203457 966785373 979146514 502338663 727740744 828109621 895593028 545276141 641333727 498761995 667054647 192282708 791667176 958887547 959061503 152749092 665730778 189446249 763693768 837186976 951373874 79620709 270521502 755764176 836587404 648888879 927687750 434813494 928889876 963894402 993330846 505107289 770684696 754260041 787329396 130455453 863865081 790752826 959678575 462434530 997413931 596415332 827987029 727259729 757030644 44678260 807699704 235985531 967472751 310194408 749586319 497948149 522728583 34209191 914532822 59853432 252558770 701135293 875800137 121470469 822592355 812472264 859094296 584184431 980682825 529715869 734076503 761957276 914533685 411674665 769841833 201513898 242483608 415146759 527865461 87636194 706342549 952811340 956088057 638537571 992827954 602080533 943307075 293192611 337367498 951387102 962782788 208164865 647268448 391858792 555596840 756326634 991522153 455069466 494564848 781892650 882671034 155123400 191628102 832331660 897589188 375997489 937772110 38572434 230342373 559867479 676023931 187944956 531099771 131724534 499266743 402930584 585641468 902518675 936419412 317281242 377087536 811961431 845952365 973710013 979776891 336740939 577343560 957466985 984578968 990953986 998902472 600220806 897134354 266830263 540114716 472953070 991877938 829661532 883130448 32173332 183873380 796593680 948673419 857329334 944585198 8695415 759300226 203611646 395494876 69322930 801615367 638477379 651537389 504693134 800167635 481619008 596129423 234413551 550555656 871256659 905796036 243168980 246255601 617451434 750838538 362789110 765105953 666955473 943194546 232846491 234403401 16552473 447824184 50578822 762053303 519982528 851354075 909323979 928098369 277877587 737706629 612063848 982907789 876941691 975537653 878889925 880967340 196170350 346572918 813314607 967935273 928219260 968743055 773117293 826299734 99627264 972556176 436932233 821872191 653259154 967161089 712395538 723337464 556220912 575445825 664732379 745923120 312745943 568845452 515830116 717817757 838517199 988551971 852711651 869477023 945705206 996632626 166096932 609024493 895195061 965249122 551598345 894994765 488106689 819067318 570795846 736773957 327063959 708514103 63287665 401309874 10625046 295092785 538795367 827224681 135366529 694445914 397432236 422338041 811687845 819161528 756028079 787250302 385185928 710032386 111984688 788774201 382831171 920835141 441645693 786262330 493606853 993065691 18968738 539604594 4021886 280900038 600630879 882666117 664596533 811868515 731181725 965068600 364273719 550589519 476726883 643594581 799540562 995615418 665292438 977614023 503146605 911571152 621544973 716948994 787279975 834790148 288088909 709219789 698011489 704688153 749183217 805599224 863362655 976568156 12089723 411400638 398119076 822414463 474463129 961784472 16695618 718101052 100552171 408488845 79938153 185767753 220371531 903835292 417340112 835240605 982477517 995661462 143330793 708382505 230917396 507200371 741928279 792573476 168079060 513976893 546955545 622038476 895607403 983181785 22228586 628134052 176898290 727865145 110052063 165785498 680476906 750920767 794248444 804926446 690375045 835556322 806746708 928657396 964013355 990795109 146905003 576312125 399450067 853855256 187300613 518957104 887901902 968191134 698713262 699963309 241499581 586541903 33974483 64573679 974814647 977587881 579591482 628055765 581323730 861685290 435860457 630982711 862986176 897272652 184962072 681180675 611938714 796760319 320925371 409232019 802605115 935147634 285331813 629786440 623510119 835022440 269783829 451243068 690350878 804629303 70328956 445374261 389809490 920716214 87499136 191294965 638432221 819769212 844099721 937494184 733359511 769739349 665835245 795675272 574997430 706521412 864388077 938459807 410093130 483366504 294783741 399294964 311706065 972988684 101893525 676298640 477587081 759798156 123779305 913632011 684416638 862674911 78571043 582753887 382425280 703636390 114393856 527187449 194756890 370540638 661689971 807124723 230127013 687853938 739174268 940576364 884332683 908089479 187228312 649220062 645641819 650554114 358013907 673639689 570947461 917799930 525611246 699416948 917184501 997854758 625548091 771746948 997860446 999300475 357677033 600195369 294969318 717982778 884379577 999095487 929160743 936337881 873448201 949673884 565022199 683724081 876673603 998806786 707930228 946632195 786040269 934787555 556612788 780917450 643678176 854672679 787662669 921470998 758958912 896659734 90616244 591615195 822530453 932874525 271355292 829689885 518001344 754097147 572488983 957670325 483347148 792234899 7272894 446269147 387193259 635852834 314133597 566641874 669839866 740577690 362491837 630971115 288450959 877729937 606605175 785666869 422926544 687335413 960959873 976509319 80911974 614235336 97773643 818420887 776993675 934345021 860697700 881756738 822156072 849805572 858729316 986689728 462042374 713154158 46200095 757587234 106200486 317920488 422878215 875231922 831569874 990110355 865960704 965313753 8229111 314998827 643030356 999466667 71739782 504186872 78829497 365418395 153624360 742249326 843758047 858006938 626276236 815763539 250753109 861836199 658292636 743300727 752755545 761760125 938332076 985975665 519313748 825375642 80245645 983047366 465890026 649173369 953446502 971677304 169045051 366919860 808503262 852027016 222649727 563816242 183357242 738819933 55387094 251113468 178725248 643282661 962299993 992587334 31536741 73855765 313347038 670794872 56722304 970371907 820029532 949199973 888250333 932935275 830581721 838245920 484578866 965933757 932265522 978588350 410687489 542628108 106749952 290480481 370084516 660580225 602629543 923611782 425188858 986346412 359843708 824703433 595210041 633354443 660159466 958080766 960967435 995397715 829116497 916920361 928767870 951811050 295129695 692191406 931031032 963377758 727547586 840454200 992148963 992913986 16271631 507880596 936562675 938331152 123137217 515821707 978062789 986432376 698866385 923186896 265892959 874260194 526491 700410291 156221337 930933355 525543819 525930372 775780383 815589627 159858822 761621790 344378687 503363860 528440770 670367587 129774508 284979260 610103154 685238067 917631836 973122597 294944813 858799972 337048374 776476654 124282480 741330083 431900293 853883278 34016099 942611078 560430496 954351649 647691734 831234274 890912467 980593575 580952112 775505207 127391788 906756715 50957427 497305765 790807510 791076921 836771373 929182571 553602429 642795369 127566496 326189272 399609416 534962999 17518553 639624393 679542826 766805264 54036287 221768602 698413184 889464621 144146423 639719091 316373064 569836476 693174089 780570200 185371659 751891762 921208891 969878344 590370303 745716363 515674251 836215305 760055965 970874245 546098928 821777222 397345975 671751042 375212586 826524804 478065722 742241596 177332325 327283651 991587913 994648011 46666909 624438713 150143987 491739531 307934126 415092590 716264287 970132495 675457092 729979433 341875427 845794278 788942533 796433641 378006045 455838052 859659129 965942361 589469408 969000502 203326070 978423725 379388214 962565899 255258650 474902675 431102905 608678912 747554413 991144135 981076281 984415701 234982761 721544879 977176219 993520942 101895843 246643054 754778532 812177732 30510253 124126216 676373898 713103919 654385903 909123674 285069116 331099103 562779742 732731830 390360126 568746218 754539907 946461801 436973464 801158512 352123813 717232123 540706075 670045672 816259461 910007844 574039867 824857652 390361548 851043019 453714137 506720373 486006980 665093796 98982347 379382242 968760319 975886554 403602134 700539169 297398760 590045178 642991508 925464225 508750473 830144582 533369612 982368996 698736509 751934277 287074978 372834634 336305131 600297179 985467632 988048531 808955007 955343922 921647943 935133380 996818122 999934487 629642088 734126372 456738859 679559446 214966453 725198993 456780653 977509065 684553866 726584090 831806979 905922169 605637861 860284487 419264801 659038166 798005837 968564201 222701007 881759150 155619513 290969499 362651009 415809982 707510631 926073391 540354829 891246468 740878590 965830099 885148733 895010295 543268268 750541655 639726607 840096673 788402114 996617460 938578113 977913158 433727925 719394590 348836894 669784758 907993206 982688624 926851782 975174457 438498477 716548509 98155872 274062811 752413516 783899253 789949105 947713756 340686311 979207030 886166187 964135777 938605786 984831591 254899230 678446539 689513322 691183206 358962917 940717405 474517046 699609857 772440902 949629977 429279336 695864698 240908818 944275146 369504333 781958032 765832372 901198351 65934861 165259437 754160243 773927734 395812093 902882307 311000791 452084871 97445903 515049614 808962747 871368568 444258001 676197509 887136169 925598099 951316844 969343780 646868534 772867912 336865600 363458783 711524105 901353006 903432379 973405115 569220844 997960979 694412480 732477932 244208578 690793137 285256463 690269245 100772750 175105903 81352227 674448396 348220204 410539925 640058077 794728535 200072695 746001567 657164795 757167423 378701130 886680674 682887029 876216250 890871400 924410677 250178119 269387319 814314122 988837582 652204805 991006415 324356527 423325584 748036049 997095790 401181067 718261412 971238333 973818448 172835014 629599408 511658691 692785820 973442263 990977736 453960384 608553433 865414911 898167003 65953615 410388308 481505214 771776576 392630654 730802925 127281627 714676686 349299838 875334920 551652331 795797104 247205998 602504227 352215949 534474794 191202361 890201407 523759163 967454364 685374857 689723294 4788255 407769631 992853196 994697866 991911078 994615248 2893872 531850644 321541399 707734819 303048537 323319559 569250958 670352567 802618063 984361440 929579474 966684934 195668509 203802330 332049152 972843804 372897067 953720353 887925564 917485947 947359438 954249554 989686433 996383587 115228598 252685400 133416301 176004722 68809738 92888445 479021927 950559902 856713374 922263423 620311761 958988423 588328262 890261179 183381124 574316541 633100160 827957303 184019950 929949971 134975863 487668193 735205619 810792804 679527056 710388784 924270607 942688214 977025960 986079010 807307094 948222896 457504775 603102756 777186168 868854673 938314771 972602639 621744800 780100483 544300811 590903798 571411083 873338895 737243177 870807391 322116199 803952855 286111974 467723567 284074607 877048911 801251893 898405321 358932390 943168605 411231566 664196890 98905012 375913561 406354002 485016352 464405471 667521029 596854525 935930985 223837822 479239583 98590956 469205176 747894804 826605749 431042725 630075068 753146613 934540722 311656662 889158633 440620220 925125000 912847273 950936696 485287739 892936716 110413909 494673139 429699996 773008104 291128389 967669378 996777552 997255557 200122047 882916809 208107352 503647033 57826385 385718350 96348302 122074329 703355010 916750006 401227818 556213533 26122278 532462195 209454772 475287715 692001193 924067251 494244641 692916355 423733488 760912255 66573617 208446388 22025476 408620312 889406586 917208658 746629369 935778764 106217263 962410076 729380464 794746503 834309803 875770146 898146944 922263613 201593030 424224169 853221153 854450969 468274084 865677537 336433843 530487887 955505856 971644441 652692335 729866307 985833432 987303535 761255304 965557072 543849098 628093584 399504968 647922855 419232296 669920860 552391467 916212173 488624697 757408158 808978251 820068205 738109710 892326070 403284236 547589104 395669824 955691151 252609869 539896502 47682809 600171112 173543087 326478618 569288723 893105957 184080450 950412559 448987390 797462427 306784720 561661713 175102871 850288987 909188958 923291340 263035594 874598733 930207249 994013967 795167877 818742404 366661149 624721312 858764056 952632458 371819591 487112341 531846339 985607561 424002798 938806314 166258255 263467923 87848859 495110895 185165986 906903304 168608101 277034122 412759901 486521864 829622952 943762476 512357611 702343980 364615987 514669667 685480398 983289490 295517390 668210315 57711271 111924562 375075546 721165115 554766267 779781356 955178462 962999641 129824743 161148074 989967334 997553302 249183145 358310023 638799827 813523007 628287784 992409992 543693970 562755455 238953239 495127933 677935766 934713398 844618857 991595195 575527056 640767025 250328391 723910679 444277035 998857388 576452626 939486494 410770030 567374443 988897059 999831798 88929727 483150212 787158176 994125337 423164114 872087810 256280256 843163786 815035530 909123923 992953452 996063393 209824788 426127735 35276666 726162187 317978283 756765712 556085142 993876801 477650683 579094044 645300119 675735180 932481506 934117911 750470042 908490268 877192548 894265594 903882305 924966615 71229349 752254327 922504200 959989818 909375487 921524498 69927814 545127896 86457358 417343364 251346127 923303400 488527538 531717359 392058238 965548300 566346922 566734268 918286524 933639025 885670932 933383449 82867723 648380922 745895845 909535080 329218503 648526869 595984612 688933413 422722758 696082406 483944805 844824544 24524362 652725525 446192306 938144882 99316183 948633859 101008892 161145473 31253977 961719295 519339497 549272252 485773354 854963446 222757177 384559096 673837785 792219357 231265406 644034051 103360830 820749868 463639636 841073922 371937254 798479997 424842079 494050168 86280642 201589532 185963021 198492165 71897948 640716596 804778135 898330217 930117567 979970293 540621929 992321982 318926667 570452549 207118907 544369455 79978525 220305867 809618837 924225541 968218921 976476858 497594877 723842584 294703173 781951749 970253918 990983348 86159059 545408130 280138789 644500318 117014516 406753362 253526534 880751509 396918740 533672341 786812291 891399184 276061875 658641854 269945015 686267367 703555661 797421144 699674069 771395234 338764447 611256826 611372099 815453243 988427584 990116319 74424928 387700871 241471916 852109286 845742271 941759955 455861153 907949725 333335044 664349346 218643593 591554206 350654906 970295940 247461499 878818665 86544815 622513709 639632986 658885865 175964692 368622701 127561604 140268186 800039577 861126159 141566359 877655887 642583028 855822803 463673619 587715136 338431221 408501361 737667091 954931170 556718550 855646806 416130791 939469053 56613648 60303832 715511191 743334349 25069069 589327319 317191787 656966708 139896057 882890580 496157050 506223676 415369896 423785405 102854346 837109795 206311750 672610161 802521587 819737246 509707306 935194286 602579608 827090596 984241440 993640873 913026324 970948174 312014977 804434412 687595573 848920369 589941278 839252582 308710214 677025601 822342605 997845741 984495343 999099781 205168780 297003281 808036068 960907367 994745393 999858242 373099297 961295088 829846220 949668734 591183511 754359710 575503390 741228724 674757704 897837679 945380792 981953631 75211926 278099725 797592640 904921913 105903403 546110053 273265996 724021307 729577164 988615477 517707167 798472718 545280533 960456919 979136246 981304014 692240736 726683427 193644241 649353903 398809273 851827788 564346820 860394115 282537295 908776338 851052337 913657504 471702713 638685684 935154249 947650600 27645441 738227236 257193497 617752570 284619905 680844603 285485660 319229617 687432803 893887177 554071120 966851328 789727678 944201727 727285074 781996934 999689642 999995948 31651748 458059567 870090516 916650265 307524793 646092020 915309493 922335148 552530526 803317861 659128232 742087204 839947133 888408892 562241554 710218980 625943849 638148227 493343584 723023045 742458655 981104423 934336807 967652671 968629055 992836825 83083547 840805862 776088753 838530616 271009262 678203306 785686747 827631594 927136382 984270445 442534164 452138674 41567662 177304874 824105178 951849248 473273643 706315297 925207949 987103165 912468663 918321237 12917832 34984590 739996233 861246082 413782787 514371539 731998989 918531873 343985255 397509744 7557191 840766524 310606069 898761361 460918528 987168151 657274139 657580768 968081164 980716745 845611539 944373408 123248173 736891376 338473998 354793144 339576773 434221234 607914648 950122403 282353544 342258887 137635975 290300782 31841104 319902954 903344118 992875375 230575343 509869838 460798997 936062200 643658144 717258048 465289485 546765940 803161700 989202783 980810674 997521003 311943051 484364018 995054744 997007101 687274285 726419825 513768711 617813759 819727689 974839556 22347880 130214972 925128184 976730459 260688159 696130853 610044357 701449315 576112112 783931707 673348572 870054477 42024886 107121304 516475000 734175685 755473751 906621364 871017898 922016985 786633066 976087762 891643104 996822315 369973910 521045363 238578623 766747122 771293100 907812609 914884230 951192826 474823566 694132497 805685283 866550067 893109932 991177557 405522024 551245564 290769534 667897182 223636993 880245071 9245766 378701598 533492346 935233940 120610560 560313997 381748574 682412725 318158303 426087015 649691949 826114436 921419529 972261548 238581238 612341501 974397562 977841242 2085234 86589406 883332667 931179652 17226650 245865083 145210614 417496783 285832988 691417223 938839826 991723882 845030265 974127618 987453164 998561385 730024674 866394053 718263706 898476626 617253918 787485874 574799806 858593625 447251545 879348496 345575717 904255193 130597064 842121858 633005028 964089525 444043120 956276354 945676055 995092802 277000877 379393192 200889678 475463534 813193127 825184074 636538719 730285102 453377759 652691308 195938130 355358947 545583590 735965568 128459268 641123410 490798376 906944503 332866680 892408751 879085607 947571460 355367740 815101564 615075142 899201994 723980859 773236983 170401860 798882420 971521607 999052637 472419395 578095677 316441670 592984901 153531663 722092590 260913552 563213774 806773418 974757972 421860359 487736819 267752642 823103675 469375311 959273041 22718326 777212944 657470139 896664348 131892715 836772543 418272685 876533233 286342313 467797042 265343079 551121931 822202465 928625056 794642345 905849691 581414392 643406373 61788253 425008615 965025838 972247360 931406795 984920353 163998259 454550912 419364342 867060867 416797021 693808208 268533482 693161062 852773878 924037645 360560690 555698121 498959850 697657630 261868481 842176792 50266305 113359778 282988138 979855177 72513852 138995843 288165289 844731911 58053944 641264265 180380410 331409936 236739977 910397030 842678104 982308718 399767543 520673534 647332033 665469679 772695368 879222167 972694747 977857267 37932522 528223056 892248656 915907686 915879900 921144988 881695057 932564692 241108305 542214625 76178225 985070676 390886180 872553009 93329608 104836241 502363719 558207569 243698780 499817795 851225012 945865842 509478301 761146812 405082579 900571489 19015451 935483430 152894559 325667711 731056847 883297787 64877664 904516310 346236433 685682469 346597321 798016592 771416205 795937934 183616431 629437513 313255507 361907783 181754023 946776613 369282302 924207906 146048544 989960827 304623564 426528323 910913277 933573358 469213418 509868143 17569161 995985887 767159259 921935513 521815743 871008257 763681407 938099441 772356726 942427400 291009980 873238622 555281511 587439580 440994283 913444159 101863068 547575114 212259238 994539589 144221183 303597738 895613135 964544815 751898002 952205822 873487373 912568493 395756176 907922901 513867057 620922188 938263685 976595733 510681678 639724302 946488602 967396045 511592489 535496127 11676308 743642685 190208736 810083223 332740380 556859722 816559357 952581092 527963095 746359646 663578648 672723112 827419562 982940052 285499399 413861631 936126429 994283849 428095115 880576074 157867016 461507180 487401690 665734014 256877931 991829215 305606406 412070806 172474767 938712130 90356211 235029353 216504355 354917831 148245772 423274329 488497494 498692378 130016274 932353017 200950045 284469887 194324606 588607929 118043732 939338871 592766558 605387071 867365759 925157208 568487545 879387203 983081615 983494159 177298859 258550695 699629675 708676967 638724673 652881614 216474291 356395865 80773086 736825586 833193893 932574924 824286326 928203621 580955633 814854503 54790910 653753479 20727437 920719569 696284716 709091471 944630363 973009056 752116192 911362458 379105965 526427391 311704570 992974469 480281725 508356406 386987269 502021894 653367905 873509307 895967128 949416556 521097557 622919852 195198553 417228671 86558188 595561828 176528065 395021825 942608746 971967669 358849999 958191603 22886866 578752966 321454834 487827729 726470536 925520160 935858600 943261131 906936260 957607629 612780702 789542509 713546821 820699007 434902476 885144810 96475574 869459852 410274695 851671849 578690518 647389153 375918735 465194159 189867047 782933708 791098649 988352818 521649820 601960053 703273725 749614957 142534351 569339495 854805354 867263444 672116547 819804363 370914318 953241573 46992219 136828846 608691177 929006028 349295679 393945136 28426299 906942074 847245632 865645680 521271969 613507408 963900859 997522429 337842015 990928124 226179785 735189149 170437388 408141222 732101549 769842983 375871881 768927903 378918502 579196215 324143008 540658751 641231900 642617254 338774054 424460551 205201887 422153737 591840174 726925265 226852739 835939961 901576557 902059655 148991316 169042323 311166475 547945068 331979460 369805629 554322988 828772093 401970177 486931329 240443326 454933328 512311779 720843861 217459240 285498729 433879056 493986076 596582858 992104535 1814412 934059436 93995773 608515155 924011049 962025375 940930283 942647811 431757105 697255658 320069861 488747896 3213058 27642226 794239691 903845482 887471548 921461432 985931986 995370921 336091945 496205059 614415710 628961134 932893824 967995090 26986289 869485945 720322166 824861620 621009792 831256803 47303011 680960144 705089224 733553546 111438226 721301269 371348525 911185457 940150786 952539195 917314370 921328538 926351254 952329325 882503758 951552884 440433318 860772390 217890458 566994069 503170217 645946310 480629440 895304539 279861399 926370020 901123809 978513893 981184288 998184127 166176746 525006680 604626059 896401368 604793911 814112266 488596816 897003092 197534593 706889419 271752734 830824290 669163836 852589337 874870193 980146226 506645153 870313875 878462429 953170013 76238413 448395006 101416844 540449429 125654141 544578163 440819883 774505093 384476895 499657858 823358028 897604281 331823048 654292751 717771841 928139961 80114538 338380125 416028402 579078951 230234604 782694580 40840890 886684503 162762590 991011116 367698953 802653095 502617779 818625205 629294125 860112403 463919019 651443237 942535585 988035841 982728340 993408817 943458654 948227569 575121894 988988544 993696372 994999000 506385672 849611316 224081224 998768544 473021497 791589816 893021711 897085521 268530343 922113370 778060564 952942971 266877560 896143118 93723112 212560575 893321986 960151763 50356592 940787078 472567144 923056644 295731038 577624510 962018796 980132680 771398600 994860773 576634763 659720671 779150551 977115544 611930610 710906187 266546563 704647863 997719029 997763272 676530247 991524466 467914035 559356355 588696086 755155890 199919772 321565968 554737151 846049366 222202328 523188574 736484079 907884639 556430322 983725055 337273282 919351598 544109893 606188741 322502011 736521464 97060027 756934023 295689048 610032231 576686772 831693428 609047729 844060461 564968763 862170238 323391519 606564484 260711079 456985442 493602406 819763790 595494316 622603366 606063826 726806638 738412475 842244617 177219502 473320723 740141466 995339934 328190720 724749068 401402734 462469204 713269061 739114443 708703376 735233613 725061971 965400507 794065279 881580594 244360199 610922051 324997416 481420854 70636011 651270862 120846802 875722018 48176791 352554806 151946157 838935334 531738309 910145258 463621130 607117124 34171981 741993283 512603499 916297712 384421491 618140126 305111234 803593245 154402776 744844500 349537527 934181333 138660442 770931036 790224899 790276786 447060575 809344033 164973424 943097200 533603669 891244406 742917513 877579216 320877582 343868753 820221599 950318269 472523870 533728390 985023993 997450501 135373271 250329855 946167965 980308955 370441006 951095830 909560096 955008143 564450113 786653074 453551202 880138188 130816593 551028375 355515929 373254617 380526409 532757550 419425933 575737037 645281963 924491302 319954086 511335358 31556880 49628430 237538477 242298793 712356834 776136536 914402045 961101838 10750396 475442911 112096708 556540388 400299073 739450340 253247163 562931623 503117005 580761176 254815917 946579585 551977196 965817620 190305545 507958508 522405072 929008357 351026154 785363169 357799643 674141502 210348199 877428437 441708965 787185523 249238230 856014545 461718054 871500011 897634543 934795210 673778223 975466594 584473767 954318328 624107757 890983736 130776965 747447611 77366214 499532052 375229376 428378059 466452728 652518476 152840066 256126802 572165265 938918333 4939414 12750220 301971716 352750819 448347636 793002297 413122523 854277826 665868333 951168200 661509072 667811524 266887444 417305045 915653601 927132762 41484627 205802285 579534789 639552091 148032790 367070944 688225579 839736632 571868240 728994335 639944837 909541303 825053666 955079153 923936364 982405497 973757814 977459882 871616249 986967834 147378635 741839879 149646047 257476213 758444617 846166019 398435800 978738175 892002563 940799973 896918961 996296298 695563287 812695319 661375559 926311953 639692854 898949481 58727707 435162786 73414004 674380907 290301934 923308536 196362006 453624261 677674809 805085252 251090170 312657847 272557136 481198483 405931516 467903890 411101476 449727989 17632975 85620203 478270465 959507735 586938046 833243520 851997922 968215013 331485946 715922647 639467928 663988373 344864358 653126870 682429600 948060151 336959903 445072000 166022214 940219734 475251 984780363 664062701 754698291 448875720 732248569 557800586 604698894 99839628 584930283 113105943 702381714 684287373 726982517 9809538 709319522 725343038 730866757 697545331 800085032 18992542 421255278 250033128 806879165 265216508 585575554 572466872 670312223 546330757 738834416 570127718 593734587 95893005 188354534 310836464 911307550 283602215 828699937 964929616 988647714 869757051 885101494 434392036 444217124 329298973 602900162 603987086 641979415 247286752 501179010 968476343 983515098 130516805 670977049 621137026 753719766 927446187 966473036 455660715 829825423 836707748 885308179 22991629 743449688 695281139 874292673 815796538 821026626 729878919 753898800 600638110 878528122 55597110 183382521 589027654 732331326 291653276 878726902 9095455 453121265 804267403 877600486 474860381 874094232 618313783 622668347 713594802 839336806 175257912 980588354 600811869 710576405 505486917 853210024 108257851 298023781 437910177 896455170 768847753 919622880 710704918 722749241 981172769 986258871 227879177 542500800 631866693 749943181 870305306 948028234 893571478 994977127 24783509 772641000 677017712 844316169 737513951 835866628 987498959 991616659 661695415 827859661 246398925 703654314 454300864 908772732 441615863 521507139 575941083 681729316 553507255 563064767 914150008 960350526 451752953 769024899 649628356 650278501 579748619 971709296 360223242 775648800 927952489 958350861 5888971 70314327 175260713 466656777 763418205 830792824 805963375 953348318 261462343 693295555 852875080 970169110 51557488 762181767 307447803 635168532 592773841 773385218 26988306 721320652 541116232 652690812 568277963 601694455 443187780 563796019 973871646 975629356 995757118 996471370 495876956 516900426 828459615 877955086 961289358 987586058 464043893 901887556 523761147 663445179 864378250 911526323 159953915 683160907 423312067 944521899 898817372 938538388 78378285 830653945 759321717 760786864 592319218 606822818 914694849 955669154 510447619 728293512 187085018 492485227 362884262 854673499 792957631 818256464 603860907 991464592 537413598 857343906 770944952 785229885 67814312 358936260 691787799 941772605 313261948 524287729 949358651 999230366 577877821 859735092 694077703 728230388 567201018 777106147 936042605 954977898 205353378 744794619 553544368 740122114 963890045 976708528 988098461 994296303 35706565 677170108 514884174 699544227 531553616 940615636 914026161 986442507 902699265 968362852 265966741 519423101 950518702 970058627 61018485 596547605 373837473 736851723 900434639 904001560 371045200 723030726 766897682 806329411 969485542 974517426 460414577 650164425 393319770 685323728 812017973 831627899 112633917 191201796 905107124 945813882 86509118 253593255 699304854 775315082 87130450 440737794 575313563 592497316 963382150 978244570 420924175 616564423 135391719 992491711 283340986 776371999 172085499 890576457 727811318 894028967 235986399 991782270 360822365 869457661 694919141 707353207 783024959 901079430 171688750 642028619 11924484 865969152 242320733 950968999 792179697 910413434 738738155 786904831 326999401 565565455 550563883 572074268 733171990 971927689 672094720 795484043 100293009 390715223 998030697 999619836 516932913 605766093 130404936 890903667 249898859 768394618 243003652 464695070 821241439 912738718 863017323 908289433 563767238 804519198 246648156 555724853 374354888 877553747 713090422 722837916 498230697 829361657 645851498 746608302 546287308 683443084 584517508 900435544 465040947 947280575 815825119 961734673 668822885 830292398 55861390 232733354 35202094 235943837 781203952 902848201 197576692 823925775 222329690 772459563 344208944 621737483 29711455 699542736 15801551 723326872 382677195 723721264 713013550 885831211 727369385 902153512 490107372 498897011 526840016 989978344 725288101 762479716 643543116 964278679 565758174 627675917 569493979 980638946 623681768 962934975 735685936 822379593 646610057 757252718 939013252 971709814 5866641 420328027 842545853 999360583 819411936 890532728 264500502 349969650 627678892 733577064 376267271 499150364 660163981 979774299 927830687 985247749 333175719 424021086 716161033 977474891 814293734 872327298 785983009 971126900 354152955 644723045 108684076 421634454 397642550 717706224 558221608 718874525 56423168 551901094 849807649 995492181 621771314 870798661 290069697 723256801 295030426 347661352 471121368 634605899 421426799 876214109 725624837 837073346 936791405 991034552 998334574 999737960 755137799 982761040 811654185 838771230 548288745 655401016 851215292 885408491 510939729 800602455 96066417 618414781 590818583 819436623 779254798 972308960 382863989 921881592 279926371 893661760 138740513 175507739 277124243 883950332 854470296 879690831 315064295 615924387 773146708 969383172 746376256 750955021 220301733 987852296 782036180 880606442 627203345 679816952 744086285 922391345 646951984 967230479 349428102 660498458 715422168 770038849 484954886 812442682 143698657 914581502 262912302 669841370 667995929 923422485 154555027 760291329 472955924 939927800 654070046 814505399 316169130 548946520 987848377 996591169 680982244 958150098 557935792 797004541 391597741 651834342 758355894 859823701 73316076 554462240 20600022 950993223 977260516 982586021 534046742 708311607 656964309 867816254 38217938 325711047 655783286 786732836 557708043 651742262 171017099 906520308 12764073 310599616 681573586 764896774 625027708 752623500 156247731 346476161 183156168 514329602 928165274 979572028 624456028 990127199 264938541 362465744 271532840 822445375 276000927 420335211 585318387 761655678 876179814 888876975 263939850 903689035 13741473 604716282 887342678 985753558 313325842 939915308 882339370 992734781 280142968 605210975 175444583 455313084 184488586 737479967 475206415 698534773 455944867 636525907 584469950 880115853 588831914 886353033 456270711 906695074 139562303 737907509 898632898 933367566 901807283 934471642 71549211 679309252 897995394 924662688 811793069 973678932 40946752 251615095 970441412 983940089 65990820 392133638 525965673 833131805 121701199 398026685 718959164 944004188 929392653 957468538 661991161 950473755 681316317 844906038 746123464 877307309 574773853 681044715 586327476 717805019 847737998 944188244 39541056 532034718 752617248 768777518 858090369 974331328 898515756 944058418 558862606 993834232 554638787 632781226 122888092 621709916 262533854 636729576 673953637 928360419 476624756 867066633 653291604 965309618 689072693 809677160 287681661 681003065 319361782 647736013 563387656 864428965 550572230 582320684 664995507 827422940 481845506 737077265 381770923 756726829 273327342 790191286 374763588 641970260 530925820 983507558 307902977 665696959 583459462 939115133 283170233 537295003 700319820 881775792 977308692 983602076 261272491 801960066 73518777 556211831 757506701 977363379 430688055 689682570 888035494 950983518 460360983 624533889 36707387 359763324 803169673 932201803 267967398 481488229 234054775 271751371 311468890 916345638 984902305 988914335 245127520 390386685 528026008 659474098 885687937 957387854 638699495 701168717 231379982 631504805 950777521 959084795 921050803 965269688 647555998 864433314 212277184 436247054 695656981 705479543 730307966 809735575 110454188 282958639 853683276 932343681 445409114 932335142 547565421 929385704 930287742 995643033 326903020 888890018 476731117 938823654 451167997 613158610 244945787 342192349 173055198 746442240 276570114 469400063 122719247 305202505 720682903 739796073 204424788 592103206 485474382 777109381 10313852 633442036 499511162 861503958 357138340 780119306 350599278 455428646 549411229 862240964 528488874 746152933 819517621 912629887 590238353 970294911 771879775 788167775 699304005 775858230 806344694 858050144 937003470 997253312 939112353 952315416 313400787 566699884 918224661 974464814 862131275 973434561 215113275 630332395 903256603 979472121 636706631 810150512 847877970 986492485 161626551 596305276 424103607 619966785 898833542 963912169 362034236 949843569 960023615 988470634 396717786 573791620 730631220 754502722 876910845 961617445 977424393 984537034 840003956 866217847 795465707 995095766 658999798 987185289 92429292 143585250 365027846 826811421 587449230 750951028 481384876 971608471 106301268 429573902 326131191 544308451 224626315 659745784 491290882 990985065 166943965 481876449 182387118 653137402 841107545 863990422 37037408 292497067 583857180 919142565 405093132 990719135 661590596 927615668 367714430 705958556 64405499 716658890 738341712 964490778 910519022 972593065 103676160 867060936 848813191 939943429 963644263 986620886 680166379 747468484 885536394 892044156 898284273 901764183 926148159 997302904 686947320 816346619 163752115 681625279 233562763 967631855 442107785 753171226 254840755 380391272 220894931 357124470 183053689 968937587 38364489 155262266 714268979 956070252 435616588 767529072 442204235 953582129 371299039 794929629 44690322 772136962 937240130 965368391 850976860 996812381 782047354 986283485 541742994 697273888 722465867 762292333 943966480 973113655 291204128 765109384 394447663 815913790 759364598 919919448 305588599 916446610 626496485 955825978 565730966 889372221 456742039 897803878 3911637 368356211 830484310 886786068 967688103 980947719 607698679 948667303 662519675 834166348 789600997 934193225 233297522 915314618 396060074 806849179 34535872 60181098 445846940 722955648 350557640 886285068 635524658 776984614 40135386 707792033 976888354 980900760 617459451 778124649 928838013 941014943 249175965 277714579 367294425 403835802 803602278 816010896 874775754 958126929 495315278 983635088 98870805 668680957 119500245 840775494 610141194 825353573 773880645 830962320 119477332 934000015 71860316 911802943 513597846 796912545 81252516 945285006 168538944 884400826 520981344 901977443 901498580 982640059 561142968 713039824 879723994 929084400 397153886 818648994 131904917 416602216 150231175 322105296 20909903 682068578 770944574 794055956 975314829 998989931 734952038 882017791 11721124 953354798 758003787 981257382 490272933 704012673 769672953 840138804 227754109 286039034 555497626 980433199 650025338 845654470 538245837 716145779 227606102 437913896 297125300 893280748 853540834 873886680 595707896 644647076 531454430 606940830 218749535 371501274 411990487 792050947 461183705 817150038 430312030 522098655 921123306 938684504 500802075 554255655 761636843 953665002 385130630 489151070 810938064 886748893 521684409 867248293 390490670 429414600 666697994 908618209 532817788 681807915 368220462 495270934 985248118 996124430 429791073 640970466 933573723 947372802 822423027 896439061 737009539 998465402 508343925 849912753 441650480 577796669 253787113 798745806 180347895 758494633 848555016 883357390 245312767 648950805 32686988 642338349 629975462 872962731 742196251 792720882 266480695 425121567 170288582 676057115 825404327 944437098 311503293 543882765 149110185 271128818 191433651 654965347 980473140 991828014 766277427 982646528 977430628 988950114 746088154 799306248 770917936 939840384 153020640 913214131 473554187 587665129 406918344 630062002 431222942 818202793 331793016 537989324 159605296 529365432 991380284 998165289 250271831 486349534 50196592 137534057 755744434 919272912 616823058 976595574 458463633 789266752 312317599 651227544 58124687 231649292 578374660 914456735 989802017 994343952 236144178 304666472 111173636 997532612 777579682 785551138 460550436 544009851 891420062 905878858 74979570 670918827 255815303 681399219 318011257 734912187 260378550 605332504 610416782 825720487 926393098 962969067 875301527 941089901 642690916 832920656 983218428 991472039 265320426 639333590 268462484 738915404 201135731 707785514 719995185 930820214 261870027 464937945 742604600 899651524 853947844 877303467 87150881 297183807 566489502 842968708 354362073 864277095 207053506 776017217 53477571 85155437 497818432 686024549 909331757 946682546 42913361 362423501 226741239 975063192 80173133 136819652 459662906 659472182 713639279 936474492 484967892 699372555 661235271 764088803 602585464 614840262 425322327 498291511 167154743 202353334 564196170 726438440 658919243 901443416 246034722 305234820 44201758 210872765 679351651 964479099 695841461 786520008 616800152 861282079 346856028 750992642 145119316 428101005 692406388 769759848 310892497 562610459 147298164 702732953 358637583 603789764 638301747 841592483 922306776 928880666 935757681 942690680 81006600 83625943 103334682 391074633 467972096 515653951 899872267 990968772 828983328 906837873 774324256 797839092 730202069 909806716 24175455 203022725 847982844 880912265 529812419 631696057 914709836 956946012 528520045 770073519 617977203 683878628 716917747 743932245 248442782 551011275 954888777 992888082 958162137 960113185 996092947 997040228 565221157 961966372 694137326 907280852 689401767 911203177 105963440 423093592 89008569 810610965 990640192 999448576 396079969 802278550 376608717 608199669 21132781 119085227 619858746 917649406 854486539 960428585 70092222 680280071 368754185 430718512 471734309 798205887 114494322 714936741 471773177 646957716 352325047 621177628 854192096 940703325 919440275 990192139 204009496 370541193 537904877 986853627 605782077 881305984 991039865 992275447 799799242 886299383 949576171 990971762 407450882 787188409 943154539 995995424 669791225 697977285 326255778 389558685 660529774 857325222 199323194 827198232 936303101 997462038 501536338 608547221 417946936 765454268 937647357 958224672 161749672 975610997 351977406 595989046 817678721 910258971 212689633 780642302 451287095 992530543 223530449 285885112 709309942 967658227 111212408 325414144 274167499 622602061 205684854 909839742 345703345 757918248 117867924 870089089 51399533 172601404 542584332 947552656 461853679 846403899 643746882 866081083 848960606 854528434 132566717 939913504 648577201 859126855 526976091 899653505 84560856 391706327 175248408 987190879 493779131 829400465 479551012 923487817 986688631 995744539 417962117 611871631 586859664 970156710 210133204 742779079 182948473 449382615 240268511 743091419 977713162 988942002 741756063 913775930 196968080 413264376 788754498 844130039 391755264 598770149 625407768 961213910 871662843 882800453 539746720 588842435 137708812 512664428 316994444 332015366 148348179 719720054 681172404 994830629 405641613 459812045 395812962 654323998 247372023 859757942 269719908 759015879 913389491 943712254 647229671 965855395 993715017 999774549 432341863 720384376 460720015 754772880 465395866 478915821 662554378 662959385 522286240 590264701 841069331 943727550 151282553 895283908 970256502 999014513 351608948 656560498 353567183 475305626 434724658 691668074 109685209 863659486 950580821 998824431 685264262 791495621 15544323 534516485 21330714 268388909 881368897 929909928 182810107 552490369 989987823 992452947 118579674 686096281 272329247 317892266 164238360 776931613 978025196 994018668 296467632 477045537 686807897 841316104 14063494 506197638 700914281 995943989 122827711 836847234 127307108 208363263 721431188 807008787 765917947 915264244 896776061 942006969 570123168 853596072 205260123 313358364 73191962 568922394 926784494 950641427 645172549 955478435 614625704 782191367 711776339 810574086 50924374 95293715 440569779 602008890 554378247 933748673 117020236 958218054 503510560 743973590 254655198 699752773 117843006 911192748 865984067 905327194 913133948 921590537 537997711 716779599 719409840 808002183 265487439 545816776 715430351 964611240 659762286 972284112 212693730 356638815 603120493 965933795 398207638 788551213 23971235 843703441 837083665 888438076 404966394 836963667 344111950 459000320 345493266 387514775 849328996 947589603 723799227 795772979 618856259 989820740 108431863 374146324 545383273 712349312 981376728 985613366 995620777 997903712 868696100 940956829 341225518 809753095 299570457 595215950 36596261 718953189 232144442 703669634 91949063 764971070 528856069 566687490 180413931 881231877 475875992 524778289 401857971 752845246 707165142 812598532 205729916 968496503 595885044 643925505 19163514 582494469 935331098 952986420 436167150 529950559 255201401 352858668 225492508 778416799 115011417 897109973 237651470 682231429 471077477 863711228 779317046 867846689 876182087 930950131 89749255 120744101 954402218 969780644 849702705 959560402 427638829 675963107 131075731 391158633 65502340 982773546 20700026 257636575 410529462 839554356 682258434 988711244 352906166 455557492 895779435 917076814 399157305 810977061 276064268 648738148 225257088 377397397 118344942 172544904 382615832 941098074 2922202 695344404 240510154 897236239 813488010 982231362 293535848 576775641 495932636 759791805 458694431 692226830 332312392 896897696 134018300 687626549 112655216 300555988 847439836 968593069 87169020 442561645 326477614 633443026 986030283 987018978 847207743 895090653 170075326 498104150 13241876 657544645 225859623 539547854 666071423 761204552 390899020 664085346 106872634 288796963 619929520 964797546 386435207 912847850 538242225 629359250 651069700 892823573 989467063 992095804 646751901 748849964 444360565 979417782 568552843 788444704 472044392 472215278 737830700 830046787 590887739 677448781 717246076 939796087 827485618 884008849 572488772 926097988 675059651 939211791 809723401 884687748 590042944 709236425 663550877 696415798 220265670 421349810 354810025 489834688 490241821 604625462 326657063 771919267 807322366 920829332 245582091 721674270 423421630 918099884 644244009 765114300 394225369 466761771 140758402 540758870 64721793 355401605 756825638 889186079 939738563 978896650 922305236 947141153 428533678 734099895 336143962 500789033 591705665 683662895 612663212 843985900 106219176 783797365 617278411 617641534 942130308 980134951 240432161 506225397 145728021 684806940 480783223 872209956 330775912 629987402 892534749 968883996 840475170 967491434 314488356 780821851 277451459 388179355 338542387 854010360 755882029 876845875 59281486 404063955 596065711 924642137 484971436 928834040 81794856 699549448 939219106 984495757 68363419 442794885 663904159 908382883 305765589 979229427 949317039 973843260 354148098 558466950 530121685 967706390 805501521 858686310 81397834 762843639 195015579 586302893 186779036 814320646 388318029 799528101 451288195 486392285 809930147 829773405 302922046 570069765 284596912 679430626 930103031 937116842 50521120 877279652 809463465 869113535 173678055 508612804 841176564 917002055 769086108 785105642 781385031 886937885 998148640 999897681 727425845 805469186 512578124 917777177 327808023 849058581 389116070 493556069 768838821 774977155 858949919 880075305 552174865 959167114 606558169 666074160 754268178 777173369 750385135 873673318 292195155 489616213 736009688 764302366 725830107 926852535 499227001 942386388 163355534 295140107 183943006 319508094 883019672 909967330 549900416 972498962 816451873 899975932 65587902 151933793 61380169 184986500 385429259 896561254 95957009 704189568 277870245 655577147 701946382 982923476 594503425 874728800 74785977 874425588 990945692 991903820 647735256 704181304 252240270 659231683 714548028 853631827 924676296 997123254 169640066 281567066 335851158 521197167 32073620 876938655 74753870 903923655 613108401 805729570 253054523 358733673 399240260 925228976 503128420 565370529 541209963 561487619 969685325 985432795 258834196 681316213 679047939 812649593 417754127 715762088 962558144 997755034 139256596 283237847 838296565 957972920 103328898 890898151 341153837 412868491 15010922 50523662 685822816 891602935 15186277 963820405 960969163 975225360 968462069 988931263 121769873 254155355 875171626 972020566 293287844 597175733 69121564 170909900 473852548 993779612 383415721 684835326 928599446 977108521 444051462 793724388 816893572 831124009 930559498 938133959 164354125 361275657 108731083 551836206 282542548 804896743 167371997 253394220 242341503 758105608 109538342 842812420 927261308 969385228 454448223 844246372 281369672 774303653 377002991 961567599 989832544 994426080 120325394 389849571 114879763 828404315 439312804 916430097 237473720 320402675 130946121 762995748 329348702 577583326 860072675 982748816 342988817 782797506 535988883 714131378 749638902 899203720 667898811 760108924 495426468 894557859 980216024 998308126 214543749 417250126 402358554 889265735 906566364 997634851 499824074 608070166 372855422 894147050 591270257 612937105 22697823 391604441 573981620 818691290 81960723 784378469 113125615 836620018 703784958 890737758 924704611 971987695 117327236 906587900 56520742 114739211 82963434 387519051 365698037 383869742 238973729 911814677 420986691 535540608 979603039 999662206 821637695 972808086 117194324 759816936 484055576 760208636 732499318 810495491 937388248 953043564 391762749 805547158 759164102 813350224 420803189 844397665 57102705 479335644 664416164 833849115 164311321 602057093 420633722 888581252 81885945 626483213 124458909 270027067 848712724 903153543 958838594 995810127 109687555 834825728 775228723 822902183 968657701 975425187 395166935 842145979 865621248 871666614 926526489 999872050 697866112 806358707 825664621 907135659 422213667 878269075 714082816 998775793 989451798 992024339 277950781 508556127 904373433 969264709 830371832 967592238 371597142 772171544 703618399 720823050 172444922 477414304 998905356 999159206 595410911 604515710 551392742 684705776 814217387 997616100 437864867 532563550 915587174 941021834 863519901 885416383 712073995 765876275 800057779 882883695 222562132 381788416 320799640 850556399 540758199 708600755 941371963 961034942 973696312 988368121 268356487 975502753 975814590 989042985 452806234 733033425 443614985 564922617 999606363 999698892 352142652 355494877 143082191 350284911 952412890 980685360 264126329 615902999 641249929 660349843 125008163 448814047 809921540 938835857 185765217 218181043 105131972 539198496 796508531 967921672 147115345 181124337 656321331 908210399 578515697 676844379 377562934 484926528 965896545 994012123 830772261 975665623 369595455 763797389 224867228 381602119 511206188 549470811 235976465 863367942 806335160 934531905 544802361 707737510 390718135 908533626 383602313 399581002 230482425 788162057 926905260 962212112 865612875 902466413 366481043 500476640 263934209 653735643 622332042 684439704 269902684 747492420 731348669 978221545 905924455 966919696 501653958 609360901 232436579 874502441 875624791 883662303 817055872 859382591 955817439 958102509 130573398 677800505 465080492 518074502 223960497 992779310 748976286 977488474 238499164 565373250 114610388 971577218 222653373 255266493 965393951 974679988 277334323 764910279 77855173 945986617 306991639 818488810 990211818 991565524 695641956 980006295 147171018 902762056 193252064 734075253 57554927 502916722 987182979 999010230 187219473 376201600 970042728 972410557 326043216 812304179 627731021 952820328 22716173 775622923 613840073 750063783 20703915 111548078 16401415 576762745 440133474 891939917 289253238 574147086 97387807 363334905 791275705 821522051 621366384 669712386 327860557 661503394 489570101 963728335 681894813 965074851 7804648 201374289 630040356 998013008 34645002 894550158 216797002 320573013 875691297 996167779 285826534 777151673 441979293 716084406 629840725 661379553 999377222 999913336 63530472 416017203 835319172 933244263 950515709 973394876 500053135 594734390 869089196 924916727 865377406 963557888 913880719 924495852 158364577 488821457 362511340 766533299 891532494 938745054 738366073 760587748 450958138 784322147 324569504 397492599 416232403 521540166 865784310 909045310 213729722 348660603 177369381 396159383 30866174 91867011 941756307 962915473 169979834 260149843 641547598 894461023 156715029 491896490 896889550 947440887 955521417 980491183 770151866 940600487 1331407 613261033 649755359 898475119 873000387 875639668 546358411 694127620 522031562 806962491 634479678 867645805 971673255 990553885 731821212 745673897 105636703 249865964 403974039 519276312 750452851 836225263 439992380 453095416 951158463 969978908 554057149 663456566 156193786 384526292 352673510 537613092 805947012 989304906 263677466 941428121 21548766 60703112 393235424 964678235 8147506 473222777 792706319 862884195 483456119 981881004 328299353 833281121 86324019 832424436 311865112 931085345 673803310 722991366 243272931 456625566 377193850 845688631 326972697 823342935 849641044 990453453 448855063 476178033 177018360 423298382 636688103 868016305 842363956 978930023 732826856 758886014 779840501 923020108 779046245 971549423 751087920 851938086 379191777 480576615 911524477 991428963 848442826 881529201 362782574 741351741 89752439 274157682 514669179 624960011 475775635 924194904 263218002 771618478 77731279 733592139 521111591 883145224 935159146 957382712 920210821 994460148 930340904 961958803 700236410 925139497 356297748 578228246 460318064 846205872 150206253 485410537 967226629 985565749 81181207 451808591 693009058 795838915 718845862 866453131 106385508 778360609 29298343 315417920 243206638 646527370 754243526 934579120 201336964 396944240 966026604 981310419 280560102 859032265 728480371 950355206 773498277 975342603 967898042 978977020 986343763 989520062 650560511 734897837 633801415 801544406 826497585 836277191 568873372 861013742 587258428 743073479 744536073 812982153 556184886 590497270 33202801 387617354 961145466 986984994 146545258 354799265 341236925 604034556 237816773 624411925 908345469 973883630 822154501 912874658 176148894 926940100 280355296 366214651 375287325 749749017 79594012 477493724 955995752 995152627 198252382 998630745 355740051 404544309 902106039 984473387 415066604 829079520 641900757 827073137 517831377 697922157 560383440 755305605 404274827 548206055 587104454 810054865 172651739 851857012 765666436 855870577 604548711 984685821 252218438 390416051 107654865 561215317 35465324 773473724 925656718 965525922 571254903 860400259 698647240 751537793 324950852 566117826 382548553 836412417 761076954 871339828 915227165 945098433 567500725 579503473 816835804 917551345 589451456 772732506 98819015 881002964 912785838 973466890 715707592 973017186 174451865 882625242 224308971 747673791 932083197 958439934 582854370 820379221 211622589 441676630 667575526 993903262 142544890 974414118 839229770 843431512 791250385 817238909 980513177 990133820 778170994 974774996 764870100 898478940 775115491 792878918 410252995 716641737 841777226 922875297 224021658 347239451 134767910 652067244 656300073 866272700 32861317 762845459 505698357 659159231 617154608 920745140 890042851 961190423 767171607 901154738 366927947 416043272 477698748 722026542 640468699 946980506 596580621 785146657 501479339 582830620 55456169 245542927 755954492 758278373 582817606 913598155 115963762 213034454 280206775 760204306 315259880 854145834 787056321 943809324 478202728 734335940 677377535 789584606 713716303 815785825 842889421 963338345 328935140 864927482 804155982 907865382 97221545 314210774 710337912 754558776 15120376 716735170 708736875 889512945 814479147 920220713 388202850 599362928 231853990 496101278 907759349 959809093 96790104 915279010 962755866 964481460 973099181 975918795 997274368 999648606 286670699 288325636 69546864 134579369 374348063 605726718 998287126 998526297 327103106 954040367 826159060 860093384 632239319 695489996 46076663 630017687 96384538 513219690 598422048 677932097 762637257 970395373 803580555 892448907 464761627 701981271 993165716 998691147 876806848 959545753 133239354 978304736 875181789 957451845 153024050 652520767 774719394 989704079 784188085 842041957 76185337 733010052 587365894 788394350 654743957 760851424 248171535 248502895 187401329 760049848 105412157 590817377 38046165 717024871 749249498 928558515 481424923 859282429 232455015 540295454 697630441 979412635 470189242 591995577 416363337 576946019 421616687 552043766 421075510 546113209 993293428 999955673 800635576 899545676 892776465 918425949 267791433 681366557 899238995 984960253 924924644 956131142 469713062 782608365 563380747 992500599 135070244 829964062 795458859 970719239 723101045 794224039 511163281 527794237 44491783 454187015 943468764 968772215 871498178 931849925 28511483 950661583 706884158 902377145 596182116 730376375 179733369 332685639 381647075 841818878 373233623 725775737 519477994 888748565 631225134 801643927 155208241 631210020 295425851 558092995 146318463 194581092 642508104 881579207 392002450 444964924 975868413 979882427 693119307 723146823 849828136 872736273 865208872 890553507 251989655 849034262 557607334 702533303 571929389 713466270 858723931 905864933 635766058 974004771 111666994 685905724 456349604 948068712 379995021 457632404 954486913 998021744 682816296 946633326 288887778 704081082 390320100 515714443 322777833 692064744 158911408 172677394 866257938 918711459 461789686 996280160 565911944 865718329 117816365 464303414 292277661 550641355 673520873 771494039 707981041 878736666 628644071 748351202 861787516 906296684 419329455 910047893 933719751 986397454 881862654 908046486 676248040 832264067 568841433 682429190 189069974 873973673 190456971 822723359 134168948 515003033 171777987 852722425 12633958 755075060 10872315 850581801 251864369 581196291 843057456 863757155 353810992 369600031 385188053 534228903 598318324 724664013 488296165 710175139 378480247 920001722 749181326 869412091 347900403 581290737 67376063 810121061 166011080 879497534 214825787 651322548 970756395 971411336 709773519 945593718 58461022 451886179 388007217 736431777 26092498 57445760 390273674 593197980 731236538 927155161 244058203 813434968 729546873 735236969 373738428 463719412 570394021 819551302 452582619 652181861 215482656 637244325 145308031 856848321 602168824 877786350 93802067 232812740 622176505 657475759 343945840 498482477 279573275 859061709 261724802 334615927 193471605 692129555 320621392 887956303 363952681 585356463 112366372 212822577 90872324 409654523 276804455 407584724 63749617 856822767 768735663 904594966 779146852 844509626 613479017 808982287 177328100 475494275 610208485 610838039 235578943 998109322 131381148 675573589 922692191 928855166 831183984 945372028 982823707 990040007 20636546 423345956 512931008 977981443 185013510 792460258 110153891 791358473 288544312 900927804 299773729 438912628 322842541 915983351 553429747 663573247 834423424 845915171 674071023 980067581 39485329 218055233 973740494 991998336 798422703 806589564 644144835 786281944 991517137 993589493 234113036 996137240 511567649 956837902 339983444 524946548 214878770 821989199 643481422 984862895 266798700 891074589 760705636 780096181 844649488 943498177 221616381 852246166 340049791 760415924 98044760 315024304 496452838 959443402 141988500 735470450 589992841 974332668 370590265 480370807 654743947 904870187 298091510 561929959 323956048 658793520 390508492 991259044 848217875 894799740 304165887 352135646 169001600 810198266 320327120 864333907 750789138 755627801 911401272 947928516 974621285 990279414 852594761 966673930 77514680 956772690 49409020 282140893 900998331 933548694 810286925 989298397 948273345 969916779 644788262 667990145 451728051 539958178 14265497 709079956 156901297 553066740 96885327 988359882 66327289 912420979 332800416 671363447 483401222 701650216 751719128 969311287 910660717 921916077 376873500 453251200 843949506 904164868 139625304 294442606 809718226 992067659 485317960 657082273 867951033 964106026 442180562 897599786 7316043 55504088 28475799 722165119 133596460 603280772 444900718 988209778 232060805 623712317 975663174 983621780 433938601 984749566 41892530 555496241 506605630 765832673 131161709 172158355 809275282 974031320 202949626 912254143 220795571 351895413 334765174 552267960 195112100 706103025 483741074 560783679 550171176 816282373 735813337 766420141 471024069 771012560 349404881 785125926 264522563 504045116 817270658 847760985 224855831 911500553 900804050 916050427 409241282 619964728 254382336 484006534 702321840 887015044 288890840 450874647 120349060 255464463 210895823 845021996 403895823 603991447 94269724 254641044 375674454 946414754 583434180 713492479 192422419 352893561 976921965 990968160 339348812 368068782 355175428 678984291 416684184 884505187 890332979 903719305 964655839 986617288 645766257 811062195 351909363 910824737 10669571 264808002 575126096 892442878 993202935 997720419 751862438 810141785 974386225 983621860 461962497 652515255 236727487 801812213 870081187 976474885 273297794 787050583 661485481 851449252 148490385 481289949 456269830 543258630 719815911 944087338 230700654 230837252 960736671 976977187 746748748 834632835 940105394 984339736 228993573 492837792 861921209 989927051 54866695 989194671 539730243 940257038 424187185 704340458 875314701 880050214 396835562 411606099 720261260 890358479 764491528 797440687 207808103 588950537 253201416 965172252 39619568 272897272 633966812 782401621 186796562 496470792 160386041 427512558 259701693 282268215 408091649 926895290 6197760 429940877 166758015 631039432 138965922 710396710 213858023 939795334 822459831 848540237 505504042 724467444 472288572 574103189 57630674 703056542 351167533 617972939 276503346 533051074 157480747 714132289 387715838 470957192 568725889 649177791 702113550 887310388 660220085 990300410 397883377 681295051 957363831 986540234 161736585 209321758 826506931 842371161 934876331 954910673 835786119 885875828 504532239 562439914 570890401 998761694 898154674 956600042 190093382 982590887 465684385 712817963 579892662 939651999 121647400 954759839 542042071 896122052 143863300 937802603 976538724 987776008 739550473 885865923 724357348 894428674 222408094 887730440 738267874 743157682 716450593 975929569 405565073 669985165 491602256 652965880 60560486 899235061 974913940 979889346 948168534 975956901 721063279 859456012 347058596 531762857 863750758 886162583 650448747 938710397 251158929 730779726 53066239 295496010 379029845 951276340 747245551 977018055 665499182 918962902 425142100 715143662 231385284 451713479 554061323 747070295 549355496 553978833 890040708 938642961 735981718 972138330 698386061 803898432 349944322 622690829 25910131 390672791 940062728 993853976 558553985 888032395 727617030 980890440 529569207 686337101 868979271 929104294 643953685 778490875 999551459 999688453 85106379 575299621 411539723 888217821 312318536 462206811 301936886 545259771 964993729 966390021 834809561 932603282 440259980 843759412 800528548 861943510 515554173 998454816 865205867 957081933 571456519 841587515 428341464 742126311 190491308 272383234 684958670 982875064 180708815 721581538 769133116 929495861 636427175 916229047 817069231 852677753 751978003 823600836 925122265 984626507 70013969 188740009 781125628 832896279 645000631 696720929 764369612 795603572 172118750 418991141 404664312 542589903 407960990 905532283 223132814 311673684 615997756 801311662 871032519 937772874 601151836 742948287 792364057 969241836 3071122 446342440 142289273 893192999 433735953 482830400 215948008 819397529 350623155 912097678 217931956 756908911 312604676 365018050 267680773 312407274 711401158 782031178 8399314 684592283 332778738 820503843 99489700 102724641 33238692 914388386 360375212 610168293 898246609 990670376 309251964 696405942 466211130 542186455 728349222 903925942 638605031 992740587 494630220 815564570 416758473 536574156 121840934 704525817 650843049 850243607 479385600 919642706 942643772 969408804 645228594 773542864 594457170 634003404 111963695 331688432 741149352 805153755 483528615 858177236 444085215 552116959 508296609 814159281 585281507 603172196 976030282 987723486 736219465 821225612 540824462 692251606 899777965 947175548 935566067 954600820 491851881 899637786 92245774 924982537 367932228 859361070 603618711 724813979 344471422 932275549 361561782 795474230 433466649 783294525 747861428 866502906 660827044 716833561 496943198 894473199 859768100 890652338 318690355 647035555 912516909 966342816 897157641 993322549 81865844 642814796 508550622 952915973 123920205 603985952 678010705 759499935 510914084 763129406 441555739 775983969 124585952 736601157 818795815 869538483 356883300 634229583 87036983 180927246 42154503 514953441 466649340 979842835 917749787 925121877 79865238 951774369 318195734 880614438 585558056 913201872 559113550 820732788 633643929 903154545 584771072 733923689 337960784 759341989 585637179 587324269 230169817 299011384 652706248 994572699 817428997 928486508 611470175 866664019 589009045 745615108 607885727 993032526 238547345 371820982 273275344 411044923 415592652 440904150 795491158 940582105 444181756 896041128 950816073 957820485 673776438 882656983 565928770 573756782 957561532 991869633 246682489 888437680 63167924 975382879 750665983 910423308 500312823 723367327 942678882 961085037 319203474 838230077 964604858 975799787 290007712 653418918 49641551 446580980 341604431 384357453 329155158 731132577 962070725 982136389 844050883 852386500 921661669 993862098 589814232 973634134 660637119 871686176 814097483 956546770 328165707 574156946 533591347 710481017 32859230 624569732 525513165 898475843 125777795 409387000 988902716 996839925 146988049 817954769 822095174 896124128 99542637 928003683 376058353 851620953 946317699 970509591 32108314 725407872 240066758 606757177 742970045 797805840 408461234 573640896 530584416 823713886 478430141 677740099 869570099 926504655 589808807 841398681 113263039 869334291 331921514 714225463 385986992 827109376 415301038 582918046 734968500 963428880 311707153 680412168 721887936 814733388 340242848 979639422 682415263 950025543 172390695 474168359 299889043 899069165 722105244 908001506 511563133 571160398 745606126 810591531 990229847 993772414 93204601 437034384 930117856 966940876 145371727 262934070 456094774 798160504 561916902 897884438 458872540 651035086 884913564 945975415 392788622 717976325 471793228 872931722 618267902 688142158 354510389 704279723 662627871 943660974 460031255 786949202 788724820 795568841 147705050 945919933 184774383 665675805 753071395 937367665 575729832 921341321 323361001 641739015 233449110 374211273 336647941 456266481 143352394 343860343 607657663 631566101 417316789 503101622 592878089 845007637 527529927 726572268 118233311 195538344 53152517 335522968 47977091 926007758 490459040 892014385 654599247 710155906 679270084 813158928 412963476 465372086 763098592 803148220 392121336 808757528 944272175 979941102 207646730 709625385 812487816 870743684 160740793 356626674 984225783 995858485 312126853 631750771 603233213 718106538 260733650 707749849 134489791 738324463 375633389 782235238 275867820 787483763 868882173 966521508 534298903 783483367 713205089 846031598 713128481 782875531 724914148 967499520 964102795 974898669 955478736 987079400 445895331 986525663 481546317 577099792 283117279 381185625 983674053 999327688 391909047 786207463 838789499 982458798 915524717 980714257 459495834 879655642 450026632 765127154 367917508 729842985 729866752 730742663 403148339 581290671 879915021 974243404 858012952 953940555 151443086 816109962 833545588 942555113 472421651 981740057 787117007 990684944 675097477 982378056 442481473 537711811 504998983 599967950 902080452 977337049 873029580 949828947 688685489 833368914 946872075 973884120 734156746 862625717 937071826 967877182 512584058 949634089 815284107 883026359 906982606 969688588 510935253 797539272 503352779 836994927 248955936 777193101 775558005 878099402 610126481 888301562 45160262 724907787 825439798 986477991 717987200 804103536 256851911 792088548 733704318 809228359 260546983 441744321 438317502 530086204 308512884 975625955 80477963 163839761 421377244 573398990 851945896 939719918 607414952 891978017 627859775 838974518 684818088 869663125 25845163 509681251 747760480 909317718 671924148 972143217 716507630 839522750 957800865 965368979 541970305 831905699 526173762 686728255 387106214 822996818 461626722 635981110 221731961 735275259 209000593 850958170 518722345 874144232 368858515 983323803 332936669 720787635 820366985 876883216 697970150 956000422 297542546 314323636 318507833 726850547 824967338 957502040 269639256 373228714 872242081 953671861 448713765 704680199 510331584 519845360 401901234 968524655 179443658 765484364 88550872 267629196 572165489 573161731 497803843 959778597 840456036 870736773 684775241 825231625 94431445 580982823 900084723 985887028 493459623 521955641 528716187 731617129 66214417 853545081 457352542 874043113 227171953 582941883 688974316 738214349 175764432 962544363 906406993 967227995 589061432 870300941 968623957 977196176 32098632 713481398 744065304 826833079 940978478 982077263 648422670 894398161 301302405 768221986 23326783 972484006 110419172 462692791 367328089 682128661 592137099 746157252 440921132 516140984 141594582 379260271 924529665 986273323 380912387 558992394 415513271 461578965 424596413 618426086 872622617 898539564 416353851 988669151 56350677 139230319 382703940 544610909 58871070 623492684 635706147 956904461 713079095 716318785 19893045 762087688 626201681 657679527 834537361 899564074 18109278 524853986 146704402 854256940 189532408 502099041 800564413 939326635 146773815 270400386 257379570 834269294 551503433 614875254 351219390 557389746 798028282 848853331 16254094 555875091 330935231 977322952 468688267 552305304 581559226 689891031 435862154 494330632 927893099 980161439 939596051 946654205 808526098 888009697 814913363 838588187 271382056 968225034 582372386 747754538 546851172 779228621 691947280 750395389 141045945 609928258 964256447 988733130 463830542 502359362 984269033 997317912 152806378 629159136 996929832 997149501 24685826 31142306 487870018 858586072 358947096 721712847 816213415 900017320 737470710 995483047 631236203 796838237 858053439 979743321 867927206 910532139 496878905 973678754 25216249 51161917 526847549 882332511 247970045 704643439 269837178 593033888 790507870 956338528 950743316 988381354 523998241 724912362 525498313 817060847 27451117 87946603 471425618 686436926 787385246 800293941 157249626 614232299 783881186 925821042 280379838 691202209 906748341 945818410 42952030 215180607 878666679 911060813 236793990 571161497 608897197 945342130 410653169 993810487 149613945 437818856 508243024 869871762 579981241 593628926 906127175 923855683 176672192 407888320 683998832 988061837 782811491 824251673 919853786 993217815 567016856 827813160 982976924 999379698 475111774 988185134 12520198 433850667 533685712 893795987 785091849 872477059 909961951 998503859 725572991 942640397 831160866 863249464 186373217 801162696 221342958 815512367 715841678 879917482 605993969 956794675 329408537 489055206 806873686 950724410 860518657 905975969 676061088 796074694 954305524 965976271 220023004 712821068 906445484 917105207 665099828 682008582 703887308 895584838 958055190 991035302 975171260 992628481 625034441 884252632 799514646 910008511 166361418 635259531 867522092 922910274 714254112 739720339 976640479 979891457 430840696 548784248 568279442 685393694 762421711 813575688 65307441 695030554 247402601 426655411 353634326 790352630 208648309 824578986 191203104 935173300 585628341 740351430 455864736 746947340 512032879 900732490 773113260 935080885 766158246 797423221 185828852 467344611 41577293 700936117 84885764 882135189 989123301 990742549 830198533 903930436 715998072 744923459 347646370 994099707 885005076 889210802 833244877 913579113 205751261 491473342 328639933 887514649 685730662 893109162 829144241 896857867 85164485 791939484 940961294 980385242 689788412 913911991 552646383 720544044 257394223 394306977 31265844 490664430 470690351 800299499 498699221 879284101 172634278 727909930 663742925 679675685 606855671 767832772 466594305 707401681 377824699 435058957 616178834 826604049 894964177 947243918 377963625 384314504 54141468 695877958 226666354 931085689 412558351 932854411 744397372 947647957 520083355 749504578 177190444 555420049 813364271 883864594 384266394 398695659 741345606 857793728 808404150 862198475 68278036 405146755 564128594 967518385 648910481 682170816 39376317 835463882 1542860 384075018 952838111 998665297 68999570 789445289 132057284 356447353 649246649 965208254 482263172 644066629 707516126 879839905 36431790 900220268 930042940 980316850 411817713 776560518 253294266 298134358 197835540 995648860 780697951 962816534 127453541 624518063 615123889 960944831 275435921 365390545 318307084 860484187 974450568 987077646 848034826 956332273 596878585 948640474 479328236 597756326 455605441 632335605 472238785 987748605 412148396 907744421 108145993 596688783 298491812 975169375 651858340 911779985 641132119 935979371 99215786 605912235 981871912 996001860 139706018 342120683 776002914 912333956 977828601 982859500 321526862 651379092 49032869 441470025 735369617 908010058 573713312 659486365 765989543 920146485 784590371 789679824 746737397 979477137 152084070 686392379 683721121 987940874 63492118 73526185 445040475 610842765 873337035 896799455 752065113 863403687 51925319 143843839 587775698 963654289 101326784 955454486 21907801 971280789 201973525 896284088 939977119 993794643 538412283 562050574 978168956 994043424 233212477 740685074 560814124 891554569 5962065 884911463 862826250 879789512 578180692 997884682 59273402 782235781 936354543 981178108 813091960 958549040 871471678 954445681 411341381 654328360 303679294 995845286 987328607 998737674 138092752 526214076 421963757 826675626 631851358 962443120 572343371 879417694 225502838 915217850 997219711 998590600 811697828 962319280 144344796 290832971 27842190 309527314 870397861 894590166 823874 555956811 876312952 997346259 216975752 327271214 270944315 368020247 839921398 941299786 933710079 997286006 60517393 353822264 190668952 720923968 894042442 953259246 792999992 965393659 783249962 906818841 337333089 773238251 312695110 505268157 375925779 966963835 352820231 491537925 735052292 831901913 429485410 512203920 756701758 999724515 600115614 604712417 714001998 982668234 850203911 981408072 465791098 530793050 684514968 872713770 549109200 899297307 800658594 939395544 52851175 471564673 514376325 545418548 430722882 909045818 687753086 948630407 235263276 548420411 220042557 226896787 74357284 892617410 872697380 947849068 938405658 948380262 288561935 806854907 1104797 74916836 284585468 380508067 443467569 460709810 583094325 647307570 465244008 511223816 487153561 552448262 591147643 894430987 764264186 939098731 695407134 897691024 806800160 848597378 516039266 975495031 548227700 718303962 204316302 895695290 489346189 682440954 876125776 978416203 423662830 927806294 703712054 885984276 119420173 496477025 132575043 143679591 426846020 856260563 651605067 846891514 329406578 933392015 898727666 930015095 742396611 903405387 531342506 775111563 961449147 962589682 653370480 990984914 601245606 663366740 635174171 652284013 604278538 605190700 699299006 796427918 913089662 928425444 756944639 818355703 246456609 611350812 544038732 947681105 979072114 981570112 805056765 991399898 225099683 426087331 352376784 685834422 397645051 963978228 606855775 954222094 47146492 238592338 137622197 514536843 289889747 487821652 987497704 994575596 48789074 630994302 897358199 951831372 668093985 845176613 170099736 215251301 435618655 548062466 999618259 999998177 469898659 502273066 954681768 995126578 837701317 998871811 694291798 787068548 870595058 970900119 987022505 989079069 839544560 864706958 5100112 522703797 68647727 316661564 519505519 582674646 627632902 676813792 355376414 860126591 224197409 566184464 128597536 335342637 976691609 984810442 331715622 534142426 732240798 929294603 629595244 688183266 476015085 610722155 371381872 475013527 457508027 604996162 563765692 722853302 89149795 924752845 236952938 471192408 829621034 850971469 503855674 998387169 482654873 945960561 621671483 855899611 783187079 875197665 287413889 952771137 944101763 960485232 908248706 920190277 386507106 430631666 837194300 927278788 837995172 963522200 154271118 860690799 672549909 868086009 361351776 935162637 756637510 839478957 807169375 952672691 915869766 982555122 561356281 771655194 875869969 983846641 147131778 991804922 786140963 946294077 664515258 891774583 957685316 967131131 817953432 963667664 210348856 501959173 123949422 276430967 543932844 950175746 480773959 715706827 671657925 975698317 983573897 992127285 248843176 819551967 447819052 726095601 676089077 979924411 564040529 830355360 569791887 888262347 408188586 700007742 481250668 849713819 286176272 964035992 325754790 748958492 247644621 946012289 110223988 793184585 362813304 420819678 918961149 953708759 405279609 515017911 903873208 943292402 937122309 967500793 339905380 615140949 939456871 949146358 215868014 930847433 261749644 719449704 402175247 545889854 987302546 996737875 815887460 988265549 358400522 486515684 483739653 553371209 508523182 907212805 677038021 825189614 13242203 318287050 934062775 939053474 839250250 894339164 715093126 871400271 185255378 273007310 610927982 631193269 423291533 549268135 670628016 898172617 992045971 992556343 194513010 639420391 466356917 627843870 22207852 123316752 182678816 260696009 378727391 494211882 549696258 619693442 992904170 994345413 860600865 912165590 612581179 809660133 759205101 960569985 375789162 965918735 852514976 999198555 205565960 502063400 840731438 897046822 657424353 747602257 506136734 606206713 931845022 950300465 878918369 893424619 58516127 382654274 24150573 627527169 166774605 902287607 940180499 970017348 463008121 814188243 759535924 878304804 132110414 759383169 136638375 721422923 780537058 860542987 22787595 41737072 122214865 499337645 974276568 997465796 387567778 470695310 130753862 444196669 307191735 808907386 564227387 692961537 882182459 898547508 530014024 677573521 266336127 730215264 544901485 905699181 204748699 832521677 985859898 997299603 342320256 550498311 229077781 600521550 473054780 507694213 873524853 987135697 709776038 815231489 732919400 811351563 584902690 703649415 319437976 354562535 323157649 984049879 435145672 699369328 406794493 548217691 151717974 181590418 758938844 956202409 974251430 992822672 104895637 462010838 216446043 773682068 16344807 637919537 945308522 946181668 320645496 541540359 566153466 718614006 993685174 998302525 777233343 782844656 394547706 539122732 92112993 532491518 264977538 509954406 902100197 977676083 650434481 832617380 751536454 765713239 992345935 993574432 855556587 866291855 903275154 978108971 928448429 944724076 144690786 891721916 918245800 980212157 901815956 943743161 14162122 853063426 31955380 259801408 504955968 801066868 15945988 544681141 335887516 861596096 264896350 728386912 677966549 980044715 471235907 659819651 700723560 754345707 67171155 668245757 61595357 248886728 280217102 389504619 363381519 583648591 823329600 934364805 155270620 526010366 102369636 784635587 465980382 677808740 394958159 630669300 191466325 768791692 906182563 943756091 393248838 763345597 209760387 774474967 396634396 480118091 20224356 937596129 469020048 858015425 996729415 998030447 351804231 688320078 873117663 881740523 157907184 480168228 540353644 759950386 485296901 936997990 713062187 806498442 498449769 786282922 744900210 765920998 158248797 278113441 469624266 963146195 950663130 977500736 904116576 934568287 436106620 572880811 22703057 239408427 413609213 489645298 871606138 935183449 443333274 947610106 982503573 985447962 64644972 432569420 399950778 832445442 738309409 951850034 388517013 696967471 976959338 993589643 298305027 808736676 840611232 976369988 141303878 156392291 983623659 984256876 59435323 283572512 783373305 874405981 54579779 395934258 740660432 855204733 78958853 328062536 852531179 957726048 268525993 914881348 374436 889618719 791973654 887874459 232454662 260795449 997902055 998014253 605989408 846340300 285650354 542439256 886517475 945093115 372089138 466807345 514497641 699621476 921269118 999695076 813128910 949634153 534751511 924567071 759507530 774137465 483497080 572490468 639426497 689591509 579330434 832894448 97497030 588040681 790701034 857401133 470992927 808350434 231193975 833770283 301471624 965273755 611447133 742105405 26539713 469562143 182696969 417405827 54822033 273490826 682438715 853063624 375746958 457328438 920321331 981372469 519614142 952001153 813235057 884357212 272636335 779840498 968468143 999097684 199182771 732316874 560364561 960812934 739276317 784673955 118192691 858214866 553634576 557539846 301809101 304612577 627840710 813624057 756893178 897747618 591599788 808696496 241498673 718736323 538089287 737665252 76785656 858674359 275683999 513659247 377725834 790901053 510685874 681136777 526275331 886692083 76811513 909331868 474264737 896820229 61857865 636834773 978418535 983305457 838465688 982026285 420456529 549291645 499146274 817573705 785520424 830189048 524688435 963623585 761477948 859695065 286493887 488578816 421117698 490713136 511220258 752483704 120675092 186410598 512467262 649392364 661031919 929082836 261458206 948489729 196107610 512916517 680477524 717572311 287647979 320706846 606660518 618644226 682278706 942057184 225622817 508272718 152451370 715878541 340218692 911953117 689247489 819419488 382246528 653404668 115624537 855182624 383849665 740160509 490109619 610779573 258949230 432806630 706909077 806643617 498190788 660328426 934151632 955652642 677602880 746630537 652139402 762031149 910519037 951306617 928904254 959288015 727798332 890310676 772060598 980237684 727637157 826097653 358123592 472883750 687766177 969031237 331781200 365391289 260405968 677138719 915435021 932986325 153429163 774704118 461248064 495972916 418936235 571006168 833089877 905433593 805024467 892873182 943180542 973485793 657289569 949037116 489479687 723366171 307169614 637751184 668932787 850381151 878315019 992699153 973207431 983580555 638273286 937981850 362090175 428833393 753049159 956984822 842769018 908816531 862500640 884752816 43699391 187408213 70085133 613032033 943863751 969796879 536850775 623338384 939828200 958099124 287699274 345945036 710204124 832433899 396577716 782723884 732548276 970055615 431357254 555196135 560817376 620342008 157364981 712547169 199173265 301920385 140734902 422111942 680841616 704105699 506639027 660921903 34402420 451090085 811825367 944692582 328193752 495376410 347922333 515482361 725358491 951990759 490482245 926497756 421354306 722290204 84060541 557002394 498853480 784826746 357694748 958910537 346344574 426715109 786562346 787950737 630320392 753023450 331318978 946704885 216348052 339096410 954731740 975816371 522824176 623485589 997503747 998257518 871039044 948478478 469278533 703669721 2714864 893139343 54475999 719559142 552111255 670708095 606097383 831093712 783216584 939594776 550744093 620617675 514409971 776594912 338103097 881649308 655630311 684290808 499463677 711269311 529862228 662941046 600525913 602444519 251806177 930118532 367595117 433607931 661870799 689453144 589669442 851881439 910232467 969944923 419855185 541251127 30967211 144355655 866659589 886269207 628724152 740354600 663044828 680442963 771906345 945044498 979415894 988190627 869997605 891825201 671732354 942298027 107905813 819675960 539800438 657329677 419388929 660846316 57031175 160312184 732024136 983549220 465374876 866139793 42759166 578587251 365894030 406064142 695657271 857503846 815598523 953932333 123982300 348351572 794283501 944336405 473390087 705293245 930460155 975690206 953997503 981112265 611866863 673866210 860908880 972809132 117958489 161449886 767328430 969887118 120638160 125524687 597095101 999802266 994645049 996965092 976725425 994198552 577931969 923184801 161523115 629239218 312017325 958676816 546669308 846166896 262139091 994644236 11200688 647094596 192262312 633470222 224157531 794809537 629893187 684265212 471706663 685486792 274159779 782360278 66614741 395587699 425736580 603409979 165208247 637836536 712699178 825577119 457250384 599932879 703435398 915680800 783456919 864619925 982342764 994937471 885101222 903619756 427490265 948637402 614161803 828733799 64890947 555148067 838191622 963144771 967259716 977673609 981817075 982597544 415358532 603496578 380687495 836374406 774433077 819971789 310083626 778108681 404214742 927609506 379594698 615678381 760814410 988645912 404311132 603663279 298840231 993936635 128359900 523190848 185074361 468545106 829382471 966867997 317874354 384629240 419002368 720777284 61895907 736562729 935193829 995714158 21345599 280242232 279075603 993868981 542920570 575055857 227339926 829012462 276818531 939293719 378424571 764080565 153007601 465604817 874709071 931014788 735058569 909753811 973434588 979754657 167579695 390280704 83933584 525225077 185777281 768751291 409240465 853207636 887213285 957960499 314141208 675234664 389772937 849770248 916963545 935398092 869948552 910004323 4723986 720973660 721827210 806140685 70394199 97128393 734269151 843182167 540696265 563395792 769615328 830167531 399817535 961045509 798919470 930128446 867436677 883969577 106667627 319019471 282389675 435872842 872649959 955860694 481566070 949104329 503034407 786070807 322951227 422255060 25162968 406292297 396836989 606394378 808289886 965275764 650300181 765118594 524156694 748585741 876790153 921345837 651095279 716718081 707854137 756918691 384114896 635519512 610590008 880728954 63478777 126527559 584323253 979359356 698078245 916081857 252629078 263304457 590964359 805009439 222105697 652903121 163140907 688290419 378081332 785526251 259607628 865337436 778059130 978935804 984029217 990957739 87641289 712155593 373243484 769898659 862032659 898961069 683362953 837928889 65831959 720576548 860324681 933436653 507839367 749390898 316723721 449406038 450329151 929669876 196155699 959767754 539209481 653112996 764120250 912350613 422756606 838651133 708215695 747422628 103478941 755614158 795509455 929301392 243883671 890746647 510690989 821252990 507828730 770909545 644383594 684196357 739262842 786664328 426873736 935921629 979691126 996461328 87675477 627745690 178058146 910916897 899053389 910609341 955042169 959838921 353065172 776673449 216422802 746206091 652694051 874912123 988152144 991371446 389845479 853246646 314823717 972009313 467546389 615028103 938670018 955552492 412036636 579205404 833962355 948521190 396598760 455877301 805105299 881607768 462801893 590713343 472756137 700717221 72166200 176537356 971962769 990254560 583935378 930551158 824690690 909396319 872692660 995316452 609726205 926092499 389512456 468650354 536960696 884007570 516142937 589242345 175875906 611259727 806463480 869597741 481534398 927782144 739361517 801561429 701641039 899457833 750045813 917601278 284016727 578874647 725727937 897300185 922546228 971135043 464500809 880688610 216585177 910730192 944318352 979173035 830909675 910279378 946917870 975231483 939598631 942733117 237741027 896070947 567684028 995544912 68646039 518462629 225109615 398630132 146870247 186464396 267915984 539117010 508283940 737951407 160240313 927231246 921757172 944908447 794812320 946899187 107706621 707268095 182711281 344297087 788035347 973424882 512290190 662146847 34789732 353466836 123942462 857126468 110857376 758894202 991236606 997578891 339904824 690083843 78771329 476521158 293369277 435656501 285917453 686005049 290458333 971532479 267317371 785742043 623980271 651045507 586610706 863035476 305259212 308709884 71779955 247483270 318864281 795099628 360271825 746466302 347958709 884391662 695359916 876317470 432153989 919598019 51397085 86819490 941547288 991031218 270801735 846379455 647491432 790238805 8141119 49552735 267710500 651477341 352112946 709798568 276734487 369406395 466133588 973343031 900988733 939098112 293479147 696576625 336479283 985342866 613289918 646007011 177262161 950135478 219616105 555025023 842357659 873527726 947998519 987340845 793272698 928540243 130871989 895198315 787137911 792273206 627747511 940318732 548541632 645260462 789472714 800673995 304993643 686842668 588907088 673251071 233202458 536512696 926262327 935616759 30067630 85397571 438260208 973172976 593419486 721664097 94071796 846500056 482494667 847202299 217716320 506879574 850329394 917055347 314220315 997754777 769243690 833369808 52836571 248982489 916847475 973510085 271108384 467079317 624408761 810414442 708636578 970212755 996605276 998251390 278790749 441991618 53832986 639175344 170882799 945877010 66296857 303292716 472230865 557902081 427799811 770242715 256327365 789874514 235883378 729216778 328050798 427247756 80899343 380882715 918457661 925323512 331969418 953030662 880271711 963552986 993624957 999947296 425048428 958187665 877684671 994911898 492701149 753971616 494446464 933157922 107526139 792673432 359685968 385986529 704119204 776432011 413288398 893985757 375700721 714762151 314068710 814248606 229386851 706860645 689140266 955480933 646743696 718541047 549934988 565933253 641108178 839459209 63240361 872498374 97507268 229435020 997522475 999961646 89457643 288361517 285077437 356383027 353538268 862300842 651955535 734643203 263707120 380074960 176440311 274649522 443025423 757525839 862232509 929392024 783579687 850886353 29925664 249685951 201616052 963517546 668706683 907710219 524853028 681791007 977852805 993747306 390292655 563661760 922004651 986116411 567136527 787487709 457314935 766617478 942821673 984780028 733075491 888955108 239015965 669911783 362041884 470311008 333452105 678659575 410547119 549948777 107089075 696465584 274852421 473377420 182907320 530689470 193605549 735238997 244864126 809157496 776426199 795945778 416636827 808273563 140518116 841593209 353404318 442533094 336869396 364810603 540683205 547510118 181482887 598888971 497653464 544093067 241609382 912352754 749353664 978976479 124910787 631360373 225599558 724815099 510071857 761765892 246749653 957036964 720468239 770102482 880241172 933700074 494116363 988738425 603586656 644638032 445678448 725776857 281036210 581471864 411043776 668259514 414192612 673371825 418437206 657175858 932424008 979912251 150163934 952021697 640289550 763325985 153540759 177409024 487525091 615527917 377093081 614586911 369916207 904861333 220263376 526610274 713046195 990061537 810616298 876105905 672781285 747439350 421281113 696171653 561379673 874013476 412437585 504850847 463161876 599279106 876836005 902351796 817204948 850108577 216938197 590794454 404775446 477579640 363386706 800081436 457128924 704528953 480633216 666356438 969717798 986326101 117207510 764248127 828629744 861317685 144449889 998335627 96045065 497968951 221087796 230459418 902336510 997296416 23382871 87354034 464330758 965695244 437910530 981310526 284400021 419333668 802745793 986421274 993559440 997000943 221286519 856741708 469718318 554378069 643822790 787938187 252949469 451983858 585590287 673961051 480842230 558059025 929709168 956845676 423241079 565573148 709571403 808360164 642247612 903961079 830329810 946100429 26652299 810798943 539069952 702479134 713679586 814634528 397647194 569811763 118877013 695491470 830609098 876829720 951059761 969617234 163563088 240185282 262117575 960994044 199013903 461427925 98362198 753668811 812775692 859495895 685817107 858856134 478293335 816445911 371541691 980704167 697536056 811681713 318260905 360752304 459672097 846483900 757017886 765189990 103932990 432073238 503689680 684594128 458435708 729520575 689213276 783173530 233563922 367604055 28422003 327668051 763287481 903095847 633714179 681282111 4776259 699885722 286944549 894483121 897781600 926177199 59786556 829059353 994674644 997488809 895843540 931904656 93496140 588070623 330908194 541689310 222356286 544170100 274415265 843702872 110457624 861640688 695529610 988964190 878799358 963259059 96761530 303719393 422290386 751518633 370344015 668099494 633134460 955398702 402085503 665478458 593019278 983885244 266525034 803007494 212352028 595536046 986763657 991156248 6367615 289044480 277413837 897021692 767020908 862930573 514455399 632766465 747517210 956711790 327952888 695319311 610057961 928527841 393952045 799410324 364362932 656151752 49132876 332113021 197540734 370626844 948289820 990522387 851261211 917926123 760958789 900024342 934075806 958706824 458996666 875633446 942253293 981994093 993863762 996719969 934177588 989002028 571558019 649333926 93797155 469326837 789926207 913740569 169542578 397997085 426545539 894453701 764498771 985801863 173249755 270679364 773785219 895762981 807736897 901153576 837523929 924047743 917198029 971375707 620802341 765487816 396693516 764983559 443082258 701586663 335854128 964245839 806898623 985284122 286866600 688007904 472752494 928001245 373343909 787130385 153459364 981443011 129846198 857989741 422899320 828460467 728293840 759096831 417877705 860354763 80834055 461907076 857696319 865448849 865250262 912621556 108213875 781261095 332483481 918062582 541171532 841505533 66569127 802821640 758876615 773880607 369809130 469234556 550089897 615602113 926923607 979856917 397402802 815819142 323109091 347099388 862643226 990091709 23343873 684076194 969362353 997808707 232991955 962648341 680111526 805176551 891804709 928784869 960982565 980739639 991055443 991223244 352000367 532414459 533233040 557325934 71548062 399890375 58437526 326902679 630983373 886406897 554406117 649008621 193243567 714266141 709165677 777991235 646560712 745159082 116095938 266244522 810884054 897544360 499561260 888779324 545760551 628154887 246940241 473864234 568935669 637530410 453255232 655160672 401769439 953723832 140508107 344495961 421191223 943066497 494950282 978832820 489287725 996354136 731890078 780398842 733364383 964539207 671392499 988217957 542546946 648239156 226014221 698469935 16746690 394701872 975124822 977055591 518709906 780224713 648785755 816828843 764482978 809891444 245544787 582937373 742709023 893877741 168243949 980345215 313953970 511289503 150411987 793611147 359635001 616467805 700870306 741167250 280066334 545259184 945043019 987411878 868475814 986945727 174749598 733175638 52940596 336389376 938526668 976106713 659249459 855640074 512256178 786706682 426241339 623985687 724540749 942735543 173570075 213966891 475131398 610999215 164811064 643664949 285254846 954074792 82527007 722070407 937867782 973191484 726871788 858275666 824350881 872647516 653209187 724128108 354706246 876002754 272855429 387311331 647007835 829030639 816625471 828172867 963974673 976880316 867939234 998863591 640017392 987276302 103302344 198092320 926384742 994162148 755613258 836983121 508123212 821493732 451870023 740530006 712597371 932060241 120265746 487754844 379671156 856699273 207142770 276895737 336966413 493146195 885753922 926928526 460273852 771310632 296839546 584036009 347711890 791703418 470353940 979208981 673358724 712369545 789644195 998782181 94520444 437496661 22601204 919282914 339726075 374574812 972320415 979624680 880506660 890486257 906547717 969577493 929223424 992318353 61674073 150164628 503154266 813619938 403933588 478415500 189205125 214107600 260374714 390085703 618448757 866060917 488057891 514731397 661111429 954263131 650299099 830730888 983425390 994801602 696741623 889061262 520830133 794593690 400374529 899008707 855009642 861187118 803431026 823319741 327190451 688631483 252165367 400537345 518474940 672137662 153413511 341058388 662963667 710312386 489970296 519209548 618702285 700077420 50953931 76920439 46401393 548089951 345045073 879672005 618699138 750240344 20042153 710666183 371991013 957693527 28734712 909933845 236830435 685926543 538285058 953768307 51408515 69457927 404147731 465955231 35561728 221944642 253432276 710913785 224292553 717317372 771606821 791463003 674253491 855186251 509391232 626678177 146994896 503019673 654073218 712084174 484409999 914299169 650309297 904206668 575927222 999436451 644370231 875934547 486445001 684212542 197786576 892066135 748076804 864265296 964132940 972997616 306753391 933553880 865584603 923976570 288522680 596735853 764516642 832783039 269554641 753963545 857649871 960154386 187910183 800116444 157643161 751968730 719757148 966715726 458305752 572688284 547826570 858744909 613027072 697912668 523947292 686030978 233133153 993348261 743094321 809226960 106589721 112375114 504707918 644612029 698234877 897167314 139511064 820507218 642793873 938007972 418360481 630001333 789263306 949993271 299193079 862438422 729147873 988783476 534510835 758345084 472659459 561893001 107021338 164102583 371404631 856659826 870773908 978456127 113342566 976197805 644913550 980524428 220985027 637332307 395108774 433412054 733726896 776754375 221198585 765977564 205239494 700362190 82044583 303880207 801990063 950486745 749751035 863147131 953941877 963665243 658507919 908382445 638049210 677482908 517274246 748873944 953858270 959616653 192793675 479521677 578167954 937364484 718214550 813412156 649721424 830952334 905629966 910464807 700733535 843821314 602147840 753284894 867371723 949049197 170518544 835028891 794918106 824609060 409408114 877938683 91195756 174490367 378077729 550121122 260024854 403875385 944752892 960889649 127264580 128121633 822611046 954531018 665166415 794057578 801142118 959976344 802126805 985429854 686644083 915116664 306934774 905486867 22797150 377177072 30996555 880418458 432632320 795471782 190197706 651992863 952573691 981058443 372130856 671939516 199390588 457633771 908970000 921253699 328935999 392812661 992665682 996900437 807007458 982547860 910774901 959656103 916849179 925867339 855274626 936506468 123727689 255691906 157764178 469582207 901511695 930892368 942034871 961147636 606188625 927744314 565545924 785773977 947944479 973885262 849296861 890112514 395280384 916181652 104238346 269162597 242892146 762037846 544114431 662874790 693329614 791819288 62587905 270530939 411835053 755966310 670009584 890160870 64299383 340369779 914250908 947839123 431729671 769717085 940825482 981110210 802088124 984533671 449004455 693065232 429254038 971132317 931563943 957213457 518091679 679688933 427040438 838187708 196525249 654290540 576558969 862432168 415972461 422150831 315138728 350661813 740728459 818551335 848290469 997769940 161826141 768950891 835378248 894183135 568634732 615729710 925419235 968542438 367877411 609748540 751792359 812124785 955574968 980443493 246832787 746949215 515431260 965857439 198959809 880026549 536044681 974728816 172570170 819991077 569901711 688158556 277334587 468622871 799098848 915966091 929235882 957536460 847080662 933312466 527690321 934305517 822984834 828577136 760998373 781837480 36041076 585194632 178819050 810069345 746999787 825787762 820414301 999232595 534207407 571611225 33723263 137575489 72431400 990644768 502738170 746594395 443728024 890242853 38675864 255030681 169540015 670280560 902042085 914146087 884278718 994347454 536679907 717871006 465250035 841722558 753246587 831472579 869199267 898550668 724102153 940434463 950537019 994450168 148517312 329331275 594233620 989612551 171361102 863498144 669348055 838802307 236161890 648202209 558662772 878643272 233776315 645317842 979754672 994353301 99893916 897190159 758533390 943974829 598030234 915795191 239329424 516281114 261172706 520915888 458313799 710143356 77510218 945388985 609551606 629779285 837005381 948596860 760392611 940433746 706315054 735471534 80367921 625101599 44976326 419084904 437224833 716326868 834348893 912246145 963663591 969644634 906285304 987743356 73656629 938626547 360921293 835122139 144869445 972947181 753302366 910255561 213909442 504721030 301236127 381912267 273930974 581397897 852318881 913095911 933096295 981175367 899313869 916046267 35226851 252074155 32428145 43606380 735544582 999845025 356952582 513620374 388102580 640625279 651356950 662581680 492760073 658375275 990008994 999010843 275949914 303059452 272772279 759112426 111314645 692268038 375499180 753640041 121769814 654545685 994987565 996275670 862073584 974049725 633606250 809226034 487464215 823918899 416517898 900583503 377287829 951769010 558449571 700519670 132133485 289821598 265601098 314764966 455011578 779367190 692407406 788219312 784150823 873473577 446954068 549640615 833143544 957572165 218866137 498888182 52923934 426994728 967560600 990395671 218333284 428591020 645351981 828952351 29636685 266919138 669277061 755198461 52882369 915626773 411308762 593861983 399331559 923379445 620314158 993406817 206057227 768530182 88683874 813801455 436437221 935433325 978351283 991570057 287563032 830032921 854204729 880816838 461226214 906202729 707712544 722901494 864635460 998440993 378028064 402350563 146663707 461594419 240387314 635580163 645438562 825862573 304639248 718252511 312329631 511720854 94224057 146638027 830019319 999213590 213864196 961190793 168408840 941254400 434732089 674826381 796531313 848244795 527083293 856304085 889657292 995232429 861073538 984970562 201707030 972518312 467518692 729905614 968459861 988553422 435829247 922951226 443253781 786765042 447408119 867132472 533988215 903225287 490078895 773883972 566988149 990462369 686793193 733141306 928285849 983713239 567352416 979670762 397429202 510761595 792700586 828640213 383427262 970610069 784226687 815813405 170170987 875020538 69525300 299780544 482941936 857440902 977252317 996962109 939469775 958358826 142477222 467707779 80425995 669196121 36976640 338815633 842344169 896006583 488427754 762151366 739582602 898651809 875854319 889090415 11357259 343452176 498564763 877039608 326202470 939720273 260109982 912498857 89350644 628511833 953183868 968043471 112946666 835414095 349561182 722616384 750374008 849216539 809452194 911885533 319845830 549973434 508653395 523931160 732413549 884180988 899362694 995585382 631168814 787144315 507321388 853208317 494219867 903390737 939492798 976282737 553316212 800330413 759342274 921885305 951946750 967553323 409200560 606794697 524951214 899586072 901885097 995163551 114721265 748033677 135360114 203714742 428854835 707603162 597854558 919588557 346322371 950502899 980142272 993009820 983588068 986287042 529568630 907070923 880760172 986420406 61482424 718344569 599824745 853258037 591833619 706755534 173916787 427238297 754867124 785154796 128714038 997883142 549763439 824495030 601134323 856756861 197815312 744513243 608707196 844080080 504509260 810938855 666540381 986221246 594876117 823622618 277928098 391894822 213269933 581004067 46801299 948656201 255540972 474710514 393233917 563315237 684694521 833765671 613712560 828960550 364538037 606020317 238967968 478759764 190792656 276766590 386127828 937499156 863742419 922762037 247411117 586050985 762082494 808346652 595618893 828182939 639883292 897485400 93386522 310326199 542060305 662679118 535983248 652390861 852484168 920513992 631001163 844666783 258078546 708279363 116527812 782124826 40674602 243334060 353370841 772586458 439168989 513552420 374578891 643357332 136490569 430091548 788691769 881450923 477362089 494309963 658964936 835794576 162534779 219760525 154531175 239069390 578067030 910109782 311757890 496207214 234420944 609744532 987190002 997982393 126199700 609515261 361934281 532306275 212229933 898376827 874675045 950570250 826775364 939830627 176711769 700213004 821509865 994308152 638010446 825925286 100031897 348613597 746952479 766936524 925161365 959541858 501436417 804577628 900272501 937926874 172448420 376842293 667566772 700868181 853116216 987086417 510799148 674003801 948227705 958070118 553716212 648418904 784178181 811678399 994740369 997291478 486949968 698229115 420876832 479576996 798580787 976802555 713325424 789608531 980768562 993785707 420019993 923781326 249673873 360264784 27994374 354620335 776827463 846461406 279644635 510194855 491130123 618143515 65313488 723057137 527188972 775556426 382305132 896755150 970789345 992272618 949687811 965297502 796157304 885667650 554698680 660122540 35379698 461856030 162390028 968466822 923347194 942927993 424034532 838385797 544345997 565937192 242304155 629270949 870576878 937528786 346671023 504225280 819819988 977140925 902846631 983602305 368287621 954295549 32007078 337741608 215393459 746626739 618231156 623885183 477425422 967377775 134157589 323913306 783070716 896909361 906791532 911393707 614133434 700516492 161097776 319701102 75136237 609720795 485842690 789213007 731628387 995082215 633283936 706900513 238036975 342005043 534543571 615520390 935440343 938684891 706018354 885138836 171080569 703729199 86609338 598109368 909372959 986798635 57536375 674195948 481633559 762954805 243370875 820265760 764065223 841366044 481750732 571361016 505684068 820099656 989923060 990663085 203396681 409722240 372663234 496566565 669125880 681340830 98700753 470949064 697862618 773674171 662653865 693634779 429396655 434729346 278833294 789703991 499781580 651901978 62638066 208354240 878052047 938565865 573911400 961022987 19846159 921213746 885010382 902353434 521756220 725645213 877402829 880163633 680812155 908496273 152194656 312900283 270277904 271693840 312328369 698266811 81049407 435477574 454851171 490011669 258210912 378464889 336001731 523913611 641479697 929256513 104158860 853048346 838430896 964166865 208233879 809131463 246746166 567619985 693588605 978780053 222960499 594978880 267861109 389636765 510654518 873196257 610153079 715065763 211251938 238713549 410765243 711401456 647572709 664114547 514848994 762498375 555197296 822129357 707452536 915562697 658228427 864465690 861793745 950798199 888728577 983784275 121711267 237457723 116741586 437561465 62871150 318480109 545133140 773808112 536752784 831582962 885513656 952092310 460578392 530370297 643857954 994848031 146251930 952934051 979531421 993729954 15165553 669453005 901368123 997775083 873886514 951923162 204455792 608335004 329299602 485508430 138290726 969471167 768154445 769114958 263004064 593474263 107387590 709971081 928089084 967755496 688848838 939769390 63914880 844827825 571741475 987776380 632325344 865371365 411739259 972255474 579137000 784626708 481457181 916420958 446932877 691622492 426702786 732294103 177933218 795719139 770713189 894142747 272644793 881418931 563580328 947095167 62726946 727207920 34196281 241208901 953869951 958649327 699649921 773654313 389477497 404355738 982719765 986533308 622906551 968912736 848434972 961519790 763382087 827827356 729442037 881808063 626580360 681499031 943981134 972911022 336369292 625854858 59270238 300794788 878160879 993989959 433159991 572974641 833174230 967284749 360719921 723455202 669738373 865849058 637628481 789210076 370054187 757841871 733726932 916138082 141250555 336435503 547607556 748364851 750853651 922538246 876446881 957458287 619112723 766907527 826873391 946399056 276532495 640854445 574057937 870189649 307197529 733923948 74693155 636804574 521690340 531229857 103131784 997180458 873924570 948503425 970145063 992344986 234122211 637545263 203408492 752802055 452473470 811354395 97343751 208815796 703737582 838721893 738679576 957887519 537548701 984138273 638460468 921849966 864637085 864819703 24150858 228240341 456608297 956354079 502310629 741686302 632795157 903382737 895477426 933653297 717184596 799498380 212415847 329736035 672945235 865386327 581788047 816906514 564443668 957385762 550093602 951733282 988066949 994294195 491628732 589574500 831140078 909239749 16494183 158490456 470127070 795322307 124537010 654543401 119873738 413765068 683710582 851765450 887270669 933715840 992153921 998054879 506057555 991692907 623463751 687182227 917969488 934735587 258635321 574921554 482262187 888483620 415458351 477826673 803505807 953128048 602846318 752251522 278154054 338566223 279118078 449198127 119740862 563951953 667226421 853790447 648128268 774056212 997004326 999527547 203590930 244305473 107832537 758664609 248246234 874404789 198356530 302562503 193444084 673202863 985523687 999219367 602648077 735166894 40558535 745395492 153317388 925886320 660879564 925642680 405511522 729806744 573383195 590005975 977658000 982856445 137223078 874076434 977887402 981263819 16099945 162316128 24955219 707304804 786919798 872216975 32752467 462439333 925320559 985197044 25714407 609174316 828220664 997703969 149194813 972924238 509769259 573917154 426250063 958024858 168378399 265314978 100568971 731609639 647536648 666093092 885957821 946032125 983276600 990233571 338442282 686117534 105318008 878326287 119783999 686468333 455509912 986275165 644070162 978546809 87359409 645391856 358580450 422354526 190861827 253225760 992103915 995273229 128682548 652579950 168976664 823581463 466706981 957747843 32081907 451918043 665225266 887325228 917064535 950044577 940722064 946357850 299846626 583622540 458082356 753296776 894247205 942969879 699541661 954272181 481375797 717049954 130719660 431694145 697933888 909216926 659839281 969167127 421865448 907892210 203510950 359129043 609194885 672950121 848859602 937525112 543400768 741705197 445822901 551481466 781306086 986858424 558856849 699903720 331319674 710495235 636379323 912652743 323525089 342930331 940538432 949466177 735237412 925673843 365380861 808451231 406560502 470453834 7058494 819263353 171289389 450755660 774560003 893326673 803022599 964745978 319694226 667003156 818456102 963803693 387122650 842953372 517063391 673716080 140259398 726148798 534911025 899905692 181391155 246315304 920581424 922275193 651994503 974496513 509374388 585847888 865537238 941406856 233398678 606506203 819471850 910146555 176367084 976944543 189028680 449148825 9179945 439872395 912945692 959281521 449203441 453483761 309124758 675903275 815578459 862018775 320124210 479256428 901448600 918169310 299180556 522874058 905091639 962036819 194538658 657717211 436386490 535206212 926568165 990211146 576064047 716192059 861460124 992024065 468837125 559672699 983738928 994112408 531467508 812967036 949663683 968101828 412856104 955702520 746887664 839286108 250400022 804777818 256499287 431613909 291567836 538353159 622215159 641471758 248702008 947673787 155254428 979357979 726484081 782409396 921041299 960121158 866895212 962548340 790794084 912587243 514019824 826380850 666371016 810489146 89529738 953532546 996553491 999468859 913771345 960247037 178492095 700739834 277364422 736763774 521477551 984680337 273728898 786216839 531225214 541892238 680703829 762527719 649234787 718132413 337295835 359665803 73544405 276002698 516102118 687896340 272764042 532061330 609856570 693352358 999518537 999721794 201414418 629681358 640542679 761127741 627215058 942144603 640409039 746080957 453093247 473169546 886047835 942014297 174244949 931081138 654505427 839909717 910087183 934617666 292290024 420440981 654243762 756962286 382454179 527733052 167164540 289177292 325431973 486847281 267119213 904841999 34680740 204286326 475825999 566558752 509354160 585849050 931197486 974765388 647030051 996052179 654971375 700703662 181630881 853498097 683326604 698146394 911368323 972218125 450622212 515558243 433530273 455472432 451087492 748626687 707696116 937773459 282900828 303937155 115266009 625401180 479094038 861430887 503558178 799978895 144598951 875829612 565179985 657123176 178557254 786183178 279907302 353697585 226727091 276338368 867260664 887413395 169498492 665915001 576437371 672021950 132578864 228535665 866493656 892899219 835842122 914557670 483182787 854863264 255018351 783703624 197626560 524376191 809630971 910726033 186707353 949619201 106260246 287553342 613535470 970924473 68512119 79545370 256411626 998310603 972791856 973939215 991917532 995369706 280260874 554029575 191991821 812821306 483702397 995117267 575149859 759061097 394459841 844802986 51611371 949101535 854060805 997847596 505657651 531981065 447850779 622263429 999690299 999957144 860230778 922445308 530145135 926078892 396190173 698970124 400148571 516161364 322422281 862271122 61566364 840847414 488668625 592693204 878535545 898896529 803784092 871617781 159779664 464991968 331807604 875839728 530540700 902265240 373325696 569848526 288820055 855008149 652396199 828850950 207594010 220061412 288070473 684020561 129561679 664003235 504887463 554628142 355477213 691491191 189686119 204313948 74908324 933602979 799117163 949509978 448753212 970234855 471491169 537831112 86481593 248743184 327733140 950583328 838186095 850396023 173982202 542029224 588171168 716277330 115880392 189896943 704697333 897457029 935968146 989811146 678217848 941192132 885903660 946562139 187448622 875520522 283895631 797415742 788574730 887871649 442052570 678391022 742003371 992024565 653316354 950457186 302097163 429061403 355411515 784867494 870104381 975945367 236966580 627713329 689271107 812663802 408152398 631681972 513682177 541251030 726713543 924550391 884110570 909617944 249045428 251108743 62280007 931570476 207796277 624856319 622195673 740572991 973583633 999282167 424474219 705161294 842836536 897671701 711835423 868766646 816327934 858934034 167119339 392716701 321076987 798247851 187772496 654857613 426124597 591017888 951629067 996106403 91336194 533721346 68631835 709461007 9458457 408315948 402540093 789552218 653623105 989269296 618141423 663278423 911311284 999761844 77582693 843990472 686424746 718122681 263274621 266335710 677489884 999086121 946913125 969419513 31081120 888025735 113861931 703909793 582487091 877955130 71231364 203087335 505594275 821357877 906491695 916745165 747891868 780659764 196716929 773628500 989650089 997039061 652066053 662731979 468721214 912420285 242683355 889319279 325638416 430842196 50618659 560950862 266291759 781818256 552215470 758243492 325382608 686886593 960729060 990321334 835840279 915001356 241868569 408431659 952712769 957269571 264423973 344771735 477682482 992167778 919493670 996778340 395628208 453733104 919431821 933920900 729057538 776291558 508295294 732354731 357584129 783548910 605764692 827662875 113712192 423456844 435189142 484216628 674365605 932254629 529302042 633927612 777414344 855725991 151201552 542872287 348784069 545752360 662682369 984405981 795347761 976967569 850690437 990918383 930938704 949478769 96863836 513507706 764468378 907845676 218668064 576423719 602007149 738431204 113485654 490324861 398676718 930259702 642097486 855125722 885610065 889866467 418899899 999545009 348596785 727625368 898971760 925443785 970119083 972691080 681778308 740239085 124058027 635642190 913594386 961183871 195502788 229356407 781105164 922427315 36040226 635487248 979670192 995094270 18402515 994181342 813118081 974260497 310747008 863386417 338978408 840263887 79483836 558001644 197401499 659170974 543520828 975587329 524160460 996551384 414854497 841389937 90337970 804219086 438216561 690670573 208172452 821999996 646768722 885350107 735967846 919331953 310044056 347862451 278165605 811339014 444782416 506762238 639971478 810531437 222063101 830432266 155566069 488922198 205982150 872558951 885807372 926641628 129467041 462306952 761681863 942146066 117756794 506819544 151251211 816379205 861718271 972725103 282416569 554406885 578480058 950165174 85515419 993677392 936748211 965646770 937110980 942592449 343474277 371414627 534174363 969051793 848508890 900834395 876954979 931423611 163549309 808763615 206752034 393597399 588614969 689556210 495738062 903691366 964554911 994767334 751646431 784544921 806048027 817142559 578908086 686821998 150774878 998964875 369727574 386445469 760670870 786732978 677956500 789687481 19460786 716291591 157619084 734987697 116399727 947300539 717183309 997023314 826041535 989641725 923287745 962199212 17350265 693177854 272232736 749560559 87912025 721142649 244702624 326341890 758976190 964015641 676359835 984625707 261891633 630261067 543154086 744847208 326181975 372640628 812708135 962486719 282515175 684632216 179734608 827504051 640845768 647768818 646646361 908458177 851610550 854975252 825166707 903885844 523632272 975344925 210761583 794388745 704400174 876908343 401839788 840777833 106263573 610537651 904155623 970965060 12176167 623545444 231932410 917005472 82832540 358810349 640767387 659342908 274440400 406818698 588060530 769681547 396648757 918207927 885925128 967817358 391846434 702838824 537511424 583492736 909172390 932172006 735553603 943815690 594611016 969598545 963341643 967755557 799691881 957937582 211461788 457703533 570269971 742390430 746429238 773402161 565647843 946526387 738482771 950922395 924092416 929582045 545670229 886239965 135564889 514431722 107558241 474508851 64424143 185431056 582317559 670238543 590540774 723509652 135865646 667998462 869618224 904862424 151146467 594828722 476454454 933725823 25307024 63370431 229575814 749401775 269683354 880945532 149992478 335907509 53645466 936173076 275677182 278270951 660098005 900856323 409792825 999685546 589730518 908999582 14977002 779010092 531963262 552042808 181811885 952996954 108853185 466320367 845151144 865628786 212993114 247594639 203154778 205773804 720748033 792063279 806950479 935386644 514129886 841431649 298429079 617570530 428830645 732826852 215978960 350142699 29886756 695533292 366755822 565004087 247982006 588322695 205697960 484305731 855213984 979743256 203274814 978434399 878024141 915632868 224922559 671217016 919161452 964315516 67954985 112788430 154482093 629930023 430758230 453007065 228340079 321246146 840484709 928843447 264019677 814567763 477375107 592667179 888720534 975558111 653975908 962892919 408854164 886594366 89381222 549689824 367778592 655737703 448496570 925952925 762082547 813077657 840342549 849876068 861715267 947300747 325082274 685716107 559218516 760644625 561606252 614216254 24502913 127468437 644032149 670054889 50080931 343439006 792034113 894483686 266695166 370718190 264023770 417127130 757419929 975640888 422816085 580885840 694427917 837181382 688470495 760886796 521023043 986663457 391430897 438753846 117791382 304794609 931104685 940427106 227705835 437876424 385608785 606470778 779089139 974485573 382138756 907352803 837087078 993089383 414839046 517445183 916588615 956238116 350673267 602348265 18181852 507445528 84949909 250887759 158864228 337603114 13638652 208965851 282416374 314879821 839738892 992619408 258821369 915979773 728141207 933542962 362030131 393957433 611905146 675415113 582563149 653279323 311655435 756377557 763787946 924245799 668392336 991084774 559823183 876915314 381421416 406350635 748725274 975360887 657601350 798962982 905560924 975975093 827236161 918857503 991297738 993594726 849725672 941087868 188419424 224948191 188581908 953761045 896161026 994248880 717556565 994320719 706199064 931264567 330449912 768513266 150116386 170104319 57140848 263693324 733693769 935536843 12923752 905172957 435113855 748874191 41948052 419349394 367069737 889276989 811809450 870779845 260034940 738232125 506146628 554462516 76512085 92916618 317325673 706618505 333527298 752946315 423945245 773111968 128968836 766529817 851344188 851778588 747943009 907540754 632146665 762881297 447655326 622795309 846031332 871352858 322688510 888969834 850794852 925585136 109221296 534044774 275506745 363693507 992196780 993650657 914202519 915917096 505300879 802491707 592526721 614790515 433094053 766167287 17211242 507633606 672152054 775451435 24903879 312707104 281836362 944659618 276797621 392387822 585662839 598651956 609652795 736009261 159622441 862714099 258814106 545514817 857498806 942667078 558779139 783717993 90883422 272699934 601197508 664533411 695813129 730155754 546810442 752791394 290227997 822974021 191259195 334638457 207912083 500999710 238036068 339424361 205736021 417260797 976107640 994265856 680575381 953281905 283609073 889652286 130690265 371605367 508375320 648944271 681616294 969243379 326887931 453471370 378298004 382723818 186042372 530151475 344706794 636170250 834413654 854558225 218512101 356183128 729768469 795967342 115018321 872170269 108689 874646004 490679796 900078016 326703564 332310651 41196088 588200319 395389324 459170833 940980520 998508243 141816294 429218717 348994298 529711914 583241001 727122876 541050282 765809617 845100964 946800883 822588028 953165458 462300151 728294024 443064273 496943532 857385865 999056416 553281962 814084877 442100084 803252199 315703401 943879843 474627240 879127915 427291380 743751801 601259778 731468685 237336020 674543847 808534752 973972431 782477452 856851576 172261169 519287342 257514778 684944236 373813897 561420797 825541377 997181660 9734974 264054915 686869235 725867154 882382455 941736304 166568399 932384239 564762748 788599000 223707597 635606291 730348853 870739867 919099672 938373388 210285485 978665644 656529623 862621735 196847006 721672253 24317536 879994636 537937668 734540920 213424628 662292455 297882314 806248024 814086686 881132934 607394120 712691993 978136152 979464772 78318584 545407958 762738978 856374707 179565985 804206972 713832391 842240357 275746849 855078078 589731167 741132903 566318158 860835060 920317491 949013593 207373830 486150332 131906051 287701067 363749356 904384483 788825511 959285234 405345541 468743593 949932918 991635897 515883884 583036719 66353169 184115834 701402945 966933059 620433295 913208272 157633151 830346381 811813679 996642334 886150794 988405043 414180205 845686235 477745353 990033163 764668432 832055062 663283851 775818865 832126655 904475760 69961473 378980123 851663479 882614761 984923868 990784658 975179363 979704463 862814785 880566652 229466364 907987991 69480644 752887814 728786674 921312792 429143867 679286216 398174577 495420399 652572958 822459526 901478816 961541321 103076679 630809001 239806692 348766670 286442862 499756890 323315006 586664537 837471441 963775830 653339400 872849655 431372748 943524805 433953225 707475567 187848397 362492330 598952654 815861833 769080033 985987360 905794501 939672621 759162480 830869538 224916553 974542352 402801271 703893322 300570178 795460299 555860239 640796212 283398384 946920606 560891921 915439303 77073584 383926699 806012451 976002819 221666144 907874434 687574920 877869431 790020355 949322239 972299585 995835322 397204214 983334564 220515718 344619058 484238084 647709261 470932365 622920174 787089414 828392481 307335816 743961619 308519536 779487757 160310758 979544927 286167801 540512098 2597968 388316328 546285316 864530748 52938458 181015835 503018758 619097493 883779026 903432944 684973455 761533184 526157375 637163641 968726863 985499643 30123617 61896075 649935709 830112512 417550736 667743281 940658519 950124177 466810926 721231751 789825371 865359797 530552660 792171789 25120396 853173447 895947628 908882842 794088526 849026197 20905207 981446659 335721403 617871851 94568022 574712441 760921339 873861431 229336401 741153937 237903700 926358101 934364789 940334815 72233159 437339195 22431420 259374384 708585618 827690500 328573263 548185859 924424143 990885205 218408371 240609253 433439216 877678746 496044893 948023797 887391196 916634497 727934082 960035502 801386369 821825961 97065628 231485365 757657790 800479074 899952448 912331711 175677503 897275482 942060837 996980972 628213360 718276725 359093251 729867427 881520795 952847475 107793824 883187041 204599504 265031723 540676701 697417957 414398903 521698305 776456895 837773503 94052109 975503746 229619434 420827544 945637970 980341512 691968864 900831927 392555273 632235674 44705796 772901792 539059185 657990826 503932035 637957896 596443899 965555391 168584338 562224826 609324338 755675881 853046335 972260752 399735906 926916426 528080796 745988638 579846097 757876093 252761797 280465856 671561957 856465334 811696456 860650790 607806371 782639518 467438987 712644702 380178450 604642906 969445259 984463215 898507381 929136685 912155667 942595377 424348841 961979619 280904098 524814055 181187200 541501765 965562521 994365136 490157647 849477484 478882083 722175901 511149952 962437113 428253074 479938806 261431199 864391014 485055755 859286489 98618190 641779072 136170559 293033681 281346713 421523418 535518619 929852499 109249112 863138939 339252216 887859542 542827727 912917629 178065192 575994839 404872453 971945052 8226715 237388773 446924900 940392908 938014131 988981182 495246098 788451047 212958997 675496975 239853608 286611683 163505811 372311271 834689310 926962109 924256060 946325162 109036813 227897271 780853290 880908012 6804661 894794569 790527103 975009665 289982782 791741136 985205182 994563865 707109506 840696420 598326840 881133821 460527161 933508107 434354534 926359518 119919154 579431535 102624228 151625956 883489394 884393858 348282998 542501139 340343131 833945970 827544667 905921962 851453422 876055205 579885721 803994811 385162077 842640744 65202069 915948345 428812713 628162932 576547416 746814673 338854765 679217038 590638895 887428765 383378996 467829885 832001638 864536746 82042479 128042968 712304824 755611795 406338551 492718578 679584104 901744964 602668784 686753974 837158194 866955502 31207739 665604938 185185968 965369211 75748788 662374343 897413645 952878830 67409445 800432781 218844070 401780436 610929693 614360194 832931477 839802072 130248473 741784456 593048273 950704116 642384372 734412309 230835806 532323039 224566593 342212099 77786353 632495992 656452473 792125842 836548058 977670861 771324957 934847654 963548989 998597691 809500961 927788736 994974944 997467607 144351272 954837003 67071354 239947005 975022482 989408315 920901941 945832105 971593414 974015306 918886804 954603138 424892816 554272645 285570174 632196100 284647768 896598057 883766714 976001705 766847566 906412868 659542108 833044986 506068565 512664723 248118914 986762960 881618108 912256628 425656414 460446295 859326616 994351845 354615342 735750577 45089469 124916783 271659524 487990718 737409510 761859199 506625719 988389692 851274710 913970900 331522830 484610562 241384921 313660766 553959703 601401548 819687037 909919474 657427350 954317134 970328583 972847110 629531556 672637354 259020042 386452354 597994002 784987278 418365721 811961184 263929738 727330334 672696626 737774430 946960326 988086289 534010809 695390749 11254954 609988026 205233979 733881452 486956540 908614585 56740395 195331100 6446676 975061395 679344196 780256059 198743610 702066448 462878335 734325571 329522017 971026217 293369530 957055607 881192037 981501148 521218897 957992043 980712700 996226984 388411812 722228437 503558476 573407084 161193975 451534718 870166546 932191040 197791555 639742193 174262440 262654936 740346813 980221737 465344323 572726825 683032729 794435805 895108272 964248120 175285500 541868155 443376631 923342483 674407405 977942337 460955410 954941254 213783763 294154631 632167324 878722589 444502296 460662169 916486543 934171713 895142624 895405905 132793282 619195111 481415823 978934611 741825462 933879469 396379337 502331524 227978315 462653849 191202971 521236291 125273145 150684812 781007143 917026348 270778384 509611904 463907340 983635158 97968325 501329232 381120035 424078903 215986559 494406468 565701047 847593111 58096673 928948488 864474214 966029088 65436246 351926021 941479755 996482473 313378432 713974589 47075905 626744756 955709817 994692072 165006120 487906745 49371243 902089585 204685158 825661718 398149903 919636977 445619907 749719820 665635883 744455718 169212825 211845946 103052347 873578296 827596366 868991578 963595364 974330036 894221610 993749643 6245744 559182021 402884893 539725006 58940407 330919957 106573384 524866783 611110047 974719843 860293135 951109382 72631781 342619527 77802971 800565099 982477408 991679986 983320674 990920866 373079432 637651633 378396377 953204781 74971044 274415617 502533511 659017950 213268875 606614915 120673416 300070400 608460301 931922534 109565405 234127113 867778196 993574179 170096620 391121730 872285566 890926334 349771214 517570931 397029731 986513674 707446782 833498812 516372690 542742591 405552185 429377976 843092540 917555519 478489072 611773006 236436655 732436010 284119793 810674631 197136143 542725287 490871429 776297959 719482232 800416507 160647646 907844146 432032521 889128332 912708721 967321730 724331497 953534617 155133470 304979649 519109307 786879934 120718616 533532031 927384759 950304791 213066851 839991192 700951750 729159080 299351562 832054653 951212976 975113736 940809976 985726239 290950022 395224911 375386968 937430861 967842195 989244835 261809808 393085757 445327638 778267570 915794213 938119207 817938847 872185654 223494246 788742360 870694917 889092145 249135786 449546651 876718202 986425206 776631672 814359298 978432387 989165406 450296098 761678349 965690279 974970889 79994717 909200175 815475613 861359780 314354301 717509433 527733441 944633426 7903458 503141288 461623212 754339518 595790885 877420855 897617709 971911057 959225837 983891127 89408166 625632730 998944380 999489911 281345610 330110048 500232955 663417428 831601774 973543292 515855576 810266864 736115676 990213262 580867489 581446529 887373451 985058974 343515227 625914688 977906428 989873398 215202353 266646943 819412275 941241864 219083825 756308814 482589748 998732225 27821737 602831195 71705637 962688285 149927170 589904445 821437137 924916695 930583653 948516704 397148645 529379014 414843874 516930005 692694551 855897840 297403415 771419826 968326395 988225943 584500525 676286571 461331954 888471182 562986699 870305598 221512658 646356286 433882246 862984350 406540534 805901652 297447866 890222774 470987464 699429307 483535624 827769644 828817627 855492858 718647061 732974291 527272832 860753902 811233605 830650758 543144470 934737038 567473278 613898661 629916662 975128303 220284214 640410493 96659949 487107825 542364273 605961274 663640391 717864816 22023773 744348784 378116325 421634057 969860565 982552885 4271367 176122207 398599032 565447870 87477540 425783083 515873153 560492137 689083625 722244301 713393033 871785675 316966926 360941803 144994670 159113722 969712572 996606725 602696081 878170311 865443957 907663032 891053791 925123256 779031580 950306193 445581887 865969919 764413314 828546131 73850343 574372543 930989782 960707185 393887896 510146434 555845121 812569450 212572856 707664960 717950277 753383971 699345715 951996599 505662893 813103950 872056295 875457715 849999479 955186201 220452433 561169088 311042051 577043918 736945056 894564477 167812360 627305177 301253330 653644953 806847782 987328867 432930419 879285613 306371503 985968595 166610950 925176061 655401143 892774108 877646940 984223589 219792531 242762977 318662829 414802934 476424858 496237951 356155244 648039675 420993437 732582434 583982400 948363749 306012185 927316410 868065421 980389287 162648723 795633299 223032099 611674441 410025273 805335741 811684971 833148668 580446336 647811612 728115168 984388875 458824010 609960703 694516574 862822938 662715171 924712106 793164865 831484861 824791731 848837138 750158194 781534470 92937630 257507487 686603324 830098185 301371215 328016781 319587087 555499040 46278975 177930493 106081997 726252606 929862452 988042380 770732666 780843190 590865554 761490086 470332794 632265319 446588972 718186608 538806350 920423567 848273314 919967317 710088004 919460079 785426582 802459430 354892758 428434244 961122640 977510848 887532570 917887445 29098526 972093399 180096510 225709588 477961469 895714800 138070329 701321601 666938929 860348259 79548893 909942302 147366537 344742284 879145124 918945085 420092162 641984053 278324674 605089191 600427476 604416695 184250541 318587802 194650676 529984418 593602201 607164075 953792371 958110237 732733627 912915569 436765403 756709669 932077211 960818431 378368077 912989762 837447170 902645386 18345590 23743315 555450252 832900726 620244748 679081458 651108981 706011614 409267764 657928009 71067178 991995986 23302735 570609495 947831824 975039735 77116887 232452150 959271702 997492505 348885209 790868006 125299839 988526999 315516110 555458702 471521800 817266079 168237564 768523544 983076663 992486113 726391634 864563337 350921158 997874331 906618398 948562093 823788507 970117756 469003010 847880569 220083216 284564339 459942939 992716061 259863178 386191463 676996852 751119197 796196374 835262553 99950280 217389299 627342891 866217417 237389064 854335235 899735233 952571827 613106228 618783297 59579005 804364316 801205342 847189015 370033805 826033730 51835620 644040826 11477996 64591578 959073805 995232967 11981891 769038920 271384420 467036376 637985295 831138313 197422089 361928472 47533440 654193536 553990224 674695895 835113018 865622837 9250762 805831296 840970940 883606788 189264337 561313903 659891169 854060617 584423825 648130991 181076907 356684631 653633238 743768372 276084734 786599841 936020763 987949903 583093556 847765660 134252216 632676747 311487584 355451797 903851725 944424589 397170213 884142699 319864478 876927100 194929034 570166448 854312627 943146496 819549584 949933264 740268082 853068713 157733343 870740005 958608102 995264267 339490812 564466733 470199719 972409132 256078960 696592927 143540032 573537497 150493400 428980085 368603026 416421565 245787282 484588075 677592828 768002032 674523014 991427959 513621399 796183534 283035448 433040747 230317073 749344541 810088167 844567599 337275849 980370851 230056366 523717049 680671255 921507142 450819063 873326124 896395824 983188474 409030198 635144365 603073947 684287181 33543155 301797602 511950459 877688329 946391691 981629137 225682801 506056043 573463588 966670781 132847517 577820407 12931658 497368488 446322996 650842352 990286672 993601702 627518087 973526088 780333276 892171360 435749207 522361641 714313226 872905150 787832345 793588432 176353115 376250056 561573163 882540934 92514782 183269896 440149009 566008511 113387670 628794130 823424948 995809804 711295944 814314214 961420561 971882796 72428087 404410701 342147017 788922881 757322184 932961591 785108324 873537674 806195228 919191741 793484963 842642272 736900697 764924430 547501601 685244025 637320447 677471536 767200236 986603165 607815888 614600210 249306962 857399130 562204438 929612264 36439241 275221417 537895229 945459858 787941796 943972515 840622407 927489039 539727358 733917395 953357302 960618453 483999580 941446566 606421780 738963059 1423514 177719639 548688760 701229172 898914973 908596547 262082548 327205577 869738928 948243971 834759649 855533688 387135064 984982198 611095610 820073341 526607527 787499303 108586791 870040047 799731118 975942253 613172832 751000226 760609195 905153286 694934541 869304058 521809360 607805758 36765232 834086811 144763087 831000555 152140778 626963818 832800267 839176989 177616534 382061020 171478302 967999760 824518335 905366790 268575334 724300153 276525851 900106076 6886440 664215002 579145793 714709502 220476971 929243756 849970715 944094193 997383498 998020872 146665685 894122797 478699588 895832206 948693481 980527808 790573391 959357072 465676742 828415678 665208028 930485047 626785973 873192918 548934462 866504678 663645351 666667091 966876045 994574644 808736078 999128805 301765706 403234421 492945163 947433710 208425977 967006340 342360408 495843988 170931909 254217092 260803607 559297263 117378974 749499763 248039364 274673837 428131538 891379263 191282367 414954740 17739520 759093915 112054364 930865985 869943062 932995628 388815269 778395146 61604509 443884327 625434955 792818794 30167096 998541858 463269899 651214365 880588691 916202073 604610292 912404882 531189078 833829998 248264158 337143423 311371524 810812504 460682691 647180653 703012925 852191280 741470392 808295326 164585612 334024471 739028756 949342768 6135658 6628949 404600578 498960590 634489289 781032472 523336782 906290325 852369231 999655110 677298370 837323749 133061630 381210273 775615616 953880274 589606510 929294054 658657435 828402459 255189326 811906599 228421051 393117219 513620962 770032993 852770727 900630063 688580324 871592797 77751417 705906209 651677139 888429523 114969385 557772540 977452148 997539933 17230876 236775303 344558602 555503837 213961741 968653209 179986849 400715975 281451200 483072764 87747410 516499132 948902204 984306509 451951548 713609634 522276275 931310372 10457902 949614560 383905822 450644387 683646805 758234123 42739672 784859407 10100145 194493013 805565388 989209238 382609292 942304973 641479259 738253790 184969314 808317602 696935159 942397789 832979180 977992211 658119624 849302650 237531343 744187698 240846259 434229072 843560648 888179771 608991490 674892077 661874435 727735862 854643769 952865185 795520454 820887459 916369447 978396929 898505086 999019574 805948584 853078654 713613850 980722565 702973698 722349968 513571848 600770327 317139069 378515892 752227372 886797242 669803665 756772287 241877745 405748819 895010660 956586645 249373050 268648314 289385010 596529845 586213045 781136855 333876391 824010058 745826892 901142875 446917907 561356464 801666574 858213565 476309557 580895033 202609906 901180702 513056149 885820823 135421007 928761733 128388297 843001629 350524079 754930536 872776492 973416965 645886146 702032863 685953139 881866146 27149227 584830401 188886112 845142732 574886308 834867870 311585758 399030256 230628196 558241619 919055920 943138347 671414749 784306528 144813120 754588584 959331240 976467879 929587922 998096749 261270248 456095340 311109185 540377658 524411658 906839224 24047056 329525707 784017916 816455476 286254934 550137787 458255163 682723472 884264623 944162570 435909417 584276064 569693050 849199247 476569435 807939554 160350277 706634133 949275870 952413108 163805455 350799208 74314707 344350784 897558353 935291645 556135574 943988230 664373274 814362349 653940383 858344123 631910575 700747655 612667841 786470128 672171431 849843161 969442183 995027659 427598915 936259114 486757048 818237448 303763362 636265516 242710315 582744315 431473900 445393522 473594529 633260925 941013760 963714387 479507097 514926070 349770645 559948009 801947447 803212248 446076963 877826527 855127981 987066773 188218805 991438233 693248211 862247268 415928447 430846364 131531667 487918671 138592497 496678307 674978839 836581213 824472266 859002570 644176669 690560683 107374323 203323695 604846835 796202685 599403341 701063791 728639975 864479824 665706716 966023749 897568904 948081597 654399615 940194623 163041078 283394774 64076639 82498772 825024115 991860127 76602398 691359520 966705694 981042280 31188877 516113572 72190941 147355899 978157935 981985051 219713597 779853489 723506041 815808131 660657400 772380653 892364792 968692497 582812633 727897358 682546004 910212253 655130581 945225650 882310780 983502635 279558472 918709124 728341049 909905605 530587665 820609486 231664872 592420218 327901758 596400894 811036493 820407458 687866637 865355423 526072336 615646182 87727750 327203307 45500741 139311220 771106698 932241466 704612170 913555561 309782852 918553922 471516153 697067360 25055583 891024946 914603001 946866936 588220282 870558555 532634723 871113267 578222680 884702687 46005862 871483809 735594726 865902855 839494934 861572306 136211922 615042586 597555713 693814884 551539493 968739589 221313049 509168135 712439653 859245433 433986914 467121706 315375511 888882234 782570159 829940097 710056942 981742826 557255263 982338357 134108489 811519369 140390983 804495627 459301398 628926410 550450027 881437162 687067804 890149047 861938039 920359356 777209105 907752127 708234342 782347535 676792617 681561411 938948987 945649256 566894490 935278201 936050344 996717984 774048876 867952035 500656118 512484717 335715980 887033314 748908748 950446297 998703552 999637864 707389238 862514520 874097738 931287442 748697721 813553571 449943185 983490232 64674226 201993230 43161408 228195819 211902001 817312295 465581686 507922473 96307365 612850118 73837082 768657127 160783391 632787232 952305843 983788849 819903404 822460566 870088142 954897385 192955580 295220809 301705820 531696699 292630696 400130965 156658455 335514186 823431792 948801647 675417485 696802804 163278189 425839456 81794665 94846602 915318113 996814288 572303757 837353832 844601268 965449390 633081718 684439921 49477949 963644506 483091991 867138867 448521920 679395516 360519069 382233530 848645104 927108536 28630240 534397539 37465640 607542810 537661871 598832770 748115646 758647642 64856209 825044828 885131033 930712569 799174992 858711862 488654260 919799020 982607975 983907101 459243931 638460255 881044847 898684804 3488205 858202726 293973723 422139377 667932038 893130356 610925097 717392369 604047996 992592004 547918434 832963809 17361183 375620335 579446016 908024573 974297564 983111767 316992057 573813908 843274624 877630600 7180663 625374182 432359268 549923864 82352548 102894209 618818528 945495783 610061111 915065838 86973858 385225840 800594235 982676602 400441445 485696582 896350146 924204461 802378198 882777882 865167881 955815734 425293611 559432941 90012177 666600919 337961865 774830053 948993229 986103764 637580412 797259935 124908354 935734636 685275798 955215169 320419919 438352309 832809138 920022671 73655388 877997928 820999686 929088076 680188700 725483221 120842905 928401480 662995363 792199940 762300508 810484458 531305697 929613731 951637706 993712054 911781858 934133214 190645245 458569127 854311824 973813509 83564319 252618088 993432714 996664215 506005641 546009394 674937059 889589837 936741855 991647232 188372963 433924483 670615666 943846064 346655408 986627059 81309378 830844729 674013981 893480965 62722034 362169156 592042218 875961221 830506521 947079526 91941370 306076657 178968593 566607523 250215029 577505846 275420136 939884037 243942565 713142515 833898597 869490957 48109527 303953927 404023965 886904674 947383666 955802743 536601191 596164198 202705238 892372144 507492270 924100877 547980305 970303184 375489907 769021177 6579880 652510628 343162331 753620028 379648199 696187125 284666383 688875386 440334554 800566838 215645026 324843169 369321915 781589922 196312342 473888544 521561352 885072761 77820624 279321880 616628882 900031222 99657527 535258948 749597239 776595940 822814106 907666535 586253722 677156407 427259139 993987131 620715966 847290994 756866322 766182013 214581802 697093447 900638264 932953865 114994348 706092542 812855401 945800961 699166383 995362082 213785683 733071049 643416303 845696482 871955755 960902722 39655710 165697510 326662334 954709073 472288868 967829075 18707810 93357680 895844646 922451981 413381915 428535635 90142833 668581652 781778050 940008012 156637096 259462665 310218197 887343659 720823043 799623037 311571806 331601903 896202925 957333583 964633171 976324639 154444711 991634070 538597904 900233632 800184234 968136678 734069302 994621805 342067071 567778149 697780907 951493947 794274162 976995266 420058616 518946027 81127760 800666008 445547644 468649903 402776106 889697009 342143074 674590376 82556360 837601369 194240592 229125054 199874852 755704643 205393370 974348588 987155733 993559440 43442598 71604842 166842361 351063325 402263513 939683536 813224839 921400916 295178336 543859350 114823996 434355208 669730107 969876021 835604370 922736189 557199242 742235799 594246292 667306072 298220151 351549623 792087262 919652534 278849342 525696296 90676426 959807558 466197863 640734848 313518866 602812188 973618724 983066538 178809048 854888572 12866862 61732276 330903518 352761789 911497002 990379427 444980916 465187606 188820675 753619665 751871823 949068148 859272226 990827649 461227562 661536362 877329665 985531083 286559216 502538140 893927558 979497120 512516918 638670527 537300464 721045851 970863365 979814650 275031069 440652382 562723250 740494175 762407627 832910645 567894571 939655539 659948059 917310502 822900862 936031617 158465744 905155205 45012286 283172515 29470587 198590037 844644431 909259050 350487426 615338306 222928121 258757553 856231808 915539499 262675413 439244854 845958754 969402599 244581991 339849171 947429293 963395539 791490365 896000888 560571584 587603259 246544942 762823019 13489616 175010642 351692082 615423628 102281445 577356470 603746101 942118163 455777090 790177882 476660652 591703126 663466400 747753589 431849128 595481870 636191792 881261912 774734498 956906991 362624543 979352533 264032905 520906410 424679523 588524745 895763436 956108374 531904754 855778802 166276017 550945890 181129707 996034888 525978560 666273151 136812131 268103540 904099098 990616456 963567516 999988177 242899970 489578875 584935177 640519523 536039210 733247024 674458995 994885150 6838843 464933157 539446351 619454501 667618439 998268910 431466409 809415707 344859506 565825653 478261784 776640753 450709111 570150575 431006931 640951875 272810512 570542594 337855299 757758435 506993691 861469823 970476226 991936011 690540859 855861228 358481367 856320063 458098156 984774492 349307885 889168428 6687330 622882246 281329378 504950412 976184485 979034586 228648843 821558082 647671065 940608398 705363865 860122633 862078136 877933520 548522399 886591652 371476803 471339068 768454398 933683068 937643341 957430791 745643484 934539268 939210613 976663291 63188886 682252034 452677911 580630943 468613898 828741747 204111523 367150299 322731824 745250977 64998459 87663905 540328051 828487933 189790914 954421247 946006159 979629164 920944905 996671404 671344749 826072464 4226767 36587085 385918674 463532668 576547345 955662881 251436174 876637380 10225051 836719732 715147049 960691059 117154131 325390820 228662056 922164686 465495972 636435210 848453257 913840577 712302580 903301051 8574831 734144943 947446431 962294407 884487902 985118932 504623622 930296079 957546367 961105234 627337917 721364266 173504297 663066245 519472401 752151365 444236309 846981235 369573522 411741284 204401072 868458520 149037626 285061112 28380968 662547759 429773073 684979090 620360038 775034363 874233831 932561669 988186731 990391411 719220111 741938446 315289237 537299635 356861067 744490876 496470055 845383292 863477222 928314786 403785339 437100085 978192590 986230724 370411381 854954071 757297327 923074591 404864910 761780809 240945403 343848813 853172595 863779416 738396242 899798504 792303779 882728293 195678638 883203127 111279324 411568175 557204902 996583195 98778663 670318005 724934185 729597029 160465866 802214641 460395118 578884268 755758389 867072965 435056294 828043706 368816053 515754103 52058936 145048334 47668635 369098119 75119178 197617454 32944974 663753910 97836365 299498076 806762369 904623030 849570832 986826956 261127272 374422560 52042194 210402054 233635493 553190329 334661810 504629615 131875328 321939802 79991910 670976256 222736411 514572304 666865407 827723593 518803202 641822983 85155565 160982471 108770823 549870700 955754694 961710962 579313929 712110499 446277442 801379296 874712389 985765563 76443938 669331388 616819078 908306602 816294191 848251769 50735631 720172101 224964978 502513399 483091110 686684117 980747721 989831374 648311488 990571920 49234433 502054240 91082314 258741856 106165548 754497878 667670806 904855867 515011880 617116905 334454435 701930761 142305010 646506162 320255105 370957691 530468796 885235118 685123329 750706740 159788338 180294381 557075858 730550352 571134056 653789025 378469027 861501866 33396824 606600473 998467068 999942379 745956050 913934181 38797118 939818453 49100471 62188278 926821976 990208828 155174409 774131937 841601811 997010043 56538299 662863981 543548660 820567558 534922079 942513106 601925828 860877659 54551115 845713409 553911076 711437328 668398796 745327356 696439818 894743636 652441023 763863384 990913441 991383790 631372108 776627196 850958627 898532575 729773058 944683414 301154827 693027275 291489933 356586927 822960279 900765541 561065106 954981215 724766319 932832201 223023766 956994338 507759619 729577867 975420250 997640042 842977936 997999249 124214455 490923852 100806170 566129577 535261980 749595439 353360120 475363499 536926781 925039993 708639977 843480058 299672118 766520663 807661178 971468042 723198114 805619788 111091497 314409912 485172537 956729448 257769784 762300131 56956035 789834481 132575857 341440328 988569440 988617443 354420250 447820092 303473923 689745561 239057914 789376868 328103223 973640105 800298152 811207919 239517441 947700047 558054421 704896799 77916094 185197509 353682863 817860656 477624191 953400276 554509592 800510496 79140209 390707829 954083917 989026206 802012046 936208324 877996050 893102834 881945327 929383222 90204668 784391331 710139573 802619766 356231783 473610140 71949478 398427817 702443367 711744144 610460318 727905221 745825586 756243961 127637517 648888475 796703530 843983210 368453029 611073687 420566018 854448083 627778672 752917897 64052235 128369468 180763018 644414713 336670835 677793499 273678754 595518268 432895847 923620550 453878859 556053654 418367435 491291115 130958950 442410335 859267784 917981943 760117348 760669492 449120315 477334193 876253561 905821652 576609345 999628952 819432749 869779435 777097558 810063637 93758548 638641857 481295953 784046539 569375195 652211696 437129393 504732310 197969446 235641253 238246333 480388170 834894867 903446421 599332546 617301215 694220610 700390608 23128647 904349304 922974151 942536999 422180186 914913647 431997542 930598236 332383490 648433190 778956336 942183929 748455113 912182761 388955442 975758461 92698889 775217819 648163702 934673759 629684234 878926733 210658568 677190132 44232225 704650523 942313162 950877175 375245155 586764042 933371063 942250134 55026205 263194440 505232228 591918121 871293067 948085258 385001397 666515567 995572845 999551629 709612647 742469322 546988869 648693047 40971813 166590303 785729986 917365794 274918612 949605928 909742257 936628898 582725147 677751624 939318160 942663758 313762829 468506342 226590093 575349140 426650205 695379324 906080353 960366161 944940723 983400229 554300902 943216600 392091076 441235769 538479893 608800393 757380099 916125796 652900867 964620122 669664427 790470910 808813380 871495967 904809262 971776884 677789357 998643820 918088884 955588829 627775195 803822044 205119574 988341316 898177854 928349680 543121343 856689952 914267335 998235591 781222539 940455172 76446079 947323140 407998711 446171413 75273017 557505591 372541826 402258761 527654013 616319167 112346497 526093139 820295369 855424909 276358762 448902564 795244950 916716320 342346181 636578698 979410630 983809848 769220711 790047813 875541558 920346981 321873844 528745594 467910297 671369359 447615935 881166457 550161516 920994671 689083747 758517523 499976728 989810249 696221108 942750281 509962390 631760654 726980416 753766908 455778642 631235934 366707170 631555849 549415591 810504231 205214771 903778207 680604165 919928180 997231602 998950748 466458227 988207780 821343058 829198859 646782576 699750247 848411068 960648286 545581171 924053580 312797632 971118457 983945948 994114879 643035701 815854714 104873397 241712530 920426378 998719569 309040370 334385346 447336110 518253760 930470498 931766680 215489986 219565347 173817169 455194318 778827490 900327028 234424573 569729002 21030593 852720238 701870832 916739186 22326621 623258970 502698624 775441249 478783120 925563773 435905791 945169090 96236296 402407248 345383374 348425940 172700010 879357231 756542911 970712234 490989235 948582879 677873055 970311794 749957680 768353042 328386466 618237210 313163216 403466096 85430132 827148685 384720485 695574269 538002023 698786778 494352611 757420033 147632560 985011615 783238688 894996882 433617391 440266627 966617977 991153836 602404318 849964797 168618285 372236329 660189692 678947665 30353482 388264401 438243996 975806437 348530690 368848119 382045176 989381316 356041436 381164065 96449584 624709469 357359484 772188593 578210741 635779660 935730859 984173149 919752188 987073294 140838125 612920939 364478780 875462508 806641925 914683371 505507245 706157858 777976848 947001348 846147610 856206344 422312108 947888191 573434935 803577026 28331354 969860959 106426775 756904805 99513446 116868959 109235029 358388421 233316883 725498426 466119497 640819082 141003645 318664895 652409976 982223118 181099417 439319925 824963234 868926742 319951320 955147086 894142706 979944892 768441847 838466964 34856185 561070388 288559531 680604826 972859117 996440765 410605767 618544250 349758854 418833034 689363175 863561281 3120688 40604795 404230418 711049295 652703319 795109440 674413975 900008148 519258167 770209946 368981784 575587759 199210877 320865933 428733242 585161709 48634591 997696379 526515004 538176339 963732090 980434539 424217388 517576665 482065529 977221991 200051185 972045572 543195620 701536295 115233300 372125945 772126810 812428593 677002597 704476764 722530396 969294927 365591496 471864146 433129188 473544476 288442376 570328475 351346119 390049959 637613065 961019719 857953589 878452481 562309170 771564749 639182185 709968557 195590078 630346466 468728553 976231819 610843454 930813984 160437777 903800615 874583142 889615547 349466353 678753695 886565757 918683684 79606695 731090775 184535694 308298004 32661033 246712716 365545074 906240971 776689669 936236086 29544527 788789297 324378496 422429554 828445354 976114547 978879 618126970 858481424 907742622 820604908 920571799 838930297 945760004 234060108 945935389 402833353 528086653 220360624 857740313 355363784 380459453 320253118 812782976 148721693 966100735 987127752 988772930 730931171 803643091 662934137 817559222 110256257 656546444 598797804 733858649 104893089 431983948 262275021 940596258 57471249 196773299 280553638 372193555 654392153 953748078 905169252 909129805 902784519 972990581 4153066 955797803 180059573 319955769 581826295 727864932 756907023 865445275 249854861 252590933 369168225 412987888 439303431 749405990 635889121 952164187 884181118 953621791 451139761 951709232 119212346 280910819 128417524 746114603 5497091 906830474 216470056 226626317 478362372 593965452 67297944 166180277 212875197 323156776 168338641 431627331 357148472 789790604 117906482 242625534 919901413 929393951 56771392 772236591 513582531 821361203 92580478 563926986 253710764 673543234 808466643 961529546 763260100 994680450 301205676 817397910 246624909 914861702 708963611 899018568 728522225 832754098 257080062 780415045 207607703 721160898 19074818 640179366 145966645 978354261 61047850 217424199 700064761 781914481 282869562 837424866 592255077 851724244 566986363 742484183 529854314 623836232 853155541 866355803 487148651 600269088 430937645 820803021 360429364 962107774 654573478 920887989 756120982 894454732 727103957 747532475 759563413 903794045 104976625 156559687 672623577 850975217 644617073 909215024 798266247 931796384 241048625 781439215 289570057 656215287 898773754 934316819 348684771 551596012 436766420 782270713 538294248 940863547 541543852 933338460 440259052 996948920 617708672 717172149 688132318 893047752 672179545 759057533 652110612 963728436 292974144 928765927 556907921 710893887 528448484 971733793 810695263 894943652 882965382 948261849 833223151 939819532 574709575 763700184 849681475 867477054 927959644 944400611 170196891 351472033 274088321 569867990 618953618 629059515 232488023 313479571 836743465 861351914 190949336 318968322 688623568 787721400 126831753 180688738 348634277 765334993 681800306 833723079 358084672 979202212 533258511 627227493 712599988 713560069 436010824 547168861 454312239 728527199 274012469 776272232 63691044 696180996 215826915 749551802 675130463 845829057 669650972 688003368 433461284 775956531 169880891 395705128 114205134 834228883 293484662 456726087 393755029 616689234 976120911 999556219 107737884 614245258 209539842 292660742 491823273 621893618 596224572 771939405 558850909 968991509 183188698 571660538 883623800 892946911 810351492 868910768 889445670 896407089 894177394 984614496 19698147 985981284 459682372 588150592 31883769 224172333 267155814 651716152 906722586 923616448 3341904 400712225 398163442 672587268 253196921 273110056 880133850 965202963 96412069 389531546 468234845 905976558 700130755 777408605 428958996 772790268 927005387 952488453 594902455 745839535 63888601 565812625 505544662 626681323 594587428 980530054 34166472 661135682 44085923 755931595 143390064 424345191 508313661 650950603 171338181 192005432 174093761 608528136 50713274 748376139 513418718 665346493 979250158 989147736 948169282 976382383 653348998 671888380 216113008 905999274 822903768 987276416 319838647 500020572 129811013 621954105 294384391 441711089 552497774 682224524 189168844 317033867 92336775 776275104 658855653 932210286 257312078 986536171 666954257 947054827 391267906 555842420 628320070 723403990 740527535 775939895 648893738 841795154 183531230 339161375 179725932 600916827 786959315 958944045 791135073 922689522 216686655 259143350 364606732 450295965 716434170 951287909 574321123 817437788 420814386 674150233 306878483 308382225 392159478 960005793 492781836 811417866 142847215 261618199 151259594 996739329 920268491 969929580 256121874 515582879 736260969 795306636 848728347 921244126 708626915 917106034 404022802 460455409 12956958 181069239 841469494 901758247 143889647 330656013 294108227 907721287 450697224 809777529 851693128 862361935 6816785 820611534 199289502 292690593 329426595 854266016 380708419 589679814 408944254 479901510 596988333 925805600 859725973 984372580 353994263 739257023 849315084 978237227 454939058 853946898 722293880 827262142 703373082 935315128 569141222 784802638 227419292 710494434 584993372 747016190 935626550 936515102 644073099 652983993 827876253 940705687 893534245 943578048 199202920 253734498 373289157 747406460 310583937 982333801 462841523 794672690 179978388 345260207 450923340 730176450 772397636 962517168 226864355 856534958 899934724 922600147 106244758 676884425 362696099 642205772 791793910 935884066 516047724 900470561 632924236 795902853 386245360 693120721 466123050 687514238 258639799 395447580 85380675 945973957 955299240 956453718 909267163 986387358 373535507 925244642 18545913 872757074 445195006 572890024 271158347 378617455 364058514 713126350 596809741 714333379 890232583 968401085 624678897 989851766 795315005 869380456 577206580 874067119 308842543 455275728 356477034 693912739 901003472 905603005 223094041 428915908 171540204 821794738 444525194 842327487 263258281 387136556 340443163 842950606 622309244 802598050 24252963 271215871 391379547 894281931 335131361 442229344 6789258 964798173 606253140 743930427 571698669 720398486 848519657 931741854 158963544 802798697 997903098 998102639 713977825 882327644 522702581 639595813 569623870 897706819 262312269 353194622 568152691 749464556 502972099 965102609 838072535 842716363 65702245 519154936 761392756 848092878 901511016 918507116 163213437 870183113 425704542 529624680 237128036 434741783 701804961 858307144 876914416 906849483 964316958 992575914 340772362 479546396 745768581 954962614 499074302 995325380 771724541 861288188 273546586 428134941 510060131 696175269 570622028 811987502 214557568 728295730 836621261 943789436 998255758 999429810 77347705 238962934 275989376 703243183 473315123 734216467 121488032 417728291 741489969 831673323 293122604 850608831 189649990 878097627 600786608 972185616 361028379 652201119 395412526 480211489 32304255 127025025 124513122 946201947 843085125 905438001 232803753 582934916 379530449 852667622 940500075 974614988 14541465 362047144 933945696 948171850 569708002 716136713 633167375 699912269 302463095 462622039 275538107 995061309 81358239 362008739 211355301 243541374 998830636 999984554 625504777 957799861 80133058 756840985 542819766 614219659 447954237 979175976 732763568 965358762 627907287 912994870 147329543 265940958 183885483 590979044 751271789 958403031 528458264 905256097 874645991 965188027 121506860 668653355 787065032 888244208 814903581 861545673 533350555 923569490 321480839 402139206 576373241 899699683 207206608 485162924 936916189 978813907 636321382 872307701 960423499 976188216 586219018 726812199 784490399 802744112 427908121 466672057 308180163 925198370 418740002 845916044 349373739 860861437 198274764 535835014 472216583 968405926 771627385 959556254 986640340 987139814 854809111 998080248 98031158 404756989 553057449 833113948 360286237 566248450 72179767 595732209 322489109 808167030 699611230 829897647 706557594 766631292 726995349 842365325 206199703 588243107 670682985 952976535 377022695 785260467 983349418 996051469 859642500 987829154 611692979 611949248 826385029 939312258 167984719 392606468 974660945 990636638 499823756 593499883 349518030 911445107 141651372 676264084 456092776 474057517 249810521 805691894 252788085 899147104 107906780 676399083 627810089 710635910 631564138 697708339 217208723 493613252 69611366 479992929 906457904 970489975 447885084 702948500 825883713 903783898 435580349 750701631 371892940 932242835 91562237 416675073 630922312 977418058 667278473 900626253 20573802 40668675 778863189 802085594 691017159 707655339 304639394 569267919 623853834 885531392 881614728 956242012 793090835 942481705 989634385 996283042 247262413 440006434 568428225 948951359 524403244 542920175 265247958 948480529 797615309 991179756 891295835 940861924 462882314 945211561 228598530 863273571 186356337 671436026 347343674 534022824 913530761 959730597 933723361 974128178 828216150 862807758 926930648 993861561 201557949 408683013 527899769 890485389 929247362 976500005 672337656 804173542 68135685 571920348 685303036 976377142 884119746 983124761 774723760 970612712 722602878 750976966 30705465 408938772 961870629 997458016 159967115 212498724 21852306 576556028 648413252 823206195 959797710 986154626 689595412 734454200 638268388 673940643 238074506 468965364 160362355 893047482 416756280 450462918 547583258 589506670 13086107 172587939 803117766 993656879 753234784 935320215 859864648 962780334 584485875 638454652 544490125 722472955 599924423 979625702 333735972 444906541 411243073 918722009 555697813 878270000 46402572 194027786 293016565 312801394 682175368 814501318 788389215 912921316 228898393 667506547 278362326 953571520 296462420 600094640 448076426 450961181 708560234 805366401 886108801 995490514 168393520 408492941 363668594 532461908 111954761 516626893 8542747 523197437 22326571 245311908 298530182 966364464 744531315 883884509 25859047 348462558 981367735 993969544 403211880 653527800 76439979 314366142 651323003 691642288 142349324 630609307 126691591 499546375 481814712 675991008 613353300 977388416 317965277 440679995 139350328 889461331 60483157 696797222 624170505 986872029 337798014 908796956 205596757 471716111 604227830 792501023 656104616 681539584 154161294 844313326 620463497 985538097 899543857 922592518 301534782 709211631 235534357 778800593 480924434 921409731 142584412 467434630 899749174 953098029 11529917 788958927 979960612 988307663 833897604 848176873 331331150 559881953 175717153 251286418 105870386 176621226 44826352 957229673 52612929 848130941 246121912 522469505 200364308 798666482 609221189 829287485 962840709 967161000 853521270 937724402 65079959 747598196 678080174 888401965 490217505 678174264 310683297 986439343 284624498 284780835 724138891 849319407 153967271 772544847 927198087 977147881 976378112 984505330 48699334 281958636 778225034 923941611 667513045 676884457 820712481 833680824 297273031 338633070 267712359 834540283 369801924 589163180 975994603 986451091 147077284 678305402 261887871 380281998 612825204 635141465 400999490 428622957 682565146 898253907 349626803 789457180 113949127 201282052 345548930 646575013 320700999 559452840 867826008 879395802 197159150 228350671 596838146 906301439 31598082 271363952 867782844 935031607 588192113 623222122 592628541 934882163 238568965 304016980 523448446 570181884 271729411 628426886 862811399 947462971 106182015 523014091 715350569 915904150 272207437 490069894 527643865 933193997 950982904 961574041 527695160 650784725 636534536 673427226 601888675 979856832 534839599 813233875 504466507 614308641 66176908 675278282 859078551 943549997 771689445 876441437 790987253 994628870 965749917 990991243 194433168 548159044 176183812 962967366 22580576 398314294 449835567 912838215 173098311 735813978 18680636 821529483 401262775 649625229 985952121 989562142 833058279 869020599 363988211 463592035 918805431 992352417 981384492 992164249 359840763 970863321 783229847 923984876 719635359 883390264 979892970 985581952 108246545 552941712 437627463 561850053 689759063 907652237 352514160 578072383 715081958 913485976 483436136 843506349 677718387 680819332 486977240 756985949 128621596 238448151 940247675 990596028 87506633 449532785 523415298 555123562 230374525 233446475 74177243 611686553 282251470 608005824 771589043 899048992 51370100 451092284 164525083 361795026 606786515 931046171 351784006 621797891 125115683 580243470 510745253 650496976 776467986 788619776 151696669 604542824 730982347 875165885 713020041 866464862 809816568 896768292 358138383 372059377 833787673 911897090 799454612 992050021 170782148 528554791 100267447 414703179 201696246 512028563 763292551 868057739 478230697 877065715 248121608 855736252 472901180 516890399 324409484 853842110 737299486 969313814 423929688 600256938 880134516 922686390 409401391 839874007 172552706 948892914 98007888 685759889 950065038 967423308 639416257 778476146 262064910 551730658 585248348 978313111 448607540 875674411 329107697 680228967 24380811 398462605 577738049 879162510 872610354 962946586 338027031 441162293 382893417 411460725 399563830 711882887 744157400 925179149 363928289 405514551 848109657 980011878 358083619 863940456 83243864 465546721 551816034 631388187 577352475 803482648 332426147 360725000 111329794 898193513 177139390 291294804 992238009 997151280 447865831 916500716 216967862 756017746 641478213 717514457 896107109 938360850 562963604 885836759 612520219 622226642 47373168 746430176 466951178 602769667 575963850 762473540 845024409 905694632 96322199 729962022 124156197 248849520 783594083 928537806 915336187 982159397 217009514 341629619 636386483 957665796 444807324 880993744 910019521 951439292 957117316 962987873 82433688 955895407 13751897 174244109 4766063 609477213 401707361 973807282 752435538 840972285 563283110 741748600 265009563 744871087 973760588 995867496 465929191 469653190 570674824 987022910 843773635 940913002 658598615 741904903 458966456 776796567 848264684 931327576 818594074 941346050 222837378 606072175 74960416 652784442 778585570 944954881 167713161 641357663 193671018 943579344 889471020 904866859 938997222 940154052 908464053 943511121 353568765 524725251 574359075 945151367 721146975 814044847 159439223 528346948 585619502 663268351 345634588 399334445 138480672 750531149 156303331 547556596 129333848 693126143 158259875 953020071 757202363 876529411 156580292 409712514 727584026 753969150 214505889 452332617 580663770 777756115 412844008 946031624 625366385 972579148 587984776 960758382 738230109 788941102 331820087 682757578 631683511 728499014 554602363 998087742 525654729 700434296 260572589 439913550 327450923 623247250 234625645 628722194 523678130 984900054 194428022 807067149 802322142 823458184 717835436 720882015 360678091 819479480 160134645 234924797 147377353 951144000 652786507 653811876 390614779 924943178 202454479 775837162 674763394 736978406 479728990 573032966 690601424 963250014 727185462 790478149 91090495 509401436 402256306 556048380 701675168 847359993 333705671 697574908 922310019 980388588 255861412 325161995 562804174 681590075 514268720 936729863 881604351 983820551 851870908 941241278 992619084 993425552 840747576 894237387 525351173 688853403 197820621 893452380 819550191 972692028 899538733 958627600 402013737 574848126 608760396 960733832 148738540 200173994 323708583 963827556 200394644 835852529 275847521 940459931 51789918 750160543 659731550 952493680 482533501 790672428 548815575 864138657 796035925 878766653 386220034 510651657 546327247 986656203 392430932 565879594 146745819 455140914 484442086 616350992 188244879 367405671 81632578 932122835 146898430 805486310 836864293 888062303 624556249 812558805 661025740 663768942 848531969 908003579 523588254 571834376 563479090 898105368 377969023 712291245 86381798 831388285 540623836 727286232 983368328 999192964 189779112 504589007 693100854 878485690 510548894 534049956 992808520 998782450 502101780 780309441 858694191 994986566 506827784 705721634 813676020 823897265 54033508 302218707 875892222 891206636 13758619 724974478 62675080 864519117 39722334 275261234 333857655 376466004 209175002 646616914 770654694 965281129 392937861 970500606 336818086 646405321 834678208 966188618 201049318 937446787 666123715 854827251 677695586 874449146 907167729 918201604 678063469 981429196 572446563 967147317 880339697 909354687 38948308 323060369 860743918 920451230 87098936 406729465 580534814 816643190 685092388 996567157 859660624 884113963 806244112 822350538 463978630 628640691 2208216 307853512 939250941 950295011 618188558 755067114 472349927 742421391 252101877 524196414 706347139 778977702 550580329 616564354 382773462 743093692 385315938 936304165 128140010 338130890 544646054 875133885 966290750 975444536 896333322 931646362 716321153 928330549 731444200 990823799 171693035 894931000 884369408 940264016 412160250 557561423 99383753 844072068 318625782 819037437 356627390 624614778 249603417 480122121 442693494 649258199 5896050 702419894 782964839 892772405 286825512 837354191 486674643 523118625 688903742 966901099 193303640 980176129 366374968 538929040 147824109 903667238 768960032 824961287 21152455 169378261 210306762 755662770 76311028 524360892 701834614 946232811 467145575 951245896 99325368 532120415 862523519 922311351 763569749 807550392 904089651 983202199 891890269 921065639 149717519 534617869 931555549 961600148 936329494 941265285 248087224 656837072 891251132 926262309 118720226 685698359 220794464 385403664 710991298 883373479 357676731 726294609 636471163 875095342 467670919 796930150 426752979 836095873 573318327 834246482 127674860 894484030 615150577 875173249 457506120 636027643 699043738 849361910 441845866 820496211 593261863 780922293 429614728 800802472 237992598 911417178 136970984 956019608 687379506 747109247 834980805 915400473 755268636 807291198 605081608 914923647 531806429 573309374 995588788 995971236 303516163 544335807 148067145 546765003 404142290 938606482 600870334 881997977 148449834 614405048 330732095 384438874 430743597 596088193 186574519 280445040 987330368 987407829 428698040 884217217 761954156 964262934 648090793 915149636 406462997 914443254 637409322 976111895 334469792 796036249 459653200 533166230 754387637 926194413 284100276 675125695 636180791 641151126 55382850 583203676 14614737 514017719 464648118 863437251 397686421 907582544 149485037 952614017 473703040 596468720 418182199 466394099 268301296 789245187 865822929 940305393 308588353 322374625 168601947 515915490 276020925 482302408 181227858 446074331 483137852 820708288 564213140 964667071 298895823 676979948 463703041 742569045 841015680 896214290 967322047 971626416 76073641 604443823 152168935 390951399 827141337 955661082 856575954 863227363 286274336 800571555 275268161 564823713 192996298 911363973 414478025 693367757 798953995 855894624 933580966 958208437 943043919 961839484 570901824 959722041 384712947 686230309 881522038 931273190 165509634 331111748 101271904 417675882 689806024 987603353 458865534 926779826 845190986 966931745 321574524 975068454 154860036 474209714 421652625 852127077 779842290 940982001 137160585 648638378 514205998 841353259 300109639 484721984 878453009 943994146 151641483 485298600 851762840 922230782 816052494 974173048 257895544 485033570 107171460 611816283 42456115 315163765 390832722 901365236 888031088 993143179 663352184 794879701 700805547 701051058 346471015 350081218 274485991 465804908 985422369 993300228 154282468 195171541 67403382 266780392 214276305 743568565 827562123 953772600 22075862 730097239 150603462 310767193 484691796 862687328 934167060 995410404 360204581 676399227 918612915 960961738 230079271 470871317 408401934 479210128 142564305 799823938 67600761 620733487 223452573 891357848 414857745 506752129 774530910 961382446 748790817 778582647 940871698 964640947 31194294 715430749 99678983 996324813 610785668 745600412 262843191 780466890 756990302 824758176 210762924 501914387 386829321 924390567 774040758 851553777 123767635 722510361 749262423 779919871 659417375 699797355 160120964 841254606 294246288 930487289 632686096 781829667 186077875 805795392 458946653 504275767 261684444 715227035 477230875 826813792 589459696 949384331 485318453 959933186 92451649 502541462 326541565 867801759 181711501 755022256 625502253 777017134 114648695 456236994 654223654 849005377 896714077 949382865 705042672 885531748 904664867 994894154 590585542 914939761 173248183 877977268 683623417 717400246 624483459 771921782 140524337 260982172 135339996 713223971 578234175 757303431 709353516 898818555 799326407 973351299 324490345 342912713 144952628 689047572 285186089 544556307 488308925 809843850 605450335 793433654 484866971 701281225 138999545 955057495 316147626 559653309 89312227 831681386 830942806 853870101 132996117 459998625 322926587 423643975 42659353 601085001 694892877 915878268 373432726 611632093 136443721 886772561 380167385 515394179 484960595 703224898 859032806 953676521 223230468 348186135 103171506 950470348 16414530 194884017 284474599 433283860 505725121 751780857 339770931 446162176 785671997 838151968 506492747 721417149 821450246 836692138 594400201 821121116 811334034 926673389 926408797 933750411 170336970 817206931 430035019 552682250 897573825 899789388 917234227 925550794 871694069 940048823 658225830 888781700 750997943 792480732 642902424 659167868 359620810 885216364 350477527 465451973 209223211 251934691 125137777 411284379 67632010 255007439 647996312 725515684 774616228 866078046 368320752 409014879 633471794 972653584 47282895 585526221 792245040 842995554 517154307 737289481 969057611 993904432 70879068 816651356 997502505 998124850 423340257 949458963 775939568 877267250 574904927 801200920 966438664 983053149 406273426 488209283 795944238 912528173 520451575 696112887 174928126 391942940 633755776 986161686 511605757 549084475 405704410 743678175 49381336 95407636 345626702 541065805 407317068 788218495 334643900 944619991 110166540 443818121 79010175 288298725 430414201 469194759 76771348 716749787 250652816 725625084 888293453 927648979 294176602 410294589 96333514 863558202 105035851 751231330 855836571 889680812 312144278 471671875 410164086 410302758 546611253 860181898 185945873 783656688 619237760 990040714 831505490 900707541 884331901 929076335 723163241 826628315 742605866 869839233 836959993 972397494 40345319 147929894 915786565 990547142 591693630 639411602 992594396 997903607 663929755 810800107 100920521 635666698 797615162 818349226 929151190 970647220 127539610 771641238 586114810 776313293 67828402 740070441 904962433 970574043 542161143 595740803 746014548 753545687 301849721 994221932 13019336 253396818 593985866 667291889 394537667 598580268 969370405 972778543 596994529 831663779 49109409 742176520 587626208 810860132 680803885 936265764 483129011 975164899 200779776 848179113 894060344 972146422 330310771 839900714 451417011 708039203 403871406 937292637 216227091 934185251 483449564 605163065 814311448 954096125 18542931 226114154 16186603 842321790 908999501 993977507 111191080 475791763 889625006 979561810 389646442 570374308 506557394 642486773 153273896 437927111 886097854 932150091 348010640 385236488 481502347 651078602 756293061 793610559 682942934 785287611 310287670 918267147 698651901 885954465 121507597 386141930 432567047 698683454 989702524 996524854 206485307 763925299 320841769 405281099 961631192 990849433 189058974 304476390 553829395 917996639 433994526 738670713 366432273 627947383 598347884 682986163 119796233 455103050 892597498 917959057 226404910 890562401 183360385 722541915 347103464 652899691 706684516 782348727 990335322 997618427 591937452 852074917 615904066 931416414 693403433 831542659 46413179 538079998 49889121 610349697 250217985 354970217 60787060 709948712 817202819 833156510 313656364 758546570 4820705 529892002 601617448 607584392 272868271 733094909 48628827 99612995 18555626 955444447 561969210 596758210 478517523 564951624 783819012 862721154 12401745 215062169 175480209 235862525 739540933 823293827 680807265 861373040 923573095 948381319 565651360 745406537 731727872 835287991 783743281 988813896 547588134 994725021 430423034 820309136 88109321 397557800 333463462 514132973 88441373 757315519 940725213 981546170 58201850 216191007 562725693 730235969 594572599 924732713 955203070 978027631 836084672 958125761 771960870 915895781 630346640 640880915 998256493 999583211 621492753 988633540 619538937 669828957 696200847 746058105 640452889 732021188 292954917 611792990 219506644 471870618 113536749 189049574 716433249 751326134 195514777 243317372 962979337 984269023 390988104 434166850 675481414 938774226 948563640 978816788 87683122 922143733 180708737 587534501 930909922 933532972 858686915 917904943 993437811 994241127 439718289 762800303 1635316 319376312 737310223 837518275 658955809 840717729 374635942 984671401 281064676 607708784 155219768 334806694 299476268 803750697 264167084 293440333 29331481 886605190 8896371 171817301 172820960 414124649 2979074 845841646 321728376 637504663 558029419 582579742 618914848 921008237 812084939 918696243 145637301 473837345 627005423 760015084 625652435 653036044 599256997 696765965 916412210 933105311 373102435 914647195 96279198 398478970 357376899 855303734 535272400 930235785 220598828 527181359 721875149 973947889 597199128 996704266 250027100 762274452 643674344 774781716 13270112 681801888 687049416 847806425 903022958 961823959 510459056 942152362 771564725 936609676 457979985 761623201 397899917 916972588 996554182 998033493 708461359 756357414 807852455 911305854 32866713 259666536 976932285 997592129 84602136 622079237 875717001 953443198 905197303 956254197 557493176 641257165 678364948 862787688 921029168 995659919 397809383 429996628 575614405 835072752 916192529 963130257 80352186 865910276 888460740 948758966 636631532 866417685 805564825 941916875 462994126 576955106 873506982 918115888 828175418 973210559 394197123 758068214 584265144 707460701 468787852 691949667 31558303 738639531 394455297 960652437 912280620 926986849 152427394 913235321 62255880 979332522 665007332 785665197 892945241 908194803 895743425 933326120 11586662 595956776 284434283 828780803 723167158 942034557 158389896 869591997 975220931 997209532 187116189 235404672 84125882 558329735 69075057 815480927 710323074 771668961 936722465 941191820 609192156 651505190 262629344 771246266 420297936 681334127 265788782 347081093 17829524 742684738 826032443 919069195 48333832 244692782 678135703 821134837 959642901 972386021 977015668 995158231 568804770 855053030 297279051 384904350 504389506 829623419 919505594 972666556 970864145 982959397 439172672 487806020 487145153 712436229 783077434 970572196 787972438 985322960 771492503 792905282 853404507 908847509 248215960 902251533 117199909 380928478 647299823 896174440 178915608 626003013 602049607 816854815 157875479 790133396 749232430 997717123 666227507 970478956 275584372 926890106 227037416 969777502 40924579 775109255 640749413 784072592 25195081 835905145 294848299 895079401 523506455 642097158 951713436 974320758 935794800 986786072 208559010 699609457 589906268 730847646 507917982 510292644 225025142 875268672 694745844 990828205 449284724 544518467 533317145 710214049 896814392 944726346 757696845 917812795 237643596 822569870 176790327 789194130 617404700 641322002 962876733 971112670 599519114 994682038 953853962 963180009 468499467 958496532 316868093 473310098 948526923 950224813 39820592 588770080 483435617 585690684 426792620 601460530 40882866 610859770 41771985 208563844 164049076 485659008 284751042 398731372 390421463 702721937 216528640 768559398 828074889 942751933 689725740 829016675 698579775 760278094 344036750 594796285 202813160 434964787 905058084 987029717 329787893 941613431 670989230 857681324 940960866 977743080 115624443 199851704 753074691 914797948 473020617 682947266 334737266 991058251 949631574 960892493 411902098 617535200 928875378 961521443 846749411 885240308 349008669 991131085 874220615 915063972 61875808 855480446 266365322 868118113 313563448 552833636 603828864 658581857 203699703 633567689 219130482 963119362 412072700 665926260 194265295 530687425 722361018 826419850 178999010 553867375 638410592 977341017 919891037 988251377 942386165 947636484 551412356 942691155 143724036 506437549 985459181 991557430 853032719 858228764 197123621 367788793 827419847 973932132 860230367 882071900 909559628 985820342 318235710 563229283 154240893 209453668 374524252 832537816 250297162 681778511 396908379 916655829 627831077 714816439 256197689 574479933 780160880 870373545 786359036 892902108 857218904 956805952 988069734 999792338 583811702 653146685 529420103 855727410 625138857 980191061 143655809 210207369 843727320 903670616 858027880 987295575 844718600 983739727 606639237 740594964 195037338 401275750 366674229 738147166 394101613 672109767 251356779 663545094 131573225 759398788 906528440 945406142 233890837 323775159 170062149 614646009 56047255 555893171 239199899 493046326 531492832 940905104 764072689 990196647 988784639 991129196 427644967 780916233 926833071 965814041 679584030 685219689 97603547 778213425 740041966 844264521 462581065 575300297 160021699 903946272 41608770 845945742 527430500 602515638 415794553 735078908 301345931 630067827 244222744 390209620 330198280 351405681 797222825 976637999 553345160 736047300 80914108 264105308 324727095 385811256 179445680 787104823 509254756 564010682 274443438 598559909 37189156 459648543 996366455 996391821 700917285 760520806 837094415 988490143 625013151 732312099 340687277 750862522 285488403 896274444 71501458 574612006 340550442 652422274 953790220 956802293 147472757 971549760 412754769 748641876 591817932 640569504 917840833 921795830 301460286 727954082 97538231 269946757 666600408 769862459 857514584 861649739 264184700 640497786 694599645 731249375 802569407 809758296 490306831 759329429 2096010 741190954 321572746 474326450 602838072 771981393 216142986 710180571 168957183 548047048 347088852 667147797 388033932 770116453 431959252 880445303 593836040 728413799 578240788 871179618 241238581 742147327 530656749 734253194 475340890 796068441 947533985 967383143 808412547 932935031 878317231 890948632 512692177 581737039 782982749 915051998 211274785 419081595 667371900 880977194 665923701 883211928 93627068 244424746 647112585 749552436 20054774 37939890 596744052 955218048 534716662 676328362 748705314 788424533 90616138 835116333 963843560 970142118 630405955 649580182 285194923 910982244 771208571 844476480 604584631 708723370 848207321 894698074 364219269 533078910 701683199 968728360 748340267 951130928 442008610 512751024 936865 157102689 940719706 951445175 203349097 945626837 454755277 681332860 248985780 309033196 359328298 712370328 219528670 262250344 209042543 587931891 281241875 689269790 179988207 259604029 872334966 940695134 315598262 763999442 761207294 813914328 673317975 805197205 6831035 61201331 402507029 421067557 826813985 892576147 194694417 990793768 655461835 706075240 640545943 646889236 789150553 994660122 128124431 444045311 155125206 223777638 29582372 246784785 90914376 854023923 785186839 981951158 764186609 953611817 380370138 781142138 200117292 545500110 49634649 278281086 537613818 806747303 887869168 980377083 522099805 530717361 118852733 174993559 346483293 771599505 894437663 931861116 506137713 846755907 334903623 538381064 696018104 753129761 278296711 857292432 931913849 989175305 822705419 879056744 212952095 303692347 606539253 626884030 517979399 745375964 790675832 978022558 218444333 826885678 288514968 697195239 340926400 613714684 414399482 494380891 318954974 615689848 572610663 825640324 154505948 295225747 660787524 890469468 161595931 703624039 522242234 643469514 163122608 368272123 320675314 349862133 879066710 906760645 279098726 976602150 245587310 259332084 528390066 621185950 759855320 972030953 662152207 762108654 397205106 793850882 733327300 945200897 128583942 841915478 881028339 918274002 854278094 859907856 811548893 992453921 830398004 867405006 49241945 776016571 951686989 998963350 940917852 982215583 548670181 814682263 399558262 851636473 462451402 976855655 927756781 948692193 876995539 950745476 20527275 406412641 344958672 917364924 435842507 991958703 246908558 910824037 575634580 979606664 2055740 518382374 137808558 840820039 361074250 807467015 662053780 786710963 620435999 700195192 371990539 963907320 712466730 957641606 121411094 157851345 386631902 906274388 596844591 601827929 726292982 865222686 273776433 766605291 462665842 820019056 771136171 931364563 761457085 885436354 341294739 584491916 527164808 686345777 277701011 348566382 276074518 473469885 249612804 596322080 524858312 858549321 841761964 988897844 148473797 383697408 521085808 957935378 969460654 992170152 95286432 936463686 117155790 324402706 998419638 998970566 754249738 861967389 564763044 923552096 530453818 762791744 31040524 182692811 212947333 640529607 246116510 445353555 604907626 694747116 438891697 799651973 218465860 435801065 705754755 954130023 560709818 816591730 598233976 884563916 262388207 459303469 781947165 959239506 634145798 669836734 429989636 730929071 966124180 994769254 206728974 827329763 521110092 912532176 872547056 924636984 480484498 481107968 426417882 766369353 347408610 391081083 67880490 596722211 612762731 853565499 122199731 612706242 715517421 783078469 239237804 858286918 128229373 218801795 562059977 688589842 748017827 919162789 471050423 721750457 259601207 365670127 37379315 418522868 253423842 877891473 223663718 321846908 422176631 636641193 174909722 288601133 514250220 557082404 517573375 795702239 157599652 300568077 924515679 935849844 872625726 968120044 994507186 996350337 670902494 941599601 393067406 613748049 870629738 939784157 594453522 697744438 266787661 413496492 834435998 899382259 843363189 971838525 444358361 648615479 965834720 969728525 473368704 921846508 54278659 432735217 359441942 498562056 983142281 998960626 860489426 950799860 341396679 901211202 976392817 985705218 434999933 472915166 188933353 423181467 949890444 950163939 842382462 989593475 936214550 971549726 825077132 910447850 330520259 950806404 160793367 922866061 68543408 569702686 314443954 817332362 391405812 739245147 976757382 979022365 879759535 991598174 992496181 999774414 21055144 706593650 678088514 755796159 714230052 773393476 443642999 788350979 779756677 792513152 869976962 920701196 593592736 745759088 718680399 869700222 921834223 987323381 652403318 696941135 599466404 794685544 206158084 795678927 890705043 991538269 961731542 989421766 237082604 748881790 132345982 579018691 749757161 946357043 802138828 874289628 981547946 991289713 77272863 882944942 896546269 905536124 774097313 789650717 615953765 955735299 358829043 762109774 67722950 210398058 885106001 943974342 156148235 973131802 856514156 865178166 722833706 770313821 350917290 512278400 467531044 975815069 693429150 774871318 267589245 272275985 954974838 971857110 16788734 242369651 475413748 562131205 659111789 840749200 485669037 651417279 137836028 140684322 601979075 893326905 316817973 548574864 517295743 671991799 773480008 923738517 439890114 917064287 882548229 886933281 28236932 845534968 15447929 131816241 13464819 228899451 725714414 911055056 37682097 140345438 381964621 684444136 748915692 952981892 583467674 738386325 444198867 463937835 914226938 959883025 282486732 903082987 417733408 807088430 820623852 992896031 679120371 861604205 100989073 814053229 22999597 914872523 241836052 628022312 940775233 956043642 229158247 854370969 142633155 158756114 410082238 479963483 197996090 352906608 954547322 975870971 675251066 758386854 321579401 431609023 541083964 581742891 204615369 642355255 251474379 369950862 886151443 975153743 280174437 384107417 757428447 952525594 509671994 606722933 941545568 951526859 490052835 503273609 785716651 908366427 835893988 946515911 825929748 920749354 714929887 757370318 535136551 747433489 567666544 950246310 831163703 929116833 576477406 649156586 376534815 810102156 650081295 943729275 190525215 823426579 200405927 792431937 891190352 944461103 978182312 991109385 639888105 847043991 788215830 983454253 827721371 862164456 690828286 797556486 650177751 813636081 663428826 932953860 357378618 890262642 218154013 342940237 899348745 932543809 542177085 564556279 161621696 359659457 900024677 943304957 889850059 994757801 172490631 616483751 717453428 760989652 78683443 686537015 241723738 926425681 796977294 963188331 93730618 778965450 642328617 654520432 216730964 931881181 616590064 994728517 305170908 472527543 117013414 147770763 714344363 908809891 205492669 734248514 847568892 995468443 26234418 75703298 927191144 932185288 101881408 751825493 853882197 875332721 347122028 880482953 223714582 798730295 929592471 964748744 796871646 922578850 970636599 995322624 25181041 537999262 355710223 803732411 677395373 677675452 705883953 822530509 381527648 644076233 143310125 235605560 372748887 719714689 283479051 419795125 121366179 227878810 268569756 620569631 77400352 653880914 512922531 519518922 205950567 212646308 472150809 539673520 536330140 757743772 203505389 444257337 115723756 444838520 333177402 595108246 230769185 783051065 507849883 606983909 525315106 982364225 136599530 502891606 875265818 876186758 916978641 957759836 648360995 802765814 414622230 622856896 18111965 330192792 403303831 795640489 171916242 366436902 119875188 271850451 133788168 417631365 419139838 551206939 987515424 996851607 111096019 525351411 600183087 726459172 992687930 999174621 361260544 876933454 763892385 850828720 271139517 450321566 228927801 623690344 209426705 526654501 997786525 999423851 840523618 970580526 757748443 758898770 509282627 760929549 547932799 913190405 759764186 854524334 467049227 979091340 893836324 950802674 466830729 911036663 918476613 930112291 584050666 796204939 483487300 735737458 400135553 816303531 423784480 594517671 660766316 976480829 562286935 827864949 911563318 930184396 549880893 950863579 709224675 961692546 711715600 999077421 382700378 703837709 575558600 684532663 952492634 953786471 719478447 954985777 780404513 806847138 488940728 656739499 501791608 781636258 499083870 830561457 819957527 860121225 304007142 699054625 409860836 532203644 326930261 721981355 740761706 923011488 956508362 999779973 546948325 829475434 368774491 674466422 583489518 587614978 990657161 998375336 690643274 855854270 125065977 613880098 341081638 402204734 400579417 765745091 301377267 499021538 929829102 993886519 505982938 739461105 100122255 176620124 286522076 750025125 117238674 308307982 995920390 997946218 528440072 728487360 84875050 93032424 877942039 943273778 88871792 331018696 9220702 178602382 753755089 800018225 647934794 690000668 528820330 842168343 190289599 799845431 88823230 697495725 768618914 850839458 814752610 902142218 27623424 753361196 460029536 772533628 995876519 999588424 484770712 566946221 346889591 840146076 751778978 990644654 319407250 628683745 74240248 845278324 64537696 611250700 11166803 981790026 262495677 934345396 507964050 703826718 875354641 921876445 115909582 472111618 460883513 653737089 969340895 982072200 944761367 963765955 180700049 703055853 825535265 866233487 677407794 934859346 470909972 764283350 991975093 999401729 748095308 994369385 259619417 830222930 349650193 351218260 309736170 354707395 679484746 705407608 630761545 951600651 32636937 439707828 418185887 610564297 98377890 261978070 8072003 474233832 438841879 520616067 354447218 873865404 550364655 847584782 760423224 990441727 154441345 258645254 178862830 978793802 848473143 985065044 302123475 681151896 214844123 229849316 523953179 743143732 13223433 323243153 201041885 921086598 939098992 981831094 736508058 899058830 215654792 494035985 982133727 992748856 139408979 466114729 270811969 431450956 959577315 973420591 68036062 242132358 365935174 417906034 633006210 730730382 697779527 833251295 338768927 995742513 843629790 923542227 883619979 884967882 31584274 131416509 793411162 900397023 725908051 900580744 605174184 774982953 826005703 960739041 534832094 595952500 320835378 720955794 287578456 464825005 82016583 735907823 744728204 895220377 915718073 924863209 86937151 263514715 72730407 479752718 11421533 664471783 989905021 996652649 689604265 942177883 839100344 992222064 837272754 968931955 271383610 773296960 297262516 543502497 185638347 218492755 282289832 538226742 678089762 794133556 164763331 616109910 492531725 824922354 960788655 985732284 167147524 615453848 736335123 758689513 143093792 723073879 719436580 893074094 287049546 911115398 202350881 414732156 591045145 729901023 90394241 243071641 454578336 909058240 691931114 795251086 615175079 889289226 686154673 938187181 840094807 979334702 140497112 667039882 186987456 992872663 617059316 840281271 53061542 466469394 242488673 866174674 277103112 668267001 927515483 996354929 290581124 508393567 222766274 423854680 263661135 991216460 872918690 873983755 355589419 475334014 776839196 807887126 11793106 813923949 14712205 299399654 301531369 603838875 674238497 865529537 341719403 601844971 467533366 934049137 438811139 740584393 175367959 811933381 586785873 596764671 870248051 899232062 58261732 477674465 653189244 951255459 21278307 793983069 611098524 964733239 186936594 886332034 133931307 792294141 469583311 800557759 120064547 683764799 261415672 736133512 961125948 966041066 23737729 91255037 844073945 967585104 425907788 600436619 234282011 663503987 98111569 585708595 783943269 990222437 797849963 874860797 130603665 486538228 967039562 992562668 954045106 959189833 615245847 946744113 297082887 576850346 67392320 627339355 405234144 793457390 351850800 483774824 693205746 739364250 638108137 643145984 626149207 646379693 413220415 589663719 880715032 940264613 275934063 833282233 874326299 988094217 501941047 590399065 517923558 557680601 203265164 310571260 395066904 961843775 824456891 904415406 292467716 373286870 288426773 471558648 596175897 699269842 209905143 212576932 979923005 981938702 73025904 879363151 508381028 955463736 680554935 838597980 678959659 832949111 990909219 995676211 618379463 904528680 620273842 895357670 821359512 886622820 562143950 818845615 115563255 974774577 814606229 870902006 263610247 420271463 120722238 885677769 496434344 528995946 249966202 811154745 825966364 860755540 13037736 247201572 762795255 893728757 109327963 393741101 235448138 353025834 823972796 969829931 127524079 592296990 620001244 853217195 346685262 514329921 443525656 446328081 291356406 984268299 59886992 698699364 590231640 930309225 670117886 793142814 883060474 926568955 498608360 952533059 914775726 974281038 555762189 727520639 460190474 838176461 67903752 519743641 637764855 648050553 976152698 982198210 816333798 991702979 318683342 972046587 877783185 984345669 262473197 581519635 787311766 849187512 358092274 750819337 507697466 626580429 965730285 966930672 60095034 479346495 838081906 964964998 80121232 172372204 376943211 434826332 670917647 759014476 157463152 949841883 78620459 957584702 750223973 880198191 621787044 660547223 951167021 999086450 489603486 852732747 313691452 978423008 107725161 399294195 494355924 495042377 349495257 946565668 956077793 969698184 839106785 944313064 60905740 567476633 829514202 947725535 858581647 955030240 374872620 666454192 689856219 712875806 758048070 885657100 534509408 757623010 585810746 720726002 555305130 793121870 886689988 934266970 95357084 307242589 79597405 729569309 997294121 997502415 646015645 913259628 911947248 964380573 449694403 815776148 219938115 687057663 861281267 929399687 923933958 967101039 754767539 997676918 242012692 976963397 198175760 805471764 687613333 760986930 894435911 916568397 512196018 864277046 613489255 854925735 640958023 774389597 520495190 686236018 891343695 988822611 669764286 886970320 769861208 827061615 410356721 690903869 72176421 605176822 861508851 981935170 967339514 974991390 100859463 391479088 978201873 998044333 659359357 886329869 964122577 994588678 52605014 662582121 903003305 918374044 299800375 955669207 332921723 749626156 51062242 417471515 154884945 366299773 652816982 770359918 128591701 233604704 78516677 133328076 962958181 993848190 108692119 945282002 799934756 843864002 877240542 914471521 980086226 995196706 261256666 370698976 761684893 845400400 125147078 494171369 957611752 962432951 327084615 658887581 537416509 727477244 944349118 980151688 183427785 932749007 527401692 858085660 198289874 578923396 293039925 584410382 251202449 626932292 610018442 872764934 708887033 951141213 645449477 655616077 402953778 784841916 952791106 972440266 131290791 689078515 722708518 984062648 642989779 680050540 547861733 588619903 203038484 747790431 997288651 999109775 717718767 806518928 662500007 952443281 442592228 499572911 490267372 610626318 806459737 807609940 769418430 987544127 590222232 903550563 669205527 815527474 60231560 382401718 820793354 852230469 49890870 69589517 370256238 441176213 834170693 834401999 239745787 797220737 382481168 833540268 265199764 487922226 208041191 862593239 233059171 682611524 551723712 804309244 370290090 594771840 376180577 770663491 848416202 883472365 379444432 838771286 552993628 729266790 571200602 806421281 959373995 961195383 299963664 657109275 798545910 915085492 30431565 233707626 345243049 439239746 38565510 929463117 63418476 222391652 309541707 577823879 492537266 787898516 9255106 618787587 584142302 729928256 535207767 636093170 754043172 869444516 680398174 853099325 873544842 912951590 871471934 913761514 548861043 971839832 583869324 924872805 232017221 566197345 74816714 820160003 330181648 752122000 725027283 745427475 546417819 702518707 889654686 941482400 918340926 958624080 899989547 915441066 890343582 991771407 325425171 948295212 433113071 725347081 12941685 438077925 280621623 512711148 64052793 701724059 47554996 132192577 276363938 785991517 772967854 841844383 894108178 935908144 330925481 508269802 3755637 892549441 805305084 932887162 817095073 873098526 522481844 871365948 157866272 232793397 757143801 779870329 706506687 909306483 842576922 881202644 666926114 787951945 779750481 868240881 186215850 301404419 406932650 701036680 155031750 631922778 612536648 840814981 896937772 952110195 29067739 100475076 456816949 837380489 451396342 524104334 638896255 795140234 182376175 472608029 301012415 936088709 342345053 871802319 155483587 504891567 205992964 420268316 704771784 920921617 877223702 889244370 520292883 796026316 897121783 963926104 404249011 510667063 476160171 479575875 822962215 839304627 61325668 871470617 464846444 801876994 995008944 999719741 762332094 839216987 164236346 838775809 300677428 923961403 558678236 946810788 2459712 592170840 889296328 937485447 984253977 993194482 702603798 780926002 377466833 734860652 473123525 653120013 116885178 319873192 34250294 322511463 529857253 996338121 200400690 774160749 449112262 609364343 786571059 922575354 524615042 690119623 817505712 823047976 683845041 929728798 47323061 281321978 919959324 938633955 338984429 791098738 765160454 860703074 726239193 996786031 82748822 755264689 603222179 984176508 451478319 491084641 911234498 952070698 233339175 396656300 288041218 288873217 574997686 651214055 863642937 993107345 13804334 372444584 797270992 838161908 689015197 955618281 900238295 910185989 307147191 715206804 7233032 901259298 951505546 952764995 476105701 517335635 649708128 709627190 497308977 692731686 966552934 970092383 329583099 911732687 862419875 901444809 832099791 898224394 897607596 917002065 461023534 910284158 75766141 323536190 358605369 384348746 723837927 725218699 846912009 938207758 944695668 978540005 762784732 775592232 254748801 755319564 917402357 920294272 591770062 912108194 895686196 952911184 249114995 677730405 971003779 985519418 238916696 437837039 545539975 688034757 951744957 956139618 576670486 579813549 641135786 853933080 945295128 999638204 864247379 882432295 63544296 863771132 505575997 586722316 544118308 620837488 865386335 896405026 609872141 966717223 876103045 901552958 391327746 649341215 643107600 755686300 956612487 977300261 345443222 682492912 922152298 930597803 109647571 191722130 673345886 992426198 10608106 962854336 235556497 436710028 880747645 890458818 794027351 906296281 938331884 972750967 242996179 474460711 416417694 974956206 837917500 950637075 109137322 613308260 204094565 614142854 8916640 777427099 15910615 510375982 896523722 909451969 150031202 286153751 217728234 330625191 437992045 564422947 705840382 904877541 496908800 637146898 645184698 845612145 537603338 774587764 718426920 824797943 967674114 979690286 128490220 149365996 460782211 778953918 953619725 988675372 370514960 555251441 138459212 653948422 844368666 889044876 14591728 321904430 719993358 741464011 324715752 786729261 595483781 962330251 785274757 847608315 359952523 405701677 25326513 729139203 144148391 538662871 515815928 584201345 917523744 943265352 897760936 971572277 984717100 985243616 161630656 352376846 267751524 836486483 789979569 895708849 755405188 943584250 669071595 756155449 191810841 460441676 895463563 982945059 927018556 967523312 797131675 862621240 729340953 738892418 463605157 709387871 581352042 618004106 173132314 453441161 323372377 750752154 715098018 917874049 853982286 882387874 316258089 890521889 892182931 970585874 639956131 749771919 94829332 834935779 329120798 813039237 139154911 529795664 143044698 825102571 171123232 335976805 359335064 581142285 387383988 601371143 389101983 827559338 517041986 586569990 522535283 779037047 190255142 486701758 970509099 992712160 67535591 300667025 140989264 918537208 779651692 958958013 117466410 415861866 350042340 565185203 956606503 999831547 517581048 771784078 269902485 600510842 973526541 980564444 461458936 852278179 587627127 845657195 169443119 397125852 162524307 495841677 66375392 316854742 395136691 893867460 339280586 567773120 326483386 478796571 732368497 828155533 651783834 822464821 958925513 967828891 421669127 542862628 947777734 988468207 805587504 843978926 218470172 471784747 627315557 942936912 944032763 962626978 583859431 969236597 650463704 895981238 802303078 842493356 218092872 822251540 605353476 919977004 449644865 552938692 667383732 888235801 821458059 870015739 245013514 300075296 941643255 953373958 662481109 866234194 212614811 633403512 219157143 681727772 520206526 535770032 794456904 802069759 124191866 836636787 799143051 926799207 330420689 420602012 746371344 837028517 362517217 844825812 393421219 614588039 244466767 880649185 720082524 888259589 544088173 864284512 18109927 691559579 443609529 539024263 446020958 830567644 154985896 239835176 995953486 996794185 262070899 920935791 101048931 675931427 672054616 760230642 898609711 930280559 713612614 777987698 415869925 635918396 478013681 924569019 222262892 901758218 582415374 936190076 76793103 438992297 600709592 726407653 448027061 451160535 778204818 842499776 647361357 887617963 633820452 906988012 923681746 949583666 328549394 595668681 8608163 169085344 784652292 788929529 96522914 495727512 291750760 541890370 986613020 998517567 762717564 792860156 958806957 993052046 499287451 968239914 702376265 949540539 725018143 989181417 228420702 343822712 963646844 975008535 830163939 867329873 883513264 988285400 434284816 615929609 399753631 987368773 658701511 913029669 485671193 856801273 233799017 778909732 217626864 481105762 268389282 497621769 330966026 713814995 41809302 602022227 586423133 747899659 317592306 977688643 763488834 836750777 365248385 556741799 539216546 722839302 773599432 873332514 796473556 928151937 173273571 784171162 811486089 897366607 211570625 911752899 341221086 824640709 371175876 838793865 581720863 612467132 76904611 590474998 202785476 877646310 652876662 909217640 591644849 872464148 539852335 816627030 136255752 456104037 994221930 999347830 403268845 970666853 883878059 917162190 543565811 590631623 110352754 755307119 348935627 651588020 152387280 830726618 700145318 715839885 182678219 299456506 544945338 764814403 706875815 787307269 97711829 473300796 911479932 949974448 8574258 911362661 752703524 870220568 160291146 260722173 922751673 961265921 211105116 300956939 411681615 645429521 295569572 614143920 694771942 936769180 862666118 865955791 902932106 972865177 968668893 970235888 185538951 859961532 618026818 774369317 753626211 866600460 934102420 952090934 551083781 586790185 63835907 741498545 77117694 192216318 913237240 991102573 524786432 628751912 621157987 888500085 735507884 975711508 536355766 818721763 267182294 884053541 571527680 753241230 891572521 997286048 874834979 917995314 733498020 868945806 742914128 842988638 745883888 849950564 639746161 650239566 372885349 503071601 205568003 578222107 635414691 855686043 668695565 732747639 676388512 995130583 880157455 910040866 341846276 584804543 903936377 955703011 95633210 144104463 740249703 870976430 684322704 771739936 81381022 943996589 288109977 572921180 119791379 704965292 940378066 970604526 140514992 294688948 816864965 844967787 800298454 959855680 649964151 755507428 334507622 809113889 60058447 106280174 564476423 920808887 98596947 786013087 899229297 917058101 724824801 836222048 477680220 668663234 540109193 739176048 140647757 391596333 965012112 975727203 665388494 912800303 837677010 897555318 27068234 230987943 211413392 433347253 284770181 747376550 309739095 568704835 190483798 814588642 532852772 889443702 161010640 474016891 160289359 729120335 431213641 554414864 595661762 829491382 451864656 756672884 721463882 920660107 961096831 963074144 464405829 730674556 643572847 855931172 661534862 883143694 562980799 858438971 326728462 564664737 107128690 386792096 584957463 866443548 171973854 851089769 923450355 974067091 884478966 938923445 871719859 935554358 770806780 809744669 661881537 835253791 875073611 991529945 543415573 989157666 615396942 925851609 391856723 853489955 389227092 477738029 922355258 927331790 643403856 828913525 752545439 794758562 839542217 995169599 546585543 866194456 933960328 935243539 58025615 111115683 276057662 574526833 370350133 918684599 496823885 686430910 719775473 927080194 308676824 547588783 436030676 884271038 710138857 995975364 264622214 486439757 222981100 743857771 934311249 937365549 264546005 891783090 599646965 977560219 252646526 335525573 327184289 355226682 399230588 960373761 565474602 946037822 624146785 990747398 835521657 952099945 427407251 541005796 208960284 721475678 500077036 772097979 194987854 499856327 472483224 713191824 883792363 903272062 620488076 814980289 560703500 658765591 638018541 771182725 337027994 488166951 920640065 921457559 264427988 874027079 600107184 676386085 828508451 998394738 430225470 463852884 916969628 977999433 490512094 944292951 849348273 949195118 467482251 933771543 360714458 761317178 636785038 892937883 299953565 954333274 120097026 142569797 972528176 982235399 803860867 897117524 398761122 914832157 383142309 564432805 917016703 944282623 409521846 667731521 281172973 331103478 335615504 500907148 769821426 917466696 341186462 539568109 525815436 755650255 761952306 879949225 541754474 937930084 747386971 943148376 438633861 690512882 92305716 485247001 518034712 541840327 671793495 734513704 693263955 826176876 346923500 460259248 41022708 751141637 608909661 681460634 366880581 373236633 930569531 949195528 34962434 549877778 297233753 725681212 242295472 306945663 629174719 869227916 562222809 736249783 551518653 820276880 745449972 955489743 283231223 684026286 369109525 459012815 467512924 720968105 8444083 246117289 383437170 614495152 548903868 603889935 724245014 815350430 809002941 829007604 958589319 990211025 349058821 780654741 849661908 961912766 670925410 737098240 759001468 849615212 435107840 674444014 797229009 843508666 188149218 270956365 350018573 750543782 541109269 944444836 88916483 386441894 322761648 388995907 108996297 817535592 268212680 893034778 662754062 734722212 2051103 50594173 833864726 917396272 637016803 888344652 373769190 951942840 491695321 836819307 667805135 844869844 215015432 664916052 903712402 946184184 793395569 968038777 368803346 887819073 173901095 856061734 952505129 989456336 781471877 807352734 84830465 467557549 79383948 800077947 411688021 626499190 236146822 618518205 140817204 392687924 91116214 237948847 462751056 626168294 93021073 642432716 285030245 891280923 907089879 931930961 294797028 454096869 149208662 739115784 905896347 991605569 211082921 633052234 722202024 914417229 458270930 942208415 824282003 960873426 152565002 225926081 205312456 584172123 760730018 851878334 735649270 815670261 712992528 927779019 20579484 862987079 41296655 249734783 332073197 510552798 490625483 722402916 648700558 739423623 450025230 877809154 402458671 943499832 804296205 862121776 126533161 455812044 102639625 800156463 236907930 746461016 229409493 423168730 489806438 753655960 305138569 956431030 516762851 929341032 249877222 251536422 394922857 554102724 205101355 986548689 734646494 900837908 427652318 733224804 801918087 804994514 510678206 641880822 885342047 983036706 493581443 946996479 434091105 768800656 687058591 835206249 35365526 134977035 193532475 571638037 403984306 805891296 433996403 700024105 936840333 957742094 204457483 324067480 459060971 896929244 714974213 864246858 130876720 444652221 18798914 922652124 929327922 996422103 848357878 907930809 973816549 990796719 246889113 686686655 138442695 678155467 813538784 998576685 384069671 604247122 422456619 728878907 255471004 621033379 838346146 899734194 10750162 825779195 373009702 430583387 588011023 739960419 587617689 725978829 847099872 961861704 492207882 603507321 195856761 722068688 767845881 774995508 922474334 988837124 719503060 756102711 966037482 977083744 541725098 975079567 126949321 942526592 879064527 888125056 955029850 974259183 697594971 891698202 223073017 355169209 845186183 975909606 702028139 990216802 813881283 864007296 529121322 786671843 275453087 959789116 306834801 647074236 344460823 977842658 893434476 996107959 256890125 915548903 785684288 950988436 890741615 949528130 775926949 822158833 289612604 919743987 220195983 917064642 654640403 836900279 809322852 873202496 729287328 996505174 162110973 356222834 843469925 948939999 85245621 962042579 590790079 631148048 463455035 836480435 401330313 431527491 879555506 892740668 433867144 836138694 752685419 775043960 740478256 881392747 713585881 742843559 214524541 703277144 725299031 783947407 339708660 592424771 867203362 949305470 479157887 733601105 545384166 826048634 129879200 167138084 948804431 989029504 161993296 406590184 408009422 590440289 654091899 908870641 403850953 938584984 287185473 713981058 412401486 637090270 926934297 928785783 887899567 901598934 500790008 602504744 393228650 665378432 342281703 883506914 652824501 784670111 147355662 413225622 219632666 500590692 931129660 979485040 52346836 771516915 747770620 989046011 525443933 528384126 912419894 922582435 724498433 814366658 95088883 540507283 90609929 684811613 511635058 826858005 519166844 750435501 871976324 941634243 168198767 743065281 856656562 859865016 4363509 489819665 153299574 732475293 737241625 987625041 829157281 920229226 993029759 998343249 294775754 697477464 78895975 175659935 568241875 637733383 720149628 749854023 403609039 702596843 452055885 697239494 227887067 427586366 674506542 935655426 211229537 275435857 376244827 559293774 829207266 959140685 441494311 982696263 814262448 836042273 294161678 967607733 76305207 594656090 979669590 981714128 742711057 806474978 103059125 196393882 787336074 955288634 473241606 588251714 969619680 997669096 789430801 798332295 720327094 944230112 15145211 199551933 440763211 800287374 693441242 783633000 226530112 802145060 707765489 776082854 547091380 812519015 490917284 695768322 432824320 608994137 717594039 762938336 362699150 736833988 762651123 981696709 651410368 819784334 935272107 957728553 426423178 768132694 296635456 823502091 575511712 814956047 823091514 930309252 995548097 996728553 341156634 569821341 387174941 804024484 537406801 687409354 317522395 645226372 504477345 590979332 6199868 172691802 913943765 941897915 395550502 557161986 150407572 479014187 27997894 424920367 665650540 729346098 8937978 493293822 520601648 806492302 822377637 835377122 277830959 420226531 423384448 637044990 148754161 353508731 109345543 686557062 607988178 628853303 68738607 106929276 944622929 974841066 873661874 952398670 419799604 567295976 551485812 614717240 727660100 761024290 141934420 242006790 670351241 748007523 966435277 999734566 102273235 529401746 188661626 775565392 870292830 939730833 791189612 992072875 574889696 734061082 331843719 778921219 308256078 337082413 984701559 997506294 495847519 846573874 472850881 627491691 280780673 961577890 633358440 893041854 925633548 937971210 111039496 859444536 330203755 957826621 197192329 856453896 917409271 941021296 188453654 712278446 179713406 296488806 446984145 786346492 323697787 936242730 670459459 729258685 302054587 606250275 28367585 964745509 944571775 982907289 336064400 347360503 204801791 842484305 785139983 987242186 560896590 912060680 407606526 602781065 781049743 883996870 553787653 975384808 183363252 236252180 201010628 684931129 421843763 850139809 650820625 789603273 207389913 984166922 574992426 726455051 438149462 637660201 905960935 927807269 720841150 998188645 380366125 469992631 479510548 487103891 768893735 918150007 860964141 894984861 245358459 259494982 175662200 701602637 432109448 579558397 402329339 549831624 198578382 229882097 933090597 933890000 634592578 843789782 746395102 915440053 140837861 796358440 508514303 600878439 309434460 451858231 519304883 830696128 60768198 300122149 107698990 777133999 728404713 926357290 574699199 978755836 127691671 423910674 256324416 772505343 245199281 703264968 336059035 570919716 250978843 679688444 12759086 682992030 681987134 823164124 424803346 603459074 95331485 616963608 9091628 711939096 837694052 838470345 887939995 952434270 934404341 988752080 562075585 808364060 287811718 737909193 434984089 449773691 239876735 866766397 653994662 998221123 816046394 967960849 74764355 935205417 578971759 603676393 540349280 898035780 897441949 946094685 214864947 340597076 637880481 692767587 755620090 966644307 791804136 860124517 990469946 993182216 617694973 782976266 385585167 836579742 83646452 842851233 752875987 894700401 732249418 784165940 326377008 738848111 192391962 503454343 950500258 990488206 954140342 960063396 829025625 851957224 693135123 978784268 384179952 451121261 450129089 639651011 222501400 723145625 602693075 727312299 886865864 943394446 191847040 560916226 989157556 993195376 579524546 989187369 742600242 780782941 921139338 934053312 405844005 720335694 74726872 570372664 719161148 823987693 321123736 890239446 133205079 241075254 561047831 770750165 449480698 972043900 455478412 769339855 394959066 760922997 652068359 737952859 951216251 989100815 66351318 728940515 275319592 294913611 130247051 942831105 462415477 644680314 290175775 356180143 880299238 901694769 262009734 292302774 120916785 211507551 223987940 762844455 836348888 889743355 601834084 690662013 925771878 976383689 849936942 861708160 174757021 946444406 236404051 636634448 457234079 963081449 4846492 581823126 871279377 928087586 23048376 903416618 914491985 999202514 298444665 805331520 306425600 770767632 76800574 959443292 752842574 899035118 681646298 931657870 868876568 973202372 177681711 251379851 146119216 152813192 33239740 192487141 410431087 473125875 435930709 590095753 898166575 996754379 236220982 240937829 590490481 792685435 532261977 934452510 441735374 827688375 603225274 947296500 383002986 852981494 875459794 935741023 920121784 986510189 414939261 874453860 797521585 883002211 15937451 577695136 98417290 130147654 543689443 857299651 427838074 582063012 949669637 973308043 614880645 830591989 567990461 679954273 450781090 867851270 471690541 499321729 49593373 983270788 439798902 463489339 864796030 975867104 640697663 808696321 485326376 560265871 573130473 651089514 959525491 961220106 585877666 886351342 591973530 937920287 566243784 640541377 934998121 975536536 958200535 973014420 111177452 116074461 626820764 840740948 504452045 707453012 70335318 880959542 534468320 724884581 19955139 979977809 252227110 271255761 849260745 860837886 52270215 396819573 543673353 873537201 26669690 458253541 945686126 946654921 512904196 760886357 142665222 992161196 843080660 885450374 254776830 652162860 472149531 865307668 546244965 868029705 338803705 380007121 2840110 369918122 492448618 640697036 552233192 604979157 416499964 823469557 615336420 647861702 604942488 612827872 855224330 963536964 369407518 703504897 703090980 742710482 184402095 554456776 221427332 916051637 274963253 287534903 180189199 201485296 73292719 720010874 53433393 981858708 999346723 999466320 593090216 965788185 657489542 741807750 440231389 511880495 271034452 353859540 775522516 920585445 777215838 927348319 617266875 886002254 74550624 260833305 879506098 929572417 423051353 585797889 489581636 871327011 963160599 971482395 203426855 974506704 676472579 813760774 755421574 890035653 965206966 998205964 995123206 995230677 527214382 611818089 527914951 727490116 727777617 997000565 683314014 735343090 244279234 359621344 16126949 270586487 660416501 831187454 972417395 989213044 786675832 989443909 879733697 915695259 190672038 525242281 265372831 774501078 504130028 691844193 179274478 186177364 383459055 581025401 908721364 979499271 213758298 506408244 526705423 613581602 269539853 635281653 100375767 272559220 842625486 974617227 127398051 147293769 971295635 976773087 777328292 912370528 720756717 879010962 243702309 573991271 481284753 516547392 979334991 981453339 772357154 779156169 514646788 643507720 185604413 865464417 795830869 860153230 582128214 727686014 190161569 446600664 776862197 992926924 760082428 996671893 28196240 424409275 765165242 871073714 140201971 314486301 912039617 959416125 801207387 910416920 320720388 346695564 183250903 372834755 302624593 579187875 875824565 893199527 564367828 691726432 432060714 733128463 560204715 577400821 347051867 793452959 946538177 983985753 13118846 343334953 271095499 513752473 707400651 875059608 44180060 373455576 334261376 627765359 294539099 673919542 612764426 861676485 955191631 987519026 641741375 925635501 365777583 745330895 62514082 667422069 140922907 593862896 772538633 992894917 168370992 290766596 82196400 687314512 453224615 864890890 893687690 970656362 659154930 716294394 648356535 727747380 110123863 455441557 24979014 28023281 309672927 468850290 726763762 764820515 186862811 436857471 16391774 786015884 62038780 162372228 593828685 978515228 641370461 819478263 69120683 610747675 352802094 697891325 933377580 987497050 558800117 825389272 95963714 615529997 730907116 738063033 913034951 944424032 613793414 900849433 261401760 807531797 441165650 608968435 782593741 791583910 132982312 608454568 39966884 89445789 44835045 815878359 567790838 776387190 436174658 672613022 481506970 545420348 789663828 978657443 570692318 932939352 516641326 843705968 61969430 784719211 737071179 739927322 29338084 533519809 202446401 300155341 252856374 442751046 235039214 941991367 98634279 477643563 978517941 997629063 134662396 868996264 333833823 788121491 727690701 944608877 788287478 945346555 265314037 793977328 405172782 708235857 465426992 537665792 517863228 884061128 928746081 935251327 181326426 876901513 856371105 994092660 765540844 873550098 449085863 873125656 174733733 277985900 839925230 872233184 128169129 809574343 117095095 609275767 899498701 936158056 445073534 865017592 997613813 999644046 534731048 941436342 508535351 877147685 241996056 447538321 983581516 997594769 411454980 473782571 265936833 961137952 642393203 718150597 800932001 900214106 325288481 999232231 744926809 847205350 163782828 313741814 361786985 470339517 214952500 349036349 581687405 875358822 537935742 798341790 880955072 973125360 986489859 997978321 255919494 257068572 532271231 620855709 439563356 747510198 111835293 496507043 501761829 573904902 782796624 925539726 615128509 757370066 209429728 504133566 140207370 540271589 775544830 805586865 131322080 589484895 122037343 572405365 604279401 736296272 474023728 596555001 534583327 840155261 468423754 841973620 727851222 963313068 768202721 782131504 576269893 662633435 68600234 524441098 985359043 992485929 290760610 530423291 828439246 918801888 922641132 984931995 563417995 618944877 663450594 691659305 162817626 442466283 78470442 318158074 698169214 990902526 149825793 505136844 260762627 483266289 326161652 695858696 791411294 848334566 816413451 832488966 51998418 837933442 501253816 625959185 727132929 868599666 237210365 699700989 758661077 853430968 555554343 884735640 979430080 988060989 179375088 818648186 998874884 999749497 610716421 987657217 654935010 701432554 466906210 704623363 321154105 857230404 41860955 632699046 33319198 112478471 928868994 936475126 141154225 859879026 855198597 984951214 448136792 900935284 239249442 566222718 996705145 996978330 756961797 834460648 947233682 983943533 292200064 419972463 954684489 987940201 645537984 832501857 76085461 610806843 785482732 832958626 343120674 991830248 573863546 664603180 427591405 657738606 953965674 972270686 692204376 805857655 144602680 591818244 596311287 641104047 680128007 808145302 988049332 995453494 662672277 713499312 349562351 502193211 540392734 646767062 625608095 978101750 821774316 845609628 113546042 528725019 645761778 953558433 657191910 704632064 364496079 839889256 323412119 615101287 585023953 977517458 607212592 757336351 616538337 969241394 983717888 987926964 82256840 714087558 808924108 826049060 513773481 856760660 975674366 992982974 75917915 473344797 307426857 327020011 419331303 863489666 580847069 770685059 381321391 552837482 476860639 862539373 387640854 680964894 72635106 532384426 374723257 973891779 996819248 998064888 942090979 994028284 540923018 997599736 722325346 766408075 19373195 161877863 281290127 581471535 241695912 313408653 222939680 741875320 391646320 400613487 644461855 645651791 313632023 701863459 394790361 872381510 209205932 443090890 800643239 936066833 740395321 801259383 711843111 987778611 23519497 495995123 179172832 735533657 715387619 927089640 934229791 959908830 78694755 761158647 775337846 949840804 965573091 995653136 328917397 936926551 945934105 975633039 436071903 649018304 611403792 700681195 547546019 849042291 844266536 899288673 94060762 380813507 182583405 830202804 394057805 563908825 280158101 421092022 751021640 907004399 198427801 775788689 106285868 730536734 8864354 306764996 239816596 793724215 394162894 686383785 317199394 746599196 779576624 905998335 863201737 900894452 496987586 601964383 797864579 923788288 810703171 952671950 570371825 908501457 633611112 737164194 659459763 769593647 490848662 661487197 270151345 294212227 349732203 749984337 959816604 990345317 93823149 426910548 144755164 462801366 192976273 705684636 779011966 922830154 22914179 127103232 146215794 212333796 754479709 812926900 845847522 937709637 820276059 948094696 506589244 919371518 868291488 997766936 515325079 830787378 723391541 795618652 325764198 612505245 514316672 580192599 560129844 918263026 545225294 586304082 418768356 606678635 925916870 954495365 972215870 979201495 554148487 758597800 757010245 859558119 725771024 933811351 773058901 892132565 601127000 608813615 867128682 923132587 386133262 977114601 343185297 424155440 259917931 838966173 286086449 666593489 557427190 824864900 410191249 852497965 450495041 471446932 190716857 281122003 266877754 933568938 12622450 687069018 737304219 785238095 574128480 957429517 123078307 333648241 472330508 806492922 649474447 927429301 705582092 915142448 107476325 297828637 266459846 719927208 429920696 533249632 179664143 299261367 545837345 957733161 529540319 542991968 882089968 949586400 913020047 931344648 902289723 936467334 123934363 816930176 383957165 847394942 144646236 477541811 946653719 969503526 110100423 241762649 167146992 178003075 233204975 338758362 336854384 722007029 341986926 622912007 3132245 484658493 611967414 670176638 262343354 740529224 392963385 776164072 549075257 862178157 658573937 680503096 391388138 762964446 998398967 999613819 54675080 143690113 407474253 765995431 639145731 858326431 99103440 839612349 318263281 839970840 611954349 675071699 127216556 778011038 357231529 656719179 295730300 941543426 306515900 897100913 832988224 970040452 844590186 936855251 215786993 480413646 807079859 819796198 141675478 935497708 448854527 758440771 226713537 840034967 715553112 949966986 844251621 878624696 557340500 885580496 839337989 935132862 603360852 991733591 766939914 876544848 760628108 898951334 846826351 863805510 151726104 416009668 549653055 997482761 309224284 507253774 409987253 486579485 547497138 741983256 645981732 878912427 441338701 644821897 920781749 967341635 306508888 426003018 44943481 661637061 821340467 990072531 809727235 950919865 132418705 953094124 937692295 954055140 523455850 927253634 961222824 998293521 80528721 136679740 701948481 944722231 785545318 974558276 576383367 701139562 140238108 732568335 530274532 893548988 593494308 861259462 848457679 884451066 878532196 960840340 452252069 861208290 217028046 665633379 166670926 506747017 632398966 732397559 15767026 461313375 592849475 633427782 366975686 870228630 928403983 932339235 323896238 642731138 450998281 471481001 265816081 377641489 990111839 995097765 547533828 774314422 749617735 903563464 207837879 649864582 297241190 966540808 706597097 711455301 532944112 582699404 71214224 411337916 844375356 967707984 65151937 413293042 730846257 963431775 239384256 997798760 97749035 691919204 840535420 909458919 268697831 580862507 654122515 926886408 570445873 841352845 863385224 922471136 71191495 220239087 851794878 927162234 713380209 870472956 271093257 720111702 938196357 940961029 298063763 592579052 867318502 953462331 96375014 864268983 350113667 392382390 167180677 795240817 116214015 296663475 574280547 623264577 967308129 968496309 219041274 793745622 67377231 647745923 422117812 923361057 251069996 401580148 541950732 731991880 69801243 954644299 507655146 922422713 857454430 859679891 667849261 983940230 961912036 989674011 296200561 375367711 690727340 939592768 876705249 956413826 780545419 922588541 344438566 664926949 316334414 493947651 100368745 150030213 202437230 595303325 836574636 997682785 224505590 844664144 824559957 904209572 382520958 911919624 24758386 568519579 977406628 983995122 490049503 655448838 168816881 302960640 974343804 991910699 920098579 980831713 823251845 957867656 802515706 894732594 854326281 917257840 86199558 224764709 126999345 840745838 708963301 857766474 261408653 646755466 380354833 958024756 319977333 886921621 332274314 833609423 967901900 973490333 693777429 745528913 743958606 924387913 369318084 641965738 874811594 919386866 51262050 204280788 517017010 820410770 927095494 998134350 940729879 951839635 502335847 816899834 742691178 985928912 875215393 956563534 854182914 958013947 702591242 990316796 764326387 976846006 221786344 249565211 507535941 660509641 941281040 946707655 809842612 978839818 864495236 919343485 585065871 728825387 379761263 562850936 484944865 569206736 544124799 750989058 990040555 997333113 685453836 690164997 709674538 820548978 538764902 859140879 379905572 869464369 684759166 814174348 316182209 469455339 763923362 824238521 975156300 986405568 645453239 998099788 924234161 993293635 939548572 987115280 225976875 489084023 838278862 859916101 951280515 958921980 861492303 935949566 693996852 750632671 724787908 903885553 430937364 855763972 281438534 694344660 252137005 440370472 473609818 973537067 131228491 953342330 299072319 824888043 788446967 969786816 112376573 868492159 833989951 957586702 963847033 973307537 92760322 797262810 519390546 870638175 135102798 375237715 409602938 927941828 711170095 737061378 345320388 498821117 7049556 558950581 351340950 619510997 290083938 438128681 211397575 684972210 184943635 614430431 9891124 975707591 332001626 848732667 587604449 878254454 492651985 913804874 308585949 708426810 418055075 591350494 435755079 888616788 808983232 926704947 958229209 970622096 260317773 847812631 636693230 861411597 429716769 432744862 506943857 558416698 977872384 996055331 102193050 381901876 680190524 995268476 901470258 953427137 555023457 759689626 987308047 992376689 259836575 927293989 688410319 862644466 734997179 780685994 334721220 709938419 540375664 725301586 533766648 700824049 82145890 799373517 494996646 995780772 270872569 428874561 731486006 755193205 936642060 943142638 336698649 938527071 972633649 993609195 252351647 527350260 485856185 677006829 418378645 555038935 515154998 577359013 621314995 963065002 581462428 929594903 418479258 672973781 719641816 937892802 572644093 641559579 539418590 633479361 917906627 954304885 485764184 579927540 252501461 730786021 789693950 996794120 9392581 771082719 303962758 514050637 476722043 968261653 722592303 872609874 55264903 181698649 337753554 573726368 526788052 981506199 863097709 943102562 430495820 626087608 939024575 973696400 795507109 823500958 938348761 988619915 650772374 809559847 29127652 329465751 647315861 812216646 938579141 956161879 146879979 857699709 871836459 909357307 881441322 996713787 357362241 925628321 580262393 638178677 894871498 911296510 863137178 978938398 27854068 412264860 720726770 869123550 539744936 592789302 770822611 833767082 484105514 583168559 847752381 999185308 789850310 983314666 576335337 735475485 535025871 974315938 709442903 848803716 789115641 833503972 387889285 529185321 348062232 808696862 20321405 65484696 400189547 904649632 574547697 742544149 739897789 892863695 749717631 797831325 519195539 838890856 309509520 663846015 13421322 374362628 535315864 595599824 448428615 836136081 448874094 720026800 251095079 486566286 707771006 975707920 967135346 989560672 666924363 858377476 693198292 820900994 496217971 983868265 640903749 965893102 943014736 997300225 824040655 901954588 807516849 873935215 582975503 600393163 182033459 599394775 492139577 811965482 294962698 360717299 171182482 846568073 701112366 812819067 347435781 952596692 31892269 508022437 255667321 481323094 44668119 960157689 12737517 872757572 124741049 757178592 542234888 724800853 742451335 947146120 271073584 533744751 485613893 677682937 918147062 971855305 462691711 722293684 382946362 416354652 250844446 919927445 110091634 835270223 512511 70003535 511295232 572423779 230042536 677589524 22529370 657074194 610872269 988040586 600352509 667994241 673399041 683206314 768994661 878001276 932406357 990607323 680291356 728240031 778237317 791680648 517174357 584080880 151665106 710737547 763418437 983030449 935471770 951846659 32904242 155669678 264432187 340126162 905977377 917561268 930368223 973186299 128856240 871948242 507506847 796383575 395037204 825372639 552656935 796419968 314637940 433434731 656751726 685812872 890910762 893946130 537092377 822954005 126579609 458951844 513842608 558456833 661101678 708406642 752636655 783727893 733198776 963440407 548910477 800216785 646287652 931791072 594923098 763154325 788310228 823318892 89979762 674283452 239342454 967331612 614917241 866629180 421091238 898115764 937499060 968733638 149343824 305213273 988109225 992074666 50417838 878070489 926445626 953181669 505532037 610468856 673325878 988200604 720968932 740181729 804493899 821741998 765412773 897381350 58370666 182848219 225105958 868506785 757670577 838471952 379976048 865814944 967020160 983249282 817798194 999522785 729681892 821655685 607250563 787469692 803999111 978863751 744927343 962321333 146878737 971777650 15481647 318352514 209229692 574943608 646049475 901783740 958970665 973884739 863097617 864730684 323505094 690374191 68646911 361874974 246754715 780802549 482304661 483873012 415296478 698871092 474750926 544582468 351599404 524797195 181576147 297791424 574033118 680480391 176916650 953219509 948347643 983356588 421663498 496682074 605866934 950328625 299396152 959932873 577089537 640904699 574875575 710694605 638748035 679851854 465473876 574112973 417286190 588345126 950872989 974665564 605896773 658240096 340594055 571944103 265639111 830401832 895399603 962092567 658831700 988188826 369309971 463337759 831340627 905944467 934597870 987831858 102681675 386004934 705948708 974152496 595350858 929363912 993350807 994902661 917713434 918223863 893272189 962910410 802864955 965544399 550612555 930237258 197783028 781499285 542483085 624539986 986586770 991637436 187347824 808078307 79314577 400750237 479386811 849665818 176705090 664991033 43479768 43973754 461015127 897900862 966736189 992798568 528432089 869944976 830317719 982210854 226878448 378948579 891661504 963285320 925441881 997689657 791470126 903050887 663583931 734949269 163484796 431245497 148548361 453366398 717555079 945724067 382408510 774721232 490463868 596633654 334475886 896443114 947808564 998145039 360257537 464490141 563782624 597996973 973805410 983370465 987901102 993900825 303675978 605068876 191664861 418740406 717310006 871070710 27454032 827299098 93016053 424283329 152226596 468999837 264627829 615617103 827113841 880971902 607999257 786340448 205393586 661485313 209100471 547990396 481864318 516939912 914072890 930238992 288733640 614724144 861081935 966147845 580734322 764344003 726763190 791144155 286720597 749721307 999658984 999775964 620490761 897889384 507454988 535277542 284199657 877364757 346428193 697893771 738749460 963900047 572494294 905255282 898985053 963932376 346587003 451668419 895438830 984378370 345348164 409599536 679023052 781956036 633664804 982711485 626358932 854974092 912912349 993465483 901617460 915610188 697791292 910184214 784582025 801837163 73068940 346630649 410937319 562288278 647653843 714608718 630096396 981779611 958924169 974475129 643216607 898697947 439927057 588144757 448533456 662444464 818704391 962672907 378390485 513632717 384795388 731001122 3729478 297500466 392284156 978826194 242708026 303745029 631034237 989851856 325198746 401426361 50707316 989834532 784896843 830666274 907095853 927740336 991836989 994159094 952874019 997138744 851533755 928318385 342677061 499074816 98590255 426490455 233662041 487227526 322871695 359486985 609894983 775258115 43447812 706892620 973273313 998623392 919579669 925326053 837904087 863045300 778508606 979337228 410135401 717940278 771486941 852097582 629632309 928482753 76701084 869875879 244277523 496502896 420422410 694895064 653501868 814935547 814934597 834915107 441243128 572260345 125115469 184043904 961368928 962285932 7314315 752147923 149188586 266560949 145040871 742024107 549785488 747959892 533398920 554070133 160217696 485177195 419022058 754846101 58688427 801974885 733718833 911679595 333848818 732184737 27359553 102732815 919958104 936465488 307999126 820993410 694260078 979724937 160126176 581065165 377845220 422127090 245199438 551340840 400217939 706836502 361629177 987497058 586814508 844050151 737904033 840570562 455622187 496657266 110045599 533941861 406940373 656439229 176197347 831695683 263698024 568985207 424719763 552637786 50941054 601028976 717417856 744663727 431546812 453795503 498941325 545435416 475261543 927927371 896076120 924913043 908884937 932581754 103370737 905955667 121466281 542197532 44552160 292115459 885992037 934723502 57528032 954195633 701387176 818947907 14345067 183298483 558780207 560803968 607588631 792332563 267887836 605013454 212576442 478440416 747415197 748773211 857118468 972235810 621154678 655468157 328086296 665699918 324298257 463602182 334298860 883803731 157225591 591206748 794122726 841135146 170116571 698577929 648654897 727340794 171706998 290867745 807751925 938614739 462883111 966650052 521576070 806128655 298835783 534904321 915762502 933746497 850046180 872058769 601438873 642506584 849892271 864515241 858654403 954110549 311591240 574702994 469625651 936910756 790635381 869938221 185101158 724228898 786422880 826806918 805632063 831549063 803144194 832907745 931499654 948866418 550730727 923991998 962415744 997480974 51581383 470224281 828728861 872818059 26780490 762751859 96103146 263894948 406727804 685996298 985075975 997893435 855015369 900075646 881896501 988526322 541065253 572608089 999540109 999697865 302212701 435716689 477413949 948868844 67524518 388490842 920712741 931027661 108948448 321819865 807215934 816455524 13697520 731700940 609818823 630249101 327573981 463180997 157304147 250838526 782898845 816847684 358073813 853382014 859413837 890592029 672236724 728537601 382131885 655868258 644282760 757635306 287516676 298030527 642142884 828282702 158364386 339916220 851420573 888983271 210412585 775071925 530851319 975562004 771847580 849029895 836791315 849648447 869908785 995619467 137185468 680644644 471062495 607732272 759809374 834526524 580595715 908067150 829108104 921715847 799070276 802790077 433628810 473517311 347602607 961143341 620757283 667612411 103886234 550957173 527441249 760993978 425523902 498148388 237455934 901312126 569849964 932112549 648994862 772289932 810577890 931309772 214499589 581953137 208943 274554223 108939132 599813446 793752393 996560771 714036059 945940352 528879278 710981841 696916065 928551909 619547915 919204935 518242816 529761723 391990760 401017012 549028793 589589159 714240476 732118691 79741068 646033617 580571055 657205874 50589265 995801928 472746957 884767720 125440237 208926822 966393523 991736307 314667613 356296931 131733959 342327132 618416892 626049968 255909052 294941685 278647429 980096172 5502038 199580744 371752734 704674479 109278911 868367488 975932659 994308145 763529643 962464903 440946250 740495032 780087385 834496161 728384892 859853779 841228097 961084035 495795325 874771084 610749377 802402296 573426515 719947387 881914070 936166546 435135107 636680266 88373006 771657924 362893729 649787670 430885892 804516651 214693329 658768081 242674232 831919967 421429033 875117926 743421747 850821069 60765663 790994901 801612054 843119616 759867342 956368215 973763591 983842764 616691136 973186993 416563281 628502150 86704916 729800309 667285237 883467190 453314408 598009382 850629455 942766471 836263295 990865099 963197447 971666042 14387562 364279255 447918550 812833689 824113584 994969240 497251479 528107556 437412355 537224828 404917550 429257096 226818079 622550543 795906374 977291459 457324310 810419759 720597446 765046844 496741452 902899295 914611692 941025470 310847126 799547694 79559744 639479413 676223931 744285868 145043193 247779053 167704350 336171157 628101100 944094975 190369950 801065031 852301747 916396163 684429153 726804715 837692984 930010872 388716570 538077440 315592215 763459656 243007850 606692018 162431544 896737870 110581760 938908044 693394992 910462504 200787351 912459158 148022155 916845465 960185090 973010725 891611298 912573043 242860805 936041719 354587626 869363554 606002053 857183061 744927840 978485574 220563279 476154438 275076150 568559892 201141142 421713724 182123113 282334002 692227548 996931170 359002221 893268613 604447315 759213914 466824256 827254879 949965614 967090137 423302550 768481875 808391850 820381550 408224173 784359061 937430005 964660491 478105154 950123559 733594015 949068976 919565102 980602413 975944311 988608551 288240228 832455415 932327018 952985221 767084628 857536193 780897799 960269205 904313243 918426819 534467206 959254342 212405050 587932605 529315806 677683643 947515700 952070217 255951252 359314509 417469236 906629778 143968729 952085895 907831811 933932837 561203944 752947023 606269916 662620403 70281128 502880287 678760209 947766438 549991018 994811721 526634197 842067581 423363013 613360001 799991276 936441853 249138786 874040665 295782537 306766983 548543691 730194362 116730295 613965940 767608402 891388358 814244409 835956814 860844157 949198895 445951626 921936598 791521735 945928046 956962603 998625887 663057588 798504646 572129691 978694360 644620200 951489697 831631659 966199292 967135221 979130673 556138446 562939963 216583282 687927991 687258027 905497230 916644911 935839480 81052283 648110849 910956055 951756908 325582321 332183638 406739020 580838113 734048773 813347502 370283631 848659468 630138686 808521699 158273207 957413794 685963233 994026501 987863244 997439692 42458996 373715320 993686151 998710772 47038401 768043795 36171631 485991773 744814792 872734787 976502383 981920127 755970550 865425410 917992918 983301814 817326190 869285264 646743818 689895132 442480540 885118281 14145102 381746498 929978150 987897742 758296757 956877212 434424541 869453597 781381926 986408069 825673662 948115213 405863842 446033531 508563397 525320588 975172196 986837531 129804222 901202814 946748473 995562740 46928516 487404050 911067867 995825829 783651110 997475475 868995156 993332070 999314442 999392058 637789044 642528158 957724313 979070382 423628955 494140940 34459413 365102796 159107961 172320353 12130168 241024747 255822963 414352876 55234560 670571675 850625877 977628079 460558756 611624008 731198090 958163478 94645014 842298147 84569333 973857388 193959116 432161200 810285752 946869675 44829186 57214921 325121750 963633838 599246720 649080324 770406316 785223565 319050853 630971186 240065208 885590134 209741508 510961405 985938567 999506468 905139236 912778318 982279716 984755913 816750841 824844273 226280868 360866825 250738726 967799712 416315432 957851162 558462102 582081624 80450822 747441776 760682245 934647555 640421654 824492166 523595687 874443670 922682884 954518994 85234115 588749923 105906195 604799053 419515293 509156181 860852904 884682755 929864809 976102911 297817799 587746932 942614735 968460934 103170612 784114273 972802498 991392452 951706101 959751759 145811736 979192916 305105202 495423143 196420927 678783575 910211169 935831007 469014814 738636180 251417151 913036310 937628279 986753338 254639040 756893877 616541512 785445147 80758058 106382901 224897839 793759441 564629295 857708494 967066032 997430350 262005951 265595691 473005448 899782507 935200672 996114791 602187084 698628017 318033535 634122207 148629386 682198346 899376162 975742648 833302156 951049945 904534370 959194470 927510810 954674372 640559128 934616874 601785663 767214859 272039372 726691090 741078338 893631254 829775722 842209373 211134705 669495735 795096779 873290825 564414933 739875174 278726415 786995016 356912309 935498674 381524678 565073458 944228847 962489861 209409599 870360854 832308892 889723534 624075002 813939274 842034750 908768346 247814007 444514934 30417019 892140325 899782538 975555124 948781645 984179512 846913516 893920742 796182925 994717251 272283716 733355643 259238635 587099470 785449189 965862276 206605693 485192574 398447396 900394573 203890918 419498425 346941895 556350765 78450846 204050421 7132093 790758800 511882624 797392047 175865013 284375397 186450503 357217565 596769 260696532 757854173 921650564 314471368 916134911 969742224 974483864 849391821 977597359 757781075 824680951 960520303 977495689 49741604 975055325 217950387 944882511 156475506 287481031 962505670 980253983 125268172 951919340 590584642 636930222 42217327 239283596 705858715 921248856 513691232 754578564 270391028 606674071 975692547 998066790 93972380 537486929 950509118 994299127 25580387 618015995 208157495 291228257 433559829 845396009 564478357 707877704 482035363 914111910 671902872 978537932 564953822 949537607 449406218 936237162 234932973 655328943 597508249 968082815 26967177 398683074 341642952 738769859 609780724 778177715 5083532 741985832 679508777 848956953 584284204 664161989 702930768 900601570 81486280 355989768 917329599 989646775 929055844 954870842 110357436 763309352 223379188 464272757 541914619 883736985 184898406 994496062 369395271 873294655 485486458 801022929 252667530 863360861 630746613 665221964 500384630 839552149 947196698 981457667 12616064 438917343 75678742 132150275 119451453 788069982 631161137 963286367 186714990 498891264 24002699 342912865 41349149 266989246 430606356 897976991 146727456 846327357 414047575 628327494 979316945 987921530 972353348 997182057 24828851 209412153 940073000 944726459 964521405 988980006 592121004 913412398 643856035 854821419 557335796 838903997 374432427 591835555 88914132 795859492 95864064 251219802 166446335 844430209 567186225 953219570 855186543 976713354 806746221 918292386 287566771 598010590 888445535 897161190 408619188 554567598 170157541 401366006 416443122 675046375 326640949 397783508 62609833 304696882 132083779 674681253 294865145 321385448 490236450 959566096 602453371 776616235 549707954 549907223 834438228 994764426 598293800 954895472 160646687 650803874 93288648 725805423 21459173 208362060 883140726 911506348 997954515 998777067 799039515 919213212 807493766 956729120 809381904 943965718 744892628 764806393 648234830 691356805 632060016 686089120 968534416 987403153 77887441 650344387 183905476 825687479 185538982 558613023 365789031 576519526 106355942 161694811 471379809 835145824 349054517 389825590 777285404 811035646 314335944 856898779 578885822 639226180 459656034 694286380 67019937 789874371 873050594 993187174 743475976 908399530 723638373 964528721 278841756 286904180 978131029 978814929 895614814 902575332 991039067 998011753 443535584 841581272 554800340 808406837 506616987 690816098 621667945 901280436 827206325 939699520 232108108 762762009 992164828 998290609 427695564 905963686 25281249 826931701 122769393 597364939 82005445 786959931 136434749 806990652 615609068 914208835 873248453 965610428 32136064 694452703 869420118 993039709 907995767 938974246 259978944 860135283 55049695 438235105 132334630 687290061 605063647 664307947 715870964 744084325 899964718 959901839 676873275 694612210 262843656 481308578 948871746 983927070 309003389 418944731 895351738 984178316 890649442 963319880 594973053 884639364 272885299 798410980 547494848 929843378 307317033 970546622 9193424 169342894 819061950 919230573 848101461 984486873 717211433 885675105 946868562 969304252 804549850 964197862 972841512 994182472 378979814 379040602 130698326 822487497 780376836 958308012 23948610 767825203 527586654 833299393 710664772 891031453 508325036 767127027 755883433 902240087 757517536 772363986 565757760 702835221 126673448 524560188 49356099 94828933 558181962 701393906 24481116 667483680 87634309 725430476 884873881 917432946 925904336 931683484 608019914 861754206 41999100 694170294 245777235 807687947 895992704 921017402 826259531 908702606 140065715 506435186 517539222 709848291 213793877 567325623 409586293 769332328 435024025 860252675 803535593 848803595 303560203 648001894 860474473 979413130 485804403 901115454 917915079 934054693 875198613 999021866 198537184 201955600 641723443 948285679 207009846 994696275 369484562 767402697 938189809 995526903 251350994 855345823 483521373 596811516 205179133 986818006 739391568 947411299 811200115 927290406 486888664 847556190 687717686 722293654 829434725 957884019 349911233 450189268 644191869 713220730 286716113 352814889 844155325 954475142 696708867 875898714 320420989 336290160 148647834 995597474 464265303 653044339 260223725 989205996 918846665 952864401 459845895 461732409 957499331 968281022 417397058 941875924 680420995 912830567 222963839 692604026 114656872 770751754 682986887 748096461 289416507 644058849 287285567 623549204 171808644 953951234 954062977 964104351 143764282 728450921 365658654 506938409 696709009 813502979 783163857 911966153 68463851 297488561 650162 956191358 692362867 805115622 33137133 921424719 238335945 260997312 210205707 584646720 575595196 668347515 894630825 970605698 74773623 236417850 624276621 917150387 454590158 718659308 652274689 756777807 446242887 516941604 38204056 47821468 997296604 998557341 677228099 925420296 168811257 362793778 549051701 958625484 31999284 578922312 40372038 245743700 796431920 872192841 709900826 985303671 305365700 583998718 61576559 338858855 242741504 968424178 568585353 947220896 529813910 562490197 228708366 454163997 219972437 398084570 264934781 790443404 551737908 629781438 594571333 689578762 752967800 783957472 525013138 845472666 789312117 937862607 708957134 735405704 137690149 841621130 905126846 978869337 10713094 853462191 279997198 738252211 788824401 919225125 921517904 929793636 550091059 837708877 742413933 838425996 68894318 299364484 219865536 453667108 1033769 62367741 77394599 899658930 615598338 944324217 298923966 404631648 229853379 734974063 303976974 793411428 351572098 369110091 897064670 926888188 669245736 898324659 691518781 870965318 906696326 998126860 28985236 369127372 276924265 512391317 999457915 999575668 271795795 422979906 249606954 352198462 668837771 871887679 226670583 606747348 927834957 944788808 637286460 750873656 967460505 988158226 399116376 841437316 562080533 898582959 803275725 896323283 533729377 588085608 924692001 931291376 857389889 861506531 535979816 754514103 522394672 589057789 920284438 993110210 188595505 643767873 504216995 511273235 929033759 948381754 838552088 911150361 576306926 992338479 579463886 769791613 443945754 984340300 398941527 677924626 11662017 207479983 508784149 699362234 829139775 914437673 313939002 559897098 969980378 989450170 177466059 470276256 639562769 951247281 870944877 965845959 157620349 563338244 872942887 927979729 355847020 360840886 975408619 983458217 565308351 747288162 421542746 589011097 664924834 938964101 264593429 541404628 919399810 957375981 677224994 802522978 390734482 904322382 995037064 996772633 492073762 500388897 418688171 816614787 373171964 819545841 695544732 851491858 122256890 960820175 525862943 785453100 827426654 845467090 612401205 686318638 539530383 998207274 238258457 765257646 934896074 948845278 555397883 771937651 282104098 441749473 545939942 572436141 613524260 794472132 716507205 876253309 593538529 851999790 940603394 947701203 246008334 425314828 455504416 959130916 133654215 760806557 482463986 977686306 763151151 780538831 426612895 675007690 975910831 992895143 874116034 991094470 706422598 839535571 460605790 664904670 140069984 310363814 916305252 943554958 382170030 834727100 623365370 879960583 943583568 969955437 616681689 995066759 874348984 947542298 534612479 672526029 864903894 883335909 971506033 997341662 741111906 854986336 930052969 972426565 882808637 957290008 580487268 741474505 348948672 971964707 502160081 537671196 843611709 879526822 601679994 985255771 671712886 881080113 735970646 916712236 715682433 991616721 640504332 905559545 864165819 957702161 42832009 625593540 819197986 867784378 185249990 560080463 220107370 921192955 146732260 880256104 143107618 320667279 228225375 826467167 788484109 821383425 206380367 733779700 547602702 779863263 14783742 279391159 777674056 863481262 730079598 997902222 425093324 704841100 869271847 953893919 264445606 973772675 749547150 992216839 786776466 912976205 436649337 691274604 207244641 661428406 936887040 937703381 138706856 870566885 264464892 777756593 930059336 932083008 267521634 630948334 304054372 834562291 232763584 830009190 67696239 853415428 45674692 671785717 821149696 928132361 470489257 931276912 815510992 918453124 588199311 777877787 244355011 312561016 861763497 902769565 519017468 689559027 214377435 241499985 137085600 457852276 378148801 448168155 637687884 823664343 921647460 990160931 411273684 537164857 448165574 614242724 370483555 883180449 421639084 895401423 34359194 891372522 343113021 642440736 906005568 994448760 292520244 596661819 417325567 800893597 916083395 979661836 708925818 739121883 417587299 630527973 942634143 975132301 883936260 998413368 218501168 340635456 774225983 862055974 1089066 748265290 526278681 955845567 863911833 953302680 966524492 985236645 523626456 953313295 322085000 536787965 117445850 371098257 820770090 868771496 474347803 906035528 865891077 981517413 816660850 882867502 736050260 858170536 293113851 487190008 445507535 911679335 747325353 794806694 165850180 756349844 322360151 726422149 971033786 976405103 598926635 972464909 299429781 430620104 776028043 918422300 683810320 862937111 245801581 489618515 786542761 796607057 754105500 835857148 110283892 279849365 436262237 464680486 542660694 978865429 898408103 969429976 200844977 595310143 265349418 843124132 533895962 997543121 617048855 890306405 91412557 642052368 84844927 467130805 422561330 891880050 849960407 860240953 829544638 858561773 228788346 331437036 845132769 922108695 9207740 840274590 297149277 657244038 385302947 783874065 809854820 879469453 868159149 976531718 621708870 882014149 864127216 905459496 761645686 846797378 174820611 578153886 186111302 402317515 978017324 995149712 768465053 853754429 971667049 985432965 902131179 956607349 929671520 964536456 301801178 609388483 642609181 999141257 713970215 766216895 588572760 703423341 53701139 539866245 261749686 678255777 604233680 966351726 915238348 969432616 352686669 561178235 591138587 964731794 507214728 588190376 791880193 826769568 605709335 611968991 645758121 702502779 360603842 974116149 440870804 601680184 434292940 958043814 548521113 728926462 893658445 938028411 817268472 847804908 944093466 950950615 827114643 904046171 303849373 611297051 726499588 911531605 316125852 481424635 49341888 646817223 483660500 890623449 62849457 172906266 346787739 928370004 149398661 613902824 474203081 786778504 491191205 853445014 429223730 750370309 456488715 515012148 940377889 953145592 542339850 906148249 983049206 983627288 713222228 714728485 551518405 953830624 487661270 813451366 137309681 841617831 948688334 984410556 169386121 618635509 54853952 153736191 447311248 545990300 266636600 938961698 241755079 715410630 541332969 810760081 630047486 904980735 465473373 993412665 599318617 914707736 463788640 745350143 454247125 584578286 447465246 864632567 142185653 693824694 646467054 904280817 440248996 804686812 932566045 938252034 700198324 846511096 779596944 871322284 80546917 243579514 786453808 829502824 947200045 980097132 490632452 838212226 756299810 766011990 196658935 690381690 727995936 790580695 391869723 707150254 257077122 329975535 983629781 997134958 627079276 694846592 618555184 674038864 632715485 929748749 605401328 719247224 805416068 808040071 214312428 346263972 111664658 635777005 26743069 693252243 986790682 996229863 687686468 933530102 751061078 819690014 694828955 745782342 717225912 735281374 936481975 939414013 912707520 938980408 642567582 675577403 857312525 878973336 224212023 434424718 584573483 850593354 7007990 954895736 887863312 945080658 307162629 396981545 241451650 999882098 132004015 435899806 88549614 191880083 559816702 786046130 732052641 996199052 563716891 855597539 680440900 918332317 601945949 953351204 152767757 979403248 692341299 974600793 46945044 725683428 639534194 825936579 218711153 969044717 829961344 853762608 916872279 977622741 785696563 812169394 234453043 273937636 93351299 477171038 987527689 987652721 798932718 823922158 741841155 968715285 337378341 599301703 336934844 715263918 261346385 652771650 249295247 593507245 367174934 503787789 165125179 283914655 821128993 936372460 596074747 895097503 552895797 820650911 743102324 850035821 290794361 366440112 863218605 900333342 360614713 443735905 539699581 782414685 567769246 708829716 839184941 944623924 777175649 846609262 382225808 434589229 745966823 930640897 521474207 644297184 192966231 295509958 547385538 858222881 651262149 771129969 629185299 906552123 303288248 786386783 850854496 977429877 404506910 863121208 237241452 429337066 372539053 684551556 156648430 928163785 592021820 856598242 579338074 994631977 802071044 983226791 688467040 797482888 172174946 720438834 890132830 975410351 11150835 93866826 671281808 889836706 484241635 549160902 500219303 614897968 554776749 763817861 316359685 787620622 330797923 832874958 34409451 185163160 991359331 998184934 318417981 759860633 681276293 750619490 412268863 717388677 922762572 930209041 100575064 388005628 274108828 288629499 583489820 956836222 721754067 876164558 508985501 593724213 309091554 556391359 213451067 950136320 413382428 680281603 567789951 892286606 625885526 859175391 248264182 371826459 536253821 887013844 715486218 861273506 411600318 978037229 898549479 953383040 182170357 469380632 518026763 722147619 548620837 934992049 911711990 960902897 553873790 612443415 201893584 394652609 448818694 974632976 382482151 570932662 368304021 943498405 372239052 713298475 175540470 199453069 622202050 843550237 842579071 916992499 552566931 745498091 976916754 989380513 547774486 887291539 370226267 729748374 850184367 869087017 329669119 983127421 133295713 641524863 232265543 988450147 85724852 821530409 468632393 535398761 27829656 669545793 448647857 905588869 77089986 150876838 859166900 894244389 393361415 566684838 987615072 994967895 399660027 702527679 74862812 966316003 238134819 969526512 151515776 896757706 874481636 919098003 275404897 467614134 384618363 827212648 800589646 985521868 252788212 435655538 520250066 906405350 918298878 992251718 404519442 850089807 394892769 910549518 15562442 337228731 697632934 857771257 712305351 733308221 61756107 772019394 213393718 540253544 103595501 359586523 374912183 783017820 825429884 967923359 920370356 927113775 778771863 933358916 296676294 641827519 936297850 989199476 685210701 908014976 190085307 779285785 662128606 715911058 250487368 725952145 543623494 678571103 319853221 431074929 2288364 861472212 803488105 925307072 853816893 894011010 774161787 811349128 713584004 973260719 45689324 327613029 133442411 417177207 498042241 863862859 136147532 359969438 395945434 598743477 766577043 796503011 256336795 355707965 848671260 886557638 747774231 777843024 663626123 970634421 352400819 447690152 552543383 635638913 524790510 945116905 862883604 940006992 596561695 651830241 123546708 574552388 407474287 528370852 460842501 671175232 228194628 843709669 32488693 129378464 193444228 399749654 732976522 752004311 889394154 988301305 848911399 950591743 422456749 727112705 677751302 844712499 179195410 269805652 176091789 622443763 603428855 618303306 842414422 948541501 314708355 496882630 650904055 827045584 999806336 999980644 633005255 786614918 852893833 915788806 532900531 888107610 618752475 892696424 187385808 418058587 184566643 719865359 257233745 426576010 672736474 767246818 390897636 668180120 87846583 241149834 739750719 780388639 967463002 974240660 717248934 754340613 773072239 834341944 688789419 997396067 173055111 655775900 170507496 768182474 60746886 328109609 984634676 994112159 329534780 453443369 567776234 789342914 838231149 895524358 477012277 787911796 270742291 435082663 816744451 842992841 652275423 938268448 32167619 511918171 306697361 621468851 685527513 859571622 627941126 671180176 637644118 988238531 817056293 946889322 934692734 998084195 372900302 732560287 12772412 136285781 331455272 942092493 786018940 847690680 166195405 793578590 296362502 440333575 136485556 668232047 560777597 925457489 530078462 589739218 279288771 739744185 207664237 519741608 675729030 997894625 704979814 906447510 345566391 420334575 374608180 743023878 95254664 102058098 766904193 887675195 259044537 271583923 705437062 988152672 731571163 764511184 852857473 994964070 803977694 848008270 955393719 985862313 745130520 952601399 424267341 796320973 855735026 974237077 811554821 848227816 248324753 916798146 897952166 929992916 34495758 87096728 274538316 692614510 255351891 389075994 273045569 405273920 317727926 544110496 55862342 111051402 384215843 705510860 747601714 798820334 426123691 956225124 54263056 596729102 607968022 822854192 555809876 948173126 902874328 984072410 447131854 517648620 75062433 441022746 506681045 806104145 407352570 696919239 84122641 766565674 960740366 994350903 966785614 983391767 963176671 996654222 358947210 594609583 46108833 443398250 947699483 957666037 271050026 653323424 188949603 809212538 110673305 286324188 110841033 671614451 163410943 447615837 49317625 984373306 433172073 463620320 781954018 986221248 622497709 667801057 825613252 880238825 719447242 899075279 542091397 900401748 553868789 806687525 527836427 863483886 641970034 926569294 854688060 877943534 982150313 997210762 326371651 688161252 803031283 839360576 892621019 921178192 425403874 855665930 73342906 120878806 367170711 722573125 647978598 835694328 589489209 983468556 333884438 871468124 724197001 785122173 55583412 995264914 872992758 977091091 717302469 848049817 978307384 983392354 659589359 765454818 331021923 606482231 553848872 584326301 338937544 377923236 983257644 988579376 991646531 993472705 441682709 767478712 752538763 790127978 966563565 977057252 690418215 751996492 287847107 864451972 835041131 948673152 297024255 776337812 258640999 475781916 409839412 447687163 777759230 971736949 508546428 697384059 380210932 979549169 526329524 729131875 602260026 724781766 994485314 996641614 112536024 714282823 634954870 647927323 327352266 332710106 388162641 495991492 709725988 716872208 455539357 948706241 939294638 947928996 607382377 726110588 961603433 963884731 326157072 591477764 159529109 718328352 21713225 307378108 993846239 998748451 207806206 276029128 518238620 823128083 519527797 874406020 839819624 888830915 820386089 865489380 815921936 862939049 826121604 917543284 941741832 961346262 617760673 854754314 786427265 861621805 813177532 979419424 627982328 770315542 75968004 329852930 371941079 427020483 727805632 920539814 764586943 764841199 899528124 915199891 801631352 947826362 777145337 905330700 773498481 788731587 766273678 897460782 728520241 743209526 838536427 973613351 235950403 403640490 388734275 393197850 104303942 403157940 505038866 636241329 714774693 795751081 22878771 718648257 837181703 991012191 560110805 776403204 235082587 939859640 525499566 861197739 656775188 717871159 296349848 625750033 686361089 992825347 582845951 606310581 526364745 739937897 268835519 956726957 33567458 666484396 684060035 969662725 415954654 650499687 534576972 650109821 451907326 608882306 601680379 610266572 670850735 894747041 237459194 855414294 218907333 508439371 786695018 879697619 208633789 479411823 393374020 746868671 523950901 873884907 613570801 855333473 661669927 839752921 207505058 924646933 296202084 297216394 587250924 754208616 630667900 672258000 922831668 963494597 174101916 523589999 599096584 985965155 25950253 382992336 557166896 763061870 176902709 424975562 269649723 507918285 638189354 642413733 941371217 955707443 833742980 988563178 463783123 588917140 858240851 955962005 917818874 985346574 776244597 902502888 267465952 562277314 544325886 944162703 389494917 838440220 620046654 769477255 635876379 698979257 128537969 891231372 744187384 882640379 109562774 971900584 518541898 959795079 740776489 792575668 867936421 891623238 451489257 792095939 558278511 969169218 471764058 773270675 508673982 871197602 643392319 683386028 881076951 972075122 375269042 803630098 58385226 686123392 514381476 797083457 201655594 499985649 373970712 769209456 31658607 561395278 329072159 430910469 595756092 601544031 251016211 265019722 376877642 865368905 280490251 834090420 683799798 911248463 113566866 954532247 69518246 827224043 571385677 715039149 818791238 961197437 688937949 979526451 650484764 832028931 320924529 674699336 308551210 367635093 768723271 962449842 380008528 549540621 470470914 809516704 273026967 996144786 663305741 722445767 55072853 173241400 1485657 183432621 157913608 640338938 97703517 356981471 864101561 958808155 176259461 278161603 239238345 718073092 928073773 949387528 63938892 865445738 27936305 121433271 967957699 999528323 674679808 927159804 370013951 778259238 95700233 827879572 557831381 561200832 767540638 773660137 231875100 999445294 566828258 701399220 623455140 941381986 644207728 768996687 289573127 859934188 120016132 964323121 301794990 679053559 821058325 957403040 22341371 816587305 248208800 888411189 226380126 610349866 654522604 727658683 17011626 245848777 710763117 946023935 843547629 858063497 61876557 928199135 210536405 442217259 797367303 834490803 353063440 836038832 562760878 805869684 62881813 823826050 59306657 173170619 593987469 765659239 50244610 256814210 3206823 68524389 411788512 883804392 495453928 597997301 48675417 823433722 83980324 323388517 592379834 974013095 882593211 963358595 819772845 941668412 219713732 965990818 986781503 997114558 429365737 939151678 362421436 822022102 896052090 943303243 737405559 821193151 194579545 782314568 201574670 341293667 299029923 886538371 561810733 951675430 58325566 127410052 15886963 79604562 929742896 943685470 437337733 840627652 364476753 699781072 517687439 866834635 962217335 970798465 61428899 670339044 947113034 963135748 211018988 626443263 830874783 843846283 955742998 977333148 988952878 999402624 808526801 814007666 263672430 892187747 704532752 960050894 96681345 912500272 866565717 974126375 482655470 554405283 728131077 987127862 107450755 562369246 931606884 954492130 370434261 852476679 95137558 153809852 808739478 952273809 282544463 806233047 465330687 685038547 763862865 799486700 934415554 948922116 796468755 846563964 659866364 886856198 13360770 65696200 641903063 728054481 463270633 718567464 122191411 811467926 325970420 578548137 380697568 985896870 934584357 976198772 339054489 373632425 888568061 890616092 48158680 750243295 343037894 856103701 237451385 601780291 276747174 926865363 597440220 631762935 546777386 729859600 421506084 561648240 573490025 609662473 731323943 837584910 937455593 978227023 113687572 129988341 961928582 985196293 186023916 722112789 415468551 848713841 491199145 600102608 908175539 915539298 484005500 672754249 935400497 949161735 220540258 237039813 895830617 954331725 616023292 722943302 530516069 990205194 759413113 789332675 323184779 463506481 273795936 896408137 797913903 807737357 281223800 511834841 305928515 831769188 276961756 751079108 628350174 764694830 140080779 967635457 670055926 854662517 117984270 379555293 780973298 935694183 286691749 808644196 2667833 406870525 725919663 744393742 983033975 995256931 705253827 748510784 807660907 895194474 226773277 336574959 170959657 558128521 566467453 710787714 902569639 957418887 965746562 990895248 553741489 681652737 3408547 124814283 598329121 734762628 526609844 597030517 361135661 777248209 982922449 984882388 328737341 680249316 401955752 644058573 286771650 847236786 49944496 929298478 395495133 527699058 84475138 433473469 469909650 952495470 220218935 432845335 86718408 951402758 786364375 903602000 580853480 692049581 189444739 852935106 81695048 259545460 159412784 251475398 355676437 839074736 803339085 912501246 964824217 987359937 523497856 873495691 411495973 713632195 628198151 713404048 980506085 984936788 301662285 333994121 521499548 779045496 888246265 915445018 995653342 998626342 68568766 251277719 53599184 938737206 844059030 887824546 463001651 931506581 313675944 397136357 44299389 64311789 841762700 852602917 796764383 967845656 545389169 985011976 34300058 892520590 923823244 965549825 711875547 860952794 418493942 502878571 278040857 518191107 454154917 717036528 619786921 684594809 52700958 991007931 856923560 927983578 779170934 980056372 909962942 969013143 149876939 914129550 138106132 540527897 738965931 986334670 202532067 320713048 670509692 943781215 811455758 855273584 814271246 903904356 58285640 716090630 663099801 784460135 294831761 647048073 930448332 979050960 844058140 996012596 336531679 957915067 396078728 509080056 885095699 890401514 441859564 659410017 407169356 479399709 259264267 557576971 429066377 672787506 238263552 902622674 820288893 973466043 368919148 736768369 819329 86014275 870279093 916177391 49180837 232879745 837215084 997986323 887827832 920575030 114549550 532005559 65247976 440585671 223816322 831578797 289541386 642766323 24326484 858371312 315901460 748713956 111694026 317936571 111579350 356703327 64488370 121033754 400133273 608584161 903266039 989864279 318553319 595475939 342066651 737864262 751435953 774882883 897742728 935092081 811341454 956977403 73818196 928616255 602975621 737336175 175227788 215529720 598777788 659628546 230592112 253923169 997337321 999927680 977226968 985574689 66983032 278045372 573830546 677683926 38062649 541456410 811130033 826636067 666071455 714323233 497750718 776169690 128215186 989214020 233678725 471038887 988165047 997887538 313104868 791276057 472262314 722057331 791808658 874929911 317204653 387043904 396502290 918549282 118356077 126660179 171619350 431560779 242508597 353330939 307148337 618371997 965770815 983875874 104758045 581581836 921572823 943723781 863541028 904399755 337728627 434968750 204676374 781736431 824150119 829708313 524030793 654506312 969468149 987131298 269929811 621969859 841910005 859267090 459923263 719327414 61353614 771090622 825884776 979077212 409568943 865420419 731508506 940411426 896477429 918840133 687207335 745449369 496556363 527350485 159479143 318296473 228781046 985899146 12956578 875084345 53440840 188453823 423416011 719728477 872754800 927338503 98000681 877458803 685618505 998342707 554621957 712998224 664507139 911065458 658178307 890474030 168665377 390741847 667003539 942249646 448820325 716837716 779517367 821492223 643601357 948123019 250435642 434342787 846604792 988485384 888001984 945102269 198456328 563746060 793839920 974592964 715445909 782542100 760375699 860754868 967524500 968944240 147779871 590061324 918646187 970319198 657607526 765646846 913003705 990750599 301421119 621584909 582972729 731962263 923906550 954111218 140268166 717381219 798432827 899631906 464057147 525217921 356329458 381504262 71755713 362108918 140881075 672100057 744304255 975514010 733980301 999176200 333750817 992255356 596916970 851342508 44581081 696829434 700350373 825142113 123375297 172137895 427134051 705160048 996004794 997626490 16168663 42166817 844107061 907772460 949706241 957665315 793393385 940452851 3219836 645274638 616450049 840384940 533397584 876150932 446540393 977023002 835070079 886592021 840570762 866808220 183909452 449197247 597628461 703011407 868080078 938364966 286914340 697192731 912409780 958569506 78909112 676087983 822735627 907104555 208405720 665658128 918159288 934602778 68333723 804464663 178861405 334796226 977676751 978892934 440096245 856924631 810463990 965228516 23046744 554816545 4738223 923401226 956563526 990526863 991322596 998619149 982438791 996435137 371987545 646044506 330431362 360396786 448061698 754726038 718125046 832936484 125626633 477511863 477454811 918064368 320049161 770585047 392823750 725436367 79392889 982933543 978369354 991786966 161913947 457124877 910580638 927285032 78909994 994883717 184969333 958127428 330590876 772164973 567761076 576787176 325325079 690217369 427934379 960381014 174556154 723326618 48079480 751457979 487047459 972501495 862670547 872661101 748074844 976206479 93737556 311770861 913857648 949787579 81611279 342940435 394879200 719293360 774135927 784340869 401174535 653826673 577427616 802985979 641809360 664185785 708655432 959543429 250809403 854597756 990937626 991004361 71934663 72328686 966157694 996402143 955828121 995483968 9949990 925053314 994496321 996495031 789877314 954467147 52922717 636033010 526275245 884686943 381922535 694516403 749019490 884156089 92659680 767953066 769493491 778041209 168691412 537854891 955004571 962384165 353901114 537731645 390865292 691073025 807486224 813824378 589345995 645565588 596996126 802412900 239752113 815383415 238154898 943671831 27045448 815333471 401329014 858935995 660619836 847443156 544067153 549013309 113803309 845244525 691277013 956189760 775481393 794739853 75681929 165862348 496470604 583506475 36610489 239536714 482613213 569656518 752802035 967291863 861425713 958813057 699175779 815069377 119828555 178093333 281137193 619115887 368969877 765616140 66502069 541584084 298458745 845529611 65455857 84755442 357901268 473337900 140115923 738868769 116446510 809975561 899487973 964619981 420557864 638489624 731842468 961646418 573908952 878077596 941518196 985746197 39170006 948893005 218181436 294727132 134581670 720141862 223603516 771170263 578309040 866095678 6180040 535501591 856550496 923352886 708807581 944471103 387279444 956927973 113831436 191001879 982111318 989669472 464070966 754481417 312368882 857581640 124253027 232813910 156378875 767844483 67169755 489915317 799575508 969816219 745931543 930619716 489520139 803367964 438485124 493796505 997871087 998554456 204619827 414270882 353198391 573511751 68806578 96648719 287742706 782885727 767436333 779777497 381958423 638690003 849985139 915564337 7984254 430470222 945252395 962311985 526955067 941425279 798659527 988261541 700359542 955372468 860715504 883530553 274341335 707656400 422677683 742911598 800260056 941661719 352694320 826775402 40224887 890843799 11915721 698751234 915116314 996693004 784758738 970115021 893289052 921941432 813066578 831295821 980739685 994904562 622784694 974601178 16098779 551091389 391046749 776727987 722562146 891723202 241372414 249846606 32961405 322361833 424242436 678759039 694738976 805761222 730136093 988148614 698108461 866131039 10918054 817582787 478435566 961590981 933496564 961145746 382868559 972168868 782946662 851971301 137591536 603809990 264303770 430450255 462837379 517007104 109924148 882547439 64648163 987640399 556046237 557588003 870288949 918005212 634459715 773403716 782513239 967294799 998220942 999457747 687758062 796287028 587285896 636154126 716762525 981791404 51902609 208665905 578443569 761539815 658655125 745199170 544510349 757053836 203369143 821744078 325429854 410401701 515795569 904663902 104712055 596724469 863084569 994052305 973051581 994097015 807522742 832952706 598652316 709146555 68750655 78548359 102602759 911582230 219726835 956462357 999013877 999483698 94233946 918351097 28898428 420727555 437130123 592155412 581674805 601860454 830102400 904340483 668345776 929610134 877029396 995577159 880012430 926368932 991966474 996980171 248047112 324835910 653606401 913770892 305009320 371868528 842972036 992532944 775100659 992089707 449686317 892438202 328494026 761017501 822871875 878576779 132596158 678064221 834957067 854412752 154204458 819736951 680743007 774731231 678087201 973707149 760599766 974478865 161030609 794972397 402633186 469904533 504620308 812428504 998164642 998259976 191304116 237930165 639396125 993849087 454125841 606184654 95483624 228150312 26067595 395842651 939212413 962542238 803416434 829830369 815894569 967735533 173413624 699440448 761797721 888374540 178163365 861378324 134143716 319214828 214271982 491977007 317862980 412986631 821232602 879459202 478180988 662587190 776180045 918391705 353969348 588916123 160849097 390108439 941633067 975003752 314675822 772229535 437612966 976032582 783875532 837210807 747439736 919230654 632829681 816504792 481255682 794682641 338192996 469910725 253304154 276985564 816231927 843768749 696580326 950928382 990626676 992320668 319466315 854106714 591612812 917360758 253539643 794028109 765180117 944178242 770531941 827702923 903189225 952686513 981476455 986841058 245977974 357615977 687242756 930841428 958836412 979510164 767471143 982402550 107659849 444173167 309006920 552865803 309559974 991996798 184645675 855288034 290855422 333021611 535273826 698399249 984534400 985728011 277881727 924276234 876237421 914445494 4869335 960174918 313834338 740721380 782982088 811287953 123042591 408534696 758369124 764716585 11159663 259192994 109915186 281810773 84031750 453589144 264107422 709413391 848467812 916777036 185561718 227935691 249318312 673712426 731077461 984283412 465397996 644902347 885715382 979908014 211558864 460573941 111027994 731849423 756614063 803784215 368734033 399566769 299494306 357556978 713055123 771399726 891030997 941646771 245417922 843638009 473116968 679605173 793303576 919446183 888404054 917452687 943547060 949673404 110006086 293109392 552998409 594052905 680602379 893142396 274883616 384554700 382891012 763417162 739222553 886617327 211578660 396002183 105738773 779800095 328403163 712101022 17162830 685068380 206320034 289825604 896578691 935342511 293658954 832504569 681921006 741795425 57485446 671087311 578740192 649220873 891779946 929233937 585632361 752882051 230055879 972352733 484632599 860655203 19305239 101391743 803980259 993549506 987416227 990554068 514594581 743589448 664398752 685677168 407214398 425729384 266099874 550057650 732977980 792153412 918330592 936913722 976770567 993846009 384429454 727774837 454443703 548590729 41132542 414353588 383139314 786541584 113336181 606785504 150767081 168440268 443758667 697885539 374328789 658390918 315561011 499637631 163425138 356401353 904342870 935321420 451408087 772588686 981824463 989332721 398665730 854550182 688427203 769496945 557789958 570478006 626867672 763665360 614427656 846534290 767413080 968737886 829115075 885111181 970402270 987959212 917180059 937067465 533953271 996509889 493444181 996851603 572051095 705849468 723867838 803217944 911608686 915967631 251542010 507645160 131131061 514293476 218622233 442741906 69256777 847495527 750516034 821575148 470923596 760042156 344934858 962589406 909552148 959539479 673244839 689493787 337832648 427405957 950762012 962818622 439558781 820531950 37614279 432891290 331341997 867324474 960340687 987122034 762865313 934349290 931791250 968300123 460017241 687630404 922686663 951764834 817196019 986373646 446338424 609033716 274934719 978742700 99803390 891193026 295403702 419283471 816679477 964300923 894295554 895356588 618043972 671452385 342218449 525866207 645634195 722971663 424348400 741308495 570060104 963593598 673693651 899605587 32067534 89324219 259557954 919393575 251663274 808091304 737504291 816840905 512664078 693236409 737917081 853416434 372119832 455615013 559911587 886391811 894823142 984355089 982669361 992188345 785029975 878600232 386704250 499347153 381777412 700682124 635961983 808496754 663020181 840726112 603904758 714866953 735309503 815948212 672843850 791361913 97923766 201337039 898572265 924936719 176758094 881751221 969304634 994466451 363688488 611999101 155359034 756746455 641983779 830545886 212153455 870088465 620074143 923111155 82108694 602568400 541955836 628413559 667859791 923320773 396080896 817216994 898231177 911097978 51212123 487614168 756919367 989136532 792326190 839719186 551057331 762538618 280194589 835377785 378391579 433836571 506050249 905415836 112489598 165503665 885139417 897707897 299605804 638527389 767162957 809494604 227404380 228012726 797850142 879988377 541294422 689484344 421175941 527224181 406846814 860395690 351226233 667063648 620835802 666490957 551333228 558033900 612612314 882974656 491318536 792381598 224187422 876119261 818636113 821375236 606172900 648247655 260102441 612961716 780468758 973138205 903022827 960212057 246763076 850313189 566307695 994337973 618746052 631486427 437521277 667200011 3332016 204459191 67506839 969943783 377699902 743063008 969650963 983161629 168032006 624289648 700768061 996899740 587356451 760552915 478707741 553901859 270848708 512843804 992735708 997594552 143599466 503500046 740059866 805872162 207960119 906231623 973709733 976367718 822461593 977171907 914544392 987028097 410003910 586063471 763866158 959262299 620943724 953864012 659414644 759414301 339049821 936527907 171256393 736131181 843570933 993495600 713125616 903389132 482391432 531272134 604220906 901366585 168861444 190414549 600363199 811548583 995921869 998800834 449593009 514911167 197383890 289642635 24314031 162939322 477240382 631843268 792473704 899677903 908063733 980420426 44147237 961653796 377990548 523344324 752382934 918703158 764152953 849912320 350669326 432440325 515026156 532719433 454307961 981176531 890699205 966347854 335651843 598343582 965286471 966885409 891321839 956506189 629335090 904913703 245092238 792349694 267705464 597526671 505212538 920037791 933159877 993075209 80379647 682000469 241097483 696890615 982450256 989174388 181226602 542567581 203776134 498766662 521944647 677201626 303599986 448067129 68921565 957273507 457577498 480079232 829561248 946325888 801404859 803881716 513978782 589444993 371078225 618197924 990280172 995037825 477275505 741991504 833430179 987911768 632785791 679322521 986896389 992898027 557439031 911640626 1489492 98177390 404838566 538621996 63164818 338443180 141449811 146195117 577740520 703926250 139078884 310035315 569528922 837082761 332418880 423414051 290235531 875952789 52840782 303230081 861480758 905315994 422876715 638307837 354840412 671078235 998163812 998281118 131035165 620432563 850258698 953061600 461218645 979655737 893648848 980439567 214220393 780074169 526350528 773227616 747579145 970420750 82037331 496519049 751793835 886389226 521926338 749772283 204794612 383572248 866169874 943301366 675557569 792008229 641336066 933652297 672240865 712652439 251154329 771188015 563386959 911320298 402677742 644563478 824224318 951741520 827723833 928326068 703044552 852286470 66814448 818556940 130764099 857738057 101755058 974925158 510808023 698133821 29156018 128907866 671044670 814161171 388817656 544972652 909657391 993433795 714063999 928695092 405545807 723736123 514587826 772670780 659365021 973741375 961325730 991073037 465594722 599632718 860796656 878265994 970649961 988302763 424492287 599223977 574106750 838248741 832187634 946726657 701244555 932404698 482133741 483044863 13187617 519039256 736598856 777130878 270929211 679948266 423817224 503579991 688522997 947383583 821164759 947880244 589840384 955416548 399690226 697049934 920720501 921638134 55743426 456549552 322863406 391934287 806080643 936848122 186381593 782695582 653525806 883818285 467108066 823364025 444188528 844042760 776264576 993775684 283791330 870792448 439533778 867846998 732289428 926520118 209699967 432791247 187669902 602564924 828568432 958109803 881677410 975590518 111998308 895023940 796421516 837861372 220873021 395745799 263227654 622507770 144856517 739888726 677822369 900703422 265311214 381088813 678181890 792696312 717950024 750493241 74586246 371064085 867620556 873218208 379882900 807966644 995469420 999148086 853169594 877511836 117681187 160577135 320656401 391531206 674784495 686133084 122918095 631659944 871736009 934749250 129292809 461944806 522343969 910462992 619906543 908941567 131465984 208233657 597514051 781495724 100382702 392506762 299632733 964021707 719425187 926793768 499895998 881670294 845638038 993777401 482544016 660329509 89923029 280382560 851926888 882354826 528666526 982535628 625448477 928863219 496141159 792860405 998442512 999039590 642452858 936280949 516867395 781345709 656085002 776506359 755532566 764679511 36101763 760271360 715602066 817215687 964254764 978198208 187224881 977697329 308562676 519927662 830000227 958965662 52946384 955848882 71632749 932147112 249584518 287956704 487472236 647924915 918110573 957243690 979860250 985139248 599022267 986809098 987768571 991636874 352424213 548213257 259251368 601892405 322776168 455155481 533294878 708847679 60843726 455619748 939508404 949200629 790508006 794267895 347622109 502741613 436887116 873325742 317375891 766083592 337563419 361804311 228484946 675655579 932374210 937906441 860107173 939850605 963924857 964262906 426339769 589627718 50250508 489148211 967002553 998862050 646878198 982841960 533789680 610557020 136277413 827564191 180993920 818278036 933452816 955250868 772028292 991903164 587536039 760618254 680421515 892517679 415251404 707962053 776294528 833037384 698574469 953190210 23341994 254066422 363820876 454261869 899845342 926395587 932603246 955958530 613416742 977783332 751565952 912935557 763434303 966304135 285974588 577391648 836369775 903018661 190173573 685793442 94298134 832079821 971640088 993043772 715353019 984039829 664672870 891991834 112887038 251164503 684167732 902175277 512142814 733821790 997207965 997270085 47004858 301900139 801789810 936030252 571963628 690889844 743279516 786128257 78790517 364873881 519341295 534108159 667050613 694077736 809261804 979919210 676706469 757444595 946921105 970494087 32474544 348515408 587563181 966354405 416368541 468298110 438933558 836080635 233120319 369231137 979985373 981606721 222210106 486234809 423791928 616632265 423150786 561588176 600648597 747000291 46110808 891414994 507207192 704872333 543941129 640944542 552321181 858304264 161971884 236435917 265849516 490115197 889020465 916648376 797299589 832153783 361360469 651761578 403972580 641782246 988428531 995399294 103857458 988135677 513553725 565139969 533841427 689952072 563943124 564335025 841804192 949064850 987614884 991302231 613535200 829482779 651783425 712458813 740593256 747545333 246569318 966987293 476591669 880312482 686276407 946531093 192058032 780931759 966484122 966520416 643850696 745638215 643015162 822830443 504776367 854872872 714560572 761895230 222314295 730200303 340474030 514204817 398732250 466049199 811193279 929837251 598326021 599019761 771892646 853883415 745553585 878282315 235081856 960986741 866422594 976658490 29769735 948594465 572686411 833078865 29874675 264668463 499356102 763784714 53281730 347255783 36461605 133485357 172026714 253062014 803883185 831363602 23958732 305625065 91980899 494874694 121835309 942954289 110473627 334851472 503217949 781589814 236745515 450865965 911874483 915419683 318203126 656515784 215167111 947342003 91248785 358243105 78938071 494286244 38528252 434046363 424854516 761115825 667716295 959983041 957109730 969413406 389963648 802745443 873910640 932534237 132853806 905840507 488438460 894148580 94346580 351905703 485601373 677560659 306008774 428768944 929422178 935023500 785057594 952774829 902745093 935246156 906460850 974870470 185662912 588956828 555961742 936073041 698603301 818665617 565782812 571869103 471427967 976317157 468597722 474070517 564965322 737271370 422321142 434049140 405938325 816202175 204828300 677055992 969565438 999504920 316298359 339964488 81452136 846101186 891725892 934315364 947778422 949658209 213252277 785652926 980460867 991559457 26643833 723490105 94585300 572407023 730014277 961943224 478953956 991464828 277778515 837138205 527680403 985355913 808998662 902516393 344785140 940133234 516765847 813464556 630830964 759557824 731667335 834021013 878666825 950926762 384662040 704244271 460748144 714302982 964629073 991033359 148176269 969045944 458618993 696617368 830003457 837982461 69797402 209775453 613281511 712752157 230114088 767091870 458480934 748303466 83271630 833391115 337666685 392574292 459686839 550860037 235569496 538891406 651568501 714829032 301770138 748676918 239679746 891118538 819810029 876212054 938579203 999758439 657269895 928497785 837072042 899219028 416996776 521015293 5272472 510930398 522153953 750882222 645355788 752396443 82828470 275279485 241737730 792311421 901436174 904760572 992484550 997854430 422592542 558838427 837559107 866452501 413035039 957578548 610447166 953308157 514916363 782550554 206791851 615436917 931430933 945959785 722776572 846630548 8283923 856859270 483908361 773737262 347066261 402592081 512578412 638989241 104706542 524255823 79163363 464009667 1362871 183617141 170568953 350245645 854596364 926390298 696922856 926899432 524834052 783279674 336724616 412471962 491463637 515714086 416809615 577044670 597621310 632059399 94756074 593790429 469943627 831670930 233106091 410023336 457013837 475756729 743644581 760051907 483951364 940436951 133118664 776257892 773289520 840566733 872886244 905906108 765969256 950354630 615825620 796542424 408520242 640415512 448914742 943655747 132560701 566483268 346907803 696266644 7467552 177050051 567212303 933530088 614378731 910818803 642190439 915750631 976708569 996604118 613489462 716460010 184477422 688537652 538223677 873773459 608740219 662482740 325406777 935590335 426832143 514178416 829100617 902088636 551752746 568987877 938149202 959784766 935306634 980199739 581361036 598280975 768055823 859528529 657431827 743308001 989166910 992707612 758541590 939651036 310386753 334481136 315351919 805407139 950025776 976819776 763637851 819552749 690958035 789395644 644772817 764951664 538590571 622508242 357240809 529795824 131167547 178834522 837774509 899549254 711747102 793804154 508926593 951909551 62263492 661368519 59059845 115058451 587564334 904161265 346692544 626230293 912093116 996169124 996848272 998736877 197767317 750096738 597706672 842926848 289305233 653945593 300624597 944392078 543805038 550757643 832907868 985644396 782773435 841598248 473093162 775345972 253234001 819103249 786085176 958315633 722657252 754139199 797198728 974034815 351209296 439184080 819286095 939510567 375365358 466110552 685643902 822804091 526380275 993439581 759676879 915026173 790608174 996925975 718695370 990773970 376810179 579102870 812680096 879709719 16659508 329081916 229734838 606152326 595604983 616091580 951477644 996942053 461964111 726805887 864036921 941163109 691512600 750679647 437695650 768892970 378770261 636306384 925798751 944735862 514892036 781778064 362586342 748180802 214467976 664213006 989025616 997230849 949597107 954189600 977675082 992207619 335779285 595782089 468180364 602483890 38814016 852645807 595143810 845906336 54872534 273188823 292650117 685040940 614342425 983859812 856446625 959838021 492207469 840000232 811448871 972704559 111996435 776902398 93629591 199649288 779929695 780711411 922755081 944309821 122058061 562040405 396032461 562220280 731124912 986601345 201134954 794951063 656102434 842767359 569707591 584731985 12909706 529187655 940443538 983165111 739411151 753071206 188771758 383316574 974649179 989836580 186761012 834823304 478023017 915297256 101364422 743761824 465693019 497510380 71629321 112493330 554223221 927379803 906238262 921259939 171050207 515001223 395673013 746916307 149917989 644457310 5123463 749216089 501236610 593020508 632158294 737728226 505418270 864432449 180847631 260394313 636884560 768324786 80251234 146975453 809884995 993723309 689635546 941718899 368029992 787819528 66955808 340160746 388827147 614133326 977586848 996436824 600051484 904230439 727332726 846699375 764929945 830475093 793624578 999957948 749768820 887896016 15803292 585837626 165930251 353543507 273249509 763303452 484107093 674285535 121354901 910686786 466413009 815315565 982407023 985855608 536720505 579353598 765438945 937076841 559108163 987607899 626030866 838652905 323025570 905270409 747291331 911797319 859188766 964763113 527646201 893938419 933666149 955898681 419509572 672563642 809894186 836248070 86530351 304591784 191812804 251024526 809516504 836329338 255565007 651525098 560268041 763209548 304068876 864887194 350267611 668160316 695023244 804364401 272372273 341390438 182997429 333267965 83819268 906474468 418773083 547547453 480027121 963879253 729622269 855015759 415842582 601550044 158766304 194977204 879412261 942840307 246799455 258214688 582396901 817752695 459928811 979451412 20152251 788937045 501567116 555088299 788148263 814602844 732996566 923335779 953097282 986318297 355801788 925739314 601980478 777403101 276161942 650936422 309758241 884281326 587556011 786498982 529057950 737612863 177539097 684351771 835120021 854974249 560648536 895796702 909408603 992903562 853179658 964371541 671580814 890903288 362459835 995529791 178760082 679597625 148532375 225691260 57344866 868220619 631221407 767492068 945423557 948774754 727914023 736190049 539179277 769218209 159293597 922494665 496407519 894851570 225927936 275284053 730562404 780711053 895740681 973727378 64112501 141156523 700040960 716168136 474665350 626409812 481704167 582456272 310564005 917848072 248508918 405404863 370930521 841457497 749552901 978218981 614697289 908652969 686870629 698832955 804143717 909669979 120874040 377067442 659052529 850787894 404554759 915784452 365035948 826551805 55646626 732108498 801570542 892649169 425566189 782675202 158439712 277458201 500961895 885964949 326608435 702238741 319846432 385695985 7253857 352141923 470458538 827058436 729184142 800013736 485444468 829938323 972632889 998021527 753501724 923291921 508695056 991165455 107736541 901850863 943558328 987659817 10787952 507281960 342341756 413195720 131231356 756080512 980382324 991638493 155079584 609154280 929484432 976122276 764879678 874298593 861584034 998177114 824147733 893132375 603369575 727658391 428134587 773671686 311717622 713825932 422250920 525877892 658038187 675302797 953876027 960559646 634905338 817728286 770357261 840808146 577840842 842559141 287372389 876065294 991563275 999770565 187345497 424461667 936973670 965582016 176987639 929488589 152826188 989269901 25739724 50687660 66721770 319447406 19264472 351553586 133876784 373814771 759094517 768295778 2990651 738816654 506102031 830071471 656064253 819884251 270739148 291481552 734858232 913135333 555256734 746421963 932034070 978633528 422689261 896514376 862418410 927286413 314820293 875945659 582267372 678011643 735433570 944762287 577745903 711054662 606233691 928369295 656494327 886525083 851770130 952484826 662669427 687508113 668506266 779475554 588242158 868459071 289434991 969528505 509235492 683446996 503497170 932076207 435789306 840972212 928108293 977859526 934676089 962989752 987188063 990439928 783209558 953109912 726141542 908172778 616683290 895509001 874866868 939998394 100092523 664724186 771105091 828599174 969229904 992884367 504069887 592867874 363723613 549750860 273138589 755742504 603401058 696988450 5297871 646761893 879013827 879709831 839362143 959332727 531929302 903240826 10636037 35813022 384390472 824940337 821660746 880788814 257376793 505012501 178658515 528344424 455466470 972637399 192951536 456378203 137769321 617862592 832662657 955782852 655751071 957984459 671365502 939451868 16784460 197636830 740400002 834981391 422773284 947896691 474929083 520129450 954667915 966492660 328175119 748169745 459017774 828915860 93997482 274399716 113958823 545308285 515903406 675646912 44665197 108763356 881280862 923193344 636521099 950352876 51030585 883676436 855128546 868259264 194756937 595190893 129603222 941214577 302826593 303259089 676408723 718939653 812360977 942791632 727543605 730746644 243323907 538299883 79817709 555801698 513117970 745446342 545390749 819651725 703423432 760832112 479056240 783267335 418565521 967844475 719520933 964170575 721258499 972886657 408944678 808183251 464664456 833384873 272715751 697476306 258337416 659459382 834203552 876586927 690141890 991681255 53936099 713893078 476243150 918477580 57883805 661187152 745074611 842199455 354905056 846991048 520703603 737709279 998959754 999177095 774581621 786871954 318435957 330928095 40043319 573268250 216878865 726179703 311196767 568115537 165005891 801393750 449196197 897660111 874121111 918814536 239003584 589203596 855029464 960421347 138307479 647701779 746350580 844130381 746715459 804854039 332354456 630464424 189576986 974089213 179963472 682567734 699827736 787579077 765521369 775414590 554064417 931831352 825558577 975199191 617600446 857559944 344095473 619349449 553658732 932179848 986720647 991188490 432774784 540739204 557664787 985171940 412764150 527189836 411491690 880538771 246332006 864725095 525087386 870347756 268113476 302892529 500323915 651051645 946392797 996165233 311064642 433506766 153251055 555650587 347155662 940116247 391306281 891945248 545498512 796856337 3137096 413180768 887957603 936509940 167190945 503400155 513304597 557027945 214955385 279442031 664972129 832774461 46773284 692623675 424491612 778555129 852201161 925524422 904163562 993552929 377240863 423015443 22323040 132034230 281726474 563995354 586420155 956660019 908814818 988924949 62048155 535658819 924973533 989490440 185628511 456810065 666921412 796707525 378454320 399635726 823905902 870204225 365799484 654409072 239919542 284952961 886670812 910197792 269638607 785433297 479012845 814067521 323193473 461664463 111645678 443110280 620230130 655305343 839871676 994488514 408249471 924912861 758441600 945548053 350623456 431919346 637394191 732375445 469159704 633463969 20920448 529330579 237181684 462100664 270100410 828942805 716858818 892892147 23888898 274814260 568785406 698486602 976088123 977742989 630248234 638469515 847505752 986944427 967270031 978246727 805093189 987676711 854959314 942073540 248607325 401140051 789711912 887209808 797166361 882102541 97533617 483879454 816393475 823125294 471788614 754685914 975413521 976354742 462913592 790072618 166403970 631270917 697218820 807490003 807881424 928513418 208527610 996035692 161489968 796226571 961913574 971339680 357487499 962274082 698859632 875880089 421927322 524012257 288386819 776982120 435493883 930372443 254958088 638333770 752223584 966634558 342808439 477451661 667424104 978558622 871412021 995798904 570752034 786176765 894231843 993458118 992832575 993200267 319658260 833935331 869734348 906522196 758596001 976366761 675052593 952616339 643563615 653580448 336250172 553913209 107720812 127861888 457077578 893028492 497447525 780408625 397348339 592752781 110455034 129966342 776688561 837915025 470796403 506653295 6530017 937729824 530391600 795111904 533584205 950216021 747528735 796180244 672962215 967544188 645212599 865935757 451217325 970866145 353112086 531291471 688113277 843981655 413573043 864532363 120451423 912360447 479342773 885505570 522352986 891262984 89767717 517073040 161183157 730736683 90322951 975928074 647327654 948066208 509316401 746078914 973180306 996913563 293676908 632120097 220144564 466618449 456287861 529735986 66418777 590011526 484123485 719939195 106990791 548716181 648831767 890562253 603399373 635706648 14590682 660499501 667313058 792730896 374378004 534105010 147928194 924273121 402292831 885677803 661781687 835716713 298092066 497299276 992430431 996899248 845108015 946742903 207884259 847678200 47881589 759541328 451656343 730758784 5335940 66089074 979488285 990244668 709772556 912095846 483096229 634474978 673134883 717445206 189151332 778808565 360756140 528072545 828999697 913041404 926867503 982003764 907568359 994065247 138028074 972729101 278538347 499471207 15710011 264115108 201548997 993417778 152696716 286950648 887955232 932190357 339150126 712764892 643624522 807980606 274524610 807965171 792577840 875034259 438866590 751433932 922757433 952068740 639292477 986207015 299701098 397872223 516387564 890652676 308668697 748269142 223187944 323882563 423537394 506732522 710880458 954952928 458931414 799118413 915876069 930086996 534565971 760385534 723812585 978702550 202256153 235984449 280210895 380190347 228584081 610365811 51233114 433642067 304544098 661204389 564671425 738716263 769843873 791070404 889854516 912252996 193959737 470993028 519819949 747543393 806443757 946659840 658247123 817383377 536843743 636153745 148424918 720396665 315766884 996371717 603090839 668719864 41879210 562624603 802619105 981084938 443329726 959041777 711151064 849402374 479986997 738251501 344796908 790040971 966384765 992502701 790009282 803300184 860490733 934464024 412266599 617002239 555848768 977089801 96482503 193566513 27296123 333410433 418424304 668432949 579292902 965711687 50888940 920300966 465798980 979281052 182251914 801612495 80726091 489731186 663751946 752126483 898477826 984855675 932833948 938410519 346521386 751176231 878665029 926513126 460153900 890470840 29260695 472669331 819572901 917068203 303013631 337524534 873040858 922545033 52480237 270615793 592356768 789159395 23221427 72917190 532617503 760925573 395952611 972476444 729955179 805494540 613885492 656595373 831557032 974187475 869328379 995973531 461325511 912300499 389438049 774412003 335136599 968983832 631319461 667182009 796925555 856374363 286456092 401389295 431706635 730891982 849026547 998086750 324642458 902677078 164455646 297442979 450221839 669340839 55686513 72799526 257448365 985331632 56396457 455702675 728821247 932577524 51272613 819123298 295359171 389758485 867316989 917412689 570641895 583051616 596617763 928098211 869002787 958695519 11174850 743386265 105168491 131765853 361714379 795993618 884869284 888169941 267426094 640281992 339748985 574882980 523878019 991208163 416708223 959411251 631773742 698504135 75845004 773492264 178812972 665217948 243110803 336924190 470353100 867848380 85876064 380767189 204544578 258133181 495133214 941413289 641625763 693482302 18472136 699516700 524784905 636807513 187175099 348031252 171743410 455377668 301108325 344931975 921160210 986694131 494394229 917271410 750386353 994141169 741246422 990269387 46649447 532308940 917971050 966601211 711805789 815850787 928781262 972372993 567392774 929174632 984625842 993688831 940902759 971094627 65798991 690901663 945739937 981174163 656730940 855707153 435590004 945483807 830714699 875613718 427226438 568410992 445447873 539705020 642084188 786854121 143033519 634937230 687351761 924097162 93392645 229443128 986183431 999016136 431213313 741664784 18672833 417325379 482433240 649063537 796322527 854131619 291536821 599153958 819048879 853899674 193279114 847689927 738946649 962944369 881687731 952528055 590219935 772968725 164887659 258076660 275466330 398309520 379829835 607613761 640225873 740182656 576883573 682251841 923183261 982307652 447279510 786927096 296419695 425987418 598839932 653652712 928808752 943748272 559213298 843302266 298709830 841316851 442912853 593833382 998007305 998728216 543529186 573777753 775605345 826811759 535218214 981160876 812486734 844969191 503182712 652588217 653294079 842311974 615011901 900825276 264267299 882620207 510201959 536051483 13174436 786671864 331001817 813031658 802994932 962833906 544260354 895994457 681978132 874597784 542596624 814796310 954536872 987596978 732770748 754858599 167361757 530657737 469319846 938357752 733135445 964415861 401911636 598034820 345301174 462402804 173388068 274640071 960559737 968135554 79246509 209091244 459835461 929740422 356479150 585779650 313977522 591155243 324126770 501295794 168337080 875057287 212075338 833122408 562037244 847165443 588734737 840572585 402871715 471976682 466354177 527265419 545434966 785707000 317215451 920616781 297581444 437196719 626998464 858177036 555903355 688735912 163264151 921663307 577599836 858559960 747685777 942984160 658554193 825531590 188813487 758810814 270256017 618935225 177739003 219191268 277591297 812343028 564380008 710258734 957108872 958141488 824597763 828372897 7418318 869179064 13412942 435639174 138869250 866160672 670401548 738287822 869817261 912152484 365509082 875431589 891992694 977906910 442484456 616990219 101444171 649284398 60041289 679203526 10866202 937536298 743877198 849942033 177297583 760744017 776919355 824266909 663335534 868595905 809765463 996662175 811305306 903125008 602019730 728309827 523448881 922130176 119697310 734420233 850617010 878668017 646558461 955412596 635390311 958738962 339563926 639976191 980242616 993565610 807714899 814039892 587175839 588215897 202752542 286259191 614799023 960936383 611140962 880964959 558055241 907275159 22430397 791886310 773661036 932642438 313047623 629033156 457914697 800480059 945300845 962103249 536063542 900851760 565347596 965365898 761935829 793450115 10082363 713130600 985486616 990513605 390800106 488514104 996720013 999562016 410141854 883729732 649393240 969793893 884965826 897275993 971691349 978850264 398361097 436318682 679605339 937742588 597401870 920357114 657068755 773810513 824842917 899831444 102728304 745914579 934113669 958227325 308989009 998518639 729776048 916381991 964792816 981409783 722155699 838202505 842605565 923617063 374395692 768049544 995576451 998258026 995030985 999399799 418160624 941302078 466652131 529551507 631034239 770295927 867513575 922107536 459574278 534830748 722976866 744647797 2763296 292070211 682080963 973285916 304516806 923600695 584693411 770681665 246768933 285174647 501171929 749360502 838268691 858117066 325649267 559314290 503436243 833193924 41373256 710128710 978135087 979772568 480762216 876639935 3625408 674838633 696397219 794871587 383947350 899012720 766807287 989512186 646103247 853393052 492440622 771180160 453040310 480364011 174809774 683631498 410330817 464601222 275603109 516681234 607914769 814631684 530944392 953473699 329356516 821306282 877814745 989624791 15745702 419133379 707640631 984599513 415845083 690516358 507206673 685023229 279487230 371461163 948290400 976727100 808807084 868388088 345202551 661511238 218620155 370462411 972897091 974997592 893987614 917290713 839867008 974670318 705015119 887393995 648265832 822370967 396849581 995660328 587663611 941529740 785740791 880910357 974046550 985963429 752937298 995731318 569319370 749885089 849650854 934319925 120259735 906946312 179123111 408863134 930043778 991473706 49655788 196776054 198881261 749262359 870110985 969231665 274617114 386563472 456733612 825943317 163572973 642424897 740942542 960934692 624036199 866615011 540314388 546513228 771258055 881489938 429752402 767659412 55280213 789047038 418572179 806849023 943316595 970383042 825124958 842072052 676718051 850917863 547692573 798125063 261594180 275870109 199627002 503651899 869893799 975278889 525239232 831635407 155630779 568725905 404405377 909425114 452964187 811296159 228218588 867958931 294285597 294340666 505457473 680849538 394723855 496293336 729856299 822607224 857790633 897396374 831461137 841666148 231330226 532638084 404153490 818384258 751998310 878946047 212470730 999495267 835304151 900830896 665724288 728814028 626682458 688760721 807354137 904589337 997366711 998931363 235154549 437357774 239014782 486487649 645553068 870577861 891736833 924669491 891256719 964988681 307276765 930435464 157802010 876066350 64979319 631100221 217382662 423018557 653907841 859870804 891067783 900684853 65903412 898809222 720926503 888323196 835220045 965059206 868730497 902831339 609313499 628493579 591256584 810215599 870050943 998512535 293631597 296634693 966988658 972537446 855873659 894231697 843321897 874402350 652698871 872485971 61783179 171902868 93037562 187357769 223829212 445872475 396138616 463451297 954484460 994196186 887933991 995401734 286193979 373634667 936311211 988656898 49811282 104606961 288942111 796158413 317966595 627918665 405673180 561000577 561970083 918430638 359368004 936104313 980123021 980234895 457167635 566194085 511605949 787014264 37138272 232901173 224649006 306043732 563876848 833757888 205403526 898084882 936568627 969709535 936077258 961815950 452331487 666363158 777031964 985781293 665160541 717155894 864819919 969217484 38523222 248253236 555845676 816968119 833560438 909805785 575607919 842730870 190272137 757213070 745523148 846014538 882106193 888742593 128083837 935354943 850358932 965780940 908200708 989247511 294407158 988722708 578915160 796395883 602734698 878771683 248372469 510012640 100632885 382484647 394248782 553682488 826149639 881593969 947174002 998940331 984406842 994064317 218093213 871789902 655905533 755603168 884286877 980555496 244780816 424676259 328884382 570300808 655848696 841338613 881255541 887984308 69586948 275847301 369572839 688830401 479654969 573016662 797373348 851513809 160885583 977651533 708210240 992203600 541266757 851386346 286359938 770221051 336647788 837112753 258218869 556238956 744608729 756655042 963799771 988446408 261950194 811853225 687258344 954708189 401095623 896316860 14810171 761923402 72434310 643247044 185440605 339878862 895915906 950769318 235998241 461599448 39771552 249546017 749789691 947129866 173218086 953540273 612915792 877447772 214467713 409438688 230478654 982012000 717438551 878018957 446559077 924320059 461286787 565162288 354606039 501738483 763576993 882081208 885123951 949317721 155715931 189740809 633497692 633784812 670252707 982606850 664126981 804693404 793126988 996357904 304139934 695741872 961590740 999311663 60500723 207282313 88886282 366768584 607253284 999933232 199842703 549404968 763325580 901532117 916121695 961385997 577235722 890786969 41504345 59921744 434862684 494219757 656637266 915639848 274044303 890900442 488224543 953624227 497428091 971843646 900734709 934445926 107940293 313142445 960312509 962804215 952003646 990403237 123738656 866541151 118653949 989348940 695260590 863769848 416269564 846202300 966730652 997696974 491766249 887410180 733367216 788069012 392666018 916237664 442934142 671714979 397637472 782045807 229941680 691591855 540669341 750222290 494961290 642881584 539067270 648106151 27422235 304949886 284466610 835216979 402857644 745300093 994268582 995819349 702768668 801642892 861726812 939650926 523820401 797136484 23762459 271008567 702822332 942688708 742597235 996637963 234114949 859984141 12111772 237697296 422951690 643594465 707949262 782832501 447972458 885146147 937044573 947728971 235982803 909653400 586723388 966768630 760108975 856083477 123583689 741134445 935796317 938364387 548967584 603353281 527922035 887764420 275624814 974351899 430277869 697408357 385304730 593318086 951920823 985641531 500071321 691635399 947663178 979304000 137514154 294917926 458149840 692148765 944640158 952046012 494372500 801747148 833257096 997517322 676493226 713311792 820440722 853873030 668607554 755412230 824241061 993099634 738100764 898940348 680166861 916251271 746561533 934645044 170874445 915710686 169959887 498241036 806158835 991436050 638345620 799063568 107192037 862510459 194689938 645954314 299772553 846896215 432545037 949736238 621000915 850852707 22747071 912009963 51166614 438137480 92639436 400583492 426900953 501946400 698043909 749947628 909983717 969792983 296613564 995649530 988958776 993459385 923149906 979843752 15894562 913707955 305755386 403631797 541842337 859911174 463147803 841379962 301327678 957017007 586881981 723605031 814360030 966827019 279118551 539026009 480274961 729403783 290602666 737464297 226822450 613770707 145950773 614387395 289650258 651778972 112948538 625621820 62417486 248873158 695019268 771444345 200035772 859606353 775210569 925089105 26919505 227488880 149560942 248221639 23418059 682750097 107465280 819179617 785087117 934009831 214144999 876050212 499628061 913523667 516393409 551890673 980252552 998512794 853781955 966445117 1307108 219147361 764113378 980056877 998880394 999188580 87674480 202254961 6154266 769001550 19713650 894876939 866192299 971036334 687716929 908433529 398665893 511597272 30247272 452637392 898333294 946305175 238118018 306383562 688199175 811649680 880837313 956076897 420978747 897358638 135480740 590167465 360994196 426194744 833782269 958427163 397098632 905082079 264229498 412902788 890351880 948768649 118646161 295902030 20061640 885244154 237480352 874401866 260643258 776628632 82055159 540573806 950147400 960891490 67964089 335959325 636073816 800162409 10292990 384905421 567303742 794866077 841440440 978132939 944181078 948687313 870997816 920333984 982810033 994750497 968183421 991893624 45854629 113620331 433469139 571314004 527714137 990805714 787007350 866648963 278898725 501851723 876051268 899944697 787352604 845493929 865956887 891262072 281060664 892554236 650088545 749504439 66981220 481978886 162208492 851081499 574275193 574908596 859862331 990743854 548183231 689064479 453629944 860194855 26501962 307749033 662360028 700237977 468406684 977769894 762441350 929994998 322879141 403695585 7673060 721067609 686630240 870304776 935772081 939154154 756630269 916010454 600631922 812683532 389311847 909499591 960441948 963005180 326779703 647400198 378974504 750869735 928037876 978952052 363856485 587551709 513285087 879936435 679931984 739108110 927213219 981144778 453274410 699041179 648455361 883703611 364070137 841457009 699858125 789470718 866053380 875927907 572570664 769932556 991964292 995028764 869896232 920510411 827635229 859738658 560465903 806534697 366886850 449848654 134986362 401932314 809372362 973255849 813166905 816289117 700860153 811320072 687769344 875440579 992888840 994420553 500734214 841779397 881177851 919606719 869836315 931363533 394787857 465553928 963366802 967278883 41028534 53954014 860868260 952257135 408899862 787280405 844517365 879347557 296863150 425953569 190782079 232266233 836421098 922479086 381836110 954665451 863572389 915676160 471398342 476582335 966814373 985579341 84634912 462276259 882555861 974833570 756804619 969636058 925563773 972613271 521507397 913889296 507989929 733230840 366667225 895601058 719631200 944471873 963078589 980252952 638302689 649557056 865942211 917727588 83468119 960203469 397220718 607851382 634829987 715475969 56453276 114014012 385055870 563339482 884183555 980780328 57393530 471635838 136926305 322339699 306534473 512882803 286951851 696575613 442791113 582728101 401039289 976505378 929082888 974700124 273460726 562968957 586599923 807535435 93892332 455477724 267227760 438388213 940737611 968706664 409467475 956671140 90666927 752810802 161177453 220143542 483851377 490388689 574720023 944206536 834624662 942920216 525485948 818200134 625892359 976107373 751320390 843223840 457071007 819944952 575880758 958063465 472885739 864762596 612555690 867626672 360757936 556753894 445010322 677563956 895283553 969337902 794700085 880749722 288060370 349969738 294852426 889414508 925766039 946830819 991551963 992998908 134172079 259501689 699216248 887345456 289050464 858199903 833130899 835617671 272431857 478837977 995478760 997906931 245579952 992468576 907874830 999166701 429092676 432309402 312876762 607305087 999316387 999711425 132173144 291378007 733423499 759122505 461322790 717863978 435761800 507998553 752146010 992035257 262694125 759632149 290754940 351505172 399941714 997224534 711596061 780673100 578445099 857952070 615006217 624861399 169287021 659613637 850354402 997721074 888364665 949185465 708920132 712677596 410318114 413783551 775007345 783923307 734613191 928727903 561044694 962236914 371533855 909528288 371501901 875914539 114058845 930614645 570553908 743572866 209701677 970383355 59046756 431978402 653734551 935598071 206119328 549408852 191405562 869750210 645933511 725417548 359709380 389746799 111662507 810234282 197355257 369989408 619981146 893795536 981629060 992905960 130943054 888233058 129495574 696345036 3866694 288967569 608097381 645932870 989740281 995701851 4482662 338024444 528099513 904607643 272964317 786625944 8915843 421176777 256767978 555295389 552543911 951190059 641717806 736876659 545342420 974249289 60582437 876128454 397064829 570931844 415261230 962492342 278914566 323708385 422508001 562012383 142177354 500900621 940650826 941344250 511869315 810201627 419676676 962954591 219432510 474283983 519858125 801668175 426752190 759612219 186789592 459954826 199083368 955391257 719528380 917256846 820018579 938240428 948221093 958028121 964522432 967115943 140752567 875704968 829842506 930760889 691021800 820448635 518071894 896477659 913197758 999985648 462885968 950628464 962800989 991332733 315388077 353172817 74613770 303887487 980514155 992255037 966092301 966149847 711900317 957060855 143117574 341226293 524537409 544040737 818943359 959676114 865999908 956525271 553419897 997387242 895147202 990208221 790017329 961448490 695454803 832140209 630303921 960987777 341118933 840272279 587413486 831330384 857729461 998927285 15409936 981784185 931205570 996560960 787752943 859521524 689697106 839199089 859244261 869448384 499333118 866013598 519681846 572778036 799202482 910966481 372740609 377533610 867590189 952300363 725891443 879224519 933191873 999691026 289612987 892823990 396921433 431730276 975005455 976390361 265032321 361272039 549511382 726011895 677811673 720756061 196174429 550631270 86875565 632008019 474902073 966256349 51967871 645941930 67202524 362155801 803301839 993586964 587751225 948383180 10168216 490451730 23871632 938440054 394052122 979661527 939876104 943677061 943910849 958076567 36301765 488476387 965462076 984361652 631148920 637755637 650469855 962957461 884372449 975580390 251357174 378132153 261218069 937005112 314195447 902537062 77592893 231393582 629206982 864048131 468381613 686113500 47606222 238591012 73145586 130311912 625234160 922900915 669499953 796693997 695798822 955625322 204126735 475431808 648857530 759513443 250572086 938832648 920958260 967239726 345806815 925645814 479271026 898031561 384100703 738232019 613143791 808903436 927263366 970858779 254118252 983507670 882656544 915050117 953860489 992638867 516142332 533374521 426232282 933169422 342838944 848616193 826083186 926942816 458233534 880182986 13325947 225219467 486119731 685295889 567007816 581790765 305124163 784828706 589681235 926032143 85252820 757150207 145569113 160962878 849520296 883614138 186307163 810377962 527706207 792792523 965110641 976659050 706538754 854665561 604536612 796847059 8420407 663532423 55891967 115866812 729931462 864489015 843641873 878392073 780270157 873333504 585394803 640093401 530744437 580841626 685312909 821136642 400182495 509775511 478233359 549607105 519803965 761368172 202512655 295125145 365306079 434867625 729478967 930024304 962033709 977181331 467443109 585521411 123205960 778508430 999088103 999668388 784193570 926081862 682292408 734506800 585006177 749616748 842178141 986410834 716171937 954736416 144131495 743608005 158797000 418934418 604053869 798841777 250347877 611601645 781009829 958239548 45659847 216333770 628222578 812478953 347367250 625487907 611509591 838915167 197934430 390949679 293989817 984700765 483770661 920167365 65911937 743651150 585653484 893054228 259047787 989980725 197965434 829352439 790994799 912849863 2182437 148668914 188653170 558227760 559264883 821849374 818138763 956901109 233524655 600789910 416037132 635058970 362765444 951813473 404144161 571354643 397431182 903143197 632077195 965094626 301530475 649263565 276005007 702524964 415473947 721228674 784579977 910010187 32354808 994766912 995803785 996477475 49516813 198959528 690866402 990318122 106605502 552954135 211865291 577363928 332091051 482934548 497128541 593353999 898983789 981746017 885288469 987384990 638831486 710471059 280565333 540572057 639111520 931546034 588279902 946155769 761776476 971291321 449674568 521789407 741724088 906959647 935789086 962357821 287720911 553683442 499421314 575338398 195856602 412700464 828267207 981896233 171010902 599438147 625866303 794399444 392140647 775496966 157048379 344439903 68708850 149353547 718487656 846342389 373772945 692385105 746033214 750509002 711961143 728795079 123544902 336565865 610581288 613747883 262933160 874129964 606998236 901875056 131599069 837133048 371891493 474528737 494024363 597987435 867485578 885903573 105825743 683324048 519970560 575682543 637027755 743758762 557905449 985305374 998122065 999428441 255033189 889613506 242852625 428269454 696491681 857223577 87215242 476737037 931747387 969455980 945221355 990529918 445291614 525805789 474909860 771403989 91105588 929742466 246504010 933761963 474275101 762092170 216639459 639676967 122339851 229486983 384555203 629190934 612259407 876362338 29765082 183917269 747298074 937698825 664560969 767068393 86363452 590790749 450377198 516906597 168532151 477211610 315637516 807911075 754409936 982280431 373321666 464678101 575606819 713924932 518814392 610609511 83068415 904965201 944914919 954767749 708526955 971229716 323197715 333396659 768753355 804506997 796907703 844584515 884742546 941372446 668280235 984166143 388775134 466277929 888654451 979644349 807373865 884675210 967990604 981124995 31083327 990511665 223296756 624718337 995932300 997784864 840968956 892423038 937974871 975364206 35247731 780641913 313636888 894227692 874631587 884079467 640797452 911801599 924784641 960560556 98790042 547037168 542325913 878347624 193245883 442598151 482431203 517295014 523305781 880304301 301304171 787078268 47934884 773076720 93285174 478405509 655810862 714438292 452496836 669395737 436509729 843025819 997076530 999148700 622597558 728748278 377860104 594014315 456807499 581064064 602098855 708288697 435967984 788136540 861279973 882068378 318002307 473155350 634463423 931271775 692297902 795730226 756469863 762068631 655827390 812094287 139237099 684559639 779535761 827644177 603101002 674609965 430790959 987248221 497142247 556636499 197475114 942403665 828571069 933040758 812904653 839237749 310273459 728937413 861462865 924346994 938407531 966478379 908414405 966556324 754644216 895121040 930160311 932602465 145581413 983001091 801931909 970637091 347498527 818715692 264170317 637005055 931516140 949818337 964340354 976716291 25147719 882122013 302491492 639225607 53866158 430973925 80855465 499519961 665536067 964110317 746744631 852717631 749289453 762893712 606208867 977344671 944305471 969522744 423130002 914413149 697196528 703033074 113740041 502568696 589402203 900951309 513536399 943502437 392508521 462433592 905757628 950610128 474346596 750123188 816517373 979770717 692248247 975610267 314169415 797084081 876367877 952888533 854661021 902802932 345638669 985277831 825167163 897672752 793779840 837219820 538183240 969824223 781430237 875239453 864876920 976327830 661980260 940982501 779466481 806480311 930042477 960288018 746234552 993242485 791079667 983123693 822035835 966998837 775217804 852984307 258774600 554627736 968066853 992643627 276478132 897437058 474441910 778675177 738910381 883680187 510952505 703014322 17317433 386490404 490680440 873116070 252042370 452039037 894859968 915326963 687243444 793581382 806628116 808899317 911601339 982408723 689152180 833742260 501491032 683024082 682144629 990187308 176508024 508966367 539326702 916964631 152128513 585413295 503701531 951196779 801727263 961762574 533511077 716544299 647137450 698998160 895350986 959691223 376111230 455183957 459380371 584875232 318693583 597492936 485456198 695494700 333163639 623589268 18954978 922706884 525525571 810393421 787514047 951647673 573105886 681311326 692794354 954264009 216149913 932049831 148389272 886089757 152091294 193206824 886023840 953530935 561742000 828442911 836355132 874146300 857886597 930355079 347926382 818097842 577275857 824282396 224873919 548372915 517394926 915643678 440809748 856348080 229608346 791260155 504346646 670797443 865319443 918860013 99730815 443228728 784407902 944603435 374440374 678501730 87272534 404735651 974015934 979526325 156727317 754442975 134326300 812340850 96736121 664811946 18277212 880798668 152715693 237555823 413691832 483753326 421266954 623044369 970938562 998784678 54823053 989026671 409475911 770192807 172165879 301413140 556761287 797668800 537918122 544642776 591717882 978382182 214758660 953841288 117298152 950744129 801454428 889988057 360414367 962039839 688396172 819914105 483148027 485421915 166186251 752244229 268019672 749773547 673532976 802346629 577581324 988459613 432883300 824120929 967466286 986942191 623477925 993616581 584877676 698654385 230966898 550823731 914795465 978528779 698127552 817816332 358032360 868157985 6967120 368399694 855530330 864314874 359967880 392867697 120852726 954745793 705197707 888021229 196174437 206900886 592398386 963113840 56510366 422116726 437280243 483477653 875781455 888625831 840023905 886273724 806063948 953671987 656843808 760660914 119906151 217458227 979699239 983651234 862908376 902593195 610924319 859398773 86809704 944424685 866132632 919054604 508247787 637155212 301186341 958401044 45486290 229402868 544805128 616372281 200191831 587172821 281388948 825916328 451571022 935944064 191256808 925522655 42855841 657338124 128958998 402622521 118542997 470569376 270612875 958951047 963207260 986443105 555294762 837262349 572070420 800208690 331484312 856473854 44995531 703307239 414553753 783520934 830038248 846351820 151874823 773704038 870737097 967179049 485351604 951582618 714252450 743472819 784737468 931680771 387902357 986441490 666098769 852143912 956964655 975318945 963958952 998529863 413692641 450649612 620151053 768760252 446578376 888053865 582423177 707503283 32696647 810236610 637191231 953709062 788548651 921825911 609293879 773068872 958463538 961506716 62550307 821616257 781002907 862344336 535223175 899162959 8861166 444561809 869007385 921051994 86086385 327477721 994979707 997571367 606163146 871311813 897662287 902428063 277946854 354082528 324483331 731658120 763936632 845494382 114210375 361020412 570018560 833349277 1846155 388121899 506468810 803692767 521648524 869338653 685013562 780467719 201766605 754787887 767286085 814883385 140073232 717395819 680725797 903540620 282080613 633567633 398979404 713787687 471511296 943774263 709303340 785692234 921379578 991106168 569948412 705993949 258819101 330204485 854036333 925526827 988913278 990979875 119498551 523811427 149908190 989958029 602169530 675519005 662395182 910583663 654036749 996499027 232603731 729530154 915564272 943078487 352507730 428217248 845067253 889917234 396030096 623225013 410213205 435699125 945305549 981102992 979053556 987524960 811213843 826373269 98265899 484156684 164126383 953431829 936266484 953061936 497934908 782519787 311448022 423787936 514002426 596772723 745052832 879662878 963487844 996878872 709181030 731826485 976051301 977757182 791573479 990013889 19657336 772079150 778481584 952782058 580524480 590901604 156953705 773182052 132365739 280646041 498320865 761234528 114937976 738445691 212138906 327629763 637506895 826780974 161345035 259402631 756156568 814918051 96716032 552626459 418631488 614916587 480107020 808062495 44940385 527128729 625599286 988745532 798304631 804291820 354208191 665816986 687078382 864433150 88609643 620921089 655549171 974625769 739309127 815884275 367087351 714677578 427342476 838169893 944202985 996876165 61367136 666996130 429029506 802255470 334752359 767122828 292619522 498766583 378755370 569849335 102384978 488461382 112804904 446602119 577102249 622032166 422249630 927450186 643145611 673946817 292021552 743169166 837361152 838715346 505157827 514985505 857674227 963141933 109345579 740156643 958020330 990928082 548271610 916037928 930021154 995437732 720394819 977233423 361795353 770325806 149709027 940421494 493502022 601298012 825795515 933764701 633109102 990967185 584775965 686235354 277196855 968516237 873693846 931897383 94324956 568173818 255180127 633109604 816740485 966729941 654734526 688012079 435083329 705969829 541319756 770282754 761640550 917467443 128879499 744671735 130489641 944754948 551724602 982125622 622068904 777593542 641782365 669334585 335002136 534928414 404477648 856301448 325553282 622425130 472558714 614235973 873644415 985661505 173417174 195388227 141424913 664984538 591260785 677928146 264271342 402178919 723760074 944905162 853479749 892120489 133238932 596377508 553881998 702584441 539668207 856365194 712169625 830135748 323084730 932126347 879590592 926401529 255459045 779652997 90851067 822435561 420372718 527180156 351186851 816535737 381572716 979737744 982903916 990420700 691437027 939560856 504909121 615232394 969782880 985928131 492422823 715805338 864637700 898012696 471722477 858472160 129475438 790425239 639825083 738258957 496706776 538208986 723069305 906274142 259402905 324643796 635036929 858095586 846657876 985660071 759380420 977793500 105779036 655572539 268939819 821223698 487175920 518232310 476752646 496161839 922248018 986407512 331744809 815919885 93943245 512846687 377510483 689546587 155326852 967039743 563574333 874795684 667895466 756481921 734925485 994809670 194013519 394489108 923912 405284030 90935620 267991337 385050059 995931501 522240847 840108607 734906804 923117465 779532940 938765778 784443312 864961718 186084264 718993087 196023351 445359226 124389264 294705947 308315355 505038607 464852024 855228349 593757507 845614448 544081043 685368200 481028869 730103445 776150189 780810865 899518743 901850427 582391626 709869530 164738826 485890791 641350377 748391312 999176003 999451713 385724482 948108774 940559100 998574871 96975649 887325552 738197833 749439033 613736636 767212682 174479490 680702767 201455064 889250499 276619570 895357707 618238077 791590389 772070061 875860700 727128356 886534098 906241932 988867018 581459094 686469377 137006189 868707826 567702316 628640468 319272738 656916216 31374788 318457416 879147073 989229679 240900076 689123336 431625743 883881052 249108049 272585425 898165924 909957003 475007786 774826272 880679617 949834842 111241172 928102362 452570144 898743946 146197870 796803273 44556773 727277620 109421380 686290638 165490231 252008957 715389536 995072562 210620283 327955874 188246999 814938559 167720615 787516919 200524484 884416419 753036906 782093103 994713203 999111408 328907214 926600521 215187306 522378155 591640264 734912829 625579264 631275726 282923130 505355725 138586301 334543407 961316288 974074450 174961874 372901152 629529271 674833207 663442167 771528281 8508840 368577193 947272559 963471748 477659718 960124316 958939766 984957131 383846759 516123254 764460840 880937502 165449195 669190600 793576427 887629243 340831632 485692736 64292245 578032361 694161241 944755373 679558918 769465606 780562612 995541166 38386911 188808022 992515494 994899276 421810296 747058167 589673140 957497840 170979130 182947107 245795936 524503211 936230120 990021871 253517281 814550882 386708342 557871425 922568818 980816203 94707168 909779265 986647646 996614536 962801079 968077046 285517319 972738870 73669365 738127451 588758544 893027265 913352302 977232731 538881516 804484873 659742550 834415545 477842578 878578717 117061271 325428901 442458767 917468654 558659365 840576923 240674750 678593002 887415588 949029050 16936869 59511726 57688111 157588545 837526852 881379444 696577934 994192899 100791799 494591511 326584352 453502935 845925473 890899504 672127671 731619196 75831144 698632787 735414274 783433411 391324817 743071274 638778642 944960497 742921876 759779087 343310927 822242975 701193506 970636351 985617883 992036785 31490867 102089911 526190717 987280042 155564171 370911818 48817836 63722334 469874988 801413738 957302128 995522339 702474755 880366303 878461548 937705854 449200804 959723932 294393380 872311167 583795506 757181965 346739685 347711345 673758795 982321587 24718924 889662758 698384437 996326567 6239955 52405874 993552038 998292483 723768562 927727271 814341197 873400345 653143880 771455223 828310989 915208232 367113396 859289460 650518065 828181296 702399582 759919281 849752155 883671182 975986474 976991361 152062084 984341148 682990301 978326424 834649186 855146505 415603023 696730784 304100484 651113856 379842382 391247172 902560653 998276382 927986475 928162427 809336470 913847321 83314645 838879320 940109813 957334901 286879480 655126281 251272851 263478466 760978745 977896099 372201775 644693379 504047639 700422700 216841067 874347767 608231521 716338176 614547926 869406787 319719664 738207944 809357814 925416259 462304242 679937354 158798561 851659782 913412367 926476414 352643050 368840986 320404786 950420181 888419646 977491320 60814216 435547149 409799545 558199045 571817221 641540866 269899038 584662556 583343325 814130574 412530513 749292556 402682117 686887236 970095478 996919703 569773133 702221313 119135149 664978606 463511828 938275182 488677883 720764723 321770822 885789348 334237552 451212908 338902894 899639918 877566844 964367937 805921839 976900518 378087682 858353336 155801458 701450962 611462511 964301248 741267496 873501796 28628436 145967614 941718456 970150509 942748498 956580311 820381144 970944019 998855182 999022128 958961667 973572197 173770216 296676743 724703140 744386580 869201580 928483835 652039941 693518773 990711883 995337613 399908972 498018854 867734424 922984943 61890522 944681719 986238232 991079609 748751609 799538875 29766472 58333460 609115674 646588454 520178698 672369606 133089508 338994287 275444075 377800842 816050016 931156939 925468088 936936283 986974952 995605425 402867180 834999372 292442530 576833444 541136853 956960386 453839774 742056969 595813881 795928038 687684588 847611613 171740154 341400887 573351645 892368550 288368076 813424494 642059019 719240203 31171172 107064787 762856250 785766233 882131352 901691164 650018099 783731161 769431654 904558608 836422098 850871142 953078303 969496371 521323608 533342089 795896434 874401813 529645543 776372943 652626616 797542842 273458659 790587978 558447138 748966948 445247051 646980273 394120879 491729122 32340392 211886521 440882538 462728679 45337323 866898374 479530734 488767218 263946400 743405839 138227231 768209008 240112940 926004477 916062511 995600963 361120977 899971762 850805829 916953815 44315712 61990024 501629603 937608703 147058516 636182412 298892909 755113528 979387390 981437461 475042061 872256718 91464452 462576905 402592947 546192291 427423952 606191923 932816213 937784729 746455948 917284168 390688397 835272336 808812328 890713826 56393389 649609492 494340038 707665597 656917669 847318391 835761241 911862719 710560781 727074725 924551000 997776190 800512267 916867738 665399458 852271710 985358574 989443741 863573065 892624064 345969088 416317339 751016673 950202084 848025009 876950088 767112346 945465899 241119855 973838555 577638671 730142797 971054185 995197445 506490965 549404308 74265311 246609547 896776555 968741488 141606717 839674714 246274949 350067711 652081524 957239469 793410409 967076970 726867824 994674758 178518901 853730955 71574295 545515455 706063867 812316465 485992233 806075699 757687376 894011174 21470969 70645637 64964954 804906138 216668404 805238816 865582653 882306363 641864148 795582608 321485201 331264576 619959907 714820684 868653924 948166160 899677836 952061859 3494428 492293056 733731451 816275192 374505238 987949505 19237118 859032669 49983238 155998636 60921475 912090475 809319082 886084605 21003314 118050652 759084767 924336692 171393898 601168644 269022407 674118137 140478687 847938977 301600422 944011956 536553180 943561261 476188006 557518732 738324584 959337291 570378812 865869771 187233211 619142432 128131027 304605068 710558145 820455813 87761019 949835692 884930294 964936876 547438781 936918567 583261617 951284879 181943384 205913256 128533603 995530551 801050687 845082949 82256333 954633603 19827148 24848145 102526557 869992220 185067398 603769382 917943437 996999778 926315607 982978818 143599708 902071098 567136810 877599817 200191702 861527205 64941628 118417780 143849229 712714622 149234201 281285898 953588536 997193141 310208627 776058210 767531962 904574867 270321934 866533068 555762164 684524681 307251183 725294517 883477274 896120056 713258346 873603443 635430218 747620126 574633207 643977224 323494817 948352576 609314091 810594124 81282904 162054614 250769622 514107800 764415080 890184331 183006148 520136596 994835984 995131471 32610358 589832729 341447771 398143085 1873626 483611942 788965213 924055620 686608919 718493196 103144638 725056363 429757835 747196575 236413600 332915600 795128729 854834503 982298434 988416768 74509603 809132208 949692623 960601347 673449840 891885796 775928869 806257999 821461699 873928938 98832072 359990122 304321682 587577244 838777769 888986613 959998487 966991555 86146620 677695166 71577695 759370251 817931940 845855465 547867601 569484183 883048532 993788691 809397049 839388245 237750334 833739563 902350305 941003763 338837563 612046431 627026384 744408425 889254025 905431048 568349712 979149575 925144386 974934783 285327581 503500975 229729705 737162809 174479958 923599119 256055401 803941363 843522281 964414286 893775408 962947805 435638281 653095665 540282587 604499051 104116534 556871925 455107821 736708183 273017452 645837141 68524464 399759994 952148825 985972911 279655351 622635318 74579339 598343834 228257885 677624937 720815963 761988646 603868957 996235550 182951375 213893239 488514545 810067728 913312321 945540357 6378009 219336289 757069283 884959512 791749098 988706788 556570735 699999304 292598429 591370636 829846532 949073959 497391771 818014991 37931710 358993789 32453656 568445494 409622146 855917249 430442922 733173229 624443052 743912261 86597510 328513378 634325763 984149936 703963114 723515345 820263600 912344082 816488731 925181858 769307690 774252750 787037660 880664502 110686650 949856691 169905903 599884245 452518006 751315166 318451880 727493376 786138171 975538737 384427763 555230115 42493793 622287657 750017134 809314269 434196677 485518038 383173460 719659488 488953168 602804376 434013024 808845562 136843475 361427310 382376757 509445772 571934910 705152759 488574915 723667951 836749792 956398160 730967249 800013128 61862062 409568503 195029383 425434209 491503982 547956423 213865462 525974354 280080329 643434186 60978870 830991018 880082054 952665433 599382562 650191443 35950501 123113916 339215861 507920233 554414632 668706459 861400046 865289144 528496226 875453338 613978166 996599343 467656172 482316856 57519565 893053540 646072268 908448135 865628433 966879883 589680606 601000883 502211411 958056942 937305008 990836130 444140253 447449427 540602850 791657405 973451454 995670203 408243120 766973279 222747087 319312752 540473553 943113776 486124306 845982116 570129584 576728258 706610935 948334320 787129996 940688946 401514068 864560388 486111819 649806658 326884805 672880511 465292708 470635231 244171711 261437852 348082963 825137230 362718910 735072714 995623072 998963872 326378036 340914771 232471125 509991763 959013727 978674177 51620211 891802439 59940743 704232108 299897138 692289084 185282474 680454474 799843363 901762268 949870395 993957060 641644245 653103211 315529676 698666654 57632368 411295100 596211448 682399344 884262903 919124756 471820497 578256543 508576758 739743348 630895208 954174968 94112967 400815769 916401955 999355878 784099754 933396150 508653566 862347570 888443074 963380726 88615073 323380956 836503156 852720346 779009162 786482631 877836260 921543672 215694293 748834842 285487177 816675286 429587168 582037750 462446538 484672037 189275968 574001506 188734727 613678366 750507961 873480902 14121165 439944243 782576164 971370988 196454234 342171612 18127361 252903775 152019691 445875488 489777212 719449313 554465797 897908123 683396960 916102901 30321493 951130962 644101487 936382231 895918354 972732080 207715762 468752052 387935099 433486565 792401732 852177682 474948629 942391779 364444686 537816460 605887364 762447326 821336467 892708181 283541303 862797095 290280134 478719865 619629395 681553973 396494181 589044001 22461134 130780027 757108321 982551407 442593649 474911587 80301235 160116808 683037789 921116324 549395734 656294665 168750454 266004807 898585924 932206335 303920595 524927844 79525498 662680525 878011508 977489628 561001417 847557008 603782317 706724559 59842479 182526738 793862944 794220854 165591150 174328682 828852662 942092945 159613790 722166596 263508383 880119857 31925576 387777139 974001069 974474317 877311382 897559376 549633844 601362913 638814745 676537207 483919391 887131245 999010158 999908081 42143100 569178186 45192090 779410103 14520135 621318366 18168972 893676794 44961565 374210385 612562854 821734646 807266550 972931861 829458888 948983278 66135390 66281592 577193775 939495877 234384934 371782029 267983310 833115276 7562811 968506695 480592219 691295746 73863303 748087029 414035835 747427683 896528411 935325761 35461986 370560353 403914773 763869629 965459405 977785215 657679449 685822841 366512360 722216228 131532185 304887159 698923034 959153674 294482118 908272576 602465498 725902354 602293149 704205354 759739483 900717905 990606509 995630598 774938855 903659056 334763769 968648581 100646290 341361859 258790463 554452278 517534413 632864346 937657135 941122307 546380549 601915366 410104405 459446782 372626645 786490068 361261584 398235228 863099999 997506348 77931096 164134204 857135388 983438549 235599284 509375612 67081373 337565580 440477837 741664534 433136426 528495522 722986287 846996678 652393129 852534686 713754261 869564830 329117341 927695855 228214107 578094928 18357476 140992588 944741025 957499098 264004726 875494142 351801470 546656900 58646643 348799832 644397108 989399939 168444894 427908881 462307242 614768921 314099845 544100182 726834444 861950318 305236811 706018268 794008112 879837599 435094422 456528539 54681818 213880326 213304491 753729101 252257420 394782833 32067604 178626718 634966803 907978377 879061600 887659924 113382504 183747038 660315029 766364211 780061331 878136604 670272617 835604257 81254270 889228751 405263033 498618660 913715310 934982534 70729792 632362722 372658668 970385280 541969501 976048105 167324309 546503170 390002901 437379092 176839776 887963064 822911415 998750835 66938763 383798979 388524367 975688537 808004060 862141952 994819465 996352357 93755502 950862883 980478305 999244574 115778638 500472871 267796450 673926642 955886373 985791775 871499155 910357268 576063861 580653363 436265152 476234089 587388437 655632948 885984899 970620983 531952676 622697395 25700539 754785659 824004013 990116239 246743362 765474773 464266533 685903675 901712435 961950949 458395118 707466540 777832537 980632077 807731346 899559496 427900124 537278573 620930367 800604219 301804929 687329990 25703878 124116491 714546678 806772598 133493834 862613396 774186561 868028742 219873550 939564722 89322678 90590955 750493119 808295455 675170148 705332007 964760398 987629154 150744153 289675195 447367232 460244946 246994221 691855104 607014124 933865665 902098114 915930134 611907764 763337663 774306211 792071264 1276492 819800662 829733523 959356747 95948418 115577826 207095647 719299205 446826067 961393470 740771657 838304159 127529359 515839724 463305544 748241584 964593824 991678004 181150477 828788480 228554828 572484554 116044664 211145969 314462404 580186587 17911297 431154622 852237782 937216707 581454058 796184929 125700998 586769242 390596956 444732420 942109884 944765625 675880453 759555131 579122270 923701419 879582300 902107419 311802499 326431510 698535593 733110534 484900516 512793822 363971272 441022644 578665388 643719242 151275087 938129000 875877495 888153036 647459441 776623566 780835271 945850413 94845759 359743868 350146948 504005553 660010471 908274237 109598988 390547481 957864083 991603992 453194589 793966547 702508344 849684825 776121744 899522400 578979971 646704313 52706163 772373957 955802980 992903995 142400903 666729927 829124823 942507053 293157169 982396309 738223690 919725056 934779420 970735518 462454443 496300751 721322267 828711901 427019131 447930682 53090328 206320358 796725344 939000351 209860616 637006131 391755920 932516782 748691480 841934675 972482814 994466590 36377525 616282352 608361892 974292228 525484955 989958705 524151126 934162952 399244733 693421330 666471750 667381007 15616325 507276363 929131144 991433160 959077504 994207090 110060685 703621312 711094188 941541244 231311151 939877287 415336834 815961407 858550414 936578887 720071514 922229887 583863607 776555571 365976573 634232119 717347376 909825753 551719028 770299886 374590771 752359089 603209934 682552888 746230053 826061177 860037574 959028941 697687191 945125685 658749911 950157079 681087825 803974593 118272169 474748250 756709685 881463895 341072292 594314618 571298345 836168093 322778027 368805837 104001789 431887092 128249329 201051600 569027520 616193245 184793836 347537807 329212814 957254876 252189230 298827257 396045279 716747945 323754409 793788963 487378063 717604948 111030457 193641422 786382179 998506757 599251407 703558637 202908859 588602829 594784176 901018503 312222917 345537531 930985900 941107788 151756014 567203541 70610532 869704975 177514772 471782685 489907453 560586276 581411494 662905126 491396590 681051768 663154091 819862705 603244546 918838731 898848436 976753880 188339079 640963090 440547194 964381408 703718366 910653961 501532629 999627124 927748612 943105464 659787062 893225683 66573935 651125613 657340552 832085103 525033465 533638170 582307752 760037929 663766385 979600855 977798982 983317024 849610993 945892531 791819238 943238120 995645626 998036019 240196957 532159015 514423553 709349365 495641509 751212282 334908062 575241287 57580295 562874852 672499914 740295038 65599018 786030194 110642484 233663480 538097412 832324898 235660889 287201886 724516304 925959844 581375270 771015042 779575764 973042981 912499453 916994100 761508953 763827758 166383570 870020660 16532145 986286608 233561357 991026022 552126832 915067424 137969485 233672859 11652975 428717233 280506721 426234521 509342313 535123000 532469874 677473178 273833872 859695566 626819079 917975194 738177947 927784384 216235518 404711856 291599285 694370350 414481578 959114810 493539857 580635645 170347706 524536883 866371517 899633106 164759506 531329225 89992264 848443715 420500143 657419313 286371423 339864795 843296935 968737904 752080159 967850376 285167300 756033046 581702674 899594447 328472130 693244706 578814916 776892749 100623079 104119623 507103452 689055717 748936147 889212029 59625171 711642158 505676930 956293131 902602718 987741119 772581424 892300631 376821807 650759777 472203410 727187539 498634782 670255534 800260483 974297986 258128564 745796544 417616239 500013523 817041633 994839215 78889945 124294368 205629510 220713140 750063540 890670134 507136906 558698951 841000577 947304590 896604210 947890638 763415989 850941261 198577368 961827417 139365948 338324181 3140172 480888269 603208894 641246464 781462604 813580289 188576242 498101948 155894134 286763119 261414973 719794304 267609008 594891861 930475645 959797521 265583457 894438974 544516975 850681342 362313085 872350869 426796831 903256964 436735118 949775361 488955533 526668979 414753783 859320935 345479821 960281406 808494906 892057086 54776319 680187912 89085675 769680092 533870847 889333845 406952585 843719042 441932932 684161437 388451198 844270842 116947463 593809699 478690375 675108770 238226486 262711636 935058349 941681819 488218130 495898693 914976310 944245840 566645150 815667165 557760876 917782736 509698440 904173873 292087327 463523900 297844775 620645626 349315647 869936376 579728694 860525480 115189872 758452031 967259594 978789693 277877555 620860247 926536949 971277677 303092804 903947511 476597018 890089552 332095945 531444718 365074749 554326692 625337095 800159679 795173385 807506816 883340950 896726058 914965139 941750939 83966782 868174646 89059299 886485041 277565764 580245809 822032183 929919557 624259433 973475150 125008167 258255550 545704382 833029159 823549512 982238996 255825618 560963341 962565057 997407560 601122200 766920345 202255702 274488793 632497182 960244663 447568089 996247540 671172413 956571274 700264249 707780361 796770625 949239121 185716585 765491204 567697014 899115534 451192714 858033244 31593439 180217478 812431349 880609648 33776049 984478078 243497660 305935482 880054391 885164380 471653760 592230695 106886791 954122446 677315543 809577048 650460545 814600568 947079711 998135535 265543316 844139530 45817983 504934871 931794068 974302389 744512113 859854316 585812286 878145222 624647123 680218300 665278378 957382437 736332316 873192494 988003222 995754407 185397220 646179420 775647246 811312026 819847492 840638873 290866974 503489613 609792965 873603469 39616393 431314778 647323335 781831828 5808725 144647637 44212453 948070636 511667734 913912380 137273197 156497181 633665306 685486803 315261963 503344758 366844397 629894970 408891550 799694370 589546473 866193982 871864861 907238718 194426067 551561280 482733685 699975013 430403397 775692875 994935507 996121070 256395145 511387370 979149763 996424584 241886898 444065037 687055861 719854159 184964503 845315633 158804328 299869443 824054302 851981322 464438085 740541969 293615043 533553055 126042317 272936361 439361393 511816546 942363887 974572536 813845023 921008351 518094952 695414133 334549610 409917542 956509667 958479936 146445562 283867701 411241186 433047199 431596841 887798775 76993532 614598244 748650447 807613609 290099699 680000534 366339755 669243967 668595946 802031757 44709327 514567713 989387851 994368451 499582818 783748949 595172877 986482828 55013819 736304256 236028285 481366617 270574418 944927087 986655853 999616914 124164385 334330336 571962310 942564021 523114356 889982905 559702076 898582788 287073363 853572739 558474030 624593180 227010528 341217874 271676765 898412872 754493299 904404627 604407260 872447773 871141398 891446919 122219835 287408107 570903449 798033873 456600845 791294294 419235188 876237432 415064044 895750032 126188527 340819496 952608903 985907146 72712484 178050382 24632291 833801720 640638611 998722457 209833619 869433032 40627911 475834259 479008114 758595832 185696434 766906368 546701861 599740848 503727002 764806416 748664913 945983815 468106746 643251116 11012520 650299772 307037321 776788827 521866605 989479914 931822326 967337151 336199694 367216064 292493609 753666871 441617403 519284333 716288579 760653559 473555269 888100434 420195229 774467342 517577186 832901757 482622742 513815035 367048468 530014035 97988355 254701298 289787424 968264879 527701720 893578695 476976973 963567309 917468225 928772979 967629542 990412357 111391876 834959582 743807890 900174430 771355424 962290698 27998430 731236182 120046843 693095271 568693470 645695971 750305942 832601639 953241582 957457316 879165059 945159178 530520706 909430076 875447426 973678250 510931750 675776337 818467305 868032500 648496125 662693278 724844950 784763940 615535963 636113368 772080866 798956420 989201614 990542416 103378328 214251163 764838312 964063018 548247611 937480840 80646317 122489370 405492343 611386097 330105120 680077786 320771048 595981953 692504428 879703823 878959219 882175455 409967124 759689110 910411253 994059061 801151718 824080732 34044989 891205142 869277901 949512226 867969584 997625185 456479180 829377817 986470734 997659100 9911807 902075044 727603364 876523296 870886736 898874014 253537091 845399193 395074444 980115877 244316942 962332733 544857481 600054874 1994945 399244340 664134317 765420688 434771141 640464318 943909364 968479087 808357745 951156738 10636506 598203421 748026379 902386844 734266402 848189054 263619191 453047561 560848453 961302751 58789267 510398842 376117818 443926739 217322693 550163022 837524426 996220471 383324718 998162286 699413055 906613164 66721597 641426143 716154886 824943739 36710765 853078295 702678849 804064731 33465558 283466296 831723318 913025801 457395390 630462485 619307296 632908779 679844381 928376341 62592171 514680930 548148971 821404564 863286339 939185947 849020554 922550387 213800360 290661437 842713560 968826246 502525176 835097431 920280667 984287426 254193583 780021105 840126609 970445980 428952911 833064319 695075765 934572414 828425084 906350684 321024334 533334693 752523476 829158141 533839456 760710221 987003834 996831053 248380071 910091854 375675346 802226885 345174572 600735728 708298184 871426158 794303663 956869296 444674916 648164296 831388336 991027236 413767155 855490461 33896506 657407331 293401646 603280563 646636922 860311212 336853601 360226298 889475055 921660846 686371004 782863538 690640896 867249552 514261220 744586114 178058808 356520574 36494004 896856925 610752766 731029872 560883706 812357557 47456096 961143679 686947106 894013153 341955835 761923867 146752572 628315120 221663598 594937780 294114465 424530145 684756929 840058218 216159711 683092742 164393744 554676477 767361607 917273611 726555261 834262635 640556705 910307324 956846766 990533753 699473662 948907072 25918146 765453628 573495815 902014019 555965112 730244806 61139455 625876610 250751608 279939540 726805830 918691196 15566328 597889559 431283254 490333130 237339440 777658414 961859551 988770958 689462654 865562352 576429397 636247069 40346346 691875490 458172894 798828723 448325188 734461035 512055778 688116671 897823954 940302373 691595568 772591744 519395196 806965758 455942553 564246466 572298127 899766142 125017303 396996053 665198723 739921829 773061158 900909022 843440081 956787615 484675459 927794349 466589296 698466732 965665508 966449144 239615622 824476852 861648946 865308001 101161900 361807166 957888000 988736785 942922416 979156683 484805688 524803179 390732477 439750025 392407065 958453432 107242850 438174140 452618352 732822427 609721987 899617829 581962962 935255331 555085577 677558920 969271763 969331339 780729770 938502779 500486848 683531766 694540167 895037068 879399760 909468105 994926916 998341806 8437985 588366332 988597115 995582091 36169214 922993651 898077262 984928152 31978710 96812272 788267587 793626573 286030075 351198227 845974858 916453020 806065522 966366323 778228312 790067160 635457998 644945176 599942439 875981734 144563006 335505778 776446464 857538675 508835182 954285601 152881409 378020825 737859384 947766279 843964112 963045509 948472830 949759741 635528188 907411334 872138617 997133063 839592311 967109951 915529328 958402099 922236979 968905786 65531847 510730838 147393223 735108952 169450070 552675010 377750518 527192662 315132230 361315363 398788877 454377626 419697731 705015360 534047172 977252121 902834835 978035909 92571790 334629223 960604516 979518169 144433352 788104114 258817278 649290469 179356740 251078654 392107462 758706878 998530118 998833587 899993547 915643008 441369609 986680074 520460339 762597448 664514526 688600803 641204953 865295573 839800773 863282583 279042284 793247835 967189758 981651719 260752282 453605938 24491616 644341941 743277279 807737496 850875208 871478695 695157880 822803286 116474856 244806342 200276373 471265754 476100687 820522430 656606983 716142363 609445818 689719750 197790544 298887911 791858900 860774496 235137983 286146258 182752042 634010671 702852125 782759439 766686541 818033260 434134199 662850890 636210470 839480283 788553490 971724573 748587936 766486187 665896518 935794086 955341367 964286044 618991113 783845155 836453088 862690900 180102534 740335613 915412447 929807624 634527636 841162205 996966603 998749177 618802111 739399489 147576632 798161554 829647876 970463110 306616404 902654599 550342373 897261633 935774902 964453303 176873116 195181714 101098006 869537154 229687850 995939870 454455390 520785762 668259610 705596169 18985676 336971347 820456924 902168510 167243586 266666652 140173205 251499552 892757814 944873601 437557009 750014316 923132028 924578886 481959616 504792852 482807121 953362325 738184388 743524847 972425371 993500077 20032537 754723834 519202848 952794364 943648170 996200788 528750962 615542943 218902940 382470599 876011463 985289950 26258065 318347494 190924035 596778574 876204810 880943939 628516725 825358541 681494235 903381842 978701016 990984494 596252059 689507512 778553242 916180648 111800322 904031868 720905099 832269505 801178558 910429628 762916980 856934100 374777286 667997570 241012303 290625606 735031280 919060576 318784613 937174922 722773633 802876331 843229949 957894768 720966724 787501161 334375066 666737204 264986984 435193143 516595929 971065636 175287159 603060346 624204668 951496145 67145546 671692088 94734583 974766761 402790982 667144867 648571190 964200430 406915860 788559989 514441129 730627238 331963822 518615175 125004309 685263860 432125432 918209730 890629330 971090130 774016721 901085924 178224185 806001456 659584654 765695609 53513255 106184645 814467815 917760590 590101170 798992448 547294185 891639572 731352400 974615820 234779299 772493512 554925416 605454434 95616596 983434618 746668773 848530428 474697670 730177706 556821665 821383567 994765927 999148776 887621907 966411193 659167721 975268192 691576591 919922559 71217386 549137157 263854773 827430256 666897451 744094892 386415823 832183808 569083962 752742669 974529070 987259754 870561385 875621328 214402268 863673873 471172400 501008220 850658105 944327195 56181159 679103313 450528353 885254238 469051058 500420765 504255576 901035155 710246909 945916296 464191075 869454897 370539067 761839608 552399377 578379401 980434247 987065022 695632575 714394107 233566688 628152560 42054114 440219962 504841611 608037993 954233067 961272690 212170874 246651264 411283840 510904770 709718265 744754810 533154628 667442154 164704512 367864598 520052775 913352760 67023260 911874135 951158536 953110330 338450686 499131936 297628524 773156037 664230369 937519576 726514044 920802718 88450489 487826847 268377359 995968419 29648286 506023925 312169250 349890755 69888133 379076970 698746132 812563110 861840415 978288510 857253199 885910509 639451854 972592637 640244041 813515079 383570845 943629110 160736710 199306121 275378142 782341627 679642140 731506188 868149096 932339198 832816161 915521322 557902134 745055469 118862905 660665889 166086315 688159433 969393896 977171103 299234363 529052718 476572395 965527200 354597466 606710521 864885133 930152440 375614424 630177365 286543178 575121941 316022662 841580782 859852032 982120242 570446648 619900419 426077723 785753927 953951605 964152650 21093592 923107080 4412216 307123699 240163760 367885493 983300026 983869268 470627618 872801980 75690553 972343521 826855036 882143757 98169255 254040561 497857203 824134462 195617779 439318507 820184637 932004590 163619966 207778920 30063843 454495256 845719312 957940327 313361029 854162812 418835269 846703871 904073244 998265078 927242574 993533146 50219264 833759120 241976604 347520851 553729218 918031274 838360690 844360877 306517882 467977004 720381761 814400522 639414909 825808009 153004222 855064422 705791093 939637226 12846025 443256280 306631958 440599611 463111056 660821107 974355014 985337833 801631381 937917614 424061402 939493105 568982043 958119947 845105796 974616437 875589926 943110050 804226178 994681757 736458179 981486441 5456106 137320934 457062185 562276799 480293858 909309383 968652200 998082094 701780684 809635191 338687635 405696782 81601484 561218818 379980819 784270572 354457811 395318570 464904441 888975698 699438997 917968284 412642340 486546079 985081560 987694420 292829277 426509253 929933010 983900156 349393001 650101225 990528747 999788554 123376755 950562941 973719002 976090116 677983141 876075211 494261507 798767525 845485446 872322199 193231456 526237253 756521717 789674372 763779172 906717557 401048208 607856890 967801749 971773604 196775324 207182565 513673228 605457860 933312846 973495319 270146161 306716629 988655096 989081433 313618191 697407302 246987233 701720966 418022337 524397819 333099570 951149273 661659456 757215533 873758347 968820762 755861410 928798987 732745110 804028107 886165606 913792624 804503289 975702261 104161230 376204941 605859079 656163625 44805815 897407215 333091478 511657511 86049572 936890013 869355637 970188301 189619318 726717839 896334554 973120374 496425637 542378057 735893612 977079508 738077334 738320828 947476572 957927269 179181619 230321263 231678116 560621596 780563242 979591964 500193678 560242919 194012296 461127225 450705030 492104877 333905877 855625369 397583996 830763281 612510634 698524699 751483162 975694297 838617626 910725255 737224964 995096207 183470659 971980704 195718338 829025620 247357399 480794280 815698312 980263117 543323838 849168982 574644873 788593377 801834131 903227524 241950966 365172907 463738925 546845466 476229060 516430593 213990518 996770944 783678963 820895844 532485450 872878828 147784071 434832169 155179258 256341611 826035510 923918251 23386466 285406790 849105579 879262798 523570475 958452094 509949115 725550568 882393408 892422977 320730912 433112194 832254679 993236517 633974618 997802302 54503025 895342741 890027353 900332631 854771460 913534701 486732362 754988316 319475899 937826744 707180145 721776970 649542610 845839019 660613794 921072226 284692428 530628529 847265509 939379914 701990671 924493801 475923146 685647395 466296598 601579268 393269149 922513687 929096259 952833328 335257662 949445502 880218963 935238976 853550639 913769043 350976006 879827582 47431615 463647526 339135436 718650599 150106558 738055599 661082431 912253430 345647311 812308216 450973574 727205709 217937156 440078211 57510998 178767097 828014754 860264148 522522899 741071673 722128981 770074398 724346179 943739139 991306729 996039745 973590125 982783962 769586276 845995448 568745645 615201582 361297233 694740005 589236640 637034941 840243365 871097144 457768410 723180757 4932534 754039626 267295689 604813461 413151628 725541498 596595570 860982852 64495696 509802426 786836407 971387895 405830722 678784031 543650994 973386880 315439088 893755270 985114212 997063523 746797041 945887259 446619079 946472100 968611623 993649290 562424081 940691123 948796218 972722419 162832544 755319994 267594538 797278175 256501908 373030108 161856058 660498747 658951944 864716205 521221810 522718408 372628437 746077894 194505959 955356949 132424183 973458322 551910599 987010266 668300978 839215231 312822759 387777891 523771674 620003460 299299188 510792555 34018886 893212268 473829534 998782718 819149053 907512123 517438211 624266588 345295724 499169218 31249549 457412271 881032841 924990558 28139147 421867909 474106454 842649234 803510195 941046901 262495828 552135998 715870273 851649724 310971299 543634749 568896119 922250696 115469858 677792853 19717741 91582221 123957760 668036553 551424533 647555935 647009417 814159680 806061610 854844978 146684225 515223418 584324494 611962234 290079462 782639315 752641451 768910552 416931778 739966047 889674725 969092125 593881441 618584626 900660160 983103440 538810135 873805577 766061806 830400718 120798238 916106685 493662395 498269947 515665698 943010094 465557927 552698047 1499677 587928808 232327559 884952097 256319074 259474060 146934162 945675834 264396152 995466678 385292655 707028352 477489420 552656198 467769501 611555858 525674637 562534143 312157781 518054253 315278241 607950677 122751746 247814661 694291306 758355920 919303483 949165511 225088905 580895258 78982956 285476482 587628720 780214811 958339138 980081540 213006352 697666238 856128984 979937254 195651946 679628385 718184866 799829047 517577010 737247441 524534411 639813224 191458759 531680917 193112398 271555132 386423318 864772387 108646340 470763342 284011095 797770148 804384701 993642274 945125194 965344335 370355636 449680068 360902822 758784302 364087690 779579086 679822557 840987501 434354094 961820849 135441772 747371766 243969164 602014455 448823614 902169025 173527618 258506643 951121261 970988116 652778300 660907600 683915478 837958838 518173897 792619617 111889495 209866995 544117356 840058421 892573445 997487793 121239268 852642314 251235480 627189226 917625324 931892208 650809556 689497838 771036722 863198236 194859496 332491341 147647689 765020724 410393270 475546469 804426332 887709137 485182460 939396383 631287911 691917140 999700682 999755801 419070976 880257382 788855062 818248140 899825498 929686949 70022394 737542776 763800880 976930810 756084181 900724151 926136484 963302438 408893908 569965046 936777164 942897156 973423776 992145383 999501920 999751050 899059251 914204412 50727509 789081470 302483585 865936852 748346274 886509411 680472817 818640286 714330093 942749867 779541565 843230915 966181647 992554082 359229110 574386866 191315315 598952344 794920387 875392626 482207716 590276911 787409530 826749977 329036503 563737808 444715737 842404081 834019104 864580115 20945567 261546904 136801027 316112577 951635023 996053293 51824882 226543519 107255687 625410846 390002809 395613162 945680647 994134316 418805695 843966380 469306439 883671669 786636269 990638253 746327422 841581400 269325139 335314987 6955580 59166515 974203182 976297832 141612902 512534510 185644058 666241728 720962304 808011340 120677827 383052092 105003550 910855717 375476460 673454815 797448770 942810032 254800844 632034966 255478439 977728655 305256122 466178529 554121063 743572887 544707953 984807208 450578766 862492577 341251233 781253088 260626714 630140671 881896432 927646671 903823974 954264439 431554554 895510567 384905249 728218644 926450298 975860848 496800344 746180798 578425279 979147244 194886228 763769395 717964833 962394964 935852775 957693697 500647282 674499195 652670382 877977605 647521842 831595340 368661344 877622835 644212057 737205280 825132423 827852059 13484961 53805577 608629289 984769080 466051019 643057827 492191197 970829984 671588587 881726275 274363197 404611556 868561202 892662135 330720609 735097366 287147826 847831131 815007531 821891301 1891340 892139428 555109010 847883984 11444576 352309670 909492767 919337851 337082580 378208075 296732044 965497550 430571481 617625803 467749322 775405530 591959516 878592728 787303732 869873156 27333041 544509862 523315655 966833132 632452017 793980821 682207900 887374373 233717020 687208632 406656618 757394138 864791310 978429218 942854766 969165902 974277362 977971952 503218887 996110038 940246876 982853827 266467759 397958650 881639356 961418808 8069738 320885142 177003747 637323299 990330262 994044318 510656613 894693803 97702599 793646964 561838753 637096783 100355791 673111187 976490838 978289426 677638325 839334580 832007374 941736597 813467976 823582240 375744361 657936539 427769376 480138246 353336722 924861756 104876711 702074553 937182955 977649565 475689453 673296604 605744867 893818342 882565331 999749108 70540747 712839714 140174411 786147498 891809475 899399047 845917398 920542606 82120560 639883105 546242524 763745897 449093030 744553373 219829026 299363053 559307237 885374350 504655435 873796138 386659251 688051899 921450998 970585359 115132783 516782280 269103290 797246926 183349805 607325159 522292020 984772943 829958067 887841089 955674475 973554163 891604519 974574474 121150654 968614891 299951418 616953830 800912375 956551980 221388517 715074111 917374652 985827401 585183285 683854310 334951553 454770522 431252076 697961279 923657862 984405363 863965312 921578529 164334179 984796304 438315101 698677480 230829349 535865906 844302966 996875406 489177210 641289766 8169539 518525468 196974021 837065146 861443334 993951268 152893032 831407329 705934311 912547150 545211700 620519239 413663774 894938026 743157527 989419866 183344771 425461426 490738465 777827337 204771628 819842739 482425667 892305910 247241414 874903272 880398698 990583771 825056170 898793640 341228880 568805257 166273466 318860078 777397072 854184665 874509649 916505503 988785463 991250830 282104906 394441650 213924311 765676720 666901704 961750851 109222802 886174659 832220884 850255421 115061662 436805935 451014159 826839595 652992069 786435307 579023860 834217382 820692013 852040942 270581255 320656854 903156963 914887702 948240251 955923061 223485193 946534537 989786290 993247093 390062702 922389008 14241297 473891695 447061264 692276463 42517520 660933393 966482296 971688884 550912926 841024541 488932311 624620094 893226998 926692130 76469862 389864050 514307507 883353380 863422573 942448909 175465674 715175294 458864483 479396588 259698713 602717350 621922714 680864029 221929509 996962741 988453810 993932792 236598828 465305055 449979285 864163325 871187312 994840656 286441392 480822630 225040650 732897525 70197944 453014890 740075841 950841299 137344363 518180367 264282253 386709224 544070595 705752926 467140401 862231147 609178713 813388430 102769728 751796688 432666525 957036661 785843323 887160040 50009084 182439780 887116182 974443534 283843845 908543587 458372245 700359934 302606167 764330298 7564925 656736268 883743962 907909564 987595060 987624153 390978433 741501561 811707107 825470329 877485817 953433719 726385840 762352727 632795343 643864895 8354433 831665871 674751294 989414500 382174775 947078874 704466810 889824071 498263037 833166728 203347089 698556415 377303297 656103118 98345288 115155466 857044078 898560397 375132701 872724479 348321623 937442867 915964857 924234720 973730928 979604237 777053428 879891156 427466911 970612440 110291582 801830866 376828386 987041829 882553648 925678250 137817553 734659573 827750984 932204368 158656920 636283736 28269743 68411213 78181831 725911137 619331465 646867949 982156982 990321896 365093363 760292004 168723551 332197105 977513620 980615170 228100662 709085726 416088501 912141620 103989075 767142606 856883923 880486463 522398189 697148437 224646428 731683396 72462537 765913308 575927685 644130698 229750660 563466091 421837754 655233039 502450177 855666687 540132123 718214654 702144930 734045384 182283717 743755214 171936428 722248152 173272771 624011929 501671956 760684616 666939104 993952570 108756975 746056493 16501296 663959214 155595390 766321976 681450932 987572522 890078893 988286420 497582527 611349522 994797029 997680552 449548409 665693454 763132804 843962914 872195504 972945063 127803316 295038103 147749547 425898174 587389934 912426017 636291459 927197137 333081795 841991918 577557312 729019541 417222580 630938613 401339942 417958653 634280052 804031059 140002306 337388076 547081293 900859186 835946759 858357492 223977715 715648609 780238731 916294280 43978757 676933177 349740430 426264421 5027547 561434429 442650521 994541624 253756217 277538391 457457777 503654776 707349381 716000475 418826135 852074740 815608898 975416903 754432452 937117406 72202288 800360105 481451488 529191208 548845178 579758745 419013528 565855340 864035537 965187782 422784015 556547441 213678209 898950667 161227433 389187877 371589837 839760961 113223362 570001293 65863942 339566735 829062446 858407092 467772961 682100407 431155034 678404775 284505473 614750857 230198296 240091924 990750079 996075282 930186029 954260267 178493826 476078024 163310680 449311043 488009584 598190081 698368414 903174097 612150030 823267453 912777556 933556875 65557589 320642265 308896671 873367437 465678537 709439757 908331721 923227113 535482164 619066209 1282972 36544205 222695377 454236600 665213906 977245242 660172093 750025872 43019230 436488364 586914359 736202621 450559172 599580813 642083639 689510294 514833196 552671890 263302228 671973179 795849740 798711724 288387423 485077034 832211615 876254201 738741443 902096775 856946200 895372095 163234843 492949404 797560936 993989281 907463985 962912772 866944580 966610247 691039705 926868298 348769658 730927869 2624915 480284917 733589999 757492736 999640274 999649082 391603996 790800179 938376380 985836762 13804676 526673954 544562364 667275716 468065095 995306910 637397322 681650312 969320431 970729592 541284496 693455878 307048176 533117410 1158055 437158172 146121996 471829897 222667265 437720910 77260356 872241487 60127037 602080484 274263087 828587669 4877828 93233261 267837893 485399680 587652652 998912462 126348371 754020772 433823072 598601206 878545359 953791958 354126295 801563738 966765698 993329082 779858935 858289090 243106027 248253657 360573270 697565880 424795942 715079888 507159134 998549523 270033606 495435498 152596263 499640234 548995707 637755843 130525588 845350221 878883982 881794249 578584175 582431487 99265865 722430369 98759190 540928777 59974212 832562426 799984025 931454824 345134301 717919366 86555404 601536671 878015251 891840613 695630110 749406500 65416424 582808584 168035055 869143420 72817256 251756006 93619502 865418431 428398687 859594505 843451222 951670974 833880255 992850608 769674191 890819008 219944266 269897517 485248365 546996222 142678491 520327052 268419494 643514870 914448965 923531270 636415523 669186414 780044901 817063469 959265545 980392563 390265322 946358009 488765968 642265149 254533122 912150482 542032769 837017958 659941598 933411163 775046976 897565637 119539566 839222112 707983120 794107258 414737956 720179030 297687151 605901998 694377866 765583913 168466269 798578871 982312902 987950008 976712147 981061625 662997848 995176586 543372082 748778162 770977650 787605620 830105523 961591749 945479963 992388025 60064170 89212089 478695251 674513879 795633186 983756994 553086914 667529854 47281114 974873136 477671971 597796685 795626349 992593905 301895451 898790413 82049398 698524592 617137025 821214326 445993207 919480163 163935512 286078654 714656041 818269466 109168520 963632929 178640640 859946828 920640409 984949030 698503844 865088990 94441702 610455722 686845265 878480798 22202398 731593771 974100925 985109364 84523614 735743049 103441637 350572638 949021908 949065744 610839661 706108392 166919603 297178276 274233392 548992732 914954001 948112399 852622672 927986654 272782275 710376877 246799429 490798293 564370355 972031809 14768798 360337478 999250905 999590386 879600014 925532021 413582021 856930626 109059094 141433980 109632567 548105502 306433899 915762485 436273402 699772934 872605487 942916934 64214765 272195042 298325220 701437349 586289876 868805294 901144296 942932539 245465950 394154104 690649402 921583644 685502478 825293081 894123503 962785260 968194053 996762843 452028259 532050577 148158243 287783442 298734926 507949587 679058612 856967515 441448300 935136838 19881217 161794273 415545174 924734950 783420192 844165022 773315985 848661767 556421097 617090593 804680287 805995187 704238437 894184505 252219123 492170752 656437235 871171539 346585717 760116700 842416289 962029082 898464940 935089150 264756262 504626081 811903882 974875259 794044648 897355943 257583936 839112712 838583261 991637056 265736605 921823263 498559439 586323993 112526930 976028172 547190734 839526103 517000430 795096166 822870659 996942262 778525790 798508615 737353723 767380187 896960172 942407083 489153787 989538587 426287750 942587367 83088450 367815200 610232320 724416516 125151445 141461416 9259036 446820151 960860190 964184089 950228011 955705143 449420008 745362488 500655526 749880848 811065466 853945934 625486706 764333001 903042035 947166253 376034467 945018173 539844433 746642809 554529143 998114574 318818163 402425183 420597151 945667097 284314843 970531077 462504151 961137712 194389534 504945877 470753536 889244282 846918173 873874102 759237165 845946165 180248698 969265641 524833684 715064698 755018207 969520611 730989083 879784819 50264035 922569688 210932541 211099441 810956745 953771227 102720817 772241184 562639922 987526795 24768166 172087351 142935250 222000732 874562607 987153392 826335690 968276964 519745395 622030985 879299511 905887526 7704552 672083050 223729004 969406427 881611821 983967074 711440559 759589825 397231083 773939331 75809605 276672040 386479111 734008873 940223781 953550380 325428390 493854605 975441344 990243460 92525990 205860741 880421758 908259965 463184111 729538974 533954389 731409849 963861683 979723693 989554549 998674313 317346600 710000107 155581877 528788475 204765915 574086678 536969332 917752324 954678561 974944260 343408953 681943913 221987022 284924681 877910852 954083530 21087674 649705914 377957808 875860335 745475242 795996926 620465499 888544386 295649909 871554104 228053276 726934687 959753269 974752723 631451815 859838153 448595224 765393972 971966098 987266134 131429636 233603223 979677977 999510573 734147342 956776271 78111557 731036824 105704246 219076449 208067042 898211942 395521800 712557984 286200674 676108559 676281047 861089906 30567835 137776028 602712292 648978749 905341593 940785567 286381158 758372582 760041574 999195082 25582084 995808042 825899478 956458200 44568560 227055513 480128445 657078151 27351042 424565409 886215708 996782198 377298830 552694959 353921365 677040458 159578875 226257862 501122196 974687656 597011356 778081997 622583840 902169461 306650271 373306004 511662894 830899132 984169236 997459287 889888052 954927694 697414389 984811569 476067116 522713322 783830686 860490152 712650938 787425399 267208747 970607352 236985709 330988724 292090793 961409703 673218758 928266137 919525893 960752834 662486964 748167587 169879070 990581889 793705840 882132037 573491228 765920803 838215890 906285646 452567137 959256382 459166044 772219782 199846347 332429122 64027859 963302125 933586416 966024133 909489766 978866901 716214379 806722131 700811919 962583482 984605022 996580959 827734335 950060765 194673806 562570484 427302469 789107925 829413990 902909843 928901323 951904392 316354618 356508468 696017372 744586680 388188035 935870113 700258691 758648529 136752712 746008537 497607817 682571139 537755944 965772834 761483717 802139653 978769596 982046224 434328959 608108588 692952930 997169162 170732564 832763136 858426441 940700004 568500781 737449664 135423854 676341931 185748767 829687647 710051876 928726777 253414689 886252837 516820255 800534960 639096209 958719608 938576757 964868837 881589823 889609496 823789526 825641712 688777053 710393676 323506438 556458215 935807040 989160788 713241480 898297302 925256302 951632789 948151833 955529806 188658806 897011085 814178559 818231161 178128278 817948203 683701961 689474411 522370246 943312867 671665616 950120822 689170932 819828125 678030653 971992099 52402058 906875758 590934719 792417207 676439225 738438490 451275394 962633207 905045722 987038437 359266166 672014324 201098813 262112725 966135468 992711128 292620980 746096004 482978855 837711019 534917044 547855001 290995469 507669908 695979740 883710518 455549906 702387436 435820554 450575591 622204022 960370638 108731937 415157721 106631018 629148964 25682878 535136150 222307912 328265583 935790750 972892801 427734105 731851886 672745855 775498414 42598615 745739583 925735488 970401286 445293678 728472902 815830767 892726292 731661123 784237110 179945705 701140795 485658704 790948494 678860313 976379379 185327364 568066602 572749137 683146743 784916495 990998249 539154880 746093925 682310325 851494836 308635796 475931144 108751018 217206647 921395442 925890279 478547999 891513442 589302507 837655102 835819520 952542716 932784877 933598654 632152934 964745496 307928515 347594117 935957496 947567610 149883707 674554914 430165566 643402771 18514338 599944849 670432924 996256924 249458032 805371746 170872214 990739284 328848205 386681270 289437534 930492956 323534948 695299890 477037985 894379578 957959439 996490963 574838457 827947158 990314448 997480486 442606868 450320778 173606158 277977224 244815884 987538658 979433361 998831255 975080448 977884563 693026346 869704959 110545134 928189139 929094623 946303589 226306795 487312169 168472866 554979588 690884329 809032336 985050574 988050869 868117542 943478615 413133556 918620990 889592155 980018642 905895132 965080018 373746291 542594361 529308842 599937790 661512094 751735454 743906541 955605667 53409380 346675948 914450427 927852970 897462328 946540912 637609970 993151461 708527581 883831530 449549120 947552318 653672324 758449508 761207310 992514547 764434525 999196834 568479313 663781554 859280082 871213312 949758483 982181437 21372274 943598904 499947323 900331330 433401270 657391444 322381562 324760585 343019181 922256445 902778809 953145906 547156403 821509449 13600844 214678985 198680412 755930791 952231757 996946316 536545402 768537346 662630704 997173591 547987436 574293157 302876401 757559837 487721350 749255385 305711049 845495512 118038134 780207600 748815862 828306485 728349782 743290795 626009198 681008189 351643511 820558716 613457501 689450529 552044417 655640208 347405530 882027043 301135120 879237889 968228100 977962407 267520092 738734818 385155875 847073489 250895822 463159531 83097556 141917626 102489475 336781021 557433693 807158881 453121545 949731251 577684078 989835456 281365662 623195235 2061669 934931582 715273167 822973173 485522909 756757089 651066177 929195302 796703687 949990615 143054848 202537557 364237632 715040197 111341188 221575282 165576079 726796832 62673411 741570950 444916553 634581213 25177340 627088881 480787893 984652589 43041063 207921055 190455691 253899801 740909127 858820950 543310813 600932136 920938453 949546451 295758111 702876477 147894162 297286211 692849848 810498885 70999324 470952628 788160986 977849922 65532519 584508170 544780784 837392626 762685037 834372797 383459246 740594247 495077448 530376108 898761487 916769572 153405309 902386159 834058456 911668363 750719522 776120208 976360955 987726304 11934358 218834492 646058753 978254005 156413935 615303427 85334097 748613190 202471887 780272987 542114552 568135505 471454690 527647080 11078881 123073090 662957965 955728957 443366212 680645560 552774497 804097185 55635307 958434528 611671782 875257631 834172088 848369055 477689022 668193322 916193108 969131328 635275523 734381129 99931871 586499649 834059634 899039820 568840959 629960246 271712256 940013662 632750576 991911058 978241738 987069526 580631738 721087374 261287210 277536652 817110555 924758319 996869703 996881123 448227711 728509037 427384094 871928357 889283288 927750177 549457983 858628241 815633786 847485302 315877374 830737236 812756001 964227260 377257357 495196517 261878599 949671436 391538014 918549370 335795439 616332748 684437960 947787729 319007103 647591528 134032995 879470960 285734078 496731279 381139502 555096018 310249826 793752691 850014873 917641102 975203595 983787097 660919686 995098189 523337765 987335215 296194159 604860611 689044266 776292607 348454620 784198219 364673259 395519124 436290706 757626715 29617712 58737808 653889657 812578294 87945358 244645187 369831627 834588233 53594765 998774074 780569632 929433676 723306530 990050068 171652591 855955337 632612292 901444308 462656361 636388936 635139848 694582194 624771515 928238994 605387520 995886382 283016876 311253859 958471978 988020674 117628819 369006688 350822273 733372249 344548870 577619383 104330844 572061257 799560103 880822875 371717597 657550878 210842920 237343920 381147037 556006174 597707776 912023223 825079699 982279634 893957292 997141304 151026593 352801811 705402550 839775275 645033777 721587521 522935069 578766200 270276608 914886044 380397930 568244566 180889165 332924928 880603661 979243707 852242155 873121976 568530517 829915823 577766556 601627614 831358845 856131724 404854520 852023437 671043625 865411185 539224484 597327626 825661281 999091549 720388297 875149268 882512262 894193027 884078739 904544115 57528030 273262355 817435901 950493063 222107595 822709346 628696110 734129929 248036614 394494202 552689508 725037742 508542066 897977443 34348825 818717609 717950343 888674064 176019600 640514168 930499783 970375604 321188922 434435974 116807592 540909359 510493302 824168652 444269948 905841284 689467017 819054903 6596681 277838726 498739278 970576717 310056584 633001112 730721806 966927272 497912445 818710260 210679054 573981045 16995802 129136666 677419134 751843761 620614173 945633506 188125611 367753042 284298670 826145441 518308528 546147463 885580381 990288434 694100882 740345104 637801356 961086377 919380452 966675598 901932071 997170776 674813342 726964776 944365542 970149407 163434217 949835963 323802803 835866059 250823664 768862268 591848154 669308492 240683238 832702042 610172437 847181912 283214620 954682937 358433495 420793245 825603693 858030644 178248421 508857305 793401906 809072730 886028687 976109522 65559881 485718180 875146419 947674220 99731472 523363700 965800709 972508472 775667254 965193049 188355677 473382851 316012798 881438816 651260834 918583208 931802742 948674125 106002844 320847205 465638431 743003816 452898550 912494503 428823427 444899291 858469817 930869884 385108419 923275562 912208348 977561330 420288441 944149250 75672436 422294699 614487154 684747413 551595025 752251562 335994760 525056930 509259993 751445707 622970378 877254057 14288209 314047765 145266796 846902822 987626480 995038406 890440117 925478229 785693737 837568230 495889222 939304311 592199479 988383917 201355196 571922273 820468878 879030196 961962658 996449924 741703926 747549845 720070619 771833355 837743024 937525145 392466650 831193233 192169278 550019282 344718838 576978306 938666282 955309601 986015611 992169940 951961086 952245441 944729526 988805384 975293727 988070536 390901011 602364224 412650092 780644931 449974207 932119985 965676953 983532935 119553938 325082948 801027921 929579898 903502230 948733253 617993524 742066964 771388094 788910307 19762963 459485580 458343833 588489906 216271756 779467708 756694548 813641454 227542692 854942500 739989167 908709553 247074697 898688163 435155167 567029176 376907692 864809289 602862450 972843475 645770151 659691495 22077729 604381381 256181104 272369460 685754998 915120400 536527251 643807752 574618751 672266957 103890121 838600358 883537057 910090684 918415404 927849930 508479791 649983549 844059538 978143842 516520660 809369055 295529042 695123464 315135125 966433111 198586896 671921935 121849629 290132197 330674769 537622140 766407432 799266985 99724185 353896977 898218253 969427012 67943054 282022286 692128667 816894830 392588996 964677085 495028357 619519476 779771072 890921202 82772108 449227397 417187767 912746506 10617794 78594605 266741484 320893023 863023896 958010308 566294284 576432871 496907338 728620608 575597181 950034170 700534475 919590616 245053843 446451786 293724632 306653881 237098612 998227357 612993401 821247623 803302516 822541685 85003146 241835469 665863210 887802382 682038413 857279071 433758644 626435465 455287776 492349828 802529617 823483280 337485553 376121197 530847334 606519303 708955942 787797485 349886018 394249833 651211255 840442731 435863532 799992130 903043632 913322181 926131064 934623655 507920428 823933614 362940095 671752400 508985658 778315151 911432222 948837529 567162848 753232720 307751614 448053728 988734667 995990919 1601030 982329110 388750445 837904872 831868322 985187455 561600946 996908885 696550649 783059608 92932731 261316615 167143383 577519914 385801187 724875387 996293598 999195633 864225225 946935561 585366985 919130304 408469871 686617597 253416959 956675328 195217393 239302135 785025246 794214087 275289939 884494674 73460206 739237844 425937701 990841973 758643907 862488084 877563391 968181278 672154088 936683296 722708649 734518815 656770603 730990829 30910032 32585156 219496958 919479298 676189208 746284637 164472381 194879015 142557287 710992572 348467711 403244455 385053285 449575249 675714126 836871434 123123580 800655283 284046590 360273306 316290967 639231350 688629542 794660866 271573051 717335598 277397105 857484813 466730034 585016336 435966608 729500865 811842769 878790960 99302416 336409107 282535976 509805999 233498131 643404474 929550147 946100968 549872310 812018251 813458594 822277192 674357790 985048029 585873373 915512940 557307814 924260401 651605641 901135081 109782062 364768739 443839690 596750897 422310507 438925974 57138369 171293301 988784977 992034078 671017523 883604365 114777266 233101199 481545436 562092792 689717 653718828 678590372 865973325 600306539 916165724 626701174 635126050 848149323 994309578 3489207 722355631 928921330 977262865 421313958 654990128 929138365 986841030 789021742 835803082 740623310 760067510 224866641 648519269 705476440 870436695 546274546 636309273 915925846 943451043 367955207 838805278 430168412 695100551 523494290 549502705 746691380 824680873 812312298 933155113 811139946 840982354 43766326 761789884 488291817 559881055 837103614 953690183 691660424 749088939 949638978 949957035 233558688 476137429 433997206 622497852 255654969 295660621 423495288 915785897 822859754 948487983 640030291 891086512 637873307 789799856 604841291 678170839 426909008 554389185 730145013 963449640 546096249 834187373 686483981 709530639 870660987 976913790 606678956 611460667 276858296 469008969 28419547 393571278 830226016 978438483 699426000 788424029 328095817 920590801 312608965 503253457 58850032 943205041 876011934 963583053 694508576 866805665 885917688 950287469 141973229 790063037 279307036 646870438 469630535 663503664 32820143 266614172 888738945 903914369 729495772 926239412 683696542 947632515 670023118 930291612 47412731 53673060 732049047 734668174 808474694 864475504 179834476 717184564 765509677 951994509 900466914 919024998 659853236 740137372 125815764 980269792 374441766 650597061 398899097 610250360 279838266 343849743 140335942 985978888 226794079 845221869 737482253 991161189 485652323 797591834 378958971 717448156 760552268 766787834 53223012 404797233 794131344 865589880 661566046 679098985 54261232 400852949 956307446 976057032 773826952 869078655 577642023 928972125 276558664 765045021 79243047 378960133 561422061 992377952 151891389 272440669 887470988 912881255 153356474 533098909 855715546 994145934 742166300 802095745 28644918 682535438 548231283 726600736 931894221 981174804 726496642 732794314 454857347 836521062 566664005 998723623 937461319 958176023 849251362 936180579 882912452 929167680 898519116 905926707 270256735 525773581 752263100 969126017 407474976 946705864 613163617 997529987 68523611 882008673 854747418 968547112 360336742 664706535 307838636 668754204 939012037 986850497 975425580 983032798 497213303 549016842 399067615 824830917 115975666 317901295 811354558 906191975 835447430 900078942 462663224 551423239 596686639 784632297 605028081 741531261 859173808 872974631 330599243 947891385 978932475 985620563 973052845 991510263 428345141 811309791 776356067 963599451 699589761 756855813 476918622 767891862 485289711 797143416 187642266 792081975 18718034 489421351 456992184 723095150 743380423 819978411 664430293 824895843 966739087 997740433 668797232 695733017 392517571 481124074 832186727 921781223 76411544 630029202 884721254 896598672 331821780 993251492 74546217 131403772 599158347 660169000 194966330 930363638 542960318 950429019 128589282 413553595 166576955 341740084 534404251 566167288 576040957 800056681 500047387 689000368 772536338 940725057 886298494 954709650 415111507 491705851 799726081 970429850 771780357 987417224 323883502 639523204 914832249 992889636 143081583 376027452 289696778 952952971 515088713 955608869 693533165 731556700 938751990 987740521 456388337 763178404 558956377 912777668 688953265 969092270 826288721 886069618 53070257 633245661 146465669 410746907 109722847 483416731 225987357 809540234 403189063 965585060 457425319 739571512 299183474 654103336 295943892 392791835 482623123 670898883 20141165 790829445 980875755 981399572 719902298 731560021 873581997 907169159 339964573 541360457 212530662 452422160 923058349 931073124 765617210 797305830 292241235 852447967 131597301 158867279 379198662 589419865 308433471 431100451 217064877 472701291 772398798 924018810 338989037 380395421 537336008 586155961 187818700 394627815 318276145 764936840 204523459 650631145 48338428 271872620 99695786 844751732 712277798 919825976 975487544 988406755 442081154 548035241 558145800 901194280 771502904 787444022 839337316 986608522 926676181 989119674 482988597 506489775 642178747 821701785 504911628 881232659 236862749 442623598 281082127 666998392 543706049 972460757 802956607 917666356 632628554 963912348 926291604 984011951 470264752 869072216 698454127 934987743 150876644 819469744 367205893 794223997 646868316 674105661 146700189 194240126 872881427 957857160 375310171 608463434 694224980 763283098 493842141 554954052 506532314 550550291 422935491 559047403 217959048 472203522 985169974 998607134 283300398 643716294 276820470 424073355 117354624 975880520 860795972 920130906 314799235 944012993 263072372 956625465 427362900 869262334 869956769 994844180 617033622 999456373 497656724 581856635 917117847 988962145 465875713 758764111 167844930 613476093 608968922 749806453 554239172 674853806 258613413 577331807 131202874 626245296 760846404 880319553 46213117 290988540 3288322 567920245 509382912 884366637 815331580 936847575 709445297 751412815 637881659 657800822 467255973 578881110 68339146 421086631 869396602 979532333 66824098 239026851 393429896 782838673 232026272 965641373 95215485 204603485 15954001 695878394 820417567 986556642 204759678 506638752 676990170 785723784 890805738 995452741 879026193 944673255 84554110 938507965 261508551 702569623 703465651 785919119 793703502 951074669 847957196 861363094 956639634 982543169 902703635 944360215 359316343 699262595 302486975 418277869 669799510 919538404 737052898 841893455 624738231 696358790 297196981 979832375 407832199 581244289 144578978 344028261 846274978 922811547 80004360 854642775 37160615 761586489 724182798 893374703 304766696 448369673 581486189 838512550 328597832 635131461 999288744 999315651 111776702 838342070 455873510 982118997 232640314 632379040 826183571 885877154 584730146 683428024 315868925 325636898 38107910 503958246 700423292 835992609 552536888 942786606 272289516 991878644 885520788 950096375 855247659 949140536 963761837 972775574 365789909 823359926 934435665 997017104 930380101 941851834 155463847 742016036 926198178 943178922 569335631 834209505 927669225 961399876 283528548 907644279 651504453 975449654 651547726 988954669 516012293 778074781 34968337 345724344 36520043 607071781 281529018 850362354 990343577 990586417 856957006 944758503 274943116 862365222 872858888 875883232 595517644 733024293 274571332 808215474 725244316 855789254 406761030 603764472 777625258 867295850 594981688 691011079 342237681 404680616 41684195 320867402 6148230 141652468 906563227 975230147 338774969 515769035 662659237 918520686 577258541 740770852 863803836 972037061 347930847 401456542 627672536 779640201 173881079 866730791 317498334 730139710 76590137 323966019 650310409 686277539 757686940 811535177 94148737 839378494 701796810 717442779 180074757 788928692 765547789 806481292 603429084 957854598 144522815 681119017 226053272 652000229 899493251 908513386 149861241 866561492 338469397 688468463 619762765 873875114 949369003 965699852 873448032 892881309 846169415 886863340 754249892 890264285 155825783 709829493 208196772 775449560 566068034 735506592 243648925 956413915 784061697 810816504 865011775 959312597 574754665 644978779 306176793 437322437 414371338 829350610 499180161 823072122 919436511 981651876 337436575 807192555 859194601 866933394 796345126 853536587 56781623 106074846 239013497 425422542 535658108 970309417 569372216 713243492 544415013 659426379 24590832 198747971 273528431 371928253 830204422 939618363 527735438 822121095 885773183 967360833 800006071 825132808 908405371 961678758 349438474 466491541 404267566 676240469 775863271 955629361 379488766 936233274 327578927 584633954 244717072 345119597 314495426 359641595 924986295 988955046 594115220 781389632 849798547 905699400 858487668 893017968 897261409 932869779 109231587 965680475 930149102 939963189 364230356 655398957 542308544 911796830 599314819 903806557 26240503 30926267 194583330 701602199 687869158 849490278 256623389 374493386 935956404 981722855 203298708 827605585 49582398 378370192 633496730 693912029 874615955 916482936 692408717 995332357 769407839 779739460 761124886 889499808 777184947 947062247 730473254 938674733 95980990 794316176 407092317 518042644 65156692 879487870 141755429 746866118 197949978 991323116 505638571 637728642 219314887 470379665 202811620 357537932 366199320 407933612 645905081 869977352 993069130 996109963 879919476 989273944 529847666 961792819 975782628 984487621 571497722 674424335 748677763 815350947 809838458 913183987 244296910 965075034 352535461 861048029 240898647 846498583 940565436 972475293 315689131 475580562 514558616 889306320 372638111 655827124 469885683 981168017 944081812 967046915 148937007 848373669 108460276 533519226 485045509 835158663 475679172 567709986 115011788 923339427 809864018 858187123 511170521 529638405 145652432 345148874 766177785 837365598 567306664 890857813 752249567 820400979 562553320 830073366 497188198 817240752 13071195 573841124 482612601 691694893 333926632 522585332 384655278 419777148 839340390 879760647 392261272 871507823 594163362 842267832 601081332 897487845 205452165 936579323 573445477 676979386 837118619 870826079 224218839 607903483 556036079 852381182 645856130 731263826 296623788 398720224 31688984 803867330 294755090 656894225 932763244 992011708 830870787 914511743 688526941 799880768 512423752 682722132 20383105 548998726 930605799 942998928 979919700 981836484 744510347 775985384 483321276 504091384 746108639 908257392 981539953 983188114 945345320 949008229 709540528 929742286 438497528 717470451 324372843 944044876 691462096 960803122 968524445 978976187 233234772 717426720 995975640 998954869 521912577 806601002 657950506 977767049 23443985 546364232 459323023 944717455 518333972 716746748 71688823 261206908 262292761 271507144 681262840 828933140 797197261 991762735 475612177 792790236 466366762 883795612 503702114 648805925 675599099 683581508 993491481 995654046 337782863 834826389 761686590 824311287 952865484 976282249 401138017 754465578 146133196 543249646 286753069 386995583 744924559 858813316 947511210 956335039 401981650 561954889 641497553 991980083 495783735 693310370 764270489 988603881 560199196 775249827 481396864 741625672 770021767 876630400 764801841 977762137 518626449 860338602 248364986 635575379 132263637 489735429 645768896 763954945 686629611 758218812 912545572 917099516 389447583 434643375 175304207 413579171 472350226 723246504 403886871 584715734 384118341 504574398 817050429 872003240 205161879 370644392 694427009 971232820 86744163 283388849 356996474 689545514 884073536 894739524 32667657 166327253 102659897 573046213 94139159 228291382 508934981 685124283 848787349 966107366 751181546 888817726 671433118 682596079 83504454 683173377 703764 554949825 209069478 428651431 489079084 631943451 458851260 938738076 528974235 769565920 741571899 868134092 369747226 775796948 24996012 213492798 738627487 926805391 166076571 177644763 959585642 969963715 206991153 965683399 56360335 440592048 633960175 932141186 865647062 882425694 248114949 434079859 6620775 425696653 759830231 893309245 668569269 690632407 670986752 987316762 591648716 869987220 741581964 877739298 470215558 997729753 180080660 994058530 914717304 948868034 450863786 663617936 384048051 551087080 484219758 553938318 504552802 987510879 134490339 735678388 917687632 984609453 490768212 569990699 439056440 492383569 614053233 949837145 891012377 988056937 328329581 511383865 293889729 598691087 700358175 936191478 650266076 700877095 745608468 821502094 710815053 713638808 913986166 981302346 308856753 390015273 188542984 397543962 259219128 598438675 623469183 879569138 503862605 700114245 859237417 984565072 400389007 767686220 648595947 766437815 504342384 786280240 844413011 985575759 738307953 796460769 832507339 994297232 727000348 894244174 220888786 902228486 655946493 955837129 533272655 878562885 814508046 848072661 594568677 874749297 509922573 639301097 397341461 828082325 932357967 976724134 15667008 458212565 801644582 990073989 63213776 90238778 331194114 806533150 259558273 855195865 23297626 95939644 619165973 832684279 340353073 963400962 636515326 767959802 333719686 866447460 242465506 803773278 471521510 653823742 746781013 787608139 823835445 997968876 11969707 373162763 941245486 981636260 796991570 809410849 942873727 979374087 67303909 458585379 851859849 943102133 34342393 45347802 469586306 659697539 538736954 738779092 188583476 317339078 772112438 954850939 874162196 995840254 886338370 988756445 375523955 802252366 161441940 667806493 209770394 907638893 525504751 689510294 2303356 807302564 3987642 194710578 859744183 870723852 223352798 762378523 70546849 642717701 154164784 985343321 116097431 682487498 765518033 953667252 372605220 672763835 854743529 994586122 156730907 511857671 760008441 776191660 638432269 766272813 69633657 926798345 582151396 825018126 783736226 805495937 138403181 805169561 590683019 821538586 533027612 701227142 904375908 917913308 628907213 654885559 413401882 475710657 810393919 884087063 117317065 985005028 130801597 605062748 315953636 506954830 117463094 257349615 92076863 550772294 737930509 929041513 948804762 979522886 985033473 987571206 505193404 794316005 789787513 863236534 223892237 239996345 969763936 970963472 723843893 959236352 873855656 908954748 67541256 549600247 715339640 966552256 605918258 613126431 310299712 594884126 658135920 985731583 285828120 530539561 266642206 959168299 594442504 811446446 669313479 905306789 508382354 575071423 327496248 416492251 931190260 931881597 678831733 694801147 827846837 848774020 353832017 911484055 905216048 936984235 371175762 495309702 167179427 987393419 163291 691898546 51545866 681496911 879121650 910763074 56160007 676479473 86348070 125296656 626478613 833361551 949551238 985043359 177889188 927290834 798126724 929889416 39238533 955023806 73300285 845083933 903066806 966778272 175124958 446422920 563033117 818620588 849830005 944561901 789756682 832138015 151590736 538693402 707077631 905581499 63589191 142719043 339581304 606915077 44166603 531370529 114976232 580348141 578492560 593102822 37443610 177355052 553346536 734259187 725253560 794824709 343768858 635416182 773245834 925185782 33059906 176870066 608486967 686273074 518077081 994554105 658574736 771622482 468012187 858147295 830227480 966209968 981755651 997428739 22348438 502911801 526557998 997998699 358955157 912097758 736268867 842061493 532124435 679134125 21347209 950496107 397488978 743512213 395853931 840587539 542806294 837953552 300238171 381348786 704972178 753699586 655977974 985010949 936839870 944089216 362574078 372243947 770924170 953150763 234285678 442596419 489975829 626897081 567948278 989971877 10948974 388601277 952663720 967693307 914737083 985921391 170661158 946128041 44407471 916971228 108008964 139912828 639086487 909249545 476958603 737766960 255942241 344130955 520270639 633971241 663412397 957727716 229426835 280299757 738808522 759174555 860045368 861635870 364121136 688705747 191474401 744188155 862174015 985196003 406947743 667904687 260208010 902285238 479318613 864118272 407897419 687147658 665224648 837849051 685854674 883643474 934667135 997381046 708853200 770964811 866111551 954510143 49851669 462473708 125438384 779872751 389144045 605894746 112677696 231975607 58864928 231676397 717106681 956647749 616754080 686387698 113454883 372631486 305803161 664503952 930961081 975801713 153082597 495767479 887932213 983100932 183202993 514399108 357323479 987571093 570180914 776915276 596130774 960012057 473175044 985182209 289350012 730691157 887128931 972289495 921228065 984628753 975978477 988915560 826579043 962024660 232494237 928029318 790101206 899962392 882700800 918025986 470479893 795249334 945222521 991846000 721635741 822398135 157578790 330372821 36613408 957759610 807296136 967681997 64931866 377862798 875846264 946725841 165714659 741270175 300766519 876566428 40127575 124330444 548504927 842885704 328392936 752576915 432217505 912599076 844611717 947273270 899326997 969927347 56145764 309805559 52885465 719437346 355660105 957121654 260299269 576581376 762547325 955990710 485095373 496015622 370174486 868720709 60587436 318229907 429371508 896156792 395011644 730988942 990172663 999661133 757848028 903150826 954429129 985538721 25342861 753818730 69476988 245724737 764991264 895097904 797366723 949462094 219731922 411995163 652671453 894167847 948218121 990640074 746349566 814380834 757006964 840709632 760930751 792215423 670747202 771868077 927961811 953312860 814672171 820935760 512919917 926212951 855225417 885821072 174877626 214731497 172063646 920722812 363776855 588105593 529781490 795280471 372854589 477527995 438041002 886517572 576574186 619703166 908165897 956071514 624559373 974431562 655273431 828860305 432633083 700308315 838446914 923356420 35593622 182808108 197602062 396287143 534588098 814710019 815734621 842277839 654538257 886856040 91417808 708917017 388837208 430950677 193437149 764053257 181905813 555097950 884184821 937150034 262444961 436860988 319635918 393969840 99457586 493819719 668334280 761878458 110296840 893202991 262096040 627092552 448061497 868043725 113853110 693218311 125556564 836916903 751878783 803713238 108966090 319514685 778060991 839114159 516924193 894540131 135700679 869981725 331110633 621325343 656057052 943398978 768555462 876973493 401307538 741057235 192692317 725882133 983200976 989446218 336596196 821049753 387702706 496214102 692580662 950420878 348860816 407345717 932272087 948378316 141758393 599329779 680021291 882497011 865682413 987659928 487106332 677408912 443973778 630091056 515935280 885286194 928181497 983599762 164315296 459372767 240658968 327004532 858514032 935469975 921306438 932779577 385340130 561659952 456150704 655702172 504992824 568099890 250223887 886448290 790572500 916749996 948566173 988221093 361942342 758729089 481233725 581472569 474237260 626337742 400797479 771046101 419957112 840843641 109658006 629047623 568881635 647793755 730859748 756340744 958948679 962918669 327694275 723481025 639073168 780437514 965029026 977801811 710395539 715434500 3704191 476412069 236938836 319009617 391530678 860771244 762244372 780003168 38058821 107049375 435457245 757951222 487495921 783901004 910211720 987132591 404677890 957255658 646089224 655706639 50859464 434223612 801050505 859557996 711725518 788020723 296859172 445419868 443707113 810380414 155342095 285943026 618518167 985319107 26524948 249381085 297812283 900197959 836100440 908955878 688686730 901771982 850066245 962750467 547759750 548853229 398321579 552255258 938761370 971211868 479890136 932033300 189371668 890549213 380332858 887592329 599917217 789811458 328342408 523542041 131077477 157426542 294578740 614006815 28380406 505454123 556043499 568627151 460052715 715090117 431297391 524273266 561934345 815098857 778970139 958315546 475951404 983374703 193353650 241843101 411999751 767185565 919159197 941728387 483223022 693602937 362678105 368302588 637126915 704787653 284257183 581891331 711657457 864764138 443197803 711399240 448562029 683475149 99772023 755106795 675089722 933435367 742801507 823352443 172869045 631800919 827789417 988907869 636711613 726332947 38265635 359297528 860350030 924321787 183669946 671376240 738345584 908947529 921839347 942647946 936270972 965173842 118175036 925194636 110087793 122761368 858638805 945560832 456538415 779374706 25293943 536214496 514878192 761468697 848317710 953427816 232628137 980187810 981803957 993045252 180368494 812003147 947119816 963692492 601827247 912126486 121761004 503231520 36547344 64349301 759198592 799478975 133763229 324335843 506706279 688660393 17067718 792625665 397370682 473752697 701268209 953933115 44990290 832795238 791674888 861110773 176486091 285294309 694948945 831278655 465253135 807854800 920006570 997808533 626683885 879561447 833972513 988849952 28508830 592293813 464080331 516306270 728443257 800094067 361197862 903229477 386799847 608483278 524125370 552761507 217436067 286143769 934821294 951998427 557184616 592174795 724855056 947342492 832734817 976954642 187702353 551973259 723692340 733993699 871248236 921297751 527243293 896550790 635664297 876929488 702587574 768160949 982472448 986388523 268581027 636766850 433579630 556490579 910283774 927275921 272726798 385406149 654689272 681429096 726557872 960897807 514581221 697667685 806577020 946918307 312368573 786219262 210259441 426518821 638514016 784922817 549219652 607033106 519499373 855808570 419434325 818709206 462385839 914535998 520755248 945896049 952298990 986615642 611420696 790992585 802865436 947897900 581234635 723874552 267416439 322203813 194352205 247979980 580131394 968795429 63022895 249092831 880188842 970178261 211206851 817848950 645738618 781148081 859694950 977727790 41152367 786712232 977261427 993398603 969437761 975935853 438974525 719444506 94619638 633392674 43667229 163379245 726294458 960070976 482305933 745914866 139550934 560345208 437877516 581371843 889487822 961054687 235508602 671780619 520273393 677223770 879728285 943860810 367179680 615130344 625834134 925380924 492679782 937991647 627010619 665421199 339682150 899403867 66459458 207141299 538483903 658363877 940706131 992827934 689329183 942773961 702065724 876254665 702147085 894254695 160252414 251865082 384661984 726241513 247382204 528155062 306607671 893408080 724530962 769847237 677337076 702490123 12532323 635607172 959106322 967212928 961070578 965347755 619245980 884441327 636364322 678448865 501961501 679899676 362235650 620715923 421539274 683129410 981786507 994904715 977071384 996619089 351491753 410903369 856362968 931256168 886689209 939219863 528688946 804535211 232462522 438564319 411609987 885377385 236296890 797726253 640109854 979107432 421233087 560678850 983870003 999460038 483588282 549021978 358882245 777694901 5770022 613217308 950643667 968078738 420256234 478003124 100684194 167270188 907880394 925986449 257688757 483545328 298671893 888944170 992554858 993764461 394455979 551713000 418493159 843645609 452238583 517120930 819520896 867423569 22109782 430198493 61608910 785784151 148864008 281167533 997226339 998248537 804809443 840295409 739198075 833652337 300585720 980400752 536851756 809280457 252664186 257262085 88058036 743541317 66776510 215350336 309201137 953982498 651567187 970292675 913693626 950004601 38887324 907873791 18439302 506593156 338112719 491456175 733170238 950801805 966537875 974145898 435863715 487669749 968329772 985810712 429695016 430898038 984476393 991338462 625568104 899237104 139145931 405673198 616905567 911253388 511256208 560143571 482857170 739569907 483755068 946611230 869618613 885984303 196081923 782597437 559130537 899868766 518321544 746191219 989721358 993144798 266677404 592765597 397273406 887421352 815857025 930129588 744433137 954305216 734361014 862576400 367794273 555119427 247192514 392687746 71154052 542676757 195353043 442617346 17641386 181344578 423777757 434039725 837903122 910170654 69034973 869958943 233539073 601033977 509324294 742227932 402046831 677613998 205570370 984186100 199875167 247886046 294468084 678796587 20368176 930329612 848939022 886484883 603360670 810637865 100946112 316470982 43600589 233631410 722501478 921038194 63235121 89862337 926275247 981399793 442499270 560210758 468437272 569771251 703127077 863809518 168142948 197090479 124989273 226688258 417982052 649171017 75081821 493159408 371866124 625903587 370019675 468345505 994228272 999251575 713028579 923396718 501981122 831812002 881302840 935255858 431892874 786606673 795683654 885266969 296158003 347904056 111703201 262965954 736193701 930581023 648966468 828006473 260205480 348657297 466875192 568126557 662183268 737247036 230508647 778169928 800046037 980306774 967593364 977087996 150285991 678335899 785462788 861592227 521503399 646904934 194494049 235732967 446489433 509045861 898274902 931604207 712998392 907018424 556466239 915992515 599203798 695918812 969809200 976006506 607756387 704060601 66460189 314502147 438672068 623099891 12207133 574207012 124065267 454911304 55672661 177335752 836292681 973986873 607296139 785078957 139200383 725267348 644217508 821896990 68117745 178479543 455163811 534708366 420503411 586115922 274353823 382967424 846607789 943244951 809122157 850205917 992414123 998374741 578962840 909826803 106247689 385243783 320698045 815790446 813093680 966749157 725019699 876856013 113159882 799236861 957154566 972136726 434755531 750568063 660513146 973712608 548832494 966484248 341677529 468943853 592886981 717312953 304180867 645582447 854920878 858400769 270970823 482096884 725724748 956708775 673624670 821939895 953588076 987372146 55730868 563111534 484090656 646116428 106201569 527713318 417790491 655700759 579509404 826252777 219267565 949450103 975633286 997370142 965026591 972559827 389631051 449107932 441934584 877754055 931224486 965385338 920848687 938547659 182345417 749524846 267933318 812047382 763285762 932472695 956688241 958063280 134755300 809542476 227334 800060284 830341737 832862046 455117083 653870695 636173111 888788305 550804164 969761135 871199557 970144993 440423051 666714785 925295719 987677759 542832818 725858753 706058743 983607347 986986436 997280008 715397091 732061859 87894893 621318244 567582673 797409403 969524591 994598152 748921044 843703282 714953734 790532306 433052339 461580941 763340654 957540752 484639450 592348869 48420856 95502716 987649262 989824914 567237541 953142199 285605780 389321962 726823585 892214453 261730641 566959132 848277454 878286940 472299826 524117667 213786157 294339263 770685502 878571349 698742170 915863781 578130420 788007505 798978172 908085432 930902518 933424395 640258914 689431476 319178633 486510664 691487431 712276858 580537316 975842179 860439844 907608542 389500357 630250581 626514822 671252013 128035004 648156719 207563969 531276222 65859398 504451835 63490524 170571808 281256775 466602416 334642067 828260473 533302162 638834676 392887989 943126695 862817348 962619036 423171999 550591724 429445724 699208308 149002922 220197217 934555939 984411137 845705591 903365929 975666178 998603860 127824601 221009021 965400983 978389282 571706755 949018784 265056750 709268299 905374055 969465028 655232378 941026720 432581868 717472249 852393130 933926630 185361381 881492546 946124081 952516766 839763422 931572735 181552081 551266933 150239082 644327402 60537292 930431500 484890270 922084987 567215453 825091314 755817543 984849585 436853485 985928313 55544154 843448686 18093233 500041509 357648143 403130958 386786010 449988389 383966830 517970915 23056648 878324957 206869418 955045005 294333426 771815201 150146307 160440705 120801052 470496470 753254072 953998053 468289633 864274074 658305922 921663207 255009564 419438237 69281517 604365024 30174746 900013920 905626750 949675230 606534823 938287940 606429606 612103605 182878331 399663455 631256428 649222806 328869015 375837254 5167874 491969092 285744389 834091768 714374703 893900314 363243736 436019682 464556823 894774918 622420403 850241191 611601162 661575777 328104874 711786245 320362558 806824175 646838739 751115835 423539832 830239447 100954503 520981806 603329337 880563361 53111554 796847145 5453308 47563467 817247842 908419138 399018668 588268370 574955431 973554206 604403493 638626411 795275375 872771383 910088414 994589780 608791991 780905564 300674934 869172627 976621606 998285356 372315538 462137837 239098140 907768192 657297078 795864088 388466986 965885632 600263236 847139241 348321327 964238381 916927154 942037556 66187121 944887676 692514696 816692196 602934583 781758236 523781800 878477618 532154610 653016847 661261689 720790327 283513516 987709470 594310999 752069748 39973350 393159468 266954531 397385132 674584181 882437193 959111783 963292667 733290780 923970567 97832534 330607394 545634181 796834195 971581271 985947523 402805103 791256953 255075173 420100847 961964379 986874836 323656555 804361475 592282088 895800161 316109 890909451 948329254 998435142 839551824 849046572 954412897 969556004 934239755 983369702 201144292 390641747 952036154 990823779 546911140 921158595 975619346 989369102 759577017 978959418 770509848 812192221 358069138 508396151 521112245 776559672 990677320 997222687 2662775 122787234 420039458 542949234 186668350 394192801 830007811 934215805 718383492 804201521 778746939 855811639 924615840 949419264 777248550 929060386 221878562 882043619 914465430 966360756 902910484 973006547 731156377 945195466 510042582 523265888 37317028 364682649 242537399 857483659 890155948 926186652 812875616 916846117 895150624 984406135 340372844 546599584 254317743 587755584 322058278 494791506 788469919 800553642 431417107 461704425 878357850 938461482 606260533 977179645 998514152 998525106 152898167 817948461 24764511 161065872 509442548 811602747 711411187 951317106 614401686 772522242 4292133 336661397 675099503 849125186 941995542 952789182 200751214 945308393 944511061 991827390 276307785 498333261 212897465 829558116 671346915 869224393 895872254 899918702 398700531 621734399 542994737 786809796 561922072 961912270 547598798 760251770 102597122 918760056 542408397 872496908 75151416 492573702 785175252 850605321 231019779 888753568 365205118 390704960 462447933 488857411 256102079 967161745 867631695 990872549 894314691 963416240 899509009 997744504 824183300 958842967 106321029 915615346 80368358 415863830 917572238 995985541 689622867 832587150 103140216 315897382 108684503 356233420 199376087 634464808 949382178 982911268 126024178 254070521 756005847 773444757 383326699 961371744 412010244 840532736 443174476 836454379 730072785 902810814 33428638 224333381 526092340 633190720 760608707 871245505 793636169 951120051 659489223 965101627 611299752 935146047 501302178 506363432 735926605 926801983 257952910 338637698 113359690 268727510 420544390 493104451 585495888 670335983 752326400 943331124 79982500 909228851 806821524 954429441 384221422 774811648 730480189 829159875 751487369 851972545 278052457 975344682 531267002 704947245 180308671 990723521 396175016 399227351 652646986 855764790 360736822 839360664 804745587 899116035 957470557 988828383 635386 41273359 866782088 930780974 132736109 318656908 989006411 994455354 988372742 995201929 7239709 551322920 505598436 939434286 563123853 599449631 197393165 769181895 880556112 928234930 311827888 379864375 447686017 537188445 185871210 627366186 200431855 853115827 420389193 554581145 295986941 347469082 936396103 995714949 811222384 986256363 145708822 607366469 600722697 749283140 392722592 884787075 969108012 972919136 367888442 758267401 354948637 634739189 839517930 914007550 873939456 878996462 967590495 977949936 507166557 777991611 298472032 762113630 865301725 917974435 689437435 818735152 554240946 807955611 814415058 914902578 293258987 354108390 7314159 138803103 33395336 809586277 126091370 463448927 272189877 375773904 727420675 794655692 769971625 847528817 56536766 719750354 105320755 243759709 986351423 987399210 740831334 910635372 904653275 978196926 256814714 280547613 308951090 926647429 850175143 968658588 597078175 620615886 164242820 575982924 41928294 534215770 959355738 982240761 294211736 395587630 680296139 883255640 406988978 615323535 407000736 782147409 377348003 956854440 665481247 892004484 745035466 783863509 732388989 862237175 238839887 388807949 413171970 624537733 330117823 406155799 573777620 899518365 411068295 869974913 738585184 781924970 124644442 861036620 682681785 838672623 439785598 777161002 404726438 691235540 564116511 569397653 380136801 741635644 317346451 860913737 6515446 936355310 324264061 975417410 573484592 730237967 704524035 820807030 817814983 859999559 514715948 706604989 672793249 678442729 779674949 983291527 41594587 460156700 59121311 877035491 639235534 647771223 809560772 909779411 23205175 489625291 607558779 863604571 701974580 915011816 819444471 987563867 573932298 720515812 404970569 653052899 677809562 727865656 900363804 997595659 957631558 988913258 825166364 946384471 820863739 840901951 643746884 994483644 173360587 675333177 504976967 656506300 295600230 625775875 690251973 911455167 429528959 738855146 499517725 988360941 398972563 730009741 645420434 756305531 291231091 461466481 562444420 847093188 2750509 78204053 517363329 931880159 53879382 891159611 870387128 998054808 715984360 881471821 746928201 965381760 217701202 691275856 355885112 420023182 971551397 984824895 639607440 888113943 314600974 996876777 133582155 942745979 674192318 913107523 881308389 885826765 183552464 363993102 598028051 721530297 585002530 831028851 533265067 863909194 201771828 535876089 966924787 991185583 559527472 605868923 417752269 870667236 710238604 853428950 823263765 908861894 59073754 401888798 117407716 838700109 459538123 519237908 170778417 896334407 204336715 783077883 450037419 942099866 433267430 659132474 920867614 929315023 218060243 814668794 194788262 883704488 63202772 323846744 766586121 979313183 957832346 997642027 758677278 912149825 675807993 906026573 372882550 537965396 972402472 984462911 811111425 982674410 537748733 952022208 762760740 799406799 339711802 969652907 654519135 786117174 954499859 972810402 827149194 968933405 751751299 787344394 417411403 911679654 585591315 923458051 928520005 944176883 961876884 993204070 114505812 309887848 778042519 983414981 315097793 868160657 278690158 569709150 970555398 976100564 939436867 987537685 91885636 480184453 334062642 481772977 893314835 965887316 338267822 735136101 304214790 532290243 203528914 479371118 873568278 989002146 190845961 549175413 328151218 740788743 446410063 517623916 787313945 821053661 848582802 966596093 506569508 662277507 851835212 895011127 964581915 981654397 573057233 841329933 461808139 589883688 427509062 781122718 727375117 759725790 548398003 734344085 540241334 713597340 215708721 635877752 721195364 799599344 581505408 704127840 686274944 857103921 971035057 989970822 734409934 780878027 249332385 642311683 225096432 976036849 554255439 849198564 269663758 920520704 51952678 285248363 949573185 999424593 528949060 586040793 859821729 961164926 64993114 344170499 705502078 745329040 622890354 833468337 479623629 912464941 55132502 336539240 2693378 931692753 18127770 959125387 938235139 973820984 804895443 963175236 165654102 913358117 211406178 583299302 266402127 976205482 250161414 503672167 252001477 896126636 711614710 862791997 564889947 691459814 861917822 967805882 700237543 793713652 7806768 668159156 858871920 922495450 328487256 509694696 562878230 966856420 322194486 333173081 956061208 964405964 162235489 842791195 153607045 510231677 760816180 851687380 178778478 433481913 208159233 580579266 402573393 524536958 480672181 833057858 890080301 987567940 219596338 219948562 976714543 995448402 132274654 146647786 793515033 904159660 319171168 335733823 448956937 878672054 984512804 991923712 362843517 682740956 127337401 289462092 582374956 797066592 217990361 235062563 799258662 965392668 903626181 999497603 171986791 245976702 644500841 898519023 869914014 930329767 601564811 866376972 91224064 865623979 618466829 824668909 893449999 941152882 435729457 506056219 243637915 965639926 830654035 961844751 841178742 974851082 644598912 883913978 428327203 884555755 338035603 643889450 994920736 998845812 864025432 951360018 179217366 799025386 975400895 999122602 117872461 637114391 597508362 821683109 158687629 242079085 964254114 990311573 902323573 933701795 713292230 841251166 332307782 477779949 952034400 989298769 758271360 897194214 661031985 669639078 626901246 755150130 344311336 355054436 541704463 673494182 509176775 939338256 678205563 885724622 823984834 916794420 944484289 999023867 370180263 389857929 478903950 502317489 938124761 939037470 291815546 531764440 734234023 793895964 846991159 932402381 119944726 383068306 719010747 852563452 423788549 652933706 272794921 687752741 665632088 775280657 615136031 898195640 778716946 859913297 195231001 753190759 594527438 692042494 788927634 836016341 154391026 267500997 676753885 841808470 268637656 623740552 54249589 524827531 235702614 979124481 343147429 449860732 505027201 899009464 903148852 937107892 464425109 557585840 841200959 948725948 432097128 842735329 877998649 923417694 649042829 735011253 29951869 270333354 487283485 757004174 89971029 721762558 992859360 995813733 673498841 900993248 717212947 986634643 735704475 829757967 314465631 512775538 569668962 576532536 90170761 957940409 838882079 855393981 780325442 997056855 771381078 831381069 318408630 612106608 958222383 967354025 863478886 915634900 244653652 622216172 253417901 516823409 537572160 987109377 570043827 864400797 715022968 786671245 623554627 874781988 323721275 612082448 132549988 827599125 481734786 891518447 48905621 314657535 951411233 988305206 877211801 961165772 117380212 924698142 195999475 279792717 392936996 540051593 205631745 684588577 890844663 977967208 376299208 535022157 710098978 873225505 466409968 592449822 849637556 867804117 367096915 959634113 410531698 592131270 12184975 216482787 424644435 898017792 910123270 968597652 942128823 987736496 907375151 988830258 926420220 957275478 834838816 977581522 604805614 796672416 153186538 779019181 951913865 970653359 386742752 556236636 9164776 796098760 387743859 941980881 144551594 628473227 114243024 313880286 665289992 776292341 125236220 541655133 224843094 845260022 677138941 965583484 432812316 831095495 693691465 843794289 363839433 385581872 774049188 822677727 140157753 623992071 157045394 871636502 187676399 354702539 209037470 918455479 150922109 267118151 676651851 779595722 568663109 612707637 123562012 293034956 871487953 968367898 761212165 775205912 197458024 420628043 128946378 265745532 831818411 921009702 725513873 855083122 627123141 974237316 327844331 412035957 247817022 857998493 604998174 794150393 530761119 543325249 187387040 336835054 111136078 495052448 914769293 928291869 575315508 725991017 349393572 940167956 325992401 777433298 110473471 661943821 578245133 810628606 828787218 984407926 971866825 975618607 942368069 983099911 940502158 986251410 925037701 997801262 438938861 999242683 821121879 985845061 181236090 850233670 982108396 991416357 954024141 966531732 68847418 671539338 533574124 874139814 450686685 481771359 650230974 895327642 688710845 819460184 491245855 638758466 771672842 909468662 579320435 584543764 946024620 953794290 438254681 497012424 340746953 512848965 862348629 909101655 551830681 715072476 690933764 746586581 143252738 616087762 669513555 943098881 134025188 492682380 514552949 940945135 837740496 907299911 882947381 988373769 434475088 993705552 789132429 805421970 754841833 799314249 637013191 928751610 482299848 597269087 268273788 604217550 111105562 449572364 34829656 232666713 372727856 589656549 200833864 363856342 383109482 652114762 931011089 997707180 276475633 691381864 269527911 926727347 881416803 977020392 542700641 722986705 304290233 448876817 360554741 735348780 185570787 203517385 870154310 904789558 793057955 847257889 869449669 878049031 818710821 930721770 213821491 290642115 750807816 804863189 511241394 963508360 97418326 224804681 484760191 781094083 450777224 820228480 789527594 834790842 124350540 920753092 788068868 915060294 798047636 911564127 886017926 895021576 339392424 922321267 111062596 719680553 54307469 437761188 269799273 531262444 596219067 737441841 80905941 342290453 512605002 742007936 483091249 683451647 93762958 595104493 886135203 906416423 192683365 309189139 579904751 644809986 261406676 836708050 645938399 817212211 932446393 981440018 300238306 557206412 262201107 719749120 750907881 863448037 248290869 253106165 3079394 263187894 217216262 942697379 963307166 998485506 682668930 832795258 743405753 925524784 43039972 597283779 172370909 894603222 193317616 685780447 969124443 979020217 764666744 778688443 542940342 798046582 199675270 618926640 360047473 655282011 965725920 989287224 230533009 456532683 647156064 830938763 752288802 815502853 835402038 874689519 781681398 864087280 597832732 649718636 817874737 874883876 719984188 863159682 682374270 841719392 726334020 822851678 944257054 998505101 483587258 646753766 479414656 593963095 179192768 419179289 244267180 321551513 360742927 538105395 214444142 397836179 727970030 844959905 347333283 359489810 374816923 741659964 606121032 768041770 144702079 919418173 131545068 783018881 87391748 522837397 954471644 961729489 592002872 740441828 675732486 694013107 295835399 319568925 624828779 700675515 198858074 435560722 537262751 652846893 455977410 828931288 808747483 964891176 856207794 863506927 679087085 780733856 363656124 367960934 786576461 851316033 686375919 907821011 811777680 956577590 360476065 488134791 56668277 189888582 120146597 448478268 805765213 939078609 999349500 999801602 246098204 785710608 530788808 937087965 272547721 614192669 800637445 959112931 5640906 514335957 338276239 701243434 760150174 993226479 176655227 900013545 882330785 920145725 569963513 595321889 21369061 705700862 787874789 823604593 358676717 860919396 314169088 531868979 609003669 907397353 106784917 742356429 606589060 735986115 339023113 384573951 849289867 990197791 628151499 654213529 926776670 950226339 889096850 906340901 578319111 990087170 445970307 674551336 24006302 381121911 796731529 984743611 989364547 992171482 469137014 807575785 315944214 472454891 15805457 27747170 265123434 348494018 382943218 696500711 453196560 824431922 814831531 945611475 326813559 512063952 787717883 888128672 401185305 513620032 154081696 610159733 183406886 681482381 868622268 896143804 813093173 856476370 267738806 780786870 638545776 810136136 49092010 125460663 218771062 853357286 467363206 767104050 766084971 804842554 643515373 863762675 3571103 781377276 768924099 928749365 768849995 795834690 497747303 741857983 710162400 768388745 9370894 932221320 211413551 589461682 296229038 912912432 909447413 972522254 719253876 923565480 325405692 981153749 435901296 985754354 194031932 307742673 362477361 903196698 160635318 781610618 122429954 810993399 681300444 780990463 370766050 418588121 326035408 410519718 565913854 966674385 501400182 964161259 983759344 983892337 930475349 968431340 229042616 402187831 463228762 901155843 104663014 516661057 739610590 961034907 390308115 453656975 716792427 966953811 376975357 636340098 445291964 697850356 351704740 558467643 701950781 795231950 168710853 567011233 846359823 928980453 471421328 537135504 145888653 452174885 393927294 841039730 934662787 979135185 394259916 817513833 543991883 552099780 213593284 429965541 294105838 747107433 465848251 795151067 247366957 809290126 498219001 661938526 104883881 724600037 939944540 994893060 24983726 257396969 627775895 902527628 352502718 589179767 465957803 502661129 540447952 713907988 993472286 996765585 347470821 556004621 95405228 749495359 61679970 568565481 352189874 566597240 716197134 925114827 959324172 970685469 505178689 795913483 560081987 756690228 472604098 533670740 525160234 569199504 995880655 997120710 480794877 927984661 801411266 853699449 356343083 536346584 144604100 355533514 378215689 859323052 79064295 576850902 642108436 796333791 124291603 810616526 593226868 870167531 267616770 564284939 253319053 714037075 733031272 937601116 189390953 928134849 716857897 973696660 815270574 997936556 524444693 534998850 673903678 901329053 335940113 845932081 540653072 869498657 739145503 888682268 703865151 930756903 193497474 223758786 760515813 764475932 437493666 688251459 147379934 986353707 102537453 716304519 950275404 954194561 281534440 282229602 921456715 994113468 60287848 573951545 844892039 909165718 306882030 920247365 253607235 570670726 270118527 975538032 814313145 946323632 897971795 961840537 982939234 994709739 470870472 939479431 121390226 806037499 251103044 338305207 685700383 855154857 823862800 883803295 219816486 625385921 838668584 923261614 405044733 879703931 928761212 972539489 75883013 84453699 679253969 847945547 837885308 962866240 127923735 387944664 457437838 630593069 109646910 138270529 158535345 771606073 657113820 739867756 531006379 717934433 6822295 613561635 109213135 258882285 966971414 992999843 2265742 462148977 117730422 676935062 296205981 329538500 920378620 968670162 625505950 970125519 587470513 833554958 125209605 508278302 431615405 479046959 311185867 660103465 660942119 925807568 592154685 967396403 637688769 921706770 686891112 870453793 529281122 989940616 338480137 407878500 84533886 604446048 746194005 769908503 90299880 616108731 675243259 851118103 423325680 663386828 750097430 982762395 336169236 789232957 330955978 645113680 274468669 446985528 553374822 957476973 780269411 934035536 64262665 326328898 319264233 987161276 656950411 954540429 51728451 62758665 580703068 899836741 671509932 940529263 240989349 762692489 797965929 813749262 876095309 942880119 296142429 596243442 297045767 526114108 906197401 992832243 871292751 903465314 347581059 408799498 504332001 539532039 874563811 938901240 279167044 341443454 114867153 542078279 642544499 720597058 763991820 795473944 821741551 906810715 800932527 858921799 844446480 911176008 174455067 282321072 743301444 944991040 289540988 436581154 807064341 936032472 657719367 989221031 754730855 856327940 223181107 927498529 38663969 709622911 611040722 788832522 52176217 781179830 168199636 244054224 536766790 765208977 260107291 612951635 379350041 650781472 136784364 631937338 629307422 798641953 538146583 791050458 28151172 772863248 62402895 123134088 229663637 684505177 529857956 716048957 73829221 302967738 713349612 768252237 468637253 529240301 703199714 885970179 416053464 440156767 652980771 747899861 86016368 821909843 175065904 497858015 936935522 991136379 487203305 696576262 549819470 834054197 366180834 767153471 887998118 940664742 53383943 255141565 267596056 721872255 853170961 867052428 722674751 975941837 949596730 990105142 259909647 364394556 54894406 734542206 800762799 934568662 547870648 743818210 525113331 617273609 389523175 695749139 269372595 435611846 611873756 925493557 554828188 895385521 552982894 556763114 512048725 710947363 12491693 74277328 714378406 719549003 338068467 653566121 685906635 829252147 667375311 945283827 927484660 959167649 298164973 970748766 342023256 818693789 43562880 532557807 642102804 919193821 559863852 946686004 256087548 612133615 553620289 822433784 448411873 689731674 164148377 936397036 813866638 872843121 937655330 949883459 227579850 916214114 753851105 757768217 244042861 604948973 864024295 959365513 142720646 278086303 489924473 615757719 70375060 276856674 580269070 704267288 763621363 973914970 953626361 961448555 184487830 720234154 317078474 822192188 238896947 651426073 804904269 920488262 207387970 868567298 437566485 684325824 383649319 641587469 978778134 999488325 627226734 833681397 315883657 826560085 711536493 889387532 439760424 724172286 350869129 681154889 50455889 154013422 256881178 944581854 430016946 594077404 328749859 645742760 374542118 515369762 423198033 618270547 229638230 293377875 3431778 337316368 616792483 999604338 453706193 715745386 431389426 869795254 786135975 824570166 260106732 718710914 408668761 833084830 472900678 796676717 206068728 938220005 521258946 678706857 123892868 834786389 392007690 667986531 739322039 897280214 482363177 533200118 194762893 480091758 226769413 595153175 477253697 791184133 169991875 740076082 934852135 949034668 728899508 955942186 663100688 731742279 823499145 877797639 228799657 397758467 979981186 984360243 868411443 931747406 164859138 395345120 656901830 815352669 849787968 851636865 489503169 572924201 965283141 996330418 438547597 505772316 896860664 929440737 473776597 665563331 813983156 978290105 981805013 984947467 868950358 981376492 883847400 912513257 931979358 936140263 534439961 898324824 554621525 953983014 499637785 983573878 220945643 865869590 316895051 435182803 643055201 705132611 165537565 410551699 637092781 886075837 948239230 972646839 789085642 954407544 407775189 673562857 810187991 869033619 738195137 937337426 19746125 660456396 189236635 350715306 710875220 790230914 787089277 910470652 721882232 995312499 814142531 944482592 586641329 935908118 675773575 948327822 303784345 997032317 562484014 655720766 428143069 846321767 285401109 437308314 308383627 723981826 428347374 865916345 440882371 586674674 843126166 860276805 233696588 816559544 466702237 858358552 494466454 504561039 821460127 932850235 357283245 814045612 759060679 941038930 361088766 506668657 91597235 704544812 662315618 672449985 743533376 945351431 703310502 945575562 730700234 872614230 1407083 452041346 494347140 552126846 945370980 988090802 161027300 478295104 818365619 976836573 187700392 476644104 575292692 647707128 985664510 995732808 838989091 998973218 988635622 991194326 285795586 925591617 554714823 796260061 542123093 901846461 166386175 188400991 174115852 226133440 197670576 648481977 528358603 754361074 286333826 705272325 631214647 865123853 128669224 789136693 178277203 796027146 624589670 687383066 510847578 645386484 700174682 953242970 368163581 686402784 433570347 847706999 452344041 858477357 72497914 994565289 448867917 954637836 689204690 725332161 451729322 849197486 357063297 468518593 644310745 915486059 110391133 728517084 861115869 886885583 841982752 990721692 773035761 854075375 908088257 933890667 100854634 385742763 124838702 299780630 23598266 566851611 507206321 758455491 968702230 987293572 287634717 761460596 57020907 752676854 319409188 721272819 230419540 753078148 983036189 993154691 796667198 803573142 678210632 884565916 574007755 750912973 77870832 659597900 566037533 642910420 68161408 368001955 889487615 954056932 71385830 162821694 58034771 800821130 455842459 528986453 417228576 596233869 204248252 607987449 84392524 958987611 464596705 481731827 470176016 625157429 94990421 884001245 454133683 703345736 981717639 998295172 931654711 932458452 144487968 628871189 784761501 868783653 470787745 522546430 621477252 907537576 135908741 533498188 428385664 907021256 760361503 760675910 238834011 406487874 170165853 577068984 842571489 863063005 939067306 977158044 951026184 978833794 817983666 849186941 747184997 810246848 856701834 886617487 928341825 987295947 414471817 501723176 190281869 380218735 664129078 717793836 194990559 426340118 216030445 345069589 238744304 459869025 497864382 531958219 351149202 923623845 382492156 796785856 532995071 846955662 316947737 894551783 41643777 513775562 691460396 973746751 508706323 874540473 75171805 192076624 431923837 578276636 99682816 950185291 788999392 801075298 342040022 400936913 65115383 770983919 311518632 866705278 394959213 539666316 505635417 808081268 834857252 879316720 566568041 820723988 690068349 842731463 8493443 704611815 879334991 952003606 20761373 626701998 836781909 877676267 377973149 700047712 402049245 574412117 167375153 308665027 483367990 888742484 378542971 708055124 638669593 981020387 263252636 594142695 688406368 911080403 759500191 891104158 634389954 920542078 602763033 999402876 745452646 912960799 936572406 964456068 192468003 948243909 460362803 682452463 374879529 546884886 308039026 647322114 973415594 974102054 384128770 748580913 392055576 927526794 980387711 993759545 840435209 959818669 450246667 492662691 676931200 766038722 156406451 451252437 355327308 762667465 907627789 920885121 28361267 507193329 384111192 640584209 206630467 652333236 724288263 970380739 254813904 991243157 612038216 927273692 342429150 505093319 616769232 648985828 911429393 981703159 188689220 228651378 56489370 486476478 133238782 439411672 723635350 782118501 89614405 769301958 695014877 918120971 214088688 609208631 173807716 358193453 804538666 903345710 807445209 945756191 794811583 874165102 626481830 988114124 211171572 628042075 318685244 363932259 254578197 764160537 498308836 829356992 176441626 811572210 490516314 900327441 564125669 813554753 827213217 871295176 512454807 562221894 843069605 920939040 839920545 912549724 472817999 590284686 888583299 950832983 112856882 288105543 854321610 892980508 645004111 682763485 600485524 765739822 689040978 913828589 701937776 830804427 964400054 977142597 61489184 844828465 429204048 646218715 593655976 734887121 786344033 833098248 1476323 514809717 773183662 893630649 791777813 937539245 345239753 988135912 773431366 945066810 690400533 843017722 65054382 246661295 14312110 537821667 101407206 799182330 369612271 780596068 458631098 670654714 991675483 993850930 74753654 325501312 568857091 908863604 704587223 900167289 451409101 751416962 599275119 977938528 765700525 773498434 994357378 998467296 644427661 821070605 326960907 644165132 298238953 658090264 101425969 691519383 674163799 897624274 40769675 147412336 428557742 454692546 988566694 990719474 410406170 452933937 786344270 947836350 300758108 543645296 42737673 278861172 815416184 878580088 119718932 487842239 334517208 952214914 890259792 942813259 6060464 199272732 58581613 367600879 741799531 796080284 535205099 648292356 804931882 829428195 24141342 373011030 345589816 359935660 335517747 822220100 531185959 804729823 44320020 969582462 756089982 786731947 487669157 792563810 139765419 371144752 416871239 466492113 386701846 962484114 459895352 527435534 683054216 719187368 235076032 882234606 984414475 993414489 957963122 996623533 684947270 780431810 61297133 853839162 911365011 946463870 606353871 746123637 842163766 953235849 174029257 369478224 223064587 686968522 420751386 901557239 384511376 574831930 85670231 323493320 734350686 898704948 657033524 745541202 522001551 660798413 383133625 843956413 636075627 876085872 576241528 586264936 837544730 843290219 66083731 107400214 701404418 931323125 634856266 816241911 338137852 774425234 364517104 663444809 996089796 997988863 297931777 987495772 556192101 947101850 989361875 992578057 35971346 56620392 319560835 729741382 823020316 935694753 247985326 999815850 387617094 425627853 768968177 914637636 809194765 844273138 989527577 993961240 111807695 855798325 490650456 704479478 748998817 773757237 778201248 897230550 231476586 891863212 973336726 995765795 577028358 821839756 678657358 981822189 644738688 752026314 165652910 701360795 266167580 349698501 735861245 882075666 14012118 387868095 337023159 441637973 54527712 141792125 935650019 948724406 529979829 548343819 191310648 506442512 250584978 651000641 603631916 686611558 646869164 833303646 99181989 675726541 537091076 876858670 787213678 949276855 504857971 820512017 199732316 958186937 181894889 561532994 431501314 979610456 533486405 751698580 738051809 802256081 150769686 856382980 317065316 821240440 300256326 306930912 879463036 980699129 102154364 158483263 775829927 922270221 563459809 790507261 199870491 471675853 69575118 241083585 935277258 976420799 928729219 961900719 414960641 532408148 156112743 190575139 126356074 605633991 210905493 263158212 838647182 917146933 375311328 913242344 801437186 893333361 850167378 895123479 488283662 786667872 617075225 718993414 621895939 824308766 276043684 941799090 735233384 971620380 454982165 621549649 425152847 966943696 297617633 660269700 225808838 664093819 589325845 894042381 952808316 968195327 222235093 899032995 512833662 721669276 836653064 936399002 264730072 814508248 417537086 861361466 863538102 984969351 398336244 670463743 835163391 979333499 407021134 692383717 127204057 811724696 667029232 905799201 693759348 839968391 214624354 594955850 386226028 444980214 966864978 984829631 429014304 685680271 167559816 555770684 305350732 726818902 476962182 967810313 616351272 770321333 379218607 454512306 701380874 941973035 932638865 984052333 479404218 578477990 442842232 646251437 374816525 449137142 294165030 623198390 701980898 746165134 414033710 569492006 195064525 784463960 541912243 948469679 284974356 582455407 977078737 977770637 698816888 973555578 371916968 727277650 485608941 967862064 542152507 995262561 977285348 991735995 545595017 682938130 792286963 881438962 380802768 866787296 509082079 685299161 481148847 506059263 606019615 951275076 826630774 933727606 839644153 927391317 539445650 585856496 556598416 865690418 655552579 682716437 798586566 925422507 798840354 952774680 821672804 838477711 189470587 466137648 738794204 920250988 268271817 616169143 663365400 763903530 434172370 920809924 977388156 990871786 518281675 567289419 182351297 348977986 16299540 738116935 171725156 217670130 995685056 998819013 278453863 949272422 302149456 887050849 360063648 562362141 43473783 977749593 245050334 772088800 248546042 350425512 426475426 723715429 460336706 567414410 170969134 370675820 380618860 763213054 231634801 798620267 933095791 995595409 787930786 931766125 819832366 871440635 50846719 890200727 418773271 892871394 861293557 984065917 747116965 915341616 875932627 889363061 723605637 741853130 563160852 856499400 719010766 940987782 251565941 832701823 545689617 631669871 226845304 410433513 461058862 608064021 166429644 737229210 630395498 661836785 463093896 527222498 821487208 908369591 107728088 188418047 984938298 997360031 759748314 969051978 280308371 561337982 650674116 696679584 830722402 922917720 322982828 419422685 749350837 939452845 536696636 618010732 147815523 371908931 735146865 831610716 475414082 847554889 578617427 771199049 135740618 347661962 784975370 828255896 838250575 849719693 10202853 712010662 294610650 464749332 38898691 440944729 381054996 680663954 103552575 774695210 702073667 951183382 413782719 846179536 720437607 899411764 534420766 854114100 90334163 159334492 16465016 126438719 344063908 877147832 918099717 960734564 308046094 842836388 883171287 944849309 512835062 964433402 398573860 930789427 606067318 654351056 300730851 991558790 706746174 707420819 473007070 880799131 285285920 708759013 970362065 988602579 147483401 788228990 634850700 828253301 942071686 945568564 521193966 532271209 680814883 725328805 897605507 914681289 164511577 266480684 371806493 663347801 835558946 931552605 662146219 744278631 976238730 985574180 218078723 611123208 54001340 361265377 818594741 999382957 939690447 958217112 563399101 911602794 497871051 665607045 967285485 977196525 688869089 872063698 481008124 835592929 501521446 676655814 992415410 999656980 926032327 937202382 378141655 705076444 445193227 958398306 755980794 966420746 905760730 958530070 336538116 669761259 902912791 967662388 707510679 743373680 368466756 622094615 379349232 511345927 493634069 868137046 913147688 972113265 34228913 696253632 992367490 998883848 954537583 964304464 38515194 784635279 397451476 629055922 128779150 729988715 873495362 922972007 943610144 952307485 412562165 890377928 829281844 842607936 831693437 904650462 847779269 913169891 561524632 798070823 241177789 902542341 149383872 983762429 747556898 863095630 55519238 492538347 817041585 892511506 130518767 794852845 257155411 511560015 205474870 480483573 298491013 304437526 969752203 984783228 7138219 644260042 605783731 728178410 380342383 685234170 998576887 999488909 386828132 533415462 407412957 788380875 16428027 284111193 574970137 713515566 112697716 290861886 466107553 879101145 421275816 510128221 810234265 855421954 257340471 959070746 700091353 768691579 908295169 916686460 681089745 963477514 538233200 798526857 908770173 953177549 998703844 999529319 147761316 156180532 778419967 787275036 457857552 889817107 329971065 673185030 843326424 944165758 209164834 546885154 410336992 773905497 809724355 992192805 763281618 917084929 212291942 680708687 59120790 948676205 246532395 574714814 175070145 663427015 468453749 530790980 519838317 577742905 493197823 755780112 151918653 871430461 395996483 543276153 244341955 987167848 685526185 865200160 33259725 627153164 823164854 981623944 370134643 969090063 988436222 994822824 389591559 700984657 589965193 980139427 701187606 981672163 531825728 967533326 496414220 955961926 519821134 789238397 942389362 965611118 109721281 265983031 533946191 694140706 831818273 875056446 983596762 997768095 425875916 574056430 789808788 797508667 143094840 413806442 705167592 778006763 899460464 962862917 510794982 924541029 476289883 764338973 424868746 943556346 900510121 967097352 785908819 989767335 588395859 739450486 909003733 944190340 846894000 870266526 151252534 780061905 188539390 930343972 57337159 715123039 761570407 846557942 590093550 648478863 978896895 995222237 765605503 812274912 609176147 926668532 457312856 831164984 415320349 456193824 274582346 506335313 580870417 879361405 932106239 966029185 598283533 667643160 669622634 736752353 1957089 104753371 799033675 820553300 474897582 868007452 210426607 331367107 530939240 824736075 960497715 972600496 558367889 992641209 159171594 301688833 521747520 944981388 469833744 849261355 611678881 708442007 428104820 686422145 623542869 998522538 56589611 98045933 222176371 552682003 749274129 854390604 208768838 469558770 254351799 264719107 259728188 563044418 338801589 932379003 123165813 175010694 954682603 975807450 93064354 875122564 746809683 970298192 519828945 896510644 595955837 796256415 630657150 775751607 304103083 756819542 840735153 922009853 470277671 922740176 426085806 962303610 588657735 946392116 454090862 912902313 488555531 620976419 314526039 989571066 769266178 958035599 662949667 689147683 689542916 864250399 881745947 958623954 826714687 976468884 30839134 992213500 249681290 579498907 476430488 581153702 922895820 956060147 257766923 258224913 735737005 769819112 194185317 331148035 954366325 966229339 277601508 480324028 448423334 574771593 234362976 904407864 425517355 970860707 686492311 704485071 96835512 604222040 703729065 984795745 762458099 988947978 323252128 517533046 786821536 900897975 363874009 493939126 480749692 945773017 821077376 971774919 121912089 908336815 123772803 539091295 670757712 730188509 183861928 740979930 981377464 990082290 968909369 992759325 303440855 595675954 786894590 896605095 557821105 583221366 17335525 364479215 693680203 711407568 453711641 696295291 334887311 525909260 910926748 938263304 560424145 897140907 433698415 851466930 215977632 357079538 768296251 912984902 858695519 882832748 839697101 914102996 520249565 821846202 159944301 942444014 677431468 757881460 938897960 956772045 731075465 892074051 972826050 975404872 1135306 507277550 581216014 719281567 723661495 995919686 948172632 995385881 945505077 987951934 115503070 820173411 103194976 141746715 194874987 201081720 462143282 667666500 248600226 317527401 802884890 810494104 260491779 795944459 901726826 919645278 292171066 994122749 850296211 920514750 722691997 841982964 329628763 941352859 761515119 978866084 607938835 716881706 542475588 751993456 164039861 730631515 539456451 587442546 584666647 665130841 12777244 884634343 281554448 399902551 387113953 556536912 214677909 381934444 257124776 356852687 2930882 964489815 911216046 929729303 396438241 586821345 594227100 683293696 230520680 599865192 250073705 326592903 801504690 953741336 606250811 980348134 741376262 902613145 731965635 735865741 819514670 912871247 151588073 896308211 347222917 994295430 842231110 895964625 143915971 248950022 344657113 685750811 203034226 320149873 187105101 898949830 29429304 801168780 257342175 602618844 706428248 836300445 614174649 811925699 80726554 535488842 919019837 987691358 965058210 996406252 293192486 944476164 703565448 792034130 731254572 885263339 617058238 824304890 787007692 999493147 925749132 983717441 805548100 928433758 619691289 653059989 511255336 664369859 707463051 852726225 658957371 801290590 474548688 691373092 433198476 765961809 164173772 547867969 346553909 999558266 583324810 970885572 142997728 710434144 499752813 683444566 861878592 896883499 331091859 807895649 587715490 736846345 314489727 499917907 964236137 970802688 309308669 350620513 822723290 965221261 93380311 412107066 819012614 846798818 547793138 944874992 435446660 550001452 975670930 976580660 377632781 410288534 84801274 487122293 785683570 860571478 641259358 688924942 583218566 939990940 883349378 917538415 400970379 806991288 393594845 494529734 292744645 641927116 803563308 813023340 391317706 479312860 670801498 776318131 987092367 990759105 301838697 371027767 65546584 305533055 686241381 850213106 268004471 610417856 121685715 650558034 569586533 686735953 115204642 823622628 646277232 916542665 988257104 998108333 26447547 41615856 379230512 388569122 349803450 708702257 84508967 216038516 571097570 970168562 597443900 715689309 556956280 816096582 451584984 829359492 419479626 644850030 247537803 820915546 592490000 945555036 911063128 989655814 516741424 840288358 251714256 973021348 538310288 652398105 340466072 452820619 683629357 975757270 998043233 998182420 578259923 826513125 992385551 998346386 793065891 871928730 699147585 909956722 987722070 997879839 637470764 901055650 493165961 933704238 437902291 973558084 292757393 651207654 567088385 581547445 371762866 493469196 764027371 847835251 659334827 858929236 502419719 591810364 829277039 864687081 135107307 683906287 976500261 980828269 808025700 877259335 290419892 590178786 157402500 832432222 492559256 788095042 21063264 556600539 6528235 896437526 868054577 941632632 472959839 480636412 157415250 663969892 829845633 875493710 419960361 655356079 622523400 794093259 52423766 585226194 894396018 990925967 475716944 800038554 760344939 986967276 141406288 451970458 551813456 937183387 46422757 130381253 470257107 509213552 150218769 747825260 571446396 645713175 391271876 703843244 614208239 836984995 479372783 970514598 121319657 389894977 646148343 785927497 885664749 959936949 762792136 954700294 387793474 587765400 266864399 416311201 926260113 965315907 576605662 887486841 997083162 998052642 98114971 193059126 336636201 907935320 76075588 583714162 208372897 657545679 695939370 889908314 783722950 860047117 831625517 842733463 39888042 927119508 950079737 972205914 421138099 444180696 616607201 638035170 853681431 857374524 703577779 869190745 918690328 955141732 520403671 801399047 138602491 681101938 317250589 922952894 975278145 977063420 181148179 835310439 87972499 181995575 287920355 827597134 684631973 806612132 487523624 506710674 404675910 868716594 752366169 842471602 900478711 975796178 267733777 847964634 673891946 907371437 143803925 739516504 200217514 694323288 843914300 867616903 997818782 998623691 91889628 974798710 81257327 793041397 425285865 813639906 13747357 569963446 306151923 654607756 340327250 444012597 647381291 741843079 930560459 969848721 802739162 949633555 631081572 736906311 877653804 881760512 587930833 900596501 989227549 994203140 591797430 666482398 565545119 909403813 778346005 897796792 134726679 857906428 160306442 300451020 80885699 965477480 818421688 833836413 150362894 260834174 663508065 932456818 948371166 985036289 558158430 992678015 79645731 303175763 434264401 623996480 367849625 465305699 967669349 999947625 363418081 807654882 999536093 999588621 97855655 469462923 646367590 964078781 775155470 946124027 774347355 950862558 703599851 722675696 382130517 517865691 637740847 816891484 548130985 764631913 409912139 906859984 963873627 967152095 802295868 972554452 271744860 456916992 878389399 891591271 994633956 994690853 86112723 266064744 494685865 998140976 672983433 897710635 540178768 942274388 791850947 874160089 584598941 997096906 86420490 517764595 42497314 69489220 129672146 921429945 168224846 762290249 300433932 571890625 988030634 990772007 455377440 678245527 55814760 611331051 254946767 861674931 803282134 806554081 782989359 880281933 358133239 942466419 877402133 902804993 111812816 212095695 255066427 304319198 966903187 994463314 190693428 433656148 874059859 985321072 250296043 373553953 939203877 944533902 178435467 941424294 714292944 861505223 377661549 981641707 736005509 759733222 754577094 876432508 913981173 937345164 689073158 770076240 10615101 590943402 919705090 930842238 169143779 736050977 249609434 623237812 289382305 663979798 121662979 995689199 895653925 927190465 139738401 921721034 622970174 967408900 880441989 959279921 774935623 938895432 491388369 868685744 312195938 835349586 468991617 692915791 667328994 859466970 115541195 213781123 251553879 757744913 898455045 898988107 796778683 927287573 953838106 974064133 797595266 982415527 16883473 996587655 596747447 859837511 46800621 538371403 815311966 914139233 894626683 969410936 51306965 168906636 687576213 836639932 344758425 580210789 991761601 995389205 176401255 719540017 987137445 994026222 890732579 985756166 231920164 907694473 746807438 958235011 461756289 851704324 449263403 925815356 229022661 463494387 802815207 856449489 428827215 450009400 706851704 993102785 875761140 903394254 76425937 174924792 334123907 797806659 583502437 628036814 763580238 778648525 632897718 849460176 413797277 928439351 151470533 920595961 987526277 992737626 332724839 886659389 989104531 993966099 340650358 658437918 79653176 641845852 55411960 965999726 992824030 994105795 644678079 718604291 757237820 896122189 495393192 789969048 533964240 665214277 598804761 977452195 213385854 543520293 741022179 922852694 927019202 974439673 788764642 884602840 497694410 792276690 293535523 767299429 338383619 689131270 813921123 977778800 28441112 103199712 733831338 901879244 131743983 841744115 45239748 575526905 830170830 938714900 33209445 158047174 182905343 561830881 665180769 847640591 290645375 968054740 96427547 724695025 463057771 824769625 183748857 271702578 743915970 979325356 788841382 904646375 409152029 939173125 819329771 945696048 818331118 984244281 364238601 434756629 716318796 853441115 471284136 893877429 201890077 250132486 438588394 862886699 706770852 754664700 800850801 831432619 205035582 287357755 649654582 740647381 232861344 673464126 352458861 644631193 692493806 799188682 704137596 922291269 746059846 862503790 614380894 672042692 921428358 935389802 411634927 458784314 282530651 664151463 112922638 559573684 845324195 990875332 466322708 788627140 12482180 377312047 652954950 922730887 664086318 679089006 528768672 568907946 48254414 659113998 71964497 666245083 764605414 849203983 180541205 977969668 312213239 984564794 969163038 977763294 459245128 981436640 139635969 771178795 82361110 779813510 496478196 618014633 250477611 481462768 915990287 926243639 647503272 700677460 104051731 955205996 907367253 996795069 228679668 267652612 718189945 797757643 562778837 671743876 369865285 726035634 976453831 991475117 687686946 965851480 589429050 979131186 516178963 857118130 789147805 924409698 407650686 479890183 898312810 997352335 980069505 981701482 278132816 436151341 499142185 761115974 618568913 895098783 922861239 969022270 505527429 763425145 152193394 218787460 425625545 494466538 616694258 703180529 713383043 938101299 711804637 819554443 859943503 901739147 555335748 997722251 34892640 838588551 809018979 855312228 643328561 876968047 853656293 997387029 791974170 953731152 83541023 727810612 882918642 895556774 206637867 796313723 616850122 793655335 472990023 516335873 97142375 972582963 470716726 847680904 563287368 901301844 872778693 906111619 849997805 878479248 112189694 485505065 429657358 678733134 498251631 649412788 558033491 666283647 730810372 909499514 613582087 828009986 91357319 999254776 989072324 991400216 874457713 960796548 843725420 906938400 71006624 583073644 870593946 875012974 475164388 789992633 908245051 974272132 259561123 931895338 579189897 895879736 827245693 871630467 165096311 249660560 464154050 509782969 858230342 952230856 929091515 965554092 688863535 737668439 578826473 760506352 963163169 999955776 251278984 820555314 372998575 556661279 986950811 990973397 969676278 985261334 808637567 925535329 67003963 870688567 28558043 955157707 256000214 297205899 960429684 999634267 719098775 890533863 463169195 529992857 192307259 551584591 939460588 993084182 481291676 997317847 358503992 806975041 898853945 986827034 196868295 432594990 306084368 969432410 812348511 855095496 320200665 852496020 134512253 347732931 410466305 954119609 905168980 935920216 32246183 312153670 806257970 965045329 177804017 346584683 510319809 960661332 35935735 37685024 260169000 376130979 211615734 241765601 574735799 635307064 746579093 836056124 37275712 578388846 783449069 822041527 218868090 465385353 268058814 309422726 253884883 710328367 497494165 510984619 775908165 977185129 583257662 917214225 264729893 725027980 411630873 711949482 465251383 853118747 195549174 473768630 228528266 801863908 523602736 587484998 478463358 754126296 81373150 466637633 494031597 917895944 430625534 607437481 773997495 774673461 526704349 710088348 535439902 879123707 49119700 394407859 880736276 953074838 591903619 876886592 941032453 982786987 507693452 697993038 400101711 702098297 625466531 862345063 637032837 789180718 867887525 888731465 547862906 875075677 703903825 874145950 680305559 968329390 367636294 982231050 205264232 704512180 374950991 846928122 848781259 918817711 224741260 676491044 589372458 809088291 415257670 443443202 681846578 855841601 355929438 705794701 576868155 668821148 59035939 477958493 703387435 721649320 840235241 986812329 958186903 973499773 607291642 812384976 720198845 769408511 241591920 969810845 620976455 928281535 766050701 973384247 367561455 801730087 66453056 528456491 438508222 697270844 853861286 995868879 751520787 968761843 779480684 887222362 490515358 686556470 361802853 362472397 552956258 687768673 707224420 779919781 823113394 999246585 436198329 953812206 295983563 905925198 910645915 936675815 357140741 893723218 740564610 944386829 977095200 988011617 290190699 313159207 727011672 928577474 485097270 586528743 363943604 628534943 369766240 861565487 393113576 597152332 832784949 953913423 834216818 899176784 299600637 542750948 837816499 909259127 706422232 773388795 442636208 962108637 125756356 149370095 487115964 640523953 820522100 909606960 172309940 304835815 977933032 994843768 551172181 697524467 456721402 469695589 14340653 70170310 556580223 913998813 473183285 683992864 46239276 72530680 393594822 637453770 26122191 337472914 746730712 809852391 315791815 374234428 460398768 854007236 948033896 972240361 40854637 550704398 507602649 623167901 466340734 468356023 451828755 602907218 225925033 709607066 618877767 805650221 772365406 946657704 822361379 940125180 704832674 830786898 357553642 363652119 640215279 645609915 692283879 869937843 219732508 351519793 755792573 878581012 537979469 688181495 153763635 573701518 521938711 636894881 80130061 143517659 882877864 887603066 515029662 879087838 752691985 756561337 629771858 716212584 504973868 894316385 226448064 369428224 784242396 951313457 362712207 464579788 342690356 404771332 934713112 975955086 886093026 901309142 273506362 414453213 16932111 690337092 234853151 296436366 131219509 400473551 781647482 782800355 962215939 980476278 905670131 909204339 215072493 791794537 487369854 647232442 651562949 699238261 261444910 727512453 656523685 684111525 336277686 890047344 328522890 333615612 941044986 993770383 679295071 886746540 452104085 800981836 398525995 569231486 652860580 745331592 340474123 568590205 319264138 325836439 461264484 830719579 924612673 933349093 19638782 827211814 391868933 569616023 540477107 608477555 317853919 331626616 505188914 535293779 809421592 914719071 760789656 943152741 315481791 450434323 218309212 320750176 83369306 417585773 844543323 897385573 356033881 858133381 425744330 810530292 784687980 899985860 850390984 985295954 136291960 850480096 205674023 681215545 268221936 309586101 476661762 584537760 932653439 988597969 792694386 892944984 622078839 769167385 941417678 984175537 165838111 381401662 824648489 849479017 477487711 993878547 833601315 959568034 483445830 734739522 948953106 992630138 855719861 913514238 264093461 648616485 651323118 999218913 582478449 598251974 833241093 996208366 538430058 623112401 930037149 979393443 440109221 960205040 313102187 730037991 335138509 695705724 833512235 881308475 857749316 875976615 346498006 716223637 285309164 865809295 977042079 987840465 578317517 895766030 764554427 945423183 571937330 919507424 909250295 910293485 983876359 991816401 899336754 976035559 24745913 295724635 574165954 764071399 98656636 936375305 368334974 588126385 755525862 941920519 310407758 387333211 487327188 553412914 657853237 750113242 939713812 954818021 584654140 954062806 946666703 947537364 402060996 408672484 413300776 783185897 455376832 809675564 59835753 987069281 426622359 645583305 582645706 955452491 653343406 905973170 195705236 759846062 130297121 428823097 352052452 358738462 150077487 778888771 679804886 951760435 492525512 882939385 176039731 832289592 58713428 885935690 350837801 691166252 833432136 973188964 372013675 576513018 390451937 929004054 133761598 596753651 56138194 543131746 739372039 875676302 703518574 845500802 286863104 622339762 3666104 862943239 384237778 591623477 475710871 608858916 780415667 796936685 235399979 626053348 670994388 891993077 318819794 406756008 324027821 432240734 747223296 755290802 470992195 605760232 41138979 138581636 662387967 721129323 770383634 929373794 16060346 363250542 940012237 971122414 474475415 519153817 410003983 440419861 689289317 824287809 237106439 999389776 761368812 886669798 748754809 879424540 784310909 842972723 542275942 933392484 491455457 509079589 10735749 963342342 641340213 646838316 971324029 982325009 825667801 974108004 307301276 656662555 358133000 629966369 490478910 725400449 321033217 647491620 447970185 857744413 551703864 552523321 205920067 902246381 716814483 856020826 665730888 951423060 534163961 795171570 478664456 747391160 867180517 947446792 25170163 849727740 703631164 778077606 994065093 998452358 707127705 763929770 5164666 313314695 201806028 567596800 346263934 440924829 841843008 935587412 178765784 346191914 146000236 209553769 289260902 427662146 792717312 853660552 451536399 766591528 822555231 900552230 168570689 908262948 481315207 581300118 83837005 862972331 223073512 673162039 492806923 974027013 845108804 956015891 253859897 633677170 931563534 935185920 399369358 694970137 483001904 711518720 505730716 609124209 548084042 631810494 878198792 935393818 135371937 348558401 142112051 248494269 848577727 887025729 660565756 728525986 378118706 534533491 306198580 416899242 60453167 997923748 637380332 927468705 683125315 967393556 50403481 946303384 707532533 826630828 636431608 664454824 892467811 984347511 3694321 253731900 16557512 761525524 695723133 928193026 478262742 702189671 81282936 572496873 849632108 883009659 525990215 932387123 711461307 946575257 669463573 900860818 459689747 867498502 437330979 547481855 35369102 544122756 822735661 983250731 227819545 303423519 446847623 861683855 709471269 812363372 605750296 739403403 9654941 19338104 967326710 995396745 38514344 295949143 781330488 786970518 603255678 822288570 166303803 620793259 914080768 986686557 428532703 780497850 908443781 921833043 872002944 874992379 429761145 982502171 128171667 953444897 708922115 908540793 43813078 837824537 713067254 865210086 415544363 847095369 717409914 973711076 98308616 163470197 643312572 983418197 718977825 766452939 713447859 772422248 874545428 905892019 750321678 795395783 504277774 675664370 477104077 853654286 460261408 496759687 208997308 453893214 845546934 885833397 598408186 953911043 435762127 774454644 876302915 997947319 12121397 311177263 100793455 648183117 600020630 892911006 943811485 953854291 823756231 872183791 796462868 889681748 569222838 773405078 465869769 731970983 706806211 761814899 736613965 939530651 354254434 417207649 100197279 166635555 269887098 514863473 323297391 424027064 679731827 710595595 878163102 951416755 58502804 565671270 486691668 696285975 254952810 826708507 126066175 732982807 363735021 944003970 12875091 765656359 100854313 973668087 813437905 826239550 106490601 538113020 684578104 777483330 212444865 248708346 650027570 831191000 660257460 813971567 695002964 950192207 745997319 954743723 236954160 931662631 314563002 756615958 799279590 943991467 580738858 724327702 847009709 977946458 282621159 680317491 562069845 679515387 565618818 730072888 465473271 923842440 789142736 965710659 688990426 992817132 97236287 620060363 731384196 900381951 313467745 829274900 881350400 948606099 374505280 741399397 159466074 545459817 757285515 827116325 144146931 637433951 604134368 992825817 251001967 364356054 279622164 803133325 902623793 921602670 102906166 106426788 275121851 406305570 680114097 890209503 602367777 683349883 915737933 932088697 333975221 407212948 58423034 353954224 278634582 617322129 915916291 923364784 354504869 918243405 241464722 514894875 499677983 943636144 732413978 756246523 844864463 878503336 550898571 783527738 92686750 360074454 268774142 806864120 373328087 594735820 20061223 303803253 647903625 825227200 656497518 741052102 666571900 898041088 470196652 585442605 950483732 956662487 101738167 816162880 440303222 478230749 680225007 924996567 119618354 270865973 615853143 682345011 831814171 905634717 544645882 775963219 534678402 623718203 503938360 545153401 237949566 457779844 287690245 833526050 299431119 784467621 356607637 661636457 926772458 948981589 164506786 967660220 540715702 693176451 891656689 898683502 645333045 934225181 990779272 992231783 648060737 758289030 137603380 892926486 257756977 786670565 912009981 972939202 232784934 265073794 301386234 714001519 540093500 704484223 399121588 991465397 791242228 801787686 420511148 582933291 973354454 995320709 40317741 965714677 834583036 955862620 622759937 974478010 347855828 421318920 150670068 854692897 904844799 959148302 333332485 712529731 847658283 985421062 235359265 982189615 584102018 650835796 862018277 986095725 497539770 534845447 679589911 691043816 975008025 981565839 156430495 500455866 698623953 911633624 914797381 939269765 774288355 928188509 617073288 893872158 150510302 765722748 958137146 975640396 579062951 907570756 116368525 656768833 6944342 934798138 443628205 718878422 867522616 908600729 829445899 980866419 892359344 907601588 730092978 930312171 851943132 928795936 381733001 790555158 538241937 742766826 83754113 631481959 879717636 930842085 794329935 824066277 824673101 844903356 333012964 885096458 701195634 714347697 112272437 209420997 459073575 701536258 213377828 592365347 344869008 667100067 976564114 996447458 712774106 989899442 162263493 593198066 211064043 823386640 698952369 914755364 110615023 214296635 442833180 800293451 470528165 735446913 880545733 902402275 405435526 452203352 123806567 133056157 1697981 953806645 259962664 515894264 327048158 446993953 883840680 929675272 163352011 823468675 853710777 869422998 484778620 972255369 326726695 548436580 444805077 506187752 513981222 987959643 88819521 822554709 276592965 710663894 696937334 728307746 769690228 905685182 74894120 427076276 945601705 972256891 945857973 975089151 295407595 443703754 343581026 850003843 331132819 848944655 828124248 927068374 289802462 762069420 369867067 922954543 456413758 867724582 974743109 989113692 220253975 911234844 383068181 483470491 422296880 507302691 985124789 995083407 881767044 884921375 914521468 919941668 852852946 984600549 526077249 984535744 150301406 611471448 395304998 831638992 931115092 945709940 325274566 864431863 345453357 565987278 144405329 998682693 875169169 918209241 98123257 940285651 945791942 953136275 463459880 509423373 260184231 263510043 173964910 209770466 696352411 928318971 950807746 953181683 435928670 571730447 576413451 944787881 880483106 983949884 936809697 985623730 949874091 964060526 139604120 637312150 180275643 459184998 197528872 490206621 658298699 889325795 342394350 754540171 640059305 879313368 699538753 724027265 287117834 354280800 771215360 870612207 946595735 997800654 539950570 916211119 307701223 494246803 265324022 731420581 679703375 786228816 16328147 260347531 269487811 928796390 224978226 247446282 463996687 670724605 479007187 772760796 817156214 958386297 814700937 834384462 857386100 858523682 926406968 945524558 493361220 549419380 346340356 478298428 880866396 922312994 142269382 340490849 901311501 955611530 685020967 756812488 783945773 907804160 199089954 922110778 93550077 596955565 136856006 562880459 75833289 204825520 681994657 737103578 913595245 934679087 193662045 261893698 426517637 892211091 877259474 911465632 33786902 151930880 611412218 985860066 469608756 621703994 688917302 977405651 327252792 771323762 325676607 845719595 820699023 967420306 453042313 683791992 779893736 837546308 232333601 991119727 656136711 713872316 909993912 944089664 763617114 836311671 725669721 739138113 365641597 551657521 920502086 970040352 548723677 946439006 111629465 414565502 999739799 999786675 988746360 998614400 792183576 894871682 33945563 856821982 700115907 793038061 185755652 375305067 458754287 742148594 309862200 487801353 235680479 793335031 88205154 189079244 857042450 955263807 746850901 889094306 858908973 914320310 216484036 743990012 210935186 672737008 389533517 884476409 508802065 916270481 538677416 582135162 75373620 426963526 86087939 509405314 829434660 963468404 799415564 816935128 755399585 903884354 142750433 925584146 103824441 817727937 400274837 929090886 351565211 694103494 49820788 703959525 187391664 299735595 432654323 663739890 431507248 597982207 167966745 209190731 498732993 710845494 259429337 882672322 306538969 994772920 555680125 751268858 498333275 568786323 394009764 462665231 417629008 737857221 998885667 999981228 474707000 709304627 337805143 959582474 243781025 648696670 616472091 886862587 266666396 490916345 225268395 776713627 223201497 610937530 819715294 847617803 318028453 993325221 102898289 648383826 671038788 751090467 60564889 416707437 896345087 983036991 415450381 645415094 903390718 942727278 83526575 503055945 585815551 912412313 352745177 833702779 217623573 878335387 603094503 613673211 349428562 522894655 958899847 994488966 830552814 971491219 573231474 892194331 678627455 889625884 304605282 364129239 689996847 710380931 866768089 985144238 723186224 763687530 546145976 829046442 689714008 829458755 684548237 878638550 781723677 894701279 964631804 983198594 482992936 810343571 928665642 993391989 33587348 827414407 761052950 865292369 208192907 634569681 180363241 886034054 97164705 416685286 159103640 856195287 436910194 896742666 364712731 820603053 41193376 936783028 737137350 982426211 223594088 724684674 294343506 297142658 566446328 614870231 130742947 618746226 512152538 891817569 310542542 397162228 908117207 970064463 973385621 992190692 264247484 972054485 78872812 612000737 127650749 804706480 418636396 824281828 581610486 735106629 150659963 220510629 735211407 818798044 484191403 814963980 855281648 995318567 529277942 811675743 539861479 762021913 791531529 815410264 589895985 670556907 873065180 992393809 510563367 957952865 493578418 753187065 965069545 992376291 104629734 228638431 471650633 986986887 359484023 888409717 484626326 653954898 500440560 995676025 930398396 985058291 274478440 917958731 412013596 471282064 52271101 670858243 66551321 539182063 791407931 885148331 408905890 744247913 534950960 774524195 84893399 474326230 294540522 651815232 643296260 741396759 704991425 749686463 63667424 669246703 371472306 510074373 113270725 314930065 823493750 845801734 361367163 604688988 211465001 619055366 406129003 935999650 660321270 903333097 669101693 872285179 732415459 803815256 410150199 626035287 574184645 772194874 312878730 684341892 73954916 122367536 472802711 479748235 778282461 844147262 458767348 626435766 231441142 605411723 588424292 817162714 523894123 840472427 756627180 920230207 644744619 963552368 469080254 728476853 433649314 442794602 620935758 649925076 784526773 981952386 369528697 975266239 16841219 543379634 787969268 982476311 65162144 236839798 313464633 569853276 61474924 729201388 671241532 887546050 334271917 742333109 933852339 994897113 483147808 512463626 404400830 501961334 166175556 490732404 400960659 493540167 397395455 492171689 520322740 729642489 542264849 750103285 241366020 688419949 386284075 919870372 331517980 432532825 944191613 962497384 902480324 980986833 333639545 478175179 318577262 692800040 364766036 794532055 301638771 970338011 379194512 808079970 817622859 966528208 992220517 998424738 861204336 894991881 655481097 788194013 266197045 819605022 262482109 440718957 614063797 742804423 976767687 991020185 712040261 894592923 112222977 433440603 942659797 988115184 510434553 776821059 74644031 714842050 205996239 630511299 27211882 579761972 621846361 644179653 777759167 911324728 397608665 936291435 834870950 913619644 711514714 874743916 283465300 641953547 908520326 950174373 641454517 745816505 173505873 845029625 133809480 985368785 313488262 912577062 435212455 864314245 869187064 894948707 937723605 944377204 19193576 940582769 87679215 586932343 309319695 716854079 338878155 400773565 120248662 948563838 917314185 922648588 512458312 752891094 986818083 998702970 861180982 867074714 654876906 960870879 398454539 553158105 787781998 906429527 828603 70268344 621911791 953541459 692278047 796344944 794036595 928400922 991186985 993813758 627371059 632836361 494953733 547846095 845633760 894671302 576671743 883416310 201637004 618815677 715798549 847978222 711395444 897912444 965358968 995191627 569667430 686988802 19215183 838547817 13252286 772368943 290274437 538943627 353873508 499843897 524105904 614317240 387645971 921879402 636820519 678916906 875504870 993269040 114794514 286149817 822178468 825406170 291506097 799288274 502648439 717187558 365417395 873108174 985306059 995608692 830300080 956399388 694730360 974859634 590647314 975032231 248696820 341908561 665135357 766722160 214122403 583575588 145964518 904404359 875919939 882623353 559324732 780517011 957034052 966032879 945022933 981241488 986405093 988351483 514532828 619829949 68757095 896625256 742268860 978516962 796974642 965064138 614393288 707072964 707448821 751478233 139681643 728500787 354791615 822884375 222891508 906067438 403271334 752096380 534001446 587660769 315366971 850686411 511301773 987096146 875495791 905002938 446472514 677570029 122348024 974929631 452155110 548517818 436123840 638582393 752021265 919782509 569820723 880402524 501605177 768044566 535698609 618941778 475082838 892354576 10162600 234042589 986346877 987275539 257948774 670717835 278102343 311263021 736585600 926801325 127324705 671603570 998197264 998263483 375950351 842546575 622639524 893951604 335912344 705626758 514977411 753979466 426028037 927084810 265565224 706944392 859098193 992887987 81685836 414747735 588826070 593867273 255099409 544825670 919072091 957430065 837324680 881823754 627290272 723468508 219989292 439285944 62292713 177059534 211800014 363315635 957851981 984041202 262979062 278489253 194469302 753916357 9779499 621733788 977292463 990830073 128687368 637465751 517870015 934515143 829459620 931020547 639152678 844715808 763950351 855120377 965797619 984493674 918564318 988026142 572090604 744994930 269124638 479984740 534913099 945790889 453108648 674764259 175336373 352014430 186577718 749233057 536528943 834472983 477627293 614612867 461182905 967667247 47983479 348926606 157815912 413321836 343475267 676777715 648965966 679893241 910974877 913531316 299949228 465026818 139178659 386787345 281848532 724447043 705417138 809609131 156173140 449084395 27881848 492498821 898139952 907985975 493140501 682785492 797945553 970795435 550263456 797727470 579541851 814594617 409488243 958534198 390627849 958756589 306481193 530068413 372140899 463397897 42051677 629424143 408224738 734534177 934453310 970080396 679491970 916688770 334149412 973856365 270658676 648305830 484566917 944726629 420886883 714770265 177352141 512918561 399500085 785738351 390534411 755037773 586335356 977896598 25170124 220989575 441628793 556036523 433468363 807885865 580373424 680290854 617621376 976934585 898172303 900809686 93193422 360346490 951367287 951596446 656213522 869571846 844355016 900399488 868976208 927416006 463823638 882815081 548079204 925360550 387938651 460453983 35304163 123578168 845900616 899551744 624940865 674717920 832549664 880793076 459137497 535567918 715139004 977915543 743790902 947223583 86762238 746709432 237920618 670398147 618857926 791839192 476767415 933762142 487853600 887433228 752937541 971161117 38871957 907946010 825108394 900860114 659032353 986297151 760048416 878644704 165349035 301705615 376006116 509267950 781558003 961915357 964380311 998299097 577426462 630484220 162201676 904347382 353171717 957085771 109075209 895246404 394388613 737526562 493996101 503987390 578742517 919553140 466762470 572487828 315138529 866739349 733143767 958493462 628079025 877808494 605390140 636661524 999270858 999610493 138589766 732914254 621243580 886261721 338382861 746675533 364868806 585870362 685209127 832066478 71915202 996202449 794507110 828802552 794978655 798194125 290925539 749256171 320464862 865493080 601195721 617526743 107853899 542262384 149330029 498272071 132246939 891964602 923587834 997793952 532722240 744684858 336489990 878871866 550010353 698337283 657283723 997202211 186063989 552192430 667683592 933565579 909483217 936688855 164945032 774345106 227359525 560908946 575170244 774323823 833116731 926292470 148912429 305247600 124950136 594212890 481901468 940550569 899767172 996446405 65351742 548042533 108751699 400543644 346512168 443197204 871036596 921560350 98346257 854136942 412673932 460915844 608142646 935354992 943610933 959370159 494053482 839716597 615562253 834048448 919267364 942481242 783331828 959644905 782615272 952456464 151423829 633193356 365167308 763499995 749917406 765856855 496286310 808675223 645695628 932440886 312435706 842021606 39886576 756797467 148286032 887368950 230420779 292308632 731588660 992636400 923029624 985662840 2034259 428859365 694906716 838210071 120685037 536280803 707981062 827989927 721216360 892433816 573717106 775201213 641612095 925892185 346725620 451182110 589114769 889311488 117373188 960743733 217404567 659759460 245746977 726595509 67059773 571864396 828963580 998729600 87790794 367594374 826855321 972735139 73076412 231092080 93779797 582210415 875616088 930770790 319528927 947938847 464762877 569173006 817325495 969141488 998262674 999569161 409818685 668375531 67459095 936895599 28591233 122184725 525010890 598698150 185898586 302552134 988383627 996819236 435545787 483319400 549349653 659052510 432158682 634219322 114801447 150707936 937652689 943367804 46588993 669505125 573171900 651710085 527666534 970549012 289200966 356609232 829568513 888413781 769374611 803954211 485722696 617417651 983441526 997030508 83316225 440624852 705099021 957555270 447086739 992334262 623378200 821192720 955240234 974226613 660456428 690465849 69281541 492333375 634374923 897326714 28361940 178306602 621923921 862077989 378875132 894235692 786439389 907734007 491249217 590661500 570839328 987005200 899474604 914536078 691783599 929406772 770663978 824807484 717232486 739553703 718680136 839527734 473735861 997455420 550536195 998752968 747887279 788334565 589032757 740264794 978798124 981723287 965576266 995568540 785153747 963266630 539823529 541505410 517268918 633911319 425686590 577993047 314850072 669749644 315736404 596004872 343945102 997820048 184857879 547688043 364289858 898017892 111097159 449737986 902518861 905982909 176645826 217734056 455259674 466578382 268748666 667049713 305651054 798291749 995946043 998285819 752330591 817468150 237842268 714742519 137188913 345628595 372296108 442550148 889242093 964872769 791049630 988663457 712234970 739542048 780107129 871146990 108838592 676285539 411783240 542534848 816932990 823583807 775464758 850413782 111145529 111557720 622184698 921187366 385995539 910491711 363275472 847424432 366300548 862182086 430191121 845644357 787595939 942555313 583735479 655881245 78571009 84550020 350661994 454289474 156143903 364736619 539382221 791857434 577607269 680770835 28312341 593757560 515882661 726697185 166619689 362895007 160566949 483210513 194250106 921339793 903844319 910724809 335764193 819469355 510436157 780386197 862699387 988076426 801920827 956045303 720681869 751415577 154717753 782554996 635190730 887312147 65130480 765176229 451563231 815153980 827933031 982872834 97227704 129116606 453082249 748671200 458451541 757887411 945630692 959709358 224633462 895249689 722785691 977913410 661328692 740574225 671375005 930699734 930814803 961097579 856622949 948525167 296698860 469684080 548317442 561191292 788339578 843672661 6164484 572079623 723248476 976107356 956559421 957109009 272513506 832277585 672591399 846349209 291512645 297986860 139302181 652382542 460228298 871212616 281698848 852498366 931942963 973981397 823501593 866282473 156207792 349344603 613316265 744025090 414955388 995349790 815132307 907144253 241719721 421159099 555544019 929727688 80553796 436716026 683243352 870169177 174953063 658877219 207207892 945689812 422863034 772422854 698744418 955480217 616891640 725671866 486625526 915724971 137210447 463071351 71200843 99138389 144402179 591055788 255235889 349837429 199176312 718770947 384306677 646056095 956692121 981851254 314618789 315062221 320038055 502886741 546669621 547472619 845742747 905338753 53337493 619137236 51082876 88596526 141909205 700124303 808546985 821469562 267474273 989597610 589975107 698144070 236928287 971664785 741937395 871594991 467013927 757770303 100583714 824680625 655724804 842575132 898791962 934249791 167002328 502398778 655392033 694633084 495471327 618365862 11539756 47627456 6612175 623184055 518267209 665353183 891639879 978103781 913046392 939308312 260940888 918350068 780273410 785154612 838621114 964728334 70066733 784830164 243596517 539851103 659768899 759505372 142223856 868518318 531882790 785767448 302355507 916817490 289184937 602571474 297186072 941462292 666355302 754379281 239186412 727509864 581326938 754082192 833525151 967311270 307352969 971112991 37704847 100004533 542974912 771734847 921587180 972681633 302563975 659252218 935199467 969807475 730922761 916213128 280657978 370420331 659650913 805673318 922750991 981523940 785544703 956201311 690606654 954287824 911056550 950222412 189946529 950629359 670584388 950674304 98163684 194808304 425683053 576593364 114222116 905547879 277773543 870821558 772834619 912902351 679138867 982286596 999019237 999113604 82022520 372066118 269596071 579619815 907100710 969508921 441437770 624818187 628989592 677142028 610278666 962553894 729771319 825004870 27043414 209054735 569181437 747692463 729513056 894348971 382500672 742523069 469319273 513578729 650875460 667428825 203177197 310056823 514525670 890867447 415373759 816236705 712249748 817026903 319899779 642958417 514026740 532695004 24737623 320891963 369051051 661734123 989085779 993802586 247137412 648810299 284815707 373383611 409780708 587949544 629383286 840645248 566486878 851562193 50170539 80128910 109303490 659995649 852104938 938093849 31383963 987254522 287982406 489134763 672689094 988615693 698602256 940718768 173933895 694635028 62766194 395306960 35213221 497767805 785616384 989299669 548344212 653278142 588662482 604767061 233402414 311710891 752678635 924804534 535426741 634861086 95277307 908957735 780027421 991639565 152041797 537365073 504934015 711226835 278752041 904890590 62477475 474165374 716505135 723044636 4586629 516709770 452033081 897159863 985204738 986163788 677863060 945537586 640923411 952851073 885300170 895529373 61652171 219480540 213525356 649372195 204269494 756143634 812913501 955433662 670257156 990730472 275110234 448932820 627633661 845342045 455028688 559165462 868288613 894519288 575553020 645239021 79573633 318933750 260250318 277279785 600395196 727713859 265636294 567060515 379767495 913617939 599373026 673195481 647457961 948508707 735364364 964195057 484786210 926261200 213822999 913902134 75928019 466029449 996943864 998453341 552656333 731109619 433569172 611952088 913535879 990556575 719618382 903030469 679165163 972420476 678791328 991061106 353418907 902356273 715276728 861710993 962866322 971170656 602257785 636996209 449220490 997609556 328868045 840250373 821383312 973131560 410731593 848025867 210544369 976671061 567443715 580969069 730900060 940685863 391502749 504776366 825741034 945937910 953154940 997742440 169612253 916955991 274527864 444222903 760160886 952342670 33201979 782447304 72904918 762354864 816542564 889897516 907972439 981553268 497032842 498191758 948675975 951843410 598215107 748320145 884499457 988644467 685264447 930789764 437077135 759018261 439770385 828169936 887197458 976504161 660939095 676473115 25560407 146863466 775540468 841098402 508070639 829699876 26247895 563377238 28204460 207963433 165453957 589578355 257136568 286873581 112262369 532782353 299980805 689875705 132602189 810956366 850502082 926211292 598257172 941407307 443707065 919770959 430277875 736371961 930844918 972403571 732962356 758956401 574253454 731845055 341406179 380956486 144792508 941280623 930888383 952008520 529495049 929618546 257342951 636803736 480370270 739243395 631798091 827492797 644838941 818694161 907478835 946295671 965531565 982779127 51385802 129208513 627601474 636086543 857363645 955982006 229549847 515774105 787370220 926118712 539165653 640518639 922979990 965740679 209211716 516124124 118637975 170473562 375908802 667961882 454859700 689837425 332778652 768346780 324510488 741814124 42534047 597649058 137145494 391485165 312881965 439777057 472642914 745893242 460295162 900070344 362601719 548310585 715724041 941515707 674735481 762955319 507403568 855670480 595601559 596041494 705447088 877067991 346546765 933836694 947988855 968889806 571945193 785614245 259310579 930067218 321246201 800004370 520767291 605691565 587872726 905471346 409169787 487369578 810762298 818443713 677403677 790226400 798649369 987847040 543204063 915108220 88666377 974527234 395124397 758827877 39297013 959167985 911348412 917046388 605328531 906479750 734996093 814387470 498173914 625803278 193675573 516999536 333227364 743826206 184833331 247486284 294033418 625047708 817560731 907127078 452091525 989941526 617912023 937934572 163775336 438946615 423166161 545516672 209068051 438099531 934129942 941795206 907244886 954063400 620926975 672610008 952166326 964260838 949413477 978966416 47083736 815612255 769421631 782320976 621725955 992206371 941035959 943445863 786292623 883305577 82674099 366791680 657664313 795807450 35108249 754808883 968920314 999025009 645247927 968003813 714267790 812621761 808261632 909652100 411076425 466998869 685666061 799981183 540470368 625373698 934240529 976092151 38835356 648931528 566781811 824098080 83677048 197010676 453176536 478214232 15685661 593511619 818014589 891576979 500448028 883421030 5626156 287040042 331378076 402098096 695260396 767552144 858839254 901212618 212659462 720407935 32812513 885926212 469138696 767368516 39461431 972181912 374779041 678391468 959563863 984139978 191205817 645447480 717967132 948778362 815337087 937097772 987299631 997255853 326955256 928672238 837751117 924848891 782513851 922789085 152120539 254923203 583788406 782875311 640523567 642931123 504839791 911991459 207069840 538080384 485224271 748184106 571624699 729527310 308906672 689727438 501644551 773561712 979008622 986981297 704170729 944982099 972352997 978151039 996769146 997448527 807801808 975729087 997091812 998745970 342670466 683529447 953476902 979097850 739779254 984406596 473517874 488638711 992802830 998274096 592905106 878534063 727493090 932347280 366282799 510232804 863639311 931413878 485633760 912183172 201756266 688511009 938701595 959917020 571061028 969484329 168309473 266622576 329563190 580633201 320874087 402548531 783982579 811697253 166176024 423349986 91334412 459905047 721092509 895907276 640590871 782773181 420125356 618018314 454518409 566020112 929981430 955530155 850744975 927829332 243155195 981599424 735831988 740817401 38999705 291869812 114500452 466155652 583910446 943908161 954803443 975800531 157343938 479485110 696805316 787522251 66687097 113432164 300910993 410358709 47453320 165086726 272766628 853706218 705899026 746589708 807874302 891905073 614543693 973774617 161366933 693579148 12767700 638628105 109024215 694400300 1945907 319916176 195724632 884575901 449742392 818073252 281095107 446696543 67400697 638533322 442093045 825138669 661197735 836747581 784866336 885336567 635433105 971535952 58103166 449092267 93413342 103970275 118610334 730981593 398805838 984206846 397620967 465526590 971783296 988456969 633208177 913959549 511934681 710301482 454440776 716727102 885710108 952620724 261280719 669752331 364699375 959114291 545515056 906887197 971671839 995583088 876811640 991085511 314957117 346688484 850940270 994261651 225601776 515508908 282655000 372436331 581240278 759131409 974884162 974960224 463600709 579448361 9288252 246372890 283138069 383972145 87271643 146487552 250281289 699509006 309937683 915264543 645581318 797660453 425851801 844479332 942222913 994158735 587897512 761306180 412238583 578863005 519595054 617246110 579742321 661902456 364576240 823828406 510289497 701124040 86962238 155095213 910522592 939304248 465750799 773564885 47589291 256011409 712119446 738347249 800781831 987303364 352033305 550871201 317298191 768224880 690895560 956001760 218756955 605248213 364249653 480874907 188087755 268986517 893531956 968717502 207487979 598713083 94269328 443595223 524409677 716737851 246254877 788751802 125500534 644593291 113616147 250596935 260173483 499867564 948605651 962799599 573440214 837713191 517574846 566612261 393075566 751649131 477376299 546416510 843676882 902295458 617538110 847105945 683025462 733840155 520242630 783575797 212827137 283151145 940171093 999771453 106542607 414211018 446423839 618948014 491472578 978866507 731571418 905596024 65122335 624320202 392020662 565362871 769749496 906505668 705996655 865356350 604994473 638016252 77733615 140357556 300341934 825484965 46081899 363296304 834601775 967641277 84948356 794106906 732547876 993708256 364570957 763138466 214714460 394652322 562173986 910848701 616182565 827256003 881741176 933928151 549723484 829390512 444121993 628744015 670212908 890903381 558418709 775290084 248315269 794430791 868347512 944635919 721871376 849167499 155254948 703149214 812744183 894356188 810352549 963734335 646125919 836837830 338105829 702173708 274086557 422209455 134146200 993463434 935712772 964996265 618960160 980620060 787645886 880813613 909253375 985815715 294691295 740578177 721533221 897217300 39292484 63136818 394333922 775217673 846874025 909180009 359239891 833136645 161722057 323794838 858590965 940253275 677089103 774287278 391367850 493788615 375983920 967236585 601983513 789918087 765861504 935078021 993175471 998866279 37861972 818897405 246890651 752063506 568603448 713042299 956044985 997629132 372944697 896202824 573191103 608344876 481205952 691096362 51589330 370185198 658740597 759517105 436381287 680898819 965047616 965786080 44866989 825758140 30835086 953165133 19743549 323862288 323277602 626170150 367218645 871860769 357956107 983789995 97325305 782345075 344831106 949946184 407475442 737243781 466607663 718100934 563535009 769374834 782348910 814886020 539760203 577409754 923278452 960484905 837046363 873150686 967702452 995004287 526310651 945210174 681577698 711678876 527349931 608826983 171746845 718929790 326963100 563589280 293341020 691556392 332805295 777170550 862247054 963282295 370585309 978557961 163184888 372679294 453672895 758634343 295828367 625970053 524724535 855876237 700909464 845593536 910228617 963783257 176547236 359195140 222182782 736229318 109930126 466928343 966371 634854449 37752061 353996692 383328836 818179812 303995337 717777491 355226748 385342499 396181138 797507163 257390629 793631906 747941907 826648870 128448749 209821954 877891057 999061842 519152239 593848980 645918179 646801025 275915865 745164850 81939900 250708374 283946939 450702678 231369407 385428986 337499948 611512650 981255610 990438993 675335280 680183872 987679661 998259497 636120598 641003040 871890889 951519727 77850746 915691775 980316167 998298083 518127642 710203390 690747921 843454721 686331793 722675747 649629537 795487131 217373845 980176746 562326458 736216895 207717759 355770277 149313787 754291285 5779240 418179465 761882797 828947996 655677053 786216316 918279481 999712487 731934216 856248553 686299570 798720156 400009183 920131419 522253750 953504005 420443256 763785813 233410904 366635693 614558015 721292634 365743340 575586359 371821782 567331305 899579735 967638854 613914546 802514807 615250496 731929356 928535490 955453129 52901181 499507930 747597906 760411413 298128578 982587973 676373850 813888987 123305470 917859382 10289617 416104729 747975841 752098248 696407730 780858248 134156681 185750186 845141066 959947835 162520799 442185903 134727768 213875253 268601512 400182959 56322225 419374622 984747350 994725630 143883824 420896566 600488868 801737755 595085478 669693018 202568925 989367968 456400970 799679977 635804073 902042856 834566929 902726709 123892475 797498983 53719625 895439387 492288764 974016188 559564750 997113618 376549982 672936941 103026313 479934845 432328048 888650318 403309549 670311412 565792886 886068210 82140235 393569270 753273786 992496997 709866394 718077743 564455237 857720330 768408228 856845389 254325620 800815373 137316395 599401308 790904316 911667178 53443488 620353543 362386585 668943477 310227838 613525343 537444904 828981686 677314002 979083722 591883191 980284222 422958772 624885737 285980013 299132864 317010685 789282412 558068127 768511660 447539025 551352964 766225809 808020851 806900181 811367371 480558129 750157527 373440334 777643566 548904324 727712178 162082601 516416268 435346742 568880464 754076818 973708100 702343470 953639926 15836606 968410042 994844535 998220387 152139406 898597314 10146496 830404402 500302732 962169359 804884273 881260060 782970943 928765864 967287749 971333554 211952316 880562035 729907958 952012715 390020192 910472596 76161310 847517041 828398950 865478561 119523500 553052244 718609768 735107935 791381199 890094958 809634971 891468223 203671553 341700515 833221944 975155344 498169415 516884339 131058675 239609639 214859378 533465295 55374824 198244108 222166878 818203249 365493377 371008726 948505749 953337423 538763735 870434092 349342679 611472504 132675072 626323990 239657819 546804205 229547173 612493543 408877946 999562064 898178441 903727620 124107827 237930544 51969714 424405618 785946488 835392496 806469493 959094713 656393207 791383322 47851554 549860294 164431453 279672738 107669454 853178327 966789300 997016790 867160818 932551909 59570165 504160796 624259551 922203183 651368400 783179570 35943579 479636203 825751574 873740472 47252484 533626038 741961629 849487156 794572066 867534697 566217272 860444961 194048742 320442991 917446940 998507919 57332952 513667499 81223179 945392881 635935487 771768475 132619877 368503078 115621224 870841251 364465237 539681803 437050647 902529991 419445862 786021712 370838003 897817582 609384411 940388320 13543932 177435127 297838363 821168700 962522138 973387201 549616683 635103487 293372548 539512915 178672012 757891433 948722748 978997785 429141011 555905829 9301866 201649939 383265461 865503122 505917571 729675337 64187726 855750589 58222039 678330162 374360621 599476068 841092246 965630653 635891431 835833337 346513526 686909346 597597570 918786103 793677283 921239366 132005814 153340184 581597460 935412577 425532236 769881031 246417361 863306294 60395736 229657827 384979912 959122961 831322212 891268421 125150231 558553743 995227305 998810447 879294119 915638691 595681453 927895594 750004693 965314647 661115900 780226987 829655355 959265716 682449100 955549778 854571884 986334726 786796803 905009136 795167623 969801375 248252078 376891181 725815578 818628992 75001983 770223765 814489915 882339676 815633111 927308864 909994858 997674541 394105343 642124418 560670658 864503041 531633136 555531049 800420511 950617392 873347998 965370565 361184720 972538450 778726499 802313628 208543123 448291649 267200398 486392920 855467135 969574608 293815731 860715377 100880700 261382100 415350050 880069349 140771703 623744817 443897584 738494074 491245805 895761981 394261547 485012346 87187987 309610934 664180708 839409027 20346850 39815171 731522718 751788876 282167203 736081773 156565599 394455264 648111362 704254889 659313157 927475561 992791205 993675956 930849126 942477757 330786868 377010910 611125813 913942274 933142799 947484231 405389821 562881249 234631549 369394383 72997568 263730642 30613412 367708807 859188920 910084327 401615937 888649319 607108347 911737646 543023848 913321951 82034254 868395590 929559468 940510890 99547282 473570726 834504048 883036989 891929359 949707055 649107811 715452805 867599395 997142883 555629538 622299019 674606751 864766105 641045945 883206201 64624032 336936299 43606236 403181559 133617918 745239775 767188491 924634053 210436079 230281255 477705062 741720233 796795756 971921300 978750395 999247660 519512208 735591631 272429799 345017512 956945631 991738935 889611413 974183180 245869989 683430677 766709985 884390604 171493914 263272527 309873696 828993470 360647049 419001241 729116591 809277906 398310538 584471982 226789715 551804853 642148555 852345954 666582245 716187372 353673045 735031665 529146327 628666893 660736233 858560528 279007834 801182940 816621957 938035097 79874941 279724472 320946465 912656488 857594137 880327105 589351600 749682171 884224278 925191631 440036580 902122090 929017171 974467323 5344025 414640352 819005725 934996750 881788041 903656061 511779868 705355485 352568701 687976168 622053275 871913283 223703225 260617052 197799471 229406127 23841582 712570898 824594288 983242141 726489603 748207336 695479622 843663706 897435437 985116823 811198219 833126268 409014228 594907215 454417336 937396383 529078091 969780005 996798193 997926996 480005988 500350178 315197125 711143723 535533154 937435574 595008150 857635243 920187097 979916000 951272863 975195139 67314269 708228413 36437102 211724850 646678725 758752981 342037690 437701585 364650258 773359004 186291012 976592027 886029878 930672865 676818254 778292298 458676414 929648930 741431350 917137182 975298649 984395575 965987957 968112847 520934124 753872733 167309866 840298926 992412609 996620161 470174001 513182386 195060139 831931962 985965651 986821066 782601980 988465510 640610181 966463354 771498370 799864838 656186991 981220726 63652463 172314333 891965531 903032713 556398028 559007073 323452050 345997012 366491205 964709502 619639211 742326529 199512304 716796341 21888835 688611118 345084335 924454553 195827117 535719770 903056761 984114399 828562506 965250083 250414936 280053366 591441082 978969330 900709083 959222477 877429673 930052666 598449386 664242833 277003090 840158016 871929105 879627973 453809316 547138231 364402015 767408696 474768249 823986960 573284105 610607073 660267303 954969889 318210346 924679662 700519189 864754310 289651713 550850935 230393531 445334653 348199907 436326017 812806819 928933963 405194793 507294972 621838067 821700884 819430915 853069373 858120299 974974499 788139145 865393611 171273744 670768642 989735211 999304230 728313541 985884337 494690466 694433637 789454953 801597175 178196423 402718075 952884490 958413574 163944356 258673792 49083946 690010440 7432860 585262736 174538276 433873774 748618409 813360318 794876272 968207574 472049033 853963076 534950754 833764084 135774023 802365284 420193214 653696892 179340532 324348610 649419480 841144482 399525013 836577168 563761022 905446858 664666186 809644661 224374671 387526100 764081632 972212869 527820954 697772832 74996158 917631658 629257128 746855764 300487250 422663805 709954899 878780102 603006639 610129962 167276818 719187966 600247951 617307847 81436280 947004682 864170661 973031642 120047216 760023929 249336316 561273201 637286479 863500328 180150824 423122393 961242627 990597599 918375922 964143955 305824699 601590627 755052048 973661097 904786153 999617645 706752632 871591407 75369364 610553360 346944540 531705754 694383935 958458284 366698384 581230785 943943079 989939303 423749919 953070748 184679648 765095105 840139087 852994642 393971536 695473588 780957987 797968115 750384292 959685405 372818397 600428899 827437510 995943285 687539897 991087681 987918647 997224885 908505486 934327787 635808373 958480114 592679350 713444505 573921691 635765631 27987572 835852593 555999699 580740799 175509420 595951763 888437395 951652711 2327736 47317068 876602177 928398176 33757586 169392349 881687562 891752333 952356417 998399131 700262006 752607922 159298853 270148331 182252033 282072550 620887834 746753667 905495462 993887895 274739139 616463811 414254615 436623595 237512134 479914923 965596697 971776324 356667481 550679293 7587552 670610168 968247629 972147090 336630593 564431494 971281539 984422788 498269707 863236736 103579985 614904632 450449079 675455409 583099644 611490279 964500365 983868887 955601112 955633522 740977169 870924824 148356278 318027494 507219217 669028991 360927267 739714635 132425628 560634273 170476379 510508423 646305823 879129908 436604787 654267502 792054988 911289383 729791416 752751410 102062302 399523916 554514904 826676223 592913148 861745280 483789567 620715632 322072147 895055103 664374289 864968890 384205865 850814789 126861170 340501331 788283302 888318277 307363451 419098665 79387595 921439205 254223280 273648610 484085863 975598574 105459720 445376036 975197711 983536107 761682112 785520536 830857447 857033137 754888961 914753213 137178309 428183434 682114771 947463986 742681378 770278617 304928965 801907216 671804539 731913254 437810267 458624880 274990737 795340039 773583858 964448088 473868152 949523248 441993216 641094746 766253528 892755766 826512380 957216312 166795468 731006484 570405555 633584316 115522625 859303880 215201760 774027508 686144564 710409078 519939546 733605961 388353849 561856058 669626314 675230702 439883252 792510359 766259461 824489020 451124984 630413174 153279244 852989606 325489020 476163814 476345651 928061614 587408622 599497459 573674238 862085223 690197145 760325050 9194531 43821676 820352165 844414131 718847911 756301304 620667756 778513499 470926891 600771508 191237993 215249093 299587146 988998326 562336168 921760242 518775351 713652508 785331703 790162704 487466461 750763395 497374068 541631185 222816333 815302333 780924405 969967685 428378581 499852150 736730870 912669986 579473133 961352444 823245243 932000732 105040192 785868564 861314499 969702710 695645953 945142250 704313590 783056352 587469522 776572777 546921807 984368805 891325932 936749513 822573454 924351051 99615237 103734619 425921040 797597339 22782199 570361105 402125273 866956335 11014229 927080266 21869005 468108854 116248771 215562803 958061916 964303852 303556175 811882765 905644328 914242364 161803447 214003111 777009898 906945508 362285197 747923113 959225995 968637828 861252350 871005369 135836829 816833516 46102425 599877169 670040904 977498551 226299284 883098193 387136036 599548357 623760993 760000339 496688876 616011925 997180892 999161579 61142244 96498118 795204832 896336657 17642129 250473565 933179349 937228047 355939200 949308173 758342542 843422432 914077569 981902256 407065216 860903849 836446850 987599916 11550189 820928208 992216081 996640666 291572933 991722246 4878394 86456762 726942195 776933717 761007923 997514616 394501959 532246637 739655194 983929323 879269144 978683170 483503888 627328987 48477407 102382803 194300192 913920543 976801707 999134693 303971262 891426480 141083130 422650837 228112090 632886207 473504248 966710311 718807988 820551294 472317255 960825177 466393013 522070055 851072361 939702446 240303766 323205335 521069218 792890970 132029968 277675610 571309086 704728462 469123906 526722158 651331393 773895986 98599366 605028629 344221320 965474703 497612149 772022537 90533503 653597871 709860115 918355484 82255121 738539681 604635374 896938137 520438636 905252475 111905585 308257834 383153895 527312765 652133361 778366884 830269948 934101526 738280578 910270129 205084177 862313195 556208727 889835799 73731369 289966289 98925297 992516710 749116117 752200855 214019365 607112770 351072518 794710021 588394215 672978946 213309395 707292007 676778201 676901133 12286341 852184123 570123054 964433797 481975102 854786370 465643810 725493292 824344746 842574671 954949494 990289811 385203474 703559602 113891033 595755442 425701305 538719909 340459423 906638548 667044597 990248791 940785870 942716461 51706868 385642777 57747554 302569612 260996411 958886723 490460672 587317989 74164198 154406553 493108064 687739376 180860165 373777342 771737850 798705275 91676601 866746925 691806150 837528572 830595199 900501051 504765197 539972872 878595556 993239315 341180146 359447868 980375142 988292729 34913254 568992730 588547552 858068326 346280615 953689085 261936357 839073854 603260544 899275942 290952362 690944882 668626629 966445116 637911585 999811505 362860500 656639016 79664446 122875479 353068977 760042472 665647682 947136702 462769013 778012826 610140014 849708446 982890899 996302841 852507687 957700263 251633284 267440511 791355593 827309622 318278622 930756979 775468412 862685128 246493152 941013744 494013792 659969668 550536482 829943442 752919600 946676615 742586261 799539477 354277279 645147819 40047756 693697783 336091726 504264821 639779822 731548471 946922191 976654006 84623476 502025009 180865559 988934798 836961094 874760278 290932092 711759340 62813479 438845388 612770038 766025358 725496698 945231296 621292558 750320095 367041772 493061165 216570718 518641016 526612183 558451073 97361111 465889463 214719757 708793039 597557481 909025893 788864671 962150173 811205578 900275875 409599604 953195378 114838432 990504277 510291920 912727520 980135292 988229835 269096484 305442603 592538719 848019978 688384102 971967082 529951777 742604308 953036340 990482537 922752777 933124426 345752245 485747423 528664196 698155217 574735603 950133572 975573981 979910703 187953585 262751221 791176762 852197072 216165868 856351489 593964176 684104911 520592537 916708771 335610893 933158930 428019360 642671769 712014987 868208586 944447608 949366388 260379361 316471887 198668348 805049401 530474951 787234016 768259227 902255002 131853309 656547673 673971140 737064047 754632200 997158508 695645005 892859771 398793417 465588770 311869692 588830971 677538151 860390628 466211888 957324514 354436530 428880649 737387826 907174269 308971465 832051450 10482794 828656151 925323985 995672255 583496119 935411874 862794688 968823295 216085359 461844529 78590405 95727029 411128594 948420958 52442870 517510878 312269326 962087571 495087876 574435427 807044112 960353467 850163706 895493411 617251285 827003145 604815282 740372557 875385115 956727863 418656505 986922758 874197081 917307004 178545756 450161639 42224429 541648781 872389920 970937298 535792500 603764599 537564594 769185566 54038978 924886066 363129137 476896008 473570990 519744921 942106501 944323742 197330467 469758758 774090283 823887338 235413473 557873930 566901381 668818130 281952214 622316754 662166438 678063361 552180792 619228838 275747654 566329532 574437107 979151843 371261008 519080902 788765037 888962409 355323210 969378177 556423878 791162361 424933165 940107477 501774140 868124672 630796512 950821231 533244514 546975763 805733956 863918750 640387381 669949988 745286052 942823436 987448600 994948086 921360660 978402423 379906968 682122234 160554132 296828202 336301559 741307556 444390171 933230689 565789113 941119693 148842340 680353308 920228245 967391917 142161862 267091856 354280506 887914408 812191962 942529987 141849743 570191528 519709349 824623240 41199075 953918322 828229519 885175848 804628863 873332694 103714678 366552033 979572018 994557684 329335288 429251962 724805102 817079250 228226546 890644175 213395225 224816995 29080833 828273662 621815350 684403054 423633896 598343912 903239846 963791625 85867083 487735437 673906313 706967578 709993256 962212528 884897344 959792690 512886952 773692836 186213601 528866149 395183695 468715416 561912893 953378194 88626935 319415382 246295791 711300765 641053969 650420933 400660978 519617185 897962850 966412983 778648119 933511767 426674042 707180892 400951048 713421411 767719296 879732226 999912538 999977750 381203274 629891652 945949113 957370784 768110278 803181910 972507417 997886257 447056198 650355933 333214222 664401359 650208673 684354220 124917062 864229961 215443135 837220854 417176883 504796525 75065278 483073379 893027132 937035029 735465758 972801910 99280972 420593101 801423257 842082971 215247986 823383817 681487820 886406408 418149529 824525191 892194830 990655146 791980378 843059443 635468704 740632298 686104575 915751120 77203945 536195307 606375766 802629763 435302957 615404460 258069439 625024350 903837145 928457204 653428745 800195345 612884821 657219279 856269455 991092635 798629974 830295644 308067988 884759061 757376821 927812248 130107132 403944304 451798189 466479208 933673801 994184840 347121384 935108180 46644508 990338452 350710511 599617907 242858580 715607628 483812719 908216606 237900739 772039565 700380887 746530801 850840267 922876988 232822428 738939527 484970295 913131557 957508017 966056635 16427626 447545156 261749899 742684819 712622608 736151105 653576600 950057446 116423333 409606304 766650121 919571305 790172721 847335393 147085937 415378677 795787670 949122474 796777469 855503474 601559903 845371499 998737251 998945281 392891873 857236485 439571416 702769514 195310851 616830425 462661226 598341038 492584501 550450737 678444631 783746326 153885684 958623447 600273691 719208115 519776656 700919924 478183621 898445117 407913679 925949537 192042819 876113637 534466041 929145991 574803274 622186613 374185882 886210061 56793674 644865144 791721867 850384238 875659965 956192263 113121569 395271252 41187356 242887830 328279805 556957949 614500188 794791393 251924950 801047990 792976777 938641658 890416841 891399198 612594777 965095235 196154796 218483761 571120522 999942880 325787077 668397112 987068958 998205393 951219557 997392472 547591959 891649572 140546959 258127924 812945589 966430874 454215393 996009716 667353116 732206420 630627488 828812616 941435468 984596106 395616279 679545839 30639099 206439954 544533626 700301555 979689539 989032058 484309231 993344734 349428519 669586076 270017819 767141599 58639935 156186446 50328611 438871828 345679595 535296618 380604125 853451390 580839936 850781879 307956879 602373096 279380274 658132122 655891783 758568073 432896585 543998316 415932996 901112716 401578065 712161542 26562756 975064305 936169990 992381416 971427294 973795378 643372098 916192026 403517923 465870747 347263875 501759581 134033730 786903790 45218071 400022608 130131962 776069237 183152637 417262046 328637420 853160952 61424338 954585121 862109873 971805714 275074696 983173810 703427442 741700210 104210489 984942853 650611724 898035951 133228786 611637171 505564808 801684183 412188335 912977745 690749216 897483175 591999939 654319144 412810340 610546901 911672914 934768042 41396734 222944667 935172854 989725472 851194909 938034926 529478651 794806284 60024794 809256299 301772690 478224861 261340456 353988060 413066698 427022388 768351715 768711193 559842743 572176109 973952059 988935293 869972664 990280954 157812720 224086498 822340380 922784162 751202561 800588472 143241266 175497729 306021006 715340643 889258975 965540841 812468099 825585741 301180776 875401973 892907478 945170345 62608025 811459538 705237674 880494384 230284730 848513292 441516202 781920980 730224875 775124495 875757729 963045912 78737883 409854576 928981381 943588919 85581224 790957360 969044414 981103466 954991379 971411575 486255241 752384385 735929905 870708768 813106811 900038408 268478672 390387890 304527204 397828216 295134392 569198945 19592332 866336275 507099748 594488923 856328175 949876181 796750475 907621461 645066595 884999024 208089603 904890786 465621651 712374374 945454420 961600408 797993121 801676638 408037246 812426593 160895274 824918619 918636891 925343604 300891179 305273594 819252454 885025972 989630040 993649251 681318571 807141818 321667580 887123858 42418525 794580441 108386476 436136030 505183949 555818281 381354710 664693305 839094176 876553150 851055733 940244530 55008275 803061985 234613244 283978392 950901397 986677947 87458044 963614084 730275576 797759774 895326886 914489180 180567389 484707544 24221968 397441873 383060651 768131373 561191589 758345443 126484040 355230693 174091206 314937123 348867042 360938497 332913656 865870472 266641569 961389783 182023129 489213471 575158167 802805534 544651180 687526747 950162278 986613500 244650878 881773443 228710802 778766758 530626058 942200792 58899221 905654522 683826436 881343812 803750464 863206415 735277861 914764086 499776477 630940702 623561130 824631924 699823553 757542840 905616359 914664207 819166074 897028693 759701228 948096526 259221315 596427301 829033041 923070273 940756835 993517657 233908864 369973476 255585830 336908988 716372278 842054600 760921090 927213101 459959256 954050906 25460870 987212995 359892815 850239740 634406274 937590488 426921014 900586644 673289265 964377177 165350767 581196233 334652435 522893316 659841213 820879763 466249674 697223442 316265273 734374937 275667704 813094167 186463754 973485428 617150014 859044145 924274098 961567152 511987675 952293944 252997721 605932642 833306535 966357578 758230869 768588932 444875152 846904430 871865725 976409779 883090655 921120036 239491442 944291234 83559479 719576566 931156849 943764273 106894583 893021161 753165766 907494054 737994227 981320924 703639069 717139288 151657250 387746430 87264096 761495714 626162836 860085990 363996067 427101512 616584271 798248642 747061894 964576468 618187722 761168397 14336643 446876492 90850418 306865234 889503264 911647887 751599559 970663651 974909037 981849987 943963985 987273277 552144976 616753401 991581184 993264040 781543919 821589036 467558380 920210013 348017370 909356925 997336965 997910688 931065711 932576876 218378154 835702144 617153734 806846313 959144811 967978234 241304041 971833290 794952189 976183656 580723296 781988003 601132485 658320077 663784881 927343121 365720344 509742372 784657004 856129106 100380101 986477011 665219465 797165902 863584133 925591152 906913786 911141093 960109896 997624642 14431158 997886352 87169712 640273971 709377752 942617151 458417566 806293978 945460474 962917471 477629723 525091486 469217187 703590382 171420869 788316532 762848963 931600672 965037155 965624454 961261984 969843103 216441780 662640025 954385016 972647078 270608478 604461184 77673835 322787273 403871104 771382246 4824656 277904692 37077522 511563860 382874313 843928825 831481154 936837319 74706509 989726404 277816704 782331519 231730442 927433022 939284859 981116747 388210767 709539768 705819806 775262392 530949719 833913641 617341653 956552063 551441318 900694213 662184380 767348483 745654139 874431004 515544989 786816986 296491483 302083809 71033947 983492688 58312923 461262786 816624103 963320927 796145191 917833019 199680326 522434945 64999973 987876668 550979501 738215868 216138273 282114811 920008044 957854399 145883588 292729562 265000021 951827591 544509879 914988307 726039085 739238391 845292962 986134807 538791088 542894715 706387974 870782522 468218407 606978664 113666822 187667278 271450710 901465075 884010001 963195187 418809402 477358320 415381376 448946297 957467828 959271294 697246498 890271370 191170447 784090577 162573762 278635287 218571763 797929281 918345767 971307892 562111474 942188549 842961917 861812903 238129271 561677716 375481983 697513651 308374189 425815265 33418322 993122367 831651852 960301463 168580939 719899362 482442413 950453863 639712291 730395963 208376481 496233971 167549412 381325409 430578034 809847492 413089502 491314930 376021049 561943246 744348047 819790676 319198778 555681580 505467051 706392634 432156556 526022368 938941839 967386847 890658453 976179465 106020216 853556121 339463428 782316254 792702833 799745124 711808495 975468744 338707605 843634752 572168679 817372665 720004853 724950527 335131843 862712860 207166251 617742911 418154133 886475385 39499933 388009589 348854123 977704443 344513883 726200014 238693353 825920947 810753110 942587881 703490480 849489896 225724074 472206916 702556996 860936620 917719426 957307530 979811294 987607553 976109609 991610483 727339827 802066182 75521802 522254221 139921521 530821553 662533185 758927175 128475778 538703564 607155293 769283253 568217396 940104736 34425825 247508500 194921632 765121970 742027935 848767514 301514705 718364975 492318239 938088308 997954096 999310183 147698996 914024872 964937841 985379780 954724540 975712534 714849621 824136135 796865068 942839585 433695514 924130903 625189628 802086084 327923203 413196487 218554383 489630701 589627259 707190417 963361973 967134780 907498976 959343586 223666007 588518058 408036926 574270334 857732918 965513884 132764511 941802402 936216102 990186253 787547554 822926898 612234190 983556675 35362036 913118754 267763410 840726912 943177513 992205421 748405380 900932254 849741916 953467378 410176124 472011291 501855694 958752440 960474392 996529248 406350940 652320074 536493164 976083976 66836017 144157998 496090425 513200320 650169010 659578714 658883228 937809047 285896622 345467855 844700985 977398456 136853180 537617416 468728267 824102027 778651886 873845467 478534565 607510125 472180654 699582011 881866972 921457162 222590273 399538962 556693722 892199565 387750413 493512696 121955375 820551244 513712160 851815443 344200620 585071703 732101241 856353426 894598074 913873988 420253181 858562763 130370263 919301142 956911607 992124264 217488091 680441789 296134221 941754128 415324071 990275321 250351769 515533454 535249003 667201199 190092605 684932737 803511112 842465742 179666575 404688293 38092623 875911005 35462364 370872148 876259771 948814208 40426240 190881273 418042962 908757825 862712488 951155662 908578719 927860339 694950837 892474318 65072147 319588762 143479737 252377311 467434546 825572250 634458988 817810225 24148901 189241877 91542180 353538852 223663349 439278856 283415937 834974602 994352216 995575007 342673023 850256918 625261591 944481229 652340535 933639295 29035905 274202205 693620117 809560291 495336387 591359413 842737628 945170702 70130927 91852020 68154341 118243913 179516913 253268626 652855491 800418921 196735678 567872291 120318510 642237880 919802105 977069708 398877867 498974669 825939410 835191142 128549486 832959095 316908003 399359804 311612180 674728929 497281031 607050093 946170870 989636663 18263550 63927674 125582346 787788783 95878703 250270607 65606423 668268160 566043759 735262001 96961624 209389032 489249711 537762057 556220593 892769667 798845685 994807833 289146726 952479806 254153831 594141453 275895638 819784830 979858244 987072835 137734532 372154712 938279647 997748144 824463139 870273847 244087320 556725806 529050878 734880840 874088750 885773084 766863338 886965584 858977083 953834038 96204579 853843761 380458236 771550207 510706107 578746833 403712652 822540595 519887553 950475857 965575287 973153274 880543362 946264463 357198051 609580671 577649101 934161179 6244444 188671116 386765790 724243708 929110425 989187905 590607773 635662797 794077647 964404620 882007117 934556953 395385617 694940012 717807218 869865305 365829027 853942919 885733166 897250738 958021349 984984394 319513267 800291336 136671367 891381331 207699766 909494503 823190044 908689353 388002149 406128390 252820970 688606490 546453329 783074548 984153926 986807095 754602576 878138796 809780917 832873695 294768699 947311724 41998830 754538013 203531251 805676627 536116430 708776173 891926029 942612188 410544468 982628594 659197453 709256266 37500791 63486107 493480641 766322986 474858951 725513543 757858951 889538138 641244061 883188758 568692858 983603148 566999720 727425535 49784984 795521248 221752007 875049514 254933611 837642633 504109477 637560803 69498866 239564216 149996483 425246093 400415720 869539681 492385111 997999760 403774595 655921965 458444012 974302021 307966975 420849783 253604209 546738813 160203558 476061874 32033351 185901927 174146574 564710636 68372679 144637636 592487372 740187179 763337922 886814266 668055371 841849433 205453006 474765123 154217243 405240065 643927220 989945165 736720652 930793193 114234490 435424666 565540704 690145821 230267491 833984753 105188119 831238479 415084553 830363204 921835277 998823091 126730458 660420216 829047121 957300395 270104862 851486761 818982785 887691880 235609203 988278415 769165124 784406872 299105247 499638425 673605261 687207617 951006533 956069339 676972083 825706421 793988123 797532981 875421031 916445213 446044317 700680914 514599221 538734321 672715157 825235618 100391000 576130906 816008801 847378243 394499187 711547430 953648232 958619565 809110075 991754490 361328165 955144393 788464208 802535692 757837163 965007589 995460302 999274478 94717267 658722437 194494542 439870282 741045415 970009859 871571534 960858080 714978992 787031790 524820911 539674514 410882418 470072475 611293891 801626376 153252278 741551839 616696892 949744379 30509494 805083121 670839201 880076592 958784342 992243887 366551938 569743838 25362426 275981394 453902326 777622941 415186423 606906818 561933442 721821513 549391217 851232797 537142744 731795005 437899465 589042099 102435286 740296139 790235198 848006506 572017638 938701218 797310918 997946937 331083735 822574794 266086745 881214318 944953647 995715495 148217464 513041468 921014582 987605346 125117620 435433970 984629725 992431260 545220741 794282319 727082273 821768845 353478659 527120800 285734986 507612321 395324269 820782282 325975102 745951757 635933701 824447208 668788253 784734672 854996306 892105078 493133098 590937753 367986203 530949298 656179573 841052513 331294053 969301143 649474472 952043996 954558958 962611773 925731920 975396053 21110011 307626725 212627571 544254661 572892417 706187759 552807415 584970191 307621107 514973466 185487008 612305213 720615356 923562849 511257504 987060864 230564911 727587591 697024109 726786140 681035233 776223485 659447760 662829761 306994322 449274743 687842202 742045152 96855210 876104134 382336015 797343082 314487061 997351715 863085545 934375486 578443862 714709316 922063278 975757955 35550791 607411221 547842113 858319434 378426615 418019495 445349907 579654675 439067783 532349767 99959182 532853000 611134752 811465914 480978673 924080865 758159828 835277459 920637902 945006955 644640420 918673779 830548507 860905135 749582746 933929496 688387457 978784078 283213070 351824152 914726890 917099345 469839896 640049907 74455544 445517773 926760135 963800634 322241458 558767077 621516667 722748745 487582751 508452000 169608630 516941971 796737301 982732713 748700482 888156698 331884048 430449756 154160438 645060853 710458877 796868803 75063705 629901534 885779651 953185230 377165940 812406993 276945713 604659981 907601305 978369035 327505470 693487208 163001103 774953795 714323493 768799689 397886394 452031506 692306779 765950639 81551315 175258807 544892450 875451249 970436377 971855997 632774932 910089019 984157878 991973410 75372021 750858482 252358083 616746252 378143683 576371982 776029585 843071060 495383013 616316101 153718852 487104110 708177221 831508306 270427403 816403102 883034225 923342159 923829954 929759347 979360697 986734032 77890326 488391649 328274214 608818990 687181226 777313267 279624007 981801515 649340574 748308460 37816388 772586162 461954695 843259569 20907788 641510235 719846330 770630480 665938917 925738082 85889974 768110271 970448686 981485703 671229556 986025479 948743127 996441131 966811451 977995415 156095812 204708113 71453363 389185549 564072400 704443445 193479562 943470497 823753704 841865791 522618683 827161498 197094734 585646199 204040754 917187274 112050452 949402514 679445204 843168729 595591775 656341705 328976150 909616698 19451918 454303946 994258339 994953622 392767511 758773302 515485825 769247261 860828190 882838880 878671632 991121987 407650486 450640979 650232442 935838541 593167664 745624553 364270025 498280573 852464295 875166107 78492213 242969022 547060345 624004068 630627321 704351217 662523511 805808561 677795021 957243758 558040961 957771314 546121791 579209069 954307477 983215294 302698066 557816214 250268770 695835903 220225441 997412095 601793174 723885705 76342207 964121016 857863275 966858022 664230625 979045271 748382938 977754933 340273542 439851836 412032406 905033615 457124112 810416147 828961001 910070353 706438021 842934688 521757400 939271928 664219450 801484905 680830560 808094702 790782644 858910252 43497779 576433705 193358071 992685281 606929820 612372627 53017512 410544927 746620620 827776685 573234666 878757565 790821577 889857218 704326194 786356666 749388342 987995681 689137313 771785969 78385639 90556650 13429603 109684869 732224050 752688812 360952795 682597861 782309761 810394546 567691152 668918676 494247765 793888997 800559874 958410683 993466051 994317425 104693764 206914393 921339977 994743349 25383999 890409854 474279352 780819375 413186030 914749057 819970374 953866823 394116675 839349493 535529224 822314453 650176657 664733820 339564163 809064132 141210628 683566032 906714601 944389629 708621085 720451892 880668752 945629326 496575107 625506527 981232931 988661062 849850385 930899850 249474581 414989391 945480809 945858562 734698182 858472654 284056585 415817498 920477878 923067807 44857363 570326436 707385647 776860741 392186070 835959114 601002950 681580774 79516887 962122416 596874045 844512689 735687835 755228379 494385364 819174996 23118271 478724874 624766469 783049390 523861975 821169097 863162338 922562555 536462916 810345212 998816128 999721519 221529937 485480599 721650813 974272681 217594185 781266072 523808508 761071506 22165820 793894698 701159005 780577272 72449685 188242908 222756800 491850095 196120071 832362010 828839480 921362741 214498663 249577911 468206730 717284597 199313769 372440179 439221998 738369615 515052642 828232085 987556528 989782599 334214023 797423352 957114080 967407806 118818159 327912431 112695140 169526076 168700726 495389575 533744251 744142461 227559602 528737765 846243351 881336011 234400360 407702344 861457675 896762028 449340266 605088048 675696895 720246216 413273665 712424949 230393012 669170189 791265318 841291205 354753542 935517804 264120530 698898042 593091667 759925668 526325858 638759610 51417625 235561104 818638012 885576624 339498322 414219004 939101673 942202526 999347429 999722701 945503443 958467990 509422270 961070670 790781095 918928197 210619624 582313778 355623633 619261193 840820956 935655805 523501017 604940416 352185656 574479213 339609199 606592400 288428552 602720615 590672033 856166868 928210161 976189983 58020610 756531781 986778659 997812468 747836823 992199196 703014399 944783188 670956663 922715309 694820516 721459438 40709141 194357416 910101664 958575565 483901958 830689860 29086496 477837553 345563615 706748469 5482054 106065584 417613100 934761472 479931807 972660322 401583819 975772932 763045443 824951896 433752515 492939698 441981679 817657240 144013277 887488585 999704708 999711487 953828569 983290772 276117289 924728211 13208025 141365404 725181983 740537259 279281664 528032347 941770106 996501525 864248815 960892909 928875601 996576292 199343683 992116508 139717435 732745977 561813843 881750099 946111789 956278582 329659550 335962544 853799706 903761539 926243621 966823453 754039894 788867334 638776463 898215995 123482064 493602031 271833253 407209605 495366148 743647066 700426073 706294987 96427123 620954281 332538407 736687146 724687383 840873579 439508137 814741934 598961494 857473253 854872418 855784580 340883881 832097007 694582479 753009613 655394154 828974004 871928872 976197114 732786508 986230572 835767422 918956765 42251277 101971591 225643237 925916340 183527457 567062712 706967173 774813462 285980490 876047141 921884687 969364969 25574594 230369237 201511868 509447954 597811625 740054021 652510019 754925667 117898907 126132866 261044482 551828911 11485437 96625873 591368166 663423031 633911484 677882362 897031050 934136135 806864191 828564607 744237052 827081075 342062319 516975755 778062125 944108756 355625618 729204202 798902593 875046535 442853095 530745600 668903444 922658221 439021736 982939975 841007683 964308963 203136372 345866294 638419421 753780369 97569627 705453315 645610187 872525697 375265111 815005497 792887201 954463249 839301876 844081331 436974172 791751894 996904173 997631763 413398768 667977425 668812687 801361010 12525518 630019814 316812696 602907699 845385611 979604185 404686693 471392057 570218438 910389031 295622883 590525017 204806325 702066297 158061552 654910659 968082754 995161928 522050676 681940116 333470484 573424186 45338374 872501811 855135890 866573905 54025982 915364811 816491334 864442351 389267567 395402163 249461752 717499501 905866982 947396291 245084834 981163854 209270372 980409312 481523568 514157424 879507255 911317505 976928873 998182178 547401670 991540068 633421403 731368019 589870467 804337668 375034409 484759179 598143066 909406174 559909176 800061240 314175896 976605957 446812363 588320144 374411844 941928441 806528627 831741759 210316014 225099358 215654039 782903727 322423259 903924766 713210268 867900357 439835337 673246336 20799097 517347567 516342555 806238583 777505170 848741291 314974866 415113149 527049683 802141233 897286569 905365538 653654501 734164521 110462207 200304158 106868747 807917083 521319789 995500348 232326955 848074072 60457751 71986718 995991861 999625683 845638854 870044757 653921809 968643907 547962404 853412483 121440353 212424107 714294298 715023141 840811273 917726147 132029596 615206349 269744914 381937237 563591652 758443859 627911757 973864219 210788585 964172193 84305575 158503157 751288272 831722407 876249970 968378772 346548098 469668486 398688561 767012751 429057686 687859805 946545814 992225878 56582320 562372654 641854075 850587688 371481747 539807580 410403359 467673451 852544660 969814368 464676477 943779654 832213749 868018438 556516769 926954413 376906384 831389504 434434416 534374678 221839222 918987923 770103135 915386878 979031166 982878468 123266646 211646440 359247601 396896733 427863351 817648003 151404065 991978353 117662517 723636810 488679858 518655118 230097906 366126424 308823671 738519160 166530027 420233501 100183606 229260629 365029246 511978974 59246381 457737063 790700012 829813720 463842149 660408868 553214713 805042420 666446242 794834983 429738800 760256326 318928179 468610921 908114051 986734795 167128004 204387385 844714031 892470288 641748921 724436248 454349166 958100168 422055939 867906112 260278559 548745712 614585275 862635768 628858281 778444903 899742075 998998604 388058156 950794823 436131601 883268278 179351017 352763649 852335394 915817759 491475444 507362516 282235111 553140344 666217195 962437274 62085293 492684460 279938952 594107719 50014944 171458206 453457708 534195252 746413416 755130993 36347147 772303103 720131821 913848675 994638957 997201013 319386275 639725621 271553196 570244113 367950452 771377736 977959429 997215711 88991906 100263392 920842473 960521713 911123964 955371958 309763785 993154200 674065424 934557129 91456353 679236057 709683831 919559195 515556423 799897226 949013239 970227876 92016577 779341363 144945841 825596071 245239697 650275976 91582577 813873734 799957640 850127785 303761387 737184279 377520439 974138624 943055749 961659265 103654807 121300038 255201537 467890022 42854367 917211124 407482983 796564817 216081354 976565691 908657529 996515472 223662951 513619167 262969500 612375043 909191877 925405802 53121523 154835879 158383404 342866316 387276077 420333933 175856383 992756332 74183004 168931408 913556586 915565316 229044901 962126075 157560801 381241333 743329241 989324460 65285163 257258149 19791068 489309602 115832379 663095453 828363965 946537858 11937131 118439441 288378134 509928177 190946319 214899295 777339489 945935775 419906963 466546735 975996763 985651717 833545704 836203426 680353253 767439861 775310382 847965303 467473940 729454914 954135728 967996097 120233651 205613498 851551553 881998232 641143759 691782878 933821579 962880019 739805598 955338392 819970030 958906652 558378084 814573519 63631194 950762306 525018251 761761060 842960471 929672858 445987763 998886994 221655468 904266656 517836671 780570154 483166916 801020355 67885286 756231498 269838893 731636057 166942020 848267852 201621533 793393990 522999051 857299232 505734057 890981814 173638072 838321237 330765738 566804852 917201213 969852271 795279495 826044197 485114207 532861774 390256907 756459236 329343998 897991463 521668877 837259134 505878124 803563024 44426791 589589526 325613696 626682832 614533519 693197500 532740482 892553934 141950550 981292242 472710644 515326919 967923928 972185792 807315317 827929038 407301135 966691231 926385985 949317257 845077118 983919431 262335505 631143172 433720945 865079716 519490367 546388761 307345352 570802706 554572133 757604889 286744145 639350732 814356111 855228372 101596450 393086667 61739963 899203702 453648121 860444516 745480994 830952886 695767084 915370036 48659323 326567744 865303567 926637919 525424467 564431249 31899963 505106307 130549841 408385559 614233592 864664632 152207505 338778915 221163619 551363605 643975835 941503461 853091188 995958799 795762699 929330235 83856159 778492796 943248888 993052401 506414745 877815474 849356637 891508925 317154526 335037352 222588590 765299563 674088673 886579572 214124312 544687758 120838779 716231170 685374093 769327417 664155187 859369566 44513176 49787640 143777155 356148307 711646634 810413603 243296446 892102151 857976564 975975647 240098069 243212674 912583520 972735292 232068583 750053194 707141203 954174519 811919793 981164602 156748370 348432216 276720913 655964223 779122648 907491524 370381636 979007265 389873284 555686316 375335039 382576364 849850272 957022157 766822128 812533119 899624875 904929149 835590693 869090937 49593237 380813471 287105977 447858070 204244909 427382448 498806329 668233782 246163448 559917694 54091689 895178245 536338735 971161372 141301146 176731136 910504847 995760491 9988293 830289673 209744818 440311783 144331856 152113493 385897805 728331587 94827179 522954417 315079975 589759358 207618763 228431256 760504608 963060802 692978197 887053753 221424827 876910766 947443925 985181187 472305047 925914618 317633080 915456315 589459145 608239771 302544146 970997788 510308064 752962727 366847382 785379374 679317673 970217613 879471551 909667914 122697692 353313927 385248027 477324576 933441983 978001562 393709054 712417339 366204310 516930179 610870253 734484606 748493577 849254850 328668760 668796307 481999296 819083499 35426843 850174320 66563642 881058260 29132558 237141839 300805287 370529237 715337856 876717426 640072720 993817806 941630702 978222129 394368674 775119227 225865164 253259660 390923928 774663488 896469254 998594487 30980241 52189365 375020461 925210534 390349530 490249638 422954360 991125669 799639649 974041124 28021421 379620929 29618475 153108397 728241330 740120311 451785093 917230308 978196998 988251621 582176555 906079965 63944385 978301340 400831424 786069495 478893816 566497900 650070425 784898894 895640428 942638335 713354598 793995303 14362339 526352912 160119199 246600112 790883106 916983401 543202596 859022111 853602276 983390277 221440235 760974377 188566912 791608848 759136383 963754504 200397544 746533528 702419672 769572926 477482694 940624846 350471001 683598598 495117576 571671831 320894380 624142934 548214144 856393346 219092165 963682527 241383502 695818663 387703069 434532972 961346060 991090771 739808101 844809756 441288131 721712598 529639649 695989460 653517479 743589450 961769192 976194187 286154707 494902711 333256239 968589997 189271604 984106370 546533185 947172672 311529859 883125910 828673574 925429320 885666341 913478041 338895073 637573065 16365366 675035856 297901901 837193986 790217237 906342397 928868751 982841808 240179753 430181651 481574455 982977270 932323432 995640276 424647611 666998804 68130702 162507002 390935741 585863535 349142077 859767503 669398452 896581432 298688955 443323906 302861510 738859060 894997807 970060401 494440171 938131631 17421373 771120191 936612338 951853111 134602735 671337521 294275100 821863137 457875618 727813678 357798797 427800475 208660797 309170875 686728670 839059226 375241713 994860819 369700391 563355614 81926274 131154616 425020517 474385542 210406795 857639863 666440094 726020606 33939694 884447137 34094125 162561463 21970208 779543725 641337781 694021575 862362153 911829526 41188247 94824530 76015571 930126253 567416411 914999018 705919645 769965533 33884542 116193722 753250110 828378275 439411159 804141969 623868122 640883844 946353989 977256731 926073257 934122162 492907152 541458237 362015607 517774972 549789745 886397793 516144653 616896601 42675688 487917607 322925593 516897077 346109447 408091830 791823240 974773606 287937042 580968319 432202590 776575065 396298350 792317882 210673262 463444306 455076860 595100856 171526244 339090187 856705863 997595277 893812599 993602457 926546493 961634843 363757742 787089967 45464550 301311458 701466871 770293829 960283186 969349535 542214413 995935794 454627480 814717927 100488587 899491458 332837120 646941233 313417319 997227661 713598229 817537943 573779744 774687721 689310260 874405418 692024850 979607860 792814901 965124263 455967175 865725265 523221053 623962547 600835358 626398217 916876967 937803375 476893372 768807704 588925773 605333366 49390555 729877271 225526616 399816517 488984277 512588898 932791986 947257521 526695584 820098420 118448465 363668043 622091172 935181705 432476969 525331503 492382792 596932292 32320673 490279865 630621995 786837849 140049184 613405907 467946464 747618202 920267522 996035604 771146221 787332100 700649281 893508002 25854537 301354305 550776108 755458317 770756478 788662872 856733399 992495842 347796882 469406687 36904210 493160833 83889348 372027621 627037394 706957764 363409967 743453451 922867136 976929959 785947850 936935959 577459241 689714811 238601211 465003724 529256989 977357780 944193586 980016924 21170674 191837535 160864204 408687317 878091122 976109139 665254256 729057038 26761158 729666021 550828004 559493949 270763322 368889947 510077166 757028249 871021593 994959879 673633688 966511441 413166019 577701337 3365945 244818671 735458388 926697565 696318708 830663278 167286156 877224264 107169603 117825607 159138483 581178143 627447549 922652399 206920446 974772694 45379603 318672685 773318890 783331100 66857258 414376573 275792035 296216433 154602342 765290330 494708081 805261917 596909177 790369078 545951157 730170340 50113862 471334098 679286997 906263136 883916252 920968602 588664647 796593081 572975160 885817606 31600992 621235817 339125933 632787187 816105947 831445771 785861453 823470618 265551307 373359786 139289705 794008738 249276150 476291857 163437123 466991849 215437347 216963374 895939752 901329967 393409377 882519737 339349866 812389931 147178500 573244369 934629044 948865215 518471614 689342779 51588472 882447719 461486838 901419222 727729445 821662851 667675313 865587112 754820466 851562371 500889643 874722687 752095932 942698118 422116328 855436003 644963335 865851228 45941712 960619471 545856120 898412872 242798722 313769135 864852737 869490085 457625474 558045637 187046725 474174869 332846140 368326464 198485005 723612702 474493548 878462842 560834067 719314914 427471750 445657096 175876947 911371254 335605379 656729415 871163350 916190352 717072792 850675738 694118649 985563257 593169913 893526650 392972842 663958978 630640361 986876010 895335481 968624894 312189300 866482385 873453147 966242591 297600074 463527614 420003111 754684860 727888258 860801720 224960609 245573003 571984955 592983460 124362294 338481940 817708519 964386674 882730740 975529569 558900415 625489616 25050111 857316065 797659686 983084831 826862673 876520564 495755273 743187374 569740481 821595663 349573015 430417799 753200668 905433854 664395911 854531756 514215806 832125820 437318576 844768465 730415995 975351506 631404457 848450697 862392739 938484381 832335062 885791015 984834929 986398351 514930770 785458235 83854060 515628778 743859396 979641716 236786381 854122367 115166776 546369787 779615507 923152809 308509358 927488391 80546587 344091795 460093135 508030957 759394425 813593642 275429699 540556764 256999422 956150106 641590458 825175323 967648633 985418665 93111849 923052776 855313116 931033400 516992490 538896520 946593120 990626165 745908502 754903029 370895105 924564518 715605412 792003979 562216740 592162498 143822121 925213396 308207017 969281195 36765235 943735735 161062570 258029990 787175481 865817632 292160021 851204430 274455121 892463886 486998031 747824370 152003022 487868855 272823434 655005237 712696847 726278398 473076881 699280465 271399866 540783118 115098046 198666296 166025156 888822003 513813121 747778673 621689757 802735550 543474640 696055045 454450937 731180110 333367203 971758476 150476951 314096354 548304432 939638970 882814991 906426290 492754765 575781698 158984148 534250224 766511906 871072611 870356336 952062212 809431207 830902329 749124935 891022906 340646346 355966940 839664018 950230658 534982712 842795535 539190491 710542312 343758791 977391366 650182230 676958610 84211136 615660374 306627023 846908851 610448095 722689989 974751891 990725578 323583669 894909236 640435526 729224780 511790703 689445759 146840200 965528751 750243271 825454336 956914744 972595888 336862689 431939596 509216218 553209594 846698850 922634716 608420069 747620127 239833774 578418807 237244447 896037403 774432853 991948727 966136579 968217847 393571068 925806377 615903458 945627121 782935912 820828429 615740796 643225002 649017757 814163714 461478594 956838308 6404398 269764354 566441071 854601953 244049426 694105869 492160210 940953590 990409404 999353250 446614824 876470477 679075782 940615047 701278240 938979168 263108269 569899762 981460695 996371789 909544594 917992083 457119501 977039715 69250768 144295452 754160506 977006791 228675593 738440929 372128866 484477684 136098892 805239196 167282515 226883563 240427371 275623337 552425083 676453772 738146940 865521806 761470716 796465808 189414502 832493332 753442879 769649828 923100532 938541752 321201092 505062304 882533108 904490683 560088563 885152073 156817827 776734737 936813895 974143740 960147101 990700628 680943360 763275915 602014283 656664950 258203126 906837516 998734311 998830788 588503457 995411534 510509840 994661864 381251613 411003153 544257463 932878783 500240028 797975420 278082057 799026624 855575420 910649030 744993746 903637054 707972127 794940063 113990441 793956189 656703700 770120903 523953671 925982007 354852334 363703022 870278786 880944492 51281877 865937790 531878438 861529320 169647734 844101650 710896970 810720274 143072786 429165377 413410354 942615621 985785197 987616685 135543738 348048893 924932911 937576421 935719860 997486329 631215661 806210532 769867601 783431797 142442090 658034129 622981784 670443679 519129715 825328623 775348451 844767870 80221494 668925236 686490355 977468681 900544372 917766490 331728870 710344333 516357017 679707700 488805754 778892554 358536687 559096470 59582911 559749096 62162931 252279828 49941296 647320399 3622611 56053105 957070776 986930609 421375182 855570416 188293499 519670221 524756422 933132665 164487448 701887092 300380643 970786349 681615784 778888446 917390450 940973273 94562316 366743728 964384537 998364125 696160277 697587741 352370715 392166811 924416983 931442187 217118354 681106689 889880526 997728824 347043484 935480174 803815493 894034654 368337634 528849269 551246057 993285693 286771062 452383117 606208671 786458268 63440577 719027525 767521864 782076571 85852027 448719234 662623399 850862834 674540821 753444833 428594341 442755025 923863960 941763495 896524621 953580557 730538202 908231181 965051502 972491212 304415271 494693674 195134847 660770175 942839298 976787675 619683075 766429892 272078678 333943360 643795811 857547079 856745125 896662828 792315630 818673091 444921090 929384598 484912053 807758962 922229826 964215392 789993560 823839257 934838448 963800649 608783133 958238092 880882819 909332529 307808315 885371630 471864458 773208850 706684795 983847077 159428135 916358005 183986462 484882502 628184659 667754320 581542596 633002380 547346000 949685202 515890353 525249331 462485521 869732815 938892952 970742821 160568687 751165846 601958566 673880402 599500229 631935751 68431025 271309619 181814869 793272258 165076481 425362743 672104152 780954206 968982986 970528386 604258720 743146090 820469963 998174407 236867901 871845186 403789036 839005524 219976361 865112756 522476177 700600217 249297138 404009602 182709847 650737964 81007521 216129810 377623748 955787208 854707571 867507176 475823107 721279812 43814822 501335111 634488132 666449646 106372182 737676071 390386599 900540764 966466081 979817856 996001821 998290842 341105625 602269648 739574930 941490720 765887889 875986150 191687631 627333358 845273898 897806632 514771179 827274152 430428054 781608862 196069463 238248137 60779979 489356991 517431054 989022622 812490826 997286590 97156649 162007091 547992171 561155282 872171076 966829976 130435870 874164450 47979284 264802970 25867969 700788491 397086323 585026635 731333890 981981644 264425403 683961379 953329585 963015823 272298777 477590985 618090178 693845279 276711112 496539800 186937995 647631020 691254861 929637183 882860337 932354500 147019253 859040575 716828061 997808396 559896738 750401832 667298422 867595802 91935115 475670421 272354317 710755996 828074698 859330340 706530353 847287027 402069964 468248374 645990433 913502177 202364406 914108776 621772434 662018851 738444915 975426414 337633584 925774124 697015149 974860682 931777612 976870606 836845406 922779898 447341873 481233373 70658539 824250179 73867268 390040060 691648998 797768223 110055927 682279838 336010988 783727526 843993631 918371855 172551283 401366820 634639837 671781656 108371828 809074817 367512099 859369027 820141939 913280237 839913483 935612748 86488692 539482407 994475668 999052858 460754494 529556679 830793156 870859861 807061363 872802995 545236520 903115988 540583343 584612567 779077398 827034070 99372535 441627178 17011316 942552921 202187880 346105913 99929097 445137199 449521853 540949995 920294418 950383916 585148680 707585311 709251312 744228642 858756077 969102844 863319414 962936493 318342529 729777234 645801599 691439991 658862600 723855631 560275391 709134279 152121122 923446716 231072391 719583699 911125331 990086095 738544061 904428346 303536119 577177282 765440841 789175150 417344414 927854830 445461374 723555649 93590473 373852131 770888861 847900577 412721564 487569490 566527261 834555310 417170384 448549919 160517457 847390152 229992256 707512190 872341575 914910452 433176464 896593745 337175008 562644062 15397701 953435466 165193187 501606605 398573991 661806356 627364084 669071511 459705816 598351946 255098785 630905588 447295186 588283070 441320877 460348578 683579342 991285541 128448277 505233507 643969511 760814219 920966784 992661353 839630664 856176765 651011189 924333370 386091194 406990222 744404881 863077596 688442721 720997157 999754674 999767386 828879335 873300136 287360718 525131162 768761570 994974122 552244750 728840800 290600049 353570548 266276085 572871993 877868007 907610447 606617517 900649427 157611904 998398987 365843666 924396488 998205643 999379349 928028955 975333194 734627908 794230901 767213528 791320023 5324228 855388602 685353398 691362457 45974072 574359955 122839357 800207045 342100775 462446666 876883040 904484154 427333497 566574550 827179679 830332500 917988619 923980295 441804909 699503020 506217511 951929952 479247541 941868822 165354380 533187935 545863720 816779104 258882316 555048167 103742819 678782967 437166899 623328604 518195984 818613790 283398376 777559528 295155682 643226318 75653802 239683326 92326079 151102694 953048588 975001628 732658391 941415638 860077336 929292961 130974451 645642626 725235651 890965741 689069033 889063432 69226684 747351812 938241268 991433060 749615969 857916407 945671864 983252803 397761817 924152626 504820400 672887661 605675494 839783230 893173014 959199948 661761725 866413594 921662499 930660353 746798013 825500373 108089297 977042689 728095796 849856225 206594771 562137909 691610120 801298802 260186731 379762682 304606238 578903461 354207931 688534801 481896790 682133561 887041937 945942220 675742813 798710247 585900290 882931139 468220844 670654938 899924336 929456329 837031124 900141078 253809359 940064813 979657632 986446070 804323237 807812228 658374209 715932554 349722680 812622514 708663233 960474031 34360351 411957654 911891717 926136476 829217693 926881045 329224935 612781571 190197358 704868507 941421469 964975687 944840608 976153481 752993953 989526845 864619415 918852875 660870165 965695978 824675823 868495820 704246837 873218778 912168956 976578964 821687458 926101140 605790919 962003564 887440482 928687269 768107768 989878856 621654784 825585009 710179375 872479197 556360413 728756076 765970007 923149308 690771984 963245822 486649278 580745465 962605743 978633553 386263258 918097163 640124045 836091622 27384050 650867187 584209611 940374263 875754862 921310438 387584876 574181310 419310791 899672919 583946649 606276604 162706899 740751079 756996434 760509494 344269018 555096934 128708340 870934647 671351837 856940630 785308521 929720255 738508333 894985133 457450295 663661538 35225177 212346373 802665260 931795558 699181335 712176775 368749895 515458024 411314915 618177172 96207272 560254782 812141246 857168029 851931037 860512094 436196023 739555330 242460709 611881639 147666911 770354011 672801338 808445724 365473609 509670078 566869919 643969567 128111135 189509228 44188011 628658001 349685347 920860861 570874005 685044566 701515044 959320908 136989828 191418320 784555944 851458263 145079479 556194220 203539049 779028973 944706504 981405894 213599058 738019279 595224923 800634738 558037978 595490497 65541946 406066349 485322080 510148185 728242753 888618520 257289151 614049952 999602640 999629373 406536746 627336032 341531612 652856705 951616369 962406222 260469861 455126850 839411268 846701297 43906634 100494417 776240870 934097357 824366522 990467946 939964897 994697523 736058086 913180631 406317096 643849127 310892907 918089185 725115548 950114376 751899459 786854870 619478183 857339271 801179087 965176757 193060837 464026137 609892684 772434623 206183607 310458902 850739421 860290690 182768067 947132324 409980772 811232029 872032686 993669045 269360751 342571913 583444962 603036728 84998533 402476158 554861480 920290926 587412178 706075808 138796955 795488850 590841284 945070078 841971787 894858156 539420184 795573770 638201655 909092731 890196202 925141890 64707193 471914242 297114336 302010729 293945478 836561761 864352811 977949176 790646917 860632414 518088518 958769144 942432885 995937987 449541998 655414478 790534384 931603094 490389555 822813029 324367890 548658185 598630965 963855111 55887546 661760565 518545537 825465606 943596806 993749525 107135059 407073130 230160127 288637811 848240864 976539456 365653772 624634120 370930219 606076624 561681351 959719180 875449055 963397921 627321074 925237742 870063059 900747854 396674990 861220115 348843759 845417973 241982567 269869863 612425929 882047699 800172173 957065122 569060385 603525699 416709327 986070328 903406720 980114659 176784482 679674717 321227654 695877342 771648659 993302397 617817561 969166107 294538725 546253588 240708292 547097797 743098048 984435740 747554724 989776913 717258001 752751517 935857280 956426162 311862467 476872687 892746321 897941162 520482010 990782305 664116171 810903414 71547745 411353872 552623640 838427749 995993123 998210476 633023918 706364375 647451897 762493144 816831502 937003301 201640949 359844635 305686945 351215214 601966138 690285632 461401109 634412398 864194271 951108012 344039129 495750731 999413999 999727732 853338697 969896045 40742043 912919563 947157304 969051674 882030003 894566120 522582050 928099601 897947403 999351113 957757853 958377112 510743637 554290170 465830441 820726666 659485454 867457102 162888678 980212656 407953754 589369730 784206266 930950857 295790962 845596509 908364880 950376185 367584534 625241813 197766918 990715137 469079470 958665897 896105629 921746123 915209242 928378824 597444077 868095849 898830382 933704439 518570959 705377779 849262659 896609791 788239271 863184953 11822504 306065429 346645792 568772659 998678301 998709184 713906633 912245696 432863752 960745670 977503804 978774355 791063404 799187978 198917606 775167225 524051591 769032585 623267017 911545180 776244708 819418764 505758803 650350266 191784943 413931440 720399708 936974194 846275350 896209908 955648479 959855962 875340923 923217337 630512572 735903071 265733668 575489584 795380479 846216499 130863313 747351629 881283714 884737861 432221122 531780711 584056401 787152218 288489772 992955574 812573579 847188263 714907858 875655219 160580606 533804201 238009444 737005924 211147737 649025897 252704856 940066052 890431128 935531544 432341871 550214070 369341033 629982146 967483974 985268136 631442533 710470762 658108129 895133609 59529199 136103266 784322058 969244838 835091576 943547687 515295996 753507048 626000987 875463885 684024701 773090866 947438671 956821461 785490802 985497681 857578686 932564346 131830167 362869904 208097941 726092433 220997572 707368860 34974402 513419472 6433950 971519113 471342435 742141275 839417561 954635695 501626467 570548978 49886451 113036060 798993936 942006100 276176105 290652996 581025863 957095292 207319859 830316131 277882558 577645378 476533319 905597610 655079125 843335456 381742663 596760349 573247481 805239072 215464301 557195593 512328513 677266529 771276790 933402941 239396503 805849613 864387082 894890941 738621418 813245457 896562749 899433671 522555241 622836733 56700983 443179817 199440145 701329779 167637025 661371041 233544178 807595158 565947887 841247021 734266520 936311242 710955100 763519681 432889279 956909067 207262694 627828106 94891043 457305562 854700444 892188265 744694819 800731388 907808108 980422845 574430987 588159360 497841540 648356801 493953800 741454639 261197486 438493594 53469238 723760892 187000289 346025672 43063968 671856787 110790599 478995890 927030527 934479565 420881587 634644126 456248904 719770191 439189036 882786547 710407156 910708334 849580501 976984261 603636539 836609518 41987265 272466422 758333799 899081431 74360888 814207985 545521904 814630132 363383681 621978283 401857797 817878424 759406529 831131127 163296306 780705023 291391271 550363714 115535183 790311388 371200780 554380303 152600714 283918355 827887189 989791704 880432506 975269335 833828715 839576663 285039546 413268868 675805945 876549641 369376084 649767424 378204819 563017985 793002415 950073737 464225542 920007831 213220200 690061746 802487380 892503739 872567268 885931418 363176661 850274410 162018313 880691784 67689694 160443821 523579193 827354832 335515570 425795881 772138853 874518444 800214679 879240759 152302559 632361714 938942132 980099154 762082051 955822918 108284270 651161730 595910683 734988580 303208261 388934397 399714201 749882274 472658022 527298659 721915495 852658532 567835916 645867641 926393321 933967101 209388319 800747039 579648663 958737822 404314122 924115965 928011574 954336353 121251649 322915694 8388203 237631218 770600791 891008132 136780538 826764018 252887638 365418296 323568141 826835844 585650457 999315214 953878767 976526583 878497235 981353072 107563869 225398276 673277908 770154529 505025436 637240014 871257568 982048235 485872998 837768670 970248141 976910669 807911492 882992983 664734202 985571405 154497469 956433892 601977530 836344249 692195866 846473638 210226895 285184981 58434575 791006124 475887950 618104561 20421348 118168125 168099942 424836818 708407435 801320828 859486960 888760327 667032765 974317793 488349348 540095520 204602477 547322244 693463508 771299687 458028323 487958992 368401488 571515851 792664623 941423869 462971004 959215439 143598576 269592908 29874579 333789963 534359280 543150210 707524115 738986868 255397301 416604444 665666665 668735631 471458678 475558272 686372059 772227645 854782439 870619272 304383476 324796457 93538803 930900198 384137095 841042826 530242265 585222599 226426726 813676882 583627716 643371738 20464006 741837500 850872957 882955694 621909584 803028764 426071683 898784287 482810066 876685436 408327457 676534441 560209209 763095150 432549847 900475860 422974259 544628187 486495284 831045364 600428067 657904357 916854902 990654296 183474031 405718009 848850964 862452626 175825688 779513336 709878364 818001016 490309163 960139629 664995317 791281563 428914118 522240999 171373137 343051652 866864320 919430163 611075933 843545315 524774832 718822372 208981028 401378951 407535275 449538869 776756464 794092091 487229707 786810459 879586728 891131611 789619673 839883451 906728136 931686143 979965284 992297121 982674738 983569516 209546126 664162773 526983934 767578813 973741504 975424948 282374971 464467062 580149119 951653226 104368928 953910462 548888013 883304926 272545399 722016981 81622679 226656223 592151181 729788364 121466628 488120318 60212415 243773532 199267064 898190219 800892753 838283375 224686047 409175749 579654974 631701315 814336942 921724147 826899196 929128301 743228052 770249302 493043269 560476887 699849469 899221640 126433063 893355911 65530028 314612814 265072767 310996247 441353566 825007789 589593910 853153011 21671901 461713677 222345555 630442843 944940719 952637452 61188236 898711218 803877946 986132619 124399457 665920768 443140373 859603524 828815754 995474116 65194398 630166729 632785148 756334641 580717877 749727654 266832516 516552591 111655245 451048283 197399441 496132698 343498586 921656086 18042939 961103859 906834615 971809438 281076350 312117522 701703143 901499197 270627291 349074640 674173190 881987439 108494084 713929034 780886527 928157870 571453408 922519612 516581189 665095367 733083239 950449341 345801642 714543439 337477413 512570887 205201044 857785628 62896359 676792502 51747340 264467698 347717068 977586414 766385121 815140312 403121238 853735658 213239267 357280711 701295430 832096191 916433352 967239793 29304672 154766432 41677973 624744533 666993669 904753656 503327290 988066218 303367449 740008936 958837277 967761225 898407261 986519471 345181238 964192971 76507517 808545041 167456253 237763048 985008525 987028479 867788590 983923509 633130107 948132554 406171341 541895332 971661594 972206171 772046469 940048255 89367636 318171170 574064079 595883343 980667901 997649261 631795393 679722042 39576868 557733253 71093472 310730125 752941500 812670832 414706766 830526256 621424952 753325978 506004967 524747445 894508198 951293827 677471958 847574900 160124323 503706868 541864062 985669355 34204751 687365411 237043780 415992317 47125310 365070089 280458786 422560725 562087236 919713205 288505163 958418948 286810628 562953374 8464400 267687127 192907827 244597350 801571394 893458186 968382086 996232490 423134842 698046324 493612669 853215521 363167657 978317615 254527977 750420043 574552412 722367524 581082254 944919196 978283047 985832447 722322156 790392102 764460359 934936083 221416113 921004278 49083707 984574049 865183886 906763422 912474293 941030445 232752498 838121276 705603528 783379822 954930808 975741143 232332185 712739036 868919702 927999360 878021126 991911330 676977281 834405015 916148920 960196676 751620046 780493733 680081705 801099856 845757871 847420601 820779527 868936072 661649920 907667461 181146785 218030444 983862550 993284083 298963542 440308980 902472764 954561967 950094166 977539106 278391868 301111270 157345388 514200050 554329672 810540909 566066639 623594260 761628951 914767836 290456043 316221760 706523002 786733362 129854760 898615854 845426074 982437143 899304097 973073117 537242375 777456959 108227289 230830098 703887877 771618268 935963874 940755846 865887941 874553626 107124160 193634261 624532846 660002320 30845507 397101803 180000604 993414766 480462620 624829839 801863613 821865176 522675876 815696521 398626639 630440270 533563663 693831145 820580042 977133196 639775009 828747960 245778493 493293671 551019230 994481657 847646824 925825410 439388778 839707673 15528801 650609457 50721287 312887390 322284247 755657560 842314961 929383139 742606979 744479820 731151272 839899610 623525892 725700828 944952651 965797594 245927310 831019330 739727669 850640969 749548175 762817919 537347151 762054407 59428732 876299421 155793368 511519183 824421876 864750046 212949144 353918820 730636314 846023238 438673971 840103801 845883992 918101034 477587955 598240710 905102883 948958601 28691069 641081709 343657472 722302380 758656019 836868856 964324854 978706248 275712113 927721977 89773020 670887355 584649828 728263416 589277698 950002703 216724939 611920485 358537135 672329006 848736522 937900352 574079972 710645101 163420053 806104891 805612701 812246546 289978886 360355915 217685979 776763321 848699625 976488845 41585167 360492835 539991876 775290366 240096595 538933366 673079813 967831175 664916441 670381678 503711659 574673876 940534458 998090662 151447129 951284709 190489926 285725979 216365986 605277555 805836468 958300388 812913270 980341712 709902289 852519583 898942435 905537949 427111739 503280839 696067257 902964870 671269508 792335086 553039444 763590743 683507245 974613950 621059041 934822081 48133759 913234956 618154767 969284879 849912829 950332210 861824992 961891644 443115597 899986117 704493780 869804544 841364403 998503719 707753163 987412924 263881221 426828531 494077067 559508078 559549445 955904376 306789145 545855981 660205142 735542150 925946376 954191111 81039020 909323706 796074736 860500189 171848073 237822648 857296603 894278948 770694861 992966788 41009095 673354927 787019354 847663148 365742923 686959329 768867927 935493692 560897227 679233956 72701361 93947606 596833479 996411662 250281368 465704661 901739639 941328954 461744351 867636154 314542253 612388749 585382132 607225519 180142822 987110483 756130642 945323236 471033298 552859552 642449096 785797708 552521634 971858932 264244345 755593073 232831032 508423493 744325340 804501948 954991733 994860608 91796825 826283220 91728616 321797283 138291781 238366008 878240309 998741638 781103391 802324241 430143737 812425808 536995898 574678146 336405665 915764578 744444066 817395799 227501564 680866595 664631924 693191154 219525626 247626664 569577351 894207620 159839814 442756524 73877872 847149727 26646975 147818058 565544879 915806037 608368394 739062906 855439794 958767805 31454095 586099249 375533743 897339890 186185186 865291339 731341172 952361644 794385197 850670505 863763921 964975557 91492044 953871341 750868149 936995182 680533581 812627371 227548976 343406895 837277143 907820089 519234980 840782826 824480396 984572430 196317975 671444939 294062289 850482066 781201279 854040107 251537491 723739293 712569575 824864757 892992850 926478737 790767594 894262494 773239135 923308532 462692309 614374058 679004118 968711983 603680401 618865252 975977357 996340434 324655806 878733394 866886024 917252610 458228059 839210553 654803187 750110876 973689720 976659849 353901151 890081534 770348367 947173531 107408206 257128992 34951828 375997141 914178216 934280090 375590993 778036866 173552441 665790096 321394619 955137568 741997613 791305425 617842502 754836157 674665657 911261616 652080135 910844407 523418186 927311810 507319967 885956731 57268748 731535125 115750730 123717950 393229133 578904189 392131441 959473253 107792917 965091026 536540479 838152437 691258346 808643249 523347877 833176917 409567126 659379245 197957044 625847826 996576098 996727500 888540345 991705644 984866323 993573142 587210100 677491517 553735624 772710982 334842628 589099330 67180184 857417291 430380129 522868502 246026930 744774985 480948022 965869173 396345896 521715914 557124928 671083613 919980627 937209213 695178156 939558108 105441996 805436393 613727329 865217100 371105367 747317954 814537031 991310347 807026085 947693035 709229921 981013342 806919829 909938904 651965042 859137386 533979183 783495362 949921764 970094020 781060315 798804541 681497940 917124012 848433929 933162242 988545987 992362886 685256385 833338795 138808621 532599278 132877818 139511964 709039297 998529916 832931919 883729296 911127472 947350714 123194801 576338137 4347426 461898967 616169146 705249851 748737214 924778126 666083938 953272240 154621381 503588675 494972299 821339303 708355605 888259497 495462885 863410068 273264432 809807016 361885593 685539672 733494124 984532239 873245702 945635645 777906591 853023224 574023984 886059963 822847616 902096119 600055238 767094699 122287840 818857504 58904198 319858684 997989624 999176098 532068538 599260611 295232936 993792475 129770325 472952051 285500165 344739429 773010607 995159776 138392969 594489892 114555907 860718439 400631926 496608016 333854082 609027239 534690570 715095083 351743801 646518290 765647788 800821096 990156519 992521489 26343905 365083548 115664242 815978131 422347090 695980012 543427938 629247229 787628297 844578705 115502633 192287174 522494141 889183243 657143709 747828758 306563761 466208705 970504970 986645598 849675983 884931587 82464503 709771937 823810657 830166448 746961680 753583901 383911543 540117354 294569670 490310922 149107323 789012103 168005215 308480937 886377351 889439746 635937266 814063128 948937357 971179537 48296951 470618819 780880832 870464320 675428258 806633922 142424892 384201988 791148674 997645412 387280006 407543257 802180184 993678359 298472266 508633350 872917316 974863483 476746283 538002087 908669678 973331544 685227327 700083920 126887855 754268047 480052069 847473953 154613006 244667505 456221158 819693028 376337190 994955137 223546058 458624253 883923014 890805210 445666610 505068748 242922556 950939780 664162879 968424094 215183324 634891797 336936110 685550429 546160709 607964893 695475400 824166650 100357244 131098344 66972598 446235145 324352736 998647483 874369089 921961390 207326620 862898581 687280918 716992086 274837511 299261940 9552155 602144079 360732425 858204683 779598631 886956147 214369221 691970133 754806840 757109786 474465410 556172188 765511310 902075609 558426796 688497171 53118280 310794825 599942756 746147209 445351460 990699118 268842482 672472671 727681959 955391592 612830963 968012563 936649307 996531645 756480641 962215071 142404438 575046502 466869036 545527938 525090088 595425167 398777970 686963854 271819644 919782427 524502565 713712406 136647869 539015883 884612671 940825344 738778615 975048258 373825810 583032602 702657834 958995895 669938035 779130571 322610871 745555838 578722141 806679733 37002251 733404842 621053663 701695973 696921691 754366307 424680391 861040005 765270116 962836205 294175630 934238339 42516922 629029457 102271319 502177558 749018827 978471757 726346404 881282679 216611902 695992743 304069901 602310478 194575857 266340835 623520422 827610925 411591059 553750369 570764867 916355357 727642480 984303425 72899285 973882867 114987605 795328578 307366548 726943423 173693847 176833406 788101217 994549381 454434187 477397266 475569321 678532066 677701108 731787771 365498694 392058092 239791283 837163800 495538073 826886674 173492915 546119316 89069012 460688025 517631649 796161874 601675447 767188448 219897616 479357355 217257717 887481179 293567911 399569204 392740476 839563266 520841336 985848543 286252000 556088961 832645937 924026175 627829341 645234719 208072427 220611402 391015190 462771105 985381280 988554932 348325996 759630162 126686421 907620560 61387285 384653546 631335173 818900900 66451701 186579359 758211060 820687615 772411969 956054097 436173433 632006817 891422528 929363473 9527185 866167019 469682940 964078799 387386586 749625768 389884481 402914226 59164717 350699306 194201560 352993777 464247788 650603624 798669204 950442776 487136565 905009882 840364580 928494856 600622639 644903337 192074615 559824529 898999747 917075921 267476393 944629553 47432583 243137460 521566945 728834569 659909088 781492194 890339218 956234894 7776115 417525891 462670748 657283991 784805746 900210108 619949485 946138391 115931737 383843110 500226342 769058104 529107159 667884231 750387066 861845866 821041004 877752184 921346767 986095567 288621639 362706576 305574643 987436299 495498276 701096546 234719371 557973604 165621100 477087807 781159675 810287994 496738922 581498617 602510770 621845578 498854386 616551156 797176724 833464906 774080341 811983681 724922165 862733549 874906708 905709906 689085906 739539658 523278368 567835200 58034761 764202908 98243238 703627633 796313993 989716774 270631735 451543848 247816077 326375934 623424160 935341569 868905223 877924911 868246944 925030190 486610551 723218023 587214037 862356494 212983167 838669566 851027096 990769319 652329360 674805759 513421062 952111719 21278960 289696920 537234997 872354656 632937702 807419814 372206784 965401573 61351811 67027380 467691911 937449510 719024191 720410212 968100405 988432392 497165132 841154991 544122598 947665856 917299992 975439325 627979574 793151623 75903023 629619008 700420979 818097383 703059832 800239150 660309277 895505383 348996290 702072711 54098659 921420484 56476177 191474901 679267083 819190016 901064033 937938943 801973897 837823886 392346742 468397902 601130713 970941865 772287678 926530537 883636285 939377370 575102176 788199393 704361573 771987325 965437104 997058419 951726254 976241846 93569899 998637828 625933078 891480783 673713123 756506091 884797612 940184016 41576828 564603366 36524129 352922789 957181659 984270524 49196924 840788300 288660838 634418315 426290009 930775568 122933490 597293190 904739531 905737873 131872264 181117263 476897348 587007000 596726052 869740156 708149111 866475851 723828251 977214888 743190246 971439650 16596837 172295648 756789878 942885644 210106404 311235659 880866064 927338532 228403976 379762276 363700009 828733536 83980704 273024930 888083940 979857254 821511760 838760292 323100343 561039046 106483881 796209594 566470996 933540058 972934480 990507300 598534688 673271318 721454540 880107357 212441225 349760866 59719376 419390631 605338915 649063162 75368156 345766214 546430666 772764957 220409185 294711049 492576183 969388909 834677752 919392267 224110160 322307479 850536309 889131834 138482513 987775178 209757542 306444200 643628800 685368281 208370581 317893645 695155944 992754107 591068677 908467035 49721321 471011194 441111884 971782286 647265745 868654084 363630620 419605518 959487379 975031265 354826339 548740640 391051979 838243731 229082782 702080972 64638307 840603143 190072474 641650599 603241156 995996582 47081922 872097525 894111944 942072164 543702455 658363473 580260296 631154922 564876432 780707462 203605482 238438677 602619125 963503966 798129565 910003807 656572175 848183443 364246356 739609690 589863792 614878632 703081145 955248612 907659774 911320661 591260626 993927922 723420495 992507074 221473752 998975070 551611424 767224728 694157945 763386450 149008786 458607750 112353643 996958946 747764869 899475711 145805632 236197062 184597693 323294517 272718100 717501077 709225952 748904286 890505651 960998733 388420917 712538171 339174774 612208323 367364323 569090843 379112050 473798612 206240170 819286860 79848676 157884873 690555962 757780262 821650524 943005407 840754107 964034174 129382055 872895318 32571613 151960820 828345003 998012783 133872939 359656937 393618145 831918244 657366182 969068595 935206572 948852365 880804602 977980550 722253408 910799454 615729947 705591313 952869226 965175542 201640429 693552299 369414240 601846914 110439186 573934874 195118847 204266247 162023645 756597994 445820494 980264384 562376980 786338666 887528978 993143268 370568245 935632099 686747246 717518559 64457450 187626158 16521018 536786957 137887350 996594790 776956913 852931013 765363192 776274622 861308190 905140263 999083706 999309441 891913903 915128062 796625246 818844020 442811931 563429204 597269223 924952505 222457364 465504983 156028238 983749115 592140745 689655192 737570457 837987621 276926828 960417556 696514429 860642278 779287003 957645816 77036663 174947369 164342570 537485802 756658820 848020125 739930649 917942608 369086595 738758566 428195535 861171362 864838467 991955820 218759455 721273906 706566997 773489977 756930628 846536081 172339480 245456312 110664088 858283881 918960055 947183708 656647194 747821079 825814985 834236748 328816329 740581805 880978655 887708130 845837818 933560873 473133680 604468198 590789211 598742660 127540913 794800936 910603395 973798643 232097985 266976062 770318170 970483251 74403088 611999163 740369429 854784749 443766620 838924322 512002905 971148159 731989766 837197536 338415551 775728537 948620046 976353717 530228266 677293253 874087139 952719728 358966314 872583282 693746909 925666413 434278617 864093286 243342670 483193900 618367347 917003224 927681184 947955972 333809209 540032215 397310992 617357839 60726406 81229154 804143032 805062982 182225256 260878708 708359918 902195604 996696074 997239987 183955489 675503058 84301269 893731179 725436512 936153933 115708483 549159196 950189446 988819898 637816749 836781782 482526805 767562289 426520149 908937121 984328854 996173308 132931077 998093450 933643256 940556724 891036584 914439937 292706551 329570170 801568014 831677832 383516867 560777964 528879120 601362421 563651894 938203154 620699246 672542995 212482429 393925517 221479232 903535478 315328926 604470349 907167060 926753613 384995082 869500914 622258877 974426861 92523875 299849148 933750479 953834799 808975402 887868968 732134597 833376493 319195129 802995966 150712894 998151761 554624334 682024712 211418130 988087060 681443063 945400936 80460063 517276499 942852212 943958582 470915231 676022209 81219169 314864144 364171307 751007806 921355346 957677965 184771903 630875855 50332409 428227406 155156554 258210343 341584785 694440462 482143000 929723036 980401372 998375634 881662132 908041072 520132722 933524489 454181164 567655150 162658366 891216166 699153920 925416241 706680082 963062002 32366675 375251538 334430244 888308397 160229039 556677476 544401854 932855428 449097245 584420384 737585067 990078806 134508142 994301817 480200041 721531492 848628555 877985251 182547875 510741243 128343850 227177977 377476751 551771648 358925741 359728213 274664463 945403382 74041442 856577225 293964661 933138523 562982488 937772497 144938606 845318198 94125339 155208628 310460725 962024258 286478088 753151859 334856928 681765071 253282352 721265268 673223341 928846439 440387913 641921122 489597619 580215032 925374226 992331297 780068506 845522060 122172353 125099777 283522421 470211088 851124686 863504161 443235975 859337464 259655868 871626653 824015193 878635540 452379061 516443978 239525756 939779131 89003697 921947842 166231799 399146336 934287451 986657456 136909780 863508349 938665706 947483768 949775160 963964319 6588764 65545603 516391502 585321970 816315752 843303161 451361749 655063856 213491458 643254211 615393243 724776979 20068891 976364744 151342432 252487631 333836122 960714907 649419188 800537665 85415451 636334001 919840370 930995633 226833509 916536185 136117011 483358515 375192176 821020974 932718147 973940373 193912809 758881975 258970443 752808270 859870735 935211323 56958977 799473762 630782682 918336474 798707078 847511190 390248119 558974188 181762468 565202939 221858588 509481029 589322536 633428886 775438347 826190400 958228947 981617073 906262280 960312472 227350331 845004189 557206541 978695479 262539899 305320653 52187330 293810498 938176337 958791781 416392057 898648030 60477216 522437858 323044087 385096399 432623234 886161680 477472966 722517539 986408405 993737406 701162126 993336484 303151081 987356990 462015322 510097200 605307513 859421266 181817488 383557294 638651232 805504503 159181449 972093175 462984319 553499673 32438586 818067504 860528788 980340297 719187914 894075555 656678228 988569876 158388042 162784531 770380923 885353596 999046058 999357812 65385922 328093088 972562738 989477940 802872258 828701655 732906094 760879865 205935501 632153119 25062945 341651270 90636996 654171815 503037652 541009530 184600839 879955777 422340751 980463413 248815424 508506325 67430603 99270817 477938147 936487697 249648292 314971630 464512106 472461091 399363162 464453728 661181082 687177047 893924835 915456787 260503449 583832017 942536488 964221750 202232665 788954776 273352456 952751188 487402862 574502710 49415867 436237266 852479733 944860807 334289976 663883958 509094512 848617491 113481303 266996654 366088773 587844203 701356702 979617778 98805232 581754053 397683430 797811993 982296782 999798559 967840814 972495994 153663438 262629357 268688909 303420784 993963614 994355574 631501937 750923224 509104780 792762485 526621368 801456587 801460914 918347070 227994883 932380385 542632912 699957876 586369534 637557854 38669191 302187550 379602824 591675024 78033695 950409730 219341494 718726133 668328967 879902992 100483053 593595042 975895207 993377351 786483559 918456775 407340839 618642302 483197498 526307428 819497605 840733397 222405764 495340241 181331541 375058213 487775003 866139700 756986420 786317479 301975465 843605917 589719852 814248994 180483892 516586894 111786379 776142493 888168843 936924948 207061807 374057424 705349095 714983937 845611276 874257997 58830587 948710537 426161 214330144 483570935 980521123 879171804 972840389 374626634 988462985 488946574 984660144 646771088 684806842 803176763 815166701 605243603 615919089 223861872 398117666 810653228 942668615 115860468 192597952 105630317 535295470 350821281 715715349 280209624 587866685 573858543 984998467 187867139 214472267 809931673 874886212 245090483 920696400 290580024 535849504 488585971 803262964 594871845 819685782 677628466 982752771 353284792 493370972 966031711 988927690 403171836 406746272 714058338 952338904 592880505 958400824 599342376 951826286 745088362 870722983 887784381 979872092 355497703 858226215 13931665 222812563 105912115 778355721 85082441 720618828 601001757 986141363 767996922 944250076 532087172 575360302 406819743 744474159 167876580 510192303 385439270 749243705 55457240 486173691 578090011 616968625 433555540 592519533 63916165 390860272 690614962 743621588 313562745 593091185 762747331 884164877 521407790 970264025 201856305 987746483 875567953 943719511 509494565 523094130 749644578 942031926 11474816 309302634 570240856 847577615 4307534 426078572 492250483 884686309 965083271 987749000 347911360 579490670 732273940 985075567 251740900 787764974 516031822 622206947 828933902 846817522 121675889 377651397 779833840 804261461 97850017 718028889 249340842 615995408 110901653 489634921 641221531 692997106 463376014 867660482 376896457 974910106 54242168 380628362 219566094 322035151 806530008 863772003 170275904 308758285 666318611 818637847 237751588 533227513 251845831 929909039 43427499 990887138 81332030 131543140 282852741 375792822 282925310 859683295 671474762 752218311 161695168 633529768 813721363 991483952 699899827 900549394 635641745 837653628 547527362 741871462 992606064 995789081 226266788 947066813 623574130 773356444 783517607 994050008 250863908 349211769 635691012 701974246 449991606 601445335 71610397 598605650 350811432 627001324 755207045 963686400 462248750 746732310 728118067 810546330 272853896 718245748 912525176 930792336 995893302 999609282 471409642 707020521 681523784 736052963 469741527 795789357 764985540 993913551 749629546 995767465 969530862 989576468 867192430 999634229 883727541 940202878 836370617 926964815 334672288 709953277 736619264 827802040 168707992 878594023 594993566 876282534 161257717 591095245 391446430 415077535 902216512 949885155 66935323 911802507 545587732 939224049 129772363 419719607 787315698 854925610 550850703 667982097 797398713 956585422 52787331 928481621 59991234 581446576 142800147 225432487 23470999 839688523 749916122 783897473 191517445 244120291 933167501 995111371 440487470 914232432 118138944 721225497 78761695 659031419 497046130 735461470 358454680 884376937 693481321 766308202 475448941 997722728 751335397 957142160 402145234 824567559 197082936 217674071 80569891 668282511 761000241 806475463 462908683 591226228 11587435 159144878 702562191 842874179 283375396 515110212 296252544 943375286 908512942 911664630 379654554 751321932 534750900 624548899 434197339 544433356 613051940 745470535 590655805 633223185 533677280 902887621 529987614 917214379 338983464 510968772 372068186 907655202 297003557 848730059 866641756 985851065 143258040 270450971 411818383 820799093 198888994 235017227 430398292 612290745 545780339 879690301 201018069 876242593 139676509 893346131 571527507 990456586 542403843 999195212 604448374 894516122 20459952 439086189 273308968 609365900 674271925 913121388 278839858 848261621 645687853 923584923 970237232 974313367 510299075 960955159 239905687 270560991 859859453 964887177 591279798 668908021 478664324 849033120 668295043 879333705 408323597 418004151 724399755 887559037 659799842 878506972 81378231 457844779 671492079 906804753 487541875 585271341 83092113 532231098 549069861 939414847 233372841 924654962 910719009 978893757 648103213 787062969 196310473 389533489 310027413 788224516 896804309 948940616 959024584 996270610 666077318 905467826 32842038 744109738 153425549 528084508 887771068 923487862 882230149 917436524 314103298 914706986 735677723 750883112 789127703 888607358 690101316 960469877 65803192 522006043 492919149 696658953 11169967 260191209 734223479 824760832 138594684 385536418 536051962 717852237 962389382 989061396 895187109 909828144 628237651 960413858 54908421 573805348 564700438 981709749 382613308 483094257 404709927 590957976 898555701 909062736 742560943 802157807 118456659 624529604 165847677 640671772 77365384 228580699 304138058 401209997 267912658 687007841 384000521 430938494 460757198 843496737 861705453 892280204 132516168 185513844 746042251 901775446 954060835 993671206 326580739 443871204 607131535 806373479 638893303 921981093 778679864 936745987 681926458 864139088 530124897 530575471 837995691 929460349 190009435 719552771 878548867 964545134 826254870 990837530 819010737 837068689 604035012 865537612 692352519 794408260 242218571 691185756 289844815 450182298 469597063 691720385 985516121 987779973 871695512 899856645 276045381 780956902 369361170 769522961 584927132 892383063 263413869 362244425 266911642 776975577 331590423 733686641 609650074 875953221 731868969 984671162 92067148 508568516 196138180 428490853 50892985 888040328 808948172 813638334 890870171 967812373 783103973 866246237 249075240 546219335 843508192 950059328 914708765 993896309 104891051 128811756 990049622 990417812 948913558 997650551 952713470 995106428 65321477 687226565 236835553 319802447 444712492 598331469 235328508 488186065 791331241 947835917 784168914 819479398 134559395 994832389 38502092 826425270 373251385 882640753 808580329 975682890 173354601 450358128 791499442 928920027 880784998 938571664 111738343 381722582 668085646 988479460 358628456 485074932 481032713 753372670 764251207 832277191 806171521 990255259 231731011 829899987 605692410 757545737 900843046 995396198 28660321 463761780 401567758 882376163 844106652 851443853 560202055 604897433 764482901 973132333 459276316 815794539 734871038 918239765 569338177 609011803 685563119 993215097 281859136 388581826 914704081 954489285 653155349 663856868 795674251 865980561 500814456 633622565 248930040 939912856 24925416 634593895 8390500 843189982 26310580 904656644 925431587 986054729 109784659 136324836 687400283 880296125 558402367 797994272 94450001 306127225 865052377 865590761 381221448 435124811 383131446 396907414 612777358 638652558 325447801 422080523 141532763 319943111 484716268 715065420 714670953 729042728 31398170 231763295 583151458 878551515 191548483 232578536 997632632 999569935 257635857 692818420 484620438 899201101 572543331 619802952 212302849 757455869 112209109 540776340 750728930 837408807 462424800 544799289 12519988 872457668 800119279 821091635 697309803 790010844 978709829 979019924 217858104 485097732 796623977 962451696 704131072 975187075 459129772 554468959 222218110 455813581 76491082 87636946 77549326 947253193 8573614 139164731 277770284 401774680 359463952 785027216 929007492 951322122 662884145 991258899 50408581 803136276 588629126 923338347 120565565 453684605 221852043 864636486 811146388 947273469 746955780 928036813 450248341 464225064 44879401 243573437 505269009 959117040 778942720 899081942 398059808 583971283 191554240 741721038 639759985 747065879 142574780 878570849 216758190 389539865 324779147 609530813 299378491 616238787 981504594 987453701 796811513 809086387 221938491 414721180 455801953 781334904 785220354 890436454 206217786 751016666 471301765 556004556 63228923 295489047 721198146 884934790 724042540 976277515 927777081 946896396 735964088 841590210 818783050 991884093 155628881 959609581 70124488 157321430 857963361 930005331 508446456 697149580 961853283 985973198 417556160 619756587 502343615 846090190 475189481 742973648 236394409 936937889 91160706 567461221 245727485 934024140 360994503 448454091 936915312 985930339 11846195 442355263 167644941 291497856 953914705 970849891 577260127 687616314 980685730 984527636 966078830 993993106 813126702 896315360 235880803 388375841 775308422 877461339 890822741 943252919 959171349 981748646 441889838 868787990 494445228 972707341 258352410 752350891 790813350 952822414 781498342 969421545 456156788 972531243 477427660 820276512 80629056 689952644 617111071 853438555 931406035 962043346 832818702 934379300 109321681 865384320 859617817 939107838 982781418 986982971 409493232 554306856 439644250 927728980 160822805 631853762 186106116 314292372 481328832 938467497 165702537 920468747 164356391 324807257 948142624 977683780 323259150 555060798 951728613 980323648 869360195 898929728 671293133 887372808 722723348 798468799 735426590 954271833 473181868 673110284 877972098 913168119 366236691 585297723 447699416 669946462 244729072 363156290 939819426 973937873 170696829 767039470 226391134 381999470 683572013 895167045 684446233 959757602 956800050 972524701 981652161 984209936 46240045 733108628 305220137 783550625 758339746 873352340 874517175 953433412 862782935 884517977 342541435 736104549 7215328 615980027 686809174 932635477 636264484 746147280 501649516 587928695 261576006 857813718 733410226 827552689 505849073 897868963 196699274 967074398 633143210 990989776 137301129 800938656 812316076 818896936 153506957 881274233 888525204 960363234 765316196 811165241 878222519 941484605 963415917 986220704 652733904 740880916 93145223 802794463 468758049 536127667 426430342 837359215 36746501 78760356 167221160 797272884 506464077 977686758 502552816 764428469 501002364 962026319 74001116 862467925 391742564 911867377 180757334 649185002 152129583 638991341 560027731 767249976 333120034 756988530 677438719 766728240 555210808 691778873 479494048 505651478 665086870 878041450 308160722 736344792 974236320 981183125 978946365 982012928 324272490 866368032 838076629 847445728 826983156 914769277 696379050 841859010 669207433 952013115 514793190 746171267 882235011 905524677 795540161 929596762 573531213 774798645 53125458 686187623 351810825 372960082 3236516 506810091 90411393 796133363 77741269 943040262 223356901 958938590 836990190 915383420 538489854 859858153 541576938 894681797 970232639 995751676 265555122 575919990 257305684 485783399 525322393 778375007 435696318 804122611 225935423 703992470 267699590 681085776 938132702 974974271 473169776 755779918 443949488 779878402 484292345 669755563 949184682 961229505 64825837 660574693 951321251 998973000 58555075 519060407 848773049 969604165 420751622 492756686 515751707 958045454 755209248 951485332 399837018 937784643 137171904 746192729 987220478 995650438 416322339 578217336 531971040 613197191 706422494 837645465 304671610 895735244 430168941 513839131 321365 112243939 183411183 622735979 40964808 688862125 697367454 872927850 521555572 999088351 558730592 785715169 432790387 577226608 754405376 856318862 414017315 758561010 491053585 538763476 665804713 907489863 886278245 907523045 334790968 443595859 625669987 717453286 290172860 465652007 458040881 585718821 451757541 459156684 692429258 790219377 622290200 906586525 487639663 501674239 833668020 914459749 459860022 476607747 227590829 531142980 378799595 775389502 17320602 918265623 862435474 922771006 674315330 810506413 668365272 938118377 57233216 220268967 618674461 982933011 463850512 946663218 916979402 918511617 17780760 832510377 885902861 977261118 184325237 479615014 944121929 950534066 717946693 746884665 203756341 728427553 615149935 842744617 435671193 778685711 584558263 796484199 177713881 336925775 75371748 827123260 708339699 852188744 428294920 941988493 410347579 937197213 195353945 402041584 201989915 992516337 565240516 910947100 12334242 530045816 752846829 801356345 443900657 975686486 646055088 999507728 858553232 971251541 904115639 941649959 17416914 386167525 720671292 859798393 824915471 884424988 114553697 854363487 451797615 589482690 322169568 354869471 93059322 801517616 448712192 982821083 991641673 992346633 634782335 773138224 188855145 753934373 150158660 566189507 942276770 950761737 807683298 930088309 424666496 896945466 339538049 504729653 674118256 911375071 697205979 912956061 685531501 804114630 125532982 439208423 814292079 969593870 848979845 849536672 525870457 574973702 908564592 945488414 164711238 235056455 223742331 955921215 928260915 935732744 457525023 515624066 495259630 767897937 629137420 647308891 795269689 803704335 864434885 919337183 295810333 342667976 359401033 755255846 521750171 558398117 770870751 952547287 673648642 723398496 980518538 992612615 835433307 928592940 457550854 754263504 96724150 430571476 148011328 165622311 63281047 789836014 687755191 854637251 43791972 931205635 198815708 430238082 610241979 837313157 975840859 976222986 532167150 951682688 429797753 454084017 132833460 861820569 203577019 557960562 421727363 832540752 410599793 563116502 348135028 708832052 932433404 984791543 836992493 895289994 189319269 496204828 271818006 608258187 76207995 592545353 490885965 942783901 36009425 115007400 254568139 755710422 17482523 321553796 800835729 969778937 380860452 625346891 429647882 814235052 442262866 624098751 606363948 922273880 367313319 829945734 399813191 969292759 115671649 887263278 908755044 992667654 783195363 837734364 419108079 608757749 339301674 751667612 80735782 603304760 213564835 461262850 474328300 783727848 587080817 600383566 885940261 964972876 79872390 580720785 885927206 971938790 964677534 996588333 819740506 859710066 252701570 299786002 316690635 445397589 902378576 994664313 311692419 364711903 190449820 771589807 858937637 955770513 712044724 732339751 622635891 956288009 599781443 699491797 50903584 249939318 991783960 995527077 360090870 681731573 721790059 868823668 269169106 930401180 73538437 156096988 216848924 938557093 589991242 776044764 420083040 707422508 605861348 910130421 629990037 688881712 8945125 331786353 671910809 769294000 538980414 992020992 329702473 432977774 369452029 473124679 961811050 994538470 750586679 769564268 696877 216918225 51738834 784882960 903722593 919830598 590766512 872144563 672352675 726739969 526734969 901727315 565415235 585223938 781894343 935565487 902306352 968513678 206655826 698646213 17219659 823874990 809213250 892161751 180828752 326079090 673556188 729029579 381670001 651357002 556370735 863374731 499436033 767731183 604551041 756318452 1163572 598183663 280573209 897641600 541509330 778367787 947698027 995982408 746555775 771394369 327224050 515059826 296954209 829139898 99743253 137201661 682537955 918478049 23440013 328844956 203547397 693784769 750130727 837846537 903481806 944447357 1902073 932977453 385016109 928616653 770453755 894608285 996457313 999383969 942586774 943870549 780188608 961569722 450760370 989473278 934599484 956703644 239759012 615065026 35472211 341582592 637579227 740183560 642001891 790990862 871446176 927753565 245233449 315092864 956426132 972648553 511357857 980344324 67582620 645629218 666275194 726954015 87416153 464261311 270367890 448166279 928485422 973631536 902841271 958692293 652522773 865674701 171768664 869741510 165935388 903290058 202865344 759097232 291035270 986070996 975662996 993023380 195572229 711367265 18492688 233132457 542050126 698027459 222887378 919211453 769655552 955379174 702301741 952328422 698844628 881345674 45579267 301000066 132157195 395818616 892793977 955664718 98486036 759964888 340100117 506947846 396312811 595382349 104026846 926232868 590211554 645085243 387683345 536711685 943433304 999653550 677647750 792559585 694344350 916667218 143858251 994436781 97107180 462725439 675194817 831687194 988813069 992001852 520236815 629386849 518769391 741037395 133590696 745932719 884908693 987939447 150888338 282817286 291151988 449359951 505963512 688239968 385508574 720665764 520781824 765018464 398472659 759922533 928182299 940831981 477513864 575901001 404417718 530691281 907878447 982608565 655574399 934804146 531457005 850534782 216456580 292651761 97646988 856560907 806054893 961607150 583984712 982003797 288126962 585371394 99521332 330850206 995517390 998067660 315441410 529596368 749186306 759012950 900698470 987063323 892310703 948722678 554711940 904734446 767497248 877916703 502562182 723462436 144368453 915670216 518223302 980527031 905882459 930290960 958996670 979584990 657486493 811539472 913235534 961521278 85350216 913339572 773756373 885021728 388139833 816141879 894595196 937113625 609346189 846494084 875363138 939617502 146544704 740134107 677225213 926223941 49047011 361328884 811410608 848077943 219854464 355056708 212774077 817228510 805928126 874498027 526680744 795406541 686000034 745062037 776956718 936905741 707458465 769159282 844133002 976938080 867894791 897859339 294480080 358754113 664989272 851833848 257003623 735497006 978298249 994473716 312508378 381716906 20497317 670730550 772792600 828614072 582383608 909886007 516664210 716318427 351628261 995264683 455231687 815547163 146045879 619257684 977881734 998376214 845285807 956664137 772945284 917561561 790846694 916811964 121403709 717936799 974068368 979501200 142904161 757332672 710445548 783172626 836760560 941371215 244013982 981731218 386447664 452816091 231328933 889142020 375929478 601506952 68125802 826438248 225398680 931200024 688283802 822730387 100500464 546124868 625606525 642593443 234933427 834319202 558939984 697026050 483951646 963882696 541584971 871581006 33138426 489518727 594359080 751412591 865863103 954507659 44707127 157658997 922921069 960780550 675621264 992384565 34171147 431226009 2738333 633615711 612067635 696178116 908123367 952974517 618870261 947880166 668115246 679101022 10937246 514662324 844225769 942467863 407418303 622776397 576477612 734275987 602618048 603798035 358081683 447047699 631690965 779796091 364549105 720847608 926848408 962998373 541725633 685348864 714778982 955100310 781013172 848573492 742874554 921702127 922843551 958268271 268253225 669679058 838250070 984332570 784020437 811456853 14057375 794841092 890420060 971446472 673127130 873199448 660927740 963399784 196986928 838458133 944062364 990739199 43274206 81051310 540788587 729568157 894866906 897294001 716355231 775952332 571280263 701606581 925396479 989439430 520715520 616965542 702293315 897544703 909021808 960211819 550083888 914944347 361957806 718842329 553801440 701318463 866590653 944460008 197466818 807039256 618882837 814243872 967939522 998386625 824454721 867727457 864307326 990628987 690623362 930630280 867120538 964934624 627229812 708837506 668713838 957094140 60895009 713554987 327357049 330933791 845712269 854763338 871943905 967206537 573105026 685178657 802129377 939408047 139570519 691065831 422258850 513367857 747886831 880571192 92815166 701000513 870709302 925019756 545167593 785159892 971542919 994656399 168561101 168853003 974287962 995641699 146425068 808123345 151900797 812993687 596238075 858993860 69200434 950458071 282759161 330654015 791343729 841660084 980006416 990102497 299693426 967424555 525993946 964084965 464737055 675073400 281809658 479613617 515650375 783839989 311070900 364621242 644921482 963169298 556136324 897666269 138048120 397914235 994392104 994474658 714847730 748804494 288697497 549284915 130980904 995055315 752072235 758407478 432135167 876695534 847605215 965474061 694683686 755940981 765836084 818504456 429304798 641397849 64737620 847171369 433366050 807197728 244423781 762151366 802210513 857092874 604888209 700234958 120392347 414254610 233232493 983114044 302408886 895375724 210910768 266087564 722248140 970581974 190711753 662156583 875727219 917719042 954751755 968269525 329266500 860183692 192343010 676224645 417788680 459544631 864059714 928475494 568498468 696994537 596536073 774134416 925921443 934481526 220885456 730888173 415744126 790000307 375088573 682539291 248270054 707746617 455102579 949592500 729102104 822290360 480216283 713959049 720776754 757386353 995118342 996079425 404816885 511711359 485659059 781364698 151005177 610227269 621079335 799178140 716547826 883935749 756279843 863078123 510008844 544560072 407297592 586725357 602372734 884476077 828503359 846880156 231831274 632056350 701782326 789591151 453914267 618294125 357784646 398127988 231835495 452978338 214303413 290003060 868771257 992379697 785205578 872849251 64891120 344240541 710071768 862699732 545144860 556934626 901882849 957134613 803850805 913475968 545069283 730897879 712225629 988254413 873363633 965474815 30040896 31338632 271786721 470599630 409393052 577987731 422023364 715903787 171497720 471695471 102755466 856804832 72849899 298222707 452378663 571966485 349238588 991030709 195482486 538329881 217624834 767850802 201714256 295270804 65621111 209235949 367273346 437946941 594056128 925904941 262069348 609369011 156781386 796060575 322634102 984166656 947745659 974977305 936720677 975742795 828360881 867352965 514379609 571681282 291753346 784327854 591328775 962011495 925421512 952283648 223135042 486725635 434460797 627691016 188117079 578213298 427463313 833390639 414471631 839113718 84745035 817006777 775516724 991193494 703313014 930989977 763262933 796682078 112593975 581517401 75186456 585659589 153297679 551181982 796247321 868728196 273255430 365488729 270587964 521464657 764394570 808247803 144000870 804696693 829996300 897084058 606438008 841814233 622956631 911826043 745622419 846307590 367317344 974471489 887081484 987101263 153848343 475075827 896889186 976635707 143033998 619994120 425911588 632646158 577170153 870902635 431380231 929715899 863543491 883683773 919859886 940207122 300413307 542704947 971727221 981849307 180116222 514279718 877420265 893893779 323253898 760475778 571697355 891710180 286901193 675891516 95889148 993639674 901081770 955195977 698931893 702006480 762886912 880186063 467844740 778204395 742826920 989951880 830197943 856355722 401398845 678175470 771492657 824406087 256719277 666030084 6772744 97951459 855794423 868067429 839094063 864056552 518637104 980711519 127778511 431214324 323526284 509778116 371864079 534640502 186275591 205760362 903729118 922050325 225651765 518420448 562782257 794182721 736979666 887532477 771177855 836294693 263517013 542841207 639888887 964649059 211220391 476860077 613026721 623906554 488695620 580113437 926671379 969194342 99208544 473736270 673480244 786636238 803937281 873616930 762671994 779994280 658771209 859754274 737359858 786205746 346290008 786397657 322269920 428476733 745875827 785837036 309892208 879812769 412932743 424267937 159249322 381970146 138554254 841233009 493719066 979346906 388225378 895193635 90996994 689385186 242130367 959255250 756633675 971303543 307364470 551072430 88631762 526016840 738419724 934165114 802140006 825020121 442413510 491095993 409240983 809870442 947722891 964846180 193017051 286535969 121715556 879251386 72145293 378334777 428239510 730349680 136712240 290923649 750175325 890526393 987480463 988184078 432372769 993212576 795640727 801317150 932072564 995853755 19887631 659676271 194040782 935596552 732672977 845562774 45198234 633821652 798031684 919651779 448778590 614930520 196898472 653688240 302225114 577506076 223911276 379234128 313577148 591247178 546985070 804208182 434209826 925102802 908618509 932600947 69819672 997072423 63157912 896406771 990368780 999056727 21808034 722657646 329016049 808445762 531499599 668247111 141902855 425592834 69620884 569077843 743088746 792230508 912931736 974938606 150198138 818742705 157357577 495738722 542624128 729881536 250320172 456394341 348310576 427948189 431542752 594620627 201030342 523858571 800241264 984098832 624310829 657823657 766302070 974736847 581632320 929569534 749139833 975516759 890019257 987198926 469404400 679053559 830378963 942114743 287242858 443525486 287728777 461470563 642172700 744952308 661840957 891938566 248529516 443405485 107817465 306024873 69987498 845092858 671954852 853371183 24253694 504870897 942085941 947501946 114314511 416576066 291110776 425138169 804288347 970508088 193798248 270424204 607183639 646724614 212744517 475376221 543053803 808144922 794451169 838707902 6653710 738180440 314353476 730236477 202774719 263846824 785522961 832464838 352038569 598914776 268857063 435925385 991037375 991633942 715360398 939210435 59867863 880632077 600253758 854546293 195275146 941513952 581947857 588671777 835163753 967312069 86716017 977743968 826774957 982034285 774034795 852544030 810310403 889491266 336702755 786602566 746175288 972762935 64057073 752706663 192180894 246560044 332773950 556572823 637496599 854581178 9846584 915295514 672667440 912521209 278683653 820477247 805535426 961074047 313542630 444047430 892501794 926800577 688935102 704088205 113204958 532511603 812970929 996022099 593859104 855661125 288076219 910822827 223825392 287948584 461832117 987435676 593632661 865610360 7946164 801847397 489302679 883573247 599398433 769694724 964518069 981007385 409104686 584719816 597718493 893865827 990883014 994872840 324531107 762096660 343309102 905673984 568839990 854938473 798797145 815401340 188849631 326278456 16826 1713311 685326991 748945548 187189947 670004123 661251353 998588546 858074141 942452693 452221377 621697866 276140988 412335129 310562128 801047318 929599647 962971651 437362386 642210279 844596204 972089588 989783709 990314644 895637563 955936235 328866886 756457235 676439281 690810511 94832315 544313157 587478877 762639110 278459479 629045896 259845811 534384064 940285536 947783583 797883564 892474774 555902914 970903259 273298917 615375780 979212927 985533324 607852171 875132447 650046844 843537560 244519255 494441756 683613892 837936229 278510724 347861365 836802478 927717686 342219199 362680638 228559231 977037287 45060868 591260398 403346549 764915504 263335902 412888803 285230124 776242856 402241412 913945261 769178485 836087954 811070021 877805262 447929348 756684903 732548491 985475340 23787350 653331283 228465696 501321023 78667534 969972597 239119622 255901575 984123943 991713637 911926154 933065142 541346031 913986615 453077395 742586895 472977787 876708914 58676621 166605328 991321032 992490001 513326602 725634536 737243459 768316690 379227394 933635915 677813327 960151711 200990073 257605670 401762793 879627855 332455006 681315979 411677492 490704116 179040018 895555262 320785300 917059641 803473549 998020090 875800325 877198213 453669018 596880522 240949383 367017556 716412695 897945387 589233945 907690181 736938548 983147704 639618069 866251883 289493933 665638468 817180180 845329214 861072221 936871617 778227105 847713179 491152588 824401417 390864888 554997721 133987184 846291495 205423977 386855017 974306198 984779413 165290540 790635336 824602721 889465814 186807289 783181617 443095003 444233715 82054733 524895131 386524915 499654923 554162698 763899191 309440906 556065861 531888325 687553892 305600094 983516511 524986585 776025061 694202933 702748415 64289811 942094472 450442762 997544082 600343660 907232461 57961358 863719165 127368405 712880517 457140483 868878027 513506420 940156793 417109408 512434811 133468655 341949873 739911513 900933954 760573512 849149731 618674745 765313061 119949489 307674282 993423504 996333601 857886406 929860045 909150548 960499613 136589702 356002391 133777467 726671406 164070935 662282314 18448757 811344884 938569670 966392272 770952249 863206409 852572598 873546751 1347226 432994251 75840314 182554549 96915330 182925191 814185601 820722632 893120386 893541718 907644248 990318584 168907156 228104441 605149548 806771733 776085281 989513104 705508459 859241890 223439693 305059049 5726656 999729101 670292791 758409598 101322653 553358985 957537971 986631666 544948596 615027131 765265238 865565002 767016092 937150802 81586074 198519713 252909861 862901292 247670240 858938463 124004112 304982843 702783516 784696437 359554315 465184150 974069895 994424575 207791371 569393466 512699979 901842252 380488393 440133966 197465113 584562619 628410544 931022982 692235266 959240230 47829657 625546411 739928150 807185775 524648285 804615079 500558889 645712907 763550839 792031365 741689667 808223332 883403734 948683119 688809214 711872629 28756725 967345209 326788166 785897777 108281444 346564120 288012766 447230661 388928022 634098109 717408426 964212765 102044919 568745617 803022680 960727413 131847151 606628021 779675485 992361102 706272261 910848807 764661923 934502444 681815424 885246903 856426807 989727379 849838527 951000387 484076544 715809322 731703393 913628533 141555077 851575442 589413520 698705564 162159811 544548457 984154615 996418182 590197104 895175818 854797453 955704620 244844029 788176989 953426602 985542950 755795111 760857070 274107504 692018516 173763488 942529583 804750897 941551363 924456180 960922444 43835099 626714916 120325292 974048440 489739678 998779826 359622525 389440851 422153459 705607515 351002937 929082351 669507637 996613828 848692116 868871622 991997292 995982056 656412039 681891363 533667946 726972254 387397718 819581367 485217556 792282359 83511244 647335375 765745296 867150376 307650069 942559087 829676149 983453941 642006550 927427991 740904306 957558599 75204542 172248423 289228155 972227976 213424200 775155398 585313323 832664146 474748325 751677867 207715192 839948553 121969698 365706245 393364449 993040725 513478416 919163617 366197244 988301656 794588131 845050503 146846519 174205172 835201863 957777172 829363277 831539915 424242241 627914370 168807815 677067090 300651211 471334894 609272602 886559790 658414144 946621299 285404521 787734502 560864654 978185836 317851777 484636777 321174601 905008701 892404142 970589242 656659787 795993614 244359558 474535436 862909311 872109721 908933997 984811941 59990764 780678267 614995383 707698293 234848740 623754190 503043146 648380418 99516604 320143758 164974181 646957410 188879418 712409284 741461742 799593122 412719104 468253504 629099370 961700016 376803987 921964167 951602919 977613645 947004416 997589668 709841169 786166260 101815566 168650289 838404359 936677798 517030162 828255611 514238493 614479231 344918970 511656838 451199254 553412004 172048853 541287663 743074719 942148787 478267292 827631484 347007801 442596367 957951833 986709899 153999090 390536398 847499826 859918634 533761336 973091764 84692318 280109108 977136150 992303975 762691191 889047936 783520380 851878156 364724703 574571374 630426275 648084529 608321375 691911089 599825379 604957017 37909990 492516258 138438044 278605157 672701947 692817508 158823355 698005796 824533208 911001666 293152687 388170142 188670700 708808942 804680221 878325601 605952117 838890784 62267139 734484111 555811396 834777676 712860247 905074128 245364598 943403445 15238618 298297637 118685804 322941486 308550526 777791490 142022521 450878746 265530122 570278934 705065438 963444812 271792140 365483130 345473430 887279750 934042960 955457154 756011546 909750566 710162521 749400933 445275851 506006193 943644096 988204478 178766750 752275876 380335000 737458391 214490664 905591300 450646213 768179711 486065939 510157387 59538515 780134683 479166292 897036864 663644911 677344787 24727627 154813569 694251128 960805049 191350924 366410138 214329197 981620286 227074174 327047736 687184325 779933370 229944765 721954806 42748712 838986293 315210857 991174348 737532994 938371135 506742648 538679958 914879130 956897090 429968889 475907240 443081697 615172610 568191035 668035713 835613703 849535041 713846314 899691570 638094290 975686652 658226521 775696965 42933289 624364494 573803674 815107013 327360216 369872672 946052944 996183482 10552981 704124478 966689933 970860236 11377524 896829976 723848375 849147451 829257925 960010452 988852751 998571919 653469524 922365316 253116160 449650951 627407728 784360946 339865696 614686652 14614312 576803304 409231806 673332492 56073954 204753204 524732060 920029637 130105818 548011950 515483105 874114653 886113474 947025660 785237266 844689032 446723991 667911073 583299681 778956518 112007669 709154134 700106546 787281440 704842331 861288167 421022116 752932701 97846800 595726965 585677848 996863814 230397936 567523941 660972239 761378332 883738022 950191965 779672897 841153048 11435930 677917195 806577297 845727914 866851583 976131582 742129189 922435539 815427823 852406878 760457176 775632798 702622303 983114552 33975463 528300027 427525026 622205044 169475469 228134827 491790057 951032205 89570707 210374630 806197183 984803833 30015838 273845031 966584810 976540860 325767356 672587503 2723151 824353478 885615930 934796313 687060210 766874186 873089331 882538053 662309656 893442042 756884750 818057021 288276742 578216567 343017221 924727781 702145095 968973468 780395181 798198712 741072497 748630451 604802321 990080072 19685075 864157612 623434152 710080378 362732480 646860853 490491285 834386660 214997494 851101164 394434481 807988316 312279916 380036074 147469686 451766303 865040058 896922975 518222122 858042589 192602781 338910933 43672712 138836502 403096557 837124495 921752288 951179273 408557781 880157538 912386416 986809087 311072424 541609652 478060266 720119230 956521689 995713429 76437178 851935804 286022932 742042684 601626549 887772098 188258077 672287553 662115934 753386584 494287416 759263088 764696189 875385072 315726703 745758791 57743202 77282436 769279026 872943981 551381419 694629536 715154240 791632084 388272046 638912156 317393320 530255405 82757664 463048665 459720693 896722695 502151569 651480694 659607734 801971710 717602369 904606574 59838773 488625669 539089537 860002363 540878203 927067775 324840167 755639775 484441836 845018514 335153216 814359857 460366566 987990102 524543432 720674831 709598273 805440139 587219245 627354853 87094214 597141177 245644885 461295190 739239415 855762249 945397549 982774476 988442564 990198301 684941199 767645284 417940224 894485797 894613534 908961453 18845160 438362591 543683062 750008829 965966161 975649515 856237952 874134735 403142392 613310752 292372797 648283789 560432336 604119509 476796969 745348317 722497572 736078923 419532803 875778925 399704034 978548719 371175557 643246681 580995155 685558399 28881937 471251206 878853382 954310491 586233055 933822335 290034889 507981773 349655789 367330623 359649884 977520743 310917321 777129326 72977240 365360680 168950471 982261545 716686536 851557588 960678816 992175631 301878351 440170459 718468531 982171247 328399119 631612795 524109339 853128376 478172126 496154106 13319045 225964553 517003060 817092571 47247061 257023460 735230573 852830742 531921063 788145127 354074529 768556920 174998135 701531873 513905257 551206529 76811089 756626935 750088651 939479999 687528449 881052616 637675566 689485774 501735941 565113035 707644373 998920274 658487957 708818635 398092887 750181939 407842751 739894076 4987075 715446180 481848851 942528627 322430980 480812343 616726538 775716740 571422091 708273439 354722013 798502540 847991243 937141700 764650292 816850679 441688248 853915914 643400436 801712934 391110996 637118705 712951085 901900702 286862523 469354767 574750240 968563667 839030320 916095114 515476259 813580437 335741634 459940053 490002293 704948903 705667649 794827194 720163929 935898805 812373483 945294773 438833961 623040277 114355923 809840766 15598186 727058067 737238799 786113901 25756860 172961293 218909171 224947994 683790072 938801597 791937247 954868676 352795900 606171929 653055989 668903463 129686822 458425767 801453334 945443160 685053474 755901761 731860807 733495136 784852808 959657187 785975759 975082001 411429696 844366674 491559822 532467700 138113797 599465058 851896241 942748481 521898341 662805715 410867316 838899722 602828204 687658489 362845689 927754409 189736854 718526063 956696792 973979802 821337611 912482597 193186101 273439828 315374568 668461970 8076423 607620602 51631941 214413125 881638609 935424307 375950780 457415971 73748836 379814179 570963834 870817572 565423136 796779304 516030971 570155884 753133798 812423334 914583060 925023273 728113033 755727619 838242880 974478566 644939014 994998422 679842137 783792424 162731973 951104131 109628064 830072355 884077538 899130073 593860279 868263521 868674420 926264473 632574524 853868111 5554326 379814956 966147607 990859244 254346944 695900952 98984410 664563620 102826436 184459486 762887214 837451073 897877818 996870390 925756222 940998532 580553947 738308092 497317117 863911736 219199243 230427923 12375430 860865112 642312783 833338260 669486098 913219779 502742904 559544242 612416692 991129676 115070279 769175248 49058704 487171706 710657605 908882027 892901848 894879240 144974309 185077610 640488556 656425730 122358247 646520751 469266312 941457257 803587909 916155559 7107556 635946478 842137903 859441343 466656913 695819233 985080232 995214525 741365113 769715233 378163172 416601098 326301042 711133007 717299175 718097363 172981000 540390263 169678464 537840750 732857055 954952094 108550318 770755829 811687031 873786133 138676375 239097380 819998183 863750950 799615724 836466930 860620734 866499394 473083500 874743036 897639311 914109978 621821492 876108285 980286018 995718423 1370200 406766681 18331585 189369337 267197065 899489177 25928881 770205635 698703929 770933836 853661402 954250879 378000368 950235730 673705483 674363750 747368449 862386854 688775044 982463996 771249153 830567539 883951207 996247707 715950699 865987652 537696939 809139563 779137319 891288100 768506776 850038789 718844101 900635951 89473388 798414119 668194368 884048330 195452302 751099559 249625507 709732760 140440160 881564907 366117919 679567345 546902871 823648632 49305887 430919671 645670872 682240071 284466557 932141931 674716696 853595586 630301042 777720764 717155943 911299690 394527745 589004357 5343160 566410273 104421037 486706624 893095839 971008772 781711153 942672996 6529399 598104938 16786632 228670010 176668176 952465536 521003690 553263163 881304854 941195763 801172093 874822924 320468729 646675282 971507229 975513490 881992184 920174266 935020922 995133105 891737622 996228118 468888692 565051469 939926382 943892835 415278960 892680170 268976642 769578825 696146673 701007511 849561082 989727522 538500996 798481066 483489286 627686712 250068202 300395360 297041048 666712742 34908032 745629973 802873280 898952754 120180357 140384089 407623574 899622090 501924185 725227072 400807317 846366028 68411060 773444130 442188938 929210009 280629623 423000928 215757763 722706559 738124518 982093215 506494605 655414276 840161249 882464825 644691641 814525846 93858956 914913157 89521378 862009522 708713923 858113734 18339680 687145276 275762470 348955900 596948870 612644383 835779151 960878887 817901363 950307221 217747796 759398723 368928928 668483210 954626227 989328512 784747756 943520024 776723622 921365052 403102451 476841054 723777853 851812409 506525358 652775580 359062116 929358005 743623190 893649229 146752160 943404322 520148044 609613344 960428999 987010115 476084395 918202105 410356501 770689698 851066791 985435349 931466143 935854701 483956050 849094092 528974113 879448827 341809813 691443352 652354485 792260300 99904495 223422857 78176316 366313961 52269251 322701846 932339601 995951816 293954927 372302153 628960136 979840436 51234609 89668665 644060148 767106688 55590149 264424130 378261877 950810400 711588087 867864188 930666340 960877325 863564007 972189627 499015699 938890575 365698818 961063249 340994196 998689795 115093788 159402145 165363866 455546796 454248270 534474378 570321262 979630040 323465341 522980103 593421070 861779070 25655310 591612585 947262485 996314395 602049809 897987875 185692874 579689162 115576995 566254153 292154901 394856291 63459551 869676156 491296240 668598479 937582091 972418471 528738185 900213748 55277311 814119330 665848513 980065302 63003682 402512783 157751995 181984896 918200972 918902551 470277234 721799623 197107996 933551559 428897955 440557211 586436597 670886992 741590845 932789751 74322244 314921141 9446725 228658835 592838308 818069469 553395293 647899662 363266514 962717158 931282896 974829395 62763497 221114482 714147067 989945246 889681369 987134932 293723137 926160809 609724684 731538198 776972035 900622053 277296635 290263971 442975345 573659292 291178961 333281220 189230783 316118705 138695132 334600151 463706882 668927945 802809506 920676545 121968913 599068164 198976773 475897920 109031007 719323952 947275368 982898454 983039411 988481331 388997561 592090804 398296519 479069988 67574019 695886886 19278909 804210670 574848406 676553790 601349844 759178693 33260576 990566398 933798856 991877584 781950250 959738267 511462949 651278068 980747565 990948817 800427635 954740537 11121936 282968772 515009401 780575045 109097602 942945472 780550652 791875606 125300003 342548519 996999560 999702260 765608635 782888795 275904038 653356614 304351388 837409423 844992444 869124799 82716962 512283130 821474417 975776972 900125382 952981634 147462028 274009656 970962360 987749004 750287926 904730827 953948483 960107697 216398450 976776521 681300786 877213416 171381391 960820258 879168527 936091191 853708655 992724966 526876571 925185773 365113893 488590450 134379754 479369803 858104371 989990848 233821092 405553227 722554574 776183226 931960644 951295742 161381469 576707068 752891311 952494128 740772799 785467079 842031256 848719772 600156524 826159765 97893184 889739798 835523256 870091346 3309530 777807775 637640428 878005526 133276089 521743991 309300198 995380935 333472953 820238302 366137775 705358760 576621056 974021815 690987815 745902372 325774991 694621295 388303580 389857854 66565000 195782484 913594123 972153923 868943932 890856946 104370871 301328827 309660800 338334066 469558690 855323765 181423704 428043603 151199535 780086444 295781381 653807002 110358035 163678393 838232372 859640726 805007610 814336540 321917304 698716214 478243093 828492789 123512258 766255970 126539365 711666346 116031257 302792654 143186966 923758515 960585536 992594645 663636914 809095074 906932372 975510782 671072166 932721133 728156950 887949422 412011305 485055560 372745961 830342025 359101040 462262185 14985328 294474883 592874416 659738332 681192807 791660670 252576947 360923139 933624647 997850770 928631355 976689235 790258446 878605956 600068424 941721643 923064129 979087097 142482882 239639645 953957468 993175966 625815611 813950151 233623748 600235081 208374581 583261421 595245179 669981652 814381943 906317270 824608834 973466348 596100164 736919122 548422056 732249450 562652432 769176561 796795707 979757758 837604475 949152616 550760008 849836792 4404304 393716462 739175543 763575445 147463106 983406541 152945710 261473716 465920325 874069412 191207665 568755534 5369187 124640219 136552261 521361497 166626219 589214861 660609592 938118771 56837352 176884440 582132325 733262650 641100905 751685513 464814578 513226180 13854230 943003857 334106849 946296719 105556053 851394072 345012389 856729963 995191763 997981406 733703568 887521739 778858435 870130228 72172447 939761823 899929924 927117746 762017843 914656718 674025416 883275275 731127540 989668034 673717780 763285303 83718525 668749743 987970345 992439372 784667130 971867263 176395680 726324358 157946822 773670494 500895 349221775 350789089 900605720 468209716 864811808 214564813 417424333 741003658 769260088 777208145 867395876 660360470 688357493 760858203 963448579 413028051 767577882 74338198 959187131 229226407 493876982 425131967 688855310 264063650 879494752 811772202 997567934 207218691 614506989 291821357 791987343 103250336 726721233 684387011 999216372 908105403 921930446 36773843 669344721 904439459 937515020 507735148 722796864 402619020 551104845 483441696 979985653 335132448 718938908 162893605 453452997 271511356 358158588 827727963 906437564 737260768 803398640 885537733 918611858 767622965 867426043 271192565 346020644 992262534 996208083 391832968 979457901 624811842 951868665 380874063 748659454 95402642 314973341 472194007 868237255 734445375 911431407 876655728 970585461 667287648 795316604 8889048 758833151 459951271 787840543 753086116 922478114 680979713 844912729 843856152 861183787 87236374 737946646 943804988 951817465 428889123 916975939 747535026 960315874 549465926 953253969 117006991 730006798 880435304 973216122 578445902 675840373 952877898 976364958 499939568 818411523 649018265 836419716 745946929 789957338 971776270 986891477 602923801 905491522 123740274 545992597 811333737 931747280 862730289 872444673 854252785 964288808 20886571 755189029 412642563 734494707 960319494 970338721 856477109 883827295 733814584 853359470 517105609 798905879 671686561 829120998 373295365 869966712 306403166 504811813 39421013 436199857 629128820 983549533 59073097 683086876 317100318 444078593 120058160 230059396 676934702 772157048 530937941 888419620 484316629 785333014 489594971 766584724 100458276 242374498 269835201 719416897 721394288 831184557 489399283 657149269 869890533 909578451 586984660 634940745 108041514 209657530 893443257 982201602 968227699 996869982 933220650 949276349 497555930 515166300 790128439 942399157 848208351 959117391 914768477 986395026 259097088 755064249 302904948 609695431 225464152 704976351 690466085 814179626 665737722 725051852 382747709 742867886 82322059 324662515 158417018 186533011 574308315 664663338 819594867 926156388 392176401 922461792 561011428 864090332 803632993 809008003 516196679 531448121 99005541 422488731 98713628 389695718 602916272 992313394 645293510 664284940 911806734 991521079 62736797 610602993 499390683 929181699 156629718 720973698 959098415 993775300 1365917 684054060 708262512 760655325 30665550 405021558 270664848 303101808 657264920 835056464 306673839 658168223 165401067 840601689 867485657 993101858 547811119 997277669 787025083 906150216 872542489 948523897 648707757 769651255 50196724 756589102 150754275 910758936 678457120 732993536 522775363 545965987 372622566 859705748 994195616 999713665 92457920 824188228 399914028 777934970 186213544 601579925 160756538 325743388 433460076 770745486 303771615 827257140 82335234 285775926 41420584 828899432 206408033 554271781 91528287 428442019 102432044 324517461 429506419 741907607 947757902 967934931 941055028 965808118 931843291 993317457 363478119 512279086 860134750 890208963 153226039 981385117 230295569 706030508 618022082 908953475 208516592 627007077 461662970 599694094 812314987 904213849 740549581 993776588 189775476 809793100 22701664 836092129 573249034 853458727 480175043 733584851 752653573 845535466 28468890 52477264 271000082 433588228 962212792 970207536 664482 105010278 548020870 643169976 86585854 109363694 569331699 637130039 458135913 762218836 961264662 993977426 581757491 853013684 573627552 961035850 190106465 755980831 956599685 979245949 956862861 965642460 255585596 420998203 56250488 251678393 128033272 391958826 463763838 910716496 523428685 835599466 777434540 939525118 244222779 499980641 435290358 681552113 386081553 913931788 441191149 924065559 336347756 396758341 955082086 971351037 864481178 900561273 906593339 921951013 840983951 986389938 123447957 193175971 972761565 999673749 261997368 601953631 221650509 683290558 22370978 623499717 967779087 985355368 837608436 961629316 587519076 670683709 236957126 469405821 546480514 824390501 902662808 977804632 974507436 975090450 940833851 952647585 226613882 331584779 251209475 393069600 293920406 943551071 174750645 761207899 566756148 589547517 306586013 465062050 498620677 608068725 810881995 953147938 382713866 579379299 474491057 979691652 515537155 646984689 399232257 560367993 442991533 905854969 250249595 521776568 947517400 996116259 959300906 999230540 508779586 725977915 591742021 961926175 628250774 883143749 697167161 699346773 2293758 513900276 549686180 998248044 818678857 996201838 119899967 833361923 514510844 957412821 333182810 471113249 533323056 648918827 115664593 175410891 215263297 880278796 664797927 692988010 736607006 820417289 884109171 986368052 538255081 715909948 877819680 997177622 719889657 810724071 755310425 907457595 735624316 882384703 536360753 836510581 718060195 856033249 996472271 999247147 261276075 376813754 842455921 992847249 451615577 931908258 397457791 848756763 419859891 957141395 586915933 815630736 824429567 929758199 104528013 382977875 833028140 935461677 562345563 618178521 148083055 826506091 365916198 815230946 93307527 227442377 28345005 390163800 845707803 916257371 763381810 994715125 948528418 988487295 681409935 837196396 741901551 858927763 745256620 769817802 134906452 438268945 307104433 656271664 682569246 946908280 416755914 587416100 839846034 951715159 256311230 961395567 215054860 989837423 524287311 724088054 350881031 838629324 895320439 909622630 815443578 819829941 834359932 837643949 223548387 746618441 379412605 966347458 605502661 884338990 798553462 875931830 99508165 417633854 40508732 217523878 911162202 980937459 114906844 435803438 600492130 895137433 314091246 916683627 82231970 929391522 633015911 959668819 742595925 782311431 548272105 855736783 919876829 944285682 960500713 996273623 209411584 457476874 625108054 687386736 772571770 803895190 115051177 537204363 156292318 491843151 801999189 963050959 557659619 600526424 96857099 190567734 286529158 978001907 94005969 287962615 680306607 959222090 482470872 809854739 148265746 476284951 672693397 688166682 480668659 534489269 549111449 594837663 711226146 834159168 338064836 979202579 766698511 766720846 766229613 792863537 271162320 314153471 619646111 856297096 148657706 895873945 752460942 815257020 864433287 896091580 217172294 253513621 560669725 585249816 673268162 753724857 655679874 708267040 975102880 980882665 770756801 778062307 664474217 828255876 965439605 977566587 99196425 518679078 634834975 999271254 141428944 231722179 955857400 985931468 467790453 749258524 390321815 639208886 981181083 985195278 512878441 852338037 661322763 686982458 601370075 659889204 816199355 977265975 126482112 514200276 377783405 672924180 808076070 880924134 469624231 549162112 783392187 926526842 817527754 829567221 782095295 899377709 986278234 994446601 741149189 764784731 192728885 747974139 573655632 793149726 877771021 970141112 803880773 918485675 48735549 991373854 138408969 234634523 103024311 774460356 954402258 978313991 370680984 427140974 406469707 422619587 327543911 782775455 316651036 877034155 151008666 633471517 284101884 944413812 607688032 881765740 779213352 890155778 181249314 387074670 985809604 993100278 846539068 995758312 267743630 654423491 860330936 911849184 411705433 483994104 554984339 863426704 561373042 737977258 90406727 205047533 130402995 571177634 145748733 263133531 649052414 992598925 464890366 509979509 101824790 431894935 337286371 418286317 863510567 873438323 779669706 974513669 207911669 588471143 255550873 735907331 262012214 803516979 698501570 904330380 6029374 435981581 241645547 461504290 718427943 939295407 363614294 489850244 857228193 903752913 5501791 744331717 897156756 999298556 227045758 320401463 74861632 422278875 316783965 793567964 349497395 481210002 488538883 563876057 680471104 857101278 582056848 992720387 345964399 646827907 540254911 630176460 112870005 807902254 129136960 131611477 394210537 966457065 347922841 442307935 205658151 440883203 580986779 950083705 644863194 940490872 958889789 983055049 217483982 549072603 62370421 243588529 320959313 550939024 98508167 876304179 271173259 440874991 926356086 932173582 386074994 946859146 507528308 727748986 528863416 546607606 29286389 399202632 432481262 811275871 741340926 771032312 134321498 216520534 464098784 509119584 902135612 977972780 329045486 929759385 860037027 931475298 928807255 964419494 208272086 853136964 492379586 547828895 275665692 811026543 57058345 524518115 456939849 837096649 570034925 720921535 477653750 611533163 687678758 965804132 881600012 966180758 29819117 276633789 781516580 794421827 465603475 981958121 659963030 882714242 104388104 749919026 462134804 760885912 532998625 580226048 540854598 872488347 17563671 877144906 223163258 483818080 508681837 845267767 556067597 778726590 424456491 445829751 100593967 305774928 987703200 997948643 368774450 728714135 770116279 945626210 974044967 995292387 877105450 958008967 672020376 844835966 37576472 727720327 290484259 845429478 17264889 510154762 892131418 991429839 708314079 965407903 792889585 915065307 278593976 837812071 216935354 852833127 627787124 782187826 291131116 849814766 527401539 849442797 830612299 997888501 281201989 717819937 209469123 723864994 680954596 849741416 724648721 961183611 120423708 864932351 918723025 948767577 146295853 938563452 397731205 841839454 318049839 472524605 773213945 795106112 885898679 899633616 100182734 652259803 442884419 961381328 479860587 866720886 590608061 917248893 580931493 975469965 973164498 980161113 869821650 908229638 89959972 302365216 42283904 111798759 91211389 752879433 878053647 967349615 98940639 900782203 387896314 521159878 799359954 844237622 466518981 588474990 923593973 933693459 886732093 998891373 55938731 875345260 464448991 813393506 473096728 937888504 349563466 569793150 623205603 994847517 569188790 839472986 736706824 917252956 668122150 919570143 908636494 972847180 139941142 277917364 640792870 863863943 211861929 928835560 213513218 538985914 833699115 865987841 723904821 937749361 996330427 998323326 977355891 996795596 94081428 772432912 502291714 912547319 408276083 819348789 911868104 939714347 612598661 787869221 586167450 808771650 609595823 957657332 712039123 744300993 876350890 895013079 287536704 330592921 909743064 949347510 127428771 731876602 664321912 705098378 648439617 739084639 216165951 606328464 209954699 257093208 126857859 919865332 686281894 861415622 105396144 760424050 790863826 906265629 259299018 819610816 771339642 947762138 554567335 990433604 913308925 998395604 696373401 895269039 126173698 193913670 266843717 669035837 642008449 781709195 653013862 680530533 22253240 728576732 295030362 874434252 953683030 996403161 223966517 456355742 545295847 901573966 306002329 592408467 546189875 912329408 561455043 713758623 782756435 967336611 440725393 914790965 397705809 708744893 435966579 610759260 187094043 849079759 626348768 834251678 997240019 997616990 973675053 997659908 988062537 988413585 103178904 463174407 583355969 929276260 429568188 862765147 788297159 886918250 761758444 975694520 718983305 774932483 17339311 786884492 663956532 997276768 537292561 773509157 255867067 760724255 709286718 875087077 185260082 229010241 325446349 562625891 355609588 796383718 659563618 909827548 915513888 964070934 632559576 782167429 985796750 987984253 256425042 368237332 969031157 980421699 828111945 890263242 42690424 611673726 668281506 727968632 151357030 225245084 302818449 633830331 623773221 756650309 652161714 964163379 133086202 170389130 481234770 741458496 451814648 751159075 483175542 530640019 686182099 922734879 458102432 716112633 933323278 975414073 937119497 966168772 354494830 386530098 953495919 998671491 554348161 895169127 501750058 574212690 835890280 890528156 816261010 958410276 214407603 714492939 732715579 975416128 295100978 961617132 702398725 901400448 615184323 783046854 987523626 991735902 946116481 986947918 511997622 582815953 828344674 971622187 900278202 974371877 464312779 930739961 313474308 551328990 740774645 839786969 268228365 869934013 858551182 982458288 510642439 745326999 833326562 952066023 588043315 902249224 372754881 622867489 782480792 956573105 399717324 444751913 880473264 931556068 710111708 930854808 453242702 453758848 312115209 982074806 638181072 790710928 641491526 696703644 522803125 821373235 108854062 591701372 242964025 431592452 676021820 731149701 499947667 800327747 294601314 669174864 409597785 828149526 725740650 983087832 663777980 682582689 702520404 892247386 386240713 508656115 240017070 835458840 713346291 752110055 6656481 753386025 418564603 920494452 457660684 758177179 921169824 967106101 764485787 813281119 520623692 621912535 477013813 633762184 973973386 988313401 506030215 775070056 759829453 761938751 830724521 953359930 33100089 373149423 162115694 972854817 106479938 487352901 954160116 979045728 774981809 854547924 942712376 977391329 456494303 657766788 85762113 550058164 542036304 828543175 197474402 281242075 468214514 530384758 869617773 901906212 554999866 894679645 67822024 114579685 333306355 809383681 981157536 982311255 899420421 946005997 612642074 808187495 874043211 935151646 866223406 953022241 747439792 913994736 764482561 791064494 667567627 857526951 661639187 768551298 268340543 717754296 494524966 700045625 897897656 969884372 435985499 906242142 169054348 209035287 251262542 463778508 710654532 946576134 498144080 959348557 717915635 988461708 995486285 996981447 627652093 792256589 530381191 788062905 869875664 924186951 764410519 784800997 888057956 927605514 225280864 515291709 955023919 964320393 784490293 931805432 103296458 778919873 231768312 658813209 728719621 926570698 874879546 900796550 548157127 846511319 566384960 699273771 548701482 620204137 659794633 827649011 384121503 817795152 624840598 658540107 150156530 580998150 952517612 956958105 975856389 980063834 308861102 844303258 388083474 615481053 954308126 960687346 124691057 625428581 621097968 711904225 663412628 912455793 643249697 807534190 901292401 971140952 598739823 893624939 485452214 971868974 37927136 236633749 535846761 937341628 344538723 884146280 338827985 525598029 701026305 791021771 300922976 613349838 614385323 953677626 28197951 994251284 690945120 731256026 90191326 231341738 179188866 613967276 167567715 515488834 987730508 992327655 208736016 872667363 227570998 824990384 839357519 964574298 575063137 644336415 916482414 949446263 955460092 971267760 701473819 967984150 526731040 942273782 594610417 663835094 413363337 553183203 299539137 986605980 814403408 987024847 751389269 999427031 908532430 954628163 323378586 974423102 75794174 560691760 358932575 733077418 278142525 503420308 78981679 806846052 982028178 989438457 516631427 591680644 906156892 989548124 266549931 316962705 880690161 901014607 921170543 940312680 514174469 960270157 606330470 917651641 456828400 693469857 357354409 902456070 899841068 948274428 932102858 955815479 361481798 397797109 293926699 622928007 503211470 854537542 392178634 698333896 302067470 968631878 112682907 919372011 91841139 701140956 421731338 615688855 460983205 932933020 665666455 995252924 862605551 989376531 741870879 971590745 26710014 180190850 982575368 985597893 470590254 901529048 905795605 966438217 382744268 609923871 704220683 704451081 485475360 595633731 382866535 650786212 958749060 987278019 979101283 995186745 53103771 897730449 161428275 649092182 824634154 830046257 774042004 810455160 130997912 938109921 591158788 933666172 892114599 923033527 758275442 771874662 121644363 880973396 214681149 818578676 823007484 917296871 287382782 352065538 857138507 907263828 551951588 644677856 367580076 875496563 160162873 404730781 524686146 918143380 706198023 825089760 905228654 938400966 128377980 803167949 6394924 416537447 652091776 935077123 728200003 790216916 577585305 922568280 11703618 955383406 823720720 926841076 649746559 759173624 590444683 893841636 662093898 925527021 505556406 699327136 97847389 665326556 380507606 990931227 427567360 793022817 26833561 230841870 470993978 919678857 267064923 584604179 92681872 710516273 867688727 875373238 470468840 486264962 444327745 785836554 120997420 537543504 545528263 919242653 531357195 864078885 525488465 901362255 727687456 988968624 1412474 514806226 74190668 619134457 595598495 598120504 653487371 762668449 74395655 523030712 210260754 838046847 892625602 976866318 135564489 925152453 609794466 771935810 174711953 948111830 884608647 895247889 819554206 840786996 227837736 695097305 801584749 899760623 217829296 727849690 720680318 728534303 485519880 946358239 15533454 972338839 59829397 619208891 211956098 555874237 309737396 344667965 530128210 679718460 348655282 923648528 181464775 742777848 215698833 539417831 493202625 540486386 848649957 987940181 964321372 970686704 275429249 277782097 364177679 501774074 212743747 636814983 457894582 930403780 623983 712500600 402713613 882899219 692989271 976443512 433257614 766064919 794766042 932401211 353634777 883665691 660571670 995485250 226952315 501505775 769312560 813183303 50677673 603095076 881694854 888390106 728315264 884984562 107043693 229530809 144407620 945239371 151721520 905507807 589713617 857771506 447492291 511728001 690097651 896264810 324450537 709229108 853336548 957094042 321095033 851172865 446924824 950008839 605753284 951601177 443902457 692218198 57159970 118443816 939830430 969496898 93666169 506965957 174231521 782106319 373684252 421885433 226825026 498587287 914131445 985940451 438949786 961832301 873164074 935257858 376678070 442368146 213015062 592091810 445317109 732143369 287881706 898318617 324239232 492952440 835300049 999079991 76297764 450298849 869527109 870063671 299020888 389130598 935085374 964122721 176639315 492477527 304869387 533234700 493667605 937257063 578810234 991959885 762024710 789631502 286694385 361812151 22291437 749912084 983454720 988000526 499368119 651661869 880599035 930101303 824730314 974253655 287264330 579990670 60144472 199536969 451075522 657710179 598041460 927855642 560042621 941851575 752497459 807712864 960758302 971231096 97468392 244385869 483822150 731321956 461603882 603792207 657697659 885630764 623530604 740867978 86716870 818736615 922284353 984508692 309102047 862621726 360773586 400620321 495817826 608801836 745497886 874343992 309076425 696521210 961740522 989477047 735153155 799735851 793429936 931695042 200335362 625877839 789279273 849809024 637998486 752040131 842820892 954866622 996551968 998260373 95038713 708896494 192148688 709561883 77082456 114523794 585357662 918446960 821614910 971530354 699529033 851206251 514860780 680100616 175560305 345902494 719352230 873068314 87003516 998093071 292354215 749213640 959631727 992399830 940608838 993024327 815358357 963401292 590538388 895664548 805876644 828264538 940750373 958643372 171331940 482199363 341484913 824512092 852436981 966884112 169397394 979752379 868874794 956999329 911056659 918244677 779042555 833865027 42409826 722241112 482607461 521623106 22793847 415477597 808313632 812940938 139040902 532000251 915282403 952045469 239971665 873428317 802878690 969567222 380710745 808093416 711148633 838212527 474318760 493118172 527764238 672460998 516548354 809561374 296125847 654367762 495470634 654835072 278175223 393991831 320600874 648183198 432864678 893869956 90848127 170769853 259926642 607736083 412947626 611027960 152599337 208142235 102036201 822457938 747340939 791793533 235005640 952233605 563951109 888082155 112108560 755142008 216013088 814171171 700566873 862705730 454752271 829882766 78266386 316837317 989529323 995802872 93438303 883433161 431826557 535985417 401407215 766415718 127192726 842833787 495203202 847077792 976351791 999347819 414044457 867083421 754747595 964684577 776816695 992926826 977616883 989384229 167728464 377840032 920857926 965525913 209351541 329788119 907231190 921660216 50983232 253338915 936691093 936961484 692996078 815166431 703351247 747593706 941031182 953309305 155162126 833248287 814389536 855223045 134168797 964601954 843636168 891197499 317568397 716848593 953102388 991960140 398811053 976122762 382164065 420857424 534008802 867081209 68305313 729745831 641236517 809725901 525741700 607225012 968143900 969073706 336585012 842860165 229433303 830696025 563447041 665806023 394748999 967484998 626031939 732405141 33416238 525803817 776254378 891847743 25147072 119225433 230784261 812665973 434325220 989244183 671056583 825981971 22339366 955872526 984664424 986142388 749461280 917915204 221505179 404750423 428316647 781244264 657026122 839029560 731750102 760024640 274657448 963198892 893558713 971595702 286658541 742756435 834348041 937453832 710006319 884294521 174691525 732758517 641149652 683827259 913774519 943320148 838385879 969537989 441329930 764870909 176803245 850376526 595311041 766729264 484881586 767645603 255286047 551891808 407647059 946143324 922771636 991586305 356582852 969320624 335039203 423770250 994544518 998922271 9321018 259006901 785975147 976084797 434461245 860509467 406778862 482194573 788019067 862701907 410748886 486725572 391167894 958488909 919387112 933258611 126847612 912333130 589115655 617414959 860529035 870900969 372900011 738161944 651693702 651909566 148067214 648909079 961285638 974940483 532874618 911659351 237859964 535117362 504868197 610366034 357472604 509327787 305679704 318458156 490890036 599747012 20944745 197892373 765677115 874410645 399651341 781909290 891978299 954502367 708725369 805210150 124240799 297473650 182772526 421187275 406860645 863216362 633537224 993346919 611630613 787791111 557988682 903635199 119635433 400010781 602789847 753337175 799990912 944437902 847299354 933990205 837069566 883425998 947838419 978939150 626710967 658079319 90594033 297985670 313112677 906177552 180716225 643139778 898426327 997418579 872814618 965793819 726513621 941430165 121174892 657048291 933689541 991368588 276078248 484843298 282518453 947455408 2464953 263285567 516267861 831590563 293274661 612562889 938985305 969997887 192420045 408353164 938611595 976432061 360968647 987677572 987438950 997555033 558017808 704189884 447266395 627398792 730521527 756734854 192149635 841225545 975728041 999818685 355371808 518607675 872323091 900949433 653703257 868117013 423310686 538620051 459125309 824938950 33666101 813212886 552061918 824328198 967961374 976999930 527439372 876639133 359934073 740576432 768583672 939936518 763573464 905056144 380194774 452303446 628887684 738105585 336290510 378623627 457014391 538962627 72165520 865309678 84770026 346903683 909433234 923461304 964006864 998686414 59599298 575600399 577452430 802282850 388048701 663545989 880184911 886586390 628762850 697701059 751999807 994692822 197043324 419854493 356502615 543261891 91357998 827777489 388041813 679565337 947003887 971858013 149003998 872706933 172126023 704354333 987864946 993728702 8628142 435474033 172779903 662395437 503141226 781837128 197936342 199126479 214976340 744635130 140806429 665142329 847819073 984407049 345669004 525540740 125425219 763873409 55393168 850318433 131694457 696860475 720828741 912890499 619942030 780523106 722681931 735643614 947768459 985633921 110007678 722956718 510227332 716360585 984389455 985499763 83754245 318513764 701322918 854474707 535879253 675085548 157866124 619624499 437954633 500898259 515118791 652429658 394107402 867670310 483166820 504384297 580891274 618996139 584813126 936570198 580869002 663226018 892190412 952328592 743508135 893590368 706137014 889840248 62257718 895903577 191678688 909300529 221808946 798540312 902361585 948996286 986696252 993979851 547174505 712628769 451248661 537353219 361719995 609266226 573913931 964906863 993744108 998410700 169557391 867224946 155934808 728131953 654602313 811064854 491792044 700000126 352615586 425755790 177253652 465228848 855709987 966984181 290098089 532688243 184709647 623366781 649577815 855280607 930686955 950141059 934679009 951238063 484203332 913102966 410898297 534936640 491595984 812474963 334871410 765642890 262032424 509721381 501013370 545582700 295207722 694825401 679658545 824606756 986491749 991327225 5580808 164778637 726320519 996279698 652265181 970638658 232152062 596491328 122254743 148986459 582898697 990557479 100689383 127919023 936063885 980439972 807100171 898725694 964198057 994872509 366043335 763046869 180141774 772140075 788276230 832106832 950440100 970455710 511501408 564640291 101503577 176684033 11398130 703158947 419215799 727898993 580435734 753912533 269078008 541988743 622470038 803194284 610326726 663283762 950561139 969346180 906782046 979518709 238087971 943070889 960038036 979735493 287973413 644780017 844260170 855705007 592253803 635331615 126038874 425560224 991502773 997315867 745906427 802659049 993313656 998250356 12267105 899265770 525350563 553949302 59166019 919814567 21497401 841333418 948270721 953289224 157180623 195538102 402846941 561499446 149103635 706475948 604943927 986591106 80103573 598324999 673234811 682245135 537414526 832864136 272754033 861159361 479316243 989072067 508916600 933890165 570045046 616828937 306441165 515183756 14213441 147822732 394724881 922587650 524864506 818660200 397280247 522477912 586157977 589835473 62823627 202983833 619534037 817921547 455595516 602649694 338636386 474439815 611129467 917043434 79137375 803613384 162254267 394718013 683327992 762644631 741950885 805690707 461490754 761489833 810969398 869537171 527786889 576720482 873937628 961031960 229390727 454533930 65139171 163322755 39201725 555078195 865471493 990197672 829903685 891672672 585634916 749134422 361216351 852449164 103715460 111164131 153895419 794908310 604949578 783264094 956297740 980261028 486737623 920659664 327385073 752700958 995701800 999955398 104948628 153762062 813544366 917049564 352345366 634386458 116915069 251901609 836397505 848974309 834902346 839864243 566481659 578117464 695839629 931636669 845713784 876447227 817984328 958476045 374178189 569032165 372610944 662858390 363117075 563622308 327062718 941703484 773783596 996191225 989196241 999295912 379025806 391772234 641598659 643493055 761744822 788520860 191934763 782108261 782635043 875844229 363635166 985145231 588155381 936546161 12284552 168137640 762334774 903553915 783996122 969701862 947916960 973301993 233924365 827608915 325365023 697274587 682736983 982391127 114444286 352276626 425884484 568356671 432865480 529683659 520248906 529102117 649640436 863999669 150100564 781673384 844573633 849043399 605131225 933141000 108759776 528235375 717938097 963192688 693454485 979524733 27466921 417582361 835886176 870451271 381818873 514377455 612953118 735200223 99413517 979397028 289360336 291353385 981228553 981668837 86504567 922149617 224928512 751951044 598932710 681974568 50811870 327758200 381226814 458578048 374969253 845919991 84077698 187507975 309661230 625775089 114170073 569765427 529223641 991313338 181606541 419362060 604857054 634078794 662641477 703746910 486479405 700056106 650338401 749382168 371626238 662539523 667218556 706044974 224485345 873398046 944924295 962776175 407957184 419480362 813841361 883451247 345202050 545385069 211956246 656400531 711305459 990569422 705513789 783679247 312771457 739502317 203437925 515136330 453834049 965851412 829857034 860473310 38725751 840934330 320827633 355927219 768582577 833103134 198716091 429632205 192284005 855093710 94758458 716680003 136905278 902625161 322200974 728811539 979122166 999432314 808282417 858176741 890193379 975008517 409638589 631264947 487549084 949528834 585990381 758806633 693542233 787190059 24092084 671220457 986107107 988825819 810107305 906703654 449943513 743237034 588799524 899751746 821448483 931745094 776509498 940298694 255624036 890071718 51038805 250673328 231336331 935435405 274195056 805417921 155454658 548318377 297902058 877505298 623953632 958143331 399154186 811278935 378953073 818839105 656991417 945113708 428430243 462314605 754263172 860194442 652355110 733669493 623999377 741679043 543702445 594249242 152164661 655543789 109031117 347950129 506436970 787835374 929811945 977086808 408791390 797389937 37431640 466771543 40662285 780724648 820157661 857377170 464420538 599828926 325080547 723698183 460724306 885014861 746704975 856789156 248575778 962284212 107909563 632737348 655051597 732852382 805408099 807467514 888812722 992891973 423744433 561244387 332912505 354240100 538093165 865387972 217753558 625774877 121777538 877132445 428077461 951251730 885560857 926723730 658761717 790361692 767901002 972233300 943351850 981657538 689959882 862818603 501686515 619140129 72178614 983030756 35834505 480117803 475061693 917288227 98416773 938940680 481317174 574358417 738349847 755335982 119490626 528369854 826847055 972215163 3511186 599203062 277225432 575898514 731561340 820159106 129988001 338459253 120092033 688345663 666240559 739360030 105104711 944642894 937387383 967572821 451344298 789637209 616219446 634100874 65031070 748629026 741592222 918886439 846951042 975246781 949798433 994950543 659591022 664678723 30949020 339858841 55650662 971509817 964522880 987349780 335767991 338475688 490026541 625305282 106659906 282404280 104617233 436463183 711365100 816013809 337666442 631157660 364951615 979812081 616204818 976009061 933586500 983079045 485978801 902643406 322467424 551316894 343761143 611168976 378061514 541009616 644870401 974242677 679796640 937377407 413423250 525397618 828725026 870972046 522245743 784124654 359932501 663404691 577769630 695814109 898261290 907334078 608178417 739252886 928181464 936211732 373715838 458654729 75635285 88674637 428605947 649168270 124811391 515863969 762280530 914171951 706774757 800033720 111008964 562383857 21839044 47599075 168658734 701237624 635549877 990568079 624800126 670237657 923196577 967865293 517330153 969652882 732504340 941468036 795275181 847788010 409154806 871264102 953239177 994113922 16078209 78558056 110375980 170562460 386377426 586472841 529900381 552706709 539411757 740940243 137321055 794532198 949023072 992191974 388606318 468676309 739855560 941910448 986859871 996198445 406810017 444277407 661140890 661150511 430838592 567775508 217895307 905136638 314560175 585692028 606869902 934650527 522556991 544498270 243039250 915110611 252426687 715987640 36845327 381154457 921784105 968969439 326120306 963686992 858605106 921898826 812576699 823996527 642717499 649833978 782114504 970325787 343943113 974428452 339150353 503825727 870214863 971150135 916353929 937073535 195073117 567946954 25970838 342209495 625924624 726605568 514762454 695436434 342760917 364759941 6194858 702935481 348574033 880387669 202114310 574785260 910743022 981355736 921336737 978543715 622546393 680267440 145970897 941085290 679636701 956268329 751825635 788182970 180622578 609032867 218353520 468791421 963966349 974503036 447906169 595811719 131179062 690988437 979268054 989337183 309352028 552443199 814144107 907488981 562611904 985587985 772937598 801917620 664533373 881208614 337061434 723407730 594350216 663193986 778818273 921348250 211589410 676735660 950071539 950776831 308459218 626124634 654736600 895521837 186234651 512982868 198334660 479847090 686041131 738048062 605110845 789196587 661463953 766904975 841964829 955513016 418005536 953443746 725728026 751001609 871093167 998145013 602894610 846105112 839576006 966235964 934036426 949476767 179518610 367979036 152323473 248118602 6284537 111579965 932682376 963765427 873917369 909731745 306334819 569528269 929066516 933579512 210690396 486005311 92878045 304450252 482902840 946642798 638224215 646450882 753385577 936580057 585673131 793689122 247877635 867826187 576671907 743033692 413361622 721121505 621291798 682928041 213172392 920823251 757851538 834970186 879310155 948455103 391577366 967742422 78854834 464460643 96246523 563446982 88397266 742372596 584795059 647454558 964493118 988003146 52570365 492480885 992875847 999676961 403774182 875096285 478374677 480633242 466294205 976511762 246788446 524767320 694642156 883583199 790672604 816114078 592679537 807639480 388444688 814414478 869708504 922619949 666348719 772848605 438397376 846373862 594957787 758282831 772607359 787443790 931724058 995404281 756805834 843057204 25944067 833049608 77723713 427220926 477696744 552028534 270151930 769512567 650375181 672446410 650038236 705677774 258245608 826672708 179539322 218530449 190287304 674490943 951892169 959200682 224193988 393894892 373332197 911472860 842136893 940633302 245222958 995585557 519540788 524463499 383708992 892684459 616589352 833727779 679944760 683580462 642776317 924710940 839747666 966306583 959261890 961003703 772899249 779459354 179964031 431656424 252249142 594971878 200158256 292742624 644508448 985918802 165529426 905454702 189556985 849241821 304898439 573851779 516356300 566060800 88823284 564175541 973821323 979355014 985433203 989455705 965938383 990429837 608702608 998612537 548217148 653145471 762344891 867221674 403370776 480968109 773535822 779038508 719448843 828144164 544164274 696330675 625026355 987026912 327914359 368052582 805680940 939602806 955217770 956313999 308309817 345908518 585400877 778733934 836685086 860994364 920214022 941575077 137744346 572873026 877521866 931737703 448140274 909453857 193689824 569780181 101223542 298583013 510036716 796990028 690403314 908268469 362708094 907993390 299805239 527776284 35531851 896978806 391104987 790886785 536071755 832381360 215004516 967904069 294002468 540454452 303884929 668041560 749554920 754114002 595075050 866641384 981743028 996850671 603025629 869592399 172593866 930171985 989360976 999835847 44903950 903075451 505058618 538691441 831712606 955100879 954891212 972296025 149401674 650645534 910384671 924539605 656550257 918546603 630454093 759154028 130601992 283321220 756448074 874966235 104587782 718188778 349089359 896519069 302657301 714789025 274064354 958450344 774415834 826421629 71731436 258167802 62641147 418474565 656844138 982467927 185246668 814957408 959073857 965900418 582979347 923069946 470140316 878493168 449244917 996694091 424246631 506523029 34435934 995348580 339376703 780640985 562740576 716451812 622765737 724725675 845359266 901484392 17855560 123615825 321956851 699464999 450621290 646065178 286560865 720496700 663035465 959629745 556402021 879587002 187683914 349889222 891524201 987134609 865480489 909081404 418609042 504630579 104516436 542244505 192981949 907167391 37274030 562258316 22805734 970104493 448244666 948546441 264141529 909887545 255804739 452104779 130507092 730231605 848519707 889405205 231147206 239636887 783891626 999642960 862674687 948019575 34921849 997382819 409640586 880125105 622891927 677554749 11847518 879000853 313734462 598027489 758987740 949575651 637860425 727661454 279253978 433990854 200623208 307810293 37146379 54146004 971559812 980034779 325961476 355352195 499097580 642946639 318432386 865887629 392682016 775478692 382920484 804846242 397000571 925047092 333963822 956541482 798630384 812387033 190491345 326369579 654603587 860766483 40483264 390052302 114635472 541767325 179518192 266264179 566736146 742016179 349463617 709184539 566910081 754671857 515629544 919411518 781840263 844090737 275182428 832789744 47689842 587938413 862613024 949422041 384388332 882049104 68374038 71370723 432292358 673085386 612466759 956015718 251365902 816724561 840643277 921024226 380055728 816624549 555906198 922738334 126562492 958561227 37308909 783407681 355459241 876098793 455159004 666748859 560751729 831735538 69927841 699886960 642717243 886531337 591499536 954483666 825692149 940625132 688040997 802945334 439475936 847507252 214272580 988819147 782765665 795306884 191443268 838556376 159275291 955913981 290162156 380725510 253353350 344081064 126936074 961017122 641927412 759937275 280906084 604501325 888032707 978951713 634536613 943039590 88198371 589445584 654880619 804981721 129146694 539744292 151871823 662287339 887917309 919692986 974652005 990292284 272766110 783097316 908768398 910940109 576336203 700783069 634817449 754583570 628759663 710087309 938892038 969761103 119419958 379868705 245168092 731188707 735871297 782828306 44798959 161869063 152229627 318671634 778118398 880688655 104588788 845022763 738805400 739206016 42300233 88559428 489625253 541435274 830351905 864029300 347024956 419528497 685561399 753720610 596125551 637832596 308975123 441952899 358389478 643435518 263496704 622721261 676498982 968445910 297471160 669066355 715996541 881550897 113368678 688122663 789955318 880191952 809974041 892955005 492106704 669608394 388478606 477141731 983098301 985355112 774107825 804639248 187407536 609833147 665557165 834466479 485008273 509667040 847243940 965948204 357785292 700716200 930070757 965763312 601796163 876052658 894291196 896891001 868546186 890700655 414160780 460960572 72738091 398180983 100131511 527734119 151421669 462271277 156893867 631552045 122830479 573194283 780293390 845794856 948698206 977277264 412958302 459619397 375082194 460913914 857693246 929400459 976275161 989487479 775919539 818256951 659295204 979616155 935218521 959962146 681057743 719009038 962986729 969552168 20019017 585604222 108782795 898253640 17555269 244822032 431197226 688647411 360684519 462783842 558020842 724771447 990861433 999370054 709584016 928217633 207198013 998048571 551357606 903085841 212093016 256097672 811539396 874595987 573377275 845264218 621645406 991743099 308380773 566939760 181957058 641765979 498393096 796607278 129430525 683921543 107888682 485918021 969790591 985292172 747690882 939595028 250754773 761202391 931348077 949504998 125034244 178660432 14820755 738359132 444631341 450312196 289219543 379760809 722957316 821250709 856010250 997338713 636981260 713294484 913979509 964267969 820942333 910835566 300806413 341689906 579460658 701022344 942749596 973253945 251314303 993232361 36718628 335894718 251081396 819167908 851683737 894998768 380050898 764471439 987628134 992986849 282323954 877365894 12174951 176131509 11941222 407577837 742045995 913889811 709852564 797615925 673360092 869240909 715714340 890976758 648636410 680791325 793904679 911888623 814008054 819666911 919844325 941839617 347407191 790712945 496318031 539481338 756617912 891311849 340007079 393524570 315332584 954625914 927980455 934767940 567502128 818830547 585417825 747953146 366987475 851514416 727814404 795287904 969679048 996216371 503647369 617247491 597045444 835088955 451480527 463637654 397551118 743895639 736871387 988517249 806199081 829051592 886051523 970696024 949811771 986383503 25881734 459693701 676032965 914186091 685470049 985849172 71824891 394820888 705427763 725553845 947284788 950987936 628813628 714432849 967013567 984215137 18169657 537356268 690645661 853716757 122261180 223043169 524558796 802596290 758554920 848866608 987876816 996061040 866898217 955192077 27438781 821415082 861537705 993354135 840543338 882943929 410283351 450189247 634035511 711386838 81450214 218800590 239437361 635850088 952058299 982118360 715172512 737839380 200212369 412220244 71254739 500635452 850739003 896846666 39389083 70551171 971640474 983717256 26553821 895326216 136169329 960884807 651030281 707786700 900536265 908952976 832919683 862275153 962925568 977736421 979957972 983017560 384911566 712371751 708828534 872731734 379002570 742368058 42643246 100488691 238761852 914416863 311052447 318596891 857071922 894515918 671604867 870130852 257121548 825847116 926948632 972693119 81531580 248527838 774594384 874855134 832364470 969253877 182929110 850189893 910382365 949966355 778438501 792208865 456818476 868321990 521032637 913993249 516799613 553479169 753111122 918598118 432076680 805804595 177279157 619597250 395150026 743908618 405532992 876100208 847635627 997504708 880149419 935014764 870535378 898145481 745600160 963009857 25854939 621458664 884965288 977491578 891279603 944064757 932733698 973205335 305780185 894171005 851602433 929491762 621732203 747457070 907439268 971456241 462113147 627496762 733646482 767576736 372844068 508984636 87604981 97528157 914508754 985613276 916799973 953166402 380603451 915911191 427423869 612771783 246134334 479650778 384293107 402733436 751099722 888825216 914732334 939372930 515304563 734378657 966550926 993902102 718009548 962429627 454132396 813020383 751491375 947645727 282503402 405120643 530171946 648399696 695157404 754171624 335902190 530997787 511347891 902883918 653394038 806931220 669991311 951737934 962405188 968020222 263474107 630324860 868662897 883486814 362683534 935470923 734979464 773520099 904574070 906501257 32098008 423368402 296578845 615589049 322432569 899722374 456352453 812005925 894876104 957492748 601663847 843525893 937298367 972229621 298319773 756406365 430694745 626823846 354906376 662344401 643985765 671301763 162653606 511974149 988323586 996783436 638316873 977685103 201163574 477594818 981914438 984829200 299070010 753602588 198326395 351511303 24704182 123946480 167703155 281858146 17280448 17863403 426071633 971386950 741179827 868092942 419973810 999397278 459324748 978435507 288313793 974762265 502873641 866927042 26916906 90967683 890167107 942494286 381930450 522236818 777492446 935374748 958388595 979671917 221327966 744906674 955588101 978544157 592482335 697189134 211501814 458006575 189946810 391377247 862951689 904610492 894587528 924171627 612543227 650416472 599302419 931566533 332540012 504579128 906725750 933339713 831611881 841248874 146678330 354247174 70515112 995218161 453445114 978982719 665807239 684199780 917670760 925234525 614794276 987316711 583790116 865310992 470349759 611266653 634019807 807091500 480606379 567976025 695920428 982891172 995854674 998064032 219450977 654496058 815559127 959941662 296620433 869582674 502791672 704482892 667401996 913670345 557446191 943742978 618937120 915381905 840148026 949526537 591513939 679868238 963432530 972155879 539866724 740500848 544714657 922556234 425551173 847161221 354408283 394185614 861539232 919714490 569520500 841852265 656610072 841090219 20245969 725066627 611467402 626162820 634231569 780438048 254465642 285772180 173513408 228335173 888841084 906098878 344146619 651434236 506600525 780896266 41692472 318575052 2924361 985604749 188678895 984645375 542191330 698094872 679133757 816936985 404240588 466373849 401520933 785587929 235867293 606450681 981577813 989292630 669895321 828344983 846431022 850484650 407095475 941653300 735511571 862416068 238349028 435158376 787557776 960127119 294357930 808412416 931195997 999067063 458300071 906718995 390943180 513568104 117840941 540561622 364929047 951307512 581377263 893969996 304489034 970476544 685537766 892022051 290180672 400960319 394372469 656036077 497578878 990917244 412132504 549698055 179305929 645433536 268925091 330859406 998322643 998553002 823389191 883371582 740397850 957632015 211333564 513266916 230166154 419995323 960105540 980500841 68639052 611759635 107793523 951574372 844945249 876771152 15244831 284956317 721191824 889891509 423169109 432466933 749005811 912615642 498279210 721049011 61014667 996058687 490916091 909507100 102682815 439396386 902016051 987146606 412942072 594398628 64390755 685919653 654976828 682027733 276141688 763204896 178293587 186347426 161240357 841005381 286280663 583335601 133543636 170844544 752840081 842330525 848283277 897299259 390667271 794205737 569385355 940350751 142529173 372582940 837416935 981061529 427669058 845192977 954308006 996706363 518543350 774563360 961464194 998228515 782501663 863566193 706108345 817304746 384572257 427323236 952558137 993827112 339019699 772219008 346121333 417806710 511084180 880259971 758216688 868584672 131694828 429562349 160106782 596264274 280413494 419269817 776006721 814178801 48016002 243145493 995242206 999190933 807079362 935884595 507508287 807576202 482278192 531309581 664591398 953039305 509574339 897087438 183354081 574470816 743875456 915917630 694480450 703289435 971098949 989370428 914572635 935726859 644035995 949665532 718054694 781697625 172577194 577015201 152655286 477495012 287792390 481913433 644779484 845654971 253256998 837091075 138622706 968972307 966760725 975800768 284094471 489103629 389360729 909520463 131698564 888381129 201665461 674141612 931536620 940344026 51735735 146542611 513247961 710305012 120151160 409681181 760102618 762779641 162021566 353370987 395783892 864495740 159347588 759336269 593708014 730142501 469744919 564677134 366063631 629990150 571168129 629602092 752549525 818087446 572739181 731527033 327677660 555944421 567563905 998128031 539206471 947923726 808087183 959888888 787902623 868036096 223934190 632728826 348924694 925686658 460846065 575690505 656140736 794826575 33245806 55045623 107641161 678889651 955819389 967442364 752883874 894007147 71045838 902070325 852205006 937081910 157960011 451343806 420263858 981422748 608874367 927808678 939272711 977885863 961989501 987429419 457568981 994153973 293049502 356950171 932524187 984047742 996572087 996782079 378170003 380841855 8643535 857347536 533331765 761486810 559710557 741778642 270122019 812175006 277316073 722198217 849982502 970673134 294006735 771331811 431227217 537926586 292198703 384550749 962676153 967768115 31219159 230254086 406431955 420644046 867447903 936289036 900545178 939509930 305181079 705485716 37680421 73738927 40316624 194667340 525962676 844925818 758516597 891568569 631355768 820150518 115149064 326159854 867635709 880755428 250759271 925916971 108154801 168115514 690608991 790643989 720074310 819819818 671362921 809448706 231322714 624027835 426267146 542539995 808521332 897133874 129996771 789767535 852120061 999535519 193929616 927648478 165897539 558909783 902772526 992407867 610019293 963846827 722661402 939913819 115976890 888029088 133595295 572537881 793445992 981692494 60256512 475584174 873706904 883537360 977793669 989963670 353999125 803690733 698522375 770360087 335212081 688337551 994423655 995940819 267340140 972470292 996753306 997767084 802116847 962767025 556154509 926127477 221640341 757497389 756882100 871916946 614138695 958662683 599463912 707123184 2111479 816724645 43049244 758188180 356376827 969767920 129619645 270678103 411975189 839847308 343919185 828735224 48124942 410084139 992914420 996677211 591594230 599020924 975481673 981455039 566639584 672298693 89648071 493221399 285463186 429059863 441256234 442409342 87084287 805077017 182214612 620960173 402820404 965729355 641991958 730793918 112265932 683646000 941315721 985595492 602858305 899357920 343269793 800717234 504080730 795058110 37213912 539258577 790198408 908503041 693797799 717927864 866860717 879417694 658343682 791711264 113104464 829717468 320349535 763970871 303152127 447946724 939313512 968711733 806237954 974795903 348709288 676540099 494187309 915258001 550031210 966281556 668358972 689834514 520613789 758124151 71650497 952654886 317114073 481227816 324258950 896848232 457042885 994122494 154298516 239694647 132728405 784372383 264188135 778803565 268752481 311030773 170761110 284924827 363983460 588865318 838210825 966675656 683674631 898297790 696056543 707175312 254893141 459023424 19705955 296554502 859454431 875334724 62806831 743864032 356781193 781372841 401151048 904190152 516309268 846512206 237946884 737306460 368953449 609738098 743692125 817673697 385538097 607465824 475653081 728261726 651748789 762821120 771501218 919915169 74124411 937501697 886679942 965431320 731288827 905982448 413555872 557256995 405916142 519087768 764450011 917406923 972433105 998634464 210692226 809576679 616251054 705064149 339553287 486999141 632583675 679869246 29196818 286823774 115382063 800357300 299751091 893089434 319856509 722107336 257053821 830699874 386033453 682618553 406840507 473139809 45346920 794500331 263088210 428630955 65684382 400002296 706537946 879102873 995696826 998482505 555255685 653352430 209996301 759501702 855186974 891945892 908767205 923970528 185510008 986420761 530485522 925824885 735740716 934817950 542544311 755746140 572149259 948867081 300284664 934553181 803988369 932543810 87119631 160558118 495481342 792043503 185871277 344519993 808949584 854040207 979867568 992820242 251229768 483989481 679438591 783957577 537197918 723469699 864142692 968867293 54113143 301792332 43291103 634170845 809200413 937434192 931265353 952097152 570176032 835778738 892054925 978999209 596068370 873877431 174224782 589296856 446877975 813821452 536787525 893687748 683248454 770929660 818225421 966003161 752007656 988781362 803157356 955506186 395876910 592245068 856424133 935235291 985509240 998785102 528756632 961110278 462020759 937145075 675310421 759061547 868929934 912565617 138671956 328677563 632418881 852376742 425053941 743996001 648545737 652563876 565948377 946369016 794726167 840672393 229334088 628865210 148008588 276213441 933334466 941914031 415604231 929571217 33809203 362335054 502912304 567535945 766911542 900210875 239045508 977926426 32894776 658869561 835647798 943758704 913062504 919245653 519222057 932459838 382531 509694377 563335933 939539920 281942903 828385459 268781045 520359906 307736185 401218456 231804102 993510921 56807194 182597607 317253435 922598593 806553621 934351740 560257981 769715173 592581109 913118517 622950031 811578516 594506065 969524210 941292376 959227913 673890240 998872887 297594661 699638242 172414494 824111277 528781048 680260560 73630987 905998653 993799414 996954744 934351332 949430460 497034252 933011926 213357606 507157105 437782869 905260704 581863147 982293133 41017438 716054678 456803822 870568612 921887324 998142576 452141934 512336721 529085586 588310055 888701941 982317404 203705777 658842903 825302395 895676915 705215357 909432352 711369040 907211049 20557517 917412523 468215787 853169674 718367544 914641473 878042333 913062784 745782911 879552443 19561769 355380974 403214837 882393051 921011406 958919448 65565125 767849903 949672775 969246751 547904380 958750685 811804223 911801986 133375371 644142219 722265223 929234066 919292794 954099907 99134624 572560261 196373711 321865977 882575737 930135196 100908526 108360846 867196118 869950434 3776584 440634304 486007044 571551560 179197478 747896082 575203500 790586415 519661786 988083235 174958089 912765010 648296875 927882153 588080186 863993704 224273191 661983380 361564320 658523557 106914352 851671776 960278413 963003128 236181406 889940524 691934505 933637952 306531746 593323579 220566725 600122695 677762576 924633979 257525508 994749537 337456114 874365413 754067379 893142246 349300185 427367457 489975516 912005548 301239961 930176402 718887463 975341639 626964582 804843711 372540114 707243897 718948459 744099401 12181180 248657807 992012897 999900567 64999139 786410417 303450460 749550863 378383179 558843833 872543259 918086565 738444627 845785587 364169136 735872221 549504499 747834943 770105771 881736567 648685899 999948867 599312835 808268497 823002179 989854234 865127544 958239574 906974800 907607311 45674644 536263338 284886565 488205593 329851236 612420677 54212747 867925827 989950998 993470162 62941851 467243731 589556185 875071888 897312094 989147913 144756403 471900973 547019453 889366077 235455001 822687909 231319799 734822086 9130135 210447263 449934084 746362731 662820423 954751111 543700584 738738467 393824569 788017339 893617692 951663297 446851943 636617600 166279030 199195787 921921596 946786047 227390203 410339881 642465696 966516372 820695540 920168895 306001708 931733349 738116000 865032405 10229265 180406347 424427041 481803787 330650191 804578765 283850055 645454464 217960051 315304410 857750278 995252203 744312423 899652383 472055581 559490838 596240323 777931659 558679824 684823596 874439896 949505755 635954608 708775530 547740920 925019809 670274466 697153952 60915754 701636061 920061452 993309420 677747265 731716286 336719658 443928191 606711965 882658579 112047985 952650321 841112050 996055282 418439281 792244365 100475363 378305735 390276598 770800072 697881951 974452616 977175642 991845160 68923576 866636741 258641064 534985045 658471693 895822763 766558220 963452834 768225523 991562899 10693737 446372013 124968583 890851340 705416804 827556173 794750721 873847555 198306751 754621024 180381077 781363991 40378647 232700020 551179996 826941299 702695863 867793249 249708490 697785131 270269435 973550002 417717541 858233955 406088071 637586223 346595877 826963364 131543899 193467219 964754781 993564487 899859140 914894460 741441887 854183652 617189700 682165871 310608750 959451789 691723333 736069427 240664054 700648985 448736449 580278868 553231779 711714188 892710077 899026968 840765945 959833409 551168576 733894594 778580764 871768260 224734449 629755431 940426978 940813374 34728406 267349531 423413529 491537721 158900578 884090992 339602107 753061176 546872425 953360493 208729121 909596079 91016158 949996325 59351780 786530953 338492773 697445164 96257056 168174857 205081374 262339776 939155119 975888264 777145419 858585249 6440874 832425551 689698048 957403327 568176481 633378353 475349380 852038937 271391876 763097156 558919803 827366146 967393613 987651334 648986471 757652701 519988753 760643962 866757359 973996510 662241831 682561968 691755869 693534473 28650999 788003168 494300497 663666484 596272753 741066687 915719516 960806827 970285505 994136110 221049834 695941622 815253078 937086505 851319446 884129894 663961864 975542260 918085664 933233227 78311474 797264251 694083890 849848354 69491143 972910433 904211842 908936243 914120758 928576993 249940882 299916675 231830580 263829141 347275111 629538830 814048026 905847053 419479547 551266363 269116745 809495600 74152305 541831608 330227414 696218275 511249491 812134640 933413141 997273471 237706294 434374588 691430779 765052808 703627584 926673441 409738531 969944682 268229732 797879870 189535842 709747636 900581616 917319710 46037434 483629416 774069613 804481321 490387118 953528804 761395249 767980694 243426049 788876497 694532657 708357095 616999792 623798006 831581785 905224075 768201054 901807179 1027354 462140890 666300933 774159552 502026268 856136307 5483548 383468451 24537498 750523475 467266405 817480726 267006991 770040994 730328293 903484574 720707643 857446984 393613490 700688036 292954092 356014683 71647915 103131067 247452997 423702006 862738290 989756154 598568339 976066045 151085956 419240837 23654184 626632844 876188046 941443074 539761219 789198609 123279641 166723836 292622961 764365926 614261288 669888359 752353327 754386449 214623071 544314750 596583625 842207180 765154093 947123933 545635106 868094496 505672278 651976795 416936927 966665779 116844330 899168739 452245103 520430403 817047668 971719032 904574245 938626616 428646898 810405925 821191102 852653839 268851275 369749447 73112724 497777287 790494075 946409853 487117416 867169554 59908268 429076080 394625790 979675760 626037472 787740756 253374803 960216086 944812913 987554518 64097343 174761922 792679642 849935332 987024421 999118893 875919175 978218837 37689755 223145913 172174393 260023015 972502895 977963821 110154963 198962497 764286316 893693685 971320081 987774980 212767919 491078476 712025939 737246098 775314023 844357094 760194463 859645643 799508608 937855908 478909992 795333962 815459935 973942773 178943016 620702625 697829454 888381479 897030107 945370865 951604276 960312237 791675205 881013885 888257535 907251594 410882878 746333159 32556338 802687593 250524486 496104561 615561954 674164838 409435909 478251160 591270443 731068825 669161945 715919063 416598003 630035768 457448328 483648444 492558561 916593542 912366747 924420106 881612137 911560320 686967 881596230 806436564 979018746 799196945 975857151 693769889 855168008 621209452 888177151 752183154 878443928 766174028 892066904 629382696 785899858 237003961 773030124 522885309 770212155 890342835 910801336 182817308 682364930 297881818 590859262 803263215 915111621 432923936 441268433 472436507 871967748 261920205 391593709 510384063 999974570 635956064 933808856 382702362 916561148 571955962 715900748 120172686 411343363 739427928 785927293 374397841 860700412 912077426 986223035 642023164 965300856 150992867 477785080 538574642 736350728 265297016 337293433 674803939 876012175 270286472 364762533 900051840 957274050 392027778 812898581 126828999 974283107 145518404 474148956 18553410 164434963 748005300 790000502 534524646 897356939 738597944 925265191 425354966 685514526 214428616 433433144 495362234 673020135 163625559 446178259 231007724 615812331 937350489 950808727 222755820 907037243 832416077 860467173 672068498 719226440 927724329 999474865 239253806 832187326 160962792 383626560 37341199 906107443 935842770 965183678 232652667 408955397 162607748 980562836 923306453 999973826 565918248 746869067 535832055 862969300 606486393 707551092 751876355 853290203 13626180 980677112 17866695 891485381 792946386 913297579 984088442 988112214 383201481 867800347 168260242 622699844 689565738 736009823 365413312 457251151 374064068 984811321 790610574 833396748 369280580 606868885 736924398 918209223 545669160 886633773 979958944 990163164 361532607 768857252 991659665 999130044 258791601 411692395 96417682 129836500 264045505 908497639 726654908 986544112 817224299 828111157 846424100 861408778 939579675 958105405 986303856 992407996 178950438 800397846 465048614 891947503 986369244 995765810 804239685 885498865 937300691 971741037 868384480 934586324 155115784 415593039 649433068 865847674 229376830 876445530 387878901 746854902 142423882 927385143 225416386 958564040 438475988 806716277 252916454 676206080 448280569 931282809 600081614 891413025 994022954 997217425 329877557 480989704 489608035 981072322 539544501 638198952 181864355 198546995 111164251 966349134 494256149 964293289 275824516 918526758 839717803 874030918 771759755 824074397 311205601 931492669 761376202 816554526 193038453 354549492 587358507 661037846 442497623 726682621 720622263 899910677 601555129 897252637 703513097 880746175 220413642 826201302 101712970 854678325 400545088 771033402 751446371 752859069 492281707 515745849 929643168 932926064 972452169 999695694 498265699 529070583 719228672 944624667 815999954 895039241 426555384 440531113 150618596 158475352 364337612 853889985 816573135 912388860 838578361 877530103 723881456 793194535 535169338 607650718 21446704 270393386 600330798 689098502 774536599 996969535 593984808 596605280 147770979 889902523 814245986 935292092 950981388 982977532 971950506 973976436 710262219 809836775 213001618 977730037 581072415 798232064 252668642 853658760 722050558 919257259 225044482 336552179 901016251 976037300 462788923 680163729 665697955 751664986 786082996 826058240 446272076 804531091 790795480 912925366 98983817 885094214 279883974 655017168 823760791 971687515 362209696 451385635 83767493 456777262 686736051 942682469 575896795 975768476 133603773 833788266 536787887 663976428 747745150 874732988 130938230 834978698 625069248 739031891 310644478 318111195 139609056 522274830 34905863 315731675 757093120 939460364 502814611 701180365 838287258 844017243 476893271 583859921 402548877 975170210 906974463 923246978 993526278 995756750 706866445 954814920 371706968 883993220 711940579 926182763 365470973 974350478 809573915 902755317 226796838 910200942 482811312 619835053 121725685 248116463 778044387 852650391 270655847 549122545 993926093 995949483 292121982 770199627 815857 474499554 41949910 111428111 468507330 538000413 37446129 839107527 577675169 836250709 827406350 928473182 232946176 658640525 220982101 299248724 601266658 772660916 567039357 994583427 23941726 662427492 898994380 922439393 729101262 777002734 182745738 899467021 367207032 834024309 133577426 750847547 957585544 973386442 288792104 841860222 819131539 993327648 968163866 995547803 667248688 990772797 435299270 753585153 70556458 705700586 216252509 671099335 732366811 961790611 95333935 607422082 226879946 347564197 169671428 863799836 677982234 692981348 114773975 211334903 499204872 611929076 510531503 963941323 80908527 307241302 781536828 882778793 424363587 433653440 549755359 663232112 765867626 931712448 151222067 890159769 551634415 907826010 756719547 769725684 819313665 854914450 302335867 703006114 941314138 992105284 266724475 548625141 742378198 822193537 325692248 514641664 685629741 812496501 122466530 198348187 913889708 930860811 6481074 719025996 394692373 568333321 487848958 612531074 217101559 599318763 519183365 567765173 265185409 791371223 850510554 856815950 864163002 979101642 770326691 952034666 564861759 825825163 295362755 419401620 728591574 819560396 495268306 557296039 839904965 845574693 993977377 994380468 29313912 240599955 578510537 775477580 331718617 372673457 979273068 998182865 945169267 955404068 312915079 420288470 572658508 576829188 570024283 715758346 733832525 913786093 963554008 992037556 73579317 478684212 716407289 926743246 295466400 934824110 431237340 682912880 130114998 869831834 885983625 909146892 211476454 486071833 948487972 961982353 511088743 645054143 228735901 851788372 319410256 773170736 748305505 823656053 233324103 706534036 804806378 806865144 430818228 864440413 550579169 888528601 370843782 926179221 96431188 712384597 106986397 201094065 92674749 920453105 339189120 728528754 436777120 756821930 863093998 976168265 613900358 857049804 502332401 638885276 338836505 657501838 721267952 737108645 589122824 715844647 282847321 939046888 360547535 861361266 6019011 711273314 777814234 869659255 623549138 650687725 360982160 695805489 878821910 964144089 636636921 864601955 548008714 558020449 324430330 523917390 952430296 964466623 574926681 896140812 996865855 997474140 944689703 990766388 607107624 924974889 871661571 895908388 343266592 703265016 395095171 430061376 721443289 894042820 874075761 957712949 111441551 754300175 830754796 864410702 196494762 610275641 521210037 758458354 577022488 842457980 111150923 512212974 275470697 312432552 768618707 901519319 286554765 335471773 171414164 215405933 854331517 861459397 12543249 633632971 926323198 926861181 697269038 722765164 594962394 734990288 439609460 556593038 101271261 150964165 437509186 622521648 133333536 658236184 568266249 629699991 573267897 768940985 54230371 460891363 850490729 998794725 925304916 960311905 306948263 663290426 259994074 598355565 334741452 732274079 287304813 601071791 831269764 998910258 250481504 485548501 861004947 980184421 706439047 902449004 872112053 946020613 270437333 358448623 467318686 957467515 912874665 971782620 53057015 443257183 861464621 997104832 846754289 877849404 414787260 666562528 565315229 755275190 71616295 664709396 775974400 969459832 911788310 915547943 65289853 502351356 526386655 633364497 225045405 663396396 264366943 420715562 729738147 877060174 882803538 929183763 297652069 991600987 91348774 742400652 6154988 863368750 616299792 707514507 119100755 634840817 411262931 724803201 816708022 981103240 326130277 331997509 798242911 855506366 500047337 598908022 219014323 255983305 296021664 980593864 272426854 827920701 399444956 868810289 200096908 410915250 781547483 946440098 253454519 831226542 154085273 329064413 250559732 796585351 491101484 861071454 793269944 795343541 59176980 218143892 141197100 836078514 575885549 843084509 789867855 825790718 997999447 999119959 126425094 885541374 694349884 781487473 128208199 892083209 765754687 950586100 144956247 701858287 219572728 593477737 360293384 932127339 620799789 871796046 639268234 667956305 807717761 938225113 349662448 519935316 254941243 427772345 17582431 186957532 454286570 556832017 493809639 872972930 466016968 989462396 529447340 549675547 355924972 841054480 558450981 993803475 38383305 495549591 690927233 966143814 451413340 637023760 849061081 975631324 163109617 938892021 871532618 955841663 49995717 90024123 23713995 264771238 135803453 371742305 677835462 980972849 392253155 417243674 109774074 797498219 65984112 793745590 334474369 490664524 719532467 798916999 735220277 818905193 550785600 734480062 304856008 936110956 590465367 971158325 551259332 749822519 907700060 956042622 821014923 965918342 70854148 514949002 73487794 916080135 417271100 466625115 145885371 439445652 887631138 997046003 393168118 940810449 654270860 784250905 713222701 974579750 57108150 864897940 295429401 337839933 335835015 764081917 612873307 982566753 412609650 818470077 873301981 949602758 22393804 545040766 681294513 741262447 586608959 678517049 171754872 662398868 499682613 687580128 743193863 883450642 171460363 462584307 173107615 900488150 931529599 977609115 542899351 707662443 391075843 955692958 746017930 902063420 152572884 740969203 545444278 580452775 466481722 688489590 37980928 696954583 820098344 994615468 171588065 706009879 163370168 604936078 283687484 738851088 206068745 741691162 458906708 902817448 83852516 108150151 992874037 993182155 940005572 983501490 718053271 775868413 716540029 877873079 330014325 372608691 541653027 731853235 242944513 871235821 127301591 591729529 247101819 462162600 233461720 586511000 632412571 713572503 312366452 471154142 606788360 806337339 488152107 762337375 940198806 942019620 308817592 352309028 462244601 896638063 883426514 995148741 580840487 749168398 957787212 991732629 128392742 983464814 531376347 955060274 733391034 927959849 883250366 930289730 645320201 697701320 739478842 947807445 248489723 977118483 534958405 653491597 777593893 872545994 427289550 483054437 570346496 866977662 294388086 524815232 408950701 895784297 441970484 686080584 983003609 992259381 962511887 962545358 155719436 192855163 17537901 164305248 176980877 626769979 969539159 999608007 681561305 850161538 961006516 964642893 205800431 416590343 566126586 716730287 314255797 999221594 971884337 996819535 896789767 976634866 938760457 978457781 617768585 928004663 847591585 951644513 203456437 408080327 242473004 918091090 726389736 760681826 569920140 834838703 492050100 791962840 860783510 897615318 341239199 531050496 461545805 986570848 366808183 810016574 766419269 823775640 891400393 922474945 925023294 926892025 173920187 289593431 619898250 844901084 935089677 965639931 995642605 998523330 200201796 452089973 421115541 501322820 704257115 810627992 808789577 815239750 300738099 752154257 309543378 772801012 838964368 971463068 310753939 792028961 75175667 903784314 860460485 934799860 911420792 998162407 896918920 909110684 595128902 942647092 915418807 995967079 331363119 688083748 99454793 767451872 710443895 965747293 270619572 415684378 441138842 867318979 844847031 931510394 492205098 633002875 707201445 792259018 46485617 920505819 49552186 68064429 834184275 997254970 184602863 692498551 953036947 957432842 944406133 959650968 594551942 741620497 706226721 711211351 442883482 989695154 277023637 997160544 209113344 652298559 309288960 850064126 744833480 876809579 903538918 962309989 749867341 997196656 705057657 854047933 418511208 882775101 78413897 780493649 558603991 742977031 623063017 754638518 865105442 884449332 530034531 781672634 343735979 676269815 868549067 948286862 301569485 795804836 241784350 415592982 382758516 466233650 202210790 942376399 767525540 868507462 264751276 942886896 297221884 684790068 662660516 687341386 990775804 991616596 613071182 978102568 511412099 888184037 757327693 890021808 524056894 590099529 196360830 710550892 667871142 940645399 866951895 914844422 988617874 989380471 450401488 887512679 223675914 271890132 474942719 627845883 594852582 718382616 575139849 729388503 431943529 911672392 440734255 981307641 543845605 868483528 926777768 951236578 259044870 353302198 568060019 730881956 104003404 558045425 393532301 864403664 766574999 941955032 422598924 526262534 457000621 763040587 302358477 363415067 236818324 955315646 22023211 566570827 704103867 957235040 744210772 774859269 375784693 674412349 346868526 348890193 879299127 887782459 25041371 145542160 265533353 746379575 451995613 889078843 874500304 960722173 855156210 919226808 742401362 978108492 565870911 631087204 100362680 695824769 433233359 886901864 510272033 551416449 371640311 988143843 239193611 577055346 796086954 893630257 554244879 775516457 913822141 971605592 200673137 717810700 731956335 795454183 519260950 771152506 109738240 278935693 958627533 980496663 377889523 728295041 637045255 660153841 173067728 673495664 340157032 755832544 990548298 999150085 12352379 877429268 451173022 696463569 695101106 711857897 735799316 862813760 5738395 131691485 652588457 766856021 983657925 986961491 492193037 902318109 115161268 757078165 681806645 683224496 788411247 816420808 422085574 800983263 398309204 627961652 128161878 474561928 814271625 963379822 997263278 999813554 56575103 129464668 690462484 999088558 55116565 792612512 774518204 840341447 409371917 709349302 611305091 775510344 404312609 742217273 166953866 520212554 769536851 857622377 585918980 921054837 977191537 996749201 799269408 903532088 987892847 993141299 478130317 619894951 7950139 573296705 808687611 975379770 616988623 629178905 697253802 714365083 528138525 663348374 332770549 339322669 541052867 541685738 351404741 379492574 176523295 568611801 948598510 984667561 858649806 975362446 791809692 944442766 971288292 977052914 497988788 572131982 594312234 726829565 112807656 568557684 841602659 959893910 790636726 809620965 362951962 658935440 886539257 891701179 53479932 146488154 315432937 528280784 278868065 688620847 626060802 800088767 848786029 862292977 937906800 963178820 801867817 878361098 665154287 931797429 908909810 992942843 673901830 691734731 807003168 988352322 447266735 596073770 386974686 766331199 347492560 360474324 61967617 445799939 504440592 874417417 304773203 811441496 730545703 963690622 729922785 896346129 549906943 551165874 526965568 930503659 966217622 995408441 833597531 842985107 118611010 761036538 38513059 463193549 712219348 821671178 974612596 992201297 804270627 961790955 450903685 921945070 236292686 964713002 107999239 682757648 554071332 961606963 386613228 757235789 69213559 648513568 998539691 999101925 194715459 376763032 114203727 486577182 482563913 802592588 999852810 999972027 285070543 733245377 122443207 207942901 110758931 555944700 553883393 995956794 418668454 470032154 743931994 985781117 191128669 451666290 205391277 303112839 225405727 745952402 370708351 431917999 241769488 826822244 890933829 983022023 476416629 649643903 841202805 954797505 68291691 518168768 80007466 561335507 184534853 736593114 889444798 984175692 96357529 869814456 716013294 978918001 483367821 801335837 29235823 296665881 776711279 892274090 354367369 991276429 561791642 666120295 184123470 431410957 883791705 970670122 126735064 391034645 264241388 735825135 311717747 708568033 820270877 967303966 285509639 659922470 642509910 897529963 63158786 168758777 443543322 599726354 214382197 704179891 601450213 644986014 143545781 598667296 275322235 395080944 565358029 611726957 259333756 590031355 435731057 906650787 962942253 974403453 830231101 849218967 147760278 648519476 606628639 659451508 365256664 982451021 231914709 758846667 114282126 176461782 442726051 510359167 489125342 675957168 215053806 741233622 342546485 355461288 249051704 469940861 12891356 567054928 849304166 852359599 633075314 836656214 6655269 659480691 847946247 899919040 626990279 844169656 145342927 387376093 140676390 158775216 275957791 277185960 574511306 887030099 119608160 865835475 609283436 836792024 793845604 977085965 807902849 823305988 888638996 998000440 41643519 476074920 848995446 869003518 420774586 592595306 842786113 896820371 642699134 692298221 303193717 822142575 481800562 508517384 371323764 428793157 325333534 696679202 240811026 644204000 786285776 813958494 862983279 947850283 36499883 821883447 555381513 838378109 176183331 676985015 288422359 734563198 630586749 725297829 924835024 950396203 790268245 891983350 752189257 848130535 774617685 871922776 901754932 974895210 31824635 576208707 555924014 834170922 968357855 988890357 931009284 973468270 819023115 899920775 923399616 954275560 453883359 517538314 410333921 786415003 144019272 990795739 937963730 984617335 780328044 785384567 52422176 885009787 830766301 981672572 285490014 370168527 172998549 742099471 245941391 405725732 53720466 57373565 797015362 805456532 564391856 847678593 212601038 706600789 658860397 981492903 883141815 998507105 71964198 645902165 928639578 954253116 445263899 936039091 449716340 796072739 231723193 737191669 737452989 986671324 800889888 989457344 77807537 235616101 874101879 911137869 329539153 418066116 862050876 867285749 999683851 999825485 959379364 964234079 760381389 785945295 544405916 610022187 313619811 622069476 21836585 959455928 694608766 922593543 444278002 965114676 292482998 792105644 938296914 969772925 980032949 988509854 144838425 861307060 667584267 789947570 767155041 871555791 970641935 971214930 425733561 740691177 972451570 996349973 223328217 389897947 802817138 892499344 748993922 919155828 209101072 473218850 20791570 286311536 46853687 841394401 491064069 901628391 678732192 739106727 681326683 699220216 950093774 968495744 790927741 857778334 943107605 999598782 493148798 683161170 527477556 729677456 3735667 178580851 510932880 564985373 771388230 910295824 832666248 885949446 256296620 489934937 875777164 970860777 809262709 815907868 359858321 905686340 559948944 663876682 510160283 523893968 990235432 996730045 210577729 211763325 760078651 802447872 199562270 702345897 937848084 958203430 760452869 936946529 617279828 650141293 144477287 495695670 888616389 968019161 634066708 978670461 965213184 979495319 474018843 476250847 398247467 759065522 285593349 471260722 159664839 334461485 90445857 175476277 223927939 828029898 184227081 718536302 968244700 996340756 514900162 552830490 180823885 777038421 843215601 989918987 238519988 882614505 818793040 830222388 633727044 999313467 804939768 995838662 17605158 202461720 751667614 798930872 213769478 815129879 877957810 991829435 130083800 254671677 540695164 574003088 143522338 357339394 809407302 908654140 471320717 770633296 991680328 997242221 893233027 989886360 242115986 990565803 554485460 783142572 984347369 995985628 37311525 680682597 105921108 904335619 382165330 723232522 979910704 981059388 982461063 993362125 363227713 514022847 896339639 974644826 137263481 395949109 564298008 730887968 780944720 843738939 627520216 951079944 690949299 940949792 346366355 769546518 416560917 562856026 364481702 686042047 763910957 810327439 216747429 225449617 385548924 928047772 422397135 686013129 323296734 774096709 388250601 516895742 790868422 997574041 38411355 309184143 193944573 496141174 291791301 441762279 338245275 982750081 883134072 888281531 790420145 835873999 350774679 508508159 619755895 790284016 842446378 897620109 455176362 543715708 742453509 807956374 583939223 999718507 194833682 734865036 358483225 782046592 9352777 309791920 930198995 967330329 412454615 923358222 545451468 565355502 658159738 707414042 669388999 854140260 217964741 712250250 168358906 691850519 755321323 776482868 73143201 345785225 28159605 40793785 271942402 556638099 654816913 872480630 935726963 977668944 286887035 740245116 778649979 992088122 746374858 814383044 939158080 945047325 900830506 984717271 516612221 654661577 459671031 576643871 42064714 553135929 548716247 840169028 75162083 772179531 47661290 289447181 21146562 297495663 154878386 343796677 736430303 994940073 893335650 957427469 841360945 936762562 453241280 720494714 841730434 856271999 196258258 267308522 296609760 640025428 932333995 960411872 814702086 988838284 371725025 627849809 422452071 531958255 393147541 653165074 740019690 958492479 747478373 867033790 227979072 973315665 508454401 808656332 332831743 696508906 763225301 805332504 336671259 817307800 921472914 978963293 876504725 909914768 398098104 822093771 463765830 809664922 597362703 812289574 25294954 846892177 763614791 824387298 410539553 971916911 906267662 972344716 447061151 754376061 39863224 657614431 82917927 645807792 57274404 825374750 117016617 211392658 300337504 990719875 651004805 656903848 929730442 975409536 230732111 949910845 766650313 884116105 748404666 769276261 112724073 532527952 227792569 807852719 190331614 678725263 992102777 992847010 251878034 645768930 386483157 593300045 940331373 965427682 358409797 396615275 889180837 990419499 648529230 990891549 81769069 374231173 423885140 633915049 627110001 656732244 679566815 868894660 717046755 823383934 391938547 744403752 616134504 725945336 873000844 980244396 663390971 788965257 839979742 944961508 662221301 784063709 926262169 976703147 828375069 919726724 392803029 789167383 732550490 943073243 694284689 945371870 439566190 598831896 333728619 863216718 925894924 964946954 905986524 958690414 138540054 443814457 812009771 874397559 301092010 387736023 119194952 844295053 639505869 918935198 763068930 919173939 345809081 677579183 250750726 827976248 893683022 896582894 854074345 944519743 626235973 813324333 792587026 978639634 419930457 851701605 419209931 802952100 835639746 946917749 436701134 734824296 742728629 879175574 585903539 898270644 183364330 335137071 988039293 989874824 970580137 971038836 136852133 195955375 328155103 436670714 721336747 962466822 948154437 974897627 863607345 872582187 824946648 874126716 489260412 866972343 457006678 736299682 621619259 818391024 15685082 669405521 504694499 596292396 863049725 997051363 127793765 794513729 844659992 850683944 568387839 715279960 922087627 945000756 514860692 779116208 244589706 473429790 284444417 470296375 928395634 978885963 777292649 951700938 790724859 873649996 738808874 986352288 1890827 998236673 820410693 833059847 926246899 984781061 465218802 479345668 685639044 942023240 895440729 928871402 411725348 800676400 40879263 718058700 331414448 998911380 429740507 577414977 532494508 926570006 9779446 193063614 231348138 705416889 191408021 718250402 367003497 410848759 397137908 490680550 61051492 349861573 489180242 702016645 536211131 677687569 60715616 166964228 330147015 499058222 761316977 927888336 946735521 975081814 414581363 844519214 437539356 802241371 676415586 983733518 983039185 983785132 111517670 443998532 693678857 911223342 84046733 387338298 61240728 527306750 491832070 709824451 714031861 806890431 391550998 448092702 853250621 992951512 14705159 691654299 466566607 799711749 252746664 967470142 162099093 794160308 907094837 988962637 50882754 562638063 809247433 839682717 128520665 448364922 364042269 584212075 155391823 846180263 579465086 768294776 631944111 806914917 285607309 572465453 527500286 921064563 626616641 664918264 614180093 957436900 279015419 421573043 887551875 904622927 408922095 437376742 757104690 954826307 721730358 733078818 912940745 983477878 651072821 780122543 920181656 991270252 756030891 792728561 673693912 990447294 799326989 863376036 451914983 584035317 375295872 566225755 813798135 875765393 986508073 989950791 818625861 839543939 150017294 561912329 398680033 920330364 210340007 952536637 403291187 444008949 627821332 979876680 978474285 988155117 965204327 973223403 529308985 681564124 94262189 305340448 955171067 972101237 6126 685542307 400321490 431014043 287566259 437547847 337681401 470379620 220085847 588710559 544345940 751125917 637275943 960574729 612365864 680063917 274612518 987173135 34226180 562384937 960463195 962367798 70371553 895337757 297899428 989516445 867525305 868541991 231365138 533309202 21600467 259752331 67430879 693910370 109105092 982870333 361776138 664845758 730196651 762705009 571588614 841620432 740808432 906575915 215843542 534407607 891196191 961671527 179783636 385649481 95830311 789270375 384647910 764590268 45600573 213075372 809005324 839041104 473742885 740305027 718500553 890991167 720945807 895038602 686524724 755258414 615082736 877594985 915422465 984814528 720781471 752054221 198749252 633948837 674394498 757647115 585255227 987223673 499144015 531960313 780811696 976227974 963484913 979932791 338425389 998249212 588168402 746303109 936472800 995352372 440829387 646822519 751965040 954603198 902372007 933936109 855623266 918175686 794416761 887719081 401277364 968251951 514674912 920020581 880529825 999138786 143117691 769250889 293769919 535255785 886662932 900789723 189515314 472763042 492084116 623429844 96955385 123874534 137821313 372014573 483061582 804387566 961217733 974466607 341816968 834804437 304473756 980741377 511079870 800463918 737624608 968878401 79855647 354217773 304975560 707960812 948507973 972638856 205206613 939635711 540358295 882572491 709793642 806813248 906709303 915570150 491721997 877670198 703198782 805631138 994255763 998721470 547197270 839039734 667167051 945485111 359754240 709351274 233544593 269397380 569735121 856395354 417259892 435949013 428575502 936711247 420741280 691492780 904385464 978179718 833357361 954396299 166856003 773464245 853477043 962899268 550879616 785838786 400374342 800446482 698642480 774653758 437006876 801707183 170361414 894095814 365963979 695208284 992142527 999854564 471514268 513006726 909609080 989118938 176753348 555383371 848050928 867624290 676476522 999520101 73609778 595295499 783364558 886700779 660301672 768392453 866644770 972957285 548100296 762667882 721267883 810123073 233448112 937317791 653864799 685966565 50544254 503789292 204164019 752389362 512678223 718670241 322659410 647494112 195215776 282888973 557813765 929117583 410680949 435596667 672357687 998807290 341697297 360110456 577966816 632326875 941569040 989221915 661139689 794835619 285483464 407150754 383064936 779443306 933612488 946600525 345236899 720818317 111311336 405874780 714128626 743536154 5098586 966913499 677621248 826270470 922610273 951252709 544871760 937531092 417600941 429284616 772767194 991916240 565126551 958586108 757501802 932147395 259326118 406417478 921344920 948757823 668840900 803838624 1603259 879218157 562856994 610809486 736547983 933005590 347653921 677399148 223457129 805634973 741814558 984926920 135547906 378030794 52462167 832890171 83522600 451183988 990264748 992989276 561824386 926049473 775661896 953907638 653653239 766706250 575633782 944200840 603233048 808323446 122629345 467066737 799873203 965844885 70403845 264403590 604358342 719029500 68835305 123694269 769570590 869334316 314633968 326693381 470803651 736962423 345316700 883951201 3690504 477286690 623463359 897392640 878779573 937415116 522903725 604319012 29789361 314801449 782343327 909456314 137330616 678082997 854147902 949057628 396602335 649652572 355114826 905668654 117422583 334423742 868982137 948492593 398511294 488765467 580689499 957339959 639735106 717313115 100342110 642969293 668324556 733421019 827014289 916025206 611791377 986527657 596252911 804837869 131901427 698040558 799887428 897586645 288632585 501500439 325231919 691588244 362894958 608219160 698542443 986852983 517552460 819523866 494998758 665399530 480806503 888341065 47798430 766469306 330145725 890944262 461854439 877871453 36466942 345582748 85117266 737997187 951424427 999510873 169771184 814451398 945107773 969625225 82212873 139834959 669595887 688188728 318213004 653657444 793266838 967902519 513859800 876127762 987797588 994070925 794122478 985198254 967595909 971880919 610362191 967470287 435650445 576992501 386737605 605796709 17068413 320734089 64071913 392128160 914298783 929476480 932952312 987310705 956999142 962821413 835989808 911475805 480364337 983431700 392137752 545353773 482839398 886890903 961806619 995922537 416221021 698805458 914598302 969008864 379922044 955050090 231231381 681886038 171613646 846806555 740405979 861239238 404941552 602983927 369303739 727770534 669907783 806672994 754841154 890494421 437494035 664156911 149808794 877482549 125638549 583738860 925288342 979444134 328492642 726836299 262095875 402507552 367587536 893379479 519733960 972717930 177585263 500135844 486879565 598576978 103591728 270756533 755843608 942127382 182944729 705467803 454248158 707199826 468747313 826097823 580497558 813256266 280968604 714508576 517489563 953878895 956328539 995804910 519098287 719644703 456678237 535330282 468057231 717022244 45297581 578869190 709837077 890883913 166226542 825859970 621280965 784918070 259273862 381800485 764419233 883028468 343315108 833024387 198945780 268142981 944453885 982294162 896158117 957657964 137686618 592835676 56487561 243785828 526316779 584032605 890731313 928975522 300169195 853997709 439885500 944302296 33538921 598560963 455143520 930430174 857288644 950278031 719544095 902893193 313419950 645623423 310673924 556063686 275103558 302915959 778486940 837821559 865706631 952940477 822584895 960122551 857735345 932597135 408546634 592103552 100251476 369126712 929436626 949931707 951935851 980785720 969539890 970724072 169581765 924254912 639222219 901797433 411506677 432795124 145147112 660903752 657355471 870628553 556777684 633247313 814799096 844404525 311646112 976432056 821581412 961371650 247024959 646872529 247221614 826763900 10805329 395631968 543332329 940438528 273769059 467084051 931944556 977750584 785008999 975518165 722664473 978667502 761762819 949976340 253704929 572463564 607059914 889434750 468049850 771673238 72444125 789256344 953412785 983483093 264160541 530135803 144016548 775384749 197251744 416227506 115811097 971565491 413342387 999923289 183976854 860392729 83227129 227772772 634669493 657895578 865473355 961436923 21024415 859263977 367393055 744866763 56056930 909388667 216764633 304477244 183073877 968010014 160178080 558371971 35592897 534203676 394750122 889718584 421241087 448078477 964461568 979007962 906372351 986789033 287305745 921146610 760144000 782963225 752215434 920548171 676290467 993422593 648242030 873543223 617225833 709014843 544631790 839976542 343390854 868316713 959747454 982635991 937431189 998761420 881907478 964003803 684481953 989488374 504508309 872636969 283504291 696433835 583533754 821333791 492026051 899295185 647893209 680572967 717150953 966039591 964489622 976181888 835982038 937604997 298596975 346567066 206494969 457500108 659615053 756325758 974216902 984148729 737264088 932461673 264862188 925475758 237143832 839420473 688691064 853293355 528670934 888302384 341310826 819342618 508950342 820125241 853566320 994773851 315513548 555730468 683712096 836593787 446744145 782842503 150469687 845638405 549403804 995263588 865667214 984268620 503336298 526523311 738766651 897240926 886804137 985548533 173421103 806477785 297283108 749512060 811462417 924624595 948515323 978780668 298535443 479852340 881594422 940180040 106859575 695031594 297948961 452877672 943310071 951702929 516619769 776168994 244475846 818585063 96728845 774292226 492228753 743101752 487761243 695408673 901146677 938066499 79643576 641095066 258504279 944145153 639886894 761784701 157184273 181381691 865025263 892200939 439063646 866089060 699740788 721229959 708635813 987711816 523134762 914268765 607083116 776653110 600455667 621501734 133488703 847407653 36040231 549540649 306320772 949372477 17915837 863122866 53865855 418456435 964825193 993962751 136369066 853224037 938229627 989005742 317155881 809941405 166736830 628774324 542391829 793088488 821550930 861771945 973354932 984077939 444439041 799749022 358265718 570102218 254356123 829087735 91216959 172958687 878062772 963425840 249526163 318198559 980948522 990729797 399122332 925300907 548918107 558989072 465820859 951140039 595489370 947385641 666353751 954140656 891472545 893398148 859246769 987636088 347976079 576021599 769728462 784514811 202845174 245786755 913798642 986729326 789522800 870050954 709147340 750302964 335629070 806444131 519403563 553492069 465820363 975497804 796731765 805899672 744239071 851649315 815389581 979280116 479259755 922579893 822282326 935374957 660518757 913340018 996048431 998456118 457251187 707109406 561493038 935117446 19767450 415773162 341833054 967900707 862764612 978898504 317563146 357196368 652890348 953339736 709235403 954726590 580865947 927203307 899128792 918600464 156529085 341718515 350878405 442504918 491680121 860751788 445419028 559672623 400859136 507641259 569252172 618319702 999184784 999325976 74383028 289805904 522817822 662731420 100432878 108114387 693081928 715327745 189269443 782188647 97989891 696702403 920446944 982119777 961580786 964155753 219144638 807398183 658192949 774387957 302012436 833190264 133344346 392963276 651774717 791353147 943694381 973673075 451290242 493345439 649176945 808194008 728083507 838992456 586371583 828219872 787490647 976824595 985613920 987008230 97113526 636254615 45840018 280042990 694289833 737576086 602931670 846173225 605382125 878743388 689721429 778879431 144033646 217314985 181420417 643932603 422361620 864834044 98635230 528879121 783100833 956132976 565397598 850616283 179768849 730626425 280086670 572860123 549372389 893406844 487865098 694649038 805526139 878294382 202797386 980858614 85138834 880494235 837362078 952439451 798310518 933179182 525885734 527574861 420100151 990700855 102167192 553759724 992351220 998003299 584052740 827802689 280549841 446518999 101710955 261664698 992196430 997614075 102745605 515158605 478118066 882245103 288485873 714428420 566486979 883786252 462084451 915647557 180819679 830477240 312776389 643662647 664852207 776002731 573952338 791110648 449459914 817099960 388947574 897276254 252482888 309276376 359786896 726371594 779989410 923112217 920116111 957375146 88606280 976428226 469097613 886413836 91029092 713326971 505118575 866844079 255797978 470553982 80876794 207463128 797709768 878044495 124793063 758774274 342141101 782971336 970562587 998148949 238671891 941246439 865944419 915359444 726875185 959426813 776471941 916937261 153491886 266744729 84922953 978824727 139269839 181175378 361856458 805867225 927614363 972371358 218885502 297794905 707654368 813693241 23798956 159514276 729950341 826973363 822424356 897155910 859618805 903286933 635237698 820785220 981969605 986330907 880518695 974878140 433530194 683308599 95574865 198447115 525825543 648002307 409239405 414043326 927907178 939700482 347361606 955973544 698497640 808625511 221150953 794508582 300450808 810155659 241379737 837887411 953306986 988082444 369216801 696785992 432723333 493809182 758859542 762569298 491512839 569599142 505869588 936791304 720552728 985985742 854810365 892004632 938438798 989068630 102529218 608039725 120034313 976766447 13733298 702463743 494478644 794951687 11206567 751174049 120395466 600177367 493064605 736166430 303849147 943941875 24857009 822431374 544416890 978292750 162879734 798217213 103403793 968531646 901341373 918873058 531820746 906281679 220720791 495421303 327604101 419242846 362199398 487407593 755791827 944947873 272400095 690113778 874787568 963948899 37695 383641373 942824959 959073600 611471080 758762550 674835218 969986501 961291498 975205020 37677363 983271967 47038921 766949104 643486154 855774867 489790736 955571328 683043629 938291926 691744457 823638981 298838932 410591796 149571108 445912816 343024902 915800893 405905816 453462791 702392097 726358361 469544749 829517299 661949662 967876429 232417953 305862610 326152028 617328106 858002855 883893957 418467868 742854087 240004245 281281152 951315640 960037312 481362509 935566803 874175023 981524935 101006152 778928760 394343207 874821943 455161168 977810709 754190933 947579674 88776284 300820912 178824447 250395658 646861453 649585345 720764226 721865499 739072142 984960346 519020733 674867426 190172229 738098605 560862549 862429786 883402836 974421327 797047147 942313497 229849426 560347335 740373983 747490450 316087521 460169107 699591645 818940987 822621104 953590752 325369431 646928286 174126677 738302176 266376632 335530152 985970811 991139704 415679656 566204505 33472178 454024480 813888444 833323886 302482262 456379222 657714828 976855630 283727364 916404495 231411739 718041991 545316312 853763684 21428090 174745621 83744643 301133542 835966542 882534132 909242081 978012569 606409329 788580989 961183160 987622692 428802259 711719014 35001723 77472774 978645241 989105935 867288928 952694533 836438599 853015929 692335754 940362195 795579445 999497862 416354116 803866238 469254703 888054109 34481631 908678300 887411178 912321733 104263993 437847024 354180933 960998299 56818061 662558356 392091732 561124096 149693816 452313844 886380812 942622312 666583773 795167286 911985015 927552468 437506422 506231897 718873746 802428040 585345930 651547613 765661347 908564418 776422266 970126158 47417467 475749414 313176985 626251959 572637874 750715169 899477872 920735100 747705825 821536139 968037386 969093392 23701294 40675297 58893332 840933660 759423830 802369051 538291608 776642090 250744513 486307313 169592939 396356323 388494070 579914312 594020985 767636923 757506673 787307583 820594682 891826220 79785639 492416805 201151316 574596009 818986624 895777792 58411222 945643418 397770188 618643390 290337953 736390695 614006904 752899407 348874698 349076509 583120873 890669988 278392606 364090688 341062575 883925430 801906678 982128948 497994837 868594359 362457073 414860224 747011552 956314664 67043184 563301248 542876496 772289837 835417432 934913253 26476697 312457772 13894141 559473244 678733991 711676101 561873044 643108553 333090066 727628807 278482902 618528442 636153820 783939914 919285679 929362562 312294506 928870676 253924596 957748953 56053501 296996694 212546893 558534561 825456500 892500208 820290207 981010310 789361762 873594958 864970768 989747650 582565855 831123020 329663225 587957700 154775905 831453296 9561860 885401505 958335771 978653160 134045473 187797372 423445725 727752421 738178258 802526279 628028020 952832616 918878905 925524535 744525833 905000023 536782010 695759413 650073731 938179803 821047539 998401708 550682672 729624886 9889120 124280653 398306570 894812752 576157435 595895944 33429310 440429947 97110860 412634745 235879529 432481312 974685300 983961207 785379372 865694545 364930243 612513445 873205064 973524352 390142812 873874308 647213256 810744166 520105165 833932873 349633522 742143582 494838056 667652963 365805797 434537574 173944792 197591286 60735022 619823980 717337577 883192317 406844774 429196160 616144162 771249713 528883087 662678585 691750422 965171145 970183768 975646278 935806480 968956749 721824787 992667281 827582856 944658759 18333833 645526466 913216498 990830014 946920965 968534647 636639044 771656789 471600512 887401168 381242904 507280133 826227770 849389745 370299648 509608112 546150646 592690287 141444681 946209790 635975299 841814514 277594629 508155447 641547893 865374026 707427531 758154194 461377261 698216794 721371015 743753394 895689670 967783025 577885691 988769775 634090894 862281930 333415355 498135304 415276015 626328478 605212136 634848197 784110303 951737311 59237288 99625247 153847540 747731101 275616012 860562060 562350647 946926456 452384419 858563502 494115707 627864002 999600823 999823881 212996125 964652536 218009184 458439096 52395128 492625459 297032074 551658145 559902806 944979892 285018044 435221164 60300745 221172985 570230631 877348143 810941466 939707189 246404759 465084360 933830784 988189253 586005280 745508116 342731177 521420324 912223674 992821361 726415794 964025527 114812650 819040691 918930371 930026856 809024705 843012090 395315564 550884614 896017746 942662081 65867992 892531598 201510751 487533169 49657016 308391490 699483866 924987293 79527664 338426901 732779055 783807709 344694900 581657726 454931846 997812291 271368646 710527402 849990556 909595479 271099920 591033736 103084714 714710515 215368362 405682108 192685755 419630078 416900086 909003088 671010729 817634608 649492645 961275018 272476605 533905532 907016867 994854132 36225051 462468919 637803876 953379825 111894576 930640788 548996641 671591323 716355340 957319385 653432863 846396466 53136995 197787421 499701056 912671463 215050878 384009979 189474598 198794969 533139423 627685246 857890475 903010164 895636141 928789862 686540664 888363448 591872929 731167962 366377514 894377922 945192869 946416709 77834280 807286663 499149 886452804 410468625 728549905 340002247 916310250 82011678 646623384 840519139 858849724 291798609 694784039 858352818 909904533 239058456 569266445 20776383 987170488 230005517 739235587 210112184 214062736 804725925 940808941 670099310 983328560 404634118 886495017 9860540 50497049 570340841 710486540 848796911 870523991 886859716 899094745 132747460 161386410 185247043 312593313 40170711 477123582 559752323 925847966 958915611 970072180 460988083 758711179 689940231 754423464 891857030 945264339 303974260 994994789 943778473 994137569 970159626 974926909 300341980 902065970 619734274 914902412 384120302 761204834 1193179 208055216 145803747 388461991 74044097 684551747 126120779 807104178 767552885 790450708 846621052 974611605 125546785 146062956 318931734 792058363 568890891 893301574 750543818 854599471 651017919 869378309 377870507 422584072 499052058 630891601 346387030 987547345 215524441 664098039 251079912 635278720 769005948 935431588 570423083 841320759 400153338 582062441 217619058 492616567 363461205 612620871 384793346 712191092 579302068 999676092 773282953 785709558 931856711 952399683 766630181 819782206 367487331 572431477 845585600 971815794 305008858 390039629 397008338 401337546 46199171 701534524 815732530 832520731 722495243 908887266 344027461 567710823 439266245 663783697 182080332 525758321 630700012 784933110 660087891 706763710 930918242 931387466 274799776 278159247 346233188 652283077 936385623 989457438 865061396 987366784 714204281 989705143 813414108 955463487 505218350 719396283 887615995 955662392 505384240 935828114 469390951 633522442 859676107 929886245 581170948 715711245 547589600 818586521 734733699 946575760 457569794 913908202 929269671 994314799 174156876 470907135 726571324 925156066 876484870 973700458 21079753 379201493 926455461 993708374 983123665 989948245 210765480 915330906 507234392 682013953 602882439 793565225 863022907 865282610 428683756 736749998 919549279 936586604 505910336 732627510 907938907 979469192 401663319 564677940 783150032 821603536 556547778 834389570 497617564 541075486 107418489 179850632 159165199 668693271 180665650 623556428 597315179 691160913 367589229 466214780 824678551 948544436 605677160 627515272 381044235 469180746 992441289 995357209 629474638 892095914 863166776 905980656 870013690 899191384 238993474 945318375 287192345 986197315 958775678 959170837 235651379 667038913 170691209 266563068 648596430 799704339 33251580 213063321 290442854 381408579 951568992 962890408 213002001 844155263 70106647 252132828 441679942 497131926 620677038 817610207 524276145 729974176 810978738 898750266 557471866 614190222 392947645 435824780 697065552 860183196 905084498 987006012 138840971 485107950 514277360 622457168 273564437 837031502 838047373 846978897 46219994 228930954 26825930 394631885 394707697 844418063 235725499 540731246 437625101 872171323 771988050 889625953 892652750 896979641 380828632 567523056 890970754 910294415 590259697 747403505 900149975 910622060 296987758 307545701 339533908 799344253 910443266 930281961 961971595 978823085 48855238 716128941 216993259 889964221 930056175 930886113 684929 495127514 593697799 853639237 455650345 612577067 316430077 471978309 42595960 841950979 417685869 918834449 29375574 183897245 376179437 591092025 459417 366679946 938589690 978903397 555056154 862155677 869733075 890012578 214934244 301192961 890498190 944657986 52116546 337007602 74293957 376441721 256422620 352999476 496680034 521723355 699561250 838104212 804888971 931245183 489861848 921815520 38815740 113572956 945236966 991150370 447469483 632093203 347726440 554627001 389333087 499756699 326141036 734685488 774046626 941110665 691725465 733688490 643721164 939204399 265852183 754382224 71953573 85488567 582569173 719372291 128475574 697584316 617173974 720588085 97406799 839085586 151124476 631817781 406772132 535192857 614321185 796922834 314829125 891182888 918237949 998160442 724102529 893142534 115554244 432715096 983381312 987092332 470191992 810170690 144241643 302995105 587060687 881444753 766149647 893720669 379968334 777850106 15031827 157325759 468677166 658408859 116681075 402818597 208998022 808765086 21879101 951318067 309099917 525096574 198840010 334495194 738098141 785733687 370678111 873404990 808034570 871085535 389784729 469903701 375841355 940068749 449492593 905698120 284500362 900201216 611436562 892418039 385946895 532534459 407812649 756263784 662634542 960609854 929138887 984031300 690641515 775904969 429449536 993545869 948298500 949187375 999106204 999917503 52127934 822512250 478490350 715834730 496811159 746889326 145895468 928359566 263562097 670487445 488140113 559574755 908770306 946467546 796481202 800405104 550589608 697993726 681508716 859325416 666378219 791318522 306818987 484955121 971206026 974271146 947617937 985219545 58457520 422111829 459689099 930337940 983511954 995295725 76098314 449148817 442909005 933231370 929899747 959226346 718013412 960552482 356818712 550081195 527004201 836377536 22394983 125733761 294348019 710313189 396168027 573242110 8593993 749890855 494833794 664612147 948471489 994412359 410096254 721418775 241753438 979249173 207068859 695539002 573482158 789028154 461990449 602709483 823784504 960282546 229271947 876053024 448342199 581291229 430121364 913057313 119693467 856467564 198320254 768726253 645544252 704781385 793006950 859376301 583426240 827438986 405329261 967999780 919522869 980793251 41233335 788799961 481938133 635761998 989781441 997436520 358575971 761604724 455227420 985384584 148209867 354353243 599436158 624477089 576194708 696729763 612934871 830508277 720291934 946839312 942280410 973065789 892172806 957020057 611267997 621040268 868464165 894631215 973666069 996085272 898843956 959275948 216304066 494813930 177688954 555900805 341625641 923989011 949837190 955510245 876434141 903424122 638338607 692314483 137265798 732616499 126917473 308834665 391636553 634717756 555845040 998595061 988526843 996021953 585200080 609482715 472838156 715311461 929464836 962183564 495305582 960021160 889042024 934462057 192781921 365319870 225675169 725426697 935550900 963445527 218433810 481074184 38055913 918931193 350781722 463110399 142484615 910112017 389670550 732667805 693857069 849872426 6754561 914669446 278671396 337351863 792255478 978169903 710910179 754877451 651309329 723364749 63218201 550814769 406463497 995902988 154552479 518109957 62141581 312407231 702323962 882362921 664536814 670478139 153549560 255138602 199826615 309411990 321465888 920141285 303832825 648828028 937050054 996591187 325008028 360705998 28033387 742848401 213464576 757078556 529733274 857337330 539150133 648673308 204545725 588304949 600644530 932760005 917826134 968928132 386189200 909120525 237268903 709037217 300734602 370479152 808641721 938056219 642350706 997734223 115779059 724860981 112314005 562727033 664112594 757914786 892802760 906869280 306710793 527692757 176912373 331222339 6286040 658279659 493267756 924553860 540025716 829404099 101207565 424834263 346697484 964494783 351604869 435118877 528705327 910739061 933748292 987125013 743944917 783153770 84193886 669553623 262711710 699078817 356541863 801938943 126035825 517944417 584451333 795424106 29715663 991815554 251450327 581543179 74006707 836565019 756752896 878055059 216102711 350391959 569513662 812324658 366813378 813344668 873647677 923837617 244781861 773500818 748027031 958528683 468371000 470516884 304825567 893554786 757106478 847137624 231438660 963574314 550047462 811862402 441825344 822130535 121666590 615155516 648849756 853708159 517818698 898084354 358058443 765324068 49886773 840436058 372109748 593060853 816505037 949014354 258194543 868383502 777435744 906207877 913559211 984482985 174874324 610829597 409155438 908167248 54593116 775759620 302673172 987286816 787209783 950632827 798466933 950536243 203508430 381904847 638750760 723159692 99586795 108735078 402720474 831614201 752671698 890431758 434634388 854318100 928021376 959533855 30645194 754751950 374953539 766096075 428203021 578517081 69596852 294956646 383313578 393337179 525835859 717582901 743333953 956427926 558125469 860283665 930283665 935700256 873226326 934320160 276462643 812582719 755082644 883507931 347109128 932691195 712811783 845754770 42445718 666462067 305357122 466835754 348068279 405715926 947514958 953335882 3129527 903450308 326492207 778466547 675990431 834857693 493658623 958151740 114200410 182890141 710377441 753550544 66810837 726893818 91480064 243732387 333336545 878096651 406672274 581356080 958618220 983832120 58932072 100020252 952854503 977025105 663867878 697202477 343752056 486006943 460245359 511532714 69869718 572744766 514287527 896258617 916671589 966125688 719613065 976421985 966121093 991905311 978490648 990840436 830711079 929031860 228648377 518919128 556286983 887391679 502241923 900307984 599485804 825993131 601315327 847893412 43559578 687814928 271787874 781991225 367477752 597385508 719087699 795658042 826715869 994651896 487053830 781604852 730848460 972478222 562997449 851051602 975564517 984380298 392966156 847392505 719825290 764241450 978883379 985175828 815513090 959976469 195202025 352931537 123363472 775925168 433977319 662031396 119930902 863494157 513701004 808843845 28574493 242134549 835751833 852869518 382718366 830251986 225359061 853779386 757148502 882097937 804707334 987064484 324943268 571310637 392117285 942292320 828556014 906995377 631493701 775709906 665848910 904523004 872992392 989054058 152360193 315398240 739257503 964532232 261464976 775001719 606108024 726475027 241650142 564226077 314410491 317056231 806416545 834210403 253742343 394241544 71366482 481487790 841765214 929357322 563487791 869135142 886754868 926139199 958233068 992143045 624372076 732299211 458155542 984044608 137176762 679334166 499206646 642212678 969498202 974810096 645640022 806099924 579113401 930309454 685214181 689962520 30851823 643540739 891296021 923429567 565948736 674320307 243139856 312042074 363792846 584150359 43472522 755355974 306183877 957199466 20746618 485169535 158633972 451735405 134834250 358283195 386683150 527029868 16487801 775313047 530298943 881385846 713804347 957196786 26235820 525101519 754880153 842367144 103742007 873204106 348817751 403242100 241344667 968719415 479426824 638745139 104946479 595812145 93225379 713460143 447729093 715558566 812625605 991045092 19134911 338099427 866206602 998036227 455172949 815290964 86780804 660140529 876068539 969548305 359101818 805938061 6220953 135851680 882352269 928806714 99027747 735919420 101423065 679715231 652674380 706310455 314323833 501574722 18870157 147147308 982512013 986840888 616147133 745572410 769192841 915615523 718141087 935967815 353323509 672433474 792620992 935155133 246783156 863901266 49446242 652973289 599077753 764092790 536291294 613703477 581412304 874477278 413007630 636720963 821420143 939575019 251185497 483871629 182724977 929934400 32568696 128017267 275340076 305627999 630393878 916195258 784889776 840552627 313723677 996573928 903774835 931727629 610065459 979736819 204995338 428268341 118021211 284757231 223190091 708543197 165888369 490307707 515863519 919811510 627555411 999411763 425842143 790278565 564017737 723790173 120449648 989798959 182516427 939883924 348799561 720433906 489354464 516462998 425900726 457836512 395010620 841438131 54330116 806359573 649209928 808959927 719070745 932902146 146754493 281806706 999702264 999743303 54965181 154578467 275643940 677327878 925426389 962350554 896683658 935275757 846282499 878861631 572493535 970813092 512911231 974581760 323283567 914371725 384546790 712084983 817423789 844657647 917253604 935530081 858171694 927417194 205664023 962408491 985480818 993018802 882472078 930223849 299984388 479373238 56724915 992934026 514907871 998133853 39969566 305999875 821899770 924307392 99880111 730361165 296260297 563480555 921888442 980301420 154661494 314779222 203414928 259700575 449398064 659767639 968420557 993136232 223091648 810943857 692161473 984983233 282746563 324303804 62578877 285189812 708489765 861320247 179813182 439315540 478841821 579130275 600964322 965173847 9221939 872228700 164267342 371424235 419204827 445378567 891945219 944996802 767236930 946801018 437507633 931436662 780977002 947181804 219908741 700950781 646330756 762890788 865935939 964794015 788049278 816847367 665392364 985045736 507476780 872631344 434581054 894427742 474859545 683909338 869797862 926861439 518512075 736022278 705949140 844660022 242398268 979107915 9724561 513805471 465113475 861054042 830982860 940625074 701315630 960995137 640555138 761210592 934126971 962571159 744783727 977951022 188060095 685416409 667575718 947002735 495280738 840457984 135853801 371045365 588644647 899820375 274189604 780235523 793362070 869755916 854607469 944714707 600511879 662179434 952746987 997857680 437643302 528496414 201175989 411035150 919472685 940606570 490974336 817698890 172780304 319241491 486008064 957021176 490314342 624202344 328123948 423978194 156352538 613997329 110666842 373806767 588925123 825494643 681311660 741156832 381379007 977175676 247204759 563354168 969316282 987050979 976128751 981606924 748669826 809367576 641638500 704253906 119972877 535200378 875046949 992346712 523111092 645779226 388830290 910274987 915242543 983858328 451900180 938320107 391790440 627726369 278875903 460551855 772486632 876025157 86788100 863196377 40124598 467808628 876433068 930538522 834157002 924162899 837116321 911483194 241699453 462370168 879926730 907197258 925411985 959475261 254398668 370081483 122215739 396762223 545397602 579947807 578336271 956538860 157466808 437530484 276572964 894146121 519883063 736167874 48944090 406810992 991432157 996231451 729419427 981608429 681201698 929957702 675193099 875399199 838272906 869679191 967759859 980028400 822567735 903391969 503787124 514949270 906234527 910644562 806042809 818244099 145079523 510316943 629996491 922108900 745379441 887131594 576390244 700736413 24249012 830284107 105137612 518334429 866905485 958456107 487235146 696276195 527321909 724557391 540291909 610725631 205209971 439610475 744402084 875726803 411296811 848916214 76250193 227952823 524012712 916112498 761815422 836395620 483340581 638946757 378722620 683066817 377415694 484759198 107918504 433691334 289873195 316550977 124601886 230171403 449445852 590754328 417866318 634152047 876518887 974393247 666467882 902583714 897306603 897896575 505780249 573716522 459630425 925913295 872599389 950773601 2881614 957770476 885140100 924812510 853658383 940895665 733587697 808768696 166122320 818322753 10025194 744184211 70743743 993714742 408243545 936017626 499668096 886606311 103949503 681685012 333009359 600440013 426185840 591601775 506508070 943061991 772845858 939754092 963540564 975033154 900855339 942234320 759910105 926293140 679828211 923623907 988906736 998804008 154856865 781871146 926686037 972535253 249369078 885719202 872298623 988310910 546616987 610125795 375209575 413649565 768790088 778811965 702603931 906030829 817492610 867588959 652445888 948167491 831430468 869425667 44125423 565670805 417189511 919426717 859142349 874832206 690317125 841338407 578602873 753490615 907399284 929827930 807260467 865983971 681629835 869484265 22172832 822935307 22752098 948855938 675783554 686497417 26826599 352451177 247646085 614211427 325176049 894825441 757143689 830606199 273452741 748257255 990989701 993750204 272833002 709683237 237828907 905289700 249817425 871500106 250626713 597395966 241783710 745461652 634604296 694323764 955167040 984077957 984403893 992236284 372606483 857076971 110365170 259583415 859570174 905887222 49695507 212034923 745479869 799533436 475463812 492388552 72681164 163737924 7364277 976832284 797232064 984963160 624205289 810781345 480343394 599825877 470128074 702201270 230520216 332509889 655884060 786147591 425925932 984633602 853757339 964413042 263380570 660503347 431389752 463145365 777779405 811306279 513065692 570797335 291527392 668807963 253734812 751928841 443934854 624577334 819050131 966347738 855424619 874376428 547322570 734931858 917937698 980711560 73327584 399413140 319978750 854354003 310196807 826748005 911729105 995286052 852270741 957716078 277407166 477070546 574422040 990006267 330703524 713080741 253849185 593690994 218552551 950238005 343217144 604724933 358489629 924016134 444508400 846922231 859569238 885269278 239640119 947177741 349842347 909458641 65262461 824206194 934856538 974640908 764019050 781758192 80345766 87319503 284810314 804392239 23208465 693671047 737618312 787994403 322236477 362976668 48251317 203297909 7630556 104489399 90980682 587292387 213048754 341653770 301029279 323957848 228190126 658332048 81860978 328953753 830878556 892384460 407926929 761795347 639794563 918581223 51657256 729073484 888307373 981253919 704501622 745536556 346420648 375529254 119070235 215530149 292449330 847608166 769405343 908498337 842519112 918299029 911141059 964592957 686876844 712441671 516124298 799084845 494641907 685466381 838784143 965177184 936874648 950096337 939827414 956526390 688259090 933170648 144545469 614968692 167943063 805081554 737629765 811485152 509887785 651969755 431075664 671758150 118596596 445765015 644099430 763991101 30982647 275784908 497737982 891923345 438448644 883270466 135837388 585040441 404829279 747231801 316420153 997943100 590102544 946697822 318609751 858349561 230584452 742810564 213174036 723234606 662006053 757558574 275998124 900487480 216899097 795683183 926809848 931054487 128763362 133451138 751105624 894620335 820320558 959881311 749241686 836337802 178658952 294464821 918123658 935497394 822808047 846823969 70407311 565808516 340472957 542642429 626017238 640684405 534841641 606720072 996305429 999408065 705661847 745450904 828706192 860466753 390021482 783238081 704150484 833656890 761039555 982211650 124237121 826982416 420593219 489959875 798908898 943484079 272244487 283466303 699617079 923608358 959782077 998043906 592878843 671642716 876215352 878807097 139092018 483331240 317246134 418592016 392794070 579334255 702466358 857189362 54212985 665770922 659755460 935822439 201543234 476560979 422667147 793118828 317471760 565262587 54066830 709559057 908325110 973006440 719560562 937121475 941410530 974742537 144533619 613452719 445096099 937781488 232873809 828835476 446458078 939643160 569002974 774978469 56841746 133513218 294612680 798056567 256708873 414477298 116388172 438224833 631210333 760214908 952946087 954803030 372591113 657623848 650442719 675255384 14421498 196293328 115094694 766060265 878967055 887491349 401065255 461240876 522493322 943297078 59896450 348935044 570583691 905296228 373380418 435100611 488820427 873944401 853087786 913657968 246670614 748536489 328734614 474172875 357800513 413737429 257747066 741658627 251581021 413039017 311444567 419640650 128942681 493554127 903318298 979258812 807937529 895984046 528693895 943178939 543712171 838723511 336044166 592166036 354665698 785144418 766614894 923445829 761522921 878805060 693026793 802674242 521555306 865577195 769719903 980157433 844444237 937530921 480515404 703893244 319502324 906803949 496763262 777794871 410954222 455644599 610927425 661656796 131148603 186004303 813974611 940428978 667887792 860185784 704680745 743242956 646489783 866865176 207589181 436396045 656247537 661178037 204928544 932236051 697943884 765429797 350009067 412349086 970897991 984223553 157162717 754677292 704566174 733559472 79143117 666797893 610269578 734474994 294216139 890812986 791326144 806942507 174290846 617889200 521829873 873078109 330873385 938066797 500391117 937119186 637564884 881388164 743241382 932918872 610527186 794632368 898792107 997129733 100922836 823975473 239811109 919544733 788808863 946227068 448720251 968681789 330938451 909477482 758827808 973018526 435773055 760938285 648067466 837671911 771846742 987333108 234073604 324943302 700921900 937100530 566679822 996358372 860880426 987650391 594486106 693796935 739192555 778571983 334373605 695241668 435070575 778761809 411697070 903383306 358768329 388601403 394750630 742299991 927431606 963829744 129719710 474620105 98880436 629161657 103278680 107205518 734128813 782142728 374777407 578468257 644663232 664121125 735405324 915456013 657447508 898380068 365303536 473291163 225194929 414593025 51478955 174551025 271164388 880755322 772031909 982350815 634694340 809059126 721419252 999238528 610052715 985986995 467982253 774134918 720925498 899134327 444428301 815209427 695274678 761251772 298221214 754274287 709710670 743995781 338449876 833364282 225636116 441729877 857697957 908124003 684860542 720465468 521233030 624976532 117466572 356323307 475588524 716827730 277793736 849605740 922960484 946425779 407820593 462364270 193110129 865305727 207695591 711523666 105636072 494941933 702043460 978646110 173371758 847937186 348215558 843774578 578204599 845630675 148006476 793374194 422345534 623929748 957270042 999718590 748528325 988558928 135459971 992105816 893463910 958493661 470346224 860266979 683944558 978804449 695749683 824597999 589452525 667140709 725586365 734555634 832412006 868176752 329013724 992304880 875989224 964251961 624829978 649298878 466644739 981247179 810260688 865378289 219275995 338794253 595858552 952451766 23047255 622481688 255308167 463913296 265315389 533357540 59462421 150665956 471525396 960243451 183429706 832823689 412811223 615512995 237601143 469122960 980557416 981085341 560322640 684975481 222588619 772329866 429323344 740236617 241274868 280240609 1966885 97061594 402900771 844059603 566885093 992157672 618223095 763397849 328209182 793851908 485053341 654932313 304332452 626660410 771106718 994186991 273603411 602434596 58946446 740488169 453086314 459880727 478434720 944449140 745080764 808769578 253615238 799848447 213534529 420561082 468515622 987366396 22404199 933926339 777290015 954440737 802256589 833191226 446944486 726492875 791155661 945483849 562498148 750920175 639319456 648936456 134776110 887647884 398383075 774470849 433724820 740451440 250855344 658082994 666525298 785721871 912748917 924501253 863892168 953516326 267646747 319141080 439825138 789685957 361999222 447157985 750968078 804213782 872360381 917299900 725004299 732822001 76972588 963971168 23705413 880657075 961495637 989287836 500142458 925530864 68904237 471819872 825068064 913182686 778234390 838138964 203863793 275973252 898140821 954216278 837413519 932643313 449810647 566216839 490811952 713315051 246856171 594743169 997674532 997712606 36254953 795437219 951992158 985667980 692924317 835297721 923972925 995719353 572294813 942426886 571335497 821048929 90751142 617675201 660536224 875952758 29186701 57428939 844084056 868523979 287218724 981605538 39968582 906003580 499518220 954587496 827783295 932144056 322795859 955005028 886325457 889809275 790409118 940069236 2360772 281456315 47864628 664788541 946735096 997877546 749480115 880023957 287776621 950491043 159717887 773027102 858737270 870855204 836401122 887343037 356886530 652588144 397677216 759306542 54195621 195283134 793364731 937739472 108409255 206150542 827180106 924201398 303082949 928084808 331434710 882659674 934843453 977672460 95538941 401317108 255849985 465738701 91280769 513168569 433668296 989201534 946860738 977037316 989935077 992303521 100215453 344444645 63555618 358086466 545761097 652144149 926076497 995566528 523549774 995746862 637870942 996958769 979878555 979913224 140095788 728575236 378968163 789171842 720636149 778154643 66909967 361857315 121711686 693167321 579652766 798124906 203692276 446767083 596142385 944466447 525220645 632050859 976209370 999226627 980922442 991812014 991408816 996025052 774861595 845363628 125535651 865987074 526709339 796080253 584378395 781196772 410804301 905287763 191928233 497118191 42407744 124554122 356411818 633063244 747345698 868530442 776982482 861134828 574365520 911852212 664563153 750287161 994617331 999407415 630093594 833646373 41917073 109973184 519937420 569534787 215973045 776518418 46061892 839185113 956037500 998948504 809426817 975592901 601750825 933078885 998609157 998918531 884046357 897873450 464223980 963873717 99825902 232406471 60574967 847660101 77715857 797840286 660482163 887806855 723080187 727343129 353947166 730779103 668752810 736952782 323551062 903038547 164432373 227774878 791029334 834501096 305311285 957703075 110066687 599511239 221369593 977225579 571479442 906064872 578721866 626962748 719992597 879516089 590007272 706825682 239136517 379855383 208626647 839246015 829733379 965911582 330078842 679964938 80352999 393270183 544603759 681728133 359630443 866280446 305181020 338340807 499345570 506949190 171557338 649680435 49032754 301439668 273094132 806549925 643630070 866343596 562674213 880425648 887972981 959107614 581527784 878778911 875091449 945370913 158282243 393473232 197304794 259897327 118534199 141315785 708814480 996103227 632051840 923392774 965778914 982541625 696899215 967168822 201023405 984146122 932913073 963851198 994271349 997785283 760111544 942944137 131609707 482092209 267902968 298325205 354354332 967193817 605731172 869704153 884363197 908914888 929620613 952780598 660966304 794536925 739502391 924637640 626552354 984511901 675104037 695158093 360841173 620530611 343883821 556214149 134383268 155969259 83997458 631500107 137964587 671040804 942988877 980945226 748482383 915591269 294257456 681911215 419648607 452347303 466781676 674249581 149304690 751312628 134133513 538180654 16297812 365879847 80679702 795623480 381113709 473738234 354201375 734331510 391916504 806946698 764098232 917316182 358659562 608031943 632370583 687365599 275277717 589704515 374217013 599276823 912673711 983834517 490825718 997304981 861947907 898857498 998551418 999169715 890065991 901187730 769287015 828843715 585133520 898117494 516068804 728537076 359604016 844210433 797943047 901721629 112427907 795800835 644121370 790907651 253378891 338767736 241650405 552423414 502393416 903725249 89747688 765702826 808746297 820812954 915879997 983487154 444235859 599111322 254063719 763056149 158955761 716280141 863813 141330928 691800538 691846379 225375994 491906626 866591155 892055825 922127442 941241307 28650321 88095247 547411477 677967258 100118221 955283987 718975237 726838716 645462440 737762668 92960104 804982953 971825182 983850233 882239551 901065581 204448163 292212171 872916663 991360354 720106484 901833547 629357282 894872529 267894088 701727349 422867668 985137483 833964651 891244393 474178135 568761938 921589103 967641212 939771463 951998362 256382792 842055046 713979164 820675939 48160324 339318835 185424403 785918327 823551648 992312972 495648062 946879141 359690431 629534034 281150258 453179606 511559467 887508586 714507143 722310951 201308735 453434645 659171767 959440305 562893696 990336044 502683671 659723669 756267745 826328902 812668298 820604540 493696222 909595088 896450700 920078531 616360709 991636367 501059097 540663489 901754647 902183819 155546007 859009221 526093920 783655708 536304002 733696113 789261687 989414961 545585618 876223518 865897826 877422993 375508638 623539590 179726621 819053075 5000648 233627457 342426810 563085569 120366160 250009431 60071792 858156697 131866771 293617207 340113318 801447725 855433536 992371136 900885729 975856799 540896550 688086195 673996429 834931686 286407322 549034082 989732644 990769254 245645176 779191630 587937896 626718862 577747705 743279480 527190603 881563019 301165729 696092466 58901313 420493902 27921919 773915944 556538885 639245717 114482772 483817491 735795782 865757046 187791628 212646141 124609977 243197723 795358141 957037172 489915464 866535696 295035324 339307736 673020626 810935157 926681152 973195100 681733695 696017561 587360757 866383459 902082823 921649420 14169124 117578574 138699018 741191993 325412549 824791114 82091139 859393676 531050322 996221562 355056367 562864851 370186850 666700285 85367089 522585280 293941137 433459837 479082659 723336478 566087499 676522919 51183525 210346760 957494211 972148381 15642674 895462001 948447465 953234070 969233595 995381354 226825385 636126514 251714543 495749342 660140670 958816367 184785416 493519546 229287258 509849028 234144370 904886094 251794112 654617146 320239604 959354736 592081323 782300213 245026363 634675054 666894832 926242280 557442636 665542288 808452650 985137397 327801890 410080752 37625867 250608505 964519047 988146381 596195131 973074124 17710543 271663293 960920945 991865770 371078013 727664961 561694663 717921367 460064847 720647596 603360498 744698716 700965702 781423683 801114584 949761237 605209558 982297512 361375476 519971268 560289253 716357023 862668125 923889796 282865985 541847507 421893014 544197264 140039945 635515601 603419174 984716469 753213009 874170335 642726507 680140142 192985597 500602401 660459988 808226321 801645197 835521435 917599741 918414979 290630269 584801064 104605210 785341327 732779144 870964603 755545515 986394351 483799033 929027340 394727124 668903550 256450343 733190709 857043003 926090709 420852700 702734751 783310791 975880626 716843970 973265012 635656612 739204889 60027756 72141789 168682286 720024663 942744525 972589831 151760851 667259103 459167330 721880731 367820219 901616617 553045645 684821149 389388309 683586260 698972202 782578600 750853545 990450716 944875582 958396620 290206621 999133538 144296130 214675799 936641667 998914678 932496341 963610690 408020107 735313367 188777305 795901952 197289463 199894980 563808428 679089720 298275067 782290691 905565263 939024266 252245312 414177909 810910327 919995098 370302701 714143586 446494408 597789098 592454063 839238300 386701982 978070960 407845687 457730657 338341414 373558504 459450796 646715275 566114541 714853480 934895958 954314079 324424876 805315457 833053665 936729153 288477361 871945329 284235082 340971830 86538694 681504622 292313161 828076460 995337556 999997355 679416142 859386778 426078331 743556421 988895639 996762415 164467228 334147842 424299938 878622972 974387623 977551223 17661641 819432319 439683829 663373671 563371217 677204474 224481344 681677508 615322320 891195251 878983313 922927315 924033765 986086647 126192470 522419950 826285344 860178436 448419772 759731835 785391632 903039031 990279322 994802478 161870308 229622755 592557667 616948071 491846728 761846102 373403991 646294490 738491928 998107901 24296397 582112143 878502655 982205204 747431088 771816625 188473416 381717538 209877799 321155600 847913880 887193885 336085657 513441968 765154838 910769251 290815355 540003178 566058787 578692227 753007144 888195732 427779709 960785616 704856223 949623404 149208443 165669298 787524085 976303515 924199732 937769344 770332088 790626541 468153617 716923183 872601240 992283405 821735854 953052202 139420710 942288229 137527200 446388938 622602378 641270909 235082437 286731334 755857040 834942049 158186939 592926043 339745368 546730313 864095358 984416170 659632823 728586668 523626148 690123614 443974196 626011956 198851980 701852578 43541086 167503462 97684795 720340101 476261523 480535616 535306960 663489169 346093525 935037919 72847968 352430474 122712541 745471156 45289073 242084831 581083795 891089251 637141082 900054940 422935323 581449181 802182989 830797385 951875083 987865383 340471152 693268194 127949973 863334271 973130911 977176545 100848000 526329941 494312261 759721711 524523093 765371260 805816332 945996420 312646853 663355764 575914120 830553755 457912986 795645614 404143155 941847252 80707043 374718900 475510451 897302236 803906585 917962642 183240568 679506538 625585868 944881601 222886269 351201040 786891202 888050660 602723721 709557437 159866020 880188863 33464466 198753450 240248625 558124144 39167477 826051648 583798663 642511430 337974992 960851685 208867402 330522914 636151932 920221559 55808106 355667873 170489406 909630609 740229 931238002 80933588 929533535 6879274 988746719 832643166 957141399 117371093 522903985 775247058 850757623 657064664 717814023 38323979 424755732 864039874 947656825 801506713 805589494 653260418 745541281 697939219 982591378 285486306 582315774 701256969 742960907 104348993 620420749 798073732 999940276 893548393 960497091 879687008 889021852 602205711 984285109 914831881 962307436 888096746 902312650 643035352 820151371 695965084 879447863 927253955 947915711 693512702 813952758 489737175 592238322 786599370 873690601 843924953 907840247 97773821 473187834 216964710 662256587 636285221 862050013 875299925 942188577 470866825 587666839 9771736 892001648 478102224 612566672 660426656 851518429 251906061 536647276 764093750 940090690 167259428 750813129 637081839 994123297 543146639 779556061 827215735 833952969 86577390 971033098 220684354 473750215 727475162 957113767 3973361 180268097 835727750 999780388 200899353 218494939 922203595 929614005 122850100 307517743 200618097 351228955 222355955 915432421 868804856 869512509 567628085 936041470 298421469 437965542 297579239 465499359 809244807 912987167 123567644 451796171 925963814 970555587 756688492 964427807 909320900 967316867 856859384 946932844 911731861 912370259 707876448 851772869 266074313 504066850 631022571 947309422 724411891 848136141 579208868 817666530 978015249 986542318 898521286 908647387 996480116 997622088 567244084 647342546 840476647 874272763 482747725 569050208 372114301 822457283 157869443 287859805 260253067 367892256 332820659 598614489 648494776 908625470 710981993 754483948 960144581 992576108 974777338 986448521 960970584 979123262 800394123 929237828 742112938 840740079 483394386 954613540 471484273 707154469 594136364 944447440 92528994 867525685 213095173 705624445 170296570 487241219 130518719 818502413 832411130 891503725 45576213 341979507 19300492 733583290 861716468 997008721 574938568 855732249 839189392 976655543 757123495 976176829 626252138 912348782 422648699 577403819 21141207 415415187 694921996 869923058 325383890 586388519 944965688 982090686 234855619 756799700 546448616 968961974 914288368 972420459 29513904 614105341 265430646 505281961 558676653 762009393 673833363 807141549 7178046 91696129 752138435 960284913 120268117 245011190 789273348 893622954 699156883 699342962 58511491 858292200 969426322 996334330 921866063 980996319 721954342 753166947 50640518 152746425 609336917 677374178 725402852 794083336 145439339 896544203 558391658 729995951 408441051 425444155 52332020 933575606 335875702 769538942 910421853 944618250 553032120 682229284 819961616 938160401 37425879 954313661 997131699 998828213 594971520 711428876 134996696 544963203 228266762 967419039 228294981 451300593 58345104 496743778 873830977 895624997 846040773 913175948 378019249 694152297 680855406 879496642 843612242 945967267 426663666 615780870 683973438 932812038 278628125 954460749 329412373 972683772 442230841 556333461 337410245 826205852 131211872 616232442 867685552 901721934 445893328 852183249 134901322 586613339 937807519 972588573 858248223 981167284 373000328 819628517 657989196 673559442 733136064 853579469 97511447 835206452 950201604 964520505 160068400 492448165 847317008 940023141 982855097 997974553 679693644 686722372 459329414 508867322 840665699 853371239 976241341 989588321 636305404 827235290 426784016 760785388 960149098 965731003 74571627 505394102 603209915 993765939 900735240 937784825 63693238 366520001 60507288 309082662 586389240 766950311 913987403 943733271 451296833 505263415 496255592 570048035 747042873 811350867 900266687 996532394 759386242 825055135 41308641 563391118 922331950 923798452 845880816 993077441 408785756 442120362 777658036 778057284 817048489 917152730 575849729 920338962 241686202 875621498 317189011 717439787 137087490 211189441 874227758 961374202 247513640 651835651 274402673 536233263 717298406 931685898 929578223 954136341 934142088 984454419 757021458 815172580 830007687 847208367 312784563 658064172 364673825 870319243 728175215 931795266 203760258 939677712 3584630 366712411 294817060 936991655 958864572 984169377 522060846 797534507 927133826 990361174 378512913 600666052 819925562 900345783 533939706 772570609 878734869 910797022 61157563 934142127 563402409 867534751 850227545 934733955 202069726 671528633 196089627 293204280 685338249 708811935 772911566 876737589 913225321 975619204 748571368 773681096 96775272 623962772 34813038 342404157 140270806 158901347 885814906 892261958 365591444 395996335 434755015 455874953 904915408 916278198 905258261 910212205 761979658 998971534 476066670 586070318 660500659 963610209 983096591 988779765 570256980 657879713 223099294 787919531 351989300 986107558 458558506 667705859 564696521 928593615 764364039 819296602 766096053 908326014 519182154 717863384 736366151 933306704 587062183 852008158 461846079 500487100 419578572 998003516 340763315 941854683 678749588 892973141 57593477 786065586 222615053 825659104 807907964 951044927 675282822 786821102 657804090 709834556 715104124 948734497 611260092 838356722 725762543 923309406 518620447 709456324 266365369 996760311 263048818 752247120 665794453 841685315 373657644 901688230 72946459 599555782 475851270 885432419 573306623 677668954 525088854 687884452 918199535 931266616 328845878 672165432 405324077 967728274 931648440 934025507 333207685 715069651 250933568 254876733 892457608 991548391 450864618 845865504 529041291 549025501 317643871 887810333 974665887 995235574 648163547 969684293 560514174 999652884 800671214 963556926 915013126 915155409 756383648 810594746 858958151 942527642 376565330 382198418 29704960 514365553 359477414 427099757 220434233 966109524 225414997 702931263 705406884 960498209 708688465 905262184 378057144 748615254 735609910 783397960 654277667 972743326 310954426 393062762 71796803 747712957 640992833 710461256 921228978 959422700 977599053 997233278 659000613 933714365 628339420 910435600 563547556 582438975 215834363 923996752 578304396 916494640 403363663 446445058 519285096 736935991 686490632 730435885 736650444 960642887 640578381 993619584 30166759 820910752 829479700 885952275 796998348 971327508 388282570 979610984 40267129 265150688 971033275 971453042 308350162 948557468 704954095 793130407 174003733 369582927 308055706 641106366 624180297 675277304 423157088 758895338 621293664 814457483 540646031 582230150 713415197 829674071 320538431 379976129 255203701 386040446 217109158 360830991 899636357 908067165 787537419 855358850 836304620 942057688 231413692 855609571 928138816 960265132 602344750 956349014 102546893 769127747 428091631 715201275 660684359 872044264 475122637 602609579 290068532 962251537 570881030 713545597 902393785 907373093 341222624 866918553 934140231 956344721 668036657 859489717 84895698 525652779 205394857 322914036 31301878 396618064 465930666 810465321 329823915 929818048 720453264 784492554 99191609 512793373 976638155 986605002 315935730 508340130 719170341 726373638 424538826 661339887 188375917 718186557 554661280 609004312 169526218 623994625 735562711 780698849 801929728 834190520 847871821 883551395 716946172 744229423 844055478 858148843 523000219 616737637 459949413 572693931 423446252 698677759 639096351 929365005 817754643 911973004 691589175 896269320 637318735 757147444 711680109 765372130 988138983 989531989 92452983 400228262 206663911 664935587 489741485 785772146 312088400 899762601 406949870 498644191 171874848 301094939 663270749 809161518 835320046 947150234 144497355 232666798 468536921 760717541 143418001 549786813 550031547 884745064 814063181 828845071 537491295 824902629 891610174 981531299 678768302 736016751 318803266 629693256 631679663 650852351 616155859 983803919 780261958 849398200 383857758 967427240 692146209 876924464 152509430 328922662 308325041 501474113 267364105 400962922 193165849 956355743 804375289 957848236 373090752 760895523 93093995 314852397 379563520 828489780 661505911 881172986 464567724 651373198 606854228 856240599 945594384 966855830 444852870 732417018 78650782 444079390 31901660 765116631 751666430 976609277 757691879 807989400 290134949 735225479 689369400 855309595 874278669 882045391 754688456 949416649 874482695 887100599 391486163 621141625 212340123 767665274 631760449 969010145 117717381 627851045 40599894 716009591 218438690 920240874 484022671 531681865 385530879 519423486 811724007 918107082 151941666 361850449 397191686 702264951 60161382 927584053 990013532 997812132 184119991 893070846 700643526 944518857 444123569 935912595 405754978 513408776 189562687 571959842 844769552 872547280 820386178 915228599 142171204 325311923 649672191 983431622 361016414 760657155 272208562 549321467 249717494 417488546 167086634 372762723 661924609 858926890 1990555 972210178 808746820 945738664 799405747 968390903 767965014 944977933 599602088 877529412 247288735 648392408 757597142 809194500 54873349 992714374 329543925 632723998 931718056 990406747 481772490 722687940 867110404 891659550 667876821 936723052 266526519 800574425 227713199 905772854 702335721 832255590 175225300 489390966 580545502 588936890 328599092 749458745 504035780 643797448 82417044 723641218 767898688 833490672 818578853 900278932 358360235 673093772 87515184 272966374 509096433 952660260 609023245 794790334 829971195 984516909 6954135 236617754 973631506 985827442 854982174 917322504 564133104 831056709 100718913 545684487 372366820 647112568 327043389 856545895 80314118 829905577 246624562 960591177 241472871 570244346 714344180 922544784 658461579 893922174 606677083 709906173 237635949 785400496 279821387 555533211 927071202 991639816 711175805 774841692 279970888 818343083 850390537 888365418 671719127 754324385 334857264 488090178 924384713 958823129 316348762 702796602 104325374 830714146 210857840 625684102 332471680 880526211 808339766 841581289 346696509 391805793 731635628 987577335 600325687 798146969 439548891 584217819 31814514 35212013 699051198 891775851 959517458 968102575 416361145 554910644 717256462 872706005 197445174 559533339 67498600 269881058 826000852 925676882 948438295 970325605 124548156 594690472 434037710 889801756 802014820 913799330 311556893 431343486 530844182 674845786 963708573 976283017 998763558 999394102 459915247 854109638 217520211 799884647 506677894 955455010 519439290 852153990 809991263 992020812 791458343 979730535 523429241 912542767 749296245 920526810 603537210 862983748 225637719 611030106 260854799 867213892 982473602 998163042 128729763 236328048 49451388 674560268 895291338 939485660 996588985 999822044 382379902 617746820 78461068 782545035 281341611 770825353 893623643 957105557 517420193 792311219 815628651 925869062 880173766 901554186 132815568 495043495 764247183 830842219 902165618 919005841 889617611 894806511 999372089 999770701 572746575 880848330 372299784 405570797 100279024 990473455 933727364 997481150 815523157 816383805 672842593 746175739 759250572 920257767 693562184 977838562 683001944 922402146 495632318 885403297 818918197 924032968 739859172 944586304 326678490 935438186 861274016 961271449 207595643 395994929 961264471 961387861 400845551 932405876 15231615 857146873 700354872 824304428 596901690 845982652 793629198 980388471 836938231 863390949 639325097 730981323 789702206 881789354 160752402 352295758 369922025 834378891 514843907 984775467 129761727 536996527 955379748 957638413 95145925 309469083 780010840 886035496 89842032 189704164 508701188 797766828 133275753 160049004 82259818 635346191 288399274 350945161 54166519 799835348 927171856 986901097 590814428 737330791 625676941 897190327 913306193 987548102 990925344 998722870 580265291 600211891 875142193 989052729 171699136 386263882 995729030 999303443 373318714 958216658 802235761 912805260 798439502 930032696 408268032 580697519 479833507 779778023 941488339 976839015 308778405 505703164 102349462 381342442 995358355 995708366 614151705 811652776 881797911 935582212 403716851 634243593 414016010 733719399 103023927 755713686 987787904 995424777 777721167 913856117 420380115 553078662 202491190 558174619 486780447 526049035 131832113 425443352 371805323 723131247 391278344 502764541 417216757 831045979 7983388 284545846 971432957 989949798 984955828 993958055 77443760 930962291 647027330 698603667 203457194 369626024 420087198 494189724 299100426 992253032 355009189 574770527 485691076 486182136 464717832 612102043 558731410 855263903 813240397 912138169 133515929 981469453 356740125 757316799 618517514 818596163 910805801 938291555 355161900 504845258 37912183 791461690 346023937 876967371 133475485 152206902 575513722 737958953 576625185 930468997 559494656 665966506 116707804 889370657 72474209 462975333 928068631 998117320 624639227 836572447 715791332 810760578 480402511 855406245 147487181 500197131 154938975 630993204 207744248 261855004 265514172 859764714 661492801 837820242 598083765 612293052 70163415 811585176 525398716 597462265 1627396 59186559 864074853 995784711 145760613 861966263 433549689 776390415 820390377 919246651 382718210 664898681 413073857 757427492 906035269 995395904 848338659 864160776 518766566 736999904 175299852 188145312 305488273 573290796 917480588 919894336 124399347 384386238 311092378 674312870 363636920 548383511 569806420 659110426 151549224 727402415 916581106 974804729 90419074 604786053 954618638 959137509 350047816 413123720 616165869 935596538 983205898 999991566 781941329 914429093 43010612 848190329 156832633 776855640 992162434 992839319 613232367 624328863 649959018 780131779 908573176 943066268 468234204 904487220 761623479 909358582 11826586 642424742 143136817 576466317 612650050 857665818 549571004 723874037 900894215 978995360 236796620 784850529 20038681 186409014 562929343 870402744 546908877 740396948 865565998 998892766 857488120 982958222 375810811 615567063 86794231 491540402 605835922 765556640 222525389 542095159 972089905 974656201 618873310 743403803 57743482 155529687 884361223 942651923 282339983 376274142 159150760 955828742 956455315 991521658 152294782 990951007 665610197 818514821 70421354 104807377 247671683 339785235 991193503 991497033 977994829 997053770 395835900 698909091 678331440 889008482 474699722 729672472 171154619 686732007 602140630 689689064 493194199 537517466 408212602 753904257 255550944 484223136 291203666 461210858 477781984 594120035 579178197 770854388 626053909 653658710 406365 855044795 389729822 577130830 203621523 225401224 971634074 988097948 483872287 749781360 834176976 865188463 886530419 952755820 940298562 985486836 55020043 242256754 878096593 972911484 44195656 723483789 708237835 708949095 526692958 655533544 311401092 531648143 819964329 970805146 673206081 820759591 554528796 795962049 141817594 421307214 192948300 489383590 426682776 909932620 391770804 983706696 66371038 412274646 284084452 363936269 276352586 500315193 990646118 996445660 708520190 913655356 32194591 141581056 260581210 901608503 636852236 714374987 315998049 399668717 571268615 863139696 767454049 796589007 381958075 688229063 701477314 875745606 895620150 989242704 222771819 843015440 740079194 945812795 836857332 874793028 363059028 932016414 619749336 904872062 393941685 872966516 515264840 571899360 105855598 272963379 981682580 990488727 664938646 875707604 667605621 907141157 86996113 756417011 576184457 845571708 788266746 794898582 886855971 963120407 144986164 176570261 495176090 844087545 475753312 578550989 557378399 902552659 201236674 796277985 285414947 371860645 770512518 976325843 492224869 504216473 134622867 165384334 896446063 909741672 266578938 992693403 343490628 657305220 663057489 934109873 967348451 975035444 628321142 745620264 346090326 965404266 837409291 981558327 104806207 265567527 441738052 989134832 632129978 785197180 786314146 956867978 940315361 994115285 553393424 757590573 351935318 549845812 792493957 815553228 59646665 446372687 128324579 766015813 975261810 985602252 828642749 898926852 518717537 803952861 524948729 729536623 95587227 248023796 460079654 721295289 951110663 966489001 747833843 961192375 930496296 966974012 347145281 681919035 95289195 97973829 313798198 405321149 29109801 715991749 561306003 699808955 493838286 535100063 866737223 940158382 688428967 873439175 764352229 989023680 534597930 883158575 963875256 996803538 866224294 946514544 928174998 954821126 136220477 711664552 335959888 868223792 267469749 597051046 373693012 998276431 629991647 797305089 953898683 972127005 69030702 392163337 875457478 935811318 431438282 493169156 465983054 558657764 830993016 840224707 895789128 909873050 933438490 960980092 586056726 769760436 53259675 805250389 884821861 902598058 434659542 640587485 354581614 456381880 222545903 848306708 909596044 984904202 337378444 860944479 139105323 310071943 947424122 956425110 704989448 972184399 100059159 604726187 547808262 960089127 934163323 968198867 241848051 422136991 266261373 776408361 776400356 781397108 512041477 527265263 895129365 947725142 125945112 815357434 276874844 620621900 522995877 970022945 499855391 836796292 466758801 525168643 327340040 930223314 126121514 759203889 665577655 945090089 742627467 747938324 702103274 783062988 68991086 469436915 754810 372016456 791224137 954667288 294388748 831597592 303941376 796876243 269720166 627587621 273227519 426192153 524976561 767744981 578839536 877463382 492598538 935800644 475133845 769630503 4029258 513220850 892852825 926202590 483288076 645926141 485589215 901670214 726175723 917074149 473094792 511874243 778449894 854119020 997928990 999322157 38936504 126092794 970323226 996735573 52548296 382340798 141129633 550766752 797558155 851229896 619786947 770788959 162600620 336749679 326945733 606873462 119952131 581274598 898550407 994710668 998107908 998613349 264582771 274306291 561414701 957138905 529362774 543940919 977304652 986094502 875442285 886950293 238520881 597095845 25614034 377907309 69324508 675930402 351893550 784098281 996601733 998542954 661550729 871143953 158386224 285728718 685325559 907746499 471549903 721161928 429506767 542222346 759417177 810702924 239451217 365883328 896957272 951567687 390976541 759712651 598217018 810127465 698091682 704957923 610174893 719213016 72288632 167152714 798189524 992412756 118632732 526924970 966188174 981644177 845601262 975300939 79758215 131556202 373155019 557773465 7087932 144974559 508986652 877184682 657932149 822395270 261115597 798114284 641649095 753465500 902108589 946774979 735270366 770687427 111679156 460949194 980574874 982693196 92678061 627787614 451202564 573773844 7488340 595254873 693023266 877169263 197788176 851878196 748238192 996634224 196940751 791131736 302923737 511695065 641881183 853496995 908884844 978573845 644935226 813073399 488862595 492118704 62358822 215002889 329782591 966828252 761027781 893891006 599537723 723617578 864900772 899575833 119537304 604362392 759265850 901858030 962258135 978415570 826607037 867270342 578755988 687386219 685857084 714630322 887975748 978343496 817478996 945143582 507961217 861257958 921365233 988431581 16842555 866183672 13182991 542342401 513885901 598264963 318062486 358933497 703934406 727660512 605328183 661280923 142859956 305288054 817029357 895472613 613499872 923175541 10438617 835411787 406886668 810158501 683980285 990253390 988600349 996741713 580306609 635801206 786530352 876782446 514108074 954145273 856957012 904486857 142146369 169021438 228857039 368967828 957331551 989367964 444901847 569626426 994699353 998149578 463548685 760952542 43323679 812993887 223365081 313525244 377210209 678234998 222101594 923448913 867334775 995922289 398809717 744795339 526151961 745419684 216828330 451089366 522961166 588801044 324129596 614932900 679107138 880467649 466999455 913150390 968537181 992952961 477768355 841767363 33715169 858665852 105977243 921360475 809079058 865832030 34131287 86851845 665944498 966595118 591952473 600543759 274050548 717350244 420738485 599006113 874416938 990794234 626184211 798313350 656308986 984691807 114640666 505352577 590305465 711145034 346649311 845882045 371183217 659998421 713468971 794996493 642433174 938714066 527649497 917650273 868088837 957828057 891273605 938389262 587639389 683249386 354234498 851093818 561234017 638886877 52357144 583199085 959325805 995927244 371839663 717223531 660487370 679459486 18395192 815706798 197073011 793163609 316999270 481978852 453304787 812736484 150697881 550430730 783508955 790848458 942591181 968334187 507885463 785220088 945488396 954315047 511029887 758472192 739749693 847124550 912030783 984940255 501077247 916138534 9163564 105528248 877083932 951338144 179539908 299280333 48092904 602515286 967891103 970561004 140709650 613538565 940576344 951825468 925764974 974457745 704109167 947243535 280218438 474148098 792530747 997525979 586683039 858436646 331369748 671958178 908606611 943893131 320150808 470085721 990104781 992655343 364631164 866488940 180267332 694172318 409269530 733971422 38022587 278488918 298725103 387141195 190899072 874755664 706266551 906137264 840205292 968176532 755495378 951043881 730705263 735501863 56286296 950485051 247180026 466434747 863123308 892182609 696067812 777697141 80811410 711565341 876088484 941623717 25329287 766392157 807341760 899245984 366422968 732218541 646580546 727220206 795882892 875772615 918568453 964119560 637844206 864374705 529033130 772012402 355218443 903005795 68808511 797110590 838656449 925531273 635270820 929068525 209105731 562479014 90772924 200872687 554663324 822693036 271590893 642289643 360290630 869594449 738439885 839225673 915455021 962752235 632426603 975980383 742692735 953137313 188565665 801416640 822236153 953870827 803130824 857992976 686823096 690631935 942183402 995045399 658587552 948411645 838795116 869960426 730385194 880390371 364463192 730098184 871907384 996702118 875914662 892871041 540540448 990904263 614083413 641075162 743881079 961165019 585244268 643151610 366835390 954093720 429341508 907187156 888723014 941579850 790277638 804854405 418334859 796592175 916829211 936318259 970824577 984427424 781822765 813176575 417569955 786032897 524069290 576105666 964684168 998666020 700896263 924627607 766528391 815194513 17489370 253176325 533482042 871824943 330971641 992966951 635607945 651852329 704613830 813065624 675171953 855041565 978725719 993984256 974830465 996670907 689496678 764437296 441477428 583005578 70797592 847770255 127726743 572026814 125676289 816686211 6387582 664545882 301587119 718003400 571345682 782354765 12307320 832938110 23972843 499547972 919343094 938618214 537183086 871517981 361622326 659215320 830585710 838625925 604928953 707104619 392532905 803159954 863800431 938476065 916489338 931971345 547336250 799523091 591059209 820200089 275891 172434072 325968206 623749938 657750753 672028856 959963934 990650310 104385806 201839046 166276114 311506053 29799337 537066042 669337722 977756185 424669196 893310681 952471229 980941852 12679039 818774877 559508812 615086352 861543436 930847626 669536526 946861832 578467817 609316296 820593243 887076928 720769844 882211186 775913540 968694446 368197405 529240422 659151055 862843605 66746902 481628418 700030960 990900289 572570947 797634920 380815734 451301822 847931414 882258002 607134880 777645384 673340866 674621355 265852758 780366840 914900149 916143816 446082672 682399650 340010636 987790949 778472153 905825846 668769980 923202283 952945663 998584433 988923619 992744970 496769727 698627395 765126140 920679026 884515234 952093122 873329959 915823452 37273083 703852304 283200845 842300143 225006769 311581424 608592518 994783848 873056245 970485844 221648586 658338067 101896498 179909187 47282101 784500558 307625422 310640300 542984466 998817787 451218164 973597221 81227620 151534872 170944207 298931409 1672572 285621054 310968326 968651735 477108662 898468719 989515075 989583443 742789231 947908659 16435248 421357520 854024405 997535472 214969614 402086796 132523983 528286655 646845397 962233507 506921818 514248202 533642341 710773130 362995239 623416837 645997312 837435789 908498975 923056201 42458767 405707092 314300833 940159592 675998206 693520606 626592517 774423329 728163456 751423269 206942221 311371751 964829574 995061209 123821022 524030885 24706013 813200060 778203068 876679378 64607952 456232506 922814649 981388236 717931321 901989038 333249191 619522912 602672652 885906512 518595251 567918403 944717000 972198269 657822102 849671837 417982679 882140023 315843428 753951153 598039978 679369010 264703970 852714309 445738182 686827789 79578366 440773349 348368387 396474494 277364493 831195309 161388503 289482936 243583863 674727265 950381180 986591010 615916397 729330332 240222978 315790763 455155182 538974724 523058950 991024770 560320479 922210946 666557065 874128526 265910091 977053397 391361071 494696934 106304421 620348322 694166184 987571792 783983810 908230190 929668224 943286790 607224901 914279980 358974050 744590412 919087096 958766079 984638860 992369869 328706325 678550635 512937188 783451846 291173713 496315449 463751314 995856026 100769969 582049702 245444352 258167207 848944075 914320028 289249697 991530424 668179241 744251320 774565164 841191933 796921921 942973445 441461810 764200881 867787331 916983527 492528010 581369239 620023582 809916425 901712519 916512914 906146302 912856924 79885702 542001846 68439719 836465132 956522259 970186388 315772487 973995099 786326118 818069882 845722980 882176228 592857751 981129258 189899644 488116585 860164772 865839776 442758322 757604911 601637072 680535887 899791407 990642467 964684603 975099868 20076438 520635886 214777451 524572347 848263345 988215022 182095842 622438433 50415204 992852983 72201089 547964746 912029437 962866018 895689791 981667074 651134553 706625472 50584581 960364655 824012950 975136668 787569904 922472614 593942562 896278531 681001118 895108193 855821576 867017976 271892238 946122343 195042269 720875767 555049898 762389314 574024707 674893165 517629450 682476045 195069437 654318233 469842079 794043269 645584027 920858650 55411681 826691809 461745221 688840701 971915132 997766807 615627226 740232363 15667100 571810600 569777957 583643316 548598567 969034228 270998290 294229534 581282804 935766203 813098435 886320772 458603872 806890111 527706460 759922235 155101124 682370590 713620360 897444761 617086834 644790431 616094152 886673615 339409290 744846309 925271373 955547448 826537266 933939657 135337575 264145257 419512750 727953631 600403720 622552617 945015694 976928427 820132285 892870157 727898441 965584385 133569805 802998875 675025306 978177154 275893362 289198303 790549882 939945081 926652687 942501354 417593899 801432226 396759563 399358930 352353011 900778957 745495437 980954111 480113309 533351601 215296212 448364132 728261493 860215326 888682116 925291281 908845720 984309747 411761296 730403552 958588942 998908056 194638496 412670061 197689119 719845322 649891712 864648540 190298398 282883976 948424623 957687872 105869768 532517196 702520756 872791702 782214693 918040676 38569008 186721609 699712962 850380492 534232843 718812692 938543687 976359031 580590706 841158427 152279135 813587041 920537731 923256232 425415918 465310513 800502659 938797559 986563868 993031641 933351184 942020516 473368646 804107138 887673878 917726433 34774236 380571851 648689269 753557184 29442053 596849927 445024146 670875258 433570154 434051793 620517845 994643991 813785969 944476269 911256659 988877201 962381074 971424343 670254461 939998648 427098939 871687127 42294085 132166724 555893168 577006054 890615997 939441769 991595918 999367887 492729756 886424241 114338348 534378545 626897903 947547360 734634994 782447567 963320725 981087738 952531887 993187083 207373337 742349894 624170765 753698457 212023711 766608773 378380125 442138240 81687499 499975390 400006717 894204892 436885225 874746619 595885430 670664511 400243549 726639520 137427289 730585800 301964942 946706819 857546024 988075866 571012457 573371703 897409794 991502934 177284676 649349406 439691975 697048785 680775454 768990106 253330927 864871952 931763505 937914753 956145929 990275811 680474782 737913856 440047486 505969323 79815520 579807129 598939996 814612725 221368615 273479468 22666751 43377820 50977005 237060235 672862308 804208391 310871726 316789633 435168285 583838681 827671686 861659934 554058808 826897691 656727672 946898457 430385587 453436384 824873235 968063010 527569705 863272718 928485350 975087819 328815356 791103708 498205030 670998972 941014258 951312732 388125588 490366518 453304695 508085411 466831276 611085830 772870714 921789158 298830590 726731276 92821857 142732957 415121656 838149426 884266428 972140845 357553038 773794270 383104832 429032126 767522577 975263641 399429641 960756382 140848886 613882272 646671620 925461002 954915853 957212998 396906581 436902599 61160511 891070644 60727752 721401563 116208740 406778275 198572133 273939701 710639148 888727286 883606294 963571158 981110228 989899921 606263279 773121836 561953591 607932927 69304208 345162856 817423514 867365606 873710060 900878613 4109038 292747587 894437902 898553600 523043149 958253842 580335661 797883819 458099412 686756555 367386288 524347718 377854623 949943471 271992804 466645964 502970291 705612486 611308285 694011630 622588332 889542651 727062143 993975118 262458135 450005909 799401556 864005097 443640594 664885591 174007744 242485426 887295570 976248929 222149213 474729495 961942445 975560767 193330464 894719358 670294984 697404816 765012724 767887839 712378555 828977342 410667482 885429069 383285507 603134726 590937344 981711619 207446005 760245464 110592108 720797639 585456707 952392165 395673545 754572394 243848109 531385170 859902853 955903072 387424682 446277489 152717931 734368759 703139240 924937588 670352118 897256875 242268090 921723986 735614719 923798526 133007742 987103165 538960743 825887022 824793539 891511676 334781171 357015157 576863130 615211487 435753651 651272754 5390300 635630967 167660580 715912457 230619812 929101352 889073633 998533082 838246110 921448837 68178942 483195559 672949429 687277115 905318919 963914158 660261679 922920923 134443994 850536099 435934665 853336630 74282752 326153246 271234795 411182846 36357100 118672516 344436864 898749303 779272321 885504393 298377762 855746478 513712777 719887137 709649556 778705072 571171752 860369159 942093617 994374315 868651075 973743042 180254568 431088151 968574183 973519446 193421718 363270558 673447025 703745946 203566480 464341941 193186399 426019988 757155404 896515796 499367878 937757497 115052820 383844532 468499332 486770837 254894109 382549322 148787784 332322000 920533570 979209592 999840549 999983165 454199762 667570518 693926898 842164205 415409184 653902570 662971765 819782456 784438260 825069838 596100015 824991282 795719279 852079424 19079680 135539852 655559588 937165768 730691406 812406753 928719536 990681853 93786013 156058319 39417506 895331054 312825348 939367895 38676354 301470585 206511129 941267364 982547362 995614444 57656190 124551034 652211896 878733698 791290426 874751367 472772082 624658978 666027916 981790438 234803407 693795381 417122653 923180920 707202253 985714936 840313455 895444007 112305941 808607235 591584419 800812391 343362824 692972511 213420058 591223106 832394883 997853938 964296695 991008048 340166698 839107576 112029694 145688735 826085527 867458792 488962579 651141264 268934791 809131468 807033291 941049102 237042787 890736999 833873206 915136663 474519504 892012597 933899981 940282692 688030382 870939415 23839328 517006970 242636500 541669229 38245558 936619363 173330990 426714050 816005051 887107945 872944579 882015054 655346325 871735993 825648909 906590392 566580751 577682215 141189937 214140995 395523397 557669291 167501560 248992207 631962326 694384246 702986830 759541055 479633542 940277265 17224812 702586580 978924992 986890115 22283693 328402521 917486588 918508778 581931346 602875930 921116508 940420065 920102581 974596390 951253780 991596831 255940936 458841992 627871404 761108957 31680561 822467724 162338623 921662543 271847101 962739204 694029218 755585229 535015016 856388993 984023046 990269770 667725552 924294680 649028253 866049968 948979538 963637948 102890030 189434213 845231329 957716742 760720994 825387542 963680634 965187601 554469710 957817103 113571562 171325061 693577423 702219407 66967352 670900455 494275400 715241815 53306083 432715744 465513847 739716795 225223672 558188509 297901651 820035713 948500931 975955758 807940007 887995323 854668182 988825285 623989190 638055762 269989178 765633121 158744731 651544342 847215527 873477901 346585911 612560774 877446151 977515185 880497364 997692606 196852904 768742728 477441437 787921371 599124649 898904643 845733578 892796503 104664508 648013951 999131057 999315371 422711344 681918170 444915425 923284673 712084145 886595687 466684345 832786336 802731354 832969655 188336011 402095486 947719705 952319268 976798987 987088634 714595022 980195894 796588077 853311093 856627498 901115048 783791005 992075538 699308415 918055509 729769735 915439444 99359359 668532605 554070523 925416084 582121408 624442029 803576419 851023718 523890181 953686723 595950159 862604317 133003939 649402391 374177034 802938511 461787862 510142190 293618787 461739835 761780474 974825456 754270232 845854885 14292277 458512227 888416534 957202148 760204797 784571192 544713550 866373770 166278458 915273941 662965246 962967132 586670219 691208756 565715674 881301232 115178112 255928408 657293307 894673962 25492656 621185038 795591019 966395635 308801026 522081938 538740148 907347578 165084555 637348906 257726965 947708029 830913217 937145332 392487135 541920830 111048311 547891332 519561724 936191064 234542298 875864903 798221021 937148563 899442375 899604189 617380949 784377036 413317699 488982877 312155017 729972978 188831357 901019111 218134312 219125767 203574987 993017733 391299931 776915082 985230184 992031845 139202951 348555704 614734360 978777702 73761411 660434656 393383578 903789809 545569879 628576305 246887300 275117528 824452510 950179328 456688074 724345819 543290000 665875726 173275443 660418229 689787106 885658161 608833834 645555134 996617556 999760087 760236983 911006610 145821386 367795797 897105889 908472293 721598637 834313378 927976627 957491944 536338818 723166618 3158278 637389234 983418023 986643728 510614174 642161422 3599773 214246196 976476619 978553068 323990845 358666517 728897673 826444265 591434283 790534115 35963271 662864111 319630404 339016320 106445130 916742095 969481851 985825975 795363815 971342793 967213285 982740761 877524176 947245526 259391115 804882152 669359209 999294516 222328616 385933160 183547258 367749179 90341198 527730506 983434200 985596104 186273529 224787137 662876820 800837905 12934955 194305366 715913211 825235313 958045052 973637513 327013534 442829947 528398726 577460394 995978272 996087848 683620494 891680739 110819644 605797780 210716778 906903661 400798600 875037429 121970387 306885445 89655674 522224743 279025000 513923617 244732713 968701016 119316467 811772886 503604442 516317315 110269626 739594317 238880167 551341589 751957006 980958463 592915371 603297661 178384963 267170449 752626816 855967115 497317467 999679376 800713543 866674370 264454059 510232591 595753548 680612465 427135835 906675049 502870320 743895341 837573442 938115180 778688570 908278670 176206649 193170804 618930766 990214530 985517508 991957630 665539164 955060779 517271850 837872814 826775093 984224232 847198679 911527456 7190590 453976249 727015379 889634836 343545740 353320125 340232749 893306347 76167216 993715705 436642636 911252300 389868737 959788845 580195993 927550077 788977571 816336590 12363496 27119124 994225442 995659172 412922509 995482502 152752129 559948911 846328061 914754664 685658981 820006651 97408965 240256279 187251452 491680260 31556672 330445389 897137766 912999019 287401989 531257912 714597044 945198917 997667002 998777397 315386065 724871666 741910664 969788523 501309701 556927921 513901110 521471887 409389086 812171509 379959080 839771220 606502535 632975024 640517560 759496365 157394676 645704854 696883430 759648433 530418921 983144443 86150692 998389798 484957915 825211566 238365395 287077317 30098858 628258187 53134028 969812109 186983112 350081097 371415837 927493488 329507310 536564536 266237085 322349791 83894334 274096616 270246315 815441914 968956454 987235464 183410290 550116795 106910330 946614707 832008556 992306772 636020365 962707213 527290295 995884187 42481430 419183577 844351294 965691325 731011958 983858457 287852097 821875594 868517177 919977458 868033975 899312582 456461277 583241709 756631131 993636132 847533078 981804225 624770068 783816143 290428378 317566240 99723131 139509636 200275416 271665444 517787025 937850533 325912365 584818428 765422007 904435337 97926375 888494026 341498818 651775144 931837869 999521548 946161832 981579196 946293009 950682904 920937636 928172876 537927302 596671600 751221220 995882370 198397159 563643310 810591805 887067822 138880758 297190801 344332244 496006290 441377326 747988919 425566732 606475566 568580992 865483101 276342352 629734605 209309819 505020791 294467006 649939238 470954065 827163848 880444215 954685097 538657069 624676375 683120605 934253855 382514029 482054171 939812693 973909054 724043420 765183533 542495 460153917 81987151 191474410 67977938 74733762 323525121 342474332 426951315 562367085 808839886 954637653 212195223 409550528 46409716 322357609 426178541 525555729 500060604 714431059 988433144 990843828 475459513 862321737 772136282 962702381 110344815 199737261 688687746 700863489 639280219 692185902 662540033 936956492 850324023 951823637 644832244 662942989 431309270 614163108 634823666 987638483 108854919 155836242 333189831 861314860 688753297 847654775 787873129 964260946 904353069 991782445 550633044 968329469 202671115 321518401 107020022 855732294 801539196 897473016 808335889 965833404 892737564 911392270 217304289 490726574 354627219 583915364 718887958 775301299 518253975 580800906 582682080 795832705 529330170 966065844 630333416 882866211 273039174 370309938 211802612 369858742 80953074 915915322 334098336 382075006 484853956 584736819 304508776 466824838 732381605 858647433 204025954 611249023 719596547 862787460 28386176 638895108 876017100 935248092 93787366 540565146 314854078 903192780 941411908 942065358 626864733 947706233 418108905 615873500 436983789 885039041 361365567 644226008 649308765 713017322 724763963 976470039 436310258 594394933 596574264 831512450 454343151 830888341 377984940 831124424 451325739 580819429 515809574 692842275 292458588 750225986 134980284 459587180 468993624 816708982 245891178 707841626 521222762 616035857 638138351 901004257 433867000 818354152 786777901 894240582 840041440 924493111 611396247 757948285 531451907 620323386 953558962 973107691 941341059 989616316 573837520 889680764 138598054 286832523 612292413 829829560 595523968 805236605 303511275 982383180 563432552 863244809 875861788 980459636 87601660 797547580 439988196 662485659 872245283 917484915 230171921 477594296 435325330 463302478 371318968 597621810 923185413 999065653 752731932 863434586 418719026 961509958 691274680 700602926 429433361 895687360 143181247 360924407 176049726 811793930 610424317 787663213 33373469 808283801 719321527 890628175 328895067 389576909 531636626 542999314 598264633 630627523 94305868 991461832 888916042 890736936 549965526 625804198 886126401 917400148 95807953 385247169 372305686 581172776 944804978 953222840 792636872 969388669 675873233 689306634 798648852 857349617 734099157 912082799 956982295 977120039 595731140 718780568 175513894 881718327 684292813 836954871 745864171 831132013 230200179 267246487 253086332 459263463 485024960 770497508 888016530 920599982 119013123 388980528 965113672 969201258 648281742 768074306 32516952 927275318 228955355 363208657 244363037 355340840 120292724 392377930 421825473 713433035 605070915 787728270 441983594 798804198 218875810 399946493 997035962 997566867 512298091 906024237 724967370 893454289 929120927 985283808 863609333 925017511 149447020 391810372 784025281 801972048 904268038 908919104 903942161 920984580 828474080 874725509 223333787 246680802 471816563 961326589 111869686 737134580 896168560 976765123 838753450 955895022 754399349 764508144 144636067 293619913 683703830 790592122 888353436 954375173 977500058 981532523 712210329 760352236 432858810 433451769 165954842 554003942 301555006 517737220 21288616 335485184 133445120 933697029 958758960 973259672 888747538 923210973 467745809 772447248 357051983 696367933 543947430 619531907 395254333 828620287 437501239 963908358 380929708 499110764 883669946 975393358 170913403 174679155 213395415 547333063 271797916 301864883 559557079 884517131 44115982 825824932 314253338 748833610 254210641 978522314 123000605 970125888 746993661 989975862 100518836 170957827 357748584 476129518 994373854 996225917 233618521 443582767 124390365 295444869 732325725 871946532 568786482 699257817 921507750 953567404 829009386 961580200 184557893 731358725 656814849 802384380 349890134 385008068 299954633 820972537 314353578 584854001 506898516 770455002 219934574 683588725 828936685 838302357 613334498 810164564 491165969 516141779 798323131 856869872 463584503 692424838 646131579 786570846 54655825 780981067 214113492 297002647 45550227 461465616 10792882 283971305 859053043 900942703 1589985 158371814 183823745 889115564 605742437 622202453 471883685 722710161 31581409 872117682 508424404 676425274 711549081 947978690 647940631 856810563 11899115 331331423 56147928 123923781 728603384 850210737 280581017 664909271 304213557 889779233 250447829 497966950 418739438 835887387 261194118 969673526 80331384 479017707 835268694 869268946 38671692 533428178 434953137 527277976 63951537 651777819 756753100 958173057 317431714 572165290 55394710 347462138 865015697 971182734 699568717 984171483 536647222 892723496 694346323 761319326 408539105 686067157 81091782 996591554 434750467 837809586 466616611 741480253 339392110 851005677 82933594 350363952 863832072 909897947 842981743 966401873 99137558 366893152 42147160 584195562 657027296 916928025 598544336 784999205 961581208 983056875 920902055 937554013 209469104 856695436 997868 536185907 333983907 904965813 444410445 696421909 113614741 459307612 399716659 616653395 867452969 978559516 317051385 648869962 42125634 494543193 194976512 677219998 170765108 933633412 537378425 790773168 354755598 879068597 113629604 646442159 204357446 938245569 784246076 913824550 693312398 731691713 301325018 913564715 746538142 814594298 638510893 912946638 701509389 874834796 764248891 972953729 775036377 971656124 726909770 758576934 55814721 296052289 252223994 626586198 262054382 406289810 702152592 910545593 5249903 88678973 776055144 977473218 872893732 971320807 206391186 768958250 822975938 833415853 184823822 669555132 596026968 781503881 904318405 945163671 370765140 604411878 681592282 837348228 691529685 750968812 319252033 963234539 50846935 193896125 630327203 920224337 595294474 595712037 101152465 384225777 902636612 947022608 373136900 801819009 542001669 973550949 645738150 889268334 238241930 607377547 842080229 898425548 122575478 814853469 619497806 676724296 212393242 664658616 158902095 295461763 376946782 481734006 256634072 485159189 239470242 859393106 661642487 782438406 289504821 501123840 887211166 896240414 162742136 472528296 60844094 453363144 938673491 992352478 581593605 893108338 185586517 607315332 418478550 812411481 617438515 657555318 759075161 828315973 191920484 794510762 831893066 892404625 792370589 985229532 250676659 273165257 741675748 764944306 950415783 993837064 977564802 991702181 623925016 990779593 914005058 939117172 289819486 892626558 360402423 748012470 891042118 903450476 529409448 685966413 799701334 843075304 199945382 244497015 574329938 952850536 59330190 757517610 933715687 948897591 583661941 796075207 773729935 917488385 438975338 630822920 661311278 804054626 976609194 986723204 623888532 876772756 646586557 951485010 149335814 768957011 617669540 998709088 445982959 682692838 3092213 161039945 75927565 715478384 475730062 643122659 855358242 947296095 288901327 979970273 455318105 792177875 382628482 858737023 310664302 702929508 596864771 735981087 83048326 856438637 812813256 908999396 405201905 406667034 938956592 990363238 697841008 731659857 326772144 599797172 214474846 741880731 145574623 567745398 11781099 548466118 767192328 880677680 827549939 977830962 772917641 853152255 315341023 914813969 74488765 155068399 318990847 668595162 443959423 729471210 326107665 777164535 149320351 275983451 592110999 957176182 486967070 902092025 464018487 874022190 90320723 221566752 201607929 761848998 801423239 868110981 581331307 812958497 835822675 909641468 899813492 900088942 916676794 966582454 852420159 993981003 727100936 881107951 330950564 419578795 419240712 582336329 400149901 634009973 233587240 659220198 549800409 772404088 70344033 186255271 564379515 905761828 193935861 727401840 240508427 806873267 883208468 958279576 117042239 618369667 212506559 346973843 187970524 795340702 169783909 357883860 236218427 776385797 541568191 594856230 149095697 828841380 35120508 708039102 98096501 515444430 380540156 917448344 949293938 965863675 769290537 915829148 716005773 951963016 510258449 869571266 928122349 970274600 247395299 430542902 823734722 916829229 987274497 988817992 966465305 982736102 884185925 923171820 981134934 995022423 946594547 963807220 288363970 474280526 742139719 775313937 44344917 210173176 285505803 941418256 53296556 805724036 954663232 986619122 350281588 810602545 664078913 853398573 634378361 988813927 176237554 430779543 10922117 217101217 113489264 731437416 625773051 992652699 773946024 969027966 110398175 643752604 22837518 620525551 107159136 934084996 602581958 909257856 739149497 891631689 265056504 332957037 912507758 930583124 481260120 917729598 878082688 944118065 344605570 579688997 389006744 662413276 675499753 827934508 511741046 744399669 595751548 816396992 308772839 541343121 552077425 979202889 772245622 978957648 874395985 909204344 843359243 855808647 789439679 819600092 605927335 774452956 333202592 553351687 89445118 287615834 577577952 583347590 901000375 998994432 19914715 911255421 540509386 546393270 534615786 997514074 751642556 950553433 188198332 936379739 478264438 578997241 687118811 950144197 222157909 792848876 39662796 296484883 138686980 163060230 99617749 468712258 928346293 942955733 875452144 946852078 441518266 994822471 716648483 737702838 272150320 904848796 472057265 727151922 175753967 835302924 880970621 946127010 154607030 384828653 242741827 622587353 114402061 536336188 787160377 875441869 306785329 922517030 838162574 874690661 278524142 997726243 437780638 478470529 797740506 960802889 613159469 699259853 16675314 974183975 581058049 927052244 381600186 660131316 854552350 931690451 949320911 979611635 27267833 70857027 787438537 920338554 847975016 927313471 648900475 854612467 609341048 936379307 439413716 601194426 750211670 795927751 670574715 940730149 562908516 684942195 188746538 375520739 588051471 645024590 885507846 924273099 436330061 886541878 931556736 992975109 844622685 991237876 437376790 970905898 145379922 430362423 264699524 844839511 828480750 907992752 436888135 581057406 442266420 463068480 791962215 899476188 504560752 981808178 653101689 836429545 397429260 912354665 182463854 887273624 574522133 702020165 934864258 991354231 653158535 835408124 773463086 791353122 747111034 864142871 937850686 970682172 284898948 397016126 759309523 997577914 808044983 912125112 744979703 988890838 252825503 800257691 688152577 712231062 176048946 233481682 361181082 534237163 478927239 531035704 59603384 772371499 249652484 578922466 607544858 638527509 36668431 470512792 716270049 938563252 21664165 875401071 997589613 998775438 972460153 977945891 848222526 976671647 854619217 929572030 351237005 402805632 597733498 754491943 524589134 747583420 297257401 501244062 266921884 865448988 835991016 839047911 152538856 878718222 617353780 727866892 811951396 868986291 103560314 332693143 164082999 432645518 60761557 838818601 428696647 432745076 957028770 984300255 125637940 634274329 927911134 950028932 39206567 479961161 383471064 568281539 531645645 561354406 38234954 437052530 439251583 642837806 366368042 394217366 845810427 857617724 581142006 639053074 132576981 929833408 819129885 838259318 472850708 868697493 947657810 975589793 613797432 972008297 427771383 899741417 833668732 888415127 926823621 977217756 116174810 894748218 243442549 382333339 402671314 454757605 149642190 323364383 870565835 877045882 526766306 813717974 680445524 941174236 561039109 740728129 630806629 830082908 946744199 966180344 926337556 937270581 694312441 781333067 824640355 833547575 617428391 790119063 5061144 632282568 169777421 677564164 140746251 985399222 190249724 394039674 640813661 956400840 971273656 995253945 515576947 837378583 654723880 818045823 549519637 639080856 560547832 652276254 678681989 839941070 991783917 996766575 481538949 998302328 224682932 953444072 559288582 733267182 348221516 842513677 128958340 700596067 407982402 578513069 775415660 957047355 976295964 995825015 797584044 851360504 427605314 838842172 461903971 938925185 556861934 966092424 934232103 946928388 326663199 485376191 653210904 726708168 973699361 992096303 125396350 408641037 686149261 876578113 721510899 728124760 3586852 482055252 806652202 940888846 488645862 915182836 882541242 969805484 622792384 665294049 700054508 845740567 885881192 907125651 525943569 911227914 449283796 846178007 804884345 962186139 794726222 890116049 141392142 948012737 888685877 971595967 778177514 872998880 69003117 641244373 511839144 910193048 85067301 565482793 777818620 999506360 95359717 186916762 979297864 992364655 884805870 900998979 560096584 847052322 255235364 407579906 648945248 846838267 225103728 427045933 848426546 991957478 861989643 890568204 362346444 426242100 974414325 999050011 147656809 166293554 787031463 827275283 864594386 915607249 655433800 766549701 519894103 634798916 468937292 976786518 625044614 812318290 116560411 634414875 28693540 880410093 365674425 967378698 230707236 415265913 388926971 572723790 755115491 838880968 712661119 721321306 441854358 646194251 470575083 547278910 57888682 214294210 503103208 966102366 32950195 397798342 506939941 968218829 632911138 708021826 117598187 414384360 30172767 717472993 234074749 814718541 224091705 590324090 395553008 502641340 532625078 968493945 970154431 994794984 163910671 574104896 687605379 933853021 503790892 516910321 593597366 981402034 823207059 910906235 767899218 839679382 274803645 788069358 586322623 619890804 515843086 726303465 815803898 833231578 231876025 920832524 724239474 826371133 132163278 390711340 208096700 642471044 785829285 924470896 798192602 894291095 972613702 982036620 384717538 753272084 245605232 776107772 840140817 865649025 146985209 630796656 621277280 868903914 790573367 984132662 757537149 834460700 937652104 984839025 788551612 880153668 66756056 644963565 407623039 637211120 793458990 978578577 90982801 915780510 662597747 866594309 940706008 983872677 737521889 834610605 492004537 797944654 425220204 691289990 399484215 703455263 279123556 807512493 443032632 999189242 287141957 597799107 17716771 951710466 398810816 876708042 46465298 254169886 430782603 818088807 711696950 784406411 249684049 398630605 340013503 586879677 213794669 303563483 692533438 719394831 234275536 393139360 640591889 821499033 920372534 989122046 734066478 884989083 648125075 711339262 358061592 424798911 837950426 846579547 335319438 528529280 313605406 669226382 525871260 901769063 53721307 236676547 630000849 680809421 329246511 545964461 614525210 890109750 302577015 834452635 90923274 135296406 363932813 574349083 499846529 825135817 30705502 585219802 139015110 280565033 247348697 384889324 635629638 783438535 837466592 922084471 269700206 586501959 881000435 955341888 222478059 342657130 239476239 659974743 316369585 725691241 464707551 803152386 281519477 613485589 539052 588078856 650829147 883461225 187460924 299725021 52458207 339418059 380528196 993688673 631465693 878426770 72405557 434801290 715555482 886488291 35373021 423221047 512366979 996182119 647896867 818140875 427956645 556166891 485858973 636539061 144840958 246831997 570827501 984896339 255055791 607349531 406808164 758242636 412339718 841881709 996236505 998846104 844387814 850192962 475695993 905041117 222156081 275283783 451432198 630504961 548406880 728654954 679958666 711604033 894175822 988663073 668799248 976012806 523791858 815517453 310512937 433206773 892972987 997761681 191747475 671229259 531903692 675521333 612519969 808830624 961752804 988940760 421752472 635514695 724454742 912752864 513547189 687277158 990788494 999250951 921507985 953551955 560518931 807815958 475888178 939341042 881548754 914676949 629998888 739030740 743588567 883817745 395900934 836289955 160544814 418434768 910779112 917977083 737281315 879061638 983812094 985440637 275299943 547419507 583862086 660565491 661548932 753607485 887484799 901872267 568351372 719295720 478358593 934057748 590638353 756035780 679091342 821511707 214819036 436201686 207033478 530337050 214355169 736646139 437662606 575820663 869724646 909371972 179070926 241369441 774495927 969591181 729233344 847764870 108763297 475947359 990055049 994119741 55884226 795019914 577398775 660827513 228422898 308187555 108533528 637000624 803810387 807099925 227493638 573023147 834775961 870653075 491029548 865481845 689236266 776708596 750337714 942220610 558565821 583627732 846442170 922947297 271354722 961089517 603717101 761058025 193509330 585920620 904397106 994120484 875940560 977875712 194442167 248649027 304672036 798809800 687456391 767942346 31083196 880007212 953690260 981385005 97789200 395613866 223787440 397368532 164364067 371642809 259162124 690047959 463276049 777342133 872443201 956984822 714579391 927282445 290198640 494176676 607265423 658416789 262754966 968845566 374919306 629362754 907695435 998370606 867418819 949793970 22539844 513140906 75706373 613877553 639279018 849502217 834084415 943031547 237898286 368198668 764727180 940060370 331429345 676088137 560961441 675149790 659215197 683614354 401113806 903084709 327729403 576653056 182749713 923430820 400852844 447527054 566487026 679182206 319546305 705288620 5433416 56633589 573471143 714972510 717481128 892514815 953106239 979547224 902071800 964125691 762275855 852018998 309215770 802475426 730891042 934508671 621425476 686532826 631121493 954288475 636896899 993802365 789417028 856426552 3036935 66153814 667045046 934147117 119660363 230522363 166715909 526244383 837951412 950604201 211023628 262653913 786306656 977920916 219393278 674133625 139177300 836473419 138599795 296525069 518635945 699342486 29566825 821931890 96147672 453867046 34135692 965082999 865038133 923015833 233957835 368634556 630410391 892677774 144255379 966007292 561744043 732867654 480917783 741357964 885968753 899021657 855438795 985230892 361679646 510399720 944711723 966804365 153407356 976803188 202594425 715020310 643580007 892372255 17913987 590967982 59589639 992524293 999886860 999994855 914409206 963227607 332294075 340974172 719159795 804781776 270706264 682950833 154197007 481981771 900746556 947893801 331748511 607868008 61709315 608637840 384692818 519171788 362149011 485372460 369891868 411967014 289187802 295472563 667622867 882123499 131618552 400056803 436663997 706146054 266441873 818904728 530139570 766730899 726192151 791321044 708075675 892174517 750517077 798251219 561792066 786829424 362100850 796262625 112835594 787278651 371191668 811597282 400068992 428907791 909826047 988518731 986195174 986967028 171269992 242863151 263649165 458319836 973802198 992778533 141099550 315633425 987017601 994150343 958787965 966316399 389182009 727486476 317921641 333031405 106981106 612910705 855210227 984767156 909719973 946837122 889246306 969144277 4157368 219943903 235568549 580711048 498133094 531514030 896514718 905146134 157502718 207546687 720023617 951782144 796509016 968756684 116229708 870305423 758124851 911117850 340166277 680866593 762035222 797872809 453405467 569773027 992268815 992711566 791276652 918364212 113495588 989978783 761389002 977581371 308453013 828908500 851360693 932559073 636213936 765419862 496010330 918646987 512789027 607885688 91994171 605681366 223462311 528839573 185711716 781823682 914613298 984319494 133730297 393602281 827002907 866548934 129667661 838920613 529978432 837751963 385659801 468329785 245599482 699922450 918531507 973827053 892998749 963679082 978611825 988884447 871291308 893093384 352522144 957313028 682401248 770458688 630154597 970735846 529483845 796560385 253268329 261060794 947585970 982554111 378765071 693543716 370999178 728795081 56508947 442384036 974311766 983824083 199572957 269388518 271108576 726767863 548616942 677047111 671456964 868562805 841864218 999003905 348459406 758504843 336343034 625131399 380666379 933447968 71593021 402837603 8576949 670451011 967952343 985280135 4895727 344124428 633821705 908020590 270715629 534733403 824816445 974334868 895680141 982304311 286789596 930374000 833345728 974956713 432955995 983465402 609994433 903997664 538072726 796505470 695487229 783545069 199173320 585669046 837296646 970908598 329562720 751265885 857514500 981824712 928363231 968859554 32112044 97143430 853476637 980177924 379078731 867389810 293190367 411251004 687189602 867090555 832823757 947906470 40615649 116354828 786974873 833825224 328702854 400190045 533632805 983972934 224393531 382867490 782578351 927754495 355730516 834141458 824496888 983245841 291353585 617180237 617731631 763086177 867927429 904079224 396148441 485975117 482349974 583316355 535978431 761513941 228357353 256008234 964231645 983986648 110023871 443429114 565998486 950639704 555542732 910631928 355844629 943479696 674333837 986197958 337214936 835483852 583449200 818697710 753246234 991267674 578947545 703215517 738626443 882525532 681701190 806446565 781880783 905202245 600396398 776542421 532276807 641735876 402288400 474200150 738097722 902513794 850715812 945609979 240821504 571103682 856471734 920019842 482597693 700755047 656183832 883393831 987662243 990458229 277173309 529005501 662967435 897548968 82809550 531573529 465307044 674071906 470077915 890074691 223154775 318628781 664093379 929025136 924682259 932439779 754925239 876783075 229031577 418945418 547708238 676473140 214214554 843933718 669701188 847186538 171863469 983300982 479143584 788805185 195546017 292233751 12020605 962623181 829989610 849908248 58226851 269744075 178149058 561964007 972094580 974040301 824253246 928221181 522072512 717134766 317076900 960126590 739420590 879935158 142003411 446125564 750694660 973326239 981525620 987290331 674334758 784810491 260064388 327976327 420511077 473646947 332353870 983879118 935654692 941839253 868310006 902922023 300624797 564989484 434543259 948408855 490916272 996099332 163407197 444192798 756282146 869774241 342660832 922399542 749883677 798417496 198333164 396997390 103764527 347856889 917802164 974749112 994713422 996083617 823774254 944825479 934438772 976049099 130035747 845798894 116424418 581599555 591934510 888718742 167939800 935391162 860780921 911907875 122555327 325870363 61409451 858690326 327816567 811036795 271865098 620510826 662068361 851669976 542788789 958575340 642425752 818348959 98736537 964966104 841756681 930194138 105167985 865686489 632193034 874888393 478915014 597812950 488767008 714937109 241675408 454237051 460924500 966591683 859101068 955329534 612270992 925587044 439097392 920001645 521005101 905879219 686671176 966897139 934951777 962859118 825924864 896991928 954834943 988047707 387392296 833441877 338585096 949192899 992166472 995192002 993161906 993946510 32862369 172397628 464804835 904768048 848684537 981833787 445830598 675717545 152577198 629401814 478463612 729649073 172097247 739335203 525615090 627343476 890455636 992985882 122428935 685343806 2899744 275027141 858190927 987778827 872130037 980709422 250016158 901516362 534806298 895505174 128150992 514775573 195181167 476520454 536404341 809096973 281380371 864291214 769727065 863861747 669848220 790714455 693694363 825104972 75490854 707156340 929439582 978606496 855869523 937567321 641934626 953915216 486266336 814325569 751640243 957615068 561330766 692380706 956417285 975523686 700777666 935423317 770768674 892217610 197381893 777421508 239719678 767810000 501240214 654270341 437960682 594374281 351949735 839036698 465562903 681621988 716951219 919038734 838746773 912203102 238434747 936599180 621725547 724929154 185444804 371265890 366723190 870360400 430469771 814085800 537737680 617363113 948688931 972894617 681262307 734538521 376213781 428382370 386661277 816687339 662308252 728280523 422085834 723415918 937869465 974663765 112939733 587995702 798118364 851198937 964701801 970931387 806502186 886366259 992416554 996867396 224368200 928839967 589587304 986303518 856969976 962930164 703189386 944109480 885814643 920501874 489980671 498777888 226590897 681839572 570464170 675945928 375490656 548687013 584958602 850488693 539574287 980257520 50574769 788664045 401970469 805863037 632559310 825411139 53934202 537183528 417195514 930346294 731466279 866889481 271423264 653633168 681896199 937695196 816134962 996222768 663902049 857965356 411468571 516298196 720574197 891034390 321650588 388582112 605447935 654643973 254137439 887127349 830447114 845924357 651449056 701302616 951902178 997611765 851005599 885851603 387572892 993536118 444885898 872519563 540089201 982042997 377847017 934673979 648417759 788121487 875696373 924324788 216017862 218171729 264235963 794724768 861976005 918707920 108488569 983428102 145294425 956757618 838648847 902614673 4048950 542291702 2607757 519272618 254653604 488730509 303020727 512257097 944887075 984589631 850551106 961719153 456803538 753391603 243464730 730025211 605096116 992234821 516073589 977757640 579922195 950971767 115663632 146924640 607384901 786533508 817598871 893756165 851591531 885537018 808677120 984295642 562737202 786423637 706927873 733789011 670490490 756030292 784509832 908876772 137347077 614482529 665417349 724865377 424127833 627578864 216144957 732394665 279702238 880674425 899300725 943817368 306652724 675646558 360394581 416940015 435493455 740862684 606129243 810017670 887310902 957644001 325597304 556048949 891101372 952745421 522710864 899022287 7967348 425273013 244360444 414056703 608927178 933494842 741659326 812380180 894925211 937984800 455711861 710624027 225746679 321988393 556616386 744511886 731591869 832796532 364477000 412751954 686991417 819003666 731572411 797739329 774222781 963636420 244690697 505946255 853770405 868709910 124542098 194984395 899802117 978695224 25082889 625538374 136494802 272605798 172207062 464364952 402784301 642989540 86094361 652967371 776549200 825964976 572093499 799196816 671282754 899103435 209447461 706943895 821499226 973412193 641142731 994357961 507947449 926969404 549018933 670082071 168759356 681521032 791347875 934184024 541096745 627364046 93009399 733783516 752883461 999933380 819296414 975588303 462333602 714690047 542275405 650973653 689164485 905082157 343899981 383998765 28414663 174090083 678401205 852457238 490683009 859020386 350108141 982204937 461786954 965854458 870363613 933818508 74203045 613808546 747747383 859084513 968023500 989830626 957886813 965712358 463949880 667299942 638551835 961769059 600462423 808264879 150104812 234326412 612714532 706215403 84778424 113502486 646109027 682002440 334032392 994668610 806454842 944982868 531584113 892634024 921006770 924353973 864342924 890294485 803071101 933601669 792301344 832194889 35305099 980011310 64453070 128789963 735083606 994743059 289287446 745647380 739818924 977701778 115628152 240943145 555328164 620250080 294730055 461498105 879683846 915326691 518884788 919428257 721903403 750650569 259185481 519841956 7601096 611832259 476159801 722901546 795719458 844380015 27875572 573396934 780520603 796533070 28107889 138572262 263344397 357363676 448182741 816292379 316409446 543424281 74738380 956852605 56380210 699328009 539271266 934909480 483900401 598076209 606426133 907833106 858594856 971243408 486512061 934876068 295904675 909416784 696249213 741082675 516804097 760792844 734383151 871828903 205755529 994903333 661709163 882683363 735986603 752794223 932752124 980217267 386670711 569427990 29811292 937615293 125573266 514966832 765225142 993168541 40779541 783605115 475812692 622231185 197257479 284987692 930487066 970783553 296047912 473830000 594632186 948858656 473572203 589212847 2365977 168325009 43163818 815639149 127370254 737773722 507448806 739848182 805814548 999052114 935986580 939994078 267566339 321787582 338602565 860911903 795334202 935913269 143451796 554536916 920461128 968324882 579731821 682726351 776870264 812544742 553877182 763744297 489013253 717382602 164719918 887519744 137521561 144589597 130134371 403046903 27239396 342608560 658907003 939344941 291518060 720228311 760005 596140485 488743465 792916557 482249474 615095098 688571325 774304656 742935944 747392343 801818362 813850570 618985062 998983977 337980079 975315996 51547130 402904599 555709584 813687551 774091726 931152144 178529974 438913948 969546969 986623271 709319480 990227406 483419808 882174437 578981965 752658811 259026278 711487265 735179480 813583886 112689970 525280987 125502417 611851223 670910893 842590512 684965778 685672512 449014018 769552714 255181627 518459989 678206827 987531620 514422820 563333282 779060383 909511492 742443160 943659231 276907158 590098827 426789729 427037219 889141908 918239909 952764372 983342692 202207320 522164563 122440904 124363140 769898465 951330481 161757021 400492693 590917225 997886953 180600681 421551566 878813891 943984238 7593219 424485921 52609619 237759593 996079354 996225118 337884984 621597337 511876117 792267391 950711499 995998473 543247531 678579098 656456263 672990316 76155329 327999077 424885981 984194465 301866341 387957678 337803894 468402317 809258432 967104241 757970986 765390867 621789125 643283875 913625566 999037243 614290483 978413008 321791326 413245858 936811423 953112895 958885780 994845582 852783880 918617809 478672547 966684492 71436883 266313237 614740470 794635225 347332637 897603524 917600123 965508706 731905638 975811977 410924775 884118735 541196768 755978576 156270741 225652139 616285780 692082213 584606222 924835934 707380111 745132943 112747725 596818991 861759566 872436796 904227916 999677479 598578315 915011671 810586750 835748495 291028412 698553101 259282446 743907970 126444813 237672903 386351819 659487808 923107813 923263260 316451273 376026993 831934556 880587466 1093706 714285416 284481292 831385207 672889345 964161375 152663081 443786881 180041910 624021452 381415005 615706173 770542203 946433715 848864473 998573119 266102276 993194637 716127293 853756273 959674535 971660758 662011121 845384610 967311043 989213743 773762833 856450741 124587055 941875034 511543353 744003507 564780016 632636155 211598344 915109249 831907972 905590660 237414557 965565533 339125568 949666974 827178289 914938305 80924336 860117833 886110951 932076240 811375805 983671680 213370770 284065908 63557724 845577273 189701669 415095905 972857738 974617577 782573791 985537834 621920850 937562127 875309499 912543745 21773341 240858671 366404236 863272324 100399869 601890522 584950478 913739093 742408172 981538084 5099117 31146241 63296238 80999480 508737642 971661045 96342185 837472928 674846709 764806128 945042327 973442684 518727501 560397760 568288127 999716561 766986405 875438523 606986372 842097406 967372643 969451379 697332875 879651327 523941416 963994801 948538542 994793062 123248781 341199962 909947812 968205879 145979116 850052691 343541016 903700945 278601769 306185027 297957423 659750584 800118667 849768292 17562296 356655259 968239305 977759569 447056989 911907557 170717032 508592191 467750488 939859220 84395323 100645761 724139631 824428618 452994077 868571413 836583957 931026504 29517968 36246294 273405459 920058780 189371985 891510604 406128287 822400242 881940394 994233716 615552600 875032842 749886578 994680572 565037442 878000606 187943491 429895196 822296103 883515966 504590579 840514306 15524352 186413156 130930678 746305166 751347950 809261023 623369811 806496508 322101017 683719032 576219759 699117247 431713674 669415183 860083653 993578969 701988239 818244215 453460229 619386591 869168242 896055781 314775928 973074777 733423294 888435350 566886711 596555176 431159934 511311987 441133168 893688981 462812886 838409369 328667774 535776193 911145535 943633765 364579241 972003771 955064675 972765281 25876638 58411133 362023303 788554879 320834801 445195828 40889864 404225045 647209086 809032466 891431710 996996303 199463185 835759227 463173533 789912539 337716838 835561634 155431302 773246106 960141125 964702591 767660060 807794229 613097936 967059741 870958426 872487118 921643278 935431613 430812746 765659604 883621859 899501408 220712117 850691446 593850605 973943313 928228602 937642624 688053394 867835111 812392810 996599808 740664140 788154189 709031565 932100263 361141661 679705768 571154020 852792270 326371425 975890933 546366875 782159428 638874576 887953669 631827070 768039167 726458582 778977398 749047187 878195702 418066981 618570604 418498008 547626700 782394086 874401482 662434963 873864738 107151 426599408 400227580 622751034 502280000 926678693 290998082 866127883 605640999 995183652 648313313 900345081 174702835 753394219 368782573 614422842 188947309 789823951 472782260 974132656 787602911 872947517 688720436 944653814 182505494 767008319 702036949 740974546 372618414 635682637 105412216 708298002 572380469 878958109 113713872 715496213 362726179 680425367 152298373 403498762 978874728 991517734 128824322 392856651 165706547 470383500 857494744 961558946 630874044 752444554 943805894 965295971 819009594 990889995 196478457 900244200 408853567 505655645 553111676 979587198 674531338 789599237 214773827 828871786 893993867 964947469 9866187 707155680 71164853 309107737 252904700 470435853 216153731 828106474 863496277 984795278 63933857 674578045 652431170 971895351 526979304 991782170 105516262 695682000 8092034 535927729 252335338 752570358 958213157 964379695 533517341 732931638 697891882 970323048 997984721 998052229 222428507 304032432 747355573 754678011 963342308 973449324 791023683 919677562 647230006 965354812 569354226 639012196 202234467 421896682 906127243 976399116 863087138 944805814 76285399 264174137 689505388 907260169 579851823 748673301 880778969 882354675 574127244 695102050 97909647 721358874 742509936 742939511 999235321 999314693 266576404 801160036 517692008 941254561 729468222 993071310 285105692 730073917 579275480 952034261 943662136 971548877 506493042 938978530 240091988 314594991 163635494 410450934 867807937 896077358 61277677 559060398 470836938 762498186 344325155 649544197 632276178 902709360 649529284 815809782 27855247 865707729 614675995 638235867 45142918 729636804 653747702 895772591 363628872 386206758 378305767 845657843 211297541 936623299 492007452 537871611 461025446 621669313 963377769 968583427 936467204 936925284 811860897 966051635 815122777 926218992 267584326 486458180 307096081 954586632 658464732 912402652 479727614 609706819 317532694 389107697 421644039 751774383 19147246 708235204 886372081 898572630 791060278 804672648 305730237 630485699 553232170 690900768 742546551 846042906 436937746 790158128 368476381 371510430 152200395 727999195 841582726 998480923 9273995 581536881 917639191 942104354 118209843 291443235 658437584 781224286 794678528 824558080 756796493 885698547 562620055 796729899 163008080 566923214 125525756 657673287 652878930 815366277 358490151 938502827 683196674 981725077 598778535 639790363 910212428 944586013 141121521 988739326 939206135 994068641 677636005 724574495 863226150 924582676 690856354 714333850 239160774 329573713 634298555 650053155 393670635 494784678 712565885 836436732 826597480 840264034 825234628 937213129 470412633 712935570 231850777 861472742 373005657 711639464 282224801 500064200 704533270 984283284 477749889 819202564 366041066 409008382 851611769 918356195 536501627 617545685 600005432 768134328 322041531 372047308 982149308 986325546 33450076 372787282 46913899 472901104 726211422 737659842 975476434 979872598 765611957 977950757 526246299 812982446 978659874 993420732 876882042 881138683 684016658 862810547 60696108 235328207 872255013 931450034 851153304 906087675 908693222 996197762 855520629 902472755 960873474 982997053 781497351 859502166 790110561 975991883 24219809 937167241 906122894 943674179 61005442 248331668 518155690 896463464 721447025 828091304 179868901 794153221 924598858 940582724 593004543 606477734 913216280 937794802 18409615 192187975 49428498 141684507 684727915 755729999 776613512 855523005 919275627 956271805 50035242 262556243 948731750 954387664 959881045 971570054 650620873 904420162 972785182 979957079 132371663 408757822 177816335 975965029 92037970 230062434 76928789 462612436 973138623 995052286 814761349 977920718 138900434 613617804 331984355 894963074 56417274 130441206 294643003 313229013 122188908 277002318 724677747 935341067 463942417 627165139 789666273 964597736 87930593 144764952 418518730 527370464 365773179 540713418 345169804 709100276 558636408 763062500 512188447 608370559 485373327 602155902 91903600 123866642 922582970 978336905 429448015 752179849 666207586 810729911 439394033 805481826 385843862 905547366 879136283 918214694 62151690 367579262 195666073 962603437 588354858 834941188 734212060 979523024 251747329 300475957 948824914 950996999 181973072 508736675 66747104 737094898 758122043 829742091 424637822 499289014 191340044 973732475 811831210 960105678 582921473 760798843 511243320 708983088 874434435 890347355 454414148 925213267 535342909 962501252 409229390 721649715 664233523 924035882 196004822 247143200 962716703 974721122 977903615 992720112 867042195 874205262 347926454 718062563 230679307 516889289 606194418 989010258 206646317 916020282 616720092 751236746 453687180 701472675 12295176 725861415 199569408 554812205 290239138 469418702 267506973 422761720 944536271 967480897 622252924 896845335 893977595 920729232 89781869 332271234 287867239 865096938 310264564 874558505 556188298 732682611 670539274 935815130 385808384 695994403 257736705 532526556 364209928 408391883 881396702 897074145 305021985 499999536 141365196 969989863 325081511 432521685 554473892 592394822 716005707 740805791 322691753 514746183 150090031 541979357 948716082 965841951 618126620 915195900 87841433 686589541 118370552 549647737 794503648 987542441 565591297 948360139 642097704 652542014 718164304 990014912 672815260 859090972 953704400 961790085 29924631 966866249 469859802 815759725 161491339 815423958 3411571 331495174 804799734 922540262 267189200 566630036 555079320 958139396 281292881 519312390 200064170 420818450 55060708 649732324 107879412 876960869 600124887 963405046 867566634 982571479 295517897 826082521 56719199 141855832 86862854 437024453 497463002 839763990 591485501 809010120 189297645 348408144 313211978 955277037 856861051 909362505 242153384 728971836 303156315 932177700 370877417 669327364 538160870 798936540 380874350 839229074 45232308 549998208 114987373 190468616 683296790 809015839 654728717 842068187 463002036 738425417 421537997 584232576 340147795 695300904 566887661 586257857 895255256 965276673 622068373 636896413 707508892 911945333 300370092 828428508 511960448 664464482 762275942 961706572 227237033 511939695 284998029 354935931 909420620 925633782 312349989 633121291 545762330 891431182 367102635 398230067 7407028 334080968 414292833 912890907 690339272 745789859 640478377 913735514 644008228 815751451 362756896 365555669 959511598 979256717 725188549 845404765 219119868 297856543 233244521 975794066 539465473 572369297 70683909 674836715 636994958 986534457 912463520 915963540 683728827 801418850 815592099 918145838 424367245 934675520 710207931 915563315 858986651 925043150 504174379 997364443 289357408 665689985 945636775 984688852 252869769 451969697 615429398 624397506 713903065 889771924 434051204 773078663 619746188 887245460 150535615 658841711 634289450 695951734 330001318 690665809 912602625 930975562 224555124 631788805 423669638 748204534 82664753 914334023 777085259 856055176 24518426 80775509 153639629 771378000 127901767 376434162 880510620 942860833 837630630 850231337 144767585 592236957 268851942 548389589 634597292 684502915 73693647 810114030 627946433 915660273 888041329 944489317 53022588 928726413 447764205 665235684 973356371 982311461 684651217 860409193 833636106 933080607 252730327 536041421 434592378 522151146 628102579 847790705 598427607 664332122 490623780 948841119 189031878 797561624 270837350 529469258 139889925 707843613 294909808 331607826 90540099 195585610 17605936 689267633 375817689 983402918 465841850 515128424 741069316 891233847 997184628 997255705 63922710 937737128 105278536 276601470 851131203 892865687 729234620 834852647 233962148 412851899 960936730 996956892 696605769 834370608 224346247 604251367 628351858 667525489 64227241 860134550 856808128 913695417 644946471 654819286 264377848 756874223 140917929 255247877 459575262 808606444 511744888 755896007 986094043 987485155 989933886 996721594 643293502 914115696 988259180 996656680 178934545 308536993 411718722 806577155 661509990 798095916 80005413 865028792 316972176 661460494 217936495 795517918 641511383 840340942 646206070 659689239 6284513 735977659 738697916 982793066 760098345 928090889 864009772 868869154 996930082 997135376 525242074 919792360 996026578 996288106 580404531 801695998 806728752 865800911 239934181 446829991 735558255 921852166 698189490 926625572 140258095 512729330 660034336 874778539 66267550 865266999 373257838 617942353 807871935 931798936 704392174 998065982 433547907 842072189 659047534 829190064 774081395 980840930 987556233 999477616 952739187 998407914 768311858 810343644 21878941 811959302 401144189 784172559 301298208 989085066 833241989 976467339 919731197 923868135 415392606 470002874 594371961 688800082 956658417 958460225 157397558 239058843 143229007 911642346 76711699 139537126 883286250 912591026 16955422 534644499 826477179 848108421 336331008 862068418 604359880 617363175 750096550 861166496 246166675 902739842 56775185 365172925 475817289 880123605 576862617 792394064 189786591 989575059 551278999 825290629 60913755 977866228 522079249 554533357 611799042 697417282 329342704 333666428 325246666 719842772 804453489 993877732 483652068 918838570 566509894 928450518 906859758 959743443 478765617 693821558 182107480 743384075 138092832 352410797 853153798 861831100 25589840 248753862 282929702 692973570 72354354 385699763 98490445 454661699 702408230 725118551 490884512 522317076 982512897 989076169 882731527 937759409 174636020 379961356 633811814 730117353 965496420 985123705 177042036 665083950 122821571 390765726 306266918 401852830 501164001 892649148 309224709 560350941 335112747 504446570 355122348 549102046 997585928 999219524 943055877 981379313 973448635 973747291 965511677 982680028 3482516 645586399 259357275 838680636 809126110 820892699 515589203 856293127 506766737 629575366 341781950 459951672 362084600 473733434 662903677 945217486 660801657 777457964 760114594 813499238 870017259 870304117 633651064 780105181 794498645 946036833 942986090 956325882 925764792 988256904 919291493 934714808 566762526 753129972 187052905 867608154 536814532 650004082 949226742 984494875 898766638 944444196 87302812 724337673 589348472 645318830 544975984 986400437 476821057 596611375 740472613 932978036 432490014 433602578 366993668 769682145 949886681 965901720 224656354 946118159 26644812 473101117 839900584 924839592 803386245 998477800 6719424 271677056 477135503 912318018 149230422 294171277 615571758 647807942 435293498 875889514 172392525 336293686 574740427 702157059 856367972 990954018 696960140 913593196 407994649 640618998 374334622 463697833 556328532 793410040 802265359 837916654 1750012 304705071 297703708 734208368 36558696 867189290 984703441 990767213 717821446 978994222 873508023 906239425 300879653 980936343 363198069 618180177 588942319 715278268 397537927 982565642 700488445 938705959 690970192 739405879 151573993 952429370 525780805 656891756 903550137 987794353 48702411 680807645 504819263 690648439 245534691 899643007 668135836 825540434 235253236 439566005 811959844 990867377 557389579 991475708 954099575 962816667 879623637 939889240 4649693 55413294 308081786 342807517 315303098 426092938 370390411 462761361 232660257 779777966 880559714 900855396 391230277 938792429 352128582 665370630 40175519 537064979 156513043 798762810 475842272 669048161 954656621 974617723 730414389 832873606 134027199 237228892 779076135 914128117 61034749 801466102 202086487 256731830 274989522 631393698 361690477 407729356 466520430 683540659 617799503 770010611 908688245 990926519 902386581 995451154 222182333 694410360 27227635 73214744 865082889 902575768 550004171 824575681 351620188 711957848 306388828 489077004 865072168 972392785 86430922 683074391 108183119 588699784 100390110 374506278 989211507 996547912 658193193 784017689 159912873 893988452 489654519 697728305 194698559 368584931 147201068 780150937 313943715 795486401 524234040 803995646 495861010 998564045 431827731 668723166 471627841 659438995 21076846 799117993 856150269 992284601 4020453 173912687 741750576 828973215 633451893 965898757 229023481 889878806 584400110 677143570 105384332 388038246 701853580 756927281 159590283 895490908 926636453 983842887 669237848 694666580 488072212 622234120 908034552 980145375 804492712 906107471 980837766 982678053 431075011 849569905 723438987 994622917 834122191 913886880 913419809 944376961 147045951 652858133 456315732 711626291 581575392 816941265 783995164 932054481 81183936 630899844 368973105 987101114 877101036 931550040 533223093 742020908 62111716 546093014 28569141 589629126 717312106 898580192 349260366 633745170 996070848 999593066 969427183 981984214 149450531 382019940 490372696 893844042 486161184 917493956 39727731 523878517 552422418 600302233 305916074 619450492 9351637 255245819 326107308 377880625 618519037 839354822 610499606 950277355 261250319 279371915 963548323 970505273 914004719 959859859 185091249 828934014 48360657 256696885 929977370 961797085 179128889 840337409 772334921 989301189 339869972 885155273 593357979 682959950 665308911 938985386 156090433 186983155 310659721 757791940 376322304 837523326 100977205 648854018 470258924 727146433 962026664 971715403 164965433 737503743 383088308 414136644 625679838 772221971 117394817 223903647 465188854 499460793 28676402 135798500 644607317 986678596 752197706 859497583 752621087 968039556 580377825 722608579 540360597 682415115 459378349 501609485 66513545 752039637 395994147 914136626 556658589 841798916 589666456 867906444 272898924 493488706 629195330 828702050 491748251 717894808 176230210 998544481 10929326 130418834 693338509 920755587 651596463 664592227 472971191 545697045 128404005 254989170 511220581 572627163 871652672 884926646 43575571 652966611 806779542 854864377 834250212 846628079 304834708 555099332 902794932 954547012 693761591 854676054 948050583 948496285 886182864 983491156 730482948 964530864 406423140 845467550 570352615 996811242 254017231 762531227 869777255 967254437 501898276 552506473 699185745 939199850 608904715 631585804 118415048 473888512 190811081 632721264 412723560 714137352 897143457 950972799 503306469 790599521 213731222 312873443 811219952 906356631 439851275 687638876 655836752 967993410 334245455 473049290 24994003 745413378 575396184 703113483 96904508 330219377 533323580 682760340 484457656 947997838 168555460 857119769 484938542 666615473 469905368 601200891 743149373 837257845 946514005 955626966 678941481 985409225 782608885 901938234 318968853 504569673 157949011 942247798 103863056 705647476 777100979 938452629 374170137 779455327 379088212 571898052 432356899 558527722 151412053 912471443 541603778 690811804 755594850 824072450 881689162 977226180 706492914 778445875 738596137 947607829 531955307 929649978 399858492 621858751 10496177 433874493 163409223 322444153 98999574 933815125 502413940 515501975 618451628 735633810 519567102 555922340 11526591 502433691 704958685 731597140 495754392 829760246 511392552 845659254 794949374 813743149 312739391 390465007 566348546 839783583 421618810 435072268 600448551 997929911 653408783 859670106 752919192 841548725 601116034 912878325 684716079 991953822 880644265 965772300 303179790 981273239 701808478 780032683 303846129 411011546 331507329 451222818 960705637 969984683 441086040 997457720 843049953 973950756 4644034 993540856 558495588 761431556 50539461 954931253 857821725 939162347 213725309 965885677 532353602 914507178 938627467 952441282 141186791 232275687 149613828 628541242 243299899 459718134 445473495 586978779 818288923 989725748 106440078 902244253 110044742 937953107 594798537 877458644 135975936 259305628 350826963 564470731 532878865 693377739 90123673 147064038 611413242 755046939 930126621 937672039 300810514 677507722 69695333 690324573 218280847 919395416 974014279 982034100 980001776 996595328 317861942 785561061 210248035 935711852 561144463 797124918 876610617 971463482 237466798 283770246 607428621 859671791 991462277 998101945 654118310 807051464 313669640 377173129 433366601 856777211 433034070 582817344 526508457 972695011 976633525 985385432 867430350 887496379 252879150 541202591 846941250 977707310 529075537 931089877 249583801 842339012 223354994 645847518 580656193 815350483 879456246 999370353 930033793 983371735 653404923 671344213 607136753 746633670 719059564 915540247 366830007 944718000 634787946 926671721 551890267 774587003 100579109 949838235 814118787 997788699 810260359 839531720 731131276 819663547 927398401 952356343 969149112 974827140 408127797 495959670 832757858 974059701 414845903 563129042 961697722 970575929 62172326 410513035 945129864 956458158 115298234 493490813 419185348 997978838 417811300 744370103 486322332 588422184 87545690 348730166 420866817 940433347 957393218 979263288 411897412 434032731 947611130 957541147 831448934 923647702 222842453 305986738 826152205 954149153 767404008 818189869 897959920 928037592 638973988 882382116 31398302 946571651 24458694 934741452 586748236 744229594 24102120 392397664 767922161 965247209 613296258 814875428 877113671 985682174 822081780 933524101 172282219 398868794 444895448 518685921 385318945 801383243 575422105 847139824 955763545 981868271 181270513 850820438 476472792 942582171 47386514 754748223 824898273 839738229 362995394 670164995 976045728 994845577 614407497 799844541 427268294 953012309 161264716 175272103 378359139 463819565 389825013 762396919 857260124 864102745 386351897 929480386 251737863 885741181 741272953 952904873 970452424 997498775 576540910 613135045 1697837 402615196 13374441 763090316 713395032 773464043 286638797 289397303 432931573 870255597 23189802 359312497 578055403 989132871 895658981 949871046 855933833 895009752 531221283 814551684 501005378 652654149 986788443 998858775 184701212 546521575 301318697 791184974 570763033 670398052 436786400 480008815 55930673 770653201 20679246 613497797 585765837 958760695 758822289 935489806 50005894 54498670 589868909 597977025 809161962 894184747 954511131 982752297 694871212 734896068 726611041 917354893 298201951 966051914 634719198 876997218 528424511 818181880 147440695 885748342 289201713 815158359 375656408 913114540 239990861 843575657 554939622 879224861 645893710 881830620 581829086 997940956 487764790 588601012 328139778 408411030 449871224 469279755 548719940 632981191 597208703 907117739 582480401 931915176 601968986 854239649 570797948 709774442 398185819 560181136 849744853 907781521 127024015 545885313 864644143 942890930 397041624 783010346 42990240 300902688 491120042 857069754 933332453 967171587 296843514 918129953 808674964 906637537 997282408 999547486 558313961 925286033 116082521 898760072 146169334 810852262 21221788 400568382 883096451 941647262 117903735 141948864 866201059 886265027 170650776 616984222 766384784 846588150 13540705 465074823 410665178 421333210 173109068 437947799 923698839 938013126 946867963 971713259 771407182 855506375 950050243 996727632 863980350 920062582 471264437 846249000 891168579 960483295 644738891 820553725 107304630 267334311 730781070 802888570 43023969 347235620 619601319 739857893 383297000 656245905 68226900 564528213 28649984 948648060 312456014 452196154 74297004 980235467 862665381 959549696 469231963 727723605 858067527 940061047 391367012 427180069 288252720 757953770 570967729 877410385 604704036 768458470 719321961 732866001 293442502 746257652 398164331 984896204 516111200 909462980 600323328 834913993 816003086 913215314 955373214 968598190 859923555 962463727 677672354 698430001 15320307 528764967 429614149 808705452 849562219 961585324 720799960 990298817 708245913 971849750 77137318 476574220 703786869 804985664 795884411 824525943 802246992 871078725 68733273 976975443 514525573 528574792 919545315 991571388 990672182 992158123 713810209 751854910 659995887 807223426 207479460 466719960 791008819 843821163 46958441 461951943 149872196 487733857 741809829 849518896 447546279 755350282 635123196 821203799 254984254 978045005 686560637 930676639 532387868 813734411 415478589 723111072 910332527 971665774 723508215 838316896 322140871 583266264 980709963 992486488 241858290 966059175 670007574 822810028 769457033 787512926 902969945 994522268 328203865 639110702 842279957 880117134 797895790 968310551 264224457 971640054 3112486 89735476 579385139 807114541 792051538 979635651 308880506 558709776 71824818 757041017 45029766 262884112 906008914 990024104 458301664 891583628 369105185 580415917 459022213 771925026 679188320 759044872 61285116 963345367 495536846 754074369 496916399 562464527 170537994 909012696 532502809 749536545 246947458 605542732 151292076 624735273 836378964 941229059 488324331 514444492 534105784 971898025 683387126 717390838 849099200 851018772 794005571 983060905 255887039 339488311 70963721 224306382 301248221 774347001 213081183 778022931 76915008 637272149 319393824 726751145 323922988 831210181 195554937 747156287 718190182 905011572 49688952 158796691 867195121 900635872 571306951 775657726 123243590 276826279 917750840 976429634 31879333 171799160 530184426 722232300 661557217 692696108 382546637 556975449 884791988 982673557 394169156 813731510 189722437 263609293 18286772 659264040 257934081 772142724 152045829 231944313 888709564 889553073 869111594 899695882 341134578 755377635 690243994 886488860 958863822 984208649 760776860 781329153 408233201 740904565 160017501 864557034 446568329 936835317 10314966 412894980 86766066 389291607 178746636 561978666 35050808 268298177 54894537 691571721 5889751 284617310 586149186 705670879 527241939 938018411 661300329 793994872 287094061 955472264 912683592 950024094 527813793 856113468 276555929 892652939 892258690 910237510 827842327 991383514 191377221 205483235 956186725 983838491 986723011 988114538 163723864 295778407 762421518 925836080 779182757 864059980 406601964 567312184 819369304 998041389 88918 865228038 543409421 586665925 5013689 937976377 29021498 640823791 726368541 935332050 113451706 237561326 319310242 336377863 387653226 395536227 75819146 240805925 216618388 931182359 839691231 929533849 378399677 523317056 885650475 888855034 148091413 420167902 945981103 987904576 876763602 879712479 98389997 105420273 308102296 349005234 191354756 650829342 705942465 941151752 4384967 321593680 911720648 944967575 260066804 297033095 294353878 739872400 414412852 436172757 894365305 898505065 10055782 822332186 752192697 891823874 865218174 904505938 79132559 309794124 402887451 474417599 949441891 998267499 376084925 556341184 115500270 451163204 271934285 927586042 377582651 991146423 244925563 857198528 370313146 748969294 869879726 997259848 95320520 586856039 359507282 493700914 701968446 962281242 686775158 822992112 563373146 624848978 333844841 592006111 129404499 198468422 221764636 264963791 797375304 888506480 976992819 979390899 522024063 966237249 936493921 943574349 23133030 525420595 594344280 654727610 481647219 691613442 789523742 856309655 192960934 904550837 517149178 595457647 794397809 805016688 194622664 863389948 664804623 904280267 594768873 624746935 535731808 780392320 132857730 885106616 97192553 191838613 407460081 949856377 659099897 841391889 8890896 686828362 852224879 897152071 379106456 906413338 115092656 142021708 624589912 645677639 833455211 982246947 759430442 829776193 356153082 392021252 740814135 903139182 15505914 315213396 865453957 971507054 205855032 590523039 781398810 913496474 490331592 768861248 220604766 700874300 65533100 325755150 894695241 917762856 428481371 570154123 139810667 330851837 941117685 995137140 86467541 297147908 177780660 737087168 729393052 770308438 863314712 922813760 586682473 682771227 519038069 644465379 100158842 142531404 95872520 622760485 656871031 663637200 497368195 721516272 931753671 956942588 492252730 906310983 117685514 285147766 70746689 962797166 916134180 959706807 85322053 864076348 1096353 595307052 189663735 974385969 32093706 860331600 294182995 773829168 285673138 787262302 337647056 540537315 582258550 765960590 149927158 919414928 717370965 863781589 666323100 930638992 448210280 579878369 877593032 878557395 789638067 849038330 626225639 631538017 589149766 875906781 463896860 902733106 160435373 188250643 297702142 362470169 601904502 830790930 354475271 435903817 546391945 728744002 832491255 866339305 207561083 534514849 298034934 698007555 486460927 931727742 761109444 791093862 348703645 569482470 972908725 979338849 421339925 435948251 722356573 778113473 866743635 992693658 970749519 981164762 286204325 545850222 491131911 685653529 48522470 641932986 841006516 916477915 469996483 523893581 922235845 991426808 758684091 779666499 154534342 307073382 999098765 999531825 914204767 993991914 408885976 669843459 952755130 974597012 4243387 322363173 278292818 482681813 648811949 820436386 792645308 866465114 568362312 894944910 6474017 638529956 627144544 767215613 745191997 782667292 18878077 615921535 859352981 961762531 841609314 874114669 60873891 678568652 744834392 945086342 935664889 974604464 350314461 942348821 387831090 645398776 723187479 920622107 800692512 800978024 949676380 957889756 803224318 884551833 407794661 590363047 681442993 834463462 110746016 380682833 198754399 778502647 541201699 545026764 817317757 861786313 803776401 978129263 266365435 932128587 95682299 993963614 874760089 902317866 900759962 965514281 476458466 952841875 379479234 641595321 985539259 994409360 822737958 876780990 135914444 647512852 178013113 409955168 777960764 979522460 565669882 806984237 627619054 877221490 512393462 993582350 863771171 878006049 477745603 656254162 102095878 581035904 849393287 943527400 392753859 995289235 532120683 770699956 473816661 760346844 479361330 713117314 360149127 990707702 554007006 561244518 373708058 937819653 389870190 422378276 45916843 412896310 988786571 990443811 999679571 999738478 175540345 608373448 422384379 881175396 778576232 973354805 339935260 390400472 3938660 546189989 250649739 740905988 563988434 568661326 385519045 938889854 652229278 653633160 307421861 958761646 745830133 751660818 391294580 441542915 382590818 819940496 6738765 435360037 521567811 891514313 173715331 919786173 693604091 877942004 765298796 795186748 344926647 567748797 583799217 967008992 789868858 901706924 97376641 533600845 545051124 741015790 187309321 487111999 628613860 709257676 827822872 997298086 80024397 359517581 198883085 772399002 528512111 657156311 932761823 948492674 693864511 844562257 383923524 559841158 236329425 750064236 679268289 965943486 421449430 431589381 125120150 521081271 698957070 953643952 325111066 925814294 825789847 974088640 90548763 382776575 694257796 800953914 532132353 837508976 824674714 967839647 822990639 848100012 515262962 535735081 545122 60822247 153963397 942578288 547685814 989569103 982085057 995417420 635491556 638861950 388662981 578658672 168267079 984202947 773956757 806108690 585532839 953834341 744056737 745725394 830852108 888977780 612396271 988956956 839336658 935864192 334699078 880281382 621280147 655134212 486837185 566367158 770494764 791300137 688561716 932166418 160908793 275667584 794427122 849862690 15560909 303623961 484790993 819358087 896596526 917435918 422524660 635288754 94889694 952595228 286590082 364852301 188396865 784434802 947440910 954478778 583753175 810323426 416423088 814772673 170186090 807890109 508030640 717430280 864760072 988636491 479789263 929136301 944563932 950707929 308331790 756463500 542478824 706340902 890221051 892484541 881353140 922701698 756244960 812423294 202953279 344434285 990619585 995484765 739187253 959947490 650772366 836521965 715549520 766447002 23807482 289309689 938168260 988122887 755195353 992067787 751138813 892463870 216974333 388742987 43077397 441643832 686336265 752840082 344065641 573875178 814206459 905881459 949919685 987963898 605351366 721005566 581604082 740134349 862242778 958950859 279139442 391029609 215184425 852328100 33190492 629952030 327315010 953383621 985073388 995054619 860166469 868816948 520628557 898627184 240084818 934916722 872496800 984731159 682942780 824840220 299226337 600048302 328467963 997257252 849881542 931301966 588446092 639845010 597617594 932015754 516104863 670151049 986583523 991294406 687284668 998253045 273077146 939495964 753552674 767613786 513630181 956727305 210565594 827645245 224375052 841063028 79353715 158172172 308309324 558838180 296018036 426499224 178486002 874017295 399462865 782481666 459916429 935558293 189829057 521978569 479855823 493745132 532117719 751160312 175440317 685618122 340186061 854028264 688249672 822643844 169545816 479454466 61034223 772483897 535093978 763902058 654576674 970803015 868278306 996036086 647827 306689258 180896138 716322809 308378782 508921644 612258498 737367100 932724362 969122508 787633929 936357691 676418348 957271023 409506383 520744227 151095498 239444286 556064742 660395474 189739306 793413682 370771353 418558497 137689068 444595233 399323119 507837149 351525472 665818195 10558634 348952312 559851519 967355300 372602517 866827140 934566011 964637736 826792302 862274395 263085259 268954605 629834447 923819381 639230734 654308024 183347698 525898803 178331803 337864423 966919249 999319600 123644184 472211536 310395414 764850419 306089687 567416369 41779921 418674797 959727392 994261083 389405720 825588738 936899881 988237050 357409103 850764421 314609949 629214610 597725568 644983772 307918640 770528615 460079788 460911677 656717025 844942178 74491327 698969601 159490402 993369516 307723200 618664374 18609347 227034733 970877748 975925066 791756356 975212242 298307624 642944977 510538990 685270657 958893721 988099340 184988231 910363858 237095612 765898274 882719966 990963155 153250802 237486608 304181411 332079224 556537758 788947613 368353282 967229515 680073274 708006350 170823082 611126940 91693485 138946525 898613265 972737935 506513385 779182714 754039089 983029272 919009695 954106407 850466938 944601193 487648542 908850312 619275740 705091372 267241351 333345593 665939346 992877059 663292731 906924894 765643221 841013464 893857597 894195888 424510098 466513521 313102026 568520483 630766644 885863470 349019301 885677355 521121342 898605535 10384831 684486785 517303392 628655299 396639072 920551985 287551326 574723777 307343484 503339649 818453384 866392668 13623143 191549435 698134199 718069241 724428904 933273601 951592804 972278933 750175526 963200883 403274581 481495688 443172336 889259184 246001754 935158262 451605253 646931161 526451272 556766424 372889659 912315635 110654985 499575275 471122872 851813709 265678416 796571519 196041856 766741194 5900260 881756893 253327516 990727055 982991762 993483917 921635113 931649723 738839997 987959518 199863718 435083822 250776286 904462351 484520755 524894123 878283841 924139246 329358961 356614256 752114441 790367186 189034174 954195911 127208967 647958907 796758843 996006210 378534231 737552991 495695644 606908622 648039573 889826107 262035389 509219036 818185997 931226185 182867842 905558575 68269803 835583691 798233123 888329243 556672342 809774886 906317923 997634237 434860277 522712943 378844698 974837474 451968066 653782864 603922018 790483272 135717216 924211707 922897676 992430911 124899830 200157890 668120003 940418310 208901961 514169963 990133177 999208598 599273416 952827430 481788136 710935422 435034483 619144443 166028177 262124367 41768718 57300627 244123310 664466073 57791954 322337037 901390210 980508831 806012533 826803794 173778109 617015458 81499190 971614046 352730522 741754471 933062892 952778258 599752590 769394332 276678150 681946103 308536447 923123589 348951439 352767266 801758795 952868160 4463350 913617137 580037185 836487451 577832417 666909244 969357813 981664129 499028669 605900303 357390139 981164289 628085085 691251387 663223839 863870535 516195207 670507429 524513505 584720374 332638831 527296963 556710017 970593094 659649272 931643460 383348160 499458709 342519678 844008315 869252973 978092034 20553451 894448575 211548619 282945252 682347342 950773942 936805561 937083022 180278413 690228191 106473434 940749252 495381501 785013561 102574073 682058064 372375584 706023883 109427149 887232794 863600846 863849662 905094927 965587925 675973133 997637803 573359134 575397829 132605005 573992518 978766527 984222873 48912693 450134885 783910025 886535871 819903547 891128847 708857828 923972539 647615801 728020294 271801029 418508306 653684134 868409322 22580596 833122495 685216211 888211479 975696170 994275578 300479137 670807624 269089637 456224115 148052896 200679299 579379560 671417200 764706228 889657352 578195131 580483831 143589894 237684811 526961072 551564117 679808403 852849937 205616185 663341326 575196269 939101398 757533892 864750774 409253036 586334499 95018947 569344758 264637504 394664275 641486981 897496440 155873512 202259166 467287009 832209784 696247762 927871127 787881364 908857651 289926530 293455760 94068725 604961850 960944216 981042636 33479678 256730111 502897415 880818572 284962810 321768585 34401621 752008974 535362141 832974058 634893509 913723692 124975513 610940540 102711280 767501700 341712289 766575143 834300909 925185841 791895242 951156409 395121785 740642375 396139185 843545460 666647126 890486510 134979610 511410355 693313304 908922396 626760733 964946333 270322694 537876283 434168418 717261275 140013598 654390564 924415988 931463922 130528272 172789512 360961904 565376162 370433005 627394964 804415676 920873098 261884329 870162278 362646370 768833733 585511663 730813659 602201698 783946966 509981403 817284287 127999000 847580921 603518058 722495246 758574176 861571166 796565559 959223111 724852671 960530280 83272415 416332725 110937647 378373542 722066165 824541255 602246832 803962095 302273119 901828787 965354692 998656580 604194156 992925222 324846293 603161093 501083119 666700381 566001180 761428902 832004255 892229144 95030758 909684480 650069140 843251672 982345823 989533700 864769728 902737605 926282470 931458227 93300064 677553980 13497513 487569818 151765894 273845547 119920033 333435132 421839141 624749384 285130246 821787366 72479863 952910409 778166176 903342931 699502784 986967795 834973519 949998680 30058594 641838018 279310149 775259777 215264910 588103606 525253034 611898437 937159650 944765273 627546072 694306061 182499861 500441528 495781222 590297772 411193145 483124345 846175926 970474800 415687024 836995576 618244670 644498990 61364223 966050786 379219072 499519294 735448871 925417369 469278560 479593081 76633791 677955921 875981762 986574980 438401633 704980406 704379350 913963428 233978042 327039457 384344351 795297267 456619523 736235048 57034210 678590701 307539203 428086969 143240756 505844787 123488788 273563504 515351060 718336524 229509353 550450709 470228985 720212807 867584568 934754616 763723225 880853739 438856095 967204918 574263503 869766538 114199242 327999925 237567832 389758609 835390611 996028052 524713359 589113601 139753372 785498727 122326502 647083156 56112882 919149425 285542896 498208566 23337560 686157195 839918233 992374541 995993967 996802865 884155239 973320670 726163686 867516452 425225732 715042096 450217799 967554967 145883047 556520280 510837732 579222762 102197142 785337970 542648785 733187188 62058641 761631864 403191974 768096021 319788329 598338870 723825097 940715962 555056112 617923747 485436237 733197499 828543624 955215237 842976757 972081978 534782870 823196602 133207487 868663092 983508029 984908141 270775103 683465687 678543398 985771574 987228582 991611068 781399138 909240390 782929838 806055741 629603650 738170639 915876809 945040034 694248763 822743492 416763972 972236083 41338869 422893275 347198000 643076483 427912733 703059753 212934057 720771092 496710634 922945109 765739704 875624685 675213452 909897619 31342093 169051267 257372799 581970843 223468430 821422413 294877253 882781096 655272305 796545530 911402019 925500145 604477016 727764616 986820602 992946787 700142541 812669698 185320767 198417335 361085051 948056908 545486613 720750892 792072056 909223535 603688653 651310367 363974548 370454431 839383603 958771147 405038476 963547824 565304225 984278716 464347873 540543916 13967280 392715040 506925161 797813685 654571196 799840706 529060223 760867727 795757750 809386224 844999186 924763957 297412775 793378921 394738625 956148619 31810031 161803200 469309750 974827303 807472652 833010811 834593846 889958275 874335425 922300849 176313037 518166303 907465757 944057453 962281575 998261934 822097365 870759666 215857568 965706620 426499575 987113277 106707191 278610133 902473782 992321141 839067890 861411796 772673808 783265952 936411898 981087769 233349533 667729554 822161702 861015287 617626794 851594447 711301524 799029158 284654300 502806920 657709138 935660885 854104165 903889587 752716865 784055423 815788405 876861906 657055468 913423587 221640196 808402119 95063680 295117510 537599925 579839808 282724939 600481581 292515013 748083011 723340501 938387193 165017214 376444247 60827835 947761651 646362301 996497485 890327538 945303785 963983838 968829169 736635439 793110664 404277072 897177271 349505304 418917538 84829502 955785177 951476280 969155278 475181239 943203546 976825024 983325067 762507279 914242567 122217171 300792940 783038859 921251951 823391614 907401080 402341142 522219794 799341813 882863021 508037750 904516595 924469337 983381552 68090675 440303025 201660464 704519279 824086314 968739833 813932083 866025524 308728024 493410030 923755603 980416020 930401387 935675142 883706553 987058622 400651061 478092491 40551515 84412549 56760475 674097870 49303408 70090553 283750079 563732604 843278866 927996790 448885681 935496825 82987049 690615220 954023486 998071451 6954548 608813265 9820080 960383626 665293971 849903865 479027470 622796971 425858341 846592499 429981973 472639733 131093963 504007710 710123844 814856388 163609137 715408200 534580332 980786005 205584724 998174007 373364642 971810342 942257737 962031637 768877000 937412637 239300253 733707866 799685439 909254168 112863276 171459346 353337029 729431074 333349256 731399363 658231452 985625648 886416864 946277624 821394279 886873446 278885985 632212453 555905725 843700510 875963515 969876960 796141183 811707315 889219348 976496676 650548659 897679175 922627855 922830024 591026037 778707714 394428226 673543848 696782943 819911482 702284744 864631076 245014196 426897606 93355150 816617271 711415303 839569206 609686037 993221100 238953683 782591765 501452040 683933903 867413541 871340049 674246016 963194447 123157295 439666434 131883234 634768110 611078488 839947835 362293404 900526869 318302904 844158293 715593286 968220037 726067043 861483952 636672640 910563271 230074456 935123939 753169106 978265188 846247325 918389767 544272730 896415896 576294947 873557672 430968873 634980415 416043629 842631100 574917989 639432649 114822938 340075313 527657240 617650483 801036836 802498984 704558217 906531408 410000223 462830078 470973269 637115485 962387963 972531550 677680792 887126578 995935008 998809320 67998466 633295907 443616664 958662359 273522132 633503542 124032675 567030393 724865776 937656871 907355734 999192253 470593722 516483530 381403647 940913001 375221599 723827867 280476693 467790056 748158097 998921500 499804208 534368132 868826035 878211342 651526316 838079946 115061133 358595520 702883103 871365708 514182769 641130087 716195096 921181703 277628600 595347896 177048176 186687895 743519911 958689198 816854174 910696053 10690204 820959399 109220846 381463222 674369123 687027686 341540711 587075037 964814460 982736301 547226072 853931551 119033577 478634085 189592408 597804275 392114757 651565499 693008730 983462436 13177923 137357712 526927635 592007263 4801056 706615321 604147070 967420845 651952112 709298173 206918193 767125830 402025239 574431753 975446750 993029366 874512150 916663017 352257365 569311507 608503987 766652965 495463293 607173746 577061266 907151696 604850097 943474409 203774065 406813599 128992771 650399162 241220285 688155551 572309267 732167590 265394908 486257212 180694048 502221243 977890566 981813989 250022439 477773877 209534251 373086894 70681657 851621251 240424173 467785026 658112702 766413054 146774489 968625429 108492696 468035580 220121090 857036613 505383577 510087264 858577328 905495565 170037776 243915190 464976306 662471619 763479415 851764150 837507627 914200887 659080197 962328306 735484793 980367961 704448039 871705571 604867641 796143210 967050850 989265500 211422104 648879583 634653090 706004248 594924788 655276088 121946705 721333071 446016573 782678507 516871902 922662059 824083100 870401955 308162650 791771748 596474835 659595308 226147975 966630546 43517815 802001228 802602574 844561893 729939882 934783687 698938133 995352253 782814433 845425951 172921125 587809627 320130336 724135012 564397319 875354891 831790244 957129059 859839248 977848782 601274911 841903606 759296456 910298002 23893885 617707057 728751262 765571335 281417348 816790961 990638827 994748937 8238719 810105282 283052194 985114268 511194552 837355659 360918619 671222309 324948220 366788123 546824384 560168640 6440527 26599017 138473845 211538031 804490320 811146499 26013434 443142888 507616798 896459520 16043612 17970182 257072434 486801666 181024744 673815697 577695865 939841652 925041421 991533554 211920372 555131945 871838200 955940602 254813669 387082037 511694658 729837014 35611522 972441054 838169622 917570574 446972880 599526189 309133298 874117916 90135698 971609985 717267568 924470939 109758470 873645656 569312511 974947460 27149387 636011965 954702437 965455132 362842337 833883424 680676138 709558005 204796005 666465681 683118219 746678233 783131954 855441860 871749376 962943539 276264043 559671693 156539878 536187479 174518613 798797164 533991128 692520297 355686193 407623324 439793312 719747325 722768790 798921385 163640508 699908744 608690539 705725127 257169148 532612843 341599764 923082071 339141019 371891019 610884559 868008506 263246662 366419023 831898686 967687246 853975392 857511670 933575584 934836672 550014125 948964709 787727729 892683216 673875181 860559339 977987211 987767331 683780590 855298329 317906740 358718608 303439482 614693820 380824462 518273072 261143380 982102199 356124954 629952264 901595575 926206712 606615852 907626168 728728471 998138653 915102761 964316238 9497881 730802430 164474061 356130327 734630188 766256336 577487736 635229452 896421318 959019978 102268940 282174316 854387790 951776659 816499492 845169901 559872587 654621682 489535526 625662157 561728486 594256946 381697819 771328308 136396524 267318639 76398710 246720777 940600628 995506643 836376460 992880582 817072123 818718058 961019094 962082216 677226338 682483858 270143962 436149220 86187449 437371271 4670830 612977438 486267682 703533722 453229487 874398505 847761969 861885672 97821430 575592819 664901710 808535995 794346264 831834030 455957211 872111461 2407051 553824992 74995111 564421687 238196158 607757056 743988941 973442417 166067680 220444053 526275809 562311785 992140740 998406510 711464736 963731560 357307688 905854377 757867568 939810923 384545793 437036889 452111401 958796445 585061942 731486843 425051375 648135129 145339886 550332759 913311385 951072313 419274026 811524592 801447200 935463575 523358992 970933053 204830023 523753183 141518103 677633277 159324716 181811982 808676588 887490128 400253490 650395681 249910756 777940503 428475372 755167678 462476306 492363316 243838242 904019936 605075056 672762067 294875110 857327391 801442688 867040387 222515277 998481609 191313074 192455013 182756204 385004276 809048035 839446725 401673958 688530822 497751349 575510910 214178338 726548888 869021781 981051312 18212392 551801148 465805011 473153188 403640333 474820412 655248944 805404679 491700265 706834213 867250156 891806099 758043415 839275582 792706404 962242613 659013398 829242084 129626670 482798760 750231595 843621014 100845333 216715487 680419054 928678180 812252969 853695832 908085754 931190224 942786728 950894678 568884172 710598993 844158277 901567967 928319 574795840 629612751 790109549 63454617 449389911 369039645 443404834 226326099 484321012 496512720 958062244 777944406 797252833 209244894 467349012 497415476 719832598 61492594 564503368 797234030 934764558 92891739 119722923 390662669 929776051 61232771 291586915 377601997 488855809 155355569 674950299 842462926 965506971 812457188 910332009 507288717 536836955 854953743 930280300 651754249 756921987 554214249 997834831 96348788 907067094 645776645 887225464 343336504 889494708 629112026 772376626 641289207 951756672 540206847 590672005 805471230 813738004 136348333 920279406 563538122 669040389 410132236 572789674 316944716 880611725 909492189 947324946 636449796 898347384 953812100 985366341 146677691 331448368 556607264 689539109 286248018 659066268 193866399 783996745 744369501 759614846 109503110 364671899 655049972 730219991 945846885 961716969 591005840 914457961 596620967 625327190 827195128 834219548 309288282 765234692 763379322 767528709 633296100 766492505 493271940 973143672 586516408 750182838 847729068 864371386 660191924 961555254 131401656 728721293 118980625 801522919 27906975 810798067 337234358 954268521 237736139 853105785 775066238 827292592 677696575 850401456 610899174 739722593 123512180 175932547 167965760 986196876 932443734 950317975 73517198 163207071 554276788 805396289 664548326 882577200 615179035 916169811 944572618 968305493 412839367 720522993 558283275 811598030 754672304 965265472 929934514 975556472 303136846 999556460 920709463 953748171 346767531 492360376 753804707 882712469 411575120 625504816 754631860 989217663 218607303 786847209 364506216 947789617 454360666 523865439 879336931 984143903 684498253 721743522 318878014 806713566 975071857 997798108 465805716 510124167 207380919 461106642 223595743 955184110 544507290 752919586 892124341 963972727 904284673 989703953 555669662 577884070 923215570 974059257 907718943 999284291 222104538 537639809 203402505 443269535 582944148 587836570 259788693 845955421 50265473 766193869 98388182 387223420 337163907 837133606 787331607 860224603 501835748 790264553 120688675 571642595 571180231 711748962 697692093 764454282 147014720 424643124 345692026 601143567 634694727 790768505 337572122 493994242 337743940 706475019 918937323 932777009 106061680 938890660 812028164 961798024 990997530 998441696 657187603 738440067 491034549 750783417 531678104 785568054 227766796 739014382 788107871 802627201 295701358 823828735 490080180 804445660 962069923 967284425 772468100 864514249 983853529 990107571 849614189 857194507 771045330 992043275 753892732 828934075 988545717 989679302 627885990 768804886 228705452 630389149 662653748 831239474 659590312 783018292 194850696 722502726 272462565 840723911 629715566 965703705 742962820 785986432 657940684 956495457 389377806 634444811 101050379 633747792 864996512 986486104 444628113 622100736 296643448 948006366 51738305 432894075 490963293 839189388 969851701 985525561 737809172 908649096 92131021 660520029 218972516 360800180 40391417 608545478 442492722 842377261 808389970 992488059 678117170 733921470 141395618 772258233 779276132 808936430 644568360 786833313 855072868 861503180 523427138 891277065 489229686 929364284 922109276 937047050 786605805 945303970 59077551 606949156 864696014 879742178 748404457 875255047 365262158 456073054 985621893 994180958 71096355 230481374 900872913 986021131 565704390 978205445 106550901 132991252 223113724 236617846 204624744 829025479 46183750 134853215 581067321 812670006 390097080 394316252 914716864 998607602 199192253 795572648 637129955 710204549 894015433 926809786 187148192 411956504 367127590 839635302 125651625 652727300 963610160 987675660 360481588 805570508 680181284 911932837 705003753 942526164 128038156 612305211 877453474 981750669 184666061 497622700 19488587 189974592 159434398 958284382 407013158 656715452 67898972 130971480 971902993 972618863 231991228 727848238 49421095 271975660 125817328 693794669 270763392 427446624 574244549 823017274 469781688 582667681 262419320 365225559 636202527 655645206 516639237 671321832 324873735 585546907 407577797 831007261 536385822 847145455 503957125 853382146 344942326 585639754 745180360 911014412 439805889 787935674 16793039 320740257 624578734 741691630 454319288 672465772 345275050 534466111 816288935 867923851 214168361 925679785 725721971 801878830 590211737 857968205 882375790 978662282 11657884 521342058 487959270 663116706 974403590 987933899 971354430 980712055 249883689 275206772 638917935 775919010 446627601 638506304 580820464 607921850 569597637 710125963 103024756 146489453 474344639 995376803 705121018 803233629 574444294 800137388 673076652 960269044 856735833 893098612 131721905 270071212 866697824 925498468 805249170 905808873 820857153 973315085 906152642 963503767 549689563 801154868 132657337 333016843 975662053 982873883 972742551 981219072 114978221 647638101 642987407 674370840 138276530 242060241 700988094 804632855 739655113 824387537 276688655 812536645 858844132 934422304 143503488 686677611 20496844 542249344 247237801 515615618 668338459 920943909 397911706 447023906 15757886 736303483 938864221 995291467 642743020 952893204 207112238 627575084 788021816 931174814 553458069 994024945 511074745 931135024 116194122 923851105 507658370 806806847 879576733 897703260 333369550 721801980 811293826 831458748 445847180 892517184 739155410 813400312 771883682 904171253 927853868 965708673 326622722 612002885 190987379 265924404 93243064 289667975 456315726 528645310 702117142 905941241 781789057 846915810 572972744 597194403 525617292 823985839 584667782 958778987 648590737 817256041 169284356 971674082 595313799 678478153 686543385 957115681 209474216 939870745 476864922 537228366 337486194 804971046 799794755 954081182 489910922 891894646 864225829 871322612 617783627 655726748 181687320 935855421 724159930 877709390 860421529 938632231 762685776 958028841 287460582 565317674 19389097 360633183 287307025 827443364 807993248 949490846 808935638 825537378 927507839 975412285 452244822 461980428 897738609 984841689 914690847 965771394 63172223 618074316 888072262 905253451 67781694 71076253 803693592 909132069 569582 389447693 695210117 802288681 90742109 583502423 310142960 416555674 982733181 991085589 429724816 528509371 796625826 871291564 78583522 301377086 376896317 736789779 567690579 961358853 397146731 813715217 734848380 972119787 464828993 883795474 240105394 442661491 637600848 853834297 96040692 133278820 740892963 916061714 73266441 625007716 754166282 768364298 722684994 995342522 353788800 607983292 953547178 956925532 149052434 411919093 308564218 391001349 628446843 892754696 89943785 449194308 251412848 872156943 139322992 150500363 24246446 330681255 655811846 936844248 672823169 890500005 367479126 462882672 840293861 915192652 815686982 854945058 446496466 999006842 21133652 962836812 351240992 457880108 480086974 548707045 736742384 820984088 120428894 213517951 576687145 631326561 831785322 910628372 555223984 829948000 877722978 942600315 897676419 901682021 648890756 685030183 247710267 504947208 874384580 940376096 563936445 977595366 213256694 962429561 929505867 939437708 432662002 470010303 189691154 756252503 845957865 866837156 784727481 949806974 893668366 916422783 666801026 695201903 684224544 829313149 522241739 936819539 143010375 724718501 616063109 699037876 83453954 890146475 436803851 460332156 725399512 728511456 662793810 790145832 107469378 341126578 162941064 757348838 349408182 597705148 810757916 911791474 369699261 516712198 408213664 599373089 422830601 860682721 85159376 785905827 58381653 957413252 195999178 977292371 532123750 782024210 318821967 420192569 237349281 437390444 606469617 930783124 546550617 573329650 319062146 479788588 826152120 945137424 446245076 982051255 60596713 963765948 935539080 938661722 799996977 920156600 400550724 984332920 160787796 657553830 630566858 706440503 463893033 893431507 359816321 978929984 930856138 960158205 885558125 927609477 374892416 383599876 436633657 625850699 333750575 879069489 432371140 652351421 982001625 982846551 229857018 428975989 170424342 362666086 256738753 622106509 8070052 649063440 984534447 998864913 579924812 696964428 241447165 338114411 881631590 995573307 10439843 212704971 437958261 925531390 781993472 885279754 207807288 454024263 648690095 888384224 639771650 903675545 530610686 633428740 961666304 995578819 1668170 251108086 617315655 972931666 71897098 927095798 483791827 907167019 760328874 949430441 749530771 917646612 292832935 775771084 310361364 371640046 625429492 867137788 395225188 520885668 906527988 975068264 588297555 784596158 918257974 985487045 908313429 947264023 720709046 960477187 838862739 874818185 885376751 983721726 541162164 969796365 218048626 589359161 854796209 890453858 734317137 840750429 599049661 607738884 844256707 945762394 247020488 845675504 822814353 939402774 555391631 597374743 417372333 682792104 36815154 375512335 328845958 419350127 521196005 649281351 954077873 989122565 7733298 373687891 82222790 850576997 119756746 931211887 42138648 522157345 44651285 196623861 699338239 808844037 257101577 886525427 150915585 842989882 244190461 281558525 214974216 877638602 861051319 910053462 558590758 876393068 666762232 767835195 470004786 908529136 262908164 692731839 442143163 589027510 966703561 976982803 45479490 254456224 354166405 375960466 664006543 837621862 766525124 826955955 412967456 895651505 76897834 598747848 697928401 784765233 912780197 936306564 35221391 285073136 101267549 144734653 251986732 609266906 543271061 921559875 712966564 740062502 763771440 815269883 540234251 723843455 651894915 947006767 298326619 763583757 654577976 787461777 921923384 927096510 844131563 920881094 657002520 761223367 766202875 991009740 170650200 243379794 479044485 643507433 732294760 922934747 620098940 967251423 321694961 508617483 630098077 776979098 943647952 954168999 664765218 775237613 835027257 955870105 719560282 821725215 754169248 803570994 104493309 734192061 15647287 162948871 656012137 939849022 703994853 879564786 293427706 873828323 606785491 705518297 364182258 574997221 160434387 411132205 792105700 909398022 15785264 49361660 273565325 653913948 792240420 957102569 818825667 819839540 993577245 996112221 980674839 995819363 603258601 951315655 220907668 718460854 260834783 703870099 479080073 660358510 329188969 725195031 937415913 970931879 985268202 998139536 297913507 670503856 633432401 946558510 842803272 952816611 782342069 951322496 621698695 857686057 221908569 939506688 300875154 862672207 763564019 847716919 953692961 995133828 593187964 861362446 522188677 930848745 208664441 982307642 127456989 409953652 54691850 803680216 307302740 834367907 412814711 632785142 752227386 913940239 899172527 979615677 723195521 723480698 228955725 724219087 241049169 525565770 527830406 794420735 977845174 998191142 52161184 323308083 252580883 537182941 519074009 544091023 935101324 956246202 993784648 995290739 944827601 955251199 193684743 808951574 276866373 849114025 289677063 460041280 4815444 551979588 127799268 864596685 807957767 880875564 111746037 291407373 750170195 910036725 193521660 825891757 823766075 890658745 385423252 631610376 472456328 870490208 664144385 956370927 915924096 969049472 490148611 782969861 789350887 922398044 85402931 234828292 259506848 610222504 401272177 678835772 528966541 916808527 882681369 995099315 622580521 646487456 248938185 400725694 645616396 873449459 246500301 624141032 420154339 453446898 277975498 658946861 169488757 565317170 464549366 668819592 331728074 554719790 136437232 138149660 320782735 529740514 93669124 215972179 696165283 861511971 782373291 917274478 344725874 839454666 60286149 919969492 465313424 631687990 342085697 623151484 412767684 617622454 28268767 507724084 729079944 962371526 308849754 330924963 434763897 559804278 660543894 899531328 177241420 224766230 635815084 967368675 93735511 665816416 981394402 999757569 43098552 117666067 297155092 432086145 993925647 994676392 47514235 55646535 74514007 908418747 156690086 622120971 501993371 568069655 905771297 972643903 982272512 988493341 147983482 844694618 431314692 637683044 92721520 950700933 466685401 881490356 100340271 699717225 98400648 613260059 971067888 985908491 162108167 483523381 278641493 860177745 652060805 923296681 388197032 527186111 679172147 828321052 405406068 630785282 834448991 962243645 493112869 844223851 555734973 652344583 717668329 778704426 144257668 779795340 368313174 419239182 945689112 945875494 984123607 987876466 191721277 494818204 554422363 872283016 396229489 471861639 987225433 990456832 537193926 687771936 945788709 955028972 32869114 428683398 86783407 913710519 965325425 971234499 790607745 931115830 195904606 556050266 108283402 399924046 886088882 988014736 888069469 970810501 293388587 751606378 603370625 934345090 915399680 974276969 959103457 979091669 335057421 958857505 968577623 994302002 109661100 984643083 480380491 610479076 156296031 473447243 538256739 555738034 395258926 455469380 378987957 873033653 608182440 866210973 880453505 926219288 372677169 437302663 654685192 726095087 560522848 842764636 911921069 993753750 606693946 752920749 681760049 918641449 855597970 987874249 513256448 762219364 949386988 962740842 553397863 665334767 561857963 991586363 129058918 537970898 129426958 382642278 933527722 998007936 613363202 890742290 201505025 340795643 297771376 548019130 639216107 927940753 339040421 401078476 403272857 686773941 44573604 819498481 593543758 837591457 89177742 864189192 795224763 851874331 438732791 709754815 281267394 746198017 789403697 821108531 882526228 884734349 32700025 958551068 500060864 514756412 843932076 923344204 662548509 731403520 771118309 969176369 771922996 869815123 862357650 890966176 548825166 776486788 771336703 791453980 378409531 921115958 76115889 587115765 200109122 465637548 731031351 759757289 199788452 404650865 797425043 953505179 885970599 921318613 603980218 612562118 882189933 933373429 2272021 63928025 880245945 942356201 212835971 663631156 72080192 504204222 78896428 502733676 134256667 247636308 329054285 540004017 685786252 899999593 63521081 149548428 43597651 94308126 353616051 983764076 961745634 989816110 408769030 557043662 344361421 997551946 731325000 797126463 718386134 739390227 895342804 961571897 454636265 899389969 699491379 939726981 947148350 969270343 562364727 673623298 530128314 762730111 529030895 884521271 327470170 338270279 382162459 769189962 867350894 954081690 711746187 902244943 597875767 947593952 143250380 712232428 268117291 841602097 962792568 996581527 682939666 869619286 934309555 964664679 274958837 599961432 702033251 879505130 555718232 619540138 498173 746438545 845140716 944677736 143673996 357942989 418567305 704969662 84772704 311505438 133758391 198115990 337909058 604601470 248504423 997678916 758191200 936843146 860640957 936836871 73028859 553606455 391031216 557838154 290451957 419115864 572361943 582799044 624700869 768232698 292422852 902032775 290816512 383454265 370726952 935451829 734766262 826831768 350936865 770313527 187303009 834492832 379322679 699422150 631261497 690935472 259614093 694877452 451363476 550676980 615234119 910705484 327336730 986356262 148918371 531101741 619721877 668157800 727783864 863433341 310975938 521038125 103939950 359099117 178801586 288226569 621817555 798437768 900115147 998707061 638806151 942815969 744292789 915111379 395088743 923571857 509336795 770743516 963677843 989636809 976587541 979986753 860036162 954577826 162835392 439135802 179842050 546999422 241200811 802208839 6660108 804707145 437609790 609569967 889502411 896855798 57096250 460428563 211560590 350446561 535148555 895156970 877797767 931124999 667238827 694084840 300567242 392067488 321494511 835420936 219325659 506750238 635874705 831113525 481149503 978139790 710081603 761398969 143630664 895389512 649151486 993749475 82839626 388212126 422461891 434173065 844797744 947649013 902146171 979446522 554137521 730857531 343917105 486276053 454037961 580570688 449018203 827326452 476262277 679077722 932978941 936680204 897178117 981217382 303267323 501584612 166054590 455372386 54673843 156297169 407934112 982064713 379991306 400912372 146462400 762330721 916629809 985466433 914384620 953037518 57933633 697250712 287463676 758355159 65175250 902144257 358216965 385375566 172454353 176104658 653664708 798536584 404034963 844555483 494816139 589967891 944320275 984351115 829893428 889200088 163670871 189183143 150204168 957302118 978659692 979771144 253032152 426033659 6878137 887516685 488459385 560644303 951045481 972275061 167062915 958592841 230928225 286444238 657421428 680337131 219135589 395846840 672379430 896251588 206889096 305044548 720803303 883821556 96593525 442154158 677450377 857362817 738699607 926523374 993014181 998600979 279851309 831320046 304102454 347639084 725226967 900576362 32312903 574735187 876203830 967583168 518225875 774342121 607746158 768850849 503830738 924746833 15934793 22586672 414722799 790037601 238761685 406412305 798143888 842499970 930780239 935538050 405421683 952904139 748341884 767468569 498234933 681596706 759497820 816888588 258460787 615545799 745459289 832316360 613295993 860145912 422625600 427537416 85412304 421778021 997992441 998128500 275983346 725616417 12192713 931685260 130779591 922968193 912215758 932268775 407584537 467487436 114650714 319089796 318136920 660486448 747779676 795388295 922005635 950065191 342271072 670208565 947416878 952089811 433962828 617249773 416770990 979548829 426799331 535565686 243301093 785502770 847211127 993805119 642859765 828305777 973322790 995934851 424231838 636514229 372822179 573671456 167678259 745315809 716304431 985956386 443951996 945877812 710649667 779512423 690407841 753588195 746829770 809118543 858643143 901020633 257326906 397937940 569104709 926731345 547292854 904725110 963284287 964189905 16339406 617429285 547365553 560749096 725517120 901609971 199765237 573589170 654640854 999844870 651137168 745864234 532758627 702545888 176947351 742208474 709850315 805416239 663661888 719690121 801825282 903635413 723992417 874239077 951819522 990729693 467190790 564314910 867140261 951596914 778865401 948246035 855207980 864895550 983984270 998867635 102661045 343098800 880924960 943728591 451300806 504640657 439995487 453674037 325134228 563425006 176700499 341897410 525942011 662220254 198616619 339903228 972648174 990815194 970804810 976556695 80489981 188216415 983053388 999094177 35609717 423142570 533143710 828640835 172888321 224843408 946631137 983630692 560799327 738416936 986477929 997978702 839506922 894829238 130183113 754348373 456125957 466339474 806530811 824507147 100054021 247238241 16919276 398463674 200352221 715090961 61007102 685825312 988558487 989157711 681610963 809378523 754051310 799594877 143111752 881291001 37509328 429695977 596179138 775940199 831593221 946504122 615142283 788601799 815781872 910028276 625507020 652743744 888045817 967867594 850422980 908258483 607813239 740195135 712604340 855407471 212951448 543121920 61062158 497942372 324565393 897359027 818663684 899666533 788896988 821126011 394675830 872407736 182527851 673429239 125514282 322470329 3447133 229361242 740971965 819198243 513020235 642427663 692533095 962854202 266806373 390272882 984884033 988085211 421910180 603208833 844419461 876316656 166261610 878365921 871944642 953610593 957230171 980680365 349681289 462734902 519941513 995212825 877202264 978708073 677710771 682252840 31905662 889089436 269079728 771239180 698515000 756020413 634408701 888081647 322125034 844353368 243176572 371104973 55236332 547178289 505888910 820974760 306857848 956171019 804913147 830542058 524526727 764966509 208697563 813383856 680202280 977169367 341522330 857123937 240680357 836406561 997124596 999411812 449323537 946417959 692668094 813194023 746355121 814254628 576142759 586077536 945216813 967662132 860137440 882316648 21915384 855483084 128839065 947135400 367853388 823911680 891504034 969781240 177463100 704536675 369444351 724146916 452702393 937234375 210588094 226668400 319858774 390279464 40009234 236231292 483105360 688734432 914617208 935473542 546409427 719611511 799952337 962320799 166567983 293122032 165047720 333821055 893573256 983506930 685330210 968915299 208227236 934773035 233217650 944961746 606150574 706541261 664607201 714824824 534225314 642955486 954503905 975388922 236396744 939879403 999831390 999989684 72575955 447183757 417995864 798644563 283990172 906741077 165658884 352253903 713037574 794492400 599725022 682396625 787316889 947861865 530076301 914011948 952274268 989269881 911814002 998077667 282885313 577192538 934192633 980481561 464359875 876132922 982616346 987812929 433487780 604559872 103005157 689314051 822728891 942626429 996037731 998484270 425253089 482246226 916225161 962900885 95683479 673974585 39465195 931560414 303092765 655260055 883354620 953607688 128044470 321213853 334588230 597747669 320280349 857952863 95569671 231630780 225146318 783972476 658707729 728762093 413954241 570651668 131351207 726769948 469441468 920210991 765553116 846488414 918470167 949227414 876384433 888394385 368122474 507102456 4486419 994106339 299061280 631489274 291159327 623253390 730734766 833191866 365108675 764303171 236281444 673204432 133345001 808900489 112760084 998320819 254070322 290088950 748244391 798568766 450391654 614812638 534156286 585323441 986517900 987326129 408866091 902350384 386926230 771755274 205378795 379668551 890527456 992000809 941823748 984153185 497769828 883679254 943791262 947949553 406748442 812754119 353626319 944168653 18431861 779139783 367998747 905533905 695091653 786369094 669767927 839971585 911074710 912649581 388211769 750677667 397703062 784589300 131304577 146037886 705191691 926632090 313349388 517630551 413662219 991490687 418009502 428829246 688925951 725886596 206623001 225084544 942202101 951940635 610136960 906844306 420016315 974213645 899444184 990538760 324528420 772327967 157180437 998791661 255303834 345772955 655074131 967336254 984343333 986107299 514331128 643507673 100984669 727688579 252695098 897166328 516353217 645232806 123184353 527083556 893770550 956960152 66005713 234041096 556475552 751705409 589827849 964213276 445712922 830691627 598498363 746787992 87905585 766258668 785225375 965898108 708687549 739165459 358808386 722969755 460727411 561377799 757990702 839012878 188572543 673325773 970040459 993551287 749485868 850006585 695626393 993315140 981966236 994491682 882791180 921347365 384439391 647778401 988535863 993164852 430349744 914567558 477474132 958437471 207232396 464799344 594845399 770829808 176797889 458128559 364916134 928653287 580819057 611284093 306787416 759736827 26858706 787099080 883768508 974485357 596003854 911457337 17682188 446516532 164716277 861154635 468761589 579983795 500509772 995906725 474217197 496849592 238461603 943423589 764307090 960477903 10957591 551390105 582528814 832788162 205434707 366441008 289504239 967032946 174025532 358711621 378278418 411555026 2148984 153033569 228743644 476666762 914308841 914559310 447175503 520683304 259109837 301506997 554913690 602761501 434833088 780564692 549149838 929059518 1915124 217131091 870315676 893357340 821657855 960969383 241746740 516799401 426275984 788934599 20528607 582268005 257918636 810382303 761838773 912768075 262117225 885126847 813481429 892309377 129502107 816041662 243192988 496028705 736564990 968482320 62036250 124772617 82811752 421374780 950485786 976550885 830504564 928035615 660218767 896704466 998998666 999336915 416043877 579641681 158431719 196900913 926569106 926617685 500823462 818972171 866986250 931854261 787713148 977828045 968478986 972706528 685101481 815296264 323743967 937071336 827981847 853330338 521920739 954581568 193734413 500786519 322311131 958543179 637860835 801863739 753526955 982554593 484878441 895063671 483280482 650611874 336212108 825925600 218421588 721471671 970931330 997280412 81153544 828472655 298989964 366897320 195283177 253433244 421533956 584767268 73531243 902945064 700467537 781204604 546708813 830420648 201602983 643520862 761639599 908623566 154432977 789299218 919840731 939403984 377326031 385872807 614990786 843593201 47817214 114713133 953751454 981057128 759927272 836334433 801677389 873171682 489177490 867830673 149183029 579448564 846218381 878076647 758738270 767503930 136378765 719974242 725226811 843372618 937615607 966569159 332683481 713881795 796617970 906496910 529818189 620092713 860526047 935507238 731405121 797089288 86715284 760502334 482165955 731141278 195027580 904378348 869844894 969147182 481345201 707980309 539365174 905459383 818936397 875090297 771391599 960445065 917475921 956224837 315234449 982866553 447075375 586600552 405246182 731862780 927642087 957709219 403734043 545229557 269281905 615047930 584110761 811552680 444636060 974592160 755124887 998853235 181994009 885706378 935360557 973801698 80144330 145166523 368782779 398091836 322507100 388885782 708023557 904267957 751086939 912155398 770697481 976267114 456030549 484199848 155026580 736635182 315788505 347497854 406431987 744507513 245644801 677144036 890848470 957498883 596231163 844343061 762029459 841538060 887599954 993008680 231269167 270124609 937005434 998832843 96727480 744100273 193994594 712230168 546776491 554036206 853051629 855318570 319080403 730279508 613977074 745039398 154824933 301110188 201958431 859984491 205690216 660341920 441444845 947773290 229379518 284773146 939466806 947098731 510250718 814767730 777503155 868118803 671074131 841056554 265457718 563979584 232171617 528139499 745491562 763426167 622980220 889048266 66696018 241571997 724886562 871047344 208647655 394110897 969775740 984514036 82431280 881151346 81672972 635101242 627416843 804045016 306911102 879340348 502185597 880109866 45667581 74150932 319198058 774488282 528146345 543662108 337150635 401064169 191342943 727277306 977326859 985620947 674308603 716796553 183732197 302769200 357629077 960734697 741203736 975166895 651350092 816344560 544501192 889306763 685078390 729808113 373754824 689840672 748539067 960603908 897897318 995186087 279239207 769602747 623644158 805644765 991833426 999091476 61692682 980684028 216045756 845504333 894533666 899484998 608394244 784204663 251150167 986797929 59101029 492626909 812415234 960411289 588117714 656578142 320996295 476807629 120829196 956323417 378904732 501518874 226270378 833053102 10123023 611510340 108444043 999101864 411425098 674070451 727655035 821838440 556115808 765491702 288110631 914993353 606721994 962783402 762570834 944143252 158034823 291651529 394952071 414601064 72372769 929310786 232172897 561447302 329563469 831000911 740518990 827343002 586337330 920753558 932727012 947790401 706736797 942450175 825191462 908286822 359059226 580224799 865429712 895980118 74345650 873683191 573479585 865169484 377140389 616171037 468847440 671168253 154166620 424240464 769298089 787357329 686201124 964649072 533469028 557073959 32913269 671775376 816477821 828133104 901422663 979398171 483716550 740553951 918487086 923582470 274026352 998980811 216058295 352218646 735379366 922115495 149525187 462549702 300873800 485383513 246611648 607055041 71334736 768229755 938583300 982901083 841803011 866754744 365037356 703992339 292531817 916799850 453454241 787884384 33030514 109198042 990372943 994270214 978341200 985662108 279048956 971954505 452920714 831399974 41736008 560130044 222069502 956454106 707711169 774571413 649152927 778046136 216609132 435943779 272202709 868884181 138778778 609432175 515647731 672294409 94106587 969007315 278787312 988535886 93129778 957785576 392541781 636222224 65943838 152364288 250001994 286901636 181888635 277201461 988220699 991623536 672775488 843795324 411247503 956648172 175318833 189840856 970369443 992776399 259801110 843063733 221038618 731321081 993683535 998773511 116368181 990454760 174806827 725846531 991623731 994557849 811839222 841628909 426861432 892746229 105320047 862467632 551475886 895617382 13213253 896298299 917051317 976577533 39182833 559879944 222824009 965122812 257746577 885292036 687553948 886225494 567748282 731462809 538462446 685157014 93618345 509242178 130407299 877034147 989585089 994281975 889342746 927829238 799472251 983167537 720514647 854812537 249886163 255387424 287522766 300379969 547413811 656960226 700843680 722746543 69733541 584581025 216380656 779230440 903634633 919012844 49006228 261849064 461773016 575439180 557264525 969092327 760870594 812301960 973469948 989107277 782594846 980048609 321982389 353381288 236033325 390649769 827012167 980401271 967202362 984219081 307097858 486099439 290943200 389354761 235813886 626674727 104097151 545453726 852542168 962415258 968652437 978930823 936728149 959117092 146978817 746324805 811611282 981299315 538879686 818715037 827351216 838487700 232995960 381765903 935881927 955681537 80725348 738132302 317345546 610285746 955042300 964052152 964967562 969698454 911675501 995659557 37499787 316103936 887064635 983131095 99476539 678765096 218453670 888938064 74787576 376211889 831548604 914737113 874699462 987931356 518422465 577327217 867596166 954479456 958801936 997658724 315877155 844938242 10147788 191198557 463550334 735735786 718087706 882878386 13886953 913208552 336213436 639692297 829132854 993283696 374587420 767366961 401868845 799067661 320003517 441128605 638536402 965602501 207765391 743720583 65426382 997361936 346595981 595700403 872439971 881025486 846596097 936007046 406456355 461592630 109324186 360338623 171800879 368496975 449732995 644915331 689951583 942218713 584924770 934141610 548852994 981180345 66165166 915677613 101547396 872668847 366179360 825684195 307838486 424405833 335543631 734786570 394894066 408906521 964934301 997079313 870076641 886292416 670507870 693923070 136897469 710073807 51001229 605025433 688494227 908421532 916553328 991897364 859875333 896359443 240323942 804836141 571590849 635615153 940324633 987728320 157574676 682265433 613646732 691962019 751408510 803505622 908514294 915912972 354764320 733296849 665512311 848772707 747288501 847078414 713511960 812681954 531070745 716528710 449447082 647846217 411951645 706103441 480230520 613272039 538278907 841705786 616686773 890446208 47285536 874956205 691751668 982215723 442793195 855485345 302791291 825553670 149289470 944574848 405337115 851012107 731022627 934142831 257980159 702742919 477914886 627896904 510243722 920426380 874910442 926774487 44406755 311460855 509436004 749727225 53869633 358239353 110980581 139624241 213995604 392680080 601726384 656276386 291377940 300134431 784425038 871935198 819578766 905230823 374200653 546220398 829803868 908642657 555667183 561161859 188903618 598185086 870791993 905266537 509213338 524282996 297245561 308584861 505512732 691189532 495863574 994595869 934535196 994052542 308597673 777038083 659618938 870259248 498127888 980825662 844494412 854013967 778804000 980466794 20104556 639031962 848669966 979322352 359936312 986569387 605301259 969738206 476260182 692722559 903655017 984004353 577541578 932903839 914062522 969775201 77385927 421783102 269717372 520344093 158944786 449374071 731513779 769498912 745874359 962938045 695136161 787197085 159217782 941749051 115087168 766728100 577637493 711535043 549668206 924789143 462863211 685547174 873527432 969139500 662651750 908986099 728027319 939745364 198224765 627463995 750948177 777019156 395842328 989704522 486976968 822360948 566847254 934200057 166844187 346828322 747124186 948890674 232825257 771397395 317220292 479836456 860457668 961835932 301913249 378146614 171365422 416693615 945988130 972578018 790583033 950722730 608639581 987512122 35002651 774792841 523192477 878906618 343096359 605535089 735210376 792290625 940521912 975065403 933577801 986138508 536493430 730092713 644080066 753403389 613942814 941619037 38293370 51893272 147723707 750724611 777180721 931404634 908987019 915459824 593376092 819066257 677137435 730035324 16678172 951176662 396404334 666918976 564566019 773698283 877734044 980220801 923402049 930120833 913397047 990974239 872065153 984481465 5046261 331017838 992035794 993071221 84416999 90653085 709256835 947661934 57915344 142296837 333271884 781573935 953832474 974864216 624575756 784139077 492649163 904698616 718688984 883120664 461786622 855202119 356504886 624069321 864455311 942459119 696040832 840056507 6079903 316700707 481398001 873827225 144630426 668317576 787922073 870801930 699634236 812922443 415767362 774120276 163434525 955431423 731890502 884419241 197449069 966596182 886284007 937384991 792826970 880533800 21944380 600625885 990507167 990857416 14868811 998173309 689537565 832017252 75731511 802295776 525305072 648259937 12179345 52943250 39924013 792577496 85668118 990957752 544075297 739600045 995868626 997922106 431622691 512895422 530699472 766418460 643968067 961312719 452389597 697898803 894318479 963707498 214464621 851563502 312293873 862951408 858549896 953987938 85294611 706613395 363898253 725211532 161246032 421477549 840802247 847868460 659315992 872831419 481169679 983938052 292945363 321387434 713218657 769250096 593667589 865197875 965011720 978178900 661199782 949058865 72683191 440478776 867663777 916533420 669191058 761226789 857718177 962605678 48051030 981626279 184889979 662355555 615906645 853210797 232387173 872382321 790662088 948363018 38152844 496004218 384419598 975109906 392387595 734767960 947201409 981969683 181150384 569240244 350491752 354259559 867301481 886355162 989531433 991208282 277011919 907870091 680711939 886439477 248437967 650273159 152890383 224385248 932611472 968662850 190483605 915072184 589831022 992652113 687385725 874367506 411543642 933192547 533471523 561683818 458250059 594587154 447624685 886160604 951871478 998543180 252258980 928222529 945350120 954217039 987534310 991323730 425997260 973437709 79308302 270450369 369894525 427773639 715220279 890501375 869499233 969595932 78847265 338025337 525355149 729341920 788434661 995952498 57746322 435822704 261574989 625839802 58347367 904934946 840673673 961272407 600032004 841737656 50876346 62417066 94051944 386129236 688920033 854313213 617684399 831225657 178616959 406529112 429431278 470248192 350295054 681014308 415745210 849604154 65411466 503462459 851308763 974612715 675910622 809124807 194310302 722465618 688317344 959309350 854350746 929815507 493212347 899985158 645765656 720444780 442747007 957975012 630718747 988791737 456673567 832052390 387023956 622982304 466214752 617408575 443485854 566812484 308398288 618971637 752373393 981734749 200003190 801436894 379569725 696410480 195797843 631756774 358501387 902049092 31701770 622135580 595360577 891621224 464804485 647750539 163304572 725931142 571731317 592093455 214902187 509879529 415432665 585045767 219095698 482182892 824746187 929553649 292664604 647262443 772161586 943284972 371237848 703453169 49558475 301100134 415003114 889357786 244905995 845710313 475163411 765247213 801642725 978638287 168179997 937112920 85217781 493320408 302501002 528719652 166888852 819487995 465432528 924209150 766305940 876459312 173357973 707262288 204706633 746275124 739099019 955795769 489059671 892599773 287551921 647087781 777679525 911276525 42723442 610092982 913006375 949493720 268420805 380124969 283161827 741339511 778771097 984169995 615017193 638291839 295193615 344097563 26496809 205793392 644985851 868220506 245866520 798086972 250565050 863360114 511220443 900524569 457722172 989422400 655274465 886340382 904753888 951566527 497762013 629522721 453112739 944080370 785992397 892893083 20272386 507550750 812583830 831279585 365011390 447881474 378375143 471616957 476869306 855273818 126328595 909705841 181521603 711275443 70720413 157792964 355594785 949165729 596179700 817829903 48441020 93270086 458460169 750346159 157330645 549682998 494071049 967747593 845522111 959804326 569916416 799931139 411503151 928988976 726071265 804611875 158377034 631996007 192900105 255905407 892852017 957293187 791134802 971291638 227863206 902073076 679802002 860012089 525839054 688095390 967781635 997922883 44182102 730443085 105486135 489081702 3644788 8193554 578236258 985373189 61158419 342621320 246828440 515581126 409586096 927573349 801765608 887251727 204904979 231871818 451885813 488003219 639367120 718614535 471625007 517743159 313052536 869189641 624090756 883846631 382549451 572538853 495401039 804322693 388151253 863513558 203215215 229881572 944667678 991910085 197375898 728715912 99168682 780279122 768355251 864515194 457315240 984982030 99846565 457901602 810319398 875899213 160516555 183047136 145989369 352580283 995965012 997157015 370315503 372952999 839901605 901923047 457621662 470651988 342679845 837415735 97979705 272853381 87901143 216015004 134524674 730810217 727654110 843712539 15478195 650540082 183919355 928582397 570484483 857705183 756260207 925230826 28112478 447420330 710585735 769267326 596337196 597625849 305815049 427832329 999259463 999769762 950901009 969597773 300444000 963708187 284985515 497235049 291149450 937231822 848684893 966597601 622934628 999234344 630725580 783652829 213902546 583827400 764350821 965606505 89115597 925810642 192801020 453660284 391638397 501199235 62108078 975549945 244584190 636389698 856447211 964850720 959003144 981087940 216252437 223928240 950544832 973789513 23742083 263174202 893496276 935684359 767748991 990878005 221985762 892555770 77027867 853984239 423171620 759202226 16661079 664078849 457517069 733574977 418189880 765628327 926698784 972648352 819445126 874020821 702647045 762897997 209964100 897682172 390210923 570381851 473871095 601939022 889650521 930987203 287694105 330594984 795094365 821019835 702535239 836188996 738940620 888186703 658384303 681944902 814201224 968367202 220321921 394787151 691642098 740537008 634916660 757137029 923061257 969742905 262344468 481955794 717371863 782382867 755956408 938072661 422315006 512297076 453162980 857274033 212492559 784256158 70335871 218151213 104189281 584899683 512504378 898323476 505763620 958838133 587130464 655799995 774901101 788638231 910434841 940008497 375522648 725854582 833408450 855204358 612070497 736101213 342297765 855588085 26082144 121562048 631788944 897050649 606923987 913909304 991834289 994507443 262803224 959896238 44203440 159767829 376676306 773789890 890304039 903230780 324883590 949509007 72577290 140463672 356937696 722142014 958386426 967977005 982663859 993896915 718825271 745422589 677121170 703123100 935016300 961624748 523775848 987880144 199458954 245128869 256424449 622368647 579704798 959065617 675439049 944451203 39386905 98532878 206968285 440711230 139031731 480282676 664491438 965196586 145436741 948740364 206722218 428612599 790360755 802710597 684279778 866313454 638587932 865646249 465954855 919220891 900421455 919900200 501833450 576496169 191469443 773934154 229553020 698102748 404616958 652936127 451319984 689354037 898589512 942954631 932509836 985922295 641602886 739389140 917043736 971591865 293662230 610623456 41476443 387989983 478957711 631404475 584517441 845921346 261326873 916139880 176811426 395437320 191211315 663199328 85625370 496073622 90756358 968047229 564160455 995830487 128000115 761823854 471566637 874247220 923740237 948034743 213228630 723079664 972020110 994931051 282191211 525772675 33842957 970919594 718078964 981545286 66944398 831223392 36006567 148373973 213070930 426628003 791090931 829277860 789340934 899674712 155626082 989210478 665041552 729256616 835491795 905445534 329598236 935259658 745632576 792177712 683531988 817874131 160480585 934194846 260992091 986862257 659826347 938062632 772062674 995420122 310109731 512601004 54808924 756925675 665590729 937156777 936994466 988317285 662358918 957457182 700354005 750786097 111513861 288946102 466408144 873518078 98810136 695376148 86969286 607244957 423346142 905815043 632190629 909974996 411076564 466906639 701779114 794999655 923489813 935229336 747079236 904903832 43785894 421671109 947749701 958009596 884778956 929248131 354830862 490548504 306738385 978808349 142306030 769425260 666071471 744668878 675011104 771472677 531429170 610940277 707299886 720147182 605364414 985941938 787011455 963319151 220571549 951851020 102531521 313506612 785565311 799001795 993945075 994798517 594315831 981833691 179885567 309736273 571329765 883099803 853123014 997463011 869456823 992087051 724122523 764326378 342836111 760535831 840495800 948197897 822965961 968813563 392363729 520292428 579056157 987279098 724617106 939783919 278956493 746538666 253519531 747475952 886913351 907463528 786488856 869440577 803062193 947221481 662596444 846242431 352992461 751606698 520657441 838025053 451357016 835310121 972681613 980259694 731691891 859401998 969385905 999186732 959745098 979574460 92877905 222867807 198305394 275628915 513963055 549963763 226739687 550820709 892732808 943719307 822655086 951463392 221746845 386182178 852752024 942238507 613395274 784260575 775910372 842038638 236114875 639408474 674029728 896313659 337387733 748257466 1700466 259014495 816296502 910194748 529086703 584953028 565281442 667345232 947399376 989480154 830397468 866334210 707983216 975518144 779268179 888442848 369671178 820503539 146004242 493433271 176793700 880480392 534505010 642788138 344063192 428153439 970385187 972116224 70639292 424778311 613233174 892168264 449773394 633267697 466098032 807352257 433385469 506932905 126867757 793815869 708966855 915175656 607029179 999541707 509231908 788185660 415251058 618647752 417340882 635669903 113526312 130168815 674572401 706367053 222120160 776548098 261154471 847998553 6439381 22311890 399015155 556140637 741092895 793318826 639895548 699614908 178778483 882957740 160599164 961282344 180941569 542727989 242807652 625588083 127560682 129674559 666240578 866648335 107904625 647030887 253894825 312513922 572879023 713566633 456896381 498995226 602284028 828706122 135606787 986417270 318473829 731830707 153467244 576190893 650241437 960934787 827963955 937944930 593498362 722347436 969134136 991031051 504646892 510589824 574630242 958583504 183404349 948697787 75791168 930773094 129180215 776327239 449703379 971138273 352855098 771824230 261317209 910431182 551461904 656162012 455641560 854608605 835954649 870455806 115032465 340429222 156879179 275536776 600017808 678579287 421045376 649321235 444150254 944417733 70341721 415549406 74476991 857716170 709807494 776735331 291576471 976751913 739578587 975186479 252394712 298245796 562995657 984279363 604433158 781804659 160680992 431621747 596450213 883330191 867238033 891519982 557220151 643868326 290641127 850466949 590625490 748386430 391947599 455656184 571097323 832906034 815909983 897388003 705513979 812945977 136694045 152921557 465108912 773323154 771604380 870512063 949394230 970321685 13881826 241980428 753424175 818677655 183903992 371854120 193537718 772527312 719941658 983142892 562197690 966529960 886002485 981015110 433727026 826296989 509775202 777892441 130490096 938188575 12989406 507160687 765456165 850417093 892622648 995648424 151077457 227662536 297563597 327667672 237638027 391464375 223531663 661691672 732353718 735518327 289909081 682647559 885820134 935076853 537600016 969197809 817454505 955475371 897389209 964095424 192342006 687258475 868632956 879000022 776526758 919270327 818613699 863663902 436545839 964470844 821986658 975175325 894343706 898129918 94278326 336238163 330305262 347793439 697498087 966645015 429749992 761286216 241997113 601108783 717817954 826998354 884640133 998272394 185180399 972253278 623945804 963356951 389313842 450305983 217185973 995912277 261962199 972481605 374784616 772344028 469076432 790338106 123676206 150992746 386056944 512041031 844180393 909414075 109525083 310456843 854846106 863024520 254959091 657032822 106658646 882918487 190980778 459900887 441924169 715240283 915365694 995676449 814535956 912134266 40380024 69860947 90997887 726494033 337234059 689870084 806752419 875627940 326082222 621083999 801561653 833205380 489165251 887252299 345926528 979940593 221281420 636417991 643950733 896727370 670359100 687528715 808819384 972953283 216607336 241716679 127796540 559801695 122268764 956643448 720590466 910573753 751581533 855456342 436243825 722541435 701676914 852644621 390789160 469366677 140835350 506482500 94642478 396972072 515242591 977894456 88606771 816340362 338099872 879097827 776359024 830385427 225564765 995956107 546000201 772062255 491545807 622622685 618552227 754503468 584988993 757395203 534615710 780795959 91432778 952193327 71955876 836034306 813691723 963952579 640795159 728559543 298765846 533716400 738154583 861327254 500299453 830507655 451365667 550356254 96844332 211501656 564187373 995928520 499187278 876959930 506826445 573079993 487718183 901368207 64958871 431099183 604483189 831578772 891407783 986279847 166434128 483594262 195248704 537868071 524943519 973214720 648660147 859276662 426133740 576089412 213289515 668621630 357637831 802378871 47302691 643354330 473304436 608023955 764187464 886289289 199382608 913111530 158973488 595417794 837934152 879354984 323340518 451893131 347248729 854884306 419472042 640002016 456582114 718371773 340117477 408908011 639713288 937350817 440765992 789480097 308393158 328007654 325502552 955202769 521184189 727731979 157677589 899951879 169508542 180698169 986715877 996616899 872421644 932290422 16198330 885830492 725462905 947579793 49066211 567639089 433375044 649340032 324417769 480730221 522331034 963910079 932550372 992961058 957300459 992862855 837906183 873446658 142306829 418651073 186731188 922139851 508091873 734002866 987906507 996642289 725817257 863426060 380069598 638316028 510654690 846759891 952623355 986696830 241905491 365768869 587086738 696374300 634660692 699413558 910653834 951890552 865327097 944657822 628384365 671421031 286840192 791090922 16351598 430580438 61424173 934164055 145984053 872516803 723394247 796223980 590964947 729403897 710139681 843454488 156904926 670003495 390355003 734715616 666146535 685320764 283019376 774413927 904768322 965894347 448988338 858035982 235148754 639871674 508354068 625627252 746810371 783384363 293078535 387687659 958021801 969395097 36641845 276878204 411919670 539693783 686529246 708207484 185757940 834027068 172845582 601585808 743208717 904033069 519091492 684132056 566356489 621208266 183356148 824784589 69745127 123662341 853112519 963022574 919130877 952807940 617526724 701414157 923311962 954611789 34080943 133364077 467197296 935066066 795592868 978469941 872641092 963841668 260137027 414008575 769759580 856775754 643174908 965230070 262433491 715384484 293718281 785086373 393562941 495957704 563418448 681236967 1667936 716073252 23676586 751705957 785670882 963814114 201652255 312908883 391070518 442055742 377187116 900531951 806194963 958078738 131446976 601396796 743143326 960550722 773068860 853392741 388920875 582643264 664420036 703475842 476914695 603093364 520373868 760324968 230054547 771565313 971948004 987106192 292929465 310046632 738270218 850287357 758075082 880579709 675967682 683770270 272539832 700636009 838103876 969934795 774944267 824587829 967535537 997303263 710307590 784382979 71766809 301557276 69243787 717117176 872156313 944263621 978934359 998300147 595743421 919034885 326521640 627474915 240582447 566585862 1456971 806259358 870872811 891508629 687491341 693616250 771492473 810679816 725091046 838283556 596193594 740093762 78303178 509608896 152118237 299076547 131347310 646253516 409146163 728666997 604509386 639311785 915313224 929404130 452272541 734668070 779299188 983759142 513377870 992642039 770159465 970777446 437341515 707739601 83675815 476449956 872495611 910815923 732046706 916758861 296541779 745670086 868943458 912646578 342628828 731375494 415390033 432965436 196541427 930696478 646581932 721957371 18597146 826772718 542975447 795885276 932596973 944639555 838256264 929183576 676691606 983876578 687523110 770555764 651270605 803865046 163747575 381411830 163238870 296623375 952306504 968765761 309840164 652693214 138422382 624072838 146634436 459666866 757628262 769255975 330589272 800547529 614843649 949197842 148849924 281563617 22124549 838674884 894333302 960573051 190060611 520460418 608301858 959139707 184241530 614285673 503204030 707712060 891211364 944789018 301802044 889756971 26432793 924544429 701975319 816088579 816258099 941783149 333683328 579048560 960326481 978505084 448997704 700968258 482946542 665803467 930308789 955447332 308984527 642439521 676190200 835326751 597951699 764627648 947821846 982422375 759250470 825800193 790734367 867239021 525095929 724063188 770237958 788603858 297658484 977928986 749072488 934969829 226021211 304049209 680408898 878612147 883509256 949233753 315858690 524162887 658276067 777663349 12473889 970348082 983934086 990497211 742434117 930079121 743060649 945625710 340253498 594852428 859414783 951820653 558565929 845185526 184999454 337328262 971694328 976780427 302938452 863114115 918792549 921801001 662551483 692044277 16583969 133183144 702161913 848684056 976921774 982120479 679974502 811972217 986431039 993984244 31322329 869319185 986372890 990684902 554398104 615888749 46910710 953467879 808553316 893111454 207503652 937508466 373511550 686257463 246928909 947009587 513393089 631160734 888075248 930885936 927613473 988886497 191094207 342970882 242305125 638937993 155403094 591388278 912998346 972987649 404436952 960560332 587623745 650182571 926568613 966612932 711430021 752779647 514408546 554071667 957978558 985026017 418009975 488647019 225873960 811418608 106939859 293690772 314128277 818326847 212525896 788197454 24595221 482513739 470892863 489270945 862448404 929604631 767427259 870999228 774191305 944768952 484874752 601572775 241846440 709647611 855548056 906068684 908074985 992407418 709579296 760087233 197748098 897143203 95835355 950724209 140263663 150084924 957921716 973716020 556478574 917760171 695631517 795487976 717056128 825916880 286560593 644555477 489617045 941002681 955409745 999162828 841702954 892521359 41582816 181777579 897186505 911281977 973711589 984295352 805526298 954926426 283527493 369223823 607488837 858134756 672777609 871364183 883561969 902243085 830762299 905705291 371355052 857823592 276949522 621573918 965920619 996003209 585189678 880093491 635646211 840592629 921942197 991924023 637412571 897053982 994600769 997291998 383105110 664156501 307589119 507652277 52434063 462173503 656970020 967757244 789673819 795040309 903351464 978331458 442722459 977706838 30889857 725653019 163573394 417441639 14083825 891614972 599791556 635097497 113606803 602450661 224124323 409765904 767245006 879913023 369661388 525093937 689251785 979399484 526579298 929090946 472349000 544146937 18717076 462693357 220927510 880087287 888852747 961061503 463651830 472270426 639223400 647621637 383860077 470730889 799599080 825839817 335856556 801998071 565324022 694622185 510598753 714972154 965865360 991425249 396735287 996166205 157567262 933478158 135372658 306197727 606440909 845495414 426738040 553651235 791328195 928865702 903303116 980440393 900299632 940862290 136631564 967521968 614455927 866526932 23197377 931135826 380822998 524386269 669661108 750836574 71501857 788608913 938051596 961932852 323964994 713013437 532312227 845474004 717954300 838603594 919512054 975444070 515276220 753303563 662952983 954868690 146590621 941160602 970117290 996778072 627937004 667110707 633492369 697434069 841453008 922043596 861769590 878198648 319547305 759842380 498997777 655124223 134287201 874962418 477942842 483375738 192317310 992862965 49962745 613652594 839168698 936205735 663105283 753305880 119249873 508536122 183502534 618999064 473800372 763232467 833462013 877655611 547916866 893601989 310714257 722033711 564748083 846154011 388149174 514932407 205278542 321134633 933990009 976028995 157713081 620897027 651815893 885012459 496125733 950869171 182465821 358471297 666467414 746109221 827374838 859221409 460842159 975271498 892637608 967883141 629769270 828140143 500876859 919431913 858141069 996202729 315834423 465543370 857980760 898334625 334481590 965763049 300441670 614291325 879921783 990878547 74938624 433180928 452282563 813445235 450335134 468599161 352655590 427091610 271044627 303642278 354238519 563930278 415922455 838585374 243510430 955001932 27823627 151364916 940628557 988774643 878062454 968031994 900268195 978799751 644430021 971634831 190388770 479805542 787099444 993655210 390932090 596686021 16741606 715762631 646640980 853831546 349869834 509335367 588776634 819295597 480437091 630523374 990836979 991640558 300401571 827844963 67277660 818447670 741951105 808690993 855253941 990996652 406394585 527589753 151006699 640249996 205460687 383940240 928844820 952719688 791156725 970818964 958031945 995023832 840349082 962286655 311376044 858340254 816438083 823581341 231148423 752846771 620480222 977851535 818947984 868325961 790255399 908997900 371332350 543973237 134364647 902795587 332126352 997482889 374471109 970705665 482623712 527154252 546933294 588719234 321349887 937857504 320320386 416231107 357928357 839153593 858687525 905707447 873290394 950451121 959415113 970424497 31447963 980513466 1131671 143078228 88015238 220979169 369488119 746027401 329999050 371113948 983960562 999608816 430899218 822155845 769922372 927929363 648756798 669009635 831363334 913094725 391958899 895448685 288973135 744044083 351912301 421166570 391563871 946263257 122407830 257079992 880583641 943529317 284185149 458848144 770457673 896927938 431971600 468775511 290245063 504307645 186693706 930025074 892060602 894126683 835699703 955410849 910482441 985156997 664151672 876556722 178426768 961791932 954346908 992869938 69060954 188857062 297530459 688780891 361938350 612511398 338182404 650461888 119222178 805005260 158468217 273667680 378359937 997619998 269265420 827667040 85620788 424877634 701914120 795850391 809687037 981538275 554639485 572782207 441443990 481335379 298405157 963811790 956264479 973923002 458082728 679639955 818547564 871879265 338687234 537940677 421287043 801183274 900839352 921908880 359498953 822430309 715711359 933885451 465317862 507252455 971197356 993837335 54293373 285419959 6364136 444552530 194307048 759710342 389228389 518902720 641511358 706885808 719386495 831548451 677741119 982080685 855027978 948610680 121212857 179682860 799425275 913966230 243886694 477341888 783013952 826617020 868019628 881024690 615449628 975020600 106039122 511264301 592765688 620763692 698109689 872013947 110890734 337338126 936056797 940558711 727092165 860023077 263932186 755496665 319446101 780527558 942812603 955969299 550801441 808983243 242248220 520980302 96942264 506866601 354901513 634744323 590566841 689015612 636538111 913264460 354486356 506059712 839201884 929098075 661731684 946166390 703448325 985660570 230385240 238064134 683130694 720237851 10578162 735886943 438522175 975787079 486975452 917716761 273351566 461696763 927249958 992961335 620161427 920883839 308227787 912492053 350076605 536427127 613509916 636098104 527954969 643492995 802680281 960056742 762738649 783024738 392747091 583835488 788938328 975187900 863324606 863374393 724958058 876800248 402258200 693456228 530283789 708314111 405763584 775339976 977383775 987664847 337663060 367590566 340634720 657500211 860974960 995963883 522106207 531820031 480729397 803197902 389352549 844691322 48735779 205336708 240382661 591955022 923931951 986512208 457151441 708462647 19331874 988999599 130582546 416238751 900286760 956566112 600834152 681423663 280383925 567979295 655368535 859469696 927715313 986686796 701958912 731567717 658254531 912215730 782842025 849150615 719119700 818415930 10133759 928645897 870211764 921783647 529863145 810226267 533452546 802638141 541271988 928759510 308603976 368014396 673650223 894905052 347865425 984765119 899885049 929952934 42676551 445629542 349111281 735538870 741221944 832545699 763647347 876843009 307906960 865580114 381579981 732778463 31895641 541173482 241036795 459686802 724825663 905163693 795285336 889907346 823012664 999164014 258592360 983699916 759693317 951752308 136979715 387572590 277854414 576017772 795089934 947840583 26571313 897441738 361411431 728780550 255331874 971706568 577514338 994579183 380298878 787517403 936621798 953683674 926685975 988337790 667444863 804051457 241932174 567307569 271892279 355581171 226943807 596785791 906406777 922485526 667690085 908347775 379979104 595092455 322352637 326046188 699965670 705921339 710710038 956154831 886727003 976499849 766877223 958355929 2504921 294852102 321912188 347921554 210283365 962372702 349915105 944997860 861665173 946063988 37072381 684254886 732778284 818891419 223501098 469397787 369871170 836905964 568343895 891550387 73002143 435077290 816728772 864241336 225985760 549083616 678797110 952794143 717380328 968741296 163376531 656924850 671470603 889730382 939212462 980110586 883887183 899033929 82532310 387283188 947352536 970301524 432595135 630942773 16971935 767310053 732818516 844600678 663164367 959071615 762010702 916139491 152793794 306904170 836005383 897322844 432232110 775933463 167835011 336306652 916178883 940576443 518730070 522186613 626773192 718160589 862378308 882498762 457050335 894970263 410014802 618500703 385138346 921239962 936980301 978086977 653335035 973459235 488928164 594756698 199618743 480465495 462667075 903096221 241888987 356529412 854722140 890602708 714234931 955064497 711960098 768687013 906955151 917810617 535390317 664634516 595869235 669647830 138373471 428964366 320601155 410705693 69914993 335337590 704563382 945703790 676283 787889397 426137850 620323986 332080407 801968294 228495477 876330942 616529047 648465080 742464308 831699753 642505641 819755373 84772579 794123344 447865254 896166107 281813555 790841578 542646399 759177676 437396625 489330621 329153898 619973661 399836317 827790376 939842480 993172708 876296744 915494398 130231080 747405650 979024771 993707465 316399679 874377434 215946405 730932470 628859769 801388973 359609532 378776588 249953343 627848730 190374716 510382724 167441330 487286342 385439961 981913013 955585143 988437433 746493166 918777978 477695209 657680491 559114523 567825433 317576782 983524768 156599761 354587410 666786346 981816239 811245272 887182898 841038447 930723285 949560681 992462626 84631048 433242118 453516045 507132304 112268327 926917441 16287304 104915265 458720806 983023571 371254900 632875253 234213902 613035795 536407387 753663126 995376872 998097754 273427030 801130487 625705820 690648043 246472144 439277839 143331593 680392965 423301415 988629550 328174802 547243170 273620548 500977778 367206726 432808135 529294695 904418452 895996512 909212069 757347271 873650466 840241126 876360826 194166759 743431821 390891298 503303509 359189068 823196537 524227928 672099532 188988255 391116474 801014295 812707720 803439813 992173102 190289746 214116888 893714610 984790708 733582898 895601203 415632008 798087553 265459162 911256088 786047146 805291027 493704304 575577045 230667282 484243033 281463180 585821721 677826124 935816134 330257965 508404802 477186142 928930595 214532511 549760233 144501984 469666020 767618666 928822380 288181403 807604676 177184964 958052339 601707018 771956265 781679578 953483059 612836733 941032745 72743588 496260772 477891488 559442396 460493563 462813488 728963683 904086821 157192590 362297866 345284228 663781585 419992617 677339964 173392249 508258876 348761572 584542241 739310065 795209626 54523510 185761824 835016032 953381491 359682349 958647973 852673424 945962260 318992740 439414488 886499264 958380938 727877198 734674355 707142193 770276838 531248796 960044948 918037774 951196018 805166261 857731282 118971613 938733727 294744942 564947483 422086271 619296422 94542377 141761571 703983759 899877545 784175471 998795482 375106739 757341956 428730742 453949541 765662678 944768090 103182850 390448441 719803219 945297509 844739620 887531129 159204393 882893321 386855420 836161200 374859974 475523343 207117730 796942653 606636269 895392092 5846284 836683310 445902474 714300804 892660556 996264086 672645150 711529935 948308443 983023813 606838936 927956207 831570825 980117817 502109539 921156866 574090632 854493963 711556578 784269293 566942680 673102804 140419224 736178001 33890794 36906933 13825512 608348548 681809129 696740961 193384309 561825650 712607538 874808998 671941072 970929536 199965964 747744596 495604469 883507439 982586381 989675978 237732389 507808795 683864559 993467643 886378253 995438061 320371832 686761391 557379514 838757332 544951542 858125528 630325719 990896522 100831359 431247576 994376035 998786790 21195346 735832401 301723722 986233128 383688261 979719544 648344515 977691062 432304049 588848295 394873117 740068143 280406349 966575627 920848695 992709321 92774950 613329541 45120945 229965305 985325410 986495891 282634311 673810426 84403430 621870621 136145258 559743484 743328004 911865333 913261502 928085683 8333288 62235752 960449581 989698776 294179568 564174451 635259235 717943307 605162186 734321564 932456984 965395269 436225808 788110692 188515476 393888309 879049328 977350876 403462935 593551755 605001038 821523915 637190577 943024286 711808522 855391356 104440923 709425317 643988880 973116041 230195645 991679710 279899670 843042344 908036382 992582004 874931733 962228470 419303987 658172501 135157870 727884461 974929695 985938365 434848853 580505993 625070339 979101321 608540480 832465572 630654340 836063376 132818347 206115771 573540337 774808578 112901587 751894689 387778490 636576757 708972325 777772597 909912862 910916939 442870783 653691527 641392631 760097638 451498306 648658493 739985694 843616178 770635618 929882892 219830937 746975876 473559913 529184891 47832305 673945694 390408317 433513714 229117507 768713717 170998316 821255397 862815990 904441969 569253951 755078288 923905565 926682184 556947410 710392864 374758948 558333099 908464576 980518927 868225024 969222612 562045450 804446449 406806559 687261648 343908383 396619073 964921574 987218008 289589149 729489998 938630167 990523565 244341707 873286869 664603226 909891834 555467479 809180902 611093419 962755368 685728656 725103496 828932496 861203882 782786097 955567339 697925019 706363310 30746796 153800067 353916060 950985770 420062015 530632758 674828557 757133548 45703061 660399868 822192047 829738338 843031346 874266789 184788721 325305253 327496849 376841169 440684754 957658349 211952789 237158187 903368148 992595784 603207083 608036268 255336812 884814148 330094166 432955651 248390477 685169590 751484568 893762399 385877415 991888498 300341424 732055763 796327289 939140574 288659892 439240044 79257210 205918074 362838132 572305210 114615042 320572430 360172996 448118906 138583709 399375249 910755312 921481853 90528717 872546385 423426828 946136753 542111341 776409068 135689117 684435241 491233074 787051442 846924228 899233491 978922230 997811091 32918603 719007927 182457927 424764936 330374042 971455532 795777638 857546231 519410654 548703814 341478508 768721154 877717776 941786794 627421684 947177208 138267188 666268824 723403295 974696016 653986472 867113348 306677598 440391918 179396406 824200538 310801698 623676009 937336008 988078588 382100872 462019427 527430287 668664056 50850543 371205222 467543403 887393110 423554632 909583355 504730319 681061840 47793185 919260037 258752216 981169175 255581035 579288690 263132881 400069783 919330692 922420757 850432701 907393655 723486989 844839542 34523616 796865495 869508268 937713262 510822203 560278485 35667238 613689182 657994912 716681718 690103591 768943312 844408264 960696331 441735909 896497299 361456781 442246226 15215839 976392925 283468685 884745483 404184208 449044088 634524557 964377569 558193130 608725077 532124843 665278809 99257314 955876370 30462049 716293101 941952157 949994853 523017473 830424379 803698205 949621897 913994657 984367023 714284994 873673521 12915112 954666389 913071489 960064466 82134246 139969972 919117760 919584448 719300960 875631129 64831401 499227212 560882538 990786774 294104870 980567426 539020328 665032401 255481022 347468455 999197803 999414076 254580358 258264876 190955801 906537862 302237043 856891851 427043212 445128684 153273078 756142834 254804027 999893563 77043627 490389200 526427746 761972640 803245671 904270774 681613082 921662440 607705766 762202410 403693082 521568417 829682114 951621477 139113777 525136001 571773914 827648208 844474683 954534202 609095466 649377352 932789279 981148781 585940367 685238192 801055800 973100260 730181837 829679404 795934035 909278663 239139951 374736950 656944470 701277810 345068162 925724142 83997434 416849255 981743310 993554098 93606120 272413421 970827845 976321820 166823776 996634812 322364327 554555957 78877650 638578155 642074623 800356692 132500451 791047568 586519121 780504872 767733658 779916447 865525959 868795658 684070501 749917611 525157419 702078230 237029220 741876220 571064917 788599622 833895037 935574442 303681430 812989015 50728313 365631098 304044911 895243292 752355353 856865724 411587781 501349580 494148580 595428473 975053708 986374446 753170058 992290501 100618742 295263133 569808210 963034678 348227573 479374401 808940220 890910567 747745514 839034511 870680646 998549296 766340922 778854033 382275527 927250240 967371858 986710479 319014367 868708326 881501129 882100368 385423623 790295725 789521789 848593456 862221342 961681255 286540740 643694504 729163874 966500564 95882800 378147588 95331124 217728905 871071321 894730804 420834199 492035524 212257066 470130440 153727903 202648632 344736273 386119299 475562639 800079680 695647827 761992263 550163940 761894249 70453093 625447266 294486756 763225658 847122787 909308521 263941007 325371770 501489945 600258854 190951725 696988245 556940123 973513145 313352090 408864451 810798857 989880329 616359223 963211826 493913798 807096460 501340627 565518309 772229795 816048017 37460886 346462998 861847678 906636527 341972605 415278237 642762455 648765035 334151226 929496565 265776976 747169858 166865666 457205373 985665012 994809060 31039711 49506075 45223670 912005262 102804143 164706899 728205395 926904777 215763981 876827177 123545105 134709211 128769587 146793593 404758619 786801079 637330873 780354629 143265945 239592110 74824888 492748019 279868095 803154948 486043709 556567654 107046426 780186708 428068750 474049602 967661998 986008425 972651706 976096481 593036469 865264041 87458043 260717226 696452548 724465029 990097130 992601849 504054238 715460973 626347099 812742319 948794556 979456598 455988191 974682925 487191925 789617549 469973646 912165665 220817417 901029719 919325641 955437746 329583766 596465618 49064984 835836344 622902314 745439659 529299437 623066702 665094907 954859440 64525210 874280941 533395855 543252449 782895144 862702343 77089101 910297693 832415997 838708725 179964069 553038499 228195517 914791558 214213786 913999533 733157913 842005336 410664863 737842991 831784179 936657198 564384795 585962322 158681351 976489807 319593779 513192991 909602451 955922876 541805135 895131082 357531415 414008692 869873440 917243428 606758646 976867572 464744349 525729517 799050870 896363894 34220648 318411213 748808250 907460406 610340487 905913295 711814990 833390522 77414717 500335051 858309639 966367113 586262752 988014431 505751332 587586286 951691386 967478253 876361812 972263639 266149131 984380568 241233881 968409921 142282860 190576234 455229300 576466194 905713236 987896837 852041267 888893951 1819325 458821155 167817655 440276297 740177882 954476848 577162572 921200775 2917097 534496925 618050549 853534397 888664252 968498879 544862240 893530187 172909390 856942906 598124233 959081162 632310246 648708130 712073583 738399021 180496349 365205701 898754996 960899776 619844986 860759507 321478475 741384686 412693154 534198957 681663 435326180 549315271 860592168 45551737 785293466 827478000 849850638 816658907 914928271 231395546 558921366 370466780 475553010 118130646 185837459 289184616 431388595 374037998 931090164 412334499 662501267 700676781 930319440 393912370 825131214 459257850 733799818 291806028 755130232 541510568 563289222 167714151 794857723 979027283 987119908 501975556 914252953 729940351 781840061 585028617 780637223 216147198 828454256 731318290 809021381 89013983 898465612 841103869 898315612 336848690 861454530 411486336 770661638 87957845 476314554 310612696 668658084 64666019 340131467 983761131 993939340 21944480 711736472 399942130 777945177 708138776 818122621 280066216 337466902 948059915 950106397 370908454 503740425 329801524 913817963 712753772 948943797 378433402 715502689 134795008 392211412 693342402 973503191 968451066 974499428 620328667 711776381 421473490 499766289 503377010 635066115 881522327 981228839 215337358 973511819 741857536 781481919 838196741 907910294 435427199 493736211 206835609 444653845 641476943 737850932 57340589 111734747 733548994 934733018 161432466 244929576 561490913 610711705 60294858 152499901 573203586 674948897 407894985 689071078 188428009 968782518 103904523 949808890 81043459 628601294 400185348 489797621 946760365 988816643 69053450 469576602 953279613 955788322 224478331 470682490 205737251 257832500 101780081 355970304 977854677 996991876 345749377 913389413 705353253 909078154 880571951 976346899 428033019 593611423 413105992 569613003 410241658 927306587 175727366 205262638 443665334 964043001 659246782 906536610 896807015 998138744 759461421 825023698 266746394 496969639 4849278 384674786 706981341 944646321 381012024 426987426 18323233 113229738 444503552 764673260 342104348 497479864 362348951 505520473 491257145 751074469 134979292 340182985 674179246 889836228 325292519 781952423 452785170 522032028 835419288 992812718 309964113 961271573 622359274 679208455 5834524 919320198 742438088 781251399 515037365 621788376 844528666 892243605 968789218 990266332 814782051 860712674 914237822 988586714 64463445 112106916 505526560 617610793 197473180 684743706 73209907 174114324 265940951 608277469 244642577 817214397 935508469 976421325 627133666 938114396 470889910 755040026 336586124 892605790 415890448 962977869 546297504 998888827 7575596 675082480 18247291 778623031 553467946 900234647 879473793 899697130 222352020 564210362 90153099 920225116 672772516 786044181 549988949 627727696 577163912 661834461 510122871 743476934 501110264 602954186 371756780 448093012 33440297 695352249 763416194 933374933 765133998 849200025 369742264 596861777 807717945 933339117 271413892 524407180 713272023 956895998 701089154 810062264 781377302 977764640 464201131 951457891 602300029 720861957 495972914 659514959 328135016 501922540 170214204 384283527 649640572 849053318 918070752 995838414 782832237 934604474 687479750 994962263 977400949 994915074 501454952 559435395 23618372 40730867 313028289 478229934 583595963 829404445 61242537 795025098 795605569 936239132 93605410 335706631 946554832 983551502 26192105 853215568 370650136 925068492 611390266 787063947 317672412 527317398 287716193 630173693 428466035 536518800 6504233 309414201 762626891 883046215 12209361 618541092 63238595 372469620 263130325 611159956 979265862 992101917 268206749 359000233 967329035 975066374 461511052 998185158 898586260 968581686 863643533 934813671 477996654 649658973 499733147 679075217 190525566 421670866 693923069 952966516 787481411 999746985 24182218 30914924 546481055 807650514 273233858 427533022 576933170 987992726 462433771 483360844 455716304 549589387 739090430 845647530 891838459 913874066 877935422 896376263 396356927 789734271 583316554 593244380 456818837 617875798 263754732 273657902 584430278 786236308 563454102 969921420 741428459 777547048 395351872 766453911 419351242 867152736 660783506 809486449 830275724 936173682 525010865 810045634 209299842 638965490 52304322 315892437 879078644 907698219 972237212 984023773 344327935 776622116 704385646 779877722 513636103 600703216 835665577 857510940 31581551 119828288 223735854 804412075 15857480 581207709 918914425 967601993 484010003 588708616 727769326 821881846 136812541 183689588 4033459 921404191 637791231 809995798 539619072 577426683 73470728 503787694 593319559 986213391 448469267 750517750 145026630 188740215 513883162 831653937 51506241 586592710 467913915 549926347 812163006 912781770 378424217 658254138 346154159 910347540 168392586 276039774 894371070 997381814 686909393 694052165 535769673 957073032 118484816 828714141 662028179 817465731 289312903 796817005 655129737 799842495 551233726 873656433 394044933 461247164 705118918 784387926 347179738 403989403 892000971 984568442 476783171 494270555 358248686 443273607 622432769 678614323 437020678 800116692 943095355 975571264 600443614 955993960 120373555 406267832 543948875 584684134 931406914 970367124 657938896 980426111 115314626 322895113 91336771 156593785 816130743 876805854 386967694 786429835 19369290 900273001 790852558 991932497 396938757 847150720 993060338 994031143 641407196 998849127 930622346 947052755 348692859 542527249 345366925 475935781 694081369 859398547 539317035 774579076 41306835 872378866 521497336 630351938 5712536 200310689 433176946 820504509 914850930 991751036 855839863 925159800 2564165 93805893 427938402 739930038 4730134 756035733 515600541 802496521 764717690 998666591 661795724 875854044 897668490 950486550 78561071 482083777 340500001 743638030 649818877 874116384 136842274 473264836 739306467 943996787 607662525 842206393 365629484 719849769 427070766 651311061 82269911 315724259 130461079 909319773 69527994 650065710 910752829 937578795 408261614 808284656 438692072 983875793 233288973 791927379 265309059 839532961 154243845 660973073 66851612 690296907 530913678 680777322 558844872 820512004 768735558 996657299 731435151 943762681 616456902 936272208 331795914 419014729 925382579 973664059 29482852 885754079 440811925 593917448 593229346 967236792 364090277 765020674 916054738 959189922 28107961 751241695 436193446 656075211 141432492 580720138 772483159 943970169 643143310 913630094 690275353 805153255 239658999 779169805 728651432 860256776 205512941 529995909 841921090 932290491 91401066 804910004 412852291 953578672 451039981 933906086 297391943 954906075 12948371 264629548 609514483 972425454 244968040 790009467 713195629 799692468 526655378 575093089 481739777 799629840 300699004 403964708 117633122 988279084 502221675 794184072 373941820 620923188 170943861 424938178 132182208 371324731 613637558 770391305 311074452 684278031 219649954 668177673 898633012 904129209 734436441 942364291 444987644 984890875 837703097 935813705 986555341 999810215 386317881 643271907 650775517 961261206 583037111 888482824 933179612 952685753 960378581 999714944 310776650 893205098 975372032 983715678 888063545 931757811 180213136 970492221 470384532 940423173 301418415 768020840 935069771 980653317 759887561 919293452 173342844 273514861 166607204 178604574 752271064 872151622 178485033 914426691 939177252 958797859 605174939 878859123 213001853 412511890 394843224 850128540 578033363 745166115 52400244 72188999 304320190 474375194 281773556 960567106 104784029 244499823 239591328 795277470 684684660 926094396 682732945 765805040 685847678 858005625 288901432 704963632 853638256 895418222 50411171 879930533 486485803 878502902 661748449 753222645 562061586 979757290 787430064 973766083 533301009 923398992 132648556 209699021 109614859 993908188 80403386 573371835 657293356 790161588 838895647 975315470 429546729 897299207 256057457 517716881 301186097 658123018 74249018 597706358 314776424 658571033 20884786 305564755 707807620 791639061 382700820 914481974 658089254 967037845 161250342 970752767 807392786 911216150 9725378 855992805 998083716 999134599 657108093 744283997 853833796 975115131 230796859 247873935 274566884 516448366 399850905 874236169 136021062 779699624 396612825 461111439 619299861 818525927 936543545 997780099 475285059 799786326 455511353 570882509 978259121 983801170 14641479 396482837 368250849 938768430 753026732 939845846 420589886 776106521 166379220 457549807 619798392 724001533 414230798 968527977 357249912 742982865 464282088 728887518 330440411 524964290 159900334 790572333 119675865 293298225 947596714 951886975 98765381 321167014 581037326 746636786 100990422 638421637 112507292 796783094 858705230 906314026 184659264 290663305 487403337 924343178 149854395 800179748 835179061 859780222 603796238 622293613 297492103 602463091 603292791 759143274 627042503 681923166 714811864 835812412 661439518 989109963 268933998 990995476 649748909 851345331 752106253 782362535 371352844 953371975 784760711 944092137 632170083 688884983 225759810 656885954 681496027 738476003 398472099 966583127 20554711 704610477 578511885 808504723 852515591 943004989 769183457 900579950 560817836 880273447 912975316 955077262 18609819 974195907 567624471 849957346 382033287 463921063 424666590 608684555 86515783 732071236 361565775 643736749 205376605 895653836 578615711 797946831 557263478 646881782 255021819 774145499 560903427 711553345 109268605 281905921 338836010 435161629 579461890 831515262 315987254 677776454 307374141 516021852 237116106 345582638 808533949 860295546 570978118 898254924 246191953 475655800 22164459 52489612 319340348 694657603 790584276 906371191 795482013 974075156 301790304 718500901 784141665 885187591 642313544 932497174 357346069 752497268 591574803 831501659 598219159 625848666 487210018 693587044 578040431 841174332 713326681 729233198 52114278 441341781 861545408 933889155 989786222 997499750 955044911 964021808 762746859 972867374 437702961 915900074 308096263 680995559 672947201 691602933 832797079 935549619 117391094 164848380 309142751 814396741 733615080 831138960 439967105 489037180 103946203 484008168 945453599 984868321 212833557 706306770 679678740 896117364 570156519 661272038 731034948 905512524 896870364 915102764 508962510 729767840 946772054 995626958 46389007 411197079 177665912 937519655 149903449 788237177 48195457 258716368 199665451 940684714 319679951 544597183 572310186 650275764 215065387 391310051 819280269 921785527 789283335 878883874 556578214 635662933 825699538 878377080 116767941 680306574 923866058 949457965 375359492 583734199 989243404 991603669 705762694 868497451 804314058 953928373 611758333 728083913 687283636 958455849 529230803 818351814 106976849 699540777 196994790 765407705 925250668 970158532 397730773 405199175 4908777 314053037 414028766 701177092 608777686 816188316 342078112 953492879 973814324 977344804 736303408 738844976 371601600 947981069 627197084 843870376 282068882 783012075 319443190 678850530 219610406 366402715 696704586 827433288 253349727 594549984 679076455 889093897 387996799 910440711 165438626 393896824 664156780 807299040 447832939 775987427 138481791 320003307 2519868 178468196 806673266 836022501 460981531 762493791 678798724 947671165 915729628 959034472 109986775 487403541 297961597 394337344 61949333 217263594 542968016 553875702 63461676 400695600 294378154 335877558 471751772 900983607 203468329 810613925 838274418 930725082 849459595 993881345 384035336 853377719 856200581 935318224 367246474 476539129 355963697 960589890 940505982 955457418 378827749 983483821 115277389 839313865 93636149 311765326 371709009 534076900 164048506 481032276 657619289 875225439 681518643 730081129 2980470 315700441 599324371 835961265 746947690 828379673 33659705 316086178 105108300 430560606 584700874 827954084 488244616 527133647 179974968 363019024 348387330 499647672 428686053 585737707 646107294 793696627 68703657 709760106 962204962 964239264 809996056 866532118 185785156 496114790 167599182 691136317 215374063 384227762 984055055 991123529 895360244 995434825 378034623 753661575 817372622 969145789 142226001 976411393 644483203 650951122 37467816 787072110 367555116 459155048 149963924 989314689 278646238 699912909 77457917 212777341 255779304 546913316 720112896 892549546 328823226 529051254 134620629 210459505 536047259 605061102 134005757 875148027 326558458 669339282 828844053 836582610 614981758 931779254 100789656 759691203 340392376 892035881 653361678 986641196 902875351 991252570 516954929 896520767 353041245 446024953 670811620 704214729 953814711 964750091 436563559 618492125 452201239 748832304 774148724 861071699 577808967 880010167 893296803 897848370 64473995 811817668 437216867 893484791 307881817 971025885 905538703 972151736 45452344 415418978 182863674 321432672 795196118 985043556 304172584 460630265 335508314 570531551 480488970 653282473 651444478 698131994 997400928 998004709 851262748 983307515 180406913 808380481 434510644 910855560 433954520 666630704 846951988 989889524 512312133 959655384 836703369 941921108 232442987 969145746 377836338 894853180 897679762 936644234 774698037 979985603 628989290 879236598 633193904 963014092 165584792 652730136 976122285 980690763 69442947 766081426 254051101 412240741 525543351 585767605 882227750 989165936 643545078 834816976 831230423 997795386 328020977 563859554 695544391 983972423 510566214 810001157 561016401 963862222 570524931 997029675 425279029 616094921 208828701 771034646 232089246 471481333 292828931 618665523 34647255 255086458 600258603 634244937 784663968 897053560 420979620 709551604 397649982 865678641 323535087 930307342 985806146 994687860 661630944 834995164 128257750 889306226 293829516 606894186 741195741 930940076 571937484 938178617 825522500 894345658 51834862 659669350 539709651 787250667 564761903 672328007 71563075 603994812 70893633 257244716 237274516 926096107 757204107 985642673 522738188 626422590 814018959 822453308 410368263 967034872 808248002 943674451 649030699 662148544 642990280 904516232 306719433 949346296 617218082 675609080 472631921 678289381 612813556 738560090 225693629 851868717 214108456 996447171 611785738 918457911 753422574 873894156 825299870 873802749 894113535 939910910 724418617 903663817 958103563 983837844 612189834 690698366 740186397 782028769 523073001 564919448 192187977 843524644 722997027 838935656 492491538 847198583 508902795 701943708 341964267 640285691 657702500 821143262 827573124 937512996 255446029 318250496 485959479 512923912 455977752 704340793 642415938 811949269 165381062 923463365 719377388 951218666 954671620 957709430 696150490 819403865 763697051 803421617 364504972 529137518 725379823 905248580 850727254 891165617 586474505 815727263 988906477 992399223 72437603 432104097 603891052 966529541 162886681 784360559 43947575 710049788 790156056 801666392 606801657 833035496 723596214 942363908 79006455 860255930 594057912 902510027 814487557 858759056 477073011 525288552 276024069 554185242 78541380 782806055 50150478 69566143 707097345 922804674 754307231 873948519 448628416 673561107 749966072 809160101 351444527 565819336 907467419 962697902 310453433 748688007 543374420 740565524 19289958 311303020 436681331 851338536 910003808 932049614 167351834 992747796 269279375 333160938 963205283 992370055 588503479 931662320 418072650 713870884 271833464 602688830 215054434 746508264 135383335 810844344 602335467 940616017 392065520 695391379 261593471 395484895 701821259 759838430 86277014 743014882 98584 950441009 458836280 837201538 950745945 999871006 725171191 994566975 227295221 242365947 468257227 741515221 80228199 527811731 726109283 924494350 536733336 672223536 361516901 692508997 741689994 813409361 361953559 809309157 109956403 640067627 324159959 577936943 942012078 947020883 36418205 374923582 433058488 841965394 554247960 777558000 66475408 182777457 567774294 713743004 485192074 986099183 126866427 559739001 624038681 687675632 86559501 291506508 629567464 658123663 979206421 987442220 126592209 300870630 535823131 666119442 499283035 727234895 338994982 525843671 246819272 555157076 166105773 534323655 590987953 902907472 54977084 202244729 177239299 864569628 594309368 902019350 610689491 823762156 545030890 653055300 1302273 945718938 721947669 809895582 48929838 962857382 725859986 934081464 612829248 740956479 143485127 230667298 269670615 621109274 596655150 776352344 38971131 131317884 24476267 956536903 476251990 756110535 631922166 840965959 453519817 928685403 563071195 920343915 67533342 475868224 769373234 978829858 878784337 880952407 881068288 977478408 428601405 768465423 188572678 719975839 110249816 566042507 712545239 879452394 645019904 718270501 678192730 719755212 488514488 828616949 431010454 812659276 663578132 923727358 247300531 438951284 114252825 624209263 717032294 935820814 408873106 804090177 106645491 272230122 149508720 947672301 17920019 501811347 850506416 880215387 696202308 906099675 263262206 420413895 992105623 995318455 959970607 994855296 429245905 567400780 667126317 763848786 868595973 941026421 290486915 327634320 442243195 941627039 426448322 602766530 801210186 881027888 77227860 497558368 645382689 722096609 675438376 790475234 268874046 858069713 967578739 978007959 964098446 982539721 850313048 912754734 639328231 822095239 694758285 918539448 152656294 653919568 266559783 948215113 663898129 971684199 208438812 371080787 96653833 204136433 905676941 984963626 523472746 553591071 311956578 497417346 836897444 894462022 450938240 678401003 29111675 667173904 415618827 525984292 668078209 812559042 907456982 927576551 608009530 981140834 393720096 431936501 881103134 965487520 461624724 754689767 496006439 696650804 718123961 955151685 850931695 895180927 374470037 927340631 858294631 955800965 455046666 761459047 684383885 814641530 356992060 717553824 476486402 699218654 977490859 984939485 727663686 848416386 824896002 878017253 108743563 156642586 345151641 959804640 632292379 990152109 20139175 327637108 315057484 708933337 879616277 913611758 668689732 789913858 549355269 993003615 511429443 520549283 222051322 463659194 334865206 582291835 431412164 751297510 54285287 913576291 670863279 804803444 160163962 653463953 840388694 883058384 26502644 127064852 359060717 889411537 273575082 494264825 219222195 430896559 412550494 429417108 413756380 743814457 7832740 571205884 135770772 607339411 235055490 391737561 905456021 975834333 730511514 920348114 396942412 405690814 223340340 410566571 383550675 938159386 69816893 343229556 322442093 447861446 85643726 302926134 160120340 702370786 358146362 657456657 868132628 938391614 823719262 897726764 709221014 887581236 705049053 817271920 191752992 843523733 261393990 660590589 332392654 918184408 365733465 816520486 332319961 463958487 300438460 980184478 985211718 986985700 305651841 490646538 337969013 839490948 345855577 460246481 371642976 547322760 853500670 915740697 471326058 822991416 646726324 852065718 709110091 830057978 379490925 860203886 776146895 907471550 88167689 952775907 631179920 838428528 729809548 874695982 646770669 729073601 187601881 370290000 855486755 935946177 900670951 927352616 927254412 939672777 597938937 734358866 14208974 15612703 999187557 999829989 508148319 701488406 754854046 929782491 216072309 335375936 762295413 959976371 388447863 696873258 139644405 822025940 868774909 877745656 432825905 858273753 540649687 578068825 395441500 769224646 419021307 741861285 101834632 932588933 194643789 511746754 709728866 939449263 638942344 970716061 360743975 936692669 370406955 743175038 104721108 116773194 715956242 924706421 283109130 921700229 930191723 948470647 329167751 708884700 985427966 990723642 398226426 849466733 350334870 372006608 608342711 992363900 175938249 626270780 188586771 460507240 331837899 415888262 222880748 723946215 72214823 960495638 400742863 759812607 462385679 859849862 626956721 745778751 10566890 144774658 581577892 791208281 94363615 311614914 186068322 669973695 726336248 996294893 775464448 803844663 547952031 621995715 827319630 945792223 641636878 851124860 499957614 975002995 670066999 724271735 873001086 969900178 416531417 448486083 750915433 915757823 533388987 712674206 737339717 996357673 46089970 953071128 280472819 871241658 709676649 953467097 379223065 718429689 491206434 780103803 877256085 947443268 975555835 994378961 978822881 985992626 54867521 229485703 934384888 984661581 950088135 970698893 422639596 716306407 198766279 697127419 671244650 859989255 266616658 975598106 544443373 924118044 281110799 405199661 658933756 819525755 357183579 972874889 4758313 492772265 560688927 893137466 951467432 988712150 595325601 939415365 747803012 908705602 51006795 805450055 24946970 991030681 695171069 837430001 501884858 874650140 874740224 944751421 387126467 583925772 158149143 954100745 572816991 946886017 518001048 998522440 237756667 575909876 569672863 783183275 558694749 783317535 899940722 927787039 332874864 707665205 844005205 905759264 192090862 523642115 3928500 387747311 231337021 586310877 819142767 976699286 722025127 928146182 465045943 917885461 891204432 903161797 289868185 888601147 421509324 509645569 915098743 970575646 851462604 938605288 945921612 960971361 988066628 989500412 746653880 778148596 266286348 629684078 211991151 940886483 220989397 332165203 809457905 823335138 776725567 789330690 881534829 896141235 452674111 755210130 186679744 215764758 508789376 660453741 377614583 458188260 196940945 946676753 304548580 462855686 475152063 956162345 317566019 522272721 940683 923297678 556438985 759796462 392926733 461158787 474866523 973300882 452924501 492064385 522783042 558213473 584330253 859826308 716194460 936534384 377214410 386027108 698316532 956782486 163794197 919614245 708541206 738049507 457771117 729918494 734463907 900681742 717916247 934072069 516727251 837208566 762686521 907069056 237016079 477329362 695678883 713261334 7002833 211180542 951204350 994600939 771328798 794280476 345373873 688877513 652619754 949872853 158515827 627034073 239282075 361930590 48526673 551842247 321655757 854807589 692157678 936455224 140358040 982826623 698234514 929601033 296734949 613946221 49831899 413215163 622258523 655701544 34384315 975996231 339963582 516138638 144129334 444479022 76278348 456628428 491559759 566428003 473911771 517506416 619014755 938711309 901783685 939506337 434596968 727191020 704079518 819168119 355335608 965021192 486095709 750429800 292221880 802863575 718664007 818101285 894575250 982777535 172301038 324197721 511330617 628406150 394563914 575329302 17423936 857027176 681302343 895176468 443305425 574324945 500005130 799747309 631427773 731575900 247891226 620538104 481889654 559521917 326358993 577477933 444519775 609359156 180622573 569604293 863663431 908237217 469541213 604003010 546109225 641409599 450357563 516533509 212787896 269114401 109179032 156129064 429730480 853660415 232800795 907770650 174815059 974354433 848230688 926815344 575292484 742629510 666527209 948658317 267207658 791874841 683632663 730979697 604522838 884205940 313042343 723108856 747920974 910346316 109203494 980898245 765749058 959490378 968712377 981401714 990629532 993406903 532761840 559880392 973709035 987770625 493107054 996123173 92243564 748967009 922946589 967164893 79484972 757314038 18359890 53747658 36030721 627403193 96177677 803840504 160104169 777817502 88820782 794722480 627954861 965601666 847848210 874212903 882104623 922882732 919817559 996174404 294553762 422502452 546763322 856836534 223389988 297166500 43589785 91868567 782300158 866859796 61350436 999665300 304395709 794533205 104067385 155545704 155563086 300630228 760385037 965178783 643930784 692550537 365510217 449300136 525780394 980656968 843932727 857088781 469487745 554735289 969519620 976040599 458853125 977576159 781358407 989580920 487639884 711473127 991540757 995860061 780626833 962371504 296898536 746782153 598229029 855145031 446278217 755563798 709639387 990074296 952155866 968060770 122743513 237137738 751080288 784641144 776675499 814853243 892899391 931917730 457050405 569391082 589562613 665689340 377465803 883894290 663286026 820273500 913698502 954939853 614090751 630792935 449791430 954587829 775930624 815919767 97097002 566449212 594104622 684042590 638905195 806958665 299580805 635164462 214852303 786019402 408456296 755188198 268726174 785801249 935257036 959531274 183738909 709411913 613829468 920277743 671766580 830768756 526256632 819980872 246057084 537386192 776252772 813148002 119182310 912084834 323915375 634904478 411022234 465925767 130824977 514356007 866893279 996129036 660668910 942268984 639056516 797730792 201792011 277196946 965804674 992133244 42021771 752795386 807830407 811901617 113530283 330612674 39419317 643848505 126986061 844427227 656846980 907306850 427321539 843556629 947302463 949059629 939883403 975293147 216537457 338332490 800981380 961699016 153881667 995406833 109195651 167552594 150017146 660517348 981490185 996962200 444896552 696585024 90409045 732594782 645500292 749422653 186299477 491022148 217018407 604136450 536531766 807426159 535376853 611362053 440837916 820219710 239803817 415097415 137187863 958095718 432561044 572757210 49862227 304658998 747182984 861416061 785023011 803333533 907556584 948693695 49081381 174600654 77191576 125574362 117949400 496136357 794451179 881597015 233902300 506185820 747504744 770021629 429051760 499887660 875991124 886352674 358158675 927267742 694173856 940792551 181338277 638371763 350779636 766040380 878632435 956581329 431331122 485954291 691530870 916013671 163134938 642433532 382794929 750189387 351882684 409206048 298077616 915448570 242985156 748816274 127167787 408816125 465937961 936648744 251552005 337706597 159482096 556183795 674923136 714858141 843829567 863417934 511829875 864630210 692899480 855390093 326097872 343265291 141129417 477654324 742290471 936719185 334208480 335093694 941979272 945664394 263925717 428250742 990859037 991373201 835822318 900672769 879644823 954752382 479210720 987510731 860061039 962895325 942386869 969917934 90597002 880977093 833704816 934071260 781969807 782761997 610991069 830616354 974321814 997016020 698785393 840881549 697564049 928151247 371400205 898637622 939752843 963121381 91769783 484149662 150683371 718344328 430978590 966256940 177836461 545098399 833216563 856915652 394406193 555579245 15706888 687841811 631653083 865443321 313387995 399584029 365904667 840034353 216664034 274167778 671505242 836621571 411252667 547237098 473809415 531066752 338987712 586193945 161952208 802558311 264045825 881396163 660144312 829191428 774420547 851813358 368476333 583409337 655211596 690491737 710487342 752692065 390907072 603668389 639002910 843030536 596258081 626432113 161934317 518473364 855238573 947177550 124598773 625126545 112987286 968411371 738018033 914905821 915406262 941925294 407632330 417125092 660065837 930326764 295091852 667625190 65092191 275601968 515559344 681862240 802705196 831110724 707225264 861963204 158507495 617402680 672575438 991475369 621422136 971093095 755305696 908155243 878569347 939956054 698001897 847926524 856810015 961613771 213416485 955874010 793464831 976732432 308021999 467246794 461151697 841834288 777514463 955388704 185680626 373444883 527059949 543628703 682908892 847183757 441300444 527857942 947690515 997511764 607452132 802512824 949093546 991492694 956561953 978345174 461018200 481551835 559026660 965573969 433215279 840289156 311854832 316656471 152667259 582719510 323722271 349894260 168437458 498636802 392098376 757201045 345536610 646396124 561153231 600544428 660547237 829959243 437231425 521004283 912276354 935288334 380319857 693290530 16818134 694410665 588202102 688811386 837333294 993999262 169451384 490594761 579785469 581550908 709351642 793031240 986968851 990081477 620624373 785045785 613905764 956926228 438963490 439597900 206064825 406035289 815895875 865017634 802978135 826375070 654808811 938205163 830110809 885543978 61601813 185272577 311661794 850776600 979957634 995327434 805859439 923136558 220762723 233645952 117238347 852454509 171489776 924678060 805933047 977246535 544094217 948152741 108746761 152419413 771928377 809699223 501381247 824184424 761829496 996195434 992189578 998893445 88966260 525198060 339673140 858123770 95149381 375421446 366526880 748599770 138726235 668952329 434579104 738182469 991926497 993505796 369967029 993953777 418881762 607953294 392394337 643340383 932011261 970009147 121807120 344673282 246100861 958421438 232227052 452283326 288770025 292305981 846756136 926396098 274363420 564786710 200714292 673267489 177782492 188662801 176923773 613309255 870959755 924117555 304080189 480361373 568560728 680389271 194482079 625079275 691061671 882770599 582447350 878360074 163154779 572803950 315768850 973842056 348904221 723224977 947293867 986701765 407064231 652411557 838425173 932625753 321380205 821886961 63087404 927311450 867346184 969835980 363299552 557764208 346340352 757165113 552113196 705530832 747039778 837694352 73205331 770365963 146380983 860872623 966404251 980069176 36416900 679703782 352139983 571949974 632899702 877550983 462398841 616160927 722830240 791400215 142232991 201220442 54318357 866308386 513891016 686534586 900860327 966344991 712486864 899048288 199897176 468949238 920874994 944554989 836401307 945667436 52036258 752738613 579131789 628976480 815703105 858260863 400760342 412946538 456520703 976751616 697763978 880845112 864761002 976032534 668497568 952503303 749181179 800094591 22930416 61718450 463673449 557150777 176999099 643676716 770677738 955462076 600519126 708079873 125709326 882647356 166786634 641026282 873138455 895490139 696689062 955934178 154828644 401797280 223657280 659567251 225757406 511443956 120018590 414522065 100872048 914158084 835981088 836351398 292207418 339328619 519826065 653062796 640681888 899477204 283799825 985531990 814403325 994431202 967850967 993351028 408336304 840327572 471541990 703443183 38511747 291473815 709060944 915114612 398910883 463123018 968055194 982615839 608358594 655566897 219751891 485420818 459517087 562581284 159333169 861237963 665088548 952505233 40730790 74359578 921509362 946942396 494258449 569308129 500054366 616447568 140715495 219757699 713632754 731630004 519162094 817065643 965888349 981694291 35420114 385856390 904807749 971012324 667685296 961593096 827463382 846682210 643243438 969406909 610952071 788977303 664565801 842766103 888288705 948289822 165109701 942430196 799146324 802194138 358706047 381477454 901177863 983374125 534582119 984199748 135621600 719283709 213432345 742067964 844193119 886293339 876683105 951682261 201862045 507063367 148577893 509611000 647115570 673364492 299846017 815577770 810861144 937950553 270699093 677806797 636779864 791699918 568329479 935614408 494974126 828986955 289534381 443947197 871666666 917911912 394679156 566595061 857803065 894327697 481524943 695711382 852205703 952229652 896833475 907921718 880564569 906528408 581686015 928932851 616196303 991750688 261436967 792096557 76260486 727467377 591660428 918817648 710175272 871668015 425178070 748387126 269329594 536423498 708297084 874522525 426135562 924146425 484520563 949924765 855995340 971934099 218739113 313858499 354991068 964150681 726693122 910253461 164804670 756301541 34579446 910368153 845943119 913188098 699798755 911106599 573023905 812197994 563926216 773940954 962518824 967763033 924391859 957657583 341668339 868411596 339346827 956510299 215792589 703767644 304086284 906745803 646963369 796891381 479523407 538417611 582788887 797160436 575797230 806334327 62389527 371190711 810936760 859506444 116366692 252055002 520148779 562903782 189144310 245305968 696567378 732175807 716826414 980279317 141253158 496000938 253352604 686275686 466052485 968676737 978948467 981158951 349377543 726652014 224424930 256993626 141922337 522847772 473584744 865697573 920358606 975989305 787693717 833017957 778704455 898855350 890411668 913701853 802757640 947952835 797130652 953905248 361437343 820526464 264398838 576346563 937396039 943371881 985205143 997398019 168065739 300131683 882634342 887080554 902450352 906608817 670413607 848308521 722797713 808821927 553563355 786908120 986173849 999286351 935206174 945919082 403070746 593882822 762680150 829282647 168319486 392073288 526942709 782654589 53774587 180412848 113289402 792469521 1994904 391006452 671861329 817707845 778537125 832027811 441746675 627617506 372918762 521330146 712458342 937075389 447170513 760932143 70353885 522427170 629921923 633773990 724290971 876925775 831000230 929195160 281662336 580068109 574997532 912513863 351513653 520661004 980042828 993387023 632480961 973512892 286921441 548058766 945948843 968582378 135482036 721310388 796876819 916265105 80609643 942640782 400846896 799352202 622237336 803641488 375567281 734030273 655587185 686719066 615722650 940638330 639143397 709282057 832106447 979146110 345376446 787581736 792752496 845694270 151116297 514804074 986081026 987178466 255239799 511332320 460403186 534455112 184117694 990117098 991090958 998803196 859262232 956308343 117795531 684309272 342324653 988488720 701654561 789408835 653867260 811752013 648106476 728173388 116378379 651566297 239735853 949664744 424412491 533260463 981892292 990918345 380362763 776562242 69575965 573064638 970836403 984874817 405988112 579014034 906165702 967139946 331653078 803395561 671409280 745192650 251584428 725004719 299729849 836597444 808177978 847440881 936764130 947691970 154640486 982809574 194114807 734069707 842813625 871199950 113019202 284743533 82766263 83926223 343582665 484396408 617274472 977555083 473974229 910867701 958927273 961778162 432615245 942297550 28455658 970152487 231463079 447545852 741512658 852954456 258306498 481103087 656410970 748862624 437250929 795154157 162786845 632982984 481685613 736635896 228962260 892210043 636579092 784191960 449573593 840133014 732281981 893546962 543107278 643163601 627942713 985172442 23221252 993733941 219407726 639353168 49079478 384466199 785418202 898502270 496053697 881982680 468971415 866199618 253341165 489716612 387522420 848244333 871113071 879429659 875035879 910781770 30099037 382854708 857366763 947695751 522529286 958723971 401964275 889633106 406570254 921780625 183792462 806229051 645625574 718109864 603690684 651408539 226558191 744923321 794142880 987082006 318411880 421898595 845819608 881791823 944446738 994407552 370078285 408654377 576445309 615163524 680315908 983392657 884013246 972743822 41193056 780366120 131306284 674780974 569392887 756982128 236381507 316437366 219849097 796734987 824021857 841423082 688569887 793019886 981280935 996211416 12478609 164247152 582212190 981907013 451995860 850667136 240727520 822700344 190187216 592633498 651315655 887615637 365036665 949088328 651736323 673052044 848221656 908919485 9821355 897491477 586318903 920990607 289581201 699476408 902211935 930552166 694446843 708868893 864825063 941005449 929798801 937499607 277831174 499109084 943346167 988580818 945454467 987454138 87934399 404934137 525118475 933192793 305848308 734466969 157146279 909898825 324525480 446536802 861723154 950899627 674815315 950306792 828383850 929811169 419187608 723037057 666597555 707735338 381739838 637387503 991754766 998822162 397873035 398220210 179476899 319778875 180901524 295441002 748119089 975663872 502318668 806856497 372936368 938377535 877886477 878634762 131078825 522716532 560291293 943955057 522578002 897845776 826646527 920533264 826498165 963816551 744593389 780547243 425014752 831199838 236742014 802907021 531579645 848942580 964314996 995962013 38608998 154201272 331456371 520421950 96976681 984678496 717746045 869173999 322934652 818226584 306876898 976283590 948343103 960256084 730017456 766199763 712831763 719291111 606088281 953359465 66215482 256776714 630491660 730850026 31735895 631441427 997143955 997604693 17253472 223163286 340219749 438797380 21789532 192479238 653309214 973777082 75314820 408906733 528340210 788080079 302008302 634739051 479653658 768626440 867825404 919255322 491083332 972106659 866213796 930814932 307746380 792437071 99387947 379995160 561853991 749954878 326964758 663076638 474876302 863884101 871978160 874964504 592515885 685758565 80860812 449731616 616368535 797351293 640121347 753682888 252742551 814251438 971608045 997733705 401712660 831394290 429161549 815789564 371171083 580775914 443998994 806839784 669570887 952303274 284432196 552850484 779454962 967413575 778729847 858353293 291739410 612250236 108635814 885837595 146640947 411871909 113754648 730326292 303853046 610958649 135355496 672549823 30924995 34908583 183446986 301586683 830141864 953181977 819454537 909057733 398404649 597862250 91364189 509138041 488743679 506790415 926138709 959288790 246445486 996840056 889576008 977725627 408311113 450410661 20450068 525278844 818901864 865902946 265454315 923409994 147345807 894069567 433310693 528215833 385561404 864183295 149368319 598788554 854348928 869494690 432183535 964439719 309433706 610031642 3718663 672997226 447078836 917081305 948371534 976736702 752510367 772287938 288700422 440119737 649466937 891850325 139605114 779613814 914691810 984036654 969278190 985976104 213130761 653780467 717336246 920395584 940946593 989681812 279828710 932940709 528969446 859894499 873771383 922463318 878746620 902943592 536986898 807425649 462090029 871840560 470302039 509933690 898214865 959461176 974922754 983594780 221418723 937582514 42333427 340376155 731402081 805567715 134371613 350128984 698536551 730356372 574625706 765819802 569355166 593884264 495948610 559597572 548321769 990198081 162242547 571086666 498902026 529353567 798264964 961018491 974114596 986243941 710799641 898001648 743093588 843844246 474194051 808008257 124209419 945336335 982662685 992298619 239632427 631803174 87015862 431908261 765738396 777149931 745638689 764137631 176739670 834467914 625826929 809985794 53412835 918425954 797979981 802564208 71671667 917112881 346978930 466217654 940542909 993641001 589130716 963144512 605118148 873581478 914423582 934435044 653878601 825530501 303417214 843008430 919723924 994940245 179039808 189181575 767174024 878251828 684672107 771712965 239144454 915497498 700285557 969003996 125793862 498908242 706301555 850772494 11395159 635410161 869640840 986454991 324360516 385976748 567788186 666628217 376794452 555983668 629064697 677403901 238748698 804025362 865897309 983126775 13330953 100713538 801990467 944672449 256954980 907337146 626262408 950711991 501877164 599176696 357901126 984797680 530416212 827331485 333261790 752239668 620537227 936839647 419369666 661281146 580461387 730836461 113386305 707407229 87737302 448324248 913549882 991248943 814869043 873259539 665441243 731147011 901325392 927506016 19452068 262290475 631539077 967390735 124084488 248913985 105914009 246934768 248378836 947917365 960687132 968335155 778990546 965584352 187022086 700061719 436185727 908167468 703962299 938301710 355689472 912352693 368554805 636157150 217488071 517959125 928287828 958374704 851119677 941043791 430003300 902142008 145328880 751946123 446426248 609535604 577672689 768201060 239610818 833058484 823525341 919602258 726537422 727346461 189621271 652840019 576597276 644540749 780549578 869946475 484250964 659525468 467255327 905426275 910562514 960382381 872580152 892955646 597624165 631535481 871721719 879214696 41060728 459965636 835314693 980228650 3639849 765287604 569235685 777892174 554607796 690615925 259164994 455730242 628512022 857047560 524829587 767514491 269135624 674506239 436368979 822575408 998875838 999703785 298127268 902305505 341726069 507363264 125011148 893684405 390910383 964491208 642328976 654835779 521186552 701240256 850880283 874542541 166035495 263188843 601835978 810605085 884433442 961855865 988630661 991639933 478551355 619922564 820031263 969260244 387595438 430047529 506228186 934064476 312484917 810183637 839533415 842020424 905073581 907019738 485131881 830071862 320899714 853101615 733348415 792114974 985042113 986864802 589408908 864431774 699525260 956023174 647435998 701728693 651610923 992013873 378907719 826308726 116483965 959516390 195132732 925791752 870312182 922230616 714079265 740549620 479879650 497189597 959381795 966654792 961109181 963635266 702443067 745692419 615380639 938847762 799184995 871128345 402746335 891696623 361986014 462743519 863353111 908323753 689377256 773958316 175633020 721009678 817363513 834045803 898026337 990996518 632921598 901165826 377654878 526774467 185652078 995953084 166632152 587974500 211314246 804636502 80894871 944625604 732576280 824315523 141292882 180890633 734761676 838467600 749445875 975303335 411779785 413422643 580030212 922762515 932936015 937875035 882404515 911363192 958537421 963721539 208068271 289881061 236412283 341413651 292701312 580781408 183551390 908703731 467326897 973133803 336895511 911006107 755427721 962262169 646649580 982893455 352756478 809515861 208287812 655756385 637563147 697781271 408408951 793636431 420479625 672010159 951461852 981695090 456028820 919858473 61729574 928199054 366375758 915130255 634931324 979285806 940661610 950360151 399363436 664733864 321612737 553255072 252828393 614946892 965396555 973995700 450780348 635886511 517679647 808689650 527078752 629325963 790041992 872253985 758154893 901036488 637223765 817368151 741968184 941886755 413818978 758758647 995091338 999649078 952402802 985111414 792197822 917066921 726506347 937447290 45491302 343274554 347530904 568180969 7676324 42244459 690208129 910060837 988466560 995055555 574135531 825571843 146736949 628114343 756457853 784936386 385590975 911391722 505642633 696691791 816837948 943786291 994293079 999905426 90966443 413418159 766560271 797149678 325156046 822123217 756181006 996214122 728950203 857629010 772525660 781512600 130614072 596157921 390720093 596930035 543196820 556281294 947367805 975024764 792559391 945911739 714930583 989102042 121982349 186855359 833385623 969815389 364614045 567164436 85758031 511503576 242097248 824208693 334646258 772631856 356515936 718850387 736322391 764805783 823359803 983346337 96321873 340723898 235791896 604640620 145228371 897972924 972334350 992863622 87822992 128207813 426226548 802832199 538352762 665068171 776534428 933756874 499425034 973185465 811435943 881646939 434668954 844518038 353222900 622881999 156982747 406672328 907019111 974269901 421168574 433686325 668326553 743317763 860641071 960057463 45349123 286637116 308934131 882986169 421396083 488761034 985209617 999473324 81875465 372409052 804757845 898835782 343643621 648204837 737054218 902437716 712734887 799057516 599017029 653347134 12575852 254053675 520670630 971427909 621372534 762137602 616275920 951155794 57702133 316475176 541802450 552005611 241329008 888251006 612272658 831652924 811009096 941024039 915642869 974458379 337569956 362068895 120594742 167820192 977200053 977406431 737232983 807849658 954731553 968803814 552144034 705980514 77968712 755882482 559939242 897259160 162920395 415032417 404868985 444357542 946501748 988806751 911322634 913177994 137602660 420125710 575895696 921012705 841476920 993808452 37178144 894755720 906095996 991259011 633680187 794949238 623125548 792360411 537282642 990319989 274725185 644271407 313132852 940647132 833952367 897101372 785208184 842945974 575212199 960712349 398050683 979259465 434963291 492204364 378052350 465970354 763881892 861636717 470967590 835736123 780735410 840005008 732421323 903033295 211774093 826145597 297370249 550969208 403783608 457292364 74825658 132568735 452771229 830734836 672799708 811309255 486024503 874827623 262926317 605212005 532713009 636391794 184400921 530081811 463406143 682923215 727854095 825758456 202277585 553541094 308389488 748154913 230871101 593239750 624059561 638834906 655726914 900565293 840089037 863431213 646376941 719279469 824289225 924516900 137097390 201691951 29718300 883062907 26427619 290696725 28650960 93912929 498037349 567177699 215266557 983347085 913163340 980258808 173329188 623120643 581028483 948831886 985486483 992214918 493500800 589270423 917497663 959578480 439068930 529637803 292911594 623759410 833658145 905067830 925810747 935325918 886659135 991810276 752753010 927059121 751318950 751407436 494003615 726422319 909342605 994532751 458998680 843337373 296522598 330071249 367923268 842207280 207992602 368156438 338936667 569061559 465814245 816202944 948637068 974705356 868163021 985381975 635191416 950314613 463320024 658962124 40059618 463122897 403180264 881859981 273365765 381431242 317100901 979931836 527439527 766976547 208619083 681593182 851658130 910232424 543943825 544836740 744664065 831461087 659323948 979845964 374767195 598399183 828090641 969628770 109996256 349748922 970353196 982511692 887534708 929723871 796279392 911480248 779061141 936050618 87395648 828330853 751210012 851425711 327339154 798365994 755623229 988738407 433979611 618559330 732535189 742656537 756582948 924018720 679242932 764409806 44467125 259699627 634246008 638550164 714923103 718515124 944960438 950193846 580526932 599591518 783245147 826261448 666728932 837114951 663358904 749064745 544551003 957957703 336140664 578008753 841161422 947016827 861889438 869015143 596560357 901797130 407549903 506543231 536538956 800964530 525407472 946066725 777915250 981923988 543267695 769277005 412250640 577796038 42312944 311927482 43676112 385002583 371579476 751712523 964302913 985391245 141905181 536321503 715956677 864173419 324235394 694620209 741057382 961696167 692228663 802487166 670751600 958477184 195401436 640117798 411392497 789293992 840630741 886918692 157668529 905940768 604795544 672290284 599397733 915068202 69066297 253092017 155513856 700470321 975283845 998347329 637920589 868796154 292874717 424880441 665752694 777562174 443571177 944362916 507132569 558233648 253702685 953452043 560001711 661682286 479454975 706738826 111356660 751118492 994306349 996631640 63188045 528268538 387280179 713877491 721765585 890566600 691948012 728897121 9653650 346663197 229736976 927413263 45392124 648838966 208257043 224115361 541217812 700973140 877449767 884598168 198306600 202793745 815100824 990781974 689057052 958551235 424998426 848248170 399031558 627247284 89498174 561884005 937821759 971911950 566376055 970293361 629114131 836690211 922082006 973386819 169421875 676314660 900172259 922750824 672579710 966660012 339044675 437513690 211954443 990502513 295155042 699276401 514473702 934635604 670111644 707223791 440316430 488858454 102012880 342837430 44325802 200173938 326204996 463450822 721919985 768801808 47540143 775326751 599499133 790729962 304097634 887100815 177289921 987408017 901708172 933717963 783876878 880936836 524023681 715401541 618719629 623487791 710958779 792307555 196886311 522004199 367887890 501729528 169850451 596809930 468798203 595040560 659803470 764504122 404020281 924237884 29762424 881164134 17885017 694152358 611601384 713147903 665125233 684924134 380688645 896412818 938439202 939975841 607286078 668846884 442985609 985976107 799653002 930864376 232895072 973659051 826796906 844906390 367716892 881814037 817160637 916139618 398318832 923392331 508869718 782938713 291270562 828940521 781103999 801672189 917852748 983141003 558716312 801128624 463729222 934711378 299516077 856137259 525049734 595749779 137442469 688331635 632279510 874477074 433368385 514014992 179912134 755724368 646543178 949928488 944585734 955135889 884502849 971213798 500745544 954212699 579579150 599087048 628026978 723632857 518928750 836776013 474129092 957599027 510437298 672864421 740034736 742142108 168523175 329649753 860870760 938142562 65146307 302923322 437602162 561636872 91274750 211770182 147437982 377808369 385812687 900953444 743045658 805148218 470949503 673704140 928357707 990530116 685277869 912894463 214995112 938628751 380151495 601419758 78570082 968203747 749206061 803094991 20516634 482676482 956805660 986144559 643810247 831414241 245453064 896523458 15992168 335333536 125536245 524718399 531209176 899042117 23652363 880271081 150869527 175780234 595860133 666510204 659156293 785063389 238667706 784737365 309979818 377324273 185300225 245632293 651871631 883339833 813740285 903810607 83202788 399959010 840518780 952870360 680996828 729363566 336666457 416326442 594269536 790107059 518822815 733552475 453885113 902006182 645847577 742208929 893506404 968062791 369493788 502472153 926647873 999710080 523708497 699981511 98399211 495548608 358910750 665065287 693228357 922902750 45439540 748307019 11116730 854286008 605187058 850438328 766142997 830387919 505685901 754785007 150253893 951937014 949768423 993823951 621790199 932870906 374899968 935603743 242528025 990628637 262692354 553941366 40316185 175364500 670904867 915833915 173381704 730443008 138865522 531556539 601732777 628651783 688701605 766872282 252219217 638180403 182633857 229154168 915660353 970714676 148896564 879967793 429244568 937714027 737522888 773009869 857747235 980904087 179410721 830350786 783226401 904782302 596477826 886245876 624772140 674585965 194762673 502815426 441681283 922750746 458692487 744434324 531970244 574736323 608704194 972067765 831915416 854467979 615046558 664371297 44167094 102718061 514687336 523792544 960624577 988378161 752940603 927265911 50438429 838278991 27821695 810540230 917821314 992043731 720563079 864397626 61015031 471086098 324769620 556137579 976722331 993965158 211906118 283935734 830614935 922233538 841979661 859253027 7413954 449106404 54513562 964112048 407911455 648305065 739312355 752904230 587156604 972775235 245414906 570252689 397736804 573667446 126532468 892947449 843760553 991904078 437029115 949051640 755830614 792214951 503471097 968646629 662835573 830059845 374521874 509117836 641952698 654673636 495164101 976073471 885893750 961407179 827954497 897882626 19161910 682080142 7084244 976222426 662620911 856112579 954607495 999989753 778894233 812702064 754153702 883660411 938878115 988082661 408832855 887928341 94540610 977063713 648495584 708995902 144491887 503356345 315400116 666667097 716199577 959079438 885570443 959874039 223207051 385665826 864942235 915361636 12874124 842217097 368085477 730611244 163112926 683338408 796338594 796797532 52939139 606500345 18589165 719902866 762020351 764854572 527072888 727098023 369329852 660151858 182128085 768337416 936310118 948083060 53129011 671435215 999935669 999944872 513672841 718747856 513276824 842187872 157394676 891387511 701874812 848181137 611780271 784446754 374013032 480501946 726245811 948176687 871323229 905784115 704173520 866454552 993489001 997799670 680594915 988990923 516233914 565875224 561285050 602723219 996462682 998734052 516248723 568641921 864456109 871461437 84837251 578868425 481047663 574983416 748670939 954128849 830165096 836301060 205537043 666258090 138512950 961851532 936201781 945522608 610525185 744359316 401385397 752299439 713094786 828143704 638135442 675731862 123478108 508783962 657251860 815519066 477675171 595927170 651409090 897865080 243186213 730572736 353923563 870827883 334598396 665234371 518581090 967617334 374401594 378568545 487438081 914707474 139004106 971280835 639119826 651085255 399515318 911338898 327429255 625842477 574058648 755676104 377376058 719641492 535834791 662301618 580729564 779956845 351464514 985666810 848780947 960144853 529421960 616632969 947743057 998361773 278662384 929732305 214469201 261637143 191877258 386510772 700203502 888826591 839293114 945493082 453147357 816448360 65968825 636603963 999265922 999278436 302439292 489100805 16802198 765888207 849947883 913305924 958575097 979898554 157529594 256934858 566472929 621239507 312579314 463372900 98102926 995241431 896361878 928928119 163443005 788510362 944222658 981277628 549819787 812901592 4365916 185965189 214006788 454361490 374775373 924491254 436873058 708746048 286112456 861580543 314699633 734781105 7759652 581739883 764280346 828905924 846974375 941274178 700017294 736076881 920233713 961252333 940762049 946357948 716497508 873626379 190903957 572939186 174762570 336216549 45537057 209223180 370177852 834891403 519707036 533359138 589701910 998035742 655614081 959863716 240409751 697047165 584474267 923953665 571942409 815436955 60309458 686165533 330296491 765175159 95489512 483709803 663510075 937132226 228431078 846975293 764808746 862857968 559961997 874736088 597745106 704501174 445722376 951016528 6553742 439729761 357193193 497230988 885199549 952984146 282720515 440611780 630170558 974465398 827559394 944954417 531353384 757507794 316573457 475255167 674748961 972937885 322132783 396564761 755853566 799557142 846927765 875086782 245266297 663288222 236006425 398723701 443743437 603697692 286941240 399738431 679253816 914208037 593255356 625122794 731438530 885187561 349372121 802665229 173170497 614682076 391700061 538077684 292732563 351769126 213099691 385120170 765932681 854149359 55661628 301378856 4942273 560189442 286820215 906255814 491086251 710153630 47687296 427162168 350917541 885376001 717110814 803197931 756438743 909804655 74486735 424463387 497386019 649853699 945499385 999785625 982000530 990578566 863902170 878135100 288328911 400270843 354528459 902633932 361933065 569080440 658945876 743662347 676155377 855719271 920003252 984873560 290209850 924365798 574760049 994442365 948585942 961906578 28871421 584129795 626688586 695529676 951243936 971964967 114442802 908773411 556883550 703308732 599555432 979278567 842148852 973112309 769138246 804861765 601224498 995393758 153388477 471765954 504158062 936536169 886719526 927964580 806187541 825767533 254521298 809295163 232589861 898453652 679982863 854341404 109272199 946283649 725247835 739997582 558489601 651780099 534719074 855268800 977201522 986761756 177064687 741224981 440117779 636062329 647738729 975493979 211147432 300632680 50765053 934059994 302897595 898897468 64408737 159186501 526147523 557596894 788398405 895871767 281502995 308469698 759592760 892450278 975038853 993337435 864648918 969898866 987205344 997621626 860026222 958587020 689051155 797033522 379448357 706851701 322559883 960695981 218687512 737865884 804305217 979891456 680498893 687869536 748843497 802580863 701188810 957660623 237224942 284737524 90162907 688463154 490681390 771520965 693842048 847205327 394095577 701044240 859039457 902775585 869085704 990394853 202378787 946626541 140902373 880774402 286975721 548092080 808702593 827432056 691848866 692658346 985563118 993164946 576367765 998971352 208494876 539986176 516958887 976194879 20340735 958851080 316922742 641719022 469470305 807656902 456886339 563826909 653483837 814189013 944104209 957939720 995221030 998701889 757968828 880329511 747065333 909462474 30683821 740904119 467923190 587667474 238374238 446527378 297063492 766400563 233687173 390401077 291045657 473854350 225312482 745556575 304383065 832390951 978272337 997308446 41329746 275970855 26926120 744909178 335209130 687011788 1189808 108104825 504567121 960474703 68025332 493187820 418731582 472947459 970363974 988033620 634716320 816253435 323389281 974868646 768297036 991893977 120234732 506094309 392650073 793718211 829694935 972488543 551408524 720641375 875648429 949184124 60191337 385337548 429543106 676873044 203814334 352573447 203327338 998269061 191498438 371850930 424879377 623950471 579436434 604281477 114613370 393923687 654996690 975465501 950980821 966137550 122112883 337996432 185917662 449943479 762218734 936694332 10074715 841143966 229591840 416178426 688738817 968100492 812632018 984247186 789990031 957799977 464884213 525308396 40296183 502872683 115654877 973036793 509085805 773055331 84840625 393007082 632107015 889501411 744230523 842330250 634395179 636832821 262301842 881961024 418591038 919189168 200337067 939194050 875044077 965923437 884101774 910762284 53157095 833998141 359314639 960067227 10306779 681646936 839197151 883113487 790236787 827451970 918289577 992140393 826066457 858826348 688822837 800801086 94151693 631815831 134692029 340838500 32195340 528028467 206139428 315641915 619641384 806562166 903522768 930893584 892038265 914048000 985731796 999477716 99253709 274345446 533645658 766525923 256228073 576880956 454578189 712960485 457348476 611565112 959425141 987853935 244745218 800609248 718173994 939825561 495191975 754370163 387975994 778348882 698646457 851432791 126945091 802643947 355639430 706645067 386950530 642779908 878764779 996075338 214224666 363291066 912531652 957565758 63554166 592042158 467090639 917236286 141558785 843234970 68409087 318682464 109843275 977363550 226571681 951939059 30284139 814816575 754827376 757662621 344485244 988734885 363847031 777301118 464743189 779653211 717629096 832953312 866041660 918206166 596427103 749036266 383226977 731536745 845460445 864311134 205483322 295306236 555406193 565625282 815590996 999953010 895816994 912053192 381648131 623286397 567673796 952134845 170391414 197447906 415142906 804251519 121731188 138783776 254383631 662375708 194876286 289917110 701689762 989517140 558726168 563826675 953139388 997530967 246937831 269136277 173192556 264121213 375138171 873082267 659952625 853926655 323680526 960479317 21935287 723202207 693683640 827987203 56526537 909571346 427892386 583878270 154521268 978915605 315745856 941753422 310427748 414253552 476650293 486979384 578274797 826970184 238002054 649215526 734611726 854057536 484203175 571870859 924635160 975362177 426232152 572346912 34479656 454052697 362380330 384064801 764746491 981668067 447291004 801427257 694294618 709907563 295379364 301770163 135990318 286986547 330348701 676332955 811309031 995625257 379243310 971644292 397728413 832310562 552370630 811631987 672760516 909904621 309267695 993628654 119923375 973285653 524062116 636989787 997392440 997549946 302613287 513993358 677483248 762204261 155523637 856429389 786652699 838986328 663613269 859734108 328119086 910911549 7050086 229875150 380604085 719490869 333994617 939759332 353840967 473121494 779865002 977249490 446108634 498932372 72908519 568200280 280793575 536827760 671139888 743136814 337064005 762368423 571427999 986224077 814606958 850602218 263137838 896173074 550566589 606727010 5246549 17749703 737784570 754010285 505870296 695584195 528636817 630054549 437154766 577376974 825708893 876862868 963897572 996253744 288301671 614137804 75936012 885508033 811738874 994733858 185345515 368978817 949122473 955842207 144516238 145133478 48321349 503977216 889175713 990936208 931326545 965894913 253517628 486700546 357050706 796846981 746929120 749131572 751293940 893901256 715907740 796090981 46758317 138377138 210216105 488049018 334029187 350157638 765019448 873312184 713850644 849744813 81845538 222936958 999090480 999547213 843770890 932561934 334399592 859209986 311593284 569429796 555534053 592855112 912583994 979978596 654075684 906731813 258888082 707571062 199123616 370274574 90391850 846732207 48671070 222031571 31140272 628135136 675400949 808744475 721943530 809460668 437257017 571161702 17578355 436614534 333328799 752612029 3072592 321213731 981607060 988759085 151886554 518614699 403156248 488020199 555190190 742655957 675149525 694020783 67793093 339565148 16459577 463482153 191621322 502276868 891335260 935559303 462746832 736972465 684261429 799434206 976801782 978243480 613067412 933734890 765710057 819148749 967250175 986492628 842699099 877341651 494084833 883483006 41595078 187134651 682262642 713329712 420277158 517485731 317443407 391062525 40234321 809234240 769657079 776454761 645453139 712199514 712690008 988940057 568738238 602781795 395146268 485606864 340355322 791647448 594178165 930773733 469092582 831856113 129935091 487551838 713306270 733316139 254545610 287357892 23260766 103242856 402234165 461746890 106601986 590011960 458904041 940109198 624109578 945910073 97741682 515022289 272316395 861649895 104298832 907924075 453845395 784710426 686087393 973156642 157896975 485302030 646328353 971910370 452957460 816958248 213624048 492432162 771133614 797542016 394141817 563935363 693261398 842636421 685713207 988303770 102704789 153942690 632147533 998043951 154830015 943603358 409448324 936620409 880389351 961790154 338098929 731512442 340871363 632258482 319314746 603872675 725213282 766949862 591276772 909864287 218023775 715537580 540490629 802501958 370992862 545744760 515066509 607785168 568413967 778361086 991839771 998395363 226421769 440474900 612259628 818451917 685516694 993605921 102838373 860466700 318556770 705172112 105874528 958231214 648851200 767782644 428661759 462194511 991812472 999090616 319369676 398767136 193514782 375363863 794373974 913558914 532883127 951345847 951773491 979228021 118966459 946737135 207670257 937447165 555047197 575371399 253662438 353538635 551736996 662162938 812940628 815357697 272222329 759167972 886598963 965872789 723999411 841446813 872587433 901717621 626921876 723007628 619989749 979102001 907860787 920813365 694590682 835215047 868381127 991475503 8172240 341422891 313875831 556072152 131769786 695142944 855493823 961142230 265358570 408355357 487545620 925152477 726276944 777242368 39432475 224339085 215290710 248409508 758108664 975594322 720167826 775721331 751820524 785629065 73234812 896818359 258813944 376226886 831109496 908679662 825484597 977006792 580583944 599855657 494791331 865469204 673880027 833033649 817869523 938362174 594916106 685149687 201965169 812485228 213847336 491530275 417291524 997020033 508043110 529702547 248215696 902692487 751065953 895183028 833244030 917898034 536285571 893465397 587987200 673119108 322275129 912237214 63838681 555909185 886760646 928876664 878975643 965808422 501420447 531086925 160500008 416855389 41349250 993972233 853501797 935094281 120663904 640648647 769786951 903418202 745460658 764108953 170283305 199776355 291202405 865574007 127988724 332255415 354085678 814941110 765673681 852803662 126221047 976975367 366645402 465435959 322577772 599396417 486396279 758036979 465525687 872517044 881568813 888329861 564251256 925481940 916516890 947935989 384868194 717642612 702774161 743668474 810252312 839208615 102704810 439269894 435903165 713402435 279025888 291337892 38137805 330310680 324807219 701521101 337721588 467773230 350306878 788339334 247745652 412818180 716846426 956178858 74787393 575310884 161115738 675739344 143725578 343248560 835834261 930197103 777984191 964333702 169205512 639871087 216401824 779340133 698727891 858552237 903631415 940098256 550929498 881149220 101339831 367533303 405563722 459479827 493527393 804752355 334337205 884572293 598815287 899005414 32705018 417042731 802636412 948347069 414314851 562048949 767088953 859450237 162881051 793579323 476531207 497201021 855135610 891238441 477431956 834741949 860655023 971278620 304327491 969496216 327226428 692724721 515878556 774208685 238711197 711442975 759210393 913465372 480579632 869207137 119691303 392605052 552778354 672540595 748932309 838766255 687745889 848701730 768956567 902604080 968083816 976745422 767097028 928157238 973961337 978135648 495988401 562886091 554863998 782691945 420370360 640786511 718524896 787949547 187992342 902745397 555483827 834576037 587922255 693505882 450720942 467945101 225963512 891060586 39200325 586951830 43236412 675490013 691140830 813531180 274474890 343570497 571886893 663655934 310162427 972873248 265217468 417627378 487449796 566498064 748991577 978377635 631875916 860729132 418826138 818459330 677277186 761835147 168652359 192537323 262004992 524063804 73088546 126314891 170990882 856357071 697895390 751113443 568445569 839936389 347191166 512256522 34766198 153789310 978671729 997952196 265617179 708315781 605731796 979126687 173893041 377130981 367430400 684168825 585348107 707079674 611225009 874465993 663549779 928197309 610202539 911369189 597909185 950991664 293279874 301202551 733007034 905395513 197118650 776820987 759351141 954342370 577804451 766663604 92112441 431200416 489963239 700371929 130257901 954866700 784738900 852547376 138508559 284993620 37391290 908695859 368858971 896151017 109326557 703301501 81218207 202568492 579087071 753017739 474490016 777271888 25507521 290067735 101160488 857329889 274924620 898132212 186399135 894323071 101452279 354285509 792195374 837138907 14499561 683273781 467185078 751601132 657818401 742796658 405788816 831598376 324379613 695496130 191896653 605863878 116741834 637027507 499099600 656356730 653440525 733546415 649873573 945350926 409760663 418176487 111056785 579135391 822068633 932901743 659291472 971675402 373541337 894369901 631158680 735294501 613892191 836720557 256684903 520583314 633059046 946749891 736263173 941171181 798882097 999999577 33398286 421954682 444917319 698357058 563104427 651986027 409751406 550492482 352472031 751003633 542713530 867772501 417628682 871321686 314838242 752291639 749814241 952842427 181910037 314395814 356839451 570153436 859986844 920410233 79337036 367121622 451162536 993757845 690522732 750199697 699314337 933844025 676049201 712587256 588700941 716401385 110123797 220052665 424809527 653571897 331878358 709462028 929877014 969342887 17795834 642824177 554861386 769292069 890569265 968638249 545552494 880417000 121281471 200066747 700239997 700654940 877310472 968498768 948554230 984720371 335498493 703693123 46529920 311907756 615821243 873824670 440955102 729821788 336122983 703316305 664761543 713162877 185308598 978511719 521088647 890763169 342252468 494743842 101993090 309131206 22068165 922893962 206200122 803693616 319656769 333638609 988326262 995629808 273361831 287906022 297308235 661896943 841465344 994169602 495393364 722760839 643936745 893276195 124746165 163086365 36313624 740276697 78994606 565420481 686180186 818132253 850991582 966413108 627291971 722320226 170359879 499726716 682620855 794975394 949709204 966687449 271422892 873007009 927772113 969282274 100737139 828381533 628050167 809258260 827933763 936528547 508938499 526075950 203297728 459693649 941621223 963192905 239117720 578336744 58790518 865053899 614200223 868611221 887735366 899007092 266653890 345561464 942967493 991767317 731283313 837286568 649895915 856555488 933707696 983004447 70470903 245104922 7753722 665742350 429060601 874650991 106411825 865155552 406422834 520907855 157239654 608404214 652371484 749497953 914061657 952474504 733572924 829831213 264466008 805770594 285677936 343385770 862018441 955238675 775846148 988734453 122112667 523058619 913374892 920145724 534887155 924766413 711390252 863184112 428062644 883290974 901600480 991747636 84574812 207259974 878861865 985293280 992273395 993967633 826164491 983477251 109196698 222799492 178915570 621192955 37324962 773734669 48026883 992684533 59986601 449248389 871052769 966464052 402567941 404084158 189904941 821082883 913563213 936094669 819193105 883816561 294979864 879815619 375505222 426264941 177508205 181451470 666933301 884044595 81586480 247065362 771679146 985509656 894253094 976429176 574769102 623754745 484275129 968913352 743280262 762439366 532673200 606285369 101807333 173245228 502623714 870518430 752857793 826704430 623119268 718158271 258708050 398349362 318475091 802092418 763313334 866664642 527427698 655715158 800969150 992124324 343830631 676688163 850326893 947482079 914884074 931492978 301511394 465277011 779937248 971615828 500773877 669330379 271125122 860592111 698143157 739758019 638218833 844873068 147127498 636049012 13883859 92359511 497445369 716125706 631324202 783772386 872305346 948616134 48196363 696973885 758874281 843834670 816154416 870964690 800801492 875590584 599164968 731333582 21359273 698587452 173156313 730930641 975299487 983153316 781390386 955049809 765509633 866868791 737166400 780183796 529392896 782521859 111263185 981248011 917651220 996441803 354348025 438568303 367262804 382659446 809976010 897801726 341191541 548448904 493327223 816035373 717787271 727246921 630889852 660377621 303672560 359058418 35237341 892153064 772338293 878408338 828424131 928159398 702555002 770261589 89145632 881621121 464099129 772799703 679774302 917804517 219463118 836472322 28603483 454926206 907503424 998102720 24056059 212154763 385926746 552210971 586803646 981936847 240889034 313901245 678758063 712021222 366399136 757301733 171357230 563646845 185821166 757722731 287132509 396280078 280817550 416902692 777815977 976017455 762162407 771986965 122887317 505901918 826758799 986911755 206825505 954627810 191243807 749581941 414411936 509294837 447502004 758209119 468420319 515611227 407469752 976306594 686486434 736968157 943846145 978781209 885099716 988365020 656283839 970284828 659921590 866286844 430417539 462366775 848859404 925719095 17602078 244187846 831947960 840967223 694748674 934345652 490933661 568885703 523918220 568529722 950352019 972794408 8323689 446105384 29441409 360047094 142512119 557059907 895041344 966408511 969796232 984820900 55496225 995815150 808289919 923722429 292968017 519135835 234678054 751077522 518852142 867661169 511669676 774598051 670571097 919024644 837338489 949371041 712010871 750075093 29316219 632171122 427373591 490216245 243298156 628441814 368580513 506531527 265189769 473537996 352337939 573796781 691253323 866901638 186842507 343532861 618676599 783582504 127667731 635506319 421631835 693539006 186871557 357930181 600485385 929101972 672565219 754129997 912499530 974377649 255834782 526079045 707012947 801974705 44464792 389057416 24354441 278736529 236243490 436572599 864380962 995543553 531411710 808103898 172020490 470593971 171421897 206344278 382396258 838790475 980361065 999459484 582968869 759173682 761846481 959135159 607037892 826634956 552861075 579115708 790261946 845822657 750509578 916599629 709831880 945487380 196570557 390856924 165355015 180579790 378931679 434491340 71698147 911603235 2484410 267687092 722660082 810747176 340039764 934634540 429015564 833161523 595995270 631549108 323130219 544583449 170789116 515862355 262857331 774512103 834508706 988551075 909439437 917295685 679869459 813609624 387301692 855356397 875911499 976715734 48802417 457468407 345148110 623512833 52077883 209411012 846638029 946935905 336604550 342477527 686114357 734409814 605458471 734892146 479453902 644876375 144903725 908573172 24723211 582077185 407420286 447696056 898102608 955339311 894104837 911841649 974541139 982715181 294512188 580386274 758733606 983164280 595642564 663398984 613608868 993725718 381111100 900245735 366380544 781032857 48594825 680471063 606786333 811034664 601473208 841019173 570717743 940494967 713616122 893447011 703853509 759571327 635655214 644297065 121395404 341500560 636769012 872725337 6392960 171140552 450614501 738778240 952629785 979725655 758119149 864574374 80263063 657606321 960459146 994269724 622906344 731596589 550129001 593170755 50989250 687025985 240004592 974372286 877029205 995004035 163997643 551252807 722350024 932669432 5704287 728317007 471505935 831204947 715162067 942783356 136980649 439930357 955510358 988187623 765293639 902372035 971574168 990663540 263777398 464492155 922598731 965614587 343093995 727299054 72914445 675874840 760144562 929061456 796270309 848920552 630832360 764291270 530628213 870369886 500641603 914093972 612953407 976263618 415424050 585968590 518549071 964047957 254186746 515409698 817072348 846701238 531369527 676342804 911928615 933759160 252289498 629564274 242735209 415327606 950895597 985100393 576675061 709400307 516725136 743783990 714819527 913017639 382632745 464812933 464114463 926199784 531738345 550910354 739446930 905477841 764359586 919021073 518223627 839903471 474928141 740700520 382379287 467093374 913457715 983577828 74030221 543962586 117240911 150907062 588888542 714816712 240754830 257594023 674291093 719264535 903671093 952293393 858400105 881731981 748227461 917384251 582405827 742309065 515780611 581266032 541457288 773780607 23255826 930345636 760426214 983978494 164748482 942670162 605608874 802402380 987240151 998986811 182377012 259840763 987888624 991468734 319467026 878073524 166541624 364901965 74617673 854373825 830697819 884753650 999077240 999793933 861945235 977848139 698004483 733390824 92725245 423058816 104261910 877165728 424016874 535090050 911130157 974367896 859355004 925821251 999832206 999920626 225496092 987938900 51831447 695105319 324788688 913589605 877696009 950261168 931021117 985528890 378050243 562557995 78180 504456948 423506341 578002454 698675828 980828717 580678032 748929802 381793156 958857465 971463097 981059196 571430569 937337383 168938356 720064973 642533051 834306664 240439654 956518878 371103349 942008028 326029940 620428237 57211373 798112669 381532722 848883687 628870506 671971894 975687181 996932947 642911044 750822125 879223390 992645310 28644174 834802709 981043288 986237716 700602303 939216025 36320068 547122120 229637056 750807949 590158292 596358695 104215253 540267317 404978782 737923765 564928305 723658647 458197995 688122985 391648495 834992062 410147390 712033944 936139246 981158147 441935990 979188219 839657353 888300636 231470272 682948509 539550924 968003039 336448444 849742440 75445876 855187524 569400419 687318070 138106023 504026262 900384985 911370378 792280638 892259147 741111851 936493930 731240182 845338044 269832206 458463466 582090940 631572573 420819128 594373329 128286473 629168069 577468167 940736114 547524502 779358122 315920670 992226352 131239115 195366437 163702092 277993586 375413194 676398592 566084837 643434589 641857006 765948135 213606641 835337240 996262837 996577950 254999573 440560917 559171418 682534491 136536995 797340230 402580685 452047047 544950167 958527884 606682969 743818421 355724198 439630037 413476505 950444699 411613898 754494799 352453850 654572650 792027544 825123531 239976668 844622866 833094670 833391198 702500425 833839690 871101964 909386035 508080995 894979120 461865030 900383341 606457349 726317565 476749753 808983343 508134620 920463474 951933239 978309708 115348818 928725420 199421683 262058374 229997197 645623232 961531802 978002085 29504780 501011927 830331890 995970048 143502431 208264677 597942955 624639580 293527382 331588454 974113318 975354659 619772321 693772719 621836973 840065528 208035918 441675579 849367650 871943085 346185166 581726513 76540362 535059781 928974446 955531414 23848793 369416328 218841983 926089321 957143730 972638491 572361374 594489872 709878572 935159404 676345604 697662880 76892806 900157078 944570408 944890680 242400671 274643817 663751593 813844364 962570524 975929173 458169313 466469360 691588117 844958767 171206332 415238918 106563776 973802209 22642657 277563436 493134177 552379822 10773381 836513925 951641423 976453508 197107310 529421136 835443820 906136916 762090708 855779498 345354891 824361446 819245660 876092957 402246995 885515994 743149724 757640782 812795084 919568850 372590606 912838998 368258630 627842005 652601816 752271093 570586476 949874985 876712865 880017732 277659433 918273020 646307526 955159631 875287008 884027124 828125737 874301077 603346846 700373141 962868971 964815489 160302047 217768097 583941765 906802255 823977721 951346194 645283753 940328905 946057840 974027011 212957199 901134084 807057506 922751741 684701229 923401835 159768058 345098863 631532419 995257084 931950076 936217369 347812756 377611133 874436101 980469699 608882233 717796059 799149856 818539955 538788348 761993636 670408974 884226452 390610691 593146714 572196729 687707797 363753576 892543669 394940812 844044553 89211841 90764225 394751013 729930830 874759910 874787771 101192174 495971808 242477051 405288490 514699110 740603420 441552438 532469622 191905581 747788293 277576631 557533102 214668597 369784788 922367419 932330500 922101067 984067292 275153423 693167820 758356558 869908397 395819376 808679901 77629584 957386365 441473761 760404621 442429242 939443759 477166887 479867804 493059103 526989846 25686423 333523934 629822971 780298565 528078335 685278262 440407355 988627723 741422618 974465384 880014403 961835320 853704185 871193517 273218184 986657557 846939199 959069621 695584607 858769869 201444001 583757377 563881956 667351081 947318237 951510074 69434665 138439572 890189102 919747542 793497717 860529475 759045667 866140122 286246596 461477618 470676505 658348145 313687078 791492890 328455320 530418212 214192656 570104424 416677430 674743701 801409845 828875675 972412949 990112071 259599768 962479695 498781561 587647662 111642347 218128253 420270984 543152424 509059300 565501619 528579715 654412574 13871071 32316632 425758426 977367849 383933346 621141538 739136661 771728818 139980584 177107275 476732599 918116441 314850748 467891090 277207276 570611716 619203730 951870492 537165329 614723722 821520199 851142012 46567585 403058921 604852964 958211703 605384419 699964049 341278125 870022633 829618612 952863806 695106889 881245832 184501531 416471240 210248214 741470665 58922366 514246688 692984539 872841484 158991107 590292462 575681936 668796143 525239164 823474170 645157022 798063787 349059969 625634666 342218620 381262143 343726689 605399074 383587613 466442853 125978844 216354594 95825532 410764090 605359135 670267638 865316194 935310579 750504550 992493813 421531991 752173670 574342448 863770469 20738866 608300980 382797591 836686543 636850317 864616571 385841851 920929628 504317981 678408015 991752121 998162081 775187354 877492203 153466253 935377714 785934322 990464412 90875889 96010325 161127882 751911468 636753089 716736049 167038073 806302077 78451543 358205455 546727306 800974675 601728210 790316940 777691918 817400362 756016685 981255593 524082809 860676352 230189350 797447924 658428351 743101797 828420833 852574135 795841225 839395170 678892757 987026331 983918218 987081347 474723760 589800701 162365261 570738040 569764278 921126530 26552718 557543312 497410789 948644944 758147131 801453488 368481522 686157746 362430579 469691058 839842741 939785017 660386093 805856768 912734323 946823096 786320614 905145902 514703719 624637296 720847097 852361451 179588455 365954089 584896578 914731342 148405335 636762801 757870676 941994671 631550095 707419321 411358460 422566491 96885435 609023781 162634513 216216226 977068204 997345444 165335163 272380484 189228295 912913621 111446867 976878315 636969067 824000980 109672661 478868778 511353851 621294552 155234836 272719724 923428076 944906304 902116345 971222257 7230132 152904369 910954870 962323888 203210763 759821493 379552035 443522166 896366023 953077459 173395439 893785288 319567744 682911900 474202781 812115110 547381197 869830154 663485892 876942677 42189229 374523976 682725208 712054702 643912715 978982710 96879470 955116705 261048387 629593179 7758167 712969396 31808933 88881382 966400876 986080440 13010801 856092116 454978468 531160275 528605553 743577184 450253306 556245997 241218330 866348237 449763311 967356707 971838900 987347463 290668329 584392497 958344268 992816056 720573587 751774923 622824796 793371569 419287065 624634046 408381422 969272912 397623663 486566938 190027830 494167342 787098396 985179568 358673093 445389077 916491477 999714511 294048823 720457022 913044704 988679912 261556522 770260058 680482551 744282066 535899826 886034572 881680051 993755351 68966622 334679324 233812530 478548263 318727456 871252575 114324707 295830830 528923757 996463381 506990208 702224355 517769021 839226436 240052232 433308212 406151036 886742388 162844964 800920479 39648867 690908919 332132259 600756493 903942182 950425894 866791616 995345619 420012906 452275831 447185234 778650334 328417988 829568777 640276902 835232363 657089957 701954601 811529702 916978688 415560021 471844117 849331636 973254489 218160324 319981092 965748148 997118732 257719318 359296993 899189291 912903809 289402969 879684362 289287766 678962190 914768115 957885791 43750425 264863326 512110935 542137680 586156711 749671347 211322635 494099757 734243159 792851551 166188061 958700394 253043747 401152681 118947561 981160562 614967592 631244584 481970962 505108632 753633662 987398941 181164377 748253017 927777750 966663190 728460877 927186116 865328412 971013959 57109597 295080593 413080905 523426688 314203897 865806290 980019301 995438597 297168621 501022385 976334067 982764110 384445380 409659764 278794386 338358215 105572241 742989096 943847411 980417930 597590203 715084134 669867294 891618212 488047380 654318478 703881010 909095668 666880297 891073080 579508812 941461503 449752952 898079000 800303771 803331418 679011841 793499025 974749659 998561647 363087158 712409225 548629978 603890299 180845690 593778382 943290009 963986927 612141549 794806130 786531466 842745429 987064712 997000690 247314106 660743705 959066551 988766725 381828681 582162783 763845165 948295637 360890139 745046699 159979101 224465015 119675826 988828610 568670863 796477049 21692320 691321860 189579986 407488521 660284108 816469002 880636329 917295514 185440410 544493673 314694383 462240212 223804825 808390003 226892759 400151495 308230593 957756848 25291230 364894562 760057651 766360253 350066560 764148211 139191750 727560134 336895981 826141411 568250308 969214854 548572305 978328650 753568532 994046246 567784829 723275384 697180460 818569621 288856961 657502132 92006483 706963548 856613992 903986705 847948226 980243101 56124129 127416026 567790145 704157695 452533248 606439010 384076299 856183194 764327889 903641966 159492566 347748529 873767825 979151502 87121221 789265823 212935235 648750465 957210597 963280826 376597452 777943865 344864151 872622466 527753011 735073659 928116089 928819495 479976056 978991954 159860990 492412242 443979096 959174479 587754884 687792473 827012867 874831497 9980360 708587177 454256300 743585755 1888442 883844294 435687548 872971152 693324574 816078121 384849795 405474484 754263763 915404800 247317547 630665508 912043802 936231068 45415932 795544486 845525712 986901543 185050286 651333588 350784540 929169562 372136979 739088252 749053015 776321927 450275138 749435166 420894574 734041863 129231968 814976835 916535616 919343830 995525488 997282872 651491784 811087939 436789801 566966199 851764602 863135129 167699729 548517386 353820129 845494062 124424809 760831090 582303612 633285720 540327357 711305180 686843498 723732688 470402585 965174621 772027436 947578671 165551950 279738281 968682698 991723741 711886846 993738106 80521080 646122438 651655279 820991897 799673476 803353394 819314313 944692665 450991584 480235523 695767505 789667444 236866649 844857051 515350323 582300894 141333995 975777358 205170 955154294 331420310 673257167 782740977 900933262 722966207 731538721 25875343 782717236 367380725 585857735 951853398 972295852 462393461 919079374 749102388 999201590 767212876 784768257 191455453 759767137 102681584 825814504 65407593 197700788 912890791 913915998 653945367 695398505 923286389 954238736 163392267 486925508 293840831 677636168 809674138 829087995 559132451 851318695 556601203 833584243 92171264 429466909 977972264 979841605 197289227 625305619 975569414 998908936 835795031 958211545 581706405 848391062 589167769 632744931 505111040 783601780 64211108 897696662 205953335 578084636 540224852 961838908 740570929 929401052 686295589 866799258 230495514 314313075 298515279 687522710 897563210 908422621 497212484 913636788 85067610 85306865 491704422 645811960 679564388 730933843 610734009 706145234 995137713 998029070 57000871 89648233 697783941 979602935 839592568 915188185 776522358 981170701 77159409 400343199 826477141 992266718 153409715 871838792 571267158 603818295 623550108 827652679 839180517 999581925 797767839 989284065 101457483 148253039 394076710 487671031 807387111 838373012 722139822 814657191 42315406 517797637 722362241 808323398 671865379 864205412 383077119 408025572 709414674 997272032 58377575 367185530 521711319 819253820 788256440 831478289 750111626 979246462 504105009 656863294 119336789 968528932 623609400 767329153 687652869 837628480 921553087 946231680 281139139 424709704 559872222 787793018 585448329 773680486 317426668 377723590 300146648 795628319 958833223 968160200 540737234 733432174 194523783 514633092 612381464 769072402 630615187 904276254 279063299 532403569 577891107 676643368 193145478 297332790 933879519 973006899 903328899 982805566 737649281 826845110 170944100 360223581 192198909 266331433 992428312 992948464 906262326 980557698 858682620 993801846 922998705 930320977 151516552 366016594 865648102 894862825 377139430 739248633 464998511 723874545 579839545 886083666 272423887 374354895 712336914 892188022 486258081 803249371 733820756 828899263 923866525 987881947 441507147 568748572 631560862 675380210 388840275 891895267 326333149 582201275 460587441 530766556 917987729 987375593 738139094 809431623 645620635 750991782 675889016 708633289 614462719 725745223 583900897 709892369 297416621 530560144 149134350 488817994 560790137 850218228 882729631 912586043 646576033 974381146 572982178 895634540 207517109 687185446 894885037 909133671 246693573 484712640 683938178 858766583 195320654 222529026 564571989 957876982 168117831 351506671 805691152 859361728 887606216 893758176 821122218 967618769 959621649 992790891 745349630 997885435 965795821 993625327 550635376 609014098 428762842 513671374 709481764 778135306 410455675 547766817 161424730 444691899 503282592 551759577 427774122 812069263 19058357 979362021 604254667 721112124 230373112 368637582 553985614 872767319 34234107 671787723 97371947 125907645 385010239 952518099 183587036 461488440 107602807 642415149 716369078 982592336 893354309 898119819 630913990 691147598 502502736 831369379 661009013 711534048 314747949 967767883 534288227 938113120 259440215 620933959 91242502 705197004 72065067 185354479 987164873 990150254 671929939 756070656 503127111 901340594 898867664 944738839 261011076 665725578 111875519 429014976 548908610 834654116 491719369 545911188 277664630 841341882 293598852 389786131 766951168 946028342 904369269 918801348 260290763 380932488 817694844 881619090 775760340 954239057 956981971 991516188 413202619 677345269 578574519 745478640 525173139 574691381 30118225 590483174 189446093 926292182 890771239 969321022 309597168 397219060 776024150 971354673 312124612 485540735 558991000 683653896 724821121 734065071 299754408 716209171 197157708 805381419 220769603 657568137 684707906 980201894 538382293 646523052 84422229 403527525 970744717 980028755 130243132 543357459 7529332 349325397 375994700 890476138 450101955 764909737 955585210 975046655 554752768 982857333 589142449 931056238 262995145 653448985 376889284 746919453 236851765 251107781 661529561 986564912 164975265 824782376 917421185 942563884 696153802 767574247 564139187 894102003 2302682 669514887 179851358 443584403 288837078 644014370 414830340 999427739 618959606 948368045 42729150 94954485 521037291 707322062 700898926 996471406 101288143 542489239 348917736 555013150 619435596 649987003 551752713 805300794 875565893 893682275 129463357 776906618 812368650 822241318 753959094 854719797 636503753 718537378 748770922 780691126 112520544 530110656 733508819 947227157 904775258 956574513 316684115 562197293 651362642 921210805 726435748 750026499 731578697 902337101 305832438 785981151 791059821 801838858 281515676 458474822 253969189 705835834 316122685 776339518 125496642 889450306 154969265 647685858 54188881 768900894 64092765 178450505 62876128 81681135 348920336 991956917 419790801 775493387 377754359 728805896 123223547 615159294 834098844 951169612 859790050 862048930 942077808 971841391 389419205 801208643 484789803 716801623 876170342 879672905 852076061 855127525 939765314 973583356 787875693 909204145 426091934 960886233 264896620 577979366 975255844 981224004 329556463 782116479 388223222 865413587 965545324 991315364 9294083 487946871 95898189 961662666 500579541 855279098 124523416 324114914 743898519 927656859 319187774 538095258 891347243 939745124 803003167 822693268 518079277 596425440 251252816 484015496 655984635 885515528 802440744 987705022 284266569 370723746 29818449 607837209 729472852 837478759 960288207 966954243 119564350 569481124 440353633 524209061 583570998 651740299 605666214 985080038 59224505 177952187 133143219 593622492 862191506 990431444 148771934 393520292 604620093 900997403 538804596 823058824 338456897 664638263 463284341 709455975 631292022 764338083 273927130 374348524 866208367 992101605 514107020 565453971 355001129 983094009 945054688 965605734 275784622 435618681 754425480 808097916 3291477 270542908 383873392 839235439 37614374 413668106 891459983 963503906 960788278 962024207 536147796 714471719 568555265 979676968 602416072 754552009 937302030 954592023 411656810 507662889 891040200 910473748 946046727 990577686 686833787 894774626 337592867 592582719 381073170 647351329 887546337 953487050 376493923 865817717 972775621 987631860 884431217 936636344 2371387 302910455 78099948 454123227 133177397 171564051 624577971 909643720 339983370 628652345 320387852 445869416 207048381 813483316 847490705 941042110 134290575 821037998 63580526 761701629 27246408 459596829 293008147 826156574 416026889 559203245 320946207 963397216 645022559 868139076 679443388 805605256 163040496 330774083 376467971 582043551 108037822 315921488 939642537 957590323 260753733 504940850 446611109 676117298 918904865 984493213 825375098 929431020 303004830 995425471 467000678 602389434 691123649 763339820 7534418 177613593 588087116 731716897 38487583 680916243 739203465 827401761 584256301 948465630 622266317 919508331 473903092 625316188 31981656 309812373 275298937 933927175 740919027 863406308 248738432 919472742 57133578 569752030 247279842 495972258 15041656 445257343 42106922 58821319 616892457 766620213 729506831 766447042 730757713 911681845 686190218 752442540 723616794 753370010 444315547 845414201 516068125 822522136 334971246 666133879 362075788 790712773 465945831 529765287 1767068 396000232 521415775 956217716 788084675 985822202 491859994 818942392 586390372 884224014 236250499 832900443 477664317 591257542 161060957 856460404 665617247 855816427 606166204 705829902 105176633 888870380 280365889 767132282 283749578 576800624 81650128 925281856 422980063 495820609 105760277 967934028 219195292 870153251 458625383 841545117 141974837 373245404 827108249 962924704 986499710 991934395 703548134 903985515 726602337 954921442 320176740 477126025 119525934 278816205 595539777 699129588 787230653 940712325 932312926 949061231 735059151 926696925 890067423 914681650 183645776 391524039 30832432 881549738 591249767 812019557 866146380 894866930 153479810 640524538 759052299 867649203 190666378 240746204 472004374 530856299 38775986 907450047 2091941 399269923 226552085 324496581 93478454 881689728 83162018 359019285 826499470 878615377 259092768 761132823 651555886 658987941 148624932 496409073 526163897 657223173 584902202 696441699 747511866 866990369 349495092 440567875 857783955 999926323 836726465 883048932 949841470 983448317 499498589 608436126 419246777 464895023 323936132 931952463 661653518 903856816 623501664 859520787 695532223 915951405 851294957 984891428 680005468 745950777 68990352 489177130 804462479 975953311 145203046 911835178 447318739 822585891 369491366 481332226 435586668 616780288 824037827 957774229 869223189 907279631 509133327 837645362 226623854 391386499 211491070 346923852 763036459 998135871 690922096 723746374 622890710 867701913 962360845 968493426 352758813 753962031 13542195 219132211 127848228 694409202 130402454 743096756 795187437 957400260 282220663 319217958 397414049 433458343 50685672 966289908 199048479 370074758 973611172 979885827 168045241 444865142 492080544 517443935 595463440 858085029 241603783 597018291 745608059 786744670 348671698 749405234 196938565 738282320 153001906 426428938 89921923 806997713 743200322 757024718 526806868 654838375 463661829 667402256 489214561 652658726 26723316 817253777 52432077 68090341 34633317 250079412 895707251 935703639 482702702 714969315 743988448 851918187 982516035 993052691 166060297 540553501 206495324 328352787 744751659 857697231 837560255 892488613 820326751 898700097 886404061 956186231 184507794 773919585 82424800 632155077 182832051 473733911 923481212 964162383 125223021 621826572 236096154 615160851 795890626 880597550 266282421 448223273 187275890 404071758 943792511 950958111 809031623 997319468 354301829 762906905 688346540 940930281 383038626 983104029 252896725 637037168 559330407 934181438 133020963 340141041 470356434 741268669 984272581 996687401 193651622 270967844 19089981 127894857 198233104 379376568 267032013 447265292 814858938 948846919 146476905 317576080 505132713 893558269 444974482 697777652 751726251 850405896 444725431 899440249 743662193 788404653 581964915 713886485 244106564 557739101 285501273 599816523 39194853 973477494 279860912 491272609 887503136 958556210 575175988 852143443 699914900 718230513 254026160 718078093 873946000 957515149 363134454 397175708 740343501 892359700 73232398 808258273 315070944 693864925 217826889 371555868 628195888 678153790 382344639 479289364 439078105 448511806 686026213 942641205 466728573 626946885 446529976 932079207 818069841 826905702 63999568 187721751 161347976 893034862 744372532 877069015 411988590 630259722 243674261 883624083 574687017 861835275 878086685 887054371 45974566 646027916 124264415 411449383 322256641 975620911 215962843 735575180 227142983 405630756 721745415 953464436 420954479 836318694 102845586 557037778 943176548 977827500 197937503 468508447 401468282 745825773 734686059 942122519 250159226 936400357 877787915 944608866 848929806 855204571 747599332 993762249 101996392 323229135 155797684 195623825 355444611 697703017 540473068 848954794 876040986 921975844 591966574 928203875 77558837 754754052 977820706 985981217 710552137 892175185 348929316 430523543 205117789 998187903 325554446 393061113 362867523 814539467 919491928 971220720 905017396 992702808 526024510 602122840 285157056 568914045 264079189 922907280 615153261 615688073 932097987 946803203 524422104 782843487 915185119 945852902 951447574 956609088 501470513 922057400 717251943 999043138 256432760 778877393 755438055 804435563 67893171 148488949 697638294 708816627 674693320 871483461 208690037 992722142 306892392 746798611 122754319 841845428 204582867 361322386 667016565 752905057 851757500 965387865 503793634 788746641 456376667 474798317 315770235 821571218 751659123 811352610 875698262 972446115 370299906 939922744 636465442 726649053 988191826 988580497 132849724 276464444 670854046 962061795 439127239 572265949 183651715 230561658 273283262 297732407 523774279 769931099 618679522 856135144 866003772 932245261 210525303 293122722 734854119 789758171 609448023 905656443 705543769 952973862 330694554 504198617 889727244 992905423 103100108 291039779 329999295 587358586 725371797 889844165 173238495 536607979 757884247 969713706 788016364 966353428 649685852 782501391 461808210 686962267 204996061 819172590 190713151 345053360 619493518 819612000 195260803 416843012 926520435 968317711 998521164 998521357 253383573 497430590 42982620 73404713 853619302 876530008 259624876 566728333 849855363 917814034 952594302 971329214 940240887 963209668 496123682 703978133 335370701 382630355 855665184 918245405 40592280 793099593 747283456 775865262 844983921 961955849 729930695 838493474 497577532 532710224 959495228 964000058 343119109 929011708 697541887 886070960 121871825 857553750 185572945 547473049 43384994 892427156 927989342 947205065 974089863 995035734 905759059 953437461 731986686 954433912 639451007 729203961 531343747 759714809 411547145 771990729 190994264 468394463 126441249 327650061 702996429 719790579 364179863 810855706 329475213 330284604 106530823 980317993 757124603 948891996 782474070 962374330 363983060 778039579 832549802 867922775 809162768 937043260 652868755 964341134 969370193 972788153 550084089 727235947 746669121 867327614 855974223 915238119 557790877 721702203 603215860 641550660 833761094 855423531 806417587 814197884 260999295 953411115 958149171 984876508 639763330 895398821 817062354 859428595 792466365 945559795 710400961 883447725 284538756 657407614 157741112 901853828 24158975 890833098 918356973 974093370 157906753 723218826 814852791 996182047 748534738 801216179 771532782 926821121 37005617 169132528 135415015 664597710 795276179 900063447 141963080 660911227 214546701 605972504 196252831 702699097 810061266 823184965 183370702 244385471 124629485 639065644 633539586 963532228 310716653 677796587 985503797 985625717 453314383 698948027 476250511 936797240 406079441 625972060 520766517 533184419 777725908 864431219 149851027 640306803 993777901 995716435 798711068 928793299 16116619 911693797 744608995 851796593 165637887 718963405 779880390 928417295 968977750 991996615 415195040 420933953 76188549 341915834 701307709 987165449 958316313 985000896 140179789 753328370 95224454 211361285 137591531 291028870 839385392 885961055 274814910 323513313 680239731 799909685 261466095 795358018 638457606 734142068 903928272 962868318 714356062 739078256 710640231 911833081 214907533 336168484 899069035 940066414 377511502 489200594 590426471 674768114 187703309 234609147 798558699 906808976 511963913 798513454 972969077 977100514 377860398 876739248 351157356 427792500 248741442 686852677 154549273 882128799 422516167 679363264 774008404 930705221 124940638 180239939 900832987 985170110 424346163 462224391 625173150 866536171 797057491 926513266 326002912 590084976 782011786 907376995 331148239 794361837 183803170 608114216 762881210 985507499 562879753 576820285 585011837 815217007 84745198 746099390 424688243 812336691 955342165 958358969 415746768 868761828 595671528 863862077 164432216 439218495 783782692 937577329 745031257 918954785 803026929 938197873 141906913 918647512 354863965 565050643 96194512 644200987 656602754 845028845 568529530 834104459 127600193 618566870 668241089 673902049 811880140 941883680 790915357 875140054 279523018 409981613 82032866 999245430 157525949 682706565 675759898 958132768 897081091 945815714 19193450 155303667 346873465 755186357 562909061 676928407 684399557 769252192 786397755 926645064 631313051 691827633 342858087 923741728 971493851 992115936 240712900 267930114 734083893 831237868 190398396 588791738 449321786 494696710 666963912 921490065 361866484 426841297 661071152 866865352 156900319 624378632 248602278 249184719 22484435 994388578 607530449 661152164 695362054 807535517 757755275 824303404 149678374 877038625 366736123 716104528 896405652 969766090 588595174 889536491 351689527 676807887 704032745 901570316 314622642 881822086 198750564 749837171 866157423 935216868 129748527 871113116 670647485 818642386 11951793 773589913 710626523 866503381 151105762 504822354 843117635 886975659 60889824 618724487 263623901 816586485 847446290 920419343 950350066 968419374 532216969 832551952 618369538 700777864 531482126 892107770 593414430 847428612 527811822 824125438 543450089 934023820 960303618 974859961 323066083 506041522 259642452 581902117 406192564 715858612 951272443 960324869 873138683 988617193 500731219 775436378 478744033 500628713 659161900 795681483 764236259 801580500 769703860 818812043 4087645 511125794 496931492 531691750 857956094 891455562 266758658 761365140 358644201 964845849 327624031 896868219 68360623 136337471 791130973 846901834 7459388 59659928 832548812 980753741 77433850 589107675 631557672 725427178 895422031 996745506 489171795 797108460 412934665 900201649 485150372 948783469 405970823 562867565 297408619 550043315 926977301 982062165 610961834 662955631 508730489 826268651 290686882 413015150 642055342 746590207 951734517 973943661 470652556 760632855 852836348 948708878 767033343 839013866 236394703 611123521 630314971 896146003 92593169 352039078 328175620 335790693 880162983 960834943 178649848 979434453 14607310 325400224 865214566 973991292 474090024 537063134 404893703 873354796 345709802 546932767 720075865 824067414 914425632 925004537 588282737 654081834 250560711 424598097 192125591 444792955 208473766 521682304 708633344 867979207 347716138 738201271 870135341 974705823 870683277 987684167 468565897 840109091 747683363 922571426 239994639 439074737 312172926 517076388 952192183 960621230 199975824 277053689 447694330 972022529 79030051 614166872 512737331 654902288 179228686 195125579 730151974 983404944 582456098 860567626 617660151 798675237 746634367 772539127 977837126 991454424 94670291 276949226 212300994 263483308 348946491 453798460 293445021 679331176 37271952 567133303 225428453 472454344 125427315 242920203 971547988 980788050 615381332 824325616 140105501 313023337 904448718 991394353 297004194 393376545 583810267 771023513 766973340 819251616 735003526 744073406 458002460 607714841 109682137 948429858 27898112 173340812 214130034 311981325 974522001 978656188 130577285 355060719 177853562 987853545 518799945 701555803 550965318 570089157 694886293 721864103 969902617 993853462 315315623 343581527 705701596 840307755 381802141 733155691 852480649 932264839 289195245 387270823 484750381 677619440 713991977 948841230 419807699 432821970 894939885 967348038 440172357 965656021 549226941 794041186 652128344 854762110 524660151 576761457 301331813 921515234 718742967 955902451 64695344 423916235 541287128 588080927 188841373 843431987 14683383 942312168 170328947 746302304 427983528 428856698 303566080 785493397 592451047 705083526 233909637 990942972 842880738 865878633 321765310 506437421 421359781 759648404 978937133 992517881 708662061 836396738 337682939 746648448 171004458 773370071 989480682 999713223 324710090 598921205 734125371 855372131 865117433 888173349 982118680 996735891 320190943 433132256 682638968 969219575 205009459 883726717 152785562 569999987 603771646 613833711 776796981 880954241 61605613 986539795 716150349 834197086 266248260 382112261 703152491 954639998 671832903 964646578 882914422 922707502 709357184 906968372 372890840 755927045 387786387 607831396 229468744 397981016 682386684 979248430 757635413 995223278 470288978 488530818 811481720 954586794 290171747 622032017 73975507 951764208 927227521 950668009 418197173 545061993 197805101 585003264 676225817 735119991 330150941 426334899 487740835 820780926 452569396 463089901 541532805 978624314 452647306 675538706 747143824 788465034 947814911 996513288 432015250 996207508 154788915 743931136 235973060 622992887 190291024 406560244 320697210 402635703 513176684 737621463 924106666 991383993 611752467 724568041 520545605 774353726 190466186 279492105 609334611 805541826 997688458 999694373 514177994 541250388 93005733 951812278 885429359 924798747 802898937 848647156 307099680 565154426 967356756 995069671 627766717 639185967 767425062 900332516 319016492 697342546 521339239 875139851 854730288 865798676 263357814 467320049 933305765 956186735 279940709 691225022 460377737 712778105 94175136 368780733 724181487 982753510 275632503 619496974 375782625 717645917 365362745 652585083 473333511 693718927 256534422 909383243 840424776 960358812 835293422 871150608 939605292 961949200 938020762 946695629 974271435 991965022 263886048 347062019 698733080 874173134 477505432 548452921 537949071 670599310 543408489 872056199 827302616 997170785 769533969 797261167 487998001 688323844 756660127 795611358 176607024 608799233 3397724 118733096 159891089 851074519 47574379 678627519 791077090 887031596 990466185 999944152 241075069 477932388 220138861 673670574 283032996 952068416 54458486 606766399 231345621 816658676 138435235 209538107 399348743 747587536 57876446 757761532 898251083 914534334 85376785 93524857 406324353 964085405 751454401 995872792 244596919 635962749 50115775 976797670 987446131 991961673 193286673 830958588 911954188 980716298 553598099 749118834 226821614 315353792 662643196 668460126 644383573 944605309 12869377 565736729 655333788 959337010 422512075 966025683 63656979 542343897 713136805 957952127 776189739 993694806 566265817 586358595 175791380 898567276 423883616 577264643 226079360 476313550 994719415 994954496 557686132 738133159 517219998 718481421 837632042 853715268 39754979 396673254 183941370 801623163 389874425 963348946 551646450 899362002 928821978 960766500 881508929 912315662 345212560 988494907 539980885 602990735 182249200 396791934 161807405 410107790 690927191 845179529 398662034 911105572 974148954 992274295 741472468 767327284 638098813 929446573 602583006 900189856 226667799 581701737 358354557 572259513 705125977 993174242 737697400 921270929 489663456 815277248 734497318 926888900 273571618 419597715 110642137 916962409 883648815 959034360 121369234 144399649 915925092 943851773 973185309 992105974 752407882 771805987 269215854 371561005 105561588 417904365 278227763 852952981 929005340 980889817 75814612 287557640 98975975 431285824 854202681 957714256 920219233 977934484 626505119 986748880 776082727 847087513 393115465 856157510 635237869 918476868 995279376 997335417 216753452 473446665 516230534 941404493 886715574 933752639 930759600 947970691 913548175 928273276 79708784 279865618 81267726 434997383 163012013 927474095 423903480 756072360 782401904 837677052 409428983 772474430 15726242 540749291 123586399 263877260 863795218 994308773 984831579 989898064 225734391 959208001 523191430 749315944 543280965 546010055 930954211 984555899 361880387 993810710 680900680 781077103 233327053 585124989 771414681 955858324 141843641 759046764 907193186 973720209 934288219 941875071 83139921 201947102 113046595 913405274 283425275 365050293 813568410 868882226 392593480 907066787 294650907 648154769 978610716 989989369 52819782 236837257 68295837 244135418 76384238 905001682 68066567 248697199 847395968 959253045 57693341 418017993 369185466 954178027 31395881 417443484 683381808 940433518 295073280 540476245 645909758 713199883 445446683 881456788 909921655 927698846 151152564 688583672 675863386 962830643 491380814 905890397 35694340 611656939 430176577 679694625 358037671 974837331 687161768 872961179 367353183 686126068 189050577 887776040 738856571 906527529 86913249 918672082 962857166 994071219 800240408 850237938 793419254 935801407 607457625 970283374 443255995 881783697 478843542 936620562 937212505 959550011 342978130 412958334 871137326 897490442 715745974 722205183 664301903 738089237 317403534 980545113 497074873 824907093 946109196 985328114 465414358 857430310 881475712 999551774 885248146 961570323 557969664 839259635 492937603 812564103 218244170 958182547 643681760 714591786 443748587 580050335 31690788 271849903 778724457 872002601 862875842 925145785 966298128 968208888 907675210 992688153 643712505 677146780 694379907 857727654 663328403 997776232 968662438 975436858 319278 858364051 550199057 750569440 519741388 863574874 222023623 732205065 468213823 521385316 17289772 848493112 423767530 720384829 613695212 852023678 772433739 983081005 915199773 960971463 75780896 342220601 764832140 948536870 410594948 942175823 834532079 929082631 926734053 997346564 742179812 887107785 651997795 882700458 989632885 992889638 101581643 770152670 323440314 802532450 638878788 923301652 20966820 809997373 137698079 966561270 610280792 812799867 320979367 657933960 982762149 984165599 570987135 860540631 454217399 672612540 916832343 917896050 362451123 583760602 814535028 827822790 740791906 805844766 792473022 914256556 242870521 679178972 782416929 939671931 210929668 316304043 226868037 836360239 277279336 448573918 779636827 842149964 41696450 109461348 458481445 722438942 621969429 933161777 961072223 997692029 5106695 113698566 664303452 735733352 765381735 943998265 216710861 612239703 227996262 590142259 172143527 431086715 275258987 866381150 459983904 614112663 242383513 957226950 896401821 940422121 990843380 996769906 718150243 865485375 310528842 696643922 226935335 432940638 798643298 979266725 903204415 912681829 317499205 584543283 674262233 899315923 129416414 682330864 935080858 969703774 188833185 786659644 363583545 772878951 670048527 795946417 220324337 723501966 325266817 372928380 433094017 584798394 97634010 101208394 565770506 630442927 948651840 991366439 579368283 810394203 622780684 790949412 332062660 726589047 426026327 834570924 84333490 956138816 695477817 893628299 556765506 976878163 600477043 812525318 761709541 972017077 62940239 554202235 10676760 35934408 443385250 937662951 389707273 952346816 222850979 338443085 169432938 531887933 844980921 996466502 556565838 980092481 461325497 866336946 836762461 887425831 439979976 889746699 667186787 984966387 11321410 746533263 463308794 798535029 153140768 156715148 19864580 559337600 38099394 653563791 634137930 795976364 609840129 785947569 289960683 594499167 84145779 561491378 405028861 479697770 475325007 989781288 115446214 539448691 209607422 508961250 710270238 802154165 81919942 911917295 315064879 745439794 124912414 577026447 643653314 930561442 713894515 918441060 860709574 955119020 330766203 633882294 435643209 483589919 730877429 988061623 231335127 352967062 190256254 375364052 552112905 559978265 256027561 561159299 71850810 572336736 645746665 682743027 890964236 946387925 478464968 822506782 498805697 822513985 422626278 560970814 9278728 394613743 485251547 974178131 600574678 887866219 557700488 797905497 566032615 687751249 78933610 472743264 45643579 885103569 672813523 941432391 65674030 285439762 887207618 897332723 901786063 972231714 917886332 974434703 766730393 784836235 322484576 499723140 649858691 793098086 543701267 884482641 777010988 919997999 864032798 879185673 227773264 835855728 322868227 483575636 87542543 868072838 522067834 766014115 53156170 337473495 382938481 446994550 309594315 528332048 512257697 984316090 378140305 821120496 631072281 920077633 420507766 679133405 111947780 166184556 466143698 578039416 340819207 471498586 151638322 158803335 392338701 564603573 508316473 735103037 564306692 794388315 137602338 830194037 380579585 416042576 697050790 721455323 971535311 985711420 639306868 683181255 292747538 345377191 656392619 749362799 406334445 858334066 215176868 720953687 682887797 709542313 34423650 595702463 897039383 914360449 798294756 844903289 246677628 694562495 918151413 918702391 725164166 916044981 353507155 609453401 805250978 963159691 351741399 653442784 239070907 903294875 92128062 974407593 195020330 706818880 165953360 683280452 974774267 991389040 841053471 872423657 964892874 994597113 764830405 830662832 500942843 606512892 273310248 997115089 422032653 774327738 151991239 812321663 591429445 750591437 419325250 632797988 332020821 864038584 322892674 908094011 460253346 580267914 925303395 954178603 212051352 686610911 815486676 905534748 709893742 751205572 731162468 969572194 58224388 722210740 689574732 726634629 498491037 564350517 322680708 999624284 339501386 585066693 374286817 482138954 204068071 726423041 887989066 971156667 342038043 804340245 386763891 646334152 203757720 403486601 573933790 621184548 721607695 762054227 815147750 825816205 668219402 903867655 314946809 696863305 331235236 606978812 875085498 920976250 508621270 839105284 965218916 969051395 600295408 933255872 939171179 942246047 360494320 388972198 188419666 548632928 998734807 998776909 704365656 759752448 59057316 481125109 535928873 620451035 885207101 970557271 516180939 828894610 576691807 734671699 864537596 883071066 644190148 737837810 531346377 899877051 984861597 995706251 903418 418714374 63388180 198075123 465920255 572029115 601819148 878787442 218227482 660864123 563960063 934888739 527019021 605095298 328068888 655502229 966990177 995759103 18425974 787342085 805693032 950298429 224543131 650092742 169309998 267557215 936515725 942500253 393686529 466345738 822472202 897714190 754913198 951579059 215565231 645383374 302772264 522832469 858078677 922593530 214563366 222678213 67172383 940903541 65057366 281864259 308516994 794716643 873885650 921163337 190536333 377316890 875983365 953148803 963661140 969950817 682645647 787574178 255288332 472364423 995621728 997628273 413757680 587218227 564222306 861898032 199039009 344045452 400324853 996700011 617663672 957208110 795135506 828646930 978376514 988537008 189916709 764019926 894342748 990077737 267188344 875663876 373575567 477695965 704433738 708588428 978847613 997485441 907729306 957226682 156679912 178827524 76548841 244079483 244495091 951164672 652926816 754128373 927532662 974998213 99295345 871614026 661908147 841228529 579111331 844960392 21724070 907942463 242294219 256035388 344306007 367351249 945624543 973777414 44647887 513636768 141385035 168598630 666216504 743949904 70828072 693613773 149913044 162034818 992028041 994160792 931013597 948889033 940983877 988819975 945516387 974545695 33228711 615111069 822217218 882797955 165478739 762456526 136726967 687961645 834541481 965664151 278646907 644846545 79558032 910021549 419847866 799775404 724627003 989177657 289963369 760331085 347898699 417049032 137687519 164656779 119573762 523931245 611059181 832341986 86733708 159732300 732802554 989776829 426531459 611241888 672438165 803119240 197027218 244706915 884466359 913498785 687261706 919637325 221899456 836139849 926585338 936435034 781431985 901926085 889987363 985288866 167168583 739656715 739676822 793732191 878717047 948156543 723940555 782022997 643193077 793658414 170686075 521873075 728975081 841742980 545051508 901244156 879372126 883087238 117515107 597827533 838615886 900582401 791592029 967755304 14717972 379469277 197030309 505991473 919132934 992023952 765144627 855301569 264663338 818899857 451987786 846126124 174743865 201418729 762400635 818331642 215559151 711219763 378452516 675138824 987635417 990512030 292138392 687531633 321392983 739780036 470371324 839916592 399902037 582885458 260505326 614196987 78820107 866349298 60838306 268256362 615878033 798193535 931110452 946056677 247063470 500071043 685098602 747860454 826660918 848066822 555147 243868385 857605725 932719259 687187051 954285360 175977406 725228539 33733557 283737331 856917188 898795979 574597230 844972154 575992013 646440173 474660897 786805555 486023511 863970256 831902871 973539673 95033166 618409141 423668083 537855378 234081268 531179165 444813220 856680252 218328748 509135150 415049490 579686994 88103766 98231741 445437391 920156720 447443472 646587497 996298796 999657645 376170605 642955680 300267934 605078300 261150793 803962854 99617959 236397001 848093243 876407532 785127219 929322010 858967813 895975866 624424570 806785647 450555048 783863786 190399084 374655701 377673819 800383404 128982655 634453936 517345316 712481319 772812420 789415569 337636059 910729232 96648795 924209190 983405769 984328347 685540073 856202928 20111365 318585163 68867842 445679180 650186096 779457083 543399758 564947835 939543574 999104959 742503226 795569726 372575264 590701469 118745517 271664853 487701935 589757780 129366460 526453876 592189678 741123219 690641407 919938257 420612051 634371175 159281043 292568756 612335760 978600194 176668782 388370555 484220064 674583450 970510390 991026282 878737448 969711084 810999708 899404197 973454832 975973662 697113617 911214465 610472997 952870942 745903169 803608127 349400926 989956844 556954458 806758518 567145008 806998318 204243919 509728431 911065439 971830109 702046182 944283399 813322395 887571933 307850654 732134193 399162212 635642028 415947329 984508157 261088957 456608208 40509244 788952248 242122929 917022730 869365384 874022375 390505523 988007185 119290964 829957872 400584573 689598336 381234101 898126903 411223946 504429440 110329585 397309179 983195143 999141143 353620880 917490422 482500186 755225558 576765107 849736526 241065816 871346668 948325657 985361451 891937786 923755759 108254511 472303082 814402111 956652841 255550157 334637657 487026937 855228278 630373554 895527140 226707935 575572868 965381366 982128181 106739136 369179921 519831550 850060095 886265420 977866057 586804617 784104753 800489459 931606992 811366797 918806045 676711101 696456821 146757088 323957801 685709361 910748462 642640748 974372270 497905887 864561098 340047303 839016257 140981003 922778485 136340479 308255524 432635471 819023331 912253644 928601346 297386686 668925748 147459804 990884032 476855482 712346093 356641264 571219406 371609274 965144374 19167364 752011869 748444901 754397265 235053639 242196817 98057884 498915503 177621628 945371229 837758654 851811785 215578391 599947571 406248495 528442743 66918444 232814764 59374425 205131366 369338624 493974778 374191847 810287272 590549714 845228759 182900609 778791388 333495538 417846361 315006389 323335781 646605824 786757464 380635580 718800155 966334348 969181804 183488156 541845301 31093756 714204289 869918148 946818358 404387687 514751259 218178336 417514388 714531177 945810476 102927798 224192574 441106177 929589659 512314455 615625080 546842343 893769801 222563797 676117909 413742421 414481423 109884252 977212015 758743736 962949550 559283104 895271176 504566090 752113378 925415729 926663627 904023500 950356306 64531967 179934378 333080260 992242815 714325416 751352923 167527347 746888252 823004500 992420018 314379737 394264759 304763859 899567976 52731336 489782219 797711720 961412464 272591295 492639968 129776782 717815014 885545477 986483164 275233410 760732089 487779726 857308705 343955664 547535189 995293358 999729002 64348781 322463818 908434359 956279732 561495292 679082322 699214970 891691597 664877023 836543420 892738389 924335248 711340640 803277388 982376070 993027266 926347759 933474637 851728206 908934382 412901765 812021340 157634050 816737477 116679198 374976069 497144978 685096145 965449850 966266414 95438734 849955271 707135797 942821452 684783950 690172363 654655190 988459880 964343183 965303577 966534913 975912295 789989243 909508426 186314489 587539908 135388760 438924782 922004534 967036886 898222103 960129612 180160414 999892271 501014202 734004444 846880629 855961083 138499799 409048107 800521924 832745372 81191159 972081367 765222180 898749467 483774093 984332860 717118468 879230321 947695100 984898269 612654836 651833096 203767095 353548021 472329982 872457418 480745691 899585512 535095182 658598956 72524923 310050893 68369962 730807037 931311140 998307618 652486373 899931153 249553095 461880523 661495201 788631683 808945560 981360220 533567150 760312121 191434383 524964516 234574278 783763455 505274709 770737454 932727089 989198913 332061499 800082349 829300943 984571390 703016215 926565098 889827350 962777209 248319227 425076107 466575756 648973714 458827603 775700133 966796192 981910216 760149347 975934658 400511583 731852150 54466301 381410935 61534332 646217569 164646017 853379612 248805511 472321589 141410654 741557313 405391789 888399890 914523192 932838581 401936895 865105320 470912662 483479668 898079310 968406701 577616133 593000243 813613751 840221918 619367264 971514189 395080135 413334709 499118063 950029704 416678525 600800358 634102732 688903954 793566313 865335861 128957668 392715867 136133523 138463797 528519619 624891570 352202873 525429478 948867832 999013001 300735825 462140038 282851990 308950275 766740045 989630455 315186523 881940857 719813527 735110201 849224281 893326571 553758679 904639256 612528986 772772510 382616959 687230122 176675046 561161224 180035022 635625232 437606944 765527224 140219394 307830583 128640303 991340998 929722141 990190183 141490726 596354301 29984432 319625228 180868272 746230988 549122026 879818436 328137673 566555876 887815619 985666139 182221666 642863049 185962883 293713435 568150921 952103053 912789343 939980457 391350646 978333264 753589708 866723102 784022747 820042610 693021936 943377851 725283573 992734420 107693219 248905924 546949222 565523872 46701800 179259801 709882362 860690636 607768396 927221409 951695998 963172879 985160189 998662084 354613289 789427192 143108305 533920077 213178900 576766981 275377059 396821079 516668112 919765117 199647406 214799253 139460713 492511878 119239254 967926288 380037298 472638275 240585046 813606143 359473219 405168336 758021175 884826098 180818221 437384092 544732516 981528491 113887127 517472846 922879001 951019641 766476169 863312306 298302629 552315287 879515165 986282446 382735804 448583650 394742541 596818108 54223226 931392177 389577083 505847167 711374343 801350538 405746143 778106791 166059767 855339337 450353198 588822042 893020320 950151836 993997374 994473403 534059252 962023472 387493647 888635868 730307286 935729155 439678857 813428672 551594791 674479755 330448026 635821803 328683541 835766780 117426194 562991276 81856820 645293668 927826631 981086168 123815920 201585629 737955134 940371871 240686426 954003367 433001336 961893837 234858880 553833865 397224766 642654850 329850053 485283304 368337733 714171083 566820051 602350635 521254847 940724688 443884681 916185242 614651146 747366443 371804657 630963969 496430258 972615093 611034628 650208571 706484203 914154750 479886458 757169679 13867273 468594942 531576586 684021602 378406654 675077943 602091633 692913739 511574295 666608246 599149803 631170475 88313443 325016150 304879745 343271198 469139464 838954008 225809041 590620526 766621933 769112308 606475744 912667891 501466428 594416709 158660641 757974780 680812685 829671247 226486872 952014243 825341722 925650522 335676994 347125285 351315659 676023933 973801636 976528467 551458900 938835387 479374408 961645921 882919997 927017929 483897936 697416788 777761349 864482691 524612450 863826256 344693036 487310674 399783555 865661950 347359132 380554092 510745526 666649283 41925005 45829191 476793884 540861615 356481111 745198987 761639991 803946728 621513738 853326606 879172263 957865783 154312636 996698968 682187518 906684099 686713733 970121517 476556710 822393519 616571709 705783980 858813635 950699378 663982679 845366444 492385122 973144777 486282010 531256110 49364235 220018206 159138538 693520355 408869477 664518346 560158793 941902681 429569448 956282259 642658074 768540885 653278631 794789992 665483503 880346494 42178278 399061100 560583044 704667221 529026995 889947593 771410518 964147924 650774998 933484613 196696826 848734558 404306272 630459709 187312335 521554248 897590033 912398153 368677262 539862449 333246990 598760248 296846281 713159446 55510774 496853472 306643412 346465445 469497497 867409006 524346905 837905653 336499327 931721073 417728486 555316671 136973899 762237914 848901755 849355439 501996603 661791625 931205292 980133114 98722924 497172780 170051070 922195086 725057178 810564481 403492453 608715700 931699744 933592870 448529430 977599948 372426553 480782881 4091489 918226440 93179622 345702390 512187375 800526004 535873588 965773777 793746157 949870286 478991584 496921455 642614994 657191588 64736226 173632669 158798901 720199282 94305064 968137330 960814205 997421544 150498106 920880811 325441167 496674430 647144345 649478380 918991448 979501598 735340857 913895881 79917241 455599579 179804532 424284505 781646045 934778266 53295775 917711990 287465561 906500218 866528320 967192264 278492591 304613984 100422238 938757671 487133529 578810290 232246841 586823064 938494843 996940349 668477108 960223720 90157146 423835724 552408125 707692989 965682083 980744974 569338402 832675247 321050756 729466876 999137712 999943674 963441541 998921634 107194703 641895691 245315431 258124165 495542595 951269534 848616493 877419325 626213518 790591600 533302697 942833673 246607414 577820207 927959237 952889402 519884514 926264635 717839453 929390660 876449843 956438086 899246899 910501850 205340343 894494813 644341199 870843949 333447762 515553756 849798795 871413685 349297717 742986407 760901126 819113607 613660101 726341795 568647190 704068704 273025822 519876890 96805992 495444085 377834852 813916787 629014300 996495146 384552905 489557349 211424234 728968011 830263494 941284180 401797529 649408237 990630058 995181310 241356582 269930722 189954125 673833527 761219037 777113697 169194146 830043380 395555810 895199730 569022936 999862382 821406063 854667925 23185640 297238662 617068291 710538590 610188035 748599228 313194112 815805596 464829239 516202081 662844169 799963310 924428168 981482788 247303042 455038121 361860897 726143069 526058639 656760868 195695019 206441904 253800943 518694208 339308732 571525327 287070732 413062672 394090280 678479591 357765696 642520371 541296245 800556048 964539216 992651793 164575310 469581735 139916246 168617743 641296709 907334194 174113469 649279103 625800111 662881781 974815796 979757962 421690205 461304776 622892150 835269446 111713489 636591062 172446850 331143573 154373453 235758531 562384987 836642564 692354652 903004375 382768111 687643198 110246698 429486966 29938720 388753479 331377704 738506376 466913823 597481757 997208621 999532044 537494487 571659431 238032379 502570504 935385426 993876492 607910668 645467609 918254198 950309600 891285491 905840499 79698075 620395624 980952494 999566812 116664622 332628989 214110401 670986724 23118239 831858206 789921172 861403155 291843683 399663668 959734788 972051810 731269909 897033865 473926991 960438877 670104445 766203437 222855632 757001655 763681127 898460426 233774051 613634443 746145146 981657093 303041289 347156257 660301697 994074233 636802088 681890156 439972332 758296526 717923018 838999019 244085351 545380686 970221346 978315830 554259547 705932056 865410857 874741951 942222466 989285229 945081478 968355191 576567811 835021563 831578712 860142610 777566194 962712599 413574572 552213797 392113444 503305706 404896340 654387714 790611300 913098977 54531856 719688950 742005104 890201699 632061059 966165254 798202092 947431089 461032758 736928786 4463720 312361631 225134617 415803630 748596909 968680130 965687447 980976271 669414313 697877882 345903646 540179009 56663820 895773750 88977207 965278124 50369313 802858097 642888381 655669127 193202673 830339348 635022542 824831113 430118874 493352634 26191847 837491013 473616658 858515637 504458060 986854085 966741776 968726735 295390077 733058487 699548367 941493824 542253018 887187558 849666144 993678720 21977482 381925078 808138730 881288783 553006005 898022776 706568333 757586934 834109809 873218108 440072519 851371152 553706332 844604698 218726786 346611721 753854909 898691476 206680662 818177710 57133148 682630797 651117281 894125964 198362250 644257465 284660372 650016953 531769675 799426039 378621791 418963847 668192927 865207874 646474332 866214325 40879368 284157629 101763113 808299459 210038443 605373246 855096425 914103469 840950797 849186415 153192004 387641942 955647273 989798388 248198405 535675993 771540263 846002873 692642126 993001039 732133543 740209275 294568316 692146052 809945956 830596640 376906263 493279964 779545565 810339179 486345055 633734471 759509582 904765273 951319908 958712091 311043543 965527679 113927067 668397047 442385268 683419085 190319366 728932258 667087451 689550828 4039041 426261042 788949077 878649155 685148549 931783878 55504514 585033948 250091472 685128905 64801264 313430112 638343432 848322058 334645872 516592524 655225168 841830656 682783186 868867592 730008476 939522872 917063151 950293541 232800488 270220040 376045537 460061074 69054569 507489852 971986325 976321978 444120342 689571755 787592493 789446322 255276707 355984711 778406120 931430685 991460453 999672179 312704893 791133935 189872647 990991861 272378105 578815806 648271641 817254541 122944867 494151881 381971146 497065455 224388249 776136509 301787550 796470645 348068289 663190583 843940622 866736296 381322110 895281900 737126448 836349046 275737919 742253544 515955075 961711427 955120508 985266279 725710946 830997668 662265243 827446878 576733977 813695020 434283604 568819156 593247697 680564743 380355107 613586219 884051274 955780777 676046355 686292637 410722977 645299764 545201879 776408975 563418186 819588379 396994847 975017413 831443895 900117116 557875785 846942146 893068946 900503769 977326800 989508882 343742893 526109753 343811471 687104382 270612769 860508050 999579244 999790780 206267715 718000896 538297659 793083331 290810843 867132115 980608852 992724102 561484424 947984877 541675012 759158769 435955807 989855416 644828867 955543182 186355678 814323167 209782491 757112417 257640508 371724064 228649481 791334895 251540035 446804064 22265469 993028273 419425737 707014394 634635855 726505939 140238660 602428223 366503694 744468624 963033755 967851190 897344902 919438690 283795807 930497322 179384427 188756605 777356855 925374699 981070750 989842676 555767497 619886361 388119656 494349682 180293151 563432731 458898358 700695491 583922706 744873957 183583726 773491936 211687794 655521102 591282606 600400973 299645464 381521365 383172113 608609285 259088017 272552731 136881427 741915496 862159539 889064755 341481653 410952841 483469079 506015173 234967540 682222274 504551091 564927665 604031048 706767128 324898937 851342747 43661261 675000924 236123242 352460667 624726311 666166376 3958435 37720121 899812164 965133672 105376067 806219516 86494687 167124554 359025062 540015578 120719800 352806193 294537517 414862983 899637740 974867017 677215142 775814580 164372951 969807621 849138560 864182373 670502077 754436191 76901606 173327334 997204401 998132359 704803057 946011996 552902527 938263814 839487726 861176022 599814523 871346340 623726907 624527105 346420351 582219394 539203713 984535283 65450679 176941669 898439752 906848752 820200758 820379014 195514346 233625750 722013894 980841360 761431440 792943400 115209858 729883886 414285910 981118821 14066031 913365346 331198625 586237605 978997883 989343888 413411157 741616127 41129606 790532664 975500959 976819371 678881564 924599164 658273873 857179787 647651264 778997965 600381383 820900215 463160706 775873914 105011982 606967567 744930384 757242675 626519165 658305860 774709796 791818153 890336048 912541444 840106491 980225473 704584266 824785723 717788324 721911719 707784000 823918515 544374682 625169659 181525426 197664210 744606842 859328213 844918969 953197726 789752881 934099391 741132750 819656030 358373749 509521315 137649401 865436032 309883947 463764964 514687241 713763355 308190544 329249016 292984883 836738530 608669163 694551922 327034626 565590269 825621711 989408558 395629332 891915067 651386476 803453530 139740014 609899783 553504913 760854195 570450275 723560382 501171311 713609062 117787194 709000464 925542155 954884762 576796523 858786114 285220316 484643427 642862132 713024652 37199525 433608721 761591794 888279451 26082780 740457702 596504354 774809524 559979777 900600104 297401317 873325990 632476956 687655200 392730802 628820094 334180572 422018920 955482417 973228651 731325208 902998790 299113558 407562541 590863569 772596886 287398387 530949724 280721143 734606596 412750840 968509721 364620949 586218660 415429998 478586860 266144305 882563148 880848556 946018832 798066617 897128111 591188577 873702762 107394338 313840203 459024389 550948033 905976262 930678904 348660448 745098773 159066901 819209775 861870290 970329199 694082920 704402439 168642901 606542869 834998338 865182954 322652036 662392973 107052513 774243906 760676124 876423041 589686976 972104239 402975658 931448781 787046181 953374502 610628713 642758367 586103986 789497133 338301672 715511179 12235844 701758656 594156084 678990991 701329853 875371299 265574800 986389244 401888178 930732330 645994939 661154530 580850207 949687865 656802841 973921072 468315392 571190432 362283981 473003270 803752384 977495491 105308365 967938200 174195981 488197476 978264142 996156274 176073989 768452648 441264913 876247674 792979109 794782082 153523198 466142033 409684230 997820160 361043397 571221825 148345686 776193947 729740730 986247575 595039659 802675214 252156787 326801896 842900588 985820283 782410391 862497716 136806737 823172723 348321877 471073230 244455172 511713366 383266940 518858776 789693775 927916508 229086508 662062137 67448545 609212035 474777410 617116968 702644136 896427255 696982832 753237761 287849130 360953550 322215587 420170765 473066797 878429291 887968919 928853961 103579482 151766512 149016687 517864406 736498844 833573225 682140027 894046726 444162639 720103065 917559564 962920651 13364592 240509696 554326632 565204424 733713123 998401227 942839192 985115862 497926590 771879773 212212140 386621102 575819624 728508555 45022284 69185997 293472942 485949904 707335751 873934821 32089015 401894177 593426600 700729749 996285961 996818583 676898519 947309810 298988251 595202770 602970578 669581009 696981744 950378421 880420712 978716563 86046955 525841176 420164661 634406679 271831206 392590720 837842063 987633397 403532348 516812320 558384247 590812159 462919550 938323850 601795462 684318145 429431317 880724285 146680305 312296612 822159369 907202720 241739635 430837368 471041125 629313240 21723492 33399804 939280074 990262844 340000438 513927680 770336656 822296815 212945598 304575535 463760539 671949759 208090129 485728493 80393296 649766837 744886254 868371189 779952878 961486587 589616437 975223217 770043597 799201134 691887760 915395922 832339037 866437509 626413013 925898687 516270375 722074700 935709727 974811117 266669488 948036572 346370195 727286853 634815479 854148508 334522616 353817463 298362232 713005535 253194734 498281504 206964095 536834143 963009802 988940547 779051741 880065207 716090766 794104236 991240663 993398278 276686203 515770104 471700987 719068903 583300645 627447506 972236310 990502725 632037256 759277585 418754206 799078461 938897220 951601584 625972798 971610084 382680507 460906725 974603709 975095053 663506841 952222403 893413913 985400825 288273270 488081794 354468366 638881551 740791411 941423487 445905307 773307329 129902890 727189524 760668987 909542555 613658074 931038060 648746877 847502340 806125658 924067156 661396690 762038027 800825566 825468015 163383119 219584546 40454885 932874847 110381665 905825235 743577993 870081908 300086123 437769264 704978133 833994896 400143172 969098924 767543488 996180884 392292692 773703712 380178028 656908679 58996961 572258037 695466787 730311357 538294920 673613326 946364390 985730623 235331752 929979864 43213754 215608063 283465516 403735127 565983418 631867009 822126956 953421713 141132036 531441594 588075792 705626982 903794185 920639233 558001560 787308771 636968016 654089341 814694530 986206448 29725818 709101935 941867458 942354163 282365055 601999224 272254845 988545798 638295967 801720051 723377467 991955546 787280559 893881730 622017626 647402964 303780724 856424339 37329676 583951830 550633389 794638422 224146001 292947801 770897427 914636553 305419943 466284110 406942833 970042272 371963456 815300503 882641784 898852256 768871101 954844980 41467162 189742313 879765036 964736471 485139481 898675330 241806346 489200765 254272104 810523498 649560740 753605104 259098356 867211042 849385237 921013612 728796871 946644201 535885578 930909386 635993359 699748131 970830564 987168109 400959898 731458889 2315992 931807523 340741074 611832444 923100999 933980363 324461852 595231764 92419165 882195783 111499219 267420018 918150226 957596770 319835385 470758995 317675685 999209966 778563901 985705786 19537630 931807306 525100293 976526756 233937682 298083936 796065414 871065216 664566487 834695348 159985464 747236903 343523789 495948530 157456908 871677264 643239354 947461337 16433941 776830955 636856405 800826298 16895376 550088085 225584179 948571748 752175798 787576273 241734523 788730446 599668414 851127732 803537639 884208993 737589639 932231713 810179261 992125953 381003177 613553929 408865485 488211865 974597226 983750967 469108655 768612450 552764766 795917477 472568903 769652682 672755749 844073652 661252329 817997705 709466067 819889053 239934213 366005906 195437167 879181347 195855773 475867793 51996411 483558344 170791514 904847262 52508548 546848275 811156029 827040847 445069937 664704665 494656661 578731111 682790949 797508771 454520970 932241791 506007741 748486816 848916009 958104693 591532293 955128958 667164400 896724432 151562511 409850204 188273918 795889614 400367799 602852034 571367907 914158071 967974233 981850156 99677853 576471908 320720217 956983382 772040068 848962762 927468531 943379045 50311937 910936548 97357688 435351023 45263688 624982675 350125072 877250646 611964609 759585940 729535320 863442439 8542868 936164602 399433701 785142033 520607582 676765695 86824662 709187789 312583753 344291297 484816275 818331608 546876538 931014159 407798862 868354800 46765903 291318326 956621788 999255001 162493458 244202893 445514118 784499162 880231526 882591838 242983672 776886962 646441232 956551403 234320953 694604724 231009026 849152259 415352188 798063080 161904708 411709603 289742363 476673512 236864659 590616987 272435329 756741163 861958978 916058618 702363313 784648438 382236993 689651815 250306846 521836600 421881430 678323654 316522086 660192393 381909636 578577619 735142454 975146373 262923377 323933918 952107947 964019275 462659609 585051387 459589873 757594451 1105032 295834010 519259537 520432462 299660469 688044161 453201691 814551578 53332544 331825878 508679291 696465985 149851719 999765531 794381485 856543832 861584395 945751938 776407051 987734647 780449305 921453819 618543355 948846727 649043803 650927483 638722522 976980328 981844431 992003184 742103040 998139768 750512217 866448980 541481364 981233039 336296593 861959576 46280102 291873988 82069833 118509224 155370449 791012130 955712287 989798514 751632540 939752726 752536884 883942660 969899195 976503629 46207544 47297742 371604036 792632542 239098175 481355565 620214039 924292622 937315869 975567415 237606337 960661226 525748334 714969306 874185900 891149688 836177604 836321914 930153337 997481862 207527410 809390477 557309554 863293192 684275505 952287771 455632250 732034645 984171069 996555147 203178659 955717749 34446827 397445337 265803897 699225050 370951079 566672696 797154555 836677260 497139181 889249124 301298629 560889579 26644346 755639985 846007905 855070290 18519899 105314836 802918263 900326256 167703001 549186871 558623126 679257562 912508438 976601448 825620042 969359690 937490969 940711268 779514454 862920897 59142523 538234226 198184843 524079187 922177446 961956817 241814813 753459337 825580652 964035255 109390979 820351990 538551599 866769446 237059837 337330141 584484792 827174552 880150563 944563909 600952433 711739281 363480849 473232414 526179594 733788515 224769812 576486535 852250405 954929862 180990425 239545315 832103025 938625593 396174146 756322762 352893236 882301168 313710559 831262852 828565156 870695817 521157011 999593111 708677082 951814884 175993244 458277222 883610869 885828752 944036061 954779121 779213076 893432041 432068753 776782374 809160034 996174116 210306772 391790125 172866421 995605893 822351888 945013468 58911004 419001955 200656049 702688959 263025061 467170969 996925655 999257481 298218750 427451895 757362395 868145553 492466320 592641054 622634771 670806651 88416390 400518852 675176311 736508292 671960592 691982676 560546341 993202062 827744716 857266370 334659397 518783667 938245560 954024679 545580232 575230528 677590654 881972368 60597556 990970501 769777387 880967429 398067196 781833739 696391496 852547234 70262903 994213441 703063143 706073720 623117036 664074032 400713577 403276769 40110342 678994995 615242718 671594711 143409635 560239083 290027310 320092500 937749014 952608763 548763465 904965463 945203648 992369550 796163235 877115053 254246204 371619683 479361216 977230037 799935511 809237909 857789807 987503832 533165634 967927987 213753139 387280272 709420106 788423378 123814629 995453886 44246245 527435194 890482409 928945572 740161221 840854040 272502303 756748677 227651780 948056118 189444120 416333466 565426502 940295026 808330953 880002994 285329431 789725581 888579191 982781980 192672473 204448920 740633677 880134008 450382865 998335075 995101517 999711879 347533680 469418936 73825413 855153615 888018998 888929604 131962696 998204957 326156745 777194077 834812581 872494783 434690206 554234171 724642594 936713418 527799152 887892819 746385633 820829523 800138595 802317260 206410674 648639483 255844418 955638825 823663906 972062386 486962011 740905621 233185859 712737441 606830081 981655354 612141210 971210371 267270575 800587673 68785192 387562881 201782622 220436750 137968629 496823863 81438504 365338710 35447217 887188854 214605616 479797156 663004595 761586114 487126196 693247115 411650791 460329782 85856359 266454284 367491021 953150082 539635370 845631686 936203824 985792336 998666603 999249534 946942661 991345877 11935475 551959423 821721913 823814089 393651278 753725198 802802854 972233182 444882984 817969373 535545322 750653372 273750654 478893910 138459099 305182308 29931315 988045543 955824380 983109391 868030981 940672241 399628832 978130258 325735222 455502730 519615012 891430034 960670044 998114838 723287798 731948324 178241396 400837093 590800689 765485790 793572399 988269907 552530872 985380145 639831422 953391277 657720352 870610575 712822462 934935369 83892162 423972314 639585111 819447540 392109508 989199837 876110917 991734088 229647134 261905998 700937774 727133073 8819584 401149739 830279298 899432887 496867488 943697963 628879818 911263298 669484625 757590609 58814532 870224628 57036633 958031190 590551661 959533235 872830021 901685403 842266164 910443076 227706310 751714830 804786843 956696637 195712232 504791751 435409499 578728994 603420696 626512350 483045689 736427961 905755942 923403408 771877521 822159101 836534045 881056448 441606762 692065526 42860097 198792118 957363298 995062129 119803504 624600795 900055818 984196708 137568446 562940370 30393600 106584312 93339548 294054320 647397884 835819979 629256999 857571839 84563223 687069615 501650822 706174246 691035034 934612600 676585550 778128548 400139127 748132054 741137625 852727302 100927391 919367030 268451567 364555751 324012485 978895792 254150824 254909809 427962246 611529587 166774839 823855950 615478852 685141781 742899292 803561212 985109733 996350584 144382044 851828154 949547787 989638667 973495520 975664347 401088680 444714848 718349298 974660199 488823973 797520242 957898563 965834535 21206995 979424718 537613262 690509572 145952693 505151058 320456710 490255898 281324423 912072990 989032339 998203945 766985227 843239718 607535467 907885573 604250829 622525906 886479274 918931697 264014294 940425668 387149054 407503559 11901095 146650901 683786160 704543381 360801081 607720358 300919897 459650744 630817561 931409700 82908489 929184102 151784931 886267413 145622442 504021481 164683485 299964672 617389718 932228491 601440289 786875489 914081807 990279719 708084816 772536567 752961956 808618039 846239878 952778196 883825582 900330470 119722632 990834890 586600356 936629347 627725755 761942529 428750510 885533624 729395068 985613332 369795112 873356718 265929738 328916357 409745746 436015193 161505646 493803411 49234577 837228828 910217869 937939772 896760698 952654647 123222231 216250681 735635921 826826236 215868274 656426508 946820170 954429926 389952139 759820162 278293556 913967768 635129980 725253501 904725836 906591315 284212124 714197423 170411675 693782337 986438242 987870757 780317380 865064784 419612004 662815556 904265678 931164531 792028789 927023932 487713514 795781266 415758147 875177485 387139005 450480706 686794095 697603373 73707035 185150656 594786620 911779106 883195704 945238788 991439061 991890922 604440926 944122714 297378147 976112279 76587837 592712793 466616030 522487820 249159406 455560255 235034030 580261007 483268641 761870985 219013478 797902598 149534120 309023855 527252084 723480532 355412847 441788155 336625806 491448324 965319687 987138878 595284838 689520881 966395781 981598297 875657447 908624059 692756935 953611291 535971657 745708014 773267907 791050299 641244453 750308182 399002989 718702843 574026100 649932499 75209945 991909996 849615710 931571290 434708179 530252212 931617371 999875214 133735909 940869204 398909600 933055728 883454004 892873449 985558118 985646410 750589866 832985134 259382740 425386921 940831537 993488568 194992417 587958854 994271061 996755636 215750202 991160188 17939332 682760289 834283309 971579212 124368163 560510749 362105454 383493848 568830148 606511744 467008312 685356551 123279578 752498220 627515808 924152073 321005924 436112464 633712283 741973296 44844809 713934714 229840380 773252896 656271277 713296785 465302455 727403264 460416984 780716167 464107140 489025477 110842536 461333015 442870875 958597372 22009160 319754970 548036076 660436289 695526767 904119791 98877435 880236385 7065151 616966446 523410852 863211223 812953065 816275521 343096898 416193617 697649189 721057970 608224019 903076769 602035398 809506839 417104551 428194922 297590919 525499588 945899166 999036415 885773756 981900928 416552577 586573532 297499998 909600302 409302621 784436806 823103107 884315980 550828244 789733135 542789395 839878461 403966793 754373076 359151031 729865578 741105157 904345228 860301813 941331213 168833353 907599325 934049777 971746784 185219091 853317292 353057637 892057898 95830163 299616674 711505808 966033906 139312374 825792287 975349084 988620694 10408462 316629099 311579981 660915105 788552226 850140480 228441521 430168065 263776387 476170066 816907454 989669561 47792695 397732029 967003842 976642032 375006227 715293999 177876834 906981115 869723107 872765959 235593143 564555501 690255612 811933594 279991391 621244973 903711720 985902505 5297507 374746733 181529881 234273666 37786255 497895783 368666073 446126949 92492630 197959380 23756450 874598997 735124842 968522738 228932500 363028151 608218886 996999972 847055120 908542206 392438685 820261058 397134446 709696894 655496844 854086219 824557095 931265464 171166551 421801450 122646550 360104024 501608202 798208914 147251852 411567232 255030546 537514606 951439458 974419163 96350818 711023894 351455430 622340544 374326957 575530444 533478704 610495389 526352259 604924076 919053848 925470765 535981492 668842156 540773045 637785760 390659314 933239736 351632208 640255299 122363123 372340704 373015312 750816450 61493387 137067080 185529178 343320882 802745650 882178736 352609631 788598260 594210461 951162200 667723986 682869362 932364908 946287748 886252709 994767161 309434212 880087439 236531793 705359038 23980978 858680711 698429061 811118715 10228995 542894900 323258967 578882396 646313479 715953943 259343914 963002108 292096062 902392232 407181569 469443409 730325037 804010423 509970148 880730668 285314977 367438276 539303528 707415064 532743134 942849405 5964213 124566607 548446907 572879961 714478404 736649737 856875613 910735025 655008607 691963134 416749300 521590476 816780452 867718458 838679436 916823685 749089622 865982162 486724041 530063090 304092668 977803137 955426927 960851081 407418057 765725632 576037373 599024756 988432468 999713622 431866135 709865669 979259263 981372992 81991431 663604047 348810039 798937530 217003345 858241050 278796475 412122156 992462685 996153889 964466924 990011288 864355074 913469723 18420994 305157913 425177442 517216742 894572373 970447590 952261774 976663507 908755936 930666534 912977099 971170375 502965439 648211151 733959181 926923385 138919979 246137871 318651585 877102250 646943533 682656279 36314922 986787493 11959867 569381791 372463291 458495930 623089165 808893945 506788451 957925502 461538345 980974533 330229928 394010343 160846035 525425243 167413287 192690790 700057823 801653383 351135546 582262781 182842904 455555055 916711305 958565065 870636352 881258034 475582573 569349184 621918491 842827896 437226834 704125197 759267755 829321682 673520521 720807340 250995824 741875067 787779140 848934016 281589964 596978360 48247750 606887509 193890766 502030938 223029760 934905864 939169434 969307350 145783068 579321853 121323182 769644438 102132920 246826809 352903451 522132539 174102411 743456996 745111171 816701959 951638571 957972404 994347846 995579288 164912644 881719696 833692026 839141293 622894474 700155787 260311378 617982075 872875936 975101934 226322196 549868645 476801942 496960198 625464551 878097011 892887661 902712870 328105040 679057157 95059072 376761776 988848091 992311233 533350760 708801748 947830686 949619192 222180683 721117143 482660462 773318199 285640647 531705399 43084960 582456162 295963445 950355710 770194882 839713706 72084779 169284284 771823240 797891501 8108246 553053506 928031109 984524446 678371857 692450556 299186752 708551100 306339098 753359510 557915463 821212263 687709385 910005364 574727109 596405646 163974507 788477939 8331615 869290445 332187871 453714751 857556201 926166390 870205658 902817235 82929860 637667201 155161085 271631095 835872601 907045303 662185449 711961905 851909559 853509098 994735283 997116981 562036440 590068311 940866539 962246743 192698845 762174731 496898820 681998960 970956077 981280617 704281454 792360549 895156924 985824080 964238157 985623932 693318078 703187524 529425715 646630840 788079695 979168379 776817519 839963140 901095330 975999013 463453416 772313602 629364037 707524948 793727766 997599924 119662432 795757845 374095060 636385756 225131297 287564750 998594282 999103158 623488648 650321311 180747373 361263542 579524169 925908696 879345318 946951146 275390065 891649758 51942723 336806374 858300317 906119134 393732313 830037846 684286905 863950576 604943398 979497245 280265947 659027900 82639253 217527774 335973801 686974982 358864152 572037189 33465321 238737209 246854178 959709935 898937241 956256858 79374523 865778183 135287260 891237419 295196702 973339148 291506449 407251846 637600629 935775424 574468972 662426854 748603922 942545155 916273118 936341501 255470824 922044307 565896455 875855451 49845754 225299941 42335214 708287799 818317375 942637180 962932279 999476893 195983157 393477295 336026825 501976628 321497259 868738777 438480289 650946466 465090407 734048420 42789044 978356599 900172327 901433612 167684040 835473636 139186809 589449231 927523525 957426998 603534089 752816252 750190350 813264961 26922461 595597640 617544012 820094329 952192500 963783586 927191093 963639505 665197527 966601347 722934900 825392109 503403022 859872944 279719346 693977469 709147714 957724915 204618544 210245531 281110152 303421483 892888750 907581865 419398705 520961453 759842373 965236680 918553244 986763117 863193786 996452341 290731099 606072108 170041145 424195960 418632576 445645031 881329022 969145915 993410402 995267669 285088356 620313694 394721382 538848456 929026940 944401578 579029747 968054174 820775066 875283857 476346499 957053259 154560626 597798540 781320742 912642738 397019331 628730978 140922435 968985672 811112715 950203307 847275788 877566784 372175195 893215287 3890028 205637667 530377254 563022938 109367258 831532911 652642237 822277845 649780646 843713374 864741403 899426666 233582942 813582888 289953548 781335300 184090778 734144775 863897139 989819923 669607403 683691371 873632588 877506099 369803623 418678036 332364370 664804442 620440304 686667086 806474861 879937079 679573140 719700920 260888693 976468992 686804833 713082971 240087692 297474441 748193864 825885979 305272556 500894407 934211861 940985927 924135562 926116571 724686623 873062605 192283463 209764838 216581049 794631298 324667280 697875042 739044952 990429326 555621162 682647882 806816152 862771296 390925803 747891933 521240246 645458089 917853730 919385980 181672169 992266474 675501842 928991545 441237386 685249452 927732379 961458082 462691594 759811706 528331028 819313636 784183885 785679780 709261400 926261253 562550015 913745707 216978133 362677770 135692209 964216493 507828315 929176823 338271806 445041259 7135645 85672158 98798980 787720859 186037442 275756854 773562998 803488371 441055061 953414302 312187068 347668242 344937893 504544304 389708885 802033552 91681343 692524570 575044939 706486213 638734597 982453150 846641029 901075624 863481897 887718070 370493969 810793309 529187308 799402790 756758053 774376106 399648036 419118748 7783065 767178381 20068896 542727091 353919316 649514870 462767631 624902678 276832518 729645978 35810817 633451664 804421439 906238288 923080637 988676929 945055647 956018653 713922269 976127194 45882579 790500202 953507872 985505946 336602934 785361114 791243217 843843204 634122109 675445775 691754837 988518719 465691372 881230782 964591944 983909945 291629576 466227419 2777089 714636410 881664935 947142344 909908282 957298660 488249277 863876426 506591749 629754022 831263918 960002607 664100746 714782264 109254167 583944898 658445147 960436574 982734872 995900512 531254975 680094687 865660085 990334293 428368086 809064391 264364740 378989581 328243082 402221938 664120521 670580504 642677031 796273979 434153508 631120901 580543824 925111189 86894021 210840225 489698869 896973112 408411457 953365808 556537819 583104981 861677683 900204348 228422393 409103829 323138972 897262854 340896688 615332717 833782111 992606167 851215158 913520298 971478606 988582668 420676249 591747482 853221811 902433136 281998211 398184948 530471811 736887318 945402322 976795656 150385673 771183322 958040559 960229873 683334628 849011572 274141688 476453715 343152485 982106300 902421154 958264868 179303378 504972117 670351078 733009313 308291277 935113036 282563861 805864141 733277880 941363712 872584827 952754732 659029632 730947439 979879967 988585277 564187824 807897692 228866470 884279693 18075342 239465931 731791881 742690917 889981740 900064752 986763497 998586341 958507075 999249093 598629521 739972005 584940120 806771514 163932606 784279871 980682899 992682919 660835495 744537549 543848427 876428157 570060810 921096198 941303464 980675024 766226729 954435687 874428478 924238811 484666537 771238217 766611396 883527339 968711500 977348821 984553937 995655313 358601868 827524672 253174816 739576305 727338117 954634679 634905338 826395355 339807906 419133711 55913536 411526274 412992258 613820704 447357060 688022086 696198254 749312405 275437601 579900426 579683810 744795948 445776508 473602688 939033928 966885132 815386796 836540679 865779772 890891321 544548471 658746620 905632423 923803830 271478462 622920780 276175108 464446395 641229001 761833220 545683852 837598222 633503876 641717814 199273989 896314557 864081201 883070122 449375441 906879708 671999001 927306553 917283787 929733804 646692477 990294767 324804867 422753168 633535815 692633316 397967675 622758593 695743897 851384510 911596858 940886879 459559889 776451863 197798589 935703963 433846204 739322804 181673278 426138973 307192442 953256283 969581105 995273070 50985416 849930112 481023314 502771654 54902488 311426408 107020493 566401739 380092366 504657005 495320553 879149762 62080062 836634733 205366738 794024885 526278026 575440822 837668823 917920563 985253729 993067395 906108585 936041566 163752681 864277949 366282357 708224832 188605169 411955236 165798025 186238631 312001244 984992525 503925504 832424508 838755814 988421167 133175211 541530250 318918726 810056148 186768371 305938237 75513532 661882416 97275446 905174169 938737637 995858306 855977778 979578539 832794827 840250668 744742477 759409450 630896812 807620422 855596974 907090612 458713443 751194912 599010733 623918407 922486586 978049996 833878983 921670882 504969833 512122658 981890482 989960754 843088065 918823437 841430391 914858374 821761454 937575240 523042248 789037788 480576034 867660948 477618633 752788623 870704569 983567193 18204258 205289446 715250303 975613099 531707726 980691422 372334287 984140676 922831785 992205218 883892142 923583755 55519642 977188800 364325627 435463870 140871826 274335668 139790982 827142385 9156420 234463803 198489989 445592035 753879535 884105672 946789602 982497727 193035153 570973642 129026049 444250484 460080471 775513282 800251049 982120885 169688510 642261326 340432603 955407055 230437263 935089786 782620236 863504957 65001751 246158161 532133423 924672359 715734448 919113074 291282456 450892057 115410758 346975782 880865108 998730373 165834238 394244211 169137799 511053644 888808024 996953217 519892807 914538979 675666635 788943092 673494772 832354099 927208053 986536303 581066453 584557367 465373489 984105514 294269539 708274146 383908345 684128155 125036657 990764603 897100511 963909768 57761732 938107702 920655489 964048150 163312800 265943159 512929174 667766329 310132208 911466633 318577443 876215612 286342000 937223244 584212731 799057633 196219562 224022784 349776620 487099816 563480993 655049464 294047774 539310133 891318977 932057807 312082261 571464884 338039162 733975194 621882169 960266682 652803022 934980341 596846338 836850660 217891100 436439337 210795807 533135083 525641132 826722558 281242391 670526929 499738092 941461948 894242711 905049401 776300733 929859387 714416584 868685360 710551728 770848624 862185024 998171183 735330262 925463940 115341761 174175702 707575398 914683830 122998427 371221036 551328464 666592921 721629753 883540186 686888604 756805327 652630620 920655335 437611037 573287562 931012591 945316488 262626349 466154195 801889975 929209481 900696897 964519011 756945824 866313956 664724047 753303233 470642277 623674984 875461939 913639328 804377995 840445243 881271576 970502747 557453589 998215290 712662472 990653419 155030802 649820802 834250261 989528723 200777825 961059512 801136629 931379431 178882958 529038135 130789274 865933617 939311238 958349073 41789897 865146210 154424309 247439925 921462880 923885596 793667688 937620221 498703212 910893190 75582239 945677354 784614939 845446489 521404037 739600036 62158340 73661975 992198630 993680388 904879814 995636245 612923152 865043596 177795103 304164088 805570313 932087735 263210260 631597354 194279158 402054870 228920969 697769064 975447748 978956096 855845448 913443925 217548131 217633592 575332404 647830955 309510955 735009312 702940415 720438358 764512518 924185471 721336048 978909666 177958360 236618985 164268011 900559324 533472405 764603309 501296361 870625097 746492844 823676865 979988128 990374137 438425629 760963536 424244025 984695530 736642155 770607409 15172364 576636064 153877526 443429927 419504946 799239143 653195981 870161809 794494049 865828471 402625228 897634725 102265180 123756338 628126602 819016876 528448425 988377473 753310524 879669192 21236368 731177332 969545185 998595633 64656037 137380125 303301059 496245988 525520436 876280750 146415835 634480043 672269981 754680420 997363914 999352569 618661264 752301529 97154094 946505438 644019897 947177996 487552326 786819103 217642006 662763095 255631292 446648108 678059072 679955416 201609480 996789287 280892596 974011729 899187507 925625279 408971386 436866734 176297990 817414506 930792252 964734490 263478438 949824693 835948245 836469715 740234921 799518583 569098466 911775986 659557467 736937067 999694095 999879901 210139599 485759317 711718766 795635431 839274440 996623087 780320226 827795446 199014639 618154354 377023805 827366016 838127790 863332414 665215730 791466109 985163997 986656499 504085205 707506365 489100373 642070645 194474150 520250286 404047211 902048094 722678508 920269444 189346202 289823551 20325892 720866301 45909171 812354593 125505419 314357403 115655832 987296440 322216016 363601694 108787603 971812969 984363115 997450595 235818421 601039723 292487986 315605034 82187118 910113414 960068305 994330541 525047214 720082077 560853729 943799528 877038821 996502043 406544036 577601217 126676788 254729016 445409536 557219707 410689244 501240206 373790268 730341140 122986867 925558923 116665184 172265697 443876336 911241799 29481730 974279927 535471735 773285040 790974152 882954219 946870187 951571755 414316344 984409134 333145231 387033092 4819072 354481291 843812531 863043671 389675175 604902806 41306514 68492752 167486576 721724433 486969980 766865806 765035471 948413182 154437952 329167662 226558282 534453574 131129068 639479143 590796472 817787785 716622762 921321025 249063582 567159222 705589636 977722418 134310730 526446056 567815098 712870045 597306197 709435135 917382450 978322359 276080981 425825572 339227797 782764758 881503768 890417516 667045489 752060737 344158653 830204496 526479699 997877563 655236036 816881473 677681758 798859669 768949396 865894101 541243830 859665959 31647183 410866328 918072024 927752347 753397436 943252022 501909527 768824779 678504179 946731460 101439975 393937675 864993448 970238422 835293756 952305656 337806924 653112910 15050315 219473804 907424062 946560213 374663007 984036117 206450192 859508896 363744936 923049643 578973307 959834114 446791828 758450325 679858431 766161523 222609126 355728691 711387150 990910332 827684316 936084556 255961956 793734519 719854185 807006652 370810246 745201399 761378188 957419662 959794396 970804244 213182829 974988930 780632024 784951229 13722638 199863632 401994654 417638242 669617245 865686420 200276755 411338613 55404908 693014054 814202771 972480546 614404555 676382917 535323273 719748268 664946352 834645958 714847518 864549431 805882373 975086791 548025997 603206836 294029750 434824372 713235245 759378692 541206067 570069375 573544705 847784829 124384046 411120511 162984812 831065239 389600393 977987163 407438464 696609051 12029581 392916302 254872858 816286565 855248889 957324361 667047225 906565847 691941494 753306062 983840515 986564283 95160969 924405963 77885946 650994795 465766039 626767022 259738107 446398442 331527933 399613714 654517835 836439198 676444792 926079734 768862062 837664017 151816615 561445009 414041507 619764279 842793051 900550294 5549107 350154340 161756505 961413779 323233763 717821201 102692363 889829776 808146768 937966840 920412493 986591225 414692326 540877455 81608222 917436369 392752337 604523664 129119077 892628304 886196701 937941384 949767779 984826933 131488998 179669167 353529141 559371716 933757750 939424625 929577298 994878579 969887476 991853813 922201574 961999071 71699951 666186955 281910195 292598335 851088877 978670206 212486966 634131721 470066469 510989594 859633688 878677002 360311389 504654240 52440317 169712858 365696570 536893828 866470813 962704952 462838037 575110803 505929721 670481483 192230450 891517637 634652492 967709793 934352080 935201459 753688490 958670952 668876378 956596287 172229193 992034270 814780337 875447718 465851748 987199586 194273228 702299570 781147436 819741413 214822241 932588819 406595297 712324399 752207056 942930189 62263723 565811238 884090685 958152597 450209302 603455592 553682116 946195397 407543638 765319745 462815024 772208169 996649864 999518901 933012674 950102364 477073501 872826324 61251115 405262734 30668344 985984011 83815132 253254747 9762417 531975848 446225146 564079099 769295899 972442549 254181702 682163208 110793942 994284187 984706491 984766756 312846397 478113652 156873622 971420973 430182747 815571668 772948367 890731340 442759268 841712876 348027428 841795265 255604037 491429196 549776704 902553805 288250668 302956105 52718726 627767431 199463554 694861100 889251102 928048343 849590472 872053408 51848075 299164110 220749674 641507892 995880178 997809505 868899298 951089709 392185266 829042757 38849978 743668722 24053599 231758743 931864447 964456986 639024901 781719499 901976483 953846526 442740935 691716959 616929371 640817287 541219243 942297732 831605994 969564419 496063768 819430310 775008399 888213707 386936331 470331813 140694045 981003244 536950802 612041728 628960307 750605359 307656190 436185117 730660605 735481074 534730400 755829942 663414164 859912486 396550226 825292957 643844537 831403265 476319982 676405593 418979271 841300379 998968308 999678485 502921275 851027046 196288222 417261406 469999590 553739933 283824715 464972120 709675041 999271915 420218555 633452072 661767519 885010209 921594837 957712455 869506642 967375713 629042149 883477049 126435134 188280960 522551637 858729521 242893173 931220811 569117456 990217754 78836950 435932716 214227956 754335058 789579075 923645497 16058967 335602474 447664384 992638107 790771225 910870055 641453711 740358467 543178245 556945717 49803813 521454491 953375796 980272654 570463687 817703692 888552174 910970047 502197800 738715510 82593552 134042974 896528214 933330080 775629922 931116339 682914137 934822886 843958073 961096258 148227848 999724841 42836904 965956987 120480691 948396676 713039346 877931045 831702037 916383604 956493032 989490431 524875425 726189375 248561204 710559686 805553471 923185074 367220652 812943436 981037101 983321197 800836456 917326838 32261092 987704831 42064317 520325625 864033500 896978369 147280559 431700142 831878626 958699690 307137141 359403356 268208961 657911400 221848961 858336392 872411170 974058929 478366095 759606721 775347043 941996588 198225174 308832855 414647639 748704661 409322782 427226009 87648476 969298939 869832355 930014376 88809941 967270402 23144666 123383086 994487664 995098795 722522873 835547529 397107595 803555349 905019632 969146476 815258382 957212158 195439196 631619642 194369143 330320927 621733853 773653647 280569528 400288830 576780557 722971028 811097486 882621241 736464294 750245037 459553527 527613945 77747321 744261965 948147325 992566870 915606850 947702277 567758641 958216798 860204349 988294773 158268915 582229935 86172975 723103586 370884417 437484520 605737241 634555696 517427626 874822629 482315978 587119848 313591488 685423331 236645243 933077617 878045848 903086312 103367292 315384588 357761953 915681438 899679061 960595619 202699506 395876515 686759220 822198849 435855481 975406783 156854220 785334679 553637453 841371490 141589682 858907808 926290356 949833625 759994738 760626517 644080381 957540419 606287137 888433409 715896651 780936555 276393371 481339128 94670003 784563411 527472517 586628801 354255895 596481814 115968121 328161756 768549001 862839209 903050525 991594554 745911750 786606070 727354806 859641827 35775015 446157051 836780990 899887930 872120251 883682817 349033757 532226749 564898701 879563022 526119183 577922794 75468400 545545783 109301136 830532696 663552907 740292929 258183868 787352636 166440071 922712753 426962966 813648262 982076031 994766421 213437010 960969363 98358860 556514818 684720066 715397494 382943584 397309265 188751204 663976381 969780459 998131653 161641096 459123721 749285251 763523477 386180069 557908417 505442831 743395263 818485050 884990827 799315709 820580625 467835068 504757772 770069281 895229491 408978510 709571306 667981493 855994180 450186317 856384668 244951085 928608812 519632790 667715452 562091371 822353827 726411661 756240219 900813055 954167132 187769002 272894272 969710729 996568051 157727809 166038691 893146411 925355293 785292276 800461383 539643880 625526330 211577199 899772359 518235955 900393170 50305027 441342171 906741805 994630967 446866985 745555860 190021811 997777892 582424796 951410836 270527238 841272351 595831508 720385200 584094225 850529402 282735774 745849607 436284134 928866956 798490099 857224156 488050209 634532172 78114879 586160653 497864628 672538306 33765568 682259066 446728201 478526697 491349315 779219518 635703530 877732531 163391334 796062962 17648160 854046903 46855749 269955290 392087922 584469304 580351852 749166151 755393125 930077412 127033910 219845699 475327248 755878066 463910525 817673997 167626314 642946069 881524797 889896575 371634472 460044848 332196678 713162063 222987754 881691045 155166974 951995903 356396068 781259491 66082211 404291208 219159868 223281815 815439204 904180745 796685786 820733911 347464802 599975353 892153448 978962411 626672763 879069286 375174224 798933431 754494425 894895429 634979731 954090390 78110178 864905123 751533708 932160417 93987859 450370835 83275508 617416336 497428895 958927878 987877136 988316528 606499088 800716237 211040712 701366305 149986526 336132606 941684470 951274393 961148551 974079481 454048217 860787680 449717165 760129627 681102609 761105142 29842959 684413399 468137114 789278126 426892396 852796747 795869786 949046678 36024507 538238770 582269285 770377497 919934151 943185154 406481417 741612779 174367803 908572814 854240936 974611877 985010761 987882755 262207542 601281550 213522484 918895342 885588827 944314099 548484589 996942804 718472369 765844111 642661986 820762081 807902278 887542170 455007437 659209048 177333992 736271223 524035703 984461207 564349092 594952143 782893838 967314174 296176616 812379529 733867541 995403700 184446938 562106996 343078327 692130962 181289233 654625570 885089939 925351005 260089552 693510878 766855515 860514025 306947744 963665088 311965138 523889748 205180926 227843345 679506402 882816151 805820556 965171556 682300628 804243037 129620230 610374326 31981814 684368972 488409064 734465873 870569215 960152085 50137205 519806566 120328984 440728214 370118408 879571072 608407985 657356301 689856651 811855857 116468314 516648713 747147572 827820417 347619184 350774483 144158780 246201571 157621346 318981192 801949561 881711407 777618272 978180413 64002646 836382983 49702295 362344444 873047909 876040607 261963496 310649958 483879599 546384487 383643052 548434766 781462877 883667203 412006607 616402883 561504907 770805703 492900898 943499293 993420109 993472604 40167237 150877860 892497033 930291987 948446112 973617523 75131515 754262873 396592197 961527214 224651699 607361468 634485213 661568918 292785616 967533726 144916406 797345013 710608953 865141231 920475647 996048054 718086819 727159952 655772628 750186419 412972969 871945906 595218627 707774665 561199948 943301468 29892223 304265013 530158219 863601351 127877263 216892781 3670845 858053052 597890839 807684547 648882972 938358999 306220588 418756856 275536304 979651426 950027061 981525654 654293034 774007419 938780436 985328998 562425567 899326244 336910434 920857557 423930027 940867724 785493757 861971292 355825423 590491308 545447134 664112982 543386005 559375809 816527613 896182332 741769645 914054566 13059886 39830444 43230290 512480402 927450812 998724980 374028010 728501413 5390003 137227027 868610096 975354427 822276826 977881135 260221538 719898569 875533761 993027980 874616069 978636918 570695203 800060045 535626332 946915374 395335940 585740661 18517521 508794140 599502550 661525757 507436378 523209680 93646021 628866337 297406164 917505759 310747250 997953692 515855513 680299687 555788516 841669051 822879876 874014674 27826146 753213172 442737520 636838943 904445860 920438739 515575035 892769910 142200142 403018190 720085731 827853701 95303490 319818108 928197426 942537498 424690676 471828619 264450990 905723506 716948193 912384628 408725141 827993057 22313716 851800080 656912529 753165492 538208784 600149494 580641572 724789350 828173907 970696943 641734933 979367836 16670543 706529934 935090121 968798417 615875143 644358079 43114309 495308031 739351149 978467798 918632337 942715470 316715299 805833473 477073506 774757134 644613534 810806982 310851871 817606884 609612725 615309414 582917528 735980428 444285097 867990121 815003988 834883434 679771653 733711053 995502797 995840241 843854823 925980106 500425594 982609032 442220253 445084279 709794871 881327152 210947199 339632683 278782312 508736234 659372495 996715900 320411661 407710413 833784722 855683312 734793046 824072548 516442084 935229576 325810707 568926925 792530342 875574312 373085517 977617619 356742759 480797881 755239768 976348579 3176056 867290074 861637643 874753713 394594212 985137783 696204597 810300418 978563041 980985124 499459022 793658292 864236583 943247285 892744484 924189069 706891250 811310497 14559531 877733490 666519955 894976993 992613814 995930177 775402436 913351675 659476890 696579987 361806970 602701194 99938998 596046573 901574574 956771342 224699909 447984443 647303422 918695369 23371529 774832598 617032594 669771173 593561520 970607514 751031632 876157489 121068284 764483455 565208054 748861902 519325734 625975300 785166684 804466338 774135383 842621321 185086035 769795129 672208926 982190963 565231208 964126148 263081557 937755940 58131006 829582067 896102937 910116557 25087975 875596107 309502854 686157686 819587910 824010326 359719787 741891233 232758907 738373347 727525138 865472046 442798071 977120162 952748142 993660063 518600836 789360092 240244186 884631218 277695929 285622643 637199339 702699709 140982392 994311999 834687615 876414134 52323335 874103894 395574167 397265522 879058033 881935353 446232535 925784116 706715844 944252619 837495362 941298313 258117683 838653839 759586610 789718153 388719514 926460215 93308350 946379908 591016958 827031219 514183908 894683996 384086745 954063981 739270624 969671110 354127262 887938625 217827743 667376527 596526428 966885158 427309310 680065778 105252228 424685762 940302791 955734963 518139741 595191792 911770114 954505437 930465246 943201940 864505840 889145047 73649203 243019870 209810668 527950034 666093685 743719814 421967248 906605485 545602605 725959402 807360187 967180967 290016669 796310392 514219495 625265068 476011806 530525512 371053329 651540722 936706064 996930426 789991287 831974423 69307780 340887628 671017648 799563934 921004173 959474266 736542117 943781018 561149240 917582368 588851687 589207767 534303417 866858477 242195802 381697834 144433501 339153736 439344430 881744111 525347326 862699340 850771466 859367387 751226556 940925516 547857857 694524409 127286054 482959808 457055517 890472723 524431632 733561861 770395555 848637809 602250383 621285014 469985006 612551087 813610234 845529477 979921104 998532874 947824560 962685430 322994059 447931410 442427892 614338239 123523904 635676553 119370733 538752554 135916336 911816077 794761246 940767763 600626761 647015181 832324814 942078978 940855008 966084471 413220953 666046639 939664615 962219658 351473614 373742189 358542824 632421828 138037129 746755910 857639600 880750390 676620164 955690413 457895535 499993823 259270655 365898198 676585357 769030658 401841936 941831988 598293932 683931922 244472780 694489669 197279647 354092894 848019886 885096141 622530153 633546822 41557602 793871713 611712726 694614850 125452912 307261732 340842870 513920188 561387514 949380479 909315760 997442025 512163711 709473044 873204235 951575751 533655175 728725417 610317262 800695074 748945287 845684801 808912846 833810593 315499204 535428854 150488181 834281539 612794475 661474758 406991183 991900549 284787088 480970631 203589731 844207934 951518085 996613258 30307147 980521558 707020458 892998765 766628495 997788431 129327628 549840121 661684124 944494794 314857815 849396187 681621219 796065058 978073823 984440112 806919493 887194706 23493365 332145859 244450082 811066038 417124109 988131259 402815001 530442931 870276717 980907941 79184831 774995958 322735240 446049488 40501238 822250012 597176971 822471706 349132453 830147357 591194399 607805796 343932477 484269317 45892118 51058584 964518862 990599547 588052421 666333882 324877583 721679672 911822296 922373148 746633063 816877887 355514240 958798426 943782366 973878558 315460002 351665713 589082005 708885954 571754281 828252880 594644720 996650528 87835873 583088250 176974129 877572641 254627677 383405447 838885132 961797216 11185640 758470546 97861328 880293578 890942915 905300216 891256642 943054917 252944662 581411856 866666911 997425932 570506698 634226233 161162773 742632518 481037851 720271740 929141647 977856145 857729386 995203921 480704908 877592043 444557769 753346633 822527041 964718210 924026481 972607193 75912874 989775525 348587734 422010403 822641937 854428304 829799966 965639385 291005900 613762989 865569482 967841246 536162551 693413652 351274544 655824613 547133864 956878604 322560976 607261861 937440986 985858729 731081536 985833327 237777116 480872045 843284816 993532353 68466583 920366180 344257213 358737645 94044723 543727892 704756164 748065085 266360525 271424909 509021405 683482957 770516024 956598946 941353020 996617412 412775994 814188721 227042565 856139523 481103475 610202628 680750481 942626412 496430912 841477705 510845968 983791801 899243753 934754352 171546126 525628924 250311992 614130187 304405576 569195208 747464567 759962043 963425880 985704660 410110282 787782966 629073270 818734567 763106667 785645099 324637496 971017849 466546472 540342922 709799210 819897531 783279685 923703656 729327552 939980558 704148763 829206035 486972687 721734327 497297119 849770449 453724903 704820322 619891223 909372248 211217512 689865624 382750710 888317763 49968794 208006746 829617544 860055834 580758004 721155073 936541701 973917387 676013553 852960419 755144981 843436020 228326557 910640248 601260284 911495911 336582111 924062248 473383202 919757010 123823806 711756782 978966630 994748055 525554365 996510981 982258785 999935308 740436091 887197869 143891175 657040101 947042028 980185342 611605014 764888668 430608824 514649208 54307752 790706135 403705878 567301506 586573801 802295958 295893076 662263588 551610799 729698399 423790480 679071407 415582636 799418308 656853560 710906354 154029656 407729503 441202835 691976781 376776562 591904458 851154830 934713019 107736345 697120994 553035515 704325680 652113544 730128220 668811644 868070725 133661396 448521034 726711576 843753688 878520633 990593196 320489097 386396986 186687860 773211453 781404306 848074566 48834397 939512692 433426050 717373323 512036520 716514938 365813526 879883853 512442483 632396071 834968819 949152908 729049001 887925155 195062281 969720496 828291332 943388664 207163931 398975254 558991432 853492549 160376937 455014237 563373084 837386836 181871220 664897747 62316931 932045516 145050144 155742329 346392102 795982470 529947894 977649987 3082745 825486556 858166995 918165347 634680549 860482878 833228463 914243508 505443424 815332471 665149877 998657836 557133144 979377608 881007445 939347603 558109134 839976914 568337617 924307982 196619494 537998537 784358486 809258008 909449178 973077837 930671495 964542924 337096165 737322386 755752992 815282562 520163366 625498644 141873079 617935802 871513475 879668303 996186628 999237669 141012221 994167170 231066153 828533771 542568770 686912529 525067021 812493821 22292158 160524866 517417011 887015014 255193244 536894363 100809494 948252767 356807246 649860796 528425868 643807312 189297778 495946900 617380424 758020770 192810245 579277225 116489590 222706776 190127336 230354214 371139746 646387798 286035974 565864168 400099290 527331524 854593047 869279393 287122636 666002509 354661817 914520119 353432559 814650317 879694163 896945597 200992286 800111027 452811494 506238213 527938155 810201063 615074242 618480171 813797596 946632521 712218102 995253196 519929628 631512417 731308991 970242678 706445104 937640634 25200552 620040490 45087211 381789248 976322520 991689598 303556100 723484003 319249608 771218549 246299955 924879155 901300971 920833090 338261285 822752312 534256221 667427821 100484444 450137065 996197418 998231606 778347061 880698640 212567882 907211251 202543558 239620119 430976508 792841931 834403600 861873526 58841499 565942209 483400288 690192454 511479754 822450839 986983706 990510084 756475453 865600425 371683937 988389099 845065255 865143589 638621746 852000922 835394337 875011533 517539307 533295074 404278016 965072528 178354643 852538376 434913203 837764241 597611919 963264478 353655619 478529900 762637373 949556674 176121710 437968505 990182485 995648428 601171679 734810312 762955590 834905951 901441936 951123236 399414205 715356015 218273018 313026266 83307476 808925203 939748194 975729377 110734387 442494625 997650732 998008462 778556505 889074741 784532476 983854793 297901816 907469607 850440211 909600764 531373863 626800459 850518457 860674377 411641703 419026164 960499206 990520898 585407555 738380212 351183629 563782785 215625711 222188667 6545275 102799545 303272685 607260769 22293372 575480494 692734712 877496851 869735976 963642636 799488118 875960029 222223397 440757475 530594203 653925718 26803171 228921982 154552500 839507614 483229858 585478739 118419272 223279422 344364736 454356864 680499946 779157171 372849972 804198672 273038369 522975090 715330225 880278354 837787322 851374710 187000164 223912975 441143045 579202459 340609995 560812834 853298735 879282548 695675494 759362926 886792122 933114126 998943505 999610822 345230932 560811416 410146156 820426952 679868002 818320288 9374406 248358329 197643452 667352265 797581337 993394881 406995105 866139674 373279333 373311555 288648013 753186008 570074768 844050413 35126570 76099336 64423799 581443604 212823303 732013132 670541109 977710961 473486011 663207272 717169581 893949270 116164394 858049029 575341994 975360408 7663846 379210408 673584671 990687398 255865820 653306230 320227682 468436641 91255755 279900005 465542541 741337362 702148318 754230102 732728891 736857641 964042502 968368143 332680589 828709591 628908214 931056445 722945049 863142173 464392448 512584845 336243994 400086746 626322480 693203076 671886727 695225812 697235073 861701362 637054843 692716176 6868295 824025778 350399267 636253028 134844071 847940070 178075193 681965306 68741518 582333814 954850176 997928368 727452582 877498244 494179904 716081223 961348433 983284104 715617442 945242264 438576989 490666705 809054082 914758151 62170254 464203333 288828268 507346888 566607173 932709487 424913516 677809556 291528026 874844349 486440477 503093094 307270299 757706093 232800966 770306450 261921090 711765134 328405564 587792314 851739382 877825093 776724325 962325844 923608777 978313222 931403662 931935231 239473560 440939309 286779532 424379763 436834711 511892555 897809414 929336876 259374070 866289833 217528607 912534644 681008098 727712287 961699848 988742167 85936896 787270222 437774597 959640327 635341357 976931104 817147945 830616746 847248301 977717818 957828170 977594985 821729180 963799555 596188644 638811357 437484734 789285351 335218720 510320685 807151641 816088476 30482608 450600818 328508153 971305894 951611050 957895829 981351333 998074368 828605909 873519809 671910016 679347966 134432580 744966229 238746991 795517828 146941062 733286101 831843272 985490217 47217068 96767467 217815241 266715881 399642963 712334780 811840945 858091185 244000730 462521512 720658442 997141543 46509326 309302545 700790538 901765090 433664447 789055492 944948093 987834833 687800488 754521848 317456328 804479877 450702713 744410798 364457582 719950303 27335648 598925013 287172714 720304495 845326642 973515105 247195899 517087547 60624023 906048044 640751274 990645108 400065720 439948445 324913896 739920055 528789044 872938404 836914115 977154219 72095458 560341358 218804714 489007938 37454005 799941753 76509104 859690360 871364474 900222481 219827200 971451716 520661182 991861853 393434512 893518241 334390852 361447213 878059606 945084131 863180514 924614444 540280110 989424544 674364277 923918729 58133497 153756093 804991297 837444298 191993162 250860657 482959478 502967138 697141156 999879834 821181607 926217666 978593893 984707912 928675924 964575330 888356629 979266253 969697075 973318763 154962104 924802541 163358128 210197681 383056429 419460152 918045269 969540422 933194382 969371582 800450283 824779091 381905021 483084781 317251989 553611388 121510145 755488829 700958858 775718303 224096899 737120418 284209407 301053101 608001574 811283829 633830018 795866193 85433854 348207683 250691865 399038049 461527451 534676633 732440027 884825192 59416066 413562013 563848925 737592383 587321549 829675822 429498567 451290192 139734201 174670111 382356395 625092549 856243371 943677321 993527963 998541591 848199315 962253986 270755842 587479007 920107018 995286591 600004308 759555516 991830648 998373693 384491524 780918490 108715679 371028164 435519947 438546554 796002996 941785896 277716201 957613296 714380191 969282443 328937916 470210679 97448429 122236668 740135080 849832416 468564380 633781166 560092713 911795951 953294851 994070235 76312485 595165182 78015271 382801089 827283233 879929364 721426455 924119632 920444190 935310529 400860669 659585750 169186562 449857658 565977742 935235441 821670428 881983875 370261625 921357554 571170137 666437383 598759002 969682816 790672396 865527814 355675610 849026380 967722563 979246051 692915471 872256031 702187580 832844682 975679490 977280229 326359990 758321936 842653458 973521136 948580125 961911648 532100506 787279472 910202481 960712731 453369755 607565660 120806520 384613346 254292568 382317792 918013405 995364689 973345097 976047589 652891509 864650002 98539938 882486415 293106382 348155159 136886461 498524726 877615505 910151805 366502439 923583215 20663521 359876280 928092889 990882593 699409844 946948460 492701219 715825437 172738250 189844745 492227758 938840680 40177781 602880838 806630841 850957022 836925779 880837163 918863349 963601464 688080069 714625390 136971804 998256723 933398544 948470727 392311634 811235924 955922762 975066982 806766121 859109736 405390142 802376526 690602280 967580280 598772713 983346432 8226484 966428868 735860746 753421332 856553984 964078344 228166107 859676793 722318924 803945260 365850946 855117796 64782842 950917680 936732572 973519234 593301036 618367769 731239381 771565616 464309996 821814932 62758504 502657054 43677409 116757595 261383527 455055967 98961762 755837789 985372029 992646299 575082615 856353846 224193872 826284466 877631924 943510846 473480763 941972278 469310833 651902746 409363052 931974203 761481330 908907403 582521432 744080465 276193249 449667932 781192873 823470753 14630052 488797203 79320592 311360123 597291410 703404872 282935149 288535509 911113805 921318269 53478014 96322328 956383103 982036142 298278288 907665581 692909445 988063023 954331212 960278786 855565780 872179816 578485668 966951168 561779817 692612948 328501887 848467727 321554159 452156796 745754441 823753848 620392539 640126532 127514058 631446613 454526853 867507701 357897238 946153276 821908440 854188373 197559489 737047666 829338263 904220937 973008909 990083109 663026885 933441940 420117293 779883715 573478009 634487963 197570742 609236187 927577824 938542982 133957803 376633181 851189683 947322540 206271796 732832609 366198908 726599312 536944741 943852702 577181896 946023972 678585598 991153725 806439066 831349189 540346195 816473860 808441126 862936667 916938119 977250058 920910148 953653039 635377408 645383049 750753326 888712328 835036680 932891670 366210960 826724875 130438521 457886808 301231591 964227948 265253879 619021847 888736239 946869887 153026509 530717208 587916257 612403522 482388935 574779391 416999650 753984747 412240005 446368740 708507425 981025801 554364059 615893112 151725337 256351460 3300718 879009405 480653178 907403613 551617237 687866111 214437107 929546813 920824003 955020067 31676204 89448803 918024300 974715041 380194703 987118878 717807354 769310859 517643785 838888185 847620361 858540096 543244183 925331348 213922855 903774603 421551474 768200209 681932052 818499391 603669086 680348675 592366298 859501607 671934795 815317800 16270794 564234558 717829976 821832680 231388536 882443189 370144212 939860095 329469163 554100416 738508332 760069162 65079311 889510785 897119385 921281457 42391571 97402067 737930684 908561300 236927030 504036598 212438952 782805420 476076508 489028852 494906090 740369142 751746178 868904051 153081083 375670520 975452010 982677869 837071398 924462762 241798898 632110382 63128457 517721147 733143893 742923343 641230283 991886100 802442274 962368181 847599809 996230971 43687442 519948593 77352898 878842047 370768920 546046075 701403323 993344253 813001103 830558348 633372088 749894747 923113213 975989309 97268994 267920473 602341857 661315359 893517376 942645228 256780899 950720131 393397351 617475320 542660796 869191860 933502014 999775515 115179371 575699624 791689163 818316016 380416902 774630044 59835306 399698354 790921438 969176633 332810904 744309545 166068571 481291918 689730506 895154223 535339121 592040127 766905788 850620921 620220198 845263442 758650129 783464270 701503249 864607439 627130233 637555258 547767949 658505310 175125499 313549212 485814025 981291371 686964589 970834100 535256192 665345171 789169334 913053101 369152815 892966749 722269545 871604971 527967735 864055400 620194373 637353147 72965928 995242742 326819543 381857109 957275173 957455435 824616777 956874987 100638782 311864697 346261580 673178669 844525099 860508776 303002376 394565750 75808301 508384987 199274911 289803971 606119877 724910855 598384059 601728245 435442335 699635353 747730127 986839888 804390711 871155009 136865715 312395790 54608443 190905365 699659386 871307818 334140041 865051997 82222058 698925563 592339890 899891543 973018615 976411056 76761135 343320876 964274420 967443620 218736180 267848408 890205724 908638753 205384670 690913806 836098103 948037761 22102781 329067532 795138931 867662461 809047457 893122407 888199629 973164629 646861843 667799815 459433153 945639620 705148918 815552334 602476157 840627409 671031950 910251803 692696434 696527206 270945560 796590030 133172910 605261795 740383469 798856586 378361592 545137570 445737046 995101216 744943842 832860705 790372734 882223652 194600770 555545753 271130589 527006263 990851995 998098823 325637847 957519823 93659407 291369639 858827179 978739563 960039952 976803368 165114093 621903076 441153968 719289872 10633086 862595375 918862604 929690686 702292497 965843171 625503428 751410015 674801442 883891785 599784939 893323758 620969096 834982305 859407564 933560112 508772806 655891978 559015296 824399037 896674365 912232782 493469895 551273295 534861092 708013483 423433642 786157162 909302864 921604855 741625501 760125286 459201872 578916671 334628827 436278120 610438602 778501895 448704268 718497893 606168579 937766754 477330795 719784530 894418222 964143517 560874170 993220611 497776288 586847249 577953179 927129456 927485879 931512440 929903970 946778590 315585863 487665930 936238619 938258385 831280828 859076623 858078970 906363280 762210961 821475293 822393930 900394434 864219090 885240049 504189593 615302291 670752563 998057902 220680790 663507438 555475 768948543 685245670 748328694 687593853 807080331 909065444 966140110 33718823 307197735 715638248 742688894 464014443 877684657 277585205 709562987 327643042 409751675 666239321 673265194 84855934 270002994 193621084 414599266 640006765 852940579 446930888 463688373 52556153 710259362 401155564 523447681 794885502 844728845 403379167 746252099 659100515 763917833 826582762 880641279 442345265 956770760 815446625 935527016 40271897 953502694 856855707 945369772 323705216 960287498 908762842 960003692 853320590 967703179 420771335 547023265 439292785 454143965 622054963 829508998 863138592 982869407 935879007 973173799 266153357 641278544 6118954 579016263 79231352 892984829 565826245 736088239 447817184 836461260 299900614 680123012 585251301 603905452 99961058 528481979 505921497 631800786 549709700 620329749 909286862 947655309 467375044 728961149 209116235 576341025 428802541 919112306 432285368 710401195 790692959 903279507 948269046 979512141 835476995 838884601 897377313 964596433 496471285 625476568 857258975 986320435 812721800 994417669 974550186 976602170 713264611 917870650 830879308 990085610 455523556 535897884 524078698 640604230 374428229 861868687 222821502 947998083 372996752 928208990 94829020 849849488 826347138 851881020 75270818 383919235 851723373 890512072 990606177 994933823 244202317 782505705 846629993 989847754 371709827 732810335 4161674 346244837 226558237 936429998 668383999 713266012 175130019 372161844 956810672 971492824 182029871 535245597 690288962 957058194 39081708 923113285 924279665 934069784 635340584 895883566 948366470 965286205 996195714 996601376 677603248 952093787 46382899 325048586 136760117 313446532 162235161 516319686 589951868 712093267 809821152 929447782 528522873 704073695 213020516 948780929 116065217 950006793 576703442 847894634 481986471 690987266 720210251 755108267 799721558 991592708 344645662 386254838 818947592 876462536 388889269 673826348 796368968 830867782 440364100 621999302 764715985 848388515 682477397 915609245 727511957 754210784 588872003 831860095 772158332 839771397 914300118 984042905 982423025 995419822 598282224 691896390 914353918 970534256 406787935 679116769 953674696 956265809 927231493 949775796 265678941 781860182 398522708 963220018 143078783 921653236 502795001 913058441 583800615 936194140 956015444 996628585 571339547 944313955 734359920 956666696 501919530 693399139 993378942 998785491 9868653 712356169 295922988 431149105 244901499 653399694 111463433 429988854 167404569 873084092 346333833 447611898 599351596 892333704 669076282 835747627 281049454 890947116 382055249 462142443 757846858 966008227 581437084 890085203 185705925 516117979 172973050 729271223 526644939 895031424 334419121 483181692 786448144 804725190 921010264 942052123 418245931 597964157 786606441 992836575 152488414 247849906 185985370 933038867 545848908 703001041 670969507 866758839 762414642 835426695 833891146 855116921 835087212 979357922 698379450 798781470 918707583 958942055 216895831 426762984 74127949 718022979 607072296 868221331 357736031 371792449 725388563 879636588 654315193 890924447 394895552 803657333 12321495 702516916 747373471 822890749 646352727 898710744 433283254 858324757 454882991 935401486 780655536 961086535 174130210 182829784 813226542 814396349 89717967 428046114 603935793 818635096 755477741 951858638 653276815 901603930 685900235 694060527 99236443 527449906 463510716 859446021 143787310 945644906 411751416 603809620 312583148 536146588 151375545 285127957 488768718 495238671 448649368 576749967 610520285 772457126 638782930 942138784 93273962 542154196 146248087 212217648 631145649 653226628 595809697 900440485 542641258 730116147 449767069 882094554 30402937 886549634 743606684 777468676 911530821 965159507 305517685 916713240 66116749 604879200 273636941 460596741 178046180 693765887 79727610 340214639 550385164 638065071 650446442 872215231 175412991 431438120 86719551 467830937 624134540 740996437 36568530 971770810 74896241 524223893 842394470 941731354 148965245 352988996 722416222 808813136 25712671 149097426 336881039 767560693 841771229 997524227 824186730 914295592 587071356 721548493 908971399 967968412 900179313 924556383 187881932 491559233 80030450 432639612 430280682 984569574 161821668 537101793 703418331 712007760 368741593 654868377 127939030 251637714 881494365 933008486 378478783 606696135 720834367 913324486 906422022 996384388 790226141 867186127 408920460 743986240 335088263 906340658 494265971 867999107 83984167 93337408 794143430 813019975 877197653 976705548 636121066 881932632 564277320 669304510 87607176 509418784 491245497 654821800 356549438 991496556 592245450 663102828 181345173 630675047 625978696 685615445 830464220 951490919 233067536 402183610 424775632 652335711 17208562 737574198 107221879 525311871 907145499 937953966 569285725 653655143 474743539 999908016 29558304 492719436 179400737 281847422 191432104 596788456 284811282 988856051 172534025 420372842 36716281 644280983 964689678 991599504 700238896 735870391 448495334 664870721 112910009 953641079 939278190 975063124 284525760 609156556 291577906 622331155 341547314 913421581 92532883 917421644 345327232 410662029 904290450 924923007 960454961 981285143 845484555 977220792 280986036 573198108 984600313 990781158 918292644 938371089 888566272 954171267 872549336 997282496 95744221 819679721 886979305 983891197 913873297 929991878 748956170 857591324 92484543 265323378 563412076 661095176 686537231 698774973 20282716 742508123 723802864 899014156 929027600 945249018 837009821 983584292 855517827 916967347 895088372 917050694 161827852 585239795 695127171 956372543 30198713 607781567 658455439 921612974 226685007 986503817 588735889 917982492 117995273 122022200 227973651 731199673 952244828 970178359 459393901 883919903 272742005 749829689 24528135 368013553 427920627 455199460 906042495 967014368 803679567 884969516 395065799 532662949 732204259 978344372 466576951 685797951 437126954 803688793 16100717 647362175 896491944 932658456 221212901 915414155 241851631 608399211 480230705 884919900 998395742 999102802 227968270 241231348 157509478 865004791 420272844 766001972 534274660 600194825 144268225 198774597 342383842 854461534 718725548 985090707 186023148 581475762 604889288 905531775 891234018 933956016 38683879 577583841 920708539 961194517 389040825 766897782 572092435 945818441 253602486 609233716 427535545 473264445 224057531 922714258 324752158 558592046 919567907 958787023 713490795 820568965 864669133 934272317 265437237 781718830 531763911 703003157 845773286 973381176 363233815 670523627 99238513 563413944 614452406 762216398 543576083 590718153 163707142 799538557 272296688 527365874 14632359 836773690 131547205 149676094 954223100 975530906 419184269 749183339 587145635 978972484 67420753 517877015 521771558 763646443 452838436 548675951 793565823 919253721 663891766 854832383 509697268 740594770 18738021 91173144 794342424 806967869 890099962 963430286 860730222 954002557 121760627 510719162 880948492 987732668 70124527 80121158 500332399 721374926 542626400 740718774 997606848 999918409 638653268 758875024 975093286 982801291 374785503 805503446 682914346 758470562 514304529 569211115 595838098 641749467 488825994 632950946 2570929 558135608 667825053 894307881 746533811 826338888 33712543 979897252 795239131 824903336 803757840 975900650 508035323 770822054 574868665 754856855 813828745 946114462 245736239 899335837 500242981 980462542 362051291 731646801 523400444 796444307 311751330 462355636 130854808 204169773 176258889 828028677 583101302 889418633 667563988 750244095 401806991 978522975 177392972 224617691 666521839 831863033 585508804 629103302 930464747 992611455 439947282 672783875 14934131 573331590 969209618 995940071 90499065 552994615 675311102 754410705 674776645 926499474 927568142 985247387 285863606 889149984 257549725 776795643 224387600 949621020 864028101 987674789 125385496 493853216 689235559 812237784 382283230 600379793 585334588 816251410 451190149 991225543 147449747 816483812 558291836 731549718 417866132 515128650 786539332 849732015 251623795 459324585 228736622 544516084 392619258 505046960 68001910 607668724 589078528 907385095 62576573 991399174 144892821 950282153 666780883 927212184 531865159 744175262 309154790 814252874 833866301 926955994 62293953 244118076 206415550 676887254 788981905 889549856 702608701 727744980 663312292 855474059 887331383 974848027 674388920 882506690 3949346 731269189 857258616 993869481 531361347 725606467 459646689 459836459 809872769 912838619 644488264 783733424 961486059 982830651 698768412 738894889 709700528 866395569 14273579 20002699 374428578 991053623 19994208 709172656 289051815 481902520 452087838 944115404 821746272 970833265 863632038 957332225 879112382 965686918 29250201 447774930 866398645 892651947 975717956 976010247 329404668 498995622 818468170 961301266 291252122 312441329 831772009 974209287 108609088 432267223 148697228 542767244 861426871 922516593 915002276 926879697 14694862 201501520 363376978 478701734 655500646 676831683 523536229 918956615 510728212 873352081 733096533 922933564 408381479 765612454 835905268 851897887 124994048 690350648 759697969 882926407 686444513 816034437 81417869 466874719 720144662 918144969 946678525 952352356 846489574 971989760 505718966 604828141 794273041 950719813 288238108 959983428 622181379 997807685 566421327 746105207 405791248 750032551 55446926 994330933 55834226 901144648 999802010 999921432 545283310 797599338 516548402 586293158 171704577 965057874 801254887 985918661 94248877 475016586 289789308 313343658 441541229 898126631 897510646 933523022 183990690 195955440 765422375 769356051 917752783 923496655 74126303 588091035 541330017 708723904 456256264 465296085 669152568 826066391 76245959 787800192 725127204 928515752 825186196 898246583 863778971 900113697 374767318 862876334 845257403 849200002 726965965 980891249 638361805 831607329 15293568 219164183 443272973 560072407 173817337 492160468 722691793 821715902 31227019 574040263 673142850 703747011 607015671 741574109 831433079 834180794 99739876 954270707 988939926 993462719 887164336 970684197 823235405 973895823 750540650 995435908 272323501 681175376 931593891 931770254 132466902 498566103 723520691 896503971 821984051 875014786 585085495 979236548 534498333 880166616 865605837 915837593 796633131 934482726 592584291 914984197 856797299 928315208 432503630 945273468 642509470 853427984 757000132 913005971 730993461 852019850 90903351 169547311 371742623 721614060 392382748 600001555 954475655 984799155 795756384 796950171 93497734 289944987 34144718 619544104 5423569 558262036 529133948 795925347 962153243 979112706 423073707 558082951 449190792 980697662 167915593 432085645 937051305 958888215 717227526 910847905 522303244 707633014 976752854 984269378 887960294 966613640 693043156 923331065 237126175 459490235 941522622 979593040 31550255 106325059 39158130 847137148 239891870 780359756 485046576 786429688 652814749 873583227 443031594 793507839 743036152 818678548 489457621 633211156 849536558 954346839 977634805 982485128 61070599 68416615 270049651 628551291 263356347 980479844 705688846 754606641 621974115 802909273 695016321 952123133 674377442 702453928 739073223 833106521 110640012 917357588 912741130 988543510 107792926 171544696 425810751 445335363 701729001 946390333 794073361 898387834 547088307 593942835 959884186 997528346 318569601 643178390 484160907 507772696 447965704 916812011 987972581 999155483 992551124 997762357 186511250 268075878 818457002 948911871 772495957 850527529 462275864 891548208 978968705 989890036 280533648 814270111 601734649 823872334 468023813 758889952 257880530 494345262 347263983 729838403 528221796 614435098 166259895 888780588 539350646 749358828 696049118 928526665 951290727 959902911 5054814 855901620 618412647 991300652 482637751 797732397 656964699 790621581 855228945 859586418 603155661 841572991 240984446 623247770 284026677 927382997 403645138 437918882 238119690 461549491 407518129 915784244 579276245 802250546 125272086 609738521 815185511 868187716 239534549 453606408 602295617 942196275 575033547 674316969 212161984 915964022 660905199 758993835 273940583 304814500 677815927 908031316 214462895 840206165 584042823 924153066 25339858 57792517 533930788 628567741 889952496 936045768 649889367 690089397 560094838 926721464 642368511 797330026 588289118 950583119 719434339 813465439 224872111 728442008 924665172 999305271 462240284 483870195 990712731 997228075 397483258 825128229 891517336 912521597 799905860 972186218 841650631 879559738 897750882 967237698 487849073 652096993 900167237 908167251 844974731 934221041 775289505 910872990 260646472 275078194 159352222 849178087 265132459 742209231 815895793 852526602 799433459 882433006 139907920 487795257 703256036 807583843 319474381 329196326 573244074 896592453 159979836 311332733 403940803 422166406 408120512 748822304 735862224 885748594 154253639 456269985 246576166 733037343 835217701 889370059 233659018 637441675 43926587 925294458 441074964 535869498 520616664 603086715 881865852 983745784 49133702 611600852 660995672 841822732 513688482 955142991 627516004 635281967 938249232 941352709 20704852 61442218 696375803 889935306 276278068 956588706 142297240 194426846 267601962 270896083 631228635 872049082 477953264 938921733 847062375 961823704 608237815 984513592 918618732 938027246 53363235 472956624 234717583 787446952 841064396 990131731 421762025 604820439 565053510 840053835 684331606 903708083 697761936 698641895 372900966 536624127 447799482 803323399 216769391 277955831 872121430 940957676 636710348 778646843 195038984 355236981 246254133 933029027 943301256 969940644 133311966 480178934 52275869 588909330 907788108 910091729 514878357 568426779 180273538 253060327 282055125 518170640 581311862 829470897 631575732 945890545 929874863 971247028 197051149 775448444 329884306 451969998 62867310 310572550 435940735 653458422 759549211 987462207 82106650 84306877 401567165 770154631 350229010 958662995 40904951 451016657 870670468 902338061 119346013 422379580 882679248 998569344 279369257 702986050 886402526 983148896 342980063 674869710 362474033 806446343 800912844 809474275 543361021 781912331 485111341 660459721 617154455 991916621 825874615 988688302 216329738 851562207 662691516 870502634 778973713 787970505 856654793 920246116 201549381 770388693 331657398 332973127 981572402 982929624 687140522 856122337 822577791 939869222 439938746 948964288 206209905 259723946 581780899 854703973 519040819 849923716 335261783 466600207 958201995 981063099 754887316 814108058 41229846 407406380 775293085 974574095 488627408 802521418 189065052 978609737 368414149 400439914 915406804 978315554 468785270 723103599 779987845 894375061 568071646 895219202 870174567 945012109 554092722 987368323 296114925 811743006 520197484 560351826 393511497 613955987 777827105 861844123 228319152 915177549 948316132 950413955 820473603 911430635 427906195 659394380 605632970 950541514 165297004 853542816 123072142 962537362 697594851 739089532 159097834 777591336 979557718 986211903 129260111 380248060 200792711 223061392 164404017 760635700 281847282 524648824 205531952 700257513 171727400 695621003 101347731 524190750 395802331 896217754 200024012 832515257 750651038 804667183 244100049 302377108 702681084 723084392 459632280 807012762 85489204 578538112 320876533 738675362 856025522 938841530 802107099 998579620 895187706 938696391 754345319 940063701 644757895 672699929 356029736 836970008 295927286 992425645 905352192 935373097 924601073 972667570 805647953 985857294 655633654 681365067 210992184 763094982 960961500 983780535 824833897 899179843 520838175 549381488 983926334 995930127 709872137 763535397 590135085 974467510 926903877 955343376 187690213 878754583 942451233 952358615 30937475 448887541 669031217 759168114 732772916 962192357 850256801 929418610 741984110 753126257 152998988 699671087 726233433 802080383 427453700 511260444 144485734 803879216 879576431 939022595 620200588 982532459 154485466 988248941 40140375 232705243 408602861 876080871 614679566 892704062 555685328 657747628 531105722 963611555 649112911 829511705 508335291 733485973 256718930 334798136 740530590 847563714 863831036 987343542 654822426 780199164 293204796 441028052 564603686 858612454 859319845 893848073 339866172 411669693 586111109 681436343 644226003 967171745 146155643 785688908 930328637 982126171 206146186 955759802 518565181 757363865 654600245 907168509 877378108 947161529 985048773 994815019 630736140 845703895 670620747 723505200 359220416 559589743 265075065 548454856 495292426 573642294 929378689 963062511 476378821 586701428 654742972 666628348 60635641 696400600 63965682 481698783 314816861 684706269 726850052 978557422 327654390 895958292 873086771 952233339 351361022 892934181 644883379 838745594 3370844 603622523 698319567 895849505 426137632 449780267 1814868 112573597 751153590 871766632 741318080 926453546 418668386 951035372 572949567 802235309 158269130 908152312 743490457 860888301 821246516 868144749 564127348 588971085 598989323 926337661 927001493 976851797 8606346 10790241 948989372 971079776 844268712 946078634 937368858 962792596 509063064 956743205 723030619 829733377 603372877 815435596 501814524 718864907 336536772 887606083 207529075 422401044 696750903 898663429 587838788 680290471 622560831 696296577 990062258 994864967 98292431 707388269 315230246 884250540 710284884 906763802 932439575 955304067 426352924 977214551 926188003 980134669 593145049 761839312 141919228 217189617 198282589 837985778 783020045 882852926 305750501 327028730 853642710 888370652 101717168 441155593 982275767 983851253 65830504 254788924 520973974 796723079 422937421 596105964 408985140 434775972 317916870 346187333 589513600 890011659 640808966 729845041 959065422 967098750 476233505 485764621 227247972 688740852 448194699 936980986 353666419 705152442 518340363 977445709 941019827 972474382 348204660 353319351 250034245 497776223 645846844 904523451 46416384 445406933 494589028 803856320 947951657 989662151 749989171 895807486 480436951 551531683 256396950 701772169 514739625 808943184 89142684 889074508 453194696 844271180 599357885 961550742 730218918 942679765 524082099 557717655 240857311 961548039 960544320 988733325 53886232 501777278 304263386 799605243 378778986 497053850 286512355 879076061 226918783 433916219 846460792 999800542 972477011 990372076 356552916 753793857 990519111 994793703 712387987 896919634 87910790 812360114 179952998 780010108 136839788 207749728 595147886 722321429 167910454 726675369 365472844 800161521 811243492 894129880 857208154 932284642 493384284 977661204 920295113 932555853 946164201 948277766 316079359 934262872 680797422 996863582 175298265 377062317 397957316 995755217 572553887 968821145 67113613 399624897 983286830 991214038 141878674 693471762 745707329 954563039 9017884 677604831 830813814 923244054 933334208 945515191 336249700 372682422 979130769 984835386 500930405 853416631 446356808 641771274 567263606 943468163 87503526 101668158 825455689 991754155 384712692 655451586 916094233 987714449 904686844 943399301 710471024 874980679 239751285 422201054 504456665 602757350 953501079 995269946 978141564 985769041 786607550 998351883 138416747 767575779 678130077 833200270 684890211 791940769 590129506 851515981 543977436 919323695 403581303 924294131 349807041 397362396 400898835 710137570 924068575 964622355 200929380 518756415 432013638 668098551 702498097 861696544 139997834 580629567 110353974 687161152 490367835 678438422 509138010 739950821 398314884 480263628 580283113 833949662 830912831 952503811 692970553 950225709 157932430 493342949 958374471 985248876 341914854 525830879 897063793 940255756 652632956 974784148 497877353 832849973 595093123 872650284 963580431 989374630 217363837 738665752 516784478 867137382 373118953 577830406 39175306 741747901 707481953 877835052 437188755 448243701 164097827 873816637 313042232 496341867 725598578 981805967 374186298 991955402 273472986 864125523 919992723 965817138 502667046 646934452 731600904 767032140 150830752 637689541 24170531 555936356 757225759 769785793 521945948 634550000 273266224 972327171 155067685 567915288 84961236 145667255 468113887 500163339 490054331 625322476 834791160 960654384 916067977 946702594 9796578 521269849 62474779 823269371 862355455 956248607 532416127 622402196 158756596 231564262 102355950 438167435 635062800 646601353 786100542 919803908 709057288 722694632 451734612 855164424 565217076 754443418 919352751 924085764 549101679 870425116 727692682 944947204 284099610 882492748 423579188 622245450 177871246 868645951 910554650 934445960 380688974 887179905 429781535 894491110 578436317 786706955 105800989 863568059 805373376 882351623 352860049 966505023 684060267 919221313 795234181 819034382 329253700 546561100 911741860 912576129 321354970 687626486 961742627 985531331 582594306 952352905 862377923 893415685 22743024 783512797 659277493 931100541 323209278 608721598 250900640 450389012 562209833 592805207 138696882 993035811 123457947 126051132 669633447 852179333 63478245 479283286 256276967 984781304 171145337 736999133 611626416 960261419 398733794 619586489 542302985 779163866 528211292 545380865 378035868 990908752 14199880 913068877 199269147 887210413 430931639 705356616 494610146 596861187 990765250 995662588 126154354 440598364 418458842 768645708 899765298 974715879 24004076 959488276 175676750 881984725 466878962 554266880 562685102 811943680 415663869 664139611 369121142 379599158 831765095 921172321 212565439 292674307 662303969 704559183 493540729 659827689 829068018 913141280 413184898 637450172 110979173 917589498 833152995 898053909 589140267 859040337 637450042 933873297 347814551 664839237 11511926 443435884 567455072 736190551 907342452 994858543 103748836 763500943 57199334 786094725 901562812 940722081 549739180 825916094 39119933 915890858 550395401 975161672 508526640 662839663 792008336 873580448 599565184 733104755 883030315 956015482 709550773 959605784 177299124 517615232 461002350 722111846 146456819 982421476 909022378 973490994 989303310 995388286 776064681 879775504 871367929 917745797 381208882 765471208 741369946 745865145 590274307 910571770 710294709 813131639 663764838 742995407 21726900 48197133 213836478 954132902 263139697 435815435 899971834 903827333 940804952 971226387 979771012 999361906 161265147 458087516 574097894 683717317 304971922 434816050 506962584 975370350 474361110 741322853 706384029 992228398 883273937 985243249 160927475 867070594 659417206 869143033 805707699 897937972 498162086 702357245 63714814 525877668 692472434 957579413 642494418 694183473 316575496 648648579 673085432 933925362 463156194 670613670 122962240 352281690 680591801 986249852 895420282 990274847 288266196 608571935 542401007 859801776 73638700 771912429 435799461 905778633 250763615 981568900 281424390 741111131 346165828 466544946 145398655 779487716 700208387 807055496 148288596 898892996 467983300 627897227 502437096 623040769 114883421 891076065 742845021 900488650 171494904 860262910 453732638 747673241 790807720 987916499 202683788 986269652 388289389 408027493 890928909 928763135 719509628 939910542 520361409 886036507 735789077 826654298 353689258 836319869 724479239 953724367 598435987 850776744 165199859 279741740 63451884 97628363 731287273 983281813 912960599 961095033 242239367 619914213 666063797 673520469 207712637 236931531 941708086 946713995 63764252 865499093 248089439 633208408 702145634 764917536 334331224 719554124 432831332 621333194 692983140 700213385 160894811 929026678 128802226 834401223 979271597 990642490 455235364 877067190 818074018 926721866 399834141 814293608 88289077 325416000 688253675 712372766 987013494 995251925 839028680 960908132 443296727 497312080 579426041 705611777 255919850 900142416 621561075 780595161 98907607 552398585 824608920 978439240 675123840 937315098 81159556 507879960 426257767 546941123 192922784 986815664 418637432 931682877 886409990 998939746 748066714 839129000 77912080 983264138 111964131 938699870 259794458 673392516 90453102 914666405 636790240 739062620 137665899 492914720 779783494 992018717 449619099 897254382 671951979 679029527 791149524 907975036 383068214 467686338 409667008 640996928 107573727 504631111 740537450 981115858 660352190 746225349 856448801 973506373 245393762 429803639 870649088 971993053 877124166 926003056 626356367 917066934 26070333 599173499 385259096 595212699 588315161 638343273 726833799 803825746 413158777 986662321 614803182 955250180 774324040 843594748 262821726 822551424 521260722 751680528 17360403 465008963 599802432 645374450 201211845 452091165 711535946 976336443 210415989 636244800 999136143 999539299 868799078 900571349 258146098 342072127 756049194 819142956 564678088 915249088 247563927 356927704 260120990 404841907 282076375 997189031 726495963 913609161 681312464 823901143 500059613 967966097 659159241 934152968 146766399 961010082 99662170 272915696 652550738 689507066 647907463 990256573 397975710 570314120 44587847 721653459 555204630 837228420 23493047 159144179 887651972 985872119 453153663 581724471 665133681 839442379 708284350 868251704 883595375 912165326 840559845 881642908 770306632 980681249 948399994 993487298 951604676 954024144 748166304 874306956 26137667 965452386 60044155 774471928 486672621 630860417 805950220 906407869 84674687 238710776 946403162 990284693 347568517 473557365 162749084 363470257 969042889 972440198 97310090 112168591 312349304 396250237 288556867 975434096 195470495 311218064 124074395 370324453 801388970 853918470 545937155 903750393 799858252 873544576 797520138 941787967 567813849 896352500 463685991 944699270 44781996 580027675 894209563 959047183 959046344 971868374 948493272 975755653 665938265 819851561 216188757 362299498 394761034 480675974 915315148 955847041 191220471 354085989 840680266 948347254 826196860 870837105 517548305 682588394 370599802 826619590 944683635 978534767 656152990 986194635 953260816 957405021 7651114 991382463 891516527 942057192 21184453 55349828 888834467 915361130 604940115 646918126 306632267 444757116 394878907 792973570 62962562 876554705 810767587 828616864 746928764 775242494 901158061 901441361 294611960 902618309 662824432 783602485 162225687 734364473 582777536 816491334 437766563 740183829 771204041 866696130 244405048 361467382 531533674 766294979 858442520 933863405 737430382 845544999 635033334 861783077 822200434 915991808 919441579 950981415 874486793 942692028 512259688 523539075 466672039 498257184 621457777 952831120 816429168 919312941 953129525 982043885 156077050 932981200 600692062 813165701 206014318 979626212 877764075 920736102 988441719 990767280 170782896 643089209 924878018 937381489 48811316 370297247 179369868 821213143 365279550 530306844 160004285 779833845 84868451 230050525 907251667 940617455 737075451 813865529 567222453 899589363 370508011 651252601 766228830 930822027 868958810 923062342 491334431 925319604 135795581 514335644 585135635 814799487 222984843 656267678 380430781 441815206 821491416 923671631 229188497 577565980 46684997 952144662 923677004 936887008 237357318 382781541 475006836 646506361 209248156 907207366 622067015 758057026 519716655 914805989 564320358 999922001 775415263 991043800 272283669 572572994 959256724 978532896 316315931 837411727 38238222 912326744 478095174 559729535 829805886 887706755 517434103 683186969 16114844 443937638 322620272 531970248 148513512 615618175 413605828 595156042 546115072 861653478 556122201 932813174 491141362 808401720 72694832 196957821 493705706 640581352 440775220 605467177 680447221 972872307 857472245 936052400 888188189 994678529 866783915 929858848 586899029 757088200 940651146 997406848 432209774 503929803 432402392 975556396 878266085 978092729 470763600 639348407 301754428 663926370 130923543 829787721 63493325 332537322 566911373 739561400 233328439 576361897 750131732 854710657 202858754 950534570 953645472 963079208 694893494 953708848 590259610 997974278 802420822 967121908 541775488 865620139 302279678 525626479 213130334 842929676 337640367 774577886 203863997 586798541 721373160 768016294 73414457 775273632 265852063 800934008 488591751 897884314 849330380 958358060 353014461 912104707 433323894 570155849 902844092 944860470 918219841 944378214 920101282 944768804 137579038 277079034 219533033 939669284 247861907 369870267 739068301 882960528 734533549 966031661 145615319 203657115 578705569 851204893 343677439 684936511 450090363 655388988 395411278 985789932 963820368 990543254 97137256 473238826 941064421 959950886 669922915 756718509 297196543 420805858 263994332 903495632 610903814 753553772 277663312 827860974 778179567 883141246 125022365 818478940 491551170 788778931 814706443 842072747 407983256 708494494 993541423 998208661 619982064 901391573 82072172 991778175 534901631 565852938 881887430 953149602 480605812 820029775 464277929 780335212 779023240 974299173 769007711 960732147 405339762 455476877 706008565 988097775 595118594 709210665 781363149 791435501 167581761 550047864 160005580 224567976 478280298 926944591 864486571 891120630 627374000 816034787 270064802 285047206 659212528 679788921 42143142 147291618 683929099 707950721 857241532 969874489 112510137 697486078 859363971 942469704 578117789 992076938 495958929 637073728 260733906 832131430 711398987 822558054 282250427 699312455 505150884 648434485 831197376 970439617 110189054 927894604 813552547 920037710 641999009 858698975 803369433 907026571 85417390 852728069 656777784 847432599 941830774 993057289 307440183 682070048 597922020 642807606 436587286 634551727 824326530 866418284 85182053 854867648 939086607 949340987 532449969 841425312 348930764 503705905 710555257 819934411 637900542 739711884 793159620 808461181 645188106 652846902 292361929 911946245 842646310 981363652 530159042 792855598 229361056 803659374 445653093 575245963 712787907 961629138 613628209 730470200 78964320 306817220 475003836 689080688 719816396 767669103 248583645 809533389 998041074 998278647 689480312 803255308 587998205 747317156 153361213 163213611 613815635 883472117 401691304 668452868 28060641 304824961 453161326 880161985 305978806 616296705 538815658 785113893 237059734 959402821 518726044 823544054 18831942 84459300 965669356 990784838 205341617 712121317 71323917 910648603 180205789 244008216 456828163 711351298 453265486 643434574 840310265 932575779 760369297 902252979 222183881 653657847 316214826 491047145 358016292 744355083 961946926 997918889 699709980 838876083 703536891 823345476 233919866 407557627 156983681 690482261 995271743 995374821 554905183 713494814 358468532 527652176 214692293 505555065 903320690 944381782 875652171 879386868 778557689 810345634 951589385 974194776 226950735 617920487 89186829 454522424 61340306 950241268 591965945 948401698 106305042 433440433 354607368 622529830 550319095 616013167 320300872 358955084 53662871 146778417 602769716 682362921 640587301 651100087 235004323 932785560 345760496 888124901 748777843 959972582 280383115 755908618 935866680 983978612 631201290 903724175 83289059 474396057 326241430 994951685 673555061 878028262 787165528 905653227 253978200 964665165 87981907 554901883 339233564 545891296 177472805 440002565 772492899 964784267 346163726 553542250 365907663 539639235 558650500 570266300 734088017 757036392 539474298 589155553 894263725 914124940 796925918 932113366 583212208 631684040 643840496 691522641 974819859 999384490 999275540 999726726 54832861 481348494 639452744 654839863 739694771 750207328 433148108 757678997 237446477 379148281 232429993 975018146 139092850 939166714 620337862 693590613 784139483 838585228 144549392 800744813 475238913 485186107 440733358 626182105 817589634 849954178 635770199 861743394 289248140 752635894 568406847 603277767 224459955 805381100 796246910 911133916 985682404 987936743 577030928 945475691 813321100 852577853 452598921 871692404 655098884 863295800 99619655 605504382 189644062 205873813 698764667 875211971 491607709 990559246 279117167 824846427 780313370 954707288 702750531 948549823 314104455 966879907 958010996 966912701 738648026 851283911 723121839 810779773 686085608 890451125 491250177 690200585 807238215 978265496 711079841 734360317 733712913 865467659 862989326 929315233 572335938 914709236 600137901 864864945 719911255 902337648 130120493 726631461 405362529 998275724 258080396 446124611 23992294 901989786 254830586 531237559 36830242 162295399 455195044 634997420 357903978 759724964 410810777 487847045 257190123 683266045 814927967 987621400 546528428 768414285 694741830 828542672 639140311 916233382 982554312 984146260 610788422 974636337 128521629 529907975 454156935 522946314 72952271 984025211 589216132 716828717 231158445 669652937 884569972 912793038 792062339 816010220 797836813 918116898 570516644 866353586 728292474 910275183 977934931 987405315 611518496 634877802 933500426 972663112 216968995 455049508 408041886 973185711 33749437 472329941 97130793 398566488 700790332 825057147 542860297 835584429 231777175 798835264 257067389 798303326 797770925 871327319 708799249 736769132 188489100 726462068 978956115 996601805 775321518 812024995 611078829 655341612 387351961 666694760 756562784 900497094 550843754 584718890 485593666 719582505 859657306 996269731 861166926 983864826 366285001 737053259 751062597 786397884 167074570 990548147 800690688 823040717 893667482 914622086 369346632 921935778 432727571 600136400 421956817 481976389 206169477 402601381 622019666 705865690 642685503 823868850 900504470 999731944 617356728 931338614 300083595 606365930 513161666 684013042 905227278 927206217 378463062 820212326 585699591 587507773 152033499 349554741 992529815 997367956 686757288 722397168 423965906 425487852 412859519 771310175 254461908 262400009 526928249 659535585 882568226 958812298 20861704 74940647 530321053 780984175 687150295 894241352 690851939 935041123 908930086 978966601 140417982 273493400 363501716 388077397 328095531 331947555 571036004 908596870 954053167 955152255 632689287 769259676 869291899 891048399 611819574 697289191 506972812 884373287 363782856 369226557 116181036 981198195 183694426 496883237 993510007 994150900 566315630 684195784 837833546 932520059 417849637 889512131 119560020 839357499 113473159 249914410 550714633 667887724 965859032 973499610 713853876 920850191 921264706 941056418 975762534 986013110 728006894 824303433 829326811 970419053 46594076 960005056 968323349 972101462 746703958 922029915 512941243 638911047 908378259 911504899 690816238 885543273 994221165 997097021 805965736 935713333 135178588 271669375 961966628 979414435 117875735 601071044 464745395 750309039 944572345 969326343 612463408 763398161 224369253 879806581 91803225 533528346 354639137 449813917 253839630 795685532 854068185 951968300 767051160 847699832 361364922 848013372 613566823 772069010 836644788 869951436 789633408 870531215 647089203 988312630 771540518 841816504 88462735 376921659 758581107 775095286 939981292 975406148 690381034 900711258 436349344 545764944 350832875 909403250 508923648 626114128 193013614 281963562 579192233 883904993 88446165 889095718 65710085 127601686 746819438 997336851 466474386 615069784 819776847 985165918 795770047 953869107 548034206 611496500 517665848 622058972 785944289 796116835 453012207 675931859 789722308 992537433 380145047 389022947 631180541 889117864 840102456 895787904 261264187 692866734 168122682 653128263 347452814 890751741 279292908 347840876 628453973 865415697 310320996 593571341 742493674 937629165 793009234 943107539 874758078 919206100 180555633 303669575 393043065 583218255 46505593 661247972 671986647 702873846 837052441 857340640 595054588 879566995 450090009 642825032 883331834 983551448 166275439 885866247 395918234 585292035 779654555 819365862 416302257 976372234 512634355 690018576 263895708 947167570 335887174 537304573 530434501 839295204 411394086 492692260 985853115 994891753 668215334 881860624 896656562 945182695 343915551 636778579 56416526 577899872 387584635 737027514 214792380 837898126 545084303 602319512 757898601 828887837 789948140 883885966 581478251 698557050 810424915 920592700 573409257 662305147 408944586 695826280 610084518 846284151 39645868 719293625 435368317 570090456 152726161 493404053 189934508 221585851 116732551 176525913 770283690 838327499 325063172 760162029 704953903 959644676 447833657 587609062 887466635 926695451 948703549 956733227 965774025 996788444 341736929 987296533 844426458 948324562 506245097 577706539 617034868 755853514 651523760 790090195 598241975 990904917 438635601 490064127 315712200 688301681 543583275 912209623 288948008 413279559 25871309 729975389 445943014 891197766 174378688 208405354 552217485 584032720 515677963 625616893 28281239 700770925 140162431 735316067 177133353 895372670 815664390 999418098 832014623 852310413 293010353 558796054 89353843 933702411 949009964 986537807 506491500 613292720 70655867 559561302 956933333 963724295 335610898 859161266 800199173 844321509 387387530 598274491 255979958 973562875 586587611 678730096 276887955 362996431 965121261 996627770 429842123 945416737 14545843 601803094 95983679 817059461 394401534 865991591 705777022 717580823 302678502 550278493 873318643 879003379 132459259 220636753 158832300 874108992 765852436 866571302 508298678 878784307 877176230 972423807 420579928 584552871 736072202 922997248 525913441 927357544 422219837 677143937 220122893 987136536 893663309 901542754 742953893 912819226 86881763 291439926 138167230 938123032 594759027 662964168 294144774 985581396 712618498 857919196 223520929 858016341 701197769 760019330 752718529 907634226 769840676 896262217 593071244 996307045 49492737 496992438 947129875 966979501 938490510 955334922 830991210 863810576 637233024 960493363 268607161 316102553 113520426 741321905 274030061 482090176 803991595 863259766 177821995 331465217 828784640 984785635 309101899 691898202 952883638 969722157 580417049 989175383 303229493 989289781 8802752 891288732 556482604 730271582 662419738 826023753 699614261 776778521 876308202 948642386 823151731 823343703 292894940 505529029 907206568 968671425 814421264 993782444 679980052 980793386 240312660 804461212 995340318 999459570 57374928 351734797 460845597 489045511 703149802 741923733 655509978 714421824 346924383 492493390 528021090 833574048 329670484 417453908 875366028 921915404 61571650 70269133 784072025 996418833 334371422 560348704 347614335 771459574 220735990 528454029 733522948 970737982 800339815 959755479 352198123 358135372 18811753 379296803 852883345 892569140 362240533 648803222 875066350 934329197 273513773 809569235 945735791 978715855 242919515 657411004 850332390 969241557 304730683 610322632 97903010 347415143 682551545 727442162 354340269 602508719 96485362 894899385 213167277 997966582 699812886 783031108 379453669 876103835 292800382 411675393 754757953 963384320 66317596 842689895 359291904 511344022 53954516 504131629 847733566 867499466 665906863 668680638 227618517 750412565 130898345 820133181 75765698 924777194 6973317 881860291 746624661 890628768 222437740 360143051 124865960 240123488 748842972 958203671 641967628 753261010 545147487 898151542 774743404 986518712 717185947 923710776 475678565 476123142 373281583 885571518 978667555 980120158 952964759 979926691 305797761 312328226 286523905 876561380 167571620 307239938 811333396 851107202 192397895 417535106 947629397 954892571 708010130 968660303 526753514 889911828 137094644 597278630 85347180 191557412 83139908 700904919 241243078 479042152 467531577 528046298 141686392 604724740 178963709 591947466 195329245 461236514 106854409 385914689 88278169 243046490 381874268 624282693 765840839 855948531 206418996 901376961 927262222 940085451 610006318 676539933 52179018 620346420 226551489 587681886 51861287 485748300 552114424 884939833 733787659 837181185 854123320 857665341 780736891 802615733 906807327 944157983 629766569 770587146 926836924 969457552 758051159 856533168 552435518 856253401 143675484 148913425 289260182 681387445 356462881 914373913 121876097 189919652 918563155 937913398 715904163 926055076 813618796 850540685 746028862 863137748 572203619 601672370 422631255 667364974 482735432 999895854 605850950 752922049 636450358 969485546 611104516 774095934 282260580 857912930 107054528 236100517 70803596 511334050 443303809 961786916 247748085 791932519 102900665 810001982 211471714 432663563 7653745 239327401 231008618 504755222 389320318 441420965 427041625 843430216 875974177 911429518 948565054 987071601 440273293 786216404 450757086 939308633 128463545 662727122 920380485 956838700 417429491 756324109 989341150 994231945 761614227 905997776 115886031 325829490 101458926 837967293 772983859 816620666 23305929 907872732 378478616 527646843 736609523 797471487 465949600 470537550 347242724 477266687 389901152 657200091 951184759 998559121 789221560 805026632 647704891 666829258 941202546 979328521 541409766 932846838 109237797 908112725 644851965 795733412 241728145 383483339 853996822 896129921 219651653 417824865 878303859 909006149 106685529 640332273 382066472 460501620 463269344 869296968 978164597 987979697 162910325 778424130 455274129 867438517 245845047 669297665 217415309 301636617 81833428 913136639 292870728 315016125 501245541 966220870 657057853 838401170 210123571 457443406 195450414 849423896 111252008 954153359 715094101 878837021 186626146 950227993 46122024 423697462 570033666 902634376 751475087 839796231 183090805 485166088 770502350 867597376 394243313 830658206 67793444 577095034 616949179 904976018 443192276 474657636 757685227 992753904 691669789 908943306 530192838 718015366 182004723 364985102 387397784 522436151 767625233 806709125 64419669 134881983 2649194 513593303 291301171 570862487 876855130 992769226 429127575 721724933 715266682 987644433 607920843 976884543 59670603 705995437 346354478 441194563 535391283 555210120 883682174 962904466 350961996 854414448 436828969 985249596 839702075 873572826 516861059 942572220 330984137 467652786 60358144 774591018 704926725 733386996 393263896 675804811 39651655 96646944 734980296 768511048 602681449 979880594 62496149 719407086 702478066 740459938 904259194 949590045 107631720 408267350 214345036 561680668 131849474 262906277 49870000 755237178 540991322 734479490 74538479 556992904 94375459 688872164 635602149 698570775 41323172 726602816 129743856 954323418 691433094 893230016 813888216 913348676 795307618 797263147 973313597 991639957 336894411 943120888 733361359 852379047 186545437 319167668 857952100 858067249 350829753 945912066 276431985 763016958 562290359 587390553 395035671 496000407 903978671 970734327 706508078 927703978 196176765 447158736 133528146 892345414 357569417 447460272 331710336 875239881 817399777 891581533 449250992 472413056 211846387 597195015 167316496 982144939 919217783 986314565 259512121 861772171 434363195 560277918 883707764 954035562 393776624 953604263 922510899 964809978 954269898 964039514 753698965 763075904 312955567 379180965 34177869 194526505 932424379 941382445 154728414 268020702 681584563 811881681 262618581 773936422 219323421 356265838 78880678 497154392 858005109 924024563 99774949 131182254 484526031 954843854 302170867 321440581 169306209 348340832 938616790 989460124 329688679 855752922 457445562 699788626 899213104 937252306 705964180 935800190 242641707 697135293 497948538 975400907 705448644 859389869 295089224 883181773 233710354 868924535 328952339 633354456 287493535 442192644 486784517 917070087 844171233 864633057 573378510 730585805 752572346 866041847 698152224 921187597 871673034 876918488 287100132 605599141 912868205 922509788 511604618 829827081 393872642 899446456 515193819 994728531 489754224 968933186 634879448 692260238 326487764 343425905 281395506 435096327 385972318 575425260 130904714 407584895 809732261 995453283 326641625 512405431 196672763 762113289 551283443 834709407 75710477 742105677 313385668 381578040 932565755 936607229 943533293 988488876 729681645 768695349 889653291 908611241 928182644 995751266 502652613 993847195 428389331 852043485 809949036 941994224 375253845 380069504 849394603 976545211 706372344 790640590 501452441 570470282 662518080 713439690 103454959 590788233 17352836 309189463 837689259 852514999 79996867 792626872 936531421 999528691 115389448 678797192 645409025 722836612 226305564 842681183 25884894 819016702 501754271 629703393 723226456 836677307 890223651 916659263 339184186 526733516 950030326 956299890 63488210 956157573 758639409 933216409 222563481 976231204 889697076 982048457 171314380 741499310 575687033 859270526 928908526 954015748 29874087 256298526 930560373 971982477 341212188 730976465 352692574 957302043 933762600 952161422 178440359 712014409 207575494 788854621 754918634 796296646 348168351 592951903 812815101 864014021 792582754 989681688 668602097 763898750 742079716 890041583 893636350 962069234 699446586 781429866 937959986 991503282 110254039 559058680 526753314 627010931 649361501 855967161 817724982 999169266 307444187 491821178 589860504 905984111 442055004 789848607 128994060 434848541 799466287 846701673 404646159 826044782 164564532 281210361 377735070 569489351 480082051 753829554 633575581 783073132 152138995 802663894 134525189 860796028 704355284 973856523 44564898 943387359 531179146 602911246 863412796 930417786 862446421 988428136 12641269 475646883 258659156 414076528 319769379 334739561 275757075 862079232 376155821 616760072 456492544 510992290 854905973 932944356 698951328 899138447 630432041 946530033 305937017 824373087 335607034 992378260 231588572 900957207 873525835 990863545 471126194 969214055 675002223 860706471 663845693 869864028 357360508 882626037 911760755 960627098 478070524 878535031 819334421 978748729 219341750 790292470 199667585 660146359 329964912 543240312 358488101 607279488 943829568 980265029 364153665 711010884 371536379 855274556 279879218 840477453 532402978 951360100 964483480 986579137 285029587 933955644 469423905 501795001 293856723 905515109 236677627 838281618 26524572 608888945 943693862 989702216 855462962 862991460 668708084 961833851 815431365 880372205 720388619 748715255 919804691 938522955 331311668 706733626 191549530 235876842 635580728 865895160 662626949 950793585 873231946 982558320 613130636 670677942 991702732 993356515 41225504 521570868 315742766 720043307 188827572 786382741 734133736 914655929 896100309 998483224 616435066 729391059 403441808 799883185 976337258 997175378 328013068 971306861 696132666 707995062 456142541 554248750 437208060 874894757 423906314 554924973 381906604 784127428 447384804 608348493 902292626 967601397 364910169 530720926 729422093 963242528 729258027 755453240 306971424 990887345 245572808 904664660 700852479 975193863 855017184 893769304 563394370 826701340 742120166 917597243 923252548 962220234 761814051 966926282 7659846 166431855 151705747 838981176 944470818 967485691 413740159 476838352 147386992 783462804 42498709 66397590 177245832 202164646 640119017 778004834 800360298 918619972 764364394 976407717 992802709 996319224 265211188 893502601 404297884 422057348 290783758 389923862 456213820 894630556 429932006 631151767 369282827 859187673 946617163 999065732 231277822 731319380 934708963 989615656 250101390 461222181 817373513 817940028 245597142 606295899 464615020 507128235 703181256 975378589 3804473 740555261 548022132 839174899 969363855 984794840 796141398 889326105 179011869 552233743 579722800 952845417 175068975 493478531 869281515 948376619 523802220 806303604 824968215 847573226 763631348 837764650 153250346 216391192 153531852 318009028 663729891 726012484 209776783 869678184 666196318 931729143 58935430 871971901 431157558 879079723 858818295 957759789 273335639 823096498 288018421 378569657 639673471 793542670 384714589 997667546 698057067 751168988 884542589 988095057 701337555 985675020 862628394 880210529 590305179 990198206 496305218 660287950 912116840 989036107 612803130 682706080 537034592 913465099 259357713 981865475 130629920 238768538 439605503 566096988 466380671 519644477 862443574 872266118 523529203 704522675 677641309 902432688 915083231 931566142 209981374 219458279 109368283 356788693 396477194 594627352 977045983 984577085 520810226 670531079 536000309 706702203 717393415 787210690 339948756 517150047 623598576 629255933 10049886 692234480 631718516 842009365 389427590 805469058 223469210 536590104 725961242 925924405 173712616 618845993 617901615 782144921 937380674 985004975 264305018 764960531 570120117 981306375 672736784 713174660 124163378 676380369 153462896 717914055 163787678 392400568 984561703 997114296 327208372 490031596 991379276 996445517 260131323 986881285 54764299 564850552 572892376 936210200 455068718 530056556 26380615 868828326 659591575 787985135 996998679 997833493 287579622 989595349 362345522 756350558 674016705 989599181 273256408 592969318 338621232 904944963 94212015 670203577 445278967 949595531 556345342 760094268 99646669 947561018 650698743 837816441 424131350 899559242 416651740 958327690 298940724 631000538 313873220 751058569 413427047 655065899 331067035 563303935 879295126 974279566 908699333 996031471 727616343 836167246 212661238 358185435 669537833 959250350 85758232 448244182 956853531 969536544 161375245 488569109 727830319 750021117 336725707 967675323 515782850 587366209 393423955 782964414 375396678 730002485 396289246 572611056 669378543 940821295 539898362 898074930 745302141 977093077 774748838 795742840 95126824 402243132 545480367 819835904 308685550 602276503 386666325 488663737 317375336 908049748 726988169 741724063 246413289 455610409 549639142 781135162 26100139 797495858 656465822 955541346 698185980 788095471 809558395 899267841 972519010 989126059 643179421 895565238 477652599 834492088 512321580 716471175 746368900 844468085 670193255 979615712 898077439 979758436 88249484 557748720 759501039 851384251 249212997 899599640 756116221 962491941 209546363 965775262 105146521 375648884 269074895 804297408 655379527 712611047 186378918 732888696 147466589 952534092 833631393 980981766 82505555 937829401 219623908 956426597 221651336 405148524 6702494 795237144 997794212 999797069 477788002 710367530 81609019 897175568 588789617 879855171 840562496 913638932 805320165 930099028 3251911 503154414 277971274 988189343 699622143 847894562 308661510 451991278 890624584 917282118 338542884 750327074 620684830 691658438 306656689 707618247 895637135 940740847 483232096 833510367 499286136 702300258 956233058 961645059 952684563 994844723 748277269 912419771 699098465 969293889 930020489 996567565 819540936 901086488 45958123 653883775 669474373 863399718 44802974 676728754 944032011 996469883 581515814 929848984 654981011 727620371 348623104 799082799 355218403 664795767 98200838 400309779 98125753 394878913 543002643 683666287 56531695 363671939 70443377 577199602 492916008 554237259 997550759 997687015 92378480 143828077 424049114 715064297 446912531 972905106 52810491 725389901 87244460 646419834 998843468 999053428 785350961 885720489 692725836 869159624 180751894 638565568 617492591 661975487 697145148 739841162 261040118 856467201 572691775 829459261 365804222 646613443 639455210 844004200 747618968 850278207 918812592 976262157 707033747 892651397 87853994 384105865 704416628 745760024 210091547 557102229 618618270 858562249 472725829 996583740 672634744 944648279 831273851 911784133 538879578 830649164 971412899 978237177 263353156 960540711 25417372 745088882 694550665 792675116 841385093 936901466 627673144 837707359 515302223 883248340 927306609 955521857 209454911 279092812 259240089 388693080 629889344 797975125 60121234 126952329 392534849 448956673 551903354 757340955 925924098 952695127 217540018 266666260 954881756 974581381 214157730 255954502 584638212 781454706 423976242 634799674 212705482 893693798 448061469 471284832 920492080 924125281 408801861 836935754 746500939 883049597 489639982 496415450 685232907 880676744 387625495 554869523 956977216 990173074 946717971 949686344 546884979 576145490 668221808 740584589 137175020 308545966 780311337 962070889 284084 716419771 755248114 909568187 184803042 595669372 749367345 799802725 393151048 451726446 530592970 572273216 250249645 902626342 578053861 858975628 213894287 391499396 432204104 618102029 908519534 949096914 598891148 907486787 625900455 689600245 912907936 926108084 599679073 645551862 358478024 596902453 926905297 940880122 818654674 962638754 999912487 999946221 846918149 891556819 833991238 982640027 888761986 971920367 731348010 863217911 178234149 610836591 267164149 716361414 219550345 784429744 553812391 584292072 625822568 907439918 820430494 859530431 989254530 996440649 191292557 532490796 307785118 622939528 105231061 337964231 160970140 189403462 800911732 929265431 954787392 983039160 94567008 689818572 626028045 745843954 132538900 750472555 526375073 569385821 250820410 998767712 871176361 882861064 286678665 642854956 932036586 982088191 783290442 984515805 118848766 459707794 822425588 952655802 497357101 885521848 640399400 854162251 465907998 927128872 689441807 947094348 253310739 287703410 294972378 441269020 589031818 727739643 887814326 958811379 326628903 427667942 613814614 745116742 30384612 347301300 769609106 824973145 948584664 958037067 910208620 963777882 86954941 827925059 643383436 693549377 598965756 855182363 428093140 565993811 133385712 825163328 305852471 855179815 810009630 863703011 439769256 527682580 676706114 884678832 653828736 965348235 869865363 936548693 427146478 991408471 874854528 966892010 919297532 984133108 616447498 871811593 806933689 880181989 653148682 931554193 746303312 768233994 474948980 733556390 176698294 594428153 242164486 744568012 885592364 956554141 75759298 982526225 82601023 754158356 463994355 594021033 642051443 867599151 352409748 626355111 993115757 999765186 655670732 990057117 10351923 541244639 928074927 950904854 883832289 962896670 321415998 750331727 521442753 578205713 162137963 204714249 174412403 666144913 938541811 938780498 128599827 777540468 931688720 932134902 320880144 409802787 254581651 826601520 784527134 848972806 830953440 876798762 5097870 900032690 794875693 821759561 637364336 809548714 964598933 971349954 863117560 919580914 285758386 727277335 57191928 316020658 670805014 731335279 458788613 733827396 974557175 980054037 939246381 950474659 411966001 890535009 525282472 568291950 118009553 925666779 666509239 770253211 964647767 988026094 708443004 951676309 585047086 767843793 134017776 473863906 275233227 957001754 1387453 359630859 681649116 837589098 920522796 996405168 766036332 901388659 89333860 514348611 357598582 768503771 270731068 657574351 520520665 751048280 481855726 750593973 714894381 755128828 645646549 924163867 797745488 803841158 308580298 681236479 54253480 793537237 318969481 555626436 129671466 506435784 608635244 651829214 446477772 448689329 995648360 999597834 762738418 910063125 191116815 543413859 814522056 896874329 610369482 964390265 785242089 930462740 990545756 992951002 661972755 911681280 188790679 847713375 776882177 988198834 713167263 956545222 306774527 579407435 787300459 838669510 280094607 535089872 830255352 952907439 987478073 998208208 805571370 923345524 924197866 973537315 386368774 676666263 821653123 913303512 290792753 561197150 803251881 811857983 286424064 413609320 762497885 976466668 598616782 951943018 544031839 681139075 226053962 614332183 295044646 549655592 126790639 339199099 515230688 661073621 975526334 999451061 634270012 929624967 450091853 630193578 825780168 907220909 777875211 800553637 300144364 770259908 423267399 844390067 420914199 894327019 270703973 537975330 55021262 989810888 307427371 374790040 19032350 253676413 174403200 842624011 89421186 703829647 348768617 746411412 88704125 540044478 265708472 367084069 649408567 881599587 572096707 740622337 438089399 892923240 991026429 992883955 418998887 624504562 233113948 353771881 29983476 576932343 786042465 793876716 95838217 661695759 839424358 948591570 845924176 922062387 532868772 822927287 388709707 513151634 325372424 607710462 670217053 951505883 422424101 759816009 907020953 927991708 568587265 580078805 877827672 988603272 946242943 957971283 140824219 532823260 822735964 883456951 829294101 840222622 128341155 638410376 522998803 909266406 8958913 633973989 504126525 956694071 804032130 878522748 359478914 454708980 175695658 363688095 268251924 309788487 236863331 440681361 483843573 535654554 871675731 927870216 995380669 997892160 476351641 959519544 952219388 993434710 668359954 841814009 854045497 969131023 255622658 692548019 442783180 967114745 924559714 973018152 276437081 883407773 10291095 679390956 593326153 692038819 786643865 898990213 330755712 889021138 442621221 659003972 336831529 676426671 117179084 316482284 60397058 75327245 840540448 890411395 778192149 904321155 998350447 998939092 404300826 422317945 347433874 939432142 280440232 658160579 929161711 961564249 925690220 926858200 779075051 793278733 82113509 412476382 842249104 975847501 514911320 566579395 887184954 888364164 114256290 148365037 757777194 848078119 993488101 999566272 846041810 986220344 53298232 986868817 636429128 985525250 111386623 515743123 980509848 993122079 534060611 871001495 490944161 943449115 860748526 934585807 649480968 857380328 539681255 638287449 729435499 749034387 749047649 835384309 697165837 742247278 250983670 810157967 434702282 441235806 784417199 853001273 890740976 973798213 915054480 995391984 705507752 750344334 899575236 977196846 220922073 796987079 628127048 997258682 600911319 966940334 944532137 952991087 416747971 515613448 208730676 329919014 769007362 805559408 452069235 667058993 241573415 436591254 97434895 318964911 343598051 989934099 234417797 489479357 755144090 964562893 117546966 799834993 393088049 539393265 789583931 870601106 305347394 526222798 288157539 689889578 764199947 847837497 631477211 737872568 855817138 897215328 637111289 975901359 859281377 902702123 991830995 995052022 240042480 599367056 435232635 760882194 676100175 698470326 356760620 746579378 562483536 770165970 193422101 211708587 631080662 787421834 113092644 834529640 599355634 692762958 278085152 604361537 599439448 953361352 529471027 807181348 432100789 568349158 451813198 893966424 510343035 623878304 247706589 473461800 446574312 479689624 952421929 998360169 770054676 970200031 801328811 810496736 601406592 969186739 910630212 944344902 706971363 865144617 208195166 796506000 432218599 757234109 12253826 166032247 69894366 552335611 987312937 989906289 459795675 759808973 76396646 582235936 746669109 909535193 729705140 947099727 828155819 946278281 503004427 781852509 658831246 967048681 184305444 534978220 108777435 953128276 762118818 950486307 208788854 928266717 155325547 967555263 19626873 316974892 319377021 561262251 707367220 965630906 184547172 931623591 814225906 976660451 957235808 976075928 411619655 434434787 508520063 914587653 921829928 998421869 232607361 581077098 402893206 818684264 275734198 958613380 904951779 918630626 115216899 670674973 968646324 982837494 313857145 383326250 122996317 457990897 210233738 927348926 625043153 933199710 509783731 887472531 296530338 976327575 260205499 417633963 723269911 731053228 864469804 939875880 499524905 512490148 582354121 896298656 715822504 766660663 174030101 233648165 969619362 974725029 712994726 779432322 339978577 780431652 70599364 729266477 254055875 625261624 334575625 520823126 44365148 995276887 213612563 790324554 654687957 893584452 720507907 989445025 555287602 925695910 838333979 915196221 158253330 457378696 333071832 932890102 137802207 900186697 82789397 589423191 885252891 940007244 660505785 814318202 354038787 870209287 266722558 736101180 911432593 951163176 920775322 981239236 146012972 925902219 492078131 673657277 109589929 927236649 195449795 238510524 36713548 386993297 511125091 625174492 646233654 883111565 342305716 996024148 162726994 870093514 622756716 935504837 841754890 848763724 198443805 387616212 445393474 876117946 735290417 962924965 760895687 862946514 662205700 865399602 582221853 675042108 436240831 710785842 574171059 939309179 40218173 725057798 722398812 845853998 441893272 859710033 261629394 598055352 830573682 851687366 869763530 951804519 221125138 760320770 226116282 549442734 824909603 984017042 945712328 957427455 683637387 912421705 571181947 687915008 203897239 740995752 463718918 600718250 167213450 394466825 22701919 931284900 805944459 989758744 771992071 966044752 484765787 622941975 82115624 417121513 28870348 100715333 256152731 723142494 145340936 508252010 224017191 447001306 931581156 939586489 231864411 935309608 767761860 811805960 163682842 397491497 886393253 970093636 342129897 400643804 980536891 990665926 767041209 778431848 619874658 886490196 215882056 392650110 776639128 993110311 752253516 890333610 609987050 823632686 105571754 771634327 324829560 418770291 849909426 854080311 592032229 790281095 227040664 636130205 685516522 789073742 755405168 991046351 935583239 947633976 753289344 789605047 263679154 551580092 314963507 479411308 460397725 755686357 351820596 662962273 798347413 830760635 749407725 803773575 340722352 371892801 553024956 563459873 587652943 879753014 943348396 998160063 194967749 676720950 419463983 441889782 412218826 614155833 71404693 138667016 783980697 973626475 652888764 904671407 360561229 420419526 931979219 961135468 419496850 538255298 356950187 705918116 237118359 648210156 750926382 934875266 904887971 953012422 493271186 552796345 44826282 393035363 945701180 998273788 596137134 839902288 937267042 958387285 821325545 970671474 535416965 714614619 331886026 780738919 971052475 971952462 402543557 922621465 449779398 568528894 958144072 988618311 304071240 649712682 588905115 805206475 769823874 992326354 19591827 839047637 524951488 970964283 90711709 764858644 665647732 768307514 911528295 952122888 977723074 990718722 335532020 620222313 83671105 482989706 480869463 854864819 771607506 850185910 297352783 597359532 770978795 819361174 460763828 576129404 318008723 665274336 581420305 996707806 450962267 845756406 650034719 995225894 985073996 987728613 757398102 965830919 8150262 927608351 507592703 803719729 942078108 943734785 403086797 856411592 555552523 661534309 470897961 685006329 396719481 839611471 522070505 844822100 646440755 735578650 302074013 799359098 771275570 969395727 174029793 252537810 392557035 593667725 139470735 342047163 391133326 998978175 308588946 785087420 845233188 886660557 777891853 930517821 783120690 959995269 794394774 992025319 679587511 943175638 170020495 932116947 212588087 985286030 61934225 652956639 557202266 621105872 385860170 562668282 789469673 804980862 877350427 888083587 883696802 887788622 689377267 966752927 742983176 754719436 20523036 301793162 546324389 969735415 303884783 361321549 148932498 932418272 346601958 610119389 586604296 873518472 101399109 850204636 641780434 848323875 42342322 536060880 480766624 897875514 16021357 69050454 213289416 589672509 906337515 908170697 681959920 769392223 252436562 288359205 775840332 913974763 115120673 392665425 237578210 925403324 520195150 639442946 32163117 438610881 659968239 917325332 323914670 683587379 874510447 977953030 877956032 895035976 374843049 613416848 162700108 191085173 671424475 967534424 567856156 695744156 753566514 835419337 779855608 999970955 697620718 827199607 369612035 731616263 774423460 819586078 668477014 811188162 345414270 574183992 811439580 939660938 480038068 629478967 923917935 979041522 284670312 819911009 495984654 729377309 191697256 526579174 404778983 468735049 148334690 789441845 377345909 993127168 464785501 767371027 414189611 780358423 257036540 715862427 805410261 989657494 936607643 948159798 432102865 991312638 729765248 951643006 819017187 916690650 55159262 694240847 798983967 804694955 903302676 996137925 797025274 867307901 483968349 846619374 215455744 436468934 557756447 699005751 730324954 779719217 286400585 825033179 527142657 800188464 25119637 857963556 412574611 753656008 742878241 899222715 71098900 207037941 478163598 971922532 82633474 752403533 112351 315313216 305802751 732421806 477473986 702155990 862946223 898515975 30113305 978371129 9721423 488738003 719741289 731428884 254295563 258483287 864761696 930322920 594391367 811314636 40984584 591483012 859092945 889439026 38048612 711135893 750207107 866654356 154325961 677974327 806127004 860187709 844030761 973804155 466942180 596567827 561365657 763274573 741600932 763306999 634082341 726479981 754088828 840510656 446541258 727708381 122166431 146987591 374020273 898292130 91825554 832347815 737461062 785042128 882649141 992495783 811892220 837762855 167470458 569603344 752513775 931611051 637804377 643030172 803774919 998583672 673552133 687527594 763881697 784458287 571040464 854440519 35835027 516644244 385452330 949909622 948064568 990108172 867089042 947512349 746487121 873998530 747249662 923366035 406323181 682660858 490986616 969363867 35005090 197327444 855471746 992074814 428860977 676735765 61988811 362565238 866072643 931292226 940307658 943915351 328883281 736251495 809943179 926271632 874054587 987472087 973975836 993195269 90648472 438251705 841042896 907531930 571638280 969461447 353363674 769453218 698810258 726736409 203694469 545449349 400972174 932606162 200799371 510827109 792321996 867583823 934414281 967713654 76695876 380618583 152959985 924339533 198023696 649309170 134403762 950424719 320024432 935396642 493229972 624817211 688396351 697524627 694325117 776883191 181383168 575393301 293694598 622374541 792186145 804764726 670412494 699132362 141397826 605551025 593338088 786909847 312330919 992038526 392862349 682530213 825872866 896967715 550890804 864198319 927979191 959817845 94792421 424118164 927394537 945613429 78339033 432138061 464791991 547434058 587833234 668147646 811391986 936490233 864188158 973807252 41789265 272056478 754674846 953763767 900985172 956735078 958253049 963750436 479477406 817359344 481708655 594225598 375335795 874300921 414269499 420956170 511096624 953545088 780445184 860737363 212875488 258830655 22063533 738077018 477979481 593306422 796118762 872586132 924533053 989515809 658667710 949919992 291908580 534170404 598237685 841184894 641604613 750993276 309732546 935299917 229651178 284201088 47330952 539295632 982642426 995476300 262365084 602563849 138459760 166384480 817425398 990076411 29799417 155082366 120516527 853729199 990882978 996470702 117761806 706183355 715738863 738815880 843586833 918710282 469559089 501686630 368453240 703822928 998018361 999831410 513626784 908265762 104816020 828536640 254865231 453968747 95937027 255231849 302315791 861782638 364012728 842769642 482765017 659731843 952580326 989278213 764127348 816411066 628352913 836357536 286882731 439127051 722226219 779063045 68840738 72269052 91033062 341163928 358006853 471337986 442659963 689700493 976215893 992402513 539524961 866696689 144670024 616642620 370429711 425828018 172605435 333037234 99639648 314490901 947966804 983599713 127148461 463402750 734873633 750340796 949866907 957411114 48067336 928074291 986391141 993800229 640622903 766017409 559143726 834626017 507128590 552202540 627554940 829376149 900308819 997015997 429954928 886733476 961965686 997883089 954401391 977845887 672348718 819566267 848734888 884147317 785082812 891146962 62920341 205341530 84051736 178400523 772126668 844495407 258832897 358916005 660447512 701504503 855428179 898523102 313301346 663695099 759954478 875443184 752322667 939164677 281789405 796839264 295442486 709104159 939514689 967949397 277034670 396582174 586090620 667246155 799149524 979117145 889649870 891706672 279098278 669081987 260921444 483454977 848711365 916780969 133331173 895045503 511341115 605684601 522996618 903869160 351488534 359583647 229881951 408239862 306932498 819533455 792060774 800823700 265962648 494427052 160881337 479795958 673896047 708391814 952968580 995647246 432397026 992697579 216099020 370974903 231878565 869966711 646939677 647679491 452284886 460962604 217655484 361962489 787616426 932981362 888382938 990824095 425939420 989040043 232346442 406691027 222501764 275192507 414276990 947876686 747436304 795992415 100593828 860120674 419240748 846577666 330116038 660340619 630385500 834624647 830655323 964272728 193271997 547834179 383935894 951577669 394825773 721861254 151379244 762832739 699593121 953288671 29937203 675608802 529845019 967646344 233940711 236307785 235158113 690744188 75011780 802215009 337456357 864423890 894942657 918870180 715519332 933833848 804786562 948836965 673775680 912539845 990176326 997274179 805689923 912054606 142273128 250647280 581288954 959520537 545623138 991598588 718475023 721284935 442386798 867326554 980700092 999807941 646511457 809133662 492132224 573949049 553226141 820085424 91885511 542248511 883492738 997993837 638405893 907502307 110426746 693031145 725726271 901566174 250003060 944923819 951688879 954739600 17743768 77590816 774062521 794967985 27673076 536302935 513989366 939113884 102668680 230635294 471416679 815755791 472142800 880210247 945486239 950535225 809237065 848244648 294271281 788715067 508658024 641277103 69562789 879105507 705665028 847673038 760701738 840281535 13734618 692616947 267513853 829125813 797264739 910265297 890319753 903026018 117197258 138580253 40740914 935882664 380654615 643686386 670332478 975061847 159391662 340392562 260732983 724511947 875974275 946816566 309774167 974751557 524461021 651798798 588578226 917385423 27721714 605545090 852740668 869026891 645526495 807317118 599007758 956366927 874030430 881504462 389121962 572419163 817609722 938980796 1397795 790002644 206342717 522260526 958259187 985310734 669960679 961556697 157832469 620087857 786837829 794617174 548372824 825842584 885044789 909785414 907363141 950845673 33873264 381000239 399943057 830370220 464770455 683558582 779121530 819105016 367179533 974835266 682511767 685617698 832900796 861650748 42265349 119248637 859078401 983365562 490454973 584589407 538942222 926473675 79923277 376051032 910321881 912916565 372952577 574348364 40102681 336170635 113257651 199252193 920827665 976259233 704435440 865850840 22924443 682933632 521275477 552546732 231598298 317325515 977291888 985891321 258372459 652029925 39063896 947371003 748862990 789305666 60916009 638524704 130401386 258548007 833527943 948911395 735996975 839212008 344191867 714434133 625172731 728998596 805687419 847366821 151473126 887835067 536915803 922957459 204533025 866110599 155396685 830685762 429474521 758323623 122548425 805795207 393596274 798555368 875769027 916758132 268523841 582431074 655619175 939522445 648766510 987441110 711506033 924524412 389438796 775520306 733327240 861341677 557653352 711775582 928622492 962258343 93882833 741861955 415001928 760308401 778553546 813789616 178868361 253700025 229037365 360420769 790057328 850735113 454053656 789639761 103881449 292021839 926004714 959668508 87893262 105092653 383453188 744906312 872278478 958719932 914041370 953902890 357112241 428969923 117206796 802398579 50524918 813404755 706076865 975968373 563094048 749219714 590986541 629274955 975320602 999618195 50078469 93063118 813299366 990123353 963298800 992048415 228434363 809656650 733366993 769479510 833295496 976343459 883609355 947001596 395690787 500430082 830600233 940295431 772631601 954608621 373254244 500430915 136708888 274644998 517836173 574456174 278300366 466021660 242933268 770970465 236886036 964190447 434246973 673029572 234441337 353257018 765652719 984807764 150974110 595315691 814540177 848749049 199229927 571184718 595619017 849490270 622323945 747665543 811868553 927375370 966206596 998679620 918396842 950933088 965298394 978642830 240209791 548919074 770153333 838401043 776056556 850746728 386049020 840849867 253926429 702334522 77320184 765565541 342084122 509632422 720292854 796279627 866593073 958947564 53291206 682808911 571963973 994760347 571062817 634743880 484255210 663626724 992610156 995957330 911252279 935139062 902908333 919202759 745896402 998460890 761578560 892484125 968661561 985209714 498427842 610821032 802407196 866408551 973037892 986801467 558122002 986443496 239909848 985537593 102262428 116529056 292609432 467811119 477014217 528523605 435470003 472892501 314384331 905439452 817831463 972179407 8638395 989221091 942147141 976114677 422643662 920235649 962800196 991425886 742975616 782507260 171585541 272331018 49251277 251431934 736633113 867404066 112832242 288085757 747696415 817641777 429614027 616002590 222377691 511097608 686397405 993289408 71149043 800038883 588289637 689843292 440675474 987680073 321195362 804578156 356512261 998027923 475317466 897210079 328240685 445393875 91624649 388985704 900080339 922880630 806018124 817777418 552087542 586686188 782565951 799466528 641647094 697839881 454468687 887469973 288442160 720451752 117991122 763599997 998748953 999148161 907301788 938790272 660631474 832256735 210644135 472619064 416320076 827186712 400283416 628012395 361994881 878027219 816779954 964167481 999614092 999640244 168711692 807839856 590738254 944144453 736000513 810481436 125647890 574149577 309351199 855623903 278181107 726473926 721667048 760378751 442592261 475616858 146744207 928368251 814229311 977150330 289713835 550450271 99662992 141772235 135555286 273288878 706732256 900658065 391703612 529511977 898690914 939726386 489211695 760894015 580737818 784523876 550278900 941381449 408326861 718221274 251002951 783592065 200451920 937433019 140605728 197426572 991153595 991980807 245854900 454776004 56192774 900507514 980657737 981735634 621125856 990611315 574443891 787524045 860818086 925193760 619385463 909000872 106477523 164156132 180162741 228751408 554582915 907797526 204283044 792878876 124761090 418610236 344728346 659948939 271620509 332014112 242729432 990167413 6836554 882154429 220650876 964224099 43354064 657499618 973774375 989987650 617261292 889945987 762564220 817175448 824564674 936478108 686757703 884139864 604420097 770456378 782685603 931206510 588573382 926920315 959187944 967922500 137508913 856645561 485464723 886764985 297306142 731434550 915073338 939482368 545703694 616805594 133345307 876033725 602483416 986303965 720833606 975993247 906100357 942400373 296769693 813148200 147342295 806701547 976236299 982941802 252236968 935121643 247566272 958002493 456870780 874021528 261219337 882689392 406417193 520342680 410699634 466263021 269690850 696279450 119564108 550816858 140017077 898611084 421940428 560307488 836252812 944509624 630951746 966761093 532340560 772934189 822040934 880008016 943946972 951930845 855735729 971927710 959380859 966624405 967106738 989558121 216765271 782188502 165850576 912656711 937356588 944429191 595947443 612274439 657253913 713327963 971367941 988543036 67078922 316423998 144268055 884335442 783034112 935046947 866047347 965691831 337577041 529433351 606469611 846508455 449159962 878427425 354107663 754713074 680140894 974810507 845358469 974101746 975587080 996304152 9580547 370966461 590295230 617721563 155679601 549599417 668576873 809184273 901833872 930750364 104691666 280759808 492295478 922601985 488669270 878664660 577177476 684763765 890877867 894287431 288905677 590112396 728920917 843016341 91958989 133343899 570474808 766343205 166460700 375597722 960911111 994903905 141706771 295525609 946894111 959681584 375395283 525637954 593661425 701481027 895075680 987440640 502499679 856936620 967776878 985472318 707628603 907597812 645180690 965836722 83988597 900492709 767935778 868439515 609356215 855839266 468662758 759552432 884167287 980626345 458912909 644491150 244873655 754544978 195085967 459471391 812376840 865358403 523623470 980736783 369763245 427781057 134427345 525381210 604125045 651303062 226705822 980404309 546417811 821034827 858423353 932080293 629203982 751396347 828204328 929644183 80664504 907174901 235246265 666953148 777852558 931872246 526100382 540389276 304718021 682622165 705096493 883690188 848914336 854044919 262680236 499397869 753548922 830428647 701106490 817179956 200631022 632066155 999605369 999774438 928194522 993313035 509391904 653059116 5593495 746230102 510961724 615396719 598410315 959346024 299780954 849198113 323645491 343987401 794725169 918052330 435651727 548583883 799820076 828164984 966964574 985514035 981860323 987683732 961645312 977926635 340888866 344472072 20581212 948887158 730345864 827813096 378056092 736574789 391472325 532176010 240008852 754144363 731178867 931823210 982158842 994530939 618002314 735716179 346987519 560155392 588577109 630826811 133235850 357993563 632503572 868454550 260137501 696711301 345116570 491154600 287128926 902497861 227547125 953384724 99344267 418437247 156658279 444771690 105751410 604633261 259001113 458699464 91390420 947927994 738404130 786383054 689147139 907871704 466452260 918960440 547633212 619024617 62737627 183334784 234741249 909573278 778587614 793597493 841901647 912607438 999575259 999847375 950411562 997144159 808331306 935119550 362506017 879918085 510114561 750438433 725120917 911691574 520407976 902777198 291350781 346004918 490816110 641941113 148356543 498498708 527149241 662243472 454268811 492597069 440838923 487470891 360374828 874081842 184699854 435567958 224829168 334229472 531844782 832385270 957401283 997958090 136941325 270232878 88196778 913938269 150824079 217241701 614129418 967466278 328858397 404397248 634986128 660421371 688169082 823268444 109845903 868036772 265277678 797234922 252047479 635256411 758780793 994333882 527319994 798556287 593796763 927217831 981254507 981615548 984152034 997398368 343283702 374547707 670102496 688881157 154065621 260136949 89707553 918633265 444749794 770560834 320026235 420130172 497476315 756459089 722938244 813041829 304549070 885137290 295510690 683989504 918810987 972411895 114943264 328889125 457292580 774042235 802112845 992765672 229947024 414418919 586136067 958361527 361010425 767174413 96063948 551390616 740578327 761985134 146735980 335913714 52135617 603815135 257434329 646551708 962041735 997109356 105727608 887380703 504202976 978819990 835975119 996170700 304060093 836124795 225335743 290771556 510372115 732451043 148361737 766436044 403520900 419725075 888795455 890124006 997852158 999838035 522716435 674803727 118122433 885424777 491888397 809721607 361191165 924579600 329922514 977269487 881116081 898855743 723059142 823465750 716064923 957087958 422235638 795879631 392375055 568763201 37920345 496995496 193217416 680911556 394934366 436917005 23306258 304510599 331784654 524242719 634433781 825857578 664839354 780286330 5803322 689636157 840257818 902888102 36736878 448753119 537776299 649812498 425249389 856418850 92566724 702030301 783347212 990657144 695160962 947516898 421861295 692636272 195446939 697278386 710205767 971069985 511288094 617226399 818629587 820233231 657162989 813787694 637693218 936453763 101542779 883393369 202416982 853020939 369883080 424974517 237579020 919561122 735478775 892862088 870822976 989095334 235064231 453817295 343123901 562667143 867591024 981841277 981936208 990358648 260052549 704485041 66042530 307360538 446948549 965094089 318222040 717790891 807837176 979988400 529792837 975544759 131789787 317942199 450129988 824254915 216788758 705391358 661102421 973956858 922629220 978313114 257650388 416828952 829647025 870224684 956831273 977077519 615743537 817644419 985261938 999987625 745938901 958443438 624751603 867551557 730582497 833735474 489253333 922630547 162809798 610736235 644518483 744917299 734314040 764529575 926105871 994205985 856696837 962564359 336507782 434117965 158534515 286277555 724093823 970484922 62272238 430798378 837472893 999074903 159890236 440078350 785991649 869901393 149946512 175745269 90913526 635074239 543463820 594348267 526589918 529587711 545500336 816048091 474502270 579751184 508494831 780731115 623714771 719007508 857527095 988139367 522756737 923630704 510985627 607657623 623396681 895991604 564471173 871460590 191329784 951402048 449855601 668668475 704461615 942277170 540459150 901974658 345687062 524995897 952042000 982503611 468616982 767540374 409604736 661941449 384304564 433069343 538065051 641279064 570844004 861661733 632249998 727168351 391052067 410191734 942935615 986533616 57453370 423895360 810354207 896470114 589105995 838491690 918342451 961117164 6823766 276040361 755851275 898709009 598845603 668463725 609779947 990957726 138437504 785052071 709563472 835900713 947573575 953167500 178728578 603142843 956080246 987604833 510168198 749611033 814800225 954716849 309379619 901527707 750250140 917079475 348368166 743381300 587938378 599239036 941759864 983455848 24863462 972596140 621795223 689206627 860048342 946219939 469635672 919573288 761320000 909516493 586905183 790563707 795351243 893725611 233470787 740157825 690986517 991034757 130530818 323802670 682756523 843504241 123123520 190492927 930152859 956804538 781914371 971532812 972117569 987931460 3906293 214780095 90980446 207630998 897423629 990281606 479903142 500663743 545146358 849430913 311546496 858193946 983857626 988763575 331470802 850275458 745548215 953233260 826232039 855907591 752879982 945319000 240069650 867108129 874952730 887357582 141825504 867068020 224732347 347877360 947820161 959715880 751236373 992989609 734550263 968681264 614243208 631723271 662847683 664074910 169769119 746056115 155826727 773141055 195590266 621463097 631040070 831737127 805864742 815481014 814265548 984188315 986318855 993587153 777241865 893861612 811728225 954371111 250645747 905681519 717171107 810194165 313785867 483664514 991946639 997159334 40716108 513293777 837968109 935632851 89729319 554086150 952219445 953752447 783676578 831281440 675156188 829678265 772514052 808911643 752210257 834548326 551106048 868487197 609884080 863453012 458611937 820731040 233498456 482701381 724727403 756981571 327749664 393483921 637740737 666159770 802212884 839531840 938645218 963581496 901277196 905721599 694013469 871344194 566088583 590872803 647083257 995758111 66606416 260188265 110730111 779348966 782339118 797256381 546637881 895201938 986253260 991236433 101355612 554996578 697273105 788737404 130297143 976079058 605325794 947557223 191867467 609540211 523442842 637299946 139764223 584814159 798908266 825586038 143026763 997326701 602509004 834995861 518511963 990020784 150984990 400154398 541390789 962719574 809486790 924329039 985433715 996999888 889556444 983740369 887413970 934212367 139856321 330318475 869445772 913962161 333380660 870870334 62621625 999575303 240708180 385265394 697628866 927937234 555917050 908636664 384939479 982634311 742951737 908778993 803484806 905117984 504022067 920935990 594482399 820959806 409537896 547001934 130705715 737488579 659543983 878332954 87947167 903595638 723561657 993183254 970187479 981373641 652556460 777226002 605761747 810700654 960964016 964879376 906322005 951949189 18878898 35948056 486012019 513375586 346130090 487710921 178063937 332773820 231243793 997504303 774530921 853713383 891320834 979221669 286233721 418054603 786820412 791037673 22679249 334691720 978015326 989919769 31303364 721626978 754522043 909286542 288097475 399629280 467685044 576662550 375510922 542795746 524249906 911611193 562720744 877416864 243944762 302495214 852170319 863801487 166510507 292260633 597837420 744199294 479205463 896016627 34680839 955449838 700594157 853211498 509782395 707868325 625750045 718410342 449534636 951948985 145127429 628975161 531484928 933197545 750537478 788715960 168544816 708585490 622773208 847366135 145888101 451293507 494459286 631682502 445376076 546803952 827361452 829469820 992299121 998650272 443113895 687767056 91191831 240148972 480417411 788480786 403294686 936109321 598893427 891617811 80022498 962383991 422734263 489805713 867276072 998398644 431061432 782850130 929839747 949021263 658689687 827373194 950626914 976051263 628261185 742110055 927511375 941159423 546696717 947271571 760061433 801887155 521040462 551959308 862879011 982119187 735178208 755639267 711854199 757035111 65746749 789889259 707411715 922014081 369916692 672603377 990522728 999301130 347687962 485658735 844065987 909487092 868643592 961584506 289102638 750122624 88239861 563942727 47747533 231745717 79143718 314601915 233407826 295347818 534435334 985619208 345955122 959650130 628691104 862570849 884217488 974038591 222110088 345511197 692896830 934022968 729690920 739266200 138516550 208678853 488447167 674672974 442579973 787212996 251590133 853963255 157179122 650787501 951217348 961502020 479813708 921063375 572017544 754273064 321877951 512203255 306425349 535059910 383873245 408566876 735674337 782765604 905855993 909923260 483009757 989023780 832606842 859415988 632989678 892630879 771469442 823353916 210374269 548338022 138792784 512191142 578029757 997914858 893095201 935024771 433019548 446414954 357208244 581486110 814602002 871925831 717051450 930918903 91099359 689687690 412057093 573610829 354736983 662279086 952056043 992244379 85687318 907439108 171811781 614729080 2926681 27599760 603413729 982385390 499483041 975355326 424917427 912772811 750611548 985438403 759524536 917791278 241558277 791469655 34116547 393666680 73693258 241708642 868518671 921437463 489366018 757950458 910446092 921744216 125783034 675507320 387229859 847848335 459259487 816615415 426010304 905085702 39157092 657383688 690393011 925669765 39288822 860054233 908663271 972537506 206298029 694702792 347220039 618573230 756229327 775026770 925925765 938298599 610709478 971250696 753974718 985352811 461486310 859122204 32909163 503000692 306169091 613434805 634443161 824673516 784073711 952363154 203205274 907820775 595432970 743955620 298964027 982789879 23758867 706153743 248802073 882444800 173129835 418649758 949558390 989221870 793723432 991854780 714010301 771339364 432235203 921386082 556643735 614585254 777324341 958483081 757858549 955936742 78324508 825818756 568095148 865172413 619791314 845507701 681412156 698851315 128884034 397796291 640489747 890279041 64126300 818584980 516822911 826281274 142869524 502901682 476565509 994258945 441751050 890148238 862740212 867493126 362047268 993181712 881622955 901124861 444492077 464103933 240257868 391785252 245515703 833052630 394560133 792608141 399483986 963446592 129855223 317557826 800168691 832084165 233654206 529742850 297401484 519996185 418925045 720014543 916493092 977512375 249052438 640656119 51308669 228434757 105849398 253062077 885832835 972103403 151841836 234126021 185404958 787570930 150781844 600946730 651526012 977994674 882458467 886617512 597815123 609410823 404917230 452322448 711384519 808731875 794654159 803555172 724222891 801636617 90109716 329913721 396493876 491063071 631984914 872555801 751915643 898754960 991969395 996311646 826462487 858644821 467999898 694997334 80296844 226863263 403789218 529987835 497875967 666230568 424041199 490798935 619215839 694822483 161224812 605503467 653804025 661117089 902953678 934547035 675482899 792479473 486678337 686998814 820757894 848260591 33707669 445538246 345097248 804921002 168399120 925906408 226785419 839089385 366402160 979920888 562742184 596361984 110860193 286510029 265686071 892969466 829171096 967824172 357970988 498497634 129523803 922140726 820695643 854476910 991686252 995150350 199529749 531824274 168885363 461770588 84958929 842617325 282979520 362815457 583329954 843835322 447479382 491851051 999951468 999995302 26780707 692431371 443006399 509492708 993372524 994984406 322159725 694884042 687445696 798137944 40491446 638008281 182770591 255492152 77059801 921399593 152835630 542615282 140934731 816828565 836740139 937462497 795802709 952648010 437618196 550711601 492306250 724425843 634960389 998010754 662940713 731306495 872237036 933166580 403317393 427862065 706292913 938374806 74231395 480788407 534438203 580977448 639933796 738342578 315350851 407998952 676668443 910935504 517103165 864988313 911517305 993005587 709860778 967718155 527964470 679123838 338238162 421618442 240427106 421269202 990346269 998028167 501833260 839528107 33874645 94393650 579753264 802059926 131733364 773376955 292583302 590587561 338586585 741046070 185473494 432825872 227858410 657264495 527155764 676165786 266570831 751794615 178887315 382570969 412372121 759849370 604054032 952414324 815683871 974807719 625792587 899916654 804552768 809028295 90131510 849718585 524074971 530844130 769380084 919923651 244200471 898716996 273583952 276498534 70064508 237874006 814286635 933336606 615503448 932164414 224364288 967102435 533225646 707350563 555369913 826994482 736318625 991386858 201433599 879034940 158714745 964551237 656084263 844522283 182133556 660290881 402980605 451018771 722755660 910424263 741579476 782177836 590782192 766021092 142585874 731023829 599124177 834588387 404675077 851083639 118899306 330568806 623391986 668433526 448301444 513360592 252502569 398754488 644511036 865566750 477877009 612948987 244008827 650109897 620056513 962617915 17818840 873335815 17775300 937893443 446604219 678972453 408603170 887515889 440271268 987770080 972454313 977141353 221626761 881267455 777475313 965056817 513106452 531048915 474196658 817201632 91412383 516531996 898457855 989637907 109239071 571207294 378131447 564718265 729127239 886012643 648184557 995039035 939690916 945412731 105602944 405142449 212459602 344812420 57965355 426171525 730368410 902597692 825394302 991658380 544653597 582326205 584599473 930622631 652827121 972213093 503582332 653787588 130082658 908224516 764042161 825892410 195051402 503434202 236255752 351267462 495806140 879170463 587486321 773415755 766607828 873463257 55443561 116121309 396246580 588330880 194512993 352702478 363652839 985549942 522493988 728396642 765539777 876354990 499044592 741914511 132899813 482247546 930047128 987302156 656431911 830399545 179898096 990228553 168517909 588473668 682819882 923993143 980009883 995171009 876815981 941259562 450667951 838945503 447611635 698603044 555098217 580608727 458173693 889354153 580726440 611372926 798862096 851619439 300055552 772604718 700408695 878524472 632453505 976327544 95046863 148599097 194020782 227043516 777681881 831977404 801279831 976505989 403517462 915173199 802260456 857516907 431809811 747677531 821817063 907246189 462358792 886313704 698300033 787247343 392416429 819514651 530766587 835052956 417150694 675766834 58835960 879911154 922054810 931503678 617081481 920897501 342343091 596446304 342110053 621570861 673162506 900228206 997350127 999088568 492323306 993743439 900816846 965873890 373690941 996650683 968306548 997233534 155875926 641344869 238906714 372943640 732861503 785053725 341314630 571821181 81511912 422754427 596967892 738647085 846107671 951718549 178930086 773197808 323171672 944264676 502831247 597156165 495403985 606386707 244573938 515554576 361399194 527044866 562465027 913918380 756473606 779080351 115117393 965317591 848400916 956543098 734769165 778587684 536888163 669520272 673116598 778949840 64452301 289857797 234749757 475677965 247412970 752811783 410614189 730174348 241644136 252918225 695037364 717288211 948182279 965658223 402940133 763100455 551062762 706336947 170165831 650452645 837202573 965362296 893882416 997159017 399754177 829986285 205562966 223900497 783418401 957606808 885672129 987282846 173929568 231025167 53261012 742571364 94859974 147476099 997122161 999886865 874160054 901418467 259617518 324230386 935485431 963324974 457445872 678821140 499020043 938033443 294716463 578512620 408027178 426799360 615802133 946371352 525231105 618363875 37673214 995592160 709456990 866407338 51697996 844622355 975356039 981563596 322247728 546499280 384198465 688456837 208230928 311902122 393547324 957275186 667684282 823655540 172411236 348045712 508875573 753061254 250666542 820147866 125239567 519527002 501842745 701852571 24051417 443118744 457492948 585462857 47797258 727238074 275300362 644218774 395720691 814588609 751779572 910639476 279131501 803918002 705310096 950271069 485844044 485891306 447825920 665465463 582449240 685409892 508061788 808360462 989734302 999575502 537015773 607394699 304866894 618080183 918513906 976366086 85672372 870825400 765412771 827976311 101664376 355507609 855849318 968415187 229430597 360536648 222725084 998828823 725284814 750262500 974111754 997607400 678701949 726330862 701138993 795683475 721455350 972421174 154352562 901103061 598576914 850515392 431895575 464091532 291523442 385757960 960080921 973298227 271253847 355456252 728875907 843629645 751357757 827297272 809108373 833694782 985285956 986752442 370497972 430038313 2266243 102966078 57698291 228704022 991390670 997989266 933441544 978034714 483559157 931407729 667370329 672632717 281750633 757588360 869681616 876006077 33758900 593879378 711803203 769786491 155476708 999135502 49770955 73251358 666385168 768419843 227222184 235184010 820605260 854252093 597494698 890842225 129185120 266952735 414094912 823714047 812698741 859543742 677639988 988862592 191436053 662938726 214066102 222251288 526213526 968544220 914146047 915288674 21034901 779596794 151563910 598302054 25645499 503060146 821212461 827658864 479365242 764738177 350016401 395051271 888484931 999002034 574231324 805273883 570943835 658605102 211919526 708788652 801147291 981903850 922676975 938149246 68319061 346329962 738720515 973453482 36284258 283201528 780230712 900729816 60000671 890785040 725793228 863192167 40571801 570486805 925204927 957028041 451921916 980158184 669205225 718725981 491016372 712917364 961915594 963139597 674163451 767089800 715996320 824819252 888581799 904599887 788153921 918417879 894050285 954967484 426698482 684356332 148902657 932074962 3853611 661453210 886205813 977295663 221233389 450576347 43624239 213646283 836604800 894663279 400550780 840798441 124790398 295323882 642736555 850122885 724559294 783407477 82618707 198738541 366997658 716799699 919977272 993768531 187767732 437777256 339216978 393512503 307797511 460215517 162016203 886065109 122348073 260453034 808076846 974524229 832718792 906724206 750410758 771093435 635044809 757805132 408527680 515269302 629954579 685807540 538870437 667000891 227833614 858354678 966705739 973832678 593765193 860652311 875525338 967198464 449832108 881207859 128881361 295530359 653691223 978211128 117801129 468186708 712037376 908852462 873214021 963104412 401064741 473706693 10702547 317974627 847770923 903726803 565385420 711062590 870824528 956687109 937576659 939567380 488721476 845388866 793161738 943713301 669164609 931766221 78482267 633232270 583471000 853365158 836142840 923940476 94397158 934122462 201330724 436423528 565904914 908076444 830393745 848322174 6714735 522304307 461415604 562412962 18946332 102609645 581871288 973630270 941869206 945403403 747504250 996772309 524317806 842170298 466309512 947748498 537446106 824955460 674320903 742517591 427305850 684243167 622502975 696475427 452972904 791034516 247003607 597777529 300576167 736369734 58175091 173480203 498948940 670875462 771972459 781295871 622656138 808494711 689031088 825580056 910866833 921514181 259217026 820610126 199105950 797848517 514961204 582430791 306808134 824821509 269166346 869905935 165875957 358025757 368890147 489001205 873532594 944602354 963222942 990687743 564033879 780615933 525410123 891103667 730971875 829646334 64686956 920162872 741978708 936333042 631766098 752303994 339046334 649177471 571377730 669979191 134963301 657887322 417544538 888176384 229817987 985804705 108427361 945767556 441122073 462917514 5198700 660765793 983904961 996598699 141767976 655533084 592856275 911771637 848031353 962805462 395175174 457889721 819647541 952606797 605601479 777477254 352047735 592316398 685707068 880253448 73444361 557857552 469883039 483078771 363070348 491006679 664842083 803146209 277403757 543217273 966620059 993517818 929420490 990999800 235758305 624683138 346807072 845576459 537980870 779592382 816844937 833522402 996941099 999269353 124862316 846901482 354680569 578941316 240754199 928307736 879854574 934549151 286529938 574146677 449377199 641200048 443169011 446772022 990568976 992098718 696578705 743232632 510522196 663727374 804983072 895940785 380356343 652680379 296354728 712976117 600514150 957416257 420364952 979782680 848647434 984643032 744518220 767940708 535924523 919542671 89153638 571475685 642241136 696158005 236712107 986350685 769013921 936517100 687923390 922215284 172058317 921989925 684124238 863994402 196346373 579388932 711440395 719278078 581955829 856363582 765858126 982967186 449213445 700520381 124531888 297880788 127530710 189265664 741618577 882648101 733181659 840868800 712727439 936544034 939672631 945019368 659129139 919746622 69979097 149922052 213157754 405776559 360100016 864437445 301118531 896821716 437626999 464963665 126227984 665483883 934158794 943799425 620187293 775496067 34202650 964714446 619264634 622196914 207938146 800260031 726835247 826997486 869786442 943014502 585031357 997275973 205139447 788777068 559166518 578579515 51720493 60941450 434046038 598707140 327338271 771371038 757647426 793008990 191796384 236455721 721042107 822390190 464504585 976272124 37430823 291808861 854855112 934970142 297388140 404483041 462666800 918849146 25192053 852065968 26463251 776226395 764494047 801659969 98726938 231838337 695864454 783743683 253359418 523510062 944591121 992890869 602429106 670507949 886940116 966498752 197613725 974227704 983704030 989879847 76422192 365178010 200338859 633016873 359778880 626753013 987053033 989202593 432832879 853619425 156973809 566272764 838068747 861016905 210775348 467055567 130529649 769041815 233804444 896118760 907259185 941625592 910301564 946958736 852005235 898145778 343501729 723743627 702053469 988374582 989022526 990994681 610989166 794358846 797407386 849030272 661754376 991704942 734813926 856490182 491095344 768621997 193135285 439782352 601460759 946332840 387413023 842085472 668620640 928463828 171815222 544660375 580229399 984171471 246004382 594550915 225608836 909851306 647152768 795761492 144053815 484404347 455217322 511276550 174087374 672531970 462119989 770712606 834924655 870388689 969160493 972747264 928184863 980616540 337896444 928325267 952970776 985773409 943219788 977801358 791119575 896449687 621378364 680666714 68568672 832385429 63600531 856391087 21400705 476211464 134578591 918920251 249214697 384489293 790374968 921521257 873115494 990042370 430078233 575986909 881046669 951857977 176539447 749118130 252171077 436203633 644257761 658467115 123547372 231781016 142989873 528940169 563603095 953334335 278426308 604644121 44062901 734955259 540726224 786366837 605098265 647541796 158512067 356679318 856325635 966461329 435577311 749793291 349696114 699040665 199954474 420200937 635406791 879145408 287800549 359616338 59712691 458815247 585307586 594421646 587431586 908030409 89742538 693106267 437992649 982091935 368997669 874405960 347153447 510748521 750366707 849674346 767004914 996983789 218872465 533381712 627280609 857831111 440161470 508186191 990422887 997468650 708064460 888407560 185123359 951654662 837260407 951500897 492305850 513601582 842576936 859937704 658451317 714289137 13096655 895742161 102313145 596876302 668889905 946249134 7447631 917568474 816305619 905134240 25734580 432460940 68956838 547618893 219374063 300919945 482143035 811683923 63653490 517033976 419062798 476831843 647995778 983791812 40683852 63539226 184180388 379808185 452891728 734448891 739948338 740162289 874801033 875104063 469391783 932136376 899287768 973830763 437355983 926872847 840703862 936770940 255432534 319237043 649378139 715710810 49704757 863357826 553151233 560673282 322082518 968567724 569446458 818403471 252316348 731130178 702378817 824197487 837574120 874473961 520861902 970582492 775116769 891600242 383861413 388880359 605004551 962805161 400001431 444219559 667399209 797843962 628947867 990147284 991940419 995838069 925747831 994543650 552586288 788647685 713721997 782779296 293057253 855969026 885496524 965685676 2674574 321554593 53588746 959868801 481072535 502939903 418504332 886989574 137722766 464955836 117210402 461929644 988659364 998767356 851228279 898352523 866619653 908067907 500509871 593873828 587079691 786430102 685834756 972006915 925661896 939021238 16391563 287433177 33922835 43531408 856992096 922624693 365472114 716528557 470844514 571557018 551191389 654200275 208532561 581772343 634052375 946161666 337438074 486093052 223634776 483781713 676312111 688822541 909421564 971494823 483261834 510458578 135028054 981486121 750509903 799066973 549324813 697796229 923004031 923877020 98946763 776466283 824002358 882310542 678209038 746254237 279997613 341126593 772575387 846950584 697386597 775101334 909992277 986743891 812220210 993669552 989477497 997257020 708143824 805554176 383116458 985374481 365704890 575503414 982779724 992399387 400971625 850862611 631181487 703488991 36151761 125701675 97903111 382792568 470231612 576018863 240905143 252513105 362765192 464895888 919597914 968641801 279401029 542069074 202654288 607599034 528753623 948743217 604924594 811447694 706373129 804038980 25290275 474832445 747070218 917231698 357354091 465464089 161953610 868745464 676666933 784921202 35378412 330222624 455424711 699311467 705328942 803343945 371406307 437565790 156153658 435660813 530604526 832436682 616327098 929103148 231833010 983036359 285074448 954103533 780541470 792162207 823973174 911746250 667106376 790073327 428069006 614676324 496746889 678842094 699601680 766905729 215953944 981782794 15005402 605327587 951117544 960260445 795309922 831006846 66723903 75776814 743701677 885911741 354650607 928577470 847067105 977931189 194554184 728699610 244242744 409052878 671857455 686744288 169839176 830992496 834783976 851487806 642438367 682021646 60614236 465228220 440315537 611697426 517790182 746178436 2047493 886698629 990321182 993633560 169220216 843446301 907369049 941362919 845297195 967683113 398097701 518431076 470101277 880419445 395064401 995601014 102993249 761172948 809147560 828040400 534548465 674388845 399882706 567123847 549946017 822960406 396742851 525182656 820820893 950742222 396141905 615433880 351586744 981705358 621145546 700540958 840832036 873412785 923505652 960142302 778466093 792205232 75846885 746757920 212943494 229073376 901915688 932992063 476776336 763316177 355221778 767547951 769238175 967668906 528983654 679919854 478376377 907633661 776313148 843614709 965833292 998859363 949044607 990535862 59742443 304915058 562526011 815777793 695787357 894712188 580278700 950883885 643052094 699995525 813107666 889368046 792757986 853186004 756233485 862959882 740727161 881063478 813976674 866961468 331596585 942610160 109884068 789940519 930167019 986364625 539324048 600074901 288506710 842121300 363117245 838306680 521220342 923162773 681061095 708205533 48751401 676134859 327604201 786709862 939717652 940756105 247282093 598944140 103114966 423001111 345353862 817917408 554249096 827938034 409166420 711825726 179816273 979427112 60265055 126477428 515636194 772992002 180811900 263861480 606937385 822978913 788229480 858959469 921364766 965644715 20949290 303608927 244623609 586736655 59233090 546395518 219740768 605859019 922398299 945801881 46666533 748940551 722604030 962812520 873173518 880432122 686968262 893420732 926697768 939346362 772687328 778152578 806735110 824920058 668163271 887575621 69816882 133499168 445419580 519835270 833677795 837896729 51205697 198867323 626742686 673164780 329888545 800885686 301900044 884452919 16999247 333478038 388289341 852317800 723484185 796876396 436626467 694784749 191487739 905934522 896445190 970923259 218615898 416022993 673319210 752826287 975587740 997547369 951740101 955673290 110959653 565856005 659082159 845252004 126842343 797100791 195356291 771159151 52769499 470220000 847380639 999964345 43676792 573616329 143249978 199361782 829948842 993976026 826330887 844242822 542160129 795076726 662467141 726220791 284586839 333345814 802644109 958647214 525975408 925595049 246607534 682109462 211468868 641913707 682356635 753051911 485423844 687360184 457656823 745570985 288265877 404047517 547524266 574947761 444876329 692815151 532995444 811359295 327852449 625956292 385301880 977977478 757425106 836136441 114041866 442639211 212462020 375607855 6435144 236794606 498678149 544851292 639961531 836061168 394756890 749643786 407718537 903347528 163306797 389127593 924170296 990745505 746804812 998960663 953706113 981452828 992601011 994082510 596453043 849402647 209599825 238126756 49498102 699283032 196471169 673762255 730024136 922826894 965418984 988720896 886494710 911332385 553666645 922949615 447223640 609524909 678786836 824739470 296619442 415507840 347626452 711756900 276283081 615133624 654775064 862282684 602022892 616553454 565230595 904842934 550278820 588766101 573712033 806039759 989239215 999878802 135995246 601255861 1443541 456893350 16138851 719409740 90774379 309279101 895216994 962280305 938110848 964242572 630269709 907304039 224382098 673066423 236796235 534293194 56190330 674165255 16859863 477264144 33827264 188557866 413000032 419324599 235203285 759348648 271732045 439721004 56829899 74724465 270554949 843178835 322436080 702850561 817496602 931455657 251079895 551733058 473885473 619939410 198270629 963735018 912616773 928829093 158715680 287678726 384447951 651160250 470588021 973778513 955863441 980101007 554866440 916666455 903599135 924041403 338310415 369284787 211823649 419606616 767576163 931294637 762990724 875512565 753115496 810834586 314850509 473577240 612331457 975531097 189801604 629376577 909060496 917240053 825931361 856353736 22360901 678277690 733781015 866202861 961494349 994853619 384674763 732541645 727976123 977897538 860101462 942279320 135642708 735604833 57532884 851323617 20535003 311252809 530891410 560981830 904114307 988130068 60211885 71435882 662359995 840925050 823530869 958664830 14077364 885113616 98250951 183899937 923267036 948522410 802211774 824046200 935998429 944075222 671307227 916877136 949264916 961779183 623414205 863283730 103194996 192241643 718266949 719571533 974121745 974786005 138948343 876993999 32913186 174190426 106636190 666352039 405277910 771671515 449030484 459917434 361105277 638866234 604128915 925847070 244321453 288549850 171159943 241854455 238170935 533512143 972485291 975461266 140533746 662454797 324850061 735686186 518177683 968612009 610770506 993663134 390038825 989364573 237282872 798591016 768951714 939780216 114384654 283437459 861835323 976034286 119709856 619762437 463438870 849017608 821918672 886409062 294218333 763012854 152540736 732794959 109039801 202778480 217680348 772034440 727012193 820952751 395117321 717930449 101618351 819964141 326670528 416652687 216898815 484123639 837245966 942123670 849735456 849891859 903213892 922060976 89981420 563587498 176631574 762617923 590453443 750342341 573468266 633966454 775813387 986032650 247576539 571794168 238776376 619159356 423437542 714075164 918856044 970084108 770644378 890896998 988763305 996173502 672084064 716592344 888039901 986349875 510183979 907844354 272824010 562701778 626636958 911725689 616486188 747699238 520967687 861128328 209690044 440720466 920286873 936652789 857084105 903373666 695175136 799840210 565536954 606243560 842300576 945443465 507126590 688035354 213615784 387106207 452450251 941200718 68079377 621553745 992453711 998144805 364420564 994239509 427714860 803095430 107990835 711576535 880011299 926803007 126746910 194996577 235800177 726386464 24940388 656899924 234956281 378255494 77389809 814494363 565273977 855474882 664037037 749255789 562643890 838293335 769673029 904073349 426680382 775595865 309371436 587788571 371803525 898758463 360621466 516112883 792712594 864788983 385496269 792118766 273403740 273739265 967958823 978427373 503400086 830702825 427885650 459497785 150088569 891401681 275507210 822421261 824946810 845320717 639393240 978665823 677904492 747565277 769000151 963309909 103095697 185228028 16878950 230541136 160410154 219480012 217367821 781796035 621202056 990775217 238385529 293383696 325081704 410119105 995731530 997502813 946325067 966481871 202024445 669495810 691953190 710880424 290365792 575792396 514514600 602026126 246907932 671108071 184884889 529532127 684434709 920821191 572558899 926083957 465387167 541481662 534947824 886171505 754996569 785294486 380572844 439403822 592178952 627184277 892156700 899532501 549511277 580314235 339439592 809042115 480856778 533138826 459318970 787102140 458836778 480604087 256961993 400891795 20558810 333241435 767420502 986860381 844780770 863878352 830912823 977885545 124547637 805801119 529189439 646550107 933164508 957262461 795350751 848470599 364986868 714120027 506268989 662822302 804322629 829498517 918051372 953837171 513625716 555716748 263007458 277483438 614425596 827830416 93527023 972880739 773822747 864717292 800737916 976333620 131693251 420604214 114644591 194862444 223352402 742148333 410211558 901541676 154211050 553648319 493148839 905958745 339856876 370765996 436456026 466247886 776252582 808366508 805880433 875569851 466506504 515951161 822563086 831754948 946544460 965700737 678929259 896311368 176507639 699209308 28290081 697475156 517713960 541346172 101298564 336384822 493501679 943044387 256539861 382136322 380543729 516917172 323583379 620784716 332352408 867155014 595892619 613154078 867857575 922261931 252404083 753651456 662419838 919383501 808194706 883403795 579209299 905772450 192779853 257843111 953171108 997427201 518806639 771476887 370812890 400405998 94379113 859755637 132264504 796585595 352922652 370786937 292043234 827873430 24343554 441203641 334992005 465777764 395648730 449649217 514986689 854816219 605211093 998348689 733638288 797531057 371007482 684991568 292089127 572883243 487926050 714183119 352973803 842400564 844311372 890579991 172060525 427786789 898373922 999461544 424562155 703949861 793933722 846145621 50695605 676378684 202272074 268328257 575336369 595200845 820229950 997910522 731846250 739331990 883849894 896359628 729918087 732756018 471770286 696575183 55625693 724431785 788076372 997229913 246377073 761538651 433719480 897758867 373732022 618305534 542601674 909124930 39607348 975289272 800188550 965002196 640199457 680733654 726961299 960535659 955997166 974635723 933783155 985049522 504993155 833564260 575702936 892770267 484090423 648664410 808388465 991625761 711072347 973600832 712310137 761659743 450465730 571100872 149358272 579252659 257064428 877360835 807841581 858133961 91684287 947175203 957628868 974015535 471329605 735646974 578318101 882150711 666249949 780580048 213843208 589092538 625548512 744196359 362753507 460375369 354767584 848111683 918677369 977647332 968882170 979843281 953162498 958671997 901498207 949454860 786071973 951958635 720335541 861470291 572366859 949498514 85177316 180885381 42876597 809603455 270692636 671031134 30283419 238108910 552833332 825633805 216529140 798015971 271574377 564652038 156056193 374309830 791984423 969370451 498754921 829381856 188776612 616384861 551502888 741911833 850014378 967192934 649490773 657564028 997121146 999931298 371773479 984591898 258354419 359216429 709279090 889429419 251308715 540540003 990693235 997393131 306998190 337687328 985435379 996249321 738056723 840588988 915928330 919595683 110089697 837758495 859033156 953587200 888916544 942579536 95449870 407773071 677822680 957687685 305920538 601512546 78539418 252994373 649529614 681855090 725031567 986993951 549166703 781992198 297954432 924965614 259052544 587332426 727772491 771408727 459810818 735970622 919112571 940693072 785371954 958007755 418019709 868235055 918533923 998968815 175999005 826502473 202477580 813322015 644526590 952355054 829121480 902829442 929800210 995950867 99154716 644510439 81010413 833140182 633261857 695742260 574777448 738958775 367738365 593251733 907690174 960242087 990243615 999930662 592077432 920364162 364323126 416585221 263306801 833085603 865829823 981926765 732361625 834681239 970129714 996366799 277501835 373361567 901991736 969578853 258598239 358161729 631025052 650264412 575642921 944887984 237778228 257118371 597183703 755700018 535173581 608602725 333560285 710727239 411312614 671589529 595471838 947602732 525924750 635458195 432603120 938588670 518733984 836120630 713393608 730942541 871723185 989173343 950784879 971665218 779673483 930041858 417682693 864827175 815188339 913706071 794125534 880232563 143737027 465407988 442865827 555644382 15915930 128623013 911550225 949442150 112301454 771010227 639384929 930544728 780286892 934897568 176774808 335199799 103671553 218810599 489511212 651671501 560293152 993661957 30147143 713910357 269048149 781701504 619948734 637495209 706495558 714904392 234779630 845430687 206865758 649648523 911470018 989994293 900185190 937500126 157347447 276558350 722269941 952603224 426223176 446787334 555716227 691782519 395315060 644187190 713286724 991713573 304641252 496470468 948081858 986603145 731016732 806284479 715665644 982597419 731607159 731864591 464332685 750033693 656465169 993491275 736249034 777732811 610741855 747655626 575420780 995163788 286742833 594124104 464051576 584534724 318755394 647561456 809851942 913257371 708344563 855173721 70749914 458959810 554667214 882924303 166875984 430911703 429880607 993432220 179494597 539698600 343102910 573971789 363231232 788746935 388284017 688656780 112997781 367096184 357618363 440006830 887661645 903519029 364069468 778192889 778310705 994370694 230215186 568266126 676944386 931644843 804135928 843396842 629500355 634969693 952220511 984215215 664819011 790385375 571901781 778039021 466591843 782506965 113395905 180611383 435880541 786411666 71052045 536751110 372813103 575738518 405175149 929736739 746277641 758794685 707917675 953282736 944630310 980194501 647113134 866896156 681481508 921570875 847395234 933830505 120866450 826571052 610411555 795443836 889879334 959126319 989060455 993823241 259009787 658124474 162682812 285840081 492739512 822389084 697466025 928621152 324289588 709574305 920874355 935592451 586688172 630973574 393880060 990547461 753799008 860597586 832186582 966918764 97094055 250830563 504601776 746932221 174623791 844228772 743507984 892511272 288846800 709185177 282520768 882634613 151530361 878769224 792258622 838756015 116364969 823997840 427792584 745763868 165545702 746171732 303907850 444831252 283858429 637424353 204345595 407007634 610964320 614755348 111618388 879770748 749190426 879789762 772802749 862676036 835187303 970593805 84023759 232181694 274676419 887277385 749156610 958641376 236218490 606559583 565852196 953083871 312181800 431582639 571885091 768042618 179799248 453735834 490356093 770594655 685577876 943319306 274837170 474347009 110151418 360089629 617215468 631814504 685391873 939985366 975183373 992496964 363551497 641829086 91746422 652168654 563902574 953074306 855137354 906773102 412385413 779450888 156033006 387561558 318317702 633123413 448753412 723228913 206754304 334272010 170447011 883020406 291237519 936797629 764941917 873340669 540061439 966423279 622377062 689471627 456427080 993498502 120193688 368833178 103111613 181449529 260968955 388307753 816068255 906865433 844179182 933259280 33553832 917874467 241491930 302646999 882442352 977259048 671804110 833928888 601989215 957405800 209241029 301150269 715431001 799228049 73926263 810398626 380690314 595194870 990203675 993619005 535678517 656021516 243741815 296540935 655486884 668729774 534015741 827802032 284150653 720163499 345516264 843699940 940613576 996546098 190424676 462029238 181672198 587737837 636277943 745079641 39541484 437132007 72373665 179374033 644772586 678831588 940304498 999807295 823441971 863452480 861777221 951103362 754879010 846681786 240841150 552195652 178056387 555816239 666233481 805138829 332312067 644015223 377894973 428633321 349704509 496560178 324334968 815335437 953282754 956810916 743309632 946419691 727870781 956998713 121208037 149871140 649406205 803994145 588372777 996935300 580571718 633750606 806497469 807348173 720866740 828613679 636297419 693114193 982781924 993480794 71043988 853527727 454048818 651668966 4154581 919685057 46910845 632227164 130479340 993343447 878223517 900232077 49231615 945518586 108598446 839798850 465433728 854214116 808743211 860950714 526659626 782453378 289866151 713009318 434870825 926440003 307795328 526997476 618551991 942252293 535149148 739761052 605288046 636747008 26102401 209271688 58640232 500994019 120787014 614450147 552617968 721254597 920343394 920438849 510595567 857555898 360954650 831721744 334489190 990169703 770582781 970944065 624864062 747127899 765283149 971420524 537435136 583465182 347331963 891382244 148518245 935507683 420115983 889742384 892032890 918748545 642910387 894105118 593922423 635317434 736532287 901044986 468214460 777830476 23206407 747009312 989415885 989719786 928181191 949228517 40996113 765720510 550684571 704468297 94855516 561917484 622280605 945983876 62569964 470396702 272874232 591841878 149483672 397915560 767268359 919693961 383895905 876667821 994540290 997909324 38260083 609568591 492465074 656695909 67640130 414607161 826509466 997664383 253782807 308773278 203978290 899326820 95870860 189278597 299204322 639624136 471417449 589624484 914565532 993472648 501652430 526987928 407061265 534286570 501483555 776758340 235554395 580175406 266895432 293943853 787743911 992495398 880189189 989891344 503190321 956906057 642144210 905689581 782912772 812128961 629176971 802750158 687840347 849251244 544065906 902795300 83925397 691873513 489152081 938165807 58282707 838923000 863887248 967765860 359717220 406193688 267371921 636620831 79638585 322881803 287297588 711593239 145174862 714483233 779772352 937953850 572748938 900280020 851999870 870893672 353995579 908870908 570858241 902085600 554781015 573798648 165926615 400048154 609136608 610069671 257225888 299064338 620859583 796279854 92005303 570570638 557054126 888332180 362012432 856953880 718350576 907313682 851044803 940059661 638664307 844527896 145350087 865043828 453696513 958967769 252253511 624654897 470075171 984495055 103677726 491554588 318773481 913177252 327443246 975304362 617343779 900063707 175047610 233671575 885029592 937466669 755175076 860488868 625308271 881247376 693966036 877578225 298178604 464968207 727141878 979157886 639362293 913366037 331425665 636889647 746280029 748996158 269724541 512197110 527680824 912611207 387618198 972762616 536581666 824175565 513003789 952950936 428614086 923244352 361831502 505887889 1327188 429890856 466213687 800649496 639571650 709399067 980804220 981194733 786749003 812793521 961322020 968723331 407257644 835548794 693787375 698393554 793328482 940436093 248318550 720691155 370587626 614358260 424928305 688602333 254797884 489649289 738409442 881934657 367341169 488880621 437896504 576404618 680890617 752751289 308465471 779115665 6003678 368652277 607921489 982434767 462203079 679834305 395412450 746188041 259398116 306231870 103525664 192411500 509035036 561339038 297963716 554629815 547505291 863004307 601185283 797333281 381677897 434315968 376326609 866531661 540741581 575691387 657358346 758219572 154011239 781723104 157829962 955608946 422872059 634043055 78786250 971038372 867440534 948779322 425524905 997064899 323761746 528826335 312807613 519061914 817268065 973195833 260799265 735212297 704214733 976122806 458429439 941663838 308815682 981833070 357550592 491912973 843653038 964134848 614196384 710467488 499140698 824278640 605745878 882100804 28049145 458456639 858055752 949928864 337164995 956164804 335391047 422091145 96866593 335415637 495754237 861890515 868691856 936121663 876463781 975164029 550174972 751748179 677803249 996838323 997843412 999551450 190258257 504951696 432990074 435121682 21892895 541060488 247910772 547174867 675948336 874142694 902914687 912255049 939674179 986434357 270581821 370564733 531258471 642173444 354919388 603686115 138313894 292362510 39908552 440542025 364856331 401164244 821984377 917334996 50663326 914913273 330438420 905849974 209920203 487776923 815866867 875471267 298786175 926485257 919619741 956733842 537375348 665712971 222031472 820241347 736484433 939766505 767131687 810027912 588775197 695755567 730303261 995181242 541651728 742294936 221422996 971860617 990791659 991629640 218893514 881018096 477295808 754856623 957453999 990831993 802605340 912733246 166809590 233246139 370434821 592713445 49200484 540730544 473060902 478940060 400612323 697292371 602194275 872788035 701204255 878162943 309700125 560403140 22316807 449666366 201432290 206784430 622190323 793849310 221795387 570154066 277360872 640349048 255334204 498276769 422332778 942172476 710610879 763614066 543820863 968256582 680553199 880928415 469170863 512950538 405702207 447942945 188587739 831046607 567190420 733629966 691380235 779250543 144312708 321989120 140649429 820761419 750681242 884645885 866612282 986806585 828749187 968848971 639938187 803225401 976610274 988848145 639123696 991956301 29480651 522545705 421615489 625040120 126414416 149194780 72980157 409302499 66712920 476727721 818397182 982177781 288381588 798725327 149093128 204415081 833323760 915969486 677226163 940850889 588844324 960357118 760275005 777039233 728226466 898189480 636267218 955566703 914487535 916506868 993949926 996258556 784075446 877770300 594889834 671551040 602614796 770313682 997005024 998401889 646033296 998794117 726938807 937327760 765550714 949182282 465773117 902306944 202355322 965547389 861042355 987167426 336449239 513889959 21097430 256496505 808099087 838823237 126696376 640049289 549121327 695403976 611106229 658918334 162797358 856277387 428423367 436999119 144358553 933004704 908206411 917758939 217961487 860120517 454754502 780578027 201601157 552050754 242667724 507197941 70188979 641127700 735010103 839283586 678410609 959817386 589162118 938736297 872727372 940970404 372450162 591257234 403620415 888349604 982353780 991681895 989428992 995163270 710323258 801133183 89506551 247943568 417173151 897036203 378703892 507051770 620636547 821791007 121220751 662298195 776243800 811035402 407415105 498904594 355582593 461618536 796180069 903508294 470154144 759451275 295495417 516948668 570472203 644764247 475605266 769846113 779875776 812175187 785848149 821215700 146509420 245467109 953545338 996679818 836289009 888867491 261617216 973677995 172350277 979435178 791996971 841860452 543236839 632172482 904340044 991053177 900611941 923690704 891106501 921620393 800584843 910457210 260723057 842398642 61604773 642937989 741509893 940877172 585950518 956413950 522325696 753530008 32625635 944283820 114665255 183853064 203960577 272915166 200098985 470863398 550651445 563776609 212871989 253233604 830288822 950350361 451861521 520831903 711814200 825173539 451491396 764581881 598259249 922055672 974527936 996167660 238311350 894234536 663492883 793022688 460707137 536616458 494802161 796748999 286413455 463847601 262571048 914966615 412452148 554170615 869889018 961795686 604713620 610673570 535907977 750696777 299627277 832197556 844683987 879498520 60117119 389583410 761481919 928559872 846516707 890919815 787320473 919534467 289110960 764069633 206628465 763522898 930425504 960874312 75812130 126855224 690413571 766388105 535978145 750263924 468702695 500989305 869043877 869316686 268352774 798459929 945379013 979791060 169439711 410704691 632943877 997411976 956805657 979438197 801099161 855948438 133801509 375096487 156536888 820229943 118656903 940467814 273952511 356623031 379706025 399038031 210635476 784923975 257713119 546850126 929071556 952715256 594666263 649608451 345549026 759969323 382174799 886705575 920178934 991485809 185814161 214602781 468736411 515911832 566280242 608248636 415970133 860191392 331373587 577661848 944172002 960431487 764180979 987163328 738395194 756561163 322323246 785910797 19281006 491458945 312738701 629166380 896051768 980749062 450784482 732719277 218835168 790594279 344883677 669938914 564088494 937436548 605158517 903316779 269379538 675098788 802615344 951778030 542680515 581926609 879060378 933147849 197513897 686539654 627214921 720565917 298182500 811853416 980683528 983552482 215006498 703735777 497526641 999013308 886559531 908518908 561641221 641112579 810044755 853737898 957278563 991943407 970980602 997452144 646055110 905374392 84332670 608357304 922227070 949426476 66223001 439655060 960717641 990556861 533332947 931661181 884379256 988797935 801975981 930292386 724343888 800323967 637719910 933436994 370499517 638581028 465926539 742146361 689446348 862369271 211377013 415885514 246704721 839807714 798412736 888817288 163584576 646472677 814079074 863294588 370419624 749364308 767764355 995871373 764166589 956354153 471974943 645132141 373610520 882678270 818884333 864127116 454747203 545910448 983562512 997430600 648788213 750282137 604718801 788564544 917616912 976802241 527535253 795359042 166111266 183741810 466548099 862433808 649179079 774233182 996065441 999001165 39126231 916321349 797816632 833945992 836380984 887614712 989125008 992586696 169432978 493313993 384498363 430454558 630601793 937977238 188854662 248557917 768604119 991483716 50795077 640955325 39138942 395285632 950864167 975764630 614848603 658850301 305372944 874945748 896321462 920576823 995228349 995440686 859620066 940144896 170201564 924499910 644766524 907174138 160834029 979433592 972392731 993182190 107003242 726863447 472494914 927329340 627914932 630676238 968605945 993376961 57570802 555143343 766349660 813560747 943605009 980193507 618958427 663365398 871490483 962862776 67785308 759983892 62074466 507950779 540655300 844113949 139090368 165532253 894329613 958206990 871560239 871563612 102512460 705881294 132505334 899789167 490327269 645742914 217605379 340230561 984633917 995868759 784490353 882818867 121328028 925816343 883994206 956719604 615936973 743845889 395892539 539241148 57730551 968894304 634735202 973076741 18483673 948889718 691469166 792119213 559345986 893209138 379906471 525097866 733388899 745939578 15851175 884063662 255283311 853522123 424005793 618550669 996748304 998229960 144951484 831448797 829337345 973814311 694441788 842351237 748628777 838790335 656038306 685528986 438135942 787076709 218029784 699204946 843491046 853297870 294387605 727199517 55969520 435714616 791487047 802353706 170683165 987326185 515590338 616903095 513855378 763877649 881874814 900810529 580113938 627433180 98450115 459468926 326917570 631589869 838788629 940325368 435986821 598117238 729979929 975170519 19208264 657221735 345943653 852022148 715319463 782572436 744529966 752053263 844851942 959197533 778785633 981826825 5231980 978966438 374557592 918407250 426829844 770419044 937653875 942505747 428634401 506965752 686008082 798604472 922108563 999507361 72124829 377794353 90293432 121542419 307617788 879950894 971817105 986434406 221460577 675197077 352788620 900310531 912249085 979265768 608775544 697974863 153815104 259335928 969960632 995319069 278642064 293775853 422640325 566759347 227016732 763785793 913023874 950196469 620111610 730783377 337214265 392820405 374710198 574099066 749717208 820056765 453950819 480966935 553412321 595910200 914385783 979490388 730514039 872874547 692635438 761436633 195697754 692669858 51495952 687637949 347088281 636231335 408501433 892848385 775649396 956692244 231634030 995975759 971998853 997858814 42616057 254129131 385537038 579675391 600301353 968538282 973772379 974355883 772077740 856630606 212003653 860433719 546411439 643908764 772484752 890775545 410935110 873852091 553778775 558328322 815441464 966478691 59948975 611878502 443005190 937791539 872984692 993049807 918816008 990478220 868562046 987608634 136985340 543030273 648208474 829731214 163228600 230760733 345887263 831388672 825278052 951462854 448362147 798690545 757632868 913423563 380096463 394392990 240592699 940815638 876333392 969401190 661937541 675994869 349772392 387391223 208130050 853479919 346097269 783747744 735626800 875689819 961701933 973895594 570141019 879232040 866960093 951971184 535673379 557313014 632687567 902778950 632724959 888506330 448215049 941393632 309768171 484207018 396935302 572473991 847101981 950856767 789692835 965333729 972930833 991252315 959740471 985959467 32693073 151778351 409407098 951633607 473329028 872804992 839654130 972190082 241185596 640697050 251658272 572994587 610896816 642833068 997625660 999394602 905689626 942025896 302809529 619871458 65444318 662173385 673310105 871235950 936678424 957571563 656496954 756100315 396882329 780022821 712865140 740443755 713055219 859966195 990200645 996731784 786693517 872502821 443857628 879111547 911154134 934240136 482651218 495673080 394642015 422103645 516521905 918802116 682174748 721572401 463530698 627114527 544530333 630095533 847147726 862870010 961151676 973010580 850657408 871353912 742846427 847847435 329993229 444881761 551932587 924959951 444715597 558072735 947379918 962167899 63467931 326058709 419972714 548944195 861324634 897334560 535500727 771522995 303885015 544360557 278492376 391696846 716013094 855523767 827153935 926602114 877267147 977414886 384028309 969427515 201045648 668092748 558449100 802815397 891932287 912728196 636191424 928809498 357824861 977101499 633586123 937422569 725959230 924475235 643620411 921853428 818843579 954355320 74964505 927282624 412930607 516986358 330821295 518040858 623208353 977670273 920783226 982772911 795182321 977142430 789471401 829529564 555096960 772593665 419020056 758454188 46633497 577090594 168224352 417928273 74402460 966371280 279437986 943925120 344430480 642889262 659845039 889887538 547861313 751810757 900848705 974180478 655125037 889220270 246564051 771992886 158576597 910281292 490358485 805508544 646038370 814427961 48457604 367717684 570464603 698343334 567121713 569279181 180856707 244395384 491303421 624021511 454490611 534478323 958295685 962967216 716932361 737311329 784972232 823995319 963653223 996097904 227783083 785386541 651940274 866394692 476442423 580675007 891359117 927418788 828534686 903083277 999860201 999931266 175300757 506806186 702988331 823963008 351788035 774378433 255754042 393614200 194583213 518849089 528225459 927812345 639326338 729441193 830201192 876467922 807832271 968993338 6645957 785914842 71454579 393599540 806112990 950199793 755471772 775565721 908564006 966411876 641181614 999601269 444024656 752314622 223059392 241175125 845309213 922416314 321310965 647438743 643558423 954115250 482203129 943506777 173256016 372007471 500689162 744699352 550454854 877142328 148662575 358889619 466243441 886081401 564482551 619077179 627655564 793940712 529006277 587461953 948555967 964863529 822906201 960678556 841185892 904560486 387072414 973676777 998238516 998718284 528068810 601585399 67364729 926554884 669845194 672731680 861685748 919123275 41122517 191748321 926998367 971734460 78263311 566073729 363983305 851886924 413811086 883580936 412209259 703688718 405254895 469090680 741008851 787750596 838720759 971243795 316376749 439516475 799084436 962617064 997822124 998094297 426451083 911871414 55274815 669119749 562845372 779944446 371089529 961728361 327555919 643240869 174585633 313741229 378098467 505617617 727988912 828539815 948791795 970905341 74745073 378032869 502090173 800875537 43264500 145193646 259560141 659184942 217749180 687232089 589143609 736900169 602334670 829060858 623373166 711509156 292099125 544827685 603055361 995252785 479207372 484717498 108542158 308633206 91936823 214578509 437037215 908542441 541154539 814281087 824660070 971209463 307031545 456421859 654577323 818555108 620940389 871930712 891917755 987908512 597760766 709266646 233994376 340221524 592811784 927206884 103408955 661984533 603830953 659409735 855561146 871411153 204850131 487216754 196040558 924577875 293909295 725113993 884880678 952720989 812876045 897149850 550678033 776507894 668200052 879510988 331986859 852443935 717571254 743063609 524362748 581502307 343054679 802366878 753033632 851733456 546833324 676853716 871346867 906906906 324610785 433745621 292803974 709523410 161851117 695863819 460435434 502451648 140815429 205475104 482476926 855685115 528566773 733719830 625802647 996582255 994996935 998101182 582826719 792670977 257745753 386086413 804748301 926161973 364965404 706287810 427491325 522708073 11209454 435505344 301253846 386484946 461981868 718787400 515565575 678375438 283859464 742858307 747214125 915634662 673147559 715878712 316380931 535913130 804498406 829921864 194524934 767661083 65661115 683294668 564695858 758592402 495795482 793871461 219550510 824968815 703466921 779858411 784043898 964211241 11795620 171205855 112575894 651754342 477151202 811166486 318886979 614464148 253948259 885324015 815965127 988543165 712493883 934372156 600686199 675390714 741097229 834241661 737268638 811799315 69070469 814651252 936081305 944618290 104692457 675288127 930213942 984357121 966007293 981776633 90606947 443576551 566772183 675810318 497069936 604196855 859116538 917660981 473735886 810068928 530003244 831898489 307282314 780147094 256154491 640913628 986899471 996284770 738560073 853418386 158355079 970111049 438954252 730880307 282060494 661358622 787667467 933712426 423222241 786093195 543956051 975101593 722065846 770352293 917090094 968932017 565789869 645721840 683784978 972592060 801652205 891250379 221391472 507790515 674159497 794518861 603504454 796051129 260022414 799356918 619564915 913094105 950569549 980792193 327083775 796400104 110512204 659985536 806947832 882590307 284482351 922308980 313140022 485271907 695452670 731776639 494849257 774350398 951222479 959850710 528265600 635557096 778868243 802868125 792351103 937044733 404757343 852516564 741918025 945793936 845752472 915133746 503028547 660021237 535652802 566725235 935035784 970953500 386351421 926054789 760921862 881911566 939960158 979996268 256783792 388590993 38228320 271057552 432086616 927973971 490766668 913278786 246455412 621411557 41320314 295745924 103312161 131202858 493654658 803588490 925420167 978389875 541534016 882761374 800956192 975612227 414023850 436325254 413405438 762753594 496991144 530027726 318752583 934514050 797640635 966730482 534297357 702437118 585163300 713867043 835934460 976395198 171246387 225428645 340492965 707812589 80840736 786092099 81837242 966596446 766729377 981482378 15559678 793363521 324224516 834076182 366118805 473735472 949267543 974057961 238232353 294783586 562020863 621243675 391673522 689679752 788079184 952915329 761745945 957392089 248834661 534088963 302372678 935675117 809495315 834995946 830099321 967537107 68658530 674966450 349812464 798919871 693863962 869937994 592509269 941852990 117770633 346622866 887842964 893492567 381259225 967902566 737382617 997509546 247699383 968968807 793530622 885727819 365927191 936494978 598670246 770826768 298677250 397574453 730279188 995602640 984282679 985057634 875410741 900650559 633270423 954495405 483184184 561223118 258531791 406700274 411118177 442278085 575939519 871205219 256323111 786561124 437805725 775753693 50498558 164047031 464744722 603244133 685680072 822574195 640602307 954823781 930747769 947160300 912745785 918670657 557149071 765363992 352808628 775092176 987098380 989093271 184506662 964171508 239965508 741295276 436090263 733355995 251086583 328070746 455970762 850617488 524729520 754983860 881753787 973137792 945945340 998966931 851805694 916043030 299863206 471768496 170065577 224089875 847293004 893770825 416980612 737124164 593514664 988293907 556807148 865146286 159870597 904160528 667511479 873912420 103106893 205156277 230725265 923776143 541649798 960775557 945303522 997233708 274743379 954086504 89979118 172639880 54280367 798567145 140946952 621003317 817145851 904336298 300475067 548026812 115137184 928700941 761031803 777223608 219187838 311519173 426444332 762233742 467736298 634172250 317656513 828526134 530749642 576551139 599643032 889293685 902978728 985583509 423435926 690723384 408925839 996545850 640007302 855563094 374912186 683608970 958144245 969378864 561488488 848320068 496543637 901956964 3617896 344580997 156729148 269392857 255567325 940538833 795422784 797951557 713545473 855748519 324285047 413784082 379565051 979647300 363561918 583043054 590858178 920074804 112590582 596317974 291198887 297091727 892816028 967059825 508992704 608442398 687058711 734320845 180939767 757662678 383171097 804774802 488389042 725349840 743088749 826170426 62008111 830388511 519586143 571296186 571780639 828614304 426352216 628714051 40276031 688365399 76385765 814419542 420106401 849564352 622083223 780320224 482921743 514529867 866360037 869891558 115227425 603480865 813133232 936292048 41657992 565359407 462704081 783023763 136515429 216852511 678579515 764395100 787151965 863621982 122030145 795000716 949774126 980858550 653882121 961975262 765948516 873618547 247932374 924653124 625608359 706838050 933099273 984834683 431579399 868089953 438786042 538052397 312827112 890340392 293621883 316639677 539413857 603143639 74880023 803838720 61931675 687638075 852718832 909927533 157912907 713054470 594422139 928845766 379420903 709862710 748736163 937325585 707433412 998349619 169351683 195548088 588558143 912455980 549027233 675694783 292270609 372149937 208365116 283382708 518577001 962119815 492318193 925608103 197647935 930723353 682550542 962214164 939367088 945247189 157869735 269859481 897556591 928673822 563738484 926683618 452354619 934214641 473556740 740997183 577894370 686964554 864845092 933840354 496152973 779162029 252478060 288326560 285499144 817566363 792976613 888643252 73710156 984003795 21963734 608854897 232909448 272551720 986432837 993520184 656275224 766592442 76843146 697939864 244815853 528634459 704307537 855657592 469521031 593934059 19254536 47395205 725472298 971787836 216446446 602582285 954771134 968393836 727559816 906855848 919082016 988009707 800640437 940544967 648272208 995756167 992536137 997621161 758195016 799040569 515028675 625908207 784467898 932470553 256232892 602863249 322959252 483418686 778004498 798137039 345919632 744474353 601837296 650900069 933748034 950836391 613270530 843498567 745985687 890537352 124950351 197973472 543247490 557928899 106653245 797637963 742995337 971355909 719520378 744909863 601453141 659215179 126703311 963827679 568650959 643611373 158953034 957056285 83467559 865909823 276997715 979584465 619755699 653531056 934823723 975149753 842973735 953870654 100762020 595986749 72175038 930363075 14288231 491371500 464017548 973251904 711640575 893946613 588530032 699578035 539421992 669402852 334237097 684758441 439634260 467259541 636922473 735773414 966291318 967074413 689637607 796245398 863240499 965203979 298726712 441916866 750908006 914424288 905579399 980163770 113049275 993495106 980527063 987366181 963246825 982678088 376975916 620776267 565009630 673380842 759657720 857166985 436025058 916616692 217947355 946897850 336297233 551124313 836539931 935925019 946344051 947080967 112089004 493830384 597591243 608070102 778489248 910589359 233775693 430488786 470355155 902305151 127862917 285899138 795345079 875225085 179460028 808128770 226032827 811627387 730936450 824165652 525814033 952363942 191865110 529802605 480938594 992708619 451559460 748470280 536431355 745522908 894000225 976470214 973922691 991039100 367043123 641679795 749357091 838997488 436209536 557543008 32432041 489306242 611260894 881450282 574122044 697703537 833224158 864761495 869072816 935318245 653166630 721210529 958107909 983436220 264971876 860222440 920359885 964898668 32102162 523160351 815525026 831672050 287034434 780028117 33292426 661462518 342702482 962221779 433043588 515389325 242868151 244850523 102164890 792473745 132167780 777475606 749387364 974144666 550184373 793269669 981119463 996859066 403097127 486182602 688855957 951087367 211646339 666169814 68816232 627447804 782212369 946414052 681090328 856228298 346779761 981107730 355141250 815281039 672368763 765068626 375341172 550668726 344827188 388412842 59465724 560768681 425339134 959042733 346179100 764211454 487726574 994037254 90618243 311614447 730175880 816045762 819685451 865105880 521108081 655567323 677016260 742876121 230336472 490572507 267605016 865599184 609724446 768821077 648017058 764084615 184537667 267623289 59880010 909353284 307950154 952014568 680928678 868888925 152076816 740909527 310155262 552856612 22442540 980599360 815219813 973010638 272372634 974698854 485799639 717433088 40845286 279147022 613367528 648288656 363500884 748367525 679069491 778887967 187526788 190157122 440360896 734523799 363890243 855725065 259373860 691155337 856038779 935792097 273100637 960402794 789311037 960709852 634554952 984535422 589544837 684890615 77831814 588090758 570602057 664462192 219425120 301996797 425021499 966575118 953256599 982400559 444823758 823353042 200307940 398144296 369698053 966226425 486774724 865973117 325784470 751037582 316816039 826400497 636658779 976341303 437599902 730902485 393493329 752412608 829765133 835695788 690950987 992549065 13661698 722085797 68748449 689258093 521992340 993115281 755894007 856375737 691297013 842649021 633900367 981583289 476584027 586086187 956048633 966298622 472638495 828298631 375877199 913606470 411935164 872510951 932029126 981693788 128408894 720917326 874442145 886953228 801853310 996808991 543698609 623395411 977960447 993261363 349431286 750229202 336085950 932355763 575599293 997919227 119260570 311956197 411422791 927098856 463557044 914275121 756327810 997231798 157518592 772090381 235991852 694751641 187003056 286694163 770305760 910032167 576284837 767792159 577428576 860768201 432485286 796150045 831964876 915402107 467980168 764428009 286198767 613983414 281780224 357782638 804162154 914540349 776428711 837122810 359253365 391556634 155089911 664183388 844448299 986143371 149382823 978396316 854510425 953319140 438672627 913305402 465884759 504860068 243257337 806994332 804531422 832247182 566765067 969979164 375846337 838005735 347097372 665947144 796207285 861527380 818842480 987786808 568832927 653093417 453325535 501224377 310396101 614040945 463348419 512478844 777057403 860393443 818246204 931259240 669408344 851450998 239424976 381652820 103815095 453622046 31804431 734668893 668977324 952179962 493053313 728520134 896468444 939584842 646473368 908770358 510190449 865083796 204229756 546619946 528059126 911982591 283994386 523108015 322993953 768392746 112523850 271500034 604371797 719593782 508709581 678770028 582645147 972067453 151965569 991387385 941604259 997620829 54711476 132896178 416513519 968737102 938161104 995656552 128359994 802953019 403938716 547501057 963583462 978629389 32181146 417312363 797454461 946434056 812492391 861920792 159231451 464459751 432706619 557346293 68903004 363706317 866998282 884139837 618069657 913896378 905654113 967415465 666414146 841060476 109772852 489113703 229152724 587638166 636118262 865893859 629166720 859465017 521478430 593418900 269733544 784644636 191048662 566293312 281848470 772803249 792785213 954434360 783635423 823754391 658326237 782825236 596969803 714239464 440110324 914524647 476060687 676172513 708671899 745446948 185882247 329157814 754613670 989192569 689255805 814754691 278094471 438889239 972782922 978745176 590783212 931344789 455738603 839319668 235332815 504708183 526743460 675706872 655019723 689910281 717177890 925411316 517712486 700435731 938317958 985668566 444579655 661211340 289834044 710813149 591978917 894871732 806027483 906609119 533966333 946646050 863344834 879593162 183687498 801287366 565496188 596346460 245448990 811745163 43278795 439738211 741974368 769529500 667422625 880638197 743476697 930434989 359652781 809703529 455558752 903115186 700229999 992401296 698563419 724870766 606747182 854191681 841644512 960340791 183730800 660764999 825888083 896079229 324444345 664871593 558451517 857322966 378828883 523841148 528383689 870943080 219794093 997257249 189843534 890429935 369539088 447246526 688660736 855870672 378507428 877476716 411971570 562308848 133002944 416957154 16247030 514937174 831168566 980615167 15328730 911928108 10822510 116241487 751027794 878169912 808551063 964706350 673718845 931291894 362816564 520100233 699066490 788058919 659379449 845910927 231778228 847299631 982395201 997948061 985067608 994156187 645973570 960356234 137437017 641665733 803329757 979074173 292824721 769999228 923767478 974429459 665666950 723711623 250058288 645396087 657619812 910758487 657217360 744518368 408079055 887924364 588966972 609246772 379938564 706956227 324088587 527273856 665359865 850557994 726312301 871441250 314881959 477535573 215157786 379764517 986030626 997347009 996352973 999649201 454779694 756370702 735433621 979116523 253933277 923995472 940561787 958909781 285858951 450586601 678892163 736874688 500708631 589344136 940508166 992102281 815371335 892033919 628199071 876379473 465288589 861543044 77330173 577823571 760835376 829545530 179410299 758645077 13779000 972341184 823595699 952951377 466675350 905466153 471261617 867579527 160940513 959040723 697558186 887922315 706990570 819697386 782774952 807288994 930208985 948018998 299371586 404775349 413258146 971148604 472823318 915422795 361531158 608982893 480798099 827501553 989719688 993474611 101508148 199511716 632309333 968697284 981820129 990299290 612304142 970805800 202011 73674379 90839118 360002570 151471825 505653537 502128006 824743412 788641081 903475465 87615738 104059138 743196796 987527886 429181462 884757892 899246381 960415176 800600420 838198032 68311740 410659232 901058209 997691698 589361931 823089937 837650730 841634844 976979839 977027569 95078733 499595846 789878185 815164367 142072648 759318554 538625645 876100407 989547347 989644416 478271648 599470486 480440105 806236378 434746399 609008413 814231780 899942384 578048525 897908086 594744192 627231529 712462554 893500658 325907777 949119773 763385399 822166501 712130371 853074837 894228009 924660277 256687785 645603545 538551435 932834732 570733538 973853076 62466422 702639401 26950253 627420618 80355019 262049497 590752107 745205000 390255025 838938404 827112483 935378963 378860270 720586667 772171994 952285255 928159168 931399465 252529774 924052661 496692026 771720315 998497514 999426202 952912031 973878063 458968947 476671476 313985679 815078516 565256604 930886953 132092511 716483001 487069148 626621656 254161915 879080588 87907447 395501631 277257798 643411470 736401278 744024851 889712429 950211668 925726326 957397097 708106370 828821067 296789243 607239982 750276028 995082424 281488610 961921677 619932444 644627065 649697617 745578899 127416982 548742818 259768804 601143705 435175201 879117582 281557206 346430857 253415182 667824145 508817260 563645786 207378066 617147867 979450918 981524790 987314055 991864793 293075416 369489768 985633137 989258948 705038463 910341970 92976063 746428135 689816305 735048081 543840501 669528979 841412766 850766770 730021692 942520233 446511525 774912783 922500786 947812312 552268255 980799357 517214468 977320495 575201511 987019070 687554402 963119853 389251472 481894442 781777844 819815208 808961493 958965881 956776293 959362907 47157868 169529180 235653975 487230529 975683640 980540467 206047252 640604634 724466675 782808841 802590761 959042529 972671630 998912568 639640042 649388117 565129249 897187404 894748454 904632605 16246073 643994769 689054838 738319453 538424554 571166710 398889393 765660573 568014574 934311088 526025825 862355602 75022022 470162611 310779064 771111704 771643737 775616434 640857519 838268384 954192399 962205303 224547863 377520674 694261437 794216762 222874575 522415881 381819568 621623397 894066564 915527895 859979522 879192735 58914932 904616834 504495999 544681692 220004331 308680479 135121596 855946753 435147365 523007525 627752817 985322562 387756888 950759771 802112325 903258236 443011821 862520275 935112343 976392821 72181558 333378869 219641158 956211138 634815131 798601656 298495397 481008121 4485668 744240826 97308405 925912646 267678853 780193892 620693419 970895003 508778928 775935712 555309424 707568482 819462364 981831897 896221949 911022286 427727383 492663493 980732287 999759729 43125172 941206306 177425311 804185656 232729480 749920023 924242115 973531972 755134964 937638676 973137994 978257307 792266647 796394515 580636814 879041204 417717012 574722906 785234248 894234942 859305084 898692916 153394276 282682289 475031126 572528485 395177931 814244857 212196585 215495330 991918490 994917379 215885680 644769382 283197393 528161758 462661810 704411482 133326133 585767731 234986830 743931049 944975446 960122908 189176263 817973277 425643431 719751924 297232349 615519687 39301736 650464752 746487691 812556195 367181176 805624668 331064187 374676815 174255816 993296031 563953028 583412531 107447680 154864568 171519622 403095744 74571447 500069420 627931621 865226776 191519428 653545628 896697838 980334344 401542379 889738344 489095499 727960727 218393859 671824750 16590162 536074556 420374180 713505050 362282965 864367226 741975905 786649398 706666112 841897530 785460517 804885448 317723944 930681325 413381559 527526230 244837128 648302893 903685651 932859356 903821357 971619727 537676941 969371154 869100112 996692163 235290794 555887107 339733007 547229442 144950275 692674833 935952036 958940581 634429219 712405981 149959653 155515306 712940998 948372521 583876487 777172297 103176541 724529186 588773603 842422996 772581070 878810626 213699967 386393311 239415384 908214153 160864538 699412166 747381098 761143371 581782150 998930967 392119730 429860075 500617160 581733774 609469575 894489442 210364274 744013719 289406273 424266630 649775770 871095076 925132700 948083002 198822351 571583712 857897560 858142495 40402165 759681009 93041136 499957063 797971119 953887173 245532531 298045685 795852039 943682077 369185882 726242596 304480704 638920741 482720677 604721437 860961183 954803858 1514721 505745575 156990385 830193902 913167072 917920991 422245945 617765551 344830473 382720188 725122111 977284093 117485029 821286661 169180512 610233431 530608504 859848515 560643963 910529213 196223173 887389589 975947383 991494468 246537856 739189793 704903464 806273508 331387013 743562667 731895055 990131958 553015643 740622498 969753177 987346755 630505946 885018368 547551913 763688289 205088674 883829939 136168688 920959123 747769367 947087668 730110164 805709243 201833212 888250088 249964760 565131145 262887782 426268579 54108366 144137454 752561598 970122785 362060839 596134777 157591378 527527365 47731053 203754585 848007065 930776758 474584881 942852274 942683626 949466063 948289982 962708340 213822835 261859325 133581789 788575066 875720144 969837876 533135875 604548171 540676356 940332771 94236001 344002488 87875144 271824079 553990694 684657541 232899571 342941879 985932600 993547235 35475007 433339176 175877501 909282633 333863491 928951518 815270445 982463519 192585568 606641275 299712211 480903491 805294914 841367708 184250479 980776251 949086309 984102960 825007682 851320076 700001798 912606429 69205142 116873701 854076776 976400441 362509266 692664067 710530768 733992231 191463025 940937086 46437438 386426534 127728785 641867125 140647233 286646584 903240438 977515230 364814766 666693277 951200323 992948122 605751770 883501121 766575964 993898557 819707634 927863197 846841433 945151201 293504990 799553166 475153670 840311210 10776463 554337179 852559115 993487928 511708567 967555147 362987299 495935151 415900919 555950281 603489643 972770968 702251317 950933019 14310006 941035000 662307841 911977631 694042119 912489688 455973576 723829329 540262610 592704228 166326884 273421962 648101598 649382498 491819405 531321995 407955456 939278565 148017069 972814133 201231265 591214062 466030974 614005331 864196135 876891623 377507872 377613380 776278070 910643123 263448070 829456005 30842854 398347554 360991110 415085785 506614090 892172600 652889068 674270608 386665146 957653727 349176900 587685320 567603263 679597329 404312046 951162790 957468914 960244061 137149778 542898197 316793934 392168620 386031128 674338407 75696109 306385614 13431680 793961338 109252439 337734287 643887865 863311915 931501805 959586117 341129076 835357667 339965605 492955090 835741553 925294042 174086122 603217397 382391482 466949945 670246069 962786224 670132883 981825539 351611213 972941855 165230242 346513500 762583323 788468220 277012662 973600657 944168393 984962323 375530055 573955605 439173776 488142090 147771480 293253621 973382897 978417301 996684338 998206100 912257015 945520129 445050146 744682148 802245072 837705430 274973384 872981247 665107216 887444460 993493879 998085443 212873849 939594685 10016811 878137842 941097763 981069005 498557369 599841216 705129260 998807166 365960776 972191909 374862587 559727560 655054014 731635384 105292315 436772297 271691037 721468846 768063946 830799443 102118181 224692142 787146544 942598047 846163717 892868206 336867226 421330213 767988175 859152337 286689534 524348406 215094494 561850145 298417853 720006961 395654580 504960489 194026932 648751905 235439441 771545303 330393872 704570619 963236512 972152118 257479763 570813883 315585557 467316758 910350771 937884654 42586661 515054405 544715031 946984235 200176375 393085827 939292480 963277035 526483964 676421266 402797614 877226691 47370884 157960236 218887790 674170890 816129342 910552052 257968261 872392824 666084310 948728206 797233020 928620064 383784582 598790274 62427353 264460355 322411029 328404670 197325898 504850715 638452534 862417766 928945558 980356180 283852126 415643510 367230960 990256584 618715880 845040836 124063551 952370578 682096371 801161654 982447547 989947149 907124618 958899438 834647498 960115248 341024696 437430707 840173794 862056989 709169690 955524258 371260851 608130896 301772893 484086694 103229948 242139878 317534408 687619848 955250982 956951078 16544401 923277240 951452672 960135493 146792484 371552594 244031656 255998387 103331753 582322561 846277291 903862413 561207420 617562212 181386217 651480970 103243043 360040695 347379452 748598304 25515985 286985146 163147019 387406807 864679454 954555271 51279670 427115833 587287509 599891645 682897692 719303452 208490033 851662643 991373774 999146430 612118106 916442823 150378997 514034209 738065626 864242568 110197981 795215125 439104249 744513995 524297368 937176389 791382023 965067600 923411964 974354493 520912814 936019384 994086091 998073072 329548320 726940539 968301315 971927676 707046150 989746368 245939340 946333067 431087740 773406747 807906016 961835907 380816550 783928992 26903237 524777480 713501981 749368998 454150391 703118883 314755725 515920048 574615615 832922127 210334732 868735182 34690115 138933158 26101492 153718984 877051295 911365343 757329560 812414200 857511818 921304657 934783380 957575116 584631270 743011276 779196642 853277509 559952689 761060523 572095144 687888904 424999558 487611357 464159626 497072613 862432336 927921508 304803710 793177340 177122252 540769301 322611305 771121414 172416864 437173534 468152507 600170597 650344311 995063176 359116372 844036139 515216943 747625031 235607680 661656056 299512794 339323819 191349869 466679082 25999739 381135009 669591884 917171667 358820119 442129847 322994419 404298740 892592552 979138262 897321838 970504905 586242683 649460125 717600404 892526241 656956737 871321554 163973579 558578852 600001712 842608666 730551103 941784190 266295622 586208092 992810247 999575715 595570509 756982761 184526838 695009028 316447870 503618391 78485154 597427750 225966570 365176054 351929520 509996808 412847219 722415632 43792774 903291358 161794648 779759406 370855672 576798005 122924479 519213419 621704505 888703792 759129857 819256039 185826716 206097200 963328956 978922138 218762028 735622676 984354525 986498101 794934332 899071219 671348287 920593289 719542308 904418753 549151510 899778538 50468924 330576425 466066050 596879427 74558318 392219088 878093699 983511047 974267579 994207362 657559119 923495149 406043637 563561045 192139734 850429584 568447816 612654437 763631095 908504460 731153399 754994539 516692830 598802929 428018774 932616429 920362840 949582373 543879084 833833954 539227706 752566944 382967126 932484749 543068318 603424822 43253077 667807070 421741056 546849076 896712228 951399385 868480581 975817068 22280093 139926807 772120703 904608756 347039413 968442789 494028548 750606016 303978802 581912621 311774143 503121675 585549019 846768337 856078976 917365925 117614584 335013241 232953420 293660168 79227823 742966509 949291029 985467521 848635579 949762377 505757733 991891947 315253244 450725227 711595514 811832941 467299986 689929958 850005778 971995392 452486147 588255643 490673175 514484939 342231767 801421311 602360384 975562971 98209615 615851921 394761520 914517218 27930612 833343694 988611848 993483930 56796856 707310392 199846463 964009288 926835820 967677386 129104459 398098743 835490369 882509933 650288444 941513077 381626371 955986896 173908214 480179079 444572250 605131053 852500454 886842300 290782446 735909580 252312515 451570412 783638515 986555495 442770468 754202652 147888494 915282678 333345555 373897359 982221914 995140795 876096448 879712909 628439905 968940034 460207756 943939264 923030138 925976400 196097466 549176880 81526828 587663756 505857756 592060810 519875872 598489314 199750816 806128782 706092065 909072227 505022834 505061369 339470335 364477104 217249047 742621576 445119201 599446754 750247691 927104296 434929687 610076030 179131957 876919023 831280317 840113234 954278472 961074768 768898022 997920500 181733458 992463240 995094660 998207267 572012121 793433265 445529874 911108488 262593747 635884395 204995082 487125214 345908827 808936667 763078138 882415559 42784306 757547963 900777247 915992595 323145659 518160545 851584475 874002395 180489435 943540301 493101706 883104401 521774827 641754325 603034216 881687660 279339390 784625530 526646079 809909025 947847501 971814255 833410388 994859532 815403920 987324190 272534698 789175693 189715917 637275943 641205345 843648836 211877090 248430016 117447920 350275933 786658553 819979420 972365496 991233069 846463800 969990011 576135410 746318843 431163359 923070589 58090812 77623015 835900564 949255848 159343121 445229909 877119205 920409659 522774030 755093929 854978647 870388614 517656206 949244564 425977520 519458921 851218740 868754371 795571684 872527997 273844861 639193905 51923389 968849160 762188730 831746876 503667743 519857780 485777311 614833465 625177142 710132262 485394504 767225685 992830973 999499446 322408842 511198174 875876911 917959515 831212065 999597371 135852115 568253374 520096721 930243870 686410401 844329826 358745004 970627345 702722273 999295670 592070004 676753682 811844140 828765895 160187726 867101310 873408673 986169391 207158323 988559354 80843557 583915912 233281178 438431250 333640193 600695005 482970908 870779126 937247693 940271735 941077602 951672472 563156244 677133902 63827998 562726646 833968432 893453919 221549844 687540574 446828890 500103863 416412504 860040519 859481958 933503685 737436960 782928498 172068242 455008507 241710672 729974664 586926730 642481225 460198498 815945985 934269248 987994818 927511796 977020034 19086060 923879444 728988157 938424591 752155369 809005216 259035025 473621535 779179795 856964477 150650388 722386846 154327131 279757682 867591320 911727367 851079277 941368982 229718487 478684321 391324686 634839663 545671838 785692527 557667125 925171794 590244028 993881065 39079506 894641420 376903776 883712773 733744517 974185856 986531099 995927393 285755776 422095098 533488717 639183822 390113333 908148109 558204042 627103586 156941238 967560026 408632014 990308858 962528690 987303414 27893097 673413103 802981060 920188124 817192946 993073511 497940981 880865956 331327006 782280723 611340307 663782819 60357500 209906469 994708782 995646008 687509581 954928094 456629335 856368908 323438934 511146536 320608869 763685530 74893205 408015336 264456504 586783186 887086570 986445752 529077646 819355617 961806649 961813953 98912008 457576149 295528225 763576081 51359445 358798888 384756390 937055764 607376858 876338885 386495807 663552322 541326981 718759849 306688400 728084797 521640743 644291926 427117821 839949699 229691712 329773278 724538933 986939342 511679163 732973584 24379744 91457506 876970724 953642685 831683877 854535222 686717676 934319164 924002016 934186608 59300913 702020486 928852878 952845882 755811559 880704935 714082679 828914328 963750984 991264200 627576658 976508155 199462948 570208870 973200055 987352053 300935300 985376854 951678772 981530275 17740052 696138132 818377216 884223598 500849015 922026217 655528036 941018505 24754889 273345858 810556490 827100036 441190168 595738460 350761510 616572364 530356595 988958118 193764770 917520888 807405772 956031630 495471815 993499869 170746702 321316035 379229458 588421802 251725544 322308540 986376141 992251564 532816137 696221814 82363024 210262744 458020654 808027828 27025552 148142868 571150548 817628212 609769821 906798653 37680559 777641010 631811801 868650098 300722850 595208524 642049149 681172407 822158281 838095338 200042487 807491415 417875064 872342432 99062153 801563433 624984808 806515043 42846788 459552927 577561351 765251487 558226164 828725421 668212165 924214863 652152742 805641498 299471455 473672117 593111732 712146253 229387835 595865769 156774892 299475300 288938596 675754698 852829939 922881326 495695422 723110080 40593729 477805981 678614835 981508791 104955043 116000936 174153971 273078348 977435232 988498923 984043928 992152320 33079170 951358872 859068008 944279179 41835941 279595646 462685382 640471954 468063220 570114423 536349690 881592611 196033656 459262757 302383571 595398399 870852955 875248264 525525396 881662551 251027198 991193208 950382292 999073799 186075336 450933110 555773034 675562845 322971017 331529898 306612464 419815866 587699022 701748600 172513615 492038459 733861144 861508132 94166171 443411999 178858148 550015575 173071839 347183681 662982186 981980602 299285366 595085915 417026310 739560520 752856810 813364615 947872443 960164151 423093003 945317297 208873756 735711554 227814748 739269270 406325666 581975532 23371938 533606383 317811034 837753720 753446009 945336966 255459152 692551588 118229503 505445459 462747826 808076177 654335541 661204035 502606256 730083809 376066665 463104771 633990532 789495950 954206984 988223954 19527763 313122090 351720418 568260182 907364551 929348550 775849410 981785875 535107502 928371150 180926864 276624859 687076426 976631897 609495098 875691039 997429113 999286957 798365840 830966040 687565807 863417260 368341848 686632940 183729267 710910560 599614901 814863585 198736038 637803955 51820852 110319557 290603081 814281639 717432462 821180902 581886830 741324878 269101852 331010831 486564434 523464467 84332584 325862915 410601699 590759776 387080776 787957498 994156983 997226377 399258501 850355198 225674598 947168080 401043124 443776009 794942704 989243276 12332274 246377992 362924943 936862902 839095964 983759905 943964124 958643954 990254308 997599707 928187539 988051530 847863033 924786811 864061836 987520638 411958576 492330615 233288807 914296973 41375226 645050435 262399961 328296891 660112254 731946284 47022240 672166794 347292795 526413995 764505265 821202575 958570938 992025487 732035637 762824082 858481688 944545860 662428678 985325835 524760036 678563773 445047181 752182074 239789864 744463445 666503007 740505401 909521234 942428018 145885786 165668985 768232868 783544324 83179277 231930504 235420347 698159130 814588994 943713407 5714615 76347016 630488332 923014741 778357793 992799733 43460995 529247317 968418705 995914843 317486036 706652972 139173510 483400856 130467749 858195431 756064993 841357247 213475360 654072310 391042306 704472873 765658722 995420697 469940701 793432475 47236291 938864257 350357231 629176479 685080715 903998828 450814862 512389178 855342528 981360103 703419209 722529917 101289238 350632092 912596062 931556416 715447414 861545508 975952165 989514340 107364045 583647211 254568485 610734758 827645095 966516187 807629195 848171886 754901609 789808883 386395379 702425095 475015630 721679488 791157641 871272221 931548643 967308874 23820149 324487672 204635651 943057435 594312333 740468061 808947593 985305430 868314385 955575266 562191348 839264368 608414847 730198225 186521282 284284128 14875602 380284033 329306409 453690484 985986345 993438763 495491615 688518253 672978415 920983726 37702617 178241331 461007380 795581371 800968919 894548826 333854767 619370100 974087135 985984025 404941877 965456525 509521337 898627182 985847721 985939922 891245066 894194280 859040577 994961395 904079892 922863228 413890298 865105699 298346209 644443090 154753888 942238269 177742111 183352190 740876076 974630434 801427600 931090989 78095595 565267167 884237443 897908270 259197172 331097025 624858917 634615058 600966607 944879954 302191649 777750035 520030657 628000434 468325423 705839894 363795940 709365747 42563150 220753894 985628194 988611012 135006383 422871509 170187085 267433282 89396223 947238638 159149941 849778729 46000795 393587517 433696682 614393905 856868112 984223248 867875601 909062753 428373085 612139072 585964333 868183550 373683878 379191509 109877914 965142824 237243120 784090629 806883401 971835434 756543945 857407600 216021852 400767979 802994725 969803732 179917713 531540269 206394472 943079071 429115252 695102892 874049158 879120617 275616065 947665411 183825025 275618361 554845905 900615227 135164542 728019799 297507946 996076898 950600180 958131966 31434050 775763769 677932402 817741414 119825172 807268738 563868147 567371999 813552005 908581015 155255354 988810296 386825965 584366030 410264131 931902657 380071492 839782094 68384696 727476036 363844499 598364614 283832990 830749966 321001422 933567341 290182889 331336344 789798995 958861890 930458957 979204649 780661732 859693774 790228372 993916838 449517451 997450768 85044011 639792957 495738356 530694234 230939966 544947188 946792106 986698970 187262670 442194963 387641436 814478684 994456866 996630322 482089042 621572266 737472009 854363472 435436586 752444738 773330916 898353096 860623834 923826475 2268761 386043143 924740932 984728593 574523587 894092635 392772130 699123375 136585160 659667930 528872040 955038707 860005772 868875576 513412910 819731995 555428465 874187634 7461856 315899670 890333946 920943349 970362024 986093253 90431357 195383575 427660428 929837057 698922947 870314946 580902246 841467277 941571228 972332007 6467851 506801013 192075218 568329339 228118020 665241062 230301222 830015855 483013166 807160359 324855708 483594664 854981011 975647733 490472155 800625156 422754091 861471508 386062746 579970016 297784422 413749234 494059593 598745505 73258011 242340545 317401335 778454685 671065139 819032819 347197574 418153710 969685421 976617232 824530931 967021109 276742942 600733593 552887819 853208205 249289068 478170604 211203659 244240338 583176313 941576006 602581433 619247964 183649159 822145684 765060839 926337857 762653097 824992739 504651941 884268284 90668737 831511550 43659271 405870387 161011278 269716055 213107562 467060994 295503629 584996190 865954508 996062480 158209884 794699458 399368178 812241061 970863673 998578521 159973928 623198104 903307288 964824954 908714999 987154731 530469112 919760529 474362385 891540181 881465578 954438929 69886380 820830758 160817019 886427626 204778792 865203189 295389536 313353910 433738573 703103073 926932069 945798109 686783069 808084121 859224337 980815838 681425765 778425042 668088913 940824964 940405833 978958050 364933272 830719949 54253614 970115171 640645587 769762064 720776983 831756420 283693459 619897018 292442611 857932810 534423147 649544680 728755453 943843726 565502996 661218558 166683214 247938618 967901552 994451313 643579247 952488951 435492154 763551280 778102339 851700859 321717650 805315059 252691301 436023134 896042371 934113931 335025436 383948842 521501968 591166843 34371701 621744407 862356021 922521720 28694308 965663326 938663302 953012649 324602691 642128416 106217010 782565845 502791250 608048788 599714760 840584470 114444437 817984027 595165873 740728247 918051388 959634248 181447961 228366179 149313880 932048338 255714261 997105056 648589221 860882091 178119088 452545711 28904157 509381132 358720082 786971650 757981038 793832373 496719380 853874697 182837442 266447159 602400441 990101992 930345957 989753506 480757941 660305405 458403345 932164988 868908567 934787981 709073087 979032415 580901564 877089104 331859592 923377403 48192907 156202205 260827500 761517993 227687381 342427868 740477983 856454383 653447628 955249123 688250911 734254030 929834385 970190939 100632498 702475617 787959711 971145762 566762457 895537095 481390148 559929199 594236942 901963246 34541122 357051570 381686708 832234326 858058410 929287300 579463842 991627952 505596407 799582319 663795249 894550236 496965321 499663160 398498951 822372661 975046891 981825278 807282586 917806503 500249072 714530533 530115981 679197335 22073714 524838268 148719433 487125743 938236560 958229402 75133676 646283479 291385518 863821617 13174287 251753273 721663579 850360966 607342328 794347338 377260316 644728481 170002172 460157948 570626175 848632378 386439020 734709386 930498657 995567218 364503101 669217270 779650196 873654060 948770404 990288219 443467424 626332155 50655214 937715833 493749545 604956393 476559007 857106978 138844651 557748171 271224868 395394958 687270 262404898 51265255 530580883 85601212 441620519 579764991 719185350 245188531 760347375 9701899 63118501 975723921 997973719 88239004 320466688 626475997 825675764 788409010 821464397 514187013 776728905 299916185 917978444 554353505 903630985 843135340 943426972 348466414 512895284 481952177 911932270 264813705 608385367 672748680 744176046 705533843 730805924 675766409 885182674 628348544 642398597 498941697 571292979 292582157 362078439 123548692 225446491 358553854 895160262 245201614 748622786 590349552 737080090 642337037 761923031 497970384 899970413 849643786 901396969 802596421 988731800 816183853 883569617 883716344 898196827 239835742 483731795 502195331 782649047 463492473 640522513 779741878 871697322 916203446 984904002 772546496 880516554 161125632 805059946 333063124 553362329 315416185 843734663 519400419 564840076 579530346 884766404 688344756 780776822 505521176 750955849 835666032 862602834 993510505 994723926 865171943 954687337 598397297 629244215 705303445 718231424 401343103 868552733 665140137 801585982 550725016 919941708 383525845 788744131 941053943 963552607 857367713 963203741 787115816 833512393 802124311 989232373 554825876 893368769 783246926 860547695 379966866 415778509 745171362 786442760 244846998 745918650 129703690 736702914 60051568 688384978 73029292 568928842 802025390 813877326 565204053 826227552 883473108 967661255 50998748 616237706 635727731 935468245 61126197 84766947 775007160 911717984 632368369 666810547 194620231 447322770 213474015 921033606 105875453 675446873 329130993 834346634 561529136 604520664 860653787 960003648 173825120 600651873 841039108 852393547 203103867 425360596 683247477 809492755 903142757 940107783 426042440 951885662 664535364 771462763 79137636 857920343 711603707 832655230 241764102 507607421 271840308 344673353 343519388 640732918 690832821 843399316 302375421 605384373 623350004 765470609 559374326 616110182 841336582 934698698 412936063 882063996 620490934 739566518 253029579 667841563 462648156 655375230 362702392 437422579 474628608 642893592 197831102 816242400 547236354 999374524 688643855 799118256 272814092 746924849 763672060 983270547 298245720 530523035 725841510 866121616 16554986 731438240 283086599 344897861 219616450 503862651 61156204 782264918 952476985 996021433 227279593 925516281 502011014 864992427 334277568 913204189 268659901 971807288 728622090 780604555 397488959 532937132 435140689 994338373 940506053 977292537 880321398 892808631 743911730 792297317 573108313 976505730 51750397 743622052 419356071 871164530 197620805 396358784 574588205 871384878 5909198 127141619 869631932 935413774 81978349 871997504 213286144 262665775 975258540 994790823 968129895 971059649 202938457 289220064 227861639 598976219 96000999 854974789 160139623 709933487 651273935 742235379 642529482 783641278 705764445 903276722 682418938 810172679 804620325 814857601 63080138 324712408 435168489 456369981 938601465 960672415 380971849 480612568 316478963 934629159 318453931 639196016 104386277 984417348 288613566 989181259 223976722 909173495 434007708 856451227 108091484 817029259 815931866 867693216 951378084 983686598 736742976 787709101 467300268 685515995 163516783 236250488 644791383 991248943 938840579 941950014 566876102 611007021 958533558 986099027 88653673 452408038 961052600 997525911 253277771 615773192 886746852 908061707 85746097 318652118 196457546 458166820 874483646 911320884 226574996 662432009 581196329 782338686 245916964 777277906 183905468 374470741 492131404 883614454 737217503 851424110 11476787 288590765 664971804 929490822 148156417 573421443 800233480 935627787 156693237 231362484 44112220 596061085 676551881 869577568 245441255 765912988 411709228 980356380 634017740 785498021 204418203 315137086 62553367 454723317 407016351 578931439 962332968 985680123 818949625 946879326 67338705 279832201 5038478 799796340 663720922 803509959 605886970 661179217 822231344 950406230 889839529 912525212 370216442 424575669 83542299 548848143 877075192 895012362 864290466 886515239 30292097 465232485 103254653 931264640 784221758 999986487 658383084 767879168 346861915 813420046 641697849 772518632 145488867 212542715 57151243 125627092 337756611 490902348 803280404 986477641 59715699 603016954 845060035 859575877 621732530 633362840 33468572 942198705 867040684 942710440 491090692 823962434 967038969 983068745 961411998 975873838 503441414 547431439 969497662 990372463 938448077 961557066 634166496 805215314 915519167 982608668 890839092 980658489 73799122 480593462 934752129 970901206 639915888 855190858 648885101 818177818 618967334 923624147 671411147 756784534 227292905 936366975 89544408 682402820 473938539 820167739 536759040 537344390 534500230 776144370 395281918 423940551 636550245 682941808 206750214 382407221 179724416 625702814 506108346 731279739 842640856 927014342 100247909 829817808 759561 80910641 301578769 766970986 977235258 989099911 58673947 628419844 704713391 780793849 988507716 998946182 581135357 598395540 103110082 973014458 416010683 978735844 214685972 869203986 888361750 930777570 302229073 970809301 52415322 424958875 832498275 850841909 171624887 400712174 909122231 943337438 782343703 907264184 472488226 479096807 198166241 971373288 62108807 423017232 450447722 914707504 142006883 761751973 213324366 832608814 573993110 611437468 813084675 919369349 195161902 640691689 33589009 851209322 918959261 977064170 665128596 758428525 953315777 960818010 140535091 629312755 644671222 659641690 528496651 867995379 849686507 894223806 189736352 283962309 226890782 399116494 573569495 848539279 365696192 637933232 35399190 630026370 274677715 935933571 604590489 887578237 785870597 812805484 322091454 860053648 828077889 835874114 447888425 625117213 173782279 194570199 490937990 596820773 363573638 651123919 192864408 238658192 638729875 971437224 357217892 654930791 805785120 879079343 830984255 906539197 594796220 810781961 111991727 885611846 998717077 998958072 651468676 843472433 116563637 491264315 62326823 672767548 137670836 712484315 424753116 653643095 895536304 923114642 724926092 835081897 112016946 694819305 208953197 568496263 759606246 846453888 556686779 573983455 701496613 702175008 737313890 831103763 89058777 626726853 95947099 836172570 336744316 974341203 957057783 996179886 766649803 821009428 700207973 922023796 938087273 981529582 253886941 555129885 696301535 993967567 620931266 871988478 388604314 842533321 780881891 890464957 293349448 492888465 409598297 792779784 642221630 736948313 876769659 887878417 968053804 991062528 544861863 727282492 475340919 622269913 496897800 710512965 541761071 858350620 10647076 680318199 507783053 725674639 425448327 594935229 922908538 964315671 977449061 993475960 206053869 244829832 789798934 940909730 71000353 700293835 674722871 832572423 617112734 810314750 405871376 910295646 795277872 846639133 660179547 994214515 664921069 795635344 958565634 971528271 251349762 999278676 75798268 199889999 760068327 796724609 40020814 545452510 177343073 360543395 927116713 963819815 21886586 149550768 14510871 486520620 774333481 827520778 560847706 951139222 549345212 993840399 70612041 623522783 565904228 851688747 138579123 809257856 39992409 470712401 852063389 999476178 140362039 613172554 920008580 967407129 314030114 517673757 646335794 650649725 930229231 931041717 267113732 492418482 396329915 638018980 805714391 871710931 345507738 628840473 268880 402924158 212803290 421022593 405899278 450915230 547981424 918232689 85020504 809105851 679197720 813940238 371612774 905928662 260904160 461710492 116025264 407555691 730167173 984037992 390479863 436986815 307639249 402566297 629979184 696367547 754684701 878921112 813603081 975536334 944231451 958695670 313520903 923141054 841266791 972255482 155929374 647167860 677849921 957995180 288183799 581637494 580820652 628948733 560011787 743291693 467065433 864348191 363604831 591252484 895299175 939264194 682990777 713668984 460726960 806930693 55011621 474398048 110420480 658367501 918174492 957498486 719037279 940157076 997563183 999081865 377037757 979754810 183429347 434969925 195157518 372285465 554781008 780239024 692072345 855346659 115262983 522297779 103742449 406856594 585925536 662133795 197527592 216179730 251803181 849555566 522481362 697999902 858356802 948008536 199523289 226547363 756311066 863560927 806271733 966040313 653131455 696646599 203890062 571041637 412744369 537253417 608923223 841337517 505677617 799036482 457710456 674464906 622791959 676119259 226509700 571960184 615160395 680892887 29304361 349891496 806496358 861235575 101538700 571986796 454125733 495065814 890530331 891522234 375785439 396851646 626396341 997452066 503319676 690705825 139980810 215773961 746638658 809822701 539712680 653460829 83057095 382730026 329424520 380651617 914520874 991603736 423854097 552420909 44225436 594239364 153671528 840815363 353700765 383220219 251968682 613095856 500161551 684337431 86208455 267332300 177911306 748223137 272437479 312775239 115394898 774330597 954943562 986256588 844969340 906670055 958393583 996546995 991747090 995873301 962072118 982108488 861042099 960432396 747034799 838107482 337836769 724089353 738662956 936060439 318741353 590304733 790274268 983288307 72050309 734086296 489075008 953209362 253666080 343032649 13884142 59889780 835937881 981258999 921099279 989434787 609951898 658767749 217110309 551975822 781540385 846940267 315773526 392715891 481433057 645158037 235585821 524522830 166691399 837473208 173308372 878899604 592802755 652753249 23197156 199464153 396258862 786069034 581803331 874950325 922652667 972732360 849341078 991754288 63122879 138879430 700288429 967899521 98442588 392788093 591475769 871499994 361465377 997360386 503854437 544857082 39715532 874317156 737663199 931872222 628466029 722148617 134894667 933306950 428815483 603369453 170439702 788808470 585712084 826165227 859384713 962319483 954745662 992974346 551321888 722580460 233283966 680013334 674500185 706994228 758527061 805704809 541022399 956134046 653815044 983460894 659067306 752578545 412731037 881423353 969999817 986938347 936967687 996949015 922137163 976443032 488682141 833819218 189777180 862684996 921154138 952262882 175314492 381290617 243437916 879096127 755892871 965600140 253734009 813571115 134276255 591448678 39092142 367665666 663196986 679986955 569987809 845705806 961279036 978858061 176133521 525922263 861608939 882457124 608821215 818860910 585562147 722436805 795182487 850939198 430872050 700906455 558473697 919036805 339483341 388828672 68113394 369721925 743624733 872007613 426247622 868325227 403145814 733559395 409645987 987315764 525520526 836512218 56962094 680492892 336172830 896634622 962119961 969937757 422957192 603891576 423403859 920286146 426382457 927128201 341931241 813944140 616524191 697847992 778555899 944641663 699044044 822306114 974447070 993270624 737514705 879116670 312981796 862186568 685878299 852655041 886874560 925439777 332069464 720618774 883342119 911524221 181173291 726220130 601892473 860934486 591096043 970918001 461512492 624736166 102396414 221028709 168480097 359745120 253575129 587008591 859008742 933732781 291090659 703812603 110528257 197705365 899884203 911207623 739724707 987390596 855265474 921073026 279564323 578245822 66702970 252388038 320561501 973811889 462036707 999401670 527330447 698041207 930865048 967304859 61013094 173604792 846120088 989509330 818319765 870099920 154631190 706178527 507551425 957673273 627913797 785954016 82214606 275825208 655124422 718715931 134675245 666377003 401710692 688204329 481178437 512549945 253789526 419689645 380617912 574754355 7139124 720920217 763828407 863332131 580398029 594142710 4604979 124902070 29667057 282904239 886164931 893737872 417965147 992694373 150190260 657032706 739637231 859765426 734006057 769808208 792250907 974125731 627325110 825888103 844957288 884239493 889156217 973133987 306988238 732051834 298366314 484996841 362293999 500334385 53923242 651807191 669043515 915691171 646511408 888412934 478939668 578263255 908412617 948117274 671284345 879888493 12447263 24887545 68854349 574526441 311762386 885197002 717903677 915352440 382393285 758086342 809181456 868900345 41045563 52574080 54385518 311273112 412487918 974707280 13538088 161918502 233419210 720381645 196157526 614495852 680234560 833591080 676243330 726516383 110093763 929861442 517015593 581310830 143860166 443530632 374116354 834009996 23266967 568109937 609892446 682133605 394303992 710476348 319113022 729172358 272055708 906929288 970829171 994507074 174238793 657951874 636844532 700416107 695952466 868825897 765018457 816705045 273243616 409941822 861590114 899586716 525507820 811579189 732771065 895175385 15783204 860633029 598846048 879831590 865102673 937612832 684990249 962627174 263765139 933479200 530235253 720939106 628014434 879796387 836583832 843947780 382593245 694851407 28600754 110120204 950664262 970048946 9513525 284236175 505219200 921157783 652300280 681107381 597197984 678215110 313183801 772431426 573174675 631346951 491540594 857185896 522948532 574374378 150142198 156176458 803830904 950222023 483034891 960211692 621631757 939432717 628605320 634358880 360880074 955695528 432656606 655312610 547610196 721100534 415802360 883673045 829088429 963582902 350125163 625003633 633914805 634258576 685608022 875149345 94799192 906742909 55146746 638464148 845288494 899557634 528478436 766294464 257714835 434453431 221886666 838493818 489442947 540245873 324487842 780823917 325731884 827071012 269759491 993400710 934044062 939566222 610694432 655266843 450740963 696767374 436228752 709925686 150991865 979874280 448619456 978085743 359092070 466658596 551970898 794067718 102899315 141796226 812022846 899901969 683430654 724849501 703617675 972846485 132210915 268146083 266432694 647899383 78551576 990583364 331315834 850231747 465248260 678593593 822433008 999033984 62720025 488258940 506368441 603951537 803082064 816656436 564143553 832321107 11161246 279528940 596769276 688908572 173175949 519821030 251254775 395668632 90076864 620750995 465577385 621339218 236519962 541744355 200773659 907679615 478041081 944199265 131527994 446488527 308955347 451980867 495328641 549384102 595744660 875902336 450435829 558593717 870036778 900195543 960194875 971236809 331847287 982485976 674967821 850586337 424109177 505703417 99000880 958946468 68739933 961045125 955899283 987443718 464772793 721322389 589109621 801919692 189233303 335375681 939230543 974814043 483061144 664369031 355319991 735027254 121294848 744213789 523775363 975571710 728104442 755356243 641365633 953409241 345970041 632954313 59017878 615693593 9571231 267029331 777228442 979157482 59502103 333758946 768395354 933433768 659280784 913234916 354893577 450373285 412576800 991868188 60655607 191614154 691821250 830618713 950135135 964712589 638415498 971516277 44696839 734337577 943552447 996821272 854803968 875328323 224406658 889741837 82504453 241303991 378083013 801912469 830339642 958783216 839698413 845844682 168948146 590275379 972992498 983551928 59192642 389718283 706197033 997126031 58615625 545262700 421497854 939519511 473694336 657834082 356694899 807344090 470129644 795121713 538857065 990897093 282493133 455194099 342291607 910741803 526421687 645975728 606728697 900574660 976454151 978425874 598352754 599316516 605969119 738634149 164861771 849006627 696076066 756877872 86963258 609669111 901165992 970159568 665190975 990195271 463630531 696485349 921659239 983827622 928225215 962030576 991069047 997127735 956099009 963728321 618298703 644663929 117772696 137366452 135500801 943255418 35377916 983235973 778884106 853776448 850131142 994884191 141806992 610677455 70333720 284207240 628854147 690381439 723258506 931820040 818019781 930271826 9404932 271430790 814844374 933379574 191925160 542747101 186578310 982781878 369807475 424314014 992739410 994708169 653098147 966085079 274466112 550481068 553090375 762727833 314127064 919444838 242684216 452284565 104916 64433035 78802137 438374107 581215315 800587417 349645456 612808190 456058779 595190307 34449740 302505793 663605305 723364402 896103393 939647181 520464952 524679454 517563308 872107235 9755285 104574444 998161207 999263155 347380594 932495761 964680925 994101403 349462175 954632943 986797440 997675531 65107260 107086862 539785759 739968186 191794769 228786089 814303398 961458026 240371165 754560173 381692342 454985553 181816237 183937866 582704979 888946305 679354318 815311434 709507406 830082527 358256720 798286382 496175846 847591231 847936860 904900594 527918684 867486299 740998788 963396827 422906984 590182419 279119593 598330590 936176782 988962130 144065201 224186403 36370436 446267200 232715232 629464749 168663423 682135692 456684076 769967171 346637810 911138676 569412639 927874672 682681751 769048311 907865533 922704035 59370813 584697610 822951507 852648307 569702598 789687304 540776072 559974002 844018723 959552569 904078855 926869219 981379326 990481272 374151934 392139679 756351459 822330897 565549339 867407272 573691461 972490731 791677555 848196029 879648380 883258266 496153015 737425856 658838245 679631828 317961443 517989209 623341511 975270944 934915740 938602673 354142654 487053714 354709684 739788930 814799585 937325914 368751486 999522153 841517833 956173467 46931918 377945232 483627515 832007526 166532401 295847395 663474048 829434255 469926163 841176233 860536869 969225780 530462400 691444070 556471757 989026913 660907395 840773662 77924730 928113414 163119564 274115621 468444306 654325008 208035812 934293211 957230992 961143825 300964538 979454428 198480604 480356050 629318505 830061186 61175900 437608794 950554971 986487607 424814278 872151620 525128039 910872093 983097091 991298621 467738425 944650556 438049591 950862032 342343896 893266392 540399748 587958833 984413121 999073357 998382752 999023403 176994156 583925181 88156746 944465186 777913414 864480363 39591892 370550169 495236622 783245096 173475960 332067594 285190807 620675046 17740029 20203302 392586122 549936663 787329559 848691328 754879384 793574880 853251860 945586316 636498155 901607169 387605532 482014305 668776766 690325388 960792129 985411166 396833637 421622757 168880999 718516546 389460456 773764030 689953242 957682226 300499740 402365163 911087038 985384123 181158363 894833604 925517432 930761554 318432386 469022568 752644122 893925869 266490844 496919993 115811405 974897741 808918214 826765197 450033010 905922103 864254991 910441657 146426506 563279709 28535658 718940288 539791330 705149908 651308409 739045772 176230326 590213814 863922079 964339738 928178109 928811385 632069120 859745979 464493427 792932588 952541381 962820416 478790330 711506826 375651370 937219384 599822708 628688210 612043123 798659825 458666952 885910898 259809169 690321321 114744205 276384393 185519947 926397450 496266872 870065772 140907956 202187121 730584672 868930298 130528714 409426391 272196347 924585764 713582055 851713266 516090762 528005957 662322444 895462098 661038866 842654663 318225466 664888607 663349396 723329231 71478500 991968518 388036743 408552062 755833200 761419255 613391103 689847560 402929047 529132458 937464719 967601298 408272833 598023667 875966281 941753483 40293522 680601451 347082935 589745476 891772573 910008834 987594141 988731793 519500361 800592180 909725683 994675186 235827160 652042394 7251734 408674088 426697414 932265306 16311580 118488535 334517139 397923584 204804564 984182858 962276836 992885295 759465397 800218609 53849259 861406105 837589573 952770719 525274431 658078932 497917798 640592301 683065646 734402892 848321728 977036411 702118695 764185857 977912307 989776105 580128224 959267409 625581022 916076819 585893809 820495027 660423723 917818048 129576743 452180080 545256544 667253526 499258753 758031289 695721976 774594246 476858150 650005997 138023231 680003751 841547562 997732819 670319121 795176227 759047552 764420968 535917597 738257317 678048476 681255574 839000287 877230689 807728089 829497797 749070257 850081138 921023813 962556824 345582567 604989090 341079940 533685736 10072105 368349294 882281677 971345261 62393176 722209656 100066865 530812542 255913394 582247149 91781589 388512567 161492813 448490294 105988181 345804694 517335424 632279236 404537930 541619788 594360682 784095410 212204751 433003694 537637983 960826658 467875418 912928809 910628681 950805319 191610179 286957622 862693471 863529320 188539815 356987653 973655799 981461845 972734911 990250189 149459566 380378756 144667023 665160378 300159640 380345488 345509472 376172554 860184618 885275875 178036107 899088330 751494314 990631788 163973100 632281347 327444091 429490077 911731182 972882984 906068232 984512833 339813554 655753936 994916272 999145962 379996514 912389251 923136116 992438863 285789188 664082258 882498459 944110766 925986992 981701464 874998804 954271481 729001706 840833318 653756854 962063763 477540016 606569693 23396822 890106894 54284959 946149212 830784207 892227065 507305329 816999681 234131285 909410180 701526168 965372080 155464694 781742258 844690150 897865531 675888420 914177979 990547396 993097026 556592125 701006395 117697833 521007133 60488082 980590084 456611935 633903568 988060542 997704833 970044926 986966529 411390408 581539373 428411331 929017671 765649372 997614549 799659617 885911367 376893756 672244529 4822654 284250668 474360050 563744435 197619219 490442814 364165806 614893479 815494921 942193609 699162346 874381570 51497124 788056266 481179391 931639313 46065256 690862195 354022631 565516017 318117995 607848374 57384078 890659730 703974827 763604991 773416180 929180711 868928849 881859043 212706365 628740212 443232789 861981293 506843 252125131 4316928 233171813 139803308 826895689 258425718 476168266 738376155 848887158 799535208 861653648 685476913 873935578 415528103 904945473 270629333 861186181 407141803 463760361 382128387 744212360 376991322 865381498 504027513 830083093 785647487 943622149 75163952 973841078 290326742 415750920 383055861 776612306 175093444 203941574 330055819 725721669 350495334 474940938 613612437 867035822 337150900 340185910 218531612 796937840 394520742 857923447 277888399 880067426 491179303 574951329 38835059 78803786 557387959 781079564 338381711 427664802 913095668 944894692 691098218 765870075 819426730 882405149 548461788 922756939 612544131 633829245 476655353 692587394 487142965 543280001 262250888 332523079 317070745 511470088 450951021 661211006 437504638 616646102 931894899 933008327 721008659 731070504 528067391 583108877 84732166 692797758 647930664 691712544 799787654 833252303 15179232 614449693 448235045 646808340 465694692 885382748 864136595 892777629 628632087 907183152 18121237 913233415 878413482 997250644 434642692 617756563 52496191 704276482 822311756 964737978 651277167 673446235 425543294 701472771 925808415 974321837 655847250 697730026 171226587 278030057 95518217 237331827 322552592 805246646 400390777 533856079 445794134 548876439 651516052 965051396 753668318 785814270 38209282 186165322 89588391 599123542 227183123 313159590 871060806 910998420 524699658 636486504 901574790 927173123 361396499 978271866 916900154 991329376 695831856 998637785 54732443 293707388 532894917 870496695 238379626 665739583 187277316 708188695 629737700 866854671 687793203 821854052 319779416 851847422 217994707 419392227 480164540 971731182 252503728 757357328 472247843 653931471 592125963 867517376 864883434 894919465 675573258 813978797 721434658 952512987 80367685 866369444 987402665 989339189 945845012 982341525 157284557 820830608 988486969 994569656 838167801 915568852 515979119 834147728 437787233 990311218 2227845 793545000 295849954 558369566 925959924 933782177 610095390 679674545 663331234 978390402 218450055 282545182 210452398 724896128 322331978 929732986 732040962 861533428 546426599 998311857 129407442 133552579 6548047 100631750 594643559 733335826 635149061 944031026 278794321 299557598 827601503 959989644 825914410 925577843 869045066 916807753 126213231 839372930 585215106 599512393 290875832 312795689 640999336 859613563 613145938 707932994 407263495 633118232 456747382 991295724 463005413 800369182 892829873 924065725 204369596 862084082 87419480 565280773 496548882 795000015 159544064 557835993 473816564 759883938 282680157 465558998 581514547 815593455 780537140 864276397 140710087 490442043 697959973 704361561 460341061 609699733 244766194 294283617 526402753 797069670 994776312 999501861 938173232 947383318 682863465 899380390 923547720 957270501 267293359 985055691 143096574 913554323 532052212 981021806 656032981 877104669 796049385 870274563 293818699 557617596 361785854 947416636 591241064 780475436 604650708 658585341 900015335 922375554 644819195 947938987 901628644 943964429 982086226 982371391 225125937 656563186 57807571 507987619 615402750 630410331 663296295 857470402 339148709 409578867 853281489 894935321 882559682 904210364 501916909 941208155 396812929 721050852 68521804 163788092 294913967 470280249 162851376 596398349 254934711 631601017 561778861 563578822 229402668 704910763 31781452 589277101 152578152 679375213 775886752 871402616 344668655 381261591 379899149 546241117 343842396 494908733 912787309 979033343 837933432 845286455 105834610 347316556 850726490 930431142 188687389 341956722 200700395 322917969 783645052 909356609 978228572 983924927 229570015 814497174 413007457 875549084 505759240 692152522 967743209 997449663 37574062 979645022 267482078 715907385 916698119 948188451 217750991 776420133 685248015 810079664 980489889 987037139 809732852 994506528 761833629 912624161 47299338 412759212 602040515 930413477 43128088 326597216 436248654 534733246 294419187 921725461 279584733 785779757 673863993 951775487 954732594 974699078 879940124 984243430 41216190 529416950 235746388 772339913 213521745 971159864 658180394 742600909 767225365 804270586 205552760 885518858 839162318 978308715 660526069 870527519 658895459 712000175 988789820 996763183 140778858 701987618 632061480 930404556 48709450 546817634 165451235 234098171 18489154 691339252 689580891 892761828 726684647 757275649 498634848 515362053 93568278 430261558 706115722 964081225 833601663 939369377 442069955 946794792 37704662 485865959 933843017 947071097 182235905 789543012 790161085 995757013 330480969 618643473 216015561 441395469 567151601 786457021 9789449 98725491 179053310 768772295 355644886 968736521 764132114 979945881 536386912 984832890 252866659 766735155 832536239 956126305 121719196 482517951 239842834 920157199 524791246 741275625 903030612 908240734 99387308 774147320 585213650 765438377 143584935 399988557 195890161 749050553 427973268 839221894 503254714 715119079 118958858 859039881 638443691 904733261 122787731 819749763 490557241 499712422 722360074 781394110 995326359 996831832 476643286 906275395 119796893 199990268 261787086 671283750 117122681 895105331 617415194 722316750 602336770 951213986 666463752 730937551 662116675 945694983 872160771 914982562 3328601 455118975 924272226 934462009 93446895 322908812 630755404 767380880 607621454 815448783 137697896 490201132 526413648 978770288 382876934 517270426 293542677 748106559 741290828 902937958 42307575 727324764 105019906 504532424 798640376 879886202 92927520 357113149 395686031 474560655 100628945 886017123 402606813 427220246 101757970 688640227 796409443 898109768 982159315 998492307 415805951 579523938 859722884 861287205 344226992 488506534 418129905 853730008 191368992 674934279 664598009 836773979 292187715 344498783 114518188 262993703 124638832 540147327 849304963 936273129 793034947 824113584 770496935 842295576 919334450 967373798 222266661 521230249 625229813 942856822 195020036 994642056 771120104 834107045 404057806 637355262 909388534 944410226 183714548 271425661 965354391 990739393 974241358 975429889 196509439 749505717 775739335 854948002 261379778 632858218 1289358 848538268 458651353 802304054 567903842 967307252 287098395 593762581 125037231 609740411 402161132 853692899 434397550 931000048 395461930 519872746 148181483 888277736 995334031 996923588 989562464 990532338 747084690 959829682 777439896 879051084 818979489 836183663 680314578 975663590 601545497 661751904 169638357 907963238 405819948 472144002 12481696 334044141 409568634 679366235 13174314 773763541 334302213 922354893 506104580 778380206 138128924 393133623 16699202 340431101 27603260 54408689 34489932 890875877 977626027 998740807 40041921 738551292 761672102 761922603 389459180 829072190 355415986 397113630 285694443 454419392 464970482 492263204 171181156 282664981 311183566 594006376 697322354 944199437 291752328 412622166 525888468 872126275 302879787 455282854 373671020 374803708 728771171 743777789 728490400 807483669 581163644 815836092 72615710 560025250 968115952 998685971 805759200 893663967 192878401 814399646 772997862 793331216 468445628 497102820 900211147 932270521 853294922 895337520 729240727 807941912 59249852 977152516 768003428 835079896 367450496 696355477 105079900 145735144 332255717 616116867 312680755 325481769 958482479 984581339 189257094 916682533 291570201 580510846 678163747 715297857 535285817 863612399 596765664 614951584 742894111 850302182 913154266 999607407 82333743 199269002 733647267 763843567 997657668 998447842 489478997 751581229 626909180 785961983 877903719 954414388 875358213 889803889 62729345 313510349 370862209 721835696 726370916 753245924 426117757 435679643 80843008 757255180 835296237 865398991 631550669 933932348 895944958 931456497 117844694 511163608 805278443 828906009 324279178 385464577 335173159 656597737 405280768 644276444 741651459 827314129 752510542 809142992 789034074 856855377 768563242 799019698 793599771 841201547 496284004 720822756 963223420 964917957 164067498 709730839 202699163 630229844 439412466 935778173 976049959 997462970 197823957 526121969 704948471 753461886 606356733 853510655 563122867 878436446 272994940 541511137 80311149 558506278 359036931 729833586 232806096 412086224 288750177 858315343 451231527 571233462 88991034 904969281 71678612 326291433 859825392 921899469 340790586 793807976 757404588 943251217 109568681 413609316 462456692 522383998 696842826 703205922 459665515 775080437 359518913 376850121 385396576 594086498 699654268 990299928 453524576 960223456 305418342 670447907 819446488 823456846 192003904 792242490 620309796 894628409 759594210 969367956 194263446 199304896 97267229 571731205 486361693 744189684 995641909 996292879 68665580 542127806 225478968 475223954 802916609 986723075 546577492 801496761 967671665 989643333 266685081 452459920 563461296 779575470 449765843 934806387 194052416 267748081 83526301 632026428 518568278 833898864 835315088 846799056 50519002 441841833 463476417 803395294 499020173 517946556 963736483 976305207 746297718 876164554 71149394 328480470 301666295 409544924 319506560 800618479 71985798 136670351 384241803 464087072 124051563 945789100 500416144 852432118 935133371 988573551 436828545 904475701 770622349 855818181 148456254 727429221 620852378 770387242 394104907 503057054 238976347 787022935 795910977 847664834 351875524 626914648 297216127 310853620 880112390 966452521 949734153 998703413 982596434 987763615 878934497 979949343 676628837 716672177 885824439 973921507 83867921 805507438 199883681 431770450 452763850 709666050 364374508 632543077 182404623 256441894 101845367 713301131 969379424 978449768 654526010 811158294 38569207 153250550 47909189 469774646 120164608 949082367 137830509 973858986 24280234 151182620 944923775 958583768 401717482 944528081 921773026 986243155 438671805 543705139 440784262 558468555 487637664 868220446 486136762 836128129 383355300 654079342 635953538 734668598 51076752 200020943 539453082 932163085 385616282 950723551 668772348 790031334 701950424 900235627 666241450 856534321 766946966 829983914 269280454 628623379 545343461 886493892 962654733 975715296 282075121 764861606 221049397 590218423 612117028 747851589 586522099 683230692 431047160 628112114 407731333 863303099 374825544 777682491 468822531 926369265 821567138 952249438 933007797 983993630 816770190 943769853 902484225 938444765 556186115 708530956 971693103 986852404 975098701 998935440 943722958 972921871 582502806 614272206 91819945 808399956 206335093 971393043 318506688 436239826 89530804 791535293 901807436 930849772 689413972 791313997 13047112 226754606 86438415 282924887 583557059 859685299 170019147 521619279 880481078 977908719 604299516 891906006 773563976 950786004 778059735 892374178 671182297 764832367 885741016 924835649 18250232 239030640 461270 949166622 286841486 852685267 469343 1279330 274619220 849502540 701944054 737817695 693352478 804712098 506346852 600198142 732589336 987424737 508267846 923867289 949276523 957918523 627258172 890056950 743867304 758616880 289033375 599522199 717009412 919518181 646698726 693366932 586748493 905635689 559548850 901771989 182451153 372893700 113888294 906408311 862987452 960797857 38389300 475387466 377310032 752047802 475671247 914294330 77023763 937866070 428772724 475122909 406793453 809935210 455023731 780852198 508721105 582955403 671053741 823069630 57169353 683816370 644386107 840959271 159426592 350306532 267012908 729011839 958670102 988292547 533443639 716708209 294266137 331596867 334638306 349708880 405041394 702953538 275436393 855109637 143276988 265124152 573257367 813068811 127931817 837825374 131266333 976760196 176677677 349597032 418960671 907973223 715846327 833335617 932653511 949196328 22799241 637730439 682892912 715730197 137746419 363401268 888365749 917529340 499398364 500333021 517292951 938956538 362388497 859788733 975009476 984787476 313871701 575993790 790618448 957692808 292897529 972592246 392861976 978256440 819824020 862657834 153059970 255361417 541107651 826885554 439919523 772736890 267153941 666006747 438372835 671054317 967129556 994202982 689011275 791050923 434814969 559604536 186409917 528109939 759146372 835356461 607895428 695383358 371866026 757363755 498609195 958690347 892189664 964620861 433462679 938344103 470699175 840923975 278428421 730513851 302359151 953329013 309880708 646094431 705468804 965149232 999269853 999952613 62850240 503694819 812500099 988193048 604201662 762287063 338962032 971887763 186944416 655236887 56822977 890336626 895851273 966607445 488041021 962796134 281669267 512849655 963332263 991136790 105052255 827618094 192627254 889735388 832673167 897095967 109371653 704149126 196100590 429474961 971678963 999786641 106783891 157352054 420031019 706112276 135301630 573772361 309035026 554298640 868565707 946135785 45153936 654520105 655469325 861657467 655500430 710818492 147246191 826193197 920382360 956713664 707138546 983817487 143491373 852449215 286221529 731353315 384390032 771208561 561533154 713466476 463822252 725063505 601584171 696927240 829892794 853290358 404956426 599994257 54052943 935522990 505178605 993764495 254838563 989170495 631579171 706959368 563913109 668853536 381328420 793540784 303937079 987640847 251212380 927496608 463328122 874030249 684465132 933375934 787881930 839338320 598403209 857347862 411234713 820049441 911559895 927470324 659061334 915969521 471250111 487552897 185433204 950761382 738201917 880435206 35176901 274133270 843696530 880076597 432330269 777280616 150287524 269305196 989046872 989667384 289266557 674622371 326646401 624241818 590435385 821712346 495798197 587025543 109097109 686124420 258827576 773099803 738827259 764571156 667243957 721655854 106133294 681908336 610184801 912870992 699993930 735734099 632620363 873224825 465131859 606175415 352180682 952285376 792685358 811284655 827891579 878782610 161746742 928819756 647800469 678780819 910765474 990324242 700965574 830798652 860078554 950193444 693880184 938903471 708678314 856564444 736572321 775651389 619429717 650872977 841342790 916626796 98349678 588157384 213968801 819162388 465491062 798091894 4815005 851652902 513107079 894323744 179558362 948705004 509200129 910563419 772567220 833055985 108300709 853643917 303572758 559918241 225255888 747710057 522238852 717777989 63966571 471050309 219198328 579650649 864290589 938587928 990375358 995373334 328800517 517912076 218078513 356034979 228506371 831455007 776838397 872234762 787333124 829184143 113187907 894019190 815548798 971729189 934773440 942987346 157939056 641698249 826377663 938613890 641715942 741383435 281594147 748026106 375509877 430301745 267616502 756656382 122747696 390689673 482325460 613825209 827401983 871578293 695848807 919374592 722877455 962774737 775464440 939852344 320853029 544497592 117026535 230635246 844668010 957991187 976701393 982678640 459199336 727930139 377871512 458121739 135244556 640714113 157721654 936483555 383457006 490311858 667545447 711558365 109796033 718735298 574687844 628476296 617942678 998609950 336498363 550530451 755026758 895029142 136296993 289862474 182238710 964388906 673295752 850894027 626147252 766450889 650990545 813049185 14620468 969038501 53170231 631446446 612568142 929356024 197954532 567766334 959259235 970221173 704230943 858432960 864171315 943392737 838878417 965452519 20638003 288991327 81369930 713667810 924197772 960849926 413286647 509075140 203072026 891020788 494445375 510738265 664611989 885147612 976516332 979670177 764253231 920424434 479596833 983200052 603187982 920615969 614567086 622282514 165450612 651643548 188490256 501927146 816967068 911264668 442397709 827298268 487670793 558591547 542676939 796793696 926434276 999621840 624055849 960225822 704923560 705222261 630572153 804706834 290577037 907977168 336502137 361321464 947635419 987698060 592577574 833956419 182155858 857464630 635360242 707844573 107719531 236021117 945457122 996172142 387782949 413523003 235989220 707700503 758467683 890743623 894149329 960742753 169095318 412982022 89745893 510964671 897519426 947424774 795617192 803434084 516513695 557251774 173543928 435741191 297667860 321073896 504098437 515861034 888104661 895940082 990689539 998417013 97207152 448463353 253378384 847261128 194306481 572987501 362149083 869733949 1666647 774723622 306771318 325220025 963319271 976333751 793364098 933016739 701209853 913785924 241482151 510077873 995574325 998845637 458907788 856468259 310640851 496173080 761771846 971540587 720460009 950432539 47140255 993524834 165391350 576367117 45429181 244314013 205678915 728724529 533610796 880671925 594521095 998094887 978666999 979553880 563107017 736120594 728425814 946832344 650360021 661587574 307341230 790444500 753367634 821991545 677754203 976464963 700911588 937222960 764947777 949537484 853004157 952355872 84159628 874914920 455002498 732505148 722675415 846591093 80578567 669133124 959552380 982539327 338449132 962833274 664696428 737864927 370252902 916572278 504036027 653407239 788190641 865329412 286275189 709169656 575718820 607691250 170305503 961797978 147249636 934145810 544858085 920137995 202962929 786662682 601731987 791753041 268173940 285310817 825102094 995167243 463249041 730540105 435695559 718302689 774623358 901354450 533150103 628380015 786073390 872295176 806263563 854651028 85318661 511273058 159331886 875982669 889942577 905396333 373436382 780975920 426442874 501373648 840332803 891383037 750480092 867096406 28625266 478903224 73362095 302404755 572591230 715244780 185021410 720042510 80757322 525335051 924910582 941318497 188699967 656867999 691238970 741684604 56352345 645695876 476465039 948788109 715402854 881888097 640861541 863121126 219329447 887298050 444558381 978719259 709100830 805549990 244117041 901058359 339879108 775172352 708565724 838304014 445025780 836691511 612839872 961447560 251778016 406737536 622514709 968072528 440042384 602135012 657617242 693400832 915805059 923793640 943451472 959245786 672330510 955321844 988810998 991651295 570126470 879509688 61122367 364262873 940673025 942286053 764716804 924134700 350517847 794406042 582905230 606017595 281487068 813146493 100953761 653151405 507798266 762065030 117938869 931834129 913486911 984134492 385550310 987136964 477000062 681870790 874867140 953778185 985356179 986249392 112758886 227719717 35535878 546242318 854745196 941594511 108679642 415897309 21229774 830036726 22153134 685141507 788761180 969162953 323536302 361233813 991614882 999258762 279228865 503751846 468428009 806430558 430130321 635013517 193728616 273560537 229250329 282476086 784220302 791786989 166718817 787893084 556555965 958810396 392782110 971195269 842575474 852582388 910442514 913724348 923266306 985840186 523148404 595764040 554787391 648863615 648304340 668732029 456291491 834689843 445250303 497476390 157668303 293364128 961462554 962796410 895389972 936796363 193427681 385153253 633274041 636769279 626248857 734062648 378255474 918076782 790171784 876632862 930444408 985743530 574136724 663165248 784348595 936645050 853629854 954450052 878174610 930746253 829202651 842777628 197895260 268892739 630360092 645196042 831887734 891247824 622167541 769170584 857534461 873254049 533797506 616737006 417934118 418304899 38086308 583825800 497365637 795213818 697081769 762051367 718590125 739963818 43851202 217609996 843177506 939046198 313733485 926258600 823171297 920229828 215066973 614456145 498285840 581268893 58664332 842496871 852913716 971257738 943524502 990432503 668341636 734294947 575308710 770605784 292754963 736462582 681636041 956285463 31550800 617182882 681231892 711022894 831164329 970646775 572680158 846042310 345710619 600126385 778146401 914846211 494670902 769925347 278864138 584682701 331215205 465764112 480341057 505251642 68318010 464510807 828832580 953285281 961695541 992287769 126800211 380318549 441047668 571307912 19440206 113735166 875539208 997380156 403966404 534502688 128661736 372815709 387562080 848104407 897242145 991664698 852539292 945742037 314418998 704518313 264606518 545815691 753353741 790204803 607423894 646073572 434530884 597461807 842872301 960624688 338876456 955871014 199918721 681175050 640723977 769196041 129124433 302471947 844349318 988331718 224214272 923258347 982353432 983828050 214665503 865586864 38700817 318098284 869022213 979378805 529963051 856756934 90337039 479428450 341149947 684272745 961230489 983679385 950679652 965071760 349301785 794913152 432175502 668541439 176032705 882620941 634951937 973218945 537322558 945442971 987026408 999153531 766442771 863353993 855170620 859389764 402945292 804614994 215323171 495310114 275086595 793895578 658609532 802270377 757691886 966885950 18716822 378553758 883544828 910389424 377194864 624058258 466870088 971129293 495626808 914306203 607301123 668234090 390777854 627427431 720567575 812377958 30259926 868749722 231894847 589711709 841521405 980946567 430294667 734189107 392967933 977708966 113788618 285332619 582929639 962048135 666823252 915966962 849697937 927112039 771955497 904736602 226584910 337466011 719282434 785486088 990188383 996939153 552039082 718093115 70947293 890805948 240579742 961933848 366673591 933935547 611197514 964012765 947448851 967626908 26144868 772520138 580923493 796681388 515792563 873767932 761536906 978417373 451035105 656874154 16583686 405906613 170280950 976923549 8436304 115322593 21163027 755658998 447922379 828631193 741144010 959663103 399396292 764939044 518657367 782194327 92953360 125031496 573617008 973471574 837608588 857722876 975742275 982748903 733164994 880558963 996380329 996454180 470064432 814532940 692455955 711925857 594127470 869334497 262713308 898644003 308832425 369618251 548496418 973341710 41386985 284360783 61541440 263946314 582794662 980213748 665720426 845409626 544840990 817510251 659157269 831502167 375262199 406660548 717985089 746634107 359006491 705301665 225794959 294992620 52283726 782355584 95705755 834231448 627518517 970278155 254166458 462610433 120133398 568946854 691944219 697665607 922258994 987175448 221613639 930654457 398486803 926716236 613077637 907413341 90033191 673592466 239319617 507879886 638985923 887688639 850331724 962341891 363041511 759856003 255200880 379167494 920642964 962331646 711683785 939006464 767241639 980638445 27935335 768208401 589727384 923826869 874376723 914503650 629973799 746289547 661759116 980741028 785527523 838922228 305943590 395903424 786095491 815414801 695181173 863913721 863057516 922329667 290388946 944166037 469739271 528911167 574052035 746997399 656908100 676589816 292046524 562371440 291865992 884788319 550726712 653041212 531882456 820563756 779652151 934052107 409775003 511680805 480184750 685087164 327734011 446403124 402554353 980920502 131167500 577742284 725241777 758579285 405727622 447848575 68495225 525412093 245612490 641208251 384824254 958052917 508961929 570275974 466178200 905689726 620258084 890064414 207987912 823669039 481044276 525186502 67017792 685055220 101457143 865513807 431699882 761725438 567568077 617766365 207964835 746250920 215405650 220535998 321879503 445958775 16748909 454628951 819880539 962734056 289978081 835093964 107917134 280855365 606768125 626211945 528499432 832674511 602783044 718606857 715900194 818726194 362950565 942215518 449613943 983727027 395799103 641723628 743341676 782893973 676424556 844373298 792870111 980262537 709056742 819675003 107734715 704393610 999901090 999968355 175889874 928471691 527191670 762108135 522804856 752921211 100775393 660240852 156132402 212817938 685569706 792941765 250506496 466763445 215785456 457468043 170675319 362756126 712506158 864796647 806119989 934370852 342331214 758423559 344828389 359457266 945421840 958102132 258419556 270944930 227940016 781941013 483948365 522296528 801289000 965413441 616634341 924166448 883485190 938945218 745738542 973074342 562024859 776562211 737673223 920017436 599572602 743203588 494428187 739873383 802483686 971024955 318801299 677180818 268861580 602915110 474826363 976057591 777648200 942143922 842584858 894485313 731108231 980471856 858807364 993250725 555170188 941272955 500414963 610688919 403478608 731150135 561407229 637213024 281104715 849349371 972327667 978947979 938430932 968138621 447852231 661556682 232705008 657682027 683688504 934534477 116262755 627206483 664697125 868599074 304158977 596628265 329655524 605702116 800728893 965765714 48319430 460961577 72080135 170001236 338238058 970135099 234323053 237046496 802581204 933881729 295307431 468889841 21424404 905565159 193638006 872243577 652276950 714331703 488734085 694405235 995325133 998700980 724673373 957039616 65878940 998558482 357820446 508117032 841342566 847378444 837061604 848121101 53570139 468601684 518100029 917101931 37496556 252823541 62761022 892452285 653565265 951757186 614090662 820941605 386561656 436482985 292422382 921562983 778863677 879844981 874384853 901152219 213335555 348517317 184054594 372320034 853210456 885042879 912755592 940739719 44235382 970654994 662721120 727799197 402412878 903949742 268589535 964911551 536242320 939086729 679413872 951360147 299601422 578434260 159490927 721007493 807059248 828623064 99742263 977415224 198063257 312388917 797655867 854274450 615933446 956036495 385670766 588077600 185424484 597332744 855688494 910336078 342898827 975558196 893034283 928668781 622677983 669433884 915093403 978045317 108226760 209194813 913593998 939279059 104440005 300332258 289234256 313240440 54219781 328743122 435044474 760638688 928075439 980459155 230494626 678302126 54001220 69853367 722291366 881456506 210558488 783101768 284785690 439794579 905107905 957674667 679636000 905829789 945489416 997546549 168463217 913524835 578419063 983280613 838475583 967994302 13903027 272128494 69307330 509203153 568911973 838109007 362542425 374862203 598213762 846168058 515058845 796304928 681827917 765192287 502270779 543315635 745410185 865470786 881360920 928321116 692707651 917093445 480067091 646455133 43448115 976579004 523684120 994805129 299327900 766164520 884889451 912902352 777890966 932112166 94657125 168765103 333439116 439479505 456010862 599756896 252283096 349806585 143307196 361000832 893322022 978994381 805316044 997423584 522769500 749276907 602517791 746780948 34073904 691544876 15176315 233667867 486217562 966217656 545041365 911210334 386841368 509736124 846808998 972329852 563801719 919696054 573124325 983433910 168974062 826744750 345513716 590657811 509090965 748066595 87190797 538556671 281375000 705208178 256250023 985946901 422709714 473565251 703681674 937288114 599856400 926150330 945053438 995494567 80474660 398467610 252377182 648270922 396281501 757373088 113589340 236847247 363149231 778629735 42729177 391370502 635716900 732107999 94688353 179455662 186241330 349640673 287988686 590377098 52953796 232473044 473517133 686362963 617963170 809494712 398058352 863320490 243267584 540880950 130051896 796012828 846778644 990072874 97246629 241086975 472342166 784522662 98061237 491809186 379155829 842348753 16724544 313951429 164104340 979270619 209481743 623181235 688235085 909541776 559541117 620696720 202126585 987125354 174413758 730734100 171531958 214859339 299116166 736020002 543095231 829907981 611464923 790206084 40481210 845728884 86536519 377825707 131054419 271154433 636616749 932543906 746317306 874896961 975944645 994479314 442108985 988117382 266038484 918711069 647246176 904722041 353781286 413949102 581226934 936003052 163644063 949128733 764467381 978449249 282092704 292858216 649034468 691408727 71202653 459299852 520204931 531693592 804702946 887121628 556852145 971121200 671469110 678623839 919699000 999510992 15602774 220095656 786534306 917381528 786405168 817871027 929633314 989855038 527121464 859908414 841027339 909450717 629923390 755284708 603972729 735242583 749405999 804021824 912180783 961598651 178425154 241857993 945922202 986401586 549590070 611681540 54352062 984773226 735200355 995944683 513010688 514954882 903558631 910418238 90835184 903802049 144319595 576974896 73842894 801143224 95045750 643187226 823408360 895159761 47014688 738464593 711960742 752587983 512320047 892222762 699133281 855369427 660862218 847389687 283331360 867867011 565686914 787154294 406671852 917910955 331780945 509247710 134949906 649582266 40051328 857301995 983191513 991000455 866208733 914704641 501212078 543726838 405932973 858523028 460393391 462714773 410075013 678983361 991932255 997898797 794418685 839645249 765954682 792156994 157245809 911398879 344996376 983444527 995400488 998721683 821121167 915318322 599422702 934491302 101173680 906390340 451975491 907408041 321876067 902621868 778844273 956339961 632450985 732064828 462331862 799032520 969525223 971099838 549486553 862493000 491343887 741595143 434362686 536756017 144324296 598212364 67644753 220105915 964338555 972191642 357311220 621217278 954509756 967599198 773598284 913564900 752482778 799527698 692235296 772829258 733700701 878225398 180888537 924914627 619618301 660647425 211033780 600077913 742556073 760897778 470770889 590815283 474561332 542208406 130589604 157602387 721002040 723008266 160245200 772326915 188124084 723515388 645708529 833835804 774289991 830379864 486569686 630180820 317575970 887872805 892866206 909073666 881641463 942578331 569953102 825368231 493939031 990241940 344799367 717402159 588964951 796003907 244043701 809827247 666792820 913749516 941930330 942861086 511699672 719958690 328077209 685880089 565114296 778096237 486313425 698192181 660236455 949661435 224981865 445818127 598692878 671926816 583542323 599083330 969825370 972299205 734643801 849868871 138322858 576386410 529890534 564249104 960923705 991493301 791760302 832398767 388000538 709732192 191398969 614827792 305454622 755617703 758309281 913253099 291531647 552197013 931570173 940538854 857422037 875651337 48380694 946609598 688670251 773855811 743115255 932286110 955618618 968189608 404552032 709504016 135879835 250256489 365818274 859098734 412332445 552415735 649856040 966848099 774950261 828586766 216788534 773725198 183896034 545913265 729242524 934006354 371489366 784960110 469967256 870525828 254816746 345772904 884060462 944037686 566868739 641812765 695300657 780767802 224982178 236124317 843839885 857827610 205266858 697143617 768377844 959102240 402938764 572658895 29911445 104890631 499430530 587665701 938891843 980596177 66857231 573142344 667011172 943767103 876047889 994154952 807666266 870910262 99326360 769096789 48699334 878808698 930865487 989568074 222664115 764434878 268650961 655471128 328394896 705688493 602700488 621809272 15288430 536797389 499644317 671649941 800607016 932905191 811497496 962945771 102292033 115204252 267832279 890902458 313374898 859966025 209483552 334321956 280363237 509029544 680487962 919354888 402847794 563408000 325907319 947622258 294809836 851918782 908478795 960759436 241144403 946694006 312437353 760156984 437265386 704931276 279955633 771506637 569516230 871276814 251948154 332671617 449762275 988892787 978103053 987408779 766557571 946660026 841265493 914290119 788855780 872833136 496003585 847034838 425055698 869408868 922254130 944745076 463620002 921649748 421071801 929973979 206361231 678608534 273416103 741935924 698934062 829436004 474791119 646777608 710494837 973844157 7582596 922292576 464841575 964266676 218658497 558738812 651563722 828889259 859649565 942244293 781816725 819455711 934217999 981742508 794941402 857461119 838430027 977680575 132861730 761404456 402540419 871700888 569696739 591648907 814027734 948969375 51869949 744355580 601578841 608929198 78431292 848652392 188780489 747085811 86108873 678937435 770133758 840848887 488821950 973058567 980323810 995283021 489480417 807217457 169148717 670114477 797564205 844940520 876419369 906127072 417765744 650317654 42664609 103736838 221597949 904777985 930702017 940647636 346066567 795213109 941731203 974919888 918415631 948170956 615117991 634492416 800838 457886450 637523124 756512966 558260039 672479808 727790924 885088699 215518434 476568375 8825980 906286455 237196599 650317249 524313535 936282397 916392137 939347987 493260822 577033950 293221861 544946698 532216141 595339587 793608880 905996990 977244648 990952279 182399950 940761161 278905538 378535833 330492905 726212174 492731915 853519659 952036513 983063616 738314126 911626243 307846885 426515609 432319131 913420214 882491125 896005306 25046602 151187681 673463897 750332733 225791844 759671793 204086714 621286572 931888478 999465492 734977515 987328390 827262943 878822280 320256182 958958292 437315522 632887763 307331553 587755513 260845983 990476079 262030433 947830017 987657641 989782780 604510891 692275974 219726595 786494169 812908050 857237618 250339800 341017160 757703342 940781916 759571081 994739951 353281696 898137402 715479398 769372980 174442829 467827412 699616601 701261784 430471627 644995161 109386586 121883679 62889080 237950292 73972856 209607656 522202385 803010742 360895887 530480599 19476731 447297301 910958222 995318264 241576436 655302702 28530345 481652308 509991316 619439245 460839513 499979178 861099080 889888283 165801014 513785026 750070281 824075983 814762816 868435662 576970193 996896499 825927643 919712299 351089176 599708756 478690170 832666456 318886218 354114478 330857005 682650045 504754758 787390902 731993726 959197091 843346753 852526899 401988462 855215751 984428004 989442692 533729591 596655754 724838290 780706210 578167334 950136470 199748845 940351709 198605465 916019149 196057489 735820183 483166785 662944180 340500149 511963204 746408018 951363659 929156287 960738326 321502889 519404647 323953309 507274626 545981252 981340311 376254608 984378395 262882108 298206146 80215007 132501342 845742932 959334097 459592696 800376146 877103641 997827320 634000807 781311265 343249030 931284991 812572822 997679062 2410470 490201061 241538416 667391207 243985157 426630379 375280140 978961478 458892936 667854286 187532371 672064399 26380526 413657822 281232107 674613049 511779945 807193096 682750886 790638119 269551631 282207245 214730724 942531296 483763763 948762400 983546022 996082149 794295093 861598880 756175417 840884783 719643401 920731945 612707712 747229214 319785896 906081284 595956422 774230888 67717682 643878512 559239732 826963378 229911516 884355622 289204367 440244955 76516026 585190739 867707498 921472917 958362563 987906638 898791490 930468926 554883559 907638863 683120923 711347836 920250864 952835103 992947064 995146657 196606704 612852145 222063050 565749252 691582551 992924107 251091276 490352925 256277562 813538824 664853268 769463828 87545339 825039042 198632219 808202927 225195374 337280885 637201853 832916018 621624739 733215713 160245983 760786744 175551650 564327506 880672560 901715465 663726375 922464874 386849739 461720326 821572375 906024517 747770677 769036593 600909418 965333218 539496662 656268747 97624267 178753922 218720125 323403083 99536238 393738241 124403761 350515426 689701150 988969573 248084592 966922420 774126929 891913723 822535397 860030351 691928064 934297736 515872074 698769113 839143134 982011553 386459649 973563345 750805489 778316438 215398934 872701730 522853618 790073582 872519039 948690756 975867078 982327614 855341451 872666728 689806901 829839510 629249894 762874442 728909690 877261693 828090720 945473994 489402508 967198322 50745860 685864912 992942677 999679447 679389282 689398867 667332392 704373604 426326459 817818177 427379556 571045085 701312429 815683985 275890349 302684104 152259868 580502738 289458211 916190813 195256553 413751278 981517288 987848035 886514144 895203237 401415830 731426843 937117870 999190366 888416481 933719086 835206832 879812474 148720970 441939301 553215312 969032862 77249394 304157927 585853476 705675049 861540894 936670236 379215925 415518878 138599834 157767341 710080023 939726391 386113797 390432794 301383386 870052398 289933533 340694817 569744902 791191860 139838106 989707334 287769339 875975236 964969321 995647765 156832908 213399486 363446535 993809327 54466585 887955293 406364589 507775788 388282417 583844729 720507649 760177721 186642460 814911376 118470120 371815165 393660920 945086932 90426491 92098762 381083705 997107152 528072890 577469294 15549881 846676776 775330468 989982743 297138194 456495312 993369871 994005079 269211454 688576127 395149217 526847790 129306370 530893134 729413687 809530465 502174860 692996699 432013270 869079748 542532600 817078187 640944126 839608304 285907061 931054611 87677509 805855659 971762507 973687669 948378861 974175952 144176307 875669392 148455805 798225168 666153125 864574601 30100824 317066275 216904061 854305150 117896342 818103682 548110581 657976659 851343996 918381380 348245354 753599318 327613803 458678543 151661067 163110019 191978370 338625848 286605590 359377879 140500627 569333573 568166703 867652583 454730861 700936053 933689135 978873391 620341630 715488357 908352119 938284193 792014011 982301684 4784974 827499842 858350464 991159499 497002133 817947693 135898899 489514221 396536109 635711661 684701847 712074003 274089446 446091827 202589025 655601230 893103240 951525951 445088718 905283472 812685849 826112819 332843078 579765022 866293699 942449062 921599400 991423792 395041027 927637484 528664604 932735702 520398864 649629089 303382991 908184569 779847865 823201561 442653365 988652536 705642381 873388656 198796695 464164900 256686943 319835212 321558607 570493721 509885147 808112346 415076692 510506533 799618904 906955568 396284545 415810743 305371214 883225049 829151160 912173470 111705712 338659351 346482131 641165348 652602387 905218735 233213671 643275096 943199366 970449064 179835264 701011139 410294058 874523399 377059210 886258064 329035131 932871751 563026281 910516255 858000594 936367555 529365020 895970883 586776178 704763375 468899166 730294644 544041126 694822017 467680702 797608778 727145097 883638140 286189852 610318121 96704967 402294745 123881387 559812319 518464627 973677863 504128690 973491096 313780453 869323108 824407463 969942003 625163178 844979697 558872526 996699082 151331806 615700830 558192916 814179900 333530079 583523970 999494463 999951086 85465610 464683102 19665005 303540698 66299519 656026400 661250731 837485746 163415391 304423729 683498191 768305064 87454746 837285765 261779131 720169113 251317269 919543426 850766772 992273219 149462106 248979423 379735831 622478556 352744613 426936145 390750299 767730955 594105981 680420256 53117495 374334473 333937257 720997064 770116865 830501880 779868308 881983125 454190561 630888067 990050024 997561028 679129967 964297761 195148175 518204816 275845215 570652953 235244515 962389161 911331454 919857482 957716745 974065979 502869253 746610441 143352781 547783741 227464710 385015805 288061316 605898978 391826229 430424513 42601762 850867353 468939793 481104445 165654136 909488609 226767555 576132813 441832221 776684988 470458203 471092206 94440421 337740380 872292635 917511182 813612863 987452513 577820150 660730446 326402705 630327679 930889044 942032302 681680504 775498087 370423592 778521145 743722838 965890880 727979540 914769183 83842045 615134001 821492598 910504691 870650818 912645933 600787176 607939652 839403951 970949911 796517929 802133755 663129221 959354238 144548622 253226993 881881093 958604635 365690470 602374316 120510066 486306476 577090398 890765357 381273767 673029836 272248988 302344077 372619581 625843189 922656860 989431079 959947111 998021179 992869817 994812532 114301049 936069011 297409583 636363979 456606188 800990878 652630344 759755890 143999941 368641934 492986082 588351478 665253681 737644341 735973403 842942419 904159378 968729300 978916023 983418657 318253775 972907015 682976398 769158157 895706850 914458249 955549269 994534232 850590406 854926616 341712691 934272334 581729742 928958998 976235967 982126236 416225686 634133265 367744025 713644895 209410572 732973337 693216645 720220291 607380426 971449908 781854887 888201118 868656567 950854174 81045156 444461976 794534778 918869283 154828873 797683402 811821358 999308657 439618766 592783779 37748452 275507889 612903988 736871023 788171777 850842477 417194463 736962925 622779960 911010362 256639280 606245586 493523558 586866454 66610895 543903294 727123462 794606622 310572534 839095270 320075296 600579284 870391712 961270027 960617632 961756870 999256412 999745476 747672344 841912740 926010929 957618901 999684056 999888197 178555609 567861387 162904999 704754681 564995729 597977258 90915009 689449873 892376428 922782285 929599623 977308117 469251920 929611176 513845399 967429353 746878832 911562275 124409831 284245311 757595423 835659299 407509570 418701343 139476584 474581377 364286734 749407852 313718417 739558087 634757939 993958938 669818023 675256348 109495626 141464423 29276978 757776229 773266736 799636324 635576449 743298920 149146145 791728562 970246149 982170093 433210218 708545057 346774158 835703969 949877581 982125509 145918240 400410986 777575588 814562959 705678703 869468164 630320332 920117349 915888263 938364300 718144176 868683868 544868562 980213595 522540012 649354934 862195444 943381144 900180854 927170289 830125596 963498191 215065368 382241436 10895077 60493089 273502567 354760009 156445910 851934574 352158394 968916222 500453321 519019328 758538801 799846180 814258779 876138393 524794264 756804003 760400882 909083253 99233630 197817189 365701182 381949152 654069940 891299489 423333349 968695331 728614274 926414036 112765761 388219940 300214639 594613052 735743628 804480279 987966886 997685070 412122012 487893654 34682664 468636725 410157912 606101673 220957758 887595809 40614242 236339818 740939214 870711156 723867077 741384505 896465448 940890111 820697881 942193804 946960311 981132331 174396802 584771723 939980608 991498374 511316472 578635994 456881475 731375144 144604092 341206879 332575955 940973767 368396411 866345934 195195692 750200189 571937791 631554609 584628260 869477391 933879909 945819955 258819120 876049689 256742935 474959597 684756300 906599039 75918552 140789811 708515096 819034323 669331601 747905304 801815578 871440546 147575515 439796231 543150979 884851981 411253973 521995936 375292608 767838072 647016718 924452791 298472143 731220183 99813678 120641311 326901556 468900594 124918801 612175652 518069805 915447566 965591641 970751082 921959834 994811269 800087260 836343888 240037172 534364701 841483447 906785071 218431808 461070623 819583604 901038528 554121663 563964973 416764814 743617798 339525615 768198646 446933339 827303417 233445823 256666234 198814874 804852822 346983445 553519681 219935013 366585121 746538583 955594550 747495713 888889533 789110264 994097645 846264372 914736018 33387277 141632277 720635910 997872042 344865602 934280976 471330209 748982689 907660024 986471361 550143021 862214286 248275103 338406494 964669633 968567460 914854351 932627180 333141492 897449939 614607615 797068731 511768293 853906979 830995416 918599284 974329149 984582948 984891448 989900342 68649350 195713135 557386677 641187766 951983274 957304530 271707801 299887638 464964184 581253852 784860253 818877322 950779440 989841434 825853994 898461589 922441780 967070013 442350825 733248337 536042519 965076319 586435962 628284833 175165343 391323704 957719363 977677007 21130170 193092435 713130074 924749660 735163308 747548112 19358173 664372376 126957209 271165152 364765507 992136816 107371661 921342270 91631721 378910509 424412972 548889721 540769896 925152151 293381803 454189865 444943687 997223301 896987007 983243617 42945242 440639763 574323055 910684703 7864131 898444734 677498189 750236747 361854055 700890659 678643791 731213750 421486401 661476444 808586217 915460703 613729868 855099196 654485873 961428109 284537489 766395877 342685763 532349531 679220501 974267662 288976508 317041306 92055327 184745787 755200713 925910814 871921739 881465749 651580712 754373613 214851218 318548403 240832057 594604933 58171797 59573437 124878248 563034924 197708445 993524490 210397639 781876976 843955496 987831330 868166380 999775356 438814010 523463505 662982842 718283488 174157271 581985672 743236859 935585384 460049758 640401480 693391087 710240492 647474691 737638616 473485664 543219393 504864787 589619126 336392020 777570477 740453433 860632558 228733316 785285488 355164657 909618974 572772484 791573892 446851144 941943411 284148736 828619128 820930810 897851916 420764987 817616048 129218639 207437626 61724088 344208412 268237928 480017224 298312953 996659818 918839386 977617085 832100706 858700095 766358633 942636032 438543647 718763656 785430076 836893813 227761060 976311832 791993944 879131159 14954836 548963805 157426878 981284202 955044226 991319776 34564687 540595074 819418855 928203423 986430458 993665175 286092087 889290246 496801090 978620863 670790535 690709999 566895968 960073958 541593240 813547328 359495249 857751669 633636157 717506033 562199651 622713576 434422815 442665453 169283183 929916283 273932337 858881108 367738482 740225029 350305628 408169682 141270638 923138183 8391805 821517239 628577861 883313762 148996619 368275342 425511129 845425951 277851180 311814028 858439424 864735631 451675431 502426430 451816426 924407298 978344952 983513789 407751002 549496402 854246375 857032593 951830954 992554992 82390547 383782925 750770604 751871795 333128340 871946911 345976377 931846098 79188916 762555676 711376437 785635145 723935155 862557253 545492166 964010081 694640047 824139462 356598114 767641305 52121603 895545480 841844705 904093730 772777636 903169367 214105180 952740503 450583229 493603856 940693916 970609522 548580118 756784370 965124093 998371729 3043669 41244117 461608198 622238286 267996283 782816046 256080156 668646364 922169557 973788752 107049425 284039043 836053551 877894165 592081301 779098372 63742323 815054967 153868828 954964694 482297501 889358546 816935331 940724922 888792410 958233460 788559493 882190258 52116041 136996427 305422945 770773399 676587447 845274306 730640914 819992814 317004540 770978040 725104581 771630025 262421351 748499353 86202866 623795691 489166788 670163337 796462206 956409443 753291890 794495510 722857683 892872506 335337876 854960380 803856183 844526101 995228895 996037590 879153350 921035459 941981243 953158502 241112150 763813981 593799225 611113073 627748718 864178995 115612648 471318310 912029245 940628249 119100722 746414030 232484796 974014262 359077003 798275069 250585519 747258863 752935447 834143010 232368597 680965469 482352872 957389577 694024379 910256286 477075197 677410254 706325628 897712395 224447744 980468470 378255262 971548890 798918404 848714419 359280985 365300751 688316121 985661090 624073459 688578201 889006915 963720391 366225200 675924056 900244368 904128916 769726875 918985999 209234320 663683399 645566289 682390944 515226595 931436848 69089385 479790849 176552560 889296099 727838336 792457471 957707889 993637538 625715912 684255076 811591471 851269551 946231694 958895911 788588006 925060809 588437650 804467097 539198763 672638549 18905282 146788401 26074796 752556559 131445534 715787328 101817011 202634700 426525256 587987743 702540667 709781497 972134318 995842564 710907909 909977737 862550098 943851116 437742667 792120641 125496454 541538060 755440662 890953820 581343584 700117005 88542561 470475622 248601881 412727386 409289610 439734454 367962476 428925618 157862238 701070927 15012597 550253535 350103070 613357088 659178419 775614853 367025750 912103622 992714294 995057362 694518003 835816236 927949770 941680461 677757048 683337538 572450986 739142791 428955175 617857337 548968954 900792247 767940416 803663650 238552748 274132197 326892130 548418993 702307266 876121603 43278448 448619711 102998 772654898 262982757 987947199 592209676 774135269 960382059 971457738 718680518 967964963 280274633 866424537 480541872 483576399 579110575 683941330 291720441 628005505 425059402 434877439 138535142 547994190 308424580 897509386 483593611 614808421 565118611 941970804 943158851 970118720 358291341 688668800 600029962 685659758 861381185 926249033 483988320 530588912 719435048 807651773 448176493 692543951 242875236 354830767 986886283 991736059 818352173 869541910 418526624 683635672 827625991 887572779 812259057 899110457 581280972 744046886 694077071 998783710 250883982 290891445 730331115 845093143 80191992 664967032 363408849 714339285 746716569 955970681 834783136 963379001 700224387 900658621 342565817 839602487 745878035 754516298 312526144 578561828 396107538 795052283 838604389 860407806 908401722 976634150 876634093 941401168 222107117 691226611 415944588 986708559 47683646 742549028 49197388 845324881 43647154 327037690 406924999 915455050 260730374 607216485 924708761 998407426 940115691 940719799 137241372 854483948 660870353 797734665 228899445 638177679 862817150 880725535 592526387 896811612 357346521 687617158 687023568 950920621 198939613 913415183 867752736 888419003 661865494 770415382 966175066 975439181 413198577 939645020 564273830 869799345 949676503 959662888 345352757 548503149 112489193 862285030 276732818 797653013 277033135 596223336 430543214 611144212 274814613 436312553 837684314 972324083 390963134 827126020 181860279 481015154 343838353 831764097 709933223 908102044 928856029 953103396 702884246 918196457 506627807 904349448 131778094 840288120 93620465 747657550 50393846 106599350 796604972 992577738 644785923 664735414 217038909 843166237 543124121 855676055 666998334 914277837 880986650 966320504 231472402 653092509 850697566 904079139 751184901 881202323 362240950 428422627 807430988 991124933 495687280 852342158 964125160 973799238 568325019 829161702 802759393 926556822 239174730 917068124 401340858 959218093 85211309 532308244 772865190 951320831 401051440 429119345 959818868 968561624 427908713 943059374 872820560 893674879 859296050 865514165 321988778 826091522 809308559 898448914 209533071 231807086 390362657 546172783 168588563 270618927 942719045 964533759 934730399 989584934 669251336 762591017 994739839 996636670 66575450 387405455 827370529 882261368 950440811 954238899 462660752 774953616 905989568 924949030 389389272 659208873 925739069 935099294 316597773 510773027 591684697 821866330 797148509 906654875 115912065 220336688 425701837 527954193 329596101 765471264 970252807 975322969 530035428 990814089 947752443 977698932 944875683 992529648 437929177 490711730 706563370 998988251 161620559 232531607 432421016 482174274 744453656 991894765 728968717 804877696 509810538 690561450 603398092 629567176 850877659 972775553 24054487 877899087 27548990 695927144 479384370 823708549 63387020 92267519 943257920 961478466 591300698 952593175 730186657 731233105 392506873 411653341 830100773 978805435 834654054 918088373 674658210 755896063 571628423 594140265 971608071 979060664 549628442 661503839 823022013 900886840 559050183 936775614 643943330 672492586 361796895 574811117 440202868 998826041 91257994 207570064 651138193 852288502 426208432 785376802 252156024 594693279 889669627 981165179 848288350 890036437 786268480 995274625 697820950 710622534 980766110 992597112 68031465 939712839 131036903 150503012 394584896 974266546 902630077 942632863 489822810 757414171 814012837 905535279 711038669 874838583 637948725 861761115 896580518 934992843 337586246 787430703 194403381 537540735 909896862 948355738 665214378 672153401 516095633 960814263 260524125 711855327 977348825 995677782 785555834 900508164 416952165 615420293 10503408 608695926 508739873 783298734 71451335 324275348 759242219 857171496 252857950 343917534 912440536 962441341 407724938 935956463 165420676 695217530 52577865 294033983 335631211 459411222 507114231 877710595 730286046 921208910 12044213 470965408 947516595 998567246 906800996 949672742 892006739 992233937 692984455 718081681 616741376 819450539 623791718 888174534 843335655 849339007 312865557 447506531 681127734 851317997 816124917 866701532 2175626 68379904 876606206 969727342 979851893 988420596 639680507 863841989 457129108 643527912 521763329 673859505 652440923 765690585 438653502 494042243 787157486 833259315 90254163 665364822 544207643 887454422 183013003 706605443 603484580 607742550 496216443 751640511 231514382 253791317 392405921 629745502 207577002 768627160 426759413 668880961 96370608 791537875 752985716 900599322 473929369 994942719 962477843 998657930 453829552 857509294 531042355 923965448 14433050 42494984 752130874 978088391 603083891 788218162 822930786 918541105 704093880 749933679 642947832 687756277 732500667 917347525 453419592 772893792 141755220 842409745 4833482 383917888 436643456 757293279 114738455 508745212 316280838 486215691 367402709 824770843 42386131 646577935 410888528 659552927 14724526 661761057 520980226 701005330 886356008 899523166 310907369 383366024 561113125 989648147 785005384 855164189 936583045 970791072 165075827 590254304 589930606 680126290 792967126 954213483 737553790 962590356 555527236 610688479 448133512 802194928 561248374 901681911 695183602 869077516 109407442 505150023 123984458 925559682 971611740 997676158 457708941 849931055 53675087 76678240 426016450 690004654 107159864 166992686 643565224 775920355 186177664 419288998 692015812 692617908 208114032 730934670 166838744 316920942 283561287 583410153 197969956 828512638 866059851 878262610 824635082 908266959 507023920 522378584 787840536 788786205 457039937 860955411 308893843 585024354 681648049 716947283 623609353 858027499 922871099 934207446 342038987 490493633 422162786 512674615 950280610 983042995 381608580 530008585 14912422 187482826 309302553 343476686 424642556 585048260 203182009 970440461 112441880 498446467 362317161 823530476 51453750 799136627 568938548 753109139 469740737 890605874 619321609 701727369 155565893 820069860 109129222 430868188 346293060 522510140 208321507 507912916 84734850 811274031 114760176 282130816 235124385 321012388 803138371 920802209 585048454 716958455 154431214 624269099 35762130 533179202 651448006 788022767 668628956 946793724 972520526 994045151 731508644 909913936 140110563 368212957 133292243 898081857 29985400 757976656 312488511 566111627 771510539 868757989 242974525 449384664 249029019 512799314 563894619 585977831 332601088 499837159 138841325 788931174 787818467 818012647 10063997 61299431 444068627 625794666 123734317 659084829 607219253 611263171 486860662 866971439 741565549 930615274 277712170 919125776 32724322 961786130 172663633 738054502 304835699 849753221 881085717 995247024 670128734 989939933 599682307 736626289 510342076 643901335 56521828 914471843 193174104 803037297 487923918 794924649 186360542 874223818 932356761 962574830 524800067 929238114 516687109 579526603 511861826 588290414 498197662 557421290 863171999 884115630 799893715 983470151 251793286 654398022 26814355 818022983 571596089 881566560 961981222 991456956 381161236 884576680 985426357 994179674 21762096 545057752 140228409 397134032 244196120 952749841 759361327 843939148 194728542 325710037 93795782 266275805 9569838 577144684 393781291 650711365 945229726 961687498 817170409 959512895 462728223 885771217 5041620 540905493 74983358 953255728 607629346 917268399 282496460 907971813 498151854 719302106 861579074 939515176 614317034 738745016 738212392 950064916 897446444 939861368 806591780 839413567 456463043 723128870 42860933 46153750 709959507 876334720 906600574 954495706 119271434 904276121 726646103 819873108 816907789 931701625 56285733 564202733 202492453 657122228 651770640 908435785 133967738 881907315 410399155 882603999 702026224 851949411 281995322 651325594 653983896 880702400 275312757 483567780 684742395 751287963 811028865 952191417 220690208 276976661 276535217 964270615 83171856 533193666 603334210 666130917 653703470 761184217 814154409 919121392 771197878 823729690 233464929 570520051 78182055 746376931 515998009 745184616 129246677 452284821 239169082 466782652 980470791 993311285 801037555 961126707 637978329 641287600 844969758 936363714 807783882 865560847 109048099 191787521 622459494 800529661 725373511 851888861 634089167 911565042 954968953 997984140 702380621 832922913 886419015 902467436 457697855 752736079 895500597 912599981 177308322 870426206 623897422 905263528 10861528 488601700 853182502 936814588 461818973 510253391 707949526 738107728 194005395 542537877 490153542 925691150 689751497 762023957 990962880 999126916 638153217 705262352 38037816 99045146 219896634 220195081 490752782 909060707 392146535 776339741 738526757 822472586 230567332 989400524 755752739 781562105 333524349 411661490 323119093 371319096 51932711 803824784 866193682 917983357 70378130 555945985 987810455 997363626 518684206 786547290 801728698 881708784 440044961 537384794 238049420 728769212 118240289 845722196 819948155 983805624 487131491 826183312 566394661 908580773 878567554 969015885 554817899 569299265 353699859 837849413 605935761 908434146 144959562 360703342 671039495 914948113 954386952 965442572 973763403 987950290 6099599 213542849 192953394 293092409 442737151 495321610 694543103 796190742 369737433 531295938 979356538 998950633 908683226 990495161 661892753 910033530 308003620 311627489 597834462 731074879 399584055 437225449 138744852 620070329 869014745 998272440 777708050 797510197 752359811 960994871 743041901 969385359 921152094 921556627 843313519 938872988 895103556 984191632 355255820 362248294 339366685 533750759 568393324 608368232 188716847 913020220 975097198 995521028 522244484 897300460 253765430 443871748 205800399 275830130 256910131 396771158 696897142 756786698 465419566 892696822 522047318 938446717 828534805 857110320 811256914 930649927 867567500 915928064 412106809 573030143 931512004 944510695 483273879 824827482 965347340 969782608 582685719 778356576 973632023 984531452 878985516 986247467 775972224 827986676 531320882 791996013 216309706 234080007 396559597 836673688 8814979 307550431 43263046 559546528 892247965 995731437 684308995 699089105 682250468 847385931 948927086 968623623 540243143 985865888 890567502 986655253 800288330 833773820 339370677 486386086 4246180 45992155 743910813 767008246 198313338 397524994 767326348 849647980 852394047 869981670 968080239 998711059 433203874 486726351 168872514 859677259 147803142 728899356 654528870 743540360 356884241 851210307 15600068 171490061 683443839 691555810 349155498 388691187 445745607 660630006 283907932 953158276 943810430 962887712 254307881 351121438 659429552 853084726 159782377 362931761 652810250 693545361 351538643 974055558 541424335 944574578 174736882 333858070 781120162 975395888 783938658 938946434 346321309 669004595 808526124 810450510 954973777 964724611 936537159 943374549 588623164 807600823 994954188 999140194 782911886 787307116 807256869 846122326 4077431 808599138 366533248 948814446 386704345 723380862 816246819 891357263 124672102 130854447 691644623 917817263 409827710 961177148 444775052 997377898 495394303 612828141 904972142 917161797 452533779 612993897 762918479 934669253 562062563 608538512 805115813 821269890 616770652 997676208 299619371 451452925 949600633 994489703 185199895 390878836 655399823 859278658 199285675 838399926 8381495 114030511 765131254 805834982 546529499 664329956 730537734 848600489 610057478 615434296 518308603 886119680 816000126 918032009 627491988 995367070 787851717 876373085 870362791 934487655 54058463 401727548 888804157 955338493 273859668 730322465 603166839 989533954 222525758 655503083 996101140 998523117 162422217 189545702 623937273 659530171 367308443 409852985 607810579 904575473 746700672 953510465 61904974 242280217 679161499 984434287 887587563 967632421 97290585 925043037 675277835 885397234 535215399 581101039 901869367 999521283 976205824 990880198 105030341 865011939 475019200 715639662 667472898 782502792 490051861 769670985 710146028 734222105 715768979 970815003 281411790 490477123 583372219 690168095 881626300 989224429 939541736 943701509 560794356 699475073 294048831 355067531 175989265 636178919 173107169 651677322 72678918 630739639 690020657 972772479 514833916 869262554 84231642 297914142 999182117 999951618 194963287 809419303 448033860 894538066 58606888 920563986 100889515 975062311 583395274 856123389 863032049 985896030 920809070 995345777 69821523 591752058 620258104 938173526 970964262 977527006 685279890 922548829 386232152 822072571 871524477 909910316 270671686 271806445 568822127 590435466 829047810 868285580 792714102 878701480 377614142 612396583 947132237 975173462 278490199 948048970 419803147 756366071 184413428 976222258 115923274 518592812 838245026 863074969 714795096 989180452 638803877 813083373 147534913 611108959 754543170 785414448 620874427 811593629 128656839 318440238 34774145 475506549 85872837 104817543 434963908 817852607 901225697 943302606 431112775 716166129 975642408 993803735 129684148 931632833 11870159 360172376 433976019 801496678 247079242 289119755 967502801 991485163 978405698 980998858 390144059 748142769 479266868 654569559 297507330 514841981 471193414 662940878 416097341 863096741 580457403 807285386 225838247 337933806 533547654 851281686 937245944 971794579 834327602 881210580 987356828 992190418 59845457 511237242 290572401 358965499 655582515 942188732 810364439 906704492 609764052 793998514 645897187 705221723 118235190 826029212 716077805 784073573 108429629 489716853 178778760 666338112 887836584 998508895 300206488 974115470 436316719 488332762 328205944 409467376 977657405 978219559 475709570 659036237 805891309 941724495 23609558 772495738 82331456 639038611 984410576 994224717 210684487 630966803 935324576 998758909 878885534 969070919 342490664 429822836 623177969 941020211 436712639 720747923 896697710 916521233 555462973 836220243 845241029 895292554 403530029 794659414 79977502 177431927 556735500 990361563 20951310 712211040 8234806 336449883 417760085 832678890 600206160 947083465 120155574 460274212 140606238 459511144 981305910 983860899 513291960 538194185 486632496 547129625 399322476 663478762 906702452 958302567 99685479 528800504 115683049 307879300 149468063 552210917 921030039 942067712 414651010 516952453 202468652 499198717 188373559 673902455 164684664 325429211 526643140 596960478 734613157 990685147 357681946 684707305 557123106 964020087 24439322 107939558 730401604 833327894 984901967 991231115 980508565 983147864 46340525 206616922 906420714 936163071 415096359 677113819 30054495 190287796 409405425 426025047 75196209 813060147 790111861 854667725 405007661 992679892 637601543 929297945 30451988 428034050 929557031 998902151 644793304 771907810 343408776 564653097 280208042 741440919 656548806 739952560 313620176 694234826 914641361 973364571 824852167 906112329 740690180 896813660 50487346 758776866 410268634 894744083 704170341 764478026 491940754 566817001 193810759 839853726 311903424 959622800 374576745 909276285 516830770 927570032 662546124 899373143 138035766 393191734 191271000 564615033 584959068 908152242 878455072 899894147 771304798 890795916 469518048 845158854 529042544 997585405 641072717 848428448 24002575 959586815 696916531 711455907 567722098 910651814 741351371 816886133 735144591 813671865 711614594 786264099 417710745 968237982 375655538 863859996 562679896 997232529 224772313 269837613 621227135 762961965 819646269 859547456 115594454 355880623 299298439 911318729 366802899 797379098 559442543 814142211 41996319 503006288 859887579 998050089 291784161 499681812 820336928 839344044 115700653 793203921 730353712 734908735 67698742 821417530 267971680 803001408 184650735 337146443 27563452 971624532 290141622 591316946 744587781 851567822 929320614 963238220 281113774 404373353 74970863 589878275 288587023 842530198 808118860 954076300 255450880 685108951 993995520 997891447 935507962 966831010 856812303 999199330 113574056 130935197 871760162 913216761 184865714 231293368 395448869 965366788 915403818 998167501 569058325 858192059 243835663 578482792 505847939 932242869 69377459 323585476 483337093 723942149 277254838 901378042 234401288 434265785 52445910 481689232 750234398 922692598 949055636 990450416 568625938 855863781 529996226 778375994 127529719 519347057 373379806 898383599 813342799 839478510 977926398 987056499 498323686 952432160 325079035 597072600 388120612 741449902 517747147 926681057 932655238 959539152 671337140 994146627 10459573 597711026 907682326 914878860 846108557 891381249 371339183 575353325 444938426 572590996 36887777 221686558 467583864 581163261 941509701 999312398 79836195 371768035 375083679 824664885 723658328 807500766 763970824 990367116 834705576 971242213 674641154 940784311 140188781 817238778 398801797 903404128 682521925 998365435 618624812 680930723 965941264 970995624 607560477 752114664 402878429 531378488 422037933 698525598 889357662 948399298 640478743 773730403 802028664 848321510 545474221 549496321 233819989 584677653 305513845 350063076 532259555 709867255 957210751 975557045 332184901 392233098 126578785 765368509 9084383 708673367 5322682 615922249 259756012 585833905 974600241 975620823 376180456 466977767 413672781 429746633 508714377 661865998 677706455 902879042 957043311 992206322 178670937 718961570 582497229 676680528 486594582 745110145 78787175 876813844 613015698 974060024 850040885 972033526 945311472 987860786 325465446 734781115 969564953 992546920 485306671 543456905 432627543 963823585 190286419 207488759 868629262 919984627 152896028 999615188 658935425 981686000 743054760 993778181 12631413 207869567 81980560 853271163 69207599 794612030 960109994 993372976 307673647 761903263 669417725 752973239 901163953 902659685 605708194 838772273 223121675 548610883 207620482 362303890 277653462 285463536 934278384 992124302 74144989 955595350 972794560 973246028 443979665 988745528 701330459 853350862 367584980 877064543 882323389 907697945 892676795 908342101 332282816 493010498 734161750 997481046 380065875 644418508 821243983 965641586 312042936 865578361 61166420 191342855 978702447 985952666 4727223 765725091 685041347 780467053 375457488 555229399 420067574 610155200 480503453 607111772 546796430 999139209 357901188 809045408 644226342 976582673 873408235 882791751 481272094 930580789 142358178 288600425 520733066 619355003 669146382 941158272 916682962 961454365 391154796 670373420 313078238 966946146 684669030 997246213 314359789 416037588 287956381 334509542 965404836 983147653 209494931 889223546 163067357 192508101 831107878 951185003 733935975 898223990 477740932 992813390 665147607 986955068 820704357 995894985 742079318 861124439 623133088 995361038 927877662 967417539 983546847 989208031 892527397 984168105 659349762 669843685 701259512 763254910 306320909 874775349 237321805 529806392 268576283 670283449 184297569 783972047 24153170 71326342 503891190 940310569 474676934 768644534 190954745 520711060 324006532 395304355 666864458 734138575 461010039 954470486 148501697 304221268 638783419 657721153 488286585 953066066 40626174 613639346 657125328 804780777 30357454 334384706 696758897 875401260 756009661 952139908 731042777 886493570 376171237 936502645 259234627 707448664 368162883 713540570 720072517 965747530 871496321 935605035 77241421 885923210 680298884 857210869 671718698 965723239 959220541 975034144 781632932 886432850 687638275 922222337 954424534 955203338 42623432 707773577 242490435 382718485 469288674 753235841 225195134 852282521 608500793 741925653 295204261 323176357 206437859 494093485 230447601 667446721 45290930 444886842 669859794 910271913 602521816 663168062 40368820 273985852 162906283 408239718 867872574 912388720 625699693 833842026 521282782 900156532 735416028 867130179 565274628 749343853 353062160 685623973 715669773 990770085 634751537 904958508 936227768 981110533 122060404 758304538 459221006 691974164 222638032 997084735 104661363 496212408 166038686 601527371 292849662 720469193 502786068 812554320 478743058 547536686 293843666 601196071 376996646 575691701 945649515 966790912 745269638 817278641 981263011 991463574 373768537 488632277 943288940 988055306 721538087 897722620 882740973 999061061 405558448 484113807 380328738 785337136 267254316 759278004 893992145 961110266 458737316 666668822 697077587 799449817 501422650 974281536 84668818 107483102 986754888 996872516 913071003 951877649 594240111 766354450 149370208 632877970 203448000 726653453 477704910 525685380 862046174 943240507 22443331 694873486 457664079 652523657 691950257 875936390 509549524 852704961 208204292 531778843 233975107 380339413 426879925 498419056 104963701 152289244 904968105 964036699 282142287 519084360 232060657 566980700 158183575 694262963 197097678 892623939 597621026 843036074 163509386 256833805 175796186 426648878 846625414 997409991 218564541 930006583 949507295 968146988 835520424 868980288 678111326 954398516 366895953 816891319 93921973 555239745 839314748 886927727 29560998 283113199 810261428 844995494 474329384 570193865 70282173 405112959 283144502 485725337 856398547 897565394 576646304 779088668 110300096 649658141 156971192 484735399 349527424 449448653 392647261 929019955 899826147 919294298 398440558 901640655 895376931 974495777 137523664 188212202 63455099 692826626 318537180 902077463 952518428 992509108 459046236 988179560 356404987 794957833 835095257 868583638 399756693 793621559 990658119 992055676 845545359 941200739 775346118 797327866 645112766 930190319 304828593 533807317 834555846 871409951 710048370 944952244 434737202 915840885 563782498 973901573 272051659 388894522 349525690 437933168 412967656 514693671 50769679 132210791 789049710 927150532 712151832 776091391 259771742 920566833 416425061 867461995 411994407 887066869 152439877 164583364 144616112 456768992 42327162 476402783 207314352 682049512 897679057 947156994 204240585 812842830 50090435 616211218 427966756 710579700 644496876 753504537 37298199 609114029 251868145 933226955 64381532 617902702 330981901 819397938 357009297 920777235 764821885 870474130 654288189 722626744 804694412 847189100 894367808 928551890 690398148 811801966 595898379 808796473 103783149 885118086 974012388 978192681 307196222 994418112 550659980 692834583 717013475 926702744 763219265 891173937 82767320 951251281 190942550 939988116 871108054 963134896 819284280 897065377 149126528 815216815 272885913 972968174 82560879 860063590 835478679 984891308 480412451 532094057 207796566 988444621 8336865 966800469 616729278 639947914 241604407 802549357 334700827 774119496 715160782 921048394 998744362 999082911 284380291 361812038 240610919 275161200 778294619 778458993 832807624 971541590 847810303 921371957 430512366 540464064 237422245 536631359 293700827 428401730 127745641 239019407 215138625 568786469 958625342 984013358 805883424 961792594 435698480 921944414 740331566 924924270 862643330 881339297 977047490 987083370 878298849 902486596 326444163 968779602 926517616 934599796 307731264 784429352 144509457 595851870 303205938 993512002 80244463 195197694 523778634 827151864 209368758 744951940 579434392 867141432 690196624 760846329 23437086 435536702 312237222 595822518 799560940 830123682 859584126 901734539 271493833 710361030 774697525 867249278 550890766 723851568 543855192 802305545 996710854 997624059 936001319 959642577 1703250 303179413 157762067 289710689 25747086 538710165 251479616 899777512 969027565 974977139 399732914 807499896 830194799 965672365 660342007 758598922 23990339 587992104 69490738 642356755 619462234 817649817 830474758 945035804 310077664 968399127 468582135 933100657 73724399 491850102 784118762 917345581 133631259 403294539 411633142 910485787 778382446 782542239 411281222 440730525 536738441 886689438 998493032 999626877 878025789 940588700 900541731 939578740 614583320 793998363 866125587 941049052 11944100 871714007 475971562 962339574 966291694 968113860 533356560 970134824 892896682 979582345 657866668 830528883 280781722 982277035 891775585 941679674 249057908 457901827 154863869 427573171 814433094 904602119 673512897 985602425 104937178 993787508 989356987 997139247 979152828 998200288 426239184 444565134 647278250 777743641 161146535 166914410 892969092 955551800 430478249 715240247 729617243 758096800 430093380 899361993 795850358 964774706 289945493 547265061 491946512 620605429 60400911 720876812 445479600 849043503 373298273 400954938 88676597 237649926 222467848 952661480 262482004 923308352 582125528 949141895 508532502 680988461 671801801 763026859 61818101 254094802 613009981 664956839 622762188 898679668 680229408 946740590 246326130 554122350 413540818 821398921 746902104 822504661 243125304 881476981 938452808 983592489 930778795 972136032 431230414 715588040 251419781 355743009 232119491 504824279 521135451 881393050 679587735 886515573 978992750 985522552 499230031 566667604 838515885 915310041 182439672 955801260 663223096 799612855 545635856 822979464 4664429 168697985 709992232 951411829 271677232 697760853 578406228 799962140 58191490 809889235 599671496 610873174 229022009 615727677 132330488 846849241 966542104 993740344 990631230 997013233 909758947 994779163 692094990 808428652 187413065 823843200 249824265 990377768 784948656 814449591 721698048 778481789 828393260 994175540 826924873 966259801 970459930 997198569 20266496 813367200 486663076 627770512 331500090 368092283 496216897 950620688 554733250 989687433 96128970 437917267 964886244 998379866 163946689 537251483 372948657 477340521 694134775 851770919 945057672 961971783 392301102 612151822 345575024 893038092 401792825 833787058 412304293 613852609 88308328 388399113 821266721 870749951 600727982 701751938 791789316 861975965 568690820 763941881 674989494 893914273 896753268 934480242 492838252 610375886 405001938 585104790 580756888 991940391 917940158 991883858 102352882 965895956 434657953 732822125 44463489 924759991 499564657 861871382 563232883 587722649 964511641 980155766 133984713 223329856 115255632 586228495 492732407 824185153 996576198 996727172 999271592 999608512 423228249 531387021 446885978 520661473 906808148 990245798 37322644 78378631 622908565 728759765 561480014 803694128 194252154 681814820 702963089 773307238 334103698 394432144 550126278 997811003 942369927 962211855 276920428 732380966 36420066 709843561 723415460 889840093 730507178 900186268 881723046 927992261 943404288 998475781 968474916 973401810 640860110 788443268 193432791 345351113 426310805 900232623 72850183 721890081 234730466 665699698 653342306 760832570 574213630 586940423 872436132 884611367 528507288 804601976 824314001 829786679 35043263 298597311 309855021 631065945 117992235 488887977 22727920 579759187 101440872 253591939 247437790 594672935 799592321 812123771 648666810 840633941 518221538 856978596 850438996 868580346 344312900 386069522 379107171 726237339 227728502 515298185 497077061 889933624 469710587 522154730 846019126 938214081 818615806 858786342 187680524 537372052 718730199 967709184 416635815 499767786 996425784 997170557 687706164 963804514 468664129 851694701 258887764 698973343 287700033 314365580 125297713 786755197 346852841 842288469 963291128 996906952 275587610 525743982 794124381 824641007 784847368 825538808 281750662 305871842 629063058 752926590 74865000 596079231 191046113 489081995 991871895 999783664 438243564 807811523 139154494 538562302 329011085 504884873 459234575 581179724 664623228 851013695 319954153 774973003 86695435 128055682 166640315 659101030 869225500 875779624 17746477 695857233 408015900 950000755 553891098 854662515 381815541 962582292 728904934 771457919 251403152 517540999 271725818 288297260 525951441 944796274 342453384 625363998 297422636 821313351 406539393 865049077 204597123 947614950 232777502 249225960 741421882 770498755 515164614 864355842 89194289 460699406 448333956 935165327 225874604 607877362 797439546 972589019 623758512 924212662 238220300 839101708 505537116 820693075 252251602 437411746 415926978 767717555 25617520 277608678 560514503 782024734 61333613 460562290 278276827 712007309 827492826 893341009 313757775 837037801 730353541 754216568 562360252 957662794 600528896 895847719 624604692 913620679 40198893 567464421 260468687 947492459 409823083 542786585 246566620 282047981 619244145 665553096 829812005 965866051 516127540 848368612 854964626 909926961 321167462 920640365 378811884 842491314 867374949 932465913 994640947 997198520 623307055 636043829 932181989 944102290 425852294 731821205 605518609 762408837 264683910 731096409 928475658 961220195 808904176 941799130 169586167 855670272 823445939 839447329 341360034 610325212 578378863 664893802 785605528 863339145 565152230 875123097 261213804 442050382 687458187 895219892 807879345 930045010 63549896 111673479 222426093 312677015 75382779 556411916 266079370 587066564 937188404 937557082 550614659 627041763 804762368 973923290 826323705 935623972 514249140 577714867 311433192 689356786 795780314 894600010 439539886 837411299 591794417 747721794 299713614 563174336 739347700 879533719 184607188 360793279 670074716 707079257 854172915 961516122 593338893 999631939 114046492 715837276 932809045 983600672 541256436 588762841 366194117 956409754 365222228 802280614 798943670 878303340 307026423 775384178 916328710 981738319 119138152 259484733 326541861 831420243 858750085 966359189 965394274 965786915 633374228 678428791 202717856 863871203 226554986 655730766 520600256 582063134 355025747 398360357 144754675 447276898 23080826 731248078 399574335 572993356 229534572 250945129 426652817 761855146 218371990 656267204 717861431 857674315 96107437 139822712 739903099 810517640 130726719 505168234 239689710 309933163 285513329 975692371 587785661 943278295 961175206 986088062 760925574 902578331 55668392 83570766 763331860 810515931 257630377 787333794 355609431 945393971 504094379 911936412 220395943 420340433 816085217 878281816 318269966 877797373 505410660 712217225 534794106 671181399 988393849 993282613 446881225 702558107 366465965 759003676 400775864 689498974 849779229 859659836 223002514 950729748 22380700 756129435 238526024 613580858 190797971 357683564 643271955 747797688 123809967 604714869 845323107 914691914 767934180 778605675 170555500 727085643 447801607 947272229 23996372 227708521 641724391 748081937 563497010 993747606 22716475 918122342 226754958 695380517 874804457 997559185 883821856 909920870 926075222 956216756 925445974 943715063 317141174 458218532 913551506 969668974 15889966 775045047 299427775 867355793 987688446 991252754 738350837 883910407 199960478 528542966 16558786 950793860 45228689 329818172 288614377 899830528 405971217 958669985 327689587 905247071 424536696 838772244 461588998 789872181 59191888 210702294 644922345 897645560 110927834 330681718 537968011 553217679 636247409 661934369 977632478 978261946 898493899 926518339 201103272 237629006 853013979 875431449 566778597 896419565 87729345 460766001 728880319 748032850 980096904 994135067 877983588 943732155 501464704 647724382 365598823 438455285 828518909 867665749 752236678 968807486 386593252 416851740 749238897 780430439 602542544 631177181 850156586 949515172 766013857 842522195 298250941 572241893 30276282 736456573 63001273 255763554 506594623 901356307 565592418 943508931 952321500 968819026 2401141 218801489 689451183 781776484 421943452 953387992 485512832 617668779 865969541 907675203 72336624 478133476 61046219 367795686 262196361 659077306 323507989 745574459 765071078 840062987 852169664 907348996 268555833 911735537 938665660 966063714 156750457 571014223 580663586 956889476 813183855 904883316 213302716 874557321 515220820 989712351 647837526 858862602 765034707 986716103 678444093 859898936 402354086 748216623 911396069 941270296 378326822 930387898 382246767 631591505 167207474 806287767 44302245 586065871 413486857 883233613 602334029 905148828 384977545 453311010 45648729 514941696 730009381 985639558 527959290 785220122 740266329 824577995 157859638 449094674 12814897 526029539 906806465 931903655 137838894 926967933 844823426 968490374 973326804 992765194 212628592 253593880 965083540 999255711 664022179 899004660 188022514 969101446 572759333 740028053 166661197 554218611 349936899 987579514 880632787 889466506 175154673 774000388 815792275 932917738 449424840 769457026 610710839 675662576 34116067 576038196 638280879 742946983 853389434 998561022 861705031 954294369 994677296 997692150 112979540 390844123 936549062 998619595 848028550 908484002 168970711 453459773 920318383 978933709 95818704 866546839 535753016 677156935 687568654 696067276 461122194 683980768 41414841 658952477 974991046 985925588 268330434 992055491 996263344 996934533 274608747 585622771 980560905 998967913 969589245 985495014 485737035 884929365 781136184 871738133 196128117 378939558 169929392 418132456 281010615 450120300 416995864 874641559 398354755 412612129 728123591 743397567 979488525 996846207 978453201 996961841 797643921 915541453 117445191 992315962 131437245 923879401 739235414 931530774 285074168 321291730 668041553 833273570 793416429 934732942 951231572 964391311 682174042 923549095 280560240 673103763 838292655 846625701 367343205 819915468 670457802 672653890 691243079 835101392 996638209 999121310 630181913 965497544 482810796 492219083 324214910 765208844 279829838 798596988 617736170 716734411 30131818 479725101 672833936 815171673 298894262 565389327 932170779 962874340 48243404 670384822 59010060 615246747 789519123 950013052 533581412 647437806 120663281 407604594 599650813 633825089 916657272 975142820 337963607 895737587 958737884 971593461 589077675 628963423 102713717 505624961 263473666 585064176 488911479 586703302 18532474 43802946 238310596 900794465 648904388 957968275 139414488 874799901 203193220 899610323 655728502 997791106 10989574 269887310 994172253 998245582 889343398 989587462 900738545 959595703 715935522 861747893 186008877 944532407 956486266 974297234 279740793 327133927 404616455 763245492 489637688 883152013 350896036 403041550 893439604 913575133 823587615 965485574 51084891 925438268 241401718 671618710 224020739 394700271 767919563 947294272 893295129 973591701 641840211 988741883 60668178 76428836 212631835 521602991 112562162 444558033 459438187 935732127 726265326 958154580 910878138 946641900 775713235 979086441 567593514 575493636 326647657 492708566 416968276 467809274 265133430 449647061 236088157 264624708 580382837 899014891 952766495 993354893 249965420 333021609 653573861 874964071 579093215 773044569 421060178 480555498 104212838 855388815 718751547 968540478 273922686 991771501 533341059 668734407 303074199 890212543 14854212 214775855 768786743 909814400 330778043 871178796 553202125 970843122 579863540 793062684 667992875 669171781 166618266 802285708 142173852 901117920 771041429 910981281 754507240 891286198 973084440 983539644 535003249 756500595 861128298 975391349 915421480 959193281 886180296 905238174 264942888 358914490 558097476 563911141 946706666 947053344 849310231 863435391 940086677 981026664 582620796 862027716 764150643 896398649 489467751 597763419 909138491 973075166 465635461 804385201 196083288 840639537 647871524 768946182 631271717 854265854 799755996 868197508 390849877 666056028 648489749 758541361 161424309 486146333 163631889 488336375 607951210 655818850 203044273 210054040 237817814 547254341 413133324 902873618 944701015 958632299 981595392 999898943 279563194 713809760 840112867 986977564 667307043 728639980 536490215 586656866 204636403 549554660 773971975 876903804 574404429 851638145 353714177 806402659 658749339 881870892 283816825 369268340 513497122 525712399 643802567 786967217 172852178 793532933 587187694 800562438 642876677 853117404 230581166 434118648 790386432 970594012 921828446 998945393 927618774 995393935 698915952 906823662 918421737 975605781 622448691 982995251 868688600 968593348 600532209 763927742 291318260 291963259 518074337 629277738 264598567 741630599 926783544 931988056 997300807 997892790 393104683 587428993 138963409 545340089 827239058 866411230 781281955 830210205 802155759 957324567 1084768 29491082 570304444 918859914 243311348 459054688 400771714 429925584 111682927 749548136 932383148 992036524 797490489 884182134 649437771 999128327 489682160 737675527 473980000 999991745 979768848 996718814 652204796 992280842 372616288 519182043 849255395 988462681 986256672 989692991 804375446 840299551 585141362 604234812 291863428 340657060 221436322 600678228 679077712 864517594 360842312 765675660 70700233 206530184 132371959 250351531 219356251 893197401 168783665 451185071 633796770 678467476 168635837 834247903 974235555 992611815 494807583 510787849 541666379 680569091 808974286 825461065 218240770 228197528 765984623 956741554 108087164 286778890 526796939 741351733 149264698 185641041 396510798 810549076 111047623 234151933 662005239 755789448 800264729 910194653 39936975 41024711 197037167 313769288 400208889 606063116 473345197 981293527 398698294 880965731 518939923 931703072 251578993 659785880 794076605 813266897 444421973 536023092 681121970 776998791 507225995 526192588 995288909 997217732 187049153 738413973 165419427 606070460 549579037 669083639 653135952 813563310 808603822 868459691 53004825 411095509 452096603 567328440 143741267 710895998 291877354 424017224 842787908 854267196 428429856 599058631 291514337 750475284 802505983 923389556 303789652 872512838 798856219 848272161 970587318 984893442 144540143 692470085 827906244 927769926 822647476 950993400 906135080 957961640 6140739 361281863 847369562 902691940 233264302 544532219 765400791 826709276 675524250 884843884 638526342 867919637 863684300 879907004 761111930 908131123 931347573 979663443 260968321 770967914 32884823 81047642 902855476 959748783 238294838 489109554 27624881 447096083 165180179 693857047 706205582 770198246 260951871 676011066 438078449 439419350 626006652 970537178 234179395 954907405 310545988 537799331 852575344 931712667 383844933 723843183 577092162 878411631 458973430 817343765 564913837 814602014 551983157 698931376 146322482 613976740 855240818 904096401 128430924 409866384 107043641 205614757 763190466 841424065 450316269 653181132 992464360 996728697 226705297 324299162 298255152 349695180 172920606 822603648 136433109 566550188 640799724 698754956 991975178 993351873 987416736 992390020 3498009 46647025 289220469 653664134 184260734 710055719 239921752 305582995 604664479 982798044 470515337 680765476 866580915 985762580 878167128 919606497 328900279 471378343 626964772 794329633 863914494 917069129 95227761 591117435 302373344 499004745 387790864 624435656 588496775 627371731 791255469 821761285 13929783 459890459 898650276 974815921 351154654 822636186 435130745 981739420 201160605 908510868 878164435 980147214 414918375 925290762 910642511 964999062 64556881 958530475 649280249 699233860 782190320 883331029 191482257 808144928 659644426 944384774 11097523 505779209 461301741 981409112 563205319 790172396 725422401 931397522 169587998 440289455 414590901 836850375 737343929 853435298 694307199 703668453 990387172 992030818 651839372 797588773 417415283 977952983 777055785 954890288 55849943 219067653 32704047 852439056 39975264 628061104 391794209 927154683 303677703 883827892 794431183 927846954 936826100 995272297 329089972 842592898 616631318 651846605 14262018 741956906 205040720 903015466 356016612 903510998 865475677 985669685 451588256 996765488 240225422 265473907 551515672 856105338 451881518 689604460 286756699 926295279 452760700 987515195 982259166 995596696 574113869 621585865 37761237 401756355 685261275 791587671 496857240 596107387 612982483 624014044 170825953 323544458 618284323 888513762 739712370 892157174 588216432 949975610 112542910 624098684 366843713 575998922 269608906 514316552 279457924 558798633 967862774 968440113 370118208 614584409 301281115 837384406 15662158 691704238 290602528 897151601 465124229 800935511 365113141 914650005 743183760 821032657 503284533 756636485 177931585 187094410 740514134 759889253 374868184 617390609 629975647 854598352 868276582 899589726 657938096 819674713 428135969 518115247 266818362 913543180 996880402 999960057 274943573 680335391 297522877 483432295 740892059 984228259 276485723 872530589 675818287 689762406 881029138 940723910 555573374 975492181 52426524 178878482 719688313 821626375 129430309 969161493 635004807 882658955 325290021 758516619 755467239 981422401 751005880 768353142 203451831 675810978 320109859 621243689 568147273 910693213 870802598 941528035 208308113 467566868 715422145 989465018 666146048 749717193 285003504 902732062 927603400 943694027 208630217 641693178 247067696 724036866 573141577 719740637 298763195 495914766 631536247 635743231 505794096 644217397 287539837 378904109 565781461 567935921 288484501 929743295 359003274 544835496 78067833 698379706 822901940 870744451 129628406 961637450 771599896 847069601 77032424 842303150 398717080 426484372 449878865 546644607 172108121 203974587 313510034 692538367 512662122 935531682 518496759 684509787 530827691 789835313 218255312 800390790 573325443 916236027 397716307 875625418 433608190 757957742 924875581 969483563 307487584 879331713 367343911 987885022 275988217 447035643 627024426 813910052 347793385 719378434 569222180 989898344 284228872 719245140 260708870 612447639 214960457 399868122 283985 983749947 872769394 961168455 601933830 762535307 818026505 975759558 350500881 913568070 802184077 876580002 529458693 994638822 622134657 898043512 456903995 677365637 869125506 994719909 875114077 989472546 119905327 584615839 123322321 700914581 670532455 808640581 753791224 875124506 187792259 461982454 858518707 957815935 998928176 999022247 381672828 733292015 875819896 883270281 537216720 830399093 933846994 977357587 96213951 753686619 971288534 983458318 275091051 894051419 435607237 624369411 908488781 990834008 44271288 715691767 431531072 627827253 601484739 700752018 809291383 954271366 371624971 661121778 497515045 841274131 641567488 687718221 878097045 989321179 578736349 922615650 367943092 701208383 156545702 234668733 108565370 751274307 869934970 999894913 2247946 679053535 238114514 572620518 388953007 835223127 859490800 891631998 744570755 875394891 906772788 987563075 480976707 560558717 62207659 648350333 570744024 672845517 559143244 851037039 811946345 940306611 731114867 984543763 810626383 925903558 532054853 634291716 748066675 885392747 14750530 64654053 722554936 893326376 677645895 736249916 467447651 917575823 769164550 853829022 656527015 988654537 56269768 754912969 259543655 562631393 875133584 953860207 907311989 926404632 128036020 158591517 793712833 814112874 922993755 983251803 485288180 544032362 316271384 980733187 765035971 825174977 166539247 245979234 866407470 889667004 916064522 988727630 865418369 963255089 767831138 945237597 637976399 721459656 672442748 688585219 18324526 909266382 784063442 797637785 183492190 715220224 637038759 990645202 320066544 831314965 771042157 773144364 650159275 683001047 952517578 972827334 240329303 704881575 893092070 975369651 109693929 303026477 70538997 656005435 510018357 775785512 961384758 969565034 807255963 987364792 217736626 709864362 407032060 583718427 491627459 804454001 68079541 165243084 117497134 934262150 133969155 258614014 553027262 972869724 377908729 616422450 323809305 526186404 624550948 852880529 92975863 576831524 959518449 995680057 426913349 442828068 503714823 527460373 813847575 973525749 309172488 455305371 620630274 699520460 612047739 821353868 922096378 961590771 756640324 787111410 769833924 984447778 843225138 881473807 75819512 195021568 556503836 747193314 577221474 624550191 482860677 513455093 387469648 531605276 168109067 627034095 527615957 846319517 83189177 85482060 908563867 986713997 407463463 585190078 884774813 984850789 570999081 768962604 893883277 982610816 468197789 807582447 122084902 807232293 899095444 985323022 555777192 748346812 369549342 414443377 533089644 557893729 529530782 954980457 28927575 822227853 893949505 939113977 92114205 552914666 189461260 927348133 413345312 877145858 685202999 911239785 257000435 282136752 263102610 585034412 592962862 648374157 664875246 964044506 568851663 880410003 102077224 899417256 355297966 621135280 975872087 982528316 418113370 694538338 515747433 575920013 523020221 603483597 588007930 712640316 828627382 864106935 4107355 260294767 296176134 725336131 344635107 625795785 465070354 672938109 243923898 366913462 61504980 908880362 841744434 969671093 781206840 969001714 47679418 490468673 316963805 609121922 452966473 621996355 115909951 337196797 41524266 679876506 602357843 823793625 38220352 447455207 4182245 448385533 833750749 864933102 724735079 761459183 827977581 905626795 337920724 726283023 367705730 496813188 915739194 964418817 68197031 310500059 646018352 887693652 560105810 610558215 773230766 915252096 949918526 967999404 904459913 979523129 353802205 894948433 306597858 919027432 187193507 861134449 764761123 949799117 796440192 935585049 769453354 903264834 85430180 667836217 260523310 276891919 588720719 947054344 997271860 997556880 980863121 983270017 528368311 562804603 49032597 908023262 642684973 977549789 249963468 802383275 227058950 359544863 509415780 945705720 386713272 392690999 250179288 907152622 987344655 989444956 764290304 870168690 665261413 993733692 860986661 900746178 671615359 886008686 328290933 609480971 964067532 995402768 910596159 965671784 601729114 682515804 715238517 949751307 872312548 887665098 453200791 982973425 110181752 531406913 454441510 561155367 717299340 733288196 817423189 826119006 352856131 742922191 78622876 943547397 494319100 869164891 814669987 953690356 353281279 953921259 528563993 735594405 814278999 886098941 943534584 955663465 936226746 963501610 902883009 979514589 580037390 969587317 533259094 980185921 35149435 155241545 81576523 824265004 409670146 852062891 274123247 583501192 587167715 865853057 826126516 978320634 626755526 700733776 564682547 682591748 606952020 803519674 849854119 990785412 620738905 664840767 960153813 996209175 644242953 742001413 845013246 848117880 294214673 353140520 272952869 704158598 270543758 858114951 403413605 966152851 389283156 552754237 501712342 503160946 372859259 700706575 940119131 955823661 315473174 625989011 762895912 887796947 662613446 869932840 380912915 618745056 651304483 971168705 278005720 815339435 334879984 932526133 431940653 580567603 168047551 678932606 344457713 723709478 938403059 949647776 793196171 850400119 792450755 810150628 242273931 896639227 95230353 468942643 912749498 960375230 298248089 626388988 808596797 973126482 493247428 790652927 65884895 783203171 711928322 746651524 48736389 400156035 915692557 941290703 820898489 847683861 993761822 999096366 30507113 984770841 771867248 988867885 165814390 803930817 887019053 984248498 985861155 988044681 72149255 586853502 730107953 816673799 553107142 701835956 244453593 282163261 741055883 837084593 430934979 462531280 334156905 403045540 837763887 846039861 930873609 954769468 834647018 869369968 319439546 552585660 650325895 688736023 717557814 759719946 712316787 713498314 295281142 656611297 192941816 296329641 17379300 310246375 641426646 905458191 166761218 842394507 696442793 874138296 789178377 797459708 772273918 782330675 494527239 958831012 102677564 346911415 314950067 675124270 14674869 774589774 793895234 956953900 539410675 914325180 15430011 860392311 125974013 396028470 958567208 977681264 186476011 818217998 261809241 815250523 505051254 568855687 369720915 714986384 677485508 747007862 577187405 663604300 680162360 825439142 807207323 990311322 742031138 985516142 636651386 685674334 796981116 868696545 42084106 952389830 31920420 833224444 951860987 966693093 907154118 958638016 987571355 995348381 619583697 752337062 702861883 955244409 242656656 471998688 74358654 274021620 85388029 282050500 472650723 776894564 221785871 340758855 777723833 933373335 445550156 470382824 872537624 936965311 874515114 960292806 43384050 597072227 166266231 525621197 607562086 957689269 900861813 970893102 671444274 709472337 777755960 968694288 832927960 844432769 579435526 867772911 189406945 767696446 106657988 902606907 980367807 986916427 928124615 945484312 953083285 977280800 606185100 801929930 920501697 982294787 55534768 630410193 984861896 986909627 37797280 431725881 5596726 459738102 229100346 845165581 904504754 916040757 527902359 663654084 217109914 390235209 319202035 894857663 942866499 960350353 860638818 910258194 280995755 713352385 267429158 677270562 915992665 930495100 788121862 828066793 118136918 153330840 24855973 82322380 960955512 962114429 945951667 947985858 317396097 332895126 37409896 76675743 305965359 847501799 518381893 691680031 504731195 761895055 266106069 550976352 458698460 490246844 459705874 818044002 733018682 891772597 563395212 723405772 930890980 981296959 536144270 800863721 382799794 808193540 952943018 970117343 928984199 969604973 794982736 987394336 574733273 649183863 4392815 569082331 5823662 339912758 451520980 491271182 156296073 959064486 375782502 536704149 202800632 240398222 829925878 848332113 880435723 886721676 210212748 532874445 306712502 655772891 21758035 934094974 361800417 714467291 331777447 694613465 252155555 437437093 120037061 880686680 423579479 541073870 375880847 781760016 797051710 850584356 40226103 708393519 333614087 810463032 138671524 711304527 673252680 796688273 352292996 807209679 421030465 836084696 519218785 910107942 707382077 738208701 441768914 932848820 248903940 743178638 216371275 243559145 519177305 927601190 851517449 994462771 749380524 829359833 730853358 952317368 351478740 778121268 890002850 971548136 270153396 499580339 121920397 952949345 581901901 775214566 242274065 464088767 55101428 655059286 839863962 843796316 226082360 975159944 959230846 987619453 698486341 787352963 256383017 505895644 530162738 925403966 736777143 782423784 151234347 584979223 758268726 989371513 22389741 283029859 18122678 429430885 235975141 343690987 167234508 582777304 217204103 506096349 410115935 526512638 516086608 639220268 203294390 233967169 825811040 908373498 548509480 692012880 600258067 721094365 741009603 848483447 356264177 617765921 24328854 781369729 637953036 907205404 566166265 837870381 85484615 542454014 765147556 797143080 70832314 829651401 745495809 767178076 286494183 829651356 45763489 781516665 900165693 920980016 434245631 534075337 178341002 700126201 301239928 710360609 407264258 943180182 827122631 906971652 220447209 610333875 526852099 715157355 156039236 807029674 349672939 668166060 567697203 734077196 181039721 424052246 551554976 742560213 785825003 845824084 402048150 481690085 604802094 864893062 481192928 910519567 370918883 459572733 725750791 821245370 370817024 636739725 569226909 821434063 648221019 892233858 837409718 842005654 381616710 849681062 392016005 669362694 578963041 872971591 822668005 977363089 680307058 744457075 582168482 618742973 299185035 408351368 628062968 927381441 165841706 909060080 815089382 851490430 306338320 637751617 394224359 462671713 689882833 890217882 272965391 373575175 235647178 729744967 159684214 822324090 985268482 993479775 759928069 934678664 104823651 471031402 715040250 843893202 343424901 854172228 332329305 916298811 952828551 955060789 617931502 644591018 371082427 537205256 939126508 986701118 949985466 959156791 402816588 495019480 956288570 958345363 439038006 803810685 299245400 730899306 823104732 884471008 722954632 832654625 341552145 729334364 739537273 955764103 32047318 974596280 276639523 861924148 377883242 389146949 445853277 681810654 112858064 595437823 19836986 970058223 228669086 923189028 345349057 836851750 953972743 970518692 26713073 115261037 591056660 695891319 419901656 676948176 811469240 917790041 50300849 448842181 864182531 907304042 983166763 990968713 876324204 908099919 962155655 967727672 203004497 541862875 714690565 779844917 948832764 974367562 965215533 982239921 190489988 472395495 440252565 524264138 914258793 969438527 296191876 693406439 572365755 829645080 815053227 892157981 405405826 451798270 286626255 491649115 92564958 332782107 980217335 989222010 982823466 986561007 169331029 706284582 138625502 552428321 714087227 836983468 936750411 939894980 376276033 859696274 798692546 916882340 957809794 998222886 611534346 932774730 43523385 171089361 305456958 409415787 455045276 908124487 622216846 678204820 632862748 911101824 166535693 754638658 671521859 911668220 714030817 945678214 228299652 604624109 164020957 244572021 646320706 834065491 149370094 440096556 636756534 725949092 956213274 991678694 870597145 884654317 954029661 969769155 134892530 224148977 574850645 793476029 217935580 505691463 529584061 892258993 761528398 923864743 629617276 952773495 709302437 916306255 876680103 978102249 583268081 969428865 152793153 746460508 404110616 412979241 163681988 287940566 862781569 993231474 294478329 594110969 958294126 962299574 946156576 968773955 708550613 894581245 186080482 441603172 286998426 701055305 968781363 983512415 755529310 929502039 382589578 683815227 511437628 728488619 101639369 769209000 994601476 999512178 291963524 352277982 287785613 296795770 601453918 984559112 484724554 506564175 807192591 839318209 505570406 506223309 964926801 967422705 326022724 508110022 496508025 903632588 809085480 934186574 702323694 722927782 415291530 528320779 17213286 279575059 53637697 633826625 779689724 980232658 643114746 899077828 856704132 908156759 99687097 135625261 928305824 942755342 154648708 408946596 979161958 985747607 978151467 992980361 509203049 682541290 820530888 980971079 863883641 981675738 749585049 991223763 749024358 763513651 712995936 812224003 626599133 891529014 418301028 621003987 817302928 918991788 684288282 890676560 92489241 333108005 244665243 869128566 392399479 793985731 525672861 945980493 280570757 773802807 970405591 981220969 778585606 905892538 711084286 795274393 236533470 788624469 536596391 879747745 843580345 962602651 165256495 417678613 422845235 952647812 640924103 759247477 909947258 936681598 150152208 513757186 150176211 579528510 949221684 954568501 93996338 135644716 940961338 966890677 634924995 998197424 786677805 890598786 486720709 880635061 836272727 996498363 35179445 232498489 27794222 734067483 75992127 670238940 265338810 470561983 922180637 963140712 5182724 982822073 289369043 877968704 103902323 364529465 728397195 730541790 161319413 576286227 580063260 868099168 387257737 952429891 877668000 919848839 899347340 935588502 348991639 517630704 665563086 875181257 421304755 881447897 101180218 577162488 649324922 701195434 26356988 67967932 832954533 911485236 824874004 891138600 887425477 976022230 162445806 902393062 436489013 859904042 944367897 950374489 442799999 857254666 565976940 589635574 231905224 893912531 659327094 779990223 497700585 821823286 400571299 986840967 309285000 582435708 376127126 753001488 655053336 966168339 292224588 474771788 593895624 656261904 413058161 436454669 523286962 775801930 388209210 880599536 708749082 849686537 583955751 992825167 244176742 881417187 569791684 970255383 700114119 794277942 943887370 944289924 483089102 906002067 735644261 955082986 681065575 953931107 663238547 887746068 520714504 774697147 412008946 509662831 337485900 782732017 746330546 909058006 960390205 964922804 514452574 552841971 516900155 965946229 717463664 745804608 475649261 803698738 696566350 903600507 85342301 732190757 586691308 677788904 985260754 987846594 883939882 908054440 295266715 844171107 630974638 743335338 427236592 589826297 884919981 933851775 988146781 998644813 231964541 943193550 19826991 572493247 817176532 966887713 234152444 907057847 329776726 353897975 7371599 581673647 704071220 760455473 839573188 891608367 222756993 249786291 216008017 649636570 799592814 851123255 924544054 978977666 645396642 854881925 706208507 766916813 53115016 389774036 251425549 479425119 648986875 899087375 200122635 909213891 569953471 636931900 517692234 944681038 801483746 837361563 766659011 926541325 337972446 627609363 44338195 977863006 754120403 987712834 857785013 952283064 32447665 154872073 143704739 787424772 155539264 822140027 224355530 917995968 691052565 851317304 512215696 752545520 460597854 874525556 352950822 621389980 264882639 330607406 259751783 948019601 694431356 796822022 402746431 589081074 738021759 777295705 191736792 546847765 179588705 568824821 839552688 876515529 316092292 462723144 65739015 214116409 882199798 937840936 781427954 965384619 525272416 576474179 728768274 948866597 185384563 390252656 191306413 672909538 397368030 511980592 356966939 839224788 644531513 758191303 677698868 797711717 808035047 866370696 700988972 864939044 358543303 741291460 883753701 935545927 823756689 968460047 333367117 518646191 672003901 739827522 188029487 797842478 147464532 302043562 925497123 983525939 199080269 484695684 112301403 923357181 576170384 950944333 32456179 331812029 417092884 751131799 768092784 804687721 270999649 944632399 349281300 601829522 936909743 980081817 629408388 667194339 386094354 998232194 408982113 486525453 401704868 487253065 777687142 868268371 398386065 680210907 629934592 936845471 6198130 877302701 45868848 705459975 10794655 686469414 260242972 464578356 541819510 812146427 473789877 478885291 208494136 581442314 148278051 357832988 77329415 568625981 259755030 552540655 956307528 978016734 980050626 989571551 828362767 847466249 547874249 833670573 867560353 986626269 505031801 649572585 142137308 536533679 679520842 883975638 527923020 570868559 47303001 681199170 933095085 960318539 34495183 712368386 177415287 333219981 906484342 943162452 552474614 721089924 694186722 774279457 343512793 599317427 353581595 758081647 915978344 983347062 859132731 985752421 943525721 995392976 475376408 562514098 807671730 905104817 68885441 350051608 951725453 998609853 780508303 794962615 980402781 981184814 636945668 972169925 259031818 610579388 906080007 969204779 605533521 835127378 521594566 942327470 969130205 983848477 536006272 645926788 436551071 948207971 232255692 710862456 662200900 692360014 594476201 830968839 610120070 773769160 706189900 766933807 371510021 621247297 476497746 731868366 863647350 901518772 667577033 776604754 77341640 500089203 304758511 560890876 899857695 934463358 752607192 826486796 646232829 893038880 251888992 557375218 366273816 621542414 680609989 691765930 708425349 860398590 282452207 558086803 24555744 391348102 252693385 314279648 227878396 633656612 965013429 998425471 264236835 665072049 217597500 820381209 484174787 556925060 927735658 965983795 8209856 711060959 913926469 961166229 207667853 598177593 595136152 615616916 953091676 984753864 963187651 992432998 660125207 875389348 247656849 694603559 757138130 978012722 419507121 445531687 793370657 851017525 666900311 909703790 204760165 565710237 69951681 634676892 28230427 726412830 676817005 909125699 153062754 349818894 392604682 545847951 229229401 904636845 128384534 169083335 521757469 548488040 95851207 403746593 710653018 911175829 628123185 935535745 898533967 925562887 682914391 858971314 810276671 912339447 430782792 664860257 741631901 994447632 130751466 932089722 60645952 394720166 506175083 618408143 778177810 893729490 453194116 633226796 310250180 371196653 84316973 125244592 252696890 989172657 604702561 974329535 837926111 977594766 556857258 875268522 298988634 519892073 831134477 924415398 53421189 482574015 230682880 979438829 991173431 994685133 195575089 331618059 916509932 994504262 741745026 937960225 666860971 968502192 672872635 946946430 667713826 842822417 413056151 704844940 494262922 536972822 223925912 873114520 41498265 568662787 418786781 812157962 219276792 579059223 327962211 920879653 546687100 547577557 69659426 960187442 103538552 552172733 831162744 982278322 271302033 435704582 661314266 699334563 181235804 210895931 118940626 286927597 234184328 668937953 835320291 884151381 683499896 833336766 841435979 915573735 999216506 999721037 973172483 984502271 356531609 904680612 534445148 560987547 166731841 213628129 873393866 930456475 944768152 975637452 656418866 974575996 357663896 374621897 551273660 631044302 365599890 389349956 636840018 780727668 127965789 130280587 541556051 542500222 13798618 909288201 199177898 430105070 895488519 958902103 703630227 773376799 749262516 753464336 918855333 919395016 57282930 828437102 902952847 940949825 348889900 937198760 811279606 993463523 827410085 939446629 588999002 922051302 656437693 919426911 893125258 980269627 734932181 769629579 740622241 919051325 431649486 950352137 442766659 804059378 742554397 900777501 360618411 558847007 965068931 997080894 272542800 443959050 276314918 545457477 630909555 879434452 921111721 925264500 587403536 700296140 167065140 940695809 150077168 189340724 312386950 360034065 813831927 956271741 597878135 919720680 209227248 289373501 790248091 802411817 977148183 988381747 469782003 577477138 367894171 914941472 846367143 999788156 604116822 877255879 235820576 933828917 972599701 991620040 764248376 894664167 415487773 795402833 680611411 919664594 738257575 992389711 857003965 907908126 920712928 940151910 544877001 923248769 387358527 572953539 887871035 972524596 13779914 948425300 608986542 915843817 706028252 942007660 258800597 848238098 483109708 855711175 646974605 863995796 311987444 774064188 848874283 904441501 829524312 932258223 996866353 999763937 358764199 780125833 632533961 983249831 616010903 945624836 218630537 237642551 390220463 754680081 204274662 244343006 521759432 751126331 251409541 341148118 562743448 608365942 217609727 950476407 637967609 671334526 317622318 505455009 321828358 549298448 499187899 557265842 475064189 993935373 569401323 896618198 207597810 814699660 812602425 852733664 856857756 880575022 395649713 702229273 192727988 644292770 15062667 342730958 749616414 807475453 687287710 947877326 533356125 759277272 683292683 779783336 800036175 992969521 637442352 986886773 840887232 901040597 70809044 162446748 203460512 498167793 988639201 993846103 401095617 788743433 606986056 915864077 108342871 349279846 106898441 435622570 406960274 787360073 990768636 995230073 249971542 926205589 631972847 948449034 959006580 983738005 375232721 634587203 394587968 789172697 212335538 609294943 873884407 971132515 285847396 865838625 275221606 442205046 739551122 756700188 584344879 587273824 403542547 440805902 637418416 752189387 972201273 989595933 302697909 957407261 971941476 980524193 936400290 982098923 38305818 142852485 676454497 815360830 324238282 888658074 435238131 799289933 18335472 852190978 833806977 920418148 744136528 790610938 616483968 700597559 329988075 513950180 85701786 503179971 940623082 940628142 17222983 953046222 348006611 565789567 782863760 853988177 326931628 367600709 791492187 941089358 775466329 927685206 360010167 682827520 653424387 919951884 31564025 728341449 762090105 882215215 799747494 995478379 177615231 541173054 911012095 940680543 94879136 636408860 642171052 652653026 530483057 983175280 313018937 863475014 3838747 452261077 653957773 727280985 726338984 997910917 851568861 918883552 467245708 819753524 556883518 825599720 364499943 393456614 726700327 907695055 847695041 892216214 754868783 820419773 491058215 699706144 266911046 513506311 360820065 959751219 722119059 925883048 508606648 932712225 614623553 629490210 203611105 981943499 607004600 988306563 721318708 735631884 496500496 967342293 648815336 998345236 833787493 935523201 144234781 200036340 734195137 855848966 671188970 813019246 995244783 996765417 292819799 851587302 184695801 829211452 449302377 526198276 756150421 945464705 447839328 950451233 258444686 538967597 65478865 426115114 455963466 814343272 940611182 974917376 516658939 909366707 332492701 634409147 255384456 676032818 341765497 941792288 334476729 419684913 543392113 681008204 773673026 791978201 338391601 453472191 820249395 916878729 314941811 460461602 12710977 652695230 855287896 868829980 407851679 576507098 334841958 451974744 777809239 950066960 452100058 935761749 931257636 982752704 782550010 935226716 109850512 116931309 525148715 660911970 848676594 949448346 604727359 943246029 563641346 770443210 451671369 670481409 885519389 943852293 584696948 814435672 79166679 191045952 881201810 937190106 874041193 880818381 232043846 604738755 494776417 682680739 983984812 999422957 11814826 249704896 586205589 705906036 911264326 981979248 476218677 980913899 560508460 870498648 935012243 990178442 822484522 929376809 755360319 882991525 681937181 700795876 517133498 885024695 152484228 288241282 243692129 603055715 397373449 814568248 87343886 358134417 112004846 388625595 575917667 928136716 794016401 956447561 603879999 657554739 438875894 692275813 709969968 970609086 929661062 997586303 973653394 998348939 992971817 999786308 540742106 615289943 819518139 893199343 422940416 508756655 182611116 320989648 332968165 911577707 996535405 997634944 13772030 716501903 250684535 580649424 123040968 650358161 978242754 979952259 509243106 740019924 884824476 912805842 927495676 954050283 797802039 997249762 61239957 838605534 746337092 812510827 271816946 703293062 148248495 504029356 498958801 643023196 427019126 436609925 411150879 619396384 979908316 996400444 871133730 952125259 892163464 984327279 550168707 689774935 180189275 311822754 640389371 817461499 462767814 680143459 938963033 967784073 566098674 828919853 820625112 906235045 782367927 859013633 629333460 874594681 980196133 986762625 521039532 814935836 592011057 736588184 608017301 646066374 168272641 750395675 387153654 818526113 370848176 528210376 262167248 874255321 821181590 891836514 789878710 946174317 909923697 925566265 939133283 978843719 691014286 723990663 50839945 307663485 193601254 856776300 947004591 947083191 947226738 967494683 818845029 956981864 257952946 776106298 335281360 700852159 715857152 871998207 124811871 938458285 168484155 853942126 797114231 868890584 108769726 613988886 886976407 942494537 693169322 727529970 455384995 491265160 182904433 780244642 134511203 607756848 382942456 763571938 480815182 913870760 5586159 598225220 432504275 642524766 740998033 846021720 508445359 750898157 4879843 901113243 256636551 818799270 265797862 967908759 681079193 972478061 972845720 988445777 931615580 950890424 373306764 577794033 420309529 787344722 94958201 470017991 551694903 987868400 662880932 959030232 406091271 574414540 473864232 702997127 236561020 281785704 414855589 939687871 224595391 840569241 962048359 985543940 479370477 717316967 965660232 981230115 439995359 502888098 109744414 572326120 310882939 889864815 378383929 485601482 264757506 436499007 884482398 990133366 744853424 894740546 198593210 499168155 426138194 451028600 490199375 915839153 571717492 949689793 503083361 959809733 272777963 904026978 217618688 361982466 982903943 984398438 2578124 739343177 771936123 894121165 531009155 880769359 794312001 859917816 616584734 906070299 129662325 164246853 891144143 960695243 842411203 929302551 67308178 431475883 815133964 905330238 460912306 904230803 459537500 981310683 522931193 755068910 788115707 791355216 235315867 406440409 771285398 925995275 531906441 765195857 306787394 910663313 521236739 713244514 692152314 906099735 778564000 959794223 20741333 28596074 757186854 824509261 555028790 621430018 530895717 978326624 264081068 772960811 715598470 906307232 961820975 993568481 677751469 954327757 729044042 991077330 164937781 616015992 791229500 930199159 898855124 939700182 147002017 340674441 95097106 126437257 158962013 934927960 276246123 545501096 191090642 569786961 818750168 890406382 484419204 551608329 814496504 899697650 971157739 977522430 980348219 996924635 158250751 210795960 700414328 708737606 449356152 704345356 661208745 682019219 531661478 788433309 706786664 846208657 508749759 530823322 393772874 648674164 910055134 994022878 212007553 473375252 455618867 946190085 920631840 969631474 95999941 506890362 983306510 991698205 166458110 404839916 577447671 952827520 293678895 370611453 856512368 991305666 718346356 917532127 866672604 952273455 152908516 263914465 570598964 851279593 322744707 515845125 879583252 893025421 217133657 234556364 985869827 987243601 966218197 976414813 367296487 953735210 127555277 239745004 744175480 983644410 519734661 793102939 696778926 791066731 939019746 957301728 17139462 57731629 437956971 980481699 133011451 614939308 171882070 491549957 317757686 941435394 306959430 450854651 851072600 880313852 419490864 971663568 653527182 901683949 464141187 825710101 425748248 820104878 487724047 662443190 582255702 954162075 181398110 203061989 964411807 990726035 438744612 850695726 284744459 981904570 508149687 808742627 853872970 977324982 77184084 848484502 929683656 982030622 688858573 828270556 268031872 801214658 612666419 760023640 232418946 546770727 327427614 745489113 66048273 927815327 843145413 860299508 839962667 977257293 969281284 993568155 887255846 965128354 350634550 666820921 1272839 653764815 47044853 599911292 733690332 748723483 214986328 715780025 686925921 885375355 651993421 654340873 367495864 918897649 8995681 858571817 452088090 737534597 69720822 992379208 135417089 763999138 257200900 498302275 382572301 638216948 67540084 741690160 722718879 777537671 892647109 919794025 499994777 869867557 244162090 358468953 493477425 933201707 914229546 929073923 220034615 220794661 106212038 441627947 800919230 913631629 684741462 795751203 398559503 619966957 742911324 823210624 325483777 898458145 312270369 968550335 416947124 937809530 447250230 881083226 63707242 801495355 351470380 465614058 699658424 997099218 224739132 476926783 101701931 297590562 748182364 950359288 525171965 950109533 593422320 763817229 379841460 855212217 518306067 761451557 431701009 923502165 403392584 699476076 218754498 649070300 432658317 629521287 610263624 743683188 554683044 635016714 585024804 934412189 13217357 36101778 311757460 946406098 441097238 630826695 931567982 972198519 901039879 927079699 73773690 111182464 238086496 542381424 429525359 669005595 622037142 888529430 896960918 933762515 596385443 848434996 129759790 226528066 661945202 773237270 153245237 860328606 988928110 997200583 309089268 780798437 735504788 948100579 923133103 944196723 507635107 884882734 66994401 449142024 776056702 825618054 457682750 476971406 156261474 851933881 247146276 532957121 367910496 884359372 751881281 928493234 234010831 874030935 617190598 914357685 931501240 963873679 713808649 800177365 736898814 884439672 483885827 511158764 317436098 738396603 957851460 972397544 188968357 969113884 59809680 770249136 529532247 906292404 276573698 679228635 129498573 453195588 186991345 446877247 238043821 746724218 183536921 907673549 705864721 816961164 398315273 940550803 342770888 616276433 267656858 779906531 419768145 856745081 260993420 397440182 723259822 786038481 381332393 743357146 301519895 557601348 358760572 438289127 407109209 451318282 805333101 994905931 457326826 760386211 985906261 998843802 109744737 534633801 638374491 820966492 610991403 849347657 944469143 972573547 959687366 996726267 299064122 745783315 409470686 612417239 858953937 954071295 821430328 826048451 822727119 927375119 869277469 913424038 943027057 975404717 872076367 971251494 664242388 920338559 238875550 474361841 235368853 435112331 93667575 427628048 469660860 896424054 722937733 933943410 953662871 975581099 23193614 915321164 36955405 63319333 51891621 316260307 94218428 611661456 117780691 861748273 686948167 984199132 349524783 659109278 517686150 796611515 325638614 358124927 436686708 444901750 971117998 993089595 295021722 932054685 557626172 679128122 49944406 478976605 645100406 970293673 140058123 865451219 420471439 894148843 623283808 666154421 364108931 691160260 519949588 796072489 918518644 946343933 969163878 990842895 997961734 998366280 791387881 822585910 649988545 834713699 831118987 941916820 789778686 795711324 478080855 580240758 356383617 977614995 824164244 902694657 730436678 775074537 65656126 800032705 632189115 662354704 41761754 331895335 297915111 469561147 78413752 522961553 706382431 734491477 790683888 818185218 164899026 947295611 219584906 766532143 487095166 771124023 691688443 754597440 548342489 750023657 158351568 507418068 827110149 919295564 311675818 433165898 379453397 832505916 762600516 801072299 843349093 870380223 650749440 981922115 598397656 626299130 252999982 362282749 514762105 717537779 674714339 713112464 92960925 617619809 516237289 913916946 286808401 355784700 316961770 870346739 199568776 465532700 766029379 930553410 981876583 992161173 406990565 802741471 673930547 723518931 991437946 999328577 717816203 810978960 199105190 568767487 600098915 670733787 556458955 803374908 156899919 351322908 926399118 970092788 821601592 888391928 428357814 470963500 35725244 678628566 159467149 171825157 534369143 811179787 862653108 985633135 530733588 900357752 883246379 995355300 756006436 924571399 376920669 950951806 882580875 998389158 558070391 699723606 404008078 716182701 480569191 707302361 185128237 964721650 726551396 875935353 14695668 194658205 683830914 844212846 696427053 813027547 620165713 811059619 834845865 954410396 910194584 911222869 946881392 964260442 128888510 439325660 176383690 247492814 148207398 985197539 193329135 446500792 981548082 983124137 290730671 835469584 150072582 462220829 813248289 922762411 93869324 799473532 860909225 939372799 424029388 722573965 690946567 773699999 887317169 948878515 193539977 782705864 745506470 961903353 959303919 976129451 443048018 807953837 858959188 926650934 520853187 845939811 481056709 814586411 175508020 198378625 892325763 933654108 453743299 849755714 663204717 764184023 499713449 642678071 286652143 851743758 902341332 984168405 267405164 867095218 221125292 943129178 665433875 721200734 228734137 523951064 127149274 219409823 976085860 994942608 647638468 734226338 717213748 857970311 636287287 977269026 132556476 348418979 85655574 355008652 240167953 282750949 463863469 943695722 543954741 854099826 809019950 903506350 219854457 944036665 9988144 221569894 197525971 327090407 207272275 969820240 28045922 852578603 516485568 989054544 732087405 739652937 715593328 850271307 467736446 556047100 441306183 667819161 461429681 924859696 953178945 961136474 906651107 950042062 487031336 955170791 115048140 291693126 301086864 756824840 18574478 514147067 518075548 628486202 368306914 916725114 122599541 164032397 574080914 807019895 460365762 916441664 739293005 864110527 645448624 818789033 556647605 833141275 270431052 895381403 399834583 606911063 264493237 630201040 244334502 601715027 155231110 286964009 617542552 963200094 660956386 752167700 538464269 625008124 754924961 964737515 864130494 935274999 804241723 868259739 31678686 44875663 590668303 801653931 508162381 752962342 722494732 881827279 928903746 942380291 878677597 915063746 448399308 967863136 785282418 826706817 50092284 984172870 564244960 656419255 786416115 898833671 580759551 679395764 506922340 640996280 414207684 753785045 213582240 604698904 898899481 978570981 248476453 746409299 445387254 461206814 981495420 984870522 961093326 972318467 782672851 802684185 764220644 861081043 488112410 740004663 23565323 52646700 509627522 535743105 860882222 888575294 547645256 657901489 709259798 715789949 60138788 910335725 12785815 125796295 814815844 967136433 495566560 522495989 118717863 501503890 728678747 792455939 425889582 485508582 207659821 874668230 749910631 903163872 35097415 747855814 300157944 460886424 562525002 897598893 444389686 687881422 788888981 860320214 256500523 609790657 2272075 508298074 260636963 532050235 989840035 999874322 213997900 615635042 142858738 540544143 896630997 961224750 377246256 414008477 744464284 905676105 819558879 921867653 851409173 951342692 57836651 218156765 112183855 961679090 915528237 975270026 475040460 923493357 951367993 960588928 207216909 210146995 789795973 945756069 445800012 645301140 16012959 417451717 242771841 952587554 502062444 595946587 242428425 635122630 198547557 836445668 773631898 785588508 236916597 488851527 2369849 431064061 175493811 977161387 967467877 969231486 260596871 905529384 691816229 847428420 202001653 434603757 32622793 65672135 87153143 862054226 448516169 800713871 812698790 819032503 92539437 720907336 955014084 960206654 526880142 939619566 858253233 922822231 90626755 362010925 712395562 792591113 942937114 993838841 777600459 872822436 825488919 940918982 940394083 998034499 482619814 803244750 377032821 663768945 168399443 792778353 86367217 465930259 320313389 768849958 492996710 858574405 848688344 959460973 53198191 599909605 803154414 816491248 34643057 81475318 748983288 934366180 244184887 700169399 940997198 946353854 858006964 899637585 506934044 528140881 222513713 585611756 268294014 458934378 222066845 390774306 910845507 987345631 740470340 958564234 445481595 706147929 717933946 793286530 401913558 447469401 394640577 620830751 509747066 732897347 962292383 995847460 599035150 775247892 686863746 904273428 778782001 954685057 257603885 300447817 19448022 287943182 619294666 850519274 265977703 927483655 80119418 975519379 18439947 899912434 363884446 681046917 393828258 826004587 436174227 552204146 30741964 468152562 958051987 983882100 899746904 972341453 310754728 734902648 352349570 879233033 161107580 646699679 212193453 825246684 234797017 612662834 915504449 991495905 182106734 819047996 594600398 663664761 300918944 987622298 402272134 586538578 987558403 997195265 43601259 287288307 358487851 560347098 545341838 572958075 151868334 776175293 90721365 361541580 955792388 968667679 648976241 935525355 11029098 466914996 165820868 577287679 535334873 792077442 250144695 968234031 936883327 967647295 40086807 855759377 958829624 988927336 948165647 961420165 10242464 693210496 197838942 347687132 583934770 599412168 520264693 529716556 94940647 913113611 559846252 969273431 294504963 357735565 386711146 979130430 388621116 966834185 3771954 28320666 188339059 809280412 36606728 51365360 932902014 978476097 399196183 823827430 977087750 991802686 707656497 962390706 492883295 533540344 219459827 403838867 307549528 319905746 676847082 980356764 438285723 682755636 111219360 698486366 59296473 129422387 421617309 990457410 873294953 980572476 218534345 533152478 245855220 635950609 854222956 919825505 519432992 907102624 787670757 872285640 21434498 672262779 376686955 683129238 432861392 990394028 261176769 956610999 121247236 713410085 725284249 933654952 420202243 762671063 1762583 695664883 827624026 895810453 268884118 939407911 746897351 974317915 718198124 839895113 525423683 937433238 41385252 97072159 626066980 700117532 143088934 532762006 234525947 646994987 164153105 196517437 280655804 673517930 16343084 213777977 293501998 648249083 883648271 985637835 455105169 717706324 589081489 663926611 586533773 867674697 825504652 974377007 200326433 476204972 518617325 605309692 248942480 410185438 537082064 980967165 426135007 659236930 223274167 543193436 20924255 433672275 80077012 150046829 897593282 927696569 579115349 740244706 12436321 605887736 170344965 712606783 493132865 571796801 378587764 383941173 779011305 823584680 652045442 723203911 682372141 696279787 56357819 506702091 378274249 849808179 819336332 955043794 667806833 885670319 641796103 937620087 583172683 713013931 371681761 976412929 757102984 771274155 10716548 470937798 266668749 422557511 275073890 941200581 889344777 934385052 538998262 995104263 297629738 968942896 844455552 890706509 831588888 910309255 669194646 882532904 304826308 687526950 824360493 939163581 836765726 937803225 796058500 939540709 635738584 988918544 765993564 865136070 798332019 931611140 114751791 906741897 42690845 526673844 648580824 819310486 52750075 491928661 845450842 869242367 841084328 882499405 427736731 887258354 84781237 280376218 470617650 838248569 294012270 446985860 728217667 733780596 39710989 498456355 937076487 938778412 710325024 905245654 946612501 999268257 437140152 900966311 768234885 962729850 371774639 728969771 514615382 918829679 449935996 985550986 36457095 100855865 753866602 825864307 730393678 987429762 880317474 987788993 705526121 818525211 34220256 401625536 854603135 857106260 798169103 926913911 933336580 943674011 709215383 803648011 398091465 876860163 532180307 612921332 124754203 482576842 813123949 902633586 464408010 727479283 215998134 723137780 927228566 976997288 998527356 999623686 632715213 782421186 425419776 595059888 845610278 900912683 723228745 740699131 1747143 750631370 864188373 964128894 751653590 951790376 30778111 418138094 573366115 694350324 58036903 213018723 350085911 907687363 312379604 842393712 972986095 990952635 454010666 828455632 620730249 726530066 557578611 875649109 913064829 951322919 521301549 841083350 821153743 890300869 935276385 974968259 677189114 743088944 554725492 894858728 966368341 995059218 778229295 811561438 69245707 530898884 765870229 867862182 691041494 767565519 4212893 830906733 571903851 581699717 89525483 259816283 711063685 725770118 720986014 892208891 730350593 980143778 252483838 619557692 351903654 844481828 739525653 927495994 746436159 768981822 632287835 859743023 780029199 803822870 989169787 989339995 76789004 580573649 386080427 426731586 392482303 811922950 541266423 609868515 247360554 427418001 553633876 610596102 543276883 681431979 695299143 905523345 259948177 961783748 528850408 563561110 588306085 606956012 263452106 578866805 41796674 546252798 85092782 911196034 377134760 485411611 841057011 862500216 343314897 569840853 32530496 164321785 573702121 784742256 791969758 977566432 408712894 422011963 279192864 878976668 789964949 978880245 219237317 874223357 562804304 580794004 675295185 880689589 224805023 285933508 280553188 880833648 675400534 695731245 145263888 515633249 600042380 911957770 572051383 688919187 649360622 938798166 706572103 926279912 767795593 839764068 350336232 945989827 146200169 918599847 282054237 497356373 362040302 548480498 516551814 602120993 243822780 794124900 470688533 738258428 400223065 664015732 349368766 395007987 668679677 899465253 391818775 474854832 747714480 832865450 865606023 908885214 929797222 961902990 943050982 954640541 443017325 755263751 761125342 873723959 21061045 103604240 422402111 649400863 377437741 636119900 338455050 488949626 902657427 979884954 139523947 512768134 188204083 845581550 742953990 805790602 842454452 990163864 862812860 998331241 979787422 981001562 968972961 978699271 913866076 945703838 206456626 450756326 692627293 858369305 784370757 896298117 919837931 969817779 758487846 835924529 935995956 943540592 460435787 920922494 129416890 608988174 473019959 805207659 614254375 659603109 626650481 737163053 267408954 853565836 220026539 800626143 445954692 807388425 424725408 800722094 652089529 834259472 83000168 187318239 874065689 989185009 889682836 954768776 656399606 664210342 413945232 812378403 778894487 848473543 373317661 497477895 577979453 947248308 690669957 950671203 543557927 985664018 537650180 733320303 49464414 295655386 960289110 984073195 718087581 834578963 943765068 959087888 401421882 625054940 227376554 902212870 176066450 751014842 672009536 937944606 368034615 791549571 989965458 998951160 401831476 649014053 812652145 940785640 958139126 965531125 562021677 981523866 446585022 624340799 910377688 961686779 540675436 676556329 952873766 975062086 769161482 769914890 121350731 320915039 839522015 984138695 825695868 907725465 670050311 739970741 313030749 963999295 52454249 554746231 411179467 540247547 821896907 895279170 118820530 952203019 487024926 908574540 959880669 990563690 922717848 982781961 195425671 614180329 456015853 629849310 562899044 688610409 388666981 577237571 286358339 477863658 967333297 973564215 476867062 515449296 419333449 768844743 614666512 704912080 711117302 977066811 362356150 509181417 504584865 858508592 661111194 836937046 456511687 725903020 871698993 992151904 538231638 996376389 21389548 247239564 87439067 630920705 455721149 594588637 158974516 928180173 338854803 383413335 415518390 644937651 328578772 573045657 511824955 616528060 94857946 528627683 291911514 480295429 941500492 975023253 112864988 591972231 821459072 986322863 428489043 931686994 499537403 566264076 279981667 766377402 978541830 991533820 792522287 996210406 783015914 903804660 363135110 442130875 739825854 984669700 39912135 527039204 912986185 920659831 632057893 730809101 150450005 273579328 526292254 668259864 146935419 341818449 300320263 339226921 739390713 796609238 39580231 160765151 540891299 606850403 194217071 707000560 77088961 127397796 874028181 949122907 410157130 462362514 531307353 784235010 391692973 592792902 582207485 681050444 677908576 910260741 87449586 155180858 23068106 728660149 418596613 887064497 348329139 956372043 151825923 959574335 520362546 794332562 850615175 853405740 312093258 350407878 780730263 930821537 284491855 607299776 290219004 721083585 798170247 986862281 865603635 873290711 24107755 199261284 734843210 777741219 857499393 892667337 521688434 837656811 986034228 996728162 859809561 944400012 969641887 973602680 284477558 711846896 364270087 410875116 356173719 635653269 55013675 101331829 341638515 381084007 495558474 661620568 51748555 952078581 377131027 750808387 683051123 731335970 293512938 596365834 876322976 990358789 534215347 913054793 33584114 683717733 645308415 878901470 147841123 845298787 826956484 985896031 742012672 903906555 262090214 541580094 210917049 557231293 252774761 410485338 296462018 686327257 828463923 977575836 73949143 454216232 317768204 991054137 755097552 908448643 413828886 936468301 64425388 758301086 387419415 622544481 180205186 774459373 73584084 369089443 470005491 729183357 970980811 971314771 423900041 533886489 743705908 910847773 790519649 819743653 506836465 908146826 89938605 463882366 429357504 853663459 481560756 780121698 751149525 863659855 194059682 504122891 809732029 845027695 78280758 252074900 365955878 673461550 402371476 773525044 526244717 827205915 931174392 944415556 592834237 891142651 302380054 846081292 453325161 598353994 476517320 534133312 771743247 816298958 961183994 995204222 66957320 438745558 543464670 651550204 688580974 984410017 185527078 870017101 742788818 912253149 878360891 929065779 76589296 711184235 67798406 366336762 100062523 421631099 567257970 795749976 682495856 755966304 324965653 455748205 503266280 737668959 966714208 974641797 942541440 969952001 956191094 981179915 569471088 963260052 948494540 948837340 689670123 870345548 477125983 674021058 382630568 934090578 922332721 996816547 921987892 955460922 901934098 973560818 462723543 891980768 615542449 798051168 165938667 726777582 973890803 976092628 472714246 688418135 958594886 973488982 645464971 967024152 565116240 713639081 828197145 908178022 451995634 488923912 22893116 560041449 258088705 687288675 266214964 905902701 241697532 985296545 134888668 608245948 937089147 975352746 327350287 634673967 4774450 914200190 183692711 250086803 802289298 892300836 959551645 997081192 508714335 830096898 410258667 715337752 279460542 576616608 791622899 843262453 549787424 770397682 671384943 751964900 466022706 856290532 161228376 197093067 992521865 997456692 861740613 937797611 147776850 876468179 968979548 999068046 218262603 575269477 268191022 741801754 101633038 953948647 645181043 812505910 787196507 975567965 91439582 167747855 750652333 798622908 901399323 958014046 992948089 994131862 340733452 724970087 326166103 793570859 289569521 502332615 635005868 700184679 845745540 954364917 377305841 601361030 888787957 935229479 461857745 781172403 98405874 931375978 50686890 455857326 244839796 880752887 127075427 232782542 425085035 517280054 779500810 864828113 556142283 603217089 860402109 904356480 357311743 638374893 89176780 541453355 218721310 484477280 246391881 668506814 787987074 842911228 5795395 98264127 214640128 944197284 468890632 649060293 909614377 959891595 815745595 976798330 112066571 355337546 551442635 792563391 137277054 869086187 721895773 982579311 201091225 463722781 973527471 980479827 479654654 991965710 472889768 842748098 954273307 974933749 746303149 941439448 89071163 132200135 590231176 711879324 575472980 941708030 418818090 881754181 737040675 891539642 24218369 397379930 170357284 178714087 517252208 749562806 866160376 930032288 567684505 802195507 742509669 771968728 5802259 905101202 739092030 756327321 176239793 312028425 51544512 130872661 129003196 254307247 461364316 920705076 239291346 590465356 458673341 723666501 160893299 394879159 450857571 681435732 480545009 936206203 16207385 505452411 40095901 527395980 975440807 992594797 565053210 844837800 580753346 923368226 124389738 714083317 598662039 629934576 873362855 911167240 81218207 578602929 579104080 677729389 754914121 816210353 901594139 981078250 701704483 787069530 795778358 843687441 393722961 964120912 106874822 899647650 77186019 529612746 557615043 943307352 631029553 854241602 542609434 578889005 436687263 687833083 408256530 802751316 283879191 461153798 30298058 441907248 430461110 773343832 477506094 695629397 44734077 86500964 354531538 731532492 260071048 565239094 649157753 705550082 908622769 992517065 411638336 752773381 901829479 903770594 69432106 855698643 449040295 600569726 269871654 800375478 481654843 702747448 951952599 993955558 256607649 917204451 215935242 340279694 224251601 701503518 439531452 904684873 433116703 721652770 386007408 528856323 737297896 812300065 487728411 573392169 514099020 919235972 172551548 257717590 918937743 965302270 357113081 820664918 78121528 790224858 520054861 831681504 902548848 976082468 827120581 997399848 378177855 583073968 534035982 883938426 302416266 330359788 426507332 639016436 12428898 657132467 377430898 598696130 562955418 971850499 291764324 682029592 510393030 966229906 986240457 997608545 642796231 959210426 929348913 983032973 7228367 458955459 265406149 713887271 924862101 989751689 559518136 918905291 613312872 875519635 787995386 903062634 137489285 892701203 931682307 942720841 667495506 838291609 9495370 256104637 715672065 850034202 803692011 828705071 970853166 975030398 597259203 975694433 644417392 757394244 181773542 241811828 993686977 995451920 275932932 406202561 449366288 705820975 577541003 854420338 629873622 949758296 994518822 995235667 353354289 738516969 134658922 748565233 283803323 642037121 513636236 666647858 343080048 829436885 756949752 849787540 282049288 739799096 382180715 859562130 396698711 677408556 2972338 526209536 646485189 897418881 406346584 850083917 70889509 101228104 98689443 793486414 488814102 794214009 557999246 583528091 673335403 795586553 123561493 678519506 588604695 665543479 906111227 921142010 810867644 815895510 864047548 934007908 121761675 349244618 372001328 718864034 594362361 674355724 728140225 798741586 432457919 844745549 897861878 898994978 4221393 628639526 45504249 183522206 315774503 631673907 335347670 679908260 287491245 804835535 388882971 431310923 837709052 853003541 296946475 921527649 476623659 913015502 113744914 364796535 392269972 778875847 438405216 530762774 23160872 607672829 379777173 955845505 220619803 616557828 630986396 967210483 857413945 881033000 729750600 972642540 651367000 986007362 240673026 715890600 499234169 805101565 138323370 209551507 162123065 265190608 647175210 922427124 453458255 703089661 743787012 873860247 308866953 555465238 957206708 967333687 686871185 964437736 575369903 729498366 596280087 919060962 403113213 540112682 159758351 634332207 813225580 955765991 722273403 959434486 135514456 812047249 770511554 866573977 874352770 995185866 956640620 987626184 880774156 965416520 308445391 551677220 808658985 953521170 913747929 957983847 858399400 985787795 967394985 987293138 19118659 452365473 81696781 407753601 569543283 656408861 618659648 929261218 683535056 782364916 252662739 408479182 979579178 992602112 723614675 961721596 969886347 978315870 675930109 700785197 209797655 595791005 403181212 570085057 239856545 899804280 718164397 782196701 926686909 985903625 976553172 983284049 790031435 955970598 271825672 926825528 20267619 229959009 803930379 893405628 304470429 949637063 14104393 340964494 157330377 808702335 264666365 580608906 749219895 809773607 22415874 714139387 248672357 512922304 745033158 973578839 696584472 974800611 118844387 394704251 2691904 673480672 82175629 177993284 905537012 958606440 799100895 817165225 607748653 872690022 485358545 908373166 71493335 765840125 716928933 859406528 496055425 939098083 842605993 961328630 434220094 744433892 779762276 956678665 765802451 991152742 659438347 698379461 731469722 838590248 623867329 714063964 649621289 911437405 842192102 981130713 983362921 998567871 576559261 789313362 38615367 206300815 647601975 675539998 845483770 934285781 667042800 937896209 936457004 999737818 17475302 994768096 78158819 140117672 338002052 725675004 662871500 893282304 431876579 785749337 420782760 713976724 350116583 646222807 335048826 532212114 3896820 558552319 6521651 260502131 325611264 500386683 785706360 788700397 75918467 122631604 370489441 570655969 199604250 441442317 769051817 792012064 548826242 886657194 830549261 875229195 21355587 437071751 356292207 725690593 236210068 296679238 195910514 264594875 942381751 988584492 573067620 581821406 119297492 234577180 469691687 853596535 664395865 770050910 618787779 782723202 489428909 559547239 738408506 978642258 233478539 332686720 590569994 930528025 817804726 914810010 526533963 952387258 157358500 761517302 421815957 930529111 598776610 999858633 290486548 970124989 441788849 658765965 723899392 869849641 611237248 782921370 81722616 789564938 555290427 788968605 638929883 766785361 297798893 894801801 317378572 502576734 954816333 996291707 584936356 649784067 871688468 902603589 37299828 518464051 945948364 972503708 427829012 801568830 867798406 925814416 324953800 528576938 390506469 981736195 298466355 353440701 212478200 895868475 724873734 833176504 713010518 893836472 815578411 896370327 802534515 939083267 947016590 986892075 280868461 315739048 840825431 884210558 907631834 910470856 821030817 928678022 750713379 923985561 998617482 998944683 885869919 940209802 372824422 767113263 870358012 958633958 384599253 548461108 170929753 340081280 30064082 231542504 659706064 721555026 681618118 808655784 877093278 937063400 485343425 565584351 99959925 633327478 560203944 775292528 825120101 847004398 122419107 692162147 491716039 726310931 207343094 748578400 184295998 638195433 228380630 602451818 855561954 995195824 412793104 564339922 897429013 991841127 773608538 865798190 102848182 305663604 681913083 999616858 206484557 704304774 679749020 833257985 727198756 763944038 29080988 248626795 946367079 961964372 866491865 961269981 29585703 746144675 464516027 917335903 495924057 571611504 270417343 286513167 803670834 851784131 769644102 795094510 670114917 733961802 95432530 451110810 177809853 706258410 447117212 689195615 156706891 285880687 927306145 948277443 378048751 443376450 12633823 675572240 381846720 839857075 880695002 931990667 176639687 991800285 824049570 857882211 410003740 949650487 712170749 909715130 658909211 954185590 208092411 782022070 564459287 977736897 222150959 357634259 675192916 876231616 644838734 726691738 135684328 672690246 935211602 961745877 813616081 930332786 605341492 769246520 92908156 356764281 563593178 942097028 766655879 816159404 141955808 868458211 259467769 976872478 818588712 870227694 846669870 870089002 508286240 630664534 631221532 685999575 404860651 720295903 268742187 775537194 778114228 836718388 619828328 764351105 842148745 936739683 344178556 810639264 206625291 970296948 204119185 651665076 216184591 629911895 853041670 972670285 241305954 700713747 340947247 406591559 229797057 956949559 958129563 964284840 740957523 902732906 796206451 939456399 78523198 127036373 970716242 987552007 108095198 558161566 49538565 919879040 331431673 914512350 362118518 613447410 419041555 891806430 682340226 957803031 393718512 427101248 777846297 887787553 364063597 707774279 312023458 470525824 613727001 649654851 293163559 609334061 61133180 964064563 481724711 655361051 206916313 470127345 137554743 630156742 408980897 989663999 819375497 828761158 60193078 350361507 740862845 899925237 526641503 955499458 989989475 990839599 947914270 989499516 501416187 712986748 55658075 963654666 345840252 806581708 138292826 248635244 360903511 625048754 433294630 580346554 699749395 928333522 944024541 972313332 130959130 753901763 370302876 538562726 292290377 850784348 702080912 784298823 232118365 857598025 439632472 461993032 847542801 959846885 918242463 947118334 962060582 980377032 632628857 696555407 905585319 917393633 361609748 463584904 999236308 999679090 436645690 711356247 214149984 292074174 680349023 930587797 800197609 974800547 40805204 102711818 108012710 421491103 552927356 608112549 800103677 878380160 759516979 773323101 866179229 981578216 158204761 386352231 598546131 612237544 258126956 530386282 173294709 390936251 344782089 875712550 110393687 735525555 48244878 176790751 25772763 873523496 902427720 947778743 916934463 992069859 993762400 996981527 523621517 953800928 660274940 850878066 709301188 880561192 280877294 949514629 40580696 165002146 599629118 816443685 538974091 574677122 94016405 856626840 444421926 537786862 626727217 706107650 136939969 440213023 107517656 330059379 764781948 899508438 322054822 417069300 664898275 748980465 69965464 289870826 719662588 943565750 940159174 941519073 90422071 645055411 784095481 876280854 703012780 747922735 964128570 973925733 871444047 885332911 823142820 915328460 34038200 465698013 14569784 834728879 214718984 542292792 283624541 752295956 887061448 984944343 505303014 640414605 757669736 896311497 196129685 871353400 476504134 707471837 500631049 821362100 129654588 831437817 717375920 809550980 609096506 658855134 161505958 718453149 566661264 974126446 344732110 499057844 736953515 817292634 428592014 854804502 976716953 998086773 665787158 803292810 414335647 598341841 273427071 572040725 974456381 990402914 494356550 920974146 799041920 810854310 102064305 751034496 423758765 525892855 483820548 728503481 932839501 935494893 280936699 579891786 303690011 762057431 557690634 807215904 495062959 613181134 26100127 575536918 357964206 530614759 205699396 547544738 810441234 864300327 250858719 688694930 852927095 865748535 915466573 986945553 970670591 991191654 401704212 582595948 555812087 661357092 561552495 589550605 923548080 938313602 549203374 883489481 193545674 262465903 372493920 712329970 651397254 929160973 579423554 980759156 584393561 689246464 159992497 394767957 660650300 865905882 858300839 996504395 388880689 811468549 143907858 622406046 53549294 339868198 772023808 988950334 921404368 966019328 677256214 685019743 280733797 699363718 313948785 892590888 516805268 680973869 545697196 828939601 294270899 632656066 905018236 946439702 686392514 702649318 326711687 668134909 420492864 714595700 404532815 617635607 548387866 669142143 174438168 711939432 439863915 781691306 860251949 939158330 27498436 481078427 34760414 970857762 199444641 834023278 490697086 784867241 85556850 793982862 314690421 727007140 703758191 869494249 626004653 797996785 432933178 679387678 65684086 228840131 331838049 739707054 607663770 831070019 873295718 918196581 377832797 616780895 391985834 989099833 712526750 970625429 545783300 737170300 302481381 703632891 268256367 362541664 786467090 817383983 221436977 771445251 218200048 380058126 562566646 577386247 492458994 531614122 331904567 867203784 601768666 653357829 337384841 460040709 708807534 985272112 983193528 996105507 227544524 580219493 211254943 836801674 351441144 609956964 510094899 657468971 250936871 874029682 880397582 960833739 328802838 987693627 121122131 521184060 326163000 891066551 4346671 518193836 555993745 738172950 550452316 690695231 877882174 988613293 429212883 749932373 739434572 939601751 837205068 914815515 608962468 798717556 96598309 862609385 471530030 777222026 877728955 932853530 427649734 962642643 255548045 812153983 449729618 658762410 616068919 893251829 384129887 934597517 774133169 866863820 192873457 466008864 713834769 974192621 667895404 734257884 534485402 679302606 932148311 965738372 806922321 815687083 281393421 595488371 446296848 977916747 978861591 997615184 637390932 875897417 774485680 932508206 908999430 944046013 344505360 393692927 457355636 920090144 877411840 895855405 167675770 271847411 300314767 593994796 669432196 839852013 788826889 851410290 806110218 842545551 497618291 600355656 965292144 982931278 181679206 997415993 15100903 232764885 7904100 606685831 662674493 960189318 637749559 724810123 340989174 858677862 25546852 371108464 713049311 726085706 209207883 848195344 394836113 751411918 455240645 880321013 575442534 932809397 124186207 361817096 534098442 776894723 948443956 984352910 969239136 993712168 245455388 257284859 786000013 903677914 533536634 816810050 368202904 572876417 168800205 822667008 222365849 954278028 864814150 997857987 663243778 994061394 888441063 995229678 444843476 885563167 437957157 945361979 729173536 912922452 857065450 893603876 982756172 987614513 612237 155268671 515940176 763223073 777897772 786956310 216854693 291307229 961987958 983921241 681074057 998324663 220639559 287373165 23108793 87410719 425081078 715242408 962437390 988017004 361622065 774773865 594606977 973705196 271450734 775812838 616121525 707959072 985559966 997255411 351202648 771724976 920370373 961797167 835081640 952188895 347003214 422848991 878353106 992069715 124814397 768041683 257831006 576342730 420060856 770273138 865638754 882666621 647613150 780376329 649664058 769597173 729923055 741032556 458035971 728729531 717443865 769879550 51932547 723523890 475590659 731188251 312162371 474634661 892669269 907252007 350780673 984856533 68159721 806399315 247183009 433206750 26622314 360577426 893109345 939219034 299284685 303833591 268310994 671421164 58559413 307685148 337181640 551295872 88266867 387049796 244824341 625758069 509836854 695867083 26041598 920173582 138529095 187048373 294223647 764042592 867740965 977231624 58845216 798764155 952240549 986452275 877424466 983159058 630859089 636697839 559779156 784479610 474159055 645444088 563246546 581021843 514332643 687275239 431141972 761159806 39980618 514729123 680082474 980007880 2646582 588198712 15434100 565822300 166792937 609397067 198678328 444364795 470951311 634679421 33013391 133163077 895277369 948700268 511623671 748706391 77561757 473336535 289017909 360181938 666103983 724388509 545765404 630455358 220499326 644035815 698435882 991271282 425376195 473286676 457530105 682630310 189031703 512299833 269059669 600698373 752919092 902263066 172646642 789448433 710954612 965001000 189453043 634234264 257058332 452392962 979694406 993841414 113909095 942529555 420744066 856648182 359869754 537080507 594318562 594918994 467093427 491139975 311853549 796204731 489261684 643145881 831265189 940217630 267807784 388199343 801169044 946533496 123960208 719138876 674748725 907254618 591936341 964112632 769492263 867857933 809196937 847300439 284063854 872490535 275990199 295027287 12077217 811789396 710561278 934918831 630271286 852895469 979506316 985059123 641472396 662040830 162592402 361012182 437951987 656760134 451046332 810882692 383211936 865045392 115701823 509086594 211356136 379435427 297099607 492377922 538613936 965881370 270776728 546564137 169109657 553924928 318079892 389602788 958659849 995148480 416858720 838992491 284714716 678186819 966242201 997957285 322503475 949138284 646859580 906817729 786671562 978203024 254924601 686687593 899381137 924978180 744822148 926068692 567569783 999187181 322415364 606106324 95626595 656632147 729409395 776578936 479497215 683394548 119775562 759625710 795280799 985216970 580323298 839046823 982666819 982915322 19970813 634332896 487254693 898796255 432552183 650034067 96496 469780121 264584128 377247614 322695735 637769191 897414942 983445785 109301158 588908977 431788732 782998518 999129074 999145906 451054555 824998173 272118304 484582488 932913907 996257523 583573566 825073552 237600653 499606574 971406942 986109116 407677795 511005612 522202563 699885778 62217272 418810012 366347170 379559337 254442868 339394288 243499206 953721952 792289021 903881652 285946677 703144314 84759451 801147022 158886575 867108899 749527137 905262441 870252461 882324858 627824520 844220737 700902262 724286411 17329848 912307976 42164202 487628188 473715432 879640244 413640790 419363821 272371739 398709165 80493664 642051129 604382301 616400447 138177063 388015425 375636576 491957237 713689020 718592589 27753961 854783107 515741260 710474563 108908399 499441895 352735687 443400945 125399865 424515622 399528067 654565153 287971751 704226163 510614632 717337501 219491746 852134127 53126703 353442153 174551718 757698372 279715202 709360229 491918799 619556940 94090978 700683376 748600988 919775171 377583979 771064631 698485367 713708639 796636829 806495967 612027614 912259057 761606190 800270925 920271801 938452501 733236077 811803801 565758757 759761754 708563403 982711500 779190444 796379948 865893402 887538335 500486708 574263158 943772327 993650552 639212101 799011206 104756129 587205543 264647220 288739608 66458812 285505143 760080290 903984115 911195511 950812818 17766301 52173218 444348538 526879994 476999261 717273392 387444689 929214777 674642826 818018856 676169063 863425376 2746233 844724998 812521511 905935931 574780116 583049661 870467533 959004478 370861911 705573988 222875548 316894988 728399452 801205018 437283336 792912218 658177012 984182021 934773027 974702542 739973788 897116529 262612454 456096887 158098055 763663898 136322433 195848238 857830023 907785534 386891021 464431158 385508775 631924603 875868541 914995705 741685521 934118598 684012278 763785731 896447150 957997131 286225727 915816516 115200484 599326093 739433137 778490247 933979859 943246760 457526118 675326983 68702828 622061057 841815817 960208447 345706301 401482575 990975636 994952997 955939671 998963284 846944788 877885890 118814228 157169712 230466247 767761945 2051763 868901189 789530713 848481850 622977402 946263706 86030339 684732866 586300392 830163731 585722512 911306851 472504651 979746434 478269631 998861036 571227485 967361270 918568607 922817503 753800711 969811686 852700034 854736913 826776928 902076831 286853085 472787162 795245147 926040388 796409449 998624723 928499870 942893928 518240968 687579879 924889897 989315296 172724126 514459620 494408234 698521063 933554477 940661173 113025985 607484492 478341644 884164554 940899019 998168274 279483137 768229881 461498233 620089577 135415942 193467257 562879854 829059231 993691220 998446954 235794486 663558023 791855958 818671295 360798279 817271310 706346163 724113343 247409944 848993031 651202927 948156435 988342381 990302493 142100962 374398138 562835985 634593920 638582922 662231504 761821048 811806722 273789911 814322146 834725612 936232068 25779636 119886142 428511789 565582343 138451938 279052147 670247263 897901006 630075603 791819876 66739797 623787104 206721338 907099503 759280921 899386455 824086612 855385500 885729828 906562435 91514153 648690513 331869819 413874512 985286798 995884374 662712786 883330913 708408841 764713145 42740371 214657694 982379962 991366538 834486911 834586921 465434802 649625426 380637910 585565581 343865096 820489537 316141642 622871207 446869016 885208757 138991177 522900049 240603489 971466225 221595672 931342954 886612761 964084048 575175825 922327100 664701515 920617922 31214770 648090226 809691474 972043633 124749191 692713104 103241312 792473510 937341539 949161981 700798547 975183035 374034965 759295098 147239582 941065040 827909621 962921814 948103003 958736751 196685343 243595368 138261859 664451010 896727793 952010387 574228043 679801496 910748713 918962973 507467595 520995613 491740014 735554752 501862704 625210885 160769236 704929151 148497917 591058247 117496568 417321928 898432547 969065222 704605935 972481422 637163516 998355273 393372525 563464477 12801247 646052304 138452730 916072316 871044692 949097283 742732985 782579957 604928309 776701271 981897819 984585979 547911145 913794396 784074784 932767808 12797868 120898955 845666793 981849707 854088233 976898081 408522846 988704509 380412944 892021786 54081371 860317532 231963654 609126670 650096671 655351175 526300618 924958803 806119867 873082242 424719202 871642351 658354776 946262541 202787182 926198504 125058945 865141014 95084866 937101284 431947446 471713355 770777597 996151351 226030123 745748875 767849494 797134452 888039620 975132273 394373602 422178567 911017736 979061624 407486744 500576852 287683604 956041885 559748696 781684554 451404224 783633198 753991337 833354159 653455904 796958449 177291883 625386062 675971616 997291184 208700120 798115375 126577857 798208438 421701500 461093752 805503062 898176965 293724828 422424022 754752992 822219258 525591337 634098992 322735182 513104416 464116189 732118268 943083687 949397009 572633378 985666678 160902637 422728292 787969112 880124430 249371039 381914016 775311047 837763087 620736539 680307055 155421413 706474952 190242917 410144660 554395718 896590307 362242047 868813095 291745743 815421548 959463650 994127007 603927886 940228978 721570657 729102112 333143930 406724783 239530474 344936862 243594138 515209245 428207835 538867012 75567145 648669416 14094320 693358171 962072498 968358889 54317935 742633063 81554023 146072076 658987153 772791619 931240937 946730005 46117902 313807097 139459332 993107855 203477433 592651577 727491908 852143380 190974584 468226632 822685711 973003381 892407465 964414663 769059256 967222601 253098286 504494608 453975949 914986040 408276687 496586972 476544703 699777282 650329615 802391053 275190664 662666440 683340660 696574647 742991782 863428646 657877722 671992598 727819579 888742653 771840244 785235797 820149510 940758695 734188556 801071839 913067371 991216855 213965089 842391939 557238884 755456093 695617517 888299240 836603302 934724928 494843226 679017649 529895957 622697107 754840107 905884833 229113101 809419046 349296707 960857230 110678161 630683056 508328833 558875519 332727463 765865752 266481879 742065611 357663081 850508521 649121384 775263094 516815310 875248033 672970953 751952144 245077784 325466855 260791774 646049323 798542930 920956570 45614580 146629337 743226164 777226347 598438768 656487641 150387123 283963881 686085744 885431442 869535944 979025205 464267526 910785777 63552168 711811398 341171494 613559529 132147429 472896383 777998600 834381739 725587299 795445922 325466958 819270534 442319087 587652350 630589619 686844337 597861913 745734447 95539134 119166517 332059046 604093491 922209515 951969763 563126148 765148601 90529018 989884454 105996156 957799545 629827916 726874492 475314107 571431592 287557333 984064786 925478135 978605331 362787905 793334841 389315617 828168537 9811819 878908684 667894755 822590125 822653572 952909979 718051716 802842599 108136918 944081979 838644310 932698421 705496826 996554642 497570652 708308441 440181760 494909597 635660449 817661674 302265665 593844533 406632124 632066857 510360874 759844567 357295694 919381085 27981759 351913892 245241355 318292850 53950429 280759430 315715885 668932643 166651098 635659533 801611834 922608786 510422451 638089703 808719299 982483475 482663789 620453739 515868274 635380037 114384064 671237009 434650226 760863681 814860619 866090541 951743181 967393157 257034161 871433294 256911877 791944738 310274947 537025673 515269988 848343831 661438393 924120893 600695532 735830292 741920945 818761747 18855903 832523651 929458632 992084266 370394327 440193665 419986002 744092686 226897695 645154782 525838469 848249769 957542538 991163172 643178770 780372892 166098137 790356803 479128536 868082346 950208112 967937111 930771042 941747579 333879571 753075391 160075128 330479552 264211102 931017924 561088952 986667583 3995595 56360948 151034511 973975720 35407386 310938956 926325566 961683198 875405127 977391692 427158398 837455682 931739123 986831257 119723735 349679963 106676521 145329981 448736540 504899646 365414633 514667903 28150719 426313500 759027425 772541425 959700680 979819311 316363973 324192405 551308406 691682025 340036671 839153167 845997291 939045582 955148838 982499136 489719110 830323503 965045947 965425253 859759177 860941463 42265549 332507387 721271804 831581558 749012958 802493183 945173629 953616958 916478088 990049060 833223294 892348861 987802914 991518288 276193974 276446633 690772878 736308266 775025639 916716799 973966991 980147765 189573282 935205557 770206628 909244981 678566693 781431747 723229967 771668695 825494646 864418143 954345795 977302117 917281185 941151030 80679857 943399762 995231796 997446693 11329581 36516288 813172972 912308455 548001350 755220752 631190386 789929927 256578209 891942560 426136890 611422278 354757749 926517881 530534701 557542844 913319336 961549312 25152748 633751285 635491246 872030653 5407434 440372277 247429665 880136070 602577702 639803624 104048664 699654405 16033285 207829179 483853002 785501387 165919692 747953993 788043480 798696050 853818796 893494858 254369942 942412837 428123623 960863699 187187822 365060937 766518220 828134736 716286193 860280564 5137982 775028534 981944350 996681963 461881471 972658327 777783483 900387276 661435021 792022357 117766310 498599886 605967367 920073136 666842063 786442876 667547353 818846692 107788095 185688990 430805362 643153605 997948903 999198557 161126867 659062358 819878606 872314286 845183080 963198293 307529047 519191150 842817437 933827946 85095208 599688131 233860280 803851028 358650675 515723208 751440594 850453402 355853533 499551064 168626326 482821894 226778945 245729664 246543982 506895854 588805358 974739814 377054996 752722128 308480508 588286329 954713433 984929347 414618849 714913888 439607845 602689874 711706290 739555412 748277080 911745052 17027380 625962559 556363058 592164187 687924997 867405805 475424194 562251864 357492029 358861524 840144120 888579092 128960787 826724111 566477053 854760000 687518781 715292781 62194225 459590774 575650745 630427949 295135249 296975839 591930350 654884173 935359471 950978665 500455153 909634491 94404462 377346514 247085434 557739149 771372436 967128744 584285219 586808298 50754585 811553232 473207959 990398644 748385377 987457536 883248721 907966311 603780403 610680003 424003617 839512425 233754887 361772315 595175534 913493342 87613339 685377904 762976640 803412159 536360748 663431015 669964873 979355830 770166822 796416928 240510860 863728130 841188850 897065319 942573482 999989530 725695711 843573180 974982941 983817753 519691161 564777996 114585125 911934744 359039217 440414960 819188752 866256320 554970559 872571720 801076578 974762602 986656489 997581043 165361342 964293646 561679142 955872901 787172285 791445230 972899789 998358087 248890498 297483103 937205487 965659129 513909281 520260281 997072964 997358734 264820331 511606988 638704967 860624512 20204486 417696151 278225846 301320488 760756228 786878713 466976183 683238236 773726136 977679181 458319291 998716996 228242522 561405043 443446166 586668315 35685014 961402430 247511427 962149817 105941194 128525468 125799087 593984833 386739481 631992495 761564820 958094807 939678913 991165891 450498448 462668669 150963964 615820153 521865283 597406095 148830913 190419561 51417835 997440755 588467416 695334325 913933243 953483246 736122916 869223774 620135704 670830117 233983248 841367257 766066062 847792370 909417338 945285662 191163682 594485578 178257144 350761772 293141038 990131551 774291630 898736473 151054682 636372071 996971750 998640421 327574787 588931112 845240395 860335116 116436211 278139028 830025547 919332411 142638064 173737031 418107265 651269602 219688847 596992184 697215744 789350680 398985562 635943607 41428333 509599285 713394381 864446606 950527884 998707938 499118239 548857908 887782510 957189551 40736284 45669474 661529446 848115174 797344843 964741537 39638591 224069253 653945925 977747683 515548031 523203448 483950855 533599117 822115689 985986584 745180833 959188342 831357926 984075988 901229062 941678324 956987656 979929667 941254612 993609216 903165969 908214461 63031190 168760802 240377439 246804563 374151702 609845489 83687564 134022096 407579312 421680414 189968069 256962188 624947223 936712585 668177858 863703554 916546111 929523547 606058582 759267460 430428210 974606232 745452393 766716161 69116728 556891685 925019280 937716553 728331060 873490424 301633236 880221304 510632068 542982413 412667777 979830867 259777013 500509897 479436060 987049970 330020209 483298394 508465340 616326884 226198196 330145762 808206208 876034070 216657606 975446430 871892909 992226412 939790792 977414468 654547796 893715173 699576870 799741525 668161051 793509271 995530044 998643292 386587861 897836680 165655962 811464788 13384120 590470441 99420787 652740550 837600540 838617377 959789612 989024209 168496218 915378267 182550587 511618220 68087100 134852066 828309000 974561937 621947751 872968799 939479655 950206901 968451198 981607408 832677345 897549038 740719518 794782227 132817854 598530253 212282382 819003394 335027862 494102151 572163415 941503591 281174294 317518854 985950247 998260219 126530916 527012725 616555932 964807793 658108133 702597147 747745420 818743750 29703652 874886515 176204663 598626378 360573275 741158986 326659853 936379073 44367528 504013589 574677131 977658414 160329202 650586965 32517295 111768386 377928267 542689637 6967137 817472084 438793310 491558533 674004568 807608237 74611209 524193989 293085145 614329007 90778905 116664185 988346225 992700955 168834923 197085749 837513742 934661614 743847702 930625514 675103891 917274797 535608796 675715919 942738587 990860839 821493191 846943387 95024707 975487730 553166415 613040584 334167896 374026916 954166444 993276877 185006095 965613141 668038579 920279418 489951569 890164496 629883546 707855881 465296020 866685327 65858584 933944685 859195148 915477586 352752903 698898693 424820735 808358972 679405413 745909471 323717424 422165588 423676529 623088700 438408272 651862755 116299473 814780229 670337791 982153159 906404709 977236310 692944704 804185285 997580319 999112800 108871595 909199806 460138299 919597037 632611434 989719110 585921062 937599371 312534758 770507020 535687225 867851587 119291957 805235310 386447103 969816684 800073831 990824429 107643774 538596022 944137512 979733124 216985201 239795296 795331612 853130711 695099876 878751682 896602353 902434598 646039709 657863910 684275539 833749243 90910636 876070024 336449526 889219900 165787762 336714615 340630313 412970717 485905216 532693267 434337024 746999430 293003256 890850231 504597930 589593907 680919893 799954307 32255635 55276293 749654868 862787278 969356729 971563791 522441383 891908834 547294086 933381991 333829384 413893504 708800828 800104993 183786605 528200891 677802522 960755107 549801299 801898405 725102625 738498179 90119538 663662787 126503645 182663959 348058619 730914355 973493227 984494510 922082236 989508131 892059925 972434653 92161490 594078959 83285540 480568997 43462073 893703365 430608061 582830641 93385206 174421988 907633599 910392827 301505851 901632463 952671183 998980631 744874488 865403539 296409328 726839815 843951269 883172638 417422940 437783515 504367231 756122734 787793179 794916036 626864205 993088388 39603097 62831908 777876007 799565122 207064900 811184492 54761543 472548020 967936555 974855038 5193833 739727892 917247933 949458365 141467554 969585392 156006897 694258554 770083198 874477152 828459297 988735912 650820668 711189486 844360798 957854262 966054155 997194561 254325905 606223991 676124534 746010944 239688752 558455556 194800277 198666472 2254357 269945735 656849828 772691859 162865469 622266256 572340368 754957363 48479103 744551443 133724931 333893591 895706774 926691865 801554122 871804161 869075965 870050358 302851656 422851230 219712630 831841994 342212794 406962265 901363502 965929443 705045440 883897545 392942849 820087833 184150457 533132101 821808824 947547596 18745070 313253755 516553148 996951658 16690467 521834793 800759344 902476276 892001762 987232894 154008823 793506049 76314482 481374099 517709021 966525059 325631116 951292632 626315506 761522409 486363239 638174053 119300284 875520685 545039055 811397213 871789552 882101130 918488408 951771410 214110154 560336843 180135193 831592660 485605280 840557165 394502161 881459587 147127151 588042798 161935554 423023652 566847133 917229362 55727251 653032123 698000316 839302783 697262879 847509162 305440825 926445496 854713734 935640766 41120410 66899934 948181515 966560336 198722734 249436813 819157970 876264719 567522562 995850455 869384712 948883710 92369800 785754819 662451387 702524828 141281461 198872907 127028278 280669000 366134500 670141254 360523562 463476964 365468083 390548556 714412988 992468700 99113471 785777165 541105857 625446899 314308822 366708447 816602138 986407312 563188233 948940040 782271393 797361147 918552328 929830475 100673187 318507317 535069150 810986977 171369270 514837524 140749730 462572109 792294484 950090410 715916697 983925810 739581579 813498886 516626551 742696105 561820988 800912322 49635143 642025910 448674919 719441604 653903711 759824680 337499786 963955226 627273110 910836868 264450129 334125709 185829457 854640630 602170062 609805610 873125391 977641823 173540359 833751187 101166642 599052898 586506872 801586291 256996434 590943759 230576800 367298312 108608648 840635616 503913541 805744095 673712842 848395945 49391022 515113852 206857061 663680112 895085686 923754301 686941899 717147635 333157605 716596377 931765555 963466861 363389985 847149978 874583512 877172312 525221700 853352290 787960986 856474731 622045110 932502483 695796478 771183143 410075758 993714392 250172336 936341982 40502705 128717175 765905706 914264911 786084258 860752797 999976696 999996154 579608265 975481813 609856277 890901526 661947558 863022405 40811267 604393945 897350454 909421125 35009209 896456161 958149117 981614074 364600947 505282949 188339162 427748584 723209279 779574812 957213806 992266567 442007100 697471992 760771518 999129374 843958878 870175773 270031976 505105365 530990624 556026937 898222295 991519776 685256941 911212075 676113538 685801347 847501713 848151132 516736928 864623467 300882005 414413054 413137518 562307501 159319905 725220586 832613672 970193471 284521511 830100283 114414558 408948957 830856334 892874689 208788028 519227989 273869870 854656930 745252891 980229354 76444923 822279553 34394498 563221958 225614265 241454505 377846733 864301754 517271883 646629305 540615550 865433443 653072818 984783943 467996561 834458215 591047072 648973129 949566780 994291362 48997338 479976055 689585528 947141592 923683459 937202407 51096341 343112455 485413247 825082302 404139875 639269557 481791747 588779129 932158882 993966463 12060702 912547833 280887058 341119816 48576970 227975298 903432558 988564612 825425221 984067494 981495260 996025011 357576197 800111665 637100402 815458904 911808896 953391836 730059239 773236884 295305923 446031174 230825691 369122870 935211698 940844258 596426046 932764940 243273651 474753162 600070228 607927404 957151314 985023108 979041854 985506233 988274184 999509035 748291575 993674491 301276641 546142665 229891738 333696524 32810234 808913863 516421843 844695320 774405305 886962522 594611506 981834469 217053916 475931871 422543110 959808889 328039640 675094535 508342026 760856464 687539624 784470262 549493178 948815236 585518872 920024191 576119254 783491259 361009850 699747115 604105627 691225196 882692299 923309447 503971655 708055070 959760312 976796951 975511128 983057416 434690414 552108478 212926402 614189729 410723075 982727734 501554052 882390487 19956505 812271837 522810643 952175649 61200161 630435800 629686099 999407881 914063236 993571861 995498547 997776581 436545370 560746173 613020262 731404537 562476011 663426630 946456003 998055352 1115591 975015865 115594052 695970536 873815691 902290848 674151911 925241137 968014383 969545053 31098345 258477359 733012710 882733156 662484189 922393674 169980596 856958886 359795009 821871364 24844566 80609584 380521544 702206729 14900149 887175312 835368759 845938002 129248 751638344 5191597 120359039 667395872 837900005 366496959 609804423 641812451 967158343 291664711 978932929 210964406 285265404 515203159 562127586 916612291 940398583 706389190 718119144 73341160 406104164 543627260 747977354 591677123 869802136 418191885 490165130 359228827 978553133 6280183 86736193 217179492 412428667 303028411 853557657 14137523 340019387 447691023 580209691 848979873 986791773 330757279 685938104 781794383 782646465 414275287 653328194 904101614 955947543 103728784 372833621 853629061 884560344 478103104 617184984 105794302 872369895 189536343 480427995 253428184 760554763 979394064 979801023 781101408 811111952 260705578 819266248 934385039 935114534 606669016 646451806 278111191 622829901 250435759 295768522 203116645 503527637 286343394 461242801 768202676 810971246 425558588 787608271 744646295 861535650 384556481 748016348 221020637 404592473 961207683 992693888 306614280 929703611 940778311 976960716 902253016 988396669 790391378 796327914 912241865 949994364 862090044 950085191 507144237 746712459 202850891 476806373 51036009 689156928 939213034 960558698 131261209 470663395 886924998 996967630 26450367 942345120 588230849 935482514 208380472 494838358 434176973 980207962 709188764 873533675 950587897 965239334 255973521 856718197 765549210 802184418 859882067 975286019 995507340 996722193 348673629 883839194 670604024 938445646 46758267 945970480 542501392 963803384 157148773 518614166 305186125 343977942 175811828 820495981 994044881 995756488 63185600 856885310 383935864 868692033 555124455 824955731 823835817 890768284 812411951 851953074 19539059 509613606 933858029 936523503 741032863 813241053 8794696 27615951 973809959 983950320 871478150 902264768 261807931 491644078 82027310 270819199 843719538 935635744 452492041 854509079 156683561 348486625 702606459 976764006 106468198 932232128 295512101 370676968 660735484 853272993 763965600 992502533 651210794 686344057 425747012 731523612 807827945 977738821 216503783 815198897 363790489 896806262 681858103 688908757 929022021 960492315 756653231 795025940 796227625 986288113 136811741 908267243 679585855 736385297 106199787 111778826 643082693 790112914 760831231 850728521 85354515 424918112 383375305 387716245 642488330 989517775 948577439 956176762 917324009 923498876 611811608 712596784 860128562 881383990 580081124 799723083 806182360 881427396 490664692 900276141 802847155 938616969 329123845 533093886 947621909 994566206 353512845 573203012 987343224 996854199 728510458 936636908 176567718 871780134 866948093 957111603 431857155 742200418 788778391 914024135 427368160 779832576 713644585 827750985 965165167 985657571 420787008 754847896 830942563 950425004 951916829 978391939 131468023 942988892 451018119 871843872 171744851 479799181 993091205 998745877 921807238 961604553 583810973 934572292 724685190 861626753 81885938 764459636 856380240 963617401 411702021 682281869 750039663 951749808 908870454 942164540 527279042 641847423 543697666 943537206 488330836 540224188 490263155 867120868 268851333 364285209 790064925 905249834 495623739 581545224 304141746 397019946 661582967 955089691 241158923 536513896 526177706 649203926 100575617 465920635 316264312 435030536 387497533 616675680 710542586 942423752 631954151 958906714 972639415 997020870 720576979 932640587 685069125 939477252 58528637 520620747 255445377 874656170 95843955 188642537 959057951 997475580 953916004 982049842 265779048 267884815 809246511 954648487 275684059 698828074 479722483 586842724 410363457 616124289 363117351 574571422 391529559 471548152 267033459 424698599 466491414 516210059 323601834 722026486 470459934 622963182 597943818 710875879 716394196 719129500 806049043 983141163 408957153 531148304 750555939 883527358 759024895 981770411 875166937 923873840 141492025 709446953 992361019 993562577 430397852 804855901 637491031 794223568 820279031 850472641 780722299 803182078 477041494 759686967 733011087 930230342 963114342 981085094 670062986 699359503 829586876 857558775 606552210 656051360 6026691 861297395 142762738 973327821 7922250 344265851 295441107 858155868 232379108 870079908 35493187 244217069 750345564 921817716 175267884 666710396 980721453 982256993 872186594 955864793 308877120 440677114 518823599 934478289 595513848 665219436 578941723 787695136 978200529 979655158 385933950 770840539 539054928 910046112 722571705 873837382 318943375 346758722 897529124 908724281 737810766 778724845 448990686 976974401 39379902 738071975 687905585 984785025 522341156 815045575 810969178 893181919 82034661 101881289 252246455 624592945 314819692 937181855 519417704 779972389 888152329 964731404 376381021 605717990 183201163 720162708 323141796 876091857 342250864 656021195 714139022 987191069 925089811 955632731 469298497 571183710 318513419 588964008 130117102 410203418 359103346 416800103 360377522 628371402 645956765 846499153 683372805 969349016 482452269 902755423 259762940 282457898 947937947 996800720 590389502 728349817 708057207 771167898 475051427 864036044 997228980 999970487 26242708 156840696 998847359 999762181 835825067 918487834 178436613 644689382 492715512 821621271 816285811 849500909 134663666 426249168 484809789 485158772 683946073 797341486 338437718 888166716 961756481 985517642 419366372 749589049 789060610 894527055 367912568 976356933 83128960 871874886 536234391 810331313 611838085 797745774 243668227 740008836 524645339 566891051 821328314 892567597 534463990 889770035 426580819 716904343 780013706 928521068 373987262 522014281 53000202 780205399 359003107 650457174 482733292 529031143 187296410 371421974 891651063 955922937 704843967 862608141 118359247 404192594 872863169 945589582 963484883 987145312 736696876 904496520 905756015 911206725 845962751 999045428 181378264 397561840 463801673 750654951 248951309 411702483 718832097 946337921 546388635 711781783 573782129 839716722 929325425 930683603 810770262 838000135 237515741 473315625 433450220 602625257 401252400 995545051 264607605 587824376 396255909 499920256 626445224 733090976 180702710 934937029 361359678 769788279 380731055 907316056 482119531 963128721 401054700 611670919 590820729 708305247 251182176 987144877 235059110 295981388 942930047 997393969 763415379 886672186 468797106 961808410 274560189 788163039 806383278 982232612 545331996 601746559 139045078 787890132 871995929 980604500 171303337 713877036 215659186 583867774 760002072 906679351 665434715 855994381 434727485 848276335 115074791 760677091 985586268 988961277 508491918 558212015 165285106 327164585 319287088 838461622 678035634 790639971 633007154 831930550 808631919 862579693 930005035 970550455 456515167 782450833 868970693 926922184 391847345 589636408 165154549 233735161 300508885 509668834 240030126 621218364 556070248 952083631 318118177 658453812 769513801 998129834 438296820 675946890 389367876 987410228 939691912 939978759 315615583 777639763 756361698 937476544 819396546 856609252 329431281 687900870 133637899 993245684 125008361 346220153 191231067 752571537 548901860 785692363 458747282 925420499 814213189 826055663 170938071 195311531 571314639 962888887 487492328 494985078 429492224 656571251 735066514 976330950 726569694 947690171 454723117 675813670 161051561 802820720 140195359 469341991 709419617 755665320 303530873 804798271 506193356 527297039 689530198 871191108 417239503 489142349 905249679 953472517 248300521 324696139 45917778 530169512 189892555 206001080 338450846 647013066 143692270 700945187 138091986 909882521 174919813 238076510 657195576 988761932 789684652 884934120 164700068 973521625 844210068 962971426 203488464 803467176 744334474 779504590 975022757 992416303 733002156 791370375 632829333 725746052 661848844 725319884 626423853 863650698 284861427 524204323 722750644 777382410 144744514 350720407 619285267 876217884 613075486 866765382 859211234 975744740 462393330 789894746 226299998 525659886 985463977 997814649 121703338 642313300 140824245 585337200 925088270 947419692 864476780 987013464 275428803 816533822 970632523 990121813 749618857 876553637 22165806 270765337 832980946 973906749 988687591 993667158 116084083 130989652 285998469 933479392 751828345 802845012 993276763 993798455 48423108 676394077 808429042 896969311 642192863 741997232 108161482 285307672 552137093 660256494 805100732 843933094 393582091 697380430 626489877 928725466 122600947 807336550 927443715 962358412 601634461 651228319 202312467 793417750 680775043 953704421 891489900 925513610 383508658 996338329 730174473 981611919 490051128 810377319 467926084 580699215 282935220 611690335 513550291 789563833 35311362 350662475 542284573 559703894 832380152 983322993 568883208 639721439 282265472 714751989 425348154 824705278 285336975 503187445 316858004 780161095 261240537 278068049 193644798 335451631 760623821 836057574 118037088 421146096 699100414 894165203 236153765 304817313 651009454 783578626 128143224 734782424 622602886 862002622 350151738 482481588 493433361 515388040 134765333 950814569 69963354 232306935 263515101 713938025 123458531 611997435 771707294 924268086 489671443 713123406 453376910 613192278 74483981 472097119 50302789 80758851 639412010 985014028 823397541 957271315 482497307 958458230 390546764 570161221 512703020 832609380 892093465 915592820 294318407 701246839 362199740 380143449 783781064 934207979 899559185 931825846 328957825 357426840 816340068 870527033 962026911 995603817 298384901 492623543 379706494 981689767 380538160 783617068 627496298 820127576 249520527 887579990 70372142 186236645 209594316 526608650 745971438 938542557 326928473 717598206 204670068 487273213 328548068 639304518 408494822 582785485 535187730 945909376 318747576 771506162 478818009 933479784 182567067 716132995 861880775 986262275 164295273 892809022 789522648 958919222 535633374 595607989 988962180 990541190 853759443 920914147 790519529 850734932 781308755 911180089 392446971 844716546 997268255 999126384 860890676 987802792 574061569 715589735 901877852 975831643 892224183 941373640 369949301 508767002 878602931 994006266 848278921 888178623 77940887 526515778 39006429 94584729 549347080 993818765 202279868 600880383 847484439 934931740 589233247 876521868 127793113 614202837 632388436 765403412 1711558 678094083 364026438 817166766 75509140 733022133 410405493 979296693 176796026 335021390 627563469 997437164 819287497 874711964 305841122 945073905 901267915 906247133 202697217 636500660 122389801 609219115 952039297 962266771 92353314 991191737 326634879 607142432 679952553 705433424 774119513 860895175 550825773 877765960 5757341 204690491 349328347 709345466 986552887 994018893 858375693 870433176 351335068 870826334 807702873 880577736 19754228 190128956 862319669 963689394 967110231 998607145 729146366 832115976 193323556 912243479 821477593 915656988 958545867 971888588 575634834 765735552 194698354 640615337 207469565 277471613 490078077 779924450 880556773 950187309 107616550 803010797 487634720 843686014 272075817 950818374 504639096 758939796 166472306 571922332 679358012 712168755 293303196 863449561 781237362 987800215 443557872 973735052 389948616 397245060 499567368 707191763 820580569 876778948 727749124 903270006 354207813 788383990 410988461 631066520 184864272 511549011 857460023 894225715 447575980 495567926 373539659 728981760 556771071 905295800 401504299 769553261 374648680 644579606 480959581 778948802 219893990 720676353 4189119 691529183 743167001 961945703 842508446 914616228 947280106 992406356 354558532 357899056 104458285 992071267 248078225 817850463 340762594 808097941 196374715 438739940 400963883 525093197 761091756 888232561 406535534 420767463 295783671 918738942 738250118 747118773 909807903 976356257 260046117 761778286 27869457 348413356 812350067 875785003 447048321 710208429 123762866 229982419 7301890 901780062 248989989 648552838 151708063 852787370 482574318 705358179 426231402 874868051 796267929 947204337 479678719 762351237 641564002 722548360 4924812 326576620 210220437 959188091 342345855 817235740 816100849 816907831 295906063 848326571 660796498 663917388 175789721 664977349 475642185 578013615 289062893 856970147 400247918 696600462 493617589 678078916 621091612 734930559 565870342 695497733 947103403 958406940 465846980 713758106 715830179 732846293 152526459 459621026 679446996 933559777 6245606 714964973 748629015 990125212 649540328 807954875 75475458 683821856 97660166 810954733 602626141 679461176 951791531 958747690 447820650 895341060 267975627 973814865 74208439 250723176 360441305 850347356 141670810 281314329 744557605 886351558 620653452 740607232 328009686 372823062 907054037 964182521 746337732 929268121 617292918 958486214 563877416 589901774 851239041 891985012 45691206 640477722 766306617 984030375 318409419 600216594 644453587 876229237 742484566 766549842 591998150 691558374 136256921 736229130 648422759 880136208 161927408 168582242 554920698 798933947 185689142 483219045 960827616 976592293 741277041 838148457 435901558 645962370 232812552 793598731 198805382 592756376 318456979 634183125 727825309 852923323 48610715 864832093 51499483 890748250 420465825 809323465 684361435 998722673 774627094 847755273 397472822 805332221 901267859 928616901 345104958 603793722 900919747 965559574 492058636 618785129 78026749 766660096 203338649 869123314 843731704 903381679 768815912 891476078 474569232 652455842 954771444 963155948 863955699 980326981 124959309 358111617 128330246 688011695 17781805 319892701 881045089 992472894 657478652 768190680 919097123 968949808 628908085 896759704 777462922 952056221 959066125 979028417 391472642 494898113 127530012 622117899 613263939 759864032 474561024 864699207 900635650 979350413 232708621 589943065 208896136 711182556 677176697 817238106 50202218 898800994 673391213 895992701 758336541 803624968 980354140 999698127 835957020 877715276 664942436 744040250 951357042 999449863 42727725 141024817 78634643 356417979 118927154 949592505 726164107 768155682 362652605 559822480 661508084 916191221 188838628 220400430 429770764 511801921 77142805 473665120 211987606 831617831 160985977 591230870 455708418 930142440 217129172 371060935 910957397 938967246 372622467 573541629 180081357 571912706 393466920 650308934 856568136 963634412 328925373 563919594 679280401 958053089 614491414 711527411 421220851 705679856 526075135 797413183 295745212 642544875 780285711 906412142 774980388 871919734 963837086 999108517 161122312 173770784 876670781 909572686 406776628 850915803 329199360 944881793 89656668 489858886 436154272 809146315 458563358 999549353 952157307 999451554 566680315 643443977 649082629 921334762 69076983 916144798 754640413 862601200 989981412 999355719 349985360 919147356 92722942 447547881 607820521 627283182 198077425 765214070 636791117 779113238 382565422 731920606 710464044 988382598 83840675 602591729 297118442 396161867 764937608 860297173 215387615 438320404 646501697 999884450 668135665 996954829 188674315 843838525 270213629 810487257 832195687 965939744 177678713 466073615 535830912 752441738 881594860 982382178 259856817 730782115 851193627 946754149 447794099 520530189 946915573 965470226 959871675 993923166 290196820 341088141 825865036 906915149 918590332 937613951 974655137 990170828 681403549 793479387 292654766 728025746 103082165 496287577 195139449 846491350 415413143 949992480 235230910 395197519 527234230 550471248 896304597 972845397 818777399 955790426 113977455 806842461 640574970 660363465 960089823 979416811 641935509 982971933 43063144 648099498 678728552 848904488 81693707 551124503 379978575 570781909 985460288 995404644 47208902 438507440 754540747 872201221 688549010 963992378 416413687 653617991 755407374 825204256 687299376 733569918 53851800 324749815 614212399 764986035 96295697 977037271 671618773 929819117 965870099 977666739 609679129 870452457 272482050 373230701 948121977 968784539 147734755 158521550 955590937 974171880 532628781 543269473 130703616 285444928 876395827 957409928 200432019 504637598 320928645 411318771 154319636 578089303 839876918 952522668 82383781 902291767 551933854 745767623 219574991 960258439 438195512 459935882 762257267 906508726 220084683 460643172 666665543 971950763 440622819 719679865 183076835 332396152 130226239 859716687 966678501 967650658 920457001 936766887 834366816 975275074 688672913 720073376 96784969 479699759 913025948 960583678 929593350 966531748 510337840 707664650 333035685 415271778 182751824 420854850 192904714 432614676 989080863 995555844 501440336 746466070 189414651 800935096 893557798 942413021 232558159 668363745 687498120 863143963 886340891 973023757 170158554 431269884 861393985 987835154 397821293 456029986 578260456 967245730 561908364 948968590 256066787 947590087 614575007 698768166 582733351 632059440 151235224 965225596 964530934 965693777 370744520 880645672 538896602 800984252 20580519 548415911 583033981 737477355 525422530 931944457 503737004 919824593 76934198 244077916 380407429 609188056 921253161 974025345 697203458 787360113 346915159 365862835 980365116 983775934 77093249 403112848 308265106 788754562 361508352 387093883 275704762 510951018 862908280 888098700 192704058 984350938 958637577 997739311 783204084 918548572 51585205 170902970 308025159 689837285 965492656 974408410 292028355 989231837 732350371 757635835 828376626 898512831 410590820 570119272 538182364 729586069 769327620 984521380 343643482 702976800 461586701 847434107 361190891 843806203 578075225 900202834 807015596 829799323 799187291 799418274 942236704 999247082 548564617 577268930 212912408 577767767 575990056 775491847 195174228 639673630 875177475 965357512 612422642 941235549 854997803 923518463 926362635 988487580 173739272 256322747 509653578 779286917 26098816 413612628 346105790 954907538 127540991 778558928 98099591 893360094 742979827 835260371 458286466 690766916 189333170 897548598 693833053 759385190 786988007 792490052 345943069 796222697 126962020 367676947 531457033 758542943 826120655 954962119 550850226 846461414 204405092 737426378 157623163 365160656 534947613 837547306 26955693 775831891 211819232 544362590 315011545 885285026 424838208 515027609 411402479 654587697 384078502 836071769 712022795 955329477 89333171 641035106 144687295 999889153 495963970 814949907 569845070 774070119 934348236 963498002 105900108 187366655 669638877 995784809 850740479 954033945 248275982 673794461 480449773 698440818 253793687 558593335 697154035 914337444 21349211 813481026 987024236 991644797 179228068 794338516 719436612 771050138 611639607 698064185 815248164 934845789 903751604 910460408 843936998 954192670 895415865 978978989 14732593 749966771 948485671 972930122 914480576 921358332 976719189 996940220 189695950 465640743 330293511 772084750 484522687 663971209 732203856 811910593 597599506 918951311 366734293 467361300 251842975 776468338 757165468 896256937 34657587 513103845 348693475 588389505 821416159 965070767 586476689 689517403 224917279 715383892 294656674 636169253 132890781 565612237 782191068 839839330 449758362 476300480 173172754 766006330 622511865 969704883 982132983 991692875 311430494 798360268 731346789 745545705 180797145 580372583 285727917 874065233 194103199 793758471 715872013 950546776 425132512 685922960 205326003 890732547 589923465 965877691 584999458 721062296 969510522 984077836 590889657 917092758 518335193 793930776 168913944 781618204 87550665 577336360 73033855 872827315 26590890 130349111 783499276 957833639 86565037 735710895 781401468 984457093 557608577 716291240 885207719 922005082 148015621 200845427 678602863 839953678 279699286 610770138 186939942 797451361 630362270 923702044 515941016 972008523 739013864 976173323 391048573 943144200 977356906 996163532 544358172 754879352 759369685 761062459 703997433 827911841 482838644 894392237 2316885 408236631 68931886 502183538 239523733 879222314 707480841 825736067 2651796 19153792 802208174 952310299 141283127 482145791 265446615 323459364 372808406 846462455 236103034 470945229 648609982 931204477 907213965 931274963 460076030 566103351 636644036 670064888 287823551 429903366 677002346 943370136 387962056 981127803 50701780 515431528 103152625 328070769 564431350 700081713 881430149 932318501 450797963 935024668 42070876 345075724 756237674 986237656 426615934 747469777 57916465 329903198 624361831 887797609 808257076 922073695 543185510 770579798 673357615 904515557 938872763 966102105 667096105 732104782 616231729 919476725 258292404 475199176 568239606 787139865 254824682 505408496 888297482 946874946 350343868 365557493 202182410 548351325 574221364 830226891 30173755 515389252 415283748 841531911 390455444 906350652 797317733 810731324 733691224 812776065 848374654 910208522 523265255 926345032 118653202 796251014 71582760 611743674 436485408 854592955 824068993 968965967 919233270 986806472 975761074 976715140 778395201 953415649 741240723 863211116 643876951 935766006 335922297 887336186 617266793 680075174 709463871 869084141 700298503 826455517 730799103 926118225 586397846 741019438 432828484 665514414 632960535 698252461 424375402 859414526 562150603 947893044 78359081 263583306 52473647 76062599 305805789 986188640 18783516 311240597 415298365 499275897 8478931 906738796 810214443 902248591 516425287 626585184 407788523 584446857 338502965 465325074 964472026 997802284 858071125 938448795 833939956 874541115 648686545 777061375 481758960 678828011 577266083 692977303 945072468 983620209 603689385 842526926 315916873 931551912 958331476 992890298 280231699 934035237 546069188 992379530 120841923 927656090 295035161 512942492 801642166 850442288 959103111 974103924 384597135 955562371 403013959 561626515 711374204 881470155 324302322 594991638 457021376 595046117 419564230 855105580 232877013 585165820 102994437 269796086 73888753 443225608 568557302 866128428 106417391 260901135 171994419 549517319 62298459 314193578 964416510 974397909 362910258 621335894 428927970 495765348 449015711 783397890 229522379 736463387 536338759 734100589 193364428 521593251 463978153 780596932 957980482 997512585 834500406 888627765 162431574 598808165 528383379 889728464 510478641 969811467 866190794 928447423 952429132 962660236 356597664 959447105 441361011 509029817 631657210 747002917 443541038 936287294 452172074 538478872 696601515 944482127 932289108 961404335 578352164 759882154 844795356 902217601 648488817 686950732 454189663 682879636 736661172 888271619 315032792 938420520 845955107 990074990 756788876 843849749 242367870 766679674 405058696 982418222 477947575 856978791 882979954 952510150 389881122 824943903 909235466 946271880 124311336 719990571 545680767 549157864 752382881 789421228 332692240 798014167 437471918 568332252 674398144 845682279 954169339 972464915 373819122 821136959 454141637 685089014 338313866 964346385 497702946 578313008 826317682 950369203 919376867 926989928 711210974 720522686 744268288 863848940 302868397 471033076 925951931 957345456 143802506 551347397 789111999 921931557 125880760 141141669 334962134 886486118 113427912 495934988 947805191 973672815 368797286 714214921 89261822 250984203 607427887 739892473 908672590 949569643 134538232 829084326 975151516 997723165 268692715 747370979 175547398 228790994 764395630 865916113 597737192 601642545 232251329 926643283 715328953 766145481 878288550 897076000 731559900 926106662 926121315 982427123 258102558 541961199 976978072 994121175 762266465 852342787 845749082 853295629 371018094 709222095 397638787 723681486 22976340 632218276 732534551 971527676 373724160 547416591 939991603 944013697 280059159 778728594 55538794 939783070 813216262 920683757 879768634 988010992 933549879 941825273 369054779 488016139 274859153 532338718 726117808 810760065 975301214 999884243 498429822 516904525 545711753 753988472 509113944 648939481 874865827 932645169 848747107 909457906 796802130 876340250 508029390 786120347 925770261 948522003 489578433 935383178 10300277 437684409 1653789 992024881 574475122 876747534 485509164 941632206 111991750 347852071 780048753 799862705 36240232 191926503 224246132 439893683 645403154 662240056 256797517 491567616 679023575 734102754 327535214 368616577 562504185 672175625 820021530 973906886 608438191 843840605 702410083 878249823 764511122 881170203 272926959 524343266 562264017 798928817 625555886 956411363 397022653 612021675 503303763 857192932 425121746 489684030 981333264 988747328 80741174 986963837 356877968 470534208 113122711 406206091 777008475 785319211 112881275 552610314 49525006 906996031 145209683 937968534 280108641 628625141 742412599 790146843 999209470 999561411 961830987 983250876 32344395 452329206 332237686 695168545 880341378 945937505 638301506 652125296 197470508 790205281 814147427 816664018 323678725 711131860 369917200 507509707 134551551 866170968 83072158 825524662 678147332 891342886 532445119 847521923 176232933 263959612 844877402 936326835 82447040 686567775 994709217 995930605 565600498 909613629 317537813 557474576 706814733 862210045 726584786 755664801 899420396 905370169 412820535 657578133 277374883 480432641 38367589 383412401 268668624 697048555 835751100 936890596 409483040 579365262 915680825 924857992 488458018 806850981 279584477 425496314 643474596 691259935 532692654 735870838 76729781 610182841 921855986 922104421 222077606 249776741 287416069 691331014 408339887 846120760 100846723 484098843 909707941 969107371 452799997 465916628 562543107 700831722 470238541 873575547 427629728 472161839 309699371 421700975 620587947 869056372 440687971 938728284 399628854 593876888 540127288 766551340 813290494 854733855 772702486 999482934 756686303 924148527 348380865 982121881 957269926 973075115 709904789 955172685 429244869 823863445 658139262 919463788 496573928 589918230 771696958 940631879 187457927 665492902 863298985 959027637 832595791 885958075 803786660 915107849 669118677 976616575 924733105 953970516 67131267 267387785 615409908 903547539 81795550 690968660 461879969 715433249 322919103 957777444 484643309 763499792 216819003 487740685 351157274 866812380 720002687 946408977 337599739 628311622 912909808 980359540 354242160 499974171 732044147 836385439 340749759 630834460 433779767 671867159 888491683 968547102 102749203 442193933 956530890 982122399 939166865 947754470 353111665 439693535 56496721 290497681 315067324 346512019 316628017 558399989 543032548 790686982 963169085 967947822 197581385 943095220 331806496 866459571 913517474 943219853 856683996 988110838 172830340 223587608 775056636 877746108 443098808 811762865 859115844 923578914 824615421 930560304 988001039 998214231 97878126 198124110 777666450 802768914 468399057 886348353 453744475 562784009 33856766 212262050 58693219 241754836 522515208 923989472 538209063 868746516 510683737 726905799 739219076 921380318 572958497 924078653 536598007 694497764 261951244 832834099 417722670 635139606 127484318 557797119 556977180 672538087 123999261 618594780 127392560 414913151 921386550 979388542 788599337 961191035 283873942 413936493 938670345 962538823 182628491 312233597 341408130 773573656 406190586 727284270 114177597 607029984 652691478 988125120 164318586 202698983 959730794 975226776 636467020 888615774 106989308 116669166 152729837 456636265 822673462 928990930 587632504 886158167 340949602 535686916 233082700 243431388 682561289 699866435 122395808 416172788 27631501 951442680 68443770 190936232 239900983 923031171 383943060 796774433 623542390 830116241 293407416 748101005 809583974 978115407 530696596 631072542 206730550 298526286 997648012 998645500 471661290 682975374 758509515 980969269 816838587 884910991 208651531 521577813 211430761 395390374 756219223 889962259 790770396 878831695 555850083 771749775 195697328 400666277 970392387 982414583 718077211 815531666 260513370 312766155 51864926 658227695 331327596 987777757 540213952 961354261 103853177 488560827 971711548 971921973 186321112 694875458 326832261 452274166 376828670 594739041 540076879 712139385 687143542 996367978 520905900 714594675 395660172 677832261 253368208 477910976 817526676 868255529 810104966 864167595 264426774 930242553 646874282 965591879 561499283 985715377 862049038 938898377 673784096 901735903 508110175 910907618 602375304 606449771 682832781 709864582 84957065 498754922 333932304 802961367 154195595 392684078 146672735 852663587 33571070 92683924 270698679 809148785 124261198 915922593 604077971 671509887 709575698 801406722 470813670 517698566 74902086 84590622 630069815 682024431 897250667 907065154 673803526 780413681 558428968 760840577 616360285 739834015 985723798 994280705 393249792 962664547 71417406 899805336 464873477 580636339 381635803 512921707 252458114 624799892 794010902 836957879 743009565 852575418 864165310 869569387 186071532 250723538 767129628 833526679 880931751 949069633 94986533 495515596 296168657 545461875 596249299 755326004 323454491 684033832 66335234 563393899 973142577 976264435 468841332 757207413 175519369 717953982 914727558 956961976 430268199 509973529 958555927 966386528 627577517 661731686 322363493 620173022 207059068 731102272 409691734 945273907 607520021 702402122 916552690 925338962 858592530 884507348 844703128 997517274 811485910 877680571 803837078 821548185 520080539 659498871 754436082 930036733 515613436 829550201 221646687 644939824 745156347 862483167 422703481 535923918 858767070 862959984 324248435 872406748 299890380 547624429 744465454 754908551 491272382 993886037 725925290 919118107 560042627 641430534 339362147 643900336 847884236 921529948 118186845 249645403 665978811 953496739 569480173 763013932 406956206 525341060 766280997 840701405 141220978 589255490 216649046 773476426 194736453 964872763 305305267 716355871 871035357 973148280 386027472 508645379 30023914 383322041 938159851 966936846 459559164 841919295 970586390 985791075 832806537 964524613 290471233 675541687 119159806 125909473 959481921 988355399 603109214 742271304 158426908 784731387 453739322 534851773 973918150 992468892 786458151 990260697 231273604 807151607 6741215 623787561 495709412 590645354 356895901 453712952 905361798 929838956 737737080 997165458 202877969 349620038 933695772 958658988 188930149 423115544 463808281 588542851 185701575 393642130 666804327 923692364 474844125 825025763 986832039 993239687 889013649 937223405 852837747 899443837 112459208 604443439 644317156 910291712 988319921 991233416 956831601 973485188 743457016 746727930 890549955 911894483 695319681 793086788 46451647 237583584 876797167 959193111 952937924 963785118 669213588 691464468 107584130 561653439 608180615 868407667 443229932 481019483 131635809 771107087 6434800 430790482 59480643 332549139 979785095 980337319 189825488 932545928 822472830 960561932 104232832 201116551 736304732 808952982 770881431 780900982 102148252 772743871 478873064 918636688 986157695 989703937 111009643 812294193 194401693 252797181 163450526 954432659 197311759 559625436 528497249 575722331 310598254 980178156 574795085 793198737 268211688 657422465 802550023 868852743 438916618 905366424 588614846 922094302 308094540 450913717 268682727 744178410 639723997 843042959 651986100 883032195 982978477 986462591 416160313 980192654 139537572 811871167 419671618 788498425 157375513 522016311 614554613 730826630 580424281 905098316 508246823 733521984 265220394 772100639 243949870 614030568 307945423 853945470 656345273 721369398 705515981 769062665 226278212 519451210 700221595 801091368 401842453 647998508 753558378 855231312 687022906 988234873 509482426 668379282 638429944 816799879 238952080 308972165 165929533 913972962 891608221 952018156 423231867 861749867 617841218 743931817 193575289 748076744 974188658 999346079 915746672 946198276 195980936 587545851 847955711 985662235 643822561 780695925 859875201 936084627 720881658 851898166 250585286 721355069 414161777 453545320 564997769 723841259 849374976 912660675 804243838 987061921 195387468 738353289 782380310 884064280 865749506 875382637 950686652 960594957 990837559 997162790 318642642 737466878 884867338 904918711 663225690 680439561 767403143 914573629 644011488 661465367 892399824 977059315 405859500 616300861 598557322 819787610 362271382 985331485 847649061 903850215 666299790 749543354 148318651 364414375 139156784 572943000 47143493 681040449 417886477 886309043 493175294 987743837 26664700 231865620 158637249 881287199 195736537 994871504 538874737 609931233 977021847 997026102 104044681 942661095 40052370 169617014 783115967 843416895 124824664 976945231 86356253 218518149 368055922 670502514 553425358 996097162 539289915 747116212 48166081 533434461 649176270 801187655 895218389 906604542 370453231 654463455 512309015 575664678 840147124 998523857 369642152 399068086 156163360 621574101 470469542 933717882 245269320 441586805 448573559 885062933 669901439 678745115 962582785 977637971 210440477 890251613 658003033 697272240 753500611 904681128 384731655 641806485 417654250 795601752 463698128 518723675 484875373 787012766 366918200 437095888 712979318 886656189 200146745 456355057 654078587 786482533 635052816 711247433 564389751 654173806 59211968 959134038 410903838 998560354 658559791 896546182 786038826 916804024 15979518 90853196 8073826 516748302 398397682 907866969 492697004 973932780 749063509 913084146 792650864 935809210 142883705 717520287 947578653 976923710 610148960 625565692 361098104 805965938 112673944 465768001 544176322 729396411 335173684 448785675 747473762 913235243 608675782 920535458 850903247 959592004 180531411 407271392 174912248 201728959 112724306 204826499 823955946 986960704 650948306 995266244 402366010 802152923 915957951 977223683 295447232 693223438 816363685 994165713 382591305 450697730 899852927 975883227 643777102 996156079 307484414 701240297 847620695 877532272 568873551 869516199 279319289 698204603 583917352 867833096 492841428 657658922 487912588 593703480 986243068 999193096 772619631 840428070 702186060 815954241 325388777 639630036 112966161 800882648 639821600 663266359 507921361 855702541 498526238 683753956 801045156 969395461 720125849 742528514 96765441 772322455 14018216 35027470 498170278 791513059 32351842 428170668 481981209 503103510 520614866 880065920 880710630 906176500 600754668 726717875 949875233 974577298 715649428 953143638 781352401 892892110 712031165 721572965 334364438 688722596 898615190 932891504 585515688 804833491 391032278 422989275 479262448 595684919 892699753 948752098 750587962 965027314 663929129 856192640 66823092 326977156 669689764 709092145 811569306 963507848 44262772 794328326 800927855 862028720 68155704 250759906 249626628 654569816 170212790 846102289 287798712 589552442 293476272 730015719 565446686 982122517 159505339 524666993 818485229 823975467 362218285 875112702 355890572 366732788 615919322 751684397 958245402 961610107 81702601 390015795 345414960 849080297 658854244 661090758 31180492 579469258 352051281 609393612 721173909 759698920 559757631 925119058 782198443 827573405 876851007 902905389 823760514 940099400 845202538 938197698 194172847 607469018 242135505 854664214 947048981 993609905 159115914 466520588 630899612 658072022 925102117 974134326 159384572 949892002 893582363 954262421 559743538 688022838 994207410 996228947 245653205 518256573 49470974 794615395 94422785 860061387 955205197 964285451 564129802 878145134 379932686 409288373 514049665 822301273 993916654 994917905 821966939 944868299 24879554 368990952 266266525 876487268 917750265 931965149 567419628 768336313 916952979 923869280 470969208 570273776 597594911 743681426 818440048 859026982 604529435 721210083 624223523 788424519 84223726 315598162 114368331 994818586 340934441 388473163 114959862 460299855 331219199 841442109 694987746 740139088 885459818 971983106 651386763 706499496 508192090 795672339 17959844 244094869 542799054 771525625 437375507 998342992 273649103 579102602 853498615 885121316 725523805 989250081 724827014 775888834 16167473 401295749 426567583 761731272 326811965 991041424 189558234 220565343 455382617 857521511 598481168 902417611 954278707 985916969 224093044 772818733 732198823 930276420 777526062 983725356 685064209 755607842 637231317 902326612 963242972 998190876 58141928 195672191 892016850 941364989 347034400 741980076 255071893 402821525 408292749 858358623 528714368 901259523 101442059 834973274 789129915 930301791 320690950 760589386 879484749 919729481 841526277 965185645 562006787 727294773 685052606 954022947 469794396 472900378 199213446 439537245 636569543 817493619 578636478 730913313 837885762 896185200 231053279 487800272 543959516 819812211 503822228 506399605 766563467 984074849 160168074 267939462 99227202 321045241 885900290 966109518 818569184 884212664 476032735 684455567 334930606 471624381 740570310 907846031 556717951 612009280 403789140 662302909 699623684 975200116 641365072 760144518 551866029 552107733 401551083 895658878 844321067 954709838 683586537 980885387 208015841 262735845 583023244 842660949 40204555 487212911 896918148 983786303 317658464 499602050 879598827 923725434 310464307 932348418 665048979 907599612 56458407 422043813 140619508 984697137 964471695 984384226 163846194 971518428 273962828 831223921 290426655 832196957 773061425 949683898 126312360 820320228 223492828 860468435 621384316 731459387 755988337 970777456 756732444 951073039 725908405 777856981 835746677 981922195 319274039 493335972 909431002 953000227 450675820 885007621 91825056 519203825 896699656 906092433 17746948 838096512 983031984 997111892 939852863 946615340 472102323 587020774 491439649 899647722 154925485 349805100 180044708 389330900 802530220 956733642 520886212 939949219 378409541 489208226 909139043 968541869 854350140 994752727 806623490 983045691 3497313 488869947 89224628 820019293 480862174 841827884 107491921 621064588 275428501 774353273 428111710 715104792 175861451 290502377 704476706 769015092 103084529 164427978 103995399 684177066 232062154 493832954 841689278 988814153 975753039 998873221 534081496 647534854 934438653 993295903 121561201 360967727 972808112 994212301 415016489 796845527 568747514 822892578 392947806 862969859 114338573 304278310 565743766 724337320 556537920 919611285 462851886 556094634 857401543 888704899 928710929 997367554 822315978 895001368 403547195 717559501 513931134 572119436 102685516 938371469 76821084 534881414 962851065 964462445 151220744 952891670 962895132 979718637 301237966 553648097 593163368 901545805 35825690 819410428 933449995 990975839 821970298 951810749 850481937 982447573 25723279 132132155 804147765 863337108 102602206 432128476 328148123 377797020 802699158 802847124 139731191 587145180 703967980 947522515 164911681 779256665 769731219 790941563 991633315 992838034 990747362 999328623 981487612 985519415 918299030 946796633 653717112 915565482 637788901 851136609 567322245 947594997 596839974 641959124 127312644 147358364 666846463 684177255 245556744 349045696 261325173 379001462 518436393 840095182 660931665 900625744 591545392 811388852 480857185 947494195 540873482 847800252 305415482 413802333 339344377 397898851 633997369 665264397 538164090 936940165 254286539 678998295 756889645 911096357 812240632 957074878 377396595 456773817 99211286 108480002 651868936 951708434 704209149 752616512 350967753 947942847 320268203 660262885 42291648 551736037 81064293 148470725 954201358 965779931 973884849 989492740 444366415 652916569 934709436 999965279 666196306 872399273 940199878 949148497 703150255 724911393 945801880 972992649 33103820 403774370 19736614 839268330 520859976 641421071 917851714 941500123 631776489 816309027 306561161 750176215 954150953 979110706 199001758 789267827 296230784 751506923 874138866 983134834 859185174 864083033 503907528 650130730 176719737 223293533 101566189 338450024 141869660 306740704 265528937 294716740 647419092 884047834 347799277 566099564 537519608 566977573 777144927 909481789 534124666 836061934 639724992 900006501 123478786 399664311 979588258 993463627 734433953 890285341 793217586 835614233 796687232 892930271 747215326 902050948 788329802 943523531 492183573 834108522 182346043 627033569 405111927 670014674 866769360 943694719 353936324 870536251 97191287 132535185 178841060 414945405 744086171 761544348 12938592 772910141 128623743 715434796 971654160 975902438 998523159 999651529 914933777 968385575 703177652 835959354 734546926 919271455 967321843 994092764 879742026 894816897 41295219 708898566 58422467 617117242 768102134 856273929 238198567 367518256 895546946 920333143 854839425 884474173 296154800 421881940 614132010 945552118 759995616 845766137 44924086 911094075 127654081 690878630 596441846 720827781 275574431 977904880 628153617 918922381 561716994 903822534 246867552 811722573 646219520 830801465 739703837 935364726 678073356 686026552 438305528 919031416 882322815 885858797 488912704 741556882 605758263 656961185 864979596 949969703 349828215 582432113 189903162 799251873 384193721 908927698 572484174 804341058 527727906 547848216 232684106 966009632 398110851 766189954 962551378 991516819 563217812 958381638 596019809 647345135 995131600 996876477 291594754 606876015 77786493 776694963 463194583 979763964 568065640 889496658 145176888 415228286 814716092 992316839 804113632 900782966 301310194 444432376 26051564 790991996 584853855 749399005 829087731 866840848 204621581 919675252 555052650 817330318 820017552 976749017 185134601 996238006 505434397 690499948 136976173 717434819 990860064 996697083 91441538 923201132 140646604 585128540 448881850 660126029 893549160 964147358 362396463 379907285 370498529 431428294 371801128 721027401 3931994 848331104 86734316 737073239 503519083 678546157 908191704 984159562 670766417 674799851 536711999 620745883 264096199 869683666 986197919 991796898 646041064 747405442 12367922 771817520 388799966 842207876 700690187 765538689 110042839 704138149 504128242 827234703 204446677 472948947 785086081 939618927 585414242 986274800 429550263 766276224 312042893 511077016 850580509 889942271 524161871 796851458 511992564 781100778 43700963 902822006 58974207 399648264 544061506 625516628 524613217 525743170 643657440 838973246 111752748 842193904 873687437 975832381 460887478 650913049 112509115 167747891 695147006 986978822 677127017 922328083 979692141 985684290 41890316 839664321 650455892 985999333 362296771 556836704 663690922 809293169 732726824 860690595 223594745 910808308 966125664 973739047 294606003 468996401 568606071 842301596 625108176 926172401 326121710 715399899 886161332 912822790 857126615 980933613 178326873 809683054 878040570 923472852 454852299 732420591 4147982 531757923 847451109 925282292 41450424 830178927 624451073 946478254 210298831 975979268 533998128 630655411 645741119 908254846 165701090 384979037 157937571 337876862 206956411 902653877 507389908 551488848 625179141 782421028 984407445 991119761 149968417 541904955 31275095 971695735 509126686 615555179 848264526 896930125 572417917 652497606 665231414 680596110 271203324 572503900 957347957 998724466 368704892 863984768 650696157 813687558 572791894 932253655 592849632 686139275 786177381 804396699 571914885 693568873 962941358 980450479 728847334 948669767 831783621 837447212 177203269 690085417 295590280 318715336 129027317 749437751 164621327 947721829 615477464 887686286 823938560 921145775 730661281 877474859 155544659 513984663 407344416 508567806 750462405 773419046 292368465 994747451 364730127 940464023 325044077 542815975 606122616 908685754 871354286 955344584 5419732 221223698 424000359 492447993 591285573 711542351 587449665 606316668 390682815 557075927 962837237 989529011 76896612 366032862 931475388 959481762 147966807 211764510 266477320 514927800 971201492 978765811 584438690 834511653 136667534 457245429 181144799 831711041 520269643 717306559 220656538 979520759 824604609 971663024 541251434 591630226 732453322 837917713 612572738 927550754 458376962 654561038 615909289 778805648 112235441 136092956 476431137 628181275 780604507 976398194 260073736 350339290 860045092 965013256 91862454 452511373 923214036 949001463 327948136 460481432 83045119 465312248 816380265 897248677 499363812 553001323 303016225 351134310 197763748 234735725 306892788 419747611 935872187 957896751 73033787 103698869 66981477 93587718 358475190 575959263 553239356 743542849 606387648 615116085 463641750 954411553 99736850 866717845 396820317 916788635 817872016 958139682 862091274 926219877 315354385 595611722 265053936 898683381 80548781 116887160 165517260 755322769 89712633 483619759 822058396 999395160 901692945 934285238 855495554 945408431 337072975 976456041 80609990 415090276 161071058 410206306 476402783 784766365 451305237 776697855 316637911 398495942 716046336 747675834 6978566 466742147 356959750 913703820 356553091 643728841 535948942 544867643 558318253 789397933 605444180 760366008 47270035 274046868 452567738 810343101 955785508 957790523 349825546 822072437 738159888 826236701 648043478 738224089 598402860 933541097 777915779 977709670 762528616 969534825 192324011 262549341 671308884 774152915 581710570 602714146 287914345 458680393 11627223 564780536 368301049 623727789 81903680 305335177 176924403 435004298 84914904 303009530 934864783 967027161 571535447 764127011 24315762 467682054 296507219 718574944 705233588 830366788 846527235 919532303 17757647 161684564 921275422 960152796 451617844 908139274 163794497 953912776 227847187 848669903 226987015 847338911 661930631 756224063 903678274 903985036 430818778 500203135 80150746 716994761 761072010 786362290 570191529 985261964 305150258 463667461 302729411 634986967 320184001 634085099 874343822 915405546 910250637 957298464 100392600 544894219 680603875 959220162 895754932 957888052 700218695 970883866 971939653 990595171 706488103 813187047 537081743 665000302 85758754 827978460 669142171 952103817 543620505 853378011 960481624 984945506 5603561 921147148 188119947 971255271 325036875 514820693 619744215 869075665 218141350 804145557 958319030 993095276 546608739 763180777 49852791 402534496 753409933 889882988 150258613 633072185 842703867 956458072 368640307 813552485 931365178 939361213 964245388 986513655 294817011 475179315 251614386 634978717 8467427 549542806 266025371 611741503 506569433 816476215 411722226 532774128 532377929 556718874 937529694 937923635 734959166 856764713 13735989 150141895 428241823 437953346 106168800 494452862 221334225 577502630 975240572 995713331 612398622 882285830 316182499 471529674 317740178 335693080 483172577 948697405 61234286 807652307 184284251 407762862 150924161 271533054 538818828 999733507 106901668 780599769 923730168 979233016 804430996 858633309 114870110 347570803 946727567 950824451 54513853 227109937 12966524 673803068 536458581 687838775 306518862 383613881 302720509 526300553 309241885 653320924 938273815 970421374 661971287 953884109 172345192 357358930 996989489 999845877 4855429 696607210 912171581 958270314 16521102 224324605 666191466 898826553 936805064 948383317 270027640 737008833 12857362 420580156 739841235 807525331 944781735 965746233 158521778 331428155 752129636 898140533 698828636 824560628 460612382 905115944 883524256 997254424 942397440 999833324 850012545 963616047 838542812 935827924 923672152 954657354 281552856 825307577 320705407 859763555 322593990 615294409 511167617 830221113 131588969 602829782 345253586 378835128 580331796 741310468 341607397 435275738 716174216 723311357 569460320 786525816 65291847 705453968 333234365 580171532 368349627 599038822 246543858 285839211 851008274 873020468 919377444 995918326 956437072 993930682 996437977 996655990 772619858 879883978 481100048 699775225 729751593 746464847 977040598 977987048 458400348 850632289 336628349 720424876 981867890 992418224 187314293 738775213 236219869 569272960 660231243 940115624 803090460 934124325 492825820 531843648 479823043 960794940 265406827 645123409 154402956 570833038 747658529 757917442 743918115 768467480 255776889 811302072 387103680 711008781 49128316 427307016 162877259 248193647 22294209 448902031 592662775 852064949 124957278 908353881 601398500 635540271 320843706 615963297 486043606 833542334 688421953 835020446 753428833 811280552 475593930 663488316 824509907 863335528 784662929 921248602 82497537 487083560 77192436 98952447 551048765 662109574 890096254 939102273 636500364 947158981 927011198 950248600 343815054 708555350 814345856 987277182 250198855 780575776 225244082 778786650 180276601 898540439 151198189 918649751 98951185 129701487 152268925 639384201 705210702 899412325 881642245 884917392 330004491 709589195 283777894 798329429 247594984 329996781 24264953 533040231 947836459 958210382 263978747 557724766 771532122 951974520 68875825 508689607 810952898 974266214 435228750 468166837 534389078 966569715 335372934 656572639 91240886 663747868 409820410 771658361 884281517 963711699 566568146 914864874 693525216 925653991 891154000 941491058 425754764 591099853 430912752 645316735 82865509 576324933 880367276 906245738 371523484 912217290 346104093 879632994 381258217 653587991 173120682 684510283 771845873 913687279 829484001 947095985 154343256 235224963 826943629 841073528 441414490 982314094 866865365 988363002 863470926 876458444 193139724 255586218 237118514 614831526 419214809 567766317 912135170 950783195 715656422 842811918 323888923 901836151 426690919 622667393 282124021 730925563 346670344 714241020 699459638 830327234 179145733 775117940 306092953 767165732 411722571 696564178 8407646 955830337 87864378 258109733 964971705 994807072 785949027 913592418 294335581 908810539 634345544 980378312 423332647 623306250 606775742 941342485 149086606 844269354 719909948 971224025 267461852 997523016 122604165 315850488 677804279 916273782 506734189 624028525 239313216 844792701 452203730 759592739 131713843 835202278 209541801 829784813 451425101 623514386 664507993 755050256 884878035 928992688 11790829 55062965 469467410 621063665 577962032 891605026 754186229 854648911 316083359 316956125 553942878 826530502 536561043 672876590 381515916 736624867 980279291 998951495 787534176 965816393 1183644 839825423 346221849 736542718 429541417 929869505 676052878 874231080 292868021 326309205 854946738 914964246 36971827 214990358 197725984 640082980 573089032 819058895 648419161 882735510 159626278 717203060 471128207 971129792 489276230 719843556 76797104 601595260 399162009 954919282 824203954 905297138 804564757 990199980 983273407 984374379 342931628 459274277 603621694 745867803 785155807 922886726 606655898 745424654 854652105 967274027 606993035 822928986 828319165 923706976 672874499 816800147 13461735 449759876 512949759 869234188 812994606 827624073 640143739 667144981 905404360 980333803 686883806 714058949 578656108 908236744 603180646 963013016 327766336 468470769 505203676 537395865 862114098 894797209 897224086 912533663 408898685 833556574 573579001 608654966 87279824 104889546 825676542 896868569 678807261 738054646 531008054 646551719 437911432 873661626 962862355 986779525 194640331 663663884 700197909 829353461 779988116 932183294 21554968 866450292 462341202 575225741 546018772 586453878 867903599 987361461 766270372 997987553 853004411 853379332 929177194 940351526 61012969 476295819 312797087 801676205 150765697 956345424 383756292 945696882 620281558 683083302 577447552 974880586 221391543 844410834 841087173 973611302 970589387 996236495 596910479 767619893 369652186 839817777 104070309 967795844 718846096 916904310 221546169 665904478 481781955 826011721 787003869 924729780 126154772 684924706 658781022 879642125 28904206 939507151 316917913 803199591 554693266 680732190 995256670 999048402 213537646 322687896 716978903 746960212 84567130 191032161 578724977 671828223 884065657 949126530 913763135 931757335 219886817 337856723 129108615 499845382 411612397 744108872 984639345 999607908 672066256 783461411 697813768 869703367 359875477 856307200 768828860 877413853 784265771 991373068 735938425 846604947 504528509 952632432 748958474 952042307 252138380 720777807 185130621 224647540 777077891 874612746 695067354 957559529 200004789 544012911 915351671 938615530 188407112 350069084 458857305 943143675 864459597 939007379 238595583 474427021 495521084 811166740 962493659 998293359 210997324 665510244 277903624 482369072 227320958 558839683 883806192 996303344 716428238 981567639 337891316 592471323 461739958 597961576 637143241 782513875 265664713 888939097 804555940 968472282 354258613 812764250 393154019 988225146 472544644 922409467 280603567 808473314 221995337 610976846 604135065 976031452 480145642 531622186 192685564 329491669 942677552 956750790 369002199 743186390 254887864 753340921 753508026 937080501 513923405 986223213 383434640 408450162 681469307 777560667 901221850 904321523 290002299 845657210 538627065 597405863 151109832 515511970 231029458 626836592 660884694 725697856 934802 785014106 92501213 893288642 664101771 683503960 188169622 339585799 754684533 775778169 607448083 851316588 910156793 980553897 273782813 550662748 196614204 633692619 982002 239922150 165913876 500252979 892832734 967679921 845624976 958677738 555056773 558478154 954613330 986565793 651771343 758552072 533555484 654558425 941727499 989239524 115456715 598314462 834146447 867446462 798873813 933116911 234868040 493922610 879081285 972965432 319869891 937761755 778209937 931707786 339434092 754303846 233450789 594821933 607106830 766570376 987042669 998614799 241006401 343936698 381412067 547029217 775572271 909358312 940260223 986020308 562475696 647580236 438246731 560839104 720728290 727807697 649169853 813282115 546892870 961615830 388664106 414511826 356311076 979973156 962708484 976363091 979283953 995774552 438259650 979052155 652465624 886333427 721779945 978957187 532600742 962275768 637167929 928242632 895266183 993991097 683497811 739588801 615463537 946312671 646499702 875133238 867766791 913282363 778643025 827224030 561537278 693898039 850453213 982061893 894132060 899762768 297415103 977371471 562534321 964341250 765894768 817632919 125513387 343326397 245126339 725956041 848722294 924576515 662511190 701732079 54503373 648475272 83836471 290401182 573151692 752966900 919649320 935758569 466468686 728218718 114669745 828284974 844786421 864231915 417141342 622359665 841047553 885262326 277911809 654191100 930371449 990582028 955970464 996106201 745246473 746775295 494425134 654635710 592352853 605173199 20188616 33154455 307639526 456863885 305736561 421612072 671572533 706945317 555430022 765853821 96506815 310821839 348968993 785761739 937565236 937864504 165093049 652691236 25465509 913859778 590620732 823546230 254978158 262401356 540727317 799528991 381403399 816989484 661263527 830880753 11783190 35249217 986452778 991230394 617063653 746464815 166826939 730513054 241014937 979991340 778021797 786935530 620063621 678793937 255408015 527096173 425270801 660418489 296069139 512863638 926379529 960312376 10100583 380659189 886643226 933972056 250897447 300645957 672374634 823754502 52686686 454805422 708771458 869148859 843047411 983811191 895231626 989679132 1526265 813644292 682915408 766050202 58471064 229097473 130518083 475432173 137517221 214027803 892093159 943731514 101201021 184660638 746638434 929723227 843804044 933764681 776170903 826518356 43230338 853748184 789065515 867523765 877044333 880410997 471660141 961182952 799503425 834465195 110745141 634759457 733060592 951218811 487681232 760756706 945606362 953601978 416626594 617086518 552387091 872344934 930743940 945539176 696472257 785792458 285358257 977613394 470067264 897593794 78600585 188124942 27271210 313292094 454741236 521615250 423235764 696726987 122330494 811273446 205777124 981351773 684156343 799694506 99672324 965883850 256883281 269732712 778296986 801288326 573098071 644037690 645361921 819089398 931222070 941241066 362883269 857049170 647884386 789938369 39797936 523904891 36480378 204913571 264006758 308795238 85910937 242862516 740127082 748940964 114463047 642930760 75921293 855688532 819676799 910413839 350340013 553114026 838680844 912470959 341749154 575314609 26533482 390368615 210001257 790742145 468451437 707387514 392622813 608046755 586742534 709086931 235774181 726800833 203367523 577565429 679976500 682065678 33335297 327816959 191514742 803363131 500081948 539790940 228884378 546967356 377730175 808043914 522814896 801818876 844127293 887975838 826638640 844907688 5664826 360257001 933059907 977609716 272736453 608381014 133883007 850250272 640632711 898030339 84956821 777609124 655643467 896182660 731658314 890367181 983253777 984124553 922254628 985332014 945518736 985955233 946229896 950946361 220443195 387356645 729521793 832961627 385357162 390718244 960770008 986206846 40414455 213368792 330847670 691253491 820863339 885297258 115202187 451137960 472924992 483760239 381005114 640484516 339358496 382329861 189945795 654134334 214660489 303425322 198475819 961319370 125397993 697961887 743902211 943878681 921170004 938311924 933489391 976133306 661432788 949853409 426910528 533512543 271149793 710198023 450158646 972386852 292937059 856080106 143515382 386164766 258954394 831750522 193870829 380022167 397478879 515929163 292086936 615748567 288384122 912091933 35081336 203959816 462624767 929393948 69725224 466662583 562163118 965362189 546075217 591364539 650392843 933863910 512478983 948128252 363336521 385641089 696953031 727978943 628593639 771994241 443801888 531246707 531054633 590167211 817253516 823557318 630634864 728755445 282897892 420926108 303758583 799914358 748093282 785161864 265325770 494122015 827795350 980989447 775115522 876438052 910584160 935041031 315037510 367542830 493500856 600286235 296176119 382917798 15110620 189167326 390754115 968718582 70286732 465470009 492502770 808273353 960551017 972856297 4748083 638557734 679431824 717241173 720497941 892006980 949216247 977770501 508783714 686992236 445637371 682187841 939770278 996067763 526003413 854458336 228421148 709706072 197398759 975837125 427860383 930352990 244244642 607627634 159300507 680630421 604959460 682644328 919704548 998216543 368140850 508224088 199951013 743420045 976280879 996785569 301295172 931818940 880898028 896941439 124953858 187552053 689945524 771770602 223879521 396713830 519543541 699878670 974090470 978724980 745182006 962948533 991078673 994635635 133963854 535013020 571580420 746902815 836347360 842037793 514594901 917667637 878309084 974827515 897847738 931469746 242492549 800723090 83829870 102398584 541140786 714460761 155779666 414890685 964917081 994134480 308718768 920675492 970798853 986916764 171171583 746020488 882007315 944528853 160995190 886619330 563417398 977240301 21547529 436439442 709297776 805479983 139269881 497088821 337402381 944794007 881130972 938810632 479660845 587428658 930393581 979920085 356024433 728294481 817350771 897598219 406788806 860420636 946061354 949621757 452783476 811578369 735549600 792284457 221454722 512449597 795637956 862845132 591653533 793617098 20918608 270023370 102919933 158882230 210942930 510535649 700988560 742132129 977712113 994960598 190171512 362078402 150863914 674744919 4055917 627191917 457365739 777828154 375224943 975252677 764887256 815228864 329568113 979471019 755425165 784679608 807270289 875147179 772134158 944686407 9524290 744186783 132339406 607162648 328406992 523091493 315253720 749972352 587104786 615526553 713213448 926540985 545409927 743655896 452733993 890719298 761793033 884062528 565243446 958655075 35612444 434939808 234493673 239201402 524519369 882502475 635852673 874481514 307035129 568701611 615487671 711502746 199196606 996055555 830730054 962128982 380494183 653997044 529721408 545554876 106925417 585522753 996853390 998311514 227119194 511217880 430261126 554350510 432319081 615788113 830380560 954172806 140046058 278105754 880891082 913150379 754018927 928418598 263040987 698068659 164648701 794291352 915053265 965896747 485873390 708066708 309882417 940524564 305460624 612708406 128781949 776511504 967356088 993473620 970753075 994267412 682564100 996165834 855992395 957626033 755242308 768166677 797285071 873376245 469894533 682426463 229565432 592783648 801765768 876335980 542284520 929631579 452665937 636990525 657020217 964304272 119109980 892097099 91387953 792987742 626124181 784652085 120488667 233378701 959848842 969596355 447368033 457087457 601297488 780134809 78539756 675598233 219074333 354319829 395278946 997985782 713820411 776421003 161516107 311134504 773425208 849356136 686754387 883059895 553085806 858989291 432716470 778640153 264835319 916358906 467151054 904737480 175632800 622400739 638772842 708071949 426065081 922385869 892721392 930954271 460204882 785944999 629760362 632383760 341781552 630864801 813559837 986694818 392037173 830012114 921785179 936286508 173366169 948524815 150163567 221895369 887774729 920456565 266577763 327144809 23888434 365257955 255074907 310316484 53525308 233628024 364555123 500835476 782799372 883830309 631760123 896616022 753486602 869769348 28360744 924800806 364942862 471796463 313774655 896762619 822772293 839313610 41833892 202220781 364301715 665828117 824993095 990548168 92772949 134378004 281198742 719683199 17536027 567900108 404451520 997012845 618519735 692445500 548254696 663313022 275185036 412688386 405252590 875451506 937849868 989912716 457133146 858899937 750293060 875840065 782054330 886596454 798421413 987681744 167180309 192244679 276953713 697279699 380987838 448296604 526387141 995643785 116215053 888594515 491138057 647088158 514725635 763274799 514706294 640487140 287613245 766772711 646334521 816108982 336438480 595728802 230524482 665340105 207365674 583649512 848801654 980846196 662648848 772028708 392431211 979553090 544916954 747595207 619390999 921327635 6557369 208708910 20718003 536114061 134180542 422115911 644817714 718334391 738015300 899253682 329509488 846740877 269388289 452196056 973971633 995928514 899399779 914735355 114998916 665118491 324830681 863690871 543978987 592226597 245951763 342793816 700382884 999914671 334799330 950042312 795817131 896533794 777672941 898880567 609827453 683067443 311044059 643048693 135714669 825411950 107551649 993203152 880774680 893816879 791989063 863775513 175033284 365972118 733698093 873042681 821349369 950914844 199665033 742797685 674042751 689019115 602219734 940031801 378456833 532561566 176325454 963927837 345402080 886370812 643778222 761723077 136345155 736078365 908558085 956523458 260458740 519133429 335546664 877993969 685373200 770245335 791752875 829952585 133752802 406707084 518212074 760376137 803499393 854318121 156775519 521248506 806527971 831822466 345513010 646975079 952649826 982044601 146347669 190099266 582894286 741578417 852408583 934910417 290720092 905727512 311896096 555374455 298307253 685352587 691088893 939274561 530881417 818999250 431919392 902168991 962179491 996524885 315217762 704671394 269447673 897721180 545132092 818356055 859904207 935011523 426460167 833446333 627717200 801545913 189439792 216714724 274924776 940469518 933269419 977429459 345028456 829374371 677221602 808156462 491683849 818907307 600028851 677546025 956658380 960004769 189896502 785866563 888864367 973308104 408164882 865166855 950537666 989704589 705107339 839124078 414181474 749203248 681802169 736403705 984249352 992191876 564827249 872744016 119491167 656661084 161068965 237903001 675707168 814891397 371300471 644112224 397393329 434606789 926052324 962345111 981917019 992523885 476562425 800616298 760027494 800128662 54660373 128031593 246863204 813059828 678653891 701733902 113473166 151365213 120952917 513704651 874801983 948012433 380854240 454410489 971784450 978848872 292413392 611789815 82782770 214853815 612831240 757321927 135541182 405640994 791027517 868247484 454124779 530370862 276128977 565009609 1833079 275093181 522083236 545336695 42293117 729978939 347575013 751769605 650123821 755994899 897366206 911007107 865193438 865671143 16173838 842691975 884633495 996435713 202898724 374918145 152833241 611110151 358450872 407507945 537361643 762555306 267701288 337519478 892055967 914191587 625518603 727317189 703080794 984532772 805852950 845346063 165950279 461972524 892526362 988647757 397939166 704273047 808089149 951155466 991321932 995985508 822237489 917714966 625815743 797106294 263257268 653123924 174309065 925746032 895287137 966815793 952027206 976865101 684824431 957858039 11014941 840132325 391613271 909119163 240311693 541886285 904222983 978247194 87983149 623963378 138067662 363952137 273436111 445451271 319120279 729099484 261832237 690000351 632396123 804834253 876789567 951573044 749238278 824751053 573922119 876627619 15219322 295791499 137153424 943437323 615716349 960447342 908441069 969125673 587340588 715113073 428666522 944893328 505976694 684240278 317396906 623770134 925248709 996725569 549490693 896279739 150802548 933587413 634421712 648102951 873845288 997670769 433394566 861815235 256536495 262121346 212258835 243649102 242419766 899643136 569785346 583268418 163873006 562364563 574546515 779806895 963294759 973785662 146695402 171264734 328968367 886305745 915928789 990096816 641199961 913863661 929365808 987122405 527827229 535772723 639823833 886683658 731948672 934572371 782107551 935282666 225427758 840139745 403300754 743282519 391043633 756138566 716633332 974880190 668086618 692715185 976691111 982959236 188198537 815670642 241493579 438652594 781095666 933432614 111955314 343311641 145404829 258226276 255339382 777724788 697553743 990292968 114833230 338591582 43532380 641427935 374389673 592055132 161578430 661273250 332680089 671069609 967698648 988787855 498843123 989922756 710068889 989735904 721244070 922250764 62939382 135387973 428676417 548262725 667561407 993460999 114177679 689621646 420347346 585296647 187420771 584873376 274921367 738226356 563184723 930478670 321882544 927701268 961115269 996444012 374986498 692406867 558357606 883830179 487393 975016557 171779569 275550537 195601437 628479879 931235939 971749334 684629269 717354575 112006736 833919427 871688356 911319040 719033030 971955397 164987937 275163021 202165873 502823353 512909993 640683643 225534578 868156095 796840216 820886186 15887408 379614313 181929917 223990216 670281929 681833548 74283816 434761889 343377672 559666184 951677944 956457694 8026316 531331651 684601939 953458377 25229839 222387452 165081044 910076527 998930781 999042162 81000060 463668060 23243206 558790138 360105381 833203299 979412548 993536298 224224716 387034448 986802308 994203143 106104599 807814194 980851265 995127049 382433671 590660305 815276707 911142453 985912656 992374069 865792190 866260018 173564174 404714477 826248354 835428689 300228146 731017071 990460600 993762884 219533093 885707617 409138333 661970995 939547097 952142580 740896138 911104702 109399633 839276412 619495670 893620303 557984858 591816213 410728866 588385248 236064958 892273280 361557595 746546307 346193397 437316332 194001283 638353719 333528100 866648790 753567955 819366250 115970798 934779331 872764293 920303485 70535056 226469995 382868585 734645698 362858440 703036589 739458209 930950701 367893947 988126294 138482140 443909647 51746318 189528838 460281923 507411116 657342411 945640320 348312219 546325999 139040327 910224831 315882844 481236665 992482367 999022787 118229729 390335176 638881016 840029075 458780314 978495069 230161626 947043393 581766700 639144522 232122937 876440151 456609059 906078083 704973671 968330548 172698513 589700713 285172134 797163285 451745279 692318548 87744639 138769598 248877866 931030964 506030514 604424537 6774688 63824855 271117465 677058636 373993883 993457825 791416421 920923047 574603754 647239743 724163975 820289286 173496632 565413303 32303825 257363423 854900875 859528901 247988312 801174682 250630808 281020937 555759974 926089263 697811619 908885640 758911385 861894042 880244352 924684451 353176281 868570479 299346942 620553741 549650070 792908050 693452041 892486011 286042389 589518527 787925840 840794223 282562990 704700753 629536213 976711439 404648448 912732577 492717858 846031164 484489928 880413335 849874353 906563737 413832866 990880295 585761346 973646094 829741040 894008377 499178315 582444668 381266771 420796597 988589265 995227445 28210831 230980642 116287301 555160132 396082580 758940494 502891833 669068126 798686578 914546459 864154902 972724566 752677444 906783064 435321458 995578242 106803992 526784177 390030934 741649045 100446159 424904185 541495062 886616480 471157041 599353867 115130048 421380808 880803343 970323600 972341346 975956684 14607523 513375499 790241323 929927239 936773781 951445059 643268532 776582020 429479683 803127924 468983787 918706282 847698210 903399923 266186120 785136893 191860524 237498118 882435486 981140408 990916314 999558217 524179546 759708167 837558409 894154475 157577975 683570888 553819940 750597295 934915951 971148798 794128163 896027503 282811204 605116012 885272350 896591110 865963022 972000822 590569845 880996050 993535386 998390187 919471433 925085525 717363765 911971227 156533426 294175540 610162175 695683080 587384871 653402710 180052874 647120763 786156823 817449456 545102081 842766980 757563056 988773665 362503472 687770960 408559531 836855762 657613452 858941177 328657320 591464110 714005153 977807893 810290351 880694771 836851149 838690073 400245570 772904627 783850039 928771053 638231944 706392460 864130743 946628867 133065254 503617358 66081133 763536582 395798743 661166126 520579208 828442401 88508979 971245588 466712877 864214643 147006561 560059627 179875106 708160772 113331724 973483259 50885554 992564909 196819425 789345540 487574777 780419958 585200155 773374089 961106316 961440020 306204423 624138656 372548906 451631714 682497351 966296681 869247710 914672601 938263329 960453245 772925631 807670842 441125834 911974411 134220045 826748321 588634074 760020726 938563137 992002664 248150951 655098723 260781911 292067322 258191141 620410554 582891437 905941702 44137841 703791372 281408721 771391056 806931627 906718809 443761031 778316611 667924064 690819752 178867060 205728056 195473121 214610052 365412702 826821477 842490262 883883282 823821368 887881944 779631937 843222493 959161253 959815203 957068402 968187287 998352349 999856508 43130761 508660879 914084625 988869443 959433951 994039868 403710296 860167298 564497705 997255057 259737924 384235154 940861743 952862672 190737420 381067506 227584371 674027362 607976416 732406263 927541934 954901496 637323741 881017546 527970521 665549737 23469502 160857250 37371188 416541567 552344818 922329992 95200314 473325987 558826958 866977243 651836676 922567307 163683016 634454746 213487115 316195298 297038563 659395354 554344178 685528382 269356429 334311891 347421755 637292405 678536877 949675662 552160745 614729410 810511374 850201153 966690319 968818114 578000936 645990635 560081623 656812434 493699312 609847685 755767736 773991458 748453724 955456167 182314238 413226479 697236017 733162078 717867502 729792563 749393933 951729380 531791796 771122001 96992257 839766409 515179261 850175802 98276810 679804650 407441640 425131708 753762139 959843240 697699363 731782664 905890651 938885012 848056651 858480776 663559058 812284493 177570219 669969429 837040794 990580833 32077207 367468321 768534685 961554220 424841495 857457229 637635370 949704308 950369460 956741024 445226566 850660795 590911675 642739979 352815207 832916852 613899606 991894946 686411019 920677863 658635461 900746795 75728122 926848088 775350818 836158621 774770880 941621196 519617853 998823994 745655754 874977802 219545430 885599651 392295307 904622058 430149132 891575540 567792054 795700128 575960544 716492947 950551127 966763096 563315051 745991184 343777352 724433516 952067325 977953358 13575180 611409160 153259621 611405382 463935632 992528151 596839280 618051161 578924028 911134309 138652187 253895496 525017798 695023812 387192869 542319217 827380703 920433971 649444631 892615286 510354870 594095795 748901384 829073107 609059789 865015996 913585432 979270889 382135352 598486703 168624858 666562704 880645025 909828241 670784721 887905106 276655219 955536547 417314485 951563922 954363410 955291217 215146781 316392657 601023269 650995553 289308330 768542842 397982476 901869279 298001436 329530098 82900488 878276355 906387524 925397789 696170017 771609921 438397391 520724137 504375607 982501713 935492039 975728008 80036521 966675618 24504019 592329120 701243523 846367495 387294090 476483156 768081473 839286278 879896286 929065350 58969934 362086351 633691381 877528622 874588026 947132921 591437438 777999428 125286650 381772412 729748496 933654003 900457914 901689114 865043691 890049603 377603574 379942025 579117499 725936468 115044534 940025594 875018091 952519573 927039747 970621356 821491236 826170488 636606402 941622105 78289618 884734248 336347885 400618194 659526052 822537015 133637813 801332624 84188493 200652930 983587905 983990549 569459381 756815168 632686984 854175900 264058420 539615094 320649480 950777768 420986486 912161250 524887995 673866011 96753313 277769876 662517883 765444786 193049553 588299680 638332221 727398127 31424664 884388003 786555912 898924987 807844319 986375990 554424473 763039392 771709410 928824923 962509660 992809037 744795520 962971822 195126522 467551779 412010141 548247399 281805132 612615137 164646053 465393191 915831581 922924812 338119019 527533018 481850678 611594387 552174631 653361758 433817101 819252129 109022211 321361037 325216473 608686331 661731580 883643208 359226354 509945674 526934777 990556913 532891634 549903679 656582752 939182742 602299610 924140700 252974831 479874631 971948381 981425172 650494836 886159734 961190831 989130618 871603667 984563279 255152715 406944580 134948539 404582066 984051998 994966139 387355077 738070228 749292879 858083621 255919598 902249216 885453974 932269736 801874474 950240685 737149594 950883799 732574144 854322936 665820131 675592518 291241575 546509906 637152045 652759729 849866802 975127479 68765617 783401014 927320610 985144654 556061760 682977178 638840663 920859857 323655837 555728144 62070578 386157951 923796949 935044969 473920411 642914329 358861854 560329756 352937631 432087905 953746733 998123810 286045466 464710068 915420232 989465111 860406658 971588001 329401090 562679176 790153291 792964287 712305648 795512818 669679591 979751314 560609046 570856849 188817055 775884470 410698368 491700368 488063831 541139730 203192359 434792409 202947347 786501944 548045939 800175273 14483881 878565533 964195365 986731387 512613964 648613828 408551985 575689053 796354853 857678921 134418654 239670296 783534853 878021282 849949877 950193480 326794368 695786822 227244267 621688241 881451081 976846559 265793763 536985454 570127006 688699384 452649856 863491249 658396450 959750389 928574667 972088900 650210971 939097728 701789937 831712221 726425555 871400793 307812783 457087099 303905089 331200927 202532520 433970346 817549084 922173542 160792496 642397201 826838221 884689659 981697223 983291008 47818308 462219928 484561311 775412806 648610361 882352159 387414473 870398535 89869038 858749673 496307986 716731297 421460078 549501077 355551868 886985481 764914307 787115043 786074791 854609006 313721525 372352828 346014549 758671019 63875535 786275407 749574060 929430527 562240738 683582816 966543891 984609597 700303565 928858843 339802960 356091900 635246164 648388649 930967976 951588116 384346504 925378640 327231728 454923310 828237447 847969544 893255609 900930092 624178653 874405288 983035286 997807077 432162739 732353401 876935179 956742946 27787998 225244649 662246641 739429571 734224667 839814656 229743988 661062898 166469147 683337549 990037286 990703211 279174681 585911240 614855842 729330908 963235819 987766447 594107316 923459565 929060584 940842132 104595666 913013801 100095665 809603758 805892692 809934095 740705977 817657505 998734388 999686646 272186286 644272351 657252413 787309859 585620105 696743577 375281805 376691881 757650780 922960445 219420109 479728056 437676760 932516435 932293101 975792812 239364654 792862945 803939906 963826835 23530712 715445227 170315763 871323740 617603917 640903124 556611762 929328036 949281671 955939669 265943480 473545145 283494027 910662019 864290877 977574766 66854076 552838382 389146066 896375545 955854961 959069803 228209732 537933260 895391569 993755352 962002257 989389434 328581526 728149160 530562973 986465049 293483097 406589303 557887360 892621270 542601227 826998947 669205947 707225026 862273002 895539715 773041708 962419872 887903947 913941678 757514805 800268487 312506563 774630903 576487279 643513118 399966428 692533665 797887993 811267165 510331408 560701440 477879396 752381994 888381059 952018818 790602679 987046334 449498903 778438517 858876251 987045854 146801434 856557737 475500386 717725052 805027825 967709147 373948905 409224565 167671115 890074155 10783451 586205253 191602692 405344997 225315129 687218826 960788231 973151484 39202747 950974133 503986562 642037013 381395043 967997604 537451503 792646660 75987415 719483586 677444905 788805595 524086958 687113020 240799078 361147871 272011723 620968949 424740906 992529176 633325772 952974174 252215593 708401541 522482335 883822533 296043117 736040107 435487193 517577432 674587545 906117702 124253357 470550312 186441223 387620992 219728354 788420225 739085606 931596610 214843 265174944 262307593 340590252 598882932 619019438 260371966 731027516 499724556 774506361 869196047 939689178 521464861 561705909 979195070 985670123 881489254 959600073 393083644 926915433 856169538 998542853 964085799 984184560 905461958 986884290 888952869 949980718 763384677 793754051 393841531 498525017 955801592 974406697 241615283 707187210 422289424 927495793 957632153 962501270 730179110 983091473 484576354 893935057 288371343 484426951 852946774 974085415 460779936 983376420 544246410 943930050 689398587 949358576 628448147 803732002 397730232 782714775 263411908 993111951 11144231 284784959 606955990 861368556 117848018 502727055 749875415 912671353 881017272 955650675 102408767 883252553 978647789 988335111 953347345 999669450 812015958 892452359 144976774 258994850 703307235 898802942 741823480 858992189 181284375 673906304 922102068 940683601 158607185 917353049 623918505 717249009 135329450 733603681 785715496 845076359 399643947 777161003 707395052 991312413 29368284 890558878 448454992 597178974 682823963 775287395 32403498 351265489 928585788 941543772 872313439 962624746 764400652 875484182 113004100 268995891 39019309 326774835 134864119 760741685 69033717 484639208 637981846 766482309 624500694 766806233 914798563 920937655 864772643 896849783 946497225 954364116 326442249 949726429 691802537 957882391 790780151 873307930 865667801 910521561 822512093 887032461 537409248 765553399 717480671 739786961 79973314 801248052 260966923 676342369 652038468 757951195 42783643 820161565 2208598 49586863 679284014 842008279 496031056 941538036 507640932 535253972 383066272 452747671 909339884 921846316 534445932 883165674 620576680 675352866 48440082 726485051 249308600 440561013 448878398 713084762 281923387 321451086 682875783 697640938 111808939 115058169 384628314 538681823 323716660 764229643 830079224 945445170 413260164 887866640 897264698 984742874 435546838 836815079 183083116 721632067 351765231 840000923 709261949 857795933 774545041 788523322 918382162 922448434 47766177 313628455 575776984 824319214 507679361 924833967 500735101 839198418 782659726 958000069 334376375 956761180 934516987 961511886 995710663 999847152 168301339 998464583 613243185 760565110 794407545 968431141 446704119 498125160 573377359 683796240 761301486 822073850 486185162 658773427 936209012 971874570 936431334 964844726 167857988 355669129 404805389 724584999 579747841 989249895 731231494 787183850 661905634 756676561 753161615 957586121 342483321 976130663 518841933 772948117 164375398 360343000 458075751 818809044 685159236 799496970 304626826 615778559 880846544 896565360 87536855 974685217 50820582 430180015 228038890 326013187 615318652 934591538 719337019 918702950 378836314 821030469 859068609 989363872 880348091 883758910 198084049 984459036 906179731 907316346 882481197 964470752 207574141 986908224 127078731 796460732 202103015 787169800 437035692 552498525 792500176 929689889 967341407 972533200 799298951 895530528 131937520 242566062 949565227 972947407 715454782 915572354 908677267 988970400 818492485 964769934 90581875 639010751 134933977 967617742 274977008 685281797 927492415 993072931 547750708 564956841 708843949 981357714 139136962 591147739 864015106 932876179 436748104 805499293 889778755 992908278 561259820 748824409 857927226 962320871 982158642 987053773 677112618 788356137 446654120 519428899 193194965 474190858 535263343 873202965 199676306 568091793 188420341 375214000 996691614 999816371 58878922 649914615 559731092 588552595 63440828 553559439 229184091 614684399 154151902 459230565 24918138 766956375 911123586 927279299 300706774 801849047 247141876 945795874 15847797 308350147 548607872 781200213 258767225 412574305 793084342 856752904 314798977 380414812 700742677 772947357 330127893 833636416 534210196 712072491 528700872 821170946 523199163 894894898 481551952 668360235 739769719 794874328 445210398 513614728 857163356 863520431 116413510 223717183 218151409 237228992 879134142 979841942 900557782 962223351 991478002 998973826 979762387 995267109 889323317 945456154 591463259 748766631 443090288 455800605 964928300 984540491 645945629 975576679 416300058 867422952 269545816 753555418 2468541 616564782 757086839 899319366 639742813 800740479 263167297 540480168 896117116 907927988 65197250 800468090 641100981 913558750 193246158 845059765 361371338 555936053 489970329 727339992 697422747 744063946 519036810 846163958 472291634 969376368 378189074 606192352 42228387 506871481 354217298 474891114 164438676 960494230 162658853 959935094 712007037 716190497 217992310 826490063 468290165 900735906 971945484 993733987 913561013 942255815 986064819 998565040 12384183 295667397 63851679 459716226 563484382 662169647 661425870 999668011 264479091 671352726 336205088 970070160 328224791 698429247 894225386 944186917 963552374 986523637 95742333 364390707 27507307 778718527 429748136 848289674 521180883 630124531 534858153 920682895 949580224 963490542 986950114 995703402 188885058 643057705 346056071 616627936 750834582 972529645 701764662 936933073 822140390 829825863 42250964 583898470 538447378 807895763 319576825 751362401 403561738 821032711 337869298 883454976 448395735 939765004 470606706 897848764 691682333 900738304 730239089 876226936 409944336 676696055 509376696 629118443 587726454 923985533 653217535 753344675 809333746 927960914 465348263 864717554 53350208 840968671 118952361 930976497 690460497 721646820 831633988 901795518 926948048 995246461 977523065 977543244 471984038 869906883 649380838 793274520 320507522 683127931 538806187 744593483 355341903 602604009 861003174 876265873 24482225 468506044 653243171 692276989 252639172 797805391 574088214 628373477 873054811 902742411 851064351 975344045 262284842 521142816 703806034 778832594 322515217 335107556 390711968 754078787 695039719 723436097 77992836 596461649 278397606 896392865 157269403 258268641 389564045 537064206 136740202 676121726 629727215 776717908 286337581 642694423 869380733 944631464 519906555 607826831 343952425 920497894 493067530 729435309 465971899 551664811 830766777 854669479 360559940 914406338 246281424 995466508 138000479 685750940 775289749 904968068 209131177 937460139 350061087 707564891 682260262 937960993 431433113 626128473 223940716 875220712 712709539 789114616 322906841 469340933 262550684 493690256 745186483 797842307 577920320 709670018 9956018 174282762 35485358 730617674 47737462 230185051 379896150 688049037 685236661 837041642 354602394 864328489 982122911 982209836 710759936 874626824 467453668 657505245 132557112 982280235 550876966 921055539 555179545 691702601 959722596 995200290 19121901 830493108 111365116 798956396 802615919 856523374 456247483 618862585 339975868 988371521 104529740 844477484 346415252 793316287 940454853 947305013 639558586 775458623 843370346 906213476 737070364 805880973 448564250 613730784 90872503 223902608 950808891 952853514 834303505 931296433 456618041 483414736 512571281 865460497 502540280 874141542 242244138 290885985 582861136 822892703 3713007 48060440 398565993 906902223 766726989 877393383 283228307 442817290 757864140 974717894 853612544 995306821 622032786 666074618 574485748 997482226 134925707 192892827 672312918 927342370 568525702 916489577 330373802 396647947 198087693 924267121 352824556 794720177 872112184 991018021 368614507 783588063 890433537 978311985 88171516 673057665 213022346 741017535 866399543 962762878 378982393 612697391 464578009 553566300 523608703 625748581 671889525 814694122 547662344 773453300 958665779 979759148 616277998 655600924 248838395 371487314 484696083 561713703 711005483 760664290 665482476 992354673 306154864 546937549 703583118 902148872 872021851 944210665 641410374 694978901 499730107 849300589 171446043 404460569 753504775 769689054 766673647 907357019 387699333 544138921 980161202 985175990 624243389 752897032 322651756 463348878 45914288 302596518 63070078 760243783 779896215 819017159 148820547 241864270 398945630 652435338 633046399 712030664 231339581 286320989 628190406 777719042 825166708 866684360 414419717 831046919 370858854 995174489 624992291 902023401 368872501 629049550 639654129 862420785 28090734 630339596 599502670 778589862 575180348 676709870 420598748 719380542 256253886 655682822 927655900 946711613 150239617 288309194 521041707 649260099 162428782 340336549 73962178 355601784 645005351 713921605 705727410 950212687 506372303 857591770 26693244 913555448 989109163 996858539 127686203 326571883 742874686 868588248 366973438 413832604 799634211 827592416 890131407 916855029 982825969 995791170 981848980 995579604 563505024 759733912 756747158 810964270 486332045 617514573 677669048 748392545 803310101 985043355 475263959 780102014 685001562 907821555 712901406 765655721 472214824 722905780 296621886 923147409 361303456 853704360 958240767 994396122 490221173 707072440 237956390 304338664 10748247 133991480 804541287 872461102 686891404 803963094 758831259 785570673 516638140 951684262 468242866 726309822 981709272 996468372 124902501 455233048 202055123 791511676 361004531 512342433 722471192 961444463 613776974 713686568 59395931 635881215 140254486 244508225 356259214 390556698 57780533 749858567 439396820 682056659 141254214 326575579 151359410 419845831 936065470 999646725 215887065 497109207 799255729 906155298 200271037 648951205 484787484 870265009 502956456 946557042 922528492 988272938 166182112 606555696 820749018 886785130 583115232 654909187 34166842 514503115 72985321 705113640 180031574 949009343 469612213 966335847 942306055 968608276 496587130 670897618 846358463 926468641 230034339 859024017 68923656 476031149 37186579 273780859 253470355 623596440 923865634 958670259 277849639 370757217 731036158 968146427 23132926 138396912 132477200 604893170 862716553 965552067 877383540 968552284 904926806 972962448 291762760 726831935 585922711 651677434 178259045 640116037 836093015 969200085 455570182 644919092 75860836 909143626 110501136 597454135 327006231 913894617 56776549 806275112 962972680 981322615 168262603 630881677 591927218 636574842 876974384 961041081 611535032 685213355 733170838 780063046 473427634 687814661 977396456 979861766 747294819 981510664 814223926 971211250 3824922 977940589 817003010 893431240 591432679 895021787 833135522 990017172 128243509 483170995 29665086 248487882 977464505 999869614 443508850 524039522 612922335 668913159 62252946 749588349 327286828 395273196 749692857 787485579 810915067 944684369 231981469 895558748 136139747 837339496 355761834 819812642 215721328 772708630 828099127 991332696 170653834 900393196 215217380 792339445 961834195 977313899 650576411 999724130 466504338 733937503 371946256 470522735 249206307 839480273 35675357 693758908 657270656 955628421 804547908 971239038 581984750 723654583 99312506 117737792 585385614 652574258 201936955 496053857 797472503 889665710 906775032 992992718 704909263 920552227 351720179 489927085 461147750 905308930 696123916 830981223 413704592 760789808 441573171 507886505 337158558 911622837 984137609 996301197 956481748 985104515 984987006 997037376 192576070 996964926 974652078 990782007 62214504 940711824 416104484 900237916 910817130 937137436 642260109 737844579 695267632 842686327 496040857 575904936 512959006 737866683 213858244 560789377 64561042 839747473 555547141 971096387 932362311 968308807 789150331 918636600 535136066 678326687 751311070 869092571 908084746 937647959 603268008 910564797 380910208 473633420 376875802 495340822 240146012 577115453 905923024 987908257 927846194 974862555 307647693 978279765 823089191 993165936 650922296 683707837 47114393 93704339 333044088 954157015 231207691 319527731 69891010 72682633 57356854 154332933 903770272 959653811 107494153 639626397 470641320 708144288 257459799 858892226 791122651 968862500 725698580 739128435 603863836 964318414 853511400 907802947 43030997 335416269 899074593 901223174 173810742 456950583 928137118 936399444 546440916 967002544 191240060 389257663 889697441 911879253 11174311 412266103 35264961 361735452 982410181 992795894 159793761 259503856 841785561 915454592 335508893 467375103 445649232 815752303 221601177 696905658 354352832 437258129 13275655 620317931 388721191 866450943 404774843 627213808 101205022 677696621 510434121 937349307 733525774 950408952 507562825 907875673 235101877 270345829 561337529 717190604 681102848 984417894 672572532 721990382 865425443 879305911 813707486 824669083 515364108 741361663 107717678 167856750 969483064 978289160 355941912 680020339 739988085 912215524 29906970 646338166 742102961 863243122 678114793 681811039 300522500 708529798 510155045 755029101 503926593 519500962 996874990 997751136 722159196 888725135 348823220 963760501 41774949 887027400 565166072 886734330 595102366 970507110 190772274 757655079 448758233 828648268 201861232 887360129 291352824 715807304 566759135 640257357 593088711 829966040 189898109 248672115 340245382 342812469 510450207 646249957 728782224 902367058 612890554 727055259 236552914 851897356 528358579 587225490 634176530 722381492 780028778 849307930 215504617 791994031 987980056 997466115 406753997 508101898 215664838 896540837 177029920 855166174 233477057 653019453 52236267 201976227 314023115 716553014 129650692 982111591 838271179 865747595 824099332 890568661 172807404 784024626 615149993 631772074 278609271 343213338 33443940 839157849 106018099 687765251 505262798 661968893 555836432 923055874 986812939 990655290 52360859 778868777 967514997 982996872 823101961 894502807 575880421 757943491 745593653 894197187 312735644 961597041 192319375 539649431 522401432 734300687 302803634 971082603 174950276 836066085 685435244 712173071 48583099 945193222 228176464 233491036 522538493 540517278 33462892 209912851 138613703 851897001 128737354 643222928 138393801 881863379 200937055 838845595 829175638 915051246 276599466 586430644 871697415 924352138 627928784 905660860 908717357 969620714 167256864 832100554 898763589 901768040 127537583 800636025 248071146 961976775 784272705 970159951 658117305 975577693 752421774 818590647 658204815 807169055 166819267 315069172 858352574 929290470 568065638 835563787 376504964 895176750 368557353 622921284 444962840 481368793 597526886 870521001 802748523 857065660 444671945 773416657 444718923 902604675 125956421 617168837 517583486 567381699 315069848 550639521 15402765 500667484 734003216 820472625 896184314 946888048 1618831 341714710 148045431 978151092 172722430 643257589 836280445 883491922 40103365 652754277 306740207 607606640 342054441 966542381 326579919 406417141 415641804 434340959 983192833 987357982 534313716 920415690 188296442 890135816 262366415 615942285 441915502 552776178 727513028 743630377 101422701 877913338 269726372 861111020 278146384 834728563 803881352 816255300 134331650 308866262 714875440 744155281 593360575 763647115 534441908 558604694 779797640 987080027 466174619 552945372 269648624 382497930 456528827 650012683 108329006 156653084 135914045 722659448 199808938 499714301 696174735 916892870 133045200 751717597 876023577 940128412 248177922 713802896 312423224 830102303 419894769 518656403 952628816 990347225 276839446 368163013 677795759 880756957 674488950 800962730 457128867 708958219 830212699 939285442 550628260 560299618 326623886 394359085 722481107 785908198 384655863 944873863 911959459 972242039 715166171 793293904 871403563 945096882 974933805 997656528 851950786 859330412 801127156 904760243 736267740 992482109 966230959 988073617 461559476 754818357 758864614 998269937 342426384 969166820 710615085 996265286 231323827 427280877 894657617 936494582 17321863 646782853 729929393 909561220 691918986 812505451 146265095 764174042 132628000 399741279 798522929 979363547 671281371 698757958 420118481 810378953 604272138 666960008 725772812 872331067 52787679 199669273 149695458 728959136 216425776 950991948 693208766 868726972 660138582 776699043 631660973 949770207 906332072 947888725 953288026 972555818 728274585 935212601 816983220 831432122 489073126 718285162 290752668 611706671 316307411 414777647 168699985 616534315 40573030 549940140 911002642 962481205 850221707 910623926 52846749 247204675 295886743 991539363 201852794 459729771 253197906 278580279 259150740 682096466 119885624 457165588 793516561 828689297 296099349 462285354 865749709 936246967 235070733 487087916 392858068 740688103 851712447 906701058 661054037 835900252 524359174 548198156 623241656 646888029 683736078 821670014 819245061 972243349 681930361 753885126 678306925 986305382 138777431 565464233 126703201 532357094 731248012 745986275 650699052 903482088 476179442 592071431 417097796 773297563 213294000 568248071 165179827 456907350 204733568 223233076 513132004 632360072 499031915 527147223 870317189 976870129 448793492 454524799 494246789 733102153 799513161 803181402 565241581 904779181 293227752 663868261 83666516 761248757 428075070 566779686 396554994 481996137 553662353 626412886 644290278 864150739 487316903 723418508 851210247 877341559 909847406 914491836 859016001 918501755 444856310 676903758 495107083 784619438 727956487 891138856 606835715 902494083 219014036 977718040 858417055 998061294 785426307 828719339 71806534 868416870 874066252 996509123 408687123 765696936 588093964 944691601 389804544 580580500 223297054 961691305 551014537 788005858 392627658 977596754 942706653 973634872 185786237 677663242 492147781 854096198 517519637 663626126 500391971 944426935 549790202 667173565 731355499 833205876 148485231 995604463 311694601 800182449 843172310 883522758 750780530 994161057 826001235 852113592 910650453 926141884 659775739 865385272 857261569 970441206 984817413 990307833 343476312 442513950 834968550 974168409 63322740 840584845 732489359 995810167 195467982 472000173 22668546 172872536 829940506 917501979 187227422 752092138 770884364 986305337 685872072 830513705 435977616 770289485 653003988 990159438 421188169 885563827 961536832 996304218 783805461 900612166 244417436 339092984 428351161 872924672 180520070 456097716 131107267 404065375 808660277 838528761 262324824 439625427 346960997 521799972 843575056 906485211 182628465 732627086 330025475 682026331 783955523 787509069 341462143 407695229 757902335 849539427 165512114 985161055 605869397 873422716 818934316 940989198 897482739 950628680 233721363 861409974 387494467 631161657 584149559 706267517 99071322 391742525 957544881 969122600 932155220 980337603 279283302 467203362 904018970 905441368 259597363 427934857 516062689 725156038 830086203 976428785 84121757 296569866 610145491 821478830 258355004 810536620 231864317 910294073 895380641 917045582 775156534 932569386 928353930 968848514 475744670 701568046 912823413 979735706 262707130 690546155 449316606 696271505 20302151 719304770 205882414 374058415 449555561 815971989 98783756 151983405 773719192 878629187 181717037 496689332 483476483 941299443 391985243 528651042 870910432 884410988 602253054 646391556 976587273 991957267 197194493 570430689 121511196 902167430 25860187 778459636 879411141 995338229 348252934 503483919 622291690 661426570 884533235 911927212 915402459 930889588 876700671 955317003 242774620 405514246 959411058 998153902 45491959 582968667 285834663 367075036 411452403 475114902 777600355 943524641 727663813 748131878 789278015 924151584 577791890 982961399 440169705 639457852 860435112 892609030 486231953 927550601 806619617 875137517 164601093 485961178 460260862 736838342 989064787 996156488 6569623 818466122 10440303 807317738 677613008 718502003 631354 172453873 800839913 859979631 109625954 189385458 115502826 488937491 57878278 863072006 144802698 211997368 117036374 512392538 741263437 882080077 929565180 967770213 9557564 762417969 901317228 912137092 161481339 952391029 686040423 791446194 442967025 792176296 958628255 965635958 852863699 855188316 742042913 969205993 813316417 844996689 558646061 626560456 818262376 928021409 101957093 110256757 588740899 631715304 357232597 730811332 820567594 869951105 554572556 612701125 674536698 738265796 92564974 164067474 892282287 930541409 779685211 885590968 737081270 742605258 593621665 799755863 886045047 943082436 590287505 873478325 845645563 927755891 848842422 910358052 79290878 808734300 925216444 934895634 999359594 999535035 545139565 929365110 427195608 832669797 308737030 847944951 933239598 937934869 502086958 955803876 625470153 829606866 98046718 236343269 405744464 618326886 632428224 956195512 968981112 969515250 283444826 954337978 948749561 991892606 208066489 862481111 316126175 944835766 707189775 966758516 871117967 918078626 13545490 173427661 415113527 945103652 675429023 862392892 31805778 888811400 304004041 604304421 872136086 972437480 171169889 240275952 273673547 525937449 808689384 816625420 575675114 624316712 703785911 704857262 965593719 996082338 873120886 898146570 446857472 776603685 383817242 457364474 333208304 347619153 603019290 642506545 196062452 695041884 871362874 936314235 872407462 990593445 822891559 841897519 939529357 943733023 296947338 374438221 256282694 892360301 425932880 966579519 524127184 544699104 368014598 867619418 113058360 535117603 596988172 736241653 448935783 523364821 742322035 975036037 356729870 455632867 974394335 996256755 858645594 951632149 644556815 983091261 643235688 933823271 989277963 992405123 105381474 415374255 260012322 615519211 165316752 378930327 990443111 997562455 418538710 447948814 241558515 610701761 518954987 875857664 232093656 776502368 885758081 976849661 478241944 807761888 298065680 427569095 537880872 982539048 195491099 502167780 132547548 498196270 884636617 958163430 199636686 647539619 392380813 661565745 576868506 747862213 865896592 934926263 74423116 681407517 411874110 481735817 148333897 731663661 319382798 609753827 929218069 981470458 222622888 965348178 316814642 661080828 763724584 948592065 672515409 928566441 479136637 911345545 548978833 897925157 490134019 559700755 217818499 767685264 617902353 852629234 159633121 336538888 871748722 942159173 519033520 555373071 929746698 987696781 79968973 432184814 768264620 906685362 90184762 448283484 59526888 156897441 588421772 935505970 240778576 927722577 879108175 975598664 77604912 283000615 856877202 933834289 142908467 712883222 609783671 670050181 141960465 261717059 224705003 229266480 990059542 991967677 820774145 827138127 236320797 997007255 242646195 247689938 816053234 955186432 397905610 887475767 868667998 885481334 226722443 790683544 303931851 676413538 490746528 856548752 243859739 514774115 328275396 773787857 628042931 802137644 942343698 954028308 42775511 989645959 146249459 788307398 937943592 983241911 898379601 937365100 113630907 662637852 785687301 843400757 671708907 907156150 282284824 712446449 247743155 684244456 827216709 988561419 740068017 956865493 791416809 864475272 872314604 902657718 195444893 988563173 675350800 873917869 563327387 760114709 256665198 912152951 144733231 576145017 415826725 697765105 212502356 837034908 100506273 237394643 356949619 737990800 301922564 573030257 115788640 310553717 354929758 743443670 817854905 921108336 781428224 790330759 440127508 582540400 834387201 981687536 638063861 867908840 179735054 498792660 88004793 228945910 288260796 971558916 143417764 446810384 191081382 567199058 713882738 778704192 932267150 980470861 524141131 955395639 714545485 841911212 994022898 997381849 426179625 683576106 783076866 940813404 653339511 873173010 981431849 981479570 375542192 721895159 376413593 789466300 862198341 971019556 759431203 907149852 169230182 199118887 290983380 788123362 30390752 829659228 5267746 591778948 993858243 995016639 15562134 666441626 769746615 891993938 298054055 898396534 655716032 851363700 279186135 826304111 516092397 899080628 30181473 299923590 84337331 374606991 947237860 953988513 850058444 929386634 670286263 896739779 391400974 674102888 268436414 996219371 251158320 354589917 39060703 245750369 645665526 926363285 752457991 921667014 252282414 513130837 100902597 220174155 171245237 750348018 702286117 982695258 283073272 519149053 942913798 955357815 345275598 901354998 980221071 983126749 539280815 979642200 114849044 608822391 681562299 983732038 384790061 904900019 539117382 774035042 909497931 997842347 284309172 828945642 499049576 569464017 123729039 624835501 707360257 961239196 539454192 966463905 79204352 900864450 122407137 738396269 622161297 731579119 970469045 987422081 712999848 759667611 719847972 740833893 751357411 897899422 476820763 933395583 687540016 740404380 155375828 956356354 54118378 952928385 333431444 538492881 789724075 926590868 676048538 713857459 745203034 856197403 888472773 961659493 674543796 756200988 248125716 805455055 469800315 887077132 357837312 603131241 554286573 725062049 792867883 834189418 764758283 784834388 760697716 963830332 614912639 645660045 409136024 937884995 666920531 797925339 242168547 495012680 587050619 786678199 273091716 686636363 689139507 877261260 731254835 759234445 695836709 817370112 55090205 183709380 732895609 905977521 364415865 725826013 910522836 957037715 382662476 715515635 102223350 700998907 985496670 993398667 644781241 944653359 641483488 824342593 982397397 997313330 605604886 771489918 921165954 987804867 622616052 764413358 403661865 499080319 454408960 762107619 733142612 856099845 971208683 996191484 356087109 577019599 171833789 459418027 914167551 952323619 358263064 617805314 572948876 808989854 462107010 476311000 295122765 807142657 337648349 678292586 879738398 985491593 64950035 297152708 223531058 435585206 815147388 856614555 539851765 979016402 396209933 489844525 991262422 999051353 680909843 754765403 200266759 957470851 397688437 499360556 317592378 893420132 124869294 786037500 719110125 736431739 220018275 759311419 579161611 817162394 710304741 955457551 84373214 285043177 305394947 965529950 901154359 974578173 45164882 924128702 351669138 445909841 360592585 922920086 224637034 962687561 499924955 556987094 387850448 883188965 74056659 266552685 806034600 908422106 275345772 553300721 157597790 298247506 963630348 997968765 648369043 713710441 988460444 998655444 149018056 453844809 848351883 899559382 956116142 975005769 221428367 231784309 66500669 970860760 293474642 896171849 872907181 922654840 592034650 701185127 460700349 477958793 601503363 860762952 244148890 501755088 689124287 856428919 912467067 957122733 19527864 700406399 456866949 991000981 530947991 918382987 161050802 690071798 453403874 612216273 60593229 535169291 989284723 994117476 344088690 601645861 862405399 948510917 814260251 821803813 11061568 170450369 230943025 635244068 256593667 876263642 431071965 631556193 214139910 466690001 85790838 977009901 852830026 936529965 209472122 352013333 887473185 918361028 684977094 813076207 496818686 788785887 294672214 904730016 756514162 771016938 522151138 960741359 43741121 117627647 24992691 526293867 264931776 541872670 539579303 922008905 282589311 446828148 385823386 597357991 605041987 862937161 12265132 622834493 363713944 730129823 498242294 634954502 791422306 968380027 61500094 565480656 264518352 750396676 21282580 66664818 601625394 821873648 850172068 946068147 988648199 990386453 222629959 234111730 369180554 522951315 461325223 655807141 848257591 859670499 288449506 386019634 454000560 707459572 124491739 386913654 198150529 928514499 565966144 993593580 581741444 721876856 47253788 308801132 943355367 981101922 977564886 981944325 598420185 921586149 452394015 870935656 498975282 935008106 45065364 411523145 375611310 955985247 619290651 629148857 503070254 828048138 262535011 904819012 514773442 802055228 969440262 980083767 149164366 244549050 769173439 813518263 490317573 860292281 852810681 881521611 848819074 970127660 83757505 124052515 303970202 868783868 877401167 900444933 706001851 739704541 473825868 602474489 903211629 991813266 118444858 397138292 488655296 934071075 314302264 479690835 341160886 590156542 191356752 513437623 809773689 983504512 303738778 487674916 841196999 905745755 956427277 967616114 235860299 277732482 891660245 901331936 322417015 776093929 571333968 626155183 525759980 803495306 553302413 955587287 491870774 579789670 243136463 479234172 151871628 287773468 132528176 212684535 403042102 493653519 439518238 728300007 714564868 972809215 593602478 725800505 209736361 992141163 180235056 628766578 702203080 989445982 285065226 990184265 349462324 765080542 122692944 433701100 765730357 825929946 629595102 878464989 968482627 990372805 543934341 660139280 586017976 771423578 767409055 918944481 859664107 894775955 304326906 788681112 452030552 831186649 860968116 991681165 239772109 862204754 901527410 996746097 223261366 903631519 917457686 984989157 663085327 836909027 114526210 399270317 709930376 967501097 270497838 769766301 439619485 939527510 772612038 927028645 26737382 605893996 523206475 587718845 64578373 878323613 10572585 664154952 743381235 948675148 671183345 820597179 739045329 837244193 315904159 951969258 658342989 801125998 72237080 647944145 346877901 730015800 235957106 576260663 478917847 944873060 800716248 995147779 849107744 941750721 813992859 844221953 542175950 606552248 218952838 734727757 164618755 815802274 755576980 920430050 35141967 823062682 348852096 412289438 594170643 974729753 98993794 618009199 538441729 830536693 584693466 607363300 848379922 945653935 230767303 707162899 801276374 855919381 194175781 971059378 238781911 441203679 570010026 692266582 298067419 526885848 958072663 993044918 112202216 261764098 547432876 669831059 695951755 759397510 875162352 997806929 83969403 721416804 763752706 792536300 528504272 676262758 211684712 280889371 917696016 948182680 21202672 319025457 565413993 809311055 964542347 994155620 688782334 962219081 847753766 926765125 80990443 439942635 525957749 622744536 731215260 943645744 811876689 897159439 423396979 495139890 947335533 962853720 933383437 966808844 757782219 860806374 790314650 923157609 563368287 990306774 586003384 983766090 155827570 333833676 383380492 494030002 256058803 755628758 216694993 985839519 80468410 319239906 83263144 938498393 705595406 730706561 493190330 730672599 570399100 724626248 610477831 914433286 318330912 972715971 796540056 889349575 302287600 381937964 259690664 330265126 732913989 821059331 768735573 789457920 950331984 969599142 41768533 371253081 129458546 988698506 879379700 980704838 497659639 942550677 26634747 110290536 135299332 748298993 123539449 613791641 682676530 764909795 193500203 520091270 968715314 985118158 267158165 998243403 185406222 833244260 837277096 937098515 900694367 989413757 599704474 910918843 656727973 669476228 188443875 808436899 829449239 959797991 734816267 823474813 515138773 564923637 287113374 519049587 228774211 633545388 971132557 988619669 753503251 953965036 157415896 482189185 601471829 734915918 514739478 872928975 581875236 758828943 956987285 964125027 596835573 660751488 54859892 267743376 367311841 562549722 145091073 651655481 323401128 619358964 922877547 928159877 788744662 918016424 780823105 964832767 27324774 962018657 928345727 945514785 621895999 803260227 275991077 800091589 463835424 747774906 522702268 878091407 648292949 790507743 879910885 984751179 647736927 779888168 365525082 884503205 409132192 806822132 293269968 314674768 905307416 939862992 496024635 847240696 336368703 877071453 688138622 959477399 322665289 670586807 425707074 725133280 872685116 879290954 581541513 628071514 14694072 275783448 570641331 821762275 203266478 418869506 898782592 991942139 246325911 402002848 414402680 868367139 566548114 930834095 662199114 912618435 589315329 644710084 991489749 992924910 512855801 959310843 86768244 866561373 361335028 498762183 651508331 963803468 404463939 678425978 930830330 942568967 930907200 945205480 51146282 678341031 360239139 701324866 68474767 404334361 821531859 858399673 914918789 941331040 102238675 557153347 950953356 956087526 123775540 884524047 200032477 426683546 107537937 603048392 602805227 819688293 215454638 437564685 798677307 865251234 961891423 968201619 67965367 474183506 779128285 859255430 403561385 882530971 416773678 928811374 122785310 215450263 141925845 898436720 634426578 860610568 316183986 810053808 851763535 964657230 415474838 500623289 350337370 965288569 658208957 957075366 88717494 817784648 983764179 995443588 719650156 847435500 49913849 896225570 670943167 687080962 300132984 519938442 89317185 612634413 884382736 895807607 652177839 968140625 218746664 677879479 973228316 987402388 37763046 713850065 636511407 873102250 825665857 913828524 696303093 877705060 874272323 904567189 171922522 975589854 311472568 678646140 313539321 685621203 866444626 989657842 855873395 981939837 48440948 434913813 895955746 978015422 991713232 992269896 858439928 951894533 760406172 765914285 5604762 956497113 165951178 896399847 188299127 599221099 852356588 861961237 816273653 862503835 779255601 987164331 513951982 656682932 351410672 676306813 380061041 778180642 261332594 747777615 994538876 995965536 374799360 796294317 733560697 917863831 90593286 552435485 584059085 776238642 125524649 137199131 972461335 977780746 617921312 997229140 486539545 800785070 916822763 986352179 962496794 977377098 518257645 831716730 459838033 762235491 554010120 924003588 496048183 870060485 735682716 930014245 368373935 678614573 323319791 862466095 6580421 295254690 828115276 864284089 272617920 879524397 234774458 977823104 44597985 613363281 141751536 843601610 67602040 752420946 534811355 898229937 849113249 895799116 867000003 995440396 208375790 648916419 973322017 976734598 918072331 930754407 757672798 940315636 207878592 938074934 493937770 963362504 952395508 990860509 359479372 545237312 570552164 849970112 806970168 946491167 951146309 971291449 355024532 782369941 210317404 578929294 387130845 635311599 100015672 475255505 327719157 835081608 122840255 549887373 100423799 730448209 129662729 598923692 379508600 444897798 501215291 791955108 586084620 882960299 342192177 475245243 374755578 662702278 400230993 933828115 286370436 362458006 660321534 826912406 446149303 823645195 989393356 990579629 588641386 822904438 274279376 539863602 959050806 961453012 841365123 925027783 832065961 896233060 574924637 638715739 843765654 943973311 232959157 670312192 496942487 497539855 866523536 980693701 304171620 927782732 911382962 958300929 251076371 456145654 384107557 870953944 941150641 978203602 737432162 938121011 236054121 341330561 44625902 313466078 327385033 954153940 125618984 458088691 617573021 622176409 276652530 356717277 832258065 959011079 106453548 547320490 889726996 937460840 590910128 609886861 248826444 258354452 533070132 924998206 980681645 990448402 722562540 837261303 978235100 995339769 763402151 896510742 901936160 961948431 277728569 831064503 520482059 613645601 776983816 840787290 944076780 953116796 80591847 850525943 73028665 472262957 789152594 935525109 971166440 974577102 241159094 618992997 99491646 578657198 864964217 980029103 735532536 951881471 576259638 742205755 135751883 952645419 438862777 800898028 165356630 401706921 613758189 839681626 822599687 973126686 776556623 848513327 510613993 632296762 794856671 835035196 994744782 999495671 299040503 391075700 436228912 780629348 234116203 735216085 794951665 929727322 791477076 864378606 162397733 857600792 225165974 659202169 711197261 995705789 815365485 907024036 258269010 296663373 715920055 818388222 557591652 949060084 250891573 684280915 964445827 984940485 224744253 765791054 4970114 158846068 390141366 647684500 574232925 824232410 934602141 970843991 219891329 368385372 15952131 466345008 250811310 308218545 585862 573731880 96712361 457020019 2694139 956960508 963732713 972787363 870315482 907827250 870124430 993808816 274187852 665728182 396208129 861273641 888994412 945522741 210904063 542584115 788638809 920288082 348114179 410932491 960797257 993976680 805496741 998994587 920793948 936266523 324560253 560177744 746554311 809889204 340420846 408569134 109551739 401761261 180541170 805128978 628923936 733788496 285305091 365366132 329304312 500873136 427198590 877858647 527197685 950072697 341344604 950249245 528741151 565198087 931021887 960764832 830138416 914488691 33059743 434671455 726657005 902875822 274505802 561192050 266221266 776684164 303275248 604971530 488033403 631518189 481916130 700985118 147067242 745321094 545434445 983075915 499964692 650787152 458278614 924073742 323084413 561163381 246637838 681810743 945603821 966247155 506581311 705642305 931474534 982875555 847512228 866392912 163005731 802174231 301630608 569804943 447178805 539901871 478071432 574625707 479594497 806676477 23681444 887056666 125756111 313527942 550236840 614784986 645365470 761191668 156708902 268116861 556377703 934545312 131855914 364897785 725648507 895890867 120140590 289231017 172986549 265898784 597355726 931325213 297345305 846124487 218361143 807580135 466697146 886949682 25450554 969804165 292791933 819768045 612584721 987254270 18133660 374015007 228611396 271937033 667170642 895935133 7356193 90805573 651894368 974742407 810629486 956270079 840376758 855975647 32745816 771895415 466815206 505905495 987474678 995095324 28099282 820291742 129386643 340755834 161011451 382168352 506875084 970375839 715327968 831701700 315450475 796064252 447190681 776749503 830478166 852213428 357660345 413551087 625695029 788295617 415191148 976966087 685401192 795765154 170955846 659553986 764572379 879167295 666576543 978109072 496476616 556556786 995259793 999195146 759686212 910006025 997816607 998834553 887110955 992215053 747714969 919951363 167054123 467736852 573347611 841789403 812690544 920143818 34719911 178596177 522967447 564710215 975096747 996779549 622462240 788194149 108230058 434500427 55593219 244423698 978184704 978215899 419550872 453632093 721385241 875214299 738166751 876919414 421938207 635246786 557833265 728444249 71703908 308757102 297631552 466632502 966182845 996208437 458461277 527054995 296465529 621016168 879488828 960790885 661797419 844956351 485692136 543015582 675022257 924432558 457753596 853246567 515874352 889704896 354058754 898657541 727124684 777400854 463376938 806063979 338637819 564628329 10904971 897681560 591601512 637465440 149917152 638519801 866201146 992303671 585326604 926095782 893381932 984688276 289012485 566030446 602108727 900771415 287333143 639684843 686678035 855467243 377619554 666765984 780639796 859966740 637325541 913356070 291135678 777655226 610319045 981171800 393377769 813600471 916567315 951791058 993721345 998405030 34325796 216109155 666823875 941830356 22382486 787883209 972512355 994657128 997906375 999115333 318739160 789991595 346061458 461779113 31978325 560365874 257918650 626688422 586524664 587562753 471091312 674803551 423704411 594477418 255163625 690495369 106824984 558050730 301612648 512742408 683390591 696882896 892390752 999698186 712753147 940525367 629392027 780469395 418296423 639000949 918801530 927613189 130481970 539690871 262753811 430569108 656016806 771944987 94603564 144430592 422999277 647576155 38363140 255947305 90914966 935418487 263702330 888978967 56555140 134089759 565157506 727509755 490954932 749782987 899012379 924384892 575115381 885395897 393193993 708922964 300490875 575063269 682819662 742670693 43522665 555052846 669917732 767265916 354043876 911116329 217026810 593895446 961835883 996726536 211742567 781756495 730771438 927306741 540033977 973814636 176238792 500246707 57955051 160940571 316428353 862749151 322343534 636257346 968582358 981176820 525237579 710992124 749454756 989702236 11137275 726532654 913288391 998513636 811704281 973308199 477110272 547931954 596613578 688985847 59570970 641113991 436790383 570644180 207542372 982569486 955840486 984617513 492012078 502862844 813281378 982978144 921868034 932172861 94607081 850648505 883067314 914098910 802296236 882638423 750458632 988521812 575887133 793000933 542511270 935571578 689670133 893273685 887901354 933300350 356343127 640961089 358329924 506214028 759387067 817023263 534637211 898910412 82818248 216421139 47773088 738556236 729792693 897479348 943004103 951449191 700568960 908313609 640129370 897335947 283125318 969183174 298414076 795550929 211832366 627875254 528466555 990896169 208910943 628621347 419266992 431789246 132209084 476819315 833716453 968301446 620101696 831703684 76598665 127244383 402252509 895069676 971675539 981321661 409153758 851947028 955925585 994627280 285668873 761937886 604124863 824613369 302036294 699643531 255255823 492292447 797944808 936374150 624766447 656035728 942707268 980288971 2490471 97186686 11773311 48696780 498674449 915704574 856230434 932302629 252095095 288191859 821840687 963286081 111594874 694178700 11969862 813566378 747268240 940492922 735858348 825643470 129298333 859794883 132092879 763480818 896622824 974291921 157028251 805833049 246763711 495499755 372110451 589506140 314274881 485181896 648023505 809661404 296722415 321927993 28972633 796597807 429390321 847845796 100337909 249091885 354778320 935799468 26344246 918110591 341029901 509166655 888402000 969072536 713847628 930508660 66715008 883134445 847937673 954028044 423992674 451919917 829127557 899760275 765718704 870363920 674325048 732289728 676259237 794714704 70961166 715340045 716987863 753311810 463250468 479216921 127867968 468468347 143097303 552186794 177806827 894300433 927631172 973609005 868267590 991979725 20097288 596610982 925099168 972462794 942296297 975720189 577045815 723916964 221426364 472342700 772708576 996960406 270092045 815721035 689951957 719167145 632164848 864935829 522956123 916954302 397912141 813325361 552541324 784776600 289348164 955773911 775706032 789763066 588964827 778104424 919602187 936939207 603509314 966314966 706320357 779023790 908220938 933892994 30148956 34264158 954895806 988284690 52193708 352936664 136999006 173300829 269846562 280497246 587061043 731465613 398342723 492963468 86509878 199788045 219192363 605018114 690471731 762176696 790690460 804914256 704605066 942286813 190804298 326273797 644995275 906333496 946219184 993963096 308125823 814799982 713280241 955262146 24564479 273788245 351953373 397913483 654184187 883749795 289753610 733064395 236241676 378114581 276385409 791997095 624862658 816564158 608090623 825775741 674729860 971339653 854341921 887997042 941933476 962266357 43345474 245040475 609886541 978523380 639463715 958006006 117362715 959156401 106693434 906067547 528693227 721232494 390547972 652173127 10476982 961342324 804394708 959380885 742451244 942100380 539773180 885815959 676412482 946812013 185165673 744098305 982789415 998162543 498548707 853759290 467517145 851781744 353488482 502822349 411229894 919355762 945286352 955033978 831484447 928736191 396506002 733200986 560345451 839045789 211666343 917936617 858617844 966711869 972793431 988466248 574430487 629580062 104143260 273384968 928935136 945461559 950065562 967473585 464144990 995633150 332667255 835798074 234670629 851964029 406560397 776321964 770392127 953910319 110938841 800348170 109686423 140196709 11612683 989169218 761628 560241184 333929499 618913867 786567700 909199506 367836337 610261832 791978705 886169658 266841464 792982912 356809663 397173764 304069541 680655541 456729013 752843261 163761208 924863541 890068529 991925007 558806041 975435249 542728795 735968369 195537552 439231917 430876293 757771014 836133538 865179890 306228784 400981601 727913058 964829826 102550605 172963708 956658495 961759378 17062562 271134133 649555173 699073671 967103704 982070384 694809167 994873394 14621951 367292125 409596297 806836604 761514462 943745937 453006272 784538627 489548135 596563249 45678087 231634317 129620695 782632928 157984704 699653526 349889333 865445546 560149745 935784240 842612809 854528053 371154591 372964765 71140374 954772559 95461547 663485834 151711696 767815396 808969619 916868457 179356609 252818411 418118073 815504630 358371909 951182846 396948343 678780336 284653231 959116732 966424379 978912093 64004369 844221007 910088728 958241848 901071052 947341445 808692360 846528748 295178452 334208108 782332872 981622000 582926143 699220604 227669379 501705589 558918381 982262071 28535324 713916284 197777467 508099787 150733703 500936864 506192703 592110230 302376995 552838214 26240555 542510027 702709796 732866012 169928255 568229782 238972724 753100586 150539476 892139322 680706690 824627283 697493678 874069136 218484667 920328394 511524980 895900685 382466238 409851272 14924790 567567558 470275539 843854602 554481021 705200036 461547752 943733663 814599553 938463574 563012545 786378188 772836696 889417462 590953042 831634271 532654559 991319070 114104628 133295217 130088380 854335223 548809698 717247334 584785218 846584877 867505082 872951415 146108174 751457758 558313292 967092401 711047584 764918754 545151872 912446390 581154275 780170759 421369635 910054246 261676257 747237284 998597394 999718033 538054768 921719859 797272570 957237744 640609745 950165217 489936924 991426992 177659464 785526267 285314477 998624275 890567429 939749642 539680227 716539227 253056133 670170107 24999008 738113715 264807279 680195028 47567633 176129467 90175062 984253102 909761475 960248146 699888401 892648919 119600421 727203306 552414977 731393436 930331858 955344083 808772245 958010746 471935764 788148207 166639909 762735480 743669124 807551566 989164064 998801724 19552082 151033130 932766077 973320961 344968854 368243278 771345156 915792164 546926812 665762545 487236225 518281470 305452706 441223763 388347598 918704472 38316476 497758249 949018905 975002271 397286350 570176368 652083022 997127808 498955577 957625800 473603844 902235255 273963789 848252435 362884894 707313354 210159590 893056797 345012611 647699720 470408530 473568618 153196864 443643658 380866263 845145129 497685836 988525913 391430307 673792258 363772635 842115394 995925099 997910347 473360681 541920045 505665678 659546931 73250565 782129554 36315147 979632093 100879761 267226966 547258947 559820407 7873929 717309697 496470765 818606288 921955411 986325316 178707038 959494891 269091040 911468760 201827385 752076127 371992394 933073946 283483004 587998624 418143946 515291820 984724784 986009239 280728447 619177825 246557099 466590188 140971501 501637034 4255029 570955570 11837574 160408647 482616136 791133363 600220042 709735787 560129993 659709437 384897719 942907244 587098644 684857195 47112421 164532795 562873895 950583656 561948178 808072266 988003291 989819884 335585313 386232975 41343648 96326230 925241988 929434633 613127770 757551963 288808103 665417641 901324382 959617028 221920606 457548124 799216639 808686689 201843489 227755842 219498612 830639693 475548825 568252867 216945101 396182050 372095831 392755890 480680565 815794358 676364778 969452725 878861734 983861684 695012865 839052641 554118740 892117593 148982065 770446885 389406071 947482424 422350091 863422879 858935165 866913766 492786153 881201860 621813736 917346160 844886172 966900375 922005731 967827453 506349252 831361371 884929256 943011414 787894350 854826289 49355959 367031478 667281425 799000438 995162444 998055818 222420264 839679770 143289936 600919696 710716667 866503874 8426652 766727388 188941563 882681247 298930915 404217865 711744121 771266094 462775356 561834035 999131017 999263072 884264771 925876639 414340883 673887050 345707052 724565885 203855137 957452625 73892617 958675770 348096274 555442219 832259772 852796719 224037732 583395756 384256774 808078917 717299892 735258952 111589652 201378592 411521402 988679788 546013931 932931304 884344419 978988418 108266219 120525367 875198402 950309991 807559844 957014234 903216402 962853216 408988240 545262581 321955064 645412322 127298263 891878759 351565529 451709477 801032418 882418544 125208963 255769402 884692062 974892045 95925372 452127900 19824373 73832345 731285443 819805107 346363621 901889880 739532463 806689644 928635426 968472220 681452588 827320430 136459705 646076269 401177785 678408238 31967220 371666149 208685124 291475717 306208170 654898124 931947008 996302248 417149646 955294881 504501590 863116204 545511258 683679102 798139539 807925176 569683265 927688073 940496901 988153993 196171122 998690410 127692504 443824115 652560108 911685657 975003612 998575220 288188142 577284205 897849447 940035879 978769669 990793032 841233350 984956238 378456798 543409751 189034069 733759159 887692529 980257775 991772926 993248023 940038746 985602609 952976819 956820412 107728473 175065644 133408684 176056739 323823845 509383944 885388000 935864566 858379664 878100702 533417054 998467881 671298390 947543622 131285725 572281168 218198556 228641602 963195574 996192409 736404008 833612189 940337639 989336314 431862892 542761444 403112741 761824290 545458976 952944863 456791240 992161174 460488573 791743263 458734629 854934211 362949986 742564888 477577301 902925802 35463966 573531450 674467528 893191689 478645846 622246425 475773108 672960147 440711712 460012260 679517254 847111303 428129365 454494962 801330873 925667800 27929482 688214124 140396203 172730730 61651341 877555727 999828023 999927245 601641661 714354314 358626912 620066168 948529429 982455499 626842312 961246138 447169951 874326075 978380759 981143346 839697212 918818593 534009632 600745045 226225272 476769268 453514709 694678884 153259364 733007020 205566112 861550378 979944791 985881177 708973429 785507275 834999077 989447572 892467843 974067350 271511286 611173471 14944134 915706361 769292003 901241740 260295741 575279977 599142613 773345172 329530576 408422015 86754201 169861979 765241555 786550714 55216530 219415393 143711680 913117951 254658717 813678860 600029433 866882881 413614020 414083898 149813147 416144136 214563905 758029191 428917512 740450756 539013148 974206368 158867519 221265001 968371509 974157465 495396454 551445752 10928830 987298997 255014341 890440385 258306441 668470634 296171151 839809544 345407533 877059542 453302818 809775225 628550718 934249670 238724637 973959975 479848270 966459794 690950508 919800036 578240077 831201597 263694086 553601875 120018544 432507678 514582650 757503883 884511578 924126763 222723013 399806198 147097052 854984943 255383992 531116329 374691932 466884635 780244784 826430662 396609780 889723491 135012023 396321793 412163633 913299341 307226538 852952738 999263895 999639509 63625871 900240329 493010612 695548270 943950943 969255458 680744258 916285042 51813091 437059637 23952882 519948829 9772248 759439868 472394252 743599467 217489388 734900080 893251993 915012084 183089761 513651451 470409162 720301710 439259104 920459773 218696867 705447336 29000006 480997266 3511764 47350261 59124423 312136962 870414811 906067752 399526924 723813100 939978930 987385575 603783433 972539659 78405835 718395805 148622525 471299199 62345794 270123306 362722461 707144795 591433802 882462522 739240669 910758933 201646717 265139716 148730383 798669340 342211969 971613243 352553824 700416170 569923753 904540471 708444531 753404009 137604146 784842414 73220864 958828411 987898484 996052662 227696660 784689121 928470768 936128432 413567855 501381456 335871150 718180325 657230927 923195509 316327746 955942382 200097223 543200023 529606522 542864520 763373356 827509628 178999370 585270624 40816992 614978133 844207524 919074299 78304344 529196888 302541939 859797376 227406146 981110421 569649991 763830591 150191047 734989005 682807822 752394387 884583584 925671922 801982555 999074574 612988565 674150012 59383459 62947176 671103797 862863767 592188401 925644486 967677824 968266040 665893570 962262869 330204323 751342680 367732954 901768914 844033720 890312187 895028775 968386876 595144375 902762560 311469435 641334100 218099652 714705693 944309471 961001814 569731656 898753338 76626919 946943535 996929110 998556429 732749704 972650760 712492241 931003273 245922485 306621079 31959340 609402748 544633517 960757259 168515866 272237086 493009297 854172591 4591953 770191826 91759663 796253600 697975698 856322047 257694924 841309333 672538247 856053482 809607557 956562246 431580966 863029168 660876834 994564372 268323164 461704609 878909075 964567826 48849117 481961562 787317808 976183979 480675166 492139600 704709120 767882629 54475791 110191586 12173009 18232342 349277950 407861842 680034469 977291171 239651422 774162723 192606989 869989625 697124026 788975603 515521762 612432975 858872381 926831621 826120504 897316767 580870422 623129965 485184845 608214689 757562111 877791953 508439180 991612175 971150614 991352363 745728668 906861140 178595321 500315190 243656611 478869285 25961071 424089607 316273772 965061422 756168870 881887295 840415469 915897726 91060245 736963003 314524805 979761039 832738062 898038000 141056307 232150009 799697596 818873308 336214925 845049082 825740727 978706556 754977961 853475668 376574662 489879764 219080744 850756841 107056089 591885681 393601628 433108912 233842979 687634471 11771651 383406803 249064245 436473221 34896023 391223448 24991118 238389848 776292918 962584926 650699441 711230151 865008108 906440041 772507506 781267778 473657778 507985143 214924130 933665432 520794803 836553068 240124530 555842093 279729871 343833366 821559152 982602242 369990158 474441850 882339114 891517938 780438849 906921635 388853962 945292886 857255267 865100287 854872998 949243628 111120863 453003434 60340750 784757455 404471186 510283780 123038999 814926647 703588397 929548553 911035425 994686019 695927480 806782926 286193000 807706689 812753224 949376427 691398800 717885111 496029274 973560957 158301665 979302355 800708209 974416459 998521547 999900923 997081438 998821224 891352713 971826909 33671818 930727771 443241053 933414391 595655621 973824005 532062438 996271430 673458259 897182851 965823330 994124035 807793710 850685126 801617172 882837096 907445457 982576171 117088923 710560479 585631375 965760931 832009714 866299130 911354556 949865939 205884069 593180633 318369287 407854938 719654686 796530426 71422034 972791532 511428133 532879387 692260053 916358792 692030540 828914299 408390172 658788650 782897037 869153278 181135189 849933377 271362303 687651472 174785481 819168170 592199657 702530336 254131278 886791451 17640882 628475243 218305092 222228670 674692580 821696828 535932247 782545395 80162870 254142713 364654611 430368868 181558457 770860710 293903533 416465289 930939551 982043909 602364270 832355944 294174657 463758544 350023415 927460456 254878306 510235644 830367065 942074381 135072494 848260904 265909898 739847686 856956767 863766674 120778000 972255282 849684096 890192987 956724557 996852000 196751545 629493622 609217873 803755549 987289564 989561937 432539953 544513255 237785123 895817244 630490314 648563904 485143594 816576114 754618156 904515272 684747375 790159303 142587334 269340857 910894038 920201340 478908596 999912176 138017950 538986140 618167162 651033610 74310491 366731966 939525005 993416453 204103770 804742006 305635998 883868596 867583434 970752273 923966890 951838262 397517982 755624944 315878564 337561377 52962381 924335175 357021120 603428393 933123777 966170174 436759533 831688454 333112481 919047289 344639320 354262988 652128614 774296040 542647144 978385605 575170273 952528954 896941501 950127497 258096873 917843577 179951894 757880154 720809978 934411329 273664499 991145515 855438236 952540109 463979414 586500625 319865781 785278778 62188442 650595464 655164143 913505160 557279778 638094400 872787857 986506648 714939780 917707248 147555596 912123020 234465344 543480816 875543363 969764093 710357097 780431730 112999528 728394503 256804356 825939182 867370103 940049640 860428408 917979254 741178401 900505998 448903578 907171880 189870516 193035577 218095646 307402320 501835688 946665929 658602275 712828875 911392322 932503505 340147779 800842430 727907595 988489102 122970475 199565438 380679576 515245063 942650656 984036301 931533270 953279554 267640255 682990634 724395098 810368086 66266088 249317616 32070978 830714391 720387642 769429496 825232232 943156871 698791946 984071488 656165250 949218531 911665600 971354485 383399874 657459957 530049985 733074990 259752510 420173157 596354090 616781614 485887881 929820402 54317597 743649349 665126021 968250225 763819478 938049355 485657445 879391632 74549957 662728614 687852711 981927710 10700691 140901997 457356159 519657764 396832899 787294225 547627982 691222338 896400036 982427909 694752728 977776232 769875831 848382221 798287299 939813346 858403980 989751241 366735862 949917953 337109925 383854200 182024894 964824171 343766112 358958887 588214007 614577233 699649861 707153261 949985555 972093813 172323731 928360204 403486637 885555906 39684980 973375012 393303769 462599997 448735339 681551625 83050719 863281332 26197888 71584699 229767457 576541810 937323790 973201404 115550448 531047614 574267906 772298478 592222707 926057422 189735241 630238000 110432981 281514946 768289215 772322069 184328581 598194673 741051591 789387851 51530150 366994206 851153416 960975785 249156866 671077336 198436525 684136662 469293755 491487634 207569848 723992877 996107826 996141363 588991419 720131697 58237215 492830755 345187264 381547871 167513219 397331212 66154022 428173310 565492368 812305311 193464562 565860206 203854050 611055835 213812561 278030818 894458694 995787999 891894332 986263804 498069534 909256117 998996218 999393178 913769686 959952090 220592128 774745398 54705282 584470434 704850425 777433073 294808973 448394194 73977291 317387627 74695736 941864722 786075432 930526201 719299238 922684158 546092673 827956570 566839391 929106330 812067876 830023547 60882629 944380773 263881311 805407390 885030214 952004432 670201667 682033925 239992869 329095835 83411120 559947828 484919180 510670471 944643427 989934586 597715172 867768198 260313736 692530755 537611407 792568648 629851718 938644612 354548921 934077496 843662248 989145944 584537768 944162184 513136505 612240652 588960562 719025070 311966963 730357461 711336632 803128423 334254363 884184658 209147466 991272267 439648586 681315398 718259577 826142242 507987660 858661842 790631121 949480662 83611594 857805418 472708176 604650364 17421204 37038870 146457919 308267791 23663206 426298495 309137806 611689979 640618469 750145614 693333212 879611344 982043787 985606632 581742213 824253417 436646255 959504189 171174256 625553630 912532870 922330853 877146420 894554516 279133835 849702825 996958274 998631692 616744100 905360179 596330823 896803327 61107798 697931753 510980307 819177521 363577693 676485245 321690367 793950622 478210568 574934475 990651124 998104193 441631864 828173438 74912395 247109114 709865951 785516750 219203559 940827172 256390764 562862083 183269613 794976188 8228295 492574760 885675739 888498924 175296167 455348600 990070357 993570227 48292761 584462453 444238536 941828681 859160123 916848898 998398852 998483541 723740955 816773318 335163249 466018655 136289015 318506410 111242045 400042569 496787440 778896606 855489844 961629466 980215830 984445525 528082667 718731853 133302888 331549481 575499904 994721941 772783066 837826395 735709930 808535204 299765698 930105792 555479936 814535751 812266199 975840881 282429757 505243081 39704580 667676731 634059260 813360379 200753176 930692989 982032208 994181383 441253052 534616848 545638034 756823151 654415130 696040166 984178226 996819021 17071749 605238223 826097708 986838662 810891097 954752427 484879829 774719797 909876909 939354749 322361775 631155597 980737340 990527586 474827494 662464889 365502709 818253790 917361502 991171978 48743221 914648625 732939781 963727887 680498062 749150520 608721269 877025506 335950879 405663783 23067722 239479780 648281354 650383054 946292271 963391260 627112055 701514058 689758691 994133582 325414356 574237597 928122668 965887155 834172288 968748648 226281201 357316883 31988183 914447454 416800616 833593815 159692516 853809575 606740165 616799098 288471915 650689723 306696733 329773459 946005580 961742178 521000363 645571291 813120328 831490199 427219065 662163925 882093066 908976760 138485166 351456746 835727782 865461906 676973842 848800661 507078267 983150611 93257015 716789211 762236552 926487352 783085785 805638378 791355378 855040523 933735609 977384357 432134326 669842123 9239212 296233161 240144048 724049988 470448433 530715130 771188922 869863898 611081088 785573504 359385721 495842922 44879477 186138685 524044386 591138104 644181093 897183755 619695295 761259887 154144701 745943101 903622961 904081618 638652628 845861647 98782745 204556165 802950807 805060186 752753388 781527172 451601318 869691347 850756859 928402905 636159668 808803898 341006749 394783998 224740156 362842885 661541084 842348517 242947566 529614824 673255835 915929488 724051011 831527812 33663827 190086712 631940673 641402910 321725081 985657069 999808205 999872895 993350322 999790651 4073457 305267364 853878885 893213119 936294365 994960994 938853186 994019122 519186379 985516799 773590909 894389922 14541289 966654464 246825917 984683848 638038285 912402072 904989906 946036309 415972073 896643357 570827668 646030659 299710096 313765362 337031352 993441363 13859612 215331289 54455368 98075315 704992868 985359005 589648286 861622165 627571042 844409167 425886026 449310876 366483506 767546460 287153123 623842772 349878179 816444522 696247271 883910226 284622696 950356188 886507587 935178262 630861686 898736795 217029362 564286016 815028334 830472557 380051568 994471173 716236148 900773369 381623278 753180247 515536092 602356581 707690774 893887002 794559202 967447430 8876628 772250642 460105163 740457058 637897263 664094846 16709498 230736564 875413097 965260171 604187487 609715714 303501800 610467348 376884477 644550193 594192604 744871484 810890057 988566553 880418844 965022721 905608176 948590656 194098923 533753258 2103813 362914681 237062395 870424403 216399388 545412073 758045276 902802090 489591572 751522243 181888945 692283487 953653538 999417632 36684990 330289216 479135806 520360969 6888845 521706542 827142052 973014389 791700369 907168653 94037538 342710580 294937455 490995378 390478182 967822016 692079748 931917093 173038634 814795577 342403130 378908915 766089844 844818885 616524907 655944752 41230713 177466575 812052934 840772408 259663760 821858661 721560684 950483653 792868118 806460756 544778282 884787663 594071799 627779258 235080467 329594098 359082617 830507296 721255228 842445194 526266699 820395348 969377771 971648209 370529037 604176921 336796906 426423868 148358298 432427526 539417132 702298178 901324643 978116213 481215349 789991208 41753917 844579625 722322497 788210594 791689578 966105982 178706212 187681907 504287526 888415941 602118695 816015336 292683466 564633496 141033892 429114344 260151394 933376551 401956865 866702774 253586870 642670838 642556937 658993383 569364082 745079390 235191854 517550246 567910829 815375737 518967355 704429292 37817581 627743632 413378061 906858661 514999895 560227474 678698813 878874248 567887105 701150178 836999862 923451829 99103249 708341354 307270947 919884229 486442510 663496622 198850036 350119156 83551559 754648524 700739546 882680890 64584295 263719330 820441557 850626987 115918433 778349168 375315166 995888081 139100070 183282888 173418348 822826002 156481703 625424858 858648908 963597542 298893694 719386300 476858802 605561616 62266934 447307072 285590600 309159405 984445425 993140462 464648450 679755359 340242886 737735501 777025013 798102451 568470303 637121972 510147104 902495686 804051654 886655311 510251582 743063374 469142721 674761178 606333344 990603129 249698281 749429402 164881601 277342785 306828141 790357114 155220160 613339832 196831090 979142968 713326607 747748917 956714264 997946672 682231188 948850408 775613565 976950178 921429987 933268251 779832565 974774729 313234971 488925185 39739808 148089260 366619056 459731977 278012858 789165409 578578580 753630770 298784554 889203022 237084187 936006044 37076621 709975582 983425524 987464055 709846931 976809870 331052325 870941732 937644648 989672517 258005274 351644007 222307086 527499749 90020938 317259498 250172073 807826468 921387772 951569536 978677423 992126823 961496263 982239523 878463730 887738662 468049476 996969224 174094514 710127270 173139689 884026783 345179667 639662521 92457432 686980957 183342688 912679473 195170388 320551105 438267161 567202963 548067748 919512579 955598483 971498325 380817754 673023194 201320568 659174392 688605490 782499490 834134498 903641984 536044543 797151123 863688349 940396579 998771456 999774777 327831330 739759053 553337384 592964747 47335921 526337141 173926218 707091300 244112658 860723311 316745878 725649291 87440174 117609836 111180521 225328990 617702539 889870645 765685991 778579188 641741469 754148331 399264593 761604827 715935900 845626094 691082948 979883217 555219139 668908522 287906030 783584129 564963901 762560495 311624663 875718142 668646652 859663670 63214596 500830750 279581822 453923179 890310243 972844041 545059976 891878681 254982902 343673057 55476692 979611135 241105419 248465798 191965024 720210290 952040587 975216137 778291901 849532533 617722226 766910666 873239927 886293562 727255986 843401957 476830949 710808789 521929028 664613594 370234525 887064733 391643127 936709181 2192668 873450218 228906627 425211376 858185578 934941752 446677511 759329800 463381501 704829765 391717266 805582199 132031972 511551796 46892606 95945652 916932414 932983665 424835649 715625591 645504640 925413461 441093099 834089401 967022548 969542236 725014662 914905541 9596591 524973393 248093143 355688479 552926574 630337646 683316920 698624936 317528287 545040359 202112868 728561566 441436431 829638307 843372934 953945831 608299878 737860768 667836026 869686461 672916793 778933576 415237595 968475021 349674202 901174343 827377302 970251544 230099937 468346452 461979164 960639687 741543596 828391820 238667082 371982378 824758742 901822072 668958045 746707031 962684993 993569934 77358193 269946418 254897942 910470983 323316436 858059817 531591180 739852178 766325023 809681468 331565791 708470076 905883535 978932958 63934494 214162966 841196404 919003817 104277070 199646941 645938476 833723619 89833121 726118001 825108960 846084244 128177192 147062301 716426339 914186420 466530736 631601745 511889263 743332606 283706601 704390700 547597722 682054776 35213499 825267058 803488317 850299343 138461000 175911441 912818184 969169682 41425438 276797055 473166891 745777499 914948911 954020286 317477675 400506656 757845690 881550379 791968807 952333953 36757426 246268828 105187180 376332844 828186322 935803388 523440821 558819301 825310449 938676776 204416655 491596822 705666392 836211044 891062788 997746787 225200903 476836771 733243052 930998508 29031384 811562657 894349338 907909009 61227310 691692372 809547890 968004655 123323253 665919683 898311331 957086851 833639483 876718313 601494262 715915052 727208798 849501026 172950133 588433031 175989686 927473289 346542662 891664748 241778944 528372277 616945328 999863878 874564441 908865589 369241909 807906149 170974369 615826283 835567229 953190907 377193537 948428111 427957513 510158530 127664834 497464045 394215450 879414184 819204687 833261907 769739659 987190149 823142829 948893656 64547932 830755413 38379398 238499441 638399661 851383350 228582230 931298332 796965849 920568178 927444583 957714832 287593146 500455797 10733772 261073884 987953705 991939244 532794957 559347839 179727379 424743835 185603885 575496630 580805817 828167938 240566241 628098254 874782068 875387802 836034421 937555400 456838112 811632359 401047418 789965291 930276229 961838374 882453379 954965284 518821306 625623342 84048717 270320780 609161133 836905446 953484937 982403189 37619121 634102571 385424633 849517781 751124750 772611101 267536152 944127052 990422368 994609904 205475444 373770367 991840666 996703135 765223010 839003953 417595423 595985581 899652455 911871405 360371056 403993545 629494314 848455263 127490464 208752102 370125611 631962053 355602741 792010963 127498857 410576861 915427716 956803061 867811393 988877619 67063979 600088025 25033350 684688545 448804393 892379298 362360838 570020075 754141140 855492459 254623614 261551609 477906827 712139781 233645640 509879647 956400386 957176721 790542843 878092600 827145912 932460361 475159400 697956725 239824829 803014476 850965999 882500521 396984337 994533123 25901938 608926582 166064056 346323958 587860546 945920705 851859715 972330524 94933898 357318071 680438040 738241017 972432173 976352895 963379426 976971895 929646548 991813483 418681051 517929179 652478067 853876766 595782064 798164913 448454769 669466187 379861143 982467225 938453163 988929297 402096777 707895172 255977455 417774988 613307819 644347841 153800285 555657076 265467523 276523740 192060630 410053428 148219345 202727344 710907797 998164270 707820296 969363036 107832490 466396092 76760595 195928042 897392565 997432237 918924588 929071331 475753731 645217759 824887442 907337660 540012538 630618355 821061691 978077573 599570075 636674289 63546338 821475853 377048368 448229065 697260830 743874176 767738893 951541599 667582754 834906485 943769580 967708977 705043305 833289584 783030092 903830942 228775345 556667796 22177120 710282619 803485717 876336622 825149451 940799782 520203085 925432765 155721640 326568021 852991992 955312841 964153454 975951494 942673224 953611472 99949570 141873449 685148600 981598933 915395783 934405429 674369572 732292667 994452656 995467676 898004923 955309597 21372033 828818535 462994555 720731639 66689856 502303418 134263427 872157812 688132433 939407347 671234599 875571245 349717796 516126750 850451451 976127554 813473833 954142727 249211969 795344466 314943243 961011993 321630458 823487523 401941105 699538735 550117576 713311409 203108539 574544022 75587705 358823679 880132156 951900480 897829185 998923801 68516969 172253242 273081413 675820121 352142976 960289207 534035318 689706212 940316899 944183704 202803659 416977906 513429579 701970665 591835540 695541041 255962758 355628680 506062978 991220235 559545664 699570832 624252875 957255505 80847233 833407866 114695658 233268841 677696896 955269066 815226953 858483447 117426425 774786468 657343399 781273666 221694016 376557159 897471062 898420403 144066185 378996708 722292481 735723347 610295030 802124406 642831351 761183780 958183850 977491348 961210289 963998738 766219989 816378181 185878550 948951753 699423106 784935192 67357333 681442621 994253405 997529145 127446970 490543842 102082510 545117664 77992695 835809082 548117745 636467938 431039596 568381100 701805798 728646089 394933553 576697414 25106787 978282501 313691052 560155108 299868547 633734886 946966295 988443396 27079086 319223453 49561055 319398855 252649601 311017535 274821885 838612907 177761173 760633886 682790789 801384137 797455435 989868856 165457235 446387494 452578479 994325243 849404337 981182083 613243007 980377772 603745754 896598344 500443388 570552810 259886183 355572602 316183843 548638681 514400465 569787264 910390464 954785108 219471277 352454300 580860753 850276525 899205932 961614328 459654623 867327247 177300963 985108031 716526253 981476214 18902372 728063247 258090218 901793700 209275823 639203526 740577058 851511401 275071169 723494696 837438989 990216521 255282 601810590 170961149 302355803 421657979 977349590 611939339 981739106 372468614 927919703 750488234 808421859 913443473 948933591 494806683 824740733 206915480 652275227 192443201 860891839 616887525 776485984 521467101 717772875 568846799 962980790 662546622 923325595 495007538 968804910 18484453 208208938 36224906 994797297 137438988 420377971 242490570 375014303 156084890 546236406 110561373 437034061 140048416 888153581 939689346 977132195 933711907 997374809 716157894 826835291 796918728 938828377 821549405 933439153 843456806 876896767 726691514 993072368 996116797 998649932 357211140 817830155 55366761 156629901 814857631 878198107 723398886 920843782 672798699 930696571 254801425 883075166 22204897 321480463 794889941 851293878 738960315 983288961 422870607 512009228 955108579 959572802 169550365 356103845 877014556 915457002 666778214 668456032 128284916 595342574 305150200 361054944 18550230 804654805 932894241 994884404 445907415 804050080 107173655 479110979 40052011 182566332 322308482 898055076 616644647 727872176 144257125 335322296 506190661 890954615 597703707 673185839 117594148 395787712 275033270 309894175 648661170 718448000 585313584 860589500 765981270 991407448 274182628 708158696 478448800 605270932 926001961 931415453 905714565 960005566 772663506 938112520 636189969 931304405 139861271 618679243 506975136 728068466 709695762 893403027 889234140 998140826 742342344 756392524 802658605 811773071 826075296 934227201 618221150 825742165 178854058 741153328 637484241 801128308 934798127 990962588 81047203 560775929 843671921 899596946 374699269 515188735 584990001 879535360 843208 840954071 142136821 218710146 555129818 919619786 614097609 884894731 917654823 960082938 722440988 778809039 826939079 921056795 315467580 638075627 867733263 878536555 853264988 853499888 238328043 521320998 657218890 938411716 754678957 906519446 210085850 599072873 15759384 726350614 987196453 991655177 389446583 390099197 755308109 999574937 106222751 340301386 626686893 825708419 693473596 798806105 4796844 400381386 268195685 291140613 946838667 990774438 461648911 542502784 340851588 850158045 704931882 995712816 867227051 976115473 742498593 965378577 710789868 952302855 999611425 999999172 744219022 929241611 361212698 455715165 314562735 418506813 6373315 466988065 411329314 877543273 926843114 961020625 271927382 666378810 660535217 664728548 715527088 784288387 251209097 638941520 988252255 994439430 731750252 756228162 656918721 862845825 26190312 985800952 906017918 970009329 817059404 964818176 707903303 909822666 984064322 987472668 715405070 749254332 538219025 995233625 899428577 921553789 523619544 662887429 160114358 907393297 586051536 603224665 481833314 727680448 92348713 419927179 843612450 856321726 506601958 591857822 113179301 539705586 832041551 882328040 142249251 655739477 264379765 591075797 731829378 858812369 566237055 634797488 650408027 790700005 279717356 663820988 423140167 504011910 851062938 976357402 866253299 917266818 4612444 466091062 328460006 421538093 993933845 996519892 467815588 937016320 485392017 853542816 694512612 963799676 983177311 989063028 961662373 981544170 313935318 755107849 847952087 961147831 33754517 364337179 459094393 533587728 70207140 546749294 660351627 790445886 468124643 722256872 495709839 586757418 819195610 990437366 349923356 704326308 852883479 854792560 627743805 652534265 211402804 261441232 63053289 130064971 185771288 611025237 892154597 904876372 936426742 960583475 568002683 672003944 789881713 934330582 490604111 799668869 748326558 915482927 658160440 749179133 457596657 957770793 514255955 586082058 596679837 896551553 104011933 817339661 432426507 543969453 780724287 854572847 432843196 974418063 683363681 859170118 970622585 976912188 95407626 475770595 428994544 694994584 447621593 466033869 924096038 948716608 54347780 131867708 823127581 920222377 676472062 815638195 987286200 990294722 271907435 519565709 718481966 979598539 355264491 688360552 116836140 236606610 203915807 519360433 653661027 733007614 115321952 583330482 31256118 662917863 851563804 966517200 148673126 968511887 99279368 569610045 177460472 987727613 135843357 617252417 549303598 726286472 780612702 901046330 673545469 818523853 686978178 724087031 344781413 884393296 623738201 706711347 572332481 850394148 925068766 960208326 256624451 380826835 46304264 291146911 441080555 870119538 337257478 793770183 398133176 834527666 767347271 837493113 610267591 682320704 941337646 999925127 992665732 998075688 871225158 996709951 334291446 540097817 90946254 601495950 977927945 991317287 804178453 997275440 328043100 540015977 40193295 78525134 931174801 990098243 761146028 826265979 403324931 518516063 532623611 637054912 594028196 599449284 898278469 935073458 117120458 150976579 437674769 832316272 185553381 533348145 126741833 813244895 857467044 886908180 142161932 680396887 976731266 982253849 362584010 986652881 530243997 532702904 531899675 653986289 987542642 989239132 432808597 600400094 977887079 988581818 230376020 247788172 182312439 972414556 495701903 551540710 81602567 535444931 790697566 902654130 147243542 583024521 442566958 893483586 369502136 621705921 989503777 992172072 263421743 409746992 599003526 963398046 244409757 274773841 647299620 840840637 895058847 977220375 582398980 601428629 246148923 499380987 299605006 304027378 409608840 838443810 643483279 666013452 774777208 834034286 27297991 607943885 570396479 780786084 356178393 530718343 157284246 512364769 480701436 893633910 831962481 948107563 471081372 617503629 520492038 744910226 330306822 712221365 985730247 993499630 232462715 718813271 871805816 910865255 769961696 788494756 758081320 991640672 63792727 838158571 712561078 925616663 391849639 910289116 879037486 917287814 891098818 970533539 599420820 793564583 253454015 392333651 777201572 857166289 348634816 721123584 158576330 274354486 117802540 653000554 356073598 758952991 660221625 924718054 143473968 389384735 865319817 898593954 794753652 972346006 708421420 737465495 18324279 265471311 480359011 967955916 144128384 423239163 549465092 900921367 978790199 993780566 546458653 966149397 306340933 633985095 859711375 957249966 827319507 845724727 930894356 973614071 602511439 640041659 353843457 904430434 739024528 795060846 994197138 998029910 664484538 738490635 890255250 944615598 361177164 712985661 532781403 649039560 688674210 863677245 66014899 661666908 876079287 973617400 365273785 785646410 187923770 451990148 252037454 684399463 302044274 632731042 470416858 764727789 461725072 941798517 417684893 968809343 187098348 271582070 774612891 818977722 908827902 963862029 88136402 458483092 60265899 841548955 382515613 496041640 816822684 847090687 745694962 919998832 903113303 963141527 233736968 617161243 213150529 385884727 840022954 845969561 723899277 754745509 784218186 838363322 523674177 701654056 302580430 582259095 972379829 993999283 197648216 691147598 119625948 204757311 227896400 498159996 699174172 805037070 418567703 997327491 75393125 959201394 709840032 806116912 949789224 989514342 180731614 764399111 98523620 631918116 403873141 852097666 602329505 603572468 85794867 796175890 227950122 700405710 938078921 971935746 937222323 956396631 665385740 810738010 768628987 782840966 709594449 756278654 771435140 926262311 190773967 550846772 810128210 857880691 959913726 978998853 20176891 111864236 379253523 619300752 301731345 967422432 702825211 802234336 881397053 906828924 978633611 985262712 605551051 775023649 461772849 724604712 656748437 949481445 409904292 948881405 437655977 552167003 642701434 856883750 759464023 920258801 802453491 924091523 473008642 899995999 461299126 673530387 346627234 760996632 137819512 554631289 440510196 516394250 462137683 764859382 268623128 408054310 299183523 468799364 249500084 742980808 306216017 992436860 1298103 288157499 27733181 354286069 952696650 977648131 749895306 937957324 22067058 491743048 352037873 661039539 679892495 917897686 156228719 310548583 441280417 793435860 877949670 908915522 261100866 658864600 299144767 365697181 576340772 786521201 145344397 496499555 888199290 935596167 657085675 834877092 907176571 974972394 831089447 957883407 821187519 960287910 152115415 253124188 685571225 752037025 22524865 604030963 962387667 979475972 440614610 932936699 467200655 833849694 525143289 739965085 124830812 243954656 994533197 999608959 631069261 907550411 48219763 766830284 71462479 917902266 696033286 713610729 855120402 869090109 655898715 713539100 730325605 976041952 305684795 552355239 433456614 696345890 37072528 251433304 868373236 965020102 582069128 912032192 269522269 868583863 961854664 973723984 653471719 916573278 467281517 700933259 176535834 996927833 736073222 858187749 879472857 921425055 148148461 460601981 431872522 995858685 883769379 887805706 451837267 873204216 659737094 997208484 185334215 417933583 994143545 995408514 861980314 890056929 734559911 779605495 264711061 537961859 293284681 594462242 328638253 751012603 684547568 983017490 99096724 204216462 743926090 894139246 727544574 762033422 817417339 941095817 219388917 798379540 121099207 257364865 388037475 908664702 894963213 997415254 425729578 795722750 437554401 924843083 943192234 986365029 888987340 942931131 660793991 719064900 193406301 628911454 763447655 891389824 73085695 253220311 198196036 837350506 693444137 964258716 470999723 661875074 548293265 621264980 25235647 361028075 397199821 811995039 107030302 163596945 768758329 982474418 54085174 752313989 786005559 974952033 742597509 857967144 413619552 601603392 76385858 694939735 344541638 900718406 457434938 617978205 497420166 573365005 229503505 957518817 171518838 585792720 822224241 990088235 674318471 903272843 939782229 945500699 405331798 942948329 269239655 949305666 902272090 961219963 394040665 999206408 422069537 587879696 110759443 525646026 7020604 986252392 872262165 961800886 430100901 472617423 918804727 987409969 455653573 663470664 667964587 887782254 239858135 793970189 255571215 623305857 951655101 990059138 76304175 373846613 550551551 952534906 98949064 769565892 142775896 425874501 392423913 613205330 995567372 999923708 38856865 948493357 638574274 969580944 321233914 466408883 583465623 886862471 352671124 907815575 497369051 859090460 758471324 956475100 692747603 970675777 838475707 870706176 536432582 940461224 469519232 572555623 917393114 948963154 620812953 675626169 491188270 929798061 890710558 970874554 799338195 833420741 411020323 613009119 493008658 881892196 268077189 726546676 68202840 507992312 126802077 556934208 497107543 855878507 33683782 328790966 951894635 971194118 892598367 935861147 509986258 997228619 364812050 950173826 539740755 687168777 980865379 997165693 154321358 621194894 321321950 687645536 791863747 926734558 896303462 944364743 840348143 952461219 929188607 937893865 882613012 913113189 874884533 890611854 141801985 879222158 972723576 997787296 821122521 927436303 667222198 841390615 94283556 641365221 674405791 986550692 993771111 997766749 810084685 875859898 779751259 949094782 967347362 995853243 947249798 990607692 38125819 708641685 611863181 868820491 890499516 985225651 107652461 446732730 512081582 642537233 775612505 824402907 78030143 383367601 777443275 810840043 970260248 971113120 786863717 789703229 122210647 470010627 320194481 491402785 678775479 862081306 306135474 510154858 109552038 807830340 130620993 666590479 937844608 944030402 29737468 538978775 974512466 997375464 799819937 943227604 284869769 952064475 715445754 764217044 459887964 467146473 876388720 937818003 612887998 863713879 746125272 899436922 855495405 886867574 369559587 778024220 761374474 929139277 581116470 604599972 616532373 643755304 536878982 540582153 611160373 813856609 528666001 562199937 953191363 986351867 184005199 798475512 510991937 568466370 413795996 620782998 884336924 985900294 920243086 974268433 113529665 842761614 665813610 713575531 704881615 982019986 748566677 751880638 856592210 857894191 219271155 385572659 762749943 864278709 610538769 698397180 78780528 566709434 262467466 494291143 714579656 877713369 670631791 673603101 726059762 726867660 678654723 953966753 151439301 779158815 87197211 327356321 269424284 695029521 314573371 771977942 449745528 650478684 499398545 948712297 721573461 835547937 581658871 764048568 77888698 462819625 85110000 644020368 812400088 936852910 517381461 572611625 181729732 234355024 517671562 786053206 540775990 750970779 276692475 944454220 565436306 746000903 759088087 829970764 357477806 809161211 321201797 613743146 482078826 923813814 969563562 999627113 803379555 992972946 334425324 873682823 534671886 536706973 844832415 927606613 162435434 958891096 58015928 889867287 409316972 956387460 711068037 736690221 832659101 987498916 164286629 328714927 101436684 795269828 534223031 556037483 766980762 919903879 802639838 917572473 764818632 933325937 971172719 990067165 815712479 999360290 709202679 714824462 28426129 497686099 624008017 927203498 376376393 515200362 487017121 943377202 269456598 865040878 66086424 407068161 327133037 935495408 838505547 908080407 18682210 330925050 334889987 658115199 378902680 452224669 296353919 974794118 264799164 418227726 343660566 795761140 835571650 877357207 411628709 942850917 233011519 493183062 77236910 405518893 667314178 771659228 447325553 766609689 934733183 988388153 721281528 816617297 205354650 814220689 467177588 792527259 466914716 558376596 38526816 460443778 308057293 691943871 485508537 613953015 234937172 718810359 453827003 810179236 63117130 81042651 35106489 966377184 599572404 686112393 442275821 860511682 880465456 992429156 931210001 999205987 455461220 480833445 755624015 963548918 281761013 568920430 683158120 938227560 296113070 793396054 916833041 980824219 809832784 859920690 217213499 706038463 347595847 601816127 205080192 342233379 48208562 758336774 678918762 717934899 388041210 858686802 613388803 659683071 76184452 705456095 569194651 848343138 990445045 997020995 98088069 378740853 587738930 722239392 686849187 801453721 495361413 867817691 911983304 983723017 733111004 762390183 164567192 410843721 346953749 667574571 142525464 788625032 749942671 784617140 666430124 909142460 159083434 760298201 574330939 932533377 830114196 992917492 427079494 433227960 547025762 904114325 88419733 455151030 835914108 898432780 481373363 996096767 315990748 685822922 909734344 976365744 7946780 951418298 146286022 703244007 26066804 400375543 971325213 986826883 45868255 477584271 697273305 848314726 574721070 934716210 669397750 677840310 640604972 882244106 630564259 728535390 166923011 335102180 595353814 841051264 163056363 757567093 834348078 918954822 39419283 863938073 579221717 702122772 93875019 813089132 21039630 636423001 101069569 291693078 861200857 893282798 526289136 733667257 857538490 925066432 916540962 952211346 114010263 752752078 668626021 963996621 590982486 665087458 517225657 894865245 160915292 937131255 674524994 984757582 102911341 944347529 44434586 747531989 737919804 903109644 799061083 814633143 530350514 830297945 917125079 974123227 488631029 893534516 62211494 276848474 438821871 949245355 149914193 926175812 592981732 724555086 561753105 781037658 517621264 939571723 252939059 711910126 982122771 993696382 151599891 763155588 93043534 721364940 133380620 689664989 246691251 708860194 966586294 982925001 934021415 990353065 447895233 515960368 463137424 831377519 265963786 353639324 463633969 575510556 620885579 971447827 598761639 845682905 110664401 909350480 463247469 543440804 312690275 702251008 446660914 792390979 845778935 999669637 104114880 858024588 451247375 920086332 353419166 987734531 431094500 444517815 276380917 576547145 20449266 88602660 34553513 638130197 907424865 912625022 723162940 758561364 344624860 636687721 860716077 901445258 682210288 710437663 429588418 750030604 203066518 567877909 651271976 781262271 598186243 657744765 58139784 282754375 141412274 156531468 624822786 828740974 13529396 719087247 862726530 934936655 87372931 215490338 392135249 565662233 890766752 985679737 340431726 674288670 952346548 961532843 99955284 709683938 898743043 960023316 967531180 998002121 763894115 765884435 675411252 798428101 3680968 900093924 73307136 300404409 481594129 780017812 831629162 895337063 903581270 917635423 88513973 425024619 752522442 867916272 332966193 569301482 388831415 978443499 412561065 883596793 457042986 677534816 296552540 478743277 366773914 588978922 564839679 841103648 974043043 987612823 8538244 760685694 373231727 494871220 577342276 867010632 895550980 948120253 324436064 775851343 394768096 468308210 365730579 502904509 711709119 864195233 283083027 308444854 423321558 486654329 179944990 216342399 123286540 311181182 949024554 963337000 811503282 928438517 310566807 922583374 541322972 905534891 760524628 941813299 372283886 456677371 326071347 543899353 119416786 485148760 877876372 945587207 756830203 993897893 201566256 206469158 233531308 563630407 984604263 996888254 231765059 554702162 856598811 993650662 13586515 541039077 160986166 600192178 833539381 883721872 887133456 909865501 529338989 837289822 210224470 477833312 440025118 643989791 114414464 968196856 476429708 497176040 677308024 922679154 457040337 872736518 406012461 889737352 442109830 752092615 891835561 919530210 320238672 438156405 500626719 987657115 344714095 679079565 118020088 257831311 934776606 938514923 484780464 994401478 374596695 532090116 92603490 93429274 88716761 204619531 82227814 906216335 867315850 880648165 999785923 999902914 259909260 543935334 85440546 150978349 352198264 782427892 363243275 725625495 266931393 537558106 946008848 990229426 57346228 587963415 401405412 580627648 72539834 801113633 411946755 933216898 279201680 650613335 95155586 554929831 572721493 730135289 861355339 963006766 472246188 760925971 686430885 770036735 315022868 790576007 206124114 634208780 30855599 250964296 307943867 594454031 918037400 986339973 638704375 936791031 682784491 857116483 553886098 743792205 66863865 973427674 341457775 650751876 993706975 993817336 518762443 846130052 472383594 730282216 436894463 611139302 540597292 983876399 575163195 939988456 940440541 974759713 80653409 513613106 890815515 891674163 117053725 716108037 973909864 981483324 557472438 861686438 745273356 911351770 227268379 445400990 948109315 974208554 991085803 999694984 915106967 935201507 643576238 724664477 27200334 286839348 174922874 796132941 138012942 718939833 552934346 888152856 871942141 997612902 864400387 951396564 944120665 999949528 730916161 775613241 283140242 695690313 760003660 935697415 473366806 879895099 611971298 783927067 158051372 765968183 604101561 947207880 116487274 697310027 165571915 787498017 856293154 928887974 604139044 673459928 443659156 924002823 842008025 873094548 108024583 358826008 419452098 626395474 505741575 818179262 882175536 978525420 410813885 619147621 18622372 404543120 854937434 958636721 603315723 826388343 320770659 441910607 115772658 937789631 996107527 997505401 957252153 986806672 605732772 701550758 753837598 996144659 185184750 205079592 159433429 170429179 963773635 967686252 887689515 888747506 495247168 800131790 906787460 981323274 658346699 743571146 329912114 549132592 182850239 932957525 384643023 681064876 955634563 997600808 674640199 874988181 777372873 841690535 738079 539206516 47863001 798236640 767581366 777157787 757971428 968440792 766789005 987747211 700118637 931414020 205268600 276445106 701784115 787338364 761694164 943202472 352749998 438869360 371813136 678768014 949507694 967806965 951081454 991050881 760808825 811962387 71777683 458916182 619187438 693665183 142988433 958334852 963631986 985994504 461730923 483683464 383455257 485928903 7916305 123566657 86667071 839209332 794486246 947419855 470195319 822691291 24028832 921712575 412153751 691038233 335025715 894935426 358499155 417492947 261365891 574691968 695345584 704417053 358303904 622227012 931006347 961572582 776675511 863450258 173309848 690331837 13885194 705434393 251723550 682720699 446522332 767483088 410691476 449150800 812568650 874083220 717460045 854048933 139946713 743514244 695076643 828443367 9200565 614035190 346156786 904888292 134975240 561948160 630425997 797560353 265117383 891950404 194112603 648747569 46432645 102894897 443884449 530360375 74591521 422162634 41300846 688190770 34027876 153783672 248334072 408309881 604974274 784871170 742181863 818134596 117807498 982784124 563738568 582839633 81096410 427531495 119937800 414736175 340289369 578456706 800910059 908382788 997785965 999978108 258000446 660143562 289180922 505965478 657596468 970834093 781492354 943681499 341588898 743342646 139029259 198876147 704406148 741400713 72132679 99643676 624612408 927881352 390778088 612600006 851946425 853956404 818817908 914484088 305830628 937634071 612787772 720224807 268780097 897919078 165467609 372139106 489217169 602861993 598064141 863767054 255516103 719394875 695667059 849938225 194176007 819965341 977445977 989566850 239758605 929322959 282857964 697526111 518515023 712371716 980183777 989167421 255943068 669634963 486628793 873771484 702901566 946963014 497878416 768402935 230628081 721118797 135564905 331120659 861963511 974986416 893280049 900545291 373361689 867948488 773067021 790983427 965068264 982287861 744390979 835182680 939709470 989061510 853753762 891858447 770828974 898000018 120106413 376027288 957247090 967759763 339566504 749340638 956629217 964719712 557781311 722283400 573733478 654833479 116046972 500837081 60268370 170789905 447432638 536312811 997131949 998172849 897921913 973433904 561032394 763397572 147375750 890365039 888577763 941694828 743428270 985309750 160584657 285501490 631465215 881667588 610410113 701066764 744031445 849520495 893100520 988567630 326828809 856265690 951097963 975944532 619877466 750761823 536508343 593975157 712471811 885742738 845809943 849565191 530010428 735066751 320811368 423892859 86776187 644288124 671021592 950001429 959157182 970207503 979630201 988378548 653838368 904659566 132075191 429852846 209588504 977827940 406965671 818988480 65855463 921927436 79331215 813077439 133225131 560576320 174066404 729503348 619029835 744261812 745781330 952825074 346476949 764343933 258713099 300272485 809794015 907079857 600493333 752134492 697211053 748070248 410434343 882011762 550740112 593483233 126311530 371953422 454366388 861264529 705508493 870894541 633700351 915438078 342609277 494331037 415054283 878908653 985404516 991807762 594259543 784560100 950162273 973900400 740350478 966448698 733106673 941842649 315722497 885412676 403063317 748287253 154838244 551038120 851816578 934591554 911407554 915783451 233509655 487538337 933259396 969477666 360114021 963640055 704556576 893540427 823722350 893548465 236909884 321264370 643460266 916494741 289851218 849231933 858109775 986381395 817806939 861994977 259572356 362124051 958102133 971836879 325506367 910673374 325153981 350507643 321204891 405560609 319196976 344770571 773970765 957307270 795610557 880442789 844008249 968527096 331389713 656187888 785064531 865698854 192451447 278134893 970010017 976286493 513414284 571449042 105390162 239654459 660383659 890371167 773202652 827476206 775826540 936175250 329067788 631151219 170236020 617756742 179245037 989965097 733968423 773160871 753840618 764103073 644173686 716892610 68020146 680634553 411204286 505660633 463575610 580391219 622712171 635923295 546705447 693858694 991395031 993099157 33698428 536097278 541531132 555479599 147559874 666590175 516532465 896306025 466767862 643602815 582903111 611409995 798211487 827231597 519767309 694736040 825486008 847333208 939343749 980583377 228275941 882732548 156580812 158834123 688864533 914763244 967514698 989378519 569710185 763405643 38819794 335611856 819315860 836109138 396416685 821755501 51174419 840103070 291645795 771677429 809622855 911351562 229281978 989214684 905347074 988245092 398831929 594989680 818451686 898188507 683852195 917828676 341689185 991150408 500471262 942534435 767062655 777588606 833129017 842058137 164368061 595330839 935900770 950738620 378858819 534663006 636305715 709901118 906648303 925587606 599758351 714542315 244463432 444603199 70646770 720931823 399872994 407869824 913074760 983015225 123041045 863623556 358807306 587998432 196405111 275374494 574050554 667355407 440658906 688193616 652557240 799771427 459268390 803332036 900271123 971013479 960867973 967135886 338862054 769102080 909700033 914875409 777008995 948047628 127471905 965886985 260982884 890472613 953457038 975383586 401555015 515036755 120071966 267085498 281551129 834221534 810094469 993154838 587291667 776479517 806771824 997757248 711211158 984338370 852956199 975260468 365665313 575960456 390387624 516267999 154720310 472755058 585252098 910123923 91054766 245100894 725761856 737876714 747153440 878901858 603526857 656710985 485637866 502867396 952219811 957655828 132496765 484839905 118374285 201133915 990649529 995732061 90433118 96058840 791531918 926153647 146012344 652105766 502696456 749910850 998944066 999657123 214868808 506163281 706838105 959711826 17174152 20834734 875416336 989800176 449126017 924784282 479776089 951247061 336737928 766018305 692133958 910939576 180787379 380479322 727468268 853679250 318184247 499992355 123522491 134046461 406131164 568446139 499822492 836267188 799789911 818007611 333051338 880287832 838465073 933602158 134892930 840711569 932251215 971006237 956906158 996913368 220828523 272772273 22670755 848847247 333944008 958826178 228340202 858227235 369975356 964536759 928237118 941271502 819756649 902062626 30709905 510979567 173717629 798385726 97824488 463303660 562668887 570095440 831729657 834410300 931400893 971841909 641699359 690510370 33463556 557028264 629865511 927509668 179801215 180457774 347261020 546957851 178237426 396168215 861991518 872058552 600180797 848069356 31248275 42096789 172371343 397450981 2294945 622146405 766371649 792420731 394982478 821386865 256856458 418350697 550790941 914583766 86692273 842392774 145881757 773277165 160766061 800427204 931406481 950219777 120993292 949741366 223951574 397678559 258639317 931073353 991744360 996113897 294012042 519008743 1100084 568298665 620143363 977701021 247875858 609530392 791206961 928299897 280899038 403318408 306732372 545003060 80390717 502713720 355155491 783764718 156343250 562282043 987638224 989279510 26282599 841428689 891615855 998183942 641356828 709930235 911560822 919012087 284738652 526718919 692500773 719491307 578250014 893446252 417468768 455647088 528724132 939365355 663142862 790931593 971243912 982905690 655501396 886054558 879983699 956511534 204520421 509741034 36678399 288722302 169998473 619821776 721246309 834999575 360433243 529939498 758403891 976405267 529844380 763622240 665441002 764686560 429611606 839949029 879706560 950272055 735728643 822717130 704784953 841946426 771628492 865404628 668147003 870318685 418772507 883729632 650708982 813880649 784735524 905316607 189346206 377240382 922901974 977703081 846693350 956163217 547497885 992959877 92545211 729958480 562430539 832787178 499782777 963323216 962289983 984390200 266232185 725961637 395733896 970935520 748099570 905711451 738172393 920604791 650023353 933431410 179628661 639172656 725730878 835837893 59599385 579874630 375411881 817159107 61622602 464207033 395396293 474721168 838002894 883047236 950978633 983835462 199088238 221193325 609132304 939924986 456559162 787248705 412281630 437524292 186863456 447633109 14514059 49214394 143259830 924694947 89857606 989911414 465242856 709375086 878151554 916309162 146872414 790522828 397369986 770196738 136575406 331898129 397141636 902944757 52118482 625770223 41982949 476641976 143479392 667841171 900771997 928875942 439213731 499536031 824531819 925266672 611999452 848728337 353041185 842378478 348129997 735859272 789017135 878389885 570040409 857145414 493235820 702484395 753385018 940121554 339734860 664590522 584554103 631091788 621211040 803983627 442404896 991233142 143918326 426431678 591443913 620804862 720592261 860301570 74247846 350279808 68563932 648522873 566011082 696665282 868468717 997052259 508066107 929941025 456825935 950355840 774731723 955677748 174277623 989466449 822786393 917807590 346466222 935827344 268938602 830037838 618287698 905405224 321522552 443736370 294810487 481246473 382458917 777365667 647551762 775085043 294960671 899331320 481035901 763176241 563318002 788114077 466278777 843269712 839709571 890246402 386854477 459980953 142391190 216000085 762896659 893083019 413257218 523975819 51679850 673256399 913967056 920913759 643616056 971030159 127139439 701891841 80004160 626252228 132258989 311490107 196332524 444727479 802139369 828492408 192109611 777838807 902061846 966368986 62673192 349987541 717614365 991175359 556642311 594374769 635321195 944882942 473423265 854531592 366137694 811974875 190347410 466884087 275450307 690638405 686542152 850043225 581708919 634574625 144087886 207571065 398753291 575024875 68275260 489953068 733531370 879967146 80380062 460631630 635491972 775892222 305071315 905145029 250796334 842255823 879657211 996359754 391379325 929654241 922534374 940012401 818512809 930983164 67799547 99432087 973360800 999804295 293788516 890353826 130401600 623039685 635214224 741229279 917769638 943463827 628356386 719341666 2765693 52558123 793062352 818795131 907077595 925845565 10731143 314547538 796101107 846269452 6683501 238657917 872730692 958011005 648815336 715704492 596331480 748030392 63137340 987771387 261148321 841652384 820641506 915070205 932533109 996410547 567668541 960985597 973797805 984910089 244646619 362079289 328316749 430176432 715640087 820468986 902817519 960810518 949426069 962242529 838534354 863970011 4870157 93856944 758405430 833530375 616323732 738350578 402451986 771204147 120191069 496926827 415467983 574612657 333020363 626506711 455726188 663872586 385518676 635482838 973249505 989894937 905933085 992395485 312389744 768064467 709149743 892562731 989663250 998747234 877346253 892358343 613808563 997353941 13098859 589064841 466693464 675558665 177020041 787991095 16683151 721784339 240399210 692648893 327359601 903415067 473840376 879891241 208051541 583856083 767114884 790290424 52603339 692659523 235834527 469187139 746082931 935350239 680702903 825215176 77475246 458778724 175463527 481140275 150075335 415938103 158293898 669884842 411918389 576554159 382911887 640046744 557350410 888959333 794197561 850893896 250983452 342676177 499204070 791535674 330231512 438968696 246764320 309049720 968967204 991068784 247021805 862964240 998627122 998642188 96438187 889429353 505114856 833524534 635951486 653850494 804393084 997300595 243478367 386175203 430018133 795835871 371857197 889619565 840206356 926817910 528593713 739721312 737539529 971193080 5793386 935764097 948354481 954807917 961320157 979847177 704367542 905573830 953263861 985848348 104502967 635133791 982826823 987280830 646070073 659512641 27000512 221270830 583998789 722430322 958299475 988743119 703012471 970901418 493270084 701312719 825303107 840719830 198355419 452592048 915344045 957468358 953622234 997485914 21775104 616885406 484155218 724787236 441999755 887704461 553839370 840630764 409515036 741774608 108397828 216014481 336463165 691009392 123947530 558379639 238757733 287249838 93243986 269815123 750587906 872109871 44200141 668152129 250507340 359713074 554365523 875635993 855237763 951615187 308405777 534839258 446819868 703512107 772469580 841693235 340505054 454960667 991890688 996612978 564203140 792556119 90156446 772459989 424543121 841627687 196927141 730503144 118097597 881822944 933425508 996081936 668980225 962355779 116604475 288619538 558394560 717770315 734707162 844920472 46817932 663586730 236243843 670185077 289413032 857018232 801446429 972948840 973146788 976837574 829712311 914988134 747549598 786283154 391211181 686764525 77242691 563100601 163034196 214922569 479157963 544448544 312097818 845500967 525046489 779962661 176863000 961116117 212652983 437092658 675391660 810178112 606772410 644357169 37664502 232530599 494959841 510887714 145416112 608846039 998131403 999357160 304999451 679113855 413820032 867526177 770493766 826908340 980882241 981828128 346770031 954988416 630058617 769331711 549358855 635536330 123015874 615529360 640281534 793600800 427166783 749323661 888121014 902326737 805501257 878302841 53749487 712875707 640626863 977019760 537173270 915785473 147624338 690528523 623411731 994220676 639458601 890627352 469344542 544731406 458259157 514964375 786543496 907696643 342066932 411835179 794381042 837972581 241799364 388143200 572211310 606140204 965161011 981786982 596909708 951178926 700541055 827516901 86581832 530660073 34731445 281665219 709357310 961072166 281981561 883411311 704812291 909150619 206087570 622491977 339386402 966292434 508975307 784955151 382961098 653101244 9637876 183301819 633086895 841991037 271702638 483242137 119326708 708400991 871457513 932674853 593448004 767799436 343546539 649363846 910172969 931746482 12375971 336063147 652240712 773226945 443460430 736145466 850362058 983006391 109075195 329909030 70716874 699491428 824787755 828650512 619679839 936546731 594388980 632459412 313034830 787212609 266832803 610851769 607838805 813477719 780986131 926511348 11500280 895591182 659401757 708530007 389209591 987975849 143903542 607656025 618740639 930440465 726596211 965680609 987049459 996656087 602605258 638408445 636304903 948023389 288896513 726271980 928000168 943514226 850670315 852310460 140581797 685639645 466476973 887801043 11994270 852798974 280925540 515119659 289991612 298814340 338061167 877055994 867087451 888569854 940317725 985219882 93628797 952715964 209411044 354515863 760982635 978173808 55471731 911774169 980813698 989348624 359878595 908016679 137162493 989007167 809597183 930112311 518545063 868813232 188604135 716101849 906667218 927870007 500450447 833562630 270717007 442112106 147100372 575437285 863624255 982968315 513449557 610944111 510773152 732743130 82471652 186034076 551985214 701573702 937625426 953536992 512482006 790360843 154512793 436491864 704104479 874858892 317339934 793004495 459683169 936564807 7559364 891663763 570888429 672092991 243164213 266972638 13256501 321772416 959531922 993794125 952142833 984620098 120990798 429681075 29711781 452787559 848171080 931936814 216104132 380540267 102050146 241647896 335229938 538022573 811365728 945531330 277150249 872039966 578467741 593155024 869440788 876715127 954219461 965347574 291734373 548703379 433211870 963108508 124039696 720207565 226895645 810933359 858077683 859534347 960035928 977425496 901484181 964319728 584484757 895412427 17846534 642114736 517356645 967410491 313933694 727832840 961919354 968256624 926403113 972482351 553700229 969414304 147906685 202947474 128498118 991815421 694696160 848226705 589033852 952486973 267645304 769951899 748740949 809998776 517693809 694482971 637919694 863974052 861333476 993801096 947835970 952426484 454350882 906400335 392084513 622056046 326407014 621121375 212121317 824010460 604378900 840968110 777339639 811482674 832100424 912316733 825925736 994361974 59695737 718827632 359253119 754740893 809253942 814388814 682121010 956480849 818336799 850397266 76612342 415171873 408700968 947387209 229665614 774709711 907109810 911936153 696681292 971173444 395452995 944913485 722024406 805861209 831770242 928594999 578981935 640597604 355898849 763584381 995571893 999224423 801433835 904706316 574215510 908087564 484605778 817223273 766394800 975992112 472820831 575932347 243396378 987670126 211313626 492278288 782693910 818770922 159063806 597924029 919190166 997569551 623618408 659351132 187403462 429854937 331187090 915638113 27528346 759647608 868355776 915664471 959124842 969631648 622492249 798043945 962977413 972376573 623821726 709587468 932641758 958510004 669759814 874834268 801873134 834839702 291756620 677098638 901000779 993038878 363834045 411014979 204906118 209420989 485476242 894013100 970570750 985105654 284211617 945211849 426358279 789591996 812152465 898063790 852329525 859023355 809219088 909794741 708184473 890721119 113871974 288606404 826674406 880421065 101629020 642478337 258740208 276411473 669441808 825794417 999283225 999737763 403229032 654993533 947649548 954241161 193290600 617827982 716977116 818840559 666463222 967803864 442774266 718242081 796913772 888737207 889595856 987169972 121493787 819701647 166373645 917293239 150492742 372318894 119113248 615672342 72510443 572499932 303181440 608644355 906901976 977733433 504709594 985356941 755037411 860051476 477809952 631715059 524344336 696792761 744797125 966090137 486862686 825121291 902399142 909234275 758735715 924129324 251128046 666699815 646606244 779219438 922353000 968683394 987598545 988403349 877391889 996092641 945930884 996509396 507901756 951108681 4195845 852802006 468968770 842928684 830780716 918580237 523264052 694167980 946330395 965862074 706772778 889391406 746462577 911777061 934612533 976686429 668072101 894034078 965650375 988067649 427014437 452967639 308497364 945285244 931722814 987248619 315581470 876398325 441024313 966357467 369869373 465030692 548753581 577115742 266990671 479818457 659088528 805067469 649743796 996723510 142764227 935872562 262272704 279886994 629969954 846772893 573015348 904450458 783547870 882514223 861890911 981153784 701215974 979919636 869509629 869533207 605812878 915986757 394613847 470764893 514608578 731199406 524269498 749973375 764565802 811873694 657976976 920301214 854987414 980135708 448367032 706386385 331073864 464113398 579300672 847459724 860685203 921872711 299736986 841985045 162973978 653507593 108430120 410570217 969371992 996305060 894434652 925433409 434263866 569220073 591132635 670636636 54745699 413549284 148294093 487469694 151225666 816932042 759059207 866521725 318235835 634979150 703318073 858899482 349696208 941365778 726240646 944337363 87903201 549265788 787581951 936127450 811360662 950774916 628570361 831477295 532527989 568620057 865139990 956469479 159619217 411233458 280973432 694922893 899396585 942173596 297714060 374426324 93563987 497521142 504112115 706346424 426914690 431555927 456030712 516228782 10865793 851211406 525983318 945243818 378922815 688198957 265123128 381065357 750899071 902822539 422900972 492144951 351695020 995427513 889649872 988138011 577537968 800195961 355690333 938826820 435641399 813781591 390118547 792097717 838564231 887816994 442732417 851629317 594965831 890946096 920738896 978480054 496623567 521868229 485271158 650162989 378574143 704374278 128185212 459725089 775014174 925488917 376019307 941279042 46400384 824273588 832846256 984707844 758078236 789360263 829746976 930227637 6381189 237218090 863007453 877136445 755172160 867315867 604066486 972285669 77093346 814556773 57643327 551744352 891233042 948223498 414555887 714995211 879873816 940221559 821469243 895414140 274776014 604129462 888349258 997608728 235347887 760225965 469088869 944213741 371136473 390584512 737263666 802131218 151709372 184288273 858150613 915493844 476966133 607527475 950289632 973822351 646415450 827076032 971759238 985881722 103668584 296019157 767324055 771463807 652800640 792259087 337509618 454515430 428852050 453360123 649031681 814613810 969597463 978186630 896628057 937298788 338146380 948046367 384733000 960619411 293940570 905593116 243491546 900650918 50000411 686959735 189404832 930425437 39287025 237868788 79521362 131419203 183307277 296821197 639674720 856243383 10491182 159032095 202431095 472780942 164670635 864089928 831324679 949422822 366212815 473549643 471333289 810342479 552645790 595877249 851389022 918947469 953799509 987256531 571786641 740859083 268867646 846830408 798069004 958886057 466340838 812137213 20560880 596937324 845525592 889917229 291898778 615041838 407564496 572380489 744738036 847127693 654179006 751258384 110426866 517236047 967852096 995751510 390101664 826528486 303739221 372113041 601025617 920237730 460308823 851543864 171022495 845059809 381989736 930189676 450746281 510122141 486239874 705389117 481633443 805640806 477838227 628825403 661128387 850155214 384505236 479383460 161202871 970647506 776120422 970466089 839839646 887152842 885849604 982634601 530534810 553688954 350487515 450766632 457118260 847040410 972711612 983887691 738890891 786031538 719786758 880509961 423892455 984413845 942832549 947304209 232731542 675482204 768200408 931643462 516088725 789473937 279573147 384373704 317578202 965779894 669394954 727967523 497979942 698370937 617860935 861871551 585326702 813038933 602383869 728251591 796137096 882849417 949779584 977464466 366311432 769425307 909259603 962562111 570001234 609296428 763431610 968848548 785115670 932107232 51679208 82985924 805549258 876828234 743853086 763446028 975405667 981733743 182255423 631471101 433463033 719519590 155982332 809292217 799399631 804140412 533052492 641809021 6663719 350174178 950165402 976951210 678199753 912197915 12550858 667418437 951892964 974586783 679491099 974114981 684051308 986982874 67481335 489187909 12875971 81882730 92699233 262024202 678785907 816781448 243018681 994390336 396981632 578532580 356216410 414642633 411560869 915692074 715419130 931721538 361488742 531065280 433411071 859590775 52324257 210779345 442514210 665645804 587512874 974967788 984472048 992140382 185619382 834924943 421224943 545430483 960491520 993720856 595277985 695555525 427282017 488792745 683831027 744349520 84305219 866497910 376723023 437669286 471873034 879554259 785094076 860298632 839001965 909337904 456026505 781111787 688208949 969961718 759645871 958241602 635564703 750892789 243860107 316922985 115522862 859867289 235832250 238431114 756989087 860295623 188337536 192974604 606336372 617082330 784624552 789364413 102282813 612948990 772944212 790131826 467289513 661167572 156103267 213833935 550664430 641660998 291082503 818784178 14169409 209566779 870715771 897044650 367489679 865917629 593203168 799707399 271102639 519348025 544107909 608381728 525517418 826916175 251975228 908028584 694353355 698398783 956225011 987653598 730242211 847564371 345815061 913780919 604757738 814109039 754538412 949512006 360515773 603598746 514726715 524274257 830197156 899293658 792317011 940778968 999014455 999514805 665231078 982393363 187619505 358986118 671222927 812829345 644698835 997547442 884472291 900454896 997184948 997809220 352878714 689391555 862323161 922721536 529455540 955786948 329083359 570442358 184348632 673237457 936605274 937299966 404197957 405061613 370460012 379277143 237108700 276979430 249496594 450373967 690240449 824125192 637868585 780570599 492180677 986782662 294282040 700081608 227386285 350262657 959453460 967136279 140604669 664561594 196662129 596854274 150870779 380222796 313331307 993439101 725166628 811229568 295788782 604394813 603398882 846536588 492955663 636676764 221016148 594074714 354935145 611949148 223896527 420738564 585165168 973483211 837273483 868880232 425642497 498301149 611143622 641109137 211128954 998164039 517943549 715020523 668235948 846813893 911344639 984239183 924109544 981274546 54693004 650481338 883180608 887502674 747546736 992474405 222026927 966588000 967567710 978671372 761658004 933583939 559275249 996226738 698407911 825323684 976496255 981681145 605989553 845658542 998686022 998760109 672914319 707934311 590397044 836548708 53188023 544783311 227926251 394517262 502994687 880713539 870281307 888029879 223776930 768698120 974511514 995902937 683391932 880563180 502929248 508311471 398280485 724775330 659121285 828919890 199227817 917812170 409982153 699954656 371102706 503045106 178624805 495616008 17047398 485702431 755423465 970688823 138626041 919965957 293237157 699298503 909700130 972776865 48795745 594143552 483837947 542036113 779163597 830252324 765928009 807339168 545607866 866550564 299439993 810544788 652873023 913383564 17868127 164150332 169279168 226122599 82645936 353728918 218191966 592789220 911879760 986108476 74047076 922382625 342475043 648020109 968758611 996206947 121005425 266735345 91621524 983013563 353884724 936696950 69125002 510806786 714028173 853607214 492913263 718609433 856772301 898664528 182218747 851130253 195351426 248617004 125262433 315184997 47873714 885667916 291163575 870481183 739993963 870773477 228354084 933475181 642522676 955739403 847983268 892737753 643589186 696342152 149703520 180025316 222638774 942926313 512285364 676678491 639818035 846380262 996154366 999782951 820083189 987319467 716458875 722575633 411930536 606175468 75558965 408408174 326745356 727891230 952161498 995442966 908492876 937333769 300199865 733542993 705028026 953768845 950814275 968436425 167603284 651201268 8149161 607290745 567423754 799340795 242073008 381866354 453271173 934701877 472196047 986067782 360945023 826554500 148517412 819974824 372390122 685739737 883506667 934647878 908341579 983278659 84224045 892124382 932048342 981787342 384855356 736740862 410297429 893734336 165686345 366959038 503164564 720748374 694737110 704631667 473214902 616245220 999048626 999257037 298911484 735588231 244368373 810005877 980635066 985755093 360715745 712902379 511135622 638787381 973088650 975765730 684385994 931814256 71901130 733880901 870271125 950814490 571321721 683989316 582003406 797793262 228934488 965889561 908327436 989437228 319451371 539311518 508171097 784139733 894015639 940499307 880748064 942203655 696525154 884716198 97877204 303657551 326190050 809535575 289629663 641327808 548180189 925763067 316098118 493250787 543873866 614616628 893200540 905319198 600504821 640564537 373179149 631951076 203092954 878662134 942580675 990463519 487345025 982961949 785865198 852909900 953568288 974585271 839410049 922209718 250066635 943727404 908778385 998174138 133282695 530086123 342600315 731556528 756943972 786268765 798192947 842091170 152254300 680270604 842614283 911477233 418494926 901126280 391461057 876521193 819293995 902447250 535784508 537203845 874194285 934905925 930180449 963549999 210988667 728914357 899026931 999372260 365379492 430245119 560683838 648629156 991530307 996302874 38412391 647367380 521887989 730964887 466382679 702640837 533083128 547013581 662444449 953004579 78517400 971029068 848062175 883871755 525881125 549434230 139292929 471147403 486113841 974023220 126861844 252070312 956225949 982098758 364835797 366639973 897195751 943173577 959453264 967623348 406072179 798793171 370732738 974812319 957345908 983108534 495381347 612767428 921203798 924458541 872883643 996377604 918331570 978334089 165288760 639098081 625308238 906336291 183525009 293284596 34368868 920253814 802604612 904336271 953661459 991252820 497929481 985139586 216615699 478682175 132765572 693661196 953628161 969253209 518210336 582220331 844502681 865949239 833397670 909973758 812579285 845501146 450897915 871240899 552323572 797168061 710096174 935177743 653951959 969727676 426560510 775127069 679169137 851623204 356431896 615848433 323305842 684821366 155124959 702465585 438921940 958128274 481196462 814574733 395727137 941988987 643260565 970051199 852592029 896092205 762755800 954315316 809902371 918286087 586284220 953342110 583932920 850091244 648788036 736373436 393861095 523749895 199511237 391997634 75689482 773902400 395443835 482009100 236314257 661862769 249746798 671047730 849162358 913817898 539220265 613398073 298002332 618116539 556913479 992268020 456404335 482182279 178554104 222485242 288402427 929578244 859014628 936777844 811900602 910146765 903074184 965565813 631994226 988485972 103237867 933971883 706403228 966881990 883633615 884683198 655415124 800350422 56570452 820199179 579829214 850630726 458305529 955782519 907272377 926734040 122962520 610082845 655779237 681805405 971886285 999491931 290835077 624749449 540782251 850236599 248011298 764197417 564744345 653104123 216754959 754931120 375952551 746137493 333628315 527296634 271480989 862660247 824548404 925705919 47322797 917597345 797888581 983705025 623726956 992677300 415042118 646227838 231082888 309828735 178082793 748367194 825287748 860913821 246963865 253151491 859677309 871196116 474095286 743151810 382861972 881066341 99583349 515057754 24107833 117848147 60322444 484561863 396939540 927498741 440754297 842462460 490590821 839723121 941741081 955654332 512204211 657252897 156682829 703342266 430562376 516683514 684984943 938609256 351888206 443075276 463038184 899980388 936401475 943488834 941546063 950267003 628324416 926590082 993252633 995884031 498708791 840550470 417806005 684627644 158296702 846438458 627165604 755463076 967407458 993874582 137191447 703610180 285910720 673049227 385039000 949066747 80632011 893002376 261984909 827258725 376662676 787916985 123621272 742588450 203595087 415636987 541948296 867588416 60176352 993757830 138640676 269001115 89218932 945247230 743877080 892500580 869909562 943283817 211114900 955302164 545344987 906399758 534135453 764827081 839052883 875078336 112908362 197547234 481580549 781966867 221459969 428751394 925423847 940383213 942142938 984085692 147841290 451959557 145654755 779078396 750372887 800628869 543068731 543564730 505180947 857611429 510948640 535345306 907945906 943885405 386069751 638628382 469958220 606329888 562057363 697851146 230770166 523886268 436823782 791382441 977383667 979087127 115684045 417455384 731479629 909741291 875300985 900244870 115879318 810130649 949367194 962063908 808618752 822533367 167776485 995085775 726139033 782143523 53259121 637314058 280945553 719650011 554685244 890269319 692268297 753406212 445662908 576292059 76406062 84032526 703718732 942319042 749818304 818017063 318284653 456149601 299373464 748750921 581398726 863690567 757354517 765901423 633301826 742134126 979115041 999032674 510705265 763544992 913514709 968638008 961557497 998916736 335165190 888937606 453596718 508338156 8375948 751512941 26907252 496904305 226636785 692554826 297699708 661122339 21084682 610763462 327475728 700436954 490613466 651278166 105142278 947649534 127815792 477697042 730833597 897316265 45559021 162978686 290669934 657755688 58134567 485521816 411356652 535248914 938436472 943617653 805802187 840098555 442403532 887689372 121203750 250623443 159741228 322125503 114273611 264085455 715988478 932200407 893665655 977945978 542545949 632104328 19951014 434795690 348933166 708069454 30081907 751363401 584357653 803419357 923437764 974328694 152547756 921037062 39623053 207114479 639300918 964725923 509143914 539702740 703557664 972131304 406282930 975040187 91732609 520687111 145954626 294139773 315753986 420909993 65360094 71781465 790568318 798245687 229284807 774634962 435102383 997699781 722755142 781176127 333643679 418192855 765382997 820523781 692289364 998706822 978808379 997587344 281259284 390611342 920497234 982984344 461101284 712163551 548726811 944319367 845543116 977620659 872526169 932390470 628189847 917197992 144140384 704810278 122365314 650339839 245523446 251011675 770758308 888176104 196753832 960801880 736311828 752400210 169303151 620111668 108805973 789705890 282090384 904821449 633277046 989997233 327220709 730527309 177460301 530600845 711613056 826869554 544760639 566351718 142111928 781460775 469529992 770575043 12725286 285434161 360459609 859191821 357801946 682891380 825849767 953409633 167965267 522261315 589208067 601376590 103723405 573025968 214795500 859188379 561645481 646124498 69764200 925889655 311895722 768560398 766506697 808691497 136524146 869204693 630857134 976272643 620474042 646519312 344427906 920426089 156329164 310386739 869758009 902219002 558471128 634280783 23537404 879663540 328059154 779337185 142876076 172643480 334164718 902545683 503175595 824990565 92333778 197831281 203967232 685992046 504071589 903492122 313016711 732319335 272474345 620768937 826302155 891436971 231489077 261653866 6974914 613282053 447944667 910293242 447537937 518248455 180246584 531344612 178083299 400221469 187714244 533336967 732197917 844289505 936991582 983758771 936289390 958881338 679035113 844300997 162834337 630741884 954945114 973660136 653577819 764120452 889980326 939848400 29291229 968766207 699436902 894196948 852031127 895817831 681310134 888251897 553051390 875891434 254744243 745111766 712302618 816826916 670064960 688362850 239870082 755068964 5328910 574694049 824408017 911256987 420140434 472723094 164896356 275904155 879063623 968591272 461203439 677048399 163331174 938954699 637897955 995672887 325176635 937143073 921368352 967876450 225396393 473481526 686015775 911313366 47636683 947760376 457609207 642994369 42885948 47525064 568709575 889939018 816964686 929010317 179454474 479003300 8629780 933140064 375911425 890938999 372089527 765337631 791706115 865491808 326394162 524327535 822016037 910295348 461185585 641464379 17463129 678376149 83289910 306550738 713434131 986166716 840386488 884581122 860399604 909419305 159907486 918705630 268699342 367631075 738101765 991865275 123882187 626815664 137678555 512640921 288479997 828667799 852630357 949629794 800374807 872344944 107003125 349165669 70972850 179373398 644588652 793801064 72045794 527131450 171725133 943094404 933904289 973512456 823034709 985830155 920678762 970750995 954399141 997940567 920379681 942270231 215143056 571327621 585547333 615368002 518848037 805561230 908036098 943986646 308966606 618118390 590322102 993198982 887004354 922907757 419139069 528725670 5618878 741536735 46705760 868620149 532207453 902797897 866805643 987470528 588107989 757813396 68784073 185899989 127180064 551313506 366918814 711517487 621827178 796374206 749068347 763695261 10015886 580504914 371896938 615183522 236022405 574829166 224251303 888901099 206517985 506101990 549099714 879790190 131852667 315282150 878168624 920463844 418139551 729959167 30493240 252701743 390387423 541242294 903567388 981057531 910298409 961950634 52576852 780144452 285594014 481236975 715524055 818611648 164301219 488010500 154730134 362734511 720970745 978688039 597321278 889729389 654742220 796607734 310219370 526831607 773294544 866633908 566439396 861510368 517210178 887851607 434695909 550327037 435482910 783759510 186718821 237574851 449084904 927478401 789245265 982659093 611076088 941187128 504696195 737780431 550298196 997148528 738477469 951667100 555449219 595595745 138363273 908711082 988630288 997162751 448683278 931845142 928096128 955587960 319077425 707100963 968803010 994920370 439960512 530128862 639574864 708639091 322935620 832255869 392003880 625157318 178947687 259347883 213200199 907621737 346050992 768921856 567627832 997982758 918112711 956588997 581946728 900166441 617763483 705178450 960028379 960173210 579123086 863589428 937919956 960350158 193007064 333984378 355387331 776947661 954121153 969267626 906114624 960783959 448481768 574333801 523304633 832267731 572645134 810985334 575804547 665150874 165426521 582153524 115029932 795337379 34113331 687453480 639739736 905256238 453281098 569392964 522746446 599505416 291264469 669575283 769043096 956279994 220539155 312474860 313465791 513364121 52568832 136888057 986144865 993847709 932459065 974741447 24907274 764534699 222334790 531888059 101129913 985969553 174262931 626329178 635363795 822145057 891008540 961134952 451676591 602650774 243661937 441356379 882723301 923070287 605403234 999021745 428634453 701569019 79618426 418686549 370197959 872273025 148000687 249444119 201768765 596036957 996932363 997417252 390895260 546946839 661246262 811214288 927080879 986011298 394397047 636141807 749724014 883524360 316740022 439360875 409306787 842769005 185094906 854647049 134125493 664301680 248463793 411958170 39450741 281221375 11006941 46078639 517748333 848131883 463200123 667598641 535257398 916116863 417361436 529887719 152674791 777336952 505642806 733583704 560945865 911700169 750686617 850631231 650535896 827505711 985692476 992475087 135859486 474125715 118339765 592830273 383476101 864063466 980694775 995507938 239601733 592759256 892270965 983856411 975299400 983274068 937967341 978762807 625973706 940198294 698529276 922035011 383972072 778031601 15341027 282860374 63394120 925872816 425419939 573815538 629891270 799858887 280018310 446603788 4216278 772468393 218350840 284450785 82808323 431268860 877703068 940329774 418759306 858192795 868723764 996096577 406503844 772982357 741641688 799158201 684620683 931237377 955178251 991762351 359123662 489861412 267106274 673626354 746373964 885934593 967309437 972004677 58970049 93242399 201709769 357307901 832916337 923854529 252717307 859781342 821748775 902013921 881862373 900156446 671216360 952347933 615540528 867442095 773232708 917260759 888866175 938795238 268318781 727386510 955306914 971972675 772712951 863721207 927365498 998318795 985759489 985809042 71525360 567358214 479374950 567043763 911252737 981656832 588851080 645335627 460100077 772780789 307415047 530451095 786643744 892213591 213591187 636346236 171764282 763487311 92347965 147297606 900909803 938566724 685719379 929582539 242559651 827893069 327600938 568929548 642546151 732751188 391455597 847576767 106710232 152677323 974327564 990794890 231648092 780779297 546039445 680160850 258043440 315590511 868380187 881879634 768130866 824335337 827628698 904928108 565204641 595752080 489419638 543454031 34281189 293427786 122856379 852192601 92377559 406136297 574552956 717705862 720433397 958791075 281963524 633598575 579231654 759835246 294927180 788999821 983914376 995428913 919903409 924811639 913561565 960339467 539577983 952744231 197234409 242312807 100303187 901927114 235653924 953101616 908925720 971394014 796703876 880909821 1767450 67411352 828796626 849726580 63705023 801754891 780436062 897367100 916218846 983379948 920584796 953909411 332691320 847591145 451740252 552192467 183749875 511387967 935317481 963112914 617604328 926960593 609639661 678732118 391085658 953206816 324145980 360232856 943643866 996163799 974704909 983135187 380756404 506884199 275598200 495734981 869729063 972080282 801310303 950325763 993004135 998728853 311064864 567623198 494722509 517869318 94953529 429657999 842179832 880735717 629815157 760369951 196198092 581619792 753619198 938291628 397222872 951366668 297394413 398023422 945358764 990664464 798849186 967652528 374437897 832149048 839073581 872791492 12029474 263708936 969422010 987080696 577098684 602015238 471366642 732081332 701139008 852181238 551899771 847190283 688810879 886988716 909769968 976724568 890059552 892448666 95906569 825436721 704013926 751413207 218793342 516575161 997441413 997737704 141557567 144858572 136121805 682945694 373785310 516682636 673449398 923205391 412870260 425491024 81649286 129392918 693914429 859933931 383518152 431680943 905470615 967738531 119247723 606459675 121941450 825067105 573409234 951499562 794145430 999755552 386265722 756731566 940842162 982486551 324758941 957816040 570707644 645089296 972459720 986208910 954148721 993614258 733523326 767880152 318062894 387502501 311141096 721480810 978200801 990455555 43658243 827233635 876574658 999880961 579001261 830410109 272134796 435390131 277037457 441025405 971050571 987867155 202430675 511808622 829242279 864091545 961925673 972962504 541646538 746423632 734936782 894494643 493045238 767538938 904765433 920109996 385831243 530569080 829857247 988896548 476423185 998892650 936750748 969676837 987631903 998397086 419073652 503314553 907748616 974956861 403741027 945212701 447747390 836620564 581796690 965460958 566347021 602481112 952183448 996835718 80293070 145368624 866169452 889189603 335382429 792157583 336236653 782237559 544622249 705420669 691329412 778297798 696378972 925295642 889700853 950620877 677700666 740318043 583951596 959697434 556439380 738626587 610071637 642843984 18675677 113983163 620218257 751155116 625584201 709634036 163131374 323068506 387771727 935482152 348981236 931952687 927941541 984721827 703512702 924030110 760115575 884251755 283643952 921924939 340345260 621209925 979848509 981739729 489392195 733429442 135592049 394085670 287337912 731800886 558932343 688386806 997472848 998628908 209319504 397028623 706270451 744566173 63811194 342930128 482866182 744183226 123057844 243614013 300856711 965343521 355087430 578296443 292797078 950353721 11076409 283260793 739813873 809732569 755704733 810886617 902378594 961154999 988049794 998472325 822433618 893257160 632906000 850128288 930397134 954990356 598414100 714517553 378242859 501371712 187129372 400602085 471881781 537332905 144701655 870968167 519663265 574226651 639380721 802692458 688371262 842493791 122245988 249060201 626183028 949463927 204384145 709403353 46162251 64176927 44740119 937397935 104691466 359034903 558072037 587055373 532031765 666859160 170518294 732769341 96564681 949426915 492424891 816153657 628383704 689629706 495408190 889283153 881271231 949207945 93677314 685963636 662504884 813472851 88294435 286869631 386299962 448824916 913248011 919452956 279169964 861955302 517881041 522903128 86799880 401660880 201779882 811753165 742540280 945949827 175489307 489095914 656755590 954331318 908268153 941521292 4600616 385884163 555891368 816041653 646885658 818221041 150618497 225206950 957162129 990114657 331210980 707146169 373811631 590559666 81832831 159528130 298564577 748874715 74878765 326152848 928175653 963045513 556847735 725320299 453123298 595842838 781309494 918531257 665268097 733540673 394133709 688977605 344889390 741676489 729655455 999413899 679849185 696311119 526489906 679241961 215714032 747916932 597048079 678351918 169492477 892947719 695956241 712119980 896000062 951299953 468055689 537541963 663736634 917364153 657608509 840103510 442088857 628526385 46505520 752016313 284352802 890077985 402104220 966731279 914047663 937921196 520856480 666649800 388736055 429945951 131303594 843271078 420566618 790132804 397347412 931912061 828009784 979373046 848656205 984914183 460231056 566467124 3277426 979029952 993424665 997515094 49971461 406258557 254726382 720736200 203054035 519291260 913113118 982924120 45465256 669136011 865901102 866764149 805947322 898763783 286542954 804426999 824039369 969175149 99741946 128471672 479505994 700864632 971891606 995490214 520578808 817110668 782123078 974479070 884701958 989277040 988279690 993658789 445219744 530187677 480654406 923384707 899120748 981615035 987251700 999955921 458394040 535770363 906875093 939360485 492950465 822981547 471167970 755658518 816248427 832118742 365265851 838390834 793366225 957615801 72902706 956198843 776877771 814121782 882934943 983697288 562696006 663594031 515393792 666191204 739074001 893532837 417033876 759508888 487670107 875906659 802539471 896777527 140796983 841095101 440247829 829133043 640878103 949453151 291430793 792329793 780195537 822000464 136485339 860909077 323534190 510027252 312853102 363308003 337954291 755647303 248111724 943314302 232325510 539816371 32005034 731242249 44954272 206046842 706664179 798253175 385731006 720520747 345239436 471163742 450499267 505469056 152587376 295059819 265166712 943287304 175799115 992576050 160811081 729467133 913132265 983794744 302758235 725446022 991579164 997055093 634327586 843213849 454953382 994207242 972195973 996984961 142289658 732371878 361304806 752788306 855542505 903280700 616369512 785748010 772349554 935980984 278203196 418546200 342753774 905995521 101141609 595934392 849716813 873663621 776860997 979595259 820204396 822133970 714007387 842655314 40039355 571508780 549934077 595065401 651231707 687258756 696998199 943964221 218002001 987434871 819063910 944590522 559881284 564831929 250848915 347762195 643194519 695993235 782483152 834142762 160367147 785977139 875096905 980575972 881755616 970488496 30734180 812335353 574522077 593561492 566237230 571347475 114758268 891013536 158611283 683742225 920124734 934115004 104763423 740137060 87467920 148284097 901715533 955389565 606969493 882082541 413601968 547016576 608195208 819986635 263532573 608273455 451055525 733243997 776847727 946875580 213620728 658387918 520307292 991393438 811022116 901305208 326136896 331996235 497295474 753993666 368906422 571319612 887654940 982671174 446330697 493711165 296293555 878054381 469052526 645758974 270173053 868784723 205695415 775403173 587501612 992490965 285819975 590685592 789837327 810452063 454518223 539252358 192050651 946352176 895922067 935660996 92077726 573160715 99053606 733516625 727808070 759202049 29010199 421952313 319266445 370821305 55404128 568660803 863821351 940329460 578404205 786565753 806141889 985313245 861999249 910738758 554301437 660649701 510890951 818756994 717547318 749762779 287216141 591744201 842476646 954263030 8777220 337479455 808167601 901199824 278196896 693928345 885416946 888737074 477087383 966736655 384959873 460278450 866122950 912736852 397664407 624947779 670011268 931769845 665454341 697797718 870353189 927183807 152316802 764656298 844678906 954916251 337442828 631525116 651092753 676763143 137070724 472743115 153745665 206306423 643587093 735290013 374133793 539498277 271624760 450625671 923266571 986489670 978072591 987505013 952770057 982352431 520966577 914364952 452227593 920791444 955351090 995668833 422402077 624395556 248873564 972681064 839662305 997180327 894452376 957351012 776607624 895688739 659916382 715097360 376734877 731196139 596256108 950742094 585425308 712361413 166908634 502356021 316530193 884238703 978034021 984134934 28992550 532695690 324206558 748050574 496160987 513776313 60799131 527786378 895001942 967651978 669944091 833562306 883605141 989947571 639997915 728401651 524426037 983945826 121979562 353688853 373131531 520281148 48147248 669719417 326556151 568522359 458228768 590574064 438337693 599327306 460082373 990228885 861087209 912097052 258462118 345927801 276917553 784025453 325696110 506423291 120409452 649312894 81341198 129939051 45518842 243920024 82456553 843453629 183679518 926131179 694742559 939354230 605045309 619777678 89345138 708933754 939688950 989681219 688659570 961511573 597737759 671663727 595349150 727634840 838967447 929825005 532312884 584382758 721022141 851517104 909494964 934082953 237081773 385905267 207304962 560471971 174761430 779730339 240673125 822430671 558932350 813276392 316411643 902182968 166864145 916086300 241394315 255090067 508726205 659496115 295718417 580840129 225941493 670365180 869477617 894338051 925948080 976358995 250215941 914850501 681276466 723036162 239912724 589519152 132037733 957821077 823566155 964225191 724399037 930931870 509786277 856063466 497989809 519546283 397026818 601669302 10096295 919364467 678978151 992308204 188019360 402802970 272845854 986664660 372326267 866144192 43142285 897714639 561325401 822930218 357157028 711849163 75648443 724470444 239228065 836630830 740701695 883572349 130561572 827715640 461477386 630786323 569756050 928388728 225568604 982109720 987559519 992244776 679097805 972811378 810064753 873313185 816024445 903205823 72026703 435560244 778339014 987312850 772033603 974970323 380439438 697759118 225769350 682527093 164420322 236104244 304729419 428236878 56508754 811058551 383536776 749935668 192103998 912192993 612404048 855901844 771336237 994077132 238602909 508902429 581532487 782207551 408878283 990503389 91262333 628764351 579350270 941474925 790130399 846547244 247044583 375956727 559349793 676576564 445862459 733351268 551405338 814791169 35517198 233985702 179777840 920203054 939764555 990855694 506571676 592919681 86640596 675119205 307581871 790415843 316274873 919555193 843928278 941061258 352325427 978792335 472532466 674822607 273977321 850271508 470697524 996846991 828131401 990864906 331984020 991327770 946552625 949587023 625396852 702799066 415932740 549083016 458224799 685320809 279337461 424598926 626602505 999099820 484349576 917554063 466871495 476769847 646488289 944873792 75884190 445538644 379958245 488081720 69055681 422810527 44449904 467862628 987484946 993891673 951110544 955789715 802168620 872877084 933988784 954730202 518175565 672476776 111108638 345080270 10447962 895465894 784136303 971506799 138073589 864426326 401356743 529839321 107918545 528773592 970271815 992116647 504177532 947393514 464941825 529619468 304814258 415995144 42390567 756412614 474499536 916325151 138727321 593581028 742356864 932949216 40535264 602558613 917247243 944650246 450191210 544369480 861362641 887782750 607277173 862293400 810995102 915275256 999412780 999954183 358595976 416642964 798756563 799258824 854668492 878971549 869211819 919200677 968993634 993866659 418882038 936229442 995913472 996060288 381804754 550162045 405474275 808197929 212461320 401202297 615631248 823774074 145386451 720391687 750644311 842710184 453471665 677637527 93986683 357945098 837254727 881717197 656036027 899766805 713700777 714576438 46836518 497700013 856258034 931708915 228237220 860970674 471347556 830155349 324884941 721766978 587634648 684413761 730291790 890431251 906643379 977264684 677588114 784919113 614210085 714136308 540598033 641069552 814807258 863938845 64831835 813368866 83982844 480514192 568975684 901344319 973399150 978220482 174189849 950389670 882473838 985333359 622470937 830515631 940041994 979928648 665925856 884954730 987306958 996225927 33322402 285052378 184190642 396594972 922302836 922859734 673454327 823001408 736485253 805717982 469870944 646258032 388614953 916487783 460046077 709064753 854772044 977331377 238256503 246741670 416211619 582088945 602201177 669906384 52421582 598657266 761724349 970207012 761576212 976960075 334739143 926349886 746560069 787191178 756926355 917510268 829023428 888487274 472430302 772865123 522947082 843517251 827959784 986300138 454923675 916688276 771764564 877852836 506890023 523054646 597194461 888985503 394232387 714727864 994101516 996393902 86517324 568405668 439917559 679722605 242487686 938975307 980441834 996212990 872111940 913740084 944354740 960688817 307589750 947289460 762312982 946818011 313156831 399916468 597115023 689773651 141340898 502679837 424485849 506277886 270470491 700267263 540058998 771950264 909801793 938485066 810135898 959123622 876409495 947836490 938789101 958796898 332282649 956400210 483278208 526620160 885993590 977009227 318678945 480385417 341479126 980426413 714251006 752507175 130405517 193871868 681649641 764786678 833926317 963401238 818698708 936356493 101668363 161755039 265459603 346540403 49948425 163546649 337149372 506208540 525754594 928242057 571786308 660966212 714181191 801997629 309430864 931276182 729715909 801614291 820862598 950900310 126796257 401434062 514946948 886424275 877225735 957843578 668642704 847923827 644080821 834897882 894540347 897968261 293488909 672668003 409591212 993437312 777151461 981368574 777050432 978962124 262151546 432203308 482543554 539166303 480156744 829048111 925766267 935685957 665635909 832928646 55857359 464802436 441988190 698166450 52666098 952549254 726626040 902142460 17606411 77991272 113253834 834896421 618781208 997420200 561102577 860513791 115894366 364289912 557158229 721506425 224380205 781269435 304912509 418832725 928623503 980530571 973310678 982140869 569937962 692606889 893935104 929024097 827736705 915812887 292984395 783086078 182268526 603377896 229335553 291755832 311229309 320670449 369453238 936108349 442723529 650854061 341720383 984899211 571244167 928431535 213837864 680891128 751023459 772907157 506632758 924315862 648045915 903801878 133881141 702940345 287986983 511875024 219942466 473470401 850933540 904907506 666075647 968106706 258074873 760801153 832960273 966077717 18803179 745623478 130772011 933499467 871200670 939462480 220373642 603106282 619662182 808375873 264664581 404466422 115234578 906613881 625790431 753013667 916800902 959883386 993005552 993381288 257021946 698656992 11793677 602211071 814465846 968788942 424413916 600937763 121040781 203734723 871428326 905300737 83707042 187658826 147032880 627336570 66828291 86177454 216234678 952948455 19641677 337041095 643291232 735715391 709375266 918638386 884799260 977274335 100498857 349532315 934769755 953197668 49240684 887542338 248859530 943646089 879454564 914346651 680492522 781335014 723230594 821273015 720104902 967539918 686998303 778698641 167176934 848577227 795206893 956466049 859544958 900224925 64912954 845808811 605793553 987443922 557550545 591182660 32609806 753112896 148738076 368717861 288097578 596384018 17965422 798979517 163284014 997935985 827634087 925621555 543299345 992607399 30656827 510338018 275258381 911594993 756371157 765672835 9620870 610059985 171722797 205683347 334971945 849908051 221390401 770741073 118239901 197511782 823089891 992354993 415329822 748035104 969279384 999500367 91269519 628250035 221460594 896540658 392224713 897934759 535326886 954975290 392563088 871310610 224255114 414837914 379397905 874785801 847188420 884709142 916009414 963385951 668416795 951064091 412106885 738525904 549445206 697207641 329386881 563573609 835675 918111762 114323378 483158057 602954025 952719291 167125891 841953861 917208373 998302982 859283244 995868066 496577524 510446324 101080854 308763398 513927364 673486312 309528743 770867837 10667334 80851855 602512381 682062283 593756268 665198701 45199537 618645342 552808986 740024874 146184231 292002945 737379378 864087698 244613939 896567327 664638035 848359109 815052435 988542629 299059074 615732408 996127624 999798717 609523384 692967921 1259496 682324473 493360596 773358013 932789678 995660220 831907259 935659223 681137086 861205308 561092247 684000325 838914839 845220135 25427067 973020711 58838174 206636509 223573416 622800117 523965889 763812060 512774873 989131128 14859726 834844152 193583287 336783486 158798395 968841841 114717549 690066421 286566983 465444238 483466600 987919680 439033521 971185506 444111287 702637372 967093743 989908353 335957119 843925285 418286341 676514171 829359611 951060729 881202294 947244968 335581649 693007898 209924220 362184565 649462389 967625830 769721910 849954470 33541809 131193367 795971972 926908564 563524253 977715975 130387604 544217052 928469684 977459474 788546537 927403908 900434687 971616723 318175614 598454673 537710794 898801032 801173454 887266189 496841244 987367704 439672973 716157049 484607895 608103706 242367197 392751635 928526672 979356388 647851315 823983082 654991968 956232461 758405234 979902743 502557821 873423073 82677189 238872955 608717601 776375622 492221383 867104993 577677786 925777803 544804461 569941102 81297843 563596492 941496586 966341646 852489791 885521751 640003067 691561259 27086367 519260440 32192598 114328624 665648138 963019985 550816583 668636517 753936956 940451153 949388167 993476013 754519654 799769126 231039484 256259151 879563438 995848297 793708126 948102562 801827836 890388556 183558519 317822617 876715336 942298521 63975945 796196308 122194287 871082792 231676147 780855596 980125630 983301280 405670721 689924951 33929959 483862827 357091890 369748124 881671080 921095417 5462748 732619813 430004745 768532493 250792714 307286326 588441687 928963349 957234058 957420973 501014682 699190594 602029209 609929085 721542965 758262339 165155261 448492662 456606319 618196558 344242682 635306567 77518472 845867632 206286785 779120629 667152174 752454354 74000837 444430451 251688313 259019455 219440130 670033779 843943950 889209111 886652884 943414293 540297038 941648081 899740464 989005076 191883397 548698776 558282035 910531250 666100514 884595184 767431907 840668059 832396343 933514315 704604181 988293158 649899040 876860224 546732644 688242142 837932008 962940037 365289238 624729887 123031336 966137929 929908574 996378209 205498553 752410092 340503410 396433754 100685733 152787365 914328570 931766012 4864182 729141407 189846660 623902320 420709769 441695068 165240863 480945748 783978720 939817189 201967677 396790923 216319694 863802905 243323191 591108296 791258847 846725286 895481990 955454719 712988111 715566487 857432030 899892983 535086123 716919507 591468026 728612282 957995614 977304470 784814465 876781641 22418278 786847877 191494169 721960797 29968542 955755136 23611622 107366303 223816027 546845859 85832553 687463587 745687488 959108664 400343970 856242099 921479448 984616101 542238203 874516204 406960190 664161526 424112153 864943497 339228038 546236027 686466801 714065896 979075347 999344252 185814597 835767634 573507699 911024264 101257511 382306335 716797715 902581550 487497562 557950425 993497848 995383983 821056864 950141302 815372013 876985936 595411190 630013242 437650973 881145619 8831945 141182505 291613346 526216851 823971785 863680660 554163495 941170888 394573787 523456346 137994319 753982637 139658194 598430872 256890764 764251258 136210524 190477036 882295294 894037782 651141257 972707084 168328543 856674135 257424524 731729433 518799452 568127387 787905815 891873074 794693320 888832367 277570239 454118350 964929244 989978265 823022125 959163506 461853899 587734004 152334549 446752998 759195837 780395096 529638655 855234987 449904094 665508062 79324913 986128381 516887284 746001150 186890517 731177598 900710475 920833442 359326994 558710950 226433853 738018405 604485237 746105095 187339533 311075368 350831224 838194925 204594338 694238553 904902507 954016043 814111922 974572002 31767707 707853568 766260773 939193633 360799558 696750957 759167365 812064224 495624086 956308506 867302849 994494347 975049434 994221110 326104693 936313062 457960340 464349295 73960894 564846573 860460884 918237667 192530479 641775645 846593123 938104955 324415870 808231829 468278209 899520387 129491547 600893961 456195585 688489044 842644892 993241709 783306394 809352910 881119309 987593811 477009848 874485005 363192698 953512617 32994156 179626817 756751690 790575524 839750480 925412562 194056178 736096290 980942913 993087790 135911343 820231211 377484650 795481841 188100053 335460511 380265758 717115588 953949413 954027776 914705486 964663549 978417191 996579185 869573737 953323136 852024728 883944747 922774040 979834878 10185870 81062343 940336706 997540976 153504517 299704504 983506816 997919441 845641037 976185902 180700970 576641438 777208073 888257407 32412718 891733325 23175521 484064778 711006925 787465155 391637095 612536179 227337315 339410947 43637685 558126634 159447683 749365109 57071197 165942048 392933863 912359287 934753327 958519565 982845733 999863632 482060691 519944422 107379889 341949534 847207981 854932820 147050384 949201343 4868978 800491107 196973175 765543215 617188208 772303610 28502012 963957912 609893478 741054153 173565248 286645202 199896438 209256819 87291620 571189263 271934918 956928704 288153383 343515421 236664921 577356627 444965655 630070163 794238490 940702105 924704956 975016749 114668266 734262161 519180543 792132173 7617802 719072568 456013495 559764969 963463607 977825584 497433309 498308368 832680018 917118866 948992531 974185326 52866609 371864994 703355699 943756266 552974072 771061428 235768117 278725535 130862614 775176238 607587109 726367446 485257849 722077422 112335432 494627332 890090686 951051378 463962327 500478709 289781008 551591171 59431224 448581281 616480915 992021344 452920878 673573965 453052473 860953432 493707827 961575608 242337631 852922830 766928585 943364657 739730740 930648785 350919408 957185009 260023220 906872749 889774047 943926115 125307120 406582592 546630287 961574773 796377989 880076424 609077430 974547453 91582464 365545414 701547070 808485773 427002103 630309483 882008133 936847241 992011956 998100669 368800521 583549904 298665701 929451189 950148387 985383127 218006687 362130565 611621215 633557327 736199118 870432812 785381892 904521048 691582911 706008331 726781325 736157608 321669620 960300952 762371320 823367459 833302639 948514663 925223931 968756285 953799400 956201616 462898910 915495169 649901283 768623517 840446094 960256477 3602681 629085675 767610781 890450584 350257267 714143677 32174682 684233525 96228014 450136639 417081120 524492455 74022268 770655435 775349206 947512469 604947065 616531519 141369897 372902787 450628316 805653297 681717071 726348188 573304600 950484615 792597548 862764075 756013785 912011759 775747950 819915066 958577636 990403751 649334499 963877768 48838909 642804261 852514517 867847921 411845602 859214203 327791136 386566674 538172483 744970819 254708748 263506103 668002066 809456633 48800873 450410804 168897248 211389780 792097060 979203283 451447129 661221982 579776956 581494617 417562791 654999541 390760567 964348826 206889413 220393970 29344216 531028990 874572782 932506110 638815866 869232935 587709858 952184584 977824056 990293354 160994620 659474330 218205314 774282805 569866191 966938784 295457165 435296521 127555668 780146676 537529522 705140470 189020620 414244860 72561226 471768715 269346618 442964972 94187585 516155040 103925504 730478452 328462264 953039821 27041621 760130977 218444058 493477837 992623517 999304729 798880476 915183666 108572689 934911164 602034469 845083668 14298465 521587579 382745880 882432561 130983333 954042978 194838367 569561391 937571074 955621568 95848674 706678382 85472971 698926727 318030418 673303149 694070560 831245213 585206106 873172325 95607418 616935762 196762585 615372336 670036029 971436845 459378527 574620740 356119686 964898062 984458320 984940676 884294046 955758894 990767328 991242071 788002232 930707979 951923363 977130931 173031195 906418113 590178952 711193978 246598490 372065026 187370450 869661381 228070738 790110700 348268105 575315856 734419476 880889210 3236820 22177832 962211270 975976544 655035192 920353850 903780055 938057671 784611166 938706598 224094666 401714399 687459424 748190210 769801240 829851490 951091505 988546709 695329890 835570210 569698948 970233996 343716846 539310975 636704848 797190166 528730457 561775639 739462824 970239792 748891044 802720734 107523770 298493057 40920621 60342573 620568828 729982546 319023193 678934598 274246555 488785889 50629305 977945358 276688543 725183188 523359885 922859822 518686578 748272083 884282552 999789347 457089384 808113885 809440331 948811735 634109393 914922357 217376110 309924443 570429975 863769043 667132694 679643914 219256239 737791130 78464669 573465002 990766351 992215345 226719106 785133493 93566789 431671223 294354069 541111659 427659445 678715010 492006707 950876099 474170530 556401996 80788971 163112360 949952919 975416978 543871842 791877234 956574445 987560303 769339355 924640424 724810458 884659715 215846074 280967558 726804081 954729321 892167256 910379609 330756182 508129555 462832158 683682665 269871800 751311240 809908207 839378127 503359722 709406898 657772490 681144633 65678351 648482031 39844444 466234934 988363672 999819583 531316547 999232339 686086816 904072919 214796367 329428941 193761884 573193457 129441163 539019659 962863391 980932436 49620188 462029316 423804654 965822779 715228760 907289898 398237659 438301751 624831659 755174788 112819084 514081159 799854269 968647049 274795052 469864916 664094410 723080079 111051216 210364911 911801567 950129363 848234571 936834100 74658762 473298219 528560098 720322030 828677380 956962289 581325360 814265360 203425338 723008013 216971815 395784842 675484916 958848473 101847344 147571817 209698704 368522772 783721883 891470687 469390207 673039072 538098550 709341889 308650203 409086309 924502730 929289193 634288280 932406594 820344869 867945874 684683509 846345253 448464146 727129796 878245600 934502424 367350693 765236010 805521724 845866770 357929646 700670754 634956367 969060578 580331975 612936910 869300613 903564792 673583315 967481659 386408576 444324346 162705658 402503193 804307918 994579560 589329208 605678598 699731525 989029856 669565919 906685692 884489942 983795263 557740634 755913279 405576671 425716712 77149913 638831292 842255778 880259650 10451803 32066772 964243703 985007309 639595380 787970326 84690004 291181127 422789803 847453787 86426017 815761140 674127105 893791318 967895579 993274532 752783527 813860878 34099711 262097005 627173296 691629952 166871236 720531804 901482758 903011948 187434144 987560962 175233730 407246109 897692303 998200131 313015856 833968036 627100300 864083137 366000772 881962840 541930987 742603428 664189603 885047695 14779299 636213532 388510496 546759083 680132077 794812385 702453190 926120462 308758827 522287490 639878585 789393373 221601436 953536474 380842174 603047964 386680014 787915309 144278812 466766448 676490172 698943242 499613144 849006138 568676026 951787505 438579966 769865576 50126695 247125642 964247257 984030981 693096156 951590334 240702503 291072734 835005050 898468208 468487677 577307834 990675136 999086128 375352717 759319966 622962877 941598362 929816787 979040711 387730429 553162637 353273191 977234358 282416261 712209719 821266586 952785038 56412259 205364555 184678940 398722568 651964475 723133670 630882368 714245068 382772935 574590753 434788533 705731967 533736993 627215720 298627882 907125000 271285262 850638503 443753730 473422381 552133327 858322112 317856720 877199461 238246949 374293867 25473973 509163586 924745337 996575165 434450170 443574052 662541583 782708058 490457322 616387361 378816480 550242302 300361990 827686804 948160799 970371958 202931210 379475783 272601090 565036721 944049747 996236598 390933659 581557288 337880601 440821091 65084099 824625599 190859565 943228424 623190854 795643825 637045488 765848299 161963215 759101146 809036067 866092999 907973275 997514029 537520818 705535112 201993684 466503453 768402859 814142908 321546819 783209744 478058008 597476651 965303218 993995061 191335086 965584411 660919454 697230277 877540650 882925945 36634149 873036199 941122251 958878584 807481277 966933368 97071685 399410219 751808526 906855747 952349492 956548112 445039392 746936087 995991404 997465587 47635276 219718760 36899677 44650520 517087881 970815573 951253626 995533064 378591112 976120271 179013141 409075210 628218389 909076188 972553251 979509682 832762215 977059956 643827201 683350186 857978090 864571079 357580822 487753659 757182621 814255730 625761931 930568847 836743844 896034611 605464406 696041029 758575561 939016840 181390002 619167966 5047585 860858492 367885239 469843412 952968438 988978121 522235267 534299504 228619984 706854571 464150969 795292051 911971176 933926014 165932147 963091016 709198599 976123468 335435204 511837962 748807043 841710441 199917647 384046559 862755988 874239798 289000725 455227621 89642190 834008335 25760879 785439003 79356283 814031112 234780010 689983440 760705619 937646273 90234475 130591273 883551669 937945281 731621968 943202482 441528802 574189995 116366521 184368472 840723976 997167070 998349610 998769899 407165252 604797108 823773348 974042239 436304515 980553868 684946064 946217949 140235842 995630537 590574002 600156303 236314419 327960534 604134472 936334756 296386622 402081578 798284768 835704390 514051048 882343364 507073944 868657373 671847302 952311305 627548593 719139865 319051973 690019538 126833838 743850314 376547250 442808269 836123624 971239586 108393291 180246345 237616697 521846005 726881737 820725139 527560100 922771028 228630602 658502560 497933287 865534208 565177624 634950618 135566671 489502072 679602328 977507775 403212288 729346792 360565666 892912603 63329533 178692833 790524021 959529073 279977928 472943008 882654198 937868327 964586690 974032045 378033396 661226443 987391228 996695649 492819943 775852266 292715471 388182503 405176865 427691037 71770500 147538095 78105590 907169950 513197813 607379928 658710012 814842257 122129579 263500619 169904662 597312223 781272070 810909559 271394687 983677530 643661217 863350962 14113456 279130742 71225867 230317950 588690179 954850955 740262062 802063840 493357763 752610110 251654889 997813539 275589355 283781090 221496389 718216690 798278772 810944534 39116479 262260138 659460398 700403550 896888088 978001739 18631171 997380853 671413189 888545250 245395308 373635681 993449985 995388206 855415087 963364967 129247872 519562074 686410765 755970504 814724857 920571925 348722770 510343618 300640834 993549716 931373555 942707396 96739169 897372057 802155577 827492002 29659289 558768987 51373814 424840687 440366708 462257795 127077253 507376384 333569222 993608141 453799349 884527112 679330205 979749867 647012360 917475048 490379848 760387433 257763179 576889660 810396372 818735943 65368524 872030771 65778814 463808607 338084841 523540351 692352553 966454782 294915704 456601831 588019692 850528551 425094362 820294429 711209768 754214756 802791979 917650271 919352728 976281072 382570663 646274603 44269766 215941173 204135336 861611007 247691910 933545203 504102973 899270681 472298303 961560905 110884197 177338345 484077397 840536206 45772262 929949717 922051913 954835772 68871732 106518260 61018655 260248228 223632169 914754513 221208755 545008343 405012779 731843046 667017715 869855818 499945299 544781011 82781059 471781486 503915677 839888506 239064803 545441406 712409321 783603058 698016923 791493589 772265774 852768963 568384375 728692947 917953854 951613506 712934517 819364254 477195065 742484653 500162765 661615631 80074825 541502472 854721103 863648540 643527924 871409349 451323603 735775478 572983856 617325701 884055975 959424239 548627743 945054144 982457347 996002039 254023953 515012876 68328794 615678748 865272711 992493320 282486056 568803628 252288469 302053258 90578284 789637893 193944750 585103401 347922406 572926808 145681187 257902737 288314706 364080586 135447137 346176885 860335499 988606844 507263921 556056541 980300548 983500157 51513968 668857463 24825915 948371989 571433417 671100260 272381762 780940283 125577285 390579721 786793649 965670137 639449754 655898210 186005106 334494625 338004366 993981662 662205187 764507595 151717908 814549866 449235121 952473651 879891638 969528858 244767252 333831118 451710874 855717412 476401957 875634735 749411982 906254166 860992432 892718538 965966075 994945069 639283807 998004593 931630546 981708602 968824155 987636468 363763044 906586872 647229197 856575783 567100496 659489612 358381669 660568016 714591594 791312368 40598063 864879221 257213075 713540121 149691671 605407765 230566832 806653220 824473359 863869861 722926763 909546935 691014492 691416222 516741474 673545307 10841652 988668290 569617077 573349703 500909821 705248338 180264524 749842693 512473103 864042375 253315360 701995612 757437618 776870579 318746991 765422617 573196388 832417367 910986299 982555331 100641077 672823452 62070789 948641225 799596141 852689045 403851929 931038170 836069575 886218292 562646067 641498134 570167853 668846597 9403353 903720824 412824922 968074578 743490607 806575676 321762946 343084319 197332785 483126979 991311995 997358432 289833842 657766311 989825488 995542775 908665563 912577653 49516319 772279248 939672924 942988226 884725402 918371222 187795992 664741487 558773887 730280767 55248676 220042314 408174326 878418159 198540371 577268216 760956869 792963518 833312600 971967624 673426809 944687152 791206749 820594288 224141573 866951438 607056554 836610184 684944252 723314714 986008336 999021108 763664853 909498719 29638911 38644638 660651704 809360853 805034901 836680689 5784096 84375160 137007162 268254817 72797083 265276568 121970205 979426557 821309830 833175903 366859936 494832578 46129090 101222277 186130793 436121704 205145700 611221661 918778793 992046094 791011214 819023492 498275896 786976429 320661426 690008433 674950990 678741323 982958777 996410369 616030851 883424747 936186908 972231709 796009706 841271312 689349533 726190730 813875715 819828025 30363122 485817778 276104032 760090504 743416193 841044924 93748619 566770450 470009594 909745782 304289758 910595524 684270536 770652665 334860484 336578163 536192534 601229524 757585548 895256891 666150029 737140438 669917691 912615580 938309430 938969839 663508648 926640415 174526380 983213924 964977818 978931018 840854744 900942452 942467926 972122256 892159869 895114479 687633876 926158603 808466269 941676505 40259220 802202737 628326754 670571737 626816154 911047769 631529767 864062781 9122938 164233753 845833102 970695694 97243427 457293840 940500071 959936240 114491965 392520542 612357293 997113832 320121613 448370105 101673386 608281402 241027364 370365415 289019153 779471011 826571764 943190709 482169253 866952928 633451262 991830360 526111711 963202831 553752334 770717960 981931909 986308059 87848042 995504358 251110428 278537731 161895005 173865679 70044804 209780442 385748699 503875582 223468103 892869167 90936302 617026868 62779170 572558146 134992938 282115818 765061865 788873518 306590207 567267852 173444850 338627955 896289826 917298240 455360043 861932201 99990605 823943897 420919498 939057472 320207986 569931596 278175800 547840018 324769550 694744403 772582028 882703307 862471006 985254661 984082293 989735091 285241064 818298866 688527313 699755091 308532516 421493699 442618036 690990835 985909736 999369061 295123309 949026553 954314078 969712211 284194302 299640326 120487758 184357308 902550222 916204090 888389589 915569472 844257304 849316857 304312205 478523487 651430473 868740196 92174633 536534800 515368604 593676949 538730973 690158157 672392833 939626646 570774538 599989608 522611786 684635739 969320855 975274206 683904564 899110152 253238779 609669690 798157410 875291740 415403564 759709830 202681944 359263989 117645375 897506973 224752332 841172893 802440418 893243305 813562119 864549602 645990539 746233921 692625430 797084338 586708232 695810697 204365275 650428237 787434356 805136669 172777485 572212177 157984125 626715549 756869496 987803288 688227951 851058106 946295999 968145858 75418222 274153175 726662953 773230848 1501912 34619087 168303786 959615108 418667741 881886290 595496619 939170350 67611025 247593042 178253300 178485918 266785703 314525580 885480974 993151080 579129489 766011226 120897076 919548689 110812581 730910978 737179930 910563997 390706060 992789360 640495960 700715251 154967682 921074748 21948968 855241168 621704179 998171605 49067233 794469785 669656831 908369020 651969864 909698392 963971920 996946221 454468360 980663702 825226904 980489419 303504305 574444937 981763604 991726611 19803834 686104248 194673175 689460228 292608312 939348722 394917368 998913544 398041704 431937806 876518266 974494427 123992209 455639477 492495095 908666697 685019912 919463829 201015332 986189006 726559945 826594515 245901615 390954265 728911864 757105302 487392158 541975432 307083131 940319906 591425924 915416520 502823579 952215044 65621130 951515487 936973174 996283554 723026821 915745733 703082422 936344304 214054878 250314567 334438296 722996199 109243383 335774537 904279184 979220976 624914446 860179182 274604068 621344328 424333707 447630448 291972578 627321404 259115443 893622880 780721780 989435218 498264536 637842442 867707367 889623329 134892306 954755468 232529343 337470965 166493437 609747712 900863175 959556719 245628961 913920860 928065245 975224400 135265730 146371095 448685115 678065901 530223107 972445235 821997084 975027740 235263422 493424553 861787879 895832823 2056268 191866919 628249341 819365461 557640940 834313644 102516766 981874974 680576359 903461455 680013861 895354419 228500823 351177750 186723085 466049495 732847618 925129646 541677794 927425462 731349612 924998814 63142175 551499489 919344941 934849118 613803330 804278351 572827664 668773754 496674346 521042269 344414258 618132181 485055572 693388273 167834647 891617585 287072788 818312373 896075210 938218132 389338579 901342372 426412741 556638079 544116554 726416464 162223322 655591772 963234432 970446242 855829610 882973475 578692518 614426346 507397857 539124880 723528735 760040753 768483056 925468757 344728069 434413714 237928151 496223264 251667425 957173727 506074210 581850885 744559879 749819461 307268986 598556655 737137577 749370821 922384881 985373564 422176527 572160845 936137139 964064534 252258851 933636809 245596032 252375213 198122508 959143929 234559146 561308023 522006555 676862550 400785387 971416070 757449845 824637697 594642953 798198477 436921092 798457435 110642976 721513817 281170503 476677757 525105348 821145782 414709317 961042143 663183902 702997543 728976316 932745750 182481214 979812538 824751400 989475500 54731866 251362151 167533711 899035514 104246146 433388548 609746487 918737212 161119150 776775085 223590815 851493278 559882963 691585888 294296315 994441640 864052310 913872517 523805381 652136272 383028988 888468167 432507832 675742428 509587668 799326872 796533384 904266781 988370368 998253836 414993560 502040048 700238836 978013401 249288868 748138266 222566756 285206352 927100332 927939248 27117545 589165381 977076309 994088474 969354975 983972554 356180169 951297570 476337756 809351914 56486556 562142903 823357303 953551868 317949094 865552947 662689469 950708756 102793393 852030490 666762117 923078840 566395721 759132795 174884393 950845470 217038652 993871149 172588148 819705337 153180069 847771227 281847417 470831825 86054410 304854996 878416909 888963235 897893864 948169247 952048564 997697022 953632274 961135295 64529081 719423480 259091044 552919826 424143885 469451097 231346478 321985203 24440409 852939104 453680971 666746982 881292127 969222277 21975537 331832516 869784063 926317405 714196058 814669775 49123709 463409957 937804836 994594151 172082909 685926759 280472260 787868233 778957231 954001737 513642533 655596927 438496996 916357940 759940075 982852039 93639697 497214751 709914847 912110960 554737585 638189817 59648988 680920586 516435184 988221233 497716422 941182323 475710624 936714205 899320346 920380496 840888311 982813846 246474045 530138302 723000493 861943155 620938368 870719582 604556246 964684412 54747855 934922476 501960530 947064870 623818165 970712690 781732923 993762470 552408436 921990111 57290441 178085910 585833884 757806645 204470465 687871191 443247936 589932306 352537142 545963207 454489072 742679573 182258233 497274339 192515856 297418155 851852724 861898581 608021985 865263969 563318681 600024357 813099262 845517008 954299465 988780596 312800843 422902644 305234830 789732669 219028445 273001926 428863928 819738905 729853053 738847369 541317994 897136826 832061786 895392383 992477849 992670130 25709218 606890228 249102962 401145818 787811269 871692311 813699667 853723737 689074901 984803804 223050971 268823619 140878332 944725997 729222702 935546269 286184223 989507507 741283068 839487309 118443827 854681238 723333537 976517533 2503720 113005678 967636521 986975717 835947246 911857711 971461311 998386238 559259957 831578517 261608704 658565928 358429276 536610529 932204702 971108181 944882987 963290228 951642332 986298453 648864222 839441842 923638054 975072139 230042790 474158122 889755461 917787874 261298737 568135701 593497551 924972857 1469096 397564152 107281936 406201808 807809683 824433301 960776226 997947220 625060590 852061018 371509232 610689927 336723348 454788058 209117079 610183008 965490322 990419993 690850062 716264439 593581051 819514216 890225714 964758430 548034416 619494469 172733592 496020733 559104420 789891260 907484830 995360793 325333175 461611711 998322325 999879103 424906592 924198090 87799040 937734175 586417058 760403140 898665799 926466451 492387259 860880405 70450119 207188011 557045900 734071653 826896325 937872940 917204431 964175261 102619520 968298009 518799095 849785533 773875861 825878414 474751043 508544359 938197844 948523832 19581327 485883431 293443112 303813583 789969427 824323546 29800806 199629931 65481990 851911143 68956075 195252268 78908 972818688 412456955 436177865 388623558 618272720 645889173 711409384 895743621 927298084 541812463 823818312 592460932 976206028 264986735 956224763 60523539 781309863 310951554 527275250 56552561 136820194 302855232 973802067 432669875 444061668 137826017 140323182 494720006 532749963 431361069 607333659 749113730 789933742 345281271 823169263 142071499 827747744 862497119 897851742 952477153 986676071 246337263 598242904 404185612 898290354 95016154 312725446 247638510 295819293 482744618 806410813 31225691 72866493 648481023 770029725 317670270 917156775 657949919 938723819 241687795 550115518 646432046 797822888 97397629 117105327 454144884 495181011 551923563 705526837 175590134 561987624 774783515 988689205 99860927 244865640 164672535 260409134 550035473 804550352 422423267 699827676 227165864 308130761 704146591 860753637 133655483 191023906 769527105 793433117 966388367 971780755 958930696 969098610 380764311 645981555 481523656 930573464 864682498 869312528 793906141 841238290 206217978 731893549 653839686 943830517 290912329 480608014 512707339 850032206 534603350 764924712 436575172 475326492 175908446 645772885 169308771 993258796 537731648 979704828 727752865 886448559 437212810 868137690 71282813 126748036 792140991 879142484 510226467 839921411 313226451 542195963 399092552 852602584 262078476 716008076 945358119 965692089 129985865 698247290 505649381 852935934 676718663 681934807 513396797 993164921 709786578 991390096 270639809 415755890 337195502 509001659 11783377 708244739 988446455 999617294 240078123 408901898 178249676 196628538 246503315 790977445 767079497 916439655 232575315 625997871 775577391 957991953 776707390 836571780 200982760 740534024 604573584 831927883 788631684 865948598 716773068 730329373 656926348 986851384 954640015 969706683 961552850 970760720 621480386 759999163 517625333 694058109 716939573 749693350 583880608 738810419 202119781 800391731 521752357 606600518 219047134 788336656 465751727 855484813 493046418 550805234 489875624 928856791 204906149 737306104 919426452 973012916 887536639 906915668 860681069 912623098 543899966 567722194 843026816 950553125 790889308 822775457 233630762 399329778 153141651 540133222 307014855 980517396 958420583 984357167 975666308 993624676 807545782 985467420 676947817 924011075 462469921 968544709 244026885 355202917 514444116 735392777 339127761 680883024 931240034 989560204 57963372 397911818 87856312 325044387 290918568 698477029 794023014 896952487 932719671 966324707 772369563 977132169 670498441 765486320 846960878 971032397 514626436 686813286 645932104 758406339 786316167 896930679 511906714 920570839 266048141 619229205 325220888 356548637 643165921 800921444 278262268 392563324 759151926 866084106 503397416 906079688 553083622 799392513 742926292 768681014 682726573 925550295 222496448 649289304 83608683 734223510 506198893 794260767 220651099 958411886 47516173 95504301 29583481 503407296 662466522 738060878 101116465 938545196 723990646 948254279 585516209 853848869 680507943 918498011 583733563 902232921 781635021 941914011 120886870 602302501 130096318 550372013 182240606 824796175 976479811 979411125 470680779 824111601 341911075 805411914 307721908 725319041 382386416 412201604 751930216 909526987 976339741 985951297 325780674 514260088 646723743 999829939 889463245 907299625 910557463 977118801 175009598 973668478 507271785 646094818 59414924 83869476 826386813 873633573 176566661 206684996 184670500 894995340 32558060 497701613 135843167 176041478 240665014 774687147 954149059 989645353 831897127 949071211 135491556 431569632 846765596 889045873 748732652 946519852 489712877 721536714 351176795 950634658 402294575 844147284 375755021 383842344 43001663 577959195 942645146 952406519 958634368 964002893 874893149 934853022 644728284 977616737 817562784 912721672 947852107 995477022 218013899 514742400 407553324 503853489 907968616 925781852 543159216 549356637 762958685 804336853 120581084 832022409 698086866 723390518 367323262 908725898 435414115 502007797 409455137 992537277 451689072 506079358 423760927 550406593 844809865 876232317 673353723 723505168 280569945 857643245 108437769 251133409 431895310 997724043 169625987 793651604 128770331 482334373 170976601 578180093 368718347 484502729 504880535 817479969 320352253 823273110 270760210 537510456 894088736 993507901 150903494 550687212 17624203 479316295 601586994 754625603 931407132 984714972 502382417 799535554 268284405 664325012 49668401 536280068 351562334 415743920 6702557 135293009 562543272 708253494 969220623 992168351 41581306 94373965 721804039 880801631 3586166 96655188 537447999 907629303 101303008 245221530 289067768 803996457 445731510 541799006 288215399 632548877 858194377 987784305 627978540 916355717 488486035 837823078 38184078 856909375 675124575 865371182 814979998 885585149 463401461 900193258 230527900 764305208 598243766 949939116 644627181 969755973 639328579 698424872 413338947 757336899 74344817 161587403 585210873 761209690 312671929 763988712 372909556 443107875 203345128 666629600 663165154 922626858 307297178 540189768 256425532 681402076 800131353 873461772 717284877 777497693 245110037 601731701 671265323 762915567 675902938 818494883 699504550 847283438 934942316 979072768 356819761 745143331 384740234 402935749 926386136 959795108 805118921 912738070 111763062 744514895 263816338 466346459 453683672 977469803 962624841 983655356 457900971 731480982 750062194 821888504 788312487 852183547 385956432 645874062 407954754 783597743 441374529 738387408 378806776 879880764 316967643 645911106 505284448 911832258 373962244 686552712 116864911 737213038 683610802 758566249 708080755 791879194 252366698 531708592 704832168 781074014 533297665 966151432 823964944 911678601 53432771 356312292 427623955 471934509 471396356 531195611 996468242 998115352 24527522 257796885 325760184 572749744 402569550 403663566 964005950 966576303 861057100 954282483 816912144 855960398 275172138 346107889 176454934 696029392 32315619 935200960 75811705 473904954 475774694 830791427 551759025 589861302 976801320 982206453 828621179 993822313 666314629 829263557 748869146 828969874 607842071 856420616 558293324 908359435 966843699 985840776 933875242 999986997 831815162 931207508 900602376 950258611 360393699 903349334 570009359 940319009 497077978 694678201 141057036 762197058 121510770 439030209 164072364 955522814 767921107 963532818 174741823 938471005 930590693 990932436 717381665 723450497 678558558 748918851 11604433 528525530 320642178 784884286 721551814 728279420 352512206 881076597 789462034 831980745 675378721 702839969 397631575 579042879 107628374 570357746 300340288 546621868 412635266 864203012 236613525 448820544 832535619 895526936 653683282 916965489 670044194 714587170 686579189 698182913 736268827 949406726 256730070 453697516 402784492 721584463 949055144 949397516 704588171 844666146 992212270 998368754 661624389 665498135 75297530 528084625 818751676 958032106 66134511 606141413 184606082 900456292 431704898 446891635 109245718 400468371 557056870 584740838 885945785 888682031 509624723 865588493 880883393 961110658 277299930 946130601 905879082 917589836 469071568 708399318 337798420 823065028 736588149 838744573 115547767 331530082 899007326 999847782 312782892 533205454 537301572 666481290 509858500 552333809 67456286 353681264 484699507 703803346 819301954 929940782 181460460 824358493 879981277 995618978 50751035 649906647 967706507 974020879 675577040 910924622 427614128 568997575 753958728 975339649 760508076 972641642 871862118 949554157 498792440 981443773 719883558 986782873 139186878 583223118 454044291 718266327 372911729 959247102 531424820 655326055 214418423 532025779 111813440 728628353 45044879 277488035 146113835 981080679 848823610 854687093 389106458 682286043 391028830 962651899 564067753 890429803 167972194 227332046 329530295 457560131 321601700 827544251 196583899 236923961 292327560 613312804 676607981 843804193 511788821 729609023 786932783 934210958 753590021 757708255 362001541 983001173 893820903 905098145 681071259 799715538 825006591 858281687 371574019 563157345 59208179 908886386 613476219 770550059 360594036 501721739 751124159 893166619 240282057 951324064 992285190 999222689 477871467 992005096 206143005 370614063 622619284 897790630 818136438 988749570 841367576 903098723 477737852 535044512 953373640 955012479 265409793 361027546 745082132 793250809 689497604 703787353 487282148 676410511 419355282 777465206 141440971 675579321 12532637 210325119 578500699 912771735 703143349 999934405 983711637 989091923 467200203 588803032 275777749 420783702 614397425 652479127 204218465 243660453 921084202 949218780 463378715 769163408 503538141 704272533 654296931 781836963 496976306 645941318 27741573 754592319 891181798 989500513 928804245 986701130 498429694 758380555 711965370 767983365 451121913 919497351 501968175 550516108 200162678 256255793 116939856 913516685 521960810 787167471 573945128 863417294 522990149 960734668 21909898 891088253 826701820 902342645 900295902 934036341 53355685 251140258 625919339 783060706 768373052 813717226 777643730 928903066 191493027 314102101 119384033 169521984 701857962 715224045 870915093 903454782 482969657 822086447 675147164 803247564 701763969 804258917 473174224 656556300 870071587 957887572 526615876 572707845 799089198 890766093 851062556 889244850 434906071 677305751 550140456 743630193 944734525 949480058 82434491 807846755 35802699 714147915 339223407 784846763 883722856 931750373 93577713 254343726 425795529 929410338 807491028 974492357 347976668 563982823 381774228 952607567 29402250 31658505 337589410 592355864 770674612 816280480 140692720 318210431 653213336 720021816 833845600 950798015 75219092 854776368 546135471 754784133 121240667 944303654 98890286 191792525 993273476 996684211 753115373 866751016 178320439 341096255 765434199 928366809 924453387 981197545 734048028 877684705 614957499 728442737 200786939 353685402 55016305 618823774 897378674 907527619 197255424 575000767 948476195 953736096 336081436 716985289 434849133 769180757 593617079 763512784 757570850 795887676 461681546 481817377 8055541 514399921 588858482 931438649 404756010 906793717 574403479 895466221 218170851 739068501 835325505 883838461 971293372 973367635 846593060 924513049 880927253 916940310 995999662 997390804 79757386 535929249 800722781 854343429 191666247 919242372 302879018 860474402 747973854 994800530 194473449 340314055 535952526 638133948 936300890 963291849 123762286 846808784 434420193 501235053 480543012 650369691 975738581 983959753 561658584 604398220 520514294 765069289 722654527 960323513 501023487 836358797 448749403 751678501 765805164 957446018 209423957 594549010 446818605 556772009 150976158 799091435 227689284 443794357 878158802 983105441 343427037 411712646 589628765 742672446 24886781 110858777 977495504 980925650 223934539 464111834 164770849 905233515 290017097 672608884 9656672 766311277 124674606 815625398 192185903 707950177 631741866 928606337 318315228 689942405 461716565 669908554 296833876 593920837 320190534 937568986 151673272 411892208 593454510 836089560 59353840 196387309 995407725 999818504 688709068 983741815 447612324 947208051 804161407 931623629 228897246 980021205 481054465 715303372 11815981 513987983 361610664 362184470 253628781 756976478 802000144 843491045 433506832 473684966 179744248 307771014 484052715 828498558 348202464 905361749 643332263 932005286 473952327 956933209 558120086 764147667 681087339 796703694 585955025 795892505 983557242 989063168 799996806 939869260 611790680 889096889 78405370 872515475 234659749 654188283 505801261 583305707 178000896 202616919 958338147 972210810 905436160 932056489 81137563 292049208 127555177 837699310 807666415 826160363 229939409 613364651 498330361 574149002 297344307 520355879 108608110 747815857 63094891 140694039 221927185 702561895 966375028 974886325 800961246 802019080 598624829 717910828 929068975 969309002 999265044 999808386 302196526 385159676 765287422 804238601 291854444 451206018 841068711 943329365 403996852 752038629 987040495 995296652 753085745 862184848 168246725 324479278 720955552 907772997 437204244 472749321 556070410 820673776 128253959 256013288 742431555 749658311 933042066 962887256 776787850 834859629 546979353 988537443 995342992 997344037 920361502 923061050 311182288 811796182 673407815 734372814 229744948 749310140 807518915 915878678 314379496 516085896 334743874 937743026 428194515 474497052 478862272 952407693 334482908 987123988 504192878 810450768 249640095 377500218 837537633 955571902 280672521 841780451 220392270 731916481 383857321 570487985 640749953 909491821 880083571 910921869 486364661 735298390 376257467 701143483 317530184 840673521 31607142 356173695 611957447 655773973 904003620 922070438 511765994 530786699 260398427 628702946 844107902 990952003 515194823 600982123 477722047 906380055 697735358 976737728 221479981 896102635 371654772 567182536 998194130 998815368 943457693 952858458 588664867 728926585 212046993 527371331 180094500 772895053 357947986 859883813 766525550 893627079 372757124 798568473 623940178 708055687 728898057 764175192 665383181 999177521 741206465 820166506 382307717 968031412 430327538 663291875 495058834 818491003 546252344 975632545 660271459 849760854 721184345 936121037 250821768 928018365 184362115 814031132 285803765 422711895 56258969 352982202 315511185 940976161 548967798 617289883 572060584 763316179 598589172 855442986 139446567 656859195 93428757 632630958 544973200 797841076 852271295 960571821 628598490 630403043 442976749 527812373 185609743 768768980 927369622 942527208 283167129 325441954 828402430 943082647 507103262 858796763 919241941 973839895 728364131 873332418 674316614 929194062 183971145 286061333 901100532 999706464 508959169 564532197 748820753 791326730 299740321 394148747 557894743 699077278 492038898 573342498 293156177 320887057 619069866 745060138 710154865 880343074 913334766 961259413 302900221 998151384 273189902 537772589 681764395 907356282 171892838 477494095 214724504 833591614 198255275 390461645 189213805 649864013 464835019 534267646 766066889 920611868 203949944 940065006 96708699 117723434 559797716 886581263 811140695 967414052 855058554 860988453 630315553 883337253 87103268 857661623 84186620 248146705 167940084 406070338 151625286 845595927 838555124 866940120 293216003 683630586 162371396 565845102 682567377 870613629 444500034 653864262 674096848 674827741 159927478 394579440 523825804 570883706 454844560 924414461 995258266 997204457 542580955 647958497 140826957 674368399 734666010 842146829 382816421 868909571 630641659 838942638 813400814 940945560 399513813 555953073 154498225 423988943 510332041 517750406 58781852 578651890 639314426 863244777 716274097 722506359 424787351 657636555 532016844 979343815 520108486 995006341 164098194 770020204 126149522 906497394 440596327 751623437 88831574 247673289 155340619 327501926 104598460 192832904 986758367 996983280 376657240 605157289 173370648 960522648 808402240 965127957 887776381 930153917 154172871 385042548 252335137 858051751 131369156 154250387 455608062 485193505 158782226 488117000 747628633 789534043 240460777 754143266 31204945 300647742 880570300 979203777 172978101 525530842 347701972 966708821 451858964 569420597 903212083 960482850 948601443 966708346 737725035 893630408 836946837 992637988 461711457 740465240 138534718 502388631 843268092 910544019 103082481 373352918 149480640 747852356 983886487 988650029 133911473 481553724 601490509 636908045 898375945 923963420 909611281 948556288 244976807 371793005 768815574 771780126 631262749 698025044 253946124 438887354 25155389 279311070 10505443 774820636 523545814 882962273 780121692 859665459 708699009 803594176 986562837 998790185 881045661 938283479 94437283 100971436 927395152 975508774 156942844 305737587 937226096 942141531 751527169 917930960 284179443 832876591 303224267 399502385 971009874 977901075 40493480 246497717 402468972 559059718 328038460 396835628 552140958 939031090 398489588 625830405 755055176 810969336 342779658 864687425 190653253 820964106 270408560 508355745 133756355 930497955 120281677 864327763 809235242 866929186 577014530 692631783 512660225 779107723 341300548 670953915 145072392 231232969 72303838 126068279 317910661 801563974 974402601 992191101 933447848 938020312 127079177 185830659 190375555 437482546 858085946 901401981 707110201 759610072 951069657 956851691 896593272 897413336 702719873 842274065 225884708 643660926 267805339 393717406 388141773 557763028 500094884 576981655 309720661 510585762 974371612 984683325 707233093 867448194 876528515 993979719 289876800 313294968 37135774 290286243 709304088 867030101 478761811 534792807 709225956 840247862 5471538 447965512 999387585 999963531 372092572 642040781 791199119 979975614 287527560 753336758 5712110 946040655 895865844 948404978 582104672 727462096 118333674 885418646 156226484 968358780 672183272 835487158 446795854 861870894 869614692 959510937 962610106 983702418 349254257 442751564 794334256 944883424 71316121 507150158 849818927 969485470 538475907 788920389 205446752 845473571 674303337 710098126 502861282 810988493 998136648 999560074 457148419 870020957 34737324 766810643 203343115 394769547 277080053 298264771 586326702 936641268 715311682 784471116 269113800 744599378 311833987 492270699 61794169 189693993 486975412 801124091 928604495 991581421 785362488 818981994 500837933 818301329 134166997 267479767 205753977 437476612 617973574 733442644 213856496 696561109 59195885 677969676 804937183 995496610 415440074 913549557 873934068 948249274 723960184 854841488 654099428 662953975 342179883 840294206 873903472 896617934 628202573 807994774 313799463 765667059 59296272 805221373 370227211 419254302 426127741 619751651 320543820 378578476 472715295 945690359 117188051 766081195 512438890 981437164 624274246 979608621 640963039 945864676 78596125 676910313 101275359 362249647 883042592 997915011 10680165 991295153 700677145 985268785 776587088 960354792 21728566 529308857 232476068 869398395 847047070 905690083 627237612 927902278 166141748 966361387 426975278 531804751 506040942 849613389 364190943 469479834 96979048 203772012 563599352 960761632 643618192 787963023 418578895 842653296 160562885 830923255 520247801 663489993 388304460 398557723 859969003 988792860 819996773 941748821 869501098 924765242 993044456 994225689 922169270 924425777 5176421 205858943 871477180 952662214 526108995 701788441 191164984 393824325 389927163 868310918 911179009 978595006 929019731 935177318 452392934 862395325 240453978 859361782 304483013 420527548 252248941 629084240 841791337 904784138 293434865 951331154 348977089 895849059 871309492 872872611 947770201 986355849 262095317 497482988 908419694 925384422 26360198 516683648 825941264 851926021 832203196 976015275 932531949 960177814 20597215 99162272 671129207 841485527 728426763 776422624 697814573 980522529 578952486 602411921 523863956 671404774 121799432 475079723 145289456 977112642 116170888 698225809 113563873 626922182 305101369 935239830 49382190 952146813 720344373 820782470 122504279 645289633 16658334 411364014 658990732 957499809 168968249 596575763 247197908 812197900 745530907 986984672 518526464 740660468 661515716 695807049 202856639 807658341 803169025 938844861 534530675 758846928 513423588 527859360 425828393 479616983 868060084 934378129 736034968 894442854 252875378 426362171 342629542 531048167 620358403 686354971 934885426 952837415 337485642 852311919 271839081 778690080 316118064 882961083 749859490 756912686 289770376 305885015 149215534 183095852 991480552 998127242 263650495 992201158 726201600 952503729 32847742 657508795 684367221 895605327 762317464 808438908 441463991 679626513 530313874 855232414 941558582 959480824 448413600 686703116 710180609 903985277 888146819 982106038 335942785 727711255 278137575 886177235 583395099 614903232 337171942 373420029 789550378 960664849 811673442 984312559 900363395 912801153 510337334 585367623 557397241 816160538 400075620 635644909 61284263 676621768 976516286 987528932 846117337 935960861 667161637 861719929 316662502 975596387 621383513 820760683 463731183 781093971 507096454 804913099 804394275 961922317 737603513 855957142 148498790 434639147 72992847 376394328 698923530 991209951 929313442 981659265 564271208 666939494 992412895 999872898 723499506 835781168 366863106 523319455 355319132 777125006 27963530 28826844 173257084 552269918 313196788 657041418 766900114 963733995 738063390 813720540 770216522 913860210 526231024 927836397 778122637 799957961 41637971 755206057 115560215 545656495 533848024 784310086 673571499 883712181 802802366 830727079 760375636 998761085 741975932 879154511 894530137 991483527 971891559 977963404 283209406 614758199 993194388 995672548 163645363 873652278 296441130 799234525 275135897 282718820 485859872 762022991 693973531 931035425 426390872 910440326 198824813 373081335 845557478 998217920 272564842 715906341 843856970 922807206 667504936 763643727 93398089 405985199 91056497 129195143 429181369 730033496 753762155 940862716 932124325 982218867 538621473 638776223 658736681 845302353 187383847 468942413 810042859 953933523 549837495 735174088 707183227 991182942 636006347 916300407 527486231 762254926 587357759 636586887 889008136 996492708 14363310 449081091 28169763 479934418 846379411 928157750 943202304 991040479 658254371 859107697 783455469 996232250 969972781 984749202 329769869 739403073 564342197 742221041 577793543 716781860 550096417 834689133 627682166 849361791 994282768 998576812 739088553 915830458 409730152 673075422 378476217 558914076 916834483 990298705 155242245 636029292 123269479 167646278 607831511 957786849 801675924 976556974 301075127 540797861 339812613 570169044 884247896 954898232 303257225 771060943 60495633 618831468 123125462 423026278 7405455 674911942 452351298 970122940 340569153 756202978 408224583 537207791 627602131 925223920 857520929 975876845 321915668 378509203 31549245 638351068 902927171 983911412 545340247 950860890 352823467 562612965 915875427 942612519 61946533 632793279 765159555 786509146 621633761 869046637 981305989 991677640 178989959 765034598 521521981 757938115 390938153 797023935 30028793 694387910 4460674 494767371 198816175 756903965 385704746 446529682 511228988 645473443 980809280 985763509 916593908 941857547 306713368 559382798 77396921 592842305 871868477 996960864 6330839 690707073 731415624 825540460 148559918 680211951 200013422 712931050 679571159 993588907 227506018 905143205 403713996 846410351 952478027 962540800 786225899 936857325 349981259 967770981 789068360 924204010 929223834 932669272 893425276 922600968 143100079 596297054 949432483 983716729 384610733 493998885 769310710 844247124 35361383 821639619 962820266 997598107 571900121 781604033 313034259 951984014 479360065 916254631 304779522 365402149 731021871 798956621 615864196 690553544 914756185 971564891 55066694 533430589 858454615 883844771 591271914 962574218 492988965 654206866 646739534 758400646 441781499 672555701 523172031 823382276 599869895 638394306 859447540 981515134 193594629 950903756 254827699 548550903 422160412 837669213 680527216 904413077 644544986 923420543 843538808 892079426 712627514 732671041 549042363 589696362 960282803 997634860 182365273 842010936 41517277 53896614 492209863 624813481 321488309 423913003 550589444 685460379 296703326 472280512 660987496 786476524 903329715 950730312 246265108 262474877 927954946 976097097 737148288 815261514 342664802 351574700 179702330 642698601 691459271 816944481 159032625 997002404 28470287 474784012 401988573 809667113 611726677 787481099 37973608 359962402 153638913 308853081 924715313 945172025 205853143 731848691 952790074 959412193 356415254 774875378 416658330 900584697 325152289 534035181 692500218 934846871 433767660 769298495 709418118 893128971 63423923 582876049 661654785 847955595 717739237 848210416 107976347 697845656 212563538 592527096 947015902 969204026 769317458 974248018 305570935 982485771 752868815 823267906 767774268 877835973 512330154 927565160 997781357 999979932 992243443 995116953 524601911 541749745 874234972 921032859 687105985 995411194 908680837 983462984 885042041 950796796 8175062 355915471 530357335 716325445 42268367 952702146 58615335 309285679 943799259 996555839 487546605 861036158 429515123 565003615 130724428 544334128 603118684 653345881 757043649 847769405 415552113 685719719 802262639 870684618 614166098 882551183 921882789 982316840 139646436 226502164 505043495 679529516 289638911 772276978 610411944 651741541 535665221 774507767 869177106 942845165 627793863 959537941 818738129 999245326 531697164 809077524 462854099 703899966 460664934 723949438 52933725 341863348 187296760 745093717 710114629 877280061 451204228 948382821 715361151 920736352 112211013 689903144 63832465 982695456 112790737 773077329 755471472 895886812 17629562 472571635 151028374 547609279 903126918 965341835 249063894 306316649 833508376 936748322 683734097 783859030 284858857 902039313 85631336 752313712 36720631 337643040 841676769 850084571 38559455 762677292 657134090 908036956 35843604 164596917 364312104 507778893 830783461 851402959 455161097 582114566 822753964 852070098 509963883 655049975 978831207 995350071 883127272 991139699 918441425 944495607 74440850 749588081 876087180 886328576 646553892 700951853 770888027 953240973 760040471 794928003 677629145 758381056 521094271 807022883 382327048 915456347 509510473 748896891 330228651 368695498 411802109 867231801 782912196 965644021 490825494 791820345 221563300 404520360 405514275 625123645 722414424 949399601 867431652 887006651 61963274 152686651 861488114 894669124 342132776 867521130 512276547 978784038 359992084 683915311 84190205 833060136 243389350 799992568 523815911 805083730 13102449 705762261 124240981 471156748 301875626 376584040 280709919 413041594 598994540 644835208 195565892 475476651 191391411 692927150 36369751 335766889 676784612 856744939 446529087 713923053 792294835 968880452 485361767 563380630 651924784 856282852 553842587 659314836 787060120 970148236 154597853 578118288 662016387 687505962 337094568 522658586 812774900 927882647 160497894 710030892 81479841 610375603 810305703 909351630 452048759 562334079 910041367 948362978 50675658 986768540 308388362 758983162 531130582 665486600 463142475 860690835 829505013 993954157 655684759 720356644 502569478 540910706 250795849 698881680 570042824 572727125 537549155 944546576 366737427 798136684 888184060 919964284 14689118 784775726 715044129 797169293 469488680 718276501 272288049 895485729 108207090 994773417 329445286 611185086 645452693 966033214 372225656 521815135 67473481 131200603 718115986 764830239 696724342 974299972 251382881 401049478 63807761 128865211 168284078 699547882 804476996 876993331 445978980 760527974 341517853 887737295 363582995 737181499 456050616 511804717 578446923 682268952 426585300 554237271 605595400 679981947 93196383 272209612 118301724 347757509 624065517 831528478 574957412 963539417 341087474 382442669 217063323 636102568 291002608 313795390 452591927 556963638 460608807 717458654 55848553 875248260 356461853 611139369 993248966 994356985 199106257 706575860 485224935 845063362 77953797 998353663 528389284 805364306 230178556 701500634 434310046 884678579 632804923 742474866 417996448 979354804 869754490 930545602 253004556 641814349 663980869 868870669 804225133 882518435 601218138 655839389 18695474 173065642 224393255 425627663 657326231 991200124 444075364 805531417 74544440 516750686 52386586 934598121 158869037 675747457 417082963 625462919 517394989 760972195 690158263 695036215 8218390 354808687 194675971 293587820 58407322 147293750 338927239 828743896 341216040 553344758 649186908 969793344 571212583 603048638 544685362 705387783 164536926 900124429 409517868 669084408 403484506 658846308 115808997 567883753 204052652 703478203 495169388 580167052 21175891 285452005 904801583 974407190 938276025 963993947 861204523 924796465 672570592 695726348 890476275 948070854 648054398 952900381 464347982 996840564 227651180 835843478 488348551 679925601 683547263 694954577 378235291 448797753 231711564 266612457 423939390 765752043 983439999 998793531 658019097 808880523 673327227 917834441 400004502 932971076 362472942 867403304 416019633 967145333 469820977 716263898 910384244 979593409 751997276 796375873 220456534 593905423 245360870 246681530 765144778 859055326 657012235 690178868 988419049 996912601 531939774 848671854 222983099 675529888 470725492 595835767 542861088 785515421 496042334 912248134 549072815 723903703 468936568 592509214 229249710 256130397 613547630 953633562 60456366 161163647 729492023 892069108 414913661 813899174 810288281 992470161 557801751 644052946 220887542 485490531 367949990 840109888 333567112 769731759 445361355 898197454 635401993 976987273 777532391 790839025 388920082 764651021 920835535 948726656 214574954 442210600 250099121 574771289 44476634 477603741 156081269 796050777 45115387 578427040 466710544 813413096 815126362 907297588 867004277 922048686 507281869 720204633 385760987 397403178 558804497 743042456 277721274 907856995 617081067 876455660 301355191 693404794 89293759 371202472 336200128 616443976 11359613 711475886 631797703 925581553 889434720 991873585 59216763 325108852 429188229 615928957 986748747 999922329 225932457 603808528 426571292 692160513 811317864 986367546 247022969 911967319 763541239 882831992 518598055 534709135 339286608 944494107 695763292 787216135 690143742 792658115 960364675 997576950 856175271 859629311 319837205 866171583 120585570 627407617 514336555 798440239 981796651 983516252 601665424 717172942 544871481 772500547 765787510 774651440 556867111 978148104 24660972 522003504 538964633 652032272 817268200 844299195 517845906 748567715 475098671 933254447 517092153 538979996 199671185 658163861 254766354 968835074 454379025 899055787 378744122 602471057 363557377 465729479 834782150 912825385 617916847 849396198 647662257 861118110 93911999 738224389 649926666 777953051 559590058 957875144 806092907 812546133 252030001 646628407 843720507 924976341 384454764 656271728 892491444 959759854 872644525 957093422 615817767 814431151 241579301 753196638 896523300 973983325 88079300 450548262 929307751 971485252 309416564 873920143 239265510 871417353 836949227 879697502 636093062 701494218 31827409 599644074 143027154 767067739 574476125 653888945 667424731 784893953 71526091 848315290 293848536 677924458 322472001 386636296 474544601 688756627 403163954 757248449 41434588 924360200 305523317 803815685 545164047 631253195 466455227 735508904 583164783 894138289 958763768 996610762 801295836 951713618 21514406 750079435 343250056 616213009 608103090 825303183 340003370 628794939 142186430 676506800 272033821 380880185 9919558 197018457 10304411 888977694 623488842 728186513 835101339 969985973 962993276 966205357 537268319 826461012 122499701 568706647 848888168 862570531 198797442 670353227 46603198 439968042 618093897 763786327 375032161 894197203 578184996 778674708 423442587 496714410 510046412 666806502 654145456 813358676 762013729 897844657 473376356 717445892 751358054 862190775 509098688 509879787 108626073 885220146 821836223 824928576 536568942 879631271 14309619 154347920 573422769 700619043 169317222 302337174 583167910 638625430 464169110 580084648 183937807 426002235 830401652 991668307 432218856 572199617 91463367 388510876 145118010 596773795 339251725 877220675 756611841 995553540 910082878 928446446 634014631 655721796 436886642 437103751 259954833 747693744 745404490 816706108 522539880 858119209 422473053 815910488 168954143 997506746 416256911 827834713 181370117 331760637 43325613 893794319 485602203 534641324 651028496 837486564 722146074 864329562 877848510 977035026 31747233 283939904 238145338 637842804 738974498 880700813 592089276 772760410 176257330 881781426 549993027 671741304 741931307 934580120 14357111 22482575 443311323 463180459 857330837 940567272 100451753 514029077 323429576 992942096 114157849 968849944 343157544 959442638 766272523 890906549 924920823 964078277 365651876 704277541 747718451 820202955 861616423 997257463 462519704 969562894 250684575 666809853 303126413 858508207 670937413 745102777 32422203 93369026 998086099 998573310 194554185 605850629 76547318 866858123 789052211 889194493 878071031 890786028 140268334 645519676 604076008 978119520 918447439 943858452 951685195 979252728 995151995 999527981 798479982 911225619 465880868 685361499 253645675 256429665 62166569 299682525 160448828 978527346 279035782 759578629 524058607 841184340 631598759 997451771 748749614 805098702 582259144 598736026 935463207 937888626 688061158 915632706 571922074 782409719 713887863 981740254 112644866 971726358 317578056 437831459 720020867 976595699 520505693 578187715 769494890 839189164 352854232 947326827 76765535 805980109 62768822 941155300 510212712 730460403 861578136 973881327 530952287 791537457 171996080 319219678 56054311 887021406 174090620 318751570 414636187 951925989 123558837 320320259 582296888 901691453 22770477 642911184 867421282 966536315 633207375 766283235 126296932 662408731 988079742 994877681 937061317 937252921 569179164 673061041 494891869 701196892 271698537 947567039 851390435 872443838 742931690 962497023 385812298 759401261 778415655 945175582 762467026 815698423 320981847 472546888 625860510 894796605 310594832 768945531 776884079 891840117 661676720 861216652 595263968 951375529 464927847 542859531 221476822 964067340 531887046 895548207 71419373 910244736 154552732 560912276 880049115 890471233 37409596 223638497 9699987 594744283 541771724 824824783 379522470 868146596 531858996 855132768 714238092 818319015 185039926 482216196 346681807 789425838 634215748 943326975 478467985 921233150 39607642 515957052 904431388 986341626 844146938 858762069 154369226 629747856 468978260 917156001 421462392 924368293 30152944 791531684 175633506 273126880 98206891 541081922 272702249 899995768 808974607 910392702 232753850 518401835 320113015 335399282 129303205 638043766 536456584 785464599 579222734 973633968 673962560 774205223 136325618 958336286 782843110 949961121 788561533 931445405 46691922 899327866 211538483 428557245 973742880 994161343 998733329 999234883 558100120 798344854 559579929 819996259 185155014 831135592 512283277 576541615 435023380 611653048 338825544 882664449 758628518 803007113 970992587 972118750 625500177 690927772 618361954 673081246 354186570 503729617 371210596 424072514 357754774 668921793 308368005 973894033 622949530 788554705 940152924 998329915 24650725 768336631 467420064 720670205 622149292 909318014 677801170 682732933 904356287 972818441 539005351 778628568 790884636 968917189 637253354 713379159 751553852 820401023 799806289 944485634 736412890 804903104 422669594 440414280 269389322 321482187 543872811 558946071 807914822 949732548 677611433 846839284 635910593 699311240 154861186 203957858 256905436 676588530 123462483 741439933 278132451 881971332 50947425 725345460 715375897 853590590 653164840 907169916 212234210 250466477 197142910 310417752 89967030 916633904 436667830 715396120 544632716 718285512 169460994 947722158 58253496 697319106 697258783 700940299 295376051 657165328 515679725 954020132 666137521 904302676 552545220 656738160 712502195 963989212 961941622 966030698 581795269 845445543 266428134 845965512 336755783 736956599 39080984 817014836 981232512 998002395 556607498 803842389 961334810 972108444 597317310 814629783 971725993 981824400 899211338 937052748 420935764 916623998 628227538 659135031 900924984 957541775 242224996 622467380 177160687 592709534 265868386 707694909 690733418 996103841 203275779 791355973 585790281 746017469 727463209 999518957 191937198 994435435 14931194 38802708 622564841 694053838 19388590 592219691 329954867 339298798 864503072 923715095 215868036 928030543 809990535 876842702 484632567 533563057 494642718 936746985 251209214 378980521 924594438 995142770 286814853 862586579 796737622 936887732 454976907 525630740 32410087 364974005 948980864 986456835 374149150 716936290 662543759 961252199 809842293 970249487 382721891 642189512 375684670 738694644 863531189 921654100 473761716 836421778 1790 886027467 31161339 771893484 19402036 254668717 661700600 728225989 69873266 392922419 205915695 364053624 241791352 473962418 851105268 895630037 214502435 929439828 78428142 732604811 51904205 858604958 657282911 687618084 736610314 851945078 408621773 620688187 604487802 924568441 405599021 682186050 669994696 773004541 610299644 811955390 201251809 354755446 767028636 811237188 296314880 817875961 521315155 655623402 267505134 851832510 94242219 599937445 153303206 195683771 832847984 884975695 705061002 808944768 715576017 911982436 146523244 278117733 212971000 241933528 668639989 975433496 462300662 729892925 584258499 685663897 530025008 810724547 679291065 732948417 168879519 600606132 253983222 535454329 939241094 976132004 170250166 252557090 404450374 456473350 734363418 793264195 380899253 557124969 313413818 750791011 54663170 240616020 88293057 483172451 831718121 985947519 217994448 696678894 732102991 763513249 840079891 851228016 833187533 929821787 244039501 455919455 704272610 742054265 301128879 873107531 6659243 279240005 337886182 661629597 974596151 983187538 961366076 995133321 612054508 766216657 811480298 951485040 80370346 910252762 389531526 466400039 881895002 916771297 481308108 799396433 234280358 829692618 716952204 727859611 302593253 991591107 963790481 971811867 751974686 904250424 609991392 920396580 601173178 851214723 707197196 923424859 246088859 577520357 347458788 770611264 949346431 984995661 690141310 881072968 496959481 666854473 150548136 280999893 954229393 955651137 278123319 400309286 467413734 522079934 919039236 947133802 658513231 952668379 559584428 923921886 390078754 535219662 190378510 437254081 835116224 911156769 119782865 553526203 478418918 782890160 170871745 823596783 759494374 828667662 403339458 606538784 275363592 880024376 483388383 711936220 854130345 858341160 470581113 772200464 64036206 987650094 857303112 921481921 702754239 830209803 377645301 576861856 329034399 763057970 39577681 970741650 49785001 106474089 314401224 346730664 446413189 748024650 582372149 646240764 507139294 611635453 396836012 688199947 972785513 996598365 496548704 895051082 242962870 461613691 8816007 104360458 306646585 363724385 466929698 981200675 583245028 640025557 901326876 932136451 491648318 525521748 490623717 594038548 985166181 993869804 544517574 692536979 627615875 780609981 101221021 311082302 571376700 585253077 138357227 749944724 224638969 797882351 525626971 559540761 8078646 615783461 596040313 965860633 802537235 828866349 759716125 825071580 466313206 701562512 833343143 886723156 919065197 976159312 409948232 759181352 27812763 628600991 124590168 416087462 742933280 912454617 326478744 334221377 384351160 925460494 96753307 353770282 733141457 921596772 150492738 154586057 523161872 705516030 484798825 590621155 321637155 782990897 213678339 905800485 80145977 945734805 358851010 399380068 132830298 344664506 253663552 442852114 537751286 696113577 100388444 759382606 260905700 532117074 905241148 932039227 260848239 819560036 754077160 793102228 903173210 982866712 253938968 428721703 199469978 712445099 362595777 418102472 75209965 256376791 991047273 996030392 318339290 893813354 765825076 890421381 459946353 590705102 745213700 992395707 522798358 547392491 592042510 620653310 713746635 741561827 778838222 871194723 996554927 997784172 680212666 817091229 596947210 891061332 769121783 790783105 800623052 907935744 864705549 982257686 678160166 722089482 158880746 869245689 239546856 738691340 170082320 605605816 648907181 936234339 378519276 637779462 230330960 683190576 968038754 984688443 180634260 965500173 741092232 912567587 153629143 974955071 876815799 922207936 31010644 580807470 636492731 832789566 437079287 716355148 961667430 978371946 129826215 154761170 54176979 856592997 411710154 917674356 48981609 882871001 848051336 981329687 315597221 952767167 234620748 907358729 805006531 964301724 439529683 970467969 6835556 263363958 33196769 966895644 975416933 995432917 632244894 995516029 117474079 386233658 354040622 729658630 272014331 349586313 931604337 981318092 139240791 673156379 707381075 860080282 499110340 518133298 722288113 914372609 709136567 911646966 663253266 864571160 198658745 545102424 861728003 956909603 247676300 615677451 647654340 947181419 949945951 994001881 758820237 896736401 982847089 988272527 581324706 602555494 43122203 239474667 742812562 962523822 435122325 538696825 718592761 783399629 977450866 980637643 158556003 500657087 698898032 740227876 444448621 742391842 989433230 992691824 254296549 607255961 398943303 936931969 177257919 832692546 681974212 685974283 799546777 900104502 161659192 948831477 709987637 970277807 525335430 599449896 482572585 839070204 184744536 954128309 286530274 546040934 169956364 615432166 557964436 908061514 872694290 978139368 398474841 676926770 185080266 418484830 760179343 945112905 859058690 984178658 938964160 963944059 133431627 192165592 544409979 893645287 631154184 833219126 584097958 685124781 361618135 688003872 613508250 865783106 890638532 936918673 349652293 897201890 185851177 250062049 422872654 553828337 987959920 990465854 820652451 872352740 277065138 722880081 64579975 312183868 289325007 400250121 507825680 832408662 292795417 482635451 246016674 936890987 532005844 892228103 536172887 806043813 52012847 151967103 669941278 831261432 942299643 963870797 413099441 681326956 861533009 942984607 176274778 953565688 559091455 766481081 841246778 901225019 699005179 847429954 257013628 855677178 553587316 660971191 694226929 986787510 634441270 698569277 766514558 766900673 35091695 223361376 723249519 900041396 341528227 545412753 429733978 825966322 572423514 841336923 362612336 644293353 567411270 863509425 69244438 561027759 738690269 992737735 167128926 238891972 604950424 834598493 502266314 793801892 765077462 986785782 719998021 889661500 523561436 540365915 486262971 777998144 954455685 961883239 606439015 884934815 109605190 232451611 727358808 948159274 881808970 941418088 437733163 700285584 286391461 662736378 756766942 804491306 819904012 908832147 943408352 980986217 194599566 250568001 686484671 774732051 840876405 959217785 133240193 383491659 327316056 808456238 681951684 768690823 443685911 932125858 182859314 867814046 16576132 679553829 653049265 775653134 170379267 869095227 724700763 882173197 394644161 826146206 256154578 766049437 215514324 799056404 866310276 873055982 108078275 225632087 752105273 794001836 682002026 867024816 231774840 258506509 716391070 793062278 113189451 815789951 720891125 983647950 418959758 801164667 30626916 981338739 334741732 356782739 282836487 418517265 555982585 783456175 830882366 931347002 962420287 977825133 919599733 979884563 400350927 668030574 773737307 775245194 205764375 697152435 334656356 498598468 249083200 477773147 481876081 888280502 749675164 860932838 929382401 991118450 401083644 962564536 551990387 711362732 188511598 508161708 166192461 428394674 656700778 722794736 415738183 954811702 902291242 907429218 99941836 123999081 47068761 450170802 574436183 941220519 733188281 941674518 689839148 758005585 413447052 872043327 93008311 710875635 184909566 851174131 59849355 592999206 988066569 997103526 725169205 741115563 297534445 370864439 82192731 866199802 88463815 691592585 157763227 263531712 360359914 733156604 25407241 420762793 331113136 564653884 857218217 935539776 661033223 837447852 368831760 792273107 849620867 969419997 462662538 671300722 242904993 788121042 196687210 850126772 227448182 269618270 948379566 992141974 266679718 341469816 896877199 960834687 582916015 807361473 398774101 887216955 123677279 297103405 211284278 805491452 699705973 946367335 779093375 794171039 126670375 229476426 698958204 880371113 724044390 880623532 36539123 631033976 374394540 494287855 533903589 543248851 606418861 857866150 375766849 608649811 400289829 897421578 353870089 804046758 831052451 958581826 938461075 991806876 510572017 997892089 10185185 606145952 260682338 287451067 322494200 796830904 963003877 967619242 746645225 912320510 241807376 494526127 581218320 676017609 678980714 866467587 226218172 278760301 565797599 774031839 955358773 994366822 881436937 890298256 848369821 870866695 757592570 789263543 267089635 724692913 764999451 816630312 156451183 815591834 995343244 996493888 646768178 868194941 543429856 780282104 114482233 917726974 882270506 979721843 64009914 846129172 796924951 845272509 120163128 905841623 278581644 336338382 187786234 470864095 404576917 553852420 843447852 977311038 135253500 232238208 519643765 708472867 154704204 443275789 100309552 268654358 611431177 649345231 623461403 815050409 674241854 774131130 462715014 649236680 14382913 475616881 88647797 987936329 512495862 539632050 895470155 915378565 379825294 692749059 990062715 999586670 789762808 793286290 246686446 768983931 457861473 893643238 608664100 849623313 34359935 287277084 801468505 872125493 584176777 671422967 228386540 853399424 747376233 893778540 152369121 728807708 294482027 972547637 834917201 903525666 798063582 835478070 807294076 846523190 186651731 546874594 263378330 794419774 460220578 561418218 83128804 99862059 24213404 959230141 73515650 491807745 214459408 845175816 938404372 971183117 745953995 903409622 465780743 551722756 153173674 670935115 682747486 906395120 520440364 546445703 161208526 667483581 746008744 951221032 959016292 969380863 562632726 726434366 113560146 835587528 780565717 868910915 580363128 819302236 2110434 60316770 52809724 937180374 554826562 858447384 644378480 877789368 659793297 971061921 811854342 899311001 714332849 795788442 183129259 916645621 6189176 650589221 910825125 924795172 742960024 812377257 386856309 919915100 658103509 890561741 631307254 800028671 806898887 872216205 521997809 737176985 134544499 477263419 673534617 868819255 271142682 556937532 76291123 251224173 402308457 617070071 713429372 966127764 910254764 923906635 280311390 539017376 304567139 518345931 328572099 525295848 170765142 662878114 213882327 322027071 77651931 309243802 307721265 752299049 633393306 999826966 56109673 520971998 548705311 678555348 377159803 505801953 752534571 919004245 397179577 427936108 543153953 569366393 628152894 919615269 533017765 935518828 487005695 648058744 617040275 674511866 589044007 914550430 62565777 949507750 239481817 763815312 586137473 732271991 349072926 426012642 164800261 761118964 638798031 691661663 547189297 555527718 698874062 824569807 170925466 217700197 212669135 383438088 329998925 427030020 12498932 960200366 336008344 954538622 589482057 749104518 979118771 993959582 650080739 787355077 278907162 536564874 995968633 996948292 522620992 541039728 875767598 943581069 163127059 612125328 686328300 689543489 983772678 988256312 795267195 985701946 292757872 527173967 753525339 885819720 711669723 807621030 743682078 916146097 991400781 995278488 609821973 905829262 923393600 963293488 40363640 971090616 633420629 903815708 645993999 693136766 588801354 770975343 424034487 955832248 809722329 985751555 466224484 841357983 448975131 729404369 336309091 718233666 755453919 802460030 216307108 810118903 255461436 732502184 941689603 986412815 371819736 415322301 488126766 545885432 967187661 986036509 708469089 811793954 630067074 749025281 860231222 969039451 795798862 821715249 630159130 640405464 468479996 639284045 360124187 605329782 226883455 721052438 696723808 962624513 858528719 930068427 60879281 156950472 340606379 591155603 326026685 717081607 563914667 989098978 842612362 949238032 342753363 885045983 32107373 286724919 5920032 644119429 606162066 867069468 265871482 516003648 171547125 888652883 952098191 982489839 456954906 845901258 545221870 908218204 655180666 761419411 573205758 855062804 979164974 995970319 594261523 795394363 887355364 945885634 425536167 960132787 40034908 291568931 989207223 999096147 252012478 512855907 816850367 979991744 294666202 894980970 465413740 554270202 144919985 865766675 482894117 833705836 751767339 870903660 56506056 194013141 528127360 649953273 321618800 503024503 680265957 908233959 388756515 562010707 232102591 603274369 585483657 861937692 77977940 594694797 731414518 984418461 190454329 894544861 230682393 520109270 564835219 696471030 629947869 939441693 101727409 640350672 73064585 543594312 315649068 917891613 250837677 352221927 382567855 801862289 301641518 445763073 509916754 647598097 727996177 927929686 285310939 649484351 965060036 991041635 768482120 899102726 398662506 830967528 905193255 984758949 591827592 882159787 891806875 967810198 443961976 467462463 935106546 963442250 266693151 643820755 518050484 602856728 387315173 431588765 687291545 804686036 506765167 549263483 744166060 987728059 210224042 394872919 746677621 954654134 31529098 579525118 306764099 565810593 928622381 935532160 640593213 644950834 820990049 854472469 192384337 611288404 908879346 913350359 496043390 551983245 890564164 894301797 618845808 640065488 64602793 116744466 356924196 625688727 364042137 898923232 305517523 992401969 625374192 866522456 21079484 522683719 547348274 963294254 338543100 634189675 437628655 945875879 744492821 975291941 640484179 782601282 514788540 961405940 782991346 802190751 997973267 998921328 763035081 955410973 655685063 717675927 3261481 584133130 245548835 848724354 266493072 569958940 624043447 759749222 243048103 412929881 891607842 901582855 957147246 993445426 714873820 926891922 158497244 167776522 185435608 674650736 355124595 767815834 123490707 194133637 599924492 963118220 960194208 990176768 95961200 592162377 192723080 759081655 76011116 868984082 862311801 946194072 354468563 842224654 209794569 674319753 85991132 238599996 723321190 724431604 917087525 986662461 961906606 985962522 8001531 308028218 484161311 908739128 624401818 740474464 744121583 881689298 28659580 569161026 18456231 469092963 130156004 185178289 113930886 235485237 442485275 872094084 114186175 498952727 894146539 914056504 313493265 353714231 531281862 872670008 339475418 518255922 238766237 533425606 650744592 932457547 421101357 939953296 341647556 889795659 102455770 472030300 133217820 564203666 194090402 655059058 894131678 956984095 375599305 457767894 995319487 997952549 299776823 687033212 346186820 988672328 67591704 179047131 932357975 990321207 514952827 829420172 847735065 936743506 888879898 905491636 888621032 919167830 737305305 953343670 322475667 935548655 516398533 961049469 415740388 446531894 981572526 993095078 118157907 767340888 325192648 437739847 998488524 999435045 825734913 933509934 606554944 606858648 900713880 983590248 175521795 789212237 384905070 638405337 252337134 521917490 620980253 983728368 201555894 694316072 194768762 749189307 426335561 458529662 890995053 979597121 26029937 559582630 658688180 929255542 125012439 515602829 161744779 704825629 167529844 971673637 175078995 765472498 696106366 719092444 395319565 575218246 431576618 711707312 524482143 943594740 867615047 913520191 247564951 876696514 147005338 296110527 318837587 525922295 790039786 963656679 997073555 998713314 605674509 716720174 929321187 985345044 834712478 959942998 341619192 715134084 825877575 991515692 565259964 746669845 633313460 755901157 686354408 734239869 794700819 977742556 703139599 939717692 609316425 859770675 995646719 998145393 513893551 936628196 55233082 266050709 97627183 148796896 311961722 697498928 827332924 961735606 399009961 621485766 549162240 795305375 402002693 648815420 93893238 840296382 578959410 716498301 874327389 993861392 776893499 951033380 413705379 523620992 966627441 996642745 399209169 630039769 903600575 955308324 808734779 905525219 716897300 875864898 4278449 768118917 692456005 938340069 834355844 875796919 217583685 564478926 94422067 546246036 339336486 345228764 932229019 980708121 849097022 929110244 819768579 963968287 94909477 641015151 155531919 474045538 610271747 656777331 112643313 278377106 837259254 945527420 315439699 540962622 707745039 851560079 286832192 590670872 480427540 928989879 149496375 845253263 766024970 854256398 987460869 998227272 715629444 882271705 641146425 900546395 487877551 640182396 179861106 296621659 542706418 703450370 810060661 913498771 736332856 887918473 477335017 803515513 147216787 834987701 469914116 773068292 752693589 951535291 592406431 887560210 115997400 188730977 763341872 980420098 753927937 867428315 15812651 307736519 444014259 539686113 257976 224898160 840556377 844942892 459726080 818165653 779425744 981064547 681834947 934368400 825352296 854844927 219822980 360690264 594055694 766764687 654233667 857481093 750572059 919886388 844505351 888829461 21651869 188791368 370372118 921424511 156708646 929484851 980797777 987202208 452777281 903266710 678298243 698443858 439514132 720935811 134488735 672331498 121800026 321789278 629394538 959295625 771452256 782912833 507566645 732018194 109115663 380585437 322215087 692651136 327320589 934931396 520147504 649020715 359243365 444531578 108991903 601011405 830879445 885004433 520805132 593913908 609511275 715610620 991161277 997278624 661093250 681643908 931961123 961156674 592256241 725948005 656080466 877444327 796006436 897918429 666229727 977649901 562064093 992674139 826735678 902397731 678069000 799337116 80773832 246870526 242053982 351210166 681619831 900696606 391427250 734003401 27853188 436020878 881175984 909550676 670992602 725452389 205448976 225474434 511440940 671678262 795814499 867356318 723410739 767630740 212948441 216810166 341362220 373389953 844690108 925899175 49064944 993129728 978826934 979121568 157406447 559856428 700195973 902743294 942912824 985011128 766642069 818880769 688602307 827788580 575161985 818009819 502727580 662627222 272057786 525414215 40350684 239863686 787320732 962995381 38129403 517115446 593988798 616140227 93933537 537252962 431348565 824278879 218743157 488217999 830411413 921175682 863185956 935632751 684532761 886413223 327505589 683801700 441442971 868120564 448317166 964583065 176129406 217638836 158978661 260632961 185379556 231399361 506572767 744702713 452307902 732342368 556547151 948572694 964781440 972282829 277890547 989064004 391575149 517252773 428904757 610558285 955411453 997016618 679606737 858310566 529465981 674771822 820428660 838384641 161533972 839067560 663254671 773654746 769380213 777044657 649133220 966722594 606994802 866815786 840679513 857244419 966619673 991553362 212324557 323746665 951654625 983315619 227254924 895432867 143644729 685411101 706100528 925344332 911449689 917611260 217149158 267532450 424663649 634302313 219130841 947174553 564229652 852593700 898305973 918551005 223129050 738757082 703503729 915772438 682206083 889245885 522578378 596538007 170400089 288964957 240555709 345514239 813104159 822796252 740496580 921773606 510352521 956655469 180429506 336890349 285520208 530174518 894051268 999826713 43739744 273926762 89550289 274847357 527373608 899022697 516907677 547506017 149315466 839718761 873168306 924819238 639285921 996590104 827272952 949448409 526288044 609246499 141584046 909809235 464609108 766430846 627575793 696682259 927925382 952434837 747797241 979067411 206138511 925159395 708472866 969754084 839970048 940879701 467015874 575943431 907927812 942220803 447871755 604712778 313301902 851359522 248631415 622238404 656101122 948509458 563099398 710193270 671050254 818045519 12810090 355018026 644780680 974731968 257501937 936323828 355709711 883108271 699479573 708630184 73747688 894375204 260768420 759885247 531669779 681565265 330568851 596686163 790899437 875434226 319768361 645899774 851265013 944044226 8259475 995429105 925349176 971375319 185118786 929196818 214429614 946036056 495803677 664292686 62463347 496843304 979537021 992018765 397637923 594177815 223005714 314458166 118873802 270668494 448780062 574625744 252771678 878041667 938978677 996192819 240823504 804695009 387893481 714455412 384706270 619992505 21036855 310732627 389535758 796233501 603420292 867521236 31612678 979191486 293265438 873044852 631371661 949796298 945150122 983060198 649132534 668456276 745022895 844208335 336336617 447929497 335728227 777521162 817869806 917366685 175052490 833355416 563163662 910555944 162321116 499631865 859989467 925320777 663624543 744262525 189048515 911099883 961189063 974426960 646955183 885015437 4551721 184137611 712321231 809888548 790516340 827130385 977856416 983550565 115320995 237374666 887424059 998978796 181418877 231504460 889062226 947443719 133901768 973109262 176628838 357452373 922570850 965331998 578738396 630395681 809227991 947278978 483581617 787563641 46084340 786502551 160336162 371780322 174238922 266942062 663516180 806220199 763584358 874849676 863392998 915852185 857392652 883756146 278809719 461140899 426281019 456596558 916548643 941214615 269030730 733125465 894981364 907552579 448654770 588364840 537471628 584832377 751789252 910775852 452282633 501065089 115826486 646944512 783702073 856940191 921277209 986665700 33208405 390961211 663123325 724862934 638300303 718625643 316648367 383519404 270265934 715391253 730364651 881905950 983855189 985525769 507771272 651326178 435712567 839257475 335659771 911097426 444313504 489767526 54893537 395350375 1059585 823515856 970187232 993239357 19985436 880000242 391325875 694269250 805282427 950138876 297151123 886641597 144287739 306273368 795480797 917129353 806479489 903386468 995786121 999311192 596902786 639340844 336236743 472459028 873428799 971445471 433832382 740610366 51846781 997182697 112897150 780285768 485099019 854071335 531578056 614592875 419147097 829042065 190280025 741970534 560562804 898919988 497389908 892129097 60850796 911374044 675445087 805029305 579824482 697597922 941961951 957950945 747251807 978298196 68903096 848764666 597102059 763416410 596972934 682050388 272962823 430381327 622797726 908035670 44872899 871474771 83404449 427307622 77663060 449407235 824880969 956321515 204754743 757775053 875899790 911870159 481639656 556150389 876595836 978895447 924808877 969468806 620833931 810717009 88975046 723549502 920138654 952152350 109207227 142048162 243160579 905388695 381570920 662550413 962354217 963730066 716127409 870671545 437908373 876820830 992425928 996249996 397868648 641987228 244228086 540638800 661004461 796408856 772738018 900794694 723643768 921495362 619311413 843606351 895255567 956028704 225078523 693106239 824595471 827730711 691148667 888976132 765492806 860449391 473176938 661828044 877111281 933593400 639029886 702851834 307118647 608524570 436648123 729994085 331063472 649797991 310674498 642326047 316502410 478251861 448990588 827170275 629248104 929078028 743484730 865095796 362363472 963503671 21095860 821628148 100229742 566462483 957150432 998660319 264563197 424363072 908216331 996358314 349428279 699729994 89090433 378936799 938555423 956228559 960801037 989469679 424496617 817935691 91270291 305783521 964680129 967865074 550462364 862450804 676647361 908824071 921701865 939757427 32210812 168291170 433700667 964189218 167922326 879493870 68513680 941007820 528695256 737801339 584350463 596475665 233334766 849200229 206908165 305237056 320864015 365821002 890525649 900934586 482342209 833895025 452140489 724305759 545062611 929573560 257882644 292178357 714728458 796400784 742598762 752728892 258166064 513273656 366921823 911176134 813702234 996915793 675990366 722807538 377035957 821072813 540660057 666094880 496307265 969916026 843674421 946523187 178849173 447668352 657711236 671111499 400979298 513813565 352122431 417989198 38677794 529768536 518155395 571387840 82756463 414356600 45463543 553711446 81159744 681516021 997736272 998052323 812272649 999615998 662408841 901381271 827932023 922603031 606733616 956442295 67407462 417526327 507666358 558165397 695621355 730798919 821718019 926510867 154610850 212012356 158061152 301241376 164289768 254936125 456756967 609451197 976282528 992349659 1693329 18175755 524322817 993090096 529168479 676730260 311408298 385018902 188843194 464695502 799056429 832455529 943722505 962675597 787377235 903370707 27468182 799889475 718912227 997544242 319930410 668060868 982910345 987705484 317108113 476980999 906418300 943491319 363324071 620528113 971889874 977808631 94744001 660143294 552593051 721804529 714062360 804229618 533652748 567286386 965254614 992049554 633051741 665170516 348063830 894908407 878344822 889926247 444475546 630286238 920044808 949075553 500441427 656187561 440924546 718845985 61251540 483793977 250657346 637694913 302156643 405229250 687746321 958355543 167840641 867091467 170920899 989230221 7331072 9206833 941036890 984205071 506226926 751194743 762182527 806540817 472159654 800487179 640781107 713171882 827185106 973991971 900654455 921957161 97248651 546804500 915541023 960746441 391027911 953154784 17626671 879951193 188999678 322058859 819946706 920752448 698011541 945744813 578140909 626089951 257831482 568239919 537783639 902092763 857658926 987664821 951581394 988312005 399944702 457527804 496163683 622951060 185306443 834815173 420208818 503676447 248428337 570840657 578723130 688363256 543378396 809942081 998674162 999317728 496034513 923463390 718131810 840209295 469516872 753341890 927346329 997161154 882801289 969645011 255283882 929439004 210181954 990854338 711040259 849483838 593935762 827947351 833808574 838331870 497658520 836862363 657028337 741879870 605171180 999400329 201133294 598233138 941835892 969564359 490353223 753125764 523536166 871671652 459218802 853028189 295822906 699304396 540749319 756047850 714072347 717158891 973675857 982026852 121587419 517554472 984751782 995459666 428693159 588353808 787274868 825023069 419433814 975910178 790242712 894279710 911235393 968727590 242392603 330160335 320267279 849508909 620472194 653714128 44949187 839767811 974400373 991486554 27250939 877039474 965280586 982634065 939773074 970237916 982761603 995679306 356803285 777079769 137973401 789306125 379983556 769796063 535085130 624294584 864807007 868849053 294174652 520975354 328308859 521635062 563887792 790042102 628744976 716823826 316416360 596967434 459649646 917049543 576431761 895722316 479247402 588460474 782534703 823495106 562668974 584666875 362267420 554941497 262382144 352543667 56105012 566898237 453686329 662258062 579944615 601895907 356438804 690777856 457280489 504886186 90577053 852570397 877969776 938854195 72147445 433787952 96723376 728291089 852153178 868814194 980513551 983544810 718958776 876053955 935067949 989663368 769938819 872517221 813551191 866391888 652547164 997628589 935678290 972399490 339496879 504830317 922706357 971403498 310030480 811337564 421680439 647074711 213965158 260270913 526314960 703575716 357930325 943790932 592029601 874463199 419328582 949707497 86066241 867396770 234199725 487222667 227557240 997888991 953151832 973440978 503935642 665506386 154327044 440315727 122404040 885357436 316553944 796567730 747065872 865569443 114851654 437164986 885320238 929375009 708469470 870212838 804614433 887858606 705142615 954013738 242714666 881754729 523341916 940081208 404923615 678773912 684602619 734601487 994074056 997442138 106646102 801873838 923414387 943289017 544785335 846627212 872260551 913070509 36967043 842834525 298081843 816937362 276465687 393250424 611676972 770038827 775850448 920493662 723126354 881978465 279312142 591258028 926541771 933191912 550185649 809813373 292059756 345944831 440695030 835812770 600350514 801033822 262377735 869944757 257187600 479924099 983665101 984503200 825480306 835313643 657514564 910501077 497420188 646044341 400067248 536347648 967014011 968939553 101950857 962481608 982862672 984592162 754563571 788986163 916319971 977600301 507931097 683550587 381104106 914730095 358047924 529916892 722020662 971424846 326431517 397597738 715115086 909007404 316841845 957556209 283045877 728852682 940540660 980009575 745777798 773991004 929063757 960767038 229224117 271246580 51559232 815633591 471058343 796462822 856903526 874301464 998115659 999038403 595999933 717768630 199268682 980639397 81024258 724683700 363851155 998766514 461553332 859361241 424314028 640209864 69403594 484539011 579857148 751642908 114762846 418534758 367561726 991403991 894040017 956984590 561383126 915742804 750812523 924110443 811714590 970893859 779754960 883795531 717093239 783193921 811633958 887885443 380300026 935611723 839205011 894778007 970267966 990760939 719999250 799738874 841423710 842389809 694374744 897935840 571440877 640322302 647893313 863364585 382337605 972568725 171264777 511489212 627856090 908044859 801690514 991458631 590661106 592705021 206748039 829692360 126724069 663381003 426612223 495330408 749306360 969611520 139991732 695957031 2915870 119651005 573620737 955137523 232661501 614025728 638697513 743021539 899768481 988407952 256515349 514265284 105532169 354677723 818321783 848168106 415300641 823898302 265810077 565018100 304011748 943336824 660420541 742240812 710318591 884325270 494374441 897574295 309235167 629694729 114157498 393851540 648589227 996913540 539757555 721710417 427295907 452391126 31674159 589466177 909847254 921717228 906055028 958004051 401861655 733723535 941536373 948324839 397200382 858318891 855643949 869136038 213602551 669057270 392418374 995689926 999658881 999703835 884617532 886236726 29185380 456771668 354888729 563593373 135311361 830507649 601050013 885163825 131342702 211671615 940945242 963397813 199308079 612289857 698403091 736278204 394649368 915116431 434554035 524731202 524591878 729083274 608795711 674202327 95965865 199740611 931825899 979566293 815585373 938956044 286070292 576240895 877253940 884934410 185751959 876313563 468641670 694888563 403014276 494779314 839622794 896762033 993862253 998692489 436448599 801279484 145153287 906116166 464114846 827357953 511925697 517064167 162729973 240924715 659620999 972352823 30439583 403692045 86987953 595178627 101259035 798310943 310193067 988543022 360230760 543092282 514370110 865292772 156819293 372558487 409690487 894599466 754417666 826490472 180442546 881470087 988124815 989457700 69778564 772236419 296389383 527973361 222538321 338161828 693917477 703903413 197739650 557011503 460772978 581235283 954498888 978397788 666429232 980738657 504904027 745480383 120134484 913505766 380532189 830273889 132814964 434439348 665368513 770626205 905415087 905535411 87592809 725930249 483768093 870461733 669627809 703128580 495647250 830064055 441827407 985844762 148682051 634958557 835181883 946950310 699457793 838945329 375869621 391338311 755617627 996378626 27965249 104601094 810474912 925230738 524832934 658303035 424106986 844454731 248642230 665506770 961521228 985997438 543200425 724241410 752511642 775170369 705503071 893102484 332758785 566020667 250145467 943007135 156795710 548479076 889834965 967091399 493201454 886984947 315587185 646809703 32209817 308443468 488403797 943206939 459982793 914348729 833723173 937519533 992119202 995403799 848591147 850231621 747290761 824824913 334652085 662073939 92386572 679948215 216764458 315242115 688324110 762257157 92673822 439462561 352593432 686446382 396905562 657291632 6859096 441628241 766050258 881924704 932091757 977361342 749880625 768730914 959274523 972025508 730531943 808795696 471644064 525607136 811449792 871156303 115035503 266396600 512456668 835832696 93217695 686636827 971970278 982417874 661198393 813462864 982194767 991861239 421768477 808339063 901787523 905705496 633307511 641604914 253372560 822144357 766322499 897361184 690830593 842595818 128322990 797716780 239182990 602850529 824617336 978673599 913175952 948310261 369390575 479614019 136148448 471147693 45019071 504002845 534940648 914511211 213679148 771172931 750341774 781035078 19406733 661136995 504689113 750397321 412111362 620580770 967994359 980701245 842271245 950862558 924961262 950326509 613104308 857077073 908549223 918257976 669297501 804215023 519008809 989400871 720834223 854115107 825402319 841060972 111237515 982397101 644358114 903586187 915097445 933684379 936295188 977638849 986526332 988398294 397911619 628196170 28826706 788767702 574035637 752680764 36157259 794686675 482112557 969476855 877993509 908279059 871779095 945316525 184422386 424483611 277373948 852162335 75251602 229363801 317340979 347853414 793746186 925699535 653083546 766241391 661126819 750170718 562686600 829954184 299233261 896639311 690289881 696418210 683773936 988936975 157569025 970703744 349279014 788900473 252891157 999797417 367651959 705635258 131338543 522501463 315454766 524187142 538153649 882795622 298364940 309680658 279922316 802725708 305595546 497891221 947124237 967544934 778694586 915568445 651870513 807160472 70379679 892146113 694827402 882699864 72922792 959883115 520551129 745041819 215375123 236942855 855207735 954591095 17706801 229731722 706729624 863033781 780859283 957368790 860750933 884480608 537992149 595130316 403933522 558749142 866094650 993439413 84073290 159644169 40167232 435483522 829287253 956020133 42737521 743075111 439914974 483161781 407795033 534396663 125778549 336965235 44779871 147346091 48373258 147557877 659615136 989406078 480381352 871985753 871248561 946980253 594982832 775384155 822849483 993823353 324784379 492454976 936110005 944213532 887009123 919395140 668171188 960918627 65806457 262892729 803999247 994797439 385976154 849637757 682644135 694766558 227694557 759745915 44445428 928209448 346490513 889150195 22990969 96920400 577265150 632573525 204768642 678565030 417660607 733795055 638972209 751184059 549173225 776992606 644132510 878434882 707996496 836501590 585940843 732179590 305944661 445750899 229044754 663091104 979681732 980871182 733330525 923152890 898471676 982332840 587961177 740963511 452672059 564748428 904166317 924937252 653072696 838845663 469414217 989476724 881823441 970735636 535030923 803304729 142424648 246938424 484374584 797428632 976801552 997783112 828027502 974455981 351942688 799649551 471201572 678186536 490790884 542874147 419710859 821541629 475328347 715409595 215043526 680863900 597669515 976467264 499261600 512993921 753320975 851675614 242910282 574211068 492383911 657048898 816213686 945970701 164251462 191092880 871477044 876228145 318738093 564165113 510188071 860354665 71437286 855605084 6004078 695001022 252272750 262070935 962272413 981452026 825277369 971681667 765107899 804462973 196649288 673382452 654569728 868894801 749072885 753752252 554430984 664160697 196594948 725721995 191934819 678747957 623802279 992832579 480365956 912186617 997698207 999029717 119646386 960153534 488365179 719718895 110713194 970304281 83614840 921371334 306261759 310366706 276150716 718419770 433301249 463326111 813184702 892453962 137176245 569684391 520314332 999814014 415717798 937742795 552454198 554335002 121807152 925162924 541417241 709119371 156901721 463943177 14930421 26999876 464129962 818083667 173827270 788197109 337003314 930783640 983928439 984232334 809131297 984400335 121772991 381040741 778304803 893439918 854063810 909687137 563645456 801962122 924966594 943668726 695471460 926695416 52014397 360645860 914387423 931273709 83734417 634036161 564111309 821524833 742577999 862556564 600136310 801815560 365843054 521932929 261469332 875345446 828558743 917838760 919321178 932396874 390825044 398382153 945346365 984243846 203274332 539972301 141009493 849538299 351918777 720235625 563655250 578953961 393915 623176808 791754764 856519799 783515712 917467129 143691203 659086458 827751035 910123851 352678224 928389908 958522910 998148897 853418323 981926061 282578283 607619728 830105294 910810954 818705298 849579547 814290268 888066533 889917723 977109931 449328705 517646198 762317864 890705499 317439158 547759134 907423061 979652351 269187791 770971439 120189414 122498947 204222574 591685354 16966042 879098540 266883410 580819528 451409455 677454214 592730953 989339046 791841403 889276673 878052278 903802247 401481090 431961662 724802891 751225678 712635662 958422192 637153208 868786167 814060497 936021252 235328715 910489905 348309598 686018278 735568833 962342427 340153956 819609143 174899187 640650116 648005690 866994890 363978248 492591881 282571195 509895494 529455711 544937316 19142560 725511753 484774118 641352964 434996744 953618446 542892482 933649898 466432028 966053143 233260305 588657348 991406805 996959240 34398825 300530887 94700471 570859210 428360358 443684299 529788466 945755454 604846353 662002718 276132121 337302094 657200656 995729655 579025414 701286299 317153310 358715524 635755332 905461646 836540397 870057875 425250740 863450320 69625350 698003792 85221193 716222787 186071963 430400287 807346163 837962705 299694237 816024644 212429249 750478883 500611304 969642373 19923623 198199431 534487512 855778222 318670267 376877746 215980508 234480576 320599327 733203508 301772475 441258167 913167040 949760791 286984225 401179423 342438029 811947946 235895890 716589178 567117368 657231629 306344589 309683743 6543967 372857000 34323547 876690835 723201296 799645830 214789242 933742978 161542966 497379827 536459388 723346901 38954926 54319455 902389430 988753366 250867676 456787453 178391915 699590982 389171734 616004556 150708011 264859159 368433174 505621435 108094090 263570763 630553832 930113253 677947176 698509165 912904575 960055931 427262688 455293053 321906868 472088789 189184479 942259789 431818114 764312333 746785364 842443369 443345375 590841145 783428207 968622276 958924729 996923843 11159812 952267066 332507542 379113944 352340596 787927347 515089403 665669172 425713697 917507586 801264786 804390868 980845317 981480699 176400252 632066101 878040192 965584322 568440999 968766489 157230448 936292346 711488032 978413351 928674248 981501884 379026358 424691002 213716602 467435001 931399747 992802342 278798905 613410522 638360177 732130297 53031699 646729381 730031392 872158037 710096217 728123626 481769190 592364100 69269817 970733889 350690805 698481968 988856887 995655225 126720497 790132884 4943872 843752606 277268451 365350997 660121999 893539505 838298613 894387291 904759687 946682422 42278867 993855275 994536016 999832341 870791751 995012883 968399039 979484608 729015928 751643306 563930820 576173356 395835206 584579521 104787032 336790783 663628027 692560274 930855206 985575980 622847672 865641769 986580210 994675401 951221010 995528442 724987291 827795403 94103377 739602805 374746466 947755797 479342509 605723961 890383926 999987140 29568327 388204840 141092409 898175668 55730030 166823757 143651247 479801117 190455148 713049899 370556775 933853532 610122328 901465375 411225267 488632462 620313375 786677996 953440082 999688380 622678060 840351524 575732462 817893675 955543050 971790257 510157561 659613074 255284559 369643758 881636602 924448166 533513509 740731204 157141286 235556012 245088107 853485559 766451059 854367252 754440271 974768392 648854047 674957857 167882324 182877809 328093635 357644437 522717692 715040512 373416691 970248409 709526682 983621220 494270784 516488999 54294186 610231094 389258687 965958929 401852843 653561073 851865796 889663781 220901566 247092717 313756307 972446262 509336029 588856878 54870690 382791234 674549335 698273534 59900491 391033662 112274389 760352563 936744835 978041497 148773917 252880202 405820277 761941487 282395608 611739703 889606600 924034694 106735171 560483768 311810074 607028055 202236075 904484380 433863842 724786351 882782773 894308728 425352309 879341032 745316705 853325623 731546196 838469750 532619014 617759866 93369173 224364519 680642586 886321308 571227767 649210635 777316045 803845646 527654049 977419067 5929130 254298663 290872811 511944191 590387141 945762456 115539979 993345873 291332453 801112934 844570314 854548541 991648214 996607861 63872071 541240615 816279900 873402814 693607592 783894302 993917743 999240090 409378690 971025752 272146988 808862387 22202265 981065824 222887300 414427334 680278040 976899532 123534699 643531986 687721974 764028130 441298753 993928531 944213791 990640852 280157406 293220786 223139429 751408013 983703157 997777722 923206615 947439620 784271170 940802543 910577360 921200698 84898933 577211930 659793322 786985314 704258476 872076020 988368006 994044639 745695424 908026552 835544235 976352088 329322747 629321935 138710305 739858443 203543426 850447721 635864988 702965916 214305349 422167721 701469109 774746944 473990865 878878701 204301489 507046304 86939022 886840518 238251008 687087790 89698196 829689773 225508535 626107882 924479872 940259530 916134730 981356481 711941474 960524962 509431600 541687025 372316779 497036654 228173455 888331671 9548485 555346546 425226134 911647472 832354383 864211390 877024356 963371672 120629386 714814679 337903705 836491502 929277424 955413830 777552626 912704197 733414208 894905208 158607003 470007843 928310721 989408787 367796051 949001156 399457068 694916090 641744758 833531848 576585236 579423937 591696901 874278560 653436425 995193920 950578865 999410663 599280836 781899179 801460350 940459847 700262245 869424616 266661848 648016110 744085831 962507777 507793394 773686564 175941727 696210998 259576058 285972747 781045595 929878989 390601454 612519819 860116971 864210099 24136787 237710807 606012750 717832959 974464417 985125197 690925563 946954530 653650623 922695943 685268131 698153127 664163406 889721831 989167239 999916672 929114343 991829528 993626153 997354670 925178972 993980012 116089893 246614415 912462337 989842118 527010001 850178838 878988487 936738291 903067072 985537922 181071393 816019883 794421593 833919879 111778677 234823184 256034489 846396742 838794343 856486465 607057426 636395451 768566274 774992454 2912333 542823874 986142554 996156411 833127181 910267162 61562161 247293766 719890722 759939176 680442332 887613014 870026333 884942352 992162547 997072039 663879763 715521569 406425366 686144114 340933712 500671723 107582460 405597104 383721681 878813227 695852871 762737762 58736509 947215578 903765737 970226932 151298183 320296177 97559962 913458025 729093954 734249618 330986303 907159265 621095628 832786368 683840349 868545862 110564837 489293055 214601675 317604105 614238849 973764965 816972474 925754244 578476280 871910616 954855736 959308681 21489530 737023821 829207609 927710929 457317656 998818803 78092097 407600960 868781556 960605960 681047172 983541197 175918703 769709988 994981923 995677297 983750004 983859676 536746532 990380065 611026014 948193073 32829105 170352534 243779815 563310841 337008083 817653747 76301037 339849425 879234098 959026836 770544583 983058632 840480452 893280696 257130861 856628784 401544940 415418319 73302734 388940970 565683318 910238844 47504907 474592727 813860166 877505511 469572967 756188293 979453727 992014565 86950414 422970162 127453775 140336268 403648806 863931111 108435892 898085384 272066441 308385974 812751666 994753514 146279935 379835566 645336995 658621393 520990130 640264649 247465452 823537525 370933504 739497888 101738311 425487082 52784653 929728268 881649998 946821547 655052554 658613144 603518190 604763043 404758644 588729530 639893177 859445514 314752176 402171889 860332161 970914418 197153195 701402183 895160365 977014066 833443849 874228065 512671810 604234425 53344412 491672548 331177280 786011278 760767540 904407550 916734520 992189441 257192699 944848609 356676555 720749027 609947326 997936991 88587092 858328124 22180560 211001176 941105340 954116399 715000494 863239590 587956762 718808503 88864456 452813467 757823712 807672529 508172386 898108980 69060087 386422870 646848379 708906791 626577658 650530246 115049178 523133742 53363508 163961895 127219712 688492347 790354485 842803873 839578628 875404134 829376767 965240309 820512231 880574209 656898499 755735874 353771835 862350150 423183943 983330550 557362711 720405278 465828743 839542755 211293877 773945056 161061275 775708206 510343062 626601456 695612611 829380760 254784239 749138473 75427891 333996144 334503981 561476315 608380105 762947200 746354944 781214371 771996872 854382330 731499481 966443817 741845233 759253320 635390738 717232454 373737464 505562563 499195458 963071664 114000485 223690167 561384347 915191065 506567474 968340236 858649555 863525198 434988441 951774262 246255452 586809452 946248890 978862186 852791862 927174757 25185893 275465586 396762630 983645362 711976221 943841796 162592812 688516552 909992875 977663600 363744811 456988410 495964262 560571490 222900670 225560608 656656869 674950507 686824815 703915965 558731573 965107094 891086499 901451631 380905232 556043480 734494666 826906105 555863010 998738817 276974717 808629490 567857131 657495681 324575986 407731150 818301766 903375449 943172758 975606892 309753962 839291099 813915702 956467498 801541100 963570623 188826648 626403593 945970396 995136440 798348052 931566262 988592769 997626074 725022319 818364507 418859241 731022361 491437739 626066495 90385134 827054888 645891647 937219360 841538239 964779542 627452490 742415081 710392475 914135703 900425415 930376570 32388965 663825668 278396921 876827787 603676822 836092504 934591876 976035005 742919332 788088173 812991751 869186281 171388312 213849484 615370806 796436981 216992223 744463423 52638961 434905253 804748678 897082157 599179986 857807628 964722447 971626377 105301828 979592362 72758469 153805879 65431501 251604847 294634485 814045253 230778909 709476346 361625094 934850684 938828483 946652705 285600659 782447504 365185475 390574765 462808975 735603079 648414623 850400412 551471743 664748892 823378749 978920119 549628257 921631889 231092004 858001208 521124170 669155246 994684354 997491713 558786943 612820585 527828404 976904862 534184117 635581330 863490413 891153140 657311379 810606621 460675952 944660974 230580053 955653394 32910594 488535102 232606892 539929827 57409137 399325813 709400615 969460053 67962485 513187651 400429982 775986858 805837617 997347484 956766834 968030795 903351162 940905991 770743604 975473278 17919440 887165001 495691587 961292180 641885600 970403358 456247657 475474271 760018235 998199327 683825166 737069048 549309740 617487226 780448542 856029390 507642590 973025080 695561269 834662323 486262346 817612558 965556895 980907919 373390954 435821268 368127104 753596185 14430022 341643087 709304143 842109726 260355947 468492119 565080149 725489929 52690950 915920192 497575037 825747181 89728666 312471355 790240474 951361725 568788688 863814487 987746354 996066826 745369550 993408637 668440759 767080701 122196712 638012327 143586904 470931385 876993238 977610379 780665974 808622548 308243128 675818196 8704112 441782609 786044600 859032976 969227005 998236102 33677398 150710083 75908266 189255379 731022046 962094057 357835503 376681186 937464315 947296505 814868380 906301192 650721381 896875205 219675944 937812666 859934815 987814552 510192314 634574517 773348094 957899762 497043125 526679726 975135142 998384822 330078700 493575779 222016367 735933264 362352570 462550061 904855418 940219622 16378508 827257194 453764576 579048215 85614424 297369691 396231928 434749093 35729181 103612645 581043979 944117919 128168127 438626525 654803650 820213571 4661241 808286226 321103389 989942742 105793744 329491502 386897670 824688967 221875061 928612486 613669930 850255353 915964752 929414451 229765931 769138355 954674645 981978055 947628895 949741215 525667168 739609253 6853190 694035090 374180811 591728504 660334313 699808374 28402947 378793281 87812821 935996228 664641695 831313242 324800051 767775828 992638643 995376346 43179364 493563389 660530242 867189479 389720256 445785151 14576844 760611462 23946240 410803203 865787488 905676786 665717684 985341136 560822694 821885007 407100001 487094414 494236097 793224578 684369378 847716970 158309211 269124151 800713120 977942101 973106504 994104225 741808870 860162494 683597876 812815244 268194038 433445753 309753315 517681089 889463290 899634173 969350884 993717400 613694530 628012295 671806926 946964847 966105769 974217218 297795015 843300263 503170319 924914211 854928625 961329707 953145468 997693976 876400145 949525796 106216764 209667712 875899887 961759011 287373632 541790356 841099229 994595858 316013051 827407128 903137188 989360351 914868061 930955509 70082117 209305100 20805009 560239492 994112823 994302278 486584318 751480858 766213710 813570736 141698109 555958873 861323039 931433444 117630417 773315743 431393634 825875319 445733790 996701592 553364559 950386282 131568166 575745683 300175621 800897177 257276950 340547657 917960100 990541471 568206210 606550712 793746796 898835091 575146417 608741512 300296451 761643232 3013140 644290485 165109944 443660156 652710103 831544040 134054821 286559489 135714170 705379890 857689395 984809291 429867827 701010843 279543315 288643468 590978459 877703250 246475301 861249609 219182967 813381539 898347874 950274961 664564235 796825766 659862742 777832783 414210453 976013705 221984213 851913957 601472134 724436545 970003218 984645528 294156166 686620584 151940483 256250030 139739347 724967199 820577572 929598056 964673834 990349285 5522434 294427548 836555829 926415544 522243585 765502671 827351413 836724965 12218965 298721039 289203614 686081638 748042476 976954008 924884372 982110071 737501180 755244265 372227854 601242449 989983516 996961342 871671834 951560491 296108261 750926846 758438062 931229245 933492376 968960724 877555890 991158950 380515713 774909478 760189479 957734142 631324990 699410967 713500624 745473901 264475312 605232536 290781135 555065021 434256084 601558850 895161032 960674235 296005262 764841372 83289324 767762879 146621181 910563577 364100923 794480084 343137998 931910088 819498301 957651202 388014334 544213308 674752279 880382476 410200054 656325091 326348817 513059415 234922220 592858569 149141166 308371948 972110739 982173457 296663889 394140185 167958726 232970812 685144451 985232360 759201238 897216723 864666422 984154220 733049423 989575815 499492600 537047792 383516521 478693773 966335178 993233521 391206437 679197840 153111603 555109653 778753576 840745196 702718592 933667189 147174792 376911299 580971526 616298324 781510814 991334903 209774711 222659003 534232017 618552806 186310055 381435988 901478790 974881725 857909773 930628922 594624736 678359793 430948686 642816831 95407410 706194674 936553553 946260960 132010113 892510444 641919247 937872501 109089558 235334208 392106314 649528996 539783677 676786624 538448666 634731064 398757416 441022940 727575114 986538900 406796989 525713906 175225200 679949425 679877539 694321478 279865736 971367369 459848024 958311926 762688170 763885705 632735439 762467320 19187852 63906128 286559315 881375947 862029416 966979241 329744083 453893793 847242807 930427481 141592577 263815145 427152944 606004688 465819824 582332232 408366505 437335346 595835117 756767669 702191427 892758532 475122903 576982321 696619328 867831129 224929381 228797339 421571370 736924668 127494763 357188779 912447153 990622873 578511753 860544867 195792525 676096877 22960145 490885874 598177164 899133874 761342139 902321583 157492473 762354072 498374397 743643989 259503408 324468717 768956592 857337570 126487783 639386032 970192186 993095655 764207335 930762377 580332396 890252604 507455738 704415195 958435268 970489397 954065051 993873299 565063081 949177872 478334147 687164160 215852182 732632920 721620262 964039378 913237447 928029575 872857968 912441199 544707060 870134445 348064855 831831339 619701571 742807365 293289725 696913982 569248715 856161027 491033220 735509787 290820485 354377713 798615310 867052509 152329032 307647396 750218210 845559287 624512210 899017318 356163446 383954297 967615278 999166774 636376834 676710504 4857113 387185946 976264213 981342669 967218609 992678774 792018917 823165154 258109914 995164209 433843910 918450542 202221823 306359037 955851279 987941046 255018095 527404329 309526354 957695053 710012375 960558661 110217718 482637953 186208737 373276211 677708000 795087991 507945040 509025883 839723676 910767143 811159757 926677763 394878963 448036287 342246368 707653958 638427315 974661222 149747056 310344843 911544932 972280654 601007437 743249210 841595450 957124709 223558563 748310281 873611964 958866121 870224948 871808137 782145680 905527715 36355199 367952931 384616036 871238945 352823132 678234143 885269302 995378152 699703741 754250696 105180854 467223022 183229233 787827739 186755998 729852582 354107967 363990127 577165506 635521381 553715696 667723531 821022955 943431630 329469560 847383511 604221259 718603006 962370662 964271154 632080200 679526950 734553679 910868026 768814904 990034941 886784351 900338758 648170201 830249088 928955212 981837673 669744885 780130487 927382783 971359099 361279127 966806406 944280957 968567271 45161777 442782279 588874201 866549208 606406221 686041253 199396918 279311340 64732962 645240825 749531768 926357049 204428320 928092195 654672680 697671412 888430023 950555046 944087845 983015872 336628269 354679886 669092152 876781259 496492211 523357820 206878929 615649563 900750472 982603253 231301143 363691752 951898453 977528152 210846233 380827033 444591932 615340669 545077623 779984308 175736774 532875329 190986277 222703725 826724647 885593791 550032228 844061232 722738745 981262477 71440611 122011412 908118252 917268153 895704203 943166857 340998082 505240561 593569476 918836212 918790429 952566963 834310886 964070751 388841456 849978610 641024063 663330716 795620879 814858662 584059908 703782615 312121178 397432244 962502832 966806634 845139250 922839925 498528610 880777422 891633167 903802153 638962119 649874156 452079481 614759820 426618792 703327935 331562968 333284318 797828387 951594346 485735829 708256164 267286057 312762409 792466377 854165169 368315790 683807031 775258115 896860319 577768102 882606617 786118557 843775795 706566810 836749983 173725363 964101539 408658188 580565806 652857345 780159011 308176335 409040253 394901510 416713705 385493111 440790032 720452237 837235740 914666624 959688431 658108168 933141057 253894924 759746239 883989978 910282608 599544526 758778648 432702052 712532315 216013511 471514370 126283237 557144609 944329065 953439109 719172628 851839706 212113726 257150417 835070058 929404163 707074769 748764611 410748074 917945050 341217782 656360612 312678953 564132312 750612524 812508691 400075062 662360565 246270286 850860822 872696307 986561092 88094902 94920771 71983069 372423875 471995178 963992459 578828140 625909439 552591187 910932837 736678502 856117259 930185925 987402495 850031227 853007161 336422787 448632439 868908973 945348077 244237449 908096047 564646214 856400495 818475309 827368567 783779176 962351324 583323739 792688281 815617287 993585599 891992708 980935366 12292470 285762807 349481256 645024989 853384726 960957978 451578961 473023580 502035581 669816812 510372957 959625864 130894022 636975199 383873411 570701873 470389894 597649341 800649201 978155890 512691314 771289736 133039156 294090126 69803612 428044275 917034608 985893132 85922200 257250774 786763081 788170609 210556663 387050815 759986039 873062837 25873488 769259875 862632350 973985974 983245634 984563725 991892575 993077035 607517321 724246378 299227745 859953255 393561627 976362690 399114546 988004324 259227933 830225967 37155520 271288871 951719333 996847762 376858459 496628217 657299950 690725630 692787724 991801838 318139994 540794366 95924587 670593814 104760133 587697839 15899592 881543741 435105804 522875178 236453893 983562582 377053824 916842075 338554465 521194199 696779659 853830595 50160067 133497167 933022613 997619977 346593213 786229199 204925123 996918529 893240832 980653909 802615474 825013247 562093569 763555033 297172070 616782998 801580206 864172841 916287150 923663033 775003795 836354780 173467538 898724274 680137710 781619537 753957199 876499710 871098465 983348090 538976862 541871968 883843958 990409946 873960198 933394822 341939489 494761866 885962759 934271754 149719444 931865147 732267473 880388523 328833230 985327097 595274447 679558655 802982515 822459454 817258758 829886804 891453677 999540553 854676530 856206187 789884870 988937669 210340126 788832325 182856568 385043471 943187247 991911303 430297292 444589740 264966150 397174390 999860303 999901094 429175116 544548694 238947881 583937533 9779833 906711922 822690223 854238578 291501591 933650869 893974576 955632996 380201162 398264837 140974328 315336699 315379370 631136757 969678088 978332323 82565734 92319199 7009724 921132672 334904165 740543872 547950786 700177135 908070270 983393985 819912626 958358175 939693989 971301437 646168478 967787230 815689096 883307849 626818316 759457235 752744553 949415032 741096019 897653325 294415552 314800336 176272256 902857823 859993230 998765789 494935191 786231212 957146230 999778789 507024113 779785971 505325398 667976112 993145848 993392272 516959162 847978957 621153738 769894571 854397935 943338904 572637369 705065614 267100704 392884302 5874311 634501541 437381517 752634500 991352799 999664354 550328404 751186624 721310216 848583096 419330521 766389912 598518013 923117539 273877599 587496505 594867254 718008343 934241761 942416084 156310625 414337397 818383960 918282265 181677060 533496095 688091152 700432583 532474735 632447581 576169341 911848052 680298185 738694411 685046276 808800137 402265087 799573217 23274609 759999593 319142878 972774953 480532945 825517517 99936034 467060200 217734532 340029625 637902102 821841207 595774539 940218122 453832917 964073945 376238763 694260710 38589497 563155676 656005953 793184723 642688141 704001570 965679145 979533307 224058299 612675717 339141086 900076126 284923640 868893346 146721408 377233022 782251132 842722866 253061264 564487904 421332978 808653907 30795778 268351953 714077554 947258345 392773401 766158774 958383536 988925341 526466247 545808562 152851634 850998613 308503860 906976276 728245621 781803337 272340203 337372734 993705865 995723890 421612164 585468577 185817261 540306383 650930029 774866496 191158635 287074902 333195288 523704766 20837539 910701068 592412131 964437085 520875990 773904251 931470685 938828989 488922052 552721461 864398301 877036438 826652020 888181591 200793251 589793095 791275762 911932094 112055864 999007647 368657874 793732589 360574591 373519068 684870392 829032095 392821210 654945533 215726851 454106965 765481583 807888518 179570486 789298847 926307360 936752938 155502995 217712081 936157329 963592300 352143753 460611466 187029767 784681941 112386301 642580651 983099359 991113034 112550452 712896303 768568424 937189215 112629006 476764367 239144364 790994778 285589464 813970552 2120459 790809108 311705558 918142363 814252068 919004703 557591770 988819823 867945074 948852237 64993053 822326507 875202758 943646583 384970986 876266585 676310983 846305791 846699317 881416101 522344662 893025095 78615272 524434611 923471264 967357280 488144881 656452650 799994571 971850108 997193438 998779121 421105735 840016540 25719504 360113507 56686925 632102272 553639715 855616765 359469250 826381709 21788326 875093094 254305082 650856356 848590402 883791108 831915534 998656840 604291740 677482152 916475768 998514214 296227694 567223428 777583607 924776945 462928181 667752560 187096979 301136790 314728762 353848345 220760533 608055208 89217168 403200754 490348438 628177090 416491206 425529131 192860147 833321230 44343391 613489003 870724642 983152968 984976806 994157931 642820784 678889834 262411412 640265381 7349581 474382450 974382112 975992100 715029306 992769783 534952353 620689747 340725375 661843100 808946199 834895113 881758730 946782696 232689803 930268269 664173318 864805358 559869325 562103771 47844124 657742492 686819922 962043425 260606477 706402099 208234055 934858764 136685937 933077570 854398232 859208288 690301989 779486888 288836374 909574454 721084533 900987088 748540314 828327570 75073779 137887782 630340440 897927625 233955149 948782281 466023404 859738141 979666892 998464117 211115434 805785346 812425465 840435399 57176166 411046994 104904794 703982324 276050047 647898853 871663004 963845858 829579089 848392359 868544226 906680590 150931388 616650948 755506426 867252608 134859536 667821092 953733440 977923630 356672361 593201887 270648469 559182148 183236149 327505911 599307414 886855915 612593675 736069919 156252939 180254792 349579288 780323677 999211613 999215195 940114692 949396133 970281454 994318233 687206252 713114609 791145883 889835106 812711460 841251948 301322426 493122954 943128219 996366235 774301939 864267493 655358859 806601208 489151417 553567640 143223143 618641556 923373955 964397551 149212963 839736702 767699912 768068793 573678481 774435575 498333745 688843043 656164038 718731469 235736361 481650521 276384570 727513418 291665776 752966581 905230016 977313115 116385054 507520842 624190381 984374206 68722311 332113852 321612747 988555949 931670779 978419277 388218799 964260947 13332568 97930900 632389126 866672471 570163958 804125187 676041823 862672242 728309500 770064910 696289407 845538096 301961977 493923866 735470776 845945409 139468396 796989222 69931319 102926797 157610818 336122291 213954362 764193934 26147257 987405271 332254618 530182696 867994748 895382254 162491134 460927894 95993008 770347081 323538447 432266170 707871000 917309850 559121513 959759489 807261811 856020496 45446644 168816752 706867560 995022164 445427743 452633477 530143239 929985574 21487098 329323627 13372964 799385409 611084266 765032214 88614967 780510720 541411558 592576114 445266818 537034907 879744121 925880310 718826396 804013635 676637871 717015207 81922386 435381286 150041831 482735092 854874228 887659083 207776245 274015048 376250649 603245551 985094911 992831687 439079725 904781103 805831808 966568549 411949066 437345640 118951841 432640310 566755489 626011116 92224882 557530655 660262814 695062542 802596218 964745022 914049884 976126512 887272680 914890510 23929592 331306009 21344124 942479423 782754735 852378550 809450293 880858847 473065246 771449404 659718419 840550212 457785911 475896788 182925257 227892222 243355423 865153389 301845118 754924683 227690575 832102245 575998773 821400773 651861114 691930953 520330907 685564099 608101755 996643648 449121784 610354340 442912963 884321779 130931915 820829319 366277540 575324699 575004484 607952150 817811641 858881871 811353953 812593294 339558554 875607438 971313162 993191878 562276913 659578531 996525487 998724753 638249919 983113058 470095500 676166039 977947646 981970381 835029420 914378418 885540464 917846730 755620006 792497901 35969954 655185578 38128756 752167697 206649903 749432199 66128128 689553805 366765776 978376330 82835644 746895304 761500691 913788329 313657318 823920435 552049616 937935765 492176285 738872075 53160902 831756622 413972314 467597430 543457061 769071806 119102290 169479585 74491158 747783381 349629455 972330611 636127367 930700538 382377104 577276953 53074392 837118129 349169883 634498277 234476784 315707115 848946653 917843263 650600479 868684464 597998337 780787003 528429977 887794649 37251350 612560187 237521934 989855626 742532153 942737581 850258157 951699027 8015974 69125563 951408095 952737590 785911028 988623672 840321792 978570597 972793174 979761579 463714394 490560071 155756947 805218859 5196327 535325188 573047245 925060690 162450536 903866136 226912833 846964904 412471838 660715836 845554196 863314057 395286596 577995248 147611457 269635169 514423226 796633361 531999693 556968974 617264036 651371972 961084248 999353920 558690584 867094369 171445258 629313060 253475023 298584613 858392052 968647410 476561337 507671800 652631678 736270303 869527686 962753320 560933390 574315079 153737827 292869322 59444627 506039916 971557530 998921178 150945651 949587182 742356844 901596152 498853819 506954629 718540610 970841937 795859116 834791248 282683750 746870509 594040564 933300828 678809268 731306477 104544780 500625623 768089145 799340364 575552619 610406241 853143471 982314540 885867063 983447146 224969928 361603910 862523342 979139494 652833148 724691048 463547742 865705210 117725513 781054492 730170483 916822763 147166601 629679845 195120471 431403945 761200024 925584323 734660556 758938597 125978860 794274220 628329524 912916247 723240218 764807870 838756950 946940733 259964467 580959321 665376828 984639951 200558879 436854971 444049556 808896385 714964688 793368609 785427347 872290287 399568748 482804944 834254609 930769172 960591669 983419284 295219106 827883658 659664775 942154310 244328725 587116595 706063513 707744365 482165119 515678430 531153501 557299696 160842695 312620911 95796220 530128136 162588978 942498189 141373789 591108316 708069171 962197650 369308246 914916186 140731993 886063383 19206190 402471235 806976162 988860690 333268838 421821891 154177375 951037143 130144497 446823487 878649661 882779155 781361069 985142070 255678834 444873312 652254614 676239985 194503551 813569596 250981159 995580771 979590025 990688588 272260991 350906604 458828196 722635349 708568922 962089742 253363802 964076569 165978930 871892635 764746771 967535619 252706373 401018101 42367715 634559586 582774175 723270820 841898267 845820352 705088380 989072325 762159218 874402678 570941647 821262625 841328022 988039837 219025093 232277257 849463754 971763572 146022562 478192499 958914158 982148222 420237954 958486834 19934535 72694703 242634745 670936347 670272442 986974980 510927966 860987362 657496392 722182269 665661108 962097201 13829008 63467511 876853649 953052041 105273313 752262571 482141612 786463415 210289613 796812838 655169700 711009506 480938139 804723054 400934445 451576867 890208713 985228141 367569388 456865087 143442606 966204260 164145739 364272899 645472053 698522582 162980916 564128855 886630357 945880548 579109734 666320064 81347881 632863600 95643535 587853504 974245679 982326093 40606928 142325330 502118842 690205857 321650049 423860789 350558276 634454884 544582056 761002152 723820980 767467191 202295002 266283673 176592676 401895204 597701390 859670902 640652905 883382551 953943021 982327167 447942436 519126858 937316498 977373250 836944748 952704130 744644487 843086549 868761855 996218627 261355598 635953621 952606783 961506744 507619227 773651913 327007079 828512185 106020534 820721339 414353525 508659837 763605872 775078354 252976892 571471688 903231021 944149792 572822129 608820593 434965132 942785387 986202647 990983800 459684286 879330303 406304514 981517469 393398836 494985086 663662231 946488433 947953517 950881299 451415483 925748748 321305794 901484468 748252110 835011701 440881517 966265020 915903989 965997986 636152207 894505008 867492146 883475932 199333940 720774993 195862960 862100215 155830584 569933760 854842677 933147781 497015321 507203215 27905847 760664278 907806442 930167901 531601679 753824889 733222228 837947574 396194389 842531112 362095998 657036202 918064265 977876011 730891584 778981041 703357199 755556663 477531238 786243557 570860730 957372904 430095840 993867376 581984365 650569893 695643952 963356064 28492939 703125827 397000089 682752192 505720414 945420672 532539337 651851332 943574109 990895104 528683676 925873098 242979284 561658627 326735170 516446191 139965701 307792574 505458377 742755114 188837952 578208005 251608271 277360450 429062726 796265453 174807738 448433876 38349053 444955459 694962202 712143354 565656156 723513364 998273796 998851856 823314317 899323136 614912112 815780111 814269574 836395980 247601818 651008774 442458274 597982074 536391555 915985711 247295982 495878763 532166810 755692888 32854535 832019286 596060087 808444906 464456989 484947607 734560406 883695010 987573083 998509003 768905067 987495187 627789845 830999628 333023298 512125756 2877071 593763189 506701209 950753082 562765967 753666152 192207503 685979466 191476182 813201391 307125615 843272457 710587177 918122408 398123426 482568453 185892606 877578261 102898308 572380346 170276419 893543507 800699831 904316053 912505409 987451673 484963021 988737339 673604477 926533815 304655877 571817138 941025093 945331432 249881739 425427281 856704428 979862611 280197319 920410361 768442783 791419225 393873618 745744172 307963604 350372905 443821420 540379380 44857963 98579813 727817455 845948361 405810276 624744206 78711855 854627030 21829939 233893424 394879188 672083523 549488318 930962283 384825581 470268080 628388405 985065387 277822755 403242876 119904424 391952546 228858535 895953879 768142351 829157886 144712874 266005605 739836952 985487248 862467909 909191152 742196975 749231552 452221497 525372708 98106947 112127528 782619688 787620040 269088560 940855174 755420910 777041293 982822355 983108193 963428601 963972022 643336643 697652244 738065892 941263672 142887814 722086647 39716847 818891796 993882625 994453855 16666321 201936795 691309421 908238609 853250671 869995099 746938508 937002521 695560332 881879990 653881716 701518035 81898380 505232423 316512869 327487507 711844111 738970272 473128093 674790575 579538883 807943365 688660653 755013872 424592535 841307684 795902508 962086454 988938348 990866111 622199358 750369962 594081915 638012823 97660301 990447594 901070698 952894265 741886474 966963376 75046188 345196776 631268930 955656676 65276923 544952974 188439370 206146242 990317535 992267926 705564924 887200518 990497833 996204840 808252642 863635778 554671508 655997149 973359040 983374862 616947824 885287787 939868488 975456340 932275263 982645647 665607448 777236954 474972238 543492575 382119453 936463612 563566598 927245878 281100800 375323136 3130847 726842419 551369120 745666788 504303929 780116869 101470822 951343910 982748774 989509808 424744636 649852545 327577558 771271910 735897435 877664170 215623578 659250379 645016673 650980814 411751169 573695477 280832361 429991567 979581532 998246662 370216283 975243889 818168720 917380240 618141433 683403968 337379917 939586273 56246046 700273604 344762777 360763033 237355503 638348675 708420003 992957776 101930710 919465064 799818603 842672847 986790928 988757230 225864500 455087143 540030131 951527161 798454990 991122542 100877685 155650396 691101560 714267278 547046809 625485070 580127919 938891684 318615188 411502810 846604916 940925460 650880388 858421061 533165055 854542128 553754665 718013320 847927788 873166018 988328556 991239452 359274181 715997334 742538215 822196164 203848640 649276514 361241305 825602416 621035102 818378846 838357174 883845900 759143405 764890931 289368414 747987356 634658154 859729476 583620455 984278113 985117670 990676081 951690334 987276891 125047633 356817108 360862791 884891156 685421605 790470075 228989368 287705743 818751378 820644289 732421503 807633717 192500035 780096681 642174361 847703485 241280582 924074978 535898694 710493311 544029980 955348021 317665966 413302180 706655894 843931896 42400883 736098319 731065080 809281363 28730441 476649659 738298771 965732842 804460832 985412851 468922465 960452963 677959611 923323163 714439359 821013955 235370018 648927071 747092453 958356002 351339140 869913543 656162838 738780076 414937060 502436931 273588419 624500462 237387760 945379784 993215405 995302744 353694662 907491134 756866321 786127517 549534402 751537812 432892723 768579395 982677410 994938154 183403708 697736527 540110408 548001141 408322834 631689138 82349491 884629896 767169467 957369853 19908650 506115897 147959972 497141782 909420074 958400507 459362166 592068068 828287492 869997975 851430454 880341239 598854631 910597064 38503782 901857835 981319748 996168263 30895791 426876029 603930911 820729287 620133039 778985012 895377463 977621336 666784282 913660309 384992159 705341279 653236487 692495218 686088621 841911977 457146495 858449539 814775787 953821028 663098174 861538317 598273881 959258411 633634712 850444845 694119382 949636119 111371001 530996727 883732874 932505846 230686360 925010496 392667974 921952486 627472446 928854207 16179330 668290492 606095261 769286304 253111338 490822060 162567670 865793833 589181539 896941920 698283894 956221999 836588485 869232449 218464747 709592901 119531936 602196191 93567892 523419157 678255118 931815649 425672035 435951490 235070679 631344695 646518503 892247998 837361884 871723654 594434075 747448277 333836575 600037337 216507347 661098153 273204267 573011412 172992492 815429256 920670598 953530424 407262286 754484843 328793148 418781866 401649840 609765455 334702373 418829776 821758341 925961844 210409605 454176707 588307049 698565760 850809582 918866472 666567506 808231605 683589766 736702227 839555922 945132379 977180048 977180889 190650248 445259358 249777819 642651125 952748493 971993241 755893973 942510699 816847931 930448549 730153209 968950790 578730000 732840740 731258059 903270632 519109749 639080685 791707843 879509915 126830751 825464664 165900162 637889101 803087067 804845098 403221029 968731473 682354255 994357455 951830251 951925673 536598405 817076849 6164294 497609319 503009169 976683706 97364354 289952786 157488588 512776032 687279294 860114637 270831188 496797501 135925290 197462670 759488017 955645263 888830669 892734946 339478591 859090981 427738994 943934977 407469647 968679311 784621026 870543842 639887226 996477373 951021523 993215205 187864401 688321498 41709261 834964442 739489577 959989129 684978362 688856724 400582894 650430813 514985389 918915138 468968093 762534583 572379012 822494890 368236495 960693383 878093682 906492838 475749006 843283247 800519903 816479079 639550518 669836728 684252082 687664122 699005266 767115064 844052221 907716033 155219820 830285059 158203997 381949016 244744548 489189350 8191513 998695705 846909109 893655269 298216440 600213943 201182370 463696710 849470068 977164554 503723944 650329810 337525632 483910851 669860819 876176114 83328704 404988821 506627631 991038158 858369613 962696346 946739791 985770371 504860121 942186750 188955074 528229200 288790025 641532973 122848182 992963992 121929462 743288804 353731319 632142967 91525542 790487680 720286948 793765229 308649709 768169260 793044236 993327549 195236646 203856771 264369088 889539116 912241878 988661549 232775130 310967428 738233498 837672055 775563822 909074159 838376614 976261830 436585303 519393531 267889336 512376115 17892703 839911263 509405699 557595046 180331900 485851399 576245325 951032939 667597410 939155204 419546917 979034445 513410379 996761902 119419463 596820024 452928627 524305871 32599776 998877701 654694003 718179934 939742789 997338299 63729007 723300657 965682059 989088361 203069620 582606346 390672471 706366213 138510144 194876083 558494271 875982928 354124475 933753096 114927622 129136562 52631298 937090249 252010388 478911649 331636428 640163498 802419379 996721509 747119923 877160015 48658022 314737829 23981426 520603647 760566119 986535648 718024476 928188350 379539354 677394948 141419073 988250472 127669161 597517272 34184217 326010427 991604237 993833271 677296598 963149815 607747606 724249556 156773700 377037161 884642423 991789658 757061816 896682925 139280602 147372649 508324101 729965838 979832421 995842838 890696935 984619493 879413328 987495672 319869699 892993049 910666146 985837196 313887047 334895707 181639349 982390402 881359815 939730515 67824682 854867349 168219655 613674233 828793725 918324820 35334126 707287869 91089739 662911974 875464401 969123552 159686388 659894007 210278681 807987129 976516685 985528160 800176939 939181384 174105824 331448445 687683145 887835932 79453473 952909724 543249501 547509509 608883218 719168042 714616882 799203211 326478471 398855226 257674636 984200386 964126000 970101800 440136874 463378736 28913861 909851723 374037380 687980238 544772004 601898354 54251745 441312474 160038548 228473374 66798399 683052827 967938163 985523144 798339545 852820250 287120372 556612240 839739800 935315075 91937431 229249712 201653016 459080867 191972277 391675863 589985733 989326026 431833814 637408526 209238675 295964688 1870045 192803040 896028913 968082975 843089130 904710093 159172904 871690723 905027130 999453545 417923132 922009367 750668960 997038108 639419189 672172970 645120411 775689168 151014636 510951741 454118600 942866362 577851464 968883723 261933542 337535694 344674966 875979433 673333177 932923975 894877664 917934859 508673310 786194423 444409961 738736107 227854183 561756773 638364364 640491056 685999406 841249869 410361240 491386379 519032396 805309939 423479574 667955755 473584976 747491524 376521349 519415951 623884362 974526622 937410553 968494649 620653724 727442251 125460351 906294721 149405849 542748895 568807255 881913619 88787210 618648632 846395482 991645360 132359997 398906813 451167879 757793761 543935337 736570819 166851049 407676187 555994668 880732057 323740945 358797857 693712555 855181701 196910258 743241600 676633060 701797699 985390530 998633093 417740584 717661928 277056959 910273363 837973186 942480759 800952823 939497465 206140743 871956391 18569662 184721803 472566026 889704414 524983856 725684604 357692525 653278015 118289397 138451661 759028772 957561944 717521313 913193337 912021827 986915056 791582304 934841391 796738904 972560253 819069758 828036686 262717437 538246802 156950155 290094862 156233444 846702488 691753760 793787005 400179000 628810690 20148580 440983673 36127307 206735256 207261782 415622474 241990641 358913050 302567044 835579187 835685714 923670482 115256192 358014269 252682354 402980207 612919486 717917274 306559518 791467964 500793769 699238301 59080538 986900181 17810416 55682018 69507262 151981390 75915497 956737520 373253059 483613499 503490507 671929855 838880590 972800015 453335265 706375901 381953203 556154378 774438602 847796476 671844682 823051779 257590805 973565570 387447291 473707288 791877791 885757905 591411109 988354116 762575028 821346994 111647209 465918128 574597836 791512807 59927267 210445325 310567969 439828337 506635386 981201915 835813051 990190848 537845397 997827166 177751756 271260066 113492784 295319206 327961326 710666746 567981409 669213824 456035956 627344980 637329586 823485825 862539147 890635198 706130 321559421 854238932 972284725 143561999 690075865 892635847 909150309 566468837 931174871 954106996 993284811 167142853 793021435 824199477 871096597 750957797 763654954 145464604 782110742 565129052 683668064 258137025 550890785 172841762 316354372 455963998 603156075 891992305 932477001 699017833 912283998 130762953 867543922 742300063 929492967 439750088 463020987 885246628 958697682 20210449 106568420 148308560 248241291 416283811 693945255 310764091 935852305 198687238 385534462 42347156 995257743 283579117 500846589 135365598 850557249 395383505 818225484 837778241 989761703 526829451 606340017 702676762 849441487 14663596 681131298 783497997 834413091 352165643 596128520 15001231 840048787 926284220 952378903 163144341 615072215 811179092 880427813 592911674 728403218 490486364 573129300 642930651 908912827 262066978 319892308 240259560 307982102 769214214 892137123 276647349 728155780 379033416 848029102 649159314 651330818 653055143 655714004 436884940 615115902 354558652 498953622 970378403 977665930 935931477 995173018 943123991 962894177 143272657 179611167 717204145 909749046 573012166 993290619 859618504 869468029 921103816 991907497 897306656 904552860 584037741 685541554 423769691 766000649 669922663 720982537 898703965 962463827 568479744 948269972 606186826 856058848 65354571 220675166 662803951 891660370 937454431 993757384 228586746 269106698 581211286 790133978 611677113 799523500 100359924 521394695 756592740 941700544 439831529 915323888 284072727 356581856 912703516 932746856 217527184 773813701 772678197 904564293 75123138 437611587 960966874 979421093 979259524 999871734 305748220 796210073 683612033 947283450 470605099 973870504 377514727 948493046 987629504 994046463 760217043 975463673 412585212 580377556 971889935 999034866 909930584 996281601 152649343 954413245 404509143 952178376 720053198 846009348 977406168 989435214 994406765 998974279 978185700 991087714 202674164 725279116 234622865 569980425 853751194 985356989 833402823 845122537 620154560 851481599 5294404 557269569 816586347 856345454 727151766 923219443 442630935 862794558 370331960 756870764 607547787 824579147 938732593 997154944 5095387 519027907 377393809 435251014 541302237 718693034 580877087 734079248 829675640 985853795 366255419 774013665 12617183 344978320 989207070 989618579 818287859 824622661 601965966 650161472 450893051 736316473 445771213 559262252 992600602 996408493 63284266 565087169 14377657 296864242 424089484 982252503 419088860 803769691 59613638 772963361 71976284 652926771 25844866 204414663 743070856 836600039 23209650 311967586 877933822 883487427 368719275 723165126 58062934 408379727 949469938 979285424 938737015 939982224 687082990 978016893 72634771 168029857 887554549 923046243 777386261 972538698 27341129 482301619 112351593 650292343 929238742 952751253 480594130 510430314 630447503 705451849 587997465 864421192 166062029 808357422 343207722 407576425 113073484 600381135 374811725 581008639 125591655 997308665 312790151 785606726 686156741 863604269 388036989 636918381 799823306 813197033 965147156 984916528 380114143 778425854 686616790 864788958 115347977 811500465 896780191 987335322 160031675 888966561 421841805 582151798 845124387 853138728 830450155 958259285 4163602 615451313 264576085 816374105 343134107 446853721 41686555 400537577 159857225 582203385 180088827 246761669 151231781 546231290 542069618 957556549 780344240 870873794 42076008 214205265 639339349 973759891 315934624 765782729 845446201 982416326 561932463 948561976 302355696 770655012 173656283 674839575 895338605 980767037 75442269 631662616 511562606 996024400 818106113 865017242 990866484 995974391 189690580 825965534 684094244 888574739 331841444 817579283 79957182 337006112 854812670 912844938 464857269 877389657 237544838 238124877 981620786 997739434 790137169 974456485 705584858 956698962 297537861 354156594 393170445 898871985 763643318 899495253 959555645 970563037 506867897 845161852 510297650 829416276 945152530 951152237 520248369 835084151 853301909 892908459 543497645 681165058 612389288 628431135 699233864 981445143 264618440 855351602 76696995 942330870 476714342 852110293 68623548 943453479 842311953 916930727 64158370 331164921 118637926 564196892 79041803 186813427 941084106 983900324 76070569 286491516 700517134 951015006 654651711 855147228 894430371 991416607 106444929 401209303 586675578 603241550 168111774 353793931 72247510 946066748 480241340 919562365 666808967 708594839 807339536 915922061 160916364 470845119 350502684 707456406 103385401 369859014 988629381 989469446 342308051 900698439 649037049 982137218 728882748 900738977 501286373 823177331 153306393 818615205 286683453 411158249 723691400 951953377 894961984 970072757 992913137 994341380 347072597 512018032 857136848 982005509 282415657 290950620 846262506 996980005 167008408 692971471 569619201 759414701 659445895 762930115 918913893 970950682 603306864 712912111 872708305 978150039 629052411 844215897 842761489 861074770 663289775 781303428 329036353 964846834 407598405 761328291 459475728 865493205 50059724 794727797 989607542 993593608 792984563 911509730 156585768 906168635 406997660 424021951 425384169 682821919 967508632 971320069 996217093 999881619 799258289 915609501 771832041 860628316 618810430 712455936 246834024 271403646 565147758 722293788 429502403 772387841 880903126 967919535 517885913 925362110 259992388 268625159 34547654 724960148 678371927 900289075 159206726 240779358 476472591 942984392 313980182 923412428 485597142 986174484 367537485 960445186 585311903 832314065 271531208 514788358 811956956 940914413 160067253 866958139 506493345 694560980 326044032 827950893 404799280 627337974 314633483 673465560 196299960 550652020 292046322 740090109 271688933 335983003 795128437 971654643 455284303 737097065 80538370 619863368 903600128 967119724 952354157 970042466 345232290 964176211 894389690 967254740 265292219 847242332 640183626 644461972 401778174 726100594 656631283 974527067 56646828 995695087 845959249 910728449 443685701 591629485 580393366 724841848 618530290 872032349 971018868 978895954 756747174 867680771 300343197 330291306 418893841 456780682 430849910 708854308 684910575 882142060 903103344 913624333 388834694 835006253 451055324 604826521 667775649 694052525 526502548 979362484 861464698 868156654 47840148 83878315 259189592 814815640 659999146 926617331 301867605 602049450 188795470 409226433 956790772 988970931 846102325 918376262 48856363 377187168 166986106 426005635 436507694 497088210 292916621 429178066 216785079 633063782 861461031 976019204 91113577 199250108 406284905 644326563 452872722 558442834 127843574 927820592 633621727 983698615 420699770 533491495 81424546 961616562 216191072 602853770 24248802 375634265 472833948 771967075 382218987 478557018 145318023 236912881 173583642 456690248 562372065 963067893 720738428 770618724 716995426 844643176 540398812 858491396 184482193 991316630 388116724 916844071 40206121 285945360 560989863 732501858 894868895 933700869 147147058 185804476 814600700 882675979 893158093 906404655 618577622 860911290 161082386 396369197 226095805 244845961 466087428 816894110 113133233 184756653 370627164 561829891 192120243 258978433 563673947 962539234 783673118 784127851 683054116 845303743 25389098 30199877 316345475 499727694 591670098 921956872 413535557 659562432 103215656 700627220 513420212 740998008 48692026 918980420 528705185 752962053 7746822 843931643 114646194 932941473 316877039 641921409 807453397 980501250 709400414 903205077 613627234 717673489 654346249 990419073 467443880 858585386 458156406 870869004 948371496 974320149 489716133 926664392 692078535 815739993 418865678 968128311 400162842 571290256 464380549 991315853 954972013 966895480 649156223 757040927 589062682 642070362 887629519 922495142 558000622 883878516 528466042 667588237 853575447 890031908 141034403 781261503 722439098 928726637 966270152 989734914 823439977 906392846 668292539 706894426 498501075 711243636 211749943 559593868 474736026 901048901 754306611 756354217 899423223 956710921 238858740 702556027 626207086 755857333 275339264 979288984 216378003 599405651 422901367 534773572 97658183 965221549 532866638 980491209 265649116 626536240 720897111 755251445 678706248 767232340 429963215 614544685 50314429 61526048 432761103 745921794 915028372 983662708 568001294 981374348 396355009 810253834 953047881 978367750 769905297 801741312 845768442 975386314 179351429 414138523 665637609 883790711 20297662 570577034 348065978 544215789 634155941 818520181 758139053 998650512 553941789 723625504 235736781 492002570 838072348 882724795 551042674 893877329 861253876 990752310 225083059 351805459 164541193 223809726 808860829 892536159 898234972 903959653 880320764 913799090 901274491 919286193 470019078 645848305 436208366 792899428 914874280 926857625 740996360 968010348 83464435 519574790 553477996 900573414 106065813 491419603 159194465 675655064 698747454 811332464 2154048 897267112 112817598 482168573 502592841 882267539 804678046 838357993 581490214 910036930 79774391 730598036 611759995 896070916 988182407 991614633 656048570 942695921 907044540 984673866 568036997 824917858 969596655 983339139 111933947 629678558 977421585 992311397 430460297 603630195 667311405 722152958 94496795 374416235 100067858 626354049 785801387 806189600 270622177 571442199 93858250 974038202 879726153 914028435 283801059 552516220 567182361 868411353 8188035 282380914 119784287 196964662 363452810 739936617 332103810 638311502 400429075 827564975 544372394 931910306 557687344 564400013 182892819 981777027 958580967 960758201 369237224 401474804 882712137 986902406 152336439 457927677 639762705 874341263 653189186 925778836 278308466 481919227 597315480 631080999 470633183 712471423 875877549 993171196 409932378 713344199 696841402 716766076 694181019 992652450 478988997 635029514 130732145 370084233 421045835 908547626 103519306 829014675 285710275 872585903 243778107 363037997 503478568 646976248 290371080 676095777 665724776 698811695 613619555 810168145 963995376 967080018 736183426 778101971 605306267 650150286 441038711 546362868 622066996 827340568 230732768 883218537 229209763 340867385 675642553 827607717 29237382 101270014 626072055 994663659 622831499 716012405 79596196 551922313 796841170 867226765 936998175 977396535 88459366 542721304 895342651 955381528 987993800 996798830 528447230 686215858 644518819 920128686 187868012 728526951 772167799 947390871 423317041 492285527 143966076 725725679 18680621 907977116 30414641 300730129 749768774 969348933 554555205 994540903 789650065 794271872 522023217 789704144 5031564 680324651 48035536 690277263 261759803 302099652 34456370 866617534 15238782 803170667 851778415 910086345 638416201 960182482 599066765 621319705 460339817 610821962 248212069 460588432 770491756 928476912 151035842 551984232 498527823 796233086 244431 227540654 970387479 992520149 297750636 521576882 129321402 476305777 532926848 772300581 594376019 618922123 738128243 981452608 85563606 356656092 177011724 872904887 675140860 955139028 470539504 640750767 848046626 874694945 390382699 820597634 466206120 561871264 119707652 292974632 420729510 929359617 465413609 586425544 248580072 687861198 155286851 870443786 457315392 563209706 109896785 263414089 509711417 885774059 376748190 383058883 652116212 788393538 269667590 636623062 151060673 819476603 968417997 970438388 683386666 708735129 714346256 791069217 380535606 969389718 513561014 958333428 343264099 978457532 627923104 771585449 293281583 978313603 967001136 991124080 85345201 892828597 286818690 364604557 216707217 780873884 455892606 607954063 877013841 935838828 356056143 641899229 681566976 916025705 743550856 884403154 728910079 863011096 695491685 983773456 92531969 129147796 119321087 510325185 487896926 724335182 294293292 433639564 378217881 845719611 861632013 967000788 381190908 585748025 892713253 981837063 399209187 990735296 261705802 803668490 111524344 322788430 679926311 998998824 43697868 165969956 888715119 982864158 564559097 946440477 643649182 707450032 441048492 716184439 294247239 498624666 172757080 391491081 653891124 826456503 166926775 346035132 854583367 891391519 405589811 430802073 134667816 977613576 416877109 739386146 185016177 414769095 453210769 470430830 351197219 429751084 308521068 455754328 408264522 706752358 541120977 829700180 160377374 368095628 528888907 734932487 157560094 766397905 241734500 867039403 568334372 855608844 14522943 18806397 251299423 984648957 237245347 547251144 88611268 654301598 20436735 642952011 26171492 450703416 773461134 816672969 916160774 918800775 752656603 953162817 404965773 814021044 65178752 585256405 340187966 814424637 268629406 789773836 741524327 745691186 657765717 737453943 452756454 573895018 302333010 439554500 232011923 702485439 137701193 898306354 502686419 985524088 903021028 932114966 273133787 575897441 674825825 970960018 592075973 929643910 420752709 950578828 623583587 989885972 153878198 811666149 284363288 706725296 8179384 908383498 73481387 780736242 515940667 977995145 964023059 983979407 941149471 956692976 799888677 805041656 379358084 796161030 819039385 851534057 246288505 249490216 240437151 655854960 984598869 996214914 423142200 475947101 607063589 732383073 575368593 607622413 207492671 241926648 368160359 605361476 70012561 932634093 970382131 984697729 458531301 519486659 224542478 593630622 278779033 626328200 266820691 308106926 609443579 642082995 395874973 786026061 533291686 886731604 991914973 992032917 646863879 658855535 549515489 584196236 518380047 602150169 396806363 861074795 979904250 999504024 8031517 10300352 937926878 953261720 566114023 716243905 149303543 394269422 766332101 861611259 438968453 609367794 19567520 240188307 446518123 939874167 675619552 771537334 100548889 557479428 631844598 865434463 480924680 981052767 916569644 955158825 955422752 972261804 881520691 898931892 563589327 607867240 253361698 620133132 285164561 861516887 466161799 937626253 54876909 163449900 182947922 297926909 401393582 804155409 192648951 253359604 972100696 978159189 653883923 815239205 51202134 225372016 831528596 968749508 442567380 959304802 948437062 953971559 878045999 968320980 813312680 816857658 718263199 927568219 287610 289825764 103868120 694407447 819632868 981870435 177700390 932216629 437032410 936155340 613435762 868324793 345967543 782147035 949400756 960314860 242407778 837228761 288494437 702371009 137599109 639553999 36814576 175591248 936207383 945893220 715871401 998217558 576737457 790610348 328695059 831645289 778525680 896902100 311879263 770576848 316297585 607760117 333441075 643843646 78251869 843811628 549709629 558907690 942681878 963008826 297021274 397416072 827255087 907700826 971637516 993006632 127689900 186322322 931238951 969941280 92647237 379969688 607608253 992342068 411960693 688772877 414951223 950685434 671434538 905323664 324510506 760314490 295338550 867988801 38706870 512194550 41184116 343416892 894926993 896449900 142952223 224247187 811287362 961007430 434875781 671425965 527837756 591647316 339001035 967368987 337159998 365264794 304344152 431632356 294019686 317468402 509141328 634708597 132618554 810955211 733913901 753185036 355405401 686261987 690868126 770775400 952553704 994095882 816055131 854947319 382030866 504274980 121259965 906882022 779886555 812407421 743683025 754524535 856619159 883102884 472003206 793790108 43344261 479127447 246139328 329945454 383264005 951303601 990961941 995678499 595292949 718515252 411520504 687678332 10896234 135648940 452781838 706023602 722409599 828407571 569158258 914758653 650335952 657711356 226767382 299023941 642031742 931456020 65150003 472921159 117548780 519443674 472809027 901046064 953910773 990744625 686390230 946786457 271451616 621385829 209775912 614446311 350964088 650367389 907063419 920750542 936247132 982837798 849721286 969996040 322717082 408804571 97005931 647171057 993228010 996903406 374686579 872818122 756403354 899725481 940247292 967938322 190520233 752354616 22264537 220991046 822052352 980906756 184513170 656734543 397199433 862289750 299403528 527178874 991868780 993732680 138474481 170718542 776867973 942568158 261067078 594071283 8962898 336464073 58925280 698910043 726137296 897201424 822129183 995269649 851597251 858309611 251319735 826528569 185391055 558319425 514604466 620787414 260744011 646015431 14797448 697967487 956917369 990872350 601648902 821080445 154303030 375191744 259694615 281464734 26880072 658737703 889721528 998104634 472973166 715450950 250588417 870761276 544503420 932384397 364552563 533359474 161863155 399693987 164794638 346837918 240105316 899959184 780268623 850686487 797370608 987241846 176021513 655919607 974925386 977146989 807767385 886727406 617622108 799367491 926707302 973315301 229299987 894598669 660778889 665666374 85413743 829934742 715685238 941772603 563542493 796732317 741042150 957704151 144634092 327977456 680301060 808065917 634499735 700966831 52682789 654136826 484508712 879359470 210473306 315438367 66021013 722186151 165391444 176598345 714645559 871544713 390227444 813558558 934913778 988326593 239968595 361570152 556881120 654654096 724343404 944768456 383733579 931558475 818753594 935586207 295203792 904486611 634443645 685647055 408709298 954036259 665115803 925120557 235993960 960852382 825091521 997552934 323995274 936554674 143549436 968531729 283616679 784244314 795170022 869629850 690939287 853567843 170445678 997439279 717343598 739026615 784965971 851632662 129362556 727277172 703490913 942099554 429517806 970029880 692110620 934898020 505041743 613053070 141081204 159045925 194821741 288369899 716488304 992508228 525867266 873204795 690194348 924007968 532660541 603851271 580596653 765917817 312970842 469639241 872418205 955393860 291332346 983909659 830946837 901725089 330919833 962608884 922785684 953329906 873907450 898010858 178806862 599802722 698141186 704013821 597334886 901863058 402654792 508734483 394733894 606357768 241216986 770977605 632420351 636297777 682361064 790522800 726083167 953320947 214759422 597681095 476575358 664272615 511760380 679635174 499996453 776651360 451570649 980461200 864264441 882290589 314285682 671020510 301658229 556744961 573513235 734097623 819134500 927979943 271814570 841793100 698778226 781728983 454755383 894589446 610405230 749397073 537233769 843988567 286781216 545010008 802877856 909245375 182964817 963191232 898874805 958472829 698368506 832679307 492530303 855067568 150995291 544961826 93727689 662399005 234482934 525138862 40843326 138575175 175833685 192668504 762875872 805928303 990605024 996666698 912823719 974804163 315438217 393459821 249676094 265183980 770194282 789182712 840972503 901679573 945149136 996540089 468208951 555893453 315536212 988182817 510299962 568842795 805286833 861979108 159818775 356271096 311397491 345086256 562614936 744328541 283165391 533099207 180002966 844393779 931272313 986140664 747887736 828486190 767728271 912046640 589025949 765980423 392669218 517070183 137530859 365485912 107343462 872006254 259738396 360001199 926366812 960524650 518083873 702089563 148052694 483137819 139871944 880124141 262506951 704589520 949401683 950884494 982915214 999518663 8165446 957611685 828542937 851822731 603192845 930962308 974779585 995446017 650090816 989797906 730895018 855698425 672234769 723252718 421598841 969199612 285862186 457312186 487591789 653577166 461670682 487334336 489618026 682980829 451650513 974991930 720766809 920053241 393737514 737088721 437393972 743468447 247550183 600682977 179705271 450381901 815959999 996225570 482049820 567012507 357936429 499948868 384481928 645530223 471716479 471777693 822716525 984870354 315256135 823845318 239083963 530720691 619636425 948925106 694588073 989053099 683043084 887113711 551107512 856689552 224917156 524428619 717903784 789059279 964458810 999134525 153050420 665681838 732122317 957194419 577975356 956305561 682586759 923615019 201203851 453247199 229772523 667551339 283939385 686236285 447198090 625650963 578547063 756473374 958900160 969571146 910372100 991458293 190499822 541474809 407955648 629798378 684741351 754110938 303892639 572254903 939330098 949872335 611350621 792633108 5501116 528480293 154587409 375424995 972283644 979782062 104853525 264933505 949262376 996648652 751921271 844016764 615062764 803224535 848010998 965222859 707601445 715738793 952730943 987720392 271993020 890298910 763871704 880131531 912911618 973528748 683562669 990344914 526191494 753016332 135910352 318032888 878085053 968486379 425767313 750837121 742830428 932206477 63671860 501208092 713589044 888700307 948465992 969322938 951119158 982861205 21379192 703501531 891270069 914506089 414943903 676620203 27548980 681262314 584577301 722290923 541356305 601491279 711750459 941272537 562227698 906342742 527633348 838812004 727106760 851584846 386852328 877316692 835345205 948382006 898920429 906014145 42554178 811215003 33518129 435997838 133302253 429516127 396940132 427941170 867476207 973039797 763588457 924222672 952512329 997564529 198841298 734169907 611827038 750882532 275536467 419581892 285155104 818866448 195589690 996355117 781116765 783848558 611493421 663018071 531277079 624528832 35692941 56893054 667950474 956280707 99907013 766872890 84510536 221695788 336444885 945448690 515050333 700538517 356457525 385882843 347173169 475894725 36410438 235061337 355642811 373633117 44640340 457209319 166794413 598881191 736743163 929195968 118873224 223141192 68668232 563949442 200116749 206316726 581947917 922016811 152796714 510444589 852605760 932085295 836011659 980035901 165313635 358518218 838828374 902256771 878865586 880738532 139229920 597623997 802801367 822813361 212888495 225893323 61321261 883424502 135976092 886518458 533386684 863327159 962264015 981719949 319841673 477022948 574699887 782215173 191348492 911104362 633950625 831256423 101690914 278098913 79646577 412198334 439300494 467693798 786603075 845093856 447157280 692403856 534263777 804967410 561546865 647754060 585903042 831735211 9207883 331670880 123140846 153143863 778654135 952706409 262828252 377124101 485155878 726614554 192722001 459991569 929661992 966166593 513815546 611819221 451383014 993646523 758878550 954564189 610186708 898082884 609206026 799712733 856319767 913077272 899029249 930869871 772366651 815786218 69751787 624214815 68706464 172107982 487027652 587360459 301630466 887636362 890560081 996599507 890168292 899621174 622614897 724943700 319386797 478903216 696019290 936329134 610780727 845909123 301915539 374391421 156028492 764238911 820603478 862766524 355489079 368398636 408147649 826730091 170871687 983791762 873301634 881232139 435696909 673202867 827617517 984946977 307525303 786838277 901617828 955434038 147998838 596381538 537300649 673483585 58938501 591144800 821079770 953600599 964414296 978036714 531937202 665970363 829926192 952154899 581766764 998824567 612976983 685817841 994072515 997339232 583124333 956681679 627183581 905261960 446643562 964473290 353069977 685217955 781449328 890123980 163198759 556731327 768061129 813495620 706953265 834962085 399326691 984282240 946600185 974954640 588913517 848701153 666354435 852248026 482540111 637574566 211184828 911933970 21999749 609035780 149456478 728206018 935952541 975791703 276390460 393948370 429781041 663046621 863366404 949417025 775369043 868139602 829417670 927011189 273514036 630299376 754148707 890877766 350633695 382194050 86931630 482699063 994358764 994826541 605966098 771866122 24098989 822762421 643390775 956614820 555601692 569581062 946607914 997703810 312660775 786108800 212809777 595819905 476282367 590065003 946214757 992870042 861948272 908204924 251098399 382751677 455276161 525500065 7420971 13330523 365528604 960352632 832280176 868206628 101428123 183050425 564381245 806549415 739527342 800420870 841961818 967860512 425980040 543962151 787887971 911490828 978964619 996007497 438378572 949889515 78321490 969614130 336878262 624278668 713819221 791671521 406875964 948741568 547953765 837836107 92378447 607468272 435355580 467175209 977150200 998217537 98401693 582275479 53219972 54436473 11459980 375814819 455814295 477646722 577327328 621495932 884195101 985794043 462002622 776407267 539627537 761681792 23661101 52779122 647413043 746915923 456689384 566958191 432186082 610923833 156717232 349280641 997293365 999602254 534044040 617467317 498693731 798629018 477220113 944353014 495668035 786236072 328385839 499891132 457747569 563198912 574360744 654426161 196462829 350208346 134907115 817980688 231851420 618130656 979164554 991745439 832964276 847886325 487313338 720790551 371027967 689692697 528694404 875364702 713603184 900518426 837625608 922497879 575833392 690259499 675606335 688696431 259291264 537911536 190140030 898678918 845869372 932946769 877837954 952688112 485637399 943108926 870066836 879284136 565523147 693081220 102912561 237994371 345226779 520007469 96479617 673708252 592130286 813597065 759731883 897875758 740708866 757049157 879468195 988500525 539242148 667991583 866138015 990577333 483019239 869291239 513383835 832950130 783262683 827814464 61998991 915188881 982981457 986171303 617817619 686558612 693525428 727410371 180189512 764886533 54140977 564509799 154180908 449051555 958755480 975066737 154314417 950215653 348309682 884158480 6145482 726850158 672775843 900586453 926877185 965638437 464372033 633033869 554037423 735126577 234772346 921617694 341669625 639096894 661308377 882442004 612439400 694672449 251546994 272520464 68021440 170416011 793466811 821480209 757797392 938333947 202172230 653075965 172568669 681017910 617861981 635411597 483141191 748940061 145563067 915412723 284514471 639325368 453274928 749091557 152080235 819462781 520633030 978810966 733825250 835413065 501436922 801932981 778093616 914385385 204224202 708595179 480779735 530782433 556030296 681464064 788726361 876854454 928038335 996019509 338277398 747095051 862716093 925170637 881495662 995731570 533908500 959133952 693875340 807821046 681740485 743465326 698396450 865037546 274202227 856822730 406222672 417615086 300467935 635586198 247759068 842577782 359760202 669760860 215792166 490512849 560870360 589569547 601997787 951258801 387162781 488576470 693579464 831158104 682732055 908574176 905152960 936826016 291052251 912833878 920090980 984165585 459145888 916204986 915616861 937644955 891647728 967257206 688432626 760055345 25615461 754509226 887213355 907098494 74519020 304572489 278501560 606108365 760919775 857913349 907575575 942280459 74121831 369300982 936517241 976766318 870347606 957359403 996013704 996348648 482181319 579896887 974101331 995432716 521363372 685528036 512332458 578595998 43744553 357551578 716633911 912022915 736479891 930773816 187704518 438396508 270931249 303172438 741480433 976744195 599987917 864596090 543821940 955207569 611359164 830099005 323136027 538085291 734146961 936947312 892040495 918060039 725508029 820305029 958255031 998176854 664024187 810179674 804099781 890164191 192782827 288244914 186186616 971213991 689273837 717271085 602933306 918613834 883421213 948572038 356493395 862900414 744403284 829524758 85201358 132121837 580774648 757706396 495391359 935575375 596890636 922377278 475826185 836275436 182029917 338168987 391018534 766673421 615995706 637867349 367970158 941580582 773207545 891023972 753848211 780440789 316142220 474066982 90519964 124208515 458252262 929918608 282710540 502597497 945339091 977885161 290380097 976143456 833772080 857173156 632467240 928497248 796194423 890421114 80017240 528819438 237184739 485412437 726508934 999609842 687041835 740921966 856204857 924546915 820403174 954233900 154414306 974237159 149144255 480389231 273368719 790278073 989291159 999154466 643295301 709002749 188759934 403548103 948026427 948496999 629530976 867310368 501323670 923871005 169344181 447510027 906408781 946755351 642082957 947784358 794976567 900081422 507158085 970916918 8226660 107949873 509895453 814888522 442390199 477495397 368987841 723389680 795421023 901012742 746805910 974276464 392644814 859714340 713329049 794129356 24322825 560719335 311955555 369387824 801861729 884426784 748385437 849346315 113938057 944694502 356250131 576360146 332690112 886914954 225468177 523975031 71376325 207285741 878026461 904931351 792227187 974041671 955350960 978886800 569262351 810374420 878310413 913010481 333167353 599454583 313900397 689883509 611276331 687941758 996519483 996809072 711975002 875814050 318080478 832637000 629852965 699467324 672991030 914748597 646032514 913781468 402035873 419083986 595533084 947690443 670375657 993881857 288010626 537365289 362270662 999915612 67465789 987483724 841815744 927219761 755620432 930535513 715916342 762364071 398647735 895270106 257050875 819015588 262236684 456407574 881434855 900145190 172861138 404453538 656253843 921567553 109271370 884661194 994551327 996007237 915221517 973348100 630335716 680206571 796773086 879752310 393680321 509582794 342538080 413368843 866675664 879878755 833653177 976487975 917157368 932418373 870330964 933341082 702090459 760253315 578894428 925367667 605945775 712059161 439799162 872160297 959697293 979618542 887867151 982132763 327076920 661195032 617436733 935020732 992845364 998326640 698222517 858068182 681335151 829099984 987114629 991085197 603731963 684977242 195664974 789487929 94401325 632633011 422251449 467207300 396376905 859720226 168886041 621807569 508677496 608944555 40341243 108269662 399155833 811587278 452847098 520497000 492283098 888960752 953361710 991731213 609222798 741401131 628289296 687289246 178244450 531100941 995115650 999569965 515943146 906319152 494415195 943893848 849662848 899098878 194896779 844129818 440614357 484056834 600460418 842540002 292154446 542337072 518616799 903471947 386164485 985444115 638852665 891521905 542625497 989574288 74112108 413966670 502684266 842164195 978718601 990269815 390947180 411506474 561868774 875603035 470574882 531052900 521975198 614709367 53524660 641831930 779537331 873549638 20309237 966799428 839270822 881664725 839278688 931942223 865493947 885099585 736010476 794654609 182273323 874449038 145763580 975085760 767648792 826402192 421452835 818437681 764802929 942814187 497111269 733067900 159417701 983826553 741997497 873234247 236641964 701424873 128475563 400708210 590780181 667351743 982461437 990372242 561699863 781367261 154475035 417189592 594472878 937600193 157679400 509790403 249369624 722403402 945671841 980403773 709173659 839000599 711925498 730353676 562207515 867747677 77880197 267113666 472334812 928182369 798941959 825763272 491887224 728460078 482737819 584443068 885662859 952561709 460843181 594446970 461141400 600620969 149619100 228943671 204376253 236581335 880825804 986445143 903025101 932641618 867588526 893262185 358156276 747732425 435791902 970289140 236086531 955854539 51134074 642781421 755023093 832354456 815580761 816156911 367130650 370312869 494381696 998400729 284497813 658113317 124829738 717163082 790536312 911279975 381496846 870363058 45979165 270039012 604984861 839122823 239079923 959634914 225987940 964298410 46145570 205732625 198373072 442743414 667239561 859234678 182555880 182623945 673627339 812968741 983889937 986523900 801587463 888919072 579409433 757722513 847065792 896297883 115633308 395939428 977006164 995977688 507652264 613434482 63994026 950982753 312030654 535230183 422301503 913800756 409509907 617164764 177658068 854281244 173335116 708702944 626244651 698927873 192567918 343220807 842415431 865330542 733258898 837369584 959950083 991583133 199400613 542193999 769134865 872961101 604351523 926829245 189720703 311568325 747292459 835471970 186674324 954783178 353623857 599711607 974267143 994190478 920387117 965176504 753179755 833805767 20521801 814349984 968913362 982455042 709459865 982359014 339904439 641110352 540926658 580957384 313430205 358999440 952944917 954937805 659226703 827448962 106168163 990174295 336666946 544660062 312867414 527309226 111804462 944365257 477462420 825852765 602403459 755264637 509896454 878696985 169415522 881001430 907774946 993909360 195941204 615570054 823273606 969836990 400803056 508071202 846773526 945189293 966651707 986185851 153551524 738222259 258042607 833555115 544709003 790286289 541945817 942192478 342817765 909000979 775774269 876530683 111441796 195727561 76921260 223865303 358900299 884141226 292270561 876121500 721528553 890474961 959514339 972433691 635497194 836961481 151361866 891655288 736320204 842446160 390916418 784409833 543459361 972776217 696229240 867771746 167651150 183442189 337534068 345576582 542092530 652546211 303249287 990429612 709258342 864709696 470652909 478256367 720758576 740138783 968205092 975683799 206534713 579832404 631934793 850144104 114202838 626790574 668696579 726179592 845685180 946017645 522777182 763743077 808974022 824275591 753076719 863239619 615812042 861356738 800265373 899824949 198257893 560512014 959934442 967884007 975267193 990825243 54927938 389109496 335279462 933751105 633967211 867471520 332442604 417472050 333203260 788462479 670188395 887283951 306610078 695359224 366231525 947229733 735346842 814505142 714061047 945699295 229559487 650290153 535033875 652156209 825379810 836959576 156829572 826909250 805081806 937839954 282574949 356239801 460693488 983954164 892271627 931659477 497746142 786079598 35057364 234314475 715599584 749787358 283475234 969639713 357111936 971210559 771625333 848467054 998846898 999278221 753648727 946888670 696832955 853220474 499497957 720864985 649275275 948539367 987546638 999548133 778862908 918562249 711674280 797586622 901536587 949712419 519455090 774157817 183358062 405994040 982409901 990411181 585280490 600468399 331175073 668515670 513151953 920864751 837254703 976621560 657087738 977432353 671551607 990172680 336193724 714985828 499126857 741481718 12380571 443138901 576400253 755447492 774431584 984729670 154813498 985643770 417605344 676194747 156034443 314342832 774512649 816596447 767423695 918527384 962056516 989574411 945805420 997580805 982111423 995083977 722864284 809447595 489562203 727306428 310434016 673033694 666364605 887880753 945433331 994310727 403304986 431278852 874522445 996146014 234512120 481645479 873437321 890403903 971854393 988590110 468767109 855372879 27223098 987312271 911673210 998778554 179420502 861732949 960445665 967404912 980732383 994269061 541146932 569137092 632658832 714844202 244510093 815884901 591047097 685107498 507642862 979273807 878206644 983642249 556282708 672613501 363776638 823437033 113706714 725050093 49418257 566174818 731796836 786421417 158800494 692297475 658755899 959166692 3142734 741554689 841889738 867284910 500902514 593294297 442099969 530809016 439205280 688634199 308343884 945889831 98236822 779021143 503310505 911797955 37042852 881990718 803843045 915348567 287954604 914048835 641594555 673452977 153414449 903257797 54165732 745156538 609780997 848321726 517243139 521932281 567944756 999804872 110040073 652396719 724978055 737839336 16324949 852219636 313690314 698901234 929209456 931925692 480466605 802576468 907638074 989119090 202153792 405014529 421562864 536559325 321203076 526559170 674947547 867266860 684346465 936177756 105999224 726541810 580847491 617186722 432590978 988586028 407245790 603587318 403382123 529597437 374748638 639808021 593552164 949799183 260940067 685012372 109685702 654562711 822089221 975942138 132032846 909185839 798325535 920553750 554327839 611682396 830000208 989518227 461370823 482365326 740336797 879420722 767147631 936622485 575345195 951070196 359344315 836976192 293037000 744285853 159292106 488937091 684387985 896672112 527342881 968748827 221027895 694272729 158067656 953269161 550804289 960202757 936479052 987231985 264506774 865279904 242498616 599674961 761941134 888414833 289152662 471341743 253746542 691239120 172167433 624187202 336066567 772852017 615008827 802318800 576151490 904443304 730343972 780536933 593776362 910845570 452332258 507817560 587250509 872979888 821031683 913459622 648524797 724477561 363662936 690464954 256495309 961883386 429621903 617753334 393691425 731335192 443730224 718940487 164638058 348006715 986803081 996157133 18842706 741015366 147177819 807635094 712970775 857630281 425644181 881786498 839153053 893472332 685761810 782402484 736981078 811164114 983592414 984848730 339607663 485646876 590208111 752109188 237355582 591522512 1062849 649885002 891309406 979886237 459501631 483730508 558297520 921483201 607285651 711085736 576934936 841214176 887869020 905296547 833960033 997586972 710285853 990009438 645309119 910150066 736613164 841798124 95810306 187140576 882847759 945604234 657063640 809824053 981345889 994841710 10583746 477427162 342289190 868649637 653718160 922244448 329377011 524539208 453483064 507224750 431386476 775370151 472427907 857948395 948041902 953409409 712610055 764364712 367915081 676241979 232960206 542461497 465712615 924345062 52104963 303476123 543809984 610614765 602325930 669063268 650302781 839334710 637718412 690668485 215149515 793238139 193733498 707762283 988367681 996734679 470448993 968810976 242556884 660706603 259631953 801999432 410731381 413039362 761441800 847192267 948584201 954782285 800327703 992722234 285976345 523386097 817584246 866401479 301317204 557472822 344528514 908275373 579083720 774428754 355977735 949849688 598370123 718120827 651815823 954501703 604937696 841469960 915075548 999306927 425386455 761183720 435179766 631911417 862509731 983370272 469579573 488364384 776431520 985962674 681048577 842028329 235938822 958279031 928118430 947729321 272853791 732857208 898668285 987273999 567805282 846323956 60392798 404129921 239957333 471405699 180665096 446465190 392960285 745856138 698434162 949557562 621526570 816422786 854095092 932576730 262984829 404115019 462163954 947890864 302436673 421508301 983705929 999139165 238904125 982581612 195456722 388355525 268400200 327525193 170443601 850230894 699007493 957682629 268734892 560724201 418957687 837975929 884591420 950641043 529285396 927174233 664366928 814631907 508746472 703238072 473677144 734210402 663153829 674108175 425787482 624262245 599429896 777701100 954462574 979400927 582072474 833702690 160483076 837307512 601685662 917425576 685316215 724040321 339376307 531686032 893428407 925599950 763763834 797230408 88695663 886974790 621284782 891994398 628179243 980743102 715158465 909797591 10980271 422972059 768116443 884562478 295024310 918384073 616866738 965993547 376335240 585260458 784339990 813505039 567021807 871876232 160261204 606147324 993956262 996737900 184181020 508596988 842217892 882621834 975642787 988441352 878588403 942054616 426098883 482843210 61523067 799515132 611789075 839274469 493688846 881090729 329812099 497580589 751443841 843288753 65937724 463539955 185732790 750207657 376895322 419881419 626307993 914468768 941859244 990159307 699591326 730081150 469035513 697698159 864662322 932051772 33291945 283756888 736177668 867549457 271995071 901009361 965576655 975038936 558628311 586080808 974105017 976088443 869527430 912730012 919020950 968734026 398508159 786072706 991768634 999457330 335439258 741559461 597024838 729248983 634224375 986980305 15376399 16009805 22194770 97513759 613187109 908213770 51192854 81324029 169691106 649817447 246809487 833982880 226902765 897111855 110826618 579381301 496497452 807668277 967207683 991522555 8214295 847055364 879497212 984960315 100290239 407314341 276030935 413017574 496460280 890709595 633427890 853733424 834175468 878001118 618314484 801756145 841134604 934563558 378192170 451724105 518852143 604957828 918629391 923296521 710441714 888011083 257615558 457176081 787200479 923704807 789531554 815988416 2780678 316427586 136512830 733886847 243813787 767510548 34369358 539544226 773343192 874530242 509611912 652533172 7639385 326255906 417983557 890894492 811022153 964092165 254208896 585013220 752278786 968208022 786860985 793255349 689027567 916438959 720865968 791775242 22397839 270584184 105364490 223174345 468127848 742254350 402068918 896613805 176990166 416175319 704166399 905411607 428621668 507380621 617247222 796771685 599392567 892278052 945968545 979223211 301812567 442708878 846528025 863706075 231461070 539113171 943762003 967939615 843320649 891144358 823952413 861939380 133710577 219275171 176216654 984339611 862726880 965647785 724585679 763568348 675508102 928593999 796203360 861096949 589804386 799708342 797552280 990869570 437324447 511145096 359074547 457161237 360882629 963536938 672675485 679259417 413051522 864966644 206283392 778946700 854203944 861106144 807880138 856985739 126972242 154035288 954017503 971302704 235075705 442976082 59604327 553518501 748262691 825427171 848920022 898849643 893116067 908197065 564350887 919205613 176731233 724849697 565480534 660936790 468142125 546770848 477390570 919686966 711641488 743238948 458249387 914363171 172414553 985262924 642122773 877416459 200929512 410365402 783786861 876214142 842036088 878144947 766946364 938093725 262749401 846522453 207390135 694847122 169222088 990799996 614051932 706834475 2609622 560846195 345324331 363924744 129685179 591282847 853751569 999483022 369716693 787031291 578576958 970042263 201002696 308339410 881930001 895039030 936390031 980961043 479521568 830639328 292846794 840813223 605793546 964757283 181676607 549846644 408984594 959220240 88074500 860615845 39193862 150017878 996360726 996511684 63583465 108776720 15641574 948499414 308648782 536979307 529051231 532734015 109042600 946575303 449968217 931647452 79865029 805681306 440034611 969638491 324431754 332151109 821100989 886385164 565810 954473750 431727005 880439471 18057432 27884231 404745808 494926124 477928488 730025056 592182942 814695575 436554351 551835799 802854837 822526780 831249967 870155328 604839195 799566973 409151592 423898736 280432749 870447101 585075631 799160241 279484854 709525927 433532439 552483500 609825954 771493772 191494373 633115315 25243854 794814956 712836868 720482756 668267744 891664285 940888988 995935845 379023518 547020373 820316841 964567752 489012591 607587855 420334508 618470273 366022087 978170209 922365795 939723932 578438481 927315213 702985767 988868118 271807865 734803035 754765488 839629179 29551456 502143663 800881001 969584415 738611613 817054611 228552827 787525442 455873041 785576238 524926125 867762367 427295101 816548117 934877123 951440460 283895377 436696285 733947722 849195705 976396743 980521362 2926875 172495035 565948708 885784183 334272124 615350512 851845686 868478138 12703072 722864524 672234240 672730551 359707494 893253796 463054431 568807305 565516530 694279239 438380437 915985770 104711386 535794745 731098956 823876941 733392604 988237939 952181105 968652881 925153887 957831925 732465071 990394369 781697711 954446547 997167373 999074733 356296516 709521585 642661885 733555725 885012077 992887073 888435796 907659288 852200969 943357800 994462021 995830448 780274220 858650218 892308232 961260931 397498505 590338643 624774492 631636129 94802111 383744350 524125481 997437640 635192032 804573485 785629025 945378109 920824915 946921425 48078516 429668828 977442095 986839343 182278423 667017840 762615206 787014860 444401784 448605587 635239530 835916838 166789389 242863839 245767432 619891760 799032006 932398691 839826487 847213993 573054219 796850278 644378828 940853886 840446495 872871785 341275360 897034829 180002184 491263487 981125600 995701890 197868579 551984057 950335163 989679241 609056582 887845338 153407672 725133083 107853217 580796943 226314096 986356271 803413385 812195984 945248028 957699708 589905220 651200972 619764112 705953924 397390073 438970183 115895298 853184809 686221294 799322061 774561090 897967162 641137935 802802527 65834766 70933318 229050388 742955586 978169662 981092391 917410867 938108381 843175180 988556493 726117598 937136100 497380827 939602943 454763528 882121582 1542226 558383307 533693161 809419752 322605919 383610433 189548702 382417823 172461518 503003629 318769239 320780632 206914824 869050814 248682187 559640394 39479184 983110643 893102561 927181365 957959787 989658362 943773314 999290559 547743048 563676019 56420525 360534614 799457391 995553303 730272085 775686361 300941454 604670116 425278671 459651054 973135304 976963826 398377704 605206405 35660409 617008619 267885131 706052367 372179462 598106477 960158208 988265719 413852737 765406514 880344859 918165902 535490256 946690026 195899278 361148868 406248669 825010867 513994518 728305073 597639625 793678284 218382901 707075085 54665140 246617506 725686364 929251243 423994547 569852368 524536984 914037589 6092744 568122463 435641596 525975011 372507138 502142155 571323787 824734861 752692829 793770994 102487451 615611229 939300219 971427941 387367384 520053547 709429677 738005699 35867282 578914454 997463688 999552196 517505014 757479953 857993301 916432691 984633314 988859128 227461369 410632690 420128545 569674312 967109502 979965741 962654156 970998778 709592646 802382849 41895262 227191125 678699565 955399337 836319066 868945275 939215913 961262506 461905415 546364459 737739844 931857543 979838150 984892406 540669654 700231953 637469786 876371727 983961082 984731550 258762673 357132369 729504910 820882139 186364439 599668977 350966599 589181293 673253379 903418961 652147515 658926560 375396255 590501950 100586130 810487571 227042978 574691348 767384226 962687132 58566171 545781812 188726891 253955729 542056479 976705740 5654838 164504304 628684991 992166191 240251647 418075751 461053698 782041827 597674887 978445683 705971126 777428811 92905053 804247237 98161036 206658622 40469244 299158500 704992374 978338961 313697939 483068898 515729175 993996969 45251279 928515903 966214337 974125234 697851853 951656042 832668674 846335266 140331879 837647473 412235042 634470398 981668587 995113781 71021463 606801740 664506729 965979960 242345954 544484888 670995457 724302406 886303729 949792112 708132472 972028989 868746621 964988239 105633562 541804047 868377252 916949911 967576248 980559700 315043069 966416333 738841979 893836070 718148146 927901491 787030428 879390669 291357328 295965756 146689717 640063702 745336126 939226670 78565216 449693846 121380009 595109603 713253680 737567627 296713260 797368672 647301234 760677774 228808384 551563632 431000704 472767241 67806778 689941752 84564034 260869325 674161852 805408029 781923078 930466959 490896527 969236939 153667161 315318086 256340919 448797840 605605904 862104545 363077527 545566700 147595622 788498664 234305377 470954641 536355318 919555972 975668893 980516587 744338492 981890611 755599255 992679004 300688130 686321810 985377853 985676773 653458920 838096385 637728557 695653802 538051311 707532341 666890250 696643306 348536318 453238404 730506440 981964990 604380557 830428406 67057986 665002346 214496120 692399781 406476182 945863688 660491717 832277877 82567154 550016086 595878710 910518239 637396581 742835304 214655426 954648331 922726447 931395051 940356616 995174420 35633107 154648593 652097639 799528673 280717651 722632312 109186942 199383678 996610658 996702229 83821273 317744870 209628114 331244570 866150513 897490746 308527432 776044015 48919867 461056585 338771666 890112569 598210620 936204296 736370888 743036116 301476367 369645417 809006562 992007798 469953223 773285261 827748762 916904734 112860326 525335616 556400429 860267245 905603203 953946455 172021864 608299711 314799529 763870323 33447830 421253168 377285868 671642291 269024732 446891912 443758010 682707812 537805783 720326625 820380337 967664759 828316238 900012747 512958828 854264582 969906721 986462710 417852079 664044761 652713125 772619701 394647360 589593662 625849876 627152399 177954347 934993701 580056787 581062836 538559709 634412424 278728395 540673160 1487067 877515776 21162390 95618884 918480372 974640873 612829412 700842169 287699210 439389022 272117014 631685411 984533851 991602991 399390670 411424147 424725969 991394567 723273117 903807374 287101820 701330710 786288414 838104638 423253752 565859085 267762480 759612745 519851550 987683740 123819437 837320469 986948906 996404641 566539747 791536068 298604323 401722510 844120055 876347033 804840452 837713377 304796219 661090840 910844276 932273609 574637803 610703512 374992974 569876654 88825505 163030838 91639707 422165500 639185096 953864704 61286574 440441248 264284957 359874981 274794490 923577391 697504758 915514892 256203251 410925869 559565922 975414667 218818900 629358531 471087892 939074996 283922355 511484582 104819359 609557829 668942270 977739504 71893575 637403668 522757346 603417008 318139155 728238084 915564106 978489051 107745483 200832101 974244040 974696753 636716750 666665384 782281250 928663305 288876384 706407372 594034730 655007199 922558358 985997536 904643593 957535671 26388658 406860475 769754094 938167888 849999873 962100718 174068190 228661576 282950723 338296948 931974518 957427321 578010360 794038383 905080478 920068508 159351361 693407705 406471938 837930168 564466670 705593787 364860949 713723303 386170911 610549485 939812458 952471460 770399593 905397303 183689833 826297427 245169090 375807457 947022029 990140671 969176990 980658320 311522507 538789476 787736061 815429851 858506749 906261070 617039235 695388855 915558897 936409710 59660934 316540219 275284482 887022955 959675393 987650209 980491612 997912681 687351429 804926217 523200757 696734644 950350564 980206457 477759676 635895384 506608819 785558154 861325555 975866728 666442629 694144271 869606420 957305380 852146419 978738770 152575498 556891770 671408597 914958381 191330619 791089177 470997470 707397894 690728777 812010976 9285562 472916686 684818063 745916557 637954989 945600651 108410928 372634142 421439318 784502523 444301725 521104082 10533889 592664383 291035634 757201277 870452791 990933971 439406116 774112484 960563244 989398253 51705593 625532385 537707741 881396815 146967184 992815736 942333204 993425621 455356480 906563882 273145959 646686733 987105127 987905187 816399676 883786741 709691445 824686516 389428078 508982459 487227477 631630362 450751181 658934400 308081736 318576221 474176589 694073879 797794976 946891525 453367580 528375346 119795148 870872072 414000902 939351161 936539024 998611618 803179061 846718418 211024818 688397922 907227621 995144114 915768771 957919485 290778681 621809395 95544847 674590523 999391850 999543614 627040545 812876505 791110384 820253822 28355729 395872795 74104140 444906350 788793618 796249000 830248035 859724110 492659497 713459543 542257743 652417476 671244559 856227980 58188680 726243842 834398223 983641089 752707794 999846683 155844946 676064445 182906597 680879537 210889567 446696215 96457054 831061964 30454541 808142871 870760280 954568727 463035293 691351402 656928489 803616952 198515555 882530333 578730039 841481301 144105702 393864436 644175053 924059380 702912227 794763543 736795991 902906213 121596386 264448374 481458314 571519666 501847879 906751326 788347197 891746127 317558079 421711748 236153780 720712945 124299833 968546302 945077051 981087079 51302752 669933350 98065991 717005681 122180657 870075235 759649261 839730148 666037540 753329111 166454804 779985636 983139013 983781778 508885816 524610752 139912965 191482016 240464132 965036261 957873954 962077812 190858407 886619385 857233216 876902001 456015358 668400631 63610279 980177053 168411542 185396893 441151708 539616280 550196312 657053900 830893734 986445705 363799508 844935483 903301835 977386227 847183430 932793023 69611578 417851649 168940849 738495315 430895849 478285940 594709682 849483279 272406588 916781622 847410907 916724948 190257338 847723611 964694849 991993179 642675772 937024586 483666610 579125169 134556777 143575585 747513955 883676808 331724231 466407078 340633047 992328036 959075748 987810063 433951180 655219177 830216773 912264931 54980552 686796840 354905084 999950471 446142032 505735398 245360650 989638232 586955431 749434322 112500729 691059009 781972886 999082240 879517223 958509217 825365979 973846568 302896946 331010965 200350494 618153305 342799715 799316448 685024000 937534727 7007728 819867764 614435610 807592136 940193553 952260853 844776614 885050330 444456388 782371671 272472448 280167983 737336708 842326959 819212453 868625600 149890923 432116488 568320923 648553263 792054604 800066854 438645084 554943031 181906452 498203869 528705467 953947176 841814658 857061908 921266364 963459960 274491835 315822815 739298482 891115002 874874540 980232967 73622315 546609045 474056364 945599900 541574701 915706517 287011589 617226376 614666242 710801153 709561346 894486493 188568542 498230443 987153885 987965622 686767020 739169500 581361111 749953008 570208965 965638083 104389548 152862347 718118644 774792460 766329969 939198736 779468298 876432620 163288003 341509292 556849055 881276305 448919170 728982811 695140521 764681830 485768727 578217168 304685774 354132913 562869029 985651470 203059447 513190969 527480991 865317348 580656616 749640417 924476501 950236568 41480695 903508456 654420602 667898209 42591000 845673300 429212981 571455327 228683913 653417957 805787734 823348708 767848576 811461511 932428535 985905704 748218527 868495975 669030762 959403523 629318703 998971360 825262830 891653902 6594958 996199524 844438996 992299285 270920286 433004492 109262915 212406754 270136322 694623972 707020282 856650334 386590984 771489834 106627367 446442663 865265769 982922704 72732382 371354628 324374469 839396796 201544773 655057704 543886638 775907318 640814184 922368954 946686330 967582400 257023911 681015136 225773404 735356937 892241978 895565336 403104947 813821181 82826874 537009794 751732647 927927527 253997958 260191240 289877328 491375573 774787246 776940148 904543376 943795218 601116300 972285212 795017229 985094884 743718437 843453434 609619740 950528327 199065983 308277543 151220738 266026841 935160124 968705665 43592911 178811275 871425733 873997411 826573329 940268791 891709276 973880077 955009242 982021705 581646623 600149282 801068274 955473599 303872113 512917425 270555184 610641818 826052723 828796113 46385176 345534780 999012146 999731599 915046336 995313366 518484033 853954237 570326089 729363429 30302021 205883032 209812512 544789978 269913819 470162124 939832001 992362274 432278894 677361769 525085125 856257015 185063555 360924465 620789338 844115253 668870149 814139918 427575183 967519036 941647011 995141937 982449764 986597425 760581012 854943983 591527682 867532173 423821527 509353516 486749652 512060514 269353117 348035017 768142456 890716803 445890000 458528175 316240633 908413097 913166790 944543588 567189632 996676704 697436729 805818525 578023807 662040678 933636104 983015432 967435175 967475658 6386103 930370088 742369781 986476530 796095154 981341437 429034566 635283082 408334363 682957327 511880780 644669552 783187685 834804006 321310679 588267369 484724355 946236613 237452839 615502888 320576037 631790876 541974564 651951405 831426622 987392832 660416076 916128261 626722936 643459169 650780888 872851353 252413844 664423455 172825137 917145624 560737595 788228388 460971353 598424831 797755414 906108551 126758924 324088215 622851557 801954419 801024840 850753499 4381373 480513336 308959642 425431544 760096911 913644926 157562329 615724287 180550342 215807280 729363937 962412097 970212947 984914281 335643058 519803079 699215497 956506053 373912463 934972523 796103224 943997648 24203534 390478743 593027475 993830616 951725448 995644163 290589240 768832384 904058442 971784315 293447116 383013651 198132093 533191813 420188550 456703653 476577941 554057058 596357953 647502194 767672860 856241602 625965566 771270052 483963522 543638018 263283352 499017229 785541296 967609885 64266015 612546081 494610361 937361892 340552888 567101425 986534641 992297900 245768533 785559945 650396377 840937227 332968491 775462981 68521910 586563988 439575396 793476885 506320706 971885709 640041525 660037118 799470736 863118171 643569049 676577343 387832222 917631110 311046073 333609282 171238267 293427193 957366041 966224640 651466380 945502315 194876506 740538964 349803956 445048188 182361624 219872423 820259760 913977821 234699666 846378726 888590217 975729627 372925234 416124339 921165417 986074120 126339015 465462561 497936783 957674174 933769515 946955805 48186924 621992474 471039562 550063296 727253740 840961847 35349353 972210179 721166388 832321957 390657407 465649939 956244562 985269307 83623546 196771458 449443033 839421033 359832246 488803240 280498607 539638853 351455130 534969182 893674502 948621934 457307454 714968457 285409851 738468581 991376216 992128001 460068920 938493575 592858149 899640453 823412935 995700538 292744004 310869139 43503329 198165667 708668251 895901651 402792105 892910645 840820093 956035861 826432883 926422690 981002140 994413806 701116809 774834340 730347013 760289820 669869691 776141004 552279875 882073597 349392703 953536961 913904838 969288969 714748564 998705025 146519324 422612362 745941724 793785374 844017454 876706427 161046655 504039265 327680055 577031430 165617638 440688506 103242274 744865321 590567479 913133585 365362776 914169180 522490418 995975895 405819238 617439682 311509803 852585874 518411226 886279421 907015467 956604349 284968507 840561311 76649564 107648162 703580617 919452421 898377857 930421702 697386251 947927415 600667336 639087258 56417592 823971742 909417282 971544583 162543016 735855030 840245794 978840585 159195273 765506294 684372724 720924785 979685823 995729762 177797711 458483739 178594344 410133303 864513700 924102309 310960 484824285 40616870 529544835 825334921 906580987 911681920 918093863 938079520 984781315 1035437 961486706 897295697 983859128 382266667 564308334 877970007 959083727 919028385 979895352 40488349 858814186 24850237 861317661 410972632 964562031 273206381 927832081 241162368 577712168 173598115 940364922 636273276 895049456 729363297 760599971 508690884 840765450 269937412 938134073 629977255 829973664 418221298 789555331 925826114 994915707 771969260 802776396 741936411 770605862 155806294 867942179 757745457 874656513 811777959 938828126 334217757 707524253 742058741 904613112 980543236 983012426 832865558 854261271 603383921 650067925 455555195 547507561 819910985 881245636 632999838 959059988 455207965 594079440 814562102 864137775 460910538 914090561 471607067 594997485 18524101 761372065 159567284 898457342 297341485 696139875 250184267 298302376 236906689 359115354 902861181 905254375 743716467 881254813 433799391 492705474 72038374 656827877 356012082 964157173 362446962 690992594 72230386 378679017 813585107 986004589 279465907 408486907 252398042 668057051 892161560 932258157 535699294 788443948 78684480 626247634 68509335 854762939 535820732 681119853 89989411 927821663 41440397 561058526 874751567 955197370 584922816 907191581 593925700 705123855 676343871 968279658 927559962 931855597 476105550 752311503 100439329 446418672 371075866 968937177 937777630 972178363 716512143 781558220 385244709 775808704 101374388 578443505 888161428 915798889 124483988 692544190 727941131 965968852 840482004 922088685 80312281 444591926 921143061 953306552 640331586 871114124 761727644 953885384 508039388 771606892 454854174 751392402 131715784 489467379 829319664 991295542 221263156 851004135 41860290 920773864 100674470 475705019 241540910 379802486 597925985 844637734 328786525 461523135 143503768 880415004 37755884 241099085 551210339 692686561 624270892 923771158 182422251 556588727 46751607 73179443 383375122 488697300 579380512 673183081 306397685 950137196 28105786 143261065 716211235 892595469 8745976 960028782 244432328 882820168 891119965 911039161 475131357 835673247 214917579 674217202 714526972 922483229 515386930 550584893 214564106 388535162 412066935 746111084 347120197 876826001 160054478 854448519 184019505 646026340 47030809 202306400 91168734 387830807 781969025 979571506 592946068 846236904 408163980 980766998 860941618 971880972 619524993 962211176 160623352 946113486 400211956 950135666 203559213 475830089 115716347 402984837 932083979 962238835 653184332 910716058 444370264 685544180 383403552 415845073 955425474 988408186 878079602 922230432 691872769 778293738 464917401 558056244 884870227 980569273 579555446 831006771 922143307 950145086 517534208 954093782 556851934 883161462 484081204 654968076 897596602 908774722 466398730 630913013 26193740 474757352 817249430 900669526 813978995 882105245 830904458 973798153 811647434 986313348 830386733 998969134 593305231 602537773 835276564 858047918 832679934 927987431 324386305 483992926 207261130 750122031 401544907 964707664 331333330 552576755 330399192 467282725 809749846 946690131 416221674 639854049 102265246 603653528 722595171 878168007 432909315 786957003 983524325 996047892 328085042 662536928 719387820 904895689 340506748 938527530 89369785 493589989 176633668 194267925 645427437 934562504 523963434 968010781 949468647 981906880 547540755 675950964 64206587 299636924 927712923 989058967 296052049 787945975 550065391 596795819 271131597 908312361 258465985 919681335 181572041 198756486 946444491 966640260 404871638 804467407 702393837 853469845 943912082 986923273 635846525 825868202 692895107 939613222 703735379 745326265 980581241 992202331 100622740 390058661 852719002 989621270 932294723 990100537 749459272 873899689 867361989 875010969 671072045 996652898 812493434 913447674 253480842 850938030 851248173 960009469 552354570 811745647 404155811 426786573 244975161 317374380 453977930 698444589 401768584 555634100 933473217 968745379 287213026 892011089 280340572 877658912 320970292 332065445 459365023 506006434 784735416 884682383 54654060 913450367 913516266 944402759 60818475 974649262 963387099 986583655 350450980 440840067 435842716 776241155 228290518 504943174 154049825 603143419 588402142 986222256 224514406 436400766 645023318 921223465 998185052 998584146 484515315 963153106 332169224 461935375 256993743 672590441 982578578 992681560 320460954 673492197 905027499 934873952 805077521 907541322 774345055 933357764 956009419 966504680 457593805 611795942 862918911 895171368 109062507 778620195 825418131 827459402 46355161 703380201 813433979 816941771 402389044 843990156 583274998 931231028 530451516 876846246 598319105 712795414 509260184 669670690 769610754 980901890 659138483 997901690 724829871 747026306 56704850 640464656 46879667 468575953 628700315 684073599 939104897 988349728 214932123 839169827 411742230 453339672 844908068 851829154 317793003 606684786 156551234 459133092 619564789 964675463 366240264 493231319 571757711 836426355 725730985 958580105 293627536 998857304 552170498 638296574 712351060 954812432 671175519 693173857 968984809 986544883 491315729 800904325 906580105 956102450 754296697 825560199 181936773 405659622 731296919 914510853 980521736 995714476 907026410 959796368 742477981 881033555 192191953 625000728 542317307 614390986 483342069 567487611 70477628 331963034 271016520 692015375 364247968 507087099 558948802 762660837 590599843 650372909 268837436 491538436 763937147 932105924 986295532 997054431 170765092 764894466 567329864 650903317 261364652 801605740 889983622 896802228 369430697 556189589 438970828 509796542 777317963 892697122 290698532 772391115 99351069 139196822 403595762 869738371 963341206 997602988 45246927 847236445 677081342 945592683 529681823 688650600 235132305 265052323 153440975 791647759 918119431 977722400 140283804 735621086 14015011 165805748 577448139 671463395 24391738 860124067 281458141 777859391 19554409 419898416 841760133 982204183 382040236 624564107 325050195 573489260 267827288 863240502 237923149 838738812 617928038 837237106 567350075 660111418 78421448 394244746 168083587 278893822 532142197 751775843 729086518 809933882 825188111 966671615 366304198 593274780 771297101 812611430 213975511 919206273 212082656 555517996 848024207 932486255 774906376 983914889 557104403 585345104 931860761 977654917 993934094 998938145 74592027 472056736 768433026 795446922 328731650 619091879 981347057 983152774 999593855 999755700 695144959 905514366 748402872 948137438 195404985 879283473 438686635 523083148 885710712 903695917 238305231 489487805 289639099 995517809 66439580 470084554 723789058 942582940 598956189 914817115 93428486 997487200 25468950 902958826 420341743 720034097 714221482 870909535 211277566 918542854 452992981 567295311 9711470 373290779 937163907 955323098 840702747 996642586 545408113 962197548 196611382 750918640 533877377 699856349 324262936 979020687 455718625 659906395 673065212 950942980 488254018 692663518 308728773 945770531 534909034 826995908 324674695 930098164 541857616 848485181 338389848 584730595 847013453 941927991 612740908 873822511 836622336 872220487 245539600 569592790 84017152 727100810 20427433 691678494 203428096 489029619 918125180 953557531 196462003 726733131 654901491 685094215 19921175 709369919 304905661 412596473 165611459 693493877 50356972 564371639 476203275 692017221 85349711 325349091 432752848 988453930 383176702 886646314 215835784 361755820 308134700 879925876 98297127 344654253 205620243 242795429 672848773 914418099 950938141 999551986 434474784 623905228 456927982 710273881 633764641 693813252 268288852 348781986 159512166 590660362 129157250 227670213 31621476 129286428 742592676 896379896 415135322 856090165 851890649 878480360 715135461 745337158 887339473 936451849 593106102 722376080 555805268 846839696 639559499 817799795 423688160 869413209 66445921 873579691 137944132 289052053 12826299 670244567 692574437 987399234 609674493 833669903 795463877 924040925 352219194 825805504 338712826 637668721 411176987 711918768 396459533 543697684 702216496 985811598 777462312 849116689 307123914 319674298 911581232 941953991 543965414 865791826 429626089 944686614 885314383 980679448 455042073 956388971 573922773 615210684 132765869 412486088 940741513 998438102 943208253 984459087 66128830 95344632 998510501 999635941 371444524 703050393 110559131 912443381 285163691 430422905 849416875 898303870 329284480 471575290 58093738 88416443 500951599 824235785 539982899 703784112 554662680 657446659 679241444 928073658 918306302 952846967 529355224 713478491 579150757 900816231 323124400 665375952 137369742 309164271 331470487 414266524 56868211 270649332 830326152 957718305 998890476 999896905 483788310 569934580 2523418 374536885 177381999 903024920 323333812 594836841 445229164 605219424 197298072 831258058 254511733 687466789 459402360 773338302 747021388 780199955 900895805 941699048 730156964 847662711 854938298 977862579 125772903 158388575 822911115 847178512 81977991 138654316 280514643 875198815 949220111 972969631 565821201 782088403 676633222 911563958 685031679 752614606 425151295 836910114 666850510 822107846 122521480 751889539 376169987 944925599 868813655 875404608 889613727 944135377 882269052 977483257 251906253 738153899 82220678 97278171 205765428 938271215 953192401 971428660 254595367 471244869 20191403 452076814 249265504 766320407 714096104 730341199 999291660 999377065 144484499 882511873 650733891 936171539 875577431 885963774 543871273 840549373 891379212 910584923 879752376 881894926 181753203 479156262 332001728 952217040 663881004 834318069 122200753 873992501 453317039 935696355 450060160 767200159 99156719 656143081 378731237 905602749 212312029 599296018 127486219 633142787 691482613 847484857 769558889 839332043 55390117 273821930 909770980 943824152 140361816 297802370 53353610 813702645 607830347 721805644 701058833 707147480 385602045 772745336 861086181 981027550 829370860 992593658 428075844 525285078 654052416 849778739 191701414 336532136 70383910 777936273 622938371 648384275 537819101 805743560 867377409 978046922 269730222 542961341 536780014 935284536 658108651 830459404 947093840 996421439 611943938 680455674 685892387 998344694 127605118 427157919 34043118 340925727 34633409 182209302 366430367 698393199 142063876 763910114 237862634 466152731 522606348 631377114 448289177 859981899 948677994 974844045 9608878 795266284 448658006 991311871 596928923 994946505 533079150 650443127 299319034 741170120 457808981 568020540 443579942 675992855 380601927 618524084 695449247 782904912 654516948 885229020 504050251 730616996 174119609 741426351 833355798 896966460 66561744 660678018 673056583 761299754 109137046 656347553 127011834 299001660 589279584 895037593 560643652 930865302 837042064 991337727 822084426 847307037 94207516 225176403 959781816 980694853 638280465 981451813 794160961 834227853 650274961 891079926 367519464 923570898 498985890 878110794 419366090 495395377 178606203 359294939 224661465 551213576 446715547 669666037 77860014 835827108 13285323 998284816 706979374 977133103 136511822 328641975 613525497 764692150 678707115 935853715 229056982 620312628 226674995 931527041 444761104 950522239 390542444 475749476 229381205 500760826 320308609 958938245 562067196 969349605 593566794 856015022 829333742 916092604 737938372 867875976 168548983 860164077 973012408 985702614 176493875 761970890 405278666 534026555 56795575 988209518 705196632 903979177 713316380 804503167 157026597 258392860 285953095 905407012 554627990 699889855 220183329 850959640 928257767 994505542 394777343 578712381 664301915 864733758 533357594 978126285 596089118 825657461 410203277 510919572 998867078 999857021 961916463 964435640 409700229 509115422 815420090 878402891 481172989 594009474 910407764 924090372 246729762 869617718 56897254 834257659 856107248 933537356 218131037 777850571 391031350 508113136 461905174 827260073 928772387 939434063 467696965 579650432 981175038 984358093 958381350 994348592 501967403 555048872 369813703 527629254 323696074 950503491 207060357 659459547 720158603 984047712 346128037 708885710 96466286 644458345 207714573 287066459 160672373 465312260 68473378 398625417 898485258 920379744 783929596 916843094 868019820 937228038 364388844 704111845 298597279 376766136 302339032 453407556 941682817 980188784 118151051 929955316 305611054 626957808 293347276 870037948 545566790 614632288 454129363 554417964 87379795 440025191 808048914 828007955 966411627 990941333 595668884 738420864 954933409 957595534 881796783 902557672 871175406 999379980 190519264 388157735 296883387 508782758 183795447 796001736 809076401 846362505 826522143 990772993 579762501 640099769 842284451 853632078 766591541 786065371 662501057 987480339 918214498 972554730 173069061 401087472 261512145 872566005 469862506 686092831 369514545 520820462 203031839 993488316 930798301 997812042 476619042 958578576 544100027 584161270 415482281 520291090 71628516 249768937 52936352 789192106 611274994 689759559 515263930 617121838 639591799 852364419 623036652 960849848 324955051 819242494 566104543 595007889 279033777 771584750 56083679 308089118 707826926 787415869 769870700 898455490 859518093 888533823 386993289 763807263 912272641 974436879 533528077 948930817 588446965 909625022 304775006 452715183 551105785 620362132 360832838 398780329 159831368 408560939 710053974 955340872 308459619 787924245 886720884 987507979 131476230 887404457 674883469 904538828 211606747 335994054 24878272 836041876 540502349 804395121 912520993 944183250 274741950 406040869 465057576 765160607 599937437 632179731 479553940 961041975 567379434 997165012 984109652 990176862 96926722 883861656 445297323 843883561 604437599 632721434 852046511 896038532 462614203 880234111 765239169 865448098 276691117 660164299 358155834 615886541 215774367 811960104 426589623 498741169 175972150 360882477 765541410 773316652 289788804 589052004 423928213 841275822 966666839 967620020 294009752 316431945 133549184 706408249 421894914 870561918 738706116 824756004 29726469 111776064 845715774 892587666 694128562 729147259 838722402 842955863 678141122 805869289 464885607 689584862 472173093 815241979 877714653 950203197 909228301 912732497 647422974 955220608 792479419 895640269 802252957 888347721 918603874 943973762 737332035 790954079 747044158 871311307 322883130 600836466 243075009 262322819 859205016 915976501 214886457 398534911 635596895 902481668 714844679 934441851 772435059 939206043 73269719 562369050 634868490 671983436 371722024 729065918 770695467 886916664 336458840 930046923 985295152 990559330 36915016 333015667 912839083 930816943 748951421 993997903 857522176 877618522 643776415 914231680 633408823 720113774 776390445 986236242 497676397 583013718 778728487 883536311 254049990 496355572 347331239 505139944 679976318 867558265 14460031 100432616 181179877 847016671 171765246 704151688 760390717 815269764 57047268 991242329 876394725 883520377 52820712 691353315 25494753 222192555 66761931 404799927 263169973 753210131 318098089 989849588 241195436 382713606 195148292 956072329 26324435 421347847 688272070 690149926 415200582 713941400 38467290 341394139 672020003 853990451 646228841 882359034 97143017 990042125 327018156 795836216 101619872 464689998 835003111 845188877 237056365 877841326 80143266 589248018 792397924 828568620 124042530 573681479 665693409 993811369 678339460 774315985 655323605 818542358 994660929 994995582 536513128 600633239 234900786 852038921 339068501 740805395 397524523 932469179 611226824 769368563 351601240 777382110 308344647 467372558 505201748 706458309 911242714 948408556 275682240 824055588 243205465 447390166 538066811 895341910 944813589 951138536 141108110 257779114 453029557 530381209 90147856 776366552 349770101 945618881 317678059 710967006 82593958 236372504 560492426 942737886 776910852 878468556 79098457 419405417 453689193 709986944 775156921 948763771 944338262 987963492 400673319 805833704 128029895 476150616 210878534 303362830 790364625 944996978 581644698 850937768 385499041 989382203 605284487 687625214 362860649 712544774 254537096 904660210 490828255 835601678 465373437 591913412 879305566 994206146 645576775 855869121 353227920 819872322 507812652 852954399 820344683 940945370 866467692 917081576 631171977 632224416 946738847 963052707 937743700 943870439 550427920 707046920 905978088 912240496 474191846 899356590 879748029 984744875 385806730 670682975 860922271 864206696 795202981 955371561 483902325 951932718 608015185 924652735 676570567 896898787 112174323 206382779 324418306 660340190 565840243 673444381 870333400 968697753 818823171 842813391 758573723 835205376 303273124 595044116 793354854 871501997 50851407 159372758 886996159 907079517 709788567 932905698 411859910 688966422 343016896 549439384 412964936 882824217 705207860 797583103 628155542 702322934 666878755 931902765 922845331 928278336 633097307 759607129 453758332 984626293 711960925 960059633 537878754 741891455 983817802 994567187 920788151 949235053 275216689 489555655 160869668 638488430 75881410 724922629 835418469 904228356 748224397 769310592 601162137 982615340 26232862 517132194 718432513 831916742 802832718 980945086 550777344 813136068 54689392 908900441 75878103 779272017 427911577 949124133 637177589 729501716 719832024 983779132 224320555 965511277 989972508 993353546 791032302 968440019 705936607 882146519 539829122 577441995 390270518 583144902 619696131 776609417 56000802 178497809 899939286 985714363 509989740 855060877 284819020 974667673 820335909 856798122 627888668 793307455 25943398 206121681 976655822 997246524 227143192 750563973 283547894 402079523 203210364 743498421 707418903 814608633 702436449 854455395 226290968 283590476 600687894 811227662 304105364 460051675 813141445 993889535 738316247 887945147 587390414 940239523 58343486 923376000 531130513 705535531 519258614 565372717 401334258 995434915 498384322 645331923 945186824 960427964 894041917 904816509 579765164 767106814 869667450 906392095 658417091 998331063 271449281 960229810 616410380 778893687 582827754 707838732 449802150 687744054 797821194 935909395 668360667 713720274 994136658 997005158 793638077 962793230 764902992 820338574 100462766 654348111 304156970 485710727 481785017 838913008 78723425 609587605 14111776 572101311 680204458 963609253 893402984 989674196 666984629 828970964 426612576 784383530 886519432 945608936 181265799 911621921 649751665 927086485 556061466 637537780 224615377 932592014 384914619 734405353 277330979 689146201 114166183 512665284 550371417 948595118 192072349 761474964 471150821 700954579 585724053 777657629 21120032 435888946 539534837 942138800 112668167 896779212 392709204 763071354 311653388 804878586 436201168 941665959 67462822 969100555 971977694 973965910 178486191 526574757 172671638 681453882 861328370 903920391 324005015 569129661 247175052 811214515 528750181 767691533 406821972 801742465 127890709 789153506 363730316 804499888 846115125 889336697 510870773 542581560 341363720 392310285 451571347 661585804 782789583 807979593 814808517 836030947 432642241 817059098 833788720 903623140 257197656 618273517 151772001 869680669 486879235 555872736 560434764 699568927 173475662 323953256 190928457 287785810 604243955 811572445 281991225 686722459 265453095 585690524 633034843 654669273 345133052 420690331 730218966 911287687 462401305 466043978 51537872 754668191 95179060 227715493 895208612 957174628 417581996 501320974 276326795 823534121 224223640 630632105 938352768 971926241 637489506 939129760 111355975 863199194 458940707 553090603 762702986 822358263 452790492 575008019 937236089 960227089 692370184 714396317 418489184 464352005 757717068 912555022 551460577 797426689 371368988 387918637 120499468 224214285 231433211 462676605 163184641 927882361 741266560 988054079 768747448 876767492 86228739 591718299 318870184 667042961 521512328 561723463 945369559 987451706 753251725 799720287 665032014 951939150 903888638 930837390 69467035 726108266 266905742 842064519 858170843 975290730 454007155 904464292 210957932 310470930 333740636 605164708 246896619 647397363 9387521 518992907 304267638 967377735 23737849 430700814 771245658 931196894 57976310 611989435 202958781 273453085 211079922 287202093 522878654 821323389 296175868 406623852 754360290 806940112 681903354 917975068 222427415 566082864 436786517 624887292 126471159 282557796 608047715 810487413 178483110 519490652 570838897 882042810 476636951 956521309 612524871 887156633 239474256 615928923 257752321 729162389 608059328 620010922 258356213 328282194 87953718 779636141 982881652 997940888 701453008 987517111 808556094 821337148 899431714 978226614 914541939 952553503 638243237 786896716 219772443 861283437 789005966 801394591 159570664 215903076 132012384 339807164 544012775 811791734 377846124 926298966 857299458 963405509 234419160 685417387 619254956 842412727 645260948 871417392 697033878 785485785 600948706 864641061 133751107 627370927 603027708 624776544 810224876 829698078 647271156 804414881 147160736 665778009 759655306 866738249 968876428 978519146 99179999 321223254 316977710 718205264 182679879 633723282 553104925 959816497 784572363 997759162 132332357 454252570 463380246 722092073 390307084 567230753 809054085 979022601 498447458 589113748 311316455 557322219 191665312 973847390 331621292 454646019 450908703 867065788 51648702 179365270 204012198 939528804 623719002 776490107 263643561 919491360 132663239 365671236 128386781 478141529 401365589 984137462 408612718 476410089 417800652 892788727 718921597 872970852 81925160 459041341 170739042 885605583 637085329 848223411 702104140 757087203 946987715 973195980 841600365 962160592 28744066 144744568 618073916 629247560 318877886 440441008 956485544 966751207 734771602 991205323 84493476 911207048 712455973 806681360 104266393 527804632 173357711 597993696 167791718 168052413 245367774 581332712 511511752 939290732 346089321 740702019 53120420 827021869 481813484 836078372 486440891 880036812 683604574 944081062 721272970 741858334 818781449 821928373 114058434 701241248 942694359 981806664 816126414 834797273 137155984 825693980 324929900 488794692 245673887 316543046 467029236 848300063 184721838 772906147 606059048 815967555 972496498 979543547 756172463 935592922 862122510 976593433 342743835 379482221 14314286 467795890 906983789 967597259 373487041 484347760 509903094 875134825 259122927 585035144 593467647 726129214 138106841 874850936 79533654 397326496 493905350 810582235 842852235 976470415 352822365 411904605 654617654 711797792 139771826 224254663 591522880 907327540 914489749 948661776 875673163 887699511 515249623 705112142 750310585 921042014 482267540 919972798 779630043 920131915 432769448 448400545 26349994 405283953 923817265 957423267 506723082 775133460 973691946 993361624 572117029 801539090 491415861 555814604 663110803 733577337 145277732 820722844 216477477 812783009 534604964 657930128 207225915 641271416 406657366 772878925 758988426 822385864 446826274 837160019 463369953 490952703 940342166 952498771 528090392 583912912 174901452 964814526 329258754 686001372 30730961 61038880 86654867 329193188 700301226 965012003 76690274 973345282 547026217 673861454 229768584 478596330 590115259 884056756 331511633 371112805 35119532 597481148 910839355 989091892 541586284 959467682 825234935 885968946 631915982 932408512 486655068 829501293 833954045 835107750 63782790 488028490 715971056 737484223 914112272 965176086 177004708 380812526 534181006 591328969 295620482 709144432 815114765 939088731 197901196 279120573 56413292 738855286 863135304 908463036 673416678 703428170 132179396 727273100 908335571 957651646 975192946 992098748 886032736 955558575 378927150 418101273 759712042 851621599 900628539 993583592 622091413 733743422 938419174 963007648 699626029 732521707 592199662 772534860 395201039 904742332 227618182 948371754 101022580 835194157 548861046 594717668 35786649 129675805 894542776 960090980 124824257 795605679 546887941 932882985 507680988 779630826 914482057 922326275 938561083 969613521 723034769 952891388 446630451 736850680 667357879 898596816 550601363 587717084 346628060 411649831 599983773 875950984 125447066 687797441 232655022 714056065 418534073 513038065 343150962 436999760 192247833 268637193 661958198 801173210 445922443 817689290 736048665 768985066 613708203 932183180 715433167 998387460 347029508 535708749 516653494 697950578 862700739 958500573 247092446 388388198 701293583 733645417 998426274 999131951 140191294 720787674 986917581 992340130 410237353 681408112 394440312 884166938 411630646 859173054 965993179 991856318 352323032 899146211 318288497 322171723 89174687 996912969 508903992 780116372 297712149 686358900 947655550 961782645 845696248 853969543 373749447 645680995 856183991 926801798 718894214 846523268 506057345 865137989 624665751 750678001 937381512 944394662 958388828 983350540 367082812 813702410 87423300 594434477 437764637 482524490 816736956 904478163 153405290 154869332 928888327 930965676 865734730 913392193 42982688 144411504 383389193 859065925 279460369 566226951 919570789 983181391 583692550 878566411 853726396 978878910 536085647 629417136 851646839 857844002 530389457 773565340 206671649 606089750 333808985 806238211 312035536 527601890 228985568 376498359 684030376 684100096 450177471 908639767 561903823 896105128 976763154 999988940 430678948 850787029 88813462 677737445 934125240 966033509 971073998 987185100 272896410 460378666 122078226 354908928 419925292 564511500 130481473 423544402 862756694 985316288 979152784 997887869 615968790 716913020 69079450 149895596 759292689 970447007 264157335 989261209 845065498 955436330 832759299 919526521 122489361 245550260 431339042 639616249 267568709 377559634 449768629 943539428 252384368 387814051 585854105 762916365 199828601 807022362 530711007 721459726 897624672 902964454 129117308 942605209 261472446 556285327 30723418 914447060 297179118 940545429 19525171 392160814 461642979 676966603 785376163 800884138 76154812 120467754 604279678 868436726 817467720 978551555 478669089 615074446 895749071 984076387 500208464 622898670 142914894 724976924 348391242 561422961 441734450 825865916 855819549 967788234 126426792 423908576 915109927 955483130 289596606 769140193 103420858 268564498 912713200 984473838 152296275 869847277 50054742 446357011 307523939 710464841 26160657 765365796 370186380 977174976 833311682 989396832 838982116 848725263 815416496 984588380 689996868 951371856 322282258 732853990 368631970 552070777 649098231 704105910 75781389 427214073 188841789 904399165 783176622 930419955 187491248 462272278 820721000 874984902 647912731 858569461 666323441 907378969 27597602 584068085 424448563 511802198 139290617 232678189 57067907 732699934 682550328 818891374 718956453 952197683 739061805 867544719 719222350 920871646 160556901 274409215 647358491 664634572 73972726 259333719 607552066 951472182 890374006 922618743 877591827 889105004 406438668 663061931 132310880 242352691 743403716 777910982 19664248 290140874 502603709 935274714 842589931 919364628 612296306 633340871 944597751 975388776 774647461 937278609 979376720 986436676 547526372 922474692 604010666 639708000 275831139 450527969 783575340 976860519 522632513 796276768 435540193 599936784 920611649 966950697 131542992 369377851 412765999 613893700 546534512 989638356 536662309 897614214 622613356 852154757 260393589 430339335 150264282 389884481 895502771 974605514 208234922 712078476 755178597 870452753 951110333 984873293 229164517 667881743 170274434 908576300 899916184 978532897 323213319 952594654 113266931 916137477 668966833 714401271 214056788 288160855 982429411 988285174 346473066 477757958 241275168 790744721 40348777 917096083 979376212 986544515 332718229 926209404 256173206 465664526 555142772 878344942 254351037 515884755 550396998 619640206 860718421 867861181 836746397 949104095 632264934 698195368 83902376 726526480 90407043 361038392 344777507 877400345 584923553 644312808 65901404 894535963 261812771 720864049 254630988 968203627 898251487 979979818 527649054 745379488 831455709 948137264 94834476 786735416 934666865 993122080 398240423 531031888 714809016 950274198 983052841 985299576 482723863 557219520 252858214 511114076 438778798 554942935 87229370 935470495 387427129 956929925 415343483 722643636 566105704 619002915 231593598 953950373 232634069 305587618 83526363 259870927 80150724 176167413 233924488 266295081 908200277 956482832 133863555 850498499 642169537 879995002 223594565 857101303 261537589 497088868 93728237 596698251 221640256 790142581 927486265 982471253 597582365 947671843 68050351 280296125 301465486 928395238 381289426 673794170 176210694 416103758 252871524 705376240 182943142 910395478 345200534 744323985 544406953 988363691 644398291 915522904 887874658 896457734 497094722 746251035 312203308 885056507 523659111 768802477 141442729 860713474 45303537 787176648 829200216 861838005 914279549 997460871 925055058 994389566 974513226 986985541 674622897 929087365 534318857 668775178 138013141 920358521 426387345 856130873 597588426 822151220 368209807 782077008 598732243 866899485 90784223 555151384 637798834 823276854 933318494 951871401 960907393 984439312 666437529 715914489 165043625 971246093 373411158 469672482 35509483 458758007 164910013 310615519 565551148 861922963 817444444 855864225 188937823 732872915 439711589 797289156 144520143 522586241 298143363 412076355 679773088 972830962 575920416 753943575 112299376 754454952 459282287 878964695 688221361 791859998 962238639 999924707 825714022 909116399 358866574 407556965 258060804 948406720 77964314 735795772 442003944 598349656 516403996 891574501 925729084 947571867 316673833 622887484 337482203 830375924 9335807 88319022 982501498 988020758 277231430 434869857 606371794 922412751 522357412 682642094 826059706 849028679 175959902 317969613 124253540 408279608 343929874 879268715 684478742 780553245 668739494 832808273 792449169 852987839 298195475 516175609 685671231 698545405 390912063 647888895 67635831 382109399 866607272 875248370 356981053 916387102 214082629 773855182 261784875 301335399 746825545 839109036 9106433 25933431 527937388 689696243 280018373 569530159 773906746 938211094 931286039 997647782 244383150 656359417 396195167 401861117 200334343 261425175 799483387 810807195 889482458 980909522 795841073 945053128 108418175 821319563 987160947 999235408 250354247 508316858 433931466 642795646 174674981 961272660 582639367 924332921 381978915 427982899 377083998 718342731 762301771 953160035 19566743 985762184 850811591 873460142 365100115 807359754 822242330 848348571 544639133 730664232 301056388 731212150 916882353 949295196 125815196 249072624 349589574 505310344 92900227 181153996 852382606 940635535 108024605 825646603 248916304 697893330 40678415 165704819 940208873 992520492 932340607 938505908 594394881 801304140 818309759 931220995 756740294 796800958 953956358 956940607 185380702 772401774 60836943 449133422 500053063 537600650 329594573 366051352 658472758 822360771 588347354 712240217 488281748 757914597 112476482 821537726 689148389 796583881 123868298 957702790 800144878 894792315 837305141 850431194 232035958 766274765 935587901 941340392 173064836 720859670 346939739 353007702 411671292 889965727 80752566 360159447 731311288 826772016 105779477 867915692 323350418 416851844 420155672 515916068 660394113 859882244 135686721 925432264 638786804 816821837 936186295 986139040 569667008 573552435 469479033 690960074 143706496 246353852 250278268 919424429 669361018 982669801 756081988 778057551 307776982 945072992 149349009 645493382 942007625 987559573 227886023 942730601 704636557 713942443 363859108 599129837 800283170 937450566 945774823 953832776 997469441 999541752 337092698 731184720 353275381 948439368 713693334 873699350 900359462 942238760 301264508 311023306 942535741 988347919 441136402 482692309 552169117 811586481 563523726 752803199 612816169 859766106 873582067 901098155 589939528 663070644 440602695 582455039 885406100 985005397 699402492 929934009 84548885 402728846 707293327 947118429 471585263 804292620 823877196 987687838 573052049 830064053 660079291 828197422 470962439 631177212 68282525 749508618 749797277 804910028 879566234 990526394 476084307 825068130 338203792 648866953 873728048 969871960 163993349 558794382 28623331 30504718 274025559 723605987 804273255 896145652 597902893 791341044 634370146 922847900 24133930 601655897 189456757 351650480 614976434 718786491 507606493 755998776 899089475 903646044 555518128 666935356 121728443 600357242 402068520 666292154 129144686 249345829 838843303 991148073 571575305 796352715 111337766 829664705 878545753 890344281 588905624 659933371 327027573 449046534 391174300 810500215 936637515 937924889 145037892 883379984 510787670 980720021 855184976 991155388 226851078 626120142 177603736 193541106 497653040 982336079 312382189 702669087 661023595 905311464 748237947 775370351 539674211 950991402 377393767 797119672 418245860 799966948 336836546 767284758 639172389 774638665 131891382 970977119 77987251 79902633 550991290 639537217 225203107 670247443 96429372 632222664 906981064 946397760 760336008 999969567 561312686 603020057 698912758 826580345 845581524 870904535 133116151 192467639 845793189 954633575 897822874 993588695 801489991 819403916 600630217 916858440 457301383 719406976 546572608 744681021 786922028 994322225 911107568 989351283 219830085 539791958 848350646 923580500 319450341 533522071 380691562 767465673 897693978 966182801 352163366 365567409 926701015 940530508 112146798 828598149 211906063 969233897 826090010 855197334 17638591 205966192 987843554 992630942 322213849 566339790 640577605 851257965 865187863 924100847 803986591 910773666 588537475 886706266 654338803 825807714 146021587 297715340 261185155 341729801 133243340 510121803 519884545 739439960 236660516 653916165 347474564 773938595 825700758 906395285 25000692 749896256 566557221 843338926 113932460 493312799 909776181 974489316 31538412 928449013 786447230 830506049 447056559 635617335 664528781 698168558 46249457 626470468 331692081 835432352 475496574 673457854 716812232 785940201 269235047 734711265 435522112 500254002 725558579 850789435 849159721 896550103 370845748 824690076 760112040 767915609 168109174 537221605 927198716 974354487 455746152 515669118 316129015 637575201 560037685 616587420 190101602 855021200 960804294 984165688 993006238 993362968 421481288 561758748 534505193 625559194 495806961 660695381 98796037 303500051 404473074 460307951 141754646 675201486 144919234 355286063 724700808 918731551 496169600 938199765 698284970 712783738 111531550 464371822 944212264 975516353 531000965 677861014 372266635 419255958 170537101 644469659 422117352 954160125 635607283 790611485 753639828 990748516 357661107 707928547 542196856 931975909 908146639 908398244 456664701 906674687 871696407 889635902 603607666 864211230 930009199 985395704 665334188 876511025 376302498 586840405 594834904 978739595 456770663 778181813 330139965 757170613 263079103 274099809 973617424 975667938 77203525 734844992 505595731 793398204 845950177 926754122 476665366 529473748 87298052 454542283 633995787 939521144 193098084 394668924 221753561 779000928 112471421 389475675 280715584 599463074 112425297 826033724 246659375 682760440 241990491 474594686 737873976 772863436 247320092 843391431 947002293 999672441 43265536 559951566 403308321 625638064 841861249 985118200 665778156 757736288 112193578 615938705 993429712 997246503 685616320 690742497 236655000 263932794 353702363 459854634 997916688 998632008 386970352 827102640 226360541 388080381 837102427 944849170 485504718 797034810 283890218 866746733 527330821 631933720 953734659 999231796 395144206 864907159 172848351 498017396 997591916 999028212 1913009 257209252 750476223 865893034 595782649 717722835 324296483 884445883 718121922 848428839 67213857 433307277 641620664 676095572 422304730 458321952 895812188 975677478 619079351 818156594 784946903 916955701 526774825 732409884 10493461 178426306 266489783 615727820 279055709 659905490 162117735 313307437 673274461 848077512 740617660 981213090 821118479 935456221 147766534 314290836 957317935 974117256 224144222 545237120 365107898 494269084 88427719 215445758 171835368 709824417 883376263 951484995 989599406 996448571 596213176 880548866 642753329 892673965 408644664 531409820 764072709 773487888 581981909 745527508 139642513 905458895 201296768 279499132 794875820 867167233 772537769 799356585 816567306 873052368 602040226 655361394 925831321 941297229 13060730 598439228 723070282 913714074 581227609 889271710 764619777 962701088 340563843 791684335 754685181 809548741 257255323 638406664 372154483 702004468 471769653 625234547 226510279 941427677 39778299 656975130 979119886 986178562 980895766 982180184 995196538 995601187 592957581 945086132 458747256 672378597 74880017 551081438 721831662 917710446 550855035 580973123 109990438 198508968 525743244 932438991 389562241 760550410 977093939 982062512 939062507 999697920 390685258 706983650 816757873 913905937 175999386 222955605 308948525 690335328 601778412 706430287 923007187 980828134 801575898 846203348 55078647 98474918 403895856 837563753 836557910 851228300 76930273 452598155 24788509 336375762 963115622 980977404 882212824 962646604 142558197 611835282 86349744 91175696 428879176 593727231 125747783 952056132 55083110 571725376 994677624 996490069 574107124 656367615 102388798 632552337 713862259 949358682 621442773 977937372 566272248 745503556 197438405 986704162 511240863 887033108 205302932 263969311 748678763 793345687 157319675 808760699 75877929 364293992 786567946 926824846 16082679 996459004 228972564 778760225 605661977 707939307 702490650 737112626 646270607 801128427 615578465 639272088 341451148 575009645 588283677 765893778 709401306 766359902 498430523 712183854 707683325 871904958 407111014 817959305 638441455 682204086 646937640 803844114 865375801 955212115 772623856 945355724 276809251 293480303 166488 863204276 446072514 732274728 546367571 633190165 959884527 975849016 573234524 646420409 821413047 904218444 112216076 782389373 451015619 488833404 889218489 899918095 618816602 792592113 670549001 917459550 247788644 703252439 171323750 375078671 991630831 999067043 499771678 724852713 363932106 958926663 502621765 837802330 247669741 700243732 328623195 954487999 63122246 889155772 97098725 976251573 74187803 525661757 330508401 351867387 653144074 907262101 921192250 983634380 224085166 867175767 225113899 675855730 406244008 807692225 112874942 402101389 855655803 867131099 826818329 939807240 827215617 847088987 839292409 994911569 506767679 969386361 159014130 325612020 29993707 605813646 634640601 942384690 765381991 853389998 783433350 823631396 243265055 852383030 924081730 942264652 675931676 888565531 757949417 931390718 739518450 942047042 974821503 989348241 141996696 165313262 658394163 735424171 88862646 992538052 343814336 474390100 155079350 961063350 310444323 872725255 521310706 801204216 230947837 588890000 491040661 514692416 676616359 701117539 853149915 860522885 704065487 871853062 559040086 592901582 968280469 982531789 225664225 630537169 593447067 652963860 761270637 893076248 982020258 987360059 356146844 663278906 931840688 970957401 587408329 782605772 350507052 460307742 950513200 955916054 361400966 733022998 459297787 461217460 782336269 914162354 788550823 884549177 913509680 942312085 139287189 672408011 439394186 463657037 890045701 910258870 215971579 287428832 479086962 583360442 314568216 388938533 78686138 351565234 642817036 741051208 398837388 641991461 384280451 744769318 514861795 847604156 445163498 909215377 563161906 866191875 624089077 852948397 833948207 860339686 347385116 551307680 493420554 909079689 922767638 987620995 674393046 744666912 578118029 685217707 354987571 379890468 47399346 244484834 15448865 647208094 360238425 376076469 439590971 965668776 723070452 940841215 206320636 569639891 812079771 946550955 476510204 810439551 705311558 796478505 444522447 839724342 248837895 592355437 655498549 918307519 936793725 968599304 270250126 796039729 79947772 473754342 815341233 972437963 448183404 499409011 594645753 632378260 931996768 949436640 134651433 913277704 225146297 499964329 601758149 861092324 743391665 893015407 623558508 796855120 10932444 646601658 67267636 715288148 578478376 633090149 419628754 904779376 464885367 484312677 693178658 843230148 899569367 951358018 876801148 975559938 252163416 933629575 513469251 514037550 605451150 785791013 573316986 883686451 574614083 910185836 944176132 962215816 618122099 994488207 888692618 998718284 483344854 530776179 45641199 674586941 434062726 504642115 338722987 872499511 122544716 976457702 624942222 926500149 309231515 798731469 992374789 992702417 744545763 970124796 451518972 983264358 316222766 398260346 265413650 648141201 572584095 995403566 815657359 852022005 166046428 454304078 21705763 536357072 144176531 198581498 43309136 245513694 384669284 423418101 426267651 715382049 690235737 793229662 380761788 591339294 24101171 219337492 406421980 731078570 781742689 883300576 451695419 866093412 63169240 537286692 122176860 790749631 335309836 773130840 565861418 613706651 489886786 749029024 700084811 871268714 987340937 995763988 556911152 600325483 620359760 763820868 445010646 612395896 516722091 924620402 915452456 922331995 304570060 610758807 545918519 976109824 842601770 914017475 191814332 449810049 971826644 995531080 279718893 644550541 195675961 201732200 915989937 982613460 632333012 720132956 313881660 726615768 140037213 911643275 675894822 789737835 382103211 584158615 980455786 986181057 85124837 904646064 131174003 965250574 464859128 907243535 378137197 889748492 32556918 730951071 943523695 955815489 894335238 970108856 90613655 835416404 268713942 903728690 514219454 840177822 40766115 545061594 217724792 385677234 533737826 722921201 675243610 682225101 498177642 815255151 909827805 956882271 336850729 415604008 822662250 881941699 657689684 819123067 644600470 835334597 609581320 831322629 336957665 786872614 153950393 615188675 922695465 995092290 178945955 952485436 157105467 365557721 428592414 687694242 97333829 926522253 839331512 883703511 659832412 957788868 233408507 944212186 606451720 882743984 470718332 747353630 326540130 546296125 837784822 983737771 274539935 534404346 489410031 596718904 709743175 796005317 999496853 999962013 241639964 694900084 252515211 592778073 743979124 775811575 612534775 767903339 816094002 974565866 948199857 985171398 747042961 852597206 651741980 772169318 286260574 716988312 929977067 948662286 575728077 869322178 439676356 496138917 569198629 928392046 558229562 843327352 13482628 714263183 691963321 980845573 134606449 865827208 950209858 988128273 798257909 930346010 249413394 654123815 722868061 844009710 49226456 958593471 567017929 631791832 846884323 937193722 580345900 792496542 814391484 839070327 270624127 371351755 288505457 466500004 15844740 363475112 848963730 913882392 106588451 600266942 653240708 741892255 996040855 998702201 310805818 848029463 381938666 532817127 105107161 871395503 486569024 908183148 691348027 804704681 973346794 986306678 499252850 913558739 122269409 564766080 172138726 517499778 975131404 985058573 537190121 663532143 762449647 958725611 276499961 413020250 84101695 149036611 177900235 250876055 489038519 883791077 685283961 953206685 905915073 983447560 30147056 767225740 980350003 996595433 659852531 730278828 3280895 924150643 509732915 732578834 973809704 999915166 283847541 330706323 122827096 999849109 716817394 924042044 841170319 972181516 450037992 625038749 986246941 992717749 995142995 998936758 208559856 788774791 691033937 700616742 11881936 933430417 628675139 983880586 994058087 994242720 934892909 968361159 737298444 953408245 731936412 866037419 417816798 501442397 618946622 758517326 995598934 995955290 819291432 983659244 403013324 833732027 387868398 852055616 405077574 800266741 967719426 996130317 624995142 779855364 399735943 573059487 174351603 668494406 836901032 940537117 126186137 248178768 190700284 315218479 277433091 963318462 422296905 982307191 516293609 734615094 57896976 579748306 847799610 993191393 525453521 965304563 314068892 455099135 948578892 973921137 376337382 788958914 750539265 849689244 42364135 882589015 217906021 769426341 403475873 748917888 715250078 730332619 258066434 573949835 577407049 770796689 606686117 882243033 218070764 811661267 969872882 994096202 27574221 749419740 501729835 660414914 500432556 938939078 72746152 470957895 102930969 112901072 93773169 313217142 518108159 989568788 552264514 656895903 814075348 862698317 436024384 781670155 991773775 999120896 272687919 898452483 74112183 608448746 995016449 996399815 342645637 595512219 40853417 612474344 9896962 132777529 934680124 998428068 31443357 555485850 901678109 967533079 371085409 842257987 294868822 346032621 269822193 512361957 538873520 965579458 967844363 975248838 744464323 937718527 142788250 404498311 945048757 981602890 87568430 718715142 193343268 576771394 213612013 908779809 762791115 803262082 755485094 841075703 407351791 638725356 414533294 493834219 473447119 929401004 386550352 928072584 833671460 947290587 345812541 485587881 880755837 912657318 833166935 921542243 610570881 638331746 119087882 205152887 873825068 916321334 489603674 780209822 87783648 801555134 708409857 980436095 69551698 958344800 323583738 889113689 210304113 509257488 381580186 737117000 826319802 921374247 840158913 963603219 219441500 950944436 622280817 920135704 450246390 962126225 195405677 581637158 334501775 551969255 95662566 999432069 694312300 819763087 104152664 169590983 893762345 919344735 864733413 917843466 170005706 206614859 769043205 805443551 787591788 810760275 955495480 972828646 893111574 945070339 332437746 360728839 88065940 136290639 82530165 690922618 452926696 541712991 163167797 567538458 111191842 182625759 592138759 852464063 800103886 805313937 398975621 519032867 853821838 860192831 789580486 834344165 826677547 986173954 320822593 694236294 294548974 750104002 193177635 528976143 711178386 806135346 126196826 703831594 171826317 924888691 243585350 495623435 153829834 905149532 563596783 754277843 743802254 825245557 356742418 935917790 514167167 749414551 819447733 996905281 559968668 768048488 355399990 370699813 73665593 850564249 798273889 969528725 392304109 664586678 157680795 689269061 277690771 544546512 980938480 991588438 163268614 774232455 370088102 870313941 340234213 706543091 142661549 717333113 712302469 924424725 444229260 999460418 956228328 960453451 812641408 976946284 109769360 887663418 168716288 900097123 712100492 876285958 24616807 343108551 441450560 529558945 782835898 976496896 972990241 989039344 504359788 906862080 81559627 668012910 377885635 697462690 102953096 409892733 526393299 974994031 622106673 991059923 94294207 985462395 461498928 537135813 173351064 456035282 180386863 526448356 797167957 847666115 871401971 908769838 218874398 794182485 771519500 978774353 851626987 969366161 121545848 626881621 490140653 902554027 361357444 516126106 305625939 438140248 685738265 802031414 206043438 938582268 655172193 980576596 786445121 834572784 990909213 995598925 756529085 981532082 345233821 798822263 868281106 895963369 25418602 335113519 669624985 888299691 794072454 897647566 755229668 978943458 80479227 722212173 132660219 724015015 839913289 975800804 813917139 938970075 649398769 999072524 985274056 996311332 894507776 920479692 696848366 898805885 536051315 564057558 645764981 950304140 985751683 999671284 779326903 909384457 456261415 469447247 75318657 689861920 24251167 817046904 633056408 902829207 982870976 983017056 760329399 997938630 219472334 840683722 899397984 993779930 922930309 933258891 805874758 944938636 388971126 410011826 784341542 873305413 316076431 543313931 934705627 946984900 856198672 924552970 32795004 589692235 97334236 148769890 966634672 991678029 144181370 323154654 984174063 990628025 47275955 643439705 476262464 504033048 418833570 460673763 702899603 710380797 575002163 795587737 418233410 511578777 442603238 594239816 267124540 754499682 446551735 834228223 605011051 825653659 695357204 999516083 882005909 944623015 664957526 904085838 123441065 890509271 616727373 944930942 380885536 758483661 448778897 601068356 741355530 800065526 674123809 995313653 646393050 731758833 263332095 338646582 260332811 874031041 939983404 960148051 249556957 658563820 562965493 580786144 190759581 306379543 825262933 891627539 399689754 419069240 23657429 722000687 676069747 973802586 763638991 903313451 413299949 719522335 10433436 317934636 611416951 750910252 314227130 774595911 119218449 237931264 553401279 573521513 114310168 919091052 682967859 984983331 711026177 879112083 266383147 518490295 780905760 923382767 84119586 144045472 22329593 68696138 612341297 978272719 701424171 980833649 415609929 764245738 761094367 881880971 298601895 784100977 985624726 997947613 716535764 933303350 386990884 584517987 811591773 876311805 602399289 658187228 183244013 729069051 454368830 616876318 681722409 776172244 83523886 939192569 467016606 717745303 114156618 607430487 775774440 779701270 433537188 916564592 495425417 675581120 681764073 844083603 211189341 930254449 892655709 980941223 501316738 654246727 861681227 917552620 134876048 766544262 966331192 988205995 457710831 719048057 276957512 742681380 323786686 881921369 478759317 610967122 864209803 934008141 770516599 977748110 685335166 936447313 764173782 786809678 786640048 974444209 106641568 764921473 34936774 670097324 628529824 929491933 256635098 535627595 980293086 989530271 881383402 889006991 890253440 929268365 628808488 668011486 962436462 967478050 635823213 842985960 137940120 378003452 445709507 503802810 772074364 948862359 628886044 700671694 940952989 949294685 103804995 266057574 913420777 959525487 41153016 252490909 5825165 538394163 454399399 636053309 553655077 563989713 212449194 915643067 334214497 796297059 979045419 988512644 385811955 739740305 500107768 726655920 468806160 676205851 494789942 778066836 943009638 963245805 174301386 679390624 714210036 818519714 156431161 157130158 764100218 879829062 158661226 434904666 446306934 594407376 709780880 955570258 442155766 572052275 486867188 971339289 193797739 734490865 724069764 945827676 574098795 886030955 806285625 884057913 537655532 662852751 989652367 996583139 944045600 977381977 430333956 594782767 213640634 275706064 14784234 278941998 729122556 810220727 368384499 471799693 431319839 489260649 788167073 940049932 563839712 952537525 712908673 924727288 24440243 474683165 290828880 634003475 668398576 763667768 651053996 979801985 186480650 608197833 492728482 633592288 538281040 628756795 625454030 860899343 681852209 833286990 553495046 922359083 62255073 414635282 549311296 854858440 145035787 242324424 232775911 924548984 425832621 943528591 179376978 361119816 493374851 828840656 468127764 643573927 53856355 351879136 522965118 917997342 322790408 977104317 136232646 155218609 503742770 602056271 240967937 889958453 316276869 331652361 96409102 848496317 837822704 904194524 68317215 828122680 69390451 977615226 535854196 552679174 395489082 663985192 201157513 216269991 869134688 972917831 289036967 593547505 601095449 809233159 642826136 709622702 834409540 983369757 80570509 141418090 455589405 829182370 953701799 989409471 779402191 927484474 692102795 784895488 508381246 782768413 415421493 821869993 386775522 504449857 71430621 881306504 528507901 574877999 69858021 440328924 881404059 962089408 264239869 515314045 155027142 701703305 327001479 685390916 759556494 800137009 940823064 998314420 306087918 362623921 608480763 983447923 37931975 715017319 252985360 848955127 584848851 604641155 257770742 304887556 344315949 385661744 193427522 505131406 269773166 476606567 267743330 818221308 54951305 196663597 293328120 930621792 50360653 727683822 489578163 671571387 771270627 814198897 595133304 942300600 517967337 952774248 477352592 544270203 288277915 742716411 44848903 353757056 746889262 842545599 937296872 949915436 242356055 756013429 100935270 597664751 658903703 784673802 839136598 886114064 825373793 907832165 238388544 355476950 226026595 579648331 215064288 623807643 683055667 901675788 976066350 997201578 765581968 944376239 972542541 997358785 24870692 550871932 136673735 610607839 541686986 926169035 963922481 965909383 848427269 904746516 29605675 502168995 17970228 548120934 685966086 829247338 365053027 862383711 839971060 889699509 841307718 951983026 867987054 897643161 318537320 682339845 894628379 999298563 142612465 492630150 83074342 213664458 612958906 663145735 390408133 408455253 242387150 432877492 233691361 638849436 763972285 809430039 791784306 831366688 280762801 362820485 317630323 541984229 880363900 967622841 761559468 964696113 76994418 301740814 332923735 681247677 817040485 974564640 323791679 783870902 144979265 929429705 471397905 647785393 225013865 329684426 801453317 905988549 603244935 685310542 489843963 874991320 891275607 942581980 267935610 540026671 832568810 963261031 778208124 999955378 644896857 811003466 639726597 971136083 656040688 880529493 719523594 840559790 941958603 957885945 407853484 879923175 655368332 933728443 312219427 606204370 924538749 965796649 433787142 897432785 81234923 590408312 914219440 931386126 602310359 953226895 408359827 858784925 317937342 848647628 352381288 521211916 155808244 603165086 367637862 776439030 564518997 894667714 462888777 806944583 605964896 799482264 484907236 688045543 772003168 832710791 637265715 749412902 604699497 740577848 907656303 960287885 131813783 247688148 832569292 931930134 689856585 918225236 175596169 842756455 298567252 556466581 874251794 912310428 39541321 688693514 531227494 947478600 960489796 993926692 596736528 776006338 209775629 665096541 323513374 715360309 19789644 331039711 510195168 550795197 278713604 616205798 740868272 831527626 324191858 753472363 911476951 986385729 525979959 882659193 874315435 934387994 614740768 826166001 328658105 703153783 396811853 882445252 785907486 903638859 381764983 464556108 239182698 611643745 111305994 764572274 950087252 952466690 84254241 206844671 562844479 900959999 92262489 332054216 768969075 978512431 960133058 983453741 187397506 330976646 405797577 628821260 547485042 865921636 119418771 513773076 501124548 894455460 931433169 939118737 368677593 634730425 711090459 791793813 822988784 851907647 786423650 997333394 437067893 703520476 127046876 494130929 249319333 923593878 49030663 686166754 175593533 322325629 497364505 684334897 487558886 571064845 225353958 455115821 156516006 231022043 832724 168048817 783065573 986880543 219655936 957930302 47405121 79161649 451071594 817791844 930958960 986114648 410382096 642917440 605850348 668514873 29684029 692290476 371448827 577314776 477493301 494953816 977132538 999333454 312950104 653469630 815190873 985006768 857387084 974992170 578811373 936597007 483219657 888846388 754004636 816265070 63331996 162349743 613566054 814540438 213248127 278239568 592888566 625641229 866693310 906060620 178699572 419041282 24016391 490447582 796332483 992288244 942854914 994804760 364387299 870167476 349696830 945373547 47023577 836573754 926201624 988144248 613161799 617088895 617832738 863261300 42921863 534040226 766013294 954054030 13150677 217878894 880873391 916628458 933927745 976825946 151445742 209645186 5967084 590997224 123015057 990686963 493803195 731474829 76158915 485115882 228191274 405435139 129438688 542226419 400351675 442146535 106487030 519564379 530288327 756743785 771625125 836737327 343951144 644572415 168758962 888944401 27339107 335364530 758978203 833241652 265524059 700580309 93280918 188304981 751396011 994403648 382367333 553404410 515891018 850897336 354312798 615067003 980528624 997851399 695333927 957629248 605148311 780601515 613355229 818869657 117916835 631142796 826987444 868852201 487973856 560667909 198268522 784249108 793189309 967306571 150773914 969616948 563346199 682661333 993193953 999884686 783769643 925262605 644740187 662639646 186636774 372711049 401074553 478392595 267677296 487180525 977325290 989450655 130213381 245915508 918990963 932968879 997552664 999168247 474284325 864775411 789842784 878466783 60179080 417241852 601526382 799517462 597401391 724670266 130793903 878689066 328231229 357319308 54951487 576662512 48635490 768697895 993314023 997438892 812475675 877993783 845730477 856853103 367624680 912033008 41977641 753859743 514132773 829114954 668357384 861895160 506587630 532216440 428077281 987348659 244265688 357669637 323760099 547528016 702125890 833080427 247878395 997310471 317697785 850101241 890091230 909901181 725641470 944483450 626658644 765523061 578329679 916217615 46074478 974995803 885948986 930760589 816348806 996663298 516973194 921996211 93654673 248299368 361718516 934104704 180656153 789440014 243488172 614452198 431591191 951166741 947979742 967355415 815958546 979137026 522320955 788246181 37337069 106777960 948832069 955037472 499447860 985199102 34710739 245092266 825253645 864516479 326127489 608415694 330814990 993006797 572239371 973121497 722682279 986311905 564195599 844888846 912442126 986018951 411733192 539084411 974700722 983312212 907587667 917163767 913206532 976913113 346158089 617677588 812637589 997011911 622251257 911243627 557927494 901920091 912318622 913443456 870426224 916623407 705174010 970639796 403643831 842064441 377922923 797762686 196608757 384508115 939087144 955717477 620593789 970816738 487888133 991286177 551121690 866955023 684196125 833447965 765153372 821959524 382907537 638120818 538555437 646911158 123302611 171855901 692603417 820769778 305947781 979068043 133214041 465844954 889111772 897763159 603747019 739431897 374324340 698687253 586666983 792449931 21490646 898279185 632110458 795153639 67180566 504758304 506933102 773655786 18011701 635786183 802566700 879896846 544647115 983391047 539356399 892755945 705609567 991969633 958352801 988819634 621336825 739335707 139045250 325697292 895464993 904859810 348785648 496447952 350969182 492108197 663097291 926343786 465205195 632127899 509497695 672864570 53013934 982616562 366896284 681907406 4160461 127103984 216245707 545626430 651806422 660958907 682545056 980672392 505205188 681091021 736967180 947192895 596909259 788643626 603493325 904532239 139287933 442842891 978438379 981997294 323841976 711657997 71320579 881279431 651669209 964314424 313639189 571341406 841134195 966322181 86536837 907972457 791909475 828761992 641380503 793926217 75249245 737826688 511221699 849995701 725987209 854205066 788846406 940950996 178528898 526341030 956167379 986381778 144471884 242614951 354746307 934489941 449342658 672971834 890267761 976301576 919739343 970847503 430368189 627790614 149643141 451517102 213340386 414971721 349129884 776045730 774507584 964305513 799372309 837472272 509051686 730744722 386559687 606017847 355402872 695261431 786452204 920459390 792414843 829190756 486900959 500381076 921010464 976270336 224104486 228471302 431224960 824489113 705586306 967237485 461505111 504464851 751080041 810248966 148391575 830837174 802441117 958649721 452063942 859620946 191143958 708695302 160205270 348677007 939679842 971817662 102924547 926781105 210000955 919690550 77008098 575801919 389291795 998937096 964173251 971571454 200654822 812344179 941739144 957853763 254476305 280280760 443820878 975850019 941828863 979573784 953234751 977473504 738393946 915760555 841736881 972437074 607291954 938884312 189789964 650616130 754962455 982104608 744778601 868902338 107331556 352677448 195889104 672774748 310406640 502563685 503169673 941982528 612975781 985529369 998060027 999005739 113123189 334350642 445756323 453359285 922034349 966703971 989057638 997283379 589590452 723176033 466898193 914166129 309463794 648947364 743488499 911335482 916561132 941184015 867603400 963365358 935813376 974977305 526835989 812337037 340914138 668437259 802367345 950450394 961133241 999874200 66666880 101144180 700329211 748017645 35309045 484220814 430888451 486023352 967845822 969149581 821191417 855431896 787172123 976555952 277233809 656052384 741613467 960067615 188301314 420380268 470421580 737403371 797334380 840451735 329841284 619771242 896356465 896638761 23779648 520999525 945835241 983422407 848639189 857665017 218614600 925984587 957138813 958324326 465565985 859646717 444116328 447316140 555560037 633166040 442130511 767972012 675156431 708814889 550607915 573891755 593007510 644698703 128810256 892858401 521480624 928174681 613297670 754405827 900525112 981247218 786860529 895062524 28695535 917676410 962730544 994900884 495126246 581125782 665044450 976482961 401697240 595316840 771006158 806315544 995377767 999925130 347901547 894158610 308407611 986181178 229971345 641598211 373103777 400341865 57365769 495392064 527500206 929546769 578991723 617942102 964625921 967957812 958648678 974825133 617779481 689234406 709515738 839592926 943962734 947126996 331346019 821310136 930288049 950036533 461844000 651604832 945452714 962857813 52438898 719614413 794847507 890867813 490771738 843458234 113730809 807512689 818975373 829353518 406718445 666075391 26666303 110383087 944960778 994003883 174819219 716332762 903367524 978040989 305856419 920291300 478687502 847046077 296932739 478150028 32196124 502836249 159713371 166610471 894822065 954668933 855417559 986905225 979570635 994953904 580772810 624951119 558484916 656454027 416937664 970547553 745510397 943662523 38297590 462229607 633614528 967435339 751112605 799733250 160075345 670288744 429317636 928816547 829803237 888021658 172815401 645576609 539471174 873601178 480300591 923147788 610164360 703072320 858735250 967810924 811251976 968789927 691612773 967655502 490055907 836470346 470549847 661353143 140765287 641894240 27337595 360292756 373440655 709549185 284596760 421333421 111234496 986537806 123624382 543113030 16261741 176057164 231337321 908410557 435910650 464795000 237963629 384565392 16499683 949850586 794903114 868944783 642396039 802983041 226592887 929376388 187890823 351671910 676400701 859046601 55062101 162684105 882600281 922723748 641317519 731817673 921337770 945881264 652917429 697462288 815227801 897940640 813002780 850495406 59016683 162635977 992282568 999368111 386976057 625623449 854520472 945295832 380094249 811090562 145853160 224752124 188231385 510513598 548928406 645626540 195925580 768791845 584280081 643803083 66133720 649211522 539058717 961516035 852339986 887168717 208086080 803396951 698870801 945424525 891748947 959223073 610043208 782535080 272521971 814391486 902310774 936537655 766786077 802418566 355905745 847027508 236283434 833508498 568885537 722509507 874019741 893221834 972633868 974875501 918910500 989876869 213481176 594191506 971366360 992044546 770251044 844729859 934841374 938269266 706583143 973609016 29770980 961187953 776885952 779937385 320948865 710994493 392221869 540220474 919114772 932023578 144735844 519039736 795118567 805450393 329312385 925519210 528460161 645822755 609089692 707191275 448187677 587249310 246388414 908581169 902877563 934180976 726690368 784057704 327885526 926602829 929049007 994675052 775656673 977860173 907805103 931322956 653217959 798587844 163843100 679447107 83759636 167145888 91339636 451366969 765633952 839277334 303823309 569498722 681708884 794889899 728196279 908088812 859598362 986805695 660832326 842582138 720032019 899354116 965061909 974729401 857864385 966365557 676553267 707436658 863709623 864572887 542394584 876509444 805322669 823765293 757972886 763560987 163602865 299759792 777353485 906695589 317190688 942021427 155309198 926990014 241009094 658012166 18667698 904053495 612779578 858995489 894588374 910378493 754657173 852749024 570746751 799187814 383248868 477233901 865024422 920588990 766442984 881615338 411520291 878743116 900212394 941561202 186655256 746477452 30148961 724038450 988456266 993425585 467047753 813918934 343664476 403724491 600762649 915623503 190558981 544103995 860471399 890507684 457042264 823520849 210733816 276447198 827269480 928362316 433251786 505799535 24935316 384591635 449809771 945452208 618165836 789874089 588245685 696255529 441908272 758213475 771021684 996179110 565417218 926331858 751996057 811022006 364997054 563530949 27691616 224166713 929615664 963578089 649945445 679391939 944008759 990984409 456520102 836274092 191262504 987883268 499651210 991386137 648730900 974932606 873264920 929967318 690043025 926364115 604396117 620856988 804697786 931867005 314679214 858380661 385335016 608260968 331385837 690754946 369670056 509040172 597167578 921783950 420980925 815044174 550028168 853469668 950027216 950422406 981412442 983821830 268651073 700296616 32458127 345317885 425898991 590531316 502534168 554092598 176608870 968378486 767466032 869288179 551920055 914321399 5567559 373604238 333570730 346850880 173810743 928960007 560748573 701832444 603513211 631899259 702836861 898506180 989818403 996138937 781490678 888244718 446391616 603599289 308273892 552236777 997074635 997159152 385397910 541489016 444169767 962043334 463503774 653074091 656389199 953777336 185100104 393092187 604013096 748916577 378412095 674651000 644133203 867308836 916992459 917059527 359491671 705518162 198580449 836783844 669682914 977390859 307177375 873406263 704619645 783618265 339669177 834025714 706967555 716243991 657312651 967568172 99911227 291438853 790334572 963440552 62182755 601911172 462340171 743756034 921642471 966667895 517331199 999776606 985107885 998772713 413644433 925451649 423546477 933638464 109466349 449937160 558092582 770768904 731288526 946607671 933718112 934762844 809928855 904362598 268159674 761269982 767649668 890609876 380623379 633793254 618875129 815133743 759197131 999509001 106594288 662610841 245504842 728919125 824735253 856332692 778394890 948002644 261091345 295223064 255229724 479484357 403158128 611144247 67644977 804511257 408903092 431344055 563157657 624144728 23863517 889467878 605396335 816278529 278633142 341087191 585000805 898333651 708645594 931573350 993671827 994276549 511666772 755659776 880477370 936068593 963374356 988355216 612081928 943063433 813121805 839192255 282477024 954093286 38135518 68879307 283886961 455838116 877627036 933823557 947077742 965104338 412476951 885780771 716177825 968616932 12335281 146070505 450876907 524116022 620699114 713671246 388486635 752785257 102195017 708634654 585912037 613060937 672733519 738536268 963599410 999291616 62217430 398595506 249909681 461301935 855036437 861855952 689721516 862440584 914820996 919892760 62732468 552549923 469803660 942527398 43603248 501069278 392240040 952451075 17292492 915103472 605087146 956941571 675951606 805099430 960852758 990377946 853379372 859403349 334824203 443917298 449900044 969529533 700909822 862493973 900297618 945351779 361490236 618641341 319272452 962658032 612259134 739740606 105687140 515550856 310439043 553122746 31278862 490979225 51633006 458532516 884941556 953622591 520378015 986822596 455672165 486524252 318127741 671379441 647462239 985355917 386686599 600499301 239863083 963503900 2165464 892989564 374998620 715997632 304337649 543754451 786246961 878110085 63710232 590822878 907688347 942988104 949405812 972929787 208248983 614144167 101064021 225631482 320469662 939044048 83564772 149461308 990685496 996634317 822417262 913905359 706199151 737444175 727796876 856289214 300852746 412821146 15533626 559693864 933854788 950012614 910481997 937083593 399061083 607399068 988258298 990197459 205006233 773233513 669226214 988735577 175251174 854423889 500105104 525031918 758687385 831279586 627696583 818989708 742130516 776158124 47339973 80400845 161444368 981241153 96525465 724448761 88924731 399928385 594734352 961944316 854698524 916947413 935467993 997861046 508840097 844799994 348452136 470240183 543797798 743256297 559234864 922170064 881316452 954136915 88899699 912764936 112731454 130163618 816389310 977535053 878020149 892055671 550728668 879404613 55096700 111999452 708289574 892845761 701803208 966747215 457145849 485785613 484249609 861232750 144869191 592895800 502685543 745577628 386136413 556380072 450218023 771362791 609631035 623677648 278869643 999051611 931321946 951492711 226561306 501268564 154891785 162312471 946484909 975440019 827377591 827849157 481425170 527644672 946928725 964228466 41071336 45429489 572404021 855656837 823889458 976105122 194027299 274693043 244377181 998090503 134466154 360932466 681841635 997267123 427611366 843149615 842084909 917949145 447778525 479809006 545295240 969712430 829529416 887264883 191922289 953851996 143153252 390101999 201246832 278083635 894442151 917835806 100908484 244469257 384324289 875515446 89476579 444611587 390658750 689478808 171360486 879731422 516068337 762045313 335512251 374080375 316573005 588712526 241816307 747339939 190382779 857408598 374414061 509784834 945527700 952360123 839774931 972795715 761770916 790623018 888970428 905979929 678467407 854673589 859365822 983657084 242804653 627437471 42663014 726771730 354693491 597326682 381318826 532179367 202040955 761575332 315212078 910134927 126222430 634164845 335916740 628333764 562414180 857365420 79853041 861028191 258380670 300196611 953779568 982125308 363347447 829425600 37964941 950501383 209323733 897081625 814279281 880942851 8065431 668639397 312817889 860324354 745892079 877282460 160848962 747619293 117651829 490217316 636800876 935183469 850232815 964551255 333557430 970037825 724050335 934108089 592304360 963431279 325918303 481383348 33441794 730898083 51166510 486174991 674468026 901603371 734593570 959458641 720761999 811593421 634696494 928003506 481163590 848934595 999084327 999284175 896793295 904639937 855278394 984404284 908585140 960268643 44472199 819195743 208123475 538970031 614481794 943965071 658903397 889399923 583177112 913596139 632254990 961868151 844343020 879750381 184960332 397573761 114234189 205859266 84462651 718971244 221024872 556127207 363794725 757595744 612574130 717083010 391197177 447250451 25447179 821578776 931846582 989985143 425131563 875862350 364215193 742870162 229229179 890873275 847695437 996891014 280905195 890108183 638247209 783377790 889151046 969256009 447069561 584102645 396757176 602865071 979522114 993742194 939329608 951356411 635711350 766760339 140818220 357482096 110632907 343278370 981427119 989332577 101706326 593059051 962863905 975373071 620031586 644232105 517992113 692441440 669114409 932546453 390756875 609029116 670552268 854100629 790319370 842771606 386989705 390738374 365644047 925431540 165015229 335169161 884780273 947012878 573921714 998946554 854483140 978727513 869018296 879550374 884678560 890747623 96066585 411509206 549902372 605443265 419347433 582192583 665806369 794242018 27479217 364701008 934712772 970204487 25470150 836179009 254422935 427402016 826767757 848117933 277613528 603928882 376906800 952139276 584687064 736057900 322968396 601607825 803908286 862858905 877461887 924771030 59762134 912042003 220854473 429105157 88500223 293975993 341293132 780546542 889995541 910040480 697948753 905909896 556402926 831181758 63889422 384991203 239584305 668884761 392348515 772634527 16002001 658249410 75516306 332875407 76954960 454737515 894974917 936484292 887846922 985595292 722022510 778650886 948411582 993440016 277452668 431297668 619037825 685528354 641077941 943940783 228856966 272443705 363012870 763657366 207791746 486434400 18550428 600550688 951257782 995012770 974030456 983711258 430810161 851479663 170818516 319658807 965735719 977178544 478548516 907214758 841044581 849864702 195485349 340813734 460321030 472534054 877109307 892239285 633502485 732918356 177447496 783267063 432975252 941653506 863023185 909967385 737485339 792391012 396878367 927512892 566240951 790214599 620116318 771154366 558414917 922463958 581962265 712887382 261879983 566160860 820629148 998610842 402739571 928857624 148143234 289763124 18127521 837841829 997820844 998583001 910911994 975812592 86758444 843510656 624721628 676433571 231063849 313879702 699580397 881097157 500843420 570460917 210895139 509883897 486278024 557288557 707036465 834401991 810079337 884200606 720874512 778798137 642258287 863623123 566171711 670998089 381298953 644178870 205950726 730050989 855329791 913038728 170975341 551727224 337436002 358734391 99331245 631608262 435568437 951794159 244131703 681864109 746100515 796003332 476333852 786208435 581400800 669626837 64997955 242210305 35869432 118982823 275714106 535706268 702790897 800707579 75237410 332316532 650122668 764498567 818782891 876398628 266413641 872274950 195831175 492664508 133194233 732085101 837376032 896802306 64867165 884491313 167671692 742493983 250506521 905844130 33048883 617372243 158354785 399712843 42036844 432199534 957601418 983943671 334635484 626727185 178271077 898214858 917120360 979689290 241057541 273253166 418512465 763628605 609234921 622178664 587696037 677384893 400200320 534672228 889740824 913377897 589287672 769556060 584160141 915436785 35456300 478525110 670568481 905079172 38816459 116091004 710546318 783845246 626423391 892664004 525403939 804375616 623059258 626114959 700760200 720736763 85070273 800276073 781451765 877770034 974683429 978280791 515754627 936438087 4040314 282438896 946688026 998696243 119101017 150490851 941967322 948222828 50623422 693021254 688277359 980734615 182526911 582314005 326162723 959465044 411763507 658762688 270319829 825768001 454638186 561856684 881825720 918031107 715587154 889541808 451302904 691863517 451359850 758710980 665965151 803358004 896844705 917176478 149908797 360601411 584228987 602715801 497743725 504218998 964638460 971234619 50615035 358084199 257008279 496559458 636176586 864180594 593841557 928130874 225394066 538576599 476546251 781583122 581694923 838663528 275148420 501084081 970176913 990219054 149518637 782711596 973119866 983940881 237839815 858502842 205184868 537510414 662519918 963990682 859337342 964117826 532793418 960762284 319829640 359555672 324881711 783188949 979003734 979760879 842611845 931162674 418941578 861315853 776511833 991917361 874977157 970713615 595245741 743337133 804276799 869821908 283728659 862597032 540626064 861658326 545381822 793583256 22956893 961866373 806988306 878765215 655213648 842876417 767770888 800471398 535376842 627229089 543410589 893806857 433849665 641176546 846619476 963807374 323099394 959196179 724344530 931253015 563819944 813936483 917593936 937879195 459604863 698004561 643997104 803293817 314422191 384334512 84667963 537424882 209336416 812453827 889292875 923218191 700615639 982680128 649086248 992115137 839743414 957067277 681300584 817089352 547368221 825208844 584510813 850044720 839843312 998783755 424758002 554429403 50400610 315882840 41561676 158766074 469749290 709899474 470566402 870377464 185725878 469294365 33709024 385597373 917917929 967914848 233925180 574089094 718493408 773727608 790783392 844197791 704434651 991257670 872408847 895576219 433406578 525282907 351476463 642299193 646438504 763565240 76529018 496072111 412251375 704757985 368715417 370947780 827880922 899437548 681555336 833411227 211851121 611195565 252442502 421155276 537084857 935160732 972850128 984645016 977799371 981288170 593676436 805930073 57327137 391319399 473433532 728720614 924193677 945860434 653542987 996246285 96671362 290406269 571751384 921193649 446364822 935742766 532364139 827692797 421882434 488106122 819826605 905883522 381063555 760008725 387326112 472068194 39702553 604566902 711780092 718700749 335668859 439855832 645254189 813459062 330600057 566847499 314057132 767329404 682645407 779138724 636422201 829552810 896153092 941355124 515839372 822094148 450454275 478411513 701311957 775153594 387869826 761018938 495209159 530536177 492516106 555628556 175465550 397841327 610321776 838290634 144068667 219721447 734502446 838064777 309886163 764790158 542754779 839402679 409850778 424832879 210420805 452628443 952921384 960464600 53811981 303991864 476140759 524682193 894159462 922929256 952821350 976528926 365259090 667324072 625128012 804625542 735440477 767796353 308624611 814821290 591393421 985669270 658892217 976591752 586129924 946586977 167161218 185292642 504710047 928341154 179103418 582785165 999415036 999961458 616914968 965870561 378019259 439243366 886662251 973214818 840706525 899587816 547977653 646195513 763202079 907631964 931739268 965885751 39220597 175855459 517206625 833030909 39144844 514318942 869503226 939995057 163208162 984774739 841402455 871147968 613449393 970764243 209923921 686127750 478588161 824722908 144813383 786928486 428501252 433150204 857438009 992773951 852927825 969245676 71928633 903890935 405552018 704899291 365550541 403164384 253574498 362198600 459997616 722995939 114145164 816460834 765732084 925228819 803655598 828781564 372679834 517605336 630820846 913583408 625767272 744201912 729553558 863598155 208246760 383329937 130671001 839777868 723187153 969801523 442746305 644864844 135365016 153790855 452889167 855912784 808574360 914634790 257878102 787320987 130052449 626251592 331351716 639339592 158872737 488100001 274210712 971419422 741392561 759896376 802809516 894134964 317762690 734061389 932821270 998760730 138697169 847546415 131635058 975439130 229787980 302587208 799874891 865632117 268688239 460997087 17659432 351167361 935640265 991602613 660241743 950679864 897069241 949182538 578061655 763005463 685535603 918078481 580187561 755544018 470314089 876227368 444726679 692794751 831797958 949486736 388471006 404417491 877002484 997001370 578108210 678269305 212668654 399977574 331111050 437827599 528960711 984506616 303609775 806570322 706667224 821603483 403221738 879050726 966332380 987473198 960230520 961500918 736763041 924404724 981898643 995402874 380026734 407190736 779730407 811186481 341862285 850133259 472255256 618545650 629903599 907556788 152812756 740992266 871722347 953288453 59730723 976251516 439176226 887859909 195682128 295879426 611540887 670994321 130291663 182272016 988186552 988513310 934133096 948952895 824856557 914965941 410814894 739023765 827307469 877135480 789807161 807154667 4650760 863609448 861513392 925808134 535057579 979357719 124968543 497935119 320416283 527056663 227561520 711772637 38804203 468766850 483782876 933294353 569869912 888016672 781131761 876262183 198430253 286132816 418422544 531478806 541157878 726453170 122514620 609370542 41501959 700987061 86742116 938025690 783724421 885964012 261655632 515034990 629600680 712446808 854820819 868777611 779213621 981990368 862000990 915807515 729605094 874235648 316244246 892778960 753822924 965133026 291418994 647605332 609425826 838502270 417798567 679688823 583864421 601778362 24238303 905585112 932544273 950944817 194853688 275293624 382036823 920782628 5220359 921889843 574644706 822590050 253709187 585267333 637798606 953635217 937055993 973162816 347992350 588113435 136489905 145048594 695450610 752453797 21792859 820033260 204915197 538887576 4851863 388113327 27323137 271884716 218929906 595651759 615695663 948348107 136292278 608863925 578487310 958077145 227254312 666275262 957211630 971963515 500703474 981111303 748613937 851842146 10983425 498143148 781768290 901803273 488703376 917069845 530673936 673932312 29772152 570552969 139973177 382974289 862808989 959457310 827100748 864507514 359182052 376491085 204180292 682682321 868425881 911190416 802445269 846051664 682349306 955607443 460340319 889590847 880085580 901629247 821910973 966914090 111702528 822367954 352117786 958441083 89941871 864600426 139256402 188778973 462154430 568796907 732655040 986311961 69423903 738824284 86304384 739418714 461783936 638721369 251544869 291752363 724912927 828904867 597289393 846634467 162752868 848485120 784878403 963248090 451979906 570952913 990877359 993498330 585821539 867686191 581969779 613934076 803520993 828906711 561227063 781895256 991489673 998061021 299377735 947515414 877600122 921063552 546949971 812737611 170623991 195637975 935288542 980375063 440175814 641710860 258396827 335855744 465525554 810750407 373296528 576344278 587052376 937038439 463452342 852789104 405004773 688180178 559968204 596751226 901971555 961574241 961689196 997877668 937221330 977928086 857331399 857407620 113466434 852868700 198787273 479872571 325361817 787736610 259404934 691133937 223129552 288393350 804134242 839478778 412223367 718092748 912159674 975353835 921722084 963987387 193460500 253588932 850134257 956900418 541935698 891517336 783499162 922071537 489587728 493758322 777081619 905943661 472655812 736965694 341578216 750052099 541262113 592434702 924249011 940971435 441976953 736822445 209131409 629260860 81369300 524498317 37154563 175753738 851138230 875053189 395643382 420826569 357528036 559685277 951898184 988977160 200610621 819782728 939193997 969905338 376591867 875781416 631179123 952464406 505811362 792609459 841143954 981989159 189931775 904363035 859967103 966165349 55161016 205074935 754648924 818220643 285542012 418240310 548785686 607322447 684562772 948978288 632252108 825332769 332185177 691554125 328200011 998803375 11334084 526862168 83952099 318482261 822437104 967467754 170613840 642073660 67419489 84810373 162445316 569231980 190408110 532781884 767161931 930512713 267747658 374296636 673396558 682556637 37208651 323486565 705494297 746335205 25586303 104458266 432813327 807265796 84914203 844239633 758553262 909390484 118515185 274236821 670115983 700485786 258812268 499209435 991947570 994161960 659204749 831249270 583185214 638800710 168321544 921006377 6296199 441261698 343748706 753615535 509217694 926083848 912998658 966888444 747169389 965848714 569111291 970804241 641386172 737894044 257990438 731155388 963219003 993168638 166732896 500118514 107974684 496314020 162339175 346944800 281568260 906889878 223279780 931936257 443802919 446986242 676289926 773554442 101033007 274093226 976616624 977315377 204377434 599393248 946204180 963980703 979854745 996440198 327249071 409437250 884895676 953147678 47264258 811637204 881670545 965022463 144832496 183662380 406725034 687168043 2171163 115633730 701611479 838491356 742168826 826127721 558136053 785283057 176372537 479082416 62892748 859232529 391539597 484341513 539302618 730349869 960020350 986586370 890235981 942084605 716891520 804536539 731850048 863496862 466786661 715665459 538760073 744707116 93048528 974489269 965974536 992358927 734857761 855735277 932952501 950006987 435440480 481097402 662743991 913723460 207287405 253095634 212809592 278540949 7540895 396489062 821262890 996816773 862608530 885998425 436553682 541657025 737489585 826275658 325323626 632331367 829114214 875388335 529502796 899585454 426969111 489502300 300278786 980090036 126651405 403742649 992819272 995522538 768154270 986064369 860508919 928384536 257408242 707108604 161797541 432636829 637878338 711497501 241025233 790242180 50768222 320506326 236512666 287951553 798277773 948233099 130260382 911715238 320694686 442534869 141125562 972650246 323226852 955305713 902666511 960675592 884120861 979948420 851504063 889537185 397647136 459041879 753740996 951849799 350153721 936556084 690251424 786566066 657997748 932930657 97348052 814067148 406288792 505353761 924935912 930224007 478282571 556052203 55594983 536612195 79364664 393474023 169816591 287518561 738385596 856473034 825083444 871397162 63951812 195702037 428076246 823337492 709046761 876498153 457314606 848642055 460860850 553451407 663236577 666663118 361109994 810868436 117535916 325125813 42055687 618999595 135975926 603271774 137879810 270458028 59527243 912400648 152434838 754533526 520273041 713359427 915637888 982081268 590250833 865560031 167244347 200756472 981289258 985612481 456823360 879545564 61720492 834700104 540523205 929539258 278112872 942053813 109821677 451234543 160932164 844375526 407782664 442826551 425488621 465735707 695306691 950275458 38538067 456008235 509660439 768250556 10357049 198649406 947031867 983254767 474215898 860615142 789663877 796356076 829224038 848837793 858516914 866855586 743613019 773397280 762169078 949047134 659614222 946126552 360181484 923015720 91715203 996679657 456469834 959641862 508821086 748005830 437548977 523149353 667045900 745020668 4532464 95907325 891188651 992257941 904148467 952706455 716338555 890311938 957752257 982083821 388953356 816761026 628589441 866233244 525476029 942461758 671508304 843774525 69612315 861607319 531175945 580103396 36489660 891608140 798335205 855931647 279070438 997814859 81314956 441538069 243874976 946357338 672743022 938315819 273230089 709617547 694298898 708374021 899968631 993546362 934593561 949263664 306925993 864529086 280438423 523802989 796349925 875114673 113753508 258893673 162615079 699445646 267260594 285994559 100068440 418532625 743636886 918773127 755104875 888132214 724601309 996224001 228613322 777821542 192861370 445848118 636327490 783313631 293918509 639549127 724086378 989078901 128138076 609108592 755368870 806074598 38453319 441039327 882950377 931810529 898267986 986170850 720623050 752536869 79564308 192769910 793007279 869255482 119991718 275067931 370616395 590948171 747973770 762580324 915422918 943998122 757042105 828847800 918331428 957146542 505354181 997595001 751819101 753666076 738701986 987281244 641244852 761745565 162188478 698910237 631378272 941090877 493247683 604661734 811537592 856218683 961058266 967538605 266501731 489903736 3427529 575320264 268417508 433866139 73711279 293246438 34014311 279998624 987852628 993508937 805161748 848164577 702592106 896406056 938401054 997063684 403821554 806133486 616967074 955772863 503525457 605293314 997967691 999251537 193110845 307440755 660928652 967842695 647275560 973854691 57900462 684704820 79601380 782698409 268932506 644725347 921620910 931501434 765712540 963041820 626121412 736750142 289717262 527144025 126077820 180508829 369055131 798739196 613668787 838806677 971376163 977409243 894220433 916706493 256371769 488577464 419021265 541709368 493528594 608161447 618548372 699779459 510759346 913389357 895188685 897877809 56716632 145003666 383893888 686965047 591093148 795464071 503741559 753723510 209819455 295549690 918751445 948151623 5733646 880667462 803581491 882435669 119581100 294564956 608237855 739816709 132007318 542199227 625721366 965146487 214832634 745233708 774866057 902556744 156291602 859938712 52815116 389032791 519902981 777045939 513383359 516235939 742678499 973112698 248832876 649654964 164806497 780658659 312670988 480766931 813684292 864242276 615461756 876367723 43485715 273208140 348893047 969235705 787403319 876527221 23005669 133202960 213975502 538224937 111441736 195514103 139033997 510944194 542304552 903726767 290567803 690776516 327620597 379274385 203056008 360295050 662376227 741393916 217094870 355056632 687964034 983746367 506483126 814159853 845917131 999616971 413183454 532226715 923382039 952356129 656936610 963296730 490824714 621127020 847389214 972818416 360580349 811433375 366557717 609396412 671556254 852910185 290485606 865205263 712362609 884590681 58249247 938948155 268946429 658480980 99673596 487581490 685249221 788718858 397285151 587849187 548834619 641597357 97896759 539476499 154714687 559409783 65723407 336514259 188175666 638587791 466042903 868265689 542345070 679136074 309025674 796593396 39808554 344596265 717320162 898095457 405606312 613571346 322847769 623672720 432018239 973481502 549239661 591182018 762955696 930631225 945319341 986136914 182341846 372481841 280702626 988814490 350236368 555245494 249997701 355156800 708823905 927812185 973583081 992659960 599300850 749579947 317589456 420809453 539957102 975598686 256740730 549789081 623636499 953756035 511023183 592383252 75337252 200762339 193095865 742103497 129355152 655076941 700055907 771308464 445633839 675907613 675287698 696786694 782365119 868173124 907528701 935245095 67419605 893316349 25202889 521315657 223248111 948752071 316206802 655164842 413974384 894949690 478119248 691988506 366898728 637811746 589599914 826885769 428319991 919268096 516372058 762222081 885201681 998225668 959847365 963313950 479886034 776833363 718407411 983068733 315263600 478132559 277732122 356400151 305724428 423295259 877260839 994011658 689771805 817955930 294023625 508609297 377162110 624247030 854122675 902317021 281005563 616709258 583573417 828106112 165881464 796938423 679678709 851907250 208687978 771303350 931462423 953031994 551925950 631452065 918693238 999566719 910830021 969317537 945418526 954639175 669825301 829980699 948384873 950515816 609670354 881343655 780435897 827313548 609986076 907717680 74909686 325727708 764360969 917650079 617032853 778392681 155964368 491735350 550721962 763672843 941278215 952807427 266079343 653310219 98450418 964362496 875917701 916277076 271238096 665377479 332234508 885090596 998401713 999369241 130577129 610288534 131553331 988954522 202296467 717007577 566471423 646897773 755564039 889454116 836865626 974521186 989020981 997424579 943294312 979957488 604171830 654615975 582717554 798506308 944881322 972195742 513149174 682278362 289866980 740448111 694434806 934436846 340700557 827742379 696298230 958924009 952679557 993825114 78047652 778083976 849285762 994255449 836639768 910060839 384740677 686979466 810555404 944631145 152716511 873781868 633586277 892434312 976733327 980616573 170369139 672295314 326586243 443007618 654934895 896752031 484533272 623007059 809827698 832834032 472198915 812853887 181675475 600674370 507691679 797543144 365979432 872538090 904552392 960768597 645439441 768426149 351512068 741606745 755064161 918866995 839159723 839553786 365845819 714151460 581128218 778208211 66960575 646943177 534677217 652283185 468938411 584726436 515726269 899832811 501817181 875588536 762094271 866245699 855280805 888264619 510797383 952600568 384236696 873577780 878806589 980973033 30376305 648240516 388108325 635948988 318306781 638526012 321184592 350759001 251413785 553367670 160874089 894500224 252634627 392889167 336083552 867601357 104607173 221761941 474491049 942099614 503641404 736148815 511681528 968197022 869158541 981764650 703389687 945929882 695968587 878395516 130403960 388543282 124091900 126145196 709640669 766146192 95809631 367489545 528368142 602404622 961834957 966120003 805986630 863356887 345315479 557237779 455167183 873507063 493112113 527259044 414619493 781143525 599209531 964981400 842499176 975530896 853950453 923153472 685930941 757647495 587460304 725916879 546432243 659906676 191927990 384959625 16177354 294383199 228933803 808181395 342976424 839885235 469614092 801131677 433542844 456927673 973409797 994273168 307279044 512164024 36688272 835038964 41221337 671558942 46672638 221793044 120066443 126036870 29348334 643205889 110679392 867408116 551107816 753536473 457102446 595059290 896752851 997838787 46145984 903200912 931647196 978747052 132655664 299432335 71700174 837197363 336718701 347466016 605139160 825308236 448771382 961719405 665423910 956750594 588471946 906160577 950638919 965811340 608442792 959277381 773335181 916164391 572558374 945276632 986903026 995585348 151620905 345741827 53089655 430259206 942267054 973461552 627860951 905693925 595219567 798198095 997984392 999474202 263540773 333922124 884995856 955441691 541239193 571046850 676408629 735763553 843347623 923422983 378420455 402712895 583946013 789464865 734854936 783694865 791645226 795308102 173274554 756390879 175015567 677503192 846032526 972419971 644197421 742931336 485189741 846099213 515717733 966286260 102491483 177368450 610901721 705603095 702727147 957652388 322672417 669593075 808681984 971328014 220462153 484757111 998265104 998706567 404105803 441106097 900767612 918947354 454154087 873167338 72620913 233183295 448857433 692787213 569804304 707787352 108905509 916632086 193696467 418405211 756942335 921549986 141694757 912684265 734030360 882884958 721668492 881351694 414292352 848593560 610416949 883966524 901459797 955150211 766813075 986647245 946606317 966277703 923146187 995135167 235390662 601205340 921512677 956195118 404055003 807522556 293184475 560375770 629210308 667146822 236379717 248315688 876464505 975258615 113919265 258059752 33385546 356436418 385015830 746144498 695019235 847769932 516877213 835452953 714749386 847620019 502521940 622887517 339145383 801709924 872611282 981492510 256854227 842899530 230212645 683250536 573769544 741248405 140690222 763890400 28720900 444927140 695779032 911100093 419999956 820267945 193982946 498008834 943731611 998744020 954736495 965366276 131574694 330901759 582181338 965606136 261015800 655184577 536839549 619441959 62922211 304600015 743143917 897224870 220406391 826992967 842384797 939381077 196644991 798430330 454782359 668044895 817919970 877693031 300752352 729099963 759528755 797658258 464693157 952155021 394652982 482197179 786564790 930034649 798868777 903972195 114236922 661362097 535295119 811085406 294861227 529196999 965138104 984175720 562680839 691567753 238221661 836195680 89763549 874999808 115141313 668649410 438976257 833591112 154356955 526612098 464220086 552062939 350792906 961101568 202429256 239772662 890928703 926784956 589696717 741886093 631659261 973067959 685735662 882188610 317821812 650543949 782228831 924825124 49512105 295022921 651306762 771060776 316497732 597273031 391737779 628333367 108832032 480164860 150398815 267877244 247277732 668332381 929428012 997964410 911987270 955936547 838527902 923271174 50455023 227646292 996067206 997084043 223360846 957189280 960591478 982049796 605879864 672979714 5191755 120956154 266221339 681640113 34540091 467274504 191025199 634327649 330159373 667785270 928140939 963025865 208434627 903339847 244145363 947570925 299252858 848258671 853827845 982398316 626922509 629462332 931355917 953132978 557948395 701559963 265476062 266751075 349510944 911971049 235930698 285889875 922892501 973093154 378893825 939300847 784223905 801372276 305468616 397515371 184120699 320946636 549288259 715231366 749785362 771497840 623527295 772428058 730841553 879730056 967657871 974392916 294181824 736473179 788809170 955254072 488911602 863020305 475468059 849587638 890170010 992698699 174865246 501230753 427732924 677000053 63576340 148517433 806006323 914841380 353784128 942015139 980386254 986702008 431182843 747705387 72141864 558185732 430365403 587588812 507328656 761436680 193432195 504722937 631921981 878606992 660588269 744497369 233188551 270116818 668465840 859178330 559398819 923993665 782820279 929547368 895727873 997247916 650062590 871665042 147654823 744962164 347276915 681780770 578421643 908466640 217978967 288529587 767092134 975009320 369811798 800596893 716083290 738775286 670677760 951721964 186804235 809892157 259257645 778005516 879680141 978536896 372804359 841987385 711269830 980911473 990073272 999297183 763653925 863087922 442793283 836462392 333559177 505769343 295127489 585926407 782635261 924208566 476494756 809598619 67859292 96830215 134173355 898201420 382275759 896791985 555971548 869660217 318936746 943267908 515959864 680877023 748915444 925371383 28804654 419189448 261680257 418363493 717823222 984388876 545093282 592462995 344875972 694711595 791873374 982118451 676453639 853517348 449468038 477637360 537427962 728506808 491789952 678355176 92451572 735962441 913744937 935031679 833294064 911138155 184196589 375051702 158800228 160031722 685430140 986326868 970488594 987155523 591141082 857486323 18078552 961724789 970604914 998679990 492506699 732551939 940251918 991705386 316976151 597713149 342161506 543850553 188672502 625115612 15657838 56355413 90937880 238904916 61038281 258770775 839399683 954257922 737704629 841140642 198406384 457691871 283841499 403953349 532510987 720292622 541917658 739903255 480135984 981507778 662858468 819372101 962963718 981324168 179232617 673794742 21076324 440084669 141443664 579854876 70927564 190556037 287886019 953340258 638561696 709716786 177445934 718293327 943773928 951563295 448817741 780737388 781063718 845021986 335518800 701131219 637187208 755996317 374287648 958071784 9113895 295651264 853754148 979510850 212651302 684162780 754590496 813348239 68152670 800770750 104279704 889221446 631838180 875431997 837389408 904313677 878037193 997302328 759320070 913141076 26624526 620959654 785742697 842792236 634336181 707807383 678396260 980803669 821799516 891388457 412109389 967524413 642721548 859103224 762816449 980951545 928339550 951094216 894463582 979473074 837997203 879087063 84297551 600645258 538170551 664785602 538630439 988993842 637433685 858317860 208652490 450977970 457782465 675006545 4146041 411248211 55007021 69991720 845155299 889506876 455113081 537500228 556587934 735775015 780773570 951082276 129460992 561553768 682024572 858445458 637562114 749589337 872425268 996429455 203444025 522211437 410158838 577059434 765220895 897877242 149717928 270366807 899229230 970245386 704029555 983234234 33298835 891959490 464403031 975578288 602388399 738658821 786808041 832186871 309095383 794154261 483885159 799139317 284996669 937127027 782972858 807760098 296278932 361033309 528755950 963714216 382597872 675501508 921555407 945012211 219840924 912700482 942628326 995653779 639892196 875193248 433109925 664508970 713630326 737240241 119900626 504194594 677235794 700499467 245992211 710115831 836077405 849503587 717495104 843659425 290009775 480194826 901175304 951385336 92880916 456676232 836940143 901318433 731130820 968087350 234707077 826094493 572885051 621806477 545250094 749126643 598148404 959868133 566582907 607287447 846338347 922267200 340813868 557607290 614325293 725241841 759353221 770333099 191451844 715398914 936363422 972005207 759016505 979084509 661924239 672448573 392516476 486522175 126136630 396378261 204430175 505866066 941321921 955842912 503421455 526670000 512781217 515909706 946980818 964779562 87797474 302260473 930694209 993330352 37578169 587207999 118365618 215255292 141504097 875900851 791112073 834298614 426592232 629766258 63507518 600207859 69229212 969160243 425387993 765964728 857687634 901926440 741570698 970943264 345533373 616529598 508824993 937490017 421998384 454260088 751544863 862747024 178487061 306747274 61679185 296201803 337782670 482131553 293334999 537740253 58619805 701390583 612145218 669414773 780185752 937612479 546584289 665160468 189857060 591951723 273658834 640757685 970239940 998081827 176778756 468618712 938498516 940871432 117989905 961384604 474578248 648554817 661907363 986010705 576365503 693758223 432288730 688482895 645961547 697665999 898244470 934369893 606121157 673854369 833389233 910362010 768065421 842757345 189228754 399894400 389458791 806945879 992130729 996621729 754576622 979538154 860085812 985565546 125642428 439784250 602897226 752155621 514309333 834184878 790784714 927672065 772962472 884958777 452813536 966321589 161887075 976830383 636254272 711958900 719983846 966324448 848962779 869987172 590851298 760702063 235567105 738846493 226430082 523963801 646536999 885428167 295238649 338860988 94430460 339891197 509945045 825849800 343892741 722562888 933621111 973632954 115332974 131328541 496747698 843940254 712576290 861421946 768789659 950165214 473005016 726690503 168779687 591657480 724969019 837820408 41269652 354567913 673372618 764791342 279396468 989337732 549152877 738305199 522825396 973395366 928729716 944351008 523792179 818381499 702572279 707675301 678250064 732771310 126072416 422187422 559760012 597328473 782848198 953274855 223457210 956269544 309288694 905701329 475007454 499804348 469462750 768689872 9568632 79946447 648888508 841566126 861291256 974373350 694243372 859843689 424038983 707348893 51370051 954856304 272120688 393012349 297236086 331357662 115134358 914582962 620512305 833863599 157693343 258980361 171742585 476077242 180901546 638285417 131426989 267000962 422678659 764068126 236002200 582229970 618976776 719808363 367206435 870181454 212592483 742689270 265113031 442102661 226036504 308106391 195404121 772353258 885038927 999849326 390769230 628635312 17376641 790361730 885490193 937018631 471556775 711176515 603034385 981440094 263877026 575389960 851078600 934945983 491359907 881865466 138624547 713833576 64926470 486537332 629353310 674810543 141252709 441290377 26357145 138426021 477615568 599438121 509936785 985286114 96564639 767172257 362484152 972269203 327135168 824109432 102017537 307293365 522287020 642017871 385158654 578869158 458720206 996876339 625688276 882928912 800463084 819974774 191640289 558416245 245373848 305429855 359044770 816766970 796363645 844808519 178216738 890777700 492529459 606170162 685091623 939941357 355157302 728634259 927428544 940088272 982181880 987608976 22976788 867398582 24540930 852130697 295451659 840744965 401269487 429199992 326828615 893068828 524245210 577300444 459243394 670082020 455234863 868381295 256121510 583122664 686948491 964586459 558619712 604107276 436451201 914238514 375403329 896542003 628662012 767505231 369892954 738553215 259185854 872779566 696051545 708403410 413529904 480395737 268768172 798328523 230681114 496910256 871650126 986540881 755609125 985203125 301883392 393663369 937598880 972766160 602022559 765877373 180358577 215708536 988882803 993790935 452614123 885712489 971885627 990660464 980541544 980781866 87121035 235511560 648909397 652473634 711519005 856970935 979068143 991622842 20915136 150635732 580066777 887414729 725523561 995917796 336268566 416850579 2020177 212071656 498151032 708922041 468882802 860979002 745913535 916152314 258557275 511370719 363250220 579167457 345981366 732986909 716504586 934319021 681581077 750646050 181198735 725082861 938561131 948034758 960596304 975719025 370444311 742312612 996123890 998491393 167991851 909735422 436804989 590018241 870249489 907632035 339375540 760503798 950080216 988908254 249558442 939195951 999378855 999760040 119963297 856836140 601995210 804871027 967690150 972697314 356726619 884988723 114004953 407415547 871577744 878189827 138773138 681680099 809538362 994186023 759274187 873857884 181912689 554832121 710551610 867765052 527328444 727702458 400238288 716554175 153514707 202675304 851977216 989312465 439019488 942864866 893377657 947203544 999522757 999552349 466286178 936998356 299529010 960056513 336787014 687228794 898863968 935340816 81709078 87062524 168548818 584377464 306476586 687088835 324647133 469615052 830551539 856322899 180849991 228707929 393541026 757152466 645809388 799468164 409408033 772466936 221292668 890405264 545988273 563596805 336106032 747423170 20941451 267564679 808710033 973296062 45395146 331244201 129965191 200123005 347786383 462560053 382164970 467095830 571402786 821427830 610547079 963945451 750235050 954318435 936895746 999723455 459620693 633240178 919536398 977845223 696300109 923541609 365030894 690298131 720357173 951640285 318729410 991509154 318612942 664902515 615893945 729796829 319536532 607337190 35522711 170671087 394358682 901217577 536314155 972634814 544644605 912514584 149534242 310459996 320117305 922342725 564273376 676945803 312153569 444844312 342693351 817383786 74641392 914764764 567209174 768347162 819589883 822834414 251211241 427178330 192674487 581676512 773112953 948745479 911572390 940779042 712692726 900115448 943443498 951661637 193430783 734837036 939962518 990777247 11114885 248470605 419120921 988465500 578194418 690554325 218837566 616092036 38934128 975101354 263280357 648385720 681980840 881291548 648664687 929600954 450598253 567611264 179489547 743570362 798522112 872006659 884956945 900849115 166983061 601029947 220186884 914833456 897266867 992648865 898495854 977405606 735519956 737150777 159844325 873640805 547731118 970771565 37194059 725570881 96481231 726958710 968193246 999483204 626007990 797528319 365144746 874565757 723293310 979712558 379028280 757450430 653922486 882634664 75325484 528274979 457866369 796254145 414617266 575962391 394302054 447369559 686150268 854171477 183160819 489852201 737376350 787846938 490329221 891347717 698869854 952793854 418195585 953333312 897597906 963027658 945383959 953722494 698018103 881506735 411250764 720691407 506233918 836813648 528082068 956865486 157669785 198040151 362697748 476189043 261011267 580267277 684705012 928739276 56190579 732097580 515512599 853847282 356388204 940002865 740717916 977794644 507472625 766345138 597753602 656352598 669697553 693659996 546629522 570490748 387815472 728293293 882165072 914247774 616402045 716265297 496622953 981476438 774229934 878038333 595047003 937152297 292271080 979534339 309707521 558602849 334432003 922279277 168083728 635378218 718688050 851836692 980662416 992878467 764592808 978666044 613290704 736920350 315348767 906341794 757131568 781061423 257483836 585481935 402027648 994504917 447773028 462796441 248558954 517676747 718723961 760188041 264629027 717655293 347944863 619056900 82228108 864678543 932636747 964826503 954650252 980466220 639588540 668207491 572924252 957030832 856877928 930752749 847854965 858677722 347811645 880402732 211408819 423047596 104522351 753066958 980633963 981118711 271925252 453289698 88885331 752979120 911356775 965809339 144433328 718039646 9499800 60094028 733039394 997142850 474380899 513934337 79241284 523420217 677406034 725052793 776319817 846272920 251172738 790196001 605833279 826228026 129803711 874805846 128258442 314310592 16488837 105927544 715341455 738238919 755470419 888327063 825627525 854456996 246904862 589345712 99155510 368383768 250877806 894926365 807572859 896404031 928285469 969349736 177808195 547067600 137053766 567907316 332493042 482103827 41089834 203288524 594679916 855013035 134856111 859435972 727904944 846193380 640496725 904632467 463336280 878705900 461592030 470239859 61777758 262219430 792896216 902471514 866517575 909010484 579742432 749869881 468245418 686251152 276838678 905724256 921203058 924004043 933509890 995118844 691867481 758785669 777564653 911433694 210234045 964204200 625051999 983878637 802184367 828829433 803417605 906061081 617237260 865311538 138914095 157714971 627739251 767652659 340898122 401058748 776440396 796208794 602673462 621025751 193009102 247303343 214447692 745012609 662078126 844999122 932963833 935815831 409914392 750770743 219587433 423099364 363402006 764895920 586193373 888957678 118424609 443289994 624795130 917594800 273693799 621601765 872172357 932855767 3577574 484143486 543530256 598018619 715896597 812400722 198380908 246420920 645959419 970069675 101758224 367903650 930374318 989498515 613978344 707066965 739157339 883767903 171518810 504453458 408942029 613302531 89255265 535875528 648277149 951912691 512655534 967341278 875323688 977460542 143714385 172359815 676691986 785243246 615408443 685112388 980872980 987788485 159539382 950704736 74267929 983407451 795310029 913569369 11986863 742966278 535310325 820187879 969083252 978729772 188100096 213103088 715434277 969783416 313481203 808272218 107579053 467971459 345869005 682810987 914810598 937736739 353067920 366592974 223856950 854928566 500955910 623012509 519179786 559512046 2637781 774511475 351942924 695705809 494141192 502107408 80918834 988714115 399050638 656351237 720450734 937112944 510553985 900966337 112986357 362908529 492986145 874118458 801694039 950772273 396408944 511977515 906907650 917570882 821411288 837582667 164381171 379561687 984849194 986217095 53433031 186233141 42704018 839899409 838484327 938564262 296901501 298367250 862821661 948905582 129741705 674751558 277370184 514702156 482700221 735560519 394025469 758849310 607035372 926532125 356362335 857697227 18670954 587839287 219793256 295422063 339446164 477155401 674386538 839265703 733911199 838654497 216302934 731083397 561631324 698499839 571727890 831641316 204776323 220724051 133255920 688916890 252150874 709060722 224605384 636812371 137696517 887783382 790947720 920449723 82296390 95259246 127200137 574589890 710080154 840884660 304393443 344945261 296184372 932488339 832134289 845896183 187141169 450169971 614025413 750133742 232765239 968451665 571075033 634872632 179589037 970991934 402096228 831914105 750431810 946335609 473716213 569130390 103893075 746221371 407167435 746621078 130854884 686110956 705843440 822132186 360440355 438785193 191813053 389207810 256363711 905694696 275323610 298544116 983173865 985985327 734958268 786090031 10568771 778684993 71822861 339403931 581888347 996833418 479872237 672352405 958378172 977460551 165095370 388325171 995719504 997679553 102959222 771887668 328392605 847951447 848952643 977444240 41699975 190412128 929800844 956470388 796733115 892900233 638358943 989159617 685592456 906607094 830476747 849714870 294675024 576433920 195558625 598303861 859605986 874433977 779201874 795349632 362769018 867182452 307393665 854739817 216571399 585835443 900666782 914224970 481555070 764250597 387869240 421521750 865356546 953766241 114029894 800016999 810627393 919137917 510507844 596420202 649959565 658654439 401434312 714727690 880816168 891132998 862896017 908083599 875115602 961128883 592085411 996649137 943316045 963369803 422103717 945475280 250069094 415832078 836630808 951794937 354317166 955383142 442747186 464434192 23555678 927929113 15685921 828500785 749101237 846546227 903693732 990943453 906246490 925164552 250401271 427403932 709787406 737916951 339010979 825909679 474180144 766822532 728298841 854318077 352311088 977583385 59934014 407814850 546361304 605283574 548376354 821841305 187440893 879878665 444343928 670744735 887403545 968124387 920861389 950145103 716858639 765199306 371920272 544900086 928160659 982492446 502034322 522208163 736886139 896162651 868348612 935527046 50588353 755292452 855113167 882042431 927299170 982954828 974808072 984867230 84967714 481125252 733336399 739591507 251744936 692268035 639882160 669099407 685167886 845070600 923221915 973990485 71569575 84454416 752336186 883171047 618414122 947807704 669325138 759438139 285870327 612457534 191105977 919453246 831926893 911400491 973213831 978061631 414563487 626745049 970093676 992511099 18366878 24647962 144756979 533625190 411100661 944507412 909002840 981658348 644886855 931921644 71731441 516866566 469526097 496734256 986930263 999466172 228904540 399454531 76752393 426292667 16887754 148620515 601838939 918548645 443426733 651613848 706477490 871797027 93696399 715512960 802089874 836686009 604884791 685011398 997342282 998316821 732386675 831573749 419342002 589883611 86549095 321512385 110635848 409022954 605829590 875897625 378168740 440274145 838241984 976974175 474802781 542298023 218520575 273881314 771137267 815208145 224872230 331338285 495125301 632871881 787393111 813333514 805642963 909457405 219652669 259123553 36827379 802361768 166412607 225571995 343738843 784164601 170676600 294568523 735653838 994118757 979382094 981241244 847800184 906466285 112677361 895187534 978630094 984626028 361559641 762014287 141281127 834653977 579887885 994261002 43849538 967576857 805897291 831671470 221384914 779192910 925762841 949175308 327375389 583204244 486844469 732188673 50362040 555546277 659521185 696193189 909507567 947774118 56746666 267923445 133234827 903753138 563885211 763087067 151009833 783246485 64220367 435464883 659442564 750610379 192200148 664063937 783772717 795234279 190049752 456331004 108361193 801304518 145680521 993952185 283084690 989992482 605663246 759340906 958729679 986528557 697861015 755686663 28063606 269133517 906253245 957921090 508799058 669714452 757375373 787743048 8041512 506954479 545754935 556856808 571142284 592911801 761013593 956023452 724752361 755589249 869253030 881438495 49345704 356689394 831165099 948072976 190624914 871142897 917188544 977360862 193235903 303424837 764228857 769449698 216916949 737488546 891848435 984918152 230329842 363460574 602876293 920417840 406709897 642810388 230374705 922384670 724277394 832799195 552476288 912769834 688623077 924187941 227221803 701245516 102092085 703510652 39329359 409193705 435691250 530762500 433754606 844681532 754657185 768399896 818184099 904246254 949989420 994866508 106215729 210758368 774974521 828121568 593898927 653253715 872080883 999582530 856907086 988104127 233826365 692405339 342509554 668905853 626037363 791467095 527923419 555195653 984661874 988004870 778223439 789828324 831467892 882368102 100996038 863505023 489889951 913816186 51280246 540455482 203350654 312753046 599525604 903416295 388237803 436978576 671636391 733572378 955974157 989901481 36448839 69833882 811132070 997004024 256995832 647664696 537795910 724557301 859363639 932589331 527456590 765668442 476577834 556191802 228865875 824548641 206526453 590163974 938245154 988149575 324325394 859630884 54744036 72222093 878784271 953055474 648207479 852397102 109127151 578103555 698352901 845712203 230349999 944661240 926486145 939756521 173699682 634221074 411746877 552043167 689278553 750425021 344076251 445888084 87096654 459904978 857511550 952403158 150089950 374415275 82734007 146012842 784258124 831203046 223692212 955754924 134646310 361192137 149110201 231575414 730000613 873184821 799159236 813973466 803987847 919331683 840828581 943554079 855204511 877246400 957962478 997950855 287864884 885244710 310424764 573618545 534382679 982975925 724345192 745259425 888736553 948559659 731717391 894960410 110322982 776480781 607342879 674807655 564018235 895959949 793956811 913104169 600107723 722192002 184382086 241998780 513173752 793671715 466213181 530871183 418803767 539783993 407893802 805717521 826993151 991658517 453963808 898372789 74505415 151065538 65490504 781928466 972580129 972607956 157336688 292680719 200102943 283246974 74645081 661434011 349736112 694719159 900329012 902577875 110106916 615451850 482749446 734803835 289168246 385896523 228045111 679819280 674615602 824840791 172502540 764206140 710580322 802423525 421772698 741944501 590650656 672499204 344879090 973987922 727516356 852879395 691111798 813764367 405185722 674709352 285729542 350558285 955016109 989920958 448155157 932621019 138657558 280502857 155145027 195265242 907475543 921260488 29144001 623800091 951929364 994613633 683862519 883943689 788320448 986434002 361191068 864805575 392666958 812701808 810328030 905634386 428095407 966735817 627531217 674304466 537844882 608994551 888824364 955407787 771705851 927631383 903677474 933889238 755984638 885635698 9518900 268255444 47989084 343548299 844017989 991063850 441756232 524892459 933476505 969506052 219502353 223583589 863200831 896092754 203678562 467033477 510176830 850279327 954424319 976021548 306566959 824503799 7265904 906066237 437171872 856583449 290325095 663662491 240746369 286518288 729758195 894041600 791337593 894595214 324730813 794702766 206163621 426127621 70878840 524593362 790267709 892471214 507791877 790178032 65784399 342759527 962933402 997037499 674681544 744725698 394379146 831756549 214503388 337814646 619042264 621820888 313107661 417361861 808521182 937349320 185521674 908737754 330988411 653014851 164805150 335803850 671102812 719865942 800312652 966047318 893950796 987205005 970323102 975259998 120227161 520436743 868864186 942610283 203165372 901714067 706350345 901107280 460604888 785281508 428312962 855843185 351682540 619203426 950849250 964196039 561076586 705273225 165824440 179014727 238581717 383720849 529200201 581029291 188280989 529553494 563230783 603999742 769674461 790750346 217558106 500975391 780006043 898165612 341696468 596726354 25119988 858896855 854693253 937785508 980131361 981941947 69410007 802448882 291307492 654740988 255039403 777061301 623154345 869149845 820641447 870226857 604161107 991601171 613222776 882126205 525896822 553816223 244070205 388047196 899065975 916543035 30441713 661454830 742524758 983970352 53991737 805444250 251389020 754823875 628546413 990000640 841193846 864698559 492221455 545206413 561096612 871891876 154914316 291087321 147161074 774661135 906782417 947993167 332351123 969082353 171849642 771959742 999145215 999950207 24353225 530514699 83768275 545632394 10014525 671770154 339332975 977739755 447678912 994618670 959355443 990202318 891632076 948061327 668899535 709829983 983873947 993105805 490313171 605020717 983332900 992417374 655892648 806621033 408458898 992013008 747178596 787315102 101524906 986962858 637141430 935626593 667166539 952486980 221219270 736991821 900749997 971678627 716397165 817562683 272589159 358823444 530585861 984401235 580755226 774701810 427671115 909714411 679207243 685072306 255024682 783913602 795903705 833158957 336709292 747535354 655793396 885234979 651725491 807847308 12722670 879347713 980687432 983604332 470437109 516851445 610551689 927934861 574924393 648490163 322512620 491681978 511413365 676109391 123410847 612025814 877226647 953669297 988131707 990496650 127042852 316957178 798220822 811826789 541945715 672381258 489223968 551495526 333335960 513689767 94986969 110594547 25537713 390017438 873444631 922897845 800561135 877864234 626695310 709189557 726221038 791492731 347522713 837733709 48709622 540644542 229027519 988045971 208161209 590907163 880113993 946293215 731528176 867913221 219306359 440140118 137865971 337964508 759783572 835434392 247256447 647155236 353570808 807339855 936728144 996649493 42566792 311628194 261358023 832888358 842737732 869538510 68252489 443188101 688823209 782590640 337594728 424586882 82468163 183421391 735455748 797322092 893912597 911239795 43911057 854330183 606363022 690753542 863575722 938085735 361324780 478626782 619556849 983422393 532477873 728818681 949476346 981064554 522413674 909463725 348033755 982661027 183479865 825413793 148228721 389090388 633932946 911275007 718545297 933817454 411302302 849063237 473711582 602760830 553383703 726605822 720423748 737445872 671659005 701027509 351815699 950396236 265834029 667573442 975723995 993078685 447374827 607885231 466408014 863390152 349834169 413648840 198953518 400377536 602111507 961760898 879430789 974116832 652743113 721756875 958212768 989893444 894377659 908305670 648191578 706536663 222432883 918867991 237726925 332818827 295412092 372435800 651666553 721807320 923459802 990944630 73722615 542454356 659245906 999181163 398323637 962093701 967366149 990483706 668697157 862989301 351269497 981478927 66589522 98844899 403537071 863260353 685441442 802798067 927997306 994171409 585885567 737503821 42968613 976009341 321119327 804196165 160664631 565524027 143861140 760423469 561581518 736675987 185124475 591874824 241320791 653274685 304217225 750402724 711481196 761110292 290913242 304765185 32205823 818838963 921138168 942402573 495878664 874875829 987725934 998620499 178998591 345194492 911645596 947713174 184822595 213776328 997426053 998146269 1220210 630183040 708563778 739248813 109367396 112844228 499022507 946303611 74691050 831687575 25865809 865847750 690941880 786508473 248015016 325240090 338375101 778520391 324065273 386998678 916695861 919291652 547724706 558152146 530674917 653874699 687682543 952395643 335796020 348666747 87040883 193305632 598032351 699716857 303708620 614116752 220818951 724587045 289614444 831419365 93447282 132112989 629316957 808952922 118347547 950666340 974021601 987913633 953333524 953727233 375706179 453877282 419488681 690203823 202920478 619628659 208155261 801609654 676894324 760713534 132098568 583568128 770078659 840064003 917524226 980220196 364864176 936331948 414764724 708289146 655477896 996786615 903516296 909816772 15279681 286468803 641701674 938891845 71464519 578764358 113662640 802955782 583720361 989151024 63070484 885136048 683685789 965651280 585917868 861451517 408957299 908056479 375387447 450347473 87336452 411495938 272609698 735720587 223909973 835881669 463939988 760961558 335552360 396781834 114178979 164036137 120738640 534822289 859209519 932450560 72808289 307006354 854167928 992557725 626555564 781360201 127447329 698786115 595281485 969242791 826757360 917202375 448389199 759249645 438396967 829817893 197871378 374392373 20230296 162347787 284812657 682182390 629342190 948630974 12013479 118684417 711227859 845126748 862995999 868418998 301899778 762967490 891182339 998984600 239281321 285606046 395078644 742795401 804338551 965898636 406190235 522880147 506986308 710237201 378649208 698756112 773247486 836806467 844655033 974003048 408980925 468983861 653107026 795620346 717630977 928958998 676583973 867857885 341808733 452491655 888992536 954916948 388006591 992854664 322442659 672676689 568264018 807282602 334950040 339940585 891263878 911399023 687977759 810161277 239102881 492999298 182468086 351332338 45769061 860525870 368725684 405357027 850664641 957172840 833047144 966353984 891304820 920934827 637906194 861464637 547933476 908780081 746913021 960528787 494139253 660104198 324467971 556392063 123672070 978358252 690592438 806264889 375979556 682742000 213102156 414569798 434784996 936607827 161969308 650588753 492047527 493135670 39739703 97315680 234478711 359117623 66644858 399786617 206150367 447415080 487932273 675887916 549355330 635457453 172523109 670694175 369849399 436418895 801961848 913953950 354438170 850845544 250777913 445819136 556154728 878644161 123862364 546646127 923520316 982490324 242118508 888985802 406148572 597358017 491017046 822453096 764613021 775776334 280449281 963920678 459629100 936520367 76651509 803266940 545950324 588292868 221695466 951345316 993386312 994925086 114274981 217227368 571292437 656305668 125350309 463699548 227100800 262475874 609235772 938511728 523222224 585721814 420324541 801255395 29773853 650526967 269023113 970545367 833512246 912196752 793204519 952492489 334152146 401252392 6577050 673429814 496058881 557012814 787682437 813109786 218222444 306976591 807598991 828867554 816517466 955511294 896797292 929163423 383535432 756583672 498096581 580395135 468881525 593810081 336967860 468302209 476709795 736469140 193578468 942081029 801604766 963618686 43744976 530800481 778487954 842497959 899748204 964671849 585950134 761989493 819100281 919378192 478922539 565211860 26031562 260426227 898793464 983588112 275879359 292870684 386152604 827986854 95608515 307422158 233256537 664256322 905393706 909479729 799672354 934828369 35034717 718259787 408579891 963921609 524361090 668326486 24884651 196239110 275916044 671530518 537834558 609577858 53657591 186095262 387270714 780064767 335997034 776003494 350619872 636582265 75307666 149146866 704049964 970698243 738919618 934066107 915733466 915817812 194518565 773353256 193238619 884368229 820875120 957004421 825284662 965051894 471700836 660512703 905713027 959587372 264273088 428836155 524679708 920537149 898380494 946442030 124244497 936091054 611275629 677989871 35918919 318730869 107360338 514639068 201438787 486666963 908233669 929313289 999169396 999536423 497246533 792678977 13453287 603102941 6969627 782565321 367760872 966979144 283635763 500988716 9956378 207730094 656962419 880421303 176219247 624851621 406597884 493186190 755193741 892408676 447383503 940229656 347638656 419251792 300554555 371626948 489096967 642757868 796135930 962138866 628208531 802009162 350214730 415630820 816532733 961077614 309281314 948260985 576323485 805917950 967681895 977728611 34494511 602859948 897976473 958793908 476180652 955164896 55092293 856378053 307204919 869971109 189736682 199934125 183788428 654856304 922326145 975604419 141855155 980269893 493643954 527197098 689437368 900506038 467498855 692888692 490095093 838041886 560043248 899806135 268923452 323824409 16861409 533015369 144801081 711714524 845547246 927836985 782441675 996117320 162147311 244487257 786115344 861344134 859500729 946973239 197163737 790404149 403524245 969144344 37498051 227607951 501295443 978725484 241558945 257029247 372644672 590830262 249817052 348889218 114268438 954147139 602190316 608142220 612171951 853420479 574264484 990328584 446565390 928083194 695230136 778681527 313250158 762027642 314964689 869746367 953130700 985225602 495607123 825429935 207045901 305418278 134813197 187173864 98064316 560130174 709324549 760548137 589258879 809607682 285008399 530142928 329069433 601848442 800341424 819994473 949344597 973973894 626979014 655433963 483315191 866608358 830436785 994521545 330942831 767929104 25365239 103649258 259843060 988466065 845633049 908681673 25308471 57020190 223540092 630258896 29223058 219217809 681716231 767810982 674425662 857450168 786638083 898819203 816147400 934369818 881159833 978153564 127721931 780516586 751005209 799967168 982739582 983076453 695665242 895036488 596828566 625034689 371944722 926681726 396820113 793440356 731855857 784015385 706901815 931306701 806768945 946063614 121272963 449762262 655797469 906306020 93036612 951906049 41328770 596552476 269280132 430722938 123047998 677963271 693723714 992191008 18941410 601874071 770974408 932183192 396591220 718968707 540051585 571782389 524033878 839449322 27032670 147333745 833389293 853773672 833867489 969656466 891310549 897419340 195361515 575065532 743947342 842635770 415594237 993658808 915828365 949760859 316070153 921630220 911422444 932077367 516509154 538642778 275412448 329307254 894786718 977248749 966206380 984239042 915066239 977333220 931641427 978255259 442434296 834795179 444215077 522365107 542086347 643763753 931333727 937667703 975268263 985195242 411120814 499334071 851303660 935338220 684451430 690180516 704065326 788633146 684769483 940770616 500743100 794322426 948799128 964164187 680098849 779989272 934027581 966463274 256485184 580110065 537645709 630111166 622118384 657774072 428198869 849643855 956465863 995925908 369377989 456689155 260928940 581579661 381040351 872366804 611137010 767885148 498593539 568851528 806371127 831959628 975557954 996534206 113959846 759710611 868100660 968992515 80325921 113116835 707386209 957540723 102028144 466583178 719527242 953166424 115599634 435529080 523065042 627152467 476273377 532087203 953677410 982938374 314622854 986852591 352748871 964631857 589472402 802389481 525301321 608972628 366571527 520445991 490566439 999055570 280648186 770586106 399517957 930278854 192546865 972809916 284465726 800699572 63493804 460699017 241246879 324599609 24879957 421248895 470178668 974203624 634016156 769292061 406356355 942827711 491466521 609918367 16436942 684952568 165078819 273629727 927643834 949379022 173648080 372687568 727421662 997096911 153511032 952521405 165719348 758739595 405728709 719011621 528256617 662478406 992208748 998790827 439844597 992807664 242424671 783869661 200688061 882029400 175074800 853514889 836611261 993469526 201390297 626385122 920204242 956689380 984716325 996820321 728196657 729218005 678630682 854030901 999652029 999812914 498874769 558387709 757178759 842253274 124406954 626467564 503752607 731302016 33711888 156951854 675753893 747383317 822435608 899591565 763147579 910960883 983910960 992307950 858366873 950862669 123343791 870409603 937569060 969102415 765826492 773140842 922574543 968715717 37669494 435725887 961833143 968763258 411169583 986823583 852276584 890604411 304385734 790320698 597382397 683447080 312215295 813032897 903694408 933337848 49058567 792732770 406372056 626725877 682356037 702687078 658626820 755659477 901156619 917962348 669494063 793148086 235651067 551312279 613608183 933644475 891989259 965120600 867802667 976684252 670032440 988113636 127785104 269528007 340152063 374992917 863282328 992734499 341282400 820908979 151223015 960797814 495255403 641642821 746122707 913427855 627921562 989703656 360298454 927298983 668073107 882112877 107950408 750693048 918152519 972418174 572760228 966823659 506155238 519342103 737624398 791429431 853277502 920836787 843439528 963551977 280623408 694987841 690828740 708885187 750786871 862373948 260746166 707085125 750821425 971286573 345411900 421744611 501374316 588686187 976764029 998429216 970721251 982733516 137838681 183129526 42384798 242107348 493923234 784729730 644514555 959590161 333127067 809503290 683355138 930751558 618463608 832944696 468863072 672785256 111824024 429429034 392539715 564723189 469939841 583094316 59854724 945843598 968853296 990361905 172468789 511795298 131282668 280702763 742862283 900799301 734549287 855693625 319975456 580053995 993586450 996464053 99868914 925153870 860745207 909491128 335282930 534335157 323757995 779749183 40084129 121717367 294122766 697932530 782859600 789848047 475759379 663626534 839174554 970358092 303774869 695643639 439039416 800037722 831350373 846585586 41378776 298892400 396895265 417844978 585764631 950474811 197658436 255039781 821412371 869002865 884296727 920640651 891560346 932781125 106385069 711348904 957652753 992506741 973395479 977524822 690876023 885451667 485418191 923640685 19703920 48128393 629893149 673768983 469572057 789164984 398140707 403666027 648469873 908468610 848387495 998021188 552858894 994348339 129017478 352541683 365410418 751392951 641359628 652698267 46439318 549212249 402780664 417775079 75231522 340076047 392075970 839441824 997241194 998983396 66765688 166176308 562110110 748837259 384688179 957689411 880525487 891769584 118700278 309451952 420268094 677963390 319886730 675673612 839579598 870069562 543943297 903464336 317469629 661115844 751844768 953860133 197559104 472357467 322402380 501264655 900759181 992010572 936748945 941115715 64297543 513466456 91099083 541839126 920419567 931979550 710989576 924978011 238212168 967538224 772955685 974347072 113155792 660967483 894070301 985763811 831983453 969135242 961334273 975559583 249586561 422456546 107825115 701275797 974489843 997279600 200644704 426485115 486300276 772606946 2666978 954180877 377079706 622882470 682706107 721008680 762187130 765658199 381829451 982734184 509006074 639515397 936793262 937524974 979726385 997590796 621875839 791115888 474961311 952049983 666732715 974275900 660459820 813835401 1371738 935054698 116538277 737085183 621691017 949487288 898846803 958026445 592826976 907120955 690649055 826212042 259303928 875724762 76575226 817815218 620245164 759503759 749380325 948037128 876973566 906470006 665054259 947233826 786539097 899870084 303363614 683934568 323060014 600367392 632302195 969293958 228419906 512321431 923363803 940504127 303656615 958881044 5852041 959883577 740610695 976970707 517732896 792756352 556627853 675407612 353234331 620217174 397766200 509417581 529727628 853249086 383223032 597621173 290630324 863041088 103460767 620636543 818804147 961483512 38296195 896725056 421913116 629941343 220874702 999388509 668214155 922538992 776467673 834010361 51376883 79654608 64677754 716726937 751459682 762556293 802750349 956944790 543759988 973652655 19596021 32747094 204751102 323357922 359727550 864634686 202924922 587597839 576401285 913297953 581514270 868510962 818551540 823440851 197383222 894457733 56913064 373068194 445939406 935130506 281492885 662983477 391909653 579374462 50725775 204641204 68450255 223353049 634718463 671165896 216767315 332649641 475016633 830174441 210988223 596169581 694558138 758597732 168035591 604325496 218755010 982099398 568352514 959872186 516024601 908212950 204780555 459437232 714319637 895028356 798544821 896762844 786268073 963771064 982121984 994975928 194866356 983892943 100066791 482632246 827074953 840600320 494678010 973258981 227209209 375566124 352172490 642818185 578697395 825351376 98217908 722128345 717307687 773432103 714405638 994256314 440616016 446253243 756538170 877024028 728298778 886578905 596983756 637443990 523908218 525045321 671122053 971211338 481296833 967662699 147845241 807604035 55602309 957363160 498825347 692330029 758024790 769236630 43320193 90276483 174169645 408346742 681483 627388257 523158999 895003361 33370299 144474027 866250358 942579916 178469517 907566130 831094965 855009076 601278455 807893040 771612592 791452244 494409414 545373691 446273441 533047965 628571594 991204942 707017514 797633344 341276063 948710043 173870043 250646478 283864662 411317781 379028633 578513347 910329158 979754690 999442791 999612322 144917026 316619387 996191859 997320973 252362509 253002224 649994640 975331586 694656648 977901103 940705436 963227552 880512841 945415492 857277791 934578200 640234375 986854233 476186083 977679228 128382041 452041386 709543348 835384510 634034969 713880761 315885537 341371601 304903802 324633170 515257852 894649859 432596394 576824172 482710860 750826965 594191123 723155958 801559955 869498568 993217244 995989567 650787199 820071219 222275516 713415861 284995807 723990173 350002463 730950366 19223811 342847858 557592164 660014559 427162147 615809552 835275341 866982981 347716649 708277178 109879889 855998727 133352766 865790949 891596363 989714866 641031691 726718080 673825279 675076574 596192941 921600349 874581600 940173200 945130601 969132159 456638773 601957467 236640890 661970329 828886355 899911032 599700597 859548776 189228443 506723159 629695719 935862994 548355 523147293 386826685 993578410 986158691 998948437 769005118 850732496 852695981 888141564 477038310 636783815 340137167 406768857 866704184 986869990 886916539 991580536 14500699 162601229 655300326 722817578 253007588 774137940 290141772 310854773 24528995 778774102 749836019 914722729 618423105 966823010 68368224 129001628 836816430 988491590 627414188 865534363 504321113 699197392 13609615 429756769 41349388 296586894 772053949 804608260 535657482 915649780 105012520 670453597 127538129 188539974 402671504 932894199 579285011 618806135 332286072 892220842 236321968 663265722 260041980 677965843 114931836 669519989 614469471 784521763 901808704 978303529 22069217 316784742 691221670 937972628 280325820 761343408 505814138 893883534 475382057 690481067 264670052 448200843 913623137 913876233 394102965 779415753 898340298 907829074 866510037 982296517 856020446 929984203 764041604 879393162 596265643 845075893 548814402 682740699 813200166 866815712 899868829 979295871 303659517 363618741 716248070 821648377 305530741 796694925 705635544 719958778 54098377 449634394 531226883 726807014 280058599 728031884 526348395 828107544 730578713 732672583 767713283 899052090 352861530 778705414 799737850 929567529 483167447 846474925 254844554 694425345 643289363 737848270 951810710 978092948 940002766 998054197 458987016 774870956 887570287 977542754 457056199 458736220 753580568 879531268 805608474 910276509 389553080 513614309 655701241 863227681 178334334 364206651 462598528 661561649 405303162 677350747 494154548 767925104 841599822 873821350 248387512 901611176 962327810 987164438 733546547 854239886 104918631 768815145 899772906 936204482 111324227 335799309 95228311 218747484 344290600 947523017 676330069 855798756 267576330 830749747 388526325 474276145 708994310 852664681 75138512 589872308 498630203 538274465 489349154 751376157 380584979 844232820 443600472 729025608 40740928 563853682 736706367 902045946 574837114 890133555 828231763 942095722 302581689 322050344 636528783 916086384 20649073 574157063 977008493 988765396 578690845 826266059 26783686 957963157 30637938 62398845 907226429 957225287 558555659 931279886 523785210 540784764 387757041 767184386 690709320 827254971 785939929 919754167 233488636 739759276 610975540 614127900 804745631 813030867 260897176 746785634 927832832 929792689 613593196 967433862 782828941 937868821 737161666 784440865 22813572 516439090 38806482 552324043 877224381 984315084 594308275 901002721 126652431 593926135 558946108 667078522 914921258 951974210 380074744 867776185 470347388 966912718 14017930 62539464 611314136 779252207 444536412 928618694 590698300 893197046 70578062 289775295 22502171 791733452 93691425 950214299 524669987 886925377 9303178 776331960 776727389 826020649 275236101 656323610 564075051 742118904 502396036 633545186 341107620 880860188 229814482 332850005 11955028 315150285 676103994 911932221 978867705 999957511 814264700 984258216 996229925 997625754 933867423 938451936 85012768 884961710 363397139 645680288 538369283 808729492 148023788 347488357 948237273 955140246 11009237 528572322 623732233 859540590 980184755 984186862 264342202 467000296 167934088 910373778 265170388 281483004 189368587 717468767 874459921 992660941 24329985 990033163 649020422 769149486 874432332 909400051 386213344 843909182 548341518 950480948 811234188 871020671 994302134 998043997 154701483 563496993 302214791 402597611 221905603 980987166 830578217 962771428 745261788 810699417 286487361 529249898 187873691 916841566 747415115 920955702 10576738 240760022 493520520 538957691 856020960 898404611 871030817 982691252 483864498 940450763 483870805 699933207 248987191 589065242 303565995 800262135 273324648 502453727 239988701 649061042 201693274 547022732 507051314 630349808 382895501 578553384 916286565 984830599 66249169 123188185 86284320 894106168 57560291 672800708 293040781 450491854 859993329 962149813 773701402 856904016 487479749 857240099 920726287 971190396 201037153 958931558 775338023 853465632 914148709 941431645 7312245 377835125 242021436 958135198 526770672 773566247 727605127 837525552 247993593 973352893 688047488 699022711 874557202 930886820 455511798 642673454 841613126 911045365 295542242 389937741 847126829 930666051 981870092 991470214 329399774 905599638 151447450 376133770 481371680 519241248 288601747 827802328 312026633 869748234 542854592 619512973 989160831 994919707 132766846 915996207 579625312 755109429 768774641 870392372 970190590 996266294 149393105 644176211 445777008 836000253 870911351 900194857 966814547 995995658 2316654 327881415 574787813 777209923 55950160 74439318 243433706 743114420 790215825 899708330 355741158 830417524 152618122 971854030 814382850 995968626 272371687 466074275 806741256 822744202 708793675 766238305 884756595 978610731 337456687 402103489 763841268 951328354 613704540 850996020 500154970 554086601 104616134 309747280 706921597 744732425 95936652 350630651 285940333 343547594 728701359 793869011 449441549 728354697 849140621 996412368 392935497 656903108 324302941 905140762 690506966 912176995 847280612 978415976 399967858 568519363 626813815 852102156 414511892 456186443 753500438 990033607 971510072 986535381 226974104 512104593 771415286 946200628 633794431 646097584 351699478 933197547 280757827 874505925 419022121 926736659 421065038 509034769 833529012 920754605 75371330 912459264 50176322 902351617 560115710 707718811 5399350 908903074 854824862 910429316 302347262 493452111 791471479 846534268 809424689 963470171 281631364 955356164 246770299 345675645 426377081 531863102 627415838 763609604 907723777 937885529 725961289 817589475 953553870 967335448 674960120 898602145 363771306 844149429 518041449 655874157 720215956 748850250 160716891 762116150 471393534 869158070 356099682 913816695 895493982 909836092 618764570 621613374 311512114 662437164 197594215 527643305 715131434 869031017 434341763 458603181 648134494 938493365 977966038 993887201 455626474 940994893 740817000 880927300 413727566 585009568 134254011 382340169 32657101 451635072 29738093 613460961 620886602 658356237 631877589 826710244 648740868 928186704 19557753 799709061 569115657 947051727 255838871 733113140 666737720 893460822 991299801 995098355 556675068 652443133 855457478 874157844 803648921 978844843 530197634 718110477 322403856 822408692 360402802 777423197 689173308 945521988 139993866 329407135 632619261 822836635 496289882 555794062 516627873 759489075 599199547 804861336 801785177 943961216 319310537 810746009 124398079 806725463 850374391 913236795 828155445 936206595 2586309 310620485 367412478 524998302 361666006 975167641 299348451 502227746 124394176 343064806 718978300 728658732 124355888 314700677 705985097 819252232 270918377 797397345 985147493 986260445 382619844 973851211 421998984 428218409 921639547 991205723 704726837 831759721 997217053 999071848 238626039 302373332 316097025 644633042 853306935 958706920 460637124 676971564 741646344 794467304 563138367 950080106 586718661 973715458 509925119 644351782 127431762 334898352 5812117 83897061 406360325 649466783 140923714 891085748 501103094 618807960 48940062 87876877 884123864 996850492 441833094 747321801 944192721 944381364 391538956 477892159 482411904 942192958 901659093 969042035 261602451 421346111 62076945 185438363 36516614 986209961 779025017 819715023 206689344 551325613 839217830 935099778 979054504 990260043 238727728 861636174 285466342 714009411 615452063 709948447 273808174 870622080 134495763 355254090 812273263 940391920 671411592 978033201 24487426 750176153 694982248 907770101 369394255 917726319 831643003 983064054 542296322 958023387 294169576 749406275 604349512 981554236 119180244 552339569 298075706 528295555 493569307 731099291 36781172 520183825 383955897 493743990 697356903 757541082 869708111 876793336 934319732 995901374 691570164 813824597 48852984 688924326 877401409 948496871 730079090 864452572 259548536 590800642 421684302 500722355 494537171 787771788 591059197 605367749 473984498 508668346 668884902 737067039 912545582 950772368 427823913 822171979 456368141 712651121 561184678 678957250 116418029 316068426 743794422 775683152 397318056 753473259 577730845 719084253 550232407 857797993 424077316 607140991 49458615 876982228 551326965 556059948 385406931 822284263 984853066 989392050 181452193 771754314 861048318 933564901 538786277 561151741 705510478 949507134 336049946 927032968 856954139 991428741 466447761 649247304 163220573 798982108 783846315 932291205 218230466 468655977 257341651 807365005 588929706 820673939 741983329 908164543 286899319 351182848 408411682 800971885 724003890 990123626 577213760 675289830 330984245 799061616 562788740 937108426 302533314 817532081 70157164 170041502 470240628 607341051 373046845 762741034 668598208 776185403 22657079 288813619 114456697 378087063 387264301 886270090 717442990 790488578 81144357 280022912 95495302 97249749 142095941 615144591 438004805 902989966 944217181 997555473 939937457 974755780 596366855 651502984 471545641 623245614 60183193 594959490 358955847 360734373 6769385 958166170 431796770 870059439 40179302 493619241 483185339 779820916 241132480 286245400 407171121 843600964 777423399 925371668 190006538 933694987 999233458 999685361 236132114 468111912 713490475 971922302 722463166 871463599 439023982 805731393 666481078 798994913 182070488 269598388 572095114 609556709 850666553 870349096 456618252 819155801 717278855 821210977 900616023 946386996 121137275 404500953 843728992 979036384 568012128 723815299 968472827 985163687 186991073 982312094 237070806 803812007 642904991 743553432 78085962 465732903 190561737 439603767 856970034 906543409 928594406 931946400 306902486 581365740 417508287 660323562 661242982 953924747 709138164 713835418 763468284 935278309 257342926 569892761 906252469 906964862 137879300 513163880 752156427 764859913 798098523 926990745 141774795 196281857 264027978 906651889 311702051 740250697 945126561 948323162 192873559 502196983 777981811 833304747 785959113 989847959 869058508 888900642 318686063 934992261 208264819 380818358 933829492 995609736 816364242 908219142 614787064 861978085 289163871 435732539 525392057 591642217 667003444 844394875 720760617 801350838 156117291 440569134 334637929 422661342 314871125 962318572 355447337 500003270 611983406 945344738 8940148 788353636 72433669 744952606 980545111 990704096 350396438 629317775 28786493 899706641 44165789 791087260 823034139 937656707 350270103 796332323 628661699 701170735 460533730 604421489 673563413 950310686 605424026 837932159 14202761 870666464 95263313 997235985 554933884 768517115 196166476 339509312 712307517 942697469 593299042 870922507 157868257 474950912 753784916 939997338 339091496 688383477 144763427 561128670 106435479 303552413 970596986 989566438 375347218 796007333 370701002 548834621 225906668 401749581 157924674 544843122 824162739 959391756 456120775 799790559 958457828 974937875 269153200 492201225 50116861 471443829 557119159 928694491 71812700 120141484 37025086 672181679 507574708 625291034 440593964 675349638 411098153 872646005 211013596 900271033 974982921 983643941 660867213 902955904 59039658 329378922 252273243 639686495 840163178 945635134 55850490 271567100 822553405 959116750 713053474 983225225 833513927 974055858 157026033 504071696 599308971 861238980 425992108 768067134 806343508 875913936 620258464 767681823 805588550 896121271 54832296 942100773 61100799 950627690 680855316 851558294 237040706 470474310 700912055 710548040 745975682 763563022 908590467 985206284 596485303 712899712 466505582 691841025 592447811 747013328 483780586 972258346 279831078 358273625 408040777 438586527 415329637 578349799 728443288 787734375 296210523 559055746 307056224 967978150 336197309 357344778 528246160 631217463 384947386 940574110 137474250 387167008 360266137 656988095 909945897 914153061 700307501 965175078 169328224 954878689 625376299 847704877 43831606 495314381 202492534 504596793 854621736 878797691 585184801 654902521 938770241 991594879 127806394 149117704 174127806 374501466 963387388 972169712 926923288 966769858 835714193 926003354 237017038 928787689 648989491 651359435 48619942 695024025 642086144 787070013 37954597 754154011 147802290 965109095 444448056 481329417 848074310 919397598 9886784 641562163 965993804 966234290 717020393 797788897 600958711 796451958 984695653 991188343 745975907 881899664 533413023 734307864 928408031 938642695 198002140 426852571 954750667 982830845 117573013 879376714 505151193 867354843 853989088 916840700 678381355 823677315 741777793 782123044 93687345 626459486 564452944 725709819 676115347 802592474 3670000 996273272 451096027 671499077 154970422 186123797 305403056 826206812 960676143 965615301 96826609 955700405 883638626 886179257 119897209 224570267 121023129 452548678 971622965 989911577 789336201 914552673 431553230 448270203 781758072 887080765 676628507 740681162 489544181 725893471 163332763 686556978 393407655 824005376 659844019 829907598 794848670 794971070 981224418 998768210 925356935 953372600 543840581 553117849 675614677 934134594 602538107 815335900 501533861 753286080 680832866 727856444 433350949 547098797 15867449 519354362 417734398 770624330 608493111 644500970 53289589 743920433 376280845 389216342 418174600 945752364 20144422 771662125 451354118 658566787 726548018 732010110 280063099 396407074 972038839 979531010 577402342 678380862 465406690 762355385 910033088 992508881 926995377 970691228 512190003 600097049 132922197 772352845 191574627 250924698 294501703 333826932 735977061 929851787 241464408 810870785 422056530 567846296 722968657 736482756 962392386 982774658 228130724 555365368 832346074 939835805 384561861 810248401 281351975 884769018 418172506 755890921 975063242 980795678 637179690 805822199 184088663 274918255 102679172 420570020 778677328 856499500 152645807 914900701 412354759 520470450 78536859 697511098 923463253 930073805 572343440 674506165 190404597 528905947 217085646 693813362 794221462 926440217 202279134 692192974 427501999 767814862 784599358 955816505 786765000 839970109 548020230 648912362 315156900 988530821 472683058 543012853 518980118 879207299 320798702 600104100 775298792 868017286 11399315 670915946 636337257 690786622 994590076 996294034 552552467 719044000 939687955 999918587 412113108 707334202 601399141 684182367 895414328 922850063 315639824 838269044 665095529 858556218 63827711 772206017 830056498 931346213 327592700 870411472 531845277 958485546 779013975 868322754 754941219 779047727 158890982 822575012 364581682 915841283 544955671 761458498 501484668 559113447 685668089 753080190 721893943 780190660 142558815 511865356 963748913 975956059 845784983 895537984 712677777 839695079 80279660 466671520 104778426 490478456 403566648 721242955 602738841 711095595 524285924 700259723 381254124 795042078 787104395 788639351 484252372 661828359 369720075 684645383 888290903 988059570 760721370 921608059 428883899 568466533 924162624 963658272 919759592 935003899 236737178 561419861 782445617 947490570 767700704 924520579 346191170 548313867 722731627 910182711 297289202 782667706 787608595 854567859 313414978 394187070 451844342 992041766 889008640 890911636 974003649 982538824 4958258 914784646 965153252 987887138 284195489 732571579 683878164 768264222 732368714 999106064 729405581 762899755 717790926 947587815 528317407 980834992 97862674 126363041 762016916 892181441 179553995 726423770 403889605 588250188 106328659 230185369 830964814 995057987 102797341 678951113 168522944 303488007 136613482 230120921 549914233 820433893 788966735 797474176 317573142 351487534 302438079 641715765 940390079 993471465 945281310 976411978 983964346 990936609 282861395 707538010 39509878 788897740 662450862 896422904 209716405 523317957 239848101 819489794 488555209 631897511 256967900 329274694 604109378 985988525 773099194 785065753 333562231 434951356 694394799 823585201 989255512 989828186 215291368 516617731 423446583 801501976 795179399 893510207 273738792 497886660 236474587 544803374 13797151 548729791 671328109 735210561 367340883 840979663 637118076 960004739 701681530 798215149 300389545 582398789 466242844 500652039 173586376 885724051 981299142 985295395 127504975 968003435 402482109 748377038 67233043 786157857 772310748 948422262 653230017 922783676 889348052 922424654 733602110 811630944 787999376 826604374 159729264 858583918 230366059 933262585 158666051 814145219 889658974 976360647 322506194 952553854 239693492 320044551 783280230 788671896 395318491 792111276 132872811 758186935 755916048 927013648 476483960 527290392 570172899 756526351 899136966 937080520 8290633 556399434 20442980 557787031 331459045 925750103 410645367 717969236 354847543 979546914 801819931 968508621 608150940 659907752 847395065 982060963 183459963 826500976 872518619 926924554 710936469 957740191 965679164 969117240 637669486 936992421 641732491 654937269 98409853 308960490 127836299 962386385 346238102 695065756 180017239 252281192 368818578 689423804 935614387 976388898 431096271 805889934 463949239 857171557 240910695 289226888 488478612 878242730 792014993 882409284 893364429 973731136 238762823 312114133 445784061 695626442 405371043 743104342 580351205 709628242 702291643 723245221 340247488 648700352 977383477 978464353 31507158 510034609 426582734 641642913 135530588 669857841 464121003 475332557 861666822 898537526 151488476 367835418 403854922 849563989 885034405 949911367 338586999 734979217 881876473 946310522 542327214 754504129 56847060 836544247 103506363 693357690 819951248 937832336 268489637 400096820 358218027 715198514 997714117 998559481 126618837 954651026 313850671 455093641 43023292 164275634 837690844 881047224 766149265 825287109 143049985 264393693 317294570 789375129 719424200 723435168 54283448 544330243 152874613 448538330 254567120 629222616 57572885 247863936 570244766 925169854 38979066 146802535 903331264 934358082 474677592 555948037 11166419 196894710 102401854 857606552 350428202 556441296 607572101 960895999 326092445 613157007 359606299 419609303 305681169 467605780 296414197 313260961 731268006 988195777 227638744 988524637 379233307 557712417 497891492 643973974 162812362 480182593 63795127 881610447 797338492 878118700 264770231 451780796 413177125 756847292 59490473 417966609 321800386 676678982 960473985 983050504 937445545 989125083 646204439 999622566 72663177 953900736 461355480 875493236 497581673 885178729 264274328 496909629 7449205 193913056 936904664 989363421 348987591 399399223 400942159 821183606 304686353 834433129 559128629 783591792 725921477 776576017 262098546 357955451 793450520 875034262 328481674 674897667 541529164 786732547 255810985 363815409 904719255 908664480 407804800 820411096 920515666 977543353 54397768 83150054 463368809 896846610 923184898 974429873 932792111 990860922 613734894 784529283 411290867 484130510 133459941 393641947 40605173 488740572 671614842 700205269 204984990 416726309 442863263 802340545 650181901 740276574 903483968 925587721 367606465 913455532 224569970 799976065 549735668 993873093 443379419 906605197 460587908 692710250 836483630 974408411 78318846 133788847 590440549 927942172 753554191 982981988 297309009 674374068 668832836 936364963 623171101 671506126 927642742 984139164 536370183 578139390 914963392 943823893 193444069 330562765 306205905 946566645 427185692 702060822 871537790 916900803 538064429 724658754 465405993 797659339 562606297 644313409 889232922 975409709 927694952 982701047 784537868 993987290 750427912 885203498 833651743 984202728 678817200 725131347 467537355 669317425 554686386 942259314 245773242 421408665 948504404 971687967 728611304 905883263 189142017 762593285 278198097 676631159 770757541 902162093 904790756 972618785 847043736 919701188 465039767 574982926 775946400 847232386 58086338 914738523 715992617 998977883 807291031 825926071 98154322 311102201 578209269 995484729 335781811 699663920 740861820 751098862 649029351 808743580 69011571 924025732 865957687 972097982 503070386 630927703 670906977 835439451 199648690 668467294 831342079 906131641 652688011 744357001 240225435 626483393 913507056 954850171 794404729 829894810 63721915 425976852 81249920 399302562 403945672 626216402 925671961 991442417 13948346 906594277 395357985 492782608 658827574 890702483 754720985 969614614 156952155 463382965 880128374 987107138 416079341 922304791 482934422 612081158 940353001 992117590 931314764 963738241 845684858 973619015 646920839 896991395 776596370 809805113 959209951 996259628 302066521 756690246 347502614 552779386 398648372 918107179 845694563 922650013 354660466 510220159 697957652 797016294 993937275 994766719 874416282 940794646 569719936 776131802 714466844 868947497 341401817 880305953 718096384 887558342 377902449 831476963 202977403 422343393 639398179 691275755 328473175 683840502 389530064 681452639 882170820 958309689 546541991 949002462 683897630 802195022 838302697 927178945 926092481 963284142 144415616 292009772 861044888 907935885 724713021 900039422 903288054 928280915 436916419 480926016 603817523 923513141 590885675 662760403 429611437 527509952 690082924 739544226 64678837 983498101 417701152 770330199 394023883 950001473 593472058 947493032 76078226 887251884 634637905 827893643 808788577 848183979 855722896 888244737 619698098 643019060 879168001 999028709 642185353 672779849 156780586 252591675 263303737 455299948 121024211 710741658 147977738 224822034 827601696 909925751 729468837 988013737 230928107 906442435 677982754 920287998 392737419 848939534 613913347 851812881 706730144 859407061 581705530 618017364 508875834 615544880 854885754 856581520 656521032 693790412 609918891 851646719 682536534 743440936 23278784 940173854 596465433 818295051 652405679 663132057 868202268 909019159 783239715 879627182 40053597 221169591 110026384 347099251 354531940 637368178 222351529 783369107 671793274 826514072 324502344 480414571 519818632 525942977 165957974 888816499 472200584 799108250 985744129 993916062 432857357 976484352 78568752 990932545 792598829 824576663 773166939 848707131 249313905 546384121 917141739 972746602 522558798 755082596 593014651 739252775 704398361 987925846 115162523 862983886 204262187 493465883 258025238 423716027 303900587 415993308 215524860 601077560 487974022 693247682 178721056 626879436 917695140 980919642 894922638 956835813 308077941 866106876 898794331 930555761 983720547 988538430 891189361 971635217 47349847 603326277 593394604 803707282 692080760 766616301 817058122 901934624 572187477 864840927 368390582 850827144 398620692 762285554 313184538 415612428 355778472 990166154 104305100 433663286 986034016 996547105 417709680 625601839 965542779 967999725 830055986 886819163 583854741 705502957 781450095 821875964 789057754 888237098 727591129 937340617 778963273 795038762 954299602 971405888 358316272 948260898 588707037 757968958 239874324 605430007 282516119 706077124 261672795 708482320 376459451 599943235 171634162 222579338 483233830 917545676 969436743 993905484 170043864 586593538 459216662 943078244 665173369 696072699 944790104 952954461 61371504 572348151 905937067 963829886 196453042 990824289 834599747 945696405 297286336 975091137 423524745 844561949 541430565 648096602 911887642 927287795 458359332 545626709 565600208 874976458 388877756 505257512 58478887 441520947 882643510 922050254 25124647 255056153 475262297 917476943 305048995 364328086 135521635 772777890 486663340 516814673 384469411 798889657 784613201 821597992 972156677 998314688 83003290 739030872 574444853 915634996 218445939 467372226 591824048 645499021 500071830 553778582 372988194 429600825 542529468 898317871 595516695 688748019 59281179 372288392 795683532 913565037 648874236 722781567 399592056 614539839 432698067 950324227 855446806 936224963 344958699 621896801 902378569 908300708 209948133 521856179 914940762 934888205 174033245 417937108 712186421 955206629 483516549 966381337 946294632 965985556 521836684 951841138 564170378 986306589 684218653 996325523 86601293 269167331 423308571 641281323 604716558 963210353 556505362 764353242 218926176 946592106 674612696 949406572 703877785 870465005 287328474 641390798 969553341 978674940 733011027 863225793 137008295 266474309 6916585 737893669 760664693 792328528 15115966 85163630 294173656 404039917 538552249 900568621 12039782 223233813 463455455 623528454 537605427 546463138 763234223 811497971 154146045 775418573 18778970 865017297 115987830 596461841 590616805 917930923 273977574 909369368 894729024 961019096 857566186 969332465 140621046 779902059 435307293 884363874 281936491 826757977 758805286 759449406 932278946 970388394 342321862 636077336 295223342 724360177 509310207 807050419 662732750 916510396 605393112 818506815 903644562 913955817 926253336 968347821 132691005 905131343 55149133 923180448 239609070 753354141 620869616 884846618 360399512 636850702 30232274 560859060 980498072 996155059 305099484 962760196 637847270 738072545 995520987 997660787 917056478 931800243 827451972 831831319 230888676 841443528 406076961 813325380 80005002 509483599 737191656 836575798 919021700 968124745 373221282 524753716 778194726 945400501 981869309 994907135 616471358 853805817 887381935 943969393 953814990 958583830 707339857 911330803 817320807 993253111 97611752 895241377 98911212 491168039 545518281 652176757 780010004 817592324 998972027 999785798 135994565 329171897 550553455 920649718 705946817 826068242 188780300 695316661 53258821 814653255 277142316 622359167 365386517 941340469 437353787 956685079 373894280 939995392 76328172 711422612 630781372 830629325 587464776 589936646 7542196 440428154 92716218 348141832 452461710 587795118 290231715 406446858 254900400 665885105 877289138 963141227 783339819 908053765 226032137 394391959 575037176 613645929 686562565 802837190 126611361 823095806 846008315 871548250 130432331 734120654 506959805 693929768 336208233 637558855 45835688 535465317 594447438 779219271 842003259 883993417 542196050 796990192 467263894 827571366 61067799 517078074 938429686 948909063 617683975 723844471 532408245 735242065 167887686 801690935 415250133 813052981 346238799 547534907 174376878 594218027 172737386 348002121 234825951 822501477 291240868 980386812 130786669 432690076 814237002 945813758 638541165 638567765 834513682 835863986 569767972 594616164 878578903 910074517 186358190 907473600 408299336 493900063 379321909 615088134 157103703 685208110 479729214 964566399 367534139 398241862 145392736 705984833 46678153 524693176 258412290 596452385 824544018 915665956 481076462 765547144 714903867 999174784 988573496 991086456 536972713 972666353 566230551 786629424 432017929 598624495 298328749 684905943 677824169 968579628 42325865 326091210 797517892 921124468 25341400 640329071 209865791 785832562 313798427 895671164 911821587 921583994 477668533 668592579 798441103 865883503 637329168 703041501 984940135 998174808 782380376 804735205 613592644 834102368 851449933 928696053 340951687 858067116 400225419 623163755 701071316 878629451 100073655 812527368 486153368 853725793 800155285 934067553 677770906 996921314 487550449 674737804 800184802 913277888 785925897 802106685 49839999 911468855 726366667 821893257 64084319 919726009 497098043 613696909 865609846 965913175 823803684 932309974 983190976 998040483 269125011 852473664 712850762 786989525 420561088 991201808 219172070 518357699 348095056 440613547 536411520 671728390 954926479 966463965 522807853 584486590 102555508 452163545 21182864 600722642 776362249 841951441 798929413 800274934 407762770 808913726 637902203 938041795 64199909 479522428 190581205 693054141 496100152 596572727 508895855 846675826 329975846 822600571 889445593 908736970 254589581 275381357 886050140 906495437 589488944 810585483 870353667 985962172 789338332 861877792 293952730 515187486 84868941 226890003 347203391 460270276 269612001 585121166 417990003 716682445 324687178 599226601 149654610 238789223 715836789 913643327 353864743 387161018 789365720 962089214 651068698 993887267 704632024 909531399 120244399 524904765 96905429 852147720 895743509 927445820 959623433 995182128 733020770 789085746 922818133 947436657 118764794 539235093 714034965 740968963 646721688 864152023 794578806 862435080 19582682 546244263 916690453 939546888 874514188 930824980 295831537 334916186 633290695 752744688 696999159 949111676 186856020 864348688 811082678 859261270 538890213 876531607 766071829 813267162 353596336 725347044 990353243 992541438 677404431 820301748 555075325 794276634 220581066 634596368 994794635 998896678 100414895 108289725 363979899 589741403 812464950 873972022 520755454 846407439 305388726 651616982 539606668 597559649 450046783 797070354 779468478 811041513 619442304 630777616 339432852 716262193 627932179 916058018 767804411 993717967 777924690 970103189 666571289 732906242 420081856 900938022 660324232 779762376 904118702 930254171 36832632 541351173 411109720 655789543 577361616 689705765 674345241 982029212 904630181 978535673 995707454 996051098 428086815 644999876 969791259 971450571 722690337 752874215 199623551 431284141 901219155 922561955 525085568 917268343 481045666 955245021 10818897 105415907 386003256 556532334 432977415 913971157 585150257 715469921 583429733 820115731 916866611 925444293 97354499 551245531 133720652 148304409 225131320 530923312 949427629 975928513 952563320 993264595 941806483 968142424 311311299 718048421 375645524 525870156 952417644 996664606 295410901 585875606 85886114 112023103 16402086 732327408 214914591 695317457 327981935 442133966 40330524 421836462 273634475 940358556 340386428 418971548 8044714 267663057 345808800 729142778 726878377 978859875 384498921 576275679 483132762 692455961 562135913 614635766 620739623 909056953 975657547 989418323 275932117 341497919 595766639 807855413 648814394 948004462 39250606 777838950 192766774 301323332 656727291 873911357 499025806 936295508 385894417 878065787 241280140 400827729 694330965 918830693 907293804 992500862 524095977 628176723 884290287 900818761 8439850 687684484 691109859 887849822 777075635 839849719 73099021 802908532 528185308 738044084 395062253 956821399 273465905 671744259 640500139 827188528 106769806 190409685 775070934 806199263 977094353 979041020 120771415 643759880 166451844 385189363 732220276 790711351 16153560 312102908 337031613 347788169 459174232 859932428 996559821 997670993 136954737 751957832 510508525 782624052 917783108 995422891 771342671 802923391 507502650 992972492 61347426 664280388 738583842 820110061 867158002 945931184 348043919 839715895 37432372 645693373 892490509 979180533 608849450 690791156 644341555 946417726 711452758 926416913 31789063 463690168 442400677 521077901 203050944 828894154 675588531 832793212 651449541 657917385 79096183 839645800 976950756 995000667 729218673 973649787 683724383 986520471 917245032 936238372 852678104 937429425 571639035 605171341 221121173 700297521 866125888 933852992 345432859 480371319 184118992 518710624 760691645 899374102 1531886 777332358 318379755 964284128 983011538 988617276 107996932 722786371 461363939 801059754 217596379 322766726 512683455 954611371 820178458 897455021 860429440 949796099 612809041 734971933 53619973 223488012 640813544 918578459 442082554 580261437 78701861 723871802 931262197 959935351 971550314 978807026 556066239 650162451 702184173 743568708 498399039 646703785 205968036 406545458 900811708 989828604 567498701 617069148 360741816 831111032 562758899 578165916 561247285 708119676 406162789 720048819 483153176 704575661 324373630 456827670 872409811 906031733 482362506 860343991 998384120 999999087 370541888 396245718 343136313 567045165 493487299 614541383 615507173 928391113 536801802 831852674 21665670 936463210 395145682 722205062 394191360 598145348 133359657 970556337 223785114 896063725 197895419 736560728 242007640 298191968 541843816 765098059 796700047 966384410 41314776 416641622 172335964 469889530 572973378 717592963 838432984 874689277 302870197 686320224 403133530 903048033 248459006 377799239 516843691 842057187 547820489 894726962 958501904 998111865 827771693 978879534 308661064 454300788 788104242 976794713 538150605 796803486 763994714 913572243 975612806 994418160 857047434 985754681 363780529 550254995 802080270 874324751 121799513 531588921 432916464 683781320 724918291 961208145 938575097 948119970 99288419 381166134 853507525 918122538 976566502 996368501 877062835 900945141 889620287 955211751 181560930 200058707 653303433 931563783 712657762 714262032 493247270 584503392 838413137 972730131 987341300 995405442 261634343 979107885 326655729 955153460 684083594 785917880 227671763 682024474 367800732 908778616 21200807 600632062 864590296 979855277 640519235 785621558 586941494 977499984 457363230 529566406 286021145 418106626 181605756 511439778 366823435 973979985 390499637 953740205 277142614 471907546 869079308 877576702 154342492 857437903 976824884 990173898 255795808 807962951 227904875 998992319 140451716 757657164 885710833 930462324 956912441 965874106 854519414 954104073 617344182 690088391 955804949 962989447 2088354 642379906 233677982 789387433 616534388 902586443 820530616 877447801 988710377 994446406 433031721 621493810 401520994 406216298 381777381 808832198 637494128 873597220 111222104 511951992 339131597 443211592 684983364 709240880 449288691 845571937 496577545 884415238 781808306 852204053 290791656 858777004 6488720 264329104 214291271 248795880 810376369 820732638 955328281 986236343 165893001 751420025 46674039 526769801 845962687 899717815 910523398 938776280 541767307 741172455 90745928 491852479 882724286 917100290 882204144 998253709 734394198 769196082 5435396 839052598 672933353 932981524 30697579 135750168 49050216 935876254 181498411 595482328 975581818 981898368 853745885 983372140 523635963 559723223 697737803 768935672 572646676 631487218 41367849 282085066 501472038 623465416 86884934 489365649 280796736 913779774 779834436 850115118 328471824 904296843 514048419 928563259 165143236 363064684 840759051 964216622 979139502 982168316 758218010 813502850 822291994 916694724 705723822 967880143 959336083 966122106 816839823 913378357 562297385 792361613 835675327 882656173 79039937 165076247 763915902 967875769 233786738 925936434 270556944 547039509 389839267 581696124 114408602 777352433 395112823 458274351 904368601 946835671 251572519 600570734 197050005 422141589 349188191 673752429 241013180 327700490 363839030 966953201 742080033 930839756 603425212 812178626 695342198 927871507 992003343 996432526 568125541 711712790 21997923 836433217 355185863 927935712 256686901 653043273 440228044 637727461 734604391 853257205 82397044 748772045 816539435 839805733 144001130 995013568 504172822 856530604 257628713 276185278 489233828 848037220 233619740 436527610 619696798 854863161 109633982 296800293 603425950 724250529 718117128 756055602 263267677 992629765 516119634 772419945 783898401 786856885 876389450 992225162 275844291 321141248 267292902 410655512 877089603 969982095 949176334 984492031 640614628 873736530 457408981 627799297 62372187 353527361 106159793 681187009 339484173 938458324 36728028 791875599 860028399 899155995 797887853 896690119 732036018 922001931 720278158 989913571 116969187 221718145 289716511 786191416 573019931 792406109 716492140 774361267 657530017 703833038 286131921 745186632 455077433 852923429 41443789 185292872 119588957 205901764 446123654 494758436 602731207 819126425 372847456 505995672 327395593 493194290 752510539 925190729 772834321 883674859 761291275 800318739 307169188 596379262 772041438 845870230 911355364 949096953 520623445 984729876 168885860 995091367 278709850 286115867 253989736 329465863 592697053 713021698 23356880 491521757 761733198 978321387 432638326 730381110 821925981 949149779 202361019 232300770 804359102 863869164 778709 909823828 622066827 882867734 747085003 851211965 336710189 458205551 598757694 864868319 607128529 937100752 3995934 294997989 929703377 984476814 137589782 605207289 56828970 515644819 683835835 840515830 26869119 222047629 745997185 963717782 893414771 925708253 254315402 564925510 213707812 630082017 446078359 813338268 860657493 915511249 5246794 9871036 594180932 845759379 523367435 641210057 930709306 974549444 181797883 572437791 32287572 123167194 296363431 979957458 989149083 996054512 485644438 491443053 379326095 659296380 561515238 960437238 464616909 520691408 402896997 721749443 543748954 756139006 3742352 123417038 238131705 375927318 264874936 760782650 417874466 967617140 55186459 548950193 357141549 989023801 638481779 749627759 503460925 653981608 990404392 996251665 660713726 672342591 565751218 976411120 947643649 974057742 826485828 993207415 584037307 771213106 243206604 877513251 29442006 106954385 878135190 970137731 484175496 913501591 678048874 843738190 748028129 984237325 808743374 940241027 979175358 991119909 134135579 826610878 916131410 976088526 541380101 780396004 769191990 838021270 155522693 975479622 988049174 988872911 552322459 912640232 726344478 809152270 177864441 394136898 235679711 952443430 303828572 679756685 14877256 472956592 858783071 951551482 174681925 258448867 821954214 875865029 213228199 861753026 360467997 993423850 103804537 734300111 634042865 658285828 538699953 578899987 946786597 983779066 279366944 671371220 463970472 620872407 163949194 289754841 439661035 500157582 923419466 977820112 704068036 757944357 597899951 677747885 189290626 986750368 837531946 877228691 358902864 514345009 835709916 887502574 882838933 973275054 313948556 404454994 736331729 998441658 180328430 975524709 756765797 809179920 195529281 416589543 179080629 192484859 482818497 531943049 310381175 994513073 102480422 892612523 442059553 459812933 519166929 908897868 207696140 377601341 989067426 995009023 938802600 954131521 485219500 558422620 371570927 635363024 836874276 985885170 647769300 737253472 125694747 166066902 346420901 689137143 620218545 665061960 349225262 433232762 528397767 850463680 3418334 421327013 729632857 770099153 143631142 286437556 699914765 934518434 58580653 455334107 178950182 376731903 973574781 982641065 698641082 938913526 692663242 777417190 917371974 954729084 869757262 901960866 794756360 960015602 322905048 501772117 714882066 756929666 223656917 858754486 857394924 926338292 975216041 984687063 503680617 589302553 239290281 328614408 198768914 728487773 911450717 926176019 414969861 420491821 111170023 209136696 931105433 982142493 18576102 437052853 322220090 961761144 634011153 796252687 885337706 988167821 10263257 96147060 425281395 968651498 891961816 954696664 832331839 857206741 976455265 985711768 450430248 932209883 530416218 980328086 439010670 891995516 780884249 802982867 298452424 380441296 295412707 446770601 79008923 347003835 554948721 705797666 289016428 793455902 627433155 922325726 702215212 991789998 966624686 992241080 650802635 752112244 280612852 548847597 422244303 564042799 984462157 994313833 867177288 872201487 700377164 957250499 733131550 970894339 300427702 451936185 919173670 968552987 981619840 992509304 406276607 525655592 157774107 348701809 414319379 940886802 749150201 923182842 549823324 861877877 605799978 779171103 974121729 977499184 225371886 726805204 654171687 658749210 361939551 762047192 236363879 829901389 911073653 995857627 128650351 165618541 229742594 865627191 957411013 981260223 716532359 778703952 998934447 999892490 265393949 834365902 679986545 976303011 604102372 909530443 657628132 692767319 395818551 493340731 647270287 862076840 306942126 993173559 772648453 796555839 957665721 967128021 255589091 295041429 254801685 288591322 413920289 468474778 201969852 854603247 978015151 990506586 302496197 973349960 376844162 828395775 501851441 579299431 122650603 904546705 801313042 823102051 72764738 777796568 457064335 808329494 960908210 966664098 127504698 165800211 736696900 937405261 971952158 989275255 980833719 987246873 810540203 837034133 629630616 732258155 591287143 884298462 14405136 884114559 346497717 599843421 610296607 761539658 306505067 785752630 904300577 982517714 909453034 994865300 747436594 966128275 797495490 931527441 937518896 958832217 37792432 69076300 428717595 430664859 16668292 812019429 257976343 588740328 762290532 976053893 505235966 902122267 270157445 397525095 187014650 574058292 287522369 850998613 785068321 888648591 827638882 845630156 677332147 746848932 587191882 655710058 762138943 816503682 195966015 943425711 635889071 854343939 142202725 684957464 699592410 889663677 952553269 963490088 992703468 996105425 533262305 693543903 735898805 782760891 746890549 999049193 281263300 839548556 325872248 939655107 658975639 981276420 131149523 471462169 58909379 642209864 59628158 803073855 106155237 695104316 658241575 708549764 705746597 750187738 46966057 524372454 771783328 838025475 935210708 970023067 891443940 955343402 204650907 685349778 683366143 845864600 210578398 907258795 942848395 955797613 930950130 971414238 7491292 969066520 424307300 742829042 872543500 915663560 597810210 733002379 360875980 659965467 321493559 633592510 786449041 971542836 529761074 931251003 229635201 813334174 311868609 885409605 947872502 995142354 159863010 588377874 930594360 992433121 961160433 981159049 722827228 913481834 339851997 545298223 672397054 886176082 301281828 354522491 324830674 717850527 332176049 480110301 868957471 967709685 282141520 532388594 653737459 990855724 820210470 949545147 825158891 937543875 837744428 973580864 798840383 908952616 54887259 392953168 934932586 970014618 514380511 910758504 437947155 565151614 483621281 694537046 485302131 810246031 711378917 801552676 418093925 502898146 951777242 998867472 303996193 727962080 2905863 952368695 517465582 726707226 822451086 895392760 340774799 429299340 915034779 937991130 407992398 584381974 730839974 837551922 352559439 368641210 583822056 818946386 439802507 751438244 348154822 570385025 703496377 974079405 489180563 696179232 924496936 993024022 877966243 962225846 262648276 799105349 181004072 701154770 639491423 793108078 217711446 452886197 985695196 990652585 217307408 773668675 220545929 643592966 273264967 524449994 748937000 824397848 195273417 990903726 763575093 892486769 762000737 832969472 455348463 564508317 428337160 909675262 935964147 998733470 328031410 978336341 823409821 918020788 339048727 781261750 725141398 807417376 648320840 861673488 647451583 700611804 165102018 526970877 906760476 978725403 505362290 970660584 395682027 517657933 820824090 896882057 467373763 598943708 918392293 937752995 118314071 223532692 93578506 482653088 49410701 410891425 221159436 957273234 913106599 917235612 921856556 952633946 466449975 932722655 418078616 549072554 414171186 957664861 121358765 634080818 165023657 426980380 136374802 775042627 50350628 558000852 366360770 868363615 462632614 979513449 508493425 971305920 86478609 625976619 456128973 701494076 487933255 760922657 2127367 764269464 209412634 699351554 528488730 531827547 103002913 775278932 359969526 553264062 27795339 195535843 527759570 571337055 324798000 360923689 549924585 902235863 810107504 841425745 751256736 945723650 21340441 915955854 818830000 880825400 805606807 942523811 261479250 700389556 640693797 950081252 906300990 984126651 518629760 783835994 660217823 938772446 328444502 581791180 716432631 967759307 864359946 958629046 612303169 723486590 535203910 973412705 992865431 995734940 374447259 850146337 402395728 487705463 471660863 649830287 836900056 997102443 650667087 789619058 55356500 71063078 520114712 935990931 707204207 890943351 76577312 764482199 673902816 865903601 424274772 509091383 628775725 962536432 24327187 667791863 289012599 606474063 385116059 854033374 858302377 873944953 966178747 976063209 37600311 884403112 150111903 157937639 206119610 867213962 396810929 917579420 75420008 794068238 451733058 804315528 557021443 964183565 741526820 999669833 527108751 712809511 86187762 827358085 732268684 806237830 752177796 868324287 229695784 711835183 461608778 985337667 90020570 265265234 148909481 669039628 542050988 736271244 709116283 756469038 603045631 642820109 680625485 905820396 309777053 681577573 773670616 895294999 531487459 955324152 360917860 913645304 508855705 852800953 439844047 505200885 213959819 318321276 334096321 713032852 371843221 405960337 290156313 750304757 437277023 682186942 62714612 87002060 458775714 926069070 30763308 893933669 30445962 748647683 264608497 395325914 200615466 854567015 135278002 742041850 261537538 858701911 200779221 410582574 161439544 997687086 688558708 958547019 419375785 659143138 570939249 840056865 580007153 955604655 681902995 958115072 565412629 962923333 522078838 663000006 738290563 740066974 582303910 860638563 535975132 663335907 682770486 779303995 971514867 975726934 268014887 863638524 994261264 998239456 195996905 918828525 480764117 687362102 25863936 901802923 37812630 984437175 322129159 628669103 426771401 687151306 323355217 906899254 349224991 376260021 906299335 970493194 256972208 621096577 772393268 814978388 922227041 949597666 486322954 559601012 359829876 619356200 470963918 725791343 839211315 973407511 438830554 459628280 717825835 859595140 361681779 608513521 337043124 921299297 958941603 962911131 32318334 908634087 92365334 221423837 100495050 124675834 13897889 222046174 342540626 386328164 727443158 866986528 499135118 577456728 239720053 643725200 500592027 506528043 77733976 209944800 46224804 559007892 305300278 599207640 512582644 563821833 396562942 552229458 348415557 865187202 441293521 637026718 826369463 863929045 732542252 770769824 669747329 779555354 517905984 523886235 206334782 664640006 786728971 965841908 97939533 415289295 539841916 881845777 980778787 981359253 186889080 541558170 867651456 987874807 732205753 746914887 243548711 800875124 710156012 943911497 912758349 930399803 620518927 964633721 860390443 946900202 739083947 801828240 139279780 597488197 269078421 704735697 87287797 716349859 193531232 720842306 598539949 739379681 164824365 907198774 183473974 961126522 311308331 454912086 926562848 986776114 51980624 925891924 879943270 985092705 288504631 367511570 174079236 707369638 257659170 716727191 864813030 949448435 959081490 959629770 701068535 838174358 524158672 615477158 464047306 642469501 601650001 627362396 66733315 252561481 938037587 982019702 871623721 944339924 152246208 883544827 607259207 715187166 138499633 469748266 808593914 934267691 97151971 607732063 404663021 841897521 461493170 528063641 264984125 841604607 661052885 957181606 995403846 996893343 243183632 755538134 910139438 966056589 630943669 711772389 89829450 215064048 13594572 226805915 198783208 913554999 575002641 783865982 411571298 787724290 319627926 643294052 405220555 523319360 365307078 889944010 46397962 260303197 320580389 485288156 535869638 924968126 820094032 908229232 215180900 512217536 368228547 384674599 102404043 679998293 558913997 769242101 797240345 896084772 318935696 807540954 484902777 552230017 90978676 305931936 597741366 899990758 154476659 989218621 515630742 624472197 115680259 271757918 261152150 738920322 678158307 880404988 147928432 458885950 51908288 567077876 926885278 939747893 183489629 924938409 42647354 292843242 593303347 728998624 508222756 531095004 671265063 696525921 236012088 881219614 208764254 947171372 527594015 806103536 719008645 948356491 49422261 86753828 655793477 854057926 500342372 749208820 175540944 510467590 304003070 621950974 37381231 975309007 704321605 781449778 596193447 664618296 499433156 738546825 636604305 878646077 576663043 809256649 216394311 966844536 232489750 816386754 514716424 645792691 436438197 947085827 579405903 641944945 370810871 415231758 519877792 944087080 676692817 834346191 428781829 459699281 464836186 672079337 23552488 787578960 220229896 564412010 776008970 885118118 4256066 702260955 409644861 612133008 47778923 667799494 213847806 655677126 419824785 478880304 996212949 998041086 519487380 612620575 211211025 673329497 860160813 959496146 583480804 652614642 978059013 989554026 917756552 950357183 943454432 950903247 329983102 988330081 218614715 307206450 338280673 420815125 578383484 915161051 951899649 973209839 589686090 760976921 441300361 802577615 872682018 951395669 951510127 966465571 689801938 747914384 432256246 529985480 342040694 960030339 477572436 501634664 536225471 637213491 819254038 889032861 413478869 625522176 742918166 987216091 964598339 972530627 965249066 991700737 783151305 851105495 311029159 703127858 563585635 676452097 725934436 884584544 446993940 493633365 121583239 653692337 829872209 873812796 77691234 424437034 97213844 752773553 285739252 872468757 152550647 158281801 743738204 863259904 979649780 992358631 159021106 630901694 322174762 762009026 769250534 915434836 61836746 538015628 581087861 655348440 51120042 136250214 103027169 237715446 726326081 897870211 365284238 838617713 662035358 820855277 872255757 929328148 967102918 980606578 277191441 595226784 287397033 526218971 41183157 184318810 490683869 794627584 266103888 645717061 485883504 934296254 400567764 932650033 155662022 684724559 129772001 593602512 220360821 527672886 635328891 767327401 487067891 574575023 184843120 892094108 447521472 676575158 323502528 914683110 873996027 993010053 43541652 162382133 263105364 995249559 338702711 394100270 985333661 985723913 917501156 985671276 486506724 560677745 713735374 802840067 868350188 940176291 419042622 435113945 441597312 515924443 576803873 729359313 710894702 829698210 882666983 990253975 5939336 157547325 359416477 919332070 387938047 802550263 325696788 371236762 286014936 921074691 570686991 936791721 419458412 634550222 862906358 924840140 84849679 940489626 708064315 891999151 476916083 999853666 378505804 702801617 213497360 672548075 127064940 428376173 452682149 951070467 859308578 996815760 827536808 993717419 96987850 336350415 293466596 741878109 3745618 632624053 433912479 851970916 156351887 665731438 380492414 530265909 295070573 812524465 996179878 997334744 115931740 791453809 147212600 802960902 243777604 706181596 35603375 275376369 965632015 989072326 628308045 859699356 870772896 904633795 533289037 716655514 141769261 183399818 203343445 787642187 869446973 939792258 322921108 529771388 612774931 926844546 864961007 951000031 860612469 927999364 572172053 989181357 79848706 645900984 598776424 826262715 519335275 732864700 561648781 580003791 465540022 977997036 735943379 911040352 686350961 695922128 756436995 783058077 260959705 802137169 951556438 958529912 693836157 766420707 909247820 999654060 864498274 982847716 534061807 908259211 237482753 903937951 813055845 977101001 678100646 779568459 32940196 222809016 600761759 996991664 177792101 224070263 668336740 671584217 401715269 437985845 521995269 800789332 79538835 262034352 645852071 666062264 741159725 745159689 68844859 741368004 294941036 921801693 662864157 929091584 560222933 714620269 732553990 759918804 918106737 923864476 896738849 995058892 132430381 709177078 200224261 716196577 223189045 586514816 723028309 767257589 222935492 898766914 836534366 864720085 680596472 686886039 397853802 625212790 901582628 933820517 725499453 746327071 478857956 802489674 471095278 715013241 21943276 447124095 454297722 924430488 256982963 478575515 853091903 979689776 213531153 824751371 918890829 927829962 673739709 713639180 21897899 909140685 632194983 921881223 644988729 926253120 553531070 729670246 710842726 781814215 769313828 918591943 176134027 446632511 928916748 948771335 241653486 573584007 733083477 745510189 183984283 701414511 162638082 197586877 362295524 471700580 524964299 673440434 172730353 918868999 840779581 965197631 686629916 974676786 810224182 864078109 260086788 336811280 160312375 363936534 786051299 997624047 452868106 480183658 550987655 650771724 63171445 671554536 62576548 628671987 103331394 487409880 607463802 628245651 249197378 774004104 174066537 453111328 881754773 938996868 952349881 974740429 710144413 892043986 697886947 719136675 937223125 960231711 63093702 419302910 246088677 549910383 732194539 948907590 706328348 970592286 412760409 602745809 229920451 387323711 642595450 750816160 44410368 400304311 86026382 155879450 917385142 960631827 832420504 872597259 386352897 662947380 14541473 777865842 553071629 863963889 838780672 923095412 380640042 646028630 1824540 186854701 565072313 723083102 662859800 814316253 681401736 860403261 1243584 597786829 443378252 985089880 885811931 926189274 397705898 602885355 854126608 865178255 410499109 807286504 137272010 773285856 475525710 567461918 586186365 854852998 724643514 753254026 948041825 998727337 440699449 736697528 669638636 949064111 660805069 688919347 265186916 447724877 322267901 495015521 398073675 887356909 459011629 744276872 671575721 798464930 285085393 924676738 509096293 964338779 574350015 667785546 660837913 974090440 400819885 636426269 654978340 770865634 187353046 330944341 300455673 397609355 749336589 848952824 105731562 836622908 227002834 275771237 270951135 916414339 126181205 846614123 919066588 937208047 905922355 961032741 754963702 881614962 154820562 983408264 277764662 672076899 658022044 699037544 103331086 693789719 905698239 982887905 976909531 998744741 276940598 786005608 746313073 843484152 431107079 734752840 251586781 305556954 48197315 603157926 547303314 758647966 274886315 589337075 97940043 351444783 877013763 890596891 913798579 963984180 529946324 584805306 280535743 673537251 45695295 310021672 816191256 903371239 379985366 538574679 846276258 983906138 158871711 554222038 507303795 860074028 629274198 915851104 915114190 984904659 191422494 975150014 662091362 818780566 751317715 964104443 913217501 958014659 94274896 329836367 183910992 819260895 874183960 963251479 233027277 539152946 786524887 882486624 945808907 974935230 577735910 701869144 562999208 830739523 721007920 801642648 706088858 977231784 495055735 518361578 499697222 648110406 695873838 927929710 472859193 801813097 782315833 883897510 254629678 933052280 809113820 832773476 141953387 539801089 523822317 644081441 519369489 606385850 42189539 366732060 381236773 749718899 573873195 866192897 589139836 976163708 606189347 802141581 253777779 396766997 703899236 886632842 117196718 968874195 325247549 572728435 890983561 929160693 385638501 940797135 949868344 988328907 885672256 931499224 306937981 445752835 966476030 997546897 380551584 947520456 770531140 945705241 24229618 381451628 656054268 876652482 388924575 477236512 15153456 536636434 114383979 375321735 328332967 837694760 189517847 302776537 119852399 516171000 941869909 950071323 472913935 669141625 979827238 984150396 783248797 871721981 660246405 673183940 280150209 442164794 365514923 455825153 531227341 780069254 707289390 944205626 781242033 958336515 762230271 859850084 972807534 986528357 20414951 396254933 275151361 368014479 737668462 929939570 931771210 976265393 104325442 617485140 1329224 400716963 119693459 370846863 503744302 692955899 740316520 792397187 374928137 515913514 441490151 504655921 398320351 657916904 297230112 778862710 499868799 832020772 33125343 57510672 640213962 659561562 588128106 796426700 533100706 881801706 926024886 957596082 98156539 362795769 440342391 640141844 714975454 785814073 127785840 283607218 468827514 828088139 633951116 905875571 90616544 608675475 35834739 143777571 961966259 988931823 756287293 948990107 754151340 760231200 942861952 957725079 515898406 790291794 669827861 906136310 552416962 662052961 423319308 453530553 110701023 422590147 41634221 994472086 364017091 569622108 695221058 973068900 337271877 858047780 378066927 926792278 886865016 925681730 984089518 999384927 486217500 910984136 759818046 924426179 286208943 792172585 681145696 934298431 191449960 855359341 8892966 658759469 33620575 534798051 515582246 763990246 939732307 945425925 262271989 392451378 425176137 440311893 820669140 821567005 848725254 978439988 1924105 220200542 37275542 591194074 948153293 959194565 946092223 958931298 631752477 795936436 363391700 910520151 826661745 932216195 239985350 840812938 824393166 856081022 933159083 950378435 620295412 659783712 157187795 696516068 216552881 803716078 700614644 926410400 276016409 733191050 511346028 840802604 377283035 630000767 256526925 466251082 957757588 964563234 399747967 536194669 43785149 821247233 373860297 944819553 450092055 712971442 945801837 988404218 794076646 927071441 256047329 834268104 379457241 441967888 399559116 800222952 63911317 372414910 828418260 856857707 981099702 996599615 997842516 999840863 648215467 968416343 459721403 726875808 191224766 389448801 570981905 937403579 471411396 556275331 506576249 656560994 764306650 886746288 786850912 968345775 103663687 254902466 309532665 794530559 721538995 996888027 330679434 359325688 798249356 953788298 695403443 819575670 183124391 761941437 209972522 979733370 913331154 945915667 553659039 564676777 87155161 865630075 225858359 238196607 16833205 771473818 703551954 788277964 815600137 905211105 126919362 144007584 27317329 637108862 888659098 897457986 274504924 959504929 341960689 493667010 690133383 749909377 163273852 695333384 575951778 670538483 571528664 677814853 148808593 336723326 349883520 848818585 253455606 741515668 481312028 743607681 772186263 987736550 513549754 642554301 149337402 924638964 572875858 725176214 273366377 947878331 380673758 421542413 103858441 279900975 304446098 867873966 814419190 961128664 239584974 823735820 215898404 220449672 651007272 900211266 408500045 740317294 107952130 161344565 705612701 800322752 441926326 928326445 100352100 261354271 829139551 971862441 569617405 815046949 684090229 722794146 104023294 378129645 185404580 674991565 693065440 764626633 336223711 640227032 178194872 693655136 494753337 688594997 157204912 722515631 142399453 339545188 742200822 915614922 854684240 962360986 991890631 992347086 111039238 680250108 622800149 821103838 930833398 947842513 191953136 270288367 59136930 109482136 381605109 480678994 939578625 987418051 944193728 998967037 166491626 236930328 238066584 831449596 848561158 902331652 825489181 979892778 429029541 440477721 885989647 950984203 239236875 270989503 507513696 625908001 40803111 80558809 521855835 732761373 275455132 589701916 510364647 872109675 170480250 180081528 708756238 774876754 512371847 734744015 469453181 757211645 126026958 404433325 30167980 439539830 709912007 855837460 844284263 944517083 831963488 869491170 386583300 484402824 337733516 589228672 53961507 483868699 823062575 956488620 801246999 817868457 396266483 402499345 581299781 649084552 545655329 784799834 729753558 841779772 695552858 695602901 82371408 427334118 340021301 565599758 491705540 748520941 307681213 822986132 894513869 952912177 897195551 951306802 296916563 766578125 661154544 820453295 499278238 820944632 499087182 906507979 746112877 761049281 625801887 801097118 149989502 688185314 233429573 793548804 261250640 355776465 569667561 648867350 515515319 987263997 717670000 724566989 912668271 996800763 277447586 880543853 831466129 991677841 725309193 843420587 780497585 973302616 402838157 402872669 939956734 990779270 648218749 675089847 897263804 935817966 109219292 881639361 122693095 727004251 379782939 418304443 938572680 941728215 240024100 435570636 579991019 975660126 758914708 792942358 841621185 876899358 423591238 717184991 591089673 694357274 75148184 249361315 82670620 349144661 861877134 906114640 140286207 977972576 156635832 655515901 735768002 892730573 910909188 936818113 951440134 989216645 821670151 915385153 142432078 258790121 302423190 312684652 40018544 818674472 192245668 963980566 859304401 976576863 936353601 978166150 882704895 888911740 393735597 704048642 313026624 670026717 82934379 354937997 301575345 916619210 263245507 503258399 388703001 872752415 138405740 284269051 652866074 683606463 851916620 881288344 294237904 511054455 659895477 853015379 967912471 973966885 618429868 876212441 474235825 833544436 539347345 611520774 436157953 705593660 400400553 470134524 143536471 853045294 202995768 300399824 580301207 791481907 10807502 317440706 638389427 880385584 99088859 393608762 444405227 820479495 77964697 115311610 803709842 806652739 381130259 996031950 608290967 926100230 722177098 759425283 160926761 287788448 396789816 589945617 497861993 969073742 461868473 559542282 768827903 944177935 990941586 997621647 763860352 952749308 518903050 762934137 400318819 913782557 854001394 867325427 290254516 331521133 661481610 843993080 372760133 823480458 385596885 552599094 770093739 971383234 855692929 946917389 644484921 807906793 735823116 985447479 170711025 692449531 208750169 497865278 642247570 697206598 305746317 405676026 543062220 589778763 558070246 659816503 545670643 942003879 705802271 851751234 710723904 811837711 823017495 826942671 272259749 636997763 870847454 983500282 381032669 745628675 400708244 404349675 231370223 327579138 468388457 964278158 873695934 958855736 204769288 472711808 277363164 879559213 47677235 261769507 352882214 711757998 883060432 971689148 588851809 598157252 210740542 885584141 139211174 987903401 905723070 987546101 729664585 911739410 314535801 558416395 140799204 535906246 566757548 807171698 721796243 833249346 428592020 709713315 931117428 973528153 585143122 806742004 117390324 953157572 23796062 199109976 264593825 592725735 27122726 299493135 897888950 918981266 845292106 947342664 799355221 965044741 175294195 678705867 234647494 479177587 359056614 703325003 533638046 943956217 182300714 416029734 469747345 607358826 857406346 973744362 239606515 415081519 659104073 916330176 712952980 941407619 810845555 854403882 138004129 859916179 829146283 914350562 769749463 889785838 871098931 981250922 387660682 424113376 675690504 823859140 947842831 980507412 226928272 598873343 392614689 904013575 514893779 695016833 166266776 679657352 801103814 849751904 301748361 770295366 772409812 852692500 35180933 700890417 418763432 832092112 93427749 748576021 144832794 382814660 792821830 867197223 956934967 963257939 895467224 985855920 249038542 753917679 670565035 823771855 661252694 799784178 489897648 683412790 83333720 938980477 364036828 436823909 753008317 944444633 718396804 928321528 421044198 784815624 587637791 839671517 670765072 869339147 992584199 992596067 300955442 331307212 273476079 461308320 96930308 508712353 603198359 777319162 503916508 990792846 712066405 782896654 466025153 678618421 11107273 352973352 367660890 759568855 804804792 814352555 24216270 929582226 342439004 784221098 398675093 514866624 865971174 868538218 342219122 871915886 103898314 140825114 514466301 516254371 60797110 161898938 703711337 721200245 221481459 746813902 641664596 774540526 149693280 616714201 97267860 920429111 237399066 579928901 795971691 956975622 152121218 234772236 871837303 897678347 669501927 697084365 607640790 984644872 268523207 521678943 331059990 378818358 451133489 688456827 197973498 835349702 896402747 962373967 234845865 851151782 898946026 936335096 713192004 741177040 872419537 983711947 979245044 991165988 696010120 742800611 611440479 838185073 824202959 903185352 485865621 666534318 434847456 780318136 890320877 968022592 888941818 991384470 716914053 843440034 896969068 960055457 683889279 753126848 942006829 980612229 984605633 991112154 761389506 824544971 374960901 379654338 828189787 870348985 497430957 939015534 799107140 814681344 800454750 855565425 36401687 322847082 365496884 558897005 486160416 722602331 877007214 894212874 956648022 988832848 657197223 873619851 776147865 934340785 459127090 673304314 739798613 940210330 849258675 892713689 743520678 895584363 756652732 757055245 864365248 899496054 553693313 712414279 593086113 679563267 167228917 513668581 236713910 556051117 866647192 926766002 35677124 300847270 441571741 706861297 965747764 984493730 868413659 883334194 439205167 787075480 261785515 649617873 111413500 227149212 314843870 997024501 505549213 779549852 341789398 728008091 82630618 861490042 427386700 759334943 882407904 966513422 970798147 985394349 155983329 531566231 491165552 916082684 607122610 842448853 945887484 997232152 264711994 715616345 462225911 593537266 227150557 457148442 656055974 926079839 552169295 876008993 330517530 657622198 443824937 576357189 794502317 889327605 211336502 771313144 732246323 994161939 242697810 663920574 791188597 856352043 646000930 787568091 281287649 758418638 976576704 985538229 249801783 772206919 279296956 672361519 732079726 801063712 746240672 750669180 67289521 206721147 97489508 895211664 109736055 978199416 405773587 562035973 852026524 997380716 400177489 446787707 890286006 964516207 536723510 860663117 487403871 943298982 442948738 506537568 36443043 566037378 309409651 309500587 73487597 573091418 991590877 992438109 339454034 959881385 214436765 362026505 448926428 712153520 369434265 614845028 109179980 623817524 776105438 947815737 921333953 939172480 580869916 631450053 412937260 793220549 185711604 661919136 430194216 445343118 856049996 902756432 786753765 899756972 759876464 968028316 650904209 895284264 417241554 744190724 156599156 308726368 119278686 887301819 181645966 786169164 173769911 504191565 471487560 694233125 906740549 949856085 217353976 324235716 766000207 842529404 7795377 797348732 390347526 707103660 475201444 549933112 616578462 825364813 957473967 998925433 513901048 692513317 594637397 927001362 376729369 428493873 78079759 867144971 280251160 958346356 961109644 989626910 207819490 484414885 977556515 982952483 824618112 916417410 47175847 374936310 349491349 503354931 862656062 992007571 985050109 999936921 819710881 825586789 850944076 878631888 75299160 371939415 118916799 985472020 74931433 722737860 56409283 94647478 894125289 991143701 859826361 961048731 977661863 992823256 346573530 746346301 640551032 642839032 182894385 469530160 645800902 815987373 61869172 181496002 976377665 983797418 666956267 880050204 32954672 476312520 32717675 727986934 159749500 665244742 503813667 831678682 674743518 781320805 565572257 641076084 109469697 628538703 678492795 708824611 577905964 885928460 560962030 686321807 953420453 985142904 348734080 448173162 479647642 872821645 48173616 350171854 365633259 613241618 10529929 481192027 250418495 673014834 350476776 369193714 541264305 887484249 493762377 761893635 714223662 972807731 675727077 724220946 613224372 736381513 412680307 969480904 389811224 658640691 839441423 995869599 423104091 555448743 657229319 995077499 718472525 740925888 108840252 437093802 354191833 477669772 787693864 946176267 623821421 663653349 695912404 861040233 223077006 416704746 787028257 876719106 377053286 924404360 39760505 464501040 920129600 928682807 196074404 797990218 4965696 610783807 201044836 338254351 906061490 922726296 209334535 606703755 961042337 982873640 32960774 895601255 811789168 962937875 247840050 316403287 371292266 577271101 190366118 931153522 39432945 272510656 549166022 617465858 381583336 771001857 542016510 617559368 595149250 923579216 52211305 813529566 204919049 455889519 567803119 594236731 647672244 683370161 310918261 961548580 281624525 766221651 734201561 963028032 946763516 989550239 440329736 744476418 910712347 949768631 522260758 649253645 739296889 945022481 404720120 934047811 655350792 950925534 160504908 496360890 657990121 867441695 337508573 431472818 284700603 360904481 243668218 947951220 609014744 806242852 80058531 752287943 433157381 474704051 961474786 974851120 715246462 999463190 234482389 317359161 355088913 404876384 769156396 883370688 535183377 832855351 237571230 788940842 243926646 250808260 817760141 917675057 280947220 856627837 107027295 788143918 872290904 977780641 672765820 885599767 570450996 634585741 777055369 859522541 845732668 873512222 455013723 539783664 985909915 985980595 138200107 461343437 880530750 978979050 801117526 984414270 577412124 605361704 454424080 870992682 382247705 602563759 963687289 980227866 214337505 724752557 533793846 939445780 523573269 903687857 351528466 722321476 624004450 849562714 549885915 675315995 898899243 967382905 541615096 755481298 630397279 889242788 466028640 520773129 52398048 145624253 645413855 712915164 102744632 226404594 306854187 960903756 259937783 565077523 222027593 976750308 914372828 923873986 217205220 227002242 528406154 612502572 847069914 944791227 380868134 837777297 704455035 754020171 795114990 878826133 180914743 949570940 496493648 938367791 506510017 739735888 117794504 215755160 391820818 473569396 352841801 739293352 807137433 852271557 389018208 835111053 499998495 526604794 124430612 482896273 793954174 833766507 544885533 953859315 65692300 897868948 861144462 937938973 976066593 991599866 100455860 178443044 68215339 738743825 328801059 426011054 262703095 824567770 399756824 682211441 910042434 981151902 859814088 935735300 638716218 943901538 923416079 996471013 595684749 974852994 64491998 436503743 159434844 916683611 266025769 432725258 164178719 234455475 203882450 492002788 8181448 798051235 577668993 869010289 487202854 850717260 454837443 946794717 425159923 856328557 732447445 808466706 200940376 505649858 613074983 922164135 261908531 917393837 802751610 967618297 787952830 891672449 355717448 911868233 346536923 674816294 481770820 490273066 854655523 962766024 660047470 941240370 229152049 581696701 670311210 729625906 62151757 549106073 763864513 804560644 353981947 944070161 518273038 837924819 315804655 937142014 477636414 825940660 231992536 486070909 727970012 780838703 814831781 919198916 457088360 748346238 418625529 924855834 838518029 849959818 143560657 176287438 987244111 993078877 948080156 961603869 789459280 899418733 459447126 715753325 47520494 343249016 731821623 811442585 718557227 946305173 35583397 363981300 41619554 460210099 850092492 998895960 495848396 943551591 407419051 548105342 876893498 972184422 294518625 384233489 931274815 957568316 883279196 952096492 764986465 989924614 545157360 798720070 677380587 899778151 903066340 982183600 320948153 821816561 399059340 534318526 223191593 741310097 715722694 975528308 315667051 405281290 296168736 698574846 354212276 692298914 564084833 582582722 820718348 885695124 937706267 965897125 598877650 937668978 633081945 961423287 863435744 933604260 898371568 924668653 582413916 686478076 619051170 955244391 587816733 736046625 735300219 887258695 39170312 213516977 975520801 976143584 768660892 999912538 732416996 862709436 537011515 861393935 512306839 545866093 921141362 990772762 893673601 959493769 783672419 880286099 290733105 575134841 35534324 383493723 719613075 924234877 677310088 883690426 8567071 280906518 286055884 328285521 737713004 993069073 833013600 836204289 252278707 980854012 886019898 911216365 189408111 382493141 156086940 665547155 195366327 800061484 964352669 994347492 731468514 912374938 408136828 944288664 698004580 729816598 274790848 503612708 444883771 655861963 836860460 907805085 34346376 831391056 695089747 815774249 311894999 598415985 82003228 391707110 218860625 618288736 72830637 135431942 27649491 406102692 17686341 816389947 669157234 791600227 410872599 463561338 85236296 95235730 999974338 999985655 533577463 810949193 302502211 938301554 920643384 965174450 652684627 724014875 791645489 858610981 916217302 968233053 396759164 518737074 342639170 840536737 902878262 984546078 190952385 365617973 577236514 755085542 38721081 708388379 85339588 704197648 783739017 819534744 730573923 970488908 69907450 846926570 597126308 610908466 502615083 544972724 325352269 442614675 391630654 912716769 20273496 266288428 223542935 230920916 582559601 930819132 270634819 608003273 849854998 934970910 849809977 916180432 557683209 603073820 330538629 983315727 1297126 140591590 640299085 952960425 463648394 472499206 620662198 833629400 343126566 886301175 894804303 979084938 222272819 408027349 538961738 716146839 392965439 819324816 458871512 747581571 635823444 815312506 749774563 845189223 325884892 740814753 943002248 950575846 786542473 869425709 839971135 852515950 874066313 897340488 993957334 998988239 88560965 572201969 824725285 845083831 114949413 400944988 407488796 673976395 384690649 865595467 277097410 843859809 799517135 987184568 20491055 989209561 563429717 881485800 896110601 969667224 193280239 675458219 172921308 365710256 857545145 944025155 353111252 616539908 791468085 870932724 33227546 405031728 212848036 674309148 902040830 923708091 88342770 437305809 94123438 136269162 613138420 639587538 209700921 341622729 867258568 893300641 792544993 992660696 725572779 782799886 772022693 970025245 378888704 982617552 63343238 908438594 220156747 533323899 348272026 364175696 92856840 626508119 676924903 947217017 556503703 719358965 626807130 665405363 473629982 535335242 13589490 794500144 589832272 689658158 304076022 858284893 743399999 765298466 481185728 605195958 356199308 420674324 676988642 849837523 1789917 928887005 892933338 906765889 2462772 345334252 639634509 946231779 575700755 759137541 130305379 977235894 969413253 988379956 990109324 998087004 181857385 558235910 902015623 946980232 863261089 977660713 687036946 693487890 55545289 246494102 778724967 909802045 272289727 898446328 269182033 501802594 825575735 857498065 770573433 992498253 413398935 914015213 322314893 623817586 699759816 920240354 624925924 876525767 316116194 701431808 337534711 765420484 338841990 665128656 30757061 287638090 437626628 832986332 145662216 474644238 456305543 697608637 46233154 585419110 684830441 839413401 856084477 969839002 977321719 983715922 966775406 979982982 561607997 641020996 725223291 824887630 267160102 367400869 273047358 992791634 235399952 832187158 993165177 996674956 10742513 376115321 624502113 884997571 303342637 307299242 858216738 951892739 576261453 602026654 574038228 996596131 984596104 986438951 707592555 721576645 80805500 611350067 295030616 319490794 271941547 806084709 100010499 754204528 927869700 964589067 286126360 583542126 648067009 869508606 540192691 926464076 493530070 867446218 852310416 965743005 922934297 929245780 35653533 733471659 65281632 958066797 363675857 867200894 774471212 868118688 379567023 967522806 232578814 676451230 840933187 864163277 128198802 227956708 132374146 833956517 117447571 204216229 166483230 897674809 323865557 951817424 449113369 620842239 367078379 425701113 428128644 828565398 332263878 747613618 477987822 754511731 785153132 785212244 542459310 650174834 961254511 996031879 332627759 400243184 481348342 830561216 709938304 920426464 214976350 958896343 774346480 780777014 61684427 349701575 502407949 999063063 872150413 927618432 211021845 263459422 141039768 598867120 164991485 338759929 428650295 855011159 889340566 918574179 544870525 617607500 340625649 682069745 873669821 942894821 907990928 915915164 204391625 643823563 643255179 654891643 598096355 917406238 867456505 884353789 648078899 891857696 170242770 973607843 714871857 884459417 360347147 925649477 458237500 893372597 573009609 970208804 526275631 582587517 141638554 292429616 597470532 821342291 484091466 949316558 745816284 797042274 361247906 795857549 555098434 641601436 844350486 904199194 996416856 996846198 83819323 184767746 375310010 453272916 656646545 674294409 771486522 974287761 770870457 854485648 284974613 764574100 453700263 676111838 566705581 839440501 275680134 883359252 499909364 855739263 73654333 702421460 129735680 580370012 642035901 766691404 403826885 473780194 34779208 873147766 788876656 931112521 694531743 919359560 934196630 986098959 865174773 978162333 723311489 967552326 315667520 717179830 587586401 827560450 980204269 986498236 93272535 886363656 177493993 202789482 764934887 876528034 994324448 998903236 241738720 978297254 279549868 293745643 656119740 746899315 875169873 926981458 109630872 967826526 15514832 377039946 514621108 970309661 923156315 972719746 69907026 715897911 264729458 725460922 706934226 956623929 606859428 888840168 148669199 931108171 292444556 785746675 561974631 637378207 743115502 998544250 960832485 970542190 472003038 721085797 975551647 977975334 392272894 396946863 663722930 948772177 282835549 301296541 308303885 952580503 427178118 679071245 237886853 553353702 518929031 839288839 975883965 988307845 458851166 526947510 670522429 833946358 25743657 506302262 815954113 904910127 199802494 929971756 25350486 54734433 568102046 827155225 196956932 958210129 757943008 790395747 379751427 502848524 132907528 987109299 384185404 941912602 447651874 478882103 426478320 650660115 666167642 740959331 173772397 322351118 501845572 659576543 835667980 882382748 851024312 972753435 410308766 968208325 984862432 995895458 862170528 951009786 978418997 986247019 648326796 968162932 700200004 943444579 402232266 499757331 825953893 923175972 977306637 989258502 501025763 920282557 470930498 974581579 607802810 907089544 39222487 350366740 304642161 923500039 4456544 156485681 130545710 671546804 101578767 758538260 137805293 489118017 834415221 846683286 567015461 877061239 416583924 584488204 201695439 267751817 444041544 547084875 897137387 925519040 428257180 857644576 10566501 165111546 566559173 629037271 428667773 939012993 546417007 745582312 266827902 642251386 360666322 378405846 810829693 912108445 858724482 997419963 626035926 934808464 975606660 985079640 555311752 897685077 741393279 784272334 854553267 865675479 52527478 182003195 148442723 458311539 639849951 787018228 474909643 995654275 878089972 987272601 13954864 354690075 781544936 971575857 121505966 419111276 360931489 745825140 878386229 927964741 377555879 438780460 270334648 450545961 878056660 913911676 151583200 403722417 633488253 980618187 569190199 688823805 120889626 434263744 581674997 666876616 986283413 996246861 923290907 954445991 558823032 702209177 678234670 970120018 841701171 972603497 22989494 204416649 936328052 988918716 994337114 994510452 519398220 947781009 107002919 691370087 758397247 837199956 375262934 401660646 700335546 809253660 565453887 674543536 823995898 938166665 923716988 972124099 958728624 967070329 223172973 460017401 402881677 979562792 625171376 939282654 235449246 688082146 640790322 885533638 560012737 827649792 744985081 905653616 725293188 925078105 204275154 754857785 472470967 685750682 272678682 357661462 283593493 673936700 876295250 878607100 904710273 971910726 841424006 969676041 322646960 573782424 705081166 815984013 442880806 993769825 185665132 416697840 564868400 879269674 542450187 852510932 150621810 356563186 300235364 551024602 323305705 667665069 244381328 760913890 128762006 307906289 656032658 845105861 266622153 972073110 195098245 848796088 375789960 913958346 600477119 685957864 5032601 47610943 306051441 521806285 807770040 991653979 942493285 998415574 896915164 961545854 737848512 779918855 300146472 805034437 453826302 511504748 346088968 583352881 351036856 933759747 445343544 690581099 403132136 737158779 57338735 726307686 516463839 841828709 41059605 992946142 801616327 877736089 443058194 976330104 694799793 975787444 398794478 399809293 1211448 727028516 240487463 393671578 389711132 481503508 555877844 703168090 211801553 403250534 567448944 625172513 756725094 842997347 287374599 468824065 147714664 212390033 194179135 387362102 453405758 624534669 886128600 891308700 215758698 983743902 621064977 669547571 594488798 747263008 104507224 403801843 29477659 670246271 27166736 186460312 915490827 917078761 666463805 851273855 202627639 584851084 208179420 722372570 476820572 950353463 679844079 804268811 216313624 719426935 182565374 850610153 735679021 979709537 436720298 911963452 70608337 464737232 807411281 815583457 550572828 573730560 841663870 944986803 59960393 68549553 129468549 637250417 446302747 478881128 199865609 284048588 706020015 938946186 927776850 952486546 972937187 975948144 337813363 828877954 901935261 957844950 79000540 313779665 179100102 204177081 229254478 962299558 189004386 386607141 198674969 735719071 812504847 860492380 716943534 790024425 197784023 501812159 71501386 237124947 372247035 912341432 707134575 806545150 78594539 167941604 649415701 664276996 350283798 358712093 474721950 947875975 545052337 919874219 966637955 974347625 836473394 985628171 54636439 735739248 947801486 988413697 955376899 976510164 964099753 979723487 300467471 986817862 755201137 869897503 33491570 121604438 199367223 921167098 982424460 986778676 946093630 959264549 411852945 966736797 282925994 863186141 890192127 895616489 227234717 296120694 961968523 980791548 829385610 934393174 354883153 577225375 118772167 492976302 457313789 586217450 365058848 872964728 283764348 870051176 717251590 779858238 294081267 784597894 742565672 885539150 416070279 435539173 875443086 960529044 624488324 720582247 49514792 880339058 576425479 609884150 960791325 981425061 119403367 514738406 592149537 971427146 489355065 597333054 53781710 985108564 693938226 896973548 128227822 669278514 410982035 683560626 719411263 932188354 55721187 881874350 981383563 985997919 272720968 604434431 936478476 941144975 514491353 655371082 963466171 988304728 673838918 768008969 27055852 653070798 673236998 870688126 598771639 721991151 540545020 830095575 779738135 975673289 836485196 998405844 788428809 966656077 222764429 675616495 962686485 969598838 350207006 650288853 43548402 922552932 466061277 990074113 850445942 997886849 36690186 162864454 407314644 543443691 623678308 680608120 50727541 281727679 908153660 916041588 405153074 433205400 884860263 974410018 464280609 947697143 797320179 877108316 131882560 712444697 156866755 240789639 860902509 934311924 373340684 562817463 946635156 999874502 20813296 326398623 191270432 473443267 308933107 663739236 911875388 960882054 661955291 853825887 519573935 746239065 444329817 518416032 624979518 902564153 331582112 397179632 660869830 996151354 756056118 957936783 962368341 984971992 579332630 643592768 915057891 948216353 258165352 865425850 699215213 785987593 509737250 712961774 152613091 691176079 933032703 995830850 19701879 922468906 763400214 777093231 333125235 566297027 189930911 916745154 845061834 957303474 691798164 818235334 930388492 991619813 466500930 604984482 766835083 811041356 126892507 481658151 561529208 911131244 168792377 461766426 988517644 997507065 377560835 708275562 256501585 485383265 62581166 309835644 607503592 610032668 581262518 612576080 804017906 965708363 142001404 548425413 283555015 700042938 833472110 950350948 645096015 883385723 21572108 925757100 516658995 959300126 6447398 978804294 673938224 765196307 790191352 909615387 669171899 766817045 822462772 884380607 63864656 811322318 244112416 779908849 966300643 985273034 224075141 420217085 56599630 200156325 296308082 614093599 687802242 742229957 263883805 532257742 111574703 636586250 564191334 617243848 329300245 449770509 68535486 341362571 917503517 929079701 558515315 701696668 145840092 615363074 110730335 890211554 609587692 639802117 565920941 943592709 134550040 923209761 851921234 984477472 504467655 919659873 650897323 737403485 2190203 606364648 493925547 993014099 178865445 547487399 591951645 663108683 102362201 341906364 592748238 657039521 950586243 982389828 61913557 971562376 590941283 845005210 988061512 992625303 30078761 824346278 821967210 831298032 303011694 674170176 377971075 742613091 122784345 323020139 885371467 889930014 85667149 333974009 268481470 975999464 79341227 373829966 951314699 980800164 245805848 457210719 617736651 818627826 335666522 635711946 33312380 429543468 699725997 728606099 705880603 851003748 533511228 660177144 541231611 855183862 925178319 983719434 765965693 933224828 754201114 953374576 56099425 89676535 664431258 776139420 790697448 987174125 120725432 936997020 192366302 422720821 979956311 995323603 972187749 973622340 286508815 481985513 543772978 626526402 23710962 547148316 170104331 687358160 342232570 541506801 433680979 572080756 112760642 227183394 847187774 917816564 293409712 717499967 64127872 245564684 940880814 952070065 206105805 832484913 248402171 267583280 220302243 316955069 778506669 883093151 499607680 535688249 22071561 332540864 619722917 720393044 926588869 979084839 454308435 544239257 364987146 505640587 371158625 438706502 466792222 816261726 439942390 922140592 816731446 945762537 986936264 990314853 269020175 307307884 940509016 956384651 625886910 973913339 531425272 773152885 444428437 654361483 850385471 933466196 314930589 527193865 56352879 304514877 693302287 989010306 92803997 781360067 571518021 626600647 542203195 880799930 259420052 682423378 342882973 494066920 978140251 995867999 822481964 823205615 859456212 920194675 845927801 926467786 306225878 938964837 214499443 975078957 698139479 988804742 872599844 917580643 421128087 546294905 938156537 956461618 959914872 978527927 649146235 759132632 686396517 925898507 199927552 422966389 724604510 933887287 560725347 959130088 193984992 207971844 517974363 732271720 721399765 840506292 784795684 993727515 166423577 228704699 808861639 814805673 392291206 903081235 701857014 924236952 400573593 612249180 287058723 777398957 47501953 761604539 121675093 798398528 7380426 802603229 39070826 835879696 749161564 900212883 402891952 553268266 673667544 847897448 21195564 679671259 991743721 996456195 167947227 981440870 229895114 238117402 503485937 587619964 570473122 671980532 728513589 843265601 364499063 558173574 410002404 973539780 85188035 255085224 515719881 663459498 82406978 476876171 77308040 259906219 689908150 740729468 411485837 688097390 156160464 921960929 273594952 816193184 919270258 942506682 76197389 389818758 961254503 977773676 605000721 926677184 7181500 720941908 838630816 963857861 643095184 790480708 845051065 962099988 120067820 759177326 407998385 693542620 569550243 790702487 409229712 533248129 225608775 938538161 881932484 961150544 860699818 996851301 306480196 785037559 143325408 794669054 601644110 722879095 574385773 678437183 112408326 446030839 345708009 507486985 930949593 977566673 130937066 694058401 78644475 896494953 956815900 999111169 14113671 293629609 242034752 571867549 383232095 576709234 796311808 931217049 492645068 765801955 864089650 998978129 504000449 515908087 4985186 449315328 441915414 980413013 5935603 62712823 949383597 967034150 589683990 788047829 285360708 500260844 567795238 715314676 478689449 938570440 808822251 970155468 464754489 739604242 694187789 821896104 497762467 577857144 683323291 908882192 444521938 522148651 623729428 814965187 584592681 634072229 938255599 939112275 728684045 918475926 936636279 984954686 374717245 874356110 973320309 984548895 971525519 974453894 466021678 669001256 338207772 784523003 358106136 693451204 496913916 703743164 880988625 938850428 34318073 587596186 299891679 560576567 941619392 952865315 478610082 558934510 705592717 783294960 951587618 983063179 986805264 996317083 724275738 818734818 509923718 994400366 386071704 999762541 476097708 627110215 955371173 988178219 540102439 972993357 152779216 468716450 15257306 462546372 841237582 935728726 816242525 836107172 182971838 560682330 794305516 927578878 615303716 628540548 401459655 536724008 797164584 965612560 607396040 730546965 373656056 671091293 645161385 693905005 904604902 996925523 27413072 325832011 505722118 662240005 268733381 770541013 398114212 792044598 316417448 477757963 328332368 609626713 99056318 237095330 729127613 968775029 761968154 882690886 815056256 821199728 700518365 914815644 49036369 584528861 55025421 210568733 209827607 520650746 675373756 958173795 107798813 883456513 10732084 898143737 529788488 663535726 336213153 450883199 18352837 82812233 222243480 649780686 490310602 748588828 840918055 994268372 788246601 812878117 429518676 832427372 523334277 904632527 156676369 236798125 33486238 672284362 486095059 800134159 814728485 829648836 715571977 891356004 345147153 710476077 148659958 412044538 10829358 745189915 176648684 880873649 911256286 997603761 883294094 960798005 718034709 878165270 137602202 360399781 995451490 996403905 756577622 905947986 694830488 925262125 626321007 647079925 580953976 805341678 749563185 893054710 164018567 649586159 784199728 877335410 57313626 673354547 744653772 919777939 441975883 843048186 753592641 861708211 82620871 327129707 812307430 843742987 847520288 882581110 597589537 660780689 227386074 296928742 890735397 965362677 999429627 999601644 57822173 318767707 115006100 356977598 876196201 987781373 361152001 572530684 306069348 401378354 47875089 370793478 131385729 925561152 930437724 984589872 697177699 973927676 322369690 935821109 474109230 625373897 168167636 425686007 827945123 859760960 454803943 807287144 240414843 905848951 396182065 867877533 697741433 955737027 881778469 959264736 890138341 988650130 95147283 294839906 480420916 661083413 739810980 871464383 786945294 889088797 379956175 853203412 801166794 973311976 583556210 838787414 674008160 973836098 669407021 910498966 439000968 822175682 203847796 660622238 298997666 813649461 406639846 842762009 626333674 745779463 286347913 292393259 488909763 777933282 90247981 425973087 730542770 786022353 40900516 239201064 962833776 993727034 863118232 977101826 734471487 999486789 247791914 988440710 455243497 539432198 455133570 500663870 21008338 466199961 214996739 384206851 934853059 971618206 191699602 430619939 851580039 949749507 869435183 995563355 824089345 872247285 913392879 974305975 435105914 520205041 914640999 997179051 308660973 371106616 320523581 579130754 382996826 416114703 693867230 957245382 708624305 988035582 973973507 978174996 903355014 978756257 928096317 965980290 119924273 763045730 345122425 456416187 384229812 733466169 204760669 223824757 486383263 826475170 910250419 987834250 219690832 591476692 788716121 822835073 695860088 821104395 893077048 927052748 834572935 888893209 884372281 979396434 595677923 744727349 293946001 614966383 858695687 858777851 975631421 986089338 581100810 714222208 930203237 994891570 70730740 225720141 103478168 319559207 584829340 992313841 125347954 245750921 906774711 934476901 767640081 803167782 52563951 351495166 188825359 719020814 626239487 836882685 227899910 900049893 31135220 865886459 802117490 902073878 793346476 854081901 147144718 692779280 656162655 787120547 583540513 600049955 189235143 701737456 109636823 980748616 475117080 548549934 593930641 805598335 773105094 820229094 89964800 955654716 986959480 989200182 327863329 787732439 539361182 565181912 700201149 925548968 678767249 936855342 304820677 677157195 318974262 618228013 741157303 891875445 105269778 112680916 464174401 949530695 452908313 597872628 849346390 955924095 932911601 955454255 83013802 958536579 832353247 999816497 635089036 957716941 394367131 612810008 315435582 669472099 148867389 810639845 513912562 871184766 502208988 684701408 410735696 751555935 423143714 441934922 812498423 949157011 932597501 942037247 75501212 219851707 464035653 992960135 784846951 978289925 927327678 990693030 387757850 952140954 459742682 596463140 669606134 689914427 819387975 855928067 48274285 286036728 596029590 626985389 442586262 537429484 702612081 916710077 370743117 400615267 45943407 897573668 740256772 753099655 381640835 983661903 246226560 485070409 505346433 689152741 743530727 977330711 858584762 924928323 820602168 852029839 947876089 992895300 217134709 852095984 360009997 899146610 685217824 968300194 756519072 915648179 362447535 452312539 349494233 410495907 604071514 993408153 627411430 810541112 331782782 925403826 791350781 858933051 119939198 679641010 369833492 897392781 868306423 935159896 579607191 594294079 874930276 899655458 26005298 547572040 335468457 847572460 412164168 906380889 112555745 890299556 13208589 156882937 916726893 933514592 106281106 886451799 699680813 732208179 236499354 902761742 730600140 791590046 470273838 655339618 221720885 952809548 759815900 887959986 929557097 941704508 487620499 689594946 947025788 990123856 708420458 880723116 60358929 147564071 865337637 938026049 814551898 927783688 346780036 375875363 927562054 938782587 551830493 622694228 525002617 678817568 343357607 580234596 368236988 712250664 869994715 922652109 418915378 690517661 994032239 999488332 315265360 607605548 705804018 724648737 165641617 940292215 398971629 427377307 719385288 835667116 829146327 861013982 735199503 746989681 683003176 791225551 457853990 707827603 476025967 840094522 435704297 958546113 916600038 965476319 999004464 999321481 585872547 871263153 397622783 751440669 699937891 701438687 744509976 828838610 679354709 855454160 914831694 973451961 316944462 711427344 178306883 882967742 130103268 471345304 403699227 540514124 638725556 984069204 196427238 607459579 433827427 938452109 139116026 581053342 226021852 877869771 884594926 991892666 173880284 482697918 692817729 792088119 90531898 341086004 530933580 600855981 328737586 633860645 307050050 998068026 712101878 756774754 871498560 901242302 48066402 129875194 962105861 994784788 957551103 967419015 727103573 855739108 895888717 981494738 458267855 593081858 904005542 961736732 847556657 916601143 572862903 736336619 823489461 917249735 436496723 474380378 153546212 800690474 509031195 588743487 502491344 761060294 725921725 787198360 485510674 690687520 746812924 805852387 203330493 680706994 378624142 582722261 555145896 937248034 894957865 999985845 61291415 899526906 424876401 553705530 458123265 814956137 840431563 967518228 693285648 888187870 61939478 230041871 593794161 720593722 26912304 771684733 765545415 783097936 740801536 972334231 689972765 696693107 232816479 674834008 248195500 512021465 640735021 899141270 971521840 993786370 620917261 814495618 537326159 953111973 282523694 493861611 892602837 976752955 287596365 935117493 601254185 874973990 120830609 221084271 374618283 512683059 962410838 969380455 600771933 858459001 640584105 739360365 346453779 990237435 579801505 838509503 231941233 313756067 102297279 637069351 368894609 389985830 747755346 851058567 777045411 936544017 51339678 544735217 113299038 560791910 974059326 990309479 843206734 894303468 790359488 791972295 452361512 579854601 401136215 622169564 686049801 718608523 504778634 830219877 547511504 751316245 11273333 635741270 933049031 951825924 288949515 461119609 54505392 488479535 463747147 550126896 627373109 645073994 871909472 886057156 613182045 618323087 149314743 511317109 326436868 617317538 305807939 595058008 327923069 723387404 386472061 433339688 400463944 671890589 982279297 986321548 565570141 897342644 949484725 974028916 580712920 786783256 11109799 892431358 520885678 724302788 35835784 859418065 131249553 899211040 796807230 798111970 194665468 206144021 768094019 952260094 453521451 461138540 213452609 948891470 230574090 436381365 935751296 991843130 629194329 850720996 342389478 428429747 697530144 962675443 170344402 711493419 152491628 778829251 843081691 952664456 571611095 898208677 92916315 729627686 168197019 225751901 234928991 360731391 231745110 362815811 994717880 995546675 484740098 697242451 86889816 496835657 692503665 731325979 989391205 990535057 710923272 953690558 99181257 356336205 882830324 937968466 554793116 700772084 518343776 711200613 943443729 975203182 26670582 750992475 644687101 673839682 858452445 905537577 753699599 806755175 434098983 519201015 540244418 853192586 438258863 990141384 798679447 977219345 431757336 617149747 344654817 697527333 337457525 421319712 562823176 850564379 747753780 995202390 913816215 927382222 165608546 968041215 577906831 831338882 768338524 888977996 876183731 935419546 897638826 968394111 740152763 908876086 996469059 999233273 392026851 573599301 137828958 815490722 99279025 448278231 369281606 831364357 402317813 746270704 758806213 892642694 638947048 676764615 659852023 798361551 618175199 926215838 790516910 875936608 876672323 879718024 399032479 913262957 539668734 915907846 884894055 897954770 614547685 972187041 837147489 858092727 953428672 963192373 22763768 963921782 143440075 258624357 818509897 895894693 347563797 576319824 116040863 525984685 496916222 898107151 328872884 771434931 844006041 928485605 537938534 675176225 229337974 658192666 961953608 986656055 221615535 322315162 107052029 729197916 47583506 75995043 90979829 545826890 421436308 752830697 563897984 982145531 550649640 617064899 399617796 816652913 358252549 405118700 7214652 693320374 164910306 729241330 505150890 880457298 761010612 976428134 526359557 663869018 385080130 489669965 731836767 839471635 49563130 286029059 433651619 534954074 432352570 761292064 245006361 344223699 493560559 602539227 809608461 924654248 726204537 787035294 449501860 742076412 394451595 997159444 180021125 800539060 423098044 792814722 752550211 893678002 569314711 783419528 350072601 929293433 822269087 982809884 729872017 980288161 476852267 495940757 927064776 951128810 433676961 896984755 975093008 996577616 705233168 980993393 917156984 996004745 726960556 986205665 456959969 862023416 879479913 882375799 243371842 600779339 544512995 740441411 556344592 885949866 87201703 762333812 103139267 813467378 682404705 895454516 391986057 970729874 736324756 937560298 316679985 352463683 703076409 917409068 435102405 900872315 215871477 951061206 785989032 825544389 857802334 903978919 103098503 311325444 239651934 702767080 465853231 738757329 374742548 375503541 148392283 505057599 370684625 577424215 792810299 949953544 622509448 869928252 66890768 90725434 695052514 759182461 286931246 853935348 78853947 381514691 116193874 416521947 159963026 793775492 924260953 998047532 342062992 992394631 763119405 958020911 760855660 771406454 837909053 925510730 204104359 332651452 342120890 479143693 70518971 188582111 31777338 349334271 500296218 625746699 952002465 999451892 407650475 636220516 320907524 604343134 412644400 909852166 439171702 517402585 352077424 627308141 163298425 745802852 115853066 177610255 143276755 603174570 597485873 649555998 155984758 687858647 306708912 707673975 439023142 486524359 438691548 678092590 991256241 993447720 89901214 153354041 177337097 665535356 978036626 999773091 309685888 908939963 875331835 889061371 583330421 908062340 934272647 989799740 454748861 767089458 360580283 918051389 608829447 975683307 756602033 767699459 69743227 711087294 426469807 785234202 205518009 484859101 488637143 660534356 944683615 987827120 798903674 868181441 770160887 984134373 164941804 358104894 176888813 284502844 626735615 869185612 886253673 910312100 843396604 856083854 842738510 954023736 473184392 865637406 748095668 889510597 756664501 853908299 497311363 705513076 885900442 990599441 146401383 644097647 386097811 486660769 976413171 976883452 6313093 159324902 364269909 940203479 378810008 473731816 905134076 967247309 550952671 971077925 787964168 923854642 775671625 970758342 678497974 798194599 852767725 859215521 937363578 943482829 768217815 826569768 125433657 197087347 414812468 687591984 310145468 844119056 695117588 881690757 308565366 437470742 256454383 633354991 720104221 869876639 6125572 736984006 632207749 777890317 236489154 680607875 889771207 949115853 79769278 220257405 947650224 961252973 869628598 981436577 83274517 405976979 739597267 961999699 206612001 262299191 638811196 867249028 770244866 841144361 644659634 695443853 854822040 966399187 258030586 554127155 108322444 160053425 489185194 609330142 652639270 733177214 913368197 985260891 531583545 762581788 641425878 740113778 198731909 819191777 949771470 996396791 923401963 964258538 833499193 960241333 684002228 792617749 589834375 618081237 498566293 689842551 694313465 816684233 641905568 675690129 618226400 829288818 895443286 948351850 319593377 594867470 68002441 811429921 41483018 989069659 667377054 973989992 708437528 851368710 30311911 841808604 109058232 871245940 55837434 537288275 726532396 844429080 706494446 906531895 134702201 338989539 318551332 444084104 491060038 576542204 976721636 991371370 543070175 993326028 967424601 995437522 235214817 597073865 240911264 927564795 162761811 634473406 917586606 923454415 62608572 317546773 601270502 885117590 366059895 514309433 947824416 987185872 216926864 591223159 258342555 314400870 70144818 151266295 414320387 682496358 69350088 529615243 73944684 981721012 186407097 375552960 427699091 757257621 249580263 712523081 803346627 911184728 15000473 946253745 876380391 886881034 546114293 772915089 499207298 946865493 761410447 959841135 853423001 946898647 586016981 965398802 647919734 954809926 795728691 867611025 317148095 403996392 659406925 765457087 10265135 506292490 987962258 991776896 679059565 902233265 647533314 689983165 389275059 480447150 136593972 470702050 340259694 956487802 5488747 43397136 977684907 985821242 972568323 987044558 390675984 802183320 443711673 888252607 182994631 895029518 503006062 790007045 38767617 964839538 1507591 259944413 240872013 659886720 570643399 622947592 375693155 961391487 305490700 582917785 191189784 738768499 845252441 861681159 250371464 642599801 924753624 970914398 923615486 969081828 644315256 893283313 742866739 865495217 251897010 593008697 39396169 277320046 599997215 937282222 758761240 917186848 170569836 861043180 514785798 583833876 131884547 506467400 891631328 985009032 258183786 755628894 983930708 995271869 52403162 201726474 582761567 628845984 628372824 799862508 189627682 755972984 645632395 751103031 297062441 335104885 789566863 827161048 501925582 820541314 759703560 763335951 44177972 402672274 153577387 897047981 342843053 517610368 367922705 467113769 641216628 987689269 189100538 239165486 755015296 807157735 537102898 876676580 180798279 238832861 372032064 741503192 706921810 812668195 969353077 988277772 726932364 735342526 220816955 336087267 662222951 741134399 549150574 903916150 720969910 890228103 695845009 736488405 73245095 812931324 176609643 710528233 589939628 659402594 845903806 912600695 436141041 882148748 720650184 799424480 993162425 998529219 801251028 932933439 771961204 959120945 372782268 959284302 687119236 976065317 648874991 650211763 493088337 720636804 79379978 477356460 183818395 401869675 873204615 951704674 161888137 679478882 292354042 566967572 849577920 980355908 303761771 893449372 142441267 820239023 663975428 880357455 101876352 353234733 231108961 914357256 843257584 875226192 846574189 871215394 134221638 155343995 53658980 104012646 194391079 335205917 316076109 366179487 485210423 843316051 762493359 976690445 208522494 836017295 378687066 775546295 90921296 102419299 279093417 539904115 750652299 948309630 564030251 812445676 518678190 950600822 603180455 851259295 914927698 949671690 921415443 990327542 28890618 897801245 789880822 908910709 390990193 941388336 847006092 956184181 984209612 996645289 310224016 445723694 499684965 886669043 57564051 920021808 857659642 971337499 198621175 721524224 276329917 967675514 865380540 903875071 945062757 995465136 587553767 687203536 506983785 954885592 469719466 802635934 227176379 495578765 653230981 951988895 441396269 940133084 73792882 881734553 674230416 763850500 217168328 665348377 491917322 795648060 461904988 788577558 697034137 732011106 637055030 738019096 203276022 439633711 190256181 946001978 85137231 411620310 504703097 690447888 832099155 912256886 439690723 952069116 272000105 707519582 593991836 896498020 80789871 748503398 560788544 620515402 663057199 952380382 551459388 782187126 655850375 742549702 418333951 980648143 728449532 947866093 453841344 991679416 420853628 831719390 248713870 861732875 938668106 948109755 926751069 956344101 923919461 953643294 951110647 988915840 649478116 977040852 551918790 870246579 761618409 832622096 246831885 618590948 525496334 617242819 558807143 736393603 312702815 612473660 497397861 819340880 255524433 259401792 467884971 576109803 755645111 852471188 749993920 988010017 127553484 474911558 63321428 290702155 935842188 953715438 321845197 893095011 537802366 648882066 392124720 551068051 283562465 815039027 791530814 796071879 386228526 592661513 101531484 425183519 70575047 185986172 977937338 999655419 229632031 939244792 438099696 708085924 325297446 356402684 848612065 985974373 789908001 942057069 912149101 961606243 720697188 967317672 401325150 789166011 796872418 974158587 266480062 915804997 330156608 420670354 522706420 566796890 635424158 674196329 63964317 801977497 85357059 576598504 922547801 960164268 919681410 936722669 378257066 476409567 873660775 960107840 429548923 767054734 845654979 927698835 779421790 939240953 480776446 725071717 927767085 939249187 469938882 838627119 805008505 829380334 290699656 679225278 737996156 848531363 55986566 523594110 509750650 886945474 639254921 768376062 378854041 759770377 729522137 866312570 782862299 927846551 786140492 956580371 568751335 636962524 713236737 841239331 126085360 719796657 105297859 886741639 991655239 992605784 384434532 935319873 471486238 504444702 481818527 949730994 530030175 996486290 25857322 704073691 427049397 859059837 870125485 905503119 566614906 799080930 805491676 996789767 171088993 738109937 780906157 974480379 121678195 637915616 787819462 988408571 733056436 964960179 279282776 525597748 361378359 481636364 464053142 908709457 909228179 917495495 974279167 994444895 459967162 808381331 236829386 368949234 441330697 987351133 526769438 987644169 736241866 854434208 952897440 973600294 589908380 698901436 838971322 908178419 821290610 941735415 242934720 380948011 790221418 825021576 789823748 977420698 648060740 855281067 100356875 648441928 631527055 973637308 833039039 941820177 573388868 912604292 726981302 920322306 288292271 870213689 603757522 985654659 427776499 663517222 220691753 355267796 362149282 658930353 694109775 946802478 513668023 932199685 85311432 155665057 130867620 221369650 825159091 826831540 340359127 871241190 656446497 717500458 494899921 652235318 690379746 881697388 484639238 936621859 104966143 447609613 175207262 880269376 266246867 984081533 166470036 583129285 674464701 820467411 693571737 800780225 973141782 986986039 968699643 973372613 918338301 992311315 445890659 491107507 598417995 874695396 113891287 125867480 222684499 798299743 133284969 336058601 29925062 242840148 194000006 681012336 604680907 616401185 30994250 43706647 975405817 995120858 297282248 889413328 980195693 986570219 495367050 606056024 504578542 887344741 922208529 973585425 892262226 959921416 445188534 587974272 124776868 543826527 318831678 517170688 737467907 887478118 463868744 526533237 235857589 957889161 893508383 968924789 800042163 901877828 816725951 835215262 560648562 666766043 431704190 991420746 290789020 402714617 585358203 916956676 166300790 227726889 266313753 877548374 646239993 774092419 376880976 807636528 732739595 737070429 742135330 868243914 690085419 924309297 584069501 675196933 926825504 950035780 450474341 877075769 368709717 944014554 856229488 937583293 867441091 917516735 434512754 989773452 774363541 966486935 713194156 895780230 292126231 466529048 871598855 874461183 846792135 852695709 416253178 863461194 796552875 802232897 657919087 966417392 598573453 679561982 407465202 477209906 367837920 482959142 636998556 934584143 53386010 337751944 8477239 221124668 887892128 977307774 201295673 257972035 646899772 740858296 577728966 599541422 755191621 791083413 944445654 954932655 844498814 845540315 62442306 397059761 118274448 541191775 871663020 941975674 736507317 931000134 597811831 926189843 484175856 574660358 153894627 243906411 50987066 426175474 186711158 863816358 361846673 395289264 270153530 319261438 101834671 881202785 120767676 236637413 749669695 790091735 691616749 811679870 945157089 956309169 581026564 651863818 813337062 835355718 78578277 476679474 925001735 953472393 958107177 996158654 287106435 375928203 174342721 812645747 827295759 979982606 831536082 853886059 802485604 843054664 958648679 977455331 865494784 963966954 499070562 523989814 339821182 502585844 235971983 289812237 709933081 919911353 129736247 598880546 185556956 947123142 775956263 806138522 177001501 772365936 334267528 987951547 453299637 911085847 638472183 774680710 874145236 970931902 572059247 929587402 757143027 976933149 944684678 950904259 772816180 995632171 209340808 560163593 129515690 210807993 525114790 838964531 373617160 668318626 32878015 279043920 34728394 879575456 741505531 950326754 282365937 766080935 806945167 916958344 335434006 632684430 904097370 965731053 912972588 949964113 535033755 589539383 157589912 623809494 545290944 654226702 27242239 474057337 953551844 976070897 123431373 892856520 524715511 735788961 886663546 924938974 370991132 371733842 44888264 899789029 476643666 833778260 759536725 784249799 670817018 814216650 922783270 982967568 797342114 845277744 910657433 978774772 542417612 906255486 467384498 842567616 131263493 532866760 212348608 278774381 818517829 856874692 542296603 844886322 363450389 985939829 398545790 522854385 776355667 874278767 998666569 999257892 405220617 524437405 543479944 966628549 246705155 915440284 645224761 974022213 8192310 18712186 785978241 856497795 498230420 726037405 5251228 25192591 825008034 892612271 964465538 974282170 982981153 992224272 17102749 187407216 501019932 814330256 985803519 986327462 342892037 450541339 118649665 171222039 760767333 920150158 454541822 915883950 774345715 903688050 494953336 885695603 140146496 840980632 857342682 886318441 529526703 900888282 243437773 819668335 641635096 837370403 672009583 780019589 118405476 712091650 343917064 418242166 10588914 583015431 735150741 827788138 69555941 90253914 364314532 722800612 756243159 870623863 694074625 891363466 455196381 825609914 584308460 631886125 838803464 962495342 559602685 998737545 882590881 977923455 788512862 979242266 267427415 968948404 114526924 270227623 906322385 962838249 650457425 658276478 350198450 567993928 938442009 958772608 896474227 953138586 717358055 872731183 757975218 963252586 280031056 778658324 548303659 761426784 589778864 828622478 282206906 334970467 11425084 520709729 320370973 470310222 304452929 780340722 685221783 693671023 666379573 931178060 904144360 906504419 375680040 392560320 261061308 892215968 538827555 748987923 684891487 919169694 671443716 894469062 568957341 737877292 445056540 826611678 719688842 752886430 377468997 490303058 707085782 827731377 100751115 843242464 45229139 747340784 455286128 842022552 532360994 980364526 17525953 896210015 539020708 764292827 573662942 647901839 267476438 454726153 998596582 998708448 233530853 271459582 368273863 688372204 849409042 924654755 699258884 781848318 15146526 275820254 318373721 326172901 958187473 967855079 613144070 766895827 398763106 846437940 245911440 349566686 327027646 571492734 979090608 984608215 76536769 723125157 568263112 772533476 181943810 322183191 895075666 931015745 231378471 889679254 829040146 836731355 516107421 845154129 562888212 590545320 873075882 877809226 582054679 654056866 372866243 650976827 351639231 657767238 735603848 835552000 633686228 986701540 966116903 991704663 330573219 478461503 94061247 130472079 527710103 634843380 294722633 818163235 857044845 870761635 105517229 831462838 897665297 937908967 690241207 982902633 939274964 958331880 40568261 408343000 574144135 846101515 710659738 797993495 437072002 769693097 677313522 896137005 869374586 983059936 220038070 717381146 52985155 227179587 803785957 861619853 236897035 923311108 266293185 821344642 327628033 380625400 73868825 156777799 590274599 830872420 460694731 648082204 996375204 997750009 713475732 908217652 131532541 765049349 817617833 988378507 934964458 935512656 983061975 994249291 612366435 619645102 22421761 303809405 46898670 136167488 652774499 767300761 907848855 910248691 670525594 716401331 652711469 790119988 540521887 961600699 909270143 962050300 722896885 996117209 422178915 638753068 116490574 939190251 86425568 961462997 68014308 471678915 703143957 948106189 919577757 976500299 434065628 490141345 734133910 888345056 82506486 755597296 850718873 979596589 544259832 546057286 478062270 959437038 72802361 987293044 447586803 776892347 522073261 643301162 421472812 818033795 275594325 672670467 291284310 380419835 441499069 996303849 896336669 944108336 673901514 906418220 779230377 858023901 64754540 499453595 423970530 522796581 743488324 763197678 75779760 800457247 31335383 797387319 138965793 715156448 719427034 918107724 422480917 711390007 512638489 917314980 50781020 965736980 89596242 466061963 367795664 581271104 91002811 425875359 339100593 971557468 397822858 879269958 993992089 996889049 560972449 599867025 964402811 966315353 543742333 962969087 725684384 946416991 111880274 645101338 377035334 623539089 378776843 430095512 51901855 302598730 607262803 686911452 829578073 976905286 788169991 887355799 588432604 944504117 544832411 551884691 998648377 998808590 757248913 977123905 237540050 366298453 939506103 985152159 233627920 552538706 684236131 980378409 784882182 797541478 830551540 968803530 443352161 828856803 831043138 906629365 987487224 999744896 421720669 845308947 115137051 172754904 559259641 822404084 616291977 862304573 675437507 902389234 266071777 281878827 10371111 357041854 267833999 994597048 705246715 765058624 220961930 339457267 996861412 997021989 895844635 954361787 892491164 990994636 828609779 868947295 165228464 633335774 935676251 945302326 15151935 119031577 299032226 597200600 122210477 135280817 149812899 740764490 239868325 338667642 432314632 865090345 167446523 887704956 95616397 337309150 799114802 878810696 582958507 942044068 522852256 847551696 529898266 647581153 12554966 42322625 480280144 706490724 116962630 190039154 452423780 506761499 612992904 937383509 149068413 753756575 131531870 840497258 963067891 963144916 974606144 985747473 329586787 545361584 305909143 617105996 85478974 552584655 437575112 564022164 588141816 897649084 985557079 988214737 831217056 981992200 424078589 629131054 734698123 820629634 44560234 552185278 280976575 697714980 917280866 941039570 639950273 975085821 389048120 991564309 390357512 879320574 760542013 885846965 7080270 795537245 717743623 749557899 540610817 847272758 114226792 931605753 626756768 803628823 986036688 996081308 915211412 989636052 401375535 495414496 548861541 875841704 309697695 553859038 975370674 986302122 830471156 980258834 700866451 894663150 473561237 957012746 735969593 906116624 339550522 701891982 594539854 934899192 436952107 824842247 308415161 903265514 361762988 892874638 73905232 557329606 592872170 599060876 877832126 930511554 849074963 972439065 333657235 507510023 946417702 973990674 608685803 812143652 54399746 961439349 767380831 927054642 406639748 647417777 700805762 927549596 492134111 836190721 335770039 733466999 868017767 959657365 761495099 989018193 596275149 779974600 416736319 829036008 766260418 903536730 722521921 880112795 988000077 988218267 577399323 794494190 229783987 614305704 990027887 997140326 985286618 996125620 296546631 710095845 36824399 920721026 257390366 965655458 767149431 932389833 187187616 572536770 150113227 409606211 366782423 784145453 507521437 947336546 637877993 894233601 136389828 832172695 175254282 843313605 587853944 789409353 326769135 713573645 395825477 763668802 508073495 689678041 935555344 957459934 488347375 629641330 805773425 975176400 573351017 680939669 391505838 450267357 246452754 575782914 436319122 840291749 321265036 962660430 770905462 826260096 546666273 586142196 727120935 770105323 275407503 807967864 108806028 678153515 74925176 336559058 89857161 859072391 80969136 611348250 430703708 535589958 781097158 893461794 944654787 966283976 728359212 884831905 888604629 971474416 949317864 957757727 911271577 981479272 553690956 817945648 225262581 371309489 840352983 940320943 944905682 980783009 735280258 824630175 629222136 711625357 383084311 522600719 694489953 748241719 60858576 986375006 146874616 357974207 4504423 691795244 454278862 761068084 300321387 979546444 463482714 922290974 249373240 638382022 985183278 991559987 961966464 989076361 592207631 803771797 685307286 843025049 211655957 782132276 202419965 608600330 670245905 725264027 613689222 956831747 452520827 652528286 849384478 947502000 637642791 796107734 259046939 719055788 489273088 527492506 521462242 648258310 795160684 898974783 141422958 479036713 540426055 735292633 157717182 749881295 63849000 520800179 355688526 595595626 604968746 687762018 133801872 277947827 818996553 973726798 50875418 128408294 845699565 958649966 460393345 709527757 297722445 562300492 751597074 806889381 611914571 736955207 169722524 315670510 425841420 487169695 878761030 961441794 394263311 732168163 315638405 904257781 603894704 861712483 744579568 835139383 470665356 999844818 93884871 942782119 751026159 817970458 828203917 880605075 862074338 993304532 262413455 624778717 116147201 970002593 653404140 799506826 464716345 708770015 208449535 323950562 326060554 548381993 318901657 788088100 436653945 645831939 276706485 542090543 650776125 776798239 231313403 665042082 611705264 870176956 110110116 548449691 920896942 945781540 507203171 797824915 131082191 539697204 927752974 928222548 794941041 941169727 930658374 992635689 3501637 881088175 554302562 906058854 785291701 836115432 680795539 683343644 545552606 793976822 997475920 998725638 633556246 693241635 687041962 958923118 629009183 629159132 620544031 749123747 262021113 442698713 401700318 571293165 396000161 657805944 609027941 788645267 526328643 856099193 210124154 678840895 582060463 770162224 894363436 913711279 462734880 506693929 719081991 837869987 756458834 942408206 387582190 538005289 537508359 980528285 44055167 672692266 443123619 814815181 584186329 653539569 762871435 965016221 421459671 751885214 955046689 966347671 999251439 999312532 699430059 841843134 230576638 721848835 25057170 784349967 882474637 906759145 846770237 971999672 943424541 987013154 542212878 602686708 768315448 768861492 132431571 770500612 708472878 969511949 616546515 919351681 426005548 831331179 801855254 983759161 177843306 676429929 112518024 125889550 204540189 762927561 228767464 701871576 52413511 414628152 727833584 789508099 881075760 933017829 867221071 884789715 82753852 97213727 767087783 803706182 175671831 481415802 810322979 811777477 403639906 710220058 627730537 909901237 249588575 360586215 203623321 561979037 935881455 951937192 427317318 711940376 347550607 482380897 166361748 358048057 367182927 934302262 627377422 759784202 593420126 962409076 860231617 907719437 113008745 821347160 677185555 895783082 696834121 734496069 407427733 871864058 433475297 908286234 685957539 781335465 702286238 886577810 716011638 900241159 353455577 914977653 233765222 267133361 567054485 911460016 317637049 760362381 909577032 976251773 510107070 644942198 66897478 784070048 831994262 903429300 972553743 999792872 801015720 929231526 321914439 402430509 420542902 585317141 543253643 657930513 569048354 920511477 665128536 725234755 537872878 601332530 163718135 993023886 13293416 331494864 173930900 192228167 235934999 955957318 472706851 725600056 296738397 464648922 607281551 790990667 954133303 999633580 880440882 949671913 978347002 978975419 347132968 679118221 433064693 716859793 328253917 394328915 620073665 782386860 184763312 908579511 639145783 692523342 172273368 175415265 19823931 105115507 890077827 940875977 603300684 714948985 879944595 885668464 557820335 734593901 243503846 288372725 769719568 867320670 827091707 878599961 584980277 670813275 725259277 986096069 524523744 977325671 931239059 969358915 954026442 969785732 383931481 411249399 760023063 914512212 73767642 872979663 950395050 975858724 106123075 861703630 401052677 840373036 207209236 547514899 660336374 774866030 242630240 778367673 805593085 971618379 72159931 156068259 223209705 536618570 37156502 921009604 227358213 530553645 103339133 275232042 220302992 817996084 771675014 996457074 553824834 950896399 300657048 404350747 744567192 885842279 458245571 508242268 477801106 746555074 73499247 456415082 714430455 945141189 766357869 989373014 861622867 950015767 89246733 410030280 575858109 897164151 532319909 557453692 62117142 108151450 613785388 801294254 268967810 395774113 449609790 494739567 656785141 954060224 813862121 964791823 414606097 463488227 168842226 473203055 699976616 911709011 149387496 212537102 329284898 676790968 184404207 919727271 517962122 828007022 729907479 988739098 413132817 838521582 427075744 689323745 3345551 276413984 285054640 619938096 307724287 957097321 478823227 877297285 691638177 825244248 279968384 549623583 815696744 933039211 222498236 400181505 336208625 849991397 885163520 917297973 600353052 779311232 384234383 485285211 112144476 678511707 101069543 589301611 267869057 665850684 822502103 905249534 741278264 754596272 764287246 839231101 22698420 785812007 452455957 547223587 391041129 614704307 617236922 851038687 938649943 953773613 494488260 770522974 612644845 671217538 238691580 897433090 134885916 568906444 949970271 959238680 190096772 335285657 302180351 802992551 945822310 992361501 641702860 915985258 125574004 873364447 189451922 811156306 342307306 835609494 959646191 988734959 298613987 411824978 886083504 912773109 480633800 591875723 307256419 698441303 721814910 806502760 539494833 863091664 385018444 412832305 359924991 545273568 889341463 964844755 432260086 538968256 593282357 843811906 303465035 804114570 669201589 681615218 554023180 702957432 862619604 983405851 862520103 891873868 495905649 603228537 72603884 703476179 77874084 595305223 410121106 789457171 652822865 748177471 426772441 914430470 538163745 911517406 216456326 554234517 292063052 643733619 212571753 997294420 614945140 621298127 165354231 472147479 817583665 866689221 590357538 927668589 915320988 917200377 18940535 192763344 285773847 390961873 415051987 960146494 88070041 439624041 218558274 636908529 990309360 992444064 872773294 881278102 305549608 822303797 238778191 954591877 20695220 263527279 463398701 633537443 50071415 535068981 342558646 875379957 748955089 811462957 775991815 898032984 62312998 195428393 635614889 921221969 389539563 783085699 139722962 218752734 366741270 776818164 805804026 887723220 64926069 256967465 28672429 754604297 903789898 916561784 12363448 107452010 818844457 861683467 673319886 720359654 536402916 998934120 548557688 779822092 451100030 640714746 390173209 876166485 12431281 528682695 507801128 771081190 169634143 232363446 193498398 531680628 22487396 143927310 930164783 947202131 366762320 881770442 798633832 810326016 81554783 347217000 390556103 407003264 264378130 603258530 802093001 885489746 549268706 936165706 26457550 453565322 144232094 406661163 595245482 930563913 13905105 938819246 471584961 504958863 601163631 863522612 716863765 824899269 935012728 947135155 335200003 917805050 151454267 939323490 509473808 747777247 85520978 221849315 649157197 888448158 804724991 994285889 983531920 989363241 680689669 710141029 914285714 950938211 251348883 267545983 868399778 986728219 112784512 387820117 241917475 921635572 707373457 916245824 490473950 919718099 993768837 996121228 910421834 959898631 500980904 796429060 926661402 966125139 373504260 432144046 119233967 955808618 370473872 856231101 819235736 946085286 72747508 662157371 974488088 993691059 190424100 515549086 743337946 830975589 460990174 955895459 440263857 635280582 432040029 606869606 771083106 989498628 273795720 737671758 276729070 688803665 689501122 961272205 98834451 629951962 50515364 752548972 330339621 792488586 483732350 983326678 419070228 718938602 180906330 808392824 597512033 738360305 433711486 446195186 117074498 416100288 460197781 472656105 759672091 891860998 708032624 722341418 130929569 742443971 383563163 718731776 334425906 565818667 800318287 810989413 150423041 758852365 53963642 421588530 93847078 849613712 773603153 792355290 699392512 731721116 644371409 882732487 43704523 284127859 529728995 903670731 265294191 473860669 273108848 441965408 153277383 835679265 101064896 520750194 769715795 987724287 625569322 684868453 603020194 738027368 911723058 948815840 509147243 531606452 453410551 952475607 478013059 988710886 536087257 999480606 383799312 897066428 983988583 993501318 286160736 813924091 60822497 462505054 733435334 925456480 309112266 473957207 655794751 664129680 656106497 795556045 683807166 976780399 226149892 848608065 483419611 780704926 841572958 898815837 433533713 864210415 374334957 377074949 565194633 585445734 874770721 939125792 315188348 830101925 258141317 770670028 936980148 981771294 858872072 930144230 769010872 851541335 169144843 861478511 431774054 521068187 714386756 961752340 922151425 974214085 98141178 755633371 579846536 685396134 161850316 379789515 14507972 328052404 402088720 852309182 588367440 688812724 984556736 999205214 579033868 683971018 501436397 686301045 524712559 580384504 222297937 466333564 224361148 355725085 697119816 731507110 501933717 883089131 283319323 321826768 363239015 901935935 839486099 987879284 849864946 873444298 557506369 910917487 871638019 899620462 941549492 998949517 362415754 456461898 351825357 787476900 442981700 915973031 96095400 461653115 790266428 976789908 572026142 609511134 54578341 73168970 170276419 174935843 531816520 960950165 197124492 458154874 472413888 608643377 180589295 413815425 365657058 385656531 703983459 783203610 512794675 523555545 558973650 910400923 886510473 909417632 49670426 925963979 437438893 696268445 910723264 977228133 463815586 998949789 174057842 696465268 775705228 780922395 600272514 659188705 289075568 344765714 100682536 277282912 383708383 442303211 973287776 991534072 649099711 956853115 769366029 794528943 446548840 617920598 174164989 713682418 551732743 740325089 121748596 771799717 126170926 678721606 877337690 950429536 934043867 946303081 137946924 789510887 648666100 907042765 383147594 642605340 266197472 845063567 570760477 968515626 466515522 475522600 527411452 971646915 95012305 143439068 982338031 985484008 876844438 961417913 312805176 964890518 896622559 999261478 824065430 830973751 499067694 770913205 212963674 311809879 896514569 904961081 431637495 822449084 138369091 971487419 301704419 911360046 313260047 901328496 701444727 900391763 602815922 781681415 406891823 507655502 136296891 184127693 765648202 938527812 109484442 549884137 14391195 114647367 817792603 867225496 79996408 659026166 644838788 887712963 923457818 979439013 396102125 669383811 332477792 770189706 18005592 941038204 595474171 925447558 709810158 899676723 299092478 789721370 577724629 766379771 621025913 896689018 68290536 628843974 799894332 982351369 814695741 939494777 67568976 906065580 672468312 934026402 81800507 843997275 25122641 162371508 125668143 722628838 620131725 641301147 151525050 446144357 355716720 363138591 375706473 742709147 915067156 964873428 946803378 997811924 648811862 932652469 508173837 860608811 588860333 833340492 326802600 381631083 31865702 139493351 636688794 689078448 385297257 388681988 331778608 767179375 944052588 994999485 49434645 499282704 356766560 396057626 137135097 168273128 353767212 960245153 406092589 998440967 307228884 677696976 256663352 746348445 492740886 782547230 379766066 852209034 479290708 693280243 318494711 578486836 683003353 953552016 708028473 921554637 446831400 534132315 484129495 618089577 210899872 260093024 550161583 842678789 671402882 788305817 461919132 687326209 538886027 844485814 452747583 553906669 585707544 782800332 561568485 935456982 728037868 755481321 626734195 759367149 943561575 962595108 265349514 553171732 632262448 982797878 862064031 922933966 778239280 978762069 325461484 751008767 776712476 862516899 16052626 483170882 306001824 446176572 856004552 858359629 509995411 970840314 378557843 477958359 485954515 843008431 323543542 875200909 333691092 937096562 725698157 919959856 723243248 882862939 915803104 991826457 726934573 888073248 406669837 612486296 59744038 485553258 45739272 650874930 486698665 499643037 198677964 569708704 570746852 843730971 809163351 946036834 809875458 918974970 550873453 585748217 318512955 644400791 594419210 748765898 73170004 643103244 909326754 959482759 925473912 993109541 760882702 894601522 410592196 853547832 259216701 629674236 239542135 404969538 93862090 340191841 844360830 874158681 638281471 703292014 984244548 991877079 880168655 913625384 633807994 932041279 394833176 608841825 504537166 870326435 952232318 990594885 356551337 612135797 998055898 999652871 997130041 998623172 804602473 958789048 263552461 369510001 487548883 868264885 793088559 942800073 346582315 593200842 989929371 996448951 772787644 908275903 62286267 95396918 456214284 459628051 803911907 889225429 747852777 764492088 83553285 491842759 839236114 948688217 479604112 996481606 292225495 420962649 648230061 672575003 426950680 971079422 210223543 899431657 594710018 623261299 389401290 443708258 136562602 327216312 45084357 53377311 2755177 374392753 423818523 802343933 60879252 718407963 470591605 640720516 656620676 873124283 662090230 879575153 166131587 925080945 859589069 922394143 474699695 890740340 782522705 783783135 214613998 962257863 836911457 981006451 584617388 718841588 342703281 845216796 344916096 938805254 344781937 495309335 25348213 328949448 756380627 972619113 410941715 704296045 801415278 813692071 316366333 947635758 873321697 907517874 321073960 837902304 587121468 902212684 474377894 767877885 563772157 642283336 711844740 803537852 590997517 979644423 392185122 503048286 585121882 764201541 307010356 972348887 190960342 932863958 338603235 966627586 838633340 949182773 956436006 962025221 206966640 257460258 864751131 996033963 733043267 773273583 692360456 783027205 550980743 792119387 111469877 153379156 661864216 830060074 776626995 846606456 584645348 973457463 707856418 958955488 156003307 447760192 711829078 899912268 958563342 961048520 487653162 605251059 869614155 945846966 366954806 482959193 311954048 394740090 353240355 995058243 807766497 870766203 481349187 574312155 914979262 969352544 333125149 463466387 204772449 907931475 282030190 923811891 210813418 570831263 11568100 104002976 992882591 999244295 568059911 821680978 551187697 787647922 792782457 955478362 407981352 665310786 650860392 890262737 718246239 802602869 402767397 530729997 43177837 86073359 196595905 415323040 16106837 213959137 18977611 960078485 202160703 708285431 88000985 158577967 793674068 993203741 93562423 723809237 23497542 590317562 33440432 385734366 688890005 701684204 984456871 989615406 146293977 650072825 582747532 630663366 178464852 804024685 813754818 914734369 843026117 973065975 459363457 784480675 158338551 186219227 808707541 873691632 709218455 743465750 631447886 660176412 305168074 419091488 894091652 986435013 418326506 841942684 477117797 494177052 232982218 833963190 264203165 462850416 806438295 946452586 613078265 738774096 990567131 994591671 63474854 836627470 205699222 867079975 50483761 619618848 86893955 930472940 588854663 828930722 931477071 943954175 807237290 927320903 896627044 904014494 702038853 978237261 918563821 926015544 420059924 512897237 992482701 999786517 276732403 334556766 585645805 763073287 136287841 487392487 4625018 690682530 274527088 522267139 309052042 789926234 240472361 459616844 547194866 935510470 224526961 522440084 83840173 173630820 540882415 987426586 199155509 332773158 780111469 884521238 908748244 911299299 342486467 873447166 28809696 68455709 754582191 925707136 709878305 988547180 669741568 706003590 747739465 811843392 401367056 542128829 229390560 654001695 609979336 739730995 335879591 755893087 669288463 855382537 67227286 432927826 922229259 969804428 475724514 656669139 772417221 775577543 167451246 768384163 59050586 63379682 61504140 820476919 364829078 739888029 581989236 835648936 930528252 935802806 342694783 692654597 976910613 993304396 715530541 808444892 132450114 892263921 224274779 286850648 829358308 851765870 302658750 373183580 753136133 914001060 700348754 902936100 712268859 890091756 681931054 780843427 175018734 780773993 531363740 717859891 366936669 574978969 871929149 949163304 92701473 832335116 832101041 889630537 893652457 909929438 500304644 886192548 757526216 950635740 717547876 845143578 773163167 796472749 558574250 803795843 362272871 488082530 156563342 650901168 532458060 595386403 392661613 931108673 448793421 945011125 462072021 953844723 998581830 998676782 416006418 451938517 540473741 724039427 702918518 772118383 682114709 947577915 429468569 572322056 586061236 882813802 446972199 950200498 977115037 991650361 911440593 982198721 928137172 976893493 205510558 527142540 373923843 905031877 146106921 747823751 931737742 933457020 352414025 916333519 829836861 901588366 177357844 894905657 667118511 696319713 691027768 996310706 842771923 856569123 558531396 917301198 290460774 401401526 637169609 839799779 265080736 345215692 711085331 843153107 820839872 842253325 65243316 559575418 424272006 986748782 790443581 859008790 88654486 607042881 194410089 268032553 516405814 685738497 617361174 806519227 105200787 645259492 725255155 801311614 181845965 538883143 317325336 640442073 687751253 787595036 389464433 457261109 443607730 956979384 680327702 765421247 780494646 895453308 401523244 577988120 907221138 965979927 391642354 936828344 35679518 565229939 647230742 960958024 883767187 919837358 341425277 814315337 680922942 790539746 314927950 519664658 603242550 827079496 749299607 952246789 569164663 946948532 345375860 743047400 618139025 668703556 902925025 983525569 396285611 733655439 998019446 998145981 405431550 915081334 945372624 998555927 390225253 467288251 273590055 988302050 324165349 541658976 371884936 949329711 527695959 919626532 360974956 779993685 328259969 603299569 269314068 290224412 137069248 778451317 110466689 150902260 827032816 892579281 48243835 482487396 819785048 835351686 755477466 999956635 964978738 997944600 867394583 946698986 977081110 987595932 970582856 980760371 196641482 856259464 480384198 542176629 595051902 829316790 199535232 837580902 6249544 234718689 709785585 899599649 602311907 833187648 980111985 990500862 460583228 916337136 851446645 928299433 106134568 686672977 677831190 683895453 386915497 639408560 131129233 244061755 736050312 988368487 660755825 883560840 317118827 996859522 526398958 860651398 95048780 390878656 752606872 882599990 919435854 949893225 777749254 862120278 414246557 976747689 93960330 651708102 511185927 860020776 416325992 885922831 146060425 385869142 717208186 799245557 364595857 591479533 600469811 831324048 76776896 187420778 512046685 554251066 946243528 947926299 291202646 559017297 969276076 969763529 31682726 127516316 470156585 573090472 523481030 626996581 882335132 971801228 747628898 896480544 132457040 595076753 447037577 459652976 261635255 867674950 805726970 887026167 252773716 582405605 17150735 790822546 146372038 359292419 625757353 703777903 214498115 860536926 582621445 691008279 482982259 701473700 60745254 916932906 684018788 898350863 880466545 916883519 774644468 808482286 970149340 998240789 106194291 472143030 569569254 683476917 261699976 780636775 801795948 959730723 569759902 972655541 455114669 827793273 227715018 878245070 46042527 189717937 213158877 718322198 330431943 577911484 860397717 918137097 344148336 762998062 15929796 734049276 116254277 621005068 24171710 333632338 63545888 969467778 635200910 746310369 92248115 657811715 206211715 518905287 58295123 377701672 480407526 867836333 8704246 36419761 976497785 999293769 79099386 956454266 452811106 576440300 305971173 738128150 621105075 646268464 273151319 809643258 155590445 888146281 367787478 713687387 542935047 962414557 385981788 765019186 547654116 661700065 774096481 890244185 301724079 471001780 462641847 504417793 613028365 798804062 946578724 971016346 238717082 400894950 991589471 996182075 574028128 713619952 413716612 473457186 534004324 735804725 707930808 887878367 329476991 470084784 379241308 554099328 711652617 765061547 964443272 966298307 834992019 950091709 436727381 872244394 311468911 312711375 694069539 839141964 148770765 903087473 558861882 670927840 984304713 988010943 891621432 906799688 278836685 449073897 239095851 593277923 275987821 764218376 184325831 400981227 221633105 404000230 194911746 782676151 14039858 232922680 218738202 682512727 599584992 656234732 363337491 387869703 57167660 383540816 99462066 455211693 308778375 496553943 8380856 931107195 585767701 893776737 519068383 899190589 976523449 982269012 605184417 756667362 83169361 586027280 383132659 628256961 744262749 928709725 397630820 840873122 362446508 926914954 359919388 649364499 505511212 855790176 959966709 990745594 293233578 429572050 701383287 757275730 272025863 682978905 561845722 698833434 792375434 894964661 856151652 937380667 281917583 335737500 703656213 743146962 209192559 780794257 416755499 736529793 288758758 452280822 732017062 916970355 584002965 913000272 767221761 851348454 703196832 915063479 459316109 599342781 337031376 445684018 690451095 887811160 358659240 608884872 647407391 704142310 752693511 859110379 149496718 231857908 280932700 378648993 738617974 770405002 786756103 901870208 271607242 714673955 288772093 502358973 165554392 745283870 874480135 949592292 249549391 691196445 169681221 517569836 243615882 990548429 459325651 996576103 412053762 970486562 755086793 770852760 354339178 890524562 313577030 376656242 579723892 785032409 181076398 709935157 556666747 571029994 228782393 533142005 601354763 641930134 190881166 959458058 461640063 991677542 734195628 965396942 132419480 899793455 403229990 779022307 751513523 887790688 528171171 847827527 620632869 622512122 313538076 714299233 494588737 646251404 922066109 972897790 553823533 673378906 399894681 460577926 292797159 449257211 392482041 578404233 451472360 524277423 650583515 954168814 142293315 204006627 581742200 734718784 689140166 781338998 528777963 687501775 607583289 655188414 975473898 980081616 159902735 167266654 817975797 823677698 150299615 861960934 498605743 827028380 360565674 567749499 800525702 833964600 309254884 654939799 6251346 571636075 768734271 883152788 452746265 611710848 48850087 952139873 278899449 809904345 311876166 474990171 780731320 802688172 106819180 485309931 611114921 664515801 704569698 819370001 423948455 562932052 431186013 911156229 557263573 569900382 262677763 740235220 77191321 860301643 198972474 483650996 116757446 896341746 175433404 521421856 580637083 728017464 752727165 985999902 864494663 901029403 865541828 943209246 478976431 857969072 544841009 687601726 145775261 620314220 841430467 931162107 715366892 844463217 873114705 961080582 695996882 988298375 240369009 630972173 686820386 688196127 316191379 580993332 214354206 576616543 425711641 452249095 884541919 960010534 573465435 915293659 305508385 487188613 270433446 496403558 524350506 912921714 703389016 836692337 63772521 649155891 782826993 933129645 802269015 953787659 39409931 870842137 594443465 942102029 754163965 829510790 431589955 955857106 834782285 981596454 8217841 741698773 954651107 999099041 965435027 998975239 915451614 941015184 875968729 995531724 775415363 935671876 804660481 868084305 763411313 776802667 620701550 944894944 765119156 841512754 792953796 839782170 340702717 726375815 131881958 892938220 208754442 543775089 601960096 805355322 515702449 545705660 413151583 794060192 187854001 664426611 407123320 518771274 437091879 598573306 784435030 825070765 274383057 285215353 577588972 752350768 829775106 837067604 872092687 936551162 230384796 735895648 444733056 669631248 538422144 749602764 735251381 742010883 273238377 838803438 589695893 738651453 16713805 627018621 31230900 830569842 724448430 925562204 581541064 615449119 838247425 878403369 409263199 591901019 366525144 677958339 555559259 866748821 237020781 583683568 173396921 222387838 560662697 809046786 294542888 957889649 918737620 987697302 31857051 267225523 218385742 503000505 626922635 860553975 687317615 693405740 154290510 443724773 906345802 993331432 629377526 974640093 860014164 907056979 829237620 864467415 47222831 190435822 482246338 618029783 413104076 450516654 713306880 960024029 311691690 683239395 508333847 732843370 28010480 98354976 8226843 74152164 669891239 725589225 90725282 506507215 8829048 447552103 812645510 991297671 940392573 983785312 43653131 458544931 616603222 723492354 376947157 965125512 956578529 983518302 821306229 954303592 412983070 456440199 239483004 833354344 858376049 938505008 106253820 845900477 748455921 881172375 450777563 901433667 110708043 473199103 910744104 921529413 466193996 762541733 48541165 925284288 465746737 795282442 195055376 783535509 69683600 377020161 575133783 594956630 811582767 862399407 532286739 937952350 287262488 948399906 596271654 939256174 745615945 883216934 365354367 401051391 348707758 551113893 212749713 336219655 442176742 809537687 922232232 981510633 434002949 968864090 533060340 755618104 157253255 342090513 168077665 622569301 179982621 602978269 562450490 924003785 827054397 979321390 238028027 922764159 752556377 841288534 577847070 678781241 476474494 835634165 455996532 508338557 926861052 995146980 775495792 885045513 155896681 653845088 736562997 898125086 372431591 761748988 963996551 987238325 79758998 230865535 709246150 803840412 50847756 555849780 104861923 280472875 610330326 764645733 477060157 778911882 833772129 927729920 362718547 433618383 438221951 679399466 546472217 622991553 615574185 907081958 752122077 779928642 477524839 883166739 894807023 986994560 623302822 835166358 313684156 826508563 806119581 976966695 376120372 783614524 8153125 429391000 472468216 697536990 448758163 677399054 319771878 845274294 935636637 948464822 930723207 983555145 544071511 625097290 275027342 723368140 447643178 569709386 835267450 940790244 232820552 714671379 216320590 565037633 198064502 336872149 313438818 364298184 650526602 774039108 162017252 363652913 849837484 963339351 880914534 952152591 148255621 843408262 985381929 993352171 539387482 642269299 347120492 841863906 810435897 958746315 754338815 949637623 219606085 414599385 655766679 761596283 938438874 938541759 749459950 832825530 539225113 569918497 979712790 997365470 958793859 996314327 343482315 696452929 170166157 526453424 600022432 847195155 116472977 585513790 647736612 706055070 700906335 870668568 802444251 901442330 906059316 962894693 187573327 302635609 333107771 588295034 219364469 504570748 401387817 751530338 858241161 967518850 540922656 919675370 678708220 872350996 805152123 970770742 192382760 201357745 263696941 887409453 516199230 827183437 60929437 783430380 73865084 243698014 340894863 633037181 563071154 981258717 648279718 862025267 649574894 706645287 805494585 990639868 275558441 333877074 464072036 763710225 576885056 620717334 912779453 936204518 486129078 687684314 183518606 519533018 398577580 563968714 417806783 675505469 55478923 836714676 382432785 420111045 558401331 695063942 82700007 979815592 339462512 918753596 311731452 638630152 985473183 998452706 593474061 684164637 31372010 227474229 385838198 565546759 362998644 671766229 25967954 887035861 223471286 778150625 752961499 865734233 14169405 900389817 764926479 957101556 945554933 990348861 32278442 294522055 30616877 95500087 788080453 972802443 922237893 961860377 142205779 929812416 326349520 852876262 69087398 475340558 726964211 971314556 669957988 738300787 197790196 411193306 103957304 624843334 93217418 582133337 858804316 896105676 598786852 887886933 18572 840445806 987631588 991220957 488991635 859240325 560443501 939795267 164604067 171127696 920441170 984311283 208207642 387062324 782788554 808650269 829881148 878926779 123229324 538800731 805451096 895264552 575756322 789924975 60232009 874696278 186474692 657508394 550848696 888437685 465300529 923641460 18962292 39308939 588650648 609870587 484461436 717219630 812932586 895563634 317699455 374102991 282667136 573672214 404591432 794720802 715109655 938407540 393867206 887903771 347964858 377354836 383122221 973036679 213468835 665357279 284677283 623111520 200612544 207159395 337917473 517316087 768977637 908555460 246408559 508988116 312157827 457362467 761105656 964849556 266934411 963706909 595431239 907427416 858991624 967627449 497650540 664408176 70433241 159615748 679570143 925116481 446066055 683428375 170072384 185412629 777874887 963025617 572576782 953534163 611659380 715028357 571407934 797299528 158592349 351802824 952102193 990231938 609666474 936916189 969951239 976236914 614776965 787450717 907196195 961229409 339247694 670806714 965376891 987066337 540338226 826857264 637931810 802744630 483826982 939404948 345852953 980143042 58279903 296087151 204531165 220350825 721814223 834255067 448929280 927761664 58790700 879298957 949815475 986689248 193982129 526985894 642695400 828056604 149220136 257644379 966520179 991620599 512535681 533992182 29789752 223811978 125347237 907503383 495025839 773389994 942428046 977938269 198432215 462032799 307356733 419010436 193319468 313544337 993373156 996236858 643382529 962506270 9705582 205717739 408902822 597494010 90969758 753875728 560407045 945403636 28522307 747951177 816399341 826526971 904732634 963803781 264310110 840061563 56184976 216843308 69724126 75774689 72352243 329195858 825552083 880461133 9673382 217157430 967645830 971049754 627483083 712709294 326436722 447940625 582618551 665326596 972216998 996297235 495974825 555557599 642197885 816571583 140050960 303996067 940992491 962165292 948734162 980980392 890177779 969993887 673404468 918677992 867965786 871343866 9087214 246484776 837110823 912320468 290170115 560207645 173567193 605690905 684477923 750919558 590139317 895815317 48537844 167896274 984636041 991601696 337131010 468770536 49011357 974684221 189178720 369244587 126458558 868272520 172079689 247792233 721628507 846313927 790964011 983009838 838862903 939338997 808585362 831446632 202049369 533577423 814620773 826952898 693062670 987904387 249410912 302766848 534708293 917758754 728021543 846738046 564849983 898084496 514235872 535410335 625602830 912489308 897934348 965369648 913857044 985878242 148513076 469936787 713581389 894239508 467184293 787903185 705234062 927905097 996913959 997445097 403200552 821743692 418758771 983146227 80932078 503216985 945608469 960835732 549186795 669591094 733655642 893850426 908305813 938254006 8746242 767226696 698985011 799715990 323082626 566521479 466830418 510419160 890223946 994767566 8961926 583775491 476292998 755256408 386101224 633237133 530061835 855446761 867728772 969350686 423760905 726940315 580109061 755587801 441365182 533557810 722367616 899790952 204528216 491720656 206135779 494139574 913763245 915041722 836106346 973530466 762968867 860464862 561760301 626246276 504774636 612170658 356017308 515229883 10885522 427022493 336889590 469966892 85208384 940187467 892976635 952951240 551191250 908305612 891791521 977915836 472963023 656305161 315323495 840308464 364103974 401639480 664072063 764144678 874718127 933213851 132915608 847065508 498537120 568333116 200736302 685689398 131859250 269071518 229860455 416770647 970084760 983911010 944756222 991595772 197268415 278041301 682347676 813036716 415491574 500549379 449465818 461870925 863740566 872056910 436209051 614071830 542314748 661239753 180990606 311090182 343787903 435929685 168888592 302854131 248983864 860643024 366672269 502144442 537960344 826012919 311953962 326615192 372079274 667673888 648315427 914180750 478610643 717866958 253088118 900408359 457264299 864615813 354572145 799286576 783983638 871469709 600192819 975758739 375581730 384266271 508534971 835687685 178052617 179758616 440409357 770826704 61681944 435698503 761477862 785581433 708320915 861673480 946881825 975209182 797782099 901234072 906089190 912851834 355883622 670598577 241309008 754937014 406596892 566935026 561496043 869593793 63370306 214753705 610025405 855595492 499892094 911752607 628400190 777808342 799914945 902532346 579838943 604770489 119083276 235359529 347502474 917754323 859138619 977236081 597445183 852217945 560999827 784886003 938097164 942674037 515061783 944623994 79578626 862848554 271543643 421834994 344968452 958147717 697604057 745227147 185445541 227808728 591507626 738435164 935723004 957934236 51199491 482547622 219916806 388547287 184080875 591066443 416174540 659507433 891736915 995841267 665980595 930298903 433795149 914002350 712825967 724442975 705092604 805665297 136993122 286151475 745458341 860770162 876045095 958051346 456225267 704875820 46464416 888447400 471191120 778131357 442833688 694051973 309601107 568311761 845732967 943232048 985110753 998652841 69820133 598574426 275877076 972348813 386643827 490611870 895292281 945654035 490416995 800173322 762047044 932936177 371264023 852355821 877567327 967969229 172107740 672915631 503438164 544761237 261561679 949955869 130967141 559657527 921236129 938410625 553519940 712477762 322503347 723829368 665786277 684449015 770139184 857333013 731729286 872789625 208770429 998265899 986596372 986943585 242865886 889278343 42407503 409771654 734666891 775001047 229516602 878701737 852249733 867901722 204667115 783223449 460260826 502628774 693997448 917772917 364962280 607020507 58478090 770346976 395143133 488015941 950602790 976652958 596626827 827883928 302909954 721362867 57350304 439386163 341120425 781214248 634166326 946210188 192288809 866213955 961695453 995841114 653253702 778003268 992576419 998949785 741623020 896237054 653586723 763842643 438160732 908083479 764538638 840157641 251102919 449989077 519743461 763828047 579717310 893333004 137451166 779161497 322614844 951257481 64119516 737557786 575102839 595428407 758281096 771948184 995975263 996802081 127521308 423911928 916197676 954994198 687225455 785697085 869784009 975710938 419420064 957041068 370961111 905263791 244377881 712768531 671206725 720387908 299393084 312152003 773837489 943748312 345132895 728559871 76703611 725386160 183264204 974709784 983538255 993432830 460800834 604508792 612239440 787368038 866123542 939175630 187447940 321271609 35407662 675002777 560096766 570925941 913822993 989695035 363562780 942655723 818895682 899397513 360659948 476921754 852756595 880627972 573443343 916995941 291091996 467911163 932557873 995657245 127063425 944121539 885276370 983308225 562304635 711241084 944006320 975917860 662073326 939769285 285817368 689913796 549122874 818515594 901814465 962192324 895438716 899707539 606263810 929927621 992652014 999493286 537139596 753999308 276867198 317321447 587721329 949033573 796770139 894481145 582967852 924836966 330247095 734748774 437896026 778484669 880545998 984468179 818075861 863851503 680730845 752073605 318140700 905632332 568575754 868872829 842866521 923623124 868114922 909549641 532379000 807330796 220713492 607914976 628445301 686728614 424918073 817845886 675316389 986041706 101029717 835161939 881240779 997264393 251024123 787108777 779388639 983457966 255652968 421063727 108599275 526357370 95589438 697758483 241224408 933391240 870574781 875782138 445500636 927358856 327416148 504102373 926748835 972201246 610555395 905535489 916646446 920351095 866781355 974894887 434165859 668753963 506689956 603031533 515762374 848836700 380236479 425576159 239259244 410742573 817159825 821815246 819625382 828997972 990468954 994855860 887482933 928915160 890097369 978459659 472577177 954207105 397315803 945310926 550300019 845344712 93657006 703914545 385085295 405533085 616123360 764588887 870705042 899512320 734455952 752651083 917791099 985782306 370239110 821537485 154860088 866463220 488518752 828011795 452520135 633054724 400440315 576117127 418207773 684252966 474696272 888834374 774918944 822987770 262197913 449094218 257052587 320938414 313535585 860722528 364403291 566885188 101465839 234219393 586434605 736971862 51398727 314849748 655136931 794251594 94850927 295763146 659619288 798120681 559192917 905692205 505400076 663488515 392559272 948802068 952523474 988720061 169629274 274069744 533361239 971869569 82193459 426466442 665627885 708878757 637103045 641585989 612889890 839585866 630581338 664999863 794636045 818176596 296023123 387138769 621707407 663035971 329078207 816907470 361221517 771523408 955347526 977213947 845718870 944780772 850321394 906465824 597002110 971437391 89688398 293520436 308092797 483919315 386532558 605525914 919419401 977208575 55220487 368570219 244738506 519425850 105031126 881731933 773008043 834125369 432893138 459899758 399672187 740424158 645642912 784540863 962924596 987243716 324289483 857453258 760158225 876814949 248823297 797963835 200914718 843686160 860564002 919347443 22684367 410415068 121475426 907834509 652111772 932446672 255534583 902227773 492733933 506901745 822502112 965981976 851979017 971204165 993735986 998242787 241890692 824891924 876008102 940435575 398980367 839046355 599761018 662482978 135289671 604909460 355435961 928995750 547314211 983912679 282478781 398923071 436998953 754590469 473291970 509680210 629492476 833513847 536501871 901932592 730618826 862779174 891738393 947008720 305698625 966640928 707517685 719240562 832092542 999644192 286997334 611172314 913172443 944236617 128022370 338264243 695339464 727151732 992587686 996707042 269279712 963454347 717615083 865866920 327866404 922837158 872745522 916552216 512850355 704878705 907015411 916259154 145363565 802647802 832519026 894151942 363078053 895365556 847412484 969267600 529189151 671311834 934786453 936816567 790582874 963010169 140190963 908522016 391788601 802454122 236865345 664594626 988822570 996774591 842724096 987480460 4563717 887481155 975550158 981461601 186686170 660619067 273640475 586571974 460842350 653167972 740419563 913255071 712278043 896440756 853290945 964066777 258709777 886113866 13984672 779416237 32637842 326271300 137983081 741558468 819548924 885702938 971036009 984125438 87653608 359327106 238459929 254601343 449473025 890524546 913371729 987825983 976318992 988637507 279714279 992319828 242487788 545482882 604817098 916493982 136818910 540327258 259742524 751358893 929128701 942033555 582181168 840272738 580646467 783851270 334933137 933398558 280272148 283329501 382342251 589793193 576189823 932109145 994402254 999094689 77069137 850717279 67920594 859049048 400872169 922894827 312627991 696085501 899771926 994312190 671996544 788718450 461757813 867792404 609241724 877050273 717118474 805199721 545030864 896599332 659359054 752955089 719446087 914485504 560011548 687312591 115691106 973512162 437094185 511271220 978212754 994299655 603186383 850686896 378983620 439741888 51005849 54950218 476786067 766716388 465857127 959561302 508599037 604144968 915535024 922096800 4556567 195855631 168317484 221730988 616250134 764175113 843612708 922765837 134674861 590074893 232619718 935830510 427561269 488280047 105722622 408210637 599350739 717060940 379135377 996781520 305155808 566236356 571498043 611317384 278642335 491025079 1714321 95612446 174172560 741059641 578126615 725271366 646895907 810738157 743664334 764582805 172727578 425125573 545190450 646508457 231603286 532040381 354633595 413672958 592193264 694138720 23913846 44904269 770454833 779359191 349068895 574866052 468009725 485610938 153267810 774610754 479256995 824347550 713627676 985224949 437058958 883074086 386205243 565192766 518701129 999912427 271244232 911050114 102898337 884705310 375693829 451988058 614291482 972776803 286640732 383658471 764866818 993309654 404713547 797604623 2181632 344740622 136869374 937681113 997649504 997830843 3955346 966889829 239829815 855546490 816775006 930559109 132033394 933796167 843905470 913955815 917337501 948891423 118030355 372948202 194632468 570790235 879373151 950014636 746147306 946419391 536579673 681420195 936358869 962097301 956429281 978855274 653631295 966486291 605186761 862894944 367205984 778152416 123775710 235055232 50920272 438348837 256935191 811689697 103230712 333781208 220514550 695422799 762372736 857383086 405729728 876432526 842681526 938348688 729611732 864381845 19718262 56857941 922100965 947173309 461137591 627106485 586263941 789138087 312453754 320264624 787988631 827448323 282661431 683740527 85381670 125011055 826865339 934369087 633886715 827376305 393256046 807863059 653809738 726245687 8646892 920681871 17054900 618274895 640564180 945472042 913392394 928763449 105601086 936614004 547790629 552343290 5658646 432444443 394437499 757682191 387582527 993520506 309294581 663035415 290044236 596819454 275950987 947045786 651332210 756481947 693441563 878108693 728200912 860587611 121319688 166216328 755632712 807680823 899766530 937435720 956045251 999266400 450422628 699743965 198354369 730484959 207536318 266990955 631923731 922473930 115769718 726157937 44930440 875968505 643399240 898144055 222262352 406481822 779466144 967150025 451182091 867634094 293756993 813424995 709187568 918348497 926731842 984026708 176350298 609279656 431619951 501163628 17250077 403769514 553307550 965566831 923123723 975566038 614176979 797241450 597549207 752619965 128699717 583700154 722112276 969381848 851117131 971590065 54970165 153828883 902488427 944573253 367741618 621860050 468932122 478348275 893235255 961426462 120250872 359653344 239759909 500753977 810959531 843909281 727591442 845343170 648084667 890760663 668751327 699751604 81457976 937027866 705680984 976768731 60929097 361594929 881764358 917206594 757668872 873911784 764366382 905202051 393478219 840188309 338921383 791259453 345906998 895085228 17140575 603792306 973023106 995434787 974379792 992903724 959023036 975850676 483441481 695454525 858413363 949082630 376126823 967128723 548625970 663750391 870308008 992369312 437219953 592813294 595771513 668067623 12300373 313591272 698453755 717467728 43243428 979215348 655691190 861003618 751686297 926573975 893946117 943128646 19437868 196849300 316418934 584741807 672166505 816218747 905663987 944960472 116503495 289193827 580029250 916922938 367797284 564005630 943219191 959534863 93558725 882697070 947114693 980632312 797970502 832895819 174020895 803477550 932044835 976717931 434032845 469796403 368486015 702163000 489519547 610249529 131137060 648345949 638857900 907716794 419866742 659868464 24868797 695227288 127949628 255467096 90283129 690522720 801757042 836576788 869945295 923155396 483873530 724857652 483021030 668009156 372838854 551400444 786120500 880066361 935196310 958892151 478265455 680623546 693229648 903009123 417663449 676081345 504521410 823324707 296875145 472032896 889076537 896737258 302437688 891179896 29540120 737023055 708336565 850797683 576032244 814210626 535746655 796187877 947184968 959973448 769105605 904486800 945848825 983494813 892361959 897469992 504379958 523545859 898200602 900831995 805388101 900148388 15543063 640757338 76926424 792155939 786549106 944529167 468224750 619803030 934459231 990534144 582961450 897933289 608032717 864040272 119687862 649743710 997378716 997988018 302792860 682910480 123070604 714540843 311557103 507256207 372521624 507302095 544253753 546014720 581724208 678953075 700841851 811195177 834822107 985458376 586299276 761112094 455781500 486181370 357933711 366341012 215624347 860122068 764700770 792490625 492149321 870212988 825387482 886339537 607652654 640564390 489633304 501564824 68567646 182558641 784973527 918343503 560844015 814006247 16285211 137270662 859680516 905876422 354557287 621508207 176930743 408854704 896560047 899158960 513863319 823339319 879389166 920184632 67248753 392714117 753087426 982255145 288916487 510986748 749085781 845628738 20418092 802374157 706014 959817637 934640851 956484552 59395430 793345413 307750500 336753429 662068270 728290740 631387807 816615855 761653755 785326912 782996518 906246749 93396171 663247076 348237688 856864390 495797388 630039231 587738423 632593664 680833275 989593010 864696295 915191009 116581311 261434685 209879044 224878846 199670253 667520021 583346910 763757272 94169169 421525177 555152702 780932398 226519755 938835902 734998060 930525943 804162347 886866259 106333351 139043213 990234287 994592644 292865286 593508378 505212742 900692294 372071088 558354396 549357666 578589650 732845512 839512939 340075257 721310886 221534679 444499712 483504368 559569020 297274479 379373405 657600907 870597157 755590334 832927899 874306323 968666673 215255360 782520130 942714494 968039644 819190253 972755705 231527414 921088887 200756022 904569979 71175829 641094066 813987102 912301185 142500839 674801965 775306584 954663396 715323970 804033851 64281499 632292645 282992189 669189459 716840139 822104109 989877793 994578888 127915762 766726249 881316731 974878894 786001190 905491215 654170677 706577537 267603221 716411984 297017375 727853067 839299595 929417476 920947613 921479438 336730350 374658027 783174661 835285904 391673962 785084395 820937010 986146457 338716795 757957504 707557345 829708841 1810933 2368955 435570054 984430179 838964067 996725244 228019296 446841192 308185423 558160731 140878999 952872263 281329465 743986534 953552844 954871507 233819972 307900353 239204361 497308678 421664363 729307899 302020791 937629768 734072533 828558090 233968248 606741390 891987718 927847642 848189372 893872511 896547802 905230059 832107032 896432280 784629557 859809369 674189811 769419076 863973075 870467187 389996532 610516935 212277402 368170426 991548432 994225058 116720047 850363920 405145129 988099603 249589626 291633630 379620004 476304159 608323381 611735952 281189321 879872972 435983024 992353613 220648646 999782112 405078859 735382808 182653683 508097483 941068749 992942817 657218886 713668416 623150651 716822188 452995294 893111970 591744249 603926156 204409455 610877241 93609783 827234350 823423391 978084775 339186132 564921716 501994341 827126483 284763420 369159101 452769002 975278870 923000593 991024916 448589957 627081604 149032515 207359199 682686480 837371369 376927582 746116964 951548296 966091474 186633622 627641624 763377441 827814288 192301551 640134495 166673572 902518137 511162615 633473183 359856328 694621890 814460492 831807052 981716071 987432574 162153664 318721852 427494523 552283708 955262804 967634952 99656770 521317546 835683615 863840326 666271067 673187194 4287436 678119467 396201030 545820521 161281953 482983528 970984581 980353230 721545498 723631936 939339721 948008740 484718621 749064425 914049382 947895577 840416395 973847986 917989944 961736350 757502966 897939265 722734128 879326265 540759582 832206390 444739468 863058525 919528645 958812713 247858871 547595350 852233934 877441252 608001637 923204693 42100912 724603893 534803027 787101436 914943805 918146316 267723292 578593143 109893896 687431150 187128273 601641607 494531686 494915050 82585159 560127962 753255048 770236172 557412282 632320229 226963048 261900972 259740498 944509882 671042212 735644025 430710482 954626270 987609933 993566772 955758955 986191171 712602287 971682809 456297695 473587780 81955405 536168358 387550517 465186993 375887432 975781641 770782375 851746053 712215184 966963530 746862281 784638562 592042475 809352218 363072173 719930822 531694657 727538231 478163537 896691066 317870059 340452881 597893277 988536062 808769816 996780673 140508140 369352652 114280510 248803758 807088044 939822389 812555443 938666541 266976443 953256197 106243163 735552383 410746763 920468255 846797746 851077093 926216660 955272724 150262587 804001333 114035568 621544359 56608537 359017778 398733157 419663959 691576519 700411075 377519527 781122759 544360793 630988272 392369591 772724531 153940173 570077286 190963862 427202577 276254643 463686672 69435220 794285865 186936626 903158665 325269539 869701945 196461905 394976250 219655062 316059788 64417745 877767266 365129783 450807565 915208890 972541623 616727685 669965345 75681196 373932482 908164755 979469547 157547572 870250091 344617467 375018810 553427419 857429822 895117437 946467362 4981938 48879652 301466316 998132989 597117833 834753918 221336230 284619388 300864208 740598687 166146274 243598847 967952305 969803695 330202572 743223485 772323118 819183010 565889466 718404386 866830453 979485879 995672341 995904177 292431891 850167394 788208608 902788698 556953393 583308440 936060053 947457550 894278705 937639227 957090318 975859160 142142056 817650334 666773239 870185668 954575831 990960951 182309642 787962638 93813589 240662004 940539895 940593678 534956043 798608168 873150667 893332217 601347556 770180719 786188782 799416911 348052508 443501303 420307224 492668837 922635133 941153228 778733477 837644716 925770347 951199313 460929046 972693122 167345478 197260437 48224267 511794854 226298057 437681344 611567504 896694838 912257489 919995311 736896983 836576162 77077805 553519619 542292139 899469865 566028886 888467222 867195688 933137110 552132550 781147601 109661951 580810867 157355525 826841651 912847928 949946551 456753695 941449706 858238063 864550015 812602439 882388244 373012384 439393607 658558404 827198970 861652148 966032608 308749598 322149180 194778143 868514384 200252003 760847550 120347378 607036604 985547098 990654017 40062899 391056059 505793502 794788268 529394295 981833450 699804119 823014936 921468453 992555370 657443049 867827279 218182469 247318125 148031653 697617884 989919053 994646099 52093401 456401018 281162627 838961116 288403243 659012343 321210651 667700621 357867056 423961099 243163867 333418474 425338945 944518889 587924277 959234187 253266397 618328981 805272188 969849064 934952916 944128172 324612329 348726753 715484666 994586801 347996272 781998081 151828647 424865463 688754833 807749641 315064192 615493006 230224332 611586223 610024402 855995652 586773506 633475569 951316221 977185864 200289189 702560694 948000633 997654958 105612848 243917353 48471375 861030802 328065301 328592108 657948395 738173020 699250218 801475701 755882326 760466871 93737726 767470865 198516664 747219859 117569441 440149839 322352699 567954346 96994844 489141506 880477258 918591516 716425242 905544276 549498383 853526585 374321727 860794079 388669131 531927163 315848399 872769169 914568758 965635191 417672340 697921261 384312458 882372071 861350493 943344859 838205164 937341538 410388477 616264931 442854745 589889406 55842880 162153384 161164638 414093742 479331308 954090134 777535628 870654596 654883555 680171618 459213256 718760925 42356940 777907961 323047933 582211552 363675111 567837487 462478549 905689573 245994365 358951335 486809063 993905188 129787695 184876848 564480092 846632164 950031147 987454807 770934353 849741947 730033650 774412476 500972382 603046631 886716097 927154468 512304032 680888682 332020447 795919839 926227926 966456383 927555392 994974345 980838938 984147500 190600853 488463504 928017067 966744393 176252634 826936093 60130021 913820885 463479127 739176257 696119950 847657312 886184144 914885182 229088295 532151911 189098369 284081107 703180752 791323630 464710095 939947621 644611533 721542143 197018207 693916724 379022153 641785801 856086192 998037201 202494446 699109069 188076111 424773470 951015165 980204375 243910840 543866842 275244419 684881333 365254642 833739826 443944184 965113530 37697343 174673835 301080442 320298368 558473928 971091976 692878195 812357685 44243189 97973430 700270178 737203083 642356143 966495746 561959540 614916377 18491938 318221277 194193470 924985130 971645984 977541520 302287153 811637795 208340610 917777100 470787373 794187819 183763180 457461983 328743335 949979166 734103963 862263979 377301947 820181124 42963790 828002706 42689524 142601117 128553524 694695229 249636307 510178395 500268812 729213358 114635839 838569283 742819318 998823884 447508861 672062884 169487160 884499774 858359341 969644277 102845296 526614829 855226156 871731555 956082734 989498574 49111331 905283525 701121066 983196340 606732769 970906011 18606847 797169182 744010385 894592313 328186838 857637260 22921355 287072858 557762113 618791645 352149055 523121121 248720552 432289270 939367211 945558783 994235652 996201572 247210941 787235764 246254844 812959374 414549127 688584091 766922236 873287492 187928570 653854567 558329425 594579413 109703345 601969248 178687597 299225065 717584007 891737619 640583487 922601149 306938141 598524605 804831381 869692358 519428275 795054367 407511415 669440065 707721084 795950614 346818587 350225581 265127374 672508116 797404221 927701498 69976775 794650965 419301230 680552724 740399329 953560705 458410650 915532948 222811780 569667425 122014040 528398998 151567080 895979437 558561384 819791007 84104277 248948033 254473262 313942654 141532968 267930095 363112945 819223459 71312518 220965654 395274507 479991366 893803086 999359461 177962285 209639137 752474564 828329345 738992942 984735100 214484249 901444080 111085345 417519789 134215225 858604163 377907698 499845347 373101486 692837226 798723599 948424365 240540036 298676638 318176694 435354839 249010048 798191968 183862493 369662860 624462017 857733809 889212540 985684957 923044141 967492912 429384242 972845870 695819034 968276402 17024257 702080794 167856914 651125205 213033938 702037002 249888247 601653941 149783273 911241253 662421737 723440401 896870809 940493513 421619170 872582230 538911887 591694325 515914704 554086084 856576203 877343440 317418644 564925201 771719118 927368933 499833754 579369249 921023813 985480698 453534851 595977629 655136590 748413662 661342404 880388323 790860874 873854183 476192121 929064285 350089594 829909018 586451577 680748045 884044583 994038544 979349572 985202771 106859139 149265828 879754912 925904281 354811878 955836700 376396182 423862944 674589301 702799829 445850704 845149987 788743553 905356652 436876540 557166329 865985094 931878549 105880537 374112816 985354535 993817403 674977443 680927175 878570051 904651537 688515095 922124124 4843650 997441492 546906501 648201146 6165766 776091586 138921632 850903072 942789660 957983418 515401052 940363904 314961333 781089859 736040358 879319617 727204745 895094789 715871815 975700649 70665140 485865936 877552210 989392322 958849445 965179068 859265652 896589538 657443240 935961186 341314261 422890281 225496222 271033829 419082327 634687755 640805280 681723801 256539082 774978182 575176503 738448810 728520787 982525512 767895573 821181766 946800835 964356179 70943099 538580625 408718859 466729332 363597431 955940108 281230669 914034409 159709973 738249173 519971557 865984956 590110344 929056070 451513402 463463012 149392397 787635585 387237115 995187224 662833129 896763219 957737552 973301997 332500870 604789430 874329136 933493752 630939545 862676463 793958341 805950211 839417444 943886010 345747887 694466694 504046448 772774951 876471910 971852188 343956528 829023244 217998967 969051786 519302534 609210865 785603910 797699086 508172932 883416426 995139260 999587701 721264716 966926281 257703827 737333429 369642760 704119998 198913719 854671892 945391386 996330305 20476452 116120572 579266841 872747873 335421748 575969320 307365018 607314585 160563103 332870949 14187137 589337314 247970045 936897839 659932944 671895906 892058414 913447871 723606856 851269278 666515693 809464483 223787705 808514702 773055706 836039519 613624891 643320671 474445240 984612438 46995025 729265819 897568315 959136857 529153640 658371723 126213308 386568630 772211165 927815983 296796808 927222956 235442319 389629072 312286 809618515 469542431 867543684 766384397 799966392 426858116 717583987 212443585 325116664 360985817 692710201 305336795 462983382 588053695 589024479 501501871 731949112 644547399 829325449 452580295 863324840 135560508 794142562 753275530 985766179 685081806 924837062 178120671 715283931 642295880 982473033 820127078 853847027 463741500 893369444 773371193 944311475 635571104 877938876 742587874 950584317 203835369 706839624 650708015 678328872 965568950 984500110 595385863 998626865 802610197 920467593 903724840 938156034 496599187 946409162 259345233 561537651 851387670 893695590 34659826 757199117 445582927 962442316 693448478 835156809 652395867 831545868 93902778 288789752 136204100 616353318 302759579 405380512 917184269 943837568 674209975 805105363 315049574 705193136 798411034 951498389 776879831 877748610 73278387 74600941 873694745 976362715 565236169 756260803 831549712 982214802 692521459 973678740 197981889 484018814 739982369 983067335 968007985 987203806 311348979 349296989 252460504 911910352 91372656 498016978 464190292 720182312 475431 113439951 296035379 875952285 600292871 885369927 812203809 836808407 299230663 879679935 878109543 927468705 243791987 252946254 95265612 318281361 270187643 496303439 743943704 918052789 796076083 963413536 216736766 673528966 905193401 955242379 719376325 791485617 687569478 918137517 269688722 537849155 574736054 901712673 507517805 581825383 333731209 481501358 406481417 629246453 25407195 840250245 369293095 598333791 130377596 913510489 939449252 975164231 638392057 802337446 938757275 965644903 861267365 990363626 297010815 941473536 933970555 966501062 117783464 797694963 56870794 355685758 561344901 579868504 800634729 934587642 461359514 934855859 901843715 937806867 840902197 913962838 204511477 644382019 181000371 556789683 20122820 135304908 996141992 996759190 945641230 979159721 306134485 796107526 522527878 993179285 886286674 985880667 99957493 128754542 47296277 257919862 249175538 798867872 500315462 956482787 858072907 984501199 845017039 975758578 395514714 561315749 635784330 876822483 478650450 711000533 119444286 322498829 168544494 561744491 247617504 329515966 501690026 584907851 956399387 957236136 701784505 722093461 754684907 983558145 460581327 889668363 604176276 776664575 935817708 962678192 458894167 811527052 731001757 793305105 310362443 758163737 291300954 996113294 644876759 920838640 208654232 486531964 824927755 987907187 762051799 982718884 154082021 531549032 367573660 814807047 98321754 946262943 462906483 955030637 239216292 541817406 764159169 946935019 694736597 908378173 271506614 656292604 235480132 739589785 957695739 992278283 137051013 669427500 625269914 906049469 118906449 306031909 104592186 653834257 530056011 882206559 167705204 702340215 483728426 559908224 268283433 745159737 20096771 737640368 383482116 401507227 265237506 467136998 301826328 682625700 953511706 983549461 198649270 522426288 147924380 971685563 632051719 998679413 653536684 867693021 956700451 981714373 25044085 316863798 341993258 682503089 151121371 295897494 755589414 813420921 34522456 969056073 861724957 919038818 176756740 214944132 293204011 452315073 72311150 772352031 263262807 301687041 909228394 956688752 706201705 770263570 665757495 733992916 197837890 290208660 682339468 804617071 858926574 978321479 97555831 155568950 57967974 658146718 868419432 932316926 707166357 992471797 912731181 978154573 618229657 744690840 116477285 746071528 19930986 740067018 160187147 964081752 944563580 978420422 977560722 986543926 216042203 933410994 313452607 503290695 348965253 940650993 97797202 475920493 826817350 849252527 568966518 978634666 608641623 934601772 574845789 922406295 36548765 176692617 143182139 995911952 267270768 601369799 457293818 884824881 478155387 877994483 91562713 351013569 734881868 922157809 249016204 269101672 613337775 673924966 648388283 869758379 605502650 945485511 159123041 187306058 593404626 872933581 127627273 155800576 343327223 484784449 102589056 727351342 395755412 926236026 786282228 940547107 211206005 780438999 685537090 884399956 568841363 579864960 680384924 850373228 142338913 987368086 885457497 932561279 286488454 462866481 20482022 680497326 631723316 769992444 279103849 417866798 266549774 523298982 959999422 970245043 607529609 991491613 553034941 692466915 965598249 981262134 193931864 876939017 310697210 770238764 82563528 166969314 400836620 429275368 955649223 971734041 212471585 436359293 681501433 804723136 296164634 879710827 234432352 986124688 840551646 994841234 189933267 285241425 955722072 961004005 405727379 505615236 654710631 850504614 672001530 899131126 390006333 960418886 935253631 998303519 340133511 401786496 355854040 893424146 26783644 432127320 842707224 920957795 720288335 859512028 969759473 985256141 287289261 446052767 53005822 858955948 12658667 524306965 202253054 862520476 347833503 758853667 739141227 750645463 278508473 800711371 361428868 484111889 380220508 655883266 370165564 637425885 229084048 691203254 143236080 991992155 307193085 497216442 133905792 283325375 109796449 806595341 85274318 483423529 486270872 865331063 52843159 214749802 110508977 447033978 322606763 789341841 590496373 852713783 384971896 682005377 937579684 998390994 158712826 439842188 433625812 599513670 833460674 876273740 794800165 974144148 711525993 731080741 254713598 735266652 746197537 755698565 93593619 503435795 938929374 970448243 249603761 364776166 907676804 928809084 134795805 378449080 4452729 769321732 865302397 974686950 418001020 785769101 867107524 888624045 785563795 843194256 875465320 941156665 789223511 823578644 941806951 989225810 982908012 985316013 704836124 875439658 762612488 777278107 19665756 197888660 885299642 929988419 545172642 951729254 411158560 601858383 359879700 388894506 845627747 889692007 574254097 599873159 684842028 928250497 216405852 769351429 842095062 848734820 272200539 515769651 802879359 840760421 64213550 65686442 490989637 601888601 946174351 987620332 442845444 641710699 94880285 160928321 460608425 713265630 912576702 986393069 709770069 858563392 135235875 248452319 260431842 698372725 846635947 941530566 255601891 793235176 659793901 695861132 148147848 349404201 935294572 987188049 872012477 892006623 873054918 974731660 11521089 91566424 107354835 377236882 892539502 929213264 31639773 855612573 940064080 958201082 60850849 686540325 169346176 939846019 44493907 468774926 274168767 444878583 881266520 999963032 188878286 822606107 16223255 683937085 145484225 225315816 302540367 430595284 589063761 746664955 215518517 355223686 282160223 916711442 711027796 978897384 332083327 480791199 128576242 768117829 570981388 878849247 416158232 905734061 381769486 666986562 207206269 210824014 240797700 563922986 655710603 683698819 389968249 568822048 582544049 622515190 494238395 675304220 593462431 771254226 767659386 944964274 557952068 568459693 420796571 828460247 132785761 485283633 484674663 904727865 421919918 828761839 503335004 703732469 464171087 592366640 897858103 913743896 447735187 485884835 105015371 390457159 842766828 855810600 677422467 850768571 62404263 871673961 83103706 498635779 482833329 687278598 415151568 620802011 146671011 997726313 112629532 858538069 115525600 209488176 64433874 80313629 159267713 773828959 17677656 579365690 283250461 894758241 343310373 525537597 217237279 925234458 614361851 622428591 605981130 766087665 87319848 879073580 195705863 466683750 83848165 612474049 818833153 851079792 993097562 996806669 977554192 995549213 415013420 689730880 133646459 613898247 288426387 602781313 107934480 401571270 86192991 363313093 826390524 970119114 784778471 979725569 249298997 615783360 408719244 827350858 374274968 916757023 131622105 983279346 663382896 899648188 170642441 940757600 199997823 238390843 161861785 366738533 515933937 739603242 981940496 992472035 581591324 872232726 678519052 770118094 572599242 966891541 945405377 951490805 343313390 808376895 350275222 652280886 144452207 542996712 18550198 931079030 536074596 715128676 603553708 856872435 448914768 558984379 210051805 610906244 712013905 847346570 236745761 401509017 386948542 952209203 790344398 982629579 485828478 488210765 762594480 954158869 364354769 710114540 208497191 897413490 247915945 832869261 370650749 752131213 258921380 575291045 131525322 563307816 972619876 987703041 367251289 899820209 320296630 963818492 471368292 519239273 389129255 498302203 158515568 289056136 223904116 756539037 638322836 868613630 103120543 203166420 907399600 961723523 475301460 633731929 680562724 685737154 605470202 772640486 483633040 751761000 601680753 749597284 332926418 678562812 330310194 715306026 361821433 661693004 137082923 771647822 204381071 730306156 54866952 841213883 325981289 708632551 837746978 906771489 303843608 475702499 951724413 958695986 436906477 570853429 400503849 407640771 270307915 712160882 252603695 949079920 89432689 191746147 277108896 599264255 899682345 996065460 939147668 964988620 821250618 988854774 664819875 861114562 700440655 901954227 359487144 850023254 380505472 659852121 526155756 800349172 843049823 863346194 538556550 825124388 283512871 688326984 351643373 972189600 638986336 892964752 535273026 968908528 448516418 899515057 46263561 588586444 829157169 883177090 21020787 644037752 978262498 984606918 527553501 573526668 342161979 468614266 553924511 578649178 610562913 693402807 253990894 632120634 460542901 871205911 487445648 696848940 336578614 865670581 397489902 774042281 599795802 974184033 578202194 849390045 456965366 653116927 373118110 610047764 957622504 989110110 525923719 575189283 901907350 970992061 910637501 964506959 737245256 924330365 274875242 774466413 77489291 237451332 272886291 876860885 956281385 957314093 27849649 495033988 860251071 928539950 934955664 979660826 599023651 690505950 642838493 867438879 158199824 241239862 371057958 712799976 846261561 900678932 303836547 846731394 152188024 545947651 330423203 458175710 707053811 959519177 277785664 641890626 331010067 347398699 98847708 681110262 347425362 838687431 402381413 569482560 490549935 969998746 428844015 678109354 973883123 983524721 933735140 995592939 528011542 899565058 541414487 850592485 162857485 570585784 798554477 816319161 701175262 739484927 866928255 867408140 82336455 210401570 17356053 396777086 175796654 223707725 609102526 725831945 455052975 942816968 841645200 935396626 591640578 754143080 426799090 837641228 841816274 873453545 253259320 497197793 85563220 901649496 536978510 610341958 298015315 676935485 23484418 958962243 524016502 564824966 463994947 688418201 598650036 998339574 191581648 561847517 19360438 648915324 519945097 912861374 524577197 738792332 273688499 983266977 978472082 995590880 298501606 759056629 6352159 848394340 413804161 521728536 468072472 476693962 513445707 844289122 203147713 232928623 713930753 984018641 83159071 778593202 274389970 298407164 665946716 826720697 591788653 995933066 465301036 848664109 882901501 891591368 189455746 330548185 786249853 896187490 924718614 950310626 553285354 923311726 600702021 648139306 464131357 784909062 736233016 744832265 895715972 997128061 927030588 935341691 953940100 970511443 395763320 529896125 178762571 276600712 636806906 858285995 202911950 785482614 734313757 972146800 967375835 988678767 642194322 961310693 319972080 513897805 42066516 422652442 862495615 934009448 871024295 985030022 425355987 961362465 235246638 646246756 586851209 933944490 365455372 675753747 870549084 880923981 923547279 989608886 374085344 529393354 871614453 959144833 696708793 895880784 97667343 135541563 696777530 863070534 209236888 415818382 90624029 556991919 662099378 828675459 656590504 687373383 472309494 818528307 781629420 853117932 192854370 555614038 51562082 728695810 518686805 820652070 284849452 694762399 843556194 868124484 257321978 682068228 756607560 892486716 520498630 804854154 181609976 661582961 206015090 359053351 228994219 305481513 957922607 978827652 801173930 994758782 913222851 976150079 480851155 640428401 702480026 801368548 556687155 582804372 85820814 454846627 883751626 998792009 909846140 935153450 249235043 426585521 95419433 884242477 40699472 835650423 427269935 911094373 200431224 264772101 689596018 968757919 605059859 760262145 163417554 401390104 705053579 978900459 968369840 982256755 189814151 216635251 570953281 702892500 4770092 482435353 432437842 732490859 418239120 705795378 180507329 641105020 272190603 891458799 925777594 925849679 112720333 334224886 311337425 386724958 901729236 918834323 895792826 931489630 663912319 781224825 957329511 968019566 227454376 691971515 425492510 905275484 217132975 466779763 114721646 423973460 871959844 981139812 178397784 594092584 324728377 681493124 641039449 842335487 487023151 661579485 773271230 838554120 47181853 740190927 138429426 330367244 314806400 810300165 86054526 618705009 786948600 817341812 169139791 590992537 974447833 978371873 364842708 581438585 720420771 822933802 839052296 944812779 379986277 821745314 48621864 430647792 402749233 533867107 347722301 797320605 946252021 963349436 155700595 818100539 498370653 596567348 1946538 700398479 312740264 894947573 212427166 536049685 829753435 923243060 489201498 682239429 232994172 872511086 987374127 989485271 586993364 755718199 472756191 698514883 480940645 726746679 118328577 662595584 493150096 593216728 548118571 588281645 380784664 400493254 144136013 346707591 282368453 354808310 116315482 210922364 716802802 774368214 875110637 914190704 36693418 753001882 506136225 640800062 700797901 768876472 167432303 271190455 819281939 899933347 17262289 571669930 822553409 836427529 32808195 160503024 13507995 132628267 945884628 990338436 599534543 759006238 831237864 833956011 150356278 169743702 330275949 939100127 476170653 737750158 705802839 826879752 988808140 997418256 298482516 952632459 352771506 440521627 749283981 767285971 437181804 448541094 340050055 983258805 709183007 904061673 419905604 503619713 179735432 974897551 742802952 799076018 867164104 920419953 259046623 406554164 459532743 640584906 540671810 589635667 383720353 537042190 289483854 718760886 601612400 970315943 40484423 740802178 341211057 480838002 191006747 480163903 169968042 664793574 402579914 471271132 77820790 290576624 537060912 595343261 833207215 904402217 976173416 978534632 459244298 774683754 578566219 582991723 507449464 887816234 776031897 780665321 207774908 720420198 375315917 497078897 251695618 679172126 459718464 474984941 649417950 703552818 153434815 375567012 950471733 955691979 500821676 712734384 67624972 217918605 521161008 733004754 325076997 898977274 488938872 492629321 724645998 768423346 328762520 471813227 418676195 508096233 19518840 453942373 932251574 999188180 229681846 691815664 447496665 997205028 191090381 636204096 765977427 912489404 186932768 784162362 387458567 484647537 779491607 871289510 305042306 680155158 675841891 897279427 789036207 939172918 962984131 973933395 184816558 266523238 532439777 770798691 718892029 743462185 757619484 972210725 738080249 869686762 419540911 920177354 715239674 867894256 464658949 783645378 473160820 881210179 580057841 997657638 876188899 919624600 854060591 929503035 309388557 662435388 704081932 751848598 892801682 999599725 598791336 771502401 579427319 977622189 145795444 803774096 913931909 916499821 353788905 974936749 886101178 906315631 955051562 964537408 701476569 933236170 131257969 439966868 657704083 741813687 228537369 933103440 964497328 969344470 875409783 940068647 455644139 888338781 868078792 970763129 874698995 903364423 724996280 916485628 868110682 924732169 619008299 770264171 409129462 655819981 509481080 763542256 570706150 650707467 628636767 846216457 200977760 377800480 729037341 984735410 417036249 556785709 831791171 998915538 120629688 709157783 86357722 896913178 473294856 687650712 72977019 204665462 550010731 681311355 347595285 532728532 64360987 844119718 793076968 834756818 243807 717704388 542330783 730756689 721859691 733642851 405957174 949583024 406607366 534980720 863012995 912624136 227179760 301724173 473060398 555535295 101074653 874677489 74211897 947912486 179594180 336874516 728919630 908566234 805006369 935839147 483707285 641432146 115503626 965293208 659991913 991832633 550168137 742785698 734016205 976647242 983250624 993351801 209654288 794160491 168573536 865900259 61756448 616231448 462031526 691774293 289678181 597569815 680243926 782455987 703363649 936117544 75258312 538606183 953795702 975315041 628869521 755128939 269685539 585628986 825034848 870234616 492234093 923791611 292466123 848167490 692081984 827852946 593806390 944364748 940861969 962447916 994540702 998709215 146418513 656231967 665528207 868913124 763897408 964685763 736611888 861946145 683922788 721397826 236720214 976003841 430602669 950683352 252696475 849147024 380931601 548873578 577895114 978890263 520799141 970011829 256671448 392777605 28705517 883268760 228817539 801189068 526490792 626065166 633307180 874768685 211397146 288657197 833100117 936558827 779643122 964626115 32719653 100055838 82691185 308496800 600198191 965588155 722604529 939533143 415981329 865706433 707924638 843775781 936085257 995448929 162538127 544394476 14867194 743003103 625373258 938224685 742105073 756025038 209916035 694213185 378740005 990907105 620517389 855152665 890219595 983128415 837925081 900810762 767818648 897919414 932481660 970053109 909360793 962719252 251897816 706806772 759468056 988354548 305231716 716972080 883194979 989025689 755901064 866788842 616530449 637176229 740897740 949981244 112818242 165519702 393318557 470008088 258697427 587944233 656349939 824750012 89547588 881965558 747659143 896913862 614759671 907860353 78310516 471578717 313576114 518454685 883378647 894104994 847730626 956291316 95827827 402938770 556694548 941725594 575230804 851088819 969390639 977482404 688881612 707666957 771456066 843438773 743066448 984411336 154896951 548032810 837106064 985253502 463443953 857432709 6426870 873980153 906320981 983023792 945651161 964650226 767610480 949021617 227742968 491233776 27845295 821278747 167951362 475827059 974116593 979507312 554421535 989806669 447376195 648398787 10754160 366625754 537983690 894617055 880044472 939957125 50784164 852947111 767741567 924433290 210173683 222165129 897591152 957252488 168882997 191262873 843370270 887340357 723386667 901097803 950995154 996359258 29507548 316708227 901470547 943737770 785298857 817549818 869576778 941327716 398562369 917036380 734332367 839014640 423065430 679841498 121020478 485227364 599171322 908354909 508983385 868737315 438056796 774520854 181426902 576439298 339486923 695996217 226834703 378519293 350558877 773613539 186252198 582806815 264085521 746780625 763168046 775893430 158633283 722215152 594956563 689712548 814906990 832353388 643452876 906086091 277568763 428583213 393157598 931669654 768927280 827355039 247794092 835572677 839595685 977137055 279327818 997047651 836002091 876313723 455323694 923996660 289696143 697994695 61507224 671212509 429505500 819579282 248194600 617175259 758409486 919783550 227848705 312429087 644430940 851558767 447628862 811142099 179572735 672537232 235669467 984334517 192077128 405046299 261349840 666533298 834135768 870091859 474407600 796525622 881683737 987629568 358706488 653242471 640869124 982915116 922089794 979335576 678045956 960558446 945266606 994220455 109453582 174086194 6380731 866408519 184187451 968400036 497678775 825273067 760428387 828536746 568142319 772242466 882748112 936224820 574240553 595579786 30288186 79786136 132776626 825332751 497702232 755423706 545428207 859947558 18702237 705142300 217315490 568735561 463331591 683085651 161417570 747752850 508508398 582679233 957565008 978703061 886133892 913118054 604857048 670940378 351337787 772136590 842227503 933658923 338246508 812585464 778763191 836794522 36286370 88037019 307243178 652281353 937956676 958981302 81297428 140239849 961467668 988773444 744788604 930289246 6767069 992784695 62059485 409266048 12975026 863129175 918363169 996762290 415178693 460019277 872289856 927516754 987717172 997078299 295111551 678899291 466918572 599393244 568074260 572086628 515845821 793672615 641134713 827218647 312835815 535671037 15424582 689160631 653025252 931939071 130366621 742939471 599634261 719397217 511189759 823144472 350148616 704117330 929155413 970710437 421996749 637609206 747425155 975474260 948292340 980530646 463972438 871094289 233105218 384727896 93634226 951790701 53505127 218199209 174524342 794206021 369607370 697266833 340680550 840969511 439007289 512399790 993962752 997514929 602417830 941787067 983680639 989287096 311823717 890518218 910321688 926699624 279701450 943507370 426416589 703392440 584767701 679344137 928883561 998443662 241317722 360741795 627385891 985775665 194796373 595706152 879579092 951166055 534265898 967034696 994281831 998078002 835813308 895920648 104223950 527306172 326858617 745145809 259409954 978015166 12995901 339433091 452649997 963797670 655953179 779070016 425494513 464817522 739910708 948696973 188051535 274611822 35868033 39552495 626475695 737103374 293357754 360853630 149442693 888058908 825128994 994194882 51875507 578321994 839364828 993157467 931852377 960378193 524771696 705049302 970212533 977135734 206922163 988343265 489043121 644800123 917454323 975521041 790909113 948057126 110880983 692325546 927451947 927904208 907244329 933089090 612634519 759754353 640160642 920055550 747749720 872448547 938757863 958239861 758722683 955989574 882706618 945221689 691799002 803344965 351462746 966844957 86638194 813484872 103025050 617768963 785592197 922310885 578515632 952423857 994292692 995994415 724533053 882944245 943285947 954454989 994437802 997819436 625984444 985797600 663972100 770731703 676914014 968175685 127644059 325248188 376395813 792977632 186421910 384581915 408371887 854043057 832085375 878746565 413342824 429443068 828268818 997907122 91308292 954412717 283228023 815892094 343806574 670192359 391776854 569271664 31924134 990764689 491428667 619198429 532924596 820817321 754972792 787551335 363899174 453740724 184442503 662674882 553852799 785992967 549811156 889320784 543549462 874723550 100871369 626400290 782747047 938193521 967421248 969615438 810031536 833292980 176872937 638730670 939377932 986039540 622062902 956227148 774323670 852966522 647102854 909001242 413420702 619083754 138538702 588728214 736833882 976782941 551281826 872913716 638908738 935179274 500019641 968463299 550150323 636108695 12692709 172701687 822218478 849681893 639158234 749485245 763808638 983521259 943084013 955709995 536142820 746494122 188402923 201841760 593055371 911423553 52566692 337390154 42741233 750755912 342262638 719930001 222884704 491960647 43757140 601427562 203657826 704403362 853355662 912548909 958685455 979869820 896208062 913376628 57723271 862512447 732751793 869457860 609716877 632745182 867702494 943342756 588290948 821286017 637924716 647185838 194043464 831122646 579332528 773499807 247417615 436149582 664324760 882802692 66778415 791601503 929689841 972954298 586210372 722164897 460665133 501595360 586382844 905465101 651137356 758564598 543764189 864388932 328021269 741195294 885255768 955294411 310670545 318506800 989409247 992698838 955760146 991690109 898056212 987458715 10095174 110066817 649393014 781580186 723000350 723845036 963353260 984413326 720658857 778720336 363007844 698274566 544086704 691158886 240913297 601300940 963896497 979500785 617002138 739655676 15902132 686404157 727677536 895238789 392329735 684802969 246229744 337570628 829853632 831386417 438043794 505297802 533745431 888547906 357274070 494656072 853478731 962168495 143153453 704627479 905631410 958858181 757204104 771462994 42246204 841789064 365790508 688559975 601863819 603005548 415432019 417626336 369688057 795336032 429134999 856786298 849466848 915988512 759250372 815942122 66820400 218525214 271217773 580107424 168673498 258924416 937766303 993111458 716022984 919746581 764390171 768292554 244044491 507152277 808318154 904997754 318796716 395426521 829940098 928786961 588159187 794562126 84647983 476003274 970165022 994061247 129217699 207091878 28826830 555428020 113514582 294091264 125902095 863151505 286084960 568439644 566211561 596675531 23982941 920329711 826817853 916706887 500704639 686558895 920240875 933006355 440910771 766351899 425837992 784070589 971996725 994641712 832453382 903048180 150243122 889641917 468953084 622410695 225275736 803761171 255890944 637627891 763213662 808250176 961834891 978578492 360433525 926485708 858368827 960713549 725236483 901283021 556565091 836992839 500422713 761309757 331198702 569811880 757335610 950172378 764647380 904882734 928985790 976463849 718395443 772559275 63058492 558757509 249883281 898271105 195756086 422087178 328884298 725081635 458041904 486979600 457823534 821005297 809846405 922102001 343922102 555090681 712739505 713491717 40179026 42186961 255471065 515869266 709347363 811925387 939069151 952548700 684539943 942108318 717363451 758787559 941118566 977370452 962888008 976853034 186522535 744178413 83682622 88199111 226305852 977325945 174125325 238903659 236402226 780963092 738521282 846532093 135437079 731197855 776562983 895558088 777325056 931892887 823811057 939619647 401618729 455158694 751144195 927761780 878608776 926636399 753628455 941324503 664658645 868734334 910643271 924809732 579775684 961074554 386158309 922129633 382425120 827195788 596217471 821925640 166687274 346775492 526052679 575077085 67426851 548116016 853293535 964031937 392880676 687710395 960923723 965594867 11206445 215855270 884172877 893493250 178681440 380189534 455795946 941765658 638662411 736860124 382084677 564382295 52666523 495078449 768339788 778422067 263200537 631214163 681544665 895877519 611946588 898298217 697368019 777968644 694954563 865332549 445999916 886233129 947978607 972360803 728518034 849987670 813598139 900780350 657515386 851382133 543530801 920522735 119740939 759043127 903931733 924245856 106616466 830472025 716682409 767509277 571166347 740410273 949336300 970246570 881327859 892825493 141584166 338471621 821439879 898792310 513982799 840146404 501503924 919295330 885298814 988545500 790110031 835918303 414371854 880511021 290606607 654337150 175245705 785848522 140908039 986306871 965035905 966083904 250188606 835922810 706849398 987325768 769038080 996249646 157068116 621743666 749127636 961233357 757785240 929999273 995244152 999464625 764935515 931360026 243000950 564364385 410527740 624442196 729316033 953814591 291902868 712261925 236222324 298491240 210887829 980892668 940994681 953480119 104978455 333534975 894591931 956000418 770766268 784716565 62743275 646222207 90125298 260223396 320581771 641691655 528725133 980439372 364816344 953621338 201357306 674442144 521481233 749276859 590541278 783399699 293692506 689255755 309948153 689636609 84361154 673060506 758606100 921449497 713230941 912599566 104094176 554691117 187826290 546937170 837617571 903169451 471471294 683481087 894373271 921115454 964548829 987828709 63893216 487140346 660834591 711735877 801641789 831524294 307780869 984407355 165954377 194377072 969790330 989942622 401942325 903859134 633082703 675626847 947410334 954559724 23016154 181972612 946774581 965914183 265509776 904255622 505505666 754928710 211308859 241696027 921979131 960717554 360006894 508824716 844862950 851569379 158967209 609182058 161620070 849401735 663292485 852177312 222513257 442889216 549977615 914921523 624015972 626179441 870455340 971275253 205274361 546212816 898976587 927874454 398419004 687343281 172168008 197856501 806951199 978029489 919733862 962570244 576680673 582662494 326893558 739323261 395780264 894438239 500621779 860022050 146019829 278514048 431347102 607634078 439730318 935031853 133019319 981387366 467460276 574366576 276624870 640220136 588317835 683221962 118631881 559781389 227531772 472071429 808290529 980268510 177799056 697800859 29128774 255724860 362650836 407737718 176403851 438662336 996346786 997217939 540135348 664263464 543370456 938597276 149556062 429420924 372824325 600311749 924848718 979575211 306041384 969568297 299389628 843087339 936007181 944594965 829007722 953239674 270788070 967920876 557566287 736165561 55792738 593292724 793455928 817244471 714365870 775214834 64629757 544543296 701448207 947844909 916548183 987097733 454927242 735936328 993058640 993434713 224633628 287212970 913258836 953307964 525276613 804309921 173436737 530331102 483988902 927155027 206623971 589439576 494561067 967003387 265472887 590516943 420785032 714549305 71164821 505987934 754380116 805589578 374097452 782291143 990087606 999220559 603602299 905115358 739378158 936519521 334097891 549571381 517691523 563119061 272610764 735594855 528707643 573519281 530793797 855548299 260095575 821338027 465643569 824546075 922961014 994633654 259164959 629408134 485540302 812841329 181237988 825963637 408642361 671257651 686685082 916613390 378001460 954520820 805308872 831695921 984613016 997794065 202787547 232280865 38597649 787703861 729624088 826322104 340438877 748113526 112877950 994125014 841438899 946291971 612623355 960729652 465699303 791817092 542480414 677764336 789886292 809019253 122892980 748624377 792901883 876356377 145423452 304351726 185699588 757883810 299767097 856904959 140018004 261174817 857953616 961622350 880045857 970498662 891954650 942075818 761685436 826356230 984515807 992182552 811257460 822707344 222015517 996919493 918100989 935036479 902202813 982184780 965662822 987725075 604785022 993466011 41002777 665530450 120140580 521503885 459761883 673806438 234198437 699501091 602460603 637938757 218343443 262415860 665232069 914704345 615995158 822996183 180239679 275362487 793837086 796832710 609825326 976747521 832968661 964554989 762421469 798949356 551293922 682381195 690615611 826993171 631155777 654659288 599142946 931721419 59833347 888696835 687615182 753873143 800140220 834635945 781602652 798508065 15116388 114263013 304812686 496724646 995989182 997936002 975961671 980565418 399684649 601362405 273962868 727860465 706046193 813677461 597883410 804422654 753452867 864150269 90439284 529502098 566581995 630000447 461577852 581519430 992167787 997225175 296763248 940437828 223724551 649140663 801586419 907153216 865654568 985770090 836641880 897888936 478683392 860902524 398721395 539079505 244396659 426810823 51624859 281563911 789413567 903784003 923382872 966394753 794921674 960369802 881299045 885403374 562825135 995280817 92080991 530540170 834293969 862874945 444430255 988453124 460065362 655502985 833802700 950028074 939003590 983606781 572614252 705637850 100512491 758195628 318445174 320267520 283297730 627431818 489204917 883635989 255579642 677104594 978952235 980849839 134975301 959169130 501419710 631887964 756211331 932724409 128814853 754749019 568455835 569045405 960798556 979641579 804583048 925815768 432237408 962697333 962912977 981049150 347653659 656837431 691286030 876600125 946617729 963165271 476399169 634375641 510652567 584486418 465564417 820912199 227855343 485606551 866463594 944477723 186922647 840528711 57597305 768366862 956999751 970660607 350787771 891578960 422913704 854931872 215723209 854198652 307021450 966557738 577105035 585271719 867377446 905062111 589967101 935961241 758012450 892447537 234220615 611467983 452035751 959670233 101693297 644425537 909625064 976207300 300463601 832804726 239550316 947668499 757462181 828139819 107419940 169891667 150806222 399764233 739312934 931710678 594525430 963790751 879025051 977327583 771405319 798177388 868046168 882268468 891406377 948264387 840298864 979451407 936092757 945969512 95562738 744434579 690280770 814774885 27551534 578530828 427574589 785388575 151572621 158873280 127662788 310828167 778907341 821157137 36951065 72087197 890983458 960390414 794387171 834602138 710775118 803670780 579574925 851859828 649860422 675476383 226668201 929322774 502354652 638822361 635371747 637236147 748427394 769876416 220280687 294836684 169462355 239787544 398928271 639176660 786741156 825272272 418799589 564533890 191472621 751394720 717869367 968880578 314183935 924787430 826779454 923437787 744387279 814406671 687854322 696898039 353957004 927092601 142893953 415678247 979053365 991024587 664014958 930581581 729582340 880585851 301177106 827559195 264513023 343008863 774262083 986540998 697645165 728271805 481141274 913183881 495304756 670148346 137775165 782203591 484552308 960485218 641894513 836144168 907468631 921581160 511944358 839247192 947473093 981944917 927696603 966762875 774644009 956389826 858900828 868133228 939668095 984928339 57087314 446026354 835309868 874167731 548315281 553083457 326399706 328428437 492674236 643827856 963278673 991719835 321399414 374631468 617256235 750834108 842229067 884486295 322282476 869184470 32829599 33649055 226981733 482799516 510136467 864169719 52129113 801406185 893757500 952189060 764855963 976684816 579972433 814063913 431555246 450223906 81979126 228106285 790111908 894086915 639801390 787840111 579724299 845453536 411415947 532160066 845595237 898478190 709538808 735962397 805033841 986560040 321740907 778640896 878118987 991988093 286211789 663309043 182676818 538466936 838040908 848323665 20169040 658155684 719388837 918673769 267281192 585145597 268902524 519148787 734626006 873361737 778554351 928035798 5502789 514644961 587503302 886654085 638124 849675796 98883722 874138460 201843236 813799512 868122667 932091152 956784899 976209634 749708496 814772570 937361465 943833078 50425307 172539305 862637524 991339857 233193844 773767171 673150754 792191917 913634337 942780918 723648464 922028931 285988568 571272703 878854173 925000258 908651546 948531814 388027895 395215570 382260571 882531487 99767005 585156723 892177888 962747173 767487781 903772300 504406015 556311798 630302130 776586925 676969769 872516499 753467385 818647265 968189205 981214890 542977019 808268494 652658364 825679849 429075408 655397222 84789085 517525085 41469777 334522615 339043655 658909020 209447410 844398264 527242133 657389960 262289866 966092853 486654195 735489757 12664013 867398996 773830284 845756248 293640633 535587081 981771803 994094945 997117581 999152829 936141197 981605350 306677013 635802535 279913761 293398982 485880452 987402780 490646955 586970902 26165673 454622138 933645670 969319274 843973754 997916287 113762362 768383863 377134063 609189270 318395277 390343194 979406733 999326751 798011082 907399649 448230265 669960685 284284796 528668684 899420449 992515670 602897549 607043913 963863588 997339990 214635568 462116604 494171721 988781981 628509761 743763788 714649196 862738663 367578725 812856002 499778086 938163300 612337317 688623993 75495947 829371548 602735374 654732848 446354356 740990876 430420442 590619056 386551067 628670848 274437598 545870194 789677715 984610690 136648917 547244233 885831437 950122862 208936667 564745565 569006675 857291440 169780737 460854514 466043733 639697506 397475085 910439578 407286431 932996955 98336331 685034396 431665813 969019541 386425968 969961870 53889714 797374554 860361477 933070170 475796982 797405207 311078644 595532642 811223697 913001717 974284781 982286427 749613387 803997728 16963285 893968417 559440761 986223610 723973395 758878685 254439865 910619028 844014159 954832965 939512747 975956404 284687141 702332988 624720100 661254027 23582705 225442181 187690890 990035176 355260397 617549677 867135354 928142250 950155464 980256810 827430357 865861154 910104919 938050197 620055692 959511986 713675453 985809096 395445862 953345264 892819045 971491209 383649180 936211120 485466431 723798777 73984226 794000460 92718977 708952749 811506497 961124639 297660068 999348075 523467930 533084118 687809419 787300998 464786867 886959451 280183677 737899825 784397238 986196869 716684928 890759202 164514109 902105870 900748867 934398764 62405564 597547632 651245398 823641582 115040712 832944332 629062704 795645973 241428628 472154291 28446119 282761501 82827935 467760457 616847612 677925509 804400324 850995699 320258960 594124745 199538422 407903811 758531782 981367236 418041254 838593177 961867916 976889682 362230117 898644417 40919713 757896394 920874316 976194234 189136156 803608552 493512365 679602130 214949907 266809598 650887037 744459959 617854241 881206886 694145621 732505140 841541171 846780707 653387623 701948710 724974069 782118704 593771056 737958177 240906270 915855482 726110697 998473604 624557038 855544637 894231735 949007311 773720926 782819046 205240185 578448053 18389725 571704701 377948365 730074315 161003608 825679328 434395148 694349158 322815311 631327663 958707885 992954400 831752536 961080482 709644345 888929542 913581758 972278175 437575849 442087173 25739569 886273364 348549885 422817074 611369718 738867104 935220516 987600259 204206068 927691318 184159912 606023104 330923716 681275739 77443181 312251798 792370655 860345417 236362416 547006705 880694447 993014447 243795366 706094616 894471318 930376611 168634861 815424969 19391535 664618344 895152505 983831682 24998020 372605366 954381311 997739281 747126489 798851509 582394019 849736079 61271439 812782877 394790613 402249638 475622563 683514405 59089853 690822025 965113240 985620828 559839075 671799065 551349057 937298054 849293218 878413795 365385158 786993673 609103722 686769748 268537704 655046512 55644029 588767222 602245370 994790662 95968572 855338884 405556036 736886784 28134118 108062038 430291117 888999585 170997189 387390184 50397941 785542290 544211925 853745598 458062198 741094796 688734858 730030924 639016128 875643003 431551050 665699167 932960351 984045710 145145060 577886432 837278436 899450464 563301608 926860526 774837399 781672069 189290252 493944379 86604868 913555308 270862750 634102120 762861957 832387398 477922296 750188475 313895152 806461766 878758570 935485452 891955569 950923186 874378753 962015416 803064773 816824274 800234357 901762877 948627527 973189178 112490891 164371515 200322059 290629265 842126438 983259191 625469909 726444163 416858612 591736331 259259718 610072385 137774504 593002834 407547324 923122055 248031155 994906474 787365136 970438175 179057739 322716549 793166723 832633742 147723350 972557037 94987321 889996441 808820785 836607403 812452124 936736229 240521773 976146786 236971571 791277115 806306703 958542490 650774964 728650607 960031180 971042475 471103560 793190086 676336505 935180221 169594303 957773604 114472200 198380014 301174747 366427934 340560030 701287000 418507690 921540583 625255435 918193837 46650160 560881465 574707844 829310935 913056905 990131897 614459550 740080964 690815950 939224664 27350266 828249208 812700642 888313968 887843687 894753135 359743610 952133924 872004490 936090079 602993267 622612245 43490934 295574526 825788475 891416492 161656390 954310722 435756064 773040598 984935319 999679502 482629806 751853851 368508257 654800096 504034467 550161506 14634396 232901388 124948038 267825377 31026824 853404264 388137113 578488451 109142377 778598365 751364445 842798240 592288240 855102497 218405133 830134831 468010193 847872335 309653752 452240167 945268156 956247171 356624318 608173961 497982596 556240992 481402830 948505329 131382014 225069113 997400667 998952430 391003564 620567689 388004643 424412353 415107716 515716792 778911312 917259400 53723571 68564777 107485725 665090055 15977445 571424332 584268306 706373471 340372202 992951763 192277193 336487737 107330407 486240279 662086221 834141085 563364058 813265910 103984061 383251063 467011977 643079787 727972942 920441843 462036520 589602271 790003217 842944104 421896650 613441088 561409971 612760074 497708058 715289192 738255511 893092749 918977912 919375610 583341541 678246997 768667655 773699467 300184836 863243007 440904624 587699517 12376499 646318928 848382005 962585796 3365173 396667645 136159700 463719602 673856049 986344401 843095699 866813585 578018176 673662342 608398076 677588651 154544686 652689308 489377850 765448221 668101310 749807218 241505922 331470202 424949904 598972090 195162838 411350422 402863972 680385658 809623054 812900360 483158469 712912687 800769569 938152176 455747835 827129361 75269940 293438901 96938063 489523603 115518123 997208375 360535897 561475762 82104891 335173470 46255542 636796258 376336336 543507639 290805017 409594613 909346474 928676112 108234240 769709167 50449166 312443967 688081200 822868093 907051597 976712978 815372568 967119052 112833828 564010975 963468801 995150891 692337613 861503304 143403822 859587245 354714056 760196215 985017978 989394231 280050628 788362916 846983348 913969530 187211526 591761536 202517517 960977950 895538134 924592605 947031979 950660413 47378472 270843945 829480540 878492360 576758159 980158377 445298818 569926715 262554636 959632180 863363337 913960467 726295846 898618468 193154506 932731082 861205631 918281644 758070203 924336814 857437011 857753815 387176232 485673826 997100546 998301835 628567694 750033231 543105671 864360722 903038252 967318894 903779690 959942201 901427261 979967355 955447113 981886537 787661346 928374846 597850485 794563361 882590823 993063912 504926571 898030704 651372863 895880215 783136169 818512978 134854781 905768770 940062923 974787665 30849617 494553136 149047127 857538964 933259494 975614357 149672902 396268102 252735504 945487938 671696820 790693750 146525567 634760509 616711565 764869364 849109454 922372827 188424944 588810021 970956269 996166287 661771966 876164547 93965947 552538948 71947674 559586920 61655572 401739055 766390971 868843343 555380594 779636892 289683040 299978928 483513103 757136901 128570767 494672258 784383263 955050908 659390986 893154732 813335124 980393488 626042417 760856661 192466735 827791313 959269710 998994060 113697673 845134966 826642028 981814599 96703471 505080279 117482828 886015923 688837305 944018600 320937575 388345546 968983657 980405200 102874512 596599154 75096413 935119618 772955877 846319930 70672945 986521504 510087862 598953506 805281350 970563362 58616528 237866027 230813031 614266336 739220378 909987015 787383968 886350631 729593119 977071382 638226274 682913974 427429613 761530871 296583636 378228662 965479798 974175408 225903823 762030629 205834803 896019519 268451139 898829587 584895631 839181009 633352355 905060650 529133135 829236393 383255173 732513832 650119212 816103071 828079452 919603011 801883766 818000115 797897943 855124251 192816209 512231985 881836312 974867405 174420280 191669938 22299107 540333240 137871976 872559545 493709269 818986213 612322336 994035814 691668221 785961597 783882555 887009887 316529839 663344982 983117631 992366872 862970363 881503735 722752116 839699714 558032403 940763806 588196216 798047439 120569112 313805795 981591720 983165287 480979129 596006862 87208847 533551015 444338760 673587759 299523977 990304529 809382248 890973297 79920503 494745387 519226594 580578373 893035926 967100956 800333141 823616808 205803096 673902766 111381076 671360525 591750381 988193820 527357768 904123153 539135307 606699851 663963504 687661980 787425930 919481932 932965 496932732 601966191 643600546 829645286 937601461 807115257 982192725 627064199 795045751 482936779 865556052 141926524 843393881 308715062 766595631 119916882 507034302 851357698 922436349 114259247 610501168 741666490 875480697 727037993 791791935 99423952 247355050 121929544 823515556 197012971 348484447 734977863 932138782 182993021 314423222 661843825 875008783 361824518 374912555 774195133 829764491 657317041 700388632 933845811 961504210 808218734 872173662 412126197 709054864 557317543 724367023 390890133 893964533 372346957 859077866 667650373 735914924 419819549 771360248 136669329 629553752 122694144 194486468 459476524 474549975 627492223 777837346 745025169 913309214 767868454 956255645 616551741 941825700 61190865 561652917 589538264 913185079 733195672 798881355 529910074 530041012 443247634 514209599 326987500 626046707 24634603 859349499 906408142 954634970 360033493 424738872 391925082 396351432 375074376 982951180 325569157 342797514 990948634 995698255 895736772 910527292 350287743 760387012 766204789 857402212 578550503 587503726 1892730 443894441 160652631 264095550 365624654 373270327 384087669 712090555 948217870 957427070 33903922 52251642 820214404 851721196 550768800 597088517 37036296 219466864 733214405 816564196 161044767 536918263 408492770 895624022 311146468 873464378 293335220 605958932 560958940 804501568 426619587 839085701 792008982 953817612 952354489 960628842 529205941 939708442 821528507 837557917 316200240 410564216 272148966 945282427 251238134 305207921 928978602 984382547 376138586 638341634 745744842 922300805 569398111 712282888 123101314 868182044 451475875 473555989 691801625 934573102 656189174 988632758 267348440 745267475 205255009 587243675 941013969 967459289 638333472 672615739 955536108 983927567 141202508 599973126 712737880 743873951 18644249 153195731 451045382 460459177 24301102 128204813 524233113 588064963 593386536 874563331 996632462 998598608 262602674 689904723 672032835 702903929 714412116 893306545 441281133 627138546 610551940 951320309 494880997 866184685 439830636 737714459 654891037 830059230 698024953 939559356 834268761 842925845 644995585 753372921 191809468 443043264 844110837 848512000 104044240 450003610 850562781 910022277 606990086 789130148 970444330 992536680 502658426 594736491 352453360 526988228 538779690 697255751 133323299 212262367 880315792 911816559 49986278 441714837 314707166 877986450 263465265 818243360 979011284 981797187 391423729 640654406 261510608 698616712 334353996 902962889 948666940 959474816 591033690 903287730 625319602 702204272 543111262 849156567 485309211 765990870 783473199 940126043 829487520 867418288 360598304 367588717 249960707 912112156 129367296 883346885 341139697 555782494 346764271 583639251 367716609 988612366 864710620 923131573 444991684 843989076 173190839 183173987 491148598 581084354 512409512 832537871 405712860 774703194 919366097 961465032 360978167 709410581 184366158 379206207 417252389 993961450 744438508 953958657 30421310 149858119 26507984 524782551 703983554 988050207 579999074 901451340 589016683 715189960 299213498 353644472 4054034 469813171 248891963 308965802 678891533 716810295 691206026 869824208 746445395 985532449 766164204 797192225 410059815 742716853 675722391 946293964 393100874 413243461 3019246 274436978 677714284 800017871 142974979 936188497 331523564 508230364 418813893 949538594 707492794 938230779 491005484 614110887 968946648 983123349 892071849 949113844 26750125 158665319 546184407 609831778 478435916 710786564 818271339 987328699 314810204 382471002 459026810 863547542 983358201 994386596 709014505 930875244 661490283 808068924 298105787 954177334 891187096 921139649 398345528 581096789 464654135 475217769 705977647 807920720 9569431 989192556 564927011 639671829 319709340 583003698 967316147 978725547 678345077 993223578 167746168 430244801 34940238 358982942 911116515 911520027 276810294 909721552 563823988 639136498 183489456 600386815 163949419 964624238 623824490 835892029 709016382 963905757 473621210 978128225 957619135 976054682 164703584 231735506 688932964 737795095 622891527 836808506 732762026 993233535 6691471 524946841 193869561 663047443 663759614 864477846 742804180 886418732 14941550 281693964 386816351 839393096 468115564 739203978 243820039 850932462 312871188 710793923 596976091 702923708 141355588 219801732 678917665 873953670 458919962 998891309 958550757 999211189 293028588 969888980 158833990 527342014 307557742 749578777 412148161 714388729 738360545 779797650 627145674 981717719 952069041 962407041 346696313 630083292 887346813 893911825 617894041 955806822 717452386 941700233 788103111 874540977 228474478 673116474 491768856 736313254 873746952 923175717 758868557 939535239 836003407 866594097 585704760 731281920 990712900 997721053 426048208 954936327 646695604 759419549 984737450 991604540 471482331 522044620 551358289 942628372 499492997 706907354 713066814 988874043 926843622 984408923 119911018 572167963 693462685 995096101 319324618 332902913 846364533 948857341 382069402 950475133 55756500 80417338 243111149 937510538 456173772 750834868 582749014 979943229 893626009 980004422 492159871 864568141 987469023 991216656 369565817 709317895 537175732 621320619 259171254 544953033 870653555 923327457 158654863 858988500 856119245 856487051 404935915 602025747 816711955 816986557 329680272 522226943 837696593 979339336 824593569 953385946 645832483 957483722 716700410 805594247 737387527 885029451 482686665 668264831 68727457 168119965 286296048 643747143 250230189 946852246 279461522 527344956 412439132 681705557 881054910 944101505 132094771 683858506 870572288 899742176 859955035 917311380 644606970 677109783 644997889 676398695 73715724 311339237 680280616 954715937 503561781 673103938 53842802 500887407 341292910 813216140 915048327 939857734 20337060 525663629 319557539 916570092 700606657 977035761 77528653 280966759 606484699 836148036 322423533 817546103 794979667 800024861 573645943 709610815 978215608 991548660 883718342 899217629 69132857 618606702 838723784 935913198 673699060 891129684 454113828 540367860 254740410 292598201 2877109 870634825 684555746 775322974 848485914 931597837 634789090 992173186 628020409 866295330 201376448 623476417 6005366 266967706 976929685 986238228 173417355 445149159 54614358 630642050 173973592 684294342 766245192 835829566 901757510 986210020 142164311 571310745 323425743 636099013 424140174 934813609 383541827 537679352 508559202 516186585 525079925 875122464 215023097 450332209 855826392 879282349 880906396 930384291 320801774 467045690 551048215 840974357 271255206 616920682 748281523 861809431 47866081 485904246 535263992 776399420 144159632 512754608 71613883 161489532 661549406 783263990 406395126 874113163 358306968 815483543 944030578 964011207 646917626 843454596 475548448 705933525 946029049 999130415 289074375 475325774 723047648 973985909 151387047 235567233 620520994 859561201 103821420 772316783 874760278 966402121 31674726 887506829 473228962 799045817 593101204 994559412 920281355 932500645 615495753 703793333 438863469 947365064 78130925 327023915 494441475 872306540 972122313 974288159 750018931 914855923 879189875 937317024 704319149 742067909 415270167 908607185 634164315 689013567 494196023 779104996 246785009 253951126 369432703 949335067 68606867 261304900 698774978 742388165 737051939 739758600 439476495 591939308 775598440 851960494 744566353 801765889 584886608 838278848 38104952 61533822 180638308 500040854 241342261 500351794 642797345 761917352 139865202 304361208 322539097 445071918 298222877 830971883 560327226 563314770 921560856 957574605 331934920 536038746 884240321 918711543 609233200 658159231 731093993 811561555 161665783 245766894 451442257 470255538 229640594 978111618 208066511 962539970 637405994 820589175 264239993 510506460 815505345 891625329 425115341 650015228 893207392 983194059 124694208 430172850 818251452 914578821 837808982 854607131 902050522 972861429 831050291 938284079 419399264 980906730 126769259 341983589 93212983 533292318 849684732 947705606 54049910 610099122 260274315 605847636 738617474 751767190 473729573 963876857 478558355 727898862 107103273 760121437 587145820 670503554 94465309 956959643 645917932 954025026 93986439 754923590 712828548 854624339 437179175 655633600 858610828 979607507 918123350 942506194 488162023 889145728 142742902 535916758 679437603 845075021 712922063 749772072 138598429 543410253 46484328 52683419 13839149 849024918 619740646 943013792 329066301 439679320 411715457 937849506 950567062 974573371 219717537 878488647 853460562 869987772 996318565 998785856 565489175 731004581 891956615 999338812 413001528 444296553 558622564 781685412 318197244 636507074 706453197 843485416 481158300 828613755 307738748 394417090 493486445 743566868 39741178 252552780 623398926 904743822 343923836 550983753 891624814 985603016 258851279 544941971 355878337 657917962 531673310 762496384 259092367 643336813 797039679 997640698 278958235 921325530 182866343 450572132 129560732 402526670 189298886 446985915 742843973 955129584 985866312 991955290 399214283 737647739 358663932 622342979 762940931 782524161 84774698 632262064 214599537 992700708 917563819 928038431 584525876 615800706 376548843 677513601 797181402 861282128 913190303 959022001 34247000 41387096 360468999 785138947 530566845 534475848 282722702 807018580 530811644 977186474 863734982 884983143 819302360 846418730 228166051 971342098 329378025 498918799 772626922 893343223 412757247 922552594 130143773 848970194 835459829 908580100 298839346 632573279 106851197 765372141 389578903 963147139 275970359 709285083 671074892 822544440 530503586 745208014 255773769 882641932 315778518 495455191 852488113 981540513 327600155 813741344 111948697 283949220 805900550 989933861 453756038 895695025 596416452 641065235 996175642 998113204 332411066 552973532 503410316 950821917 675337441 690113341 639691627 870079151 497920989 533259718 155792939 812731645 799546133 888820592 887577261 902938961 508231642 857993927 850492287 980072603 124130757 180042058 61781913 239706126 833039883 906626779 711917240 717005791 920534541 960571710 18329687 140276870 972981175 974677480 648258942 990328219 364669344 791980796 5460896 630731784 142417424 975132239 274827642 950189082 571342100 760336623 33599220 944105610 485599128 856808416 180393406 449292963 699617512 728518896 55196600 470290114 277498499 852897713 332172082 933154104 272978389 430948576 851193120 859575968 852973661 894592833 391248888 915377435 571585849 648276721 824386089 968494576 942208944 969554732 810689674 997595275 34753960 517989965 716494010 852905818 195091783 792995831 630906319 986520953 626210879 713069970 447143235 827502271 612968091 830710134 309748587 871662142 53533695 720108248 684595903 861165061 41494322 905673989 32239330 762015361 620398740 920097415 656806662 817194125 528708152 912458142 524843465 664986542 795257693 878632183 886161868 952525983 851688707 946927963 837672423 973265587 806176867 868472080 901756750 986567669 275080514 883276728 115146186 238760115 338559469 596761849 576626219 993408453 854756628 901189006 4704559 907053708 830666536 884309389 666361511 767915818 134158161 357152816 760926113 881079345 440825417 924145884 743158995 880393510 289342395 697937781 379658045 985868331 374056630 684829524 196157596 326859747 34749533 307919207 34391938 267682431 823677377 926776464 681819654 995261389 871891975 995208708 974623060 993142226 160753779 424105398 355245809 759556444 30168487 415806475 558893248 932591667 853755274 863974870 690291880 999845419 383199706 671967442 537800426 923184837 308592106 580374264 943395245 992873477 6595197 464753994 40572156 829393245 54511891 868012350 425270121 906344083 662232216 755084787 990482907 993965798 425922393 836866553 623153753 911549360 351579319 621803725 581409439 949919979 661559850 917940533 969453549 985348582 52619468 178431799 541362615 973902282 462718040 865207415 808352052 944737235 754822034 865510506 194327954 706027945 844841452 889820847 105974610 491405323 390534843 647648992 290910306 595152469 808286210 991531968 346219350 637854170 260226650 774850316 353105294 628961634 125320394 374248400 48805499 571320372 726166878 961698230 514948541 795263535 908612871 953756950 621882667 865285562 623273743 870034770 769570837 943207467 777846954 939474896 530006455 917578837 908838196 999872122 923094869 934578547 35515795 776824763 349647997 911425234 188217508 935979241 815949210 961071152 369702593 387486829 772895996 929654429 686117712 907095160 768828798 987117674 235475250 622273984 239040666 472373000 774243408 829182254 293861690 606634413 517800412 804862565 414243890 664165161 251511914 724836641 250879798 698644088 401277307 477983034 162447126 938229923 947413320 991640647 239892653 886036765 94705313 117364834 998437109 998585620 576597510 961741291 855608055 943423765 262660613 904198316 461154094 835538051 920278545 929814006 590438491 838655349 40941519 190287868 387335453 929975584 532549093 662677734 883201307 888997256 813225474 939385843 133354336 157071269 978538806 998507927 875302219 886120400 561631738 742318350 856985011 994626615 307199163 646189314 628880945 787601491 970682494 999893674 586712459 654796422 490648550 937610959 850810539 976208026 116912883 550480138 393456433 682173487 685855837 807773059 944547098 998896012 222145516 900050738 537468264 974882256 539884192 898003837 312736774 736812173 346859574 591212828 491408834 708786245 311653903 745318392 872901316 978302729 642055133 773456054 780605772 939047847 810271168 980494889 338429095 793774574 850788331 964240329 811815080 848572639 970446049 976312208 462149175 569243604 376298624 699194968 147273182 443393861 333237265 831925423 264405533 625167614 496306286 630179103 179294723 664292325 919122517 940471022 46992091 231972914 515624428 613568877 100334309 845089940 522858542 581130054 704784250 715058701 822218608 832134036 466734423 656577712 961803713 968026443 535044594 846042715 833497981 899890824 92813866 790760746 831270376 983498001 482513689 644660232 165956329 227181771 327512709 745977554 146492630 372096754 235430379 738323103 542975766 613417350 101439195 916394938 485723406 711981033 946723716 955835732 474688361 853527746 565106071 834184178 37481914 954142989 569557750 794882450 337447470 557235599 544271739 984153546 226584191 312687859 971070831 989977547 968569009 997744178 651753789 947572601 269231 433987845 670069867 784101581 790386885 837999216 308544332 566541700 201895250 700063248 494204335 522526236 133478785 914491540 27394599 872597708 486488665 649147865 927297493 952712693 632609214 788865564 72463600 758228239 368632879 911997066 550316455 558805811 201386669 814860692 510202637 958029283 138554880 956094519 965154557 986073835 506718181 592893298 447779309 551930854 929801226 989934215 421179082 977441889 458749710 697543512 988927918 994627508 685321930 891327037 991402359 999950975 550016371 671799862 655989708 923324654 133475147 653594701 737768968 922628857 979246411 995225186 102067682 673789211 542045435 600046610 715150866 900763983 41872378 53299912 560524497 749356571 523858815 660071442 660661729 847929434 685227351 797914214 540291599 770455567 837419790 932060496 275973326 589127165 929074309 933571519 589706055 915912887 931446893 942811324 18633594 919891171 822566550 868938796 807543639 875852118 411258145 746065964 108742759 518734333 996674705 997513336 244271904 316043437 972620776 994256193 833732257 954013935 633451624 892119423 369338659 608457991 159949708 723213503 483000361 904121099 100574418 253464907 520932686 676873561 253233632 436904834 534255463 868386755 952631573 966849548 933257780 992510981 602269577 952567260 829785474 880761542 18385960 472357855 688389732 696017946 166903361 554155459 931298052 966507802 203480279 873179682 177173549 406889099 785664699 868550123 417029110 477130235 602914475 670000812 923980952 965045099 855741005 860296910 165416185 589380060 637930970 851469399 223078103 347831586 250414795 824610386 486692729 868104294 564190924 852296080 230513530 419059798 965103307 967610786 7986146 118596151 237323437 349008975 850963891 986677137 589546966 696306997 253036677 770816770 106069723 261358486 435657131 519521824 466812868 768984884 447904153 751935755 941080859 980332193 205909226 480042105 621957171 718696129 767973674 963500591 576818616 645806968 43681805 72594590 480960539 939913557 299397775 715508531 776187232 965062462 594455379 826913312 696465063 817053051 270675308 500763314 720012959 783839901 535712531 689446158 407444001 690415317 907475022 981674542 659461881 942576584 30611070 615668099 925532022 998479806 789465775 955692093 822193057 976156768 730296521 893603302 500004663 583934672 912547199 983007650 462186171 989850420 480689916 666921536 519971914 967853543 840162652 890739419 736879274 796602635 849015837 920719297 133672468 716404440 705434750 844594754 509173969 850976335 376836978 910922051 954213353 975375464 266747853 551025548 595672390 714832220 843746916 865299286 528255185 843769018 271939838 619262676 357204277 831448954 18636933 755432070 786732848 837585908 609961039 924851399 746363431 985585703 868757419 939247744 92147888 326045473 911416562 998550748 183187405 648182523 295981605 441167318 31452722 580704060 590798520 724617706 446948367 991803869 951109738 985313190 380475086 561432875 603070759 737405686 15439421 502308365 323684228 718050432 719679280 773241327 935138473 963425875 327959484 366188733 763927952 938069038 612888494 904997701 820820632 863233697 247830592 568108871 214655576 368626968 707198640 999485473 672942320 744147324 179537565 746918157 779287210 815112273 258717046 920175414 96672127 523952901 753398216 861661894 676937193 713425423 926162963 929364229 553596215 674574592 484227130 668288258 503468683 886948440 135277052 884923770 897546869 911485696 441407340 571297869 837809240 931068287 329981226 455181423 828629968 983099246 171052504 704281239 141389439 617429812 108034518 251247190 493011290 583068411 156013281 548219152 791867432 817036652 385845816 567301606 668063045 698333194 490484938 919050740 612080853 776160665 749944936 809408208 701957675 907662299 475090279 547652831 845203508 881440255 859127984 874699490 483108241 909385207 867843561 898030993 611940742 651244329 407182604 523756246 850423615 923335596 184206156 705796002 271896541 562661289 981200449 981996540 7036367 475190960 464699284 871086662 571047072 757570409 99355551 380660820 34558900 347857050 843200407 940329088 26186695 212632698 866000584 990987523 743999627 773356838 98093758 493242970 526346344 829319599 492858388 539574656 120868572 754469441 340988627 770143618 842113012 998750355 561336527 954302606 815865836 935234534 646953650 687788479 943145110 945852259 47676958 821363231 365071754 483889178 800480666 991781226 878704263 916287200 809628198 884266423 913115577 987850127 531809490 640192493 603532876 787502767 180989433 713132664 101465115 967662999 933104146 966337731 1805998 338239680 477248150 673901493 882725762 979034368 927253990 972871938 653571639 806343284 323430367 963000681 477829561 848277955 737474424 992795932 332313930 992570830 759718311 937007364 268347194 797139319 950903749 957186212 74501804 420023882 975291419 988053283 427420766 430138656 381485652 412715639 504620161 721535850 484652759 821512652 211506640 656723274 228566671 625773663 707425078 913638318 709411872 736720103 721528833 792183948 753790383 914127695 244510103 907221774 559624441 560486358 146652676 781167652 837591658 839244263 666844646 841716066 357755639 403489074 616703993 660823472 290308871 820272339 985081396 991947625 542435766 731650232 3516532 370970667 828593164 943078290 899983014 925335213 275306790 359984139 477492181 572193129 486966029 943341330 841190678 994081447 87811535 762101739 731753352 746506534 241891203 644675267 863436004 979445500 229809812 825305762 185155344 518581280 395112566 691329112 904529812 911753382 732628489 982361424 156523628 172986549 876571035 959215875 881727625 983676463 37874172 46824390 393441708 601436173 349565069 786508748 838490625 850326943 877714942 950976143 261965369 741920101 775115685 795278874 833669051 910090369 610746975 819117971 611460303 791728224 731669074 828604557 507147508 748491487 685111309 828158945 521088070 718600642 262063606 315196496 801920239 829711985 127885259 393065070 971164935 975497684 58307374 72763693 494285135 930074007 285185110 789167436 29067774 251253127 168903100 196657197 135234508 287104412 249486161 272985245 235588326 679392988 913163682 947377619 700278051 774503760 508608588 511812779 220864828 479545757 731587172 780316493 755157545 924770438 533775378 552885551 51603247 810419268 935837967 966456703 990751252 994224050 257881234 348386838 884471936 922409104 414629926 709840814 318584464 320878503 495015206 752283178 745676808 926856697 715993014 840918683 803337443 834562204 223544986 461611788 458257960 492918589 497459343 595978720 584416130 902789686 714087297 804983530 322009604 911305592 513335415 992651039 711141778 718764626 220486919 236205517 47584328 192312200 588333800 770935523 842151032 933057383 603278358 850761453 501612938 690677691 846598769 961027515 223126793 937835518 265273232 788488152 338740199 930477379 932221562 992956457 91768684 328127062 299305660 731279224 449282060 784765902 607924279 775396624 850901559 882018146 17215410 418955050 282660787 876126185 383631896 689702089 507478037 713652602 671251031 699934539 760688778 767063703 369055814 458591914 174374805 207799345 297159383 378441790 652897362 778408596 982023440 987214228 850099226 851678802 507599255 802317052 666273011 822713998 524177525 770643920 935077279 969723762 876135004 896506659 356093471 613419648 643227011 918932076 746221755 944677490 863351910 997957558 87344681 336540775 388733114 558556719 153334931 848306074 589816721 930275899 948143668 968242283 365549184 370116438 130511575 424775495 416426008 699343581 361964339 992901414 695141822 723311343 879810095 957461504 532149499 707259428 415964766 698815853 224674365 856555662 564961512 973547578 927610931 967413766 413505958 538404193 11337972 30139822 413240747 677114842 63625236 273186071 873902620 888348134 921218544 943550373 465579996 659943547 118325527 338746163 154407525 887366944 632221893 635319393 952844911 958836169 192510829 315457626 780280417 990833288 418609490 876408726 93565453 985876304 925438404 973253992 411416201 638274476 199059383 247652929 698410535 855705319 687866973 747299371 528143616 864398368 733748319 926592232 315262198 326770459 332920874 382475211 523556276 853734414 18791954 607920304 556295461 851353461 7865046 644735393 671949651 790129034 869610164 901875563 398924294 658751275 726777856 828150996 198114193 655652484 656068329 816897987 706691884 882599051 714115989 840409708 220861942 985615514 620297656 735482452 524475927 950002348 713120107 888669213 44947792 647836138 699812615 811115667 985795006 993780743 938246688 981850915 187588498 622908232 947885426 989058498 77785756 821777752 839862356 963353252 85032739 485727279 532093112 593125460 591218315 820708655 858698962 959013582 301667457 929415613 869922131 922677749 541771114 916939706 361460899 367676259 843979823 877391334 738731715 937109011 632444964 686058064 556431411 735303685 784373393 933436602 255974636 720448470 856592426 922817361 655246508 930311887 912212422 983945480 101076279 767850538 591402315 925710429 415817931 517678354 368495027 731599569 509015348 716868010 11939043 343613471 199110360 300769996 925208705 944061235 894223905 964235230 998335908 998964093 711837320 998267778 705869525 743446629 594625440 889307820 816192080 930388617 857911934 904008655 868150246 933019675 268260751 591206819 604196533 959443687 96989731 130401029 157315726 962843819 305471992 551170793 259826593 980354273 448381787 928298422 850330321 996957295 463097330 930292729 229463613 343111646 455629428 466776431 509610074 703198224 60199315 349089589 552277995 763549924 548172385 808514329 636317287 843821330 579428547 938011693 652751902 819837706 513264011 523299945 387640348 471160235 69823298 100740014 424219975 926345508 960565135 983330359 582703411 619838398 908291012 996476710 744367508 851031741 315007544 332878392 530338410 863398569 469305430 732969185 436127339 996147825 695613429 743343147 131235669 660837723 153194970 851024987 404709259 481695176 871260015 897538130 619434647 982873427 312992065 817507757 962196229 964834373 833049909 873129194 277114191 366435142 851746360 952240222 669149357 803405367 561252512 913784499 513146808 959909891 253003704 690667881 76095427 230887699 776704627 855757240 191973044 949328291 647101249 674118805 780044751 940499414 553074811 876719139 62074907 598109647 530045562 891981051 167942848 712976680 653836765 707601280 664189932 684820546 28193263 240221071 377122408 483592378 795367616 916714306 279035602 512864137 816111678 949874579 931864769 938547947 560712838 891407773 939635252 967272972 172357446 500782882 944929997 959780925 224340717 735980823 970543325 990777157 608534652 951099118 669873905 929026014 485351123 887411025 924440830 955032989 215400914 387868368 35274743 887813051 377587197 871617869 699331563 911880320 495088314 734730144 118797412 789753182 686834244 807768214 761101723 842322999 608968749 641487062 765239439 850635728 733275336 923661647 853019182 951254200 218349512 786649940 524683346 775321279 149586292 870009817 716970911 845482432 731446315 893743471 233237910 758530252 848335386 953669923 601685656 905091209 375143485 919240321 201584546 309084865 195126003 429310783 711716685 896206104 338454584 632572201 254208836 280567708 206348064 676513405 596219749 940446200 446493244 629016406 901880495 930957663 335277824 678887092 273369748 345666537 694407150 707656706 667770760 943220297 135805104 146836794 989144131 995025436 446935946 639810563 454808636 614445161 254588728 968654710 996594768 999684776 790802606 870090161 942738639 995217978 833737097 846912857 770951534 995427736 227992732 342248616 413844139 994118674 942922341 953210855 934868199 977573378 938991882 998793110 633319585 756871121 626664211 682476893 479706001 531951220 870259962 884130308 114502096 639098045 123924393 207275450 242031906 990059399 516678949 675587202 568573174 624677727 324146933 978993192 399552768 790692084 141346986 816662553 161634140 739755709 329252241 996765298 965684195 991884821 125577859 832943857 611044551 666538409 391227323 795368826 639520148 895204829 819671983 928707179 174839026 627467611 839218407 917760059 239045743 555278752 384389402 555525712 101369080 343751017 508858450 808987095 702823941 952080938 254350851 414838689 108642501 732603700 144319604 803166892 131706745 312689284 58865823 626256196 879791153 975648846 471850041 893754285 925962325 971381467 175100644 972367041 180667154 441785918 598806351 623508421 660498593 889494833 617790472 817432290 297360524 527035847 785268900 874680136 158660000 625285782 899431108 920328549 461814944 729166776 890381719 937030163 686152467 846994250 115751383 611550329 403325254 438114091 746681406 981509331 327636740 670052152 400938739 548949911 403117008 428787500 877462846 934175362 392437487 523444554 638913603 653093635 689960859 768005997 376959224 608380015 228534693 233774669 293046409 676912691 312304255 443141231 900009397 967997862 843311077 900924123 795185722 953434611 82190056 249148129 963539055 991723193 454158780 819369794 194394274 755480442 413630320 438514246 432672024 965643083 69745350 522333950 943054169 978626086 84129366 357663031 850555989 899606957 292034503 804579056 256203965 886940617 780665335 911312465 28058705 401788567 405810845 790400174 973900862 997114162 940490683 998587815 827033537 977194410 531318764 835313890 470297866 862244209 590616800 694146519 305378847 815379428 733910374 798104668 548439403 791415202 260860563 577573324 819890931 839846697 473845710 904691233 113231367 223282488 441538641 768801445 228352511 918651415 966597811 979160691 150167134 881747106 717583870 923875809 391668523 587823717 399129383 869497714 673067196 781351687 883871246 926413334 693925607 817789075 281963959 655469644 472645109 520015387 402202630 407027177 870743670 902929434 264871312 789324739 491654572 808765515 477953175 711304962 450247633 759285239 100612520 522547328 747217985 763362741 729943125 785878602 778448655 824973905 727531410 779719291 462364121 911934854 159190402 908021056 755707540 872841706 62265583 542058445 960215927 974279627 837909211 846689668 951667114 966075063 578916767 594053888 537087999 840227386 843533140 982600712 297783453 828246474 783106066 856712530 778159951 885722693 863753789 952055622 153001175 557355865 260660699 638146711 705982791 729448877 562749963 747451656 296812955 565112551 495722866 996541719 742335147 771419322 825226222 974556961 71271124 198485444 561336447 954446766 450032402 588734307 693906892 775607793 186705828 804961664 124731917 554188033 138560266 972926031 783426759 956578414 803852453 911071045 186138083 438566632 288435451 309674339 63288461 828391059 317502658 905128830 57162797 957745968 707178624 751342189 430342841 947936639 675196980 785497951 461381429 639288804 67744577 404634904 831864905 932165966 513332426 954882705 866326748 919956758 942813483 968408086 288092382 518388437 972251591 986893069 593021233 791177678 127566876 287693611 334131342 984178127 22689867 404354239 850410714 950797344 493168458 588950028 955030598 994866674 931914850 992109241 281176527 591092987 489585005 834652760 491260066 615179050 848864414 983809148 897653729 988777883 785901714 809343214 539421681 829966805 184141973 722623583 854033696 949273382 712608311 983740639 766514945 943807012 38031513 250991922 691152093 820017938 594273998 836921711 333877189 426588098 84593217 947971066 96314305 985382752 961170106 975164722 642173023 794049530 513758467 947418380 269933889 822923971 102457488 753595471 731185812 987606587 602693107 976591590 84056782 749285943 688630237 735048014 691311115 780297949 364456749 493824801 865175639 894303280 545323234 799621744 621481993 725979204 616725928 740522880 834958041 973224530 585361136 950515697 988748890 992142301 824840197 959780705 457777824 632141305 909661569 974855554 200495317 455556376 419929769 522593560 232506341 657902989 451495496 988577898 539807576 677601683 390878006 907275082 700069697 964001290 836522642 900012686 9591123 888268341 167242357 716982891 582375524 673138487 356505651 683259749 908261311 944756573 884428760 926680133 113331147 544280079 769704472 785814094 410946546 911783418 714125563 800023655 625070338 847568377 273125045 358272277 904725539 971235539 624537442 729546077 987725951 996311030 584654847 995540983 3703377 799995413 37392782 461400869 709444448 939402652 495387762 875772696 871287580 902165855 460509973 885837078 205264150 883820283 369813178 483691584 121404900 345377778 558532405 650938573 597026868 785036007 975625372 999325645 436238691 978069126 817640031 982020611 730554126 978548371 550340298 787031154 540770085 965441595 544899118 686386290 6293937 314778902 466745332 970650661 934889569 948308368 791386069 990438775 22941268 516319856 269612238 358525245 589334869 613703411 978791458 995624417 335149737 880053254 610917017 672841104 508320994 931461329 48015449 190889335 188424023 877664318 476184060 772532170 312426468 426417794 569308287 640848322 467987270 782365832 650779510 681396508 447037363 510846455 908700496 964291552 948694581 999064805 759109617 999058276 417111456 949181744 251408859 623703746 933502185 976980412 176668459 410013876 466432195 602705596 683218883 822841775 969430373 989749209 736055977 950496597 54806978 751520368 496498558 723578508 980668105 992364942 754381363 826185217 149799288 285772767 257421304 854718874 439899529 731231073 659237683 974485712 478981168 712333423 502741184 816024314 141681018 657919766 690189526 799527796 375145743 648633888 38029615 831768866 327745848 408256549 160918535 188946940 642397444 824533983 417072258 490411294 754538860 851638512 687038114 737111634 344190286 641176465 992542974 996672007 444486886 838480999 676882357 895147030 919400699 980198280 985886249 996516320 323490085 807038065 457731791 574983238 259321756 886304685 189048029 232668305 692542881 999546345 896014933 960164682 148490371 496543651 662410580 663508257 847514312 936773221 403700759 415069167 293312908 483544134 201267482 505178489 981869839 988216117 943383283 949401816 217700332 496034659 272842572 311685142 325472595 592418858 710210374 948178855 426263021 918458566 320413575 495693387 622811350 636803972 837420596 914237268 142962993 594192447 128900047 547139867 618032184 796620237 777741852 837915803 834977263 936332494 714126264 932004547 530493098 673731885 284350074 686786615 982226965 994996253 370747591 614938795 368126227 892316450 825598565 892348087 681646242 952980769 92533512 213627880 657598739 883788772 826695092 912640987 585854235 913361645 348195116 675248552 593310718 817125813 658533517 791229501 777935326 828553818 607582218 643255050 946233276 976711004 745062902 937095112 506421900 873172027 647235767 867471889 996025950 999839717 436507018 598714572 978117387 984758652 479805875 685594685 838491067 984684282 647789625 733901152 281924303 384778476 560054915 835056814 331245060 495160800 320476350 537808644 886825276 938322094 490018888 622099390 658737105 796086057 844481573 944631710 597049214 968333828 772861639 902901123 683739962 923925217 274818925 432953728 939255549 996341897 997244548 998401185 5394149 867012316 524614913 692408719 319387548 706331910 908285682 964004669 526751207 795057866 547363590 981269773 187535374 204218464 999437987 999531765 686232509 952942033 5700284 443983363 467363859 621255266 480196188 996311254 270720866 720031077 736078008 908292752 876143018 951460685 733925495 891925824 407542182 764029665 704492408 923822607 84532429 608402727 769025210 880049856 130610493 882227382 957414610 987421906 85034557 550402779 931066930 996061044 189534886 226544953 991039805 996420626 568510715 664157023 957673251 970838821 624541066 894837734 350752955 990634492 813295928 943082086 242726199 324760915 19874503 954625235 811454369 851722085 280359207 773461621 333764540 759528341 428928808 722072984 750573166 977825501 336217713 734448155 83300133 514488920 872706702 921102240 789145619 936216432 361803166 621790021 839406949 951685299 334921064 601566593 673390633 810807015 764659248 845381075 726652403 751928999 10878978 718008498 19553399 84206445 410719335 590810074 255562132 881640509 48951234 188527526 621176839 665528583 578394385 832932830 355860430 697929542 890837882 914593563 214220479 603688910 492756621 979963295 271346177 675388682 396882286 550127010 481503244 903178046 940922824 970053706 872521294 877614584 325322219 383191081 884568804 987088809 477909024 581974418 705372429 747317347 838820392 933483525 830966388 912860296 499285335 601779148 921611152 976141862 959822077 973755406 311526397 716611911 163987552 931423649 901898207 927089811 869902029 903923653 197734785 573522859 76276410 418317838 717252860 988299088 899848440 949749700 850882840 952609501 138729824 334095371 447530954 878614886 8898459 884248354 656407084 864807775 231189694 572532273 341554856 743832522 835935975 915986517 725088632 751036138 307191531 388146939 486862686 501156235 460482900 628150593 92354719 453252809 836042890 976498701 409962125 595930356 406833531 712478079 267507385 339946459 685206533 841742516 456428183 929482576 262027261 537734755 327636107 503434759 256517185 860228503 524666750 768585974 620546820 714825285 938961722 999738205 996383760 996485639 201485547 266463772 471660374 757766846 800854984 979957629 819703482 942986177 793692985 848687935 432752846 826200650 246034629 327596216 30978008 265733185 743355293 961449373 800340900 884152303 234355021 320198765 602311107 900099746 244272144 661597752 587624510 751751894 366099803 851889265 749961519 778406312 843387876 968447985 351683727 421446041 705937188 795421838 772441601 995442001 368501963 504433039 430428641 677046116 986752903 993657982 671957913 776054769 738760370 829915060 109596326 638556116 918961122 969222729 682787313 848444094 817718547 903924436 114711142 497160416 581295629 714521946 548453791 761098444 263625197 703165619 433337319 624058719 312687044 813853124 318752224 660092347 886717988 940194578 566178088 856767867 888916611 928475338 388207833 605483478 819649880 958452249 63633505 881201622 544383900 576480268 780377803 977561516 379901862 462370615 707219725 882948922 367396556 799223789 798314756 904628966 706746340 869982652 788432764 820163725 274778330 628813932 979784967 985682597 236371 514703742 584395545 810096104 63800437 531058577 471540225 657544595 929547378 937710375 511771949 882293841 608400422 747445930 713432715 786360051 601032704 691060764 778629397 825379084 344750931 875284977 433889135 644742906 602022918 987632541 979479730 979764645 633607891 772210462 702989467 710363544 239180578 410302833 522155891 572417610 572376093 610964122 182470382 956031211 238085926 695987455 960565843 998694301 512696072 758957932 100989049 390922379 433634814 894554136 4177324 821509810 857472904 888211787 689283828 916449018 932500250 974045631 102566350 238755569 888070297 934946422 413157646 499079408 659299556 700996840 448463127 956360183 880890592 983061845 284489093 681462015 252237822 479369138 908674684 921158836 541907774 573482309 322871901 940911051 153637313 829224398 642025984 933794356 431080094 497808200 534094875 973699456 348074678 976207020 676809396 978795049 385307648 808812125 511734708 550529688 607782997 766926947 581281235 854520216 78493568 193509725 95938858 153160024 113642352 643361963 732760208 987189495 198681727 497451773 925820807 970832860 113803394 687384125 895330199 900536184 184582201 241684227 938670619 970169501 194255592 910055666 922357585 970908557 190903065 351424614 252099559 328840009 32705839 905820610 150652576 261899284 564348923 873766035 306485755 875516598 227946280 309181836 45464306 923972606 196076451 259289630 982555490 991050053 823117059 991312990 600867640 618523828 143467296 418734151 14600450 397733464 627530190 891861212 414909383 913478087 1787788 649591377 919184027 985290608 670161546 826592568 224150296 445787146 513648231 635169759 85827710 501709461 325889017 411538331 576336420 961217450 230016455 337942878 629634844 700754410 677947686 713190558 631501282 936761179 411633442 454970752 873255229 931574974 414295819 833659176 262931471 770475766 622320094 829190920 108307090 432368646 386386313 401149931 232119036 804044820 681177884 930666681 863851525 894455450 628639923 669145107 597666168 848102767 282719817 985248100 405643356 920760762 944373025 997452435 77995608 207342984 370803800 674168672 694539524 798065408 360800591 577550402 955458680 970830828 93700061 146552797 491506241 999917538 99878855 628500084 213942358 368324946 564578307 719291497 420652470 534775567 763458454 871108145 592465925 774475122 481957002 692483547 143047310 259094288 303152859 505939891 522942498 831213426 407055577 961827034 103052581 481454179 23897343 267140470 575214427 892277967 798793108 950609233 339282773 692179388 449421998 600428854 475782712 984709619 533506306 578598407 10429231 327191925 263945547 493266776 6049629 661972729 754371997 802580922 595531365 830196108 451716412 848830886 389139881 899036573 589717959 924324451 445466934 793453485 411263465 815581135 367474203 427720409 92044242 739187233 868313313 925777628 328013559 920611159 789008147 884730626 102226365 246116599 219559999 868279682 116536378 883198022 224507658 579143857 741477051 784706080 14194005 596403549 611611704 875218448 863991520 933428748 968814605 987175141 142659775 669730038 351511306 860857027 695759662 813120520 296214517 552613319 68857471 127459006 580153646 709212016 338810553 742946374 58042922 900638169 772978996 948344582 931391165 995558398 35780148 438691632 700569230 836927817 426270687 848112120 14711549 890973440 477536384 636017764 40624090 978562859 811177986 815501923 540875443 922422896 915856315 975654953 52049224 425550686 653803489 861690382 796472583 947804107 889062885 932552856 442826920 787238666 97253187 223604275 430531625 945980927 106439546 749102008 596804006 811078588 843452541 870495466 826813097 942114384 691190504 715015695 951422539 969527008 467293774 640864983 98154932 542753809 564824700 854839118 735408396 882670651 135241350 294677502 408429119 641208744 762894100 768764426 160896033 639130652 549691648 561616952 493982923 751895232 127856088 989562028 535105555 978957075 100181864 103310614 950497792 955917344 357227812 881948846 864094771 872682829 456476345 682402887 842222140 927066411 150699836 810710031 694546443 904038790 125926773 740236466 703429732 775942228 685726320 792802599 110996771 452347269 633539902 859654568 690421526 976391617 956343035 956540782 939645254 966434468 631308297 738222478 315032721 764207463 95097158 429206628 135746947 246385677 688963950 909411519 214077919 406125713 615010849 931159902 87405745 384809046 729445804 921738880 356608334 535623904 630954501 816051408 411019119 916545580 569922928 980744802 140581998 705662201 63692511 306439587 905597737 984476788 632735497 878458876 172707982 384653946 273141973 463397946 580595322 899547871 802022103 854506971 784136247 836983565 322047305 525414535 898933397 979263763 187003291 492907797 530478352 952256204 743963051 898358458 367987420 732182539 571730143 736578744 245619903 867256883 60823600 419813493 436770336 783322401 100494439 878021815 627519221 879265493 497306481 968623621 259843801 966930311 396018517 411637160 484017842 925095126 144121577 529056572 852761247 989572642 319049516 953186652 299552806 489737853 331679723 466665644 501635270 546501469 951857338 965422689 231303328 833076978 955547626 998256960 769293852 836408038 964717959 976434493 218661647 801534273 33557332 215728966 806898958 876733654 354750871 399386836 431374504 493853225 612016381 788819720 445545947 804087997 471141553 969159208 60312059 739111520 24094422 532236213 910532660 923699813 868496090 877172646 615533029 711968932 938035501 993569944 718368528 741616647 389759146 524541530 240040770 755840943 202422921 962446669 248506731 506393062 801941629 912735186 126434314 726596980 610831870 754119362 233004146 599317976 566829830 698893884 904402770 964909333 957030317 977859510 259957886 264642101 631022698 717175587 537639102 795204452 425342687 866857466 431308018 902304779 758463539 919112103 247053705 843680276 514874329 695430320 19158412 695744145 625525191 896878212 997157830 999098832 327168525 810891103 744194954 748115064 19360622 113070382 838832686 850256633 922947212 931426257 512601390 615885994 682551699 753225887 627859801 836561565 508140651 956942835 196970370 278124085 135128346 452259164 528858551 531124959 63756599 862313442 117272250 152935742 541957887 691087790 565794454 710121711 408351107 768033436 773599944 898888321 974785832 999491471 156301314 909725948 765376925 931830943 169726233 488182003 920869954 991094700 445490683 814073803 341875004 465186936 197553658 198847100 545568852 785634582 336429519 518027096 277332980 822065595 89338495 380218880 913518394 979936650 46401613 287938022 390276819 740131806 531211974 811191091 882468356 912803497 176051639 254673068 523693229 926370967 861138165 994358212 534015451 631820339 911454850 959473298 617896954 618593251 545794190 599753193 420618657 829660096 68008331 371440876 277252764 282117749 605660091 943121691 559661773 739543499 669643782 985006094 485745438 582507748 259074411 827425341 417022672 662021611 723188752 775418238 153676726 830377950 228068433 964555366 643091101 749324696 330805427 616860454 473838967 884240447 24318035 917312481 153332453 870198072 862341397 978587857 120321837 344681921 582792545 796066579 811837701 857111282 579739135 895415601 422746659 460617972 281008996 554180445 675050704 959589210 724713657 902207919 796189569 818109754 975161241 983694855 2675507 27973246 632616794 762978018 38720694 646957763 480652341 801714279 451382107 961530075 401348769 973310698 140433125 217409099 213703508 979522607 916791957 956066586 306075034 877291534 672786397 792799700 379275488 426057427 637844363 793406989 702413260 721073166 61726966 638527978 784755896 856914353 922987343 970724757 989940262 992521651 88349454 90660999 871865533 923410152 674113153 735676420 615970102 865362199 376165836 823659285 779835734 966764539 756330078 807885059 884470455 929883861 23109202 291746283 564397697 961962048 789189887 900867716 381245860 399849336 833399890 913403423 835574530 958667386 617623217 633638169 899289448 996390464 453241900 523033773 359080180 688793610 535342056 687659385 448122162 533067199 574749711 818714708 316321487 623487304 545231931 799552122 177291452 963808075 465379307 581993110 805748229 902451329 271908967 846619187 906062496 967924348 621226649 721642378 805973674 855350664 289352154 397299496 25030422 679576692 759430992 911598384 996391182 996802632 708968120 767169078 669533776 921675901 749938303 939618299 470517986 993342973 364485614 801407144 313159528 652311890 7853040 454969526 770508518 893674242 821765615 835016604 938032789 944173768 413837264 799686983 191350749 814132138 346264052 537074768 432825618 908265580 88878498 475575382 2467577 368448470 877777476 974975573 381055468 946059898 539556188 849811948 116720589 990197440 586807846 883803631 669139880 837352791 399841101 585581287 31614537 722312372 280623688 895535894 58375748 846054937 199700137 693740685 427007550 978761897 726668236 923239582 590898782 667744859 18123496 370767091 261663874 365732319 497059018 585365667 271914792 533092755 187954044 543903873 305412 662051296 416276376 581317163 772933455 789708221 392283056 737058639 663235243 858280333 588786179 858122733 138596819 926889191 809384358 847549068 75267374 808729381 481652151 642914776 681527361 786564973 989514472 995279518 19139573 183201507 210505974 865111930 984126698 991255758 398999979 850924352 697260454 700202830 871658648 876976406 22362492 304952826 949584134 990111896 126392717 194563742 619461330 958058231 702604589 907858060 614219143 814741559 39966809 144710641 785170460 800763013 910730870 991624928 746772412 928646789 602882317 836325117 393409447 774365828 337569667 717845262 767811786 840513814 274892391 456870508 925739503 955592949 412086910 676336542 393594810 742884518 121912733 986073521 959140525 970582715 469306190 649856813 934539336 944370173 905794147 978308813 245588633 731569249 24697662 515386387 398581644 641658336 26434810 858800341 191431227 281837943 149105909 533329798 810993099 887035333 24556605 519152326 17666529 580975458 247737227 693405030 492263586 614412807 849165305 902538407 773582915 838618232 714967371 772748932 953008226 965826849 158531213 443086932 914795197 928273881 833258298 858166431 485832330 973803665 123499000 513793044 47049787 855062879 144601972 297538470 733823439 808271037 745787484 964980646 607382882 653173406 212870838 221600936 76518703 992796682 704405332 991581270 658240282 721959195 388390811 881249390 560544414 862056908 310321874 962167440 470034524 700162341 633284006 848491018 823043746 830102966 805345404 816006318 696354340 879497366 342343208 737914821 909036181 924343098 861284553 922988231 611487783 693794200 867676580 949464545 243151012 341281232 114517581 156644184 183928308 346588738 423293223 479473232 398945370 640878849 208093025 776012826 854807095 912209850 547631112 750485663 498755765 903140230 299855923 722704480 971951865 972429943 120602649 368077741 484311956 548440477 836191550 981330315 287736497 922887612 353416510 845208310 356476436 858570049 483291949 897594899 987763947 992979926 858003107 898947716 50307564 903417625 638013280 954822411 132151872 250278389 333404076 337845560 520750496 798443361 277046363 402723824 607337095 790522575 253249732 788618531 224794608 624227403 355372436 857700298 366298638 574700102 525444600 993157072 70748893 282706817 900380773 954781563 461214088 725257310 164786961 188747332 890801746 978744244 110932829 625341915 889729108 983881456 660182356 681171180 63068511 153679766 318462923 745617090 412598319 573096273 627781131 789247000 309174264 780449004 146401781 397040267 83474871 103083411 230687063 754637786 185921837 685211878 881934068 908534897 442470375 977910147 498177110 789414191 540945361 713338106 792212705 882793906 710472470 847450685 418812698 836115743 289986786 930630290 278158079 775796334 385998648 540319947 769891326 941980745 64243232 726289906 192444996 437967131 722732437 833415475 979932416 984614945 426354039 918505160 866527789 918356800 860437560 885105402 912863633 923031323 674104305 779142941 938888173 976799943 662207107 715088812 925028763 981874006 484447966 829898796 820602920 983964350 651408240 723621315 525026750 951607203 673099063 785745006 892770683 902088027 555262401 770089924 768671041 777752108 205800136 368871504 453302871 770774626 997450161 997688204 992453241 996005115 344269273 653107981 76358831 390484185 341044618 406483982 664237096 786555653 746406121 756089373 72219853 503259494 975136199 995985672 766228331 970883878 204045073 991609247 109737573 200433021 535352062 993522687 482523723 877892436 244021012 632963870 514634579 896704014 44334403 507974078 179654217 636447920 938938091 993778553 365189114 766844824 270524017 540094080 893555374 915283062 722645961 855091129 453642135 930579119 528689952 952657894 698778788 904537959 620095389 822193998 735131551 998832530 279913541 666068200 340979182 469371795 397436352 484009294 720015482 974322107 792571469 850073377 488803309 619381491 511647845 558261665 607618207 678990970 913402875 949324074 517046519 518035442 64289273 598952169 92246233 713390713 438584978 914052240 3750270 593739155 45584597 275441716 379289966 898130927 624472372 911227544 780865084 994866915 860300538 895458476 475195452 597476439 717691681 750801254 312206847 849967768 153949612 340309117 728088219 934853384 134404486 229849671 913515814 938074458 336408695 399908687 792770826 818777226 841341740 878123100 663606213 816739462 337620778 577968822 930736553 992398740 529825727 974010051 157165041 199935785 768758893 795752501 469145790 723511245 850717780 910544380 537636434 725076604 983590693 999018616 685632061 956797962 89930458 296145413 324852070 846237525 177412987 442801758 316587700 683239974 461086868 551929038 77311817 572163793 292099849 477119093 837115407 947367164 547341357 687007472 998696868 998904200 512050234 924637351 402050734 676575889 891141499 915127645 716511179 765812673 450463968 558430384 619604112 723351170 749164245 856388521 12377319 338548549 597380149 831001948 954297755 973769788 528485758 952725593 142640706 944792554 316319977 722280156 354603606 806162756 392501339 669958298 732696444 876719645 722281975 878410265 468325982 752804725 642916642 646361309 206858798 480563907 370690283 734037381 759344307 957369601 775461398 956049624 430582799 694886703 546339189 553410177 633641951 745085110 244069196 386081519 581671534 858845265 149070057 208378777 769498279 981487187 8865484 12583295 517919487 997745760 529931286 910941348 703986272 770349932 402268475 884346092 369500410 927027513 38323909 236141715 522857542 636976850 250121042 980260322 229591893 469142836 65383863 425920627 570184910 839390339 254689505 591923818 575806363 578123837 20498173 446891334 864965595 926467694 54469556 114494967 837989912 889171742 873566429 926654274 316556288 669099574 878003810 997393323 808444645 883859515 490786621 693686335 925487214 966365562 275958067 811694814 847526801 918057367 517704144 985781562 411579958 422175919 935528666 952690506 42355897 374650095 122209615 439098853 170915721 663573952 197040176 774222633 93426106 387956073 195867257 711879054 728085207 933350786 82455689 281663962 850913863 953562279 225946554 628910539 112440675 943211689 268561748 977702663 986498592 993399705 782720853 969641432 624411979 918826981 235146374 892587925 556860365 607079704 330601546 400785235 436050280 700467388 650982888 975358064 311172329 476423704 239371678 820931751 642059774 791659772 379130039 572068120 567706240 926111183 512319194 797397566 976454285 985204507 356228313 739878902 320138235 722499465 735781962 881991430 141767623 354037069 826448076 915851835 590100344 722338199 458096895 778031847 933036572 982496406 330075823 602853822 385277599 647323941 174228438 965500249 644280490 967546438 587436516 688737960 403475465 759090504 471148899 941523481 350221027 988417649 89507905 619163555 255474815 407811936 721811577 991904933 936853220 955367582 933233614 977469095 149684110 921605532 347683801 845823052 547753577 663635829 108628793 819755134 223378531 945690150 259940274 869537307 251980718 917615430 294287919 632742074 495480632 785141838 924506260 927692634 115712234 840114174 764805261 849129217 658828491 709258789 249697809 988091559 96436294 703857692 478235188 998052827 529318413 537534820 866301313 911600539 127459311 795612799 304814493 417058655 449797792 905081572 164245342 378732593 657629313 714914040 628673212 871049614 958993298 978127779 965366419 972934498 423765721 879497827 56362586 128222048 129391100 321772670 530431518 746410314 577231586 697770273 677829768 885795326 787153920 908087191 46675301 63324078 673950400 807554800 482583969 769431100 437261099 740242476 603765690 625861546 385866183 395462556 632988962 859703557 37700830 616214473 226299550 390784599 258404814 937800219 708300404 793476818 493763191 811977370 587229791 952571239 241765480 293020352 266199102 436918325 119399886 412951630 342542612 360914690 874634885 875925702 629021110 629613426 86294936 822593910 490245090 763241162 57864949 356596034 969944349 983819066 253259971 654821414 782855895 970532922 113184765 654232672 133704594 703621365 81919201 246907853 968966223 994315646 517610566 686015992 882705519 937614761 591594866 845111812 317011025 369641842 878161633 910173064 707905573 829689392 332292555 545628954 91896968 477243103 852445242 867853962 433874616 648352053 183262000 896745980 605323018 681414300 11823928 637953468 105416751 252101173 609145209 677756536 127693512 593064287 712171455 870517502 152943928 260320946 324089673 850017426 289597719 475447119 933934279 944519929 800231837 973382682 597657902 786085787 305445553 883828956 172912387 933738650 309476248 704027026 334068817 556562061 721052242 829365062 499151741 614936846 950519942 980022031 633206086 918015248 646133312 938735394 275730300 679980053 666532667 825343647 380859815 802388464 185705206 569741231 322964849 663810092 333128543 492124613 884432333 985501446 627555724 633835876 235683334 834769290 217736708 916279489 600331426 645515262 820868270 838473301 883397449 883875613 394428595 515494123 562988715 623317829 313665528 573392691 883361028 953670679 51807106 994087763 796400276 982427687 381405630 666215219 739986133 831730048 407445120 961477157 421063654 757396083 748597210 752016523 597422703 757252434 953975130 991344856 494087850 596208184 899926842 992448553 214673536 955956433 830390917 904112581 30226068 586398663 843101315 958744462 492937452 576437969 179088039 955284405 827433673 832237081 357327270 581683079 275128018 835359401 446807612 892256675 171713710 968020593 976315586 995179021 496548477 688663409 696256014 918360275 854149288 914958162 395968239 925559455 596490832 716062854 602369212 930671087 99687174 748113492 328994293 648409433 46818767 471229617 101054331 637534952 10976618 259595737 216130677 308732151 963157045 974581607 782704305 886666805 679893690 892968012 657911388 687155689 982065758 995899221 514812464 724795271 197815680 975695605 283830657 796215837 119713493 255957970 808767258 848797122 711853283 738071284 427276878 918236866 937143707 974553738 931667239 952787559 438959855 489152817 112314366 935977425 877719244 937961499 278752055 309057074 959580331 980140575 745182584 982464238 554371002 777342803 747214719 918545960 269075491 719682526 317279138 607434875 328862308 978336906 15734555 104618443 799135947 948106889 286288113 869841174 432709194 708117937 212954055 415939332 246981144 610601214 473990206 853922733 588420702 632728568 333147880 659587641 956569485 961707106 980675478 991320536 820903717 954418614 860997234 891040507 305478185 614165525 525898454 577197213 529711412 649254085 621624817 721980915 430050446 731312386 319895743 998870961 260236105 425317556 450389365 654013444 862105540 970036641 671125756 986514110 820744742 986852017 481612363 890419535 593571886 969352579 819882903 948611745 679923085 868457473 287405088 434850158 802475350 956562792 130302410 827083757 960417217 965937144 408687489 755652972 951699296 952983031 760427289 900858479 914132599 952162810 802977799 873147612 7696052 474252593 359297215 503797621 268800207 775280979 578189328 738854178 263753707 363074077 980390704 982258171 415673135 949186057 796607408 903327576 469040241 948632956 624798817 737384400 662373025 702535872 404586858 856635454 333795428 796133849 629368324 982044025 853989994 977732673 114903931 301922092 891014488 896624645 61367791 806361387 51414682 771856964 10315428 253667887 683878059 807093079 59892329 65889715 585289830 591793907 335536615 391662544 927221491 958280236 113099888 142013061 937274619 944550543 594541710 754797900 59186163 593509615 182643754 788520950 882277200 980424107 764824326 960109217 980269517 993116728 628705031 721044770 289627287 418602400 53479545 459969453 265996989 487779052 124400628 389738606 780646896 891437403 873732050 879594123 762932437 942715467 773767791 970712212 952903956 982660033 337877068 891270120 863749213 900609372 274009664 346890079 154385480 339170650 925595994 942530664 271139610 705638613 160583506 711907395 299898345 852695880 232401859 581612634 819823812 950760798 845346473 885457627 906817978 991647673 786388884 912426790 845444298 983681448 857606610 937016903 525748717 797411826 568794060 612788861 307310269 873167695 127026816 149627971 539901257 651920345 717619449 941236361 820447519 959682315 486558707 707466188 648213833 769501761 529043434 768335403 672766034 799073275 145096498 662704480 935432013 949547861 840378841 950357091 170494961 806315708 705286912 781989914 697760929 984816459 89917227 296284356 728304798 956961361 632897824 689044084 14755894 727294979 445015223 614064105 586010542 882466963 765514712 768185249 148916642 549255821 132175944 710246087 569658890 675194380 359573694 419836513 192747380 716926030 632823117 685160054 503515695 868903269 694972928 863369430 613536471 948678316 743084721 879083504 978712747 995285239 26540270 910671193 802847511 845834137 512840883 643987367 254312340 867169939 455811908 676667961 530589461 601644111 875539038 949470765 775440246 997296848 311925101 737202711 178226028 916122523 782502900 878871004 491796277 856278024 712925896 817850964 618286093 813723595 339934538 881793191 733961598 760902546 325595327 825894196 342918903 774489146 563174953 919538126 982286045 996727816 57706734 267702170 315851527 782538810 407740519 825245355 973440832 998480392 664009330 945769929 229470336 751364444 607110895 931355799 140516385 797253007 142450046 333946027 277489702 570114938 417518433 627538016 504249986 638876368 221085132 651371163 743232011 821156159 338764418 779019503 675895230 729997775 809158505 874302304 158907194 818965552 950683933 993673869 766172167 838774136 707242556 878625588 828782843 991887362 763694869 796896209 538630364 544743757 100521132 489799039 788457966 967705161 350180482 723439946 205252085 551057919 941187608 953083060 354750872 844587340 742881462 906814125 961478650 980739946 573464148 966204727 606824235 914619572 807280320 993064335 56378356 559571378 842791812 860010097 308712549 976434710 488988185 568477771 991088848 997780843 270411023 606478712 958764996 974725101 400677369 518547924 865674157 899209237 792268842 928988433 957337028 978189390 109927427 469248740 923654883 939062490 52203020 747553834 620530183 958712426 181021344 745969950 775690094 924405367 779814578 840721825 332347666 554537838 549920888 977312190 721280114 980970952 581742234 746220157 833913838 858413673 941938067 948651089 384560939 429450790 860393909 999036361 670531500 854332950 450988864 565896503 378041698 849774242 240966495 999215460 554396445 906770398 319096794 786674190 5772863 343733676 953245626 995479646 107368631 863063331 526139240 552395110 557570540 760981016 538754184 940838410 627059147 961129360 909765071 953642410 170042927 724568121 716565182 820051351 260988352 852204887 462272677 608180681 60735877 546921442 229460533 640744087 237221650 548536601 515969477 749809745 291726245 409423773 454097652 905647585 221300050 864834022 352108659 412214683 416040754 970734638 14826844 378228455 367657352 444458023 300339462 890526525 456075298 492908677 650358245 732108983 646544122 751061867 94074115 441897117 803612340 901964464 363072928 892946500 966224911 998064317 237307374 488637308 897180228 917326872 790701636 831850705 126768078 224633174 113566551 321197249 27720278 176714367 8422615 881608592 452945421 471061582 991468771 995870981 23031889 502640038 532901033 829716758 233425154 718692127 551656571 822263274 849667394 870769611 133850862 297210420 924473135 968839236 11595633 109533776 910703312 967851870 482673022 733778769 898350506 934769155 600199657 924542320 973609441 975495418 516871354 930826076 659272777 844161624 388917225 431277972 786309780 791462132 42262711 97036527 615688714 762619886 63403648 515257362 67464849 834470077 296642989 718585255 629174956 940674554 873045465 921570065 198548017 333125272 813399409 859568499 160059807 172227923 481547959 800431728 210205683 706843225 218887104 920608488 455626600 733915039 674856262 880841250 156765871 202521234 805866601 980613067 949759757 982385062 30857602 305044695 4864980 8545494 930035362 999187956 296378041 395976019 586664684 627387531 291301016 978115354 498369345 584626225 780442494 826157028 738679469 846743828 298274046 604182096 422908446 670382454 345067946 649660494 840509015 906210852 639979669 720664837 534288086 656960711 834185076 900872835 366186709 506277046 81128471 509465974 908758480 945004253 467784668 796903223 937369357 964008530 588554519 777517865 689602452 924230485 523840408 868441302 478620533 793815223 53955241 344981729 258026383 480580963 761006241 971349361 250643643 865542325 843237613 864789397 514635697 882374991 247215479 928321277 842309730 919315073 875518064 984819552 429202813 727670546 762947814 905458639 834891500 956529992 545577579 635591144 72358753 146399853 195888085 878911440 222547821 634258335 917206255 981760163 233496200 848930371 565942776 866003698 708333392 892704389 497798595 760724733 720119960 860801685 20838647 463321013 186933652 366884523 442877275 571491673 907577167 956375948 291925916 816015854 531073120 820380194 952014171 956282526 951788144 955705939 81241408 969717078 934459272 935938134 887852123 963640321 470367258 995625861 886084725 928779464 400013716 679691119 732897227 824234894 991273638 995143239 471490163 904666125 961981197 978962476 829333174 867102829 969451299 982820135 127842174 973310410 257073691 781740718 518245354 686560586 900026766 917002601 538240306 656722342 533771243 767971176 177695194 252888769 349672784 818204045 2560798 81624863 922162280 995227397 355348094 867768057 511376675 891152758 9234877 897770859 93940956 750832355 49734399 506054959 618439823 695251203 164865257 894557597 323451196 540560595 929802303 951265200 616097782 627425224 625058493 673184652 659089533 955864844 790942721 878740075 8882847 136269672 277823396 464662548 556415339 649076360 93641905 863238558 81720708 336298784 501400695 536745471 387461534 493288687 182122754 340721744 664580298 734268621 452928512 602047810 835213650 930921339 184175486 587850837 782767384 875310360 326580001 495602675 964935374 971815639 518986591 625518620 605625691 654811854 832093949 997200001 781452892 865321752 134411050 691917416 321145559 630954094 857851032 934806658 59399777 902590444 516467238 966402191 533825937 721826686 333107501 567192568 719086906 787628934 33304801 562482327 860499988 903719006 484439126 935766519 720422451 811406041 761685880 843006358 450998712 855564364 597315547 661559468 983093272 999100656 388628636 485002682 881117278 937831762 833187653 916977646 747529688 860059927 304467972 879464572 151433547 267578642 637262747 976233286 209154651 661726452 171462563 873284032 711868525 994692787 400803757 784366347 218114131 935012041 88878659 857701500 619112697 676734417 425823811 998947144 20863681 900543672 725727269 883528564 361598549 954555022 805638640 919905469 866368853 992174254 798784515 899824639 438684136 826997490 145426181 907528256 478052955 532880574 26545840 165578936 86482161 749031083 850599761 945076001 853957653 869972840 832319557 964011654 342923848 999136885 295461459 441227060 535424252 619308440 799113203 830563437 875793358 955709165 170376134 697734160 789858468 921723438 593030878 714003003 226270440 868804547 937132955 987333191 71502487 700047778 599545483 857250400 932916002 997050743 870164169 903327512 229366213 651186679 886420364 939064161 771742434 945564051 772890104 921698552 750135265 844021307 220716914 458451709 9328477 530145091 189204173 908675794 197781882 969664421 308733065 530632171 442845349 829450408 334074486 684900432 657377903 822844913 206843409 298008027 165400948 615610416 325275942 795772531 527659956 530363868 990011941 998637281 775460342 811272023 726531653 915140048 292863459 803874682 651375692 728722771 821769699 970163158 774828105 902832999 553114428 612161121 432822796 906245789 792762305 886864024 811227659 855239661 278010418 540967006 110802106 182185238 403460063 823872442 384499980 806320682 519030933 812634098 800448447 982130274 447510364 533727383 212486346 464185458 568647332 586172458 412307334 998929084 724517730 884538521 249694129 342611057 706370970 975881472 697303536 850552110 48819556 78605965 432450807 838140191 392100404 787903927 615410752 857848513 588318264 670375724 444111085 848212898 965794909 967447474 552412454 749588618 710997246 864816215 908555581 970672133 790132296 912317480 698827280 827553226 915353220 985019111 763361564 799721245 750833035 873380798 52434651 918000038 246811379 618021254 839601890 904013500 341596019 969732761 687484403 694410028 448837289 669219448 40749718 69098229 320636139 581371348 995388975 996846005 946017580 971321306 975844431 997709380 148957345 165547724 95582397 795863822 866419052 963654828 756709971 797353309 158270350 587056262 250846522 755868462 863336868 987916927 344673076 841940663 336945076 496505070 17089768 417557270 243276361 709173370 723110104 765109746 51156078 399136992 13162322 144995181 917369255 931120480 102477058 464831080 136492380 536595359 374604168 555180076 502224795 714109199 343711913 678321763 342411616 351099186 168366071 564677063 9576909 696278045 778392530 884194624 874235567 912284180 892679860 924446551 162976143 548306966 685490830 709404592 472656371 990775732 872996914 950000885 320647649 855571876 872292496 941731734 378352046 754050650 228030603 311219820 316835551 393984495 502861811 829331245 127834619 329795204 768045325 996765019 976409402 983109011 971691343 982367227 547373805 690149000 569590997 899997991 96024320 307069880 811913706 965970325 863625211 992339897 344820512 819350577 641467163 653226469 404792547 442512889 797614481 814860978 493184038 918704037 365650155 625625321 475248847 768368081 880483390 926361317 760115003 831306772 149160431 312703418 906162874 941097938 381168711 941408470 621044139 913823232 759427785 801674777 218749249 581003322 393762967 430532265 121243273 180738814 455909830 713057564 264582187 938375956 24993513 366976645 49523034 203451227 361095898 827614164 302090203 527419872 355428054 524808867 132086750 510658859 327295626 431341096 503267338 621470270 160671890 594832152 76619329 993563140 204528689 709272879 316109090 826141778 810319439 929717037 445021391 930455523 844123505 931572639 221948855 626426326 324180599 772643976 520810609 594988193 824710642 829889816 839642883 882122305 79323131 818187685 361599994 368524256 238615784 265480228 822251659 950406895 548495015 649021076 18678264 575087348 14616674 672288169 159575746 295438499 745693582 843533074 652671473 750449037 631728419 959816928 649139406 909054873 679387726 851467171 928413239 997578862 17065241 869029917 259871131 363066764 247761998 347610703 629637559 761074614 998387461 998503520 413331134 639708980 427226049 797022886 418920165 871393385 469001427 510683133 686882507 717464907 595882200 919591412 55772614 122550893 117781441 953473754 678797624 863101839 392784551 800766578 229706311 936048133 9717980 43087684 153827843 379989967 887630154 988988936 432559522 732964777 756569078 856162789 594832142 789749809 944482783 949517896 635797047 673052122 233109823 892737850 916767731 977399867 183645315 650448499 641786442 716283286 952679425 972475045 77719961 292781624 109916423 894195900 316624729 529601420 537030073 864218616 551403755 930192587 884118728 942270298 215401196 980385665 208734714 978387084 664113090 912290236 135494327 348339719 590295501 726080185 785967416 863007414 626435315 674194106 78546678 387405711 452660439 931051666 890241967 982815999 257244271 310673585 17047109 215391346 57348089 683211567 874159730 925607785 854763401 948632008 572098615 638146928 185295865 530251358 383041007 813150729 304139583 746785738 227988198 378250033 257709901 710545280 436221453 950778935 389740498 889733712 457332280 542598440 890816620 957091967 262815914 482977102 994052631 994231062 611698260 766041009 252154065 726664416 106298436 582875768 592312535 894100466 167855401 913441617 967576076 983338148 526092524 755951343 725941261 845671663 542545393 761804814 71597296 627678730 316450827 735132181 918194265 995045714 852751069 946707202 813056411 870535422 94939020 274607203 846804850 928280446 282034030 487425939 393132530 730269634 508637695 829090742 303919707 510969306 133009715 462359273 672287518 918536024 510520324 981892364 226633487 762142745 182339904 613776034 761860420 847467371 259381035 301184584 749323702 870349458 792459583 798127193 727519824 877179972 668303353 710126176 24727771 929521423 502853986 723840097 577678944 686724077 436418459 616701938 426116470 523173354 881724757 958515331 990789101 997886438 616592450 690013502 756693273 859539284 342640640 897841767 663814467 690497564 58831428 992896859 359262457 659649034 328839516 623275428 426262066 788864927 924715651 961635435 85899480 854041222 844088875 918006661 382303314 432149839 955791341 991357559 726810051 846793299 137700821 487259397 309331479 871506508 771463939 853993776 391199877 686861680 424034934 737397513 943278868 992226616 955598326 968632291 956680910 981686150 308915048 543027425 165679198 949755432 207877483 288816899 185841545 296775633 16975446 437395289 930937583 995639948 604804611 727722773 588528302 904350923 480391209 866636116 817995483 850469241 535396115 660904960 360759067 647308825 998685388 999476315 590251564 985005644 613435032 701987933 625662374 965638210 327654019 526834224 90870458 635922688 212496920 880134392 723485739 730173247 95160438 858585115 115521187 689711725 735674699 965394979 865251123 947971590 188137745 986302746 245270540 310328815 1784806 503321746 954998888 964637629 994227248 994739002 564176665 802577903 846714894 950925824 655091683 771210671 560085888 736779847 173353622 714390845 63675682 493643945 497060317 747062034 746949694 925396037 217841708 707085405 924103545 979603343 80973184 99213756 173274809 760025867 7166658 629959673 465919057 690125306 908941184 916840734 850181628 859982636 88137210 546778112 405550956 579262494 98688110 416466565 391562260 820023068 913407792 938853415 83601014 642723466 447314685 625938429 118986884 403539999 595989877 683987804 526977308 931269405 775160926 981184042 283027806 417818360 111323922 551984764 182831990 560296927 120457525 564064989 501363101 762408168 295863709 695570545 639552797 884170709 310441753 584077015 368167674 641189543 253071927 648347957 438583461 500181686 276837835 623424082 400866602 402080318 595882089 948898205 815564476 985218450 850914014 877259506 713047782 852062778 523530959 640067260 720198984 983051827 440358239 720633355 256794063 904846629 910605686 944941898 295974319 624167071 190745209 624284530 533981732 601923633 718644905 844765544 363754437 686933190 237854445 572867664 805381248 912715962 146616428 985848271 768434372 838242150 760817808 815543590 408091125 937001514 817860984 831478027 596261959 655513361 350976023 352775491 766699905 878285115 152184170 269947010 907798293 915146079 730017381 807340927 268142536 846084295 780226310 914446765 69786905 197530377 43379148 442574117 763794791 965442446 302511399 702614203 797139320 835924070 407045248 686559004 75092142 849064561 861632408 983422332 595858567 921001414 75511680 127341591 820045751 829571877 727590708 786169734 293037788 463102784 237661080 369262715 823685270 924538170 533102715 541012592 785582012 901514040 282920980 336898586 386807802 977220646 734294439 766023609 136287167 781111382 629469993 842818150 968132518 970106357 231193354 529968694 270811932 819357769 393555496 423936887 647734277 729446944 726540983 826739995 798705918 903652931 227797091 746969343 234627932 381953308 975167400 986195370 286776879 507846838 824305380 866676090 470467821 601287351 378630240 560088192 964315737 999410483 793462298 801475825 328342132 584883031 555335961 569283070 762695315 903852089 142960780 670256136 501905282 801847532 3729891 37131850 259016295 299717366 762776257 885042551 713608054 803491757 610191759 863473554 803013333 867928786 706573573 946762011 513733535 903188951 318434121 398969274 360372935 958481382 832978901 855314554 689838215 739472355 473722448 934608618 342698079 855444973 517913026 875731798 284089466 763674241 424095624 425055599 605641311 844239061 188369873 438459062 936026715 998123916 253028951 554826858 200149449 489169845 206694724 934723040 116845334 905858162 691128212 985051791 434780605 898341763 185435670 326051603 858680399 993927495 592153753 895829164 544308881 878280128 137393172 869106477 128877594 549138812 950962541 990148419 382841451 809726851 689614104 897320288 367683934 999144950 10677860 369940541 256197467 439898316 819279315 918187449 527253121 830560914 820222644 954894887 553844103 630208727 208121909 282206191 109747317 312454871 255091621 936314145 878516269 998367225 383567095 479101946 634310997 808393528 179068733 568912449 851094333 948151148 609295778 948326410 986790493 996881710 41341520 937577327 285966171 777859246 469491053 712203782 607796718 914449134 61032166 678968112 576406147 916582498 440305507 780095590 808194928 988616661 733048465 752010399 620981579 957188098 841609615 851922441 970922668 983418458 711594903 942936598 246482197 803791496 56148225 333481890 303039045 783829038 894675145 960481909 178143512 604397768 572141722 741917081 521923000 612101821 706459057 886793992 427935990 453612992 806313355 955428414 727962789 731500785 451120216 989433417 38561906 148140042 422657223 522608231 31197004 314573291 190541966 707689017 882449927 966118391 191146485 614353315 31582183 482765389 380299556 397984449 742852450 869258631 890455674 931965859 405401431 789108018 373840129 494326440 716118968 976244901 427532954 624721407 714506256 813108717 179370612 430699867 698524472 738579749 893768003 936061758 253023568 405711868 461457389 842634255 497885259 498681642 459258510 603945359 161518383 922917358 330344878 423980502 834182639 883822298 746123694 990816336 846010953 970263187 128491359 423240359 848398007 940604236 168239662 512548428 692073517 722263356 605811550 836709260 394719506 908465649 263270790 770765911 818584390 826049176 575050059 895986351 181630056 286339876 225883632 772055550 9507202 163507793 451423353 894420517 962212849 989463261 948589926 974297914 964281898 972142959 213447216 512698485 510849891 760850998 800509366 880351661 743213281 912148844 846835820 948952587 815980376 887305666 553499636 867653207 7063442 628169459 631946817 767159110 451415130 456104892 334139404 774579975 400665156 558358882 259081545 512671760 93515834 528882582 972741467 977695390 842180692 947086085 488221418 605029992 563488910 746233914 226543646 532703373 921864144 980353495 694481955 711630536 403780119 922516904 790194888 792240248 899474191 990649536 38290372 445390276 73032854 775113326 420188927 632997324 646013243 969800379 875062497 908662973 881912794 967292739 30306413 673986209 629160357 785550812 63860056 789988284 517343002 969103342 346580337 538168448 182234024 502407246 367858402 875133034 609922830 800069347 512570486 944468334 862870105 913793982 14966762 666108091 291885559 729590947 151104708 403955244 305003700 728533746 864781329 916953984 675062678 882457193 742611439 756248100 405336589 547475670 365679997 426447377 885519515 948457981 849639557 996521484 383364203 654508402 119623312 710228146 530606686 554041688 873175466 963093049 295154762 460092974 293986653 734447693 179488506 414534989 535424571 665661937 334394434 338114943 271730518 851872740 660787603 813936311 193940400 790198400 867821630 957211189 413898994 496013022 592138661 933598266 566121286 759556875 435467090 973148053 990377427 995147913 876733183 885616630 930238923 948775146 7385019 681545727 347933890 720636761 220304809 454433457 2716370 867765812 776873463 986377684 124575326 992551984 698958775 931922255 828054440 927123178 595330900 664961852 54979012 756477885 860306559 876141596 724792540 787660310 612304532 677577369 283838673 684401124 418441120 537828973 905962987 982334083 490678303 734493578 151368377 851207120 812303654 823774529 982614185 997491066 401762886 818756215 952265275 983610150 417992650 581731108 960161350 990308376 206150585 499775459 139061046 989794614 672316543 750003071 411004933 597926547 456347921 920105987 313238028 683620468 921915717 968616511 666418160 733371322 216573078 262635386 569192086 739837927 746961253 893005348 316726197 760707162 523770428 906328839 401618740 938116546 789594962 993870418 851900002 985384845 309730906 430276051 972668744 986110900 742357308 947020719 480538791 496339007 35780301 536000989 148307626 176341360 392600087 791718445 674072674 684051179 908332438 991291561 210366685 649887527 748877237 791248652 338844869 619048939 800599656 922616221 956595123 982145062 546312868 979198631 211606780 293951499 66819196 696253436 497441935 556147797 220155125 963246589 675794080 846635545 323747954 351790385 165489880 530495526 631951283 694340492 39992599 929317847 270026316 453654538 356456575 411332744 777842997 845122763 704057915 755583264 279442142 418817596 380335822 949418329 37220491 449924906 188172883 388793241 901693860 939763427 598738864 941248950 621657822 850391558 139705030 283450062 950127198 969781830 730694902 809464401 611286570 641377408 21007501 465590411 400110144 429430802 179745735 338719611 189668037 376837503 314180351 821510523 329732668 801334844 153898189 346772633 348061018 894345386 918035195 972688461 62283971 648453666 786930092 881858636 623463404 865410297 433887139 518672311 100262082 599896652 726454004 961815489 77131835 167214251 948212811 988767260 576816337 845698757 999057764 999219927 315049019 599634310 141178222 754321586 659605980 956934143 703314922 706864101 678598429 968182147 209737670 879282382 716669539 932211248 974031489 984163511 604244500 867814642 702781395 734326127 636970124 665887143 303143942 458272033 837485858 940260611 546331482 570109353 76601779 348478296 282477898 331215510 897210388 957395162 157923549 999083247 700289182 865430290 616769071 813181261 399793555 791325151 81650380 831169464 1671778 263058286 868771909 906465954 525512660 571073545 405761451 657248149 463109214 573547685 283569099 918731819 679712290 781820550 672557004 986788768 359967694 967722794 500879276 880800008 230646922 950521883 864798833 967909888 926705661 942519591 978116822 998558200 951155844 996827004 919690677 948657438 169942388 312736959 650953575 713930066 266078678 739103605 210152078 632733289 201054520 269394599 994460180 997302432 383950899 546621015 951905767 958224598 332043039 838303725 583312933 790743768 491989616 881468148 771050236 929374443 870422667 964830524 262399440 583236490 561077578 864489529 771985781 950286693 866320145 929312395 839692060 892479107 229012645 628444646 241435462 543817269 502634507 553585856 2881921 7515941 75562414 774772179 614935620 619322861 502436818 681320761 692118913 888761348 273726603 590640015 681796607 979242462 983455815 993323125 436044001 540546813 701050554 858988367 181570468 987230191 988726666 989296638 134158991 680470321 59700936 243104501 942919960 949571562 96427823 251051547 642533916 672549708 662748349 829480371 332864626 584998411 990380053 993900924 503106354 939208494 391157884 999251121 677135470 890994720 956459915 974668901 448503657 587096923 548473568 921121039 226630513 239647159 68633072 448168625 379058792 905883495 151278613 288513828 973415828 976548720 892651663 904977870 531981764 891147548 229294545 356108928 207527822 632126571 503050675 612848075 971551799 987373457 877120811 947757335 964103633 965942764 200772348 391310815 195627227 772180768 146198623 337927162 262908149 568718151 772931753 889487607 718406561 989132503 388909007 818637971 299051020 696437409 909259162 956720313 218997537 315140175 541472547 648775006 847777849 878582763 381905205 536751981 696567913 919711214 412537140 606020855 493289220 838943611 39426368 532032499 520018558 608759007 46211382 838119651 482631337 527326477 198107303 590710818 85718787 491691621 474481531 957253671 28808495 921520319 800034805 842027392 345633780 421626577 22577938 205082012 887533187 969631400 418587750 919140177 402537408 546332061 225856845 944750839 622774987 722918529 124654703 207278886 234932004 628476640 690489838 841513256 722467366 956003196 16379664 512416016 604292461 782788062 36352172 477260918 515170099 849950083 421119859 718014616 77761049 595861418 575788205 720063861 118627446 224684978 427469916 560827182 871417558 877361254 289073228 906115557 858307090 954184894 589929938 794365942 991471242 996926943 396892078 877246252 606049406 972772012 403141403 451944839 893047058 916200600 405299066 795458566 454976976 480123534 154446744 900212825 831770535 969911967 987361285 988032539 188652956 511483012 544504050 778053485 6177949 12048617 506229616 792116091 415759826 587879219 619090580 717133616 313888896 627298034 29702009 235931407 913224508 978176886 43554066 290173305 478775426 676166639 267546167 272309038 543792732 920443793 704330884 922517773 220830631 426998798 514427794 741040662 259763660 990073376 407501321 833062744 86525460 694063758 948882806 983800181 921433821 983212876 157489363 384903384 854006271 974753177 465129156 499694555 187556749 733333398 418066208 918527901 357482579 810854108 658251839 984615488 209103316 733902896 321968275 385386207 774113248 933287568 830607373 872068435 199601570 304807729 528244936 844896710 663326226 831340773 141950907 563470654 459994916 996774498 872901090 877220960 275147491 725101122 792460818 934562701 504464305 666802013 443113086 970801372 379291749 760197568 732842574 966387869 213510797 693987709 269472037 385943563 201444715 757448954 979295992 984575201 313485902 915890243 307153290 645762713 806057979 894359695 470259734 561879770 894659164 952115267 14901162 542685155 794100778 853340691 50955389 686074170 609298226 749565269 552070974 775231073 426404450 948613452 261122779 378636245 578061517 681295347 272899021 576764323 243958792 643242101 12154855 629766395 584580340 814219258 970132467 983298363 629880614 753278346 619508036 747155542 166357452 300694872 103780118 837516546 164869186 659711796 5834280 918474870 533762644 951183424 514639297 692738725 316365568 917762237 954911086 997264141 333609555 489836391 373495442 866053122 285507109 796791625 229981466 335554567 564346200 755810480 321369906 713069298 835372170 858448750 441054605 811508983 759793172 980220738 649891208 669322261 117641728 892015072 503171143 912767116 762447896 864998548 91278210 856003166 678355122 886292378 821370006 910924557 709186731 807154763 671401066 989160271 266982254 640122575 527142387 705708897 658140489 976582177 280854772 388949531 935876165 950145914 935755746 976593894 627307391 866795293 904762031 939227377 245005685 711064608 314746605 937985256 209387471 497436618 932755140 933265087 386607283 897213163 682107988 724617515 648047568 791871104 852472310 898095851 764269071 809666170 829412424 834176285 668150805 900844807 756206323 976132242 568431813 628537744 309819070 753433122 549113668 867367377 13209499 536931009 901893385 968695199 616414298 984610108 565449251 756812438 515911518 538865078 899743543 980471896 36096444 573008984 415328710 950813644 290576592 375310600 719761871 958955204 901313015 987643193 765638826 831504436 817589087 825324396 488191374 844603785 133835928 783584293 119833380 363418642 999401346 999457294 712652067 879561389 458385075 591579624 987003183 998621020 763574648 809652128 417039875 560131344 43685214 485491165 778372897 990840013 225332061 921514244 262002176 656498061 780911514 830399151 906047354 936232323 355894668 815409919 702541193 778880553 432904163 814031042 928318367 958476086 764386564 809845135 851865578 913933108 16805337 975757274 841849979 991581321 68520444 269887452 780356155 848590906 293834933 823589781 499904801 514820554 996717408 997523805 408870919 941927148 611459034 690910932 946218421 985162136 688977376 880354017 730315642 886273093 937202781 964683757 298891116 904045707 766552909 904066930 907074193 922347573 676154623 750515538 199954210 846468410 835001930 844452575 934684244 943698135 336658140 601435654 854133645 943833793 892329767 988318573 471570292 751577999 510283008 604071628 264521531 879097162 341516751 627139098 1689881 567100180 758112884 876069760 562155837 934552782 277120319 301663189 573909561 971547266 370882728 845723810 199891920 222671872 647941694 666162978 525984264 741158834 14552987 915575266 610143428 721532065 441930270 775488800 788509319 817927771 10250494 500514752 649322402 835204719 921964885 957303688 381445039 808204161 732812929 864015101 359296131 397009886 629630174 713189765 494746088 748476412 279886404 292216667 780118408 952509036 595047368 629191724 89255565 834911083 518455555 793023253 528096102 659725585 217961992 678520676 229690925 378854880 590761051 881145589 6424119 149821287 205057685 486061106 613024992 710163059 848763363 923626743 300881610 746187956 976388599 997556505 276842840 428975391 535454913 701159005 679037954 696210315 183543568 389978242 621741749 636663902 857705792 993435209 108140577 142604129 162254198 945599999 165571948 729345575 645530634 869212711 879641396 960114964 175896934 328743328 755320963 970005243 768276584 891245442 848033307 849009173 494158145 502266583 617192419 773044139 84126234 543880793 987590716 994171563 451502757 474428212 453000368 616061691 85961561 106973658 673383189 763940878 984420521 997143407 741407967 828603718 143723196 283379797 311620738 834746944 576873114 721838933 282210576 866203007 199059077 574740449 480261352 492778427 973712039 997873812 848191471 896465865 254193918 825653990 785960267 934075079 632444116 902094711 531571798 566887271 611682064 927974568 831075912 883474752 619413522 765260117 71094779 804109307 462185246 838914754 443934581 452787751 177962046 999734381 830435357 881727936 979820167 982362870 225818791 353712958 708672841 847849917 930639273 981439160 513918400 637717886 558778875 846961571 65425007 730807657 67859173 651380889 189339856 272237653 503335095 541387047 861266171 957123965 347370386 748825171 923353716 923990026 300835588 929185737 841466414 973063874 965617326 982086003 329874585 517697465 750606327 988270693 293864930 518248643 440227335 630951487 52000306 307575096 482083238 910881008 536119308 824337330 420956905 557095801 467635203 645210794 448570435 749440376 261078981 369118496 73401903 978550858 65759561 725505588 65210100 664667775 770036764 820389396 41288259 385938330 628238349 799083123 484743014 502230367 190509255 983037458 72148506 267307716 825671232 863177649 670920205 909167803 110576624 869090871 988962488 988976005 563326065 609729104 78297621 106874796 590269327 716897531 850140104 971990704 768204440 787816513 743959631 907277901 308336868 538611694 402529071 527051783 646343258 702495750 5801677 850855014 635169747 928373351 479366607 597809879 583979934 979516863 832875866 963637710 666544791 684997290 281650678 808272342 811629860 983866314 689696688 854750783 967404965 971069795 998222148 998370486 700208465 723033704 577248722 839895482 381110282 848660566 113878330 217192899 599744074 892233494 548374001 768358780 933228437 983267678 28924706 922037400 166093551 557457805 358312793 825744856 958725935 990364797 953883228 967965208 260553524 395006375 596446061 849889179 658206384 733325730 387858299 921890527 390273528 610378172 98938194 311916229 201818527 551407189 360978872 823304745 825729502 924386626 638992379 920171877 837002665 988494440 312808253 584893371 601307103 885846143 833934991 924087751 440998270 492648116 115199455 972861365 493497488 635231906 195834920 626008700 549449730 917364079 687721159 986142804 612553659 642565650 727708553 971234345 343606520 504533043 177073886 774909970 713947979 967116743 979379936 980803499 226415094 350978003 231057169 297050250 580125081 855334023 855815569 986250894 590048163 768553345 659252691 809012969 294532617 328869717 293731011 944484908 913491413 920114225 475003631 559987536 912684913 981363394 929917711 982028018 10121808 411341679 933336752 993075100 227710854 286420065 490031469 776642467 656273941 669522778 948677032 986879157 107603050 908648273 283520554 897584159 680083613 769436674 504561042 532593339 954414064 976597218 382925964 851497235 715950985 792189411 262041313 974275536 721286299 921361781 480419216 508728414 911115582 930251207 137492233 790600090 479747479 553736085 267967511 819972110 727697197 928385465 618497777 764570563 149531514 507792162 222627971 592250579 31437394 668194281 287218938 621948068 766115915 850498461 657732441 718284938 926313747 944018471 498608951 582729022 544846890 674805728 21791427 370066781 554520020 869190344 468062487 772308927 955527759 994958225 103860718 104601696 846897334 967029421 326422975 856648748 831938169 952483265 463819567 686990418 574970766 709044832 585328796 723783068 261653185 686085011 932280166 933052873 775332501 997628528 478862296 833708138 892960088 919966326 670954005 790434207 992842564 999386355 649516767 857741714 146419884 969294357 274834609 781555390 8753045 301219861 19726023 285300898 694657158 999837414 275582013 293795695 483688199 873714950 665084944 883670603 933851156 980298594 580166148 941390582 568591627 891706893 726037924 974114750 589182852 670981918 769648771 789575804 398909376 931186801 880139247 902436076 499753698 784608089 488006823 949640776 884437587 974423744 916741457 965275030 260349511 489793051 595836870 723674999 621240544 838842331 723096748 933268784 642072463 978615900 21752537 75545209 973989043 986380000 553132835 668534423 765015905 892929713 588916447 914783179 681940703 865464275 634693970 718707628 458764506 771487430 668005406 707894778 312312629 904944132 618613380 718338953 205345904 616962925 406421636 459578149 549535230 593162318 819415732 822106654 606607222 688433050 128716336 738013477 131044596 673133357 63653 37103407 389722884 875811247 467187072 712795690 769145342 936833150 159504736 923530081 178500944 562362694 876275059 877895253 233080534 958939160 624757223 701280222 733102319 843056585 342470361 581019982 980778781 988657597 234591151 883872512 460431378 806917298 603615089 790791753 632346523 939309334 741957865 966133933 809061309 845483588 89540078 449621100 71699008 766259001 648461798 875525832 30731232 125316565 844193004 947443988 670934468 842124027 501901545 694734330 929816576 984230360 794298571 815613648 323244099 755271996 128254282 534277728 293706984 450267960 540916950 867650022 455516713 967212069 870907561 945971471 279049124 343185594 994603051 996946358 967187005 994329205 231379176 301558255 29091489 373818025 281197314 779815084 698799373 950687516 841361517 866123357 128753565 465144458 708370959 950193291 331655348 800721578 802447159 803568622 448824342 873960612 266028067 780186394 503483399 841596392 572901223 988055954 67551595 287819284 225203742 647248092 988620778 999459601 25929515 522112818 775708046 917617923 388249616 910072492 157493106 250794968 615766158 834494631 89364413 781009706 91815533 347625243 978686049 991139938 535039394 579575133 876507685 908749021 882805116 894112516 411177529 990615338 237972276 708867248 329704470 592582155 394033648 705903012 542361078 748291709 186371612 250987412 745280345 865096634 455705231 550605070 272721194 333843483 872456679 963374407 17158179 122837655 655916354 836411229 763514547 818862952 294997662 625863574 347553124 768036836 305347540 531355210 658732778 940169079 838424924 866385096 411380227 707238246 626388218 854491701 289197516 485092668 548402671 603305145 370656751 935857382 95128269 573004244 90414762 217589310 958398828 960261213 712512297 774625277 786162939 860201246 926981534 927695153 5409350 517302501 405194590 901297980 31461215 420958156 799428432 856732410 9841082 166433332 572671649 740251877 97675076 385144855 647460185 816071576 263937362 509684463 236526236 633498281 321690792 507167417 978849134 983789203 260653661 305088311 517497730 944763499 15774103 361530334 979766299 997936974 558093164 870121023 130829665 827086228 16965259 942507795 677422279 997387578 700828859 703101729 519121189 877720614 265845291 755797664 932232634 941150344 310279108 498093556 837642556 963295649 468764264 656110206 575888385 936914496 766788263 919588101 701973097 720298353 466145236 716759969 586387748 718690524 973635933 983448574 882932145 995838833 583602154 934846145 839268985 888155920 849184205 914137903 411326517 881522249 899802329 975717518 501340101 786167155 694528319 881141001 930252535 966829259 555709036 869040970 758984265 828165856 990589609 996577011 983954872 995413862 192865500 883630941 636213473 833837710 815685586 852466193 596151620 672675490 193655206 981858852 938097117 985947757 581952484 608723496 625591163 972686012 695788347 743176599 460901419 895044779 364870338 737053921 645114191 659877627 372362171 418771017 780434997 960984612 911791650 967190072 439751525 512476017 118457172 989342170 972373944 995818656 87830071 289252820 713830344 891136843 322862999 870286304 182633183 507301600 677853925 822574915 889706135 970536638 372690373 988739738 539227011 816335715 869003231 926960503 519258475 676254016 499887173 946667006 135173094 356711826 891884824 979195906 473870006 638194159 822560297 881764899 482374107 988795124 265013383 728634115 996262514 999521849 491057279 910253754 918392806 942792019 35778918 910094045 426974405 698727968 902010071 987352984 6516626 684094012 501063936 721163316 23457220 953903302 389371454 676322143 278961834 625278858 824760912 827335106 213077097 253109650 484744627 813816009 274111412 807787233 716927466 866464422 647903834 743943249 409096696 887908538 848793502 877157019 723979788 744168114 974850303 995221691 257397925 398430652 138522861 950294305 161467016 798681077 592693008 898543626 982032635 988500147 994172250 998955539 141387897 232002176 377219471 634568029 855140292 971047784 603768442 948371062 695584601 992342778 568370127 581622787 404232582 885853423 997173678 998331753 357859696 629729169 959393546 998029886 788402237 850432563 768118933 899036406 214413699 313188769 969356234 996886613 162539569 317177859 105574175 528108084 874655744 881878786 194323283 566399161 597651058 688227298 59321267 842594226 861362454 939513124 107436712 363410258 683664199 923146833 674543579 859176651 701467686 738751127 173387183 433039909 861819170 897552134 472389353 818805582 725579499 823560107 517793810 599299135 981848843 990233667 441782817 802198926 784587937 931304755 214122974 383748580 71742794 374712259 99581297 874633322 948891306 961523219 73870440 81117348 52562361 639715993 252377913 774521803 323281898 452688994 292525132 942168480 922144096 978489581 978348883 990997424 257643400 717606397 983333375 990774370 942927873 974809152 357259004 598355504 655144318 909521883 436913804 791406654 919994158 937685079 794727923 967452699 955412800 977060364 896289132 979854058 46951323 431718295 257109278 533180288 978396779 979518194 362843966 920435428 132744714 167356536 621744892 734563824 651669547 653816570 731178667 968899223 648542096 784129201 915610189 917628768 441387497 938203192 562616232 855454725 302844302 586888861 221418810 496721756 837027779 850742379 154879665 350264332 89580405 152749482 625414965 689406112 46721363 413759209 632536919 899274839 305593116 721035950 920350165 965122811 904952037 967436108 644519005 658474454 627574648 866690701 738859236 941186521 534359113 655633497 522989288 533374078 494927119 955828450 786620403 823004251 727828954 919884169 687147911 706095426 345345666 836645019 246684130 592367505 18985233 587919694 30671987 853653425 764623764 935207594 549704382 651291381 705877318 897787732 29628593 709782568 775684351 955887188 290146992 398276514 527420322 718749776 766063404 959815867 4878469 66132183 716763572 926557204 397148590 791894838 158147514 497197363 19184853 592006835 249043520 254421007 262776604 590863393 9323115 750758825 209844749 355912479 649298762 749496391 871618619 992705291 920790673 950212401 280527125 814175079 642953696 892040625 291165632 797455559 231815604 868455819 877643234 981185211 196263309 561268010 435499969 938563381 679566307 984506684 306098147 457860568 416232003 631503074 990364308 998201703 53101464 822670582 917914734 950363279 566359340 967506356 428014029 936266478 711212150 719587928 627868620 734671202 328689194 779375434 411895451 534591180 553214360 994951729 403419474 809612101 776096905 845622396 693759513 865846982 352519883 480131741 473742280 997539023 117918275 843818069 578060269 743421461 722657741 754555483 993892139 996086095 407490197 411221765 611263695 793349223 973500923 997400807 166206016 631743591 735885077 964783073 714890712 723577846 420343723 510785550 479170906 930907353 604809938 787433250 929716986 980854765 904208289 942218836 374982986 606202448 122748347 535540793 229866518 982369994 311546933 640464553 960664984 967831929 644224294 820322810 39524447 906582466 326438055 790126568 455089462 847785715 920474677 994888617 604165960 718136134 618863738 906792900 8426095 105671714 391325260 744733848 773376751 782358371 557243731 768384384 40330465 320845246 251981834 808592119 616606233 860661201 408366537 655105767 57150841 119913800 314905238 902955551 157628926 878844923 298434086 690673983 996965320 998355427 22898864 262524072 469034943 997178324 830455774 949337120 216225151 951132995 826079308 942493946 624558700 910910729 641614684 758135349 476499953 783849744 894257185 975960171 239221325 348627326 110431126 491143389 597135219 644010888 358575646 519841025 33142273 301841820 692655906 916462668 771569546 804704564 911114213 989870834 852881421 991090258 711338410 782011858 894072286 966034268 445947304 618699019 205524067 331957576 199379122 645261249 389610260 576370935 135315797 649626683 347567871 875408379 410056648 703046511 449421065 536637180 750421279 910179390 757048689 868087392 432668310 611474213 359894675 552831265 890794978 995012083 666797867 948696095 152048570 184583253 734918016 909685352 21148531 35716595 249843524 998958659 684002658 994000989 577345644 779411521 668858532 670455305 25505985 917668887 85859654 994914227 24616548 741614454 404863438 960505132 142617594 647001382 294576375 313225211 238235619 314398202 808242962 927192628 196252338 722099733 132189958 810995518 369165256 461542480 459365021 554022022 411548824 737431955 283763150 586886569 998008178 998990253 52882543 964741445 901166624 950007038 849201461 863942046 83750080 109214784 826944481 903856543 566748305 801633232 28461010 538480473 391185181 739092419 102275759 857349096 870232629 915285399 183105623 267009524 276266745 383892391 211947702 689367915 375687968 923349569 63445753 598863126 148729871 661441150 65356503 88868354 472866332 557799397 426325686 437208413 33387321 453269812 367342617 950516870 301700999 420142999 83107761 142593243 957083163 997422073 813100076 828566700 833709445 975631328 240784894 831573664 517360066 561737149 763128230 973098292 368809318 403890448 222804458 510680343 962066105 978617328 684328948 738637192 189487267 883156562 688866831 735978892 8690995 623315417 871164965 956956449 105881995 184853034 764810423 778381431 996677884 998426866 885435036 929943830 588576308 947437875 295296348 904422788 292495279 532630709 363001339 862910550 756870908 779816968 321476008 360847468 927389636 940962135 501068946 515135387 156623525 960834389 247767811 699682344 607826481 821051411 314971857 488118920 996098221 996333373 557283487 725208924 177216656 401998237 899858633 902660555 327722635 977981298 365549989 987641300 47783655 982952204 112268907 418104419 716943499 766971937 877856600 934182752 825333221 896535944 524357663 695724952 446174800 685880187 364229307 652258414 176171219 929769799 761387871 928132682 23133664 378923299 496796660 574138815 487762663 673014306 594557125 736463624 513147651 763992202 77208368 983378631 166353102 346236344 422512660 567707674 877751317 982337800 529287502 944695202 195899436 612013404 702395372 765100810 421964017 886314237 215904231 451217638 362408733 678903592 470180656 548148020 41330195 115626392 772148759 906393637 750746262 846807612 40469328 535454923 640550150 993402566 55833026 619611002 43656472 528869905 945094585 954729389 340779893 940672822 664167884 769952872 611220833 896090806 990743331 995578689 419459303 707762540 752214392 878851500 365751042 439013655 23286499 527376932 150301956 151587596 988599663 998449957 276045684 338173190 685440849 878315504 765717934 949590785 273380373 495576124 379406121 556442639 725262334 827758287 455545231 456007756 251244848 672098341 318411412 754424009 726517491 831476664 256761663 698663342 369850119 812184723 279519058 589993714 642168466 869465650 764579625 992670867 683576129 742612741 113747002 505301741 847947090 870235961 41352787 928000714 63098839 775784190 450811493 776294227 378429268 617888616 363137923 670549081 344300536 960680823 923361639 941859858 842388521 929834193 856327546 866003532 13514835 749575301 711904351 782122984 452176020 951402735 711506695 809352653 965089427 999641624 690081906 872277963 300105116 973803722 455625319 580038149 125585316 515473018 728095551 814671949 603841603 810905435 160580068 671340267 423736563 546336473 234225286 834817814 4015806 821203154 480282425 643361512 360012326 607617747 159470433 746195638 831420750 961934336 392745070 705111549 685936500 926879075 277068428 899275929 927726681 981338958 153441055 280009535 225090619 262762899 277571886 303421013 671339934 755055883 70045758 896923230 155804034 725874509 402586671 815808315 525556592 796849074 401229775 580286037 201739171 815252583 784758037 862533564 471720037 993509756 869013702 894582350 395114121 680462871 641634336 869837843 816236224 903904067 169111942 902446759 526459770 828058956 249624155 602253779 311757902 989049503 377487426 832009419 416705482 778581412 280808828 618784285 186656405 557671346 761246330 873667249 561364869 595734413 893939182 977259225 302769276 535391850 494908083 563849368 633264112 649207184 350645171 596300710 457745059 509579055 129484383 371567450 543210125 606424754 743438602 970640977 40008859 269384807 325664976 389750564 111358465 957583219 707853715 797379698 427814205 526427596 513950711 830559297 732305047 953719236 850892822 925349756 49822526 544831857 531173657 628119480 766052131 781792563 774113898 845064901 795306484 867572871 390749667 680345236 699126184 976073090 495629154 928587543 358619528 805275383 367416905 512937318 138596843 178552695 11030597 357148358 204586453 793393181 792353647 972075525 59823331 607062006 469487317 735079263 280195874 320290149 750474684 874086433 79673937 80748897 198219105 206813378 178485552 518917054 153512542 189335701 437607626 733638359 499244461 806829806 106252120 180027931 165762234 612754651 781052519 822538268 608829177 696129524 808918168 969453335 585280172 908326075 558725645 665245700 747481322 961816567 365052100 443811081 377298228 740899981 97332721 897833714 198413127 459546047 620726014 858001056 427463810 723186273 800482313 856026957 79015721 952410924 317679702 841054972 710493294 734094939 669515182 772086441 38939383 961917677 692124821 897172341 20918307 276416567 478020433 500524703 15161736 709269303 771429338 852655763 528223755 710456740 877501893 979376332 631885747 687646282 479442129 944973880 272567684 578459606 445359192 782387781 155634693 741215379 693900441 757323573 596090006 615277154 319864417 562251744 639370899 651205128 388364911 994191990 756342607 807955975 62169506 146141446 561297892 962005605 586385247 659394433 209995563 216876717 716899645 848729246 688899021 700441575 225914546 943237216 820516565 872088809 734178162 864489334 919316035 973593890 254610403 960438375 698324283 711079319 73088430 850284589 480839093 507472589 32145166 759077200 305303017 943973188 842991196 984132718 420223445 654537244 162978052 405465325 564266985 744810387 308565345 537332432 589534420 686064130 57935321 992768564 168763462 816222639 956634320 993889786 754955728 829237007 326381771 914252423 178235130 269873188 114077280 710055873 775596842 985965545 979910363 991552944 918092004 947412034 931519964 978230129 867616537 952352939 698676728 888579864 42985055 424541539 805463896 812047127 990389777 996152073 553575927 939307057 391440485 944628214 397646569 863241650 843697543 989631716 108589570 431607027 556358539 615040705 774029062 905697282 847627015 935360665 120526000 939064097 687060482 980028581 733807201 922448533 554078566 689851324 639560375 907299506 538002130 651431988 760456828 839074884 774050294 798288601 701277573 759966701 283276145 951016543 729913757 841368289 124009246 628490052 318378276 339714668 849945830 986766951 994167315 995665708 530695293 805804850 324120040 489538882 527055534 681852236 415109053 563722893 672449012 962036297 40838221 290277585 550589078 989043663 836269820 974153654 148746177 262530054 488100654 817734350 114933228 998043243 905555200 992269224 929689330 971667970 983866465 989842815 25281248 57630677 616793230 799523415 154971566 843610394 610546723 979833206 935322093 975458870 965139017 976299076 897246712 978045171 836377151 916348682 456695580 818573930 258362079 793079619 400893874 918683261 124366299 408844153 544013836 700536968 697020207 976471136 213657651 881565772 27413688 801381858 583395243 764096072 513699613 600611656 105993263 247228340 24393819 419689729 709484506 772578677 645783910 925741222 217290714 800519132 771031566 868718114 159690049 335685350 935461896 992154303 529721030 646612236 986559799 993690581 733309026 966957692 33551028 312615817 142045234 256214441 769586078 918376130 199081861 834143415 457179528 818947399 479675335 871246603 160117754 500102234 159748873 810184209 787658753 792505352 636273050 795092539 19091065 302147728 696216169 990522476 455370320 471109022 204952056 302311795 511232763 534993845 372748802 891039752 881341291 907948614 296771210 306530967 84354754 303667369 915099354 948803429 311104500 942643708 191602694 573694993 992817780 994091205 518398722 553465562 235298408 350030980 746180813 978739995 187491082 895000998 23121263 459222766 71429433 528172386 210517088 933229820 656422697 674256201 319320083 558192888 443378352 987468669 518977893 892361129 749019091 914203500 585485636 848675160 843261938 923671006 307494480 804607809 189996695 215026512 216545994 981260233 737716854 925926869 880235221 968000428 971391678 971854165 321588314 858574316 611686554 868075600 721767412 742278272 61913250 132808417 349875287 752327146 370198054 389108082 887779308 921896977 276016156 677039701 329369976 924040017 209781653 918823888 782329636 955368569 777895435 903854187 153025540 173710914 647838174 996545275 875593916 938584413 399526281 832517610 908936894 985654139 508080619 768451091 298219320 670068835 105213169 572080446 119924412 827976243 616591185 914531902 914029912 963091064 274381361 476470661 705413098 965179876 423075753 823619875 562891313 917884292 252212109 409370022 568794482 768378732 21538978 859707332 321842192 405321172 842304358 871161447 744836462 769046366 24202452 326550131 603607941 778969247 92357760 299802037 419924390 470540680 359307682 403495221 800649445 967526703 608414262 840111197 693651992 923232054 619252227 677803582 37566525 70771001 942424854 981622593 827889317 898660596 963631523 999952038 70816357 897242157 982761639 996336869 407667890 941132096 570175736 591939355 837362424 837505647 100528236 595880928 52378809 537545413 312258643 925105950 691483913 759535078 345401888 964415615 967851860 989250363 879381654 902142121 606208874 768052651 366052911 804453353 28831889 225916697 73748537 666491072 876713011 893690797 306038541 642520214 548521669 991873417 825140979 939540644 553520564 948125486 782399932 830604097 223029351 402779507 315736690 757937528 455288154 746722057 202490158 333539653 682855006 837580938 586893847 857595357 567746049 879972155 905956969 932823617 142581291 630341451 648479880 857500979 926129880 996638688 628973530 959448483 124228618 880037403 238263249 365331184 262202695 413120250 381875567 391265622 853825021 935505973 532268755 717811486 803348818 819834529 290151699 759295588 611512489 887127104 305079184 409072271 701019998 709400814 194088095 770578582 372716563 975151975 786245870 822445552 622258592 627877397 81497948 150971315 359111762 385079125 346168259 809758878 914118731 991879650 200452123 644007677 841671497 964248465 241918069 948750070 772731567 864767122 730511483 989854954 119318111 918232486 971637842 992885200 549949238 855198482 108358928 303391296 332610574 963856273 753231047 814443264 756584735 897213097 915939389 958350631 289710409 947597497 528117222 682261207 563896094 631454100 223559375 444181277 259888678 631128493 805916461 893388976 68974621 622649805 402586713 946862125 818602624 975836585 890786017 896038798 513169147 591441383 534380181 638639226 569760932 709094013 195142144 468435386 633169526 638881126 201979799 407465555 342707927 739191607 678376557 931182036 8902329 983655502 565896166 598557196 511522702 871476437 467284362 509289471 721649041 756065751 868581566 973217239 271940075 623053397 228969466 259013798 904900168 947633748 745322971 805957513 910861370 933274152 66620456 638461184 556053888 806510460 189593188 897532108 293137055 471894145 889195652 981825389 911325540 961248906 461992909 515636075 893493116 902749177 59596978 459133079 235431621 697318547 625456825 699277393 429847596 589943442 517035082 703671367 969631146 984826570 853195623 967983306 412524148 706789096 426150484 885208853 683238190 921427034 632637008 866806996 348376867 642950136 22550389 283197378 655642309 751092994 613491782 618984667 669408104 683130039 378229008 809362165 115089974 845734399 251462502 466659004 21319439 635516153 453237723 697383700 901197291 965181256 182975316 242590589 587003014 611177121 393365198 524059027 44006556 893849221 700360912 980256901 195344258 482569501 665344568 877477344 203877276 572271641 422403864 440986207 809630678 862794568 53639789 855209056 489744610 884615654 830923430 935962434 788215783 908959327 883457143 979663246 863950306 872550798 304379409 430929265 235102172 493908267 953653312 963578548 259328014 358376502 666668261 914757039 635827276 898494566 978012588 986165142 652324898 873819263 13394332 544829013 839099666 933697496 166813649 643423329 533082582 721490560 857405852 943001033 935324305 989363747 650083507 938970460 389347550 989440792 543034301 934640951 293121020 321272336 438693491 458519829 989014428 993690686 438198977 724060019 762857878 910118771 539458731 977476550 617447195 897869629 270796230 603204199 644944250 957442180 672721401 716817872 495958148 832841194 670224249 837592256 85512434 341788342 747389972 924428327 200690871 854031096 881211020 998443100 566407309 653209678 95470883 487934497 769618271 912494439 277577126 937657925 369531806 974440501 641295808 708489432 60732522 709384902 306743414 603002315 774824958 990743747 882801263 978946873 241718247 539239217 902237509 931547608 278635016 598277184 408835217 454242281 45233660 384320849 995580250 996104806 38924055 190670988 604096626 754369116 56522530 793005012 976398295 995104089 597806176 678973229 141422802 326052156 499410063 549480119 722021362 874989302 617169475 806376851 898158913 909229546 909327327 989825555 825263295 861621608 343253115 348787137 883693936 888112873 492130189 547506175 203134236 421353114 643077407 774482418 598302154 807510026 518523704 996763592 853154921 874917196 596619725 750832217 584341632 815117908 990260239 994394911 100327731 143571007 470257495 598228555 918208847 974390694 712894761 841806843 858150356 963914878 172619833 308324388 533352528 905737760 317638208 517348214 674578097 964719157 23164447 447332805 215507823 448343823 683850729 861420626 383033028 418974531 247660461 384528733 168965151 628471293 188731930 373545413 567876974 592371391 718768003 931168683 493750917 626847240 321488544 472114161 815016597 923511067 68227799 462470103 53630371 122363575 857583917 947396456 469911507 822089868 59639657 949814692 904245541 934123582 254117915 517616007 761728694 925720017 973252024 987086313 728284271 956783909 345663609 668118062 939855351 976684219 194110634 367433077 584832290 856379269 558474947 751899568 771392976 942900729 440224072 869088174 463776376 539039236 829217321 856775762 356816824 550320862 465937325 634255788 557708511 862485239 26714532 922933619 57122074 341978918 731901110 733784681 18659512 761039987 322781750 400150598 160479738 310459926 900626616 913984887 299533638 433843001 794483966 859596159 644727540 768233164 553557925 609113429 750250817 897344437 595608335 976771387 103318947 518386916 160948359 933108209 406784605 898755423 964507216 973826869 926736841 959968411 466962975 755520363 634527584 870810623 67005461 946563541 768893564 974051291 681031501 882125999 755463931 952592845 894574440 962501332 85105961 300007660 76518196 530511329 644384433 860078037 338972374 718673746 195155973 490287390 390850496 699993639 406312857 683786549 76941499 596632810 900411632 998561028 75409374 139225096 270718394 457220183 798233819 971065267 145445122 986252081 821089278 883381003 63049183 651479399 860473178 931911762 345079499 520246373 357196628 582356492 612902388 627097218 748892065 875604768 817976465 966825986 760771826 971570948 912849901 997348798 152384451 920546911 604893814 860541699 319481311 470674875 524145458 862117077 276643671 450180244 497437345 771744842 357757346 690717161 886120384 975168478 234412667 508409698 210451085 730600347 834137530 962146391 70116395 535785053 107389845 864752540 895680871 939630795 958040056 987615538 645916802 922951425 321695161 394188774 853440796 857277497 656108712 810093846 715014781 847806400 202015682 917871211 720117022 916431154 115432952 824520906 100187423 464625348 223156349 559270411 265048720 286253092 357736233 643493310 241590719 850013158 183253144 643747457 634777243 696280762 816626692 850103555 609636192 649712476 766219605 941387536 871535323 874825049 718105575 931749033 229283040 623328433 327092922 679257956 278447900 658032837 333230867 763309093 100376955 930074414 346883764 884408197 354014249 655990115 479279626 968009030 278435668 340140997 598557674 974810989 66316650 974052168 681070795 820815695 56558020 896357474 69957321 979477198 7617208 188436324 758339884 768941742 766480207 989966186 576129530 960501910 31897328 710089718 71843546 410008519 495578816 668326695 810597586 990433604 729698714 830843434 680070246 867208232 111374647 157550121 880610780 988717685 537235322 629951733 764954172 936885187 172080091 993578901 87761723 707586358 560715893 917376496 29461582 451786099 996065368 998211329 607129847 712402768 726720535 846007996 592196324 841851640 109803592 140009200 54005972 866384102 655924169 820259771 864275501 966859426 30395733 30591711 641571015 815097921 335615962 910428991 468497178 809448410 765562584 837393953 473694994 474417241 710419911 987954160 798693801 836370313 321609289 323371131 657953615 673187060 547516758 630087605 399845391 410353231 627911150 834515986 25790510 357253140 645574240 722231164 634406080 649396920 772954864 936814768 521149746 769773476 307008263 802333048 507450020 508102323 908747866 940256365 389608654 863446467 23259847 272629861 327708328 488038255 309312210 962459232 113684859 338919446 719948619 856318856 654795908 879228715 866315459 962051124 292994128 585194250 33199209 296902356 492498684 726204861 610363431 682271609 68430589 157953996 615442904 868159206 388398921 552469949 341976577 816778718 926579575 947076174 851332335 931382015 971926485 974302742 506605850 592991405 909838905 981716270 327580499 981054513 867537777 950597924 814900895 856422947 130703808 218239078 865647768 895716955 127592012 761002389 173662552 626652144 133151397 590072724 106148278 999319316 919101841 932245582 807082914 899379779 671786753 987090863 883677644 999824494 474427148 589525192 341868047 776754368 359205037 697851254 32985453 829808391 301175438 896873453 708158528 738923292 853118596 995279359 252629299 624687104 303881355 568367111 588299528 981429967 524706172 665446923 397470265 568452985 816791678 988828371 565511707 705601448 663254783 697802096 953770112 964306156 440625547 869007806 591402946 859365944 559375251 669828392 901490813 977933916 868948159 972565914 383611264 677599961 995590277 995662888 269221126 989099083 677342974 723283323 929515770 939596276 249233744 689879374 923267366 931694221 545612591 736976245 510569151 520231649 425077679 807150642 226197851 353482189 906364527 943298177 812969663 986869201 461461905 733284070 902542862 970044644 412146738 740088982 55622834 661722787 901771037 973908163 56871140 469162376 944811465 998360144 938536931 956302936 371705832 605789321 76878520 215033172 161544247 207056947 627949581 824488045 138569652 965156611 804576598 896162962 783305742 984633195 929891669 959391713 829547784 845023567 798610981 981739013 46511249 324965499 497449421 614394961 661899453 702123315 28007990 99537713 924085646 989748370 141057135 747783165 900572797 907458316 854750692 977441750 837548371 962650320 144860005 557430019 648451057 993087131 627586391 679406943 856049867 954649174 792592904 881365978 26803565 71347745 422304672 855297717 455231939 808457709 961870098 982598991 138400303 996497071 884364869 922082533 590950595 864247468 867352271 958492162 342516415 656783155 751103154 983684357 253976192 862979697 322202232 977521437 254281253 900254068 56732318 887506567 894313979 978848362 754618222 928597693 931022191 985828107 175580759 545533352 284255862 646674851 726680895 820471641 486485273 795158830 946058398 986057124 161046364 596047262 823533915 924561510 412491234 953747991 477284732 734226051 404957065 580830511 375324662 886145029 151970088 630802155 881198283 921194145 530640244 567237577 116136296 543794089 947228838 952154586 952941185 967110589 289890156 779681570 705179433 727402863 363252629 364381422 747597057 972259141 582202114 727350719 520524810 994835598 343168721 470505683 233141290 894199548 532913282 617852952 770429738 830599373 896614458 934198122 39699573 303840497 732684918 953266239 827762856 879975593 653549379 777120835 177882773 588834339 479086633 661788075 293992680 305388334 881073407 906043149 988056047 994282172 729628723 818734714 298289858 563856438 232825141 655916722 761421657 943047885 370213096 664419182 708548819 952513874 631722367 802607216 185406504 650754319 86647225 579362830 566282774 917488231 76012780 472829208 567706408 653242424 662192640 712621601 787769574 818028603 717180026 960553693 90393609 94148927 897512672 903849941 594912605 884346764 908464508 978647020 563928466 863907611 126744160 845465095 342192941 817448366 275892799 951573543 460078861 566332553 211491323 278726496 119207013 182894992 67173924 351115472 561988971 875603251 661698104 764385353 962567540 968607920 238374389 877171014 246046594 940976209 887170797 897290641 5212481 192069858 620244771 777015145 1858985 311372538 303149243 679450393 305281160 887730201 629079340 631430502 165395995 657081044 212690006 472102972 564725776 845082578 362047730 810331508 185532834 988188427 983292212 984329862 888217152 949261653 745151001 979936386 370040753 916344151 12580545 794413041 333540623 849360860 194548988 722389473 757187611 842426207 927113469 941533585 504703697 597278978 617054069 994471872 82288713 338914414 628339847 669514312 573104621 590953169 716116752 840512696 450013357 705639881 855014573 976363444 913705790 998491323 348857342 532268627 850558323 939072046 525165694 860305332 621626570 857258147 916609067 956674211 118518363 611010633 897713797 949573124 920349238 961800904 180356735 380621287 14084436 589480021 459954502 548855274 635735302 767062068 669577626 932128721 666903164 843305539 361851642 606552889 37154820 189064511 449107454 643274498 44017813 151137827 282973451 772064891 41676619 818217076 342335219 442322279 798643240 988643992 110545823 498007479 540623101 772220698 579083383 824471076 124857261 794733716 330215608 524941126 488584028 761197069 881468379 892233301 205978588 841150461 657740568 851588885 694382438 851831681 295768833 332754714 452078467 817103252 805284626 977467142 869836043 910431322 270424034 333711462 555228413 684659010 705503487 888929913 467359195 840865417 234859791 375623088 641418904 731814891 157373757 752592778 105429801 319112024 303186951 912911013 444367161 717994224 454238824 459348195 189496604 218614159 76785857 367164331 801123735 906442705 256076010 868487907 13303275 479611288 742813415 903078145 702507083 920834705 569187202 748590430 977125465 986402424 619105800 667822046 908239647 957190625 603007131 948491782 525939445 676908890 484054727 553355341 269160353 451753748 490724273 587693545 709980703 986532022 93586831 975839681 379592332 407135761 787900747 895681182 898132837 988569079 500669184 525508759 567637527 742461048 393166142 458008000 328371672 354889883 137137469 281977026 732045867 846694821 980476391 987642867 372875330 816730532 275966872 423528417 721730151 966258030 653574657 930441956 725455534 910741693 687045722 849063207 95398091 894964803 520966433 861360497 347841012 861098846 674471866 981314779 117758872 229222781 148203624 447937096 151967931 859084118 213187637 684977446 987128901 989142579 848370240 909991932 399335592 718412878 140223526 887071991 592635233 675367503 619461680 706014709 380996468 417952851 544297484 652738214 678786184 848530735 311704800 753735853 595285334 888956349 476196281 949170606 207376201 382760212 368295343 950973360 29321771 507602605 204945277 669796849 768196815 968937585 306625503 823021384 564896886 649267853 625897060 872031691 611686133 826067421 444730753 554186766 443486543 754332536 745295380 922668840 436638283 995877971 25197672 275129151 883174286 965325101 240049180 290921993 751308577 904448747 913884699 947759985 600328776 726254210 850607477 924097348 775413330 935757509 760632339 929682238 642230429 923879785 627910984 750698239 499312344 514598185 611465908 961016647 482825881 863388391 980451044 992001805 479545358 863139072 646019850 822429906 206194163 381331808 210171000 532466135 629582001 959062273 636796003 793457942 339944654 626476208 54136333 227500981 374535798 667405116 908198745 994033186 742869873 956802693 802990826 894421592 287613660 512591511 45673566 802705649 217369896 419313145 329567941 381717208 696332800 771087938 786822873 998088405 193902254 391285592 180241604 636043211 823136382 837416158 34839811 193679565 281828906 467193883 639712030 786778821 1977392 695661605 346943590 526669369 377916244 915942622 845879029 914171917 282069371 462155842 93660728 327844928 324721676 728921707 995165222 998001394 290488549 788220095 732796391 963573273 434103875 507112464 582634762 903549242 800507039 934276132 841567998 923112593 604603923 918102324 134698440 979630370 396861316 873174107 932038618 956207700 699986422 888809192 673252489 915734033 185742699 414705378 242608717 333181033 404453922 702971616 787540657 888127434 466272190 924813357 969110516 987214067 54609329 295510693 841674202 986806084 652025798 853508699 517350959 710035426 919884075 991825747 718940663 833479504 912148265 966266782 837919169 966481229 233366570 493556573 383907928 592863890 462606472 944904832 667825862 756596604 428498037 670714515 501293677 865046950 698682866 714771088 398725640 717556085 679766703 823604550 328948768 800224682 117725157 546604860 111488739 844801207 612939293 802953324 321435024 946664093 777030064 862149456 2546880 280434004 150188352 876456673 832505935 986030350 57356510 772793332 922791950 950078382 778032898 972308950 115127879 582711943 773595060 972218603 113936817 999199397 434371922 541633783 186104182 960147481 539800852 906907372 505997171 865138211 973585183 977203821 543621407 774844092 847908469 970701854 510678095 931849075 816320613 917096313 136700384 190015723 675176090 918331518 88423428 128512087 424214011 888736150 13998071 386668566 894719139 931032688 904214408 980730981 423577213 632411745 773360166 776776397 231993875 725452335 3501708 55598522 312281185 908865875 746742584 899378473 432075857 492826870 778294546 871735612 343332212 850589915 24751414 293910968 951795959 967348840 562359375 567058005 251462800 953322467 287897714 968908832 628875297 681548225 915194885 921013828 187818140 694042106 580767629 771777104 967993028 975716408 63555862 488092511 50608385 884250457 636795831 796125026 412421962 729872180 361290630 945250685 163320631 498008930 952916051 953134999 401691551 701253126 91971230 695131054 810008314 999496418 364754002 882055284 535549587 696344017 903312740 944819898 648659776 712491880 653206552 814218651 995366748 996950694 449104463 830417316 168501968 379710959 333441466 892605442 685954972 819900659 348993759 463020801 484373470 975702603 460593299 979063431 312411912 724345429 39404513 50251419 997056622 997440671 519375948 694346665 332115024 809901862 457111998 550861725 83561553 870885206 983244338 997803698 30213251 760101679 185772709 294860411 185055128 246573417 325809825 819270942 648973614 829018000 902082924 938691982 79204864 783759610 462368778 785273903 89256352 183420328 672316724 834375162 236085933 465178265 53124940 472741555 381690597 543826633 486838878 607709185 425966343 541616311 181301398 446468870 237013811 268715994 625322033 843311467 146572027 807160316 220502301 450963704 777461140 930101758 799914717 968157478 795442002 930735944 886916696 992761421 243176175 901989562 440108714 855169442 982864920 991443783 923020249 933380750 174363302 858497622 967981399 985590763 360269356 523404845 518360666 672985025 208485334 235667489 258307885 679432701 11320499 195006153 235060286 993178603 723219578 966586849 238122835 750273693 523908004 669598487 826120490 929083393 389954363 889104094 920658659 951022228 333967743 810344268 574771438 653203407 136957902 173187260 23042772 842469355 453331274 884977087 602042132 823649241 866619841 880441125 143226537 969784861 522247757 806588346 406033319 524240348 370437044 602487936 337828150 573519311 500055431 706090596 700186188 924349341 698782933 737444261 213264879 709552625 666385343 904594487 951719724 990262108 476079354 507721580 162322576 939865276 372397102 643857725 746061000 957269802 430302124 564137764 323705112 430565803 630859894 777345648 124158329 522623038 883121118 942858981 84076712 156219317 170017396 894642239 522143283 804012819 723836785 780164752 562365365 838453977 747562740 896309614 468353666 610703651 751476566 809961574 296784170 408746738 508805215 922174582 45032402 418135646 620749452 833562525 187417113 409469060 341032409 628428373 347499270 647977672 995539844 997942777 3082596 451890811 285136703 831216266 472328376 835683663 728289398 809064185 583216186 596209771 59978149 82886625 732189107 828447199 607172439 714678434 262905419 738446849 365553373 998827317 933104937 946828796 542970706 966347768 536665484 555144243 418967571 649617901 233534714 958122539 772233431 814440988 922832529 929146727 351011962 598583385 597827474 744339311 541892511 899738088 747577094 948752414 334769928 703708082 39624462 648307470 484411261 906602442 953640898 984416198 2190082 907167900 55603152 826850490 468946826 589593629 379268823 620953417 36273830 797732141 993092442 999543370 136492183 216034091 999551579 999707726 220468871 764133651 138537518 250586997 124042467 528633011 216839222 502291449 787933712 915587236 458160938 790176214 408264821 971981713 225841484 561475466 86566011 131924237 621299443 820505353 467865894 600273062 892970254 928088016 542814583 787265810 333046314 347652338 734580374 913625366 298297406 996340129 66370735 873614355 18097597 234824565 935284542 987876210 778447995 955371838 130995637 836195921 168298251 508855130 385029355 600343754 626980190 802443297 692214216 865973857 49452495 282728162 229766151 657015549 97305274 763088395 336149701 383273393 632685672 740220200 777986653 793173718 972766518 973553036 494229615 516576505 507532894 904456099 741083804 985775721 100298969 912757620 936820341 990169426 712383854 806751448 65327233 759504161 354068687 431359961 244164963 530264164 422757887 481841732 242957704 821995371 895242386 931885081 946787509 952231053 952412846 971533020 610871648 946637451 876213600 922325176 139130010 997172805 641771271 926071267 106578882 912463018 367934665 433224191 373286542 880956525 899140614 974278920 339374171 559812545 867589721 905470318 31012459 327633302 621127637 907823721 786229300 914043370 940887133 962725925 903323347 955412754 734292067 994901363 786321844 802179667 460631668 908547920 118724716 576549687 205460889 908248789 636545018 865279196 661709580 675915296 181020479 202397479 624288231 770718049 859933365 893578585 19140901 452349612 152650470 352668920 737684088 819732495 457370892 698267369 450671245 542984324 803315690 962398567 793147432 824683730 443234016 759657981 132949845 503464440 503311252 697845925 468199105 604126399 32757718 608578515 634208973 796495069 273988805 518413107 441795286 822843510 702950594 976437417 83868266 974435735 505721801 690908739 570385461 613297843 138901383 579512758 838147004 941662826 455568829 517392498 392601716 480912222 949005528 963640274 883998792 918002569 278738830 888251584 426087771 757467144 353385470 982564863 349267785 405387843 862983610 882652602 476348999 949950603 637564409 723851438 76639439 240816411 613092473 766751789 266732206 681056478 955703796 986468999 244722317 523501530 864788255 979691000 639206613 731145963 865314024 983227603 265172717 323326003 562421289 747837237 685221678 713191601 2743167 315749149 951602442 974495522 476814381 529935897 904378671 960183066 924214400 954503670 122807850 747845487 119127159 847918898 334280905 764871725 779294956 852416597 163255009 747983247 626755089 789093908 252845278 771752057 489598653 511895793 613276673 941313868 934634899 935460675 737378148 975062284 531239110 764367194 714949511 746125781 488934666 628020552 894100753 929416905 763092690 774550945 272096990 463106538 257395001 745404884 660944764 667562872 131638073 145983413 390447470 711039272 242516061 477649832 793246299 830908023 522056609 731543546 99055494 546853705 977457460 994096413 355315844 837915116 678045743 812847241 853461656 853926725 992391584 993360396 677998306 727253772 324432083 709379218 240732442 884681877 506913705 993307658 226104299 965354743 381399334 535389256 176177068 428889341 816323608 940482770 899916668 900495640 166724310 783190093 455473977 950176812 971655502 984926121 375302165 909540481 211150635 286974584 690619890 729735342 124955554 722156143 520468934 768560910 766228761 927355193 630025317 633782640 938955428 988452006 5159891 71939030 552739049 772100575 608544294 821204741 880632665 957156536 250095181 749226927 491434509 901576902 757864017 901355028 237460656 547564288 487827583 750015855 928412237 981090920 633288409 684515664 33905631 973430407 567759069 653975420 82425147 513813863 449698003 481585933 339676155 516516752 275563189 312384688 851457 961853735 173717497 405850158 224304344 258022426 521583969 971093110 977129637 991825371 735668668 737421744 600071007 856325589 985756283 986646227 542719643 657816797 142572047 749628884 772082805 878501273 605133228 799918419 319262456 986798532 523531898 664903401 420806638 742597317 586724170 793828995 81093663 544157270 161934175 546798019 523756188 952201545 59377262 586203247 803479485 901858475 621233751 621829666 657741742 800032956 427207235 704674460 305804497 405726493 482653665 506120023 592455132 673320184 461154761 952187452 761481035 813279926 72168305 529248425 630006052 768404661 472320083 621385700 486548410 893747773 813529722 954425257 392735350 860428978 399865725 832187970 121989275 837521414 93753937 485379957 521291299 950166157 516316614 900504141 729078420 793445713 239895672 839342492 554396697 964302747 998535356 998545784 751134924 830866227 644552986 913794360 7182405 132581276 329506694 422865150 719795514 995700284 456450104 995090920 291804261 899728643 41822148 255531395 177523246 574236811 755685559 979152402 563391480 993239998 722133021 771729694 803531703 891251736 119820090 506600290 659790261 987968679 41737426 352973398 76685738 618720464 636760747 727391395 273640906 895473240 66211047 598864799 177105963 385379761 392453025 721909992 515994596 898785346 962946913 974471962 931709577 948789684 701571854 809390189 832088417 844808018 538161627 871584121 436888038 918780231 862752863 952056469 294901547 900083162 656138173 821531585 10123459 111665454 585941375 939974728 559240913 676077971 641863174 710212821 206141648 427713160 364661949 842348897 754388571 865784388 729104690 919600263 203099686 491691645 953779454 977673902 35164440 236818616 494899543 883363664 447661829 533207797 183981415 896540833 842989076 888022861 59617493 402138836 528497426 657451007 657813035 960199863 791997406 981195554 122727200 356123607 993648513 995033947 196834542 393096831 602249255 861766102 898632878 905129991 789273984 948486214 149088394 388874228 134120671 720138175 617905465 629110176 980999666 996683095 993505023 999530280 244332972 619790260 569517275 911098608 594477867 869136828 766492906 847351674 880895904 891146938 131253626 944642348 396908568 458269741 387570033 712925061 955999201 993759461 820841773 917508198 165786997 484120654 201996167 259755852 931350844 947951925 821882435 960644830 705440732 747656538 945844198 965310544 87092797 94331121 318253341 681670335 764150440 845875671 373857910 536597935 784078666 862817226 894330603 923044857 683105017 930934376 280903734 764805948 173524920 351616432 343515169 747938934 209447121 477099986 572589272 848503529 395286049 641941884 205010695 488925355 902439938 971203377 274990761 584037042 479913543 990004885 24224738 327115729 363344928 815047567 43034500 179117396 156243509 919049254 197345401 545911385 883261448 885735597 984794911 989820644 57808459 68411423 652887825 880956158 760011022 813465998 394476473 470870201 430756055 458533891 831995656 986251204 657239507 738966909 828054011 839905327 361094451 749986638 736627050 747008294 200581255 761926229 547588621 999344222 751261419 900355346 961943335 983021010 176896482 882323690 687339392 789542509 286311361 807216344 362309970 370235866 928345071 957055644 374983743 646472320 491172682 864095988 730964791 865978776 602316090 656174240 946496875 972791212 718269174 842169519 791008734 814606954 29635056 120404100 543932563 558167435 493207267 750676366 422362312 860442620 156386387 415911101 401077366 866340312 625141748 777754460 302772319 912875438 365682808 518100502 426389613 861979966 158029973 267432930 256963680 651753098 206743846 612823246 154563716 349690715 901523238 943311920 718858486 730369683 1477549 152060621 147979554 532523536 54919287 269955480 29894628 425620086 171987875 527792360 868098015 915523349 421319920 696898657 791959818 926451123 926613484 948616615 976522018 981106066 344714287 534621875 34775184 307316342 16112415 932185069 349460338 797203006 846980087 930157638 989246381 999442202 332769950 374763486 725176089 950422479 763511563 933139111 447951483 939715801 825722228 853318856 290238700 694140654 540915653 922867396 896067818 930559794 223047641 988505411 234764135 628289134 269838521 702404671 805555785 863632867 103655536 295749845 447936072 641383671 209946716 822492476 779796460 943885114 440104724 993319416 984429435 997769628 711724176 902296318 491536042 534559177 518884145 686257253 818906593 989011570 867226484 900773313 500043031 696497479 269053666 376195502 639397033 714013896 183731211 607931339 228435589 343845542 226773924 450393818 758747246 979884886 94490502 963702300 767735198 789683494 555039542 643205962 112976518 347145067 59098644 783638885 601216882 617510520 4000290 424578526 6840898 66701058 33374909 119055876 978430676 986258788 686787567 817900534 110613616 953646055 900577155 901569170 742931110 778480750 736181209 964274786 439364222 820587764 75858865 655576095 741449063 960812474 909231596 926731997 984533918 998119214 298389954 426128784 699689788 783495798 756243908 906964814 501413880 788970671 247665974 821891910 441751313 956736637 339484897 652179430 80575188 425144424 304456812 681231778 241877170 682217394 934212546 990531572 104282139 268882818 590389751 749505013 187295574 451245990 631001231 672345993 727035633 935674666 576078445 891219934 256804131 422030782 668788643 736594760 16014225 297708600 629505938 683818748 352017714 562111666 571537923 988113313 188027684 540510570 998404045 999513918 112865943 747051769 235553872 656604076 909196059 909919145 760350779 771847277 245293451 346591279 899423539 981870161 72353621 371739612 319104326 519636008 450616836 667320217 11836969 207043033 104750270 405266694 427595154 486885203 718775530 964281068 765442956 777254806 429135102 664528542 276627427 390735741 621090534 695502049 902136527 989472105 511237686 829092666 281878806 787303203 319036311 683997238 795502533 805242010 912730737 920222343 489237898 915457544 662514797 735132209 800783524 973114820 308440360 602379914 260650774 502818835 419563837 436091235 608332452 707806356 400917266 811907183 875043546 966466319 299989188 883161193 95661593 253815214 782106774 931813832 923143450 971604583 120721955 940753629 46530653 197272853 640207723 677989664 747830574 932889173 964501127 987437280 904953410 905420767 44290149 61760087 629282035 755350605 868187850 923365299 862918704 953379614 137981594 777605171 578383908 684695604 802913472 999684184 302319571 714214904 203291149 703400538 389970179 670191896 380926614 625293541 800007840 929353012 621516029 968991277 709774408 969783258 558563855 970132178 374329800 673140523 48915768 479432883 678505008 777881787 333873251 636093356 783248427 896385640 939449049 999940986 49884413 211781813 622693261 856927863 514282753 905221464 884365556 921215743 717172508 730177215 184474802 974585212 946275525 978091810 973031961 988056133 516028621 852868285 65920011 111020180 761936763 904169939 382533270 707823455 791831080 979170094 71280560 458577046 133112527 311513768 501231653 816174579 130847755 390934606 880522560 920953016 602320025 933356039 854079053 954616327 315754983 756573240 768392797 974124012 717374692 835473143 383155540 484924194 932148 358848989 322541920 424205617 215520797 386707858 683116177 832186748 985889168 993330854 626759405 981681119 729410265 799277225 779664436 812124329 260052450 937192818 823280770 958413271 315926223 662304738 816458770 875506271 456671312 963706421 193034723 730907683 255460500 260173222 137228294 322560848 311547156 346477594 22118158 499219097 158770236 890726223 661020558 674638748 403822557 723365843 539825119 833629463 980311314 982092782 914956169 980824536 168633833 503700071 30768965 369465083 955220353 983904288 845716634 998105810 884320484 957850198 671700251 841903273 488110180 878252240 994117177 999363933 96553122 434688345 502889306 620432551 546890559 970419397 465650996 812286729 175156669 422905557 300674947 657805811 932055826 970740638 409149833 610568196 312508223 773130267 976804220 978141774 125779171 655428763 19542902 714819624 354229509 389888749 757543575 885551608 365403733 445515070 550633230 966799705 649435343 690361162 847117137 904283513 34558005 138651052 3149514 624382845 28710901 615137814 117776966 729227825 860898750 998396252 621944017 717082723 737247233 749241521 797341370 879060149 797019787 893298160 719146997 848101088 783310703 910285487 916317703 970066571 85267493 675919307 593324009 867507262 127566002 186657407 252996195 931059385 966496890 967170555 423887542 644675253 171988915 412586061 404115654 562031272 712144275 986680366 925316727 986415031 703509837 970196649 971535738 973532816 524345925 827472978 39588354 452121379 865417209 998066289 845150171 850351326 410363329 862335513 155194556 514670529 554651028 877189127 385221713 964242337 461495669 695722820 683744579 764225879 564008062 670794697 630508832 872695688 910083730 959025018 681253926 991370976 84967407 237304859 379182010 558218078 945942239 981922015 812607288 912014604 593843041 850261262 990991520 993548544 901095494 938250956 653785871 908221234 741023753 768100211 703077618 879359659 432218758 804571323 640098479 716070216 216042357 286526678 614132801 728442025 152589476 805364899 99021514 615909933 233703293 297546157 59690084 470454852 713063269 987083199 426860911 874194215 969368573 990198236 516257339 837968320 505196492 725876328 683130250 966948734 608240621 624818532 583029700 795912085 622826152 938448117 146029682 498183775 482719552 695114213 491777003 854069380 227049105 985988002 379121674 959807012 383042585 627637529 833567783 886757400 248385839 782544242 512414982 973981351 891812021 893356629 329046251 631419431 955151530 978910088 275076825 285189030 524989694 889599337 635323692 737936662 952081990 956964131 125020511 527742936 639399017 858242496 740679955 930841680 72783096 592704497 317417700 382735719 154065775 161440262 894758151 943018617 321619791 871895292 512148076 576950438 333358929 662846317 730644645 941716155 291189821 980282114 399192613 522139847 190432034 550064774 90577872 154983829 144914186 919487757 252850510 488815165 559282722 670610879 156829919 870462542 781883569 987067715 79627543 420207581 760258781 871984874 201435982 869761874 110510565 827973958 834398771 902501976 718957970 956022395 2036594 185688943 360184467 874269726 930327299 975926098 700230486 820888961 39331561 751820352 805756693 918190531 230474419 413382747 85206756 851402346 845144977 995359948 137040357 194697335 925452260 932996264 654825293 743159342 91053850 833984248 214006820 378456363 591811435 776054743 667925429 701059170 745254326 880254089 439039356 595541109 129149815 223562352 834869065 853583656 142581841 150866693 248257323 413851825 822424000 953347721 358016367 688445781 31721719 610073663 873804257 921098568 825932689 882078732 279394070 547326239 302394933 499707993 456166500 525382708 675251482 861307657 980333530 984443562 188099609 602312706 483321529 644017617 267388599 658734953 89575569 647240513 178879375 747621428 739972914 797596548 81190407 949780987 144664693 777801389 377434096 491157349 297448139 766616863 838628410 889364423 553558180 964469381 647277106 809870846 643757111 939757559 799204921 917690455 824773621 908462733 340350859 453513299 594712591 942054401 638012746 995858187 320073408 339600100 5928440 573720893 975786381 997738577 921651359 954424373 188052321 797782229 999300816 999306508 256493612 953899655 386550465 807192298 525278876 882571425 388693426 714708621 926440153 986966746 382013992 993798204 102281229 621988434 551583571 657796821 664806688 796633712 977605811 992361156 102789716 489285165 297993573 638196587 893751730 975052537 303342761 330665229 589956104 839543316 496212291 987866910 957092287 994356876 794752480 979141673 11266086 889166203 697669934 815570664 812310452 867389186 295475533 774950767 597127226 804095302 375064052 468859792 896293246 916981539 622148215 777204464 711667122 995001739 166393366 874861470 209191095 546387896 369390102 402751110 838029710 935841710 846106645 966769248 867666091 940763886 886975151 892008307 958406993 966977291 476567088 593975412 744294172 938137984 510134215 532894337 40020817 886877034 494441881 585999400 434067525 505415339 591884707 646797455 676063939 878820477 126211319 176968591 839111228 863456163 555794767 915579972 274231902 451381213 283041376 289693780 725344779 941696294 302517467 759029399 640998988 838622363 395101671 569517845 973336557 985248551 432609976 499643491 140528297 916663407 599210705 751254764 870508303 998275714 406508074 937687356 443095346 642138650 604554844 808360098 425453850 932622799 497000925 695457763 960574069 996452315 785621508 794154104 188620142 832125375 660031396 879741930 971615483 988254790 208776475 651395390 561694552 750155163 333133879 968236373 727177545 978389995 765595637 994603249 298710753 646653078 162065633 322968627 746768080 840092615 675673736 796642250 379061883 757980090 907375975 954946810 706311058 780724377 784491150 974269512 565854702 849291949 773431592 975918925 888565268 981930791 528174321 900974853 812566800 959821918 627793943 787970436 858559603 877250601 155226473 418304882 274634658 519123653 393473294 510639645 95611959 392690121 9481503 747031562 865159145 899670687 437520068 466429591 647253619 784215982 455532550 843577796 839662258 996717624 391173070 893194578 950633183 974821076 850990734 927375215 705327130 740438258 491393001 606485790 349651472 914161920 290852735 588431382 561251537 866286156 426490090 794348812 589102967 724904968 857952670 982270990 30980467 273690417 598997390 882878651 287009447 735328101 77298751 318079425 755963874 942211444 348026088 879750381 708651984 734333800 740513467 999407357 218321761 869267374 872545828 880876013 563965145 761047125 184973105 753101295 632273277 807292266 873704139 901499044 65906692 303543173 159939585 464195404 896480312 979004481 708504657 907122864 43577309 52647931 771770823 872920673 854036610 959840030 315440578 719433912 973015653 975665784 771783660 842780350 138665732 537673512 13203189 103580792 896643032 904005161 236638283 359151224 865365938 929251650 815465069 940193483 952469257 962002402 953471417 965153653 481556733 688160593 660514431 858193481 111527323 716899621 407794348 882010349 38695964 837033249 240932143 454847167 255867767 300033241 20370984 870851245 844759320 916913441 82155802 259362365 769563167 815748505 109529155 529765746 666683906 911432535 235623400 660131492 116074484 496030147 480312486 549739799 846019366 902326705 98289088 999766816 967076826 991537372 352414179 592237527 839380988 870410428 887911289 971328071 821210517 830742706 549780585 975177862 685119073 921477369 908659105 984322783 911150194 964056055 704518235 764750183 426808361 907074807 736040816 791832191 171882881 633928524 811230143 827847153 864917537 964009007 351157716 745118209 296327380 951858634 746407052 758260716 501916006 717418621 284913887 788747208 866359794 963431792 660951583 990392608 470912619 831992615 813881217 888827490 257070812 985281064 713436335 960728819 297214965 354810924 50033440 551599653 103794292 472409006 478102905 906512379 187238068 534588889 172938626 962399147 575107342 613370302 934266944 990359822 961317243 974308090 6874064 570866404 362695085 983689234 414676193 477346426 791528304 939933688 309039477 914297333 937515062 985444655 864763159 874500424 866495056 915212946 942916730 943484704 477153530 960544371 722812671 787044520 74937443 965448764 915793626 990674058 547538459 710401742 675075252 951188145 488103538 513366204 551398183 921341920 8395462 303391595 474789908 766377964 398057403 866333726 762079900 898261114 818252622 933999797 173755178 937578425 609210205 700138943 880353581 986417261 493370766 734565895 684271093 924239170 469115449 921334621 671703181 698542732 421292938 493234941 518373676 588572577 583383425 885825596 513557031 718929376 535127886 540284613 968551071 969579849 807607191 968552966 28985410 763369802 518036065 571221533 731042649 755715533 51758388 653880104 321190951 579482072 672169812 799311719 831319020 867600807 34392746 603715937 918676502 975863526 80424054 541166370 13106664 593910703 233801343 369208254 702203476 805580836 463181545 475281586 703673900 963623842 483395381 793827670 292456019 819216716 271017871 338307727 731435326 971963079 529395378 997364384 557394373 971529992 905706212 978482864 415274026 893570738 243829866 612763550 744503105 910742839 202890796 586250886 384203216 426955301 195212723 369885881 944526305 950293863 176256586 660271665 95951285 252475073 182401329 921288427 607188237 647320709 602558568 939427697 868972195 974901608 31619728 572259890 30639052 292080404 917601668 938930598 516189650 989127614 371537353 648388640 223900900 774751213 196003814 377899066 336208966 992174773 639250347 641353774 763782232 877472932 414688592 992868921 330039222 953617079 649504942 795029583 31354323 337530312 183942832 777478123 523422692 991773277 262375735 266736345 445102165 806041261 105691772 560533267 136368738 807088913 768265327 850801491 759499064 996667863 583093221 680050046 896108967 922359230 687008814 844218109 588140790 868442767 496724865 766386821 604004192 650477291 128287332 434743921 182940466 911852988 979404133 990289499 964937358 987719276 245682417 909740510 550030203 602181677 772143922 926988019 687494738 940491865 746367996 956074647 577787756 800888762 56247694 441101040 737232059 778858113 851682991 902156791 187954957 744658302 254664532 737273613 73476171 682811019 615253678 911857162 109402528 113522532 930596493 935668946 51282329 217479218 909955615 973045922 753896962 908800330 982588604 985009369 718043441 960003812 526796719 884440410 966295690 996632477 350995094 890773541 561454952 744577352 85844876 963869354 78820039 862503821 649396054 995205256 791011920 944003561 600827454 668932270 746114857 777108353 864814418 962896465 245098497 289422801 474316996 981191857 602561904 609612659 904072014 916120429 489393992 562970571 553919970 679136810 17366562 877475583 166322615 221386808 554578976 736483193 477748751 728152071 41488289 177854380 775078927 905534165 287128177 380752729 346484304 435808300 456109179 752981633 758408801 781028153 440569446 755837938 521295082 964284862 317791263 721033939 114395641 966885900 842554562 935046887 99308570 759959588 209294856 849625202 921601704 937198367 360556547 466583332 106118195 614616181 726392719 832978849 714146852 914795298 955866093 966580155 58035541 279090791 682209762 747539152 897236975 969150886 7786943 445842597 696186374 833837118 412276589 911286568 717557169 996974317 552688012 862722643 100949896 793609090 886869252 990504526 360068854 839145202 178772192 684976959 193263626 519215655 498571360 934720102 912748209 998098425 831030234 949814283 69336450 87699961 890943849 958593351 813001645 972196737 839632418 922171113 451767108 454708136 669040219 838858412 187852426 698191381 664066878 784032764 651036784 979934151 740303765 926985790 337549776 615901712 146593511 198628479 40967904 705198618 623147715 829241837 873439731 894530229 886946152 967137196 607151889 666212470 912859760 949755607 410257253 571200683 937685427 997791167 954583729 992415801 903227260 993798967 371783429 405499896 986063729 994813351 102048953 684164423 254742853 273892938 844929138 977744259 206754806 356360557 977652775 993993527 706843501 827453816 288303808 742884036 251903622 625255490 340963915 676006854 477752549 754393226 177724401 677342179 246575513 851070936 793766620 808268477 314143299 852394616 668370406 800345774 996278878 998403648 801238674 995826663 38160226 493747783 866680026 912233508 167765521 807620628 688465866 773811596 10038543 362965552 549819863 642391927 826977693 911566563 683987015 905152808 972876987 995530954 4518064 809245737 541187126 609047739 880303355 922128647 489090360 849050795 984528438 992213233 786685416 930132121 262006396 565733722 771045240 888620328 196266190 686155476 900245732 965778986 848377460 984611610 922291975 979395460 41366863 469605552 96821080 752923380 737962519 891924568 978533600 986690839 601467380 614752652 386062064 934708296 917758077 940968940 973666645 975000486 872945172 944500855 359657943 733206780 601496621 704902696 115490347 409530403 920076867 981528372 939782265 968965801 444210032 476124872 621967622 817756641 157523763 462042903 803115452 807854473 106173475 132158097 156561664 349864897 186756174 826042684 435979987 673445127 734675151 860175276 271177644 394123989 665183812 988673460 313891264 657047966 664092340 918701427 982347619 998740816 119809055 965308339 540617759 718295745 353648039 462140647 315635326 935651944 664145743 689831628 341801146 491586543 167525258 477433121 575567716 684668318 133734642 794057335 266746742 800266341 731774156 758031511 444735114 877219408 751542456 851022130 739806460 795235875 656784616 948306897 392681413 735383894 436000516 702469812 590995956 813022471 637534719 704479859 765198624 909554902 38055578 937504161 797518964 806213964 573873536 791261791 734809473 876086295 915512816 965708295 984467588 990985977 650306930 912788974 529761750 938983565 112498630 827592830 402287635 808199313 331589645 749406233 597728811 912294237 55320600 767968631 588367121 960216880 5179541 308745136 551181135 983601263 460537018 707157465 101770068 138422937 115563505 911134351 113784808 795936547 940023209 948684225 616812493 737536575 841801119 881395254 925040589 958654936 827738558 919205938 792587509 986577573 173218331 580351231 201743484 890175681 287006053 394924443 275320611 608861978 698856678 860391618 246307335 673830407 230837482 913550071 23211133 635724560 955120574 977511462 965539531 982374272 98173497 425720881 172513163 987174156 307210698 888948384 769188188 943136245 338039546 751508545 555329610 984534637 612718030 891964542 953927099 963100287 62862736 79546863 845749709 972706089 591635595 826266014 259024996 314399333 1053611 660645379 596612795 679943652 645463280 755829464 421685290 875691786 273163075 286146877 869082742 995764934 278294288 605377198 574843689 765400900 509831665 856905867 284878021 386100223 378559196 555001935 888272521 938058826 16640821 375788929 453509894 976498634 109993524 359137676 29749973 841802654 465699516 829310044 562956607 970037688 465012330 954733459 577972761 749195088 752863680 997525341 421447043 553249897 117062520 121912278 198327507 832929910 672752129 806669672 947444662 985907262 993337701 996485404 802906624 888062873 163443344 525277321 98864658 927214715 917675332 986844980 813185318 960529410 761680231 818752445 353065131 805104178 478426769 580967362 141961521 539888774 887944809 935974936 904839227 969525650 381255028 893217644 884540431 945259728 663363238 791073919 697107113 839446937 696963881 769605073 326057767 534630788 230045515 869018397 390835109 662007357 846185789 966225139 971567912 975482965 536267569 958959927 988649964 999913367 423099066 856679019 697858091 750120079 660137623 962094378 424485587 450618328 746505086 885826908 125808687 417821812 730918632 769566752 973990981 988529622 871617767 986366580 265092770 675345432 599525752 743963638 310329195 319650003 419346682 926854055 885727310 919491171 211809958 921458288 900978407 946417146 927525484 983714228 790826633 884712651 318863049 651211950 384055536 973636395 921463463 941626019 497983708 866401854 238045190 263076966 169566077 258267058 347815537 941905717 717933505 975170969 26875252 448613997 99102749 596220009 38253221 316764271 589388641 597587481 21355567 272681686 259560376 626826151 281849252 986419806 402469146 518403139 226807427 659286957 475317927 988785753 538125537 602934093 130317066 427934056 885784123 964715668 502942167 703350990 950789218 962614798 508530927 691094429 616057379 687874638 824759388 979763007 979755217 995294958 206857565 486151874 896770826 911708649 40802373 938509138 716316912 854745637 681700330 704255606 91246505 659157771 27334071 983413177 134493535 700000622 313585200 654711741 573974155 729889212 877329129 885742921 462948055 927636703 154338028 938412899 502633306 553435916 404160873 433094469 899295949 992863224 680584240 933194367 185555157 752354812 643908885 856206316 837815421 844131075 222865204 591944539 539974855 800375156 605525990 877487703 16994859 436481006 974178320 987516727 817902252 936601603 950847040 960991888 577822908 778486442 450006484 977127925 864809781 892599768 722692736 807010977 163241264 646978836 509979011 613157880 974480668 988193677 418876450 548795275 315649809 795206528 446436416 834680657 402896355 933153338 115652691 647318205 6273471 47645579 877806479 954299417 304598181 928107213 980402878 989121226 69686584 597131331 848046814 924668448 555624362 929209877 821127448 822199181 228968398 719709170 409480572 780156229 609363746 889947677 39450949 208345312 823126241 856035404 615259584 669574921 543705099 773105605 580886508 838044217 444294127 950305602 194385047 698365371 144220485 250951008 945611431 953707985 525325656 688265923 147118752 691062589 723150315 880286120 91447497 908643104 240881231 354987029 692483243 824700760 811026413 882288314 952946359 958257116 986802823 998709070 83553535 967998736 556060263 906990276 281019293 504909115 606914135 762747576 193556594 799233556 780719945 898963465 317206536 809124570 547721724 717277399 433800267 895744871 363815339 409139107 945269651 999499022 803692282 874036877 719242221 797585772 632447979 751490806 791677844 999199815 923557898 944054987 916954802 940848996 92977585 188111524 465558648 706863734 191818101 651585054 54957793 563893108 702412020 874948547 16577345 962775244 120419909 316897733 49228019 800343800 60438980 192383670 259807879 266596311 285927779 963964065 278942249 608275893 470424389 965827363 68067989 345939010 539635357 936714032 254523217 684453687 815840791 973307618 283112364 382043190 77819971 607751432 811488422 874154032 568239008 740643820 659554679 922137451 780701218 894311284 650134040 714078373 685133417 686816130 988557505 993109908 989620202 995726167 847328164 909358203 753541640 985089814 330852455 436614218 192654316 689795537 11782882 637777396 632973327 871146199 703501443 838575684 282136987 916509314 412162615 750063082 432997087 451299917 172756077 458059956 378881034 908225776 711949091 806421568 756269414 990873836 73840840 375813833 808784119 986751432 516282127 697644905 17346675 423413272 278891817 569067686 833058050 907737729 913131144 956982063 485539621 752557473 414760611 550904517 67117250 982755092 185208511 771120508 971821173 986943350 788993395 893164627 513118541 800702139 852414343 975780956 311856460 413624375 614655177 631444712 730006605 769551552 951751883 985541612 648709135 705390581 541213116 628571437 66797724 625127815 461784514 933222652 443742488 990585608 723674946 987976824 936397063 962278765 437867737 877995342 843397732 962297167 983304334 999991243 799174620 968374041 838836151 999118646 770146539 843017431 453936444 814213982 471557395 791309094 89942963 230993653 643475376 937648133 60872089 523252190 188844820 809010859 243161240 448166553 526435976 913001062 870728890 879107817 773092277 936685517 19195927 650553570 644052420 940336699 823181058 943756586 75522018 658781310 292438599 667004311 986635597 994282744 719723663 779245328 196091031 530566328 763565493 993042399 464756652 579814277 456923083 664797615 798227018 870278171 989491189 999087965 675346416 838257411 482687218 609921347 198739942 963983022 299734240 601835247 731400136 941751237 270342100 321523756 202314950 945526812 689677607 886521963 883672765 952423037 732398551 926200938 8073033 459726272 871409768 925219307 397299111 575672443 559025181 662591630 854123161 935864729 205595751 272159388 566639869 792978117 253910402 867715982 316650689 552539340 44656994 383240768 866631688 874514617 853115011 917825126 532336956 606619813 370015801 662800328 888811027 947292666 411528440 639212679 468428672 716589943 636461647 824696624 833854485 859211837 328809704 951649501 237140316 373915626 895872828 941317198 868602414 965508102 246628782 295277279 116272322 449317896 155211980 711026052 225057867 789645513 941946191 987688311 417893197 450956833 746290500 994168108 534444676 934485157 138689830 718495097 665460355 884153274 121357346 153112809 885670955 899062272 539013426 914270554 96731813 236441949 466251153 780825050 467193186 579628039 165893505 587975078 206824481 211334469 889390185 980595138 346791238 878165438 245374449 574661862 104698352 653365456 617627802 734125981 485419184 811122317 764044311 920909858 170551524 820442272 141379371 455165341 282527725 837213117 873988757 976451006 275445897 854650604 862962831 881052371 709123619 982642686 840291355 870602095 838673752 991645641 669042340 816432680 403971483 574345107 104372525 258322652 715888680 813688921 634745981 742973777 458962702 484343817 947176213 973882468 558869674 952767831 138341207 203071461 667013255 761664144 200386624 843338461 749825224 799667373 725533066 756727858 275986053 707832911 894245723 998442133 267738421 510923136 434198045 543220098 389864960 460620819 710343535 888623206 12809329 245292343 865364510 990825178 280326719 625216805 950712403 960829836 69052898 882528082 976638406 988378800 561247786 777678640 899195435 979589222 869600157 879902049 665098667 841794552 259306059 358582602 255363727 888522506 803035188 843801196 84966418 445327673 842817406 950800697 620811161 937503374 400974982 557332017 25986324 538283007 773499790 806777870 655814432 715070787 629416175 806404013 391190531 727319677 151574181 340015745 8506272 62756327 614315410 713108134 115796163 320863031 842362897 947811260 692815258 925904201 586137536 977202083 109361524 834561224 104286977 243087519 632763602 661272278 457536020 694038091 328012548 851445571 348593744 860258212 807575098 997328574 591920147 931939136 426413019 980691604 153111934 573526392 312738361 332668783 232083641 768726978 295997651 694174524 104174086 687360206 677188689 887131586 60854570 479561782 820281542 952539866 232938781 416889991 573189423 970736433 308108565 397131540 590608990 841070887 163151876 292620944 370924611 980040086 974420976 978477444 337239330 512444505 419237629 769124985 29018307 860590915 391908080 795053766 567214950 878529877 185227625 816787700 503912193 877463674 420841877 674093609 808863808 811399164 427405666 789530473 723541971 783739268 988207244 996727494 582038883 887428896 101978663 877208275 689043025 875316286 460631533 664331275 740883183 783429753 461180926 822925996 538338504 931011129 224437667 515483278 320913536 691218762 934012058 962424746 123778580 698021896 45243179 930800225 691486895 874231086 180362038 692032082 520172793 787620461 851987639 992359961 355700261 516305064 722073207 806469207 102209147 697622514 446759462 623727717 472946351 695041499 228700536 955188535 855687956 873882285 35307163 329872152 980352792 982769244 35494553 474363092 441854893 816928759 987228859 987660071 790418239 791247665 114372147 164367290 813549111 851560953 831093438 901529063 494353264 857141423 920550303 923464202 790524235 977209082 156135266 723668173 382570714 537901642 870991255 888653578 82416928 163033830 396370649 703542885 782832312 836077354 128357152 981281618 81572787 105579046 184566543 285008170 955153190 998816425 496390029 666682750 742274320 987586185 743911737 855208844 203795286 494506332 80412187 996287406 749870396 874734506 945767322 948301968 923789407 980328990 488130051 628877958 452848467 578145761 572515362 635468527 171273743 887169355 978053005 992571293 698946347 718193907 926331338 973779520 538911212 917362855 452829201 656345037 748402002 798605123 80744195 103850305 741671807 752685920 940074549 964841126 565181658 896738606 709725881 919498608 661956563 731657641 821784543 843626335 623763113 924951872 959514388 980491785 677188451 947526350 337048622 356035273 119966550 234681450 3849209 235115027 361749662 613057666 748169096 843885389 89572816 865663754 546163878 964596187 11433120 817244152 400059730 948466429 161726722 799723853 445814569 662417759 23373455 832531413 424765262 642203681 687592348 876124389 434140122 510267433 825185124 884506353 768795201 938928273 312734366 819793520 819306284 908391840 498643907 602544443 125519929 326567235 48380674 202742535 480077753 729576884 751365359 984276935 838889405 939815042 954081372 956469445 474679526 816410355 341382392 578202613 772491387 826941457 477140841 907389480 320149165 606016351 435613179 534672085 916651450 943880094 603149573 989540567 760294074 948918545 790929620 826058777 680890160 982252208 251372162 535312863 518030793 889790985 736451401 794121958 663762339 714979833 996773638 999197719 994235188 997903385 498217568 977726840 442032000 799245774 366179096 957910593 110931947 141275207 721601281 904926384 850181509 971324246 779986256 857720644 383152312 612439310 948924819 964619182 113716016 205018908 533514328 953753374 3234816 263841069 331904745 843079265 633525994 892971225 702469289 743446275 862664653 939065012 814975649 949741603 956888259 962377006 118056750 600369264 719902393 938142631 711869703 824283276 311523298 550370830 845824686 973169453 825785547 976346990 279411273 936561564 799284801 966426137 374899404 996042049 510824258 689944597 331506596 480243719 679976290 849189839 564252842 677182408 897917476 977856604 786303886 818553320 359124669 441487012 321440772 871479333 483982745 591812634 204263314 553804390 287252204 432264626 313431146 390424007 973457243 994809889 889683403 996356632 854195571 894412262 763857624 971740729 628411487 736084959 228392529 629704680 573703802 893302524 159587134 163103921 487987298 508441219 295060095 577348240 124022849 954857342 378483889 539559686 231599308 394090165 611155671 835033878 998179142 998397130 313218210 697566776 553667600 684833886 545222019 994405507 683676727 799307942 259137506 870881269 343128551 359008957 929655672 983271904 843820958 947919402 22725801 123434999 563830128 599240554 703034130 817446305 963544972 967252987 567154261 896451261 756203529 854363777 416373631 629179015 528659026 634674711 913315583 933219527 983899117 998581954 860616572 943781155 755699366 908504016 55152274 595184093 964652968 969298891 460500849 492342585 540673034 787849960 365661932 751137335 839240881 893750900 348562825 944492915 542322529 624346765 758744656 847749315 867040834 902959785 967173534 995283954 66599537 151261210 168126213 338991688 149787257 213204397 106978907 899215259 388385317 629755023 389427026 989756391 964984918 997058025 878355258 881013655 214061439 241838328 431870426 918497158 65692698 750697639 852378016 880944372 6413780 103527325 612811347 763640850 518946770 907713562 267698180 664701250 6115251 683256021 858024958 999504010 601541790 734797218 952364470 999025681 3797948 829103194 668665108 751208040 288903241 648558557 185923729 313562574 283510669 688090751 45470340 345287231 525070021 786017675 189531274 896032198 804579183 812451206 221842278 348108914 850007861 915447152 276274904 734144518 273331736 681543677 445723251 580015809 616372118 843841050 841300485 939565254 59479276 373906492 222370610 761860860 380108643 738006065 438563336 854731172 914255702 927826194 257469743 878316777 545829348 772489577 937625109 973282374 939129194 951882705 575727660 587800462 84734030 556262346 857894971 920523114 372410648 713405253 681414890 883141799 934164051 954369955 120330160 962305285 298770196 797241177 505413070 777286871 289812624 499182972 165695941 873997414 810873184 904145865 436204898 646020953 642754611 740500202 348435591 790310890 595233339 634784182 967515225 995276209 355038439 464947053 148627317 277746152 562377350 680600091 353787101 481072397 436301613 461824171 385843368 473075267 143993623 885485206 868006232 946558355 196554357 998500024 748043659 884214396 44001467 140055013 117108184 930696562 984855677 998329982 85251474 392655794 624807645 856917868 211763452 809822558 360849119 615225813 651636164 653523715 159201867 334327674 735931499 923599362 32765677 813193795 157519576 272618751 63192923 622889739 223549416 888257646 81764105 397602543 655780911 758666440 748360973 800887722 440210275 715432046 485423381 812460497 439833970 619898227 453336679 712729350 509947380 573903879 480475825 986201859 985757095 996455337 21813962 241015555 993804371 993861343 538535075 644500834 376695805 806636342 362423784 622691832 68434322 750804779 261032401 996037372 901327263 939116216 19813155 119632854 919661254 929991160 587678526 689455337 286189536 552810053 887256530 956974932 571893062 694371680 75231893 628361621 721952483 897400221 97145933 356129479 124247701 461646861 338429441 388694566 251638847 479491596 252435726 700388144 483004636 501958310 515787492 832968999 340004929 594171167 668820508 758818670 392672248 723801896 923942439 975553199 447127874 693597926 358769588 722576284 692675347 882422395 736977807 785760685 926842966 966847758 949058986 953767330 824184177 841369579 296755524 500283546 875746906 931967105 832252032 840912818 866124843 976622705 586534143 980538760 428447407 970458999 738991098 912208645 833191437 927607671 704646709 810209717 729194715 927530281 640569086 870876146 715330269 771484124 899405805 947345951 140191849 510856250 138183676 675593325 215924125 552100524 18314197 961647584 517233209 665062493 963727466 990495297 232646699 975484678 696570009 754680657 545960331 602991439 921858849 940769027 731350393 804623648 114506296 715916991 499846973 761421329 556553482 857043617 115787186 444252251 738768550 992642907 748238732 807888913 609821102 976819400 920611002 929866412 901030802 951875998 866048452 963504556 782244246 951431255 243969147 625827672 544006300 676402290 535566712 659931287 814747838 840632522 529435856 908444702 449910451 739236084 948142085 976275707 291217870 664060839 378113077 748742709 9348852 960441204 181663781 641514863 502229689 909101236 375540976 635377774 310446045 904158724 505891863 909280616 867204776 880125597 507921353 530060677 968296096 976950896 993743386 993959856 347910376 456256898 704531058 972519827 890809926 953056851 147123078 361740330 160962065 728472128 836305819 967112483 885629908 988745656 249414085 728427801 388225689 443574158 134652846 574120924 159991893 288793273 9094729 505175283 784236957 891914641 15766835 249090774 315686267 567020575 608281581 857135378 862639678 998074864 733386894 759553523 1529066 551750915 328015187 513183991 724221013 887444508 109323945 845297272 766926661 857372880 432665855 917598103 15862824 40195974 43109590 444443738 928822130 997797489 752609916 849006742 592002072 708405904 398604500 490365456 748740331 758998253 47409889 309470624 355856669 375958215 948495572 957330692 286506421 908024958 549470797 788700767 714396314 896600446 631303140 936983837 790210408 846308887 988807442 996208519 759912472 914882490 18130637 875090563 754593357 852237893 166713382 253468136 374700227 835999996 136642853 832265043 767524180 924448937 903440864 911159410 307292808 940793230 663600196 812356569 661428313 899659578 923381047 982472209 543194308 780802240 403217763 816517858 961708757 991541452 382184503 838596755 571530137 783206474 295702584 861269578 920527669 986050382 210428497 895196269 856867622 999956349 236575341 389319813 669721425 863437436 634578671 795678644 28359661 459761711 689911481 820036945 680529579 926447571 320251589 482764058 762486089 805881845 917212903 964534921 298518424 615316671 139235247 494045294 680375750 943430948 566435041 718869274 585381162 930254778 3084294 677503160 16036790 892884167 238775940 647703802 482525018 624460634 712736196 894089208 896119514 954480481 762118916 798185448 98131860 884428932 779482166 824604631 452422610 544979580 408641529 685542270 985004183 998725412 657248975 927988774 429882378 568540385 743638874 847366028 643723523 756873522 35774641 420981004 982215366 991443315 865186133 960371918 979376177 997703657 626260014 686680321 60567885 291359750 694851837 742364215 985935707 990452712 98366530 709040189 216632232 300759965 21683982 783202213 45993241 792227193 268055496 508822412 916349116 980916093 675376077 719389050 814478038 859721220 600856870 635163438 778999153 934589168 647545516 775309272 733655728 734479823 482818644 980040153 60270315 693652017 924695772 965835864 50021528 694713749 804907024 823622458 644127161 754974134 247782892 903419239 798787658 837279561 38554110 636707297 182090107 855328588 163766184 598128603 712643725 853126628 620468850 758496213 127173635 327734895 605340890 926949699 678400493 876990057 179976244 816392087 305199773 347463773 645368722 980785182 786548484 831338879 975819368 986894597 309574182 467225202 169185242 690894820 20739504 21383343 497261106 899869262 904088084 957364662 505609130 610950139 682163382 831014152 261539517 909887447 428157610 907063998 502578918 818452504 850969908 877243509 368997009 837820900 458121324 809333863 443528694 772729611 188561678 599874039 796576153 976360598 16994168 939680095 733462929 889307383 528218396 963620167 985512599 988990732 334192493 481829162 834965373 905637100 787615379 863954015 521817850 549899416 710393663 789415522 428335000 627668198 158422180 817091234 547347822 754633715 155859810 547685841 92415570 418930800 343075091 883813430 813770302 992437975 280060419 535964365 276417955 629781558 280338478 426748150 330144735 637915125 193383213 759400539 150727917 978228905 255031875 898999378 253492403 418244488 798208784 933221792 985176856 997889545 581788129 652578636 328683317 445747356 728702339 929134054 352877690 403690424 376985027 399743599 996127312 996571497 246610101 681950590 140290297 994463419 409626009 608095547 545653575 637423272 660711021 804084955 518357496 992238026 329312864 919289449 190984988 712456888 630035170 992428116 771236356 834296103 965029262 977673395 3356638 690140721 392137951 910866938 389797718 876080727 266844553 707158660 763558839 875437079 57418378 562856349 107386133 131454704 956576365 982789756 314951252 523010150 404418431 665949892 506854039 526527846 669045708 802017199 586929872 587442083 163458076 651361650 811252361 900384178 405948943 667738423 999716589 999912292 75848725 235661475 152297892 728045774 193630957 540554132 315993275 421704107 487613654 732231935 676293205 721911662 135520068 181596381 538129688 562787637 447537416 524355996 239158523 395897717 538326430 842309688 216868171 851280573 144695255 818183966 422740607 668469921 587606628 759446250 273011546 918446653 496436756 752408403 524284153 837445363 594256276 877585491 111422955 727362984 526612977 829525909 224771060 593351132 618922597 859991142 121126112 288712036 438355000 723304588 834059083 923280227 254630181 637635584 297021043 837844729 970656563 995285209 735535955 999524719 888011726 976929114 353587776 754489034 131135647 688304072 888782946 960791568 621664285 625851960 438371829 535707779 885805395 948760477 809634655 869485667 739797708 758378959 745888938 986041910 230911523 655732184 562184145 816623238 268290277 677634916 957830771 964860191 433664887 617013198 96882385 967675312 473936034 851476708 746311454 810672871 94202842 712582492 913464565 933154181 258424133 549535916 720799470 779430787 741302443 815668109 108204881 327511660 104394670 192689024 181108273 816977870 702363316 971230989 204704284 694469071 795127937 984018572 792257640 846789537 163476494 317412495 280446125 452939881 719146548 964893711 934477007 952954314 457845720 849784810 339517166 441843813 331299321 757387275 737496324 922263538 946238375 959778149 12167802 804925346 352160998 730461754 650097961 994260777 840686764 960194618 867011494 933890044 614018402 900522586 747166955 880791825 687888134 777392351 870959087 887067847 155457413 306500029 249986992 499097208 198170293 695000359 341603652 938797859 98971510 616543394 764041608 915698884 451801995 636282048 706297104 807197971 53026688 593611855 697932807 726151792 126493267 584375955 312731604 854922580 386256331 872958510 886839953 917320389 611513360 766748979 319791238 440876266 55262734 75330252 950331886 977858092 943698576 977430702 556077364 986292759 416315037 968206554 792874479 901815236 565908127 821305255 712859277 905896897 681853718 764854402 44155926 49647085 431421341 671254033 913596720 953027033 957005929 996835441 864730246 951947273 715822854 746130309 549256237 558422219 120664361 445977494 593553945 985576019 763927094 967046932 306318223 665394912 990362226 993494990 303599985 912126876 655113838 968033256 790293123 826942108 14901243 151326946 228028362 530679409 265717801 970445656 459796423 476633971 551196598 630943140 215697011 925872569 71734059 547803407 372666978 696570278 232206344 780992731 963428683 998075093 534231551 634923571 161775304 551406202 520217900 670992016 819679820 883241656 14051735 589869547 929829947 977154618 25471805 160723291 743312509 866884522 674909083 773729869 985629100 989783475 969028490 975932713 973876617 999883516 112326703 701706191 37450369 900803547 266417787 802038845 247088742 444692607 4298013 754880431 2503766 581062198 253353003 954270681 212411016 841944318 421562048 994070324 44364079 135838077 502466675 873045253 901161684 928929947 994332495 994457238 107996372 856873350 654358834 677762218 769936634 988668481 126596456 956008847 828493251 913825404 148275993 318081550 420044894 454140876 153182849 495296551 365565979 722630779 739088133 839835048 732618450 851918943 609833051 666533636 954364644 980002394 182965550 240239495 352704476 845785548 391382296 804997903 19790676 128658083 560161243 744919198 613256697 978658451 153825784 346251943 671072374 959645357 247715543 535100346 156506074 257988113 92150215 237748981 758007723 818258595 723571540 737322573 950690354 952533658 875158008 987103461 435528206 464613149 612132319 677041683 584318749 634346079 376149604 497969009 432254389 500497592 972250322 973873574 635400530 989241531 255196704 531590394 108901784 716787172 519392466 807977297 202332559 864622224 968776378 981198423 570382967 674574112 732354948 806587448 458278385 538231972 292227045 786077802 722193048 997744827 721715215 935205688 40503638 308607481 754924440 958530801 513343093 907030940 621673981 891820833 77155871 271235527 312131205 362900807 176713675 965238355 531959268 641370511 131540989 867172150 282603777 358969362 399536366 560073756 876645823 911077990 399338661 944252916 388840975 608542546 606813870 782621361 617665489 989365202 558564242 849957827 740395565 875517600 784882663 856960929 785126384 858834242 177547823 378877637 378559782 940336172 591945127 806601993 866261025 903867851 881937867 956246289 74654978 586758088 678188378 984094983 124612208 220862593 49266336 472702431 244262628 326517451 755182475 799228454 265564801 570462733 134837144 464834418 292860084 845875656 621563531 894025072 712235427 846046690 49618397 934343641 298441680 575271960 587135727 890279067 835740983 984692665 979176187 998134839 539669152 843736028 249352361 571835973 658640202 958261390 375627527 628205668 2842041 528773872 848835822 980797667 701005994 732007237 423428858 496505387 588367765 679718280 754926097 891945690 549673547 742866949 545582537 828600814 104583451 364111950 587507595 692137798 467478156 861605052 818472753 970019389 543047996 554839103 160683333 484674917 603909767 870617097 814876878 895207118 428922137 665484177 51285429 210001607 52399507 414667763 44209586 593932054 992008590 994957549 436624889 524447123 697403809 904864638 184075805 727117309 309873631 973681093 874624630 993097069 321841978 780072300 622935998 762749718 675458470 950462937 671735102 769336972 81701362 580008147 465654095 972416997 765669831 868664535 41951821 532951100 844262777 991769176 200087988 446857398 922012094 928549996 647346192 901259335 523106621 698728781 942452780 985751246 89578941 630749725 552410926 722837328 959241974 994150940 428064163 997035469 703085700 763275463 312784687 375896359 825220499 966989393 201124952 445628301 229244688 852833149 867791806 983806756 262222131 264117975 525291336 764907445 233407292 628620572 559517721 588678969 319165216 567823660 714576361 874144678 939152446 996777420 555241323 972453568 619554899 832622795 635082387 744533280 393710665 480432809 148268591 534219601 600526146 805591734 28580541 336940550 856417569 960709062 922624408 975419535 592415139 746720002 52422294 476518313 304752957 837402527 789307824 867898963 353527566 475570327 901553606 995077443 584792795 737439939 186796574 458380457 862337734 917316290 878418609 998000023 275550720 401127289 936991736 995750932 612374464 870553723 366621973 974052329 70431995 757838388 457416220 900809593 133256850 233537547 504255777 547442172 87919338 322635116 863859366 893569889 765834569 945246363 721471738 879894860 693123733 788080380 447565332 507447091 948154026 998066660 890322056 933839994 336693889 430119226 45129456 224899680 557713591 882921790 416779553 585438935 258210539 550549825 594763087 749425645 667537453 683338231 780207402 905636900 300676696 607547473 64934829 190422512 137020776 162983542 563617642 674354583 399615072 892994365 320509040 559171864 130773507 569199451 46291824 74247921 444485782 905394762 747794517 905792487 804793940 916394830 671926841 905912416 111595206 526655434 573637903 635514730 399029714 964628044 716429632 848168670 677874430 725532419 960169560 968344202 43741937 395806357 654106455 869365309 143777541 496719745 626214802 923431595 803670001 891648195 571409178 963260153 152852245 912241243 75249291 130509193 513843310 529192737 376548650 505739548 451116528 710766287 415354151 909936210 835796182 976103581 727821840 847403240 70225818 541049300 300117632 934916955 694305390 908092104 857233936 933252233 63545843 366638054 802907382 839727780 618664439 803061880 583457649 975014765 854343905 932287556 967109597 997560679 805656335 894819308 550499008 567714065 918798068 918943123 192637134 283578356 808490707 883113420 984238644 993575920 30986464 577006449 282919868 884730768 7806314 625176099 111067673 244760157 840523615 992350067 475693179 881688084 895672612 975527499 219663856 840844428 478531887 962689042 472112498 673709877 171493599 334859766 9524731 977992905 860485101 987370207 810436302 886486220 334956877 417007621 683899708 729639089 945253213 977211517 745085376 951418577 455830437 855279679 999437221 999746647 904725501 974467512 553061517 764927630 213825463 304409418 285247648 689397822 631058593 911975103 827154846 986739827 83823804 626079457 859651355 862075791 59464840 979598168 333490572 465546268 999293396 999936775 124012318 734258776 95049301 850090624 359813335 795973359 282164998 444397393 348005850 593641037 59415774 794445071 614913378 888767192 677631267 900697841 255266656 710950243 782416972 934214346 63958557 740248018 270195790 755098382 791609608 816440957 105010 595344110 851810938 964544676 740511492 876389728 366613931 595177496 768732983 952643984 28295737 316262798 167254185 214451734 634052905 960787418 467812249 956678316 382102784 796663339 771571052 851350506 140687596 827027221 874031799 927811258 165273809 973082017 359795211 377395462 40408536 609401871 431167476 904379273 316387429 404133040 993797925 997650922 556746730 785235976 601192234 794580525 378206114 943427486 667185791 965734671 240057723 333588863 805859681 899996060 629177285 674169434 566833400 726648961 300915859 995245218 414601984 886550040 318050854 602275209 15793903 772339303 61692272 922089077 532248332 676609716 445281029 463747072 739454638 817073314 345408651 581620019 506718105 567389228 62000001 498008053 182928916 575976829 874606378 942540994 772400450 889882084 841305786 866244383 538542395 631108300 255337030 407189941 500448452 714901675 721302290 992237191 685987971 936762837 475682161 558849883 670287637 769147205 943603075 947881836 65637171 805859794 359658484 913163982 548992029 709531340 90812245 735375621 708705469 869264009 840555309 947005312 455209630 459745078 255662456 505263929 900681536 952251921 209936271 397921288 547861318 875559454 709037716 770458582 996055016 996899238 703676626 723230244 981607878 991506640 222299830 789176805 365573954 758893380 735500958 738932763 756326943 979748135 38023322 844485394 680277767 782959300 747424222 955094496 221358767 909766954 615932322 662039309 645446121 675606661 708527185 842063722 73281831 440728930 784663717 863008902 799771834 801370106 247360953 282523317 761689949 942415549 799144129 803417333 273284610 552326726 405414252 762664296 66432572 847207201 884401683 975861615 553321073 582914105 180385335 552235939 515577603 642717055 179625675 756648135 266533476 450162886 284470871 865946026 11243520 594088854 585001301 952905258 909181023 958627392 878268210 944199586 808063072 928345742 835060173 965161223 276343667 310835582 528741922 898206693 515946316 610439594 661630515 733593888 662646433 680675397 947863976 960492965 6069807 93456200 226894286 997525498 658712206 703978579 77415433 150523202 90611267 236536057 966635286 989704016 987306319 997136844 746400219 919588573 933266383 953154796 830544711 889712967 833385009 988269359 694189306 986937853 183117475 813088307 194558687 699907555 14156805 968580983 602549568 817118005 362824680 914018053 725484939 948777389 795818841 827792205 585164499 876775758 769275937 970814175 436464570 478815519 308460353 435991210 79050951 978612751 735819187 984476642 957828892 973108572 358091372 807267732 164758839 938476788 863973913 911988817 50358792 776938921 850796850 927913922 598321528 965091620 850504122 882240160 893248633 994258811 973539842 999818445 313411106 500169489 454225321 794895093 529724038 861925338 996080593 998249457 872533919 915553907 741789124 831972657 877257405 982851754 694158702 872223118 344351661 619968743 729849726 779845535 787471663 961101936 211489608 344375859 374073740 767529730 605087835 895470513 419203659 801688857 408210785 681823061 648734867 830276252 779041172 947841081 411691908 690405988 511546103 943418449 760101659 767204233 622611165 843961709 369706884 904802830 84149842 539520985 94686781 796901295 705281942 977417580 696227818 980432996 493758659 662608155 695919006 997379439 826679766 871376024 931915356 989926577 395582285 616523629 759161069 916943145 316922346 984314701 17849186 136342853 147707887 168437364 562478961 817649147 829932455 938373639 374168275 614007247 863775099 998806276 364480876 922208306 957435813 985399670 862867685 919660975 411604624 620148746 73207820 861496772 136530997 542032013 442463323 918775809 448310582 763928139 39906517 92818678 86588797 601916200 370194592 806600217 926222270 944972025 89471565 832854853 581971715 780588482 996919822 999644476 570693265 947499536 286439556 344592819 984561727 991657257 327584952 834840479 58213200 772448989 614106185 760658661 99845473 634513194 524332665 841818325 193367330 840391885 831616922 890756910 130603871 523160350 933664133 993066873 244807096 532779380 120104821 957384395 257304108 984805079 406167369 729857698 197783994 428529754 307168179 804967134 523917271 641322400 889387549 937985941 883462107 917843569 292641401 984277869 421481656 506302601 523810108 881417956 608675900 908393683 967203509 986362460 921263740 992416247 214583728 216896825 199293306 348197146 8320112 900134382 502706822 609408516 358482369 879047183 631908774 890585291 820198618 986923929 77879857 490900552 204650468 757787493 263938489 888217592 599193711 999154728 214831479 544170613 882723533 894043228 142313708 843207211 354464841 855349543 195366309 324952692 585176669 829257393 940215635 977435877 117011021 975463516 101122620 732736106 685856150 724292654 111533701 768558877 668420322 971482697 346559816 463714232 395769018 991897224 489407092 503333695 452387967 493570010 554732907 708083317 689679235 955005306 157728042 635976541 624901749 820399189 507082603 847925588 968177861 989562108 766179086 862716690 774030046 931668366 364017645 516781642 320954152 595570007 844711955 986302540 585852988 730945751 21243849 645281476 331349292 888021011 722470987 878833014 224096590 677229717 768581451 858507387 163577733 420772743 477795770 649696799 252588911 531653526 711735176 832793551 450711336 764979694 416664905 898650220 83042985 936462396 819082992 866887394 582166641 988113221 148536022 351231509 708474742 732791722 698271449 921754509 656208426 686748286 829856993 926105514 691682321 918744891 560782929 832486770 578213232 693587263 206439515 954471628 175497185 895256396 443767471 645994542 121494674 827273783 363923527 899624280 99728584 294292365 677425127 877492070 835865143 907950848 730949429 871285687 291429988 756626110 60442194 264847094 986383647 990678236 775851499 915575393 798227373 854625461 132329997 867049941 166125264 848093306 963057393 975251297 436566090 728631608 166119546 916314080 174313476 308372501 92897020 733380951 51452140 582735594 564656344 920548378 243087902 627273665 322542009 880178244 769990004 942060146 561179556 806140033 527326399 898225567 751872149 755374463 414027599 452902843 651984309 848233369 219049504 283229431 907033562 940592203 721860799 907772445 283800166 845909423 919099847 996270360 5037585 752359785 846585421 892253043 816785698 974641770 396922415 645386694 478998670 725397244 473776428 836947148 192176586 906840573 21063764 851438612 394637190 968360704 839215730 977671144 48559003 328064774 985413191 999117197 967059505 989033579 730729357 800954978 541435963 797426898 651129452 884987234 995115184 997139265 660066476 844824414 789615237 938273482 503683107 694873415 257302250 282223574 730367930 996323707 964156333 994116603 667825962 899463006 985066190 996007926 302161520 778216756 902517782 916337222 179024620 890158345 505919617 773347972 377028431 422626849 291828086 436554152 155122335 615269490 729219448 974519175 477526993 709056306 319667058 850126566 219844727 932110891 16980414 940358201 942380235 998810802 79012237 577467518 100193727 528700514 276694397 515178355 915948838 958753112 493416033 548215125 779823134 783709376 950221577 970818652 716383626 831680624 33194550 583707050 412725646 954094217 780461540 991434838 797404123 830298341 552640828 811434397 24618592 838184063 326228705 908521466 367566551 886422104 382546390 464874715 344707656 804631681 238214149 710999881 980378273 993468025 627470546 856330012 939505299 939914735 497520451 603366444 430604477 866443515 696425969 882767885 793943171 873302481 882054994 903944516 562710287 785867265 217011482 475112315 761885009 989965569 614945088 918274925 613475888 714497628 15442207 539403078 142277813 929951402 350504363 964212205 585173645 781737949 569511197 600660005 271464967 658619292 745783683 880405951 850924301 963467218 342043602 560534704 405179332 468667975 589416184 799162876 848722888 863321200 613958457 909192085 131785429 971663571 895555405 966549525 106436850 506961147 352685888 957770506 693277977 806395393 558575797 987129807 10366523 761128941 474715973 951784019 584598638 959910024 398118310 825062259 454412023 603438528 305415086 616042633 876067909 927824852 876991702 942888666 280605884 646296162 684753456 880145320 854434488 913938257 75987362 179828512 5126964 410022287 710964910 968876723 533614814 607514926 810947596 950661528 879313984 904594207 510208163 626117150 313852172 479452123 870740476 946944641 653170393 727057936 542874054 899897604 356623249 851901734 668010846 682040743 819033957 827795310 256806012 378516068 588479079 782862663 362881177 607177059 373632958 691796132 898429666 922199666 579720711 586120738 794455825 845854452 15613267 18885455 764882078 855062985 726671863 818822008 897265716 933797787 401644846 449626143 867589195 941196052 875156547 921111976 656349160 680485723 469356000 708576540 88031009 347784713 674656121 815454666 980757736 994647558 542795970 746645951 173117278 299061646 121183674 159082787 209023159 927285118 365079204 755465148 894654464 987539745 455069191 873538906 736509838 956688932 914496131 947011716 807610149 995465397 66531649 411769800 910363604 941484713 823762105 859273051 493133842 794463740 588204231 961261806 829439884 916096062 982753413 990789023 206916085 495863725 613441615 707539464 713675801 797549205 939975449 969171302 717545026 861488079 938019250 938079379 553409262 904980590 995536253 999413449 219056428 841148297 414064624 548936120 638441460 815627597 819497669 943030368 690820972 880400520 538085440 547856922 372495263 724917882 359472911 618562101 760417962 855447813 105362798 745632759 310391173 871630322 743984112 908800224 216171966 444045497 360172168 630740873 701945874 890711785 959950784 970613191 964048905 964979166 872424139 977475147 590831879 963828188 927380346 956975793 662657831 855257869 888467458 947832345 5514570 694802755 789970191 791339630 726916402 841693783 118930845 866406649 153418874 413347606 438032539 444203822 690000528 937211666 589348684 764758702 542927524 854244069 137147025 729659575 610426300 962142513 867853689 935034949 669134929 705053249 218870370 497751802 990900574 994100622 65091712 712818479 944237806 993269526 314283303 819249679 558768945 724030288 633544723 649418141 160246588 896826702 163812470 748760254 708657338 770811005 836978630 977003727 463363730 738398562 305154435 433622173 427476548 497881735 174083774 672209650 566137653 850382300 766493277 906739847 92789328 501947374 687939926 837397161 422570928 934204439 489607038 512581216 127122897 719341060 221525895 689562757 490955009 888571234 873801692 970291086 777819022 840320336 733756632 968383981 698271755 995174513 421599257 445170105 303237673 781622859 397572977 888447990 113686399 358605601 467216506 596655243 758686614 912250639 147350539 685201768 36858515 960342878 20650694 147349957 775599210 810205391 991690830 997698072 184929778 551515680 314023540 558063279 271470161 740551780 415304413 648384977 93666124 420917921 145051519 350085976 81044022 156589123 669619445 677175698 32351745 209597260 977288555 999082727 784596234 949541616 709568686 853785287 891881386 999412485 88673299 707116129 580482434 912683467 516135926 792225814 374370252 777829913 984397817 997838411 392182086 592402093 567197936 998773634 764358401 846381415 327812169 567016237 693214741 879894141 269216978 666134716 74262405 714568522 918557288 927315645 840047230 937939502 437783831 575966273 842736319 991612646 407307782 446893794 191786377 382669013 560574631 797915149 200551029 972540243 710710646 731211918 442455589 596955309 324239014 826368891 353037538 489070781 704966150 941688866 462313001 717092539 442365486 713746866 637773931 721306146 833220746 937935516 864844115 972170910 681536169 742070409 749838768 895890327 373207694 491884127 596903118 738407308 845276878 937849708 362057207 366446265 23206136 339879831 919787259 948379131 964248006 987819438 832721509 872124273 184723336 665036447 389267476 706652436 230794529 618894428 466980743 483695573 132897936 842238667 991077069 991959680 512110769 764257120 131564055 589935814 165353576 438002358 652356496 959485336 136132145 507221383 313759583 717053618 37719621 269707195 776001247 882341256 891918313 994013454 223499396 726840502 588008224 783038470 423992234 843270475 192744701 709271675 513893895 514209344 744372517 920868926 669951979 702910140 601572244 752608681 287133322 551592100 454543884 940967375 774220301 965332341 95761587 741552666 18450670 589468598 517131554 666599698 781648774 984179000 352363674 464660206 535790069 870170665 655681280 946856083 432211085 436540344 233221555 840233189 741338984 907334817 951865099 996572433 690662871 772439153 756183199 858111654 489359941 565476591 757110419 889409198 462331492 490082710 316499586 860084043 2111074 47075428 210118719 401489020 206352019 474575940 372846965 814438992 560101159 935699663 11962705 370249849 716240134 745137283 906884658 935962083 593702655 669772473 40884686 682100184 185855843 216988222 976485690 993380108 322867477 708317861 222287636 447516201 84074998 654227743 987231688 989395220 310733316 353027066 787770218 891733147 239110100 623255055 260073791 744195728 415577039 443422279 970169704 992695040 430569938 835947848 248953770 303509375 267332601 636765825 195244703 783661115 987463952 995761451 205346688 238393631 530745096 935786524 125707373 658989417 974068898 995291079 523915588 941813172 487620738 725942561 523303350 930970904 180728719 416509201 116800144 611360518 484482754 598496185 446358744 613108238 68405219 602578751 256883409 649323875 45110145 715932363 290147542 291886732 735403828 897904111 807694457 849884640 882142905 948268463 774436814 901713373 171028246 719302493 165362645 638498383 414783701 639738441 587481915 909212187 566710442 635190371 2513299 662347254 858931454 884332986 861871544 933298358 420860276 860524261 189791655 598313124 968612049 993938551 988073269 993354198 362838931 892037215 538167483 544419806 31843393 666264152 398912861 963404460 288609762 533714752 48130172 275003793 130402660 861990204 446491776 759752821 497648641 644470112 540989690 841734067 838471879 884684355 156160765 269790363 688091106 749928326 592470623 693954236 272063815 354377779 852313714 916476832 195926459 907853311 949261672 962546299 701425688 753605146 661707665 916347980 651065275 693287086 324065575 974321939 915770743 930674571 754105302 951848732 642067678 874581363 733914746 947911958 498431513 632480465 228806019 718441135 442937997 647241440 675789595 810976063 632441070 828064207 114222524 825442177 836761824 983509477 715629700 989649976 310919794 384936883 8056315 227634866 928439988 948948562 725154353 733811365 205483478 483691524 732589454 790632714 625314598 965700163 54393922 592143677 417507450 501253424 565990422 762192438 111554419 415128864 712263247 953003728 596096324 840058980 656628255 891528078 253312145 848769828 201251096 340421791 526101023 812546308 664897699 695460269 836419388 865646706 291037321 951946786 924166980 941516508 507875380 992888676 8626935 129145379 193418203 379640195 797306696 957680788 115673992 225914564 971637270 980038355 743407428 987325191 755349876 959137461 79301210 700613559 132090491 224079566 657385006 848173931 152248803 886280249 556042179 737101461 521809494 742611153 242978961 865970068 528349290 932901343 550051536 726799156 922940392 962930670 830891670 951162369 500930126 923179106 42175823 324208905 664302148 817187330 607949294 829109122 241975526 319880701 155194503 554331116 301327189 428008097 778616050 877095579 410315602 805290289 622796148 943090516 48461966 176176792 905446996 936480800 763702606 779159090 363390787 434440473 12596518 615820944 368855997 773449193 210936165 770913001 512699638 882560888 767887763 919482491 634254574 848929665 174185413 806182348 193770731 942359272 277957047 822055773 886464882 919986748 75443611 599178088 140069801 885675653 911842587 938940949 723449439 754953031 506612118 888825342 949351399 969355865 515652214 688533651 64206025 580149113 987059886 995955591 821289914 888722171 732709743 802518373 307988936 688173278 244243480 865520191 787773398 858158015 744612005 913964451 525128889 735039602 389840322 856014388 123378945 494752097 817547902 998478818 770258625 994885937 846312519 995312632 500266180 834954918 342617751 619470708 206648302 861421815 187075150 928316240 449636157 900674605 19216637 673201668 612995499 797170301 909234798 966145066 976811014 978934389 372706760 511417442 558159611 615320546 656686249 657789268 284504910 659695035 356253626 543910579 393837787 439929415 202170005 241954220 217767672 361511375 159908585 437702432 83786223 650734622 217782445 589231374 132259534 585200419 510867270 666281852 669109704 722359785 22065506 82995293 214142150 913211243 999118087 999489142 346848383 826327870 299391198 985771353 663117101 990963459 738182257 881038615 848157803 998637973 12109386 33195267 855458487 872899896 674742174 961859354 228891217 476688082 628970924 901199963 17070144 835299246 544855912 606786526 451364272 628339826 964205195 978465145 416659952 515434397 188327572 534753520 208829129 220243028 189401664 542667908 556900191 590186269 268174075 544781776 560973603 566785168 614251650 730842484 250273031 766600911 366393659 723242655 593670871 648182028 254066197 406918883 832005455 917779288 29274488 435565252 641563879 891621011 479000048 883190274 409342283 937034569 684749605 900917665 154168259 754841896 230394753 356015978 400123991 962430678 871057574 942057120 647363811 763003643 747389913 956398204 219068383 553580013 913325904 914368117 829820607 848084855 506808584 686541447 38807905 944786347 750201290 830649073 187636444 995129309 2519699 643422708 891234153 930339127 637851376 687801270 91773457 636732574 857318872 866559801 338033931 568653223 333161189 896556123 172942427 458367642 682246233 945568729 6881700 507452881 312237090 610559931 667217276 870758366 310364015 317370137 921759180 965399733 288654392 797616081 63236610 250324565 917309799 977158944 410681904 817021165 930983072 990590360 561336654 987668350 912112294 945919993 417043455 989565017 813525075 878729155 443295518 988360786 105420176 119633535 291989935 344624125 384565583 868148943 428083549 733768000 88287009 476726673 91494034 557153663 18968458 661244060 761202737 928396080 844822395 974334160 901948970 958957016 914975166 991897651 723257941 815553397 114082736 175240750 603624261 693855143 467693261 930367241 474159650 791437687 574716851 782983103 245495945 858124439 925900468 936959859 624598429 957772459 379190740 866767108 645760558 766898606 792008521 987940189 156633400 745529059 556235182 813423621 598492439 752683440 665612556 783370708 682794599 951892510 637164100 842477155 554748632 765942539 623463513 996288227 13857368 313378703 236841497 743414611 925089119 963876328 297319739 895143825 494922842 852345964 79882579 546252195 49332994 649226412 509297429 698609617 374215200 482719904 830485891 893130639 919423471 986474963 297892501 730692780 4138453 256707970 79546158 545769033 556970606 757308498 78675735 91234536 522714176 975524883 830634941 885150330 8987122 217013585 737213183 918010021 403167568 642703793 312411790 862815643 319134971 449667195 445458854 856034538 447976388 998977075 67851056 777162023 183256608 580121383 334509498 704406540 297760898 473254265 764498310 975667362 66808245 805061676 266280930 490194837 345145968 475645082 450564529 662156286 242550292 243700083 611360629 644133830 755127267 821092693 660832641 884689666 80864553 927578146 712310576 963234919 818028004 947316592 542423882 672610691 773441965 903570883 551020259 928895724 63842880 70117612 256025886 263288979 264718483 564728222 574967312 773042261 615592922 829097720 245723120 339992981 527418748 766237452 780165435 947974152 644405814 924671913 407246328 737183600 88883568 735679201 422386136 860393759 446518289 656727421 392084360 523474237 373494341 459002366 966242078 968563892 459995872 501342287 988406975 998178286 209268180 321950660 663955450 815993400 421608424 584199007 664225142 876070720 347328323 584238601 324873512 980855221 319684854 741302333 543156891 557090462 582846415 599582841 191611424 413754465 462251108 983921538 895610467 913295601 800969167 813049020 889208882 990975393 706360720 820449758 472738200 758009514 90837367 491675658 6765551 380251243 320219254 976696243 166645299 881147906 820978599 961752208 626184408 831852300 569950625 579463961 433643971 591491514 498882502 812824023 951439222 965348588 715458235 921068422 363170954 958405458 438916613 662373477 467464933 889932664 19478439 728157114 633209534 876288111 672368172 951463966 282704477 815839724 369594954 907308814 792102731 978944809 609662413 852565456 761941049 772139012 771462897 982243389 611700114 706901002 734590011 972709511 357831857 804782662 296815745 492175455 746215012 862498308 943413278 996846374 827905645 944069198 172468623 578161467 357295343 416896860 492127032 610496802 867312006 901505081 870995708 956103190 805621799 930995105 549290745 881521012 869508567 883405503 679253388 876440519 292815701 549117221 451916088 456060955 333710909 656578057 173953553 602443290 651005177 887255354 949931681 983527202 599876754 646789690 357581792 795308740 780204603 954065210 721591058 912226218 638561691 853233598 699431063 708272185 442139640 706376760 265483772 311327985 901949401 931674314 879452238 887676687 241907818 923465482 39939490 836967197 980871097 985576735 666241470 848699877 863789445 959505497 778173315 900258192 829622010 906104535 299539097 737029512 505064772 916779650 992997109 995565124 109106846 623468600 294322053 612429938 809144252 873666188 563963152 785051206 638553375 660757277 54175740 652800281 316119294 954168605 282606276 289783460 811986641 894725011 591783446 974206627 757593388 934852152 169272688 363762354 739770788 894586322 115508940 791386034 43170401 359629816 902308719 916767977 607116488 965703001 388302168 457671969 746143460 831117276 281929170 635999918 598758250 926406208 218931857 743557895 323185315 990555850 857830555 859346218 468479435 801475678 877438713 986013227 230419049 762007749 830342329 993949554 780096311 889804095 135001953 659086820 881902888 899775568 850752232 941993578 420515108 507778585 235449743 927028882 894910795 922616527 320131513 486891360 516990353 990849954 498085295 891013707 852543902 926215217 396796915 863179322 440834990 545363711 264969010 899967439 957786916 976242194 583099622 597109167 337698734 837958819 227581386 389046019 866919433 988050048 870046792 981388374 331387078 486470996 802716156 824087387 931625881 983655083 316805218 636534778 222287782 678593466 850677221 859432518 237189458 501776009 7021217 675671564 218227841 923326500 218202552 874741741 18620759 613367522 89345207 541468145 537578835 651952029 926718709 999473829 983564012 984358721 856449774 994484789 721146632 726485651 151836360 919339685 537252435 722928686 414685509 772224799 645514565 671289869 826566058 977513496 664724157 695829632 620661922 816628761 602954288 715089548 778800489 882816715 737575297 835407081 933190503 940824831 549430108 565717923 748605050 992216382 437258343 806151183 315365652 832925001 182912022 739400772 964355628 970963592 367294498 987432091 279974457 808429853 670972483 745958499 768953950 779131722 127270824 596544497 374495502 466049081 9701293 674546557 870823748 884092811 854359142 876310011 966820718 985006520 930433520 943461701 89932226 899829968 46186680 115073531 180267503 992427571 213884422 371301757 329480733 675817997 634605767 794448526 505671884 625221112 854646879 948122999 581062527 629292569 632426628 830941811 318184224 672469155 353667104 881018506 877482443 940915946 707588674 949162989 565001177 903694909 894982206 920926224 796880751 850011670 888401184 959124035 816673048 932719165 39943602 759003379 231701866 917720359 648145560 700005351 712835383 915724262 796281577 995865789 296628468 619913852 973805195 980891490 499336928 782780701 272045822 681566002 738594550 985565641 194621250 538435614 871692391 926825413 922542684 941235727 628284698 871391620 83225639 743232318 942666713 965230146 563899797 599849124 33513725 724805946 638238486 881048758 368963365 809107293 648299079 870006694 888095773 938792449 612406800 944553981 403831610 675820112 696015620 892616624 204130000 780431307 642006700 792026785 966974746 999015924 368566698 573470655 798738269 841092935 422468795 991376250 533028542 564980283 199205431 444720929 557193179 744648251 575585102 863375139 574259379 711283330 252479291 555497503 419385091 989561613 169573720 398302214 582850300 748635541 969605163 997530041 921423043 982696033 488534593 627728790 58632840 476780032 421549307 806047488 856903964 870185959 452249317 605541743 717810895 738426091 470826723 672728491 426371979 801088665 484687211 734353940 230571520 381200237 557371088 993449889 226644825 384846599 469892758 790394394 660654474 960601987 316175414 436295363 263374446 993144701 107655917 332477681 418818274 643903862 303709712 893658852 494308275 842979353 406787365 698030345 285881794 639306648 890986342 966492932 186595015 984599438 55498421 780402704 771888145 790671572 800266569 920449610 91619075 570497289 324855954 541376332 338345418 679897082 998434103 999252466 335509153 503291332 467570977 720865881 373158318 996275328 585389267 852689756 269330777 539002190 104074017 309374969 703938035 819535814 231235005 654579679 792355121 798852783 769075894 923408215 421219640 895115330 243628201 996167635 21360009 128008040 866448202 963081963 736007765 991235541 75907728 995710152 194504572 610465711 644673425 796681940 980105492 989867325 620462965 820861513 269752647 996500096 505305688 782375868 780519441 946797748 164763040 546918625 598105345 984204073 724044315 832238722 464858886 883036753 332052635 766605446 902350564 975692633 638349627 649198716 13207049 360477239 279387660 296929035 705433485 760738550 91010284 777727952 429700446 917005978 752298060 959102624 514771838 666313381 394350914 399951181 212747328 355833401 544233730 717367498 115811530 148064182 244406159 567728512 331917270 537126012 807932186 834750423 105520189 899846824 716576038 987302240 362131568 554474757 842263396 908037458 432206445 764119087 954461466 987146019 134894117 431441744 448547791 785052227 84757202 547727511 747708313 969007758 599360184 896334746 501682693 516123631 416773902 647781519 673223607 967366689 325435542 946433455 217484508 878022431 837353381 892841985 893759838 916205932 221140614 560411085 407882585 754504896 802487574 956777082 539941642 603526478 220258109 465298012 723575047 896393362 837672158 953030518 715086370 800646092 576723722 847286683 484363716 854166382 506698574 947505625 282760646 720545764 396511586 408286475 26035503 163467957 143203742 156576984 804523481 920142344 671633066 726186657 633476940 775259579 698863269 915101892 999633184 999747742 56283628 412829250 202226737 636022167 692174449 693966230 770739671 900704746 544784988 629926043 309919815 634270075 16768806 354922183 984433588 987017961 640312867 989801759 397126845 598887139 943739160 946025964 978650938 993173724 105608346 834843481 278406644 989176374 326366735 672570062 705004208 788920219 6611200 705706569 232279514 891963199 171642240 897536686 187277133 978431731 799303419 883028742 49787247 603459226 815444991 952561789 482028782 820810927 168321733 169981224 928654530 974278923 179729500 682182747 501389697 859416126 675837434 699254471 648077845 695745282 35244450 84026505 619757175 625326996 452070470 701951497 716848324 871156017 996795677 999411141 173401448 174005332 883600562 923272470 558429052 836172941 453819855 700118985 381237040 466054771 507096805 659604096 770726248 944879677 492289266 585854601 894719550 963277794 92370493 147064751 148364395 706291050 88959535 905992547 340775155 357327894 886196461 947681687 955521638 958962802 456853945 891960076 967882913 996942397 354976861 748193034 129234341 348888277 316474050 528825501 764921218 996116929 606924184 611956363 288304909 529588098 439153458 534827157 341762593 477711168 84911941 250852111 709741905 764313274 627856668 668564322 395563109 466493218 748632156 778839134 198606318 740401768 591923282 882358202 13484394 188368245 603797488 814440523 830135717 937007361 98516745 333490498 628574423 707786072 778444995 916465061 313632349 722562505 655197591 870770027 858435666 952234947 68780323 823190963 355221607 404996600 987250058 993299229 188616294 758883545 646904178 837592152 39906336 561976603 977949742 990433679 878307947 994007080 841113668 862545392 457798662 530766027 659619559 974714227 794477111 796019373 312838455 479848396 616754317 719423917 141047119 733120712 370700642 956902651 441883454 770953486 926461501 968917319 58435925 538181063 985476201 989433331 207729649 952586731 335149883 342476512 641130494 788706793 708583605 806070957 407518623 765464317 398309425 808229297 595147444 782469110 271917120 640827127 716909571 979644193 713292993 747106980 549624846 593436824 499090946 679488999 240713419 309017407 512685522 856815413 838760964 843920183 476449438 592218763 119826253 343120520 29774426 79171396 720060032 785291663 925750265 937558622 749903383 902220559 996534298 996651340 431028803 870897185 362125479 888489491 640290152 657412951 549728253 986389080 822998615 979173605 281491033 400884013 310568295 842766429 409431762 424088075 813209782 900233499 463993744 971675883 942418062 947635926 376895674 758934708 990708842 999145165 308909199 723586389 718467772 770664504 632299903 848713140 402786260 573760379 550336161 608648871 345793358 722303017 808135363 875572041 983207501 995511662 354637483 993803914 470520925 626551610 652573559 758405181 336836715 447970890 866470329 983628041 865780424 986010421 303288941 991236326 769581594 961676214 116538340 447153738 194614562 669799664 434550505 955699960 505979294 716679094 533464831 790797737 914237491 948715602 64196678 855206046 775595955 973751891 513262421 698644019 955597483 959397999 2677760 558139251 434141158 827182633 543218972 667465855 158301610 924995884 552496898 789321977 603837295 686755633 6181431 218877222 619086024 808211898 678395206 765315930 469618471 803092286 548856190 596448303 86301614 761064973 372726019 638018451 535994035 556434436 248725374 394298805 507047318 789794949 798625059 826908174 147772423 545171573 703565683 843726371 616847372 654659310 172390979 688654925 918668258 958436349 470139769 883813951 718670511 755582930 730063496 769314392 667987281 901354232 380301165 935412359 194114226 290186560 946027222 955064930 33090089 903826422 859891783 951563526 634280371 670806975 373151358 561964092 777738321 964998568 484038428 529949341 584566955 849397035 362175730 968337497 752928442 894908826 57474738 132459490 974391988 992452357 393708156 485726248 193803530 849103276 81218336 611740723 985872176 991709858 198410839 632130153 611008183 658606179 598157862 641412920 251156238 846866017 955213014 981437889 312549815 939730356 235246066 884864227 32472497 90168980 360707930 902135522 285284623 716820810 731113232 912952435 205579640 716759983 835753685 854497377 430799495 439210855 182764303 751014245 553046799 874335813 351942736 813801379 705001400 829523646 361649222 466868968 830165559 985319925 307882327 468387830 208614794 924445149 60578248 369640163 635905260 707400632 944018949 999544519 203908531 485192711 177253607 268310794 779935300 869534804 739405979 845853461 954197451 962527099 286480543 671714103 748693109 978445613 627398538 933078870 155707038 392592857 658115021 938231892 709827742 808864867 500129731 527462383 871776903 892642230 370563569 526933785 513700196 595638100 198276901 858733343 993266710 996426896 429772492 509699897 214028128 940431735 55060788 811656275 54884438 302170229 443762474 470996744 301712349 520307414 429948907 867302985 849468588 851696852 263852409 989698019 217061015 797851167 330853707 473999133 778110813 968487408 224678545 657914393 405958199 695012174 779100958 781588661 720288223 995688876 386682014 676214457 576388276 957830556 215814406 604488700 131014991 429970692 682762622 693875697 314536267 578042912 973271956 996558705 237248157 730595982 459302860 960516454 578600553 585541023 16196814 454910051 65780882 708671202 652471803 884224632 9999766 309794979 894830997 945430814 549799068 565610332 722976206 925429444 724066097 763209850 859202137 901125379 454454973 631576433 115500567 714172560 962300897 978643932 733817634 798429124 608022787 975366206 784121946 856477874 943518135 947691758 590709448 797793232 371988390 739189562 709959580 860760667 475917764 749143935 462997443 615037890 803440001 870324902 569745738 705725432 455022086 999261385 6024521 649725867 903458420 920811710 621479260 861955361 387948036 845567004 910457552 934006125 844791643 933135494 88355398 505830300 927419668 993838109 550244015 757478799 119365117 446300369 499880071 845936934 30371989 720811418 153899777 610906273 204371367 843180733 303500463 953766118 362085131 990724394 308101037 643616452 516381860 828229714 337740062 472958361 915169299 998599056 605380050 875615351 854237391 991792259 65616376 378042989 974215614 991512257 693806408 974141124 927688245 968892643 589582100 598832422 568766865 966608319 108493874 334825656 828434993 973587560 193215917 894927113 483863060 700128969 425227728 486372029 491165861 910470333 937401384 968914656 773707951 823992565 744703944 763478511 621198311 883436377 634075033 665049763 42592370 395269698 952433109 994810717 563085017 599677340 335865372 588751020 260704282 707803017 109602256 774111049 327323649 693456879 993111450 997443615 521649013 993268662 874190838 986351668 789667531 822301640 830789370 832076595 93037007 788667817 731679900 805052361 279269394 638145534 76396599 859752688 136048281 275967582 926042441 954181863 4387541 634550786 532262016 705689384 695841482 956116018 595193825 825740932 474581263 540676808 635562811 833096292 441858997 754139075 129539687 500744599 930154199 977518569 435444779 734270139 545676906 972822786 315757945 644809602 156256551 204446228 407444121 417849787 246759328 268357661 261912830 352444442 577629351 629544807 369824509 850704909 833472465 880838625 960241837 975626739 382909920 788508955 813684392 950575601 286189621 696914163 773333851 870825658 726185164 972986487 60576503 919877333 967475727 996030015 219455927 911300701 464597317 688686138 569127274 642532343 121256339 819601293 846424978 972595684 1276891 806107430 519227792 523902754 60942281 483236464 310537993 932666141 887556208 923896194 886675174 899952498 753265857 903121060 284265901 729135017 209021925 209053397 863111900 868872965 728084525 854921241 573545998 746489783 326579338 692806807 488218047 864575772 562446001 858715669 496056146 816088946 725020649 995252160 955578221 968683763 700789131 977845716 451275540 679818188 964244611 983633240 983046975 994258232 19328781 308220882 758669291 803694981 295472719 883978874 36246699 247924701 466863742 882243031 264902347 467575131 319907844 720241054 878391446 939454534 77564673 779144018 514629129 542260820 237355541 245106578 870077980 916037556 757278828 955030035 968269349 992024146 101533053 112175413 512449854 805733281 223335281 374067208 629970981 970905219 988606965 991861002 93774312 500467733 673506474 837476585 597255782 923588621 366717758 705759025 449163765 685694828 853339230 869242744 555328622 958794243 872968206 931892141 203989367 738856006 188052190 883361591 373590928 835689767 544566713 787907218 842449330 924060103 252911909 992909927 432940960 457121280 136216148 787000521 280411266 742883956 164001037 545260270 803937175 876175252 35981690 868562551 780002869 803095410 993940295 996427283 357154832 804641155 733321819 926694648 412284505 423861060 740318075 828509404 562278785 958498173 833844338 844369163 661238674 713471449 894404366 962379480 899296000 979525097 493499710 655680850 530008284 769545244 588732845 648975058 315178706 630701004 748262117 818488009 264542698 630221128 31260666 285805115 389852003 509201910 660268029 848575298 889955432 930641716 55794704 871130510 891090892 912248814 762076712 992930884 118610350 956612250 359702872 792124618 964039711 975862367 407133947 505582588 458477838 594885396 242533232 421928450 963362065 999516028 892765074 943465714 457793492 802552741 133835118 778356565 130723702 727663082 390388378 787186708 84298683 188357094 340918176 381537396 972904334 984893927 788238246 946810500 195790406 670398114 328531925 798756952 11676570 964903736 959111856 983284122 290855488 429306676 642178342 723912383 896789911 991299069 450070139 669805461 455379467 736376504 36494145 621224174 247733342 343367876 171695961 507485126 781625401 822431510 787979881 908705153 257146482 322370932 618209749 957121061 420386523 488677030 292313686 523086580 930929351 975635473 533112536 990716022 513310314 578154872 304464035 357994207 624987807 825071465 416698124 645404757 534255503 546953096 427316056 601486431 519636850 670217611 315290813 523497505 871925524 901138847 133929303 899160547 84101955 227922242 163966347 266173982 20817902 276415111 175996104 706963641 72842066 677881987 767174190 972100263 657115951 964216947 164855027 540800440 770875452 806370593 991877819 994421760 213125817 707713051 925181195 977277039 424889890 796768820 760532317 974700106 787418630 788812333 367508390 575835668 333192532 465825089 805257020 916602191 848411185 875224862 367912892 735311033 54502227 512331738 252630415 967399595 641353426 691433454 950355693 994511270 470824826 629749900 969328197 994004774 667182545 882960683 887042479 970350676 373272753 698553284 513964082 997543688 961747987 962637739 117212757 298719845 646675660 844239330 937505657 947949744 646067778 785890731 839912172 988754475 147434928 628043011 400375700 544608700 495131586 497763077 659207198 689245647 812336549 870621046 749342181 819093336 317875468 881228796 95838877 810062486 427523757 643741453 514805572 822017294 687570424 775321704 854202305 881668785 441495563 860464655 651773296 952078283 832841924 904578813 424180264 928869290 982261577 997370553 222695912 515235864 216645638 430407106 367810887 723306074 342010678 687279247 717235080 996720388 623245515 824953695 32371245 417912948 769261443 929090841 493952011 721912224 780850449 911284397 856247199 924880239 39272834 221035802 496963068 847138834 192720853 983932334 765632759 803981149 697973853 943254167 265650508 498140012 453552517 507671754 240008965 313399199 834550353 974167745 850827397 950473446 970035503 983546524 273222229 310993972 784942659 837401836 611289945 643027511 421315311 799012913 23367737 818783051 996129879 999280596 969715354 982565378 657901895 984123031 919459919 996641985 261531872 320757287 840282148 863258006 584895836 949323181 918364967 960581206 343202000 662622803 456293525 667434218 451023979 669196069 25408947 45593943 605358900 787640048 305683208 543957371 394771531 470403570 800602431 997950144 411805625 881917284 932353503 957010120 357672005 486386736 70300638 907117159 518500138 689547291 148336331 951508280 551261153 791598720 292547207 704578843 295129982 834500972 808013550 971989365 506379597 800788107 504086419 680514848 797746613 847945068 69823957 694002141 129576556 978373545 973845191 976164534 476579120 782333569 310519332 514279490 443482936 589533266 289526250 724984133 972263995 985860891 966027015 989568794 565184433 738312360 148033373 753265682 771000598 999485038 226987302 625546676 777066091 934770235 137123615 653073477 712099349 724641697 645223134 966580755 725116341 899511001 256510879 856911171 216479608 310437337 834276261 901918861 394876739 658646140 630114832 854663149 947760060 990301308 943605598 954137594 166421477 945372994 343091896 637154316 210331553 546496097 899710132 959561210 429056886 597020333 317558179 645719406 453102168 763322530 383106113 459091046 179851253 570951973 586499094 945936069 514439331 924686623 401918817 751098254 271863861 713416907 921401886 936476972 444887903 462486661 430760474 594660338 827014666 936687103 107233304 857875202 977359867 978039673 346229604 532813429 418263872 537203799 313147181 858944525 806052863 923979954 66447703 521682991 175048055 473872496 570357032 902804838 971777822 986614047 458208243 978543491 229181524 657235522 736357406 800400478 284826699 671083398 527222493 728494690 202602396 701145990 628250241 782667239 206921507 911444977 333190544 945854360 250380035 620359385 934581648 949910056 333616294 621865411 649102812 895427204 312342057 778307494 418153845 985752121 291144973 477380067 113032519 798375656 361028552 548605015 330545097 997694539 176995613 822873105 121806992 406454172 806576193 974351925 383406042 457074915 956441085 976735078 931169467 970995868 918410025 998425916 42170331 244720800 323237114 855473132 232728923 625253087 730060802 763631707 406181858 619892140 34538668 186224442 519146750 556622261 101377529 602440443 727635731 914638011 213407998 845372436 749157110 940663024 371805250 683895160 830970360 961874781 285699296 795684962 883795338 919244342 988387859 999109033 131397577 522348602 741723563 904191392 499893540 759617613 109021548 639107784 837776639 935894990 279144683 525873085 499179808 549747555 245642342 390176403 290015720 636935887 769945685 900930890 89064864 112097883 786212117 997796858 986521145 998882012 983388495 998638295 561721720 673851724 24785562 519924345 803622957 825506983 147352241 596433392 702339211 988136908 515454002 945197038 666418689 940147398 475461131 770904992 718954051 918765526 524175646 552059518 566207496 994833727 500770238 827119148 776834454 999381966 848428962 884049634 520713734 596861394 611671681 949181226 96513114 976193587 132934224 462718679 776469263 927385371 468692406 603772680 733037589 782329111 461705606 647737986 386453406 783121619 767625567 972120855 702268551 926930448 119383828 545432161 556334846 715251653 171233915 871440922 79154869 697349012 599651557 876910270 719128451 838571503 543627553 839386153 241606365 813872487 592090725 894287330 176623897 532037465 227744802 353021649 100197780 350728943 554311443 698654984 469380586 706033500 602290056 607777656 205524631 302684665 474935487 573952543 499528319 891900171 178008057 237534154 760835525 989398076 706401038 942935534 67792205 336271709 343953508 757817499 423877172 482091184 123534915 598243493 693923880 821619023 820224609 958871404 640337851 706995743 439642674 504291982 570992049 600093401 203845554 325569402 662085787 979132501 809101695 814904039 888937099 974409651 830759952 904277142 36260724 635570804 176542694 565366442 91920131 432415254 186183426 792672304 795379153 943603695 553880165 828735477 792397983 797265082 55158207 92806998 541316723 669893521 215118972 450377020 773436311 907572523 964735500 994341374 327982670 388043980 585803359 783803946 449219563 684400984 647369755 727242810 525895710 581355892 582776557 998411491 6301343 520794479 358806589 925073829 356051845 617539841 391081315 805539737 373517062 440908862 190358798 877084799 571696856 895273617 766862246 837872203 914506884 944324445 65013873 950323251 467807532 619110284 551622843 712650621 191949580 671625821 387525887 771896602 678294166 803581921 202317872 966574987 254449292 686350209 627821776 803994067 750439349 825667124 713390381 796057326 549107196 825690610 76716605 102824106 404038395 905036675 61316297 80144341 788482777 986474194 204042093 716184828 537291531 825377099 276245710 669261099 576615041 630218782 213564111 727272995 537787891 874394044 37802851 606164135 643039595 881671559 604753168 824598867 566607324 638006641 931261907 941231044 27224747 93644680 333795828 855527914 487593146 731873913 71091019 514285328 280033905 343118326 182886198 554566097 502786038 605222877 310675918 498529222 691105990 890731370 454371694 739452305 323286677 396239819 357146270 479654366 325793667 947842099 949513721 950091001 319690728 551708363 914088027 937116679 708135665 717597224 213496956 249811839 552158428 555509321 482007950 552823269 16576148 781296614 644507732 671194231 961564097 962847270 670065188 884113831 899967451 986698235 756299152 858865132 969494175 998913165 994932487 996968442 888606427 918956735 336356922 493210802 331777624 640950929 189017177 904610212 98842538 410874972 77457659 258858689 326928668 681783762 853034232 902821585 916724407 992287950 837053149 870951452 381097007 826639322 638286612 888777142 864225524 934586163 546415189 841761554 462007571 564036668 583794515 813997762 38123879 920148925 561801457 622059127 697896085 718485095 122977324 976523656 195807563 317857705 261677001 528721546 799319480 803958778 927120499 994382251 666638089 708539895 265209946 593535730 528533520 592940980 450645740 467029394 974163768 992850018 523907349 673044881 621094677 734497911 793394988 822894074 591369798 680880680 633750907 978467701 826498025 926907647 597618346 637210628 731045759 947808292 600494177 933332318 999770306 999810180 696784502 949134356 724720204 830435898 176700266 885131460 387719935 458817488 543800616 718841491 844785945 972325185 651574528 971444541 17514355 49076896 650544840 883357276 532203743 748209528 185615241 790470037 382990416 823495195 488360689 777283276 519400147 897491013 738399493 920966433 431779332 587273963 47396060 336341192 378979693 452893222 591662542 939634992 695207044 823208667 367849717 387799266 372019569 675893142 759935800 994013834 544903273 915771730 7828611 528174510 737771464 856631442 861423756 948239943 361381193 843716672 23052534 857946309 102330764 221512352 456916115 947508662 6153287 733068501 188051681 779485903 961376180 994903201 474958071 782499139 691146864 837333584 593385308 633547916 657104342 774896650 370598572 995273735 389828211 650155875 941595629 956329779 195014430 642923070 329257966 454035779 410936919 964984957 173582017 367700567 138665794 948347977 253263650 345295171 201596473 280592507 653897679 870854895 34847691 794315580 867978480 956596186 154835463 890794434 854843510 894989555 258487153 767791300 314337798 778077187 254836314 535220532 824660808 912520252 115200411 230872492 126755723 577466957 613201134 839628837 471865069 678206276 33405186 989283878 974995951 992024206 103296530 215139133 790260679 980840083 51922882 889193700 193067868 468258808 439576670 449726737 570267505 722142697 18502579 510650763 757588891 906611383 394697624 673555729 136602196 262867038 186894159 615814556 86420468 186686898 589512783 816713879 593836806 896221544 284907870 925350131 592467277 998385407 827410196 875973941 205188359 664120782 912446596 993019127 684511912 926970117 596777243 815330112 676300220 873662488 141483668 843495684 639383422 692253673 322949310 901501766 818104757 900335275 637673799 692689975 516465030 965546389 339786962 549868639 625763169 806599598 381741330 545816325 372796745 937663921 869529754 954563845 87568234 883108261 457312328 757636778 273767928 535032660 993859274 996236788 578346368 650823849 341816775 817695250 51786111 296611831 13573361 686767136 278997553 848415564 469013034 730680652 738012648 908036998 943349745 982880088 535437661 884734280 37587775 567957535 436751980 793136895 612571204 691860081 862002860 987135484 547100024 611181781 491279014 855755361 809964013 899164671 830365078 887923691 416059371 539739365 685718680 776813484 913301354 965067217 607497147 647611268 480664278 939510932 328189405 415830533 913571119 936848610 79409402 528452457 685841829 750109932 849572282 975610722 374614375 565962808 506567369 778685913 606884477 729816048 420144608 627920910 148434233 798941350 748231417 903351379 14037319 156440614 129225218 184742844 376594137 558327605 33206341 499213192 316887954 555257898 162808807 554809458 71679784 759466509 570516766 633300248 995654114 998310001 576564074 930144267 155136095 998470349 92082216 703486445 822875420 978588658 797136034 943640693 629122405 981709652 339973966 986409206 319973558 638891904 54666126 122965900 774890179 955575671 991141950 999212710 703655011 746462267 879180579 962817125 31443545 159856511 294330623 544792159 283559092 613834409 506315073 673860722 757964362 970817625 489112290 596289161 304310939 902287309 622473136 877447980 174299488 395313746 841840485 933339079 997773780 999897407 758336280 820711714 560588522 856144495 771672631 776516100 19296134 385730012 942166516 959191264 123095732 182935524 544733862 768351039 452673885 956483336 402436339 579736777 751048573 972258304 413954059 679176115 85357701 564791789 743123748 865685774 91765306 617452869 501753499 697711528 241577776 937555432 609979951 713632722 105856445 205536688 536630552 613614996 801535737 974065247 759102561 839159758 501736487 979867947 484262120 840362082 831130987 892631333 866730417 925314962 378990656 982288128 782414603 796822713 76191113 643133355 74611022 860714379 943495157 968901839 401781813 446548793 358789061 744924992 569235393 673982604 237301688 277705948 448173147 576776085 804540064 982603182 211861222 291189241 314633906 854026129 807772089 926659672 991343973 995181814 636479903 854414743 943930244 981514429 794698080 830910352 883619771 913309392 288102238 790670664 138167690 287758419 22929255 987908972 310699576 510000274 182042934 920950390 463189611 856892087 771290174 996229572 999691719 999720669 53982066 144058719 379637552 431142654 441654368 770558631 628755814 953290716 812978324 947737749 647691837 854956385 903428043 999342618 24106993 879390868 546039753 871500742 998789664 999811093 964584812 989189060 81264930 898816300 896043470 954852697 246304006 937268694 882987930 941188163 18651997 974380062 30916921 610093874 670911605 794857290 407428779 633493673 136327140 402794641 545734508 659112799 602239331 850947796 387681491 616180754 331461014 908046781 246625392 503068321 588806446 896704574 884293786 997224011 446078896 663616413 328943639 820107978 524520162 789742968 698575820 809350631 617825433 689512473 483982878 927523949 863913283 874867501 155254289 285569029 986895254 997677297 760186936 812822469 47497601 397273773 206783001 377653951 578712111 578743482 442036547 843947731 497723040 655088026 45627076 826004704 199620971 900204040 82872466 897086814 124066651 746338464 169461947 380203675 989562226 990091227 49910858 783001467 109169777 914552050 454277933 880383910 942251209 963598849 762227273 809429762 435504457 452273939 667701222 886921558 54017734 535646462 935361202 985944582 878098540 896679046 161511645 431195943 412778085 422069872 238905746 777511483 363913876 915070427 474068227 788108554 678887252 785494435 108701460 741656110 573118926 640194118 685869809 843596701 241410585 531022654 31219862 481583391 620794612 818073179 322634723 951229598 542887805 812251223 514555003 768008381 661607278 930640255 202934081 668101674 340803249 603586001 668893120 857902039 732780357 834875011 269608050 840120933 487422816 604361545 357698258 791855466 121457529 228146407 193423515 613422938 514413055 616563545 347500012 388919868 575858307 659855506 622147190 748000217 456323480 971887722 463493610 963721532 625835752 739994565 656344916 660819281 272504756 949699848 779156625 986147943 233616164 800353198 305438520 630286709 508653 609187543 130201985 461253679 687040154 911100769 966264192 976034069 331429928 436445807 665724929 799666981 56996632 583617614 162288643 457082229 945029004 984137139 606050757 613312706 740480621 935598593 231508714 657771346 70697293 756189244 76235858 620363894 598011541 996545007 609656828 776021417 243886974 590488059 302451780 739875791 705639114 929678352 626211801 901715834 722895776 926563809 473231353 838722428 579472792 876689495 739865502 930516161 794286133 993131019 299179417 882451580 13707849 472628001 700042810 999853439 445415220 640476401 320233091 427952748 159826029 364756006 354872322 769754289 933288986 951392613 518288866 812057604 423364595 521618359 383838251 818345394 96781379 162171111 804856105 904834160 810838301 864595980 314473464 643524182 252207007 820710041 698677887 999161530 901349738 997146031 545067224 939078599 490650472 978701303 721437742 953984309 366993571 481476104 515993930 848507287 585618219 873172787 469751652 502722246 796661146 931106330 133098727 468199432 498293057 768274212 347011538 619118398 679699325 865125047 281927722 441398566 83294647 187025020 895155399 948578276 156891718 859558585 758737838 930489227 425035544 534466419 982176709 993095412 43392822 403475968 696957728 917623707 911300354 937074469 541168819 563263662 628207696 896085748 795779064 944501037 143505423 558022017 372745429 420836374 246660950 328998088 994529863 998931120 638187612 916454835 721235622 869504140 424373581 676747806 838070023 855353497 318403007 458143971 909558130 925025112 61573888 491979424 952659584 986114680 660650408 899281451 137606548 986251636 813032716 888411981 489030916 817934975 330398696 718408112 282517894 536016442 478769628 727766427 420920058 961222292 741110151 977365372 556516424 680974594 711019077 948332907 171027565 620259992 898759649 965457758 815428122 995209213 317699242 385497776 74125749 512317052 443955016 564964630 485068180 563746936 493018950 616237383 139751206 334549868 888506114 891661295 683437360 725530260 201592907 302743300 382696044 401385181 219883645 768001429 52233848 272382272 309604716 834720393 929759261 996838337 959006738 961991601 196188152 653292213 264999646 470598680 163464868 646268998 568307710 752671092 175987447 885807242 276049540 461428528 938821544 973371561 58004830 870197059 831907551 839686433 870167844 878274188 779141760 847155511 633084224 884539252 857600207 957053470 656182490 980928901 259141430 309712005 333267463 908939120 246678539 324792221 736863026 855192575 354334665 485927631 992735791 996583228 488927008 875931113 856166870 960821263 981648143 992041324 996120269 998480933 30747480 587778194 530225347 664000692 529868023 573141445 944040326 995433813 191276761 644927413 887425476 964218759 421781183 623557009 663148412 855573630 899158686 991679243 362599348 426310194 710056600 930438428 180145778 379979493 33345202 674542724 770311214 959122721 898638947 940727317 893899443 940103626 66634427 541313533 182399758 795648566 653164972 882210039 216890590 601060635 688219444 878373549 582295932 783757472 550933153 658623023 863148663 926848958 844369519 998404843 874788952 876838048 433479348 779619687 40583731 133830405 973237614 989433466 135228303 285215203 520123772 795637450 991163666 994462499 500401123 810052266 493272885 569153648 715410877 905983644 943270706 971402139 743899205 763867740 659776227 775727526 315216174 533626863 821259067 941304458 910810601 912990505 617517427 707414264 355189969 916303417 770272170 923424606 429120561 563482860 800846653 834816691 649686967 706338188 70231972 661949683 708937760 945112992 144933353 689473725 260615006 846672635 258760517 623838573 969803065 977757178 665061075 849577940 644987649 937038957 581717528 713405265 830589874 856074401 509090788 752318399 507182012 719418365 954179893 982646767 88729937 317417606 885774616 915904044 803800632 938628286 614097735 811452331 510525905 956669663 383713304 495553235 134195714 516769820 460104636 883696262 968906744 991693389 602608563 884503118 937930492 955865816 871474278 928762841 527016641 565931782 191848822 652583257 983922771 999614197 943075010 999416425 356292590 527229476 582803100 655317818 586246082 896752459 41180616 910008944 706696856 977510750 573941067 915496811 600026502 895329156 345980872 718918963 446727891 749302930 303775043 557633417 674130562 873435416 118396238 884743342 145246197 497177509 368062401 998317604 890302801 961045427 298761127 574982907 271865597 684596440 708758239 721162460 998022187 999231282 221412779 800689994 285632194 439935570 940320082 965331016 816893318 929021131 498455526 948603984 574737949 644624272 847407142 912355473 481344018 782595351 141743622 780745508 699736172 968667956 746701550 965362415 793851289 871531350 183058876 477338732 897076291 913198638 78423761 852393676 630127462 918669877 828078335 995176673 646774105 713198219 907511149 949201456 279228611 828168000 764663151 818419513 958860914 989912308 133128161 134439896 796131322 883014723 359617528 368700835 210059862 862224678 948077692 987021097 235735424 679917567 78831350 641374448 370754945 973722555 131245792 713536647 780331108 845877593 140926905 554360847 132086926 237556819 987426254 994644496 462263465 544559732 307109216 557399555 790539479 924299799 593252881 953604463 790932875 854765767 835349013 959650361 240226861 966452332 997825138 999748957 258696653 467538909 158673712 393447939 6836127 585917862 75288596 618855023 516153738 697680144 309199747 879330134 64509411 554870453 902140297 948633215 834457517 869819353 291268656 944920571 407563112 832545036 722540557 937133438 653771905 922930062 994557230 996887220 842024293 862115362 749561181 976928890 897831741 960878844 49505059 161533443 125385808 218952853 602368718 738927660 871379234 986069588 479712387 869305256 771387757 775297892 586406750 880866693 352847593 436607849 212218703 998481315 45586422 196799258 241283998 810241525 861406451 986324093 242720171 471352109 57195108 838765699 607267504 791944540 539850949 723233769 17968049 548589858 708479483 716631411 620863898 757584599 680478445 730106753 192219315 517979353 640126053 963828720 383163350 828532375 309907621 688184132 23340185 128623175 994833173 996519890 755282918 941875975 311392657 916376102 866274343 896367131 401890970 908099642 909568947 998943764 404093312 599999127 944025784 954681769 193112065 211853268 208532917 530949635 625983632 998235044 109226918 583545564 101679883 722046330 444377480 523720521 451266257 919396722 332564775 911872104 439473938 533130309 214737764 798277335 2692106 34686715 118926864 458712002 891983179 923057711 398754914 471914555 622730329 834098420 635522067 818872237 552420907 761272557 130920318 729978514 983995188 991182566 769190143 999536042 497385280 688469915 151587835 495167720 772410359 884310783 659424180 899727836 489515276 965394890 492856966 647566140 939656637 985251844 26766029 634781045 30011249 301774390 823878104 956112484 264805473 346022028 723311666 878381313 555150706 856558562 752391594 850156555 91838470 359637788 355673142 486529823 778403958 849575003 383995711 505934744 353207428 434956615 759246787 934243969 307424509 727796542 126052835 535148736 296700402 770978674 189301003 996444369 423173176 839680376 486735143 671854037 592127847 599734347 198028078 248444381 20243089 605299881 675504173 875238853 96180585 353461865 814635671 992587123 219305793 565291591 811940722 902071034 89600093 361703296 730120165 824135800 402718458 490907625 160175115 591045839 759943842 810504772 210201455 897138939 117542828 884238435 986307932 993308425 681290108 757664337 279057110 373382606 471180752 757373595 59999956 151323814 543696171 862555870 597170691 738538359 913638702 969670659 32915210 34584729 249196831 651473971 611722214 996488530 792721705 920287655 207376274 459928674 94196888 756094235 381727831 729194656 299023435 863117403 900775401 997677969 471184442 798847552 434186133 620377897 981700369 996825458 80633388 793699164 379525654 478320808 549092513 785152164 735442714 802915136 273352008 518374345 887927994 888336039 885132994 903730514 261954395 400992790 260082243 852513471 291564189 431516649 19815088 579999070 201456086 671812854 183677796 799708571 869650037 940740037 228201196 704352905 432905583 753193401 185147870 402036801 390641588 992375084 261907558 447648595 34482521 558381166 975606832 975754181 319545785 776820907 812576280 963486511 38818119 182361929 348266568 398831313 374730002 847295531 833504836 876793285 630975293 760431442 183787970 290297125 737800635 961951878 122557105 555148477 639359175 645316960 313828907 685094250 854678463 950739661 599939919 830035219 183296874 222252698 739363265 801636237 254649468 836134698 362885277 402677172 473653534 884358681 709427668 923548224 616095393 830262593 941030184 969626987 790368534 861548733 620594649 627957726 668013710 780435603 229144114 903637397 812698850 832283614 132542607 927094784 921903438 997283848 688333977 850347402 411079975 753371461 138834525 314764790 140502527 504538285 755382398 834799212 934455979 947739549 962727663 967922792 67118230 303492606 661422022 956653674 303434188 538577774 725626404 928423079 267539034 928721047 978679788 984361721 362038604 759607505 765286232 850797462 876590775 920109228 282669831 705450372 569810709 799156345 572274235 938926852 954566093 969328781 615363483 984894504 155180810 619241263 474359757 675519926 163731070 991872446 757811894 788199206 941686549 989204519 170523035 194018946 642511910 961136317 408928252 692187087 401155180 911004477 810014646 991430945 450447391 510306266 327733211 963394618 484473884 923234013 949670593 993579990 866733000 936233589 850502528 954157357 797412807 923753011 228165232 504512808 622642522 675091412 66200405 160587401 538257398 987743295 222035475 254975865 232933841 432993081 212943286 685004469 706562947 782793601 875040795 920709269 769635982 773245978 909475319 925971902 98327022 308282090 594163901 813657305 469855401 607951655 172146259 538700396 234636328 890111055 87955079 332927886 798232888 902087686 569014722 893635364 70562371 99740500 85078680 366973240 245531029 309979637 169641580 450769764 707389506 896099831 557320337 765855722 465902433 926683910 456715299 483290119 514435684 564961556 828322205 964729249 50266356 930423049 474332071 916005038 189172030 636733590 830664748 930180226 609902856 721151527 180927745 814045253 986180449 998667537 353168422 501464372 711997405 830974957 528611890 866703169 640903351 824965796 57816821 454775853 977518855 982684372 741716292 901759099 22405273 451264157 958836441 964840504 973209208 974188500 621121549 847999259 397568615 796727278 694728217 763606088 354105650 915915454 770053006 937692086 402528714 513350086 263992470 847076176 847246672 963727284 126541204 539167404 618854338 668204497 418318353 766005448 590624884 961379550 914328496 958056167 237623179 313153740 170577990 600132362 190924315 825995417 850889796 924046382 685421284 954405525 753819810 907426852 396730916 415909552 117510953 253014680 33927570 930919601 80254806 971615437 981814134 998262270 858215473 923770979 945231940 987848491 135418673 414997095 563493509 879562613 97178798 114903205 620883516 854768144 572432474 932819769 311303126 827658955 775224106 868607163 204994464 416189035 723296250 812658182 974664427 983610969 340574243 788314631 83779738 439258258 164605639 212564619 861749961 997925502 576740513 926740841 779324197 791035569 980507014 983642855 124840331 794938752 604768141 857379426 90477872 145316635 696770081 871168223 405039491 498698088 701148905 785963005 515440212 901631503 167377302 921790487 933383143 971613071 396393381 551729189 926692696 986849577 135707025 203517328 555436129 852614016 927238292 961604960 964008085 971247080 624842727 799609682 421256739 874471543 560371666 737632953 423377272 650315393 543447691 545892773 682465789 782351291 678381651 747164941 634666787 851443087 65488116 321002805 190234532 875797171 516652020 992808515 489686554 785068125 120477296 255872604 792549558 926300753 539016150 748221487 968471920 986841984 857697862 871001528 375448936 616821415 520622596 875097482 17203348 806822739 277332471 778078539 563064788 997454399 285471951 619715447 466855686 695771628 760909088 780261415 207065595 316778819 903265530 972887495 281731039 760352290 3548112 86628655 153098695 995291993 683434181 692129057 146136184 911334895 618696462 833807745 73618190 795762684 139018415 841277686 787964150 802564219 204550763 503971615 136091625 884918398 271916568 878127474 702687068 878625234 252814812 446334895 451430396 713231069 738262941 877593711 782427457 871609023 297533728 797052007 84565374 960182796 904549957 953576596 21578175 839240295 457272477 590904450 920298942 960282458 766020683 779930492 562166134 766666646 725811533 920788459 595697025 831315449 791391342 938953418 899725051 977324483 406906638 900805617 248543149 700657846 612006605 909150066 811980169 832687114 108401819 662955890 759744303 826044549 540461005 572278691 61775822 90520558 696933889 702507884 334691873 804140126 167437831 428241077 340238380 356272161 372299732 709139247 793923389 833962832 450414900 477305224 86032731 680191395 636621707 878898294 449413599 710028548 344586082 964215846 833912056 941069578 547713950 593472772 994114080 995829275 270386959 704520971 252469803 344653388 808868817 976991193 306402191 308932402 483871547 626884571 716252551 897662194 558681225 805555274 842132385 949695293 150152273 973230349 226764231 422106777 914164821 959875666 628682596 819284993 214116424 972839913 24682670 779925178 237503453 399561714 808816603 929817394 908713273 983603117 724107680 820710589 907844479 983045348 755961905 891394173 753329393 989351131 268938431 296877052 622722067 780060036 885992890 997190099 572474645 816176922 290139904 739924080 827057481 887145430 151297256 824963159 382366572 439238744 663186204 679575191 269767511 861592450 505060931 663211658 97603277 102078393 221837649 778693980 635802268 791110782 888049425 944109191 695715389 997761598 184290811 935422978 398609622 669985356 508062882 590247287 221810321 412957822 337483662 597288268 929477248 943467109 121134248 929537725 462215459 623426620 69250635 903949779 776137749 945394256 680029021 942536669 1672125 10277770 678279214 936730668 873338224 877319699 288150169 330336733 357946132 388780753 420565741 876579768 395787009 662848317 567637962 695693880 675041983 952755746 3532791 952469517 531516613 825145535 115421435 730827927 511090459 721113746 498419174 688533364 297093231 408154647 246965860 827285139 280850965 382514203 169252471 946485974 603705052 892458907 554275669 892054185 635640281 751575348 785256995 811769004 928985225 955971656 571178943 668534620 93166419 492158941 198110691 725487227 289055139 620276437 204922599 995013019 219827091 431173264 583804930 711769372 429321786 821075076 703945450 824351148 542676549 967209566 341631393 740949854 750448080 925883544 902014993 971368964 428393962 465448185 382670425 885219633 407624586 676692476 871563387 887688265 985222647 993891588 630552083 761505234 723628374 733163920 981335746 997735517 816381500 840293578 219334730 829747662 653496155 673871144 257748961 934687000 837963940 850116593 697619270 704363767 452797672 553207852 479633016 597656168 812940246 960059198 159294359 934933716 791828913 902141831 492409095 707542804 740768444 823827638 557252908 701516774 890741488 964736480 173702685 655321232 219090091 327557677 633633469 950378532 948367795 992951351 548105314 566601346 112094497 662143541 46390934 440349617 821927365 886318316 495774728 889178009 188938212 718800336 180890436 482224921 362502399 937089318 192606933 271123753 420112560 851636184 661810334 859343247 527559778 687238955 375833898 616281801 975434025 976182561 781307545 860769899 84386545 473792488 237709635 376244913 433070379 908773242 838847397 877013227 279749183 994717731 53018046 834506683 699564323 909963586 928177523 974365621 443485027 690884203 749309994 912407786 316704271 883529604 477380651 802491762 833601416 885724433 71203527 796952638 580974676 681814753 114720434 679831726 391115575 969060476 613146298 735624197 745035640 842264723 286937225 361106568 484691594 763115353 143666895 722794863 426238901 470791320 297012362 995629351 606550469 646338976 72210555 717196758 207736057 631899504 472121500 611163719 435606432 955534774 906445743 983284509 301460804 716458286 740893382 758477344 907695764 977100328 94408045 450746252 253554631 275894539 617921216 801402796 354034272 682187701 152376577 636462303 130222061 275132783 235272160 369543725 863294378 879402841 704185399 786165077 203924072 763263734 291115141 464832230 606997672 622043629 9314431 264298828 82790247 422643132 284020767 539491707 685128788 861168759 457427700 866974099 99036962 130148470 374619872 699992774 320963822 603035225 297955864 659145858 817517803 924598144 699459014 795401543 473263379 634480192 770243280 850596642 572972012 651179758 77423334 83883795 427531294 745458066 924258384 938936115 476670578 580688630 138771288 165419251 777263366 865399212 59304271 137222292 859212209 946078469 280617811 419494846 150765732 805404224 294545511 939342520 210335911 243317732 166628660 636805266 878507394 926098403 287665990 716989849 976345502 982707141 442998435 602580579 102802170 229578463 95129553 840845999 440491311 580231515 157006672 860933555 621917360 717912434 840633 249988105 275904208 850583496 651417527 788549298 307275426 386259437 115297535 673542393 948669055 970074542 358593070 709398743 327453231 470181846 313607433 969417297 487952122 521019860 236926998 375731186 275983455 747473932 821903525 974442134 246621004 247342885 176747831 339306099 556114997 910290879 406810130 998794803 614987647 842900465 764356870 940657352 674781568 700775315 757244959 881636322 338984914 488908974 496121566 794687444 677605722 864551288 507988332 772502088 21116918 881236631 773981193 930277142 37915699 442991108 655353609 675588879 18887957 452845760 408122947 768337063 851974530 991208339 243279238 425336695 96161609 627363577 622215527 639506889 405045198 591777873 595174746 705248498 761344744 864014627 660655754 960485636 202384957 390537767 93330284 281098076 726778018 800051355 229254929 731459274 617347418 898635057 174993479 887522207 325536333 686639137 471257687 851334208 995725794 999447477 832043011 967959376 793375236 928166738 703737881 831140024 156436511 952946527 568159198 821595523 377574933 508913438 473825735 567522883 651293258 753634294 13640178 329661476 583714191 867806127 618017164 658299888 79430044 838381946 702425591 998522563 121243804 612908233 508733605 580905113 895628681 912180037 171866195 428362890 26513243 785938490 770617659 876447743 352238401 518479607 80686309 675350339 416193943 500678376 736501853 814949876 346000286 914478103 818123368 850561920 543809427 729468626 279340567 881657863 616763396 841588715 679254913 711650030 483533252 969787135 718700315 794074455 338162459 898685798 562262314 864136355 418784002 948934261 699281198 749567411 718666819 956493560 40801489 759971548 33856563 113228262 658083795 660761892 432842452 972858855 86062430 904661742 554636423 878096238 140467747 315585693 505925606 829311641 74006848 631943703 495163247 830558250 112094068 521523328 586356817 908495055 291274772 936338672 96715585 781513833 295028245 626175728 913248262 971273512 595893856 621821253 593532956 601453939 158202989 858373504 160948347 796159580 229640436 611658180 206045145 945146310 842672982 909514573 925173983 958888861 466131651 733822223 695228623 877827233 30650437 332538547 671771028 737600419 881982371 914425563 210334295 669534810 685633999 717408420 489419098 742644063 608694574 678977162 6042488 588446882 264711017 699376500 512982600 662447279 612771553 716099520 857274456 977451781 67782279 184141265 415607026 585260809 161439348 735478050 558195697 958782796 619813204 724618767 705988309 782429108 174759769 961544117 394191256 751355749 385799980 687533932 802513374 887185729 10408511 79732557 904536130 939866888 267104402 550982539 956160102 974701849 769332917 823009616 363001499 678740168 257943498 966256160 782970637 874626605 36558481 437395590 429407115 962383617 274770098 440235010 156643904 389658216 541713161 994620360 590464510 931968233 64344052 604332909 497767165 814897648 52646444 430219481 916799026 924850399 930249867 967600540 995627880 999291375 595191050 962690787 347124103 746630575 731841582 742781901 176091609 941773868 923885855 972745569 326157869 357804971 624023368 635506803 195201432 424079319 96999547 259660311 419988947 682884972 95376240 327104926 552359772 615859629 318856782 949840278 91355166 147419405 757754597 945050709 877968030 966809779 808934460 914590801 597860027 974188331 109036404 267561266 264506022 959614940 181130545 528264302 270001304 830041967 633525347 969608530 115544141 695278441 418131537 777909083 903913364 944238562 267093547 853041880 964839797 984270640 599954639 900205450 720285918 881444614 613605283 752308038 21568732 599127217 858903567 966563338 822685012 956479897 86523159 497383682 782655037 994407493 458214422 988596871 862046783 866527038 781939799 849156777 888155680 909054647 77700222 638824117 466316209 736396953 507016345 730509693 525091933 871903640 708398783 971975843 511734223 808134164 609400124 641784405 642781874 697379226 686918881 770810147 838686669 982225358 818865849 819822184 976880681 982394808 831939485 894247701 934320193 999117935 92252061 691049444 964049312 978550671 839390933 884635393 941479199 975374312 844437137 852225996 397067941 556840050 129031024 607779155 625423245 809959980 638429203 749906068 222110751 970120358 573207016 767369100 790358956 944712565 756152384 881486994 620427761 894877356 793345104 888419049 539633705 885901545 172492039 785704632 402299159 956133091 648327675 869188663 195717435 224225510 383999179 710386817 135478543 849912146 845494288 976214334 228580382 373417095 823242834 913439796 885707724 948195322 772743622 885023430 276734139 771968534 346473258 365254265 520115030 960082742 869764183 937315657 691698549 912776880 196644374 221903599 942836194 962803538 497379407 515139821 67788283 803201414 270378935 392626335 884204153 913680918 411452934 716547518 792359125 926300879 74272583 552858129 775894562 786686009 350202288 846305239 964883987 997260265 974037723 986765582 11263956 175122458 187710353 642761659 288559224 628250892 158061811 725893960 816219194 974159655 502506685 570925576 486328376 867018290 98114449 231421288 67909961 812276152 968919733 978421393 924557730 969711330 80866937 513145938 951682736 987272715 186580986 661140878 67938737 613996445 712523329 813782762 334133270 631047987 790980429 808858651 504753734 561390515 537604160 875287717 505115844 590189919 273877823 801314523 507999184 769355137 854095100 966974795 885534633 937908773 860437226 986127400 715822223 740493605 535122057 915154400 277870705 591091090 239691177 653609513 785595890 937388674 728311218 861967608 655145866 662725748 97136380 470308966 285359269 289438371 968768139 972468817 876731439 932171080 903402694 933453569 477137040 540176635 695133413 934343535 298609263 944374452 658935297 819199647 184283883 878205415 336002286 633953547 680243929 754421284 514993909 865516456 300174184 984845111 855235883 896887674 48751665 966990636 719662920 907149051 689138677 934507873 375303960 927693163 713878282 985607774 317338652 649487083 148164493 258351370 376218757 450593019 306908693 714986901 250657166 545481639 724552507 776946034 776668159 797017201 950838363 985331823 643481855 751649197 998603972 999114248 460165789 899284877 97694378 117640537 224509861 996133661 524237198 769533007 972281065 994529027 2218727 545482057 849280656 983746073 605418729 825404377 548726206 957854259 863059106 884552240 36209726 148614923 910335099 992386789 644260960 811134944 712478436 789513222 237195181 470454800 336616937 789994242 75485210 504148856 776577247 938341285 622319056 781255891 22174352 714450341 261526673 696231745 919082515 996531791 657976606 949555087 220462263 901922828 899910003 983244437 118724195 971508672 649737724 850088415 421704995 781998936 492280219 843122689 47909990 515472788 937949458 945139772 405608517 543233097 763590159 766493525 568721679 831864013 833141756 946913867 504940453 689080746 993688528 998534535 378153034 922742350 734470466 979780273 699916271 807345512 373105353 645491282 12624417 755267525 432994981 853074208 518136945 771687677 385287676 487587276 356703022 428993042 505898195 799298364 532797499 768222946 331176068 615083611 174258275 996440083 355425152 469228541 895714316 917373812 959063476 962361651 103185952 812052969 299732221 425820656 17739795 80620175 640277930 760178094 731034291 900848675 240241351 386006796 797950191 951347870 524009695 934778293 449638284 564150193 530286511 891178181 13243190 301616200 618376894 753083942 743175354 951330861 806735048 821345740 469223762 901736586 390358901 953748978 81400642 299734850 337950352 410804960 774328003 875346558 380962636 885461340 668188704 855972000 32311835 460112038 35786015 840422048 463922870 850750716 291354842 471115494 402842271 942336778 492471028 865089195 853233919 941213092 718654292 884767436 443675786 962762501 616356710 729969471 894917521 954107952 280764845 999819361 504741805 516613129 20242970 289930124 358044775 968362384 440241581 798614550 810731978 811154968 999906496 999960809 184251981 857470805 977986932 980534611 740164495 792889847 353844339 796709121 460723078 989420677 576850502 651802096 660194261 939581596 745877719 850996048 261437129 674533000 688914847 832794987 809604532 951656054 715588686 977657530 305363286 519184073 625218122 796522637 69771465 711626333 800950271 951483781 291976253 884197801 209321509 488953902 141040252 914145392 694929841 771465216 97368204 346095075 648786675 803770624 992075911 997431101 256099174 785325399 732986331 780416650 183710665 654591942 601903754 888960864 958620021 959274952 81434576 471619876 37457272 446601957 947777128 965672589 326017596 533846253 825394542 919668393 52375305 247477008 722169537 741048224 410702320 843615570 94719577 166930794 982703603 983464032 892556101 944594323 456724194 998516448 677566846 861995621 537914815 737311874 268816769 804911062 668823460 759522298 809937424 995378896 320433554 875992873 916963383 984470625 330911565 347534959 551949547 645316676 127127767 607571947 956114695 961504671 329706702 801927975 54491935 662831090 413658297 657414010 649560072 810189030 749378230 851075237 339597343 711009793 164379806 868735172 164595002 804846621 170253589 250169049 778772873 983191455 386867434 430525569 532755806 728854083 627024645 972715560 400070826 907866898 482376380 899025815 1252639 310771012 895146566 990073808 782486785 935054261 77598843 322364325 273123604 642600348 843212713 908554935 372863531 464509940 781805153 978871348 534463747 582485861 263919514 397497184 669614128 758258210 859714345 971171004 29847922 968953218 539376330 893144295 731113331 842734857 295443461 663021800 765120714 956188445 182539317 386741322 175246849 722206182 958583798 958952588 73235690 392812178 560450187 873738952 986028549 989600276 470244861 706150587 646838432 969578547 628687173 708719278 322935296 964789548 845565550 904902738 743391774 773499562 314531990 597612177 638223538 661161399 282870818 791874906 147733852 731343455 540049203 637613596 267989799 869179269 374741557 527766328 858764643 885234718 484091940 931636014 113646426 944527221 428486994 809555646 819218565 829053479 836448371 971351923 987198027 996272106 117798887 916635141 924964198 953156970 632029157 889103420 904507101 990968552 722603336 734762201 60530550 872539491 693849423 943327568 937375236 941906343 11378253 902842932 342760010 787691735 923506177 952124562 66325805 517346739 642199498 953851904 414463981 421691755 606079078 908691753 661099654 786907402 699896082 967421975 396390092 969194066 635732809 947602147 269648083 303351365 612305652 800931293 616827506 731848639 240220109 366414995 580274866 928256304 712563293 793634406 148565647 193368605 873885583 985954573 237919488 868495043 622096641 850578060 17112165 851891446 738346439 977024314 926459330 941949977 155176866 997512895 106654490 736322115 933819905 948757805 325993017 804996229 974377716 984081395 109008713 802867990 994283901 996073115 180910820 723340037 866663068 952468387 153453427 378625831 910726052 987602402 682823663 717109489 47243444 551145593 719260630 745351897 405258761 731780148 613608998 945412775 594820441 788399181 775317901 810091597 508824216 571411191 729235999 843742829 118192396 301048893 66262753 973957053 932449760 951358020 275632898 421918910 491069147 666827764 955561184 959658741 725474337 944169839 507468755 930969738 121863420 553500360 229470203 980428410 277303213 694091015 657220751 720041335 25504569 714909519 457402854 777251243 603394739 690084311 713857048 953628294 233411947 375404486 210903947 856751766 454799628 988355263 842396931 996000855 645260079 905622226 309149906 500680410 782061118 843318700 734423893 856799290 694727207 874710734 231325605 903378944 867446227 939930968 977110959 997840578 264750082 703434078 68382082 982961661 305225400 487700661 201859500 216361740 620680546 988581223 643503059 929988448 61396355 189564985 42475482 889249690 880726202 895165794 620835435 987955768 143118643 482114808 8222328 780120783 468519847 838762191 484845386 565366900 302080187 723705656 729406417 959553558 174791640 634422453 424599123 790089838 684699830 695152109 903348711 996173074 908877641 949152015 965908985 994376865 140032674 158259536 491457890 729642154 620942092 839353934 115757271 842640127 907629481 980197645 101623110 803047301 219741702 986844687 663206913 770688054 279028571 888608919 261888027 384559998 611370390 916581170 559684094 826218107 609014026 630392767 820299511 994740960 835850491 994339391 781878531 980623869 144179178 444398887 511763090 540990417 424660105 784698042 440218197 871087444 262935226 388715817 808040841 886295439 674181111 989093275 647105640 926497684 82067681 504386929 569380141 931954096 242684002 912857240 663585011 893391751 41368914 477044107 2831503 474902861 168619226 594536774 304733265 902490095 855753531 930056691 429736503 485309229 665387541 931367301 626133986 920215594 776375789 858110202 254197982 672909611 650231935 860269982 684857068 751315276 566167896 639581880 617153131 736187433 793929973 981244403 873795317 997228278 758025257 769987287 212775154 749059969 243434812 333052718 726525937 835945378 277739620 972024026 762157733 910170695 78640 572998418 428883691 761115782 791163653 939182038 484500060 764956673 151619482 998139946 457181644 549612392 647320045 750012315 128751853 603153711 140130839 566566626 166050545 478179566 270389911 974440414 171018742 772857880 260364343 987420366 234550121 465495625 324594643 591283564 617571169 817853548 27768458 448951383 280960044 982196476 766839142 987150579 32579948 590664572 701912904 963439026 366154130 490405654 349117964 594760506 773107539 906941080 638002880 791247677 574064956 688055858 815581939 845391574 309815342 745815624 766559427 971686954 786935862 930911221 164328899 917549245 730817920 853283436 133033601 657329156 116845036 762835564 738966047 771683564 19419234 283758641 22551965 826683765 464540547 828865683 620609295 991180284 773552526 877249290 749347050 937848112 414669599 843040744 363151187 893180145 241363637 439931389 354391015 959090997 884970526 924729858 186901472 784274897 181681773 382737812 481015304 750840623 889995730 945678675 869516016 937447770 257514397 258356387 740772890 839035483 220105403 407177179 370192100 479905289 473087700 868293234 758260349 976156328 749530778 908200357 510237411 728340023 365930800 764059686 417451970 787252428 341105264 474469678 143308096 289703748 31675861 107832989 481364261 847192210 193583089 780494677 362057109 714098467 528396029 755162194 805377164 814358560 169192461 840084032 792678538 851462473 27315928 616447990 429388843 876185150 116195785 544168376 835602832 976600078 84269285 779691319 252237744 707729580 710101154 721603285 678101535 860433740 524716047 593247412 256243639 297227483 2497390 197073874 353908216 596279711 570661696 619580594 543904490 857467488 96488705 437933805 133851417 538310020 587541210 717948959 687296927 880256790 99393113 453435968 396043590 886682142 962795231 990971633 888545578 903499013 557728556 954741789 624510282 625715807 491703647 629228869 235900356 976656102 264995180 509555808 37015668 810924674 243312911 916878977 143098402 393054722 124812395 175418155 758556350 998516374 84181401 774278358 670189220 787570371 545204596 791059048 337539399 609461492 369421849 801880352 721372377 860745074 340266140 685535513 753510261 884895410 487993269 743231918 828131486 868826833 342576545 915739094 509389358 739959616 556213705 920167920 7890182 178888714 636429479 999194855 830000208 969007707 594102394 785011537 924493070 943435405 562246762 613806334 309517887 755633728 145621406 499693553 756178418 948947665 459704649 999402315 390880331 444172512 614259033 639378756 793378414 954779464 588095322 918915652 696206984 841999600 338388542 640141625 484267643 874518895 937118690 998749052 526991060 640785397 495670338 551514810 87081602 365057335 624276584 699365086 921785306 938190543 508452157 610875891 90676649 440301876 118940879 436535237 937843496 961877065 129190460 670450142 631539111 820375710 762439520 810303101 614740092 934864302 815857277 999254416 970826567 973722840 51452388 259428585 345809035 724365826 86697156 713741749 529143331 771698193 666751089 679085323 751937704 889098491 975186111 987472668 364461678 536449634 485943256 950405424 175260110 597464017 644257264 762799364 554222738 654508083 572115756 694536723 771124821 793191883 724021174 866395352 334448858 814128709 41539610 657138160 548495101 752094118 932534754 951299926 672923003 873359654 611456210 645607985 382279961 684684783 45008283 621955959 112245866 335145453 579430688 909690191 952710396 957818729 881765493 941606102 815505014 887384828 615898790 698798942 691681841 794891953 328536457 665430613 178657437 558983177 628857786 849861859 500219512 604470276 801153761 824482526 787772071 855099082 267522998 450894168 487702731 696674483 104394503 603845835 719300395 978936547 420020369 703618375 808706129 954759988 522359313 631590078 919079676 983892019 98193007 929385861 695212078 886963413 819753414 955891700 254562258 764812779 691431072 730246760 692030162 702903981 569663814 643566900 771253001 863705371 882412237 988603304 987600055 987971755 978152454 994946591 50803735 272692188 909758262 956746369 680091867 796322494 722181098 744671695 789402858 812091393 41294472 155947834 971064523 988840434 473115035 974634037 265727035 467070284 593845318 698948561 151356753 507050830 498162306 994338188 978710476 979576654 106226093 710534494 304967445 409748263 155119531 946461014 368329398 726952224 726915752 947999642 951700564 959007849 419723794 896764383 46284011 801482722 682715107 898116178 245120747 581945004 430060368 444484858 341757445 672392749 991831692 994240886 213291926 980540486 39531834 560295820 724464578 830586553 458708355 514547646 656787282 851801869 508160692 539747859 152550837 347285426 317802014 632473121 525459070 593065555 543021556 983921757 204000137 699169868 811181797 859920971 494317021 517853201 84058311 814278866 87781523 923522779 822639071 962548369 18985612 709356836 126843765 724059162 823726779 878316375 984106455 985932556 323804731 591190955 449285246 753968051 41156575 257992970 463871406 836493725 271083430 979729687 366451249 545225954 373274914 788996448 144850776 569210552 480993411 881217109 550897887 621075006 794469745 987495977 847151033 969386902 71339005 890290680 382062155 682059759 154890852 768839718 547710938 709952507 336629600 845115835 848746157 991473495 588014837 730357163 257234451 279432684 746870451 966005916 338927247 709876539 70630140 276223318 889665896 906320321 264735349 477349604 797403529 999314594 884652613 959683901 313141991 876308718 973050769 986288936 355059129 577156826 629461544 746471487 543291928 675534109 269821348 341236828 994417271 999817409 868914711 999404157 752217368 916045286 549344978 745163045 505609952 767506320 382105737 774423598 237245442 904338777 595487395 892857512 812122492 865100904 60179742 409823449 602317001 790183344 874599433 915813945 415057972 661582834 524201306 823071256 27586422 687841086 114058052 118865463 387077452 704814113 718775405 870359815 193176259 281722789 156491447 770853891 208770880 396816189 71982386 216224154 748952796 811553408 896049413 927465079 237697812 359200002 463775043 971345241 242711863 364293455 83277537 699194522 284006566 695571079 184666323 548258142 275011814 528737352 199022543 424986691 107307148 890676744 837139125 934788073 346592584 383827036 30228011 788570822 645258528 810936875 91251349 325513609 666237347 769380746 660017058 766433111 310687834 838080813 890512092 916656196 97135930 274914364 122941207 307518036 593680838 800042339 821095534 912315765 540169453 886288393 144261127 885408370 286843737 734930888 315521894 982344898 623912018 761552290 923823471 928996086 909972830 999688746 635167878 890754234 134624419 641400289 585460135 956854482 170305488 884299508 332411367 614885328 490705665 521199156 937999215 972703362 38086295 830929143 709055718 746153059 204506604 291951690 566687298 863902868 273287509 893304101 666844020 815046475 428953857 862230594 718009319 885092107 693025193 912569611 305867328 909216422 773398073 796028492 797142650 937321341 274500696 770020674 229963893 828172348 478265724 557815303 685462525 958604745 654104992 660727030 759526829 875588766 227107877 290596407 406636608 801148706 428248467 689613622 990452007 997033440 908619319 993020774 368232088 913916964 90199996 972013349 367691413 902850978 272496117 607950823 955820422 995004482 570276778 977352304 916433404 918516384 717085828 995947314 316370909 554299973 591374207 907114376 924990031 981286563 825153237 945989363 48521225 753011162 275502268 470039038 268852382 942167564 214527183 890868682 243293434 425830567 947320531 988632085 877602743 903212146 151518165 795253640 250807409 451894774 815582047 940351518 155224228 203949882 785235483 999200282 130458682 976190714 975199151 978749968 581253431 801260627 277160200 691701431 366946036 752541872 199669909 885770486 855853437 865732374 895539718 963613221 940387265 947148699 597366984 999190848 495950486 734567342 802973670 970139225 676615048 863038205 982323232 987846320 970242707 996986526 808930428 893512346 828904139 903776447 372880322 633020342 370870559 696314900 723534074 733223127 416006551 957159520 400398855 998546820 156704805 426779206 403990371 558648503 900976901 981237485 295373210 942828729 115193065 304961028 161477367 844152074 556201577 758948006 980376967 984995504 508818184 952797254 163446814 274559779 398349882 731749784 605539839 685292643 749790339 840313829 846913736 981042471 276559467 377056829 308486049 957057073 34114353 112291898 262512027 708474911 417981538 595421508 137955859 705300907 263577864 682275212 596503323 910827714 10528891 169869049 67595470 910692946 875011644 945570912 806498191 984194969 577592179 588777452 718452560 861118848 398261561 797841687 188277554 860727215 663875303 755115988 325071402 751410947 283937149 588655963 619648637 708178241 606261717 648881642 518731050 632534193 270750557 423113803 797298726 853443607 831947078 987239822 134749862 684715649 698764385 714878431 182919426 953791268 660425747 894575340 955848465 957826589 359827414 502463795 281945196 661117090 106546794 465386550 378088771 991416305 674517668 739090346 629300441 957372174 866794381 877257595 77332014 278253171 642872203 914077040 378225027 882014905 17824961 685355194 870044326 870684748 324568946 851585349 408920708 932148720 592059577 872354953 569593554 794082551 864573556 921718869 602973310 642794670 321021661 758190876 989069308 995079248 118177879 166533777 686723628 711332900 501946315 779925649 21966598 907531775 452331916 849183287 783339798 802333426 3695468 594038160 809353367 831920143 267093177 525838581 836411398 997649299 317126150 612216538 668265415 711832851 676332174 812570569 934705791 965458016 397170565 666478661 748447783 885654055 935329299 979982951 371243929 503050379 775342044 840113775 582471365 819849546 639784849 816648933 868436264 925311406 461344099 884128879 959798087 988513324 534575996 950329567 935147460 952157971 7527495 610855802 79610176 324824620 732873374 858364315 320557450 819748651 859100679 861175556 560730027 977548147 846585588 960677027 939585173 990769594 707381306 781374347 742584758 956256847 810515598 825122699 899927076 997192799 196158673 259736457 804253792 861218864 332391646 480810472 355108705 391830527 669044888 676164169 167639988 730166304 691610479 716612508 524822869 999122991 293417174 697087252 886675699 943868050 381927465 390338837 983914354 989146881 823674242 831147810 494127211 649380934 643719820 654055878 34076532 634853074 632120555 694450726 518570301 991584477 257239086 731956955 21997922 186244538 186759193 288511345 387644624 615956322 414918118 891570646 63235877 626060221 650673561 760048593 901993375 936805922 711802780 789920415 36042300 732200411 944504494 974180899 630812053 840271001 331733645 770116361 778669684 942122897 806757857 970388470 996546199 996756003 274611937 501214034 457629932 575539663 899451099 946827118 461834623 665941612 398577333 572749947 718473418 723038119 718424527 752469862 751748953 958752706 937537174 973399772 387880410 505566560 894421998 967320037 533899890 660590215 459991369 494453066 426499583 779196413 210009092 477343644 623857387 938178797 514394915 883529504 745478176 956208266 9258247 717782638 756406536 992198718 850771412 925861049 303323021 370382680 826225539 995613008 499711734 666280124 889317690 908889134 845549869 953649577 500188189 504837152 805497608 965632786 604543165 788513902 922426839 976604091 374837326 925202814 437361242 716357922 345130063 831047634 65082533 398137737 332750640 574838660 975009441 992560557 509088235 570964500 367031126 759343058 718985262 766610286 976678288 982714820 907914075 947179306 891407757 984450229 949477166 996562957 338051201 394368525 5850833 349472310 18323825 726792834 624717828 756194788 369874788 785804534 481676612 711332333 487408114 734992044 499537697 812842230 996819545 998214794 342401452 710144688 777176676 786319799 651422936 720832236 239072862 476066391 427317550 948162418 813952476 843773993 277211022 641282181 321936446 442872738 688807065 723219040 793638972 851037073 459140480 718872225 915668029 954453242 321731674 748674760 934273690 940871517 580304360 961783147 774900761 796841416 664099179 789076733 410969030 707874609 626570569 662721259 48511535 555255325 966994721 992382866 334981483 446205009 23420420 959082519 438599251 669827609 838166823 958367119 487521380 631275257 912903959 973129364 914101216 916399106 525091041 865022587 646939140 882301094 600783567 939742942 689203857 922478396 828477651 943321431 134111419 400637388 607121384 767375022 917878791 971608451 292147757 985785688 258338995 654173629 685968313 940244486 744434514 801559211 926742529 982320455 36501970 59447562 943006548 957786721 68194543 438399680 738691497 957209798 694256369 908535067 575198048 800794053 247185777 680041502 79182398 471480696 765943028 831905966 748720045 933411809 257818809 689423246 165760742 828710431 351166961 777020061 337255341 398246236 309644800 524142991 169072115 194809876 515279630 675040130 954049218 989232656 415046233 531029405 413293273 529295763 286816416 720170630 607847763 912330463 802288430 877800501 238989183 400137312 142840680 458662479 650311733 794636530 579423162 867214761 1963360 427059513 873582515 988247320 185051165 467159099 800336363 960877844 898165909 967223578 780011738 798417584 944428600 982125445 836788707 898634803 958258574 991790806 412309764 858853880 643102102 824610287 265725867 948393547 464230231 810767661 342008935 402277015 937928747 954749119 824556005 961310574 143958248 450958671 446019256 526919171 346555319 980837665 697342915 735430527 75292532 954186636 986530917 988613285 554581437 740092593 171949610 588482662 890188348 941368018 211338659 752986239 547747991 808869042 186353745 327841607 783430152 816865836 62870336 163175898 473795024 546617017 828701693 852022242 560736775 604955042 161375375 308531307 202642616 820615266 822080 816940567 244277195 248838864 728079077 883739760 178923877 803647654 317952138 994187787 595308780 702239347 495391445 872352401 504044903 643033163 618685035 877904719 332356019 361414569 581421209 892525831 354986372 451260712 688178223 929713812 757735460 850425721 706085039 840968553 952091082 974333099 663675991 765880294 173445441 787111196 232587288 470174650 354878970 675584263 617387669 688484265 249894508 446414880 295135595 329098633 140500432 549046173 833406062 939890005 839331062 898221643 719974727 985909218 585455935 794240305 18937201 403065100 944657181 975977444 973161180 990045123 846069238 943065754 740116447 804322588 935362542 956850838 873755894 975757038 934426694 988594220 215016635 502740303 421609045 543256221 34268358 764222163 246317831 258682865 648475982 877546482 126323619 369990947 434089707 596019678 126180981 931250627 1005766 323569873 374808291 781815251 382611965 452166201 707831243 880380393 446890834 582015174 353704865 676904545 512781702 582853761 354484833 572796541 960313799 983748859 714634215 817233757 598794127 989079130 516067793 606374581 931799533 974741936 428025231 919869397 80778791 980844919 634131695 647947153 744614618 773800205 732477423 742799619 231713476 470816414 566356205 854845988 37071103 370288696 961942640 980840062 357753914 371468844 885672224 910258284 586326042 963541683 1394672 585643561 759117382 761548887 21709254 451236001 129616540 591183649 488975106 851371487 777484418 997787619 564206056 831238246 666263701 787893586 571732110 918689937 74957876 746406387 401459979 802779509 610188688 641280773 635751563 790511868 249247071 899884925 72461056 90815154 279805050 498460313 905050225 927010723 890203054 984958178 37210594 89827449 184729033 659943578 551180675 577356860 301635140 402000344 841394725 879870223 367218819 563819088 741417410 940508740 660277671 687235425 70431149 698365855 677064812 881181235 131864538 850229353 546025690 808590171 721605526 961086748 969688862 981009756 852449169 884304291 945460630 999835714 738186132 747371649 169260296 920572566 375059633 533742430 906143365 964745479 718415743 878366859 881474395 957230641 744272121 879774244 256687755 413357092 34301504 595199178 646044882 911171603 623283310 757034599 486274756 724705392 425778472 608876646 948053179 958871844 161387204 959916196 635360303 714616938 62528289 188265485 689836555 866364806 464538112 597541016 980897081 997901582 945451243 963983042 453844858 919924374 188583352 490628560 931317321 950716040 932806970 991977731 897416123 992377349 554282523 783184648 421680212 714488408 265410050 935684591 533406561 925216262 67840608 179563121 62067894 578957103 373805458 676967569 195853413 802224091 632114132 893758494 743000005 916606235 333182061 987077290 466296793 931672235 361332972 766766965 575650508 603472563 205658881 987431602 339595819 793202651 933187533 933367600 514210580 923126673 730192700 903708377 922978652 943397688 891664731 924347559 662625694 985108555 548937720 889427467 960410763 973680851 151490730 651373616 351853807 377106521 299635033 842069242 614085284 853159587 261126453 717353437 52893461 782836749 352354525 904483588 501148986 517139662 389342525 526214621 599819760 945498750 763788857 766472812 908671692 941649955 817605375 889381694 846583041 919563261 250000396 551793121 20052103 206447869 998871908 999595701 413553620 758998090 498971007 599238222 97085235 787912956 665978924 942462577 905735267 954081106 400109792 500403307 311166786 636307971 595986625 850560384 480362247 495932400 11983831 990220718 642511463 768890877 62439473 759552227 665127119 769135691 326706309 965342060 502652675 564750536 5350375 470127367 999364857 999929478 354048166 805970215 818357203 848102373 94256163 262279141 993071469 993380473 524851121 717183105 555446333 899509257 925727765 989859555 290915817 414842563 229993301 742873102 504277317 516853933 425124615 836191850 960372137 991438567 2318756 568097871 568438948 838322406 996796785 999109614 150016720 429622251 21878376 731400754 474168406 539807943 680119775 802287350 377922384 755428496 856570832 955279650 686872789 994603505 698125936 727440050 77743128 394303637 489240826 685391566 725948827 975709201 361018249 484993768 370389825 990700731 753064691 982774480 46337395 778383882 789746022 798474807 470190292 551805913 792101729 862827971 639228804 995336565 867442280 965120648 534025535 739936841 166647404 921111729 208005135 699392499 312738990 864050211 613382694 881831346 916860770 954907030 730264559 828672587 297768868 680458677 729494114 928558513 839455482 927142528 125648661 695969549 737736186 769686908 967163785 985140986 844400486 968590705 164088996 421011208 308196179 435895974 694711427 859628244 638181384 653772133 936632517 977155777 343653368 607346688 726504513 852120878 203099747 321218684 348901124 703397773 771870187 939723472 592875593 949918214 626760511 983870856 620558606 742422185 984074382 994788048 310419006 542300839 266579898 653971090 771856399 995345116 567900140 904338508 475588238 793785838 558495369 711492078 910508837 928058570 961600070 976661558 705164174 948375659 120287193 968701250 439181160 602805190 370486992 506147250 300045200 918998655 297752823 397620027 183585823 995501273 953773741 969567116 198492956 419372796 55129706 723090144 279387455 728734795 616616684 881232557 34284734 801899548 749706372 900288020 33179110 460465490 596785990 620767763 471720447 652138505 705710839 979709705 977435441 988175222 526299018 662477329 891417049 991997226 994600570 994937369 341761643 945628264 757861245 868248457 271133253 356093402 72985548 148150453 100705944 734432272 597878205 955905738 676462753 779120536 563618795 655487815 215684342 589197229 452748509 657380893 415923731 886407688 691015359 817146114 7660320 885295049 266951743 642078380 652703815 762119808 342583324 666144683 469515351 686565922 49387948 975714943 120546061 430795925 507875351 936557314 81394697 756945859 947542295 997756169 642967945 880445778 76951500 813496278 43834952 474315234 423797589 582882941 957634658 971409185 170803292 216681131 148270377 435473475 412624083 505677804 241870776 557916937 832394309 928111986 739412618 820154382 884920553 939716066 705371891 899818046 857230073 912010596 771063049 866437642 981613177 997345381 18884561 85132240 809188071 839619973 194454774 560330696 785317801 795528777 195161877 436853001 88729189 581594702 78076299 901590376 267355821 468949665 206588905 557932433 837144157 850231838 650606001 755505458 561715254 952139212 563824106 736117409 572081372 812978546 544657846 941947233 184071147 811699852 876794076 904639270 422234520 735869927 592168759 875057636 982418729 985442064 728222395 979662102 495757705 669792772 240803567 366419728 49345787 886440677 719321928 957372676 23890175 310578433 79347688 980645182 419828116 432790188 114661806 581562515 293512784 944110694 576266520 761574979 939696368 949585244 563459963 925329783 13476781 907022568 39923174 791871938 556363859 970973027 912744904 981526858 903682223 957776453 198404757 436020593 472023997 476669265 898366211 981661483 774991890 898188371 495370497 515315925 88897730 998016991 636561786 907662136 601447885 779281208 754831577 768215462 495918081 511494982 53685040 872538143 400673479 778944751 259700496 435851721 510577407 544131418 247417466 313017666 947208239 984634283 45877196 545212448 955882222 972799475 397207782 506437839 936485474 987632724 157610114 874195935 720736006 730726559 694202300 753552103 945028214 945151258 530710304 723819249 136046147 148639826 210180877 526496452 698947070 989070245 661412417 856857288 833028567 952236447 928005869 982800486 686928252 981395856 144067726 461444345 993160712 995985010 291801642 394115575 778500962 873772203 371419213 464779745 265756457 847006339 52983561 678308897 663806222 855208356 474022621 667643481 952054211 977822389 365191384 481496521 828843327 954605701 387049508 893062858 305703181 809127034 128938176 135227646 14008502 331345213 510892148 992112607 554464868 786289400 511602946 718390216 969024289 997942603 963225530 983534099 221051123 770015639 153316013 389146769 329951034 518111097 451187614 765549937 816512885 842838217 180783109 694653586 341114125 730975762 854438483 963397085 689606805 827889906 502518681 859792766 967055397 994739197 789988407 974512936 778304629 836993157 348641967 602719709 426798220 690664572 944708210 997158198 489011622 689568242 702618808 802864795 952349117 955042636 888178831 892784264 307744468 565318252 339441753 509127259 938971416 974351809 745469893 818902391 384997169 619715218 907579959 909530816 570817133 786320290 901189382 982772974 527581537 805718492 782782360 952959401 708801332 728208426 978855250 999759216 942879407 964171590 888425188 955880656 44621608 588724153 627556124 851836062 923342424 959646413 930269838 931932873 595722991 880237463 238329249 318788576 340908483 610973214 691149479 876526457 978118537 997335599 787591581 887017251 956844309 999747600 623202244 803324781 717133883 954678394 932299070 979325264 95338615 484266280 792715938 912863203 449967254 982848155 485924797 552746534 808136218 989168074 627093613 986797803 560969413 602028512 484612612 814577002 180699667 497223839 82295602 123112462 660141890 727183225 445099815 965838885 80026088 887819275 75424255 956677605 995327420 998615007 764229693 984075486 984558864 990165113 29386897 613206256 801532776 941652438 86101265 297432981 976663778 998444738 437425902 533235383 642532780 731234109 379314876 464451591 403350181 492222663 762032609 771546918 536911137 733708578 364652226 713865165 514541867 735572124 570223420 846320659 288555191 472301823 645040294 728867162 897431872 954126595 73966873 408255369 198145540 465731441 68716451 530094862 965449 40049012 249300917 903343999 138415802 474113712 592965715 868014941 754468380 984311705 686661584 749255338 137974589 914131149 839178321 983549064 687958182 854305790 637224376 713227742 937976086 989021795 983973099 992321900 568807221 803997473 197113415 964705017 914977487 952590201 334381138 547265754 950478102 951231757 355220948 903786627 496733947 853832784 625332914 909502743 822640974 868641780 13763523 248556808 277669068 605150982 462708756 545585853 843751759 988575396 112982865 377060754 247873352 933698834 91102642 392513623 539113207 702697703 215868424 744381733 554202207 819718022 837034929 933057179 987569735 998087882 833987729 999989299 924483136 955020651 610700354 639462648 587660449 963978584 988124612 988785007 37122579 977059076 819945953 833091133 465150676 815060655 735832565 959833341 413187371 560654778 53470221 377384786 401511193 640287504 893263534 954134014 185059011 350333363 923454953 977759784 717073141 897075733 155321154 652491514 320148773 759150822 681297979 686618688 133428439 979223663 612781302 957013957 344779090 833248922 743829061 786966724 291902048 745918191 758708341 898837992 834649097 937249513 273386483 460719357 303810083 806373340 240049902 360891822 667969453 980695680 134065661 453032413 760084777 760632389 701245975 882280206 702388316 756518804 424909036 440165872 794519161 956928410 338374808 904630146 62940047 287417701 792105074 803104578 657057972 972447033 507580742 794484465 172166833 973898946 863415742 977640928 469356146 531238407 836914466 892564539 379159926 967083578 608138696 905665229 741489705 882254080 759045711 971197922 54446138 742238589 108108615 214723673 599749663 791911542 371076431 448597823 549473127 984471365 774423531 852955265 225337847 681835912 36346371 583965283 905974085 907966276 736941123 856136286 782985891 928667181 757245805 901274494 635855496 912853214 559029409 682118660 893430569 963599808 830918055 873141480 980167841 998145575 861432494 925951100 3012493 157178604 385440770 617778756 718752121 727163199 288457112 302422789 411132895 657070537 205740156 572938665 189521486 371417287 964053985 974110633 974943591 999064128 402604966 591021725 347494135 628890152 65480300 75351622 705749869 824275781 214968401 948882141 598097107 899161886 163680003 996311328 793950128 999529344 197002663 522584284 901153151 917695409 880185749 983697532 584721399 687912151 299280105 722841497 324076952 327403287 415479052 777693434 386319282 820450008 455470971 584260300 221079273 571591891 42295141 275787142 999206939 999699354 961043453 995316944 192450136 380372258 1099407 949993422 622761253 841385475 467571193 572207908 783380085 885540749 107964097 774812051 651616226 925750496 137097410 198707365 723068225 962689945 832075180 967697325 611888729 741968577 977517891 978550135 546285764 677286016 98899344 932455118 294418986 608964425 986588591 993735125 832877934 917260299 574530619 886271262 173223463 983195240 267852900 400804672 89421953 539639252 461356352 883198288 844121021 864361403 559338507 644396732 175121371 522343188 468640176 664785269 348960847 757877625 947555366 968797625 861514029 925300538 690558329 909432630 739705732 967128743 59880805 177088070 51620927 385338893 904895976 993830438 351889954 534485159 144435329 790423828 747695156 825543510 243771901 537831494 867641938 990799363 789709143 877682101 222645536 638464147 17400278 314401098 501042063 995462118 833221262 920190255 726992360 949912060 817136428 947151117 507574923 949885095 44739379 285083210 270288831 584185904 611518307 798147867 561139276 738003753 374619693 617714514 410635076 658430540 952040299 963633144 890347551 917094182 748194157 887843483 991375405 994677864 849537392 912965740 325094347 402718468 193095593 586468880 868120678 940708479 784085969 986879834 957131557 971515085 415758141 954881630 941832167 999618152 274071238 922583717 277346322 439159032 958792987 961674838 416179828 477840882 826652230 918104513 10078039 847334260 795863103 856130870 759819491 955762440 800181598 851765769 170807789 850996605 910670846 996615234 856583170 946199309 55906690 314642644 373305725 724125461 444792915 831232974 626489290 753330450 792943708 810322558 151722972 342079381 115838462 407909609 834917939 919280375 112949265 904672074 918275577 994568280 692965330 904950807 976740214 994461921 844349103 997317985 289560778 523492580 14239946 352142771 653984093 734908889 746993776 892378467 806853320 827432833 515463552 911975387 329287804 651888847 268217955 796718895 508511333 892398595 212711117 225292214 45060531 355324516 538471199 561846623 140263731 148223931 985745649 997706560 252654743 486591124 128471884 459135571 707007626 729650432 45796000 697694955 62637495 906685664 964505961 974998752 635068793 954335144 96506138 962524628 57602181 207246763 240898898 632353343 899486843 998427284 419906738 551004938 229767880 622318845 690585565 908397685 369636027 546801419 746246371 841969612 683390447 869643539 46729646 443222719 302199768 407317487 397379461 939897595 532221169 969512809 203760816 745310591 66284293 84806104 56493714 382869969 58823079 818454705 60448848 632926229 996310320 997474103 298899277 376069144 15715176 971142118 919611045 963230218 278388573 475103807 895806499 972810878 674864130 933841812 382816780 900661583 836316770 898003755 825074543 905396975 521421174 789513824 634784999 675466595 899589999 959267435 23995070 949810448 710734056 824926686 663445753 926933967 8490661 367043457 259886736 671882051 437399775 973934722 822157178 971443510 602056085 894222939 913232028 932842491 124477022 663486438 678400458 722270052 201473514 903720097 278924687 984821964 740931351 964031831 282948927 691461751 545224960 657475414 673071168 805664512 100103545 826960760 99051420 349815136 829767299 949510748 716329252 837142432 12732364 909773195 713847014 964105118 517854772 900687078 529275849 902786231 926341639 929279936 854075203 987068336 557115935 769151974 781386773 949676095 709776496 752365043 827860759 950270489 205996419 748560906 374412538 748016652 535313873 573055091 567106227 957559885 895600457 935315476 466337547 640650063 639295012 888245232 806273196 993670764 990342364 996588849 509712911 816292655 262859049 720224289 596418809 615500741 214876664 643061387 130126582 244675807 980195627 986416936 204286975 778953072 293819427 613172286 451316150 457746553 423713911 640368498 743103723 998050307 532895511 867137185 207589518 209073337 296426789 892958157 953917033 956802526 200605985 875845676 107176331 461639439 928592113 982047957 634486683 953579251 311152159 515441264 861200318 879420727 864464150 959273838 14469392 87850148 555990782 850076614 125105420 322822477 330542114 834076258 859978315 895839621 168359090 369633599 588650504 675052310 861784332 971817052 155755417 980434407 316062489 981657257 734391779 806956817 588690137 737388278 797102341 810898672 268064748 757093592 849209951 904100296 290240047 713228270 601384530 786520332 591729878 810382179 167228335 305784477 224187836 586623090 88785000 276666298 296347862 927563809 889012935 981127433 514453870 992157868 76611625 372693287 113700874 208183896 487446018 891047401 88873533 999614890 475916651 763231589 451275144 924856901 925727501 965001817 823006656 886536644 192157269 315198727 264941464 394916015 879731596 885969537 357020710 368096245 908539766 976759261 708833275 916284187 498388552 520691525 176951410 344232021 135408845 971374867 942646403 996718347 761683394 812138212 487949983 603154311 925861873 971649565 404480482 770266804 765193927 926074447 73182508 762569211 219038548 820185697 455713936 762815397 707993997 924126819 271431358 536808164 621583256 743573663 713830124 946444042 778913739 811801149 492850134 910817806 288038963 410096112 290611426 444248911 235587881 399749152 816984251 867543689 980216203 982172693 466054498 511722544 271681995 730656628 869683612 904656996 101956010 590408454 466869723 513174344 802475831 992970416 87642178 332071035 327578143 347188997 393942243 889410501 167276659 771913577 530386409 564315792 565351411 932864511 527347507 681726714 30615491 798485882 897399819 933305051 338415197 967934562 758560741 814192339 713371349 900648637 562479845 602524232 504852051 633674511 22717267 208149161 91459144 118178458 487979512 910765092 577003892 811594986 754491876 979204495 592970373 776367761 416806093 907781765 364742696 389234866 863102930 951610319 762048366 875520768 914892460 997812243 546531220 641084784 534120972 971449811 703706252 869979648 683450936 786915442 474670650 894982950 3989732 483190061 629810981 949927392 630721067 826125692 562913287 564138969 386948627 770082100 622313264 779395530 995656556 998972591 953705823 965887337 430637650 853700775 511556201 947983265 794399773 930973453 654728806 876898656 205354282 685291216 248646803 359394894 305366055 917124498 294405947 721546379 488708489 647906975 903472030 974990341 572197197 888870713 635109749 823028779 673136979 703841131 232396259 821203796 201694660 703079092 220187938 579160801 835094904 866285799 913657038 929208679 708896533 903997953 941426172 989246899 912975038 963371252 373868119 526094416 675714035 864013378 623395799 900470763 888974329 985791509 508175417 945734121 874495227 999865702 756401540 835245389 952520154 961121345 495272986 590038258 178567250 461119250 481735130 590440495 128862328 346724930 149641583 344466502 447885146 605588752 144535147 204627208 110925688 550340522 533581250 920523195 553139188 947573264 471920600 926502078 435226518 486439213 738241651 803081787 272154921 497688248 226790137 659380508 800534289 849525215 376054916 949930748 635578615 802902728 569351152 830486219 315970942 410734443 978975835 980611173 243044323 924487394 330634179 819351109 640741918 839843743 745313554 908609364 539357722 724562037 345469101 609423744 79905902 634999903 801131801 937984415 493962168 962912766 534615180 779786342 356070394 489906870 649580662 784062221 849509327 896966752 700991187 835892243 352163771 487668126 974745380 986842274 458607689 880031223 750615244 950894637 994110980 999792263 506821030 787365663 453474604 958706166 109649018 791434350 415192966 656216121 283009494 568573245 543837951 981406932 822754894 892834771 823353303 920238622 268094782 677198657 795050029 806546508 527825763 617847609 921225695 942618574 335098993 400361582 281048011 895359914 109409092 365193748 795438859 974097290 324773110 665811249 148455379 425437269 539556295 878777181 857108457 899913630 222233234 993443991 737430837 794416741 879313710 927409932 409813258 896789129 679712116 892646949 678616034 837959274 973991333 996780445 709138474 762393343 50892752 103401614 894715550 983363875 242454492 301376526 977392478 990893624 76382182 636796627 618959338 726010097 611264593 977169883 717135591 889505087 332922117 990773544 611763233 994626863 653208836 682797658 633439181 885140884 621686036 923547212 29407626 523312229 443248677 967993615 73255926 873179644 257069955 865844181 528959175 780820748 42827688 832080324 311512805 890232536 926391356 937349118 670033628 934541594 706319222 945468349 311816913 349915090 60371070 477372496 665449794 838179558 942282901 980354074 901157671 940069105 417043984 934031542 289942823 850958838 948342535 977655681 44172849 148963893 912166132 965875078 868120804 875162461 256150380 518503860 987585655 998658921 8226122 195938546 420798919 542153247 188021267 363706119 738252391 812828878 855095074 915760242 775865188 917414084 708384295 874242120 52244449 413353337 568591454 617779754 910667676 971831538 237950202 511990862 719910880 754367362 532506328 793835839 827326150 948433412 18643804 714112847 134191215 291316388 99753287 684902800 893820051 898176626 957712476 994446810 730161624 852361823 380341846 725898587 942012356 982984474 28396412 518522882 138555772 201867790 34610476 503270737 15937703 568221055 954496327 955873105 693576768 915870283 966937385 981296268 970549198 988370166 199736756 854484935 267906053 314309389 897933182 951137212 884630750 955519700 711312013 716467701 531956723 929374191 616014648 671184038 611358029 619274344 21279046 149044264 90665461 142498839 451554602 613413519 416604529 857360462 657253297 813798451 773012303 860844578 104539492 687178268 240786483 682850326 199861033 247310080 967763574 975402811 348180877 476732100 348378829 354727439 800586497 929046302 73642460 397548415 718289539 989698311 555516826 713792561 170870107 376825888 136455361 611695276 613899593 834710839 191198774 452264513 826701997 915222502 156268247 395212553 71668229 743506705 869477458 881755250 574280990 815408840 614113586 977054521 913512018 934889921 345542729 578574835 713988186 786379394 652124260 981858110 313415306 323326786 388773081 984914693 967591725 973516806 47135710 174947024 530652207 847653057 941963487 947443759 227510246 754122222 8340765 912528929 625272233 787596065 437568048 803664893 356692100 985082046 358698776 821843700 523059298 613566175 815808075 852337509 795621868 895166460 349924205 575816572 784238040 865847283 195109065 732345679 458024469 941113228 97161977 944186624 768375918 845204572 65319729 994253775 584452317 960572251 74316400 698440576 850390806 980725633 175570809 329380741 812071905 831072588 226331044 844803305 51477656 987893261 594092393 965101848 805006829 922137094 222073823 449729943 730668796 768450110 603147423 727360044 96345339 170893904 221046981 722732568 503856749 924935010 440644141 539471304 679652529 822188232 761844671 988947059 969044715 992987852 654348958 829627947 789026472 899013865 451747350 764351138 548294463 640003560 443224742 609261698 598950737 770652489 347665932 887027543 164124149 460456174 401794014 947957241 163582605 406092448 732564948 967140110 888248242 948461060 162012750 219524450 932015346 990966398 320798188 928679811 359597619 577022662 546757309 960711070 772468389 790625385 389738864 405173022 425444243 898397461 403890923 827065926 246462179 815618276 508852988 904887750 698476216 778919093 476192627 957962294 613788165 836781357 671334205 762285757 785589007 909544349 326099954 856736712 170358490 300100084 187359914 642774354 931491106 993773853 459311854 888400462 739206467 826241657 171294485 593826300 673881911 814080983 574403933 841021962 368884919 612440000 605497841 850725031 543023065 940968154 122997353 643976724 258738794 747898812 869632093 914656502 794127225 843480890 2176642 916247834 902924064 992727456 177445927 280737601 863874717 890931345 592447537 945877902 212948181 800556150 981280604 986974432 727945778 881760932 576408479 655787750 771449943 925430453 682068738 956705415 467144655 541106320 84436038 634876949 352772589 462623432 644940856 806539978 353240019 994922143 906489923 915190512 908664765 912790122 980942227 980973913 652676856 984081963 108750630 176848213 804776386 959705660 465147420 693861102 586488188 889978420 682367841 859259429 651933982 784412039 548085831 795534045 116419561 874491508 74485379 330591411 592098034 950870632 592014394 993713675 198716557 941815211 507646020 656747904 956164249 983582367 660601628 683358774 838692471 954633898 587645933 652831470 519105911 853081310 744019043 809852659 582756078 897409156 33475804 99879098 41363897 776840544 965600860 968725070 423304160 993667208 768284583 801689035 96157589 265257333 201921682 579590205 232901794 477838341 202783376 538905453 87457748 404127492 346199575 370405065 289252872 525539057 665036654 788654901 702806855 869275704 819605240 927105672 80098910 742487792 826060711 917555169 473343814 702411145 549429850 616424654 887204707 932879341 570335329 715336915 654321499 904509623 717749211 996593878 123735572 680838030 284441097 619384350 365868781 978502085 921959336 940985574 332430994 533323318 695823887 715187238 415144392 463661002 855166130 946571485 661699570 890044089 528729184 660204267 28531882 911740128 154721349 852617146 925070562 925571440 636440363 749728348 716001450 813055756 743691291 982548322 31532154 427476596 803497659 963136515 486564641 489255894 871820130 903835031 749919098 912241001 906149715 947399763 593242687 876112074 324025730 943374849 761862581 790806534 361143205 640462483 697896213 733424927 132421617 276454305 381591531 589724535 98098188 166109194 715223994 862723574 85129584 210653070 567802685 986289209 464956602 974448672 699601146 873105017 919333553 948638096 792624216 890646350 918602370 947816854 11169142 323247542 573575359 661108479 314576893 746852217 149064626 378405573 785777839 897969832 484225288 748931398 503090525 729603223 122274702 687379798 232790997 523071489 858349761 872580019 912702933 921717118 100262945 406318816 423603166 957850225 314549457 660437772 526512712 779128565 343534625 481627586 222980055 549159767 67764271 919460935 471566404 637964969 983525821 999081148 601695441 765858370 483584817 679928674 698503476 987853768 64646512 930802739 828559459 832287912 96209709 725127341 585450633 721788376 43242725 820748215 208307291 226394792 934874833 967302881 249584694 577145016 260660043 820443171 40343185 396431336 413723133 978362614 680069430 958940414 824988303 835244729 429375841 515573420 396638975 887459737 187651029 371698653 543034092 759654357 912499859 956184836 459219435 690739779 102263905 130336512 979345041 992078996 608713495 960433823 755959185 961057986 681826077 969373920 701795640 821673831 98414725 575821521 632891960 805487161 134293468 291673600 156254556 184316892 129893721 505637922 645709607 893919809 88729657 186470482 712886733 903636772 669137756 946529098 225632639 705570153 986335245 993547116 842747873 854266707 764345142 827343546 251691185 661738967 493024756 571640279 44415666 706508690 87463861 446034425 697993287 986188918 494922901 944424807 596644516 776836743 310694850 973335571 343227419 704097345 423910111 599740401 753407357 913382494 948264324 992350417 167581085 480985589 149163208 303321487 889119883 980602423 507963167 886982776 497467717 666642709 126597778 712530284 682187380 912531605 67689741 419277732 244060943 984652022 866780507 888588712 836153835 930598266 82192057 590355993 545513202 834230383 839612604 870784795 730943430 971397276 859129318 980333660 383537670 751520684 645389846 681129633 382494800 640775788 284814735 681826931 813143416 957906924 610854188 844278453 210973118 938126833 163112860 345852639 474303471 775234578 557326606 762713721 55561351 784601521 510022282 838971291 135995058 761004178 912418195 924847254 216988773 447020902 7191466 535441688 37774798 196941651 531549303 713762451 777310828 895855400 286792316 780375067 133012072 944422567 321651099 335021528 831634933 893627966 335446006 672099688 623234900 675026186 653511587 922288083 82958675 400041273 452168769 522952431 93432641 905970377 54293364 287913013 239248425 744102862 570114888 843859526 668780976 831823811 986763633 987247489 648061661 868971997 77235952 603873013 209471826 934946242 383234512 905684596 798857717 833805407 28758944 68576643 418539856 606751374 151949422 162000696 699382233 958949751 927039428 967412549 178779159 526248755 398627015 963600943 113457636 442416646 290639224 676400646 992207862 996523079 733017409 750449767 945904855 993059382 685761287 989188050 127173981 234924664 772341756 905911485 169426154 525902081 715853710 828092633 212158439 273385139 719690735 887851868 242388441 869549617 835337259 911825693 998653735 999006069 146039047 538717129 553494558 976128846 351267852 409885413 850918661 969603312 790717943 947224207 11676390 795806891 982894392 992042427 562620649 981629891 798558068 893461980 504777459 511940361 759716449 836824353 519067324 756595795 796188656 895601397 774837232 987541748 701668491 993991263 194750732 959181311 866684539 978880016 674441970 677720327 25993664 557895994 984539966 995322071 432228998 593662267 555365124 805254718 379435789 676921077 166437000 705091100 869323497 986920560 112535707 423664924 93262183 755455858 586695082 879999431 254089233 978260048 300500842 999116638 583107747 710200708 851206466 992424229 680283660 777640417 66773416 742434703 786033682 936770818 654230088 791272141 766396087 813213706 274971120 317065226 198553514 449124239 82659115 867440792 52727013 301092910 976866803 985128637 214452834 829489381 363369543 950870798 285065670 896857755 946265767 968100523 369604068 403163786 408379142 762699220 976172379 982550097 672740537 932649866 465012379 797107829 834435674 921944819 54179578 442144574 612218305 631726271 696129179 715895598 638802247 654933749 93604215 473329701 394860792 659176282 17988548 554306450 965679089 972914149 91562954 263845710 611921970 699815276 252292035 479652702 863171182 942754994 803727616 997227266 947484850 979559686 164409359 349144763 40973682 448985064 639043694 753648336 317244452 736004165 794798904 888016110 294980650 786778985 631309867 638612166 250852661 448499004 332077665 734371468 127595281 829187673 102787837 368330017 665443425 958728958 375247503 424952994 454978914 792542989 192289983 404301665 809592125 942343344 312254197 447291119 738592279 946770524 691540895 951991519 531430827 665330774 551332344 838215206 288323563 310387011 226698600 460345042 872263736 992857948 860074802 951962945 131117663 310438850 286800134 725478943 116977230 401270899 396236415 827741474 327428763 334814507 673072326 734912887 105407502 720190974 83138636 127119924 789416299 835843942 278288140 424926676 358857892 918528982 389591495 424249581 94959056 985647609 574051088 711029921 416769116 861767994 145868663 512671412 670147233 911153051 604383292 983328975 965928867 970549764 361681050 450515696 223576851 695831859 242797684 533185261 936562754 941613790 45607481 825627814 177000441 990781156 700843217 934146118 416163526 757483967 233100781 326710812 943484524 957783363 37839246 399622619 878813138 982859155 14882441 28676125 825630742 885670627 601867658 858386312 906741159 915074436 100712200 825580862 318280095 663275829 729232985 797016274 572097231 819260673 781647213 832140160 264684891 884676032 109346613 509682661 773781996 801122190 304292023 438546504 960188125 970857066 508488715 704451626 962080666 991386214 698041565 817455507 430686850 684863477 177525003 431673020 69067480 179367095 666413053 939901288 960197411 987344819 906902003 949590146 487481664 514528767 612799951 919065678 903011074 916841093 934274276 950074860 35191754 885110027 507258733 876659588 997697311 998967290 780319452 961351905 261864780 809514431 877230227 901853654 312518484 825020647 102898188 898996169 425009062 684449135 95813902 774594628 659226792 846185377 844090302 892785574 995982329 998102728 104063226 774946279 13042673 442809458 768559615 992457687 596265070 663805561 684672989 965425606 617389668 862492285 276592846 868973827 858592147 947751191 736203388 907710582 344880220 730317667 314381062 978073115 804872355 870866546 16997792 295337097 627547047 870981027 509707540 645505748 987696791 993704835 268641649 554986418 784777497 887740317 444319374 735450622 590851347 761732668 877672589 915448412 465968213 945204913 532513264 692981259 47356813 565995069 746604553 896957146 328053615 448017911 662545381 981708806 566388721 705462187 7010433 691010335 526047748 681798722 608589185 942776625 416620310 698402868 198539123 762472354 447510714 495030749 559872046 731740510 121509684 912430454 221187039 377396019 877063624 957080520 379411749 671907621 289433893 417273701 354529468 689496457 882441873 898856783 638704949 835892812 788846010 987628141 157832625 507492342 356855895 659727853 926011073 961610451 904112724 980129076 517716886 726177075 231543607 317123796 861504122 871110175 265250892 840228943 541647438 789890069 237297959 881669955 100070798 362181955 512623743 956265236 906295899 920420943 873262904 971911793 335351011 955555172 893392405 941775253 247456189 710772887 193544846 946064142 156440222 748236081 905766938 915509516 124188601 545620620 696033294 892936545 978732510 992977343 158007307 487789360 290542065 991043631 874234698 916923304 766912418 995917703 923322371 941353014 469856637 521088814 825955181 851076762 670339284 874497756 462932629 943697480 207986045 946533992 44654301 89247074 57036646 175870874 728934273 766939200 534531337 776854184 219705586 715492529 726705626 925053996 850678999 925223242 524030318 835913598 694090885 908885513 766198511 784716330 755294301 757376892 667448502 774524627 471549816 609097469 45866462 185288897 810779485 896074660 859907364 933256698 440157477 931722211 998536965 998885056 920237377 999981918 950592330 990047500 117514984 470555622 19096036 905392506 804849658 877341946 709372639 861367048 450021786 976901940 435612923 539781843 121985546 942073823 763111440 989523556 685835697 726057002 36889623 850537052 533676101 924037295 326162156 868617296 798485348 819295612 967078605 975430235 231001439 571364002 775559784 931332073 505158315 935197915 236542264 653563619 103003235 793174348 676713047 981404998 775019529 926475828 577850680 956417959 515922775 870143522 813200646 835711589 652442118 696337522 237522843 818775995 564661687 864709024 424802626 873115924 700098644 960102013 903870083 977448986 277950135 283120890 283481005 881677087 949480442 956864376 422396055 574244312 22298957 643381552 503063615 845517700 606827099 759418815 362693075 426463092 471620077 852975715 498659443 916776245 128234336 768808266 916621423 989266358 123972562 291163512 768666775 908287999 500161149 807837084 440725044 917327693 558991216 974674158 367335755 805450840 647340519 952482887 846878104 871077157 950044818 988085634 241958829 670050070 301073991 922413189 298587628 535677902 508082081 807209747 415796384 811090202 624177888 693985178 172989745 599295769 963139084 990440398 442059299 932121658 392271706 435883640 148984649 285678559 231247563 937808656 401417565 572730480 696548599 888347569 990765795 993832057 258151332 613783867 694940805 912948484 353365068 969194819 623645552 867570852 576500208 996349568 265857871 851536753 848641312 879771718 581299650 747450395 860923370 977512786 805808668 975896750 680810755 728328741 790173951 801235128 289131561 490735800 627429179 966731705 401885297 665322501 527858477 659829133 438187383 644229607 505175073 946140501 620908404 693307534 238967079 930210905 200066656 910188469 104719582 388543653 963974691 991103350 4635746 798590573 54432423 207341522 548527675 611250688 576496392 638738805 997928537 998263765 606578443 849142798 646138872 904789928 411814066 750597770 202569002 524961470 332375135 721176611 645395416 900672033 236375899 332979577 358183299 984209890 61503530 184938451 949967010 979597969 92617707 288076376 542440786 915825453 765880968 825022259 183707072 768564916 883873600 918170367 297173869 923230543 780432685 840439043 600579435 908033417 620659965 848895302 986912648 989591706 768072786 896534577 626444320 943710000 904597931 950089902 476107777 862870274 568923980 950565288 969689500 985250151 358918701 645256383 215846911 271093098 165042369 550916068 131244409 833139371 684224685 744759489 15526033 769347470 128239595 374371466 558875265 855100544 42474612 896597065 866905249 927389375 892250759 974814388 632856569 732548847 464292199 845296738 133605090 591931070 684090134 978523893 353005876 662132340 563539842 745825081 719559762 865826065 925969452 954999841 686216773 708251618 110107305 600751863 513103122 815789378 922105920 941064226 169911835 364445597 428139388 493889490 566126617 937360613 158255421 693914650 547277722 687341324 7210730 517669763 99422982 927224202 802153958 890652550 766971624 959473905 22556749 177850845 851959347 923509791 220264270 946999156 849011469 912098612 812849248 827663005 834259958 934896744 62511595 972319741 567331122 926855468 845014049 930134764 658195090 717544236 313252451 446388350 255197506 402519682 20205584 222878084 930347341 996314223 421393622 815262488 580691158 955383724 817546871 897552829 343409666 557858242 704247049 798883127 448925453 489404339 627820324 805957303 227471360 605383785 743048011 807974649 276324411 987251630 209413689 368858909 888545590 973417864 213616193 265561445 175111409 773988794 613349815 979244294 33707280 870217105 34483834 842380998 498914366 766029537 433322360 829032255 98263704 480133028 85404625 581825342 304664222 562601315 370423005 748239129 833523420 876461565 194193563 401603760 391384420 626505421 808140271 930598204 995964993 997166392 945827456 958317777 966412426 996151428 646671581 991257041 360102753 389804022 163654332 464191787 829071887 860906134 225220575 619300022 99042765 852178677 74871212 110848203 556539026 866904709 759233564 837056454 578351089 704106284 340850325 982495746 732018957 982738172 991109743 996663541 437043594 937227848 68842556 502256366 436754677 437908452 939265589 955044699 474522824 589183667 184915035 444798348 319942102 889740011 850427364 881384100 562548211 986893268 813526879 933264891 295943099 574178697 485710394 948158004 121156821 404290139 680642971 769340367 125573976 921304433 150897379 331055645 490203349 813634642 764709796 794820105 307025050 584832432 467800071 562796799 815399125 978956021 552207236 620409308 723858773 851558043 349913454 789851722 737950735 785582889 291139290 659047482 784316530 981600071 946777050 950675804 2670852 235182946 935087746 947061027 165704769 897923598 381271654 479897320 539264262 671320460 207913349 346317439 208184125 606307117 77150990 81027978 178673208 765717071 689608291 904884580 162683829 549398914 514004673 925745962 875774284 891111125 601628959 840724856 209782174 730732462 713925750 902376159 770140319 830109845 735395015 755281477 119400130 927945177 844598668 993077780 302771133 781239189 547225606 642321767 412600385 800057049 57947424 329355577 515196066 778582221 230912965 968220779 721738585 934840959 103086967 299796081 613921950 754412667 325898750 407946874 828824155 953197326 651245742 888485001 715246843 995807214 317299163 555110918 160368529 778174599 892223121 895608792 562695403 679596220 105208216 699750535 657881556 665494473 390831808 714486361 91677848 639793890 837065114 870335842 130348961 276228251 765495501 920670542 276847326 425625704 363534749 798073954 853042908 972789357 139863176 988393839 414687994 539214771 87715815 932029719 491886142 643197895 248701157 322565560 624159638 625540934 111728003 679026506 46779029 264535179 871027186 876468026 303608862 603538418 724379269 745551281 837881567 838095578 439321195 664524755 702534828 998138388 268091328 850166558 520792982 868745055 347332771 412889920 434506491 647968336 609055004 655317072 657084617 723510775 266234921 948638864 623950590 914061281 316322154 491795017 328272359 731936655 615070941 720392056 768469512 866114233 28457352 473840124 102688506 203388507 538629676 560476240 392993980 776583147 178948681 490000174 962842957 974218783 251335210 872690544 275618520 372404419 895783675 928692526 437203539 936862388 446427564 883154943 704887934 808019065 345615201 751795682 493128381 874868098 106554309 506969955 836702643 969619669 499632175 734691904 371627697 983772108 44595316 670697276 186399209 759379743 787389382 910835212 583269531 917630181 473573556 721730112 910404038 985690948 221309152 331441012 396421777 518887349 643817885 912231327 825617057 864687859 811895317 833818434 337563910 902819505 615992509 801000536 227495297 953607461 198579928 923908698 859151678 954742364 387381250 735997746 899371265 997334473 12019132 925952133 72843209 818831731 969480127 973222310 60708978 551140985 924373975 949722705 171770725 391358231 43889801 350755179 363115918 858758328 182235681 418898576 814384006 895928557 118689308 264219645 522860336 982930143 445088951 919907124 483723635 595781998 116013058 877768268 95157081 759111960 984826149 997141762 349153710 710493768 285837002 359218694 6614968 760320218 182834022 662645455 384740120 586557938 925873409 935843153 669505515 852880936 942379412 974880401 137720083 790896549 120861886 679382054 917053603 964174891 212611592 522599986 832767828 869258546 486135244 491284421 696866684 828818351 424169021 589074762 810119249 884414482 286418569 420575609 223933138 514533219 191930124 921656681 798611760 982718730 769636112 851932771 987216590 993990242 858706484 978794997 761110925 851805691 701245548 872000771 375377804 741141932 371100526 646031596 543215370 842323058 365463290 748297085 452103509 602745484 41476496 558977517 290517304 976638311 413588433 754471752 179579126 925586648 931928155 943163779 171670316 437573035 66062319 782851323 137892050 150285088 107863429 665325219 122767385 961640378 491450440 535866706 969825578 995520472 268516576 463316347 847853494 957751707 932340840 944166388 37779804 177474339 564612647 645966332 11426193 494947355 50084036 840430643 143665067 234650982 642903951 847964885 170775247 558918307 146725037 836441901 105990837 281551784 74275080 832494249 782115260 908657816 583222099 892430141 836745823 934365390 384460366 929716214 712221309 773808543 776621037 845528764 915589725 969827345 375819624 591637301 399272069 952611025 456552050 457379471 329888456 417322255 136661922 165410335 386476242 404821392 792107345 799884240 911398701 993549679 867247433 954726935 912555484 970837318 21685783 526086119 672080348 902655436 935174118 944481964 325260112 328383733 888842193 971843319 499690881 567969394 674526266 762340120 378884831 507323927 117762092 958304143 137710293 180669913 773733249 859237199 570166872 735100346 498821497 512446690 272043596 629630929 430652551 937142496 101853140 605937220 565905742 842941829 986606282 997305973 111786908 607576814 397907010 866720405 908708983 987342698 425102167 908391764 850942726 883702700 878083205 895832598 206628762 559714813 989853093 998452930 314226299 695299842 241853387 835383450 185396527 842782748 798415088 960498061 799798219 806798463 260179219 427790459 842146420 960432400 983775291 993628967 500782243 704497545 711806528 931676201 414308906 901752920 74620202 487551649 45534847 523430003 459044263 957569234 635947493 915377541 622978 996724133 711712291 936613728 751257077 801445946 620780330 806434065 392094687 408607555 137115876 485444563 640966606 659384573 746226630 989346400 561211204 738405993 153654354 242745644 354340661 360235857 68055874 266452152 97721951 612513046 436635917 999357941 993753852 995854504 937303861 983326693 942040943 948352999 686024679 816789413 455030872 577512218 263122554 538445254 110945899 523256815 46916380 107263207 431318421 759717910 163501342 176431828 819998062 853011579 514657585 613326731 982041542 993795522 237238226 291698430 239712175 286783789 193395203 786418026 320412885 821070660 90028403 931208320 918560354 989799478 929386487 946394521 902772229 942083040 555125593 611827717 173886287 345874499 737828789 910064356 267691845 480141557 118714995 352199212 516787627 996373171 982932964 995676501 893572449 894459630 977382955 992980154 850700084 957417078 71050573 970877739 808383651 984132672 192714239 431374813 607034712 685137475 948559362 999512726 283759420 508508902 555536757 773664633 655127812 977709071 962323791 995230221 743978150 774774683 78668912 902757352 796961838 966000592 457790643 999517979 324762705 419388981 515971803 622326912 498320358 915391127 718506178 813783604 804517429 814748299 867285640 893407588 341541142 431018787 226768231 758548719 490415131 857155768 980544182 993701449 635617689 724039942 29892762 595992657 628238881 691415434 211286345 999557509 6054715 95623212 373560081 752113704 1750062 853531363 386252071 450377008 542166815 654857377 757207140 996268336 539202859 888707115 500614384 842892986 928252450 963782233 258960751 259502817 116807055 926860663 577753602 695565189 427828003 805693110 165421251 850121604 986210320 998375111 670378447 929892236 951700418 958254957 152856557 199131046 975685413 999506445 146868404 603298224 366730559 582069946 123633389 152787804 628928420 949330430 135257689 318894686 374450903 391922680 38341927 789654954 827873673 929198749 696755423 920865862 358466137 403266201 331686292 994799183 910744231 913450044 953705461 987531819 940351913 942339522 843493656 922292918 890106034 994557144 422606913 689654061 722963653 978858612 664694458 928189410 2361585 721404876 695640482 934368636 682729047 747292301 243279012 744296619 81075070 174642684 185818586 441922932 617673007 969498817 608913711 824674212 75581195 930777005 121152306 496145954 726935537 900921423 148294228 897471057 755960151 779091677 509934720 947615447 266984078 521553760 225361004 728841276 55469784 87755398 940477548 997160932 829985910 880211532 69317572 781490251 13940276 858173514 502693361 594314247 911012733 992838476 240064019 371267705 349284249 953630654 981437635 989509121 154326061 261468697 83217538 866778645 926427027 937372059 578401396 994325960 487026018 709161835 667405634 986754050 888293451 936572273 248432752 631749617 659239792 895429587 470933399 614028069 600132997 958666514 617993737 680083501 801527714 842310717 945589082 966340890 338261578 871972617 927808462 938240848 848579916 987223159 31950850 650651949 341909278 399564345 705393982 928264450 604536551 878428145 833975851 950452209 789689294 793711275 857205631 986932297 874685060 923299740 805167074 978172616 389722442 654671071 343177291 762831682 760540509 968073523 817783770 869616317 608696262 884790260 715649762 930957478 672239999 903114929 340033487 964011260 702546681 909101600 867098587 956650065 700775810 872120912 953141130 990685905 277037593 344529498 550557572 949899813 319169918 781279940 466192469 715597363 468906818 999335601 779803684 823891314 161355705 241455744 13126226 490392631 92661523 801638897 233307960 349769883 829818426 968742653 834244516 949496231 367696261 546705595 578290217 957852736 382713903 690174211 322990476 365362444 670273352 884398359 681061884 948338783 652719245 715578464 572724659 592093490 188685675 762873673 451339033 642315409 223123410 731312635 439503425 851749110 52601256 742675185 839595914 949035469 860280306 864221378 778771608 865431547 688925763 935957237 356655907 387132632 807799768 879754051 841345225 915586773 83662575 243021676 287691308 891450951 451095670 997023880 959287145 965120287 453532576 554430258 313602506 729812123 661740758 938093873 294821731 914661272 204694908 831977252 939699821 944200130 194535196 960999137 19955751 408182334 872299759 872705413 455083314 714585563 258105952 982166049 143487555 314530163 904707010 945933802 805760529 880373289 110864092 671395056 642467990 817872943 919159116 960256844 205766756 239543793 917880966 939354367 3785836 500483360 975613025 991633067 743844422 914539044 809498528 818010735 663655198 928727603 35058284 407425828 328118647 948725400 119635375 358107891 457706668 605731737 486809625 760335284 365085749 960798022 879153877 907525368 77286563 259977696 901810577 992669049 908400496 968678389 207589144 373329525 199882607 401109666 467408188 602471812 600622807 993494160 55367703 481670549 299117567 515183629 960608483 961475735 869601530 999971735 354786271 755056343 934045407 971196559 593718690 897952337 528825528 535942799 949377783 984189331 761426540 911404648 160136740 169408293 95587629 229453379 738381238 847997697 41970093 936168851 202070354 219417942 637286638 758556168 229694210 585690031 568685953 767663104 249166412 816785632 274770736 350497102 828731808 895730644 895789376 977102846 217589458 470412302 258781040 385581595 989184577 995054226 28419516 648603393 699175215 996621121 439348900 858321834 90013056 737087438 748305132 974869664 766491854 954150664 214576327 885240709 488221360 833354153 57091877 251129396 770210731 881946769 732790409 907819334 811022255 982021040 220845465 399519092 473360954 970050292 931613392 968822845 897014455 956600548 268508012 650699606 503475850 721690352 448731682 625664816 22158639 751914439 391034358 780984680 710381949 817306176 828912717 955591255 315475295 672321142 797566037 922714954 224647688 360329454 928003235 975837739 975940841 981118042 799066501 931037150 73254504 194581080 181337167 648883601 489456599 846882015 908760077 927961810 397064413 962928592 292859759 843369163 20105012 138438822 749184246 845253747 854350216 903957342 549237061 730979529 958800715 976307544 199389307 276244110 617982553 999786974 973876943 980773086 246611087 292885532 291450807 724421763 699301602 917366842 132922668 225392105 825344509 862320448 182042860 649364338 938287864 990275520 759598863 768271481 243765211 406091728 977750335 990542364 972383899 991743148 591774601 613888631 541755377 950068183 711456039 927130869 511685794 862049511 520012458 758538535 722086331 955933124 822170920 903769869 99310109 913480101 261736281 648270006 878979823 923953451 950195970 974584213 440291182 677982134 229320694 348985039 186900152 356412007 310111341 322770568 837355556 916931587 258363402 311337579 245509294 797705471 748556379 796038824 938162985 944195455 528488873 945364881 539062915 949425155 574909187 839544336 691558970 977208504 84411270 752500856 18279437 404110858 378180163 656738414 677484815 767429508 790441658 884087907 875755863 940174835 327195621 666852855 538526988 724555157 266862771 865821916 930890084 974391043 54689090 94115566 865981243 924809180 214511238 511650337 636914699 768222115 867717361 984633161 371381650 381228234 335287541 780111525 849768065 855972759 733087245 897631365 699496933 822881894 803078211 940295306 343834250 577590455 285834542 994867575 999754565 999995148 710551190 894592682 430355585 858844278 9455637 574728388 793466717 804853715 847873499 905450353 771946779 791725465 125724037 300637392 342483354 631552942 503271214 764003792 402869023 888624371 619041089 624611282 312128033 702314099 742268271 906976453 510654687 748120595 943234334 963194060 658429687 798851741 884515758 896697167 329256530 445560655 456989905 731049936 445778695 688090661 620626156 821184242 964867061 982627728 643112562 842994593 682206655 987850647 496861461 858800918 545595535 781081594 693459909 886353748 956092341 988486731 875323593 936012189 468708960 711853960 389340884 554301982 520027943 976395106 315737231 712085385 628067342 805436980 23545978 576942434 879968423 998680968 667241217 791407117 817799650 878840836 607499064 623844692 31162005 107160935 328206684 921935365 910583993 980282028 686752159 889432759 984564937 992707794 857494001 957780750 229180034 823384115 229593107 458271937 623594779 969265295 743124439 768598690 653507252 793804477 84441452 843967503 392246408 613228123 918338649 919464866 447750068 711322074 736853183 775654167 287860886 782108240 828781273 996427853 177508781 726602770 753381480 943511657 245884119 944995510 485098384 713246441 266433330 531145255 329060133 344535528 529512170 778563428 929917087 985254635 749036899 942171399 637871602 894597659 633303200 952892448 257156372 886379964 917156971 952670830 67155439 214678639 458652030 673706960 101957012 456122752 581931042 943061224 57928191 854637489 719274621 997336108 556392280 982490735 445074674 862081797 263139215 470114071 87139042 214612499 655816057 879548629 793149414 823377778 586217802 769407686 99244275 547239543 581478929 698292189 430120340 818186444 70730576 880500867 264986115 619546207 979533359 982714404 205040580 623130221 440195361 921854935 210437865 680057610 128008378 879068092 191112527 406485532 778815512 827762371 129665818 794204158 893301649 905474157 82435037 398355991 582573836 627223518 892957240 996232689 162414296 470410595 728997214 971809611 647120044 844502954 257748176 397556153 453609782 568075777 395271917 821659346 292459987 656198306 623615853 681290541 903928255 984421785 533062572 689527483 857184291 867705431 789320773 904792741 205209857 327142918 895335903 917359597 355162427 747163635 158924688 879770134 500992184 889835392 72752069 384897986 146827411 655775010 650500427 740113521 676172809 807323144 996441570 996520139 272620350 783694548 890396371 963509771 594655935 918271212 125264347 158828935 939382944 974977731 330355126 775019225 170827509 571661005 698493015 843574422 305628685 681987911 890698833 922290315 769186709 839393442 252885999 625923728 908565518 999504121 724385247 963734609 256006669 631746388 505022027 913287813 499460232 852607317 850223087 950757363 563925558 819405638 236717534 655617233 722308099 804954662 973618447 998989824 212187454 707608113 489043881 889054857 268935412 295688654 447266275 821697397 569246672 802827749 777447719 883537048 969322786 978173083 309447573 504116538 165257282 778704059 239709005 368736453 755024685 878211996 727566446 735532819 361703381 960691917 918572479 988855753 87430776 485476411 734592969 955864036 412620173 882830460 856079108 944512934 415798265 715603286 274425130 563123486 447475535 674194519 57105496 311349208 609796053 713599350 309254849 911663488 165997847 317250642 913293274 947081987 536217909 695347347 494448686 849069219 869780362 999762189 14174030 192240563 218855482 489773822 892271650 954087647 212581988 402185834 104214573 892976839 533867908 801613781 727354208 822170194 158549318 167334043 710550416 909618108 499718646 959984177 874143036 994916330 611063722 901175200 937271908 978435768 144532427 383430545 765887594 786163996 201327574 863232165 123935759 837175995 213749879 517852183 571893589 633401021 401445075 790885952 337038715 479919111 187668444 848568284 734756426 862811083 130199320 852505355 940625878 990625749 177436671 727425226 9568652 379603710 891981449 984303072 610573330 612108052 589733829 636402888 212694106 762387889 318201653 393664117 951659921 968033386 369568468 974118743 622493381 752411869 237127378 549111791 308654465 813857288 472927023 878767034 840040604 986754998 487129393 506686352 948746547 992521188 955429414 962558533 683100859 754512089 724775992 815139334 512472728 824762026 692068479 853812742 929530135 950132601 787316852 963226330 587148154 815393687 787684593 874840774 846145753 894718485 913485070 940863824 555684251 744893542 111645079 730059725 520865624 699094128 903058260 954351647 521992851 552637992 480441944 601819046 467884810 490270685 676655825 741854098 223082966 754704748 101802656 907941182 720472449 739294031 523084824 947890621 802593788 820223613 487364511 816358371 962749071 973607008 732706536 984732624 318735777 731768177 734758677 816039037 960725940 983735558 612302499 884041638 918525221 992028812 911926145 985683344 921295761 936536748 2625738 122047342 727659865 995893591 117350974 177435175 523604199 573129740 347641134 718837171 14937323 935955293 672014623 853737786 101375055 482011763 308217955 507518501 771477123 861336038 241538562 599188230 363944401 976025675 561481691 903089091 84470728 984157854 924841923 943490086 775680841 998885428 846530595 896623684 428168912 945275797 253102183 990516347 42393206 320963725 643141193 943679479 532952798 582621906 154497504 512677818 587989258 903083788 796626421 978970072 559196725 646707901 337963364 990067872 771423759 828132240 747603533 769298744 684551301 797145200 970586304 982132731 702729218 816352052 995594870 998568278 368901477 543711611 165649854 433593089 777445777 847647876 701624084 781623593 253134458 686897508 276569700 811559362 929311383 943647881 853142533 871794527 456710318 624178797 764435699 818118121 136892013 314897814 62051239 690872356 96590629 705221539 554156069 752405588 515209388 526172816 294492113 400245265 756993850 926158445 163032212 393427157 821380921 984193355 899470601 958934190 824090986 992710244 832522876 944781130 961777850 984905138 139034547 425818802 651504525 852604640 542853038 688498794 251202384 405833130 294899241 496983941 265271212 404304614 927258172 931010412 238447161 792088685 639803155 779363194 790328821 997672615 394611296 436546865 797619261 884501887 561492999 772272050 322089820 904779440 872320131 913664013 407235572 937766471 870027119 975375662 294364365 443784037 690804837 721359464 179742065 749050688 606503917 764137861 588536301 782396777 403213200 973645075 82225003 392798422 499578203 553224157 372887869 910575900 798982594 958930392 519524987 737342124 461551609 463284643 819686723 924424689 40388860 638048961 687018715 804502367 676496386 903598262 756694911 852890112 832416431 959675602 736950224 761934912 457424717 504781282 889119010 927134015 515742655 990104330 564439591 971452171 156902107 380084549 354535660 758062109 266131221 916569050 518356296 891294032 923656767 979929167 851853951 957199417 696012876 903256131 585413784 719263675 824788426 866243575 799384776 863898896 409574715 605190467 521820646 708238667 19756896 43741232 110385046 550895271 560401067 734891243 862404586 884217041 744106514 784732882 212250559 727666815 185023601 907336322 146264742 371812792 686462331 897448082 70378205 483794388 497299170 655022669 910378262 986332332 714290379 780027731 13704515 174656228 557410293 589533019 389029498 867742445 980439713 986568763 53160560 919243582 349968051 421514399 237293626 270459441 220688174 589189951 3358171 37739122 456144039 752768476 224847947 695651341 202966298 485944628 282891876 327735695 361889160 523027325 287828964 422070954 853963703 948224456 338935384 863522769 55141369 248886225 580850395 683360355 14774932 446451164 134260001 241292701 461821703 693990079 874675095 912513789 522448918 837992561 969765385 971187264 406396526 955001558 561463769 695187509 291168635 385587787 530346289 895219806 716823650 949503484 476054628 644975952 391800372 763656145 582800530 641551037 549163630 567813432 444220067 649665274 916672335 987272154 774220498 821399758 660021742 888634085 491514029 592015589 379074259 478192867 260609966 296285192 424698454 969891691 600825755 844159707 882494518 886051466 646143188 802285495 817273347 817853846 995692320 995814781 34872147 937465094 303285267 481803703 593078210 808366376 901471972 933417107 351187707 475506434 361405830 417910497 79785528 627882719 359611391 506498887 704831538 719485749 246494137 305740591 290859435 811973727 727053703 801309114 833033054 938473743 91746225 922873477 351804753 428145566 37851551 662952118 834461676 856166849 420795642 947308755 644733019 721663353 527490806 773647611 949888272 992390364 483775133 560397931 162224946 361377978 182194234 463211576 820265384 954181263 37684696 830042640 69331826 921901253 549592530 729121116 48288568 837105791 505735788 908162700 473924404 549151227 515131001 915507144 921849975 921923472 822738595 966092573 559795506 816153468 972153866 993107691 570635610 580484585 5059626 265546192 134649865 790223921 122824226 265888961 544132665 629972474 619362639 888917790 314890623 916399507 434537962 808986032 579504777 759655671 122110765 504143597 843644036 863314618 344327389 467350158 729656419 763449079 631186954 747631887 973776181 987682516 580966675 781278834 332384726 379623146 111494371 708173106 967289852 999773600 265307529 273195571 68620798 113187641 280720712 840442398 137094760 266354635 821734985 868117543 498444991 933911251 899899964 924730090 691716756 932871027 524810792 779812493 524406853 787924769 813129038 933490198 529479389 900228697 165619673 842723578 368254828 527876362 998776243 999177239 954192831 985041374 870549803 879072677 679008157 897886128 729712259 902883071 594994325 964296460 188951491 357131880 591578498 782136968 682759743 783665640 262161237 571223420 282204327 415222331 151341400 791381463 177628105 253292448 731601137 790823060 661795797 864006206 983994665 994332983 827401310 925409240 599342116 889815953 331010116 876246711 906045496 956512065 977404176 988138384 616267558 984749841 477477075 607588765 807339504 882002924 159311665 778186432 952111024 967736825 907205468 931273555 858596931 976162654 354336094 631462420 395559510 499595626 798397623 815739245 278478334 465213633 166949013 895299313 554798195 626737839 931373028 962580144 17402045 978707145 842820350 971607891 905128763 979097272 92987112 247843861 59867770 291495771 523334059 595364755 748801933 814800913 940352206 958993442 202720636 614480316 893082093 963947917 543700932 627842026 710634897 943498043 339584021 405907880 153638780 157732152 285279332 692226838 819720433 950515869 470256024 729725768 407735408 871290825 747126772 923402211 933653513 966407078 181075485 868217548 809177331 908360324 250313787 914898864 555986911 574560789 328964944 338106137 562632342 646586173 757394574 846793861 696599918 943235068 680252583 824588437 787715187 908379393 984878756 996623829 885327119 971520660 893818281 922058755 227943977 480561376 978031156 983854477 971378201 973634955 627105582 903860755 748471539 998169984 36630221 771440625 685826440 945578264 779955674 834419590 959290531 968711382 265488486 940386905 606409882 821349257 472036246 764951576 160756703 353746684 684491695 740121736 758411083 892802429 637584448 863974462 557273175 878949823 388397579 897314946 456476996 622762228 407666014 792228322 317703448 454783213 43447741 993323925 349544631 663603893 445971874 942018628 283224808 812007633 860462729 973020470 646559377 812483577 599388556 788625192 308994799 410973925 678765455 899188817 824247458 832444926 712405491 929498822 7115448 337278971 769095760 925935587 221852841 508618843 259352103 326315827 797772029 991725247 538792401 614761066 316939380 679964771 380774522 691653240 44850915 916754509 845657911 856686814 654058822 755057824 902073134 955379530 479740957 795106941 860219411 933309686 537031491 621303972 365670860 780100574 778116128 865273825 361987254 816094853 80680894 416403538 594101974 922827697 722495152 878670114 547460787 953581264 451639067 519742004 689178811 879545557 684650054 778847633 416065468 726139578 948047347 957118362 628298866 640538466 508474728 796779071 46541110 851916491 170235630 895874719 113491490 120689575 962072974 987194325 728312013 881140015 489749003 950976060 950121414 996401235 213703880 868607947 771413870 836274444 101328809 694531261 959952747 988605704 534045010 581375335 331569653 342436208 336152478 742261128 306350770 624771494 472305474 853918828 819631498 879192648 800366465 982169910 112727057 719405048 486748160 954911445 304590705 619874096 825151861 833788375 484010046 578792777 47519520 242760107 183543378 622827934 739456281 980537730 845503971 966347666 898953632 934383823 341913909 840916379 339773798 809106596 443536872 873073320 77354949 380810162 64885309 568237685 849374214 991829382 154767938 358124051 410186344 895369494 899582640 944770209 320269408 918317911 813290308 951608034 113989785 602352356 687913102 694395862 425262666 856651754 875054086 954867251 615895765 765526354 581904244 608016608 605240686 687072204 111085508 446743038 710462767 952955747 849916717 886559729 185043455 626613255 747776671 861790712 943536431 970844373 103889532 941034157 102153675 758496585 462086139 491733618 354333281 444973778 623881533 907941615 111990745 569639597 78717203 648406146 779030391 829674211 887285886 956284080 204362854 374048090 306924668 813134856 654355015 779540472 672791789 782848982 194105015 972129279 928763687 989113217 668585974 797501715 814729363 827409881 7418413 269213413 869723330 974024575 953033929 984558121 350851882 795341702 112203003 977026901 660445741 973011912 705260112 915127940 451252128 720742914 856972340 991294690 1070447 542796594 900652355 903506166 448345232 811895951 387632148 609123186 845425350 859685615 573284694 969335152 826511781 868074386 81486319 165710448 987143871 987559225 458830868 942301931 257106437 634457438 652225385 935026912 577494683 751098807 726167095 980176791 139586972 441529452 853689599 863427577 802366778 875515402 965910747 970293621 592767689 815551202 701398851 772863374 435421017 485174948 557301387 866521770 138475659 638644667 84394144 441452635 588867935 823152689 572373011 947406646 342026250 483034777 292747961 605504376 667714067 748954452 198073391 631812717 265871091 999802145 563561504 962927122 727265455 839842519 550064020 789232048 442785260 852726711 557513143 916135827 209511912 737381648 834424437 893501412 855711529 857750697 705787281 918426426 149653970 714159547 863891012 903707777 445508592 601881214 892673198 948243799 385850331 393262969 252739001 502729319 945585924 958485690 161315860 923184611 480928422 905436406 592180001 640914919 7471157 724589597 699529162 720734577 209367409 547811880 695197977 790733044 29811864 120080721 940335537 951677771 381239632 638511117 443557186 897276184 87474963 472965114 927247715 974031110 90374955 740598777 352964849 834048449 911926637 963106895 280774154 336939700 905347418 933758735 189203288 852288090 151364870 483647589 509005909 979694671 343067255 929611931 853386984 872568658 206513924 738621610 278670391 571591720 82075555 320979929 293801754 597042520 256513270 821910541 484516078 902925348 353847867 357728592 718814701 968368645 487819932 662599816 792651079 967606586 470072582 557043256 577139183 628901476 532928480 771632763 95698309 206671549 770546274 922471434 80049657 237362416 280540991 519099211 304737871 394034295 594868630 948912954 831904333 914549044 478902939 532548853 102290587 252925916 690095389 952670664 451292268 894149089 554475656 664593559 530064513 881625785 532315104 791447559 151800196 373799532 385495334 818996970 729039314 743271303 124805309 962790368 326210301 992207423 572065334 983368375 86326061 312936174 414595288 434199225 684779966 803042418 140248883 736073929 590771529 994324764 659387356 812989360 899554806 942121725 46454488 169594915 921903711 999635331 63968778 762897447 554969206 817918504 18728863 739209441 673144361 759337164 255776801 958509289 916351964 944690358 235302196 438506343 943690915 989308824 845781987 878772529 66712788 344217038 606052641 629155883 502866211 507944928 752975509 855907765 89365417 399101996 841122716 969333933 619108151 845933874 179789729 950074010 566754678 942710337 308644930 451195632 262681355 590338219 482386024 888044154 561899874 604514935 290676755 586580373 405376170 816796459 424703531 763278732 78447611 701121266 810363901 985828658 455816756 604251919 881405918 933490765 836937913 862240672 672406201 902604896 941337228 966642979 924135510 942391300 854444978 983166987 503113353 941436294 669761844 689174003 555472061 875458381 445969616 988531974 370192429 665002870 699165488 713598863 617674804 940137780 815647930 826831386 451509882 820477992 933897829 968497793 531852439 872164781 941365502 961442782 535587780 689582892 940982702 986428233 2038229 163460668 261510695 603172819 182693979 678970365 578197156 967279622 148645458 440544404 718232435 839339064 61936958 746770720 669296047 845746885 516797173 870093254 699003662 728206411 868129858 974970332 827724572 903863488 20870639 456251528 709407832 983839601 957134393 969427520 915867740 997660930 553348871 975606177 533257977 806930277 844536687 904234216 178175432 386006427 186571296 678609736 41247991 193448702 651449151 805126548 50381072 558098575 991400111 996757242 86295873 249326483 146928703 186791926 490817210 689409651 826933240 967065327 409082567 750424027 765834271 860027382 569374615 893918503 678393584 730512953 971987029 987157665 980247805 991562911 851904007 952903118 967058004 984282837 722533274 870709935 4079303 155330530 162388725 304488328 444425344 467337422 173344664 867739268 226145512 927572851 201262271 842213489 80218736 779152411 558534321 845450331 287742266 587538839 86246147 188154436 857985489 926588557 818678599 971693123 896130849 941512269 31343201 669457208 288893887 707659064 221744476 592438165 1250397 419486159 410548492 529632583 113812610 967925200 837693951 922772182 222311918 586414679 506668511 792994652 7897345 648996229 455184555 678642393 342138149 613889658 61286313 666926882 119539005 820937736 394566223 451675166 828463915 901476293 191491370 637362604 313900908 503316806 867323965 872887907 38629292 633083492 147976841 157404887 13866681 743569073 613373531 763012897 33494184 92505307 435107460 647454452 566915108 658849956 345442500 527122999 71159468 731339739 404555432 680842419 514525454 770761812 832065067 936841640 166846925 771127470 310945231 660955889 596159424 632211885 372009588 644342577 748836622 955991282 754442943 829404058 7792301 325005353 64276778 476349317 353769840 436449812 694003983 972015895 143751722 529203793 777596064 977167345 162677179 698796170 878875383 940660835 797546491 989077529 618491312 668836224 889857020 960182320 569089278 716975043 517133682 682712050 580025608 660007727 990676768 999354840 221357271 346414168 242373323 372171857 220935396 697227623 146375184 498820771 773230522 938592541 261163678 552801648 677561687 809334018 359878323 370006784 718221169 804545413 406612650 549359093 185758830 203618971 285825958 576256360 455373004 479313528 840799701 922074734 498458668 601477881 163112073 550902865 950333895 978152367 860959021 944933405 133678051 629953885 826498530 942473594 316218858 467809823 350039839 786227090 299808348 887048295 536256374 794821502 939060932 977007266 249884170 986514005 745050028 924630089 601021276 675627675 362838939 745273678 804830199 822668981 911003394 915258852 597721178 705055554 401437482 625830326 646691634 916520234 900961282 924137856 678129239 923138179 260987186 878959139 812560381 835396601 349876951 847782096 208627635 839438269 507689255 591482920 951015109 966451225 875360088 891961286 449380172 705491963 611466082 669580340 772280422 840990248 230946166 429940466 239465416 996297268 414777473 858729937 686530241 850747550 369364636 704663979 62889973 704605235 779636555 943984975 416607519 875186272 625727848 988752939 992774142 999037161 872551068 905432690 582926222 894651876 880337439 905523420 108955563 855409461 539299996 864242653 813497846 978987222 66397222 822136909 722779043 813888750 796714669 809183909 899483638 979834611 862076061 956266798 550566817 709163452 493552058 592010630 210345100 742839784 897549117 920751132 496963198 565106312 250997768 485654085 704256494 733058186 401430913 984871195 608319947 842581172 800986111 824454164 820933294 951191913 284351243 386253542 483687889 929108360 174313691 789715364 56187517 745098643 321970372 522181338 686954820 771101108 983469112 992893057 480691101 753038868 556287751 609228494 166295179 361396389 499766686 824500161 333250729 828173772 818148391 853150120 452363238 538823455 429543113 774531901 252047850 572023294 531167638 756263318 972152323 999386464 458999676 767813690 355811850 664949269 241709292 622911414 503431390 933893385 542318064 869202264 496450749 914414871 187834362 620096042 534872713 835523390 242199089 360791792 589606224 802909781 998369173 999830726 127610070 583665940 396613234 732570826 149061921 565234905 408161772 902039634 652004678 827930773 495017648 661892846 754959801 963845330 200701579 214473898 795970094 994455135 416535250 665213216 645718782 824685506 809718048 934263178 148359081 312493245 787137821 982302311 464249049 786505311 850136135 909266263 835030504 915990152 303662057 859804350 428369855 559260239 176851504 596263846 922879936 964622715 199224545 667992950 479244144 646936927 252656631 402296589 659012563 828188752 939397686 981850971 327832185 686757163 531159353 913667202 217360777 800197987 769419359 952949234 7747703 923620237 36172968 548933925 345115273 416794675 749146972 988009274 671472062 888418103 473259195 900559427 838403007 851185081 689674776 960844857 287923027 900759651 408329758 595758056 979009988 987659840 526779385 888180638 290263116 866882229 490411978 902594273 955636360 996263102 19908801 981503675 888000115 932207039 636533481 982153870 795372399 836862317 737689707 820380350 410175850 666947764 170167207 635903615 55245307 126122366 486919240 996443350 467046450 611844827 661433414 810823791 91509547 433253274 680765115 882427187 391731238 912037138 492156184 581860716 201007202 329784449 836693810 943026479 895670948 947372092 236564553 567146902 990238046 991301323 140311393 198193343 570483379 792601532 647096550 888005607 193988136 302307321 101537091 832244525 660468795 937898749 928606650 952880317 13635536 248347352 476185416 743894978 512599704 716043507 333220587 994379794 947604182 964945591 260315770 925767889 872311286 874137428 134232851 436981183 607106018 843313776 30350858 161501744 684043288 811439790 211920603 543520281 604261928 701004868 570696224 787859983 613817249 782417550 267292128 814756530 511193563 515480990 650250638 974770017 428030182 796411498 287935397 759706336 841407604 845023340 714525328 784508881 203247792 440557489 997641272 998654756 815685380 843924373 54446902 332672703 562911168 734101667 393379913 445220247 9261068 526700235 354235137 363234818 564569882 687056007 320389242 870715987 487699147 840806970 302897282 744925068 925868272 944178891 945421625 982186147 117862381 654774972 595449021 951096336 24258781 958984824 426173977 771589293 324293254 402543377 114238285 436534430 970933215 987302875 631213632 697552655 525334171 972561812 11114079 133867841 740661250 801726811 798824121 815798461 786498622 973175776 354636234 876268384 860761305 876528754 295570576 794230788 518325906 832735314 619539048 798920028 954462155 990312783 996549707 998579300 718083743 872957240 677400407 816585852 302267672 687512403 464919571 562109680 255373048 757202399 161094122 284159601 924642125 971223671 632252807 755338987 313584445 353006007 427199538 890126303 287122989 753198875 472688378 535479153 392261785 475187196 484814941 853148736 388510510 840488093 956092522 992464279 817564805 910983610 632301550 658637186 435877909 558325288 923713709 959233519 695845572 887112600 898227243 931693564 670885500 951181354 434278697 528539824 122943424 486083208 55406818 692618454 121959848 341558685 741026341 798469230 960570341 970654126 763594820 975765951 426357768 683341515 790286272 901719453 701982228 702246464 553871883 970191344 68692226 837803587 475429694 846359064 486512540 895352152 953951391 991205600 789752515 844935940 568629075 919540747 495413937 800999162 61967233 918612396 322459980 481783028 934446466 967943893 800167179 896734514 638407559 978362573 715907231 833542953 678432201 694464298 587771446 627537211 57165568 99040173 829232419 891443623 690152952 985584929 727967712 906362242 981944660 998344568 404813914 672253360 837804216 877761278 647192131 864131634 844479280 860119952 380445925 993204757 324228409 706420340 450899869 524907436 836220701 837835226 559689858 980559239 922119846 989916982 940147156 955583717 517258425 676943423 12475195 933713434 110753894 461398794 589803760 610190411 205372391 238140957 80508316 363264479 128892368 996408696 49850907 908702782 849720101 860967600 414215502 880970361 439695087 754398878 168479977 636029177 728886494 833106376 253707619 938212208 425560813 650432846 305550199 404394169 382793468 653763181 548737376 865450280 848363961 962401596 970668085 981764475 721972957 756537298 161822211 828266499 529155013 770559807 185272467 593534506 751710756 945294779 32943206 246219032 796700497 857461607 252051718 560109064 846065640 958567014 983787250 993048793 916696673 952572240 834605395 911978073 793456071 931450599 276632717 580953909 569409796 663408324 548712166 703062361 639106690 784373196 744537802 899750295 976466309 984885384 717992533 790415490 225921641 943227200 473615404 551716128 250507560 464669121 309875488 846229380 272126528 416812409 27370384 986964126 728471670 853563910 317118074 450770060 587008232 609963866 975860508 991250730 329287402 564482153 704740518 911516317 692852290 770424707 729840026 930569645 79872111 127520114 837044923 984193945 836517601 946391363 985081998 991202960 93729003 925558474 364325638 575199457 69965602 216642588 763313778 963611764 350765908 978232320 644188836 711356836 242865645 709198981 883219963 883373302 171777840 347806561 910855964 979905714 668229011 908013670 555936343 792048252 12417230 514240544 159682934 703781209 6895573 480271837 208076659 271958002 698940781 959803734 797881897 894454877 175945613 953764272 67093812 568344759 461013868 808041646 592448877 940494345 4987993 897168623 186636568 979782095 922894294 936365777 243925656 663142845 872610111 927828979 828139064 961405285 582881438 809089037 108098433 143897031 82126761 352927513 260642116 924875807 839549999 958413000 899246252 991284626 97230723 743859983 373960586 964326341 883945933 951384797 662734989 715955175 672508172 917014252 751933269 870583359 979605259 981659985 417636120 618958062 148886585 928165251 193084265 301284597 425533777 786271601 422913601 971224791 846690595 914901905 273963477 298359429 448446219 562390115 336463789 445869341 306470532 533036057 731289064 793694852 556867316 626289189 75184884 431179896 252574200 605886481 557968200 759769052 224788704 328035921 361568297 967265807 256297967 267558800 570166049 919686716 285605961 452467393 278060872 682699324 335287465 425995842 787427491 933024243 57387887 793229869 394326768 770046757 301403815 973220438 549319821 795751400 650663559 653396910 785105066 790715930 306507313 466094831 817307831 924660819 544415229 924879373 601915620 834174307 174430390 250650074 242747073 764452525 39121503 528911642 240171841 600872769 887269283 989992421 723688652 944648014 855018775 979905839 228754565 864789111 26606524 958464231 720510896 852546433 290178929 439038699 598681005 861910812 372786627 411883507 371442717 371672455 712405094 944272245 700288549 993814768 960926380 976580170 36857383 700461795 733207840 999003555 604682802 835803452 374260113 941696520 4683020 16654660 479345020 803341759 97888843 567575535 873797975 943777096 63092319 436265706 306443525 494159988 518371931 588987094 919581774 999956746 354883747 667656739 138008156 150325834 237803099 450518204 457215453 603038126 235531805 604878252 991723441 991882653 5536107 785393617 512995620 735312443 621968429 987048589 50629924 159324572 344449573 426443240 228706229 363406453 995624290 998419578 840461400 893338761 271863864 339772969 561202396 775754002 186531730 428057393 432802161 848915216 769072380 939452834 547799434 692514075 768720430 826450332 274568234 869827413 162218368 270752690 754129863 898224639 684653990 715785592 893701796 907872328 799387443 811203295 376452007 850403903 952829106 974109504 222992163 560219738 165170316 656583130 234321516 399678071 610116326 867167481 535772604 637995712 919737166 920770618 3449089 72647380 471160844 492132074 461201478 549616346 656691402 874522526 728395088 805833589 919609706 927354676 8651883 883376474 671106242 930435035 95316325 859647551 529873277 986205287 765782017 778265877 847671897 876538091 28954508 773539564 639304162 768489281 91608026 319061341 814531276 846384281 470623990 490320980 290369743 986889029 436183130 599015370 875154094 885881435 316001592 492872930 705177188 739943378 491978621 759873796 370954733 940470922 859849815 965013638 817025071 894497911 784866152 966674103 772826763 891702716 551039801 773620293 997121458 997820047 554521864 840733944 335400792 438968040 175970731 678563487 217234032 217439161 922547057 971237121 180766930 373929168 455399859 476959749 193403555 772339562 914838080 949681419 602439767 824765182 811701852 889211643 303011473 397250444 424532717 899328582 224809433 943454950 323916424 479855382 367600595 617131852 253857381 777775769 767937383 801040392 845260458 998563998 688830000 781544336 111465773 585395870 512149575 924307321 603205912 660746912 397585627 993681300 737881413 950121630 883293806 951607965 223563252 996273132 329561541 757708478 291069760 390175098 216471004 771069372 492226760 814210025 173735567 758935680 246453564 589283697 651652794 695733195 566134699 828088572 894426086 918954404 596711044 785843179 32491453 269583862 816555327 877270551 412568867 455849539 859329720 914369703 57035193 349263518 407089113 917953041 893688871 937449207 246162268 706634478 229279757 787808062 480930312 600525065 560690682 650578413 188202622 417297326 21262615 121155967 319492923 460483621 205801667 417490403 620158140 698405253 429377404 872133234 368573362 691647784 35575929 471790910 853825451 999583731 98436633 445913724 914166518 965183743 630517242 665871091 313887010 873575610 248560158 788981190 4921586 43962934 829853532 856997334 291482144 849648010 85609563 716768593 668584180 690961905 940660148 944203056 700497962 764440056 241920250 812505090 357726241 405962258 369937342 517658167 677264345 988768374 73716037 196930852 174181378 888533607 771111884 938722491 646058696 717013425 114937940 451269097 300700232 493823015 952791360 996024433 565254713 971526088 244077808 596336884 804823608 929242245 5785039 807285642 655772589 880315754 714597639 925728435 132632371 291964550 295413486 723463222 589491528 891716746 993370942 997722059 576490253 684238090 208151017 353474194 966417493 992022592 647759089 966452188 710689260 805689119 12437082 950226454 437499170 522206444 141625988 463032430 381946576 797524358 773458458 789564245 520162595 526682905 955330246 992091062 241989225 563442123 974091475 992767787 362867891 767823421 19609286 84768061 718626869 859830149 321733196 867525157 719674967 982859405 603678689 635311929 809427554 883910031 598616302 901147192 751068468 972636724 190360562 733564526 470540722 518279772 932866585 982267268 790280477 949948877 695216751 812424511 747072425 822539079 647995138 706856711 637244715 638354538 886918473 889863635 220933923 762078952 119808837 275608829 198031014 230771973 1412268 949361141 302746091 407640837 189048360 848470302 90406171 960042101 680200357 790783246 960180381 983030752 760120718 896653102 949532219 984087864 374631854 973753054 605555714 764583214 200075856 940675922 266565089 489715086 548652386 999056431 690564946 708823835 220593365 684870736 383827373 503590027 946427533 992857997 670355765 885911667 635314828 658667687 529343644 625089695 333599081 473996194 364760177 756039434 745491490 954587021 840472090 927726427 574181733 849845458 610126004 960669073 893514651 913106590 985138276 987682402 747712120 869189418 158822266 379392402 814873265 871513341 710401412 723914128 451384350 901331263 802054456 825715228 389374718 786883512 779889709 929253663 834416113 898137024 791536587 803202480 458897913 600944415 322159343 735671021 284284450 672698669 519614799 556766829 205792212 331172350 845291312 946304454 212703782 390762972 818161348 886610124 774686969 933019106 967078975 976150992 527806412 981876713 822224728 854187420 447766261 883763260 29871167 371178101 651104083 722903975 759692471 944158219 908759453 971015377 304402029 330623247 433178441 989112813 366360346 389948873 24096812 332857459 693898280 845307810 941185551 953753241 980641599 996503415 329644616 646196257 655840075 753049347 916987905 971669265 77666694 396314406 539808136 899850813 556114262 634929063 310226339 855837766 725465580 918638497 278967268 600882487 197943470 731548983 995046797 999162827 446572322 868016243 160586989 232667987 615096472 650338536 156319698 695452862 115255612 209187591 725456014 828784443 92519164 644428041 329211000 538592439 541213118 805040385 426290929 857606076 139308944 694116498 194211128 754656584 948809551 978554243 575715017 934419446 409633119 572384668 614366427 799818209 581431384 799437104 130150128 629803299 893419441 979221360 523561700 676914832 686696587 912885230 527097289 788889041 964950246 976104272 964546647 969907660 69675478 228639921 550557324 966394664 581102024 720801031 91222475 423360439 699282249 753208972 691416715 875642115 620383674 869273666 615024706 733392620 685701735 763828976 979557124 987163007 649072595 699198591 610948300 671085427 324849392 720138848 77687226 151721048 442972926 494290137 545381821 633380552 514109774 670538563 977862446 997926694 570736476 749066431 210446191 308166895 739233488 740154906 166381947 168077795 140857179 282380826 30151257 748497563 452517771 548597399 189673750 475882267 500728705 520452574 138560862 840750789 144397834 290813419 947973122 997362108 723849650 862916332 513661545 826070649 419689062 565080530 950298051 990678895 39361757 407487961 998779643 999081694 421129971 427467716 551910911 743983954 431308740 513121230 981122214 986206259 379020636 733599053 935985044 974242740 156030335 735201788 937659821 945483112 850723665 995379309 198062470 289831602 871184902 923278632 242288624 955723911 887696852 922433766 652074411 916725424 769468636 831719408 884989115 904464155 96073631 537397329 683599493 777314528 676284066 902819979 718824850 738872484 840377036 909180285 217615230 632210573 216334916 635696517 750543492 765016172 377531475 419896495 455028271 783153541 42911140 741907133 733022378 942874617 887998174 889737088 265703159 869925094 974192567 975506766 60314828 328384439 191259581 248400493 829695137 838488898 107325314 119915295 902071739 962432866 354707923 909221341 989788426 997902330 161282947 686882877 396780909 662235329 584272187 905988666 657011666 814839740 985874970 992636180 864582689 901901438 952159233 987461815 618796132 921270998 28159080 282512022 316478097 719908792 726541009 805186800 742310496 801060854 155064865 279108053 531392108 911590822 473988159 627289103 132202696 655758965 974054388 998781604 256110649 399393055 552770880 718892449 976082327 978415885 10079019 663334989 881606545 910214794 498681940 949635964 684785731 836164787 746598297 818823876 461155002 522357149 413741210 820520462 205288974 443130656 77219629 621996552 236198399 484084456 28391384 753956341 677132958 975187146 684170506 874334988 851493044 927048281 495835431 637136712 690538533 836689100 904555739 962011905 487175762 876597626 531405314 997621279 42102508 725650423 253204607 690613471 893061609 907972383 476609597 760643271 198218515 671443123 471193854 741511405 104105970 768598476 898174018 937365967 651471686 903315599 685831121 938894605 789867782 834008785 369188494 504786559 732157433 810220154 469651825 533072184 747957557 932338473 362674576 935243597 510767354 692626750 556550210 617989105 354340989 698814977 133601227 563241298 686257910 739161767 961412082 999407459 828203993 930566119 756716859 870255107 573271032 867370381 600920330 643893773 866234900 932503942 73860497 752555348 362023874 917146917 608973766 834937776 667258120 892947160 949821887 982965318 821569162 886215847 937023350 959501106 146748392 884907002 768086879 812868997 46795301 395895754 123745342 856284018 2344528 875372047 779531570 978925740 248134471 747489473 448982793 675778734 521459063 664254976 655467852 855621968 406159477 938375476 244146494 379343513 964190830 984080561 357502637 886208848 493087286 537786594 877304839 979228342 352175978 787241438 405523930 416439463 264845413 368532023 829639565 918817419 479014809 978173674 887414413 893624463 936607771 999238993 669311171 845779474 923248364 973024580 934902385 963864017 372553225 696520528 972945432 988926211 575635539 999662556 73142617 222674728 557278068 558949839 566745832 867162483 127992743 375114768 949866125 982041650 841076035 918558456 331729563 598874482 584795116 677972022 213029035 577288616 602340614 746858315 232886308 552645345 363186362 904451425 794317752 889760092 618838139 760063647 871287454 974092101 199909585 257248546 556613075 964253022 740019986 867775251 467559519 519473540 467119779 720220413 144023643 289174636 53083378 497303832 902511451 990396512 819492873 860387370 173263660 961868466 197944848 495084433 44853278 270858652 950524425 994622699 307134848 615522866 926354578 955386499 531833700 982486471 380344996 519220414 785913808 813840473 543225575 904341078 105403604 327064894 528412509 550444409 303545634 834253430 299509894 945160676 60875830 182539798 297005727 783970703 474774147 916149980 973916024 977540145 320579603 412513045 571619199 967545764 619781873 814068656 971106921 972348558 378492620 968960682 894509996 932153713 23921309 857695059 66411911 938571361 992896431 993846875 31737495 432629407 552314084 742988120 695885589 790778919 929894581 938069369 864237912 917272445 830936130 994995823 216856858 423855720 637905558 904301928 698493655 981110242 581306120 618790499 667317745 891095131 958071511 985064805 746103501 786759259 950105084 963169176 562753945 678309183 537258411 965118631 212060237 509445915 254473226 611712032 399804923 417448835 418214989 699153508 888763932 918037207 200012139 853522118 100747723 874070814 202109299 278135525 133882357 577694757 216552428 558240914 555241050 780157471 205952853 742818481 62014060 654835369 312798624 926127153 24649854 743003990 418805313 717296053 415462369 539303793 804108501 949575336 801655769 977015191 415861917 492985577 803294957 960797874 28315086 145204400 475115538 570675445 111196526 817081746 434047945 657544144 943932756 987557309 58979852 219047892 655131670 956388165 956741089 979189615 857027579 858594863 488252239 824773740 104327111 984662394 736900795 893236981 23747813 745277895 233840543 408322663 771322288 861506229 600998065 726252903 880621003 914594708 462094306 666627160 596404547 811700951 620579568 915424773 91061185 421471924 887405089 988874057 622030156 665633802 760955474 823509099 228605780 317041430 719797441 951102856 308694631 407901215 146287826 410278237 292426141 830145072 825514959 937165050 615591164 838523481 947090587 965302279 999321695 999329857 197971383 769631927 550835316 769530517 86713285 705305032 789571115 949442454 25912661 47394455 26630473 244114247 404143725 924639645 56966240 612056212 659250513 688132969 136859802 821132313 423046173 799006878 675084024 978730520 764417745 883151650 411765999 558184106 460283390 857231506 835039598 860945563 542221263 695460114 913427883 937808366 318571504 806635623 903062934 991158940 571894211 726965173 110023205 407111301 957874910 969661324 766990090 841447614 837638275 858928257 122850251 325106802 366499755 660250020 382168933 441619407 457143610 944786218 932401037 997472137 792091094 795745192 903558491 939929610 142446577 200287865 445520169 840997289 323966903 719266475 769270996 997114264 305884226 394941271 224419136 475164224 789014284 923893956 965920013 986379737 34572227 681748260 737846309 743915322 625562858 792311698 743556249 997012146 222479071 290038700 264490150 406283624 589718878 823778118 368868729 371417684 107001944 641672976 235100843 845736996 271316861 685108336 356031896 408455457 121358818 663452714 208707568 772840466 995692311 998449024 110617053 847697403 952910099 980148938 173288818 483444886 120450279 170772736 70513547 286960924 695874758 824206770 671000881 766659794 954424608 974814591 470550152 713011242 417839401 491900625 125726938 436577530 825267373 892664930 272448810 982728500 14951520 204248459 67464226 227700347 827395439 918553303 500379199 854218436 445241662 670029564 829037440 960396779 167381088 322566736 914929099 979418743 551817 51984425 239019711 543657524 755241956 780552970 999719133 999800952 15008208 741484291 981375979 998110404 670269087 685198665 433209421 640711115 866385400 971082963 441892882 499065494 758466814 962265857 127023371 935181246 723158799 956166700 413281196 461681155 871967513 964463713 291450611 919894233 850541921 859421466 294719302 862265474 584260741 869555273 200088707 403962689 264465242 912422784 559141076 913522655 589528596 851086610 358998141 971558986 397115339 844477422 792291748 852305522 554575121 733255013 463731775 612121525 17178578 951605230 930784450 941161512 189498057 697580957 71041727 497790646 39039561 370948917 528613868 926938261 67234547 988886341 735743557 778670895 428418307 812633909 825188560 991216399 438556177 910163612 188025565 621277217 215708693 484928478 551444359 618434953 355272052 719737114 281357959 943877916 81865904 435375345 557472754 582896145 900626042 977914905 377377780 519773391 964718138 996575559 100776076 336604977 217209194 945976881 875326972 956091867 845439155 892063579 424812247 847671027 529779360 755140516 153512474 316693812 995976472 996791366 595514697 654137059 692899554 751872858 817042849 970125545 43290235 392292080 126990018 840392937 296350022 719509641 824678175 908399659 857750742 876738923 305479639 859753294 425629004 502613863 410432968 975559682 342469578 735460202 838212097 868679850 823784372 936677500 814928207 868132127 948459011 988457479 814169124 891781868 549763980 647640580 857377924 918170569 18546869 412399672 902253424 978538023 3710744 210542558 771822780 922710281 722394179 896534455 494201626 884170096 468806779 725126095 38940954 234182341 156943357 553449452 326748517 807326299 626042528 754223643 601169410 812700213 726053741 973039960 749421452 812420098 608418056 674569023 789322766 994691590 408625348 701421947 864960495 902079044 32596301 276890770 459119001 542314712 196434843 841166666 145333096 481087285 752947780 814608663 354236533 919867812 557812510 765841755 943066617 950828568 544422097 955307136 279261542 406287647 39546130 849055171 597481403 994709469 777049339 847117282 223948737 666724195 734123528 973600753 663001595 877847986 904255238 972466158 745424008 945226859 618679673 661602970 55268234 169168825 995281502 999942271 552579542 654201734 546642026 639153251 854968253 967111510 710936989 906154879 111228432 581211635 114759840 776043911 183260491 425311448 374054717 830703976 853475770 935301858 547313888 726883771 705510007 956749644 402031796 776295685 973494216 987161269 578343436 886548949 936820016 941697334 724482283 956498950 344753101 581785894 310203268 337424876 637216085 956203292 328185181 787400528 72809127 857533071 315093110 653752105 169751234 635376114 569913288 993446405 487781173 982955005 566924523 645353229 965127952 976810944 644638460 828963627 98561655 397559774 900214975 915926809 404791414 540104929 210825705 636518584 630987943 922899156 85907564 482823933 991135362 991820942 544434201 971215372 780487088 796284184 777058261 797470839 308253111 471359353 442703348 498970210 748737597 901824521 683206287 794430044 963073299 982116533 45919031 623557174 276170411 277092463 781458417 809599512 108062432 887120343 273610012 806359268 782633940 946601653 328490688 483462635 61113652 859664342 161261054 872465095 328312686 978220605 747158508 826635968 997693622 997825905 86346367 702872745 314363218 937019437 401809578 600737693 10090489 470972645 274268842 543140814 238375056 297855166 528361773 599209740 314679029 539230406 59170136 432672526 174839657 207735430 141886232 509033118 844653387 992746494 426765545 776902157 956015768 982322885 949609208 996119185 207471148 934230440 83146190 756640458 620404613 640903987 248832420 976609750 839420308 979797130 467868532 478546641 497153621 968587170 581050787 639235738 963035481 974810861 588087952 793123514 204468940 218470832 526249974 800683053 280442671 383714010 700036128 969336810 791663459 859825931 821405018 943286805 244327792 941569313 973367020 979433690 129176480 229375676 511861160 645433984 811370825 818173549 677075959 989003516 908198824 941406413 312309117 564482563 677406901 874237378 634940549 644040174 73766998 219948991 321960597 891239727 59538268 825008326 75460478 677002227 300050831 814673387 362945135 511353012 891004307 947222036 308296442 927380642 476244354 839317952 482298967 956270891 637138356 892799308 106905381 716145451 745763992 912830381 60023257 112802233 428458095 842842910 749540991 859333467 484918685 639185004 861178202 981459319 721662571 723412919 687070267 864241269 165852102 993053831 49718621 428919355 201273882 961012758 387049168 724004943 626104482 882355198 475930462 795370059 372226386 440818309 605132591 954335800 674409826 948266401 318900208 916103674 952756375 992377074 917854127 943893170 146418173 459233612 684693310 761401871 559273992 865034045 648120713 726294399 223316729 675847589 105234877 621136688 319607886 435017876 413220511 648708018 974902526 986421011 474537922 759759439 900404796 966074349 548104328 971238787 845310039 930701815 358503113 758865013 981258985 991869450 780722589 955124403 824623806 934661599 747513227 864613440 52464400 523612980 738181583 742415426 855104583 989024818 36081277 760035177 874330081 874672838 466007454 960256565 749267941 752326158 113860937 833960134 926377591 990731361 362779229 605333255 538079491 985557270 805351925 928490666 100447633 839394007 915479916 918403356 689030237 806126680 539096533 689685845 912454175 925811129 10902502 161263304 144642101 825883889 654536395 847335463 715616390 969724660 156482462 810870689 762168339 838640105 927243074 999714003 616293079 737126133 767416098 878042815 362084273 637425821 587673736 663741366 640621794 901172047 92854528 668833897 340698668 418915694 875343054 989522452 270443353 808603878 615109994 652374419 359455203 669487967 231160150 244855767 214204242 647187425 401929074 456881651 134751525 274427724 50166140 714159849 657821161 880819676 414376882 935587625 390189441 518493388 753657950 813243482 321522791 704322443 612355019 831183435 885851203 936898862 429015839 974185142 301777854 742818079 28732045 352729335 558589071 679885079 605803263 870992253 565213163 857775382 140762259 645212240 99961081 584568660 457474138 737413899 957438508 992132948 471410999 609177443 321361689 909080616 788812817 899637655 299979379 633914983 984225659 986663250 146411276 894919246 507954006 826103965 340199701 801888297 104011069 903306668 860254494 904138153 10046702 252935253 755422120 858452401 214943625 321345222 61438341 166243447 781621103 954374177 439161665 911446295 28710959 79798392 536598449 765715546 16438142 976834826 992879470 999518864 803338378 985127929 694524465 916851387 264203989 495929331 434794830 461222753 739186562 836505513 523198219 870092685 161097677 885153495 469516125 736396864 676421530 907098795 818944348 940528935 752111150 966789842 159165415 629346681 365833080 410047018 689905448 906009225 510667911 875602749 514420706 794150438 226481338 894626269 113380671 494385222 887062268 968987365 688987504 805525374 860600500 974027735 325919636 709278754 450130951 988793571 70206080 969219218 422814906 955706771 836631833 914258292 433461242 892389496 542567900 949682328 810619855 945156504 272446087 814880883 164491032 664643180 10812196 294049677 592090695 723120294 10332032 855395688 188808939 356154464 906282614 990053370 297772133 779363667 294218252 577672431 902208011 931132758 802078744 870909558 941624106 995395711 115498934 742441023 85239020 103440829 960410381 982170955 486801224 860751597 147553523 320023899 825571844 901735643 405068789 605228795 705961444 850248203 924526711 995918233 602053192 635370874 29849707 210225462 64208674 583996509 203006883 661480070 354023080 835831037 956559077 994422789 862808115 891691514 118304169 133370889 969005066 981614748 28900962 826967587 7725387 153926095 679411885 860567660 415664003 875085036 572241915 784124236 554246645 625631477 274851332 465131528 897384996 897935212 244275545 940852336 290504314 331663133 77655678 388899403 194580189 755357885 434514427 568388186 878279123 982997040 745115687 874873437 629493071 960112836 534048435 560117189 743176986 782100224 837114367 884431287 559536897 811282740 551401628 792151006 657518496 834155295 322469526 497363561 489324145 683574549 6699485 710647542 997067545 998762105 259114003 574809918 999036434 999346335 750769783 947997854 703009938 966485113 1580345 970706525 548006444 656236890 48281496 313202102 759480496 802974159 406716294 674372280 192077142 282439709 944439050 958152194 22371177 158849682 167269513 844824292 814491937 965486988 374308617 582081282 208111 854811823 846570857 928975221 234197399 788054724 739026190 763208230 108774545 442200236 139783724 201298772 943373434 959171002 52693852 298957087 916757484 939618077 659616630 996287629 699726621 916554274 283073094 713272255 25120317 775578727 791063596 856215204 322575378 960812109 609231331 635016662 578495500 820388431 780605452 935222887 172333800 378377925 858251169 911128374 723430751 755483662 348582563 591249835 24490937 956517511 993724836 995613885 88101381 886957966 920751337 946567823 836839621 874388421 468188522 974681908 949765510 970473084 747100141 866458970 431538857 530265143 71522893 106605070 388090598 581552144 867088758 940295486 472648698 597710371 205360340 697552913 900387313 982996088 69365413 458171827 444084349 577267891 665680304 990972910 579832017 820959148 580047722 658887842 92578148 861005217 481774918 746598315 335306889 761974362 606694505 740925885 227781194 372742966 502146849 964057256 955483234 990124745 60561721 691550498 657169015 696956836 297560327 493627452 793836830 986686387 676091725 854110545 309926228 658087214 817726215 852693608 128932303 900069777 908987592 976519057 316016734 404585962 395795390 755731235 30182573 757121969 672957371 740804434 688812739 804287351 629226468 879058884 144371507 381145434 746641369 817290332 851223774 895628022 137738045 862122687 827191708 840551209 964915902 973025185 396559565 908804454 654325355 760083394 319248276 759028260 9485684 444763521 367052511 658316822 975185303 993941025 48297789 291808933 499281435 945478090 968152511 991011717 647348053 962434149 495902075 592961791 144430036 313967602 92353167 906170841 480537590 857311131 66715318 389938635 478988588 983182141 610361161 630673257 444169961 794110273 987825776 991327403 248276605 404071312 766038932 877983807 601900475 830237096 810262460 887366831 3230881 724945219 956055242 982640561 914690 159428261 367968852 766627105 160656201 760234540 100747536 278015500 259060025 526651376 890125448 947261342 46462865 676340741 466240895 855513820 384714591 575981526 608754981 928934739 928376170 930948692 185257182 902182990 511301737 773604567 615326271 633863566 820829548 976535946 868773739 886303852 661958086 867315089 881809997 981185698 936883631 993139928 143827046 926587139 500517030 955435324 120461249 886068454 660510415 937133643 965741386 967375899 575513506 816435638 249141399 589656816 627169915 900852386 771295578 953292193 163335590 290621386 9501899 36525524 739367950 755664315 891671585 915264682 973299496 999154507 994228474 997357124 627581791 967720131 3341539 992981733 913170655 925022991 6183077 252758149 189182161 779980011 67480700 599223683 93126675 664654362 654223694 782214334 626743893 969391483 778768350 972095806 978177747 980249488 62990468 444667292 51609205 733136049 872359785 967823341 877492309 888720222 972714082 983807560 284369085 787137062 180205109 399912068 252122238 518440682 540220272 821802165 279692288 335357567 109137376 399389953 674901386 920627820 466660114 967977552 617869053 749565498 353655846 497121408 836233182 859008849 357140236 466653809 399468745 477806192 382151111 582707784 164690325 219636232 904019614 966963051 170972085 829511145 109266415 421085396 693261795 932446332 371543510 626934956 487649138 723333442 394909902 536381193 35401965 346180545 620097206 938853709 28378313 134943703 959099164 994865095 611952271 660888329 934113680 969805538 452162089 968180708 497912164 770762330 809743036 969042199 94450483 565275934 665660976 679552439 306125501 423380951 883400200 983143549 735566743 775946282 907057019 940828140 51530723 919051535 557935449 703617940 423652676 880123021 857401645 929881441 750395732 961897381 667061487 705439369 894189426 933435749 406380262 625790032 171307138 692274074 706191089 729458567 433046125 523256768 627796311 636091714 185324927 516592042 417266979 458602018 203386131 908792978 65569605 430370682 231654438 526986075 746737294 985996343 795254753 872551887 699450998 767116430 629406453 725532584 703458013 798244945 59104963 373401406 575339674 651593345 292677532 434122656 977408683 979716420 778468613 904099876 39497594 136711665 490420033 821944524 67922176 258342704 301557035 595866239 269363981 488045011 414328199 599315040 838918294 851276530 332709111 705813945 755721832 896696011 694565146 981396863 572795798 630207551 223173320 940769116 728113560 833257593 387444500 633716702 380936988 953165075 611557521 861235242 179417281 635079830 613255608 872991219 289812412 865764266 335168161 956012594 64193992 187323963 562678477 859944799 370172659 652987480 26274388 513436288 879231799 915633846 571390119 816697473 38251560 972466556 26127182 71913608 920405286 927419562 180822275 918001425 295806319 873140924 543312555 972985278 692922534 768477496 662562861 986794255 352495045 468890175 742700529 968391518 225456690 594180963 322229621 767914086 80201099 604159767 911942998 940397381 697014978 764110679 411625972 926118893 466096286 729262576 90678087 156371738 144299585 286800509 368178900 910731849 631846753 965144836 109085974 512434083 214147087 742780435 328830769 656749848 301886106 622496919 314483016 616509137 945924786 961556575 953834807 972720488 354697756 526019494 959504382 981022610 696625143 776714089 338443667 401295733 771740461 942759920 227592025 475355296 424670230 577496960 257048494 843105422 869911390 902990128 167406656 362690197 806611504 996037652 621779518 909669469 246753391 495882366 933819179 977203962 395944596 611986231 238524077 364619523 338540289 350499672 505208909 645452792 624713808 636742335 80750951 896419563 697938715 767723197 388257520 944561574 412887692 890698242 357339916 426596454 951552557 971464495 766057129 822246868 160379034 760600409 749204429 883231141 265586575 836304680 391295454 816447469 209538271 371650355 654115638 666057119 541233310 993517420 336681445 784741972 944502107 980321268 38365101 204821165 949833994 977034080 136357491 578750496 175289707 986071130 261596372 983061584 255833346 441250794 22014524 336613105 338350201 383529826 948322126 982345529 589851454 897808078 23682984 131517443 758859533 908300313 883001700 957297427 249914118 265424575 256594938 930339781 848841449 942606064 366149527 995935546 252184176 741725500 899705546 930438935 152227072 450137997 830387146 908497247 841691932 854542251 393453166 656389663 868437292 873798331 255910177 378334305 105260434 842050181 8530363 896100817 883580034 954907194 422663944 684971253 436438422 658478085 140449159 418900131 493021572 687006620 128958299 973257798 222873305 884973471 479376764 887308808 994733973 999193677 361942232 828691059 357585059 366223302 997859422 999747323 120175147 738602710 687627882 904833525 738541212 804246475 860039607 897102881 7342417 862501395 532932922 929544296 578639405 748851959 45292874 671819059 33806619 804351001 838827231 990500509 598248598 744385161 63159649 677903673 852285138 938952629 337613182 551616283 773332247 789378578 902140406 976909206 616453570 981722519 321306215 649934035 817180222 973292085 962457617 975834004 466979933 909999173 965806505 999007375 362860574 867544286 10184970 614417919 534049098 828742885 468155292 980500101 798425266 880045570 427560879 779534790 216520139 615782614 553387859 759741151 923429968 924647052 266000091 586798702 938953385 972472218 995626862 997216570 528282219 580116716 569320304 902326777 320024559 346822437 999777621 999867645 261388377 993584975 679958599 806942664 354355328 572422776 673144002 944410481 722827928 987353177 448280637 745926136 798829020 921985947 513663295 935805953 949832985 992436062 705709938 918201549 698236340 740390497 259914046 872901962 895370206 927918274 789795978 949915147 741012621 887493587 646767416 990764023 625250940 723741154 200659705 739551239 765097388 818724317 154239313 702870521 977094874 989765239 719217955 863142107 383396047 727134626 762627610 948991671 725799609 759638542 615612329 696660746 42383100 942732882 858688088 950663993 563432662 679438216 537925761 639899791 266079975 621137999 934695613 978551141 466127837 475041621 514460423 532450048 225944135 258472804 823512951 892922528 447646504 945079601 43639848 456205150 413712920 732738259 620589298 626807656 88814123 473937808 209622766 569117841 306619558 790083021 693181795 880157739 975220295 978110949 201308949 623727244 648200434 682473788 680480223 743731607 367300980 992224327 844360894 959802604 340300950 644683673 946901083 999930599 873288945 956674626 589303292 710713358 380652979 710666437 804415678 965342049 660547298 890833666 731494240 852674940 93986556 268554473 110197624 194315012 141974631 667801866 135605789 848667823 488693046 612461427 626301037 663597944 71517409 547819314 752418099 946387830 879590872 922516218 921427867 958973667 703160124 851167361 385558708 895140598 834764020 854863164 499971543 876190845 58890171 281567562 477696379 615378468 296184342 878505547 307435560 759791309 77647326 163156709 920316740 971657402 234856903 764557431 462718325 601611395 892625791 986100019 966037941 993892793 432867324 525851752 391376549 945682847 407124082 973604576 850479857 964609132 785986928 934418542 335105675 336108345 248552761 485966175 658782791 864539575 694492865 797691464 809695721 872485367 339244662 348177965 212628380 879185154 687092505 704501855 739237500 926951409 864386740 957730488 178633248 492548345 679396984 693188782 337389329 707086471 728859366 759829384 239042817 720718663 984167303 985594655 773693123 867038962 779745278 907485259 86854114 367095577 295202611 593564362 425946006 820713387 200247589 853731346 250976724 292363460 465960531 567334811 271142071 734291887 816752562 994934997 771463521 859964193 525069712 525492742 889001606 988701044 928612244 994876850 756490441 936470527 471904792 563763302 729715047 858917335 228073629 413995545 745413602 981342757 953852569 955266972 395226378 552922740 660314550 699665849 563573447 647239754 818975631 898505572 750162324 975496674 23031954 546967086 780271856 843056745 724731020 846844536 196346444 754215361 908513835 986720548 297292823 732036687 347637664 636838599 340354586 496158469 794710028 824405658 457647451 518407126 512878431 675075331 632617163 844429792 382068788 527936284 336865519 522508286 769028959 914592265 980338297 998981612 365067168 689121135 200911499 506639353 292228928 840573506 723007744 981028048 110883748 910691006 474851136 616995073 941894907 947872493 406259139 604741247 359876344 529060639 854815463 880458741 459000944 730174598 411484394 743075537 348801766 368902519 153102985 953843823 572010045 865628754 773250668 925865878 440755482 678730202 15003043 248620337 898176614 923184039 66932611 553721235 457634930 671823226 496774854 532222992 91640821 509777155 660766966 784072154 197226132 373545362 240868617 349132423 706693609 782133208 377232773 819964340 953174662 979708832 885346435 938834338 665579262 874575528 667778317 943190765 189483322 628168600 961415993 963792141 93715312 318785445 598051120 993226703 810601430 813321413 453635776 628529254 405636221 912531827 959606125 986296743 382846962 938698495 21307598 347220888 639724065 967153503 900326718 938467207 65205312 492339194 941343861 964084602 615637446 888424957 812152829 989908466 167827356 268362339 114390551 835454456 414108993 901730119 423853386 799220177 816773109 864832483 618130995 708846720 167713931 795205176 994702024 996205032 883990410 935818620 40800902 485591174 712496791 931356332 546246588 796830695 370641271 779978658 618784042 920679290 920637703 937295146 635081034 973051032 104446758 481905819 426775543 703197686 740698422 804861445 882119590 937709354 433734486 543057415 565430848 694841184 348424186 700056856 823268095 866971748 440932921 625634417 988265274 989396263 304190690 962503203 76782748 213558422 683015292 843181185 599570158 994358224 560037616 724449738 547109301 620365050 485292914 987568292 822434369 906153552 789979341 897718074 19751117 260676133 317236642 615325816 215875298 413777652 135576047 341072104 781162545 829196722 321242631 421742889 922494272 982022398 567021528 649967718 735326458 986530655 454370126 824804611 160788825 472771494 316618247 775817388 51430528 815712680 208589782 631434335 775301313 906918092 902403504 926728770 536438013 563008442 166147479 725734509 829127445 979233553 572555059 592592103 490249255 642066298 914478433 978824435 530909439 674948894 582238944 881843992 279415861 826933044 725389745 926559419 884266219 986372603 603707673 896323786 910673475 948598232 146271614 394672175 190016967 947186284 144201093 672242473 328085023 516518200 904582670 944960870 789365112 934770631 862316649 945832933 49915979 249569905 845368049 944803452 380312364 864984622 345448630 598385341 465091999 808903488 751396620 946249763 830232305 971461328 99173387 591749611 133827498 535359377 555597574 760796649 474576321 507503045 894637465 916907020 13212232 181460781 39967372 625814003 922659549 939362376 371744469 426726641 960906001 968001293 163080151 552066642 752813477 899406497 50234289 688115957 4718989 351893778 116611060 828549106 609863340 726383260 449578875 897857509 601483907 747192714 999703144 999923280 616618989 891970015 160715388 188638877 489297439 489930071 144424090 876835666 67098197 131673373 754597198 760170419 916819831 930574542 47752898 591805783 757319718 777733325 473208106 662367985 74826936 349808535 115763387 133034396 796555930 941916136 582724034 689470483 68474227 561106403 186189840 953144269 346382151 477386428 503862124 848346417 661202047 905329714 644066699 812812989 183736155 307223771 187310784 616641348 882687064 919412466 758593491 794477067 944234243 969262103 568445156 761728328 217870313 708646545 590099492 767959426 993670047 997351362 547843932 673619449 225555531 766956342 512335083 793770354 566188650 675184009 799090952 909445395 651970557 850581845 359647825 674950932 104944485 227950996 506399677 747706050 89630114 505248067 854160513 913030017 471898115 561570218 104518113 619124860 531643819 890467167 34856590 960047576 224699525 993946422 908740847 997022725 156486458 756582704 711345111 828033569 121337803 929581770 102840484 558683451 59808012 580592096 573580357 847298128 469133913 582265221 150542931 654072843 366544049 939772185 674195468 777396976 525536310 643352293 327091884 736272316 201124657 881457042 208462698 280120046 168310158 615222315 103735550 591321347 840923667 892227537 754581544 756125502 995226131 998534930 394860745 421488223 859800306 960490983 870684503 901195478 462183508 711073460 879921080 930047923 408780300 854312511 885990552 991094642 655590530 707236577 363362630 664380106 229400063 633362001 53563886 306261850 490854885 546371875 685406425 790585526 856430655 938705972 212916350 250711878 506881793 646757236 387309549 553606657 99823936 845991672 797800640 811292312 432403885 564980738 711378725 981875554 867931939 881683646 611755905 622627362 937977383 970372216 854614542 984699572 151514996 352606526 880064963 948615796 736048757 799431108 77823955 659554959 798483364 983082342 585672897 661114244 432253799 538068542 978588940 996618842 683354011 872775178 920556246 944274103 860121313 868692369 386287871 921508517 673839225 702122001 460689592 930532577 312046133 888289370 758440475 766636190 78065903 190922270 335769063 742141323 292441891 338567606 53803887 433454072 493879278 957281883 722199878 828512693 702045317 801761680 473497356 635121881 246458769 718325149 562850362 977266095 527099305 757840606 602116701 960114567 546748992 861927133 558287584 610637315 699295306 894057133 485669720 662733138 913716572 999760120 734391883 930882382 794640676 964618992 10453580 549143756 220325826 924876283 362329514 513863414 964859432 971011930 882452895 979097289 265748407 295450818 466945151 686344294 876187907 942895732 722531376 778392273 238883670 711820344 268586795 344896718 849034180 893906931 197024135 583599834 412192666 413579697 423507268 590341749 543011144 947824678 859361183 884739041 424337735 565427757 666886309 725540912 551002768 631778151 146415458 951266823 609059720 685516499 106312344 272967277 906228721 938959323 789527118 834903071 806406132 879806319 34704681 561874216 304902006 884465439 867868895 983091806 268038633 674835666 998537475 999204545 172845956 445232797 134073477 807544178 977727345 997653636 735280562 832160839 243195050 584697521 795351033 903845622 296014432 924110869 813525023 889027873 789345509 886677598 845659972 970079214 856903509 956671003 159952747 482191699 761590640 956516512 330767542 744837110 688740812 978032465 312195691 375729739 362120414 650853762 654251929 832692085 588271418 727946381 937862467 961558377 568491480 715671675 737776748 981779782 803115304 916770092 502628417 536231302 49326815 523567108 806867846 833379358 746845153 827449355 778346510 828902647 993594871 996363341 57738286 173790309 245386317 665474827 715839615 813338239 796868858 799060841 229758078 436966892 648040752 847299538 929262442 988861691 539532611 909721404 757236452 823874290 402205560 546513358 556000154 569952980 839219274 843631934 902546971 926390390 510181587 708501589 172832876 384075986 499995596 630698295 464515359 588819941 412795455 870443127 888849646 968874217 455190662 964622234 104183070 396173763 171134820 302794745 858605665 911082165 736601733 786373264 743829816 792648202 24315914 145237272 663511110 816656875 804895008 956403166 194409652 879696892 159296866 824388672 568376723 903600690 473540749 923210048 668697184 741890364 873419039 896013790 473318982 720885685 350168982 412368451 851010834 894483289 499021542 722359887 494434009 536247695 586019679 728260852 974964536 999324632 713336254 755876282 653725664 685667932 696479904 835916006 960895689 970238751 492837196 623767275 547583766 924985038 162984839 467853159 776952483 801635306 597666954 742819775 796192604 835398247 784045709 930238459 189253429 920019655 133576372 455466603 577427278 744234612 233348838 696576817 443383730 985132370 310328830 747700748 587448928 771499182 59893561 610674543 698065146 705194908 358997684 459262012 607512278 904242369 192800557 906597565 454677949 754405905 379676794 588067797 794694926 837793217 873060826 928888629 914777710 945977994 37624009 221729646 574559508 745913294 744322893 917436678 238598357 527603336 419975545 620053818 169224271 332925560 743882849 902630571 713512202 740747229 475478198 846860603 486234337 813397932 737288054 885784781 656988275 841688867 191655602 753166803 431724978 834691553 584833232 818190507 482054515 952240918 267731527 531901689 346880716 921260157 121625497 948974885 777129095 920344636 972178409 987294795 658622712 660867573 630809282 704136836 17559731 495196554 140553379 853437853 594929412 861824054 763312504 835201949 841940223 988271396 576881464 757733552 786000117 813015644 842512058 875416910 827281284 884806645 184887218 465486900 790722855 988691595 359139338 569459179 491301355 689609476 556229959 754929438 584490165 605064788 707153910 921813234 916822244 994810746 561676069 700268981 634462505 761846000 248855656 820526176 103795395 319980543 397982434 791220062 413189535 991631927 290062894 844599952 226035527 973433406 144133543 647339132 343035086 836777194 472039788 547783849 461084684 512627197 629412734 931517640 933082432 994746172 553020437 734137678 621788826 775373742 347626941 542645024 721302692 757039162 225795469 359157813 876003266 914768237 773039677 851799815 359670231 459602517 643666961 747456178 267429012 688449358 258813584 335311346 787183941 890970563 77199073 225254519 549314853 668837568 454119826 949196644 536123756 719831045 933059124 952541516 106228862 165264529 643198381 878061276 58428026 559089752 233117724 440837325 877955483 998896785 713066071 732190454 960307983 994901947 710539516 999492323 242483199 961062444 78601315 688793076 473270538 534714468 559209968 702934148 850518745 971711705 845189253 913461279 240532876 265739137 81667357 266127713 349420514 812316135 288075128 673536643 523867372 541013902 682444301 716346972 528910520 995159934 224601065 598483611 400068259 733055636 284273000 637615162 279953781 715806340 396155314 519928402 770573509 812056955 567552862 675478179 306088657 796787545 849397502 946183867 203000620 853795559 36335083 899174972 108199305 748091749 734497124 946826570 891685274 927613592 180519373 536244885 483098262 535926289 106397114 332546189 790854412 831364612 128238857 594778336 376188286 467621597 782692737 860674788 760070115 876253221 165216408 394810081 985072105 987177814 257744813 515493334 399848914 439743098 689045738 816539510 891364814 940093791 993428747 996220983 55550759 835198490 724537046 974397330 737922349 875750082 842316492 995053370 991524428 995013172 927103996 956298133 251157424 306176283 268371834 903988941 504951883 843666770 369248067 797192388 983677271 998054194 231919158 707995953 131835554 722137127 443829733 707643145 640452164 926723323 348238612 465674344 94890393 864909207 643116139 933227110 636729375 899124382 218791812 638436643 190069518 551552278 351688508 447723560 37447883 243137648 433263778 917202895 508495778 794381052 176266680 528353292 953140845 996128822 700845505 751784834 785252030 814504262 410497167 437785035 383553573 887828110 35974701 998672121 721164854 967243587 865852557 874662438 388689895 527858213 223058894 668332476 828865696 965467670 372934029 467342125 545150073 818404676 355215209 686414112 570081270 649986656 365892787 708579681 194322992 861407197 956697347 974516915 787972779 924892280 178453951 467358933 851159059 909998478 36159034 154897260 370919456 425293029 331370709 610015766 546474835 941006277 940113600 997112737 399338235 739333803 887627265 979474041 756003233 870338011 696473998 773151960 775866944 927965402 756412117 964204113 128375126 670713338 360303776 360469050 948659008 975360541 904981779 917158006 118295965 617088284 35467957 709902383 760620666 931887248 451252710 711350679 834490209 973446284 626760966 989108110 639749278 881111611 510877952 570961046 139869337 439864611 84797320 435476784 411713519 925308648 149480741 537880500 10067214 47415426 692232890 825417269 553152850 680319019 794661381 868798626 981422622 994108979 613725359 846218541 898853249 999884604 409535980 539572570 877052303 918395914 636744790 841056766 278059441 841222326 154882972 166654907 475668397 563502955 98555709 356614888 819379505 962790209 636419345 798686936 956714528 989910903 351863207 399408532 811983149 990241442 790444438 984513021 520622694 649608312 831135933 923551316 227641863 711007948 282772609 283844389 475556323 939230865 608703000 904210484 888084130 890657437 93438581 189946174 133530413 916064761 529051914 934278403 140258139 864012413 578958012 787413296 111697023 533199417 533923066 553185656 152495226 230858483 776152307 808777449 702385043 703680965 444826951 946819373 55266106 362690443 47101825 368368504 537796979 823229393 748393312 924463071 981591056 993522659 788966874 985612489 342769537 525449374 179977711 278480772 925387892 988124181 73867841 303022394 703718819 724743195 596090589 690623628 869976478 954121939 266913957 378916761 390675562 435662098 277724893 560216184 136451466 547894525 436770759 976689041 775145572 932150890 601033221 774303975 979197464 980345146 106041288 327813441 264629582 275680815 817248320 871088390 301510260 343142465 625977543 892611457 305587175 337986453 392987383 635748272 888639408 909520806 784971208 908896551 441632519 567019684 277240970 501915747 80126893 499086495 533929367 898827382 21648414 745734514 177079565 632507525 245261727 582585641 173257681 862524867 368480374 379614447 242458077 727922459 831970063 931747635 406820797 512352187 728041963 988410261 618305810 694430040 338037547 760861089 564889219 957972151 796551943 939584123 689366674 885705251 230758813 413923947 825256255 863927254 321459155 728693033 84775942 657746775 888670739 939842479 595270264 976055785 24264932 573983141 381013301 771588448 574558549 639290933 804116135 894204697 206884837 624776225 883456825 955178776 320844041 936867587 468277841 504705852 134995219 686707874 454028412 892028777 47870509 744881867 359844899 854527256 840899792 973976364 351592479 551959434 535673900 960011046 375502879 714950489 670247348 722198381 3508276 971841542 778009998 812488398 160440426 403316766 202497946 404751873 351253470 761727733 534436381 949984700 354120366 937893174 173236559 784464658 716946189 910193716 766905905 878643091 918811823 968328921 462266110 849405573 675655566 852286080 669470142 773786974 3432927 204846121 457104234 721393283 500309150 712747390 599702707 686433639 47477554 967315081 105322831 679148727 204353778 661304092 633535208 893418190 624455840 797264533 813454822 931067484 376069852 969258362 235484087 622910598 661552237 793188266 631662835 903698172 826537826 886509667 890623240 910541139 564370696 859751543 476756271 610880545 423455636 748279280 962062886 973155564 562851981 919361805 611683519 932751168 478507351 712250378 346867215 877348987 465220737 854068109 243722714 532153254 617339733 930484061 264548964 712635445 736495102 789269803 437766165 809667924 984200143 990628342 680637629 973744192 182174863 995584929 477777082 846533260 235290923 522865908 226278971 652416175 352144300 934430184 473791968 982397491 763730811 995633549 160534933 243427147 532663258 638879413 161346140 351569408 829282639 904877910 636511612 991861030 673041263 758580318 220740147 576793069 876911880 935840502 616021486 901238891 986836752 989936394 202393762 343779781 135990929 803772352 24725879 138672211 486390373 941776193 191139924 777920023 238778692 598897473 262387311 737742901 957542726 992996531 742326907 840826060 379777510 654071192 865997157 888819497 637297968 775279464 799730588 910442382 86590200 406348916 229041409 668561405 780472463 804173036 72483081 112373766 585159166 975191335 557956749 739302968 675901764 931918234 76855524 297572182 160466732 693191759 462100551 544475234 702768996 879277450 808251425 946599949 69578295 243497985 727429177 879378359 178711789 313393235 118059411 508397434 866025071 936993271 54674701 545323970 457360221 997490670 121217880 452700949 165162239 739208049 222787659 440193394 237126105 826272084 390993654 540860168 104021754 218041212 38923717 297701140 386630804 970760998 379075742 848186611 545110103 880799714 392350073 994178006 338665787 365848441 462585413 859535141 416239042 611088527 53927553 856924776 580946362 703396416 327808793 937873670 204872525 976124796 390197003 842620819 400571315 813776313 328020981 543157460 634752265 923714948 963222197 973490326 63505963 280763132 780212944 803162955 279763972 388141804 657410868 938006767 171694279 834037115 935653037 999803290 836169031 876308515 124665395 556973807 743115248 899667122 26114981 591104302 253089488 882865261 272391505 493345914 374429324 901931889 993418688 995367784 837639121 839955499 513436349 971453688 604494103 772801557 55408749 490091854 646276668 950013309 670122047 672020152 708596702 901456434 126801759 640602837 816215787 889149153 24043517 421422542 686188742 964726392 825824373 917217220 286925038 422398834 624347378 677280805 925983321 992188467 581625797 985634131 353932061 760284367 42418423 502725588 170628067 756564574 996681442 996846689 577728671 786540912 919279708 966507040 943986330 977923054 428806549 718062635 255437599 428458258 572292662 998217680 518910991 711673336 520216617 773847385 911645697 972054875 580504668 611888115 889871719 960060553 809146499 938796895 73409085 80232966 8543550 239751714 646934702 889880008 311056973 856509655 587706763 702660019 858410260 914389200 308926700 519021328 736439984 770739070 598486929 782817247 697781972 832874890 545885522 867072768 910299529 938906112 949388951 966334988 107254505 196373465 187386485 915811400 265269752 973939096 609012727 645829356 510812794 812015131 373923810 977858892 477713981 865150372 963646147 994953100 151214964 796883371 654138342 867896384 654341659 979679444 165663424 322276012 226715446 615574467 361195004 870523500 594812617 650416330 950632972 983401547 480610939 682713748 897279022 952945132 181991222 733580425 503999892 898519795 845656944 849472893 866592794 985616164 384855194 733023223 31695950 447124634 515447363 578434295 689992467 699416785 680114865 899223493 874085015 905548863 134880554 359387785 55090086 278239650 70980021 344228654 429661277 673137052 281252744 655860254 46721522 925314262 500629285 673072330 31164649 358580793 308258032 567388012 91764892 679353244 612130095 843141243 299267411 326868629 492023879 570465408 967895957 993618360 304420151 946869287 799283623 844433042 262149086 274294417 427898130 896710084 908944163 968461609 162488479 839690264 963722598 988556700 427534914 692860318 9838633 556150797 480857915 817683394 80593228 126285864 496329963 784435126 632265503 761151507 697677426 939173256 691676033 725511507 629086716 637406221 918660397 961804267 790560688 866421862 85973493 476722677 423626217 735514139 894141443 989656741 468320876 811697828 907119283 928800053 962719709 999115851 507632041 696184883 530150461 711355953 407720081 440359461 892324311 904762963 458131411 479526857 879477824 977286177 191268853 955728079 380276453 423023412 93760500 818087521 92364169 575512513 900059104 910817488 624846413 726418537 196331769 887098150 831762886 984365547 773691431 994643218 55276928 753829049 342395100 962820399 792474244 823388315 346803955 637185739 196742242 968532813 75815363 235833484 396682167 918448535 629949690 721603053 900549205 919618510 868900140 972568554 79309197 651348991 616130385 792440890 870158392 962109322 73036063 332537075 884485692 936722276 972141898 976659825 55175034 684959197 405867287 452304938 121346300 501673593 799410520 939932519 422822426 688336713 913211397 996978915 179680876 633589348 328532041 667104846 385803970 435453307 348523498 721677786 820033117 843613506 121187682 751852713 258209440 556221753 874319567 884642707 199077105 419529837 167685598 656939737 856734227 910880098 438634635 715409698 759494521 964323667 426089791 575010937 651770785 734964852 62277760 664004931 4887545 68783385 871803830 971921538 263436828 720916371 566296265 752315388 738189857 916154042 548763029 760240303 500282285 859223201 540598902 814437517 552867988 722993639 956363442 976045044 453906204 499031119 208732740 847615067 28979050 827637532 697241685 732364154 256783625 953143290 352875374 383470732 213025360 288072666 880773523 891680476 616567822 751363034 191879261 985207590 696408222 834512411 909301878 955390669 193338010 834041002 16830665 958374588 429464310 542903185 444003038 651473536 846468727 933881408 386343605 719536142 969713441 991281780 151310243 206321776 502974211 871548578 762385925 798382389 474148169 936815327 614200235 663647794 392468613 940989545 101951464 257550464 791940255 873316825 30658126 936127394 929821652 959888985 538663218 718643403 389898679 841381318 95415696 423883154 303110365 563881621 690495335 746816907 809626223 842574989 557262900 786871277 409683875 948923722 166923812 841485560 352548166 804661388 347613183 772753379 871608928 951961968 232085322 514123316 819310191 945288162 264160361 326949041 605581096 854493631 740738415 881732473 711720260 996471992 425129824 958545423 52450084 122673602 304132561 338434576 378177439 474767057 935743387 974519477 584328515 675021162 279037341 688909346 221987728 283487878 267185155 707520359 87232083 588364967 363587175 365352093 372462959 424632508 378417932 421167821 827291350 869822910 868471741 927783460 185047 873553216 39951416 796996230 963239134 989901397 761997374 903370412 15475733 977829513 407363901 953357744 388675186 932323606 688109878 913166638 324705947 910535247 286052491 674000631 563719451 673014323 841879386 960367371 885458026 972297637 65218321 697208892 448643136 567458885 603929341 889319187 617549599 907013856 797536457 952648301 558903247 779290078 673751396 829183621 915529914 933051205 683179600 717291717 482139272 521500482 774900627 985059108 877015272 992934641 840982597 932710723 245400111 863104497 611252786 845863227 221955166 298015695 639572169 901668271 42743135 351251096 840476202 921710473 85887702 193255174 274438770 818344389 261683025 846396970 925284808 952921900 682237122 785223955 299206930 863994950 636298440 706935303 847321154 951737371 148969497 928374673 543646661 560809823 628362858 845091196 612088498 839342969 686778990 976178440 745239855 880029872 105789336 163250803 399981954 554625440 221318250 321744711 870428172 995249187 233629848 259087751 279626536 379643457 580182845 980078899 711281233 823199071 395063008 400914189 984434208 996481726 102166280 688160452 674357187 679868679 350130408 872306682 195847847 403214595 198671455 668045208 627372599 714290395 679339524 917821251 452962226 674161590 928600669 990799396 682852422 732495317 491704792 513731345 219019595 440629079 515176777 587156829 550926351 758040511 411853695 603417690 155906391 650365424 163111745 943360734 10881581 153016852 484545293 984288731 227875658 858125217 838756584 872205214 853087874 876633482 82898967 306237872 434355742 906172465 657423967 947122522 702534913 748385740 363897633 994655044 72701944 757248898 223541537 342205817 362424757 989749782 130762291 824272295 457749144 459096850 383482868 600160550 397509466 629621707 513684368 611453855 159071692 743039688 303063181 316327379 182615386 897694878 570233635 890068616 216873548 642843014 911454408 939692706 425886608 873630988 442344929 551862339 143872059 375965644 780455267 987695703 502045066 899941284 542420544 878197572 344325581 964185296 625074738 699208308 664535674 767212126 657957096 904019088 836244397 950243691 864961813 938955645 810669430 889996365 643371371 722561455 212920116 509989902 484228015 526090357 667875413 811374528 445271646 662099863 765558276 828054223 354685821 769339783 205660058 379032282 379509865 951068643 583239962 743855137 906946491 999254874 532912595 942795281 682010101 905464804 380850823 826053201 783758834 950895590 10638284 568964510 255403531 906441934 659331071 703387209 509313834 960402441 605982156 915852008 262262920 422290419 460177417 576224773 18993267 991105615 689784703 885817386 954207745 978753293 988147139 991193711 140088638 462451136 579897403 835956475 23252217 213795785 888106353 961683303 862172986 913632393 882042230 929903925 462159482 520394493 902434377 948843756 158476078 979622445 418884398 998229700 537033841 986187703 696942406 733756336 518982114 530193160 819054969 964720921 895927952 996084322 614206791 884317328 366808298 895435386 964979609 968483587 973272677 980215561 271934070 689636844 280247569 994006685 257047081 385492744 860325533 996724584 379044752 890227251 941476230 989591995 922237730 976899573 896140554 986647605 647458924 652811113 344936946 947090460 420651111 774587945 214030972 444976486 484183612 889600282 44692817 312272656 540619569 827711836 844913103 930968570 787854222 870985115 657553981 921116325 932503547 962766243 126984071 986132751 963389081 982422943 361622670 998592957 557359304 699769465 633028806 659707455 591987647 671351345 283750413 699840339 167948168 517831011 555411840 928893155 876761071 929726416 959858856 981560119 641198778 962051431 795253501 833402472 527066839 629932023 10527749 624623431 666046464 879152054 800681582 811086297 903672186 938408398 444551856 884485883 437975077 803796974 68360938 186993118 605168349 846762204 387085293 947670977 867169051 969473721 895874742 896542301 426929137 595338772 695857951 863848859 749407110 881752044 976040894 987282692 936647748 998771233 752203238 838883558 127838260 435681856 714182847 935344649 914680678 941921248 966965105 971673196 429647379 846101451 583280643 652047115 144628082 966814850 436193711 775072549 765480600 976969373 970850131 971131335 6643674 376547317 276313900 718110022 218114243 240123477 538046383 989659843 728736791 748171255 674043981 947245120 52618026 362860606 89084146 857611595 979020880 999489904 825807401 830382375 456395516 707880166 392924601 880421915 108389202 783480324 739735728 812982802 99820488 577209684 641111594 936353481 603387443 697565366 973997240 976641151 210001745 637136680 409442822 856691967 342141662 581580994 616763402 977147579 457727477 498697567 717508759 854191572 409252606 776978073 289091539 906777460 69254662 187283300 8296457 271944010 231995911 565598591 40226485 775471587 197176388 759672245 780059095 864966373 428566155 862377226 835930623 842760711 857467020 993934205 813235000 844349600 61494182 673946177 341926159 961685997 843621151 866553598 595844854 821499871 227012125 500625909 964346189 965027463 676481260 693332491 58672678 688433678 735377002 743777577 759395612 781608508 284202955 961788817 601598941 859899092 719015526 833383821 470611410 582527007 213303364 644301257 663997857 685249089 428458777 684138999 722033462 904596058 19396913 855460828 230133274 388100206 250556535 497659905 323539415 468909524 633929974 682920138 410601526 811642533 858155081 986165757 469845003 611041211 336234006 867975402 728703952 729963468 163778865 942809941 831121492 984527634 418469827 912209743 551099079 834468786 300848863 685672530 60499810 206995228 547041476 671270249 778084979 916206548 742922607 949418628 585070594 944411598 894884375 897853207 249744644 863424181 396845317 515242035 238321129 311952478 363707215 433389048 791574778 847452327 288980740 351602525 222327972 300174789 677994170 987079186 913177899 948820391 67116935 903952258 12662897 62995789 887844719 924351352 380312154 938331486 451212838 674623612 211064574 286213764 291649200 684591890 509552322 651105599 287199558 812754266 424294852 790244389 928438632 996496120 139398973 577962408 437563014 701713643 177990230 695027278 490191607 872189165 422481843 667324847 492832000 889023366 175743550 208811854 786302124 893108355 19354654 227915114 816176526 818563197 980325194 985544196 458994041 524693111 882173273 988950196 585210900 728874575 29614918 154204339 124275078 192884456 454152251 717017183 69242027 130590183 724045271 848591751 983503490 986933292 707364728 806586692 894165528 983094436 388603006 918057795 109569711 173706931 904216463 918457845 664703195 804617044 894413556 943990199 12381001 130852129 394201005 731325919 694719986 840254158 835348399 880332018 880608357 978053048 648919866 964235580 211194084 228704870 918588675 945294991 684722341 968356956 249508635 480493160 404613356 568419053 414093533 687390021 744263583 994298333 555179572 807699771 538974085 660362890 625011159 842291477 626297827 669466417 583594693 604068723 479360405 791407735 563457955 742292418 961278280 980225542 133269417 401391695 897385363 981465588 225453208 479828008 499503 647170298 106064975 576575596 782513373 939105814 257234499 352468077 852189705 886405793 348707074 838683457 329978279 846435421 684733503 790029867 386869525 536379234 370472167 787426028 721257507 939195213 233119478 500439284 590030445 797410667 286131114 616270940 86305200 626259755 772236111 952279510 437331222 714845368 162291969 468591785 449201873 778627344 24919423 132207095 118022721 535544866 892571223 930782801 793612202 836159676 88977925 896159703 50617341 392536747 270007800 801965340 471677134 539198208 961490156 979875158 996870067 999855450 281835385 449154049 927535364 936345673 328659185 958327221 229691067 495015545 672882361 788974076 951719270 983823759 802755484 903265705 556014740 563037146 717355268 972220295 603485977 722995239 107867339 160694242 89600932 181031900 347947728 711191330 167405172 355129098 287486 459822762 115933512 259578418 848800311 946921147 206398560 763715292 145902532 250347998 594564469 779121394 568010855 796349388 357469839 516408081 185963621 449723368 474583874 568555379 460595887 608361310 227860378 667156021 385598603 627256021 531300739 877171941 247164216 936085264 953169588 965646946 280175871 795351423 965634284 988839419 209266514 274374014 404765845 856052084 216511238 898251492 591590047 966420628 1673991 376846306 852856868 934539197 525197309 972509556 931511065 976221336 871347661 886502003 733763248 761974325 380341644 743508106 703170762 862135863 922980581 943626908 375242902 908511346 144757357 716229812 418137503 470313850 200647177 392183117 845214606 976033059 677499023 997487222 493910778 693047106 302709074 804621076 752038539 948031664 849898023 856301266 505569134 581276074 644908540 849159043 223979460 561195819 919628635 928131646 237926158 250827301 100459151 861057849 383469888 984404396 65317475 444120589 254793606 364219503 203945527 983467963 872552120 927060897 323651764 722782054 551539509 839704311 12179813 838605099 514670705 576587959 31128724 154086814 315167653 588320082 605495562 876210384 920863030 960899995 340826282 488675565 344173080 544375761 292591628 801682221 711297483 861113783 204451317 219044950 220329368 360584275 381141222 575275609 351729393 766629461 55441283 729775397 61280450 999198953 942984782 987969657 268330516 405432036 175888761 971231410 78742568 628563046 421885475 528125878 590234977 971087086 214856273 638516931 263191844 589968455 379944843 771197254 254470083 986980529 490369926 660936688 6083785 901437758 641298517 753830930 973300359 994419473 867946715 886047823 760930179 836444837 426365345 456326671 984661979 988959493 190239734 402303745 513598647 741070669 380537979 835500063 694325209 908519848 539923376 727675470 619430490 981037558 602425843 602929915 495319885 886304913 121140373 594377893 758756018 775383533 42117866 95296340 49130489 201729223 673319516 874834488 252179179 643171517 76141826 870488375 625033298 869597377 771979725 778933716 875707439 970183601 374303180 560421272 630097777 963656139 403769722 809269199 236386808 459905982 994623673 998013273 408491297 878218939 692167752 972906794 387877473 588321182 742765282 853812497 159450250 856071433 974610146 975783463 3598790 204837577 479936548 917019866 452523862 599993630 335057313 367500514 655118988 709529097 953161209 958828086 985159990 996069978 724666907 853387069 169166802 834099078 299836501 901727030 992119143 995722098 900161404 991103546 109759683 701653065 39369672 315122387 999237665 999927826 770362750 942398815 194113365 507541569 270725436 662775452 34633049 642589190 28941851 508394593 852694705 940346301 922486687 993388161 890042443 936396919 338949142 357753540 200085101 915334284 360618943 915662485 898992324 901923104 133677155 622008708 926595318 999304238 426320755 572832841 145873992 423974503 963976064 981791273 933975625 993347549 593231253 647142874 395941436 429597334 676910478 951963259 983923174 999163928 898085895 926918582 424470632 853084099 214420872 981530231 949732038 964148899 980359016 998357300 90693877 179852625 971333556 997049059 737751295 872969493 528654602 812210335 189635255 197425161 136553546 704916454 464685395 499553705 546801119 630991181 69441321 898822208 431610558 921326378 909671964 998373891 775749887 906588436 82569495 952063601 146128338 849421472 216582003 392561644 31170193 986106492 868235391 869785178 287436699 800282241 296217459 996958929 552193894 882775140 286869363 772072115 651722817 862930656 436386438 718002659 176950622 471615846 900013107 991934198 900425348 900711279 75290389 111240734 177606338 613145254 946345043 980756713 818638906 842454507 199495736 963943445 879453436 957871712 217094054 985603485 100048390 470216540 596762591 615234257 726865650 888616217 726157634 812915513 326343501 729282231 125619379 891931708 646091883 893110832 429300239 774612559 265249477 559737535 825122706 917139706 338881001 910844327 251256212 712223688 904053027 912661595 673027202 709475849 578460654 924710981 180268297 874961464 509671336 825570596 51361840 129251887 997483584 998863610 692244014 715393200 412076505 623737213 422068321 826382540 918920880 996881112 925115146 944293450 466508752 537102068 243671031 711647414 735808890 859231491 102772685 632711354 745585788 771863783 258625678 273943072 774464419 861994756 417327121 624023588 275562806 514317017 302311710 616726322 602257218 631516619 894349692 909424244 730138587 984982354 207431037 581249906 796599140 872212667 625613211 779737413 687617386 843260993 327503995 360306461 215792800 493524180 339926866 433664938 214897448 358436115 895589749 989849999 931199174 943767839 920275562 933937470 945426105 964248459 715435310 911476147 594544251 791688660 563582597 653106075 145752693 467915039 187302464 430592540 504232172 524426578 40207244 259635439 716463145 911153841 474010198 594018756 161033100 218042647 191171014 611116891 735351175 960711495 191134463 940527350 903742990 941890391 889342909 895054222 810472300 901867971 280464749 607751493 272974285 762114820 370833159 663035002 10697334 642501165 260328022 819532306 846992321 890529001 804782210 808721480 843948768 986697605 413044433 546052802 851182054 979408152 290532893 915974325 599902343 732842012 818091996 919414894 445049638 866840876 204960726 228208323 472141987 786748117 923414265 984727954 428454965 707291224 937857215 990249294 702693222 811309700 391476746 481176331 732941056 986496094 125676121 877233761 848857747 892319983 912453489 929893062 503214173 515082709 36041064 951315662 82414151 847713173 383963006 475596740 935090382 982309824 48143229 964752958 285636994 964456323 134281731 403926254 469003696 610440382 43298142 566737092 518890023 592701682 405497744 622062793 574276292 721537611 110325152 894349024 743577469 993208481 285146826 526235491 424127701 659735044 894230068 897900133 525272389 690665054 471340029 557545711 62881106 829943613 366823107 476787836 295226377 859045892 541539592 914120271 157256314 782391512 611735957 745572934 448702718 863790641 431150606 843270036 845593264 980026161 234856810 482490629 142961082 867032306 464342600 977429228 828007881 909923612 305123596 971290001 176185189 612187767 666744066 774522119 823959071 927382066 949353751 987507654 194026320 682203177 149149658 398373793 777341408 803947443 778908636 843591942 428057993 867444101 584700176 945112324 110696763 913411747 943022205 997548784 165829090 235593732 894242606 983139974 662602402 901835727 317830310 622617435 892040644 902519201 134572305 782763046 292824015 693625348 289691877 924992762 40905953 488662888 47103758 974978785 896114213 911945006 76900373 860467419 625067553 910705587 194943058 252356741 746715819 759368421 394412360 785932809 695451624 868486908 836429833 977357219 936470289 941755283 703840101 972392932 5854287 851473422 581165919 856069563 682317870 751001087 721705494 889394464 725402981 811154094 74924255 782768496 61591831 227699470 687629832 844897082 94629432 451002120 213502275 406063447 803591616 872994219 287302737 681318873 892679495 960291939 145977576 355123209 363369875 882621516 544672088 977550153 90077944 485951697 963195748 990313190 131589373 213942506 162852650 498096867 546944798 670398637 540151332 763178689 221512126 298832816 34194421 468652477 77041671 710935388 187320710 638047689 432236570 811826228 11894292 23252807 761759182 774420288 605648177 907380043 422843262 492517909 473497260 804457185 337439000 483543257 417579934 977721628 119883035 315488867 281520427 627121713 642391293 877630784 79529420 278674095 591545684 858244794 25863742 273339756 914424687 919579395 289761762 891926181 721147979 999401466 228278854 839556785 610719977 898953244 169118458 481644703 921102624 991155485 435829526 517824752 254336255 306322539 446506120 594792868 482206444 853463827 225354356 967381684 192906599 931019194 545469578 965532839 9401314 997276689 399261152 788043334 42016282 579422780 637938084 744925243 597508566 706253697 202432559 450357839 883752816 956419092 990300850 994174171 845779400 903935577 764645187 992809751 32809341 879963285 545305590 888770395 373517377 864170602 946854966 961205111 112045737 504699233 242236798 805303210 69385084 130123039 563316634 564764330 164055291 701747118 904229359 997504658 574298145 703540859 355754895 556413045 553720906 747307414 700552841 798542121 265327704 625281261 412276459 523069316 169910039 360233675 3418869 776483713 285507311 336050034 337592468 943107911 996225392 999455398 692136692 971003528 763965220 862717070 101117093 270617536 55076719 241953570 62270134 664054109 509866046 635097826 24728346 864772406 182699864 464844555 689012692 838121432 365362138 682597255 639704924 647946643 939979430 972321137 945724383 950756648 284397899 846076903 512956981 677329897 857533674 865921558 824973204 897195230 263329092 319760399 502765717 744342779 950748588 988239696 641767189 664275500 217182794 283475539 626873344 930709241 882468265 974954471 854908962 912584287 369239271 981540767 896141364 899270570 600777484 699889138 637069023 656039287 595939744 728948578 101030119 154330212 592177109 985281398 801428877 989164847 555725860 598229258 646046917 694234850 641333081 912115886 312419813 928058044 788988332 965741595 883067135 940990215 958168458 991600586 678731451 909123276 584627604 821867326 468651274 921989899 140961384 582559659 717971645 988978891 930436631 995802257 303114292 582587958 517737077 998559336 814371448 973601680 35344738 680228634 272902800 418435862 565416668 844855690 602568002 680674503 671872721 956749164 966506194 967594104 303677161 893107001 70257640 558160615 392517335 537268267 991886798 994981993 702429562 828645045 994594440 999963968 561103536 832032258 408324197 711790711 225392666 559341289 614889720 860981135 476502494 982624218 119435655 289090522 309566389 441050563 448982862 998607561 546026818 718879499 252628071 492821523 158252499 211217966 173494103 469608657 88845477 971330487 311133674 388043542 732910102 803406445 599561920 894427127 324032185 740467218 758507603 896477885 705289905 842104898 936624919 967715467 20537381 290827631 540091181 831454819 768969687 804836014 242239317 718537903 511780165 934729801 122655898 127845584 305726502 845360366 840752657 853894012 384687630 705316936 734546658 898223968 256966225 649145560 254015781 817652426 158037081 673451745 818109508 988965598 465505516 885541842 120546305 422118630 336942366 754439795 741797139 804445242 207232516 827020717 641352035 809204239 962740450 965709485 137218782 838284616 47709426 605554660 399427720 630921469 428470440 750412259 423196861 831761753 636797517 666395033 768208829 894923487 777998864 806943987 944975474 976983586 437848508 891491968 577972069 778101182 101513475 561139985 9039201 322311348 991770966 991774760 306950707 846415254 185069763 215473733 826099267 947528270 277354419 314557095 153315612 692864333 853097143 910720552 933679763 938569490 729862257 949016565 932567782 959742008 373933219 871950876 609528809 723831144 901497576 952872590 360926967 466922210 417883361 770755768 200110301 324496661 842016358 983131690 177899823 561451855 747565292 852502307 413731845 865666060 312965863 795237372 152140413 567987774 83277485 651652823 178839455 986514447 458479030 751365565 6088102 857759238 139633358 614943436 929237112 981987566 778176621 859938446 98059969 102705746 893615461 923801574 251711322 642322082 401467481 808348069 817772278 890421332 954302259 962513775 63509841 966097782 88574877 371925087 179606789 367427427 905736491 942909245 485521581 960238850 685494805 950879877 222229211 410223384 591811440 668980071 155741449 901862913 508098659 578807343 836636895 843941082 595028767 850011718 556690747 942965684 652472208 764034090 784691713 975690597 874292578 893078288 421445497 808466453 426089255 540920308 228288959 413852723 726389804 993309111 222935190 805430033 967766356 977355093 585156298 874293377 166667402 230452035 664192766 687268021 376184638 441328475 178664516 446331750 295929273 759854596 814885882 901035639 678668060 686100522 671009309 785831288 734711802 828165365 407984565 601642412 659295195 940370729 111994578 525475619 536419949 917981010 995929450 999594308 496248079 586643950 359951250 421679194 721223871 884614477 344250270 949575951 373940392 803965916 251682477 626126143 819139181 899808926 369865056 800564116 150827331 322289638 256391198 505080176 910858951 961957065 474068768 685490635 464146504 652717368 13111580 91222327 725382749 926321183 888825534 964892313 930812916 938910048 94698732 978547205 655448417 945455033 508277022 771114626 317244536 991162221 709414518 936978287 91781902 870507516 449340768 881819231 820619265 929514663 867941734 993447936 391044730 719440785 718368289 891919249 154000457 677908426 858779853 963848807 511623681 727681097 314945786 784044445 23663970 835568366 732919778 950168927 587415642 763827665 720779091 741713205 520804917 576565703 560647308 577371976 706751222 923255483 645554522 955073196 796093502 984572800 133771340 431508420 39122986 748329557 870937217 889673895 646583389 875387989 176412148 782821809 878987750 978222338 152027149 377896778 839603892 970725338 822591676 983028468 896364985 903870269 918395183 995810665 357535457 605827370 795849017 942766873 229041511 997825747 618323833 657623650 917176969 923866113 594572629 854101313 837212786 973636478 729816445 849349467 379410152 522098150 716092815 794800641 552202886 893206520 431630968 639076390 940994033 974732365 225115571 852259504 649340760 816127881 785502081 904009822 705716140 796603396 907684830 908375615 901462364 964839678 865256174 928945039 883563301 969421875 434421419 617349371 299658795 304197516 367424797 399042479 806404026 948594389 278735399 441060882 713848540 976770974 653232349 694306890 260216249 822063681 523321949 787161007 242370121 377224826 83739442 781627715 8439705 128322019 160365875 391734997 424390812 489284637 55587589 228996864 364910536 641704756 302517848 988578148 569941992 786548364 883487731 914298717 907382696 975806275 728198390 818637478 642356285 869347327 562437251 581716752 352053133 825022062 335787210 435482575 417913732 887049276 852111301 874016212 475350822 618453985 708465191 736269028 406751461 697317910 125815396 679080312 60103197 247658824 268211787 605939041 991885830 993079911 636441017 933488064 792922076 855082332 672435133 894496987 781777423 897145089 283075834 614041429 529325068 867419496 656509794 793251502 798194586 946544652 948439644 965946036 157748373 163388241 167911343 645986309 627813700 636377684 782857832 892053802 497722112 659334546 988316854 993209392 916770771 982507289 9572704 886793397 991119022 992573305 242758292 327810646 567926171 654329640 393176173 871360190 248317660 909715018 441370037 906487010 54509855 424579647 512482558 849413258 194347203 490608244 598600278 826780747 84839331 256429013 190030801 526976460 215268756 268482114 890779900 895657881 434611734 768058885 89862813 622030091 381921140 823502608 386315235 514170050 876442534 894712875 276610668 510298714 324555771 659474242 727988688 869951544 819790899 929120378 7624356 425471467 528648508 992895488 485943951 769007457 615449903 864693725 465073664 552430397 412938561 935305575 539487991 753425799 909091759 940775109 700232638 886313420 687987787 794754231 26024280 449789842 989193731 999789336 84368156 798856338 822298903 842215182 955256390 976181214 432684309 983108528 523746562 972130816 591785514 692773291 705253855 918467909 559381507 695084509 433623337 458246679 276542926 560595235 285582259 725307912 521959980 728314046 790771275 837120897 719214068 822517130 69644261 575462352 457778990 583967472 893612627 970344564 546874115 906547552 945598176 959266616 355644826 418284876 634091802 879844859 20637663 240697807 565403788 769963444 807170013 935621967 601323223 804986931 220232078 232825590 132746295 651169284 441466852 800275738 946604497 958322271 750892571 875836626 612881517 630702131 560298471 953436656 365635845 817759122 71616250 197927682 159545867 482940416 797675951 799326174 407986448 420421396 33280003 860947344 939354360 968894201 66512394 235784292 639100731 961833054 176980350 842136940 540691445 545368472 481263296 917979746 559032046 886586117 475104646 880193394 936886514 981078453 971800931 999182898 348720398 835094404 338336984 638406556 157689094 575861450 112981022 372992662 505236292 646561189 915036163 999248539 53190369 710380694 188125731 341069584 976722446 981476392 265122843 949798435 344570134 888311658 253019292 313225572 362442810 888825081 188708091 973913525 880732748 950403373 929093291 951729119 762763751 793565541 767480263 998864594 58000582 367317875 309263784 653038438 880742824 899538252 34333246 586246474 853222693 941000271 522565809 656078152 861906778 974764168 121110762 654802398 332906427 464252726 803170410 932047781 857318980 867437916 544355645 780628857 305602454 480070015 447866143 742389248 791782306 871144234 904303054 958490425 404256133 527003845 838708315 933487337 639364083 859794881 856158193 872660800 604002142 663418283 430902729 713355177 43739156 883375144 944993755 975523368 43087580 164631155 86113856 907749707 661542135 805611015 165209055 669889572 817488674 925016504 307822172 778050157 954910524 996787673 637035912 691931093 439122718 525380402 724845874 934932599 890303637 956461641 215700315 878493170 775508859 795859050 81446053 622894953 723333375 878087414 211800073 374752451 799777964 968710700 453253165 998256117 486853202 642174135 768648865 794176124 823116404 996612062 88007711 787536577 337028968 723113412 772860352 939310256 172113221 997968717 102761356 592662399 559968071 663708494 877124699 934427032 811899472 933124195 112476729 535930807 618083736 847205440 630209714 659048869 226061060 640209481 317498578 548184221 564346056 918596105 178725145 529035531 831797829 968033997 722079208 763321723 159482801 604044667 800114079 839783679 944815715 989954434 169743539 906849355 616113243 744122181 190131895 756509047 167846261 431543865 566440861 998343375 561430959 952672664 173550357 746663349 240116177 824292204 402282791 798573675 964075117 975443102 215414719 470632003 844275844 882768501 226539804 887567935 365972700 602825103 462639182 617206987 370721254 806562565 602720589 756713767 973385117 987938934 339268015 654059733 930637083 938769663 945876404 947031787 327504318 963580096 346519859 894692503 498600536 631095278 277630759 380543768 316539738 711454443 810180403 882586753 677215055 788087893 94975594 346453274 214437119 260543257 144774943 938515827 277282592 479086016 973343895 998510465 422287269 464068994 349503819 750953154 441536036 860333647 482917373 882648148 430806716 935140650 453546798 827206734 259048263 750679126 285004060 497314793 723585380 975625555 844356204 956728319 491963096 513315440 341365061 752062595 152689352 902470218 411015019 637365410 667600667 746553173 428155926 734757119 302517853 843972772 57470129 272552263 202963462 759337341 897484112 902633834 15303046 344081913 154557471 724761691 252107811 288594935 802133676 840995083 962998767 974311861 603741031 624191532 159306022 194487770 693482326 972536434 432120319 445365159 75648784 92426364 147368802 622633336 621237227 839184590 825971951 860146092 329520923 935525264 536116205 582042169 409581020 923268978 341508321 937043255 570196398 803655612 419522757 593222213 550217615 641385560 495990025 810157359 147219058 178855046 596717070 909574705 204336807 759763796 338073682 343114379 649711396 936269473 692904102 915052682 383140996 498126779 502354499 906072940 521155269 582243426 42258229 422363466 755621946 889936038 340247881 883811929 637411252 924537956 58931327 76312181 380998677 987924543 319891476 357333673 137729191 291296189 371790066 670716582 532916296 834724536 562053460 765681519 13060996 629389547 502573151 839636099 85217749 205626686 166257969 682565798 29812657 593548296 81348655 388822490 914101329 936251220 298291886 981768052 962408209 996346762 716254322 867988991 683004028 859162653 85132922 632817508 498160557 978370748 766131970 970615012 966355053 978891618 356754242 805474435 109827273 708814756 228511341 317421036 691382498 910517638 960886644 968032484 298892648 772343257 344438184 617065550 334111918 345225309 514192421 628151963 433083213 665010520 641855539 883216998 42172004 538151367 82704102 297766950 813500751 947221884 1170959 528402778 836777812 915582503 413157373 643487434 864369957 915794465 926473200 937568927 530734556 854232022 951122317 971015014 857661110 991588373 151041010 396629173 832161131 897588699 564118106 759299791 725405007 816937222 100543221 195475626 187902063 484721426 509083079 666647737 685856833 918259862 733302987 827108123 115298980 505416143 683888928 738819439 114043977 878782489 353642678 574329036 325979779 652952384 493136973 986999013 728088861 782730338 143379837 744540542 217215636 653053006 899970003 981005751 230453498 832620404 943882065 965717009 542576867 667750722 558904844 997059326 93072855 324078881 853875504 995809668 704262751 746986740 580992783 908690259 319551028 810906160 635758099 883574986 232392638 387806936 129809747 904792167 259020635 791516903 555258059 662341717 29640219 840092708 828767586 889000402 207135845 628022546 643889103 897887574 534466923 718110358 977851022 997722605 697748654 842242609 162496716 328687165 988520360 991915159 736119705 809569516 837683184 958238422 436774902 747576426 126036700 332616498 380424094 904916835 923864395 924881000 298479961 473998344 759232892 884077794 734724769 760229505 113242663 679447381 957417290 972725256 417713569 754003018 534329508 665104984 996519284 997135329 690573233 834461682 163618012 751023068 707588162 895147512 599172995 629589713 70891207 209032242 748092326 925147653 328482634 500064144 536954127 994857423 522397280 616191159 967336033 978816558 14140787 58490471 951299972 972596620 238178745 985862287 426570678 747657389 249145296 848080779 818863387 855734450 311145302 606445937 226527295 668253121 954347839 986555773 433049015 466872967 284526180 901894994 994729112 997508206 152901735 561588747 908903873 935283420 316472348 820956040 595547992 740763247 198346139 637243401 180698101 834228445 916067870 989488538 836623838 951206748 662909225 975553820 225794649 715480607 82061118 794613067 315235229 633359078 99546667 632131316 532841619 734808871 502553710 753609204 675198387 984536559 465623275 992466657 773152347 794306214 523504032 663455319 49091079 769732212 286425479 377309896 491942713 866913730 485228262 567495594 585475252 774040997 100277797 705480869 862763937 935799015 730941912 889045615 734010640 777126730 884466204 998410592 372720178 403419504 669100652 833584282 495103663 564460879 570739373 729426183 986429088 993370093 955331128 969835535 614235620 909521989 269645706 395391277 156050420 304643906 718760176 840474851 606884539 841597581 494467308 715471480 186500256 934075585 87411180 276278102 797100842 879636119 212509300 734109384 140370781 518985734 982197487 999407925 422011108 580880450 93815843 768544017 950186637 961484708 300297258 717621805 511378956 774225794 524776552 975240393 815181263 829020339 169838668 517998694 950991391 982182726 196083616 762329177 723478881 891863963 164515370 828871513 650636424 671650913 901866525 920168912 566861171 827979615 71937379 248031882 615289477 638929288 170634936 829450379 250933313 936324207 84914664 701569055 905271478 910073579 209507574 707914137 465402024 524109973 938233612 970531247 644033180 978962281 314310786 768500492 681162954 877211059 681629872 909243569 259166270 976215101 207569354 288274877 601112271 890711241 1902180 334005204 47439271 795761101 92183840 835765771 363436925 774414470 544761942 680792801 781333384 809100376 363239579 582517249 425204404 642892936 858141369 986922309 698294542 765495593 323546184 978908502 195840825 374659973 303374477 627376152 348235233 465125626 760351404 956874390 709971490 935205876 868052000 963773807 858928848 877681661 558599072 750058470 846108110 857271427 231498241 398853808 108900748 858019169 696672324 846543315 871832010 944895225 214328617 534712336 414815204 427568353 145866384 382330805 366780501 665752086 578870816 653045012 585308948 810101472 672953429 802307014 495827172 509772917 697884648 744689226 149000802 680746303 133473512 574371549 878823566 901366309 769495952 867388847 804905945 908362354 125924499 846499228 400608136 541624229 492033413 599689076 494170170 876850460 190307157 224709927 969956003 975888903 11937202 44802186 725664800 968575315 323439237 679320349 740688344 918182901 434303066 692211692 669336105 888202238 918898651 952356278 599579833 877709208 803344036 996971275 250740739 611464201 680938404 779008096 691719392 864515903 239803330 288142676 22900205 639807301 963347239 984932902 483102346 715034748 107352248 350863141 643336976 950358889 256146282 328349498 42468635 607038875 997410231 997619097 838257703 911196382 669973272 707305497 452795308 801005125 253274107 901667943 957581755 965889454 15481476 405604604 977787062 997716351 120820199 301285296 756278148 842422519 202906806 882538239 611675421 765473568 101173370 886343678 55792535 374670034 493523665 971530033 596331565 742865962 300843840 584841600 453492709 710924492 562603161 812079101 938320971 981662094 954630591 958978919 194098606 895105800 541999041 778165438 134310008 570729710 105495977 350688087 911015869 954237814 192193637 337000622 251337545 450961925 234344214 941656414 165142422 728613966 666193067 971863433 880523518 910148478 573669427 970046734 50292867 964246917 163884265 573493415 95673752 156319204 460866566 722932884 980580368 983556648 42219219 191184961 345324687 935180472 370326075 403064299 485062099 704945481 436073585 647083139 348501309 998225048 144199313 531798788 184570807 519018577 368425303 837287219 97376917 128911120 488729324 885341186 302503176 372510053 654518478 835782936 496718158 867073511 610913783 782669361 765296791 894471440 899097037 922805805 694377752 948372169 333937580 394329271 817562356 833273332 688528217 897159699 975644235 988937262 373831700 535689156 714084648 747157443 328352931 789919080 710028738 903149921 638191199 996016928 409920608 866743290 403770675 484762986 190323372 920699038 950767757 980983203 657404916 742110268 298199090 958314660 596391636 700364580 353425344 508315935 63979569 201035653 42572111 673844201 267450224 935206042 656453380 796581573 756717378 980156453 220495689 378633133 48994367 733950271 359942350 807120167 965649820 972728917 219866683 452316754 664743288 888528163 777915605 923468432 255772321 715044712 9745269 123366839 185922662 957297011 889461794 918180917 422480681 652254511 873683017 976810165 519551632 709060618 826404396 957400697 901886163 962087070 816690788 858777126 575093232 862639750 280593810 501930329 629153663 661408452 245855879 834580272 630719605 670970739 102175890 348190150 177486579 706644329 41660867 850928912 26789698 871826915 561662720 669279943 269705697 938199095 716910822 911747132 271792286 892409387 700891135 723831227 564123467 803126719 202972434 296864737 697738461 986596794 429885973 568521268 646026153 724329282 613152578 686206530 283213975 825278898 139375621 185283246 445475947 881662315 309543101 662690897 155925485 534048516 671060961 707754050 10491157 888005050 351952114 725546844 651515948 902246712 302887577 366434470 5100327 592817421 339583070 415233418 15912081 344982186 551360473 579290546 871528753 943888326 145206278 203590191 754206564 763117112 204489436 236610022 414002250 709002974 934035813 997772526 148898468 696300857 936128580 963439128 258901874 792475243 792053534 932563922 741067640 785203901 276957936 976319910 993688603 995525390 174100100 313272072 439839576 667449992 377985513 718012231 821432354 834825169 877845742 940398956 273328194 401367388 485093903 790605504 859792837 867662439 430851554 925283988 313355137 916498736 665743177 668978377 207560342 527434330 951460702 983973162 644330569 771840709 987132809 989260237 451195905 907701806 518326160 653504413 619830358 630809806 137120331 182942332 572617098 580471467 651656695 836342027 671411017 730619666 315339709 658327438 282758199 375652599 247375396 305507729 669676326 727033246 141775178 710030657 955461156 987596265 715960559 914804925 764157707 766548813 94230626 150792700 440702480 973039067 34026338 316033622 614643185 857938741 867678648 969551459 101080562 616596743 479901746 513745422 457346699 614567886 870353090 943836376 646661399 926457746 994691683 994763830 987059565 989286371 916287205 945893496 484571471 923552831 872614385 940783533 59872434 589635345 605557135 833594524 719840992 848342840 21251694 23089896 654502126 936366820 705960694 741863403 350178075 907219046 327235857 772931175 955592074 958969811 26643847 777973551 396400908 471064017 860999935 900246916 836297240 958800551 702529044 703904983 468200916 951958651 87872386 944565738 686723927 692276158 193980908 460506271 819183655 994276157 549490640 890631194 317071497 836148981 312972814 898098380 105157985 377038782 258407257 392682686 891451060 949091762 185303420 202050735 292295751 498904252 256586829 652636850 545630712 648500474 161283827 317401282 831175328 866506983 983072429 988013277 509557334 673659900 51255922 898598396 385506625 534135913 745966221 786945985 557663518 778307943 826516189 965934643 967871579 995823039 313177877 604294915 107723412 803416642 433061430 907359603 302750161 766593608 74647979 518761665 366815974 985008561 659972731 939820757 556999476 961059809 468943921 472861149 97701309 463991719 72555535 157628684 826717963 957643564 200951782 606248490 677171293 778747734 678668022 822629123 255336306 552608315 534575395 758677923 466158258 739333510 189905941 674270187 579442549 589554288 217971862 274099083 718478433 818575447 775429054 782352907 628602869 686147448 454206406 491529313 531883780 615121424 348134732 709697083 203441432 809627021 397780629 432196818 770868439 848714214 605969783 946192179 420911624 709254038 789230301 998668048 467560027 719888052 939508123 992052800 452768943 882164392 75185469 990049325 227028574 923828832 900182994 992695716 952960714 981085244 771651993 848802925 751231006 850073710 293774881 843368527 58355856 85276377 115077428 249489435 51928562 278520252 437707742 615061529 984191595 988411567 798824129 808985748 841144701 841685063 18635414 382030958 592859783 800084275 579215823 750009762 168322119 363557826 454043022 968880717 703500174 781634063 645772735 947880798 269896655 656710568 796401198 889397584 245545179 933545523 554960302 986727754 652556926 929485521 239117232 634343038 477253282 729969347 276601570 738850434 785195585 981875846 663582791 764515359 721839300 914660595 719963769 878187565 714214997 808326584 531284447 550268659 893784887 996219429 883663820 996042766 594741970 976924315 219183972 426186312 170179152 720977794 152411409 730689931 732142346 749387086 87112500 267029805 812050123 879957358 335401990 465764745 867982963 999022737 889381606 941533126 844578592 990172823 81062048 636025928 25924293 798526825 688262261 998932218 812304389 946372550 566950956 749840269 724580440 848733013 439804443 708813853 563126782 677644940 162180914 278516726 325157472 643945781 707289129 718244508 367812444 389161694 33354584 968288596 804945616 847169124 631039462 842250117 422280414 613121323 164378913 377119173 772725808 795563558 7144402 216771223 516741973 943122590 800920430 930960279 365659571 459636603 108575932 939511814 268319091 655780260 74147634 233371279 872725751 919552435 839044816 900612799 146918434 470267404 817782938 929922597 70140425 371046445 297379333 322806195 529018416 830578717 339734956 683657635 544644346 846151977 512307928 823538490 41704364 252661788 369739314 587845203 87208105 667047286 687017713 898707807 305630642 709009744 541699415 606149914 625025792 700157710 61064168 791463476 889668431 937376357 459889864 511203079 645986867 977323956 527997324 852111121 54014323 518885192 799125180 801448932 920616973 968087924 160191053 321412332 875106064 959403098 491679720 604414715 449607708 469796086 433967328 702420065 207779430 631047838 522048378 931883805 720114766 882761269 946174702 986042399 95858658 845770307 59645508 611346615 295305748 516240687 997109162 998689167 669066713 689031840 947008008 997634718 361802447 538296519 387067418 618733058 377220994 894353249 448888439 979296256 109482189 300215937 842568563 902954555 489944995 623571167 992812077 997768367 710853205 961700522 745204644 965028305 564021067 793797164 83748212 138036739 519809310 559371337 593507245 600994429 957507321 978524500 763690736 821812882 306407652 531072706 253801638 548297740 597982153 696807034 685565796 767351121 341031788 701141541 290170697 562518002 625442788 971785417 464604 695611838 858632356 966087904 661342858 808693191 648704330 792357569 782493047 826544295 835099417 859561619 928380794 946554263 666339641 946561693 904995015 998701595 535704895 975716858 311064304 639019985 80949461 855850425 959536226 989641829 106140736 860491276 881771309 996202313 865030143 939768548 513187951 793202115 720341899 765674826 561588815 855376001 455277157 624647420 495773673 968185610 358380910 907443688 550078829 895033973 716580346 838591394 600740886 817986456 490058201 540566294 401353247 933018184 939301796 942230206 739924388 797918767 397905653 525725917 344702479 419044428 900242690 946849200 120724806 889337269 113479470 676189198 598938185 882860623 935476135 965668184 606421074 693040476 864757524 886326198 607504596 938626699 365561191 817936984 567013526 640007689 965316815 967904510 927650031 968550953 304045 16583433 623361351 806752278 728009499 732965885 269363165 333915042 692626719 991136879 302913554 897963649 226243256 596857813 902447764 981905458 524660987 779536536 168321607 817452845 122140944 469835757 940999948 992220509 533240369 694456527 971983709 979330649 4232361 505759841 472065138 562673376 130138881 256862376 473492306 552099499 156895763 249050618 759741391 876966940 64956984 508462097 402762799 761347707 994205262 995163854 917997262 964713067 353721659 796462189 367959237 730849218 853814088 922067079 21632391 621356353 551132624 809040348 118151386 950496301 770603024 790428729 784631926 915844940 720257079 922184992 349973032 840409137 712560413 828428517 226774501 405662769 433797768 906437236 654014485 773298124 732841435 911933380 224088189 486081528 369953573 874645358 132056896 977543759 45569284 193361402 830529678 865457143 938662746 987574523 791502445 951949329 175844979 872724098 59423088 97488208 86651401 616256911 364801704 525359856 461737275 574620981 489872357 877490686 97090400 563870058 357957208 740677648 358720136 694025095 364804279 392259629 122596086 184266144 650178194 806783111 321449614 330022596 350380707 883191606 983170631 986665365 124817051 383766140 967591921 971931238 267752515 869338641 877979395 916679959 336169918 365907363 522134613 900531655 300127948 477310410 225432747 252748322 326077794 739920164 216831341 647853548 521823220 755624407 961502236 995515408 193765823 851557947 672486340 703990802 606072088 618405777 137228045 190179891 532610496 557656828 558389572 731574052 398879545 769103932 107256783 524832574 188009570 957918995 756598418 886277863 76362908 629325221 39378447 721359860 441126318 652608380 186041292 487233724 370310311 926777618 168913636 489677027 672649078 761231951 8396400 583005038 482453003 574336407 445164464 659593536 643307824 841838957 93682946 408396620 248683282 855135585 123624495 500753262 16065411 851645321 947270811 989414412 31308448 209386973 589780295 975544105 655378567 724217421 516424341 870328619 318376384 348045513 842444930 962073269 694315819 929259435 775864173 891074745 433532795 908094581 948811187 964657307 807287 965086450 490759168 747972906 829985830 984609872 817542270 851996866 27996750 424578302 99928556 117863110 645248317 651355346 528426320 863424465 623372879 653483957 805307806 840421918 410173894 600200167 944112632 949232848 572652725 602239940 456110506 997812180 285887571 542683779 86842388 102743352 488558386 987712540 29145743 285287287 943708016 954888963 80536814 121740214 538546912 676357486 122350087 558081073 404076847 507135722 247237279 720776478 876133718 929668760 529644882 714799791 991477872 996879959 129173203 492904420 195986989 255298385 924167453 977523466 152535216 556760198 700816111 751972170 652152765 790826471 213731950 405971859 629212882 724582111 190760683 587538008 642822821 796703376 28231664 806893943 450220916 479581969 137982291 621007229 129536437 599243204 790751821 838023068 247976506 487311171 734022792 951409872 706921266 849917001 579038943 958876703 299872542 749016668 747900931 791244621 906337716 914060968 536124673 696452827 831673124 911526303 282260016 501385013 517442665 842603690 882280284 962512275 542918432 882132969 786415076 795958482 45748972 971821802 434473825 853560783 42746308 182204931 577281910 648137912 418500044 762523006 370157238 414696851 355930201 404600364 591478065 843896615 265795888 857424505 118596834 314905357 326979456 579564466 745302013 913417540 529685473 828215225 103197277 186912367 127208687 922565859 820257474 849047023 17216680 365789908 580796884 708124493 859996978 986900475 742535352 909485103 300096566 535971679 515528799 539958287 74821514 698658564 667413466 893777866 999047514 999143161 870798979 906587612 16305730 27812935 676337613 885820560 212687204 348335826 464651720 754168693 358544027 985729137 260192199 441606405 437154554 818138207 913196863 936962239 523246257 849129390 516161122 546433742 615500006 668994010 709627860 902462989 617212667 732477983 472683328 593868486 367760765 452095927 851009679 997437164 91418902 160976606 939557430 981178392 655444352 713932747 918835095 982584478 259296729 970989726 115008612 235803936 863233197 969369748 456777604 775870699 549829547 641782119 933093365 968261136 197635488 272989205 785809305 903776090 510161714 915694357 51211229 899908530 474742298 742756620 863984201 933651387 665673457 757243055 215625906 436177459 586223679 835336985 957991192 990181961 306102513 485236661 142721621 853534650 967809891 990701619 510979223 985520104 550705000 643070346 988620122 994652682 574296406 627167279 857405616 987826746 895440096 962166777 473665257 869092307 357827312 810389791 940014974 998385381 46579427 545934441 843725389 917750523 441565651 838391349 38890843 144019890 971046016 993087031 264288629 862082079 966876732 989009795 519180361 624567620 6808792 262296031 577788483 862327750 431143280 615539884 19248680 91077630 997463230 998232151 643715713 976969411 188013559 948433125 133445062 689509095 604861994 995280832 944031661 990284799 431580036 583237654 570239488 999016818 225131175 381865981 671443675 962712479 189149640 399857389 122130323 207516134 788050010 807852474 346720472 640487614 342564792 674743298 873891871 947973791 518293854 918948394 608366303 791541910 581160758 798091664 137283362 726928327 353693705 451641612 141192635 194701029 746643051 753194935 763312468 782035709 150269084 541352320 462769013 631449678 497127080 647079611 182828433 605435720 469783430 807006617 781519161 908155118 668179971 927945762 991319463 999401683 282074601 702500469 620694852 739364400 839452422 885419827 537989780 849035953 973465001 983901573 803297622 913020201 72695079 113725942 933349227 987384397 223941348 458305708 360029479 878977472 147931028 316272182 947673811 975503227 182339843 443248377 49825692 531374970 432479018 760801908 367539529 482434587 430195845 994023360 328894554 851093784 958208863 996562336 266796124 868609628 708193328 795439936 998292582 999239407 552803858 562794254 3702477 212387970 360212277 376742506 572814650 927935716 26312722 854743714 326319605 586063678 578684749 966532720 185205807 228591088 359401725 636762526 211511881 370388942 113840560 575175871 865833675 961860910 544450955 597152131 137241956 454161771 362859355 742175638 240172551 810780730 900009558 981145333 105584042 790974801 455167087 781405973 521645168 538902770 589828687 822547539 403990429 872319395 200679728 787802994 949990112 975981747 871318838 903072898 304920229 610618121 578337235 814807580 306926777 888026974 68140178 472167404 523901709 752994962 25745577 390660210 486752026 907719093 88441462 712693641 110190915 910293110 176924326 616351958 849429387 996084238 787968234 980659077 747757310 886508846 444989774 720941711 609915332 869967334 603921668 811143566 327513020 352872238 176023942 480867132 835185915 884696403 858450865 991540145 842366833 867429188 329831484 518641856 653634215 883535745 494700499 919371841 548993926 692049589 901516517 995803186 347556862 861097705 625982926 740006569 204902773 715700168 163760003 458113927 323211640 709064928 975981969 988214117 859199473 887623768 944522434 980820579 942338454 975452472 287148328 949179183 308711176 635016492 76021824 850604661 647759799 719519796 405088151 542147928 686259732 986009575 61421805 746997928 45483607 273393490 990479224 996004507 314445616 339228553 203015516 635620857 538532889 856965492 639869641 875051312 983265825 997900250 402392315 429078544 504205693 794209604 598873039 612698783 241005755 900346429 484607919 914996316 315850200 480462839 596708812 800968852 653742477 814744757 789215151 903951902 216278491 923046910 367885105 667235396 185927381 467265794 884027412 918893335 800558929 856242265 768384469 779546644 662121639 861142983 508337082 993588667 527740785 985230263 751331750 775126147 339669175 426474556 56988982 290701521 325978494 475780941 672800766 916323853 772315941 786059130 778036667 917722235 309466429 798394998 195730992 664050544 654663599 980538152 913359369 934352108 440571399 581835758 73255081 382147005 924801668 936894477 788979608 818110251 523148311 621577643 426008332 447483852 292150435 809789351 124508009 804546632 999960304 999970543 33247053 867969876 992944623 994827504 869221246 981498004 299130645 825633455 269121296 392538426 855815180 901182921 860545507 965771299 209768750 651523489 995551997 999422994 967354821 974291248 556921072 945699994 211689815 633222817 958926590 961153570 170496444 550594938 750240131 958498684 279887300 446488745 477433144 508312825 210451882 227366162 472778359 756189087 930340199 930825810 230169 230630399 399558712 915888643 703505887 861434949 99883485 696834404 426791467 831973511 921651501 999452995 174993989 680937609 282447227 416144575 655391132 741385355 448891085 688797373 717738958 963672371 907454812 943007194 313923177 914075506 622794228 669259476 508688586 661317825 940799049 971984824 598154720 703262029 216580840 805129733 568133137 900972777 43895620 491352269 511724057 735738499 266246302 597798057 893292970 915365040 997433386 997925115 164650229 946837141 928181567 982131214 530996814 915200703 364468805 788520618 772635545 984528114 116867825 791823423 585582171 853539109 449272647 689413097 639531028 839887653 65726029 695086196 747773085 932030111 32068179 482042502 465424220 835259345 277841501 840835170 407331146 709001263 989444419 999447361 747778558 914074684 650104592 678124508 577472652 835443136 173828450 786736979 376124115 868857231 937019015 980448607 147720946 821364773 987966447 994238997 977462921 990642257 444247790 924639869 491859102 670538305 572499149 717271407 387682710 906373837 191358726 874170108 728600858 828649753 388620089 558662445 228496170 406595718 828464772 999761716 233716266 296595011 340079208 567503775 588163457 748971780 460943845 771249437 257994336 305235920 905821989 960738759 554069509 559897258 864013867 947883071 77407636 626994328 413175299 808418998 792016168 804537724 576693374 854415362 144912667 773552153 793787686 838246438 293080028 729020276 235340966 912993548 882099938 957176883 690154997 721282724 241682963 459518127 878631236 911016475 65340950 181384629 565884094 572643317 269016043 479023750 422696020 717622020 745389355 757871628 253781958 308732761 299041865 683073462 211811356 355318542 214768864 246904695 572471451 823289520 311468322 405090882 747071297 751860507 375318461 866902869 841371825 976443469 796828236 950138821 78561581 860883885 683089790 730629228 986945452 994868440 798746969 825621430 168870698 710172615 77102918 770799488 571469465 878155624 594422185 766647680 784062796 872192589 696195464 727019706 726568393 902558353 61276322 651554223 243452705 310568317 12246646 160497819 486633035 884110203 393922269 775031333 787889707 946610276 425864176 489879125 90966777 797206245 469025944 900379090 133559052 838968759 703628646 850738896 712819914 749634009 123819639 502085555 67085343 375875219 598009209 698963363 603352352 752900557 544630468 966071314 114855691 824114450 37734263 452489193 279841050 785769990 863334016 875440728 577117912 956241745 216701850 254646623 286315688 847766076 161219415 615613447 678190165 758016417 930977640 959306477 514835012 703369490 843784999 874485072 703204074 770764403 104802239 890826856 735313282 811313786 194749323 541948475 356492988 707932582 917854480 992698842 28534922 138274325 701247384 747839883 957746127 987103560 850358312 990897472 795120844 998036604 340292530 898645475 9530760 222973273 373610496 745480503 15801842 764258066 123219799 625571604 378619907 734564811 569890984 864393296 472357047 613933691 353794109 504739916 729374782 894671940 733082893 967606419 416409805 582891318 352636402 363414657 654368092 979309546 432332646 796021784 37716925 553466864 927497043 957087906 11242081 939006144 479397762 772053267 522347883 887176395 886010025 967149808 269488086 592684418 225277964 474808956 746373006 769194637 498656299 663377033 784755629 951879682 395208056 450886210 495868975 579927870 111828096 122386156 365295917 649002615 654391527 797205090 135122971 459462530 746140941 883891945 257640386 475508323 47249457 204876397 305304868 329744175 882003353 922696046 653426402 902231220 932585070 969439421 525644495 880827589 487659234 844497487 185632221 760469472 245763521 901818243 115921641 772266133 870419129 936943700 164874149 738054729 193873627 786247917 518197425 731800528 749321032 942933565 522915822 920743932 183431810 285065071 120989557 419098480 318130715 492615540 648691366 844778173 581263159 746692703 778167824 920351761 372477514 608355259 608598321 736102119 105008800 517585056 87482833 246611971 339845938 748507708 718417231 910619326 413963321 514789177 332198682 560988767 576468052 741599126 248494441 464398643 698746933 885484350 536101267 732656905 546723448 897901427 611936383 855092212 566243180 580162617 250105428 593347922 896512433 963365470 927215941 958836942 567457012 661873809 53256344 303318679 754968009 877572439 817230958 943691542 593617264 686589319 734119894 865643996 199066663 727285138 17802384 397789547 802300834 960378399 336273632 451999105 623822450 828389811 96892284 510423173 276854315 842245829 523882617 676284695 822037463 880126045 434789777 446142386 972837771 999439426 225913043 592277143 786218627 943334691 420314035 751726748 817772673 950825852 450630917 697186037 173054760 408142146 768349862 891408256 855994443 907140958 333046291 446223935 372295178 770962896 734024743 890579324 88854306 580194528 908089762 955025862 910256637 960891548 99550510 507069569 290634049 682981421 440839084 603978979 213970531 307959695 174291341 794252124 155435558 169139382 454180088 848788587 913511094 929595978 630111471 846064982 781740407 823414749 705684295 981716624 6563896 165510524 713267157 958140181 859579443 872347070 819399349 988482460 518657706 820911423 257967753 347704180 710311688 754510203 419876130 546927026 498037872 934683844 333469555 829931958 599674439 678874101 382196025 992365825 63684137 957169542 131629142 660133625 780872284 872318054 61159091 527832495 260176212 473350769 892212730 986693114 708268456 965256726 338382927 617430339 532802250 768580080 965948376 970925175 911850366 969024499 291282976 945227130 634773941 973121036 641346082 953977562 403012311 627446121 181482607 763804216 825333989 931822468 456655887 879365310 776969106 895242963 836256817 842928640 732201556 942628139 495479079 571678319 617000235 673234906 758220029 802714659 713305617 750369278 802843038 808096957 212922736 767293960 502202397 903545393 788853117 836532734 304971890 887106179 149064831 795497164 906564227 952555960 622478637 698705296 964988509 988826976 82232542 591065574 449115237 802496611 716732257 934975741 453656426 483608330 399822269 409953580 791419433 923737614 212384453 399205209 647157483 878724927 804106755 928984139 63670655 143372904 59722041 329936038 646125543 989348053 531235382 554172057 357960414 541673890 615384349 848874829 170946822 885199024 775465930 963361634 976592710 997351567 628363239 982247780 603429560 893150972 709448458 738324221 552113066 558350317 700939772 722535826 683463807 797047850 876508299 900068654 777532614 933030167 70914938 875431043 893859788 987678669 663668389 983381594 349515618 808112061 228418482 469306520 180472719 593372344 978158517 990488097 468074000 487419138 111565666 767145401 678971107 769936749 453228900 592623445 146409271 571564952 710947893 923420751 851037356 884720368 504144204 981165345 507154865 899848038 999768030 999850840 307134047 826264808 974065902 986937764 214761299 681842711 681402053 789363379 904203687 952345431 564337164 870462495 601984473 728665528 856228841 947957128 94500649 464382008 819525059 894472633 984470866 999823881 828254322 863492022 744049968 872978315 954399469 960642509 351121495 780326948 218654498 579151644 21283469 665972694 461437929 991320934 170879681 275441568 356700299 725998577 584712412 815693004 9437999 657764400 420077409 615053378 728582042 980513002 712214400 752136522 745786069 954681314 967365702 997878365 606908785 728965771 988037336 997108033 329134784 917869658 692787650 986378762 607659216 623286677 814215626 941134976 32073434 493154517 870580331 975319398 159721919 945226670 137997717 541471113 166611448 824010373 503427692 763750225 470860559 558136260 655789243 728714094 40952075 665049209 90095557 521887305 55741140 129004628 385723272 872913907 619636150 752470166 285410716 788290941 928664445 965380577 62642530 594661314 939185807 955109053 752758972 930389796 803102897 849826599 288028111 794600493 701767663 793753582 911075536 962043585 355092628 580627808 804057927 889770270 521434827 962056434 260253639 647071328 447391838 907197477 32810128 455979124 232224283 791561430 46787414 50080822 9356668 250937222 480693680 532719632 181065227 495737016 962800012 973004489 152928973 593346766 833194908 848467815 264005954 739764128 350379496 838431446 825631968 960158321 142449412 421540937 697255752 957906096 579388374 806582737 612168997 950341748 510278487 969361452 545518106 549760729 525379450 824408902 158337082 257294919 358777526 480392185 256902290 381428765 502889453 517588877 684046082 850445173 699930139 717684358 310800275 921649613 901453908 927603163 28943979 898531777 676825983 863798079 100664140 922370312 877295647 940650633 422618530 907207026 288806422 833218198 605573223 742629820 488414334 553136057 134338303 638467640 502231681 769377470 221089525 992004654 207891486 857927582 653749976 966075200 987814032 996264655 781199239 960047162 16515180 166377563 615636255 878725254 228261653 625482070 415686926 539911105 873991378 979468363 31611040 104017037 468587308 517433667 30956388 175230411 589977134 964142829 556236704 766774662 590525030 613743393 169962991 982993926 551514749 930026609 474820877 600555673 959608045 992565047 232656550 259891275 873871792 978068554 731221412 761475358 425003657 690525965 236582665 516497269 304355007 849204607 338822424 634163264 585625142 945768484 613562595 693291559 843967513 858566642 777334185 918447359 397994412 678832447 354536111 665493469 795032663 875249213 153278014 978519800 52315209 640264122 924168812 983342725 54930603 837124996 561820588 636664552 314481508 496165024 700227884 830534649 160216792 564178770 375373345 580238631 350967836 720551277 352272679 395875261 318020354 717042446 116509422 712320416 72748583 828463586 53686155 572013623 804997360 894149088 55667070 386709690 910707622 984767100 850979181 906703075 767682188 915231409 816096932 900607720 604456948 832619484 728578451 921811705 421038855 713772024 382764892 866669140 272898969 729860932 680310997 902803230 124272798 591723129 894112170 962723638 748294303 853345834 136424280 284349467 598045734 753205253 652590921 895612138 478713290 660111556 594804767 647877120 317064124 613925202 116140959 225834976 565174311 999695350 120638652 454613042 661100618 970989867 521515517 865175797 740206682 873639258 76262982 960802681 13950794 292547825 679411223 946208110 335822692 707715353 270395818 655876796 201837882 268579702 275209422 415795931 343925313 861521958 351511959 423354954 4525662 524059351 510958488 646308003 858152238 860005300 650702513 752715432 635121995 653606858 306477848 777399019 813858831 855693276 950077582 984983351 771489599 906654443 181501012 686281261 911283058 998911337 123881726 852054218 479807212 768054873 431311896 550239806 158511434 731026326 28656652 213543218 174088043 727072877 449185511 920854725 85224672 549080760 955648917 993127942 856575725 940518557 165925278 180747674 871656462 958061393 949015918 986874821 653532812 678417074 775239209 842348892 389167565 746574945 51067187 639188893 213819718 441921246 104152748 361150148 750179872 990958185 701845484 719543513 793532550 849907649 259066433 514981798 358660093 821671681 389915702 611620812 806797153 908945884 846919013 936359363 136093657 355184923 752717530 973572259 809346246 948466093 648742521 736774578 394071565 701574309 224465053 397925228 44343030 579182115 592930123 793965994 543019367 700200048 266111019 961920445 264212383 871947415 343505189 745723853 423054028 920127684 804971638 873500251 857204269 858022566 891622502 980187777 145528923 367945078 225165983 492703926 471846248 617780869 28854794 215647946 222700841 723683130 164241974 399878750 31603984 883456402 912077239 935445317 215124709 430068884 898234045 982327924 715339153 901965770 942658708 966760390 18297429 199538944 653103256 695878303 685511129 732067503 955028117 967368149 664198642 742144024 72723315 332319631 946942058 996158732 299385941 868944630 312350598 498154342 220380331 339159764 962724420 999382077 71116359 554984732 601419644 638082243 808804089 865290880 910416339 999644261 792928264 861897228 51807465 882833241 620844778 985335575 141297464 484366730 769816796 867892969 447912656 521770794 713245244 736559556 85991853 485545591 726855659 758351589 951311370 994317625 504324711 937265239 938998401 947993159 906120002 908526166 339345920 459218116 919180846 979766181 954017031 973600669 360445438 766719091 491739582 944025260 723594637 754362132 77178320 592510560 306820545 344544181 549716245 679189533 196377070 469665634 660404038 902007576 258642365 534043243 454636940 505453721 747587162 815676065 497802665 928709883 165791602 182408148 411464816 434773717 937178915 959596736 480725413 914582285 696004814 989085397 238079904 916850668 566767907 974859768 915975118 929900418 25017523 912157801 199557170 868627624 882242914 998498484 247542396 298202686 861698944 991286451 247303281 250900842 637366180 756859739 924234872 967414420 648065728 962509331 693208894 901860271 859560759 923412198 814921289 823405230 302492701 827539000 218225868 224039043 327030765 423308339 282808111 694436777 826235633 924627603 716683380 989434431 437005340 729676537 764544177 958211884 929020554 989423272 544800250 837351564 815068280 882772314 196746092 956012614 596996246 696633341 542590739 706209916 947719489 981431963 58370258 179498563 580158635 600226381 947945906 996023920 222934085 235547356 86422026 192344038 647272051 910159526 89551847 737484565 184464460 901011026 44408382 313382885 445488198 991787278 216890766 897563675 288162867 753965071 798940833 885494430 767755670 938583304 879722319 959496648 786649567 916197982 231047046 300333450 305539619 319744830 907534057 923348066 891672686 952060054 773182191 955010437 373870959 897946485 77514432 777895181 954639802 962750795 25629173 303088018 188404697 867249321 217015444 284893298 954566337 962619288 48404796 162790128 989957581 997775569 321393878 336348506 922861131 970974177 121658266 441317596 403362918 929666693 740929616 829783877 780056312 973287001 243481231 950605051 147813433 508284917 346910567 547263547 175043524 907177699 775744092 933050202 951257468 970307769 640839476 922580528 636636905 923160198 386400301 588967754 632539180 814369640 3585125 234524056 284484901 575997869 421538671 909919105 796084743 910553267 793647542 854472153 898202276 917167149 291330941 981426588 453574916 494235493 540241766 586355021 321900963 639316945 506359754 771856262 160334144 641902806 449291071 802644056 651588857 761946393 700112507 729338412 193747957 906019867 445654809 534491288 221781182 238967716 931862989 960202958 672007306 944920475 615344457 927089208 15808773 734160586 982352549 993761590 746467729 830815593 986334106 999945167 452215592 768532577 188700112 378151931 152345399 238375207 328584349 382449953 98337277 628899517 615170759 853939320 432473263 959847063 460484824 871908021 883438752 957025716 556854210 981989652 83677927 593816988 912449224 939573127 983608245 984497459 310109437 800730674 277767568 550238305 381837957 915636546 730027744 897666478 548886949 675658012 11429944 468649032 89327111 460167851 131553203 960938951 163488215 600773216 901282783 938216879 771670814 909348075 587066209 645776815 721809961 994426339 115435261 860442025 125333578 795512958 693270006 743359176 360462578 985786743 792933262 877727997 420037150 451519794 722914631 739182764 278485954 474750922 250106256 808584570 741958093 861895975 80107510 521058284 854749053 999637285 203259346 433187400 897242614 946966257 812807901 970442242 291888367 672620485 699459322 956644285 371736931 423033084 749480480 851939286 358227159 509417131 525943315 837907156 295877159 478651012 372985240 924123674 113933518 223993646 301831037 405403658 797742498 897902625 117732133 555241571 401116100 546447025 956293035 981143554 192931141 806264294 35546518 601482979 734400718 742407334 991576360 993238796 589489632 986322732 674201245 721014891 513451553 950489390 926144294 946241868 671900432 702094410 186838674 657021828 193045676 395006819 509133382 879432241 441629306 941469393 574088388 817922562 9764454 393460178 730704275 839520040 744993470 898284726 535602485 827420957 766313887 872340819 339524923 501505650 251825625 274343889 431557423 669663087 66201217 298912015 919270615 977174320 386516557 573870588 322849519 777568775 514041415 702138114 492435756 668351743 142617777 518869339 350377162 901521422 610370274 737509753 175822648 840879617 340885238 974925681 439365752 997156977 506802446 763491297 250575522 796600932 457290493 479410319 315624515 950683246 139480594 517434307 415894986 667431878 297896221 715686309 427014800 730601785 195718831 762207844 26408100 779491872 18985104 538794167 480195867 860353033 544179984 764198529 562649204 809400861 403152343 468617887 158077757 205698820 977563415 992965944 299946008 422324240 184115584 760090424 411331596 580766771 608445343 851538019 555614696 783707264 484982409 591529481 429915706 777433202 551442735 727368407 310271864 696841521 852977898 912712118 994225598 998938269 963917460 996948205 145746667 684635632 191842091 641545448 169687882 435374035 599900374 901620420 398433900 992404850 857450879 910403304 652256593 680498252 231161509 621369523 474972425 918792056 30272188 60188543 738445035 884832979 343199833 991059036 482264560 590668130 59935127 593408098 314333856 794216116 256191398 970505988 905479641 938434812 241634960 411521739 515042759 756164570 948755777 979923985 749363198 924860051 544077999 692181601 78037788 340633214 693892216 825974407 177881323 420997980 329744650 814328087 308503545 575805750 297504825 730063202 10044032 869458547 367539635 727108261 384394696 423218725 511890204 573514086 108497580 955791095 119570462 437905701 646470367 863595827 375996817 628539407 891223391 904789489 762806486 956381397 515825374 784018468 109630569 514939794 355474859 859476497 320266019 864305143 15460659 802315839 128996411 358711906 584731019 712577380 757092663 841954124 355200140 795267054 125119176 143136124 991291316 994619689 484002530 521378455 621799541 825841870 791069184 937443629 866676343 943186696 719341321 876179436 296547659 536004951 654608135 956108944 752669357 974033915 525167757 915270664 297839421 665532518 52163867 113135496 934099713 954630248 44597597 532334059 769976703 788097786 597366318 664431841 388048770 493427749 792666054 839780639 214050610 389007601 107833400 865818153 800354102 827480359 588398696 939767428 305669896 845895268 873059759 896993239 493457390 692253572 550916797 594439357 292449467 571180074 769829654 782652632 285986982 515541182 239833589 869977374 253830066 291893652 297276711 548739623 854230627 896010391 66195368 356058868 299992986 678395639 966587121 995196575 645191102 751762329 559579804 831406660 427816449 704258058 386916937 594178506 78224682 833503145 228799316 597560908 868060934 969941844 982029481 990422060 219569361 288623218 839602741 960712838 823443990 923367745 980357478 981822079 596360486 732385055 478124242 914578383 264279090 323356358 354009462 460768479 203741474 275278949 658667113 734816491 65638321 342718987 653482220 960904388 177252146 293715019 920765266 999391541 654487972 793380334 173035523 737807383 949031235 955112727 266078758 859147950 825647305 856333339 870814179 979324898 560830549 717078083 254691267 382918488 510776193 528606605 768574314 993328545 291905959 517718803 418273433 813342534 521717323 839698176 848515332 857383077 820672587 913987014 830131156 870851131 339801950 436752805 311910962 881207496 242450702 744546135 718477694 751337447 791007027 832884324 913883866 966849557 579882725 840748026 492516961 917347884 242325738 598229430 996363307 999180013 715169416 956363882 642372495 726298613 886455918 987285891 96854764 686714017 714536616 936462854 189442595 472789428 350837177 624620016 143188006 258392926 386712212 913350589 221930424 467843790 835452152 929163552 142990257 866466298 485590502 765140639 707764170 795471840 100380331 483802246 708983401 872338152 470106824 912664476 155257633 857389476 36977472 609025842 834007490 927896397 589509982 852543677 820506327 980895575 628524659 744801330 823579508 906512974 570402267 778358193 905227980 919163691 886081239 935461599 498230411 621441616 853475150 860246054 59961781 196309479 911258382 914501669 863555006 934312735 669753635 938991309 189539494 307982726 187182758 496336535 461682043 505649148 541005028 607876597 843763830 991146878 127737422 571340616 892166145 974861047 335989114 974518629 475604626 893236361 599327367 757389606 26965895 972520517 350991403 915355427 567791361 940081989 23222034 513331307 587277452 791084440 428912396 607568327 822140551 823178056 417327481 893598508 418893509 715271900 659678332 831885764 892218998 950316426 81302982 138131562 606188489 787307562 512204122 972406525 129627530 582390256 385021619 397231879 404161511 563417211 926766361 979618480 861763322 928253138 834560973 873623844 686633326 977264410 853109279 929726973 312080465 890107403 670345700 754476267 845327937 968613093 73230163 466646598 728458246 868147869 434828519 610577053 901643467 942020670 310778858 337659037 548548813 858701798 346500000 799350997 198984915 866080311 529992621 866196278 466555889 576747061 169609556 462398115 899629224 942081186 439662165 668113007 766444745 865319299 441341714 570818486 946606665 956289206 819027153 944646985 780613106 903576170 286305785 559190555 819890861 880001252 439432651 977490212 52589621 670787353 612038317 723199888 692999963 766821592 470238381 731570125 553013760 901917563 19091475 166665678 501423378 608226507 602050524 787577895 25837445 936666527 204635219 603102441 353066529 381778853 727191894 975744118 492235793 945428004 996257995 999948399 637911963 882732960 269139107 560897910 936741548 970299012 370845461 898160489 118193336 280829539 110268859 918308919 403422412 926109946 653579778 870551120 984177166 988037829 222059322 585641436 604751892 714578397 800794186 995655088 831483551 962976694 64450880 80904553 513962095 743043281 926148613 983351075 567759505 935667012 949747147 997995154 937467793 942808049 385018933 882522972 487391822 923655376 497582657 994049877 163479867 773943905 914342525 993962712 390869823 540020414 241455553 448062275 123408918 764706160 983533849 986644850 992764903 996894454 587592767 594599393 35777145 188722122 261941221 280381638 842016659 976978715 566997516 747492579 319985191 648751240 226436902 584338717 841834678 985970125 323327122 365348832 416677765 797425068 719549685 906350643 890107603 991440317 467530764 504617170 447534814 565335683 337940629 353209886 180147210 402258108 448476761 843972134 914685517 952425649 371220684 969038079 181361691 287656645 53455776 715694944 726877282 933220941 626896211 671361873 470861103 813474401 456401330 741946842 199095615 698353779 533693201 959278883 504308346 867354768 275832509 998962281 751223800 911960142 274684663 900070692 49478914 372427377 370561581 549732559 790455353 858774414 974243313 990072878 926847666 951057864 811883116 946273774 630506498 720739000 76253798 769846306 296019218 977264684 313005995 836736810 119664000 798163465 930220584 978069579 881976461 891449105 789276959 924927903 794905998 963004341 105476631 402102888 132278315 525400347 83349802 922021978 370861699 438390033 591165935 637249010 390809196 956782712 759535061 884414362 457676785 827000795 285039479 451531062 918254009 970597289 253808973 280538340 133728103 690977155 458670148 971677424 109477264 990278133 914663770 919109969 427877424 867948220 795920310 827835301 361737168 375051608 972235107 981828554 187587403 219219027 199827205 629525923 52212517 294112003 267830846 868751610 56874757 61318285 603262441 694093150 740301411 981059042 102267173 946084546 60290414 789915896 150780674 676476930 832087838 999330535 26065156 954328441 894158514 901254744 286889044 435276672 154557080 517232176 163133842 516037027 304804429 770454653 179692414 265235365 461279643 758941775 903660298 959760232 262396116 531803909 862187683 874414380 869381996 960172304 800471452 979041637 36676869 294663000 529087864 532278330 223954740 952619370 471054392 815565000 684387090 734515799 978516312 986048597 338616760 410130150 984262978 996395028 472073476 838616956 728025291 941781730 325197794 834341898 217232956 907620987 641378595 981879655 477061904 860332112 334357092 480562580 51242878 696950520 416282352 915021541 786024747 792694446 998162960 999206155 376752964 945924681 377596309 707907324 352895362 811601986 702369305 781685483 320448599 789290793 705919260 874695076 636458430 697211449 96706864 107318333 173902108 607009174 333995310 726520676 315115920 772659311 128854424 399112106 373625463 626240089 90371794 738669082 77851082 294955756 562675526 565154390 491322374 654735913 558910327 602393954 377645710 534850281 529351021 560736157 459589141 574902909 150886815 809239140 226430189 648877765 550538226 829859919 981901689 992512399 62627191 166290301 752323892 839321833 521287251 581467600 870867257 901775188 982214482 996873217 520755231 546590291 733939268 947009334 827201595 964872481 85213458 129706342 73466024 414373901 73499438 209407471 969540597 979812464 428941436 995092041 913116965 981252288 55234378 837054961 738917302 882316613 776953050 784571576 308860621 443079099 362549734 912634070 773710368 928537884 599837199 650725892 928369329 953431110 837791715 934847072 196603487 459751665 453836644 675097542 788108033 974957609 867269367 966606798 550202989 878032001 40676232 294332777 209848303 304074849 111175452 319230145 652898125 998795126 200266041 623977130 527468997 635258625 961355095 972664556 728689496 745893483 293035089 543415422 351701880 786267432 429072576 630186959 816591252 835605407 595998899 698292528 155510963 757817852 660304260 765019667 976654913 988132156 159928588 234989705 138022177 339209117 118664084 882842591 402391747 573342296 230175830 944417980 639281323 988846341 548350339 981361015 495304814 547903516 124124202 324556973 673356776 770864328 810695917 841765298 720348367 843032094 597838199 652101184 621804906 983492910 426659694 916670664 465140994 733744359 202051730 764987192 762178084 991882474 1708806 582312270 990590274 999193302 337091863 978518086 129932817 188643400 923511722 973431767 216096097 435204992 577825581 911560726 602735617 613648541 21480499 486469085 93045621 910709859 925891039 977534317 592161380 882637408 106120027 528706242 115645000 365063578 736652083 775510847 391950705 494431630 114520166 807697391 783536140 939973536 827601843 993963925 441064679 524030051 831393424 969170547 760796559 938770848 908865756 964980334 186363344 652884155 434301259 648107922 349084026 830144193 989935672 996353423 161738066 510674179 591588852 972714400 315920774 703928968 756177867 916259990 201584787 518757612 773903448 815098229 759795816 809624512 490770505 692221125 734459109 982851490 831868522 937111910 59579399 787151404 736932161 949704951 665223787 731117420 719303608 776001470 150687977 439289987 115154280 766069151 31992313 718943830 383479368 535029723 926613407 935741417 20390968 807547411 584746353 821022048 279139040 812884075 708923918 729647856 781978665 936561140 428871139 950446096 25557689 520507621 255295085 999928897 41811763 436576992 180814386 626568449 959470698 980047127 936834037 966237770 680154094 958031410 991712208 995518299 731661731 803913491 670268235 777372670 97438775 979702551 313758820 588856130 241110972 263666773 230791648 382677218 432600960 496377945 891169068 987178271 178443784 479549750 98580150 336106593 897632614 952202853 465371576 552549130 522560069 979310902 707065905 954371775 153950435 767700838 341054498 986221657 14966950 319516872 995752043 997897766 505898921 735174007 457363245 977997066 964185866 982649427 944183526 989908926 531854061 690467882 111247472 310030809 969586566 996786717 825096006 861956420 711588077 841499810 592933270 904269161 762290129 844260025 925466701 966661567 642839983 702580031 383618469 767742970 582990948 614116119 305843605 532379619 68197881 328194899 345972546 479643427 227656773 458513345 686300820 909589510 123028307 592986052 890416759 986538864 663365470 746554402 127448561 973642946 93089517 128430929 74282168 129821489 658617308 714321422 315777238 773288609 595149802 620317167 520661563 694100451 143449234 381720819 501319408 884202244 465318629 614147143 373910259 986833384 158802362 803839603 867587363 911475099 961375804 983184006 522223109 807379994 128428385 569450180 510717691 729262671 668702188 703152815 407328059 411751199 990953411 993299853 257218552 769449632 279916278 483049637 89484444 898784827 436749265 728103178 733569828 891111925 763455135 993129789 335686747 875529625 826514235 854052091 399301699 707983307 820555655 965277927 839062975 930308321 445902231 754763794 785215790 822624998 710601855 814270673 591773496 875881184 265844441 819887572 853250705 904254960 589368370 919592870 621940951 679856279 868129567 996512725 892694283 977335045 267355119 701524677 281143091 399389181 183000188 728481268 685206350 706785225 62199540 839300028 439339509 440418817 797917873 875946377 17074663 766367681 169662934 861254863 209161809 406698707 122268534 211839737 849753967 873172752 49923753 56824605 298769745 721783109 340242955 756317504 903261398 940897277 840750167 970533701 314607827 453977911 673818782 848807951 499361689 714914057 154707090 969008967 127349442 717635640 512506069 744081421 901303345 967678427 207101307 407092076 774826168 916017387 425909438 705345716 280028829 677304283 816488204 853208732 572798831 856961117 969834471 981858933 484092067 484614945 57191756 248770955 618725235 907406314 225297123 398493365 978585407 993378411 718110069 782088738 842675692 953915758 128596930 667595867 15895757 360097737 708212125 752159581 998734418 998819600 352513893 411346291 930672118 952506862 917570966 939925409 643129641 718130921 447757078 505516151 930150354 994867575 492844302 769871108 876306429 960560148 853952114 867233181 574484086 993360810 773990859 864541859 887283709 904796495 535546801 691696077 597046665 709274651 178399127 593544193 946817793 952652435 395044018 608708624 769419523 954764133 53434596 568296305 89402160 106038570 446522450 594833626 908966656 955491193 149437455 500053312 981873119 994046329 119709978 126605008 427706815 601053516 906396194 917759521 16742684 267417486 460803672 532094285 88045618 758420270 357785782 911876454 930843520 939549952 185286812 646204199 277860762 642834541 582822688 683473420 981331910 999003660 601119454 955756185 890433726 914032395 543057508 874393341 449381104 969780570 692902531 779511437 10612948 149650510 245741781 818833771 397569789 401839130 747746497 822714864 866540167 992062845 658839909 790889939 340695818 774369317 246327007 577126546 252563445 373606238 573161136 754263303 343236039 434657870 442978759 834278638 457011556 982513911 662297835 884894722 388612095 772784323 49308278 467572144 535294098 714202071 509103542 599509253 959053003 967128139 137868176 390042884 214635769 610038818 64477573 270638199 550143145 846031639 419515658 630876462 147929146 913014329 776629427 790047672 225450925 613195887 190470812 208391346 347053357 480021783 707371699 927625361 874808737 957731581 595900690 967472929 85263785 989180532 232021857 899898124 694563110 893910120 516157125 846777765 742496748 835125569 101693015 215326767 963742708 977715241 585546962 794652950 555558151 974028520 685664358 906419175 402970961 541372479 829147174 887820942 842546466 907472052 168465800 342493995 892369479 964786407 414700801 593309994 543092451 815853037 322527172 377078212 593661367 719098246 484897994 968980323 79036664 235549816 542635368 799075076 353461755 385727538 675513025 802744923 853185564 980315898 682727272 949568207 22233879 320268817 644576870 713193067 827301016 970248671 43174143 491244430 485950843 914759572 675986226 954017629 418185098 733225803 587866901 883366500 667675142 720647653 870915905 871196557 203537894 209182443 423425204 589169290 654925138 693635959 113991190 909851346 319817061 819023761 175971896 303353188 149916918 656804256 309277178 546102380 767566042 813660031 624938044 880740191 679004964 774084441 846072313 935033790 323679104 775613003 179299273 284940555 694578762 979581443 707533532 730343075 634025444 650467884 180920532 198934777 733912367 797238278 42882041 397326816 681679234 782446013 318860074 977418361 823303329 909619538 21413667 131508010 903175956 953181336 840560134 954658524 5790964 299288020 450590088 900452191 914323191 931330006 814840055 912884163 648610667 849433889 645110842 922385558 720952603 872146130 420333017 962279359 763742767 848318687 987401904 994854237 117142223 377545882 984535229 985388810 682133048 754490576 567718327 759400834 917263535 993006248 157435573 846529984 616698568 661243735 740858566 892014087 619907516 930272668 185938752 515821868 254746070 277906179 749802660 841313085 375785386 406484550 205481601 551251746 180164936 202560987 823409308 847357554 498470904 595213792 971670736 987131124 61453509 799531707 634777977 786099056 351173325 738845800 388739737 739194570 360569060 703755030 688762679 910685906 676228117 840810117 402327470 842872244 561361436 957918861 755035128 938823696 246362990 323370156 22596307 275835476 512108297 733603298 264924780 756473141 977465645 990472433 740223042 865109058 923645428 946583165 799517415 898898505 356489687 495177711 354110918 561184807 408382269 458827209 417809425 819449576 305879464 764666821 82941776 346817075 986339790 995451371 358966366 970461850 163556011 858207973 8898896 928071311 206748406 444411926 566490760 677980626 849621411 977516895 295990438 848781361 543425689 587385972 745690643 868753188 898909451 926400752 851456377 890565726 794544113 848077795 253062758 788987626 906112787 948368636 800601732 935235644 747655779 761239748 687890934 892501667 576107866 717451416 293569789 593518356 927261360 941775275 881689641 945732617 824396478 861565636 140319823 575697029 734950111 778653418 895276064 989214064 213334452 426546101 833461917 936725275 393736722 692440775 506825395 682662234 23514648 898649793 897403312 944028852 135153719 309397705 701944187 874567353 507910425 725018114 58550531 972152989 979622393 999954915 231701198 718365291 442872833 561230331 325985636 795747934 626692468 836225442 235851814 620247271 506235116 722417375 358144575 573201414 586601069 941328634 31240370 252764694 278876543 714969944 472616730 908363365 273289284 417855481 79273105 814206820 617273544 661702368 332926740 770556637 67160556 130241325 935167077 960982465 239957868 370462865 164064820 846455621 347391503 873514873 479629855 890080329 440336117 548964027 914947775 959437256 762797649 977904514 845675858 922861088 886371802 949616622 986479584 991895328 854090096 904100622 612570933 908581836 816021059 903813111 11657354 887374437 833012495 844352229 268943658 808806938 674523397 920460931 93611659 358285628 818921305 836882144 745717465 979188932 159017631 528759760 250048719 899181037 732761683 966056928 939913911 979191774 603487769 774063908 533380054 722487546 766575658 767921616 64951983 395730324 989126312 997404781 409110352 478040285 220862777 640136723 869616239 883515619 494256141 874079489 682128763 968602493 518932986 752217681 106740371 631128772 927362555 996744965 978366228 987788523 53237350 201049582 536760307 903710917 971007637 976407439 212395602 786353875 367165158 595038985 280088571 540417282 514611638 728782764 952486979 990714506 802866032 809054754 150638908 786416176 969136179 978929853 477793447 987102831 54529099 249163757 635987437 821395026 890580320 971907147 89417890 345917146 877227941 918710416 175622582 625891270 150610505 676179434 411087514 702471999 968476758 993764501 610028692 981798171 872499712 970324175 465168135 758645361 11420612 279023321 634675408 907419178 633513370 913607834 584320492 968020932 689076472 734830911 284301025 955338059 9024621 125884821 607150922 819454043 166303315 426940733 892929799 994870724 729132294 892622590 688310317 770427171 276399117 431088713 674996977 845876206 278669353 403747769 695545515 847918189 627239489 737475864 956032112 974105436 828266180 951658011 897967621 902590503 435037491 754631868 550674248 982043511 904075891 948804707 488205057 617070857 349629531 851779706 391501072 631384939 470239577 897482524 52911235 622639527 679860032 793641347 401631785 571190119 79542404 897629748 88294882 832129767 115748907 516423358 157120753 718471928 431072432 546591948 941733089 971471229 548070497 637577825 31641012 784337366 294724911 303679009 250973857 998913179 34809286 240022328 969066759 970411608 776351393 836904848 689822936 993244029 942915537 951936566 713711678 748803812 272671880 612413933 585175531 697386975 210440229 689319125 439339181 448689949 774701908 900306816 380664773 845471367 86812693 919866573 789733025 820800073 700011095 977395678 319637478 579520474 793649360 934539256 226914960 480128996 767136262 837785831 82992642 642884583 353001994 614499327 282628346 685307285 171913361 928085977 16206983 775610070 107264279 775283754 407297702 435079029 837554576 844973866 622697745 929790385 78096825 569679347 668946843 685883881 526519058 649191037 914456086 961616555 432201388 765010809 332402673 428566391 926411244 953252409 546305406 559770320 292984035 750471085 245463399 662919450 839271746 865488982 55790341 65390260 800873079 935184692 546457025 906229304 889586973 908585288 91971220 174674508 331218185 552414128 330538435 948875225 612531703 893719878 86310819 156360731 723615612 959055223 340528877 574521708 949895496 983916453 530176182 652484937 369841859 575155684 386784915 919809546 697124095 987105231 625267376 814945751 828716250 903274226 93865426 506061416 909340307 999635516 441821781 890704286 507696203 884841830 871466155 986813534 813974260 954690991 149261901 484388705 934216633 937032895 642177733 679401312 576211692 964091630 392825668 482169160 942263897 985436621 142091178 989036131 567299359 629994406 228725037 430238147 299308943 522328329 200875779 230703575 992946686 997689747 667669237 911894369 798403746 988144845 329664779 626122219 691896550 704420271 620704406 636955537 700460849 872534896 79289757 551623145 773432864 796042144 256432980 414858346 687448709 799339970 122386523 241464033 703194467 712004230 881006123 996983136 151855185 530400371 283527753 967824260 835802460 993580514 996283486 999378019 620540750 978329046 847380105 961822534 118655187 688299714 717181526 838725503 426762955 713725916 898599625 974367236 109074958 450082265 415278022 864535356 38367879 163308076 727782180 890977827 399185233 489784687 451564927 726553490 75190123 868188827 598565903 859309478 509160694 875015400 225110261 279612705 585498921 821861149 349886599 828826648 117528628 852142819 594402862 787190480 231518271 239430138 69659988 410167880 38671977 679443695 425868368 699115543 238339014 761405216 237622524 712039134 620758027 854412227 241698508 297782887 460818818 550666266 138529980 152228080 701679159 921857216 179498474 969529764 887063447 956831330 828385193 912846399 235101085 860810045 938656062 962951442 379180330 717440481 109877469 213695599 759179574 795844827 309091974 646062936 840010969 884145990 925107797 937793832 45816468 742750591 177034058 435507064 494824118 520179279 846310209 996549707 740927144 824098948 373948420 709652018 651914536 903092742 344529625 506892427 138122124 252041252 884859820 901162902 28794154 193329795 770988738 834529431 860179498 924663377 962234190 968468204 608056698 902312569 528964600 663507478 121757240 689674072 110616455 522965722 587703398 729225226 446744071 956287489 320495 820442506 366555788 466096071 70577100 487995660 720474564 814408917 854021520 922385071 889559292 918429037 796081277 876877267 450798381 764769313 186167637 445346225 352524394 384114586 818904544 827872209 231818962 610666680 624837945 908956501 598697609 730244205 445282459 906735517 983356485 993220333 416886976 492609995 216770183 717937413 529183630 753373313 221879699 750880204 459138250 656919218 79417817 694199489 712599194 980301819 870961678 938474566 174174722 521233100 738395295 773190042 689773862 861148678 989054084 997381493 810742050 967112991 703365678 770419969 294009351 616687572 287239939 958044238 125172661 135761110 681659213 940841536 569774274 709483560 125193034 408461940 49846350 409800297 309823317 969286714 314198489 900835241 755340730 989829148 172020622 330597749 899215281 947296964 294368044 631573843 960573721 964497039 51316425 84317795 915511440 937702086 996379959 997106538 765124838 842443671 746951337 833983863 516929616 956818050 917957736 960544371 485228173 558760131 180780130 427479042 954216524 996012049 925929519 938800773 214258485 538473557 373625331 937780435 761176780 973651211 812613695 888111410 286212124 565298372 207677270 929540355 465066678 973145652 423105037 449042020 856030101 902628597 451066653 974225847 154543169 933355135 887597342 917019740 671397899 776105501 140886956 584508296 519515605 560937318 946835758 962508589 989917558 995704487 994206790 994336223 161765069 239209961 19799069 968203627 771401585 780537146 463951634 802903864 94193768 985560450 978046483 979334082 43249329 152235274 157224376 259313042 780733537 864183292 745163503 769950930 567932455 927676577 468205975 575282342 233535659 682366001 734778833 880957974 643131741 935418505 30132397 786010011 84977101 598341480 304512250 977617428 789501746 910327962 373360776 549165607 628723179 694663790 307875671 997561655 516474182 746401579 260486848 882917942 193582955 821609880 80432184 157101407 145753763 658136879 940718714 948962541 244150270 752221804 264399878 510542118 302253982 646235373 916667463 918314790 971477383 973181208 855061214 991844246 184465133 929412666 9558422 601639589 510066112 695199244 164783424 726592440 705344231 887923619 104192200 350533558 150770077 732049823 760479415 965648004 599891141 839297805 544693028 848134762 469581939 592773392 129138472 684736731 970189679 977394426 444888517 835739013 722642603 807578567 250427258 946905713 651892655 979129411 354420100 540762826 109132773 913603248 183545400 219076304 506469907 974441278 637431551 767434583 571199253 703215098 934557747 969643695 152400303 951471029 97945023 690669364 869004074 984161935 345202259 421373953 219044156 725012701 359505789 753204475 740025854 999250174 181408134 580105870 268145395 918353420 293282850 659551398 864121663 992958314 861000557 960298597 75020352 257316298 415145851 671981011 918399407 941471776 620361049 730304106 94814109 559233500 713009049 883141944 622504825 816844639 325424090 620781874 352735065 644758811 312330950 830233149 218034565 860998697 60577616 212337485 499527333 975356548 546696324 971962537 194776742 946760180 342652927 960684633 364559937 823297636 975461356 987214720 589887871 735569412 88577190 370454743 378083785 909488682 687970939 741174346 30236210 188075062 529787202 595546014 54398453 260867336 190654295 314322369 372375622 670151975 173863141 955533859 996617861 999096043 354890193 765651438 252129391 990634726 172754225 578703551 761546408 926679566 349260916 999619614 89175454 954232528 173430062 802623926 546355629 596939415 277832844 475904461 150855126 488005647 391180355 876118371 80700984 555727630 791575286 948825630 525120137 629325794 919860687 924707598 483724684 724665814 906813080 916103493 905699459 970241709 490372873 661530994 834094479 975810979 739613973 866868585 206615116 717142769 57526442 177890527 74724859 138285409 894037311 945365197 379286190 725392514 267430499 782061674 536132763 629628684 589175054 750524398 499424723 567306641 606612191 836130450 279834218 480840169 685626795 953708983 257315034 503567818 503069411 710412273 633945681 913305042 885682309 919253870 146725978 984625465 456442793 859895827 713332375 858282010 833313881 882122691 917993687 961117969 804321135 839492470 486013441 938159180 346546813 619457294 828497002 913221476 61935062 840040253 738105871 804255929 174061941 181268043 413283185 515309065 467194967 676049866 681244502 913138927 186524635 797323542 634719244 732569789 240694033 923025302 565721905 656123882 700246909 873380180 916471926 976502225 895317129 977332955 12764431 194809292 441387282 980239922 429514645 844093408 645667779 935448292 457075275 721088151 686059438 789235092 357044671 728324896 711088650 851280385 193927159 896067673 47759327 741030452 947784389 994767000 317891675 800752836 623316556 959564261 313865166 619336524 271639942 607676841 961219244 969839259 502083691 869803802 575732742 763380715 871669626 997759981 442239016 931890338 694148497 936928879 326781749 595777071 168283259 844159716 639289646 843634521 846094007 901302271 386930046 831562044 882806141 929609944 191784339 459368858 210341248 547813375 49517953 442242028 166575494 971533188 347694841 618068438 341402601 628796542 745071102 766926702 149267083 905302424 429150981 668425247 683951697 862052501 351524232 423619226 535029637 614448703 311105135 337536910 176292555 911062843 585796743 937138247 345927431 911877240 836769296 839388801 133715551 514594476 720111015 855524055 166783114 735039311 288640618 765691591 806785333 840901397 307676098 867250336 34699654 293551048 375582166 509079298 119529031 994909844 838610171 889968394 213635446 780638258 922945369 979217943 211382725 664936342 613848063 773316333 313153292 827039696 973887645 983871093 911329013 944608516 348513783 962177020 714623958 859404910 578739588 906663867 621399748 831428185 705165895 733621156 750568477 898833102 938792148 940627010 876955023 909677679 726668614 889563673 514934812 769890796 284818607 640006658 280105965 356865448 993280211 997901017 980720817 985878092 755531966 824741086 802170219 980050542 251786443 939204878 436791880 817744941 375389229 837227499 731612806 766424773 223244557 440362913 67766346 915417186 17133992 25729332 660504636 925127239 734786018 781602393 524226791 630800269 247417440 427571245 277059781 962797779 790565722 989922657 54147354 88285793 969605140 995534284 966782239 993631683 578247157 719045343 538661906 892066755 271445535 576624928 729365394 757245422 929267744 946781578 343695990 657421033 402487998 732268629 654145700 809197185 442076688 893189004 603924035 767519886 210774310 564184851 855653573 858925582 466393254 473605646 526046467 882797034 857830928 993151987 34512482 319056135 367716462 926565511 395374884 920167906 122438205 608410193 174579398 337237705 193646908 431601039 293460466 595569382 645880037 670117180 309393853 670955314 967010781 975010576 772613550 862419599 239828639 358452286 9159661 18940170 434923066 455926629 57673258 973521437 370130135 908699984 889215052 956228085 597863377 945978160 473538138 479585895 339915211 935984055 175292536 840750261 287248916 621935266 264166220 719237572 498318408 548121662 92130701 799645343 881098114 913100133 401868349 504774812 424551147 663554667 332800364 923003327 262502791 766084038 752207366 761612290 391663482 948105454 77341121 800154329 519415028 856302908 140429486 336001971 865357512 911088701 299459870 391893669 263949695 375187514 364616500 761908503 989843689 990094250 748919604 753941260 331382232 650001651 772436430 896218331 413087493 860008832 896890556 934543689 411817386 575572580 833874460 988663208 316856776 626504170 363478301 914025801 116481762 461053576 268366114 272516256 564391065 720374207 271352921 594214962 605514987 803986472 854850519 924425262 188429781 906098304 381759311 413820443 674941093 932641494 860782133 896116733 44463900 95242547 752285809 877018447 721213426 737945460 245410535 722582870 930189951 997315156 160035828 235395762 752018563 877161785 909773700 931428994 470556051 709837369 799881945 813780235 820051826 862943795 992651261 998946097 761779762 773134897 408316448 517280200 806805683 980558230 933584524 994477430 724697129 773588264 514873205 707914691 202739185 531843832 803787345 990457710 143364338 278672196 457499374 780164057 826275839 993634010 22792971 310711761 579535979 821113844 719606806 727799647 17236798 392447013 124288490 244725368 423031942 589182889 809225191 966123058 903688724 953531481 566724740 571297275 868854573 966419200 707116619 894968902 408782139 984146404 654592986 930412343 704303227 882869973 150354472 858103375 442967730 896354031 751966863 807948912 693998392 895038296 683385587 804775162 633894632 917527815 80488921 541641264 530871290 928356565 18267649 895988184 419834393 670733278 698993077 990596528 994861089 997845915 694701061 707782281 614220518 740725700 909058526 948675109 141961452 782634428 562000616 769355772 809434941 877202846 469073069 731668235 350975641 410215193 651326608 811145163 836556220 902151772 101481075 501646895 540244519 552214723 755681521 963000586 829822907 925170481 853913499 997643980 535245626 543549902 746901468 759263744 45739959 317532474 888304289 896098124 766706313 794909823 185049591 988947257 913016531 975694913 102048505 327473676 586712248 595828447 629369773 926582880 40277900 656522035 11881364 561786301 444820696 448503445 982250606 990415896 623066164 963183175 572851814 718372388 713096830 784524675 246417962 271304666 665086887 717132254 256531361 902503754 120069490 575386816 694801182 746362174 142433774 195112058 276130374 443340597 829647944 947222943 598194408 911269984 631638122 972273831 175386264 407437983 200904545 255607937 918122936 995402315 461257939 762087380 652097039 835099675 901238306 925872081 348034745 698792099 684476954 958498150 868182234 933571213 780451362 816806025 257321010 630702453 917444587 983517859 467320679 598730411 425917501 816162956 101136445 429705320 160075799 833301101 416585119 609763111 235643472 549763373 273234034 348017550 90221693 538695826 732380892 761588364 983313141 997420676 256235377 787720005 419675582 584784513 117907564 418635737 108528003 480983155 907445683 958847209 71920300 155126087 622143233 648203716 172558408 287224934 317629689 791274829 408765153 632514115 879403911 890861765 656819744 835214479 310632318 917716415 272346645 834320061 156389338 825535333 618966460 641079129 158149653 799728495 336539502 443658102 104513399 800021640 856967097 999268766 888633560 990079470 703975540 808868570 432248830 442295444 237519539 323071951 48952634 237360923 474160014 975988012 547759179 850462175 137783431 458888960 46095882 419012596 927209978 974685243 259323483 278676411 6700086 93229437 606518662 866725323 768759046 877312626 606348280 950886040 51639864 627571643 805112417 888946701 808013582 912502687 683743368 967711920 827625676 920810038 938505774 946163901 67360165 464817364 775542753 850536625 989581858 999965502 518130045 645151515 267666026 706589283 107045656 689165097 179365189 238602590 198866273 904817458 175439925 266786100 593182057 878625735 749740577 806601701 755907620 849405373 497197163 675118858 255779047 281923005 18546158 966416713 516853708 603746277 263739458 518610764 98504485 251058411 290581786 616843765 695978423 827434334 110177624 754319591 918655616 972504709 616004752 709200197 971653628 999518947 557272131 957578316 958488341 995251911 637164242 955857137 828192712 953285971 367795314 835070869 200927680 891936625 438578281 705800176 99683946 451793106 702923501 824027636 404565360 677808968 676367517 972124926 787330503 916168373 29251713 554413142 621134322 929547221 935533644 996570991 301392993 362434267 221412477 299978387 96515821 764365262 382131610 535900418 352982363 891000887 540901810 733065844 553293067 680296975 186332787 851762521 567651469 801751854 348237664 944312389 574573025 844159006 104469559 607041638 734927436 979540259 137532620 395698272 685338096 898360870 109244743 894084773 469542196 825152584 664282180 968660732 701263764 863726680 646910630 914589844 719680716 853559093 945442798 971936659 145966930 615589756 647891277 914819910 229845384 721878125 462589320 913532851 572609223 619428984 479647006 621942214 760044807 975231260 418419060 883113998 721770928 808744789 589526455 632366425 354515881 969807135 476852194 884094282 488803090 944251837 606788590 741432040 119342906 661322982 609105536 756091595 937963088 942010325 515001109 698724263 362423592 905180404 870623313 891778355 681503386 985493446 360220558 993510562 678988843 995044325 105390351 451612628 654636917 856707325 952649383 972882101 79813864 276300903 141525907 927544162 358956579 878377614 149723404 487026681 353663309 489353057 110020370 492077696 133337100 256518290 905153045 915900037 288098582 871758691 745581971 935997995 797675079 812095422 218974532 402854967 839918654 846747522 992273064 998641743 360559086 608985872 18065188 881571239 354286810 581043287 880034675 885658424 318790528 603447912 845293427 878816941 221283284 363311808 187110085 769439469 725939293 853090816 480036910 887167330 219458099 767966546 476729120 481857861 894729801 985262964 802899137 837991116 349583477 921726522 431450733 553073495 188727260 498564507 353381835 975830210 827540189 992349075 102069122 511330639 272541409 595318785 810018127 879780097 468689683 930779911 901755279 931715751 707657086 724468833 961214308 989364852 631916067 898415407 252588684 577879454 374817689 812338282 132784958 307319641 629299572 874177574 939737622 989159300 748364146 807281892 730172989 880572236 40084816 433203824 690673930 864583016 552080155 900845642 556203102 861953472 479080328 889690268 607678484 628610303 805760042 896979907 393919227 904948391 26234483 669876680 610362683 788835070 772249483 959933173 369231006 584794589 685541624 780905687 358259261 897120219 765257996 806193663 208247432 947763161 752177287 886311425 981328980 984354288 250853066 639800763 811461589 900206014 737124000 747680957 18976727 902238321 137663026 310215968 181093789 995431439 13434155 819457552 288237551 684124852 946451472 992461873 68250374 439405679 42970072 734028577 833644555 897259407 539396896 733725198 267525494 522239153 816378005 952919109 343643332 648561433 601643747 977141978 265134207 620977192 185195633 880758309 996072097 999432107 782169745 914820537 847783838 968852335 867790580 966592146 176791157 210260992 294572808 932644654 409569956 852628045 461535242 860364528 67686781 796030207 224176402 950081270 624478285 875992649 651701499 702084659 252403302 825729276 259413169 758167522 950116091 966517797 277658378 487902245 362072589 687476720 870602926 927968827 124404178 923758813 76950838 854020013 965566363 980190759 312881713 858711792 351461334 566872279 25185859 327243750 615107317 698838627 677592557 813791779 334465019 672533658 976834931 987840845 952954566 995920640 575550006 996185976 489448725 732714075 447965407 692598836 879150606 889951201 221394309 610278630 663468024 842231649 146267940 705350363 769094607 867124090 584962038 984984823 112468287 992417415 638649560 858779458 150121249 454011536 642689143 731576480 530173922 948195876 151356319 875678555 142865306 607070732 810113716 988001282 68184210 607644930 592590545 817396792 796748885 980066885 687523906 862236961 960561721 992301312 18072586 952544816 969180846 981290166 870304275 898067449 325975092 461279185 768378163 775489685 870682696 881666867 629903305 732058993 362784671 435749059 271419067 779530475 858047501 995009581 737424872 744217011 607171345 765529696 579608564 944463280 810282744 886744806 157794103 319191633 779326580 955868693 791272053 793283156 774235363 925938697 437727980 523211024 339511772 448433748 313482547 762918168 827294097 943445562 118953275 728318471 761395188 940888311 197847306 508344206 174411422 313931467 101783634 602401621 934515478 960407042 415254130 862280969 568474232 793574837 850442839 888906888 982724447 985770483 195762120 268133954 904347365 907212037 741883341 826715954 480909776 968415254 263756431 521359570 612095315 713887161 808509033 869032098 311590890 402411847 322316732 556275510 520066520 738935691 742491746 892981337 686176111 996842217 784914370 904359352 310591327 729235758 555775529 814499727 892763952 963899678 526859318 974699155 310305399 888949497 349921284 569129037 576133607 984696814 351010317 433654364 39159268 967505584 655874760 920088358 939010320 950263851 702872411 842594515 549010728 681078429 11209952 446519591 296620695 759480847 375420036 391978021 910699684 931000366 659353701 855637397 996251288 999562729 74384750 290179666 529658276 651170379 959325517 993885576 721766932 837995507 211674799 222116114 840556775 893218913 745441282 860869683 166426836 205390949 923891014 954202272 148501247 732071019 174404450 324460834 592203532 914991805 952072653 967025131 759279187 994430180 252696990 485732320 70659213 866099902 833997775 969078778 663459504 905250823 428096619 783586494 367664020 759425862 592450735 901572270 81172747 601922616 165192166 490532314 523741250 560178221 214399873 521840870 36613194 827274165 359622340 613014269 607684654 911848991 321076563 770781455 21450323 214506188 412941139 670561084 553832478 618784231 667174513 917847298 826224397 976666720 890272966 935630566 631046602 642691292 547769130 722421658 821080786 998169383 256351294 805411638 213561326 745930466 621878757 915436796 599068752 983225228 734308945 820544816 739895807 909192558 493934802 860329616 917446040 970531068 679367158 723743835 61268362 292806255 760416099 989265729 989419723 992045630 106769811 413969627 211127297 746921753 739288716 996274208 957065274 986907664 337673619 538714952 522289926 606624882 985287557 994018217 812914878 915943656 195820084 307426632 742643855 867178210 538838794 885052508 278684288 447660822 955173501 960359474 228176093 966110518 613508073 809664013 912910278 917445695 969541671 991321400 981374450 991735887 548176199 870246971 992360614 993313299 575868081 777236588 572884703 699865799 868818107 888827682 235806583 527214805 416377363 898822844 148609140 566986520 247697862 488091051 486869602 766758522 316309743 365337402 616820939 743986899 284374689 754362706 118700267 162398964 900625408 931295128 742967695 909664863 501695090 718167281 792530337 997097913 746280396 803090712 105264057 289849053 288806980 914267124 936646003 944414436 354943124 925497088 663848603 681723357 553594481 590819360 469979978 810775054 637681635 898353109 670978435 677120315 434044311 476225509 1402000 269809383 194577666 368872522 863272337 890875184 659437393 993462332 985230591 986733670 680470013 867889031 922885586 992304109 4561626 393830600 538453914 868368452 208999867 662296544 232202433 575289016 20329095 698655623 382588321 623845930 512072532 644676987 804541021 806981443 71714053 870709305 441157289 653308362 855900256 901494366 494578955 819459107 264321999 639977852 346764153 955034197 610564474 847070631 673726657 910905498 287849657 511751143 793481994 841693880 741034650 986216144 286658501 509595064 385130139 689115634 95264293 283250121 44478441 716826705 348484179 542210141 500421175 618027457 785957906 889003837 971279384 975069534 449052075 570341734 311743163 574763819 222260470 579563852 785794254 897563244 404777957 975914332 945607979 992940879 447374923 742178157 895912442 925578909 795031903 872745857 318687709 455259099 458602905 957619193 893002423 917988970 946580214 961395714 226134287 329547768 239796238 442900583 570109034 984659966 165701513 336850187 434291554 973410560 477761308 924668377 868554188 882101958 160669894 756449834 160512707 239835925 672847188 995211741 488053058 957803974 716678768 808580547 554930224 950331409 544247291 881644222 463284685 955526992 952132 801903930 16651579 489354175 404961870 982170596 138150775 358583405 88808704 347667286 667382386 846610219 44951153 573278806 783514288 859592407 795345931 942573657 457234397 674750312 828261049 887411388 737196237 820337433 112892446 908619772 989332722 993439691 420644796 986820187 930414538 996256318 134938110 214448205 506712947 900914053 133581979 377254810 484050095 954326354 78038207 238044695 631534180 849713618 837998164 841730144 298822293 677101714 903368886 997563135 321074810 769274259 247663719 500691678 647872609 757519867 399247530 852052102 105712825 517401576 347039918 962744227 250390939 756176244 377236298 672824943 565054103 608807236 431828386 509397207 209715540 590603983 703736942 859792409 53620029 787375601 338595390 347218608 102090598 380114607 330088056 495716342 338243015 834874617 267098945 486200297 268723279 582393243 210910166 931917912 532133925 719792687 712071147 818702286 905181065 995490719 153093166 644704183 499055088 993210918 373202370 419143139 708348812 729600169 380908308 451565690 127413868 837438494 842791919 909126879 833401938 867950780 493833455 547353924 592374542 923828862 507216416 882842797 881231576 958893369 239860382 993491429 536879000 713770812 611505513 618174629 247340709 446881137 461151444 717978305 161948724 635945940 119216883 917804495 501262655 533418219 822976660 885785338 115086787 709838582 972912407 981523737 249414106 990836124 671322449 740676827 242510950 629493809 995671658 999321593 146256373 656174859 83974590 483214010 541776240 786971355 69948017 838536495 798523600 901100582 576259888 705393501 24477268 586360346 448538862 707040238 247679309 459928846 6387680 10164611 679949386 903151939 838109261 938090366 796156805 886959508 696638082 837427694 696502451 776630709 861656719 876171527 354212347 572408788 74519622 901914634 69174740 826428002 483320100 889942385 307580902 518628001 450391246 523979959 348204530 996974493 439612459 907392273 840495964 970876087 600022367 741125955 221016725 923639371 51247379 199854411 455337470 528345042 862802243 988616219 437278618 563103716 939168206 993904904 680460337 878634874 984918169 991206470 48932852 272656293 378623995 532744593 105981120 464272241 424767940 440519714 321638718 596687167 570946960 658312613 122380290 832520735 440231254 958280246 28404420 972612872 836800415 897711261 367794884 663688370 91115466 205240584 42204296 313880915 164684270 711553220 873182713 994109871 196896420 971879492 933502737 956443816 249238301 879680289 655252108 696483044 968423264 989415069 294371381 497938642 948601551 956983065 942000033 985202342 883562750 991638367 553676406 758920411 857030970 870091470 697235117 966418984 39417522 174540710 324296025 592150002 609780540 939653914 855736449 971276936 933984721 946058655 943365640 953412089 63068881 846703879 824565733 858433458 960842221 995732015 942572935 949441704 956271481 962495758 365219341 543042535 835384236 849136937 748579096 827285223 825041970 981433153 744526308 767126114 724758500 999141220 674950504 924502247 213238831 809491085 973494653 983236491 415525744 599027651 754058197 846622966 255141778 724781458 324212924 926536169 229452018 523072125 174834761 426646501 649805890 773012849 730822316 744996512 978317413 996200267 76692057 537983383 680449677 931129243 100456982 641147726 156668625 773970233 273553957 553896021 298776497 896007910 716586226 767403418 903879332 976555572 682531756 896617945 603031518 979341653 478467756 883422238 241694109 738601321 158427064 602479981 880295316 994254701 71069035 232458367 557315541 670364309 299134220 549925510 808575349 918941437 903086590 954007966 128306410 746388966 833512474 912299454 34376602 537783302 932731753 969786895 823473467 898353334 105256014 929844428 240679344 690645584 760601988 866234194 838354739 916130691 613801467 787079289 563899720 778191551 463938269 806756103 770556072 822514713 466816981 504300014 5084588 294374932 31170352 415691062 443473327 583754566 509646170 873744455 779300312 879248763 785514506 827597113 528609019 929781134 494958203 659133602 141632507 869219091 960480895 992965595 474292300 716199882 369341854 484212684 638273279 974498044 852334146 868093991 505674668 903214123 805830587 989958839 956429874 967405864 746087123 801345881 242324660 400866798 886385051 975004454 255072394 259812680 60317810 366554092 186520478 457110497 186778842 272767806 768723911 844217549 259908273 890492546 173476499 830758992 515866578 972134704 886480299 924347080 881792167 900167315 169663573 224585409 59319469 761999520 889387645 950993454 288584525 383298538 791097952 856881285 711925509 712049696 263145622 785642173 37724542 559300734 642455337 948478364 93611173 371074935 20801663 44954054 18220120 449298224 664041975 984656186 416010530 798266690 411184398 713875871 152333079 442238930 401688953 539884709 418237156 779424137 395668214 900903188 977755241 989449023 748504616 902847186 923990793 984319335 557729953 908543658 541961719 805540720 273856438 481716090 579098724 705441633 687403039 872602903 94246280 421909284 293690362 712933147 775100466 962410775 639181074 669768817 219955602 390260757 396362567 751328988 377329726 596110956 439818704 747306043 296903260 407287192 161619858 235719787 96408435 308019798 222662785 899815039 81476827 120729119 654180204 845244931 459206118 518604154 384228844 615276888 493106048 516184639 741188124 973213992 161203901 598751210 848693498 947011340 494127758 535637326 982501831 998060214 774042426 904906539 395820719 891311309 309358389 707544387 519828583 555967848 739949813 974976513 483087944 930038277 386599798 605629867 296946106 698123575 104874662 964838523 105431417 355513960 313682557 697220559 335816478 763570491 689170787 780193888 629808194 936538633 2090421 776469528 612182541 691655682 874987133 963363000 943996900 945414251 936967311 971665671 323760593 773148557 412420668 802957234 553015832 593818815 438162517 956095056 638055440 924711909 781639340 894876290 709189924 795114316 65472974 921240843 465154779 552957710 401006770 729537464 936619370 953336201 143977984 934356166 551951995 836404909 482717157 807465178 449394280 751646159 847779939 939208335 606438090 906764796 367201949 489692250 178090915 837831696 865420961 920167187 567358509 872390814 910636598 994263735 461691302 875946188 591956087 922989067 384185332 718263577 149425200 875148345 700199908 888145201 22989277 969043479 616495314 954089244 803203061 999442501 626501148 964352983 812880213 874964001 796842254 905946431 362454110 425670119 719788919 793913641 697654230 977355557 178843954 849409557 599070633 832444023 835243919 888051101 606927275 972446803 450154799 971856003 428488614 765913132 573444714 832195639 691616781 869584787 275202150 837786303 556406931 903263938 133479020 924527516 181723722 707910054 885294922 909380103 137113836 654057096 356991051 738206914 906418904 938606611 99537334 562619633 805092271 827566699 572134178 584183500 110750137 541847919 516187696 851403805 179008702 587289774 762584788 872434375 428822123 873364030 208819382 254801493 201165025 784195756 440710979 832122519 930386514 984518859 12942673 199527198 557659222 611558647 415696155 452308532 267352315 676851994 438575394 494353407 911394240 917309439 571809995 648503602 494058695 950769623 896114130 969200733 142927124 633041115 579350762 818530902 241747472 300599476 629047640 844614372 291942213 978804889 50364918 711257954 987441433 995382581 642719924 720499330 910104213 915273258 301188281 768772952 347123770 816407001 865186856 931494766 220529477 338626362 71129077 385844382 926349496 932389858 195559171 462394147 796936793 808361273 803923994 886586938 944526670 986005441 321446324 378151321 919371763 977856959 902186722 916170397 171694293 632518684 318325694 866233536 719854032 938194720 799125957 912999800 222961633 603589114 688503921 858633775 92937264 654374453 948399378 995080209 364479978 460124368 422631095 727731994 762218512 851185866 548135982 904998175 301581866 643680067 64868683 200883120 849270008 944266778 574423312 872243042 49370397 713740408 363684717 793108130 96126040 405178054 351930748 624059188 599767887 862198296 699249480 829970418 723344992 904360833 786998643 886757223 580791659 893147570 70540199 213021628 270049826 305897941 650522661 971090293 19474293 422898850 843873129 969337682 340807614 444101435 974985531 981791958 401064634 844951838 770972015 907726783 259161285 553000598 297089557 675485621 672917858 840580455 870573701 927182027 73884982 837409979 937343645 979785264 553165466 881120888 29275549 935749936 985082895 999301354 187957482 257746125 951734847 991581539 242916966 843351317 982897392 994487571 910482034 911677840 377304775 846232488 816241401 944472663 630203338 952262350 186051825 423121966 504079091 644235310 231271170 999509997 251678799 981351312 138343633 434295275 148815976 871628677 263904347 736450952 138368691 195130736 735808228 935272813 773344437 834080439 39009477 239698396 562082304 851028904 384468054 976056997 736233552 832978005 362630472 718368018 49132853 100002541 53383080 445250526 382222128 971372908 814407120 980320712 773147759 844351703 520739399 906468884 42423580 971543103 3197489 837708962 78547879 183087922 563451740 766029437 486937197 645578051 64357715 461414603 949209607 967711827 210060535 731340599 608273130 883042397 598653665 779167393 296433409 317661574 514393686 941282512 841460292 910343273 437539228 929978010 405160523 698447050 85126096 715244224 802877476 930397492 960306317 988923245 370320026 897220802 367583279 534773496 525656309 878045751 146189483 465651368 819965507 904549834 650907651 999865329 683728968 760893696 372814881 793717132 250398835 442807468 351200912 464064210 143259844 721305175 468763966 702198229 495641048 770668468 51037878 78799933 213188319 410225282 973809222 978977549 436196906 713640101 468068932 934651665 151350899 756445780 761171690 959985499 942679662 950857098 499938553 813411445 394181405 649645465 327817463 657320445 847356260 960409908 834386075 980729361 579628389 685679962 787363186 852769167 755030250 949197617 769627806 983862345 312148509 593525773 259872053 516394339 839119511 942592918 94566476 817148482 78315982 966727301 35697117 364672577 983869305 995894278 395652980 578794593 9324961 759800534 740360563 917516378 523063718 621279061 155717948 812885153 634718529 921244807 364661783 564110163 221454489 407989540 692832965 708704254 345059071 829567699 907549134 929614985 3286568 516709830 644436939 852463498 689172263 839176204 71985598 323533940 39054309 785669833 814892867 816221284 212298362 555702834 87453890 989569643 2905224 226746571 129506296 470810223 334937893 539818879 720531463 811069815 925374899 951118636 525155867 712942178 490405013 627395127 853887291 895698502 751229537 891770599 67814372 765222822 536458172 795088271 488272941 827277509 679077751 859979367 465297281 987219007 764217407 981000715 222459532 882173146 861011192 894265482 662670796 757772494 560758481 896655095 531187402 674352897 679033576 712657608 859159505 868013114 352973689 902053148 753861768 843396156 35794083 485028701 244377497 706137675 699667246 768896450 72579676 903860317 752351197 764089176 665139791 943717682 379046331 557931457 66927291 103179219 219615139 546298680 180602240 744976793 454383732 471329730 412172662 647787207 514677747 789304141 37143649 984247976 653402687 677658480 14732445 276441532 333189988 433871992 678164219 688530175 652711174 772003358 207746534 333094535 849157445 953845135 484484459 681257894 17650242 210180005 658359391 981513908 640594020 935528021 965045929 987251634 318652680 880975566 196960843 791087985 876714775 928740988 242707657 406057185 237772254 330862959 244933802 700826823 121523897 810117126 349748046 916040732 625289507 648948119 693350855 805079937 184428910 260485402 682738017 748968950 680230941 975528031 907825582 969647769 761295471 913073651 190504680 638618655 369608390 588665547 864081970 978540728 567174542 624245462 538734383 639760306 15419091 575404425 288679722 909006633 643751123 824826853 41196442 840107777 707264263 830626570 446995825 683731931 210634668 435807477 967006316 990021176 284879625 748890464 943621031 964419523 372527211 651162255 543054372 998646797 128059821 209332346 964693289 987305344 530294307 882807377 939812461 991790690 48190073 782613028 517137220 735142766 86807722 882600988 124899702 410806216 785150570 894377208 867201132 961786954 589524676 816274696 64607703 329073531 431748340 976216967 208152159 937722176 768605811 992486045 253573411 410049446 951667229 952289490 116276691 642796891 968991299 992771800 249952956 790017721 765484763 815496751 32424043 651519961 460395371 975282237 114400558 270628189 765671790 992602012 857632599 944176323 78157280 367297620 576482042 910370607 188186070 293519806 187958557 803304255 523305302 757878844 144981905 630596311 130485678 745318902 538309649 720643743 1357601 821758535 212692589 761441625 767025898 958676336 438547309 698180602 5808890 506511808 73018146 836253967 208683711 333250696 90225489 149075610 970264447 985890341 452865209 465669987 888924727 977631978 296296398 746852189 839526708 967605139 872610443 982846363 302704354 876035331 287315999 895001117 412851208 653130254 855982261 988761842 580877195 847223232 301343030 968603108 237619995 588344041 786921431 994719524 918575314 921679225 361571449 419177662 862135716 984715725 971889866 972541665 462889007 782105467 54849966 783520747 280455677 508981693 460779259 852511694 555903359 997514658 494880717 952559107 229201679 245122778 97604866 461602666 895685730 940281206 584870026 728268707 99998086 308139029 536008602 615309420 278800460 940994816 661629325 701607819 711120487 904594386 55986058 741856412 474968299 677346951 519175794 614448592 955884854 959716113 470874049 873096390 740335773 870614673 92250384 988100724 186771075 200320375 524953888 849397012 440947589 800021963 392576077 692654802 581886155 913762820 862694278 896096546 447188204 864819738 184075382 323792057 195337775 365102062 562015637 726724395 999037622 999621411 227670480 408021169 472933216 554411007 578426089 776434361 643632655 747845351 921494701 998741924 584984963 950314741 550692544 689505017 403935597 471338970 871682413 928060131 159368102 191931184 322078433 676810146 277262058 301842664 344030406 405568909 878281675 942204336 953655393 961130281 747112616 749872546 959154026 998102023 202540053 294333043 161796430 639136967 397453153 875307630 755644092 768453664 979742640 993510419 261413514 794745842 810284121 883747633 251562315 463458820 668455769 702777935 171576907 410052922 894971121 898466148 93796712 688014975 64506497 211357121 214021702 761642686 269946555 669740166 835616261 887975831 73652743 712193893 47141110 208645577 325366980 710457632 414575561 632148643 182989673 938021400 364565168 787813722 309323781 424978701 284591950 978320158 274975658 689825801 162652979 500160370 162704717 608535351 153720907 685281450 490343076 585846527 53308964 460468726 895738223 952299165 951347483 994314970 313378957 471092482 951910572 975785378 553415907 705594198 891354381 999600896 756414253 910994359 429212050 973997001 43602938 623832399 408936140 805166997 870491951 923153808 757171494 919029280 854777478 864415370 450776103 657045795 36166344 987752576 46107988 410495763 622206372 710412993 58605775 863863023 802585024 817801777 200451585 908784351 984978172 988284495 899182052 981169190 642554732 763908932 266535844 895183900 995997109 998546583 814896400 986131029 693710521 756505613 547851680 606862006 594491418 875520821 552320947 667299115 258463655 551071717 624085269 990112828 491584779 587975212 957450212 990610162 234505379 442987287 908788461 993240798 929292868 950003709 822202011 855085024 37038961 603318509 61912958 902688843 74865230 629868639 67313684 990042071 148085399 725303458 564147955 824259148 740576786 782435842 339404808 446442221 570473225 730255798 455167257 485670524 373120517 397785150 306340879 557686464 437218152 535355379 660341665 697125131 615437371 707686167 862055577 992148320 516387939 637612556 28756071 688466285 921827740 982329181 341577445 431618625 384722776 431714798 292175362 664875185 644196108 873144831 102663183 670823291 894034472 961986079 80545918 186055993 730815496 740816279 443907715 493904486 503233935 935179663 780092685 914477906 52742148 102148387 420010271 710119074 509678439 883919354 978653764 979358005 578920812 628837954 173407488 625165886 876501565 888276531 272940416 928944892 470735027 734610209 233187809 426508367 74224638 357498494 540620937 640910820 453394641 714471804 43021476 625829774 446906982 578827526 261559085 546297196 933960308 972860229 875799321 930578480 406772096 454677604 449795500 870665004 17126514 590894234 423644092 485016059 553604879 658410121 964260736 967977982 374171623 756173377 102087389 959502848 458927999 784882653 177240506 254229897 193828971 627618431 297395385 729052753 932864676 999398637 46623892 273323932 446671415 606293627 528971842 845177801 999794716 999796361 977006929 988547583 235323184 797154516 83545774 474928293 651788329 729448534 45207939 432967112 314467514 368543223 273450407 958533018 227912389 353861776 200988198 740401592 797355968 822277616 163657854 686328153 541634697 649227381 743103809 760518972 600714601 677826580 330841341 365474726 354799304 792642242 620980001 909695914 558305979 952332046 385205902 813389061 575282823 958568592 747372314 883409614 40728018 166385022 14207681 16191152 8041080 193845823 214054020 765530409 147147900 928362350 965207109 986903586 937951412 940683277 565726830 756790596 983416546 991150847 398347843 842754639 839562603 875753023 897741781 952822985 419893610 697370803 333468186 946324471 608903568 726289515 985838477 998410750 106900741 324403411 229488533 598126237 681832533 974080437 352686989 387247299 686248700 798708166 774851619 801842297 882837158 961555227 2535834 713062498 514426929 630903770 597954451 803272544 828421596 924895316 966652646 980947320 34120358 627261000 825214019 842357727 244701303 714147946 560428759 635486215 266932542 348451837 691552409 958180202 673860959 712289280 577862127 705892215 560729075 686439359 643528647 674304722 188523632 761605909 341774232 354534371 492273568 709487516 130668214 177916652 227995285 943508065 832969920 969931019 292852608 636625601 952038083 960553194 298985402 349659701 758246300 851592524 670514176 923836324 162919672 457651322 919974082 992415501 853580411 896462500 115119594 516208457 806907028 954143434 346526001 959809845 44094129 476167617 29683472 320514961 253665203 277194232 772519932 977504772 975841540 985482010 9300415 342518970 201131772 449789515 989882158 995322192 732281106 963178148 177276821 640942228 698098185 739227086 932481162 941560223 992381020 998949409 80696636 240230920 54802135 911212540 980198232 995413746 702763608 842824685 890610530 915833758 423424548 717103716 811087076 874759251 558673702 805324313 212112870 468777193 892927048 909354132 217881897 587044200 378125028 628427683 389230210 525464360 755597764 990885422 321996359 540403903 932923224 964624109 419208034 633565790 796526798 899945357 881921742 932224047 833225239 949522961 354432037 445552753 579886406 800959899 486769643 716973713 643119068 792336057 331539640 385461406 7768050 315524510 368436302 415147313 663416609 980346898 575481103 716862515 893819485 986443369 506078364 933300384 333605584 970885574 604014030 654441711 142833876 519223903 555062269 586395667 530884985 661446372 393966007 906860514 264756502 399793179 925825351 935588144 626149136 738719513 949472227 980084160 764450766 773542493 99202025 580864795 126583695 861195323 426819836 778332654 938663199 955274394 795008757 927243425 11508779 729174004 847750335 960458021 166961936 180850955 874244153 950210621 437818075 976773737 802415381 807972468 890988457 971621980 413631041 445053118 649497909 884262908 930618562 938171598 877768506 979828493 586844689 675621906 89254511 247778625 651631668 703855959 762393656 823422876 531714453 733909378 427904895 685220583 156115347 634376580 315394150 843983164 987318660 992182880 819285294 933186059 847451076 928927614 523339488 713451330 157984531 236663217 499265657 961958160 100079323 222736880 257886561 519872278 981759366 994324465 987200178 993637156 273745969 521685338 298332462 758957028 758476672 821947196 192569466 465534497 195442059 418903726 311364274 881759766 565077435 643083366 682711335 821230751 421685928 499067080 728495475 781833539 933807736 994190464 734971912 866284973 492270301 618565428 493401528 725000531 183090007 460892919 446507422 949042190 167085551 747174539 73630280 359506954 124430255 154333082 924958475 936028061 4767074 276849670 292636984 411914315 493872646 882796633 17926633 456525525 682993109 991696940 100780928 413200017 568958999 931301408 995200064 997936304 827457885 866652872 840469540 904103007 994071317 998940700 551068747 831926316 266823871 455830853 276329656 277514730 717418842 833363379 775099748 886784829 355907251 369338021 91258773 676219127 336572152 349666281 928375769 962940515 206143501 635456780 135319687 315305241 282650039 485905865 842569202 989893227 899897986 913866888 403926754 903383787 786248547 933618438 343486988 457975855 677680371 711294701 751017415 795423525 207177551 976290488 127994737 953913389 823196500 988205833 952434790 962097175 971528949 997775085 144752780 562740708 211249754 288940609 831683439 895569459 401176974 950795186 498609056 835838495 6442503 701341833 841482442 983839656 483689892 887729723 287640143 912728825 461619612 910864993 785984431 818280918 263664913 367671391 886308942 907751097 428120991 602105836 442472905 449240837 322627390 901152679 277447606 741608295 225475613 932098650 487759142 529264143 86465128 622286424 840136587 854276315 72829272 314489691 872445608 904333077 642184504 877800942 759195641 772820438 909051211 970495028 116616053 741596145 901251146 945975460 867094674 937162381 847103976 950685753 565964302 781820914 687988711 828860289 367242615 562220800 30403489 836404507 972511479 979771267 677407599 819663481 883363272 919289625 288956895 447327448 249158409 870432957 316570242 774934090 408928291 946684283 617363018 755521070 427561259 448316508 895302283 978079336 458775874 888542562 950420199 991301087 606533787 882093241 619843593 626041616 68115887 916400648 610939764 980257174 472098004 505465060 784593015 987722405 232656896 886064257 449249279 449775059 2729870 817198459 294670498 975918366 696472328 773325258 685411911 941397932 4021137 967271430 67826395 546206975 906755023 960677319 264548437 813511537 381804121 877107445 112056118 878763479 567505078 588441650 625740683 716584663 626365423 811044908 184860016 346326113 707354751 984907353 892288791 931826322 556492123 695650856 649089533 802209538 963342808 972574140 258660688 569818685 595758770 811296672 134082609 259480487 693917655 734425955 952180868 974456993 871669064 965345480 83250982 298297922 899517281 972702494 660779134 944775151 709431940 857299321 595829559 854612092 39963470 532370209 481658256 483987327 876652931 938393307 148173148 521076715 226346845 287789164 333031245 995714002 442116057 783167178 625255375 745718534 424380403 485209225 667271083 783536939 256079242 698914532 297319807 621710058 541356763 975321977 17466215 848476646 235289318 605016906 748399852 889705484 616401571 822706947 682657838 764393271 406825157 725543551 195478852 811574129 249684708 760540305 354075496 606575289 853889022 992754017 161302964 891775873 113977400 184164432 636379331 850254084 622242160 668158871 177425856 445234844 183208197 319976483 453312476 492055109 725881320 836125714 534917082 744251091 60139953 450571177 353591260 587236178 525401553 914290117 699573248 756900848 812276730 853701630 972527465 996468058 55588498 277958247 29667586 54623928 352736909 588229560 255094662 513338602 260110521 440888533 951024246 998450124 648691273 948736024 100518070 853109097 939919752 961423912 674022641 679651335 267270496 528490270 716080270 977467281 398251673 452235389 118060925 673746519 835128942 895007893 491686647 673708544 734821842 966230001 726231043 937638693 920281379 981028257 466159887 660575335 658407424 842070467 434941937 456088700 242274653 684252920 496427073 552684575 633616637 919013469 693333286 806989055 101746784 903500609 794677251 952096077 972010728 994353199 681596656 704799130 674424430 783746809 825431281 928118063 679198906 992765742 917419133 964731837 489761673 892484898 579085534 888925862 818601260 843496161 148323435 488856063 769732917 931298632 602443730 874089180 600305798 679723430 289943586 584468513 954216489 987134743 295543552 884547768 589580633 630229511 279570880 468683801 30389940 629127783 611089144 975026761 210105021 619965608 68435873 778397341 725007635 777092031 315755748 593991292 927998090 981945158 539829898 679166735 822221025 947823263 900417056 970215250 6595432 851132253 82640492 558896195 400988061 478731044 693360033 794112603 364738308 624659002 928736907 995711387 997215398 999301711 467044534 818309457 399977799 518402415 51090746 612060242 27918426 205544531 351320597 592694453 457697651 915181234 965460565 981389299 850458314 903739652 694770907 702987703 533369571 930807845 876523973 989305880 688718266 923536069 454161635 979187510 494577052 516908010 443252873 467196007 828137675 848185037 868138172 988759379 677855356 842265227 502799442 581425009 432669722 699181484 881239552 907826324 241984067 743884856 580717553 697601121 816086988 967643081 260636791 573912669 657734927 944497678 539579827 571066450 343269417 430024279 459983103 555212818 581327096 717325323 14963920 557095787 129980941 675719768 350513991 622524285 396462931 942596348 18485021 253494794 373549901 829571034 73435730 751761618 722561478 966443671 164202914 367008256 600767611 630796839 7451208 900939904 803940046 821502721 906642971 940193254 972532986 976935270 30281597 829644258 578517559 896055013 458002512 961260294 693955637 788887337 912658535 948260271 763052116 764521339 601096533 759791905 947218401 973749735 78645394 832152656 575275305 841824435 884733847 896983373 51997568 394756842 860700499 908987793 438074273 843385229 859193812 900575556 373098909 424961649 397860435 556180968 127621952 212213106 718850254 800815945 419015666 680562358 805358233 935883546 776306599 853087198 405155871 536570862 368175669 812137901 370233674 990069106 49134376 364042370 238258181 608965030 812073391 857716316 436690949 440767429 527345863 870724629 942779139 949492825 811587949 968759278 244453715 507118486 110709128 212542880 949809517 960108615 601361835 656597527 31425930 598856717 17403678 141266638 46367021 270331692 28412826 383824787 82911198 885840117 126026401 852674826 592333353 955195354 869294830 988083539 644354574 729618564 959134172 977808741 703382644 725005608 508238918 720332859 230265338 901812036 951472166 973470580 240007392 411062238 263998043 645998106 383695647 402761005 156030306 417735336 815234984 825405455 897112731 929151672 41453934 933301438 428878441 556057665 320296202 722106168 775348798 892749230 801214264 935722546 704670174 830685742 115080387 735196010 70134997 461493863 833366025 982857247 430074350 458039902 538353252 882347547 467535453 631795030 3382495 424707586 518976097 671074798 519463554 964964277 406593391 741967456 805909070 890371474 470250126 487015666 405234823 970283201 873001227 919608424 259963110 718524734 291312953 709074026 297558148 406926022 577890693 695329317 121500704 252194503 953376301 984184245 90890315 861977595 700452975 790235178 516873017 788237544 984853115 985970569 98902494 567567256 238543794 375147204 100371848 802325558 387032952 781810484 321778030 500381264 999658689 999718007 510149211 666295451 519425650 555585916 633959195 768586959 234257437 612581617 602875923 884701985 224786155 480320310 515515018 723106109 330870166 653087898 751333313 823984177 882978475 930586803 516074281 870264056 489654981 956787379 636703059 849402666 484666666 544232460 317574911 930278846 765617712 958795651 20845107 65915609 214122788 583028066 460843847 490892707 779409650 830213054 396712880 625116930 217572099 342044535 399303631 978963474 666009648 799457934 652522591 810782410 973801524 980186380 827427468 838226657 747351219 797248907 534602762 774703072 632893536 834711840 517682372 569536632 405779994 439391330 755647207 854444968 476751707 543048182 282404281 331190417 448179958 789081514 394413423 809768125 101878916 901365542 475472526 515110831 671783334 895130340 335362972 751205233 520004837 754633646 685999834 723362621 281896361 634353447 564878521 587499655 781756599 880048447 888295464 940147682 553766064 579896017 575383961 695431039 761470347 893760012 964547567 972041197 454179409 863478675 590445709 647247887 764328411 849145127 945089660 956363093 933351590 979588454 991781079 997859028 909177871 929013604 691360614 905854369 182779614 540276209 79311412 236602948 565720563 697257306 417979890 807601714 375721357 712720311 462800921 687953257 411095047 808836657 4699643 195101362 302179449 658546917 962639739 966313233 491625464 961267291 123154857 478143424 942789003 980085089 919712976 992068836 235652719 254670922 57789475 350368151 513964957 655893945 453356945 856402053 419179025 625073335 40772442 632707176 523970071 907463282 630389564 995832730 105108188 801090890 735142018 859999948 911813684 924425730 142046201 877899775 181310061 921560901 714529976 946144100 537848960 935725299 238671722 251180875 370545385 698292886 191616625 725726492 134147990 905821403 468641470 887283044 486705118 953343066 657452959 846990152 183455740 717381288 857768965 992633159 936450497 979805210 337110564 773672410 699016700 772074041 19270759 378784587 189696373 626128693 896818778 917458629 998784331 999672735 339394938 346770726 354173871 691064799 158416694 238265714 869778831 927288690 617070090 856841888 497057647 934916948 519410863 792647144 658102516 799937455 980152731 980330311 188662117 287938909 927371859 935141250 932899114 977328842 288790679 386389817 678321058 732637740 834773860 895325844 189053060 996813433 211113574 278454818 794225979 878017330 662073529 795668947 293175051 470650812 86795651 648488300 454816062 821277408 438235279 914988832 583634954 893411922 885848625 893333218 638661469 871590532 155890282 831974287 649039256 795396414 785373837 897543331 597364463 892113491 622861854 694514536 503536163 846182922 982305261 993751316 612648308 756727478 77695076 397042671 508589508 899672016 316505564 750311127 725051128 836410677 62158833 65386779 105112877 821947429 395929343 980273357 568902757 662704699 400180781 741568163 441109976 916229353 600218426 842790408 581775452 931808596 840279146 976002138 272481087 355234598 49016633 662140166 578243479 673939816 142010292 775145186 375287606 680576707 71158782 789520099 108126383 621280898 622708384 818334093 440798140 807525550 57930120 348527484 850374564 903060068 251466582 599559042 818693337 970427164 189335210 839627510 579248071 898082482 508378209 754266034 93587403 479034578 411358921 974614018 19406914 964353710 25215531 259111103 72032207 683102099 624630687 629514497 203543002 358396469 529745920 554040302 820373966 995649367 478697926 788499574 571020973 735347645 360999680 409347009 725928173 759355715 62154651 843129610 289928961 919191529 731362048 966871581 111080627 195383950 134073476 738184218 667748856 768328724 641742961 886928797 561478710 742121478 795565281 888774767 579806174 978830942 863222066 935530431 152922665 307900036 685300514 873135610 712602509 980483845 438055934 829766724 910901002 984742392 194999052 621172243 392299824 638364619 942913210 984035794 949482343 994698107 736330605 837233159 850582746 949544747 1368920 939901025 820086137 977754025 191645776 665686689 430836336 535823134 712935200 939536831 553836427 928715856 154625380 918518727 993926638 996762906 361956302 370708101 641593129 724446095 591843633 803899445 886043231 918010657 612237540 908123008 612546209 990930551 33044673 797469164 256036875 677905174 332463324 759721661 684712945 805883536 29177360 255207859 309877867 575202648 913229030 992355857 361586938 899183811 799583794 892129833 322237931 554299980 400885558 875250957 154312161 237423188 102033717 526761836 851034139 943026530 544692317 978790562 303339311 713222982 521915043 743710474 762146786 849872025 152094060 183424127 327649051 723749852 617954183 621480487 388334649 612708902 73801573 739475563 816856231 852368394 504470749 923393653 816807667 837839354 692587706 999184755 463682300 529596882 401144345 698077358 330806439 493075881 248552160 700159198 435366645 911982397 104726773 157825412 713803989 907604784 55696636 150525808 277332487 608500230 722208003 801182372 825023433 881146893 670461502 816505111 177478185 348220473 49435826 277390120 729596388 751008790 172949059 807750622 591038675 753770338 385929143 811570041 372852924 969732043 606290637 768875471 439609678 534651741 600425865 926682504 539852597 559049217 517548948 922490965 713796682 730833989 841626192 844503375 25853539 893119583 561126672 935450148 710499179 907543321 628289120 788890158 536972649 802391553 577187468 814389962 865574320 914842973 169789147 378892152 444721088 946563650 947929776 994326109 261877146 530349517 986264989 997698294 475058578 527727653 77700812 117724506 56295490 410244596 849445785 999632663 365289390 629628822 434344487 971693961 341723503 816048392 501602071 804083244 242836355 971954170 348453057 638467275 923711899 952270630 534345133 651830167 888671020 902775542 377057707 880923600 917220992 968763113 541000232 705568737 133901874 892117408 511763955 858618448 673645584 950433571 16042282 523617932 542288966 857839002 730270424 830870984 523240592 867566964 435104793 543751904 422903822 952105823 512974410 887914725 145142789 360491358 974699152 989903423 659275080 832118705 740296065 868598201 411531124 890577930 261101784 797802953 209505956 578369516 869765848 929161747 6135150 986956410 332776968 760553872 262901204 437928434 655720588 730183240 612174576 964632734 14947047 759697634 602106397 947402874 606323828 832817173 629999769 824901847 388727642 647057058 818657244 931655279 920058646 974082071 613927711 717162121 594592581 771082541 749976326 864519290 301240247 587724820 698437971 838793065 379851211 519480038 651882090 811730891 395755908 770420732 674276551 886465237 25204112 756157270 30892107 861062635 854505972 899444826 734906097 816588091 19895409 278058764 21809956 288888598 804417431 988185776 799491004 813600051 927521132 999040626 391278476 745417491 59247333 527706666 716774735 757380815 939548795 979000647 903532571 922495492 186245514 291428453 944232171 979764377 703554015 709778507 247759238 761856795 141397637 377851832 194127621 832185176 718901896 761916683 154461138 538060602 272939066 983398903 429938780 884705038 566876968 730207769 328743791 431698586 22724052 532960150 16719539 161945905 479722622 501988208 501157332 672305205 75542440 676858006 854508320 976163081 253274045 680068926 337964413 563821033 230418474 613021175 43928214 892811827 587998447 771796138 769147396 958903043 75449514 300443042 488897221 956681060 55038042 86363474 912976474 921097009 514568353 863821592 601533900 893211571 427140421 815767176 827030340 890249234 712579451 874370785 859312576 934764824 287547872 460644317 668621961 675586490 266020242 474065602 482504466 544301147 235588535 516785611 321676526 377243507 889401408 894478683 551472470 577403694 865396987 999104547 818170732 900320020 885271019 974174652 287384189 310512734 237934682 848331788 19895490 116811619 233099149 577223869 95426389 192338407 318573228 869308854 311863224 526483947 3961040 351284867 49145389 237169831 343221938 407134987 558935183 581613905 883562459 901106680 69303974 667227970 129124537 671968079 322165098 385895726 735866954 865644414 422646912 946837480 267776025 943503519 689262034 986408362 686576250 890720364 199772137 413008015 464130751 780016664 398484952 652159630 504445424 866764598 955538620 999923150 481738305 855981076 663113681 850919482 908107995 960268532 795611055 971841351 469654183 819334043 761727836 975191625 986002245 993001654 731579021 993343456 968294256 988377668 341945320 733232157 50139181 306890553 52534012 215293858 818475047 931117088 446776447 678252979 49807756 226638553 111199785 643091592 644521261 876443849 382292987 763977938 893503580 966100515 201583215 469571486 240005767 521435609 328059353 363637930 96138325 985177490 941686494 988649925 895916590 986667635 941923497 948060643 862272627 903473106 827845173 937816957 729686365 781731890 894136768 922479017 449735727 987010835 358220836 787859211 501174013 877762361 803276618 836318102 496807878 736136315 415343506 573027233 347888178 463615038 477160862 713755870 894742590 904597905 827447277 905626924 402658046 632326094 151307434 647209347 696795041 835844033 682593053 927838535 106266804 574238453 315618339 477997775 15225342 712312234 692034712 830045039 11707831 73801026 120077249 168612652 666582361 862164639 824074548 836708852 671509700 892686282 804239952 828808464 618661433 962499907 823635704 985663734 42872869 974822214 932632296 949329368 973281196 980174855 791435563 993320548 937791837 983788730 575658132 657868244 542400680 842996307 52101199 246030870 107921386 457513733 631869245 636266062 451657248 991122063 23842159 198759725 857117632 926749875 902080926 966622391 144571438 219418381 865032059 872940247 715658637 855898456 1970813 636152206 152770563 362054957 830138625 887237766 287616029 774231473 729825913 978655234 610368893 843541719 211450126 561318714 566831946 973087177 468076780 910452346 290329065 483000586 698920219 824542164 183899126 870066386 326894826 773793093 836281133 916733565 983433434 996353596 62753289 916086160 399055731 669321290 935646544 952337359 390768516 667782254 987746736 989191852 994425415 996564198 126404190 490399510 784359912 880789091 34243934 815127710 804121061 997074964 623183014 908166670 571576765 917544115 461959598 929460619 963591939 969323242 966586082 994345386 983372189 993823264 960920521 966607211 520278294 703057197 598048890 740861213 441346089 976439319 95119828 127547687 757609037 901077030 326665213 970859285 421064873 722643481 664077338 938753075 930632795 979515803 401326890 675691980 270569444 285105540 294031826 460335251 457025877 585401394 412218261 444273457 599291651 689648686 930165432 965572000 796638452 854583803 133738461 260536684 69646714 966412681 579432062 998106208 395369008 480040275 633036091 723955362 791814883 832383757 83633185 318782767 428270128 583542129 325945825 563105329 226029245 644910414 612346526 915415242 838500136 944172629 85420626 106180794 901062451 935770151 228786957 400501940 581339215 606957494 882873528 959433941 189179833 759159090 726361264 946316457 791370385 841038497 363606817 393390726 582592593 700321529 670234087 886475029 307539829 404797756 89172836 764098077 809586242 811186545 355975971 700471979 709753035 729579611 260732416 822480983 753116405 821896171 342103738 532868471 63907904 737848822 382166496 680721277 211245223 305075586 27335140 899477902 188201690 214101707 416231416 814908859 99116859 247791683 807597429 905299862 970544445 977810629 438808557 724091455 493915031 590820358 41040850 43004685 935153376 984508666 544454201 900014828 1755473 582226880 309179815 342321885 225724878 716928571 198927473 588510199 862921155 901609548 705968209 887247517 50047460 948972639 373622069 789319659 895408212 979006001 331013636 994486700 353769075 528405140 713632342 754531497 794832144 971300423 370918554 708788804 924001647 981224586 649965523 818670684 587631873 933539489 990955854 992576198 836572171 848549877 629417021 737298062 693978828 832724645 562955289 663855417 950201672 985688385 284609902 513754502 768164774 952119659 510952283 652118430 838847805 990353589 360687883 961046788 547100514 758900027 330252777 731995621 548236077 733820772 550736829 676755591 584764338 876715795 871067299 874826986 772094192 866003649 119791501 165585922 477616831 983639946 317711301 949946891 5885614 179219499 88546912 240691217 676623591 931131227 281772128 409611229 794793887 996382979 535119572 603222316 86260670 372062340 944114911 952310049 201114904 273465380 733364971 781874755 102114545 602644437 578629640 685493042 581488968 665888099 928204902 995926232 408580387 768580048 729413266 746439969 871503328 944263118 272977493 514508454 180624562 878458932 29185867 386247603 992723688 998517234 534954108 556495255 64336667 350075437 770096681 918362654 905792125 967016366 835520332 886152311 567604265 615320503 344786418 550130692 13988476 347675819 847962862 899159185 601012380 658829293 753188944 829014207 795187477 889362231 390420855 884794729 937810594 946914995 886655713 922296818 231301474 747920328 212394788 405586428 726761909 759726968 314401916 920343637 312502034 683532494 455962422 827385935 186015202 397389071 502736801 910450696 996244890 999414089 628735786 669934000 456004339 835412500 835071503 978517828 488326029 630955482 791082879 820934563 227677491 697210441 671144558 996551402 1830182 755282308 705454494 877363540 401719925 953325893 772119361 900846561 860121902 909619498 823042124 848754416 629676273 763246368 250352935 388732550 433659877 845686756 926643882 990416360 630916427 872146442 415468160 965019056 824349812 991417311 723961737 847318031 43113253 546935325 448101677 558759580 53555679 737843353 788231171 797418927 577295903 603754235 569812240 841291832 730604284 750480187 866932859 946059503 51658437 716883348 729400197 806657561 631295904 680202753 332806689 618698629 710808819 927103237 587384864 750008543 542948307 671415855 869258627 881866079 25021483 836586709 377069710 983200739 45107361 509222937 611769166 857405136 417901860 533759365 869539276 892641177 171645565 800430224 472986334 721905945 270702870 991557346 609476921 880013673 643808770 795466350 168088180 744327174 778100041 789211023 592164395 866184208 798365117 932789149 452963398 941673520 587741060 791759608 943779006 954966569 578254829 786946559 469854100 942111251 176374667 465720941 580994328 695626996 25835056 784662116 829224502 934893091 305152921 912452805 525272386 652138232 276808963 868969963 952365956 965973858 471962995 985260455 607923906 845851531 805126504 860495506 747563868 796575636 745054317 924924353 341142374 812878940 670457224 717420732 295693633 495407551 395123713 917182591 127465147 684741590 381944886 554324295 261682000 721659339 314502186 395903044 820630361 975358116 431481374 564318385 631547660 704895600 23496919 277391033 804080188 806444547 840768632 966219618 107804319 250236610 590499400 731355339 258638704 259206006 658180903 762034270 791646912 959900291 726382164 733732591 112574838 383349136 587818817 845768388 377647208 651127341 358536976 691317228 383302162 616737183 372726484 426120219 113791518 790336097 629286744 915424379 222040092 927130874 496371857 936831959 815953511 996819875 504750331 874407833 608945657 638285549 759808387 928993248 225067420 268183362 606262763 808946833 961876961 986850766 467290682 642023029 881610979 919372722 393351910 705224471 908972100 999021336 930770342 956121665 942639788 976720084 316158068 787733914 129280913 543430974 880898716 900352401 901990179 990614633 125410572 375806467 10816376 752940985 852412356 905065123 326846116 867002936 343775481 808180672 310978671 900009600 612949713 826952144 9714095 785045885 299340732 883226008 284023822 621254229 666540226 969057428 474095969 875262605 880058716 894211556 30696999 198206249 622097643 815864563 544285207 875959095 608998346 999221626 627547489 948276523 530417280 728344791 284454976 900418722 44031270 740800991 256185299 921108594 534574704 672141534 956269529 989381378 636520608 833549049 688235646 730914684 288236583 432200026 544376383 844885789 541308354 757766440 319950142 714692839 389467417 577312954 46866428 547070451 612598496 942627382 115001812 362385991 772524060 859958725 304531403 524862107 144752506 570146513 323896415 592251691 618682101 619531936 830661274 886298400 913647573 948183410 726855618 880379441 499696623 900355328 142809152 292391881 289379171 589307351 590711664 952232467 662439212 977284984 869271523 918573962 65855878 532318554 52389639 993835836 233357167 461000996 247416845 847033242 116051246 545084258 443224573 565443263 879088729 992961550 956670413 971998714 307031914 677115182 149601331 171201882 205393564 321787975 298408995 837483247 936487296 952628678 980247266 984540600 642148061 773844724 291264858 542569267 72677110 392509070 869579881 930048087 166391447 316677606 440023344 956962562 732968783 755913830 307531341 315329283 327427457 889694312 362480091 561520976 236434253 903673973 116144437 391741339 419693735 505773772 791143371 967610968 986177182 995891736 119298570 182176470 409861326 498706429 823008404 914366766 855575664 947825338 980426140 993602399 385201835 851201290 140967130 927542002 55731570 281680358 519223933 535030860 284991458 477511090 848300129 934829610 985964764 990457083 795683011 951777953 12078437 522160913 934636330 988427265 328086999 851826147 898440083 963460358 792169178 943496012 319961535 469585064 821983556 965224374 408585957 962960966 795130317 810711542 277521717 341880128 936741723 950199795 229819422 626523967 999091079 999195799 605316042 698031762 481061136 751292496 826279832 922872810 490809535 541094669 28594510 891984625 956778943 968484675 826044552 906600188 41736841 960647765 674440131 775031881 768452299 859317872 23989017 150963798 733792709 863332879 344430592 405243014 716766784 796539425 48235920 190902983 616740100 959786381 572577619 844603746 813207492 820593691 102344423 568259405 603332223 704521476 760694822 832953893 89205917 499149999 752094539 998673396 351821595 766810145 635595496 778472606 259887699 289810207 840696423 942695988 501722934 539245745 872803427 879751007 754731499 990763317 208969429 292474913 813395081 926562695 470261111 498851779 960887311 997632120 604228544 903742877 862599840 920269636 114112452 346908542 349702719 547861234 861203037 985446798 120812918 829884733 273135319 481385712 336064225 555240775 928377575 945762930 32617135 619241021 578066286 819063309 161996337 539978166 18130728 420676724 605767751 624815755 456105866 466328643 159614090 260659320 454264819 759597427 130649339 736603946 681463671 773043943 237521206 856736293 690755280 745676219 973173325 996244738 626075429 904992968 947413676 982478853 196208640 438519644 520191006 656967244 745288301 774514135 790628098 882770929 256198726 851351391 123669200 205795940 818526833 888472835 433548754 796907238 681562954 742912770 955331111 978404140 871779213 898807371 52353870 189174361 810591321 916228066 178688276 264994089 223158883 658211238 647434704 696906671 538430362 628910463 16967088 400160438 410530062 522714419 717352455 899795228 28379111 797167651 636822861 700514147 507282823 688461956 4753195 991493879 833476766 840557844 910504832 945495520 429301766 512418639 448329688 448345363 996126593 999840630 18536221 411752865 140983144 621900544 888642291 909634439 138197706 587523206 928957208 961314665 900648353 934698655 961737949 995216128 432503838 657327337 1302491 189615153 870087157 873379875 815392540 864627887 362999662 923449020 698354746 745866095 903216995 915552908 987775493 998887469 363971428 987756148 999380516 999447986 407358210 456553921 608782590 685834331 599428905 867862756 923116903 942074886 46313098 624713271 114945766 488958653 168957814 851030021 907478531 943842760 932107046 977535914 272479409 764717479 978899670 992954286 343476421 460698807 915637214 961625867 748479279 879888658 742589588 991249224 364461347 525362742 84892249 870689171 458037083 856655365 335051656 942500519 138519717 836823428 729142004 776378241 29498531 948143311 795360500 828162420 141387678 597617110 376310648 820152420 550986549 673989131 833361950 835707442 801722585 921178021 570091982 798239760 614035947 964527760 845832482 884054405 758309710 769040914 266194390 353288970 699127014 847941506 779133241 898926406 772737290 946246755 649816955 683068701 130227834 619588912 760863073 772011022 570794832 704512852 427723626 645631025 330892629 820813315 137180371 655649828 660805544 942585346 427111641 663339293 967889944 969535352 457114438 950967713 90429363 129251555 36297450 764795992 904192878 979882085 872968552 928437614 797533424 828373245 808510698 851692627 94902931 352637091 650434027 857958149 802945301 954756447 605988240 743400709 533268246 604646555 84448881 883350457 575363361 714388372 213853742 396637289 77689703 645679769 154408954 318426576 175192148 910370744 825307316 927661755 264779863 460241804 970277097 989127045 417778982 767455372 433907235 879151103 743988541 898732436 335607819 425097050 899625705 993955195 425358552 536951300 477993501 543174356 315311060 574251495 269742835 613795936 966921500 986740282 231948010 955984379 289466429 857771477 361723538 563703264 644106847 730318331 921631425 965236289 989168383 996020423 406855602 921469434 306142451 610332514 34513953 456984552 834851349 836074368 848291903 893301328 771406873 977462712 329483230 675792016 310930045 585218093 214448393 565605971 375086221 832446319 77272450 556241236 778826428 933738060 387977131 725283287 10989314 331453845 256790416 349637892 127753950 595233316 202756647 411933557 937185750 965162904 237333210 780957850 893052085 936607975 64427927 920416330 784898761 857609429 258541959 554348314 9707119 614224553 398097791 982550309 518876607 546778474 91728270 193510655 570108926 625068218 480046197 784158561 209906336 861087336 623798722 767391815 166007606 618133769 792554189 820368293 961129947 965400754 164407238 808204659 484747383 993895427 490899561 585252463 149682916 291803063 678361623 945842812 139035166 491658065 32422711 732998448 627231699 952475218 117529029 150022823 410454025 807411475 176470734 386008356 245676199 796962355 120296212 495026065 568025293 996881987 184123304 358613034 234758594 329944934 214148042 299232609 967003966 977031177 96694133 611133867 191023779 419319866 383004432 898527465 796295724 966337403 302989392 367116796 662711606 786468741 766970820 835272003 596276549 872125331 949728796 997769097 995222166 996437795 755513813 903471273 170243031 527190722 722866375 771317132 381045092 923044450 284514749 775996030 849464833 969068007 123686460 691528879 832074497 835139715 497026343 677211659 138938725 286883577 439436747 983787591 967439663 971416631 263961689 825881911 327192094 997553750 55133488 887811769 623349225 736272541 327077598 410743655 257391902 599516650 79092150 416976743 938147325 989471961 139068072 906751552 804295098 959304577 736758449 892668238 268719584 313656988 143947478 575513874 349060627 989148388 984055610 995984249 711655009 864028585 539953751 946981575 217439571 472589604 390063717 408119645 683327862 715160444 610411911 949144627 634890430 897363448 21225569 204072573 264438581 611020655 549914650 645240686 348901857 921962426 470737547 760387400 449741197 588766393 316158746 517952847 637562152 857970131 190300485 324072634 822059433 975461330 344286159 421914361 683643456 751329132 351136170 629041315 450191038 929169690 408460463 905918032 706730032 734582516 497575667 588114358 530041490 886460211 402433619 511759238 150000787 830157729 462636278 464932911 222474864 898783996 124321971 137119182 745091083 957238176 226476487 443825318 818113833 899869706 942828602 971069607 354004175 680643688 309024601 507854460 271004699 345123131 563392831 871598219 12736188 662402768 268079358 916417188 622945596 624412155 94196882 172429673 143890394 993916236 851210164 877377352 519514349 924293578 970046106 997814944 430993638 701946219 664751838 977362882 571221099 843910027 192434131 731245300 655907566 771082363 918567650 942634339 179396953 306983906 98822253 337223002 518581378 553556392 699819435 921042958 35606533 269129698 777862973 865789018 603155873 910603926 145316283 365353917 845404778 870038602 417793864 707707571 523066770 962611459 17985275 53600068 276211937 900505117 853848595 928027172 44109883 957777556 914743628 958364391 852024464 866353939 337942002 677069141 836864327 841163183 2432130 386518212 815645646 928675728 191099736 871701401 944236078 972665785 5651676 553982888 888302494 889776905 97151164 570086142 2748322 67581617 371663626 429358229 494419966 497018359 228113505 880788796 93432997 747298379 87695739 513647620 91122750 107662602 970217693 981343809 895526011 991299740 516129362 616084847 86849801 148533908 679624710 713277167 486242932 644297309 287458496 954267315 60552380 274610768 516760094 709241449 906110121 911271729 850234913 938961401 847933783 994987248 944993725 992847933 388974127 810279762 189500114 832341489 388648947 987313223 828268239 878788942 589253485 797606691 798844734 861594781 949153110 980651655 78175526 658992236 426232177 884836039 8867166 809137217 776291060 903718941 817121514 911933286 245186137 362259794 868870296 965244438 216213816 251889351 677388982 885254124 704239955 924265369 982838720 998294862 130179721 146765690 982571679 984912162 6683948 22581588 774885568 918048541 602061338 813766829 340145301 736960186 168305324 335542988 637101170 702364874 340748196 450467054 647576241 782923132 715302270 872729551 239714645 734938291 353229350 482940264 328001643 888317794 943784445 992835311 338434027 646733054 245502145 816425894 796554379 836021562 949731964 962891226 682320163 927513896 91608375 976964004 491567499 564244848 650268262 725614893 742176915 810803290 282300935 552603192 347723781 820101938 183464312 896088026 778390097 967066111 256912107 978495939 372186066 891103186 879419111 942628267 768466183 817173873 812287861 956385512 332332521 538506180 362519599 371735727 123242799 839808186 894028745 992893469 441175525 887433560 72123528 895391002 498181813 570500336 107975264 455600743 529372105 833145862 892108984 984157169 828530774 898730745 50456063 106214965 544066942 867572901 671209385 878816753 993827452 997296024 146425766 767725213 612587125 932531725 390962365 955283070 902740066 906613744 548869640 877513279 294283226 990954479 842421154 899374937 514950718 852321017 454623498 532682168 380871164 844138635 479819663 523756792 707531721 822693633 695201661 875032624 968528249 981899201 762040432 820194023 403341821 558803214 277995803 963856542 56288784 851479020 785264966 948929376 40423094 835053151 594553170 853013033 194578605 624084715 125259352 964294299 211481082 368258029 822191920 871336774 746388464 849264657 87762086 474176526 156749189 420105342 519330529 718150522 562471379 963953470 941478373 994854126 152916325 969049430 942444667 978760706 924543097 944080791 729700014 732937193 31897823 147141072 466114668 996708569 83929902 962162718 662902811 850270435 196788771 569913377 426226980 915546134 428535840 519810284 269173689 418672438 917515369 975097371 244435295 455208788 143389712 432508028 419621708 840972386 359745125 490560546 540648977 700161317 49688162 873643548 149818417 921152438 207732419 208762243 215435165 529672052 940497193 963843760 855671364 901140472 363357871 555914402 280044196 695613168 67878504 511069053 374496976 475071424 884509394 888148680 750663434 977295051 337274642 681765112 361288093 873186190 205702108 685518574 475987333 968334398 891167370 942719309 379841963 671618587 794819484 947771671 673975334 943560637 270422127 343711058 96273259 975196602 346519528 770361034 375021433 594750890 150352334 868037358 308023641 474571174 231080508 678657332 594056088 657665494 650943595 868050668 740074134 975884306 524117093 589992659 189980694 714347236 776732393 948584445 785668446 847752821 455398287 960972840 601499157 939719407 329298462 757730198 667198160 837491073 578123017 970487109 666398951 797721115 554041164 891275184 470926092 932535783 300412115 947207535 407851546 730596913 52647171 115950787 697879913 783868291 974460026 994895993 928778256 968250366 34918499 371428262 999989858 999991935 171693389 947457667 261045035 471630876 810901516 820825798 351539004 374811629 795979897 933570101 513667840 690604706 387444339 802811003 295996466 487978021 245279038 443755015 666972060 854870275 752535248 879628907 22999805 88528735 219298156 815289234 981372220 987526592 398659702 518354911 660796983 802671391 515940081 935469730 851007394 919769344 871364157 989633293 658062434 864110835 806548708 852138944 957834342 980471593 570433015 826218811 397021828 643151814 100850075 204692957 268107846 303199785 506440158 519761239 657062358 919644198 421003390 847590321 514841867 930192502 740340854 895993612 676161182 722445800 143929906 182527224 550747144 561490372 521516382 715669219 370571911 590875776 514135900 788500193 856894336 936528646 447853445 525331547 445431494 573474223 662568930 995140135 660655129 926467192 458660731 976631073 192476772 504113972 272180019 294823137 534239631 704096686 838603201 984425279 580602793 691152823 881994381 964436636 381393263 579478800 421232000 922580297 903951092 977784520 759640830 902290681 610936701 799785069 625677469 857674427 567326499 968386091 621229096 655694513 558298077 660668519 907315374 942811522 52632301 179298584 294245580 543668229 248309554 314368538 488555921 955600117 380816198 725479171 814547611 843337676 306007427 824709386 671480247 970362853 271326524 867101535 221402943 852842343 311081031 911835583 487666792 573958370 189547467 577166868 902486307 942251435 377496946 596068242 788412945 960449848 265969802 675853667 190343422 285051141 371719469 971978850 596229887 725668691 372025777 818334039 331371608 865727711 970982780 994263368 834676608 889163510 811964616 932916539 917165957 993012749 330188006 969262895 360634566 420686048 565467025 770927477 792000813 923494474 613331895 842992084 141599047 239987288 863731990 966012613 42307459 918347501 542115045 823947568 280204064 824491314 600620575 697004701 233819357 505135198 837407513 946242138 225438007 412316303 295087403 336919854 397898430 937767550 495002289 897783257 725322310 925671914 989721925 999560630 89150914 207458887 954376251 994343763 132069396 906009764 192413739 823906858 888130292 988177216 525686575 655372692 820913499 877443530 648422758 819315046 748043609 889257680 863976898 931989294 58979031 981244169 473669482 969397664 712524505 784344321 208080711 667940842 461698153 519233725 952933688 986200172 464173798 739745252 680449727 960457763 565452122 890898246 691386279 944642411 498064893 786977428 160732832 540791896 735866020 905788834 669495765 977726887 610462693 954162839 949602676 979948425 934741714 970148073 34338452 103837793 241609472 379613878 213149944 481751970 941371874 964951744 800736494 997611886 204081834 444082963 242424424 825027268 725201892 996449200 300415541 813792685 640719039 845552162 996959600 997752535 577685839 746496038 518630871 548910055 694768706 990990784 758208858 817566317 813250869 957315857 602892856 903595933 270042116 456167548 143023510 209186883 310916842 841502480 613824887 802545152 944816947 959892602 766274306 984909266 203883104 257976030 867029468 969828046 992003465 992592871 268448295 374184340 169791351 414733289 147600247 339577488 462205406 513946130 330691952 879376503 89620957 933043156 407517497 570545804 360592254 967494092 325185682 416123408 221012604 560840850 136176856 810104175 796012039 866853391 336352796 628547349 436601339 472408953 363823994 904214228 691699320 882671206 420393527 542243136 100387427 428419124 13151064 180957389 992077199 992336472 105484943 231294133 262923843 454190089 750141471 864459330 573794990 629879626 357367433 419226658 2868771 425008718 414925458 721882485 272638290 900556579 350110315 849449737 681586120 780719267 467224529 660722069 139425749 384641973 196615253 785639548 488230293 765300607 256713216 331376776 133542700 257933011 4009148 265193355 891316453 941954771 471395019 647303640 493091034 513940769 790048293 821310124 425152080 476202008 25998764 63776866 657288670 739998230 38977003 406617100 910352304 970370469 792232069 833652714 485742477 856057665 605679615 753197449 392124884 527584841 420965411 630778230 648432604 936530003 898311161 901992598 207326265 831147828 752504348 992794287 156446365 790473265 558564145 976985980 323229747 412634329 779732520 846474714 906613793 924949458 345628428 681156481 237877844 359660031 952443581 958137648 55746587 532420219 381777403 915943850 341967909 743227573 784487095 906183325 937368614 953880832 65391864 460314783 769144729 843930224 667905277 678103779 425213258 841441034 347484096 586666801 542656492 772289596 74379559 199868351 643164583 674920865 835773874 943945249 549110978 962422110 423092248 774479784 680646177 695635901 860003924 919550942 854829478 889365920 779564981 872242230 113180450 738035026 283641363 315951621 705266916 866817070 392442977 471728244 313176853 616070427 517759752 801491732 143655940 479348622 161012368 825766442 738685285 872376068 923816325 948989351 841260010 900325615 467742837 733396998 171744699 291726944 678664566 839003861 743693391 764418067 579302697 624021531 721195587 841006777 42366791 624882184 164409696 249181077 861745422 941097693 362044003 953548421 426442285 818502845 841448198 925115262 121671949 921542773 898806972 980031596 2322944 551439378 201855058 415150307 259371334 383360217 963579909 973381306 576075107 747007237 161188747 167559715 424922316 834003788 350189638 764488989 980863193 984433093 502076414 672244212 749809841 998201529 572989115 744630237 423104748 647017183 636826497 992440605 427004557 799321875 703338309 809882881 778498420 979786058 317209510 337682859 724058461 872487858 780748662 927819304 123137917 471845291 571631742 749256281 66854058 954908188 539231476 792517317 744282069 969716204 680172620 955313672 366067213 961930071 793940512 876455314 281343591 660363385 971759733 984944532 614545465 660165962 592616272 768992969 681929575 813904282 52071438 105777703 232119201 900035118 261183579 306682228 104752694 939307390 326741520 392069739 607139979 793439896 44325947 886127212 714366608 909958186 651838950 838247389 595578680 789530731 760088165 883146294 373711801 618046428 794155984 901867455 656216237 757530282 318830484 527002952 997442993 999869826 156835858 169240272 931949541 959055022 729796187 876456325 922876010 985358198 18176469 104417146 405556121 513182965 375093866 808112846 21242 570156993 779871601 982310295 509373716 946728695 329888639 951472142 749618443 937972204 305870905 434579309 651281262 804926113 375380496 397479890 658297029 662382945 573917453 679057584 559928171 694921941 292817945 856992147 532623130 893286629 782754873 810589877 224567966 346744239 643099577 929236287 512360050 958657189 951959741 954822019 410636917 745185962 643453904 814502237 311153586 567813627 548328719 918256336 525358115 809992144 469853051 598148608 29101097 606323017 268061279 641277584 138969619 680475079 594063182 812345716 945379991 985251277 309761168 391966304 575162528 857571160 163853025 523098765 760747393 990438997 588158562 642729302 386953690 542376894 738935217 961031680 832578359 917572655 11691078 924470942 349712297 409080662 295695337 901561636 168620099 320823269 182230355 476630228 696468472 778184518 986812546 987050347 742244246 804265591 276863133 558458823 137420781 760752886 817062493 998416283 538882842 902951662 399570415 649595444 830093607 900339069 769575103 897126828 144022568 522527386 987436684 992763715 756682643 825519953 943328700 991474660 561896261 667803536 734706474 750658456 453035758 606154842 726156654 860893208 969660407 998068949 74173692 809526559 461402828 523944712 786781416 953084327 192689626 702026270 364429113 990101473 913447683 988430009 154600836 559250422 324017522 883707561 265987478 845533272 295842583 900418021 9268277 229655656 593813526 899310549 708805391 936138889 22920273 666203232 117245228 688594290 590673285 672770089 919082470 938540138 44948361 984169037 556088562 749010477 358248316 419640228 782153367 941773237 846151206 988328234 747715265 930714978 331894012 884699170 172409992 733085045 711873875 795166226 254976044 837989040 777365092 954101700 399760657 424641678 634052432 765637845 291266827 383408541 663874100 684948717 547082488 999091710 919754810 933355038 539614513 592772021 205733062 428222011 959733521 970414403 338372128 707913671 735154436 982677224 625445787 864220016 647858186 693659106 372956148 623936839 141884645 909710042 202184896 797942555 251143969 719085631 504969910 909539302 73790681 903728981 122604185 527254144 719304410 733645118 581197015 641069093 285391413 635400445 999630067 999633786 23082133 532525438 272325278 436751489 304465492 860085369 530209867 871935963 485798135 940978537 12135010 796863755 304365557 370163042 71523583 683776806 126333997 216109318 533016297 711980675 20510788 345779244 532583813 948554166 244539889 883365732 887096311 918381689 668630934 938229499 464176850 530525598 103520339 638253481 121477476 559816882 199155395 612999528 17583169 911435186 826525677 948203330 64457764 771538720 938614829 985333386 842007855 925562213 621777842 887959633 71179783 615055234 823283424 908474720 788334554 981949021 128374032 970176880 2177075 837178426 363104503 869715519 196936901 659311565 923728137 986026777 135408476 600095205 164500091 894878548 617524109 674311094 651541919 670430410 53510221 873447129 736977898 848895297 444681461 495196616 420899030 483992612 199589241 256703391 36137819 895783873 562509753 927801201 856008651 988071626 979371888 982041242 849526046 986916488 838135669 902208972 995119258 998351128 506378450 747361496 580103092 661648642 318183641 917654066 823116925 860531444 824369416 905887305 20936084 328212685 150118101 656418276 417333024 426625223 203899042 296942140 10284406 50397860 330647438 517479705 259106476 681028291 414774839 896633574 202104841 382375450 110769265 175574671 897539691 960122627 283162194 622422410 400986112 405139380 947975712 999388472 799360479 829795400 2123787 491567514 638317401 828386444 605795872 626215447 845873332 852597041 349915575 416289690 925151266 988255722 871817822 908096537 712080918 876307490 769376445 874782808 605839773 779156790 927567572 930409606 365732743 805976111 942476206 943878433 217094114 931195147 536067641 543079408 582376435 955371483 163501421 333382149 797464257 946687860 600709919 674411883 954853707 987919268 631571766 823592601 711378601 859619977 10374692 683128703 783581541 842160379 99518760 346907721 119906995 850554720 240711899 441174805 483070538 508064735 138333351 194051469 576952322 871994086 333540414 353686609 454553504 876631261 358787012 858782697 158953518 256466874 876652643 878115787 622754877 884414161 115618546 914514362 312499278 607441796 480519483 760200498 411025731 536902359 563001642 961726806 698058912 816813014 255815322 880407721 503956946 693530023 946054782 990431173 379637506 587026517 94822967 258307353 614687873 823511470 448881534 690851706 874155328 890134598 436105549 787165968 71902576 192396284 303592636 652926255 826300428 981064825 442754293 983161416 96758574 247289715 878931956 902360116 134033321 634081447 820693597 921035149 744795594 807335749 235930992 649698247 156409978 277911140 391325954 547501963 5422643 375919705 146107427 744793279 991480124 994127699 691296505 946791071 872507992 961407483 825107005 902980091 988963597 998830539 935735239 982455059 496828021 736347975 556821940 613925500 778797917 862178828 311299311 387352867 877822918 893869056 883456114 982620969 988761127 999965783 961415467 973058623 537087175 629046085 949771750 984132370 991176761 994681076 491765682 733836310 464257843 535623088 193219833 940869394 459578930 781023776 624305491 733213575 71188661 779468034 279356254 350002413 621998055 687435546 114037176 533378695 588527044 901311550 368081346 648950546 232483250 372904131 639635034 685097678 78355344 887332775 666628174 976697399 890126604 934571001 230225106 457659246 909573333 918970872 729506606 790176828 872287782 974181479 103502631 445603338 793963868 802180390 636292242 817268553 922821691 985727345 344336379 482924651 278563537 728586002 273724306 511860629 887363171 928732109 631122438 745004549 128757246 680758754 908701631 921011649 232307295 834450349 671999355 970223226 677836195 949487332 783990258 920399170 398049475 904200777 721801834 880019345 375656244 523480400 631022647 970035081 13006065 792343334 612885109 649808352 38088798 292121670 545670972 862098890 825267315 868747825 125269476 381975220 382836353 732425215 881026060 952295500 512874946 991523591 345734742 667550451 593568919 958658068 456011070 550976835 207025226 827901318 96955492 230007986 200838308 541748088 211480901 394666955 437635338 834144317 70202302 627315283 770827031 891542543 187788270 382052413 273254502 593296000 536192784 671341304 351548161 358685963 864690562 946226652 482447531 521783285 963651213 983545617 578601184 741961666 622486439 826515984 259376466 307423642 191854240 932766301 479686004 923416255 849706877 952126518 621207990 723849501 824047061 977337328 420685365 743274173 865375857 875538100 514938878 609436152 178426455 218749576 143206271 429669309 719422263 784056036 737562320 867228114 584446353 953575332 549701227 876496262 552264053 925913325 630588590 781068903 214151241 493494987 17237832 485133320 134538802 906183731 471289490 688239143 498669140 585316163 454794797 879729739 11572683 643061520 653189208 926211067 392724226 785992775 411537030 699166794 715657871 944735732 335028378 813471952 673592288 942186169 414311142 515544518 773524908 797651682 577492638 663115661 592377048 700567052 688132309 749514201 412469192 672466992 144165548 421692768 901095445 973815626 675235491 805711505 290227607 496521511 380492955 920598547 991382494 993764707 988472731 998948559 492910308 674311612 535212688 558940915 130020682 301021722 844009385 887773738 589086294 679047972 817848254 895246000 794491071 811834136 523432307 790844052 976143756 987221323 494233097 898986144 854094372 876590739 323905831 875481133 506616006 690678160 334929308 337928532 961406545 984982393 707596099 886650683 146056061 853805136 615841022 831743322 348125402 758834765 747429471 966958317 762466645 984802183 377624337 980579897 270143252 539022041 869736994 993986860 386224263 483659609 664442080 737539547 694002733 996139009 915042174 920334486 373845784 769742396 51856762 340521126 339706255 388360044 413689913 568010850 735234790 835897939 692780494 745505423 174611416 853040801 865949001 996070778 971262051 983321389 395145697 893858982 747748307 829872983 937212515 978740444 393018850 706231336 213748111 502717383 918334069 926521611 476434651 943738464 861840816 955069329 914729038 946728529 503446515 808090814 245277513 796470928 457708739 577758100 766105492 945991332 120710013 818872063 718618391 944220150 243012167 255958343 96643688 884848724 175762772 325571884 286625441 353635996 516580886 777840228 112375765 527071235 965123479 991782022 753656715 915610507 918546195 982637258 748749759 826092424 983341909 996818758 873399817 996603827 244025647 409582482 794459611 887063256 651461198 959331952 264872942 445332195 168668887 873519951 44618302 551710669 67358884 596600670 187446520 924844366 701539550 938649331 885140201 909245907 162421865 990733891 165779396 355985248 694315271 737615555 905916061 977926745 523930252 838043395 621162701 727805575 210342412 481976393 984128016 985105054 45069108 679188631 747317947 837997797 623989496 712786701 884715300 973393738 781277029 841062715 67365526 701369069 118195493 350087956 988951487 998870036 449702171 473028363 611963896 999158211 753815299 938512795 582328469 599029713 52681256 592261464 428992926 711219945 370199658 995783500 970638686 987222349 413729853 645942930 383937545 528972495 582847002 948171899 86049083 357466384 775459699 831944956 641922857 797356589 700719339 736177169 391368692 612619827 168725444 786059308 977679973 978692375 643888234 756453330 605304510 924732855 77985967 172973107 381724962 698505349 401098695 935478348 24716262 436347440 437079166 661605041 449526344 562864862 808792585 977721614 848422497 914641613 895679692 903674641 95424522 699489499 85912029 926209142 830147891 860323696 999767714 999892977 559250932 700033023 696755989 807202203 655426806 798916663 191404665 779873792 819923998 863516625 84018844 446557231 399181879 865264658 466646223 475287483 891392461 898845333 712026578 944378055 876550159 987333885 346797202 530972121 605284523 739173680 656648580 741231067 732572518 999149346 459003355 766572925 169317867 706420238 11978324 311410786 122592828 460823452 355803104 389199346 307170267 663976942 241798117 909785299 737037021 779077657 21051318 750297321 50586891 972520824 857323151 994816354 674654360 888815168 259037932 527889150 53191008 439177385 428459395 598653338 235546650 504122605 967838882 975655987 937874037 969710112 387281967 809148404 686597950 855246358 753305659 795238117 413384239 652371267 235962015 531124844 1238929 786313402 319944434 481759353 443610294 679357483 429780574 898010448 212349366 839821218 533286855 828466878 579497718 602096714 447056064 741983376 294798018 894037113 483508918 849763138 686656355 963118261 214110715 508294472 331355844 575709523 265785010 867754558 750611926 898117734 785906987 872228818 318989014 692352118 671837586 867849809 709302060 904717887 185981426 682703846 224598726 277477343 485136204 522284220 57491179 193909579 955862589 959291417 488817895 698957524 71019947 607750511 406254283 800132018 748609328 751247669 257907540 361248337 628153325 921079267 598646932 744764297 756417670 803238254 949111290 967685579 787118840 997656506 460245898 510969512 571596160 837661892 916606195 991442284 44650120 740686359 272962571 473366438 44906101 126259866 722500259 949939619 831066556 983321797 712416731 875769040 227275420 777063413 982197256 984025627 309755695 763504503 198466678 495599605 749509389 757304942 642720663 865371592 163453045 192068840 23586418 511160363 100397965 745583068 578345246 824935348 987082994 995494886 319348078 872793422 53771705 524113355 711362185 842882149 552856672 602826243 700855939 996712487 730228374 829737935 232238826 371218806 861334186 965051420 652603011 675464363 739621967 883971616 536409926 975546246 86255850 447929227 348596688 636274106 107119474 126773623 239719968 492702888 685883851 845343465 211556010 647941651 606188046 800536165 165296159 993060910 561948307 692424394 730524403 878149551 189850182 432298494 999115969 999602619 592852956 987356711 129133147 438443566 285881070 808556667 646184016 975463348 903126621 931900763 960443225 965771218 500029523 575917509 338374230 435374198 947953190 957784211 297828613 429747758 637100845 740875670 879126154 940251876 111852155 262786413 920581439 990310684 311915219 625715122 311721885 784380184 197725810 754614162 294603158 663587344 588027463 650071512 551545175 695535656 921881811 952804824 338491501 403773105 130210190 527568840 604770604 646771326 255154984 443374720 761915839 764744380 600236882 970733586 976248013 981409729 477518022 616913991 920298407 983940762 132505707 206087349 642174789 733491491 361113012 797325297 656862578 945771224 501964268 832167666 78130290 392186698 301848431 612745502 812186868 874485246 718779693 763544160 60933562 539400643 691368314 978360965 605915684 972147017 343512166 872536287 178497906 729201353 208339077 294926936 250687115 936218373 766657418 807115874 136540356 777298154 916415117 920820321 655207581 665431522 397789006 726924520 423420219 656744919 379871032 865609994 330432996 569064545 924084314 967856159 47071812 198872714 376130423 769316327 239058525 930420143 421505735 492438622 437849605 506726969 834752434 970863036 716667732 907565526 998633889 999005137 272848004 840277164 178802046 867103100 32354401 921532900 618337877 945098852 673244584 823236057 928015020 955299667 409035454 673513152 828152297 873924618 619899368 634995795 73804567 755160805 105519804 161355228 730529813 750452243 709619198 988529281 954976906 998719227 29303189 820236214 579778483 594934784 542971132 599798632 916055364 990745624 699112714 975998703 566801980 601402521 703811463 763470054 847324584 883293212 316344641 613972352 254148162 652799437 70207773 613874961 666630844 672836222 964325967 978301939 408118902 485955066 863083940 902791693 728637722 891119099 517235897 682385150 418764394 820920245 722003284 772083058 731386299 985284735 744449946 931858828 572801839 607751008 39641027 884877889 253125060 617031506 888955714 993178658 406898431 977428573 967444340 978715260 641889924 829877470 357210408 640804536 887381341 982252372 78912412 558262778 976509020 984013030 758188045 981540214 296564510 656805781 73566078 854196737 863072641 989989693 136617962 705865754 470291132 530055436 576768410 851300457 895522584 939430402 779499323 785522657 975751645 986154347 226753365 519681163 292800386 964999188 732893126 734611956 998822563 998885147 637835625 761932007 403444545 625147037 960505822 995253539 60132368 429517750 576852599 967215856 918946011 947013293 70084457 942452281 574565197 744113741 89438241 246209668 262427894 845500486 469414969 821074505 733989103 777654669 579676168 776639429 398819264 660352244 245647583 359648979 563357855 615468994 304462815 886886388 277903738 754570748 667151329 678747510 169214420 192093987 643249471 689040619 414644185 598106014 821492378 953870805 944876753 971799924 521832815 560715219 995957102 998696919 67870348 641172297 492311123 601539608 29047249 88668668 964593029 976257354 104609255 275904654 917659256 961948396 987170740 990851078 310936400 782039856 731756463 928890674 521861198 682639279 876445583 989399697 96570466 546521683 454828052 862618787 57542629 475980731 351574652 800005356 160239057 290338131 346238377 490570436 747382113 943206953 851550840 994970546 143522864 601982969 162245261 656742507 16795016 401965921 11854769 354194961 263105724 340893163 825450454 900576595 595271211 771171126 876981718 956424526 416663534 972306196 853594615 903409819 842351136 880905867 112881466 485956658 781546126 799172429 978742554 989450919 262102618 453219009 664676338 668053632 538134656 584004132 863705912 941195267 534110755 608654649 717160827 955331710 984875616 991243251 927506452 998599643 321147411 813530840 568144471 933531294 240183037 544721760 227587786 295372475 697542082 781124099 955051914 977225549 260886632 465859824 537450358 772939984 742246960 911696551 451843762 552563480 790725840 991131701 82036504 586977670 799299282 921092333 672918212 998916793 119444838 562958391 814061065 929072488 952805697 955300677 543032483 659971242 77381685 476034666 641567399 955615021 239073146 683632726 476296744 956353240 282066210 703250491 561097919 990614441 125735973 266368779 519512942 951299319 790995334 854252398 213640353 910611284 545706144 903219792 734405382 855657088 715587556 825583342 803966829 846320271 700830998 806194691 7363368 292060257 552693329 768825605 113854229 374122177 651917355 863105335 638129012 655853912 146529538 345680136 583326674 676307330 555914548 641025775 395200787 932015970 88455682 178606247 914963978 933528742 202340193 485240450 57981655 224991511 747927396 846913721 814627373 957769402 680374813 741701074 566844443 783900586 540118583 735183644 663120105 925492609 575504413 694159362 399471860 834727404 645767020 917947041 614676894 728230268 141261256 639506508 147548724 641277683 819485164 879730065 127461715 783644797 775231734 964040733 985490418 987655901 882695420 936395363 251146598 719411638 103336428 121550136 2274700 711625831 190952762 675826583 205035186 817671150 878757134 955173585 899881178 908141492 847278483 856533452 487103696 915778528 550922863 722892888 740575273 923867230 360238654 764352307 384035582 751393340 444043341 490370261 654075890 908681977 308249907 412305338 879105404 975816784 799994840 868354496 766336066 967781123 252635652 992067837 407720075 704845416 828275191 928279838 418034707 850316071 668290736 733320425 55476034 162349824 323417487 750782798 423022536 815756392 404713966 514759417 294896338 608061123 191790549 579965908 695858711 765739398 990550651 998107312 789174810 986513652 188982709 582714321 852336892 875338486 544517768 725917958 724856588 925679224 672800542 893436669 477323580 765756835 5882568 670765338 866943335 938192474 202247497 544172942 697915908 853188914 629057495 703454401 879875619 996169872 660666326 853837721 814582010 850224768 33698099 465441423 299519097 589101398 318298053 350871272 422696002 735785799 970349790 999022222 625278014 685676535 557474754 671405132 97475031 135879871 492642483 805501856 88278594 706524797 422369913 797155662 921773423 954165074 738228291 840553867 955403257 992421585 935638839 971509194 876732569 924658706 546891924 652351458 450686960 783585571 837026411 934271182 403824889 578560343 476086231 839257340 935694147 996867793 40789542 452030646 126050474 589235977 13212851 41591302 786330962 902850995 271184637 765318098 106922722 961867216 704762173 979272096 953239247 994974274 757710555 821645254 728662214 872936784 945475138 961318681 785801154 838436739 241322997 460203747 135864404 949000826 360522061 933855313 754243566 892124278 645705907 859410712 119321601 642338148 19446565 845518404 458930985 927680724 922801278 958893813 845888815 888835084 255215402 477193696 457374332 707959449 208917091 760415941 684957994 990950668 592733908 843238966 525628307 602469431 276463513 984733229 562133984 704085410 303304479 801670613 777446344 931983756 586378676 787065184 619655807 872139533 44460286 627242229 595366785 619252842 349123555 631737263 139050044 591242058 222808032 424420952 500017490 667269076 206803017 757615514 719490332 946613734 522985475 885540609 697168687 872137366 950942470 975851276 388078381 784221953 707549483 854789304 428328189 665754683 204761019 554256879 533599682 591757513 927875540 957104306 865705181 962390789 915282689 965132290 301631653 757266229 827657030 884421568 971577772 980029294 712272984 808156474 152671514 979125768 628601405 659641773 514448382 757760715 394893157 635412105 986018604 989221513 245715609 342761347 437500065 804597247 234089806 428914994 477075133 478620750 61353354 942835281 69492850 839952368 566761939 963266267 148252347 947624770 60062071 570992448 827142009 981697851 395778886 436973821 585264097 870438590 514561380 701566489 594195279 718011996 713438629 721735179 6470842 403652620 132348658 408979630 318369270 756875793 413885852 970221947 679823470 686408804 498499761 850623447 129562330 500678219 326200942 446512355 257527001 694071033 925528217 967014814 163551905 950075692 301158380 352146879 80800403 249108584 380275208 863607431 155464623 823682588 78082810 855474416 782957988 854575817 573092110 656607314 217403225 415869169 265660817 516932281 811199414 917068667 562139878 918803845 241092509 542460714 761327519 793328782 882760790 971865986 962695896 987951402 699848122 805564846 250840167 909120373 220037360 926220621 326059976 442931311 112788336 589007100 56094319 153688210 869112326 915083148 471237945 561883917 621754149 861571230 613388198 668380840 127150687 670455560 523626031 974987514 498201306 635379045 490928459 771141185 564406900 946374703 421108010 706412581 426450306 882508311 336812090 579819319 7726475 830644940 82344231 532780657 168581193 538949122 917236220 991381694 135303163 931818810 972958960 999161082 717226764 719591743 882413472 973031621 597680379 881536907 193140855 970688237 144402183 445029389 832968759 989615227 681088116 899694627 717982954 759632152 841295069 853381834 189217361 603352850 15981438 708708450 366276638 620527860 530258630 811887625 354033113 900090930 672156957 676906665 541436251 554037289 896087768 958200624 82606233 344001252 982507205 995577967 715036857 855507431 471680089 660111761 364877929 566981381 812238161 951710467 670200399 965635456 706737548 752467032 162146041 766868844 538188533 981094981 481219768 995189054 514462365 816003870 634651472 834292595 513644660 857399227 898799901 931369259 762443211 882854018 913536788 985110527 126439217 400805437 669260451 864506371 961844005 988675608 367675810 773247745 948000409 994837332 724269679 823325505 644088957 847081240 81425893 256188850 813417143 928823340 394045825 697195149 295946394 666161353 379161510 452649904 319760994 888880657 654581440 778399293 407552129 776365824 721636014 949380575 305723592 734831777 393636269 510863252 568478083 935231281 573519240 584144105 726728194 852830403 671823603 838107768 913522354 945521345 55268321 293977822 610246110 733580944 37995554 175041217 61806884 711152111 363993580 823404983 631719330 645222260 139565532 991366490 865078183 938062098 657916029 994122155 856789081 925418661 400322152 692168436 45471468 442173512 448994587 673550616 70372233 591455279 757483272 875286909 774781759 803326604 792209503 809268729 10160023 439910228 222473034 435972672 693313089 918562168 704157514 944694526 92548709 228763921 661301336 983501727 53062021 177727622 849662339 863354515 236463014 244573233 780238897 884952548 872025628 950959377 27777408 732637125 950815853 996489120 717588696 806495804 727851283 982512785 333425428 408982529 11118798 189232520 715910731 755522972 890291829 966157931 571779321 872969065 895952875 974392929 360900950 398250564 467702658 647390789 540030566 879397928 746277391 905621983 690534686 779264178 722232741 744340161 834434856 914534228 363199697 813144120 69738929 187564646 778208685 821793484 932930317 998953688 669522643 751470972 140617857 963154716 807561987 816730615 952402980 987355346 915331828 924983571 838266003 881199170 174455579 872294322 569433823 734517876 276886868 964015630 675108656 895073516 668066768 810112217 646586135 745969456 934545419 984024085 446677696 862024573 728029915 765545215 847575256 931970076 640616654 722759221 753525746 929265458 657985547 882827518 314530328 708543345 928958751 942502915 88540514 546188096 680436552 691398336 97523384 949223932 781114135 840225447 550876503 819662209 79380741 411038398 454300169 928647570 767474735 811876580 979009249 982644311 83875404 660750106 998989336 999779733 832808079 872832650 962724222 981969608 983719996 991505250 60771481 947187245 924117449 989729487 690999005 794237620 711591050 994104514 339054754 502448520 905166048 998222202 662349022 961727743 14668573 650647573 88470567 555718786 190460025 657829829 72289717 235975182 288164847 560582181 322255846 673225840 325289107 680991508 794579213 862773572 445014184 594648981 211038946 740863896 611097074 674918931 579192257 794545151 894701306 956725395 625773666 959252166 102715009 833345428 479838761 532045159 692160957 997615701 862750203 872559526 167091805 697951396 324065466 531056471 629780199 650194002 225043587 244677957 494370860 870413217 841330945 949525747 265632569 898986375 333703268 672081266 721424441 990362262 205439930 832778387 911889632 996118188 494785657 575696696 379307111 852657376 403203430 772269632 195484225 797943516 950137873 972306340 581463655 713294863 45782038 831499427 888957857 936219839 685770363 839133391 181324571 988997447 892935921 976170770 297669727 837677445 332524207 903229824 10382807 768447868 549663176 567782784 585811320 634144668 429859170 681682090 16826662 265709660 64157714 597491407 939407109 950701027 684789435 945948116 542607102 615183546 926645338 958440532 791000735 854838869 483877976 994401010 769160543 905891698 560621868 889313341 335131425 581998739 506191558 927830814 210698725 898484626 563316672 742270287 777492109 889709966 108349762 798253964 856193711 955229596 43051832 714720775 292812573 468295203 542831418 638214199 132778415 169721432 976630995 986870680 395918834 703496647 557890991 722066051 756068766 891998418 938865084 941059481 164126420 538575885 616000954 920357229 951739421 991937078 752039188 871014645 437012279 549367112 891423913 896889717 3379555 443280483 917045003 984703757 314839119 363793826 754153547 844259933 77780758 145785116 760472798 901608829 309924975 322229680 543593267 863705386 205578161 698585838 221563892 603539274 601043228 804698710 87250721 343009844 983169407 990354901 122256945 599438880 255300713 307194034 411189435 453465560 781349014 855327117 391988416 543676671 433586177 975942952 222778429 425431517 741528082 967339005 745192740 963953532 204126497 779766731 509963680 981644721 918129398 979533195 859708124 994869075 373758902 591512148 139446884 367369913 593223405 686115917 269621395 622822246 853719552 963685680 827855559 851150616 876266751 938846689 770748204 818750276 835501216 994620541 164154025 931263671 476131496 763228000 772142877 842148757 595523550 635583569 141110914 382520828 647196124 698731406 803972586 980133164 371438877 374590275 389822133 538238396 787246655 821273266 819573070 936316008 475589322 806332280 936596766 990965506 592049139 654631039 775681634 805229840 547870573 551056568 993455361 999191431 989448365 994219136 850526025 991808285 247906570 616102444 919989872 937521721 407897207 976553389 118118820 345739033 23898168 471538506 182027998 704100037 518717207 970012390 71643817 677072712 672210793 750215659 487932444 699085617 278406255 409303572 10934890 782386615 779789829 805646805 275350130 948232093 913746751 923367498 101999827 533038903 933362065 936054989 590718081 604656847 442715995 658087792 592490440 987986422 582506242 585681079 346415771 465408395 661706385 890944096 312855615 417938552 390200035 897519507 734462291 739606952 833840209 983045913 649717844 656940132 247049749 314742366 237521483 343677685 173771013 953974038 991343031 999485364 591081258 596761098 577201320 625614413 329500282 743245006 468075846 858575347 70049091 645054410 961476729 974935332 906897121 979642401 548308773 886440294 760042254 928270758 441691858 603108640 456289143 955712155 67739636 438020151 918165368 936976962 7805027 472503667 946144920 997576030 1874056 578456851 391286003 674316495 336196585 401290034 886020452 887780849 22678661 279704109 474595043 609218468 301040985 849521054 268550063 916665207 603039827 873892076 85359272 766523356 707088812 823093617 255569153 414479601 392938117 988952335 215284122 294074942 451879105 758723397 993218712 999569111 979820823 986330480 921857310 934932981 825321923 905842631 135185462 277054327 748254186 900197744 100833324 648451611 65992568 899428589 497717126 689466362 940434836 951026225 574286095 590724065 513895529 547730794 447383839 608150874 407329917 483671322 967859291 994217269 84639661 439681787 514549549 982331662 752904248 881533977 15191586 155806184 6056135 578742774 88589798 878650160 340439306 479010034 885755639 955184634 975681085 997491316 543235085 903213934 304725299 718332823 434527762 768770627 299335623 903594595 670701455 951264894 580776887 681151434 581314813 674506339 28465530 937925627 431214291 900920679 449941154 902458170 807975710 953672840 582802836 820242609 691639548 817876938 949043821 981731526 967935638 968119776 672351717 943172650 156146940 286815805 438251578 718432544 571062817 691740580 504183921 705396469 176563491 459938968 622958647 806393816 561518749 988954063 409403480 749456780 325360641 341335888 275452972 504790808 390138305 960256422 110294476 395203125 676527895 680820646 838186501 841308358 849276694 955980310 479182937 942260491 547774999 912125936 162444393 940457228 310574605 408302893 750095817 884423138 591807556 947189619 371898793 534806437 737368640 960050130 817040249 999902898 433235088 883207161 395893492 429644503 97603533 164821978 287811313 298167709 37128975 264372612 687810048 745880248 859262977 931732439 247698163 886201827 903128543 905527795 863031330 901284810 324838029 439275685 811148310 964360140 269953708 480420247 987009371 987599156 324773725 714331975 604667668 749053979 495000090 891229828 513834086 547596227 215622237 377171834 237105334 739792388 4849433 685353893 441610557 673196480 635975824 830959521 776377727 931278838 859258954 920452338 764152667 892250030 5896699 271264537 45378681 975068582 813733749 875200997 802346665 836142490 695993890 864135801 924310112 931022479 307823189 691806196 141438151 494082366 273304663 725548337 380937989 639310016 451060024 920202423 182548410 834508334 873956555 900933887 484628994 796190413 724324683 950991336 214006988 699091480 138250669 569492783 618708173 693777978 574026605 942030838 979648658 998453414 243324195 626505690 135267439 786422748 283493069 576104510 965640497 983119066 63161526 151149665 66322676 259059680 191308088 455847204 603927902 891611851 308999406 842092966 909024301 910532366 562549303 887479065 732145237 842594504 658665622 768720156 287163172 390826208 791064393 812895699 916238028 952154065 899501973 908021919 124352986 723013040 608289242 697059217 76168030 729791905 577154410 642571617 480956860 485592354 77484955 763904864 978360771 989793515 449412492 756920863 82051245 504483714 616313779 623960317 651441305 974785116 175475942 388461757 294118441 672437743 870630594 926553233 868872688 991090024 54903140 645210639 491141853 541048873 434754367 822463705 848148025 938163602 61974590 932207388 171197997 979620123 161945886 249346735 504290028 660747292 751422209 762352634 6257454 874722859 669595378 847608425 515473874 760058193 87951086 423544892 695048274 753296033 216045508 263879950 262466749 898848079 773918931 890529284 661256379 941750396 189693372 968396045 330117825 800697970 259776551 504124939 748968288 919353211 512190288 735111096 772028607 911658219 501620559 592603094 484641180 787144345 47245102 728805851 68334887 713941173 183259215 484313020 89956469 167786420 698125905 952890474 868166054 966925125 363083566 956560210 288828213 580028022 518561143 819357129 920002601 963670480 639786756 945021432 473528060 674355590 644116147 889928615 441101532 936300389 713749639 715253085 386525709 956486994 612567689 808343494 91109146 225728003 73117222 465640252 691184075 855171783 135253555 514073831 787883165 826965104 166519666 959741428 845060927 965881683 965981631 970872089 937684459 999990916 95698344 243297625 674808929 692811033 438894081 538306865 588583528 627474602 169177178 281704231 941137031 992692098 582215192 688655750 102662717 804447050 556328403 981650374 362894860 569987242 168652904 820805908 135050054 680076419 659666903 897057161 715401053 983090813 62976497 109535025 521551700 557345349 669415958 689553837 405931678 663743156 209973715 970084616 408953893 537967434 613203245 971348011 652421485 889504297 635724978 958635779 412197621 707573922 172986845 327666832 222150285 878508572 417665121 418260862 751417455 914515696 290480071 632125440 320595355 847274934 395485027 775187563 974281519 975818001 457289500 909537288 518019426 996994201 79810384 224431912 362596711 662476468 316758151 406520764 144783932 262352874 31502185 520743791 135389014 564663840 962716048 972468428 754451168 911632567 939775914 982299560 589802827 962734739 826848416 952625741 185314352 956436871 4422960 835632035 162208407 490758811 609179639 739589183 258268495 463185725 416816809 731066985 483938455 930953869 322801817 469395701 848595158 867186371 92526804 787540031 312792931 726127003 481642012 528710139 303161109 326710043 32781759 124048036 862926413 865564212 989317658 993435286 624129193 656997327 841161286 898222096 211440045 888631695 526598484 938428248 127660464 505060140 909516272 978756283 497917187 885888713 214166800 716014889 988091741 990624428 182383240 909463827 217904588 579709533 952656015 962930327 147115061 513454409 237847096 730748972 53661720 734945426 406602473 605105933 379996066 514940741 527242188 773389810 737332575 739084379 671043968 845643567 641353447 801661734 559914556 786184323 845300679 895000595 552351533 608381333 69314164 628791219 252002077 641506796 320023991 703426434 13333903 175878976 543213476 618596872 408226049 552643754 72908865 497292429 278461152 362420883 307311666 696927341 397243352 878188554 243313977 653138549 72732697 556043714 138077278 278386247 362919068 637818696 314500576 782166974 758590991 816876434 144223173 808600929 198979139 560887219 863940162 868467093 34184274 593737889 234201486 917835116 68060448 976292090 721247654 978966668 754711069 968498229 261590109 299400331 100555956 590888621 36134441 833150113 720047827 773472146 495433614 888815588 685750843 800140281 489325646 924819840 89116080 996524535 429275469 777864381 882799517 981270657 564584180 640021867 82372936 259210737 919067069 935900097 149976623 933380415 153292860 507150661 135843876 233441554 9368388 924333005 654874991 999723059 408788195 807144625 350420789 624648274 406239304 832699807 894537756 935865881 868831231 886983181 934572228 946679154 771925409 980889825 290184440 917077303 784327818 950622698 770782843 915586316 531471048 611316905 110899382 948631796 998949860 999279314 426904059 585132338 838905800 991306906 929007089 997708272 753024671 965024405 330575865 755510872 198791869 223941213 893920020 923251549 903485471 959947558 403212144 556283682 431491938 494629897 727672240 972720701 16322478 744127326 822685350 885075023 780849756 918039924 575822440 818837704 630581009 734431236 208504035 348656777 804280592 914387357 533409824 712304694 887929290 925164889 534509729 900678716 27047883 166865242 525579678 927351335 983116178 994097719 43084670 678475851 138128088 545665525 494787117 535893165 610181472 874248688 705096692 925362258 229796950 435796187 331222589 943540876 901852583 902775112 656835605 901954334 356413712 501809756 529351912 629363883 574925505 606077079 581249485 583990576 257280784 802358064 573784823 836846549 18035981 263899324 107734140 186153888 81315009 140110629 971281238 995800711 303219342 862597006 421513750 474583623 122542732 304296987 223496066 744219734 720216465 755170162 524494744 693158303 334209050 695499731 422039715 830163192 862360614 922517934 932425441 965712007 239380729 603351195 76048911 230781801 167364859 669749502 997249507 999066436 919805885 942005820 771656859 862384778 211376448 678246486 993027778 994950874 750678298 839818697 519541804 739764415 613668984 933410360 178855991 316624221 160058801 982854223 257924016 572250478 664271293 901542689 682417746 994509348 379830222 411418820 302835460 461479002 786710941 942608769 722900978 781230630 253287003 313848209 692506480 879303910 371528079 969548335 954938703 993871644 716337478 909046953 876240702 952376681 322515157 718687777 827269938 950120678 702027171 715878656 977247908 977284568 391536032 631765056 394365681 991692619 980856471 984742211 848278614 964094573 133546910 152633287 631251256 882946575 606220138 893835546 779092823 842698284 553564549 709665725 504913993 728397560 915182334 968908762 127096860 235025483 524360847 688864939 443353804 650294863 961437359 970717069 81043308 810343656 468399572 510551393 330184481 636022299 538270009 880637515 846044180 855824277 861439731 911207334 417996235 525423414 112727791 847723672 30980493 479713296 264104524 379159956 649241461 943299790 709388842 778142983 665905150 722808388 170738758 616008097 98392953 962493041 225036021 899748048 184768547 795850171 74465368 635962982 952753238 965433577 232335025 250258896 859478099 917918790 502929013 945559221 532239079 906655000 945140848 970018055 317235635 851561523 634488081 817922419 808909802 930398827 246267229 665959249 839219926 975112126 809513677 892657324 926463406 963673856 546958800 559167137 858052322 910644709 694677639 854153568 138533990 216607975 768480702 986813010 967500008 993092691 728475713 770636907 499540353 725808563 620561685 703384992 701659264 708265518 25502772 67213295 900226991 988854401 702729312 959104161 410801696 989317093 7031647 959907771 268550031 871293540 212317850 642896705 33684893 498967863 598359974 814667458 133931631 419192119 975288132 988832636 216019526 553300981 615584593 872313433 327262602 499569603 899308834 995252529 192457191 302087556 570184914 803785527 172723620 188371401 496452544 566170792 634802610 776005477 45830588 891877178 666502845 670170098 425104496 940063924 11526646 439905441 55219835 927004776 325906418 403333413 936731153 993578426 302493344 694562776 100375109 359721054 167435428 293519066 71227504 931532902 648370269 973867856 528041196 849792601 80705531 716674711 366179950 413131033 137109053 809042371 317453025 813155505 647209050 718601879 585310040 770813358 443969468 990486652 787469489 964773667 797865245 824688438 527518856 838151973 736224590 776292331 604039094 816299360 765604069 883778585 35634842 429829096 131504180 296753755 473322748 655915575 981647834 994072066 562219088 729257416 763301610 976112111 909172815 910385312 649357812 953174847 388443089 539502073 148559103 442123044 665919939 910847233 28804212 298900259 87835563 660993229 511227914 706355991 279834706 930657215 575107119 892619664 808240879 982382951 862514143 883401559 437024331 507153488 392976319 407111467 454159487 908770928 533984554 604671101 313380870 932313338 411934082 847233544 847352271 896309292 142578075 527461909 836563891 979366928 375764357 546580516 224791938 779784011 863966388 890114705 887259542 945841989 32563996 59151850 345681854 787450697 522744254 938053834 727308695 758748549 299255185 984262261 491736773 584031931 385014966 780767631 830825661 952948952 58076468 332921066 901857938 968214537 752509486 902077319 194430447 818643672 39569423 366356814 873573258 920224066 536959363 780522998 239066767 845121086 579558890 939611785 435290764 474335460 516670424 751026563 755937385 792953222 7172500 594780905 511520517 536560126 955575815 969795289 995614122 997512908 470954114 605256314 960812881 982682702 982752410 993260938 686245590 970452817 98281384 628874803 911989583 942056347 184904411 768665633 57445592 631558498 287027552 832812833 912194094 980410708 988411420 997516693 248024102 722174940 886457083 964772997 586829859 984479221 906038750 964453783 89121780 225749874 609563508 845333324 538291743 705914499 232220370 698619972 497257131 661413045 506959472 775565176 628621506 689512639 453121935 679691879 925570271 978600008 197486358 978952022 837373185 939321416 993702135 999791459 453284304 787192120 165450169 436984516 387815160 678377527 78728723 770787640 322355378 556840492 469231318 598915816 829052976 875246222 929442282 969145652 996316591 999546633 953635767 980845458 249942949 646261665 974325751 976886867 296586575 323355605 67695803 204233372 521404041 524853712 3036630 154214078 766911493 814923216 82471878 310864918 307481611 323524890 698437725 764610912 411245035 647257212 960223065 960356750 697163416 774511507 569684701 587365094 366178872 885651950 673621713 890024861 503734809 900831688 586606696 845627801 643679135 988398915 44585697 556614052 141172876 734192757 336484324 346377625 444953188 940961420 408235201 433658979 421551131 909987092 757627888 860536324 595022003 737838171 133871416 564698224 401290981 717889695 933709907 992680591 728460029 838437529 739359106 828045353 688266999 827131245 639584241 994544199 571359540 944032232 528776146 823809917 959778276 982140125 109961920 390301955 865968861 882586971 453147220 821806706 458218865 773291147 503460964 872385524 795235432 901098334 680210789 826347617 476259728 821101987 84497831 950731611 566175896 977515263 380971263 856206133 813558944 837803497 379863345 909895537 322224079 999327174 13892911 91900039 540134680 768352622 536396264 712235681 478269430 725927895 913044550 963741367 172559386 229246973 176014427 496845848 156184557 698975172 9977293 809320755 603383942 738366742 238060024 476085279 56829121 951840330 18171833 60580146 592361122 924897950 383174109 662845916 543432886 840703541 555225526 646676320 131115694 730249901 260943208 861792640 594443600 823413296 892453642 971494469 795441514 893488459 720580341 955611686 318721927 781374740 152148042 795915156 346496427 814401221 966164904 986646246 887577613 920182095 675338614 968612852 604068624 660650229 353767396 626605807 578467423 841819128 174271984 850478125 69796175 368848131 704196871 856048883 385694361 845480170 865081424 969040061 201597993 548115813 720859851 996158790 765988364 859690376 690481443 936131180 574717199 758620066 883893586 950918627 438604951 526576166 691911829 819355127 494079144 716682029 684055082 802288563 743811985 955203014 393920426 779983292 54538862 142315140 536610710 712521352 259439844 919935601 585920686 820828387 392105064 416933796 679881951 996345113 315864090 894551257 951443699 952215048 955780106 988297201 154136709 716131857 46861370 876264134 381632894 717760649 365997734 627856499 237745526 506341133 182929506 984762840 595689620 698835082 135046960 529001473 432216063 798412885 623599388 922562918 368828276 764600974 145309260 527669367 982641153 986553948 949541018 997040540 520002992 784934433 858527371 901402166 226602076 252000515 340414387 575383221 879204686 990755755 66823428 678371854 518287821 679963733 99745088 286925103 284307699 971553107 966012902 986578148 721007368 749367752 112161413 609474175 471442344 566662069 743999271 820517650 404506782 697233664 110199132 877667675 917148332 935259412 203784090 958606480 388273056 707854150 827064609 941842285 202681453 471884690 329326462 722673572 108443360 594351664 262250212 299388010 504204133 766252385 497081804 730605464 379804666 744131255 391707936 866196904 270409567 566140838 677311890 763021085 425888380 974797511 727721883 875442045 142018947 536583130 357465116 436482467 377711775 819596369 577389655 899087569 459141443 560672566 969215257 976414881 139857761 304848239 883169081 936002328 240444057 617484797 444524724 572577040 487691710 580459114 29391277 910804264 494829528 778095865 8454124 432727255 479256624 730791094 53639076 924863998 275145444 413323425 518186080 921294798 392056154 570125967 824947578 947954891 870634502 879662036 170195696 473030082 657110765 841803003 777669120 878891749 581296730 908033718 838957034 944915130 739575662 873253248 622827815 888414965 153803812 508841129 566213359 917702303 296278132 457401980 585345519 761173630 374748475 599210475 779985889 981359063 977493321 982840159 914570296 999462611 657098266 974295113 704857414 896775625 22501899 482849282 428011914 530229989 320198170 954086301 456594362 633033257 336120284 615765476 609294503 941388642 330110943 445793527 661483080 948564347 368425497 727624909 994683406 994908074 668674677 853086237 856930336 966834308 43922150 768310439 993307223 999811338 928575842 989638152 369347645 784635534 26738033 116021626 774789553 933856626 947635497 963925020 900199604 914619804 94650342 500240096 715540192 752081460 179815019 314073135 869989912 964064705 287654832 507955577 345726803 499179578 443641455 710391042 515765009 546266274 710037420 869108094 841572828 960442653 274031146 621508643 925052862 975460113 778981706 964255654 42758776 902815534 720808001 807839301 117003559 301556265 335489770 566377162 412504497 471553465 643128801 643590207 696749462 732619538 38616356 859478319 313954045 479576147 77352564 562311427 399189752 877564810 999382695 999840998 526909800 724291444 985464657 999704460 962372828 987736798 215830183 838008422 828730425 831113875 327209940 493236007 202149743 400654993 687253015 794414735 758036722 849757115 319451116 533440665 549464820 816190717 332049198 694727788 655729399 862018645 379595604 579348019 23856644 307416765 530044854 682951328 131976347 349945408 609471697 977073897 668313231 966900390 786206960 957572547 604228216 788013337 588339459 770930445 549978557 698156538 865152246 899339809 312514256 387704547 614477548 869734030 516983207 728309228 341955234 962184391 622270538 863823729 441946688 971934189 20548113 230980692 569654856 894423289 98651365 624026672 263410811 923858598 739904129 894891869 216910045 440654355 777245115 910099164 820251380 885028117 408188274 674710817 873432792 887160995 353560255 622312140 255392864 491881226 183324268 275678862 665620182 738620500 855526564 890214186 480767969 534875533 309284946 754256709 651922385 975184495 821671708 889023070 810154249 849791367 17309302 844268746 290746762 816750547 353386706 988597862 362608439 464838538 739891208 825238192 704299261 903692619 488330773 750787380 68761001 705398837 110946919 587181639 983584330 997367852 112010243 873120142 292634783 764048890 844376432 931249486 382380846 809185270 34760965 699787829 245310159 798861021 261099534 345609780 718669919 732582319 918178796 966816185 286396551 822903928 424068595 568214493 661726837 891013601 846140540 925563883 980364945 995193680 287402988 617932810 131037874 339112163 609833040 767993044 48007989 817674616 900852495 924038341 370726665 868122338 402122957 905218162 74508556 562721430 343058449 842931902 567632348 597063222 589941054 914854918 396804437 850707068 66826610 564917100 716206757 974916115 978229620 986597349 527638425 857664815 339212129 520475315 808732691 893016023 83986353 410497467 946373958 958393655 742160341 985884586 294226362 359428732 266524817 972527056 544663707 552777114 654814206 778930187 704193869 838247944 446318060 888039227 121882243 838278489 770140126 834186771 539829107 718080639 29436998 999696612 428442836 685614471 956053660 962777733 147129172 641948467 349432990 357425058 807830404 936033690 955781760 979452331 910307344 964764985 877377880 961069133 956754973 988780655 459134984 804186830 453479737 707285356 22029989 564547239 217820990 236336573 192142607 851181159 602644072 679341829 261707903 757755556 660138876 823019466 874960434 939109638 425363583 710158443 640135832 681149532 249905128 777634791 599518997 642211115 47040820 740112049 537617658 547070354 877672168 926057259 413514728 899183083 503908461 855651667 1976379 419202563 693772982 736225623 659557196 803542218 42441890 775700717 33132553 980741388 835575017 847424865 400717830 707605546 745341370 889315842 3983017 375611780 165757762 839001275 480203536 955889860 290544367 626612566 390559971 498386186 688959029 832265846 976646136 977172831 300608025 801908321 29846225 592788801 543728110 577010717 809276030 940044982 620270312 993260458 494891921 755194897 665304388 875056332 723662546 768929995 126280352 613303474 825184629 946361344 564038478 666241423 835328286 950830371 996933926 999707888 254179497 843868927 527805310 672883700 390570258 856452178 893421244 997751691 244094533 648983071 570104331 820066760 434418566 679021122 542470852 887252813 101592611 344311290 295746475 801831480 464565970 498708608 801611658 937606537 935408757 956452628 912994082 976750634 708709953 796530014 518627248 710915373 150439578 789886821 360858066 892507356 425278462 777798498 380832987 817221952 952038731 965984594 725707905 828035263 598863274 637452600 895600115 956349909 57380321 298602584 804227883 985557196 38260227 833836402 452276036 474695791 242081461 966192395 266511153 748847190 533397289 759740683 268619983 697811813 353850841 809042221 112884468 175666851 730453205 917196947 625605994 902603564 423521037 438955180 752302007 948119955 711312315 986703419 475707325 622066738 67821250 955070182 783610850 888194702 969260499 982895328 908009849 920725162 840520311 916700377 420917332 923736017 729078938 890624419 342865161 348512814 412114561 811539436 3446019 336606892 621087542 905897331 347792851 555918213 302303592 432007430 101460751 712760053 440462903 873832872 595963566 957970483 321443832 767441776 169637084 455951143 259079026 847351499 539747641 559889946 229764943 866616173 339953078 828356813 811768157 977928851 653159567 714704767 844325528 881943243 86944752 764063925 225990258 253170939 946917103 987328435 595857279 753255536 866046428 903247193 622478939 806605483 447531833 565890918 676557125 997395848 312900682 845454178 159418949 191574324 115639736 634638249 184142180 232521227 666726874 750865700 178088898 196817029 550128706 623811952 458415960 843467317 657357516 847937014 924640548 997512662 899373354 999657477 926577291 969318346 549271134 880017831 823367275 985393313 307214039 896436711 777445628 784250516 829620111 965301871 149693542 297617990 911925166 987284908 427336258 700416065 41366318 223164569 233169797 522455473 666650845 832426749 387675253 964809337 146483505 662776070 639750001 971803945 577475775 730742807 560830339 996478139 107230938 785101367 938731341 992059359 812769280 985649734 97939259 110243730 980117921 987639402 10534989 794558085 43599814 193310766 467122487 492232376 90373489 344673560 797009937 986947467 618666062 967985741 12740666 288934052 591846995 690751188 743464323 922270977 839349356 858168689 969029407 991020614 279305752 942803353 457031218 782383916 263895778 576768882 28464613 223922880 244785938 934737873 684212849 844019461 728643035 951654650 378085859 905484763 801308246 804637005 53587128 131237424 750963629 887569473 94374076 508239737 365798810 684227785 827145452 988544805 892558094 981009841 556830979 996332438 270785092 775122255 134466996 193836208 242073399 586492503 667525565 847043937 45416558 46373279 142443303 533162340 382788735 942928477 896319573 953289898 137614848 267077798 787135325 981747178 919966084 958744956 637176823 787877126 775769441 854719314 822206396 857446925 266465733 770061309 330462029 908622346 653120412 759561278 562089984 907948131 282778174 575729020 369429818 972123078 863224477 974873758 528627092 895040751 118660172 895735666 816141716 987069482 300503378 953567377 569365304 963487192 724408466 775835540 633664222 692896725 578865025 659685426 775420301 833495148 192610936 204596832 303939151 685878792 455283069 524470158 141697389 519027786 1835830 443126632 642165332 905235483 831319701 901731813 895498944 982644192 114050245 406198558 945157121 996820834 369572789 371906459 458610736 766426192 339678742 630264802 162159999 466955442 590340803 899126711 434140848 803151806 2460402 824284848 946418788 959866948 35348950 123383866 702595356 924263371 225918063 387771990 252187380 552785346 385040478 599545537 415801726 643487666 28364450 120282300 173849347 458165890 660786246 998687667 536430100 589951904 356269486 542627472 427602863 614733680 166193528 902183277 399619107 518699622 745809406 767890785 408595264 849989739 125880084 700139093 862423228 973996839 251769444 765418664 609656069 863050687 317919055 771095763 618180545 754261766 98905279 352057802 71795420 164327587 68273712 954932587 721180774 854244755 208417111 909893317 377926430 714463026 731854224 993958863 930504951 965071086 543737004 570454100 647006559 894189298 260190271 490685913 341734315 476750612 40657092 364451239 195138644 925190520 220676105 678238490 335320461 670394270 548804298 774099399 658250131 876476365 437815695 967590986 502536483 579841922 548174817 592890053 563297606 815323094 618023007 899462576 614322876 752161335 735993844 802101754 781920363 861024882 968101252 997463523 152223598 535866096 635746999 744095635 500959996 886028854 493061917 906696734 696732429 818085975 445449708 758356975 393815584 750131759 379383695 977744451 894222793 937905441 228804048 786841549 623095865 946115574 238545379 507753287 955298893 965045140 401728001 517565470 311566002 707166420 124145396 140055732 632695862 727049041 989026763 992620286 831184934 941874665 902533273 918628274 514163790 990225784 456229016 716573770 645750233 917655132 68063916 942859348 242838243 831342513 539069272 814249391 990620224 994326195 43312238 544274848 73669211 658089694 219486984 596095305 138065326 265341762 306661105 523968071 651964512 994630382 276712467 506896576 17727479 733634394 810377313 955789392 269433798 806542894 688742968 841479914 614913498 913662895 122895669 748432923 193052230 743953689 874269752 939237501 808591628 949259929 787203226 940233896 831811217 903862262 480099115 727494501 882864117 973664888 13217107 434938759 580490317 592668175 788335200 891196968 140980030 853603060 673013709 753162019 331832784 650552970 732513135 832369479 783222969 843848647 445611685 672849456 293359852 914841411 235281704 630625788 420385133 488156363 394216254 955972923 2550161 813030620 247590945 525474748 769107014 797456124 243765991 392149029 557124725 904404566 679721941 940992185 497126016 838582506 757359131 850697713 563120235 841237081 469170305 728626402 710574840 861572277 184171366 954236291 674804613 705790781 812687316 928518999 945835673 992419284 339017852 641259807 999859211 999938827 451073460 883837847 918316876 956397272 935333596 984316790 664841651 713261758 85253488 313697382 769213021 858385934 906377276 941045872 206074815 566016005 507356194 654229601 565294384 716192417 342123737 916971225 433321262 655433126 516129737 860597965 959316609 969585030 970261898 993005100 572001529 670223787 217910709 356444040 750532260 954554513 313550145 742481404 615919232 626219267 977969818 999778779 377503407 853598491 7840790 277340514 633492566 678585090 594699296 922427010 284138750 390007294 796277316 985525093 814572103 854016509 730047931 963173047 609483822 796014747 778161007 810684477 349372293 560557170 860059493 896987351 864991661 969654553 375293706 392224024 586962675 729037185 534589582 970354722 230270068 575079126 311094697 446429018 49456256 537824572 204936781 522449754 816258755 913690838 623699333 765957076 766794404 900059543 899433828 950473942 653986144 795952536 248521896 511031968 100333655 879701500 808191757 951644352 517917669 997504778 152576993 252337711 398615790 923851470 284400572 723355748 189047826 329273400 727278506 930987516 966106973 990860627 83314239 116746277 683365958 967496160 579224603 632335767 698916819 796255691 49857529 377645269 881509967 979462288 791736904 866287186 921997707 973377065 381256718 510034705 409402084 803102611 749835803 806475850 790893790 998191294 497940751 704872419 719242840 913125438 455678476 480217668 178007835 199563124 121129872 177074871 132247254 442637899 444683483 658027301 222105163 741608208 379545587 629519153 152496865 862369838 273345169 383469817 443784609 584283653 284961203 911326061 383938820 783321892 32780908 782468078 57639975 272292760 780693964 821630707 494205333 650665211 754885567 862052484 408174947 923165553 427693087 677546842 655648000 917553690 657346221 879843316 691164646 714544554 805888095 881394149 680447351 862012636 610012046 957751267 27541620 781193865 608122174 651663677 628508617 832791314 95393741 210738060 987994779 991056994 240139107 970211639 114553249 233551039 827122008 841973817 220142018 755999135 26116145 616796956 491400046 745865662 982907994 988910379 961414860 996230493 913881011 924886718 42348827 395719922 674442626 747500053 321041719 890119544 542709556 774807434 607935726 687961434 923470887 937621446 624222765 804404858 434936683 936268557 718148182 958113441 236088121 767357791 350612326 853618024 731488446 734376461 922432135 992402224 215150364 864851495 465924325 901754644 268321416 473171735 530854422 902279147 503073674 989018235 170517233 284163667 517377233 972583809 928829305 992427185 823662054 900658651 549587844 679593574 444300916 784834454 456608558 874039356 120785359 711125287 238025183 374541998 539765242 996640071 328119387 550209774 321134472 618611097 456506415 734391043 958981628 970819783 16987533 813573470 398246826 605816614 860160440 882668741 568123407 788546590 432235643 880978535 499069890 759954909 711389455 871203485 509464623 569977258 79342342 687683397 479280489 678304599 632903322 834231622 242836672 590180679 724055497 837882054 831745343 973365872 69206637 827772293 178713146 937813909 907690840 954497151 866307843 946625783 713351372 909103158 239488956 243845727 425250992 788233527 631266599 678300652 180160776 611169551 55223568 500212449 131276744 278332627 910829747 926980072 988110318 989664645 813853167 899457130 448487955 483645511 488141795 963210332 317075886 945968903 817786486 931268517 584190877 754147152 311806491 667493473 710252467 765597350 454590000 615758158 35065665 929560298 213831567 253302678 415511263 647453233 140067567 550192428 476154625 517357486 812513756 875414901 19468435 839239666 183843288 500118270 882291857 884789595 408899670 830219925 299991096 650116112 665534416 938353682 332163557 574652363 475746446 516067016 990950855 994078406 550689245 865649388 125305736 591690522 481379781 695240983 383587503 957823371 401888642 976462373 620060804 675084876 780769608 939365779 9085014 156203828 644509621 736408098 444491681 704091217 776330200 855656855 508512414 545181305 962852788 964241454 169099362 336425053 545891639 576497690 307013780 782325955 794899990 801865892 667888875 764008253 143006615 641522347 905471937 939842230 113838249 981518705 447162086 507771010 470540623 962450496 304079243 983063321 410217382 750113306 116591306 365847600 340462727 770893490 80404582 626698974 189946494 361554280 667751449 793240473 686210733 994529816 755355332 880880776 532401210 571663838 908135493 976532502 809713493 906814334 412367144 823486124 473945632 900125176 488466350 640738195 646157453 953689760 288433765 687865219 377057157 646590761 104643586 604473306 888945969 947983696 933355117 959072450 415919966 923463142 297887223 578369078 405037211 726160509 845562461 927570284 378692310 544305990 779379621 810000353 965875299 991550237 785276025 843135624 685588333 903968084 177669822 909877542 517556309 620392989 832643720 983835552 611289672 726048914 208811367 506165708 823681522 919333910 713952933 806918572 188016914 938430761 980296949 986111589 612376031 903982903 255997917 913475763 708999978 908797834 870767827 916304416 49668620 852628709 172857553 545442927 148996492 420806631 12731373 267294784 56795745 701965985 101688355 651555756 94486175 190280175 803232108 924406092 153815397 969879229 143238138 702902235 781607659 969889617 536014112 888944577 268447461 803648635 364009223 826418285 807954119 944087744 102679632 261727327 494394568 768744256 471800647 534526648 38713474 737561238 282903663 772630105 421748862 991497635 207748800 645978087 97791362 232087462 574452046 741657666 373717454 921631709 200098565 579064346 108210239 703231341 565335009 851212932 445085413 931041215 475298305 798904417 744539047 922151771 718503111 861597761 427575404 784363226 362018547 713644398 377416027 588412045 271029241 879039666 534215252 951037133 129343415 937601174 879662951 893049263 16881359 758947817 196615126 665109571 731635402 827046441 674307242 878119862 929630144 940329585 629865178 769982728 993045171 997811082 985297176 997545127 274682677 444212455 952953536 982577931 372023490 806399986 369771361 654417529 878951754 898818807 868040889 976499615 504035507 926194678 988023118 993419189 726918771 959146534 961926979 974389082 164624807 314557773 62158053 591856954 66236703 288028284 680594646 751220161 363709587 576344131 230042687 983471314 145908187 884401513 747655 553563041 28626029 696536017 485602626 949421237 911168435 987426928 148155103 505368982 781737217 875481969 107120043 643788211 543239004 756279667 608044267 755786099 189486408 795275180 631542313 937684196 517727775 569103273 975998086 991533015 425418649 727932099 782422170 942499087 708600037 771226151 206094555 757658884 795278340 930190743 341279539 999617300 639616155 947983433 270342252 588325445 918108549 987232760 208063477 998126329 629614549 943233483 274383913 596753597 205897266 972549437 253300966 703676828 546041274 698409889 856579891 990619395 179646177 460692908 949984828 954127488 51745498 682762892 360236519 424230292 36969693 857270569 77141612 221209133 858533972 919375236 371684196 397121695 675065585 880261538 984744198 984751085 470199703 661469061 471085769 813619013 646278872 865357668 793212751 845729272 92605117 347515684 892357972 911329101 863364206 866165527 234615251 535787155 337781118 943399400 443355502 662237738 844273347 993593400 263578156 800216382 94593126 948150509 883731435 990250742 542369067 978811197 794666416 819880561 539837382 912786229 854868081 967634054 445000688 523887088 792370300 958566717 828214265 996189474 539422197 547365492 65631164 351195768 593297974 651214017 760021839 780156193 922383058 928471086 138773133 916922230 262128995 624296436 310293002 861183047 625890081 937879643 811648479 941642835 603905682 875562829 641724823 928793500 360572189 532200721 774366496 811441744 664345316 832092265 452967122 730881867 62922751 653055826 856425541 991131508 453387109 536125567 654021905 875794647 323217969 598949699 404024037 796089376 581616140 891732239 16929759 853998189 983418586 985074344 89547865 663164449 668747568 883017061 605732898 722030251 861748390 932416448 954998564 974238915 56022112 792527637 285469263 483943157 747396969 883864961 405655831 784598914 85518978 800608160 781371298 898188924 128444401 788271829 134428874 762276981 334243050 670410701 711232773 925146782 502283960 737466703 543423327 721440079 132697445 338657161 321781948 800384338 633581096 990200539 815409945 883203812 554179457 928852638 117892829 570309269 420421332 670504208 524214631 617876273 115631282 474309189 989645010 992138369 424487347 724658815 562441556 939366123 78708362 951837665 770059904 987058017 683695516 921419186 291485368 299343174 709046120 803013610 490533732 711648694 702810856 795310158 234600388 920070724 528349891 805568898 770577171 782589066 729121426 929131621 965595281 969078910 740632244 845788854 690804644 741166732 839495065 851298864 209550918 920946531 467199194 675959720 532313098 865974099 949021220 995033186 50377994 725138170 698380441 969278379 353107721 645765779 132461170 695834651 235908252 891034468 393743471 769255610 772320597 968836088 522559797 928703855 570981253 686733559 478711009 660906099 715340311 820867948 65943648 696906991 385104198 840201841 245890115 882689977 112075267 312590427 659746010 941307798 686699487 896162334 1520795 820246416 251709242 585747464 436011597 845855122 447554948 996338949 225895022 761991960 700190614 826306813 52721646 66565464 381687577 748266575 159081866 372919792 108165816 270399281 416057631 963385214 124014822 872380438 420290180 760433218 265221756 670226146 833515161 843534207 839966038 984396935 471892896 771987425 186533598 419252021 118989612 239873002 264795291 316041093 314510651 896679735 227809926 446767142 967111125 999048919 453796935 530884977 249167659 445515862 610964183 751740950 691131661 939469316 507692259 874901797 795116869 805673541 164659475 345715817 1519274 509676914 117703498 485118774 460555502 808066942 871099062 939130293 271634304 517463547 611548931 696551568 363974938 892162800 86172029 93309553 524116761 880496450 692677431 938343267 271225872 748023197 677994338 955407919 406751484 577167680 371884275 918973446 877053912 957235450 717878224 931669640 512469848 767202873 980622137 998073836 111780756 732531578 201633057 959970921 116965184 159894564 252526251 766164801 87608294 156595800 749904828 807079417 563008487 818476308 557482306 720069374 316298610 855455299 334381184 663924486 669736485 722421532 28438070 695298526 889272103 923391084 794873799 799758557 749940795 822597664 635196419 807266577 796026270 900705052 583790380 925959970 255440905 258508083 44158283 768319478 390661775 467152030 720675800 958409311 667117298 951362179 792346721 825508616 958452269 994200900 327000399 401976125 874206060 972407484 574370950 892553829 675504646 875243140 144725643 713199989 386273329 414767428 381756438 578224166 446382826 634397205 225774748 328419866 47872924 885890029 866668430 882259332 755552968 987019664 889733963 972330279 809696833 838116412 997779521 997825081 36110963 414361855 844572161 967165591 734674042 898910345 713401503 797441965 137326157 222939664 104504852 861361267 492965065 650464284 920770979 971091997 375589972 785452204 201063023 206833665 756413270 876156772 279406932 589203730 715703946 999990055 77994342 483536594 617231396 880254319 737166815 952831959 729366987 820482188 91285342 135319396 110855350 477594210 551796364 816812054 499866867 638079338 715548614 897504260 882980243 906465212 65937263 629190949 890011788 896224769 77104943 274460678 618293073 843042323 941103768 953349937 143092369 148282191 512339909 588439670 662352397 800171548 39284844 302256968 197008349 681039013 621246730 679106749 237915927 898175695 505352387 911388901 728426415 851391796 345003347 470622181 84389857 746831354 139350727 241908121 405330691 659151402 189490363 283612428 941532415 996094337 995037895 995975033 424887528 452339729 528716623 758434414 826730934 907793843 212783664 699464543 442419747 654299845 91199854 464120854 575769719 842808861 7116310 455429090 635466837 905062466 52314026 888947860 337616364 343106023 147515019 247317871 414872091 900983179 230337025 809979907 366021610 957793438 201898842 725279278 131784960 280402550 163578914 340128091 196941298 498672377 570738498 847091330 924779803 952816425 461161905 892778368 591616632 826470611 908799259 916640750 879916751 917805875 520658242 555191547 563312858 568675663 448271565 861013826 174556987 670580417 333888675 793177679 837195011 959658621 640679120 987371878 908808211 924853586 500274884 504608627 710931772 756144113 189240601 438945997 252649793 952996387 582580694 754815515 54774205 414229506 896448804 936809425 635757029 750794032 207734291 322653792 718565209 786580867 222357819 659394835 908352540 959525252 336882580 386677493 67005176 998995150 961544298 979572980 623450234 887469913 890042356 924340204 419179231 819795097 81275838 625460440 265596602 796141197 893692962 940262070 809322144 921727147 390220055 703261477 577511740 643915586 986894491 987691017 324375534 627117531 611434502 820325833 277992786 859066501 851116978 968047711 590371574 637018072 967557017 980374919 756152366 817314624 880725423 979789524 909762793 959143957 841824317 871142633 311495592 540483945 200264227 986914625 438134723 519555525 492479581 709232413 100932809 618859572 43159011 692983716 245178640 686221084 861414796 930157797 411981215 734238203 723266562 739782700 358178370 655962763 562344666 813522999 790010240 823144017 704285365 843955926 837555732 969096751 447143057 971611286 755458574 935169237 571718982 706191982 176180079 808557117 109842118 791228560 926883689 945170774 924504661 945101185 77275114 925554168 321985784 331114631 920432345 983150921 287854904 998179786 504088294 760063262 791647883 897620975 769266335 785974426 255386752 886924323 686472138 863398207 779807561 900231421 131441579 505946360 204721820 934426833 681270266 831050938 563195943 738327247 681238573 873851380 12498581 385641509 488856122 815581891 526779674 930346466 834297287 854272552 848825750 939385672 671528971 949142298 413655339 612097299 652438149 835237223 851399421 851953678 340009275 608511063 82530075 511100211 416144934 429959773 453595067 877164309 3392809 405071708 716457148 863364796 311230027 982051624 773580098 903268201 438168586 886805119 48939969 251602445 44337961 116963010 407824162 464186793 942107456 952884184 987873340 992257374 782302707 799517437 430790283 897978195 589128049 886483698 803803140 970309123 798813330 945960409 541160108 622732570 373267839 589494613 214691513 818362784 168130447 479839236 611258102 853206308 732209483 974669272 325497476 422197799 754322403 779387687 150079439 800867981 441578676 826161140 689596451 758996791 220798040 912274332 490993091 738369643 263089204 893781816 123322264 645052469 869310918 888856878 589502298 777431051 104376672 139577366 938127573 983486643 507384693 803951044 543455969 997164711 73179826 213777672 961011651 978241642 781596159 928474939 425254559 446779277 967880423 973196381 391813839 885832629 342650537 587265514 693138046 890500295 886163305 911726394 933504065 946830158 205326741 465129762 609301540 735033748 95450061 564831099 55707384 966587958 386652421 635594299 619495181 939084593 508709512 748911995 331641261 715958728 192837142 385124777 803644600 840796882 58626658 259847219 340330613 795611439 377578622 731027116 740944046 855126657 71274896 886707207 732135155 963974902 616290962 787813579 325887137 605839959 650553683 833681847 793394530 882021197 60265033 999889820 684808214 834739737 468688286 959134878 958576103 990436796 256984727 325670443 119668696 921593541 213984940 751990492 262392484 339210931 204997562 745260818 125515967 462130031 511075778 731697479 537486680 777375954 190729694 511773130 899486451 918959702 303465121 776230116 124666923 891879658 739666218 753818827 772873134 859634315 425462457 904284127 230698927 369679829 574615816 831894711 231072304 493855135 117124422 779269247 98100639 510015314 659712769 741809366 268068696 667281150 629649975 998022834 190984486 929088070 957392141 993577821 910435231 995132769 459180875 777162956 61546262 744363794 783779717 975515983 407298311 506169916 301295135 422504377 417051622 499627231 559170355 917022273 120302229 922673852 576758790 863674068 812808959 835497195 45946195 603859390 234631766 941411060 771221661 975891309 540560241 876967721 261797474 899158530 466150172 913064370 86992457 422795349 761271823 764957852 993064900 999019260 771784566 939968825 883178488 985579112 586832935 892672687 702978463 968844407 205641762 808056621 32037013 791891827 553793321 690848484 16920524 128946086 185160928 543179526 555552349 705949025 955967092 963013502 731419202 975096268 247462981 462646584 310935888 809312335 422449257 872454476 536201728 975230332 417947861 737163060 349217580 902642012 186579737 660762659 863615079 962992845 527540569 537996643 436113729 761629729 450862134 597295922 441889426 570610751 817971170 873625449 260469208 703157206 395113270 752410468 659671842 939210937 678662098 711362838 479173721 498216496 949171017 986835510 909185766 913302545 753893869 799186007 32734445 995488119 66643544 229370948 328036793 780832527 726586005 999021658 938544590 980282984 619905637 828962255 31586992 862034983 7387647 87454909 989736203 992408875 101585442 623660080 931356647 948685685 251900911 418939191 821266843 824229755 420835320 994838953 682877979 740938073 964274542 988347393 957253974 979975907 903588734 915245861 262496074 913563906 651182267 780781902 342862033 765301601 206582133 818229548 679874616 689528838 318070382 652240692 468113972 580702278 922461583 982862664 419464634 445485131 33488674 295525300 562148053 720748627 819885131 976696880 380001740 707076884 13019137 970950036 531819181 858299616 897643715 907196756 513169694 916010888 446207078 532763304 824817468 851131329 342909879 896691325 988338065 993318821 772944402 985901782 516599072 615035666 375330737 810096242 983016236 983212213 440781774 957414667 343127204 516964374 201447035 496012181 937025309 984219687 983822811 989694816 812817473 965751369 817118494 908761519 593670282 991076802 571185366 917027965 8291687 464408547 335483900 391445075 659221249 827311374 828117223 889900625 577435 184464330 986512944 986950947 794698380 820623467 757287536 801802009 846562565 928132049 207590723 446548625 59086673 975951734 626300772 640619885 864600940 890661258 461467673 832646592 637286467 730422858 369587482 770748790 487145797 735083637 38808435 144650849 453883391 897367369 643178119 793264521 957816359 980445233 794023526 798425581 284293566 736829356 471537325 743504789 215848961 307311953 67477399 311361441 413349127 726270448 200287082 247989458 721585780 976536218 143361105 516289359 744582610 885659547 733245752 819276517 17690558 175182407 115880007 136499101 171459843 173500712 904749705 931849411 55971567 981658195 295129399 881083717 259440452 391012440 983209716 987231185 847721469 948737290 947895086 967136410 123876707 140497201 696172504 964785155 180615446 710898082 597015843 926848410 837375213 951172029 480749763 720568828 810971444 967453138 171123168 916732917 149590001 637952713 758975828 847256631 3236381 961142460 693592701 808962176 563191529 613256791 300840112 750938436 294730572 519309240 573120481 778250657 457548968 787238228 485767551 732130237 35233439 751637420 311258240 916081390 885508788 985604445 140205317 587475903 274365207 987847112 140141176 922373984 303171040 385107290 28715068 457237498 781587386 922797029 869539617 899791274 600279948 795506053 552496977 870568212 132069398 610186835 882270794 954807540 489185979 733145082 238634795 976921085 733062833 800725254 496284234 804614463 975910571 989212547 937915562 972123631 375370184 771325728 216147622 752686927 83620375 99310096 605471948 884787416 170039828 355060655 592495237 773990582 755640875 931145145 837572922 846991197 680088717 765191710 583853326 764088815 532485624 603096642 565301783 647265821 323318451 947187883 762946987 898341227 119952689 696003050 582417692 612931217 477380030 851636478 644943677 657846149 85097333 887957861 38045497 950464251 573900536 833337468 809479683 921948113 775345787 860749896 481047114 925755571 745322246 972705842 683730645 854709809 571367711 705153199 983265324 993407720 566314367 907886777 718087622 847663459 697704675 890187735 672601169 892745697 367553510 537032838 949981577 979823716 298341730 857583574 168488293 719338215 703095474 713296377 140619321 387102496 262860507 889907571 529314873 726779293 249079738 551637476 866425679 871197425 532369329 706321922 716524847 732877302 880789280 945966123 372984565 910737472 560604703 904811311 391227181 861875717 868704100 992397109 766097259 967755747 221400928 867339862 813787025 932742117 273407384 452876298 252319228 705312585 121667785 587595469 114797598 536486497 54413183 855849608 318949404 960233721 403213380 740036384 432801348 722450496 998982881 999387480 128863071 482803429 88575344 974167300 243137323 590927225 111182786 835363321 571049844 843191579 746947152 964354596 134559227 627151009 933073778 985603631 573833452 989746981 98130177 563732235 294709656 618486232 123450863 795680406 915737209 958455238 149464515 440174361 218966590 957855309 19341750 273137156 65455284 322977690 256538213 530856927 277419696 821819148 296846492 526032923 744635297 971158057 659463402 678540134 289289469 989147507 817507816 828886342 873454123 942912616 211350360 602218461 375166454 889753500 746292061 991476144 986091225 995381169 717505905 944620433 809044990 856583945 70987488 540797968 280573261 828351051 296437152 813535645 529445401 651468988 869733591 951683572 616455749 749341849 670892632 696382770 625036373 731519945 955469608 984040177 959782314 977859335 690489573 966265205 190804864 921338201 54693054 335713439 614192505 951791863 302401325 636249838 180796509 224463645 184867890 226792181 39566418 514137890 905907373 970768851 36943855 719622185 108444778 635199951 91095552 519537175 309062319 956875608 562909356 871123488 795465664 805342376 160930350 841084759 460599118 489201657 270530710 917976972 979032856 991619089 898830219 973447919 312963881 347576841 469808858 712911146 791773293 818749847 462289951 548936284 519416923 591256388 571715150 887908932 204227898 987578795 900693036 916959309 982044854 988783219 357201557 497241866 216077771 414897528 188729135 545177710 337079181 704171717 767298794 973913584 400151189 613660750 398543883 798227799 747546983 855565334 911689553 953177112 540491165 547499232 130209427 654716982 843715498 903239482 955905810 961573224 518261242 557675448 392974758 930823774 207114191 531622355 411364914 970263795 216874251 264155232 862427237 893951296 574616991 851722192 599629145 601162914 771832984 806763202 198091496 992190187 89336528 859797856 717670424 718919827 758736058 986748180 585298702 737492659 469732402 986920182 664935162 896996468 183460141 576713541 487488231 604009694 746237859 846758345 480211113 679868926 864310048 927907022 983711494 990427591 32495732 825519526 777798647 862782810 440767900 706372500 378476635 553983502 925348509 931512264 514503257 539797795 411687068 702481132 652144451 937490129 428394772 808773873 555096816 590973171 754254817 823603633 52680362 627107256 989000892 991831086 855757872 979125072 215539013 653829586 398727274 658982195 578446622 775859271 131214896 585383201 799197623 817676718 649306639 947552734 168753150 998753870 775061956 775988216 587865720 676009787 567243514 745924565 481713619 736671580 782144554 835042715 511292070 960724406 161934881 412130985 548676761 843558537 839003236 921698882 805457337 946889414 265055304 462546582 691078087 977129510 593204143 968251066 589545013 807915377 537304255 892994983 721149184 743967820 24225802 107060157 717625163 907820263 672888861 715579993 40024318 919629459 50912179 985137844 140199520 661396148 522488791 872760403 568904425 581091686 567501650 935658908 24035474 496809933 880312227 990035918 452121987 917020315 798882351 877586601 355239781 747465063 460053710 461985687 757556041 879891622 764241180 821909993 159072300 493738277 813316726 829110228 149337397 150731596 509022470 511095115 263405383 866459461 86695908 661250678 759176040 809527704 312255608 339179181 990716803 994234840 695156464 901059415 885136552 901918733 39642849 607305201 668419831 714064280 677499408 750399152 209156764 478910575 926064083 964361037 759835211 807871376 509630627 722165854 499780118 647235897 96664311 533136314 468326824 849252818 267410654 899741960 50242765 308175506 678390543 710993408 58144238 370001414 428255164 771542927 941357740 953548880 121560386 373572025 167681578 577800336 5995545 144205501 554754809 697366851 624186727 831417370 119520734 503739996 632294413 844326839 773581990 947073626 622293867 876813266 547239865 679055570 489209801 691870052 911736169 912536306 148201086 703593996 751003613 794024094 836402483 969220457 499546565 892744721 541677528 848911986 259453332 729664284 162673394 556101634 487455088 817889526 87074541 933346640 64055250 234167465 572856660 624141366 278047823 296959613 461342343 748415544 704070806 726086736 632782141 861869624 120820839 967087785 996500479 996741390 745692603 765067282 702045823 905728746 682556010 977734313 528607621 534168535 331769924 476393244 33817072 321294985 868977819 975884868 89742245 235695802 89390938 896408887 352238511 825761895 525314550 685667308 310395790 717999374 457531733 819270981 990661426 999994951 197575942 554204386 871788846 883307627 885523843 944418555 25467416 174045767 821005071 993727353 915139438 916308138 47485195 738643108 211565240 726392742 625663600 904599466 51771578 466362100 634645393 704339455 839318214 970809916 951729653 955409276 672872276 816872412 629976476 738356575 998440487 999400021 967144105 979237529 970101318 998665693 868484467 997486875 718454704 726265544 27200975 800488916 55776451 851162724 703298103 842725098 355806176 991219315 502720056 941664759 172568882 332527935 720050808 874326050 413301350 519760515 818389027 954087620 226372477 464060986 244638840 719078503 116377846 638395210 236268489 805255564 563695832 613299662 947487137 966150373 913180013 926130615 804836323 841374949 796859601 972301625 745153538 815515323 70086632 212007578 935712899 943108023 348955364 987352010 122852906 980283196 125878740 361881682 120842543 300238095 996787779 998098054 121507518 276331426 156939925 991141751 79603346 567563438 389060816 636550178 402277118 429032990 389406625 813156960 567579652 893385642 323165831 416579073 708491831 890014159 179624553 233528339 28396930 729675115 644084793 832959483 461276784 816243607 153081545 505489393 923625873 959612336 142882209 541299367 999482353 999733058 450136578 818102851 575213108 967430733 376111660 925514479 990951631 995758774 107047659 445066180 751094359 855542304 394294147 625006072 786611849 958884305 936035858 984032412 520671236 815779992 297616459 599447979 825350518 953378992 602394026 678279263 13744848 127438999 875903485 903294897 340491400 675158336 774433391 847966504 929145089 966567103 452267641 785081958 102152635 170019323 811432294 930967070 875376844 987308782 61447501 196264701 325877704 385532064 821069896 884580845 392547989 797884578 579955674 802374846 21015264 729366128 500466372 696305532 195512881 323135674 961445621 967173452 343347883 531422807 524268924 852622185 578056261 943173932 848204054 915809123 160064711 490624104 216022955 839135579 554354171 955983185 877844425 916908954 214374668 991508425 392876017 428695291 11644717 751838198 891963652 986079105 616958415 624556096 931122430 959243782 609562410 886549354 784778141 798256422 397754344 406584777 589912435 983214139 353028974 936663463 594457394 782757543 687160499 855607215 404267235 586220698 938227948 985811214 348289126 602476838 225636512 729281275 443292222 512683047 168405610 505507651 613910572 730672538 24422893 395510947 528040648 733107322 777836325 835385031 292350233 990481653 407341601 791101730 321611595 657689112 15120546 642437643 552008271 932133759 177634097 769512571 921560424 928672559 707021357 859301239 904514913 978400918 507176423 832547947 600244910 670565456 129781638 753148608 921461188 957858746 351457560 354519155 308350142 844533897 991526693 994243682 190697204 921456321 199070828 866101924 158225463 750353736 156288693 567823344 15066234 378163184 234458260 435986081 224681502 264587122 86320973 687230399 610502494 901749114 573047384 762320994 716293410 898419524 143082910 414446475 852950741 917704325 154226517 727468639 813981795 964749005 214945328 317272224 480276015 641682430 542556855 857036717 742886858 925971806 402749657 736263420 794835174 856412339 578514804 664514096 149885679 312669946 715521412 747804954 58433608 471503800 297921562 896869090 911040276 926718001 134184507 998984099 585730725 887496841 573466149 828033667 916624388 969649473 397362783 716235924 159925015 342784553 51908010 569817684 355441743 949318357 560073010 941006804 30009861 400976396 499894404 598540056 246813604 407864931 446987765 555643503 809263157 925333411 804568262 807464863 306847183 774089179 200068002 621529481 914085335 978797747 441376749 611685010 497790829 639703742 92254577 986866367 190760452 882906576 117104740 427556653 534196509 886210680 837692609 921048676 180512202 494154264 66681525 795975696 99586236 304932900 72317264 962581896 419673343 445333798 248823574 938488107 875640339 915809681 581495417 702360905 982303080 988072026 577010017 613569377 85443205 410225046 819680952 832741230 718190703 995710123 188697791 353241948 727375107 842850145 579901512 877462559 677194449 723086243 440912036 617393025 376164792 401975220 764717935 889893037 954029145 979052548 78663305 718051541 765530389 972186419 326352520 823767753 342544828 420185740 881982734 897882927 916319621 936630339 141668562 163808555 805145558 983472037 340384607 551665507 702176817 761334721 978980144 987287389 631271124 807785335 251273130 904578515 826251562 850974755 715602703 737816951 452947995 828825537 996550827 998530094 996102744 999330404 107943726 319806562 857136598 946645586 821646405 901863378 68531733 957996370 942537256 990555863 648245790 900561791 673396580 761362565 985865010 994432889 113964458 981662833 845105070 873550495 67859708 854776149 989077116 990302499 657898314 670398874 641686279 688278809 186699064 502360409 188527780 940693809 814496604 924117459 566062781 667173074 163462994 450472497 105195624 596152367 680856489 844402096 404402574 954426267 6745519 984349792 329910150 805359669 111278437 205099971 550875544 940822931 418447986 619601212 473884956 753913730 783596844 865781083 200765769 532804668 689098843 729685645 680326290 788659916 291678155 410963237 968823566 986386449 821451060 853789828 978960087 987702442 997994030 998892521 908222182 928713184 240246820 833710427 62414756 982817023 229805937 887817287 538687244 909414517 564232254 880043646 757828424 771049330 665862565 967958348 627645807 797718627 518887099 759129605 118401632 183100775 517673086 865147796 592929833 935092202 585851015 651882205 675797130 919893526 117193728 814672359 826118315 992823427 18394875 254378363 772295660 818788116 419855008 480315708 2447923 838814687 145828634 475855810 441156885 578734921 838825211 927474978 534878151 891741663 368945414 798122582 233746047 324384286 837621386 874365027 972278662 990659628 407824124 961575424 847986741 859777864 794966168 898290466 766140221 894159993 757811943 947114712 792039417 908226333 694186241 729438177 110824339 750434585 955986213 962504647 592485386 771471625 945969280 954386639 963318997 999679942 69006810 420385674 984364934 999823321 506143778 574604662 122012932 797878697 747746459 992868372 954781629 962675193 153469304 250599658 568528771 942769289 429605514 853766291 385449707 820337164 268650561 826345388 531658836 962289702 942816524 951171312 760607991 860153891 45484427 871024306 411813346 580167113 57743020 179226310 197883947 700469845 650098815 818498583 103180799 813400869 978961435 990687951 861766779 949118859 507860483 682083844 723219961 756692146 433679867 686232616 294478997 421346437 222668547 513528385 146507995 180838898 155484018 567133194 872715495 953143562 823070477 876214456 224443897 513964189 119748159 746715921 781716688 806629640 145935549 212663360 934271380 983352337 984470339 995447480 305598564 552111849 574552237 755082319 734050705 869871071 978556181 986240561 410954121 747270854 525991184 814833119 248592840 494057523 909317580 964568106 656940989 994976406 997693171 998686129 572144826 859303548 475069871 629636966 283826855 405394137 584838760 948232180 600302553 610589999 502950010 931456841 191462905 378222232 401933978 479234717 21103826 660030705 981620463 985868287 998296670 999308234 597948697 925358226 653967942 877081830 922227734 973805958 379198564 989318641 432163108 782348454 243516494 777228668 636589710 932715903 963859961 994113391 533979369 590708122 84103749 756420178 724231059 892877636 132014870 562695564 32303130 348281026 99123296 708624701 649630503 820295201 99137752 343643293 350939743 631008325 660324895 660745931 384580123 842402175 361548014 955675275 114200261 672518240 612472570 711039070 910251134 991737919 347743238 876885984 143807026 171649265 336030840 961126980 118196228 550095269 374218663 904450783 270543090 516851546 578151555 979142541 90776293 479244228 411494980 846280054 380738683 729307221 594013640 877305604 502662540 614861219 424363619 459245491 148107810 327665937 32112147 44396965 861711984 889721751 243202966 475514876 409456032 680590578 248335381 283494600 981557102 985486287 660304966 893140680 971217120 975263660 490300940 730973643 219527829 424004924 127522020 299128028 319595508 490626230 730731250 786681173 236389736 978909076 668824658 805128312 349277173 483621396 348588707 861599944 716225011 816505791 467742267 700227188 688371751 804797225 267164242 635236100 342924223 875196924 276616953 751970469 269277883 563216863 107473383 891728654 983066103 998743041 872538560 913870846 72309664 733750119 386073169 734907757 843163237 926684959 244926037 689326604 256693855 606339585 358638817 582535694 679486810 926748079 953808226 956660991 592302933 739017459 576969578 834090328 382150991 568072637 583000311 610734775 69096152 984643643 817605790 825721604 616015339 962026913 970504170 971172185 884406005 885486256 826894746 846867330 912833029 968291026 573719288 769423643 74041517 350158960 171219099 804660180 897324655 989147481 862357580 938101243 448408030 964442626 817405546 868009051 999013840 999922308 513629058 972026970 750272962 987676879 264352408 424052323 774818546 777396104 331349776 576898229 459753335 544181522 15292395 135110969 457086899 999934943 915123143 991974336 160450700 389692593 324729879 675710777 571717725 955631518 415854634 577858823 649705840 937223116 567268306 799350804 674498776 890337692 786887220 798457124 781404403 810477868 444577784 734488522 911396267 930469225 951775319 991246342 321704761 322198396 433933190 920541754 516079923 534574178 695004644 975695242 768496747 926301729 437557854 567134988 365425484 568203855 922613396 931383049 737313777 931459492 761453562 922352197 305823352 988445448 877080316 886244167 467951055 783103627 190693027 367871290 347237241 596041054 267432413 588487560 413561598 619301838 665141579 693268534 547480029 638105241 528863130 579393641 229734760 342125507 713582216 832035928 46121048 226419692 136099844 521958461 368611230 445309741 215468313 633500464 448309407 801516762 208367687 455302509 40924125 445982980 357080338 510235605 335741760 566052825 272497251 418794971 492362931 861629339 931569178 955966256 366554129 371789322 737609584 983634849 937181022 957403717 189846060 513224384 89734832 196421768 729348509 779264745 20387685 819307060 535576932 995543612 609844704 865780906 835440624 916022640 836828485 869968094 851776035 917357179 348780729 816961246 627337316 666355187 262349882 780144007 852775039 954771535 925845787 947034592 493144686 572522546 496366611 724086079 669583616 755759478 32614091 222474529 694267893 902069067 355706750 542600341 515442352 774709948 338808694 795601251 770278207 953761780 691508222 794881463 152377115 486780324 153046150 606742498 953706080 996968330 414796229 990985610 917419407 990668170 593690948 773388518 651144273 673422932 152993055 561134477 223218904 250017677 339402258 727916135 511718586 878323445 268334023 380523612 578161720 674994406 327803057 960376556 976712851 993596598 137540367 360068516 746037548 931906964 574934153 909780804 745067332 996489045 79393850 569253507 870001925 907581240 248475162 335057759 216824479 848134676 475071565 540530363 382669800 551836689 178551871 969099536 559341545 577860138 702917490 761848295 224783316 978378922 272994363 976803807 122335949 621693656 834469227 934983876 272043290 413904935 45279954 754090181 327140947 822627440 630554861 891325431 744354562 878954933 263958644 815884946 906776052 975287140 360358701 401590807 993503428 996785279 378678873 934922533 937795217 996072721 363015764 781861799 278458779 569842821 354361777 413766130 592538465 699526753 305354613 499445317 764394604 881462565 91098858 631539073 231953710 759393493 910321607 994533397 242842806 489519403 918345837 918691162 555885030 890417795 841925171 875670406 429961225 430799517 147038155 351976578 848466899 984184261 588039760 954752173 954474164 986151648 771269579 857408060 585097405 757581678 882272297 984483208 229368328 976051627 221769391 869623014 948993374 996997226 918756961 994832776 441752881 930202158 893310245 950806788 234552495 329942928 569231526 774322148 29155574 378729897 937934810 997861838 748958767 937035562 681787064 988563104 402610910 795451189 919526282 982467062 829470477 913962465 172135137 900708547 415449891 499712015 294208758 595055254 527228063 542642645 269591185 442939558 351865875 544003339 500035954 504782369 833345226 878696601 315303988 451044366 993466913 999532956 317394486 362447982 210242062 318758346 74312593 749982097 470276980 583123479 486838637 593192684 855511237 865414169 842076606 981241881 973138167 991367193 568098497 681769751 704117158 806722849 428057108 537940999 183405128 803111062 806718430 872644190 546493475 816959169 315486969 511390841 962149559 993521161 675576050 990694724 615861711 841567124 531062336 916582650 858696764 861890704 159982779 500817233 424448035 554199732 159841248 288559522 721918545 796121597 305388272 766924085 682629396 894873384 352256394 428951593 665458956 750039069 982176680 995005670 685962334 847846320 920976398 927170374 933998230 964204424 911378374 986846876 678961278 764489743 791700698 912205097 511799502 973894600 645900008 751754269 383808043 493153301 952797661 978274761 261579756 758682775 864121075 995596921 83857240 391909340 255826006 881592311 666183994 911133690 714759636 903945484 91472504 952726807 985129119 988606342 857678887 941536881 920295257 953761140 979596559 995795897 998699962 999487392 366206880 888618577 974596937 975106013 846246682 887078184 665769872 800455511 822584123 998671826 687257713 863571292 951490601 965833781 258753254 281288126 50067541 392289839 423900838 808074444 284340828 647066228 587380767 751820503 584003976 726427462 788438262 932286554 527878462 862719037 61396556 889841771 696571909 902644952 616587898 716444082 329565203 553694277 867596023 968582194 41516358 638415015 400097339 422674820 31716891 463059633 930283905 961634029 635463421 725231091 171259689 960228133 498977592 888092623 264259807 370096226 593878066 738296653 354870267 808944004 871874995 888333427 651982003 689691578 609972269 718092316 482730063 812954327 579143576 958670378 421460170 695718166 278081715 460126062 542752060 973457239 269650979 888371927 934749494 960915292 992655872 996834853 567482376 683321650 267107979 985063162 662001296 722352829 786612049 947669691 384037312 750001736 432295681 728657932 858138553 948690240 404059839 554571862 533496816 918248515 233776105 669916946 73816931 891719104 852645933 928211546 40586812 201495417 690088897 787332891 861457287 910370562 367112766 668560120 41583220 621027264 995499906 997617889 70905954 501957594 756339993 867487625 685150101 706252694 95083055 266866685 566367931 890298211 426340661 859159688 929185827 931785943 738900191 947046442 212939261 920544539 968980777 989598728 279206897 967584159 135089057 319751245 401164806 507548442 909576622 947144604 662058909 928406083 77625413 738137071 34069383 532989476 571136294 969368709 670818014 824736701 978648922 988510664 485241718 675313722 786401216 970920175 606084188 744865507 542275561 594632207 283132093 620215291 780308646 917561515 78721168 833877548 907390892 937169697 586472560 905459721 879676381 949327432 92083807 462583117 674292237 998553242 285516357 905393635 454545810 716508901 890207613 906894132 476707801 871002842 100723441 619534878 464283807 469138216 149339504 983976145 960476571 999710354 901691059 903212094 844136005 928243104 25421787 513151048 715374431 838887256 737564016 806505868 307044299 540645167 882236826 944721544 505985439 553881615 408072304 969137021 883038404 943411596 318254917 511726856 815903489 857957261 124671375 833384424 706238244 908569480 418664641 840084744 64626885 661173317 450901757 594280459 810878204 834277706 391180553 795213559 178353568 697264736 100051925 844733109 800816088 987446306 484334276 718119026 174916754 949247645 759532142 949834071 175450886 287933860 667488905 886962473 349491407 397273264 806723292 811811340 580618348 603488763 269736103 851492639 551862355 792214542 228190145 537275754 518118282 609908003 74680198 440499255 851288282 858453027 254773002 555577162 639539783 823683849 212247112 867023470 615335168 976856538 302209692 610330676 510059452 782031468 935909967 962857863 547154080 637467577 227271914 265249538 907048770 996775262 425761868 929759452 796805812 829028599 666755470 992399491 543907727 683327726 668532364 816305254 61102765 550944340 123219070 570178875 543841667 792876861 673197571 792517216 300691878 522004115 798242164 941028743 198418401 847154957 821157715 848779834 811035068 861253027 504386911 574057517 771551577 953044485 837851395 961394105 413360295 517489500 209736763 570435733 450183045 664254178 939019816 961945592 151688128 745544407 729516998 932482065 515239255 738280262 666704323 883751069 745726704 763834163 315866719 874088265 558286585 722198844 81667718 545945305 53833999 498870080 366160674 381848182 640330115 733202574 655568430 808572878 917667504 980556408 623811797 862935079 466965180 979267429 570532622 578335362 472309238 658796753 912977348 986098919 914915161 969306407 986404449 988542022 278650883 401515167 202431323 369381240 107216243 437155891 182971814 765210449 946918596 980839175 718497528 926630489 131650445 292005027 917030508 938387300 401446038 553291723 948629573 960870393 959199580 981092056 765051342 928838899 326621877 346983496 585825898 590763006 736287608 963406451 686987270 928329032 725229817 861084978 160830629 448163596 383910451 502486829 710340197 945601836 702537578 727387977 858606610 912813804 109738897 293389543 231607256 461422131 524655034 767963462 401815636 715784788 486777860 908951493 779423344 852803550 36809634 221631006 775386836 887456923 668311665 769297873 448226022 834713482 56415086 244200348 689690650 955666554 623174245 969262882 203679210 471383547 963054231 965095582 646092417 997967774 204762514 828139458 421153608 470508644 158705085 236491933 449401872 474681361 351557909 707279120 668097859 773353403 755074483 808562197 712806073 738758694 337387570 658653399 386881715 957207612 678383569 707485938 601404674 742663753 800977849 885718238 717846731 724252979 173021428 547193713 497236971 632987444 442313377 709455886 864622475 894364116 62428765 797880784 921508540 978221669 852047702 979308986 361961266 530987905 817669643 824936342 472301186 959529564 357954181 759291332 399056183 959337542 912049704 922993346 278276035 961707013 269762030 393485183 898344438 965985846 459144358 953126116 469292204 761101986 948137693 973293049 353057647 669046610 816797917 882144829 965730702 968437128 893915542 928620302 907770810 963733011 210270250 711225870 138456618 839666265 15410045 284537730 284619561 391456616 478100002 835798914 343203549 446662723 348941426 747888902 907370947 987594812 672592368 924471081 600904870 880096822 909045119 951148157 98359698 640771950 115926607 593229410 888696690 940498209 31757450 160590872 437391338 460427703 511565279 601554392 689108322 931900992 170755142 999569303 940093148 947646676 719265452 791902689 334721127 795187048 233597195 329524648 426671412 825990446 910663610 969327445 363536690 516151695 688210863 693475950 479945721 561995435 243250984 515005134 883337356 896480225 230677193 737806629 721650728 900514322 488676510 807643541 901413596 911689846 794780121 942261391 275012859 934942347 248791144 609048242 72810422 188478213 761488861 958638340 344942939 969100252 95173241 905515524 475594688 509407752 123486736 851336594 673285218 681923687 803866004 977891476 343397616 769183407 752964999 767242944 912174884 917076172 255378799 605552139 884117765 919191196 879354850 890076760 41803628 292313722 986863588 988754381 229301564 404960558 631481719 694209130 906018237 949169903 524125342 540564927 40106009 469325362 886637998 896074097 700223487 847640004 872668201 893256219 911265774 945585648 140191689 299556583 523449594 792324020 129693145 588334521 555386079 623308989 846242100 936355669 660115310 937419588 3017072 641701338 940499147 979660104 454715334 553187434 578249294 917539942 21297518 793419717 980229042 985248069 400352114 609609075 896770184 982005908 479009988 849831078 674097930 976915385 343155039 594208208 593063037 839347018 826628104 841409844 629412812 744099417 33466224 104410545 295358104 422196368 296964070 614192208 290714521 910237432 999972265 999988135 628121005 937188602 479824122 973757504 538353546 826371360 254976885 280137494 496787275 751026654 130614580 620546486 485894363 774691130 442777408 576522634 509988231 780305977 580989868 943840474 322647894 528188620 209201165 448510399 634850764 728445531 133652112 757998160 524714511 888022595 456564775 530642828 297645955 462943119 972368397 987825189 312207459 764433121 626025371 915247425 665413497 739323831 475139474 852425386 867607891 929921855 958260121 988310921 317995689 494974695 836614041 868227630 439754632 988252044 515126684 537350810 713123486 889477925 649188954 751648461 236223925 587031906 894784245 930299988 679908111 820609506 713410620 889308157 347504775 427190408 680648826 869844960 908780853 923251760 986535401 993474038 301738052 792553696 853549098 967145069 542711364 779650604 178211380 193817585 84387508 119216471 119150859 305490478 28725593 106503734 505259367 741050555 270330139 689374256 246091632 394622661 717569686 839942243 87147112 538318876 190852486 820288622 678921864 905084135 827064052 834807269 880613121 914090968 852845105 951698420 852224652 885224162 44139608 621860195 786200468 949903306 125229256 553946278 117274803 518373117 73245475 533199420 925833752 976954876 692508558 878018028 854103 224064073 535412645 881533298 665483508 685480547 116961827 899163854 953546618 981700227 449240487 812039649 900987896 996538533 255552792 532653088 615181463 721870939 832835599 834116628 616229209 690578160 383214909 796025083 499602604 717400951 565100047 731660460 69149440 706541317 55374977 201491156 585533012 921415976 913839903 936221852 59827101 535409296 334668087 738824146 169172291 394363960 294692792 669994632 416930905 751197889 400784736 600589910 476317459 577055612 553177684 777233962 623810917 902892785 191876975 320563916 963602790 976829357 609970663 615289539 479457865 968197662 93606032 794156070 903319939 967789406 355592887 417158265 925751568 963194592 436363421 480519310 744382722 900687167 884109770 984500011 187362470 215448148 236192927 406113560 734219333 981610706 693729565 734847067 166712216 258221689 111865960 407580999 638099250 871212378 829996125 919878051 37385826 495146572 199744476 327573790 977827993 994877764 826662870 963728628 26090390 833098058 129797607 513697765 608373621 651421491 402685184 632575273 216665576 279920787 968608715 987323547 240172664 522539985 834422651 902502237 181728770 364515554 197470327 220965809 711174273 836193514 214039980 734913143 834993746 957573007 510957807 783597305 343343405 748494415 34318740 656552796 802762546 862758913 693496769 841441318 887136623 990633088 171298969 869789051 262232525 673042933 615591530 972882863 634446548 898166616 306409085 604555342 518725128 687145991 599921783 725396249 593233972 840204716 124420471 233841827 595996615 911807319 421655335 616480661 850577177 907254986 76457901 176014267 222397533 423143032 77711868 674297658 752217070 875548977 707595112 721140605 987004242 995314745 628886911 642495735 336890073 830796494 827840536 963458454 492158106 601522630 578116896 933233374 556724736 991538280 682476578 981537984 13551591 950569904 178908011 531235074 909783110 947242220 853211004 955335992 754954172 815358916 820051448 823030172 625588433 886648278 714611024 779794697 113716485 251732298 334080883 690035423 727303788 776801363 153711185 213244522 626459255 843314015 485167080 597900168 223901577 780513676 327551526 834707502 403497633 665855849 755820257 985566392 839611749 852175855 576045380 627573792 202358880 624279651 511526012 607896974 644028616 831067369 365549787 410908232 632236721 700284407 967321343 979705447 614732961 725889206 599016235 807104454 379392366 661192213 214634547 738567900 788928708 839448060 861648308 891293611 639568775 983578940 579251125 727554807 287668720 476057346 204916728 247139086 777993920 940093842 59233543 592370307 212230965 782323132 471528100 517459262 363046490 943851400 419265303 999745818 701068054 916683137 633365178 637914768 439464134 450387525 261123449 694176812 293027311 889556996 219641341 935107360 781052226 912821493 829463194 898806967 171556364 608529387 336334344 588863907 855685510 906233207 22782658 26574404 347889373 846334935 234494772 368005367 797379102 803881476 313978036 795929258 608996752 843328775 678254561 693065498 916485156 989001745 670959367 700467294 650836196 972952255 13569795 564291629 86581147 225261043 510233939 996934326 172240500 814161306 497917264 893437010 669566395 933890962 298961991 567738520 576001727 949607218 939481516 989470717 31709932 978303125 361020844 942153485 926382749 982297464 169455026 988514868 976996169 981579167 200766632 706923022 40420456 536252122 324953009 644189062 790538959 924896864 304880821 798121490 669498089 940638554 569720906 936294525 841134289 909912746 376674750 640099504 90277484 263442030 320460744 451396196 117672087 544775858 361560620 905383929 919699408 992807298 303695953 514045620 60496425 889035869 883948421 965639518 631693289 830235907 22314390 804196017 347973308 474621667 544291739 804785684 198626780 511706838 433928992 564422600 164989867 192081287 253214868 412069594 463442249 862170829 336855273 831309148 387494970 431149591 570947763 973366836 490284556 823718850 721762279 908512974 820939830 932518706 637313013 962671841 96657317 236441315 695806274 848807436 771672073 915792407 427896208 569408650 979293321 987457969 49772460 143073755 420195942 482738266 318437595 725011249 837427913 983847759 463907978 671722236 947756381 954506106 21877667 922055801 490539745 853014114 386557733 853887494 569830709 962382945 911840673 979895535 133885087 915797120 249655555 838297430 988720803 994748171 292662397 716848358 123785345 595553049 504363808 994409579 439672074 754692044 124466711 775666065 759284112 859655723 525560430 649904080 435994756 633397505 693711518 696077847 977189840 998352221 777837348 817554215 227748707 619327517 631273167 824331542 964886329 972704203 881968700 910157645 288276815 318632083 957946876 996802048 909001528 933261164 183168230 206752195 448754439 973027708 60794643 112903962 552860115 568224264 422801427 605494434 910745032 990108693 125349572 676424104 720587400 750625338 261438222 279209541 867626616 992906595 454831202 550436669 487239915 895647696 739673633 894169777 578339999 635171103 479344892 849191501 600922600 744194341 397291092 839697377 652310785 829584738 645644438 955002767 129863113 859537395 580324316 890625362 970605458 986176010 798529478 862848543 534201221 586054022 659185889 907950867 918313517 974017548 21490818 266041036 387594373 628770629 358771427 397351152 52873200 396799413 333433696 671509424 339573523 863935342 194527043 731920396 901932991 919966887 290736896 976793518 185292406 226780015 656220229 853810334 297640252 452083909 136632736 867563275 883698179 963371585 410444634 813882904 184971827 732675244 966278198 992787385 905396907 936198305 441654332 471590647 543738147 705323477 863718310 940458170 115366641 305090784 264082564 405767362 319594729 940123638 772954329 918432147 392892196 680767821 945700787 999779597 345026440 977885294 317261015 570413360 269653813 478114875 160306138 919488606 420849536 887423436 974145458 997993518 295794615 587906953 610586078 952040292 808450159 885562494 478870677 870079721 183676933 756453911 237029835 890449421 381975066 602028526 743372076 863807836 617055428 688131527 708626284 915360351 110068283 979207242 109045484 941836990 433530140 547898696 903453159 995953424 116078994 807957348 837212621 984648628 358603234 561099722 122064201 244877068 568880567 570020031 733199032 977272400 139372343 281143343 303777404 947444086 979240423 993390759 177672749 567508797 435398889 691520680 254982902 752642947 307252471 640441712 546328860 800048401 877468179 951263123 176931480 635049972 311390291 509272092 243612662 248738891 117028173 200448266 312313640 966587608 633340984 678499872 983037953 993273946 595629885 644783957 374396927 838521284 878717228 969635545 954051877 987249935 584844933 790789846 849877514 923302197 850503547 886350512 732456610 770199755 88004232 504618036 974258847 999522060 25411992 937848485 515606433 794937335 70567507 625319204 777637408 831007927 291144099 409773562 59353744 196212156 288646615 942956153 536358707 728952285 753239632 990404174 490656031 661117508 582621237 638776215 360811462 678696831 59371603 129412352 950643177 954516765 345260118 959089886 856424391 905870153 828656871 935365081 62879069 431646793 371755783 454275606 417887054 465054216 742804570 904531890 963437491 985597659 370387925 549392890 501919169 933839331 905659037 992735612 523398631 709869716 246682908 857197412 636280565 816693282 797254502 929053998 301518066 882263402 17715272 27434623 801659973 925468827 812038351 992627269 627239522 780105934 169234934 352000363 470433687 879686070 132649860 263378116 468920204 724159510 993837358 997894616 931962435 970878075 778694635 927296408 41668946 860020774 575647780 834403631 776044925 962581163 155625329 439538299 228503531 270593776 591058321 941895091 552960995 620774840 598064486 862595371 395147376 880851850 329729049 538034522 134485234 789762317 418038451 822275700 881441610 892053530 252979090 774501688 434424412 989153453 325800199 589454695 247442197 634366444 899147539 919936121 691628091 948811512 402295261 633020385 959534651 995272466 776071344 864667861 620928438 910146336 376934162 610885964 191681982 291911731 196724325 871445018 22935082 157757755 118835998 343647338 285566774 984843366 309414864 629555415 133062778 985310366 479297072 675420683 208264296 909518700 176919336 594050055 491556315 951233240 829286260 864269198 122115297 839354035 597721388 655963124 27273285 994575036 689106468 835577943 768667699 832105475 238727107 808704550 485348710 672046971 952927815 956310701 650428304 861198408 402338346 968572691 198503018 464976374 328816184 515787278 550380486 750751387 850256018 975639340 118770967 975267166 7209013 910618051 670221013 917272948 614288324 951613460 547333986 587800142 873428103 877680661 934947592 945724251 478420513 779874318 195193729 519020513 367410941 900224492 461542292 686207029 100983977 635619924 389114095 455012807 57103577 212785322 589657767 890220344 413676178 903141656 853011073 934424304 291534241 617411162 924565405 933652907 571826050 806652378 578790099 742109370 39429307 810282075 17030882 641553001 351200538 445055061 810395082 818690591 570260910 579905906 265746704 830348836 864284523 899956518 300569152 764994924 577269945 671651672 223307627 327257840 706426050 764462019 664418437 906507500 962398812 996887793 467924429 479270600 863439815 927257055 308408878 364388780 683561671 945308784 95003722 996229385 911976323 961163570 487976760 740570487 827703885 888263452 671373923 891694233 413710164 587170276 309211491 882661280 99485776 375111131 908852260 967070104 737489467 860798618 122664296 765133439 549497008 811851707 268393030 471299165 682006867 921393814 562453137 970276562 666948946 712437307 620529494 994847542 731415301 828778366 348339853 480854604 56943885 62416453 874870389 885951116 945603226 962015030 789854587 920521037 704501465 952446299 877275215 998274262 608890975 635876955 360433232 546237186 541858632 971522759 761899067 804778151 448443591 687363769 233426206 492681474 518584031 991919618 806773881 892464114 613163870 868304248 149825640 286692099 872580983 904172095 437695734 620427666 323105167 860545878 224447159 403041969 763085471 973433060 898295882 926118723 412889797 435534645 862423207 993527559 170819411 212272925 969267728 991175288 209194143 621345770 194489774 815167516 749962277 813554675 134113688 441335170 672466201 786823845 351795400 836375109 942008558 969056248 20451389 105450056 512315429 681122627 177726435 517743042 965010549 998391792 134429928 309754936 693458025 726429442 263344561 862285063 511364299 591979206 968833492 969411825 933550324 971907661 765371401 844958385 810781885 912192466 316623770 439028123 834777630 888198050 940457408 994015512 714895401 911193007 317580212 656774863 465450264 952367377 289942941 607660613 87682580 499846362 258151763 402257306 421336436 693183525 521726043 792800311 772447963 927705376 123364948 328523719 223483000 682967339 622261802 671803574 196136706 691978934 934499468 983094140 588176332 839987536 977799088 999492622 10317425 928628827 91209455 151449010 41540676 280007933 923489666 984448424 308250307 554410395 295361980 565509608 570569844 915736318 922344262 933406209 82630906 799579138 831245685 878035372 776064412 958718068 241002167 478441336 240817399 449465532 152178872 489096883 584716567 681214820 702549232 822707893 802287858 880229571 122897159 798828553 83852737 289643312 963055492 964092675 28918497 974224068 110793520 644831536 490666955 932643366 454824048 894585677 500060120 967296037 566720324 939016371 527042830 798006041 999485183 999602792 839415139 921826706 949132092 957615284 99237040 960797657 501320181 559359271 175709381 519314464 498509513 834441129 992379586 992627469 965834854 996356265 894265150 963660512 891110491 910116236 132537915 169097410 739164968 745778989 177000749 303549408 237976421 552612004 551124649 906982108 389157117 612516774 824949847 970924067 499393834 673706494 71892538 429813757 298896776 981376287 140085962 987657497 138935964 283695940 304953471 631648813 64934925 228732431 897696753 918305645 263790045 882462471 332044865 621187813 724901867 954972609 485092572 509309127 836358888 912023381 428026330 809002436 221844004 664342467 145404666 457536831 48806363 49849351 577568043 585824588 966179210 989200772 104658585 996801239 922233197 936866780 683970917 959561453 951670345 987123916 716058869 869463617 667604494 810774184 501335144 535131132 985073249 994356722 653989739 707826579 29409293 547863885 719497121 786171650 479100618 907788780 555409364 843959614 351605613 472575105 71901187 429934267 838250866 910458708 668657975 838630973 919541648 984433382 57614521 503997259 733468194 959181155 909155238 937782822 114944324 487774447 625464335 873336930 747309676 897278864 579227418 765743751 73446342 369836139 604900390 734075000 932110199 997261917 380451166 708625756 857879235 858911386 928310760 965139634 227051335 921817638 512916810 707660919 255181831 891595593 97061740 684441181 767190540 775812647 323507418 525588682 863544020 921964803 537990038 765946219 902698864 910144205 664469776 683753704 269714019 649279005 416310061 617942111 992534191 994757391 421244833 567020539 405775456 697600287 683074356 948630385 958011303 999270458 622592669 755949318 26248182 981137071 689399710 718235142 237958836 773671757 926376207 979283040 3125904 337717570 850449772 874182420 429840225 784648765 912855537 963651480 289307710 363378792 366205669 407107323 856406791 907469021 173368719 863196064 138037918 381985373 869267407 974345387 62729117 768768076 340089817 639526339 539561838 920903682 734230281 819839025 58786848 517998895 117380712 180745288 421296995 443626784 943294119 969239163 300593748 755805809 865437806 988919886 53157322 874088518 175221037 626514453 360446325 930742167 22115787 884830460 448624101 465422609 451277475 467802651 857824653 974404089 647749189 884263220 325385605 772287994 776306687 986430445 754713781 830858708 370093629 514955550 734002465 976813877 189651530 770135945 949630843 966934297 943503849 997365001 253752189 301244983 468691557 822508919 920372667 994036214 173059951 619798997 16628386 358276051 226199393 781084306 672316564 775056053 470363825 902555102 651346996 932871350 487893937 702801559 860347073 954352284 451882919 805457371 219627384 750519040 289571727 359856741 664669454 903043546 179892234 488516844 783544609 980047758 297805055 368287810 664195800 999530623 34405632 564959565 521307065 931041007 391517619 517459405 294658496 667579024 843874916 933355959 93353965 415173286 929738793 988309630 988068202 992637220 738542482 781006165 467435100 691599408 424226993 911891680 26880823 792480751 524160312 704919735 936897568 959625594 273364668 278996193 414104211 537546276 596117722 995612361 890250666 944010436 891293549 993876501 771952692 877751229 50784696 517312177 793123877 821873398 737199985 782655634 27854779 890788111 960782569 978815675 333259622 668151387 303865448 528946596 590569575 710711541 318812009 542760750 675368141 688610250 62905500 801198508 734054116 757094788 422545231 507535047 775951506 999079583 127396762 265373016 58159080 758876576 681541538 862181793 616073316 954647560 434844315 726493635 84206826 740224778 899947919 912062416 327274883 747375076 867773950 896023600 348289514 549721228 616793912 654684498 851060432 935273895 699002687 761443829 377188004 750065272 573718873 795559264 386091588 534132994 446108297 994095086 24730695 262331384 309440932 910179810 712575189 857204047 948542417 956659502 46430322 612773622 627227706 860261417 397721082 517898636 824431495 938233163 902614742 934071346 692085987 830383432 553075062 632777966 763054500 956866132 398736094 585470152 21277857 395183936 522137744 844545478 96576743 871477778 655573457 956527235 835879698 989722249 658807825 962248652 497133531 719432459 162618688 870799162 568777507 932596527 3250898 744847940 744070404 786732651 433078727 784965810 706136152 884013161 306282769 772303359 615003732 965435486 8543980 257046900 10001159 971090193 528274300 589191175 660030834 932984872 640625560 968605380 238518454 447634547 451695611 620784490 335037858 856119517 74969863 383582116 764199635 776231082 149997384 667167713 341371323 442070345 781160588 831213080 400215139 949288727 906141504 929218134 39223394 301024329 167655795 421830035 897972178 904639720 240082997 993805982 831648708 835034342 491989594 866255886 990937159 991107075 299346750 918613713 617801693 874906042 916792129 938899549 605013601 892778555 623861386 981059566 349566665 872793533 438771442 723223022 809398118 956212155 759155771 979320566 213837338 752477771 585836476 935689877 167817805 970333286 30660929 555006656 823843069 840463493 151863602 290343326 335070347 370976896 780224411 965449928 701911454 737091448 349033183 757278468 649486059 862423328 929671453 941154115 715463746 968952111 123695635 731992338 976512388 995337700 892651526 945569890 186557567 874491809 398706973 855119062 319736975 342599330 906849379 984349877 112639769 776008244 591623491 806052284 373532130 511714454 533221527 637369259 105932474 790226482 569859196 942391935 162211454 950922113 434348979 567048577 85012058 693515845 881123679 892271385 287885590 695701539 289346109 623538224 888593380 898891950 4480059 414199723 702147956 785984729 95760510 918086354 942333028 965455713 496843105 848982605 697691580 823539108 29703742 935067319 290476245 613803546 909421757 991102216 716817528 744600247 515557680 567321721 442999088 723660702 351345380 655601196 876192471 954083696 860281775 926954267 359667481 872430009 452971334 773667610 520520211 598754783 278603890 461152911 914935424 989676544 475462609 494785266 472645656 986867150 97596500 194351400 860485671 919528495 901965043 965337149 91649266 855471279 396491298 855380398 886237609 985615853 207847086 399166003 169477400 584308024 901337865 938449984 858765112 885953702 648420935 938612586 653620748 746076719 832351586 949172900 364964557 840745151 392078116 695620353 36229511 602879429 954500526 981972850 854736630 998349969 30166734 537317145 245797092 747050316 513082726 635343347 133337541 227640607 928721680 931167094 22562400 674109477 857961885 940432599 390503362 811672955 525591502 870548465 637610886 731544081 944345979 976049390 60229032 604285224 355408212 890616876 647009000 692916106 976665550 981015010 113956377 425787191 527517395 594571941 441735200 872959062 134696015 401186203 319971104 406491155 932564490 967026432 413321806 493896104 583442704 792870030 419347295 465353193 490025212 947992387 452401305 766717275 768512876 882295921 517711414 838773431 904557435 909375344 79394380 836811658 763747925 914180263 788473730 890969588 663048697 723595292 809979380 888498405 526411130 848707168 833167935 901222534 447880427 950216867 736636788 923482250 757524915 847130276 476469296 876210485 111083750 558141587 727759014 935078592 869958973 966535585 275279058 772294528 540939249 680187730 626982712 956887653 546076686 937955680 596763821 952767962 313197691 610268677 923958395 948971044 52338727 158988070 419236555 635366784 759469512 988808726 154610844 223238146 227534937 908336074 525650855 660147361 986719972 990300102 503531031 944076082 785327317 786971905 738850756 889129829 881556824 900719297 274455542 402915249 862134962 899923278 400703119 421873232 543537206 865725393 8479179 345841963 540996842 951638310 881372223 926570525 403695071 675825205 928641710 975623243 63794761 859241305 746507822 747183934 843032629 976389566 402327461 567132923 951449610 975024342 215849764 295083534 350557260 931724592 932371642 960989325 390489833 768364484 917981383 940863100 11965167 439731994 921232902 922218470 226293292 825460396 367711078 977693562 157528939 670515747 871059190 900207297 272804135 915707786 335814549 772534995 347216507 778933882 403732763 871784851 966417986 966536825 149780154 547068514 398477091 996960953 321524771 911343247 3958347 551465739 252587259 360637355 428682386 995627946 299160236 302540524 56360311 977633108 343856229 909124692 665288655 848105846 685796999 854015679 594491607 884413360 704981930 858891612 935030976 989899445 352083824 452541954 363463406 421307126 501507992 716929570 839431215 870364142 706845671 771640747 702791960 996228247 496945937 876177817 672936304 973043813 414533458 767856545 65052279 359912400 385407185 386820036 494604047 596127488 873504254 993697604 791287974 938987466 986681337 992171836 637068623 857420518 287549069 298115242 787793851 819902194 396102145 460735601 573765067 902557352 707450802 979867559 231236616 911944056 672914261 797832786 900066007 951826745 322546046 340287436 367758633 519500819 923181643 926870551 324309132 747060886 203202706 640918402 870096563 996656985 361534084 915420917 436975002 539603670 814864062 913128978 280770497 900027500 70539084 506242950 714250019 994433246 292031332 368168773 77075434 646444983 79948449 314647923 34742349 287411105 422395591 779244591 349725917 855876111 502545166 781649857 580908720 912199624 914120523 933905367 389315142 504685973 159413617 659225241 288535997 953821531 933364298 986807466 747552368 747781486 987691786 992946706 689011238 777393061 359253235 501367151 442476161 846820929 470325270 546803802 213614677 493547384 816301897 903429941 727494825 807019454 29408251 159929772 900090833 990215988 247135948 827186725 987123605 997474273 324659407 782632827 938718613 975596877 73261024 624977057 925872748 964471215 61536883 826196127 700077908 869377089 940836536 992262442 501506412 890603854 237369561 956774639 197883095 717105488 735305692 854318865 782875688 783809699 564904169 767321100 247517285 870873216 53385731 826009502 832530025 912805997 24769072 286091920 829361264 995541413 344193175 610442795 265261337 976801482 725736878 766554701 31857266 715871121 386910477 747416407 154866253 425633809 101853373 113760157 513516920 817473168 221447592 758550223 391406680 772584772 678318317 917189963 107674050 775862446 100272853 976670212 370634553 742139017 669731377 847340629 142518489 626369299 766303702 959181407 287698818 879431054 168125300 932483443 616095339 668725256 936215325 954521386 592233715 759478316 308067366 852711545 437896629 579894902 110879013 981357648 201624788 708512873 796291040 859395858 103215354 983542081 339874993 861554175 976224721 993649354 174623412 373552776 843727487 933901772 142544137 744148698 738107214 777618116 658054652 677295122 306828897 808002130 18249780 448959210 786357678 823713688 59341293 308133990 469267992 692168839 581665314 624090175 605961536 781909368 941762385 979962754 676254798 736677730 296751484 425584274 480214410 923061719 242924381 314673020 889619737 978769318 885420854 919148958 350509498 794767979 955648505 985316045 926684409 926806489 698916631 976642483 418990784 917487028 102178513 362653539 82484796 766227646 573415418 598657647 720139866 831928331 602535124 722133706 629646492 881876340 296813225 462298717 988408171 993956553 809841510 869542729 165705244 258488051 218210824 394818117 818078692 835639086 256235130 500639376 467384470 641124430 721715991 759338974 143484223 930856075 789721778 954513587 231619550 436153168 668220107 764662212 810589312 899301644 704756579 974551008 966934776 993997484 788506451 990179740 158858596 650713836 731265869 987712722 328092398 767028980 210278283 956294285 978868275 995410032 352942648 620088955 268494863 655058764 552243152 926798992 842645068 986883897 411285514 917904672 973089704 973805482 131687003 600185432 999232545 999583298 227189033 981284024 805234333 810441312 616277184 642076423 484773046 647515252 955933741 963466628 71008405 792706799 44478742 379937269 86769191 365622428 808283075 883526531 637435773 756858731 434128310 434287348 756688093 824924895 113810000 450444677 665471255 951984055 627620725 975188822 204207812 585532718 881584360 907562267 268224215 749704622 120584202 228300111 55994629 160889875 961149705 999632917 304193871 693210495 276391276 896751583 759922452 799832960 247564306 927656045 56918616 990258780 242504945 765303631 156906173 641142959 281105101 485689001 243113013 815189773 703166053 711380014 634998450 752166229 751139226 805215923 382209184 583135939 288918682 606675970 556320998 907133587 660782355 876766640 740541267 846428335 860821369 922999171 47970104 101121583 714819913 717913956 862621867 943821771 185245727 307308250 1945460 441718441 149035911 465284548 733563916 980743155 355251310 410092655 662491668 728225232 921429862 993526816 308137559 426415759 979094689 990059781 15142664 408581063 561686561 890102638 582331008 607478652 622984608 928327127 574052020 760147222 232568915 802289841 136125190 802220312 393275132 782534789 391110072 491115169 705464399 770852306 574912839 680948755 511611229 673818428 776452109 890906208 107666157 571643529 17366416 856279714 259949642 740387441 794582684 901545024 969288652 987451616 318418025 939059984 461628714 881882017 509280887 658457747 133261637 270803619 342164358 922743795 34945048 446914179 267284898 793567856 950568902 968069344 964596228 993001201 568025254 862103143 334157962 374288913 870765630 946591811 173899672 570800576 857079164 929044359 141116069 460781767 181260030 844158423 72663013 490962484 187514141 270054492 809041414 911577021 801500714 869800421 393996397 489281053 43707853 540781854 833034151 921499586 194730636 786582609 890062647 964955635 556290205 912622319 744705054 818653889 495424304 924785655 641701235 954376361 526321142 568468116 332499217 413133646 505925406 858167431 527900293 533266775 308153075 709478775 274581226 414241765 336775563 650425148 133813417 944559270 549760334 578844790 780532958 983331353 757212467 945637895 496331477 532097317 120910403 611721723 430885123 536910882 426952109 792069589 713493923 760410022 592892840 683318924 963102075 977898974 310510945 592615467 406737812 720122654 890932918 996106043 672418204 902288816 956294400 991511502 22597638 565593941 183286037 363528764 42835797 477901870 983610265 995750938 231147051 284385418 781442873 923033650 213882053 922267733 63984795 708872634 568542618 714766365 261182161 564597863 52589312 295299821 749358282 820041800 598687499 795803330 40639578 88308121 237285282 432056209 958890018 960457845 12129396 379695475 165965110 806831675 510225626 607563626 752727631 808204119 497437270 633330251 494647720 954462443 912669483 957613505 130899717 149156942 198098383 679996403 119171324 454212109 760746861 927764203 475679760 695619009 784159673 993352199 406320163 461628332 307365338 576248560 4405910 237892427 49418201 674513146 23552898 259369287 44727152 331236185 535481503 847479727 332039792 923641160 639183726 955720734 241651208 675972284 129008963 269794404 698301164 806074426 33788817 581816130 713380371 786100811 973630075 993592366 543710454 576405872 968726048 992506205 154710868 965150827 289765508 783193095 491857410 650267424 613114352 831282194 564434410 798234212 904360131 956956390 381284529 531218092 725094843 887788359 308744377 840244666 510134547 769816644 368090681 681074023 854955991 864395401 875951202 948106821 382614393 520007136 852493904 980909585 779002161 929670708 992726733 994864050 106054863 174669125 808433258 857120220 978024488 979209265 97389648 818421471 48298967 890140862 921131659 977251779 467762845 882740128 691661259 846234836 896796250 928514111 320030237 774349673 196568479 830735797 224477150 449562361 770110699 967295811 933306752 942904655 623560204 630209588 451979861 845366752 623075906 992887233 243089296 495604390 632924887 734668001 818853467 849739257 361597397 367710786 541480323 662076071 422945389 936103318 629295047 990444383 632303941 807290158 684840107 913828920 221777517 315560688 8777150 824881730 628285340 804979176 95206182 412535120 866481197 907982343 488380176 548947961 944820521 980479326 244634929 275663095 812753634 851845673 715608587 864422455 482558496 932688806 487963103 991812407 630567110 673060464 896957753 930635846 54850134 92538035 443992590 734085696 738943068 888420130 658225997 736893086 215996738 361191685 675415223 873495659 931965530 945101476 169578407 616211590 781861517 809452909 324618676 926650535 874784223 969387248 717874580 840137742 956166 83333305 91560988 450678713 442316990 904923313 413973333 680400308 29646966 650174916 384639187 724770021 409565923 524358640 993532240 998535748 113760967 743503526 106912287 732964930 499382625 747347966 663780698 874133233 214342391 974795102 893983598 982261723 584901353 823580835 255313298 402028827 7955556 28386558 947922384 986363323 632460428 905413364 874532801 959274194 248038742 762768044 391902281 647172658 735091426 805802862 887856969 942933728 881393599 901640923 876282516 947231675 184962747 400440096 542499394 577342378 458273495 814130032 686544019 970826060 207926079 221968728 148271031 556685044 525645639 947578802 735087720 986042363 829368499 990897295 572354945 760276649 359300855 740585502 990196431 997399138 308044223 831146890 547779838 850843083 194710459 650721394 111711449 999137396 565666481 924720282 709239622 992300257 13377521 749006487 293332304 897013580 939764391 994091302 878582007 928396636 521380730 945514338 447212212 875451137 478830709 814333498 100937029 803291240 890698874 921454485 276872951 562327937 775866040 944110465 605474378 966867670 371003561 415154179 441414308 612481809 494082284 872457748 643484048 811485861 986181023 994994885 72504214 461959581 883028657 887443742 686077907 865634457 356183387 436772397 198617023 686399168 45004898 473018175 654203637 846663543 254299016 510663426 262864465 917127200 962991877 972288800 515346154 923561016 304744861 375386411 953241666 973580973 658689848 996455883 356414432 613558396 574381422 822325519 634176219 743281995 208027722 910180693 555413771 822235170 479280178 490046517 396329821 987661623 516281598 975279562 63015660 568242062 907715620 941954800 28479518 937966760 963151257 992004097 121840255 988730850 654722836 739752786 179769970 210286918 440346654 576553290 904689597 930133620 160876717 573680549 932428408 936870489 151529771 438244184 508165816 657882861 883215229 945780640 844666093 938092839 97082379 703068322 779810603 961128965 393582068 908619631 344356538 614408205 494909629 773891946 265563193 963424193 465604204 742420119 412773966 850557743 575332962 730716832 573906585 627495975 471830478 698730041 169602134 766949608 646054067 988093518 916438722 986389055 783951241 897798493 300291800 605461892 545390371 576175098 331178148 345831456 143139375 822626875 169088533 269102916 33626144 261428182 336761606 360427790 110641296 837372236 756465259 946900666 486499985 609412526 208103595 837483214 605663504 940109247 779864740 818909717 48843696 241793510 195796120 287472802 559194018 912975770 966139753 984166962 5613055 324241024 228553882 544561980 153693146 598964612 666916204 733955125 85254172 689221011 754151428 802575093 770140567 829142998 619874144 885057918 178222121 855596079 77042866 406355456 167096734 958636048 770792355 872625248 771356476 923777262 597023602 982776231 29427903 241066731 843503527 932724932 813208845 891974731 840881036 849448407 935298663 973024391 119245868 676206856 689107989 911133739 960733676 975758239 808095251 820131125 549787333 987302483 692015144 985118960 767753373 796226238 405982375 653991112 826230307 938561320 200150343 482260779 530159274 609679161 558767047 740760935 594919643 886300169 332388400 506432503 113912117 292044795 328975349 343496285 690767354 870009668 848907139 953462883 161690304 811553426 818660463 867332388 585459001 961809185 861546830 949659456 724401529 994690021 790133320 986510486 4435051 80357811 236565074 378048037 302530579 691337217 914316107 950828622 423279626 800850024 776344473 858784764 786705367 946210934 971609603 998063645 813020822 939436006 221801446 321589746 576360704 663841673 56617544 482184912 598504454 681114695 936538001 980789597 480570047 748500968 687022202 988592305 849941170 979633852 479396113 551600017 478906831 991180163 937403531 972786920 659343793 993897022 526336433 703500831 671360475 788799396 470282476 729502444 805406610 860740396 448491191 941047960 739757834 768743666 760973439 852632820 649548523 779393035 729473504 785099090 470467760 553144287 40565786 757328531 295677680 969507098 263147602 636911949 399289092 603684653 567990576 946681101 856126152 867697123 245349596 633169055 477055997 830348383 953702189 967815189 328898217 396327501 79370045 531277474 733313359 760259210 735407772 767894382 853640765 893187983 274789429 460184493 282224838 773484878 673979404 949232927 548075081 688964132 723908663 938128375 592027779 979553409 440518384 945752668 341138147 621009874 385392887 555302702 79306660 849255375 204300917 415365048 795070189 861635200 680438221 928059960 26602999 540455176 920339601 999217939 499423081 692321507 891822641 904674241 271379383 702579100 226507056 828477989 537242840 631757407 68091029 247757836 839489163 864165820 213607994 295605961 275279041 664683105 392855409 462024510 388574503 988574238 779310505 910208920 223240792 494655749 593860911 769162521 540878025 879107970 43324992 394284994 840585455 998234875 350009956 571228322 895037067 966446677 89086690 822266056 108335049 769969756 827974823 843918258 716615573 906886910 254386850 925201723 403842000 637892234 505695659 835677630 921081526 991433319 455414197 898746579 780004583 793273751 931797674 961949142 27250904 154727969 178507821 897999910 974654289 991003153 880698589 938075454 992995857 994932237 178272229 364232235 905952736 953922776 236740323 737740171 580932636 780519911 291744792 482095584 998770944 999165546 922012844 948512151 995719153 998920892 640375760 768910207 132308360 993563513 472280170 911826610 688513072 920270682 562186640 612319170 677279330 869959828 974520703 986409773 956600964 962928401 400681028 639111215 901297846 990131759 702488984 885828334 308790172 964062602 273863895 945525125 819335742 962407714 97821005 168884793 468703989 621301181 200276921 775453405 531035378 949342270 846905790 940007604 948163453 999758879 838125605 982085883 707571312 925328011 270637995 350354225 762818933 951358555 885776779 954215049 924905255 999474468 666122806 731847190 507028927 830939600 709737171 972537777 431362009 945885537 14381259 689561385 787611944 942563083 762121370 832576057 540016815 558908449 887867727 976085908 986774138 996581902 581391639 899760646 834831883 850259982 88021610 716018714 187336411 241333247 473146475 860799277 161428948 325040514 840284298 928769030 435707140 515975899 916628987 917847031 683955678 692719571 667951373 904397493 330492645 734646431 675736306 800964620 302153948 682517525 759141119 772804776 889602241 904969973 274264463 331746210 851085325 949647351 614551033 740405566 578814619 887167535 707887850 967014689 618112208 871074715 646064160 660379397 77011704 337003532 748367524 925938149 731347271 911715754 651419996 952202928 603554066 944308237 397742542 968048416 50250885 527105792 571054491 815793387 531473584 846099994 959614267 981973532 96218981 954716746 205359666 494680678 182280098 301293190 282432568 549234173 20250307 595989558 921930062 955926207 248736254 933945749 526047153 908981374 432816800 568120777 747850151 977696716 175840178 531819185 939582804 963066667 491563934 661797982 354393853 713169860 633704126 994813595 368885333 542532334 150411344 495778223 576467792 926243406 385813550 406885879 147388968 246082082 593801285 752793778 491955626 860927582 32936720 108979507 834113514 854997870 24636434 474526367 405762382 752093473 359895773 722901322 176877996 267857449 968345486 971291195 357031708 710048212 832159261 859399302 283370913 786188207 924916295 996996463 568472627 621369423 993579820 997903064 312595203 342147021 58062887 576256407 968322532 981432540 786659216 900347153 787147923 805076445 316152076 324470327 75246091 774922929 409469042 744230840 282809210 474950434 485990937 896403208 187733736 804746995 598088118 681226987 170553910 331389602 446871293 945470442 747292796 880763386 493273253 503921203 164551469 493969093 982903503 994373096 178017287 861937101 723762623 747794499 709271577 849467711 349478717 883935795 134034056 316535292 228036829 378324859 569555352 879695614 433125521 569191497 781892828 918343059 208876849 355507678 715530559 945129414 590112860 736104480 521559945 804739456 654691123 812360064 306575145 429612896 401064483 855761472 372466642 915988759 657735167 915485232 973367590 992442733 832846389 864696171 765381308 986006884 21495411 252254175 341009354 733976762 896893364 955418936 105760721 930478010 167060 501271978 874960902 877116805 352560254 960351288 631149120 960344554 393861197 898903377 598616395 751880857 232089427 482871452 884818151 973229644 506526826 940246803 792602537 995460691 613993627 796332504 356697644 613667672 372299511 757274377 956490371 958056379 981371703 997250136 799814141 973926262 688479063 768981822 599852128 801516974 696152816 967340230 392796321 863234915 360743321 707753912 874437395 954829464 893078659 898127774 46525501 247541684 674104853 906593620 187829018 191556080 234317953 553857989 796323148 990696834 504115431 975333648 550409799 726794103 689062202 961243244 827222984 970536434 528568014 702502239 940377052 951062156 681241973 752595105 662400471 766388000 814314596 815007639 427043139 973117139 453326587 664483536 126425300 760784918 499687495 990563867 290920283 359111649 796814244 885953274 368072090 588446413 693046932 779817907 340008640 698218907 130853488 143542777 816923706 840260073 679385927 744754730 343136609 796830456 137352419 413355702 102920515 988519164 546183515 814892200 454807927 504404849 291829324 824449917 926216603 976912651 220861256 572015159 903738670 979843653 669585078 813995088 666967242 802596697 460040959 971961183 792517081 868657039 528090068 813192603 648833288 691568350 775652563 992291220 192883994 981813958 16871754 176146136 812051585 862889215 442047953 867378246 544811123 795617160 619144128 984986225 117134548 978941701 33800508 936490285 203472512 294169645 158183871 988919917 871418333 991684270 213480567 220761683 691445812 716227977 246201550 681048644 456235998 740842509 200899537 960874693 438546666 873108283 488556958 897493032 601604466 692067357 606857530 956695549 907783653 991843328 139007049 503005398 401465543 542229362 358867483 902936046 715049421 748940102 399727913 574029753 536058435 683117574 758617305 933260098 93201743 603840736 114394203 194742496 805866876 932561541 220221983 686509983 746765337 904246502 208285271 615630696 370595771 688926693 586842243 654532076 339576567 717187982 158695100 262507949 755006452 781343957 246936944 658666096 872902075 992519001 618547012 873588402 303331307 768285570 322969151 964768492 797274460 838653299 709644852 775998084 777746293 983043012 389706933 452123752 430600394 514578756 992376158 996985226 877665078 958852807 909418358 985920404 864393584 871688215 270564082 412270546 480435359 588810562 812920750 973880939 291272921 487193840 181636196 740302090 292964805 509068097 682125638 887322403 259539085 545834772 723573110 791315427 854736801 872074492 240342437 559019910 909007077 942474535 867504819 941459162 995397608 998651459 270449185 911632334 675123328 870477802 930488145 976450708 289939374 802095046 325326217 409419481 522852883 914447144 458262574 462566675 786819408 965057152 458601727 654639527 173655456 292995104 795180051 875238486 280883605 389639127 354826208 830300943 157159782 641230455 182212240 302960253 725497171 737758891 98934093 586735812 500453379 705096744 496048874 946478776 725138428 933598425 809275998 820717078 192653845 221965990 481856295 711342611 333100255 446688604 873128233 939996343 289140760 588443684 883194756 985099548 130089824 633218034 928103670 953963263 940369500 984443691 425639566 969376176 298789049 800472602 10989024 905712958 731096565 953551635 533614779 641316972 309474079 795737778 79012393 967530884 625295319 859827365 218900472 805219521 34042986 202121469 303832217 892455180 645359478 955851109 59295826 790535554 52870649 140954849 57074378 729915021 580804090 594752164 205005802 642598699 598842190 818697907 277908177 602299564 816563731 834715682 75846873 767418835 242278893 658538066 888007095 989153906 597820446 855579643 303943928 866405569 471937921 773574727 81947379 124730441 8661729 141602404 72235723 869759262 846251500 902696923 592978185 877387436 975972391 987942871 90695592 978230607 328035301 426104625 431310749 697028027 479384728 805258612 671068674 904585650 754591817 834613985 267500102 289660869 956664167 970874477 218256353 564480814 640663777 655815372 341305317 520008368 837877101 994267061 130028892 904129749 479949182 742949322 784666407 929499568 285395756 849336977 993417377 993953646 869521704 972295303 283316170 899963801 79320270 503692430 164326688 204628935 717719942 746864132 100398328 569332816 96216974 569380905 759661958 900914354 205412549 247412117 426698223 717605777 557026432 745035947 107326738 428182030 935126994 962117880 976577652 977059525 553193284 812893758 857091987 907817338 313704241 658333413 423969293 533284309 159080450 848569202 713394574 753381100 647524947 696723323 885884058 944873479 706579619 872667150 495413724 939110826 376119671 853678533 742375367 853466427 884281803 968680197 652344389 663325416 765002644 873665898 304120033 633953689 401020951 538846024 799923295 928450336 632129544 759123806 415076463 627984116 697070771 837710299 787225901 968811180 539686603 619315058 204170411 890994817 536239226 584603863 370473972 466530088 25407465 829874198 358232874 369283877 955706461 999100367 2173297 198066448 776114096 840112068 387520124 898946065 941833904 976938872 670107973 952743302 723414951 931477693 714848696 739532520 533211961 837535420 107604192 260481897 107767375 155902331 53696174 673449300 456451605 677953138 814922407 940763522 318031081 737617030 622902779 900679307 163443272 534187134 408223931 603821569 803617823 999195268 688015029 914779632 50688440 855632116 969246904 988582683 941803385 980446895 748715624 875448838 539568333 976916587 972838912 994709122 717853781 883967262 774187627 870637325 561051215 841178151 880963626 930875279 692757403 821426364 365719432 880590172 958769293 994097145 761095115 944797378 556488867 589028668 800258630 994664380 819933005 871751846 332228992 733605179 856885304 978081146 256744629 671650715 766313481 889012262 924095662 938681847 865221987 925134494 366739286 438540139 843989618 853184120 390827914 614067775 902247064 916087332 905514154 940969817 622340907 631211770 407915955 410057868 1687937 731789598 765421469 897387642 224863816 343954672 799783373 811073097 396038760 748821844 873265519 915007711 839820359 928066437 539893851 643634533 468033029 553380222 536679232 994474730 406315705 742152914 166478919 827368808 80686767 822516156 906032574 946087852 454808428 538468398 111776969 281579720 818206659 968074515 62155797 99225735 964838216 979902630 608203901 785054592 306585355 583992765 488442247 762387622 966598939 973094939 176679296 845551788 429105553 542955811 115679933 342213414 890342436 916024841 661417897 943417506 562820811 703191849 524247804 643236040 804272637 858587082 364440602 949495227 499798204 873736878 102809581 921001514 454157641 732787709 264792952 330915904 825377457 909109605 218088192 519208042 781273722 931969342 430544831 492138519 106027989 876984702 382602150 863863881 869432259 971782762 549299630 805013408 21943177 946847808 358950406 815707508 555960089 632192261 189323306 268585339 302380408 706243185 63776681 755034820 780993704 961039825 404709621 659915762 366250688 595697570 326592590 433043189 868468027 877406967 25861170 670477437 174817480 587818210 953172613 967823588 929679996 931776796 594631578 705619180 301542144 626993352 834434427 991957474 728778718 824599215 475669993 565602754 601649575 825683937 695368794 764574426 711624566 909399731 905475547 941897359 351266813 702827349 769669666 918781090 969270852 976573368 109446285 689183948 751964202 933935373 492667356 829680831 791518690 934382232 185682580 369270922 465128651 828938965 266281655 619143660 768723556 880347272 566235141 827670363 133158492 527517034 804841786 947837098 622701640 918288497 81995083 215816089 729542955 844158918 273674056 930392212 22995278 88660315 778712566 906955296 722146919 772859818 639714609 675523608 912827344 923657189 294289702 647044337 908684477 939746192 376548381 924823481 44991269 793722423 586738380 877352059 823275266 865955379 217727583 732040258 99879128 339788354 866487435 943127680 992861667 994186684 802672074 806530320 109942848 545831608 936676520 961439836 133743309 422256513 120861821 788327200 143695320 614386099 66077878 676009171 234264433 748695568 421872300 468935612 98753571 485842668 518279526 987739195 296780634 618491941 471158724 762535980 65285903 791826121 138037631 569093859 176531456 394768667 164773145 353220732 387073092 660430352 876980409 943742423 99154587 113000516 825461025 927833630 503201442 858879035 789297165 977972883 663617612 820597900 543683953 557404023 985571487 986508506 73668016 222575425 284246214 465842172 60510295 809396996 917098708 960682159 362382606 670962954 877081601 951626025 812684520 937173055 283535516 807218796 467877223 861686169 553229963 609583759 460850581 507899974 447444377 991039999 206610947 217770850 64319655 518871159 717601580 774313242 941130634 989036719 615418278 919192431 727349432 814677913 666821581 823050603 940983798 995154876 434795885 702322266 63009893 894208945 609318085 905981039 255195164 402801697 62353533 182920896 488636927 634184457 563562312 887490802 351729927 852253893 6401597 253730980 490848247 765488169 314900949 799676496 345617356 434411917 519837445 533509357 196267818 988886526 961813208 986517920 968515593 972098272 951704305 955404781 983617249 985598370 321125068 750396055 619585293 969565956 461112619 925218059 977581667 987674848 733421537 759598107 475507072 523004331 878946462 931638996 626788612 901227437 910146137 982962887 134648690 195862931 369763383 851462403 944641586 996273966 356335891 805300323 550811924 859176141 827886930 894290183 789513840 917687275 106841486 782049065 860324270 878316006 611388693 853732135 3464036 351386750 505202695 943620508 668559438 808005471 870085066 901755597 642556476 997500827 501215623 561129682 336853557 992653526 235741129 242825275 519423622 668974321 699238400 813971710 211018822 813273611 748882366 909927492 432566664 603662731 344362294 787382031 160905565 665605234 683529583 854646133 190406921 314631013 663942538 720889298 835964390 840693523 448924091 555218457 279170196 868654369 840743908 998601498 193933383 528787286 34502079 835957778 86411780 886296668 189214375 852830072 242838002 304780447 669238666 919236498 355070104 983392797 920142683 942330901 649873407 937404716 641756623 689952739 816018062 850484346 904573708 945611347 870352765 909038134 270411068 860862680 34716544 623989219 581148984 635951897 288944093 550628786 593710703 837813294 311264220 766608017 750659400 898799317 917204943 924724205 733808510 802100802 287254566 805540359 779774188 861911724 477795044 896162879 152138048 539686753 232593022 819242823 227391209 476155116 734027952 997274227 217388250 423082291 715766221 844292812 874366130 914995589 509307446 809269956 153336789 690481948 727601897 989845464 188451457 792637093 935981510 989845393 893070447 983997477 38361700 550267459 962235151 972393891 51181296 901361537 102143408 185385950 338921734 462579186 587266414 809753717 982462624 997289447 421395998 471613344 265462079 992010463 210337181 210678575 222694376 326935159 829588174 884905099 416885062 890392224 81941919 453564596 985791566 991949025 406505898 445252047 545565550 930928147 795903039 977190526 199728850 411113393 45084695 881618420 131134360 187944120 270827748 514897396 725489313 800134905 793350831 798249529 85890251 319446227 340151963 669486676 541039426 762549967 844832653 981122218 77029266 314069567 289005629 749974654 884510447 936413092 991812538 997492579 821007757 960792893 86590444 870723362 499627902 576383240 226995339 917732085 958779050 993955197 958130209 997549148 264924392 426801483 447246479 687129165 104620734 964858140 965073542 977862477 8171586 253230277 995710799 998153481 464191139 571464306 48571407 492049268 9851047 447009600 804165465 985328222 268044945 880978589 331904387 525184201 303292130 822447404 584513069 601063183 731511916 878406221 574735212 675663288 170058160 800654948 111436769 523118876 245731453 866363222 148716484 261152173 319071438 394701957 346732580 876719054 436572710 618051200 321612532 661700766 319169431 621657877 46395481 804037433 930656016 949107782 101222780 995898032 80771893 514032927 898898446 989141571 154557295 615276764 184615181 893246066 933116602 995227390 451795408 938070412 726431096 984188590 230471532 244983128 562146011 925396308 823827406 912008049 348564767 366768655 704424154 838278195 446103462 616037008 106677915 751049059 29364005 827911285 607908642 664661058 654231077 992092410 827696182 874617843 805150596 809195379 442725012 758905544 450174157 996966963 79864434 563106570 453854546 973039701 467186934 835609774 908355957 923454958 53469831 227178219 597308911 886129087 555267130 776449360 310109936 463845783 282731082 833233286 729806079 818031187 494804392 588984965 255578658 954235687 156667810 540202287 465421476 596849548 921667489 975280276 768933499 769889975 750368200 919818062 48944958 741450325 999601893 999901622 815492791 951522917 233436946 622270094 608420108 726804766 418893799 771711337 757960658 795958993 687486734 754300839 791420421 908631541 71028234 611409142 553035344 665242626 714292545 763659846 54699435 655330864 193107138 203446503 458188341 909453787 580993576 750866519 195337255 345426941 538989677 772262633 626897687 811811563 387674503 938639754 392750555 451804186 660633372 943659666 944552572 980163307 874348419 972033497 529928169 951001423 885639663 889055663 689275757 741779359 330410710 630958086 512162679 699509015 308513012 812373799 920054948 982673022 71206016 619485258 891898025 958330875 837232085 907317475 734372335 806886938 712554347 944261792 200603775 687140593 133127050 413801774 869280621 976637234 705998913 966161116 823763810 908821711 138098878 526487171 836595943 877878378 8285894 853468726 788599612 982082967 873772051 878162452 495843118 516800179 973312434 991314013 707654999 748890845 992916686 998230538 295140242 311259980 654404045 827194418 153197208 285572635 982224848 998115559 290508996 630996088 955920796 958741727 245950585 870157316 216347020 554699121 788967469 865129590 55879937 897236157 279839104 740611767 276260572 614759351 945950787 997857398 265626181 656606274 631309440 753918004 31407187 816275638 849904142 857030299 752235696 764465893 931330663 950886941 141197533 562378523 532435959 623203073 762553660 840443028 719685721 840699438 707563453 945901942 923902290 971082772 900924623 991484347 991548047 995791250 901559130 968374645 186914424 922674866 508674052 880487800 257492306 549381909 493040848 919958891 650795153 982930839 4348041 401147679 888776936 888859413 24794875 763711076 255183246 685501902 82168512 801973377 623437055 821324410 209263706 543753829 220537429 925450008 106716165 851702469 951425278 960434646 475792729 615769368 327124806 650735030 949416780 971649733 935025006 995183302 411652603 678636555 365092907 959049717 515561328 849970215 512045861 789200034 675025689 786131478 983951884 998544056 519755220 950973603 912451596 945748045 409476187 978528758 773200558 964425276 886016399 922695066 467567717 601730348 258033034 818275980 92517289 880686787 641891881 835892182 559171077 706271327 779887045 995687581 388423454 734447479 448099283 471834609 140857030 359832814 494830392 974864676 551370726 896818464 646529422 735893715 401838979 912950545 885899650 927761594 672398702 978740587 544549040 571303530 986987207 988283635 985502851 992578659 278537558 596664840 647006693 824025634 713371443 779960275 4880733 889422183 811983588 974218350 705162342 977522873 774910008 930182134 706754878 980628417 133434132 201571866 251565932 255669100 841661027 858531714 111834392 405194210 750607999 968647582 129245507 938497290 473761285 748104516 657861037 909726170 856340666 907654193 387954731 697085576 826460058 837544475 992723542 999952327 482329245 875271613 558124060 915398647 203882318 351899094 98252578 704619139 518106629 876006085 472172595 810010506 764725100 837897942 616096558 697483937 682683751 862931153 56798401 526543541 286221761 700700168 600246748 971958115 854253847 906171707 602821166 984361012 625616467 851726495 232176526 568009062 758605442 922772919 204884895 239186433 736310748 884733447 284177109 875935897 697139707 712844854 682709265 746041252 200243200 621400560 110514652 604947863 858429256 995145995 448057606 943645330 834863487 911947273 471083072 890032890 361540090 624453974 616666150 952242631 481690793 880434645 923389363 980627092 740070842 915795986 328681320 576818886 199213116 751284334 222615185 603085727 279851557 911131729 681368135 984706467 410791661 434401537 307290009 402393200 262223092 721685908 947559547 987341717 668127880 752099455 134457101 998820237 577005960 994364954 493609018 937110454 271055399 523345638 929887920 946499402 599431461 740325116 904590047 987504304 842369827 908345623 142013361 702570247 591343629 804470958 128115205 238382183 691409681 811907804 576243373 823612136 485606756 706797991 990875972 997611717 335274260 730457034 730266171 826442415 369278392 750849515 752785799 902147300 566574384 801870423 181504638 955997521 328349806 840940714 291337690 914194048 922917314 952971869 567955582 643398091 950800742 961977005 60918490 714325469 251054204 484722366 902530244 958219349 244345723 635046870 33196608 794101711 776901873 800275257 669819576 957200128 783170378 998305807 531512259 849646194 483342692 539499252 321508791 355728421 700178721 977589633 366336006 373011606 902419883 911759176 221851668 834654268 745940472 778813786 107188215 845198319 401176129 720830279 124827686 414976921 578324513 722551635 204300881 349456447 141157633 582697793 672941109 796822841 625289919 826368845 474324691 989696332 490665574 910625708 653200844 825900195 925572874 940375123 997390302 999650255 370680016 469006034 411760716 830722106 163334131 966237639 590711800 969123489 949553586 957455899 715995441 870941749 934638735 970080585 153767639 969768996 550999403 988918388 485932089 767227356 411921962 673487070 503607808 637220610 130002403 198612242 298156229 484871463 79868936 233689431 182750695 354115049 945192331 953002172 590390557 697078063 84037613 475788839 765537223 999802446 294980322 945869630 149716389 657221567 600074482 741655221 366021903 395927951 562032721 818856120 877609457 920986558 199371697 842920026 340380445 581212363 216408966 532965699 748071247 915655098 587017506 739354806 252654639 728898854 964240618 977988686 228956545 903196084 522695666 935889667 404911500 446360576 350436196 461491226 460003830 907571721 393437673 456557697 455944468 985748795 691535856 836419029 459880690 681001036 317610866 426872414 805600028 812996459 539979792 761867346 360038177 733245276 589068608 801618071 434748031 914404301 243728979 407437781 148225404 308064056 561666012 991375321 162331755 566358986 684280282 784012019 316124805 912104920 107900747 946766018 969446861 991970092 201274921 364053523 298307734 736592161 420086112 928414105 408481165 917551678 189562646 344185891 299695488 949314306 600713386 934573174 537811272 773841884 134927154 530423927 626220525 874629420 508190043 650563720 36475713 335006239 632418955 988662094 659762068 724010294 124078810 214948606 840037802 890580788 464356657 752920341 124967865 514249059 11332322 508115616 33800472 361635195 515417443 982787555 705483471 984590429 864489413 984005496 387703566 526443258 152258448 627660645 7970873 415762568 957146405 964867468 570560368 595713234 192152847 673968836 505736117 811514106 451781882 844865452 703865133 835830746 536331919 949650197 848526783 940391435 645986355 655027835 705345484 912931507 384332470 939746432 456804335 849317531 321408337 716053289 747130993 782122627 389510992 526696879 308764906 794828629 690480855 853766546 697902296 848658448 664685136 726115987 424774722 815428991 527462765 557333861 254280547 542926661 830460681 950932541 400368899 706131278 967908738 994799576 211150125 506030910 875372974 978212601 518730574 820431328 602810926 791511637 941089193 943769731 538314439 608563395 401417002 643030675 913001108 999580738 569760398 789139430 668861735 984250326 636318436 822436269 434986705 861545674 41790688 700772966 157504953 511582703 246298512 382346521 78564370 826298349 943948713 983922325 450751147 726943802 556592800 703609035 54748579 143473093 422563038 448484546 703793477 840000659 230367043 397162891 288314942 612287692 644283779 674447093 383639356 854899627 778997297 916451728 754977614 811084094 967686628 988565546 151440256 511371100 714974687 928913206 511194801 591640398 779846516 836130318 396202652 410873782 266294463 462505110 281496679 539068822 77865258 155622911 19094283 405698808 593758491 708378095 888303551 976166565 192183321 286549884 693355536 953921500 893560143 935109983 724573240 833732450 276015865 352330548 498138076 539448049 623171216 875342320 590184214 759979624 102393442 342265419 553991863 914902550 388809052 645791307 327721036 420755472 506407499 928691512 266541249 548941175 930293133 961786273 386725917 948856093 217306876 966250135 126587090 822396837 166449778 536363164 195929384 377181534 511998097 796849197 895220937 976994625 497294347 988353690 27438951 439851235 179864248 885485014 837888479 848111001 505089275 511380220 745427883 766005309 142944856 643601223 812665426 996512965 738380880 932880942 469191471 935684049 753059685 846387525 908928652 968525421 351348747 914241311 324275485 694919185 718198654 842436472 10916671 898273269 967801853 995627930 675855913 760769607 974059753 995454876 639232457 840030564 635729833 931075399 383245978 888472435 609553617 872656731 167004961 390900022 332836994 596263126 374148694 567887820 60317045 665948827 797203308 982094732 339363124 750938909 46883457 522232122 639492392 836137218 298072727 861450179 814643064 956556464 232992998 814492114 617756912 879070810 797089940 884354333 664601392 982753905 479301174 566716062 268338771 445910526 779879394 910658129 533251297 698979422 441894166 830286203 881483210 981398800 349269420 762379434 293339740 820545255 770128754 898242007 907410537 950858862 577738916 742777113 444593216 822130730 795853224 909716908 550043187 634465738 473810887 708102993 311735535 724599177 671792570 852882078 898488230 963266023 116524478 880554470 37653682 709837314 936196669 941761655 122815946 949256821 512569701 977203168 631750149 909225603 541786188 771614723 562360430 915023329 772876013 939415916 203036241 943865475 606427295 668825529 975268013 986146145 361341331 738903242 559641723 928044910 41981485 614996675 564555217 992254503 266505841 654308225 629611823 841533553 844180209 859923369 591232627 814084169 453909509 695558138 492403527 602461996 435805352 556001281 673984982 721389088 165875937 227398545 929446911 961057947 338385076 571865857 621299161 697456562 572430515 818347198 713874084 974314971 992619865 993122385 176674640 899407571 802334215 977477938 31219960 911102175 395973232 946563074 954030322 972247584 417955449 536876317 266893557 582184971 699974906 720403270 915070056 948027481 83809308 141653631 118004917 579023411 230875266 576589011 75125068 722049821 551800199 985701528 332647023 602559516 596867673 789794683 66175626 976963254 295673140 538556182 773210646 887614951 884381782 984963537 692679661 758153736 990637446 994101318 528607608 656545557 595271299 621609211 957896530 999913117 731370950 885020856 941168019 996575626 34086616 720882281 53499201 790482094 830844580 902634865 969487474 996512409 388313980 809161084 482617022 862319238 478500627 564668577 960071111 992222771 197842448 590343579 75352197 406219444 735205808 803662760 68010972 948702832 127976346 832703788 253803407 841499119 143504798 937756042 919898629 958204369 353005639 482261170 453314604 746167807 458716076 665114691 96149873 361031138 841613136 906695273 555885180 722132424 300819043 344398975 483837514 484975615 852735465 976356474 298951475 381196473 889395180 932506777 687086121 881470383 995968957 999386109 930922627 957081094 566524190 879140238 883988151 972612052 299289664 441438032 691174682 966683119 89259868 404318720 102150998 149221841 186847849 974030295 63282968 99847537 642036893 822373998 818058045 962794425 266405618 876388677 161732417 623099514 87345704 751759061 505945226 564657942 889809564 998396273 359320143 736442970 641140265 822117154 46127366 173918371 922365468 938148160 447344480 762005115 499787643 724684237 978012711 986314571 315062146 796013273 619578778 996735386 327265649 478113618 145248286 769623325 137813000 653575731 852014986 928147027 749817799 764339661 186303038 966393300 255918994 390409594 939838277 979169767 42599043 455740244 267367831 875398520 552308276 779802852 220286375 749907906 645692335 999279258 175822365 534356239 841474610 989964909 815615353 825379794 305822452 573509619 568985695 788699201 258130820 481273020 512741530 614254816 503116917 649055674 818505377 938336608 719588743 924348329 223261808 397438440 776133083 837029073 185252784 263639593 547892571 671302779 113981395 273694923 677752338 827007060 60322337 577197529 34034412 207485697 963065110 995121599 469983357 696666285 847435952 933960322 790036690 834511713 777760129 899622470 375707473 676944319 229895441 775607611 151069397 375420260 109143139 237122513 31347850 936790062 836171876 934196668 85604238 529601498 573697919 761460627 865219800 897763280 112310596 521451922 735385712 760808600 242008201 814916482 908263732 952880106 803097961 821657851 803752604 842896234 402269634 568299345 838280997 932680069 814147679 960103183 759738265 887186420 56910991 658203643 406211340 911368032 309322520 778040966 300894218 950590708 294665905 711958106 637111529 905646437 5202221 688909752 841312804 846337993 55076497 420165222 889074077 901350950 129332773 269899282 676917225 901759336 199951054 643729508 557922323 685856115 697686048 860193815 586631559 766475418 272772030 543837815 667360512 758208287 983634662 989008577 726100791 979051441 556855184 590000708 303999775 307364969 377973955 709144174 781204753 974606945 378402503 514929629 218406488 232120808 237440509 772325216 134008303 186815461 361844905 754898827 704105132 723630012 572609012 948670033 271536017 303564700 989564857 995100116 981819432 991232045 782497865 991784640 186415193 710428744 971473228 999890403 603085967 887739295 264151811 879857243 447336265 818325679 523035316 993798568 964463271 978559844 693042093 798343513 958677291 999442070 703576674 834576080 900501314 932332108 874164137 903708920 32182397 799952870 958453378 959076305 209656287 813495948 519437300 626599548 20758741 408019769 217719633 820230447 484474076 980769060 990708358 991374804 847725461 993242709 532221100 758379842 474881991 728499540 231740262 883123843 534930489 581095210 212239186 963104019 899042935 984941603 722098520 963144248 866839200 914407285 433592462 578342772 84123993 603201831 946711615 991945061 145717216 526948129 774366443 797422709 542333798 783740459 473188135 579569094 444277105 991829729 575684232 662692390 724179704 807804132 290933633 582325055 628048014 636071610 817232552 995451702 983417589 994541396 958445267 983972930 304692849 511385475 88498799 455070351 474598652 972567443 216902725 447484382 658102011 665134405 428844332 652490764 878805445 950485030 337117663 863763386 3744138 399329612 986112336 996545444 308807790 480954946 254347321 900731048 433882728 437484858 708119980 871558024 597497988 862817541 278134882 597578069 675070248 799290617 718675838 722175006 184626980 728013590 201166517 909971294 158083947 218864776 602258250 975058434 288488933 913424153 541705649 989114159 479874014 814761352 640843595 898056369 845267688 986333631 237843620 366368419 446479857 896704423 91739708 959096998 135457055 566412404 557167988 849308396 71650530 428123754 171917745 711740929 667864023 734264620 748252337 948663154 521593124 658131898 820218005 929529735 337764247 508312225 929025008 983970426 657463218 903916750 846394496 871417905 836253419 912964313 955032787 960405395 893448595 942596776 776873731 945833202 447308337 659954946 15159300 411256926 278610412 847875179 245717057 835302057 799459531 961639527 997820824 998980697 115655633 863853332 17968308 516006211 389455141 416791902 65810175 919139162 426742186 451189929 232106512 700023711 61828871 215236522 918507653 952229642 152832847 376993912 529171985 938999216 7490730 514964679 397636886 435911829 803248620 823487823 775514281 902365106 56738165 972189371 501991654 839594128 373921161 515764933 533369896 638791997 540208791 583125364 240222399 257237309 319998633 559244462 508476122 602206942 656818301 796979220 541717816 643570421 544433444 550829773 802123879 860584959 839853913 865124452 387205803 884064747 663388865 899298682 545128017 834966863 405108478 583014088 389668879 695258653 617499953 745326915 615464258 793801692 340074391 680005144 906550339 993258907 127932486 910759260 295123821 996553130 950112984 981802708 485186030 934141827 960746090 963141680 637590826 859878640 435379830 477959200 981919918 985660342 669489148 727461005 258113100 509582998 781906501 834860280 91951237 897231383 284166350 533572059 213866535 748573924 780767224 865472988 916715280 992189902 39850611 230481563 55596498 887475454 356781926 765060624 400509874 738243812 449680249 848433705 264331709 749467772 772186063 837931694 350084644 686166161 239272007 860447753 584513059 721875724 219383693 945152295 960143481 974806598 405747310 569907370 468087334 802910753 351382147 610194419 182792531 332005182 438338721 535034254 113053434 708357054 306059366 573616706 710868064 999488594 71838822 831392303 471936527 653671051 972665225 980079171 289099296 297655021 35169027 699582835 461164063 515970695 781842986 883933830 952738546 963123300 619512960 680668286 517278238 785626230 604252715 956462992 31228813 421652283 429845270 924153740 817294924 943267984 306127728 481626380 289844138 750581146 35001937 663983794 101829653 239356148 374866902 990304427 521751037 948879776 645642910 821250151 553545013 855881206 101736353 785655049 964461869 968293715 372213929 571232149 22123381 937099976 364570871 929112937 244516328 936111062 537546787 594533505 751758208 985785682 445352775 631362509 330458434 449184249 986208259 994187192 329223727 466306842 210628398 505353674 999906989 999912727 209311163 868370609 530796701 615630266 841487752 898431226 487838256 724436245 68117409 458576040 338137982 422324548 192838633 815432971 834755224 872483265 27367884 968169174 36173611 887992828 408643047 904886271 147710932 497421515 390128562 461951073 580293981 656926175 251206852 800741271 819060747 897855034 967565 967298693 266648964 737646769 711557045 808900225 54339098 289526072 297338035 896305060 853258382 981027613 25811575 998405703 211132718 282399552 675244030 772855614 576225528 918435388 154389283 382256434 496492758 601743339 478642835 524707075 974110425 996499471 392500315 571979396 681689967 703277101 218476356 535124316 709445111 892684422 522976274 753662651 956163003 987646600 753709341 825408280 141796120 814700727 2772287 131549016 219821616 641925378 652972934 820383050 933387364 992263339 242200859 291193596 516522296 872345980 147414897 466231480 968961569 986315213 427980960 864714755 489167105 652855214 947342634 987653099 122787396 624755815 894742676 937331331 493044913 970732195 263102257 264640955 968598805 977751796 904714131 974503165 841462645 986796769 946676766 976209074 109976934 392848766 862702834 912624189 828962228 915431361 318389332 999128222 708088180 944719724 71283453 235055780 613142557 879078298 772709581 875805391 976911229 981103592 687222231 952443758 735013323 970384734 223046901 292364337 158086684 873157674 634074480 926024774 190571466 609061644 263408875 396778804 479439404 654885730 43896975 445778161 996944185 999463964 730435632 797074689 148658519 358703379 124234414 654248141 621279864 850043799 229088979 851823587 231872734 680324312 713259348 865514811 417492066 759640524 928646026 931436032 987090148 996690743 785466346 990350519 173282616 254448843 139340717 971764974 865950980 866349270 924494211 956641072 749590279 876448371 253185735 651993397 350527768 719436698 323463538 728646579 548123346 822637885 904133538 927484319 355332322 681322044 729945098 876375777 276890725 643833699 213110060 495863768 529669785 702110589 62835155 794654263 479292681 659420337 418745545 508992416 268353097 719226300 870274726 878275790 880375126 989902647 539773997 986925814 263425799 329509017 613268392 873015826 808358942 847371219 302592427 432947435 597766222 735679732 556157280 688324901 111011035 585061038 327391928 405889768 250679105 924482854 530323475 686157969 194972978 939745296 140855065 303087382 782101441 788666471 483740950 922213458 715073031 938624643 30321280 149489646 256252569 651113786 386175241 664511421 581785930 629911797 244879342 922027329 846350354 913059066 723213694 912768354 461729021 683030323 34079476 341806239 68497301 228025672 263798695 967532245 53693456 352302071 895973898 947469843 406464987 451649829 507871601 649253325 615908639 704740023 895951785 924248379 766814397 999807109 180167479 839795028 429427156 883718420 713892824 722833610 668975944 947287810 881592812 920836739 301516363 524851982 921967179 931662948 746609328 759653726 891537833 947714381 324839049 589769839 380360015 579935438 397007825 654843575 495227113 996183522 172366344 306158385 231290934 835754323 724088168 907612303 104697852 771197275 416416651 485199980 502317711 807597458 930407101 942909146 75959721 970779193 899724871 944252064 894166818 911517258 544448476 558433724 38431619 54956552 9128182 192865078 951371029 965542102 416893718 614386066 747458559 777294716 988818313 993957485 690002619 880991907 136210255 976208228 46217489 977774743 941249888 951260166 816725232 991109571 20123318 677780369 155141350 303998898 525481326 618466830 726116653 958497715 730439574 874218601 826571145 900077791 828136111 919456335 391070041 435917961 479984797 920015779 796999947 906464424 420969760 886499653 652008783 885487031 819384335 978502903 839611135 883150831 181888338 542695209 803253771 809331073 929760040 935460664 198215247 310835237 464382701 672353409 932578319 950660479 268541360 895517009 217114629 640962143 679693305 921177410 210583205 682711133 383513170 982306393 67144028 860483060 110315549 287813359 455272834 496836985 652041840 679251097 655507136 967447128 237600900 703015371 326481584 871356262 700360578 818581626 427104726 891273929 371847109 459281341 939553071 974367891 53506297 275957540 575345214 842028052 683963352 987730181 589745063 927371056 339380728 621651928 386883386 529518534 605653340 828743715 103743197 580245826 107331366 304759996 619431210 689371376 315466568 749558298 547780020 771098287 360609937 592074326 94449524 212492385 448632218 937952324 439356647 916697268 509790931 621785167 108106365 481141473 270831678 315511359 987352878 994158154 200134712 884799458 596104796 660344075 760764805 883032613 859970135 967595770 773234476 898644219 638833183 645743180 863627896 899262858 992694595 992812100 656766225 868145411 455521610 666234296 561585772 736831603 214967109 437748963 588026397 605283141 518182545 691543803 439309364 745660750 527970270 639049354 752304061 852557315 168728169 911498314 507303927 768756456 43460332 848116488 688272943 880453716 468436249 985218514 979959001 984933641 879792002 977032264 499699432 851941836 859597112 894592011 73531214 419560782 850645029 864835851 606261695 742732011 333586134 797389537 856950314 892142167 5976163 547707574 969766067 990928030 836185689 999797018 827980003 889614855 350204628 821726575 514703343 853828211 9759337 153344862 315868902 763969491 685856490 952998063 777787458 790956377 462858067 651027486 6527299 927482875 650704678 737931551 713524677 809763895 164741383 432287896 767207897 994316671 485741935 612666162 620059863 811321971 598741298 639113317 783451265 953243060 226137781 843320661 719292380 829907681 176438651 470881084 44566493 75378778 655980337 785109503 806044387 816354053 366917581 429202006 933672290 979638900 233924045 863856068 181986927 895810807 561730482 992005039 279303728 447080462 763834489 933413950 192856273 611033904 536725077 916702109 354459777 548546235 515653994 890835872 264516027 268391640 713707501 986130213 572078369 808433137 276852845 458430845 12648817 498534594 381882753 999400435 846907891 979958162 727718872 948396267 752288994 966925918 51412797 934384230 209354133 360874173 750064378 932317386 809192394 845955663 803966323 906450538 776564828 964206290 872415940 983357589 881197692 950624980 870678831 978136753 583027521 684513588 74404790 529013400 167719163 790915663 285937159 725565139 163824193 695250386 286751571 481294794 800012427 965047502 377262054 880201577 563524178 821589043 58135411 959471281 885191285 906008439 36838702 746348920 136697126 332765500 879712822 999120786 548797602 825081999 254292718 365407443 804920749 867399243 403274173 553727999 633434934 643026116 572323946 718402388 387359024 608976441 402395588 799350606 131511574 494269845 413894975 612316255 953819030 961273078 159019797 453646443 787853379 967460506 752936050 837019812 462569282 895857040 154982068 241456195 326808760 660933975 39421797 331835502 922999785 992734806 644123228 902030866 971747648 976840733 87806287 845081320 59502473 832655468 967710064 982267570 698250499 711375736 321126863 817161042 705646716 754152851 312778969 770130191 484477532 570010324 103362590 868894729 485092633 875505308 456387799 472043304 451115953 926986178 619441663 997830069 673325510 892038065 772679886 866860131 436018928 620663693 706039619 802940120 414883505 626544013 31473062 708352887 873174120 911483669 859276096 928730436 844616256 923957514 947971915 948192344 352799425 875123527 882921295 895794754 679719238 871867972 269413201 744711734 611449999 927742201 51811972 337552287 208086067 749976102 603892299 779556117 837072067 913985719 696004576 854701314 133183685 721073128 85834700 686601023 607239359 936252361 59153324 409902274 600526671 960066120 996187182 998395817 5198007 313414225 350010468 683424176 810701073 897084541 175406177 838730398 346012538 495052233 1963232 345873197 751973307 929872484 649263213 689453632 32369881 162772841 305429531 900852579 143741305 225253751 531619413 618749668 898232759 903189429 907361347 999981755 52847365 846832482 413163460 571049272 403026917 869710383 127722578 951970256 20750217 798347601 746644595 878035908 709063434 843443810 694124642 812534351 97960526 125182913 122716223 908106773 299240223 577298680 181134795 656524586 58102216 835772037 354459684 523714250 765539469 862698610 468347269 601288986 660820230 715488774 169549421 253473586 690608157 812181697 217386102 348815259 974122222 974875882 16458211 677255998 73761458 196364747 571496734 833840080 382508934 608555500 420900055 672162410 822106057 920691496 980863609 996506035 207821923 238092078 830498700 980904340 593169931 784055667 473227169 511413979 548605649 880704239 601364660 667666254 787296071 988444712 575597822 959459847 915753253 983572328 806724891 822319237 720364050 822960724 907188623 922555873 263491962 741914632 48015381 229365837 924759631 955633245 577516653 614821358 665143941 719712713 226063769 492224491 259087716 286232655 576218856 980141564 802029939 889793966 960680964 991675674 802635723 834811748 739325382 932768164 890850362 903664657 482006551 908016654 489893122 820870165 251464390 945620408 357081298 693759671 120261708 267644774 433596630 891435270 394358775 700793507 730811829 914865800 699880516 808891204 911928914 931369475 993347810 999592337 695951336 797658937 105200807 191659486 415521629 883930070 482153495 861078952 40272727 232579830 890328885 958828194 700685050 724867921 492915590 648539766 792843593 809447585 448814476 870559026 163724128 417639769 466594827 488106290 204219202 745411089 669045800 960288168 670482800 827965781 744377513 964311400 172210791 558593670 231675401 651918730 162443577 661961906 935341507 983500917 997706345 999770847 895294004 992756781 959511915 967480091 314717208 915903208 151266791 841812843 57216894 947389586 264161940 305430142 179513252 925434793 138881006 250922563 248752846 407844399 693246535 971445628 448672921 917511904 475926345 518736373 757863390 897686692 576082450 956280359 821047379 841527242 481990866 490591849 379499953 887579387 838610409 983170476 705793179 730470094 629834880 756713490 274604533 911270316 478730519 626123190 820962253 927080471 216408589 377468464 848419882 852152854 797327377 844675145 759098746 760254723 395512614 940134032 756719199 959609795 515400521 681940118 984399245 996033243 425820182 849487510 141540326 609664343 238492679 994973971 185071542 447743118 921215445 941721208 149665907 771224147 808624173 891491153 911655684 978831304 95346162 210451787 625926083 702935203 979804278 997194123 698420768 971616188 365282103 809747219 545903530 964762920 303022646 984594297 651806400 687759395 788330617 799431056 562918635 904128315 961997955 998281107 408918372 664415364 86348029 849065126 844318611 979821778 445838615 760439925 238284518 934995658 526096340 776540199 389968281 517036193 302527262 611526446 870726558 929133290 951842810 974547253 343571482 785359300 850853834 966579829 460743645 545531300 98035970 312628949 398553630 844188847 432457958 824964926 853442616 950662539 72403088 958501845 635957611 737368792 110536262 690731761 472212243 730595607 211389606 371591142 286636811 534820503 321849571 866812352 702002838 922074005 141243534 869151905 506403914 951336425 455129230 892320120 541225583 568766965 729220499 784893910 956184328 961829408 209081795 449655280 725038030 955260723 39730906 915443688 514872602 918743362 317164911 647874805 176543899 941365761 348158493 502015665 695530425 802834345 402216466 764588311 523211003 761877058 201722649 860272325 23043793 280674241 967531824 978850883 580537163 605666256 33769556 990374121 368496634 763810831 829099607 950459876 150666714 209775802 309153920 761537609 171740235 566414501 643635673 695843039 690268715 898932788 849110592 973376298 856223953 869399152 772804506 924368214 790837565 984393378 655798121 686086166 892415024 944025008 877159775 891357655 714532007 868675100 942969778 985235826 867119063 969286751 923110651 943283457 295943056 786502120 203174502 635087165 741923576 961947869 950605801 957381111 331788009 436851653 941576992 994834453 667754630 742452453 699721720 718628511 337969177 957766990 723675214 998638420 820328239 994431929 22145088 808164554 8459095 781528949 716875772 963997032 358481667 470706352 980115359 988408931 697322045 728805125 966361917 998122559 456699438 675798919 626203827 960040499 256646583 770029417 871675264 988730034 276693542 554663922 985910909 988856941 119935686 977753074 293784511 528591489 464772463 914230441 917773867 942847306 101027364 529343207 168919013 361535756 519701448 902204179 431742093 695277669 432468622 989988823 33408268 779021724 362621710 529786422 129035572 831324005 487089919 581000383 112362586 669051254 97555076 200722965 834138239 918053788 186053274 392612772 342233277 532388563 568115124 628499723 854632144 871784001 75202111 963475877 413994639 777300270 300819973 851847556 767926923 858925336 125631852 605232132 544760775 880481769 703448921 910169357 839388423 873232828 241750196 328139059 564306839 872812555 370025884 653450277 303510783 509631662 705706526 995280369 33111235 268423199 751482694 824100310 546736193 908368329 460097857 676484112 736830265 866997101 428568510 732984624 969649580 992551179 30829535 709120352 797302597 884670207 930307326 963146845 96738325 856386593 557877323 781018572 419098358 817789225 973179525 990776198 739138139 785486296 658773662 735439489 28737284 747803278 353124468 917569985 506478173 609652487 990657028 992942809 471983459 854994328 550447229 755942913 988862544 998910226 623339093 688628136 656885165 961777502 454277181 554150588 911405757 996314722 79826422 423144097 290996962 995515905 21029092 258165069 407096949 899088224 254193973 259847429 518067224 702292557 760182665 792470264 407227568 889814845 897378291 985060430 405964448 984929799 553326551 913530766 784205442 861858741 113907814 186186542 394372840 424852041 760686689 914388212 931587615 986067013 796466051 859464647 591722168 880065495 757062335 775884485 231526250 881911007 467695186 834447188 950319138 995564124 658759372 752609999 720648584 986002982 307636234 413056357 200510737 437175185 276586693 349413666 50098719 525413731 191675837 687031527 984332907 990583644 29455640 73341453 839992709 846904492 983063116 996573074 818395711 988224017 782534478 967787650 689965594 846802724 517455368 877240964 128630234 762159326 374218498 913893000 102145262 555195806 865923097 968157396 86606528 440398138 516579662 538407850 160775884 844865022 975319097 978047502 3488265 657901330 859145805 983238478 716004919 966141143 662784713 959299230 299584032 998932976 482474328 701277263 40388963 959637557 749119080 751717156 857567090 892202107 80794860 699473709 203214899 968088168 18827117 476048945 547525167 755184813 336194705 951403208 495989009 950361070 544014450 882025199 163535965 941266581 755807782 952623357 476977460 676339050 782465039 997916709 372127844 834461515 393408109 813566290 88146085 318182204 255679766 720594316 972631185 993297555 894999516 999855861 715348802 740157178 825577054 981419276 947807880 983916512 913993606 954353830 8924842 613558778 593181169 759491994 748329973 782730610 940258800 948755728 237269515 559878664 90292969 610388737 422347031 913572001 156166370 402737675 596018659 640812721 830725293 965131172 585987580 852398983 571239437 696084486 879568760 932294554 446647953 987935394 187464890 968928676 466580412 690369119 80964872 153706834 516892528 899087738 552064094 867422521 243233397 968538793 314142093 400542283 401345995 548147442 906207344 933083176 549527815 743149144 48436986 682111705 826030642 839025561 606875990 820900201 118771704 709942815 735838678 827713817 563860354 855879999 500379512 889260350 566334105 898431022 137070595 606888581 336059313 839144781 144761430 718056122 5872687 354112690 408907744 643119071 539207359 928040407 284701949 682569167 259860924 887490984 377088538 694150541 39566581 846625295 609513029 870496894 125659391 650360637 37128832 779176257 89308388 720181751 355474575 711228217 915106357 946290364 483112745 897429188 250199938 907929369 274635916 328874275 183939075 263145714 220482967 647846405 679988463 784031742 489439059 521914580 515320487 683951202 630921257 708635645 708489568 863843322 736433185 998502574 718447753 858091240 535450536 727617444 398664694 408339571 715941987 854258440 134261425 243483184 832479243 847000115 261163388 682982957 901860779 930526529 232535953 485339098 616667118 994385895 564541309 918436261 948917191 951611146 61216946 336179698 684785533 724238994 610877121 975324697 680156965 905916885 261435110 837377854 295052364 882995530 735466463 813563257 525904597 531740985 100834759 980975671 426710280 561622696 720573069 824197272 410769523 941308852 12136246 153857612 379496789 762081468 598165515 909958957 513138241 878980629 641179658 713831597 306331009 671335899 846760343 872737072 208682813 663099045 391796479 635069638 126542851 931268605 817071188 882572579 569709235 967684831 341467138 344730924 563739213 709512043 915772469 983217507 257310316 680217071 229764298 745408256 63836705 284351119 55896549 312870289 86781135 959609455 887435187 905704557 108757755 796035340 597432758 645568177 540361285 985852743 854416418 909353382 862139071 934258364 632638661 936652872 864273552 994589261 929494217 968904499 782291875 886395097 701470952 989064941 45796844 142735892 932403553 944492914 62309865 824367071 971000986 975328774 726234624 780475328 842815278 856824641 609547347 920250208 751319246 899954187 438487105 994481566 898711599 957128085 306633977 863816753 216541404 480448625 596190329 905791044 744423324 861315858 171277011 537155992 741249565 803158892 114894021 847271541 736693612 791618339 879850373 950450784 293793595 812794405 339034321 920048243 676610440 934116383 657441594 989799327 415564117 538701021 759329597 947896036 15186969 285158365 100793011 629297340 774767055 876348175 114063498 888091036 498760220 517853057 115948061 921597365 966933903 987583415 144255183 506620940 66868441 929535414 824728134 977140110 127965067 163140033 227257683 375970402 209312242 333264758 626957743 899976123 532122876 896792917 586654338 911500421 435101893 769506982 536821217 680664721 254445532 600647564 224233086 495935792 105218745 175324386 455262656 653445196 598000590 840096962 895991453 986285861 714253302 753145675 581224919 749304311 888516067 953783243 121503703 941614755 828659434 910725108 732599344 839657865 96934031 721133671 249945607 467801264 386036759 684887399 637984377 954748692 373317269 461743369 384623241 500008644 654139351 921383191 783748621 880255417 398923998 924165218 715969466 942253841 950100861 991110453 288206176 829966808 156112005 946093859 177552339 326449379 845038726 879783861 317038359 995610872 697859776 912339893 178503073 446432359 192311879 336799674 505320547 712436965 408913137 779972480 868934720 946530168 155154087 454128090 648813740 799884038 972154823 975912815 511320569 678092723 447332608 906934459 344460442 881111721 903622831 982548018 804803945 943366604 87781658 537985870 140299563 392763082 154759682 588106768 322496012 831986448 420712490 858543393 556244147 743371745 684035769 739743046 997122889 998619997 177212375 264791467 348845741 775669389 270515471 765815390 154842528 845034497 116278610 734072026 951474770 951654136 647609421 848925011 688652832 889002174 906748253 971534645 533920013 848617555 449299504 564418588 442332809 461081525 429036045 729596868 656229827 787309827 832025235 910208697 11466595 94812266 565876174 918284277 381774951 853293763 899269212 995135450 794864176 981332638 281907581 467003219 495098418 679316613 761992930 806845339 360379143 982296778 360208890 405692605 851087412 886260704 148041099 628173878 340408597 805090104 57542370 145829694 537193148 979873562 459445708 869819923 127715760 815929432 96083278 494864853 194689992 218934169 640399809 909676469 512516612 832594017 805711990 913304589 759427059 828263425 424490620 830921240 952970424 958177739 920885631 942390842 718586586 780559227 949545774 971353145 771230283 949726041 825452366 971363831 869240974 924999250 372895094 427903541 973574112 999126341 487561113 614343260 447215348 453091036 640075424 921868387 856902963 951906301 119332750 774463710 671862335 798706473 581904726 726819078 723479407 937521240 240693966 641245707 20164532 609923593 952599615 975403976 603643200 633327433 517039051 842395749 88386637 991390202 140007728 441075581 102591851 842527480 694056611 697606846 682930875 891400362 992868926 999261324 299469540 784252066 977209678 988249405 841293514 889369091 431090293 497641193 711101044 819614474 873306002 943053153 703102273 787350536 350086854 529290029 125340988 489156534 46907345 740368583 867967871 902862857 242023428 447028918 504051220 698004992 133963329 415226340 570399055 673247499 619780660 897197653 4573762 562274913 842581641 927996872 898633614 924869665 592189336 744608902 325654800 656549555 541405316 800792772 808208435 926571379 552041476 610005405 390543110 451613606 885190410 968679712 310704445 321145747 594298267 602321307 272678575 580891080 383048186 460474208 853834492 980399117 866572460 998914498 519219409 838969953 325156194 377507377 961924713 985789406 802141314 881911354 294694457 584142888 374909927 741630347 868696515 910730950 159871399 664769446 715306528 761223217 550783280 778911117 511937356 941407457 571559575 629739661 924924513 973989471 142488733 611163348 690160737 718458371 277818787 661885096 107402690 371197944 343273283 425369647 56721732 80834566 408001948 591933477 66307248 407791193 989023352 999561909 464956294 535895359 955788165 974351325 5433272 711318535 436132792 904283716 284196845 405251765 587955224 683735202 609031031 727411199 603270928 960733131 13328967 107852740 361443411 586718211 257752173 637740149 798754133 924692384 840345507 968074334 307207520 959419247 633231099 908328724 116793855 430071658 744383762 877374177 772534816 865553844 837227728 903681557 429535402 884084795 774044068 966224586 863837399 908777693 340553936 368252448 888584886 959012865 822318484 850772689 3732223 92294425 234261224 562464741 693576273 981218186 776869115 955309472 952753507 954711932 418171317 489776665 583053814 959216798 271402096 901511412 267547022 587501207 526962481 942304310 337763041 618335940 707469878 768295012 755181816 858669526 956390514 957306594 943324216 971671437 555062164 671666469 136191148 420393217 75561720 160988747 830709341 896895111 353410948 606111508 76615348 576415979 71774598 802579873 317134153 619833173 523096577 955411269 482804401 552750419 285666205 317198558 943017209 971542020 506146380 703036879 268057652 807470848 294744640 657026533 224033826 798745373 593036659 649381323 628552667 890782941 174151096 627111271 24414746 742606869 449050194 972754623 597789653 789106520 170186868 959493571 374702624 505939073 362763053 458730492 160435001 853453747 356695922 775036008 988870342 997771149 803389555 985637012 823391168 951673226 347878800 463711124 437422324 929241358 169537901 614711346 328506598 713143999 876292594 999434504 239069258 741558123 117931100 202438840 242571934 806080891 179974574 888866096 897408528 966572314 462356705 711839024 363880050 491722337 710054316 859723106 792246996 852064492 936079155 943880207 701269687 962299811 861636959 867697989 21673763 156464926 971899737 993279214 581607891 738188270 822830709 986309882 576438170 960320253 405273296 459510509 277103184 824605285 745994652 750229977 298509947 806473861 826770627 980535001 359195233 598067033 691278135 939755666 415156716 955836863 227140633 903081664 591785000 873182007 634110577 762710969 157966324 919123208 678809705 991598497 999520145 999763272 2937254 820956946 665044634 943996313 59299059 697778974 765354502 856999558 190107767 758273779 970496154 996117230 795364143 855343216 937919658 998121378 38158797 321403585 256882099 479270483 36419221 846291274 824536437 877062493 54140335 816311408 80466303 247724093 745056189 772260660 784139512 949876339 671158468 949941323 204826793 982917502 220617506 891676394 258529736 689080514 150252929 686535814 624990281 966282619 435677509 636543950 483837448 677829062 584371096 900365830 770516385 793810308 58176868 788514219 158771800 338438067 340437074 852810038 110762770 451606475 992732489 999723858 50737794 160902373 227253382 455926593 713447074 970802772 220794507 322706824 647652786 882515390 238563057 792055539 137611655 995494442 268484648 851131321 376981900 697888088 138379125 526316394 280746023 485265115 354518939 585279229 623269660 868390407 337752564 639622316 799284959 952390853 210295127 661043460 646397507 670004221 749747731 927861913 827788588 896353036 188318336 421610718 912357471 995873465 656889110 943848379 737885707 946873796 663280268 827089963 790975848 830610281 871786803 985621818 823049490 934611491 770918554 834949822 458570397 983729645 999068838 999305387 309195263 816291524 649009234 909034421 792050325 920214349 739147224 946279971 112380309 965066847 996925693 998415490 554722843 924704698 832454486 910821663 953408116 968144552 230117579 536241223 540359438 883031727 194863612 324831681 646417423 856383572 511828506 931312409 272510441 821773036 788128029 821995456 560890351 830722278 641463932 719646933 956673455 987892029 87691492 460661995 740973195 932319152 258466194 757536126 462511597 808157021 76078340 411603724 797163113 956011739 94624673 719916438 954555669 984605732 177577283 221738948 992873694 993550928 7741526 169300206 71309765 385656550 167886583 496561715 975015207 997503954 500292278 552242114 206147536 524324623 258782000 591337491 296198571 519914383 193893859 434052943 707871581 717081114 998871725 999854720 868171452 876138227 483135314 516272852 605456505 644294061 867525355 956000042 862530487 892562146 427642622 782372554 860632176 991496314 263668188 574086701 820755086 893856465 808173229 855801549 228386550 621233263 458027678 777999672 758149719 858429945 870847774 903083963 608748407 833085474 202347442 687748228 966442964 979671114 443976323 693115162 676817176 818231983 316574133 390051598 751935188 769694946 425835428 724235538 438886217 499032529 788260323 976848368 529272935 868588214 373008948 735393682 768739056 769946764 531467234 670866524 504235904 570496872 227612863 544370337 372278053 644526181 375169746 462414524 688266027 797934349 600881661 828305826 934564759 939445260 453173425 727557522 760748012 828807341 250040145 670821046 994528059 998986509 483776432 782789445 626983799 664074324 999806553 999953698 885139076 981909704 907369283 978947113 190127373 385325734 524939245 815012090 841514151 948019104 261281183 639100260 347868093 615852757 708553884 809518653 173254810 425874014 72773525 706813641 448227262 807011145 843704938 865997918 971059754 981562177 725267906 863076395 442447644 918362975 577308113 783031420 50958523 615417496 856469434 979704567 808746920 973463765 459987144 644592983 763985607 931403451 544532088 714575098 133790520 139708880 872980861 921195215 85222480 969262656 686317009 958143461 388555874 698065153 571793090 764209962 710806804 740849550 150578494 638200244 810947404 822469390 836236789 890234387 674961521 797164622 735702486 817077337 369441440 898148504 793432648 808187208 73334895 518977126 234479431 402688549 911647450 990192322 504161787 892797615 266018467 270008856 719082176 851441735 33890241 417904768 97146224 908424753 896852497 960496247 270639377 609940083 611932483 653061459 576835357 714579625 367624931 684310554 344379738 428033495 105437102 664201555 248665069 883902188 51124113 649848980 624220473 816108485 19143321 172974074 491027285 607545076 202775207 225840847 901229138 995917649 262936006 392191407 494091584 888610907 692261863 759518094 210847970 440929530 527807979 662663471 454678883 639797868 554582072 565881641 957515150 984126261 383609611 768636016 951011178 985444283 332331605 787655305 291223955 497732185 769784438 926119359 610499643 941151702 632988077 851208948 624702251 891730957 778124594 935712694 272478303 468369159 88762105 611442879 593236701 854117641 129943435 573262738 648246738 734032094 500145654 501074709 350838255 869333489 429165902 831382416 120137594 924635942 228850914 824283887 148327287 364911097 649962241 770499265 900944752 932188669 639397084 956708166 505210347 770337534 668731212 672399588 969244912 982082461 735883600 957655861 411293690 670979812 609870474 900172684 948112592 965732204 89439884 678059705 184072083 706095529 894436 568858924 82842551 631365272 569158852 988712827 330288008 332179049 285677712 915700723 796394328 920324293 603460668 835286861 210731273 327862109 4219405 287202172 499171762 623899115 350030703 430448365 706397750 921903926 224290891 781092450 775834688 840273898 474677863 958495868 862816845 953393495 755799176 848293373 944387277 962338994 913535521 958399875 536610476 721041654 836491614 867876948 514660449 609012054 330478604 734950999 226112873 433843666 351662163 710349677 66293623 414617241 329149425 750757910 802442132 811701257 596608685 732388017 321325294 786596409 118060646 706144999 382848100 979404097 426036860 488027205 721397816 910793232 589815822 913679876 920570140 994496572 819326651 878905553 137751120 152191158 929686884 984908027 668753587 717059742 485790973 933160775 392107923 445299850 666063769 744847717 599676002 746044505 348678716 692807718 699990062 839098656 467179423 798555437 400143751 886814948 851418773 948307691 919959848 963201719 970181104 993056992 573881972 802020020 701238584 910747581 868831455 935296864 311039716 690759832 344821198 690444339 487009225 900050822 568186705 729180764 792345125 967879626 262876949 562223816 436920244 855408238 362008682 774977903 841199335 915726420 543697818 618774577 164744470 802575261 740450531 964420519 547759831 974834249 195899740 267416460 451238268 536992121 285582288 667548813 647148724 800017935 732555811 946940195 45879067 745161626 370417109 789573371 908529727 908851947 948243215 980963360 801087963 899372749 76582399 516278281 630897873 879630227 328011806 734233208 374300607 796719825 811845688 922393313 423564315 689879278 660389207 992224058 696715311 814035387 507966758 666227064 448740199 683055866 603536778 975310308 989453988 989631549 929526396 985966992 316007201 382769709 491970248 865546505 21592772 476399377 454589655 823067548 621857947 971534858 758194234 832786444 383698167 572515730 795428767 897149133 718842659 751987035 186777947 236391791 893213521 975964350 787913390 843263677 282530634 287399158 678775059 861708735 721992497 859809474 807641961 968800240 690749522 981426461 348232251 628001067 586032542 807526959 567826397 790278768 23532437 848718765 751010719 875493522 284962563 582968880 619269393 999108308 996156073 996659669 719461141 850842554 101488481 465574255 443811995 942559932 77044465 784817923 258844198 786653225 719399474 750182123 519650926 573976353 196709796 697822280 191325775 902160006 751692776 971284026 333861490 963822384 989392081 996096698 449642554 662293290 1519599 574724693 822376147 922964885 80724959 776496127 368457020 398700247 798117767 916267410 226573181 536301902 127327391 234156615 380873871 745732419 533029966 642662685 560077169 700988069 459639487 824568583 84512113 719516935 738673464 957728878 31372164 942013671 226801804 691878558 300927156 365022707 239992786 498666083 607354665 785018811 946733422 983900717 90589257 773907648 665648419 878929571 919862162 922837658 929713430 998278285 555676917 667182948 50667496 558363757 348119232 976316186 503207696 663810976 203854911 916396100 379922158 759351043 414107067 723240015 30520157 77393395 775017546 919651674 188643982 617448863 981349099 995922929 49916825 737935152 111024124 392636390 776478214 920650953 430751780 888820642 353362068 665462468 403926939 990501081 7416292 213590480 443171970 644190990 165907361 838628602 384671245 697884338 825975513 977138784 383334340 395259354 373969050 968655190 628305152 855023627 348231629 884658395 867152728 995490370 721352893 967029866 553477217 694307504 427425124 934741818 660747935 668880193 417485402 840098822 494428315 590645771 947468420 997969678 558292175 712652135 492041872 880315591 489210483 800423287 369737083 959626843 79783516 220626609 11969896 308958422 310139519 517898606 510278528 810108963 536263509 789817334 796720067 900206386 681431213 805556091 678076579 777015008 7876203 832162367 361056731 468855970 354202481 588175302 477598321 710178016 76804595 678218047 60039919 994256982 595123564 808897337 78419475 766733281 388391632 522864603 447543093 515165157 239705269 418864548 899910091 947047723 613681293 816181809 943161660 991172619 721896608 925176409 283930503 954878710 431233366 829406654 340779990 479473215 820019561 860774710 640787620 917941326 534392724 734457743 97405714 342354241 149839612 339164752 186954225 459238832 207716593 865053631 145768102 175435802 531581731 994796458 206939351 495388105 762029405 822664147 359511074 898313525 104152456 420830044 813644108 915184615 543504730 653675677 296452632 380138947 968177929 971992195 21844979 386214490 748644306 907026940 358586925 397391945 34576733 977896624 761183402 807300870 13868717 65236513 294530856 484923002 673974382 818876743 78836370 790548180 420572099 442751490 316791318 455018036 908258877 972933232 730305942 912775869 693363075 706352902 916144863 965171536 980646769 985258870 305517404 629393361 437148552 892851728 770459962 824031167 576793191 957472794 973671266 977175532 78247970 900803699 581446016 700048143 58973655 546212648 186124549 480104483 133387062 919678530 328282090 833789256 111156783 848413203 434574738 498436510 655955743 982858524 164341255 581601784 259648891 307063770 302209935 990885301 965362335 976077786 813386164 968201028 656168860 740739074 94477019 839578693 784837823 840597877 15974717 170935208 842099593 903452471 556256654 921749020 156610533 480737574 488726895 716256622 869192634 939731515 796684885 941272034 459855584 807362702 708586742 859885166 14058843 571181178 779731814 897901396 473339968 864801175 70574459 85582719 997774959 999531729 933792115 985072613 310496236 737877566 617966416 640945297 232365775 564772155 63300977 748064620 673519637 823692587 139192655 306608285 732075452 898261204 792443990 932637261 678071182 859731910 470075286 626431459 506705510 952532227 658583604 778253346 905896419 919449194 96306901 104337746 85216411 598908184 214017929 324554301 280334231 303465407 369771771 832262777 465200521 699659730 191773689 401600217 533271494 813669699 121479353 751065055 12347134 920491053 260958383 343146757 886489147 990369685 636474502 898958399 711754758 886842990 554903881 564091089 426525685 447925535 440514105 509893519 29533549 191523768 523168009 833989663 225663589 989705053 471588688 999469004 895052539 949614383 293528676 954948885 445436810 581553748 454030783 545180770 284865983 968248218 535724976 757358440 367616751 992788666 940568529 941733520 806294402 899350284 377054940 853570749 378936122 419392589 745791830 760065511 57315060 896498622 301294007 310897512 68438791 950140894 730807970 964383127 993911425 994197908 577196859 885867237 63215070 455862508 764631426 829752528 189662646 871269123 602252338 682480857 221934570 375842500 55307497 163806577 450982416 724458142 508155659 688275398 820101936 967102194 319539977 347247070 779460559 896230039 197589896 616166871 125782967 315512059 434822819 509498898 682160013 735897135 968772131 992816923 729939905 892142839 887382325 997883611 582322286 721085581 137507813 983369300 693455735 844240283 667488500 746448157 488089942 527802176 874499549 880478118 928592458 949879714 221946618 776815630 274636627 321381745 313027810 966779235 244124777 633463990 855903324 997321030 131916602 439124819 979938670 980906352 883073377 998509353 670227722 799773251 986245590 992169297 757484569 994643349 758609464 953036376 370436740 921571471 472163552 674444518 884185017 986416293 577025880 836655749 47843401 992670859 566206384 921472664 722739725 733537416 358779802 423519951 876105828 887533385 681345665 982996372 617245155 806310844 39740796 818019405 202965408 785021592 543541921 837614406 177679381 849737637 637353703 790787974 982423545 983939485 743908890 817992956 612525830 996073171 879481909 997730157 207123822 299308882 194527571 480964274 677503394 969214765 476915760 600496558 206113409 264401196 49095070 892067761 991853404 996005939 349448617 546982349 664477683 715812159 174895013 876212638 455400462 875095010 296772280 493328640 668918243 919150240 594896708 711668305 21732713 678504110 129574723 927939497 995980734 996046585 167901888 393481237 176162169 792114068 243631541 460722704 526344728 836107892 252465979 986172331 894801780 991389406 990618216 997899535 249860095 332306150 379766332 992248900 865425779 920789438 445725352 656007714 491307957 571742732 413012627 969009068 207535628 791618650 863859204 871445445 361003759 506713645 639028604 816039339 991289702 994162050 949140987 967941741 244253213 900860235 584286050 775217695 776228695 924959514 347968179 427968249 448630645 518942075 88712709 945275808 422473161 738492565 276342348 479510366 1770848 934715821 514107647 531035522 444787889 600048451 238730335 737721382 610426230 678288017 383321580 954901680 80800117 714497037 917580429 943648746 951323013 968201648 270211705 421737789 259099315 579742506 312963148 671537750 360244574 823387161 452735909 901663994 361139158 377730508 428789680 787562925 861704088 977549834 886617225 988114727 287723608 721489875 817725033 884646063 399895143 673645977 544618955 688302292 734348627 945430501 50135684 396609421 644592610 874233655 819410942 939641776 792333772 945655861 66958223 848424680 918006525 981435377 534474186 770010682 259262201 816433734 637908658 662276271 600948246 702462495 87262777 716599235 641269811 674649858 75028029 481683169 211562818 942501735 978692781 981141848 66221626 128024320 590517157 803438636 66421268 832563484 481518790 923547754 455037343 578280263 242536123 798475708 827523736 999978833 737540222 786216510 627765498 722241237 804652376 916922573 927623324 963970447 511039740 580382752 784863239 819552523 929678470 968176534 669647269 705356780 231775932 509923876 364141394 377482308 98602671 176099270 407585247 454859766 690819171 873752682 25659598 875723735 720224772 883112429 74256108 784665981 326779132 901699298 21776901 312244293 797958058 871282282 802787368 824582125 126580075 142140691 367063632 387494329 126455812 195689184 398274127 792465004 685768251 884906012 223768604 957047384 813287455 859994893 167141705 472965970 564924686 595888870 622275722 921564914 977422633 991745191 87819350 929216626 632450189 895858760 658882198 864916763 923075987 957483641 71433147 286481929 399038282 687631607 747423485 816100300 430882863 440592499 371984423 412137124 370693747 685296092 506103629 853750599 797717604 993283380 361131732 836249112 863503889 875736571 486117093 632037891 635542251 863428198 936234592 963108525 69682430 480023193 658128091 767276161 83485683 560778694 171828114 802858986 956376779 991836654 756281315 860966337 992458224 998689386 654950563 780654512 690454561 701895356 448933367 840025479 462149497 795914517 243994744 942712528 719109135 960108714 216372658 571073148 584473857 895334947 686487682 794486888 84510125 247745683 753911860 932245743 756812383 944060507 866688254 907868284 513684799 652037511 878010228 905138237 823666949 972384832 140190063 920474473 829658738 964608922 591315412 981711957 642591662 873573844 477373378 675436664 500423457 665385593 447879023 953806349 410926956 624911637 237472061 420224726 156435137 640082976 89018190 280075751 684297346 893388038 328926036 370824359 788127446 992945946 342460798 953591402 74854742 119153179 953510948 953534401 699959604 945755055 580042367 879232052 842471422 961281180 489736398 526551615 635717183 953309697 395037944 787653909 642687559 825076073 403606419 566969152 94862941 635284858 605475472 746662988 879204209 959045018 650565210 974125920 837335671 902921037 258725526 893379813 137209610 285021460 967254926 971569684 827337622 889199939 368273937 920037243 356443667 879521161 764409554 782381958 419010415 693690418 386226343 572912526 327697421 652742210 627049328 934714734 743491230 901569660 251397232 293411471 248596297 347990911 935501905 967263608 379077639 727572600 750341622 970536282 897003116 977521553 910512302 934464202 689636781 876057252 477958564 688576563 391205109 591530716 379286762 835926031 414995663 895638000 291987995 568471342 892879282 924848139 242571764 457488473 510851083 658101167 516320806 815482585 515183793 996561489 209932914 826842314 193291492 960032507 468256622 686095950 83138286 745287868 64363298 178850688 748733743 945221181 238954998 900205211 301135373 680470744 8168823 806068443 882510856 990314256 65108911 519710618 966868653 989659732 749762574 845419936 572060477 962297194 649576552 677197808 458619188 762610497 904023574 990839834 105195698 759227020 507215210 666225307 605766842 607860289 492596006 809749445 768179868 942336142 671252926 808377166 112510378 561956034 529873294 868695115 731778618 775254939 318171974 715055536 96647873 142064754 546161247 866609281 79545628 201403033 367651845 405207442 161949485 652572030 157970077 815849270 472687480 863684811 935788840 938642102 692861512 964566510 163384287 641618412 684398164 770368942 223340902 479823878 703888733 944413187 121059702 645494923 892673563 991342951 754894863 900739015 102111591 705441606 453641853 957269525 431785781 899818847 575984662 588154589 135846205 219200106 168800027 974508503 381427914 645694489 414374963 741022128 968447584 990145664 943128200 994082872 714314685 994161468 896930256 979842501 48684004 897012899 346277981 512131352 677037540 866468819 430164917 642540168 293212385 810352302 228452897 391978211 940950440 948770817 389411075 653947123 891758744 921623462 485291382 596713767 977158944 986371539 778682393 960599208 611319084 780428926 470337343 497607160 998508136 999414607 362818015 524516749 940678227 945590263 702394246 940768919 424431735 817099349 549848331 598021345 680444935 851658185 494305767 520488528 297023814 440543154 383813406 485180664 49181059 916103488 282948104 581805306 896904928 980536210 178171575 464496313 607074673 705423159 825389387 869876195 340986641 999291984 119163341 124743858 742769553 947307351 47443207 894393388 763130573 974118989 124893201 133240547 897731410 983672754 887735279 936559550 952332805 987919388 197324074 364534625 245583341 628982612 410233917 773716398 275073782 788298105 539615232 898726195 828248457 955869604 841540686 859898920 268866048 787630132 77490821 365592258 807316956 955329672 290805083 932525178 598201675 921331263 153027714 230680873 676867530 715036300 395711165 737595237 535109100 555968179 537273731 630902728 38915623 685319152 941190666 983242831 553092532 932900938 487951390 661640149 386798438 961262213 592522893 758477061 452277673 759661846 193720661 689226592 453518203 650194708 559273481 907363267 215696732 672667461 572688939 703165470 706653071 907745242 699288637 934134066 185613450 538093435 935735341 941955950 414608736 665099878 377179249 686660163 653998570 977111105 55304045 817722337 939292096 968057218 673061106 729533469 719666274 852259837 467203733 605127901 772922221 779835785 94988695 251510293 810714072 939646620 921206813 962769306 525390629 714485472 846741668 866388515 483176217 663576465 164537934 794596016 260956857 426368252 770601309 937561305 25913939 627993646 516596092 666580720 581843177 771249828 501447881 514203016 863170933 941741431 770073584 950084561 661639193 715069658 823751145 939189640 379315080 644746180 556028595 958402289 717622296 919881341 828730283 945675045 66739315 490476933 812889743 861361994 816658653 887049000 932559131 962721922 767204242 801632427 236461639 388682298 989620535 992496439 385110078 784948845 600626591 623334609 396237024 832229074 540776299 785103263 138744395 634678305 369684215 440664811 155161410 333698130 36406848 891578498 756211724 964849628 244064033 894444840 515473486 749387257 802768416 805539790 271168554 697130588 887338056 992957370 311418167 316993536 663940615 870786392 273547215 307969338 323853409 382204937 46510889 668501953 393862701 843280254 571303862 889696751 750244149 872774753 356799680 382735709 451612947 887214655 521827486 983436722 360002201 463280444 943607857 963484636 672735290 700899176 64514179 230876608 481728841 932788558 937779931 967516541 882109217 996954380 911893203 917472304 114747735 368738193 659041332 770197227 17428107 985627462 775000782 778958221 100129851 934802870 908515704 955533712 42069434 121217768 148644353 907343526 92329961 863779125 326876658 406865417 541443397 622368296 757865554 896070947 666932345 734846023 257775069 282688585 360164559 779646225 609131128 990137267 851369 981141607 79411247 899050798 970864664 972399463 878265843 943329268 754748325 935954932 440980729 463991383 253101000 533971047 759674565 790927919 668279701 802251059 605828423 692567168 901422156 959620394 337988841 445039847 872648047 982770682 925769148 989581491 805330708 992873966 492603041 703888983 518269534 922778881 835785175 979022400 252977305 965448507 446110720 854569555 117527231 458606207 517102186 934126773 61545068 451862206 763261182 938885947 734782758 899498180 262336754 329870346 77331788 404574233 738272916 744454922 443072557 533311162 339261647 671487133 344230338 674878808 951579530 979401864 638105413 658018675 103947239 564519821 141766319 643461165 750958382 906098025 380050493 668416152 13364768 800797871 162570019 902451751 713725112 795418142 637246423 729277425 964234982 997307733 335819421 871489584 5885386 590252304 499448876 998571642 92192820 749772524 500113531 593563973 544141308 826907513 267280680 477272281 706468606 816870200 41950191 525134638 229808736 798839993 508800712 628145482 520518615 984197026 423299263 764369303 431060808 567126208 671983030 870571266 254509090 295161238 226641846 292309299 790537840 862219214 111533995 149656237 99672087 443523455 330127074 837341343 545133253 858010932 482677347 863858006 335052823 932165647 648748936 789924002 385739185 596710990 26248637 626459183 478724724 943493195 219547012 977847647 192515376 921171859 260779692 739058418 420268902 660573285 887113679 888892085 44732068 620293130 200466445 971312269 600817243 966293398 484628048 634586264 86459481 340039668 637827035 765425181 704750652 753660741 22877083 786170855 543532538 977645046 106547342 479368549 95150087 526336262 995984641 999603868 171669182 483018305 968126392 971637137 945609644 948717253 746926050 754809869 634657654 925618710 967209199 981732172 791032964 954657732 817235726 941691872 642928569 996400211 50992388 715269293 63859213 856515588 837072471 960226714 228640417 424074797 499827619 910749115 637942587 815649226 468532386 514554232 863464742 870677332 855861377 884277814 335562514 737615512 40193357 927950314 582022891 599708128 37376855 780439142 32343099 580325990 260820369 325422783 342498707 612431385 328891969 483971098 504735817 930184728 455354232 483238376 650014484 691177798 281297015 634363981 939198921 979112055 877316537 920573429 576007342 692239311 725936107 966849634 59749688 165087547 193130945 685222738 777438537 841374006 573881231 700085986 925411411 935536184 99549302 596227317 788901219 865525568 953120720 953597240 983754010 995158575 586277428 979094858 513648372 536292269 407363366 689613210 165675310 341711805 91191389 354727035 723891895 806925586 353567241 568212142 266474305 966546492 24006301 682917719 69982999 969667690 555757249 887911022 927000699 974215560 827684999 989827324 19636697 519487010 658570310 961904553 823416137 969519689 960682476 993314660 952118916 985217556 101493570 333751183 899440408 903012997 489402869 796457074 928873263 973308797 56205365 117939340 432140144 533036365 148658980 513918644 555271851 699266829 579220751 678598752 385105059 503257510 250469466 818784121 882980651 923310735 522939543 728277896 162876009 330312495 866858990 978344574 710893076 754141431 122725470 963585814 519195420 652623721 492740333 903230643 394275338 403304621 351424139 709278544 306189085 516658937 236105760 282715293 719540799 723167220 270718852 754200246 746726406 989901320 916800431 985174471 523150690 536809249 112271293 311226198 187416638 994735037 467960367 664393169 449389141 495427241 339491122 573397807 504498287 983379847 153586139 833579478 768393524 797993129 86595928 642434819 159718230 314708643 622482487 951824286 512091721 668815224 705992546 928044495 916886669 965115255 379293087 445133805 608961346 759302076 492811765 819466649 817318711 920303261 785368402 865675632 106754503 668698065 334602192 700475974 600190495 676272491 906462225 932686482 576815414 930869930 362013534 437658449 691780017 763663533 131420714 757272116 881128561 912410023 141937067 932251945 571075900 872608025 890904176 995506140 755692396 926749434 288037568 452948318 193880606 984323097 889269359 948826842 719265416 799369294 962304718 965403234 747868641 955041258 258260786 630393955 713485390 755026700 507835752 631657298 261319358 463551534 32876375 620926115 472762266 605567561 972676376 976830696 253621007 727736943 302108030 781479621 783349685 904653902 350963520 859805615 800472405 878485972 479239368 873546824 40644849 148280267 261080813 779539122 247684395 768328522 751183593 896187954 534245237 954596912 557326265 846651383 728002132 759032099 583406292 943300494 164344322 405810876 677951119 813926165 435619152 807756685 711531926 993910960 665358381 722099668 970568171 988976724 735279187 804568587 981574060 987800021 896513864 970097991 528160133 828228847 80250996 348619501 719746362 861701304 852257215 893375730 449338482 573802510 306987369 742003740 192899072 565563703 299351825 827574400 147698240 697108158 3445288 281675795 691835097 800346275 192553569 576144838 43897117 430718456 45895135 988909801 464485551 671173545 974808912 990226878 986765664 996560365 551100530 968392784 236289190 644502318 82263491 629858930 14744721 736165452 572080769 800035394 299037479 591026872 202648774 896820134 9886016 551218603 639947889 862742332 344896206 631584144 961866749 994751139 68268937 864593914 850864055 925878367 6626748 574402860 389537382 884005291 57064310 258172752 157414232 926722745 687621363 886720957 91254866 625783898 635535593 927655193 150087589 409305486 199648727 781004678 915049291 952377320 330664531 841360274 418409990 527964544 62324960 795515610 736273042 966516481 526282354 995063046 764686704 933832561 367989782 977363084 699196501 980064954 758881542 980326406 159870 649105436 731132296 841012605 934725855 961381296 244185874 380830526 141666827 396002128 221045309 754581615 585444595 602347148 786475778 815397542 662871138 895533756 559706411 587977658 911109835 982318812 871902376 927165837 257490447 800515876 172444428 926709338 610730673 830156689 933926687 965934102 460587762 567647250 935087869 981123122 49075608 941025819 440675927 994520488 516547669 841205788 800100707 800213952 724920483 971329957 314453283 754483041 263999347 641264051 806776572 973503841 638663936 807140277 396333365 976015395 698536715 979249668 575590728 862111960 425871418 821335189 2962084 418446584 559220536 816090797 688180543 941504400 228870774 990775783 391224177 461691680 414689930 833672284 170823594 349617882 808257857 834349519 747862290 952329466 654903738 938453926 900918274 955434589 445665977 978519425 511865224 937765875 461833085 694235362 749049929 854432072 72764455 661264365 498046317 612423215 167184254 541690493 20288456 761469243 477563000 823697476 831556090 948522878 397379511 946537510 127912454 344567956 595600078 715610497 278332588 438556311 393874088 630634915 741347591 775971222 976883646 997621748 438380036 974235691 860367746 934567559 28745199 806929522 355666793 535270211 158805390 307700761 988578237 997056175 134288178 166336714 69537847 510893540 485962391 570373129 583658478 834152387 567104478 604328760 704516941 917824222 784880851 918667230 520532143 801986155 466574462 516128760 991667295 995296549 488855654 865866087 957579499 965786764 789238230 906015590 663575520 814902474 873599380 884945877 190677459 464778525 60478856 558971650 612200673 819343444 725938925 822360694 324918939 503181275 84137702 303188907 935160458 939943634 182641191 947622357 398285420 559786075 307573650 787599742 257406655 312543257 659738442 856244972 429697375 725967450 99081951 449374713 737103373 818885747 532824012 805763996 68820111 539558940 32660186 446679705 145231644 447072525 259353008 714883823 83544016 582843584 469259777 847743943 158824796 374568948 222387300 916227058 946595729 985731296 667980374 839516163 756700672 827504197 623983803 949565329 98699317 112928460 855201537 979771064 942664661 984841181 622044188 811740954 484388617 721939497 273399263 905240932 931606682 971410266 654376770 846049681 684640442 844670517 739035545 880279008 100683170 447668104 116508438 177149355 96550614 517672361 279252014 719258853 391323113 738996948 778153681 914724152 229699170 821330766 831969649 859599225 341399796 777214478 489381404 904325800 536888111 568371754 180303087 918730618 363748231 570715129 11879410 379220769 874930618 960603373 728712670 840281694 234000220 480803887 583850410 614805119 372912004 811737298 823360734 872294667 759738889 778036647 925163524 976383505 768517729 962984397 62119932 779818140 780224113 890580056 312989035 422686316 556931377 680308423 234518730 461384369 23208495 497996680 959595360 988719009 461175207 903217686 433620219 444884640 878884432 932385684 953378171 985901807 837622619 884124009 526477515 640783162 543260634 964529519 814286252 818053663 211322537 618408141 202012911 797588483 298580273 552519716 309750330 896341181 550936631 754639209 280393465 811335678 39936542 758114825 235481436 843035021 191835196 252970245 152430852 807489984 607789909 777034392 714740627 861424019 803650761 939138565 844371368 954463424 561449055 882488380 959983741 991529505 854367366 870094901 356215099 648114484 208839840 323801479 343055527 596285205 759235781 927690415 830955761 917177528 149909413 751731268 513464826 792761131 790321540 792916934 786979494 805949780 18353247 829828374 121532439 681576998 379936765 491822163 567431719 810582179 652246427 793079909 711426109 730835442 847523795 885683334 976125207 977277448 531841896 738300042 544822619 881403959 213656873 492655109 422223274 828437863 801071275 941031067 350263655 603603157 947770843 998838832 111734503 521229938 512940445 566640913 36981847 195840907 746175504 935066558 905807585 968074553 914878552 946682269 431152374 764343720 835676559 845382267 418583568 729705464 524402713 616646411 708232494 711655045 841478029 893403324 583147684 601272012 557826243 577817316 384410560 782326322 930870759 961520009 609318356 998118071 38304136 88340718 904973652 986949729 255175912 360138258 230495438 619750227 471175399 688252828 419223556 449955395 686471869 941304467 506930939 913077870 878876633 962710011 272945667 926456786 636008828 725130990 262865184 431470261 481873194 504534663 247929957 992729406 732012102 806423300 319861682 880190272 334363899 445350249 430324931 653785365 450952543 758007873 394335010 510133819 738425584 839469910 738824085 897077944 150587307 216912296 885470320 974283977 250314509 387893927 39494862 909188048 330094485 732151789 736980031 908450393 182260760 768099521 493664899 946368383 960109748 970735312 381226685 765449980 313207555 375822923 355095735 716648830 992777993 993586283 479613423 909872079 546972405 949193654 847449896 924541693 330071631 933570432 920072603 980457915 819630210 893931368 190120467 366454394 105533926 669304989 323656953 693738106 990239981 991193154 353479988 862380429 486658927 912964467 703238740 862209937 817899582 902149715 298561651 434295043 469229482 727840670 606587063 719931665 370077800 914446425 692923152 840959719 143454951 584221651 298083014 848085620 993796991 996106194 449054698 869628788 163869131 898349836 864618627 926105230 798648382 947415619 566338300 829367489 743234304 769227152 465363543 519679480 677046929 781273572 927134547 998951577 999439085 999748873 809603772 819278745 200374378 329926796 460968787 843396679 456479616 623379810 41589271 542513780 669467057 939662084 230464961 310449545 761601202 791977009 634704885 777699704 28978010 373042429 794423996 848066536 208666806 660462176 404891760 762933891 770748733 974614925 648565427 892732638 851312225 932519629 857974571 896237363 835234326 951358941 9913541 920398739 438983597 964688892 4611800 704579190 742337582 974403873 663542469 765355934 144086353 707412405 685207991 864715472 525842650 842712236 338504246 365454994 933597046 946722081 105831537 598515370 149367212 900895974 299806627 720567846 848779475 919124830 280325057 460358974 91301854 254374909 737255444 916001058 379427264 804533865 336157258 360382515 573568738 721141911 4442348 839381051 937549732 968490768 800391380 928470811 183279655 552789281 358095412 946073110 242132994 444140866 451391859 899770048 770859530 802626921 632478724 836639428 172997516 765648355 682187614 718847791 196644269 582008274 414644543 584778431 701864485 739433837 784490678 859385410 493154353 920182260 85148279 432710638 111934075 120423309 217735426 391916099 237899317 957340355 947568966 986899567 332604366 551606372 848599384 855761583 456073584 565340046 197818579 519916878 427601549 747027699 752469866 882600097 852315633 904605565 250023259 556544208 51300794 917901332 559214611 984973252 499220464 510648781 508668402 847103707 138153520 771211039 416898976 537962433 287050695 447826081 210072143 767575845 354184801 438904460 802462733 862531978 209256468 227795400 827690927 852780297 834937592 966746809 485623893 962358506 10966659 839679126 517098834 780601710 272301186 666926344 650820953 902152299 20399022 818231441 196599027 647082981 854826619 882821413 375103491 690132520 460867817 828681616 960304459 988150785 224334003 973289182 518923192 915624585 623599666 865660684 344060865 602807653 597691949 836721578 179284018 289291788 749587383 793610302 358438319 852399464 241154373 605532967 644352477 998837934 61207908 282912781 313958500 509282232 481743164 974486461 757959749 892209124 249878417 344614808 105548686 511322298 19795949 44476717 900474765 953502851 22787046 47190728 804855158 928918291 395685232 467984819 706223772 849399949 346971063 787123342 476459063 768246408 32971373 980045126 157911603 354541229 305482914 954023135 318647193 588225859 379722343 857488015 462641516 650697418 786358508 890080192 545660448 600591508 385270769 867980480 329656383 840512081 499442026 618202507 270029290 841040119 642930925 749247146 370719922 468061738 486903322 915949067 836387594 981428302 976538622 986116983 542538160 658596938 249412955 627434302 529472033 936035778 854812331 919306893 364999236 693301426 626313356 866580325 786481061 897546114 770977703 995790360 99789460 247260409 494921068 852363750 744941866 891265634 701294298 849833519 121938196 421027341 613065688 919529086 330543115 868365671 708584283 821291024 293591455 700554482 124892030 964468464 792513885 953892115 550659305 899388959 361953271 392082448 81168027 495071054 436343559 776646576 643568920 846150248 394422077 414128203 518301420 585964214 855028355 917149544 716537966 783115317 430801534 904309017 661918534 863829649 882237060 886044293 521498426 826844174 93901258 902435839 645634475 933963191 215131656 705754231 618240454 960467464 498094969 961259891 97648546 759756760 612957322 734590578 767823580 978223602 14870792 882674043 775131165 820452162 334151184 629788991 290926020 548484198 323057562 974132424 428106866 673234764 810029093 921358261 584412367 792501366 976145093 982922332 35572881 246728910 823709430 907891468 322468079 651178003 49123902 867195176 311409847 423688323 110334461 991214333 318826109 376580508 952602795 964470342 541178197 779229651 931838281 964810184 705854484 874736601 479385731 955315483 420838667 946195313 406175295 552972744 872853939 981057669 585464237 772816537 726529997 954060571 333658974 865310840 3429034 105406828 23579019 92827790 627957265 949512208 885480631 891285898 91359949 755156784 628679218 681382014 309387781 743736262 743667984 917217646 262332713 758690632 320630637 937786367 623594144 915037972 697139933 741907454 281238486 951626503 700985729 774049606 576889058 667596176 898264710 917587883 9020674 90542020 435998024 737410475 958909271 996986368 321843314 331903137 466110859 896651986 206003338 535288339 332333454 683226981 364130954 569515078 76465610 182983709 976949974 982118164 151953085 768585437 902696702 975295543 910609838 962398948 652150382 956869662 258814111 327598947 785198811 859984614 457081157 672972101 785364433 898940554 703184305 888635736 76814960 657633383 164691354 273916307 113651793 583353071 418554873 546867556 495660983 980570162 748760794 794574061 401978768 881548600 123702630 529974045 601209904 818655725 655586175 902220473 462718986 691339246 103389218 196724714 130408380 360281116 210880769 424832175 215259227 875000536 525594157 798512461 704045826 857214194 148538429 508056916 19205485 514394695 771315939 776016059 365402429 510070236 242355671 452883952 732137030 753268618 876323153 946837338 99418585 603347791 498282385 758535043 966926526 999317947 748748158 961862570 668080991 883216509 592037729 841581424 72321283 404490517 778948928 910432612 604770149 858773988 661771452 821141645 337407677 975712431 309027969 551722421 984233963 999293204 989608095 990777805 810756396 995390484 152862165 328274739 270830256 276959752 787364959 861846689 903154139 907232729 572597636 724502352 546034355 990949274 270575710 504938025 850074092 871055282 126959900 558115423 217459606 974661809 62047340 209248501 816987610 979018348 462918016 976574375 658398188 747112354 369343238 870358006 40048441 485706399 493357737 670541667 738414118 998025954 279060840 301234523 531955070 916423140 764252888 907905098 620657808 939698559 225912018 328375594 152723222 790892198 421738139 653102053 652283828 811763021 505206883 851363766 664375174 730099513 904221415 994974076 423400194 767243180 477811126 550513155 590990369 863197718 925288782 994207395 333834153 631944402 792562157 852928429 361338657 524444590 353721655 905092949 781377247 967265470 688524231 988560041 346734808 676145903 714304041 822847719 15860576 853536261 749375502 872370297 178105288 954983996 118214259 352716414 88898058 249417043 222191297 448408990 796661906 870285770 602879739 926488640 855053104 881065304 754385992 969485430 452757693 792209965 765438519 851783510 207318108 285309272 584120844 650436383 57660584 278374800 277501864 841789367 225754890 688814107 576521012 917100975 984063026 986173121 70701145 686408991 143260393 417751919 431043517 627798550 473519281 533132369 422479138 748973037 268570195 603964033 318413621 672250042 93787520 761851065 501496121 977465774 50641133 518566679 132337887 134039553 920457431 921055110 509373485 988550225 302671828 873090421 50795064 630365017 257301584 322934173 151104536 292113786 98242068 518877296 915904946 916764742 783384445 905011334 439474251 602850039 520306361 799235669 493896883 586528190 153740428 525048974 162926789 845923154 913264534 972792760 512258968 799981997 5390633 778377809 88147703 270056026 921667452 943810630 774587791 891900486 10793857 136011135 561028622 585092662 103243053 601162793 790257670 968094315 879158699 980800440 154089774 491974727 673454820 823373887 711475280 980671481 616314769 846143638 186576195 418019038 340341817 985349863 429057575 669160440 893967832 991949536 632993827 882678262 898294129 996930494 389281908 873280206 190114533 669940663 508682000 995066939 811157426 937439409 979905414 994999093 801763399 976962655 199682781 671897547 562922450 777144573 393579425 766834533 686427459 894185003 317005271 912603100 742199152 861713214 406155686 522490936 7107831 214560268 833855157 912154557 4109776 211275710 353505705 445226938 3530552 421928557 236978194 807642461 654483379 933808009 711766829 990248762 542485913 920495775 484100761 935127443 297709111 835867603 525240948 925839792 12787461 855300279 649681215 696658042 9303503 315549548 16315099 403979596 90073315 154654465 71304338 852605750 285494705 497208046 330761630 504053058 879362051 880597417 546790372 751083846 650658490 720710855 609860130 986649395 45183457 692657121 527981590 649882965 167345074 843417924 648175944 727063609 99351752 963361699 58712592 646746652 936749402 993831511 520225621 690389092 52563308 85974998 906442185 927704793 267590797 856140994 59366188 226122343 212662905 487677004 785307372 816720083 493718451 707910914 541674055 857909306 633040535 974005198 332207787 544831763 268055525 673700837 265500860 374189851 286031925 534603526 229525130 488262833 59649757 741230658 429765641 892220415 706996600 716034184 516869097 780914609 504055929 535833724 206895510 716306737 422627554 644634113 450478542 708927106 357759106 901921162 358281628 526087657 668985954 826562210 357184589 957496669 235414343 716869035 702793023 733039136 583396797 851993159 493867323 517924731 837250865 857678460 624715180 877149697 604506176 817864412 727029194 774243620 795932974 958110363 202748819 471943740 408608431 797000827 527382043 613582279 986010677 990809121 977908002 983191347 665419259 738452263 868294677 896604517 122449318 417598379 710102400 734755767 19028786 172338995 460030651 917698642 844842784 953781462 298763367 839109245 46753513 425143596 337930148 550000503 945154634 991077601 10262532 499703687 409399191 425037812 25873778 105159788 458992975 828362921 455799279 834032289 949186729 991148708 854301714 959966665 583383223 665838493 733039964 855300628 452898110 717646314 63062687 760397430 839119685 842813931 662178816 980282090 495212115 594823866 787937417 971018280 518960906 955353658 10052028 163133374 867726016 869991624 807625764 822893186 858398605 868592892 613756249 754962272 161586408 927892578 899091302 944533348 862524353 919633341 426636726 808693464 684359994 912426686 859527361 891546505 417250495 690866965 42226254 358438995 622166394 931305583 917434801 945122551 856038365 925742565 896424436 913220485 417322878 992885081 316805724 587943900 116933226 501043288 467442806 838696788 993647636 996566957 198323078 884602036 821724375 831656807 297552405 316572590 855841248 962969469 807298947 874312432 840114383 937752183 54308849 532842065 693769013 801051658 383294380 436370838 989129452 999031211 940407593 972182681 219237680 304518189 583971221 884501996 33973400 729583412 939056536 971119120 268585303 746447871 278383249 493370199 850878091 980477240 477078511 591390133 729324797 905133499 163795868 947965235 450251661 574179946 157129243 383889113 406384620 930199568 603571304 854831540 657416453 710622205 282240823 571094731 276357576 787309672 793432384 920790171 733902181 955862002 233590211 302835719 276074199 396723710 735495479 976983486 268968655 647765594 66370690 700485218 972004550 983826248 367469920 650404710 528623853 615941928 775977935 916499790 282235368 799715720 541261423 740256935 859074301 877358775 501417812 647796914 565970806 793909574 331078091 482828846 299352557 920294604 254948369 892267219 890863903 981339109 355479598 843624168 151644954 157783349 100544834 858308033 260478942 926797492 876485128 932924850 962389340 977424722 27293384 155336007 295466277 501753136 994814440 996139719 937881629 982700523 625736179 671338629 450872055 910518692 493757063 515049554 727390102 947880115 848402000 897796218 774862672 909927458 287384923 537125326 643325428 937759737 929083858 989810342 937494212 980759730 791036316 811118427 663042480 730024744 975433199 994682456 781406968 950013569 619981260 998383321 885552660 940513439 174915324 586311584 615740224 787193613 783531248 836357149 221252057 815838776 727752162 997556403 387381054 703660455 241835484 634136386 55374630 890244925 701193515 964366550 783878676 825439020 535418688 591301184 734262119 813559421 472266130 522459925 89450366 838675483 723527982 853013761 151268567 454659882 574802799 847674311 498357998 919713236 732051030 879736056 374640789 424770860 269223291 614179356 537265029 577384034 56632744 796494292 643410250 788157663 472405259 799825880 542729874 865171000 207643039 647775916 682690571 687637798 868999442 883870644 517672213 580529236 565771348 943585240 523995503 694087255 785441908 806622230 768123072 860472554 703870134 944711476 785765755 804992515 818009707 890614502 815487962 914325757 79503883 120860079 740184030 931675694 396274604 522171754 460091734 938472975 667067674 919753299 34382744 717578636 488946758 762712545 839725627 937088801 199828356 782885630 737809515 893399498 301848568 483373282 972927896 987371574 564220974 587928835 314528071 401232946 165173025 611306594 148971429 975625068 797411864 964518791 323003892 659373840 483752042 934978046 945775964 963490152 574575545 839002091 184707959 850017476 113753403 879419188 657459275 852534281 343607647 901207637 810688977 986861832 763374460 824123564 404412652 984552189 757902110 925211662 349055776 752039251 574496700 771368972 119371676 128432140 315157949 993481346 125566010 749209132 83642204 161609553 57488259 856374800 747172328 880690583 142167511 897336965 803975534 867277393 891305582 959617631 333953278 357342583 703647555 995923543 183838907 572701015 461328538 629344245 529626637 537908322 902855772 970779850 734601203 996317372 349991942 515807327 373563298 848170095 11709110 17060085 315381001 740430633 59218136 293835854 727229500 819805448 573881527 696317714 587072364 948966813 904045779 919004901 288869789 345222015 514437776 833225894 504703744 839120605 26659341 762428833 526372463 832238602 888635598 979325504 490226284 653965824 337587869 403884766 34217221 782520456 501494225 509968450 586998361 699072654 961462918 974356715 702837194 876869916 640389256 665269241 923283256 959380302 981284078 983087012 687005934 904079640 162580868 587392346 721000339 856846470 56250973 63772308 53233852 665912393 586996957 653893969 41008170 754760044 97657169 734248485 66152861 602714671 506893743 706817009 415329129 504841650 545271765 949293676 835636869 973313260 182278883 318375499 614528125 883233766 569641872 715084228 477871085 857830816 449388357 590531534 596878106 963324545 329203249 841862644 469799109 639810963 169133981 321429748 280357647 518519917 55099509 150422948 266437576 625613539 822745010 907828114 896875152 910869595 996036393 999264152 371195842 967607360 941361269 944892153 715337310 897717800 367958572 627655249 741112461 933539800 531486114 573626540 456093646 764895932 694970798 886056970 774710416 902090662 331097502 728594331 423934176 779836479 268038877 680917276 404023358 581730432 52222144 165085360 39701838 805517538 641707005 707653474 732576963 973926658 511773433 830825758 475275348 518840296 969941185 981773049 997798684 998734364 211974091 412143203 374159047 758708139 661009295 857579346 731291189 733442526 345950443 873225380 95055332 463640531 630860481 719769446 621043085 931717396 253688302 293155278 614652047 815494598 5753025 772235831 901389680 914262356 811150819 953897393 510329876 872264532 133316583 212096569 639308773 906986146 911518136 976488691 159305203 804835980 70442573 333863434 358279530 581854775 960087429 980975643 886493001 931005853 164950668 981989464 995663927 998956355 623017661 681328461 787582456 868882710 345922927 367714081 254687063 464123933 510586652 610729321 402890306 532450535 583232693 628437117 708693714 796357978 723146570 815453933 966843608 974500993 486797073 607796549 937157536 988475620 409932844 451712123 1385975 835537681 700463376 751460685 272065504 523255662 674778157 786377274 538041741 975238694 337019693 398886252 180970403 464508407 796870149 979826292 225266123 972374888 948833353 995491074 808266019 814669344 233905497 944870161 110416965 417538538 641382107 646252670 411805929 461192465 466632186 681248635 441016831 638182729 320839932 739260216 745932209 988290140 907625570 923545130 150416841 984454222 426156109 576334823 302828988 724255468 765243270 910391067 600370789 623016355 378232694 386388877 808952568 935551898 661939525 766087742 745382880 928778915 678030637 949464378 899961871 954302722 939484135 998614037 631579765 860172632 127845505 477708695 135879401 302187690 627905306 785236841 630477353 701334025 767804955 983717309 710839935 970491366 762253075 915016341 939926755 950054082 138003096 198424538 146413246 918677270 417635625 796004433 737991723 944513436 346550134 482759056 824331721 864617561 591493131 900407431 13309752 948911023 979237878 981314674 382843660 600834483 456611680 766125441 64100519 822171684 481402034 802184424 445042029 578750341 995703551 997834525 388528473 657058060 680686117 788096386 246696311 395125753 456911818 510219674 691381078 883466700 177882280 512136763 347108441 722030005 468335807 827745235 140113956 306979170 404970282 471748995 894545321 909133363 520357727 524385216 370783465 807131875 141382633 200019768 432417265 549581105 469501984 535115729 185432337 762001359 732839096 978969621 144509599 416773968 833033769 934183033 408229147 687134949 305236379 960409950 779932389 836837450 552516184 849092054 107054004 949973707 319698843 507182464 824756033 879701756 640801964 731681110 389900865 755043649 606137898 791068651 535119833 719537567 575192445 815963525 168747735 447724193 590124109 931390758 201706969 367047394 18059883 445201425 112339298 663635608 8285936 409290885 933781476 968751788 420072634 763541201 67655308 595381779 493753333 887594105 628433284 930929993 935332280 943725871 299122320 673647917 816699062 931829719 859107397 979015045 469588305 558149253 25402027 273566743 291607679 323168718 676756764 982537153 308133807 713750838 34472884 477465420 886979140 902048767 670599703 813016270 950039952 950271066 11612548 768820199 905866445 994245298 227003517 285046451 509588815 594768217 760156713 983333023 684735151 809847873 751412990 962061405 13062034 617203403 406855754 488724559 13219023 642339795 206342114 575376666 449337038 788607000 496946393 823811929 401743594 575329383 258314838 333208364 677864823 903279236 836337600 937778021 172856835 479428271 827766562 837653291 996446757 997107759 480826367 724893462 36253441 600846107 919692362 973218745 882286791 967635513 879327229 940630717 93881488 226395730 225452143 770441574 453715928 467475875 945145298 972189994 10239385 431236898 269524236 450840940 582280974 859608377 945194274 959158472 726458539 821034778 843328457 859431170 436489845 725649104 726563183 885113175 332036828 665365993 806947111 980808242 914743665 921783061 180147873 377992523 537711348 825100059 859042317 922919623 713365962 923985131 127020476 724276964 617614207 766020390 587596647 590630812 229485676 757564630 659623600 850898171 858603836 905261626 645000331 853737234 287007164 920439105 969784356 998707999 338699017 348761395 341410558 760020379 446598148 567174150 71438051 505475988 665657185 797455296 340505847 420072514 103433030 380885923 100676621 416276051 518116911 765257004 766625946 899986566 291132293 370216335 783854988 986890936 410963216 728265386 864527133 936680175 284298047 900492345 648193324 719280515 385837738 824130805 232667504 289206548 76374132 708819463 816176387 896230163 547557059 573869780 345600575 349135914 30201160 855344778 428897986 443402056 960174461 966425929 116114071 450006060 645586846 712886238 807106152 889565732 842768300 936966443 853877228 896358329 388097409 831478075 776812237 982648840 607102503 694024809 183983032 906815785 476823959 566729041 457901562 703720432 93286660 424640314 519559528 898413162 868051640 901321529 750105031 980366482 215956937 792120758 622455929 737638496 463267564 818143241 65238185 179368977 233488077 617715823 79872643 686348955 347043605 985976968 941553331 997892625 947433888 993975326 748327542 863133949 264527765 610205178 404441073 718648878 778398995 900906226 869887637 890741487 952614959 981350830 863032802 891910462 160506414 920546765 795965914 972892721 286731193 976351475 381576115 922520790 819351352 871550148 741139905 869237081 552667119 599001190 719089251 823650210 367584826 604019718 544032330 857985491 577929094 953804914 618635419 703399606 993438506 998029334 264326032 629614272 641439582 995204661 278544257 969897259 371396748 672051281 351004555 975696971 117000662 122270805 722708934 905766781 666490994 761145622 200188347 307750950 706277615 874210340 216515184 391269914 903634579 964582990 667245312 671865687 548718488 707201483 91538926 795344692 379676641 720063295 491150970 893661827 937539597 977306469 137762128 770195453 640693889 681664206 535164813 989850740 883916395 991299898 866645225 906474792 730443633 893786573 650302782 833634942 295969916 794944479 440776390 783910921 48187559 318202715 489107975 778963558 848412583 984964741 571308598 670327301 14779578 629304456 379631995 468983541 245140855 357617170 275473002 610765193 762454884 823985307 458043980 646166274 688268304 751311817 88687051 573637687 945458817 999383981 928676910 997982384 311293548 950438277 611530723 824085121 874517556 913019126 571795167 935361614 272261278 964927954 513946375 528773790 659573938 846971149 993862638 994586648 433441552 898361660 531713395 999958907 672754315 755690160 802284120 927864470 619793824 970291218 76268955 84620782 464370918 612612843 646403570 957249372 60044445 899709262 287366462 811112041 722227721 810117207 896429531 947216919 757798099 985196440 216691120 535043678 74639223 310120070 88403044 163171597 564843274 687206047 394982882 899475646 992893299 995243756 317693318 891838736 821850532 877817171 862230159 935713780 846988868 969256440 634903269 963219539 746033271 959604388 2393063 522952558 524289388 682497954 998866010 999464214 298960103 677452711 92658808 212985001 496930354 937203539 432096379 555443582 210162721 948110822 688025650 847836420 660076393 832093900 408602163 661123993 35100240 147281334 148589041 515580366 210388510 233141708 162782522 917867843 492461110 899651912 745415272 816098521 15148450 799149156 975524896 992373331 979527018 989776007 720629314 925951324 691660883 722913835 537000747 606367260 527560591 646121944 895803391 951473068 869958442 927873779 716246957 937217612 999485167 999487417 119474235 651416254 126563554 862313686 624737508 785883939 941047164 953958573 338772715 840970805 916907496 939354755 932442323 954344971 632742430 806244372 509213194 579561465 362684987 840852297 642530523 935529623 211569436 396175110 774212896 864775834 425443292 662018918 9401207 251879871 363520896 788537183 70527137 79347871 8681558 893220643 650876933 729574266 293637540 474612212 99655184 651379521 936364487 984681483 633438366 722254114 464461537 540046535 299625672 393648429 788677732 838667564 364735216 836242978 316544066 887991243 159083179 266218073 482291494 529748178 65618767 791222008 376589174 854646527 452603524 815978290 172436136 865660443 683639527 995820426 263862730 821880885 398365741 831847137 520897616 689037364 202513297 469799563 979915047 988738699 481596288 639796410 912905093 942275029 532629925 613942525 367623989 785617073 187084907 357796018 141110000 718884847 827173856 900909552 959460435 997915946 790021263 897368861 805899071 923729812 273091806 855805505 858183610 882025895 480382256 483948891 641897305 775843998 15349327 429821151 205540611 906850822 953883184 959427765 90953283 196569834 580877460 905042031 108705842 711724195 482080688 877111413 148988579 329366821 555053031 844382895 786164335 835027381 372700583 988284571 120960385 845076544 838519870 919184621 315400031 546275566 864539680 997011501 545008706 889709468 117435997 183815774 399770506 791336970 543419208 591645076 130733480 724215743 907954172 934997253 555578561 735756097 661421536 817772253 579059776 942026860 271997135 764966166 892083421 892106690 489516720 596618154 737755456 782109189 769821667 977620204 877892453 985679354 573373369 615475686 417748217 689683973 236614303 710496033 272179361 788617123 23424929 924871756 995900980 999076558 182649044 915745809 890650178 935120147 376670601 946944759 834135151 903787797 541524297 671520392 257141040 513131326 963752694 977688112 511571889 745945085 965699611 993146618 362131565 957229866 959427859 988470668 602644019 981974898 644890361 882863745 619369237 763464068 928990593 970078148 926986310 991641912 312278029 840659247 383024877 537843846 431747701 556439102 183249892 540270546 451621521 692690844 416559716 581703517 112086588 356283193 754274436 822227149 259793409 405039984 882105848 924315107 632370252 840026437 36715116 440881750 165203985 431322336 625705988 746119901 201192002 828065477 330399168 624394765 222841338 633043067 224088754 860188279 485654040 745377582 327093596 841107461 953431219 953439087 657059088 876480611 581279702 771295338 599571150 976003898 221370109 720769854 356393427 760628928 935681775 948793368 48101963 316591222 898606585 965875835 775638632 925805226 445768841 539860269 144494126 915115628 668183562 975420516 710476886 930565290 115224481 264612833 712444151 822065941 822469966 827784494 150635094 194622723 245251755 717606709 170070260 445486023 721504603 734726298 292209985 746052523 259719378 935026129 591767293 600526769 694397687 951642049 657294286 691594245 526275326 684345922 806143800 934420483 464445453 564479734 238643701 357695279 863509951 872245414 89987565 389093547 454982412 913809919 775440795 870155202 894433389 943784441 78852831 329810979 417760903 515106725 989892843 993671151 270610849 578538173 654173161 821717541 263449496 286405284 978611071 987980285 978488943 989018951 683522325 702970251 519275555 662738296 582564448 645914660 227704014 860764931 592764956 965993488 860585548 936348128 753738377 809108475 437444353 444701488 379704326 912780525 821140201 833991719 273097542 838487813 248529490 737309440 740978155 841912211 864585681 905433731 984630302 990341149 283537230 325531676 435707934 666429413 152732213 217299199 411720509 876124028 677881688 916575039 272080004 943463542 196801969 513190385 228303469 653744952 386698577 409712719 72174791 956619084 635413526 974465892 668907242 751397353 458391548 893337157 751793708 989160634 6641950 584021142 734282504 777075020 393759250 989885790 481158325 513479193 327667983 631667980 629025374 770178900 7523348 675153443 111327531 714841061 810524271 880423753 558583023 663814350 51059388 187680166 999379546 999758140 529355591 542716179 993362574 996800970 26197981 47583120 534701290 559392405 854684694 889862563 204675240 843885702 959177985 973456465 567237172 712446329 376010694 801291861 47729815 381366578 865933975 871271417 886040754 985953016 49942826 926974517 653762698 731104350 81771414 903230473 282845634 316094956 910054400 960372218 159692864 194803912 250910092 881864001 607115215 861719914 525351704 589329349 174268553 290651708 180999471 956009667 870253099 905434107 341556484 507820604 285095918 529659105 23290026 900383703 296975615 751121109 347488875 650811836 393758536 786055048 569101317 955567795 237794661 599191390 356982780 445611657 463992780 954188585 142301232 844583172 29457515 403282533 968915361 996112989 320490206 948817885 820302652 945216916 227070659 935398331 760730220 863748539 114139120 379891360 544265509 859294554 596687676 789485396 220207221 263967623 46871690 720821043 788593160 863407885 496999146 738087113 141285397 589262571 912662419 979706333 755770150 783335044 879494880 905128183 188624751 273349176 603146108 868447889 362142487 640233851 180989418 229892380 691852041 701365806 577306389 687956618 484683381 632724022 373849473 739395748 163315845 741399394 981814404 993819765 635470453 731929051 457813151 569843262 754359046 837511742 578244068 631715918 985557005 988511730 604745940 626922965 24428112 65766889 728050986 977615848 223163327 264241049 112046428 369283086 689161530 951090516 278462823 491932041 510505306 903280615 129943313 713440858 295545522 502250971 286339082 942096043 484476435 952678589 90954839 766544078 761936324 866108447 98832829 713161291 466808113 470996118 192286683 749468352 635166414 711449692 547102250 997840613 935803535 995041258 938668972 959035500 624288486 642329208 445514461 958310537 639829030 754120290 577658402 952419495 576972729 942020418 468724396 618176485 616876742 793293572 126408688 648616485 87965195 928834839 591112115 818505883 281277119 300928546 356971591 849570669 277673569 993453820 617472176 761412542 589131669 716952022 207690027 951345839 843936851 863212800 103328185 410391918 847185866 885736587 323747921 792864799 686746527 879042057 165224430 487755634 312928496 615577714 437588556 587960080 583241324 719777944 696424717 783041307 80828025 665901423 987566530 999679739 706138922 852223984 472113781 701806041 816543137 947979481 96617129 394952072 475850194 712468134 879761699 942185943 129202975 846220996 893586850 899669846 570404254 660531870 529677169 955699035 596612503 910182252 761948445 776794377 100479504 311985544 336987610 923093648 37439066 700841648 762533336 890617184 954642161 993461292 782289924 894674206 870594921 892976963 259407422 729665619 696076026 766715553 371331717 681155518 545723921 780090992 863004206 959929761 485458402 510053480 880687878 961396326 698871868 897067125 195053596 420255872 248362440 468795958 932379161 976412699 304754153 722490031 770602482 988264744 490433760 861082667 986691622 998405571 559293286 568714169 231073106 455900510 48459943 513002896 967302879 981777990 155234485 641294277 923414846 943303801 16273730 221089949 220571767 332825500 585162775 886197114 146687379 644355211 894559110 979317415 553153954 693571545 223641937 659088621 877058786 939982109 916668195 952871193 896080190 992461049 328386889 669726409 628243197 695584451 797874294 989488965 612814825 813837419 283485955 877302882 744201587 897900573 96838020 158811335 268484020 610349030 702994990 980389325 955704099 971117180 437902164 942862052 364985975 557128349 999276088 999819613 585141303 812875068 312674107 928068328 782967162 965381028 865437269 975092915 628515870 693801460 685744073 750727664 86622909 692326223 350797669 509364611 252806409 565363690 861885676 972297768 949630029 969326920 288432725 801630922 688569937 710820318 253677115 645968137 311855107 961310684 958661555 965137841 191772992 797820769 66621954 698508899 681167049 685154917 9913717 892963119 21245404 247978077 12693415 347295689 191849156 410469023 77265418 112171637 278244551 282284897 635402928 720521098 853182452 974195789 8210632 305447812 257350575 695327703 602686571 983906353 835659689 932908559 438311333 599000213 895855647 923053542 521468771 668439192 234353843 954092262 50945898 577682264 986193997 995268789 644890851 696982595 792676232 897438299 142905921 555182511 552511079 633165452 78688566 93424540 653716553 900452707 753221247 794384100 38538698 226556375 692628745 891437948 460882152 671986501 466059599 584370838 942562103 948265829 497536542 746180815 948274305 974446604 610480441 798542557 391461731 917699332 580428894 870667764 213761156 758586964 408926323 651458471 253994421 904489217 834873920 930869370 53476595 395273812 45477515 938169029 30787783 701458715 109035093 902178666 903220564 921586573 856472594 923695971 757947942 800542372 388393116 757637219 338212654 480298764 662998898 679828508 870204556 920235395 296873896 953705737 491505045 528910545 194313119 553169039 543022484 575931728 630089851 748535726 182821620 602391473 118563045 748944647 362067380 368741079 826703812 971687455 436509013 568297225 974519561 983633060 160991066 961191052 468302557 827695666 337062174 512243629 207136886 447644833 302745401 971517988 878501763 966828719 621917728 634537485 665363059 911353902 31240659 349880451 336768659 513045016 212417431 525206282 640429848 778776599 354895276 509741391 218242719 950484735 401320197 939193248 98999230 617175013 265119950 732631603 349920290 539197131 232834889 891255752 137233754 717908800 559424020 663233171 338333441 986194633 54027735 197949061 90594974 403523081 121263401 629284065 659334057 741088242 22571232 112109252 134127684 322202986 187048931 618074222 814652879 985938336 858418320 863929015 774086406 871977920 264355317 914103835 521074103 895010807 128583213 182798234 190083990 760068310 289463460 983114079 910021120 965307501 149369739 915328484 542260769 832225261 484822058 648565171 595579441 747418110 882504499 888201856 581238388 591422753 422666541 806353131 265411233 504829342 525482553 871427149 190934256 672958647 666765792 844308463 968124022 969192581 822828478 894264552 899063222 958157723 220395888 589791446 881456310 894186152 641698989 726552331 379974779 392022215 244462126 321029758 196975923 910934211 355674473 872746567 997717400 999618909 223418493 870753927 190580620 669907726 11904538 570017643 851838835 964048944 834795863 836551290 326579400 490298028 566247970 896165822 697506950 737380154 861739422 953553541 676425881 848201609 258817680 773561403 235405207 768652092 36294286 553147211 893548606 912634243 656237345 904160771 629215665 836353734 848436422 910926183 776660295 913669051 15303160 904908276 846006665 950391394 762565902 915089850 928574262 970155222 92284215 109176265 759308708 894127307 962691660 985241856 636491707 660327825 740118305 866315530 88881952 252506171 80964505 726513662 11287002 356692590 694100506 992196726 839842562 939824053 426377365 430326976 582313669 808108261 306944706 307175293 248522976 980852816 196782562 750207598 128634617 397534982 158087852 456451506 658486463 744242051 438407543 884201770 417778504 554454443 302519286 438127668 979564934 998139906 390560124 803797341 556373789 791233971 721031379 802256534 208206068 707933923 197348360 564013069 262151911 972400369 138859921 954836712 761219273 851793613 675529739 985701590 692061230 724227285 987120385 993304052 912987175 960825680 318702569 953742490 524421449 992160161 113187724 932913149 697374962 735401804 243363916 689021584 719662471 966822352 633637694 888626451 175888230 865959821 946542569 977673969 182346184 589767840 480318928 634135581 41799576 530410534 803275737 806444441 730849810 864257180 235577171 991802424 945721430 953665212 804121999 967554081 856945528 874049840 243083165 873845676 537952119 618039683 603894399 846782185 354717255 385859504 273868472 479215893 636364546 853628063 345647773 535039023 170378868 757835602 909123634 921968276 986165952 992530911 894663891 898712242 925613586 958197673 878179003 990612005 614496362 908665889 434436918 701677610 920319731 967362068 896081305 935999296 804458763 956518329 906647216 930042470 539108632 841854402 975134015 978418921 590908623 715856997 362325182 584843542 761401031 967333292 990023470 995631793 613872041 961959831 613760218 624926702 792233882 816641315 496917809 563880680 757698362 859289007 810690039 991304223 961596603 974946738 778990142 847274589 251109673 654355933 655701919 997855880 264612687 521724870 45824555 748922037 991849289 999307578 496296676 550084976 299940045 902197489 25159503 645475609 31257714 576925701 961539793 981269579 466782659 764063606 238348634 781278314 153119536 412676990 481945089 810276642 1107868 675115069 319357598 626040925 506704640 626911641 226218032 768582193 918339744 979320237 178470740 988584232 666549389 859762588 669045411 818687970 78967846 258954498 805981155 982220667 18128398 583508070 857251634 876754896 89108824 588920564 567199036 802176078 497080724 975882113 388748373 855854294 469056099 537746194 165449814 332050583 908043355 926997826 485986796 806449311 522094253 702420638 743303383 831279424 372436647 545037275 734475917 953787724 482678907 586373636 916351288 955700369 210280453 706669053 568236056 832242727 445890109 447079260 844092633 846783065 48815888 319812920 36543696 714342065 769006856 969068746 140946142 294524886 460556369 644141068 61821936 982402926 999967394 999970132 707007849 734435261 849762597 929016909 137854027 567141975 54725462 314843644 656609774 704784151 854414774 860711706 450336349 502064391 225148259 486078518 638852125 816047840 397846305 953660309 847738445 978601366 320467227 685164235 952475852 997409919 668561334 742303944 473625345 760013912 81474937 500774860 100233512 813710567 704130703 723971783 19477422 209331853 733995472 762729406 71565614 592937555 358506326 781171671 67419964 542657160 663641629 834122264 492177814 797308949 972954097 996504591 472894618 598385245 624111323 914268341 309724458 858728406 488154290 810246347 785220786 816870541 690174056 976302411 137834021 489364092 464299783 759963860 265221679 707750853 827849161 851838738 26876784 747572571 663148781 847802493 181775426 209098922 598803210 608917720 862039055 957821023 393328765 668263440 369563736 811339884 73134034 827911403 350590660 624261904 616331125 931286694 552791421 742720036 450415876 997012893 707686483 819641864 557570279 995943814 584675604 759655352 789306406 934520034 53858002 355000185 120406535 227702394 130895009 343412534 30593012 289765088 981061773 992439893 391639768 947597062 970602745 996267521 153772507 193175418 499142118 951666176 741820525 857656047 750406839 852869638 121815953 132536083 424208238 848679372 34064951 249643214 468562367 674182290 19933531 83433680 682595347 686273864 306528386 864892817 439295145 718163447 105352598 994710136 503260767 615425078 506008822 603701887 492182259 809362640 952217952 992535997 68419932 879714351 194285751 275578498 470382260 668393327 982131732 988296337 819042334 886968486 318484906 495702225 594725144 710163008 457440648 602886889 451417743 585299224 294388583 536808674 876486380 905742273 323074054 592838932 812306470 864248399 732041380 996799897 637694566 784149667 135983891 245165783 603444712 897065974 229214345 365027626 700299682 823797804 77726152 993205834 34371705 725932703 750855577 944001306 137025858 688331627 644122662 701960552 697583615 734243570 694486078 935907042 9654830 535924624 363886695 813330996 134215285 235444858 618781320 936011821 576279726 758832354 78617687 252622679 945796092 963117752 242796295 530018432 911910078 955735071 41919149 819952075 27893005 782735967 671339537 800897494 449057149 493217623 716360129 836575206 279110328 786855792 769424059 890117595 354710422 795373778 808239862 986359162 211816726 537414665 711118966 751486386 478040244 905491892 764022996 938175133 321758506 685743027 18836343 305443009 846286796 959455827 74101772 488463456 111467958 536547655 113918873 983651543 322218671 756894198 41848573 999745024 452289501 606384774 653133953 848616324 50407232 553346215 365243439 616426346 515022575 596571944 57046685 292488625 345459611 587998436 581071677 600266806 239779368 760815510 358179354 824358014 836832144 924116906 129081367 620749307 83119807 710999607 903587783 933468124 909803051 975368590 677147354 861360437 534078568 670778693 912027048 980834021 951377014 976658289 459828062 528533899 462268030 647895288 319524221 342448906 616382968 967822675 321592265 606261562 215693838 653881856 109606641 445077815 363092398 630656075 177847760 590935611 357899182 731345943 288022264 589705432 475093292 959024231 871526434 973152418 451275409 602244031 518002020 741794991 104417610 697064510 902264297 908564703 701892818 938160977 279791141 769225528 321588844 461061337 629531653 777316632 38329677 861167081 449175099 466856909 82151211 563018792 295491742 984520093 379890679 632233429 544400467 572880599 972287324 984727696 878209298 915190002 215477966 444295239 536781498 958655096 777082400 981263070 905030380 973177908 270965935 588022061 703372618 772272518 349819313 736291903 390028161 589875765 48571733 963292446 459448462 554641264 597751775 729769693 344194230 798042301 650366719 959808660 603364500 618906886 445562605 508451136 343831385 858598829 671435028 968872277 951777164 964440102 304073682 869495056 812349497 915587774 313053179 962639580 327402816 656918736 255268393 945724285 630645374 876372307 563481497 986866408 139651536 853075750 553831233 702939762 303827623 830186751 4336201 805334524 314020999 427382201 618909220 921486659 484422687 931250274 189857921 839530584 247185232 283641545 615140207 702022220 287250494 772254723 131999312 938342871 706350974 932719611 541118973 906963049 277867172 768990144 563008550 908920714 142984000 480789186 891900577 964661788 797582323 879981594 551486849 793226903 369608809 677452532 423779803 649076461 18986041 626623585 470188824 803231771 354679118 578793039 942880078 995052794 345101535 646553602 383138987 861401447 831045535 873383509 676837678 875887262 660252726 901069744 88545573 784546788 927476731 969621934 200801599 493619819 821951643 834659569 616359022 820222097 602744028 983836430 652145749 974516103 533414210 553868154 460974844 825748643 879696414 969043080 50459627 789659392 461193020 554061521 857171839 878291200 114364557 671119164 893858483 997191484 569981025 867365905 818066451 873621217 405605122 828064716 222051059 697770867 836631136 840852107 955146626 985648433 419790885 865076870 310011899 750274656 575039846 759159530 547450407 849028916 734129931 976111480 367739088 980233656 555696123 580462467 582799608 729563883 861077966 955446048 587981269 848809173 799584778 845423353 511773430 561038790 353697664 994845953 113020786 662571076 236918789 921419664 216570942 276417362 862517733 978851673 664520255 751776420 959496294 989210644 368150964 428779099 983784991 997661951 494500752 604332454 467216090 686303910 685390548 923012905 164348490 242765206 211919949 432105799 23890054 336135900 198302624 598337148 385839895 639852146 369067564 544926094 597611557 740716571 664474298 671535690 503642729 965735669 492578648 817198969 635056967 831999870 786439110 963600642 68636063 194957458 694942176 866019813 350313013 803725384 999339447 999554270 985189945 989461927 515803217 747081673 495887731 954642407 824136537 901113218 34669314 626397583 307373450 992160726 767907306 845823130 55742855 56911337 669308259 773963325 183590816 852940982 240631825 385578139 478619448 585016125 897229763 924358194 146566909 714694642 471595547 890437175 737600423 829391659 385677072 679586128 268384338 917048108 957104793 970140802 932851781 973730750 137299555 629172402 70034059 194354141 774914463 819000078 238060319 966778443 88701548 337945742 124684994 552939614 64887491 900722542 354760519 662653991 628813190 787381814 830088907 932884801 370835513 665725544 572411365 989008242 505512313 537236368 604929780 920593351 324952073 515672479 971252857 983913116 717401819 767569294 542840466 911219938 412939156 622554400 573562454 612996072 511100476 717087352 24162435 763172229 233665438 963189177 476206290 740065084 872021362 892844504 654349148 782572832 971054200 989857448 979569365 992517814 283298690 663343483 431206385 836868832 575704573 951040004 871464856 937765522 454437505 635865239 917780597 929506066 274815164 936745821 948716299 958010236 312843863 853229490 67195251 394176811 334314221 791941454 234272723 853910595 796857830 946426848 370576931 557895859 736024265 913586196 961345062 988562903 789844544 837640372 193552193 485761197 2807880 873981046 769876993 771592589 989152944 996352804 268215725 707907425 283547048 400437294 114614891 333431372 253776461 269347888 541039376 887623125 50838564 456800942 128910475 905541458 941604318 955283573 89307083 101084939 537237666 908212538 619553795 986789400 831444490 922891425 843254890 917291858 338580278 371017718 287598336 840875591 636131075 710845716 557267950 782906706 916205222 991840710 471423631 735776470 651064124 996185696 537742334 696733672 29079500 51747180 622876946 925808512 507540788 519117254 867350204 999253199 821333535 881166975 780812455 844649477 161925473 285932599 608965604 658183403 765492263 877520134 69318004 138786332 921415977 988900145 834855126 908632586 569069935 892057832 278197800 351968653 250515443 283947339 569202338 978951851 586825307 786868931 47523458 211673309 173771659 392707298 879096426 927079140 971608798 981349855 953181742 991394554 142603572 881200979 101349447 485663465 85231858 871296708 384883793 733460199 182176437 375622062 545067799 815705557 509878198 831742900 707734084 944068301 524720258 934121929 637940392 975329137 807914552 881008906 59423737 921584483 94913681 339499555 768004071 976793012 398148256 782703915 39710588 934629268 803172296 912872607 149472009 847933741 530373600 863883902 169005534 681492904 589244137 607642277 71846569 768732326 194544477 618033304 169970733 510827381 928637626 939024787 632317779 773772946 692745858 699104943 331216468 790950416 449307302 652581084 656974698 897213231 738175941 935908808 916937832 973296517 622880188 842011418 945978205 959345802 630264570 735368264 682236047 713723425 403417859 972159815 69399335 91976824 602271629 765490685 536668883 660196230 751139495 854442960 928336624 972494049 880795408 947510514 954907310 999719814 611426365 712858069 336534567 881800551 476874586 562035328 305928175 689653945 140468698 369617895 66182603 601787425 344145501 484466381 251992245 262627028 351959665 687979413 997334141 997633263 994987293 995936869 234723332 912214352 356597916 709802303 994657245 997833737 766382625 796832540 701128925 806983121 950977671 965953476 298539715 323958387 954157928 984636968 12918352 637300238 55356154 186621598 917761807 993325142 203902228 296402767 445817819 448412202 316222170 986616597 187123110 467826198 355509717 435022181 192461647 800795187 785575046 976977998 325398300 368858437 917726789 990299648 260479441 562589748 475460442 589772948 985145989 987209426 479685971 570839033 395503971 745999350 389168504 482437475 727451519 997100056 864608979 887785601 163128190 707844873 125684300 399322891 229778568 476847108 479058179 840497696 786277414 881037647 108863147 325346237 880727866 939238241 337849398 759811713 440460490 892432929 389625393 631677342 682363232 725769177 429277320 624476725 323068474 687222400 635179447 840235305 286880669 428334673 500551269 691082557 796076858 797082933 223644965 427588491 555750974 836711179 607039085 870976373 570300724 954309380 774796387 928077216 888783105 902569843 680285310 982022735 74295490 138777793 268922469 763381523 60485993 400089093 901672113 929927184 733309176 760061752 600084215 892108650 914580237 995987622 701862614 858038785 364464156 521813786 759265658 793800885 246264608 811779876 469148716 919714567 556574685 802563366 962724137 982004513 469581028 939465371 974529708 974787533 352854414 510125478 646528521 736189533 185721371 790451140 904465708 955712909 112683679 573303783 210527336 986225448 859672108 887000325 6679306 47048625 514424767 904929457 153762581 839880352 786108068 972643622 110398653 744635028 698590569 970215199 879506876 978514059 1366909 193268881 230061058 480179708 851395183 941033563 318492644 570745149 302550155 568970518 760034645 995392593 985470571 999741088 798502386 846214979 800253564 811876573 446708909 766597369 877568489 904819602 731035584 741694026 849317386 989481425 63639302 546980001 815948699 975707396 227381714 734934596 620109990 878511990 888791871 899796361 748071063 930626725 908567635 999838429 410079172 561263500 952171254 969588818 106347817 908545032 695910468 736993835 519004827 729187467 470822418 766253488 373773770 504505022 943935047 964318987 780289302 936977240 183555114 469895989 917294818 926866624 196046477 347575175 573017771 724053805 650155890 742615484 355540404 395691998 112223040 983959627 68397698 913536669 541030153 881216229 196666517 423284185 720301803 998328839 48573627 154674540 549418661 685665584 679524339 924252624 16412814 515154997 783011611 906777922 108769940 365090521 405078263 872001871 745220159 843246838 945952268 980611779 473493160 593489714 226580325 923925989 272919984 784173443 527137844 752410262 353304733 990213906 114966914 741480119 996081209 997381251 504969685 935272324 755667482 866067548 482349646 929433456 707114880 739008116 226376684 974728804 446956570 652834430 870340606 934120473 469593671 966120910 746563689 990382402 695461630 997529423 500332735 534462728 777599408 810017998 774991552 791655887 781731206 890376816 681071626 941016444 257665958 453198419 37874588 240325417 115275970 794465675 448157593 527414018 828392706 952300602 273640016 900002880 408528546 791152167 933120008 977063487 52096947 382908065 993546190 993573229 659560659 932608951 435869389 564052338 816949177 900776971 555498790 740342140 503135311 595134306 532855691 545969164 342931392 672291654 695046897 847097078 172897881 945331286 877223026 935362911 262664104 944392179 985920517 987239154 7857630 768823532 163019365 723490969 914063759 976237701 784705124 826974404 660068982 718181341 459403256 671922679 591701703 972487716 728669517 829745217 559136691 623667427 984715165 987214447 997937386 998666648 627617324 966992035 221914967 794042181 316332062 804790827 300633631 434904631 8105411 925068670 998910201 999655335 942096382 992553262 8433102 588348348 167310076 831584127 820607179 914692417 661756991 729036372 575911767 973817646 171618491 201953046 895706554 924870585 116380514 225742130 143860495 595644304 668437406 692163212 178657971 736972188 91404478 176175892 441156337 688541523 511821630 769991348 501094381 809547528 818976148 918510646 878640496 966095695 2844712 954742615 939709991 992617989 29044222 257622578 293777945 870923693 543513059 734581336 888807207 986360913 5018942 815422481 397891215 660896883 7203601 938915891 318666503 398106076 291431029 496572094 233920517 963733981 836971147 983063360 380361734 830991301 501967624 813135131 409680753 439682378 137808554 219988881 550388981 626481220 810165860 906272683 86983137 309194504 950667391 987231967 565902885 717146176 404588058 803015245 299090566 455938711 813878235 974799189 635388441 730336477 325700927 651798918 232428577 485588268 706608766 952732281 713917217 811343806 495132155 552941116 77597703 856041026 232197470 659883337 895966469 915791976 614539929 855463066 579894669 596837763 666798347 713233132 410931872 981117945 361549349 502271946 717749273 899436386 560409276 937389484 948496367 997029356 585912185 954370931 518546540 681470968 669679602 790388840 227548993 683825019 109772368 212383190 165565816 625398343 595576817 760827820 952790469 954979023 361981193 472174303 388926111 765066212 320235816 597102844 750278717 822126396 915527452 938307757 166590298 205891498 859981774 866151512 620996025 925357896 428625974 501843645 793530951 954105588 790006956 999437668 54411752 398690499 869953596 882638867 590842643 935097706 196778084 978920678 587303554 629870522 482990261 588276562 922715593 993748488 689930597 861291828 674515370 919917712 313617110 376427076 499063510 872152389 289250582 988568301 77306875 860415903 113537896 728412082 195272009 473745230 633805661 670773176 15878189 750847362 136973862 199831775 995775648 996010545 719984779 797554933 263142608 554176818 423164721 475358964 476550145 515504552 221104433 669590619 590970970 641349765 205152796 958762497 45015790 279903788 625211459 803809769 606620542 824120358 795331379 881647490 305948545 504686491 714036486 857812871 334383772 568622386 83607059 506234916 135215383 158140291 149982359 421118741 503238940 818519561 503269782 741026153 931471149 972201661 820951753 863794728 827942172 848386546 634449185 796097543 938484829 960599343 370162092 931315156 87101383 88020158 303787915 334539640 416278532 882176314 457256496 634031019 264395066 964535545 970733842 973280076 586167517 798432750 292341746 598425356 296982961 924227223 416767519 967355990 552106608 604798620 743706032 900504998 794309325 961516597 281574778 500764335 762858223 804504538 11124209 338874555 852981632 931036925 323990335 504723219 842699635 963139996 818225546 921907352 182495340 982274977 897548755 950932747 681750805 739850248 480520210 651393140 520857314 739772494 344728969 463845466 286687511 686388412 821359512 919057860 869178693 963655663 284677556 688968543 397216653 682005683 566640239 826429379 977650730 979490723 104306804 820344267 987414742 995994534 469803445 731703012 25317051 579423027 215609854 688962405 13955795 280226266 979945843 999406344 908517038 931524063 223495939 871048714 193416097 966632545 914058093 934742751 807853645 821657255 976201501 983279483 381266802 925978955 803737268 925705367 642002499 860833377 958406866 970264530 397051535 774641313 116870572 480258494 926199273 946385083 71936910 885494735 992061825 994578471 23251182 645411558 208587546 698337095 101085164 146783923 142274351 897281798 154494131 316429612 957614294 966662857 238691803 248188632 576900102 811453619 907558792 959003140 568449222 899700693 370002984 411415119 493771668 838052326 771916724 876888360 767335344 823757536 150357528 976100118 502270271 999463929 293324273 415250837 579688014 851105267 661599024 701401746 230611037 236689856 857345913 944031730 157801666 350381572 127078965 728003856 796473083 868412934 742373490 786339077 904106523 933491057 229016422 539060109 358621116 493143931 548838915 793727176 573632143 786513462 164267759 308067427 249834721 344078745 615584549 924791806 284904004 388766029 495415337 673854106 572087871 743244596 838327304 915414790 336403050 551861893 713628997 983260772 758903177 830416072 859966966 881257260 903345335 988070916 789125676 816453906 379241205 552791507 14009756 129954456 188214308 215653592 542578821 988952743 332508631 776384366 600961794 637921058 416343404 454106987 116220369 525327804 614126883 759382597 523262446 562879121 581404985 636418765 322473498 848153013 741820545 873024074 617178270 919596419 795964084 832371745 83891817 876086573 777928623 925970879 623055386 836399167 339649294 538833939 224522793 378490378 762630462 860912610 175342155 568639779 755861431 774168480 134628028 600997698 222450343 644343138 803524035 945918230 411809723 917978510 828056265 849130004 539916204 613160487 879978519 906703639 752826447 943101981 605821136 868762814 634749081 805929894 119383493 635912635 683703117 792870369 7118828 858037915 260624886 876884313 462623007 750845098 757532811 973964841 874149021 892552688 857993352 981972351 314322723 516212225 355732680 770666234 269017157 798070927 675004149 864136877 768096072 862190191 214130297 407508643 644120975 982750086 442644236 701134182 226369585 696180691 391696560 557288857 358769342 725879059 316258923 507703214 794533832 819562976 184925715 378066535 49611048 756982231 264058107 385314212 784171995 839197793 437084492 500207357 466380438 729544842 225467750 381571989 422095489 445375953 593008212 859870938 642287699 927610835 290483766 767867129 985402823 998060430 1039482 587756915 742193298 765388880 584127443 673119047 84445199 660737644 976540348 994561735 471580039 997278072 149631010 239691658 196406552 966940968 230639123 469682424 145354186 327781121 176453064 312019012 123762707 799280357 663063031 727352302 731295828 772067135 19876282 475336931 350795357 460980671 231819729 521878676 572228586 853278457 278521661 825007243 380494345 434295489 556754860 959492768 443541465 452101165 57812216 308897986 779999633 791237587 346466048 629642132 953773541 990957131 432529700 647745881 538639814 638820046 618084925 634820110 249854736 806704340 982732540 983403113 313196367 902411510 544604921 926941598 89251306 625334757 70400993 737779444 285811094 815185283 455637573 610034776 622113849 892794198 853907229 929822814 96493424 696786925 347387483 980627716 403960920 932350378 949478161 981328147 859193994 898519382 124340622 139684904 138731521 776853495 607840077 633929421 357557775 579573805 773986822 936782618 219184440 803349892 578668867 935892416 667577664 925150010 821116000 882358253 975965882 976801369 726412396 812888027 428279384 637135995 676460881 737798507 942123256 962930993 508416765 940508895 947158956 989149203 462919263 992167830 976197375 999274011 759571659 773108075 25265031 724260403 143101267 756807261 217139241 524287082 281548666 370239649 564952366 602014457 892882926 895567715 896714603 917062887 868640462 934566023 149226027 459831953 877168717 992140256 842749968 880863798 830346859 944086448 784515489 946014663 732270734 880607642 595264833 947786676 62837548 236045451 458008906 725848252 61587388 102095126 226705697 971021400 181690284 342515314 505969075 867838218 957730148 964899312 829669443 892348012 972072737 978666838 156526109 346433448 361149419 757637205 766601947 990358537 677580834 842254133 486512644 588522636 524939428 585396438 616890464 700687308 494564060 939323845 421454950 602379482 485965787 957175369 120259102 421262069 924757596 971930349 740378915 981388601 248564439 961682514 44504002 416086838 946309621 994055012 166132665 494233186 720694890 956252951 289974819 455961727 952916465 963149286 283254103 825581384 195882148 719210327 840768998 844725807 625383178 834219355 171265417 909860894 23503937 99560378 374068070 570073765 753038949 799892769 347784548 528077925 719229173 974937722 553404601 555587910 449922813 462934352 294607317 449680741 254554470 739883917 159604368 350897291 156158955 268511142 527254796 889892826 731025683 911506808 766448577 960667385 89849930 116729562 850069589 917477614 286029979 686252622 298544526 887999127 885464982 984456859 863222515 886122536 965542469 994601545 169619385 580609690 474958003 805308116 610460657 706468325 216959983 294564155 569416641 582515386 393633441 806107792 632689764 880286021 881968161 912261118 477237935 908122778 159057883 650637323 942026693 990196519 251955740 495326171 441273907 651226065 896004991 908625315 152673169 623656154 890729251 914701956 613513810 744529237 71339944 530357620 836939369 839608535 540036044 981853269 987306855 990221913 653429698 876793988 187740212 601308991 267819723 357536089 166812081 585600217 544685923 821391869 880524879 921208369 500632283 908114111 876798381 898147071 131670892 490593913 263086251 439231740 232123656 541045495 70928656 188283846 837754041 871831854 18437700 173178060 786091321 809999674 834468853 845635054 122397879 719881589 55394343 412737171 963820685 970915275 332232940 532875193 445619549 471758126 237282986 360747048 273223679 455272421 482843530 871756867 904366053 920579033 179265154 782815297 959884014 975511209 663524578 871084591 60881448 541819616 341782316 821055987 459446400 615654316 242359199 303309313 582154252 880731069 506145135 788625911 88775954 802971967 555801787 922902136 385761898 396042218 926994626 951775630 465353557 916971866 929803663 989323518 236781212 812655864 860728460 868161405 564410393 849153464 532423022 994220938 944446473 987656480 602280105 835924540 397506881 900035659 362926469 477951582 330693345 875937674 253293871 846568806 60600219 635291340 702004406 818723184 762609524 901663144 627445173 675709786 765314464 856299838 158541190 521776008 621817989 828283620 668166627 679080270 102427762 945144669 347937103 976188773 928521434 997005953 243345001 480751454 847496557 901347693 211484024 394632982 797264572 827339309 824539596 857450321 262213218 982717648 891372807 956826568 897740639 939007385 464012827 734211395 452433070 561950909 951480918 972462558 289761921 399178460 172894458 534045813 911787828 944342648 939041595 958028402 977210504 989365511 991208882 992487321 59175310 892563774 114578761 546502635 703640979 715413307 572012402 820834448 936451881 942730128 726073523 980913554 845782415 947655021 888285322 893148284 103898097 132047053 482825690 531134539 241829977 830312820 151679585 639824112 538023239 747537781 563930263 697271526 42522102 161751106 120959133 397503566 272483991 862493901 648624033 852109871 366513948 533082681 589700093 797822117 324864885 827539295 67359239 145684784 199039055 948975785 392839740 953078477 40528052 873600528 328555240 661045501 495547510 690457633 377058187 615873631 357568195 584339661 415971743 524971052 988004703 991368471 765307294 960545573 307568632 689322687 935719315 981762199 975931581 983974149 718645148 746420500 51287602 74436406 19513545 236185053 743426435 957725388 771583255 884685571 749104494 948328417 646263300 770292924 670852432 988888346 27195156 858800369 384761635 738419487 486813640 669617204 272429102 692140989 800048047 840450635 945372737 978607017 541739727 792463950 733954995 957066755 545078765 788834391 534855876 998912731 137580743 169805634 510428646 808273679 906257383 907895257 261987538 641387860 993592469 995458698 672778999 999795746 740311757 755856544 483571074 962701565 661960668 776835397 278390889 776305864 374628580 472722324 548490671 713300334 185815012 449364929 327062727 983067146 197965836 671133718 694032656 893347456 39268818 186153128 86943652 180456647 26302177 726329390 58862602 598173643 305332703 674986708 567831048 887994151 813563897 969657079 389665695 808451363 455816649 731441248 201702668 711703751 938552922 944256575 567514507 850094236 736206283 934008029 750481819 876957797 34206973 264116912 649260550 694229463 284921865 470968470 187600612 301023088 180599149 286619331 35408290 171091436 143383276 570087921 978111082 983520752 88956167 341770253 544818672 975591742 198943624 264354882 115521578 359007773 895873211 930306969 561439071 722063852 634275775 822722520 628596324 742271120 57156355 544628551 34913459 339582382 390616263 849723000 863490744 884557443 339134065 557279210 693582975 899955197 779226324 867629601 1754709 110246889 962576874 971026939 118919380 135243879 684815548 901185269 47807982 636765439 494191593 692465835 962764023 981143256 246271082 342847531 561312542 717781411 900641822 913433392 32673627 226290744 519269388 649099387 371112261 967167108 670436271 756352268 413261469 557847942 62023567 806765801 917876570 921547320 473199908 624948362 48986732 838530691 545746140 610032333 345050709 564618614 857428044 958701735 831367289 973001433 835390670 884148175 887576101 948950247 313548966 938830798 851486769 940802152 471823985 751235224 394418859 506252743 533357919 826610857 582986518 994488893 648286273 846546285 975146053 984346868 974045299 984373346 645860746 897259545 543375692 990064792 690971415 853513560 566911322 696555326 258871787 904888705 279339815 580407054 536615645 585742575 408294863 639182423 212650423 683948317 266930135 980392837 859555524 990420141 338658985 684183740 55699641 101313076 393245054 533346324 554298620 889708194 759569971 835392715 629375358 681594634 437980624 584932292 141278337 362555307 299111652 307697816 486261130 850847846 374487427 515645399 387984584 811499945 531473622 710533943 883671587 943119951 699391396 776256153 118470448 185114761 435793585 816611666 914405712 946225738 927535746 976218180 457244481 498539017 139362052 663524896 347599152 765453128 986472652 997980696 769334416 890669414 74192441 536321383 10717852 205793091 593718385 690773557 60687078 352886928 950974357 968159866 905902047 945540682 793792362 794222082 535835657 559061605 414267418 499679805 859027826 972141567 369923424 537381468 455249049 892398138 741988073 856149890 436515784 549025519 710362775 887752011 302327857 893769418 948381627 973618426 123741224 437656146 246278515 348268815 786282732 949980649 62409519 242900071 474837977 940215295 446595036 614630398 982771800 995175087 565856651 760586643 910089968 974465409 156631706 655124143 260507362 959648512 144570853 698505626 896853963 916796174 701884589 963405799 690673372 886957074 655894277 705548379 864908998 992467088 190093058 303499866 23928578 513081083 757443418 768753356 493616093 830431722 278511470 501571828 194540543 834812047 180937782 899531865 279772755 552485987 838081846 938723881 19337359 803499108 343737396 388717859 439359828 972061726 465994597 505074649 256736577 442958002 36358380 761173759 993188572 997802946 870938992 976363097 424597228 695716289 63455513 360257835 331181459 395951048 670548002 860023529 900292752 906189450 900597734 947425603 524279260 595953393 460411564 928787569 689076465 771865197 349545925 479282280 756802282 856011544 73096415 78804381 585115761 637600517 922841783 939175959 615332013 890409206 811186169 851332533 94710794 313316862 691126732 801904043 56431046 664734196 678118576 950336677 945285675 978693490 73571422 353244691 364204516 697616573 731896342 774717427 514881229 808337433 524750740 969053658 838811553 971357586 953237173 995101504 292244326 593200720 456854123 886063163 339547552 676828482 754509977 808456403 140775377 890937111 369186360 726407309 13500532 284182864 789249209 793733362 471173103 541924711 12626476 199050891 934924506 941137320 21488116 616550081 930679192 959074238 648603604 829060415 247542730 594721062 236491716 799717848 335039145 915976618 517981010 581809040 433221221 521554107 827865258 910246824 543084791 615151771 166505228 319515965 629438329 793748215 688661816 967785950 418158086 506872581 156699417 481908749 467166269 588500454 339835845 443538211 784187790 852268381 675217786 850200065 307111221 758229148 491267098 627805745 700818898 701668422 440984388 697046116 788665147 846646497 822429016 826945615 192040880 980772235 684730982 918185582 677209278 804803601 294770761 459548831 156560996 742093235 774977778 778450961 804936043 915029860 383506875 965906243 651742444 879323612 511854702 658829551 232816687 544701866 553024063 778885650 841550952 955681087 501223813 710880121 811863033 879695858 132566901 626932075 574207205 906176245 448191979 768665585 696566598 924848900 475339104 765379825 319304332 754523189 781898593 806781907 291704298 448607763 530207145 714675405 435405792 835643549 466039085 885809677 76407931 387836010 278299661 449560004 132446076 182615996 213878213 767120811 735455483 875722170 386749794 580958803 742910049 966110926 26740909 656145712 285389683 360564316 750371579 971248778 726103770 968114962 595777143 725585092 819600323 961414139 882604885 952770358 995787654 998070486 634179995 696228684 318835796 378963738 462753160 948050477 96994455 332369305 580250938 796109405 756923020 820448911 3338290 877948517 444650467 966006829 319162135 953908228 622287428 724319167 851985423 956806004 283843745 900784445 836500795 912551091 631679710 676649713 274327545 448054358 165414325 961314555 764512888 766709114 960004366 984787701 295534638 714036065 787634772 992411597 483816734 543779413 601523209 689478313 697790269 968895629 501540488 811578857 874198511 973202054 29144471 68510121 295408535 316425790 607764468 873372837 841626283 919571567 78041810 533926422 242681747 950082968 476373150 756055553 382291668 465108708 74545684 198332913 9584106 408942252 76262455 775617902 714637487 972286301 915796588 960756128 361963288 599338756 363637580 902347262 847215283 967963639 177903191 787279376 860079786 914060768 10873718 238767562 138203534 535933922 351750483 820639975 540603929 804381079 139009809 242665232 220525677 244978633 208056002 783145334 165683603 635334272 824562113 897387004 350049887 480757593 596055100 892784837 866830992 952290878 691355029 964895591 406735444 619409583 138581735 497385315 36196557 313462507 301640731 687057769 552884681 646268137 870697689 983462295 660623709 756197101 669689452 858422553 6676168 143793714 123558956 959566103 966275548 983673181 763152297 792503657 829963327 856948245 476450820 627703718 511784832 554179801 836189261 845708241 62577951 463933312 757486706 889721463 269971752 635038374 995211787 999645202 157278533 252783801 331576092 998141037 987014819 992298920 334093834 714053645 345385262 950353794 165179238 563829864 779940645 831655745 811464779 957782550 754091303 755342893 967425170 993577562 497829874 677551271 732721270 884127826 355620292 621793176 559909163 624339707 331087718 987074936 581291936 888478500 71127059 127918191 975604685 984562240 708173503 837156547 293666231 523765110 612983609 915155243 101392865 281790241 67155870 567237435 181089786 517890484 57731710 894335508 506706308 717139916 120225783 328067034 819560720 907354773 584724888 955786108 647932797 804552314 176124083 341933806 171681760 589287868 528531074 790003960 343208774 720436396 236149853 761119722 730694614 883348062 171081591 689073072 639132872 982808336 614619049 957709710 445992923 963686890 662890713 722756212 605702837 850486380 500419221 850189793 174186722 652135581 398106616 471864073 345297524 925031112 202310685 835137701 255778222 306556717 46990191 701550263 499464854 841853034 874159463 894212020 109668928 912270113 27491604 646486217 408578560 795759833 319540906 750573164 613899943 726045736 464015074 939090869 305213451 981997139 188208090 646700022 661598135 966484089 102524873 422009038 204884418 592991053 205157189 944543602 442258478 970277982 24415838 190183764 619283818 891511554 296787108 400236030 774348709 996665285 810215969 827952000 265773336 695919614 174443785 883677146 261405877 368772146 333854558 867879764 302226830 508378456 276644644 660335060 718003543 886237895 761842961 974808521 301175290 460357830 641927020 677759700 543735124 727943816 157093081 549104756 263614818 380570303 450110147 788239020 334116337 537194952 263128654 434824866 739608274 789340717 505410424 936731225 892907676 932645878 410400019 440717072 121327451 776160282 808828085 880542366 404183880 966008571 907977138 983354018 967408839 996688442 314584948 793116373 414863909 665727284 581697510 661791307 660992595 816279458 734505403 882732902 257944538 461788976 976995216 986076787 197578420 514600192 252132341 255911304 96567651 631264030 995074432 999225173 870488956 913512321 967138513 971017722 305020419 743910120 287905088 688086489 898168299 991473153 32677417 505593240 561631788 855404157 620091220 759662833 65994831 356002947 793135804 805080133 224908402 609663548 5841169 739064449 54928086 607052154 825354201 973158744 78347004 714480107 893939089 917493674 417756106 432713320 681193080 909126540 788407917 853911654 649775869 743939596 334361395 559624809 853859263 997434552 420868698 886848329 143929749 474873951 290405743 718995731 196873791 447901267 641806412 688532617 256993112 996498345 943236042 945805495 175144728 944622841 769715946 913083555 977012150 980826318 705655806 914771824 359034321 515161166 531127510 827677210 114830704 180427730 355083865 683157952 823043031 983795688 955165927 973773165 707414828 987810788 212429037 480024597 246518779 991440793 844415604 858027856 150882141 321095281 45003813 400663992 481015458 779165885 669086056 781256380 798373994 828392657 20859177 964460467 282568429 833761521 872902348 996354001 377420429 479604533 792490345 877481608 327722014 383088337 21139951 146885324 716084926 940882761 563347355 639409013 837012667 991039701 262093679 731378710 622784 825830752 747803696 941956904 241060876 340468315 554704651 986047758 252921074 452803636 873390499 878442179 745707656 817130489 220640078 863477987 45361073 634722429 786093586 809235823 202545197 409756372 896049542 903970472 686465508 977231063 335786638 346906308 384090327 803274822 612844993 779926838 593160754 938909971 128307929 190229347 100666455 357781652 336868366 692456825 349993993 562867359 276202179 588229928 941563491 990428206 876878144 937836433 686964535 691291457 977010958 977936524 243142351 557606051 885438569 984867204 547947106 913612972 117582289 647174472 288022608 512749023 61527100 247654135 715744310 766257739 453383531 904182152 432565446 591751211 231108313 240701985 424690832 546468711 74930149 597280293 156814970 507521301 366146243 458220828 74405237 396543355 816122332 974922653 491493225 853236518 421569445 572933668 961178471 996978649 274095678 617897985 48769143 115762437 40879109 228273693 541467809 760930961 76573553 259851167 268496823 509372334 528386893 991420156 931685751 983136280 123088465 560098336 20998805 247921530 701632836 762935428 363311259 941850133 173471256 749048862 927448962 995418324 760102652 766684039 661909853 759133293 536894965 997931827 377585086 725371499 856858095 958825160 39482532 431836957 491410388 946346544 977453618 989665583 751283163 814840247 504271054 697537116 907366141 945511505 576382822 972415338 907131588 989031424 175626472 250689736 691904315 796015406 353069370 633056814 550221138 714379866 658473777 887001724 814957212 995533877 170114923 769523044 956179487 978312712 386652020 932956055 383269390 938469506 827650386 842075283 46473639 430729247 138199462 723080745 579739904 982093613 162709477 542074835 387795186 832591350 531167044 965582753 290678532 550255525 354230258 901064146 387957712 524512188 491573741 524188599 343506663 485863442 219252108 361785041 664884214 673632391 62521593 828465400 968559428 991753819 685214690 753077804 123736070 806842191 613552447 993008916 290829885 729399919 702902751 918297187 299729913 730782806 928767994 962325760 14337415 543331268 158070797 166331253 557355873 572473045 128330538 196142089 688817601 696422713 536586986 556172414 552176727 877919019 329455558 730023465 866952877 935206090 844079626 907106868 871473548 881591042 931595989 967254236 914652929 930553381 649685204 954364596 824693710 887506590 589375620 988817789 922347018 994718983 246487487 474213641 584504858 894624354 80904205 370049623 12740371 285582819 999052343 999251758 458598357 852428918 774970599 825409628 330946131 364512554 14268971 165365902 657666227 687146095 631019201 731215990 44285718 348121928 174267608 500335668 153118624 961532978 106685859 922698507 961241096 991853755 634238345 912940973 873051859 922056428 194376646 968354097 576212346 958785851 673363012 894180891 787964484 896189543 681781470 890757610 553003420 678035263 463024898 890638622 676581096 885632798 776483738 790098659 357956477 736894136 712427144 901230490 396360115 660981985 691198716 756631722 466800189 583674760 559296951 740063995 70340341 194559413 143949347 954441267 513784077 562588386 604400995 803155672 141015895 265392297 269257048 278280056 188612009 638485131 117075120 945517262 25199855 471017466 811882892 828402681 600214732 998633319 343299116 699864110 63282408 362551447 993608470 997098988 615944526 918573865 480770077 679176867 273721295 991473561 880282475 981955984 432520213 832583658 390229545 512792323 905199802 933821312 9976790 491929797 13070073 407352625 404896281 641241976 848272312 968925266 342686881 577621110 2065613 519373260 37224219 799963993 192629876 279547239 795890074 952934590 253152277 621695279 821131779 876999306 751948757 831068844 140542877 737655361 657819310 688991733 11514610 970885094 333211763 336225356 121258906 205916024 856758410 876897210 306876273 500506801 385494456 594316588 586345478 873029240 905931157 931185666 458695339 807801876 973289194 987691111 849133980 901104283 24841891 358487960 569248513 639154587 471265010 819147545 350700637 382783116 574318716 972107804 76874995 992579968 276695256 695094775 243738878 388986318 4786185 963131579 163413060 306193917 752028798 827143103 640256165 847524945 825513678 969246187 412447878 979627732 260648283 775841181 857801867 901906927 96800031 735058367 759285858 876614716 903873244 957614072 302191754 742450027 586713237 716734392 577596941 727516073 227007758 549539862 549007341 628979195 393064356 979291630 583300832 783479238 354424349 663465135 405943337 497426504 53665303 481432765 505133881 533736226 100547422 337108334 874642268 901683672 234870040 638433689 280337301 992899800 621631317 891218434 723029762 889174157 388112504 983839259 49399690 177734413 707767887 958576555 245902445 533843041 516258170 761693146 256768878 377232363 582247572 958475534 613911082 746507502 741180117 927493333 903306289 954974092 151408688 639519258 547668077 652459219 622292759 910859469 399029123 932073470 812485566 953746238 324972766 881096584 381230725 435725334 47292492 494670799 205617258 869265641 771944424 833665844 324996191 830640843 603338947 631390763 115136877 304641951 182672379 824822212 282241650 591927714 948189707 985965510 594029660 862063238 452520875 814566820 866380274 883218533 989466694 997307958 534350593 931176769 108175018 672042255 752187183 774640459 318201254 781324167 759824335 881448948 245290106 455565147 95270210 864180487 925718976 928941264 473028665 815639067 487169252 751981595 566865841 717781518 82953509 993826312 464244124 994725033 984971724 995306416 774216458 939651290 885338657 896004925 99365277 830456954 411148203 830585621 561357887 863792203 824420849 830836617 176235020 232863753 380988865 617014243 281626631 581687377 936463980 960061195 766981080 843617128 912714583 946607782 764824126 799734219 465779977 800675490 189047011 401474320 633184564 766902629 607113846 814912791 31431247 148623769 674584387 802981871 957199414 985249846 617637754 771340417 983692340 990839762 466343071 716301355 800756254 837415372 101973261 131583751 563538292 652813107 187335460 461993737 869154163 923975657 310943445 811276560 91938232 266400416 318085199 804010741 573951522 734879013 83363313 276493138 32309313 957745195 890540951 906016785 523984417 554592467 446110635 828474023 740578550 956507791 951993177 961845402 909534843 966503449 624438001 901594818 651081987 747012219 404502632 494349517 878985915 894348057 884546048 895688064 468731917 927294746 238333403 866471669 655056272 791797233 606399138 880448361 771933044 904313114 715824284 763180430 744807340 786903249 445964864 932816383 648269775 791643004 334618411 576938526 513609695 975937527 434182398 545071853 365847061 851393059 941116850 991654856 39398107 238546917 521074825 856379228 859932993 949579542 733965123 759275146 640266912 640776422 584825376 758101855 142140107 783986032 933970918 968399560 329682852 841635193 914741759 936078000 915598508 953585158 522707791 908343548 65357481 657361530 186621246 981978395 165875998 966181666 451736566 865619655 922379626 950407522 865301143 905250664 451711965 456530934 988324080 992593792 581839251 710796549 746780305 950715285 736035333 752112662 918990986 927956429 711873857 723616747 4203780 836190884 46193023 678524200 597321464 879416821 24109409 994803775 517515898 780721269 982927600 995968969 819074085 926961180 939808533 972385325 154680055 580010301 414062494 828887560 256864094 823469679 135640436 907101501 569853328 679440039 578739142 799692596 46984425 456953160 192614597 386429244 467486358 729931703 389593604 798925065 568997982 611136863 892277800 994758416 276226963 670473752 776639441 794825984 150880443 924755338 190074991 727483342 885817731 923463338 241665953 929891954 341474042 726473449 373540469 586376524 76240994 418707593 61271276 800510803 268180116 726283687 973052498 973687677 451677094 757392161 341872648 956355771 385087061 680846395 569815297 840985811 814082371 941097202 115812179 334235937 213231901 889713261 40712203 384087577 381161543 722347383 564294643 867908045 422387076 884021257 613745358 818549465 338866850 560881175 922863290 939436401 948968065 975707726 815990509 905587593 460510577 884186548 772071890 839467860 127131312 743183495 467662026 634089861 34355387 965890073 496381879 867862483 917918428 984000255 373139534 501343174 806818384 882416514 894126229 956781832 322575039 516942967 642514137 691254935 204144213 392046127 331313070 671023297 356311694 553591906 702970553 978528819 110046075 673054805 930983964 945877494 977503456 999738102 161842223 232925758 509036088 885730831 939334726 946494461 325947202 958759508 660286607 671441040 364990569 523244413 72520169 776759761 55333477 664020982 260346310 377083793 604859926 891067123 693780787 809525525 65515883 491352050 974616790 981861496 833785368 857793059 683630333 710895553 823378221 905382287 561212946 623248185 8376116 257953589 103330285 541393872 701973093 732350249 437639689 602308228 65186574 253369729 833541749 880773093 365718060 717933781 732666128 914801466 490263700 652250416 949539000 961088478 932080237 971704981 80478020 273847698 789296060 988675113 160660269 292911117 543295171 575814801 214890419 335947449 422083743 917887076 759239486 773224645 212954571 727461475 968797442 992202164 826181073 950304703 46950386 289898542 669992482 737665873 653814644 674187829 943303709 974352636 799697618 910818799 844626937 925042491 236181523 979906314 331962125 624891645 577776029 694437991 874228264 929245242 802884648 938155040 259506527 724273715 836280634 861489544 79458802 523293695 993701261 996629441 139221851 646674913 145560243 515922334 778623070 900327655 207082543 990742765 306131517 640022870 428764146 993048139 718240855 872067686 67707511 492185226 962904552 986018409 127482161 338429566 454488583 914729782 107600292 362888683 933824691 995009052 672953244 911538993 38361730 730820688 957764560 984075942 379631676 731843944 176301678 604997342 341151458 544581887 820270051 828893375 61882496 312725510 301880656 501209602 695696938 871850458 427151366 819624117 882857214 920500895 666769851 814873018 840249301 952349809 71757142 554741589 757378456 789239559 294869133 351982405 231552968 515586832 586978885 899658524 959923872 972011621 130587770 139664841 648424209 990998651 262523159 672679561 794202699 862181784 26323204 216489659 685134264 958060656 476160012 690873035 981492392 990753448 256000919 554158320 637281177 797774803 160435523 963257533 407901180 935172983 208656477 833218776 788391900 848581195 4101919 337342269 639325025 703976765 412153722 890124510 179723646 999989330 728373058 850573738 425785056 658612855 144658241 443009647 682325387 921513531 355580430 774752584 465399954 475475589 423093416 582411684 852506416 987942132 1067135 330363270 236668044 630619726 616552576 852038926 782248266 805138127 170768845 685330912 742568999 801199645 978583090 996963241 691313526 810471300 3509146 777107482 458853749 550593863 547275061 862328403 108088605 409564541 861539336 887910009 13720060 957610413 505568045 894054629 284105101 574429640 988460399 988887229 797995745 806454148 847045959 908696492 391248248 536636005 410874672 508381482 799301864 813949335 979857221 994376888 991086316 995210369 498741237 555923721 753378768 779716799 97364019 914285060 527500166 606911657 815850064 954545825 577816604 818304028 855130046 905977376 111117122 997867117 661292783 961596223 427968281 847553408 324603412 556651057 942491948 985430629 30946765 966431335 507241224 609334171 684366514 842717898 921274537 989578708 161738891 721056201 220597463 464472226 829721152 982553020 675732191 860446610 375391345 378129300 389356790 959304104 545220404 776551223 475792442 539145968 63111853 317463323 536798933 552215904 982613328 983173784 415235083 706078913 309004971 647949569 564847785 603053855 338059674 587336302 111348718 119118150 417121260 456519859 712753740 728970478 148372382 199451009 851385470 884314159 311152925 475308841 798449809 977757834 164718623 836616835 470446717 653371834 233871036 791267058 756483609 855017117 262194885 609642662 455614147 690600607 217739113 764193635 782871726 794992760 603875567 768529807 217177672 894908925 139232092 426521437 74847674 295241460 51530531 768840052 870512501 947127044 642166146 950014218 533765562 905799012 370423443 382570468 868496714 988346269 125733483 253150537 542051131 693091682 141072757 445787444 838175059 936644902 474943685 741975644 967385585 968974119 303634295 361581207 441165584 774180421 861880268 995069506 897591320 944663712 864018463 940534253 187145699 583615785 35224328 147983218 868151818 873960877 178565057 861176632 656591032 772392549 923551310 948521576 683041134 913155522 903325453 944008229 47423654 476439929 745695249 844440976 370222610 553151495 50889723 579819482 196948915 331200706 886901080 924974900 87397818 882737682 579639127 800337778 582898078 799413170 617505793 731718654 679342560 994473370 483157497 653747957 277469705 721305239 161540964 960180139 715733148 769430161 230605100 527697305 205745958 954327381 719960437 955582868 204634109 466381389 336352413 360633338 205356456 988127002 827161898 936944426 186826648 612863667 354373203 608339953 643411323 966860729 389819418 681470778 893892325 917458686 676071532 916704051 722261926 871769242 252809379 667615096 112347359 461431552 593008062 706155023 995434116 996235413 761855678 891401165 645082941 690930045 732770195 886025176 792867878 965911438 275945794 731248187 726150919 742451856 884991613 969415878 746214476 927102163 199113669 624373623 230826299 622935823 711613282 980547808 468781309 527538185 403441669 738650280 610266780 670273407 885325754 888067183 727344846 744094606 581647351 934476248 632613345 720029894 367726630 415090935 584006288 659484636 866751542 965751581 292180260 567161474 163113459 512173742 871590089 921990390 806675873 886297746 124540448 956128217 79506485 241486856 370228898 468035648 873331043 991544402 331255961 509396366 778626355 789440288 586637142 734526697 48126174 704749279 105459672 629601332 47169816 73859366 592771052 907106550 610246081 618841689 467838970 951662105 894168858 920328847 611566048 966619991 441511755 961303227 147054183 395089280 834961535 958517042 9168100 752450351 811614886 818686197 613415280 973713304 705023319 768355031 730208926 763420490 151672223 942383034 659015009 729825045 789828407 914121161 381997858 860518103 182959442 883226901 507415204 747965297 837206662 952671524 769731460 805362108 909376872 986112219 90239806 745404400 568140180 920727119 635833054 820747329 748947144 981940817 716045642 897053086 357114380 522259887 784424055 802614365 173086021 174300531 722256665 816748112 150766096 722844077 160545250 402046466 521184883 638880215 199193151 611514048 202427306 856633630 134151268 592280091 131350210 904291366 381056880 526026235 705646441 845335175 988362158 994854658 237366925 483445973 976809184 991026178 997168231 998424141 787164738 810229399 136053198 338199723 684646614 933290294 364873050 805148181 950723424 971666810 353684260 359041484 403999059 482611611 2423724 753344825 887940111 894143325 959407868 982188465 676778020 872417225 1866462 321766769 744472075 849415063 499802730 724139694 144102444 943289262 755279689 990163845 355923583 486211004 858350785 906469555 343928528 484790493 326377412 786095298 791647043 988482818 606029496 872424415 845777864 963605248 152193636 155675081 810283378 830538502 926953318 976965097 555585999 659880698 9813084 811606895 967273614 975908267 899370541 952710845 411410918 524446924 12390693 853283811 726618440 850096143 111338909 523839223 742531827 985794002 703192144 985323482 404411478 769053829 663420095 725824956 205001415 866893687 133523300 238335352 731864625 890680564 90063452 785187881 777408159 945040579 453929673 507008371 539655640 669065317 110630845 158637092 200292987 795181014 622901903 794109566 403679224 467002562 326051216 869461033 735938365 937463788 168953538 288191116 778835210 892468312 839316406 862065393 980310055 998641883 598465762 821950848 191987455 915218283 726692556 829293184 350395881 976161279 41353622 468691219 271336967 795558710 655393617 841668058 601490670 609570652 28830933 789864262 944027917 976521168 937464859 994625895 802723668 915555595 221187911 932298193 489556815 793516531 498607434 755346609 943540741 984948869 415476596 546421271 299546795 693601368 141034181 557231208 315752330 323966126 457629103 851669634 91347762 572954318 304435437 941477800 72857912 786776799 518802045 862752528 948240942 998968289 420202909 967354450 95117946 390774621 411533372 875849248 470824326 590043906 909743501 960198753 26101541 777195597 871060202 971583970 411898168 902377953 950427687 987162400 715022754 929113064 416611943 710308287 728288852 953016749 218433353 712650112 993944999 994150730 201360094 523062288 251025448 554060146 527166144 749501070 945262145 949229083 738341506 826336170 760970236 790994261 842122449 960521434 579187056 624480794 854500760 958946251 896707937 995508791 31405092 928704997 184348113 666956347 147046118 466336837 58489080 709613981 342970236 784739916 738063163 895743579 647964634 768348974 670616822 934124521 957815284 982648630 626441884 664170314 383953749 508221927 12073357 749200129 859435669 994524782 423777196 914897363 35010274 609522310 23079505 186208686 644695685 809912833 803523682 872723229 516835743 523320332 862080133 885630840 460363582 969956923 502129786 759991515 12297527 61951157 875360043 930961258 616771364 712139020 237737148 392212061 312310243 760802240 411414165 998128533 441943150 457808216 504057133 749943101 398353101 887977410 919698755 954153690 324800147 545910113 932483070 945776625 147827406 799176528 928883876 955664105 438432852 581310465 123117393 835233626 528342019 593549350 231826928 892286511 421878964 766760334 557017058 603179830 200490778 273984775 862463480 907622248 913928379 954773372 852152068 893565597 450905907 939594274 410349998 650387322 848873981 944865934 404879725 545558664 944057550 957524478 485601055 986215814 739176886 748536765 860394384 891529300 113810927 136068212 911719340 963081907 377086114 721130821 932712137 999067913 921577525 988319470 516986907 699152084 642011443 832148293 877721191 944942525 876428053 972781062 229336234 266335562 890019679 945895291 162472770 633124804 928218996 975841027 204038598 302281669 484067375 555956074 727244940 957180797 322433784 790676354 257940566 424587169 559065813 637594680 659856072 691446833 874981894 948276240 819017011 930237218 71967058 318095561 847570791 955411686 488243814 630204300 464870881 778018630 265877695 511971547 570734297 612867833 235738508 652094475 61721609 173888379 975432097 980263960 922435834 955771516 582613299 827074406 545795878 819547825 792822461 859504346 369571240 797520484 259301250 766511810 996462095 997681706 839889890 956930758 400438119 899309745 803808745 981429176 705363374 831245235 73150394 536714682 95212159 424290218 325327622 351141456 406942762 488922729 974104546 997902570 579538658 760371437 343834870 556751830 796798045 971053764 725857630 916535999 494689327 948169186 548402199 563879576 656590264 883763508 597718619 977432264 580206276 590648887 321137156 745940527 791948423 870462782 589103590 594790547 608680827 840547421 164252441 222980248 875699579 913942485 674359024 798317993 781771151 837159777 244059574 493638962 289958890 407494025 57496176 837290444 72372978 185078686 784642356 794476971 390101606 498901858 698960753 891245004 837495079 997086537 311266484 614857774 950307853 991646951 389235795 732763441 405640201 458825178 106024775 223037997 983899030 994175349 859870217 944133291 790029581 932720913 334559155 675999217 186192029 896781976 285696699 671539766 566928896 788838358 52158009 881054483 900237137 952902191 276845266 698411941 123496127 590226978 890612482 905625508 182029370 962832902 612635471 877037778 345118452 695410392 318236488 763713943 857361783 932930885 343501371 555833478 343462302 771688725 413885967 807443545 286055000 898381243 639102302 715490144 856934584 952292783 753849776 777594823 920623753 962696020 312463016 856877423 611757845 749796567 141286382 953866272 969372951 993987434 535424452 546418533 612252529 666531714 99305081 784330282 742649399 750467949 259889585 878196635 276204876 592724391 949255203 987410850 136804360 164484511 344735281 367548777 938582015 988588452 540894565 937022738 210312134 225573230 708798921 969522341 133314120 520648538 991720498 992979214 671021024 764812139 978030993 991316657 21184909 463031794 505745487 743251576 293343218 913732506 933032975 969774831 989836077 992187058 320484086 343783166 388314910 783011508 650508545 934217734 176772694 620418478 370036383 652389672 269977043 763181658 674898383 959761606 803116987 944000730 490685352 494979279 48104495 807973362 850464022 891304452 893004353 934693634 298719789 681313005 812646975 904594530 701516533 754314553 549911756 588424257 116548393 889792046 665904288 725872506 809043376 993751691 484514184 935186218 65709640 742086208 657990544 732176183 698307773 924655628 294493815 811638566 434627984 826656578 949227858 976323885 610265136 669595399 548051166 883935883 962138262 986666660 513352180 635652595 924575986 977457176 913254926 998352091 435698357 460904487 517379078 982655974 398671955 735572736 418271402 553273534 772703247 910556423 627991066 970898109 23982434 610550106 363751233 835962992 590305406 612493443 397327038 664222839 909127435 997595357 900108714 980202201 979414463 986355558 20678587 654022049 928458453 963401585 397006518 737089443 175333757 354394621 667144996 708441102 134286943 918784099 566146314 711911753 885324903 938807820 463890053 527517369 562669190 602675586 828668226 918376970 314905912 855962816 113224796 542940314 540463470 577211450 121379666 627455822 559881471 943799418 344078009 570978967 387829205 575716072 602416089 642817219 270247993 969608112 93466183 590348636 675996406 679138236 797589563 879389926 588659586 690919488 290982282 540708519 580182732 892857374 609508206 778807732 996172983 997708563 475360215 799682539 64303632 614770362 701388276 944342133 356037944 524717730 266356007 421349549 912302280 978101745 953643829 985158722 480185822 863545780 286570812 672153984 48651279 708063378 720331283 822876737 30890580 694240323 323685601 970752969 977821693 989759763 137581371 266561819 821947797 901933335 364973139 367620699 101465899 597806297 239841638 425317486 739433054 977018324 16967943 288091944 413399725 874191760 314018703 505534165 279278678 965451172 316479479 812099928 59941228 857620057 608692793 908695250 575880736 639325493 652926808 916377175 506192871 801982773 751782247 752133407 310390651 837722039 774965609 855824904 972652436 990998445 594925273 796195458 680858990 821745398 78761410 146489765 474781147 952884427 687079908 945353090 777268757 916935074 760627576 801844565 162897615 991115940 937035969 938060334 231555619 576982336 607506969 982712555 367498772 427194355 913234922 971889118 451477251 625349641 760006238 929785062 215615944 446735071 893833767 970335186 510373340 614018382 273425153 426514754 275131396 681894895 562491097 757129709 981601613 984433330 470396803 955650028 677068474 759882356 308721319 461023697 23873187 829502090 130579374 267979701 150763146 362144273 926069754 965838287 57593889 958072203 474117304 655862913 873442983 893741523 43695657 73840711 823138658 989976829 276584603 791313670 716863987 947618689 625100166 715711528 575919178 721247355 831908102 889821460 806338220 901065635 852856878 953479821 412803511 569103132 914148282 998975107 771736624 924917966 370656532 402609663 670749694 884406221 479535251 484439918 309496523 885589684 657955649 771109021 925082099 956233958 61118857 615828458 487010344 979895792 13544482 939152378 109989084 347764407 375418411 420288525 857602444 872239879 13643044 78841238 332911674 906888673 960923462 965484346 422902772 733881651 704291802 963748750 191014058 734320114 822265001 850253038 54704594 188571854 541701436 751543834 607510040 800578431 658616237 925627249 105972006 726399945 454316846 658100033 186773010 325897256 620155699 802146555 293776749 340124792 167887056 461104025 459275281 650694263 950921344 952381065 917229203 942244245 855070149 870561624 493241935 929237873 222209526 660493847 829659823 913018988 827879912 957236732 613832311 705704555 88762497 980029842 580229920 592807203 108107093 333087082 432295304 782485823 572261290 849767836 135439485 412194767 557921191 912123849 650218487 970382389 673810103 751180091 669612858 698702939 881642664 933122016 301323567 818271186 718713738 784061408 4637055 534440696 325306879 525987793 176343555 381630520 236002966 647868818 68425885 909433354 793425621 824279727 895133472 986566082 782297567 910880571 667770987 938579949 726544722 744563561 645800240 809998450 734983536 822078608 761592874 985547341 287020532 330917554 26033400 353356210 911785221 946451303 213068433 349825464 131981065 449316550 113063102 261486977 384949199 750646486 462885649 797600673 544883997 794650346 775533122 909092096 982146574 996487990 617219234 661660725 245555132 909718635 19350046 729665772 471762807 840654468 807242629 890421596 91943809 397713233 163582796 228564193 743877834 950032825 798580564 928758176 645358263 912810810 744512640 745760492 214780455 729649782 787913386 905139728 757807382 835550269 723309627 969660266 26472442 844037449 596475594 610393747 695476141 810800790 105030097 937708876 955765485 982302846 780879278 983737926 447618144 747391563 884600451 935686923 872612043 940252315 220950134 580539734 3060288 383627361 62864715 709123470 536915717 627279288 217098892 526855280 977460923 998206435 507613834 990791699 355809598 810871188 544326677 686805829 489579571 929982168 801505079 997463687 935544799 969661018 730539580 747291160 26739156 141047019 491851884 645040927 897332089 983522087 877215857 910394472 69415427 957632959 458529835 513032607 781833353 888970680 186992028 332101629 468952018 901389964 896755566 989582551 300783296 575190025 320661101 431497909 935158370 951619503 466211520 888912833 92333302 182108864 87955935 155190316 247577342 532169767 522629265 975767673 601002957 601332557 488147728 755817178 773893654 820409856 410507852 965526217 812396788 911360941 220545307 393893852 164467935 506452697 688629410 904184557 727872157 817537216 933851930 988873726 58378794 524715693 339051901 554038011 443819399 663428146 16677060 321956961 980403257 984206169 100562244 734815037 897327140 928207250 432567651 648697271 176454144 198647871 644555921 880110999 783292169 988780654 141124170 759774105 366166861 924666613 466202282 543854467 89586521 627134940 310634241 826147808 193819652 713353332 862352859 899683846 75633690 758553656 919029564 984740107 7559892 135386073 566199306 983040143 316235380 856506572 725811805 915099701 144619 681984470 739214495 823382856 433630553 801803943 233676338 851504177 50361130 292377939 868357742 971792791 878378751 916067957 300307 728182660 282031011 688149063 205830211 359722997 386890683 812218613 684623703 939423570 740935432 943667004 697656421 936396243 695534453 954131108 461151670 785807346 516383619 943318670 637069480 885497209 667507617 998639242 601991153 947323520 282626934 328453138 228795679 589897203 476441062 988416449 10003514 111322496 111957365 872215594 177522411 826632715 335204799 476257603 465823919 755374113 717580740 720840159 803563346 977344322 650789675 696981320 529037361 608873107 899858488 993989555 710753489 732838294 582713519 928513497 330655521 386473084 467436346 639385925 468707958 981136486 763676230 966217463 520691271 931301088 207946700 921448230 896752380 906812697 663535127 884134557 908340272 939428852 90890162 271738317 175652181 268632628 73311503 577128203 982357325 982986562 86661811 810663412 793165731 941750288 158414332 349634003 704670480 874629581 328415660 901015917 604085541 813739543 914422758 986418335 611013752 818090574 753417545 902917173 814106551 972020146 221571509 727755360 854997732 960473903 495854464 964926784 378978860 429707005 776796132 939085300 794646911 956059312 660803200 960519434 62228101 454478401 672802542 727174297 710560451 997255574 35970787 81792539 380050728 750327785 470388411 715531245 33514666 899856404 959567026 966920671 447591327 926315232 168153905 838536840 289320280 813768751 211852059 741513699 395705819 546429970 674732584 934779307 586959706 851245031 227406149 763489208 507648143 869574556 496928130 536306316 600791567 747846864 975770468 976886322 532306451 620695261 429627007 786627303 769255315 840092659 389448262 689618689 579710217 936217092 733031523 807899178 854094112 914443704 469580056 944685388 125506841 311551623 204159603 386540087 957994697 974165545 924085692 940982652 228161387 556721246 540498074 696075751 789951284 811362170 538574785 997486731 74867246 609448018 475251156 611517431 45051824 992676834 529526102 873889826 475557382 546770056 221287098 655996605 94125792 381317053 439395350 713123092 718792073 921695532 967961426 987766395 101047598 933263189 56585012 840385991 246490555 735892191 699490169 759273905 98809134 575174160 789483998 952858906 833778217 895671888 200722690 778638605 170961466 539633366 907875051 958074210 427966036 628508310 701881517 990179743 903521325 999482276 133192455 374767944 564625685 625205753 857463687 883974007 436186659 677170642 311074999 692389528 677766638 966400510 637271623 885061095 180880138 468759254 411277330 796295928 971355634 984588448 519752661 585077735 428379766 801274919 710792296 720288406 606174044 959243129 14142007 997708946 368848399 425818732 38270717 474973916 96875502 867330483 48167288 294762357 182903987 391104167 986364301 995746592 424449272 792337810 934030284 955689274 239939100 388823680 224497287 315595151 353803833 622911396 144617482 377244008 396206930 525203268 896447929 972705674 185275413 209581941 294949586 995471456 836957048 926353588 939963621 995488284 803788318 929733969 258511370 537607188 255913021 934139550 962495596 980743191 740609884 850587872 112920947 562594282 348055931 587228582 227709311 769869615 707841484 836320371 403560934 876225963 881393946 979996277 820937827 847874666 206586434 843521747 227148890 487021627 481834100 991247225 149915985 403127816 756812984 866980066 242701480 724238651 537595466 818260691 290820896 409874158 473006915 989051043 615642561 916784399 47642198 352252639 19119930 412596202 24450281 306385726 898352927 909914708 416476652 477690910 158490806 503469328 224276517 611281060 4526700 927122633 790802471 803936481 311517101 818767664 574682184 664693281 644927660 672651641 110287297 368078777 967712161 985686167 547380574 639709676 418597575 695859322 190497424 373466828 572783897 749304258 562578272 674401226 687621696 770959197 883551147 970996027 162429862 369814972 574928917 911208341 751673130 931541100 768680463 922036757 290594332 977607050 418336507 569416742 867952527 912472173 161497999 366064003 117216764 740135893 510570428 607414711 496309656 818236401 880100245 900239967 521566969 903386940 102729484 203087096 89927376 723138931 241585517 359005702 661663396 857490697 305270528 610270446 300466482 568529329 245994372 759742778 94276644 152900095 177212732 745384992 498180652 962766186 713911296 799544294 103647911 478427865 954596752 986746493 776946138 799561371 468500015 871763221 417876807 860694832 626933737 661080229 692336843 896449057 801626606 802223931 391480747 459555190 509458769 701928212 789600822 894551717 338068530 952680208 649744949 989542910 150609036 891615225 144506285 459352665 219320643 869721979 242541252 675131754 518496362 669193586 444140544 881941789 772760292 954561853 118902585 269767125 96776856 435074051 432592426 881100891 608864053 924772138 114178031 908724191 263468315 562790488 353093387 396959789 572051870 741553882 909457457 973756229 441858328 772422936 707971420 952482516 19043493 570508541 431596746 813431871 265182220 495531084 389285852 512698089 977198380 983452929 776635310 799415141 992266069 993595138 513800503 771849485 353994490 511293280 171033535 928711317 9586489 534543660 307613180 774268060 517022403 574617129 128085016 799700120 517565006 879402015 314266648 402481797 505917718 829032460 983226867 999569141 673823775 934067643 5119909 839522052 792878460 966265419 447450287 770629867 63452370 221845168 356082155 787440562 730060352 764899872 499106468 520152863 389644301 587772423 793022535 982524220 904085203 993941044 19415779 882169841 610396239 881070164 947246456 988231382 368598156 515102270 505526284 649574386 302580820 818840707 920491960 959297265 60208380 284109949 832211932 882099284 683122716 683890331 475510666 606037851 256246447 328330673 931131358 989884007 199332268 566251598 144948012 424881568 377326325 698543038 714907609 964289233 765805282 987497183 372237233 606756223 37214537 390518999 69469489 490893714 149514668 658071125 879841558 952876936 166220397 655562155 3712963 712866143 770770112 983705524 19605983 36203006 998481370 998656588 904218014 945434730 84602867 429256428 432828779 782145604 659730113 686623137 735550603 818829869 166625429 321643122 12177275 926305666 321155731 487340996 234284911 857867822 744454996 972183330 8898610 516391436 13184986 316124883 826506251 995089491 252366423 480971884 317899841 695742536 447295733 737265461 148488355 786755207 223511616 698555020 11960895 886136165 990226093 994502738 300907841 847075854 566028780 908521395 913852694 926752766 513538826 783474194 329605471 352669888 802114128 954372893 840216654 904485217 268406064 856389717 90808599 318190534 664629513 711918819 698279723 929529437 892952601 901760480 652326759 666404717 486980676 940372832 795920475 914957801 360084679 902356075 60790188 676351865 763489034 993941674 37783269 447850970 25510412 289895836 344380296 559420756 90139666 753079773 298629052 449139400 453274508 524910345 806891692 944048946 760526649 988165542 914839740 964843927 456822338 601125827 623388927 704280528 764982304 908457878 122651227 356141786 681165471 866859501 318343924 546350138 357617341 866950967 429796809 800560298 693727305 895621075 226642784 462798589 159921406 236885448 480681611 501519287 791577543 950079525 890082848 957666060 886903454 912942201 723434540 863098936 197968595 297162475 353406963 948596941 361252893 673579781 368460953 922133482 907291700 916921905 741497957 813818054 193398607 466078922 888893063 944271650 209728985 719707774 874580582 938988648 599946093 655510119 474306046 477484573 254776802 518087635 887184578 904952062 452438718 865564413 64658807 487207891 591063327 641672483 542079966 683331015 212146987 505712275 414696394 513143579 212695199 267546357 49077233 990128594 408428346 758402791 190663030 331128033 840210221 983239102 880993769 993225598 536823442 561647501 862360862 936993650 443990204 601682661 535520534 574563362 752656853 876246950 554064442 752688148 649058024 699352223 704331087 795896294 390172148 403328843 905802637 960598805 99527442 333563152 712710393 784544955 625084158 851430115 778177867 849672650 733355227 847711820 782048507 982875616 971382353 994647062 685626028 766884689 943533708 968370030 798994381 901683722 39166716 986032201 822702985 959713376 187075737 948473334 725813825 884202090 998013824 999118729 717242746 836568475 204589269 974946569 142028628 883639306 870422597 898954393 362900901 857301968 130530991 977230543 251043415 788401024 262748931 359534108 169267958 911228274 298917914 635820700 239218813 816423628 706142031 749620989 490358465 554996229 768301108 947322653 785857261 836612094 84382810 252390287 250801473 989826775 550711756 752343526 201075500 980658239 200231499 375221944 984755354 997514681 122206702 597696202 222539471 764151943 865725567 975755149 17358099 45460459 82051367 579536901 759856756 875092511 274077494 778627291 698324197 932282731 644187564 778138935 609320513 946737743 753521427 990320395 506027283 973857395 968715019 978127343 140030594 706416133 210553838 736937595 690086854 999178675 652507994 907672979 186238259 413089496 222786938 463320929 664935183 895893815 102810110 485519016 524202344 746190917 873372624 959193435 202083521 355877750 489679452 629979099 819641927 877562116 653260422 981109415 80355864 741250114 672935110 896493355 497527419 683893869 692708789 913168748 725666697 950799746 260928096 780178404 365867933 979602498 351460149 551679639 365073018 465829394 576565017 683879909 322630634 386050870 759837052 999399508 736462189 961063928 704806554 871886853 753039935 813680276 491285813 643577027 17524758 607031326 390947638 851071067 714595222 824632567 587294657 703854817 463357244 914877446 980772202 980787346 416142050 446371302 774202622 953694782 487594853 911272952 919741861 920942358 397787186 494377722 83620474 167415550 983104853 999269521 306425355 678732286 91500712 759874869 251499126 904418008 123865267 760296864 529935319 545048310 463234496 832188824 182426863 345057580 19988148 163659012 479586294 678245948 103381622 250410450 825430220 954887892 205260486 515855722 657169944 664644502 935628649 994005412 881641456 928065702 229855376 245396659 240800565 600731893 169254774 488680609 788101157 842635926 485091737 739702812 851865662 905982651 996026029 998702432 696873066 835233833 826732221 927830744 346689477 423645931 83119542 798222328 833592918 843682648 948462703 969767858 658130832 879638550 24113686 674921089 141347414 634427837 387962222 404988113 515270972 760330507 285386534 479850910 223646359 756494450 66609672 218632439 511992498 997443334 766003270 922402072 482695415 723596983 61679971 773301483 228484294 311413789 567941487 691112401 44299456 738191133 225211190 291335146 684921956 884700608 409234309 623400400 166393550 787163443 258886522 897090309 239710204 347504574 529109170 925577464 940881487 955550862 475849805 656635032 751246117 916483388 976229449 998504597 705795497 886563080 592580740 697567647 560078719 580427034 51106703 761215574 440530844 620571672 162030293 282066224 100324651 641424405 810996011 832586453 52379598 493531717 19002561 675154888 700898081 732434007 641463743 686285433 633671687 929583551 859755315 987742467 77926970 878339279 998464484 999617856 723451000 975580020 614511649 913933119 794034283 968033053 727959131 754500956 17417735 63562140 858003000 987915948 945986359 955597269 533071815 733822929 913070789 935930524 8975517 175548270 961322711 994512073 452353719 761395174 760985241 868303027 610999656 808011006 903078362 998526271 942717134 974734574 182174745 654303092 263811691 605501505 455941411 901669232 187370749 294044698 526256998 531795124 43832069 721284636 865581927 989627923 383739882 704881533 53666783 967578334 796229832 926810708 82419063 684881087 572326553 642214578 179835554 396809250 174681043 484896420 946246012 949283282 852790395 863167876 826141208 939472557 233215724 571970105 128844946 204132186 385252869 510020098 225446147 553445020 288469612 461662354 923000359 952078996 284240144 818680950 421050586 998470884 366236921 964959962 813656875 878810806 414139879 683709603 343292515 419442925 286273240 915261960 433290836 708451483 577799614 862273403 512040381 746593492 795179516 990134697 782545193 899905479 555583096 655511313 277230244 766291530 118146953 546035963 662857575 884368831 448579380 800538938 333134538 886232229 594144674 905403516 865165288 931177843 220807504 227379413 402272560 640888978 324477521 604972406 276245336 456206206 309085388 550526295 574165497 850331695 545068069 828224635 800957253 923944086 140953487 766648411 73252656 124493533 182930205 294568634 316116018 337490892 149977766 371727417 289471895 802656210 822319973 919530709 757623980 924013361 337444491 918650742 463691467 586436155 969094743 972191461 469070635 902628751 595196848 674723924 732351977 925108696 977719771 997276581 91445353 892834041 793008675 937274768 186182098 769674521 226808182 404395977 858011873 951440755 848639267 938720929 734826014 825483033 574699778 974146337 794607476 946807296 863332171 994888929 17771336 641840371 44641182 549082889 448191723 490606308 580646695 992553718 56394706 552614887 839756985 869893819 806343773 964890193 625108072 906674205 288253691 832412224 659039444 915568894 221604297 225342486 124691165 886730411 276430112 427245383 66933414 207322541 244924635 508438442 695965167 742349471 240465998 626740748 795180717 980662984 967143506 967906830 684130104 924516299 568044230 744982549 658367374 702328092 518706633 698979812 247868953 281377439 601262947 656723215 688259916 755365863 968141754 994181881 146580188 768248868 645918934 697630586 777396346 920951013 671343394 861037719 737046017 853106739 251586076 634852744 76195236 395606769 878519776 956367311 795786988 912130665 292731039 475948893 528788128 864910458 782945298 993459369 489008207 505548880 894640401 985412659 99856492 148778149 903985768 924435494 963010739 999308667 359061920 492908986 10064442 613182326 789533521 827527528 913509527 975433110 956106259 964757452 133811763 432445641 6313885 805503473 836555385 858108888 676576100 762745958 201338594 731414859 576904614 721777803 805924754 914426471 989989031 995079808 988623284 993025736 799917599 915211841 520902094 649975100 279168170 787572761 870365764 924961756 793617937 976157801 919944713 923749527 251121079 932937464 814555853 834848668 22716681 199839589 37233728 260448694 479715271 636842715 847954770 911452599 571090558 735323278 497265730 585015682 70313830 83323292 842188307 908549791 773035127 866437218 104896270 342262991 141087941 435421846 827941910 975131675 637778042 784018496 20240412 415078187 218511784 554079826 591533321 916509819 407899805 889368548 946756104 956101284 318830082 377595794 874134436 929132613 212567138 439194873 229571336 276949024 788607058 908874358 233866930 582487862 905246008 949227873 1919199 333424257 855313461 860549563 814346220 927708557 74197161 514777845 895583467 946007396 937059353 996817302 96147215 122837323 535667023 710628967 796061177 896513977 32968875 529387344 271501755 435189179 410452099 640321184 890513081 898329137 430468147 611868452 449201254 796494023 607927263 766517026 769072150 960528644 982282660 983897308 588812347 921443749 607335216 736762935 706420206 989464808 220482921 901921595 552133934 610770053 816984233 956645033 247699511 745716140 292795169 761999828 482546243 617522343 203626452 552528906 857069098 975941090 7595423 240320118 304416538 447503038 468105397 593663332 169131804 848889132 237338644 429912307 559955739 631929061 475519178 850839495 648537645 778050165 434394917 824958701 114889985 952891036 273566618 299419468 535857420 963410259 772419510 898971833 96701510 936308144 557608861 754263720 897891215 987847088 997963390 998272517 261148728 775596820 344141296 890654549 158884223 586405136 627087356 666221787 156383858 547695977 559127960 621309746 306804164 617554524 23457195 219148781 695256243 952042251 451187878 654310850 360267924 376640533 154990678 384889925 234613387 720939654 430646983 524317461 515521826 796246255 837319331 895030952 539447252 961889459 575390687 803644191 537159137 795781265 946102270 989443268 54225900 513493961 153816190 566241690 385816727 715743921 713893729 721090432 351236669 457490323 810353843 811557239 349586309 381074199 602340571 842742615 802101443 924745440 3947186 918912302 987353171 992789864 735102631 776565412 853958412 941440733 768516640 969060556 706145881 745992638 872970996 936652563 713077175 991630958 618564188 956578035 928768437 984667179 490905158 958960516 378263792 898084782 144027317 680757793 873142579 880422373 444551072 940698456 896613578 958269073 891689234 905176687 123495115 744634597 790001958 852813441 514573636 609821327 526825400 827548342 105246468 659171443 431198271 895788244 42815717 799960053 65178114 363412480 133906606 272515833 55448845 997672658 44402194 580755460 430552008 449308643 414392001 762517649 588535632 978040810 629596431 961269432 384017603 432857071 717145419 820827257 512898542 677051899 76015666 451925709 889640271 956736605 247520154 362030806 603159575 685049107 40798709 676050639 256890482 525092972 458113501 685397247 790504765 943240915 863428602 946882298 669673431 798243780 235135527 322512588 198574574 663325054 224042318 573812782 589813992 654525349 435420466 803478447 492537130 744697988 692702961 749796732 10566121 603172256 341971780 876882840 9323223 327506800 597334657 982651311 725987712 875037484 172812036 734449485 29598468 676724444 839119619 950382503 553592861 817159278 860791013 925874717 788723137 956813003 268891152 415217574 186563208 646331910 660932539 696212591 675391699 924790530 332286152 986380461 364806319 736439044 63411509 467087554 767277913 937573528 590639231 773173992 826814802 997438986 414090455 837339086 539978360 861373249 168616127 602554988 916844280 946932544 543204318 544575983 874203842 934306344 593053763 642067662 6790949 736795572 267098800 668074080 546653775 548677165 429640489 996365927 490221553 998311868 841025325 904520842 158465089 812639259 125341143 588614143 231479587 287029643 565955852 572689849 46415241 549235733 89638294 882923226 464522549 837319081 571886967 951339360 969559606 982032980 985231007 999519870 460451402 792643386 488388948 650183272 446466130 685487278 623451731 809034703 911247163 984616496 343292500 845866488 367615611 889450226 920542049 964728421 52301656 771836015 241333527 246233220 710129132 803599601 836402521 964435114 129759931 328046162 261172162 738918685 766271360 837435660 605182073 968956022 757263855 762852408 429227578 939288944 682611019 841568176 470785984 889895227 769281924 948265941 200527408 693792957 712971902 997061882 688710039 967329724 948852700 950671155 429116058 500153608 43854530 675661084 860799057 943451847 969815058 976254267 924797547 978009134 283712273 976306144 769992468 872706182 192805616 223433174 116774921 121246721 546384001 711744435 633105200 937171806 31136937 477701327 31437947 779725258 939551613 997802873 915599815 920867087 238503933 565251855 821377059 949350639 740951886 988926533 341875061 836291819 1568334 600338644 563405598 591836608 770217477 859209978 93671608 900454994 258661728 855327965 853254150 962936530 302906131 543902460 669105845 751851290 574036037 761601046 867749572 956867644 970866503 988690850 344547840 474360958 901732922 962015961 826372904 881131349 316195145 689731319 455161105 964017115 64623365 711285987 636643177 810303827 758607826 895983718 671664922 735662541 694941855 762560830 870286938 876412852 325126705 502024404 890715503 955318891 205639548 807416079 629350396 660817187 895547911 987733796 137722518 740288415 519704345 891269771 640161960 940281207 287804583 867777878 824200313 921432528 398042936 996573632 225730291 655745973 903309201 975497235 268800917 575345297 61230360 358328582 348089606 920297240 647587648 917935529 525080513 828262308 444841437 568572342 343369261 827288605 77619718 138651046 113792231 409997991 622632880 799266111 210971549 466136735 627924351 971736894 487329595 576510740 751999774 791532976 182765180 414567181 80622166 259441649 456671412 970236757 806938570 922356597 610928075 807261675 61630888 909815071 325020390 660699923 413172008 674621819 762344188 809122193 853740622 898874318 912688195 979628528 372012692 664441606 312078993 901138870 234274678 475774692 811166917 981052934 393786754 897027658 998169046 999133688 880740419 973247492 744348770 904963848 318920464 994815076 425316122 521764079 550068111 996653783 191767191 578141765 370280371 899411088 608602509 632700069 240713608 591223660 943828654 968334165 186817347 195544392 869387743 969976717 355276894 771642601 704872176 897688110 152763616 363501532 179614958 515937758 491872715 563302094 497649411 889871692 176727244 717349701 586073202 736171138 389589554 920624122 506880025 662745835 158981340 498107864 195314549 382486304 638981964 860961787 635498375 664796977 47141060 65345631 542313800 681480217 750123574 859276040 340432851 788924069 444954483 588963737 465540542 579760606 324333875 941919178 956329036 956887563 549237986 663586714 613161722 696463000 902391096 946756507 661424357 742432318 483219645 809181864 591376768 751787200 211565441 496997047 762864251 868248792 811916922 824714405 247672335 558807219 335600306 518542731 961274480 970894417 633178619 716512729 999053110 999876010 544066836 546827283 440723538 678769308 676771385 935799013 652774387 735059102 110531670 167578121 563680722 995529934 285228590 324372140 660988923 880771933 825294903 871197259 311292917 606589967 975391495 981510900 686500077 709164482 283478603 544477032 296990792 783183525 373203683 713718470 188955871 888639209 342953188 515786368 64858120 541439988 588440541 763277809 976652690 978878503 45308252 640230017 848146622 930330278 604788498 712537164 677198730 882197830 192511717 963081491 244544801 785115739 657116121 793569574 257106041 674777745 894399317 950073231 297380947 422317999 601713974 906967568 596264618 940616153 39960144 702551544 767444115 934258095 302325602 654379733 394861411 682426527 568908384 622924492 726496077 808096965 319691389 345212655 1274245 564702653 724078749 975561751 687930195 870537702 821645931 901057448 899574510 903494227 475763269 620083100 979409027 999766625 385814492 571102131 990321225 993203658 56176474 159243175 696767454 820088196 431783545 661155386 791207996 805401095 66961861 511620045 247002432 272485483 55311181 109082956 301898218 495424625 233014769 345820328 908414517 953970168 342224179 644832800 865650721 940300240 33457155 979676128 439297957 517966605 374674724 414386836 82165557 186405912 687059229 923652268 793456481 824704857 905787787 941410548 697301046 738362460 495822515 594529383 409410450 669386331 413646823 762317351 970338907 988899578 475268398 717780616 786215199 965773972 714510792 982761530 572170838 690262199 733946163 955526788 896436866 921759688 19900310 32169059 458946410 491241005 667613699 705896882 823786009 995846184 694705046 833848369 225001658 470215676 273445376 320059616 848934183 979208827 106929462 611644858 372773478 831507970 696083737 745319400 826092939 878296358 110907649 637641960 234421013 930417975 734547946 754007701 677004421 937729445 580831749 991227517 29188102 650031676 844677341 921964891 784420727 854159279 596997643 980690480 329295473 786348096 159613307 634397140 20794812 476478065 771255979 835812059 16725497 167724491 342049876 438382906 880877575 906906916 100474613 821740008 512041053 568601274 527701721 614524434 590319188 948864985 848748886 851709036 403066945 781278032 453221934 680444991 881459929 956512443 924124356 937672423 564132331 997650292 215729344 865177620 511834961 615344063 724832816 977211688 917414182 971120726 792583894 899017335 360771055 728764036 335573971 945834811 874184789 977176849 857268920 982708956 992453729 992612768 652634134 882303246 66946846 871297593 919842933 984868947 316674560 421696392 16667455 211489832 842068073 886162418 342397940 942959452 453348920 890392311 848549494 942807523 384640143 678359038 1143599 62096733 315540633 941872280 614280603 805762490 294540014 988903969 19350950 304475800 14026208 73534776 305421405 654224521 216716850 373909835 803697343 877572863 97706502 250195283 562704948 804357301 35542086 49314536 323225018 731465089 600583143 914460694 823848493 845341839 504679382 608639007 525914122 750569589 900992239 948517439 366303695 539290905 362941219 585403201 424909867 990402321 238632405 721186436 654901435 664161537 319722006 487418759 12041068 849746082 395745085 433242415 22858138 859853498 731799287 816236902 337124867 602297981 386625827 876508324 997494514 999858643 427743018 595860582 646824075 887878027 494697408 893435193 662188269 786378883 934868151 991356422 541508655 998903922 162482817 272998029 637959806 646836455 209129726 514339851 327991087 994126245 439953434 954596402 303166404 336552335 850723697 943884183 153072051 867316600 314588866 417220291 278070786 679450566 276097453 822435950 273686516 886155213 108017655 748868025 294181381 509889415 592549702 913146278 767095616 891753018 485390012 737251247 761468186 906293853 553807855 807002399 988737246 993899113 811111261 954194612 165799625 522359590 578138514 954148902 967453894 984389368 460465996 756624888 289822634 479588179 929662850 947600250 961590626 983048286 753974396 965970806 588413517 701605292 570074190 724687026 900283442 943045090 333313214 911432340 269209917 998645070 115209523 602518991 972021742 975170306 293917653 601989923 387142039 395213108 920193276 961157872 627122105 934311954 943147226 977961845 390635251 573905838 646527584 738400166 810366193 934674167 617754886 673500562 921388184 998727627 307182187 590420587 509459207 642829597 597400140 765402643 222498693 405004269 709996037 731580511 344071321 547530810 957895832 999266891 766784079 882143478 985506737 998019549 160407646 264984682 507826917 531191313 438622056 604321685 630078868 921501602 534140835 974316042 785031901 789409796 575096951 954244698 910639654 924638015 153469374 285682599 601268179 860881724 350855395 807106939 526919123 695923633 150714149 366170246 920119715 938884342 708605156 791067760 282464883 431241172 7698154 570606061 83305785 962574364 797763744 905049487 995450865 995498582 274900842 353915094 82125948 662915177 27293404 403144665 924477555 974961241 975631846 983751182 255975360 764205230 757764840 989027701 151076117 521319756 192506048 761480227 405567927 832793270 310240064 803135234 605526790 841589121 425255185 528292927 735004824 993517935 600336610 845259730 606885623 819476347 584554967 663519620 73050100 240192732 7364480 128463630 655299318 738810038 702596080 763298915 621635784 822986185 193030889 455003813 936346546 956362298 404327623 631459639 477532877 926907467 541355137 737843882 44446209 875751254 487923182 575196096 240939714 887195184 364501058 705208340 876897027 902437709 882059705 991042397 649580174 835159229 352293095 376249644 542272834 644638376 499668534 968671175 575399780 905530947 849280219 933993685 253483945 389405463 894404832 997125510 681131548 737271984 489861652 861146315 628182747 770175121 65307111 611669682 249093594 510659738 614708 878381385 188840668 868721209 308756202 507248916 82365756 967661585 501217327 992897392 664348496 903338505 317284607 379741956 734244403 793949737 936159215 954561450 93973583 205969311 985449408 993058210 36582165 230488839 450412226 850076638 723459147 961641790 841557888 998701434 993205477 997609510 239675164 258921685 921550721 957680661 586549354 841191940 102401540 545915685 598549923 989668992 367044338 840378799 769424097 816789589 759081058 911005994 825201516 972250909 855197301 990250478 569673597 926234238 146098853 279228938 913609301 962539518 177097930 701598461 361468141 781917214 138092110 846437362 440264064 646017064 904163970 921642913 759215318 985015752 753015739 926983006 926838849 947090526 425131440 458204441 909925325 920389694 368479720 739387786 843258951 943166711 49420545 793103211 141027304 589198959 313902863 559264757 420535073 761774923 404078953 618210739 957179491 968073870 303515112 952900766 765038814 880538196 131408308 824444492 863444785 951367238 294563771 821131084 38417348 729269795 506788087 825273331 649772944 871541151 317263286 872906207 43564072 494688166 465263822 690643141 957353327 995917653 723403600 910969736 573398985 952717409 670180684 999426385 659185979 831164338 791313664 983427905 928421254 953243943 922522753 958496606 657161145 694583964 668131011 995009245 507373701 871997693 111436212 685184078 361301149 548401759 670013324 952586503 824628596 834300820 50464404 128220522 631186398 921945130 823307696 941794738 542268760 693323964 441812043 457199846 915228588 949669551 230467999 750368497 430761788 856917942 913242851 972302974 812100573 822721663 547805283 856799921 8029033 388980709 919626316 919918736 598705767 661654767 801055911 952581664 446585475 481418199 850426546 962419574 830820821 968646509 321628140 636910390 937898776 958875715 236922181 389375980 811896361 932498176 756213821 967236604 493978242 698210815 636476808 707853771 418110612 517135043 851031356 971708760 348490664 971965667 773908982 811125234 141934893 963406341 248331993 693258248 783274938 888812721 601750196 849596350 110087078 693932221 177150685 395039490 151851588 314755989 955960586 970361530 478765389 768729691 317219381 372095806 146532644 260442650 277940010 281348267 802630325 854287198 377147638 805206773 374258491 883617843 138056132 193640926 43566122 900259264 205722786 498170119 871863897 920699577 482000694 859127346 509519183 621998319 687580130 724296270 239621755 810618150 421553578 926769715 982356190 993978589 543943491 671480520 794242609 802963405 684930474 858497839 697396742 874018815 888498343 900405313 821695387 835442091 423761052 605814523 400125740 537299156 971500849 982508836 412623800 767459822 854206067 941990012 79015654 277243825 348793365 664059750 702396859 886783614 438760059 568749262 876196300 877041525 504167753 897643291 936991375 951984105 711572387 913062434 39095150 206073743 569035360 924836102 584876704 935957148 373865005 788435530 230309249 861280968 437488446 959579682 879280062 883254346 268154031 762202141 310299116 968821613 395148606 995571267 637380757 835097847 814507899 993172949 985306668 986321592 965766035 978624577 668979379 783252386 804287373 980744582 816225977 834633207 136613007 708953775 382459852 534266251 134371481 402761547 418732484 543315246 48612153 875050880 472050717 480745666 196186556 602431753 267269462 438357913 428774487 759669569 367276424 852994277 545202475 874930379 122619079 844112934 825950839 840245076 729113506 965013978 64744636 317693601 226531727 755998988 365528069 474173293 497082552 604491694 941052482 991366547 830116261 897552444 917463243 981997397 488032481 807221482 588657956 715965187 751646975 869775534 193760147 582262665 820264696 984079638 420928423 990062622 194524621 445976536 236977699 944678178 506061284 702872616 676504530 731749910 398161084 581576936 560374008 902067548 391087646 453382452 823419518 903138897 332396734 469909293 584731002 646281144 824604255 952621444 372127220 789219244 432262066 840197161 614427927 683725298 884934775 961692398 944989094 975128564 575498961 857898402 174679538 986905426 362465887 608734940 685522032 755340266 974000806 985481202 132413819 302241884 384105988 692202451 362358410 825524278 808005164 965658099 638510375 718771036 933558126 942633586 695790245 836438123 84506791 708603746 976769515 990847504 680080507 732439688 998071920 998144869 923881790 923968737 487870124 516660505 831961446 834744486 97436511 282585856 235073230 550618056 924557760 940759600 647308016 983466967 708272289 876728130 414903847 547370127 812459697 927960064 383261484 998834328 816794783 923642713 845327270 890462259 307124283 790749530 244856787 541264403 92562657 267962172 287300743 456403914 702577637 913862505 824141106 907766769 509890132 567049564 942405950 994408008 712530641 881068116 245022533 256238746 823776021 975063964 959483555 962657998 433730468 770734612 476102526 669201583 300122436 616379194 27787061 423898256 762321900 774096174 532722191 614553103 559004506 579040239 191898347 926792686 232246247 922907461 755583422 784027321 439865559 547980540 391495541 805274028 647326267 817150419 445994992 564867740 382379466 672147671 895317600 922685241 308612655 905649439 290532508 391768700 870034137 906514437 97308258 268069213 765040956 928924872 933323791 961722252 668514011 984193377 463711073 529345565 499764692 999840057 353698175 919706172 194063303 718780312 248197303 974853619 849824414 921185612 794305388 828598231 654494180 951076155 260196301 859845352 819787689 863843273 790025208 926929858 300708694 365840786 840014413 881669673 342279750 413666252 68507018 503386876 267542983 771515008 740762174 937335158 621981880 731185262 653948109 983708125 828802886 937221762 472226621 750077786 988175209 997541794 372731589 527197134 896620522 960699608 43448505 143673042 559798774 632548836 232187071 727735973 863427382 950697619 700297419 744235304 882983465 889509141 939863533 952895656 394582364 969351299 275047406 340176117 995231249 997884641 373028484 781396678 585581494 968720431 830430610 856051490 861393744 993266467 256117939 792714238 496783375 603130816 234793897 703279912 363922835 748450168 480815207 682602485 234399733 362979576 389451616 806614633 719771515 775268946 120890588 249393982 341881861 803000083 453749786 571691196 291763826 454179087 536263646 895139622 515539614 793099324 102627986 968811810 657642245 689984507 587588847 662990736 471858546 862719898 708384365 757176499 324180187 894591305 691559117 813641437 372103269 743053032 643971929 968364107 938598659 943993190 848609958 946599300 33787434 785259421 436936519 508285098 325970080 694117292 353394050 375492355 390630409 766864069 354148405 459741276 805287722 911018624 458339761 480892102 499814299 970227338 194392645 722986072 121717506 761545085 868443256 895573169 147897045 230910366 749320989 890237737 327737202 780970894 193055673 914301573 699445197 889245048 476455336 869206262 582263509 816463678 795343928 808901711 312745410 450694696 786661030 938980530 937961619 968904791 975892832 989056307 143400450 621781394 734550149 910308174 44592764 135245633 652848050 938869928 144680843 657950177 981430319 995278082 88320637 893580596 553186316 578175550 897893102 901048938 350969619 762826790 670964013 805090498 429846239 619682534 228741865 974855760 80788149 443415238 760780108 898410660 771913382 983302068 686312251 730777257 48551099 572414153 880092984 942677755 390035827 890675450 822797453 867341823 927464897 930800535 725873039 895715635 198307502 539566935 842055650 903432527 980142659 994277561 41457522 817421446 549218201 680040285 618366078 822255737 451735884 694729331 460320261 734105744 332853726 955716354 84242379 752548061 494524109 710055854 405930328 480435433 22106487 622702423 360524498 581340484 612145166 983977137 638096286 932895249 89429737 813431310 333908447 957383845 627628182 958115928 546788622 872132999 966646530 996876648 707161693 738522366 264041402 605173382 351807813 986569563 767970893 960082941 426938288 582066581 333263065 341675095 684100913 824065736 192189591 559234308 720934260 943755890 544870017 848821580 503461289 972020088 978458170 978943103 908094108 967861132 711838947 924383209 44539234 424945170 391065681 946301364 146751346 672930215 913624091 949456413 373902568 381629058 124322730 549469801 123678498 962235235 894041071 910158861 742373764 874561743 621430430 975964058 54357383 577784333 255763377 809694476 826543709 930153968 680178036 788740522 510879483 629388923 778729222 845162431 864551400 936277865 736122208 978175230 9135807 22303084 963785716 987371991 296000841 437393026 918345965 931489738 127945860 481212660 212993646 230287102 372172057 735499718 667765126 909156090 484516160 690213877 7527411 647135616 167107705 550637410 58685929 540594016 61059972 817073856 108516755 131657267 238330815 546656501 911981227 970973623 604713101 605714811 746233765 986075198 909342205 979117556 265676978 740864756 923564964 944679426 304034533 395755527 536547568 699843872 450087533 695956077 910391223 977465146 398068148 600875299 349634191 568894059 560169790 702190548 219877151 652365932 253399996 929806831 921141027 993508453 726390158 731371353 309100695 661984178 37281861 949381854 582390428 667760572 554550632 964188044 46736822 760663016 257000103 934779249 547244207 817129765 405066241 968345398 545726196 912010712 486391192 628529671 555419478 851925593 361599057 396411194 548863283 997808869 784475313 869050079 465628446 579440863 541329764 687642635 84111103 294131928 527641184 763977576 365556511 655375481 575462372 703736852 600860597 970613752 640315508 769856562 587402082 778623608 691422201 983505197 287623625 528778463 351938092 741423536 7089597 20818768 708438807 790251419 284684407 945937046 437643785 650764233 857267427 969745873 427199666 897736844 247380836 618320760 974707182 982258400 858677610 959810468 230590968 794328658 114399456 741683581 274470707 679259675 721386077 817434834 831498604 941184344 91597296 618268353 40776479 232193205 83724029 581057014 453246147 998667796 984483030 991184980 920919978 925689699 393177239 793765899 978616130 988670417 748135078 932904249 860735124 903402133 961073126 981173641 591918796 856439654 413780656 414979693 902613514 911052233 618886131 917271528 319428078 827946828 288280457 576591921 329082420 593037308 437861144 444235621 703489425 866885223 815729745 930693366 155038786 771563395 401701842 932178639 205518266 909794772 530029746 680281935 41184548 896640969 102960425 700172917 953238416 994470933 127087056 322465397 777810128 973200598 930258866 953664024 255824758 728807157 664070510 965744507 957957490 983773914 88844950 273784553 854458983 902383235 832667467 890869937 807463954 913366173 602660580 711209060 755849571 851694806 320368868 559742669 342369457 888240565 850434873 965636409 570666873 867508982 3699070 990340445 330237602 838777201 206981109 516067528 608731568 779716641 895812541 946305278 509794462 634018927 96620420 664013980 76346032 997936118 341944389 637856419 436496721 889151652 332405327 465922421 500195679 861393035 855860345 949843021 13498787 94547805 244486383 748830159 433344773 692097731 860235285 985940791 854567255 878846534 714810415 921875948 976824359 980905634 37181355 266797169 129398678 534488859 899681002 949231790 855023308 883125291 73449981 848309752 797207723 873809297 424649354 450798870 854106034 888341679 178016865 736169323 917966961 984698914 467031773 502702326 930160839 967641431 559080431 787388384 426339673 651607882 591847271 953771153 105743762 334440373 985693430 989663789 830601812 831710548 53033479 869169893 244029352 480330549 387684453 663952732 318580509 669360033 519634943 939134597 799486066 813293902 463602955 888558896 157920281 881260571 378842215 452078816 833206319 927750935 279729518 330395182 407186753 533521141 738585958 938714095 986423148 999885077 910949420 995386012 379383973 585395476 3382359 468312582 861650936 893143200 472104321 644052118 271933946 400164624 162920847 432789493 897982752 929494048 785920569 996338482 826067334 981325189 563551129 650915723 650304734 719328915 626289257 867183666 115457481 876056455 857109082 933725406 995202102 995329867 935682710 949726758 590756502 873599723 20381019 604083102 122332657 237803410 389199572 814893783 650907376 848684247 721582848 734451721 463408897 536111967 926581389 964860856 783110643 788282682 245292342 630873705 577013934 685258804 388950599 502530296 982462766 997544778 739143976 915705818 57272311 833003399 274127069 802649764 341186733 840637935 20260934 350989635 305087641 813097595 915448205 949244034 409683915 815121610 610389362 644863931 859992338 910353118 547116699 817931484 736979319 777687916 88285396 403858525 694723165 976815580 800954938 933138403 62333194 668762665 871469531 917726672 572674341 624393462 568171472 753601315 215510846 786112116 969387999 985323519 458233756 661658572 477767284 787142948 992635920 997473743 329236487 971575255 40621284 408958495 483070539 946737252 326767512 706546778 308790308 672674574 166414959 169873683 286909189 764328434 830882225 957896612 857213714 906283048 349947374 490502353 47391481 268132722 522327029 542114478 110073840 157915519 661011184 773790952 291228202 344176825 347859609 784506297 511193485 812021805 388875797 869738144 150855585 682222132 184714872 219087345 983718357 985870333 49415523 697124325 785119440 918639974 100793219 983542038 566051945 839966908 580202562 788651138 33797952 737026240 642853943 866925896 954967622 966932719 500713476 742659837 672038415 743696723 66845171 455649648 283171900 439041102 224487353 385833140 452853393 516953372 194568451 614988158 368919402 646449767 40193672 930291616 824209362 857877109 420707202 985130589 86460940 923832537 896625771 943121688 956527006 970514628 159436785 210522953 336677170 860928683 598316369 626305335 158488177 743265958 383434095 979438539 487422892 869202721 705139844 952551360 327757130 946901918 315831885 636588426 192412103 291146243 658741332 868811470 259628586 702308581 962942817 989068987 877065059 959160087 970163660 988165342 775616564 802843204 629214661 706496643 456992461 819761069 418847864 815972912 701357516 986577071 131227067 140158271 242956497 546897048 98393716 636658909 102279256 902229044 428666755 490226155 876699699 917209191 59997058 762040622 407175930 808875516 806304525 884502068 316324281 871222970 861406919 956877285 829284164 917791613 612079302 880047745 629005195 890918964 415923998 841092196 292981976 466735314 48659767 570555878 365942981 375062817 260688316 581110845 657751523 730816036 318250850 980484407 510159184 886914496 619398442 671529082 787515785 962038400 501890442 978313102 227945245 506503874 319062505 579965449 655082928 794671533 510353531 644473296 887970099 973017235 222949096 617379001 356875318 949928789 832328044 901393628 552367714 648978424 50070582 584604643 809845288 992254576 588943252 914183289 535676707 840794160 73315900 822337704 920869476 976040789 650778548 651670867 292635694 735703446 255062831 569814403 642984050 925189220 160182659 413349287 161451942 203691371 785639623 848463980 391350035 765171322 232643953 967301551 909289222 958339482 706836631 780095517 514811641 903493722 891104023 960197787 548497461 709893003 914861711 915452301 550935392 719472824 903679993 934705051 164889686 974421396 555784729 988472255 329282172 516561304 531993746 805521539 421039072 681511206 315324717 624218400 239480207 881062937 682670161 872399174 781136718 913553508 132942380 497292940 200378529 769636573 579787895 818457900 998273802 999887520 921053684 962074156 625504508 829810752 7566291 943645649 94111150 710651028 540647461 968392592 41174711 869075179 349077458 867439719 181537577 971312655 825086232 851233519 447982151 920781495 836737912 904703411 540440766 776625701 957267217 959796382 132591950 462973360 457218137 541529148 191157858 604586084 224128326 462643204 857339464 866726825 514406844 706059678 925830336 994222778 638242616 955492898 676972875 946645644 619659870 681714924 210116909 223793659 920471810 934110963 897454435 947072522 227228589 778174158 397490460 657314166 72495619 987497642 64347334 170288591 390260130 421726629 662500700 783067647 240620155 762079931 62753128 665196189 481603770 679914176 260767342 861407670 812112495 850088581 949217625 996113280 722067484 867867674 676698535 761264201 378387196 856624840 141378684 746533792 947977325 965754278 441599586 885369519 596683336 599540098 576722100 896804217 695257314 916230100 347719299 740711001 562606463 691404276 637615023 963750678 297551458 386140772 784542861 842693163 379085033 733700048 411263743 523766751 421646532 527310138 522998519 988049202 422187134 611784536 982191910 991676378 660966213 689578116 391653417 701609021 452685058 482108244 735840592 736432937 16054730 256984337 375324822 381901056 845801458 938523463 713286154 736579716 496817067 981158191 998023432 998661108 77965201 932377474 865931565 891654087 341965605 949447647 114034458 396869601 90492126 252975852 904630199 994758598 149175265 196229711 694456433 884460843 5888227 922039119 933411748 935605541 694953731 995051119 121424513 256632447 572696079 645241811 654397485 702944113 319052481 658419774 291464689 895614739 893022309 906174997 588052708 999103217 587150784 697942192 551971410 840418387 878728567 925716286 534348037 960514200 581708099 597853594 534175890 783724662 502984281 595294200 114343267 352779756 810558045 926661542 578283839 967733834 565937280 760557055 323168865 922671210 852544204 925893792 270204777 994768669 102379439 252384233 187133993 481768973 336949376 878987553 795983474 922681160 215956733 663346570 706269369 928924844 418391971 467308501 823908455 831049368 22997000 797095361 262247290 727029296 459348641 826207392 469713458 786295196 853365446 986639979 86794457 756739439 977437702 997811686 888519156 979036945 407187942 592365219 970808667 993019543 303135276 408842235 869493079 906328407 136554821 648237370 153947408 187102466 980641559 986490718 798470210 957471914 675021248 921082382 126536326 286155333 166167285 301712460 595049515 754166886 862434121 971629446 716851406 891136036 411596373 907568352 40916905 700367496 193308638 622811656 59110532 936445544 368665540 668339508 681749317 776580107 323892078 540916947 69548692 318398498 293405555 985414651 622202091 910957567 199413697 255584887 365053226 376562481 691164114 711227262 781638710 827981550 552743470 936584552 772090697 836881596 23603869 81489849 575835727 590179250 692617088 854687542 855642790 924010285 265541328 562057840 334673354 913703888 373322846 462552265 230799846 814178930 505799611 640961005 746849588 967870512 415024119 894250027 449514316 730110331 174837901 242696426 735248085 829879207 4036764 45298284 792667873 831481806 849588506 942376497 90804743 340620950 944935851 981221040 627173756 680230999 104273463 830855942 854191929 864459551 449359996 465436215 145817763 197446350 255518366 307427896 846061471 956821899 613532181 895676004 247996896 255658358 900277672 990832689 25391601 278160357 771161388 796680148 806624716 931933542 638628849 857605098 546333045 680022359 81515789 824435098 841954347 932154704 875096870 906497242 370813098 410588620 41920329 116008687 816679432 932298177 604202425 904313353 260469183 839449150 870876158 879685080 78448135 756261431 697882034 707392927 867257065 981694505 597793282 703384504 866862580 934623203 633099822 947800963 38262787 719106596 971719820 981485200 550719878 670265388 784379646 907458077 793763520 887306687 157580545 989927660 646912764 891248063 519902372 982507434 975798371 994216022 941715091 961892849 779072122 942132560 860026518 935959563 793167107 932855981 232968818 375749692 442679296 720395062 187673294 681663434 672468718 977725103 339252809 602692805 302522887 373079319 423424386 913655933 745059298 907698461 798245559 944797835 983026372 988575020 3380373 869358941 175503243 708426072 157338812 756826339 146574834 866421836 996088847 998624783 316469131 507576456 218390797 585733594 224624617 845205206 239234875 951487982 441858728 464667923 150941837 611169511 671284280 716943155 957435789 994888492 395335648 552027769 436250858 999441406 896317298 966287740 926599227 938068011 172122857 334996230 208450446 968596027 938819030 944719025 259386380 309427754 7326876 834111024 668241248 931581268 713117151 735319672 840814174 946276122 115981118 447716456 299966866 455252148 216742368 493319440 34877727 217469461 112336692 838400467 480865496 650528197 874269035 929910922 915358802 946936924 116524466 632673550 922313778 944677584 890229349 943423586 727901894 892790681 6549608 206962834 834345926 879384786 31137566 351809490 764478596 913090188 340393518 862016669 95326688 988317578 819824002 943832019 170265115 545206709 82648278 935668762 176357277 541209900 856293614 937283930 909994732 993763817 992979237 997517970 137486432 501266355 149821659 893715264 427033700 537238062 347442000 870220134 992878793 999035168 307485785 495327592 939391094 981655975 759637518 835925119 300660235 920717947 733442645 867333156 828428396 980678925 31534920 164829419 494245573 652287703 985138145 990745563 699542457 953061628 445224787 689504161 626642747 804749105 902626245 974071000 172017785 205423244 280368615 348487315 101373015 636772233 510998603 945645455 506636786 609455635 348905577 736689481 187318026 387807954 196446314 260117172 39439929 346604420 866430906 924845895 476969791 489676155 13837904 163044530 6107013 808091588 9618718 990096975 533829722 714837529 463749864 998062847 718404148 852937932 432433553 947891316 798724354 804840085 404494395 509197839 293360097 800356739 805148749 890307486 813666055 868357257 948227873 959056869 906577130 998157571 553336056 753571085 459083781 731809321 428510661 891342873 863250805 992887237 507742898 872397225 713142330 808556877 754922932 905614094 896655964 922015945 606227297 828863878 16416031 888861786 740567267 819284427 805469844 924551928 616448257 675609368 86399477 836366066 621657239 833918315 283661704 557770280 67654257 495992261 925806656 964908668 936541930 980445217 63419432 73109222 932159071 992598039 358950500 401439261 337653296 934795094 735293991 793815532 340243642 579660938 438132867 598640520 695106019 866550587 7298852 69180156 35413065 984768871 162778689 176527947 148567000 455966946 695131501 834229349 169540770 362736545 553061258 638351100 665621642 733827831 91292882 395875140 932949626 988510068 487990263 547153862 298872626 334042513 160619304 619169907 37768645 186800931 388626022 703143023 698291355 851279805 405308606 618290924 141466094 583299152 253553264 856185009 767332415 882304450 550815945 766190887 422647191 624018868 519458652 635033794 792920045 813836613 144237120 825600982 366450129 369128609 387403707 403717289 684555849 849620167 801940869 905682999 201020152 383107478 36762507 698589077 86687511 723373067 175824773 317971130 509210999 696735244 995820417 999486274 538635054 656000037 219119186 659901715 820975320 829910507 893928804 972272966 583317879 649299142 912851476 960255823 620528265 996387816 757044224 804067788 540529381 558200429 87584533 811211659 473951176 576531765 336713982 463773054 334299719 973414453 50928840 215763217 420252165 479148895 989531250 996151567 946797158 983196555 484869382 855583983 698384204 941568066 929052013 948165222 518013636 855873956 968809123 998091688 415846010 477915026 886219889 918034635 341855071 522976723 835415486 855836317 395415681 772094989 34594891 485277679 636988279 787383934 256643650 676212552 856496131 984460100 59012079 834988716 68599871 422568046 68614406 700932079 116421534 610536316 86427191 278986711 500200629 886635297 557450692 938526001 515213300 672071056 922826499 963273514 641622918 787630402 147881397 304831702 461797859 778676316 662271954 877249986 781319778 870561767 584863008 742537202 60166601 970040079 967035547 989699684 346771090 683305576 384123188 703123358 430112819 850651768 937033643 996598225 236346795 678260863 51670409 341211751 110308943 326964598 410588165 711984409 412025217 826156226 371462454 538019549 118190459 496445010 867321405 923861551 652837683 692249766 178012852 331382520 481282970 703065331 933017008 979035609 54715636 604352568 39656188 692075407 702142627 963111359 219265431 448546645 760554919 820293245 555369460 746464450 525307268 840295845 433331198 982270085 343781182 911946856 381781518 658342145 829313178 875774982 869867193 943294073 191093391 222797432 182892799 579553729 556167431 774827843 211665040 310106806 815491645 895903739 603193519 609683961 915498338 954007035 662807161 927596401 646059106 895981890 38986326 938599399 719495942 810435664 706276668 966381367 315526576 980676984 233625824 652855049 201996164 268861623 69535003 764127335 327427689 568747982 139019165 663535932 352423474 764206315 873970843 900423105 984410288 987316922 724871864 967045557 257243329 838605129 740678778 752775290 730282607 754203606 456874973 471540789 945048136 983078736 673326415 876623669 793664141 861811826 999890600 999977570 456037757 681546901 561291836 952268782 970543672 971067293 506423486 740642269 459917579 636329862 500366067 899453143 944901670 996073727 523323305 976773587 891660157 973261743 197425695 382511123 3772195 408979626 623003701 913728381 704507815 724549025 881164006 975116377 981923915 981972827 911466362 965483536 826299811 999490134 719396470 865992836 76826728 175678097 95644297 524206119 897713442 950180214 351391591 838944190 991256228 999392702 940219266 982321140 881170689 936894629 650272621 694775121 282348976 882160500 551638899 875274933 174269809 347701938 829410718 973924201 677099145 801437482 14293340 758079368 218361395 380902875 615436403 960625623 991391620 998268774 324291305 881818486 504141889 533606250 514571920 871578563 573869984 584945946 463642768 745992342 621442546 751726980 350336956 590164162 637358131 859392048 22878772 916232300 110015667 377189392 28265632 67291509 423255312 818516417 568790918 670285795 441893200 874809380 701129506 963051389 384608062 432188927 196445360 669448037 717219893 719103853 149307505 857414356 40699036 630417218 173198901 617448175 971098310 979067461 685042662 742772110 537648657 938144364 496951500 682956878 848756913 934765549 947947561 981059827 765278820 981015080 828218029 890466384 841920133 928412115 421811130 893180264 645314853 670885753 385217428 396386760 431968431 614189592 909965287 925370237 171980691 970465670 522632789 540543055 629502898 849119292 353810873 948035604 776133403 868077964 281694268 764903492 110437286 472572746 925445684 991820165 174695325 468055963 470165336 892217056 237474318 445399000 766329224 853157560 791462311 849256660 288231109 587960052 177050018 358649117 255832044 465418788 581351478 916640158 868181196 990110274 957224961 958318814 135488191 612720721 743725454 795811156 378323267 482493204 462894927 542419779 165326323 226606427 686239456 749336035 33952194 895370705 237908613 954202083 623728924 723010064 926556226 987053871 553621727 696271599 871157840 873892800 132109390 373510263 622346482 765603228 864558586 899600415 717763954 903322590 718287634 749479761 362426308 937622408 335501685 751901345 720418266 999678025 565128621 611664995 420681477 937496157 509049096 776750296 58491794 786089447 86913361 805582960 97086609 103118545 131219708 747493327 915069646 970603358 869974844 926419726 431101008 915076279 375612521 408541352 716196597 780465580 423625387 567937381 802751362 812231860 5762020 634220831 477480677 698460411 331369011 434089910 471332541 972198158 927183555 964244267 668604336 941752161 140385437 908304601 544969953 700244496 669089277 886429713 259609437 443421959 114010454 856948074 488915394 760271618 312976474 832622501 748995253 911341451 704894659 746209118 279390947 675767271 239093882 682939214 870250336 912087449 772580710 824202681 143983897 735766362 484459904 491395953 407111181 935061647 821258201 868018666 701983753 816707010 983531220 983675104 80098414 566038055 34368470 783535887 553924477 640095296 855720325 952537402 69070290 463123088 296518485 328357915 100814035 996483766 748701725 965197209 787756464 900864955 526288845 988716073 202445548 977514808 590178328 632247762 703983168 937068304 800240833 933812390 173965490 522014415 449347458 581899152 8991082 562996663 198896623 452010871 274725374 459001952 573436550 833889276 840677090 904991612 52499107 995445532 434063060 536176787 384258405 880885302 492901710 591940210 616443567 900733737 765894987 932388633 175521987 993799723 307731721 906083987 665869703 937947360 18550445 694796911 119278838 514300927 753706266 946765689 934258552 963752412 164701368 202787262 886172787 919509403 576493976 795795633 997045968 997883339 515662747 706181845 180468557 335892474 351754068 476964869 277588471 786623834 435303959 647371701 267081571 923068732 23322484 444462938 624848834 804891397 99276613 713392760 786998904 866526311 496343634 826608859 909273374 937357943 690874342 884415063 801843760 867117181 730614900 859089712 519026438 961434744 954813193 985609144 821099055 847584191 962485094 998728186 777780877 861708665 653932457 961371261 303254730 946305803 134412934 561814371 68217151 869948247 337923780 921578831 712119301 988554651 8921845 632162046 206965836 735319232 882163576 976086466 479414499 893939076 473478789 491440651 777475453 886027538 313828729 580752155 857344003 943710600 140166357 279234174 30680836 141947414 361180950 904368477 370569399 830702873 535033764 572904455 678053649 691172958 350932742 653188264 586308714 979523870 922527393 978034957 638220390 685878401 137442864 356208466 800983390 864559172 616019470 714003239 223993468 831320639 183258304 587167075 18644074 320194250 726507476 741433397 443630143 611549272 741150196 930828267 545904720 617006915 489288500 710654259 392754734 895725969 94146141 797373979 234272959 756684173 746335183 877913998 148741321 220960363 869877830 916045963 182259987 251289014 451544955 883157588 182537789 263851268 943539592 983361502 859074862 946755165 948604428 962053379 769825501 966249972 465281220 892946814 781919176 822679900 890485255 915037797 58580102 622957714 135035505 193714103 263528273 432931355 759422027 923394063 440521374 899171286 656721249 993564136 567050723 678498555 221553816 906433313 199967540 583911899 559547229 676569973 493058869 920098186 720466610 820146990 329477942 904224395 802167910 882151510 490825370 692341586 791992426 909961733 19035418 859956583 426753165 448995994 599153900 717914781 845043660 975404205 86323417 431114143 679491524 717300485 460575598 603772371 122217775 622299039 233114868 638047556 889828755 907842860 934990469 996247789 705071525 885515506 357489883 615363250 949673297 959445714 506757735 577855860 322417981 847081417 47711722 610788334 285970270 604894654 439145884 729246538 976801695 980264673 193324643 749289324 871150872 984366238 371020953 946693981 118577234 172636305 500204476 708668724 857236569 889434779 15439188 904654473 98709237 262139117 224575694 701267825 825525571 870450533 174103980 503979959 376748793 884103439 249440476 982921594 519135925 891677803 140089456 622905125 217243238 985698842 462767698 972553192 552467657 594410104 106260906 120284585 247351741 832962963 192383136 766433705 688827411 724284293 644636604 876419794 448289405 693932210 586558219 781750772 732327482 740815991 16819432 94761982 837051825 986366610 879726720 985395946 458489803 705806451 56827703 926890211 81037072 457034753 477355655 850099687 900846582 979314603 568325200 865523461 546437635 626261621 902921835 982372952 580088786 783764454 592073870 870776037 994512042 997099794 451585778 864047752 251364172 491298097 192741939 799511381 283180853 886422475 630460341 677599545 652018856 961992089 665501000 721495803 421659039 963720031 198928812 420529190 410649284 627076355 274313167 842748492 433262547 533421690 469462092 789004297 427562034 973464760 859643657 873866228 350642904 856869695 194199510 927182867 282245147 835586911 160021695 465017915 884972979 927406671 825839128 943811208 395280535 396824298 10002080 53253808 759074363 808626026 589744187 977952720 654346338 898205836 128067723 247385818 168047391 572707185 162566594 632698942 70165516 679183100 117870187 407760086 334131056 599270932 876353533 900215450 701962593 982020014 930311263 992173636 952569290 985523200 90834469 146841661 432535206 896772877 37113799 738135014 572444599 688630135 717871480 809332318 198848645 238268270 370215102 426785840 159474324 604402877 708088941 851703511 966304185 994944781 349713466 817115296 938984648 968271524 624915983 653327777 432293713 905093640 527807503 788613388 945472472 975592534 160088942 816181033 836192945 952576906 797376550 950389296 399006058 811466139 572993453 683098596 948778486 986950347 111209800 453621173 240729738 975666279 579499646 619565952 613931151 745655740 975788337 996541340 752277260 773768261 396768409 446701242 103965563 369053287 306809100 363085762 705065068 939892840 808593950 958011616 813245455 828433832 835887128 989202573 911917340 914787324 153142422 742665486 856429418 911185124 314832410 941389370 447338726 596639641 964792094 994478011 746081734 870842022 342918541 422423979 264028481 358730703 779679931 791846713 794587158 877926270 331327456 946492018 484852164 518677827 118443866 474175239 457065833 717996936 733939221 898538639 434568604 471172931 609141761 814799825 193057976 257965973 671214771 850151426 972622807 998138912 678202449 761879938 696828994 977259672 777508778 974103021 247550306 556267994 445723549 926695937 342879652 715195430 893572237 950286086 272338438 640557797 975548323 984195626 524379988 795696822 162465228 680680550 129577541 313708666 56845872 470454269 694409090 947125017 381465626 732151286 978490724 990288761 938960955 971791073 979488697 998323778 311816361 964574117 385456907 580843614 160107502 830058561 923369479 927410774 39659171 644121661 308672086 899134030 783788047 990084500 379471749 802098075 346013370 853207754 316011185 731575002 261626534 658101728 786111410 810413732 525669544 658357907 163196050 355824423 591131342 935181521 851223832 923654236 13757522 533866978 951911237 973397431 510998793 905193666 524717893 666189773 217512978 879991584 15585624 299976797 759669264 928931972 941324439 975539204 272425496 493815969 185815279 489410034 695974833 739152057 304105571 469536037 478631448 849952020 992671131 994911667 640010734 714691167 334865713 463432475 174759558 954814839 976008068 984234639 690560151 748703042 958233601 991223956 740888127 783022792 409495859 981344637 963402510 999615662 87264980 346001695 606955406 905825205 636581749 714910377 27953974 985002101 931902274 968963027 875795937 916896948 835096169 846870344 708312004 819515370 518188898 693200657 270789681 400880510 446383092 459990817 192099800 400889457 383099396 465052447 901538646 954171633 684833961 929492614 299350961 701703859 222102637 860902289 409625064 701985136 455904788 759829510 237549325 455594761 931178247 978436897 413814917 935532607 512206573 649179263 249014056 873538568 112932516 532763088 570165763 589565908 434384778 832945973 782249562 874172822 872478481 916814816 805661176 993859345 264998150 432219426 489870300 686757842 241133946 754763806 324707515 405090501 925379601 930057803 541986276 760760801 917497648 998944460 160186882 185894363 323315918 855999003 752824326 857663660 251328462 885593363 228399906 655338265 32676038 131382295 889665181 951275629 414691211 713843696 590557271 960660772 829167741 888198676 717137173 798916694 833595905 866950434 472113354 845427668 608109007 697777269 12107201 371373558 782092957 930221088 5041059 572080639 522054233 591941261 713214363 992826557 928763682 932084340 305679863 908447938 763658461 928175464 771281326 953913230 608383124 768242266 207015099 297679005 294312501 379439439 801375644 838041038 814184137 923093250 486743355 683103246 294993808 811950308 5740438 869103446 367209753 915858820 578014926 709919281 970605010 995632799 124177471 127349003 585323746 860653301 711395422 952865973 232121063 585036152 590811187 719715595 199236815 440340149 241316575 385879907 776023384 813436585 493321806 734107877 923984751 997498987 106754434 662776069 856009197 931513463 442438174 976419866 315769705 500634786 555175914 685292433 561602563 874594269 234693300 294834749 64326631 550813194 82432378 876029263 779487497 851886278 246252919 310923420 754109671 977142870 690368318 947237797 340796150 750355570 696828368 711223915 922108807 973310531 922977495 955100779 201622773 946492545 684593208 704141847 555632169 905135013 668380714 915872462 553154734 953446304 87947929 185343202 157668804 926902696 195138883 513247559 939402929 978799776 347284057 982367766 671376906 794875777 692554841 751455852 999535111 999632698 602460278 950340931 796740052 891782480 498132305 597244063 516944081 639812458 79661936 182225625 742863273 901439328 9129604 378248638 379646143 742823199 648373236 672558863 889991627 896868278 662208800 929850572 87349371 501331700 299447226 319958365 307574615 974976102 12030752 483971865 973962071 983131888 446549030 936665065 60424486 537418813 931101084 983800914 165015286 795937374 993150378 993587131 847513223 897034576 857354298 983772214 675345641 998183532 888077966 947891521 652751758 810955029 537038749 590230571 415419220 579487227 289646495 976343416 335579773 881901932 573912110 845890845 183311261 434749471 325483136 570763174 559120905 697474782 311887048 502110504 996225668 997508213 500152653 889217568 794990563 841110530 312921613 841786310 787917111 926524225 840505541 904739195 482444727 883504255 276355004 922387941 88937988 172925197 413087143 861532872 79000739 596123736 324700255 460372285 272627679 969419502 66365328 855658970 787693569 833738085 654100031 689027217 849460840 935915440 814342913 992855628 270184236 274818912 375765328 424327786 531852579 614121094 97527969 785770423 415516378 897122920 302379577 969260779 648569514 700560455 327496893 665404945 26608865 776886776 907431245 979267183 908706947 989545830 981958861 982224525 499865661 577977407 566293243 655893016 301094106 870755346 249712566 675481228 211324209 656014142 337070868 506690507 31167497 856647988 94372723 939478703 954316182 979637549 952278605 963052705 388155166 418584915 790054413 893801691 274150618 548527093 848835194 918906451 744242881 819466169 488707100 506217314 159081625 331606490 129436922 639401000 34915693 988521805 703317616 734723950 277167523 308175008 805875237 824964119 123394787 312432325 738735722 985476655 65142772 616805167 636651615 788600888 920390888 941363663 427808993 863394333 225057047 560630156 645857856 852338447 124791873 290381490 321835749 846180935 509703317 538399559 615028417 662494086 867635775 947278024 633892914 712893023 27304873 340159585 205971333 229787334 77676016 789241619 179979678 724941384 846330861 953663086 860673287 890156389 701856277 766665210 187647562 910954002 219366095 222004630 410289861 713600515 322917782 741286577 340513922 389914924 811189595 872137588 321547502 950755153 285044244 469438913 516545455 937157765 79926942 963135079 138348270 230055330 275285874 464493155 633187424 968697173 626129346 919260101 512496289 923929309 548699329 622122277 113005786 216709260 18061987 401194136 958865285 971140280 505953341 640402374 278940366 934107290 450347744 832579332 532031976 716101666 666330036 819183023 564634123 608412134 90866139 273994733 919372548 940383036 347334577 494247370 109396610 858013045 464226889 957595752 100354794 249732639 358278330 617845173 559504974 885956769 255730973 488889509 785063675 831678778 290277125 571448549 148610339 189903050 904120362 993314583 956551612 984529960 857145404 932963257 120786562 173735792 446591052 983471194 875173127 891556208 993231078 995141744 13123045 672239345 879262397 879407650 848711709 943574399 475785816 669650907 211097866 771346339 419171388 684850811 155755735 356063472 86849191 466823077 596413215 940125748 500279128 808754890 730334530 908381746 454880325 813149386 374058624 882883800 506352764 842839025 504399852 869841276 425119044 807278561 1167190 175813487 46466914 115074372 450237618 694341021 15875057 227168033 195417221 401043484 811309971 818766650 138307227 983889337 107641696 825414130 561719274 850093590 87510752 91444683 741080064 919690857 986987544 991222684 786516095 985121570 311837026 749744625 982927508 990536846 40245104 997694555 879802480 886083446 133892219 857061872 789315429 862931420 226137917 448414204 999756571 999984139 497215698 984851234 256390820 855678275 873081662 969301946 961284915 975050639 529968967 761580368 573926895 699193991 678604016 863252786 333469008 719068622 543453166 783647419 476702982 917035845 659548627 984685693 167868569 736054221 903522261 914561196 29486578 550338670 12406508 525638174 203454079 776575594 252556284 622259640 821531918 995341614 75438686 415044527 605883753 641198794 54821674 137398456 453862369 922445698 918665412 920823837 944445524 960320047 130534696 185127598 577883093 627536206 766254338 879545713 185967223 544858941 88232241 975442268 74399377 923472616 541774109 596207198 631187576 673471056 627222858 920910955 753259888 944001323 849833002 982020402 904809063 912481293 619517204 756751947 622318664 831488758 87839618 263059919 582315722 789303079 557259820 717875148 15757927 590625290 366116299 795711426 612662490 790524480 155265380 160178702 908047391 976871689 412323755 548533879 549256450 761914723 293188437 515790740 897572197 903270799 53447677 232773627 708588177 904489773 602928200 775852621 55615515 191658459 921166620 938304131 86366758 270544191 769017848 974081809 756289806 779943731 569579267 638090322 499295228 505379287 836542069 983101640 362112722 854435916 131638099 563329664 332277103 954568727 711594331 756566411 299678801 385271062 764683820 797624390 417892204 574817390 159646530 714586443 527849332 624350359 724393737 823617950 254451205 675572270 951300431 992015639 745330028 915330941 532412063 921689613 822361952 889292268 578918260 940559900 20432636 183780985 286261203 892660398 828291463 938034817 923039554 989404556 614472770 896802801 788440844 858432798 804362375 928682109 491581320 526014541 284421849 455012915 543729094 769738271 548877912 880949034 950860795 961276276 920460581 950203659 286924095 484486557 676468954 818771057 369165781 540797855 615021278 990600162 224388212 258248684 906391303 946265167 533822734 996310201 460449048 779306186 508674310 718519158 375949327 557029301 451940942 983973324 387553523 606293630 389378167 895689523 544134161 794507794 236449077 509246197 434764104 568453009 593369466 858767146 971796997 978518323 899347545 921084023 618966524 937372464 768527812 859491044 404351252 689869050 446263578 459346737 555287957 906838102 728747192 949251854 635092417 727456507 120173894 823821611 725597656 895789166 431448217 451123182 730120966 976492385 439216875 630613827 474075621 927569593 662226760 891777717 77220951 877542502 270698508 849618137 762191793 925033762 821343392 944308606 46128426 543581681 261224322 661228119 652464760 993570279 447212262 545118051 410469510 871362322 682522607 722854156 458930647 769874919 993783606 994127357 105505095 635540220 592851329 849009191 167900417 200567154 295274800 493198286 101181043 406242961 622601727 792626491 557609096 579681785 600672432 952008545 499151781 999666995 113295450 792594929 122123816 888473994 145965463 886931219 215255252 264060296 732297053 881431092 699142459 995717875 616748552 953393843 443121308 564521881 389644794 704610016 113340580 376555988 522046282 852906604 101942003 680587459 834381951 990835661 179591596 990246782 818666299 862224313 338189231 399303843 457295625 871902037 382003464 929513722 984224862 997483269 678694764 759589956 177785601 791094792 244574654 986428946 582519073 742701807 104124041 752348793 503505108 536820936 724914667 841380193 771478807 892228807 925579723 934697318 259467977 293018293 639213877 757755580 138899873 975418873 569201066 651238115 660226413 872426402 903498092 992584506 900308321 916519270 352865302 571216974 445717377 615785062 696812333 971108466 393364482 756573182 656542690 686993288 980404211 994923777 792929982 891103444 136836250 394965694 847577548 895397556 986124446 989002758 795932646 979570186 607230683 631964678 913194368 965274556 725912370 874283999 672769234 829080076 205574840 611696558 270726758 827507835 293170928 979900540 300526663 718458422 780610088 846992125 867584956 905469960 458294484 844056108 71408932 707781621 693101622 719874567 890705795 993202762 558424784 705817599 326373685 854612504 395958519 890335428 4585100 436856440 413267815 975262741 357376457 519728036 329626997 721849147 171123966 855260089 181598869 387201036 769381763 874970718 144271398 940564520 170454187 318709200 831702926 857074389 583658729 729498416 357922292 541561096 38149124 98923027 69766324 439553878 387315517 737995960 349177950 709365805 32436360 34458135 139368590 509124715 58042978 555688451 54913982 493144052 157241383 832102394 192988043 320550922 369617208 611633417 934637848 957724121 2349737 219228802 3618083 198376585 249609034 754787641 641372781 969441290 689036801 934633831 608249984 914124664 249436443 813775357 716188609 738065620 441532530 808668309 255897131 308817283 161800430 350761107 841776018 876504862 770683352 952506440 403048274 715434299 981948938 995765192 198707970 970266167 44550135 351183621 183768357 474193647 882519552 962541080 540089623 578258330 527328448 761243222 665261454 858681077 304531001 545031072 717432731 724592618 418067549 496090688 108248163 197290553 837709987 865382137 762498577 892308113 48183955 441661690 638762536 668589921 240500833 844334348 836520776 883610552 997309931 998699593 680274471 816451211 955779712 961500439 419272801 937900798 179515515 421201611 731772500 998858315 240845736 793227023 395450440 844082126 587286677 770221763 521477679 892533369 175921523 582567231 976279885 980084545 228539835 847917564 417105429 997016561 223904489 880907717 239050032 608541484 354664920 568436952 851582589 978745035 426867629 544488052 960657281 998438837 143140362 586851001 157719808 515124011 3229139 897927350 406889961 824665450 282721693 476570520 257478845 542816705 380226233 614998336 657233346 853682084 777703280 897145984 449940598 473595352 993546894 997391026 269132036 351437911 213048921 642387593 438530023 483403911 936540436 966440954 255961463 817522969 96446111 848630454 269361488 563994896 44364998 981886482 227395486 538171297 526166020 929400606 249495609 859380149 417127679 776908041 201888474 323994890 186923979 858076355 895370244 929550095 874563571 944633213 395207676 799257673 811306667 847711143 188631821 977786094 260740191 921208822 555080276 866299513 340567175 992063093 250578715 580881757 391447501 906259591 954767531 992853032 782011804 987885349 927248123 983512657 533830338 606085465 958201003 981964115 425904597 985579892 299814845 524932076 239018870 512963387 568288861 572735255 577267444 912966053 302024318 409583969 308539620 918303483 326400010 392613460 71155107 603362411 746784779 841456017 517040927 543715335 406003640 432202600 548279650 791593958 904247148 906915383 271510655 481389734 472004057 990339588 268729787 721776254 952217508 953710668 424717651 680843818 47772424 599324200 893301802 997406430 801259900 817104788 932521514 965040303 386334701 430777281 384712620 946409723 221520484 740743420 793240234 931861383 307509130 825025796 869416032 984128783 160275829 691338472 516698773 571110449 581769943 866906275 708985582 844931123 437615106 660500742 245471738 499465859 325864977 412533904 111907799 363427236 301572971 890970214 164768386 268776644 161737661 790907657 353332033 732210204 964334816 976118635 550754535 676319700 454674665 852209052 317049869 967178423 37375391 89347301 86774390 493808495 384437392 423896559 156112671 218341765 900931761 947421126 925503065 968445518 301845151 998063067 656688724 700895630 467140080 969652820 170433180 554554535 324411911 792485704 264668093 667215091 855645398 875677699 708572779 868919853 897641522 938808421 14997576 747945940 344787549 509237079 150185299 460031383 418212330 931168441 672396353 887051439 616768273 880933160 259326732 678699116 795748047 926368951 291169855 515959793 732669604 932658099 163501605 934296931 560244018 793474049 830094526 853967504 871312255 969765296 436920529 570032549 720075368 737597286 119205054 807998356 767547328 778641013 803528571 847675158 893679564 936608523 899525347 995951221 443363740 653488833 205531801 805253054 77909225 373655224 517493691 576482509 297784812 850282228 621649610 782868746 289072643 300767115 522624399 842979847 887869891 907396872 232788161 913326400 1266196 875451867 833177550 980643533 816435337 944765200 840524554 854755359 446803207 593573483 963713781 981262674 166242565 189968016 45942461 280697080 468824874 906811360 427279242 927539653 713530003 743528746 250897163 803970370 395736907 675566132 983859792 994849298 673973942 723309912 539229500 665739154 427631293 553931626 575042062 620230604 891541784 967373360 439067247 559471467 814067042 815833064 136210831 866093323 218573226 639572783 350439600 823272018 999672280 999943181 390419041 519497170 538126310 906862753 162757143 178033700 30273867 423522326 356081960 779614108 533741355 868884035 393350711 796800383 468507278 974356514 378329734 952375277 252663309 704819449 478978489 938637636 136786657 326522229 706210829 713008326 685206340 792130823 952215788 966778710 423595023 562495194 564567256 718434608 29828618 525807482 47815266 449486279 915386903 917205579 359083994 826372949 528306742 923086608 710626906 940966903 638411085 821499260 817548851 866309801 508885618 946831316 212906566 434784378 534661346 928764607 78721042 357176995 932286366 973996761 192617583 397279133 62730909 981067579 125191353 570052478 811098473 844248199 439341599 522708360 525810838 564397951 662039919 999636838 427172367 551356417 642858830 759512208 778398120 784065492 931218134 976303536 994128443 995140172 698406649 882748044 907250505 987600793 615192388 687567196 717482273 968075490 45130785 261667718 389674079 838317800 785911916 907422476 380679604 564377249 90855917 104571233 961902755 991446433 818937535 824601568 992141808 995870789 854514608 893128376 556631033 899034801 762235272 977242407 51063802 176910517 667291166 959023379 19206381 897846376 529526443 548652428 847731215 882467239 287722391 726790368 989543107 996821673 561436350 654481098 738108996 835516230 658637278 759526656 436689508 526213965 981278575 985601224 697843484 874691771 726179855 933548274 391148078 668964550 271861638 998860286 158906755 641715368 145519937 787569918 685821148 726198776 512151639 743967353 743061922 809493757 85847332 869042030 63652580 994559361 268100962 644698897 964972741 972428741 674298897 796352156 26753320 895479600 966945039 981309786 484171067 897012262 560789954 561998071 580038152 888529229 354373644 949789501 27266984 38605295 699713395 829132830 321659942 472948078 893130356 898324745 320610376 778767121 104804074 317476800 480665784 657994414 479152814 955880685 890668585 938032031 512441466 555920150 962860567 988430026 122320167 612308287 746684116 927645742 129268558 602022687 56359272 613552235 995620652 999603077 123306440 390756895 234134506 887016936 236174557 809191049 409393997 950198699 624097875 745699779 957229522 988658686 586416902 770838609 583955019 789001919 932160376 937982264 332462816 770266750 927753196 980799330 710892275 916002299 345105861 373245721 564562024 788291553 506762965 777677006 435697203 866836765 271979485 648691638 36076165 916880383 256905466 976969328 757060686 948552289 812462510 847591787 482992088 812423734 826297067 930254524 217790580 469200643 869798649 961085561 353957710 668820983 4083531 302721714 665719538 925199440 41842057 398848430 707217558 782816598 584766725 641284759 877480052 956947799 415006027 753529255 476425108 677825910 682628925 926277932 601341017 922198795 535672074 939755726 516659050 699287344 191491075 194534761 106119197 609375536 725731330 886265194 985589469 989972510 104129728 904320950 876376993 956892605 390557765 766970202 879460763 987587634 830034912 839893654 459711042 688681005 697111973 820218864 904045036 909345928 329163166 661117161 635877268 913280296 569718 536643812 305860826 367875523 673506442 875649069 41898515 472028960 866368613 965391875 818529395 864290098 505371762 821594239 346262368 482883298 500099572 788258079 790994145 961368775 331938428 998156349 354178994 867144903 418135957 696120841 880612643 919015129 949969486 980751784 652636635 968936937 983798063 994223421 355296633 568999232 394813452 863852173 524329838 535591934 177484677 177973870 667942940 899329674 849442913 974497524 428251948 591058399 173786945 384256172 370515439 676012696 812115111 963838491 41752910 443159065 316012717 604348429 214007899 899006528 698305067 961974138 443723100 824354090 806082633 867522002 381183590 901062670 891132610 929452849 722600448 841611408 60999023 227189707 991461846 997288708 743032408 765385121 843830328 935633243 608919531 928252153 664276864 788285034 468549724 621841481 838082841 855008617 635830802 782186177 232625792 844902983 182518842 594929052 180174293 919871405 939769277 948401294 798388857 912127965 967490432 973541320 455212873 641731895 228193341 990023335 770394699 794445970 411527031 497068814 501010775 569594908 791730179 801796895 133865266 803113266 865419343 997852454 3079789 892331434 345450978 787439305 456244351 729638053 880570105 946638476 260022781 728149582 418887981 745544803 147620623 258606334 468060330 942053089 772783103 778398026 135293256 503329881 349839670 648797356 641493773 984954582 520068511 535555832 119534633 722042113 34874167 346489952 373171208 911545431 144529979 631822310 180911701 863939261 46388976 711169678 702869837 809500782 252101497 663131084 80092363 711943711 37155514 651317856 541850633 881730398 53258408 908642309 418847755 719840731 408521025 781255999 393431170 516466756 876580101 954767726 57576161 515718512 20308904 110102368 469732427 684958502 481421038 628123689 147501712 406553964 308564275 352486520 487349652 817388368 441818259 605914766 320050662 570590902 466301422 592203271 553476002 707861111 100375455 639298133 216283246 731841519 122373642 391855820 476032590 547314533 617412865 910091122 45920379 69786248 48891595 157261864 273501132 278459173 836266914 992225973 675456629 999797901 495574191 884099903 268020743 749625262 201149597 827407946 40334218 996781704 988905559 993857789 584595369 724530726 445636261 942405432 432615530 863895737 399919315 583975877 826417404 832776278 465328717 737068518 748999321 954936128 384282606 441144743 189793902 772404806 689639314 937918988 432958615 561542081 48696026 996588285 296594771 950361061 96417083 846069471 621115191 754517903 816799918 927039667 855400150 951084820 101023411 503832884 232208282 250623784 779832857 870300849 23236574 59006718 173362034 183017102 66992645 633429395 599658838 977385012 637080556 783958184 356157167 700105784 863325304 879679616 942274041 957894013 225557363 506484431 884164176 978372892 677948244 697029586 769931052 855057954 384804349 679410354 111005719 613099321 574335287 852069181 612529646 915918553 76392597 99806377 667268373 679182711 511455623 562680119 953934390 990491357 429683817 755475854 185335027 775400370 364040120 440067757 372503920 748938261 351132733 468251278 707105492 769062460 416535221 632464022 162944338 302615031 63489768 280533840 235351747 874266384 696708047 963720255 783897514 803892310 92206060 664909868 764227399 943250485 439151244 807615388 659423619 795127968 441882760 790739397 818355937 974188377 149759178 583611749 393091804 933754877 183080435 521800511 583794170 850115391 552745740 931230337 590821897 788279568 116021655 896974812 588399316 928412111 916269331 987972254 671906394 884761400 844461851 851065019 75987403 601256834 989251328 995578786 225251815 470744612 914243708 956505742 26764127 832291979 731021810 979032917 996554557 997668332 278335331 807678800 669636035 783790363 367821976 463824221 193362320 272236415 700390566 948842417 898134784 987377202 417746759 832113871 796288972 930170586 227727806 438208889 119328108 421608008 29542689 450974851 388556641 968671703 337809153 979625277 533931397 903749115 718609838 991302320 402847761 439564233 512906449 680498497 697651304 804215229 70668447 796399240 496849092 768543067 105206350 384465019 498432296 654117949 31497357 335807389 969860823 985219542 957876697 995524001 996470237 999768642 183604222 579574889 446673437 456496662 328211821 471155890 153535563 319468250 113030007 677163411 926750014 939123053 220041342 690585325 639136154 942460416 768638608 884003141 700265924 819542463 449848031 616037127 720794706 848785499 436096221 465244822 86141313 615949390 826461083 960846573 30201547 725001687 35637114 792284618 473800654 896149740 923580754 994178832 263653194 706886339 39439551 255612342 181819738 942662427 666858208 830336207 910569152 911737380 932575806 999662684 206595266 993365855 831543312 908759009 313083624 387748533 993116741 995048729 939244837 951123488 640482949 783977734 617871635 676617175 600258407 751538502 276913888 547677501 930789281 939674655 276133634 474831179 288359735 989064359 845888048 900695966 663219770 912137351 826964194 986226278 504532891 544104522 438733480 601189159 714142898 859745096 987742605 993950074 199883284 605055126 370695092 628877818 704414081 813204615 189542894 633171109 57199204 485481533 511668644 888045308 621480108 832513639 232093914 930201377 38396241 752332133 808299765 917066967 817495507 945105147 731450522 777188209 914465868 945052074 684780194 820601346 429181795 453738261 512874087 774329402 933046037 992999036 84473335 565266849 740573310 930386769 984759967 985782767 317635256 340616908 555854794 576915065 399731001 460732583 990760902 999545323 201334947 818192481 845363312 939374716 230245871 333235998 1138387 368748303 422091671 545881022 780422641 936885265 757927538 961998869 513612571 889195515 659750080 803219622 535124004 861612390 227836515 304461306 691691267 941939252 40943808 220158672 893648251 929668155 421150449 986908579 285936886 932686416 33170366 914093216 8486663 726974039 298768599 504331447 485537104 854416429 88410042 877252426 510563204 850564689 325244116 338235403 315020720 414701962 292470698 473092503 164568809 512735192 233817508 888068227 203592219 307224959 130110485 738958848 192406684 996581546 602898445 787941133 837531143 998685997 452874396 664497030 995003161 997604357 157536377 169747618 418989181 938891970 171436484 953915760 646929807 887738015 113544524 551279716 389556722 817598320 496383779 892747290 232361511 390906762 984229100 990112075 206008139 836301974 270729161 902456691 548852592 682734531 934161141 987430900 753084518 901922279 392585759 907188885 448036484 758464231 410487180 537406968 986275355 999520204 598882258 923789518 196878146 247994992 123590714 175009554 696615514 964913440 494734097 888396275 1492892 771846989 266512182 955495363 831569079 880237170 455835574 838608109 818015014 861678473 195765464 381313358 272305740 560553836 148483892 359712410 216471074 778548635 831542418 998999460 398529159 425024274 420960241 991479645 296446135 387707237 956871406 972908124 326438875 998948803 694252589 763948480 795801152 995633024 268634558 970254666 303299242 892493396 237200118 690399847 838939825 871159118 932706611 948025810 272313244 585721621 602072006 874627193 357857213 358193566 185192245 630113590 412586064 949545533 361271166 364567174 99946932 854290055 163080958 571950476 541645867 867869823 922658501 987191466 895978170 989549276 673797582 865806596 111330956 495066963 824075534 860386710 609293813 931333100 683987144 970106648 693770873 906068355 255351136 464028777 57928510 595685786 701079026 808011367 15069707 654574004 609466713 660816717 599262268 653174201 750153838 937382145 879810455 880773442 625337416 728965579 887005680 903511011 212168167 650240908 37424684 928448279 774399660 895854753 560440824 733200990 777445008 879267854 815498838 936892304 31767808 507590889 267656916 878166987 532696171 845666152 50114344 395698900 513144353 793719782 811017497 973762019 846438743 949949853 612736592 821426512 615923123 676431059 593476731 781568562 378051618 686438542 944851676 949663421 552662730 740997725 715371775 787860188 951479011 997171980 291930864 636692453 432059575 583403419 802697112 868018487 821378537 901961091 343225391 785761030 337532750 367484006 574750142 837126954 408335968 602578698 504405076 627835374 18893258 552906106 817887015 986801380 42401042 861745040 209154251 854070166 554726742 872942635 863167944 909824256 147446215 246544667 511109887 626905013 192213017 442053523 444045201 519472271 968382312 978686297 787106680 804749813 652268839 841035929 248418102 349375995 986943434 989429780 198557476 453441949 856707011 962592154 755185223 835852435 224574828 464383002 958955139 984864989 590919724 707125174 877342077 897793985 622874500 781086321 752329366 920386720 618769901 736697081 496143680 905696230 733528066 956217844 272620310 997874578 615148907 844686277 427292142 997705094 359704682 609346039 827486049 831928215 526101446 972267022 137629926 403536040 65936537 393325188 146627739 714340716 542863535 629128580 428220193 740802100 547008860 926890929 914259396 952975567 378420649 656002571 363407244 541170759 887387379 990204717 814716317 978583617 315787275 769681079 902321300 946632649 577009713 738158351 192417174 672307350 189768076 964433682 602337970 979672641 254972042 541241375 90383469 314173013 692622471 931676694 605376144 921083108 173189447 797895252 828580903 983273644 451042554 888847095 36976334 198717204 885354626 950368899 787223312 854980141 178597537 283157322 566642355 848440831 175469720 360582450 283517235 497289698 120841228 243409614 78140967 639406988 145700934 980930069 554072623 783420026 696982920 977687145 401477014 960117558 668716189 971067357 174848219 823724466 633368033 957106571 379979260 796507637 187771319 983341783 558264441 689999118 948340430 950569784 832716591 983774385 669729500 690176183 981868306 985257824 124985235 367317165 716335285 832005717 76473913 976054234 526185071 564241857 511682636 843170993 220036660 529226675 475304043 808271496 858378834 998233623 625211910 690616606 796265480 881739154 530087178 724773367 871202285 993271926 94439391 254869408 872648679 909776594 810451812 905020347 541269042 719253755 414454662 578407371 898242867 924921003 847746236 872501953 961588294 993810150 963549450 973788122 894238144 903273952 945188040 967188034 900970927 951004890 269941471 777355659 811990209 967772635 734657397 794954173 893562234 944130456 610643189 933250041 738300426 956699642 623100376 935691084 185129136 614431281 144076553 195549654 101651456 344577417 122249363 287555703 281362671 311193132 260922005 604227336 100738329 949033054 787697040 809175572 511028294 723180434 160670970 651908094 816310631 902509853 432003368 775024044 786837142 832122172 533996942 726466042 267680527 328132983 587257947 807015809 409024421 922475212 545662421 741304146 372373075 705212516 607233137 964936210 383112866 417706444 267660499 611672244 148927555 918361689 312951990 657132693 412085998 427740770 582077923 656607213 608618435 971063441 847235849 872638213 986096597 991496225 447609052 972923176 173420565 785710757 56282368 887092199 672946182 778322700 954648795 998668042 606884314 966730755 400807330 545830214 506522967 864076562 916740260 929443154 857177143 994530399 594882078 799765369 924016285 977582812 449684046 670982037 537573945 833159696 965392664 973442126 979432512 997249431 22299930 750327246 227280656 655536012 396165182 928987405 504991758 806863471 668064413 894099444 127036158 181870970 334564800 753631526 438244576 473355435 81062484 272942703 166266948 562972334 782093056 996270435 289980653 381987015 317626431 997877312 915712254 971516893 877326933 940630025 122194827 549298222 725146527 970710427 358520855 387125493 766397240 819565932 426071074 588250993 498377779 902069290 15141342 84546550 507506945 805023223 892190096 986814728 938229746 943633427 214876461 866799886 507872567 876673133 510483033 764560666 53345078 715646750 297420937 800119495 198085963 718323087 297582297 611372848 312639060 610782944 700714674 703690562 53896494 799979279 494439339 741994951 106876908 745641324 665841650 948636362 320029870 887739317 635961760 902349577 467905766 909264702 113834223 633598447 916025517 946082661 958200806 992483081 338364493 705492041 988097527 999009054 937246992 946804633 714321023 808049345 800071238 992582471 800344688 877459668 911396265 953182629 164654914 310824178 156614823 438828554 875106400 976562150 286907559 669682669 500397698 827148852 15656995 269700385 45349259 449836371 86985166 804850780 29110455 959815524 932703449 969156830 172818372 496236787 861863751 908148668 774240203 991321017 897577659 959033328 785199532 884304857 389488809 475347234 395941398 546041680 285875762 403137193 28646950 631848440 376376699 725706863 446974355 710465218 335058996 609872121 791370895 858581589 818577457 978554320 567837846 665434953 159267181 638376087 744067639 989500484 109772498 237288515 428359665 824318943 162668214 430042884 133255022 316654383 830460160 865822092 268551258 692331229 507598665 895982965 73874021 548258220 908223491 926035083 647593113 931188927 698407662 824028873 204888149 993849136 264042857 306456031 317380636 479734664 213553953 261262940 739766018 916796584 514363499 793415556 523477253 991641633 129246292 402880803 672336584 745446025 284810632 772712771 727275723 983532736 566269158 770607799 754333951 810478576 986440483 986881202 199876134 260839103 544700061 983681348 312269457 406502695 838920097 866910594 756375583 812672413 227283679 882983700 399467213 782764060 642845697 850199138 407346935 801044693 397011782 419054364 140554288 448607532 415152623 954766734 524576995 924208515 954884632 974360139 845673723 878591067 987139874 991437806 16370692 688530681 177505625 302572729 82096891 985237698 168563721 284820402 985018509 985150132 967940435 989443580 466100842 522322164 997688769 998082214 288317337 886530077 481747291 678044481 273159304 544308218 306679511 458427184 887097 408364170 135020442 371130296 412974205 654622562 633682783 746459763 182715738 333788660 131876915 792473243 300841755 667500433 918184462 960690530 694738146 867311283 869048969 884838692 179384605 250401983 163075150 358924991 502182136 542145623 237444599 673388079 965680553 968907817 203518082 348083106 583354605 692416863 38431272 699431495 121202218 638607056 231257984 754414775 966989468 982925535 609345152 941483329 197251079 383694282 267407527 606367506 315055266 551799843 126788422 794464462 363018457 500494217 914146309 923705826 2117325 528579384 790575819 879402130 449075803 720605662 567125329 725683752 896067384 963835449 326767490 336162732 695969547 762104090 514414121 759070881 80458421 811790431 273164839 508066763 779799817 868490348 932726392 961411756 538612049 904304532 395522640 883356283 118775804 149839499 464539527 574482193 982097713 996440649 434326070 637353015 663332751 734200939 62676738 713352248 369302776 455461687 939213268 939947778 61574604 157395961 829612606 941145484 232410261 957957996 783754235 997538642 131897777 167912337 972840682 999286918 541921118 591025024 269238558 924214115 893100817 998340234 506583110 809354692 815949988 823253209 246686646 680237145 307200572 532359764 462759987 833962078 107761486 971901935 786448816 843942606 394008518 498502337 440889141 454148984 7515271 898416154 855662794 909795091 361513565 405016906 409990294 549480338 505485287 895213652 972457225 973087078 892538426 956433181 896933000 953536884 526260920 665528989 136443344 300278203 388968908 928305720 562207187 757868858 139241523 586542895 339128476 526952228 257728189 685099003 203571745 675509007 57183944 755775163 173893278 213207788 889380225 908244152 824322270 874128121 283654062 715170117 703855017 980004956 514678134 777839269 172578090 307042142 466128222 530633388 310540957 857985321 191447997 253037205 377177390 966530097 916350746 945363855 682402292 934338199 388266519 435773137 889812629 916599250 529901711 691115043 930368186 964517280 684655636 999673552 679839544 698106935 566313409 745574415 765035082 934283245 781705848 993306589 665126821 882020578 916979518 977631373 912946493 932571537 814142971 996664244 401896069 715863905 254398942 819570353 765926484 943018969 102851719 881802071 379041473 866834620 671254282 976211109 387689188 463070794 88030832 785905953 901606031 933782137 105992012 683415348 24890251 663685507 54679526 90144451 622303725 843563338 98168988 346001765 223070725 498072834 679798126 984968748 885798285 905430268 681478419 931783992 546610513 600534287 240028305 479171667 955407539 963733162 469302921 955624452 293653809 336198413 890177613 901104053 110555330 308717328 151891176 423621424 588552606 589510797 780400258 948596789 257316589 973844051 553447710 823963206 206007946 655290243 442490237 517260413 28841577 199907536 854564224 959300415 327522435 980591118 385949505 510751818 270791680 316239285 742990383 886493690 665770382 994076376 194770046 450907151 250402111 652924791 637444502 984821542 381156264 856627393 666034687 879387746 701292743 972974991 942419121 973840532 532886018 735147718 579555585 903632309 505673090 611237479 573113130 710306918 831264819 850588282 719655421 959542291 335336112 523001221 647795784 837105906 336311992 884438405 931896120 992329263 933539330 967074197 516257700 760766002 314173635 575265893 789103361 953165293 916681092 949632107 985477480 992004629 887074478 919068340 536292136 909110477 870555635 895055972 127521570 494399654 705070464 794650270 395677577 544659898 641729011 878617725 850135652 864443682 22133357 780953969 445163349 790305336 656449772 740805707 439009220 465181347 391428708 846182102 640459188 767863673 122322694 551685253 690815201 765135527 439122390 593169505 968538234 975928845 596033512 699379521 60968264 233254331 58920146 216418387 957175117 977212100 109152383 543954586 198617019 575731876 347367253 635364041 459178459 872040230 478717469 754618471 278281883 884993864 127670691 479338546 826537635 876690579 692980416 964398688 115604811 404863185 237068326 747593162 371662781 490762891 643887630 668225101 714296972 918077187 368792119 504811248 803543431 891047940 328399356 498445952 244174430 806183009 616290985 852587495 615262102 734079989 46422828 926208382 275397793 869372751 66604968 819293192 421069038 475569214 716548173 789076232 339982689 375609848 761529711 885284046 921449398 978396441 806675540 978526992 687635490 909672684 718214386 840212269 181885860 526813308 630056370 770618343 446424359 596124233 549456650 980740657 560163928 832294561 171131081 948866229 586214894 595005160 981886623 998509523 813014249 848624321 405438162 839027508 759124680 915292212 731744544 946344100 288440651 863636003 18993966 731007749 506032644 796151605 605927829 822465774 887434974 974302684 216536095 494993233 514304145 645053626 855210556 952497457 569755964 586086352 284660550 797918520 683668308 896400708 465537306 962326520 430919493 949941960 571586292 574903792 471801487 990522816 347029457 390771386 137032938 946896396 175781995 623332587 243575850 695899433 595744527 761634877 259948874 873566603 347578142 403349474 499147342 674700287 450858077 791188398 296840086 818942306 514151955 554626414 529618876 875675673 276839345 548025444 502708414 542055682 850458747 964997606 779625598 925374816 836236067 889574614 70213077 330175731 577032802 697301428 372663982 836365117 472163818 970801613 508940383 574654394 672425774 956200879 796185919 961191173 175532962 666640677 114307782 424289715 345560924 569638149 861907325 862364676 966038008 984788931 474042743 734987303 282405154 862030979 915961657 925327545 823895946 914484600 265390630 526997559 91990793 616597696 267716806 291764055 693941807 923676734 775948264 827114857 772117289 938424136 870506312 935004062 393951501 435964664 740154862 751945965 654763626 784819673 705540178 951329005 464331858 989594978 502361071 815977475 143556814 384158516 496555749 658373214 612491178 977656492 211377662 259978957 287855415 698733973 650227662 794457015 192601158 763546275 878444227 928696142 599964321 767365373 199983796 958856650 486850602 770285274 334365445 826626594 98735738 880654897 898682206 974462858 602373457 968957315 224900759 436402359 561484745 895171547 668762852 816753830 13385155 989237575 481679131 865194822 926994260 993978276 209648132 734335248 676530095 694576860 247662326 345467202 228736284 826703142 298803159 803132412 746645324 748162047 827598415 865325225 747349195 936520079 785435986 816932968 942640714 999090164 208494428 507955672 456309782 709994840 115468893 297152685 836494994 897606478 953191989 960187377 717911022 912031807 384495621 760671829 674220827 825085085 375576709 886309478 622098822 675289729 850329913 933073184 320442455 619955362 799418851 999376511 919690768 962751224 221442413 899433441 706969471 799675859 22238444 505889875 543022948 792773536 307891620 894682513 135039435 508450378 792748533 859858090 659123322 702224686 933853743 991944557 657274318 890412024 723748868 927877019 515097472 585217849 581951928 797930760 441853363 797440930 315853870 325335550 517866674 767829000 856455152 861244921 651804037 992848341 791783907 838088545 413544621 533482853 456584843 965106547 392844901 733767757 860511908 875689761 872154593 882539231 442642847 509802683 107459595 494209811 364021132 691326658 319878474 337696221 565741165 593698844 171087996 927002791 369861320 659426609 203474912 436242548 931891079 941786947 991700560 991771121 80687317 925961254 413545839 966198429 97354777 733071692 710948775 836716743 334174822 452967968 141961601 665656934 679959752 834081009 504336796 933925032 282303654 494096325 6831401 616443590 595339015 848331736 959989584 994572120 706155875 879186994 548867934 638050571 721024052 728298885 886825895 964052347 58260127 423942369 442532919 986356715 820742970 877052509 750288879 847325951 113734926 360025577 385136983 826173464 758172076 940180618 848741778 870545888 701084766 873928298 154818040 440609806 877506223 914578746 984414134 986847662 111848695 246740926 272503175 960985387 696589952 705023970 113696280 728940668 117601336 501643490 600365400 878520420 936840979 993139703 524385031 663564746 362820000 599126478 165425088 514889663 366062412 527788234 35578306 482535592 210166850 891441421 965337565 968697530 912417961 982356654 396263158 836182509 646853911 668785056 188732065 432449522 651547378 773357081 380019350 874420083 80925341 965897374 838261437 888896843 277470975 283175611 534740499 627365101 353891611 980295190 924656544 975851247 656792351 877754849 216047161 902780108 533343953 943334383 971150509 983057681 123004412 519213787 217752285 689662964 228372422 527200997 867482426 949181811 352577905 733319483 719813216 784975658 931519690 971366286 109932856 964445820 761309058 875701635 99028239 240942385 90400198 872436153 363478502 449681946 973046212 980764191 385103057 435637429 926836443 978791880 200794447 945154492 101584313 858170359 43249723 733156497 547802937 933061229 940033199 992603069 588584869 880478135 987343428 993409897 196457728 501199295 328595990 534978891 192905599 428365425 125131659 420934434 774445984 827391476 967371099 972357656 71859121 739713635 305158919 647698795 907810622 922302390 789617722 808816506 146529942 642563803 534833847 897514013 440499578 790096854 593833341 836368746 729671343 887717647 839722489 847261199 490223691 611561590 295665463 655883560 850303067 924879972 443697443 810136812 927281776 929615185 443091122 980831997 147359590 933471534 810219922 935132231 590395960 981279054 250018565 993474051 113618909 860413061 789402229 953516465 510811752 729487996 123030562 749054411 562842491 813028217 131907202 688347633 236293009 734955178 456167533 919751618 213670921 814903003 608739376 659209316 863787242 873127670 945789182 994305412 716399980 871796142 415480275 484286983 93022002 311173375 662523197 676198443 691008264 720860113 31155269 353246227 803315703 839580568 101061656 815464045 744223467 842330399 395020113 900917222 831424000 992856792 227765107 236894966 621116518 876497570 183537739 950857064 69600919 695470520 527702107 719886534 418159832 640001940 204002099 459724706 773959246 891661897 874043155 978544220 66856238 269235352 195070939 696867667 624760131 696314100 236183081 380142663 990854536 998055781 568948994 602944441 151455156 825109465 943677539 986902838 616359703 850691212 445478274 923169228 245589434 524392010 599187516 899062564 967737295 973516646 284632127 768124196 885742150 892738254 890781326 992426442 102077239 131304325 80311267 742548319 551836892 749629967 397155904 448613435 640941505 642161245 927206182 955354328 57910336 946573714 930658307 933898692 661081962 938442830 558408718 586258608 634177529 682222504 103523302 241696188 190389043 638626064 22612528 407992929 440861258 493575306 827288196 967749044 318503092 822784017 236528097 777427841 921568744 936201482 239688624 274817607 11309518 218604191 972159272 998230974 314016351 580165660 162544451 257269177 840908893 914874881 386642900 856659068 87635377 92604904 776922801 807676350 422182716 552753919 238136263 628391289 32442283 157664672 873258328 940607723 166989276 481241503 932054571 990041253 626277669 938128622 514538204 686576823 777608402 806684226 829688389 925350472 793900715 839777466 425892983 433494415 625126490 954375440 831761385 875972516 168613352 689499051 207204238 406869718 75977733 975223460 838486084 865284613 281921112 626855502 242276649 438982348 427675874 758393172 359646300 727071170 275765940 661420725 978141445 980256329 449903146 865341394 200306988 204540694 479104677 504914429 607098677 909886584 274422063 809322174 492205086 697850379 681520789 984366824 56876981 410317865 255820339 610833336 846210671 925626687 160422811 888330040 911891057 983030164 157347441 263938386 212155092 725613245 413044387 731608748 169638330 746658272 789047522 841930244 401380957 643926016 715975060 844612393 343860483 347398376 548782035 811012144 453944398 677961215 252372426 761574535 773287310 872319942 358036661 858654181 787086997 851408646 793822396 944203548 117986167 469069230 774931207 880428995 367337115 996481778 143726860 557569830 71039133 129683489 356146472 867631837 641074124 950112838 813605260 894948098 139341415 461066846 954966272 959311004 645395633 938719957 137377240 847490671 353027729 531115318 373838533 747592991 833984024 984776799 917288111 918259996 661019104 853446811 736092523 755294474 395959397 774460946 720883348 973413454 125902323 157435096 608063415 880906348 161984246 411948953 731113209 762814335 95757234 700336460 997768281 998459344 614364911 858582980 319091751 384673914 287851202 843063735 578066954 897863627 240788226 679116826 506344049 738986646 945084016 987995669 267225818 839008022 287833444 543195754 980352149 995951879 112111740 900144648 797266340 807595935 541015872 587524234 811312826 956380654 83589212 232094306 70822420 871437116 911060171 962381824 658344351 963046580 793602455 918373086 1715148 660786394 128858601 279221340 418316522 696903458 921877248 998604457 242013778 625528737 568207163 693335105 244192249 565089926 466468230 549577881 262350198 622846247 66452514 584682599 647363442 884148004 381557327 467128466 398671015 805141993 441393106 579925353 30637949 717256261 415918356 550005378 283915713 822783566 508362150 551648447 579347980 874861884 930199226 992436540 707797205 927317101 511733738 970916882 325654433 700939446 493833947 902985219 598414390 962121524 259729860 302180603 23028186 422296085 141348563 375765409 5001777 455514886 376150568 746630336 871393429 953214476 285553725 849897322 879122624 932430952 237920188 600817700 669122984 958046072 790962699 940966163 909651355 947459111 411356374 840742712 248028601 921436107 315958712 974616632 290362608 397007763 218789930 758190860 405472388 874745502 601575011 928285234 359150777 827882578 798007089 927253552 132392887 419539814 421338409 639962769 586883681 913926586 937859421 972358073 552785266 859238930 475123898 749693939 884946161 979844731 934279704 985131962 327816719 488781075 619593589 757510327 885656864 977151208 866080885 875696426 927811798 967281378 597651651 891093088 717981447 934677186 165280204 879973692 300973381 450750004 895663434 997370270 852186139 907387377 342454453 538586239 933076669 935324519 590003099 966033255 119835842 332104020 975934660 990138647 297515369 659163710 173636275 581719094 765009991 894964781 519346217 657368098 917086490 966414697 311917418 802900360 864872386 990606374 871189167 874573432 993031654 997866727 390467625 403471696 551572207 925011485 711688621 912174163 334170157 581404915 869105103 945440188 755427142 997144338 884428469 896946121 727972485 775619362 664239412 776211438 448641728 770602016 952862792 988513063 805995960 857995848 595912811 973462257 937796619 970038971 11632532 188499043 621878105 732941153 455629928 788071566 760930646 958517547 663585957 876496282 451764306 800643797 591063945 970278796 691896943 746374730 138577139 643729650 460588587 754347321 704278251 767236533 68883390 223311464 704971063 813024589 42255291 660125907 204098314 603963651 16558567 177002954 629849224 958489300 443101511 491103960 848130901 944827599 731435546 985123708 597496772 879414135 344332243 761362713 145098659 192916561 23350507 132007560 493920144 942847980 187451659 709973691 575496532 709813370 672838583 899026831 492119662 518573181 455403947 761531100 894475105 961157391 681540946 925597245 96151191 525207499 20633254 529704621 462011097 912328349 773751885 953691334 419088065 745827142 667882318 753697363 15992071 588324338 474985136 813492388 825362891 897032169 291007091 921678178 197854810 357215131 265329594 440045737 513470333 774619532 43904787 379651844 245505695 450778302 621722297 745829386 183547300 720812043 989391629 999907428 589706648 695163805 843539555 953709707 554513230 672792260 174847848 407185959 336913294 532809788 258415950 553612733 765634112 879373868 180921345 812548566 161743163 185105691 644959186 994985607 291863687 879332640 907337850 935972898 321061568 694248836 796438424 943963991 324882752 397943195 62218300 882934477 904808866 949491633 988388110 992392522 286183679 357394673 844831166 946739372 374390224 705573325 392866384 699159715 350182385 914620505 692317744 987731028 28272912 672435535 396954750 990184558 707139331 935654068 388816297 529407887 487295236 979809816 39704527 200480291 345574476 636439586 435853171 601570720 287681522 512341433 93660491 706927465 154680280 750081433 90616598 826660715 401535288 527413071 429667160 606197394 125048309 547879292 935839659 993255385 181118235 684670294 257585448 323722447 591185635 638216778 769904951 783782307 966735719 998544999 114280352 602636350 929694301 948224891 705777637 998448191 584972706 899860860 798711001 945763013 842102877 934865743 499399020 578038194 690837652 892772902 15603049 599673941 510808326 627555490 164068198 486244460 135787143 638496000 310057301 742917876 329380978 812604728 601066073 971777555 811588193 951871275 483607658 688140779 910757534 929655439 395301017 979710532 140097655 231403968 671436671 733672874 54466075 481847204 8604136 943327397 300789037 661417911 222351662 998888610 619208318 701893901 271924616 720911307 228620333 307393258 929978303 959883228 577963573 935473006 952235333 971169501 169947788 896195832 933824495 958875722 623734016 812819548 881617428 996211031 865839777 874496140 7909750 241788839 290133162 519342800 357979407 407994854 31625988 778093863 590936055 832213746 544262162 844725478 571733454 581757783 87589372 200429698 729186518 977499732 897266153 949687875 947805496 952655076 49770769 243513660 579194184 940127721 893014640 970244766 742432923 792027022 702202746 911038710 755115046 884811023 226684764 438610130 377829228 818189903 280580143 473159224 102710828 187226059 975817823 999086928 253308970 971659493 104178738 697430372 831838514 973578532 758832272 851959671 4781517 542420060 22767957 32587416 850741802 926746017 981933274 993632703 105947319 454502093 787448423 986933391 94428420 965413288 273096132 632277262 500609583 648500148 736637645 980855768 359680520 922677775 986572446 987189827 716563350 942368021 680769267 698268131 666870119 946483273 111293455 622458407 305880395 560631921 504207932 797582361 262611746 506324046 110414512 248600173 531904133 799164186 521892281 684767111 936925843 987503460 339785626 589035891 816408793 895454776 704654960 989971179 821042063 925134825 99641734 443203072 842242995 913750682 65226722 614589495 608508724 777086500 395294681 970626131 219539678 783094523 962485968 981773679 494588156 891944594 247946722 982443114 99314564 680204553 10085304 978076964 287919296 459660475 327758013 973107219 892390958 912311097 951533720 957960519 31289064 980969392 805046920 853539017 548429372 925538089 938348791 978107395 677428236 737437827 988040333 996906911 74608489 335631104 692365760 926840338 778161028 923268787 771238175 782143420 338285297 349433934 986115068 990952489 673804148 758707657 404775502 628905709 201969309 774060049 590412244 869463844 239752987 857177653 457760936 610420026 215739141 285200186 31208792 216462001 416071393 489064490 715051949 781895798 120152005 630767890 350285279 977329829 182171434 997201094 523093558 965375960 711643059 969812292 787565893 967620370 899611168 906002085 810750651 861169802 505379238 809293337 823485053 866098232 638306527 891493888 816151448 959154660 170806074 846499204 593280957 734489414 623528383 873663082 313571189 737732405 772892451 822593688 818623074 847524085 142819201 830155920 717337450 776448046 49854127 484076324 465933947 649821120 812023609 920848123 14877917 334534591 263688163 904159244 148554056 627802669 314776358 885153728 937024320 961135414 642999762 933648642 660414552 701725063 175511327 976822599 952283326 961232077 639869362 788343182 3452379 142678976 770340227 851463172 140938810 562029413 287980456 437184713 435153338 445678082 939562362 988384765 977815146 993141729 73734112 578797486 566330409 629184756 68507824 188178373 893344612 944794053 911244117 951968232 84345417 439500999 838316818 904603057 229761676 726300779 799053444 896344600 822994836 962250817 509738042 688523368 468268438 760402429 522934386 774510431 674816704 701006303 255042026 299481895 636960820 954787948 574909978 900219279 48734563 181218797 461216068 622658135 931258512 982013069 109952679 766994831 208838390 734149455 162058654 837161307 346615768 479857542 907800041 951625705 387284354 535906632 260872716 300868158 693358785 931897995 569571726 627285142 359891536 374267636 217001773 341324128 18161778 674885968 183165311 446691121 350489360 423813699 6949732 492232442 962071376 998534915 989396326 989746390 872828803 890655003 135805377 859651844 100706239 614892879 989944234 992666763 192666218 267204471 576830284 659037830 557471492 999692052 773327663 807474555 824716037 834324231 363306339 525894410 317548531 830313906 883517931 976156723 974664008 992105488 968347696 978761526 691989642 890341629 768565699 924415751 641745331 969375323 621660131 653537024 183598679 805267666 80263827 714950610 139496646 876668599 885735663 899806529 349733464 652725485 323654308 982576968 703191604 782317981 606273405 672105243 895349289 911889096 415109880 561279173 27572503 214937205 869763386 974401359 770028564 902883697 117978479 811610817 275329031 605416437 638605326 924477910 814461743 825797895 770070929 829154562 425382988 630236009 366191425 939092197 439060652 694114704 461956499 999859451 748142531 844892297 313964376 339368346 710956834 808735711 111998605 421635248 598971125 827656082 699716586 846220354 211453813 798009909 970874059 996928043 16287460 505492713 894469947 990122078 662371862 911144092 484404098 559311738 453733811 710646419 853410852 969223534 919631538 969921947 432871093 697879643 618156268 826292758 311624094 523421028 832025403 863896215 551478645 664681166 29427896 513166176 602726069 756600950 692249716 825382273 129997997 530655894 179976673 229353196 920053997 953810449 692562640 992318789 784820153 833579242 13901468 198854831 209789961 376379953 764380975 875383177 456337514 594479708 172507393 376783193 443494513 975523072 791917203 869343514 895310428 964355239 389457056 695618075 379713037 652084817 448175413 573704809 10685160 549752113 417476941 639287784 982812916 984228228 560733121 664213540 57446214 192139557 267957799 659172538 504209176 549970079 735457473 787398463 621646116 981927069 194449121 741803864 481679116 918119341 695379967 804040067 747545275 886431983 276632676 681969666 216646963 558816819 978831981 980590627 235083351 997231462 72749259 861490807 386349927 719637290 55998370 528121721 304048708 434766411 669738089 787949632 456326003 788210652 806047935 909359770 600590251 852645093 46241544 851276273 468868929 600694867 717333531 755191806 91439258 427168577 795689400 915755324 543648876 544437604 508386746 656841011 914195819 986400349 166229225 622028016 778437009 810089623 217106784 288894403 457562673 841238885 836506475 886630568 822254103 846550354 562167594 994967548 335975304 768984564 448208614 783175367 782995201 842591604 882450456 922676310 594266656 877374033 677634277 727153327 108492636 765932987 687729544 932243962 811465764 873118285 140084749 639547976 575974789 821347975 354648770 987085910 634899370 853845972 77586317 349782797 354092832 555352195 516531567 688617189 716090797 725733634 937397713 981123654 708397007 825874036 77435027 872814877 273513922 422255164 664551350 833087129 102295322 445209540 396670465 971134552 814615881 849785149 524818412 843520665 795808699 880444636 849758540 917228304 51637549 635766129 568440829 752235236 787955490 892039704 283184957 689319249 454716108 971675802 653208515 738394176 48696208 919019687 612685061 718095934 220934990 532574776 224327041 548742468 546519706 833885282 711612388 812161866 53268964 914603234 348156561 914392494 847207652 854584897 705836048 913211571 377537129 700797760 233674916 895400901 518903283 956399138 722126660 848459605 14564195 625365238 641172316 852868604 515277114 687479225 662404128 838105689 20813386 720126786 39529148 247046468 153689430 630985891 116405761 160012732 209814219 370730635 981124707 999874363 568568717 574796437 77682934 868259085 92945874 840418993 913700812 989003073 360066932 490557328 347520459 609854037 45869624 591856409 174967128 230904106 78406014 293814403 717796883 981439137 456011779 488495469 57570514 556882841 613630900 619503413 115301290 466779345 475800385 692154474 698738796 801742146 866163703 887528199 667488010 801469487 445840509 665317276 203287946 389975523 294049822 531252980 463408630 773728166 29017669 655632499 770290830 987042410 263681099 387916502 448897185 804562971 110611438 469245918 857111709 941384619 785833616 945800549 863284526 876703443 203961763 910666714 310131554 663723493 314173801 381552889 544353284 748376596 36832232 162212543 959326718 998731328 928144343 995073313 314361409 952591973 647702370 933251608 421639808 462387109 289437618 979425924 971626250 987098111 393620661 478766496 305619154 535063208 86042165 730150061 893078775 932766637 799144954 862115285 735319228 952313750 424632728 873765245 614849730 751853413 305959351 568229539 118006298 897171545 820973781 927244238 380446399 918641932 211344117 657419370 537062461 572352960 597794434 670067169 397137359 633855457 571723988 591772348 590978895 862475506 77745357 580049543 40588896 111568795 681625248 984319145 736732272 999071121 693979439 811813965 86755833 856599053 700112466 746462421 54951678 218174139 633974997 910844753 269207521 513823099 429476040 648272992 417492770 903180703 53724704 783405589 785734419 867551405 320163235 988244898 311139657 665616496 673865693 803277683 884544663 990289833 437207457 801739036 950957920 991245569 956706268 970081027 117935533 561892261 634785806 703376299 350626322 458348251 909364020 959873329 715859162 946507535 118315306 354618545 609543362 705720272 611879845 637569718 265497645 909489515 828989141 948669005 679010798 947482506 937102307 959854937 565454427 806819503 824235682 831404527 300260148 665529602 894986672 985157901 930147003 985387926 246555440 330242913 509164973 785158317 845129257 951935378 67467232 618707022 155240382 708075002 197483120 984468446 132883649 967385112 669826673 684807375 253877581 902410805 647965752 966751470 850948610 864751557 592141144 608037613 12388775 94597854 880959061 988988056 189798530 929128081 906363774 952246349 413433911 569619224 507553204 692951620 939767942 972234544 468553953 552353436 975129910 991949709 226724656 234509410 509481845 729455172 929071881 989124293 698574844 920885244 665036034 848169893 369733601 517584611 501741537 555154071 560524743 635601573 228535428 837891006 40203199 520612426 81627178 911834867 128462422 912471025 581766047 714566032 382660933 440089776 194787154 967777860 930547621 952439566 506124490 737261428 511396521 953931935 421558600 442929559 664966369 920846729 724278204 765816940 695785531 927388778 824705427 913006348 404881642 451389376 585526793 911493596 191661320 479382618 486897997 669769637 453484633 988220217 222328660 871195358 620365884 973008202 71337554 560900698 937754900 966734811 351117701 683331278 441715015 866666893 513373486 591156470 592306925 918274583 131877885 751699884 347170169 988480361 597239458 716797736 123738278 518846148 26671980 130523428 76167625 925582219 620259283 839005760 372957165 848276963 96588838 319729007 745015793 823685185 473782354 527846037 289514484 426099791 599044778 827565504 305231034 774012251 889848002 992264178 78774367 302864160 63526639 397279572 807856037 862412773 99007146 211269830 345477950 381642480 295866171 386456477 303231067 602547735 310180915 729272425 89019956 121403194 816438355 892061578 592722028 925248719 216044715 872819926 223113870 567506111 484491957 919788153 592918075 887808122 474942951 507160899 580243134 918373592 172737976 547807549 503701131 729499205 556951983 657356929 787536379 840975831 98516705 862399497 853290151 898391991 153412371 949411324 892605639 939061430 464535085 969000316 170720879 692012366 842678770 918244612 160502488 614844740 674093096 985680452 543323419 980701709 954373164 968124686 764485768 846740054 834679045 958731313 310004822 510185130 619066180 900795389 797217205 804410318 46322266 682670844 893697329 903452653 297177434 620412950 65385205 335626454 163207665 995600607 426847799 691855202 74386207 113069282 670937522 908336542 95026286 597598494 815475956 830094630 87876454 993608071 374821850 577231528 39751322 686180876 697870602 815103157 419322486 495939226 426089035 863525245 720560242 738778671 106916322 613899445 344066300 713248502 37066754 653080301 528463380 939634889 801132276 950999064 295505649 962403322 877439665 887955361 177871784 254611199 957412012 973479853 802185327 918146675 177148927 982270179 835482383 896346094 785287170 833721815 987690401 993494042 148842962 577772295 668748868 837953785 565837336 596261865 899307344 999808887 504346033 777913822 40870734 195720837 46332724 740025520 987957529 991765071 182973707 205094089 529715062 775844195 27572010 491708251 479664484 504526765 39043905 483160257 719211702 761751730 606717120 793351610 256775448 792055507 246996877 544415790 877697431 888324026 153290605 203114063 684187358 739867424 244191932 301776071 63778372 640477612 269952300 933112183 276932064 674737685 855302960 876849092 769846206 876601808 547886556 925687427 939650279 963782753 732415066 895189171 79883566 928680429 662968898 712298983 284976631 615839585 831367564 888573136 367868276 837403402 562313027 726295507 531775697 952624422 312025784 770139958 362475806 920993076 517888216 764196338 492198392 658577804 778998414 873611428 594974950 698214687 416933410 788915753 474705596 976450174 512368101 828838858 654680457 734651712 48644324 299025287 463740649 828687530 23659439 918683906 347201875 408951342 286540933 915583582 242369820 795273558 388792772 816627417 336151366 798221406 52185933 709766093 524522020 579713931 492309209 948379945 670885619 774100637 8779214 574479555 595703590 748276639 194688558 774433158 560688742 800266970 291387437 840097879 206356305 346327518 782262933 935608300 433675437 760683892 256218797 870998177 500407721 999316175 962767703 993567101 355909057 842752951 302332573 436951596 253489907 315225115 532334435 721769106 832337901 979621299 363739785 442551147 129253667 277361838 534477937 808000461 701593769 747542803 179019056 953883672 926616549 929008644 243255472 953009684 799800628 972799237 709554418 840198489 155936886 746663730 813019145 904005366 391972880 423999212 347481143 814745980 640721563 649961394 548416131 636046871 657423709 951288996 223924357 731490205 54704236 468551561 675299673 850892329 770238973 952596714 547284062 642504260 973850097 995906993 160558041 713940078 763322534 959670651 859257177 999520902 918105448 925772981 605702494 986913639 227885965 324239076 98046920 722777110 715416434 728627841 896563019 971025114 745257838 863174949 153695873 350438011 872830317 962011822 177135797 671737199 923157482 971953303 390754159 992681537 524348886 707963079 520381443 985123321 384913071 533167548 215890606 758291949 359245960 645520545 574432372 907671129 511075696 577629066 712922310 970904344 883940138 973957361 994277322 997761492 208115667 688489989 749376357 927898039 896921470 999037958 844432045 996910473 652190753 947571208 583652829 869057863 113967590 183800466 533822651 963950124 306461521 934509691 914795049 917860914 802698852 852795216 112688812 974129884 889865603 986548767 175975986 408270463 269723623 397138125 325495376 339298553 655615513 924612566 82587185 988864092 106677875 875755102 289621748 555278668 960190715 997329556 690565469 866279057 153177468 729239655 332624272 608504818 322671717 875912799 927412288 946346845 178279840 923871314 914082427 996886964 868907443 927445725 253162092 487781311 589032096 591615390 831865497 852855304 416980754 629829981 787256062 980397674 862270662 976772814 277618955 528606445 93687514 925996089 988348786 990854742 956799950 999983180 336196526 477190530 664062146 992673876 284822840 502914657 544605694 950466671 616047857 621847384 852731937 855262354 192480465 273968803 403924687 471230467 709264216 979492329 879988881 939518813 803326787 891049955 655770752 768311066 125860423 169787059 622055483 984443203 550940174 568712638 443660232 603409516 401084187 466769243 297523716 648817169 613476755 620506958 228834523 432772826 942992519 992829687 321316595 402368354 586372213 950492653 378653772 792471475 107481477 498398674 926261247 956959114 141784737 783909894 546147669 688759537 870945031 970794507 968983066 988626580 148610009 783660964 992686338 999977096 121203944 356910543 723806384 803300767 234729112 371869533 903683090 979169762 672906842 836189925 116207478 671588618 840093121 990455337 73186233 423068698 194222974 910998980 301543445 756879536 963051683 983226645 738219056 958332064 637274742 701932483 384325885 749848684 206616827 500340620 854601393 984060140 450641642 947293067 736940963 993852408 923694077 924121139 705367970 994589321 787174593 925272227 315052011 982118501 782204052 928168820 614166008 919206955 333731691 809716973 852507641 964797985 493198244 706293360 764394697 919408518 699227001 911122173 240232424 415118901 480651442 576888646 474377943 793395899 51388459 772374614 770969333 880222142 768399874 824448241 370290452 930723737 997766487 998195281 277900452 402485407 954487883 984665471 479075159 806449576 822250167 854588631 283532548 868291154 394127559 513656053 845772820 850198360 663158853 975156823 944045030 961838432 399248164 990244366 218009743 555317593 672358758 762867409 147797042 516302548 799817579 958243231 83159918 220960087 516660715 905140959 114970989 839155162 334203121 430881919 106223580 611015457 294743121 363349430 726648131 813073845 515062972 868944335 723035191 886356524 909239402 996707189 827201092 961946379 631725922 640748571 328081315 633069016 999754998 999891843 996752509 999135233 289682872 469803861 78306078 809178010 631459277 995094472 263830982 716430231 831722488 997348155 891172545 930987485 26622196 289153861 622626159 748003447 250420515 845221478 911552614 947449617 732863308 800242214 313162346 955954896 182973738 371823159 770987610 914660966 639329515 846378359 7133735 897838082 977449965 983983275 612163782 781374589 486036677 865350564 158727906 654619573 790657149 918864330 87352736 397830348 341660824 597250774 508587447 622942441 121852546 486127460 35525629 498294699 504802259 544045830 632832911 688966737 516836994 718962095 495681949 839813033 75219998 278972964 1460985 723298176 552936142 648142087 327921186 598904716 234077117 462355430 661148311 944571315 642655407 970791071 941862419 989352325 574602869 747144711 462622213 924133096 324579883 451256099 503075068 843105093 821065276 907094137 507598694 664815327 608671022 696072155 487495199 613967105 903234140 973612283 463155223 518264250 997340055 998322572 526841892 910795572 630321885 820947113 807360781 856277242 788963633 876198562 366065776 940701820 258599488 998509085 220249015 993768404 22323497 858047834 743350614 853867664 644861975 701192408 943551308 944517483 173904207 705113673 813217385 970402263 947050889 988709679 545787399 952358000 251181372 812814736 656915403 696767398 727398148 842627528 563072500 783726799 847289094 849017187 539780780 774768007 450596550 678592292 537367444 780563763 28129255 665214808 465476009 727677442 855852706 954962419 609586804 940870703 314814916 984445171 300113943 524114099 440786172 492321356 234290588 634692403 502928632 637188038 390838120 868354741 783094950 795752741 886731265 930750730 921175061 945023740 457513516 634561811 488142936 498667328 330345474 701867848 125574589 876062709 594378460 663704814 839709619 916030694 363262819 441869190 894614521 960071899 59626218 731932210 736973954 794843905 397960519 826815882 924388094 982534600 833382235 901147790 907991597 975456454 899045236 974946906 872498702 873765378 389059678 641372649 964680395 993966790 28264071 443850441 529465466 910666913 245944044 597685542 453172579 483067964 652056027 726201099 840355912 890315190 490725019 635972078 737165376 821515136 872993466 891457123 317601802 654064634 160225813 933390635 374992499 992372656 553913918 714299699 1175916 622784467 9276971 597738497 501942098 881503517 144672110 543674414 548073007 803785310 526713310 833518505 600910973 851024756 387239334 641673814 411426451 948373693 240655219 836865273 923131447 927802166 741413324 979763864 263998046 319256949 351217633 416046277 503290300 638860787 569622848 721798319 842571406 944168535 677175002 836549001 812577414 917633540 437730760 910722202 481570202 592259703 202677252 296410640 410464350 568588813 247609491 853376323 295218299 928881739 249427576 804037226 423493483 517358476 22428742 931247792 453155687 906921728 234921841 892165838 913896206 989680974 452892317 917951935 87174246 321616435 450923483 942966343 92894889 710349801 452903627 719992360 190197301 668602951 986077960 997920194 327639057 864277842 220474651 577900769 159635860 408306987 268411005 886303123 245285883 384519606 240660552 584076926 489870292 956479347 506678149 620443297 698317091 939564494 798944627 927759831 468521130 770620298 297790387 575505767 152301558 443696205 162609548 553560426 751668459 795885077 765715387 848870697 594063130 718475712 877520675 934516016 254172005 317906986 939949675 947476501 937228907 999025446 563885428 570478447 981057291 986863380 652166604 974852841 75442804 758820512 549727905 691572192 275063193 654133363 257890197 373927447 389734722 489731285 741596929 761606520 610470806 980273383 661620127 978172151 241021139 484355813 236491926 579831585 75882124 81549942 639984090 832033698 372214881 633351468 167901371 674257256 313968157 806999503 536034523 782105327 509240172 784842598 85517231 519796819 209449547 794667117 343400677 942312793 886217940 969781911 126728947 234469260 297425481 824079037 339169965 744220087 402854328 859620198 904155135 910831887 216008649 459075338 251049792 478929532 351687066 496319965 925772267 931656980 916332710 968864760 554262260 987103397 86782711 399780684 60434335 809402437 584406432 724753369 232886251 432455331 421860 87975930 248478631 890863938 699404604 999057520 320930182 965608075 494134190 777315700 385932105 869143237 129913704 497034738 868179022 896426347 48107107 167553367 897059390 967664052 247424768 489522719 885390643 897522686 255660933 729606882 116271918 617617239 3642641 643548071 578097358 722890822 931809524 958712751 629858876 650505793 177336612 522926065 571538073 838827904 653895435 953573487 394809566 556943228 927211377 986752027 213972685 287176851 67658335 869495673 616292543 903126012 730243085 770181466 313251733 731896935 997678891 998863733 189718268 541229418 85315447 772547081 143073354 950738574 558023776 837718049 225290574 687374238 597058206 921385550 875179141 949541946 293252558 966912006 452171532 457974352 600090185 702289722 827424050 984682748 5355490 223295477 168712087 306142539 212176143 274989670 76511259 980528781 431790418 704373519 759432208 918088152 485191868 702596595 977382706 989546003 400852106 474208962 612219974 798251829 832605376 922527343 136719131 200664610 8620973 623577120 474879438 641063227 454220577 475137185 594574675 951336642 309220643 876536098 622630879 723366087 208509892 865022828 411106382 957218272 226012216 420262016 410945804 452338863 622745946 773854170 796263645 871903697 274248583 853562464 960887842 968590212 623814848 809698085 927298827 975494201 10418776 649674407 665055774 890312177 88201867 704240778 460418673 881122057 992609398 993255876 708314867 712882932 590424555 633392460 843557891 872296954 617442938 658973675 528634259 841636474 976446932 989483145 445447413 484928731 248301187 252476956 138061047 366431616 127092445 621604323 980618621 991388538 230342946 894554108 256245511 791300333 886462276 911513695 234218999 874830843 348227294 393942768 300987311 337634890 4587112 326347316 744758189 758364979 413839947 803337563 984536458 990838065 542650287 794383079 934807542 944863921 902113963 919429491 987192059 992987973 827747741 984082646 254623521 949022932 660439920 994305164 112064755 804741805 714799992 898809529 173051819 659173380 740011987 944481293 615482065 894329137 848439082 870981267 17131862 659148343 259114076 858550365 645220840 770073943 438729167 621692056 467676126 515580498 166198058 500242169 826401809 832459651 817098843 953542552 3886223 614143553 266513471 447305987 717323274 987543589 629951526 951820392 935998384 936907702 938229792 938554220 443820161 622929861 529226753 865569367 677165277 871205904 69733846 157720948 784321521 808448833 53424464 398635316 933342679 997594016 735964143 972634283 720679189 906538979 475748118 506342958 150829174 971603535 596138975 802529835 368928604 995542136 35529457 903194378 870824507 927116234 569328987 737931980 41350871 446014545 516274546 805384889 818969716 989484437 174048610 584104249 11173056 593284899 973309247 983625730 479361718 622469949 504059140 694079611 61814231 354018905 638755661 767367825 150868693 215389038 329683984 767489267 228752477 467680897 547482319 583436983 870752143 921244213 451692369 819423780 69065452 720601010 447699306 590694390 750821001 770516399 746740177 790783027 2038801 906373090 304456802 834459844 726715424 989433207 402204013 687612445 235464834 296327367 204074575 421790098 104787797 718034048 301551719 313089376 38173047 784527312 4690683 509345665 685546875 911942401 810768286 901680107 481512498 879942959 117571541 400519278 482671607 930004436 392751600 594222017 732485902 929448782 59793141 651023740 332116641 690641213 679795795 815097530 970263934 995423871 773245362 862962770 951360807 964888334 424873584 730756398 35281049 677827518 182068474 676568993 948793890 971066061 452646820 491804047 750288924 923951852 578812348 902616152 738999170 868547805 807690157 829071606 12533241 535773297 261287198 520910309 311144087 553688160 99428004 408308502 853113145 907898622 425292960 918239435 897070211 903531847 769397928 806523034 887572874 932918135 973336705 981176115 464094790 588580657 949594227 949885487 893262477 919314226 514811898 559569555 465909217 910275644 179489490 882838141 881367428 965596214 536458797 970076638 590480387 872003718 864896505 894149805 88640215 482919846 6836056 440139226 261357301 742999494 329545794 948822121 680823394 812071627 691422533 769353396 323340840 730305323 730776722 829037698 958199643 982263894 587156078 856331213 569002715 846686269 966023651 974459854 46265154 64500783 661317419 782969638 880624032 908344831 298225011 988504798 331815466 434832950 707361519 828193083 795580430 843058512 181877014 623887178 712344947 918335155 783220742 784391003 726086953 730022331 323761337 505406677 380272885 433893131 260480715 668081933 165034534 689376007 825614161 988386738 128048836 767505354 288703925 422848613 106958563 226862034 541384181 933572132 499552465 726038910 136029040 366515675 94653936 610245534 36671892 763694550 758234178 816981595 955277057 997088446 468521519 883889817 944782605 955260770 376697596 604105085 621219483 930772587 476246016 598151660 301094166 945256526 850414595 882828532 723049855 807886142 568377250 943001380 91803855 506151867 63523042 526577263 834654678 889634924 416045453 864664121 236708468 297279222 417665521 550081027 848531841 959833457 834060586 852734044 47510154 828992025 543681233 878427112 845401141 859303555 421950001 888504166 780500700 811126287 175760825 377815025 873950311 902996645 844235533 926493348 216744590 591399906 463222667 969782735 223236989 386871309 7198583 573889009 396475445 652339055 683897507 849834752 584103892 927069666 520415085 553760883 724064345 942909481 969970160 979344708 312722670 941792948 682859565 999204576 117441020 921477432 985544314 999816801 790383739 909052037 883947857 934810072 378785934 538898334 231638009 250739374 174724929 487683550 416089615 572381412 534008854 740065236 73091445 174702347 916920156 969235539 358809072 709088992 815803286 899329512 508028105 813710002 583684591 588867212 582823669 768538358 331808069 791011904 367560307 861464541 700668783 831345775 20553826 633097696 269557878 990672347 829761810 922315371 248961670 715238866 328666114 432631069 438893203 862045980 137068368 325986004 717352433 863284800 703308037 858504035 701878145 824006464 525530539 679415991 51705397 787464102 361449205 601123530 119215526 454626406 443807081 721259012 342360911 475535025 516365004 641961405 941927909 976834336 466757682 959556825 590463954 729417808 338590014 951363772 886763982 898524800 377474642 464533181 455999771 468016003 250848735 567542655 780956908 840619048 205999487 517886296 773993078 795560329 941403608 977305572 409468877 614214356 873794595 982534580 226220072 850686331 92539560 184007847 871157573 964732391 153416373 617863916 105609790 590308408 129337233 398016383 213359733 659422548 538724959 959264363 361733068 516371853 46420961 621416250 736470145 978261810 771405457 819853596 782847188 875603703 341584847 952705663 748191195 993718042 610034190 812604474 82131952 391616380 763855151 867608462 682853104 962575888 418926433 722811969 710502331 738850477 682505330 739232096 349319852 436835673 542819662 986990317 863868845 918738592 726654673 800638920 610846264 639276297 727261652 764205929 196485521 844518947 346915083 949507081 97060978 415295281 828318010 994775759 431588058 490373633 735413621 948645665 186620540 848936281 726386916 754841926 915925603 997735690 993373523 997381466 817364269 864971554 88630848 817478896 326185243 904615006 598550671 860031563 166664571 501696800 548034298 892133279 199567620 723489992 67693906 651190196 206619971 463796450 879548007 987762015 401860410 549837848 625264393 780338984 339865088 809124668 396436077 489970938 876433146 915569708 862778855 899009451 432503039 448346586 156703644 322988268 469883639 765010030 913237063 939734312 378657736 590377046 357563358 921384220 273720114 773112589 990790503 995993664 51361182 748135673 978936501 990077434 821920704 900566019 66071269 961362320 691518381 965812002 679785017 933698650 821098741 952680459 75704044 889471584 820215255 836760512 350402331 630637292 442891026 843056477 571965292 630226182 685304318 940979848 830754781 886943313 781556722 903558801 880275769 910622405 172395183 822848361 927546102 944386724 140217842 998131121 597754540 803992654 164694973 461584384 390812808 630585756 765204313 867185122 418085236 821651332 535716835 728023894 575769680 968735870 27900862 557932856 217448699 434912385 37691575 686318477 655435216 954305422 112239877 885606778 106927326 656341969 534844284 544491191 301582245 343933554 565034615 630441241 470033456 473013185 694060006 788393928 657125366 823585307 883475103 884425284 884253080 999919357 506543470 710310955 520258998 752424009 822589500 852946945 248179240 691132886 144851459 403110165 722114570 940303838 262247024 375906084 442299197 958384865 109072160 300994865 954576197 978784162 325930925 657613733 580601525 785640282 831832203 838117619 761610632 824777363 724329929 881635541 987901 216225313 321646847 974754618 426287466 835803814 973559873 990857965 306483204 468008326 566043525 887337975 357686996 666587360 145971668 869350187 91769743 828611576 208790478 577509197 766790065 904312662 268623045 578694169 774234908 988737384 634688898 678274168 129752349 485271705 156725512 405715669 679905689 751269238 390797467 988249435 554467752 643415626 772142043 885048646 797653083 899107858 878784380 954134197 511245734 961324894 913497835 966159981 201786930 547704594 251531699 833201557 168700644 476916327 520392954 816555297 737826969 803493467 498806303 647671435 417922739 947329615 982438884 995500744 130553437 494863584 62533515 391909810 948338410 970832217 584229451 821238829 463744407 761806602 130560044 432380899 374934222 660673360 774676239 810259287 248219767 612288551 480284535 657778612 722135817 846044694 857295769 947749711 912700537 997699732 861285749 944547090 918019840 933473088 881848175 889479160 53436596 918285309 997132141 997908624 780802111 918578394 473152039 545241656 418929255 777196743 20503973 861348215 603094867 833624567 811203880 940289339 146925652 950516361 439685298 540228947 904962855 909309129 941103675 968529441 584960464 752200572 562033345 788358685 68865796 251256408 122792827 326626359 591506412 762876331 366946399 737582616 301581231 516592908 662479151 909021596 72167641 181818842 588203870 927327611 364572584 503078079 389027055 702527993 961326727 984664649 417904572 859982876 568433202 584618973 520820860 955847957 718553014 972458804 852691826 988079038 702047974 988938429 9932995 335511472 103380423 410581634 828919292 948305762 796398391 807088866 62783933 920320240 374825426 910136217 742475016 905862332 553115254 989423920 691468267 810483295 11761332 209197836 539937370 604509615 141772463 771420112 687531162 962328562 199206520 891828500 652968213 972865416 24321102 431922194 131414066 537140534 607039744 748546810 768750200 793015421 141243140 919150808 570197379 741120311 185735429 538588894 458108700 964131006 435031650 983441276 19161810 988453366 357997507 998910038 561019342 689794133 217401452 303527409 399483532 668575932 621385486 668272527 36673568 187249408 566464957 957524550 341407906 970679347 446149089 824834925 505187139 668265330 726018810 880830196 348771415 943306610 321852236 659758052 127593090 707205068 347668656 930660433 227108373 527883487 105726205 304578151 748755209 898548633 428635276 530671512 83952028 581800412 116691981 221904176 284494639 872935370 235630651 618280515 987707876 992840990 221319218 258074474 912828929 998641144 984171676 990171382 322738430 391626269 200771678 208411983 824891759 953904654 489613546 520414207 139205268 390286376 696700069 912342837 662771692 975435058 105248884 936613176 911275360 945709376 546548869 782043770 220318273 483013257 698425791 712276918 71809620 838764473 625530848 823282944 592229950 632547252 756856374 883659553 274548410 386241818 479734573 833044003 243128606 574225844 474902299 951257976 598054111 714647592 345744593 765637187 306285851 856750989 923247111 988566712 781285061 850069596 58110740 610082238 592243461 767092046 663932627 689134127 839612961 963209313 664726260 667503354 883972796 978059281 305013573 884879410 51247550 62664262 648164716 913064452 308692547 742955363 774452728 850700252 143372276 143516273 836091213 964254317 123580780 734873509 380702236 808928069 580672554 623396890 616776914 781639135 948048424 997221803 245327751 640323586 592317476 655597208 581042155 744121575 981779476 989498630 895119587 911069826 622490823 713589577 107107695 387833265 237423087 874707265 319123129 876135829 877844355 900918766 360126504 797597661 160057800 923777943 834220167 900719769 624058098 645683197 917266044 944447395 957872680 988524826 314700315 922208338 114823957 500318559 752189087 859468869 474129248 874211949 511070190 962971430 995973753 996587264 68646832 325996969 755480534 950753794 951133224 965457585 206667746 591162061 173104570 199103649 574623336 966503793 801585468 873126600 527125119 623619645 507246989 564858045 393883711 641914854 296815392 309735388 405741238 700370886 169746217 947645105 517014174 732724737 177652590 499162956 819277731 896873216 376211040 939384013 287115978 859906839 546851496 670433585 607631932 888963508 956720993 970140763 258021742 804659666 35330268 474470727 648519052 773527957 804947619 993622321 745156495 911028829 573066337 652685981 861335917 984739241 802972138 994003507 213500609 538456124 226938863 670461432 855725358 946017481 207801033 635354926 770388766 943039153 98230739 375292853 160814769 391757741 616752623 617240929 591570114 907500320 46519101 658656522 346340856 761974093 552938571 704219347 668584684 917309178 266242701 546904724 502980997 619681919 956806956 977785991 11439126 503376911 614643593 947947290 822286049 966320117 806336114 911999208 247226121 664522798 566060686 820795539 373880916 846588833 293140790 864865384 420711432 869748475 483493251 970328534 348310975 994180655 803842885 900414135 762865168 931328836 368156836 541622098 999859424 999991039 423582376 440083585 220127050 298703934 271167692 354720526 795489532 978385482 997807060 999037814 117536172 250429479 828016700 924732139 202162035 378248307 725797115 968106275 215679867 620413875 501741379 623929322 524082224 963758010 545470409 964548967 561707939 699287265 274509642 727278952 560181493 621408787 906224085 915054049 393352062 395221711 153204002 664748143 148102907 619937105 285474889 947758866 144531329 938680321 639028170 762898055 962069942 986953194 669494617 901653708 530273 227127725 67543234 321019193 162362091 690876536 150368818 727355246 844190443 849332881 662493522 971132951 603616081 972429208 527727663 906165034 391881838 426343884 731433717 863087236 856632120 984175196 163609677 196982180 889580989 944946832 515169375 613552202 18705469 294558358 801963717 816131296 502149304 875831274 474693326 638692429 324875584 689202640 221917790 535927140 132148406 961712305 372425370 816993052 766817928 995073556 802953545 925354712 588217112 842499579 355326794 714301022 163500474 705273297 808309682 814502629 942212997 986164809 657231851 973681517 62732693 127516997 199678989 988371910 179592689 248239032 684152978 877301163 180684557 993023779 125204956 381259765 929668381 966527573 319707662 798818000 505569833 873282642 25414009 202486496 784566707 798180031 202682378 647400185 778130063 787082965 381652379 712034768 291421663 710698000 831675133 980626671 725118002 891585191 278566046 447842199 752094071 959068781 625221487 674817341 364702798 445665701 958267806 972510899 61191947 535532899 781100953 915895631 410096853 968217357 46072329 905308848 383919731 907290200 886831132 923852418 473056986 864032619 910660733 962056177 89119754 391151023 863796003 968490189 583951777 997220620 871216788 969953791 266804120 278085950 63761272 979240013 179187724 692499102 955084638 994677471 815337243 954745554 982571752 984569667 467651703 472200075 695669420 865066705 976051059 993959612 444134369 913086434 412997360 435930589 395227660 562225100 474481566 517585586 23923948 598664130 455925341 888673702 876521171 981537977 252453930 386398883 754080258 941013088 623739140 998700676 93975272 276820836 917375104 975311530 489077392 787637740 548198313 764247599 610858026 930582076 16995902 746919207 147781005 768498287 467640845 599389171 381918435 487964932 600680038 743028435 100546380 862451569 535570443 992504950 587257566 650769709 507584902 762886848 17276199 115003015 123058526 137977782 720838150 858876947 276486802 564618529 670608384 677345302 10556415 527356873 365256499 549347541 414161622 914737608 236309192 863248444 190207592 911798632 882232850 887385160 874088657 900634745 352529974 879237569 214371661 686425732 536496946 934997926 606366818 998766801 854334040 971678882 601701801 809855352 378416701 412795243 140939441 649561025 383627974 903761854 437911092 538630722 100089429 484995041 737170243 779346212 887247759 943932094 950897864 970465146 578229905 974095197 647444872 842577404 11903582 34495182 13820692 737521573 432319921 619259699 623376275 947266515 419028601 490107325 852306669 922666993 771071699 860482227 600689157 641230375 871954424 996720746 327831986 665069181 771331409 955023223 850307141 989162301 84977025 172112699 952132064 978161980 901553136 999144389 717301751 985397823 899649006 923446410 821299503 864993999 748315291 855876490 42490015 712591725 428932238 684730746 762874083 805850757 695133339 829355481 630450547 673862257 782723958 871770051 675114797 777541822 275088234 398037551 773306444 812555451 972798106 974967896 614613545 941616701 277317830 724546081 569849024 589749838 474201942 829351447 515426719 608079255 921518445 937338594 376230738 922784190 796563106 832248682 746945442 761806337 54852730 370328085 280419861 544323912 532883470 561156470 227826501 423949651 500161988 663151231 632015789 980684004 973364316 994400660 79037715 85527739 895473279 907837182 559102948 735961838 579329102 951414352 131931906 578322290 454389937 703347785 711485458 998115882 293164165 970296694 974114171 974132219 634925598 893108373 70835993 94710732 47362329 731048500 538560356 881478403 800435209 949361148 580667050 732155152 940673981 960512248 782422868 871727533 851391280 872659361 979962837 984165107 513882167 731877027 495651159 936842046 51853001 704318597 757858556 789001513 835702323 879257938 677489176 813000558 514844029 887565692 282302694 752642226 227489622 723141970 560770816 636004484 299931495 366041048 449072723 938080382 219783332 910049786 202369102 680717817 417655792 931489988 491612727 620697855 345336500 361575653 920753152 965229585 418261450 898301134 338456419 685930996 629492892 821699512 706992885 863426657 73892388 958834612 938986647 955107428 282120095 361029186 964799407 974668122 319024133 756167502 230660637 948381723 543717857 579208084 104172444 209263797 225235565 574961617 891640679 895283582 89531171 505986372 460929981 943872325 624547338 810500486 5732417 860365551 827049341 899005616 399365214 800034559 682920796 756883625 450447261 538505324 456150389 997802016 513673742 964313574 853692292 989182465 286048024 549626941 707404445 884319305 487920228 545719256 843264639 962812382 422234224 934808448 522921039 620106916 958853107 967531450 16344190 334377432 303600786 739065635 514177840 841379111 468896919 978568865 241862457 481217837 693577067 887871760 833430522 958502899 906998728 974601205 972852347 983382515 971117251 997184542 940429944 941180374 882514194 920234757 89234928 818807969 231031041 556563207 224324029 971370152 304433366 372317649 339609232 536769654 297437518 402049384 69125915 968424152 500123001 601641952 1384764 299577085 645512203 796639701 510973066 823044971 368374969 835744080 307442952 677297859 746624175 840978337 768114293 922913639 800190691 847098518 690311985 858313093 977034339 980926815 297349785 481838362 35796557 536280785 386189185 599423957 672101863 858462359 105787989 539172973 966894208 981790107 116490141 440837629 491227499 931041423 148876286 921173877 123190964 402207708 776379117 881678715 816062835 988123911 811647358 840761101 215977756 993114164 551418993 589596467 115502498 321893239 941433467 989215955 837601392 941741014 111504388 908324024 619061417 726088499 879685058 929125883 343994055 964307298 539713062 967786784 811959415 836680403 489140396 998962542 2651222 334753261 51462647 217170405 239792816 839085064 861685128 955239800 724620072 903549370 828862972 933593236 640394732 875839018 679176735 889233876 888589782 956325040 517456747 579829227 646196327 947417293 439545644 552762481 301731390 482473811 502905259 840454561 92752124 714609464 330983400 792150123 399099908 768555984 824351855 878083989 624934733 965914866 73451219 301978536 127989429 697071865 710321594 823848164 940967015 971938687 161653495 883698533 131485262 357470491 282404034 479171967 255069643 818546846 982348718 999718743 806606743 991426963 724394700 949792096 500484660 801470977 460029957 794407539 275984601 773157946 678196193 909939334 586359521 662846821 505759331 667219388 449918023 838429335 304515120 364719716 931698205 957822834 233513115 740897893 762892159 930759491 830964476 898913468 555370401 559151531 592294986 656094157 399603973 497320138 202237125 460565186 134349501 229010638 390714681 891160036 491895515 588996733 436600760 567216661 748355949 854724443 339099274 511073978 200715715 687822656 589052755 914969331 645621616 662857215 533711511 865086457 38006279 294509723 318581499 718099432 802095456 913583754 111680009 120162653 555289444 601980335 430723077 801207065 524490529 622157328 828038544 831754551 610846220 655306822 230414281 419989762 673180688 948292493 181461387 986365102 585245415 663969906 656543180 768784925 644590862 934452941 662082333 748899286 458287207 804911242 508534071 519425524 283800305 317981608 580668295 975233534 449092378 832070497 370580208 932441308 823857762 902855465 41631302 665072972 492184121 792753126 963968148 971484103 893280924 944082366 967877604 980858736 779233807 929205500 462041074 492498503 519521643 886358039 472442492 914975247 140137908 189085360 648887818 937265881 302542188 647443905 852160568 902924520 718392690 745343087 406347839 797598546 317954261 415358482 23834563 914355716 332870585 974030259 614890870 825006465 376278414 881345643 344944773 571845416 631808589 936457850 6862867 308266892 819616547 947905607 322556647 428274443 259502868 358949411 806407404 940678413 109984307 450768854 45090708 618780284 97192525 889598240 998392320 998528332 411835076 982461496 558396970 625432982 788877253 902108750 331783281 398821378 853982036 868181728 792041817 822604176 858401545 978936049 160031307 846690103 449623439 781933584 580710168 814061033 716703539 830008812 828871504 944686962 185810510 937081566 420054851 824100557 505020283 741421718 333201170 729903216 661479944 831587513 394331329 697826645 650604615 659348356 4210555 281244216 247977293 366470814 605560226 633466992 505245223 965720728 147488684 860166770 411134379 603269235 419185061 716757686 950170879 988901511 557906629 581910215 942047341 970616692 874251832 916813609 922893580 964392855 94970230 331857521 817119737 998759137 494038803 906384488 333118083 654843817 843468273 939383981 938267030 957691733 370139109 985256285 952540504 958637346 681087827 756064253 648327576 967392945 245757343 953307518 578445619 630964663 314164262 419395296 755288470 791709672 527352521 939482102 292079159 549711349 221876784 348693771 537703961 685855613 935780312 983348222 900380668 954665810 818631551 909154360 916698167 986341698 290311601 737867608 134633398 945133494 45449293 452304919 181758480 934286736 382001986 712092115 462611181 737797188 265057966 776262755 780459431 840015806 988384260 993515100 826255325 964077734 603309876 867344665 634230181 849957129 697983421 746693591 784927380 809414085 883553613 919632870 392295506 955734575 416276246 467995220 198247037 824387181 125545648 400823329 170420604 732428162 830388728 877889798 176084560 926478209 499409984 702195653 243331819 423399579 669351458 813385658 639609255 939961625 108800873 559918217 385897015 539252678 116049899 877990715 457037272 780696366 43311405 763001728 590074788 763634666 117423475 534007267 57856784 370637267 252183846 753170583 213779641 252877014 223426621 305999699 453087865 736436017 237257974 312876201 629689115 982581549 680310794 997619437 75077744 631486671 187905357 647927793 783302319 797709817 242564059 437836776 515537146 603993466 6437165 143992293 797941326 937516971 539077077 545290452 378340586 981904615 54061504 509199344 235593983 775550545 484982859 728486158 495238054 610258346 353374251 760931705 653246445 793629493 336616532 860957011 585924843 996057242 66779338 150508716 649439902 711856352 385528449 734178548 172482670 270309481 109578817 710878911 876317632 961992877 333125570 676087273 502252403 922926072 997486395 998830669 657095168 889229643 45388096 136575750 550878609 912461302 544366239 864070182 950208027 974922008 599326846 984690027 388375202 894792680 263440977 672379681 300537197 303738105 382535776 443270334 384568033 467454288 154312005 623678129 892456145 928743010 406431202 947218662 895698641 952797837 172246823 514504373 849755294 901085371 479095062 817716212 253097431 481407471 184557389 462867321 147744669 720223833 928096711 968456321 774736967 812149132 356603180 716979781 190658987 621989997 736860216 886753870 215169502 659447580 802346080 885518339 349761689 437847389 961159879 964213513 175906526 391514707 196629037 273494717 702041349 968309962 192100255 196007141 378883469 486242047 123711013 670213938 602579130 817046613 132740136 403977107 410875242 947167724 831687359 968037756 186974621 892354931 727916473 784974560 458071671 477162972 643549342 950747769 479545559 509491055 488962512 836823030 407498125 478537136 357421009 468657605 787044097 896507088 556757506 686272033 339540684 629952089 438572674 891692729 481511929 642044593 907075564 936914593 179184790 781585998 794016770 808900664 849023788 915823651 770369233 910370295 331204391 807363905 556940768 804403347 509747802 805526664 784318933 853097393 94649483 651795359 115943618 824956920 2624596 85091570 97281667 107790374 791380974 910695609 311079621 436156313 308594500 682696706 328913653 547317259 398026719 507445620 445105778 518795330 446852086 874418718 331752830 829622577 733124694 737472012 334876517 471523946 98812408 724985092 247314476 525926049 869349136 915135783 949720967 950423057 608687701 615281692 905006854 940006341 553906161 616805778 432085476 735205906 474398565 721457834 840071688 916131268 850764332 883656658 534591753 745120220 678236818 843886702 523120911 979027641 976895513 993344668 5853536 340491813 102948153 551768822 243016354 878443100 911294605 986698465 355927445 551448450 934541744 967675862 874868621 878421916 442342202 586085328 842224093 967467632 923473664 946419957 970769058 996670617 464633668 860959279 55707110 695492863 437366918 627290126 671415166 968275695 61470879 958796477 452836151 695514792 331882246 418108675 456632688 686618424 867247213 912911269 458367224 990282593 775262193 829227189 3707170 182398124 188566977 374632994 890457233 901246868 707947935 764429666 882243588 974793565 540330609 697260799 333938810 639280382 205393650 430393560 134351771 361452553 652040193 949729290 5949876 870763800 325158381 854544681 513596097 813895979 655609896 661484638 31068632 639213211 660092356 947879933 882256530 892748826 23755152 500500392 140219565 742005398 522200374 855231714 608644856 705265937 175794339 561271819 968976905 969706701 534320635 964099027 872689284 985581644 628310050 675859747 346648151 463503996 726689709 830117196 604965056 752231025 67692046 257259340 991907531 996758222 124058169 930546901 781997270 849354808 938015218 994905543 528565303 534083560 740626276 749502089 660367619 932829941 42645604 376403398 487319036 530372522 931985210 933483218 998813588 999197783 663297062 679739459 345080157 425902707 320342144 825437106 806500800 905160423 245059189 689224336 353240824 997317419 131433715 932588420 898827342 924471989 903658499 988062904 574192070 953111947 803709728 819389782 817203404 950956171 57511777 948593466 170779490 302156205 414494950 981013215 686053454 871154346 832351734 852190235 928966304 996120477 934207262 990587483 239439825 810882314 289799364 988400603 737897882 836827696 942604859 964780074 998539354 999441778 629861352 967502448 683169945 701107033 266852561 867826263 814552258 888751268 189646580 481928301 185793399 715351067 431804876 981095418 336188387 545994992 792736168 873749695 330177526 785288224 310197400 740511719 326128325 977818651 413648834 676901698 277047946 298556717 901195921 972345045 646748021 769021286 822952653 833457393 440288543 969489431 929635761 941034893 808675261 848948880 820582623 903462908 137692820 922926813 154798786 335571463 825669713 857453631 557180628 961898248 509280003 999695399 296498720 449346961 580773720 678067114 670568393 739017214 116359884 708207360 129257968 639866638 482740418 527100127 646201247 773347666 671461506 895219795 748692975 834548854 768464551 845277383 697104225 931480998 563581082 840067900 547053009 552846900 572827536 952756402 377912972 910268521 244660310 346408243 417951069 733668070 136956318 261060075 388463983 527463801 207684203 333152476 572311385 907206729 742278217 859180729 776820345 855661348 152834290 466551031 272451220 577900946 521959067 618526310 861681322 899760456 264287425 407432951 126884799 279830700 476390044 881608253 540051552 992143620 903893284 957880263 948408653 983781868 627552703 925100370 318652078 593091242 565068538 588450375 671734725 859694416 373909362 415282757 221205938 871740460 146451006 967278848 486801462 695287080 393555312 856405664 170477843 482138843 667952575 761074026 142705239 917336826 928042527 951958933 900197885 915656882 45277085 190315650 251485281 683041463 735484064 917986748 854099228 988569006 582770601 920066642 871671387 915469599 564354201 760269073 581142701 665795256 661423876 687164590 616606728 765126805 224459819 568381512 833454148 993237603 905174415 971883095 996153018 998542646 896674257 962861393 903061905 962562243 802877217 826480585 416020496 802961057 865712953 977173270 607251521 928581989 209272027 321944815 161286960 959958796 706053280 763805476 306846878 992720359 791618583 868326900 774407803 977759533 560256686 940815742 504180624 904171920 389427769 729907711 534095271 613025618 950290180 976071613 301918664 429669844 369426258 816891930 279889574 940904495 592015523 628192661 105746093 834482865 482865350 978517459 857167219 937405865 264123977 911110054 287203634 592721903 623380866 631452010 917123964 959890470 120321317 254704116 447137415 881110693 881702558 999479659 690665736 726847213 585571415 725230123 112406923 317125736 522760115 788449937 663746131 752007737 807938558 997732262 566148524 571753324 377067997 939183137 710193476 939757649 256405546 591635484 866929872 886012373 390680030 465463360 864400546 903650260 370543219 514392603 634379967 750246867 738915465 952609019 955218093 976280383 354791332 557287531 365063424 569545573 516212988 747776511 301641831 325614270 994479966 997467761 410419881 731187715 93730839 242182889 708665498 789149263 964919582 987131831 470556075 732807141 434389148 689798425 946461438 989893167 720139021 833733531 683074118 832572615 707674807 867620360 633354191 825317282 625343490 735939104 228587727 656202880 298706895 697421061 713012744 950837217 942649322 948572779 775488092 928253287 785566566 964569289 579293020 960049209 656623590 782697779 871230615 901621071 701476083 817040376 62922182 586750594 77904290 982623432 77213359 641185279 373801784 510415430 539117224 972356007 154272404 288631519 904530411 911163243 6464440 579286180 641442758 800073508 561036914 915164867 974902932 991289295 322795230 421237864 491972152 552964626 497123399 497759858 922070497 958041040 820837158 938596544 630795839 737460487 728540894 863949333 40935711 974082770 561229274 928611185 161556763 555935355 14459896 718576474 60595156 217381542 926522073 960351534 914277608 938573670 324112095 987990595 503323558 785351917 152954603 756335947 427693133 742991290 436763551 979740547 5101044 402548804 239611071 562120820 189455071 987828577 822598671 882689754 971832535 979810378 51022072 504228199 687369043 724231884 508092911 899548558 195736846 987700829 710555217 713646870 538528322 943796280 584652016 734461615 633303171 693949767 958178507 987090842 761615495 825910142 281997068 928162415 333902185 867324263 139225820 767733961 747819454 857788018 152712980 302520244 374565461 876755053 204603199 780821498 236738664 594985713 185855119 190404052 950773453 969986329 932844498 951262385 782355062 956026563 895114360 970908919 317982766 395173748 182532175 614117258 351002006 477831030 631737909 984235557 993728146 999087326 491839481 831896048 209578460 583278863 654613387 724928144 235523876 656327240 592077535 715675699 410140170 614433870 862874032 916319639 969164217 987398637 330911701 398199774 898775590 938402887 904078620 964363780 994843709 999702378 96654567 979961003 692048190 810677797 126589663 792835398 498915774 512854633 539144140 826881915 280927933 400311006 457664995 752206113 56909811 610060719 953746091 958283452 797232529 958992676 979541600 983227802 594722087 615190777 747343787 848738638 495211635 630938516 214929658 286089374 147016629 199799320 207147595 538459119 450118976 847146926 673999730 842789266 447167454 688323463 477134310 732007084 464078388 873939015 78869068 461573026 205249208 423446174 913946848 946618753 485680515 651957654 894192588 964224207 114771786 697594788 946414641 963547350 158633977 491772160 812488943 845996259 114323644 506508758 529612766 617826403 7446744 34389128 21904332 291894679 848603433 896059566 595608209 962782470 268392070 936458847 298412308 578542640 493885724 638348005 277267565 814492606 68682449 231625448 968275354 980866565 679857126 933281295 733285394 976105264 510616992 803947066 852145072 981880629 628693557 791235773 175956620 451822686 200954130 657677573 654304560 993722847 247023551 610409750 426703116 509561414 88023609 633988716 624823355 710138074 912310507 928379266 709990587 755666352 276524683 992982931 747474141 972141503 755315301 996917576 681170538 857843727 444334589 878931643 514581125 798713348 931253971 952163845 886462347 992257403 944541721 944789067 186774914 886289580 557996343 931314041 730590799 896431784 867692078 925054365 592565860 746717809 739421738 747889032 911097710 981265910 768626998 907510693 27716231 211919998 342600963 514211632 755052254 758597307 3484126 109689229 246783293 866717406 719789872 820358847 707392721 808759060 671828939 954921063 90443369 911340060 731621854 893820906 15433359 851130480 974356096 997273319 368742599 443950680 782038394 911386309 966018885 999091024 860872676 987808807 548565214 665067713 492854485 763381125 915395386 957948750 784071491 889511883 132149001 410196046 755762309 919944983 959934627 971509256 914021140 973878151 150220652 560497632 307018061 615047387 258440349 452931983 612216708 744786889 351580405 845024508 589440237 832533352 467025243 496729428 927234107 988511111 730390548 762376423 109589078 534352711 945189503 949540541 333548472 481593595 155690996 971575713 291752516 899760212 610784181 987785153 234512579 941928793 628193845 634389040 936825080 955699465 25832025 51712497 553140241 572461194 219595567 753197557 519207721 571164082 620261774 953021267 579866004 858551785 6058335 46860247 453430926 572049461 704473834 991795052 400921013 636725956 119380803 269359274 196182737 335766047 479996705 544964089 187103661 350500430 831106198 899680286 726273925 946204405 70958909 357553735 688225369 842040631 416471981 797079972 668578849 875329687 967810369 997538925 313396207 695012856 617747073 969103379 893128084 978313367 975806452 996927894 273747993 791455979 934448872 947873103 934377086 944461667 755766821 962130615 191565716 455825423 764916530 888686720 514318199 525786994 472971644 727994360 713646007 988658766 388607311 979049020 761628696 778659608 394703320 761422462 696512736 839203167 85060215 702277660 298443664 322101877 700779683 733377096 598573539 615656485 894486319 971335680 806826427 830164471 356358426 532966199 491285333 994082297 769290093 816481565 352220730 843581501 515029640 829698970 541964925 580498684 171309416 806205283 260747374 518187987 476392719 608019560 203107175 809835460 564703595 842965137 189290883 484785251 295383827 377449047 822246433 932082999 361527100 705950034 581162201 688218211 797670037 803096846 262210875 996997462 967806548 973388909 795155252 857087773 680301087 800393379 431954709 432737268 800738838 936436830 773218668 933583694 804645227 833641831 269146633 726605245 183161013 218984054 419054642 508457380 516682732 727388244 834840201 969711632 192954429 742079034 43444824 922726458 209886159 615133908 313931348 677733065 415717234 518446661 910621825 950999123 997396536 999496677 303124088 530558301 225796276 706944891 110252759 981455092 74612476 719095259 173794427 756992145 216914923 539018658 233760125 404842297 535648932 554012203 772131411 857747190 728272592 958946096 562002885 875492347 992986690 997496633 425116989 912608738 619558779 708648470 266751112 335414171 5370334 701209326 687756434 932015223 424170428 783505520 957469153 986559060 997830066 999678877 127649227 254980537 224964127 761772340 402061270 721152208 395880798 433452636 583064027 946080426 900261561 984780980 492666775 710005588 476595317 906163117 128036439 498188179 592608564 761587851 442844987 804437348 442174245 721692281 993749915 994759014 97945585 123076259 391444265 632228130 62799788 284914386 88342651 166150926 735046623 826461893 219234077 595525754 585977260 842533813 112653539 219777375 969916503 999619359 405553505 420224844 236649356 293770453 129283290 437593215 151348454 412144110 471550333 995266200 965584791 982134966 867459010 909744403 922210213 943800309 376379004 401126348 818321201 832721640 608659 174858589 620143796 774824882 858508958 998987568 338748715 579242206 219240137 365341865 227379146 791382819 501134260 906106137 610300548 760909770 232383728 767753895 977762949 984470908 410062047 994466447 968902357 984134775 740134677 784276667 561658127 881326765 474424239 904029130 2226643 649730889 747223431 798020832 631687458 747476058 760068391 770883395 542505923 637652272 967994028 974193609 580549097 886209687 18286905 55567728 345335774 458429569 847887734 914691056 455067927 643525989 447579219 536487004 480178373 840238590 988191682 993275336 575078501 957555778 326639171 393973600 280567531 974575132 51699688 171038737 627631529 976214933 306625858 961326703 772502799 851131890 786718814 787894991 573492432 980184293 50250717 480347124 617701555 657823269 537932754 963001808 480623504 897614513 223793106 879966337 831943360 952622054 470627807 883622925 317555297 613603602 803792515 807321126 250104750 703290132 802484742 925908819 432473654 860814363 952161002 976840308 283074391 619279441 482267394 650470043 83245435 618525995 91419000 276366909 772296458 872104123 872789100 885593607 763766931 990843405 973651350 997384205 186713557 480783820 374210750 747069019 60848111 71314218 516050538 752714056 343328056 779003139 445862745 555902605 292747161 640992968 850308900 891108488 661757370 780071512 777536681 868000728 458851984 478183759 641917156 781365197 503942275 728725383 957389625 978029621 467006524 625522784 909599839 986386069 824524622 958649764 226522480 486477481 748818510 843904641 752133706 828441347 615262561 825223286 338547904 422787832 222186533 973373594 592818749 651256865 374491991 867508597 555620598 739764549 150967391 354504947 362984866 491834080 280263829 573260322 907617236 914176002 44852961 195730481 392966839 711441386 371326027 809974372 347846211 562032745 496278117 615190430 373932005 748005679 520054862 861697926 167404459 979998317 143891917 329646165 440714399 727522564 348932348 969861759 780822649 987968027 148262260 355442490 980298628 992240099 915927230 934362875 729677464 817914863 970096905 975616835 967176703 987967427 816116824 996242166 649341627 687721802 910330384 963193648 490267003 915189730 29632852 698078338 457290505 789949027 102401283 145147719 202301972 489164579 191314974 806688920 356647256 358136382 614393032 814336804 417040427 441299658 666985507 838765690 144791699 546372572 681827450 847033677 873694573 909693887 865149912 948949023 895768489 999646830 31688201 785133694 601127680 999993082 310396654 763515174 613763947 858173665 630322330 968532302 509666614 875803389 135652149 322272727 358077076 575385145 49057512 210877897 442658283 706855487 949953078 971877923 408038615 902392005 304995078 344346369 454476808 702138005 576451831 809003265 833284177 941483973 908503667 960037154 705615120 914361952 655701551 698435556 304045920 527355668 361124893 672423447 82586092 919675384 37605461 845561831 540210577 931811203 678078072 700783257 44688172 629149342 688705266 866731354 808879083 936705241 858869127 991686284 314785012 929423280 642856692 716930361 795374531 892781394 189702200 645393183 585025871 859884985 585880594 712662280 257478526 833484374 337303506 925108975 358204681 851921315 221577864 659567847 629287416 995133062 51103674 122909715 583517606 931430375 205584891 827736716 2763652 584088775 381292848 563023652 710687469 727979469 503138454 856746677 563951168 666618016 181188838 976703785 618003731 810564253 153982658 684495433 468066300 604320646 176860371 579607340 425156242 900286531 627323079 657704078 116821510 963531899 262153142 328537896 636936007 925374843 143701069 803085484 666021681 988380857 330743882 767592110 719305879 937149465 743644818 930910448 222157682 501371472 656329 410206803 587273113 769678596 475903371 697198879 167213760 562175498 395933207 885660793 96768377 831019618 194582676 844168508 278641328 734426733 239713929 720010994 854084681 971291394 924374008 970550284 698661463 861679289 27330333 251677102 942573148 975105414 801320539 834668909 990176723 991642263 617129805 729013594 322830035 448003188 987772241 988582001 362456986 996835349 426622908 768294078 805710581 860908569 53424385 370737421 739702803 742450040 482257046 955996837 696293614 807989411 313144370 519860872 204359026 717189952 785741166 812668041 493187100 918626824 560062192 993088283 147649707 499648437 930137222 947760494 668223929 837507896 282799159 904274616 497272488 596927605 6018778 181766527 853059284 956318244 75011602 494191417 264987617 483127275 567737028 818627124 858682829 969944775 549182434 814731059 540261612 884598814 53211498 880730500 716462436 952879474 980301517 994429135 256663300 367806659 707660653 980868536 248030245 405059933 305637666 462754422 725372911 917540479 108722400 852438678 541674638 590549803 16568888 401214547 898350128 974241903 631742323 892275213 57415832 699453867 913497637 958809038 319161146 918596497 812321788 927091910 844869681 941294771 239225670 847679718 489800822 829788631 314073960 781564652 840073951 851180335 769849844 838583933 398250062 617136490 207806939 549901754 425429908 701344764 50833184 250450438 985776997 987904471 963869884 972981966 312957878 528247968 427163670 479595002 347185090 472855507 513768864 736867764 814514842 898691947 635847982 901895469 918611699 929747454 733841959 816887003 808931664 840760166 377712974 730566138 146712306 804108897 630747447 727014141 196018075 819672998 262623716 995632141 294648489 738508628 972797890 982392186 213403779 561024528 343832598 914374720 253882812 721771547 194609223 203701229 395103721 598701283 483179662 528080016 807749350 836007453 576375361 844935280 957085809 957383364 28949046 841404338 506652169 908683021 420729642 889934667 312653478 721997746 920427427 957772287 79387438 459751423 105040237 473620377 653725618 656547643 445037248 957746501 275079379 863820160 884552346 908514351 181157592 967952414 425935285 679236218 994963021 995945256 19245037 496558693 265555537 664134625 991080189 995301955 628319226 809112756 592082967 744309580 86845803 409076764 778584334 820223771 203474121 780025519 785253810 858140123 938058829 945799628 10645855 958031104 755823680 943647671 859352807 894785952 362857971 616060131 712237164 979480431 998644858 999985521 102108010 803495275 92271330 904166041 276051331 901608924 765573122 824155412 453212869 890097408 808237260 954038028 541186307 768800393 5718259 750985533 874126174 899387988 653199265 827918332 247236775 962375676 933984376 949766450 109640221 164353030 23712839 204172897 947417882 969835019 940948155 969352804 683424166 829357266 607401376 924216020 695549637 900877572 40662730 70312241 943492549 974866684 344042316 594432740 696251327 787723310 231823912 290453299 356000092 903984255 463947259 903328229 564770449 612836025 817144966 916153440 792697154 924345930 503864469 827259713 450390002 895121290 285613369 684815258 37653395 451496353 203426037 263676605 195011973 699788449 909252084 987784939 381416864 549263833 441876355 831170697 454110976 673991869 195518079 597044513 298502581 721684407 991687301 998767993 434778651 556154623 619519715 856098707 407141867 460162242 794794910 967306787 826537574 921514598 205037528 936407722 602515199 608860997 656868144 718270784 652098972 845365994 987716429 993500355 10251147 164491556 120327370 428442467 577633084 684452275 506304619 644848897 497765871 547102389 960390534 977263555 796752459 829069974 356959285 755588915 965590352 984150471 596111141 599495251 587522141 920524959 723257836 828671211 907399756 942270808 480275918 818981571 374818410 767097139 412007587 677732673 311943289 415944974 948352303 961143034 162618347 994327328 336623484 974950285 25771780 900666723 240810258 750549687 847433598 996566731 647815928 889829499 948223521 955688132 781898604 903013085 222559061 260287418 747160544 829327633 195735656 239371053 310657460 895311161 201355092 714426789 577822586 971425489 784545486 927552400 445780163 877274288 244036985 324814936 981502604 991426327 482757589 522443198 969259284 990698594 347885774 588861263 218655197 689812264 663522598 853084715 871544281 943322115 445233039 589744147 225345614 931073786 10769420 81006939 894627258 909979195 507937417 896610735 145788606 494728572 572822823 866935233 362871608 875357657 218873931 585919724 666019977 896661830 316071947 329522471 899471428 906447642 382350314 641404007 114856989 674260069 482349334 734795774 624395180 914547535 518463684 946731236 440801415 592141946 632129501 871526370 346939529 660802696 612284376 836114187 882258391 958170815 983224221 992018318 270893863 431573007 33509832 213717833 65033733 271570879 780344161 790390933 389261928 532964062 952069819 992407282 168676723 247734692 537924386 658143447 620681824 751528792 550358235 692971542 493368274 761009003 199225914 599034935 920246242 938076508 196852316 377976250 145558639 877636311 846089605 936239618 212868117 720728412 608572620 715004784 686242264 842714086 295168837 995417599 428559494 538784447 172757710 288337506 703055083 708480252 698617592 768590667 711058031 815875153 203246337 568441976 759983900 844374932 286918749 547067573 366796761 609327541 564866406 848846522 421197209 737306100 448579615 597681282 433194508 883578646 953707161 993358221 330464329 362214333 501221814 788190014 22663758 420457700 346030692 851980199 261311145 803689857 730766650 982972916 237137090 850295157 334927108 881148337 659608253 923136812 413667904 886279271 698134428 940537279 187402414 311693744 665187632 743805724 242670792 302527981 967304144 980115666 48499749 445436993 747863301 836483573 142921391 438071692 134056006 556282169 413136279 723928553 983550473 991526722 758442465 976373960 311285617 420846579 971841865 983966726 251773420 299783002 662955304 882555962 21115195 252813823 897898501 965125724 665013153 915815128 756628579 820823748 461041966 774385802 142921804 671813191 138608994 349690847 883142147 963726631 52086317 999900637 565932777 710977930 562851049 571221759 583951692 835972836 506653257 601141312 116627344 877653206 255043541 942304650 157915961 629486712 928928935 962784662 30271644 174313616 736605074 923177487 671978588 925546570 318354726 483886978 417028326 480952809 808342593 852731596 175839334 846658832 859002181 972218010 384859607 590532349 354099628 370122726 389972365 667784401 408825219 777012608 941850295 989335909 449811138 782987451 968199736 988881575 609279404 945696128 339281212 929302553 622549670 821012941 206529164 973469744 383270326 435301671 779587679 985275211 260843765 980735801 281365015 566670810 140116063 434096971 283055111 904642783 595251355 908634765 405766510 626255964 475300039 711410422 330494670 861360769 805312032 993313903 277234726 633101160 163488403 322071359 821801892 941534234 281414335 841767589 528371950 582513805 872503380 941596135 81917672 963382483 379140158 490812725 775294386 996898822 841074534 874387031 492878175 550978300 51610537 706767649 102595145 853593306 484137092 493524661 519343304 877408192 486261481 638073721 39264211 640906431 673190756 858816648 28537272 875026977 487806206 635759934 154556514 979772184 664054849 839929485 496171698 651602771 888170708 897024524 144622387 885888691 350997340 716399923 6369614 558940315 955760355 971863996 466231081 579188836 461654046 752708450 757599525 871575481 919343298 942660373 963370532 989527872 566475730 741757135 111992932 802713305 663904054 897222928 177563676 907291047 192447725 510729910 15497414 954935143 344414743 611477751 697611162 915432762 453873186 815662507 86341103 133848867 763519961 938988264 851944756 930670042 505744317 543442562 281746371 646025344 116908179 785785383 531136366 794633429 309344823 473028861 38023448 655870722 290559125 635828732 183996644 226827140 934286525 968247030 21587188 743203925 777034800 948204299 52525684 785525932 501126065 790022593 165946353 682587803 920076176 953323574 744468029 830364737 976167752 976589083 133993988 630658766 557209889 869701454 289703015 310835390 610651780 877376729 484889590 664716585 694000 734892175 473871360 778128548 862683607 879491162 875053274 935838937 986894386 998370515 590143510 938398355 773021236 813825088 49909101 734178707 815180016 858457523 221645439 379809103 66272555 605458360 330896103 930339040 158062104 273618762 664363827 885467233 757028876 831354218 534199511 620828725 467761940 700681335 80346174 589698142 60349568 652010032 983987775 993940392 746121555 991212292 237910977 854475285 551104290 927807958 814132203 920115481 294469766 712030009 849996161 949776668 581634477 686410762 594671205 674767888 597161982 870957493 486397024 934123603 128344292 470889675 769376803 929919763 964171795 978660675 841018091 984034255 944881992 962007816 66440143 173147137 651870236 680248769 413211315 966094392 571047922 928392832 180814704 202720640 732108048 794080208 474235761 979682298 118172827 637020708 524050181 946534153 814975041 942316891 329280951 743145549 887941080 923329632 684786664 995881033 277019683 644525349 574789443 941805776 482741960 663468523 947629934 981722387 504543937 760608880 390419202 705751171 63635632 964984079 578641507 823127731 545477989 742984935 809759447 816255751 256179188 901165736 755928494 960819603 376149913 494081777 10736948 489593475 698003681 930662109 706843245 966463180 921595137 941111548 896811277 995321627 167916096 657813942 552968470 598731562 488162900 895082253 308110478 360107791 166253412 811190124 504872597 845752675 125704167 349722963 299347929 765071205 509749163 744757110 978677800 994008438 416028841 986382518 644554279 751357371 117564800 489732951 133212274 515517275 694835462 843067715 498231180 920492757 61012531 655540792 707584904 863428063 651430919 677420287 344608176 903572782 563109054 818913690 313204721 335296330 915991094 958217664 28204628 176831972 319957389 774141380 475216758 999980766 903590123 927888916 359255746 640120284 908852240 924602581 763257227 926270582 479926465 515695817 706788125 710786797 209037491 318017368 140938312 937658355 246605146 632893492 935473452 960552950 312830897 756170248 738796431 758082374 619266485 701671172 782644035 846073170 138455132 751068820 322998436 969851643 182180560 376248517 611306478 947197409 247735729 867612192 301219482 509788337 79914800 860030562 786672259 914757838 749551561 967909817 62537774 301065481 143722239 202619102 461837324 835423070 567480513 784690892 177165498 570757149 26077014 355535640 43009768 189584997 824248288 940743266 71409400 791167566 393630578 864148348 46251713 643915210 271092498 736673489 540746210 896571043 150655672 750960302 724113709 764174766 896617745 964702612 624777738 728648074 702063259 916449344 211093639 695857670 473575163 542301083 915524041 935931991 726911882 904645250 347171523 518658564 559455944 602766246 318490205 465400503 70142355 394006694 461905405 928855587 636040195 794089975 396170009 851815466 143091346 854598379 368158806 668272467 235227808 918292181 971089048 983929422 882747136 991443715 252530024 723852739 299586694 819033024 207808604 220364607 741229446 820941894 622881182 771430550 850005539 884776220 44922837 122400905 776688888 890101837 83614499 396978069 539549685 856350381 967137950 972610592 29651422 612867644 843384000 904763850 368557951 904141519 803923793 842326355 574528305 613937324 881100234 914976318 774602456 853920250 274050175 508423833 336405430 636082577 81492589 302733968 414837600 975300635 502575166 720471019 721177115 987011999 793735631 964417862 281972213 412313434 679035872 942159315 549001958 707753203 786604767 934880280 323099123 467364619 673823075 771156219 46417533 768851340 881512941 971791507 4127697 518240824 919127888 947474454 906383352 910019820 669660952 935960487 70520278 522275458 695892103 779376125 373316857 936941119 323445023 646020038 415473055 624120312 756276643 837507236 229250340 453229585 848683862 939902921 413434566 712260897 224530394 580962124 994608039 997927372 605604156 617162607 324772343 993034825 209152904 767263229 896885808 965548910 467815752 480610340 53536523 182492489 304137633 409882516 444045213 538343433 762661755 979524806 976865401 982296595 591516971 658150733 683501047 786777642 501077982 947073080 881221664 882451851 5642136 738365939 393422336 414357061 786819082 885720911 39787499 729859069 576428621 676312285 772036433 775583950 238932227 460446790 1144249 320879345 95044165 983357125 406983026 641589282 390880181 729956994 884584264 945143925 198975191 591823525 488268591 999087734 485612203 552783440 325649089 514124316 969789177 992383114 822987491 834457053 872071007 909346675 287988813 998061627 853447240 885046595 232011459 539940374 878879435 933040926 799875916 875713951 822105090 976288790 415539732 925415173 508479015 895205331 890473518 981655311 853682051 899965143 367515136 698692598 530990250 567197862 782824711 978366898 422417469 439908242 285351661 966392874 177584711 585296538 229004608 451767622 816228790 823265035 841701489 859078767 677420548 747148718 639552779 726640834 444618581 526707298 766013983 797228600 993277140 997376508 442879950 520987865 338244088 697652532 831416434 879820635 536766732 774607403 621307381 732771972 346581374 987356487 516090968 606601045 699293011 797702456 423466855 910825389 11827605 849331711 575004936 913058105 75962999 306476790 522188364 916391258 928964346 931950671 401303788 469334711 762659786 796263367 296310016 856099620 520282985 815526401 283861361 868423016 812541056 816592819 122288372 433355814 276171225 817427421 254265259 454259655 524635682 706185175 706071552 721515413 400613817 563536343 305279828 555018640 152532542 568969761 462354170 942393689 152486153 561853775 186897649 630359671 593037191 971080071 136174931 680713025 430292965 634385861 774478055 986893122 74940168 961524058 922923637 985499175 806197116 869788595 977003926 994378180 895801397 988918115 690873930 905971051 693992256 796793148 685445318 812893589 158084821 159381266 147179285 226615044 600429128 790559084 80926532 999934519 830295700 930082534 760210143 896302367 876919581 913067171 586317260 802645000 666470828 919608676 918915620 997667812 86584080 668493194 340265849 362651249 748180745 782721979 651636148 869362507 900615934 962806186 214121348 507433185 24755353 303487759 988469263 989549298 602693138 934794194 192274439 869443423 68870473 275259607 627959410 682192669 100405011 868731784 105332137 857810699 196235613 920818274 89579502 406248219 455849401 516896953 730222342 838226261 158435814 700866841 467585694 554841528 681232773 916497395 294386572 872489650 716710649 978159290 247484450 359538280 163836217 507811803 250550793 529359284 551311008 883970381 203014902 260091923 667524531 805103700 96824782 207496616 773907211 892003608 579679134 754875823 30200707 976147159 517492213 712743304 930164607 993947219 843954302 981243691 998705723 999101685 261557349 336647113 911044589 919772055 387078127 729560780 428284061 777121461 921786684 948596298 237089438 923878622 699016084 726791561 933546684 994643942 317239529 341235580 551051385 887371180 479386884 833869982 787551955 931203114 811820068 910509377 215731404 489033833 28457175 418366482 72526696 706897479 707062041 982415613 699905740 972610717 14489856 826961849 272166732 706944332 569254290 704708710 57209125 854640433 663293878 726516573 615192750 706172967 720529988 860012099 107186887 501307215 300835901 829167210 362810094 469955041 569842544 880197616 789193418 887333096 966189637 967505334 918945612 951325065 704973555 913855090 507411771 586487691 764503105 985112465 216821065 740816468 78354272 456419756 571189971 721824039 942902760 984569320 771995185 859797222 633533424 998836088 671338534 960372644 144894274 412820100 551761849 772082081 985544822 987995861 764517028 918249701 160796913 381587191 205879759 690683795 540174696 938816993 124298588 679441747 99892369 782452151 494455507 762387068 951355785 970172684 44992325 551167193 653537666 821712065 180197309 602988954 228798166 882787238 917853203 965939843 561173486 802638461 809696196 912565718 352297926 871006257 356782497 677771363 778906640 978759165 591929280 627693236 516379419 549422100 44833501 551480110 45218016 975164411 819087066 977920993 139743025 590096650 268593044 506295074 670549284 671791229 402869612 780461093 63024742 126359988 792098430 919525052 222438006 355484043 981132254 990031889 277568268 288548488 34352996 530640299 808520267 819989580 728695442 945641676 89847202 841397428 170699696 684077684 317359140 784868570 419814436 597509241 632324835 824074070 518057556 932231994 23554729 126891475 768849161 782574561 829432650 954356207 910576574 991025269 470288656 855818069 729560603 913405571 879907823 959267273 356729397 678017521 766786149 815305236 784250163 820117618 402562380 845987238 119176509 195629083 132132033 393289598 764468609 854477254 965457942 990805482 230955209 548860763 319883335 909822791 39579866 501188758 13368474 44107211 833982494 995994969 351651022 577620395 10427721 654231412 618549533 626627799 193424558 284138570 362732025 638922690 289144607 459341543 160322954 584053156 1631536 534607685 896110597 986618147 171781019 303585071 923137833 951495933 561301476 824669828 135451788 810614254 203171187 413282994 967325921 996407074 401882109 924543354 16072192 402272901 264946330 834754445 210660213 445493163 653045154 991126629 120894489 495272636 956214629 990199807 307199332 981009882 586442144 830798336 182906081 766682766 668659330 994139712 38310848 361814047 354138467 869493335 23254516 831272909 365232293 510887869 886394226 909425094 725200552 993410713 698402984 698485266 935752533 967956195 164080804 672811575 369871124 598822931 802553686 996069165 841241565 855914237 681794336 800566883 292961577 365858680 265270873 375875020 55491934 831047057 730369225 966749082 60209844 797844684 965181835 971062810 463415860 858834709 672317878 698326405 501367142 747758669 197680710 334722689 59006970 199058311 152165425 341986928 103360675 278352820 503556001 511014534 34963890 995366378 996029216 998455352 851529508 944124639 487903602 900972478 582834856 754242543 824112795 871182092 728753539 740092100 301513045 436660999 575957195 854675590 916638476 923881232 201277777 451372743 888240325 905856898 370319075 431412676 313249765 421802605 351199160 747915647 329100460 866725936 243149039 459334756 909883832 937671451 659688684 940812549 417397251 902473783 731704154 955479560 12602324 892227091 149216535 976716292 723579535 850164127 218320734 228841690 325109205 690217538 530617247 981581858 32084368 140499186 753753750 876884925 54908805 68359324 476430625 808187459 788682086 999305658 659240766 749746116 312674937 416798644 334601027 794344990 250250244 997838919 450871389 833910535 170832323 576471565 957987257 976612419 207853620 920002920 324134329 999427397 402170556 677302689 978517547 994823505 229460019 546246466 125541228 734508412 386596506 774930732 472397209 645681878 929739352 947084096 156150656 417046429 283535906 425237253 946777903 993272957 602765700 870555020 249364298 951106471 798857517 825694256 112993224 925413896 884787989 980548374 367057532 947930574 780161647 938936911 740298101 935150860 472193697 861565600 10270762 813078127 311157504 372058654 773680359 837376730 263358289 857493804 982481101 983378615 784468188 931593236 190055915 372846375 965737675 997274747 294816462 472448096 134826939 847473203 652997916 851719675 114960540 927723763 552434584 978468535 302973666 579828617 698796140 928795276 435264691 842782854 519153146 958159870 138644633 473263916 605876899 975519895 115595633 412445732 6167338 265871822 777854400 916293776 135624990 685537695 143987535 669960476 497099297 889277633 795071154 950194315 816845735 841956143 88112371 615976519 82663204 895592511 847649305 950501787 829809735 893909282 94174779 965117057 10271337 837691572 125414763 800426336 360832359 646429110 227744964 538659769 263768519 707402611 357618348 424346661 519373896 660585012 255845808 500914085 42723663 488733222 205588571 809225698 69771562 295519456 937573249 962514642 475461077 578776170 261351817 796321012 408323744 685517630 624779249 733424165 499813574 818240413 769547963 958066174 514603283 738786124 879615632 914685578 148064145 449462556 646228613 771039080 769768384 871237876 332730453 834723083 952444486 977210612 145140008 534189537 869057125 937702092 79579196 616750055 975892382 979138216 71916653 191279312 976541518 990532299 461059955 796397198 121633434 349724250 687561186 965954677 324205256 577303064 968058762 969473234 688228064 947552678 412253324 880512117 962476652 977774420 115221737 341494846 723900954 919433640 500890852 784035119 546175675 678151045 363605858 707729546 485514183 855379559 719143341 901763849 530257438 780158659 212827410 993678933 109894778 405855793 796159124 810553787 41403412 779443552 616929470 717872546 83647174 993176911 601649175 677133555 398175874 708014583 360594625 919907875 97431169 809834406 222381656 351807268 528454744 781813766 150009393 555079822 319695780 880319855 479098179 883374638 977564460 981537113 411829969 792502503 586496161 999328986 248263490 596071356 773225908 810623243 818100218 910012538 696071391 890995118 751283325 944719456 897101851 926005882 125900397 455131988 852388292 966344177 65317347 567009056 678597180 820720842 137363914 605165224 452862776 470098732 516785509 883685374 507101687 671893354 356201391 443430138 499860706 768010197 865666355 885374831 15904861 174964083 867605943 878688169 254533992 484944918 951289603 988412317 389304469 843687817 657283215 927925997 2619542 95140189 708151011 926586731 637592607 707117014 79437136 546288835 658927730 996017227 692332184 784387662 982046732 991589889 916762404 999620085 364450152 587336220 858290646 919636472 649079756 795597024 718027648 823916865 152627385 415784164 793261277 848540429 670314168 689786324 417147002 700012007 338030086 942498597 178302965 300043591 668870864 975648013 184385721 931668835 761737561 989586498 804102566 840280843 829892416 850327328 137055783 832710973 662637629 774218216 97883344 186770240 599868341 742914158 500335322 575668925 966889303 969843012 792130286 848580253 859318568 936723684 451816971 981770531 930441221 984824681 151069767 478173649 233919823 752446450 835105265 847464261 835341378 942756273 708600061 987587271 260463879 391617912 409874364 437775516 860926939 985724065 181030097 785808111 530734859 734730827 869070 93947538 452934728 746868315 327355018 761424164 869360387 875606853 244128026 823655139 284728791 478973448 618918353 919624613 142803066 201150561 885708515 968089264 837807802 982666049 567372280 939317084 401882658 751582717 839258269 960173597 526983687 958888635 129803564 444319599 3921795 184841813 912409584 959459697 454040975 632995442 224754854 875185983 687898908 899258438 872556460 913277413 146697681 731564736 298415573 776285271 640219531 777197836 224918742 481526383 834530028 869487601 618515507 994081117 253705707 577891674 790518452 895449559 975047814 979510277 715920371 943596396 969411362 985004527 339520424 656984748 297248135 714052581 232830435 535855762 693671548 883530608 634054836 937894286 845984742 904267972 498557563 843257509 539447435 992749484 399281611 851190762 874030780 911977803 900757933 981194748 194397223 453491050 589356635 676006470 99952873 757403993 536151855 973758232 401875952 945791303 513098591 740436877 808995821 835376037 251416283 710427154 265463886 542226115 740848799 892665493 871458221 965903823 463043524 804880882 731596096 811577378 926875484 968682429 639014818 940146326 744305128 847642394 688103156 883108482 786426360 839435902 789289371 794124672 641335435 895017086 21826533 128663322 578199690 715334595 178919274 960297811 837906315 985023716 755320611 895537017 478095868 874750471 247090717 691422392 779338102 858556532 96358302 191117630 921015213 941601418 71011472 117446818 372001001 942929343 336256609 631086614 915827147 953856921 812115865 860497697 308266464 948667681 581845377 946888369 345777962 977377607 356839734 731084924 305729486 406585649 493000233 795520496 469558975 758781361 106819043 622077125 889483665 954908562 435529247 976789939 372660462 858177261 315084960 622864657 288671514 411314265 180888036 233550812 138589684 877090380 521919020 658159283 937558487 976862888 435937057 784692722 686539455 873939063 518581957 789937311 925359240 973586931 457315136 945233558 163833238 192626523 404453979 890588227 214206269 903886105 240058584 485690921 190682578 824331440 400192607 754305613 811753514 942768444 532777943 959127804 424311131 599568420 47892480 928447744 668188484 780277301 651445852 943284822 52538541 52659749 643245672 985230252 266759204 329353424 341797232 466596869 692899134 818129354 731039941 957431653 968024256 978842750 905120240 924195596 246388708 255024392 962261939 993144092 801450084 813987717 717671098 930960528 436243756 552159118 618157843 624217021 958158358 987650607 493112814 724606054 750424322 772991218 834339867 951631136 287534510 567296386 349769059 652887888 481366644 668678335 715548697 757234687 180132913 633588530 214293375 660072836 253453376 810788299 679305155 835152270 516789172 765728309 139180683 700790022 454773017 957938292 13363974 823433591 57071712 942703342 586008028 763244111 666205296 889677544 335519241 665292432 121207526 798415425 490158538 651815474 766089859 884262578 485465820 731196668 104126877 703289313 224427132 845816301 586638203 727315311 927825934 932953016 226974657 607458322 920760132 941113430 843769392 931331310 253365484 398797992 153872653 850968551 725579602 808114881 377680196 901253642 772321968 997371648 628728726 959349904 234301658 468159666 530834210 835749877 624362464 766876120 276450538 765850579 556180806 797548064 36957543 632130960 571675559 716399915 210541680 598047458 404390044 930342039 529490333 644405016 361176665 582581344 867843752 881439804 472882052 632680317 880740796 895486727 539450444 648664034 44854853 827003267 11537914 333235554 911336381 941177295 759041961 812145989 681073253 724911877 396015564 886785514 681665805 840925185 615194960 696697736 93023472 901329606 557920555 910280680 255266199 604835267 715382391 757416187 548659668 770013457 372659325 678746424 410897909 650342139 936644892 936788740 606021748 942494686 630105451 813375437 892002796 914905046 861695335 905404428 30339528 731885330 788727690 901744015 525694164 793108679 395380910 854567025 672467178 672579545 165175368 283866494 746370267 835932144 619114691 991296347 83718003 385370019 921375561 935458091 560993084 615681800 666426023 876452151 185485999 295243057 567617767 857755370 359197741 384945570 140291148 684893988 368570959 741505537 279062803 682686393 968004300 981678672 532138687 760478988 924310493 988945866 935448121 951521955 596566125 775503459 91682780 534991039 685686288 869601346 192514375 251088166 651897089 779162716 305645072 340698026 471084729 738151206 657662660 869262468 237668725 523399571 757560169 816326121 970941217 972135395 407296184 932079132 853468394 989225553 469111342 844925669 668838040 861014427 167069933 262860889 22398939 253640998 470359107 682923707 405263098 720298579 156967971 293617108 87177326 996177650 701067635 975836050 951941117 991700805 762947310 802452467 945933370 969859660 198400265 553197194 308928800 852277174 765581508 817088646 923376200 932782026 146932143 754721963 219619290 229953693 910677838 999438293 59928072 151645664 534932055 714072543 886884799 890896310 539874945 880156963 898681208 976615205 503675001 843875463 62529163 263907539 629525044 978958785 275437488 323812105 526565701 993353532 859084036 916112331 936352218 974869738 978361253 999835441 694862150 975021326 345576822 965753319 84273680 641491180 968062589 974698072 405161989 860475137 95999303 349873246 135191811 162963537 45059812 360167633 743637694 770951937 637211459 873939425 124028562 671219649 533312096 819415500 634269348 897543707 871725396 943533670 516602935 782968126 635802295 644997024 40536606 129232290 700700336 810095702 218280557 739010855 496292350 589580260 825788338 855965838 397619543 627022560 975739924 983330357 590966717 833139055 694563911 907053956 968025256 975722523 84627519 194650400 367550660 691396763 598751184 803666211 207969415 560654355 825402491 834352630 683992542 967115010 303720612 656111195 21200641 225908234 533304483 864764231 268264977 461461309 249384341 665738797 763024050 912415554 71473713 397599868 460213377 935428785 198552294 549894371 323984257 455703920 781906883 845526537 179197884 943076780 222111530 971376393 996902262 997354287 241342155 771843939 481128453 640548421 229642490 422192430 370913485 455884633 309994018 592333655 856164321 897271461 802798272 839206685 552422570 694165302 951907059 964216872 858204754 980255091 465387447 518619285 669986937 953325827 489928792 587852436 593882310 797389000 703235784 940861422 438729820 546842221 697326252 891731675 451684387 620098604 920585097 966514440 981630745 991201701 787022571 950506701 206731637 678625133 504633776 803211242 670979835 793140692 905514812 971781623 133194045 211075694 202363809 661287220 117921596 459007456 745801601 988490832 928691972 969934679 355001025 862334933 383742428 806294475 351014978 524870846 269423378 721268455 564848039 730119891 369334547 536917418 112788211 549407023 668689851 694927818 478189455 791553970 920830613 930370564 119700657 883298606 289007606 875928943 767543775 795513923 207536268 554047052 850469396 874779182 21722130 331021652 399192496 405438237 58134882 358385519 367201500 898424412 179384147 483037328 159847348 369577032 926221760 976598544 480290085 889145823 910710310 984287305 524665042 589422743 524208263 575198930 567611984 646941347 261090430 319611060 198839276 648609248 365075239 423674368 443568344 491404929 128689760 288584526 215623628 379660379 936424392 994012726 84903822 961076963 820643314 989251364 955135181 999374797 139605675 964241223 273254177 665745721 380893583 933518660 770960688 886542799 182070896 997965420 162303160 772650336 252753450 847614873 487535964 912997931 120431469 880971737 93278620 771575891 326952050 836292020 282566889 634835330 752646204 811282465 365397106 877669456 300813441 897153341 452399320 899901614 778628473 839875433 946120943 961363576 990445673 997587801 91675552 744212049 894181799 909554250 904504885 904915089 963091379 973247786 134965638 649262798 26724123 983756162 536451514 826808371 755081468 983161183 689035662 885281949 105390075 397185211 424065938 815318215 139557742 600809483 462223627 790260521 273875239 608598726 424662835 638106622 760824981 824564820 369692438 537418354 866660684 939872410 21328049 769615167 807175637 840207023 255814851 377916807 201226300 552535162 483068922 908262845 795240064 968240071 402634193 901207607 379785859 995158549 816096135 971387593 284196732 414793943 834048271 835947922 876833060 966281990 249530266 516015477 795071887 976629378 675941190 888405165 248881871 795484318 10750979 701228952 136592797 189867522 265766450 997212720 685948988 853008090 914028198 934368374 679374278 776924449 4786263 107208244 403669953 676350570 406418983 528186873 700926485 773653595 216176300 805357389 233394453 925634317 474707551 980624170 341680180 547991333 993348692 999762368 455935414 463401541 598148712 833607922 270260546 372685639 752906712 874568566 764595126 954742462 365587522 554948503 984082961 990724061 645154260 773589382 113616808 695425105 443260347 532918005 437531259 559506445 708835369 862158684 721457130 748741700 807197890 940900171 923630217 968709320 53620147 772303164 570233548 610110022 698700999 843952052 105729736 802186304 170019628 968182482 111665785 219805382 930938586 987324483 45013494 149958092 660086449 947384893 617445006 678985985 286106127 818471506 750629044 760878050 310894784 314373122 325703290 826121448 261332688 515010745 374711365 584082680 63349737 877071105 282304744 666586383 806422123 954191598 161964258 944099053 292839223 386582180 95919744 472491788 52368788 186657276 146039605 273318429 91332720 415337852 540496227 917939766 304052740 484428063 870919187 998221265 807252249 824422001 222425711 820924470 113769409 142216612 197982836 533704736 260138325 784151044 684672380 960755181 713606926 903635964 707822360 977375048 515627253 715645138 390576166 819744408 126312277 833374197 650912739 704660233 849170708 990728663 761170013 854863906 179107035 647157735 420381899 572499484 474837534 882885465 180321609 575460179 996895489 998489680 257869654 971561608 25501092 637141834 286620171 719086438 20593703 350040690 65748518 326436131 574993582 715892644 386205534 853446137 257469711 516792749 326532247 877936268 616095603 947983147 575248477 620345011 722475298 736093348 673799073 760672892 324533446 636984755 498634440 845593697 307221844 951386118 229620472 344681576 489012270 604047114 154721031 497675029 759252143 898530027 145473952 976157995 729293894 843301528 687759952 779163452 591093412 962446394 145606006 482034617 782864245 856667327 658425032 765327091 351507184 705366682 563835264 563899565 22862165 76737121 646854719 921412174 955130564 973745789 504309147 943642721 449270811 885829828 173782886 372058299 397372762 489659604 960815653 963259642 144951317 233725011 926178375 947112233 812303676 981525707 557381458 829880490 503491575 525435327 300369870 882217705 675693092 847494364 289894246 474820656 332650179 709464934 397707476 425454180 337161309 785651541 534397026 611520084 282185014 368877345 862625389 966928835 473602346 901767860 603242218 669301193 547942996 937347919 580025304 707111309 269683857 644667148 450337428 467108960 696473185 745899400 528524426 992974594 772732061 828708702 133410316 180604342 504841343 968193249 44902794 667434373 781781096 839804682 837480089 949754039 151354422 881280407 726841740 938857173 117815413 326094866 990894315 991132095 657840009 961959361 34487173 688812838 565279638 986910830 550536664 692669526 811639740 960089412 331494620 773542025 584065802 702509818 72504114 861147825 983671068 992722691 98544319 593512084 847081147 865558444 964829018 966361850 476363433 900243062 547426783 791561528 795302692 881147487 456171753 744850977 451063404 604601621 830340248 987457858 748457577 784888512 246550796 869691279 535390921 830256178 695782975 795720071 723877567 849645495 275707230 316175409 355790383 893046851 462186899 709801895 749376261 993576176 940378836 992924580 916079775 940683574 914782708 960437856 431118474 752697776 796351190 966845133 592971829 928716733 645401402 882270620 449344263 698347795 954118440 958700679 529274104 665916835 163190672 445613741 860527289 944170344 598457610 962614483 45615661 924436968 639441669 690393072 17172104 83024392 750270480 899990595 93406579 106345904 869639911 989479556 850271347 870451396 81221291 671814931 628611575 834712581 734708900 983897193 662622416 917720441 126159611 623406163 764594937 877682151 206798471 611444560 368732805 534666968 520261100 889133711 896631103 950865721 474077521 954805764 538139403 791389856 762553344 943593619 169194035 355648050 256046089 361591993 106565916 357995727 104758288 634900981 831989644 967059245 892188126 949415549 529616855 857926670 964943220 977211917 435332285 472959069 746064247 979483563 779137726 961882054 393873352 422130907 846366911 880175154 955152174 975717302 896920985 970379595 320151001 987419029 567623872 716743324 904378379 921068965 741896786 855764135 988314541 999914240 312207540 991593572 274823793 291601037 969013071 982480685 603278396 878638615 608017244 656788054 378657917 848164569 518721821 718508930 249159401 967058104 88980730 951245711 703855448 821424194 694537425 821117276 488871164 491809578 699837613 921782036 308001938 314023993 179348853 279414122 372664357 629289482 143876613 423161562 255262930 747917940 854147328 974318951 154613482 846876199 151527034 658866137 187149558 555437730 458529959 470818214 701465821 879947331 529657467 765790006 819455783 963241351 189527244 855766205 315733189 340065800 820779065 988667015 629745878 967794484 848910093 976157340 3748602 230925914 870301805 884494653 891454488 916841928 8633756 325657122 16684321 821903450 265161211 421164546 657992059 697822300 719986484 948711602 646047204 706523319 376206440 736559256 473417501 682056926 511647852 557016172 156668546 496006689 189677065 277559997 482255193 885990496 18461482 690378712 974329002 993321528 8129045 135373632 498581909 585649508 189788695 593415240 971639631 986194310 317080750 931486836 174639805 643255393 870972661 999784484 204594389 588166007 416336531 760516404 526769800 744162952 637640280 728633090 703041176 870232321 511171626 824467154 359069887 870689241 696220167 852846579 508123536 612968629 923701780 957342741 731950350 808172352 331128770 711272923 105546543 737568907 417241243 609295961 663061425 829122223 24722649 179873574 762893596 793375074 815330 350290883 808949176 952890563 677279561 808696514 245255824 412594514 383962170 577241013 700146028 733722388 462077668 759433656 371201024 398063156 7868170 171417499 572499016 841191634 704607430 886269320 799713648 903054863 129472484 400546452 343646890 974137212 521632246 882971240 400309414 577030547 750492505 770087356 514116697 955950962 749262371 823253400 746150296 799633519 249935058 974339241 492556947 978939886 852717921 928265683 640927109 973138970 585237257 617252696 874146162 951496385 266799568 839033940 587788152 886504864 703674585 839560473 151602272 802414995 763348108 952281545 601024172 997329553 428900127 856958207 143027318 664110638 485339706 959653137 293471789 402534846 242277419 671018657 132446205 359908486 749831052 779195019 483197130 492594598 469170901 953170940 742127386 995223800 451975670 928232541 165318659 342496063 569473331 838174986 754180016 754341837 633040120 692996042 864955773 997929315 434388450 594580137 410773813 476501826 814494628 863241758 439147360 759187720 672154581 754548874 321343938 926920121 448251412 877564477 924638189 953379179 309698744 917206634 373551302 648446277 579051563 643500896 836265770 989647312 812184563 950884396 877586355 883764373 802053882 848606526 113643528 255737473 844896498 939986802 863563507 910359890 634280491 729237599 322626720 351482722 318456109 987123456 350411709 601824692 106136240 298888171 597367764 868842898 38906719 710785100 336729937 710289123 845089107 977587920 449011734 772888051 610465850 744583022 931089757 979930857 819947541 877324034 601191571 842236859 638975627 652484159 648585226 815407438 363742617 458869660 837206402 982920695 799292089 862991514 269756404 816222300 823424967 837833103 14984304 113850909 274391204 679618549 636014180 878281465 399355679 868300953 972249430 981995132 515468285 790508859 283540329 661359430 468376127 748189701 572888686 652210977 272999486 316006959 537691716 923505986 591032728 743690069 503012371 623258326 544177853 816935201 963278523 969197721 240846445 372957533 912514663 950558341 901030658 955919921 110306874 160116256 767135325 970356363 18503988 674781103 80937494 105945474 377193868 728218917 599221773 626532906 622127713 896954257 255923862 679350740 429184312 553038533 966941376 999169813 33821992 88699389 735255178 753134843 805849855 828965820 312010578 929938687 975919867 998246990 88070932 97533549 261461404 450139416 877429361 893491597 579245242 608123811 235082651 343342754 282637293 669280631 825690721 984451074 667852921 916867498 802187662 804457805 78640555 680316057 205620981 531640867 75161414 233126692 936668879 937034210 15298876 575687873 243829185 615766787 860594735 898281897 327147735 573048052 556846089 567698412 624681892 680242831 629146575 737605444 614136700 817460844 687746490 818920730 570729245 759470984 47920093 71446806 328095284 713980475 350851555 643160252 431178145 983439425 33899980 358795314 248665569 720474590 993768976 995616859 381851843 900005940 147599288 426196960 164967035 294747400 102480209 942954445 666056677 848358331 612464671 875516605 172529690 827148324 200679919 221581267 680802500 932535601 733213013 854478623 909480015 920159403 39011234 776174868 637228841 856199509 342740871 612829181 186326116 814536476 257242607 343135835 489902170 967123848 4152469 831237937 611431016 832350427 191762162 202067611 588757138 855028007 183365730 453530313 26720773 249997907 550329337 838702044 778855561 971774418 76234799 168496211 744905530 796708263 808678218 907405347 157129614 785823099 582925646 639521885 199480830 582524861 474739986 491064837 280606826 836425286 975584117 990977907 237061708 591182463 40283610 942773935 614863860 996077683 977693434 994403211 571855635 882465892 425357086 593564174 18374728 643325019 43280754 881737146 964361796 991679313 447383830 994263664 133028766 337448464 626900699 713548835 617495439 791127178 508634161 793937806 622241740 931854649 923408330 948099107 219675689 361561511 83800776 855145921 531563144 837207929 791425347 958304330 772993169 913211756 737688760 830901661 296955732 307956172 212368157 686370380 571992501 741909436 199224261 289583499 65553790 205267265 158546581 841750687 394919382 578210758 23000054 737930022 614269249 654715750 68980733 84819552 463464426 918442170 69342481 226439235 669448917 907883899 355523520 674059432 457089321 493156704 178862374 623061241 83079214 163355033 493805570 863589139 2874343 743419234 535195518 713193839 363036913 702577759 71556315 169984228 567258574 879739687 334689241 586721092 392814724 894923200 255848047 569112201 525749825 771017200 843940019 859379981 595951654 873569019 242972709 820828971 754869399 849012513 695953107 846259870 302583184 953158788 877449989 926491072 555239853 957501911 954818650 999790921 302142870 806358274 49527674 470445802 792866718 975298827 770267437 956043339 925508922 986843636 839453357 895376084 20766160 540299228 122605939 392799563 490284144 508654194 534447870 947354484 562083076 837572073 479328536 494843830 853813584 902549225 174419728 380187047 232003677 920725528 705468256 863852629 952067770 955173622 908403150 996118726 622706202 754496862 646726376 891231792 256710621 876679377 527534559 581287899 875117058 996075426 608551988 680474458 9531952 897462493 771398924 830714442 231167383 759325704 42227569 812107854 816151771 852434515 814921529 854236755 220673752 982251891 388266211 910079797 732296129 881991033 994046897 999690467 487184890 994659684 24249578 632839822 198908206 425506298 117236054 208759697 672833682 884089098 581095905 922096904 862561452 908807667 733505122 873731232 662779542 904075370 579452499 669795213 144782620 925056757 197447049 414768556 592891996 733847222 496611898 666572017 373093329 589678116 611070630 677799016 143401400 910314639 467258158 708070873 131397138 911645836 229645716 286327430 448884691 680448055 906293924 908582031 903644759 915094153 940792671 984413341 781268258 798160371 543078426 627267984 53515662 192595279 9358828 28045793 641659593 886212197 132756456 790687977 735018106 910549743 409336930 547439555 716891991 921391595 763869145 969867951 859935304 986887560 341404801 741436833 510095212 832135705 297989282 703869342 331534999 706485080 642706138 976555348 255929498 863134282 772787465 830686026 135054517 737879479 475193648 700723465 171045153 617412259 635714704 813123494 185334089 400615785 844759863 883478221 609200080 629481422 39343744 685051975 107939039 336205554 937852689 945252838 512446244 920458216 408518507 580555046 409853528 687506357 940929366 971331676 254717531 893407890 966642788 996402128 493485225 930192041 105424704 717439122 896896518 920610246 648037013 935961276 129390356 903219949 893894839 919348001 731677500 842756381 833609851 996481143 60591933 368998896 125159653 509827878 399726516 434508405 625687269 698632990 218951074 529268864 73531390 647960134 10953351 549572074 113695994 194525887 283334571 774875379 240576721 515819251 511003106 989697042 694371499 991893717 496639780 623595582 987062228 999895122 612641855 820602831 54715434 349780791 313951341 716952193 694535813 989476848 586518433 626503518 261888375 522865502 798860576 882179584 128111718 399867449 194163426 319593501 748110934 912405152 721006102 764205263 183358966 561045188 488930844 771648828 892050667 894381557 909290771 951001177 270488606 828689131 295394371 485784826 183719799 711702625 545667151 769649153 295054162 324027997 121743320 835454418 702310474 884123335 700474479 702063177 608392195 629756290 834666052 929610757 708896284 774727592 310736971 597439268 854507491 972328535 388693531 584681373 313409448 744725843 171923310 655587978 142723711 946098568 449205166 743327963 287779439 841484676 929501684 978097861 399518461 850040437 872973585 954957751 661996637 870994252 755516649 848321097 4817247 815622791 145394095 962772083 226365213 937107446 697604944 847491575 482755527 484548984 751595913 818174620 867818978 982415374 136427048 263566584 98122138 355735748 983972397 999482046 545409286 728809139 171391033 903108991 582790129 749918260 850404795 894829055 112318338 547833930 425116781 882025413 929019067 939817742 669416457 870595787 854353191 894169728 995944148 998537817 81248659 248326688 907088838 950684157 246282579 356757326 728741563 958753854 72752349 85180866 284189513 648315335 936802820 998111467 530916705 964067256 209836852 293503402 706211377 951387912 97830707 613841000 995264 922669076 560834974 589707206 883364357 925765663 942037342 966149511 313183867 629812546 782483923 808402008 796610228 853563302 462499100 755432857 130650902 284939799 784242270 923206548 356687239 379524897 70074499 950374913 112027560 688772044 190590886 688339082 967585077 997980278 262136827 285226267 601442853 757043582 714928625 997712011 750107184 787126711 217300031 392768570 195174350 511057001 292792393 364578180 153841036 722758306 528836616 723558315 869788007 943675636 457993309 985189062 467627055 592032249 710968755 996293304 144826820 979861171 454996117 580002786 897166687 949032411 433369185 816900229 761356060 996792757 717297205 866089699 751409515 908339493 433952864 641682379 751759116 931494316 348164528 923442986 114073871 724647958 498320330 963364299 382910520 946844208 338558378 348730885 343103601 931503663 990151064 997156848 45324287 460859979 380668413 724450409 791147025 818934173 297409717 834874766 144708967 276526920 343815830 908156156 914216483 942107821 220398610 439924638 84615239 432872337 939113921 993468592 990649148 992222566 6983412 406893369 750694033 927302406 790973784 959389789 769436038 863580781 457519248 955130797 418270430 838900288 408640726 932396296 378019434 900549051 21486757 971432116 169926879 271393617 195893377 585632103 440121886 886895903 72871885 510445701 781148705 894448783 643865592 732947959 854330935 923654089 765049246 901431312 470564631 906037277 487526528 549879520 901260542 948789665 38701206 508183223 631034319 678518178 565522657 849031726 341029121 837018584 494155616 768266341 925171402 980133597 167291388 480916491 793160542 910851987 603022459 776492237 259274759 353481904 811144766 914186276 476920011 833134888 508629022 725783440 610705521 779718789 518143066 702559605 567828328 725702017 535868322 930688673 334440792 800888367 196942963 260024914 159485643 920545460 701101148 768887697 288553638 880821308 970639228 985706517 46835960 177183668 930374286 979428535 863490511 971991396 313514116 572293452 929514714 955738536 282169491 864762751 155982016 598077219 458747199 714412254 364952068 713087677 178828912 611209763 443299168 921627147 597025392 911047173 276765486 572594601 26126495 464615777 314307106 779540628 210469766 520009026 648624073 691571438 194810760 522202780 603672656 990234088 40485139 665324627 198801101 914036644 126034385 666382296 687106913 896406822 232600719 766249565 249913288 344523115 629369216 658842707 33459406 761601418 61963143 585300275 446930583 715830026 821339551 858065966 809092668 829813016 674777301 937283430 587168976 643212735 69316934 684729214 63851115 639015728 314703664 932177533 719052988 874948483 881265527 969986099 187822304 343889958 202724977 695840885 441440395 569244877 403500989 519735409 433716834 963413970 256497919 892800322 998027794 999458865 974321042 988234375 283783891 289908275 419757555 844701252 119810189 356167089 503419014 705258119 120893538 173506255 747998340 912460056 275910631 834007274 502526671 948358068 577346586 952457224 391968294 579736499 703468709 799291908 73105627 980265195 735284066 965094530 151450865 596952545 22193983 479595864 693761534 962510728 620967784 666658735 502092698 656838530 178326671 224908163 430077876 612857780 810279920 840559794 60998 588703038 166774104 620350946 849991479 979397962 61250145 274562895 466864608 578861294 214883004 623690158 119839519 456052622 627161743 702827373 153359891 592335567 724432212 950543732 87197088 611760468 606442237 722758616 143955406 264690959 120678187 462195569 126341736 833862657 771461872 966105896 325677726 573867973 500445038 770675579 509349722 520944563 333565631 836531623 154414195 395458211 673960855 873152359 95977704 99095072 703161697 771531022 380610707 621633404 771981167 944022140 624381362 767902832 433388684 868881232 532867132 713634117 122111068 850583820 26053607 310529908 800923381 923463957 815852762 987184821 59567821 217468758 105282043 297673325 220913951 724566637 890916155 904395495 319086422 900498621 906264065 964219445 735678193 904140083 362921600 974285535 334625836 913737693 25045127 231511867 361446504 649012883 192363910 847797313 395780819 792169113 415361208 479253954 741844128 984204983 12345754 680944498 908029929 996873245 648796797 696091106 184677539 477259094 392889416 989699520 507508233 935381628 238522105 806628650 908477269 972501834 96918644 424730970 474086355 993007729 181898271 506240280 51334677 355542985 25385792 315211567 780766714 846680354 669393583 676300887 84548357 858098622 215702591 311855067 340720312 644409384 943613512 967379266 430125311 579588655 64627008 673625773 648789312 921717128 866615436 889027629 66486524 407240239 137800197 195449786 442534039 861529805 767726799 831920673 233887793 774183584 608638224 857892641 898886051 992218168 609889895 992166889 865618450 946476197 788803407 934461549 857491590 970663809 278302719 780737330 788202575 798804956 789117500 892770601 644618807 774731226 835163223 841518009 716852131 901883632 824196377 961977123 592014833 928060009 453105324 943622241 362904540 424225308 765253448 919242857 403167411 561853933 681967134 712549438 572394361 617216984 606539323 654449512 592378168 687224349 887723020 945571554 966229554 993968698 150983847 924660923 708212923 888395224 926528325 952940164 217923869 243513081 427811304 527002599 387379793 648584333 743511804 967324986 779370073 916793782 700153341 885581854 286601522 584374430 912057552 975481181 95362695 513947108 744139733 949799957 42781306 395256562 284992480 463052320 80148688 642996579 904417644 987283079 221627225 542781689 679177469 697358149 61416342 196391079 260669839 549454709 735342291 777267770 424477169 772937257 136527813 765740865 420387525 842128409 979316706 997064955 948808273 959101543 455275591 744630763 299286766 600092539 20021862 127562808 223741325 289737853 801390021 981979538 367478883 682057017 822406751 848097572 317790241 682410536 819084998 914610913 270241303 787003926 67273294 520937173 491096339 988884441 950217199 954891645 555954288 920240029 262848142 388391062 973955446 987242358 383998389 678307923 611412209 828282070 963668035 978261635 785090328 856237056 639600486 900097132 939429812 976800780 227194052 413494470 9912709 760742822 204079766 873800072 476186656 626075612 277337738 419744880 561954706 966438899 219204146 506713785 134232944 248243178 880321694 900446557 834088268 956876843 792619243 842100400 953347743 978423015 926763457 980714185 731914967 763882606 908174605 970365328 750371407 843361622 727840400 818323639 918627180 961783649 620729638 888695121 251738522 274934374 826107379 925205709 970221960 981952909 750421235 886201085 699606946 869337229 535939602 657100071 483401787 880829382 53059064 698081916 711473978 953208562 728525733 744098742 324306442 355707461 741517922 888418747 211701728 903307431 660854283 674935072 63523963 585499314 473504990 888314215 255623792 900083485 398752972 987016555 20839244 454916573 497925984 734342846 333316590 906130400 594397153 870534437 354416935 454313826 795986287 917480587 637374942 846525196 737327498 881108568 417904814 753272601 52749962 754086841 763954641 818411816 848324504 920620654 159494380 870702541 601492475 998373185 66136561 100784603 171399113 775839474 37741809 519651080 973200989 982011763 614560169 950839732 338850265 383708461 25747155 513141499 691417541 768522089 221605598 463689673 874876452 969380765 597215891 742170576 270620241 731846604 13042679 345615917 432220360 432275280 543277963 623868160 826352870 861570188 899067955 988082681 616244694 695326562 537069687 602536416 20426824 804456669 508475604 741622178 423300509 897321831 795174687 904530411 496055 276680001 593469833 696237608 962253777 963311075 972428501 999141971 19794873 96518087 499315404 992480616 465412117 658987647 205421844 807391135 785876110 938644610 628792171 804143509 817864799 865904096 408946247 794835829 707592524 991030171 85540500 658485811 501196199 721127442 500177155 982893424 606811751 740939039 24884071 518492864 958557682 992167141 861032121 973583170 697967818 906709851 602305441 696638392 10462749 101621845 743958631 890454482 311435970 569636375 869905205 936134699 503517244 986024444 470749230 804346070 794238718 908352561 845224471 925348332 12157359 184567623 763416597 903430351 936393149 994184622 778144663 789893823 610209871 952824101 114918422 996901168 221808119 267916741 251647518 315224842 625601481 877748825 980343130 997478403 303800992 785272925 79186024 437705279 334386642 657601763 190090752 413450107 5115465 190107253 358364793 907523019 339799975 932108724 486004394 845119155 640206705 829137104 919986623 990003242 68608876 577196151 625882371 806318625 866123769 956896748 27372184 623000121 877807470 909661934 944903078 992644733 449995863 607404252 293762288 739494309 758566299 808437013 121693634 776678508 118687630 153111795 381550251 733594238 69159942 425919953 812896993 984236956 509806742 996119278 305806953 658611849 205439640 534610965 862444854 999437922 589575062 692791928 98262843 421320970 503628309 925345226 416378891 589804382 428612283 607841093 495938889 636749917 470595718 858501965 267138110 905641741 761333456 833286757 593798447 928699973 761867386 984858319 80983071 631224206 796542970 950321631 776499046 901971284 846588723 948382491 209330436 468631080 729371876 969465699 403891279 475069121 434598053 492708977 212531820 468622984 3668265 350888812 269861386 681491653 681132352 912320267 318900405 518609122 976902248 981099034 347321549 706796719 921970239 995328808 233731052 278222084 930364048 953290326 985582995 997128138 411684140 695992431 858866141 924621717 395439932 918462450 878888976 933390788 640084740 731973050 616013269 740053938 792187082 987092706 34257817 890903041 27133411 954724468 315889026 461481111 274035975 776734589 602861500 840655589 57028321 963193628 151927590 620753363 486826951 681575059 827040401 957760443 766945909 895230034 902363503 972313086 257152720 328965351 740433695 963441187 234777911 391550687 395157953 794689738 338475130 945907746 57032739 934353764 644073749 810938231 38364083 185321809 308453592 466317849 866159136 868155618 491215891 859847077 556150447 617351841 392342566 814869361 828559020 914671295 565376383 889160242 233446815 256966535 174695645 320483265 721049664 820602549 530681346 583658914 672432178 696727911 462209273 706446085 249391102 754665043 892241632 959429998 648358045 755236950 888482022 977073165 345306328 673169536 429837577 567336997 870672272 899997208 171286731 996443534 763170387 846123643 225135322 280362561 273747468 441684161 940621499 989695070 110775509 166335544 986586261 991418393 405086757 660809399 798269824 839415089 449426724 557072370 13175014 304762014 121579365 550945328 869761230 880105492 333747498 973607175 802006066 899279934 794315156 979461403 273545397 650478154 843971572 884208221 78863494 911651923 310920868 927130124 703010774 765486965 814937096 829306291 722604979 768388009 628076465 803399500 687740769 689649615 808419103 919634213 373609305 693672271 296613231 662761709 895598900 933758177 309838570 338204700 736257505 990261130 795657412 888288836 675613575 932257833 467771366 494665580 275424165 646395769 6722253 329370778 968423408 980570677 29094429 314041553 39787784 742028050 410078915 589504219 619676348 858029917 972186642 991334581 532894368 807145519 824028838 869674475 940346070 964216765 757617080 888733126 19270524 510139284 77168939 955056828 88664639 757861544 955241228 998464094 716481819 862047313 647050075 906540176 453576658 720970514 180486954 457708902 818008424 953906967 75774060 202586473 46696889 614165362 355970325 906475613 839187380 851128656 720696647 985762123 96991096 322268891 297633158 784188871 936406419 968834274 179574131 283982186 57659621 268342104 723859828 951704721 919025198 955585953 688768240 846747959 854945189 992139016 293478291 864340443 33282694 72797866 792113019 936321595 495131329 671653142 429786919 601443304 493024021 795001414 732509774 985540400 527737438 548353619 935520100 998601413 993058389 996479554 846929211 926397595 911381314 962832887 215790068 451368184 589127236 715888706 160787578 363739774 888367684 904762385 585928356 873934949 967281339 977038363 523349626 968644978 84778862 876772336 804694327 824808134 861567496 916647968 277630742 316823657 772303940 796120032 48355 941936932 797443553 937384220 636797929 780675537 443032599 994444211 500634377 936145077 849835757 897337917 334846106 401278546 238377191 525253027 964061356 971720695 31318491 442533832 693003638 766504837 171056894 293845625 616804730 861727795 813595285 861791016 347588756 596280627 698660735 955199702 516720892 915162872 286582338 865714407 374667214 559454582 97195900 190091659 413867380 435020719 13860550 858110177 26039535 918652479 70399992 644382569 76986181 729501833 135488036 648847500 325895589 795670768 191875833 315127934 482928089 850224631 776123459 939824210 200595434 972550684 32264050 254125455 739783837 853076635 592770590 799867662 891236059 987989307 754522331 975758543 336216214 827681252 869480951 870567903 214187253 436079523 724760824 889088212 999242019 999292418 833739965 923226835 234858943 304248166 213300622 751139810 721327186 901127768 201883016 635107680 980853670 981078436 766222497 975750710 364044417 999668180 6032417 459747669 618253867 979067684 198687975 765771161 878617170 883806303 99170935 143453828 124269277 714030862 579863974 984348254 639582674 695734015 548146136 584758604 233409417 793416190 78657923 781715332 394959260 636403355 954733832 997044595 588365476 654487877 376725081 967631817 475286316 503694578 563483181 571439588 212031072 347505941 787004537 909826326 782985799 896135845 862986629 963685319 294254489 484009560 719423053 719734900 705037337 818947175 973770229 994528238 879690705 924381565 224393810 641442674 572731188 755315859 243252742 515169390 417339205 596991340 422131388 519736615 554062721 728481136 859183922 980637796 269283280 786415999 514997695 532685553 748016629 931469506 87440082 200201675 16108258 938240353 95714975 655376086 796059351 842928759 625996710 903676143 919987579 940322765 951259855 973119289 833222401 888716759 672027859 974142074 304847988 452089291 310056795 666391625 275729762 363331744 692483859 713508171 932470567 952052649 429455754 820815293 971799728 999390679 39859594 862859073 351560799 540809666 721545492 983475261 669668656 719494939 577074955 833505708 915838902 929425223 204903588 261295309 3623203 362081858 464515630 527814935 900400499 922886650 538254759 728083104 900756891 995090881 787194684 879459023 280887998 607988962 863144391 992124870 200818995 493953799 324014875 509611161 656618977 689024593 846588788 974695955 725526638 824040965 298125670 306248999 916401961 995434207 148956115 163684879 176128791 178687389 386981618 790170549 207026453 351768640 135690248 273266434 841903940 894976572 842193025 876415272 96890688 748475134 35325759 76773499 158576376 621082175 99997038 481322482 121314599 158466925 87518812 642447686 700406771 703209796 661400612 836136242 497149226 606693057 36993323 938178831 475176232 862905072 943880931 986897461 366604127 546916958 776715927 877876006 22454491 622497023 979803177 983678921 376723613 599291077 706705185 977033032 609295395 820328788 941961853 994572285 415316845 418767886 643295389 871470465 318429083 965294377 143304337 259584741 893633656 941460493 235813526 496728206 484786192 763709446 486957802 814466791 440949841 744594417 636364914 862754788 594998886 872823755 39935340 886214407 343326068 758789124 43277446 160253553 503694122 595694301 340462033 433596408 782117074 906109623 776533927 855941230 712790538 915847419 136217923 965663446 643398102 708475844 140354910 463801135 610735895 657604266 971633263 992570347 85762487 335627051 970183681 983224923 873571371 964826165 318547412 711633978 374584888 812660332 794152339 850843501 133411113 984659660 632912369 998915884 825121493 870652321 662800399 738119896 616351166 618428730 685954754 723366934 449727848 980773301 573718531 824326325 448796129 787722191 992108581 992980268 321227882 899659065 184251676 417306529 43021134 407075793 893113859 929005339 12904091 140738741 97130916 237520357 490167495 762566440 300689231 822953235 138414585 378050418 212139561 611343660 194658780 650724901 364526764 554838894 489305302 649381738 787251792 805917522 576634983 915417198 110569152 435238135 823656332 937418674 946842271 956867084 317712751 547811233 526596972 838410447 191620903 457334508 92786786 123539412 27219108 261736632 962759035 981843245 689411756 749181961 288491915 365120354 996631507 999511196 355336413 385554823 453083004 837974498 830398672 929526865 640150303 871186901 868648765 958863175 450439555 508405015 402254145 811082384 618735498 738776807 750578528 951950195 558709605 783222980 189897503 221125868 126444793 829177340 465232168 774018002 715694393 887216904 338110703 982486799 988617216 998444328 997187119 999889380 966090789 984298255 684151177 891131729 997904247 999319539 143794256 757367303 276492169 483871316 814404757 858573894 245340705 626389859 428523307 828452557 161794419 863070186 56022161 584841562 117966189 221553936 137066860 331539199 516933440 545158881 894281653 954614826 147421312 516266026 830102741 931775971 124615027 592373528 361913657 556397325 623392757 934481341 440212496 918286025 7088527 148750049 648387020 722600462 330666894 913914160 609298643 615326368 694317470 844399030 970449265 990224678 342048067 992885529 923915079 973196161 985076854 994781618 661457631 778097864 201976602 561271713 856260671 884099726 803623354 868388163 728970240 800651408 473863483 969805486 892050867 959878822 667625559 681636190 802096676 874839383 197852268 587225068 898431550 925684982 554016214 815427654 201010137 956760829 311983355 859265934 332837291 335809078 151161175 613615879 469360262 813274390 220961060 705287721 301329573 324594299 773880099 903174113 649718183 904617816 608501954 750452566 973040292 995679851 247119486 259038360 427634341 686346410 109420679 857723226 812544915 837520400 625572444 739907017 942373107 962092903 205216513 698422269 517552868 901145364 839092889 859690970 771022964 910102515 346272028 973572741 73473750 943246620 96712010 133135044 724333776 795195954 614976994 935073833 967441290 980429107 698589608 940113486 702930611 730730861 606600036 628160617 297491417 966036925 82500087 258524554 307381659 866395556 182241840 362701944 163969039 328617917 495436183 945492038 997127947 997876307 737931124 820985232 945304438 992043890 595120763 927733233 798234016 836017056 648451441 955907582 783692527 964013736 85874102 614225869 13511296 130794994 610263276 624203767 170908174 696392152 151462324 231370546 827784811 960412271 284829825 874509132 700612046 730102665 577548705 935662356 669123313 956998280 803279234 845786886 817372100 909883737 599596968 923580129 840717175 932551671 106607502 941891152 951651289 961700429 923419774 977415657 266879502 971146354 881060262 958738117 717284683 900867097 583366693 833228974 739082599 870659921 817438977 849788744 511422584 899593836 452086258 644044502 732510574 738791005 917917299 943696109 846468957 931216166 391080187 630787867 772994134 868247157 265927647 661175721 322927097 629636639 674023604 782372803 6371064 661777807 100211561 738512612 40240481 321905557 986973652 997081352 569199458 674179135 383940260 819892729 715373975 796201326 949613415 984719733 890169911 962805084 198334140 500445611 230899989 603041780 48720946 288104042 962937725 985791100 689703833 706667920 250902471 697725939 534243083 561880780 857157695 977177074 420840263 437395473 935027833 940754431 871928632 874071201 393554793 472808827 913529795 951549133 626893051 883515477 587984485 994821662 292249207 451576176 740432053 874477675 141726505 330761400 2560559 643832053 235520472 254234128 600833603 667606078 570967185 762491451 560464634 819115285 977807147 986913192 894117525 951913533 747502409 791028057 213597700 758814787 914542033 955296853 818311181 866843221 126386704 348310054 306407269 690483016 599949852 967645067 350708207 352106052 112332729 248897107 39399094 853280540 222414013 675848099 832860901 878639708 199302624 964284473 519333313 893775993 638233968 814212555 152562114 990223310 605213737 735546386 8893668 89867377 979603885 991582820 522848535 793449966 580536498 856926319 989057284 991336867 211124565 667430243 696399119 853861306 910535735 958307340 48991299 993968918 838793035 867753190 506577561 742704786 952929617 956760775 882162942 973034101 183890424 219836925 456688620 838782866 260703810 883613681 741651682 819214453 580068781 764431922 454603029 696713065 256525839 299069482 34291968 236188953 786450278 838920630 385512727 443102470 392388774 751646623 24638483 233433108 571082431 942979999 55648692 92879145 438677593 616258449 544655404 613017085 616910931 889641217 528658805 852832360 464049499 734322037 336884950 605307052 330740890 931806335 813686889 955890606 829488291 894239420 808552627 822216622 479154836 594302375 311024774 383441549 986184551 995906714 213377278 519681406 681805110 765185164 155911129 168995895 129308402 764650232 234522136 692643477 794070090 982147409 541824346 671423125 596312756 690910598 406437343 663525776 810737373 940497211 354110548 863334212 597709926 726261472 789588862 971226543 634757405 776901582 32459572 777400301 154415896 202658198 327038254 844028972 824966017 893412459 278942028 820093163 162651649 998733769 656802573 858760969 336025918 952761802 378116878 988064094 297347678 943179808 393008286 479440481 581805958 722188376 887845076 899963106 232897354 819951970 851739115 890981708 497147759 530658576 407019580 843548818 284968714 728999773 942995574 974531635 180233998 222767959 214247293 473820040 872241160 931353711 43288985 151055201 709998866 973256530 166928245 562309637 725983205 920569617 136243002 136277117 141423681 647032837 387067965 427278615 496655697 798066897 918294243 999547418 976328842 995391337 613083905 994924820 111373060 584778573 797732919 938720670 354655131 855677918 537958694 856573468 270678022 409192288 793357759 967451253 731624153 967803203 21291145 432226704 148118861 197342872 816848710 852238557 230881731 960147518 876761899 932586889 519010264 723382433 313729255 368079081 324103830 885455914 646032806 841883620 838579291 959504514 359391900 768510423 839533179 885281532 128104711 237075203 718526074 996992053 504326060 816880313 247147224 484655809 17899480 562098524 380700053 962083532 848150665 985258273 589299475 814736723 805989732 944318120 304247069 819420371 236761436 743850447 944741839 948303406 80441407 87920255 294633121 542245353 273897830 553179226 620032365 763031462 887052565 902799667 302020865 458733095 659432000 829048935 23874097 981010320 139048434 530909398 247607976 577301168 370390056 914460384 403237295 714917525 102911864 163681509 709248640 730989581 597701920 668356965 218213190 783832917 338712582 433346438 766051248 903183262 52943633 715823774 57382513 821588541 286260189 648332341 32583001 576483766 946340389 961334039 100433376 679122094 602608120 811357105 624159310 767341644 771263323 821264534 575234190 736286914 972859318 999973436 445470126 944737090 900155792 999868346 287302962 739527719 605924676 673926744 767284501 831609278 912869271 958029220 473367942 555397005 706015016 871818690 17153793 304726110 271100654 905759036 678937876 950088435 971960507 986434369 43166550 554963800 864021818 974973105 92096538 954283780 840205094 983819549 144806226 339421301 290665063 643775149 58566186 147213720 234742357 416298513 639354188 961340966 566841823 805861617 609427798 672611833 351016730 703526422 484503970 840706561 451906924 594909138 554887943 944138283 950359692 988264215 634628804 805090935 502522480 551112540 171147669 175298463 485120990 634796572 257327165 553578380 272584060 766181277 281095510 772400857 523057249 902042676 116809132 450165844 812586075 871681059 526569406 953252966 589867745 678795591 137005391 696024123 594551696 657959893 912690409 934138642 209558455 970700901 61999927 910919228 951024586 963268780 358093385 604666502 299481191 333994429 278679495 381240889 630871251 642082375 168936629 575750272 12019452 933098039 391706534 412199533 689716253 814535099 715553691 962001197 944197868 970881906 372312463 611219524 845291370 918403426 691278802 939911644 120746660 498734558 358744136 383062842 718857414 765670159 366390541 639870273 158477492 929862412 671107862 823055545 538172923 714677558 784751889 875386567 998300904 999418137 779847876 955561437 890217282 968521186 63233049 120659787 439834174 669098779 59347799 389315610 208638427 694728502 645434500 986518945 536873632 884136074 449764021 465309074 663260931 815413400 345618000 604925289 972315120 986472206 528529396 993517247 35573993 894692150 274611737 790565221 778156368 972222501 325486947 335812856 636500308 936999738 395721235 606831144 182120946 901485795 233063323 939899156 140691084 542799474 343262448 398277574 112522183 919446283 549479301 569235524 796145449 884485195 695147743 971126448 25260644 60140875 830583351 888232264 37684855 200177598 59384595 628621621 149237943 656550517 294440731 449877378 898753173 916248065 701259510 748315486 723265310 763842910 306213276 739559848 157417556 323597738 523786356 618635150 611616414 623820678 199831559 930941850 360447196 367247502 722170852 724244379 507522793 941957118 983810431 984833243 388153823 475470747 647450820 706612226 858103003 903609859 30255229 163982779 225350954 229729328 464648765 730950531 267399836 567458983 857789619 980958665 895932139 927109639 299575814 797263074 106514745 124013736 943232540 961382419 321404774 977564687 266913267 601467847 753378015 758369446 852209632 860184150 432730452 490263732 913954426 965260929 895858987 979137209 585153456 645619628 450057339 703558358 94586525 95938765 426014011 724422391 559690856 990834320 636290555 875254417 599141463 895218081 833349103 876152689 984745185 992549231 182526914 655089318 132052403 364307470 280400710 913641955 330004743 447246598 786524319 792073918 670571556 795433415 276839072 930588984 996395218 996609898 562466722 980182189 788023252 877392244 540705776 961366023 66215447 858395077 25462415 832176256 481661603 617632544 221802746 691582558 668851853 739810665 666008931 972663085 262563617 506592952 850354362 921368338 613049134 833834849 200049335 959894969 725736693 893558653 19641873 257513161 419970829 537564077 709375172 781743521 130553471 540765295 714554152 784927456 83029011 140222963 266407122 479580018 130395728 650823497 839235204 970685514 98765154 963623740 765214081 968505399 580570741 960058476 883532266 951315089 867709112 947037528 678449890 882463075 441982273 483487924 435710330 444117502 142101276 446364842 473568585 678637642 923147390 953307227 552792911 677867541 93463772 726608338 674678313 756919208 587285395 772856299 353242073 981995123 572204522 594788545 550394179 903267476 258955981 838115944 480218871 637655639 489679004 770136686 299457124 535714957 418987056 869050550 551977619 584513808 965752967 975075575 300564625 421378004 948262223 985953898 251539034 970734518 320034400 709256606 549412752 793964038 612402106 688087678 772467979 953493086 649915807 861083371 20988481 517925165 820900628 857931124 686081003 938080704 763207626 797906372 984985760 989890237 763559587 898963660 348459099 907979867 40396691 214884624 435741598 502541857 610338146 773455577 41958680 658643070 852064062 925209901 936390707 960209600 238311114 789872213 694301400 868981961 991441238 994313166 90132670 208275782 31829955 424618496 76749620 134722678 94592621 291578662 854580636 941758517 976783315 978520293 546425538 967816800 785928288 797602500 922814351 993858016 813728513 929441253 732426251 868672685 300914312 649748486 453651388 674244062 889599948 992132023 78184137 928289209 241582211 811546616 305328462 883683515 462617679 620085183 218029362 810355285 523562086 808665433 698672846 935567190 582121497 902690540 119092455 680621033 19183304 519568230 902108681 906334488 624896209 645723028 71657594 575778779 39219397 357186743 796372403 971355088 162383721 487627844 980049461 987166661 857626119 932830038 550896911 878865560 960861543 972460787 657000707 863708623 214011653 803288350 169103277 938416763 359663355 914159121 423017198 807028971 250829210 540884117 198191938 974353424 906212578 961997638 999789570 999989429 824857412 981748900 761985767 764735237 947888717 971492695 511309542 521225023 368131195 792665980 842223002 843717279 989759727 999279616 32620682 426003881 476503291 596325161 912094924 998932758 667783874 967632637 759754466 873289371 693707991 937931838 89442017 571970547 877701185 976782512 70330931 969763875 509179041 761369638 396483328 416423459 93195171 210495020 809102043 972974506 191579839 361854365 19014762 876084381 483485598 612627603 665741698 815592431 675248791 794960056 271892182 666041738 468107771 557737251 266490956 365123286 411057279 599545442 929891158 932776450 343210647 698575478 637380542 895707697 338831766 445060049 692571525 885277928 131171598 395618592 476827210 891024084 989204590 990677457 645075402 909798835 733050014 897655001 807199060 811715660 792793176 954762489 365523396 763132654 671676248 784384411 396803981 927539287 581877794 929384177 299976555 763434431 85674462 968210127 746884190 931439748 306644460 368708293 73421579 853981609 903674347 974167761 435912015 974035908 541533006 673312704 719611769 747308468 302388070 797963133 158626323 196976750 497450818 779455356 298590553 984091685 564637987 948590604 667410880 892514231 861444729 955808036 36931250 228635762 436710558 471761663 538824370 814927648 58833876 904856169 847780505 893441847 74183197 146061196 421465072 689158208 294273305 658611035 135367661 582153712 4463947 56295241 530661639 884096444 489575677 989464152 636312426 831078622 646304259 829746243 204228453 798912857 944663403 975986166 372803257 690466448 833144819 981508712 764345180 840947970 733952383 919280470 645875416 724655481 392292359 806925882 766943892 803422582 289583449 350997712 408361225 604728099 623076893 656972354 133067536 687029470 618793905 846806788 356920926 530687426 699314864 996161325 898240493 926667689 658230755 875898754 579972315 629319126 297559234 796019896 2880298 458014742 180991684 900088740 174934749 583616388 153788881 386314935 601227724 651304157 858455778 939144151 165399628 981124193 930040476 999104617 649082799 677966974 947347194 958886537 496006767 722491447 594508712 704767460 330053293 746722964 730254158 838654289 33635258 443624194 721791135 984173085 622139303 998912629 313835375 978299518 739260758 878190079 36137188 499197688 743866932 858438919 766226162 888816557 309287966 693343071 184815341 696776217 599633558 794527898 227688318 512377579 210130915 267449515 798015993 828409365 380228781 681747543 699530081 791624747 89218743 138018924 370841174 573046984 706535829 911928265 883628459 904864562 983331254 988984759 196856313 844543344 496265904 597789364 642798060 934377026 451408149 937434988 623189766 851570568 197443085 729908602 288542260 712727879 763586140 906893223 996917910 999927087 883272856 937629711 117744438 340646324 907965425 933284690 479210023 740161727 318307733 734897779 702100776 993136032 98511052 829139329 725468494 737079220 413293206 531803200 593361106 617833943 954774938 955253307 528787375 632833989 139568366 190968069 549122928 739874058 283887150 623385740 508352279 619084360 392732078 480574099 948268529 970619987 437776349 847422521 712342507 975285872 326917779 877834966 836823567 880428228 376964551 659037310 601359769 695499939 152497227 900448092 213035338 276826535 207345252 958247912 176973681 817280973 813419898 923914332 535909094 804995970 272424992 387557567 223601340 684904046 22943535 715532653 63839774 212047179 934377815 951007595 954027731 999011302 228918263 782245695 714614674 718922417 665818381 842134252 589639698 591132385 868103351 951785825 909467911 936289932 903515276 956873876 170327884 411032714 413477108 452316594 944714963 981120813 696236158 706255170 633099543 988604591 7746327 57493978 43644646 433694217 141747365 820527873 860543097 970400779 85592201 754095431 827766135 859149086 128941723 298738419 757391426 932752814 692990813 932858774 822576828 949415387 851997842 947679354 452156026 806932155 534726294 538139828 742356404 816024527 930652178 934137479 81452423 290239378 455648768 465203239 192700810 232182725 947741321 977009093 402944368 957011950 864972518 910687832 863835985 876313316 79946049 765530842 240134168 943855069 894946017 931571362 828753606 951502964 757759807 822818550 222281424 893913431 937216479 983229711 572402588 962853070 79672004 329271835 554866018 877045009 640987205 939477193 129256168 723028355 410905889 889940260 949633860 959406716 340978319 632137406 549626322 744892130 300200840 864849128 455447216 714994206 450267211 606595718 240669279 930435823 560433892 807585735 722808815 938843467 810959331 946318841 442632075 798530967 853703227 994036086 469747845 668894040 388534773 734371751 975413699 979480147 760898378 847024907 188824815 459095360 265788053 934708119 975955675 982068964 894362612 903818886 63498610 454620571 610316752 901997046 898838630 962038393 832408985 874300647 618739663 658070707 543396808 867547593 895950472 986252048 821322857 823115022 110511634 391999014 550325716 587384743 328129746 939128696 397186963 764914088 36525379 314030376 647903112 769008199 433942395 948124474 840641153 959131189 742998771 904586181 808145888 877632135 487953646 814332386 954419690 973063776 551029543 642568149 720159951 771672758 422277485 475115607 262848977 374635855 166068596 970929750 315372492 477105554 693430908 930760438 993523655 996486067 788218328 917901603 368598486 737576759 90359998 268075097 250155964 349013230 393991762 429488782 205881709 573318439 924063860 993364154 230988498 784734564 512518761 560922671 519572087 571329269 717812671 882182537 287438972 452516328 354010414 849935256 440598166 751232726 401751274 966161971 651778924 780984141 343728949 417164764 739371303 817049429 112063106 208803065 518230271 778055345 418037038 481955850 864067622 930945639 721982001 983936420 824947367 986396861 661032264 839876025 369682561 753073845 300970015 414043320 465692783 670099299 591163082 618071957 167875652 169961681 443389967 693295480 485053661 657627604 121989182 902382290 443325721 950260526 941642660 942675924 130187060 481280948 279359294 385354203 327800003 381953967 300326832 805352838 734396650 746446599 510821348 574100345 378414681 773246161 815891396 882611013 717120844 759395921 161871941 795767895 592724608 740372563 82199049 220476698 266694559 593041604 761472164 876877164 852478501 981815172 77058341 426228434 347428429 693178197 395401678 804663218 104650171 995375706 127916272 317532792 178862154 641076495 332441437 433451545 765586719 961031049 436716690 873641976 268835381 814697969 494560535 774286920 967487797 996225699 330681821 979882413 604918847 659578693 936408460 941467646 587965412 613135036 456491681 570229941 106460950 666049135 615160796 734597642 396130571 981261678 176779610 702539452 179129396 476865700 827473069 852025260 331994697 530459481 232106703 989557653 471689923 784330385 474735501 877067387 36311435 763056109 685328115 884989162 495350593 661495698 983013013 984904957 745788277 759671079 758375488 797977991 847862333 968164985 790130357 981920139 816861657 901982015 249017066 462399636 583514656 659979954 159912546 691713085 710737077 973431019 457875028 642372228 521768925 608855912 948331749 962604075 115575485 848375200 675171413 795153793 289769238 822126189 514204564 603688184 792696044 949021757 875646211 937436116 214556939 716693265 743025020 796142900 981586320 994837019 678662887 770290069 728002425 818574296 664589183 713746767 566360768 736053986 248302956 328179209 896245592 939409102 602850340 719326423 166672990 686540588 24687641 115326244 933520721 971048267 766740740 970247943 992700984 998181817 556510141 814190657 988933614 989687801 526544944 663988844 961976389 976548132 929934002 996279017 629205570 882632693 530120952 811137563 248469150 360386417 518920384 581619269 477547448 861492593 958821188 979811967 239173286 239500460 707881759 947915631 932934159 933482312 7634592 33043128 127155036 822665569 948311644 997299278 349603296 777720744 148919220 961049107 303333424 402478966 98379264 494845593 967687902 983565227 19112768 595873162 559548741 925480431 34269236 908544372 614397223 617481107 845701666 980382656 843265082 877981822 470201547 586083548 870879902 872563853 578310879 630430138 847817725 938052281 687605908 820047928 767618150 810182519 222088363 956099716 925678587 990582436 98384922 784250089 366164505 874295467 395340578 650054305 760964974 793238006 498455476 976446534 863216479 887813599 667338151 868144574 451445812 534584920 197614122 841512233 393823219 911795878 971758216 980553524 764608630 978298155 692901131 731274448 182210767 266896041 176480084 772429929 234262171 470724724 810420356 954679920 828686556 838237123 392112184 433576778 923238401 943584417 35671017 275068162 808810583 916104882 968131505 978577861 104469859 694938118 635538938 738741000 131857987 778404734 66521571 436784880 371970131 955328266 997121539 997182986 143434468 454471509 548173953 836757886 806074027 917346410 475894439 667758591 562474215 784107997 439521667 853115204 833559512 976288475 617132732 856062748 186067395 570582935 898414664 996044124 185279947 236222825 192609180 488202504 425717775 970444931 446475777 594724717 977832671 999824493 31232958 204450542 660672963 745008463 756007567 824410595 278629984 627685862 553763574 969671105 531437227 921009411 403321870 959028452 407172398 462796157 555146381 645247919 223061446 806968016 991088062 992414347 202047037 330085967 591256341 604831379 817436735 954875170 983934791 986655349 965955839 991499422 891023141 938963944 532985995 750036221 599717813 929360887 170500083 221577383 852088528 984669722 638864376 671847292 575961708 972988885 264935079 672500802 836548781 861536593 116410109 743119679 789098625 931802329 560053683 695029250 73672015 215753759 787275296 790072138 587024354 683759557 879525672 991845885 623723952 858159493 634035888 852735498 130579614 202182939 536691774 552677698 744747873 999716498 584084370 643195970 376856701 762592734 654154941 731792909 385055107 827554948 492433961 744443043 4142741 194056525 756685163 960382792 979423695 985987053 880706323 896354403 521020461 736480683 783367089 991017326 661148199 975444510 371450553 891270397 381059041 635025562 984083780 991182374 399233011 517743326 589791656 982037566 840841231 844252259 7490133 823565657 928410186 951438086 832798911 867811926 80486812 563139529 26420345 898318787 866561377 937384357 96476695 193430236 385032489 404907119 432465024 630449788 342607703 948814673 677401558 883466446 22332814 618716752 155332519 877517565 337214592 726211557 552036142 770873030 87398262 747457389 929757062 987610524 946339712 972054899 171947170 726785486 225038570 892668505 704226617 937525019 627956289 999665594 748631571 785475738 352124014 461271629 706062208 775072123 509671738 620652195 166773885 276426486 166315178 977059278 627722108 777962811 511865314 773012054 291533460 822608333 511471061 907780174 929931582 955041069 246265215 437179023 775427985 841234986 396277867 498041063 856702625 960750705 368203621 480884621 579875093 748597568 886381319 938245911 441054572 956652401 541301039 561834008 551027659 707736681 498311440 689270407 235187845 465758854 311153164 678480789 915383247 990852987 857538971 975287644 967676245 985683721 813763660 873692604 123699758 726704460 989934170 990066452 380761986 439711606 73318697 649468161 363286387 984948776 254182089 782946864 983208907 991132510 512721038 847770769 424732298 975300794 118528599 890012938 322251438 870572803 294582311 684802689 796973958 988968382 661753671 963625937 306396802 510649624 840405253 928934687 124543737 163313049 774258758 965653048 700047835 801517279 217905063 270527861 223482489 685465754 455464678 940358543 986749637 998486730 655343299 994756402 342096842 391690669 83429430 709172968 740882949 850018117 704636156 712757507 751295756 959471190 426224952 744116855 563584228 940660106 386196482 555172470 820117711 874130227 668081741 744909562 148114495 991570024 462964021 578004968 540339047 853620302 149860999 468520108 782860814 939882448 989692049 990613563 278796193 434441325 61778333 306656741 768191376 815123390 424512334 966416536 108975366 175695860 933322713 966677591 670568743 794019430 844131101 986615092 281075281 789801395 728250825 796004263 494797354 771501054 995037578 995472270 514815818 628301989 705483576 736195655 29070210 211179652 410470820 515000092 377589449 598593237 111311819 190479916 458009123 965682679 367594328 519666832 348407230 920306815 957372027 998187687 458639977 639003498 926046648 936746210 146483084 225956808 622383757 648228276 506535325 799129075 674821377 677598676 65738777 885720477 867151070 884521960 508882922 524276154 809777260 823783952 882458101 884320698 392077965 709513485 552950051 668005464 776995486 851556530 280100160 729597384 581414236 685381394 285408133 465681999 786475429 799374263 630459650 917511450 478409179 745093441 513117422 649056677 727173090 979125371 496921022 911535404 942444768 979258730 925793363 960704524 962415583 967807286 334134157 746719298 106313314 193679301 980049539 992985063 5998674 917900388 958040888 998355275 565141296 950233907 187586094 945089914 791349285 971940789 77054935 150396104 377266482 654046593 669009677 673473400 223210486 523664886 145441584 901015117 995831033 997625635 757129364 973091603 594146036 852690996 554907880 743818543 512205031 717240928 65766590 298888594 243978011 713068446 49675131 416961427 459407044 616185612 863020912 908644296 464098407 919506531 636448256 845235374 864352888 931428721 405291155 524173900 869776426 940623486 955184887 989741323 379155344 579576353 298152106 544322220 486306337 613798993 450341796 561372758 434095611 434351639 79543219 177592342 322897932 976786719 987259546 991805629 183228440 526870931 332648332 503253398 658481716 717080694 384190477 984996806 243703788 886167234 709785798 802546172 721670563 810344781 616615612 705884702 688853114 881573640 499431351 760549440 480105637 649774689 170891854 779159075 969561746 973798400 709820871 810727564 100714028 769513100 154117988 488975009 339042733 409582975 634070153 918471966 482837589 513832421 723098307 770617016 953337911 964613688 234975179 900334222 718131069 822095323 456817488 522596528 113092466 597475520 996514421 997534575 910432542 969948838 2249957 784444988 117057545 509881256 616932090 921622028 991120891 997144884 98829262 662229559 184921489 591896775 979001716 987852774 751343488 806842151 497257174 710554481 878249488 912028943 258838892 998686579 790921132 826285984 894924757 963384230 749665434 944995749 647616161 990407478 552656634 633497734 198412306 487315339 385284252 637509300 507264729 771648542 880899870 919024235 607517081 660672072 9535344 73854778 84691183 128996668 728302066 933429550 819931300 929277221 356063552 700541494 438502491 852084773 843636010 996443736 17944484 265347604 514437024 878832107 723865309 740312542 872745166 902186376 678158730 731011055 949125893 949931516 128965748 395882420 80770419 147167509 51945261 198584983 861995744 980317990 848375214 878949916 660128206 758608481 725948776 970044324 185038534 457243732 866674608 980424349 6854969 742656162 575576027 928428758 54553418 105553513 178316008 700810643 264536949 295634746 599925260 702618572 551471261 945589697 187164283 306304767 142901871 801928530 212143206 613354406 211516334 875093442 405462336 929402320 821066804 955619328 75743674 88018786 946724189 952614328 730928491 758518418 347676297 458685196 967804720 989224884 420657784 528262196 248151548 515796140 987126993 989594993 994945687 997934318 134074134 418222872 904718743 917389747 809787860 921764521 700076398 857327690 26067232 244538685 26622047 725708858 962954678 999382210 183436295 357089726 494273747 812205847 910170918 968711512 247922321 742545318 132822280 705934166 691550102 752037521 334365667 446862579 626142598 714789169 745766651 805910753 753952751 852007194 485384787 561288940 193754720 758305025 875795819 947509197 509816066 517346555 436960469 746332610 455595681 972597143 629525706 736250993 987560126 997276570 773109296 844472470 576362511 845511888 830409521 841881231 438872456 974040554 162965825 947725114 549507461 942541541 920489099 990068388 258662962 684827558 157999029 750341226 164302921 569928562 762720314 894992164 992918403 993884011 443170512 591622329 769568239 858508258 38330507 669479142 307844971 930139008 156509119 764075729 368913443 473968979 316944736 765488596 743038964 947647377 793944259 825614097 183381751 654891211 183887990 758911246 27906716 28512637 378465521 524788822 194623657 558648290 133692642 441368355 824609752 867143976 980577077 988888614 791719373 937567358 954500053 999655901 292284823 580620466 199020309 764200945 252030576 828500035 910518346 938738284 984026192 991665367 363067056 496106596 92966302 690870690 680127660 876325823 58858304 300769693 482539463 533783209 75684177 694978588 929299070 985599773 367149750 458346832 809292260 903115182 256072276 350190845 559867744 780222985 382651830 643938088 453475180 495272711 568608972 672893672 655145582 662257202 763898673 848529095 104398900 201460195 696948858 763374570 939505642 995205911 649540080 711081753 113123096 690281404 750601665 898854203 299366007 477317832 487354726 892671414 476632857 801753272 546922263 903541462 297515124 343961173 995897945 996543162 603311807 658446431 52309377 182715630 972157483 973432242 615051303 978331517 734336128 979106807 929189117 951231112 740472337 755292510 646315249 730240016 446597175 848845527 288283952 423998002 950827901 958606134 363273495 903221574 327068117 529353646 708526405 852929335 451514905 961057705 665288233 874381927 295583959 621463485 635445926 721360410 753785336 946855012 299812978 722050817 299539725 761383363 552311814 625656514 652074878 956141354 679177682 782397176 68699535 293125009 501528590 812049663 546130775 613598667 378718345 441048871 196715716 714867499 915379638 989731416 422523105 586014051 472547337 829733214 224833849 524760070 779215663 843335044 269876555 558073069 221708860 307141776 444680751 732603729 681505325 927700237 901907658 957072097 932395461 971061429 709350657 857840273 42730513 421971413 122015557 743553460 720446603 972371880 542946979 861022258 692687740 861716012 676801635 752546897 667228144 693661149 298917936 378607044 955210435 982442314 972834806 984378811 405849873 781073000 908352365 947178273 488896539 926951022 33395664 370618162 26417795 870072438 582803378 955115321 40230178 95575192 88422629 795063078 365212303 819683448 28086083 378541512 629003445 878363646 864805615 969965493 784802043 826064586 7989984 16479551 253618180 939417528 885392726 949380017 82947335 120409764 355088736 365567783 463866305 792172380 252403017 533108322 498015755 782600109 885131811 917436656 817423482 925041013 232308041 926111461 610843478 828743238 64760134 95549730 988777595 994715736 475221639 857772519 913315743 917538118 734919088 747971099 326086250 400583899 154434883 245941291 78249745 682243957 972299930 984582335 294082454 966121461 107931411 412006384 532452859 927596663 148339110 939672029 360388887 605740980 651857010 958237806 562110304 802846380 999236451 999752131 819435038 972195610 55655059 78247203 114249297 849857832 446709217 730282024 826656706 938581981 56081322 940970920 699030437 828393849 354207715 835250813 83816343 478417616 697685973 945848820 8750056 895821688 335055215 362492321 163405375 378341955 519075707 651703230 51762132 803362067 396328057 520383529 733956882 848092348 898013793 954710134 962675882 981733576 346681165 534383308 274423992 756031918 925256775 997185007 595485317 893951369 679371503 699887232 211568044 820367159 178265890 211880253 585153660 778798376 427158880 742578695 140469012 569052344 289008361 609482838 755743557 824383743 773169394 911762263 506658982 975924137 755108706 832214617 5817209 323559838 967175522 974492837 66276377 108643342 352762798 781389651 501889550 549501818 94963796 848516292 265996532 938227737 268585196 936192219 405797445 500079876 570599337 619978222 18421400 864408113 570149012 660221752 933572272 959929436 141552895 645534206 559414366 995396250 488884490 619157604 320846224 594022834 980003588 981983366 246769731 797851211 46500938 377687970 566645172 876620795 574650622 673365453 124504754 433655227 757648616 965194043 746125281 930322651 708094897 830147767 105901856 739014931 949262917 967197253 167089161 701570498 554381960 971365332 433186601 617840823 509378696 692329782 758328085 858591767 838794925 985589367 990024166 999679723 477972580 987817236 741968058 919176336 171922052 774141472 762978337 776845980 391811712 799934901 951484747 995368293 789069895 835507493 58199934 532974244 187426407 964146508 560446383 938968668 118600847 824701229 975896293 980544373 104353626 508899400 397533932 567900211 856064014 937683278 362316012 920482852 986623438 999538016 196974329 415905389 258750292 453615987 536243289 568723002 233116836 660925771 983079216 986450039 161502160 304543676 964048083 985107126 265063621 578701835 777337899 985681354 418470517 801422572 13434494 968983913 654372655 713082120 817811857 925563772 732346832 945703967 126125950 961164378 55948010 288621848 548566649 871215321 257794877 503947955 267543974 947509278 579981252 587640695 13198901 308611981 920494531 923953032 820316253 913112912 377709963 990966713 734387554 792865196 220184722 877604385 714523463 922426496 244348842 555567534 372441868 859426328 361062906 598044605 30678280 599849852 348974545 437409860 807541189 868912760 484455597 569169318 3661572 690077714 10489474 411316710 433078565 889621736 91025401 290840782 134979264 697312065 908852859 913621738 213283470 870032088 942591549 993256441 275412398 559171097 817112818 996835911 580294115 690016141 911676372 997569897 900213372 984220459 960798647 964360466 993717614 998270185 672214869 964819207 82104835 820826473 782086597 913308708 281908590 489350426 269629832 904884856 849389850 956696341 30564925 152606892 482628256 531814518 712743190 949150574 404308754 890854006 588052136 896091838 81472030 246404551 245480342 990163723 160734107 910697173 550671840 587632652 479455493 627955516 690129583 878008660 926212723 976354322 188600678 372621294 420154980 841854613 535621446 724785919 418326965 848076969 843672790 957442918 954751314 969367164 573128240 703907909 470977773 712915166 10123850 600602442 859096711 962565863 336712548 680440873 912849085 925656058 970158035 990635906 949519508 950691076 466056913 998180186 294982090 925440472 129439131 649928199 585065434 774173361 202512275 556843782 454273063 834243373 206581994 672336996 622206296 793396256 799954062 879999934 862180043 876487490 988374284 990346721 303572514 335648787 542523235 627001502 356601448 697892196 390771023 889193302 796806774 947783171 652850425 806769775 610693187 790370461 221034576 267292656 177086772 434206508 873692194 984754637 837375062 902196966 725506636 726687634 957053519 975342509 635920791 688271766 231112414 569015673 350698212 516288261 992578184 997195482 450006513 521699644 446809531 988678541 151229871 191394676 871135369 970560394 246927523 727856751 741381177 888681261 921162493 921952578 617038220 949034000 528604523 937919625 282761259 327579947 233190443 693312406 687391076 711000204 352077566 714527508 252449542 335700175 201829149 237744100 668549129 901352691 642840431 730849619 332481422 684408223 558375454 857487469 958621827 972294417 89112431 785405001 323334285 873065672 949482317 999281298 980738866 994766668 430375023 592652134 907072193 921395537 691389563 989805637 712586189 941180214 829572832 942835603 223591329 684465922 757995301 981271341 268091935 689240126 9390024 324886518 171218641 466948969 513710853 597753189 635758696 886099715 394952013 644705155 386673800 788174226 326952545 787968343 735914350 937615766 281971886 894279960 506828739 687785092 525991551 764896502 8952258 115198869 924651454 939599123 867480337 915709732 726192950 851439430 153520056 463985897 535574662 615386019 629230187 679072972 94575607 616459211 577268200 722471577 573551006 725764189 143671839 573853895 332628882 992765875 340938697 705010500 104657272 634233442 528160578 625259318 630145395 640537198 176236024 794507500 534919634 834128446 715832105 809785440 986209286 989848266 257777941 567985082 205584450 533868419 506522740 667550281 38400746 59296403 15084104 633426119 230257944 987413544 297586707 673710083 343854254 995688968 418697532 907680839 886392025 968180694 397631818 655681503 612352237 789169857 63640367 149815482 545116565 851774002 704581183 740989398 543605072 619092367 908201563 964318428 207371962 439472500 609941254 810735694 224137645 514103904 901188106 949827278 388231277 601166703 651584373 923982145 959206542 986418815 83037983 717207810 56592970 644653994 613876273 873541892 124922502 668932168 588167951 855739569 410738221 463930414 97212912 176222637 120361240 922501593 688307726 827337755 521155987 664839570 122974728 333021515 46231944 227840298 504358085 520466501 375625449 651265333 660750010 701901371 130268068 212489301 526691224 938321073 75183382 328635571 47716552 340789983 126224786 281575191 243872014 324636932 345758458 497068402 855071258 934564186 577960325 633635599 831286242 950513937 828033418 962792922 690708366 916560773 107423038 511457348 547633490 586908176 96105218 414662482 775901104 930441181 470949148 711980711 555509689 793447245 464818811 940355821 465062552 934972050 843167872 960792785 854113222 892106937 973037470 983721647 939375583 955814359 67443030 301229713 270144239 601683523 613651222 815132379 15444671 264404078 854753258 988374992 465071794 847199890 390357485 590479793 801059163 805987266 343156477 678047782 211368722 380723653 666976540 996763889 407359282 474226526 27210157 64866801 650232516 945421016 896240878 896635677 888315730 970071096 908382942 976658164 410692011 906047583 650988049 733325728 694974627 854001721 909280979 952550865 669976988 810590180 407220991 921428375 519331571 700896405 397424385 487757069 52402479 278006513 795387788 911094097 537334971 679710098 281217534 565185985 824876349 878444200 717700563 886426064 590360006 652970532 547222536 677076210 80858987 847498542 24187956 585001283 455166780 908920821 512608519 840465959 609780532 806067716 546290957 904697891 807480958 887960771 41503235 328797247 880808150 961231009 876012664 895220452 774219681 888692052 618170435 741041781 562084796 599031836 595927834 997016577 683483409 686277227 502644442 938459595 157626294 661411805 992201859 998855437 641448280 936734477 861415878 924349217 281805743 375997595 138745771 692098754 368926810 390060589 697344891 764376469 920682314 921848016 770813989 950099051 541964214 833414110 54574753 462038054 587804065 657580330 487173669 939209798 546661110 563172389 315350296 476293910 282301170 786286948 642281837 765918783 341970354 349949752 412929360 639126268 499383759 660403082 864051703 973711494 531898670 804048539 204696564 409103683 46640277 244929338 249505176 318504791 888390998 974231786 540981008 623826524 982467255 997992633 126422467 803213824 17788845 622051450 264010491 661087668 626582780 742787113 575693238 631582067 297006804 959010232 610119506 712116398 278453176 798838375 979587464 984194023 405269092 609865767 928725417 950531305 929226817 982694915 162048766 214277276 702206087 841602320 61990790 797551059 919568070 948113014 525984463 757798835 736864517 930231673 14086103 564995729 781634116 851697800 173456768 330731907 662666175 920682652 859246736 983402307 186912420 705432912 19270965 691318670 776765451 877509504 644960691 808927768 686569777 805208456 840929262 869569938 638108721 979123997 635732267 881366990 217927091 728213031 323051686 525873910 443957967 879432411 139554854 880397707 644755284 716955168 289474586 894490149 740435567 958598993 294303544 533073713 844605173 967516472 21027945 717628293 361826721 719346074 355164979 745386830 140628328 257750277 506568537 990329591 965843140 991516396 584658472 778100847 7257885 533903547 149793249 970530085 651489617 836632660 228699830 995115331 513730539 932050679 771812484 958913361 122270713 977419439 70769920 162964735 766298830 960382671 254280042 688179106 73029618 394074821 276961756 763558773 909590437 999734174 182124179 451331708 527519960 975859486 352231190 465713463 15283618 252954162 998370693 999968634 443620856 542234641 47574524 623723116 535523591 792168893 398176445 970054767 164765111 730529822 111060681 852898986 371801230 848665472 918004623 965050210 746210547 746415928 677154342 679080702 507916388 896274760 786673422 902604377 703684450 785921499 492430200 712137853 217832529 906581968 895485867 922731162 91080600 324620437 153326967 930257573 156392373 476559757 434824304 462822143 667853023 950911598 126987563 642426652 179677567 628652565 555712147 822279242 463733316 503832399 750264050 915750320 434622171 631750658 786871211 871884220 489030836 874098419 565727367 631520634 250976117 806502926 667466573 826525563 186444367 909417682 719573905 765332480 208222802 702415870 936147953 970855636 671350200 793129541 852743105 892325597 481089553 678621493 286758514 667887567 72302678 174778603 406740555 988176231 113438396 241235023 632865577 829814755 506830868 519099735 736132871 874600972 442430021 698813966 727676127 794404274 500063711 780064925 412987299 877484226 392090814 910067095 73119062 146362088 564138599 820877485 713219708 983700372 263270841 568514276 909190361 949152909 442703282 868082765 916382738 987799375 304601455 801218042 551840455 971831811 139924447 835247960 507372961 775612215 329308622 516305168 305087717 348243415 622258223 695631484 808471846 871946288 751731605 804555746 759699542 916011558 808062924 922866532 148021974 996407519 775467410 960391419 245081579 286275830 546868519 836794403 629800248 764570208 673041252 896087522 950814443 990546150 571728061 585051621 389171764 440108052 189887733 269582823 402815954 945269982 863752143 891280188 22694288 842675565 610346429 851562560 546650988 659336310 728821287 980251517 432008209 460258606 617038279 937666213 706039642 721940161 294119782 303272886 551901595 745337821 607861915 705201139 543865067 705672205 479617973 497411003 572488053 632312544 225234725 376228857 47320255 112487129 491965658 651109556 17740733 281769843 638876813 685650090 974865244 988268776 397740180 427418702 793782022 917121447 902199870 952754364 121215425 325908094 127182112 387017406 530334786 775133739 482127231 992111331 479093037 819497597 393838755 843486774 621991742 752533357 9930541 460295926 695853287 931022967 594112130 616522707 279283849 728683993 825947464 835893459 888507039 971665935 49385422 632643939 959222582 981549713 713964984 989244937 951105087 997155896 496286138 773128744 423270912 477541039 712029651 882867325 445004861 750421900 561304117 835394986 324096108 455731450 683021428 919754288 617458298 883223965 905255220 941721480 569789045 815835784 26142060 543953638 994416048 996670698 893838232 987539986 975426016 986182451 267446011 446372748 157667175 881313607 549392642 611858716 339981265 501223222 918051554 960887295 84096760 639982696 893372635 930185203 732883532 957394950 28753610 407670290 997585658 998878530 519935365 658545704 745502486 933633286 649202592 863806571 796701534 845595086 455644493 664295190 700128253 702571069 46013072 815551606 668793902 811076345 404333316 636750811 341842355 966440023 299854723 377117363 144437854 197864392 972859730 994860968 821364391 830989999 796884261 863097334 741137611 845926590 473908221 534662764 828089087 973485997 528968148 556873315 290401062 914627336 130331614 710918065 125864980 370109815 955755806 995682915 324590466 941470597 169602531 634820353 811332862 878289284 826448210 973506734 627481693 680598548 63775081 792611287 481588660 992354531 842274736 915129393 97882619 640458421 428892882 558220746 258310256 325687320 157022283 457436939 935560001 944994519 649516181 983268023 59974159 526404335 751091269 794137294 628479637 795964741 868804260 982594326 191952633 433195580 123145537 154491262 934462516 964060622 503206926 602769024 325098949 492150629 154034609 493626012 269946137 770423010 741282074 944836856 294820227 697142165 931974124 962657672 144727810 290789953 664081723 694650947 543255159 655405091 655766124 983034284 733896275 940846800 732768844 977776309 179388223 435150657 839881734 860704537 386099408 502968732 46544599 816529906 471921613 536193038 419523966 468299775 224374518 865166571 509129862 802343109 456479638 775962323 247470605 743512302 208984097 852574656 697532227 975833976 982401065 996870603 199110458 648989676 952605537 982887110 784905272 901945862 810186615 944861227 135943548 368598156 785814596 889350923 68337364 884309490 917155715 956445749 832538015 841462552 185691406 449424705 439856589 528472636 751012665 775081763 589392489 665836497 753918185 791883062 642714294 754098996 201508443 404143401 374754709 565690077 990898699 991833299 28881402 633153473 507356486 604847702 641022002 744333406 842257509 890351197 500747351 790300491 451343388 585891143 282336746 976297405 133171300 756360228 208413506 984652361 929396276 987462369 273395172 647977866 547917853 578122314 393484837 601156617 286982889 798938543 135310755 761576514 114530385 248944922 656220868 866355064 809596047 984516377 245541742 936403051 537455058 925768972 335386822 666353973 754663967 850756968 422378376 463056586 919312803 954181278 741655411 985741248 64428639 277236635 726593982 851047431 462329274 684937555 136945092 534813260 835075645 897008296 104670055 375335911 289547237 964870247 374231994 510402837 800838871 863172175 330303100 357840062 313662724 378459478 761904522 914900555 939679665 998383049 997618199 999086427 885893778 987150596 935600633 940802588 481798004 506713046 851254999 994575445 198293767 313970485 219228226 475383683 349064834 354738620 866516972 903219481 783147120 897459640 816220745 952685098 272895724 498934764 410271677 500609351 52617918 216529890 332386834 667351208 653267330 964068450 442473365 700878456 629688009 684965293 996978152 998279216 570922229 948122800 267381555 540974921 803509256 963504996 34204135 75397311 262897594 576301258 51617184 419234689 862732187 954663291 282140925 642696620 60954600 175225926 176726907 348576072 150506554 264841124 889638030 974380981 751073353 875980608 114420590 354396721 243976708 441779696 643071004 705033383 368819344 882018266 385002172 518053179 827120679 970801703 937508008 950033800 673507551 841926704 193129898 704908103 16978641 722986057 390943276 401845110 772891157 912475934 985084445 995865543 45717344 754242118 286780861 415485531 900862898 981836011 35445560 886767693 705098944 780135434 716843754 877477988 540099471 623010967 157188761 174188804 51981745 420663951 648777391 862461805 280061900 338931546 433278906 713534961 184301602 607095893 896360744 962672859 817683193 833472219 471531688 869708767 809244222 908802732 40273440 54800979 605624475 767766638 518833194 729187289 495638987 788094705 652135107 755395737 942886250 984256487 36894145 263399178 511335740 661762347 171711274 505270825 905157679 946415619 367131291 992101717 788196274 922182279 269927502 540984831 416189476 770077418 176510403 904439835 5819078 784656465 4272584 482590802 59744853 113746923 208781125 507099676 921022590 962988537 218226049 682394459 230992520 325579119 886142325 897135383 969150331 986622667 352344707 510395013 481141368 741404089 312245207 347495071 283666841 483216078 532880042 634157597 291084936 728402110 164544683 286768276 45909714 394130229 840711931 949057441 240558078 366059512 911911021 980924069 625342861 988741233 565246825 813213163 514401827 750308710 126662734 275642407 818668372 909022893 411981453 892321282 342479915 422394480 270608438 624147523 309921251 465670677 109625908 542583891 213435393 955918989 176783505 257964916 322048389 988144950 843974205 914701249 646667053 808780074 509214697 943863900 469161142 700937435 276115147 355255012 850229835 889117725 581262768 958936410 277785281 748309187 30718710 492046543 295067367 611751444 737060279 813017829 643071555 654354150 775280253 940987616 268831536 496794314 870700217 946782150 991768958 994322718 601846189 644137388 280079669 986061703 382284484 462399226 762972758 872931082 309818596 806667089 804029037 918083826 748240847 762754391 446310865 948396448 231271514 885507091 940037351 989471209 552879248 953480688 324546660 376110604 925736547 959222883 946806273 996720812 24449437 699054339 167169561 974348962 670954919 821495668 380380043 404944991 137732027 415238206 517255131 990702701 48243653 712543707 928123759 996835573 419761390 585505984 650656778 811447615 624444028 722933889 975500032 995421068 763997488 769474521 979246995 989675753 73250181 842460084 71716346 692073002 4531009 760443569 834436178 982920708 780549509 809090489 710612766 731544837 257225047 586918234 593275373 788629775 246306040 410246918 890761492 918563928 326561549 469551283 862904624 929860206 643165262 807751674 972683217 978241289 188048328 859801150 621001080 916533584 649211944 995491155 427875564 698996284 892491241 997485358 42025275 181511261 393004964 797730866 345461573 750818618 611726946 649996719 108973100 163818511 216770109 918287898 66198856 985312343 371149462 692362555 106486084 745999357 609853194 652232619 660966117 853744766 506219955 539804969 145906991 680869685 560840472 863321365 389536313 973421723 425478389 780137905 238736361 585539037 76025973 286277864 375606151 435756331 525228229 650204442 503322598 628902368 207594465 858409655 63849737 643638467 702964361 789471117 345691644 851470259 55249320 433365483 434761067 497174793 100684306 421445554 535325795 716607876 444605609 993589436 832187213 931048498 592531869 934160432 583241470 803339317 769890662 798327218 505397253 977198892 27228136 345773440 998492262 998618944 67252808 270002977 405195523 691603795 405791749 921160425 904421011 910435395 746308373 772740591 711665071 835895091 813168012 951334722 520197823 796251998 644535767 730580373 68423790 904140857 70265787 641630665 847059300 864408055 473243379 506823340 848673750 993571190 593620731 712489376 669934159 801437150 187885515 836072987 395226722 646699040 642340308 964024222 55058363 378573146 878265423 918868509 444470204 447410680 107537965 998803689 147971628 506460347 320578211 914060826 999291440 999631182 909464205 939161180 142560059 255730013 28245042 349912724 699492890 712722159 168564362 417930037 619710135 993477810 41652728 302226621 235782438 993184813 964795852 980643641 151134333 579367800 869902714 915980671 727654922 971206041 68020078 627822796 797059883 874893112 654491652 692377951 455915688 564869207 652618352 809626540 369422760 732910919 548203033 638375046 750712216 770970396 731327782 950572320 953288710 983990839 793351127 842351669 214990699 971539071 608624148 978702968 637998516 874192037 733523902 743605942 25032519 963286326 86993613 308710838 372448766 710054988 312494730 850656898 388825261 982173271 156328377 162842619 706488629 996068956 957311172 968184622 183169428 485325146 166644336 605682280 831537718 950316860 381652415 793743227 667880526 786061209 413812607 781647279 75201779 110180990 476846739 685907874 183112199 848930954 949499474 985911528 848765934 933028431 195379034 962365248 934112518 945355662 488166883 598566763 986160341 998031612 334281150 411701136 756702667 782885674 441644471 950696086 579056127 860977904 415661986 835582128 627039699 665113096 681693433 706719821 293690388 392530017 124508735 438872271 639674047 896681840 281345631 293799165 495684765 565849735 51645716 256009584 462840574 547102908 795283155 991668613 56909375 706319087 565856727 972289423 123447339 556510892 90612614 138124012 290009526 826931155 549861956 850313798 334234717 874373632 162023778 322446865 277924095 805874087 480707896 758728076 636721012 891404345 45728061 374041753 371543930 795347020 417264713 945066077 123516300 417416408 24034830 424620747 262297635 334774201 990672370 998948690 819709064 847707796 629244320 913278692 126480754 346958903 607920685 720162499 705446689 979355168 541635402 665301682 743488711 895699559 990486977 990930658 739213053 844585371 840225595 988283392 328353079 355378042 347999783 805800779 777694165 797636089 274159340 950950769 926314776 985026985 703835803 927068682 76516209 167410247 509972582 617836866 116612274 667655328 135236642 388515940 918083041 925032671 9301807 547304855 400007842 733740027 682248212 914090466 93464751 827750812 7623529 38334886 501301180 627305365 183142729 254502853 233852141 270682004 642069528 649453690 707922129 812864675 568651932 880445555 534286863 895597731 109327421 569461276 364986202 529557123 480184672 551204836 556152671 744362570 728836394 912400959 603255904 743107584 734707503 825473762 130685266 834167289 820214835 851673688 154272764 721071645 120705360 836022233 725305950 999602346 765419242 852876208 212670149 611781858 402643382 816625206 892520998 916423381 507464876 690220686 548948497 681778841 27311172 201920866 15548451 43201332 435746503 787530612 730481517 862961270 708912560 952485967 578498869 678572633 30175545 660823365 792530029 797600561 9857548 794076275 441573135 537946614 826030055 923146405 484559718 925352699 153204527 153998424 734300705 932411578 234660218 484359270 70424644 872948877 647776765 692407106 179189560 616733128 501726962 807725148 937331176 993189940 868902945 993407712 583171 283417003 688392903 919424452 617578621 800100672 769626787 826265556 186887950 259003642 463750282 765137240 179378542 572757836 163403391 633888993 820385779 977511409 668275754 789492135 784714267 792882712 51305731 851884710 519807751 588998789 223808380 831388544 833782207 885559615 495529430 602626806 573138299 804521142 121425833 598375756 833461773 835648114 370333851 892036985 630277660 712260155 536255189 604893060 729026385 918838978 508164757 908647925 103592073 460187062 301078807 510296405 330492267 917624592 35506120 540746641 737537314 820065504 25834981 512953398 818982154 927657668 706237026 920360522 876765388 882687945 685146245 832493657 752742699 772452233 507401638 943436641 879628271 941836133 42915511 977308525 338853529 377644144 102580139 104235599 912523946 965650790 517549397 929320331 92751535 603610421 490639556 878077457 650767971 892509849 673125308 753106567 668877066 966464173 749989554 886398836 764367237 978411993 714327947 765944340 451449630 801723693 799276539 987429012 785120981 813719222 4569047 680023574 687161966 724370215 23083290 115196050 788462352 941463254 962027548 993564182 426126541 433655767 217238657 735286643 205268451 877958666 605264729 699186807 780310303 811008786 23129629 979263366 910476563 954380167 775971560 810097194 14315709 953344901 642264372 957331129 777039278 984722804 489449101 726418959 895721137 938303689 197322869 797952723 90838120 589298106 150902857 823603632 80038358 413366133 990392833 992216916 726263506 963796362 845566062 974705633 765084945 916445916 710229708 947370828 760940347 977403382 649138195 990068042 194174690 793073444 184932637 637290320 489756773 719594021 239626799 754812331 797255410 995815225 257795212 344187694 465488658 679766539 562281609 961018417 801432776 807926733 709575602 772551777 398066730 917596138 575136106 935238388 992212255 993797622 512090724 589406075 849671040 952781789 767739432 844870475 923856909 999206677 953844295 991737498 573597355 843973339 737234690 986786739 743229381 749976496 212738175 945056665 490942023 793597911 427710228 758896623 767509934 939157205 913342713 914724423 419314492 421805299 407869342 869232456 125086916 927880091 855211021 922690294 997653556 999840318 324481110 792277144 140589817 678971181 866401204 934234158 268929094 483816056 532979809 851374442 793597340 830072942 495324301 525974344 64508721 781144993 258067774 642069168 147692429 551412249 756716869 866587095 413449575 961646141 694236549 970671647 409917039 783943009 21827684 909355172 135411094 315509906 547515102 610780009 111382602 863916046 423639423 590269810 948992991 951780093 285629996 886781898 876570882 928928544 6403096 272908741 168892239 898708923 237220488 882875370 326781400 919872923 707213951 859786245 19601272 111059768 58611654 597436678 514200759 944182772 850663251 984809138 68460424 611011595 850142410 943405584 447110251 891487767 512032427 911728491 616183551 942199556 518044509 615520741 142270408 654351807 614514461 869338428 988771312 999411849 154494689 972869444 305182205 638545783 740957415 995820902 464098550 477532965 781937437 998605169 571803725 784943290 734932806 804486756 359813785 615545780 371732392 542326273 350330413 567230999 974823695 998084066 529692236 775792545 88161437 430186154 632937665 749999393 648517733 855804164 41724494 978775150 708111707 758552609 85200994 598148788 769077889 901479705 36242577 608650464 894454895 955693463 336984291 347239798 180577028 674352316 542481698 653333902 667689993 994427475 583269507 887726422 132485658 189119995 83035439 883116573 342092535 443872834 737834270 783366146 335733329 654215129 439286696 741418234 937353694 975734303 677054641 750182553 13102153 384897152 417857319 899292158 822619694 840695940 714469420 979512230 531560666 869047922 136242326 633307272 231329649 236712597 606349394 778443816 302448424 589748280 375213058 485145935 698116460 847729263 801395985 843412113 339482525 777393114 604558206 944074743 856723761 917874292 670806707 685298619 124279904 268068431 159439828 674804840 33406574 61689245 254395453 266523051 392560633 443627584 64165696 305341683 97679626 551463773 155925632 822854521 208759644 717219183 132979508 509669679 173917042 604317657 783535819 838946454 385846080 624950000 621899587 926536540 686995315 956272302 770669644 773489214 3479543 933144591 165713862 501647743 4261931 768584585 532658604 637804469 726418137 728239831 932739424 962790792 393709734 699700216 28493996 897426936 438499529 820053961 327415400 567919394 209034979 855054283 392199036 931616019 570787868 657997393 41464145 748729779 777875553 886822243 52940140 630301521 22364296 248140144 544304220 634457373 539429383 916957523 771670708 862936008 172023769 532090475 225338465 681810961 904735592 924179530 412977343 543545368 944662831 950988993 309232734 338577782 825969740 934136423 201040992 945400182 647159678 784333110 601912800 937353943 441632139 731574970 832099673 870935761 768880006 800591463 74811403 547675489 602256616 857931498 760749286 826347542 628231546 821957435 579969166 892198552 169204100 344783369 979457056 998380586 166541997 211798266 596456738 721224435 714911629 748245324 186250959 839586200 921758055 980677040 317572035 871728873 151036252 964720502 170763299 343755057 705147924 944367373 830273157 843273634 851740478 857160509 670074541 705025386 687342981 861424279 928825816 990360448 131927810 365514638 309193172 996067004 681106627 756185726 966919181 973982791 841721190 877956171 832079961 975500555 655620639 746550041 160945967 742525610 365222497 481611061 439704957 759143688 384474307 486588003 815308169 953021318 924650321 938925770 93486030 576112695 707555207 876510387 149391805 329368266 514971252 902336075 399738169 807484554 956220986 978770978 860962407 959536325 264393417 565725287 404991903 807125337 10794565 235400115 631651398 846083392 503728793 799947324 471276570 581491106 881340571 993076755 939964693 963558259 79899763 846760226 887304484 983265766 624507109 693020432 251570801 255644356 77434356 615877250 952942252 976463285 353741795 702002733 694320748 896712475 513646245 628395961 837064018 890909610 975282358 987674978 711672004 955519363 812938367 826302592 603413931 826370115 585406303 985473111 909315485 981836270 415917649 983626062 751648955 994079736 497580502 516443824 550932942 559372329 211377415 460036026 995839328 999287970 370327461 580771660 562052882 791272883 757313871 995838912 639230387 748871313 901019841 901477115 289753500 820932336 25085309 493296260 142048755 452970648 348694513 368344922 794158077 837029520 788814544 833072071 862874809 915162037 545367891 861231068 503871475 555375461 326339583 500692253 911205234 915908313 638189089 920323086 927603881 935729598 451040149 516047406 799061172 811421532 950891236 973117037 538965169 851313337 644752452 801361252 945227959 947772248 688201669 906168135 294574693 382740602 926157353 995231989 568247018 897166112 700746321 743890675 814552539 973679595 571776742 961722702 99667653 761982226 355923310 456409387 189866002 260281145 490503980 748949947 962119830 979853906 910860854 941985232 971319936 978059453 795177210 948417260 343355832 566108950 125223772 311522677 497609076 669181710 303751196 402531803 312854496 410624591 491825733 845748190 454517458 915662756 69851729 225791554 456778269 994614037 339625615 936947208 816757004 873333472 636296718 894197364 160000201 990080700 120325282 481543336 770520562 944570836 609761905 617192230 185844603 796106104 562341515 562432419 54827140 452939343 439128226 639377742 494723480 944312239 32458261 883022604 478540700 725407564 477725482 647525184 616366935 935582202 47826441 483909775 695573229 957324610 444700933 940675965 474795350 635229455 120078139 419466393 31143760 167856982 151892028 736556600 214337271 514033940 775962125 860674364 599993151 603473045 763333477 841046219 344309018 754419851 761306452 769214859 736677672 974594106 5949505 435585453 453985324 491421773 62365304 308863076 164421608 587489849 927275446 966682620 475771644 525416984 6395144 66844608 557301835 833785133 511581973 527319738 297135803 707835884 139123252 748157831 419302622 633043853 519767836 897819766 595306532 921955084 105651678 900368033 924508405 992643781 637095979 725156260 888814227 982268461 68153147 706910315 370307209 522373025 537820459 778254724 955516555 990909491 649882813 861205271 764618377 973272444 729643301 953825552 876774465 894954274 507172740 573743116 655563539 898748380 243008893 956941049 435892574 631413297 325464910 585801834 102742419 329092342 916487875 990287278 592915785 610478360 551697542 748222451 149808707 401584508 498019484 645683814 919442659 963726369 467939014 587795225 305184071 498007760 221843010 857265838 184495079 951768720 26365270 373739225 48354271 379459556 166708884 546094874 421016841 443264059 125538963 688087815 784816649 871448089 530813103 637520043 980515424 991235792 75030616 882737944 472458055 478057234 228471457 672914265 432698933 580115145 846816927 996772906 876644062 906404773 542556019 652134607 791440843 975297738 416069287 533040224 616840229 790717437 434665112 718466840 902931349 931697600 734012320 744468472 144166534 204859628 214215469 392521023 779227994 780448323 956566209 960905555 606322707 908552333 16378132 355552219 752787243 971745811 987081485 989692464 351870448 462521683 466761845 735266589 113660276 329094461 413216636 784380855 895004690 956817742 267047520 495598797 510562503 702723088 371649058 685683206 376794997 828603347 76313423 822993384 207116333 428260068 863687676 888837351 477144398 904631870 791499598 985437318 495132045 507774350 749440834 937689537 280190513 679511941 535430508 686114917 212049729 651577488 289593060 967049767 541981866 858499287 603224441 662832487 577968685 829102178 166295493 480993308 152704198 480642791 949006987 983284564 28400339 67349165 731281976 836977023 282341095 439979576 973501459 985445477 978648926 991082688 727692902 746499268 173239082 826632986 914840839 919738729 790861830 868844730 817786670 841695606 121296164 576872835 865454503 981174792 204469403 223378102 888363140 922161281 832361542 851359932 539344235 685516176 604214132 957853962 192913115 725005753 201765068 633367024 937443238 940020059 384385444 546040330 920501571 947270169 203971420 260682060 574240357 927118665 128865033 330761408 755417814 901457258 689128228 984515984 345295149 648386354 808202570 845556955 851163969 995158424 523360177 691726489 151349047 353186763 28963134 205922611 243696037 991560978 41511593 185537788 492394610 996109273 277655854 355403009 410840905 941556387 856675247 898824644 674263134 900393162 680815661 823962090 562236203 990208998 133808970 263207452 164343370 786996848 698849787 721077802 549616211 886383963 393564976 823063177 490707295 817980257 121438558 254793463 295512954 361775059 823569977 914230887 650869331 841484460 587899578 877578566 311126659 446789491 829334539 894452338 574703611 957151880 362190808 864198661 749274676 969995169 428544684 579638653 377961812 938196800 592323393 804429457 207631198 437799517 605209218 976026403 931327725 965174353 238048248 681163405 618760209 742767089 258402599 581187014 2956637 293722465 707969137 929389882 174174086 952578397 853649118 937256264 614365866 715947338 27223109 365167015 630333305 969264240 709527983 901336297 40404702 682431329 258711246 429503000 720729304 781452864 646679751 734452918 618301184 700761736 992218243 994377390 444618177 867364319 927533829 953777450 87644267 669066642 248375207 472478445 78378258 446540047 94983473 945022101 693517302 747698582 103329250 311136297 925978558 936536819 729528744 842007365 212105534 460872709 612861396 638949670 777371073 823379309 105964872 321987791 937382130 967628586 457831921 857535053 566151427 731819341 582108660 728236919 276315332 731902988 214905636 951991339 903025813 948623963 139303422 187051845 653035368 829757207 579436409 817995053 997839720 999313023 365802371 644496258 673459666 926525480 892456162 957928649 117306004 184919709 304485783 665991788 940414808 958889074 680344552 736837080 309464593 676302724 378349630 424474990 642718679 729529090 377873736 514663024 583122419 802085529 610807372 734188579 176924679 679149627 898689013 899485103 308541659 535086540 58436884 737119118 69392713 473360063 252557212 972131048 499424865 782166223 922522292 976156791 459271704 859784265 249313671 466839874 766980315 841195962 75458496 543986628 547748044 794019825 153126661 499200689 809567500 952659695 389763090 542737049 669617881 793464530 954828261 960291553 415175894 816088837 705665191 769812850 363047494 567296339 606722142 999359484 250106366 574051518 416852728 472503757 662336195 771258188 928322810 948327543 324253405 787981592 365925498 700179825 927831056 978310959 114942989 980859495 449015746 720020825 410385248 501372957 782434939 939444999 583932475 987636157 758354249 762733967 370732818 642030164 466705473 942273852 410083735 995326929 490612895 901376756 854058638 958056905 119598719 318177297 900784235 957898287 186374709 741051436 488081237 812840924 406615330 636236892 346658264 928210340 884779282 904528893 248419792 689071952 655603394 995586900 343768555 523150845 72363372 967690171 672156957 927607205 11065175 855432962 335957394 846665708 891402616 919602933 816453236 828365280 192962674 701161884 681463771 972536948 233044726 509707699 627055831 958986288 416946738 451901519 481148065 685814672 395689384 404061314 710231602 735399091 997444871 998998980 350442056 616979846 431883465 970039319 144400210 926160350 886440014 976504316 858635024 875772837 600514259 639214347 56158555 976657200 507984644 972605922 761824199 957857669 362687187 586780114 63028457 103930241 497045553 507332399 253198015 703195522 395585574 668101104 578750696 705550255 68123670 441482249 222797858 555872724 645013352 900605244 200667489 424817991 335085032 507466861 726846349 733918683 907298418 999848456 243154185 939174528 213611741 386944413 581633891 920936272 757976191 984298453 993685288 995743640 40796657 477110610 937512260 972403635 888790704 913008167 867603116 873832927 205006721 743238480 141492162 189079423 659157915 833721812 583548528 940611629 67822610 995227783 575129845 806693594 936974114 976565885 415571340 854729232 833740022 853579284 515987014 790398781 866263800 869995438 824336536 914309646 187148745 901873592 958871474 979522617 840899867 940743740 942213563 997183963 461883629 650260983 410610944 744292382 378795494 610138658 492776976 524183597 1823393 271183899 399347107 989017189 754454053 909731724 333356225 688704520 121072846 487935850 271621544 485892300 175441498 795298404 962157537 988866967 546601864 825891491 301478471 531631214 889651850 946979505 10258937 80278054 237443788 770375431 402792815 448394892 22523687 157689064 235550354 444198853 632391132 920537526 645675636 963980231 236516684 409024623 681260397 956313060 259672624 311560223 560833374 795834293 570058790 683787303 219383504 783614029 765581152 774821625 478247028 972459671 231887150 612504895 788340433 798182758 814840542 880900962 403415610 815810739 427433569 954482013 744480471 897721723 36162274 261808251 621587710 727883973 255869316 870610419 262856189 917226907 422047108 628576952 352393169 988966399 700722711 835089828 865162305 964529293 740727347 877324994 988311287 994217780 629478135 703566397 844044393 891706934 710027018 727702725 276066050 697333234 95297048 147856555 997231657 999096686 732354631 820406757 483565395 827578309 451303460 523831942 502086633 861446269 942112611 968678985 510248615 835739833 929879933 935244070 202576965 221691124 887989078 958161901 990089364 993737147 797738035 998118797 599664397 887734385 59627009 108761183 845184939 922123916 78021259 847618812 414957199 560583580 169623394 398594307 650963395 835062055 319837234 996582735 388923945 637928432 436525469 974055321 586572179 725918465 315141585 531306283 258224649 362493357 312638326 834870618 388494743 585018007 219356335 541039021 256104360 439784016 849168883 941098012 244769616 926948562 608086180 665073025 720112721 725686249 891417140 996539362 787746195 940427598 362746583 368039078 945768474 999101404 810771978 918109321 454814183 838644509 954781642 967078266 344463649 825104501 627258455 842853731 677510217 779838452 392261124 635818931 748220431 805271436 436167398 600321029 761471813 914816113 399172595 636809672 481429622 619433920 982577609 987341096 968514075 971522380 320124284 924300020 716189907 798063405 683955446 792986904 51026491 783806746 261659726 476239570 84648660 186025422 660165928 844441221 726629074 771689265 787651888 888483777 91624300 474304649 598667149 786119825 275893932 927307088 54917395 857030228 626443160 626465941 987886743 991806733 346766281 579626858 833930880 844752548 33892366 658330634 414883754 979789274 180700284 388741742 479621189 953593620 17250412 441273040 809591854 933472331 450591506 962012347 496118778 615679747 118033474 163117416 995127653 999271285 41923805 238947324 81787038 588165493 675381735 982951829 819342060 890401777 301625879 445081890 578048945 634155837 726312752 745733603 273260262 799553486 364448194 754709664 77780923 856031437 429278853 722587028 568101362 666150108 604544419 736495027 668976696 746463020 279805341 724791676 786746941 965617661 746288880 820452925 868801740 968236626 121155454 938751524 68712709 896235868 216210221 272087129 813363705 887046417 703778866 895271057 485857259 685421324 429226158 645197102 467218291 629725292 200654656 610947032 942406951 950102266 121686288 650146412 345191072 406388167 47453357 985067775 101281649 176098092 760049012 949279016 329122033 465323671 226161661 440091090 176261429 973848865 78598180 532238758 383117183 612944867 706589155 791772135 752471635 981637925 870462886 904703470 139563717 812878838 683405779 859930240 919294339 946397043 222994430 853144819 244384512 496790350 511790086 650357999 675755246 773508886 948705979 983770722 411362214 658214914 958926292 965173762 164393768 217018711 112211550 590995855 662986393 852340197 406644721 937343020 619442850 920626942 995657609 997269002 348742131 352689988 611679844 726751464 239961636 926161492 747476851 850783723 518461264 742524049 712631981 911565308 32626353 203497276 717763452 912587657 586420110 597772524 158410847 358257467 698389590 699776585 495271380 619791740 589216115 829147563 988612146 992838061 285861334 452257397 293647360 930036179 474294242 701930391 42444073 484904476 193514260 591978075 255639464 993894502 796198559 949635559 204216640 549278277 295279418 483907208 159616665 947965600 290207191 316631586 873413150 944976091 624618245 892175218 246813894 415687760 599445765 866710277 976475562 998701936 763376932 773475082 987093173 994654110 67859642 900312719 705740771 964956493 551102394 909883414 452171290 943296252 947833038 971400536 910306915 933265161 696313573 764509555 251958454 749794497 232439892 635206220 488947173 878186256 922248098 983411780 577999634 661201325 861540911 988892254 683199005 844674346 550546271 766182842 734092471 822012893 305485572 975596401 984612255 994128244 992168276 999458635 559515512 898283114 834656033 908909492 517593249 629538653 270079892 891299115 906436966 969204753 692572321 796100629 360757808 742540496 200184692 624819400 15107937 965209688 633763092 957587808 835945764 854283083 345539486 539404498 908384056 933558861 211050337 508058287 647096994 903520015 500870573 994252469 886592527 927979346 451867879 522595856 326555497 631592268 335211660 895715300 419064017 678557799 828939838 847991157 323058070 572407731 776518443 976321436 519602324 768121139 342558841 956144584 115899542 302022881 357697786 359834443 753909502 968862684 149427867 506989803 343323876 442614055 573694587 664496885 276902313 695642116 824228443 896583986 792976543 913460483 414335717 929406055 749782620 896338298 915478054 982310038 155602251 879042933 775846342 928281286 610530968 746546863 379429229 990088617 958309055 970954406 53942884 412864892 40335748 363260233 948658784 959943708 799532938 962444260 571784092 764129718 575179574 859444169 177456350 910005582 575276828 952627365 125866476 897462816 102361728 806032625 971875743 978408174 176922982 221194847 730830722 804024749 141465820 990071748 848875667 875763207 331319473 525178493 580513157 827389890 561793233 966132095 13235548 855395047 866201572 930566258 33316239 708922686 697394066 712993631 900815859 908592319 462936967 974013757 585732190 836893901 542296678 879609694 258350559 870866153 784324996 943553841 134630376 714864095 791533670 940775350 369197942 922841141 974969189 993494163 939474459 995545275 325869490 861485241 420414780 721596368 467541955 795741885 417702123 983071537 922948632 925161641 995221944 996791675 329773146 387626032 132166111 210643779 700818381 711574886 713579453 940517940 341523032 818615606 107964853 358899236 767397713 813849617 100428523 969393387 985778935 987621754 494688621 565587587 699620030 813310897 897103578 931188144 861414576 956554584 375357487 740231183 284561488 692033780 458690148 785567184 30950590 403409552 474906637 820781922 941763114 942462813 260124939 780166803 72784160 331754593 987426343 997998529 789923873 913673317 384166807 414955264 886156445 914486023 883400456 921753068 943158039 983134017 375663076 785364521 369304714 544028829 641606199 938429955 160369233 470926641 875320372 954740792 317255314 446453594 980127846 996683308 56084679 319991528 60361950 208650831 939952339 995480341 860012341 950115732 436260065 507744760 85596080 526229453 567700837 651733962 395627252 577520541 818991333 831487764 681798327 783737099 707855513 918166935 109090153 842392139 853196416 964246763 586872364 899388217 820300257 836904974 169569812 253281697 850840803 935062458 629207227 642651089 335294707 864060525 956848122 988251295 550388682 676792097 834091876 935163844 850804261 979474751 618453972 677565406 978727354 982154704 685585771 892852206 46943711 788291343 923324884 962019521 848565414 999252163 882637648 998202357 958132505 989353874 15811706 317693049 463540322 841755258 474294830 872094442 771862331 778054682 277767262 294684049 640882873 651648434 865988171 942859830 959270549 998570123 159871650 250998758 294402156 930799145 907984887 959343475 640112078 855523682 90235272 794790875 43241676 234532571 993865580 994473079 862418398 942536181 685537974 951133414 72073473 925853920 617063521 835630842 550217991 563591543 769201292 796482540 134867706 271639771 315241623 837387887 959018572 992730990 278828741 345485465 247736334 380464987 353187305 603310780 466567331 967036956 217450817 778308635 317507837 809290269 698493916 787983286 10558333 91277777 596377952 617140861 329967836 582708033 746775464 882228281 765828533 772904289 132715739 868986987 220317569 698991833 22303519 980089248 231646240 507478563 240261553 298282478 989575577 998559963 277480783 413786141 217965127 416712561 935128770 998087219 803138888 912349607 550650242 701848597 768931323 815593109 439135973 739736641 363131772 842101193 804823256 907186558 761117190 765637089 945781432 954185847 247748928 569104422 1786406 428593873 133419835 277708210 385738414 660794691 877619225 911033935 537026019 904038834 614287342 625871452 195429996 626784227 689860711 798364701 501582710 831391678 20639157 517903507 879082812 968465019 19948376 681956339 166927725 349492751 451514522 619473680 478312089 537587407 851559425 859988699 805232822 812228784 88794451 741541396 251980205 278702682 541655830 861575716 281802627 435224540 984193650 990815268 508807121 563891958 733470913 810309650 820246533 836774273 593464482 941100931 71844001 520857746 763067739 889378545 592186607 772657636 735285355 919922711 49927532 142882286 127889713 843773734 999170240 999170287 281008325 866080371 865070106 901763024 136857941 364796875 31323727 895098358 423221396 751572870 174195232 589892798 3971999 726663629 545266663 980685052 490008679 695229137 954896698 990638334 539654087 837432180 70952571 506112540 803694733 824905924 505247474 569477526 884182487 891446739 793119313 853814309 853560534 912616630 739824830 916790959 649780906 657831367 223194541 742017102 734242957 915727792 645339506 904081466 993395040 994832119 523759758 878852770 270714638 372601387 928658132 968843380 102643734 618480909 820278634 906064737 482099262 512101433 575943847 687876606 287404030 382387915 345892851 671892953 701755359 915140353 82092095 179739142 539415722 902201331 443383242 619198986 926674436 927287771 159884155 881524731 812113957 982186393 989269929 999648937 819275039 876103912 376175770 815929864 264894717 810212508 723055854 892884470 507794138 545093222 288823690 638089562 461017210 942106782 422340461 631308575 204386361 596676660 923326777 942314298 337885690 420885189 805269653 866895617 40083602 654690255 501756719 751739046 471630746 775078975 936593361 967783510 866029368 961041197 746689174 888179400 510784784 696632227 892080873 946212869 896964689 961338591 757989987 838975899 127028653 910011728 227028905 784973238 448426183 820404622 725913864 865424607 167984501 508059110 260274868 570126184 947676097 981201370 852014815 881361617 839482884 942687594 289391547 487544465 318327100 968127548 646305915 869662950 407748935 782987165 721637239 724965152 582096385 683796044 387559980 564014123 250785672 815401663 63697212 805711471 702535855 810263592 303014819 474200303 717231645 775902024 9057187 576000510 769068711 819327271 607131769 916453536 610571745 633814241 951289260 969774303 352815160 718095213 675733423 939121088 534467525 733614642 166120953 433705262 279878598 747139490 963363194 973357632 896000438 949136899 947312304 948980604 826251545 993684344 438424926 524682709 288503883 916507262 911492699 988903953 837264865 872824576 129563696 445791775 837687034 988908523 453204013 944745923 246300639 745638746 452927398 693548379 126996492 351370362 574807361 776301251 714013860 980134599 460608936 671783877 975052793 981181417 472088977 774376672 443736681 900818412 762483601 962191979 993530906 999184113 357541455 994302748 409779062 637898667 847911797 922810078 421648887 878326708 760705739 852499181 883081167 965408726 95981086 154592633 295216586 849701267 8997286 559089488 904625896 990395747 761155177 988251247 36012799 763939481 311460770 496792468 873982187 877678010 696608528 917803108 461071549 546085712 993901929 997537837 360730527 983905237 344047187 389988690 438225867 828905391 979010294 994475163 325476612 489023575 349746688 508739759 262414865 415877896 309880892 635467736 412843383 732976278 64959131 376274069 635481819 908329710 215085166 674181647 110861900 445982125 521866359 982102462 652072613 752888147 953081506 985196005 312269428 996930857 609109925 898797631 461551866 596132965 300566666 896557049 771691621 968743363 887026925 999658746 390264700 855145590 287970588 946555372 671827571 995150848 976874944 996048730 380930978 897337537 629515915 810434984 283579438 410091716 362207017 699489215 681612248 949884447 773420557 931100683 549608921 939219959 484035901 674314808 2937243 894164741 179828062 587488977 153740556 577339867 819751607 888434742 802830440 964636892 207610944 453176961 399990328 644931568 516231073 891922850 832086707 894590487 430830317 966063089 183190194 763932808 841231262 887698486 393869554 462004972 566572268 647320724 806845119 860438813 370284617 830427326 887564151 956269385 639744403 881589471 727241973 813155142 495139234 833488225 352070649 551177020 466324296 508481259 61944898 349739945 480898996 653304842 351153200 734254726 345733723 406585693 841475680 863399306 378290216 716512212 963509156 992660297 829806698 946735323 430046571 481583828 11076039 119967354 210394399 749842011 288785614 876345488 151278259 781560690 243249389 911861990 172310109 676854082 949532689 986292607 45647994 564589946 325763259 754486191 808224511 906257419 64796471 593192673 764565937 933307180 100380947 139367642 99999591 248827639 588593706 948294324 993204732 996658916 925614121 925774400 237484802 383805934 412951551 577722672 935517321 974961804 268806173 466692723 379383349 997447317 32937170 415449357 582419918 805816490 589913103 974398140 285881215 944344179 363340570 681154474 704730547 743104967 176923032 381802503 514518567 845328176 482439711 834109053 794371788 821758924 622201959 741321587 261355558 665680993 245524118 604240550 759806500 858244086 745680912 976025797 471623195 588866052 532414196 722022266 379121448 621933223 908332468 908781537 319363487 935865846 92555181 656571594 547535642 568561670 181546096 292997128 726540937 833914516 154128105 544549788 927579709 935648101 457148146 573262393 198917415 809781339 668950551 727013566 780831015 891652359 818292152 898537544 516646692 980718039 827434820 979380843 865441441 969437289 548691993 863641360 176377697 984727009 889876236 946408886 478283576 726976693 792932345 989948073 160766024 245577102 199813791 750824782 95787660 479823389 294148062 803388070 205108454 906189270 2976839 571036400 154109109 323043277 70731753 982274696 408231839 619434527 208089764 450539674 969333084 992760675 778154630 798900505 374452772 906434702 670109416 737411121 792539375 868638460 52954115 205937795 725242202 801270511 891485249 923719515 384392112 868321564 545306473 694327122 642636871 841083580 685562352 706002562 622421539 867805667 899972627 998162907 360889717 394422559 547088249 971481813 960319356 978878420 373301419 758058259 322182646 503437228 170771863 913036225 143142823 854643888 298143600 406336900 820360881 842124148 386555790 740534174 621090357 994288692 688903602 960722890 489294150 574621920 286748442 757850303 983199673 995649007 637205756 676596626 126147205 801702598 593705238 596464704 699212726 800066837 473958240 793092102 613072512 905257474 204041615 724518100 144564061 223654795 869989987 903366743 570711184 880387822 783988693 848410828 1878439 6874617 234010165 689266350 908839817 996378584 836445943 964065109 111907596 969109669 445737956 911771298 827857164 863969527 608891570 777578451 990808782 992584349 297343695 440443769 610117524 673837075 854531532 904293388 597656299 671233263 917886822 989091999 195089664 387874102 141524105 853081141 712605561 818424098 929299900 995214777 177353100 259791844 848731315 953313222 980967240 994589270 682971127 751581510 154657649 775192112 300762688 542294091 366588471 996689609 593391330 665770435 224159115 390919715 639456618 835757257 858358281 897689957 57657367 320787499 678134328 873351101 476644789 755783029 765665861 799683059 791219743 971359197 479053110 945307552 247508969 796425086 797706985 979236381 513032328 592337202 152123023 750278154 309888763 513203450 425320180 735115497 156219741 703938151 959139241 982928919 704653636 766634980 44963758 270267269 836453020 949269441 670646539 785322442 529051144 534300617 382515043 908266031 605336796 921902149 453835376 599155597 531388639 784601914 837078569 975946109 321716053 539601766 179696181 580450038 933327151 954017977 464147734 541315034 278175693 400948842 195379061 207571064 637000520 814433585 722079876 936728852 167679617 954274135 512701064 620648949 167814585 874305953 943841645 947912106 796119667 875603345 734850490 738425357 708807609 896677404 132403616 218491490 446317002 553868859 558106358 918607999 377297038 606835174 877120009 962747214 910953161 937310776 392696750 989549994 899755497 920082943 130995345 713727985 446067335 489745802 141693186 994003348 71732794 183920721 341193294 923615519 977469879 990579267 76496678 728510034 479353318 982589069 409694134 672206617 627781061 746657256 69362562 462206432 664173319 938420066 373373614 374435879 44592009 442858412 494211961 673579417 219992737 579838817 227296152 360782255 852075208 954770834 726533565 845887691 441559987 517088746 173517132 178821678 776534204 830236255 716249289 873111106 42644614 464679799 280143132 362637677 902363777 973241613 530864887 924490749 107575657 758549928 575567480 739842153 127352073 383502231 532078531 759764098 385905062 539112654 413000299 666545548 167610086 457715244 415351406 888115241 257912300 381880951 11695947 768556410 839944405 856607829 603382102 771580194 273538683 865587769 572881632 874156414 436951764 796239955 787462033 914433390 160942901 623447523 722859522 777191906 110206574 964275823 821530319 935584083 855736179 881300360 101847279 879454933 836903049 881073707 564578364 691380166 821202212 995468951 340831868 856498869 28930353 908388322 415078499 948025018 24674316 954658209 918466642 929526407 380836539 554553931 937174310 980613058 666213364 913049899 341355387 613351361 956075956 981356911 141391461 180810464 447155406 632897085 71312922 626296837 808724583 923840709 502854347 914008898 125554160 280986306 719759095 731178737 564079024 967839353 870439743 953959762 942366603 980713572 25762785 70035133 560366973 577309288 348971241 708363551 39313857 349547548 393673817 960325776 736625655 784015671 54303626 342138983 164629850 401940554 612742045 953035912 254070369 641368099 130892886 916018173 436986713 564946236 955875473 999645949 897862141 929164474 383508320 660798838 907667301 927394613 919006040 930872175 796017969 887425197 731289151 998618593 217341621 624445799 142495446 922863119 687392829 802234099 613974153 824584966 606418757 876216130 677321644 866863198 753019309 825831563 692249324 982589631 744530843 925157449 734103485 983991961 550481289 648981732 301990845 373751097 290649940 797718659 696989741 818884923 902307274 982230843 291362350 412056816 591796338 982529805 650999915 829160365 653248529 923499115 688249393 852443806 544734361 675385690 766801418 794292851 992385229 997266166 676708199 930488190 266934472 946016659 849587165 928419568 243595020 902947209 368477033 823237475 256556946 750380215 432742746 960026898 700312055 834325123 300423757 949591146 673957517 776982733 941946083 961032090 331701357 989534514 690404648 963742824 51922600 735540744 978671056 990263245 181263026 467116082 966728504 994810273 350823961 878697664 350355248 771569125 110142554 340739842 666586605 874001341 532036932 954225588 941406095 946006238 954507827 961495825 700416533 973600453 118472423 435578339 757422818 792296378 286876154 848074717 207346049 369713276 905217809 940223906 701377237 812719310 578894750 993204922 785481271 891385570 181947543 772654007 88788114 341339882 117400290 393424444 224330428 332958616 637897038 777736680 932292477 954177732 681617664 751971000 843076278 937921113 501879834 853973889 660769871 885785393 415157150 912462440 196578384 936527126 898102009 926414575 761601200 846880872 244990288 390569512 996860153 998810838 304057113 534274982 315105033 326496588 846346133 869371026 315671297 361297753 234634182 875118210 728974052 860523108 280252123 655409295 228652123 330578282 803411471 932440766 139278569 838687037 827151526 915518668 255980177 720022271 790169123 932076475 597038543 754711733 17277625 191133969 367871818 819198563 179343907 267726662 272114233 548728509 528930024 802686779 430988473 613522478 505459325 697713183 363830713 922652575 947145428 994065984 24748161 920461833 318903613 829143906 546314047 725181529 306960170 796602501 163962756 760432490 755382269 990057986 79223187 163034713 690704347 882438499 783058921 948947186 356881039 897197475 904706986 989540808 714319699 908803309 828272877 942904452 673783927 687830063 989388898 994878180 832056748 861849157 646414660 756336501 104347560 856187067 381379202 704933375 193375607 640184925 547394510 764427461 874971501 958463988 168356374 947191768 886681649 955442297 490240498 645091825 831121119 941278878 140826430 240963662 255286089 406683455 611814415 969488474 243885412 860910134 729338378 850375717 690096941 822584938 229479869 960312717 220901388 368797227 585373595 829062345 584274141 774648787 743840749 868636975 42333440 162758403 923260176 946246920 470610992 683589912 773837216 829285560 26816416 801243889 896245192 950060444 226137819 781676063 88331292 183036042 803448986 960310901 407991104 521597347 542631874 847942035 216417058 545459484 18203805 486485526 732498095 739582319 573105102 642072731 658610786 882495879 450784655 979126156 966169069 972961766 258001514 649963691 744563777 881083616 7126285 276249303 80176859 105773738 89087649 955358494 84121436 147784464 97553407 998826119 719949614 964470151 401639689 596638780 732033092 929605203 950037801 966823660 501592548 629016716 203080627 546104672 728035240 914683949 253238234 581424086 706750214 793064326 222205935 394207755 581317882 720881219 288184143 647066909 948473456 995093601 167552522 245375941 584136754 607275528 194155152 536129273 773794714 776187484 376160710 649101353 925261224 931412858 572528975 794742476 731273456 910684600 257403608 707271785 208111041 612546111 181085750 422933541 341984099 902706856 243422673 341255678 758761477 976338364 668002119 971644501 25508533 672212367 785634106 841754843 706626046 758307075 838476080 983256103 457499283 570438380 873662824 880124915 757468025 916879680 904114082 946418650 872187156 928507002 628088121 823400380 125079273 234013389 360370154 650764159 171395629 667747953 750911250 804918880 616926813 809458766 415305533 980233182 214258530 354912439 454186889 972008444 259645564 887171547 773910225 945252843 719328310 744017599 76716187 451911900 755865183 933306719 516819911 584997068 417421814 631783399 466286456 734862236 343807543 908721933 230675362 787123526 544947649 650200535 280349958 386472268 437880008 907219179 189215077 981274387 170340066 317510542 779977611 797482670 250629044 468497955 734407626 968460761 215045797 317631028 35332328 861671315 866744273 902268768 167588095 488253892 590935873 601037717 449409087 689488054 21639433 40918700 825873728 904104466 355352177 651245059 627187313 879096270 838113902 875874538 662156241 687751096 490576929 985954095 82961081 788342754 477253262 991401574 786768101 922186980 262749856 328739917 790597243 926462786 540978770 842129125 148557494 336302554 728816236 987980932 192767406 855395393 619135931 811704733 659609017 699028193 724901524 814711569 421992537 718411427 478755272 798100444 937668293 948701925 372402883 475732239 150055261 288675071 722102661 788959247 510614367 961578344 763565497 861463029 423010798 838464660 729425515 778007288 310459135 896310779 782342919 805910457 206268622 929748428 670253700 789224871 963357134 980560823 144275081 627429760 694015965 886615260 955555532 981152623 713495101 910298937 110071419 296568318 993577405 996908477 717102980 740164444 821657609 997107875 795222746 803364313 130367873 646856981 837554690 882890109 564235524 983032493 792155864 814436005 644719686 961144359 957732824 984143813 674154393 735574738 445729857 928581964 679174883 804669102 879974657 890516262 394152564 470128138 930804806 931767336 218796540 979297037 8099960 80642767 548533204 567161962 447519199 664311829 662685193 728477461 127464599 233819702 988165827 993404345 400424457 615004770 951270557 959244964 57463624 130930022 425794177 783798527 506737576 995549331 758488296 816208943 941826356 990333724 808691406 843187896 176544648 619100285 169166998 514782405 685018754 724548521 555475649 651648063 48290547 153571064 561762714 801258433 234240179 476193377 856062009 905818791 167851097 886123959 206608697 860732490 226447145 558011446 379446966 997331874 397551825 984316883 66291653 615531446 952029853 959607992 499945586 835425550 296964917 410413338 306230007 602431342 947442567 966895149 606492695 801259480 7477450 706073977 441913804 772086670 821574008 998169128 400492474 906873409 800812034 977850471 81368155 976938288 110577819 192756147 665235030 945655451 397171967 497375014 706328390 871062438 948788290 981431663 689480146 951046527 323102620 326660995 966126692 969275236 957342970 980272147 719657804 899829983 957246631 977928794 234669903 526057135 313791443 468086633 614416398 729412372 872717393 907130429 954488840 958970483 542765096 839555048 988240825 992940510 724182983 811255579 274984177 569478978 904494285 960851802 848654633 862990988 671099052 832174128 833203427 942799588 323312193 563288030 292571788 921869844 555156218 831039176 720310588 876842054 456201858 649061496 808034398 870172157 737239509 975049198 775027719 846412269 839742804 865734001 971823637 993822826 645283487 673614347 81466737 902218413 610309193 685234519 218606510 247235918 813359856 990065340 386789328 596177394 133303325 374662302 793267644 809326695 220725806 933409285 206222395 430011090 336770551 808420172 832182742 848970810 751796577 910929993 308397812 907178827 627152959 796404672 980747884 984108289 758535874 904429659 260331421 451371220 375853662 631922783 967573890 975617427 60855984 843877597 28980449 512417702 223924794 507558936 855722510 987875767 109062770 725619693 637635513 747931628 574717866 925714340 738073290 738350502 544256113 724827758 47563344 751317694 757778689 795851428 940988882 988163291 427545970 586182602 183384765 397007445 620604553 750997368 323109483 913029306 179131264 702488416 115980726 278342077 942963331 954576809 796334220 955985565 421475565 853512749 837502705 887177846 478539554 790865797 414613632 968508456 383320751 946427433 846765956 875270135 130093333 756328727 379869906 651318190 328133444 790325362 637184458 669174452 636634474 970273617 526071341 572286962 105296632 602741993 492178955 948564677 261075386 917308904 657424608 854037215 259986021 734760243 497302596 506981440 896750101 907664168 182082785 883319743 518415974 546130516 224561607 729962939 617443047 808722168 616254278 640877181 306103001 998203701 239348348 259486524 658153706 760690546 194383722 746141994 455402915 565271259 108736391 904309387 591266546 736014574 200503714 485631749 624210678 712219461 428793210 485371750 525185369 972140356 918293460 932344748 857702847 982399971 91475509 701358768 809142594 926983900 166116714 552314157 422523923 834790881 574573155 728365212 908026384 992142344 633691321 998397162 753738824 820370363 917919562 956161919 91186494 817233182 317711930 684385452 123120530 815545677 332999401 659721201 957369395 984632182 769331527 905907128 125050567 941217446 806231912 848322577 103989242 858897578 603570610 752392815 684935037 890310231 853004522 869115220 147565519 192437850 484340878 795203209 226770446 414711674 100261030 755786486 94472895 529426784 315556254 476739085 293315875 542764917 264106879 886025206 862818230 869304173 125288979 669125076 462227727 785906543 409530711 851165603 393606421 656409536 824415727 871740356 905287713 960756678 801759903 857372478 425925674 612888985 386737 666264414 898475256 906293424 39503497 113671952 820385384 897741523 800370009 997739129 773890962 861810870 997241853 998193171 93523689 993903066 18518277 172032267 558321792 879328675 833906015 887241181 116813855 893460973 135686369 484820628 725884774 997693665 59272191 941730046 873826136 926659654 975942490 986399307 236300577 508336498 777359974 959273083 875424185 991733353 194129938 230118575 990002324 990325103 846514586 951484525 630634704 678305034 281874557 565111146 972101644 984539521 341629171 754040605 208187588 450770343 448679849 662021057 635821208 763884116 553726493 681356490 279348509 368328038 817559650 833463445 944999184 948527740 744234774 998805919 486635851 556535530 168994098 524665057 327464415 364767638 494952668 787987055 171690642 757875105 244878937 268269451 227702925 577568985 443840314 946872910 235845185 530687266 393866477 709801424 454372337 752155593 219055083 878244693 748447325 900257223 837462333 970962207 116204048 868267493 928704454 998926547 928019431 975456632 46411235 337831068 814122782 907392911 29377891 971454238 146850424 311151218 255672355 571933913 167423435 177898282 310276167 671500006 88410665 810932822 522316753 587378516 893420458 960128115 167094838 674027147 568372437 831873075 206766948 900092439 56560444 145003851 312039234 724259855 934652627 996635068 798308739 973601058 241974132 749063835 197391631 253099482 233171592 701125365 428517119 477047517 793284377 922476485 526902625 656266318 666223105 914113767 335535404 769836852 957883042 967715928 385319364 611924281 24104294 599281247 948635927 983277319 415170 703578613 70182347 398870207 214360708 531828328 858107171 923962418 46259492 256759961 589290739 714201978 761348713 763863902 784956811 890929607 483517355 513617859 860547590 868639798 3146529 572886065 517649871 738132241 605783351 950694262 794187595 832454573 632418894 687041527 937124330 965695766 879913658 948555489 902891577 965919368 925297568 993566785 399193766 439534161 690258719 768685891 921851001 929490475 324414730 379491099 296586503 332487975 331321100 586341802 849875178 863887429 775534398 952282448 493448826 756507505 999980675 999990038 48565052 381750002 153707379 585380701 630163082 782821631 720769220 761593586 736920986 838537584 125936458 762545455 867593668 957254763 270295517 456291395 195221988 334804573 798056784 900980004 98200604 646977134 912755532 962462116 918707520 953515736 324537528 931891704 758128015 936449611 291425093 363430636 694900669 816891633 942177449 957432067 828025303 860992798 786597046 924666336 894833247 980918459 127138809 429102956 222904916 533521452 190984674 196151600 308959761 325014569 721453793 959141216 746826692 919832268 217786405 290856488 557503019 841934009 186077997 365613774 159048414 628174495 298990228 506536173 919883700 987600714 925418406 981983314 740765180 896660683 81524247 902504696 689785622 964436619 558991147 780074928 491255003 563368047 722586384 900095262 588819574 911474840 143376478 435188544 490481084 498287540 490299442 732563647 30087193 585347392 455466324 960345757 423273 777218423 551994695 615014016 380334035 910675361 588084452 905205791 575094306 589555126 56785489 84182502 230966203 617669012 75740003 144606743 653741983 967331400 293946038 403773983 143049688 839215354 392054924 555809702 977087324 999564420 678181754 958659993 607749737 662883780 496876248 760738566 660185793 714605002 625469308 903899969 32261941 836051376 656032183 884025956 710629959 840213385 693975001 783425545 850856460 984735392 632445520 935730144 313225054 489456298 572170039 636660695 284886665 580570501 672254251 993822271 187010015 852790298 362540419 372978398 566518010 846845702 658476720 964048853 257305663 736685497 433802228 645193731 760433105 798173964 345455556 901806848 698994916 799964458 372266657 834624218 994256931 996734252 106645287 723196820 304090681 974879964 396466116 829258649 316407168 432533000 722765232 771575741 470414118 564526086 235540287 701473792 248320484 944821907 174224896 909649837 569285403 603514496 817800903 955735428 309045559 792097637 384310003 688186667 672210815 881390933 562715920 732884255 767407812 794018361 628232824 727300898 494497131 587525182 5066049 149522332 756593599 960670280 642145125 998721616 691835449 846164136 992939904 995468916 705226923 877160247 476359359 880809482 975795012 987256377 4862395 150454762 256808068 748755587 442138422 600959638 661503135 716657014 6639345 909742952 843965767 909892149 153522064 344175346 944601292 985136419 990142158 993508032 885245391 898519399 176810166 976288174 715363776 730647645 816694055 844487082 378347246 447060817 413207904 567984266 934217010 970569170 756278182 782399751 279083046 958503475 101827390 449386562 827709173 986497431 644012155 814822779 428451040 769636830 104487744 747805382 890239578 993815013 339819278 984322787 326038581 401960381 7806926 378808029 481729675 552367967 185487748 758861450 977486333 991043832 755217703 870641772 988530178 993545866 822836194 939213543 358286374 800033683 936182906 938180664 23436915 258814213 476905886 489659876 967985716 985856601 454420408 677490573 72153786 811400071 15875388 757510883 594952714 986505549 231011288 931868711 47274418 719987021 797410694 848076301 889865938 985022562 358320565 371782127 222075502 248480740 381906739 737485863 435345763 540534898 246233936 993136617 717871160 895445844 585682091 887401504 653914629 957877739 473858334 523947387 153667401 481596139 685608957 828600397 600158132 782087426 956218723 967144773 344537815 577945738 51206669 653870297 850514297 874185080 747653923 991538478 79374713 859374180 918343554 954723745 464096121 554615315 455816382 884748640 313561734 328570965 356730888 550821022 677026877 805819042 201214534 740734725 743660915 745804153 839619250 876486494 377023333 553441139 12746739 496868153 949679955 955408895 697946792 787544614 435749610 504979449 293630925 589779212 139099040 229683325 630073540 947013356 372514368 733741225 390781168 504249794 486856968 732413279 412483214 729709507 955106944 997187361 101123182 450141801 525519234 623711036 935503993 956447765 71673711 729942818 839498076 966319389 509471848 982420035 37963642 592624674 93739685 892079369 898073362 981606027 339937827 413232803 49253552 617602987 86455342 138823973 738600433 815423450 183693887 851550058 25614383 287837586 278998732 524520579 673721032 816269531 691606169 726907285 391098367 973491345 844618351 890565810 83317709 121544663 594596360 635298600 668917077 844408869 519818250 917201407 927498887 995975844 201087328 557666146 196693341 618209917 345104708 370812209 365324389 579864197 759015750 935706807 14497183 158814849 64206185 940023048 376317716 848424161 529448231 793238974 781318698 973855096 204053158 349594980 490434323 809615044 957875195 969555827 547129342 617963377 897013570 981690095 471827130 694798363 7866124 570205500 280978289 703621590 242230879 581245765 255456823 285766084 695251535 760012731 332821267 703455083 189887780 962202832 426299773 793228456 364405501 728805628 927394582 996260268 395591015 402308668 184533730 401658231 771800133 826130689 67246285 952892985 73423993 710603873 23712756 31014208 169291284 192260883 412009611 423952100 561436982 799526267 596294557 602474060 313705335 601467296 369503290 565052492 915721416 971006883 735604774 877494434 910491110 927093240 512965620 557999280 703321905 837692555 149099866 938988800 48690097 78754934 214520074 836826382 651206312 890033973 511753705 973420029 727587585 768348406 318081698 496812736 711405202 797549670 786991840 922256326 608777497 828119590 99314115 304541569 699682482 723213540 573711781 862094680 439446607 707015629 379160089 759587634 376633812 714181199 882481841 888887774 582184281 820973947 948818585 986993428 721258450 732884161 908655134 946571107 440333824 561975781 640396745 844757071 288298797 441296467 122398715 295025426 517023049 620492067 578230701 712284011 47128957 548350480 719493201 791336832 719013140 800160626 335877100 990018162 646462649 650095872 124867803 162933258 964772392 964994717 782069486 786300329 65865585 355573468 214695170 900728624 959190628 988807864 171935159 859999791 594412547 627778429 431036653 756420686 554246879 766696274 258757182 308706545 858362520 899715222 105990194 588703086 45012016 972567878 52985448 960036971 745605329 976472929 238057149 709180523 360842977 423365699 456880317 619209714 605926927 702280881 389660824 819644752 659982900 662619040 492724761 782897108 843943481 916006092 977373750 989262819 839853742 907332475 985861220 997496260 806983183 999900601 724551446 792788134 612931162 835975811 483647240 696330753 167330472 732886381 770922389 830042678 251790671 590227132 42767835 861865886 357721763 875343469 235262110 894359411 521030176 785121341 130935298 834923159 289177486 784786700 695113836 921466431 905778586 981479626 261368939 920506626 446565679 810750593 709132612 750269822 984604354 988953260 100210617 617551126 783699104 958103096 288714433 760609835 297954955 882101941 605916989 729072522 607396033 937735990 106651267 913606080 942080162 944476782 719378900 923842067 957078102 965934364 489646109 740931104 60206894 586177168 881608092 888263463 929874716 999075043 752026504 893868737 694738315 904189266 980367236 984599467 750503151 918058850 652609080 885027752 323074058 608627600 866211198 946899394 430314279 887610398 499741685 606056965 154559717 557860553 382177209 682438485 227308254 490240448 710326866 835058078 185325407 840659702 93253967 818505531 402538985 979550439 327148697 911422910 387115601 871272892 348682751 424020466 270920752 805548889 400191246 794558577 976757028 998832870 417827338 430516621 190284286 683041623 505822029 986848508 497520304 682183283 221636548 495244781 137574264 421619336 449294079 624475249 254777866 832962947 991120605 992197158 413635644 444292479 306135134 944121961 129448663 784487032 832907077 993297069 170698385 331635747 391849059 867986088 773520038 830547912 526758590 650767421 732715747 840936331 428362481 998617139 392386317 501689301 612595209 891984476 327051360 400416665 327271033 336962531 837002168 963196706 333880488 894640666 516209399 855120650 353358355 500899984 555726787 743849241 349365088 379233774 920338301 981386743 902750543 921756736 816381781 904449177 74909465 340935080 329045309 879143638 557868590 919994163 602401241 668023427 608142132 716618416 486576641 594321907 900553880 935208435 799588059 879354022 247902863 777524747 987949629 995258822 775721187 899541016 180529115 845721744 386212612 848403923 358090737 468577147 853128737 910483753 611166753 693353856 92597923 860534645 190515267 664555749 529081641 815680816 311120394 928568245 837900600 885046978 376635583 887393922 442125954 510010478 706511660 779015091 902957197 904110662 277703345 316600065 271308314 549121128 776365406 814041410 405380889 558392732 291675433 377678160 113967268 506941607 614531487 996553483 692050823 714388496 499911267 699236217 790530540 820372046 928989723 962138562 437645404 902996385 892384151 903052642 526617706 589985976 522249776 964084839 507646778 814352394 382195733 523717300 978079660 994336899 511698870 939993075 710918055 878360222 740538080 941254760 766022836 798904981 341645129 656249210 916393197 965196267 174937223 326517389 577597955 836485781 786049748 843617424 617680399 653532980 152473958 455315571 592734652 917813440 942749398 978350307 170151563 382874717 499970057 915189270 48712975 563256230 793600073 852471668 376708434 726255116 692748296 986653919 882919814 932376536 565828942 702621528 299728469 862476109 147531979 799565437 667283805 799197496 139350800 668356233 614224155 831653611 800082551 908936484 43634211 952061014 986229330 990371391 673418661 683556739 774790574 838233519 718477331 827347761 618413264 892637722 802450591 865873384 257735518 394693028 648476513 922471992 975005700 991111896 172744741 557801270 120935663 156738975 687514700 897674171 346316248 804945889 97250075 232126277 473347554 595877728 962074886 978233762 873611649 891951219 749226422 818074271 777524122 790327408 102328069 420390417 399297312 988463709 96819542 511060413 176826516 190087323 29532271 951708150 998305750 998453109 214795224 312568278 995660278 996331733 518168816 690051888 829447041 880566621 326486039 777824918 937876166 951394166 423003881 674371592 69498497 500093285 348240814 712501877 34053079 843459635 399899680 958889845 990167118 998449068 382101778 930651100 23991620 993123739 143739118 424481636 973177463 990390579 701991636 962896100 96656208 410984942 371091999 484983063 51905678 237093519 640017850 694695330 503317691 647270272 214740302 913900030 180532914 547409973 994222974 994973496 249673172 331825922 317464789 823173446 645618037 968598245 819837737 871758905 217833648 263713238 279141453 905981895 465661539 483122691 853047382 924047581 959919832 960247156 956706382 965037499 577238712 956605686 128977559 167938658 811309390 843469115 144278915 325029847 930509088 931003947 733179881 842977310 940425145 983085851 702147323 891446312 639039353 790713087 513922425 666860523 445646841 464733131 856762595 925151652 608143227 704768038 350250967 354775172 103768572 620311307 617945805 704050564 187187101 488081917 281923138 869348433 53851350 78712960 843453679 885790016 526922415 549525726 831639205 897741592 28818429 215766626 96058110 471715513 801042564 958914131 812202717 967511698 677926177 909990933 135125524 597192821 598007787 920523425 266109207 496000819 329459286 371515900 307730964 503908396 349205555 851800092 139114742 201358345 68627720 989300159 452040630 722453367 287234278 678502580 479286167 767725354 642442213 698141936 650390072 921939657 567921549 670643771 285472589 519294723 757760476 914385350 430535182 526796573 287956598 918355331 811357653 981651903 273494451 786100465 186608673 409273627 490577788 816697241 922270413 964283803 14419402 671557377 999929342 999994101 176015109 518319565 337103352 668046915 810447164 811090242 596178173 752213792 459358145 599104991 935796088 980899649 568050505 709975103 554901603 939385449 589427938 724178652 999637754 999922835 647767542 817981079 677863861 702227090 232796743 521460300 289574770 802882377 513890926 990264622 967216619 973208747 755218660 795677453 872451623 988894973 550507204 736268482 561011407 824449115 411652080 522991366 285554018 633432588 536402358 765340228 65445752 467927993 595866533 869882217 740116098 983705181 968259515 998883336 543152963 737749577 426576885 912233105 777984272 990829087 626151925 794809037 917905547 946147556 604149362 966053876 98957617 881059823 730654585 759709086 801070949 855183195 903123493 918382451 696766009 843781951 670342485 827646045 578098017 973822326 32035625 112844008 767826350 872680764 638062192 875814277 397406644 725039888 97974889 801498593 819055391 878161512 732102426 807645547 332218124 696693502 246655463 954512278 599824498 888710320 843813002 914443956 48472452 777774167 298477976 730743462 221828504 517739408 429116558 456706328 593936942 771880956 757564623 902171578 307174257 883189883 865100683 875601878 517836143 948353154 593798040 632756077 200620872 586862982 666972533 866026653 439563263 687692114 77297154 251060907 371193297 487357247 361254466 900822707 884773361 998043481 982535651 985444390 964271469 999360963 15155013 686952624 456589274 783246677 495194387 855461568 249051845 754268787 916786645 950531638 501160482 631815398 765632141 842118764 373147286 632921207 787217018 957820873 128465920 341886183 70367086 968915578 119893439 720814787 626924207 809729713 517265539 917138366 484967274 492418178 3425139 293053328 707146114 786534079 594641029 624056814 616946238 646185149 571432078 944778201 998813613 999922829 701733246 862832668 421582527 888497393 500970418 824712092 961515183 980058748 73239275 737061508 409601295 452484533 13330633 852705908 319452513 319899254 422958811 920196328 59218740 843545842 459981346 507245805 584776661 589596151 326202140 771426096 756917651 761339853 624598236 953581904 472851512 535294879 656272837 900398212 307250202 905533386 702688346 962032940 970081041 973708092 531330533 647993173 339413406 807053281 492899344 790784681 10156057 701213304 435543383 650847537 939689474 983532558 748625252 835193676 826006346 863094502 734475680 981667362 955770574 983354389 230247857 628929248 244185347 422590838 515774212 586702606 64068572 668882693 425209683 677020872 486026893 714744004 799748887 855680475 955405970 982682972 124522224 643479120 333489651 720214438 877160197 941088417 177839242 534802684 207541665 236165122 599715761 987539604 261346549 615015695 298221461 994091176 368071211 491342415 186558481 549759589 915729991 983967777 314288643 778546271 92761497 477075530 442732221 648055309 912397741 970377321 898818555 968848064 48458428 741113235 480792429 490692356 684305028 861685657 626500882 721938394 614861578 983494889 754146267 815137187 859918184 913359879 505790239 851985164 590311553 870341896 164191498 434774567 80629531 523608773 7133591 208544701 340416308 835401074 770150708 984417781 580363191 837719438 49621512 288134637 253966029 471060329 402595657 741442014 758189379 839663687 118200035 499895052 978210191 993264219 428581829 906496777 106524419 609478632 622572809 697409848 635061167 692447675 110415309 926317015 355896507 883802709 80358525 116970323 9072271 726965323 873089646 911732261 412913085 425871973 548933064 978936575 950543942 977979808 401273339 674738787 231339136 557187008 983248833 999728719 899705118 920180122 796723838 973472973 9562298 815221571 946211954 947531255 198425126 712384991 192926227 697269953 884027878 985839231 905774445 997737852 381148114 381655190 141873274 407593479 759469191 884465599 539298510 920340049 405430291 686110193 608423416 648069574 565251102 821369467 699092979 758141993 699240645 937032704 625783222 815539356 232890991 793264932 337757131 916567358 593953644 858428788 12714867 612756473 137223691 484282873 474056328 880414279 479975650 808489771 672787631 937254203 920498333 977593238 313239883 678992493 490172533 511457169 678527317 808284327 436928449 887042600 732202526 975772748 408176899 798261047 80357903 882590137 464125232 636566197 855177464 861179041 403342888 771767939 902506104 965677617 893951619 916757517 869290196 947674746 548191158 639367435 501594001 753238454 531418083 675579204 423567832 538476787 231908698 555983766 151566386 268552003 905616233 957520556 2760945 372521053 46349187 412365755 819395626 915287091 568134282 674467858 807444677 874506967 346473116 999332847 978016797 991554517 848480630 965620840 924502065 962481369 548071596 945553932 30020386 346812092 960807832 990427476 675045768 983068999 550274853 963270668 796313890 855487736 853923715 857449387 771411925 834444634 832022757 941844618 176052705 534640770 42233032 435595883 481579416 582526856 3490365 307226626 702606233 962234324 322301484 499854587 14018161 51331825 273759757 342595922 188892704 781898136 302147639 850791338 386745659 491915295 827201550 970510503 570640738 604422258 343563700 543673471 153353875 677175136 382884713 581675298 769831606 940704648 641350973 669280326 24178617 858567529 146829414 859556183 111674351 126575723 662951677 858955399 490798477 577186530 33516596 583830762 845930253 976573245 674004617 883735371 129978122 370290029 578164873 927056013 867867971 942687411 318328707 589932520 220146595 646574705 826681474 855328347 228314317 641058240 279715815 807759277 900183261 936470240 88451193 649331469 514576236 640717177 31807179 54652003 865688722 944037533 287494250 602774589 291593588 777041916 266105370 757271080 219419352 966890284 112494688 858851997 750829656 892276422 851195356 985840011 113775795 665697216 316391250 697125170 530656504 655345665 788238719 790610002 417843617 856607189 639900187 706516876 848426200 883618532 634936014 791053098 395479643 720752402 562177897 595485141 176593358 408329580 654988282 851613411 798074163 925627376 235342999 825985580 709475598 872061686 84910664 639781602 291170120 726999634 671276649 965205594 971757281 979235200 209260119 558264596 634578144 797730985 322223209 645747070 445245731 517367440 822037669 959406764 638461194 752140030 606330158 786676178 211972439 231774604 959321002 985303370 862459313 956713295 997488991 999741364 715417376 801171754 719468194 763492348 247030550 312955433 801307176 970560830 621733823 860773047 901542522 981845559 702314014 875484538 915543768 942542581 139560533 971003476 203034978 282967995 300670451 394892968 373578418 974353600 674156433 867419134 11679752 561375269 116583844 203066654 537893103 874378429 667179616 911053436 203764827 760522868 656349949 929213607 630919571 757961068 767939794 829726051 99043312 396982587 560545369 823873925 960775503 966741077 455159821 761790081 561756871 963924716 752825117 763214117 461674223 590377174 290190773 836301298 130588494 534172596 988886709 993238838 877775970 935061661 251823295 521927999 925873007 991003900 410075117 822967128 321827460 861329206 940953621 980746790 240327929 257828618 897642649 929011219 90697900 648521042 492691140 950729312 461608367 969618438 797098444 901874872 141940305 202190563 686986816 688697625 726972268 974200607 77589073 972093558 277528984 928026118 297876583 492635169 206273981 276120686 98828227 389302742 657064470 828162895 528149512 930252779 777010766 857351451 398760430 412869319 535452919 938626514 738995212 962545048 971152690 999862981 902895211 923413942 993454712 999064209 557824049 589031829 968937002 981288586 563358156 882752767 189311389 729613860 125745998 996795833 111402833 857831619 979023834 989776765 845455958 957780447 664809222 751531354 158701646 465792028 468899724 867883348 101571403 794928440 15841620 167930609 98473011 208294094 580272338 977926023 232807699 926166181 406340029 546215675 846188638 897790126 122677017 723996224 495888919 782289499 460021272 942890644 888396872 922049854 739289781 750898652 385250744 532367998 803749758 892204185 468557549 702330754 292881758 337236202 856518482 995472818 927375503 929509462 597940409 797533637 999706301 999908537 936110619 985811086 358058671 675646286 818490346 903508803 510323477 768031292 403996933 443225343 700236400 751644912 893658404 945751155 420803643 975862332 270582431 810095281 544883708 586864977 113402198 606579394 827366154 887338303 395709784 699492555 773923295 883531733 282640004 908703016 96331755 474017564 706142969 712956398 485275565 912258344 347590616 735779771 188543827 436702000 919884807 978667433 597197488 666801291 83880222 475747183 629416614 646052555 341176202 928747650 402654808 883569881 742136583 860851924 821876067 981749722 792723198 995403488 38607563 631765198 638618745 737247345 26106807 904642190 835932151 839845726 520227588 608764675 536356888 616393949 54207085 99656877 337372430 418854282 292657054 333819563 568866899 969037900 904290461 955527638 823945241 836134439 772335674 822675253 547111553 673924493 974443840 979977978 101301377 472873976 139089478 295649962 67991365 574799712 890169641 993306867 831475975 944811877 231040136 608373028 136362634 989465090 757856833 769303622 383981540 533516961 556741283 806724182 73201108 162933957 582943849 658049310 588522752 665185754 120926108 863147893 566329558 747700384 320049965 870636429 255673908 377781992 84947055 871639427 741576129 799727542 359425703 818893270 147952636 453632257 227922167 881610259 181884108 372952115 273366695 964844943 771680101 968428336 69252241 809541284 247060930 952044932 288675682 483875806 807470153 865711211 162710111 215471217 189608576 910212297 695692849 941027178 923684568 936752498 84208980 327471560 839627413 939158623 511053892 981822755 911295456 942121489 728847246 979632471 75438373 956926120 392350876 403115196 736604703 763996212 331023278 486014618 411425795 692630365 666511258 905056492 498471285 920521980 975346833 999775220 79652444 180092420 136440790 138571864 795636622 864266410 185855487 415934347 235333538 481804002 459576674 973321857 548050460 800859331 18065733 406678509 409382379 853951984 538730744 966135649 147363424 369634609 701893546 943580990 490811466 785928492 950092171 984755050 40590855 432155418 676609045 695795399 169410695 624734159 727011705 905830658 696242722 728706539 18291609 443342596 834505716 853377983 272735269 900002794 405658983 566881997 275733592 314785160 571690925 855709378 746863804 900131060 870966826 920732017 719971527 916755929 612194597 681068982 808038411 952414047 348661525 966276127 77440292 822519858 250610581 449170184 984442112 996159611 239682469 777165969 643432996 910027526 535370623 639946894 965192839 985292208 75203187 834220559 78183688 758277842 54277752 711852314 121071892 204595689 188575008 429328825 151909565 173307708 666759778 839820548 505858711 623867085 261836043 939428793 941078141 966285662 977222597 993582087 330253004 725817581 814779905 968449670 114240110 187318391 293842304 664737216 709707042 772816544 2830328 190686774 200874352 509539270 739987855 971732652 652849684 740245556 293584383 635417644 162638247 463806788 54759732 894791857 541492148 980255950 7982045 699700713 479897318 677260834 493103029 948711667 417363834 977989050 355744400 875335973 965254697 992725733 149508108 666005050 995391711 999543730 148532161 215955808 249018059 518786194 162982071 758368853 911874491 916442535 874975164 972470714 599230839 805576933 467408816 864786836 345338352 666409827 342506626 790470735 572138195 737550378 144538319 514344212 946936425 969066056 776548537 831997795 778300546 836599948 646823153 952868616 298087324 991213078 174957339 459580932 941431135 962240279 616750737 685132405 494204568 757022331 232718401 478347652 935531609 984071189 224702897 956332423 97969313 690560774 233735502 690344134 607963974 645474578 273896870 957881814 820973500 880854137 733925709 786270912 415795066 721089512 89277059 410198923 676272554 882009770 7160784 981496959 107969455 713202563 697985782 749473782 494153379 996907524 614246252 696375249 597617928 841633839 937758859 976659841 566302426 595415144 371281722 943809586 737288051 997874662 882674854 897041724 655030976 705518395 22203815 351273867 482774559 994323749 855862635 896945666 143644387 366878278 503595326 581137591 129684709 449665714 85697544 279315926 191983883 378077035 467665571 688849118 89430449 448954638 725460749 771959344 511038212 982882962 965396404 987300192 347936206 830578240 550525027 656595728 275509558 937786257 489547251 871210672 783092744 922645446 313865139 502771034 301346941 577964658 643374399 734011003 15471626 896122013 760121173 792074684 762152056 772624843 834316925 879092675 376646012 837973713 254810272 681414623 645513650 836946331 579159711 749349149 354967974 661048838 166399966 253867183 595803126 672955787 658339457 855899101 640893380 832659937 371664476 416708927 74791412 959047103 623838651 932910689 503800441 894449663 521276893 901924261 859367913 986353551 342099127 570545717 350045987 618418455 29696724 111263166 325446347 972189167 286021181 797430694 245269450 815866950 429588257 652724744 265113890 387389390 306948162 719897105 939360426 992244698 99048577 107439902 642478823 835489566 801263408 896140960 935227813 978882094 659205332 802213756 243381851 414255074 218369285 894467494 533715192 661487735 543519954 627125202 717995377 910786696 726392101 860955591 121074516 234187875 754366629 945169424 14691597 961322764 538642849 694355170 841682189 865382669 233846163 480532236 764803647 768776038 816121018 992637065 870625662 939435655 86599548 436522199 548968783 836905832 816181699 974027050 363309233 491752907 949502744 993565828 300788555 749915154 171596268 492760441 167446509 720785298 380477395 438161540 920506326 981446076 269480427 841890802 603678003 723783222 262730399 290223905 192160704 339417452 349645111 703293686 507247202 888755613 391981436 627253498 869123184 999381462 76985107 633239970 745321297 788748652 552105487 635900574 133922524 928439370 252611135 785227528 432039439 895775645 178926477 580173305 429489908 825375644 642606714 808357604 899744835 910997573 750081402 839675934 537414165 619181040 860861720 936353784 72517580 934160861 96026091 185208758 694314011 978434571 547661303 667147096 530269582 572454228 702541978 734320182 287636638 738801644 834330641 993337321 751987208 838565256 498150826 865034535 43939715 262913120 793104060 884916749 198583619 944595567 156714424 306011898 108804933 793557123 327940224 586614749 819913932 828999320 501634094 674093303 786403179 799777888 584754546 926431704 743036029 880292910 509395402 603189279 912502646 952343671 892648440 970644937 340418694 507587553 122893212 426806474 61936427 327406158 310174450 311360385 727342369 897275253 44432575 641803035 299307610 307846982 350777993 792783957 217420130 540140625 65476178 970201923 137507808 905455213 782289461 972366858 662528090 870333203 734032865 863508672 759055104 847336237 308406920 571386889 747042885 975628616 177721056 695950543 389924738 874552730 828786246 918612654 539770664 733507387 751407081 826211230 298749137 698697989 395069553 439068233 589968164 722449164 450773348 617557925 879109332 897121003 897219394 910927774 786902224 871206462 430870972 781546674 239640627 826608086 872345476 882533398 987086666 995773823 681277133 766145603 769129751 896199934 879879715 984479744 806283355 979488325 991545623 992877566 360476519 680370980 569378015 910176397 693363135 756834812 665003779 793963691 902670919 992608374 779744277 952528053 666034326 747706064 922751115 993648347 69038321 613161308 969148474 972084520 204375805 445527537 151654 43418922 530642954 557687055 94224905 776924513 271703582 456547074 20524940 701471501 789958936 834656016 171053544 272370288 990859741 996512341 604854363 808761291 869830836 936017273 700561061 834568071 189833586 797884262 182630637 774860582 390454274 492281282 175903998 849136144 282035431 960356890 375491084 962426470 514031082 999413614 374391797 719681563 799921935 997156579 80036120 507000087 852082259 904817596 317874393 544323157 222829872 836406777 108447382 422410279 603491528 666458067 889301181 894642662 795916230 934160359 350887360 444360339 629181914 752958027 797066918 903977655 283947589 791754828 15187566 671599933 914446746 954833446 879284756 969286002 991652817 997027442 719863047 915378620 839078857 958797438 734386821 872775288 215846902 937671152 978578386 992635331 921205069 935232576 780849022 988744923 172050029 550658598 666444216 738452666 560753063 881029850 729272746 766614823 460551274 569693430 530613061 888473378 550276315 760719345 723221434 961286943 872817630 979878437 628385858 818112008 396487957 488060587 629900494 985756332 991131673 991928973 119740915 226671826 389606603 684280081 890856848 909796920 612222611 801972941 734243084 860988843 394367224 971871624 614573345 696730525 293368482 412082822 349627069 514521222 69085070 750084560 446222014 711142922 844458174 964727326 735552889 784385913 379495710 767271953 52508597 580613266 285581397 395759938 561509564 794814581 639642097 955505121 70598069 330620149 491246425 612012682 203438716 525837265 726086663 936597051 375969956 881619431 209409532 357021300 662336175 992276718 669699027 670216153 209232095 810841094 686025035 896016183 682722934 765411261 496624330 633311411 508312234 836613656 538141949 960172676 868404219 990948103 356205236 833414507 416740384 697605426 642034045 877831986 873257983 926536410 222101895 473004432 692009465 752137329 688140405 859396249 522741630 530853944 280094805 703502189 129848730 914788437 308746482 459068297 69903178 672347953 992479541 996684892 733452420 840167796 6826000 432701877 528481595 743848323 886382237 948380684 468654637 958016446 543195150 629773462 178652660 955971838 570467345 595980865 198951875 789043493 712888721 910895646 187151534 678540875 540808985 601963442 303649089 718204478 75557438 975389540 398588736 959620569 422888183 516270440 817630778 997485413 741597984 872539945 440413621 595957032 620881690 667429228 90198395 759325336 439999699 761021994 404611222 771061067 224303869 896925231 947077735 985570618 611380215 706315483 419830914 807587667 858328043 938093931 33043936 634344944 481676612 807245887 284022048 538291036 577085941 873712416 642218617 801732549 135041378 425528907 38608634 93401838 194465981 842904718 588060372 749683404 998121830 999516241 269614042 379078603 989156230 997097336 994879426 999423609 31940065 752679544 172109166 548048206 420660046 649119329 126407629 844640121 788171398 893319926 494801789 947266771 925092792 999154037 41780834 585574823 296393383 567527822 667380064 670323083 291943677 386487327 769166151 971600120 426462929 963262103 345999830 586079844 512210868 582630191 615420227 700846855 56527477 378184984 426733152 679543249 729952119 990308779 312961736 876536346 753137490 962151149 899507998 932488409 818787165 950062806 884418123 967677249 724366924 943592936 120855372 796894783 313929724 732449368 377743104 999018890 848231029 889193460 599122030 781186236 719159737 963776051 569967863 614030517 421697904 465674597 744005218 978151710 166141037 431830602 78464227 653357300 566933290 757385907 481744612 621435743 204144186 929171300 639701152 922425122 324656242 773831861 555791980 952075476 991004783 994946361 733370389 909869822 455018215 615932713 451748789 574808519 349636615 998413075 691652922 769957950 96679032 312217206 134334357 985224664 407488678 506146440 771902696 832744241 214837212 475672205 160750379 906343903 268954998 859709050 433384008 931339679 842469415 890847176 117030188 707379407 228885965 425879642 757500182 896247509 193121395 409860553 913057962 927997779 774011599 834809339 187499098 238336357 161656112 288273409 941732576 975694885 939000622 976374445 639965657 710120301 990167610 993102690 93835433 403268842 577706100 811966265 935785671 961436572 588213605 623557478 13991951 935573863 791723521 910568399 542601452 804845551 376163075 389083880 620856993 978314539 732494069 868198082 572494700 955584636 155249548 396383658 615809990 996569239 355295902 796302337 352248636 861851028 749926477 800850218 881596001 911445224 806754287 975821419 312036479 683898085 96185876 606608242 764186442 963479397 323945399 384234973 383436976 440511895 185126826 617934223 648500447 782285063 495455313 694277276 992800122 994828972 640866901 976228489 753665358 900415501 133600863 575545560 137663336 860898864 923681732 976025942 923216229 945911665 728635852 835934484 649873322 710104580 578086465 696833542 344884025 502962808 586343025 588283725 356869259 563037674 611236227 637112125 852566241 925105745 406727440 905507408 614751515 774481726 95622871 261294639 528141536 608099663 301139719 890712319 507945999 968347150 27489543 323837050 964361745 987725181 910581856 980359350 386708487 625946096 242258603 616267564 883139286 999654043 781635038 889544053 476834649 914969949 342213881 704774307 936551108 984761179 107399606 667651623 180038175 468019122 840682695 917797146 28765507 621905465 972535814 983747809 32480752 129294331 701258392 720830068 200838683 790065525 666056849 787496744 303042712 945139833 454057775 959694558 768594580 910421349 797243087 812826722 548323995 747537583 604090979 729657554 623412964 754830669 299107365 510712045 60976211 295891975 828215815 906658459 154946994 879072606 886838162 974641608 328918084 972623282 892866345 985326847 372639359 384061464 661351606 817051846 919271559 934249512 700359683 807864833 632406354 759473986 842749822 847287025 502670915 711131014 102050324 958012467 690759610 797519759 115347975 787129083 519324356 720954825 777612093 914850758 841673811 853712373 755742788 998176666 151336888 689061802 998331547 998415234 446404166 615481604 575802553 914574809 275699362 662459697 354430890 521618411 705512755 940537105 210666806 942337747 831844899 948745096 452776853 636686047 560856767 672124135 423439057 782187913 179949972 989210699 919789709 996067422 340230666 940121195 454472095 540431445 839574345 888579657 268362200 441003035 322052690 528917905 725864935 968468323 529408661 954460825 867518351 970836698 431649441 527479605 263426870 437295415 152327538 457760178 778130468 826192642 465691658 879921182 908523353 934938850 651112023 668372585 137449475 284749968 328413258 478471879 230250776 800992346 424199463 563234571 954143223 967381679 444300495 458786529 510883826 605895211 587866861 936795695 120234802 312540851 825170109 961179018 774516535 846227502 52842478 916471591 758013631 984003028 260629687 552863665 327994383 902871067 271436417 737464662 826889569 966506347 465342111 636214674 688531219 754710690 176500763 850027119 972022549 994106666 282008649 843489801 453389536 711403016 207990613 242375072 167349962 930358611 615130324 647468551 220068791 334513480 435932782 668810171 322623663 820560933 39519223 980667350 570469434 908135962 242837595 346821923 388354156 998554079 818657425 876498622 100271928 330121827 458697855 620736353 595301667 686115154 456345612 920386938 40666970 528637283 501920655 536648380 87670462 595089156 119036314 394876250 940796352 974948029 179101863 198528376 373595327 673530146 612755841 817066332 147039331 519011759 63228908 435443388 931220834 980250994 345675888 950635912 737459115 801909214 131048563 136286568 485648050 843633843 850730169 982462585 587675736 727643403 195605420 437768260 952545347 998802246 836429455 917139388 398144964 937542134 693330702 734429303 563540290 653547402 504333671 869933548 894029415 955955645 801068041 937787979 267745614 772884368 986856082 996626882 338933055 935866589 348779310 623336892 848380758 924312815 56487788 848098144 657063866 955059004 450009246 714821598 224778393 487377160 635025962 994221958 123982773 797922385 756260575 821199849 965049236 965571908 660027836 693241841 369429115 519080246 239771516 863587198 270950984 902183834 827880158 988469511 798980966 966394151 423191351 597178940 465659742 626422315 185846656 510654275 618589368 989874794 790516831 923832877 45493316 302285274 246989281 924700479 151695786 425303926 276270100 832980649 756642734 773573159 96578796 251929844 19504491 217693104 66663642 471801874 867083274 938044581 803061203 874993493 333348743 403438446 694520206 948689127 581483580 916520855 357611480 714340521 851170894 999580316 524995594 551651861 497322986 528027384 909311303 958102524 106594895 491363602 127256087 745917704 750239699 873495997 441357333 987017995 306287313 753302452 1389055 50300884 572173956 632681325 817396658 898371229 446429044 826359454 665913345 831204182 911832584 953975673 641077271 977818613 434785257 466749677 405671026 408304463 640442434 865016558 43391320 831721084 426159322 961652505 839954176 931478143 990915056 998890106 668619 285901537 229673452 471254724 141867073 143654489 761900402 766958690 927165104 935959398 342947100 937501734 613161817 676542919 492317848 755059722 864331328 939025307 682904567 807945568 234785963 682673854 153499596 738066606 715663338 875685422 906256289 917538500 378524130 922447385 824197733 833249852 26595606 546576454 453794890 956984291 756864828 817303562 883473380 961422550 307921772 937715805 308891639 950552039 898867183 992954736 4210352 431238881 946314061 998923029 766265163 812136561 68891497 401462222 974380140 996360059 528324500 984794004 802860952 908761725 29771754 460868968 966776299 973510740 591314885 756946133 732266544 746557319 940987947 998890682 112648250 481469289 197287653 528977584 997007047 998299181 42769694 643177312 410807816 434871705 577563536 795288778 261749552 948104348 208921160 456429015 224289773 832523249 469215941 993066487 528744752 598976975 276775436 447208531 785048706 785513323 79080964 926804300 839246543 940015450 923985469 968764652 880451040 990251137 339045512 589919024 154801105 732470541 736224052 985568524 577529513 730775809 807071616 937160475 232596272 718122526 909361802 926712381 15900988 23038428 331954227 373305798 14211036 810797946 53707906 147164796 651199281 740103748 212384759 368343935 954073250 970862197 22851585 501610646 776379405 938532179 435381660 669906287 815221530 856641278 897848419 954246871 367704147 767471326 665889605 985577497 73513890 848809152 551040708 743720488 287283188 364797148 420338079 865462133 616231491 812635515 608036550 998122987 429297056 639669393 810220385 859346515 139433550 403171766 578404008 599320025 632599430 699794987 687316447 971872362 452103557 847217169 759748724 969779287 63832792 81607886 302919825 728154642 510437445 710490908 117905876 938811332 936213012 991555691 855205263 915874989 389778344 984014804 566579265 987506769 546646221 552796516 766817865 916823436 796889160 846327705 693654533 727492235 76350171 576896161 789919965 812558899 990644732 993896751 574985732 809326734 778423685 787526105 732768609 863114415 458690295 530506415 466547253 603948536 257266254 876042267 631357959 773121854 662692098 812130323 787080674 823899093 182317650 207296257 525784254 675491097 809442063 846758750 681035722 889910620 988843714 992434129 23887265 509046335 502690885 591019541 519802081 931248675 50140417 660264698 737591103 965737569 318624182 416104258 759648264 784059099 208042080 776819021 311324322 741498671 681802134 757733267 614797440 763071913 626819865 944612190 709476963 979458000 513856382 993935266 442033838 723599792 705007262 749488938 77890713 507459245 937075168 946480670 223002076 569815262 588314157 764404089 890066720 964517547 314390574 425947889 860400597 964387785 482320734 750439599 372526756 641186584 581126483 807266727 912249190 963630623 585867970 734892014 884404854 891223507 315026674 898246005 965857906 983443258 25191360 126262017 252035472 270242639 945088627 947781706 452442113 691682451 419133305 548178074 669993103 707685685 412545429 760213619 649815021 719353805 625023977 732909877 616054186 806731272 223296126 940802949 726837428 794305701 232958728 315541238 127572518 935514410 351413923 572810165 935215588 940447725 84366128 475063126 876894829 904803346 307952777 453720112 360777640 856021355 934696679 947075679 799302728 983358963 686942385 978783980 956246195 995058761 492051047 634043225 240504342 762525259 857675103 919496620 813510790 986918110 26116358 749009413 915066915 961753419 380400769 601959072 651084156 800271579 470270474 575091066 866141636 880955653 544049913 919304210 203890048 406031249 568930653 976553817 971787203 996636894 137448345 434736273 374969364 512380975 624939985 703941344 117619662 247264548 243280897 905287371 329989865 989526964 349911696 690457857 388359057 406270389 734431143 932677606 754843464 947261633 366583059 813030622 442950841 920763117 360319166 521173843 177740144 537012095 73561485 480803163 616933496 739830944 705934561 839793053 814994313 862008937 543926688 562765207 440658090 527534485 377637059 733172445 191715538 907416979 659499876 695623831 204035986 778753355 690479380 883579449 984040136 998042087 201520660 455328847 857438274 868744984 601900332 965801476 590674418 648221677 62193741 810803573 950954639 980103963 131116963 905587852 267216616 362127191 587846858 963304816 419755201 912874349 497486941 765717083 273923003 517862028 460726077 958289550 884737089 965122961 233179171 317805876 761525384 949659412 599371695 709381110 938268864 997194219 561365947 988483179 919734485 965066081 677462277 886296827 929278112 962661808 394703175 733302602 153250819 272514153 19831620 46851714 177327063 500305323 843417661 904479824 142396073 369289904 513889443 831515559 461546556 608479448 737433707 785212228 55998732 896390476 187904894 659560164 374179669 918317528 240310775 332756840 192839481 884922142 399827742 923792240 6258094 594336506 3364149 844558073 38747465 214606111 465449652 471947417 393296275 809127470 297004154 688612422 684191499 778524748 775103336 960156949 697947711 857075446 673790504 815159926 153513574 511733752 447781431 988116775 766156821 957163338 136600926 172516780 312993740 634358230 353938722 672767206 640599379 772073325 965582925 976948743 309268118 838051650 190828716 401542326 468764598 593299567 596131048 804405232 111845901 212176023 260080017 357667169 789234069 951361292 233236502 836180786 695088109 912291736 750695371 794674596 473185849 517517807 668173625 756170374 667815982 846427665 944678173 946404414 232601205 769008288 88502820 345200618 929011629 991413991 581831633 845262315 537316904 701405937 703005752 912104353 226835647 673260858 240078065 774064655 495299702 754641041 284392369 953128394 518990986 962453601 821039350 949501928 400670289 804674339 325975806 854626733 735946693 760919008 894705411 955437302 401767700 826216379 888708898 957789350 129602335 492337316 212092955 747347618 381414725 918253168 247901453 996729124 750159943 925573567 82097958 834229064 423319153 437303452 14799257 513759650 963147466 985586803 233797221 525212349 474524289 857370245 621917597 854097949 163151689 348455029 985910452 986694885 887349498 962544452 993188655 996803412 731455658 882364016 43376692 977732405 328732948 805479527 395317864 924593585 944343542 960712933 79972765 887514842 790960953 941804465 926117943 933961136 447490634 775449180 333874405 512715849 375054805 494212724 20442428 61331934 853442625 907890673 892550052 962859563 246540891 903419286 377936518 482019633 786755551 835391606 185363875 766280946 379602063 898989197 151329527 873567096 445072723 814542042 938104488 959672208 767701364 823114558 309562984 868985451 780961859 788459678 39824250 544976792 686115264 978053405 643757675 695332541 172507966 762285741 380940713 911427483 780398569 940541749 687642418 851451526 47835985 373652691 183467723 804167620 786575654 985715897 288898168 719998880 773434849 993859612 91561398 629704463 899874001 924627126 223138925 269410823 207771550 908862025 851314136 914322293 134151401 432090772 714462423 722754689 126629333 153873191 663393596 744920652 496129179 847981273 326029265 761298943 635667466 947092863 171492142 433198572 121912492 894803632 559243447 739149653 972701882 981777584 93096039 663383652 873791269 936886437 75742876 180830443 408959020 563554237 687841051 837014148 485872022 591087417 681729769 894158941 210641241 215254672 830747999 955315466 56866968 232525430 787369172 977360213 920570054 992666473 247774209 709206659 377629007 939068358 405187326 955573242 24390697 747698892 488628818 559658192 753055164 926720934 537991731 795642451 391337809 944477063 710571963 776477509 349550782 639381390 406979763 508802920 451374682 939906146 537900805 942093868 680644847 855388664 35061014 135038972 449491165 770271583 565573115 606948087 852339615 866168305 442700181 480241235 86766638 893504382 516477389 598974304 683834484 751598287 932831148 992021821 527195846 781055805 81389055 505890313 29679999 793059105 318694088 399149656 766145414 958953316 164274459 440679786 421630887 479458438 714596234 777742422 857287091 956794042 161723929 628299722 930577719 937578041 372807508 489270198 750704109 882465951 161876326 604843151 771691435 860801982 357141757 716888211 654999841 782459566 66570517 778120290 339204699 500134897 979694985 985801948 666884637 908704241 601124527 799443523 939704637 946781947 408659716 871555793 445519037 834818833 210017523 737860012 588191646 841796639 338836377 578249666 413341116 968902907 524863840 771751952 763791307 965513928 542804752 867003358 215006937 369272220 172072302 278481052 520307162 737622149 84767594 584599716 679108356 826377209 496882274 541494148 486467335 984811713 634142686 761261957 79176307 618260767 892927562 923620202 953014432 967551500 423254937 478734318 826572669 828296926 100998836 793511241 460564780 899068225 982115766 989005656 409290748 420156493 685914075 781430191 575155749 970172521 891383800 915212558 262511446 443619413 410785747 450105698 389077830 571276713 387520667 595492840 818451827 848760993 859774090 982481071 455140754 782795386 286303428 675574745 42507484 195076604 174136792 771328013 796313554 897595204 655692835 996969572 465378019 839272622 214080898 622355478 443303068 907277767 299486510 848535876 660904489 820502810 767767903 892577493 302871450 893138977 239291215 402640212 337664734 618227451 492052274 963814552 707599884 966099047 40637767 389180016 949998403 986632399 885798740 968857127 367465949 736881534 869998540 895060283 356037685 845209678 208154420 672985594 310146232 854973766 115225366 736662917 265282276 887798534 18241819 25828551 583635439 980327859 268663296 457757169 849104576 880069036 101045259 697482418 882652411 905509141 737219732 980135236 592124699 751612097 997526679 998583538 171023895 799415538 496557248 897578585 800064827 815949607 698580873 875441639 680739077 791250731 807870122 835197868 508715195 730087559 909429873 986010084 103145805 261253924 977911817 984707281 648262249 713845355 381138487 884208172 509346095 766236133 574946782 613121007 776255234 831218739 944154821 978397919 156296665 631509542 978830731 979820923 203347446 489476134 985341988 988755619 993102717 998505855 995049508 996320287 552321143 801733228 196726471 503954472 608670097 624707141 660098118 944304730 77962547 378528343 451419827 951941410 937972515 966261896 435242920 912826449 866103938 889311141 562715637 980005499 26874027 110799229 869172786 936255711 280682644 311334257 594713082 986139651 792459116 861095676 746984043 967401856 714048850 746549963 738820082 812331798 796207723 913370991 526238301 603785604 911239907 957548624 202741859 801805772 912477962 960213989 606209053 841284306 577857209 702734923 526547308 740574271 610236781 626896138 835139680 934361015 649089673 919825607 550170495 584406098 466704461 657274584 845901081 863689821 305925110 364316619 229866388 629543480 301320577 599632283 662306768 950131420 849002284 919381177 231853925 777634870 491706749 737762216 593339714 635819089 659663463 989577718 456071371 712890619 82191649 282730232 824086043 852005383 230720310 737496454 173084854 767613942 505492297 528805190 262324747 504541519 309442495 671339634 43599493 329320345 7605060 321140276 315095679 800439484 964605971 970428556 164109546 675823793 649650854 778249243 717350336 813346681 517345961 890093466 464288407 805501885 151425160 871994809 701903770 994615212 611353539 730077773 740261002 984426322 357737317 508821485 456100525 775864734 884790819 975633079 36404760 576104716 82535841 439998348 470074011 687349832 29943138 545144026 582036254 671590710 305524434 545329007 200944397 800055443 169172633 436492429 841542653 908155604 919106662 982425914 343815357 437453623 637592929 873922086 555042987 715350311 700768289 884648128 510191514 591075341 508611324 691383412 51987211 311340754 442641482 998181826 425717681 817798988 93874112 274314539 742493131 743589979 769282146 892508366 293726750 853595022 268422073 543166519 759197591 888786989 407866239 652117333 51408937 138732677 994607868 994790086 865708582 895161059 560296232 682272054 603173251 639641974 932332994 977163139 712194969 815427331 747359751 758918690 409871009 751784874 957803713 998117655 669855841 863020337 525373078 925616270 275246723 739229415 861824183 922125045 785981465 952756348 731206670 969381219 85182916 728028544 394856555 907848386 840002791 911630155 465242934 833695276 347750202 366094285 60975110 844685352 543660477 769263198 93392541 242323978 191864124 213102505 386856327 632308092 345305489 997929266 10248583 803401632 634632923 886394610 967700149 992575751 273103407 958549662 40626129 683288638 522567650 656084600 198149689 768892003 194462955 341208158 944114256 965734354 507667567 814905413 388300036 444043619 41274002 700086342 127395996 853365861 282992128 359255295 147175298 613268813 117325827 609935240 284098857 600418309 662585793 993858331 137097188 600568627 267491527 404767324 258041785 438070628 391388448 830986873 895912939 906457055 304285339 823700831 873111008 965517511 354798216 424742870 408578330 818667371 659394819 785180282 828914118 874545715 668048281 953534992 295997038 360891863 231706282 771286656 577442724 863891681 428174429 963090691 820130421 967729260 235969926 767033890 196293245 835428010 886398426 969425441 729602099 800698588 368579472 633670891 626662061 654481058 705762932 754843672 437482256 843623517 157948737 971776791 368481571 554706933 865114115 881733956 377297323 701011013 740364393 868104360 656111733 780119761 666750910 680859894 634641830 702768866 220416318 355186352 181975078 946979779 432166306 789663142 948411955 949009069 749080363 973438127 70663892 992025985 482517451 723429041 523972066 957693887 947818831 964672800 472695682 518192157 548145804 888099147 216416359 744290536 535030476 628337088 153185994 633129870 101775083 368484122 250854132 689374784 103443577 230685708 278381284 746277315 434607344 660128699 947188635 947884837 841690798 895159405 693664326 708130551 837391384 998183805 822943589 881390608 555192187 662514529 556930911 783819783 329171338 594175449 380246068 876261339 190578006 710105974 935784861 992546181 807994323 914030941 920194587 999881253 681156277 689420389 726475398 834028133 6039042 460287559 686951204 775612045 476664338 995379370 371685192 833516871 264754702 313151858 410257739 739125713 320035863 863667163 387940642 782000655 224014179 276961604 315536562 483615447 30798335 265947940 79045619 594219022 123582914 941405668 451385832 872096534 390183206 766451143 909505161 989979388 880911450 916316198 59077149 768556089 960928844 979002492 944937343 965767398 665966432 901004729 847044761 859358756 415544434 983267591 380029795 526708074 24281324 919358060 754921706 997886480 744581143 901788001 625946609 715493793 62226058 441978413 26402044 941711866 677684025 777983270 307625459 664537756 824540510 981765402 22755988 38741498 344075210 700859255 507325297 860937024 712556543 769264430 128951727 211456711 936733887 997858695 589975272 962674789 101541248 731902999 439048457 706478489 665354973 859894347 784895629 830894186 411071312 486937202 381388098 457323440 404777675 711849531 213513795 422091967 803762504 828328150 805991444 860602261 830573008 984924826 290178104 618537468 130259253 255879297 188744237 625556982 928599379 977867272 192035584 273009169 695776577 773762576 685284437 720629844 834237516 980991517 711548228 834692984 950937985 951063959 308705352 759494169 684384930 952163440 297300976 493620945 375840515 513994697 654986508 719825395 547583526 635892489 734550298 987947428 867574695 992166788 622325474 730529553 701186670 917751369 869846594 955841607 863481352 988145616 52211885 469380736 279385465 401973312 556145351 654837700 507155806 838355979 541671964 786342973 872759935 988253444 987517115 997393670 257365507 600483542 516160278 727215510 743949473 778407686 62292421 418304308 489586854 994018176 355559796 379859798 754194062 792223430 566727495 920552851 422847413 674259178 558546543 801679392 481918728 714755500 135088164 215841598 892100241 984067913 440000286 614548008 202418779 682635487 941090263 999024408 957927854 982262793 365549654 697939089 973618665 995192527 829372962 903080181 402346586 834151287 865065976 865893788 81548690 261894239 365011038 572480672 795411807 812034845 803451478 900661268 149949418 305837665 53337057 512079935 187002603 865178636 377759687 711177602 735100149 989883129 480482083 882994588 445416320 970474799 771726830 824153394 491908359 697158165 120764807 220581614 823858750 852224422 558581803 579080002 829210551 927118784 209649621 712751190 620188801 979577711 147241020 407919764 52795507 645758507 113262384 153560281 569139124 813963927 444626494 626254449 453634227 876931288 723603169 815919641 161173698 396054074 783548131 850349675 333922050 744679248 454687850 715187813 795368773 942018753 234399084 286524248 313171202 354572673 823403214 954060157 313289570 748744201 863417142 936465564 40535553 177821671 110871011 371324716 960372464 981053282 131236480 599136275 413998309 744151991 710010534 950255697 487917035 604275843 739895174 832816551 304789251 792288946 218946460 352100695 979289290 991914098 115373070 746734498 715620149 877390613 208975044 228896473 442118638 782546930 703596283 782268329 524909536 958621988 791973748 819916590 775721404 776228808 289672825 580576994 551820677 843259071 763958195 765539412 20606738 816757679 570514557 878089899 890286016 928838118 385799419 454868795 524769471 763638874 951472521 979908549 465058210 715757788 570708737 681118133 908518092 931027611 312503399 543694355 552228415 609284529 988798509 997290258 467671154 956195183 600850025 834888752 688377484 716045533 866755698 895331159 844047364 991493913 157282956 496827332 156455231 396585047 528268403 572320354 67488111 588297517 339240886 660811649 894344144 919248785 822020543 990738223 305357403 945519351 851128753 999359027 15853006 124704498 222397793 337993198 71439887 767426487 739217682 838877371 593006978 835362181 499899777 704835628 646294658 881030845 531488629 858464545 231459577 938677802 109099591 757256634 12090206 655451796 846057496 906952303 610777292 867342887 823309214 871492268 574992142 671561271 143368440 966419474 220502474 763602633 503735417 780401756 113187689 775042191 787595372 946706350 4142975 286899524 118874495 349334117 931551432 995561697 533243402 788477925 537349266 842051362 89778442 213181990 865098790 910817165 131451459 591975169 404304791 490043742 677054455 856225956 715653800 995213878 577429067 792285905 448482778 661244107 524871745 527775343 881467188 962576836 719051853 928657902 526615685 952106061 599146776 711650829 214114636 697208942 710215702 760729602 111427683 375820109 86959280 574404970 698247146 878336524 316646028 802326499 901023302 963781132 655045701 716318676 960772994 989209326 497100698 641672432 250544662 958224268 509592933 831464786 749205885 948867752 993272888 999999058 284847686 310341677 28752857 337259065 556602137 734048108 370532579 976440103 351291302 999103856 232506363 624017420 81942400 663202890 969985293 983308910 891810258 912332360 860992484 961702535 306434362 909330631 586664596 907875258 666474281 787863028 705970559 803928662 241554632 261190361 228399825 427348404 79322191 876721694 7544123 474579255 358508043 798956821 591523624 693556407 407530674 757746794 580258642 752587331 664521698 927842128 426404828 847471879 364397416 870845732 778983517 857021542 229986811 645320435 207650729 742443445 323896550 489767776 283526804 934795689 19846061 498467125 4468266 500772679 351733798 776029335 313576460 565735760 90256388 348418499 977995178 989008438 216180490 493316302 602398608 823598580 602718597 769943198 174181001 893262624 921929813 926332222 515542814 897729906 446507514 625403427 52945126 188039209 444610199 586279724 427139850 804629943 441671584 478536184 349408433 905149307 750240379 820158572 585720358 876034247 466384174 709370148 457335218 544049577 937668334 963817979 276900477 433453657 738466781 970278370 658409936 836173517 610822044 762523787 201880580 226711761 400672503 999119554 901420302 922142899 781248551 950196913 871929763 904480194 142678312 655619615 672680855 830904109 330422873 633879166 561838824 581040371 772732723 832296172 392076422 985573576 188420601 795715602 891672602 940401258 745529273 995072407 143493571 812454798 220384655 248657742 522401184 789432636 291097651 505257316 795202557 952397497 999801635 999872409 941005996 973663475 470032047 730581812 402696714 676065803 541213585 828987418 484183731 877092535 944128991 948957502 843752053 950515796 871003758 939486651 359244372 841953897 724624229 970960924 135345045 821831080 442556473 523691235 362370199 476491170 41229014 363476983 273307917 601146698 188219965 665466546 481060336 562604906 69053919 594006452 417295224 511148723 112026269 527781833 300653963 456102188 74370964 325376098 631396765 723145046 119728704 850192743 774934617 892828433 603571525 801335659 611163653 755451489 558464651 965597787 802836685 813505654 363546317 811268665 976697372 980035407 114448143 927059171 582624721 704180326 353204155 941895332 947745328 971040682 819581012 988123102 253105921 324132195 606231232 753198580 766507557 873886831 37847718 353446230 217301447 588544134 986091332 999484379 885884281 986260037 848681431 961689249 259656677 340448016 8552948 737623785 115115365 273982708 225761244 843646916 175943309 922837910 917695146 996801349 74421129 433965316 626402003 901398376 679499031 710569893 186954245 722103225 744643032 841099091 31325351 576648984 392919924 739414518 52172978 359760425 946762910 968771700 701514613 941570930 510160911 980728789 883262005 914905206 35595530 446844014 108646100 649583692 124763249 600384470 13829923 734086174 124580287 158466497 409572396 529358164 46998401 249448031 758138526 991309097 175226995 969732658 837160231 951715263 711469057 770710686 820918361 918276758 410522357 969530044 602399997 917664759 319594308 550549523 228250994 801919967 635494004 762907680 527073190 788829336 901235712 977466264 607316796 850735841 708777841 941546042 642187440 971385276 77641552 896395955 774097589 976687733 601011033 686662489 9413760 261988295 560007546 982729647 42215398 878164809 107706345 264472291 673068501 862659829 689865343 889331685 518256686 823509682 933938079 961570167 85959149 133240723 893335629 956996460 355187391 581867979 123248249 595857940 433395550 641600878 13921262 782721936 237804318 278036275 942264911 984892180 508632525 802071979 892702434 963243666 910789508 917721436 809877699 987764343 496671046 952972271 596186497 885744351 12712464 508942898 10627863 328289193 923344911 946232030 776979875 850575613 670557358 807437092 104257522 682540948 539223508 693144400 560011352 737610579 555938462 956600550 268635307 704607850 970772152 991120166 774192583 848249686 987568858 993239517 612162739 657412840 33267304 668325193 620468124 865384694 76557984 216330435 13042244 812563666 167087610 923719017 886583499 909346502 32949169 634423895 643093358 873231201 244367701 759488688 300087880 905803115 762163175 953399246 41208028 582652893 715930904 988973656 981192291 999203498 349301628 818470701 594505528 982541595 661484701 671593805 865358378 880108076 711007225 794054200 395499919 979472528 727843708 891078659 151704069 540769518 451356460 922063930 174872489 362880814 588192728 682198249 664138515 787216937 184888313 485129751 911460472 975479868 568226081 614667044 749890859 864263402 318534823 428911999 90247956 881534482 616941536 649393130 700664871 842808929 171459236 788991728 395828163 594723686 127114440 308326852 293960289 572487779 704746170 927280572 945749560 950759484 473487568 683589500 358959034 474302134 753481480 754330251 325027777 646449742 873960604 997048168 110312624 440574329 593893879 610524102 109800273 180948231 610234295 719763107 505743890 596399365 841708029 895633109 656328040 941213003 925743649 955428935 829327739 989649590 454490328 542405470 804043775 820133136 56755774 341832558 683244529 865778923 290615255 803405541 139026512 421141088 935192158 970572502 964604606 996933163 458504451 919800418 395768069 612090813 196701597 442092795 665389588 986616457 137861758 231599777 208608887 777009578 825060623 953531203 771692073 781754653 397835985 771908470 516524669 558084090 550300482 759533289 674317171 999784110 416029841 592645889 993080614 999603738 280086728 940229012 358320052 545809383 731274608 762596306 156387008 604606198 609472231 811235833 19756512 170239229 39932574 565292899 48897437 934786490 945357195 952138486 137597968 719567568 263816229 757212318 438369705 510093183 167036869 837192691 941945727 994341616 302916285 376025926 766497456 899084096 219853228 853141886 686574679 767056912 226709568 439533263 45068595 84956891 109236051 113835034 596333810 907734861 570538888 834456509 446057433 841043643 386665543 747822150 496398674 782311421 140575825 850020731 607759004 999283454 295169497 648908088 683535271 744784865 950399906 973568195 472551087 740973671 61545859 468580166 147295178 698860636 893711128 981877462 613264132 836962077 922100168 979280869 671077264 820767019 918655389 921347556 358210387 859306315 512529029 613648021 80210811 165804814 56415274 706404096 895046406 912478635 748713556 867763971 355087858 809581994 635533401 966470673 575463092 575900938 235141346 963439635 46252862 233611424 666684450 842077769 419903449 872935309 61935268 721769515 580801483 879742353 832544578 925900387 31484899 36729260 279141300 861835373 275369284 544486818 305296586 558003047 831126769 976957001 334862015 864720289 348416651 517161185 993041492 993893692 220747115 668340286 647897502 755100673 999634208 999813053 200307349 990054894 985099986 996885093 28975729 955871446 591974893 690983914 777777891 911851650 112165850 277689297 439494782 506582247 859270679 963268152 247090327 859424463 569974247 650612463 272058806 876025317 951234475 989433098 281201374 391693651 740590143 903620845 617591675 706901578 612817418 764053948 541666563 899172396 996994083 998932310 893114944 958166559 726491292 749190209 848907825 882645561 513466574 811045936 729350768 810206620 335753191 455349881 650903094 742923868 153938078 428941656 269228054 856666600 779619084 892485688 42783595 757159085 423685442 546681250 809819082 810951962 60569850 965492867 844575232 891706845 844962017 978568471 129611664 763973709 537403710 737950913 428310745 807827708 704907149 725019789 574370089 745177800 248615816 582687455 372664721 872997202 209909930 523188121 682128183 708847774 245887973 764634681 926183755 964185553 279627305 678410068 698882981 891545849 935896490 964968187 157375887 611611184 882486266 989777472 617219800 951015176 290482785 603657038 968372263 989329185 299503277 669694635 516079361 780246645 550688059 566904421 618802222 630889886 816307539 849461561 246384116 313120635 360726350 771617661 715117391 986278023 914163487 968979587 984213746 989601900 180626742 895393774 948676272 960563444 614164934 834055473 64880049 633728071 140460549 850497148 786068873 906358824 326288972 978031321 182228682 687176908 619117108 710126808 183137597 694265415 308908062 999488970 903408796 916072829 381321423 840327758 790034124 832899755 443793614 958415757 342496053 939946948 193779564 900981556 676426496 792350646 782072773 830464865 759613196 843479868 302558950 666252542 377800496 810646843 117119550 280594420 199402813 584276563 24908618 782174844 648677207 671810627 950410443 967460439 560967001 978213687 700126099 931259298 654499026 867943470 939419428 984753755 991613666 994736174 181886996 948608948 630478590 900813447 870299770 996184451 904433869 945445649 176598413 550563982 806860895 982838826 187435272 210682699 404538246 863760839 372211650 848314207 657921775 923329799 273284273 651511566 414565618 907219960 852289241 854112326 733876774 940342353 789262237 948015461 425067952 595764123 945360763 977979255 530976166 955137831 969148958 972296669 513772815 735141318 248962661 459454549 504291326 628109485 870648299 889344509 880816818 904128858 629208711 834875863 149658399 580311792 840414784 988315644 684076569 845875039 933939797 947111809 296127901 580657622 635693596 770198338 389944585 629477128 931774627 964226304 459471863 665264961 480292709 878570216 512323022 994535899 894067318 917971186 36501474 736214807 372721170 740413609 689611315 896018503 891839052 910221753 929641383 934438160 263504446 591072113 670917461 709945010 664522886 750022715 500166667 659568821 714049285 961675070 484585621 896894264 354863194 992741627 245773873 295187952 861023072 861917848 1258310 90521487 843371451 932644783 32807147 912878685 958124572 980825942 555456201 788993346 700516835 890059329 380352703 516883963 165377907 292465784 242799494 984978096 28952470 850009311 842079179 869851626 973100574 997296643 341261554 850149015 757701914 830551037 898983284 912526065 72037539 626056501 146860765 711729053 540843301 925235537 130025059 538803969 765082066 934546983 124343504 941368146 389328302 595795822 831061015 959696103 313343952 509189161 734175419 879197727 638106356 906333238 815717236 988929214 535291660 536494901 831875832 886115644 913703904 963711695 95523320 466127025 149278876 861887519 427860831 715412897 972808271 980479205 286680207 620714195 46662264 424210561 468520039 596233011 811064766 819166786 49657981 890065686 499911441 556565730 532288793 857470100 103489520 715326839 485920000 619694829 708079177 995399223 365401252 881565599 143531062 675165384 192117570 627355851 124894670 709533758 658650669 956670550 434293341 525219839 433207385 763623929 794441937 914786919 429709710 884567887 74036627 734232181 536579455 733765193 456441781 711643212 758521519 982358825 583088663 830148256 677567666 914194679 12782581 80703475 108211002 299866687 470842533 927038210 261769514 670122491 767517120 981303118 587047209 838440448 436367147 996379440 122918709 629273784 765825372 801052500 795498225 948866054 896906693 897046060 145350520 533935640 905324346 926224046 767455886 819939756 305234819 979026657 567361026 882178392 760497638 781295989 152469434 333448975 181967647 380004157 886506137 990258743 13191825 696239789 56324315 493023248 550694376 648441659 348229340 807974208 408973988 742824454 299522715 590940211 226610761 537591859 764443151 924779954 806987631 898504966 580866299 582565890 496561040 778690372 857822088 993999304 858051067 898820956 89093622 627792589 200119806 946735692 832245286 936291485 604375187 924075027 271407782 769205182 447120436 860537935 405220237 919497826 774871691 873112729 805434816 942383334 923296452 984406370 619165973 892479288 172221607 705949646 320134650 886615779 640919734 932111331 860238830 952183584 539419946 747045808 531021517 851279375 941545878 972556928 854716021 960687975 309147639 638543442 565042615 613992500 767993992 835041780 314397169 905469257 28161111 667405507 159930744 909931281 598134525 993153027 615035822 961520461 976976227 990298278 688874500 869199381 438220060 461078659 36382152 487453579 559990508 900794570 712474746 907542944 907267867 992978611 734602970 849949301 525846337 827261713 931773392 976702040 470993599 587890487 260161566 398830702 576645801 636750799 693947899 846633462 435093063 851328723 497872468 917585876 19993324 231081520 567561634 598195917 210834305 772111751 300787329 710791843 141834647 810475486 356180783 764598355 976747610 986228409 740211920 900161194 116327625 338523774 602870395 869587195 377782639 859885463 349460356 406139111 24039982 491985650 487299033 881233003 287175313 388901648 750810424 951806591 70095821 503021793 37992416 283719585 822614567 848214304 780409945 979106674 144353058 771632775 864804632 953648173 779703233 817967312 303075678 352934251 352028379 830943095 663692157 766115214 135908888 454386532 864495519 871046680 666179247 945358138 683448462 746874857 254209875 551496698 405928170 760065442 474102400 996704610 256489718 547333917 549170062 615180594 103119938 976047961 406234785 723350886 286291570 834459392 186379233 304833500 186325021 885782864 799041642 911056379 514662975 680923211 565426699 841623462 202119864 569409421 244182402 713127282 885988797 929742521 147209953 344217867 764725521 929981584 522157237 909662059 819772334 867285100 837909050 906015353 26475573 738390502 68004577 408869338 517067100 835709082 389110312 533660506 252972970 376322880 405924818 726445943 81937725 339909679 640499525 856948750 174321132 977561373 713129384 949073826 838405458 940108038 924594791 936207338 496444998 557499773 926842418 947242712 287709130 890978885 129733700 632438754 440250834 595567706 219262470 459745299 332968926 622992359 206749548 245040515 464485870 959841555 399069585 966939428 320124167 853743188 567636126 624395109 73283526 544786706 850106274 901876439 968833628 983565122 718041024 818095111 172693434 773096105 915906317 972126796 647782661 733602865 379367839 424755147 946154314 985559965 600613054 788562977 86618015 530595875 68846707 941526650 207805293 482749930 258526878 314301758 536947795 541836230 444288456 897978027 224652489 310678109 580090988 785053986 123270329 597604779 7155660 709792105 686246337 711246972 574307875 759657914 776351642 922418251 638501406 716107585 197654094 626511480 662633389 915176759 939034771 951279945 634275888 805423482 434563927 564039227 218960748 629283402 21900524 524497487 432963116 912191678 257940958 786431846 137042394 953466886 501610838 599811858 757351152 775030167 776453918 881887027 154452313 698141612 154391299 256278877 875202847 982068612 607929114 986410388 506968692 791712507 760405193 888171428 107413579 792202376 65935076 424738129 733994042 771965187 253361470 604843668 188504223 539537766 759598718 972001130 102863856 420007450 819400723 923001719 407210501 858653934 607360394 808855059 515718535 827449402 571790364 739075063 773347455 968291213 194176474 672876090 228737242 600905403 31064870 878384391 470795355 683142566 195760294 842936925 364191941 614331141 663733063 967861263 181157291 879787426 669781009 875837672 630101546 680079452 291722067 940207313 792637723 884799385 128390429 664895008 630054026 716873975 964609101 971482430 642735774 815720277 527064832 699868450 541942115 942848770 474182726 737001548 597108927 602109313 464162662 807243706 286042991 575108598 643992819 884377203 590753243 922364338 174585074 472491484 871031331 923663388 19017610 363710856 184537453 692488488 706861523 792426839 990215176 992022642 859041408 885571097 610871778 639330994 805044872 849768488 899248024 911602346 324647991 927465537 738345680 960310601 630928041 700938632 831494941 911296981 969379733 985728610 526611224 635368927 3276194 950923298 568793013 714906440 899195731 929189946 863849781 948236899 419732173 902217991 819567009 879699282 273317352 721157395 630571253 979399834 715172437 840938715 200949009 828914845 200053454 797322282 702907644 909565898 896886702 911196803 79962221 261273265 695285652 901870113 700420285 857634540 321472602 367347774 83074946 268281685 239883228 586065336 126143409 715889307 249744542 281792284 768696892 813724915 583229303 872710301 528115762 824203097 88031279 672451686 536073069 882219990 995827696 998562016 545141241 912197041 549587413 939488997 600681334 888147513 55169117 642755613 391015180 539410396 664235271 726771943 571116691 994102546 917461721 991153713 204842363 961294461 285033498 637237646 927271092 941402856 330082394 336541953 298718894 669356866 291835643 609624343 452246175 840727926 441699004 938401903 387214437 901324823 258965577 791636779 424338582 888826316 487019423 780190551 958211162 987000433 346499554 699719755 679944044 999004145 503332327 904550580 80137910 754724401 805939312 813136174 740015022 788275619 769122956 966329035 680679662 770821449 614671926 765181093 112573006 966274567 807985782 873919439 58225399 497541304 278985508 859943807 400287617 991445553 716012331 925610252 360497280 461699282 123319771 809668805 746307978 848432184 470740171 740862688 902755902 991205071 859107308 891411279 670995097 850427775 660187379 691319599 126857325 831577962 80400425 391362886 941079217 969736321 590586338 592703052 396580699 846096239 333864228 858619196 993762831 996399865 73975211 922289548 985292568 992070118 450589597 480573132 245944499 302934759 261845293 281930049 999462176 999857900 282935418 829367047 290297539 666042926 446386592 787760652 853834407 989601102 55852605 763268080 468065220 633962710 918474552 987729466 808036808 890182675 972468744 977730296 128585560 628535260 385691588 691181184 385121725 731001536 571866600 866773265 606821004 900336740 31801129 381747253 161992873 196456470 630633652 718456459 738427166 751934073 873194989 891275988 186268095 837599001 826991191 863735083 824477158 971577665 296805198 879519326 248724950 348276168 23209217 519648250 795047994 881039245 74589883 606235534 319577242 804190555 631936899 869820861 826687800 871305084 265740246 751473637 448140320 785986536 498596774 906382332 849681255 867304148 760686502 929480334 428617807 498374023 329455612 831616437 92831127 245078786 556416658 830130782 491976533 613469776 829879976 873595924 105019170 795845958 341843296 952929586 310007442 707088459 530130870 732516525 526899306 867977695 612769827 956046676 249204223 548001418 770481060 886928204 412301133 780141716 594154934 639025257 918632817 998636228 283809439 424711362 112325888 671653107 782015429 997407071 513903791 716520853 210339060 811896108 725304206 839253984 451294671 593425997 88474227 782820591 372043055 658235835 25558822 35144652 605081800 634421679 527637002 758471847 821055868 872383780 171361411 258979037 840759493 919226132 106326925 133327603 534525640 946454628 643748947 724898697 717633896 956792812 176118180 315193861 577162472 783833830 399079012 700014188 987010315 989463924 668231872 734993995 58723832 642074708 492243459 932718479 53605063 153291814 853353501 955218695 389592960 787714551 995459451 999198571 572893815 721148965 399176088 872065355 501296429 798619351 360538569 612854171 797424504 909010570 450323917 621292680 939861720 984239989 487768569 715177501 191132512 757088194 450756903 859236984 734011046 853087037 443071887 544876807 123779963 585243452 39854048 946191305 242102314 436296944 330799903 663146943 208754026 800325057 913331083 973138689 328411649 344336529 253500428 981411395 173967115 419832311 168592988 970505298 445420744 531910847 100537145 546266838 673633266 947547309 229660737 307372180 461167397 930065821 89003964 90879593 940190637 987091666 867907234 901344151 675861503 812667945 425941657 842324036 401827326 928498602 383195347 793191081 798836496 824164002 881273746 954263278 149602216 983395246 336460278 640224004 427128263 619085433 745948155 855790797 842796007 932497386 257442189 693940887 316890083 435901031 842686997 950258262 709106692 818177223 9845124 364346712 693830265 754940297 242087218 678824691 747211609 835388418 191151457 487648144 858291297 859244130 718390770 962933584 923201387 986026202 19332187 982526689 339560651 414936158 465606411 806507297 818834180 878912746 640488151 854840812 136195516 176245265 175293940 614226463 714790132 854183126 82437060 190675754 267943825 520282672 992651326 997582641 307621646 780825170 332365516 823524677 580044022 732394447 53670946 768402943 49056245 931384484 94004539 944540825 468198468 594561884 404637411 658466504 192873983 629243357 107577030 574291036 414792601 737271803 806628988 855237388 122877379 805682758 747644408 750324147 826700210 936216216 977904730 983453691 601739112 648768106 836194554 845790734 755250285 904715073 481851173 875307331 467854120 537431294 464720596 713038012 376567838 485483727 568664533 656748665 661752187 910301368 217206271 840653017 231632548 362136829 27593013 614003521 375851689 693059625 688079283 711342087 733672349 881267739 396519344 597013304 828848969 928585448 461352642 556747711 180636403 760026492 338230760 435013486 838283031 951829906 300298767 315202267 114067256 915500043 448910899 957529953 65186790 309212794 921237499 979021886 887361892 998244181 925691052 941191156 246889757 506634527 318314587 930504728 145065862 909179279 664468108 935291448 891302361 965058671 173555670 196189138 405484954 528772093 389441572 872707615 55067358 255598912 257382854 417833213 44590072 402200841 254465558 655406226 979924983 999867522 755373231 999478395 760514942 785682722 454947557 794887437 808369724 825768645 489326051 723137660 545963957 842525170 179585895 815524324 615587806 924435425 458294542 848725430 261376466 851964812 399016849 613522769 500163559 591780922 624379902 798620052 741346008 950778610 682191119 687342229 851678388 914422365 841751281 968147819 525259329 773405711 779322330 921592297 190913912 515371272 308032844 801077730 659999910 678534220 744743173 920115585 590805289 610110910 488369859 711239583 454530518 786529681 169522248 485588885 351407457 664839548 227933443 819313276 698707928 881708236 49905231 934989252 5050493 875327482 247357392 387896797 277215298 443930309 408343520 423283644 24956519 401464265 594339950 925189461 294063646 921010552 298660556 729989187 870531637 923664702 284903284 463400283 632027129 930107866 320707777 547016861 590093153 946043545 845605652 987547377 797007617 986708620 129213251 675985785 647414913 844646367 707052544 967823782 570591404 848712488 904159958 976384133 847666790 899487028 658587172 773222608 502510734 995371500 587831324 988838213 257468043 699078369 687962924 911228244 674871010 835551646 185574712 899342963 792064207 883442024 756711741 954844840 32467163 953913036 603073583 723179089 713778712 943257193 946276095 968480263 22834988 758293409 897857861 952120593 613105281 720351556 830950717 909390318 728136279 798338327 160000975 290445047 252850966 845035144 443599047 924174095 800698854 960067642 46838247 888087903 871994584 983738464 595000428 948277894 411296677 876478276 131336826 388200078 15623697 601165076 361136092 423810470 191659232 565198128 170605501 704475090 786587492 842617398 56510378 343980127 940252395 992398537 140557829 185550482 554331464 561391107 245042065 316003729 381006633 526613295 905580702 988438587 655674968 862353546 514303727 695212145 702662125 773955031 907953141 993113918 939255306 965635941 413047393 590851254 664847699 942888814 45000103 240132199 799943874 885202793 472998441 955150886 620568057 866354407 863569117 881932599 634801240 648471306 859998397 881419425 991509595 997853855 37296931 87827506 927037877 943335938 332589157 895131645 286329560 856951025 85787515 242798319 965855404 986442642 211185538 332901766 675790693 678211810 339011049 606721803 759174032 789558062 412726024 482280396 542368153 934520979 168223053 422200002 779220269 971318504 788494695 889182407 65175120 871047696 192640170 931595247 332774057 836687921 938387565 978265390 662579658 995123816 163221977 477259469 338004568 636588332 620323650 637849840 282212688 908343573 245405494 669118779 367134310 909087510 317125302 975061576 526186342 541335010 46485324 490314739 703161595 949026127 652316381 711992592 429798037 838554108 843109168 936450847 243069238 628181169 36755472 103147912 677305089 981927802 401557689 877404956 609361901 644003374 712577021 852588071 233766999 768498811 160186860 225971935 123889479 186128014 341248865 872969253 923269028 952339956 516396078 687270670 6708673 681083297 446104674 784386488 605784959 623025804 666898736 762198922 746651377 861888490 326076404 812029819 209105565 429735943 879220534 963471688 866619225 946011163 457639130 796791174 763958338 985172884 64481997 373086249 532109043 577275284 492077617 500869385 252759281 413741528 811147332 977808611 545336607 692192733 48377612 881088686 122753249 122982055 182670068 522319365 547703533 927085964 209501213 463155384 911585074 952078464 700049521 785364878 76582377 975860097 627734393 762543965 505132694 570958721 213760961 558424598 172373497 841711420 249676850 648031059 682492636 964727775 414853309 692816430 491895993 670728270 652036008 762899536 676877830 969939279 640097231 776284661 418485391 912957796 228094149 984042228 557069309 749569755 757089131 874554887 305654031 907011770 791818029 992008467 938604823 941111871 57402129 586750579 491315950 532387101 51233286 494252205 780430761 842815057 355077276 535897879 385876636 966731047 145638299 180025379 146748776 243779517 976344346 985519636 463932692 781398124 650767028 959774056 189248874 967133461 316829133 789076683 793529179 799003275 977640582 996711831 863819534 891014003 179062325 843250995 442179882 544864540 115986455 694462717 353957488 559733750 679063901 946661539 302414787 760648351 798689521 890189661 958545030 981386127 194369207 603773644 419380561 549929228 789398475 879553767 75735020 615470653 853479736 928063411 765961940 970232338 280327971 788672826 237386086 726234193 602306675 859121408 649253048 951260080 567929655 575658252 447803718 971907427 490652749 934200924 898133837 936037360 560406893 893098528 868331814 985937719 91507663 598416770 673118564 702636775 406798470 844576910 758679132 786619559 240523563 946708887 994035852 998287039 245683567 410536130 270013692 273260654 533623088 865194825 587496793 855811318 717355193 785265002 424998342 669110521 337572640 686171118 782722771 825170116 417537049 525358596 727157996 899160484 189934036 696441161 632588609 776849236 815476078 939330271 30123446 629624565 501161860 995049077 567193312 749673371 648532216 825871054 861345028 987351792 305492769 591518393 562585488 802835914 929063137 996459633 451046065 962662295 841915356 924450419 959485706 971478234 346997789 444209762 538093437 558923566 966633877 975794229 576353441 661803277 975608379 980009706 125545699 265427060 587350679 714757257 370212806 745367377 954929004 970061083 384023254 917853930 407340615 901814371 146494861 445212092 802825022 919116700 524160099 971365680 317066267 841596236 515052020 847321362 617432150 823742038 829929090 934951225 199372389 557661043 130653060 736541022 619371068 913471587 977910788 999909967 682622833 879254598 903002375 988984549 89672766 376170503 490893629 576352690 145822039 383347551 647678879 748573649 116427061 440264532 375288289 806445202 498354943 635390762 41058883 824540480 481429577 681889168 894985769 984734369 909306479 978858542 170425214 856966073 924450947 994706708 747440743 867865436 84757739 287371865 146893956 670108422 145619257 747530324 147584403 668292255 726086583 925486186 541471305 755643997 362698378 397120127 863192890 934974071 576106730 801665614 926826512 927873338 908891420 991599646 78887788 138836058 849531938 951611617 757358151 996441309 317808241 634450000 425881427 911208404 390790799 439300033 12889082 48852194 542661495 942439861 283880447 681249018 342279833 772260599 903108525 909038514 202517976 339523123 405380524 715129021 864829120 879812092 513333978 960737393 648011768 883742829 723348958 977502635 416906921 783313633 896676442 963337385 975127775 980859552 593029633 708437639 982511215 993876435 339574370 977938078 823001150 868918011 587827397 769213075 715613047 902013810 656339669 870743061 413874656 796042393 220506909 595735893 323522206 446258682 743950800 822371977 773823644 856449612 27785248 930332215 742008829 844243476 528258948 704279829 870181293 882469505 86762775 559120053 973610773 976277297 238132370 968683914 333655598 665875820 616719874 817032761 945742992 985336890 320926688 648223400 536635173 968337678 811932912 916549036 317450321 869842342 495422601 980258448 943704391 993360378 298433512 679785364 379790911 439813786 595305363 643905711 785728532 793749569 502366235 686694631 553471816 840769087 42372567 369168540 743094767 814661848 219598198 319968467 338313252 730342658 499067889 958498900 122808044 774339448 310417026 418171705 614581936 685520829 262115138 834981265 617117920 711492297 311461571 674124488 459963875 938601793 377104051 783527695 146055251 159649811 821062853 847039834 242038312 544263915 849858142 855025893 368468613 591698836 952207882 990280738 672143722 951050761 453139819 453172554 49970620 414452940 886114702 956832874 846562956 932877577 900748552 965067079 115814255 592158570 551370934 564674133 39463960 372969897 245793846 503054040 126327178 277851943 305483717 787739308 631342303 870964620 539364602 855668003 226004660 350864598 443962885 519053614 913517121 980817456 639400086 726419503 134060105 944782749 322803633 790871305 40358879 645252752 225874331 413173402 188064233 494641103 586189143 698503905 121727340 796349405 864789273 877843476 121789567 480057448 289994989 366115866 400700223 940682836 663071458 744703595 211304184 421412080 608258060 842579862 537043045 777892690 436173315 762303873 925760054 957469230 37571319 614215727 476881543 740071393 422234381 762699626 604973091 686730392 694350354 803415095 950111052 961573671 819061511 940939759 699810187 851319922 95316406 805927162 946575557 998023057 12887506 365607699 109915238 525612384 684157398 906858044 17911162 221804970 22141410 272892466 209554797 437182826 833393737 916592082 646968075 654925311 577005306 658412940 310535704 597787899 193984846 803926913 908239317 913226957 767919747 913218452 644063977 670944225 295366947 996817032 450344050 957978293 914453733 926187269 173423569 402815772 962071845 994560243 12493863 826378847 712282732 738267502 926161221 972106695 884283707 894598375 496254749 837365702 839202383 850101116 820490772 921555901 342027245 757210988 526421740 716866396 644776955 943712713 154760682 715154355 287856528 927694815 208669795 453532902 323040335 619837018 599615164 609647234 333654127 397077082 159001471 781412269 502014451 665479701 30758475 45062073 482620291 510949297 232859670 938832016 989332440 990819045 955915886 988956054 903832418 922543757 557801266 835382309 132323212 143009060 483741892 777732456 478767225 833782998 491531123 922526955 853390958 943559527 670494971 767894682 184528339 857591338 322521384 605770545 114507572 504040579 370632390 678587728 163624107 946585498 785916367 983390147 859303730 923459171 517441764 768122209 506624220 811921942 877882480 881713553 693137914 850378229 954952558 955753320 425593939 592715705 947572261 980743732 548198200 841976239 863148617 949618072 554183216 694979918 988809533 996122957 305333262 724426189 948134880 974970016 817117429 883327341 243556655 833088510 515825739 520940803 95029154 856289389 589044853 705400069 257249001 536131322 570797659 923290340 722042699 860533564 186566052 332662610 183466946 834168551 808585781 815972534 175336097 852055908 996089271 998455649 548185330 719000586 209899223 801511385 19541876 93486955 399815691 578418851 223710613 726478369 860173178 884846276 825613112 971407999 590439569 651014701 327862794 853490068 941823901 963011965 586629611 973140214 330323096 342162920 180930604 769831950 270674734 939404222 949674049 976842752 454407343 652201553 999762192 999912475 848422433 918998259 957976072 985454865 459000539 918150444 754163103 809099942 362365815 870242454 225362905 437264915 907671082 923528244 395625152 940908743 267889166 937370202 13713448 748118563 54818887 162803008 450302817 464577394 327466663 358491510 403650285 552048126 40963912 57591885 741921802 748125145 59702945 973034239 955798565 977654524 356387077 557314279 213029392 652801256 484747577 987137682 278852708 438171341 672138029 675280408 145500736 159876090 397656887 717530731 539759071 714495926 701586560 751102822 534050907 748422454 439633825 960811208 344025704 605477009 686492933 793752831 718030777 824736420 721882214 789454810 314881566 528549876 204163779 896696795 500448615 598455845 542746179 927336243 340917391 961762872 512000370 892350338 778383325 966842674 517366666 723088850 268594112 527820632 650741522 723429675 574435508 601843644 558229617 940432305 639817867 777950786 355887259 645361902 557478169 933244339 799903556 864060297 439353855 587397222 534084307 964178595 902039570 942955469 40568590 249924163 806527784 911327520 446644373 497676792 323062915 657527651 399923261 891185387 989631226 999004034 817723290 885173636 577697965 900307699 84602987 168669197 830078320 846461408 574838493 848165651 630641236 665319535 461340246 492506483 307264770 325620893 456134234 813521012 417724447 529363830 670488678 990945954 75179888 821990969 978848691 981363122 353268286 792098325 905443586 969382365 500651071 551084351 521291903 540082316 846951973 936802967 468244461 894493077 607904542 868168834 577496722 903267709 62208333 487488132 99521470 615703711 800475083 886405152 125267695 566270228 766059923 945028499 259830059 412893745 311842806 420186109 92574053 828383847 254363755 622881192 54431379 64787238 371265446 469574792 902843338 967798160 771129404 787938510 421476450 692415945 233725897 436946736 587528083 613279339 425597605 888940254 93576471 313834956 925239164 935907306 912602405 947416487 151517385 780578203 795659389 890176075 778379110 880607723 811271279 916923727 696936300 752020707 525495326 597030709 183578799 256486142 972032860 989249139 806243438 977635533 486820962 588705584 202852200 460296182 194625175 245592605 598235639 838152794 314270738 995572418 389508319 568724387 552389678 710648195 540537371 845024313 729615860 840178737 456803074 654732845 103584844 467265693 187471522 440173190 751848542 754822510 75953768 897201015 734913728 769951143 523988791 990173906 317692025 437548397 481144417 909029979 785603620 993007477 406721845 440370414 330940999 771582110 716218087 984423323 82944096 498674399 773630747 808188845 41461035 605739397 433519207 603029589 781205177 795314048 621183874 824786280 619468613 660265186 238232643 555061542 463619157 920296889 495532823 966937191 280149346 283809288 205649062 581936268 637469579 987749075 406603209 993475301 160579635 914410877 350975739 723441511 129875708 283218106 597869202 824602235 296952232 863323476 793020782 839361716 305971087 823608626 685742316 836824349 69498283 326306669 643688823 918331675 631459363 946253763 888405678 934772054 541389713 573989269 170230973 704002665 457895805 705520465 353074039 856133988 636576293 957737907 520870084 661658076 558261797 622933666 576342203 815955563 196780439 453795251 356687592 699222772 99564077 167608418 990935271 995499837 762588636 814726140 968089043 980354129 240652794 376839808 780523935 849768538 819875992 896208844 305860017 351486597 880859156 984075903 274041088 393114390 78921231 897737973 955999330 994211986 500641997 864202922 431636258 523009886 299709839 965761450 458078653 723119730 20754449 334053327 502792668 647848069 70173698 910066441 364210963 534451365 891719615 959983999 939974445 958013017 578198345 787372790 672565685 996608201 647317477 956292527 590890909 752195503 177306211 630174519 64561857 398719080 745682262 911556937 500994182 640169316 123588041 163266906 884570260 905116225 993466396 995125319 368313323 743084389 723939506 784374402 490549146 931725463 64422691 507445524 658009337 890841665 210436832 553371848 835042134 947379891 825909018 923636989 272602388 543192991 576335538 622124147 633843741 835698702 37196343 259091641 506193395 973243751 203785108 459917310 514506988 848104566 739223430 743616605 429516043 592001098 3601932 6803672 573980823 599287916 373052798 920227011 642871074 662982633 1019702 166352328 249607093 269425657 164304324 615780141 634456052 659820678 919044787 963517149 761977938 966801939 242581619 722778903 178765660 202712395 819426814 888279440 325676701 763265738 938847636 997352001 240084716 729372321 171265399 852727940 80379462 179825027 255731583 771751562 741216372 992133715 937169305 967573898 786520445 795826083 475114064 728528084 920652612 950946745 569581770 729692596 336369476 711090108 700511021 822436540 6127944 412294067 922569840 959348220 659560854 708856933 1258089 476292621 641546439 758568975 488656509 578227249 41078994 145126196 432951402 603517124 773942295 860139529 37474951 683225631 528634366 988960268 478465952 899913372 930563307 963278471 513559092 924463805 220684735 810938780 400807937 680470216 378371820 420097228 574679850 859820968 160410731 897023155 411037448 624078122 532203153 869855337 952134474 960819091 445326689 721692413 211849210 520650365 119632223 635800494 489750280 660674180 701465565 843325769 238392200 893615755 147109943 149613858 196533395 343957049 382603760 818374435 517854104 935952162 268077295 629770221 813187698 923004169 833868846 987706108 780038301 960508626 364068137 484704550 776734190 791908114 372074926 400845024 232036529 850085425 523598587 576440081 292372513 871660957 613564125 941285170 569037375 606442850 706299254 955966396 193901902 753212900 957542786 987018717 980006085 982158244 265724912 458272677 841059919 868509722 520891057 665842104 738264190 890257930 374874171 703078805 219235802 481104976 941183891 990301890 509136248 815045223 415331099 489284778 979088502 997489661 263962741 276933357 613461517 654714176 426522009 751037297 394737535 734528423 887469187 914700637 433473523 537233093 779511160 882012450 698598045 787322895 926713743 932862715 225951073 898337097 909389006 994066526 670196605 927074986 136214108 736445879 688426687 751696203 549469505 915774850 617382617 627714413 322684172 811363018 497489579 583966546 282680258 548163748 187264210 486342404 609930355 983218384 19340272 781090424 419867674 703603204 308351881 567254602 717270354 821852470 321885795 974082558 917724071 974540568 510585190 583763380 553421994 749385935 719261463 820663462 710334700 725822263 61086453 614489960 743077588 939949883 199973459 789807865 642921218 936560389 102102330 412530534 604376426 767326693 29228554 777283543 495764224 861948164 442495530 942606626 964868590 984942080 184943585 399544319 213042534 848953587 501913313 987302515 87220153 172295475 933971887 964243190 128393723 506316107 15640010 190895575 348215946 668253439 437631814 710069561 625836501 628808005 154976609 838156010 678428000 696055896 567111347 959102835 329711244 855608536 310090548 791186230 198105706 914359113 11506093 699640430 511732200 889440106 321088106 471924906 23495386 148700260 16372376 435641933 561795897 726064859 223817574 462495731 110452551 316136385 98352676 198123790 199302068 298092106 559836119 813364477 956407910 977285955 580727249 983816838 312513497 919053755 827689191 836087727 134205509 818162334 614684001 882048383 380459758 477174239 696753347 719298143 452928618 464241572 705213215 843524269 125319645 759994948 42294384 411212783 895989716 943934669 501940848 619393721 241293328 351954311 518291067 648654276 983287080 987384469 692511273 786213670 940205128 999099009 883042212 933378812 118561627 552975851 347768441 358961196 3670086 316619805 758315030 805777014 11975866 379941373 128759508 269332392 972048006 986004010 761374752 764393965 247186924 858233539 102427610 348083530 449236065 578422342 654137748 930264236 958291954 958488454 271548383 708676670 24152646 508282237 67535649 838737864 256993227 643651696 224541270 961182256 19551959 543623132 196026290 666192431 20151001 474873944 285000181 565204830 553232849 906272224 561519332 644611837 442908101 776330979 255050284 824419215 411260863 789892863 878598358 983549698 725574427 906735280 9861132 858113911 712886619 837080615 593545375 872843174 258807166 824851403 579988825 832921201 209079876 931770780 695461427 933051530 870001224 982215360 269770821 756522481 664444233 853572097 969517292 983764835 939865958 982251122 306318558 654280912 988620380 988949244 978525055 986807486 732910063 977463205 173778499 544436255 522804228 528334751 723057688 814170057 842135949 948823831 578666145 841657997 321490672 903660069 491763954 796822757 219164962 914914425 494173261 753936623 835863801 879226414 796613799 799087307 720249180 911936769 803525747 838976616 245426398 718445220 3202799 703513219 607457433 829189444 719046671 740644860 291450411 871650776 224014172 675734401 345489621 562503090 480363740 546566649 20045964 20433041 292112804 568755069 78860072 942540930 738125522 907613408 33667141 807324985 373969257 507149850 787908625 800399073 568682289 838348884 884006151 904713279 251157622 984153698 955065328 964516973 407307695 879776613 289261783 656803978 921011464 979111571 930806731 964725355 770717056 771709619 89997924 452112398 758061451 874951059 730552870 851098499 779424826 872551288 943381797 957767816 31960482 707695592 99271168 914630485 519862147 892846237 435563600 706960557 219795185 616167164 876921605 908003541 742178359 845544439 720191926 916337047 207721846 502720293 943738605 990296360 420992043 854050261 698259813 742159557 826578725 875652057 111176635 886043575 683651485 800517583 863296169 882557284 16954422 608605760 148562964 384934338 114035600 144391186 602031713 990703569 334156456 358796836 214345818 729079807 461109085 998461425 974594183 997182905 552003047 585127910 65694489 407312863 305482278 771529391 701670787 996241966 503392013 771565398 776299933 974551678 214204578 879879529 636287543 804956076 503995947 981464451 236020219 433309170 941015222 960619159 370695230 603752033 235059385 590078109 505068006 849563094 26562514 291463862 652141627 980182267 134828277 361876631 948429217 976316325 678839638 857486204 524450993 727692194 107243958 246026831 849410876 973403812 582356592 637794343 480758009 700832977 137693326 621171759 816047216 890067813 4009926 796385608 187026567 674429298 611219838 951683636 74465591 480170830 434615147 644177379 721139716 788856204 269918072 609990375 365918996 826668310 523369223 882339910 981126447 986923716 506827441 893589676 958546148 961386130 944412564 976617665 882299423 955696983 620564506 993101390 41265295 863521931 836786983 859374225 700897 226046234 957248372 994914713 524239247 722215090 568835778 891463388 106878516 875601650 581432445 944247715 12175220 436051714 44727461 746376822 349642660 599070958 688645229 990101304 888226415 888356627 203144143 568201121 671059547 922868438 956936365 997619853 388647866 632976110 624882171 747764577 961351657 996444158 813524732 914556176 859688592 987020396 526577623 630850105 921156175 992538649 375949642 395851157 168238093 704173970 814381209 927901784 545066427 557777644 919441248 932482199 854980854 928825006 560205492 694998319 609584764 643577726 718385493 830547167 424929396 565714002 245254636 659881354 918880380 974057095 433834713 616780933 732940923 960857833 223179319 614876602 498826513 629006291 825956599 901849222 750708733 809183545 754377669 923723478 850511896 984926736 686981089 844012809 50059569 679113567 249077325 633623378 989296980 997269687 369018841 469378153 145840080 253226200 225320145 239161965 609457866 710155812 254481660 711577269 414243458 784384713 599757929 714828611 24525876 747100455 970276061 989536544 941058325 955132456 581592850 617614863 330729121 730938706 287952240 881363681 256274649 528646271 198717485 846735448 283879363 855894583 101886854 855385469 539755049 854306432 815710176 859079331 481536350 865991384 501364874 616276930 804179507 821044014 368091138 472588630 822317033 992608896 856428310 910682368 897131346 905485779 976690742 993834330 686054247 951580832 10384354 342357678 492253023 720674558 430642311 960601375 652374755 715544760 855843987 955600338 498407796 619648932 249714680 391004596 583243649 806178027 790326960 912614414 828457888 939496015 437463050 727869808 165716528 256718023 991103573 996267315 607526095 876590996 824647239 880731005 656726400 811976696 917942183 995796041 502992006 644878191 410672815 434745083 390856574 674201774 364981285 768688253 817563618 984337061 309481249 917728291 385360624 949063216 123110007 690245490 346064920 502438840 117545219 921049246 352545704 421110278 384366793 817178218 405153070 526055723 604820345 865884619 991693606 998688436 185005613 767798739 26943888 191103471 336162111 909112157 645281139 885141336 240640554 275147140 160743662 260045842 796579278 862220105 96895299 258343452 649837652 689530590 909471149 969313913 896635148 955768522 289730267 352377087 483568115 609356212 40818985 263477913 374191014 607653250 111090468 304852688 755666005 807866102 67268773 800480416 157220874 916723255 167561292 243497669 39705653 734913728 681680020 997809126 67782176 428425252 173394539 334319391 19050971 532846898 680546517 980487924 277115467 284696828 407888085 955051948 577890600 881243650 186096532 923072308 528523311 835347071 486925606 940492709 828859818 873371085 817097102 893839098 677242194 804850419 33814672 567172401 283434677 615838499 401914196 837113255 697057630 832278680 182714635 754375406 932557031 962100435 130860621 421899299 933342361 957699325 945586200 990460933 587196865 762165250 992982179 999975429 81419952 214535460 162033636 366529431 704074488 720371432 908049261 909518824 202223748 660563380 54661193 72095256 662669004 990977267 510877479 803420109 306613225 961268027 975100796 978009520 868858988 879171727 988201010 997724966 119182486 904960272 68731005 441583834 683190290 895647009 781594695 833907882 89973994 689350338 811998792 854027493 507771963 727503050 559965065 594460184 325434639 944808987 99592300 713925864 553289918 722890390 261145927 935370663 443572223 854448710 27791089 220817059 478522923 786664569 599130457 778300186 718798472 785777854 455253518 707919695 232654422 798649457 1134167 665549727 300340712 601533138 97016194 769567073 645136551 796356637 976585144 981420293 815660218 854397263 120368891 484708825 721642600 957847248 355723249 929294351 778852329 834221192 806536803 950255783 223983216 731224135 117955192 136855393 964709905 974172598 269082816 579928863 691749142 808056278 460017156 525780872 861771968 934332720 135368910 367697323 430909686 746518551 265366954 537124822 441125709 575366219 213085520 887174636 301330337 868162919 32751575 245075113 794120536 845781992 904213192 962148201 67734820 612598259 72313458 343953872 888072170 935844221 38507190 773872244 118498707 917365973 287261115 627680121 928492639 954126622 214149180 671015414 594991103 623550720 214927926 877545477 674309478 968384477 851616656 875124537 372145985 822346261 760208040 989710155 338906657 354829010 647848395 943212040 528844373 693353566 367121523 482218054 100548386 253721341 608253323 858322243 610878131 611151267 931220651 963981661 816702802 964054994 7634365 84071748 609198418 925704854 128818535 940126347 855898220 920330368 738208256 941293371 910786289 999365529 863332304 946090927 704907595 931526173 507342764 726351126 418495358 764878388 789982630 997697344 673578587 989190026 328426599 683380383 507437385 720945875 45714264 951315498 700123961 801811270 958493680 987160205 573084181 953749637 333613133 624877021 621309548 670401156 268393787 575693619 252707 633353151 806561599 908572748 989351434 999489302 928016506 973328216 137323861 605890427 826994672 903288312 593081230 698029230 716557755 764836431 84534491 398711795 118733101 686299602 386741651 564326783 856018412 900230771 255438505 727685632 811299815 956850396 836802876 901604201 404534501 742034330 536241122 598110130 349047035 469406420 955020187 993461097 341632253 723920833 915102478 952994662 594230125 709885875 966741795 968667637 534050631 702100435 714954136 773485931 494524418 750301770 962486566 992040248 241157001 897442263 171466523 614592244 524041664 844376266 377788412 583391658 243354034 716416629 142412250 757237014 612890542 986299859 83272022 312962643 967298132 969005999 938197942 990461627 976151556 990050754 7649885 232704776 629069596 907638484 832733743 904291695 304360510 799265701 349195494 606175700 523661537 602382409 729841938 783932018 782397579 923466214 560955053 715750596 779366022 817833119 897013950 911559492 745632022 838839179 590715485 707249600 781024559 987489969 750159028 905982986 960689602 980411180 565812713 654860015 183352067 301290572 935687716 945338465 161678691 325775438 727360922 737687366 42622670 782499844 931753974 947399130 48900623 565063622 933172738 978043359 714265568 761332972 511944649 887063107 591936002 652437036 634222868 674676749 816334070 952766348 51081902 765481695 481530398 855630649 115155945 522206850 194015913 363667843 497144349 740020717 118979978 837321792 239992318 826002375 152136618 345412709 699008148 954561857 380127604 659237154 792868344 825939761 782555176 856356190 166923149 752135913 132699712 407233894 559397986 625176093 427512110 936247798 234849036 978834982 556094296 560214038 618598407 753687765 212870193 828457920 941401001 950931232 954918478 999479924 252874119 329466638 51153985 746272200 968673803 998021828 834632194 882989928 179473533 922470502 527016166 821776737 776392904 833043797 927807512 995139543 688629036 956558462 525445026 597004536 599873081 885437750 91238096 751777780 937942930 975202920 475918837 803311016 436857320 694272340 466188336 676552600 827974091 974674176 376900654 873134198 271443378 594971118 146733415 763008568 347676008 611741254 258707249 911209021 585497291 833658231 952843402 987315378 36004173 678418558 947863261 993335929 153723129 961296923 805027338 968220051 80040230 265376866 170356864 678940103 900907970 959487747 922617649 990102047 73989671 475518225 877162042 906551998 88790726 279772052 60746004 464084975 857142246 951248570 783502137 990260426 55123286 447936910 137409638 463363967 586911121 714854285 935414009 996497654 658795199 715159591 624253540 698565517 630286693 691095617 680522790 701168493 670471441 715485985 660902197 802754153 662959959 906607068 28933738 138985832 241875148 555217345 706422586 987072428 855390882 947204291 429390723 890715185 45300669 437679162 641021633 875258142 975859613 985680407 279349697 838706906 663772766 882088904 141841023 891108713 21992178 457628802 249719632 715934311 121085051 887510837 119164808 887926364 844734901 915568596 330995082 938354769 331180725 976841940 317098090 591958241 500435577 931042956 264720951 331318036 918338501 995212597 268881373 917879869 473792112 491361733 225042502 362622299 886307626 916947670 347450160 446136740 727613436 935920483 367256076 481749615 634128637 756788941 607192509 685921717 244795412 989667946 232605923 390772509 2181742 445035766 170476190 986764122 715232353 748389574 699242637 768911893 883432140 904731864 31909432 785658508 747185338 976475723 431442255 804133655 143699309 541933962 537685264 565183050 997588608 998014322 612489815 788531073 926950218 987117475 807142967 917075878 782703270 934560828 163509842 371712412 934705897 938015691 474917810 519309611 825496305 856286327 586704502 997126081 539508785 687840622 233280197 722294772 214533424 442529547 699592740 795763136 963386716 969758216 438212935 532609587 149668977 759335898 871354659 975709028 406203293 665764047 486808609 564473254 689328043 738503491 176603801 570206637 686785795 849839216 611725018 971281530 435836095 940549786 750198525 833368730 375681785 872735760 936865361 989592437 329438428 418659811 339691560 928933786 204181668 844793646 950328734 956425512 582461017 841460342 180923735 672974995 679462657 713914538 905100289 968478688 139505539 754767411 949784348 967342193 696967550 703921682 965992371 980180711 992657049 995126777 314236302 781924834 955984108 996700739 458391332 619647928 684483299 752161624 363554091 490262529 689444788 872320862 357583001 425421761 19215441 743868268 434375396 716685178 599832856 990152735 988732652 989937499 123538065 697900699 378341307 950341230 648896641 975084201 410463376 969834050 154203024 869335005 211145172 312135153 468679902 983366843 947227878 968971325 450975071 461762730 367920074 726899179 974609976 996195463 551492783 999812477 765650930 769874323 49369752 409971606 230393215 590827131 158246124 515727217 190416924 195030741 547512221 992964220 118048014 398000754 887277683 960978597 49875601 226813479 733876701 851006594 543983589 662686615 818248248 873047733 666962185 708806601 92446409 768354787 20108977 835060886 563106559 720757551 688022238 750994124 622254421 996447287 222715838 240333902 395504087 692455740 201191793 980873961 265464500 415679555 533034656 826678850 625619620 975362704 669424903 833480430 620553742 652878431 847593795 909695308 558360372 746780169 14940971 612209798 833550772 844358006 321123693 650632918 355405517 941500751 656485633 942640695 646244484 902132617 490682716 719238916 262426831 336008607 570990590 677655083 835705939 994961664 78088319 806228250 441166922 893327146 544981866 587119931 320659842 561360236 340161089 673217371 605106174 791170610 922658530 935221581 475842261 957834285 376243587 591876030 992053185 995796052 859533097 884784734 382113760 782171525 246472499 424995735 276914821 566186636 983854398 999390330 133298665 602882850 53303486 85443029 991497096 994105324 325250676 806715997 617798635 790737820 730992075 824685322 707569773 817247736 106542563 295842978 221763839 829725547 680558520 824277580 657339115 876025722 9148589 135180581 308178454 947390550 64310734 844256135 420898634 740381456 578820474 604610944 979996355 987012884 749222552 904151120 536598230 676159962 991622004 995053452 701512387 860945011 387006311 585793187 226396520 806152257 603857665 922150542 196798026 957076491 314609071 846078625 237997910 879100215 732532855 749068549 325727542 916342876 746735494 988678502 302455608 597185009 913593657 977282746 613277653 764021552 943121232 970764695 657703587 994733222 423201516 509978207 898690928 924939745 215926818 573458968 323914897 986772353 818689420 978823249 165759238 421782444 169908534 462784345 963425442 987220000 64806886 992162471 319578785 574651138 125852673 195049311 707557026 883636773 277431944 674889880 461000060 794852503 228454721 318549944 716592416 883541560 950501988 966454730 208610644 240948651 358467720 814069662 269454205 931525286 916022403 991507192 982259070 994454019 182012093 535369820 561014140 601499608 119684055 769494010 472879653 693186355 965650914 986348512 929356614 930371350 514626171 996660859 922946770 952700931 291592313 297951463 724240168 861682585 679756045 954669830 573149261 815423956 878265497 879430971 935486497 992374152 33758997 494237605 739809427 891326209 271831920 792286691 512404473 748058808 280814536 606339321 837165333 968857642 228909847 535928230 104402457 853025644 248630167 638546085 496763300 683271685 555027928 618621229 903463049 903676734 275923788 435748725 457015520 497810036 599145899 901108291 475176241 892217427 752428178 859544712 724986430 872713961 598776649 711727336 377789367 717038242 778774029 907702481 103239634 315771312 512480859 691959586 297967418 926794107 310226042 665024445 77348102 921992921 734182779 740597046 790072776 924795632 144316574 347642056 402213591 601002049 242611418 982491524 63218214 344573408 782949552 866678213 579355931 835896617 542791083 688744764 365518759 707312619 104734391 185182923 358651248 964466543 502879453 657803883 635010851 866843445 413659767 770438700 909130710 950033022 925393618 950089735 239349864 731143723 690189786 894747836 43048958 52346265 566795198 771773638 756871902 942044540 695798069 935487245 360325359 538926136 19317397 548548964 511832097 891004622 722751801 960585513 799537851 912895870 319796182 916973727 397334097 786111458 796691060 938638512 864833700 885464246 357347768 753069627 278548991 408630294 864605734 908450954 865061422 971311919 148547750 561552151 65498321 371665332 624518271 625646191 403415169 725386922 653927060 712826914 228188673 965615628 735880348 834897781 976055257 991359343 912309320 956911841 409458613 568065053 255277345 353704107 673315318 958119322 335663806 444059217 479939808 689415170 434573558 723691490 284934458 860568693 30744174 394279566 917222009 994737368 18815068 777701262 996640575 997925962 719859638 882725476 627260252 736423026 858055009 990166873 709077562 984139757 990783706 998046520 729811606 999626530 824215916 976189024 802008282 891614497 601521662 651018886 935854251 970525083 628044256 751962768 887948454 924149017 413911335 730736155 155705790 823758148 994824131 996906496 749559008 969931167 552401561 769965156 302831555 768589580 127076842 551956427 456123594 776695397 756904355 827270588 863639867 933558834 443966218 953928917 555779822 654746285 228594923 259574189 185200769 465208741 693901178 926365242 141574851 920191307 816760178 873549234 470856160 538241758 405897623 698063110 65175615 884591328 244957285 286938845 90161053 110274343 346613633 440922833 484554409 872572475 124464551 189958391 748989244 897579896 93508767 752251883 693799786 883604302 404729895 427785681 752892757 965644305 417750313 464358924 24563184 316399675 312214832 531520780 751658969 897556979 239357903 475004572 93847 9556662 657263625 683342232 897752072 912481920 760594551 773759076 672560781 762802372 489430300 698560225 871679153 904931360 600556962 766881597 682499332 787967104 692079323 759523245 739301017 786750019 238889961 445855549 967101485 996363050 191573276 618348232 960161254 996400501 4540171 660249116 99420166 565145648 341877894 943706898 401650440 464679675 720325438 727927462 943318844 980321127 721762482 812595432 235368026 238914159 775132065 980689855 842042949 913305288 469388065 745629908 423490974 649967297 220428742 914754151 625721858 800573494 379968325 583286178 203674198 963793648 331682389 868868161 573074129 881434853 577627807 731857818 947709832 993669960 108552520 891699609 656255702 923451719 842193436 997396148 102743708 551722387 131179864 475256010 910310355 949878709 102580159 795902829 28370658 790208062 499127568 895941854 681881622 897310603 988644055 990355026 589180023 675430960 28156088 995487606 877481467 940250045 37880882 644340114 558786295 869126723 257136587 768359156 529134368 738112368 689811589 697067956 646958732 681964612 937283741 982125101 64453957 546740628 904348129 994027637 712167234 757182670 450381632 791318356 432547842 984812987 328664099 685496060 455726558 601140741 788764848 987855785 746139245 950359771 669866709 821112560 455674576 731467929 392407098 520567127 439714384 629173350 651167575 684490501 974159395 983052429 413202011 563155241 647628687 648561582 462998318 835017369 864418025 936655295 566316455 928484139 346166710 349017485 489348139 508153876 676423479 805880371 212698704 305932246 701467409 786135206 185576022 899650384 367449656 436931419 207101408 824382943 389273149 838172441 567594346 652565390 114581226 126368136 437293903 626715577 407769966 624464845 14695803 652829280 109239133 331645530 894008009 984367763 160163202 782721766 512680564 965530761 698068762 913441542 224057326 785023485 664268733 667828130 292946823 386209174 907763519 990093360 265477413 516325207 741802477 926829502 809179560 979557620 150996258 967047998 988481699 988715216 803691189 924633250 102214804 791046547 430880625 607570411 379046805 970196932 910348180 913496007 96488665 102020920 761672519 854733129 513936170 776881656 195494912 972804042 353247463 671442315 405405677 995213570 874451344 891541622 424501032 433408399 711728260 938975671 636740357 860243979 763197267 825431326 109587644 291259320 761207539 847851426 226276144 445889758 596602552 737255523 460576925 471037813 542515324 971344363 56521930 895708423 623449717 824299799 405680364 437838917 19221285 151501567 309234953 691953823 881551758 917118781 73804999 98532896 228487822 621144859 638817922 941529255 57026311 258628875 504813270 588198024 683259286 938961206 578957714 788626906 198022243 421836607 283881076 743748637 303794885 666092592 188680957 919537108 974745409 976594103 408009599 516841564 435541917 715912439 268114372 863969887 555492432 923338505 139303437 800814371 232438486 949954291 839979234 879022244 104818413 658507141 535911727 572950593 462365404 581103716 623578739 704234305 637825066 679509904 809777983 865745939 612773969 919070642 537056260 702504938 716149668 942829896 254356960 803034432 722714347 947668228 598703550 869920199 911734408 956890403 822823590 981703656 376746983 695452170 439852725 897666278 490540998 747770060 160894243 598944662 50564215 145764477 93760659 235879307 210463471 364688320 614377424 746383655 605622722 888414621 546925992 863536420 336929179 465129421 873678101 980490679 99487559 282874016 523360209 718003148 171771746 876916757 26887381 872159467 872380354 960847878 368578170 684007662 377684073 818988743 882374007 935246043 621408146 806529088 211977965 217648115 936529603 943089860 469105887 779348705 598546972 951107634 722352342 805529158 911278033 971833117 323767478 445075108 851498631 884188502 129829528 691610444 120955267 156641425 537960653 636616545 965586968 968072204 945712152 964058059 12120767 845059753 937231547 977847843 810117267 925315218 10830145 833427637 221894627 368846965 437681674 956765980 786057733 863054204 47612111 543165420 787851198 902762490 815565519 950752669 301877434 895505027 666398231 727335158 498736459 674148127 332397044 732448531 806419538 940734384 198749335 761956029 704848215 821069354 311659050 677396373 202269793 333895922 556025028 772778272 744356209 824862473 917113629 979347896 844175300 851378226 531139411 568873852 196517834 460147706 336808044 965315772 438033984 727240724 942893463 949479205 998740767 999264871 542820403 761085368 684853502 766829156 164126084 974652092 141334135 769329044 486504623 964234395 846602650 943852160 758821273 865955928 604461303 704268216 187480253 373882345 316476302 955103588 832923434 860398141 408952117 772370170 274325658 429068603 805167550 951695793 860787295 881473588 304786292 765384516 761024325 884299644 458575896 660506710 412659051 570199399 34130443 190138095 981181940 998362179 260239252 941137970 849901682 994507119 351599640 601847907 119830944 344950092 79169971 886750329 117903842 867578574 124251230 887798580 447557496 669862983 852993418 955943398 282899947 826733234 770610981 984545356 77240651 571703583 827239805 876952255 508970134 570551170 749099511 888317970 950862660 988920797 211111136 623022714 153120190 995505339 775588010 798747153 861425218 962397782 816721304 954592291 858177859 946419054 280527954 510988386 696213597 811823336 800112350 827721913 979526932 997651245 689724917 957859759 607717754 767490513 834790063 868504106 232944778 677056807 353614405 828501170 690846211 934454380 190753255 775098267 857398649 978131715 724476405 839808853 381594776 853711651 40256317 833270501 772712527 858042059 207309039 654360423 522238619 989160879 243568653 650275894 869090219 923798404 841276527 947547307 487042427 955344920 397032217 451529556 676113668 943145340 816914933 899626272 749726545 998416959 899921973 921835670 493008794 547865293 393949196 993601631 634728071 741383603 529216718 615266043 576850196 827619459 717571747 783463752 193880130 549435423 37220140 200215732 633372532 901025884 862411049 974604068 18254487 863081785 994947618 997523327 105915243 170480111 81352919 712827145 796512227 874516979 740773197 822433445 113755725 650551671 961278819 975377406 550745789 813649409 147271233 203213586 527488851 641384108 795770908 823379852 292764005 970030518 408030373 775072084 773879990 992881336 956455819 969392529 486938130 959222155 766309867 948530871 181147048 649321108 531004261 700351273 778872812 858494839 820966415 891818429 721108076 886315063 772967667 949035491 82658857 437512712 35566942 908311006 650123816 931764123 506166146 948795667 630349875 730124247 207693974 737472085 275835605 949264913 644512339 871201175 233313838 945301885 51865582 234209415 464219548 616458555 317028307 622429786 637414753 758607770 667101859 953135475 43489740 450075580 417591161 568358455 476820632 506617702 5904400 227377245 871809821 948962679 554670269 877753235 131357959 197274637 137323143 867036502 82222914 843242085 879059264 981993120 397094749 590450625 8899452 521119792 118607600 448884264 169931109 866780122 309179854 671373389 231050679 937803601 6727753 418131346 814483642 889105976 38478569 150681138 733694896 814855093 957175834 989241268 350798927 956800655 983873189 994390177 932116367 980477476 701012680 874980350 231689454 535891293 318274270 748788373 315677730 558987143 906013636 981276271 71321310 953279140 37118234 934389465 254664030 834256882 594172477 746459684 651222341 843665170 3317002 500309031 775336985 835314318 528575965 933785506 930792278 975385207 795717802 977293589 920877913 941715159 374342311 628623964 472259679 961067024 935056724 983846345 410033769 570796867 706568869 880238197 171800946 756224692 856501563 948965083 940622432 989052165 989813367 989885573 308958418 522469981 577178832 928875460 897230945 930155038 604352103 925730808 822711084 897559755 573131549 756875487 561740599 615672692 626900335 756080376 68417640 716043764 471921523 643822587 64755481 452476280 585171254 935091015 927636201 967178853 61501234 411652093 901142738 914891086 765269551 821733416 529353231 571115518 305958322 313285698 458564451 649438936 413830025 887250763 285853245 367285871 183180444 558081911 86574497 594719217 673035987 908018646 24877888 120972182 658319347 920918683 548897889 939264198 357029912 536723094 187901964 319883421 310150706 705238132 142268153 236463878 366343368 768045329 304234101 771703859 496894411 512880968 722724380 804814577 480140994 952494220 18871499 60938126 118822133 617094706 361023183 478245978 509339451 649450810 208563856 348332275 155245295 325036182 466291964 708830901 858591670 932754367 880074186 899404633 737885506 918948103 757983126 765063402 206666921 572705211 726990570 861137068 467133951 805647098 507734945 609778101 315723730 523013075 103294889 618779627 252683055 869525445 419745757 627757705 656379603 797718999 392469957 938924865 391526936 659033207 181091218 862094525 373372812 586878113 200414509 308455247 741290950 955705077 87974438 606723188 361379424 469114014 377047141 729564252 303255914 759722834 445384071 704901168 537847330 609890315 63826491 528955604 703513072 875875777 407663164 412553907 78164501 201642838 611380067 800995016 675954283 902064634 264528931 317785653 896387518 978729481 573952489 949245784 302855529 524830302 168345977 567832595 898408785 983896211 85998537 336496115 88691087 362306936 909595875 930034063 215403879 866904649 153383922 176579386 779693923 813862841 2376781 602299085 278583994 755353375 6467023 484454007 429825051 893120872 993027871 993861157 936832068 946275540 739764820 784222608 91438941 467706337 899283026 979784335 960111249 985695771 906666175 933267487 227106051 322121965 382999221 472258293 57404503 566392043 996412527 998536840 568767639 702414514 294812971 554649704 111560146 129651316 94782502 871760858 371206696 570484748 688866685 820363177 509014545 648232178 280668241 453886593 44676592 310742329 465431880 563640933 421945086 780188285 60920817 464782940 513469311 792716949 812017271 973438008 935002778 937851350 631994512 966250595 402133423 878815002 931562561 997847902 570795388 627000052 676293006 931894846 858155943 982472254 842854871 974030271 201167850 493043863 423862928 865779097 729045727 837136335 38405663 806314815 585211080 896846756 903866526 945195773 195568709 351241705 866633680 904444822 211690630 610619024 185155434 234767922 724323362 899799464 353896166 536258385 212261828 586122678 179031725 942018940 732574960 752706345 277310179 311489859 736153361 978876413 871685777 880899055 485388964 608663709 388562313 769369628 838519605 898286286 905676364 937551945 385539080 981199116 559481704 735980344 816113054 970831765 437532170 995319885 642026493 683377265 537502185 603243566 514094896 799731515 826348147 973100827 318503900 493506446 430531249 860969895 417012557 591794715 163762618 987248523 306138848 805231775 155382038 304915077 298608761 572650566 634407352 667751435 529178887 951398379 12229105 244694262 739252220 781748400 922867529 957222212 992396672 998419808 897856716 993696679 133908118 759895108 910051612 990830901 742687447 864065788 789051954 826440985 313415924 362768627 766076266 898144311 156463698 347375970 738077763 847843569 728087212 910691427 671802766 847764268 142572681 310338472 40822999 845259352 913688436 952692789 321609932 326877048 383294266 631596443 959165443 984690765 807969799 854054106 281343579 657041152 634569406 779206990 869754906 964080423 584590423 959960413 280331629 304060236 319449979 933884494 101289334 371234483 225839580 797745564 101949254 262642090 443849640 846068253 816995229 995481645 649248003 952491330 902764584 925412002 353364498 640471285 628123597 990475650 147978551 232105784 275362467 926679025 329690452 891707626 618776917 720201376 67816272 150413244 947520185 977671642 463588923 925927242 24469709 441380077 160762163 258428233 463391760 722421728 385732666 666686134 905737396 991882516 674803834 930551406 963796189 975487147 323797360 942922003 59593536 695584940 291639981 593243450 701958148 840715556 666890485 741039067 745317563 951801795 78563924 836665974 763654416 865326604 102260261 838007510 174727818 397661879 604215690 995507466 512028514 842114503 580665203 669345010 700573377 981031012 679397139 745206659 894714223 989770427 724967607 982219890 919499577 988299858 777750291 898737845 759459279 942017148 187409830 652843588 528179529 598631055 19626769 876492484 588088294 724251209 158135562 234639494 439916140 455528531 828071118 843260970 951988712 984422054 966330615 972185016 755369380 991000953 240069529 388942345 696423116 787024476 374838316 502930594 771768096 899423906 420728926 459251203 995907740 996510114 112876234 520746526 690930096 850851130 673904788 813735612 814287805 897267661 938978802 991223579 970970169 998905952 723910613 985914789 177162245 986169188 1773946 71683469 29462050 450028777 815287909 854413602 595122596 684476405 512664532 898007539 650999061 705609784 919025054 961003266 543823122 728588003 259575580 879126863 274440084 783206619 728249131 828728897 172725249 307523756 97242258 283514570 511660488 553175559 259053478 438884417 968390788 973894754 922089424 986436478 813720468 922899729 827187462 872612170 410086996 684950208 986477331 991609533 661351364 680793743 669735015 714049813 937358317 975657082 696235367 991172664 81057352 856308989 905817142 949621401 329937557 828166805 557697915 861565800 438959140 462677717 322232163 961162834 967983391 983370501 453805904 500172567 510835091 899252931 540290561 970797967 668283357 746267477 85425783 322847691 97227203 203800943 473416482 820120885 713062065 787820342 637073698 809022961 336905418 692620139 998822152 999674455 896030453 897109813 853310432 890459110 936199333 993373047 791954078 840175284 116279129 140968521 159828395 746095099 333573628 970630362 603263091 817444174 553688100 956506664 137498446 891627225 639818003 681852777 177326384 224266886 50612537 929435805 202471182 533900527 753222361 796974150 606199280 999132548 303530606 419483877 112220529 838666383 927130410 952544359 913875771 972869414 676867942 906146218 145783655 740409799 8657082 815271868 966166212 984488775 143090537 227104706 888721062 954242528 153088093 832590453 314560405 637645693 571378693 626146193 915015372 955314699 139321796 783076811 744457440 811345047 399877381 593873425 64721939 628165957 759235547 860101831 348409574 783828582 114160162 538465503 757460615 880231527 666028521 682973317 440145027 622601549 973549510 991797679 723670441 982815317 594779756 773367669 349038315 558879340 553188327 986160772 454874383 455101201 262395327 789759415 450668326 982284057 472935645 739651003 503951509 681045913 660504108 711716579 586331185 692282795 305949664 484894993 823770069 845251213 787271672 787504543 353804727 755254855 819528315 855856758 514289991 659068890 62848287 961776461 770999287 903218005 420076094 685261389 304213611 710141871 506485238 515665764 48202879 873042061 843087038 921168981 885917249 932514323 926084458 985487050 191147799 804691566 183214528 683033552 67862529 643870697 210774316 397937895 848038051 880257459 479430816 624332807 121718969 270436228 115969779 644251051 693379038 853903513 417398796 683112308 350757429 833335005 506753365 969678449 22207835 375025943 157593974 880095608 44653146 161284827 297927531 604425257 130457389 999538708 90495497 465797080 779824886 836842263 366563197 816652732 674918176 742219412 841131038 876264979 256650637 612951150 159442379 531676712 716453931 827126551 886139654 891795154 19155374 352833483 942171449 946396692 561622313 721726430 823357407 913280174 361751829 688722400 928849158 961915889 539016547 664810885 659721760 922638948 833246939 970562626 686666433 952053756 676642388 928193115 235457852 655504887 203149918 694785596 274732589 643003962 585563245 779589400 503841248 630710948 997351286 999005826 243006507 940321329 364185339 696766257 540327555 830155052 860422222 879658345 607055134 764001968 424359134 933218759 353536850 699113644 903766141 988691232 693177688 977784219 108085168 223635817 291850844 692271488 809523380 826177370 334119963 334702304 651720179 687971846 629616277 747092053 273341768 741456428 875469985 885248572 769897553 825652979 714282330 745025448 187125613 950627321 410774580 848276868 327157141 790548127 737327823 945862944 8483177 35394200 957283769 960987032 829697999 948615896 648260446 762339535 344786997 892274380 755805496 900838273 195040143 769082324 742457088 909040968 24176307 990248050 866970529 983682641 445480354 947917775 177144817 528119734 983250461 995856824 188738563 939591437 901917829 928113408 817523516 828638082 357262616 705569507 857015367 893488052 177552500 297957427 786979374 991537734 170294741 183644075 953760292 971601753 279693264 901218714 101392184 731340256 73331 993198091 40295720 120877750 9259730 416328184 329444030 345663942 272415347 930806476 998351485 999224612 394533702 712621790 482444423 908470844 258260848 976787957 73052203 626998438 778859755 937982777 253617333 996970167 859377363 967720657 883802252 996962170 915512417 979139680 466798418 678377909 163389792 875463820 988815457 998790112 278984935 929156172 705641344 736198370 542320557 669127473 903679864 966335730 953436725 962710483 272167337 698244560 123308988 163837571 766766910 823195578 503093872 742754554 941535528 987984619 740586006 883794538 469891563 880112942 259970275 452505065 224786556 629360650 386440577 828130058 235004010 891229676 369157061 523433414 424639814 502104330 192676491 278067665 35055138 399425447 798602059 899926527 292661456 634491915 323226375 671570745 538608812 699528113 891720698 964767980 973881851 975703906 370038293 789306298 210444253 621386514 560141608 882250752 143812874 732165862 432342737 936427557 520413983 663027888 36542416 713123909 72873577 438511061 788159878 870611487 40910181 518147122 554176153 864546109 683567123 782309693 615292954 730969817 365367363 399141602 847199843 974770299 663346557 875929435 14600461 883067938 98116651 657934941 924560700 965106573 12742753 189980681 901488549 937449376 675847581 891328077 946917164 999728768 889267593 905170448 911053904 943283806 862543160 991456941 736959789 951142049 398400084 991795970 275693408 305116945 731884390 834427244 756102895 759025516 576861710 754194510 261470779 824030980 40774766 724046290 996943627 999898812 618173603 956944995 188281987 682656507 664793105 708827140 331101084 748621304 402755449 644524387 139809537 365596048 763453385 879004256 920460192 975705650 435532839 481824285 188292590 299507650 380513080 730962408 287691418 508620380 945133016 948453638 573818567 977206816 185090696 601332359 57153213 136392479 88301917 392537571 29734572 580697341 148269519 768068673 411924389 634039881 432537853 882830674 210066499 846174528 756171938 757621338 71273997 457429260 260556514 694867548 72525642 83682555 929789520 998922501 387436974 733176627 200056226 546956984 861286469 996218526 719172511 901399913 629244978 686128098 183064862 799860335 761046203 797855100 966749259 975583085 205219452 277208447 669687760 914435078 705417005 803268481 79388767 163672990 993773961 994208790 463202273 504246516 761312672 999134181 111512995 844966947 273648296 540724330 442868411 904303701 790913777 860152428 225896636 830816824 496630874 735251287 903725909 944736479 582392023 781540144 177154749 392574194 545735103 794397417 525659382 824143634 991741356 993332433 854976963 928260321 638175891 788134492 648041887 885297298 471718827 520816418 47062660 213290266 136570485 648967829 436877920 479754060 453702693 957981583 743320171 868258440 771244229 873975790 953389864 964658348 998449052 999061959 367805479 521776367 771012876 960934702 412681684 455510326 114869907 187235944 943098407 964132456 743698006 746767417 332926469 771282898 5331886 224916425 965827695 993795731 330065335 758265542 235209129 891747787 388159243 437281213 969426508 979074558 187462620 822405334 110777190 832376806 453580380 706496291 90790079 314029774 503963973 863467392 924630173 957617121 959096097 982661767 6577042 219275444 118993515 944083591 172841216 896571400 436376209 995654174 750568815 946339602 63246915 455432419 768788948 771369867 709353880 977400762 93184295 932061634 227174270 235973924 426365975 748083933 218065162 990311210 117625635 395759446 780437822 954440692 127177541 609265428 170427380 424036743 315153111 551665583 794723692 901608649 526365852 543134690 177198056 274903077 174795663 823832038 189271041 288846388 691979037 752434714 713334963 751461154 255861273 791157454 253572728 937661497 481611967 620102827 42923428 882981413 251873706 729196609 389033684 801552587 206496527 612343131 493153826 762938123 119362132 778028668 161771667 337794495 149081515 487583717 232232989 636538712 985562862 995508951 218056431 672906599 879947716 937871061 958886606 985209195 467501668 641570530 200334273 384304234 270068394 380527864 663834613 825459600 951189403 967467876 617894126 805368618 829297032 966910462 364558287 520771845 713366859 998974351 358609818 494450316 866733554 898516800 593077301 791252438 677200478 971174503 671185515 769280305 247420831 307863996 181529599 940768827 130309159 140155228 32924598 240822303 27167210 986130185 157840145 173070231 275728668 489813403 45998226 270448820 464260676 665677894 568042579 584789760 792666221 808577154 81702170 780092724 654253414 718588652 662175085 699273769 739552942 867845891 437837427 736058462 977910152 986557306 517205906 615106159 715991697 936744724 621519734 947725863 618594788 868581110 786928369 809742317 54805895 951126794 484724278 513553972 702307921 938679327 512423969 731179813 782919914 808828979 87517382 453374129 901535709 949930955 596138299 655854886 833665065 942567321 897252881 989557632 123858356 555979877 621523048 816110553 932385441 990406692 472418717 783146574 335410839 360715380 545816836 933275257 721267653 881644362 978403352 990583074 840339965 988458696 791382806 861308559 149031239 938691643 715161588 844449031 862684084 865909018 237992844 617642007 633998584 762258818 751168830 905192173 800864217 863328263 216294672 427791685 90396610 354462800 164879296 334723777 806464500 921703920 981745548 990735102 927288144 987374361 819791697 894653147 172976906 766586106 606860428 783547374 165278422 703045877 968396503 994070497 722212997 811771657 986742119 992754744 206398456 807227758 323077522 802469574 66519016 521846303 24559832 694736659 394447266 715952315 312188823 772505971 611402459 879593549 59042288 552934181 348343856 769642119 358063496 926416669 252311485 276492472 897894419 916015220 309379892 513958697 442308053 719645907 208336078 817595734 451499595 626553041 206151002 400908351 959616088 985048040 641238770 940525359 979403936 989485658 142436814 729354914 368715149 488401215 750456689 985192828 791293888 984122054 591737601 819822445 238917073 378918828 474090770 990157441 40972836 452853864 692118049 792768430 617486499 706730600 909859274 950793072 362481934 651429123 177880294 188769643 974242843 984458083 59354327 985480075 646171785 999119075 31969013 223178083 750829944 827842385 210001697 797000726 871470356 936115418 795183791 878766644 815667067 903363943 456817310 758077005 377669377 600259437 725869966 796310866 542511138 782167279 683430863 765688977 923068001 945871398 334689798 786296125 686915705 999664414 293253876 513909956 705628094 732161491 648792689 705830065 590886408 869669010 341114986 531741890 583047850 820317726 789110996 834835641 381053149 823872846 583139424 790833703 666764249 850668053 994752285 998426767 518393179 539641321 149500648 239675188 808264099 870251112 727022504 776531321 699112562 719657143 380240343 684673614 711091164 924198563 525419622 593147292 588796598 877155634 144015185 157206209 71507569 384047931 80044117 416515678 535391007 858569693 680803382 903019175 155452709 309600841 456341623 783543921 382720836 658632442 624778953 986525573 717527351 840113184 262370388 678805916 453945476 799938904 54729545 796174423 554975355 657062894 106750406 404756820 770074308 940826964 471144044 685731326 159688468 552054300 362055463 514772415 182587248 875557697 691397877 718730909 140052240 306585836 744727414 956745857 238223964 755284178 402042707 831886019 858057569 869163920 866060261 870397225 189551902 576007674 138606505 275096528 783104760 923195463 83336935 370227246 124706727 902700497 71463278 965814129 646011239 880835693 711667322 953079748 253171725 821919954 14067695 230809294 492574592 748775942 53471330 684226497 930088840 979441613 843496083 929049711 15078574 107383633 526225976 962280317 570288721 701428116 373193351 624171000 672460357 815000092 198494242 733528989 416276137 698289979 119072154 824790572 273743500 322194005 740881093 888207884 649181272 759169874 159094846 588783528 911363012 917116845 690509990 868035145 944285848 959095313 799093015 812549495 500025977 596276335 204040208 408855077 12808863 199571573 692618733 829213562 244484218 447381669 899430486 907750536 72541345 299340282 178257077 250463847 603049722 974878833 468875105 568947934 600792864 838863556 47987412 435327325 25042045 467403918 751961933 994600480 929155218 947062960 48595602 155502285 798855250 960650257 573181603 909376299 535411518 571353314 384382729 557239645 713103317 923311066 529456254 814950915 71010488 457748317 505210056 722026251 368908368 453497716 554734370 967654781 554912369 589916223 81083059 898864001 798597156 833954762 613998451 709389545 776710845 864746190 903244608 906471885 929723359 963851224 674438438 783308813 625653927 926804842 409663018 663203538 496177069 707760853 835795901 967782162 855478316 867857351 557247742 912240385 866817707 872534154 307409199 444295158 420018488 566083594 596348542 662601219 118547276 621110372 817665515 985967195 984193091 998841629 387652941 413997644 785315759 927742293 716394251 871706294 482683379 702345000 663781719 987394851 76764089 317696275 986222006 988186212 437975119 636753659 602088839 672866502 30891701 361940287 158213552 513617404 222898423 955240734 753632347 823583664 824764429 866785768 403970147 955799875 457109053 731981966 243242398 862993718 502889657 972817440 281727836 885707370 759829587 786729369 883062016 971212943 11552904 51285975 78632457 784297294 478451852 814642972 12165397 832843809 955151660 977839354 166264746 733957716 13587037 763418278 530443971 952228979 56963708 660348065 365911965 523838542 632214130 725391334 778232524 874286505 205764436 231917024 225918849 869961561 916622289 953484445 207688949 404260463 424556409 455736189 807969198 869440586 117793541 538848872 134941254 785543849 696104621 975377075 271837422 324430745 910811729 945498722 850479295 868337501 775864029 949855569 22396625 351749031 537146953 704793407 587613847 966110541 367475298 921669862 889946567 955246488 562710193 768126373 983542414 995100248 908445430 971450008 552908669 849065477 731202953 990810613 838864699 880320613 363809428 570939332 966455335 986869338 454293180 984726289 421738239 570715503 90399701 833249457 256228455 610222775 525305648 559083172 337827874 405194032 748425495 916344251 938419211 980524191 855519610 986097237 853559441 922185981 482786863 976318414 937647131 971382752 802740856 956223373 225988950 670941652 790142014 872373157 991865164 995932190 569190874 724936711 209286056 709329370 599597575 875041914 104377118 972852795 945796051 984494339 907605433 908797974 975587899 988139726 889828524 896232963 847040064 891924988 43166476 94173833 413292700 726354075 302140328 479076448 845421911 936621961 724010700 806092750 29055174 571335017 615386016 895699791 346831389 914411810 2488866 680752156 661076701 706835366 766479185 999065723 166199670 925167887 418759629 741159655 433036803 951885018 495437129 780285597 926697141 973942060 853264946 920256621 972874961 980083120 32344486 407486894 259612136 952422267 852536378 935278216 271045034 326726663 494070870 898449284 648796365 791749468 167898909 792028211 78137775 966986378 235772515 803194113 275283540 299147069 637373675 639841876 89896937 131591736 473926695 896487568 983446562 997567220 205618549 944063590 100860371 930727037 54781857 238088385 983573112 994181685 403582787 510698580 630348324 910422733 440357200 488512833 832946335 986015434 148135757 239757229 31957638 540235092 294765089 420752526 943178677 971242355 350156491 744319656 876631283 912417411 337313944 553097040 495434440 575432531 548783156 934245101 364205761 871469056 465432790 684700539 375120482 671406675 39014192 685654682 320294266 759747742 558515262 596175669 316358800 866530301 476852838 518208508 258500286 579182545 540406784 803966996 826364155 985398163 233116879 740625198 484220400 638669976 787068267 953040682 380837736 733535642 870750456 961148748 196400198 901102892 165124900 956678065 227325972 482655854 525941477 580925986 678369005 696050939 964461465 989131610 766534464 816842001 311575605 553824520 192680123 430373556 644843262 884559289 133627010 937972994 334503381 535536770 790865114 943932182 546097565 915569104 81289920 666134144 945820603 954452880 395172722 705530312 308238862 495327381 852566846 998287153 597349075 997222803 654713951 670787142 688992172 959887717 155384110 834600403 546610555 962536402 133799043 611677012 529438208 776969453 916680610 918677828 491286403 573901974 782633460 944208056 516466317 899285116 30826312 191457482 798811635 909026459 443367367 652124768 828508143 932163257 848207291 941085507 393867372 896525867 91097897 117239209 398387643 426085241 568588524 639396207 545056620 848989068 143133078 369255517 932510471 999071725 634154640 844873080 806545386 953367623 283147048 665695204 157206154 995879848 116837737 243959573 499942358 821229433 314991536 449670173 229745380 928112185 527251656 955046074 260721230 522968327 242429404 999199703 238661537 766507176 603884415 772965268 504286182 576132891 40054016 960651559 95315239 989817203 644154806 870448407 812467037 847635377 491221752 994535533 697329204 957898038 580581875 776062752 123077869 602747914 635374413 815922894 853775571 964695750 270756287 705295999 265341285 963054867 311605473 892604643 526740979 912824883 779612615 793389829 619380212 813401931 102387374 619647477 449066520 488093639 663541276 923423163 510914825 622996074 103138593 866881790 817540412 999969393 615590853 758577441 413284070 936004204 729889519 794475982 528714438 643437291 306845264 592846853 218874218 926512317 532777199 741755428 681520040 803973521 98033531 687886123 76929279 254880483 238468270 857941597 577852573 579969539 981023874 995489921 918444242 936659260 334338651 866079132 966062201 981257055 19473851 79377758 365926785 440744383 525031586 637565642 826958162 888525740 518874922 643261129 571034904 656026881 97312851 546341008 853807641 857259475 846943890 998529780 159328575 316866472 529927225 731129246 444002619 533250033 314709407 886533097 420541426 507360559 542825565 546769897 764095559 963642787 354266373 425847114 458500895 711109724 173057945 337703936 434705059 958022260 862564875 884451742 351170828 513273163 597364721 980407953 495385950 694730600 306837866 659210361 733670451 860760493 193187663 631436843 757684952 863458930 244599147 974973080 578401338 793077779 722603701 786383422 662054596 772844344 420430421 734625915 979753747 999616708 80762393 569725742 691258430 692175236 139381893 598920142 513554212 632556611 978833751 999146997 440198119 614110797 886923523 906241083 451703156 849093197 704155074 744114867 809209068 884019964 637148367 748302046 577722128 817156064 780216810 848939718 638973627 856750922 990072470 993713154 168803117 991831569 485739557 870740382 199301107 466763318 234182720 832237563 447824133 767209872 749194252 909619428 198049292 249272422 37572771 147762785 372460103 405641661 128778916 942113514 727514268 816718686 3110746 490996974 65356451 275385123 648049208 754145967 650423218 689995235 616901461 737030825 901426038 974600217 252200886 425887183 283154420 886146658 191539281 550002040 49081260 155549282 491015592 757812853 616715191 826697756 784876399 845361169 502842749 805451658 212904085 746204943 932572087 957391133 477015360 525237720 259310645 512230115 39925189 154235845 824129758 997997319 285190066 621132806 530172779 755321055 866936164 869866476 549406900 734108477 512594252 664080818 728739 643284050 595452174 923102319 37644808 57931824 430229724 980091160 263475524 979807679 693855674 803023979 952561939 998053708 115802414 736305478 898696018 972793259 215356622 665690325 898253440 959105341 57121674 168564256 906075019 981381760 997983516 998477460 565467169 893263022 510556465 755274176 489436481 713563110 925498059 939414686 47914583 307693790 909647665 955137313 667435945 770951827 66234394 789447256 998621815 999942139 404323652 963257089 756576277 961190149 592274519 766384962 329114139 882281370 992638050 998960410 372734353 807087369 893941319 944629275 362224789 395383389 630282216 734953116 67086358 490704132 792889615 800432467 706019013 746652889 471232926 554934313 682093364 951386504 275102180 566903282 65591099 851823984 382298704 982743149 30149639 816551825 563951779 865395079 497624873 702422479 562728172 944621788 234387905 627299735 905534452 948218076 422360445 657821572 287340273 866708499 804308688 900328466 910405650 962801247 7882405 142180273 410500229 783058382 863497912 915922613 27195078 249493188 828989224 968348982 751721429 768767578 968870911 982852502 477483472 598324553 890265498 944923277 497249265 898084806 648831308 811822329 798246339 896252587 495500393 516591952 307433231 971693320 289082740 765810856 474319147 603995492 344338749 550640884 634769359 762339817 145347386 267115554 312572341 979178824 200183 331354920 358868450 688416380 178277942 305092681 426302573 971288560 261423460 748115478 655007037 770396179 914409766 948569445 235268359 597162383 21103278 321910063 187642333 594992652 661104770 780499442 173360754 978671664 764340170 918041621 361292229 600164863 968959721 969142171 594823496 725727675 682539194 807633299 146594862 501602021 180160083 719404926 758461173 906170060 436024059 925033159 585198122 778393236 775449660 955688368 456409656 804689189 61929639 130607739 290483468 397818990 593498937 709510710 879844449 934242447 569550742 951126038 978057391 987705209 99655874 929189792 745202948 955500858 217700243 497542175 868234333 921627977 964870983 972328604 509008040 938332080 742434799 908861547 384459276 715960658 337041954 414166222 298256518 339111433 252735585 455724493 632802963 986884216 398688872 962450617 609617195 808928195 387561060 861660245 787153017 949255525 489799224 528229100 25596804 954086474 228282043 424749980 359796944 550181249 893924034 992202777 1685685 54168425 67537948 354342509 655377770 978069619 278736026 832172954 500967435 614425782 803516171 974983670 725817971 940905339 409102741 810937363 391096827 816113115 253710618 294443689 207316548 962914604 619076274 986018283 339458564 446800181 87203602 631617028 191533238 392485649 738062533 821548238 104012621 594220969 884852679 994238002 916537143 933109421 272962777 834835916 788203795 803633870 323027149 966308624 678805814 829387395 536043851 871213760 99737872 507873881 956581245 991117960 948581817 958876229 884620460 951703636 182356038 197313086 365655621 451786934 188047714 817460423 900526214 984109577 486988056 592504470 408656936 457775994 434225567 717067073 941839373 982517696 818630316 964209811 350038675 380564654 656438001 672611082 821636872 919998465 591254531 978201574 259801088 791563017 603986515 684906237 353353522 612271327 978618648 995373020 430765187 615145105 415643877 712256476 104796761 754863102 791097586 973684816 998239045 998950009 193195621 407058031 76084081 788973575 778273569 820675214 959249278 977520618 591025200 917956322 971160697 974007826 888973379 924514599 107913248 996566418 559210812 843388179 921387319 953885088 617471823 668469188 123299441 783457649 558137618 808162981 79123303 816615807 182486343 712928290 76852441 564407260 736336941 763159139 255023211 534735436 73083276 164442914 677683483 716691262 163732804 433318336 237585658 362831850 997836113 998445573 955693888 997934339 285275339 627505804 780911977 994174606 800072821 930178425 514051084 961266905 537372839 648046902 833208287 955002024 294329863 929479405 545124887 807937049 763178540 842825248 931021492 966529575 473907044 726047313 463665321 943318970 182179131 477119474 618000272 882457311 816116720 875417753 689755789 840261447 897345594 941327729 446539982 892122897 527459794 590533272 183442178 388822989 668405366 992937252 622003526 989632005 68973148 795003063 16485257 49922533 22854460 315890948 335199378 780051168 637676268 684597966 769392151 924486612 468163753 751907789 502995284 782399241 654301568 936692921 902637795 926498683 489024419 739965352 595181634 675091232 339821218 412729607 393567776 966776144 599217845 810592113 668384614 753492981 478535684 756276729 412177942 643278737 243258376 690932604 350727060 390124052 928033574 985991477 937903109 943901764 477669462 534039335 654842383 931717905 554812823 858510846 945497650 983723504 43838106 399952172 887378274 948006932 229299679 900015958 637159129 967671461 957566512 959171029 740423553 888571648 118907463 568115993 452659707 662509701 825082801 873310784 424207538 801042265 156346886 887571606 748920828 977971633 828165774 915342059 771779049 930567681 453892670 805079512 664234166 893215223 933583362 969307136 114145412 550645863 553757157 954240737 970544574 998687603 802224209 863238591 4622442 859950238 34565707 617614172 971363755 989129506 35496264 540477254 66451172 435805932 214704393 597349310 359298405 735871125 175451072 618870319 22886239 962646739 754003459 901525858 705458851 768585792 170626598 920847239 669226500 709551151 377076995 425714015 345514338 777734764 419239675 582563325 805952235 913023193 362592210 738830092 248807819 613854421 22508676 418250894 853052030 891639627 561955968 740584858 50855466 486707272 230683850 416667469 93344687 130901353 517749438 656560381 5858061 651168502 816840194 897426278 335840791 712257912 658337071 673033360 200598494 331948464 141315144 907574882 789018357 998384035 66256750 629563270 582450619 849553285 659518762 788839595 749232709 901931137 676773181 703741295 204101337 420443947 27572634 556638968 631504570 835614008 34372497 822780962 696057738 869566934 848514349 855384346 519928469 632391527 629358237 816158101 254775475 570849561 927682260 994064018 78996793 874512224 991969139 997907912 787496201 818554529 4328790 545465318 677064103 997056255 20061631 721618591 641542848 723384686 186489355 845419468 661591419 782857784 253845873 297160910 367563960 664739059 15185097 623250454 371594653 396584284 249496039 728683811 659096960 726078504 212360476 564622671 35640545 795631435 824901144 927619799 568972471 971919289 895015641 993158732 37762750 949446187 150064138 438516871 570479299 636912782 475297675 704715399 625393526 855679824 799937091 851324714 258803354 270803097 862423518 875827622 297089314 928924509 977610169 991045401 698075441 715826327 936613379 980960170 402445334 974594516 194738315 910784538 879904053 998115490 995406223 997734665 50907268 544780721 448466690 979725579 164302441 989938330 420459649 876828557 631120033 811533211 535870575 832886206 520664160 700835983 191759465 838189781 897713910 903513880 838699330 939072368 276800217 998126307 880045783 915196755 451132513 907954813 240217969 776412800 764342387 949083142 760350954 826001329 748967823 906128333 931663787 986464209 757158864 865529926 68796662 209228594 578988456 918039334 75429642 601362654 813455116 878869580 450460566 793741431 417524249 940804861 171316135 502772933 57114850 400332009 17709231 299256152 881577155 927687735 411295554 439989272 526048598 861112285 288951047 817777719 774617191 878773505 301089653 813589257 313916445 577576766 950249006 971738881 341292149 819102393 260292961 469321351 948668866 974550683 476111130 595234516 334008409 689987963 77212856 434048346 718198487 781642208 368279544 538940194 933050226 977002152 248402913 390883343 629063904 791077410 245084417 750355275 625573987 845068191 47386758 921734613 432264757 701948100 868811333 979930990 704348070 934738655 228893433 241401943 372264357 657628601 176798679 741584359 933668443 971026617 289429072 891258953 220724319 890674092 355869794 453105707 828288787 903954133 564333778 596309638 583142862 889484847 642566726 913967582 55984717 617646289 650927001 813242188 591923398 750389238 479597500 869975279 893081501 930024812 628332921 920872915 613478312 961639580 280238411 652973118 884307326 989475708 763407942 913012574 752588560 987621159 791877338 948072988 309571147 912026986 502835467 714269541 657424464 794732428 440922025 995408209 247372682 378551195 249317561 792928616 97598060 149831363 896603380 932776250 714483412 789320072 38645488 596267360 978649848 994474044 514455631 790848372 465395745 708921566 748189483 975448374 547010265 905519316 520644344 597255823 518820990 918994073 474396327 651502377 200657679 600668162 505493541 627518353 820763851 842648910 35486115 539807748 529337259 793948429 757336029 856398820 518672778 776923475 36012933 762350531 829091149 921346110 781548081 961562799 716213405 977560538 824329465 939600597 491403578 695514700 643169527 657931942 891990115 969318798 379609546 928501967 738961084 912458829 854562510 907816718 832159345 885624646 357019000 629767887 465717888 493568027 501294113 844675937 156932562 852960751 939530629 988470299 25489959 129708914 530340422 612492131 665013819 891452383 315064843 697635751 262532546 846826885 118346454 318702707 958993773 979866758 239459584 498468656 963093406 978172021 108436175 721764688 506716550 628397568 480407963 562231955 640951012 914540143 725677220 820468662 831888452 963329971 549021385 618797860 467957893 699976682 861330253 993706591 463387053 795605607 69826967 455504672 283764421 911650138 345051646 453525229 192168181 427680215 271405785 495731283 776535642 856651459 814716832 903593902 912101141 990413497 863725551 925054534 74407720 693322706 254094834 872289863 119399437 540781394 513663286 773185255 74077891 916721356 715328105 735636817 863690418 948073481 351282406 932605948 276407861 331190794 171675183 500362635 214194961 262438130 777287403 782696925 195523362 472800246 104915916 362839741 781070593 965581916 391731668 605874420 216891808 538743998 453369097 684396926 625687712 673389935 65309886 728611606 667110809 862108309 945502604 955364618 317410448 470451217 827323857 986755460 951324918 983923209 994762898 996541222 780568645 971120116 480158014 485984106 955792344 986043038 484432375 673895709 879434087 943962888 36204542 744576885 413358231 493123509 402462875 765935007 220304449 818456460 815510789 818765999 823258767 872465499 353784420 878774082 982770009 986135727 492891869 637400228 605104426 662630746 5915563 509033672 849710496 877808658 354844171 856517507 287081699 363304126 639123003 981324621 575411624 854960776 251202012 845337050 925981998 926228388 265776238 799177647 57537306 448387759 17360947 417849605 7566182 819532421 734549451 998319217 66865766 788820013 436613893 743866258 987101896 990999386 409029061 663993302 635859518 939687982 138748777 647312962 447174160 744744991 463834901 832195243 746769517 862116832 434680759 772408997 566704443 813798081 384716061 864760174 614216163 785963136 165153321 685164384 570606215 917031765 605257940 917967279 507943458 857849515 945852856 953037913 630878903 799173589 880331126 966316359 168860191 752281601 333250681 375137840 704261047 769406647 816853602 861349861 646256718 956132255 373635619 818713194 961816039 992222836 88371589 149359368 212730860 374623938 846675063 977941480 307094881 823105744 127496626 238632952 869512436 942325209 187449470 689158240 412511986 992709979 417233677 699264361 761513994 855325526 190610781 461423294 150371648 805409836 554110387 877385863 535644843 703763540 433700805 609995980 565217690 857677428 340230853 540207710 788845247 813859518 7001726 838530587 839237125 861981419 689436628 747063630 814332330 964449487 634862351 855641094 527273699 833196259 749634993 869400552 505651952 766836547 106457440 301424270 607897216 794802512 768526239 773222680 171930721 457472711 787865102 846036008 885043595 909089397 137711939 616357358 485582728 786868267 731525040 781692742 168789617 647100165 668149665 794713898 248702342 358707646 540903639 945266605 393200138 933069187 846189465 907939818 200825873 727694116 335874655 790419932 675943610 798225794 332538632 570082709 859784470 886638566 465073350 624972177 849573506 880744253 430640051 711923338 922894017 962126087 787292682 833203537 381087974 813479222 296093095 393532867 263949716 641726848 118953173 957357277 134132065 164371592 581166880 840131052 643006597 836242625 973471059 987283853 454810396 477841278 514511370 679816623 107833389 265660870 614079525 870248491 54909488 141935936 546971355 652061321 829997634 858479844 693527904 939240232 153939801 444423738 874028384 961389462 980553644 996294819 638268942 685138411 69538178 507864063 253985782 613128702 939616549 956064538 151454438 362799268 303931897 493042247 389445213 598832214 840943684 995213842 118289312 606248362 364852925 907585657 898505963 916696272 143195576 878863522 610977020 723650016 607482726 937551412 402769977 667554385 436693508 985696918 214263945 305164900 78840886 698556218 636782368 675114766 873665539 961317192 7463504 105911544 313162650 871788130 147024452 983633868 457455894 720892350 829754167 855113925 333121986 538629925 686589710 868699759 788283099 927260053 672322959 753544690 121159985 222349671 132836100 640363812 287081312 690792317 306359046 897756783 102321624 849943175 780489191 908058403 89796464 325801736 834056670 974771350 629194149 905096402 890827623 903481537 471670741 670932596 206606982 319244344 870782974 875159711 736136548 860882965 66088846 583698236 383218776 924720453 477815530 734257061 400393489 420760867 234837441 644851649 418361843 760571860 247507276 803604431 438858256 654576986 132093273 404459756 607915025 735906847 625662043 846784443 462717437 580168986 20165394 403321668 40945626 901237653 745895505 943787873 86458052 578223067 579489305 613948911 322577388 741877747 460702993 673561744 394172173 977391266 165151242 844489008 987435861 992778227 292962547 903116515 526283682 580451114 369920547 406638856 377953321 798857298 274920236 501055011 801466264 874696069 758921715 836021670 236118428 515997750 290560454 940344569 136465804 384150536 244229000 987782084 293879918 762989675 949105677 969958976 893730592 995023715 356855960 903126137 137318251 730475707 979204755 990210229 398389585 961289470 18466315 237423732 41567114 936916929 101627481 263618033 352682444 506261143 671496054 868695088 398468227 553683007 158288650 678400791 907563127 927680002 105857810 837027854 454871656 798009750 174876715 329760265 799873198 802312929 389958678 929075110 538348566 570309050 774442123 965740918 225227554 889800812 46812644 502789072 953797486 960822045 83699757 694883720 140097096 469241474 207000500 568414638 905929473 913585376 657194197 952230160 63286272 609600799 30346754 664992212 680591265 739224789 763942653 780521617 555356953 933135043 846465804 983795675 459161155 842358463 136609462 232312686 144356601 530587990 279072611 543701894 925713381 948832174 87164598 348222427 903675248 914624661 129954119 227413120 953707382 970596995 143103521 479883958 453640070 455805802 326882891 837621694 556092181 688590366 701469964 736803810 897454278 971882192 367174405 652395458 826873733 841877509 29536386 709995119 319575735 972948021 177057898 237220018 544593906 670038721 429286133 705183879 11075498 571447429 389330487 971780098 667123675 777250162 544777964 624397774 15598862 828699643 34773474 259884681 122634074 438266810 988457407 997257039 183990097 338306017 597464392 948219168 820814471 971797609 344824633 951699043 634958298 798717530 615638188 978716189 623682805 790781446 424236352 707074631 652348609 998827172 775404155 782602974 792678506 987057959 366903651 399306214 228853651 492814672 817406116 975458336 302287012 637917706 397251755 551650663 522543946 957874037 359767252 893462317 585099958 831521016 505568661 606378386 285110916 603279474 323031776 436453424 983202838 993745002 363635434 837808948 201642991 582334809 478465024 639298428 295360119 895458584 318241982 840244078 271624964 340869548 517332943 870113294 641629206 643163665 858032447 983477440 166886360 562866073 686798526 823500353 399797301 827167546 395906023 835014586 305296690 582609783 125524732 738314948 888495798 920926201 140094902 344048616 285485203 822191148 214067616 353336940 422954212 581037344 660440485 854256056 305754590 383376633 388782146 389236280 355895863 975369720 347374014 894761403 674595888 966377977 857651102 968430198 494652079 549388420 777579327 940213220 833289465 973549803 279946518 834586067 505095442 525854573 404880416 503547481 972030443 992068580 311924269 798313739 323225739 412181721 644330051 755233127 628652220 986285425 530524381 959957056 799337495 939112706 908270758 946298701 626857479 807684306 728735202 868670243 418565203 744415018 724168638 755409246 999359018 999613816 527641913 807557997 684075640 988711767 852722268 876027991 248609851 708952926 515926570 906359382 903175401 917048790 813189176 848800391 650263513 960019250 935402866 939373227 882426906 923349608 534838402 869901683 519076240 972750478 85876285 350453039 721370622 801131948 79168459 370642870 154933672 512560382 582243752 729304215 475333912 989532707 447869937 686967976 32397055 425728071 175334362 961226578 851066615 909589200 974131876 997796281 536996023 719060357 518262420 636071241 413949587 763340168 705936304 741713275 325802700 471073031 539274750 802077630 864212437 867515640 403076293 463819652 902251791 921296964 562185591 802176643 931157009 974721825 460050450 472594116 171964131 430290004 465127023 639637610 867513627 972395273 787777046 876017094 381834537 943181517 594571375 897850138 453461911 770530615 245515811 882512252 3082823 573930375 862468686 882647652 326464665 455919725 248218799 946812154 506544935 878687576 675038263 722562051 199958709 844432784 103477534 799799569 966646730 989744935 779839594 964696603 32870339 203436226 873603846 957386457 239656858 488533307 562432569 631756856 972668182 990763629 548620370 987330562 338044046 788295729 941030586 993416434 752751589 845703626 307673197 898640136 986242877 993071950 669840467 726104312 156676682 677499225 579652758 755423984 612279486 755215931 679031780 874214429 393430981 768452595 45619423 671967189 36706232 361611076 156502295 513824201 930196551 935849185 252537105 479199095 100182946 840094455 579272910 862675932 424954347 526341000 379185119 903799504 686252345 845267965 903426212 937427973 398587210 509002424 246820178 443873599 523249711 821134793 248985151 731199828 826648798 932970601 942035568 963786934 668532902 851813931 465005117 551849677 95902967 363888828 831253737 871255478 932835861 942577168 919153877 954914096 85999331 286691020 857174629 903672937 642195868 901068390 52077742 579251373 312093548 325905851 898171514 906825269 23358797 461028201 424771147 944324979 165282837 686143916 70871362 215931715 154006585 541722617 625127079 779061986 246237750 956384930 950778004 954927112 204615778 603162017 922217627 924286683 305152229 523659233 430444544 774683157 936374645 942545209 864874940 990483295 921096969 926211211 254485269 663951169 725064396 952512168 836776246 947168954 260141478 691577540 266333714 879462610 535477223 842169975 565958021 754064071 369427148 876225836 86629208 119171667 222701067 760928426 254140069 832120679 39130865 773538693 548584749 797302033 467609913 949537473 906483046 924189727 983933381 988239242 491269539 725107428 618559058 794527445 431676741 755175730 66310257 221805987 218171413 837061778 55469999 127707290 461476005 560907574 586626918 739445038 92138260 330636382 298929169 589457743 660687114 807119823 382258568 490631255 214200378 230941205 590145868 721214513 785242476 946743632 640827912 827294803 763259242 984009828 17737966 66974715 621788694 706634537 325463046 527647130 472055752 807606363 131086285 715932576 47439412 365873550 687979897 973861642 944411070 978655186 754359612 994680975 874512330 952892630 123917551 727896365 439137606 668348319 161637521 490976953 553384943 836303748 253065988 848599006 969258031 975717569 248180239 589868675 30155040 634487477 471423381 590354906 782661334 819325603 289291929 963231708 20079335 412124376 403310295 945635450 359462775 758623041 440368719 597609283 877414714 975942679 730929788 921825830 500034208 541626146 989509153 994782710 348131324 475313181 48605924 102318543 54756189 950707826 515893158 616528182 40276970 586533947 730235894 918377456 125236620 735385235 289202657 673034798 879295376 940344982 751835916 889282744 520610255 883904432 911781198 955214903 657980298 827798304 785307892 911874852 235692170 617510370 776550230 870011259 294582239 306272712 606736151 643336381 573414913 863716270 921412073 962733129 422313840 609786981 877870938 984922564 856011710 887919905 456385471 809438921 493169020 753873106 861424493 891685389 855545095 977839043 166712012 772040855 498747028 996567149 889409084 905222300 340501020 559781113 213343753 531612267 31991170 927542010 827925211 897924073 485897133 931764360 330213620 852751311 942551613 979102808 780322206 902591881 83642906 994672893 758416607 965848066 354223571 869749718 929843852 955246310 392772714 425604839 433534594 952678573 974787881 990099141 90964948 707372246 932536999 957225378 725043542 973124442 855399351 980532797 147682101 297579493 274579009 822916564 383151652 947991242 163384162 333731618 465544509 509277567 152154148 333809483 391237022 727012443 450900119 983579781 517612547 593186619 647402712 803589078 521367536 798235468 230423169 815243932 963365472 983187269 849465167 944367376 303506282 984935863 932872717 944583995 851246879 980905430 212409068 231487970 545336818 992527221 62673788 596860187 202599707 284589031 437406171 969006540 128223794 418904400 775499638 785669187 730806643 965720419 834008028 933876494 465672861 900916573 669840531 686035017 222260909 793634869 102963443 222891489 213480926 447195238 563974610 912938676 383606634 987492035 291633885 374112851 433361780 462182250 590229500 961643467 444963336 714529900 692374525 984416404 886689138 932904758 375606556 983304626 992231315 994522468 710665727 721654220 447490797 781652093 829368777 952963946 40517362 325940025 408831174 630108329 791782207 840669705 362017282 456652505 581669629 820860592 414466021 766993799 292082605 602113413 859721269 926758802 261201346 464752560 341862439 684054999 335841238 848387073 769375137 956368462 720476016 835502440 138441312 949864156 809336425 812528864 72670741 991081227 989802491 994240722 413818055 494465796 750983792 891321111 800661743 937803629 135826919 873822259 809109950 919859231 213159540 284433418 816149532 843220643 609437038 965655349 913657315 927373054 265903825 607453022 69316454 461262422 627212484 947596957 391379708 664754617 195079260 673036703 388352962 930035290 952173515 965778256 957357126 989024536 394755410 698773550 257804818 471358746 681646435 807410281 235178852 889322589 298180672 702016684 984145935 997018987 74383076 515657194 414789296 870829413 774989013 796711686 615465279 713497903 867479761 970422483 49171719 378115634 156652378 211288934 509819001 805458341 873128691 917747269 691639691 947848812 834134136 989783679 43133330 208940684 194533430 424237236 990303352 991794114 892371950 944578422 923747772 970470669 616545352 627436759 461523352 774615307 499424251 972674982 884021562 928650711 523076814 643612142 291297787 535757995 592359411 720725951 22514234 434049523 932238317 946247449 454982260 613591759 520804713 637598804 937628143 968415583 995806874 996585432 313151190 394366880 750147262 903913048 548353425 969283641 361077352 464830624 519594887 565978063 649052537 807620523 708906528 733954160 407513407 608404095 967233691 995707035 237607878 672838954 932144933 977979593 606573662 763677754 50546171 824668915 664918401 798057359 7432607 593494695 527319149 657401808 901613802 909604721 520497031 720017113 379442625 940544633 15954867 785307783 714582967 973866336 286707209 630134470 869330951 888712828 388070154 475623055 2859321 61263883 271653187 787594273 712671448 914380278 471223232 899925370 178054452 530031281 402113783 910928730 566867152 614391903 369820400 754365507 264639338 567035337 367990845 572903854 335191626 689982103 804804924 906690604 890606276 985564745 529346871 858860515 737581652 986511497 767539416 912739302 959805932 978761367 402528198 908381033 809106450 995672664 452960018 517106131 863502957 967978303 314525008 548914765 991085693 999104696 678459767 996266704 814735118 910669938 661133414 904289260 486461429 507958184 703074130 794165861 48151145 543821803 325702829 761499056 619851475 747839308 844778193 894738217 683300991 711745165 684051913 699744322 268553719 789716825 262326786 442914027 182319873 650257220 256994778 594332108 903102414 936355079 496316281 614790966 969554376 996016170 794276317 921628507 172766125 371654450 197139400 619819777 727153919 730119474 344890186 850944624 774407597 800467878 703586442 838947656 651760280 990351574 398438502 414264589 389728844 493310141 160455368 185867891 216094110 490150161 122801927 820328562 189498434 781638970 656005141 734010662 301953057 850553870 983132740 986846917 190966458 593570909 120008733 675179700 374800912 636723101 345806782 471954873 303464868 320246175 894362892 923713247 367062706 803028625 684339532 955364528 726502913 874161051 966181477 967970264 700416469 772188786 264000560 760725544 51318458 582690073 45369854 811279900 865007100 883890879 907307860 932734930 834373504 884258999 349289817 870782888 31280487 279051274 525943294 971656285 6715182 908562709 699945405 828331564 177811971 522392287 399711470 455519040 589327970 589801570 346496359 972395355 197817801 980733681 515874556 571416095 413022336 779969448 113957348 621056549 350174458 508328052 940897995 952278605 76449083 426491171 83185243 751006252 247953581 301982442 756488381 843620050 843641399 951054882 522693174 538765185 298378366 938911022 999146914 999761481 176803876 572930799 576404541 862113457 133993922 771490596 624680270 957907358 88257437 913585134 424384194 883022215 91754398 600076379 231305389 347389263 270819609 787836680 31435224 628345247 544905442 683387167 462626106 859860173 143345933 932515199 844899511 902924081 641817244 994918913 356542216 987339059 694108279 835894058 541449158 824247088 275336979 812071554 801741921 961404340 437586586 827477736 681452668 697846314 279808783 820769985 384902269 617007056 629636782 778937603 453397418 539308360 104126475 376360463 383896931 868535738 135313907 478976087 151549897 689182258 420205738 456436014 576851973 781276019 820899317 846879160 185742357 723571511 212225688 706067711 111040987 487371336 637224773 702221305 555856336 921655333 694454141 697225023 958203078 999698772 480146572 593813599 556863798 589667516 495970661 883433801 592463820 884478481 473988347 550668729 809635525 898046087 37672033 57587839 475931787 565054028 982301517 984522840 792693783 963833805 371790087 944020226 701543428 919777062 935416476 946925659 352580121 913680387 610522871 918615322 698719806 988843468 595350200 907968911 210034783 860855367 133610281 186618733 269052799 887757595 25888809 979655098 683174149 767619449 838806959 966976097 448044067 853033246 830150200 869861164 242009649 827115344 864629781 921260866 198883780 756215628 480491190 557909103 118769058 961001602 687049998 812033105 263393157 864290421 262828960 905158234 122263542 901226404 996318838 999979498 525110590 770743845 42836161 558354080 810942808 846229622 582852190 901730098 720865179 977570336 447366005 947341708 694436840 922899732 920247088 967408822 961737858 990935515 311191079 855088492 39273013 293632000 948825063 978674584 853480313 960307991 196774170 451587074 204460861 464388759 957809296 974693146 115088811 395442465 787586626 826252456 638010580 668534245 146972376 657394338 845993820 998785365 495435225 594607365 148466995 420394333 262645172 505807833 919328282 950737556 461829857 859160567 293343317 548943730 931930279 969411903 637742720 819417888 544548742 995062722 620492503 819881101 438469609 577819680 872219545 950565988 233451555 254983595 627856886 862343405 600042172 607980097 629673333 870967821 300659762 913360640 487994808 555879447 777418943 781526797 915756798 956836949 773119905 972124328 78686506 372515595 875944609 925873444 230082006 953880838 116354431 974250009 128899207 403431826 324512325 565781337 379032511 515688126 608353227 705192536 33081547 427560271 783139613 809361694 792899077 885543916 970213538 994069703 399482226 490635398 13271169 130302805 18307160 943655725 952303096 973102440 102180344 124554497 114938685 935002472 463116589 600879116 167262309 265109638 189977201 414991383 820929094 923328014 839803546 969225906 548958390 908286697 985426751 986696690 413608163 449947332 148960129 861935398 443019658 678847950 803795071 975400991 253544016 900752142 11563232 682403309 254815775 454496476 417899704 562798128 849652626 880016928 533104216 962626957 638628897 931868702 294199361 703462540 668843862 728961417 379344389 390832751 702551609 889373486 25172401 618832660 904758673 981582384 745572389 830875935 333695395 430093279 20728672 459450701 675365964 970586162 564782972 759277049 800527117 804232548 711782518 737383809 90700002 505720554 970710781 979537072 924198244 945709948 691477919 785169034 475721377 510769763 38604973 288156876 972532317 996375597 945282647 958601185 457461590 768934975 575964413 628675681 523489760 975427234 947044764 993971087 821670863 904313296 907502577 973185783 146874181 543230909 612193385 827523250 864819336 964572435 468156702 718129395 95121558 238707012 237171091 747462813 471202802 966715458 701404287 730255944 131604941 334547631 279086962 905913685 352279081 762300201 363328555 642823674 893534901 906960233 235393503 495208953 51481350 458016432 168795350 972080662 230740603 607845353 939917591 983978844 553662646 885247675 605322389 769784901 293735596 645519437 989732886 992211123 463059177 471189773 413273303 627676297 824339817 909549756 675264169 834471886 669386332 854790629 152200823 264923587 341432321 965739165 102818099 664482731 996786916 999477441 227898904 529395105 807160918 974383454 660036107 989693951 139883528 434957453 374976833 464168090 618783921 657772992 585414794 994646318 261749634 821680375 828437261 928873834 21820834 245397268 691980094 874564988 677684490 958040333 351043902 362046000 456642626 770145175 26793950 539149047 725006467 927127460 238649383 528175691 370831777 752116166 530839623 613408947 155570792 898573444 694849246 721206114 609770065 695314195 453064711 883527266 573303916 933942709 163986813 966913062 560463555 681211185 12815112 101398380 354374332 446188617 212192950 656486029 407998015 886385814 771272886 875810329 695003294 899874089 51724480 894555915 915185377 969153142 250003911 635046824 388842331 500539895 139449240 261052406 798636539 829589274 650824491 876168112 336759203 555020589 893005661 929828100 177738340 184761959 820136433 849379011 906168200 964894503 5658693 415394090 236769265 289792989 361654946 826654079 405164413 448450899 346041209 694413474 610880694 871166341 761473969 787713567 602721621 939500098 112964246 679468025 887217064 965789567 962592296 962959126 611963687 643089247 47163604 231884196 190033439 478198556 854133575 908918993 66176640 601029373 836722884 847398906 155722694 569605979 455652185 659406628 616836903 826998533 894533693 906123200 979964171 992010633 563426439 904648406 200913981 861979985 125166822 369045337 423367531 877763180 86674310 842802556 360445612 612302875 539105307 667153534 563564722 567071392 60685526 453462718 784754395 838469872 930028008 984028052 454538848 941070562 364321399 945496574 978990644 983575883 768889307 911979371 503298867 921319661 444148433 891784950 847618401 930186665 207250672 739343231 73158565 817340023 487192932 616097520 232733429 716345212 153187999 585614805 194781429 970059890 70581726 282418127 756581844 943994834 501321066 673947256 28796768 266145236 972106142 984662606 387682704 485526219 199397281 370970065 104063074 670438560 680930136 687905266 335267227 744053542 234478864 946894290 900642349 964166621 325930751 698833965 404089501 782954038 858886687 929839976 626604601 723548364 478448666 771059322 438062155 483663076 735695928 980362114 705817995 961906289 583664092 589028398 750818 455856224 978448154 986251822 725543437 864702518 663895461 759790249 260613824 805454734 608047628 769643463 385151013 738667936 178087938 280516838 989720392 993446054 108997933 326212948 978547621 993645992 139494725 754855033 241682756 596820129 179523348 379551536 737720247 784257316 757469870 949223860 574280472 751937558 247380546 636491516 268461930 326630104 520509244 977374652 5172930 329466811 437659472 871310524 115413116 974547073 883316126 959690423 587860344 951386065 706698061 752505466 803432181 899983390 949072707 983347784 644974891 772797096 996800826 998965053 482340162 643329057 412143500 967161589 973089390 973959424 58351673 688030855 102038053 356097688 573331628 653926455 467077439 795095569 790731184 796010062 589420910 724923079 5626657 161531405 620144711 795816338 183249046 886971699 719221731 862268812 965033868 979192048 564525603 813874229 485269388 774174666 135915491 384195531 576622552 814272432 254290431 792331367 211929533 482550402 564222772 571469400 136615241 716676609 416033824 453469464 426545793 783202587 82273963 810353493 521903079 828966569 502616285 644528697 503726739 585299520 521840056 522012823 529172981 817873287 341925814 742203959 105364368 307605062 520467202 536042970 388703926 881423501 915165459 963677779 253036800 264140964 307352200 433070209 363771265 471638701 772612584 882651403 797307914 977493514 541756630 835256427 691063876 737676324 928989218 963776480 430827656 756882120 962595239 973542493 291761853 320021937 431377474 852315290 18009288 958391356 29997727 370626116 119771355 602250528 557736200 780148151 28773405 465369826 136580649 456160269 89021955 448556692 161894600 694636357 613901189 947550098 544628908 952637592 922331868 933801938 281517000 699708877 726544655 805011388 119146331 831972667 903102857 927160948 87822632 553355907 881550830 969052692 453185225 874951212 182775399 277417794 576317744 588550252 13177890 684866330 899115106 998155120 795103618 964497146 517566459 923075279 751956095 902666687 302510709 632610957 368315564 686329787 650190376 837051244 121648866 483553337 844815354 847362801 100235303 159275639 608788780 854613748 661977363 966563789 751530639 986261852 407910175 914169439 813275030 905918032 366963519 937455151 222454772 708439348 338939785 741384442 340495794 757661057 75543062 317900005 806489792 846290203 916352299 962149216 309074706 681516433 661705911 921173321 8993643 640402179 720219932 793382110 491839210 569920873 376941141 708244359 153728579 197481512 422441509 465930248 145508369 594701625 964469225 974750238 43796594 236330373 21156817 275807675 584803811 616129788 786806266 825009983 141683558 611835687 224405719 570841512 394150377 438840700 419920764 830779751 831683334 957571353 678943496 817738837 48362373 294989212 779069697 854616374 355662010 649783759 894847565 949249224 942597252 949576748 451853746 922846270 634436336 818971311 320768489 443389723 844581755 851025251 414885248 558871205 174082723 610651654 328415601 501427257 24709445 315490420 205198084 982698674 851106781 900532700 69110751 947640839 524983340 869626127 220721489 623454550 580004585 670649716 747534643 848738043 849122128 918942262 799666318 964387843 991748182 991911262 29384584 986742264 666093693 841659369 583199687 716756400 675653238 863283862 447376517 687913726 857242976 876443561 118244716 965703229 575251081 764861787 624202367 987537599 705127033 801906947 115021004 981970299 652882238 688219701 298299560 973967725 275383285 552942901 719982802 991418260 389568221 430364948 95895522 866744550 903072570 904103883 814053025 842419572 579060382 830853535 641776021 816677130 980561202 982568729 136446575 767062902 49220489 755943222 748907635 999907184 280781670 977162631 318254793 602256383 59296672 95878467 557774761 656457629 191255663 394318636 554218646 945727656 692760816 997811909 566359977 628605171 987451937 999808693 261741679 960045508 968741404 992957962 154778647 533042208 101513377 287432764 266973064 755093607 711841348 969488526 364741377 873278001 973692479 982822065 524909675 758200136 7346711 890521628 544580472 812570285 145558187 758100423 550346548 932335560 73924084 164041648 302279956 490473173 255089925 739865869 500347717 970420863 853330020 966191250 646613995 812040927 511161037 525682589 752166893 760176857 852547917 906089581 12445246 914403982 752632493 861449076 575341379 608770474 322739243 708208575 948360962 974489211 94715840 122654177 190032507 788075035 153785881 989797438 599156226 664957830 944614565 986845475 156751637 996574702 161351994 444207349 204573357 859358095 303378148 687964172 460367600 994559390 294692513 974766575 796984158 803457647 270722974 468986479 328557272 767160671 313351343 551238747 635668618 982264575 777463181 889304170 912178276 948464192 490238858 874091228 173932299 352265848 252012434 950848142 536976069 744605547 710230632 917998691 366632563 547972408 213384061 965899104 440915057 930800738 883263013 952965935 42839763 599257011 687025174 811703700 196918457 300717018 120062726 469261748 668333543 790316197 543959748 817842180 382126244 668701393 763255242 788993579 579816587 744765142 601088669 856265531 790554799 900030096 11426493 602065600 262005425 718593354 973235819 992796469 528998735 816798246 435422250 530633264 943202185 960932143 135980329 750312799 469349369 505453142 401324057 959349650 781027371 818526530 536580186 774243149 229817814 381707692 335334237 995722048 656320327 852599345 140023023 862751587 668499484 812980194 219889703 756622186 145837594 438643095 894670435 939372752 96446602 593705058 423300264 621645515 600614563 869526644 618960922 882105143 680890871 769486673 330869829 776988609 170614539 801374993 980415226 996538719 915781172 942333498 698469560 716213119 790532377 983441111 646897335 738908455 993271193 993601127 858022049 999356687 445211675 879042507 44792599 357568956 9942248 138615843 386286606 636498855 384807886 629032976 799752636 897575776 29107703 678072438 921216439 962334888 726931789 992218681 99639887 304222487 593438894 871938918 37430762 303504179 396365592 853779886 991018889 997481699 783383394 816293272 282149851 557800356 514211573 602508567 528051205 729459109 645157753 897483072 6488988 754258974 174024168 941592447 640629924 944961618 919324490 992254574 279565790 722947378 857603727 992488090 9907381 590599453 10575311 569231759 966866690 972951758 318600663 636745375 299171827 632153572 88255165 735897247 541915875 937650220 90725161 95684369 203109953 822460938 116229348 564168947 627527283 832534177 927150923 957445327 286293742 451861533 619163502 701050929 685833059 717457275 57310495 268536073 27465357 987790789 630822111 944951278 787793725 980314776 299271717 901811547 431803504 909313579 192674950 725782572 412512554 794951220 282285004 560985031 213266764 999810818 215718290 612402080 387239689 545943461 44726219 560415640 263409207 331433687 820695377 903538807 800429830 810703432 904594095 987911749 678127209 913886808 967872325 978597576 430210650 948150061 107194606 164654627 442269848 904681612 874344655 969595039 701522956 999598481 234685500 513587434 11015848 443039284 405483942 723119865 566892899 971971014 538478074 913535883 540146133 546902272 314181635 907631580 274016931 369365290 344755198 384621990 950836575 966131960 657150893 888280346 419527871 967988533 30544573 874052750 109338284 160599543 784916590 893793180 429848195 743882153 816378792 847145088 337483889 962921818 629914841 986177308 857930171 867813558 810169471 949752134 775768219 810061597 931588697 947788278 587958973 664163762 878372434 940144852 725987461 883382183 492848913 831497684 351415733 867376619 403834560 980483719 874427771 982809322 480276620 980775573 284245186 675795920 954700003 982586030 925083879 964601437 90833682 908757014 319663258 384847946 887961473 895751790 743765765 888134475 655525927 772558851 182440277 817187836 487790950 798799839 675031712 802486812 671585022 965432541 292456952 746865652 702751969 901431871 841790355 972312964 46463133 150731939 508564093 869065541 383759667 973631811 429055029 857275000 917740394 930428602 317715030 387713896 772236624 965410509 43947983 390852589 639687341 795530196 820566632 948168681 173800005 452546431 856376976 917991695 647913562 770523629 238357957 925845457 312503872 398254996 273598685 610287205 763127039 810485190 798619751 811363712 181367138 798632352 24881165 480060457 786180496 953703247 914274096 984945680 450197390 845482431 246751354 868551367 334680808 804140229 749149419 938913608 473638579 821286917 472118131 915436720 341285507 397541114 733554540 957868489 177721348 933355777 603441426 978532850 70572289 391527909 270060358 295311382 756080319 783883164 977149936 992806469 582033056 846678287 154163853 953718661 439651494 860726128 974700793 982713826 252552728 394095455 355398760 617417068 818458586 886967690 475357195 973538985 830944459 850846229 815411011 883393409 278387124 713327856 875564184 878445505 388763379 441146752 659372936 708230774 112762088 944359111 740130948 955012951 626146260 796884042 898200373 946881745 208174071 987591926 694425684 714986112 323824243 995685439 522894201 529670632 490787133 741109136 837246940 861486805 871733802 926136743 217480268 777777127 139247 468327648 217033777 353915369 44315431 743618736 2939272 140334692 921962328 971295204 699875876 957643768 49673819 460690537 660755478 953261414 253879665 915213396 415744989 778655566 781265548 995663159 357431477 405802126 579401330 588447881 363846092 465649349 992235005 993749103 833093375 958478490 795941347 799324182 639318492 859584316 792812944 993286015 853135364 874103609 461092013 825832869 970512876 999953972 30527306 42321618 695154406 818399501 556649611 702545415 56626597 553364689 360534211 938280855 983323690 992528095 903470693 988152166 578336806 686415731 81200226 261943712 572988555 705609673 374958676 532613427 363576649 961298840 21249873 811250237 712101406 783054515 828164903 998475359 492075482 526835080 914705164 925859251 309818514 899384649 875301744 988452217 686183761 742523866 152953465 968736541 120260091 667568335 591266443 641883978 466427496 472271674 692636147 816118946 572270020 889299478 65375682 413810537 449428590 668599856 91433276 545054902 511633892 854593034 922082605 975943286 112920820 339794584 806660656 903599389 783544772 875709831 800969706 886786835 155984648 295903572 617388960 647131565 60053703 585073944 26137305 388953681 669864075 864908524 697009003 839819438 208184191 459378989 886435985 909288000 601682876 791622909 660122829 858934052 563634152 925355329 294266138 394598078 819847798 961329850 77256389 106539980 570015250 998407882 934452456 989809873 365919712 473338904 878671196 924492911 934191349 993415076 44045779 975650100 152555012 154568311 715410119 831544087 30057190 145773834 449071423 577685225 173774476 786318164 72341881 598750139 930746904 971311603 100951050 683376708 554631525 666561295 688859674 888755177 324608501 999805319 926209617 955403622 962886282 982258502 403129415 901966576 540455472 774613009 680631317 934842333 418101431 744793916 974005514 978864606 117703465 621804929 391354324 969880482 931317351 963646556 830766830 850910137 175918539 297362354 337258534 518185223 941305717 967873990 365800876 874447971 757645229 893507550 491795163 503302544 858523165 927742260 209788082 990022351 171540232 844798254 678206840 771519448 481833109 494241304 166778363 587831313 993317467 993611017 979149016 992827438 257732259 700355339 111265539 309527394 637438691 939389532 707919125 786414897 125572660 241734711 392938296 851370956 788924402 972459474 324471540 714593499 401154897 965102484 987293315 988425089 363712253 818714185 243411321 675634994 177147648 440155677 500180538 649856158 983392534 984912263 436428205 696184756 414141573 481095005 191167541 344851911 901081399 959391422 801427702 867536172 659226255 659478151 707221041 741355228 644524813 980750875 169340020 705659724 224885656 429615384 435241571 598263486 548686130 602260961 217806070 923939327 998716952 999506268 298258369 998326011 693998035 828377301 237182554 531226365 728272141 927622993 926935892 989176455 713926086 779356976 705503178 776019426 165304573 895201363 637225516 986155843 474248915 488893883 308717215 691352321 91656453 827545055 614105331 936806381 322728199 337699833 930816226 990465523 340077842 726625757 42166010 472995084 428942154 511511246 765511953 905480893 139633044 419793277 135535161 964984263 576160977 685309372 378554158 811554582 235063425 770506172 460977648 894613312 113596996 396655140 668003911 839978348 241277674 884656401 526075374 868071892 41047828 789962887 226614901 487299585 224131565 470382310 27205928 366734389 457537167 578035367 125720290 421271002 788401716 927595645 867760144 879524465 93098824 416584675 79625006 306332631 64006258 163802581 670244100 686984600 154851111 774690317 873495435 988963098 469505401 544365003 543778117 884735284 133132331 403588951 192436268 704166937 27392789 172520558 891453478 954896582 541628679 889183613 347675236 356218785 31275267 874856481 142838744 771398593 796690315 804582548 713582639 885186668 227966442 242157437 923540815 984909039 568132460 733536404 605018127 627017918 764972651 831235930 231393515 689734092 817959837 949444846 665742347 920265891 235943963 579368613 864524313 919218742 174850288 611773924 322182040 584943618 57081744 405351581 43545778 599206570 797184625 939040957 198849693 711339827 763746241 898760401 377854099 728323465 443927952 448356344 700869821 915317934 119480611 491856771 252205046 568779466 372129900 436497164 792184885 916106205 122992681 409258444 142859413 540269759 923996344 955282760 681173253 750089876 858476663 919025074 124499132 315907716 323685472 897205855 844359128 947454687 688350879 915976097 890047938 991013819 760591203 804237182 768480183 793807291 547848701 647695139 432235643 859844390 814714597 868618053 205454537 561134442 928877565 940635900 821913631 883736850 865743690 891826928 278002599 331200894 965256937 989771452 460137834 740674599 727377027 765057013 942979490 970480452 123105841 185838655 296049496 310961216 935630062 942666060 899626341 966456111 183355879 682066384 678100483 924057821 582562024 779899971 877129725 978531983 185647364 568274985 366752032 539983153 985259135 987670601 941519107 965736395 987295936 991157282 172196406 901382098 399427798 767251316 867817584 876401780 97349822 629944325 708147501 899269838 122902884 210232397 48801485 986746674 73369674 984066127 2445256 500566754 443928978 636008420 797927864 962782295 492162896 722649472 966527225 985898908 511601326 947336668 10328438 505533143 665759135 831775046 247858251 325046359 814503276 851411489 455729105 873046218 218754895 987705281 95933628 616187369 166396320 229835424 263888942 722458761 638264937 785302278 635022278 990947168 740598143 928085408 195259964 204766773 528499104 970832249 176227229 747657280 365258103 379001707 257903166 634335893 328767038 476421478 268871771 559037837 677822823 750724045 911879329 964830432 932856437 999856565 825783685 929720498 550303189 900945976 65588773 860016176 947504548 981083278 635436759 958723048 791201865 874527202 274436022 845075036 533178843 767504123 995012256 997422544 563759530 829836222 392317843 737076316 223234832 757061734 355261580 988484462 350243882 379215171 390249172 934075978 270886062 796475638 991221340 997971669 808957381 833865300 295294960 405094524 776906167 895866578 200059772 605952505 631813441 913284001 492421855 851413391 753317830 878449677 801786005 802037110 314506627 755820914 95630087 630850939 355829290 500807640 155383245 663311476 891847637 969619811 597705782 880070446 143196362 251828225 748661488 755661582 493758032 971504683 802146491 958439046 840794192 946702545 759414572 930185492 102654711 999741489 457423742 463073035 844236911 957396960 750701794 958785695 796817977 900530829 852731698 939672985 439065410 493499207 401788828 585460719 518218900 661422155 379427439 954672218 7609510 375571800 752575230 777553386 209602315 574154401 534590496 893606662 46917315 792783152 405763185 960132428 571066417 662238733 543909518 864562601 426138714 652788859 136007616 688817252 533149020 878690254 430719360 596045960 546194307 560956813 405675487 980320857 285205250 782944024 883086501 949257056 775275487 917152848 654580015 867780869 819130560 930415600 154403854 516280451 310032543 975957024 551925627 570546530 273531565 353257926 295049489 372399930 998061696 999895222 2489340 276002525 48625516 932205333 43970629 435977013 219522066 818274845 125556921 876443729 46605429 683479181 469569152 530475682 847315929 951683943 87086843 798937836 504324580 865121421 48123169 463656928 854306088 866737940 613296958 745354647 911991009 964627033 327073450 711044200 123085743 218411864 867557682 970739922 100335587 474802815 831991341 840396788 655469970 886020930 950218118 959113459 226910134 397998096 218635289 973875715 752023588 764746135 223709916 549051575 650022027 897895774 359615602 837406844 468368395 763524385 267717245 593757799 94123425 843977261 91573484 105421110 501919506 991343760 479749298 766474063 120366634 598994840 461377142 522944726 297491591 339437680 376365678 857961401 778467806 871997130 991926694 995844459 602995091 616461409 447466818 531918066 562299423 605328995 168682715 814934206 152802035 268435409 235147182 459417229 383586104 864465156 43280647 834584985 34762067 957520313 71663111 374065718 491984216 696674782 355790591 538831922 375744020 832230653 763012296 856000953 853079793 978507820 839998857 874627979 457913720 500064611 143435758 908821979 82897909 692830870 430666470 938115751 187397524 311203373 352798626 629663604 929839758 989616764 535758858 907533262 511526121 910609892 460077708 911524399 819887519 948467970 116183045 925025924 153143183 581177593 600370830 791222787 232203672 981267023 566785481 597259741 576564656 631312679 58623069 654448583 183962407 291898079 415807036 457055130 821878173 986269284 185813217 464007123 971380359 992847279 102613816 393790386 322272540 632656722 96078843 458652977 742354093 955649272 94473204 423343677 768773196 790322378 308107438 844079136 676241061 861920967 983113208 994231060 14229746 463315644 4912898 781259649 642742382 949990225 198709164 676147967 516011046 838407138 837424633 968893135 126106697 338404474 391834047 711705645 674332504 807151517 502242293 799680227 15714709 174466910 923814741 977779135 808429664 856409595 346378074 603762306 906529904 910301155 271746735 404750650 791628416 831983546 130430061 242115627 201501408 644830167 716051639 770900203 924566107 970867699 413577549 982529539 402049417 565127360 697460283 886506785 698402250 888203139 517364209 550448242 493947270 739859946 661172510 795738661 969332178 981911889 473491941 658610914 140158511 385464883 986883308 994534356 786497962 787439769 381803204 976004661 970503514 975247344 529074638 586904540 292314774 647455861 680787869 911116243 982765319 994945204 252191877 347125493 846840975 993824191 671710988 826826077 912346336 956668185 753290700 888936369 938810045 947968274 283644442 667731785 334150091 516657474 285547190 415635870 486888438 945291617 84375867 553367899 288862928 422113895 115737339 925266496 794599756 802887892 921321440 950803003 921471760 985291539 681658952 718453389 426176160 576006545 427363286 884476477 102623764 861772688 142569221 452711779 305014020 505005480 883471374 898483180 228723686 830385956 975365162 987530246 155897683 652857946 800329976 932491398 67476970 549240852 911359725 999171681 439077530 596095906 295042579 454608344 344589987 732770214 194318713 519355046 855696668 914344659 272461099 429819131 867659478 986835479 949277501 980452443 841456030 850815980 604776810 649585698 350985099 440109650 803913392 913977020 761116283 933010307 28775703 99336616 188021628 321082433 704549552 839583022 393069937 600621330 809967002 993467155 905067526 905912366 26621043 829786702 350449908 863707184 775239452 893309326 587147935 724348168 460306675 960558689 997315702 999096289 254608479 655322261 18912465 682726344 411649947 999956381 814555619 834878057 490395132 641809152 315066649 840285141 614817517 849953634 783655375 870506553 54588272 767614613 325121925 854254487 415435936 503978470 504795049 824058593 924451877 972298462 971666891 992981927 74332130 694456075 911602162 959295480 601551579 751351235 675699338 681841179 906078910 937319665 183546318 199403999 260006207 768293609 940094193 986221937 568233926 974395664 986036958 994525785 37420507 321267710 941375192 993555730 162618773 412893208 81385092 590871586 539386190 825324079 18066922 548841772 229302746 408047648 694776249 793534391 919767216 986806205 703308592 758442686 750053850 770752887 325611442 357788312 822343945 880121114 827193549 930903083 302727199 853657876 127438116 327676122 426634583 690020142 133626167 924100266 991254405 998165247 707836113 909785604 753235544 785445244 255924267 765668719 850116140 943030785 261920288 626026072 11829410 84960943 175365221 723769131 45089256 983907113 116971402 932849148 11898535 521446798 784394716 905590700 314561161 360763306 129410137 481579843 83493150 975997068 643181780 851984630 88264289 402819413 611936658 670900347 525026616 810707683 547396631 764477874 256034688 256868720 450041217 804218879 31603486 314607938 343046967 423798731 544936424 769857646 429815505 897412555 595412328 853893545 324315753 913525218 770871068 833522142 165555041 490814732 527954865 539378126 756438868 766752661 250230003 794081480 777550911 807118965 162319431 724891253 175888892 387846648 742464742 949145234 403535220 986437233 267115671 272634839 373786295 981600619 991958879 995760905 49377552 779646943 829550564 840487658 630191335 993152197 941748553 976736217 528870434 758259289 222553620 247245287 136625577 557695261 220322202 658842733 301270715 651610800 924433151 943678184 675111821 739444503 166850789 833627253 48514281 106326708 663484332 729505362 729502905 956757276 597550626 826613125 145767355 797691802 736290298 808934744 881092632 906473995 702002668 784074383 849786905 903548943 716056263 790579464 244568162 278313332 663922566 826381081 903324954 927552817 487893892 962687760 263159880 665775882 908762096 966841528 113743620 942323210 790217894 984681488 647531705 848895370 834033504 898971513 407268768 508257762 170192577 713022474 741049078 943529759 29397438 723750670 658053221 849072818 782636376 828777119 658605552 843197525 975798245 980258939 919047941 926455803 985437576 998575575 178260101 435437528 590193151 857023192 906542706 985064755 38304279 922592799 437722668 557086998 232379122 362143760 373095599 899364125 230350640 974458387 937095605 961128956 826633509 839135905 271678616 460366977 499466693 781678254 274382263 749468504 368063864 699650013 207024675 957902334 226152370 803868888 260592457 846950857 685251230 927947674 758015909 780505551 320361796 633834978 245853755 450729792 749918914 771631950 885621508 997179469 805102080 867110154 249952685 690500997 349142892 670998949 834240038 834937336 47123587 671608203 523552590 745755282 752881628 911502647 563022756 876142533 902991076 981306253 366762908 916232590 940723366 968645777 686691518 762205950 894336135 998354204 600218358 996178663 126760202 445818038 368347142 657456276 38995395 600424538 442887595 806713328 5362866 680252286 544856727 793629230 613623426 945517633 804638745 958996446 690386663 818603562 695454153 971631111 388349057 964790060 980669865 995441580 401893642 586538622 888261096 970254202 31610779 210248974 742192076 915688903 99600230 624661402 116502838 562001967 218457400 571865379 98700418 374959818 972385683 980470639 12346226 923442273 577546818 785402458 541350462 825667076 461930534 923495009 505635102 587819409 898933850 973141035 724407395 849910356 893157602 980836238 896449337 965835017 66411873 824402614 570316380 668673483 199527918 565063664 53336364 447272502 654761051 704467288 538820321 571238868 463301259 576574313 855947762 991803241 665391617 793606643 122440715 386205430 877780413 918189302 923968214 972121770 617219106 871659304 571427009 700991816 173752229 314284601 39268887 989928854 30175906 625277559 526977510 722091205 484940695 892354320 809653317 983593110 489892583 540568217 860339239 983261626 248039170 956674362 354884755 355444212 624453605 989288396 740693333 808522457 891547837 910503765 450824744 968426742 211629229 393716304 616537755 734969037 826425843 846764783 20550672 931744900 612329807 945451771 465905431 584019464 112853319 741564687 828108317 840020728 447302714 611374154 69743088 269201958 324770397 780115941 577963691 585400878 149656461 743536483 290465069 565394272 196945428 297197491 621883394 944960311 551678686 883204955 240031685 651811653 8526205 296436739 693069090 854751469 309472560 550701314 968897029 970553858 483096955 794890427 109901755 126202051 205317701 749839062 336970278 563103829 999520972 999856681 727878976 795839556 557377205 560998498 198774592 992327928 485312656 485717075 615553839 796622774 997354340 997551156 163939676 534164028 646830505 748470065 974037545 988803902 73246120 150136686 613639268 878942773 758234052 784612960 906378310 938773246 228548977 576979188 533124145 558560784 456207116 805253829 316605995 643647196 605088772 686242941 145304738 722026523 562105277 958909655 910222630 987563371 533418740 807801302 965157580 973756274 404676173 410476443 396536993 543612493 223112592 273125704 815173893 861924622 896782736 947194419 585231338 751441662 678936970 750607416 903806110 921384443 255013463 860617027 445101031 959081519 119651962 789556118 723372593 900911941 851609406 868058435 681350482 989115385 558276931 925804478 773753564 875043459 675450526 680049443 929470513 984199548 415162469 685614176 152317465 970518273 594419855 698697161 712243489 792497122 178122632 658519288 323814658 393104449 362494163 833972113 159720276 998854994 442873415 592500429 281822188 345188417 539732293 980975873 818246242 861172944 403085317 459040129 544524217 570124469 739586992 801680902 387478939 414054032 166615571 803371408 459036739 814035422 14922626 913848672 212755964 287136508 590497594 680705044 392104975 919372407 576931690 807111259 14821699 594973278 394958543 471959980 532627510 610657933 584764632 830188582 209353 825015154 671016989 760732882 515571429 527272324 336919257 759143183 545347038 948257078 826922781 967375515 748124159 946594288 67227016 629409542 224091141 770779471 28333577 114186142 951986844 964654542 59513531 209417815 735417755 914061072 56514731 346003342 667442345 754061471 634950339 987683155 335000613 783490024 447065682 804849594 619828567 732743607 832950506 980019852 672690169 990457916 771022233 964189821 513175415 644761351 136394116 827751950 629141905 667838961 657188461 695181974 138866449 717921974 468189355 575115686 325350250 759328215 835253891 960977123 277894677 992802176 821566973 930292995 406107001 661919405 867071558 976534807 835293014 882268755 706095460 828951177 693886035 767796921 108477259 258210283 207067609 844961236 330955830 621615397 224762484 260453064 840606513 851106043 391665936 986423196 138899961 278981549 773701911 859440863 957205951 966352066 120046110 789451036 901861006 956721532 682223122 838001900 237362439 583186708 87926531 167973934 383766675 705644792 21748941 143600339 565666021 774759968 555539618 733291466 584245602 748395766 213867902 804564577 902343910 924745256 662561307 822441397 963504255 982350559 832959187 904880401 537449901 993206437 250925579 558033571 190291602 453958759 589742809 774939920 368570071 927928180 850953869 939627390 287174468 889220552 981886561 987272392 776625504 945632835 279306720 931577681 852262417 877975994 346662446 643577986 278269361 979499381 50812355 484160884 696071102 808073027 387096578 892871520 431810513 924507156 230830211 504391397 967990542 972237574 735154052 978185821 453664303 475414899 35737140 746782685 246366430 495648760 133634528 429775354 121530038 969351856 818072433 933127684 589194225 807726138 185630060 568443259 578802197 989290002 294192137 528001941 988037552 998711714 663561944 904486051 890036222 901799838 456761545 767764555 724533564 795996615 712651792 968748007 62721583 368506567 856927107 868685059 840334679 946789983 916674459 962428509 888371183 892251378 271810205 566239788 956398274 972889027 619396888 975228611 61741238 905528520 882782800 893505141 42202193 161080027 141736617 883003219 915392325 985255337 298496823 415999366 256760699 299269842 952497249 993589285 922807520 938515213 666385740 835816850 846232520 853873947 341920918 951137965 580724385 806905524 415591977 490038159 863508243 872149115 762219419 880034581 951263040 976420046 837050363 904046103 69206574 489779692 272839140 576782756 372441586 646830198 333217009 600262751 187771989 938394271 207570760 414230998 264820525 342288697 500793407 686638149 337210534 732598406 171610808 923163840 283624248 761465869 285971591 602570365 280359658 838099623 151226704 304144686 164308394 398750877 627321718 993349062 892906459 946495463 13903279 463347538 726457184 750647779 200896941 829290994 754766033 767189180 955131554 980992125 92934334 461758419 917295734 992847587 523425561 927410331 480122416 814041753 350113392 720971332 586268403 975462728 580597902 602104784 325439990 860987887 735672330 765688729 463681861 470837473 576347869 884035961 556980917 952215056 97521366 568675928 713837364 824853136 273438963 781201890 902743555 921346489 64554993 900345595 341652658 990394865 13847888 984379693 353560928 549737792 641821740 695399277 613656625 741415765 490123821 768571645 258156049 415543279 491457145 536386902 105860442 283856089 915468937 945164531 418809420 629662678 794112271 965737286 80656229 859057932 851324182 991675841 204910763 676962246 683402131 854596042 982004209 992700693 486251764 573015441 498225740 868508787 289085172 804673264 700183106 883612112 557649839 749688640 866448291 970844269 34468498 780092787 665852314 678831793 949939286 952968108 527718499 543114932 580767355 915134471 537418647 872642045 775661427 839399710 48332075 91916984 2369338 757768839 424476498 694796140 921794284 935525831 376853502 714081096 630096317 739643408 910353912 972785730 221008844 231994993 876779097 901862892 328317338 513006035 980418415 983407538 981978824 982084121 615257246 896839612 744750569 758202476 96840844 931942174 295106833 703321201 302505528 791143781 786450951 824626586 304748652 330474865 752777231 890938751 60699614 655801682 249483008 589796884 995255975 999428446 911134421 947145507 882152859 976938390 787662286 797658760 616576726 802813032 47098339 837725843 12252279 461691451 339784340 477234063 55021423 221598081 618347016 972801965 531963448 866651941 846961669 878092151 356424246 613661562 308546103 487999598 639943642 769813712 110684825 877451739 467820312 910820268 247903880 396798889 131426122 539470152 965895037 996191440 208585213 963042540 929415680 935407854 773901776 865962430 815614190 970497303 138026662 399857593 562723131 784062785 39992891 501825524 622663171 814395633 490914991 757217470 772429280 898953761 144066867 988514223 513290578 899775618 665779464 770559686 185499659 569760860 17409234 472840281 813595492 824693503 90865532 212614004 316913825 965433013 816804495 855158309 44172524 348177935 704555936 957255554 890222396 925487239 877627861 904056360 800991990 974427093 664708302 964061094 588621539 696785487 96111232 180466505 841577530 997471271 290918797 975136017 522886951 684651704 409282869 780899637 754119313 995328435 54782311 978994615 699051014 702811661 707263182 929936942 892050045 899000414 251913766 937959190 311459128 921616638 896805626 929851915 761327120 851624013 380741142 561447891 593150780 909623013 560369887 849444177 586312873 591489107 721582156 902530742 126699867 211308360 565577948 781521952 103946049 891968616 755474827 871758633 988818382 996265411 110733354 646620217 722125448 798470430 367739676 509316588 166672074 640940108 198374986 663627808 120204899 851274241 146657183 676739941 453440901 809694349 761379065 816827994 542254584 651965875 306247708 920785339 15261683 926615638 249755109 356292793 664105322 894533771 603286324 975192607 699997197 917852344 941257633 963712229 903839209 998065328 180396564 998651192 464212043 630589239 772927772 901250064 210006196 602039869 443125185 837243386 389918915 503953229 497871809 508944122 690680701 911712510 507229608 816566082 983040626 990343606 385554137 413274922 430042412 960916597 689914943 696079943 923022467 953751758 75863424 219542700 933074811 981667141 146768554 703605398 820528363 941270689 327283832 728328929 162227917 943491670 419710556 763398302 957564802 981829579 485791826 641980614 65365486 477512701 696110043 969708961 502027325 598582128 79262798 196687373 348992460 786932486 676814059 787597589 131340929 234672204 856638838 878471299 4922160 25623097 899592618 946204307 135321212 999520716 69076775 147892343 256268621 292658896 297671604 568267190 906568690 916637291 337355409 569144249 142034555 574287842 656242931 763643684 678971168 893071460 786617900 941317786 270428132 435895798 550786096 557297340 110100634 319155451 580910794 675960400 574042678 596914031 149080747 771772270 332263571 822542856 453625643 984960343 195532560 424687921 656188268 939444534 342874044 881451274 385457157 488840292 480820296 637734746 634665918 927800568 394024022 471617551 934518112 956343849 682933691 693424081 267683481 851078667 292839629 971536533 966969203 990817059 860622293 936983579 979721519 985832523 949762708 959166356 903924476 937273017 969498077 972684854 976764530 996559844 964288575 967985255 499826070 549574193 451408064 573760258 44520767 599908749 927676284 950708349 771832242 869377280 736902360 776939850 505533301 579091335 98067203 598504934 801534394 947064588 197065669 662068755 647626009 844380455 750720483 923922532 492828400 915799997 996856934 997747104 86411885 350901540 379135190 796825733 465904669 527489586 779676878 922007133 787835905 838184020 726216632 910390934 790002716 911048289 158855130 703463063 540743661 737934583 558765103 967255126 508611463 737396446 750484094 760946515 427292561 943718913 386238927 913757243 373393677 413195297 879285439 917507250 11702585 701438626 486066222 740106908 797464829 905147105 350573690 664885917 640653650 774869612 273115885 517550779 563574938 590697238 591010440 699623633 409630383 741189852 906256863 986758560 879357791 969021836 928456116 953909433 641010182 694232196 16249116 463109161 384150608 842119760 585610043 992159960 392784814 722226717 129566042 948033654 450572521 533778854 231927589 310639240 616541290 636960492 749320403 914915670 748119093 933864086 956664479 967092055 454275294 937999685 153951882 479316243 439619858 832470221 265102872 564886914 85455709 496434621 365629067 918834484 496401114 625441497 878942581 902775058 493690997 653128138 686209982 971353603 137763310 846504626 824817896 997460149 210501868 329865352 347276569 593914577 552737452 875213359 872912658 873328076 101248419 649912319 139009278 961256233 760256907 953292975 142710125 454171455 769288067 781097355 595278596 849666859 257458672 330138038 465536223 488265578 135829722 690171287 800007812 982466173 769682269 965675199 120193754 886346240 748273798 773228306 960987424 991582402 614623018 830019367 382754985 476742549 56892220 751868633 671679831 733972974 169366306 300402472 835598355 933102005 325517982 918419244 828988912 922460991 663658563 744114384 229067397 984335159 992793591 993046316 336680057 584293501 964852125 988082085 807343809 894314436 981844457 989045754 445831407 742527468 921782861 984240566 53225359 921051328 219141663 659988441 271367608 420949897 453734209 699226494 68852959 644418122 861922533 870749258 354257981 733659954 506076419 957326505 369959354 665511582 562066790 878618558 978568468 990754520 419938851 677045145 21021332 398168577 88910153 583560058 462637065 735332935 841313047 846466454 951694953 971140949 845083576 908924325 936690460 995738470 944433925 999972598 897937073 968592049 127490344 279194662 816530244 822958192 14391338 505588906 437302137 788639005 380218325 795455726 580129689 909097991 938572550 968419742 773882127 943875526 675162810 747819490 833987559 979726860 68411584 579950265 171805126 201266995 802412667 952931489 329712148 528268922 860402725 928499122 847108247 987737176 260856718 371857001 492805616 719170109 671816695 971623778 828090704 863107525 455575662 496062996 1706688 673750181 721756537 786356682 988726749 996145507 672276764 939611385 969216872 976072101 870224739 943152499 361939470 914357496 969864024 980766741 678732650 740333680 854638131 883797395 880293072 881140139 758794560 968415495 543449303 645443340 967541825 975041920 252706864 680375259 787606080 922653667 236023729 403321654 575804305 901988289 79701121 573583740 193745136 374990310 860672575 964665188 682437736 868670777 148384118 311033965 273836744 506364633 425029585 659842723 553280826 661522706 833461305 971383545 801696569 948918147 369533135 922519851 138268402 741578385 727473987 942025602 55056516 508116897 557664838 683981739 980999072 998915590 948091676 986882664 57267170 379196976 136812834 737336480 699771787 998712514 612398601 720412276 772879135 937795544 517043247 742156230 908557672 999901509 440536246 683718099 138841240 286239406 815804340 950963884 546883569 975142670 987861554 992427345 772860723 916618049 439909533 929874652 292687775 545995415 168429712 818628554 696884753 923415762 824440731 870729137 799088824 899215824 54815242 118077956 593946573 973294397 402853960 772949653 739924589 929461497 377015230 888755648 150201462 512677811 631974486 654137458 222245316 893573577 976141472 977553574 864328573 896966405 465599371 565980360 858138225 893276849 857504353 885228738 157324630 206503104 180498624 832919652 233900679 708387456 252443433 577157810 770409477 877839246 55358376 878027304 743086289 987103508 313741130 622641803 936384285 967479239 917040631 940391405 196314252 822576672 761061492 869566643 292229848 914230405 923582875 947078503 513497650 584668030 822476640 883465284 788093790 946430997 552765320 839372391 424906183 972043812 650293397 743589258 925138686 948751067 465869545 522020005 371412170 626463303 195040142 409155686 178966907 219731046 408589012 551861883 332635702 385557400 505003059 730786551 484918538 858540374 407179982 494011884 198165550 914128111 670192322 973326801 654919710 883417967 540762490 838757862 700588713 980762185 177522838 319312768 666094004 984714431 340439929 682868688 762441440 891743810 807325528 816879101 626242452 935740630 36133087 299596956 964561853 985473095 310745879 312302418 780314531 848293224 513704858 776909424 244650527 970169807 359694612 672939048 333327707 744230582 677240715 986529652 953658274 971169837 165276826 285296721 108157880 957328590 657469676 684966080 411876209 897686235 61049436 662461147 821872159 979907255 266976389 401900569 422250202 961199798 414217281 613251075 647680069 675506533 548772111 923905473 416336318 651609885 186497346 895329869 197087900 380176330 255907791 276267936 662637461 752743872 315317717 419759530 155534705 330612561 111012843 193672594 918315454 962941588 723114583 999369392 73257243 448365196 397873893 778362147 627291710 733479026 781596237 996349099 993297465 996831788 993792200 995736311 998487735 998632769 45819523 643542349 631638100 678246806 143389650 870618166 847554086 859073002 299960754 305940129 712117479 789050718 177247138 886443689 628314242 943478863 55891781 165373722 481870500 905378358 667029768 718617192 915672084 942043069 753209841 819523134 971027611 978236422 556960383 989651104 504930171 558324476 45685873 921492620 491446527 728113458 748710095 954987983 856763778 879201701 868060986 891378409 295153065 982616664 754063034 830247509 645916380 799251466 334047129 881390361 891850679 995330985 265659548 530580792 562456603 891934223 979718209 988681708 985373449 988875962 912505255 949481964 580000972 879540831 409354805 459191673 750410132 853911660 508387599 592194202 559580818 625475516 843481966 902036457 649736215 898675516 157415697 204377416 859673911 972938836 780657445 908322321 654478742 848380566 346762162 860049475 619243467 847473747 223756563 881326973 235085088 349158300 330336298 467521172 570822011 839431303 486972024 925536942 800813647 859876548 172203603 518068085 785588963 905760407 363572665 797007026 34220096 43901302 439273141 691854832 342551831 907498184 20409924 614345107 137387171 661942599 89188249 499548686 549897427 597816584 285442632 869379622 482686476 771450196 819634355 830917667 117279985 914295370 436648054 983116854 820726002 859214314 565001270 897672906 619631529 898137083 627742513 822880122 723472886 792119451 680701794 959138977 321211614 981058213 546584060 963738532 755469543 802437251 247921371 869845576 844743327 943191137 161652857 971235956 406123409 565440489 173801864 807853759 143893087 659725097 61073882 573812470 185943521 686654430 240392089 968221016 261485992 536823894 223104156 714150530 597479781 965949549 815837228 873159382 225242797 534326947 811728280 923030211 814640811 835684358 847469645 885008588 372265410 396650184 436873488 848959486 986642296 986806245 719118582 927250891 691264499 897216132 112047552 846462669 998254469 998799289 845917090 846848385 313843174 548676566 959623892 997174877 72628491 530775396 802106800 967980689 202253077 930605911 109363650 668080399 236350820 788723180 983160653 999632060 150850822 420721682 690270648 798535928 90528601 480662526 235969852 912105634 426606493 775237151 404960803 735414469 720843608 955565069 672398673 724678462 778944013 967446463 367553491 453760325 403992169 531570554 688985085 780181779 210880802 702282986 148998394 903791596 188297329 858923980 983447415 994423905 130893755 805370415 159132325 569444540 202890180 556976902 383739938 888861438 802121556 957321802 492715906 816776561 935446912 999240696 718675100 962474138 73646049 996967258 592909974 885719705 783711890 823846070 20491691 352016090 660764411 831250403 348742258 680060163 630895029 657806961 866537031 930967368 57259572 966137283 495044480 635167306 716209473 731527921 801567559 845017371 875262903 889669730 862712110 996683882 838370759 942572988 216773010 589404813 310645377 406614154 839847703 870194570 381629226 704098232 742831181 893512158 639290442 851422299 351317787 974198271 231022466 859974613 853396652 964502165 934290811 956001943 174359585 449733524 525944791 889681670 232588906 959389595 849394743 930425331 903453788 961603618 679468217 984506370 739683955 899931449 153992223 943124701 242932679 769701119 82188230 587931717 4715864 197086081 943913935 980704811 861686686 878693968 152373269 701836747 289402389 927889958 556930209 723532053 199941549 653520597 500090101 910300534 449406359 512409369 389408600 608868924 635463829 823546047 410780520 964349920 963466162 992063088 346666230 662520882 434929504 463345836 475698783 582437766 857630814 927622499 575398592 639947656 209467800 242848711 700394213 849965301 162553528 914826295 343784673 373301216 918590846 974239206 204993570 801477953 99326498 930799784 879661548 935654159 515978412 849320196 406775829 588937537 542439591 608080160 334366055 883185583 83993773 841886667 930776581 941830339 517226356 639674882 556647163 856821476 597788327 682133980 251326730 488599803 33073753 936558034 243195069 734289168 794636255 837511477 522941650 746759980 498755751 772763678 738953284 972062175 400215601 400992949 947242492 989719398 452871942 636756201 261767224 972490591 528805741 886661022 652405372 719604218 176282854 867125753 155247521 585548244 637226954 716813105 949780987 959270993 128669761 208460825 721105469 921417843 627202321 892064442 924053077 939634868 210935669 414729678 569489207 847767019 951002659 987266321 931725759 966904356 376241768 591453077 73892700 163730785 962258349 972555228 925601916 943870005 471767161 764327494 945888337 983675776 268774738 878451538 142992354 726672490 682059940 881158438 491706500 642591314 66208881 785526912 424849664 595307508 449524443 698944880 945200238 988433631 968965954 978154670 411186341 544947490 313630286 365490796 934070241 951539937 17990593 245759673 144708505 875638860 750502438 956910035 858079486 957803414 937747773 953152607 337783104 385244823 645641173 778307902 508842587 510547584 813626058 956656054 844793114 976683346 772472690 893293756 66665325 465072708 565866982 569321577 831064804 964948577 333708794 916671161 809970150 840190188 369799019 850459363 159344791 787284070 90912283 856060258 293473674 437681134 152579231 301454029 878595149 927993750 760847727 923300386 827233589 836942871 35372388 375212469 928660891 932823823 812329068 846404157 39848631 745536062 505634708 946533469 169307856 880181203 951623457 961607976 737759056 963899481 747386601 843427990 968756072 977793022 590033349 864736052 940204364 947602645 966314766 976281437 392417170 549754805 167602727 995412610 359140869 890645101 648364367 739497457 896725669 916286687 527376564 578442192 646111897 796413069 468720657 836643256 649335999 659740702 278262708 946849536 663687613 854605532 170212812 546011325 764495686 870871577 901651038 963723275 655148146 996668114 170536901 984849890 738745541 866870348 638084885 877338483 679199635 802419659 987737938 995748306 422083472 941859941 840800660 974184904 963012063 973439392 397510862 754429758 147743528 193082635 439267995 522145356 761185975 919648298 90041749 394553938 838261310 877451131 180881822 553999292 956686353 976634781 662684130 983965087 640925548 887754947 186008102 218291366 260338622 736223630 901289327 943793810 89520821 660779443 291932939 839406758 343950932 946079113 693771837 989577950 261716879 834770241 734753158 843608544 572310413 904561783 923048823 931282145 522359881 871566414 427090348 646990435 610779370 922772033 711984580 918760896 578427312 721144129 697041620 984949795 634035109 869292995 892259028 914495016 478141513 617506704 449333378 986677895 556942657 691730356 71899435 228226324 287528937 789937650 226913195 794255453 60599000 302841218 831502095 968475271 35882740 575196751 207108178 606070025 891111688 913232016 563768165 781357135 211168311 416725351 842898494 880728219 116273239 308025500 773398562 809672038 597556073 680742354 76422101 646310346 634455552 656892447 102052934 732604167 710630375 927073645 416909781 759571459 647002704 714517157 888688995 907881615 13584083 516728796 390498697 776598742 13835827 69808369 873832684 874222488 462549099 883617188 527658950 877452124 613192591 692131150 684465677 884235993 576656317 663377154 63861040 528271864 15357240 843700831 953623901 961721342 559939426 836672464 896841345 993243557 172647416 520855322 554506077 834980093 271620161 550679693 316024772 770010737 340731137 710517235 552129301 964569447 957863410 996682520 719733764 838274671 852285677 952535892 263243832 636836668 204533296 498648693 128447156 966855399 188994324 359722966 326271334 472051725 639207349 839470302 25224736 211262010 348801715 711392790 981956199 985061502 662642669 850938670 818311285 894125061 596134584 969913823 428052144 531740334 668031071 686241918 739961281 793191871 36344657 767362620 990779529 994106709 193749278 961746613 303731699 791962552 605288122 765589844 377884590 804965399 36046110 746099198 741918413 972696663 106421681 695161764 23197071 639965808 195217813 875012370 746855643 782325285 599816385 777653905 49364473 247473063 336887444 561471254 276097404 642433568 48155257 304594885 57770838 430113317 254086469 668160579 496634675 810570654 508184243 877857405 99922379 904894660 425646635 512940284 329933215 592880183 313049434 545350021 816308651 936394018 160823281 574097398 960591288 967279792 695508653 868918505 921393709 930858111 95100009 810875341 416308522 627531811 944548657 976652708 535052095 866307282 720475109 999813275 329261122 779198169 100726028 446859455 851440734 873167108 798176325 941389053 235704273 725151117 906138117 947621728 786477353 819132825 276893444 665999280 323136144 462696285 472346448 628186340 899165449 901423902 432701555 592890042 780253418 950402878 228927596 310532456 608814059 818772676 8489205 874722872 501718626 762856883 829095698 867991836 945560035 953671031 519085348 935738970 809411011 865469763 454248224 718390015 472811743 495574864 539039444 859464252 195215679 789805481 134814350 385697347 461341660 600945920 223280608 966902903 763734555 873214807 486346864 918957142 276916862 694534272 249325239 557565077 575691942 855230634 906377849 998315791 498019197 553737781 703600512 896821573 623216744 987388048 108651966 705090501 938295144 944815325 553068394 931061153 30289876 596113716 109531666 345769598 640267637 951088593 798938802 970494812 98106251 863116969 604181617 847927749 313690270 880652871 34137245 523624938 40651602 717804320 384211922 413641472 939617521 981511174 853575577 904742275 397283844 407233824 490949356 927890564 721793271 989106268 602139013 865575797 893677447 897125814 364735207 993137809 656820706 970936296 305610268 794346400 188196405 657725000 162421215 458040774 450873667 857501297 209370195 854988859 587607169 897682034 244806321 577544250 998537691 998655196 781521934 999835919 75101764 544572547 102467282 194919896 305141470 357852815 223443758 500956616 421163082 576714886 348941515 752480030 79394932 789276446 549649499 649691061 385768241 975826334 212760657 688978476 801446090 929279164 182271269 311456236 826513153 942139220 418270164 734655661 695503375 987885928 424859258 853032321 709434709 756114679 137471449 642615441 451069925 980494864 675425248 920026702 385407179 666368336 568795276 809812073 909633457 934778570 333339784 396473479 763167660 840422995 245455238 658258895 149571821 892015617 812486474 889751038 64915691 760952499 763946303 885154387 827706783 878921713 184283317 379203160 208989009 601290635 690546834 709826968 785321724 822115527 895232498 903602823 774072965 883447958 692787311 933088007 807580888 995275176 534010563 633166292 790046102 919592083 164384459 174526265 588857454 704580807 281765247 839111518 628049635 870003400 28721805 517593993 926802572 955778073 830518969 848646354 594702200 931409247 775272936 778840417 477639138 975828988 430138971 519124633 824535732 839566408 164768759 826492180 307589187 401717969 149185515 923890212 85403507 911700320 482215160 799120466 27703535 958952427 671641007 949303242 752304793 801665052 698893922 831025261 662784321 941712049 734152336 903346483 50450960 810796011 801911465 955444534 530170984 958368290 795505895 891812101 812980184 896784371 556127217 976766922 73809008 663080657 141408498 987979243 206493155 889840894 96207859 324724795 142841866 337869393 994331522 996036005 170225396 960239091 364188016 969156374 339282186 976976469 249197573 608858896 442817478 643083418 36094542 606929090 726610015 790730844 772646015 876885760 19547501 79069849 688672505 746463269 184512185 545268668 630162288 701902700 704889787 851469186 389205690 696235510 538010779 995235485 457496600 531980957 865435824 917562578 487600585 536567415 297890932 919712445 443005689 937339556 160192264 246931219 407252794 688973704 379494730 708941513 400961164 511158742 58760259 831376048 957274049 957555809 341380309 978497813 699780825 799975093 972098558 984339618 132109307 565851253 400949465 748795600 732546315 754192025 866599386 944085424 458888492 499137994 171647752 649525066 433027322 496303967 993338464 995774331 339105799 426158645 84452171 886683050 458304388 768714954 597057260 685493244 90519675 153232179 648381085 824177422 874363160 957503201 434164981 831087284 435992714 829930631 193954652 416163522 174075123 734537354 538398004 829287305 444186128 659509735 878465721 881203627 104382974 746483229 347977899 949067532 384086837 559885394 911341700 952617012 291433021 545596243 91756989 332970127 920465539 986097225 304597922 566740045 207836462 711118226 253126267 303122756 570606220 699374925 898592786 967110916 70822736 222950728 535931168 891192208 420090374 464422788 712676243 866030094 129099690 758644497 976256775 983665140 794204288 898753117 268634566 290994915 455006358 977074284 402152310 788972156 266092286 335710112 262308838 728280835 609815305 781694015 211168492 243341116 282568899 638523315 918965110 975969534 508173029 779428530 887365090 991847483 407392147 710384224 259778570 607977128 252648770 462327937 483559052 829535624 87604397 931029687 241770578 422913730 850286975 965021575 700481901 985829092 848053006 935465491 692209470 956908323 426862443 542457127 5756490 110522357 704405148 756413471 358679248 934081769 411657587 772114730 174724596 721282693 781369999 830699685 178006603 518871259 192992564 254367301 587882806 747229881 102707348 311341272 443982198 585086336 239885549 622691130 983831541 990375264 486835588 970597614 164682928 365840088 354594175 784326969 163493937 708918150 56790180 570431600 587484181 925194335 228916486 445645751 491294109 747003219 634649461 863764632 718463086 750922024 870058603 873136974 633761182 881192554 60776018 349912812 915830213 975456389 220025592 493714421 287997540 445460306 982150045 985541776 720950490 991813210 878693222 921517327 316830714 684782267 471700911 758909412 631442828 664521094 463647757 766897652 623355477 913717722 577263289 698228966 461720176 472122838 73858471 313995771 837358544 959423473 36172975 507656523 878889347 914096578 339776105 588003330 936416613 988788231 286362302 385296266 523217725 695337840 333526900 726011992 387366266 393120079 323358580 814802797 583823153 984175061 416202410 838579976 888999619 902506420 193923222 704420825 519162566 962338782 503997642 601769300 98369017 708803230 137415752 220220165 346982280 822939108 956956629 964006023 411798996 485588132 481748402 912136711 309259228 480679432 186748725 208894832 414775351 660084988 251702039 344703398 481815640 579200159 732077904 793606023 715534440 773776351 945891243 972813655 677122953 818872653 50774134 788622343 819447254 957373907 701797309 891419801 435840773 465318574 315073177 564251153 28820216 509121816 271564082 706981253 521585495 600519432 460377235 692780320 471148939 653183564 495773818 868927337 556973467 756144490 933906599 976743183 357201163 652860881 253404786 438396674 417687994 943588427 123960461 388895126 464607131 731928550 72933541 219315390 125830284 915240780 456721158 946184562 677796967 962133300 813785694 889061614 955874863 965025038 256882233 812348291 416539033 765251808 518992285 568696395 731503068 956968642 305350475 941667740 436078778 750910121 925913422 980197523 249589048 321542414 231104285 526444043 125428682 682852645 384635941 931036786 819540495 950866411 688754140 912874417 469723031 694552466 860398625 875360557 500780603 980474557 921924880 964642824 739193689 828359758 367413414 660867779 102250039 948858839 650624230 925487084 467428044 709504410 820392835 929762093 650208118 940176865 623933855 925967639 6288136 658801443 503549139 627460670 169826834 245270374 130726128 212248716 613109655 798878712 577498832 954209480 86530573 487760695 835307202 894652211 504579671 850305610 638467600 911987772 339240661 592751968 81119134 975273001 475434144 666617382 523017806 803479920 730894227 930757460 410369986 653406204 248794032 380841751 340485943 431467226 908463875 969150913 986845877 999940507 105326230 581039777 665505899 741011889 953569401 973221464 235843643 913947079 589109236 654995561 117234194 897158052 575425655 910368789 337865246 342514959 154625799 497895391 830285153 851651931 75729586 563177108 711347783 824064520 26050476 266500566 29544162 508757871 296062961 899602716 769775772 804086821 393352415 536945445 573921920 598270086 82750030 155336512 584932311 683860833 744715024 772623280 190557968 521426440 777494424 788707840 849776082 986539442 595952401 616712243 48513268 243211314 389234035 792568578 820281762 963444733 674386535 806640692 53057878 693898296 3246237 122497256 703828392 898078626 411291248 868915090 725868369 980943356 832721119 903829048 422886945 727436373 753236839 965813806 289469579 866248869 173572755 605500723 403831811 790689403 333525684 788243677 573117852 619372089 426311778 454774605 537157335 875790249 936663119 939593412 741802819 914980225 905553656 910866482 354053334 722358931 921348586 935070628 723754552 939924219 249543672 398171081 543774638 617724630 384369463 995115725 627141072 755797151 913983946 937890366 716298496 777085830 728975218 783299931 582812343 655463239 201057915 879725798 795274014 936094960 424240033 692108972 441308814 714558885 302315220 768011113 350673313 944951534 874506255 943630934 538128197 996976652 912187330 960899083 646212768 664801688 200952208 564100193 522040672 917603202 1693038 443908873 231812972 294989748 907221262 963436486 659885235 888435874 864418269 918201585 153980975 572800640 637996348 824648264 413047942 951901612 54808804 469464948 147774241 882440891 547626534 841465548 96536985 119634346 91826631 100696025 391866543 408745438 917322443 998570143 587721178 915095018 14346231 985537121 808242640 923075878 600175329 880960582 132944210 660085572 3518095 416885022 520798387 835415062 352423757 681251934 930730121 992906347 658794935 894132987 977701691 984209597 20528494 236725313 36327510 514407889 564114997 932649657 135621788 776574357 110060923 818878457 818879043 850997129 61799965 571815018 400579392 587890546 603390033 920122633 564927860 936633426 205077419 992237626 748143378 919239005 128937784 468064367 269302398 905681487 940435792 955543099 939488260 976983017 315031645 542893207 32446731 731445010 621756632 730021265 574057605 679583347 647486496 937261290 394374866 738255236 80280894 967968871 47529828 319647573 964507468 976732835 145485516 203767661 28008668 911762161 882702459 902216121 509869468 862775612 858055014 990452308 89987844 939283897 468346193 758626448 52653182 486026659 377154399 429246485 57444879 862719374 133283917 780121652 569145252 588273939 323285623 706916110 299082536 414929464 244602071 715474816 625492963 652053004 23457043 534559253 103615958 938975772 270606571 513146400 875197111 883630444 984572820 989134837 437555112 773297407 979319282 979997193 525013566 856498441 198550704 391516369 451535715 768864068 569008212 918492188 932204419 959798867 923181958 942072920 642179679 765534535 382863694 900679414 925672250 995915319 945551089 987488434 566704884 800010838 818800619 900435910 64110344 351305500 543340737 975736602 410432799 700648151 888447831 971127970 145850438 439506008 867609356 940953461 584804477 844836406 511747308 577432192 325212496 538542008 990539078 993343121 292717285 911545427 262927287 622102257 776474025 969429121 836968742 874600656 855117346 975643091 6220878 251491827 793928003 854958561 903876839 928161507 590434866 904715470 853764286 921577129 91017395 888074743 383655490 720948904 58137873 547150201 474221910 757218408 667687311 977086122 546797307 972429150 429038393 730098867 839148804 854378791 467076714 867603946 977797856 996034318 339286025 666695175 289894766 756591327 634873167 791994837 465637824 731409450 919489955 944286224 638022430 910171185 236859940 548329837 379970678 777575404 231401666 476793558 110863149 762359485 595810983 918482658 275683254 892499688 609153898 732882616 844748608 981038794 745468823 765324761 894822531 986255711 213302101 680813087 837404731 897409302 850537956 855821609 952209610 970585323 803279693 980809779 812137959 976674604 869064345 945493034 309199191 652683904 725896798 761466747 617809899 777471015 422884240 977525690 364332887 464424331 243132778 372496437 259988704 926204329 809314901 910917053 203138753 753477547 339388381 516741886 870306582 920098519 331179230 936626882 834551351 862789782 420374896 727402868 291199844 612299117 272682094 932014365 529003588 610022674 628294311 814329702 816949607 954046758 718439265 749383226 195622718 224739702 436698043 505954414 896245353 971427721 859609517 994186093 960470852 997203079 661124146 907015170 779695174 833219643 205271707 287200667 193088066 618595629 918938513 969936351 724674493 731204319 329335365 920630531 549707944 949506329 319716098 350127310 726380659 871138850 41996206 489030551 380998380 461306744 398037922 879075999 663665085 891847704 364238122 811373388 65446245 890034907 216184269 675950383 90311665 561319566 736749214 851151973 200820667 400182972 254369421 405347694 241347689 519745393 982458166 996157378 695021113 960690250 558721952 921005443 325047339 438107304 983428915 985881747 81547996 611241766 682134575 689353873 719319147 942740993 453148146 705321225 89947701 251843919 917900271 937147709 357667221 684649119 616198114 738669218 750513873 786698353 396241217 847276785 448355751 731647329 451791984 782845374 881495901 954880228 865537691 898408785 41762535 431397741 475044804 893083278 270310190 318017706 461232856 737691686 586522775 774228123 156294993 626936756 862992710 992263236 503133046 713360183 436328864 484297763 715687216 794210098 310383876 814410899 392608555 917986861 165493153 260852608 171504985 904191166 696847171 763340240 964703652 990804359 643579850 942860903 249199930 277269845 986390695 991269959 331772039 859963007 761159791 765987808 463777624 656017668 742838863 916123242 708637695 783332536 406274387 929405472 196425068 762609933 688057091 870365686 316092521 800848585 723478176 794474452 49271803 799271775 807979811 818238571 480965705 961862712 333432875 487706637 104045222 766246467 614853131 753337270 217472151 784206250 284070694 421110901 191440409 472136893 328471676 542623757 523406733 780526834 828432545 939112790 555432840 811956573 106833073 828554911 675088762 707444130 814266732 949870748 102241113 892768544 698051339 739475380 470744931 498479302 40710312 687346316 908659897 958664905 824395942 960018451 421784073 981647747 18522912 141900176 222684678 776731896 581936014 686756744 792684818 862404470 20950934 81422425 732242485 749795938 627656211 810552254 569930767 626769605 305385614 793315174 953102103 991577538 549420366 726388622 512885523 715144267 421262110 856298593 211066956 428382416 965971039 967037149 154152053 543819757 772467419 923438649 811149541 953151108 303019282 501864125 759858278 832199868 928861547 939919926 890636594 928503238 914865113 973689542 992179164 992472831 232797154 516885656 27074040 295340218 146676429 503321555 503559649 831429753 545182903 730405757 7746522 142126034 829227645 891253435 863932668 931194598 471139746 568496112 128438084 202943406 51496137 583172414 840463767 844939183 972966364 982694010 910074081 963458057 648624943 902090369 414644048 596750461 873294933 874804536 773448536 884276188 351365609 377987673 77405661 437105316 274000785 503309096 948433346 969319339 849220925 960230032 817236691 863746939 978701465 980446857 334306856 582372244 268887330 770181753 958353194 997699368 561390771 963282833 916425956 934908914 683301346 878958947 671595817 933910093 407612298 425968895 837157253 875837804 752091740 937262748 426141706 939647117 472451750 528418581 200894828 839471399 806400511 858243643 327635521 348808911 131203787 838619543 639833555 886167034 622759603 700849031 575444506 866552317 818325145 859284939 36985751 277840673 492168991 809926488 866864519 958304441 799284364 849708084 450163033 820218281 874034251 903342502 910775808 968391108 975115211 982404020 778992685 927655336 828577907 871306174 216311165 640173280 950150503 995243013 233609800 896544010 544317859 715125736 564057167 817285777 310543938 460065240 266952378 269795500 48222834 612950155 278225915 456345152 334072563 387582332 127630284 685710705 948162031 993767269 627483270 985608331 466843351 779498518 304808714 788377507 707473492 882608885 219182568 521658722 627419676 761856935 995967631 998871915 471694303 648208467 863041768 875948758 672100060 748810473 925894450 998404079 924472502 928896546 31418187 845357700 886802231 901514362 741505061 748234504 62376773 367712467 444765813 769932299 462251809 697760701 11767356 480092319 149228144 986878963 257333745 890300226 842663592 900226636 534107434 857368716 659725266 861183121 459597629 724199127 490465461 922609399 329540981 515954216 579375831 848464830 940313136 994097864 659009492 746189365 439837108 962789816 571514058 945344106 381479885 561338866 413960438 799577168 301229620 326585612 923323252 999517070 456102817 460812812 576699073 954048130 9484314 703955151 502531337 988321065 733862871 805856179 14236326 496314553 68504138 786196598 516344990 939364514 238699688 367362955 591266695 904256101 932046813 965404863 783536747 941885314 467145582 638613044 22397278 479572615 389660260 617677749 836129342 933999881 311924149 757835080 182606790 845855692 119742378 993754749 109657208 153243998 117369412 679333655 706972394 837852716 994135440 999988963 623337483 724960229 952144905 981539382 308828095 341202356 878506198 975956983 91856796 999285958 732215567 735711090 177358207 315481399 413213807 476486228 970439451 979145779 365219696 589129881 921313539 964081800 801177853 931325174 932399825 996019125 893617847 914130977 967825284 976974863 411946644 690359396 268468022 771102633 124687277 290352121 938411372 960659430 96359589 717894087 64520936 121261670 605868154 783330474 319314182 453767929 686395108 919191546 133530651 292863762 603196773 928396146 631636004 700661801 963598615 993408898 41955933 518181935 615158705 628881843 24999711 439104535 757282657 912232096 523195991 941256819 734475845 749081495 532346204 817235884 602572527 634907308 933142642 996969972 884600551 944153054 609005832 754971785 90205647 291609989 882472967 959840856 849304768 909273048 954092969 966601128 843657020 848309837 730586006 775037108 813871679 815055103 314852881 901391923 28274282 644146285 891039074 966066517 813943414 871303570 908222243 979243006 857711787 861914110 599925460 826697154 545364217 673316350 323139790 538441632 267212117 282716919 580508852 717033570 986799593 990399431 344012024 713968793 113694646 880787875 598045251 824231202 677086247 776896220 956679014 971720350 727336642 769541895 883647908 905859796 4066662 79428945 945602048 955101685 619773401 941119518 672139349 725990427 833048748 838936411 163967468 924923231 226692438 517733764 53500087 132623860 134333869 364164962 539699381 743154498 616391308 971697159 595234932 783237511 294972328 568370983 848161654 950193458 90940444 804265836 964410898 981084589 823494067 836830015 68429257 863570332 189498540 556080268 922250217 945466239 845149078 879296205 555978057 624282052 537862350 555794279 16703134 741496481 118765182 778030977 300595287 416139864 618625362 801806335 841885067 926210746 481231209 887517058 646999026 686125006 983237793 991469585 338648085 605672620 234718013 852062190 224772036 537222097 178111257 987301526 579955381 890954700 293918687 683123355 587809402 900755226 760296464 961861316 633750480 877318591 750534812 976972454 624488210 831406323 979612821 989799274 697359458 835791687 352630412 553843158 383146048 408794452 269240817 972452358 170338383 991251774 386698907 571309991 303783132 770525018 519699472 796344682 912721835 940559693 955040456 994242432 479025255 996413428 753921661 784074850 302937385 321496966 391902078 483585068 928452342 986095274 328585272 339544099 7847962 873037978 471302369 919015653 678395485 943068913 743332775 825438179 913380154 958408682 224730883 950696892 833108564 915274876 358452114 830522686 27114132 595635882 318090996 675146686 72961536 580366661 203996373 689369855 543880346 892516634 715842274 911044351 169098050 172503978 744940698 839590203 718008338 725321266 114041234 447164978 158843465 788967128 188366897 190874668 629430509 705314100 499782860 678392978 264279017 746065125 452948560 592594595 290465995 497372374 964789573 991344426 781835446 854323068 12658807 755572027 378340751 747966625 278260604 639649293 996195714 998424113 139151116 709462804 79764681 304686915 939051949 963104155 753252291 832118835 215389238 331363393 838126082 963767392 222642680 588694860 801158273 917875787 212093157 600108309 30708650 146796382 570453146 643346496 431195325 501421472 291396420 985334888 793375038 942722456 478468318 670923832 108089125 596887463 285724605 407739331 115874791 203086546 718840286 883759076 320203823 495482968 477640810 937664560 249913936 695732345 573254925 819406730 223603304 544557307 492114123 702210999 389996468 561690539 309632422 495710253 448427354 945927632 55055148 387740854 613109969 968938251 373978150 490117404 724482276 853600299 906257658 989369994 605185888 917956087 215143501 295819416 611970019 804213358 292388956 974253672 236913849 502854953 519460324 563179393 829639405 962287708 452170609 828683229 316442048 788603521 402858796 946918846 485820058 800730305 838853049 902992265 211907379 920095647 385667139 585983109 352125755 535460919 202713423 406107114 864950783 906774166 933919292 969305268 117188637 631640403 611927642 859772772 838391768 919067622 447488483 608562473 327386722 836411710 392328429 677672545 222289173 728361147 858341823 997847065 245685468 428632644 984636204 990152416 436544735 696208889 277039443 794877106 654095721 673023471 531197083 719659415 355443925 643661249 378217498 987682155 307099139 630181559 257584815 880761410 522711592 928339885 289342948 952136437 278062450 863770433 21557625 714186967 411667077 711082371 976358412 978954216 384675650 564660718 755587605 758400418 626132437 866946412 464616333 770003514 564380762 940092604 35002373 561497730 908609137 945618595 378522665 827248014 764710243 889971160 529545255 817409603 177473238 606079341 486460380 746406555 372894434 447758883 427348875 997957698 801419982 864037242 813205320 838709752 358992717 853699883 176600240 245760011 738741662 780799210 201801604 622705126 192578027 650217168 989096077 999881897 293869109 410872767 877619198 936921941 263973225 659471881 718320729 934096759 720413742 854097133 647927887 729373736 896970933 958639600 801878894 936908674 495130465 758722572 411272189 822623453 229299528 879594181 44889999 194839682 224206474 596433876 490906178 561803414 347466908 552314461 599299497 663093850 303933034 796841198 924102827 947799973 127254324 945368905 511094823 929867093 182332761 675939852 573771324 641699773 794988484 825082166 71365644 245472177 889003027 998668328 476410530 879147341 428067991 808297326 90044285 944350407 870591693 944900492 495446496 556478207 405126264 583761306 436605316 811288973 793449421 841430060 820847941 856893485 67637345 876047247 456417335 813628573 146855483 863286908 288160638 654424325 960036767 994791693 420827983 588200773 93169631 884166389 318182994 415854848 306078985 863617765 291527137 457906579 592065628 992900439 883600633 964976047 929653241 934099452 751722200 757542945 792921743 952771764 884231829 924039531 460396529 670237185 131610287 596435785 650981277 848089053 65652696 517732680 784212868 870284650 221586569 404437872 810252470 932959454 139850417 707598873 116197936 242780597 12555951 511647890 959053528 994118694 303550276 391279613 800655540 934214956 758855981 814909564 331392069 667873577 623970985 688211880 231916574 825317816 802307622 909098176 165383538 526043897 975581215 992083185 450767329 955593189 913879558 985098241 599095768 894717380 59919132 255543645 453949152 881264837 151155783 545527644 58724612 619892750 752855803 895336877 758068985 768880058 163501608 949497487 906719630 952555249 533497521 672551628 780359949 880638557 818224975 850355067 246510461 728540232 897203769 968878163 830885150 945575751 90681870 831451482 578130099 745536791 202087461 326323470 444029549 952512150 604067488 954076292 510058483 552970035 955367977 956040653 157313273 388730763 984744723 984936449 49768180 974190795 264128834 313843121 357956201 603200112 690868017 817101108 396250653 778903183 545913705 813021235 150241418 376558448 644137892 956457168 967433920 992425018 804037789 968935792 16220406 213418535 456818134 864094934 818198458 829811544 297752053 395332088 977110743 986387584 604244086 859672493 997068967 998141555 681243274 938058504 584132622 892065746 141606409 331681236 592098799 990006733 369166456 556292581 30534017 493649284 275422055 654170980 855537772 956948084 325347657 762383661 163033587 583045444 98642541 933698379 525527731 679063952 354303199 477546090 487534465 858285234 96170453 783988224 755877111 987544862 317726591 578280576 799742618 854630770 597318186 873344798 48556196 266934668 584106200 941354567 970194978 972762692 342321925 412914892 31553395 788372709 95455290 838901839 655838217 674833020 326240956 329017136 188960341 530213934 989209571 996696271 415353139 948095499 548196682 632401841 873614673 928524181 736365636 899010267 843297612 943903524 301044931 953217259 783366005 791519972 785494533 952479961 204104442 738533088 506737512 683851052 275427223 392442396 935892543 939588705 350818088 389976709 280682491 496381749 295395738 554447708 523362641 551955145 572633286 851226371 164478650 876886764 289161139 747534314 466503534 551265743 136676462 272157512 355998081 660994878 832704203 920663718 750549540 857921888 584271245 769064015 821501803 845066841 102058503 145556663 463121049 620665419 356652880 920878908 433895644 952216854 542719022 571553385 776551258 960310487 846590928 908125603 550810993 916833210 404758857 852729047 518753266 570393038 12035656 63479376 204370420 388096645 963703026 975205883 547817687 600961040 619037401 740155949 810789459 984004448 923009351 949454861 792661072 805437424 353737670 629759056 517646879 853444955 890378514 914385443 216699947 914731851 867845693 950269749 352790784 368637709 297082500 356439625 993086228 998216579 216535505 648165792 660846136 735075072 66883187 888591373 716720599 858710960 221199897 691144834 410246922 976995865 654620363 913864024 813695040 885079981 298109339 739259509 412193432 671428440 849185393 998751173 247698059 576937834 561216227 592045605 331724156 777042237 434093276 812561727 131719746 888851977 54166107 141721900 943021151 977147869 97755080 331790262 50613400 466962655 578495486 893493633 613238346 731671668 673640821 897542595 166308292 725861482 650599345 855843714 757293130 825033327 360038796 423442880 250813843 974092722 567828717 913703047 14890806 183013888 87006532 780662817 581298039 744406076 352269506 506818510 422569853 714745039 578704707 680691726 476630559 692478200 181646772 641630553 320123165 915053841 167143289 606591992 802640726 959675073 540773882 994391865 42332214 114102813 44751795 246273137 853771791 976668490 392139712 663186320 324983759 987122130 229984655 442126531 894386943 896043472 996896187 999722675 114710509 747105158 150370582 983995171 81067305 322197949 906830005 959673674 625611146 835775944 27001388 989937669 472672257 943202208 698960327 928945332 734473102 735363764 311006674 984969408 626729293 783487539 875285949 921096210 153934509 246437211 215392621 824166720 198395254 514657627 956154193 970497147 692280367 823619945 979103165 996834215 739460045 820495534 298384195 766055460 406751064 849436953 216630396 236543721 135375711 185331422 106579881 373222649 234905740 983845793 747262744 869132757 295984599 800463229 247577806 266403377 232003013 838960403 814670568 989002655 870445146 982431296 288359484 352228211 135988564 328121084 234330670 295881990 329247537 634868092 607027282 867392052 79663011 543176314 276651856 362207918 203367751 759580779 827989861 987358808 598357155 847370683 499004318 724397752 896746112 944499531 756479314 964258326 557919752 965510029 123880896 495862817 561926290 969585915 771557859 983412937 892158757 996118915 900542668 987987035 475365288 975518487 305135092 770977302 120078208 302516948 590641310 896165597 776195444 896952399 541938862 750916631 195828554 303025479 918578292 976551434 995520617 996072362 629961510 735076060 316304626 896782164 611960234 906539042 919676462 996181140 484208183 516467865 106761406 916775567 847951979 921742212 169710193 986892876 636396589 736524852 104586186 412234537 892083061 911263208 850856188 863459265 606172519 673944325 479047410 977759601 7462268 851572017 720874607 782931531 444074684 777416188 755424511 965314495 690235456 941181944 193859424 248779837 242881766 902597707 590189128 748860656 360358552 507381828 681582428 822083556 249432657 788004336 489827478 799935027 208250027 245888274 533670225 860624642 691424111 961514989 643876895 898458425 224559661 811488501 953129461 995412278 137466928 923870261 182124204 735770574 366778600 932952729 37384165 756856187 383764207 563774445 549190822 733001990 232212358 291855866 48541626 972278137 300964870 752338150 339710274 467544031 622843875 686661337 547205639 608085969 245991673 761836227 746576606 822174006 950620073 995002859 192958704 480150258 946089178 953726932 333659436 972707490 705974336 774317810 783696605 844278606 644532208 753964196 248943352 713008773 598884069 996164192 437432690 683204649 758342332 976126348 139618237 196796001 590699360 940057187 812622254 813791711 837756888 841797887 325859948 547691284 782930226 928258936 223319494 379797116 405926599 735210795 686210495 817515302 836134861 865080172 650659994 713089974 385038840 704447258 339219035 894271163 290819176 588035653 168775989 325291817 126902355 798537432 838849644 902228944 366884103 905363964 231536790 483749716 290338526 391835804 132808989 524085687 452858402 921747587 947381700 959188003 302483447 719309912 972275098 996921676 751526909 862972317 452689019 771626695 437974350 747765329 173906995 786914952 883010663 902373496 562632382 751301444 200141643 521115168 350871668 921238786 633797081 786696470 401699461 864913225 520898248 658316396 687292468 797315166 632918062 674625388 791446569 896904413 222177334 610106667 20319899 453165462 960972964 992354336 792792722 977607954 392414443 725150814 804282646 946606103 95855776 639997404 928821390 999261934 310253534 476267823 135431737 694604777 418165623 685326759 331129494 588919243 475180222 921637720 71519242 752018230 764545482 822447724 697817719 854083095 965875936 983299597 794673540 884667134 719923830 796681150 512633609 917177576 467322763 691620933 402993019 814081123 48742555 729425337 636023109 679947201 458313097 966279634 644505450 779414961 810225028 909891753 405644110 459367018 103118826 402808871 31251500 719054507 250364180 669215935 678501548 816421182 902258334 988990840 872594601 920983649 963397710 976205880 681554487 806346159 53936558 433987564 350075462 783889839 503847988 745507727 912697140 995324643 287856029 673066328 471595460 985346672 585595847 720409405 688135595 799959638 405627405 476951936 496464498 605790774 233453653 938468328 663529714 918006505 534207834 647466124 139138805 613471616 296956362 410287278 933114950 962232081 895536391 969094462 613496526 707409962 570911339 598264667 32896745 934802000 835957100 910757205 125244551 743317860 815725684 905821760 457333566 680845010 74636124 115540033 8549020 153514484 764314424 878393107 912953596 997099953 347500984 743619154 443110682 791780192 30635859 295446072 687047625 783460453 752187079 773959736 15941574 963435151 375674236 493373027 71625192 664618344 490838799 519926118 874514346 977109529 75372179 374404907 70652030 385465820 167802758 307960383 433758694 894088195 543593312 578486687 200221808 739263293 4041933 192946964 303896739 817997924 748198442 980019991 104786799 155564354 186488733 739125418 330566305 889484192 257280633 818127181 999976514 999979479 249568248 466626980 399122716 669780171 33554993 665594697 194555485 239616272 370747339 858843959 434709059 623591453 769351113 857544468 82131915 280669457 319199059 423595792 112398883 966683365 185880875 477006347 67017327 706925241 171864090 237874557 174509019 242801784 603532851 991635523 657539039 740447371 657876830 801343261 794274141 896348539 876119456 967489810 560292834 660040677 456498590 945119086 19932678 426269599 598778431 987296129 585977572 934063785 248947088 656269176 304718309 430248373 922389914 976647436 302874250 477604731 866286527 938041477 211723157 738406660 793999744 877773776 342850428 467466865 216265804 256300040 380877805 707310118 290543835 467162137 452718299 625710269 275605075 973457768 742171518 891667987 235007979 894456309 57633765 335837374 76515975 638078059 686105672 894612803 310699114 416813851 858244728 952724382 900570193 949175334 138974940 164424973 44350773 489065367 973569635 988060910 169488193 568377578 662998974 802481993 643703915 845438324 932713507 982564020 896964352 937282352 31095221 758622268 58341939 954976558 855682863 929023615 498741145 604523576 107730329 244139881 869072618 982633638 342500026 508058279 525356013 931467884 197878954 384324947 327845919 927449897 80669445 620683724 539385732 731879874 330208406 738937982 514884146 528147081 172856767 841926073 231473355 923873917 498483460 540374498 552102466 625275812 880708156 905777136 420729060 447046964 612732727 735902799 544130415 837241600 721347390 928825947 820396830 936000623 671707490 966497564 385269542 631109363 360902980 910516244 614330317 718120244 843363880 960112585 540820573 610551022 854966200 883463873 843530814 848406623 186167299 645826788 70289960 323286034 232673178 327602060 875894684 880678270 354563299 620619146 742905042 823654127 332851805 942629376 744431597 788646192 159395240 516333428 817596137 918265232 6835977 925980682 805417076 909795337 521962332 936504060 998853665 999818172 609968323 892691497 434948539 610012166 401549960 607778331 347919100 985575090 521488795 982572106 147966673 259057721 743723468 766127591 457669593 592599689 259780835 739429052 708324663 776761548 536982777 828927463 247761219 911720300 737977017 916594089 286715546 428349205 77411540 164427196 655654476 663869984 401500484 492727976 3744362 788788601 123388260 356090781 506455477 685889667 624974776 694085092 382232003 932444025 104562844 651382064 866831763 880429031 318750213 928161199 98154457 907759741 394848432 804687494 421043916 815003397 945669257 975460436 380891492 963054494 252163430 431055616 769124862 905000738 474724560 851413750 726686714 915375473 690717233 809337512 793409812 959469756 195862846 345982584 12150543 504204161 907103229 930735260 715780095 877651633 811272722 993161567 555109588 882985096 925950517 981545573 188448451 329089872 512440593 528756448 376330124 377640889 371420730 879947322 724045501 766352640 804156193 805313475 155770300 914380593 449247208 550468961 29567312 508629728 826098691 903341750 471071659 705332176 903234455 997705373 914705751 918279661 891007854 952429363 889586078 993774733 77264205 273319079 231680030 776858268 333086230 602208025 215375604 934226078 582793078 651341353 95616602 613063546 539394294 669543473 580479438 880740300 744783471 777931157 404322826 965992508 531674270 762344664 264248026 451725345 385054396 655052564 685834234 975638008 63266522 511284529 759470018 888759159 918016358 972485286 68577533 698185608 209978883 546763232 997302256 997963570 133760803 918012028 575165536 640836745 413565852 624305417 689121074 784548451 993624682 998034543 923874509 993959681 544814206 997894599 526509341 560201161 319162744 454860454 581857181 772254711 586023376 667993379 936460956 975368753 365603725 385471018 358439508 880317575 908994956 983997840 350495131 867794156 740584327 964655242 254423922 838491358 38574159 657016655 850163748 909741025 3523988 825633043 861853983 862428896 141490799 966754976 932330109 940763538 371393909 745959008 68993016 199961163 420111838 574405014 328266038 979227161 404884231 742541289 978483553 982207159 294173038 549465508 108661222 539221229 154032722 615148427 695575702 784538020 477002563 751867710 22465772 870237491 868073048 903312297 502840162 734420650 492603184 904825237 266335985 736358344 793817127 918318414 297804710 995362560 979322744 980344784 176313551 764284370 205715635 272905450 556238836 669413507 522590513 731699276 594747455 618543447 531964411 870898245 179729507 712419595 339493234 916764651 657577368 675670059 741980457 767897245 389154617 627843818 719230819 824777929 706679808 947739461 787121138 944224838 281722488 870459831 860929342 920636406 577715330 943934893 223809273 967104036 399133268 543980400 232441790 901325438 346677839 875704582 846515632 890951379 615125933 930654973 711298807 853864073 640079789 675917297 790507766 997811902 717251313 862161725 936028208 952292641 336321192 512962805 257862251 286737272 469313941 903519585 893689690 947722070 655348354 964942926 565767717 937429062 438918983 594333271 650183771 914150959 458926582 683569827 438275618 566915580 990715305 992788726 503512172 691954553 859687495 923914935 162295742 803680712 902089747 910258213 109420825 511392260 68899945 873012913 419137969 833312936 788139313 838836992 62822829 290365400 676435277 982148750 711213651 956631965 567903045 928776275 192696084 611553379 480683628 966605302 125166857 886307007 383911639 579182534 261818256 723352538 935812519 945340861 154184202 817279526 731269588 988233129 853410245 980606252 684689512 910398032 855199517 922281052 794373090 821142532 727735981 934138498 443534082 565235046 916930070 952792798 456067345 532788638 598520244 811948931 149544725 321744820 994107504 998900778 492918865 682337694 104866712 939499433 707088865 728117452 871908273 884248176 359612066 528899009 36251807 464313221 506320751 884361696 711564301 986025950 899026801 955503203 391505341 990069155 965922981 997106086 576926420 772089812 268856976 937620550 438579691 732987694 309339006 971278855 517269397 718698225 796291958 844678718 971903498 981035348 290747005 402511303 86108400 924827691 503139579 618779793 800978894 962360365 137661993 971736025 849456006 903608069 431438200 557870457 591621881 901182558 908603075 917653703 441623429 805378773 546932751 591384274 111300790 337291337 342545468 573805465 621233680 769361056 475965924 569909178 491292583 768270033 535330032 654198202 386672823 822463186 147482694 643097256 353013374 804594242 539449888 592220786 418263799 660170001 294010408 480813243 192292584 911686445 778436516 811393760 315995625 743261731 411777480 797242981 542448519 804831324 920570900 933180344 119931397 253899951 428462690 446530147 923437215 972839437 541895266 609295880 362039324 854059217 568825349 851264290 245160541 427852952 734735286 972179562 662264128 969368349 687840334 809908038 806396130 807762620 543939826 642011775 107429743 662768496 774779613 791809318 926350771 970710929 229988827 757597523 67089049 723740180 296811615 342997987 171038004 991647655 804961997 844224520 33465923 294021193 772897824 967266643 243752280 617608531 916021230 991942373 112621867 191038467 380870626 832475625 956357955 990742035 613893038 827919266 153142333 723524793 131361809 909242787 181359236 963102890 642435264 970841761 365051631 854287822 98423131 837148359 880818511 914404721 28395827 100228165 19188648 916507306 109374415 949206505 721373674 912123204 65109718 572664705 161086605 452047599 82072283 200840336 255692421 742647475 17900804 241318433 255060970 758161167 153313816 879128883 260860719 913572600 890409459 979396967 694819025 696893391 831360507 833336003 227620339 288256030 240106394 698714542 829722272 837268376 613507648 767824850 72895587 501373873 965421713 997850505 700498835 806912563 473215847 473871286 912327711 973487827 668332104 941958196 588243357 636972859 353877399 730015125 785629449 906043466 499395413 730767822 922030723 986962721 437248779 628445402 925317391 958121955 475509538 837008682 464043891 965078213 675619427 732850343 626319713 912872898 115435576 901482460 12537322 856987606 961953530 986091083 867541778 898603140 41396714 823967749 904423951 994990674 170206780 264129232 797335942 889102211 300178568 513852505 546927343 713738512 435146002 552772740 615637473 864016107 283507087 738326310 789775183 919726627 354636526 609552237 808737909 847624262 43800386 466933373 431166625 485244815 840644941 963845826 827579579 896312786 677889259 850551433 917001287 962763797 293388361 401792110 415942085 821690106 845200890 981965867 707696961 890366924 763942330 833503359 890189419 899529690 856050330 915293027 793214700 840833211 904753317 999383639 588769955 863933686 432926063 842104924 36716866 926820412 40063567 825471413 975600449 984400026 865518433 902343390 915773162 954241368 781199646 812836020 222493538 345525069 35138716 147233249 233863740 927667859 799671727 867389344 443799212 685645925 134018923 852625534 336415951 832513615 558314638 795817477 638957108 975933685 266130431 727448114 525955752 598709376 445217412 947907844 1441708 146900966 335327172 916127361 818470443 878515042 874868894 978875452 523773235 967379684 791915625 881789081 665551081 805982272 592122111 733950949 60667103 155142625 353532841 680209269 507752124 945921952 697008885 761814307 173229135 966016661 150790009 789195302 114802560 312130673 895603041 895977704 947441227 970848339 612721914 963305281 798775495 953497183 277486902 286023939 975016860 991059055 604105093 951202629 655690806 765405814 288663842 869349198 990658521 993374899 77151813 306135271 32914752 889668224 384066441 497108242 881112045 957737709 534186667 870865245 183160656 286622260 268552247 974331767 867909948 950885101 689562230 720314168 8108685 608659230 140221577 870138841 141366748 150498335 636890901 962911506 148165503 634110464 19897997 816522567 871820855 987266987 984133395 995259473 691949786 725679894 697626494 995867110 875935259 878558256 193873052 826951129 113661839 791644077 690332486 710042939 210979770 406540853 713684541 841416614 314490259 968224054 211547081 316011127 956038445 965135829 842876761 846873982 641253760 683496235 354235528 977344271 423788108 772314702 730517006 926466357 89063068 710448617 18538587 30478428 381993553 840531862 552408353 974685577 773364790 852846503 43735831 632238113 614043558 807612990 272237904 613992690 661375422 902330674 752893286 963568111 189721165 794178478 121240934 273027197 52641413 473208747 998677287 998918926 620915744 844262978 354052903 825146109 278081782 454087176 392026176 485819225 340981604 875888366 493420345 573674287 924920367 974848829 453946088 972496409 921339022 931507491 418912024 537979961 201383882 510870065 842396182 874765049 859666136 980088343 918962664 986329160 277021158 380659019 60376750 642405008 538881395 941935104 127694283 742392864 834218050 964599202 615008993 988919478 637420796 865055782 906322259 955855399 785833991 822658383 425715297 879012125 406956227 499274393 827591202 963657852 881335563 973600705 177659248 631326242 758688507 812869492 544496899 697394833 934731034 997710186 565408762 862242753 703032412 759673417 822302796 861866442 152271615 805241949 99591778 966862408 304763864 648446950 720262847 928862306 312468602 335115177 872903880 923349359 992942543 993561881 963628087 973152746 83422783 199899727 236723612 563308042 986782443 992606275 371457313 557040437 743322020 978451037 937735479 944477134 493537851 694279591 308680174 881884326 180724277 625553383 736598985 916149706 607408663 791015006 542043916 717435170 97310000 489673506 117151425 853893821 532104455 788414885 192956494 805771125 475539680 933069792 953071606 963455734 414260149 447599223 280396877 447871940 769219005 823672812 289020338 812763360 723334849 865993361 868582321 916715901 869403104 928613504 225074331 458902187 879512085 968868342 555363620 604224765 257065911 327733779 236317088 315853824 682463126 921269750 606691311 810503117 259107583 940202654 372147090 469409879 938006159 953410573 792450913 923767128 916671898 964195514 619563375 752641789 235721984 896792720 50226386 815550789 95941327 833556110 697373834 938641886 803689408 919201033 563975741 668610786 702876846 823669450 784116621 864573697 721234529 794356871 841176009 915494469 442225156 623029818 75709083 452063222 982432987 993778310 996923185 997204341 447841515 581664411 614273929 722500849 938980718 991670600 590574564 909968785 600813597 958933173 905634975 943527313 659971391 753146102 960661053 983317669 510169896 587773408 855647193 983349188 721642011 964952238 241161479 950067370 864243390 932241405 915175820 967977173 133733597 857979287 376534774 829201529 696119140 708656884 266220694 266442310 294170317 363628565 549986538 607590678 118783739 613666818 24538510 356247039 696748453 830371711 5757850 161298002 881480941 906161393 395363397 935420298 225557686 306443265 20224521 471769192 944593512 978016721 947030035 955852144 523035073 853796767 940976695 961760378 482869544 864469102 150267354 836550467 87081534 247234277 787628579 824086922 295731311 671113899 352932429 838119322 267446820 718350161 876880920 923003723 844888045 862167610 613324975 857097315 455341924 872023161 644105242 737535922 573051352 713814820 716949823 835348618 61251805 216931547 417022492 800873249 322020635 792160581 755155815 997607123 91618906 619870651 153839150 657559157 446037115 950358960 551912728 959253138 487819274 513387436 123700682 404467807 249144355 980225199 982024849 995872785 946883011 988550623 397787679 871600958 806160678 905486326 23255029 53031369 823156768 860508880 896583098 913038985 985238818 987723336 466022250 988686854 248636357 555090257 508989231 649208334 395764144 448098768 487593961 830962492 698768424 854939328 420508410 750490360 413465152 779254474 914154526 922444826 916521843 998803068 229254005 768849072 654557785 690213986 939953328 963244810 517683546 844426503 362748426 702401452 271651259 793012082 499916311 523848430 770386979 992022526 284493815 799553037 596381742 774525926 276709230 453641665 270783539 711364356 119200717 378646965 627194125 890648702 418552758 931362961 377023192 867352821 553611538 783021206 952991790 969903007 942368789 993160405 875221675 931645134 947091726 963408003 854015245 947684501 934200473 979326324 42710126 130402221 306314106 725211674 129173932 430964844 142028898 942399000 440842177 793503320 505338195 534153505 378145170 394002750 824994011 852767474 733488899 776664835 602384610 718260751 306992896 501192701 991382051 999811313 680332549 792866233 849575989 946752007 719455433 798239619 124014602 903406099 156714228 591700950 937693821 984694639 903611354 970973416 509823721 557955412 572281397 695433858 572456886 824972514 769324082 829225175 589596698 652492788 713193272 790349797 537575519 967660956 331973266 970988527 227062853 817001231 162023613 538266809 590329781 921440083 555227710 911841745 568367569 970776064 442558032 779098662 778251373 884470595 731986079 741542923 630165920 770368192 562023408 772270367 67107313 130258906 51545190 937585948 209623297 724908108 686296062 738466978 907138975 952872123 419194943 684193255 66941573 505738071 788199131 971710479 934842338 995242301 381217626 510976662 437465031 750045664 754478575 943099856 163663867 799551589 391245749 917481106 80590429 703698107 647647576 797562620 275241325 616766913 967248920 989532913 145449580 863521564 681451284 870476269 495203587 878492934 545453375 617615030 827463209 972796074 959666326 960553642 623085735 920143576 86534025 185409629 411368212 877824358 598712071 968073951 299732125 960866735 971936079 972724437 112841201 947339300 980442596 988700044 795746507 842258111 960830875 994426963 452626380 890603169 482519657 962666091 637638117 947010813 169774177 184468609 364495318 783901288 282477784 752261220 427077346 966943746 127482214 604428768 288814388 477795347 99210011 964883865 567925838 606807204 702002833 742977073 531540055 629280459 128873911 132352445 132584005 163112493 505015240 936159965 765140882 878529467 624306875 751674395 823995627 878759603 818514413 893638663 166740856 363122143 200844457 438030358 393933213 567004074 712225640 930662187 343685459 670019771 376156750 714064261 101983179 999687349 762353123 947483152 172346492 955812635 113325059 543844939 696473510 818444093 327645673 647212782 695182019 753405128 966301061 987660461 840280389 870260534 51418137 338501514 831734486 949984940 765727281 767096538 883899268 927090117 935545431 986275009 973812269 988785779 445548191 508106196 151357689 317978695 544260140 624929100 893474115 978373290 695901718 806909550 96347218 563128311 429001147 527505993 462273329 951065169 436742925 824652300 959438692 976349969 856317301 905791055 339709550 732771518 445166245 585087929 647795562 794951417 268964072 443972920 239774585 635036034 233913186 626446548 991729879 994022969 349552219 498162435 959457133 994931699 166029240 512573022 460811283 783087231 139030341 861891271 230765105 476266135 795808960 918888718 766302775 856848050 14684782 906287461 367357362 810830617 467981296 631973853 790283386 864235351 158312630 578630932 32560983 444071473 692248086 863514905 483982785 945435869 864894762 979314855 630996675 861546774 710760137 878000896 601584411 755775414 359414181 518573137 552047421 930222380 536061210 651558497 708124322 852869158 322353485 513462247 384058345 871732199 388582402 780322037 269095682 768715654 702181629 737069537 524966090 563403641 665837531 847716108 793643246 889634085 105360094 281346004 931061174 990731056 271758050 298655616 636086249 677845705 422270278 945189782 991890545 997701852 228978669 879209693 837925994 894195309 940777085 957000177 43822249 161539497 265974031 620054590 75866913 604805664 693237161 849339970 13954950 450153656 748512472 782059778 760244465 867060820 548265534 575473298 923941198 976822030 979648715 991587239 555520366 593514610 610376328 701171823 314091934 446945544 6004906 240438585 751162308 814267423 266756851 552518544 647976377 779947641 270570619 271335530 281629021 561194480 967522322 997790227 43571287 354768024 134577150 996868734 96455534 791503586 302991267 392267483 465783004 868632814 30915363 772107595 601434807 884135974 715128651 720799351 735539592 744189986 340902236 433501717 26383306 724396667 447655768 899368039 214380784 275824365 416909652 657121195 311142124 622689606 44236934 236457001 894807159 999868506 932123357 971849289 629463422 830043503 990684862 998363346 885603591 961082397 264644151 982249065 830441792 993859057 486806511 786643785 114829540 599932254 934876171 983840569 675859064 689008438 486365765 579045735 252682059 639132843 1156382 549449644 467742629 627663398 288548100 964594703 558822529 927045415 283229377 456030712 531550077 680405783 908131053 951666609 541102615 938269651 801866626 816217449 822489704 885796818 762518536 823441368 301236362 427336337 94444305 280160124 571403984 835694377 435989119 796499165 379327708 503388528 550499960 648824122 469507130 879621252 730262747 981856844 362578858 370038345 453357591 933183347 312068481 598128608 876563543 947493695 446122342 907990057 92257359 911031815 834493023 869305300 620172164 834219653 938659100 958409629 65613141 401408117 319330382 888564784 488652723 559028734 561427994 864648484 163597710 284428119 241279712 744853175 341567446 862059538 86402859 712568200 867227043 995281602 164128178 817167190 927099407 968015957 136204282 595502003 886447200 994308360 873634313 886856193 224550178 949286694 943377606 972671948 684543992 876803588 952491222 992618652 479154290 964154173 515127453 897809979 302339008 686259438 993089766 999978339 725382618 938818427 513750431 531374798 272561435 629926542 101238505 537993918 528322622 586272038 514463537 775792240 10635314 400728324 301471801 535992931 225024488 609236259 14844151 873803747 384699638 411672908 869720494 916956434 503989542 944448070 599864155 615755142 706256222 712908048 539901140 776633038 176938392 560860964 5226785 474265213 523505351 791160129 980449533 982707392 989889050 993189889 79515374 700201444 137592643 599791547 574702813 667108816 841490803 982309168 890569416 905099152 462650468 703985278 148402964 297224539 759221026 859815630 570152723 787302771 906524684 982600739 18550945 57208173 853012808 892631619 772791234 862226299 750390622 774851659 302265887 772577116 292926306 938371540 726031889 964221117 407634607 572673570 139620742 512791016 963220654 969973569 476175933 689600283 182860614 512240786 34684534 627373048 931661931 992162908 367481143 437668116 886555503 938156081 515303953 848452985 41835697 624810966 774587704 854288142 649815078 897205510 232565084 293083306 860594046 867108839 696448119 801172661 559010666 587747852 907371222 967308526 889861429 895101095 323723448 886458358 840771763 874095905 922863974 956935678 288188374 791384155 803063377 844282369 604059227 684097277 975364052 977306030 421724192 897828463 705556777 797301066 85580797 434985430 737665786 917380272 433350446 861912186 363622145 681722728 265348943 305972737 463596521 465671756 905194913 936253961 820289990 987249564 828074067 833549211 409337213 525092274 57661328 443276104 56536257 933362986 6252421 995957078 712796731 852545800 384677663 651560470 14283924 857081047 770067914 991283942 168123021 699853414 645829243 743178510 369492312 506453798 59722421 887174433 877181770 942732403 991050865 992172847 777264685 912840067 588310214 716038321 456874471 618874228 327655365 777557804 984849746 989702839 43288787 270076590 929767136 987671694 94779339 115905601 100967452 628876034 978420725 993208154 348860519 499718158 187044835 625255001 372973268 609311790 592490118 620430806 808683809 823863873 561546328 651732260 885842111 990425505 324060340 341054255 395865213 814502139 54570889 480209813 681212690 926516304 391742568 510453651 63927950 392969510 417721970 897988410 577879249 658774057 594120680 982354184 14721395 113461291 839702159 926084032 23891643 437752453 983001200 983333956 77561542 328988910 163563771 858220153 539668932 989300808 206255368 374435625 967774629 993632916 539405320 584713806 856678837 985535128 625371554 703561628 765851247 843763970 908466938 922272987 243222789 388383173 117203184 553869306 313188086 764771316 82060819 317467941 269912515 731650686 845623247 965174699 318365536 973350632 353885277 945743809 122002479 735285613 109129861 560579447 359970538 521584772 427870037 806348887 130655583 440465643 913024916 940586951 52835652 513787716 373937638 466746363 873251795 893288028 671457281 989719388 692483983 834462738 897918118 958197886 621018926 940562283 32481970 980355960 280419529 606254825 640131504 804680181 228766061 988201375 498020189 797242041 411555212 468980037 944655536 995507457 876771208 894597022 309958975 606606078 824634417 910068368 983109049 994992816 949304520 971514010 290760298 425362127 790881192 828861651 99923751 347505504 665024469 793070132 746782255 908459444 232102550 716842797 799264038 897469992 832182169 978231267 768717586 843597214 643506294 742442946 501232135 750109318 341341595 534371647 270255290 472178420 429776618 944835400 770222039 771284547 853465095 879755856 37488709 881715575 854365757 890807926 721824929 795146754 352443346 562559206 643825999 657415992 775048067 799462522 119564011 870458427 551123783 995892343 299565771 822959088 505872927 920407037 236894067 805396998 356462158 754617641 921716070 981320065 691871288 797004203 411233327 555093455 410149488 802636399 721677141 737614881 61259298 542397181 684541859 773180102 998969768 999371243 550652563 877376163 144220903 223594247 987893618 994476497 738147654 897024014 471864974 825693974 242312277 566849152 718206208 836128009 98848436 173507036 473209597 996987663 330880619 387514204 924062386 931671010 856694879 955199830 156894514 627967898 181427763 619373117 728358350 749549457 673462932 865729092 245697801 322578714 759479179 978010785 208285323 397986681 465901807 565666831 74345428 386621238 486544363 503163255 549996385 757285991 193818366 747292106 611338858 711887216 537632041 705052915 177883778 644751294 981376006 996614749 700921967 776583952 568025906 694094410 95391390 969321302 417612968 959024159 270440595 422857413 853975428 880560359 194546365 223270766 419270189 865329620 562911323 843088145 178550733 844190757 401944546 824726218 860763867 913904892 167490946 837523072 277295194 323086282 200693827 613994581 615340068 711726718 864662466 871760398 636639075 679351933 171372941 660548541 646684175 674946470 945930068 993188800 109290247 587214146 790581153 882415219 576412146 869149647 115326091 765401793 415140136 565700027 690829085 791292426 628029739 722541921 238566865 516596633 204113667 875785116 741814979 784328482 94919810 257997830 389646708 893905743 550276214 672346707 747365288 884435117 914465256 957527383 293238885 744954325 659490941 833461758 778465318 996468671 31758758 507548516 438596470 483599249 530154193 557331881 466934520 570429312 181128238 589941051 728279687 879639198 627456954 724783159 830121172 932647949 608538774 830576645 547703063 882739486 744493440 799345066 210171013 640651946 548798705 989363188 636209119 790899998 508317611 885674249 498545391 569047802 622575308 711901334 75036015 202837759 496204068 698834972 284511436 922306840 559195978 789359835 567911934 815317979 104282143 573779303 901662633 919337015 265907025 900569777 276550454 671619077 320466207 797086067 612817483 851196292 897513283 990963229 671595831 797136302 462107467 472483837 139834977 885503415 628198303 687264663 115792969 157421864 892939189 997560695 13227590 358218397 87368320 743718509 837590689 982281983 227127608 494250205 807897402 897704108 354672877 369594554 3488684 364978820 504578653 928049632 337568094 357057724 160338548 968051067 342185654 412477372 113732471 631047928 887982941 969224426 55088529 997218851 968886311 997667304 862788244 904811431 620282013 888281234 973633913 990320455 581543321 759983923 709296194 723484760 468120917 604706034 818792527 842075162 39292939 552176716 683085716 964399626 76014429 131743221 107099746 632788045 645687197 938019618 634490601 922457416 307314396 820905468 650816849 774089836 463571249 723153781 691983702 827254388 763121979 797134575 58345332 375417971 112509431 511191129 876645477 939634932 977981791 988162092 857762631 920908882 760586323 820875517 16450433 804728178 112775479 126969428 123835374 234466073 189006358 239008406 902955091 923118501 321812820 531423607 427519459 520261183 483501659 632257544 183316634 283034967 667252632 758125595 317375620 383935009 968776392 980089987 461634998 617945757 257565635 744692975 846806114 893473081 989138730 999411378 508589580 841029207 536032858 635562411 114677456 278897124 194471836 997197251 265058892 818535367 783732337 893963318 891375031 908639318 279824243 980363166 34518820 127599676 372757855 973661946 16631157 791831668 374084381 831314075 511337260 530138123 700062916 941581373 304792612 877183073 457207053 989928157 545410715 949931601 368189670 797261772 1942955 793941303 159437834 656385421 295080023 990965332 392751019 613002241 733412889 917151783 793434246 900507575 30041084 681379888 887189789 997940187 15394154 60740568 941988170 975820794 642477255 886160953 648740647 853328981 932343456 941088217 973649427 990555061 496062037 662320459 244837780 286313183 237365336 369062338 17759847 396306847 522071418 952327379 88802514 510265774 650633751 965617977 470497628 982773840 327117243 419440762 823889325 932495657 453660404 468440905 213543342 233769109 804574608 949619332 958976512 986319919 840399572 933733344 373910856 896348780 602744871 863975087 608793036 779140498 560786560 751720419 274007305 762604404 220147459 870215351 388941732 560776913 575765856 984810803 973192717 979646029 123303736 873866842 107184638 975210620 190353240 785080004 619511101 662336804 247787662 278206478 270050385 635615231 522495507 722574192 468982929 880270875 574398322 645291668 478360782 737152277 867283668 963237082 472884450 923947417 819705246 841179707 811209741 836416111 312063391 554185796 942863816 981116821 149977205 840058225 225564300 556197750 596776750 704333992 741197512 965994571 203694814 315161876 918616062 995980656 523857713 572860504 516480984 896041656 883869474 971097606 5446744 767183083 406532420 620792351 715179198 888415340 230788513 629488306 892961267 969182355 843106665 925614926 905970251 916659097 668632668 924095224 40674697 207158333 551998455 883275981 18632397 612092212 573373660 699553184 728726911 831164648 84558719 167107304 317322183 463828489 997634783 998318170 8563781 569799184 874875564 915173473 785806721 857650701 207870136 810586274 232702490 955980818 309977861 817690547 800267961 865583312 738697428 781212320 30296167 578545140 664662656 943172674 442303506 662381435 81905236 793703782 840216423 870930665 406005514 550201666 85136652 726703796 721151227 930300353 695019705 932129912 74704013 635905134 330076182 546683168 71213804 726487071 687103054 902712088 34241094 191679112 922457684 957541760 246682932 527658803 971939976 972106980 472557435 883126736 437569177 656060271 916664555 978936008 954951944 964819063 492845326 678765747 734457914 983755292 367389255 692099737 364559494 932264168 334133674 981198634 546615513 910187859 731163316 847090069 265049010 323952054 978006124 984851925 949786729 974847140 665959811 747151371 51793007 286306018 408290189 957497422 699652076 787795630 540088469 567668548 119438302 126467887 554703920 816728735 701531112 964830758 176141347 578975916 630023607 865536494 772946301 928405330 783015280 969043068 557453673 702035777 713480030 748986365 330046111 883062680 51907154 274856821 48833117 541446557 766745925 982773361 576304126 984913008 715165326 897145268 911759022 931536836 970911396 979914529 440747384 658903600 546639786 995166001 908356419 998417473 466387243 990246231 820915620 985843404 569107836 628027837 692946421 989054314 124738760 952179439 541799922 650771263 278533608 309319241 313455089 925777780 145444648 986660997 25306605 129919578 235450881 277644717 981561115 993292071 337244172 901345731 399339480 964002689 476147431 568593954 724451431 734212150 426593794 464290482 426836411 767930311 276565630 695887929 497050664 507341726 507721327 765284374 317337761 761916835 418840110 893628479 542705985 817996449 18423401 548312569 988344556 992946207 774460929 960385425 51747533 240590328 639496105 686568206 944186255 995653558 510589233 812810517 490846659 494938731 755890210 793599084 159390970 639911601 638730298 888760370 609659815 942358920 333506209 843336984 98525650 818111997 305996323 392101550 406631576 530288629 96994414 804304475 296526470 699478886 337001711 506544398 80999203 394585007 396998499 572093830 41473798 525595764 904758072 950056987 691214771 782916148 785296296 820648288 551474342 938677230 568150103 834435759 615313043 799641721 229395787 964895923 951954661 981589570 988334706 991878732 973730287 996678358 150964452 263801390 919044955 991311032 499907850 965091115 685040880 776887348 46399399 814122475 824209006 866336020 944972487 961490102 329388131 365927050 438839691 779351072 501704629 783967019 47030943 166561873 989603410 998142509 395636299 579249406 541434894 761349953 449119673 640048232 135835948 393083595 687458649 948613155 437009768 482992787 272725929 688486162 370942991 497444977 135338521 691356001 179496457 933756555 735265948 975317990 321913100 736247326 69552089 797679726 856204605 907203513 468069800 618055716 897776807 971533496 768227232 895204623 79599666 284103040 386626613 526083953 593169445 986292324 311728066 323572122 118225541 606899138 529828000 969836922 666252369 797673749 854246100 941259918 524139804 770843861 805628387 855114259 61809847 161348068 396701442 790530788 963059019 984851138 122536443 808161059 734641907 910305483 408041629 754722958 746621147 843501463 13050734 565022732 821957798 941159302 526450834 682616061 587977288 774290049 596028477 752288818 900731409 980120630 55622777 68641097 543797458 548808529 416328708 755025667 946737610 972936500 769262105 837245537 119480195 544591790 811121925 898102062 463633015 790797033 571142012 975265433 804283691 855778892 886770834 962773574 447143185 684891366 22196516 69102145 730830360 982830612 277029917 498156043 135720711 137193885 11177655 137819854 848565441 962223491 216403481 259998200 10175276 842812682 298686805 562534199 391224072 924588049 742095025 783123384 81663203 553974481 510361200 578919790 21162532 196747962 924741100 935872676 220410497 900738826 137643352 687245649 833230250 937622781 643716839 649531379 110687767 502626777 716765379 815550739 624799329 988109674 666285097 747860089 891108422 958612887 628433888 884464415 560428441 926220788 286650665 399229923 188260243 284556462 727223940 850200099 266246539 631422794 855312533 998674637 470111407 970642359 401666981 853059940 998088526 998332885 343228633 724327998 938788522 966064730 302934590 560383878 505797866 552810475 723324396 839364411 109552172 829483773 37703209 723203050 868738167 946082162 20140901 70098347 786062645 951442811 94560026 796616487 373704944 543804536 19055946 326455244 349030658 775421888 529307626 915348542 945037582 955989972 248110998 481305132 929279707 984518894 293334022 462087711 310259367 908533485 561384791 887895301 325406074 516883093 165960486 312376467 651376113 708514250 518316329 981656582 547549156 576098719 79089682 933357120 78369358 418999184 58091166 248519842 937794037 969256337 409275804 626900570 193189753 847145437 196928914 429079313 5793803 275001689 429581585 630849464 735717406 986479053 255050503 800280368 826673401 924151819 381676315 852024121 352141083 912654282 662534629 861821134 666139081 709558123 132459660 406915068 462365716 978149307 964907597 987864247 100803939 691383843 852116146 967549084 967822987 972991194 444331366 655455779 981631042 999451879 623712170 732297802 610641890 867271449 476180811 673321669 682325786 806647117 718948269 777925002 43555088 501407559 74373276 319790268 326220650 848363713 871989335 949739376 601456183 818402520 306181440 359927476 652037154 882265285 680442377 740917650 363049721 904050663 28792759 785619034 564251446 859116660 635468496 740870207 134653557 488894730 588862267 707546763 399256387 993175038 444708694 772308450 801989788 998661511 566398595 722589633 411215469 429372082 715942180 771010328 960945901 986109366 290661401 319212396 81901247 526937739 571452611 901900710 461394948 932336067 302866345 539777946 796702566 814992628 925112179 961349914 103054601 422740860 503880005 772710915 76550382 946240862 821632664 990492426 380797097 840085425 311386451 551126332 166756419 918649570 20313908 785075235 364032467 765065889 685901784 812855986 49588740 270895557 696960596 826741934 898389857 920541406 781351986 862325551 218867058 704825347 825933808 871506501 840129511 888630072 221868826 865254075 100937083 955373345 132241554 298450850 169181630 270687205 281093724 993469878 768409472 942031042 167725855 346191588 83330361 769727847 777130287 919739226 621291138 738814774 995197757 996224328 663492612 818828290 753016882 984173474 33724097 402417113 883848347 903433409 318915297 973480262 258630509 743777429 464943176 707256900 912612261 916629270 436326095 449599646 389179539 644089951 233122489 669737854 281458527 787476134 628271060 826214961 170310586 807502445 491687912 692315988 974190237 985502170 152239259 725734013 851005926 852918969 46841548 954103476 929313432 957886612 522963600 859844838 676539662 843931074 84189945 505883124 473763460 537381804 509533281 914515306 886097024 945854180 562077526 853051786 365533464 515896625 561199467 635016017 287051106 596818129 662308506 777126119 649428717 812843518 369470592 577941458 5750877 527756248 333477899 370410243 381710704 382220330 837033123 876511299 215051303 830366322 652697838 699461266 925877933 955251326 66485876 956713049 754745204 953914173 339280259 618625218 28142115 108739340 312636353 588209273 92365311 909950342 36856611 47316098 774434415 816425347 157118470 350290064 364970905 714508363 786606689 947635339 580958400 975010074 816288944 904912968 241496484 569120744 971997626 985059389 712238464 741936855 233529765 776995285 441148141 641323706 246713681 698701430 934182644 975495261 690023446 978984473 396433640 529911851 163841534 814113966 295404656 341837198 332332103 733043704 201269194 890602105 906895194 920235350 301986692 385819927 344807047 740091407 158235875 197611032 562255750 901198201 740405307 854058523 591004686 860699930 148919654 156980232 791562875 831638335 649766997 762342457 446230293 565185008 509398103 814624649 103928505 415290017 925396455 976304621 202131447 853910499 796484840 952744708 361374737 649191432 334051470 660970648 980238975 999312309 557087276 771094643 634929378 730185540 860573838 992334120 667149653 809309937 248707335 280772812 428646871 722920697 651000835 964006076 181412556 462248880 293567790 802311366 256277139 681836683 294950002 810324117 32815388 384386611 729424613 739086455 368521105 537962868 860601712 989974862 516883829 706847328 687404602 842066495 200211384 706163762 473731611 481731647 926724947 932482446 512392808 644791846 577182198 671218095 556104871 869203972 238621054 675754951 59085863 790521660 726894659 797284209 109446515 264195064 990400653 996506991 938458438 979759181 787135478 830716289 732661929 926391378 940859293 974327546 40371293 777956816 661055521 999681076 790041824 966850713 925612933 982186122 79487366 699703479 285962526 889089246 869176882 999968562 240716224 841185024 235989098 464461603 73828364 650249729 134120885 292648878 963581457 964899675 869951827 874942235 901839342 930500120 247025268 711712679 343576912 695898861 204489163 575203929 908599047 982285699 261260557 434996913 340647226 999743111 884728279 956667859 215304055 293426168 316762020 944966117 90114206 651657144 588016966 838707659 772940453 840295955 807331343 815454595 983863097 993823913 688138182 777433634 12665606 34985225 579470895 624007340 396690615 622068012 191305687 557290259 759498664 861992058 696084371 797423173 778412117 858691474 269248285 943105734 730386451 889611249 347826585 930114664 54900686 937890005 901793381 964146332 167858129 443071033 983789541 986527125 882513943 997468728 552992540 909948438 588563889 799606624 705236063 826177315 895896840 924680853 586960374 891749410 506807804 934716008 459977866 701269939 225090852 281785322 674229060 909743462 534749257 739069897 697961724 862552864 641005844 718873789 135170523 490822787 927197407 961507602 583647163 956757270 935200370 945533545 503861252 622403741 704084645 729104625 811452970 954464060 472707148 924839902 694691607 951715993 559527630 901459660 708323057 916694521 47244137 998658988 360258451 709815122 997204087 998000914 880860767 905705054 927516614 957243165 594027518 951452719 954364043 977346873 526537250 966267416 462435185 814049641 360318602 808637351 745519057 771245704 114905973 120202007 22673415 205917503 205350 425938150 134961602 984735884 354167582 548741110 589480772 991054089 832488988 879268859 851257071 962325320 113039129 654383383 916333415 947965921 290002447 393760018 63839110 974835722 386897987 608311249 328717645 973524679 393090369 875141765 216117123 607726237 323683974 849852551 874939001 904597075 477626163 982453477 67210029 194656001 946681273 976738300 122922458 614862500 821878267 998268754 222131306 453709623 182411468 680495937 225826076 515565267 400272083 473428398 577085015 814167113 738398098 792458848 547265712 863406394 925113235 940982047 705626419 765497179 564752536 720993569 773222259 901962006 987123627 996058374 229029606 422386028 401771494 601171220 369196009 371298463 137769519 368870202 98272504 503475229 386671371 481514376 637028277 985206817 515097040 729281575 786851629 928077812 284490076 448690050 475121104 710376195 728016849 923915061 725559408 975969725 445273267 957059113 27944347 896059108 611263088 870790433 500855847 784571634 209597362 990901649 71510749 188531290 500474845 945883305 347074773 577247234 234870162 489655761 600358638 864209690 194267696 875677211 990138182 993763815 979284574 993278183 739567237 989237152 212027162 646368138 438173097 448314988 299128125 328276373 277499911 545484053 730668823 775508905 797314793 983032868 316580699 949890017 970329607 990823139 987462897 992574878 196554581 299763631 594116732 964920517 492636042 558287975 286569621 804449964 49212980 450653694 757947000 898631100 849723532 896802091 94156700 870181521 677441731 994299061 384788969 386171244 18805104 64439978 991334307 994557396 864986642 912914657 495076260 876800873 297440612 933144538 438301293 529829556 682434185 723220532 506829346 575510317 23727016 453260886 866693961 973551183 527808930 768590829 314055163 460534761 309649329 432864345 943864405 996874825 205346813 906292627 517997396 704140455 265773255 886978906 764744609 808386649 774317548 775871076 750884857 978800111 293693572 419112509 281804295 465768273 269661596 862333517 811346508 970694574 403134404 728259024 275533192 594981235 74482936 167449653 452185961 811329379 485984605 860397318 367990870 391073052 977166594 993694533 219083046 592059340 535702521 590145711 49702698 667114464 812056094 962501014 114599472 355199906 599117041 825415396 317060379 617377368 340371747 856130114 935219748 959491513 874895237 881908998 660287044 806477157 560716178 764819960 742242053 937924591 530358014 862600090 229462583 921475329 708179624 780783958 164322158 267239287 148718976 155801923 289310301 502485331 785980091 928023250 518984478 814503841 684826168 768476408 139003032 441633879 845837464 892175941 402668117 988377901 253258192 259698752 249207349 343860490 649038800 911670651 384622648 506982417 755889475 811392256 303115724 518946586 842627784 847341375 772882550 837254792 334224916 381807189 478017986 483545212 215425040 544488739 146338644 796305226 1516905 88886952 178017130 691122961 808018033 948163562 590566200 871059910 736870054 774331076 282169390 707351752 635668411 656151879 870595307 935800398 213127538 629362589 473197750 877238278 388279190 758584487 383126198 587778961 651401763 981100632 383808867 497037892 398797369 881185566 96879657 468583109 343531926 811518576 580917658 699170913 925650450 966827845 316313460 933728157 68744809 860089049 718756122 810623610 657059789 921203097 378883034 425616548 249207730 434105102 275562032 569810408 982149501 987064273 225213715 492892622 116380521 315098799 17297881 129929347 766703415 959346174 363949330 438625659 623764501 899017529 801860346 816298592 716603843 724049867 895576845 983098017 720890484 866506406 233239343 548046024 686550738 822968855 889278833 898858259 422112718 655475895 526569113 779006737 977598036 979435407 539232686 675899563 982690510 983680298 967246508 977054835 169292162 685876431 451771752 885639509 726646187 956361344 73627192 695843991 973900709 999058265 869003510 921294774 619395952 648620202 374369167 543492970 799255377 820736046 3316071 266134498 43619705 222703243 618598912 851095025 411230389 639508984 734456209 746487763 775955334 831280246 349086961 871561139 458164813 746592306 583464125 871638737 958000822 963118994 838999926 889958243 325431209 832284875 594333747 772122515 816877620 968417289 489504184 882608513 287263284 577171096 968171191 986943072 826527341 919906474 874790747 915771032 549133696 725226365 86443316 208871104 476084252 853315594 40840946 449282341 748851489 779588454 68532341 992545934 449313938 567705479 196113191 254747824 171641907 472987090 568513760 744799698 824287005 911482361 346039617 460136023 350752509 583621317 65690615 462481022 100540448 605481695 978590010 995041700 485899392 734264560 73055424 668572337 540583771 561265381 753385582 852347085 527611672 587140403 434996699 921313169 29317861 491800273 351810715 489941006 223730483 558541083 899155372 951834027 833965147 981208521 186411451 303831180 523937025 654584696 836854723 987348641 906431796 975009649 529787018 538761589 440776451 860199218 30851472 818410854 615719087 857532209 56079422 891620610 616499972 847930243 988048156 992769177 568479324 923131514 757002219 961915854 297132134 805120022 467789690 671547467 682872284 909813409 933714829 962328361 907749283 916679348 730192511 787511563 147370355 262405069 577210048 639006337 34085841 313272128 843038915 948832365 680277778 955694085 297903129 982871200 440397969 859962417 663038685 898773817 228476248 589147412 175049311 658199888 789952556 973985597 23653188 141795200 119552950 692840891 417507574 494738131 561267639 898141752 313950682 765424038 902343114 933112229 104719726 593710754 770673498 918043153 172750335 887228028 725742729 847372567 787468753 802811819 937499635 938969197 804748838 940558688 580535 138593147 177601598 516346014 179530836 888706612 568662987 756271593 637406693 816681984 557875712 880728121 638526473 703914017 800135693 884883221 208767340 907347713 378171977 946321076 797880277 861581953 187906354 364007887 367421715 802326892 330619982 911088145 940882068 982219880 267484935 738763736 611403282 761483954 477882450 597801939 516905271 705336630 563946412 995627189 128832618 661961011 20475930 506591806 254609679 626195165 302731632 847820307 626049445 975519554 479814289 641134194 526475244 929675278 585417972 875372601 931756873 987584039 992821594 993390702 822537454 918021521 238545339 940492605 99999278 147856113 559114886 975556380 755363656 820996536 64778913 894110911 532894572 788826501 241509642 954663998 672246444 746961560 860267627 978669378 538149037 739727316 482372212 552997624 810792826 889678897 364749154 972420248 975050720 997906926 165184422 761072119 177941315 726455765 914313534 931977996 128467831 932762338 557219537 592454045 261308898 656498494 950254651 969397572 960013192 997972021 120755779 721109098 451884044 660839537 994382243 995236375 336503747 560873883 174005262 870833785 845153783 960235641 831393610 915085346 926605552 979906048 859838842 980137274 858017430 862476125 574164566 954145247 53754020 107085798 848678665 969398857 301185419 587856143 505137789 553907207 809403154 942642114 993313219 998108779 749071381 948951173 447957287 570861981 791329564 792028992 398376722 736620055 23834365 438384805 696531140 742114755 246587380 312549195 96042012 414783118 132463181 658957361 319946891 746242947 117987379 636438776 765261732 851562079 455873318 997830231 943097617 959073597 935895485 955746950 353691439 852385655 283232428 943615618 470784 409104526 691158951 957551293 810646105 941676703 273863355 791778967 907307894 955237380 249169678 565704088 679692572 725456967 984835098 987321373 844640246 911622750 187463750 907831758 39955474 822180010 506924598 545682959 183841780 750562151 92728743 538820777 300133228 435520577 520450262 935522834 206255303 722051176 182697013 970380012 11330756 483704775 670766262 900939119 558671781 988412898 626537648 674283016 851192869 982209315 139464270 164631687 841999569 915025558 68042417 414673306 44608302 195499631 134712473 253785048 696285722 797137364 886859462 981600166 218739086 962007574 989891115 993189998 250687408 367776481 262872721 397390917 117012511 539229457 742536190 756177346 834362667 912484414 296105976 344476757 603692911 626260564 540844052 843000133 771340510 841061204 619281675 743858359 438143101 662445900 578062688 793908821 222218758 850920355 259093050 647978920 87484219 597174838 154695961 779419420 81427086 412027130 123841948 951684751 283579177 475010481 802006374 895687962 44523805 73003307 847147425 944323250 731257899 783843162 60501746 625586071 602601036 774830389 193226874 365589445 741898661 947202923 667213966 720162882 127628179 666339767 276688470 827655737 886578191 976454257 899496883 910733003 30290313 117973970 486573237 658420656 882160896 896416413 100576707 470299682 2702403 786133064 23239787 746545898 775578508 966752582 536199479 794977478 48947911 349140728 531481310 715360660 135834282 936491417 22620320 25922221 478978145 711484191 288295486 967905984 248740844 834189015 398874455 921710946 167292540 725999180 371070277 471797314 510584493 659661382 934345615 990824113 243628935 954511580 69918247 655741162 766266633 826673301 394552100 599493581 557834249 884007294 613834820 831607517 413134063 437300915 794732491 961163077 814570873 868994702 115586314 239898996 903786167 968309259 138330748 968482912 636916083 859281014 992614251 998353984 68008750 993518271 203083920 230941748 674410294 905091369 164779438 323745337 764880481 772726991 593628828 647293402 571685302 870853886 145285008 644266125 596871008 764568269 929393798 958445103 400160218 964813260 788204536 836964128 529548791 530429870 527530737 664728911 295280150 670853796 740717272 796543452 575687519 748412848 120339583 324709389 348634103 855068499 961888026 964961316 461116765 973809031 703757526 913125367 98217336 618732065 798277239 950427281 170960690 294211175 942636937 959007931 310069100 681089950 26485303 831367689 116961440 804812964 137596336 770557611 243892158 431815361 529776292 760160346 679305051 902000343 696538862 805657153 952695015 960115022 834298320 995502569 599211810 885175420 501133559 585449685 100470257 453526411 802326928 841215185 168197293 210245875 939994741 955098462 403282442 959297347 525576014 534554121 288508188 491536821 982986308 989965184 415466252 660587575 22708003 754066028 518327792 695035869 876585494 881822716 274839974 525919539 153789741 827133770 377068820 714786399 783546860 865678635 847100405 920228751 791422453 955461885 297097656 882532594 509234025 589249187 349945746 682476177 211110050 375032261 89071485 402231435 588168624 790458575 339107865 951261754 302696949 987631678 490694053 593832094 42696272 731962176 463655464 784627919 190115596 395987861 489792333 762159622 325559453 573754554 718479438 740890647 935249643 974999205 407714945 417621632 726842926 837866338 313765939 965176984 386343818 520007315 739906355 918589812 908471654 913303956 723905032 865931683 458091803 676278685 436749940 627105219 279597278 818900826 728750048 803766115 543059246 930481786 913136238 988573107 164644072 247071465 175649998 277346787 714039148 826808190 670219003 916401930 8843492 332421024 297132861 592504600 248590234 970490821 483332119 677918664 261955263 310662726 768934870 808947001 108313025 697537449 727517163 749182658 426759696 701245403 9695854 929621304 276903057 445157984 739119140 810506727 546253116 770599738 135001797 989611363 27402094 727085887 929176107 965336003 581327424 609267763 693302789 744954617 921176228 993506755 89768159 499929187 51585368 606670745 387541616 794728824 624164037 769319163 315262290 546213658 217637541 642932298 528303440 853684041 143444437 338712085 411351694 570352777 381320956 556211323 392207663 676815904 519856500 769885917 758990941 873855024 17879391 562821785 419976158 796222157 14025252 968494245 823407665 860366975 421215391 628975462 17439004 18096989 60219687 218675831 943098173 967509749 64293408 760667550 659863173 885355341 868638211 954224054 872677745 983278454 215924118 926700060 351745679 652476172 179844818 846870406 844471296 871026528 24206731 541535027 143510274 656580684 42317865 495304729 216644075 622297271 617540996 749023269 929114490 943813611 134791763 660955619 723936701 848818688 511452934 733031912 356487495 756106224 656534631 702623608 43489259 673953737 119733767 740270988 411478553 718514742 211908709 913854614 93078930 750570532 146212588 622315455 329053066 794430447 937869384 943862705 919144504 947567353 997859073 998192706 74912135 532775734 859849556 894047145 415331248 732895053 25972599 407335157 784152978 886498938 94344464 466984973 476436764 854389087 135895815 334994015 743760050 753021015 605214774 828203098 825652060 930951733 117962615 161178741 355450158 621599833 218515728 522883774 347250061 607540383 735349141 937625458 800433351 920275378 526723915 821479077 25063492 769966438 64233588 572985944 570453622 864259868 541536165 780741457 812152409 978586207 449369294 788344515 875976733 949974327 106964038 696251194 737157911 870855700 946471654 965248569 405769576 832388295 312895822 385668071 866241638 898382297 249971619 637320213 700196696 888259153 652093473 968145701 616702623 854421284 738516742 919260698 768724756 833175603 989920229 990358878 951294255 990869289 885275023 951629053 301944291 587943696 823871562 885378937 702604025 841871488 464574448 936009163 165204527 917035773 56670046 726391233 319698692 684870155 93136153 901887930 988132779 995491178 971676042 996940221 109228186 418042618 59933672 746194640 148551514 967873250 235291405 540633373 509352268 714283901 171203487 894279594 279149027 884366204 538086251 555510730 627791936 803173716 498776253 665180971 49597387 938720812 28702898 802477774 971524447 995118275 647495476 727245035 304559319 423846321 665110165 760289011 675811324 695501456 26613691 359106182 756098966 916777022 20986505 77244754 898797040 909615479 552531268 611116654 101734087 665519270 260123294 412361661 590068762 977948614 894306593 988219410 757269565 782338177 267563211 457610681 336893300 819289532 109875348 914082767 350627153 611296647 364131288 855712489 432339109 871838990 534465811 859095356 461600942 866080634 198969771 967418007 112379901 734366743 914564635 934856882 392334830 408334292 658655389 909289338 759010284 932672474 217172069 423232474 424472563 966420049 351619808 895149474 158723679 869391608 461013636 621473924 73145801 871487461 722971814 855352880 784459054 964011340 735319191 862329910 877697986 985941427 851119422 867483585 196149835 568835268 991498296 996507483 93602438 657165906 374568584 389760918 231724914 314401819 423985402 690280497 375400002 403529117 777891206 887884519 298800202 807043084 17233934 842031042 616165568 875089365 402320199 615280848 371489520 568972334 900752447 919367585 142676024 207564754 186604228 828427499 594064619 802957003 146914448 159289536 359367027 838789074 974621107 983742746 80170818 725265836 721753306 991023260 78699447 327978256 579322299 974560126 742640792 759716475 390945045 594152490 16677630 649610653 275391932 504236702 954428076 970847737 190063066 349541491 379560969 676681303 216158081 357820088 181918226 358450694 725475909 963537347 538494278 684424296 592961965 987310747 611524913 827265371 732368350 769970916 866556753 889275219 122799239 201766804 120758391 172420232 573127913 681814303 82418298 793916000 561367845 908667812 479983824 624713085 145272235 907997593 439235623 589926972 444088335 868610626 602404543 911242001 671040577 683891299 750370960 825548543 891590392 959567758 430425323 799954559 673674299 909713298 465559414 632170514 885127312 885133077 8133364 810163727 176443561 756045342 399494090 475547429 559941936 813389913 899798790 941092226 568066588 753584504 72986101 732686171 838962025 998192932 303787994 484063918 427255102 784683816 93296790 277893821 89472133 673231992 563369854 746864529 64854378 579179175 109906124 160895576 960874303 998847248 612618748 782333329 532694053 733461905 156794179 991571311 560202308 644810578 840712551 890709341 725677523 863510601 863129361 976136441 715436806 935603098 698838016 990578307 473626887 949011847 566973558 691055206 651660662 777556763 145513707 559002320 53686857 735921713 361940005 436367618 246889780 668476772 730606927 941508768 564210809 903409124 297066288 971858242 330732138 709083924 294492473 366476276 938477772 993552747 527778216 627262066 559934129 593736961 451695379 607560401 733466592 925707453 352604652 822551215 143814167 499746893 40405459 361493739 493181075 850217495 234466116 941447595 782624628 957925067 816392488 919556346 212036220 685629783 74399378 245075074 308322714 464771959 659071099 862920077 615996708 909111990 818805338 856067837 436969109 895158931 536224083 693519473 565233931 760749874 437120281 550946972 321382074 629355695 211461977 630380246 221124931 970569492 916245950 982351536 102586374 407834093 224508036 325883885 715174401 763963217 65892728 943065533 128037833 198746985 19919255 950049291 669711646 746551269 404835860 905875752 282960576 441794880 992083199 994085595 727686834 801577962 564884869 685557085 889235927 937134380 137567286 183892455 806443664 908378849 409223381 550842439 869927789 877685101 999985157 999989727 450317529 775754565 619097475 911356659 733948947 954884423 608480343 654309754 501262940 632531159 881600605 885403233 608882748 648131533 167490449 443494717 348202147 979775656 902289835 940121543 878784559 927243733 324901422 813778191 686666090 740841357 388753725 889999078 229155313 657467210 791564739 967461814 423861212 788435478 426589311 778284804 689839553 700576368 472466148 811836457 683969256 774195352 844939588 941332950 466266974 542209890 380915920 569159859 566792294 688750959 667247046 962385220 870709845 941271283 851539221 986035075 889947042 932704948 767147365 956691314 968329648 993400268 307029986 982953523 676967135 743930133 445500092 598995722 562203505 663325894 974270748 985319437 520013396 525696231 998066030 998381119 569357192 985851337 108404551 168308009 656983642 694281053 771097526 970016872 237989108 768309616 754385257 783956833 993240267 994726250 947400541 968261135 200079283 628374598 978849902 986357036 357689430 497878229 759430068 765252800 409379148 732078111 952853830 956533754 926896214 985776735 87785311 703737220 302745603 722291436 767310147 868722940 973915542 984699043 491830975 576968683 595168830 944128642 299728113 562975648 174843363 631422247 247870442 324080918 981364384 988583768 98212496 616952764 325144560 392020112 522999887 562106654 973388521 976195046 308658919 908701251 527121892 938374685 259220963 876804391 404467368 937474078 580625992 698035954 824132693 926497087 435531565 520655677 928722519 976717769 892392661 902972316 782451362 818096916 722512376 816303349 836851144 956520945 61830393 420922256 782407786 966862980 286720547 607868253 411470447 642811239 406584807 676211469 165225862 769663356 644405629 706954570 528764642 585924565 921486164 982043468 372375341 733688448 405022103 846761112 230989068 434502816 830627565 842429192 832086324 964713043 584565376 919652488 76800861 479789259 374433880 526208191 229882505 318231338 243023302 764842183 242840601 472161940 936390719 972586519 90861036 138385216 756101354 840920046 690957004 861308175 489892034 913341385 970052259 988305756 647263885 840557764 835074321 989404309 895812870 924324784 387307850 687870104 491449585 588871738 830048468 976286837 720088884 839707858 452936184 490250719 927063971 930866323 539576145 597699065 892949162 922369726 136597757 188202253 96372035 627441327 738291880 786336337 527813287 581053235 599572042 859534522 581403367 611563985 421678528 519188166 682213264 861703114 575137415 901811480 718027872 900831667 788201648 986270049 368035253 412815777 169891251 600559892 526908818 720846654 712361554 996985049 456485745 595492536 763316025 933107532 580466031 726193378 565616792 634673825 470535291 618999082 43469096 370202026 351592209 481472176 103960994 863202188 839243437 992062127 297193469 919630342 401290243 812740349 715924413 779032648 661559885 952139525 732994594 735734831 433991124 554725821 439257174 602619981 822480788 848894929 176182050 245594298 29779198 574823370 755338010 989943400 772933013 956830902 800701467 955040455 48589103 556470756 379754405 598833700 750664051 819490231 409182066 422701690 275198475 377272623 259447352 364573065 810425441 858698594 60592767 562703365 368371313 507490337 31735565 155078788 733476050 798506448 676284186 726335702 323146265 754638855 669032972 999211009 581488146 584892731 36869402 81693147 555625530 906126895 875289714 915724408 532579218 673627841 960775806 965794725 960926752 989759679 586594265 809520756 309668416 992875264 427818292 553813646 60896215 143957816 167524025 376748083 202945840 964904301 138983295 143380069 507023547 903914579 301551089 343851109 194986628 795043305 752765256 782143242 708821728 802654381 31170654 83797744 744073501 891167999 344681933 883278330 527197966 820899346 356517541 954105157 366634771 752991479 301292086 846451752 63799729 579847172 723626282 918382858 18226821 991878326 160988252 548683173 190359247 427854947 744421696 793852167 252930604 693238504 121192614 828192333 728497738 845672361 661955547 819273736 900838822 999277226 212146790 245675957 880078882 982739894 300914401 832989011 45900272 279354626 871542015 996088216 674445590 861104153 962586136 999623843 956255677 977058772 322328208 759707604 131576876 693246538 116449759 486765506 675375273 921377698 632933914 929745600 23529534 655481456 207929339 740800767 235099132 700973872 798064536 988725568 75360865 722608229 299166733 771607525 28156313 44025665 717361776 953008168 571647147 681661155 665811197 765980711 185273517 202321875 784320213 857149196 354959270 493588826 620340252 858369932 673581440 731615184 179365064 572864387 962366482 998112436 868735300 869148068 5607153 640414681 146136578 352795658 175389251 524878378 248394156 865877115 735996672 895260909 667853057 683250622 543719666 781146209 186531268 789014540 223832142 929072945 349585825 795269099 481794367 834711125 888969739 938963056 502354920 795109519 173079987 518073336 280750113 383042275 186689535 425055763 26524790 242211793 77299447 886023712 696108455 718561398 215344988 362370907 672189921 934994141 311719754 606176577 716436349 799772748 902272393 905491691 269260696 981866706 296939081 660268386 426915633 723882554 863467695 910208081 61736091 312304845 200946150 437090804 914827501 963618627 242672256 682691150 706404001 993642727 911828033 983298826 296586049 722446049 783257313 865532706 70506682 724722191 738438917 819172248 553852349 855801835 211090568 253680468 222269575 398550440 344036487 895784307 720018035 937695775 656071088 719283229 601672080 844886954 196073565 392077808 10040724 229559493 873017046 883997456 668325052 970415564 444320100 890993746 183110504 789615515 193369002 741281984 762560445 975674274 185968098 633663983 448790158 883544563 123343736 997987161 47888784 951644946 930306697 991963145 560753717 856058374 190152943 976647117 74675918 383650508 840971274 860067039 440690654 796798703 801787106 810573377 207603077 267541499 977482138 996288886 292331588 867812883 251625940 800030876 474936874 483961221 39261382 500742790 68370385 194122176 991803012 996162896 74538970 655837103 351548133 602473471 324800007 483942279 516506110 851864455 941415054 972557367 822385023 958517718 413952615 624522618 350543673 988824859 252495879 472534231 350363425 638260836 136950846 964720015 193176831 813699562 586607160 695229419 182423893 871336220 872482710 931063337 756709527 879338685 447664128 958007941 821791600 843443927 858088583 911750630 972242701 994425268 830186030 979190699 139636375 557075463 819387593 931854625 206715171 320679292 150888006 803889969 717895605 922035016 96378386 772996129 8218932 393471271 34639745 333437504 657697681 796559154 473249810 836171624 538005963 579234912 598430839 807983038 299100431 907418530 763257701 916770233 293288501 476788603 432502854 794913187 947266073 963455235 600806544 976881174 582356617 953075695 421230238 642386474 888894846 911362797 863637673 864252020 169067856 866217652 354414963 688837030 862332404 865327063 777148655 808099622 959846408 973832861 634867095 980775028 277284362 514025972 342697048 985383127 155558376 774132856 808784305 985444806 348637409 818362163 780519226 880726779 344993628 841563144 821173696 928771326 227813323 409763303 710175967 740285502 48662366 197512027 875603149 878030877 798650079 917636976 94884847 599945727 948182309 992375759 272728673 317483544 737584377 880892347 210605647 926938709 187357585 713130936 310980746 585920372 971051562 990270129 587564899 842904871 394421371 569799610 830003196 837903408 360744161 762176644 177636189 741855618 582318577 703429064 2045379 828612823 858899003 941128136 965421182 988987044 429789444 763300793 859598663 885053510 288773960 731158341 489015779 671596640 458497021 903981819 286018710 755885435 681946605 979999790 406436199 457680394 160669410 178089271 428126221 672839870 953651662 989990461 641840580 832179479 931457527 991976847 361228668 706470452 56700743 935607922 12900117 865591732 663756853 866955748 975102156 981539075 625984156 865517902 4720501 679774795 722831176 966998065 199901797 210868355 166187158 595378263 812719358 969463271 653794873 741532674 262804129 578178181 822950736 879069106 481677839 901860006 993431762 999814804 112477552 283221714 945470853 966214818 756587368 810081203 956064531 994124037 60537765 110447250 197249754 898822033 566678729 890354199 70749237 969465140 915629079 958519101 510616597 779078592 519632909 860530836 313440563 356909979 353404609 430579915 661863509 994616986 208727206 644716284 162824959 530689116 598134601 974434468 259174140 971058624 135331143 323376264 56238023 817237973 857769990 865777212 699336262 788309464 552303530 928099235 933026515 945844469 800469037 926120058 55154649 148114854 54350354 582295181 841992581 917677143 909248754 930741284 651899226 977104216 314408510 411840977 960550507 978978441 933012093 976811443 297185939 362758708 809099999 914950576 525079213 538302429 34030368 97437384 315845271 876447272 145632275 756885582 505025067 834303210 678455528 744585507 397064522 663101492 929270012 976980822 78580489 591353914 245061744 517328826 14558293 344664351 762666874 829311306 826276740 860430199 584524273 915872197 5634144 252338623 236120604 976578301 378015413 958433057 388236733 807973246 274201473 403940828 120525000 579019937 389597277 945287497 882796658 955122799 228601557 936177724 564128362 952469161 353677282 364758143 261463467 924457867 858819724 910661068 77443461 921330550 649867240 925926967 950137789 963677683 424429325 731754731 256343134 466599435 266338526 323116319 478326776 881053161 590137658 816537594 619639241 649451124 379157463 842872969 879102913 910821835 862353432 992081154 511708992 796176736 18737129 568818791 927643722 937188724 543075074 956566890 769756316 868640685 942340211 981252934 677766488 742071368 254864583 828155771 52119175 774658324 868922241 953474978 220158292 734070490 69521106 368746510 763071406 828131593 492870983 988970763 199211660 464592454 21101704 168781615 665824292 965031524 920126819 948663719 90940056 899895358 102209678 830430431 271716161 918178088 547590537 946882559 396591692 927704500 525764490 894301223 635453213 754639418 265183855 787970639 480711529 694703092 739359909 825193550 653709682 729783994 90338957 250596680 694877101 928758615 311580592 358745761 374882884 638670513 140622890 684719931 779594698 939206331 296942605 925176610 590115554 716122815 659054198 866699661 894235831 999308908 143675364 291512139 631481792 781021352 285277354 545861462 870476818 995865258 233480241 913546985 491550793 625042410 277240200 936676996 531935920 984740640 34108408 791811004 934030304 949166239 311655361 534085792 317215990 685246693 544674054 876291798 908243244 964148731 394066685 812530680 615253928 828951728 194151539 372572556 556823110 781471032 969253148 990095190 785045776 972288031 104861009 270890564 680815508 736059297 670016731 840629458 449499893 667036160 945685477 992415008 85214727 498674463 944503764 995939353 795082520 956325373 348039697 522985335 705990091 813435538 565976453 925064951 394597779 641557229 344019577 440350819 394042110 409196717 114179580 125894899 585383384 736219346 312967965 709194754 255781043 351977686 581834036 967271591 255797907 793821474 400523160 664906947 767506571 790828315 81470954 938909845 802575147 869760647 625308268 731515226 876510508 957637151 262669031 492049177 129143729 173246945 185417596 439259826 50033544 982766834 809416146 939439766 680566110 811705710 282891147 350540803 945277828 949192392 943347315 968634298 101478826 958458741 23810100 927455648 862110420 889864733 856492648 909892313 149014473 908916380 205131848 912142324 811967678 971819751 383705161 577142373 472205948 949535171 607786626 684580343 514877871 995877380 976564888 978915337 904009175 936840969 317334672 834566144 491571966 754973253 185061965 737473406 702839983 921323219 606627327 751402709 383398000 585881563 982112895 986248946 71667016 954121043 797892762 880178736 904573871 975025409 114248668 994265892 107102714 215340052 481434359 601844626 700726663 895968089 796374845 915784330 691036139 778800948 364859260 510890538 204859719 543291753 217824516 890076913 298105653 322648650 301649465 393060412 48076410 293049854 72593146 127299826 848954232 950521497 577876514 586427934 508078454 659253655 975330404 989831869 299521350 897261293 513342473 819148941 239409990 502673081 527913486 821510892 14576294 509969874 171906325 959546306 793629088 898550970 714503057 963295911 855753297 870374452 838473718 912218707 515333270 561583011 447822271 461278267 365642366 635792083 13966575 593355371 541797132 770406136 131020559 246410509 601706842 837157738 455792485 723422413 11523912 888496250 800186213 813644930 748727288 814759652 768086997 842708411 779242489 890199707 593565562 773027043 638948238 819520463 275424942 905906186 273790683 326560706 792589719 988310048 93433744 603510557 472598108 956416901 29540436 656439742 817400806 891163948 902901457 941040599 329855900 614557999 471771792 521097648 947625925 951095688 442653925 659740410 879714645 935131772 769823865 957193663 354971161 378692215 418465467 484390364 361038960 961021847 622591531 853229298 934292763 948394471 268920970 709353873 786437266 795998486 954892841 975799747 988050411 998517187 226836710 396919900 540571311 640440745 824694791 885919171 845937808 958227637 947071322 992837139 717756472 733670189 888223805 948254844 56097579 678834880 731783012 768816447 26185403 787488409 402455200 771562751 173000701 195082784 417674710 872939342 347431881 727552340 44424555 787201237 666796712 804201122 931191057 936542997 565703801 773718488 18998569 747618678 297821629 755829401 3198926 399215458 118457350 261934830 342744028 944144732 84583545 597016978 294557301 722388609 121200341 502944950 29900437 704637640 566010393 812942620 974188318 978016047 881611149 990808762 595878834 857527122 889379777 918134838 358754987 544153626 983398657 984181362 70523637 247450039 38054853 441231695 542263163 595089802 144191939 506350628 994028451 998303652 266538224 897781027 687044636 726600590 424636360 774678200 735187651 980288164 872893319 921508746 10054084 464515648 882755493 893577662 58997105 526661086 83184434 290988823 163877679 569653802 937831510 981357377 288835995 640763831 211097041 223765048 222845052 261622950 313583311 940887288 471433541 827238562 319133307 353640495 507707375 628637617 371460591 549643787 494691672 814041273 842833501 894471330 425526675 844844164 294180077 688720766 234513002 601040257 147834474 168441632 722006494 976150662 871308255 944545858 540714384 567778109 269383646 826247764 544766406 852883247 425163887 527397854 239771653 305030628 702517756 891106579 877754603 990336360 263169590 570970176 179763222 604987029 498682023 783846738 449560055 995134201 134588613 357378007 529557297 687422793 372655518 551270662 265255388 540606462 156311045 171933517 74981254 921816051 419091296 784255081 802664135 906585602 226527609 476959928 603188599 856917822 956051413 993436216 426271522 967554865 831295034 884344789 993351567 994876406 910314312 926132399 362747082 709162627 752314381 908531267 76684298 928606374 508468837 841548509 191429250 252740815 357305071 362296086 287803946 945292402 1402224 615777745 900010383 984693707 210861121 972288672 305689772 878742560 923323145 979665039 127492152 465448910 467621551 617875437 78673157 491992620 443302905 922792946 76383034 259789166 866424399 921989816 578213875 597283084 674023068 923037909 550716505 846902671 710386808 809865794 213447964 815134109 412128795 928253705 873568816 953780626 724200724 766071002 161154037 337932122 951556555 967207001 133189504 323973597 227231607 441441121 295695691 423945759 252261443 895830945 775692000 903616409 524482925 686180448 354545908 689078205 895607273 945283861 300079071 588526377 287102310 643323066 988262996 995882959 177430413 309341313 821684542 912139478 593243705 878740559 362191655 556974784 531352460 744523150 560210937 761401082 150616606 888932379 939861551 949083868 150721229 701610862 518860215 608567204 854850935 957001222 538660159 816808281 69572429 524848382 933363251 965265320 727916138 945994662 444570761 595480698 237885739 386593948 159288957 809561660 669675094 930612857 785006853 880654286 40852060 876308748 245614789 405419266 962266713 996581835 280403683 998915046 933234971 957200184 695803024 765462760 665762487 947107488 610541096 755779987 35348786 412338523 103253907 605636649 828295184 943029361 626397709 950603998 327682439 943749084 987182293 999927149 334459455 753296147 766629114 946380332 721727194 960576951 866506499 974157659 842252436 901859305 975792049 992909069 180391997 668170373 697844059 766637946 853102187 890390243 28188866 491906995 307901690 593891377 589312436 688912432 263940660 465813559 452148751 570068311 254507372 523829716 642623404 955053302 66368587 230135689 862189075 900314268 234687051 958540525 794282436 867372843 184922871 567007198 141239174 394443884 92426600 281180325 253288520 605299999 756685543 964659782 552965340 919405524 57684531 228920350 761423597 765169609 523482924 987841011 729626765 747239541 282551417 872848906 34573322 104871196 562418113 981700247 177929300 657705428 869266890 982675280 298360139 519764970 335279384 397442783 264857452 339079559 29189611 232023343 999287143 999636342 213118438 263709313 305137259 472330378 757779844 986091465 211033374 867316368 980529637 991585729 69775886 482422805 386237817 636322217 802841601 919928241 441555668 860336281 608481130 845215629 352759695 476208102 92892874 692641782 204800675 830976188 96870967 704744890 786565071 805262135 703667125 815105701 341649297 807184069 349804725 733019975 861023824 954362954 673896564 780162880 841691253 978462351 243654044 685196213 227117309 277981949 422590369 659392833 731933097 906768773 520204789 925594679 932782026 998354655 420229269 445074934 426194840 541834997 654816316 799659014 123585683 320699722 364179732 680963031 475685284 653177124 105372739 912843193 916218426 974025140 182138630 216252912 849844516 978030044 669696079 884307541 861470885 957827973 260757361 964581525 226782722 806297322 383295052 871347597 147733554 492529398 945010453 999013094 546236466 844093382 614709658 729668114 281731315 615183474 722652692 766772148 701673903 766507939 754619043 883970695 690474977 742920716 779294480 851406638 827010229 908495378 811066856 935001311 53683041 807249271 712811276 811087669 19184353 97875739 648544028 705628560 782862203 916059385 224962593 901866427 309095982 318300686 146794429 566851152 216788077 791305011 947411148 979699532 654649337 684244437 638013696 716717892 497258141 734096179 761456146 902216017 168222994 346846247 112220606 156596836 803356895 972092604 805180347 963921555 145616448 249770060 241830331 513618946 210276095 564751918 990782233 993719226 322661004 793712433 201788279 649713184 999765840 999913505 53335023 765964479 115250330 352387503 757393114 894030099 218991201 705846028 695463823 897435054 699867659 817766873 978170305 991793356 191561523 962327146 652322984 677875249 958941663 967333945 55293206 759378159 578073963 752716520 638017768 771658392 353090351 524021035 808822163 938320262 114728436 704297705 287475460 624408474 504651108 635980688 226424272 662244135 159763254 785245721 412686490 799217534 406745042 422926400 796270177 937003366 43459647 405805074 924480054 962520244 626948665 803279483 503915413 858460911 798264399 834570867 778951413 879182968 746643133 936845200 126924312 536637862 190741727 505680552 946252797 988375615 504574777 879856147 142423842 450839712 637675831 898049862 788138117 837426920 996073957 997971330 568711165 852937674 843473200 860737208 566728641 638728125 473130725 850147716 661609483 770857980 877663834 896002667 307400524 965811337 587187065 789074380 311549559 870940818 332176714 732231675 186640369 440367493 266084392 336195092 632130592 992936009 232847041 348111822 867677632 977022629 316236417 955409074 727031404 896279425 884965958 941007296 608537689 668760017 41097459 138555688 780774911 994842170 426845277 938947739 985147508 991030010 453360899 887696669 713013329 810938217 91046656 140936730 982208282 998839586 152814303 571269975 189531559 500383976 263448661 281679832 941489754 995205278 105645514 483368002 664565170 973065818 840252035 947767775 854244670 994694884 175180808 752427730 266304720 802947905 859772166 890438374 196845958 835101122 887240068 932752525 282990084 507625822 424016620 630709198 684937850 695316242 628994658 770668349 555479826 969910053 277257951 374249558 709922941 971944494 187941835 320070481 970279001 974093456 914549770 960423492 572189265 794194562 641290574 978614396 3382322 648691240 844546914 874159061 907924202 982741056 329742237 403826544 758392279 844009491 33884909 566163491 889865769 996400083 338146417 594545547 898137978 914633931 61490716 410332064 249585317 565663421 548606076 704955203 571069470 830691449 766574805 866105195 243814591 715103083 925458804 969878829 689221113 919426565 525433696 999964562 895499233 920368852 974890610 991438806 359533001 812666870 664574518 726067353 651872991 915731069 186099037 636474842 608690526 990138189 953403424 986788392 511667293 657833256 251314761 990861745 269710896 455049195 414182253 432740590 684195995 784202361 792615777 820883508 495496850 550006117 538576434 909860346 606360783 646915866 67744150 943214261 131066381 590704150 899780362 908301576 322507267 682503989 363709182 885078161 222010347 395230664 504709366 748022468 516363897 830377350 907214825 976436255 513915144 593786675 194173396 744802163 324937565 671557722 44091662 314159528 585220534 737155705 361818518 465190977 853149953 921253302 951148926 998839045 236394089 810370026 464673585 713749355 793969898 810547434 462984217 887583182 687583009 741493310 521805828 584857516 70681886 140867173 554034670 570981291 168668610 893129138 511559510 896492972 186533163 866089753 533273424 918457764 530732155 896537601 912562438 939517435 253643743 586251493 922087324 986251182 444234043 500457260 496122155 995535664 674671771 893766358 491354609 746933976 882115191 894269235 440322308 523350170 519528072 621623065 513631566 526745905 182626311 670962802 827872928 995496881 405260592 559643987 805820991 902278468 228430176 405048174 893584312 936910138 454344139 553886117 519827932 922164212 431937076 876227729 895732545 975694146 28405910 390533092 67606337 211212681 189295863 345501916 5705562 890844953 472671052 691945626 430227541 696537630 336912121 961100072 863574402 921723848 986183809 991332510 666992617 853482314 34796956 583940027 181323061 739836274 515455204 828343973 632096449 730154100 852338046 917889463 763253690 892325175 765238340 913225346 77684056 85141782 790109085 821556084 702536785 985606094 32820394 528611776 126936120 218414756 769279971 850077995 202980794 847914252 403459091 828689213 655461699 887205811 903016664 965098455 903226734 988580008 541826500 639926384 578381344 892812952 765000942 908137403 421148809 486879955 775842890 866207408 285899792 778092922 600348574 797981945 186987628 490018623 845557894 923719790 141040165 408187524 751465396 938460725 262349286 648127702 247957452 859049390 937158901 980883737 894104722 929657351 669793764 822043246 346405213 918946604 234972206 967594930 503132763 656715440 612809253 764925522 539738566 752834500 724722079 841145810 25515309 909325111 398606807 753338098 95365561 266501363 802416150 815639909 4279605 110692889 440505587 474433294 206105937 823062531 780564138 896001844 242056571 587379896 915264143 963146576 129542491 595643569 325556708 802331805 400750087 463781562 149328972 896369104 208625509 269748289 23617100 805276605 109792272 812939228 344795598 635254890 569564186 679014620 251573274 761199369 488862685 784571296 719002517 920396505 833972067 843645416 151814569 776802217 576783886 852744992 91662262 614584570 917093330 958756955 83604987 726712093 384397953 878242353 84885320 744744264 98598511 443638684 185277343 916742420 793421599 968921314 999800393 999958153 68409295 960797435 745662871 898092062 787393644 961379077 804560545 874810560 769166044 777598531 986223426 991714950 774747315 879410056 869031724 925943958 314684459 887118020 185284387 929979800 942859163 987620420 464366617 466765521 52270949 186879829 320040568 615321591 167806313 632789136 79363001 977461054 183407246 259883966 91523525 903100930 740641499 765001565 432608372 507539699 619639291 652190687 41140183 761057289 698518990 931580788 488391486 641689879 539624742 856641459 17237154 258984541 609555283 661525694 489526074 994540486 144245409 810133117 982892439 990406407 540632341 861157092 203261413 849186546 141972249 292571418 86342997 188068172 660347444 771412530 424733828 465694922 357205371 852019044 678892982 741015243 611670989 793439122 530263825 921654222 826409541 987061241 612076259 982976310 687901423 717386496 31670831 695162488 384457418 975033119 173100671 338826952 536895648 633593603 140727449 439073833 520441680 765281933 448280856 654349617 504200386 948323273 470032997 910901061 754299676 922182485 946169665 989626739 731769392 892189326 956291725 987509042 707193697 738097162 10520837 427876206 370372843 978445926 573051191 974039121 313406739 800601064 242993897 268982568 755241655 802142320 535262871 743997307 183148112 208129656 591556093 681264698 417002326 842310539 472464413 564215611 640438749 823906248 44607883 635579197 579510310 909755067 676543573 900909671 724746501 835950662 339774440 549565138 147327826 518720447 382751440 653260825 970078821 982855889 733293152 797574289 368565997 707635711 30554278 563638990 476753312 851094160 763761686 935200248 476611379 943762689 646612939 742017286 799632199 870975621 466235605 763381097 296616581 980552577 544222340 890797605 895468449 952984163 689880878 801238955 27479964 871632413 877858233 935519665 788689393 880102933 576304009 990045682 850419492 904701893 969864754 988587375 975441219 988754293 973569001 980767840 87776768 753929504 897271017 985228425 462055214 616029733 604307145 700410335 510199487 784392959 783042409 898156341 411257357 855852000 586241291 846351506 87195262 860887692 585064391 807224546 775533336 839846754 746688762 821677299 408168987 829378846 753230915 976087564 372252758 650816228 244612276 926710375 821063168 963954645 75951955 522756187 893471064 955870626 707676429 713178842 669544048 853997114 927707988 995736823 973001353 987998942 179575753 409886569 162063066 980212611 923130994 924311972 495026377 615855713 389118405 592253497 818317632 865238909 693285501 870338886 598411046 615700188 527211174 535391046 289848194 352236433 707615459 729471714 230971238 313216467 581734589 640512472 278887040 378766282 473655286 660634501 101092116 925066823 249174773 336476323 954242668 972256523 835815763 957999622 335274592 954123371 442233024 715185489 466069948 870854162 439847824 896372215 504426624 734808193 172903048 880186119 678367836 855923092 65763376 791858404 806902269 995860871 49135066 956681591 917486982 987057881 218838133 984229658 777646634 942602042 229271150 625272488 189115239 405128272 464515715 526090024 651524180 870261403 854260016 897378421 850926528 860753987 544388413 975156909 193211604 592017052 621741941 754266212 834518996 939813871 35793083 165728377 724970175 769284604 205758443 716587804 580642631 819996701 152630863 920897762 961165311 993726355 817700603 828556010 908201055 917446446 624417698 639580729 870134302 936363873 605578680 858881631 123470240 962743617 323953577 827475674 979000983 983752721 709187793 782132130 872953526 881742924 835868030 862382721 275952443 537725220 993944433 997957899 222246843 621959732 378737072 416716011 18273285 704842287 216908206 491812789 468820876 566540938 968864281 982543094 80001204 633964296 559041991 805851755 445858519 638598659 46139715 336065324 450904531 814524675 741320146 835180890 236538061 677493804 387603481 491678452 97550785 457893737 189608444 871788585 204573042 759397023 768886583 788002610 94170133 989720687 616987801 980477080 180262887 418671224 733756087 988561472 223714094 310650166 402144869 606482846 215448148 397321597 44735409 175707130 13862188 18975623 476622744 927199443 253937788 814356495 946805488 978205076 324789302 465552180 546924651 926263444 369625534 842046696 53928017 283760840 818062256 830383825 921495860 970978171 69885643 444386667 387464134 491989577 144073513 747488685 456165934 636320230 585440821 699754378 775681220 992123602 867164557 973867863 251236125 376905614 701945444 943990551 256695535 835579559 101883360 770704400 32639282 824018380 211052548 494337275 710262035 719119510 413170294 881430727 359608390 430196203 415194236 794518052 317778096 481866696 349099662 801498339 809714933 816619469 367601147 524894292 23778384 359378247 181995070 521737867 359969245 446508500 919438560 939192307 264071208 361548951 471009675 919138550 314105145 952828026 857086119 989239727 385528538 744487234 730009405 865583303 259025087 307496705 559403117 569559878 517657920 913276733 38563116 458968993 920018348 955999429 653413270 785113147 613711913 743293255 35599075 652399164 36965533 42372666 997330532 998162486 775986092 858244060 886649987 970583364 752332440 846049593 568683336 674316612 729430562 959194338 547835973 784858480 323174228 987201547 875964764 925968682 403984663 476364025 96652634 962590679 401613520 775143431 795192423 817873593 851490821 885747950 648025424 717569622 441838492 796372856 196817895 690617467 698636633 711461869 138307944 983226631 331552176 821265648 890657266 976739457 922875962 939171436 252806867 425513234 324879803 728324093 772551478 884110223 35756628 262647525 871985341 923006613 682884 183949643 739869373 990921803 708184867 757021427 389928062 975251449 892996402 979434690 785486937 966402052 610491488 843707296 911533470 942341493 232439207 695468267 528447225 744480529 659724529 928939506 711932259 875413561 740412844 946886907 858332440 898529469 85121113 358634412 3722199 185077750 980537655 989213647 181369936 292981482 605995867 781483062 73924167 672274557 454003000 576000417 82549531 468334379 738148902 814370582 32778985 132393527 936150354 981137898 504692591 714539226 882136270 953698823 948802798 979674558 122368768 322797634 117490139 474947749 22291726 73576164 957053096 962028750 768779514 804445154 113085001 152061404 595676086 646180919 415513212 565480392 311267116 594694427 919098950 955523663 39326626 836817132 489927230 698530206 994099092 998419751 198479671 658143873 75512049 571443877 143109878 486321993 731678415 852852881 548756820 975208661 348972516 503663264 764302372 877465959 460317146 636477611 469314711 730626020 864161808 865710268 248719887 652823099 135402928 313619372 228716055 670691107 966006265 978783142 427638500 463500689 57009485 790063002 673877902 761082976 318423442 693244294 877615969 894039627 627508653 701919391 845246178 882820890 489977600 990004221 175490600 625193258 426437397 542345271 72107620 515265342 869057994 927082003 661583504 791286810 591655970 596967421 111570946 521701664 180653189 693425728 905861997 924221494 830035880 936753791 514567010 893555707 522608589 570936589 115041386 750803457 712394598 938550079 624346223 921543917 79962541 257696883 473867450 997519214 744932554 747189500 216339121 230774029 899026460 966445692 598138841 756106050 661086855 923298705 620993960 899143801 629667188 708727544 379901568 535256971 904691632 925879212 820645396 862042073 976641156 983911842 851884961 931758956 356093966 845074072 555836710 913265538 261087138 507585728 766235574 942182574 571214121 884078922 192201441 989736656 138443924 909574262 682676100 811304810 730796810 839839014 15737962 256517926 690544277 808635979 555553814 916494376 133045695 244303173 816768501 978570265 70447243 828673078 652154892 729530643 150763047 262346659 659598117 942757129 875363308 960074675 228654700 419229792 669670624 761752516 544508610 677157042 402798361 510513222 831624021 957099717 924744711 937711442 109711074 215532968 824944779 836059368 52747791 703334589 990346923 991673750 866174269 956295419 917301779 960362356 444387487 776722064 930784687 940987968 967216122 968609030 962167050 964685588 289346400 570185659 174693593 871994204 405961743 681045062 102568608 607620001 823365050 925428902 757607154 788142186 235257418 719310352 411462867 975306188 553905148 945952500 273864658 728417973 507441825 792738089 753820110 860193365 16966085 183658560 743488315 776147695 226090432 264144661 503244385 953489957 916713942 984054513 728410143 890908081 425733096 452282477 90528185 897610234 596788413 685535958 20475791 952020144 996399185 998606628 555914921 961397815 886404021 906468011 905991080 948392974 726871594 978488049 615461122 641280269 882402157 980086352 933923601 944754774 76197511 386595191 607574455 905321607 79734501 572614211 947757603 968243513 821742806 941414085 665127733 844644711 353727264 483055177 867044917 971878764 421795988 775808789 433435626 921193830 731236440 830055009 518410160 836318865 897384390 931763749 469950058 534780109 932889259 941204594 953298483 970085980 993660017 996887788 113072443 261861207 881126347 986242043 773027038 922227642 404096281 530972039 228682461 237946531 381200018 858154818 357256209 385199586 753856085 821919285 458936548 475426668 845213868 928155366 885797451 930306481 697531343 721108709 707010999 891219208 765518621 779227362 615367871 913399578 13868366 754228421 268772121 493663046 380747121 692750480 711129603 712937275 11148057 294566112 348604431 399001415 394792676 953403495 612208463 633774116 161261173 326910431 950007549 986723165 793870238 977021538 186078539 768202574 836952047 992171522 39199198 996144933 695757717 891766460 632375034 965068799 497139517 564849579 755071231 797062552 773305931 959346182 481306278 496118583 809453106 868545950 899139912 919903097 716972705 863374016 554550889 785756030 124129506 412913913 185476977 905155650 500321983 537844118 265787508 834314070 785706729 952820210 58840723 475221189 282846815 397589303 422856852 756769199 682967960 934914019 1714422 88845806 969251528 995728911 865897581 875951229 992685653 994954401 784925493 915243824 569545302 670151228 818445806 909136237 538973881 856675129 992581382 998891758 516003460 642170068 810393662 913507874 91903425 674054574 974368251 980145389 777862264 822754715 697736296 891377116 157587518 831733197 532301650 692839425 807517174 967876846 416211032 503979612 830938187 890923137 51790064 375658163 141501724 838789481 407489048 930065599 745770524 777637798 108897187 555319038 935107363 948478243 592590244 900821343 687235459 946091672 858386002 953771408 391920427 998629149 21998676 624161198 912365881 972325744 547122253 810572779 599377199 951400305 702585028 888973392 817229293 832313029 768959843 801241225 351288378 569677125 830190596 955934863 743010888 817949126 824055825 830205821 571304475 947896785 416124629 948844096 636663530 773025715 431679608 716925644 383616290 426113634 75224109 912593887 888989085 996004682 924275535 926693110 530126017 665768019 427136321 735793316 116837389 599086331 945005342 981662325 537861436 553610444 895005268 901223513 719388248 758602550 193562034 711746941 517432969 577895678 184878305 356455803 389910552 740307358 958122446 985085435 725856364 861224559 520344775 882891710 155229582 770350392 274946368 813061578 598401196 708924079 288604385 781939056 471591213 618696460 364985921 666109206 555456973 709188610 932332081 998418636 980441874 989494092 386637093 585731643 439496610 502379284 81671217 216251273 883080060 961230253 625125948 828185177 316913614 385842892 835810440 952762125 531600123 803630405 132367894 518630734 562481451 721850308 559457971 807700263 708181061 821585105 791994741 855370032 562354404 772603965 786447535 804230533 777644379 803498470 456483090 777084479 23015212 26623134 872191328 939990101 661969040 889016487 168129736 480074278 147449152 303417546 69387361 767891775 721454041 898697939 83488891 445807986 487439422 991699213 933183346 942572983 440329727 469924537 330609685 356720609 957364120 969789413 533602007 880422906 454192769 681081413 37791208 915751931 304781236 665985348 219020687 843844895 394702327 762690589 819101332 960622506 835047541 847402491 938559219 971170875 321400629 877749186 124513954 782721273 943085117 968418667 963524409 997638813 346024634 644597580 196148668 372796403 408966039 638583912 253325201 449353423 250285185 825680003 558103157 900650573 598641198 786373071 210023960 456317233 491138708 742386899 928776936 944190047 104846267 739099758 160181747 506796735 459431976 786597265 81592966 616074964 442803140 815218374 127529794 523997525 356063224 383540612 835351542 923745595 261958273 406477092 420537972 544792808 675629436 872491345 895545312 950683581 970711003 986791888 421605593 897019416 196535362 390933087 368327330 869512157 699007349 730223347 343412579 778905087 849410392 866798699 907528685 949384389 385197854 628502030 534725198 633526483 113746196 448165319 108702043 597553109 502470853 545178036 174456888 756689095 720320341 760234640 962174931 982747766 631530122 739975840 663503364 746515919 407018101 877743875 843288577 899175976 148524341 460156515 380644661 907686803 391984827 442760045 757724250 949399691 646407138 946495941 107748292 459228455 240552024 388407335 117431698 417906989 152126857 704940564 637149079 841727682 926750804 935901227 22435355 73409063 616919205 953637575 523757275 794262731 258683698 776834292 803457125 806792120 247118164 460446605 927338031 965903385 896457523 906124689 242552182 421633358 167178066 718376581 18475932 694759994 238763806 843957188 228471503 283697071 521691926 960418833 608319809 955006066 579678249 581347012 215495556 308301733 742170048 761285822 911224402 965741381 741474174 988576577 512051606 599613856 530463065 666643306 300125201 979380727 971472395 987070623 457664105 889631099 163047474 925575414 207567678 345847839 768695166 857700646 798631754 944526893 797712568 829802978 451667755 838761935 122264082 390123531 915717239 975951708 151803024 628843834 35811863 575888055 334759839 893307765 790718839 800568427 895572165 984509290 684000150 788118838 711137008 737903903 763486052 788916669 346573372 388243432 160771822 205625036 827610504 876801558 602520652 647370382 890119420 975445058 34936851 114180504 514589791 571319856 614388971 901080716 491550502 584810449 706887096 785954725 367976674 725946252 359762883 885447107 141267482 685592905 229582773 738854818 56401513 485823598 752793863 851057319 508409934 935769596 970352475 994027292 89651311 446641997 85303083 727501453 317483979 962111274 82882865 808817175 413482099 620657401 465644130 634768416 530753429 892438780 897292432 953040707 799435618 946214787 546224765 844525265 844254851 886857495 104715095 867930667 980577446 990603290 425529659 449340140 128081316 525790275 627000328 738920652 232179300 468817129 842447472 982937601 308823578 951743153 623579343 688751358 42943091 994587211 598452190 856659564 753649619 785484903 942834546 976622849 129451679 723948544 653570080 852898159 435959326 492290000 977884518 980763498 711939290 909095885 663751897 853449969 947032791 951892137 866902725 867798655 807358982 812740838 470991412 798480285 247839451 897498621 688664566 842456399 613010107 949500073 284825267 823476458 426544739 885775541 848173453 936154385 8798542 499282905 640673559 853115919 610628774 718636592 292944596 485926734 364741289 902316302 189490069 663507265 835639292 853581581 396787568 740527951 967411766 997179720 888763391 895836661 846118706 863644123 132275426 728935853 30768005 264842545 644289065 933134395 544847763 616152660 673004054 818680756 835930238 949049230 927628704 971743583 782153260 804345206 541442272 688644094 208057974 387489018 847021530 901777172 609455421 769569307 681337943 756141419 462628867 596011452 629667153 706964821 387423929 713713105 25559009 78792388 123668316 804038331 816627570 829511199 724503352 896673802 700108212 963953508 981214910 984145866 928959044 995684648 12018565 218087481 144707741 557871755 867712424 975733001 401377132 962590200 961793876 996464563 320758490 749986321 777584463 837722268 450129171 507160086 654767894 711158347 641561810 688069710 984303241 997765576 477013717 967814093 888155537 974205009 303477079 739176387 539227671 928677715 117530368 876255265 649238732 922736417 311252818 371549757 151531330 389580056 555034845 891451745 53817213 807725900 85348992 944097852 848310138 958729303 546946261 582382459 767093000 907592289 392851318 455735515 103751255 739198347 455046706 669163868 682104694 710364871 184815739 230015214 735947974 842029148 470906310 878617367 499586954 819625039 585160333 899202239 353469009 480825467 242210588 932101016 608973699 667592269 533652217 633845165 351706229 423747512 512927177 590712696 834226115 982067737 831845719 928827889 59274852 297046073 774074291 826902320 298892298 725855993 543765393 667305230 739844294 879966047 280010445 434211342 280490081 865823035 952059553 989360649 714172046 877952728 578288427 747083922 202891976 354998552 301765375 547954413 4459592 182016745 875537500 912012987 513897025 709589278 302195557 431200102 52908476 921492005 735450714 923198236 889500048 969098559 495604326 815238142 176334361 823373439 538072729 885563335 161354455 957433084 479038039 716702807 538712582 606539057 336793349 838173354 813411842 835728230 729024804 974199573 753144941 825002053 397447168 970272387 723352806 761930749 328028996 684303338 461660907 663692133 94923722 270116324 93610458 820783045 645387647 896073596 896689877 909080126 948937732 967408623 513823024 544121127 762656133 855090448 788218411 994143034 141192068 445403904 4901313 179189580 26648544 227769277 497146546 549611479 689481876 714567328 220854096 410897832 561084772 582364855 805898240 916978542 400448384 646430677 532303864 633565445 947242643 966217151 127542828 389742847 314867478 391149049 13608730 516103364 794651927 889167915 383222411 760135087 444598549 608361580 54798909 283217629 985345432 997137860 664751636 695224980 677089896 713768459 958616688 980323038 74943619 219329911 389890407 481227295 645313755 923428285 167090098 199794118 334136430 693886447 196648078 801051195 7307859 757015476 238252313 357559412 872004777 914859650 588276805 770266952 92288602 308210229 336234226 873392877 161714288 683283481 427701559 481146721 195537901 854914051 831033628 999883584 740002707 872916583 552870366 572036074 899493596 986970962 789680788 868858830 994692981 996809093 136324879 787353451 62510834 429796769 210929906 705262022 617252283 702436701 695625008 735535483 698702195 807334374 78224025 414723322 113767733 741658898 111338265 639920035 449578570 461641488 358628147 897097880 758957409 835354984 989140311 999199808 971523152 998828321 569791978 952686992 374511349 471904461 543589829 703130428 985978350 996057230 114245715 283739904 731919922 903016110 535561376 595477083 107324218 710319855 86601065 234599056 456318606 953036346 491367782 697530073 102224138 299539753 691919800 745160060 899129245 981631802 104486461 458342055 680678714 969766937 939229962 956310641 731960948 910660457 448225292 540048499 834598182 887925053 85164342 120193689 94366253 325976035 814452831 877781614 58571812 967111148 327324154 829361098 525825506 566955576 553242941 699969209 659247841 706600688 739199562 815818278 196517320 840244141 765047433 821170828 249899101 922860822 773856929 958549790 487189164 880524656 205732652 852434126 560019919 907126509 716384635 722227827 888280368 997572645 838655875 934959576 136624506 607111587 521772128 722168063 867308417 974140616 689590866 762980783 562048170 565320875 636835309 690550746 183749668 618348422 305241992 804511639 560189356 581188160 801009102 808803986 31394235 316665978 684538595 949002229 770701998 944889595 996690230 998851683 13680887 551283530 158056488 466009376 69535914 571345938 716397370 861803334 306372711 416026791 870151899 896795657 768544262 814390219 259869284 414794905 215369920 937335970 945578726 981321589 26569144 134024566 662078694 732621176 178029854 920741457 434671907 973494953 557159828 637700375 225904915 732661772 53119142 532115473 459900202 530659661 878375262 878538197 977631820 986902741 335009829 370451755 238402436 868884367 441747878 582555935 639700105 951355467 180992924 647091115 914635269 919338936 145184168 781717896 402337082 597174956 142533389 378056568 523335649 770680719 560277227 765422419 94635660 952426902 312133788 758486957 408712012 561942510 294510737 538454737 834392494 917830165 923105566 996306957 60970356 196438143 145828801 497916756 293519737 751833790 851632975 882675145 971633201 997837095 484610493 766337508 890542062 933538275 989520731 994948941 464967282 983759075 554763823 580100002 116233333 215187747 204614882 797131764 551592205 676547829 127149202 422305693 76370630 108839760 856671456 952790033 912425762 969062462 161257371 734777488 732429251 864854304 773597686 980723698 680380069 708762834 387634570 593177249 629124802 968836790 673786664 802949202 930322922 955340626 102540020 498713287 595322020 840036542 569711733 987822190 596286095 790049065 449496141 485459672 697556475 727117541 119454187 624504847 996858207 998363258 18515400 378601671 959069093 971966265 138776448 599941630 363439641 939858143 134100854 290002343 463668946 953972238 664408511 679825942 81514665 254351619 854491982 962080797 344352695 609346386 185522210 797131914 747004667 804140248 885038314 963066244 469315761 696091658 53176513 236854291 440406035 539984508 691463892 898223114 631190619 785949882 664521107 827032403 883614276 900873891 264278490 436584813 489906382 716776256 788822270 820850384 21617887 236291783 117758622 616924531 216377771 464915350 575569173 668043863 886298833 894230206 567441026 669437523 115517039 272122846 892527849 915417753 72255839 761082075 649082848 914424128 808254257 944501266 359888814 779147160 980302354 991130336 777785316 842964786 198407515 257180649 455105740 623238127 483986445 982271876 430974155 869542278 602930178 966179051 453982699 959540083 686905618 958632087 641344664 866252698 589553814 732914961 299374035 867623696 257274470 712231965 904566143 994781379 170569406 968047351 302767840 685404136 965604587 979224562 258616218 762362828 541095104 772094272 313265447 385873850 736182550 870714687 212815240 435455750 311522508 391811452 755698177 978915709 310298535 905737024 911999551 942085979 614804068 642002046 587551499 858326448 806872796 867818889 936741709 940305217 972091169 975563941 234883836 958095512 739862402 921433103 957044305 971286618 55609989 121900610 221965318 722396475 183992804 620480454 93057071 705736004 484897522 921927504 97910257 471003353 138665638 836825241 328656284 603006567 922493914 963106565 288603359 594136602 30943858 112212368 817047733 955296972 591059902 628276866 837704115 849823922 829827323 832363806 25483479 949527305 771039077 830917599 31585653 151516627 514783957 660345348 786929371 797898235 263114260 889568960 566271816 690495572 749356342 923670679 487856974 881129202 788470697 989946432 91151421 700581472 531047745 982840919 628536246 844283990 787082524 925801550 836600821 915210112 586809078 826033500 913585375 988355796 773366644 940606280 10652995 463538150 406159993 690735791 852975177 966381205 120514955 440344314 407545547 873018381 137286137 799897850 230276179 363730330 953596963 995751850 313982812 544508837 671523929 839461750 855817003 879438469 626104479 926857540 433367728 745747388 685487736 928951675 151372492 341724920 718857193 767059704 376277065 531873987 77292950 192288966 284620807 377336946 143030977 488601451 274573699 721282614 472937562 555661816 272974287 876785585 798983943 881911438 301667256 388827178 352315820 434469506 175065770 800523982 85100499 840222707 298274661 701041322 541790215 817969110 185244555 603162586 726491362 873567667 754432781 986118366 333464615 567967454 654257217 669180089 432107233 485125804 744890438 767290863 244234225 743663430 173827057 871517167 501483269 679574813 549258513 877961601 652816279 946446857 778191288 800927464 860509281 989084298 469498882 504423267 802721649 907255799 268696236 411805048 854116241 861626548 982334492 999723072 868464674 998762677 419793420 588252460 255709738 475021720 974299403 997763628 380866677 415564883 15274104 65571758 134761903 531913105 931229366 979471385 142153209 989525331 677748652 836029615 895825168 953171558 213009883 313146807 74566844 502663486 813707580 901130115 44594179 252035829 350357107 478179838 624319510 813181779 268697960 488437833 975629961 980718322 208742169 410391594 712659249 975336203 49883509 289937076 868827344 968230150 646750511 807447501 722043594 808941506 133509676 569702091 741495246 843472777 150289412 229180132 316326716 889051340 697976731 697978706 819129200 912565665 784146920 994237348 5646625 464674158 632709089 669457878 618527566 774406875 442385823 655481586 951993411 973889751 361380647 961244396 86467562 184890949 323626241 460952492 323180111 509420550 890920719 930795829 934633819 957281072 574976554 915929327 659650769 716854363 202276298 867857714 76196023 375716922 366344587 675813924 277802298 364621014 780995224 999865504 513852161 651651916 159155850 481134815 316152189 839897915 543851196 677641545 248784792 958808141 561934319 866983777 7533102 956729704 89598175 756285286 590055304 960643565 695657268 972613409 136386433 379482155 418405765 653642577 63278104 923750394 951787899 964960130 127321641 929530422 100685989 875632797 605516347 972473530 819888810 971748729 809264109 851039670 911471552 921732136 355022810 660757492 104312352 701027125 484053975 758132165 170696731 268528647 137005996 454791381 650255431 730407743 459937001 606774105 817968055 832180106 772164502 869266044 286227212 558521629 616772844 955316152 80105966 199913674 91599968 780252441 632893763 780445215 440282828 936350410 532034318 717681700 168214379 667736954 504327566 822204666 472069436 583670926 449515017 566203573 318020485 934969961 324704292 477525348 554823254 872560794 312415988 412740631 263167515 820072486 76270123 600455187 112082682 211370445 131176306 954455848 11843032 56190217 821684615 927537826 509835355 696026788 247670056 339342198 613155500 989244100 225560928 756769584 205085673 874505179 899970901 994770202 631943898 940795180 118795694 848142572 228141133 785779751 887389576 915732516 75185316 468416196 950841876 961123967 609612328 793340382 737512652 942355098 860883199 914435437 695807208 937493715 615483359 910509478 238210574 796376548 119504983 679499475 654886080 709854562 547702916 968153782 281041362 633298719 39297788 271060495 479063949 821628591 870300420 895305920 952729190 975566023 766203886 952344938 825488924 870787324 448042135 831592969 306930473 474707172 163942116 630733092 771681789 843118878 181645443 321824267 175211241 384676565 517301557 922876340 312213173 883247798 441499771 559491452 222336286 663239565 921290067 929922013 129432142 912182879 164901186 888285297 333675786 737606812 74233726 867263179 914707919 969347427 705583250 848776268 678009640 915890463 127526082 925290337 826970029 945534905 528915420 563217719 901433048 958694456 519879129 886890904 6920720 887395351 45699449 925660168 339324837 538793546 185258368 329439537 817872505 863390486 709527323 940381314 189964917 483982242 985178824 986284237 849649649 932155286 689860241 850035089 358987800 503317002 720435222 723238095 83315926 521759107 78075041 609614303 848925680 980899270 950632437 999198094 818557889 846394550 676618606 788285715 366403281 486425002 998871544 999793894 113298626 342429923 335162647 860667223 51459181 111671554 775441772 809851411 671960492 856848900 104427896 799636658 788238581 993803177 856144561 968589801 422403585 748017294 314212183 349498824 403034356 497454216 598254971 841199296 434606638 645732172 34670627 559906219 922964613 971790610 580347068 599456989 283233049 846072532 926864577 929959324 50275272 813453689 175478517 250830922 680585321 950604203 421563546 846968403 474302387 782552240 963663684 975913501 362876299 432506811 105354176 304851551 82842748 609082887 584313942 736310416 255654130 430816234 144294720 371731820 222985109 580149158 415471374 962811709 548173785 646715778 33170753 451614755 707840003 733408376 516977031 572232003 921446333 978772711 608276330 698578364 653006326 744554286 205074622 961836321 729070357 995987425 818958970 829635712 235040536 692324017 992049853 995548828 874681516 910859079 941743795 942512363 642430825 820001154 81036848 434590686 450863865 873578603 469666225 758999486 566571597 980401282 628010571 821845944 849465761 993700165 669340828 674600689 931893204 934166693 47336154 371730185 258777191 978231133 619938851 755360857 69104479 389090618 144932280 882443329 496864661 984876401 220187405 313839623 285820727 959373367 213967446 767263374 762882095 901674343 410601493 551429206 892128171 937062547 168156124 306752584 432099129 738571631 468175705 772139963 876571826 917154432 464954902 809175223 316065970 435547847 238004074 779037946 848869555 875189527 51809421 862813471 643886590 795414047 532357526 723312865 445194049 591819791 640453896 723563477 362668578 684174912 448734470 814243108 586128068 960161858 199200059 540553605 594046981 603357543 928992234 976018582 652823651 834204839 528107894 933701480 440962848 996609589 992721778 993336002 480626408 900690860 458591829 836286203 311099740 536978996 164470347 256304521 914863110 923929161 367875834 824879352 607167237 942761153 472021363 565647263 313171581 473194352 37511847 101237438 407891626 698796416 434024135 548685409 329570520 702261595 657504484 675063096 411716946 660122229 531995288 637997630 66933765 861449852 55285628 353514544 148925772 199388602 240953424 454389266 440333098 544985717 60931326 614137877 787705971 946671274 411873610 999837853 692454853 918450004 324244296 325796835 436145377 784467731 654688086 969768824 227757585 515503040 955240604 972051229 281036656 711503884 854970891 897220653 699641930 969846591 429195493 665500079 301514891 437062235 818737924 977775842 909935285 929547544 600396437 674634774 487517554 920187325 472318780 778911789 875456875 922466886 70532320 259124950 475341764 812450220 373942315 961429751 768775143 825291170 255739531 418603698 835974323 943070079 832977017 850873043 138966533 386443141 815726052 958464703 923298813 982627178 547871063 810814510 842754742 995204390 620245704 822765479 707379477 910703963 766770742 963878861 505820315 977014623 550526164 580583230 189661965 284779548 262295817 809259873 912396355 915760271 695903184 868504283 258441591 277805625 200551504 286739856 558075913 921961651 431435024 516256047 383759941 996429260 806613916 896806851 987768896 999415760 95313237 681080131 978400835 987401746 677913938 716184648 65110766 346175616 377012370 716874859 654026259 897645689 341331134 807665650 311408684 876814782 219646940 886075208 366125166 693533399 25502472 889325230 578430827 994805385 912968684 957334775 654379946 938964704 716636767 784418821 47263748 123427518 649555689 707764413 535245709 734764318 348527852 988540838 933630547 968919112 921000663 974545845 755354078 864252526 593655428 815813569 163353283 213351734 791783173 992580994 444146576 794999150 627030230 776180552 351944507 679467343 582965571 610946280 841334092 972405047 59466931 402548502 710881471 962136966 853363894 972827698 262219090 757054579 408968272 419624468 106979904 453219540 513110948 944078416 471864441 622101165 333160810 414440231 593361586 678308782 281115662 479078554 230900659 234570692 524012403 581362419 147963660 791146605 450551732 902590841 993160779 998596418 937940208 938550438 396040472 934706736 30135978 735314474 899923045 909119049 254893113 739256532 24712845 505859740 62252019 459113406 207455525 689982180 811805007 834961821 389972031 848554485 569864909 864790634 44179542 629513079 492668552 988411615 825031567 961152775 930793524 981740955 802662202 835108702 403912090 820933970 844074922 844450545 305808434 768093976 274586261 502477891 374682462 533651642 806133075 935222055 371783106 984042739 10033172 125074312 635729292 860328751 68182080 347344076 936243218 987254721 731664541 823352131 772338735 974950107 823794276 909476322 180217219 870401033 620286371 943993766 207188305 958822309 757104586 787449321 836563876 918000257 124331974 561546598 576621004 778754287 220950791 249378452 251018139 670441011 298111514 754844563 559499879 738773179 800257019 826564360 676673733 804374717 904985925 973858471 948403661 996425127 948316933 985794828 512521504 833500970 328938524 525529675 607888305 896518651 526596100 794145620 950352384 981139567 211477778 943782891 226238069 947510747 25205671 80668270 369305603 445736697 196982377 981720674 486082014 625501019 943669669 957840705 951998007 987867730 891010878 947669778 378556760 602470966 532464576 536928297 869514013 978892155 639315808 924481257 195804945 642079242 288999310 570083094 572559580 901723693 417930074 479653009 721512668 969111594 685917921 936489202 21325678 808411047 860555826 961030366 973510784 978570781 318015592 615317180 85796551 991994039 153935297 417179398 763159815 798746513 364565691 542387042 830852155 846444702 894960389 980064754 964866191 980670252 233856305 435296682 329127526 392570781 333368815 634189722 646028651 755718509 441326535 635235739 387663905 400337367 982962629 989080075 638737112 918029599 757628766 909296104 206636424 962149412 198137103 848679994 69719342 492174177 376946960 513959539 344593867 913436022 177986263 721856992 800023229 912728308 436950990 527950634 53495346 735347226 8280951 817053953 609699743 636752900 466903099 571056678 937152686 954277809 952361410 966156818 157191704 707161569 861379017 908395281 952540527 987125409 184264334 418822220 331218505 635075744 871559842 880733658 269616626 446879908 242171683 454961672 269721234 784714388 139635852 193439404 652954446 662304164 385605755 960961898 821477326 908528412 849431495 904577408 5237411 618272501 908998858 998649216 205151072 669279338 664176607 857325276 410162882 410544616 761711811 833309015 226750718 424642275 958016073 985135158 769673463 974902015 307987040 735569541 489460493 551702689 764971667 791221505 588417657 986232026 544254656 592866541 144031858 328832792 435657640 991087498 453202667 462051506 986893924 990987455 111969202 489123795 30843268 821285857 758958146 791245509 511366197 750858124 846168185 973562768 717939513 973804909 870139941 872661415 229398998 466342701 519593363 544547702 267437018 494965184 299671631 909894784 443889739 857353243 445392605 875492298 102305000 712971833 16570188 25562225 734196291 751804556 629016180 941548110 219487426 292233322 332677185 438844691 369504303 445267145 335936064 812607464 495312732 742038819 769604015 816124598 807275808 953948733 249887099 636456544 690658773 718826551 81343989 762263051 59868490 398374293 389221556 405357139 715300952 985651474 846186983 953936994 423460068 546869926 619801480 817007929 27983138 873437483 651091038 714725875 107512386 300358936 292859905 643402613 638664271 748145423 611662371 635441548 123262973 552091821 707710432 997222823 800625331 888030050 192671440 355812223 844594797 996357348 340935478 545335735 267011540 902222507 632534068 923771035 290242632 326049437 529883415 773031108 540978867 643496880 916961925 992365852 585378730 634568478 232923598 711767053 55142094 697282159 671694155 950919152 110224792 942821238 773631356 968893298 513222048 727546156 160901158 913789295 377340810 775767946 51907803 784668775 259464094 400278565 578893465 881894654 17375646 218800825 459849111 870063261 703088958 843454002 443361982 818232358 814189832 998235840 315385409 892132413 425892878 532240991 482425608 640146924 411300487 944817238 411402242 795037884 223977767 687686886 695756990 899926273 251779781 391064478 733292405 916426683 354720322 983381541 796487078 818664199 193465494 386624836 127783628 897752019 764793713 808085805 86705246 720935635 113018171 677263524 904830659 906957826 521740042 969604059 904024120 950340266 358243765 411179367 961876604 977943801 263978561 578948273 272702956 750933305 2906858 448100541 538094016 638366689 474051061 912895389 171365364 682935362 207597668 415476844 551695172 760956107 917338945 927651720 132950146 235756714 134564561 264881659 933508979 946223002 159589521 209328050 383217178 578448122 11141587 85868226 574216938 988890533 55253234 525413950 714683548 974863063 50656783 126609393 276888905 412339994 882603617 927160427 974158029 976273087 361999902 389310020 81434698 757347270 535225387 898519604 442900421 744947760 663076628 898194624 919484145 948256378 563134120 954554329 961641790 982484138 412908599 642593616 320780291 364845152 229862277 929122917 800730874 965993772 460687735 655736343 92691568 167973792 603282273 830211353 247862588 516478470 204389482 608813676 676072729 788942161 33299572 47361212 680831507 811804139 88282318 398257051 919844092 970715626 107692499 846855744 829974020 899073825 553911908 848198770 217246333 768989477 253423306 498731332 399143816 638100843 787596108 814367312 950598598 960591968 135310936 396911802 76360245 94231962 896774371 916940374 283945885 912404799 420962736 800483222 12610729 222497189 134896673 983084659 565858054 848994663 914261988 925215466 187204928 275203431 632851706 874604676 46782726 933624932 767077914 809195722 859642435 943054295 178728307 316756035 217758926 557709252 60165675 778436456 635405417 780545764 281665568 953464400 196337956 527597422 245635787 748824823 572420451 590660486 387729319 681559612 273659614 835474749 979792935 986496742 80653901 507743978 365885828 986641512 212986116 250344649 993322085 998813522 484156534 768486128 141487709 610933901 111448858 506123959 458557828 992645440 405897443 967621345 193292478 948036338 195613572 863065671 379248684 639962481 493870443 808746309 646600739 997767644 901880351 933395590 254430710 664086232 853041192 975366490 965002030 983430853 573911278 809732581 591267045 850160557 462342604 535666317 825890464 901198702 319889430 716439725 920692240 945108251 191703108 319317856 247532253 602421264 174163831 517378692 315237515 781218035 684313217 816037441 124666557 256953106 439268113 661371537 181985613 884741300 470875273 860241054 949069579 981809956 802453255 837306573 415834981 879592766 889772750 983592685 716520333 828333528 429758274 506208038 458532041 530224253 952929458 976133756 294685016 448668517 438363236 874706867 362330876 908529065 869965582 949457086 603887102 620471771 985288517 988404865 655165333 834760891 666877608 846755321 889825884 956262564 936231955 947710007 573064260 959309138 837044483 923130351 309876908 375721369 361258472 953783436 64191993 449019571 400369998 834529381 614830413 943228519 627957483 948885785 386286004 472495683 564171887 729628850 992758091 996472287 659724313 931589307 191425737 344574769 335432580 999511025 287086483 812150650 90485781 597823422 537690294 670139810 97756630 410573438 544808748 849945687 904818607 954799885 424262085 624898559 718443594 769310483 920449408 925079121 901039470 997564103 530946274 723798402 545275689 554512012 19353703 921221790 563958469 840937994 897038284 937161911 510309505 583428459 103904388 574184768 358769098 478462461 401769324 767210036 143559595 232985321 268877692 376452227 802546723 862788244 185730512 853636106 246807926 938034543 242202946 596626154 923788568 952215194 354189588 844904538 778316985 787551335 331354380 632183239 618653825 745399706 256522260 594555475 337806908 569191123 484331829 792704456 789107059 842902782 775836491 947404702 796585690 857387787 58228513 365595250 164590781 622409985 585662435 655888883 377445109 910505050 935631059 990982263 599656175 984658424 388103263 891199352 422891445 539306692 352950742 493572671 754596807 997755843 167217684 736993770 672502515 838956778 23977164 565956721 377142903 474818226 347199648 850845057 537880859 836390834 916769622 946152046 937343972 975812384 395603141 684107255 116975209 125686144 366892934 539287367 712467212 747589552 907860757 967670755 737253837 956744531 236082032 837578287 89540051 376462612 13266529 414363367 832337309 954553273 778124555 915676542 664984519 909980945 718141257 904494827 814878692 937476109 26710341 766639466 918850426 953227019 964529459 987747551 472916424 515051899 147408084 503721291 281567397 399190262 791471773 857709855 500065939 736124148 290061822 359043956 246340894 828648405 259138393 478661087 939808310 952157169 955467099 970590820 725890326 866674867 929243265 995395634 654981675 698839631 3322987 333029485 340016904 959662784 231406579 643397004 224036007 960572065 37321170 201661444 730121819 791818417 450518132 463419061 731566744 870876723 642207105 851473258 49503031 154763790 943188266 954332931 835848847 881074874 489315692 963104565 957471747 991565844 856991150 900230944 306511593 459695676 574847902 692363382 729148734 750623807 429506420 839315286 29375507 242102694 271935675 860506920 189198807 296967582 848276643 923272376 870295668 893678611 508175341 970003721 622203429 847196815 224363277 536662618 523208988 878712721 239591852 983959249 8888859 239193356 487918317 702976492 671215047 877414046 532608323 740531872 112971398 538924389 793967974 927772184 147387539 640006560 993591423 996774349 41614774 940693222 922444688 990420705 286203925 582615141 922510802 943724226 966767770 986485568 689909248 961953716 797708601 824742565 483301968 613257654 901783062 999954448 975018078 976516999 897756335 970680565 590985303 913035565 342918640 656280159 11634118 34282003 500544417 744569675 412915272 559528554 304335131 917488379 74250847 172071830 861761537 994648503 172049471 786117646 834535230 918086774 496351526 850158848 934035794 974800385 39490836 493111763 985707004 998843414 281055174 717918576 393613787 928095045 813336326 873444282 832442600 868692119 256941681 845094255 36029980 218798288 821008885 864611188 504330911 558757814 162709783 297438616 514462836 995687916 380531783 605225804 97753458 505121012 720118993 788321358 797515737 848652146 106511965 244854651 710720135 901467559 737186302 890156881 867906088 985592774 797440698 956946859 495862599 652472754 684000942 967164683 869062607 907733862 704260439 760766700 79922419 836726714 300988983 714508632 478062593 719346093 392547030 456795201 520160211 714396374 959012130 999690013 137337440 327163721 579686569 594802170 186571345 248633755 185668516 870853295 854664123 916946668 495213613 636399113 942918770 987177137 132794757 292120335 68655604 176130028 867027949 948866555 295287719 376171610 666572698 795367326 847904004 898902558 712933766 870821744 345107037 609351045 931788744 942214046 665516707 845677219 997596577 998647464 526478111 861575893 922408062 939511815 77856952 466861375 915103768 962290306 302031775 718592561 999891171 999986968 338259537 946106666 458744185 800228509 949643098 974565980 331145285 717318998 405967292 443175266 573329429 732021352 279631022 981713782 637457801 737795738 855198077 911181705 285519267 985695165 55913176 446217436 435870673 897215066 528124524 804737702 395083570 976812975 877434927 955983275 506636687 645693556 322637270 606307883 728859057 739717884 665355576 729222843 432088123 764062986 787700616 836473326 495866735 719333302 145643572 695615547 399793633 513023597 623380983 827688143 541913035 999485290 771098858 940361116 232787919 345269057 950718270 956491988 400994740 785100272 977368910 979282841 956635869 995469704 307591528 803548172 586049878 675489509 540691094 901475456 495980996 844702459 150402743 529688784 754685811 758710584 253989674 886523613 897181159 993337882 247213388 988260985 810204995 955665923 810257242 827427792 543929361 555224952 638185371 803552713 1321516 725488553 813253921 833403897 87922592 142865882 677548740 948677013 891726998 987688036 860050657 864530526 109559420 863286643 59013519 367672765 709499669 904918382 399505978 936690094 550148980 774867835 800684105 861312671 357202314 567466421 80407831 320955374 791138143 877860761 606618234 764386207 894502378 902061159 548547109 851036443 644332295 681962996 910134810 932664241 437924241 621198469 449097179 557223007 746406216 894702702 319311636 479947867 995536263 996474395 985524901 996037854 978887825 979943948 303652426 983770544 855146329 977429458 657275394 725685837 376800818 979405718 469048981 672749115 409636673 768350869 683221481 832398660 814567724 919179581 532479092 899749931 762643043 798898923 548697672 924920481 119829727 285482809 495901662 897422195 660553855 718527301 311648568 428379881 344935592 392141779 782853687 964812797 218547823 929042563 885279201 982973997 275675467 830502752 956996320 977452066 377945363 588111656 443110698 917636912 959423244 961272960 67206511 333029270 493079919 687847723 132567634 363906622 64243209 627951177 286556990 633941532 140513129 572117634 210809884 336651115 974573997 986169783 816689357 868859793 210106379 544517946 805737604 826510224 265834462 312249016 817550952 833151573 614483042 679337638 129739851 474536057 738117765 938629125 893782901 963382044 47911834 151119599 538316255 772600122 723684078 785733010 343466319 617719431 498023192 647368580 345928970 404182336 618281852 753053313 72232138 776920699 754909409 812555267 517898009 820268410 163781616 735365183 725562686 902132912 743574516 800577982 721469929 780836169 264877041 757075547 652357626 875333931 936927606 975062593 928207249 978996226 733683801 999757353 905492770 934735552 594049455 617057359 724754083 969319767 824096646 922448738 523982959 971416805 359287262 710356679 163837334 220131723 694300439 816393309 396145399 689945693 751768881 872238201 305107068 896533790 377712704 640209356 943612622 986962139 901111541 928083222 307761805 361095387 910523412 977967186 559628557 979909465 95215341 382334447 559949928 981414054 573720678 986626472 525479718 596199471 959270335 980809370 16194730 730979611 927146817 938627905 583620042 798820857 997193628 997884730 641948112 721335452 553158942 977932593 404596203 430163409 675374545 858894614 518398885 864658847 386606898 657600914 640926887 765831449 221795873 440745860 729802826 921886283 775021910 817907328 641714430 899723630 955773480 976071498 654175407 826422474 979532913 991266278 894975966 947820136 682114279 733746012 670520983 719031554 647084181 831354758 868649800 888005194 499979731 780637302 48418405 331441930 23281940 338079372 963578253 984673692 557610894 738770534 527897718 607531879 915264144 973231814 939563504 986260027 627016937 730982743 974456429 987783231 939340761 982550695 874582850 938909483 715828991 792887356 566803349 818674178 233825369 909731695 677033277 769600628 891191676 955638374 332760596 364267264 411484432 850579522 853325324 897184761 588145286 981677767 604351730 839146057 696187436 996315632 831584306 890921250 454625173 738884994 35542071 722228447 870021449 986067963 805323189 974249203 487650794 737294554 405656281 563994176 750976283 912092697 64584484 767897988 809623526 873454509 481721425 937171107 310564141 430022378 238187630 591448982 943003458 949067996 713613802 905659921 936929040 947362457 731851746 904395984 93213203 125336625 646006333 766007905 59463971 977398099 178952670 300027159 147287732 544584448 619121507 906681754 550155354 711436486 443383625 513338845 752681971 915134264 350578021 780618656 855390792 963107420 913121283 979584757 90812756 634217473 150648058 845351025 697931451 987092825 30376582 548925279 406689769 514074914 252437282 909604400 720672418 941737055 691934427 796868179 11767276 304929911 373940034 738846033 571518809 642499009 195975163 775790062 982117011 999000551 516523159 670529217 306901204 891011573 216051244 578041288 674886759 907239262 587120078 789152679 151495799 561726651 846106516 994618255 218277672 857713244 596812729 871147102 225230514 870236949 724168148 825230282 888339871 978594629 312411253 622245947 592935059 970817473 509362582 758672006 827501940 997117605 375805393 430536335 200977430 450153489 224094732 281519003 327469165 806973875 433670219 639901795 281818799 494299844 171849887 609055076 360463124 518746124 457324268 600917971 508888278 627292601 452592145 548954687 347037953 947477184 942597267 978469531 135887074 749940119 900497812 996064473 189660925 518314124 487651322 677524243 879005775 910950372 827182962 987851103 42733732 600062161 142962323 221905685 35656638 102146033 211570895 767565866 119737793 384651170 654319662 672696521 583652432 636911607 463038843 941546001 738369539 801046563 462930657 703553839 428108330 958594052 748863097 966417686 650825085 776111827 572765313 796881702 585735477 588623788 146581819 161623869 627660823 665800467 86736709 723022232 891802387 986223744 498464413 802990763 401287505 680906806 362710811 684299256 99725432 214164187 98356743 937831126 639147341 664884322 430101244 496632271 894290711 983708010 652425355 730044632 660310907 761297345 634013167 716921136 944781072 963314554 747964341 849624958 296062755 413952492 764059954 844471987 12675393 123203520 105536341 688530714 815212011 960773653 635925945 962902952 97694944 448015714 900136380 908015734 39820569 825558609 280564545 408597654 175051887 928424052 408251225 671048487 523407233 959815794 986866170 987373100 26528973 603568462 219547638 704029745 727194668 910152544 815760968 992472460 564044286 813609756 60298205 282015666 456771325 961902069 235730325 743129780 285593053 531343967 809822622 945162041 465895033 811373906 707987213 898640290 641732582 648380363 931923559 984405471 9270887 463368462 422466002 507065078 760344573 975809569 845147920 924571387 726113619 793015229 459189036 527533703 912710753 939516182 415195615 943230236 509125660 909302088 652289770 760944159 15106061 811122953 902596777 940017957 51175039 203337911 35767050 444684417 390505302 937353197 478917186 600456607 356647086 643289637 391545249 624574487 277493561 941957688 304346830 521313675 467324059 707562084 125746169 785266168 425211000 785200022 40431256 853309077 80204413 466646688 926552882 938931880 572608227 582905049 83883792 395004034 619566314 956915225 656665035 977465322 126239517 810359117 572765635 984275494 120146590 419929383 336983056 664659228 166822801 619469230 38266114 131663753 329323990 546434938 105856953 384020787 414669536 996874070 211068703 565748469 446456408 761535536 813866276 960695355 921581864 959305209 341145730 463208355 154438221 234761470 609526144 742474841 816888805 953631982 163427863 262091874 378628745 785210685 104956858 495588729 123807326 349190633 584267597 711331508 267209357 592495000 871938875 976096152 430082987 633127232 485206668 613390609 47763844 859491476 836716466 980945615 638429680 989936370 427860222 671929292 370495764 920639845 461667865 867776036 131474353 578301555 793282659 965150193 870394807 886104559 725897326 799149835 522164409 609469475 40369838 56501469 310498513 814155517 996063043 997791322 785781593 890752082 859003452 992229507 187756037 883713894 500783737 884573342 438051775 582184451 46811437 271359768 774135393 900388299 474241558 968167009 888249800 904334068 49221611 173732129 470951809 653914800 922007262 998462475 48787004 398641178 46120712 272921991 828553835 856733621 529211407 646333839 915030216 967839906 316397828 640806461 244032047 957725436 745847263 762445832 226496720 810031097 870534410 964915545 195135055 471047903 636649594 829984059 803551583 835349790 78996036 478627379 52608021 791053257 769312900 816140028 929519291 959193412 457004859 705006756 431921174 545109588 247377795 630636743 845634679 886661400 618567922 741344964 968314645 999683643 329511987 385201924 532828334 577181650 320644352 619101648 443934877 794554221 438771523 728479385 512245160 607468265 656723505 750373914 761639919 953989900 579196339 709309815 7540550 475454821 644660749 960444437 734184573 735835479 253517880 626200840 929258526 946019686 774034551 893058990 254820443 520048692 402513358 854497360 434478846 717475449 260326694 417164587 944002260 985123608 190649989 884355791 756189954 816433930 245801497 422907146 544393835 708083350 18020973 631016142 926381915 986334232 125309664 341303634 902100802 927569675 220893502 501902715 145788627 373369126 290657116 991395066 460909659 831838475 733806805 944158127 676078739 809961682 585249082 743662144 158160242 182392861 335006320 568000206 970734643 981733267 862741667 892011110 238498214 647581696 962713330 998975097 279678810 354664117 328657845 937915438 919671851 951941063 774825797 778763330 482389205 812483460 305852042 799130131 574755290 706213416 770021503 792267434 823861786 937201524 918982948 920254122 697833370 938022455 576905297 878301371 488599592 534311632 381177805 623650338 565088391 721238681 724380005 757350118 778531827 832633433 829603562 840794625 514496030 911855123 877955931 938589273 67149357 971263386 636128492 696515286 220138943 303607139 488257540 862325188 6648160 127573703 779269267 781064845 705196379 946129482 370822576 530793797 971337530 984084023 460285696 690409019 321684171 685565390 556765737 931306760 392070774 746648572 771138024 957107743 627960125 909790932 381485946 406325275 508927464 974675766 516961033 795898668 587907670 951226703 294431754 667442976 834148512 964785669 961874432 985106100 425024761 571946911 541442557 896531732 624543447 849543158 408885390 936001711 843730599 989684094 773397227 883784698 883945201 929516295 219927507 282234756 865143713 869408985 902001381 986047397 668411285 880833865 870850964 896318246 161186034 167804823 509938406 548725625 460995920 793571789 83776319 774728122 6840228 359485090 742865023 827739434 987514764 993243592 124229184 232800838 638563973 821998675 341586238 426512252 726192146 982202569 835997341 958053924 887245480 932164941 985924916 999362757 631046485 758186008 107214786 783750067 488271254 760654953 645992415 743541421 673690945 768126271 60403242 965837443 173693224 669264347 22623230 436490143 363041177 478759974 666532433 710242693 64353180 85647969 623029521 759948232 178560469 246378489 756910299 990662040 945747568 995821798 122751495 839681910 919986998 924229961 669114606 736859348 992245991 994831860 379852917 645297027 892209212 905721244 626420841 827669360 765401622 974325998 309754316 640183891 684266565 891923628 50177673 225357371 679258160 799039208 995441956 999679643 942135945 953428840 665857203 677088843 446746914 724680669 626277893 905441397 237387210 781188051 988679890 995543011 466427778 529387257 73504451 662758697 557003940 872521920 66600986 821805470 258168801 540906808 88545918 860339300 374565128 790043561 807184878 976252725 401439052 782873568 574999339 702350670 225620040 589245720 312627667 952031186 884326190 997609337 281445129 297550712 721019657 919350053 762247046 874792767 693642201 839848410 993638584 997697332 425724928 535504248 829495778 851053087 514271624 550834165 267231592 954189170 481476674 668441318 264822454 991348792 956844728 994157428 271688408 539824606 103278194 742996893 365256749 687092142 370884163 558302681 207788842 978327632 845552131 940622971 43025165 139767220 688650490 919977241 656215132 695553477 652372232 834139425 741365527 933543124 87358188 618151041 566116965 627522734 867387751 979307519 389604338 714564924 396417729 556183760 219152978 889537994 242372984 625208131 486621168 585513640 741132150 893535426 131635689 830149396 161615546 421327824 675164410 748934702 75232860 186940429 9007531 264104160 695208071 964349668 498868682 537724628 820456793 834459328 110817449 408340739 625033173 849452985 435725911 948993235 215463269 330669936 637475497 780256178 248969675 255093894 190896026 570763533 48152350 843804194 456525808 800461381 209231895 506309646 275258012 344745888 171050647 274018488 182651225 633688670 601326213 863312772 424037951 431225749 813513366 823823011 285266707 681137806 686364007 959255868 207500538 675950706 619676327 758541573 872252913 902278468 529351463 534545041 111246095 225484924 224125581 479388602 241843079 820467631 484173158 671363997 410034803 644946180 728847720 792964900 798754977 979007507 843535330 917603308 722581065 785464165 456912 880009110 952987443 956929909 163489754 955702716 197250083 392137801 348718053 403571620 916779484 989449178 196785105 865768790 527567468 742952836 882728102 955553857 971941156 978092681 389280568 856064473 491483084 820880644 456702232 460084487 313843754 480594194 601519109 677227267 847012323 901984284 778321414 827808027 933759042 980385761 558248231 836076165 328490580 417114221 998561965 999706042 132015354 789721259 603114633 885605775 396743823 876883694 881529656 962437085 785955558 937450325 284195178 333047128 184791909 779988795 617116537 959016530 299609390 651977428 256098684 625353408 948774278 972692102 330902533 755958816 503622269 986185944 744682782 954305364 260410369 273512677 690457158 799669534 960926838 994974201 931369128 967079141 356280950 519850449 73674787 167772807 531815446 615365170 705200628 834608139 974503536 989345430 667458911 930215012 304153183 615062866 684842893 771454588 212400223 631235132 149232876 299330868 460724332 498015301 534860762 811838924 212273345 826828090 212118082 615891434 321826877 576173923 564717534 735745476 278155926 474460882 537647738 652654192 225781359 814462182 250990387 630531093 17269672 542776769 877068127 975996344 916613085 970252057 492697284 622523466 612716629 941317687 987860143 991169270 728856143 932986702 15143481 301691471 934000789 961300912 130274790 836502747 837909562 919194653 93766082 501889567 320322324 399541373 386511495 817903804 63258472 353719547 197872390 566065860 113606491 722148699 394274798 876291117 21462272 776372579 208502372 230634202 168539442 582471917 541581241 569996217 648065599 744868378 488127512 800605748 713083273 831593403 222786598 380006068 446896472 894282835 271536099 337053857 780059695 807578945 445472402 721947186 537851823 809836286 745756206 996249723 967777060 999459226 606450596 685802228 555887400 853377321 67287932 393741023 641546490 911548701 996355746 999976520 531105548 579506731 584622783 935626315 564783584 579542488 890398828 931908454 112105951 365455866 718172200 993693781 627382699 915476026 237946331 367220546 197110735 556532454 403968485 810776113 637659408 824829347 858056723 994218405 957503919 964480147 853775277 932902054 230977712 625357828 938662814 945918060 952272420 966126015 238860575 917835692 619714288 796232483 162063911 805274940 694169672 806594961 665291562 704020788 31678953 881317399 166033473 904552005 70871107 516544987 959890392 962106372 848608506 963070444 963471804 977114555 891150532 978624349 965066680 970256843 671238139 750728480 454338093 551921806 938381871 977943736 611935414 764166318 49740582 875378684 562861249 943246597 166124145 521495253 93973455 378108879 98810068 484025188 347975929 446428654 988288528 999792804 891004809 960479860 103940843 572000242 473458928 828666220 965930596 982621317 36059773 205448977 376796063 876323260 57653905 188610610 23408496 820239357 245637065 638523493 399438182 622416739 628055409 883437910 988696453 996881367 347380089 851667516 687532573 804262087 490936120 818142696 599468443 786338167 917266960 930205401 78400529 329232200 114800826 700265336 603449012 788782850 234693633 851753057 735738730 862918624 196239019 420675406 817005117 941781048 820281634 986506327 638317233 641207242 30239853 968563994 925828902 928781876 464191831 685880446 584487016 707624293 366408716 455672003 228264934 800356259 240116192 628867108 826303235 959031114 556018486 590762295 5076553 457340432 968999832 989448324 402170810 662080014 245630652 653182417 308413228 415442275 946308021 959627017 331847722 405939262 13824295 533892643 396304465 684560851 214859336 800810731 72037172 939184253 447170965 677193655 945055688 957716878 230310010 308889373 159180373 183894388 694591017 843853626 643859207 929988522 796487666 811168949 481386466 485574123 179996341 412144450 234478358 797409819 17422939 282847422 970233595 973959013 211168598 491383050 913344945 960812027 902020583 967279520 949622301 988614496 204465469 857984080 76590711 337631004 730712030 797927227 531903437 571823638 253254263 709485477 594668399 952507595 271699748 858265746 115618024 489697873 253223354 390925135 165028080 203138566 489950634 638429964 299751243 718128959 728407978 980261140 841770918 995954602 991479824 997007812 595216315 631379914 921870950 988337732 710984757 990943992 707374691 887934669 761110270 847753095 82118603 134467196 652454332 934437399 380767956 556749740 554008796 663455107 367764725 428541666 142202295 433462648 919074802 947112762 597460743 768510045 639180602 671576518 431245548 453497636 91605354 513173093 662323650 891013127 867366632 985292668 290340049 552453507 782361299 783776670 118794265 311892962 618869818 719095159 810867852 978657088 850224565 852372734 983911929 989800811 993137264 998334197 952483945 993535103 250883033 813229872 653233278 819716336 230649271 997385009 236862823 514362786 31515162 72433486 255568305 912520590 553587285 783189097 174648563 860122173 619012760 861159748 709751374 994071488 585003922 915779795 74683069 943152074 456808509 847069241 157874661 817044113 845421316 998703538 566372639 878831728 618736049 627438331 316898547 634929461 736824643 758704603 271238863 331138118 568772121 813847285 880517848 937479637 616303294 996057930 448211465 707447418 817901563 998174171 915081425 998349169 477324378 556212916 227910140 302262692 817283786 863443655 411881674 823649190 192053590 279792965 943810295 970501381 811988217 956515551 337797294 538812912 846147823 862934767 223845897 935474486 291965461 855886850 350197827 741044303 276987645 633692240 90204459 463442170 743406364 889174841 880122208 934095482 371413531 376903683 815585468 832829919 442557858 939422696 552485391 582045292 188494051 626899648 822272047 988896095 883138752 957033098 798550799 843938411 916746033 923269040 752474077 842401220 191039379 316477156 771533005 836539564 647430997 734415086 720560360 881074387 912194842 993242855 918076541 982438219 179182237 906510074 38027741 270789050 26302310 427825349 837995482 940425630 141510677 207387302 204515916 810023045 901439756 913537064 817227509 843618469 849305955 949611471 701663379 905714228 603393936 612901542 204188137 556917827 221705870 876913468 623637264 784702972 199059155 654000849 598031601 646869989 247657420 415979821 268856511 836561601 357337775 497631017 614389749 676834222 870062520 887763272 445367683 594111140 474738184 878499400 585034077 612427947 999674244 999923019 649718641 966826193 580365386 662636821 186105789 415468783 996529383 997672979 68984517 767147238 497900843 729065756 126978994 232275449 858117458 902394930 875281785 972284427 836760341 842555251 643783877 700671696 929424430 938753782 925085797 983641018 397144342 674744064 401206564 402969742 10448465 284952327 303734828 845631385 43466441 440034934 665479104 979183409 655631990 781874485 467530958 528341695 651329326 801098500 922035238 936084299 390207041 484652256 454235976 804430767 288644218 963518273 21604288 255629555 105002667 423376754 68208897 334628709 353977750 912115204 934550134 949418875 84190219 988588470 523890521 925700381 523041020 873845887 527829039 644200469 980418710 998492981 425323854 827941416 663661915 920387293 780055507 994518602 910765616 977754910 328702847 365038831 492010306 669058953 260287956 683331424 219317495 577049120 292006511 868861954 656344085 850296279 97060432 749281646 216021700 324324547 724825454 992090925 330119912 490319446 395688063 902037921 171819420 215908254 219515114 225476839 985347256 986380235 255009631 291544210 851752131 882061900 879710945 916782955 80860954 719428624 537890441 741647589 896467757 899414862 480831969 595601322 660109607 862939798 625346807 858056613 469506878 612755541 287917141 382939891 142435642 144911228 378476999 615508627 820898476 942788585 215224156 220806400 247829457 725037409 638379309 667358161 930832952 946820756 428681197 671798180 292951223 374308763 634591802 703756472 714272795 725194078 96960696 183510422 132819387 304701647 572089763 723794393 803045044 943888953 108160600 145881717 237597316 660789369 65830639 195437821 703028546 913694952 976150387 994738737 11689899 516486649 889915271 911714904 481014362 533163167 830496273 958763507 435237665 616866402 878950454 888502670 273603175 746031434 702618288 820408994 530753627 778230270 992471121 992949703 383263640 649233174 234223664 715534368 819975325 932075316 691727748 770644088 20818127 527205769 77970918 637737904 64299568 565058557 293255321 988649830 108845921 857339445 685525365 915811185 229054110 332575889 57389641 378174017 611611387 715162027 153695350 696380401 113046201 379611742 909130746 957740399 329872226 568926694 936253365 986247828 168799098 455877857 222682038 512164705 549468100 577673689 536835964 681826081 663266227 930206973 390812794 799326105 285109825 325420948 250313334 462630280 159573536 577549967 365778660 844903426 407964913 930600918 689483869 957440038 68231388 616398110 896477323 973700280 278253762 423917946 976206160 984253538 432467270 626055520 836032803 949207360 525509157 767722408 236973635 807025618 431148037 659141716 930939394 960182951 131636970 370486919 537161060 661327428 632791537 648002044 58000537 216377397 146144828 953213151 553583401 969489364 803511039 974681931 273460662 839574514 326152455 832131549 565442155 951630258 557370846 686868610 869113562 952930809 214367268 927071945 943985331 982980742 763709586 769141496 880418932 887937384 73905592 282455381 84139482 232330884 105882818 752996626 503315215 517095016 301490890 814666577 480085512 844139841 37445914 217296201 600150246 691163249 628258938 990931334 699351593 981243020 322544968 424771065 191759429 832574619 62794493 502903449 644166026 720325254 170845835 986849870 849533818 905931217 365270889 940459515 262456491 778110403 71276520 94807749 135306144 954044853 687220173 980847930 32540923 716367551 937464599 998331600 203370317 292620265 969868401 995666778 491881285 877899617 4757674 200079041 312982853 345364577 374946952 476666141 182319760 603076374 850810045 911989065 465308482 529633940 860743179 960977065 497463475 669261797 733864589 906529324 273417360 418801011 496882758 858026019 333544007 714544107 745430586 912355035 688565070 698505986 404810185 526913012 316609691 973469196 359998571 789327778 499950139 633951098 416003995 981056592 552937451 606003454 737807570 891939641 610152480 638666447 629717364 911681928 350845769 931967761 800243503 928737159 253123093 542330878 314944544 350503160 986310165 991676649 220181116 519564411 84006654 828398931 252997490 293310758 338330396 512846797 854300910 870337029 407215371 948569351 115770851 649044806 343241527 964024671 994187100 994194934 793353511 805622137 841689438 888132256 74652060 522969334 846963732 968376759 698093566 745395274 650647657 906456784 395036090 410900990 216623798 286978938 906060199 972359885 887388929 966149478 484255158 877811693 556912705 774354960 709212073 943267002 952423623 979446994 591926006 691140685 984903578 987855578 702598358 914189827 162303753 228505836 764431841 871427532 210523114 352999858 221728456 911397637 719968726 835203600 70549849 415866549 714589051 781723974 207238777 471897790 490155517 931448881 827638707 833136645 613397381 844741517 114202412 733279185 593479746 958342528 822175809 887747272 486282345 799950954 293798916 639699785 60885000 446405653 849551869 953281834 296274697 416477298 698778112 806098762 3075056 196250286 929389082 941734849 745299083 982180376 614248335 619427920 375013517 446916370 123208885 323151722 911341248 994450419 614812795 686509352 980843825 994961693 537177362 750182694 583186169 671629674 516272128 547125811 860404741 965423866 547214837 853512049 371893704 714431208 708274093 710554262 58887391 998432368 21739642 611491598 203896142 743580586 206742056 833446764 436386242 719625866 614028569 985081415 327466542 369943478 800246370 864781076 364253763 840053496 99143320 121845171 99385256 196024994 483060798 537139107 956516762 993698050 667271656 992708906 173567782 448279547 193798701 495072915 285255997 915026089 344126615 865622771 363929330 730841637 665266840 710402760 517608701 860990993 841320952 966144175 31385697 128212314 229530572 958665179 890113732 961702339 103780629 356909143 869378939 982990292 797872081 909013579 276693962 703483003 983730971 987777414 345835689 697841337 268338800 454164879 310709766 636612466 616241192 812712304 367063436 626589331 450935753 749097873 911670900 919068458 32349122 425936055 959271035 964313140 269392098 683398369 672497984 800554522 434292911 639390513 532574541 865939119 644622260 995709634 493257541 778745060 872614382 948839724 979503276 994993653 473249161 556865395 583672769 869822856 237986836 515809725 772530359 873065222 719892244 882182792 354908345 940747510 887680813 914458318 144885248 392396446 787078976 847780017 891250005 920014473 313538989 533664783 962131203 974388839 418637973 990422953 180856696 741760473 900389456 929176412 892903770 950937074 978372374 979994994 442461589 713987407 478290315 798935879 633909619 643894373 868891491 950484787 276517512 750648162 4880124 565640416 321504883 650077543 863795657 902056087 132628782 465599072 276355213 678657938 535088677 773474458 554493121 673360545 572211981 876499795 225861541 519674270 354177969 776342315 552976023 894400472 99488171 797201982 416354596 905699742 854303973 901354973 783840133 842181239 858304669 918565795 262562991 795805057 374682513 465778094 957397948 970657523 225023485 972217288 416370790 766640537 436467983 629075804 591265353 612217226 692980033 725587749 995347168 997581098 483306469 513084993 767163048 769261427 881879680 905819819 910323243 970349451 922855762 947619248 247132684 388548699 101045419 201690820 703616673 959311431 430461537 474035526 886747099 900788698 198464805 687289306 476452117 695413453 271228936 467812115 546121668 968442425 69019587 912757728 828096453 991630357 467702331 606810952 543304679 881848908 569258723 857708017 799403933 855594429 98018835 311927855 559823093 873135802 674677587 915648323 164327073 993815886 177362046 986698980 315008721 906586177 407161010 745370680 665032075 839142917 379481677 518373227 348348019 758030491 413552037 973357961 888217941 989486705 670514554 991920410 424311927 518094327 110041017 941827089 673846311 988938163 608752023 875743090 447285558 643934509 597057352 638195877 672468235 941999522 326817907 596674086 899982855 964106868 390191608 708798597 50195117 847004524 474048678 695097322 870057517 907296855 86592406 428169102 302845088 763285851 911483873 937387541 325927711 826696696 431230406 587974266 429692313 598075022 429340547 767079990 366213753 880843495 992799078 996454385 56843313 463205948 616181799 970494099 81004315 562487093 662556398 692534162 476536444 503844467 196890054 840098193 998238086 999473249 20036894 403276083 669796727 714698049 110001334 817357726 914848829 942253072 611031121 822255976 57439092 138367944 260975843 637379533 296273372 869051594 233484256 316119890 853931444 964491414 291786473 445521651 88463881 793306088 22992064 79359573 866894296 923023211 483859462 771260381 234708445 856371120 395751178 475144384 77087134 592862315 288309610 918700929 183334792 273191208 75571971 271769164 134610824 328089252 45719717 535186983 418944654 754249213 796122018 920324997 158742057 650750630 256991123 336322109 112970910 364827726 3159946 988655992 642373774 760470971 686819945 883316009 560111470 906402699 317571822 418863227 359660455 566347469 30980743 122876893 569037054 637455417 129236276 136719727 394766457 707306161 451867255 856864285 62156617 81163553 321053320 517533876 592271297 821817242 807866707 896874241 541302683 870032118 736997138 844350189 800105931 955497551 543431930 965604012 96151609 925810785 583329225 798639019 182828342 714813309 380654123 766132455 478706908 733163229 632544213 889230441 292128841 695429911 366491358 440382336 13319918 473312580 645141206 865185514 55908332 956995607 692058272 937611077 422380338 603411988 331074110 640067925 274645511 753056015 680941310 819304210 100671584 218431658 238088664 420786608 561348818 841056353 903250167 994450406 784979991 976363474 43034414 990526308 585185120 597622035 725840975 993750128 1257106 789309343 632837866 980468366 124449692 349024954 12180829 602635481 163584047 342958517 913912630 970662069 620602541 992469552 673604592 735893452 412089346 534214899 182707933 678303764 677213832 860898707 433631212 472417297 359563831 694834999 694679785 991969134 908539269 942493306 488966250 924993772 116686390 859955279 859703289 905341516 448312298 695792461 944185672 962390801 880725240 903258442 375762762 767791294 169807781 896831090 721736267 918529739 997667727 999959433 827517242 866383007 833129646 909925200 271450563 584414537 498737273 684473071 101703368 735878307 659579519 870564196 599276065 850047616 94156729 878541793 527032830 679447145 229351189 528348393 560480634 690445686 757780289 880803826 355222776 923044644 613879722 924548908 959877752 988134037 669160130 811518503 548068028 699558000 528382217 736683656 406751627 652232026 142671816 321214014 155484050 231216110 19346731 999743870 61006243 931207121 979680829 998174673 939586951 988226309 592865694 735195316 159383571 564732244 824269413 978038897 329151305 851177130 308742812 596449432 169032816 361792785 91887294 957282279 499886522 901816542 325017772 788579270 828184672 952354649 182847616 554862304 968236672 993475209 356193137 449294759 263280340 355511777 146415715 252454432 240101196 576650838 348974114 454535967 350946736 805974967 942445788 983696852 321796202 745065722 566060391 673370676 802563770 803319660 518150115 769810655 654862515 711641416 297123219 944987892 77608850 936697955 208100836 783648581 583362798 641727018 487005456 608545044 171117188 217553465 348972272 964365667 854625427 967692181 875036266 946680018 226135772 902169086 593374166 967926367 656791927 677986863 559966645 581210421 178216776 771646681 732191525 740413987 680963520 792684312 450005965 803801074 811756502 862317554 165235266 581248563 620193344 759933865 262534550 565312259 620437131 958263522 687817194 859137594 634261226 676035587 555488010 766051072 112053492 879967916 197216361 236413736 386491736 561304227 229199090 787279693 578461729 883844904 603103770 756366926 541328172 575941044 764653403 939924734 583787707 667899595 327450617 376562981 788973246 905086739 313017040 414011454 182557638 209596813 902682213 994701399 166851935 827899289 710513597 954636276 127237074 424316150 314806931 532322372 782582113 992309206 410426981 956963284 11875523 111092314 239371315 636215777 675554135 987769240 455115401 713186095 66325187 133003051 333016688 618629872 619643903 924541628 785401678 996740918 628049963 931178988 369091944 477342891 335578211 970566551 188478468 689397305 638638984 644860485 624174255 729873441 288585588 597509931 12047058 240075767 361867767 944166276 343459051 550568053 105472595 468018691 990167162 990960799 406108738 553778215 689250729 709409205 17193128 338301389 674428484 788541229 281598971 467835224 240328608 384043011 772815532 806983454 413657550 607987706 61871771 586014756 751665415 825925584 108867681 944725249 500438143 996137284 922762917 949748258 977267301 994565510 353689319 455403547 940641820 995504726 797868840 890652546 879620559 915787839 366052688 377594413 365314983 804885918 453594117 573659057 632190677 669361915 499452489 837280782 292919156 912629638 719032900 884075273 650068455 703887368 817184693 851288108 835397215 976636031 191443935 810135935 266962137 469800227 681235090 882217816 606472166 831096049 415795280 444032843 36734452 427040918 179733464 535374444 297346493 807724214 361350709 449938998 162416493 617554476 648653752 912428643 568569658 622691177 10731105 448655688 411026108 977086153 579649755 705550618 632739371 800272767 661687194 842966038 572783987 583835370 590086860 607433658 713595326 907818000 752818521 784961038 209328039 607232930 266025828 809709170 386203109 648191528 778138602 866610032 178688234 670116019 880407822 947478732 189829572 940051173 348889157 804599406 790580476 798094892 634889501 856155627 86721093 801783268 714782215 946436863 530868798 699749198 273795154 640778162 436005872 708320135 30141112 438478512 177730842 966400178 397224858 425133825 118051162 883898348 506742421 938272680 119484745 669876032 302337174 575528211 987336638 987921385 173258730 808273831 362921914 816137450 916654478 936603683 890204679 993931015 173609966 611915698 584435761 635331505 889707247 935857536 806774492 964952445 518696997 990726928 836645390 852481253 972335006 991963796 742282664 773641187 613026684 630065448 837964309 885120924 69119223 935183385 621342684 953882043 153545280 740531693 722442239 890058448 34626486 328710903 25224815 714694125 186592519 879396161 244127112 579952515 170525059 385319434 184188274 838656622 922257479 926660589 570685395 734481499 943761279 968391814 877302400 917337390 746912956 809935550 275848946 512319542 571594899 777279465 270143967 942397637 392354287 917390703 746069814 777863984 160991782 630237663 385431908 942127507 961446731 967213136 154092336 221463659 317049390 810502010 236700933 671990223 827560337 961018468 338883053 618108601 982969715 995756930 43997147 930240188 742126679 973654831 589747896 778707683 546090566 747324103 230804449 809899324 664890978 875158921 408507528 827442062 636214739 878293993 975197586 979563210 881442409 925850269 562448835 572826388 606139192 919193428 977011588 994818066 36143204 251561879 417925893 845340540 927508922 941773655 114376665 439269283 132499731 836652175 186434852 652778428 741816932 948414167 977940191 987437656 293190788 751606181 516866861 624718767 475260425 774688244 986350535 992947671 655537891 991405021 482879641 585520212 487904287 880057122 200056692 895262559 288901895 869020018 753589473 769059797 213546154 693323928 3063363 945123233 180699980 210056839 186959358 827274685 858163967 907565471 703684643 867621688 443974608 778049614 454205002 880638646 968089165 981581169 23866647 167055330 667822803 938188052 732411210 872118936 563153221 887298930 392198688 863640656 135051838 674214616 496186019 530287853 556064910 897426622 133336748 752165908 137989109 487710821 282983791 780104169 302652200 499479416 931684000 960274067 859192509 988755992 687821207 974227625 727715570 910635630 412622876 517546790 11475789 276817147 964782081 984070642 677456451 912070134 241454269 624422583 852020645 982023494 567837333 872181928 459388854 888858371 767100083 925436537 350352620 643479363 436325663 743588099 946209742 961764534 844148120 944914448 837622098 995162790 91412730 701458293 844538705 879098048 966957270 969779818 784291796 838449780 357772286 385636791 732989042 914097912 700160073 701303804 977713000 989024440 301663028 733118338 646482491 812668232 669356062 683507209 75988807 352604347 449921695 794294292 415426138 707294705 401093961 775108032 765196863 866329963 985701054 993707748 144695221 217221177 562719810 596256992 821698832 827103048 553989255 768783215 636826645 930321134 324251948 576915702 127584649 278753497 951428403 972877072 337687382 623750306 932021649 960165060 82952612 200267844 687461961 782861268 421473632 970906314 320017040 862023839 805684836 846451768 913314787 938911529 460081395 793780597 376595188 400461902 565184517 938579663 233334411 778232610 447238305 837923302 498969374 560642854 194670083 641798541 578217543 852248109 753111895 903907695 32657078 509481867 209575288 434278381 346868583 392211611 766956447 796206131 860177496 875707715 246721948 525959284 17058014 585580426 647248407 887034398 323150833 929492811 589068806 688715305 402055049 567160377 81844735 316959022 354857993 814311791 524973387 695137358 643553630 677272045 826505953 886583612 125705259 822473066 505577047 942264663 308175001 971631893 917098992 919860516 896104120 980633960 707787831 974091751 49854407 409100750 914801425 975753620 901118174 915262570 26466669 805198177 25188038 155990590 844890495 976955654 865072015 992035955 820873723 931627676 127816434 585996509 497754728 850821580 608525619 722913545 618512726 725017414 474588084 575276567 215927206 346239078 81829563 899310382 183399459 803825025 614696795 975127360 433012563 812893114 561636963 799095876 932319818 997791512 600214175 873908400 570467501 918034448 139279405 561263729 282408011 716291718 361791934 661961208 817085593 925068795 237874100 886049029 57401882 495706388 671499329 706281672 854055361 993721069 764552388 846086213 332964995 991424003 133231129 492677034 77558846 503105914 688572048 821579178 444237765 944793291 228429258 910700076 655278129 901292337 933666685 985815813 415458811 555316382 50019151 102831092 187666794 321232971 303893674 626609942 975823706 978308690 365658918 650136597 564014022 579661126 370879265 478265435 558499845 646548710 330803607 645023052 463028890 931528301 433049492 985368332 727427787 789039910 381050812 593177953 247397469 783394208 289643039 934736804 433025414 796752101 811820544 850748787 789007381 962660822 206078350 289427896 911694687 997112164 427468969 878437547 34580294 787597322 647659614 720034278 483881532 639421320 221125548 829170897 185008827 342492379 850121774 897556189 180712775 720401360 85707699 833872451 752996527 929192635 150932842 296487330 588803367 942206597 933482359 995132688 69469313 826467061 268006190 659613138 349826697 378289363 628398591 862165149 604145701 800632416 64079439 183644717 782745741 946287958 689054541 699644307 871072422 997805162 593701237 878411416 28467070 327606765 431598968 580764162 517860394 724653419 102048051 567179865 688302593 938635476 667767184 814098178 432352373 679318870 161660022 734264268 129530915 251946075 635669821 925780397 980011198 982278481 720462812 810561840 627950635 850282603 478492004 527768359 757768851 859525885 310153811 813273711 551202394 607086408 640357485 960682719 154998222 169983674 737351109 826985166 529939070 742647524 640850186 993580979 122298658 433880157 208224401 847898754 745667692 795454038 126092132 323081817 10808784 435524953 160330780 194039735 5135379 7049287 71521471 446100507 548052818 883526421 395321226 731576769 429388932 653702920 119307186 166970487 245229164 911057067 861633101 896152005 198247487 800700165 76156191 732008233 712385301 737586080 146081046 675890635 815989032 876495178 688825535 884284647 670965533 826862089 38893574 883237602 136922214 994796786 583321515 655162338 953869172 969336073 481009356 564094969 577367860 810519902 323961404 993795275 861127828 982748030 551442741 986814996 601618434 602307624 175624887 405724913 966647957 991363516 878282679 887124751 397541679 830582676 470620506 915885842 155752397 794453572 301854998 323499229 19946458 740548725 435737214 480351461 604226998 863888599 280142031 378248038 465314776 989000703 695222751 793505463 589332633 917680126 654883667 899020957 672114421 760268492 572391679 922570008 391157247 956083376 605701527 704735249 133696955 313947889 33467867 508673597 888800758 940506894 227385297 730195451 946915279 952048981 420199609 438346191 329943401 433335613 974677192 986141924 696605668 753682967 260449540 381670703 26837907 779119466 908329233 922824271 488835231 850602849 342710896 867182907 631292999 952735370 290177196 438647455 878911368 959628054 350481072 633274482 642741821 816304559 711788935 828190075 805024479 834859595 896026534 965011221 923112605 966880586 223767665 552023107 369668971 552689608 260556263 737217287 100978355 272296141 429688087 773656350 612410864 853385019 700861718 999645948 9065260 876423681 352435729 376732374 357778137 956350220 998202410 999005763 436268100 676827177 689351857 843035109 289044587 299078568 900788539 934893004 203014976 525860369 548294830 637657166 684238644 719027427 589032278 732123512 736183519 736292145 236699523 783957697 286870214 549356524 889849927 900341141 581447757 629771119 851949990 981484019 488219639 717019330 793823798 804867807 647583272 947265479 691432913 907943176 57206994 173414892 416790421 979358553 374352119 735042560 149271875 815411921 114455602 342892150 91071068 810694417 29539713 878717360 803829990 910815485 380740275 994620086 80273586 807384750 188653531 253837344 751974629 914060095 128229768 783558230 764873533 817695462 915361035 923816453 483006794 536137548 469039833 769887057 473243582 961155901 494437333 859317671 532594027 902748507 697617533 982827920 466149562 673832571 72832275 232522260 549010174 601343643 179293895 794807733 958916337 984260190 69882567 969614381 565692008 590283074 30189930 232208719 167769581 457345289 913576876 944224759 918262520 985186561 14109669 504305821 222386162 453503373 664090306 782730495 733568283 793067162 891001022 919313419 992426132 998165388 5469661 899253706 303503792 631318575 938898722 958791018 697136170 843068143 748090790 992910791 75246089 642948705 493921847 877090121 416292034 957709860 999325772 999795334 571549513 692259942 424626268 532738872 183397941 489492623 765698904 801645662 47268772 760108300 729309102 930546207 861012418 909308561 634309914 816657752 158870623 215208591 767362732 979907382 832057910 930164103 660446981 846167232 120541108 719564062 773742620 788123503 848956171 916312881 986730772 990535689 167230277 892582838 793843845 906032454 56926242 668747798 348612525 849893103 379814728 736499962 967623009 996408191 939020789 985234880 282005548 972386373 86322188 482103538 716154217 879621906 237038828 583093039 189760822 618485957 784605059 918271725 301510558 786914462 133562963 367501967 709487721 955056479 690133610 967878075 496140166 893444539 139313312 920787147 995493019 998203269 179372020 404754555 291272934 620083792 741728949 879314992 437178144 801202008 21745214 532422505 35490383 505887471 366795390 404267554 666976639 785008191 400636893 871203116 249205369 476626820 198527479 939100241 571128497 745076703 325451102 631086646 563590298 912884586 52279741 683348852 811988557 840921175 650255321 722602227 40390759 476273527 372686973 380462609 694314461 717116829 223880894 394471975 362962166 893558328 346696833 720884853 990946827 996875411 860641441 906467425 372835504 593160293 61219325 378826506 551714523 745770787 706452841 810752486 431726655 521487050 663409707 709391709 148155878 960612535 849236995 951362491 219352756 755511762 504097767 955545060 241058490 684228746 80321735 743173299 778802408 844499501 103435275 138812849 641998505 809369611 533996076 797719344 1916408 142253248 356830763 787160402 995090417 997570692 422958400 612505247 751927521 828309956 506632290 519388594 702371865 704731258 705363635 751495668 235290072 444229266 907294858 927421820 603724766 800127174 506126926 765300509 764445855 866645806 806334641 912936795 496364619 650556959 68172533 99607483 664321792 956383772 810902042 847036835 782386045 798860869 730976786 836255001 389497653 943928845 963161033 968834200 849836779 870647191 671377364 874811684 711437423 879624868 166475906 849100296 464045798 847084266 595566566 832033689 579654345 630932569 265319015 306351569 203409331 887262406 147964363 184172154 686027672 765345979 856975935 951822068 218331580 219359905 427374201 817252488 851451838 895337738 494240608 642932033 288622540 816065377 975784815 993523963 960337635 975634606 721209906 887082956 553091965 889383068 983785716 991922634 715896719 720800527 925943170 948410929 480027192 485838057 934594850 956182957 227552906 734942428 618587573 879685482 603856303 728822377 408212563 506419175 836086008 976544959 215483188 473867206 373296468 744549616 624222875 849083091 404630667 589854075 938237316 976727636 606305226 721738688 818620399 883670091 715104394 856685002 846211589 924027207 153228472 375884593 148623526 645807882 755017102 894476077 888780712 981608204 431864845 569007309 657754853 786390310 269009439 747214339 528380975 846473964 708312684 727144558 446238108 772330679 22565383 244340758 750477740 956407635 527160646 783021216 998915540 999163219 582430069 613755483 174010950 286514593 278712974 317785060 683164663 906751677 756232437 791044876 505568241 704734853 994425655 996505478 880998672 979359257 962496267 964997728 586873029 692027436 869552578 895746028 449193777 651786731 970930951 998687427 333765539 700152486 458376737 984207685 126401654 127157955 520770133 556020302 348883137 999928553 407781331 534391583 652019133 996468056 95374942 889531081 654983997 905703019 932800192 985536148 460510987 614042086 293864418 508185661 718804695 958335991 113638475 566057027 813653643 850005525 883410759 921754502 297734618 456504580 679597386 994089304 198630386 320990591 650595060 998055180 753356748 839418256 230568222 373916519 172376582 393696530 441119521 642139529 880860823 890060487 665572679 688803339 860143924 894024918 440962601 974467477 104004116 682245769 310845372 428460288 39745123 114393518 500968409 664069445 901286192 964007630 297703665 763039549 740411131 874540890 137105381 823516400 983076154 999942105 828345350 874811064 699471628 979240260 248604476 290117770 174165789 725487693 743762057 964651727 990190025 996799568 169988356 676083418 959453147 991772013 222922946 961459541 130107933 245073351 498936386 762662357 425056606 446193422 447767484 661489985 105267664 995350228 794969955 911918068 484908762 543506086 761121705 841397824 776112080 888865850 592553782 746414097 320592629 790784674 997512261 998482817 234991624 388116935 782416139 811509729 81845460 989851986 502615798 780247907 401799239 697956996 580968855 968276363 879487632 985809849 649187552 683280815 628529405 638704775 832394385 995854471 733550949 773083368 658886981 686648720 76390629 878606786 10868634 493557864 913877462 946687445 455932783 690408649 469064713 739167075 801762082 971856590 257266125 499221371 417418205 744878432 952897067 955744854 638765825 896629053 331696725 510575276 939001258 948922524 50039642 888815017 185662954 232992548 29191665 923226299 595420535 991533418 511246142 667887126 667365031 887519155 271534359 979812909 697550451 707495561 95434751 852733426 673028762 946698027 513917719 765403481 211882117 507911440 897165941 940855366 618776207 787518527 438763597 596126709 560810171 576181105 933486056 998661023 295497844 385176541 951391652 954445395 893887015 987287190 969918551 994146769 852813805 894207825 193964469 542137374 667429466 862347619 541790366 561277519 424737716 516310988 668705137 997863398 164761615 311023420 837352402 886771124 114168722 278874063 833244721 928568456 501094093 746177467 408735577 412881351 22086819 997978050 829471626 925605221 105049673 444603372 417322002 588473195 480683350 596159480 410311702 659848803 955892747 961851934 528469387 847042272 887343480 965092937 676296188 813032155 30499986 769850462 226793272 790852220 409800875 697241401 141874680 528499369 353803367 357828251 633699542 680844171 115684881 694463770 420043098 492067433 18105901 357809634 382153804 888087560 407954333 581343833 185364034 574191938 453789402 705965347 631824255 652987894 704274912 875979481 109708262 514924817 996518702 996731253 161849639 212566232 401633908 583481958 353577183 714791783 881465998 957055717 139067231 336342119 684228224 860177025 458689038 657184740 604891844 848563588 798093918 840989197 806616514 979430828 727218011 737725425 402039549 610906930 18270000 80403729 833762265 868111423 470472995 756060309 872673127 924166037 256110429 711438252 989977417 991327870 569884564 599210561 950910643 981720879 340116821 374174523 645323198 857179946 440078849 725909621 845824371 903852899 264221637 813679082 799506476 969398559 216893293 288842128 594974314 730576457 432544318 843240756 201712641 732356526 476745034 603582869 465984758 478658426 416344842 862591030 548798330 859269912 476388910 995373679 375048572 772013104 226832921 385225838 647841522 934403452 451228242 647901267 16160549 35548694 654680953 722701897 583372844 970116880 989855318 997298370 42000527 258621156 534096986 694988240 40791711 852334854 31092858 122544672 334762732 732770511 129921456 852020548 787217667 842355242 40824262 615856436 221348244 760122557 120271475 605804012 849940850 914872917 231317371 524686476 210154212 299763519 234115795 262546886 11208020 56243180 899143684 947968335 272795516 427479083 703921299 878143987 32971314 701053354 299780169 926272897 180174605 385141726 619652511 958370458 192561776 893944151 222712396 571923097 45031508 743719450 625065457 861606287 789832388 934471069 419754172 751260059 322396330 862951222 942245357 975063944 744883498 770499897 893703470 894167508 134113109 640181820 990137979 992418436 527049960 774649490 362334291 837654991 953767625 990726575 133171020 977834021 254192710 911429791 770722315 904782254 722642175 814354349 137541011 793609214 837285368 951085754 239300816 266097523 98412551 945705344 403728199 739206066 355669119 859534837 80415390 332896706 750221316 991073336 31916011 315330908 735955521 959080890 562811133 793604136 474835212 554516347 111360486 620282544 463969127 986990532 877240041 950811399 53810179 961904198 674390229 987634804 262703739 548443119 378205404 520454997 51469584 456985265 639130848 929794293 769940595 930896679 774829641 991688786 887162581 922756254 160080259 790416396 840452423 959359837 864146061 912561943 572554017 579481819 491436411 861057172 88560420 187945138 84908431 361107199 514592005 841767530 859162002 914085102 69734079 329024326 619483510 658063517 686979760 895292944 392680956 960832740 367929421 973015527 94060398 562136434 933872712 979517813 440984759 753357128 850314350 984396879 415796673 755319658 213905427 630859841 551137851 886548112 364463508 961747133 708626428 930690577 772901018 919633978 28934027 458938511 323133774 699807569 511816703 525608357 874792860 948385093 8243949 263657612 314079617 571558080 656755442 820860552 824729077 835921296 861366253 900091819 751165099 840913303 258502797 433179773 210868869 894676933 464316351 904742454 558448055 853177256 308013270 882094599 93543535 777142377 820957380 830017935 101742563 552811432 712620954 957880465 710439690 767220075 855247113 906105415 450256052 652204371 161062899 812622289 152305715 453173221 665167282 747641244 965330500 970704008 717650478 810261121 200805221 292732876 289788265 768366855 365232493 748697969 566699377 792999518 54126684 314239243 539885841 694486896 541566220 643655154 116088217 192430875 460688933 568742488 324936003 413718006 385837438 612144478 474850164 812072140 608949495 708838103 397054785 609334271 935958151 984991680 743178984 846060078 911517314 972466989 158663902 483996899 687857052 710955145 607747413 866128992 690032247 922688002 621363464 817701718 343542371 493960550 336758766 986651324 797532187 821023448 261495994 726285620 830479168 956286964 249777642 796213971 790052395 911182009 22322814 895528326 811933441 928926443 987922447 999757613 976631286 976952418 891150136 994098474 452300858 943722583 505181803 558193689 501730611 573617345 170399081 898801378 681803592 837072422 107571352 262165543 409155535 968621928 181391220 935701392 574424606 871979718 564150398 910562792 403816366 758276417 450074213 597084048 680152776 794580549 319148532 735320669 615129322 726830858 308802983 741325643 553186259 837175667 480380622 492439019 171740688 720435792 554567542 590160161 302782375 675989111 718186751 962703287 331349874 616832071 977603844 978547977 264449029 353865055 488296422 607586922 995033505 997483346 177656949 291087991 270336153 491784528 319866548 764322451 910059276 981044180 332829538 959807258 958150533 981513378 526941253 750384418 712090895 986472410 341494881 402305638 581787318 633138020 305408243 489009914 27277975 639235018 97414730 251050137 579105736 903576302 206027115 969135108 131930044 141902413 790456960 794842810 749373627 773398394 712725844 732354755 968861112 972999838 611348923 826672768 645648605 939537998 788692024 879391238 250131857 790537041 376322419 440307768 610009477 701211460 50594707 413438107 716690672 872423688 428948416 559326367 88376710 561396312 86968604 333551600 721812165 725682694 883092236 967661719 442746282 669644268 147319192 277813364 109370035 922066820 147906073 612254503 440201242 510012173 647380843 936582271 522933158 666122884 473607946 581667650 410751229 804877358 967970928 977934745 778920120 864929795 521110495 782528384 810432849 897017576 172039175 671241424 757489516 805999412 757742384 940571629 995904197 997013298 298533681 972254060 626764353 919496722 675778977 932380819 248251479 255504471 48026039 135073046 350345131 423317369 812638675 841125676 900405626 903226818 42361027 876954967 775842830 941195241 421071977 771659223 506356622 976920271 726300622 851353939 927123460 945943685 602327678 807356238 750394320 907538916 423624354 685754878 51892462 461125393 75559437 332571101 556189212 959919147 154890342 259347814 837778260 868814316 134695979 680810240 816466049 959525201 465706022 845347091 808404017 954101310 108157124 748175455 157893964 632466343 828497325 978540781 498015358 538624661 895657517 973013721 539631731 828181839 607699908 890096121 844286603 993753467 405068334 619341913 766233524 824672430 873873991 934152939 817822358 983295857 153846455 638457473 590693264 836982276 673884700 722693573 139056642 411353543 229893935 367364355 325246611 954782819 556745068 626149425 15566200 812885613 973569103 991604383 753657961 974549041 596003518 981087711 753893177 987927797 989140254 998699262 51975974 539541308 652880989 785262863 347415330 961291215 222516286 757449588 239469158 310904536 141820826 462912154 316162944 571409516 71355468 481651692 859441801 941093169 2094790 473753544 725012427 757448485 583875045 775475220 622609897 860068666 827884150 927060879 701954064 847647792 481552484 864980810 387641233 653904378 404585873 883214692 844369728 912061389 82383064 327867742 387713281 648346618 967495676 974030537 251217313 392571699 944706598 970033775 173412737 196987952 832337075 935233292 845281695 954127862 83953351 143759713 48840243 792947105 912317267 957130711 432646176 626745524 107047579 583116685 251282627 864409533 129771869 870580908 189502995 460193702 430822222 490188615 345164094 643458010 151040626 670382001 20365584 852830038 849012531 858924162 969827393 999291032 188118308 873487579 587211646 637816352 509283625 851643377 506319919 548371260 56580535 721787377 334551646 701443568 663036542 764077582 305014346 349787657 144737065 802515468 140361131 497045895 789892586 973901155 688546784 960861102 45693137 963006331 176645261 537019910 40601704 624181691 861122627 862433194 278721918 343344272 794112612 959555609 501448433 661898244 931316639 950273404 458643055 741941664 474165658 879393041 487768541 494714938 462320900 741179324 185771797 386513722 165167664 889095644 352429444 658602580 356524464 634346660 770897217 964215859 37436845 291827648 817804409 981342065 451399694 987933174 821164254 898520091 665636775 977600430 717334931 831497824 959758850 965759232 899485968 913488017 968747911 973433836 463724767 507569791 889712446 937489724 413061418 797785082 634795697 663680557 317186594 508616438 543329234 993536275 518918300 720616555 277040833 492863592 20594576 393913944 784349583 800664854 891381741 976978770 853863308 868248466 186385015 715110990 140027875 935117902 316336696 616874382 749923713 755323787 542157198 948057818 120485634 148615951 713592251 759654079 277932642 582916353 707654688 988719053 398332263 517602855 999404695 999727418 299490823 880650229 44325939 714270066 503289102 601198758 609965481 921469169 266341533 893936418 720119761 911074157 404780450 735097725 808546435 997137390 64615031 911712585 582842567 711231206 643578843 784948046 143209663 273990922 426662144 626119273 761170405 784773716 374745843 378630445 112480039 970152946 259227652 269273199 10411238 833807562 562978872 631335805 287316742 520659995 362210338 549032582 803409016 938067077 291949759 441495765 796363676 840700339 812622551 956741156 878114248 992187329 587718245 952091900 789429554 924996668 800486006 950275164 2849204 551383430 765337249 973598022 179432105 665406388 144022549 762855472 895450187 915658167 21503355 362446823 61440718 399288770 711256112 898035260 301147650 670121084 675448761 679878009 16076716 168270315 247584767 670474263 150955163 277022214 879222271 900009642 876911647 942148902 18154731 401194247 508532211 581139406 56994396 399518927 7034916 506092471 594065570 995987249 153716259 619092516 781505753 868990451 460640896 532572669 148168350 895729757 96146258 523426291 815469795 947842923 213860043 796255098 479936704 530060849 582242116 958977064 859480797 860811524 212844778 241032239 907663395 925099161 852541011 931341541 961742622 973297571 594099653 763981230 999606026 999619291 844319840 880440792 357460664 858320922 624626318 831617208 444723171 934948659 744552205 852532755 449718088 759208580 73836951 548929608 327498411 368539912 905663454 964089308 648816024 791212794 949393430 955540015 708348341 780453458 644570250 712296981 959341558 964685104 675997745 992404812 276745396 620556221 422439600 997898804 7269862 730967103 92905706 833608595 408311846 950755430 780246124 855441547 642064001 980952312 828225295 860229029 925728937 976030774 696640834 789621618 240841194 977019281 790530508 899635717 964889663 983587671 405411545 493589879 30190907 621489869 216668546 438558390 266191369 349259463 121784180 494736975 15335620 125944469 550336633 573343951 971268647 983244702 367552954 715806989 984349657 991619344 633083250 957789692 732638803 969216813 69018336 238124196 960788 591536722 207114283 485737980 570092345 868702088 963907853 964232779 658756399 990943583 403095729 607898622 943364836 950969032 135202380 642956375 902720036 951243971 677103514 763218965 232080014 988928966 917918201 963572956 392892227 825652627 57310983 639403477 903657310 959941774 725940496 732844897 442681918 516134997 283200383 609358348 948143094 966653978 722305771 733172748 482023033 986957477 443760576 443969868 891711444 948190125 530520434 776281772 123667738 817286581 14698284 874708089 764492030 859884158 602076021 840748897 581587728 789673944 293191851 587778292 611709924 815243667 614224507 787728388 530222595 588422578 80153772 820192063 64422848 412622837 819476730 965879234 636200815 810459776 114937833 852449063 696104102 895199291 735375747 926116538 752586405 912945898 783932024 835331635 277830117 789999502 288082024 901506454 239364031 287456096 282481559 461125543 844644424 977134349 963649043 981373272 603799156 844903769 623700268 822247234 995943937 999583702 646878349 694413524 837913619 876796565 30123571 659036691 978912536 993018647 881966219 903646879 512670079 568207326 7038885 201347068 937484923 980176044 811004405 870763793 631795877 679360684 275906358 646909092 753636892 764382955 663626209 812387762 182086194 475437570 684958881 692387571 505136711 960148520 147659138 553301618 47632678 94979111 539347743 983330816 780758300 916866558 862438990 911365785 201501528 993663908 478091756 694969634 632606444 880428505 564818395 973175899 180536604 763346814 320734484 831929514 418874455 447599435 658514479 877603572 757129198 935711188 49398023 82659203 837727850 875835480 440187220 732591574 965945947 971810168 947597210 993268574 531860975 551367862 756448890 977109872 413469372 863772760 472752301 546265305 193062999 230022681 713661153 937256939 814314554 914506394 828655468 897624586 76046312 998561404 709035439 747440764 928163786 941446460 975570944 988572803 74867399 316952528 790668561 909313192 455548167 503750348 116090699 783234386 879282437 932142999 275476384 535482131 640777411 709038121 140064006 438205729 241664295 995653219 581442954 644832309 907554288 934887529 629142528 765700317 360774016 560007687 676618650 872567157 806879628 977399381 257787632 892861410 741813210 835127899 501921613 521370773 720919322 971478290 993466254 995028284 435958435 817314004 580939825 689755461 20019483 798315713 945583739 953134819 57723712 831235453 359248142 632379020 119459853 126639941 670424629 759257670 108415251 989643488 898281790 911186297 241831487 973429721 826616685 961597682 899571353 939217956 439763667 599963618 858549361 940246261 534116329 900871397 871047937 908543549 475236791 911444537 732667002 879544840 255257001 818696599 920319991 972389036 712744854 915085488 758214206 879671396 964998328 998246588 795872283 810133790 818962752 896434151 715367842 931481016 164705493 560038172 705570449 727483137 828430554 948813186 108571654 299319901 699341303 852827025 647664692 951131442 942540175 994489504 152867016 291682697 308682610 586035139 977296917 997403186 667944382 782319261 725058516 840598817 146102258 977159881 156600670 853795589 157591568 782069791 842441686 928678541 386656405 931261899 512032708 854399291 398285360 972411035 511369181 883584101 859857255 913065726 132660372 411663448 755129594 938910870 765088029 987183251 524179491 782899953 892661218 933976389 173253860 433758854 272986078 383305967 973189014 998364533 315426378 999832925 506997205 758474429 849650579 943559639 514458072 677047348 742896794 911914556 282727853 901016729 664328998 986048942 924186581 970223560 963600892 980813071 720406885 982087808 577349088 768172117 504826777 765024484 218731503 756542450 505513526 994154253 530071599 620630551 116944835 802816276 697345015 902453803 497272961 774667301 531149957 987711621 598700863 680577944 961456031 998784886 484905885 530870527 619288817 853170649 679844862 814067866 356039080 502229716 539105449 690534037 121801275 337601509 322846079 786690438 369409010 611735657 337875595 822666992 556627965 934096974 188241013 720678871 537559708 888930899 749247994 946224905 450818824 848635335 135855004 772137389 682721548 716806689 381740600 860133705 929426658 968506810 238942309 940606440 137659787 999466777 577562000 771391813 559237607 927886089 859995053 916088550 852040280 982374901 286087173 989834181 478787953 492850980 647487487 976899932 508950180 797762563 812474726 865791297 302724683 484567481 806705857 854315002 34114771 996687355 880797959 962528373 574708702 763159470 608532366 684706438 65563605 593969174 787679714 898792924 448411464 480394451 860809508 990447819 332791366 702516238 105183735 285398861 82600469 205142178 234724134 850949007 551828770 725272102 900698272 942777279 681169616 867545660 367229208 700110985 590045561 619454334 254694493 484361471 955985394 966823829 384947014 775148546 436175887 683627397 374961211 510627573 229836413 767535910 268885697 970111154 545244889 557403669 200761299 677703127 551441750 824918858 166463755 500442847 107913895 536491792 682480504 743723930 575669900 618488045 995525499 995868399 567523653 988376508 519445509 984914707 845502661 984720194 963432097 987199941 226879881 382332805 570885341 590513607 104473071 431862417 972784161 994406040 670655061 714802654 361344528 848886521 961665816 975096909 32688113 189498632 367225232 767865669 112161651 242371085 40522405 417017836 133613387 433471921 85775450 913023224 954693729 990048001 489006312 575792151 539354681 934192713 267829796 388306266 491038236 613691592 166868537 189502227 458111843 736480500 270142866 338224960 479168403 772783660 846410135 953741708 171613044 475297541 728694214 746585517 960545246 996588718 974484574 994062015 474527733 692086556 66513882 279733822 584460903 643287808 245582126 275563396 173275469 902750281 580916624 764406995 778905008 921374819 547217981 953968987 383945754 632309806 67561493 113169450 978894668 992327407 738298373 855856854 882310507 988498490 35262133 873645864 259861438 532554991 182128782 395862367 866850809 996932762 638305288 739981822 480222148 638804782 913829152 937233624 581527645 967545075 724550493 819377344 333143747 723895281 523585393 569429634 210660172 465839733 969349857 971064946 940074544 997757025 829502918 954013122 536721984 861401596 40133209 516814699 546843702 582666520 186886999 812560298 850033346 857951765 99878423 205699177 749831580 856808043 600354380 765086850 945423128 968552584 87375248 713445306 216133596 612753791 327117923 369960921 119977170 381780907 340386117 678336634 111410471 519770100 219238028 647919549 869297811 917410226 593951925 917650284 684106953 953400529 524102512 690945083 34061927 807853531 461877840 510530373 114749227 996288371 559593682 629667036 160131097 836021069 496398203 585974265 126833891 373380025 668246708 886070447 402340828 494350041 332254145 497876478 19769236 88165211 406509375 690909778 493287231 495492670 434287674 555599794 2879080 580681705 116695005 650880504 784280309 879564910 693905044 720411433 943003135 998127932 203146862 504841484 111600994 818792778 281810620 520010105 943158274 993314317 325638160 922552255 523672929 844285669 477617900 705125111 581514696 902467274 430753888 560115799 532327754 677530684 667389531 889569535 633363183 802694464 776496635 781439801 880042917 919950844 527939057 582042731 389100771 595783792 354052114 389451086 257953936 600549136 62655123 255602298 623601156 781882138 234078921 816794887 833460830 864889048 104807292 815128738 587418594 683518478 322963474 497293810 855374021 882468329 923230426 933423844 238057436 643713699 994845511 997424469 227859522 907352944 863395593 923592587 199929323 849083226 579165457 643815934 244271344 694162419 257088763 652542966 593653051 842408742 490126295 614639379 909663997 949879361 878120543 932987281 787236313 924044753 177854085 221222596 409004411 836158633 734994178 844584800 807921306 992906529 521917758 765151853 860101464 868384801 393821116 481899467 602581155 715917034 382329229 457055257 914888675 945992322 620085358 646059258 653402872 718468914 411061375 819352097 133510081 346455421 970537634 994720120 252097107 903887183 895888123 975948250 16914394 650657853 541179886 912009909 512475587 826378546 416729817 560696525 693449354 813640786 177091935 611897968 840020724 948991143 469048745 806801931 340986071 922527506 94773921 340618036 512045234 538754584 202953127 993071904 295390319 540900831 250871445 891709549 975791430 979352504 812299656 913809026 454480137 822346056 920775815 995042800 116906175 719345865 173219850 970542465 262337302 795904414 265987768 568377376 135598898 794285706 492191970 893650664 237916850 842484403 11875568 993583951 429568082 429715155 477646511 860749675 456896602 543111481 607645700 726842280 398355750 874331106 929523413 991601869 543166454 709097312 476529805 556379055 219971929 609205910 957401744 991823383 667984985 913300504 418612708 867040424 905862024 969861079 261318955 268825075 31564379 129777496 191676922 601605707 853197610 883087999 760982319 916521683 619465586 766507147 906150013 982591652 842990403 950905332 37024893 821539276 341633721 496181698 295370439 818534673 164925253 252727304 777135103 790568050 655408293 956578559 262978053 776853750 50750104 466617780 791034184 854544242 480513820 600411314 832030352 992008014 915634344 951233143 341990723 728001532 442147533 625992282 410412709 502863654 272452422 338027993 642294188 869552509 558721186 720545632 883650679 924399955 262242656 341363457 152217820 356282731 184554973 556900859 987228005 992422791 915577057 951950357 609191551 614823665 766795423 923441917 210334588 888021865 935100717 991770229 679095371 696500691 277715455 550391057 559162994 956259806 267525427 993567358 844697128 920340962 338242579 716748768 393126890 881161774 936704422 968895507 117838910 481665593 828761471 904002199 233221427 389888639 212452082 226089008 263928225 364175885 912346251 982908740 854453603 890220367 776255881 821403077 47080675 451119456 41618756 323112009 533816539 982414792 476769570 508921081 874444830 991798285 153260349 379929466 459407061 702333606 256305098 622275639 16803657 527898091 304266170 895398365 362033850 552402629 801903784 946149760 621704967 770252609 300126185 788850261 617356484 932738380 967997284 994365715 233671657 799805054 243392045 597959824 207992863 630610952 599361670 715429775 924138626 937010611 362228328 966739193 57112425 632406223 433913099 573185966 840999715 873612642 655351828 713368869 435956641 595875199 590389994 975867124 592718322 603825485 819481378 942291584 517427358 939757910 305915901 825813586 596850542 799744741 921719193 973039285 148187616 302154767 382470400 643187233 799099134 990575496 385222326 448834894 840094535 871292174 593736801 644152801 620331004 820725512 524360081 657885804 181600841 756610556 642600742 987141567 261499431 958444779 197189377 744167423 113446429 643755311 805158077 808673490 206230205 708156802 165860371 757217154 551394688 713019361 960585263 977832831 684041184 781623425 362939972 647580764 559943133 681520164 654653512 694572825 194361982 460338967 691669684 921892978 812872661 869375382 424272979 521790806 811904043 893529022 439747391 565095846 96097847 700894851 922933412 967778926 182357247 468477398 190906454 365282359 612966219 789537007 710998447 864672170 385942823 792538492 858592646 914954547 129462587 877867636 896665337 904629128 37020553 723987813 565169494 959274542 700988885 771859795 631149093 661254522 319214985 914105953 832817461 919774363 755495483 949964725 795240992 957263126 131005307 931360615 686992632 981128809 604834795 880494016 528020428 975004644 918888367 952015835 146852076 210683218 337988261 410196690 636932017 735377236 757849484 768911319 118395363 474434167 405134028 907243661 148816803 928683313 532235030 706578296 272956892 846447639 925763945 961958931 645379104 660425025 763352169 874874526 640011763 941331530 413199360 988101980 129415221 977546134 906056766 965088249 635077848 764714269 859448139 952874585 810275705 975854366 160463989 766688986 35750889 51558213 657466209 739034753 916061317 940703276 47060986 755506557 675481604 922076497 835188174 935656860 57472390 347468862 178942258 931142416 426263616 703477655 347400200 369703100 237387124 770763389 324494279 777639134 531392437 544253139 266525102 695739170 959356040 962109924 178845036 355635929 624602243 743339941 510071013 816017104 699240034 850125751 633984890 914554598 402994166 635146975 637267423 839357511 872232080 904518020 350718492 665686135 566265634 579335265 280241430 323757839 950123440 974938209 817075982 931143999 14068854 959385434 756207257 929930568 254458692 883299738 900643920 932123768 428597429 959078114 884305539 921117198 102836082 766086173 656355985 916729662 98318718 448378070 209184728 894654187 817907078 836333758 28520248 826559331 319224975 568560686 898387940 919066353 23228307 952543482 126523582 478649072 740759386 847053777 381110796 796726165 871369201 981839950 69620862 775448721 627542984 713530233 480049295 887611023 117761587 770429243 763740456 836886170 555478853 596643701 592846834 944319906 823200630 890832775 823020762 880810907 83228917 273364429 961962770 965018419 178592618 909587284 803461971 814835254 667177032 876302261 2632655 895787055 67554940 117675460 862470315 998043753 117913440 396015961 722264920 733116806 907801895 913308123 112967713 355990446 346557067 800008810 153252217 645791189 481865937 569760894 636435344 997777581 229486654 936667776 489935063 758312826 511164148 800478399 564185335 639688321 836409994 913377326 591295947 794926333 218612204 809701909 215921336 591880219 74772150 461257252 221420013 465508172 380184274 627638580 598129097 935227381 405184652 586540366 453199099 691881532 471186289 844404268 702720514 930410230 99544165 447886772 408837395 655054350 534849382 610937026 161756701 636498742 305353049 633808374 634926511 903165450 999419093 999945273 80405066 328210877 756814926 759717873 436150004 604617926 199798186 936031402 187191652 832772452 428983420 769734338 42630767 534441741 547015645 869908654 181682649 761326742 880431343 915737548 360726851 453391515 275030241 528519187 616929503 842480668 623724827 815805724 764857831 994014828 386107097 434284540 851894034 998117512 828207545 860082577 490876574 686446257 783190282 847827850 749864953 802119728 598715870 608432478 30874990 483380989 285605620 380301997 234236237 829595502 751812037 981190875 172386351 787553735 270640993 930802791 831057431 932825025 858947882 941381701 311007286 683398326 236791963 657455859 793986599 960247106 151530510 273529239 542094320 891379490 18484816 886975321 339092914 370387044 953193930 968924929 492377557 984715620 701002660 708805316 460921631 492821991 719457525 750131914 88964691 311431769 134304821 139859870 410622556 968051392 42607113 59791779 956232615 999097284 872762491 924655108 431923451 934304224 475595378 730455548 640084645 752763572 819025859 846507742 88454555 727776912 922290371 925429800 390581578 851913191 842509774 915686550 465881614 566437363 50179156 559152053 977617876 982427259 774408348 804360485 981629399 992456921 718365955 852743949 167907451 231586572 370150219 978143477 245573360 954181959 214516146 716560673 54367961 960756515 644355919 860307657 170728197 971462438 847248538 962764706 786826800 862502495 42392312 866163480 535814133 843771166 137425361 289048867 296099216 787447251 697588009 990191526 406451362 801733863 924652541 961064834 749649381 926404355 100360056 840103112 625696866 783475876 230788999 253786267 391354716 715034752 43928198 106053320 496640095 969039328 114587013 184008266 99603921 420397405 262321135 370935669 92138951 455054715 398899312 863932567 360645355 443231046 154680897 762701111 19723037 485060167 74021331 858684357 262276299 541749360 612729988 883072664 41022561 931975210 130774262 338895865 502051896 696287345 931332831 986516453 497645557 507947163 912909248 921668620 983844773 998707252 339200435 396255010 545579519 710192794 212230463 965695042 643137108 688398166 398978660 410180399 714557698 732259699 135217624 337420935 812161421 827275516 929978230 967145437 833953585 881308617 661689380 751567665 791534682 806024305 62460862 346564792 247030821 857781029 630182781 779133298 444739700 762715087 351618211 761695873 796713696 893982030 620575367 805719658 836758597 868630250 543313719 876532049 581674628 773007564 988359502 998278055 878674955 896132848 274468984 870443601 789521987 888400271 5597160 90546219 819958356 859321512 979135905 982547873 670751284 816611918 549774238 607971700 813751182 879310911 533691410 889352749 619764925 815805063 866622596 976247263 808996729 847270844 205669599 385328602 628242927 690764599 640608026 711171377 135542673 491304142 716590620 987550702 44016913 448444540 942255258 946274836 969530107 970966458 128846953 712867602 820618798 993874329 267502262 305668702 702757130 987960543 925835144 932627016 186984764 272739691 574365302 880234190 233119731 706020557 216303735 479288016 634417520 794482086 375825548 490495903 34621201 275666252 316792066 949630482 658818860 864925764 991818961 993980684 727805808 912935377 172206702 998333481 78974829 739251490 490443306 721141702 600446282 770712649 252177231 325477564 912840667 950605695 735768646 899677789 845222470 956230566 195935760 763810471 40828197 535589939 687104660 751921595 29484620 34133800 955649112 972027027 180570914 312067332 970914241 984689780 446478191 873185311 97737889 801073149 393355160 975094742 406583968 493272632 56820742 828656236 804620610 878063804 283256028 789618174 72753570 90399832 948720032 950591297 296707553 529189744 999443103 999605882 220693477 943901166 295682461 383569866 451514788 592821779 235618469 459592112 71358657 573375628 163673300 556559597 774646454 816027097 532863016 660302767 880199581 991150678 516232072 919940346 349926186 789453752 347783191 362273074 484615772 794065451 57311401 700830301 947893731 975230002 717539133 781205418 43926672 998218065 980227268 980293625 959431728 989653190 71910784 175730940 533308258 963296647 878178584 957211576 294109737 512548396 856975606 990617691 462193912 793648900 551959595 698107058 299680459 902789221 367575692 725289046 843464652 934526201 485947155 923053714 423388680 506842766 78436246 276658843 910882342 956407986 406483296 583032888 691991784 816183100 928411152 979922878 772799302 901404522 909726841 921878727 677705649 767053798 354210625 945780692 904897985 936481295 302582479 643887816 162820780 467595716 153235310 951091065 178665685 671017542 754940380 952701843 321095442 411726514 448768430 828765593 528898486 763694636 284928794 531163637 501585880 650877534 830342306 979961548 97529165 517924953 955187880 989170181 792947447 799826561 863375615 957181103 340703858 704050301 704421994 778462716 19096470 37680144 557656076 661784482 673281370 793547382 800704840 904238027 179814425 479750292 54263878 557934833 814387550 882735572 434185451 909249434 838581552 876871708 539192092 802444109 239270925 723667986 570491824 711535120 73080432 703284406 357131695 589415872 721589088 787265237 27017900 310041235 815820839 860787951 407860313 894387478 99628520 797963921 500401201 554715824 758465337 764879098 282113085 284623166 786339699 909984205 321978952 835912101 424581834 883187606 994660142 997461315 504330582 664644757 929505875 981923207 168210681 619504420 949129832 977184479 299409078 457336636 309317863 320667652 692929735 959427798 803640636 841184918 564664377 926994618 374905911 622998575 267958903 807967205 585465938 798502399 42408116 621878433 213112981 430269040 27116842 328120437 39071413 568017262 809814998 812854502 87577162 240466952 183553765 862801599 338516445 764929944 395475282 550695041 410787879 914592796 901223536 921031636 496598814 716278785 992814140 996207388 284170727 495430133 892996372 925172005 216506287 762302795 383323582 580875276 933482496 964334385 349367552 522599589 584431293 942058090 40695476 927166296 963656770 968093161 109813967 349914406 590797234 694734530 51572868 329640928 357284640 759067507 846660983 861734733 252292182 267356989 476113361 483242527 674568244 960313983 988599922 995132542 967331044 968789495 372256493 908610797 586809883 621161389 785146870 938193807 42536940 790010220 894834488 948457174 739547992 984950660 717373881 827519866 280817317 443149943 490123075 647575240 790329572 964865220 673622215 999613640 652105084 769990503 881165520 946270974 747233762 959739525 846628275 933429722 43088877 834155486 195356386 969964421 622495898 752222653 99754779 993244230 942551237 993681662 82215391 694855687 304088974 838579001 896591496 933703039 764462991 873779893 35281388 510010455 757945987 853004077 522707905 585958153 26283086 261723353 342284906 777468838 449781638 959756741 657490152 890562070 637952673 725385460 780897284 932928109 262893964 994196109 763945490 905092174 515606774 600691888 401261545 468701527 285238592 881042957 124516811 199251034 823636883 916545856 800556114 907248809 954302218 977803460 236362385 912656264 538650591 915123366 14531090 999324463 433998770 905049853 29454487 372814063 52519358 721560035 304899584 373203300 978225359 999518609 912102177 916015064 785948146 796205703 732831296 949472730 869477432 930201674 740951352 769589210 966607126 973322236 645810411 701664890 166175844 742114363 503852084 544718135 412164190 854435599 675405952 828005156 782239359 819614733 436495230 690173381 569005289 683580892 20757893 599656621 173218167 702153755 150129157 673998911 907220576 956405023 990606287 998340144 39595403 644115282 759179752 802017589 602003246 727724320 187575723 709871197 625245731 742468487 646361117 946077873 554019427 958774358 203492615 247146955 784024788 934837358 80777867 943005701 11923820 971667560 773516931 923269845 399650784 401799985 54364904 797489596 604437248 615058903 732945294 785266305 551406296 995149363 13269135 716443982 943797503 952457157 448023545 617014155 777550044 787172706 351851451 476398286 299601552 365609453 883676705 937812081 377561565 545088482 964234270 989229754 320772381 373462449 983301804 993326411 744164834 792216574 267209825 775181760 898652696 927279267 41233609 718531990 6084171 732610927 356400085 904744908 958787276 984579974 891002738 905106740 165297105 652031979 907854359 933977969 4650706 947741872 595119678 964672076 739479522 810257563 964214642 987222791 899973305 906233239 415455268 584984014 896171091 929169240 225255784 762510259 583128244 906362656 439965899 820412312 186634523 993362357 354903534 903815594 2312050 696399507 403274338 642379030 928544579 993848265 516132057 886969445 108713620 574569144 914034559 977619692 977314819 989056160 667172624 810849868 761281233 906206645 651635050 766048599 429116247 575426919 919035298 981831780 510281735 707226826 926525132 998328514 433562835 858262636 125387707 309594778 825535176 977369615 896919532 919554567 263392494 892308690 675039935 939689654 153600971 383613660 491816434 612065574 735296431 773378860 980188462 985629790 525184838 981245997 985233259 985397936 850111501 976073780 926723752 937376457 845014766 962544745 143018361 856120358 60589477 480854039 72201633 833623677 938874540 943965258 541375840 695774125 907205422 932206489 67472476 902216688 679173961 686959452 7753779 766058193 858914580 865389322 688206092 699952794 771717816 778814223 321521549 984903113 315526751 834317604 560999232 661665223 396130433 946489693 300507238 355837576 626820265 799363315 721712615 825651843 483199963 893094268 374469943 751275625 110731684 795451255 669695777 978960038 572713044 814207888 759278933 781562518 668822960 824242862 844091753 848128497 798980602 918331917 797130420 838443381 445556869 722762626 635779559 728182506 250463401 465078177 319110756 725406742 406742444 461756578 29231962 277337260 458832960 463891399 788357741 843691194 737056919 889455629 798309788 855102450 953351534 957038534 132667025 579238663 267244391 658596730 14148957 399860599 95247909 684949053 77659812 430206526 844503641 902256082 512302580 616299141 425629710 659153278 904670713 981783119 998968288 999885871 192782701 735937513 390724998 911647375 773738073 777741460 193680272 312578051 574293102 955871387 819875057 873391360 885266927 951824351 51086043 881245416 739508092 908775973 254973230 732941929 872846966 919843889 644918958 986325799 137206573 564184118 760383656 856595779 320709025 750344116 372652377 903719985 944646021 947904783 634874476 643474088 612361879 858881996 575295543 923343839 326267656 716718531 690417036 749559373 303017398 536876177 138663043 486223968 9753179 813871598 226074853 235462479 980425988 982487474 826647543 827138988 576034152 903007474 601160553 766650586 806773748 982029300 555727557 885317983 66495698 444659584 656728508 947619273 454490671 828317667 60485925 253362376 926067044 986327705 640376654 690170339 498410319 934972635 385508206 726104287 716581999 879139527 747745637 840731979 654278439 722707954 489570978 935694648 362632348 631156686 416692072 706885636 144851511 339539180 853147603 875860786 149735239 358992050 977987687 999468064 496690132 793974604 930935136 931648732 340261595 793662959 530164777 886953357 497686213 862461631 567812896 589858712 558855997 941309418 656494647 814869109 242322947 976553653 422736256 688834511 142538610 582768944 775186318 842617745 169535364 892769385 700935858 864066776 866281747 965772496 738872885 838505595 749128738 964671721 834895524 983963748 531753623 605634523 177503937 908287770 439351202 642433010 592407813 924026282 432224362 801623633 369007205 502950014 596025185 688369144 580217954 945040579 742117350 929386059 347772482 403079760 476329865 826000916 545519349 546140354 152428445 561100216 934077541 941493409 636656097 808633629 382842775 802497822 462646329 729723854 871901306 952336977 202275569 825507224 343600693 791823435 62053721 614047720 408907219 755533965 745151628 749842541 877852131 958756330 629179193 904846385 266452331 463863447 388144631 624562760 916691403 979587047 322491724 527388304 585704513 734583609 234257174 446905571 364204407 532167053 126364922 591964169 200276772 532161618 450833217 480060556 658886905 736857761 899171290 922251979 495203982 936365150 290067141 729781675 270792075 681569017 944501002 950056468 454229635 976790414 413728746 958109950 360644259 795758519 275157500 282932315 70047186 651363357 34301353 824300240 425255165 515652640 3427619 50456980 162427777 782486406 850423777 952844473 550153119 760120683 132510258 753028963 603061232 858406413 166394937 416354320 938708499 981540075 349354333 692598939 266204911 722455930 768638690 807582128 105348244 436492696 502853900 701502120 649702056 830443831 840522794 882581027 333019464 407930397 419419403 462999072 592695572 787818432 95360092 741436111 492262286 595789002 449554462 838751490 225043691 376017227 721412749 858919126 51664403 211941573 721565382 763638855 368857353 699122808 372519008 504183083 404065268 577537619 438082653 699736511 343550944 433155594 521110100 894185696 405187471 820629220 875103386 921473314 759934456 985695107 839977417 842070585 266981343 859393752 356526999 844433186 446401114 462419505 467137687 969555408 968257808 995332742 563372485 659235062 443489986 867163832 565685870 667135569 407409499 689584837 224961431 335517389 604115024 988861751 67633292 827066785 296501343 644161986 479930547 708578325 294659504 508776869 111945713 629250931 635247122 872028204 115973966 533388229 851382840 913792666 66763496 285238635 919500348 990547088 496877152 883732063 283299652 884587862 490872736 585428550 837847376 981860448 683746256 829932022 20467450 40578228 210400452 775682173 76965434 900347895 567252981 659485607 672524396 833419647 213592499 629229403 554428925 703604368 816667061 902684593 946388229 948808267 110133563 243065675 951797400 953516559 500936716 914263211 770891618 933985571 786365905 982864615 887241424 972493948 422896425 650012025 615799083 995126751 188390216 909613874 331505440 792620840 102497927 973115058 74105029 405423176 80679178 504089503 991297952 992579959 817217445 966148252 810360514 834151309 714940684 854684445 851554790 964529768 119680929 510159013 236025336 766776155 448078740 577438330 395442843 562760567 823761398 954513943 677052217 963998168 245919651 559578425 130352393 328203532 843592111 987139974 467209918 578025117 298646519 551952342 380697229 576434713 996815067 997572951 752082475 929543070 207607779 755562885 92000066 158221430 317274011 392096089 319738273 814329843 241506336 471120180 120489130 168700209 273739705 314742906 857894234 976388490 748094497 972029261 231567339 381365399 410406007 507693121 836711289 929995435 980129183 986306911 911428018 997399815 760489336 829556670 995788956 995898762 301471951 582714690 622449069 935642413 775886772 880632941 936016422 941490154 641942304 646820138 918704447 955325617 939801838 972615446 278147664 513544322 550850150 707832845 219938398 862249451 405809997 710748457 71182688 843142986 393088105 999491609 208270301 452443399 205580863 711665609 497267752 693064744 930575227 958066895 473609681 945068412 501724515 877672914 409815935 853390121 677726341 820705616 885359915 889580707 473370331 745905335 267877176 756765976 455793915 626239435 48057198 974016646 50025471 409409947 21441489 937258934 628841538 709563387 323199747 926654444 688879791 988762712 988921112 989288121 461270065 939012766 729239743 977213453 412443790 629520207 592471405 640223393 457993448 771576191 531793535 979803375 157728694 184645761 104415969 710453562 442190485 984694089 976574418 980003108 72195973 777804305 792434497 929804571 569899789 899345000 575240901 774483500 295919690 979326946 427624478 633598892 890981907 944766442 722732294 898755568 167679172 192674003 726321667 756839575 890565190 953570238 12164437 400120942 412086946 430952025 85163654 337909029 675941129 708112640 10230649 622305997 76945816 838144772 612880815 973534019 952673409 981688555 582883434 670619448 573542694 949341237 244554041 308929517 590839181 659901680 244573292 524744813 471282940 751823354 295694088 347921241 705816898 898699759 871389428 934042492 278597274 523323759 861943728 979396325 613838174 830900686 754128107 983522189 157155644 575717409 574455840 751503134 226932574 745983687 834251555 856864872 164565796 542065680 147497975 762235344 998329939 999936951 142620637 158493588 843115611 953310418 272305452 730096511 910119968 927124617 106520062 577684892 139957863 549008745 109373710 742286991 321562819 590581077 269145110 848697546 865832436 983849060 283117110 429017238 273232716 353372023 413385381 966783529 233818183 270939202 698049378 743808779 328737935 475202425 304942660 434747533 621995762 815605623 320760066 786188786 362206046 920422517 423571591 519350791 338055643 777831950 561378432 868146898 777459712 800720897 590456378 631739618 437778901 825892181 830181691 930113947 678535970 961962135 697830316 942033464 176824460 973080974 136812320 756394920 562565366 939405261 544326326 599953125 846281855 885069613 736112415 908033203 113976831 575661201 190843541 416102156 830599212 936122890 824444762 827968009 497770031 881026167 2278421 844370343 864910819 878156474 729047129 944696201 723120608 806857836 614370365 888522837 592143764 671338313 280093206 454837840 121838624 784253601 874129362 988653481 346611487 966761554 552019498 939510811 489658575 874843711 526550815 796940462 941373710 947080678 564251047 740266804 345263976 628569350 90828799 296596588 192898761 850158395 62707436 660124985 74021290 763421687 308934277 901191768 661501203 966608478 265203270 736113799 215770553 986752112 60967152 693810581 763041643 799616230 330514898 760989004 615999009 686888746 891839166 947832495 656085376 672473881 623124351 763141592 478261883 640150614 368783889 693418336 159723561 631437313 42137405 280025388 865295598 886981416 91809466 808514243 291604463 527595235 406252590 762632299 651103171 746028647 170401045 770401397 618565117 621501793 62209587 899686152 189794319 604917992 454498990 992341417 975671799 999131557 145198726 662085666 875490391 999226530 349435234 879348816 858210816 950194147 113252315 820075097 754851989 831021410 632836760 743368711 900557458 968996015 468611422 505995116 668234629 941911390 593716026 815099792 291978792 771941652 802498414 980336211 385993052 496698514 557186062 978413058 46471876 724211713 114834175 738525861 743054027 855936879 628265210 638744916 85746300 227693591 953355464 979411023 193885327 383478147 155738219 537597699 129598284 678719657 887821517 978941313 239384784 847015053 141450829 242056179 168225052 800565541 142384906 814794401 883621576 933095760 627661447 668617875 355194617 873389811 421301242 549059279 375914607 890227875 906466754 950476437 278597381 611097737 173054567 634028438 3580486 74739838 683174658 914566810 63831257 513207788 797916239 820357761 571055803 962033033 768413243 860470454 271798203 757481590 883006129 920002979 636792244 660066097 728475688 929485940 71246569 713855303 899053677 954411916 748896348 835547692 387509620 728850860 380082185 455337312 873722667 909128231 332087043 730080022 355092729 533817846 925107514 970146520 417996518 948948669 18195718 915293340 590999684 790841742 94811407 797862593 953332968 980786751 727406744 967077215 763250134 866234190 298188082 948563794 357534398 396129584 208909863 721019924 654493066 674372403 825978113 901211106 986900461 987934553 493041992 557500914 668351384 671016733 202056136 570104370 829688071 879617028 382992372 891777819 360849149 424527198 87265308 817927216 945568855 968803025 898007227 993292531 600973086 836167236 945417372 990019013 867740515 891053680 86292140 577495554 88266016 874518273 418371796 736950556 413176064 969025930 16087491 186880017 219016718 527935309 403734162 891450527 277243068 321655543 34946131 96533140 626008720 914541015 380914857 689541704 679522943 711059372 966278851 996702287 199902013 343773989 490614867 887339366 511864058 951957407 571463141 888495387 634931502 998458378 42377530 734551324 790951858 999765186 804916044 913294027 902616561 979502800 168270099 718905653 858377943 859034110 5362633 772236153 172440206 890364672 13863663 816724175 536528289 931388960 452033531 983520675 85210885 594306096 236968285 275277047 961429295 994192334 769782709 971493856 415851426 459396775 355838507 764678442 789952588 929628456 209118192 594274149 156519143 488202164 568630442 818904310 565395271 632341171 34448431 471132313 179690086 288396875 890070210 958087619 723583009 981950418 44425685 880940485 343072462 641586450 853078916 912423121 349067373 354177034 855533708 986510429 331229919 689495754 966555914 969579157 609479846 803164758 690230048 718545119 302870366 869687069 187225427 401806965 595713484 907911299 252459477 394213364 591340003 821977591 992990702 995851242 306232758 782795255 569162305 937888066 940262974 948241830 127783261 328445024 893483342 958239782 291299985 670849409 723673223 825287317 122394557 937807325 772702775 855868919 697193024 869395151 333106714 928013695 640680429 672394558 285041079 860970099 195165107 989626504 352611093 798491615 298447129 587973811 692167823 920562171 339218421 927772226 867429067 924641122 305390955 649435472 587701159 772649360 460916276 896362740 481668265 642111066 379655976 664790854 980708362 997105673 298946332 426538482 122950936 386471971 333691049 547991257 914215438 994676169 866194170 933211502 41822867 416403448 241147782 768105461 635504126 954300625 404501187 779352578 116729566 228658844 241888100 901532079 422466131 577627321 84710351 594496432 993599623 996326060 381327815 726245797 785167122 867255096 7186806 372101450 473131471 618858727 535699604 897539972 832143661 836850674 197259184 905348362 328074672 839617048 401520957 503747925 621858504 877414063 177559429 798855784 983934322 985788754 156968834 984772410 996084324 998482690 550658829 868746859 784056008 987994042 96880908 190281372 306270284 759736051 126842005 275661688 201210659 413687237 573305867 766109688 863983719 954799802 368656504 874223752 644816392 896417022 587031010 901701543 148298742 841348541 872282097 948313333 829084097 917073487 764751672 877920858 818400529 910081485 851703202 999188174 405658921 480294606 734831309 939827817 543331784 749058100 56350357 954856510 450534322 731573804 191234620 482721078 233017612 994464307 426228193 768652288 785883603 815540264 49582780 328455356 613358670 841800233 52489719 980816079 856136260 925600670 260827536 357189036 696050404 899797510 780806997 982822666 351310411 781613500 534138407 891014458 286249993 375142576 226824108 608064856 925039457 960687587 675636627 811295955 577972797 842957317 281851796 552825374 761051662 978116832 214654126 852390573 637353489 760064944 720338063 799786271 535316884 538940652 436739485 848452562 979690065 998773775 984601989 988512355 850165872 987583224 885459355 972921946 474045582 708986922 565668346 932324995 276618732 987377568 522717594 925093868 344331824 781932409 170500177 610364426 305033969 336580745 131089799 866486907 125892316 850671075 9209566 377565423 552217267 579713229 380883699 692961839 92914957 621264479 824424549 949944525 860738411 883486644 617330752 634834663 490124074 506378548 26870169 43522356 791335360 987233791 515375386 570483394 7180420 691661142 258896565 678677027 477224751 660918264 276984253 605419324 516660303 689716815 44576720 542730894 442959231 634516697 298878067 385138221 273737156 469204780 603589030 630286187 497726149 636720424 38515925 685680093 851683085 998625601 45915357 791919299 391671052 970014593 776405231 798466833 635237486 974690735 278980225 383969306 974171661 998346083 828072929 923785418 980528844 987233877 862815339 951660002 346304604 815290181 703057000 798178574 241276128 687256191 344997533 679480823 625582655 847325035 340957777 900120413 232209088 294264582 915462704 917829377 915326699 971710151 663804771 768521891 201219478 227118437 937695226 961280577 210131330 262246965 240568441 424988094 621673501 815129282 220886835 852563956 84605250 870166577 970129115 988581583 244767098 484206632 282737148 703004295 729630445 768583757 878672314 999472720 966511199 993009643 858938908 933998720 63108267 332904936 363151318 607236259 850001526 887750182 276219338 585186018 876017391 925210657 65307261 548702815 705991247 973696057 70566978 632719151 814155128 979049344 133474611 578185439 331550511 624517766 946954376 952265551 132624466 291863305 743877517 870994112 269018227 526896186 480551113 728782282 422452010 506321582 378903265 892088153 463732943 921681302 402674103 778439420 916096074 930051383 999563431 999971481 722519058 972222623 644793907 801672605 698804421 741231976 416296205 911719089 176968626 641425874 645555938 666348635 413681540 886330208 663643853 684247461 840780173 866516549 582644429 982520835 412218674 601758603 123019983 141738308 313273066 650764350 954426085 994700869 545518062 781245399 436103141 925877337 997006728 998509878 660718621 725720626 61258034 263099778 89679676 536492520 330090759 774107781 115805277 988012166 897478289 995545976 500090856 758764074 796587604 847054860 310211471 599855439 103440416 833462080 63145012 509363622 249269794 469582783 280132619 928139043 54106567 951080979 821708094 942146953 208148121 813465276 311570714 502038677 537742454 830474506 184603850 203573568 982431357 985447605 803623306 976454284 64125958 801376509 954404278 983579837 809541945 985928268 432210896 646732051 39926102 235028078 601635595 895964934 114168204 958196508 500270403 899494563 346993531 873976575 981631406 996950338 744377688 755504384 806093527 946373531 642764256 792711310 975611419 985361473 562918363 855843447 410812909 510119458 325697709 742726527 146939133 240408145 914741136 996150607 415038644 960710135 411811504 948939335 901625512 955969684 423467510 537112171 774818340 789338830 372586495 539837921 617424371 896520662 804901178 815144000 544320295 678620889 756189543 859082316 260040763 638964076 222866078 270373909 222662005 454444963 313306568 393451836 880954446 887194639 438771620 625470690 565980492 822325999 146400135 418537779 578305773 801908370 42576073 831049233 388183186 974978500 896870936 923075108 520206116 942328776 691164556 903010124 764775517 844534369 185190639 518641713 64556754 146838066 469312529 485857250 36746651 873895033 872745178 892524714 345523258 724758174 54574811 154274251 90675146 202337174 402216452 763258672 52892272 804780945 380041788 830681137 161929416 170073315 547636463 591202106 508046205 993238360 753557779 868804174 346556693 955373130 37972585 720228488 552658061 845608136 98602176 833676213 684542583 838286247 482373683 876027285 372582252 930862621 299870570 636228222 356423837 827078264 153652749 635480542 233210231 608637460 784556069 873147422 917691243 994059636 55341997 592602338 500391685 864288899 757754207 842247626 632738911 893037455 10982632 400330796 605223592 812318498 679181153 914846971 203818813 350016141 25844655 540664110 968848348 970580100 705474909 935714457 72446880 262114451 533462718 593263063 701390987 835791127 429008226 507228634 393466594 977603517 835082488 990410745 134422364 140333100 585575691 679486731 142816977 251358353 341928753 565111666 796632956 952510543 381813300 997513518 286385446 678057723 688663647 816768565 968188023 972606820 885000618 909745713 26571002 327627343 578396604 580543915 904126029 982005701 250310043 893979236 988628511 988834515 725621957 917019694 60020860 595778688 885411611 947485777 384572257 864264339 556260889 572390600 639102311 746645962 388693377 863188371 176154963 461157749 187565188 614791838 500078929 721794738 400844408 666417591 365156206 892327118 118608008 270639349 195261933 642426712 147370466 576919936 271874852 554180548 1372680 652833775 136208722 447196816 127781690 493093328 906039526 919431733 530558864 908740158 374900426 792651898 494501740 764239378 581836793 840527517 658415733 689944214 168591857 590682021 840242961 843171271 897948601 928674470 696296944 798389351 961049259 994487212 915014442 962607759 910783059 990714457 153117480 887951359 422817893 524240460 592604565 931594456 724647638 895149845 886790098 981083508 843837275 854638545 936389372 969014550 492208519 649839305 439243805 652120693 386557101 974314726 120659483 661865183 356398111 770301096 173591313 792266431 411679241 534579047 531662700 680448347 573631966 827370516 252985689 449636561 280839899 821476868 808693286 818988314 384325369 450176174 513299607 652105478 154554531 885950069 868381366 921786707 853774472 987734608 116410358 403393166 622730999 952372823 813134624 942004157 504279111 661601015 130587848 270620741 333945485 763194315 298651907 978239327 959359257 978074757 60934107 531394766 265681034 362397911 730824486 796087574 252642449 738970182 929017347 982806607 765413820 921448711 43690022 775250373 812740650 863340314 102329003 759979647 200910668 760509837 445541912 941185805 871043201 912445045 725454733 791590171 567945230 997250459 552915142 864396068 565704518 777644986 396428608 598152434 551395301 974148891 887617113 955577778 328345617 350460763 583763208 679654506 60880003 104874504 58657607 843078607 112098496 370297161 654285997 964100982 643990161 760606774 656407885 961772760 170719453 514353314 801605992 926984470 70507092 703077887 763854037 900179105 490445577 942355506 379422293 559124749 337594502 890064809 452046596 558528711 137357686 881933745 281030627 509040644 776594728 973477336 633338258 990066999 999538088 999640326 885630098 926123393 927814745 986602006 621827061 738574057 300110379 398184385 229391394 277014228 604091368 799451103 783882325 816414864 916942865 985378073 310477808 606745097 40904113 135555547 732749100 800422326 250205244 297022620 401530149 682142819 926230256 999622863 36698854 361926924 521366311 594612785 909457651 937495872 666699464 833072212 958085571 962393601 849093015 883217859 494529077 500434916 36984480 998123555 538409423 679865727 12830748 451895585 783744238 989348219 165401526 533775607 698565260 724354043 932832251 990506694 973395244 981656500 170622809 223074811 25848876 391181014 802124745 931615511 559495330 760740940 893460789 967850729 199593234 869936616 339898603 434720066 875748169 960226050 255439811 407953294 819324234 900839156 892734690 898075590 848234458 864864519 115843944 511464411 576760040 778153909 601988496 653763806 196370176 365124507 543775511 576809824 372798725 872014115 793209369 899385939 260096580 526612913 626391840 766637741 615866976 811751565 862160620 930617582 804391512 832795996 659424388 893224445 646461638 863505026 802420698 943835929 486735085 796704128 71547418 720803795 929573051 950593699 938379577 938491641 83140433 748310563 398215838 876336920 296463827 371739724 814025329 896622139 214939344 476952934 56976569 295367533 596482680 688569557 433534174 720893806 975224359 996355661 761077523 805739806 694858466 847331977 370455531 753133390 292448827 711673799 2814263 788987104 151750589 299049108 420643691 649931073 479339461 868213922 208386694 728597815 679274975 724485413 797522643 866388219 924298678 958735079 884186066 955977639 563210868 884711530 190885708 388058231 379323333 410312817 400873044 529671935 554524029 890968865 720704267 740636933 599454751 824626693 179228569 462601189 598621125 789731345 556046792 768698181 253827764 292139392 416013225 613203395 524117107 559406706 859062992 883547061 814036056 989759740 114142826 393483018 56008265 899795181 550024885 707482185 7854288 60139033 81063050 351400095 314944779 586927750 316495063 521060547 938071429 975751953 650217221 768233777 950779683 982374481 207635441 998778971 977435034 993126507 84544962 802894265 630341804 941969998 96199459 570454732 902091452 946189957 42822398 991496256 331963852 766570886 209372530 825278921 445066830 711172420 853514274 964662713 52271009 969707141 336221559 476387487 371107512 389016326 84009787 643422904 834234953 981106619 487895708 888339576 619187178 975078483 97426949 993340676 152158512 207752070 319130778 375588291 434487686 851173859 429234713 881821353 705194191 924652482 390991963 430689534 884694978 995129190 304324162 920505429 197890865 468896523 344349783 616939738 467891780 569869844 988536305 996506894 405896623 761398472 958517050 966241942 842343448 918171547 620752104 968417621 945234255 966076229 827766791 848904317 3153474 826044580 171356389 187359921 996153797 996288911 785469516 940875909 978901778 996584699 51874645 314787317 930743817 964138003 734426249 888742453 652368740 945760778 360342694 796010919 467036169 957773246 816372308 964783689 865860457 904825167 605906403 641772468 487387719 554973082 214345404 417105611 426441490 777218093 157537343 889111538 376203012 891133198 553048851 622140832 405594181 663814360 670144013 792679377 146673036 644166812 893872410 900944816 684507191 690504396 998221708 998998656 762540420 824980687 241601683 440049088 528527137 676179734 697243949 747992452 838931992 967575465 707042794 844675455 27572390 969971265 802744994 914282603 253210774 265940213 656338800 928980996 182123933 265271439 827703632 995699209 728034378 791068918 770191145 941375416 688059331 780012103 667255463 817868541 138996206 247893573 573567932 798221394 25736292 923846161 534786410 871626190 520659028 806978293 783885722 946286772 195699626 747059430 350780265 519401033 674378772 800037993 982721042 986486766 773378901 983699045 299237194 870293153 570075162 967236116 239520446 387402154 431009626 870129903 956595847 960484321 763168922 803470564 147279966 951948662 964180076 988762633 148733768 480545030 431861953 789066006 619127268 721081172 588786111 932694569 307903921 643160256 976992583 996108493 59113095 949547302 976080462 993336551 61500311 784460899 79188439 880263680 42832300 690368196 520908584 674575761 335363216 426340846 600496493 869784478 759410981 871046528 827452860 878825581 398646606 895057059 87471992 651106926 209709550 862619280 171488406 580505093 434904996 679407301 736474051 965716891 303661307 725702420 727259576 918208648 703723924 994363552 732628222 937230036 752501057 753361398 570327536 719579826 385618352 743383128 674884086 695588491 798486441 921170435 827065045 948254169 748231733 874922309 399919202 933348366 172752757 429138426 548132951 687115615 363314577 883683782 968436301 978942763 594457441 829474712 339285715 843919553 982296907 993655279 669883461 767438012 68134949 820645365 162496614 382818010 657429548 839527016 15283289 725102551 126257801 272870822 711514930 948872022 375284981 602816032 570576763 642097924 41104887 647259043 779044508 843178567 339160793 800858007 796240350 959839546 496629708 852952037 211097851 478658999 399055910 668099464 754713256 913080504 531042907 703208800 441899343 634577688 712236872 723966673 48138589 565039643 177404634 521826623 394291552 848406014 96404247 551542434 464488833 664072229 221623444 428671211 654448390 702927219 619265386 973998163 212997362 583365568 692382825 869263546 834496597 858659536 510721184 971750128 287951974 795582864 4743871 39453531 350776912 580202616 424297261 760966960 181973935 264009082 16816485 69112571 77757772 942764621 829035259 968470643 704125789 925164895 188143024 353292404 269277594 437859011 450359587 893594382 634373610 978131228 440457691 458998499 835606742 942755093 471925715 648337694 754673362 760884591 263660423 905784784 104802016 542146904 562164878 707472719 232292199 953563364 131091461 896665634 643169199 645510468 80004380 950654328 918027944 967933065 167730938 603313658 785212597 966747365 658623971 954834090 203543491 774643798 5963512 256997749 238842965 832907631 416935100 834326511 534893599 797327084 855811709 986792786 807833947 995879708 988257213 990912381 704450110 815771655 740871550 851479989 332468470 807921188 860661234 947007424 991163841 992064484 55155560 328498240 537540177 996514320 782614425 862601533 49341306 287986391 183168412 324552256 550546921 967115938 24847530 726645243 518390348 869314271 692803260 943229738 752580370 901440457 90694480 342461694 10278096 571792517 121448967 498314548 829819092 972136758 476222650 933847519 407552658 417189750 186158812 633555314 49217187 471638032 269088060 325312620 623414339 637588894 504685591 692070445 705491118 803461903 315071724 984847249 281605273 678821846 717762212 797896609 501274892 850545846 26255206 380699462 25457325 298730990 860384830 947207703 774251746 816581019 263809728 331006347 947200930 949212336 272978508 876750654 725683220 728431389 848604631 913428122 142834303 349771307 570000276 983789381 713172087 856447033 822417296 848885698 784231187 812670210 655869468 962523059 580447481 833131927 282821780 574720348 19801754 642870624 576342467 791061267 203472641 351423474 116208252 605551721 602704767 992302959 800845647 858507130 985216337 988801267 588308618 915343559 777309538 834096711 855578165 985644734 462748777 601694177 81746693 297704152 866889157 972451677 701626762 744115910 932416665 998708813 690657237 894155996 658482458 701335864 979012532 990952561 289611399 633580583 697149241 980299337 469615432 918804476 521611389 633899611 290102245 879483217 333471227 832741499 981948223 996741466 72472915 726967011 801531706 814026044 38039823 620826648 684151559 777084663 650873768 659424652 94669273 116401320 769813816 837272113 970964282 994402464 463128679 649761411 371300241 747689227 453069267 869997467 800196826 955327033 256827362 961742579 111551046 447159206 367537113 875650999 76266473 359754313 708522690 788081407 80391424 86518339 910935499 926000097 165279479 386451867 584609224 589980420 941557187 946575518 600565450 645196114 551075165 951366402 836942734 916807550 632714580 803645770 636780315 813429073 693328872 758346964 415222448 670462375 493634802 891241008 234703089 313851406 311363228 442893728 779724323 987825931 815722397 957641008 407793147 919618232 742942609 921738780 453382722 654796191 183159512 491027145 152979513 173447491 403052250 829369312 53400847 489014112 450018166 542196140 443663675 525328943 716018854 973164862 798829869 995637744 739997462 789307366 54443877 338300913 577424584 801027456 621932750 691118439 335738942 827212906 381704025 976754883 992729687 993019699 216780865 332257073 748839022 819928713 132053163 969532561 815015190 956089973 677806641 805148835 442281423 638776343 53722299 210944852 275359234 275735255 246195932 812752624 942268615 949185433 491401686 558565871 389267430 840759757 36887977 53203924 769186841 897816262 686149762 801033724 954068547 973950698 413434671 871099749 768291444 862499967 84590623 795670656 937731027 938865640 24707664 295738162 68620358 391588021 878987764 925340113 705337482 790203251 673908652 709629174 250344774 640820837 527005614 827612655 256882986 284035792 520478242 999653986 438281501 490950594 665694890 835486722 177005706 795711612 95269732 475122247 246421741 326450439 431096193 451006943 153266082 842348097 547347345 876577384 464269623 739107419 552014449 709830708 255522239 805669554 584883374 950750558 924853920 982018810 728692768 816568119 554230373 614188995 69128456 871945348 265240620 954012818 955616543 957105131 764190087 874075876 805501005 951091302 257387176 375452035 99621094 889857470 157983708 612420208 808427347 984344896 507756157 973289328 895454909 959600355 522953475 702265851 938339937 987211844 642625358 828954087 248564376 948686974 271506501 700595223 10464786 937893061 241986011 982595197 923356677 959325340 426272006 593951877 664988622 750664979 527038687 685349543 895138287 999185803 983266999 988451607 547433493 610681455 674185453 716461696 212680141 929964634 914975748 933697740 889023157 997503637 625593290 717254222 786858444 921435050 589478210 951683193 158200130 260619981 846802822 873492058 136458629 599913448 46626699 333336967 53748231 918912388 674781083 908847405 959201845 967686052 76848237 803886102 988752215 992532850 488260740 626146590 252304774 319544892 79566855 973715903 788183818 875443387 164294408 687315857 251634939 282039227 555936958 940387940 579837438 723003097 181869490 629859073 50227295 424364610 614082266 725302085 243872545 638883675 513431974 671748093 67507855 506668467 755328526 955439282 419623679 951833881 479737952 640685731 556586105 605276086 956994506 970183964 398571475 646200838 718882730 847080870 256932408 467196345 476087099 736040721 473871800 955985122 356548535 494237660 295355344 867181735 801056316 912450373 923955668 999558280 74365179 387373563 582980984 640918802 799212030 966369655 397229472 623804148 797024490 878408911 552911815 659307017 683806029 784670399 120761273 274285075 291430379 902408912 90539734 436149524 550042689 993413217 125281043 249667059 336377733 404980519 996917816 997774940 369358605 920034776 243855574 666930638 462052715 895164947 721947342 956281119 751195479 965432221 582956554 782698970 893629368 932022106 544756551 842532981 606140248 674041343 551880253 724805744 389797879 406357877 587325257 828955228 876474162 919134911 77335973 467326258 983735845 988158806 482003210 638521000 792605142 958884447 451989811 733909552 409557121 751425453 867078810 900903074 482843890 609823631 641127023 752103172 90199027 245361418 272227585 371623443 358881189 369197577 97218794 868457439 890888799 989590987 761254002 772203546 400362228 724943515 386533515 840714625 168135954 376835380 155186540 160848205 791639949 993734549 679600663 807662331 976492912 997855006 598015023 696973230 506168827 795457386 386959040 918001481 359678243 927978378 708630442 975824311 167167399 392634870 67961945 832430547 409950097 610004775 528748919 810363134 786839177 921721667 443347320 627070958 125435759 934630902 906967176 968411337 801468225 805830017 810162805 915465460 717002252 882609540 861091728 984582614 573265165 625075482 786894350 842158470 836905804 997439331 217740135 746204946 388598049 661082008 382463538 799924557 50195305 440158795 228852307 910843261 233938557 403667883 207604294 953422604 672205312 738006413 271221745 763743610 877325512 937629820 680388528 991669475 952291934 958393558 445415606 986753347 378647360 608603806 647907382 656200467 468919225 625113993 58568957 273208548 389226620 916401556 914837769 961933161 258781598 637495643 292791372 808526788 782873318 969930643 870325581 909929943 913845060 937822476 239194134 982359813 662619038 901020951 137658982 630713658 658538217 910720817 59620155 210551338 343466046 873275204 72430505 523269765 623652202 979639064 288400716 464180603 59260662 518785551 460815126 621405027 520522589 861888029 614302870 624751435 322173200 883049918 128201992 741924363 138403599 580501545 140506238 308024768 8111947 228375416 217114471 396934660 859512280 875796361 663776037 709876190 754648889 986858454 670027007 861560690 158940124 746220960 898473836 978040477 987386204 997343826 288210714 927817299 426726124 831550177 758747944 971141623 770842539 898191799 689246111 780883972 556598069 560031644 58658108 587797243 457700927 739029912 920609861 988371880 543956351 985510413 327839936 527918182 291018088 764341011 758050771 838099034 671597791 817981732 521041001 700602571 536691716 607628413 448738303 964809868 787388794 869822332 681743874 774106720 437507343 789558802 550234000 756206732 764773536 858756833 623763357 753720198 586724571 967878140 2334821 507839513 144386548 551550002 592217848 655017004 724951702 934457374 451935953 863837614 601299176 607671382 825255031 900556036 389310624 647412309 979907333 994632953 86839890 689434655 860341988 991277001 182021812 373865936 482323108 758949784 952691900 996074359 112864617 533410161 966999420 973439093 257079377 379167950 426487254 596412913 761722278 811369146 440151028 993406066 624380312 906550693 521072921 856014180 241663487 699831391 328847116 702216275 330421471 964044181 730031159 871514421 411991667 570775929 621734492 842228609 162430493 807313703 691885093 736843048 219076303 656895667 576207759 867396447 672414656 741387026 449226393 943237053 202300270 822613728 672992936 997904836 121795469 284703438 853927379 971633051 966197685 969791575 354691494 512172862 885711089 969013880 332011789 762178810 823282333 932290676 602005135 748332132 543965948 563010544 5806766 524290893 725378715 775785252 12255134 953236447 844295110 856718526 522611616 739310137 161643864 884602805 215973634 793849571 702192355 903063676 32171136 739377209 726785050 879523441 483747787 828260596 759581572 989691898 886355529 909073408 718275844 905105985 236141198 742236938 204797903 221264993 693952334 987328948 135119162 343783780 970739364 986243073 822456883 880649812 528732013 573794215 510146691 840987568 834023722 876344044 771956211 990626908 185940229 690045980 272216449 360830752 679842916 845022165 647156923 652527555 443734855 463536554 51728925 720144345 683403664 829507274 903052588 907795624 919884061 991630788 330150900 606809564 292890662 665924082 274631051 428804466 14692743 96448508 103054147 628585108 688352560 911888584 694910226 976385986 979021323 992262205 446575409 878690270 573814046 824975168 433374909 751237537 256391272 832874145 601499252 806790833 959452305 976030665 599830747 717727696 646744012 796911800 633938346 710925062 739177208 766275041 790368609 995283557 765088161 873417811 809173605 930198464 387872674 471274232 163912620 817879894 406791823 641125829 655968649 960346715 739647945 998384335 590429149 826829768 989212500 989395639 402102071 784838308 822505456 874382510 219885294 514218977 579421227 829964394 969449364 990891384 77283155 540333908 193344023 763272659 381401010 475292318 752097860 935506333 66192713 594600634 400140065 478396986 351065510 363908754 96051073 704202451 402087825 468165440 301212934 439815677 154638107 385184114 238329996 396515915 773492557 931048981 474828617 882366806 613090179 670017941 138647985 221565488 763774428 916954183 27520349 218306556 980265498 983677715 916198503 999458228 399404989 469373304 274199206 533120156 854214344 869844111 68509831 341831985 211930571 322195998 990213276 999067233 926245698 993973323 432597021 585841751 876554232 906872897 739857604 895633238 421457663 793599782 656199657 732794880 675491238 988775377 346818784 386929144 213804532 978888494 855206931 903300423 631602904 920821426 282191025 634079669 58202093 842649195 497045263 790560485 504268582 759890115 934437550 946484763 109858458 980180887 74711759 947577784 200424868 744404905 26308292 979236671 453042432 552481776 687503063 819945437 762333218 819315616 773514639 870158910 939408553 969684039 559375074 575254140 473635840 558408452 304594656 913457972 789180166 812870636 461690350 761973693 851018901 978675699 920024507 982705140 228502829 979617461 575491826 937987736 864597343 929833334 256788052 426928437 197181910 787539190 857816637 887790371 368771756 809190184 629391184 890113973 853231710 853966861 400313520 775967026 820974916 913203970 77017282 84300087 588409348 844781871 255903538 590410710 648057233 829596426 168080475 843459144 704208422 835329973 107927672 203947327 816159465 975627963 709366895 939206549 500535151 940973181 940241509 996679319 480150058 572406441 256144240 819823940 45809058 190405186 340285796 548216446 304039868 563940323 581669392 971971663 604981687 615363920 100985676 536732740 278462090 528043494 454546713 460118914 205708553 675014402 559054634 739360082 604786227 752331276 7549744 717246614 791639564 818283310 969447233 973865473 793503832 909610534 984212107 985715862 110329142 194634080 842043635 925654470 671063562 941830658 753704206 803655359 553508679 764877412 396047138 997904390 150876166 436548660 639618484 909870336 917721614 964538112 779311669 805902430 756157545 878632443 934494585 944183858 800748412 869731375 169238413 695240915 287946092 734576950 592497912 779322202 368667573 645735596 869001661 964139531 649485468 909907073 960975581 967354822 974770487 996552236 92204481 289751310 719675941 866439359 271946029 375963800 206053504 447557067 121770130 262532629 430937198 803556680 956244230 973568936 745286883 985685993 94571380 736875707 50103266 418055878 736307604 876057637 7517218 643186276 55771274 406439474 199036756 406517252 217771802 525132302 764238377 779080788 128339503 651763075 766690394 853897030 217417968 258056487 6350602 940120328 875725049 964308347 553118127 790786227 207490590 988423391 3091733 214286605 66405996 792637883 925395993 994432153 918471413 950342894 888204698 946987592 846944924 990077774 414280579 762989382 416440136 640610326 523428369 756414478 318557528 376248548 946781813 950660825 345162771 487518056 475821089 930826907 240395038 688581028 309697143 686007146 274607297 625353511 499449280 718793881 535514758 954069316 428485591 855958797 562206375 699999058 89987595 849866481 146060412 434349326 191727287 777406017 216954174 261251318 98257761 682912588 774388648 969553813 497470094 687797599 591711929 812961338 344729549 531052413 49934974 882453055 71661745 319470185 949663544 959321288 174101760 205862285 971987548 977550989 739873188 940636448 382960203 930850637 913765133 992062813 482599974 900049680 943535672 960451457 595146730 986548933 986962936 988641781 219070641 430592562 503359213 944166032 53795394 316408874 256446657 588276470 508248418 762649230 420835572 554941406 686515830 713324995 730910581 986110366 921214912 982392220 621110472 747326913 731672545 950302589 694687974 970759571 720337940 805602510 611841394 615663901 88933358 208753499 81249931 374275891 467440792 974964248 236599058 503351865 990286069 997778775 279136691 950094115 451551481 469616958 901114117 970282570 863574330 996883260 990026421 994131599 14181589 68115212 170784585 699165407 956998524 999701484 172298810 755370268 622217136 956467285 672118306 833607200 853193192 952178931 963517193 977321104 168869952 860023027 621461424 778435440 478231528 533838354 570823149 617850149 542890161 748587196 127839791 298725789 134025952 508354845 293890486 529495246 450003922 652912244 556792178 807593339 122374937 901332740 930868635 951385862 532621708 735426314 498543547 992589338 248689664 675827432 558630549 618169229 607794806 709139755 905627824 938670918 472729832 931314048 505299508 609493811 353467052 447887263 285027115 389753728 572645481 824882174 998356419 999567966 317172585 685459479 246827388 517755894 909829329 999610836 584211524 921860304 904188588 926699601 551639433 963784350 431286175 718734095 622453054 979277088 862638014 960063016 415098817 642601267 416434614 800586450 940006024 942748462 203233406 458363743 527851432 615849591 844105529 898781560 646745013 694978230 674975198 933971969 89966179 317563613 961618771 967895572 769747860 840332753 549917789 665102820 714864156 973313236 143297696 334101696 826063121 937915479 950066496 996795747 603659291 950444847 226343918 910400981 93978557 553519462 84505151 184290052 601940554 993999486 575280152 873242494 692257704 831949412 307737688 396027960 212589292 416712529 228160278 275220744 293703663 874519660 508121695 683941063 163341252 989326567 943237457 979988436 850298600 907003993 74306357 978666969 373083762 512349717 23763997 757833434 159278754 755494732 931630963 973544441 499099744 863930791 60552612 301464549 165388412 480089472 204012667 996324485 941276356 979800693 484303599 552202710 57138301 570092871 482747385 895505091 33929127 785460758 901038420 968673600 804442246 988117656 53149335 184440187 672994619 944530642 611421080 988535136 679915273 869151372 761425120 983232774 34397126 979981174 248395793 524371708 942906049 981879990 633921253 972989505 378749296 869667792 388350792 408522137 136625904 556281208 498927548 714018892 371188540 949574735 655483555 952455991 704833116 727478333 943586213 946266336 359118753 874721159 376032974 743029326 602084185 665482363 822970587 966966715 260070940 908997783 785259478 871549905 550535539 878191197 244197120 526387779 291742590 588608557 51903357 623709219 613587276 974721768 473605742 546902937 349881301 967032662 910182579 967118627 526403317 946528848 270246150 625335729 301687505 615003834 916633181 924625796 644722580 716681131 483090219 927847268 961062008 969489052 915131659 978045524 458964994 529775377 776803892 991813027 30410579 721827923 161814841 791004401 716794126 720420900 678596048 822132236 619222492 717864874 649116877 982511910 958048705 990158297 834032490 836270715 34571386 777302376 805584392 931748427 469874155 687327191 170752530 593652552 392400240 600667044 92483380 629281229 610993565 923008308 618537742 691223238 117700009 155772535 326051071 789203347 186378662 677385084 732333812 795421478 959784620 993764471 10248700 837480764 330860822 523549426 977357616 999968675 287509879 533706496 498180212 771792759 814337064 956877596 914271091 940186295 625739822 912172823 213898329 338108349 329233844 379984537 205636057 264562831 251495974 488360250 954305275 988086249 973778169 979514587 626900647 639328132 123007524 540490211 754524648 777769582 874504158 910044591 657117211 972445773 447907778 596197801 932764444 956744532 158150038 753275329 864504776 950157419 690905995 877326418 823038548 989734189 422638520 621931007 886062018 942992254 432139888 876178265 407762637 641181579 971712759 990921837 785924143 885902732 911684279 996478038 49405309 594368422 248365751 902797327 16011727 979433351 341534198 648208634 591910647 647856783 843234633 881184797 776331818 996424336 187772478 492573686 990512996 991601972 645516014 893888955 760148019 873894944 742634491 751203931 771938036 847020743 197889351 851906714 449884129 485909061 272743351 275255195 506271329 907203622 900305525 921651190 679499591 692139671 908036451 909367345 152449855 755453029 544880776 804439708 122895753 953111824 681603436 988471668 167633138 470989401 341327317 572271644 841410345 932794403 211870331 719424080 743713183 777094342 151058244 353854815 580486247 826791366 537933814 701769237 697218096 874974331 290420556 428473463 490544144 533188584 350584851 895109953 240941623 582680320 424646559 870926272 109280942 991072097 128655713 796895619 713131457 898894871 706638583 873808229 323390995 561726226 924743474 987687624 110082074 959645250 64537172 659932260 336531072 554724922 517447694 596077570 919715515 969097458 450391888 536858888 879527605 910806885 424259944 839766514 299572733 733847371 456803580 901056058 913715422 951084413 521124287 608502548 730530261 965498203 732770809 939478775 502482583 913003669 235079976 465514018 300368408 356674502 562510278 615781087 415036436 806735661 311041705 619843659 361581606 605721342 554453234 716609019 320393892 703475040 856719530 897556493 762096766 805518977 443431754 840959355 734098954 807551028 276197693 877918137 798660088 830876171 867729436 949958133 651213973 798838132 565441203 967593200 953123077 975969696 261542207 506236013 479751593 562543894 339177935 444011439 918277714 943520561 644973734 769253430 47135851 865611629 4118242 459415741 431043378 805688529 713103045 737562652 107969242 679658094 475235215 798844337 646956381 919507408 458443143 824668506 242576584 375852971 603247784 946115248 331534429 929137877 320942660 826937420 683544073 824772600 84444048 757209687 535315862 756160405 847556113 953630120 171408236 816136409 235281728 649317580 957169899 999968739 31019426 272037717 157401284 797693983 865247027 968650134 553834388 596319012 71402812 296776816 50897552 765878683 914200607 958983814 661365036 955449558 740924961 777004561 152501813 925396559 744162509 882541930 844267393 891584199 270974356 779644998 605875917 842985506 222065496 724765887 414250112 575366501 797854459 885092078 932464606 936104119 95221267 925268752 329074374 913220431 123336622 943833151 855667398 890994643 248273900 706602576 665529638 925337272 229061311 873482813 593406603 964894096 292069059 300307054 196211280 950918841 561306143 807355624 980923397 990130349 29622342 187107521 546584159 960721759 122332820 832407282 272540806 988553239 385270419 475065164 44692807 916880660 917864917 944583877 604289343 883987093 282149075 998692631 769460059 839195900 252956515 387682166 807051866 997361495 869534331 982732094 568153256 903894281 874158852 926204760 604718539 785957831 638297209 679952299 255176538 703549273 577035787 703944059 16069912 760974647 777158040 903033023 704657552 712041434 914233654 942106770 522718437 983614224 477476074 616107509 697865962 985803076 297799755 586069304 61868772 339283403 843095211 955992438 930525599 999669315 88330794 746983171 62535242 270921891 95579489 888066697 624767166 630818179 222112743 525775954 50764468 63531273 51418400 809333310 683405610 704240771 734782548 745631582 710031569 945888144 493223028 800558604 76648852 789389210 838908300 915996778 186576190 775282451 278333116 362644647 409731006 599880953 713841474 831088234 913404918 982604484 189103852 744196237 353661405 391149459 555904358 817068533 20780227 186042282 876810168 890460771 650900717 697844305 18377841 468286102 927984180 944840648 658090931 780069185 578898723 956893860 478496251 964914552 919151280 990761373 119838615 353841698 755223985 923133103 818870957 851318004 24926593 883131838 438971743 983316931 22582488 573409030 214407493 975226951 70662212 967733443 385485727 993032779 340556207 529342518 667980735 843787775 641042275 927020854 563670905 640869685 872522207 894126470 402933942 639067605 727573612 929907689 968569085 988909330 493941489 688239289 821334281 881963438 669770463 979585676 553713947 870659255 859763527 935827768 291420199 361039539 489447046 892352125 49928891 956838056 542544976 701299054 41170700 600265964 443591317 557372233 334372421 888109137 376173175 765531911 830945900 872277341 821409112 826141491 349410799 874085789 442911295 864513877 182221166 198501248 910420363 961808840 70701889 914137001 418958818 522908157 160565024 993689583 984768502 991328534 713358387 990373009 89354306 893032887 650139006 772214477 563354421 569108965 121711883 507308016 44152598 732565782 92593578 533792077 139353164 875758543 247557351 818319753 185855474 250985768 688160290 782609378 251217481 632227630 774884277 999400934 972437078 979054417 772840852 831067511 486165578 819914208 926301381 932181273 706718588 730097920 796969655 907058312 414894027 741377908 317660595 905007829 200191493 331287533 600746765 736950846 484289164 800106077 252321459 305116039 478763339 615139794 899879166 963306851 781936842 794584563 880879833 884407855 641599967 685196785 711389170 872174945 922484700 956840941 323457574 325778051 545538847 989075253 890510465 944591300 198140644 974736767 199760339 301843295 895316687 905710590 907559043 978492868 709413701 920842691 318159983 386133190 530844755 665458409 957406004 972966641 743293783 986589666 581789611 940198172 330777409 532951500 180126773 668519080 20768153 960369232 529860794 756737834 612285575 920595389 233836786 978779747 617152119 927155746 883209758 955140119 85729192 938939741 418710564 465984266 903007901 925788215 634561400 900534795 39912333 278529751 882742087 937952335 178801458 724931021 143477250 294739104 227261284 931271760 973612210 991662705 791869600 994963480 907785882 966618683 194278588 819518688 234976306 941686629 721896053 855100329 199068026 795634480 339813133 449519093 125224619 724566438 357409505 713536903 557177079 766778798 855184052 875667269 195532726 955953291 242451727 713170005 616852684 992660337 923730394 938983730 173104118 412989708 668371215 721798549 233067688 567464447 338127194 848135635 547738771 695961670 111287279 814842784 408778768 781584086 242295962 275279608 475855387 996180115 164221036 314685225 427355129 858612309 966310660 997322546 643157988 930752580 576604338 946584131 430436694 490512064 299840537 823914929 251436315 916397790 956754390 976140737 879072764 900223089 801424093 959445847 158451311 476491951 275682513 470774873 839494215 975327343 797198070 936355549 734492671 904671438 800722328 895411849 635724869 729049188 227734557 402329467 247654395 446960752 894116276 980995599 445363012 689723922 811493460 823109242 849938911 882172984 144652285 946403242 771148395 861197055 757797665 909792141 861359698 992786611 890886231 975221945 290169036 550427608 692024558 820315354 31366202 194814877 7535889 56712181 467913613 850832981 163401449 646583045 495374272 577799885 44283355 264634875 644795210 693743304 864458565 929033479 1673017 994580209 131053338 896493405 765196607 998553004 711262070 928365475 487133255 584993969 636344772 731655678 759150222 805864532 863670541 878799810 367939930 411614247 649673883 714343010 388390175 485115007 860663763 993368662 786240915 974976915 912939813 944427833 935934321 990324886 357949640 665435998 565047555 616448211 774111974 903530042 564539082 624692221 799516463 867011496 566230629 774186353 502096224 664847566 770848322 874005173 681535896 895571728 640051863 940451042 821152244 829062526 502867154 658102615 189027335 421195260 860805064 922620142 280401188 354503111 881566653 964457150 601999855 621757985 430281184 664041246 206145360 551683895 501192259 536206128 295945067 791586060 539405388 687023282 874304714 908455292 264734209 326329391 112694812 298647286 110921772 650235850 595069686 767199589 811019704 879522947 539511793 982736739 699048693 864268714 122162341 841441223 442752611 950810395 264540182 631295851 908115504 957578698 769240174 968894231 929168344 976350224 938078226 964764817 324914394 811514177 614188051 982921389 131301073 885098922 109315494 726529877 226195176 270566743 604064984 923586375 835236759 921862218 569113996 758517012 238585983 723605460 896363585 993873709 555331483 955291556 77383757 374706684 586449646 946702802 409207528 960709231 376388700 610973849 228612712 666975160 517322225 904108652 664891673 952546548 28762896 564858946 930999697 997694277 720464488 849623599 267818167 288480823 841830306 952445962 155022952 615619548 344972758 533293395 81663989 446882472 437861970 912953779 400064830 967267294 829012496 915965924 104404959 565983468 366081303 446840789 399665887 593567397 345735698 511504864 250672333 505448494 754071505 828314143 93290164 169705648 559046662 778995272 173096822 963710964 504904102 751176300 638709449 945042008 573641528 887360106 467802854 679568030 718117731 927766695 625788310 737688424 166970425 897661017 197877679 244535814 622981619 726834357 266133011 819571102 223650448 857312430 105127429 785548168 634115430 844379052 820168602 938937431 820215217 940828472 829342485 959628452 265298426 498954792 664169515 927393614 434453913 443434591 440286956 528308575 232112904 392195393 407649360 910492450 604798725 903882719 929434650 968308033 95538720 642146203 624797058 887336405 417294167 626688087 797646699 800539830 684317554 808383625 952617676 958201870 223319519 697135894 231149718 914386754 223479587 946150694 670518443 864265895 319866464 480507634 434483477 792131732 192167362 205369706 661092731 662981250 589402709 893114666 506866451 857714484 546075846 644621163 588097215 878868529 251092673 388276604 183011717 382410386 990133042 991485782 449626701 468074950 625891333 981261178 337375227 897855637 874472254 946334558 365528207 458160276 106394129 630012985 776727289 790753311 231517137 774716819 206902626 254632060 599194855 722465598 97865477 123570227 865212737 893821747 576454655 752894786 82811441 595321621 63294734 610259626 449643394 955586855 184416363 867587890 346555053 479501080 26116946 574448091 363083935 805459393 605395309 933604899 983172809 991967771 988448023 997444346 216921768 435928602 103383943 458885929 98502544 818353643 256408630 867325061 984500603 986598830 361522266 631025334 896277726 965760038 996891005 998408619 107730011 563804927 231988347 646575122 451322390 823619478 831901125 878001918 379404721 486673180 559526540 647359703 995060452 997325585 817068791 876192642 880345777 899002703 556325856 740988201 473895173 736779662 137462044 974904987 203916184 218244368 615413408 746894802 214212760 451099896 573354478 906074249 952416408 986067172 204889141 279594313 966248106 988335867 122755899 792980788 104754192 176839099 650722332 805882867 859622448 891692745 585210511 882199434 544964384 725332616 384471305 949575190 947724822 984793288 689577993 914046965 134561790 587020761 97794598 494668114 316872351 929031633 133525046 796162727 221846998 411336063 941970533 980160318 991982461 995473993 645186763 779847368 547104399 804159951 598787236 752004976 591023206 772800807 766045184 858581557 721968976 984489839 977806839 993991280 375248454 723841018 397392470 896047190 231509067 475833887 725173438 740843833 603441442 664549624 903526539 980757979 345463471 546015947 733721777 979180957 741163156 865509803 259572388 536005791 136501819 352816155 504060444 522415775 941492314 951009261 653399740 796741690 848933471 977051662 864801015 870351813 573494097 649608449 702172687 764452326 982026023 987551546 180563033 512837522 592376787 594925790 107413025 942229521 657933544 823753819 185633045 256280979 870788556 908561743 750993988 864725649 497834858 742908272 606786722 703632974 666790027 837669339 759989835 987122810 286700702 826493791 841771045 843091751 248720218 882406380 342736278 981573806 846979181 981374688 393276097 875416522 331316043 805449836 139256922 554235698 384477675 781117262 201665947 444995106 464624778 799272283 559590021 962987302 321879144 734250604 442648130 508710345 675588899 980444539 669291301 731532543 982430211 993522295 960243515 970113993 139845090 272845241 66813542 674762568 339018915 697616069 840553108 917105690 129677296 283032363 504165565 609943036 326847637 899084769 978571565 992980269 437326249 896019337 157935984 950309890 216426294 471732328 477335477 980537441 40791964 217941934 755100317 776193018 533633493 878454134 47373900 444948051 572744193 769863090 546714076 786024841 854885446 875855321 54409810 888265254 921843299 994506483 848177895 961768908 177512223 435919949 764442711 807840802 580529101 914556961 495647408 510408261 846442579 973387375 578332615 613960597 918410571 932457558 434072780 915190621 359740807 531617185 454127065 873055461 892575900 915202592 957634922 994784841 925431189 999178147 474021305 920678041 114463233 841761263 9789276 89907960 51641693 303288891 998748797 998923163 54104329 716608122 939414389 955348756 882299745 922124346 442011408 874899772 834778920 925329771 657708679 985014634 604711489 778656604 29561471 493254914 558058642 988203904 108746126 655995622 240751002 573274938 27085647 567992496 88092757 387278581 532870649 730010811 618887276 848953389 984869945 999463290 604970164 725706224 722084872 790465272 499177309 531160233 747201497 879130830 856178096 927641739 594794386 717280327 377951657 473597652 757464712 983408006 223802657 576760740 726281270 879697188 810451188 819714268 627862290 869961968 103766554 841542307 129323498 775390856 475428367 572710685 373249358 458617144 611583386 827042676 174474229 576996624 315358516 677999962 690785869 824195564 751706534 804753340 245581378 389342260 188474610 485620420 284756630 420734972 899596231 942120458 873242374 887128701 782526781 912231927 613566078 659293465 868500097 872719330 507421765 996238053 935745688 982185642 27429514 456436422 762635800 974385148 915620879 929455266 412001087 994949118 527013461 827697799 741375303 875857770 370084215 392268693 315644701 958414194 699039445 699825497 890316284 998353918 737625955 853497472 111975997 860515796 684623389 971071798 461873093 625685628 867872800 998722578 407041994 476719473 753984765 898260193 11000665 242977508 755493930 901964872 198027349 835634416 972841615 975746020 937550550 970328036 588682490 919249019 549377217 740828097 940626400 964481752 888382061 969551164 876716123 955983934 942870424 975831344 433188909 974258784 418198892 679884491 738021983 767502603 760399444 804166954 63128363 564831452 127995393 236802175 438523750 736997868 328651487 795969361 111101633 477378399 114257158 653965914 955958216 991728396 652717363 896084158 465855961 588774494 835085559 990545282 28029084 734952405 157612004 468443426 280835105 327204739 103823013 792730759 713543970 723033362 348887632 966780687 231428369 794653452 977384986 981417990 539930211 647828267 933533905 974829733 152911152 344247341 461562805 548245871 472155168 634352921 890682856 955315120 99044091 760591176 138333231 803573778 89445778 968390186 555875641 793445153 821557095 887693759 379353357 602328902 647781352 740206193 694281957 750385149 622159980 992415325 464573551 933215578 840719114 942789317 805867023 970342795 642859599 929968617 230695155 396812067 498628581 710446196 443338140 835502695 662418760 814746984 722329079 745680042 904066253 961918752 619678686 971225646 180643107 640598128 540455506 619031954 77786740 799789113 770250332 947985958 238414121 418096878 464970890 777164839 677472197 769009855 406886164 592380201 179551933 667292665 974109290 999060172 183816254 905440941 822159013 864850387 388510157 688589651 960836267 961832342 655339493 987834506 610475768 774958056 538075763 579422849 173655343 871365566 166809912 431753939 330549069 388746434 290381538 839944662 954914166 997286553 57418747 303311081 71263843 682449202 918680964 919394134 274612105 936539575 690153209 887094768 203229454 944231232 43882522 890110804 324778689 830971167 933612881 991594384 650918442 710684203 871181363 921441167 765381168 831249525 690024662 991008638 30365208 952061417 53266086 394397660 119717723 251319903 482495032 917947732 613922545 661590210 539706616 651643439 570866966 686687831 272809762 961030434 304662918 530339041 243655921 524031174 715458003 716389039 497420374 826260435 192181491 847342195 84526747 130345315 388779915 439600528 466497316 674976355 974589898 990955361 918711324 985971954 37598219 91456283 691853117 920338727 780093780 982818906 666033431 751009548 513900691 680678478 431410780 896544462 677762546 747845491 359645650 760747027 732550932 869290696 802746690 972888202 652774793 692300702 520687013 950270428 412585942 715137861 402392617 883938109 713226032 809517094 650840869 858699250 682352956 855787251 386278532 464296316 518738364 562870353 872610188 911621354 384931680 514995774 969062510 971684116 934791231 991650799 733002054 907074744 516909484 925506982 550899530 590881846 798491685 981507905 690493561 995650254 524081284 636728678 978327498 990189086 30180636 781046922 781508394 886753412 58890828 223623360 870790383 874395196 278441472 921002409 669292777 859527864 875791118 911520951 162398372 278092631 924009366 924414421 789041103 983500663 404185130 871965455 955517502 970385559 59094710 899236991 302343367 980542102 433687055 879490456 939392899 996819642 384681692 915272024 121709607 636426159 657717797 861022179 859840848 998546100 530483730 728745429 332776567 655041793 387188941 626431693 20744820 249510760 866376989 980703150 381898452 677705613 141365463 336026417 913267962 988426469 177449237 566420666 551988246 943068094 273723781 432443795 962905427 971006307 855510476 916091366 706945698 949051460 19635028 426030429 793576881 976601814 696700531 805673330 706343920 809570138 236458603 771321902 67208529 665129563 707366724 933267391 355904698 377850542 498261723 507130973 86560018 984334321 699448088 781692609 870036482 921939028 657462211 719493776 399365198 884274791 911641765 937023726 954481210 978543362 809451934 922890479 280568717 666302200 134108401 901594805 869771883 970015368 209127997 235511754 876469204 988532414 556524466 818942979 338795358 427645001 615218591 847104023 279447812 345918926 505000542 770274510 702993854 741443270 242666316 758063475 446724947 788984991 864525642 923186660 583276714 799147319 195920293 231662584 118806897 634007595 661902672 857494596 646633574 970606642 350361868 434792253 837590226 897352656 291513156 373478620 876094594 940696691 424820469 459521497 622127276 994404696 624056497 937676652 370404226 914067997 46156261 719820723 179525239 733350977 795874369 860711328 115576430 699833445 759818721 766774270 991700327 998956704 824602230 906524316 357237574 942018892 601380374 672358640 888381860 914873514 64316506 485284133 62510669 322165776 267206448 381210918 453646424 685957232 163982367 812837302 397388110 485191755 769450089 797741838 417114239 471406522 734120326 848078232 81206569 710386912 907398942 912775673 761047064 866264702 634562608 844392462 995829093 999771861 270987920 568865161 437816573 907892511 253661236 844709216 70458604 330443582 821397013 999099898 648387947 701026144 110204218 202744592 908636135 935163271 88171227 420753533 427226526 615305030 504383237 861599140 187519612 517477513 204762405 852569682 525743132 868199140 141923635 793160976 741422377 993519636 179522526 594245989 603048043 956221366 720021131 836151017 525553146 606663650 599626831 937941113 826883258 977320806 814751193 990051882 913574339 953572668 606624093 894762995 699599680 873807603 44454076 554924755 224808810 309216122 636234782 638525077 77285385 194386389 343896115 651085358 732200202 882828942 770715717 947427515 225081322 737828307 905624625 920777570 703538140 975485317 393354965 958897139 438342898 714170253 239038990 399940816 977776269 994400763 976721199 978029594 281340672 666195605 540680845 888269393 224764613 720894904 289486058 588278432 58439300 721946984 783009113 830112895 322986384 714042569 884118302 904737072 882911770 929974734 945481828 947883269 433172386 805353209 517593984 971539837 907299106 922401269 180297020 392431176 955035287 967376332 838029367 937140870 535374298 769065539 463943410 837404300 627949933 886064528 560823905 865972423 229632820 408255420 510369498 734334167 473560970 754612563 405322109 578612810 469647418 857902473 843906293 852875610 180811344 775100501 618939649 757558170 907407423 954233585 810092701 910365091 497947789 816407196 854676836 974233903 868674419 937875575 811080892 915639482 732211625 815390581 867526605 901762436 46205413 88586910 410701663 783837989 790965905 865627902 685802278 891022745 885136589 907843687 272867072 705033824 452344123 996091982 895630847 909077390 370321489 637043798 546349086 668315368 514798338 781333844 472247517 792807426 163320473 446159709 439258780 816054843 74124562 423586745 216339101 609804351 147587843 791052120 506662202 789689495 74613020 579167665 645991171 797633955 392692452 511393924 578168450 607567906 37104071 715445572 502526405 925620515 772807880 958803276 218830979 545492496 106011477 922665189 940751601 978481419 303952009 867568445 926726499 966278480 321361669 937880468 31092729 460311850 432178622 962532682 394587368 759749967 225292872 326089431 499738400 804695576 817365765 839534232 22200250 893434463 242379265 726475023 611083566 996771826 964260275 991067532 142062436 222895982 954260139 960373578 179817187 826796872 237176162 729160823 371343695 648895761 968345770 983792875 327680697 792303493 702048881 880271913 919119322 963452493 596749106 937191746 331122582 501581313 532854612 656310985 486550723 930503727 392523905 665090751 513145929 528451744 502894303 522312796 370102913 549862194 516143016 618255565 501761809 734530227 637359398 753350388 462922218 536389267 711492522 792952500 873045464 934522532 499408311 949790740 363176002 562901549 308158188 623422654 82278434 693263307 9548641 336967161 401932258 931575814 460716982 815871592 243588897 266905729 72539651 251876979 473910090 630785388 140467761 645437514 72367580 479939277 920271551 978735584 182545118 290052300 500070728 552287813 794291623 846327749 641107611 867349882 694281606 715338489 376476182 888366794 358425347 722054398 708577350 866687579 82667191 992251768 369680860 869943656 808236256 849035515 297594632 756927891 132856820 927384076 313412917 995210113 716395207 881930436 808702957 849304200 222895348 504075443 610901737 713034901 218863613 583435458 976761956 980842200 624518572 668521308 561710816 591410806 519765435 616779494 600513444 860727048 671427225 812344163 13736150 134791608 801196754 971847075 205833919 285565149 30536556 268771602 86774029 773110108 16113217 975756229 99957191 478717853 580738349 728307110 849692921 871776985 837312885 971825328 190830527 923984589 439735370 715392391 114922945 342012111 737308938 908699281 341668141 892973264 763837293 879421818 563352939 929180941 968522974 974694826 588936730 930571173 299703864 713786795 852502073 903833938 67238764 808497784 469653807 895192336 889897066 993918745 409701257 554535793 611673042 728720777 379510505 464565774 966612578 979059249 64981236 238084043 725152257 904580069 343581249 593597997 458801256 692321086 485438111 730974570 260127248 428088916 859635670 868617434 138877423 141253164 174626642 864203437 192776719 408913328 700603323 998238858 882360859 973959906 849582830 977376641 280500795 447670139 382620534 570421536 832642522 926526872 401815362 579818458 887051356 977984820 155298420 239737294 532673340 733338704 226057956 410746236 196002262 877427799 30119455 688659018 846859548 988345120 311942251 929747719 554465902 992630992 422169298 576298010 211761483 702252405 856382517 858747188 703365735 956248181 355342836 865727238 649611752 922821222 106044060 183094213 315963276 323567224 439295707 892322418 61077332 185903366 279338972 719679930 168796875 582076110 681190719 744986173 810775124 964831486 536292032 930703939 955199870 975557558 183035982 988175008 516820897 991800447 847766599 867760856 357091797 952142664 335011813 914536823 863904934 925875540 421422408 596054055 25976099 656799765 180225558 327149496 870100758 970895354 980180949 985388521 566923633 985077758 984381115 999402223 126969885 215598577 506104003 820577544 123046753 814770892 296916444 431794115 449305745 504453609 707749557 991825935 406824915 592405857 17887634 958071932 396223495 641618867 783342633 832295066 734534653 749218096 15496287 620975475 884592539 977956378 574930741 917523049 428181578 524034310 1465716 985088750 679297612 803579537 177258032 318787607 528595605 956560602 791732935 938924122 775474631 920593789 174027536 346634540 986286149 989340961 112890443 972350267 642928634 830711956 573360019 576586655 525822185 637382063 201183156 400019034 230948533 794133262 822266330 962960938 422273233 431850192 279270950 382333558 623266850 770164438 375946966 997197910 692250844 966362162 724387238 830086943 289954374 823833185 91714258 432091549 327189691 360685328 645440809 988674623 671254143 974542318 273435844 604257181 692721794 761937368 335425221 702252414 239900329 628078620 153762017 539806948 155975893 691368155 368134610 742780208 771406927 883065532 922173869 996351458 252827414 577411524 16237590 302267240 292642809 767385231 895994740 952485195 859758427 930250624 995573984 996300555 570918989 810834670 599421895 725823304 742405502 933564347 46115181 393573548 964281795 967667361 95767262 949304185 970507547 992422671 764575484 857343930 690926179 943394834 187529356 890018451 542571017 685264410 966700186 983322756 804125461 888619367 83406597 792875620 856411898 983383480 259210443 353613514 254179631 965415626 86705077 461963284 507151930 891080046 770940456 944458239 437062150 474367205 615149734 864576101 982189022 997828603 195915746 996541468 576782210 688810491 251263577 541866161 706741301 740575489 724577032 847196224 225879765 922304210 70769028 648617352 891921363 995414773 586590993 786553329 507732617 887037894 29968993 351900914 299313940 945541195 178553935 763034749 329472955 658792994 686159771 755662336 177482073 265432163 198198340 997188565 41992442 692721330 843071902 907680482 569650976 675499635 402772691 556775018 356726108 573002049 677825291 811307399 585925259 875822506 982133085 991423036 726965021 999712264 424453615 947631644 714480932 942163169 132908929 812118591 974956337 994579305 674571533 718808820 414906026 501690676 525899938 598113457 727442671 940830698 475147331 585400815 877727114 959594108 482654753 757302827 282424450 478772159 991534234 997092249 916769037 954340298 800396143 812468542 739978162 974875583 166569460 502451145 851249563 875049096 720910039 759298990 550817955 665643162 952245533 955488166 160296741 865140503 824652301 916218348 973576816 996048803 206289826 752911995 631355985 700902088 178029174 983944324 818633647 873688120 790721400 935659119 289413944 377614175 298421120 718349900 553898183 695719126 339809487 964416624 997023931 998216940 756582916 902488446 393263560 805620790 350520064 766424305 706610233 898649544 997508146 999252499 241123561 316403050 589419203 706001991 392213771 927091264 487447550 805969935 921211802 995378754 825891868 997657902 595082086 976811012 556198275 801201570 90443550 969882732 665969823 705770230 371086455 989052196 952160155 973255368 200651911 812571700 289929081 521220927 428820225 602428700 639303661 786194997 407912312 782842407 733225289 966421962 834907993 994985905 718948277 719290182 437550914 474342859 17754030 556574554 609806304 889163929 144800483 911740623 943093333 950756744 623735792 998879551 848669675 854869118 369123993 636690064 259038662 951143766 10476465 422828600 948436153 974706361 96814131 743153445 801031524 938082053 204540185 993091648 912054004 933694028 664043828 868802288 525208088 566827283 737192040 880365506 555122070 951227533 258616518 423492033 735030957 914201445 312091553 324806924 896079571 904043955 541966443 678932596 740620471 758398397 621868473 699238094 861912415 913233971 48185762 822047100 635795683 943927191 934615047 989121946 375154769 463159685 980532887 992358299 91314537 561514125 150330141 995280941 276491615 729186481 660814762 815882759 541713903 572134453 865534190 970617727 448081439 576784517 881111332 995606993 668521270 827760505 702159668 741300917 232832167 267611435 275938282 955297625 342963392 614015475 967394779 978827200 293887247 937847038 588263775 880710383 156889067 376447287 844578926 995415948 448501747 471414834 167890211 408973730 995131497 997970869 371818494 406961175 815964558 841922279 823676009 973848275 241964035 837881155 967234956 979136106 490621550 720024966 306746373 625301256 411150634 726495432 703586072 972740903 67952109 907724799 543686078 775554978 724554003 897129610 194476075 809068199 127936321 677370692 267661734 708563479 927342122 928130619 734974872 965733837 396979404 687628631 809572388 945731602 514957983 845147640 937613475 997408553 111418695 657455093 210052716 637303556 413962920 614247837 168018567 953129594 816805700 998608675 611606554 917550296 647076348 665926527 54657606 628636008 269725730 423378202 947381283 981336918 874238935 893448782 154260412 178362282 336989203 667562510 433853125 989686074 282932459 699801855 523784559 573679612 261338623 265725647 282560276 599925512 116336126 761647672 985217412 992592499 48125614 466747684 432720003 897998111 851661715 856124421 712796452 735336804 178997303 979362741 634279862 843090882 568929243 841038394 361077018 800236611 137726546 468003960 748538247 960756144 344308020 749157521 29482026 576797814 542803034 701189878 979156351 995679988 473742973 486810231 819098660 893887967 484928571 619108708 477481547 541613753 876573089 892659219 985708549 986667758 254399940 847750612 147759437 670843186 460719318 747681710 507805613 717482870 161047454 975389929 323304260 605555691 614383156 807700096 495544832 712405434 963103461 985150036 825782378 831394373 488486630 964009108 12281525 536514788 14194023 745526598 289547890 983620005 274787451 964382147 396807825 796214033 852234307 862136139 303412635 714942653 536924536 822497162 350651773 843601036 921476059 997953263 603007180 911882921 932789666 999350543 727969708 859730445 797011517 900444678 933931514 961035985 773179362 985193091 137126229 639763792 265452605 927161257 371330098 642550594 262412926 331090948 589359228 673280143 771639051 911600055 8224000 861064251 450049521 686224092 570349740 792402853 565355159 835612415 872070844 995201511 898981833 961117451 475889873 889167802 941518999 978110593 722751877 792478699 441917994 529737832 490690315 534656038 209690070 853145628 129393677 158181501 999110347 999191552 351379016 966468480 496728735 944276036 337732700 919773460 75899992 588542681 942701365 997345633 670449654 864774375 1975108 23914719 206284570 455184259 356652290 769417489 483699103 529175387 456759610 745097365 861809788 984436756 216823345 966057793 735472417 930636695 650626518 815094815 656779424 791665518 208004011 565536198 86997997 148624928 998665750 999463902 90826238 688920866 378520969 882278363 591965539 871507020 468632601 594750380 828911740 897351489 171449569 583078678 554615534 680721267 446440307 761208476 205039991 503479871 342255566 893766663 198842727 849206968 528701662 952811498 658472467 948508047 556682656 728993214 234846664 612332846 707733884 786085996 473025341 834369264 365025738 721752697 292791498 300544708 42626452 650417647 701572544 946072546 583110593 988456348 883674850 909261232 793441848 807912966 84319364 314777876 618899897 772554407 606678232 970886599 734300821 841123145 764021714 846991056 531349599 581455224 836271131 969842213 404601763 787441550 752922427 952046306 808109283 917067313 457914711 999233504 630159772 924947474 999361574 999750446 848096991 987861866 436443928 965429721 240342663 463485180 454918501 629717823 13040025 304539392 697666736 730340393 549381756 755068600 199546791 936825091 769184718 904666816 117849030 770619069 124373782 871625609 958918682 997527492 170812233 241418709 378659159 795492394 19393137 337013265 393688197 920429934 247023720 570359894 932769678 992009324 588398035 671120165 8658283 905277940 746168545 977277363 608021904 644983570 746940170 923986737 477370940 967686620 541259743 630627569 668819187 908745221 232072811 549244321 161595182 516757626 581890551 759511187 562349931 598905792 750001138 836910160 813645968 867201948 747359556 754763169 398389032 925709826 199967731 462171064 827416127 984888233 926285555 966241597 305659571 985745590 801418890 942369744 19078831 204250941 590981163 682304191 272626212 872577662 54970495 767930833 461063833 572243908 230144357 520130714 107275068 989590989 965241248 969538347 940385388 994066623 250786220 697672974 603986817 984541774 224309675 323251166 964721958 986313335 913472628 942512394 882858701 984069914 410895592 971823420 915667033 930791267 569069325 613200123 654243302 966031288 650595898 774684110 568471981 837696860 756482481 933519716 512599698 652024448 239844746 785217106 290968663 291172273 37756679 208646489 164112372 365184831 559864926 592305350 147875120 986549706 142535229 825814508 964492598 983802045 40315624 204020376 33366494 460774535 501765171 863989402 968342972 970811615 84131794 466453318 894048538 934958363 629867128 794064086 750844400 919839379 885074314 996452955 414062547 576087412 117562247 601027299 780270574 808427597 137275647 156862658 843463972 988576140 202277019 511020918 150489287 617366274 682219110 959045232 1757389 877732542 877763366 993400544 466303560 768881270 912630547 964329657 890439327 976815933 726625771 949495067 734255167 828610631 315348929 903967371 628597326 812500021 952684584 998023585 550304729 847747612 910556060 999178356 491081031 789501540 127283956 301323503 25739915 494195602 601162503 808295322 536686498 963406455 842894080 964896419 975002804 981346438 43391491 462146675 318231433 869903883 685030464 813268462 510756037 536508367 732142479 780309440 360164576 525904459 833585221 995922020 13064464 624196931 886656199 898702289 179952359 312838074 768617474 847521841 472072564 622595967 789357593 802074817 327839515 577863947 792584972 820758427 300952159 446032672 479391554 593874285 699445706 824073428 96604646 826650086 813923307 871112106 84673530 674424433 344574876 366514551 423028187 581193477 253531122 597657242 306428313 866617536 652660576 917321673 716446609 810591373 109450140 687207723 376617056 468232651 144117226 624745312 462575748 499717656 956299047 981370191 547794522 773882252 99525664 429882504 641108931 646088774 992008232 995282913 332594071 362593030 93049906 995712288 972739078 975380989 170682778 274079821 22686286 353488199 825753882 918684597 264854112 652066118 314645120 748464323 994844541 996116424 45595425 260002635 882398086 883221983 572441474 694786799 683990780 745804765 48294013 74595060 878638180 927197498 198515130 641376317 633352681 710664596 430492333 447210552 195224059 867774178 803099650 925840094 821525048 931365941 978872117 989021305 254900092 377181538 766398300 795029125 348050735 773629896 942871342 966245110 784960998 867427468 582066944 624774806 917851930 935319430 796161091 941811599 350922809 941510768 989825315 992621176 958072004 973396561 385092228 949463640 30279322 457041763 749316913 768589003 780302138 787783974 397291213 442264060 79224920 256544512 221896502 421058939 743278837 894790555 931854967 970031261 149862840 690895252 356676287 765045395 710484014 950792191 306723441 943458376 679692404 853168885 883172901 949982915 695626679 710880671 583252120 631852377 413540242 591811461 248196664 353808473 541970417 657664180 244946668 874225712 805285173 925155699 466301223 715543497 931547826 975588177 34264815 337110965 307918333 312260586 712423097 809964094 731726044 762280440 95975993 835434118 721696835 864895192 543985508 986847110 216376666 976597423 398814233 442478064 602185647 643889882 975228037 982633783 395360326 490898101 511893410 607813891 560238832 740336912 406828602 484283088 560322825 830349543 434439570 482753530 54943292 759283054 988678693 999466126 497958254 502312914 874144094 881738250 249197100 773019939 158567380 473706433 508104892 550767753 679369047 868778114 63643882 154527864 366018874 890441216 849011564 860667759 507972382 759708859 764584115 875299575 860324630 923047097 829355538 894369433 387486916 641479589 470354724 699651764 640087332 987831267 559589981 932038075 668201555 794929961 141488351 797274588 934200905 951866268 397391960 618484864 916528665 941860938 439107834 479087602 44795776 166023491 250352130 630918759 449336825 522021374 581930758 851700758 390767389 818858068 337617056 413165985 979792268 994586602 506845784 591456637 207138984 507194783 860887765 918014699 83251564 235736260 868890683 992539646 559591470 831389350 147327297 727109515 737845759 959207891 266984468 669418826 769146530 878983875 736828077 926809690 42720750 245913261 858045996 929411543 626247054 909076573 141552576 186102173 765270500 853248639 840661170 887967297 604245574 967708268 311094590 908852400 650972530 872104576 417874959 868837192 455946484 497061299 534406793 543218925 138148111 450735806 252336592 947220926 190802491 695314347 564355330 977858071 696948439 903398870 491357547 504727233 227863544 788876113 795917588 986577757 434438392 784189474 345592470 703899629 400300626 974390416 161114816 456274158 929995513 993434848 359726253 687431237 188092651 365745928 206811534 805741114 518335363 984663550 423142536 566553126 130832463 455476513 75340335 86363099 90386228 449047115 972410423 980968678 387420157 539197419 516375832 629291139 646601136 697183758 199442645 463004751 767951245 851782369 994723884 997049274 456469131 960956453 119314213 190898898 542869500 680031483 363801776 822449374 158692988 915867593 362230529 642864367 777789557 967160044 188997733 564173925 548935170 679570850 419441199 530288922 878176213 987804273 197757335 390201704 253642686 937816869 510267545 588050987 368296058 390390671 7644994 290795468 730500588 760114472 91167714 322547975 132088504 188774132 19556948 502440415 99809168 679132576 401340042 598768721 594237963 668775887 243524551 769796774 865718916 993742961 574369178 598826584 134074686 542789912 998138219 998937801 388505737 775876873 362630349 965036877 831798166 841808889 855537175 861488822 869520665 962031071 756510121 804695462 271919591 930730669 132615961 975671289 278703606 703721507 663091884 850068165 23965464 141031959 210690689 790160245 131424029 312073738 46116279 403327294 857779350 917196880 892706015 998477239 898702231 972513313 876494455 902402068 398841073 742068772 661814769 666057676 525889869 849997741 148937113 832914429 647439789 884198462 779125080 956344575 73149066 931941500 598443251 754217978 810443904 853533738 191748998 205974538 538512368 724558681 156774291 378516312 232166927 642081599 529123218 719649091 880696008 998827891 995388650 997791978 44870158 468647573 158219722 229089795 493797192 982243089 147797630 221197139 972880662 984890603 827794895 934247120 231693676 464638322 182273668 858250209 878606080 882264689 688666774 690143894 644691156 881659738 265410644 881665215 5677252 889723757 467014798 604378428 838412233 991909933 276546428 465288900 388006097 559789242 635701658 968707539 316586740 504018671 243690970 606956593 177196328 889606392 169178328 682214130 914544272 960998708 862161409 889669679 361955695 767013005 712768352 780728393 547917781 869952634 121296322 131972257 53418920 938706195 564251028 751277795 828799664 956010496 133119467 175350754 8497013 505963910 488700120 705979541 733622783 764290748 382505086 957940807 536684979 925531741 355631846 622020999 466955330 831173610 246464885 658607457 352738573 663760652 448383427 892285991 605669128 932504874 781986881 958172987 615774024 870697010 734337824 883523357 65001446 126312280 303763003 746038645 948421143 993273848 189084874 792029763 103727947 533221727 404658342 943049186 492954774 697756759 670498354 798027125 252861412 339916329 136897281 821651315 874679266 984495704 45997269 925962386 31829814 659073532 488750461 699407643 396909162 805274262 83562141 715200434 377467152 736212366 868331396 880516960 767731802 910715443 412427069 490896792 940133520 976265901 343226301 772607284 487107369 488837333 491865340 551339102 57853354 954642615 274873545 777325748 954615521 993349659 705705490 931436086 647082979 692606019 478404359 849054483 330628714 635991251 202226343 811617073 570918915 936120836 317832168 410700686 783267891 893838612 818578905 937239529 858185194 955547621 928464636 995592427 75943576 421380048 225369305 405452070 610797312 690830515 322688468 713523612 479025935 973093261 155148370 847474427 412276364 685772319 922676663 983857844 606743849 872523504 487899241 559796602 449977703 902337092 949678711 991393326 342867444 894825605 807030788 851638945 557631309 857637544 26252641 899304837 954517172 960587949 537938437 544335570 750070064 766687413 685811557 909049589 628730549 980689227 578223206 658386791 203921985 998775208 947308015 996868380 888991055 955252457 819317662 955230513 512854817 956027116 841296301 949487861 726969190 850480504 294582895 516348637 84938707 325624223 242345525 537536240 888590379 957164403 284942315 330628112 201874305 448350096 373233493 752382452 89908460 350631660 919257654 957202408 514228309 935460165 273021363 448682571 357516364 941387608 216839748 501442234 232422535 890258228 926834151 967732110 920308841 977524201 773545020 970958649 207203964 490308187 284280527 358847047 744462656 839244698 222470677 471033448 202838764 786427913 550385186 737678376 234880567 387060528 230517426 597635432 776040182 815375388 508287893 790592533 52053192 387769701 252176753 320424948 766759297 849264268 358489429 610758216 439085151 784021245 806536492 856222518 795365750 817327374 100564168 167771669 865472978 938238860 471591291 515960437 815527697 889389642 399113513 526938008 779467608 802493523 37423979 50480308 793936079 962372400 104380069 771170741 180349093 583321516 465650292 683704878 174714820 883686946 164827445 323424594 105849686 219725434 923931231 985511642 387726143 395670622 483865141 572119133 321091463 670634303 379176809 591462046 55982761 786557110 988889607 990238618 4876761 131564491 476830770 485498315 508428882 777701277 620334118 831263594 165474600 457400206 76986480 278012622 419746641 838339543 857062222 985757312 660957446 996192474 657522539 929263785 189590558 427432399 379433291 401946075 455438984 457255655 935456537 975317057 844617953 852893242 615307017 881769584 645791529 755519553 958762 168768249 884332477 959692496 151961913 329663504 860599379 868205030 431898301 806403690 637310369 975944983 784386493 999137397 154564297 923936723 75226562 823521194 642264391 745864978 105096345 493913694 861998386 871298916 421999705 800764012 728559135 802967175 552061136 824655610 397092354 766740960 982728030 994305526 459108983 814202917 195176198 355689967 166686416 451135067 334448364 526972068 635609835 831756877 399683988 530274904 191435856 995395282 63854123 475227072 860001926 984174420 311311487 569529738 432217096 554152899 23201603 686751007 970965231 992334235 400494238 789736693 466440360 546917238 961238103 974503004 854181517 993437401 842273237 884708389 688083611 834297706 482978142 907431035 448839291 689126248 921956065 959195212 577327673 755652890 547001987 556951360 697035860 765163629 112678529 361522544 799674071 946791578 519856259 610509328 435449454 704016004 515417658 593986543 79481312 549142324 288592952 970736091 638500724 841955725 848351234 877501004 905500467 905598498 155054561 188682510 215324808 681673247 90410439 230390657 894038109 948244010 40680839 101537154 231720785 391252143 674335302 958035504 792181853 855050232 456032666 501153238 380751853 743459905 976600249 982321701 92651624 468684953 62393544 195480589 791782810 895361477 980511533 998430129 834204128 949371927 196756217 382701393 777768339 905886142 647900260 936321983 103504312 970440173 172164763 707144776 21886020 882523115 374549367 848269451 44542811 216349122 435047347 847325342 594109535 950597751 682988499 812519887 714932837 722361036 524240896 607712562 404868274 788037647 570837598 781721322 152532127 479457542 697494519 739974264 771610635 824064664 297558652 538295535 691897930 932280868 378850730 491682783 514356040 565211348 245833868 305691818 633331442 634942855 689460208 790442684 302597685 858693482 252792851 848631420 75134258 965828600 447224530 667891505 633208559 918861828 539083447 851304763 569982307 986377095 902578829 918640553 513274679 877379538 905445916 988761788 285348686 516169691 655521661 816153083 96830982 476041042 977391412 984065910 138768933 330256679 652496894 838870944 401936300 782652977 250918828 469913928 786121360 877362911 525659655 566381479 410907954 868376600 81068092 207402511 808532723 891709232 80720818 890391008 909018681 918768114 397982628 694549852 626198704 675164777 474630379 930989814 601908548 786071022 390482204 953825387 757674898 848229833 685727029 763342198 800937346 921397743 476084939 541731192 160397636 792596195 736033455 994394831 220191497 422708781 736286217 969114878 726413540 752609432 487573825 776045804 389401498 853796634 399314104 427708746 726494062 865733683 661717513 673084413 835427537 877882686 419876910 612265906 738820207 974115745 482562385 864739994 544075950 944559425 760292295 850381165 921197528 928286524 287673855 701137208 455924524 683255995 525515386 995526448 66909941 878914812 486844029 528371436 983188089 988205736 830714371 833514537 471920394 822038828 626399658 858007088 596634797 922718988 958590972 976129956 697829704 952667336 987655033 997154335 314303031 532124516 235872358 324336062 441180185 792531516 209049363 496696894 975082278 992633732 543503021 876042687 988354768 999113362 340855638 374714988 622173497 680031004 930045769 967589921 718114699 951804091 854886617 919190796 455085040 485560916 908783340 914161392 953299490 980128297 91616871 919702591 799783742 826290640 818008141 881825930 192196603 432646898 828911807 960449039 931552514 962505964 848803232 927470434 321125362 738251030 638862551 912999310 714737289 869765397 305837669 402683405 791468153 896570810 764239678 937519516 584000129 829949826 294816363 450194316 503293708 900227485 854975239 875819526 429152277 814400106 457455392 990616007 985384640 995780499 981668541 998270156 378576055 886095220 991822871 996650451 163544481 318791491 536878697 852266764 38564385 333000360 372245964 770656895 314201746 680299519 97398931 202076421 184451781 225986512 880494298 956615568 657834654 858432646 337082313 743981086 768360086 794967600 670019805 914336351 669532709 917902312 965628635 978783969 16297681 362530577 31271873 907458602 418997191 434676879 949047697 972072163 154508545 162109275 951427218 995225101 798447909 932325065 430644785 736308876 284613575 576426826 843938583 929780430 730785508 874872431 852878134 951546625 316693808 601708600 780859807 941604216 253545213 437800947 488727224 665070363 18512408 138865017 693145536 945374103 167850616 450670115 526958185 958455634 876815589 914047037 315182658 540992249 888455498 982841351 142781837 637516421 305007274 365253613 59545653 144198206 596754438 812141063 970432641 974269824 770106809 892996627 301936840 490576243 360380719 365488262 176668188 896799940 898973444 972423408 371531651 835497442 640276337 663572730 109388446 832636271 196605926 539127523 690765250 954510964 732391638 874942219 393824722 780973912 119780759 918135962 2333319 10543630 111769061 672779677 307931919 992924140 111183444 380721316 192101870 396755857 38809220 280797227 783890321 896641674 405888837 931034895 602722479 861846411 430163261 456433237 166427657 877990757 313175279 595728012 665806672 807273831 677666357 974755143 396104767 400133100 700218231 863897143 445675333 603055360 113629506 351552984 514635138 834727076 205978180 979420006 6334465 601131398 618364846 709532824 601627937 994597717 198513749 250897416 191970809 442733153 600049884 660662471 538648781 948755982 994632077 999300600 176430047 871036124 364611237 737888089 532436674 707650051 37219974 881603649 500930965 857041880 228765408 277442133 821637125 973486383 883061435 921244481 744976700 955830679 418903554 690198378 452002043 819870971 240397439 358312820 184908010 256804016 830579581 952864714 316871319 351790771 165547156 927436988 3697067 549873798 811518716 851611743 280236107 700469522 399619923 594970788 669616558 744282908 626045715 949330643 147606742 759551476 211236703 223643233 834435181 865765308 101890267 200966131 545380929 699646274 550273225 561866368 204249324 558415946 844808024 973590277 374521574 873463726 701503136 728082724 683797022 762401310 484369634 547079256 274275718 585006883 283080899 651647980 401305286 969185103 146165494 869153724 485069382 855935431 530819913 779514870 146023011 600188588 41829461 504602486 382704739 391533983 585695354 871362451 271720294 579799964 317219449 438327210 117629827 429358901 785293809 886531024 700639546 748591983 903398313 921473140 660600149 708848998 189506542 454037777 210911069 618984344 840557001 961967971 282533933 551756625 870392288 900623508 542309272 673239653 709723303 858848709 817555061 833337216 393979103 415867664 47084846 996276824 619873091 902236380 163897046 757172322 267113344 501351794 427094349 520359079 377184416 858169932 134571541 365870571 991869023 998911566 791525473 940571678 549327304 833956457 579450233 629099814 678227910 838804544 865977429 873599021 146737836 911568311 669360464 691000357 864187720 913092696 698912475 937378456 245149074 389510983 469833019 833410329 741164334 758137201 289285242 801072971 786197304 825795788 92633150 448108479 113447375 252634082 865255706 945697888 74718726 608781110 15088619 303171760 771960177 842367305 184366491 471469872 102650401 658987544 857635063 898157991 909669787 974002366 125951300 373136855 577550219 770899735 29480645 114645194 614861812 983658716 792764771 837076223 851943438 923769790 94815669 278727732 195854979 542185088 444251438 661356675 25688987 621067173 73108175 926817632 295304595 953144917 260403798 631777784 330013345 541152570 927421387 977378082 361115378 935800236 236094562 910170379 242256336 913357875 434547454 537713525 555705325 963375612 798951997 968574426 816023727 856642565 700741963 714678154 251543378 626062049 908635198 915215414 317590226 404042008 365576564 688590620 749890504 972435018 213054227 608605757 572978767 693997147 730457938 892011197 947773218 975956353 12820528 930734306 401487925 892806258 569266718 974685322 40220101 853309959 181250400 490932807 963463671 978013708 192669473 828026297 87750528 271888159 495096808 988215984 500376539 991624056 317454725 829045751 609930607 889280420 954446818 958233885 708477490 835771504 676864744 985963573 793539940 963512400 885248731 966497567 301266705 359973780 919948303 974201691 735121068 867174655 65312241 187523042 471739573 783156722 800187199 939440443 31626749 47698827 461252210 819983362 723665249 771005957 133839596 176007589 557429128 661804050 578992069 846078068 451126584 721582420 71541692 466719452 410077187 653485880 759903075 771342900 262621819 500981900 893812272 905585579 105874702 356241323 534288354 786116372 485232357 490789751 471758660 697009357 630896832 872201061 937724563 969531925 26595189 403955786 905038524 931689556 708241103 781193876 61216999 286387142 599211552 741660027 864199699 884502202 529534517 750111655 904002521 992412784 311164053 446929684 156038662 690689956 454996174 829986470 411342623 549199627 263990221 496980339 917106508 970227565 814266439 964105319 245438950 515474905 945291971 976726523 544512589 757977359 451401874 817965844 939741911 981082202 148510537 165303216 682540626 991689817 489898065 796974425 223312900 374237690 289983378 755392759 97019662 844641942 206499606 532627688 893562144 972717211 484168184 713885959 669793200 901945226 241558548 647973410 537934597 776901838 297105577 496297281 204195897 681010986 213930524 307369175 637447886 965342829 531884288 758453954 799093414 818650953 278484367 914624685 936611705 969640212 83241823 547664100 999374793 999770361 217604106 672382508 159199377 196742502 339125738 351839056 843366088 906295648 329918207 730197555 868164891 899922203 366365071 524922135 850497834 947856446 268745242 969599937 868908285 977751504 333004905 578569757 766409405 984078112 983794805 993782263 203299123 961615232 863388104 980897089 747556453 790727650 460181389 803182962 11453346 377753407 303663564 408517479 704682110 730613038 601609934 923777611 85284749 522799759 111092745 438972684 920047762 920344826 243754061 362299822 991805800 999875046 731778115 991284579 122851372 594297410 900320340 992916069 74375136 334160215 949455779 960123579 254361054 985598185 568047744 796520310 936968201 974047966 437804880 447557900 367233616 731394737 632557695 795982352 54191695 477150893 832623236 980958773 788368407 839124192 495770487 751182520 573692467 691675801 586281294 666287687 349902908 963437755 614161106 709198804 524119272 783281595 484090550 889873551 152632637 542623857 205011692 506089695 493170329 949342238 237903707 398570845 316214647 813494953 118734938 795382756 79406453 652848491 900697357 903464353 660105378 989010721 33975819 768127717 878691523 967103296 580439804 689644047 266101285 635704133 153750173 873766898 348154744 951407013 978571444 979439710 436695261 660757512 660893908 803924850 763275308 926857716 598547417 960892924 829523818 975097247 230932634 330894033 822235322 885197443 468003675 594705903 973708036 978237148 665602075 934297262 829213590 847547083 826562506 995596275 712594781 719223491 588119354 934778891 336723597 478420059 380730344 456881776 705755775 802493531 561347306 609877164 527810811 923762567 534065980 857236763 862994565 864797957 767315700 860448798 968902437 978921430 201719279 667558969 428543769 790372133 708476472 889317617 117562142 429195161 205313184 350522971 927787168 932479337 444847594 741150176 494835287 541396164 797627626 995620197 879064692 992478208 383799004 568509241 603799273 902995378 490298779 552287358 546252968 625983510 851731783 931197702 790183855 798211301 77259380 654436928 197557996 308675372 48806265 748332696 640653773 988423493 28585896 548983170 222386981 242459552 341511790 585026640 49675452 608715982 989544139 989871943 197754284 541819621 728273297 813136801 749114370 857162396 600220628 638174827 343001253 355965775 41224378 846935673 131553626 554993922 896172747 936683619 638356268 729209631 703756842 867156956 417228480 920754502 131855831 461909844 822299492 921557863 972018597 989768377 335187856 592107142 616924671 807317335 426408752 492272475 381910394 450236877 238693119 926041282 805337783 917422577 535067964 708517536 115488627 636619172 264906000 456502260 103033784 562317952 61310701 849597177 670806539 839110862 631810909 902907900 516607391 976250577 800963872 851285069 664611288 784046515 191517251 924172570 87345244 96332041 115769546 144955802 955760453 977681974 890943928 908215054 614901983 840157017 716940106 995403948 962827996 969668791 812402769 886404327 138874021 367069457 10324821 579728280 113549301 927735557 454741963 808625433 679798700 992804307 226806688 667125083 722499445 799407790 379102012 767388399 905560514 974541367 624835217 955017569 989148402 994553085 379733736 894265041 260164945 399454845 695047428 895455345 515025968 636046398 819353211 903908867 37884378 726037139 442255833 651418989 806974263 877776389 467466762 983062557 118342578 416888267 871994813 932525750 375758839 853145317 381997640 904296675 135258462 770699105 365376549 534906504 206450980 275652515 299549332 796111273 146322091 509827689 613381582 948504884 810718667 870401844 334566666 350726462 763074387 792546274 922856917 983337342 659148203 725878648 262837157 850391025 398817161 924748644 228581165 539888101 237908054 581473387 917961864 940532716 441390582 482852710 111908915 694269319 724936400 850578459 66484241 398846333 689704939 958872272 66074114 914418998 270137735 593871180 333909111 851460627 898127875 968064105 710474542 870252231 595324266 722535509 786631606 932169959 208893671 592303608 105927046 753228615 583603033 802439425 339015955 511014922 433767545 535414286 636125443 922285553 229273307 988519954 476364543 939819603 543019945 868147510 244342569 328926528 512321529 804371869 828248274 950314916 212806398 213593308 552010472 874374394 108970149 914140643 96987605 260341497 570338972 932661314 10703208 926996584 945977354 972841524 411033474 856513668 943263489 992463558 361264015 462475273 80556664 673243225 855136142 895372002 11637804 583429713 394428372 907078057 744439045 925117143 500024313 941708708 216735207 480877896 603704589 659547833 783780126 990343744 359084805 874836467 633215922 731073063 906161808 941750583 822857597 835367254 851577295 944440862 885291465 985433540 431627901 914728147 364794798 439579697 258268053 591842636 858471802 934829222 843467401 901734178 254281821 418384696 454984968 984160995 151648311 752975064 5900956 310704135 719769244 880715025 251632728 295756650 929259589 959831256 715570094 976141580 205380122 753082065 124892520 822306335 202291882 800903836 941973047 957799653 344780619 845935897 842756676 879647553 541919126 772422370 592868446 810549241 787174894 908692166 680719281 838497239 488764667 747191729 760937764 896177469 738419498 883105985 692721465 706770154 626941046 642238070 829687505 962522231 750653826 967358186 640805484 878384587 549537298 810558964 747228291 801642110 537718217 824718410 663452870 912035015 505048238 720867996 489758449 528850135 823815905 994190824 923175537 959511282 905907410 927481176 579481303 759859335 236436578 992708976 235669044 904030530 278399836 454246159 465162462 678439238 100144712 286350923 489331574 834896468 999964617 999981864 562477418 749160741 231109713 496927912 288946972 808171440 810311852 952144570 426593648 592025691 23225952 538287776 485881671 510181911 836163399 893359774 666408545 897939327 6361109 303979377 609892925 614083256 856763961 951361138 246080008 770199427 861241950 879319223 866080923 940950543 907555273 919850755 217776848 363678691 465417621 931989525 190019553 618763422 962021391 981269878 561114586 668224658 170871068 589149891 665172555 686813995 953504907 971765589 720178989 820300637 793505516 891812219 105694734 631578062 778016205 914400456 801046495 825716155 482770570 639959824 383803311 957388925 332271320 881999708 422085886 941827739 754302514 784738845 492565614 873073320 864256289 958471191 203664755 457330096 861268671 944380923 240795166 645249750 361761141 911219870 252183373 718129129 327283701 757314069 486844557 989519582 581117966 857795490 417587957 435105645 677328127 790384872 67450977 425008180 149772237 500965948 131573944 413505563 623418609 930949004 948340670 996096652 510310049 620627623 444317946 832663556 290940493 401183289 762330991 854544828 950890966 991541229 15470777 667765844 829530701 993662873 613833227 636383356 261992364 908608346 774600643 775730739 471233005 787852352 767505338 901321715 419936921 602501125 458949393 801434951 857599185 926802290 676293771 697127671 360771416 461425516 372531396 693764132 394163378 644899974 920688965 986574474 514391778 673579455 525533815 982502476 978646831 981694767 819169343 889135594 888128432 995499623 1651763 642709709 524524170 813096087 417627128 442311846 701462357 849235917 556134396 890932027 178214044 274553235 797795555 899832144 960489417 984811747 662064202 732586520 440884283 530442486 466101586 821177063 389504901 892347522 162111788 398144795 387255837 945250437 957539346 964169652 680799236 791448763 783765751 953933987 548330908 622050293 378657392 992290457 633004123 876325498 308702887 651892634 999070988 999433318 661107759 890269740 641507042 809541283 989218125 996089155 806708037 831140644 36164484 96546424 911405057 958450631 854637485 952337451 718781934 890707910 251133820 808867913 963300229 965921707 924826205 962139736 924737523 987078238 736768149 975394593 396830029 410040684 653573329 968256005 756262476 764388256 373697419 424404212 43432110 118778904 654374991 686545353 250106687 567012781 313730909 934155160 585311949 640830580 751199692 899856206 81629020 649556436 244154586 937725536 862922854 956451169 566293181 991746962 83394503 884693941 929705013 984038716 146758537 687476883 228024048 259171194 26220253 35329799 291598091 843078679 450999268 591117148 913358922 920236217 641123541 703841678 649080072 746064426 619947335 709952757 566358445 571913451 405985328 426524893 607977116 931452100 703406707 977093441 561944650 851090032 185509532 517021364 318690801 614892150 63694680 483528384 418982577 511547423 874971645 968701038 605165446 631320148 643991132 673739922 775147612 898883918 91213226 279921967 159439651 931318705 488620674 496942426 548919345 882172070 117623349 366031772 457389422 789287317 550678597 685806965 937979191 939187564 370156730 770050872 335988552 964075215 304325787 969104932 55234498 435348504 70220033 357188422 812600894 997307991 988548556 989203032 670648322 713139659 211169730 341946045 107737121 110237859 223579316 618443630 456665448 864322032 353573443 370102544 810638525 931768225 944993748 955173503 227549357 663265338 855030163 920588977 541036616 597579205 857963919 942748135 782182373 896844050 699416623 808963490 58243251 834337532 748582158 959226923 635425002 755503928 806571576 866732310 978738943 986436844 926749121 948377158 399822963 832490446 533343843 661612511 917331548 997411660 198478498 913899341 375726402 479000369 206756252 463367288 169667164 407510242 582318257 999325153 487463135 542360442 234869772 617408105 8178561 623894211 619681743 999827886 970133383 973834905 921001112 936703845 940956030 969463417 357234779 553444920 182017030 394471889 801499003 969779762 791505643 928322004 337207136 441801426 547036101 771303866 507996969 912595354 967422135 987184120 809617094 936256600 281891946 938860741 319076837 719325378 100316322 777721464 282772632 834083207 196608014 383665803 318994957 503976842 795229709 977163044 915242481 943089270 774533519 883825515 991253673 991576640 756970572 872533263 915669270 944107065 852342574 913908348 998659934 999424271 648003120 817911295 704093993 801183030 207969398 624649735 894421766 968992563 50250232 316374188 396007955 489449654 582177755 998709429 96865985 912451650 75287241 520208978 187423353 342383171 283373431 484693644 236547371 961406434 785409923 992895430 556353192 665420018 962426031 969223756 224371645 977945646 392359723 415218249 578514017 885684445 357770425 669685877 980371877 997142562 322961565 770971184 69763258 780339394 888850261 980784705 835752702 988267379 680076035 962526428 2767510 332143108 170963778 192316265 614253357 658237643 316676824 364068265 313278758 501400080 962034132 995019093 571128378 677535414 516550768 892969579 531984971 785271722 276869352 714766395 499072556 607289155 656416289 680868258 104406775 324043473 394919323 619838369 129152737 478918548 748016864 766582902 892669333 939665591 74813648 715771878 432570012 818648507 451443195 640480073 368321840 904050447 551175989 835733027 347471359 997946383 101496919 393720131 694894165 956641010 601491720 899666075 772065708 953596490 484673595 878970697 437618720 496818790 512442255 882711873 348639536 827845023 545028126 964642835 735163360 786287671 238113131 769320709 64039838 328176602 290647840 802309861 508162014 925174242 546242701 756987870 766497360 841652832 987511621 991247207 920139911 935403802 439821123 905826251 920500304 942583188 730424245 851633249 105283844 367063185 805040775 959875990 332654837 896752766 364093219 856905159 720305389 932283775 346868976 719131789 121938205 376624652 620511232 943819445 404008640 479916839 968241604 984353072 600062277 707956773 500936858 944796290 279122944 947005032 404592568 792094275 544777258 743521978 962247713 996935812 283909397 637671486 320957704 916773581 207297748 816566533 406806134 723540955 994521970 998604650 117161672 489170187 371357140 792692981 22039866 451312882 385854379 818871346 549887811 776375872 773735282 778517813 857170573 986519069 555907428 562933768 131794121 630464267 445737146 988363924 564396855 916683408 210201960 535452621 971627730 978020219 70365076 883923736 15921432 460845073 737971359 791505534 54611261 607489909 908951127 966280409 600959529 647131381 216659448 324846633 597201998 699474908 525276070 721403295 560070480 888700020 363557039 845163504 513605258 946094921 636051918 925146971 662130950 889686144 523859252 734558137 233080591 874862970 531288399 723732412 395199004 419987989 174287240 504275235 986595463 997151775 666106729 960496616 166200467 945652350 70394235 633433574 834451940 900564217 648461658 906390473 625946068 785411039 782706145 944692728 271171651 420770130 352644107 561852176 499700195 750105398 475338154 874542124 673865836 850723651 461748232 694163384 669534579 921722207 591066599 795007042 268855042 410503743 206382195 621632608 512634362 541806797 21366634 455286863 202440620 722170796 91645692 659700886 710068462 914720528 276421427 980705762 833218459 951308694 306971454 466504683 951626647 992428489 566379906 999630047 906473246 914207326 500286541 723303777 752912390 793701812 744800286 760755313 633930714 659313039 257853958 839321092 924236231 989462514 782407971 860239101 260347769 289615850 221226510 744446079 504371657 747792056 366973098 496863572 887368113 893270494 699503317 758780201 530886926 568809789 211690538 614774777 860367894 893533603 366494069 490908631 47415275 441540382 880523026 902894822 440648311 633901489 18907461 71481188 68014017 370904877 328766241 569010427 356213852 631515196 744253013 902022138 346348110 988877163 994403898 996005823 156630073 573053898 850794916 929941819 777294346 960763924 290322812 809646567 438347210 735712765 790571866 877731681 46651898 795093945 10215192 472336478 831303606 898386330 375290560 425423360 120039261 445340722 504948376 581468907 77551231 180410747 53127521 664516988 990420126 990769201 820243247 862088928 49162083 791316912 147357479 415927453 569289696 722848283 769857021 816692972 498726358 977941372 464940960 543545360 33648174 718103561 930781820 951678221 940660123 970322186 507552849 635030275 162318003 720924933 982074672 999219183 141835190 552596879 158542500 195634774 453037075 898280824 70983169 912875247 954916134 978607982 830658571 924876611 539802521 695923927 471866602 925518863 748343200 856535915 646751489 706553951 747705855 813201318 513383132 515901029 465878080 478842982 38225380 129732830 378234335 942744081 894810021 981162483 634545852 843185514 589407579 659313862 612272377 791105989 992327576 998118197 10842252 166143687 53764473 776235641 531334545 967543526 743205210 890473329 57676291 773448422 872713565 948766249 267443745 305674716 672505608 708449875 459085771 526643401 504832802 971386558 242857640 712222374 545586926 829899174 622442161 691585621 769761822 924596610 722303147 850719151 550819350 997788596 227569787 358732082 772014296 925051895 256639213 486981565 707220428 867032420 82232849 608812886 499853277 805155807 217202345 755368783 371463904 451798975 596477562 903736606 260209203 346943400 771871809 831445173 449119035 471545480 406832207 697263335 339483254 485320832 512622198 898113200 731809455 979597665 810009567 905932722 976924940 985645727 545237619 943782648 644821813 761092432 664389922 746818973 805713618 873213260 60572303 377384081 416669115 492013972 526819525 810944593 662221792 919034868 49393694 657546284 943653961 988154770 289623593 851943654 276019384 910899244 337622997 971750986 546759141 672580863 269333205 795352737 734517572 912612812 382361293 474934536 630839326 902414128 255860651 555698777 984346261 988599769 401117907 423706856 26202583 407007840 469819341 740630693 347942197 875588772 431490689 833556508 240690958 895310555 712381850 901242100 269142637 979063301 395188614 909601531 306087263 785870676 847047265 861904276 872128271 918671287 984310568 985373828 562745693 756592584 875414327 910597867 474581749 554786489 167355988 742960690 346222614 974171136 219370798 676820009 747056491 901536422 492942566 952913668 680078228 791462811 188452852 392286089 219898292 904794374 613294157 645563269 953982114 988879360 706511794 726581023 537214184 610781422 866463376 951132561 735886752 988782080 646235213 796809500 806394451 908907712 228948586 417988634 872101749 977299284 356627840 771660515 448659087 632718121 861477412 867623495 367561877 533691545 384819084 636397522 691442595 982472670 690417365 942869819 160923941 308141695 419254632 618228520 718323817 857598892 417030696 979695047 284931199 661327169 774685409 850138535 267367164 547899709 452526208 934463747 372818625 534231195 272513935 765311743 362349052 884854798 995834683 997581294 698779027 780579282 826472795 829610551 577429171 658370512 613058825 863556569 139121099 517715166 711865604 904752104 279288150 984090683 395743893 574899569 585982782 885906445 812444662 862807483 229525535 668225832 325305573 336631972 677937845 870858550 97393932 500169674 623826445 905175309 760104683 983929243 499674229 645153356 631653649 861964904 862495935 994537655 796050820 936318305 469020808 516150456 141841628 642281930 551932563 575481619 21651555 79363648 793918285 872128709 362491563 505922827 769062578 839672206 986669902 995857827 295553340 722331115 946368416 994047910 791679183 982139011 667896864 880009026 537902226 662260076 623927325 851749654 238331204 583502565 285920652 444504637 988132626 993759815 528123309 616770624 768289958 916552340 767126175 888064357 831619945 951665348 215822187 809245597 75207019 215013161 299653387 432538010 150249150 388956119 748932730 766739972 737101261 823213031 244595732 800725451 657063396 864814809 614591583 880970922 343162932 850263203 670416752 717471569 656259027 720531657 428842783 908615383 8009211 159437807 680499417 872581563 374210498 673721605 66699920 999905819 967279778 977938671 523509967 846949251 486421118 878248049 593749609 600406870 135460127 894375474 415948747 490227204 565721216 672464663 567179091 604331867 174388259 904595943 739975179 798602088 891697055 903869543 97645859 980248693 860933138 908987933 668436109 761593321 190313594 358633036 618716372 973530797 449307332 623352020 524548446 611061201 398612207 537647873 531376434 697351066 917962928 958134788 54288314 411040814 152049854 619112135 919980872 948868283 78214778 211244005 627852037 881805299 977948055 995036136 477213612 650839180 237228745 575072691 653547555 822007459 694085695 873221225 479373327 520134764 205145290 283290127 515241679 526888727 868900293 903336336 353979312 656602175 792822246 796825546 791636832 902305092 501599639 929367294 84425504 401694066 51218017 544484773 145504952 412803288 470396132 853764741 358177791 596803523 243051016 491726359 757327594 867462835 447434422 527957045 644174010 858999800 392990650 411819394 338275912 523344525 975447092 985214957 95227941 662433731 183867083 364224079 821778613 842209173 416698732 531639886 287081619 646102981 454577916 630980065 864994674 962184102 996423531 999125669 69932913 551002986 35393240 940733448 710327906 992009383 896470699 932719318 830996712 905518548 236930609 958066258 854271085 910569465 104083005 280938796 770288903 833074412 343867708 887982458 21881839 403271058 6590017 586751005 530930581 780621626 659901490 995975937 388352867 566823858 501843679 576830621 998412188 999341721 722028831 864604557 359096864 822080154 64862414 282641173 11032039 754036265 556922606 725462898 941043171 954621939 346488195 445930916 905664595 912961449 204373984 244490931 379661666 466126562 581074207 972263791 406049473 594761940 752960991 887628951 870515099 909271144 151844523 582176840 892044107 934511405 966627928 990623799 381243081 856983396 13446214 847505654 354546331 915606721 839693478 924575394 401073732 779540758 896742606 985085332 870465331 932647308 888268284 902461766 338000235 554515946 417024850 586853735 694174524 816460683 25061453 918123623 539335906 983867207 381227129 707056075 269880907 699122755 230086296 878267682 407447011 695816635 781694871 845637970 524293416 952533818 788063606 797604688 833649884 999980144 512810636 588918161 884547838 893325880 444991415 829847918 861139241 876197277 847625350 871590144 637121414 685452016 969317787 984361866 752207251 798266475 299646307 395278109 766298781 981433655 38908948 916398103 150061135 477939802 408922973 938567224 531946900 813486307 932108546 962353964 681832708 927060586 412340989 923157608 642291191 881472385 287206653 893452211 320701102 784803815 348782023 971551258 778530413 874971668 160769680 428776064 165059002 711793569 558847435 988050384 877341396 985282846 722702410 911489892 600933517 735028369 992161559 996613518 838596315 936982282 8651339 938484671 950063639 975153572 816567602 979848185 534584568 565342816 403006038 534195036 306998593 892661627 986822242 996729976 854267251 990577523 926759649 992800285 789442205 960933457 580370104 622406563 219524511 485305889 877287335 897637331 923512733 993062306 318860659 437676315 190052291 918845511 624978938 851093724 74532798 472185354 240300756 788114843 894937380 946420582 184539977 683908485 932414333 992122233 814353995 984620468 71094621 223232842 706479834 813111733 602351749 891321016 53344352 353257395 686646204 739869644 352792695 470338472 412948605 819862208 938051499 976418187 779008294 873037667 635432081 762194014 187889192 976439364 428227890 922749601 330823675 502100753 382516861 512688065 170249704 778962940 729973504 888525888 547746216 793824129 655059465 886924792 204423347 376809308 824638883 979687389 88504792 211782619 562074593 776566594 652200753 677484600 869866319 913609512 977629358 981957054 198205667 410486385 893358522 985988240 746956927 978276120 117517700 432241747 102727559 903789445 887390702 942069027 772354698 827898709 171702954 847083168 61603185 300456005 754555500 893899269 590105370 787391756 18075786 911824735 942918413 984802148 894760138 947400788 677019130 754974845 242419547 847303930 932656363 946601143 55908568 796679654 372242398 601671956 141304391 973190336 350971162 734558027 980011865 991797130 686892323 701136019 153847866 323215945 109430484 584615888 61789069 340473567 500212237 826187507 532954691 571954525 549945199 847617815 315778581 888433528 441598181 550042240 505540976 713004030 502036526 925003718 730822382 895938357 686229512 809529201 635899595 835183097 844705546 985791001 709148023 832066295 485428843 733113049 392869229 649142439 450640647 495384158 241200026 495583426 439460711 980531580 261429992 895167098 21758941 338567572 611063689 758631043 276077067 855699969 857558488 981166545 762736634 981247455 882555530 980284206 100681385 658776886 922465838 944114229 535123823 578939169 948323745 998887486 998316542 998955214 941840024 954472633 943859621 991135340 422353465 514831050 350199771 787919875 265908336 804063760 906871715 918717495 975892020 976794367 790994669 808883510 754608088 982642270 239761430 375410865 554070399 877807477 587826689 598731656 75754091 476073470 448389115 826431760 233161103 663482414 219459731 376992750 145215873 467211365 579003119 933792163 536919738 754193629 668112502 806598012 965719654 999624953 494036848 806900795 565204561 759998320 805869392 999180540 671923912 754320289 48829613 989619143 136180287 195546880 711123750 855901005 995407293 996955628 851048093 931377592 54150805 890937795 811112000 864415861 524078230 833791912 248890596 549723857 704101965 786103861 364680070 365216765 518433697 606845149 808707766 990438998 813446909 999533362 849120830 981747528 464211230 618837448 923434634 989316196 384427147 698273889 355338951 762950519 516481773 948826182 62569266 988703858 241433555 319153600 485006931 546010979 300536349 642411714 643169411 887514233 103597852 564279829 66397896 83632287 227329276 476511181 897279599 909873803 368759913 756407940 158509349 789521973 239149955 331257981 252855152 965528773 4943362 909096280 475191252 910442393 200811116 820983666 434058028 693112042 716229880 776790463 322303563 866260892 846786594 916582906 772917993 995380638 38974787 100130622 438016765 977880783 928102802 953187022 687879413 763369938 855071199 969884057 857109574 937848406 67070806 241080844 10454634 389219640 456618202 579433036 514002695 650063278 476628078 820665106 618570339 771403566 953639372 965643961 362605662 982682954 331139109 765869473 748846586 924106321 650233435 857588973 988276794 991532700 879771756 887207708 124443176 772937506 385000517 876422540 261452937 271880221 49376292 135237094 813466328 960965680 859540653 869473296 517556047 839211518 449046529 977474734 467899012 952146772 990797293 999559770 797987336 822690429 536471651 844991993 648461944 875733154 387829184 417207759 307692682 327049753 81757927 870118392 33639760 185235889 245880504 536188082 51472095 817575804 369923578 409895038 785246280 916185560 59554860 407804630 79212138 432610876 765545088 771328750 252058332 929844747 851082383 952685925 373801511 535959351 443046623 599134614 819466498 923432001 182820452 914677509 130955538 902774340 589660332 791768939 331765796 800044883 277334628 946302500 105405607 688678945 273959580 638175949 959428868 967928012 831253770 927559793 150611897 258579729 417384245 779947067 781825737 852191465 399099833 418177493 21448887 622619260 548325312 891997501 491834916 533207320 461329318 827690157 660540726 810809789 779545699 956056063 766439053 900946308 293000316 407263714 518852532 841140304 474206921 919688569 298470051 831555867 696117123 778319474 910879493 962226593 896133324 984320070 577763525 828327577 273351952 555538437 938307746 951200678 925971433 960311671 735761274 847550993 775206799 910731648 942562353 981355215 935892561 986758231 715426543 882527950 288923821 522440260 210364988 634542277 915518636 967459759 701235978 815320727 915077634 920966882 992759916 993919431 629526954 705271098 616270244 843967893 794936708 929747080 722782756 907955631 862843415 960863815 163847420 662645107 719728294 883400932 483887621 881897434 573700251 719826150 949609193 969010525 816759226 982883749 107584586 368240860 74664852 182097873 528632153 949721944 38255689 588488108 305260369 987517896 87044067 490060449 842598757 926747072 683872771 944604157 587067610 980756472 166738723 358564428 969246272 990020999 896759042 961092461 955226221 987137498 661016117 682573631 469522008 617895319 264526738 265169070 892567383 895306335 9707605 332190218 991986482 992223572 93862704 271966766 904003538 983749410 17449703 244813698 961724788 962881782 914016160 975792207 789217084 882301176 370216463 592410113 152480750 295822066 175197429 878189221 866723871 921330302 542152656 685970825 920297513 972194511 272744790 386783152 710974678 943552295 41416083 876908502 24634438 93718133 451260245 806433029 406802261 732193947 239693627 271533994 7791610 34098978 577734081 883766061 923914528 972994022 83011765 152275371 118422179 917495864 94621613 503628657 300894148 922678169 299812633 642555423 259413149 994160027 940712781 998769184 327757902 709711448 843041109 953557984 879359506 950360713 972760331 972907882 378425205 604868018 739083641 896877192 633628935 867669689 335253844 594870614 35237066 332891818 650957768 859001598 239349846 427823049 327352802 927043848 871980517 925226367 288999166 968867073 513339867 830097246 343432336 758629625 987376176 999399577 959657183 976020432 299450604 910542585 645536380 908343803 558912541 918315590 114500006 632859144 44409254 862741598 453650431 861801142 650225554 844239932 72299775 280800454 246497720 324242424 107862989 641680076 866525285 984122381 95494000 103097581 305501291 633178993 376053510 733256562 60037281 113822784 417846334 902090473 593845181 890553346 322272735 858025433 565705163 749924223 496884092 695175137 674026935 835190145 737524784 983147034 486301990 736579671 595093853 607555598 401010244 724655291 621288766 803953931 276529083 631125869 534357246 980900947 53832584 371766052 68608109 904521452 631634036 685747994 22668662 817981368 853277541 995460299 874277464 911874467 629016315 766154770 257215582 528899550 335422795 335597127 320604240 772523889 133521701 633553894 673161858 925993662 46655061 807251023 26284289 435391963 855709696 868127298 668905492 729103486 958677704 981262413 466174553 737610248 202049753 423809973 918382729 984749323 216842315 412330455 234628454 429959913 634174009 942967027 243934772 975587564 906234564 959148047 746085284 837465950 55272737 331071253 52799069 631851985 9239527 73712120 498576974 862852510 172763894 356178628 545514225 907813730 32202697 604356286 246193038 831660921 428793517 710350100 963798723 973730789 223599936 703005954 437250042 523895381 205321454 629992246 88222257 542004952 67414912 88472694 516053754 972657051 203139164 707959046 322164132 410537051 36160914 708801094 63322512 601330474 135102236 154954880 395298233 941994850 894551548 991267680 143081765 504636045 649785037 734074506 822401487 895531237 995206831 998018183 474419070 870328690 560615572 731001328 864478858 864541874 321962906 868792262 53213625 357370961 817828070 826959719 254598690 453270004 509074144 512850034 557413440 948674227 804360577 907756060 447871690 928375935 405224026 819940516 12559370 377132279 802088401 844301614 951071444 956840812 246861333 554245757 735232877 749901487 7567804 199064972 706891884 874414865 180045609 639485555 231549705 763381218 402575639 713590985 532710292 673885666 157468116 655812910 649406081 772435827 669129620 949296579 842778860 935692926 91138867 197944556 123982690 894830830 372086801 533605666 199898765 617716008 990696143 999043675 623934514 954134295 584821105 981516107 508276836 641749518 378242099 873076316 357355619 963361641 687583237 715332909 525987802 929140060 930912354 988199199 710060192 998525410 766229250 871081147 643404762 872452523 842140638 878890641 488667675 895847895 874791894 889006888 472217659 494899679 78107778 936625155 983294061 985119606 907223661 943263496 158499865 501528275 134448387 522188038 334045368 516375248 462037568 998768709 951383577 996814495 470023276 946607579 581692744 728145794 967388904 973416917 497991201 768251646 553542281 619258452 500718706 546099392 220105320 784555226 906749972 972680313 991958173 998886672 685849890 843484999 396995260 943376885 714165957 836048618 148072666 179888469 169943476 807203001 926201456 937540728 778907974 936048218 888297175 914082516 145209215 686099167 106039152 568002628 710483704 883890464 815536207 882575156 292259662 805920737 467166222 539917626 84083740 556248022 635124544 648910993 657616078 789750302 353755525 522040402 736172426 952599821 17444805 77206084 82235489 389019558 933133501 992598588 753718736 799303766 348146323 873391973 594394513 713080299 186773191 383853549 514314161 709365286 866504298 892476236 360899278 621510190 310636597 637454285 301911165 586564739 420901973 657014080 431284312 498439310 385192185 692905049 429164627 433230703 550451711 997841874 191537216 204602013 725594621 976085833 414785193 560021232 312979543 366062535 969102112 989521341 271422612 338428983 986421693 991162374 148638268 282221480 122865606 398460778 834212118 947110998 360402037 480017604 83252657 853902794 318671207 690592946 565577295 715112645 83390737 682031553 329236483 476623701 248783655 859242676 419812953 815750328 479418625 948697461 653883964 660364262 543882162 551233903 290802284 576477636 711585243 750516859 192711378 896466648 193931480 395562456 77106975 351488057 992301886 992383491 804885665 828696098 507867348 646081963 118741369 522887235 140536141 179540103 103583281 614710198 2488755 311355842 285605587 597404606 561340602 676905436 526951269 867951122 960296573 962256911 333830649 591838470 860783857 897596121 313667860 610884155 717465844 911613694 720586067 829330663 483360983 741467986 286361393 479350466 916182906 979754148 393872010 851904079 244398514 832006518 379274424 632270144 380955692 482115250 523510866 965344610 474071331 766236265 208613445 342984632 358654552 678294634 329400985 722064411 829520191 864098292 506698513 736669703 893795773 947947923 327289380 971823733 902090689 956463188 494345218 888847894 597183788 889703315 704591752 877007852 170382838 415791215 559559138 851720106 735746171 881238029 288754489 568227409 498625244 640447027 563290382 848130838 759534907 907800107 628161506 781146346 340308624 989901619 303098868 327381715 16141827 167553566 953561697 993758247 851243994 918807406 341270546 471508275 597856690 669456239 698154963 908284226 385200248 926651459 884488591 896615078 688595479 980329696 487776275 597592517 712073884 811403666 641053834 659581424 971480028 995917177 779313002 911222489 379060809 888328338 712038298 794684794 655422697 668216054 277403461 719501778 669575484 796113282 433854778 558680377 967391319 997179862 906950681 946542007 977486980 993577122 295341434 331712875 870681630 976863160 717916117 892662322 787876221 997005283 854716104 855788161 484610528 860454366 398183767 901868643 137226759 535603244 182164270 276002707 579871407 923649038 768524912 786723219 262410685 519752454 3583463 551039808 413724531 655024942 196763767 772332935 957342686 981030223 106143910 246991775 325980912 663178360 654706234 656634160 551871414 677681777 281040616 645923556 641670413 898226294 756366756 789690101 143091578 317123840 213057242 758516431 100330168 320040880 843493694 994443445 870031336 943634048 186519483 307697315 749455515 903160935 154178423 292049979 803046538 974013299 95903878 662393433 999616795 999635514 802801411 964789839 764922809 900740970 548751016 893398764 492300161 934204410 546005248 585090160 207334936 884897027 500880008 660696000 434366997 929409557 12755370 239635711 269752060 724139070 240558227 874749339 616714251 988774626 287809818 680832570 324598382 442804385 117313490 296709301 88803034 447483556 36267827 123685348 684610282 720722768 635344237 911957380 183950183 529431412 768175665 846035931 371788495 732413551 90036799 940692716 426976387 659763351 43625410 593158672 195004697 506113118 22232872 856663252 76235759 834566414 127554502 649340132 51158443 895366552 385602852 402614936 439723521 871164706 693437360 996775256 512604372 945552970 345009761 463863741 54196665 726296722 239068949 575884565 654217132 766632158 984112477 997425382 640458098 998522915 159535178 960801632 203853578 888441340 339856096 823220400 791882819 913137933 612657135 681798358 995336911 996322230 110046694 400440590 610848525 972470116 958349176 960769918 459992053 950365992 900880831 962059421 443988577 799653407 802612787 915000287 820046237 973452986 350366349 776675741 724776442 876941559 199891046 855714842 51572435 534268280 903122993 914602404 867901407 994904795 996495146 996909610 188116570 683689206 843256168 864788192 387029854 745624094 221076315 487417279 805892624 964695851 518566310 815649828 113354624 218044596 148596121 400193574 364017320 498925265 36080419 140874911 709838531 817768844 253591424 696218709 814523344 955390014 54773177 819768619 561764458 813102763 565853847 596358374 170539907 641109259 355529352 964013360 645091051 793111873 714786820 885566656 401949518 988604755 818649167 874598636 690231086 994449395 145789355 558213837 197757235 832959394 339104279 989091226 922685181 996772672 306909774 406934794 209389768 293188255 452072816 752992910 557626800 734566839 675918899 771584754 731258139 869175365 817939584 909244000 721128424 909502898 340259990 389910431 524659744 853467368 880105193 912528954 479849673 951825913 383331653 670987302 578842965 840396965 607384829 932543915 238783737 782831640 961427653 971950283 709705880 817384646 781109353 886672334 724307276 823221483 44765905 929267035 171937823 178232048 206929968 365972723 705232863 741344899 148256340 523455171 671594673 718745535 843608372 975765151 454309544 873810699 737633095 986362163 423604100 515356163 226965727 899627917 319444956 782647075 743286405 939863832 544382270 942666131 194321903 464247843 459329389 527676419 535653782 560132701 769528349 943833957 407403698 724695286 286983843 662081472 838853933 863213756 440135889 980665649 152035820 493583762 663471241 723894811 107607891 127890555 700673373 741534995 37157816 562006513 553501411 759666958 371316138 476712178 323830616 513930807 713400074 944276021 796883458 914013291 803927753 963960227 859276794 922300542 770081104 771170967 937918570 947723928 864506570 976326167 229226889 866393697 957636013 958733247 427872416 701623259 783867567 876509270 193242490 285153207 791912472 862445787 440865588 937598519 385157028 741418548 234121966 692185521 104507584 820910973 883376516 930364120 555830721 944172815 783304509 843842117 290443902 852424864 164386250 478067990 996047607 998730776 49411456 61747522 135147311 837834446 154524061 848811952 555433341 919428529 214341117 812151829 490161966 898178466 618012342 930146364 966116012 988748687 43761589 734550489 227911480 749491757 138038370 624986533 851463480 969065181 737665350 814993197 50719786 649956176 719424823 784789791 773724392 995131821 665084570 770278898 122673400 865787058 985319360 989149372 52982524 320571395 274754825 936715732 606128156 724250443 239256127 310144516 537540977 985319529 283556832 390776467 775553866 823650366 686767688 898443201 30240304 123762437 3557933 392264312 577774090 842056011 58181832 962104706 197198243 537500687 706195717 921513832 758378791 815583781 343215255 443813765 59964692 686901324 186102754 220872319 183778909 595244836 560403769 893454661 942134392 984322744 126511814 585246523 114319001 433944847 775419234 904900913 567314705 805610497 866551837 961979388 329159187 450218259 835243908 963114922 36632723 156592254 82668308 471278336 182916288 696848501 631069291 865591349 667972368 773023366 424359791 835294902 698425130 961040381 204229023 694682434 629802499 964488348 186025141 466311033 454224315 919294072 68756786 578918207 508615432 646506414 364222203 753156066 360339129 446605430 134502402 807987432 136154750 917190479 668776190 742725884 499103054 702554399 568028727 821525960 464007254 839599410 976168803 994604796 8693997 183688540 421801577 685312361 258394557 351001568 564994045 832964522 715593276 916307745 770826804 881198338 402295609 804082389 947782349 986936616 244734180 538707972 677643020 681964830 84960007 731201260 391642498 817751925 573424514 941640721 929655703 953558057 570597613 623320607 141100244 628438675 910440796 970033281 295867745 341849692 260735423 269301879 10497804 157719463 826586697 892851941 792164803 794944519 256846503 574752877 235946519 755956903 733060240 919603889 581215370 826757558 494338707 852092969 569492972 897709483 447451474 665302792 846426052 877770816 723454009 790393855 203025582 540656825 571947723 946283652 39774523 167724845 823143715 934094582 667318260 994271707 694615581 745379345 460414764 736097116 762336639 874281654 266021540 882605212 371277629 509521336 688008642 786082392 302775996 514593640 445822956 768611799 816500661 856828343 40754388 626018442 426520284 986764079 67748488 576546291 41484926 598793161 332773132 817812303 977046947 987925864 849550243 979359339 952760465 958521608 985880770 989732475 856167103 864944915 710314648 878691228 37287186 679072698 142545230 280537317 772210733 847392707 374204888 892295209 749642042 752643274 666348760 882360860 397856817 483770970 441591056 939129172 506936331 663589337 212497703 485207080 647115666 851584909 608578465 778779965 639302792 786521353 92270127 913302966 182788841 213346251 277472090 785916147 7648239 141955701 89709993 801322772 553964937 942087287 888790101 932197313 719702765 959831236 93256640 681773321 34085664 536343340 174825823 772951434 491706876 854811866 781709598 826442709 198660991 640055601 134329725 254339606 180359871 358240115 64030894 889693642 350199226 941637091 682311490 891543815 911593520 981932117 260489756 491175484 452153756 700393712 228235863 822566128 733677592 829407729 335768967 693855726 675980283 676398578 408000715 698720956 43055287 544721510 305170532 428898816 313808836 754470472 450918403 978240511 846398561 922175623 560502987 652391173 991396562 998482909 801728736 975581968 27039610 389595282 871709939 917223314 746810341 771314804 629604202 796674968 106215830 723568957 457791091 884328182 437899940 587479218 220264342 234374856 714851428 873628745 861549118 929133217 125719348 308711358 345977142 464967038 228787823 677336195 101476900 987940901 57391124 342840472 921481224 991338576 71548872 460424449 772690305 821892166 242018238 652880185 800003901 878851193 134971224 526502605 372191818 723901524 600176860 934313914 494807339 900100927 700108328 897922494 179494610 883128817 675755868 776301150 674203763 999649627 559622417 900859240 134922076 434442551 312239821 802580993 744783658 924909478 588562306 902224156 606630223 898619628 998306239 998588766 936392077 960161817 181067860 422569591 237043494 745735241 830327491 871210729 839032998 840605375 889802228 983299860 564103219 851872495 275087628 551782866 136715283 237748197 354880038 647752369 918833347 974749596 895861443 957668339 522379599 923625301 605806649 902186172 864052931 912336040 268376160 818875700 551614056 913652483 105817442 130204791 940250088 948673469 913963159 952793276 792773875 898978160 289224879 537557988 317661886 557545215 362486857 772709773 296102598 679982279 455056789 717413484 999120060 999789659 235716988 488613535 812698726 899604884 563755358 856490336 532119886 668588699 177541581 850003970 91455071 781989793 149771518 928455032 340771650 973309834 274424757 471138810 188539635 861615092 992102654 992262340 121012923 495316561 456158999 918332025 489198459 722962262 635651621 745447431 783118788 798821407 156872396 360054324 103260369 979167823 206917544 586212618 260407330 397896683 980822909 994332170 565813780 979208408 334713138 892691120 414489880 597012956 229906914 456202101 215939393 417855856 824977810 831267323 909566743 975660724 735231395 897646648 719669923 839447279 704294128 930890129 13677766 361812140 189171855 888516223 820917557 992465824 856232469 872440458 822911715 964611794 254454034 308600391 288662488 431181254 625635083 658545478 664746409 725921483 560667162 632185989 38459649 885685496 402704733 925073429 225674483 573759523 198902117 957164796 246471584 793120656 774229806 948139279 605282004 636914444 774192612 794159693 484601407 668723936 93076280 421115326 547751597 778362045 684760281 875023197 707028265 784538802 431071479 746697547 114584596 701521844 265968935 863743288 27233826 309813816 450205523 953620026 201638322 282893171 566156022 602980351 30348547 950464056 251881300 655159717 47365358 543554204 620323192 981375201 434551828 755403717 151070109 239133513 275011392 820468716 638252153 826849160 531685965 815775504 777642122 996099516 855159602 977630295 67168638 985406211 187662292 900104459 791989510 849117279 145146234 593979796 242405677 506795198 331041352 710658320 239820313 324699536 975258207 987415237 419454052 489812406 846227489 957202907 659700110 974340749 38712876 810663896 795970468 867647706 902737932 961462650 264270463 500503086 368543681 941083481 831642504 860759324 877156982 894846729 310252866 848032963 882349695 985342367 136992004 919299476 916224232 919784905 213028276 298899162 256886098 472568901 628723332 717168078 920586391 928798322 53051406 783156021 821551964 837142485 928165761 954794777 395421787 588770367 153583038 506866640 257569166 592855772 183260568 730558447 156406615 993785221 203998491 789270973 786398887 975381170 979623403 994830004 817392983 834899757 617783405 838087194 644099693 853547539 685026148 705024923 471668363 725279763 863073685 886552810 461155273 916445554 299755029 895187464 65442461 758336196 694161797 936643160 787033032 971994403 562630353 984052364 153511413 951495645 648701549 813577546 787297913 814410444 331946640 419031902 991537650 999036609 295679660 432745896 387706653 535562526 236582523 417595398 701275272 931951325 387166807 404618311 137101659 598211792 487169181 965826032 943130380 967272088 304073056 908641654 320338157 906680478 918254749 966986436 609806204 650852760 27397689 490527081 17018512 19618395 753596940 921862414 837295924 930412048 853668772 879474718 875150978 948398043 190864972 756150050 540796321 848727288 33767764 378432149 847323084 858821981 30466093 409893085 688820939 810905722 161599022 292126200 730946551 769525764 112959836 970884442 49700744 852887985 434441446 531729812 193709880 225551442 198053817 212262951 224954924 648853532 699768588 727977703 586435411 760269090 849339055 903655951 287310718 952189071 380335724 907708224 231100886 756629019 644904125 993805971 27098073 38526510 861912680 920411004 427072380 755568158 850429991 929534441 108277384 560986746 156097005 194742453 796748903 851816156 542035425 928941621 667406690 897881908 62027961 740022113 649818604 793362823 64806478 654245698 442297957 984110924 791618080 883055601 449692402 707473720 300777604 907060366 849032733 967897968 741382002 988770533 484846514 669568131 726540953 798560322 458255353 478397025 789808764 946047771 573110106 940068312 749787031 855786881 860801519 928236343 230570261 721244876 551981526 959007552 343673244 902377146 201091660 501030183 120427379 629298842 67080504 386081527 571551224 855686323 230802226 774357334 381101483 619873498 110514227 187939656 451943358 914770131 799400277 852686891 633598855 822522994 197260803 898170118 37918681 700913292 970591319 993939715 554293164 679050497 29249589 791895943 129899221 131753770 826882592 913730579 660986204 716006733 798664462 969645503 642366595 677334897 37018733 701408800 102764184 469340125 294492437 352095339 720927177 778268439 832355665 911807779 714208552 784616123 177069307 976009291 115998357 465486202 626071557 915954140 278396974 554456202 711572356 756538542 229704611 266785448 511077109 693088642 613528350 956386224 842884161 996414710 388416963 800157279 774793941 821484012 814244789 920908463 506056704 657206225 977269280 983562286 808597125 881321570 415370124 879584671 438175951 947029776 842946124 849927557 434121215 819714360 156506816 317711676 567470853 784362394 282157453 623920217 781026158 964553959 342886465 468310238 655121014 935251336 502567403 795695032 712635908 994870561 753218758 912106334 46825513 807038984 770985509 822010219 320448266 394382190 766372118 952043419 978424889 992311553 102182855 755054642 198023519 816524664 59456091 700827166 263138891 553130031 902915280 971627972 353255422 574666257 26616834 81549055 490349504 851013373 634508469 814353957 878435435 960530761 272142283 297479206 33371322 873919956 668759249 965120287 540616307 911067578 81618619 796840704 698462838 912459368 998205270 999946635 618301128 940204864 107634569 673460172 584708202 930191709 896545 603027444 713827225 831491298 82520620 203715279 428601782 441470017 330158942 375206288 249963137 865348135 363308526 664989109 677294859 744555933 797964306 876661634 311920409 443634308 794046787 989157443 477864555 734451932 487975326 916822309 270426253 597665642 502799946 539724532 204348294 400307092 519317714 579372858 723352134 881112096 678527795 724625052 255084738 671958856 772137500 886068596 539514024 903145264 829832968 944996649 56197261 991415135 478926310 994280522 899820574 927844542 583513497 586658125 827445865 896231572 168762210 176164198 599046888 869723956 692468382 753015036 544575869 762410228 313054370 395498057 426954430 716273501 208702424 426705523 136810700 408972578 308892991 352438867 620826862 656661187 834676095 973966840 847642702 990168466 641823352 701733007 285008104 803632790 338259296 468109381 686850353 811360889 104587824 261566363 403345463 593000350 115009189 212147167 28982557 820572040 298235779 925879899 754939968 810833230 86870337 89663688 989460237 999433834 391031464 454386503 161708639 825901045 30915669 938842195 786283196 936139967 924368539 930017438 982912070 999452941 857822923 996385196 397959316 484657147 11422725 49979742 148876543 540176763 455853648 738170318 766875550 894114977 224744513 409258300 872062490 956417362 868704660 920714608 261699996 823914859 563435791 685662046 582654185 730885943 33838270 862391803 938812383 962062870 21775720 942743229 428187743 457429687 103308437 274435327 480150485 632346597 648568828 685165359 428958723 676356368 224560468 536870242 449985942 890521349 592869891 928560479 101091346 295378383 379471193 596325844 204313523 634415093 344437755 724902175 646984879 978445983 606307215 925958696 591915812 986527618 684021810 988641356 826729193 988269619 994072093 998513010 488063993 706060381 135007726 686837485 506690205 935003317 405611074 412870190 961946748 977074171 22874573 475424211 742240743 877235190 627397831 788866867 830363835 986424124 555771435 677590729 926643556 927617378 623296607 747217771 12883845 964159828 312381570 413447289 89041278 754220652 617766212 645470482 835130541 850239159 562092840 755200783 665507237 676144930 790399455 846342881 79560297 196150888 562475850 766613763 152001524 864911691 679320069 782278754 51037462 733523696 722726060 828352608 48818991 400369301 565081211 926995225 883603785 892332468 343171999 837135854 950265377 951675204 595046327 946553925 248552635 938464050 130938423 300318192 18714879 258855609 516943486 948738809 822222837 830472129 155661369 649309466 25679930 833104450 467775359 619098317 810175179 882103223 312583968 630838659 377226657 463854604 301691205 627127486 861784860 884729801 367962385 436319714 114353355 669242437 597380593 977106080 134001420 968538449 19518535 913107939 18130679 109731141 531982387 983118782 753988388 956428736 34121 195912430 223685898 485530788 227205155 708362122 216385471 553342674 626053954 746078203 104940349 347712270 335656502 831786610 894894320 978185218 191665812 352025697 109464528 284789618 412838684 548441177 152986785 377122343 856866156 897949982 175379404 485282949 831469181 976403554 863197303 865071706 781657784 929976553 811546258 885974610 117692562 947478226 819371212 969072520 711475098 865774332 96286227 294741148 267544712 900555254 571986401 968687072 351576438 671026743 257984371 802032446 791937209 923708556 698830829 848902843 138274640 404112969 235123217 825215117 653988807 777901522 557587861 791012652 297644189 934578511 680647516 807378899 460842579 686364152 501152087 690375221 984742347 988174972 745196484 991689037 946389104 959912753 399207989 726028509 196937694 666172125 2293769 904712460 685293371 801834112 850602861 857048812 456925650 568161179 627236800 766387043 611305814 877697853 227582082 517748182 587943984 663421548 943169163 961920135 13620836 530380065 195382579 533869867 54451020 829956333 345695915 351024146 987078163 994854940 487656287 717966033 188895770 327646532 884892560 977449036 534966183 756178828 383278134 472997595 530798700 551069423 399312021 471229902 423266157 793097870 99851060 350544793 242008770 405571289 367854832 430328396 233089168 904358676 444715816 827827094 68175577 445390815 371850707 525550160 132123595 680410176 376405004 561924046 951540386 996609019 71995153 764848197 171031847 367356862 749464728 908467376 903968952 950028171 389582368 726853298 76533063 312053341 652272804 800804523 565900453 794066744 805264739 856136281 115311416 853544291 288760435 579133078 495876983 827728237 584151275 605576401 561017570 942515436 690413125 773103021 57406439 381708607 591697904 807727802 727628319 943998732 942028562 986225496 473030044 524681683 503520615 682824615 968532560 987498584 579965900 997735609 784993561 878010367 447186156 999486654 618613138 966202357 541116869 542086309 652625657 874467792 112881304 245345808 237024184 954690633 797500247 850880122 93652959 570930393 511253637 901281678 16264828 740373021 429877658 604037465 72745590 694746456 735910846 919890108 344913062 864427365 282234819 342197082 460157011 677493746 833097028 887684028 281752719 747566436 561852653 944541852 937709510 940706184 879167592 937733423 477526933 884956720 725469034 781671730 677998134 861921389 47878603 934311830 193555581 883876516 318332495 572848005 685598513 689992399 560487125 665772658 523554808 704982470 486879908 904403979 71748423 556486542 381715909 410905710 711666506 976134914 183817888 543813507 694137000 997335592 558578665 618120544 682738862 767854873 388361643 714509930 566459201 985797733 27030194 817502114 770887758 839071401 999248608 999743345 673258139 833293751 105458956 649717188 215845576 721758262 806224249 895952288 198509801 963772360 492727042 825911714 273373458 318825239 690040867 970877706 359978911 996530127 614811436 897198075 396495471 979656058 212507949 468292545 736562437 914241686 567576519 983050339 447661149 864539221 488556525 604195334 682920856 857751990 475705313 678099332 775307059 863400407 283121274 415831443 921947934 945913866 83027533 532476321 518027598 969593483 86823219 328734448 461297184 895758977 701457522 879898319 375233047 896771239 642966881 688613574 144856125 602281677 301877498 640464597 373739649 936781947 218902365 655861581 883619512 913409118 467348220 886727920 615835872 783394215 374018843 838288064 163452734 789622909 501401715 556815896 363217921 602886791 617996048 713714433 910141566 944741635 800780685 943581317 861664786 889253020 932357979 944535993 512786703 890623837 681833387 685996322 553576928 665463350 946399813 955302022 153774264 611663461 756170657 900214597 414590 876756145 711616961 897541241 801662957 901754681 157089964 868254733 252337827 809018111 757025287 817556788 779947088 824285270 139563520 990469033 318199642 584850522 622851977 704788120 691616458 712867026 542339316 837648088 678333237 997829814 520446165 562053191 319968535 456565632 322109141 941127596 928032752 980889107 865923479 976720725 873813994 997647126 422088880 975536412 157799669 551608070 282088154 906650718 398321015 444810609 939256140 944151445 99261806 554342614 924675111 978531686 174742645 309426896 890583638 892349348 928535864 936076819 111837683 798666788 415852135 705762176 627531152 956317796 395572528 773835229 797247013 829728809 120437162 282886311 812970991 879478033 385296108 715815154 158351358 792697263 472196938 569039692 94352079 687353188 395421221 757903823 454531139 872193703 119773148 235603550 878490758 991239480 585042631 980464108 106907168 451444399 403420259 407155753 350852505 906785081 551227661 926347755 577558591 644160802 3368816 909394696 714327231 773888019 349982841 938787589 262278260 528931051 189816058 218610843 39053597 116523297 432784957 931500416 660545744 665402050 224822675 974199211 165422696 906736294 695175866 975677867 315611693 598791772 874725680 894916461 587964834 994538661 152374769 564035286 833096617 975841173 484873166 817693447 496541714 558774109 938042571 952149652 789207680 968015952 167598564 404617389 721180349 851503201 710023111 780782531 367616260 462741763 691693974 972580623 69714126 971216604 878522663 932309054 121555155 625005482 579380818 895403141 798945329 957932000 746743280 937997712 794945625 957449572 820371868 933614587 574567843 807225292 425821196 496127644 111490005 707698294 368806536 741928174 185578019 406318758 413977103 642338370 819036251 912016108 237331076 403089554 495506080 940456920 606181104 644730853 287048016 643743623 575867097 918138878 795454801 822498448 554592566 696626089 193188281 854867191 428840887 860040090 263510679 826971844 512980678 590482512 71486943 437285091 993117720 996347883 431703498 639076288 226631412 271016355 77943159 894090473 420437786 554241577 479028988 799673300 240678991 643817283 196940641 915966902 570210858 656813057 915855938 971993116 270608117 344497140 552437899 760302753 686000200 930725067 466789564 973494471 783840266 953657184 648992041 782344386 377509459 599022276 154457826 238592240 167108974 175743492 405251786 746509543 881796707 935126211 174362106 698710793 472794664 777511087 874747763 997505387 360017619 552295162 892362199 907290550 617254544 887317126 936257708 972435911 314236062 597521322 751820694 782467515 977412775 990585737 825774894 828323791 410872456 834572703 993290771 996065052 74971059 750197600 883256513 903204762 601017447 829419204 474376895 650064047 170060883 324271130 188421996 593500315 738911024 796530916 82231392 890249361 890861298 983770168 978007848 991113168 927581815 961675677 529346813 723866961 780947404 909952291 573549188 934322276 255813288 757914932 837377910 943020454 731325908 891207600 696672059 781015448 611989993 651945752 509901432 702248562 825920703 977971184 281540514 909349681 216575871 851038310 283048213 694515420 401016688 759216624 206691385 370718360 74917307 864523235 372902959 616624605 683689175 873612872 136560680 491288726 713477570 837330252 614321389 621876609 391173395 957031623 313776896 704929663 458598726 757002455 491540875 861961895 648901738 675782316 195685834 453637993 329837817 747604921 935991516 941351906 204835568 413176963 800257743 909110373 925761007 978514510 670596015 765488242 199910138 937203909 52143759 640937271 443678971 632383169 141109618 327535954 580954252 705184377 858106223 862796835 442774469 513753238 277695423 803233890 976836803 993464403 774221715 830961748 375905140 638145784 113020989 862140186 316814050 581777584 792345757 962504901 469071763 852721739 119761936 659105611 624226426 669903239 983535041 991630290 994409627 996344377 84157611 542900054 114101311 293566168 862598597 883224957 363201602 636238247 114188011 322030285 999613491 999671524 419807776 732156175 456811945 571447088 690433042 742046193 974650752 977164039 135526764 140635873 987536136 988826273 429787080 922916128 750027484 964187062 763282000 980059137 714896101 722264399 421583641 457056866 247057382 255958054 666216102 705996132 666810335 818159762 742709590 871897149 465554965 607003960 37842936 268569690 794191018 987051159 265247880 422778374 30369557 857176596 856302106 871128388 963323084 987912962 391744616 995329369 83078857 390296094 280054567 331986551 831590957 952392047 847369331 979459200 278497650 724188806 179825549 862409025 121279847 398089619 10891829 552289100 656245080 910647675 782707717 986206984 444335209 513750950 133577921 731867634 257911583 523484905 699660121 841851603 624026133 827076058 599904130 804143061 507158451 535077142 565835358 956098019 643910142 664464864 191179153 683712370 354919999 828234250 60876725 996162578 401743234 893062586 907965221 909885655 680375227 750828063 900887018 955726012 396221791 859642036 992835289 999272252 581362012 911375564 110139435 666749668 919737566 964387519 823795141 993241989 19329730 284098690 342814386 751102764 13334248 63688841 183859816 241676698 68185005 860857000 237924595 269636413 148401100 855563769 187022603 201337957 312663182 482922947 999712757 999984987 637178964 708919852 729955645 911861593 26570600 250660686 901270152 925319376 633468250 770834648 458604971 774451770 532960359 772408742 158016967 448738041 413830987 710998344 373827802 909777579 316965596 895069328 206202885 363123662 218372332 870633160 683648245 725198470 883683569 937617787 265636336 726942603 212490208 356622823 284867870 735909916 670257906 806062093 703917900 997323461 190424376 270454795 853910929 950518374 97714667 809021397 260245306 904869244 192294974 211466598 283958672 835407752 809395469 848857496 837756972 933012484 112100989 742879026 954260417 983204281 931207785 938835113 721014829 799691644 420558584 829283259 549193783 695107662 327147498 794680030 277213057 907994627 209086709 402593534 549614296 958165219 355627362 522042520 499461378 574476274 604706480 936342854 193319449 586031409 8097007 242834281 306047720 664975159 90056687 381994870 689606004 979940761 675779417 997629387 542855617 690275102 972973130 986932560 558858271 920543617 249805146 796300111 514352521 691699139 13232428 765772807 48462550 394840990 2026067 427117987 282824402 900500622 735370429 906695734 71240087 226594947 4023497 279383813 152644913 156434980 229098865 613747462 965582929 968382319 457604025 786254745 295957307 831108828 522185827 731591640 492667068 719911938 690467832 975985765 548481351 811737441 356827149 651520272 37048790 693058174 318975950 473289533 986919384 994876070 460131696 466001049 733135581 802570944 285972595 843068363 126727840 706937798 140533778 962060901 891453139 959907504 579636619 826056439 25739681 91845227 100884689 918252640 2070267 369567940 762181720 815283240 842373797 892193252 888574724 983954299 662328726 693753538 259087619 756391168 675005839 977693772 295511092 795020505 486799899 817869929 848750044 948743487 431735362 555202359 82650032 849588418 718122765 936774386 547841038 709846994 806527 366715534 481483580 615985834 2535416 473705082 212453867 644812216 318163609 622944794 214977761 922898634 481064704 910013035 797040588 965563148 616650788 877114130 489941931 562237701 193106291 365849338 54312792 61235143 334208534 959646115 502729183 945070740 110357528 114679588 755384388 888969310 15276410 557881801 501048720 665253948 327604945 357460563 255353203 419871664 20336927 723816071 41080140 776754161 552439258 611586222 853919361 857880085 652898735 815951738 438342697 580102603 366317218 835354135 338331998 406407967 134480826 933051880 162834187 446006057 966403506 972229616 980049413 996001457 489634108 548302023 194714280 623758309 661838766 714280050 141042881 652627194 755705627 871063787 14117777 272050391 846566931 872496329 630962509 831334388 784889246 825423308 477235492 703631933 520217041 533703606 105032701 698050190 651787249 831765392 773979432 950786113 344904527 420158094 348994417 431514105 124877070 575837636 711341167 972396600 962493332 991201015 643375196 829689353 733694216 923962236 976691456 995479853 909604495 976994887 586651385 860751027 876598311 945900397 299145188 971098784 172914254 196232825 898274638 976045363 617500673 778593975 242944289 632367591 796378880 850089431 684580882 701697355 143650721 487825112 988681771 997118559 809103973 977382164 454278509 486923254 210922133 390275013 435730973 712994159 284603352 781991075 178976791 326663961 453682009 496652472 443791668 697591687 729909776 855686622 457389628 994490916 445744766 636770638 53440354 703004804 85255987 261037926 157048879 481365393 451287359 789395312 647469704 651875368 884859948 967817393 675607010 825879758 363602502 519246295 751703049 764123626 722047959 804401684 847555855 909008142 850579583 911868707 489669558 537910589 430069282 455085386 542621316 622506516 440024432 880358477 695666056 926174427 110274729 691324557 835648040 885592731 512789684 852072383 614871695 886111177 453193060 911399233 16196240 397085490 934219309 988237351 924280401 951103413 681719031 955002487 152755450 215163189 19223645 846355318 29547779 547082633 447420302 495632358 275112683 835705377 553583287 838407619 924906573 997521600 758223404 955052933 317620861 837493455 85142197 593045638 609086822 837480823 347684276 697291102 930720297 951479211 519703254 743984174 860692019 899999934 618222379 953721381 533313656 831045767 630455543 890402878 730321974 835933820 657714681 910442731 692304111 727133035 277252419 793734390 131819090 366027433 656327412 964784703 594222605 736475054 787745660 861228682 941017555 955822476 380194268 943376010 962357398 976419446 149430933 386586828 795837324 951176378 395872187 728546858 376989341 567191658 789925842 865426174 866469117 898062949 402711075 416190171 862830886 945486867 832464710 973394716 340891065 414102245 696712301 794031912 102111995 187970934 572713610 814727667 73749561 378458413 407929339 854451243 582475201 830791328 737588666 816357128 580524530 753680148 347049045 679875977 791678134 833832372 573317696 854716411 209044482 311588456 296008129 786904210 380520455 803971565 236395387 403380437 32038834 202508818 188367114 591339276 479840114 801835047 119652484 521029033 526016241 603360243 611225329 948583291 151037936 951464760 127734890 669444047 384238595 589086219 583751755 584670663 501925921 768499920 241385192 529978798 697961703 809365733 93445181 381810686 734652777 789283106 450562498 765652982 346848102 702892035 937137212 965731562 31463047 992796282 980850381 995398711 337166084 776777888 450727124 469234589 235108033 400708015 577979219 747848405 587485999 981677410 38991439 106410055 692102869 955942528 221303152 459358990 715472589 716703187 330899757 966524425 409125939 771789287 673797012 802456457 876866879 889458386 230995228 854272714 990846024 997706280 577798153 655888053 506674882 788513269 362135203 940573810 232765282 532060816 913374918 947883822 786656632 912195574 119850571 310265278 359307391 825275189 869331451 998676927 138748802 811317947 414692507 580172368 98545771 370412963 511235035 609280193 96800787 783878554 764736910 811463650 342487641 908299528 143301964 798966363 289670942 898105777 203400126 276555341 201122369 376159362 369663043 473774950 605073330 628771572 523319076 683670585 919497674 931590685 630353278 950999536 248758162 424797420 179148516 443633985 467520283 850524437 973463645 998178672 255502492 670004492 591443692 964029665 598619051 905935988 468776533 478670969 782490184 906019588 81635451 292111621 84437432 643283703 667785907 715357777 413469276 554274305 94679140 788802993 707841304 939167492 876359708 905712950 575264028 871754151 869949311 960163676 882294462 901948846 679029573 809980470 978419264 989607855 408426327 707154495 607494054 928841031 683401135 878532567 941425624 953627359 979845207 998093061 579108986 717472696 932150757 997167075 976714345 979788913 493823655 946944681 820251992 981820427 144545641 378419812 474317882 524048072 572004235 889974970 735960834 793267168 189781501 249805404 150470980 800239069 416235227 582658262 528146763 649708676 169829332 320638799 369591550 567419762 246288097 333598222 636491712 675355557 860382941 944576373 163332316 458824858 570756715 956321945 542188827 921189557 202146343 889737224 178370215 336162808 484173475 768537399 790123429 988746880 783013957 827641549 14270699 426708728 159509701 692737132 406156178 511784344 671247220 924742396 401261696 993769081 87867769 427626134 606298029 776562157 218555932 518756849 999213169 999855365 684545342 885889582 328131549 808762394 384473153 503637646 196081391 278720737 177610848 275655748 956812346 965209781 90319742 159168490 143692857 482598832 213571258 463797518 951406147 968341754 418510483 810351280 224809855 826565693 868129064 886876586 625671023 953052522 756850160 903957555 845809793 929376425 30254262 517979579 361206238 791422434 481691588 892406606 413517365 771726759 69740223 644000336 378213663 805583896 727552335 832010291 741829428 946121116 679860637 761322914 26360990 561876437 439073925 542635323 233399079 774547397 141647460 833668044 553558574 910236443 869403189 882599353 884634208 938941837 736660891 940083533 459044003 523167190 837290302 970119133 339512353 793687449 900693964 932025919 566186786 659370328 10568400 566867952 194646136 926230131 361756826 597770234 876990232 885726908 319303026 690925017 46825495 367818964 184589090 876377780 811498054 900942827 106383305 255713578 909257425 937659560 102693031 361160487 702444667 915535164 7259345 431106131 848475580 982330581 890724482 941652521 377106472 873229299 498993254 741655766 47314228 906994433 794476401 835365915 33662055 638437378 889544308 982526734 789112150 915933508 945644509 957713458 50672073 429388170 469907421 691629023 964703314 981486744 593452373 618261747 37377667 71917546 483812320 836590763 213613979 316052563 243423278 485155160 83514947 552730734 330065763 941579009 165100633 568280720 52465193 391932691 408842068 550286759 428949556 816140950 674486995 715415516 58539072 256838293 397680256 684441041 195214238 732302456 643818468 912172280 635191558 812723633 699352278 776063310 272348197 777781357 890694964 902517779 276230477 691745490 142596302 186068011 131262720 284149615 219668779 296603500 819990916 925176050 285060407 828740389 896619040 919636574 5965335 253692077 754292820 922710467 610919061 754453056 344915348 540095307 277849473 398367466 314382111 880809763 300307949 870505713 964917434 996822109 355476526 879380516 359332334 798434441 790112703 975127190 585775179 713183644 499295051 983350984 483505987 650206760 843036553 987012902 113618937 143019416 42407589 279486290 331097977 899119549 571324333 706068919 566958303 914706222 468404976 811718365 677356133 776819533 451134915 795104639 709974286 852021332 241596030 602949044 304341173 971192207 360728332 390453578 659506654 953296381 290109858 669261162 528674921 797064692 788911986 798747034 808013056 870171317 626727751 832288918 616962502 754008487 494786895 965002230 178608012 497976824 616682964 764797698 161003590 250668436 338745670 924778439 393163790 760316824 870101021 908379699 452897406 765734913 952647437 985539137 970514290 977310488 99761672 424125445 275437445 433546507 574413080 740032711 992434923 999436172 302875158 683277339 262759956 511932699 430870267 804008035 236014572 930905648 6077933 891961021 938856538 981719941 191362346 582567738 32564753 477323507 813433775 830563273 234584547 525463610 792158257 986750682 580936464 784071242 226988449 562881519 853190002 910113943 18458546 460743003 691876847 875772985 305899253 489133285 315231371 460628388 427701597 831499636 835153899 952287038 668818008 945553388 912874851 943639206 536171586 748154663 719595388 956289758 747516470 979383083 905531264 929366007 786284961 812754419 562291237 590634570 573259112 576594861 791632828 840737105 665972803 759040707 932283624 938202417 183076485 920413345 437992307 460037123 201060971 532542468 543988527 900740399 816108892 945748567 677281510 750728892 281422797 590217337 843763759 965136983 191520252 916815283 776191467 880734091 110403464 522250902 545752496 731318926 516128444 697691190 626997372 984321022 811593297 989179929 279627186 928409178 308919866 397543328 516685452 891806738 588304087 688223282 957408817 957879542 87721755 275753171 205779022 942536655 758161846 969853582 130086523 821454219 546359057 837746740 854439671 971305477 281333687 581499227 312441865 749729543 629385342 815987229 532158236 715155953 829417602 937067758 740560787 780463311 186662704 235194391 915278382 949239121 418420533 970104955 361966330 683868214 138835781 259204687 585804469 865033963 96730717 935356440 332193571 854510941 267409001 334532700 375922853 526756025 785036122 897290612 23241369 698272757 576690793 937413172 689154545 971385554 914850966 916585321 228126721 477043619 436220232 984607914 953520716 995550588 368828077 821802962 898805635 959065177 503382407 787586141 429567640 630845019 112861067 286664376 863597224 920262803 682633594 966529665 759990520 773158800 107348853 944545624 437485134 767468436 526704280 750952612 543906749 905861289 708011027 798638213 307803012 740657657 825679419 898188364 361758450 651371553 530748494 957995024 647104992 727626455 251061846 844377437 204147145 656345313 602914330 869709462 794475147 867105300 15807027 459874812 682592028 883279077 637472866 772826414 720433663 859609151 108837600 419571881 825611869 860677672 573867553 851377681 734670324 940749800 658561810 699585697 84766670 799052256 189702933 251599047 314989668 832314964 480618322 667020276 457552675 515304560 19366403 376046779 488237714 794377550 319881151 453513320 425225684 946887322 211112873 786192786 804217177 845745924 297247100 736991396 270138395 371398819 598703110 689552026 539495128 581862003 104462810 789383635 315377428 936174488 328341893 599011363 883786933 918985716 844442536 867205396 223625646 471972838 986252720 990921700 712972073 722471612 391916203 651097414 592747599 772169361 570297607 675428379 375208452 912237977 787656041 975910490 611885043 643336403 970743409 973231612 648880997 737318575 160779000 292589369 544209463 567714368 420976384 813923617 565126987 598228588 757247111 769380820 923170898 971181215 877678821 988781651 611863885 805908230 111430838 327992594 109824566 607308932 138293718 430015576 340005161 582109677 732575572 995189754 610587289 881392586 438741068 855673978 351503669 697876775 311241321 827927894 222951942 252052820 932689325 977676247 974715231 989513301 736085649 844974443 405330804 442822248 772395320 935786392 738559715 792005680 331790521 786705238 914050082 951290204 803647574 875947948 531953330 563260450 294781523 612880076 161366407 926542648 997148980 999295293 85939166 704555104 537264160 547282447 978075904 983410428 646530614 678850183 550625453 611642448 806717957 989513234 626722370 962378457 585570773 666498280 103242907 587838413 879604285 945569055 599726940 981791553 970912940 999412696 103788331 586318354 604565732 605253183 361994286 921305424 933276472 984892812 120115834 850222650 954968326 996453603 657249708 900066837 539435346 635742887 97722556 434960843 508268763 777990222 927660997 966266436 237416286 844764863 984197982 999897828 175101994 315663544 154127806 335021071 211396206 454333825 397160573 502756742 789540920 854847509 181474928 835880684 309881495 617769061 390226245 556395886 987468288 994133970 17445818 223047711 902579947 953890485 833569336 923889227 328519984 777942858 13003633 378966818 303205852 582742614 822040876 828309116 641424601 821888965 367771258 633170241 618078285 855615382 722031544 944256099 251710573 810253143 895653165 916644185 166432024 337200267 699464838 953419031 684495374 903336488 703694998 883489500 966346877 978599339 771408109 856679942 476907382 839294673 56267696 796016292 667313210 811602066 971911388 995562227 325174277 355018079 731615252 840128678 3302003 675217774 548184111 878414058 808381249 947157081 655796190 937406017 189496781 771338369 741897050 742155902 334531210 716910791 944438756 974151390 25863831 484261710 872257967 992235160 140474464 400204136 713776933 887163051 880097942 985468576 695131910 738126012 45676486 680029949 301882812 534707817 350184780 571979608 696841074 829306066 736866508 744397576 870267213 972764073 750208265 843789544 934270308 969872073 201295892 690158852 956988873 995644164 155763420 997992178 163727411 862088590 303305615 448328387 709333828 888482837 775611330 878899301 136772169 334013227 731407918 931825454 454339332 750450829 846290624 857587532 303952623 633595343 246685449 620533506 464459806 543267913 195652822 996590351 486902265 755935299 372902259 673181045 641650612 876373940 623820767 889738754 139918271 748877775 156727175 990421769 244410646 378281167 145150374 613260039 861809419 916577219 745842501 938392088 924775959 961304833 430398397 758958587 478459437 645513306 557412742 893959329 490061064 598386750 943689655 955452898 960969645 965594888 919536982 979584650 706627546 981941464 925677400 939429901 821058995 837737081 682578501 824194211 710203585 769411979 123775066 685913831 205483828 823155235 404441683 984736424 372624111 726501877 186671496 428823668 112631377 707675004 807668812 842269351 888838739 981244469 414072670 578840899 457683008 663974952 999723998 999792868 399105731 964055615 791495733 854597289 749403433 907830920 50653079 391035403 983234443 995770170 310661068 984510632 449490707 641096379 606590195 972459215 170121658 872743954 497428676 574613178 244027892 851380045 768576477 953444617 486165592 635071611 133394391 604342768 926922996 948411028 68861755 764096860 727185582 765998066 904107612 943470761 708406986 904699698 325233983 799262349 688925716 881068661 3718223 692257430 611467915 685878331 14443128 755268330 642458861 899792556 834811763 934702941 287331677 434250808 187945086 402943505 258226529 614236584 415600654 601167645 61204952 983503127 179106545 878115780 143417473 826885961 263945240 824147094 366202214 712036011 436912350 777515876 945903414 977555771 622392867 762931320 5282509 316181644 532329713 649380700 155135204 827856616 758026261 951023346 623404645 999765450 763664784 910076863 92776857 340519164 161187756 279335622 565532903 928031206 547968982 942159718 351286622 729595360 956023512 964319043 380074185 903817825 387012867 542327320 755466572 876310207 922443002 959131134 556558168 685350637 834059469 936719411 574519172 628543287 659341450 849538091 735395473 815519688 34046353 922336204 12333675 626400807 143720052 148508661 143984046 603216824 726166186 887125540 170335694 305667245 472483603 847200084 597548421 640340070 489125031 932638010 530760496 944102138 702613427 939396098 575775926 645052786 90001702 98975441 342047907 670925648 95621568 112538067 144378578 937020699 411727766 662006711 419782225 938099872 810226040 937475113 291679410 331780075 931912083 975112370 24032854 852267342 308951767 902277785 779196317 953247890 344146119 951834375 822930347 857286919 380551717 907778346 749207738 940371473 350978456 491365783 171277508 950235078 67682204 140180065 511959704 957916049 633733238 768814077 289252536 973979995 772890375 847561146 118061063 513194937 42170950 642093403 646573134 980530190 125841949 460098288 761603133 890880569 692706980 925895156 358215364 750282262 556497570 941403404 916959327 946399310 405347577 446147469 183545284 544948600 741910586 937992288 333717654 431947913 273924847 532566278 875885938 908194695 874258394 999236642 373146841 634572140 688974053 966470742 58898731 449498153 993573200 996405302 523758027 914679881 838188216 999928276 94838590 405392526 950872056 971076715 690095500 878014852 887493413 957182692 767256600 921123534 668030113 976523748 60895471 660730582 69759930 661199807 360020124 659138441 259062745 587962491 704590716 755030671 271235467 309595659 908137646 908531995 943797656 981064690 667323190 672858866 765099563 936385978 785842403 995541342 122233524 811304955 694624694 902653860 200625329 593900046 692253381 852357179 990037971 994186450 219123139 466856106 395734791 418318658 505569424 538946431 271337842 898606352 682494095 977897471 358996201 524643133 128117614 338058848 729273101 985665708 610895299 746282504 231547198 989164541 117083189 225908311 164060340 978354591 923845026 999718119 213625887 545232803 228748860 505412316 416319526 507782050 146640318 590913062 267788347 502468474 315831838 438667067 204911958 727270609 436458542 582537969 523890224 656807265 506689220 571784027 85271205 913874435 271943546 399936178 570347487 602897201 556694236 650512909 495439177 889738858 863260854 958870720 599588746 898829356 685988790 755692716 963212350 983381399 357287320 411381378 132847565 949881602 455303110 997980902 227702194 372544389 425619713 625476578 170101649 736323513 991168448 997027272 840408816 895623234 850636416 967832453 152417663 825167801 286450716 733140135 927216413 967058012 649544210 776091849 686027459 852051477 570141683 920747793 759931459 767753113 409743623 651792429 988514305 989534253 264838346 432150691 168928558 333997705 129577914 351246246 690000222 972633636 806932059 846047165 383552518 530482959 580114385 763755364 502556697 999441955 104469652 663153608 470103640 619900844 180345315 590342606 192096001 445010671 84734638 956731939 993261857 994050136 905450642 971546125 540691236 820723222 441347168 979831123 421941059 517209440 950112387 965816496 852170350 927268317 578070478 873702969 99520804 651209693 237619957 609828074 806791300 973591544 118200475 885459601 261500933 797765918 940569561 959322586 397247076 864156467 687754085 860028266 995685580 999467793 882767533 920029893 422398366 737335839 143557648 804803416 380433127 691092757 33869297 74092419 123620397 578545276 389411151 815756093 927546954 961288673 984133113 999894357 990054187 990278870 151124816 292076344 534172543 558650840 860191868 929176221 41230458 406585761 884468881 913700821 140637067 543665684 191258733 574410303 153803678 467951662 945508459 987341753 901819264 993576406 390644499 425207869 152689505 482844042 838415659 998435129 566481741 818648824 508722981 998686063 989810091 994167946 428407080 756376481 125989621 576059415 603656204 906801339 142637803 462928409 59778932 175259776 40706873 856824858 541446463 567516952 520003814 787724130 644695792 883231604 730233512 965139576 946391941 984730389 687097131 937116672 310845896 545235940 661978527 920312175 312098312 348918600 150396975 567300618 745600327 813877454 597426332 788987464 759238834 871872538 136304425 794264734 54878966 138796319 278548745 945115009 57556027 428915006 527686434 550054605 457669392 585347055 233400538 612012786 747260312 850307422 537891504 772249744 345399256 608787841 526077391 662433734 224846651 732397017 853702622 892080676 321070230 647924532 702496629 948767629 709316974 971833431 363127655 893667528 136550368 624643780 665811092 733058336 567203891 772359793 404918989 629555891 265585106 320168344 180377980 562005510 713103559 787378367 445409681 968778555 384404001 674024530 648370268 757559927 455081617 500587977 435146481 759661903 579446995 775028142 268969374 880757463 519865349 900899970 78457272 812425944 650707930 920692889 609924905 869561323 383884220 395395584 78441265 374722966 156585190 530244936 553755006 925420157 232867560 693729577 121441176 445104275 566427211 736946318 498967918 859882252 332637940 594496063 326021742 635697263 652494122 874647389 710554397 867496624 932040716 953526221 448088849 491823911 118800943 404959774 138249267 301052843 640292691 708745158 20241097 595127884 999718414 999833842 207827941 443631203 249586160 456803955 777288078 956582574 78615197 407617278 285374737 355076638 409224820 874119428 959341199 979540066 465445577 919921064 291086046 339431937 782390952 838625663 225703092 665163111 201731568 645575773 495936684 908498237 902215670 988543574 592297181 878196299 623736895 754143825 41030327 783440699 308349244 798728551 739472118 773291714 72455621 360586469 520862946 692542314 801375717 850607786 739856618 822017685 202674960 266936217 564508050 874421801 578853531 987820268 759316646 790049354 252172053 610195283 36116619 147030054 424830031 541485994 169883732 306091634 262934461 980021096 550993129 940480232 635825265 819268884 692992894 992941150 888780544 968165741 967017835 980765320 473084499 710211041 822237924 841551827 885233812 911007632 412108260 463222691 878956773 929116008 140916725 419107089 453986079 852310542 166508859 264542060 639554463 833043858 294431498 333716412 561405677 799170732 397023820 951338672 481207996 709944766 617083685 836288876 630197290 742618307 444804668 572065867 961904987 967626148 632130099 760357272 292861410 862430825 985662736 988139415 206817571 535228827 382035969 467056491 832564040 973475453 998246899 999447414 351522398 855623886 211248498 787898315 158597773 792099517 860886154 869700893 118720985 844702011 158957767 856574068 272962707 380658209 641244386 735815151 274427876 902859932 584383649 588574661 136032879 601481511 530064586 958352443 441467866 897270473 543809012 791750805 941591810 991872231 933077789 998068330 879962672 970241065 601680153 925125605 309037157 569575458 108635928 874106710 612948678 904440249 346213684 642914813 308738912 990581987 468584605 577149535 689908258 931811845 767984436 952169089 690048955 911885554 247227068 586712227 61581316 628451208 707062403 755242923 259330245 789624284 381609547 680232168 417246862 519300093 89354098 713995249 482941158 501603406 923070162 934740479 691656782 944172207 615125231 685552854 968465481 968927414 436553485 829440182 880388769 923906442 70714254 359778731 73996753 843179287 821884523 976305862 595114463 864182196 38129069 124511439 5853689 697277059 429528364 531763514 921320083 937577851 393546873 807319378 897385070 912264986 530260324 804271550 117021942 554895905 265055091 392370947 293243990 469464595 646762869 881744368 839499894 956232715 258843310 681380121 162416773 453039892 710855305 850170410 800510458 953480863 656530316 933423051 859647065 904753636 793764004 919338569 989929245 994262274 542104539 652331103 969923598 987481235 73653976 179141245 837801789 955853401 785922708 796838616 16788485 868789427 163876404 406496902 822139513 928878067 787584828 989044668 617292334 837044121 455905937 569241719 955399153 977719130 645923119 798230368 322867777 950872542 985995151 994989901 63380405 630597519 50698752 627140564 903225117 974446718 299214481 814612887 938212565 970261462 789352753 994090036 347462304 536029143 77702988 801505160 461347118 789240154 218028551 548361457 995140966 998201209 448631677 925523946 325087167 778649324 208385862 561062248 211217756 813044823 214301115 854310108 972188527 991933781 108451061 176727523 552657308 806478719 278508835 849691591 296629730 489610990 435557688 656126031 945769923 988214227 790079444 855585111 924096088 944494817 15590586 713917786 809376338 988736294 376097339 437944454 567910409 885869325 667685112 842195375 985813932 988890096 5788431 279778274 386436334 888534361 459687671 661948467 69720420 560599503 446998290 762160531 890008950 978555614 240757448 890206874 202346107 748121961 27724770 889097530 141279855 945829372 749425676 977534848 112106523 285239060 925787078 954949203 380921951 639901673 349778449 523327248 437321099 973834483 757680993 973702091 119888538 474449726 155175005 407139208 100753230 751790454 439358281 832244600 961853569 975175413 780771322 830059923 908354558 978882740 235139490 439076816 119423165 811325623 956821176 989503478 285993595 628948752 122741479 497703401 150082692 413556537 477969869 559877381 131384172 239707850 740171289 781230589 541189957 641877866 660984584 676639609 999566639 999922467 509165451 809881715 878107866 955364141 552136308 731666315 200711464 716956919 488079592 722704864 966473145 971057152 873393773 993828510 944878323 945346577 666360761 739270362 670685793 933542205 653927108 907416295 101556661 645617899 144352645 352795742 82300944 127715787 708674263 997923952 1401431 158889266 916639381 991812990 3246820 615833212 748321462 872825983 179645746 608698827 743371338 823679523 655307560 972303018 555162717 640664126 796286394 981426451 874275214 907874468 271250361 824119387 977777123 983114885 191795486 922752021 709433696 825038946 450578817 718088669 570575822 740042673 348850522 791263308 302047718 803895236 209180516 614764845 764760018 993404683 794582876 926391598 919614109 930838017 805072763 977216266 612455119 676793977 94489884 888492328 446500040 827708137 981475702 982398081 614135327 935015229 929568728 987173204 728673759 951356956 530716930 712842960 600922977 900055408 984694287 990748932 329299089 462411076 308651494 728312094 399847530 429075856 815607799 893407305 154174903 608915283 678000233 703876084 623199510 737101473 327724783 377140828 103537057 356402613 425128365 792537569 248039141 791050249 110657754 287572493 934537686 956873286 29890520 743330325 846514031 916396766 285537679 381091727 88890979 771837024 436293216 812247056 918019352 934966542 345160059 791908017 86899279 888605586 796049306 886471002 107335162 247459886 244983695 363862389 76453998 241463509 361249031 732230018 828942572 918460660 649301206 875718587 848621893 939604160 741052410 794777559 892071514 935961936 574755380 620482607 49806917 314885022 261780958 575314565 229129654 530371934 975399250 995667608 242808433 665692998 307307122 357820933 200599701 870700151 491101597 934787269 336789782 600474470 814695474 930402949 200577851 569000464 205700463 397859115 800684225 854988799 299242841 566628357 782898907 940325410 714288402 994370888 889472872 984091874 5865719 135597891 801491257 823688090 58614648 976849546 770081446 969269369 904207687 929862521 181964854 632107735 724204900 743537192 74772717 216466321 360450201 754353204 148845159 959184498 590033844 724791911 2997956 506795266 626595843 827507082 592765913 920236104 81766481 740917499 945269356 961509506 356136419 986802412 820324854 857857184 337582161 353880603 268266478 807534204 134877926 491867351 330377685 431239007 45454005 93634618 872317861 962983761 130708693 166813873 360645015 952963402 301657415 819466626 139360623 854266422 762213079 943666884 440910210 891133974 477115074 740568830 656702147 773529956 466965479 764785234 83227327 726871249 412776597 494721601 490186802 753636564 159136822 623483888 589746327 728200786 665733950 718950653 877154838 878003844 313112890 861967606 708841798 782377162 974822801 981986475 447615048 813214412 459570759 766359852 379626573 629368719 722730104 867475857 157765087 244134560 252785841 369387386 189432846 399563036 314126782 599682303 452249797 802720918 596365542 826523829 545878300 882132154 711783290 737830250 981006612 984534042 738690831 887495637 628277796 690286394 643170567 812563614 191101037 818197531 627345046 852308198 175776338 954804371 769165548 841035285 826245138 878263108 155084164 499129444 238630294 705032872 699989726 829033171 803585766 839133880 260040089 800552213 573315497 944169771 56835404 790816491 110074914 320497731 421424476 428384393 679260489 842509449 687207023 756554414 187482743 919077458 472606201 958293828 299181178 906556524 981073392 985979292 251794509 571287975 741587470 854588653 445064994 583494105 429092773 804348591 819206337 841550655 602228559 622306019 617897732 755419867 800213610 849118499 66164752 158260716 537599646 647953739 987546855 999176159 60303500 136790956 254052816 664891593 953225872 993323630 535436216 908154432 774176682 974346998 856345986 927513183 492118411 926200170 569911327 710019046 226203688 523756400 429820973 595905516 921785523 989721215 220087256 671218101 219800638 573820287 935599096 968119314 263916644 869773701 280551268 691127175 454126953 838136333 489629765 542763526 675369459 975502244 858424695 908415610 890054578 941791086 529388832 754899565 844483188 857149575 598715334 788999865 950210693 963108908 44532259 266680227 947319790 987836127 393345431 633427848 598185460 870363479 374211892 601379433 342864037 832504120 471185362 610842240 402483297 770039443 784073251 891658530 338452303 344700560 944088319 989047107 463983948 869920873 315647120 567829753 395199403 534150249 196786136 638211755 561284470 783986282 794510310 959823322 526873964 994836305 474051189 784620031 924698450 933013655 231544614 898778840 626951695 883963481 857630934 926518080 239842283 592593622 701950991 764830313 806777424 944609032 243088226 404063678 529127105 534248859 985780543 987975453 963976324 981978470 519549076 689879879 645652838 928665103 775853678 786874309 251363005 597672241 980772596 984406919 755937724 793998199 798086810 900552594 742914687 950864664 397877444 945940118 187909304 700950136 647184075 780970541 275654040 522689998 875402887 998991672 807009485 885851138 870497003 897049941 747622865 947252831 914569295 963599283 604854083 825989533 164841067 543909841 247443113 452513958 674058880 778417282 467941048 561553919 711107179 920535827 353156996 577364792 752222166 880858183 681291766 864754939 448188096 539426345 794939945 926662846 266382571 804499415 134778631 503400602 566082272 933939885 676825429 890146935 793997109 878906165 226919692 257354271 605017090 916168752 296655034 489480704 691041761 845584383 146119923 910773604 766587886 894037087 447503209 963357499 259859617 271642119 199571315 511466646 216584567 909013647 429377266 809968327 836501379 862060984 398871952 500688632 102134264 942594280 397796127 632624281 96039166 105752186 599659387 614810732 985680499 987451354 915141534 988195200 956137957 991755119 577644424 702312591 966810141 989372477 2377403 898006737 16801747 101493190 315070594 564431961 610504433 766960316 380276267 451493669 966046151 997662436 184190712 464103832 257252094 869633825 396440102 789580062 633520261 775819667 141528710 195678351 343154587 909246058 122254246 251262726 244582568 526699241 103746172 665174023 831719759 834138703 897999985 921029460 354227267 707924531 670828187 769069500 389606485 494747829 885442937 968142077 330349182 949416918 222847079 817361219 741042415 932728194 247571081 805310860 721458519 790698848 600447561 764662382 560127229 682903222 249869999 948873881 826807046 860708533 479305352 793816235 339708767 808733210 942053581 986103302 487233616 708314221 681286743 845487068 716374177 857447303 802531776 877507271 98821697 482041954 314869133 690090334 729572375 856821074 857691659 982676433 418391739 908176700 465666611 968016296 330064736 523919525 287131661 318693173 164662896 283516760 156287365 993545731 437657237 994289166 436820976 624979439 591674990 952076671 842815356 878248186 777138596 904227115 356865940 636690627 830366593 928747044 688413763 930325871 547386664 680151048 218286146 901320834 453862020 924380033 148780966 848119791 168935777 847249758 894378916 999216094 224972454 913948584 594485435 758949638 783067035 957228669 819415195 869454369 978544807 987673386 534490021 608184234 675593234 764642194 981180896 990977170 874968616 928354380 837902292 982610399 110362493 359432138 66077242 149276541 801781053 916261176 622583457 820427276 467834162 996290194 341563324 509374849 98525289 454598262 9224629 701160605 665456418 671048898 539807254 968564164 606305163 694142064 299645213 674355572 871339185 919353028 593458299 866627436 227965138 914655387 547400480 874832351 645231082 963042557 633693940 972746565 515010800 578128366 803907253 938984008 875032942 915266062 739859983 874549667 756819911 864734138 843476908 918031825 957902724 966351516 472557061 826167300 611160293 831584387 936529418 973730497 580692348 978899582 828998108 964140896 906992502 988176401 73893309 875891819 663289543 999567953 568904468 742385997 525732926 672309104 921278559 972193241 917964967 956017503 990019667 998848484 137987519 294807022 685909090 820109823 210656506 248906046 633818363 782799430 842876189 916137310 225008771 225599813 141186617 724550348 716794660 897548199 385192294 973405953 664603451 829655483 36276349 609746028 329120317 938896072 700045998 912923995 644100760 723158571 24705656 417872238 709921186 909077040 62990924 218694903 773700810 914770927 184393185 494393662 2884796 260807803 453683821 866747159 168811205 646916531 644235142 671888622 478112735 995088507 333144227 712427206 500571568 755129688 617304212 638153467 198926731 578330278 345266131 862778736 15331030 40232042 488710279 873730511 496419023 777549717 243832891 653441742 711424973 724500143 372911043 736612746 16395288 385530196 483575187 636803471 665109112 711655085 724658645 750913354 427858337 522726462 662955586 816951756 617171713 656675549 296619582 502517960 868337508 942362265 380640205 500830883 33723657 126285073 793966966 838700740 878442638 974160962 515429726 629609687 974555151 988444819 67284573 778999876 330447532 928413586 613010601 734026159 692546151 732575126 493505404 597253659 612981315 832036087 470375220 735288981 88011849 873646574 140831796 952701596 123455331 521738021 860314685 943989437 965775300 999598923 825998258 990845049 335797475 638002403 415006400 975817547 262362318 888486678 953628929 985270492 189908015 416780541 672757049 815886372 847632166 916794570 245690742 525516695 748424048 868149977 522964833 943532719 290033852 465607406 756729268 923114303 91019097 851178731 201670390 702525960 551804593 782028175 13495600 262727087 233425123 577787303 234573840 762117678 143787496 214133221 288184779 369747975 179750085 416241353 238897733 445438704 632219878 972951031 732413790 943941057 395404498 956577337 524370792 836702500 489399546 496996265 842157611 933681707 656940797 696241153 55522653 917619778 616315528 840038203 296801427 939560236 85359666 942033940 426466059 886983242 466450367 669259011 712907095 759132269 150381379 432049580 973398682 986829511 618637409 687509058 563450994 834312157 870963577 986852041 664462295 993887713 753950641 829313521 266794246 714184228 454608231 927729626 123805790 711193171 323301007 892748996 532083166 760103311 628435982 835579107 33309830 195975645 237261962 658288363 151155135 546685940 262922361 700516205 981357169 983426335 707883576 936625372 493594762 784427586 981059357 999890388 889050796 907471890 702572948 750830173 892492306 961901283 861197109 968646495 228713495 469361037 651529509 755933780 936101942 983219882 35934379 751443485 977375899 993297067 778001850 920235287 980639994 982677836 668981089 676162318 411196863 839892698 758892623 862919510 85284430 103665083 386133155 682401122 46516018 961703954 36329565 425971662 786604538 918295272 146947443 404149541 769805182 845332898 775704677 791481858 326490688 531409635 857842056 968768233 987771076 991068009 418256708 465201055 110434015 810292520 496254029 543239863 190944958 930761581 141684335 954858871 343501333 497156214 890731822 892634820 600401000 968871407 338499373 950582349 54224932 440812162 656841165 999412693 576429988 633935078 420416041 878819172 587791746 806121590 759069758 771755101 915309122 917855855 710112552 977292096 805186236 870231907 863625271 903851333 410491577 786000619 77614293 527649250 997076299 999767251 791150457 803204752 564669638 702641859 770386937 919014025 422622243 665670606 860196251 938992363 308016897 355746297 362923331 921071039 707330458 927495972 768468265 887092790 362504272 576076557 674406545 937730367 6622861 135114924 749534236 923427392 288170022 705367001 981384960 983061983 196664436 335469971 425079628 597741453 103858065 608673384 865863076 869947230 24553381 409485375 26230279 507940070 709441429 761667881 506334387 948055351 824076352 853393748 194029289 997173128 883720064 932198426 212366897 522189756 666943378 771417826 763227039 997715172 498986721 683012232 288447460 402558390 903458119 970503249 134571581 770868421 161413522 484020204 816840384 974050751 96318409 479800401 23064270 322121474 157518590 625993703 834449912 975768745 798414670 890875247 620472466 690394100 844281624 967438126 560334179 821656209 933888539 960201158 371045482 557448029 604519608 926828273 944443041 991460453 808900924 961977932 696057926 871862454 455309253 703261493 435510346 958785400 926667343 965884420 756549833 959331394 685622418 735072942 129101655 201079426 121276049 344674398 891883996 897016290 938404917 938554848 131173737 868005563 94957113 399423421 615503451 978349993 260455617 856422387 675482944 973306547 682949475 957309469 958428736 958498698 242081523 572803917 926766914 979224314 710856735 948648239 625592713 953297383 82265719 985476851 152367385 836311513 963832673 981007029 388501070 419572956 241056850 896395257 979141735 994472385 221908398 405133607 777773403 978989762 321420000 941760609 438245967 813059504 848482007 949732259 867520291 961243955 36082441 277413452 771133668 788399580 22611953 400693033 770600484 778521369 397005360 959068419 546676690 814470333 284623189 410037986 774301333 905068397 874992894 995194939 977168973 997546824 240730969 590899623 185294861 421355076 814046865 996709600 703443771 910445746 914131854 951477022 805697217 878820466 381947686 874400687 168639083 468845252 445614769 983693800 19970841 653421359 916314197 983976818 808462728 953426629 736166264 743708993 354121738 927907294 934188994 942291676 927881398 954052066 443821678 864673075 304994191 470338788 295292881 607318803 621410936 787554656 794092297 798906066 973229685 991075331 896575624 975468022 463066114 846171661 213979404 674535923 221576789 825110919 190550816 536645190 4517119 302586333 462917047 919984516 268298247 915648848 150561211 399341310 920641113 939487843 714298670 826833758 642757599 812752513 704925345 806126265 268775505 989395941 97517787 794393577 24663684 222616145 746007858 849323832 77529960 420663361 187420270 190093019 129842770 905887259 828902871 907592230 11284003 850615025 176692687 194221812 633178391 742303732 259338720 449095635 600107317 860937487 998535280 999039906 270746148 690651444 750286915 821651378 813861251 891569366 800897444 933482784 463355810 773385996 594999051 889360636 940418362 992818641 187907284 658050587 754238556 943654867 459331928 957256362 562025098 812430430 161998329 319974585 958457880 960820549 612123390 716933860 135381972 408336126 641931078 695697689 73414509 209353397 217316264 517382267 119060231 144934281 162103423 239637244 889824131 928321032 262879815 749945848 311385853 380501629 21547443 698369971 845506442 908006960 666977434 719206203 662025301 720285464 326452489 521830102 947378397 955939840 480750406 673569844 22521842 408229372 974851586 990765780 786197830 903788896 807931284 881182474 692487773 715920288 109183974 860823086 379322166 850195373 335521354 625860514 138489519 424632732 224384394 818503894 454019939 956421679 46197822 976641729 677106176 787536531 66857494 161170550 568649025 767920974 203600900 555497494 394661991 982885252 477840049 583730992 316751008 427844260 630145046 851313153 672627714 878029678 304949144 834102923 484743069 573554346 392506994 947737012 459093916 569523303 842603653 903343444 578810895 924438020 249208359 703135131 578946427 766615925 166523605 292167035 787690064 832627299 988114415 995850746 764679265 921693933 232564053 797632747 961230081 978138073 533404375 552381077 804509193 950014846 673328931 981252340 770466229 812730023 231699503 391244267 210044910 414674066 651301042 809849163 101190760 770999216 387200510 679708318 275803498 925855406 432636781 608974565 907956462 925310751 414300362 906331867 18467850 116134266 265264440 892607423 768507556 950084133 645759488 767749563 489536062 975390691 162121011 329219878 884284781 933736517 561448738 673764962 702629694 980186976 118042978 347209513 313849327 571798285 163333014 959738947 33097917 103343009 671362357 896609051 522028476 764517724 537246986 968165554 885129456 898038564 721752698 963467038 788353404 988623013 913661335 940674233 986024130 997325481 112144355 357075574 10074670 521227193 815037370 992792492 554238091 888218022 191761970 255271649 957526566 993848112 18299801 480431567 882147478 955442682 438606746 893958628 21696653 925669177 433546914 808271659 403816250 592129720 274912836 759432076 63752303 442280404 502665962 748817125 578564037 882225492 222289008 420687157 419775987 480722114 736377433 863122007 761845169 963029382 801966766 910133186 812599287 943949919 421716334 628872293 847239463 982208253 63360561 972883071 256107265 469796649 323529791 931981679 80844870 742301654 940027449 955090781 18555939 391971586 899383659 909315517 874356032 883122602 878541633 917042133 195488038 457296206 581927980 694921001 788009278 841664882 250562336 951241309 300439269 757946245 707628316 975478322 104324193 648901477 870469256 908015411 564463686 594422682 51278313 823047165 575778732 892380668 462582586 930600314 280643851 441026506 980285178 993639846 932074231 941637431 336919962 626236420 521413523 538409624 661178981 681652265 345946963 811396188 243612352 989094087 223931255 932029675 63553813 164430852 536654218 735185572 993145113 993329959 298437428 608970015 212414587 728109795 148364640 327655479 814992465 957629756 624631287 970638554 404400423 898533774 760271971 802594476 976145726 984059939 772327102 898559480 307677801 674952925 483675600 801442901 932324469 991602920 858983699 911321390 600093213 674730576 74503804 803925141 749206670 902243317 170108150 537267361 369813279 946373180 121644185 319145560 549452222 704431985 3537949 180925887 611676728 698376378 499466261 692089006 497592683 719660305 414911292 440166414 15177359 993146880 540164243 740614136 534106282 648210133 696329782 883194888 408076229 771253093 784186423 879592314 93893645 730054024 609528447 745464084 622237799 977091425 486325381 660618441 660940662 799708492 646848014 812607843 548250889 824312642 276399441 418899114 745296650 945231892 693371182 885356028 765526733 923857055 415681518 482150053 189026212 983673544 194398043 514725833 57446685 612562250 953522891 979190067 751316911 796657968 461878161 741841131 489733019 905534837 547853463 565596284 349568355 724480453 88584790 509168782 491242091 969846524 898757886 924078097 453869732 692214426 877621097 890791060 717763207 755486792 2569832 821902661 820491579 927225839 422062535 613165265 461093905 893592128 580208838 908837843 961865200 984430732 974014632 985699867 110620168 539861337 931044024 933085002 901079766 946000691 319968447 656380146 715498459 926680711 752069254 988219408 661264970 793245726 919562013 994129220 453731345 510168345 38030890 914155853 155830826 563101234 707309444 758685449 221836170 294961796 433594582 692409779 814201857 888640272 557790462 630317037 443404990 467330711 534550243 783423107 698422700 982329032 26734830 734520125 958277932 970216465 588443700 754129581 936497936 971229242 93010847 277934424 939682550 965059845 86674346 999965287 764712526 876205983 739368470 827764639 176410814 974149119 238570526 388603878 294921439 858969756 45618095 771363939 89247833 214212493 157069666 269171629 865251318 933661756 387812418 616581820 464001164 545376686 940746419 998065847 93632147 362532074 118443240 215697238 878296819 979567591 649470301 939726242 433103989 621779214 589185553 694975353 659947538 925772326 203584187 888856809 507474186 683363278 762596277 892453364 501659465 871044732 582347411 927904622 41069820 270887587 426156722 627043679 58965343 596785488 444600190 704693684 80164169 554106643 34220763 252225163 938207786 973992141 972545252 984256416 477816483 618574676 542168376 568955275 543364087 983534950 89876664 487677320 552171029 820492816 580484219 674241027 868716937 883501514 314949231 991441888 142559793 149515094 57941440 81173002 743426266 780051483 224221581 802492866 156012357 477244655 244097310 249806371 377660737 872012131 610547985 844456360 501151262 911915580 538963031 641687152 573948087 880773742 146989749 548418641 533166698 894894845 334460234 697558771 705478020 858599424 575273811 865059588 104813974 257134722 353574552 487867659 498468148 803972683 961665162 970262930 982966785 994882166 19219860 60057591 613692431 895103078 409474873 532809539 282620906 649749824 196936776 712080800 112771725 267590625 777786193 849582306 901102230 957661054 56643084 979286009 757732958 911516727 159273259 430262179 847893280 922112622 241368450 819780017 594159506 806193499 861154367 889172509 117231013 548238831 111723442 513375000 851970951 944266507 912510599 953961986 801340738 839724815 686226531 868340365 148674486 567193743 349350096 603923773 718783546 726349626 77672133 683725526 862486249 949047106 41507911 272236286 854001796 879396038 100621230 353898865 960920355 973699871 129265377 980755573 554496780 681558252 856224091 967787714 353519068 704157829 869143234 934847022 499162231 962744125 643989334 898332489 234788223 565467292 258363342 683291720 605073025 931742507 483058737 989609793 932884620 964160623 649807201 682165969 486841303 649493640 530988226 828555378 788945313 827717756 394428839 646645287 434268867 849574807 15311338 775480025 771162394 847112547 250243500 281274998 604975669 954543466 446868068 966816092 692545350 862589782 660592962 717838586 590477423 984840424 129029648 676801234 206850970 495928278 71350832 812216753 558477744 613217496 132241656 340945082 547539636 722551336 536317972 993540066 297963736 649115371 68144030 824960281 340503491 660202074 21854645 529919265 718161843 900870042 578489978 680532491 327711811 741369314 277371263 547596725 49181429 95819318 406402408 594167697 330029781 770543234 284205078 290709632 188142385 612280451 677865508 793778118 491350276 990608259 288758136 302883135 845209004 871983398 953352282 964104829 163065957 479666429 459721477 624402047 500834685 814379896 541301360 784880413 668727996 841763499 477769777 880351452 653522301 712361750 414177556 484243113 50658145 459601464 765979745 819542574 921632000 993290367 277097445 349729728 692117642 920504789 954771030 986923426 58819673 995115968 8888013 494188763 643331658 985412302 773432894 818844297 727172862 958439814 463517768 898474740 757255554 946097593 478314615 840273479 120938788 985286751 643900401 965437218 373802644 954795088 282710240 544518462 967499581 986214829 564656384 746027684 316422481 925587255 233357074 948897064 257757583 970048907 838217086 990814089 108295272 868803796 767539427 775670478 330835417 345543893 547426260 727237048 477064686 618039867 371375814 996059722 445592002 641786319 966861772 970765009 400569104 955041607 191942471 605458772 465627121 906078038 975174169 979272860 638271944 678791594 340317947 704492870 779063828 884569513 595643600 966740855 875243712 956173807 670698971 673589884 96124670 985482395 362729195 790317678 871336381 918109350 144524429 179386594 670044891 782315338 486981041 972168489 401121289 581763961 197768392 407663980 891400860 965964065 429867520 673051136 444341848 789936979 941463131 968302122 599319165 896217869 681945411 942091328 55497401 129829812 332834347 606504604 99087009 951338965 331761294 618835420 355760231 515947052 259769051 359146882 755799440 947544275 809959244 956282884 904477097 927057026 342337207 367387415 790835988 818317936 909289198 946447781 967090474 987302972 972136916 976300095 715419362 750735362 699073650 991268958 1698951 867540226 799773270 960590954 119719957 729834625 464525019 654098619 184544877 795684854 944992861 993338482 417146741 613483981 107320823 292376958 339661414 576915237 765311313 818282882 556693329 946318161 684881507 828553484 834620023 905474525 37509063 367067998 320340068 972416414 670825402 920705979 149863847 178245850 59016827 87327764 656693714 949629863 353686896 425218969 244596759 571758153 325570869 692485831 813390009 830175160 563053786 656557035 616158803 859532299 488573423 885139912 20023029 683554213 779890620 882288111 685339590 981790471 439650869 507542389 274251702 778967278 289342158 573597401 299401328 348471490 57932111 547793925 964669333 972653188 776784600 894447128 354393639 808000783 657554173 840005197 901122229 907333294 253250744 471774099 11555224 895817121 207910090 832323653 553441925 706233964 237242666 415481856 89980328 121792850 666293243 751386172 834451838 983138188 753802708 922874861 109577189 588562618 602628150 940701553 263890619 602239532 232603628 548026628 346319816 554286179 214995735 976024625 348595564 942290074 812571696 860733583 281670583 327085761 651157310 768762550 657297365 925882434 300357711 412193911 380340653 452060651 244058190 797487652 999977225 999986151 797430989 877041580 634275158 858122921 78668390 359516932 160428660 841116134 294036143 649742140 346198813 796519598 56914786 575743458 739978574 748391989 354668945 877258300 3006793 807854140 213012680 910504867 326948028 343127875 222349270 669029547 798821951 844139800 389778780 475232128 822849168 915242623 85719724 499211881 569760186 694356346 580659572 992210741 951104967 961322036 833496891 969264970 152279373 652260631 889741397 923255205 737594395 958060036 902664146 951781383 730753711 867470741 765683651 987164259 570966641 634371703 94377563 936050870 179499984 979694014 109266759 110180416 217105164 804928348 444147996 996038433 616861686 911908143 90829082 948705690 205318262 702958097 887245120 957855550 496655183 829107670 458798157 479493794 847856212 856069014 279929203 861392441 715813851 788238670 746912769 882874021 657631627 886645846 721508308 990727112 252659625 794674952 65605179 331217620 39458493 394072708 341757986 605878337 605298209 704229744 995532833 999894314 685458880 751008713 486377070 798656189 850364934 943218028 142488158 621414091 93006947 557895587 663188224 679069490 883713800 971873130 893853690 985049933 977896400 984373524 375368752 619093530 278007095 813210567 989727098 994581520 957061987 977337607 147698031 778002055 450362303 636970978 989192379 999347892 608330090 688009971 231034814 486170927 716779913 936931893 279493279 938442300 461796389 912929931 229701920 707871866 756182029 938620756 993755117 998407730 711927509 888570383 311500277 472147423 661263408 970877132 339915595 938919966 519821544 818855276 537869219 778935799 307328429 604301569 789296462 820567640 827906901 888958576 364724128 389078035 313760821 445766839 550748237 669649043 825646121 979377769 786919222 880519186 403313614 723406999 90813298 775850419 792552961 944340216 757907551 766070279 65813142 608910376 813026113 833330207 584463460 690648272 930654230 946044589 23788532 251976827 698953097 830889402 626688459 952395944 279009279 618425734 603741188 755052220 218369805 633345076 800431587 822498243 948066634 959772379 628893524 660926429 939763091 941252182 868670476 925303688 788179450 979436222 61860621 607070006 439746939 550013603 280107018 895748136 768244395 968659069 624791657 758938577 397386722 702156419 450493249 738994902 976715797 977066488 180492212 883265186 84884254 674341227 568427031 765139553 629528437 695172807 995009316 998001598 508801698 517420666 296321554 418100939 558927602 725208022 656169733 963951550 244332712 751192970 656723552 789075364 788431620 945548514 547666525 981931151 222482585 771786902 280750214 902431331 79158686 498266844 998046759 999685743 845693407 968357948 384928287 676734385 81211967 837100541 87958285 670009522 618937207 794652176 415770558 506527687 995640112 999367347 896313789 938672058 375788784 936835787 201718158 686013825 336698796 951202195 580058080 821385306 995625344 999223528 299751162 784064880 689321681 844195478 431862754 963812550 104611367 451183492 109691968 479756401 634733953 826687290 649040888 727484498 299193235 623986989 411341192 736637465 865670577 893477853 587449539 636786954 651132706 953734942 266396611 685738231 91835515 994792067 945083535 947550448 837689111 880884299 378830124 769162329 719342427 763736353 317609313 583718063 893559360 941234529 519505978 860432865 536206951 575027568 360220188 778454935 36852243 914038341 150883417 616548966 366636593 699122213 615447712 710778108 238101031 871245150 238440963 503928514 453740366 714371335 546575519 803305378 251659353 345773272 382519443 564522827 459166881 620134416 461915884 689446127 783851907 880795205 773863001 909297637 621468608 800022728 15337388 625574988 42430871 866125948 91057600 792212826 120232906 236913138 219447147 247999837 549274779 899671448 453213736 527857493 747503981 989959107 809916482 896432749 751543968 850072677 516391157 713935489 41219541 768971962 323016397 874605377 815588595 818115384 943633675 988898813 457980485 999126359 690308891 988144421 650521558 892404767 57152051 837057566 534787541 583269154 468207342 614713808 465891205 847081945 727676596 769566213 235934998 694477573 313596268 436206423 886997655 969038978 840717561 904422993 262782613 801122124 926393763 978798866 853957839 881611973 19423823 913599815 940893397 981142053 431921192 625811408 438926523 473866441 843317286 853915029 892961473 960146659 173474009 862928175 842344528 959919539 852931074 967794227 923060426 949937483 634415748 755904249 685792952 807095033 895275636 970443980 148557906 937773211 377039284 400853666 902850315 929391655 767505264 969708994 849207473 908081986 669431179 817062515 364734050 416437674 709731502 871871682 985044008 995504678 10999430 859959437 36327500 62179653 175982295 224262602 242274595 348449322 581581987 930589731 956802438 998924946 616624750 819153049 219350985 856940511 364049972 393652344 359187499 605670588 4443601 776436277 189166160 945595489 382155129 828967161 498802199 972267426 789678577 936089717 843162475 897039500 801673881 912746239 100328561 720130943 843628740 900825477 308590635 621785720 543134140 584038265 400597477 864276956 284274247 385232879 380255747 394680783 768635519 782284180 820191857 959533178 157958724 572222084 324982638 592565216 242765087 537607636 740752732 963388090 512427620 682974482 561201215 929560429 163743590 789147180 873729679 999216586 599189267 764191062 114043282 628480503 591863933 815809917 175123837 204453789 588884631 766596570 949019948 952630896 582253372 707502666 160978101 825445121 725187118 765111648 131947969 565625577 925248473 953091456 428848944 433144357 135866838 853967912 781125795 805651759 542526903 924612899 903157961 947494701 867621642 920287259 919809893 942012406 258688956 576696201 835320086 890174185 139451478 206966520 173675850 821251317 273846067 981483477 810325816 849236930 527058815 778195394 499469671 836497282 258967200 948395742 369274561 969801649 108927224 633718677 377060847 950677861 810799364 850074045 211390954 281068759 464303249 528002577 16661705 742228523 540424251 958089145 561591749 570307398 479530172 763390382 304123792 965195125 420594871 730702759 890245227 913357205 942694805 992447313 937945088 952451934 834414967 995601751 952737135 958854005 680100950 986478733 34174853 940875254 714634959 758217036 3022296 521851673 531230230 751621444 119873332 437108730 783977004 887751714 785110760 852861738 206397000 711670229 435879046 734048598 823543969 963096465 189008779 892397533 69040290 713328464 53658962 496539462 615572936 801893430 295853150 492283291 709362647 928865086 954640512 961453182 574070008 658114028 427704293 990862755 928269329 943669076 684573758 942062415 261503121 761754307 758771845 927227308 523901193 543463691 414228402 755267245 172848703 553022285 915562303 992570316 236931707 660740670 205578086 773855817 801646738 866431463 119534984 700148059 342156171 541536040 544099340 660736636 713739824 742089009 263214002 579851352 876154145 995049148 802500961 941003545 947823819 992294492 577578707 827076274 476004889 874958378 710806359 809995496 959863727 988490840 686174142 737679454 79812953 212113769 163192772 841820673 924146303 952648574 275052246 341827898 389143318 724230981 471937839 961308212 531797412 570608929 526698611 886567775 757574390 933036969 111129703 885205336 446987235 459457425 555884399 881823349 66163943 392707560 147456398 610163231 811054918 931739707 526986391 541888891 157941920 820428452 654563119 977171108 486906308 615207176 937917142 943339837 648761465 998273266 525346213 811848502 342152303 634999739 247839281 422448626 620796804 910346104 695168978 789530942 292169606 577858859 480037848 589673423 855280569 892622476 188394995 269795003 561939425 901734550 703378480 856172493 360861322 376552058 236889891 816557679 805928039 853404080 517927017 907991109 961676061 985924895 122631060 677232721 267632836 540758190 157412384 737961409 384881460 813860985 560722360 646657534 103553537 146739433 997183471 997439694 755843804 835028938 463361745 614086312 664347305 804005923 378721770 560375921 680035571 848392796 407185981 940987448 521050346 798135519 605106750 801078265 641403664 694457237 755865160 764474035 965398301 987884336 23646514 942981382 488977534 794556843 930411026 941313137 930798754 956146265 875730291 945493620 650147535 811844589 613903423 993674651 692123073 700677201 201664507 469924457 605681715 901811202 827918258 900755277 142132592 215398922 194617169 933698170 612545815 865912953 175274262 409324216 631609616 831127265 713184242 772454153 988371843 998406809 717077070 753700290 116666793 353012501 672763765 776263589 464964020 702448498 430848927 692897205 715625943 917423106 936169429 976024312 220341969 311835605 103290223 474346636 296035024 872017668 963491481 990604809 144378057 206438547 413435524 994272191 591507442 825428304 334908117 441611759 218086500 907760929 381785302 696673946 927518438 977587631 529424394 963903894 389188937 785102329 308301261 412940351 390509685 506986508 795100677 897623239 235480361 920968536 971298005 992488792 937633239 959226316 9045326 565176234 795769444 931752801 521055489 582416702 620597994 688207354 555293768 898414989 783304254 860007072 950644529 962016587 944640550 973121998 804150707 883018379 771924922 901607857 318902709 924990163 882227608 944595133 391648644 462182502 750605002 866857746 601355242 715176785 311890090 507802114 327071303 500995856 972833513 985605608 180616846 449592341 350449807 415932365 425805980 934494672 151898069 803327677 415253286 565874993 637448912 981028063 844404775 952312917 981296665 997383042 821512971 850791074 564798533 709301302 232318736 355092008 648130903 892266398 556135543 784248532 480513914 893585156 211600988 312800748 105143157 339735366 7327634 510836626 58577382 224690341 641137245 936811076 80055905 254653555 438126678 455779900 427349730 776545703 42923819 495942634 305392267 602375091 643289225 880984029 291577579 861060824 454772832 962363895 550685815 560743116 534510493 671269639 903542035 930126875 99025630 380977882 918876089 994204265 729787269 891047807 430943069 768434573 435004254 963764852 761205275 911864818 59614210 734938533 43149993 52857174 936515825 969611193 311291336 683236376 829233472 833905662 2837890 967627911 494053905 853944089 419990911 957172417 273130379 296207256 214281550 560893386 216173423 296665233 144315337 745645043 577100795 901839193 257794217 336243154 474354736 803564929 812628282 873360066 347252624 657409894 52170646 498927578 1913851 611115833 137925928 932539054 584673375 935984313 773502367 957226526 422228564 476555442 598270320 685060107 310869727 713304916 996200267 998612967 435034830 515723686 729947154 767906825 474908220 864257460 30519296 836978561 128483697 872761883 150354287 298465196 955876246 976582784 721524889 725492619 953018091 997174789 976340647 980706146 678073393 804897509 90426733 829642920 768033276 870955654 731311900 812850966 773970304 866717728 892601348 917735253 68935092 186222382 904283378 954423826 838724400 845788313 212402166 774864209 590361832 596681212 132261125 461952708 489389443 706276963 539006753 953990577 821653338 940861209 172318467 794607371 941488627 984017081 532130493 860076693 856696070 886539491 145831814 998461692 853277542 875860652 420137580 708387965 211788331 977181274 455825989 725080559 308867566 572209064 445465838 915187471 385557810 875907263 708545773 750510944 757406668 855055162 545329483 558145705 853647736 940730079 936796761 959845177 140962099 755861682 546085536 999601429 352878269 428627488 631620982 718897940 734487105 745724594 772068160 772725905 90938850 306356616 876859328 915222958 271373672 793721149 416080200 426623698 862533558 886810221 187991043 237624807 951142828 960698999 831837553 954963425 422792624 839529871 705132842 877388682 916961678 953097335 635359426 741207435 86612429 984468242 742348935 962747113 684650798 763099411 735583981 949592330 649830360 716125328 499491056 793687552 820586942 941885215 228293977 457542633 280577430 452118023 295924984 332610449 426934143 828154988 472569011 951182490 397746262 470293389 948782701 967741614 441206446 867323470 964585702 967318470 381999358 913529594 958455956 989229718 103817130 782412288 242125659 798803595 166005534 693001504 218509729 982673594 308803451 941735073 704196106 719499269 609730194 762777937 948705906 951282762 140459540 625808128 891473596 891868369 571137399 572671706 134128930 374630685 857030217 866172982 631794500 741223831 347420816 903412246 837869710 850886541 959521023 963638906 966007089 991128022 109715716 111778533 275339559 444338183 503553488 817293696 349396819 985623580 383299382 564590245 701806223 800267001 999404088 999621986 659923402 847258837 470139105 733788156 335857634 454504334 488140090 521130423 597240868 805917017 763758982 936903341 663334030 866591270 778194980 938077669 678674264 868919644 818652953 832884513 146351050 531720144 850770572 995199059 459777997 545880974 205600494 653806452 395887807 655989856 998731096 999237763 347855182 967044104 134876066 586555173 326825114 343895069 631247175 936867823 29687784 291148363 771049618 844395848 705332101 784553912 444385499 975141802 912067103 944994724 928707555 949757147 306199339 518105256 319708276 940763974 411113045 866081760 145496828 225676100 863171561 898186463 741652417 917560808 721049569 744710237 686430136 882710841 46836679 268293780 625609735 721372863 497244758 940883741 235350364 314041192 373813235 884597114 402022634 797846178 805425441 991518116 86646669 711895949 742172672 814790345 101041740 235027470 261253242 485925306 76418713 636543271 186205008 972386596 724283132 940566948 907006244 943402753 865772858 945257378 159150839 943307495 645623187 779493291 143074691 177665864 243115399 420007073 406179681 429931722 866846489 935460294 630257782 633922593 461324683 505202843 591827002 774316500 999222043 999997360 276184402 377463894 956865347 971110707 795199212 906069053 209617637 742456898 841221402 901292534 309499934 779390361 869751035 891638245 160545931 234451861 523214095 708528061 306919996 925588568 827306249 855759096 657995039 898329417 222558778 524108386 889267138 932595089 690165406 907383967 515526980 586457012 500165341 921990430 595291043 885358092 451078963 986568606 871880581 971486499 64317091 642734478 757061099 887248069 707045656 971982458 460363586 785361511 850142327 898649830 30039126 657756441 300046622 453634751 42752271 939850157 372798176 670728350 839581079 880894339 757486746 997526438 701730257 903412026 776353528 864172192 993013628 997349005 582235207 894196574 478283990 998242001 443696879 927884406 157047464 581991667 604257428 798662978 200913960 325788814 270627279 970580234 558100920 826010931 866409615 988083961 397480461 529135008 911983588 963507051 775169481 856344120 98462826 396241247 416790702 703035856 401943297 769814646 776403690 986411740 905557063 907366414 27193214 346943563 91936266 158152146 9915377 644967972 469843844 932115736 523883449 906323843 99792326 682922855 255843873 465962984 327211099 460847325 284522333 749532829 433045824 831851792 449451412 683129547 104232072 524705234 942577407 950454879 815737832 861972493 735095231 928511182 370399075 986783087 956409532 957209038 570139622 574461222 844420581 954516768 365165542 431991308 16962045 593202431 534212793 702957176 133905993 861588763 262564235 873802329 83435749 950148641 572065858 951208183 104085376 970402999 854417144 951794607 915993174 933660727 959952493 970233803 975289873 983405700 93989880 799487649 566150726 783205075 273168970 416746715 12723160 299174674 780817447 838716471 835672619 877345332 493908864 944532216 507891036 894678335 406577954 860982425 474400368 664513374 931960401 935466024 629403380 734245364 617618866 817294531 228203414 929433130 220638279 747169489 540468427 578746744 851757113 987341943 845038527 864872441 940187760 985400261 657759390 805360399 806259339 972447341 777709727 910541449 539571529 682170179 89991183 470594291 710297494 724574742 163092655 193058562 125123882 270193219 805352516 873506135 174805450 307072521 818259692 938450459 333587748 557958021 578360002 870521806 582070731 840222840 531973926 628244893 730023112 740328641 149993332 925240277 24870008 779315891 209814920 375078536 956612700 981870091 826437433 861269486 68613875 238178756 404724435 580779342 674948330 896662030 157455991 866398089 767417164 892960406 5009108 935852359 940181421 980477514 813278284 892932417 458100864 961892878 61799910 365252787 224479134 983964490 58826238 149437021 433314534 510613186 935251611 939559937 890062823 966326652 791402002 991378270 486284688 719585200 581966876 907609466 504254890 575634504 923045994 978155102 688288770 832941892 763162806 855289384 463923298 727027897 928825319 948876873 1992604 934356677 695273749 732748111 298841666 367762643 50608114 330814802 210122592 929513703 810387645 983967690 945442987 989578464 518416681 593733769 351162269 651934105 387856601 800370088 4917873 623426859 203749739 861308810 338857997 692562850 320927571 826294402 100435917 466924135 480826910 960907963 989963710 992604007 422133030 627541194 27438192 192037499 828163043 901214173 783327073 911716302 825741525 845669388 793927532 883774904 744144143 942413943 526195235 873120091 988244831 991550939 848370353 867070309 654839493 917279438 507262232 695773270 53211482 595402181 529098675 748073653 147302405 760749109 421047657 629711255 14509599 182000097 843207010 983634383 823616685 926175854 89590864 571258409 45148274 61299094 152547834 363886027 745353552 938709315 168145531 834052574 942448224 967808737 812796929 922792052 187043749 347796808 40923570 115527615 244359277 306329247 56996789 306426394 646825792 739006736 372577664 795000462 805909559 881917275 749500196 805532724 191530693 412200153 652711654 938260159 183909557 431874944 137622006 899164443 514144262 774432516 811637291 942096735 648128367 702131137 757237891 992746912 604520282 808568380 180024106 591301558 573841840 606687414 285658569 316106201 881588622 917866225 765054161 774785610 3451755 451044608 568162809 714013106 635285365 912479975 305939766 441628517 454690285 848207266 177263157 338508480 795180478 799506701 57737486 421291409 260878611 484299264 476493164 858757546 504824415 982602288 94982348 735249833 596789101 614951739 389802712 445810399 732579793 786985186 274213051 279824585 934767903 936563794 73216004 890198560 805701979 878770666 210579118 513549230 986623344 999403064 266408967 594070169 92970535 609749527 609926821 934781832 654183009 684345020 303752306 499638577 412741519 994133735 345066473 572789941 542078698 574697682 635784576 658600503 613553130 986817951 6633458 615384067 639349454 966287731 407778194 613474424 327750421 490668322 75635125 766004412 843888380 931108178 662649344 947264932 68942367 80217429 498212163 983680500 192761699 898165702 352610898 928606522 361655130 791230738 298050613 834469649 273207728 562626340 894928797 977531273 575087277 882293552 211226061 289275583 625952480 673728315 828343126 892562210 802542115 957979126 711346162 947812723 815126674 918128210 552836771 966441901 931254505 981647646 28663449 265654139 342399363 747215003 772599773 994835052 778685040 995822803 387212627 736904089 3330877 867296720 468017986 536899266 585876381 729269362 383998098 461981083 132773688 688433401 612280987 985040586 421285586 534126533 948806659 987149729 568136449 885391106 257275827 774938801 128766741 500182333 992510237 996451991 176266847 383900885 790269892 878872275 430399056 500295193 811099750 926797324 12813380 354571612 893643875 968160518 55216527 276457598 282494728 878259567 714935937 734561053 905741769 988320426 455683551 743202218 546809405 930840004 652801189 813026065 101625784 655521229 164177056 327020842 700395666 754611841 598996681 685768687 722210978 765280647 445494904 490823115 814885934 963583883 820636292 962429553 527418638 676847153 143193097 401623786 102684891 363957423 603173757 683599133 665038714 810764621 215776134 526573270 816779235 937292812 578705309 994074939 634751774 785165004 920297930 950449774 296903770 944940735 721587043 890769397 243101147 479782030 400839833 775086416 229361934 467600991 636868503 829884213 615940287 950621851 101212115 395525742 126287854 417555735 27451659 486050672 476697489 958156565 714713483 812743202 149893682 648453128 53637791 459457870 745571689 934777771 85567642 185440637 677595061 790351388 218888308 752901618 688645738 698552839 683923330 789321480 656358503 909087274 774668136 818738850 546606288 569784206 933056197 991716217 587638677 631484348 352575403 889319255 247595993 411138547 832920871 896408444 224253224 327896393 468461083 698274374 666744395 730735678 913244762 981158794 351694402 697530040 88696118 423187421 828318434 975890505 342695053 913807399 2177717 190388324 725912348 789188071 515292543 799532410 637723559 968883611 127210558 478271764 825307304 941646590 541496519 754446668 112834852 187161697 945197527 975895378 949138825 971680106 447483760 644483306 308959696 636236054 226156110 743158736 349208550 899059979 607575251 702622570 436256950 829188466 784551525 820773769 584782350 865826095 976668623 982487734 118480572 183827691 506507964 519448614 835413402 878493404 78597658 486540968 567189491 732973734 177751522 986136687 191496698 652329041 746428459 966949757 745359583 819176328 132183011 691794577 568777324 929526655 529640534 852811725 322204341 906753239 512696651 659202269 108886007 749929371 363170553 410801280 974180684 989134946 910670450 986201675 308621796 418841621 776480779 948348295 625883973 870465904 562446401 975362299 224759734 846919367 358439205 690201658 471198043 540524761 120989628 318530553 535989267 539664223 62849955 637521265 960199003 961322225 796035618 879413353 839269177 869963924 310139687 909795898 202337260 608042741 556876698 810242752 1995946 45589445 307170005 665208660 385297122 875283518 617262042 700117481 249751671 848617304 88099199 145743380 182239997 437361378 65234637 400754205 719299040 836314522 453364794 895671926 579971673 699180859 719528674 759799215 241361673 335216170 810398769 844572028 96558759 525977166 521090790 945441415 902665206 991984589 691249569 982365068 382724926 459291732 994703197 997107760 415871208 642320845 150150365 962857540 706839288 881101037 883483634 963916743 294723863 299423861 161197587 739883623 642202580 714116905 6624941 936314346 753163546 985555082 324457590 540331794 827856001 841349543 366523952 711025826 872095899 971194434 25826766 30034631 520285018 728513967 635306602 682981864 292502496 520910995 119849015 789475698 483893713 663332394 260363143 503953485 704298129 990709361 996165846 996556280 739694558 987739057 620559300 697802128 384815472 616671954 819881045 863952923 404522160 796593307 854572245 961711223 643213288 955811853 497240156 600238037 551711213 614345486 217710056 623402978 680346848 691357155 288461602 393489476 875507122 924645444 774033565 845372568 16629620 306489710 85443892 293448110 551076071 969267655 475929903 667784100 595738296 910377490 88424143 857987975 122138778 824658770 337529512 393218071 36621607 98318877 800870537 939668894 860306023 989734505 567667595 888220323 980572246 986943382 521528314 911954431 893133082 913395822 396481260 594582520 833508653 937824100 750242885 956231315 250703689 874655077 886224348 936780892 158554866 189509998 83118960 337303876 340017524 781655666 32016901 957090793 794598447 842129122 237059072 770080357 596981869 943910288 506422898 640958896 495022911 660547381 987700172 998948338 377081830 411639212 323765037 710580517 363118369 772483703 528549613 995800352 171675112 809895046 370035084 865392703 334787529 901980371 794219868 873382526 712175782 714205502 821708347 846455692 909183727 948918468 51469188 328524194 768947350 922028000 132335549 320677648 515798842 827646304 256877225 641871568 974779495 978534754 52998253 347309955 358911008 841025756 682346592 994190461 999179893 999862372 329683941 966890623 611766655 650483135 146415462 532379663 446404971 586307642 110430693 115735352 469645109 591555468 666470255 796187324 280070226 870154642 685178465 941627216 578823877 780919722 328333983 767264993 736378410 884213341 466446230 954533059 38496469 330963836 237175173 787700163 685066903 879714035 917372909 956430625 933518212 995905595 248333740 309984736 815311663 935052837 857373428 909720192 225147536 863493527 308124341 604285499 697909188 906860647 707267101 998808309 797441430 945850878 927624645 961563456 715497883 867853751 319866602 607818867 223584571 644012464 215218058 762946811 625547059 795316927 175600975 381955663 263114415 345335410 320239005 743752837 571609776 808866895 167994317 691277344 318855599 543136206 936759266 990497065 776493679 980261892 440537766 605963437 582082752 727676251 117777975 950774923 438352341 719755437 104735931 258817874 781163372 869013833 923823217 994640780 375090100 651858703 172998668 566963933 259779490 682408069 951108886 989036498 101476580 201111916 937423984 946607549 459646920 695780215 307227878 838996566 658508611 993370511 385369787 406094582 358605904 538077196 820731792 847407428 853944436 961216266 463872875 512840595 651442467 900636889 847711861 999568289 955735727 956435331 194275977 830154236 365781225 410090699 699945772 855617616 478112694 620233142 710865469 790715538 469590750 975689732 635136129 751058307 834889262 852878966 246700088 261160648 316620687 721447143 292000811 717275934 298109123 412610903 764665414 974976034 902750994 903073951 541674542 625556692 640079046 805546044 841281706 997106502 193363351 450499929 306614308 486531631 919914385 942846035 114189203 739734623 736247975 822572824 870353441 930497115 373960841 689123254 577209476 888225054 924126023 972971354 945006460 972314060 274173459 312507451 222264134 697438697 810805572 965748215 399216465 955544514 243575839 613091199 20941604 70403857 572734935 769882500 312891840 808916133 501228817 569605543 886983966 983783742 749622460 926753898 303922016 759149604 850063052 910449038 305137153 441600732 113803357 313328295 591970266 745050995 201641059 943476783 674958312 868066054 652002848 819126671 514691338 663499638 747817003 808745142 960300662 974105993 955524533 968148277 761594014 960650228 223654764 783645964 874963747 886133907 409343988 834636108 267279390 899293990 694747334 761296794 844350220 955374732 346858176 736644436 773009764 994451390 821757442 880053332 312011393 941615458 56370272 667774542 318940065 692114901 314533214 985233164 116232629 409600468 900141852 920597134 593063339 822624341 602725780 737908298 617362212 943443196 98567922 979416208 158996273 892115234 465208568 581674489 271032278 798221106 307791640 596975181 290232096 384663801 306860601 988380642 704300061 968427729 475116538 506218650 556209945 976275513 155486239 820940080 404174314 919356661 316385657 587786400 644800122 918059933 415144540 890818281 289647260 848902272 848809771 992487328 884116873 958552858 298827407 913584199 438034946 885767268 666584661 928488633 553314898 944391566 414525658 950817278 695053655 710741189 192559667 612149183 854143381 952093652 108750471 787287759 806867156 932128982 24619373 752284893 904402451 941521262 963333346 980617113 656531987 676323725 567434622 672510885 290290309 376432189 642218370 826410529 15199027 580814067 355182788 780726712 580590976 719863415 372158043 748632911 996615598 997505880 105985491 311803924 756742454 963322053 535970967 703344052 744324703 750887540 810085644 916349369 531766694 660672608 726958306 768534734 608247101 667122079 21519301 320885969 742834522 888617649 537852054 845391300 870320814 899865989 332892657 805734766 374211780 639910374 821135829 953477729 887002736 995870658 771638093 896662162 203305561 999790519 923364883 935655353 208295359 752006181 132141789 504076298 286773360 680484382 488316318 813225348 249391401 866449994 43739629 752453298 298164401 866479626 423160357 955381565 928412426 947654129 847463509 997149726 588464528 780056325 507250712 978201506 269815022 343611998 414286290 889790366 942300683 975855509 695373299 870219537 206493019 271928760 143421449 554646543 213079562 567684452 442435361 477653723 844246506 929862338 661167302 686424459 986794372 986839036 791537665 996702936 527777955 824074146 759089893 961725808 581533006 639303871 299414046 502054842 350208301 601556608 745609135 901878478 888654411 989690994 748161002 793494357 828077415 979510123 34816538 632334674 488515757 973334923 350990625 404767388 475358685 973875975 453247397 564873227 806282443 883512495 850287065 965574250 224833850 679759423 51796034 602656889 869667414 891355714 573511903 664503082 805303211 905545391 606041846 639306884 885440631 939134182 561481248 818758520 72302238 558616815 498720176 578961908 829010234 945680426 508067374 804167913 365538948 820164232 116795904 523210532 485945920 855324750 233494386 942066729 397670207 544991557 7869619 635967247 960531576 978186233 874717027 880346468 91689502 906003045 939471764 954672737 223369448 830908727 831376444 886134947 104944264 164657813 954128135 957548090 180722394 520774801 552051342 925949253 399119016 590153552 90707718 467446215 267903556 557713297 299297520 939590263 475349225 566293648 649060735 730810797 886724548 919343073 725568546 848130420 249250815 877649431 427928019 567708277 639762967 771119472 418162098 445171879 6795907 605355750 701755036 804256339 851117674 966913920 387358167 646591947 928377556 982764494 984971889 994193047 311960736 366191836 234309429 371176527 16125543 962667883 317639239 503198660 946172014 956999275 785546381 907896756 929185639 950098831 299022413 894681360 57197878 877218630 28489979 117177842 941409438 961420959 774881653 778859315 279099221 986093340 130412042 849484522 646428091 778397003 562366272 938427606 537109828 698760560 803322447 874603991 992577252 992780613 998956416 999133193 830183675 934354410 124393844 726165449 168565254 563187761 42100862 331662485 737805524 987131159 169240465 289040996 209511940 756333249 492282933 598232735 751219690 767934737 981132862 997339221 75303484 975101013 622801243 944431980 671081628 871841408 649177082 871935446 449047575 552992185 557433056 708839679 117993603 185370530 60397638 654450920 110955029 212306248 91050545 630924062 359405680 518637653 425766331 523177157 574750949 645258463 87779594 911593765 633605698 787872702 830503603 876015628 885723996 917149986 483038310 536109297 305460051 736605571 316810976 843653833 150968133 884723720 91402004 581818389 25138341 341607095 956614149 977674833 685137966 686513533 118732301 194831494 165272847 838406905 52834913 486172871 22084881 490398568 574563167 748338659 202466543 264724827 154717914 932360679 151039202 496947463 534707342 666146348 943725739 948846079 814820052 928834328 988603567 990328390 482271501 605998884 457804602 548841832 683267246 732830149 801718266 920630994 630535235 732139599 327756753 566599300 950328748 995660021 805283785 909814604 729119744 867804799 711952689 891565775 580034983 674642550 909285493 966741477 108653632 301068292 782874810 931588979 650791243 835329592 890290133 958501321 795624285 871302445 785287552 817812231 826986861 840100450 674074437 755725327 16855060 937320954 363401583 890432498 91051679 252897478 787742197 902755458 165016014 970106365 371373273 818447254 880998593 977383498 757066425 901568882 451477223 841145398 769416707 897210899 652885538 805714863 32423884 880684300 416208927 713533118 458470500 812018069 298776070 702048759 25740057 599151527 665660914 988015704 9859474 685269967 419181676 869495484 654897642 718205815 697020269 886842561 114621691 294235495 567881514 997909459 122182945 421609274 703342019 968094629 552197408 768371777 889899026 990251063 897554569 915040445 243009137 532319198 642479652 680559421 681205310 850270360 667874315 745551983 271129079 933940007 794255857 881685932 449635992 971929449 114906282 937050293 221479626 911885643 607296529 930183711 950029330 970576817 455202206 855729536 442055988 623626920 28784778 533694399 734778066 888438009 87270845 276534795 333477073 997754639 576992992 643042566 714864092 945893832 971216117 990439442 780422761 790723742 435534274 696440431 413763504 898214588 399973129 546237719 724931447 739235414 126583515 453327896 297919339 953170064 372087551 950967209 290969804 812476858 321903213 693432740 757486653 846242109 396686605 413641839 635638485 737058978 920992919 924247628 220237120 826736804 762162892 769071468 636527070 707532930 950216863 957202904 576297610 995604101 36499298 653970739 318315358 497489253 670866580 856720467 888890006 921609945 189935530 525645859 27238078 556608487 917991660 968469509 907513386 983115110 155115422 179154875 892989313 899568433 238345667 824488432 552685208 711683378 389279935 976525312 365722544 709511044 842292178 951169355 757387413 960184579 670016114 944645766 75664450 442029323 403048730 644564256 447652425 977795592 805722077 943760704 611694874 819688973 909120802 937499539 448722024 921768575 876273623 886647750 970545029 997545718 620883005 727624196 301453178 889382163 341609801 786965795 652720737 847385264 235091020 782627237 181686959 782751272 144201391 158083798 325705544 573988007 536740145 902914835 267975194 470103290 690850877 946644473 902331558 997220564 800835546 988639274 922586099 945659209 818051542 853763962 554651108 945746011 317178919 899532727 391936897 404983962 126125640 150372567 699347064 734039298 944541884 976551109 67302202 990900463 821417448 847748899 227845485 537185539 468895311 827962836 848391792 853109929 624007898 675352138 162238411 864307094 386733922 660349673 571072678 889458360 168749833 244750440 371447543 815479408 65760987 173505369 665164652 919132333 167838789 532706210 351839914 520727869 164361586 472121536 647901054 859008039 199162887 318155346 704103705 810669108 57614307 353001820 333034627 346669422 84161800 157702333 481585626 897055544 410167837 719465438 516401605 698859681 545697295 689907061 303632634 619616916 997151295 999893215 650411477 773152857 596280017 752385799 636099452 921483067 182789815 570908759 364672284 951647659 490328170 660118281 691703290 933219009 468717083 719071719 300053387 540386443 240825471 512893517 16878916 990491681 138459181 954912780 231603566 255377184 523693311 774936556 200111533 957257356 359728591 839101333 64645835 856932538 480657409 873097578 6800398 584365759 981733323 993696238 453850224 670220945 124853829 156578198 530663443 953394463 511805884 848994506 980455667 982901131 83207330 179074090 360969450 395151924 639335745 750891517 311149096 492758478 267745205 661374394 910974141 946630869 897054608 945031500 866172870 936655916 932497554 996300565 343019226 875659526 512005358 609476344 668196047 766532244 521659688 755454814 831395012 907049091 785464680 882147347 966888448 984030161 37820783 362256477 695694313 865304400 640085681 744975161 234137523 818610799 931847597 993330431 938980694 998784243 310964190 523863337 788375396 956580764 891948805 948454680 901543 230328615 439707514 463731182 883099533 969340981 237716048 368605744 868172323 945667754 741970775 874430019 846034693 889307244 259510112 648748144 48753330 158147854 974228470 977093745 750736972 823336028 447924506 759829094 539649208 851873463 333735703 431878749 897990008 959871441 733274396 777170619 860582540 908644010 766586895 885478339 85741137 196045043 713489778 933841481 601975405 705176893 557526341 666924758 736966257 754897094 970860345 995803800 832197976 890256743 618296876 975334552 173045403 725523414 405061085 551923360 71631327 953503159 397677429 927051430 744716389 929826185 792544411 839719079 671508555 967957382 707442772 792654903 269804058 818344189 994517031 997829771 541699757 835059062 538991708 810414257 643542457 644032816 726824463 915582718 622574452 818132663 285529407 885350464 495942025 893732919 465472433 550318042 955569727 989611266 404719219 895340179 720921762 889852267 852753120 865105533 933325363 974223859 316660871 793112970 658698430 846669331 951109536 974076664 651418275 796179684 322984871 735307423 574355179 698278492 147850846 352735482 949260285 953352685 86626674 665256093 679629553 961217324 343309206 819984086 218010122 745255538 317529487 734903553 921163434 949523520 119609782 764984856 557603565 863284299 235218117 614829290 396091097 707726335 827169997 939913529 279597464 479188081 745552896 771406870 490730016 959828992 992392181 998477091 397347931 970424525 732079442 909907859 899318041 949537184 395697211 449058634 469875902 826302410 742342671 961672667 946956840 991302039 997230628 997480430 544680248 857381946 509561983 969514914 937572902 953349996 729024287 755339946 719821657 802080301 227140519 770414402 311425457 450244900 356463160 744300126 417335743 738234108 732701677 822144440 7483775 741659238 697897589 852235514 421522875 826091471 459761816 623221601 883935371 914661888 883911994 992669900 608274241 662798012 463441063 641090955 12408938 264139004 793008894 958426305 275131563 691146064 849055833 896128225 362307358 918871102 156909893 855962574 188882437 711833053 616485513 650768230 262425294 367968766 788196185 833812975 42064824 525208002 381783580 982144084 511091373 960685465 62157912 558927160 154839172 476290012 294933739 493190941 658916445 798189191 346612514 937026880 819794346 930877586 309369852 627624577 590976080 965891192 144132728 604230423 108797524 411966173 175069026 873371420 969633408 984043370 569853033 734433254 670173481 778231965 722764458 906318016 576819105 830041327 595753252 662052301 10498016 471311200 317516672 854740689 228297038 705411086 626336708 877165312 215431198 463875783 898571612 920148127 636121129 706197964 353575169 850811802 411384171 522445549 372605741 740833906 81170422 428744942 857656564 881399384 633708083 938720838 171013143 871641802 840382406 980844430 138524302 834270862 140598048 767164383 928593124 961858614 383927412 878933867 6749671 719447835 321474680 731897666 359163136 362765590 972004219 973406056 505730755 857436155 978121505 987482414 994996199 995377083 828703299 891011219 721999797 871365447 724316461 933521428 615460937 926986837 113955795 344613926 386910699 756995908 590351647 599818498 908478042 943602219 533089329 603924180 700381791 877263031 404379794 726582585 646906024 872725534 539886022 836092006 217748383 762287063 76857808 747047703 326331419 439423614 173636742 434694840 84448273 292597732 563266393 822399526 403991036 968869447 843656168 966993305 255832548 461723038 468884859 602756852 65734147 496093959 353778574 690736643 947436118 975911854 278578060 293887248 168494220 981612954 426297882 724670376 612629315 840739703 41581726 805413909 991246665 997569495 19857681 24515273 529085449 911022158 344839517 846499276 288591506 414205189 870344668 949436538 891046623 993679693 380546472 782120535 259967072 273292734 804857370 820553699 770231199 933525542 737193642 922245271 377553760 814739102 886872195 899985429 582965179 736423802 744819937 752022704 966187933 989460801 969999881 984452247 180713178 519341319 648928010 941745078 283205331 863017627 243739534 719567314 41175312 213925823 78841222 416778919 554213670 996751611 629177379 787116255 183627764 791801537 140324986 542194121 540509260 888115968 344094670 474161594 896968256 958676888 238353676 775797587 126037854 207856756 882910588 979750908 833614837 907780328 28219215 849114678 544453319 804484536 875546432 967260646 861377078 936734105 456769067 888629283 290825848 641930420 911303348 996179341 489468435 962351019 28431996 736337549 870889287 906443222 286188300 709433619 224344876 350789560 304651743 889452629 642908612 701200836 405983605 441412918 75699861 196984119 660384360 801258066 260707886 991699409 17851499 679624776 450606437 519314377 933867626 962854712 54123200 998359963 463688810 886192234 111917943 119983021 356049446 934927440 691001542 822076943 642133224 784193268 629926154 865602023 635678787 878333138 150380931 500005947 839715515 941172971 634409544 968252158 29233338 523084179 883593677 909726634 524487436 574963569 246100673 690203763 658873272 926191364 833145086 953780713 136809325 471026141 380390912 886805892 474802309 935419541 830574282 969970203 87258476 611215120 740779074 883162236 33128471 984073110 478382302 739268626 306393830 538058960 686077766 870554391 388807115 883705925 928500112 985262453 344097371 434685789 841702983 994446655 85675497 552049571 854429977 976425832 270047676 796554804 58975863 218813580 510937232 627944515 200386706 956827794 624134710 835456625 292639615 669716698 772936105 979506906 952875177 984003515 406467645 444233047 960679766 985679330 282094935 788205514 418743040 628157987 338994772 602205117 472405509 956655846 768433232 894569361 815856435 840372237 640857359 894328073 408077775 869211867 842634367 912775646 937273849 976120899 544939150 883506382 498007086 521572104 940039840 950197041 930264045 936174422 736702485 779405155 746293214 836347093 733618094 769051907 190894077 647438664 856690923 863091365 303756506 523874579 6573301 757011627 854275607 857138996 703456795 913494249 139448090 866534510 916136602 990459689 931628016 948703982 557276581 810111937 852129344 933338594 62676042 929342514 884097452 927735241 962908944 988592733 212957686 825752509 103605501 735584944 937615481 955913030 474897419 484842871 154975794 680188335 438210337 686482420 410135733 994693380 201901298 345198706 465264784 755019495 788311560 808366522 573474781 709713107 530963826 592165984 991620261 992995352 362271764 814277607 764487189 830321216 874310140 963349376 970700509 972504667 857464768 869327696 376860298 518381216 682561622 881274936 604840787 691835270 69364817 636881930 793720873 896259716 512167054 944664202 478658270 774338503 183307464 621274683 990527029 997575784 595941501 598437688 257994920 508184577 175539331 392920969 781810605 921197871 900461843 995997098 728430463 777502672 986380461 991288764 860744781 992688793 489854022 977466242 773049441 940737739 71217526 501703245 61383181 510704953 919202141 974195180 908113417 976016584 101558928 957546653 549349027 885589035 698278028 779621377 500209650 512620015 926136261 995292908 414628098 663822095 762328662 823502505 26256840 233881412 757795065 983996578 526438926 707145763 135391758 829897939 873176226 899999038 507519788 595549275 198657927 564423919 344172970 942520137 814030910 921938261 134975828 627077387 221705013 300723595 185177027 518861665 993066836 997314764 107937425 833587796 344813976 754545360 136796037 939348153 792210716 971738378 499397377 986648684 481782391 999614201 131545293 825841453 27594377 455968141 355196776 490998298 28028640 516304795 692430106 895595981 949431432 970501627 21969291 378085037 299615707 640667075 143836929 252545120 611504596 940965365 725109703 902353263 98592812 788880041 476980225 596803249 392725111 956646049 34041143 674492216 809734000 906482219 431915168 630672964 251759001 486456161 269041626 429218845 548022529 819784057 287707320 355155895 684638974 772510941 510881590 524745482 587737766 721883712 119311537 492832007 730483532 773858857 743001107 770839485 367715597 504795362 394903648 689827652 344559514 785477773 349488073 853290994 716323630 739784025 857959381 883857947 50744910 594918279 801409120 932849725 678964450 849754888 501433952 893789124 239769911 250410376 115888556 581542090 205936601 359144366 882240822 927989390 878030319 881417457 912423913 958997449 736066511 967250147 553599910 878789957 910646136 983127651 949523466 985975304 31621100 307712604 461531504 580381064 15140341 60096755 380256913 760910647 333445132 516147980 425462900 653930990 911164131 970759051 811117127 833686808 362787401 417129542 493807110 789465907 281739177 839627387 668254419 997543626 275241162 836412766 464193499 653214015 345651760 948229327 991442295 996331570 348017292 455941127 366039593 485427164 752938467 823590976 603706391 667246611 70161819 155882802 1514820 704289907 963235064 980609557 72977662 762557941 496272792 540109237 581796572 935382958 524306043 648344154 469211856 945079027 227816423 565991937 821393525 913048036 305279763 952561477 735787438 998756215 36293119 633036563 118796285 156917143 941326428 958747330 148914510 174690776 791260132 918872793 580514159 798776733 151846168 868243276 698303482 853375753 217980430 712590008 366534624 755317493 109195466 376140931 84648436 303444508 47548450 918788643 428976264 899505510 594352305 809667874 320647280 946741699 279307900 514533600 847333054 906695911 10634530 847913186 916762625 975654405 708332088 922425520 72937515 866162856 684565826 820563010 540586929 943555059 427524097 946102451 960528383 996973552 783699640 988030520 209101228 585052772 169513305 538508658 631549648 835164295 550833802 829152829 279144655 681296154 856214351 871092877 63734740 749650211 420593549 681190877 732593363 854273687 97653026 298811942 701520538 936507838 632872960 679040728 605565263 765613078 704986156 887967136 766388149 822297207 316409640 701684832 837170151 868834132 400086147 421849077 378659014 991050683 707078743 995472410 542554965 743642601 331347605 388540675 187180797 553356057 204301676 971901449 222645370 456951465 189542126 868992161 923228698 989274300 760038380 804488816 232732626 439589345 551947093 759094524 607308226 630738754 595751303 892652900 501413435 503336663 858798341 883672936 275236935 761614900 253275135 583965245 138587636 636426278 631448538 704111599 253785647 708989565 215991615 616474900 261726946 750536634 600109851 652119786 591436204 812633707 538450717 572356743 418373492 687439276 683650945 862028767 581699545 656886060 239036950 339639630 95610106 460894245 217787066 877375810 232645618 891436181 164428577 967638860 770852784 893102354 515111766 519426618 145486607 641493035 457728764 979826121 91176323 394749471 448864737 990308469 763363198 808296758 373600727 629076789 980536302 990224252 624296354 682534318 76987488 645485275 566563528 700784084 865871354 977327451 373998459 481338415 908733535 919652172 233846377 795943688 244700618 916396700 803738694 943920186 520283936 878625813 126857022 216617565 790808377 977097039 134102738 883553192 614479864 693310012 424415093 843342266 291921484 665262763 180803517 828860120 768509810 907919056 211466059 269061232 202582665 465842924 691838050 901097587 468351217 723369820 883036535 887643647 39355353 426312755 93830802 992980028 312327889 718422291 635485475 733006500 123724809 582370539 253354361 354771687 259265520 960786316 638828046 954880493 9543008 183421895 311407361 741617420 956852193 986041517 407670851 797960260 472119393 881002156 507257246 933764364 945413002 963667039 305199524 840377012 843641790 995097512 322321602 661920609 118127747 882982237 992700445 997180493 282926792 455205645 443709078 670725637 641574003 929097749 29931874 940430353 286194902 704885153 421459059 764633495 581123220 846081832 193402840 470464071 595068481 989072601 473851083 818972796 644672643 835993050 845688123 981111335 771107151 881843574 709671749 747043055 839978488 975428791 896045280 984470063 897054341 897224479 592623111 889865708 48003052 153151070 428279466 693149940 305605449 967528060 873101965 992954147 303682493 993927356 361199208 896881894 28174813 487075798 793358864 867204755 249298568 934523873 543782673 896036257 549633826 708522782 199352225 584207333 109589905 534649094 519208415 792423491 839372067 907358594 348248090 951698526 421290303 698324500 60719939 203847447 806107400 935383842 152303618 889720599 492377679 553923298 314576628 495342511 554996045 841054286 904554026 913639521 98008252 696807371 357859410 471720979 34369916 57888358 969614502 985816261 143060799 271088891 628154177 911838646 344635628 554578287 72529529 254524037 753824874 956968964 388646631 913681325 247035906 656018483 196821869 894035958 453259762 527663516 200553040 399649554 247604130 755719126 78148965 313238005 870667101 957430580 403930591 829783320 83076331 334305348 572614172 686704427 586700470 752415765 921235542 925441274 690358866 926269852 767812860 855675394 543624315 662531607 427401862 461018909 839118940 985673776 321028584 610386498 933025528 949920212 44564222 135504515 433500493 800537278 985154069 991779923 114567630 626182064 845846613 861191856 931478597 951765044 250193487 414689911 864255378 912085157 561397350 805716183 39815251 630453904 889991420 936199983 552261150 614775242 318990633 963462538 263983924 460913431 281679130 392673912 620006165 950337848 251831630 526238560 457950140 912842993 203305478 881060148 215730352 297031224 614006169 902645116 661945079 874209195 862388596 975449098 936047228 937833908 716900343 914879011 308999294 884653447 421748758 735353141 12163991 428295652 912835489 964970575 147275045 972055303 602040408 678690569 258399869 304669039 393341961 785941157 63941329 883762001 274892661 482088124 561054572 687013780 610513363 814192072 255420468 342473552 935069272 988393925 754105333 832067243 911213421 915973996 996904270 999391322 638762815 825095655 526975038 811075230 91775166 308658060 25025825 161236952 814687016 936631477 543390485 864094576 460497251 889262102 798863679 956167223 5074671 353626877 922798748 970609395 823127057 827267513 545283948 951958348 281760526 779464284 963419758 972145163 138984263 154366808 239342932 877854150 781853252 934130746 201438465 743753946 533441633 859573817 439555235 819009984 788686050 926419444 195072828 604573996 800104357 930070682 287698069 621720460 937858656 981798152 695844160 843982338 862420888 926114044 672863145 946340320 509906958 684437274 68532741 908010641 926697950 959508445 417141955 844773021 254500105 863306495 483388811 933878399 699438242 885571605 911015353 987777254 604838572 629835606 446326102 851362485 910586561 938579396 541968381 994260739 371189696 574590027 784226652 968341016 675539148 882699278 188943194 823561878 826547178 924162112 8120992 403072039 587698988 791158626 651523295 860007818 120447743 480786827 468716667 651267261 935298814 956102136 289826525 376947132 985918019 995927271 298647528 629390361 785379994 891375315 553254171 954964398 200752491 436047940 746996851 838493560 196652051 407409118 157411209 303918139 925339165 958449754 298384127 328292470 271162372 510598949 169916728 770683471 171780575 369664914 165450760 746131681 284757264 381196001 142331343 764195837 932206748 962227177 257254011 295168229 737758434 750773547 180858760 280300728 408867767 716452542 267540543 800579078 969008835 994288664 524007416 569129605 832439777 950625419 637654709 902438400 422484571 616619045 261386327 642403313 417557687 548512514 274535893 507736176 87184912 608029871 192011343 606256953 286831663 653687794 155826461 168139316 111190457 929500621 870786093 987520185 659985229 668882686 368101605 498993710 81838694 876999705 677587890 712715880 498308656 959690126 566161848 811749126 756777160 878159077 907429988 919694630 180471939 798400644 774881913 811413503 738810953 967678887 444363516 717604872 425731769 628857733 898459037 999205559 881771651 914982313 910184069 923598286 829864403 997857521 798194336 911449899 885878489 889531837 501720622 701687196 592906467 850704499 624412962 908989318 617644794 941526006 286452575 701927167 391754485 683473118 441848365 532673522 298122520 590692245 138197236 613347690 910624174 969873229 22186420 250235479 972423372 976451050 918340070 918877898 976710688 984532692 101132459 568397412 933253748 963639123 872747894 906629647 88186095 586086448 590008828 727457649 425218270 602501503 742182479 912609306 472390842 900130275 886965300 929061991 36215348 870248844 692375589 771167718 165039595 419773246 130391962 199556635 869768926 948242288 926698265 941813834 202055083 888233667 294340096 454370008 6159009 601643875 863140966 950173295 29597995 431255363 306125542 413531654 219414419 945054126 904519222 923870414 530951529 670525224 66716998 225229231 243967715 828961523 198607336 370314321 499984 555630855 409583753 554078605 843484755 862760310 327800123 532982880 216885489 773218818 126163456 843202809 162258017 260973993 373601043 375648050 636440551 641032740 268376349 693910667 828665073 934391698 25090825 407967414 258868346 819030082 831590194 893001934 374302665 423118261 169792811 350683884 103350223 107689016 940598617 997562436 60132637 974231056 431341517 581760808 39947047 475169189 935397676 971968503 406013954 536369426 90725584 325551795 585768966 842344308 392990487 780770867 526785853 990488267 374189725 632555371 595179070 683774491 364402138 866292267 387433828 771380482 545773267 961203881 619710163 937536911 515177192 954437763 277343297 897471197 382094926 456843638 308079222 594955005 977310341 998730784 498238672 513402608 300468329 812416745 196472050 481789952 790040204 839092103 394243438 691907653 500620263 527280583 655028698 947809271 9965816 313670767 313090589 429911115 404788650 456564879 746607359 793276730 765286912 929452984 31779985 189677650 183792559 324632768 918111947 974228192 412937627 921644092 928871033 983726316 669995370 739080239 859033949 915162522 371575701 544676514 421218937 724623098 62985809 94831382 603966568 947248264 773253633 985595048 232843980 771369399 346273383 574064008 977054649 988726632 998852810 998921061 530975213 707153290 215786781 491038496 401757883 403492110 109773033 452916382 691060404 739739529 158020227 747441385 2704256 281445315 204525121 912155413 975039840 984520320 695283079 872748277 358067524 586081869 894244155 978400342 219363866 623575556 192185467 703680304 728942385 811811915 274765492 290291415 937348013 984427932 607094131 773129185 438462468 511262178 673931605 978770261 275639275 957527519 400301768 777338885 546054480 948083812 123298730 716666178 337881725 867056010 197445376 378900778 716610970 929407143 913961734 958150195 610863811 939692959 319163649 503547955 483965765 854879957 650582968 931059527 272137934 444176950 898395362 966623553 118185647 638506155 934604617 974171257 648213911 971689699 677118207 997509798 337772157 988299918 582871274 680673578 32868144 300296883 275477036 367600291 414959405 727079058 897862252 931965300 736681372 738225916 477168277 750499220 625601475 683377761 222598084 538243545 562199239 992250032 863648917 947245187 218677609 263146053 144299377 201107163 408222237 710646000 137621861 841085379 385799161 776550890 896993423 913779850 359017790 470621740 747232742 862181926 682958694 869131005 330158699 620952427 419782812 429206193 962918906 983911716 682105616 872901431 305871272 819229923 647422344 762976546 401569747 935837220 634993376 963355484 856044805 862341705 324674518 500772233 769120154 860309453 999139676 999293715 705821572 792155665 310229273 327897148 688560632 693228010 688871524 785581590 18069536 120748440 354173460 939779727 920433074 985226760 223232934 343704831 415021997 588872008 323337124 850370155 971922326 978334480 918785263 942271293 665938871 925302741 479879911 955617543 270730489 486361902 839368478 950814721 44411002 704829803 370962892 848275852 442638426 663332674 513382115 925243151 63081337 582806333 32696603 637260095 718796665 835739935 774289361 865535870 564820146 912278399 839186171 922285402 640594081 701290565 338632946 557386116 325192611 684778370 222851985 371109363 164913879 607312243 724162652 870298147 828934206 932158689 458083493 699196242 103788446 490293260 868457486 935030224 601070492 602347490 164648335 955157218 585535407 910342432 331983383 964509082 471567755 661425022 909800324 980168114 219724738 659883853 349136673 997486634 508152210 663919273 679700202 853655265 286030909 651648998 549219399 757741848 466951851 580517843 450641485 936175008 753186012 917847416 402352485 531038787 954540376 993671416 721624848 998202719 340722501 445286056 366471302 508396262 4153890 737669695 802755954 933863995 285784960 547364211 518600583 792861615 633110358 813424094 341668230 715122381 267052935 625691149 544193507 591331806 339254023 443647381 120913652 811490425 672855589 984816245 340629162 449352380 314767057 684490220 654901752 975185223 564865576 842516677 784109846 835311867 143530671 901103397 318989449 906875526 417198491 465582201 854120518 882721176 938827481 993318049 539273625 558064151 623064292 908416329 885883104 959277054 515009264 937263546 393707397 791728778 113020983 594439215 29417419 916211034 19282841 224956851 294896380 426213759 304347105 581721714 391909280 968903506 699900057 779109184 277835746 720947064 824106772 946099682 432576299 471008459 920662302 958694206 204575292 282951127 957035264 993091823 905478397 964963674 411569497 633571123 510310750 944259695 993108449 993796208 210924863 406495928 592700479 780718515 210305396 654001358 975607562 997981890 821289269 858227623 953226214 955016339 671726576 788327095 19187706 708473114 290179402 736486315 987822476 992003827 277187299 403469771 261299231 989851164 258489603 765465858 459337687 988751015 139853843 450588604 217355560 633039645 414238525 989003545 449850472 549891613 807775699 978464676 632693392 662316116 306445767 410865842 253577805 601311008 634550683 677513174 75209938 548987649 670562533 855393908 33263967 137687854 468081945 910435267 9379845 656432651 139791241 951667452 861186667 939344776 776958358 975374592 396710268 845563577 213010317 848666551 989459083 993199153 158021058 774681094 10641690 583565618 174091489 711429035 772157040 891966847 801135045 989700723 764262248 985467170 917066834 993539327 822415560 902169125 818786900 951756772 674383393 755695487 158269018 619985700 902535260 992961261 641117897 655844791 63632633 416810145 614800424 644015411 523132975 701907617 982317655 984308895 346148405 960778626 413626566 705257233 872398527 954896336 659395548 675163932 174457452 920622739 270513469 325905734 812378530 953783209 798262378 816208964 973560190 987936122 790000275 952979009 352559999 533510097 963401649 983844371 704030968 991793250 681860561 725784460 433978642 563729224 814161815 896499146 260383124 296992628 113625828 179728298 506514393 627962505 704887881 782856676 603191865 950727020 922196313 931019004 980047912 993892750 948230200 962050642 86403575 514151245 811515100 845983416 371085571 482242291 269373448 556470776 50716279 665341246 619908941 806157423 291743330 790702554 164787796 628423718 925879946 978373093 337135307 424767916 40618425 592929500 675020118 719737937 99837540 425842823 616869689 637950751 990725182 993358846 676714383 993657648 98195211 898186757 406146089 570909875 87903630 472357421 773528606 911636235 385453884 455850386 595797067 933350383 96008751 137231347 472564285 732125262 39765208 969076578 963314170 968810127 936601144 962874486 240123308 609745029 108445658 865494238 395775646 999986190 419743904 996218559 752594512 918730710 203869462 923340190 218973214 731352022 640692169 703365507 425039217 542830050 249375579 854388385 773045478 992661866 600947730 915839867 178425700 591951780 431996447 622408755 757224816 964752837 741243001 877056467 54848401 294468201 141154137 364577239 678540219 996498081 883270878 894946693 262343184 835252850 984348852 994468546 653693629 682976739 259398009 600478161 131408841 652195079 201663523 483546327 459973750 618976506 670046951 951208116 530991558 609816998 983345121 991459785 261787390 532746000 293741882 736829988 579969252 783386093 574347534 984273303 742874905 853937209 697445615 710496222 334743824 450833650 840119776 852949974 63010900 562505313 74064862 408848231 979192655 981648405 138194516 867374199 149524204 365551030 860946227 871386840 108585354 767517834 444496645 920456123 12407073 390632510 117030472 868041708 299384914 529482636 185251188 709905128 819904535 975867654 183697205 386009195 58161864 784326716 223110159 703793779 773780621 988218792 360399776 838593926 848998297 943686111 906376680 933227397 286489210 736801772 719009504 941164884 61400246 781110372 3206142 792442230 534226463 567868047 748048222 814897551 2564651 923651729 686393644 694102843 389402755 964454216 578468253 740124711 132506226 729415567 212923908 827881969 113530227 428031143 985807837 990406485 751174053 964813679 457738619 774571458 681613187 948232644 87995554 582962728 386795324 466608319 610923879 637996913 247482744 707539547 302437217 332086963 709579771 928384644 364237612 439259402 114919902 347825106 126469587 343461962 52356245 278753816 835963041 837479602 41125037 331895594 171148114 337057527 447479496 682768330 182569617 848185871 747287682 859756879 712864027 728001999 94288346 490687863 330898914 681386490 736134091 778812771 967343906 991196980 785585225 993603416 881106626 993310295 844388408 862637195 249889350 300852671 428052568 782163202 955491316 995594832 211815217 335711594 145366744 287139177 221863572 750625863 564375488 848098851 226611207 761367863 248001451 642034755 286223093 631596499 498976457 835298321 769225271 946343155 722926372 742940746 845513289 929266391 631449784 731336791 739801959 775083090 676238317 719478845 586557266 985852035 690002941 844429598 213223376 713805277 927728195 971913783 134366947 170432835 780666795 835076547 138850 386900547 625291368 896893113 597327227 842679431 365904876 563229178 355080055 531242305 636752410 843011279 792059114 886151096 612766407 671988587 524503780 873928773 71451021 921699438 158942902 581549095 888896205 908108527 509688732 891847837 826358062 849614331 600328681 919522374 400688320 781061431 995790292 996522695 7474500 662781635 981306478 984903859 877311275 966514976 950868892 971115407 402837340 890867351 562918776 675236204 231419030 512719020 891851511 987510892 814309949 820703182 840514688 914537189 109413652 881674650 405846580 643783452 474916792 507107708 209804731 694429265 885766065 979976741 646449151 914179464 778475956 977840212 459361510 625532613 672141871 781076688 339520702 346036757 178675537 650292814 923514301 934018459 685654840 686222399 741820813 996797788 943993305 944331110 450998837 747578903 403637201 750100429 69551812 379924382 92505598 106936434 586503501 944475035 553863771 596000800 136698070 408900638 704002293 805748490 853584566 973223695 858134126 874871362 535652684 559249371 79067324 258604514 217372331 226379954 48480368 503102809 571802 470426274 121434390 666280300 273988372 336853171 594551767 803610164 153498549 856713695 432560842 675887161 678333758 815091520 483389183 874878339 763402790 928628959 415146651 629827681 469395168 766831086 972487943 989435224 284129095 893714129 878941312 934438596 927598634 959081025 202429271 818785328 69306310 472425792 987643798 994363271 649106228 914177901 572231377 887754769 750344826 883314338 989876041 990218958 436949054 761931790 968780510 994705733 118702722 834033308 69749386 974936339 463798512 939705539 314447604 361884165 69671325 748525755 686520255 723953601 588967633 696839601 657921028 745930818 109910526 911123163 267142413 807509367 885574212 954606450 517865686 569966123 792451977 929293512 2364516 503698589 744714859 808883732 236616399 533949890 788506969 859027403 231821061 690874861 554267864 685196629 64326455 772664910 850593088 993107188 991199095 994021615 581994132 633859318 348588456 925195727 690856754 978927937 294872167 812139871 618952708 940647315 163052189 281484422 118116769 751603636 415855309 428154788 594164543 691197984 115981089 871858322 449361888 850753279 622011148 781447003 915062783 990170370 112011430 442023437 704063241 775397173 377093166 771551269 480117275 731892688 407421808 904408968 201419519 571285902 410528949 541690118 562597987 932660934 740694552 760161530 708387613 735446199 863543498 873864941 58556679 923601932 926078256 945413830 280632343 393522960 158484744 931822971 2351373 939986063 259597639 991943483 558791978 862837992 998579414 999490738 270754179 930591563 265895460 584033690 529871247 730315345 555967426 559993751 395137854 828817506 162723287 265582753 152882499 842286514 868044254 886140733 60349349 629371133 824987790 959792732 388335933 826974386 968837135 982762280 728610251 930906117 805302895 980531769 193387100 955827141 922374291 942134552 541129191 912472133 213626611 634279401 666449618 927577835 21294271 191478773 245650887 806859167 710165308 898669934 31967523 450300454 824748025 899494142 356601455 718838406 209335515 992942941 113306254 146433698 67343627 893947839 793860868 990959501 12286331 494131476 454954886 695388077 351964699 424421250 741788379 829952615 375705854 679775268 493438185 903482504 583279788 643044416 239112249 452538465 602260078 627292391 200950145 226118617 768096753 800966622 364565678 367171731 610728727 672089122 475086166 923372315 689540474 691319107 468885584 902307394 749789773 964318803 931183934 983769156 880100650 969476648 508983855 551794827 234702564 481074021 217919217 819718863 539576754 769873381 970614739 995420172 443330533 711436526 383632883 951003346 832947793 893448131 729847222 956242298 827048857 959652302 424717682 676256744 873695524 938088969 595674395 736418320 327418258 768485881 774667685 799470028 54903794 307517164 796719332 902807728 629586730 967922095 290560171 455249172 588818700 928735811 185188600 388942020 800555653 924818685 423627709 594785916 306298123 681404298 257728710 634438846 419367006 951513583 936717369 994157426 868721363 966930625 21524320 571024067 394696863 602813334 970172845 985653935 101276663 862302527 843506632 936595080 531378013 586879172 767347567 833028146 390034768 584382633 268035488 784063513 478166524 627123216 128585161 463679964 447141439 690269620 684419630 935158422 866436835 960744247 649923238 651467392 83293271 105886020 713300366 998375242 257267004 852739410 331100777 652595644 668163423 707254663 645575604 809731324 684814320 936219202 324894673 426434084 729381219 842599362 773819072 899867232 47703711 808988307 95766994 990131244 526849374 994698109 606165502 959025566 437919661 543713474 682253403 804858047 332528317 415277655 188187442 943546305 716339294 840553489 715414427 829176416 854056551 993471638 691700752 908784004 385120303 905560728 308170114 489647025 133229044 530094316 849798998 906993254 201554094 914987753 169924349 418465955 415291112 891172030 957730632 995871412 820149801 902175110 698090809 897820952 412828928 540019465 527972259 768410364 203278664 578130309 435602723 549178331 532465788 604180116 176469143 587898321 841391968 929887280 174497910 426849804 619509095 801852738 142280734 776199218 471913062 742042008 728837273 895575231 139414297 174025571 280183894 973731462 499138108 994617916 617830113 862634492 668522971 729994170 477971162 638113590 196879457 671838305 829151876 961997553 470752111 525315361 363960970 968733904 100489742 849281127 861229951 874119309 860462072 989539774 941044192 981874865 201020335 980917857 109025036 180911112 693565639 887764826 658305391 756160511 445299465 899549930 692435832 903391092 781676563 988384559 874617233 985792397 502215318 577667969 255632625 953277283 653952133 702592035 988954965 995810355 703944919 707393356 299302019 775935765 772997842 867396538 672863981 699704788 767654741 874765902 745701272 860809700 465914006 532089621 468331439 495232741 363725541 594510504 834950042 859111540 994927093 996688652 414833946 609574158 982208736 985817664 619133990 972838927 411340356 543082974 933559145 935795138 439557364 990175471 126793640 913926409 286135313 791785494 863372294 949538985 727677997 991568905 998514556 998744046 657304369 866925558 490022421 975370292 273545608 930060653 437987560 962948522 988003690 992362065 335443815 447022619 232338158 938148666 434984783 556988746 258636771 782847120 633452486 873978100 614418449 940907979 683553248 895580460 386430212 604097743 428934330 987810508 614141259 866601324 738187001 942918003 926965162 980372050 864129302 952716568 397112746 934401954 128162440 149511367 669631391 712946114 392148269 770407896 970213853 976833499 146906737 217826521 351066814 479074308 119509166 503566590 364377406 692647032 119059063 484862969 623854146 742937629 968042962 987643406 319794448 457020878 878845069 890394003 231541527 514540818 48739797 422739178 242922856 763623308 822228665 839854931 227623856 609775872 157034133 462761773 149334367 303319502 151907024 583982928 277149399 644327657 367708371 903876588 773784279 918046453 329763898 678539156 470760542 486290902 763644663 951413797 722631752 854314773 837454175 885273653 48722525 363868543 515637816 917865660 948374304 959858658 804543750 921202458 343226922 654466308 473221765 568664193 591530595 865082848 830190763 972763748 352635862 613570266 28431649 615215534 802533843 974892162 953737147 974086429 679928230 996305837 191210204 900610225 118267435 533626870 983131964 988613386 907963024 972309661 837903493 982739343 28681354 135818782 562627292 635580114 267368039 734900933 254245236 413659131 607785439 680007791 204698280 805547233 200352930 279185195 845949011 997708797 220499704 682686652 341604657 717046153 635749946 859635664 263055283 652210835 114942979 473554656 406655260 957065846 89886638 964360502 840513634 844225215 474593641 787643005 206679614 690236646 657416778 813170659 448624786 947987891 503127033 931041077 61179645 861278773 874410084 944983989 712915667 831532644 371694884 568077204 960859735 962919128 733813205 995786503 7336693 45738598 95673946 188187164 628019701 887930709 677397644 928501860 268119061 674085051 661408326 875424489 126635454 882835888 993435948 998095327 4483697 245833691 304116576 954348937 877855047 960533898 279254632 611167912 756319123 897083734 421797319 970845086 747698695 999375916 820710256 970557255 447769865 729707233 77707667 955553102 39608675 429405834 995358091 996421867 305322693 625601719 83872571 108004058 631960664 840880143 628923612 746476102 702182941 969656603 35146655 269375799 192702576 295165956 699319970 924533310 479273965 944103548 310847 232635752 92227157 777588066 162801887 501341930 66536212 813755751 393753773 690169213 246073616 418997841 104913810 216082443 484087593 969921469 340512975 785870328 214269523 533915706 485532444 872074505 393934791 524003250 718894547 800981717 847853521 992095396 750530133 992259680 273170560 853881732 498512838 835230731 917171416 973402558 825738177 842616533 636486275 795445545 684497200 700610846 127591993 530221954 76843670 813553690 467559926 499530250 461168629 539995601 325914703 877060351 82445838 141169944 940858723 998985471 785644547 912195788 646667550 664115107 523259985 681892809 926706651 960275607 601645439 820558008 523823 970243049 732232187 877228021 668083369 700470444 29205235 925672094 674888155 857246647 318137219 350299671 40187150 888555774 585911964 643382032 44803168 716489612 407768731 550765626 937645539 981480975 281276816 344000329 391017943 782263715 285176697 530963061 92902902 221422197 369307023 700202671 196977488 729731869 957045822 979090653 524077580 575523344 841530136 858275691 935794790 988434540 124365490 896542559 459133779 923970930 949291537 972479376 64219681 920067320 125088454 426888930 841574964 981423499 742532977 760898081 625715050 950344782 236358112 697971800 320348840 641789035 797511554 925206817 598600164 860084034 372613285 543133933 507654715 525364035 7721322 479154901 694477580 846447268 274890427 419193345 75433693 897831069 119144916 556243381 530291972 776820355 338986963 532485218 457117913 747084257 942507672 968961189 510687895 802847283 592751058 635114895 711007560 889870026 773463482 828317765 949510813 972067466 17493303 433159405 323457075 973263453 665117130 859497980 294768949 997754227 483324620 818873271 892044639 998567286 963598698 967277051 164565759 287922916 176225594 841575210 864776964 954007420 46078878 450595631 590833563 931138801 759830920 903319821 18679501 402762962 541542980 669732858 297182572 382379774 852478328 902755597 647558341 964865012 238866180 787334735 941233498 981301030 466339384 975441491 376965028 858963470 523799316 877891864 675338548 684133496 182119010 948194758 710735261 825640873 614906822 880015689 280212639 560637645 453409147 788568250 156265063 798815781 810807925 990246656 519216372 716931183 570057432 809902804 729299641 747641595 388392337 860639595 839987919 975157983 61264082 78772061 687766900 948459033 121919625 814137145 533058729 587289892 164316003 439002344 106314576 619092206 695413962 955969203 311401428 808073783 215386555 411980991 847366759 864009987 962026977 975451541 166906868 802857334 875479777 937051537 549185793 872939744 70968408 502262554 898908040 954924865 858063395 951930981 448808119 726942512 845551514 979426049 63948245 72136091 9666379 100568258 690963251 753071969 915803444 952030425 116262566 136819051 985947948 988341760 644455269 708259209 403812093 650623208 383386185 893092134 21278151 38394939 636094496 760713071 467345143 883393751 94529201 314734176 750170672 989188330 355097833 543135693 459304844 693284647 994227204 995609829 279887690 339722897 674107299 934998013 997120963 998793766 362275030 696577642 574678419 788036664 879757706 942316501 342016447 990192008 568508733 829884869 84380020 374541861 669186808 729141401 575508116 816219598 970118102 990291192 605954470 950635829 348345128 532319633 776498262 787371834 277643276 864016412 379967338 656175425 19613020 161625656 371930437 974575854 818366583 846537307 837770419 883228440 791678993 806394491 212764596 612767386 840180757 941371829 68957462 257102519 932836130 974553948 790495876 945672688 435186219 650941567 636860981 912981552 676984763 993189975 55131605 100927978 459924282 712399982 951816010 953702301 696875155 775546101 344612304 662822435 474586937 866243082 537748530 756131319 117566611 468186025 250958771 355711859 217794296 263047904 43129836 982734996 144654667 877316136 982560670 989976232 374478298 620905948 592436937 861960208 356120601 733901755 591272366 934192809 795002484 983994473 533350503 716627680 781162235 794570044 193266625 919715954 572597694 690049052 776400446 843607034 420124065 522488145 833145922 954513042 348668884 574653772 879390751 925082560 607368042 704581959 613751593 992485433 919343153 925952232 799946741 939014783 306644380 627700521 542820050 883870955 23298731 170222849 443910481 744687473 307489558 577568467 939182737 952668072 566754876 770108706 223792397 778900280 671000897 694740108 669695016 697988490 503189587 632042486 898844726 928970775 271086443 951149405 290621662 897063189 837655193 954935567 839926377 882438611 333709888 351212706 801889429 920261601 104679480 177641214 274323960 762369715 494398042 852577846 788693291 974703213 861446847 942797874 978312035 980330131 379269367 672320532 782839656 923582810 33090882 813270213 903509353 936532888 297353860 414021940 62732897 815155211 739384540 796586875 518303524 695257366 593847457 904443584 808431676 890187231 743304986 948508763 682021365 884217703 109963982 690563194 492153593 866575000 557103880 790443342 438641204 997327706 697365036 984939880 780978981 849053575 130465274 602923320 580990764 675457803 915574377 994729610 600911452 976195897 573005511 640546850 8504007 618896078 122350872 328914262 775149232 820066050 594277303 703766274 816085559 881206952 175534696 468869764 457553822 894121532 825893906 842853469 888704609 901605244 136809322 499742392 278718210 451912402 685137551 686400463 374572030 533768410 756346528 766770308 363171768 845652472 200717174 221979345 600181917 924070514 879297603 945454276 269627931 579007008 960822277 976567985 537579665 935003301 385285281 755191478 789303576 847030147 712257206 859189112 54690243 980662461 228437142 571999084 505842819 951019360 49379237 870226185 328178826 701069026 21991478 139915229 500608438 733468802 484264698 855041795 565401806 803804658 334936812 802548767 830342024 907107756 721867470 947289011 257674634 325576708 196163022 335652132 893866129 933550917 89776884 383022085 358415377 744431663 345302235 743150347 802584412 814487100 171278021 657754066 965465504 975952951 105987567 397228039 990086616 993217185 439433404 513757700 849118834 973601966 921702684 988203512 895682487 995115396 282370915 501841025 442293163 786511444 509492379 638030222 781007821 963273427 319324086 448416196 211885860 344640871 442716747 501680948 59492363 630391509 369058491 456266792 564451506 818668274 792359672 984325225 466125052 489331921 365720883 988734417 67959835 429151223 752214741 878413225 215922686 846338058 854682858 926202757 282784482 793678758 686702537 734828856 135002099 640878653 309759998 489989655 992233368 997150996 196005562 963294613 816087648 939933978 783400966 887508475 876525477 890311938 465253804 955145942 653885475 823326076 547625862 577549395 760425160 909487485 917152364 950600218 77865192 580891631 880805356 958542163 923394789 975071568 449930984 941863648 108620338 629085878 14818121 856056403 870814094 902260804 214188042 543179485 380287078 407881635 52122291 384575183 163385850 225837520 828224245 949981196 962746315 964993933 166511772 305059484 428550906 549343747 391629128 786507984 521121889 800119692 697313848 940033245 445104787 727713410 286711272 730841015 524517220 601475687 157594956 703441628 480260975 867305668 4869970 69869095 576854005 649843045 645267172 878727837 901391502 903868448 659863618 864656926 819271124 959417887 111368588 999633452 954647019 992145760 305158776 776502140 112316498 630865893 327200092 906898656 49357528 429312305 736454694 935978687 672933176 693704793 326373586 931954994 696821221 965823428 577817981 776357694 337567836 545270598 107634162 353419582 788394189 853638842 306907163 690037407 915755016 989297437 939718353 953281087 101700329 921649090 515783602 712547182 238516854 656541390 486717176 504749346 288259425 935117162 251889985 576454632 509930456 994814453 908156597 980075933 590949221 739755584 355251739 519990131 903866043 966044605 924213130 996853883 828079847 911749975 855377435 979048410 831183337 898562671 381741597 625699787 177646251 183663455 958557218 978477951 635944191 805008184 806605052 887427023 917248873 966004896 687372620 898542460 893878394 900479144 324648101 812068930 880254806 890807944 980605084 997903789 664873286 673694254 601045307 766121227 275548259 692871202 217640647 738909921 25037184 368257847 5729197 448009818 529428173 559381027 556448924 737121944 462845632 692328156 933587037 954289436 909492435 964203162 841421068 914323639 940139618 998206788 82508756 868920818 68850491 365927140 196512209 617889084 134700064 242465501 700972109 710134591 248597148 661132551 446204725 458310646 953368158 957626344 672663209 802392183 77003150 426315312 583653819 639597343 463721189 994110664 229747417 588238298 507781608 895665740 601692272 850731858 541288814 977953184 298662395 603856678 577625578 845192710 796634618 997220924 909121446 926630844 944656486 963367145 4991946 115044140 235932202 533833273 766831031 893740700 755486398 956700468 412952166 627752113 860129131 909930786 44559066 47772639 116287239 725629159 844897501 986323757 911026029 936998549 904146361 917060496 690039856 939204730 530947911 686108847 374748863 849146871 4647041 205882012 143688479 675828447 171185875 736337116 845023799 871761871 293360828 724317495 141909729 674373020 275792907 550891760 975282464 986994053 845196032 918325085 154865466 811827045 10539490 693689199 686480243 922575902 282285048 986203428 105591507 235084770 22138011 124954206 743309202 946961111 366492778 439404786 646635302 835902467 613871559 854178119 586991830 713041118 42716916 151742314 881848744 887312474 641609038 881139591 445907133 611597910 877361068 997791585 814422879 905936106 120258501 765230019 149620335 888823973 573046613 746816896 920101638 967240192 820060977 851386365 1322561 101235716 422092778 628590903 198266767 677244279 741556458 769797388 918906941 934073946 539905556 661797687 141753939 685722412 850085337 887999425 849917030 888776350 643553151 989816653 929972800 949120783 849183712 867171267 261102744 758676082 71385792 733252844 581581043 799994443 81038561 194409234 706872857 815780227 293922620 512331100 66057438 260268999 603219144 831654870 902667640 962380139 623344846 644186766 149856453 320419528 104466984 892337997 482071214 745082537 498139508 888703284 609191906 815096962 889761021 920008820 252456679 647082967 565589597 750888036 35809866 407692501 110453278 167371261 474761280 908787712 156752874 881281277 114336524 425711233 81723839 558448481 354359517 430542932 135055233 397250971 911263610 992933386 762031005 922313465 34292623 330347223 635119487 781337749 574019551 894774208 509048009 737466347 130645374 171171931 264223248 624332766 14998098 240617815 798233200 803125982 841259491 900163729 464206163 476006442 275613253 889265058 278627937 683277356 524781089 747744018 695406390 997733819 979231551 983484740 497528569 646054497 168217704 980781938 397159877 441651035 543802110 605537212 348545186 981607621 875139387 897101243 628860762 994910130 954973066 983113838 505366313 876148054 195949718 372797231 495071061 911041642 800730715 836141320 153567620 251360602 268671198 849564993 564679361 830825405 858057038 960158416 290623872 761997176 559909399 565809244 295193505 625459297 803469319 902409231 987008135 996163807 94014207 892197982 192521199 624725621 666009159 890343742 631489767 635840068 793747661 870610238 233329791 797472379 876495557 943730066 315372244 374439910 285333303 783058075 321563646 438998736 114056325 832580825 673170806 741921777 955569726 972779348 319422657 445532457 297566751 875602449 741793214 904261434 16835623 397229188 400956501 735914891 7093465 782363703 682111898 748091908 495451866 754086634 130676654 368544648 382144025 389206488 234520407 240107968 34509404 250630599 47659216 982052021 820104416 873071325 778253084 797953474 525430026 599669443 796151252 817960631 14893634 853352172 385410562 418584853 594928948 923654756 699184502 751927405 169168993 305335869 980088648 982437859 290318587 415225123 238844299 421418432 573366948 766299985 190227540 968608815 630971453 823206284 929720859 977806092 998670181 999490066 713603635 817587063 906793282 920877665 690027869 773124885 931429611 939235565 896940431 957138464 69747253 887105320 368846266 981227608 834107918 948040124 735833042 928983976 61934715 237993637 798751463 995475859 655569869 820884780 96483942 259117040 307738286 537616918 855030576 961400335 716571506 867517701 209872388 521734892 847947467 878829445 989031987 993277559 951658482 991376677 105995165 988474433 334866255 668215061 853810491 867078650 993651616 995582538 540851766 570883404 23481856 358882223 631400913 785808915 715664461 776104782 290297112 322024277 248136292 781059224 636153091 736383994 815656816 914602924 278511027 789057328 743895133 878550043 763538700 813111275 911907933 957812761 933177482 939559793 707415440 991526642 147390744 826185763 859192757 885599649 373191638 909046602 117053530 973232447 816790367 992933779 948062144 970341946 364396232 547791643 425328805 661561264 376984696 416413952 127724899 743879483 550490314 896439726 850397942 957381839 982768689 998661917 327699256 885631998 554400493 561129827 768312788 848822956 372104572 558325224 302918264 718792620 374541518 465996335 936387490 955583185 800807960 900890789 435524491 777193173 562364773 593106693 153822105 602929288 548623751 615053050 708626814 938284977 540021303 626764209 570769239 763744803 151925990 889217332 511630478 749377691 124333705 833994124 602382413 692346708 795686328 932332025 600342599 898351081 654533693 868768316 383257354 629730526 52992157 800700105 17283244 827356852 265012922 608794791 19937064 593168707 394409848 938981659 847163546 995297471 442549693 654369413 244013789 273125698 960721332 991351302 209959225 625247237 632874297 674656059 467622726 895653181 75383615 768969070 542532431 603203901 954865750 969082719 14582211 217485610 68936712 319633171 43785728 724276756 857544219 887870694 424987319 793989601 46331527 426090417 823462939 891185114 630681601 718242171 915985453 984528594 829412564 920482809 626397948 748099554 340513656 856585076 591137614 856536939 986545303 994918494 663679409 861489689 60806616 93634878 375749585 452759466 871315462 970436170 965390285 971554472 717861430 888152805 422638285 705717325 430219893 889377990 796488326 977305611 846230324 910594775 127552751 696751273 490944452 943430291 707766951 720576764 948654248 988341265 221235908 513820891 997409345 999172296 317589141 628332029 678575724 966096861 864660241 897159519 33126508 568096113 245272420 465986492 499894405 638675050 767461423 779251751 220056785 450488422 974156450 995209258 85535691 956038850 903020438 999025879 101216071 305316153 799522531 853064463 343942257 415888725 901528169 949044006 402866028 728644924 272247083 862161095 431465323 927757797 614981646 641725191 337612930 481423318 670395631 702658620 181800470 457724101 275865338 381579308 287964494 686506530 997836229 998576646 858946478 944825620 650212259 923181544 68628060 665049094 716620161 939277181 679618206 989158102 475564531 515885840 64770672 237766967 151009387 374583563 382529578 965050142 318805212 357604459 509489453 747356214 449713927 608620404 598026871 795457730 552084852 910879293 923671258 966817491 910156797 915392067 85744458 220770677 576952991 601836082 400439922 880380776 387319715 802352187 25711194 996663510 674322136 881281052 469702187 858495258 200225841 734887198 600594334 617023556 822082831 872338827 805274880 967043609 162188465 385781310 548016540 781962961 410416240 920976807 506321230 983587634 793185280 945164701 631500146 633842229 203823873 782707319 852200992 861487351 947820404 987081288 384938045 542828934 229858021 515162495 74373089 217996673 426862697 845992807 256897066 376582184 499182577 560816705 290877411 873451632 470988320 934548902 386023494 920978877 805432025 998616390 634182087 996655917 861314137 889464893 792888945 925556993 382213937 629014380 608593768 892627000 882299669 950954743 147281856 610213985 943408545 951296356 222910618 275190979 960697286 985935361 981247410 989548419 179148631 773924459 872937337 937648617 976421689 978304580 907834582 917921514 901004434 911748258 446583337 849280450 781255300 833878587 122408733 406491833 615572619 679591747 153667649 578800853 451091683 675666962 649120911 693488874 940412317 961205556 513179909 670251818 845977356 883640930 600456400 695042787 338521 446027843 383289210 681585434 790347666 951556333 520526338 666094698 49843740 393083563 667525295 853977493 307712762 326092599 147525293 426614842 63755136 527602091 865958467 995950001 472846907 578958446 475647808 821049782 938863625 969075310 827255575 849054066 741010693 761563109 722979347 730021873 252985336 438382643 829747934 962017253 551779342 734767568 605799365 936247494 862105768 865280296 622155971 945788321 673691388 886276970 344259563 861341237 558608032 609173882 553447291 681211416 80942851 175631288 438309822 770746593 61815960 377963350 516427735 635966837 451277118 882073193 225958714 758342506 194514680 763389506 321318347 839667585 838369079 955102123 215993940 302930663 235214796 643684339 666318290 974815361 381004685 419807728 413606094 804746906 715323820 873963098 746711204 847576442 592759488 621763953 3185207 823965878 928069389 980524118 875691440 877028493 38009185 815532034 514852105 961954621 918155856 998926267 695649482 939208448 957281517 978415189 456432086 702731373 83805243 957461693 349144442 631772660 951997642 952748400 856512091 997842904 90337205 585896541 8204507 667305320 236991250 666982010 705444807 706250333 9530058 589021721 430918656 931821961 375565897 923457677 45340655 784149238 544963469 825539676 971472957 995556378 827558340 971986537 471078095 558919914 547484876 721399384 116357124 778178759 592404979 857605798 23803755 96548581 154482489 746445739 440868084 793072607 805132956 915145875 421711905 491262384 795346374 893909992 998328836 999790183 604933794 942576162 883160167 964192511 210484458 563130603 122923464 753118671 212419250 406794308 617291978 800228085 130436313 683077901 87654766 142953056 209432729 753642500 992681388 998402108 123711867 964170420 896941920 972355070 693469312 996967875 212235091 799605979 560825766 985449385 917498241 977360988 10272141 798963982 380185483 382689210 807024227 941601404 283472898 866631173 58400136 341507110 147719839 646151204 134526032 960764011 146353436 853526989 863940043 959866598 528971884 619858809 417719767 843615092 982824466 999410698 111319775 263524759 445520309 555960451 627421404 690211399 390415200 512733716 237903113 528377298 437664990 480525902 558224405 850277772 340209243 823981937 143565965 525095565 979558301 989244223 923761566 937081033 56996250 967284143 627475126 783473670 170319187 714853665 887381380 906364985 654160368 884583520 845811915 870405321 958763409 983096933 334993150 370605476 670936108 956886205 357249440 823882849 735646216 914854510 311337615 923862021 30832301 794436060 895885509 998946760 882710998 966021728 289557629 917811461 821762472 963165759 202804951 457954770 823935279 966404066 963061922 998320302 983308380 999847829 452045391 542363566 173970423 701974936 813442711 879329652 942169905 967663425 886600857 914364055 543468600 653975515 718105351 811235136 277707209 555855461 460260541 844809748 461275981 738407427 875473544 982269735 876295147 969257913 330231387 418958721 173147327 791967317 610225444 740183532 574488393 614351278 954215489 955627394 911813769 922601936 640409243 880276252 23586953 45181312 629806155 698772365 326782377 423881455 332414664 992928819 660879597 726207278 735071553 799202382 242142647 559882464 662362699 772915978 458687152 789292194 728743272 811463887 49299977 52906530 726822080 986394035 206976136 570493290 348238957 812817176 237725766 641804408 159739518 426817192 606209236 747325637 718315394 817265175 634075305 986514958 708509854 982953681 219560801 719460672 718793507 826819970 111529768 517534060 166889158 877896985 534946789 946864280 457019450 881834752 692500403 725593821 280855739 916396046 327254307 417648368 157575967 746984882 13400158 369738946 116311937 311267301 269505771 573121338 653014188 889887304 484692037 507578808 854721441 863134799 889245123 976054968 358357068 665545189 335387891 470350894 333654870 473255972 706958516 947524345 342410020 883737909 126864279 884360058 27910935 486304869 90520388 194361025 843668664 985582422 766773914 950149267 466432696 827858858 964121430 995796177 335950130 357565638 528119110 964583647 35857864 919664264 990265657 994862974 766666238 974931210 747756816 972746789 147168208 308429427 287043970 432562935 512530955 940861376 558470231 681828416 671305264 968232592 43942303 87772177 609473052 753718626 846571806 893672051 368138273 423182923 884256390 911983088 290525633 998383065 856206213 912527653 959567237 999941375 86902507 930838601 45478626 906838020 854869662 922420281 685512355 914465994 670617685 714422229 92483725 147531455 935104006 947289923 235142557 827370873 311877363 997751473 702650566 878940488 826943817 896716304 618259516 774639409 905153318 976830559 645381090 690449505 938886748 956730558 768024317 883688437 116337828 265259172 100518144 309803791 32371173 33355506 579164075 999150288 918949792 929910710 512000627 520321598 250160637 415639728 325556605 449866436 944565510 993764410 909703964 917011513 463967860 597889148 94094019 703253189 452864358 845256619 48421174 619742308 908106877 916292308 87823494 375232626 923444936 924917231 367882532 822768391 76793250 122349275 685396110 779951539 951748486 992027569 426727103 768428575 825102493 870419991 391223991 969456131 8724249 979011779 410285380 842940477 533937564 873810306 331968891 442492371 980961425 983132433 444737771 563803941 394904940 511768565 767631497 910123467 226312366 975651634 250687443 359261738 46519450 452236127 207450584 320216022 368014169 956238532 650887564 951883981 959617586 961970679 145618069 589267886 335748441 417516511 217716538 219648868 458484298 963973497 300314245 478434054 966417280 972612247 384590459 442436571 187964493 283118428 207830925 548605385 510525042 644323534 24845806 910241492 350442014 421917499 564551485 977771828 523667261 651061285 80307903 250635727 851741430 862470442 56029870 890647364 719766465 955084720 356972313 611502876 83615486 905323789 727769150 812044901 487222939 686385917 897042313 983184945 695594459 818362427 590543134 867674618 634398164 712813514 317365032 537798532 458973700 856299174 123878661 348860578 418658772 617415608 855106412 871264970 785868826 935999619 983779637 985844007 913747444 960078294 575427361 667775310 835871406 883627443 700464646 979280790 636430423 832781256 170417008 670864916 805304218 830049862 270743951 929100333 961987277 993795407 207430700 884995335 628574124 929448739 627779187 805905592 182681540 859876428 25691521 682451236 170413982 637185716 886432862 942538541 895787950 964348721 191443779 589188079 845614756 919930162 557383252 766067972 983790477 990167166 219225863 712081107 780606428 915945419 687361352 946200862 579454961 752456409 551600630 594852447 497565048 841579856 684048662 689720625 364425673 843494745 784459793 823643553 510135526 840299487 376355420 512689732 642273734 894971560 184830075 902660455 347756600 492275173 1116769 242679015 39845704 323849024 300995724 634326278 610889742 721554521 707261133 775002331 775881342 987502981 996265929 999499204 483164681 829426596 22664129 620026889 474793074 504536235 728633781 759615563 939358240 976338080 667708804 680590479 424665037 575090037 453593562 651177829 903910833 993888464 90739735 204689533 294860296 651129163 883532653 964992742 989834323 995374513 754409167 983992568 619958318 894089904 653755564 988911636 910883595 964400508 671567848 692461252 685763182 975909729 271705657 673175976 336665462 799237104 902202423 943222515 243507595 348433461 282747957 722301475 659598941 872275479 211979218 680309349 966453439 977366959 408171507 509664869 738555054 876778097 963266231 977996912 96646645 334896254 761204289 882138426 745642133 809228858 34314781 937259149 36301081 995274765 428556361 465166639 107247078 398531424 49117252 238592834 564433514 704421631 186160858 703404845 197901901 209498442 146160809 963732021 302681906 490101610 376740065 898214323 203559815 970110136 501356758 871521643 702233884 784983403 861700400 952204479 787405 475840630 568767775 638441276 937560383 949719908 359834144 733336350 617348610 753017497 796534888 987056518 782128382 896969679 426351519 600676120 862097668 996677770 426530067 800057324 644200003 905657433 329540592 934402075 47979788 112542289 566360849 889840369 819639340 859693767 574393129 692836103 680213416 889006466 123466102 265027187 276838085 379210552 62521809 543704335 691972320 819436851 841898732 854700333 650344056 801465664 522353247 956889507 678557111 698615548 520136809 573944806 586952839 941935814 539993660 935837460 745382847 874396101 587088948 670057719 335352677 659055322 600299665 769901091 294212601 719100559 823470385 998316813 876577450 940385286 597387205 667674452 208281125 593924277 48751224 760339562 249396257 599721440 277693678 840715119 932676956 989780019 296940234 516300858 376283114 663571520 346959777 463201541 623350856 724609080 673510354 935286817 758587185 819077952 196395396 431325904 182781767 921824200 709100258 794159724 412027008 595044539 664533834 882434385 819531526 828122091 129131912 500520403 339508625 595761891 557661721 761074635 471657546 507956962 202369131 723025264 228885816 502843063 643919314 933769667 275993257 704253564 352563921 800780886 151954466 315663682 1770145 681190136 760954472 782738630 273333666 760389949 993275768 998493701 440846982 970115780 128106513 166149365 684820053 902061553 498772493 520515222 220562033 436771305 691393113 702624424 309493887 636510577 233477439 770590661 17841021 115493626 111985505 876705916 50579489 814648530 781395550 968697239 751641497 965439891 864472107 992998534 429066518 707932412 657283882 920171608 59179169 292050448 162238631 557254806 481967925 595368847 663087838 896537900 238110506 592503658 388973872 919598469 20862738 160495004 136535263 610570567 277699909 449136679 950056498 961811281 851591537 949246858 499528977 748152817 922935647 965824963 493870540 913879305 928854751 931490878 909514690 943250097 920705252 969675168 10386184 497842115 636448437 870509810 933287299 983617884 395610941 642654170 374295921 998213125 922147913 926140937 142138600 784116525 983628014 999743164 511955224 835946939 972165246 990151302 867124291 987950472 740549413 781196483 966324150 966935487 657537792 849844626 423365469 858175444 181955589 293011768 227092884 898542971 987536303 989567809 425378449 982718840 971171867 982855258 921057370 994699738 287986975 758300044 727200112 889434590 348229851 623658329 530183048 619896223 89909297 590269597 21437351 760092563 686910574 696636980 552129516 986468188 134642049 698775244 562647910 633478101 401286304 503836590 497093143 662362713 557266517 575518963 323110361 975793089 725301361 901138622 171931507 409516546 704129766 809180379 375704278 716975105 391630425 950305852 217606716 674362922 548243386 614067537 87424724 946465625 798644012 972556747 561027951 710276821 790299792 990529168 874871634 925037591 312555293 509911899 734159636 767500681 591131516 894125463 526121016 600368923 432953106 711863313 701540804 905511869 646281097 855135374 633117479 768783121 834311919 958187742 509840925 957088869 26498948 640282763 114011776 582375423 351148828 845162528 19689334 269440772 275500313 564515759 479034694 994107289 297911345 882760820 641301411 903924665 102295641 208055054 152151998 800517426 799319064 878629192 741457167 897870041 930375177 967799806 807253076 996555713 655738681 701690764 843434226 878528806 320524153 368408753 811289094 995267788 534407106 721940032 921120741 929580868 737719179 790495882 594807473 749955275 958836632 974447197 942258567 982511506 360434423 890179355 41960536 504462735 830094068 854506306 940014113 950010068 723437283 985137995 409927378 494810100 616591878 925746630 57895086 443900558 169368760 901809957 820775001 954697845 632890273 820550099 524941959 735690600 129708631 708041667 718792779 803953851 986889505 994811079 37489400 267359772 152125869 777703823 728148496 794084765 491286594 925662938 902007869 983506027 986061936 999664555 884980652 973292776 118699108 834480299 743313920 828442642 618415439 925839912 176403098 915461496 646371659 810747543 251049122 727997070 918485701 948434834 571697642 671096655 55211509 599118580 97200257 529645061 994461320 996191475 990900172 998033145 767907034 960292161 571191856 731486972 385066700 512736836 369251673 739571443 240521311 466228419 659442023 671320225 443145854 549438138 12193630 915272430 882172258 970962374 165705108 986644241 709342022 840674358 976443609 992734021 353368128 779500805 406134207 425405450 999479678 999853712 857055776 921410090 269118928 369052200 643283122 914063473 607723550 745035700 644095787 813891858 299558002 822054585 901429288 908891699 192088310 990027609 627906563 846335736 354496182 941797168 682784632 779537081 54899520 630701901 829469705 895110570 848211094 916865919 717848619 899907999 719449734 980175976 884443260 970574834 78948908 183821608 687392966 900488979 406116345 738609562 996347109 997498584 199563857 573872381 514034844 831911179 981852503 988054286 832126683 860124969 767000130 810144345 568251802 829683397 62382388 338879213 435057573 949244971 577438192 919757387 57717973 436795284 951033248 971019364 537349515 835171057 198997884 864372732 271473662 356742091 750478424 880103250 94357515 915769780 787757197 966540848 175549291 987651278 653509420 858280155 857145603 958076741 839778720 899392125 980101468 989315469 24288801 328950689 659215358 689873147 876940475 988210707 901551034 960903998 640683246 712471562 378693105 979806832 842529531 871003632 208112713 934357750 871152430 980049961 164322251 430144031 253906658 505213881 374000855 930229570 860998245 949660752 31481997 491430041 927298885 988095825 222798103 492888982 37846679 949535925 818261009 885191384 61894587 236114211 217524478 540562671 897478006 930252685 959346271 965571148 135132398 878039811 7925563 725785717 684901105 859187810 158590830 963225236 782635088 818879852 210729647 788192493 353173449 705652080 155431911 553177179 594925083 654248810 505175297 675914489 876250194 970392941 515564170 931296610 116573274 878168441 613704640 685914583 872050180 952332615 403503389 492521933 144617860 182401744 886716931 985049913 272698341 379859978 14759329 147878122 168391700 807586872 558318079 927880556 725112514 811914998 858469662 964368774 143083678 388057219 279000360 865709554 564175951 947982599 805740945 996418906 347171015 785085276 907650607 927836786 587325190 755607063 423785242 573746483 975706703 989279191 645293496 709466930 349522982 785349715 705820815 796997022 438891003 587887418 774964004 816117261 578852045 722713048 304502027 407384115 484495306 528458004 983614093 987679987 527886548 914486968 855613118 946830452 974182366 976211718 330921404 724055872 51642214 961471255 367525555 660820695 605305607 615649630 9603220 202633164 856889530 996587682 723007104 999484743 733337143 830649314 221441783 530018075 85331072 486952312 956258172 987315126 674690351 863812663 677092996 922035844 692350001 967994724 719435568 947634044 401865157 403292622 193969202 326283714 758253112 912950036 928588796 972773268 458081038 715566595 219948506 385185791 316147260 341056161 289446238 979121051 86736383 324694801 628203430 965517442 173290455 528294175 225204996 313530461 364616331 924843355 906748531 919148227 708792166 782666928 681464669 835168609 782742225 985588252 817069117 950454440 505404658 649011327 265879539 532157988 888465753 980111229 790878291 897353687 590040618 594844960 541238490 584814424 402625984 850487251 478664995 974201943 429563411 751671047 914536035 952972978 278274888 918457065 348687466 642985371 115693830 861755663 995863092 997976302 384341385 748951439 143969889 487229612 235154010 865179328 156146735 820946263 146313822 203689448 546998790 720099851 599248990 968423043 515835454 657909422 318823784 863052839 840083060 936535070 880453958 984745781 79247663 464690296 898072266 902796069 847854838 909000718 584142905 664937103 12794719 199272111 349602843 509926973 853014620 918456632 984575919 998365255 946975102 967999816 734100909 849806213 578974843 701782519 574391181 976263766 844251476 970911292 771754984 920069430 363625556 476815691 583916975 991947870 480399997 724707297 872473763 956320120 195812206 256034676 633313752 906571252 117446758 931509328 989330956 989391561 118244501 480000492 232584573 954186528 31274443 633407211 210973839 491905604 427073006 678600124 646034584 697333277 454015419 484384901 951808078 962036286 874168057 977679310 943333214 974113460 657908250 748672587 159625577 203166037 202906060 256432972 843815517 856716823 134725736 196145184 323247963 855482079 765160791 886732090 214813779 859263552 303422170 496278068 351142654 820098274 642814582 873934559 58082513 398327573 244644543 605708445 412777462 866354662 842980372 950797429 228649574 531442365 454224284 676302617 403380420 786584899 397546760 968073656 102347975 923959156 828536853 846525800 196018642 366418671 537589396 980665597 363666682 593735519 274309163 782160243 884569896 972521347 920404293 950715721 663414158 896299362 166607195 712160278 716657352 988198176 602841656 955353893 394573608 904361985 261171508 698673114 952782912 963335152 275534397 803013747 325780632 404178149 897871259 944480478 309207811 358315952 257653781 540330889 228894685 697768697 556071593 863494288 799806071 878937223 285211214 293362647 425383534 781542804 134132146 484916623 759227875 812265805 645815911 907069389 106171024 759704472 215598492 703392766 874052969 949285156 341268093 978939008 274666861 481003759 471015144 475852434 595254167 941704908 69092505 618038279 389188194 987652063 467995196 759104996 845415056 988365019 965299198 980263415 510783686 857480842 619509735 968978357 246449508 800283905 517515202 596237412 105746209 388111499 155102098 576843581 516731547 647996059 611956284 863539316 226568137 993516033 231232368 777528026 889355938 974068644 802526341 943071024 73510602 385673113 719554531 761004275 263155145 516830172 996425508 999997181 638819280 947463537 43861609 439026538 137641529 639956529 441992816 974901701 836945653 992135297 63679934 161348967 359663890 524387064 660884132 709703412 973256643 982202908 225109874 917612597 526311398 871853540 510789461 578653661 613569944 804158740 279306992 787455086 60974680 676869678 854167425 866757729 100413649 911293362 942501039 985468543 544525598 547332151 991967216 993519000 338741901 475590538 638868273 828711935 3978186 441225941 502720507 691078624 796600460 832875675 252830102 917526758 655632147 794324002 967426562 990011304 846588982 978862816 325907018 930394460 341439639 707909075 210215741 251973513 42981117 370016206 791626981 950849276 68620149 235225437 983236731 983548019 250938085 762385701 416090671 509553138 392789413 639821483 214452617 854695259 811922891 844190051 520602109 527498801 846880067 935066648 47895525 945264835 96998314 397919384 806428377 908277340 135759899 626714670 228715881 505785426 368362885 871300828 225392426 603870999 518410799 684641457 200564459 888395827 998244907 998552667 374073425 573294857 716172586 789987947 764000600 807846089 146504401 983818662 289678900 848314157 152326296 254059942 968943977 989480434 288900004 570218956 300684496 449619533 646324877 880691187 892625217 945868792 410101163 849159318 448962713 974206427 626455755 842070830 501330552 783073326 990509601 999546346 179836868 436905729 159826177 880188494 827081965 960524138 722228980 727664901 375949842 920222739 428264242 603131840 794696106 941029605 860284366 861281199 420452019 489841337 493302441 805241471 359123053 660049517 928632527 949864572 774707060 845787958 319560907 999829305 903371201 965410957 280422856 974177945 546348455 706430087 83247521 704612219 839710546 989774112 363157034 686619755 484221977 782381684 705929740 920372179 617994137 640353378 652764830 794768934 980988223 991744997 607012081 930475959 355083719 375002402 6889832 915424433 575221520 742449457 441239021 700137227 124231531 952401817 671561724 997895912 281049415 559381492 585483030 915715788 544853601 788705432 330183187 963305451 561981616 757416633 304721661 341936703 131079495 915724407 185474097 599663499 724674568 829273593 403047418 544385713 235526858 582730764 715201913 876355274 227326475 252399943 789841000 848446287 570075883 892137968 947192083 957336503 315700369 547597395 622444686 749321700 488099990 861148106 166994136 691704913 288516514 345592535 764609628 803799439 792877631 995647118 373922528 646411661 97706482 923726972 916944908 917719990 887212964 947400842 226091257 659628710 782232426 914386972 518904075 660595738 859258128 922021430 427466654 827350118 682664737 731413895 685229750 896185448 229685626 314138208 552090433 595415593 1126695 554964760 654608699 912030701 60311727 261193667 995647116 999194513 992900338 994227725 395606726 769320895 236840852 401127232 270475453 439971454 519230768 709044667 223258393 378420824 78249648 794449980 23921357 786622039 383401417 847999212 612340769 676343045 736571412 998539439 313051135 868372418 994392436 997496576 688030057 983164281 415710935 843410970 537407144 731218295 439129663 949566081 907835781 956964410 325600242 955575569 799083260 829361755 914551367 999912159 8820874 223361121 712308629 789448822 210233725 949428132 386752533 608945802 171604827 673526046 55487372 578165274 325502947 747677941 451618327 802326097 81608220 764852468 940420231 964665421 964664349 996370909 292803085 586705886 61231975 725649296 807703758 919838286 546334793 848418489 424268937 453501814 706705033 791394181 69977938 203398661 287511115 298074312 273802541 746480388 134351151 652582312 334226285 951025803 166308235 945141184 640126097 781898937 926299316 971153387 723756758 876548122 877167945 892924176 885276415 956378599 663504398 690728754 35487875 497839063 960868276 967447534 513971130 596577381 127811949 449707577 497166612 508404121 428260928 669466944 735025679 965893955 845793420 998755012 267300553 763836849 996351642 997480163 241365304 385240024 220151659 492002742 505591711 765755101 190421113 954734691 179684458 289513386 864570865 869958268 828265123 841755602 633191307 694389330 575664040 802549583 724948404 866655830 855316819 966125163 363858444 992704248 338179621 986188533 135843103 222114126 32247579 987801422 557415166 950693481 356654933 827149339 131213297 162002959 824226113 954632448 583310090 754130987 818164000 868396767 119410642 492886405 954208990 977985924 875822241 985333360 66100652 331838361 175542008 607760551 31347990 684432369 542797032 690188811 392643276 805970409 440801900 955074532 841175341 886977663 518960044 809506627 483095039 812238795 943359601 952240380 838380014 857577927 595962870 855891353 484810321 737401460 823640075 859357652 767808559 926951306 941215088 957325519 391836682 567458560 922957688 938458306 859147441 963180193 953692541 970364398 629558826 650433168 520260663 576216574 259768963 472214329 680141539 845267505 313450100 712371610 321426566 706943900 287841140 984743070 533765123 918313056 101412659 307030629 684293984 895659756 621305832 881575882 731625620 893516462 142478533 676538394 938976601 959264631 980076666 998607764 723755188 978639546 452994250 866874088 38832397 911621150 226713347 238182892 570685915 741218060 712445492 714261775 470232988 836484692 839026452 876969885 16173789 779334203 541358383 999043900 882534525 923028573 228665718 771557424 588751509 990642501 529995279 972823023 99636737 398447315 774182919 957725861 696945527 928265089 210316419 689173419 490371133 566396675 161191288 435281837 739993311 849796978 211670521 564946146 48690268 923189166 965464071 993654163 96560073 234218107 409359683 422545428 876989418 919648591 736421459 866260985 945481601 985283500 604277183 740873434 108870134 414654378 244102437 953681418 115490984 748909302 462695459 604327282 671807017 920362623 565686035 937707083 652609012 810238464 495057195 909949654 450431028 482723847 191329070 476758332 859395110 962288617 566872082 664110011 304808734 351313925 583935914 740174856 468312633 609904372 355685420 508543530 199007486 339904919 864495945 983132413 809813920 850163575 250841844 824624380 930476260 940331172 861442871 984913761 847830226 942683315 106080149 623602080 171017946 982098759 176927567 328038968 935107768 968136902 865629377 983091766 650243415 993953771 551603295 839693449 170825189 315922226 527128596 779045349 120947132 542825989 325683758 689373164 480006918 692387868 265253807 753789466 822108949 909818204 877984603 930700431 770774672 869795061 216005272 823206674 957123601 964051882 118403590 540436140 994197527 999879130 850191602 895730453 705747892 895468684 205899566 324757295 80991813 358599776 716064328 997450389 917935833 954332168 793708094 799185093 852037305 937001069 66367310 349842075 394620535 855461307 217836075 969418751 251562274 385427997 609631205 634943740 191184502 935791747 97016682 219947595 433012324 433165177 21369112 917412334 384116887 385694479 546209697 883766001 305111280 835731088 820526070 940960784 561625658 973685296 359717008 896354065 355382201 736651781 640437555 771575148 850756278 895631686 827627118 884609182 650717679 672311558 614938780 701442795 734717133 922780202 463334374 628046676 513081332 825450368 705445226 730012271 877842565 979445844 314644162 878974525 637809924 773658237 877436354 920568621 691288695 960332348 363636312 370834776 398127286 622853134 828946641 921603014 875674439 983052965 173575962 901013361 51451536 327541456 237793724 238741049 379320562 385256126 238834212 846503309 315064474 636075292 668980953 848652185 79076426 795265297 726438302 744967670 580239581 584873027 678350760 786463411 216044944 418589962 647329809 860246741 425418909 854983214 131965225 469535182 40898737 309985786 718180493 944343041 129797783 793456115 49249406 485063500 183284096 301168408 97027414 855973657 87979258 355403360 5558216 847773119 115089267 741640883 832388817 872832019 484474014 746995171 24805236 865580085 939743959 958516444 74764201 657794002 335203629 692952469 366346238 861010342 574077041 678349069 594569443 980953793 375352064 941690105 657156727 756568412 617917050 670358404 653225775 935980742 280336228 578931295 347469978 604491209 259209110 811362809 836829194 901584994 668097619 893662963 712491393 741216925 174005772 241759634 996822228 999845715 604419772 992601364 137666412 897180830 4807743 690708790 457250618 520645685 103096373 437308234 930213894 955956638 610830029 821996182 897178568 983511547 396187999 567022399 590610979 726632932 657467004 910385440 887468665 925045729 313091318 745965867 144921137 381070434 913362155 967389133 587068527 947366805 381692828 613896053 293592136 491393992 563589580 956650288 992207572 993767395 746189513 895046471 910544964 942605393 185510297 708558753 319356751 915370635 729931508 902718565 556018196 560458549 332823877 481563557 194315506 418006624 851891739 901861193 995323589 999567623 656720307 662752615 998112348 998795913 803691496 982297265 963142247 974804162 745456959 882211469 791808860 990782047 60047940 297305745 142653473 420416337 541127172 746646610 900655430 994303906 115964792 328933244 310050458 335666304 645637611 999620193 537591039 997178844 5140291 895645726 251069151 898339485 120291092 217103848 644427043 746194826 906353860 953968423 560048890 656440380 519896671 931913091 84341403 254636815 697181038 749675839 674994515 880542786 587267387 755569786 59437730 220361136 945853365 980375464 26824896 222171944 123031710 895691496 493682339 804864430 444536223 777926500 142521989 429668558 429643762 677523454 378995401 873521646 261317730 598190068 288514765 796923470 289032124 753402658 960102955 970417289 139402988 954800517 777532757 863640775 292647208 644332711 670919909 907503333 97027308 861139224 24589684 793970892 712604283 792656510 112258892 894933532 580128642 983025053 521871677 549847077 694367860 803927663 210657084 214478164 327567906 691009900 132127247 845811831 288144864 713870578 254146507 863801594 528047060 736149791 975396078 993868062 319382283 826216011 341255333 975293591 385286074 968741508 628902147 652729651 575251156 785448727 662446516 698759961 107149485 923476115 959490448 989817778 368743225 936348340 517392667 964995742 361308115 767036511 837158666 838409473 509012974 799608529 248819256 464117246 745161223 776365687 375568945 733403476 720844264 936355082 745871031 788075990 329916233 429447203 339605485 744149306 714228461 782870604 15960287 695349431 731600980 946879091 636005069 977365751 904699531 908771120 118902317 158060944 864211720 979582385 464686486 595565993 197456317 720375337 397027879 895269651 825191000 971845522 172462090 742654852 439867195 611389481 823384691 928871714 714237755 868308312 927099994 936032967 358661984 995907592 542950827 638356711 772765914 898076603 636935856 825478836 846632906 893391368 920105861 973942729 498365348 556497278 231451113 679692948 231508294 322263797 784207567 948886849 511662404 702289791 178818340 856586871 345052358 799642235 710087353 960576167 520098604 665601055 101562255 752647811 356431021 399614074 956308953 992784226 957121501 984837676 296077155 431596983 390967283 826706825 839898993 851074022 743145204 953323552 71145860 406851236 768944929 773884977 702650292 939332562 640034719 735553216 611384062 848089160 17815450 288876218 776025214 831144397 402889101 733715392 553650102 850114251 637611746 884546489 857661747 955875854 392792988 682439283 341018612 791961226 184492346 339964182 821126171 950153657 576809826 659780719 51058336 429114497 414534395 817763983 245481381 733427145 273489059 749133758 488446686 891265986 696690372 702443325 30989599 63616775 714115063 889138922 525145523 666795855 868221776 942945296 79152153 919521154 197970692 831513877 196153461 362948591 607577308 891833644 877057331 923687286 611152118 617670905 271336492 339429548 474007674 953098235 92411715 350280710 62709300 884113188 392096419 990118598 732986700 850285078 747453964 761710223 81187750 150667643 144030697 173942520 113275169 880857952 942096780 947453487 784221999 952241813 153065490 179806601 588461024 863671651 87511613 106964639 647698761 988233889 800222334 900547817 678835092 885877016 142315438 607568892 395822923 506751974 483049800 662636718 571704096 868817357 248689085 968283409 902665237 913114844 395369456 532399615 421076059 449642659 807130190 831442141 998848746 999136631 755223749 964358165 630388908 819029393 411799021 745033455 460895281 673660805 752311359 797577105 702489998 975685777 860004503 961192886 63654617 971123552 596300447 740520782 525606710 892356295 722340075 859838631 217844580 456995738 206805521 541829387 330513739 573188967 370013141 908426718 702572100 984229185 116318602 140727336 341356207 763779888 682350947 922744816 308182916 775560631 454465738 600763928 995633156 997079088 715954279 766323558 626951300 894750793 950688711 991337979 270834482 504405817 347668572 571182036 924853800 927972541 170800967 628453311 458790138 680617226 470686773 600026269 131289838 885289549 563926790 625979645 443513102 590139782 552535525 757733755 856862292 924909418 878287521 935619019 326503937 568785403 218813832 533383260 218518822 372426585 60307219 815695231 964118340 994119129 163117943 758290343 550581695 608995487 171048259 661011071 666518163 727404595 464854376 798174018 50004308 882581667 7108539 996869500 646614873 675054830 23827013 27732021 157385968 923349677 16521326 89821207 231111309 952999645 428859646 993176530 108424181 936138272 348710204 819183121 131788621 809566627 540496507 724578635 706164684 758186503 771708047 997105916 901513138 996553518 701311366 741420210 136141298 809443467 492846930 688976027 832230225 858821366 589445210 991996969 557744116 898265009 147968250 593412919 506279757 651965813 375068018 648349304 618309042 643551752 244387264 855649605 670106606 997281235 608917930 882919707 501576944 571992047 755933893 875388966 926706836 977742050 367262982 445480745 297564892 847019437 628601905 728286109 905904479 957520401 88615525 680663630 232543058 829736427 651430532 759621619 573901674 962799624 353871638 588032765 347769098 738118198 967202076 982974671 1149246 341209282 939268563 974850410 391957684 957373505 720837109 862692297 369193238 757000216 828351325 971623924 166426557 436879171 438301667 811924886 218435401 896077666 614864685 632965470 894989208 999033549 255939097 432957346 714441427 877271606 332906029 581824327 432834656 788901556 719789775 793304208 377707641 417986638 219969638 408109348 67378844 983527908 978545247 984486141 611746961 646613494 323059615 698581332 627643172 955542767 792307202 961789015 601332260 869941895 511784416 532742676 860288054 921733956 819621095 960374295 220949161 373913093 322219411 697138118 916581307 966656553 568418394 577024216 757394758 989168126 383618044 752009395 284015998 935851976 784998460 796742911 497689488 852315708 40492008 899760115 30157904 846241869 939446047 965806220 427953830 746888266 275059090 983020663 71968321 279747602 774638873 831894135 204896412 352548755 525120127 606533146 240934050 854160869 690917180 983531232 584200004 848739547 539371379 614174614 690031492 755806473 7358073 633000079 136014267 481564980 856635434 930864447 52113878 76107635 375946715 451628000 485781432 898321978 801372748 978363657 979611234 980827717 559400504 774250722 476326000 998361709 464361305 652443643 674612164 992978504 871500141 938377718 294840790 413518171 18380488 143837751 623952664 892558422 54396372 609957282 626994830 674154674 100982089 932527816 729187050 774082584 152894167 459949294 462016228 956447983 800038023 923151860 129538073 264319365 724071357 990885490 842795777 897756982 648110112 676123605 61893653 78407277 773796416 799089196 425949395 817213960 999855548 999917238 125409559 771467898 647061208 901453716 989226126 990213209 683501604 799897519 567278243 903187507 40944624 75895525 92545761 689883512 936781850 963046404 491027226 671853985 495640001 529967581 435104905 607142919 368307618 972054504 283328098 906206181 880247299 897079149 861949556 940825672 202956050 629397698 426053243 605709378 70990961 830586330 921790517 932276265 995038086 995406203 480326849 639758386 183867528 714318107 888042139 903228689 477204174 675966556 802228376 822709426 952069283 995025535 348614700 397376215 728737892 816310247 317029450 828677320 352248637 642459706 585199852 702603037 26739843 417912075 840114351 934728950 370274202 661951823 768782312 835923058 646864089 816356512 674959168 778973097 200063307 428897111 69426698 827071742 210812723 739002159 812366403 852182727 403604819 484677062 833730159 983392629 793421362 940130405 417308312 765671742 835990174 890473876 65118236 555674480 712222411 769840413 829442421 914872071 112051811 683062106 126682796 500796280 162449434 950815947 635225726 984633478 777516887 889069151 951576240 999584601 936774343 950634998 953835837 957124724 860423531 925226894 38192286 411690544 275749417 660186643 120022866 328631605 206071583 897056859 384070568 703916000 619591977 992784235 703171792 751502991 324901558 592207331 595791839 796053501 726299120 984307841 818886568 870923845 594177167 696856176 512879339 750698945 170827857 925344508 677121498 910044974 567405351 854658707 297537341 494258604 689580663 753998928 797495754 885081312 706364915 766195578 482353931 539703735 683159052 697957272 557484863 837415361 85468359 164835655 982605305 994805666 332168318 840939410 229580906 480365405 12846597 378308751 938954781 956200019 358305057 426737359 629032215 674774704 742645694 757824280 278113478 609487655 631931611 763706376 482249776 608042293 479313934 501276068 651257337 672983233 400236721 804879367 856924443 964801095 734276886 858088749 629506532 896889351 979377238 980741857 636616634 838442919 724842164 849013170 601004850 806004158 506576192 513461402 960185744 988891036 556299324 989982014 450811400 749973063 40793145 933493420 147565807 510497610 277110869 366681253 429599647 914935956 92596115 156022104 371490297 664190726 452696249 534366092 952578565 961697891 788306328 887488201 848015000 968480648 974548030 987061834 231657265 769167226 693289375 752697703 871575079 895583994 765135901 992594797 656662690 810708401 544327964 936924200 147287692 178721048 489623085 551716395 733565888 924705012 830964039 844391446 704211779 911434225 857646231 957086783 380810620 719345111 721794431 747772454 574267796 576160752 93049735 880021471 202409205 682173316 495289837 988947687 106409727 284839355 898405496 929504860 385429250 856516381 788709077 887708689 687491823 991894814 23238312 715747104 897738442 983434435 894654964 967132684 467107569 961639684 589632608 614498141 283839117 385689131 158104152 688982984 308805201 735804559 296977817 516509686 22627474 110560014 928435399 938289261 684140847 804657264 736795347 943877103 521674975 902958090 624590653 644006955 273271851 730598314 61153488 153277695 135076811 973654463 603836986 612357195 938369513 976334517 243973108 327964699 976382795 999728156 411827764 816314233 158528399 407940926 205061331 873590049 482151561 710725143 906588678 908873626 845164116 877700112 720730814 728371809 158770801 277703039 241205615 361541502 653600213 768842034 545593764 563378964 819317847 931378508 290937029 298741591 189603359 746852076 312055131 756401963 340805531 674277762 244886389 282333351 670862623 729265108 904651654 924635745 370374966 934251503 195589711 908226718 739077708 761303527 50535861 781711710 254517599 738924515 73974836 235257727 508965898 980287019 495953703 751283448 236429726 525210887 3711808 479584653 527457079 991036926 135590083 649848053 501482969 558137869 150378232 344397721 406403056 483083929 64125065 678545563 867392101 873642628 239314334 316357258 538284186 594501398 202971599 595792828 354476746 607089342 127755983 929733525 306781982 683757180 488967998 499947495 461223054 593110428 668711706 864216856 777765718 839586301 940171088 986047335 681458266 926102770 642694860 956345856 771217428 995974023 789243513 817185931 979522917 983407768 371902015 372159788 437181154 496788927 350080574 759390604 287412493 500527881 451133421 882806536 198242730 236625008 794534331 804920619 968481312 968589449 529842795 791531252 497695096 847294913 673933424 836217886 236720307 948189464 367516567 447593509 955114144 977945221 114819392 578934334 15373112 652435960 717743120 815242025 709611593 965305529 649860809 871649926 367494600 611412569 905083184 945836294 607257222 666956437 107147052 165979193 236695067 939126249 64844536 261970149 472724212 683418593 772309332 958512347 53888940 265170297 28122002 625675154 216226175 686756520 742252677 746875783 329383999 404354192 961003041 973009612 182654984 468812061 217178468 560235631 34015799 645643625 218438971 807144856 445043342 763738938 848555616 939280435 48326366 88990692 181246733 434768859 478216395 610436991 694691827 934595849 27969235 869864828 956505320 962919721 786892607 906400309 219956957 805136719 338822547 468007729 894650288 991326316 140925297 440724874 509853851 767059262 644214034 785266082 645764748 780795639 306941823 399061502 340328724 632972977 260300010 816098106 593215677 634914088 853510882 858285870 547676366 592060031 993973427 993980599 339260338 717995115 518183114 823545614 575104913 880079520 254323528 670240464 319251647 625738397 41634778 978008813 691037752 862023309 140204654 199222199 973408564 986394190 407541876 759363816 331033910 407481901 182469331 372143581 756458726 799988316 990668410 999653255 637381368 879407497 565493725 682646879 460949628 675305942 540457468 833185829 4809912 908556713 978821596 982182771 977683440 992691071 96511690 852510054 718420312 836783237 843391748 911634887 476705535 716732785 140415510 700568286 478660279 524004294 312575185 869538141 499324722 832164296 339767989 610373104 442470479 901635203 382336947 830187260 202051943 349766845 210232321 339207380 298826519 924559273 215665391 822449031 732976283 836807108 928655368 953936756 21898314 757274019 559658830 666992921 93743981 408046304 282637347 690586284 472778417 781337759 425826021 520172050 962508073 963387055 324315950 961000477 428076950 460466016 988415974 989913872 600435771 710981351 380068221 720855991 312086216 380768730 186678208 543242895 288756425 580614715 840900273 919035008 355452905 512664716 262865719 947250159 943903375 978391833 106814459 984674851 157194402 370344991 499486736 649717633 39287378 958967211 148968653 613880043 163464855 878328855 237173512 365224377 600960112 636902498 443338434 807330301 733124617 824793060 316714874 740404753 633798754 838352512 819830552 979256732 366348809 976703061 293712089 694371259 989275588 997955213 924081916 926856299 484099952 595136190 862018695 965453525 896247928 929036893 551521457 835463572 883992861 946383240 640547145 671114801 553808432 612186480 196302271 654364786 744471756 969818974 75948708 288433436 890168240 953665301 199435130 399404901 76303717 216892721 302572499 990173540 474072426 882848620 265740092 859157675 516407475 699321939 822098690 832118194 221200720 857819747 126116301 854986908 677878486 907442905 65549690 490696048 368331034 738252338 119385937 704700757 264931306 699684852 544437044 732418532 269156739 526971627 862721558 950747815 715798058 898165910 520450621 811802482 539110018 632880426 788226016 948676000 782653442 971594840 650504506 762794968 265017427 439135239 511963062 560393275 490791086 787973078 128410344 133112391 456770810 485156353 315943487 776318790 928843639 979193357 915168871 947025836 228616765 488404429 951422624 982646268 835923136 967352528 270877220 425131293 924369095 980227806 489468243 918236967 251782281 645917075 948973142 991598331 10408066 422559938 675042864 882271505 723879409 750131269 175666387 776872109 786811407 998549862 584815673 636247982 265642291 272659035 143259374 457086902 449327521 560929051 767914377 884255430 537272913 798134081 641337524 948539282 955293562 979069342 222966811 437844335 211750837 577234555 462871292 522626251 487318386 746860934 29974391 616204441 428906241 723296863 797469728 976766084 188905407 872447218 763804865 769576058 21659853 473062378 264355670 601501750 753813452 924010894 775542592 942537467 965436624 987945512 409854071 709752559 246723942 548032064 688119439 909591728 28632461 861536547 380547768 770594697 481470470 958401132 36943426 413216057 795164424 942590367 999597349 999963055 193243545 838909240 559643355 901384495 844513480 905955994 590354461 601866342 511519637 642908150 429427472 670434213 352489122 418167189 294545033 560064400 226451725 970408480 533444064 853330566 269730357 470717776 729347385 875249347 146837188 535354315 933871529 952131306 331373371 633183563 313631924 495823788 43357940 191154269 392445322 570544754 946564644 955036414 668026572 906155550 536298749 855323770 60157768 101307740 551015143 740924239 238332845 713118824 541006839 605740514 703088347 719868661 596048046 915669549 442416081 545775222 901248804 901599173 894219028 903887647 902423958 907231041 429719875 933643359 141644242 952111519 30672264 691100241 946122282 974568524 842480685 892835734 48348665 327927713 453750996 630279063 392187167 966869119 354169739 593612797 233341331 837140734 909494353 971569863 253018842 267464414 432604637 982933610 602258888 926422016 336726869 560911638 878866281 929689480 570922419 625897301 355460004 579975570 215725198 528366740 138579156 503224645 235916761 925670957 159446055 504572663 824427500 896900392 656444754 698698382 212165299 725412535 744955258 818943889 225908444 696917293 681654303 818656650 295317073 996813290 282712619 638624194 473406478 881415839 220438834 912150526 133810203 305278106 873473652 993739662 369878556 408733802 108499451 614046314 912628561 963940542 533881585 681249176 339757757 726240492 447475933 925421598 743476170 866038472 588860147 945152315 463900784 878351540 980619950 986214528 17812454 809952101 927361242 970724928 657804811 941902671 344866712 663647219 728131716 951818649 23747966 81463613 810637022 982645070 662909648 753865617 244505637 899774243 687574568 833714366 634861869 956541524 418278219 643417643 441605772 805108543 966979257 974478929 255353681 555384012 901741284 912149366 953107593 987551743 724733763 892463898 743216916 904773291 162755213 441326081 737172052 821612907 452585011 490183735 105102707 807461818 565241349 903485899 61059572 974719781 657983520 756910052 835885427 926285345 429715217 644950533 173994206 706838707 174640406 285560697 356781369 447621778 91669351 407067266 256457931 863385922 562051027 942000911 993909224 996089161 450579858 811556934 992111243 996054427 17472949 725712641 90123548 453418153 280967353 762687049 925182245 983588224 133548175 775420409 15414869 964437136 522025633 909922520 407237864 987942659 200998323 422175919 298033730 664911923 197126528 667416161 677765234 756053473 429974741 829809863 462875331 782324367 708705165 900082844 244361579 579719160 901736655 989038009 888699164 947376146 282127752 524893296 824344633 828157075 759233376 818615246 206455725 304363292 853955835 903138754 904012010 979415429 538755595 927097407 236869285 994947801 576819409 634285026 395597857 415879944 271726117 350843948 631773211 941719393 100480691 179132811 603740533 819355943 621856642 722407592 342640359 935541307 742483226 842363313 729208342 802639863 491022122 985403688 990166502 992373888 624291348 899192338 333033469 605303921 194316847 800320200 628206404 838316782 816409979 850618315 667864803 707549692 200450010 408221091 491290613 602948959 322018149 392816390 733054285 937207824 653996426 838242477 853884421 862671945 281299769 438542275 879241355 951590955 67763781 509527370 20498538 397189750 852406574 978865165 368661996 937376041 973324478 996214261 966154066 995282167 785276343 949158328 838836125 882622288 319111979 919676297 442499364 795285447 704079303 973296317 610075505 911537054 466963116 769774550 595067598 877501132 979351951 995200718 216396172 577860984 559643964 964205040 615131866 843455971 506734254 659836428 587583442 691444821 848860036 969427151 221253477 316044833 634796544 739840500 730431960 843773249 498000692 952978489 773472074 792325513 445128126 552554881 907933720 992354948 158862242 615030913 806074542 881855706 692117007 748680867 835537894 902982511 980461404 986924264 960423499 996407251 650184527 857532422 962025471 988346243 503846537 916586581 110259768 551645815 675637725 960558823 104617680 532301351 702554370 718620362 34306574 56423322 882393105 953891551 806419088 989591340 186115651 605864319 420717509 783147276 865204592 929594409 327854390 874750398 722626750 725123524 555764732 751862914 929615216 979782516 392774787 967331322 432039250 543707957 415917606 694207694 14078058 668982368 653735843 793167865 624998641 697575838 803883095 993630739 63223293 786841591 665449762 843414412 556883000 725051080 949325239 973525399 125353090 474071555 213001665 340876943 473644012 565766611 815207175 935635596 520594143 527671162 888523933 953679287 101895168 926940917 393160889 751991973 736907839 953602057 10592284 952341421 131701468 552741000 875997945 966877724 954044729 982948493 870093994 989312764 873717693 902244645 881630995 958116060 646940739 934703370 885138396 948637247 606911888 705722418 499231195 577230439 104015866 132601731 819210288 898203657 551477023 933450392 336084826 996481693 402976410 589432741 879445153 954194027 320543996 853818780 30822835 493916247 979773473 985172237 478855601 562956194 170735798 364254046 60313177 418212614 747226668 816610036 844885161 870314818 402378257 517681562 375311962 967231257 623825914 940221746 830096980 830339642 880422018 884668234 145452527 163310498 185901417 968002816 11084286 355786922 995455780 999750282 273926123 927526241 383765459 843772677 113443957 872183726 466351266 677273321 210875580 743425489 423974766 469957800 63618442 466462979 634473736 776039320 798267846 964483518 606176398 692166333 997773247 999000405 214334630 245608124 889255799 926949672 760316975 947776966 81907900 363664377 311927525 776604051 453700767 933599368 119635889 931346705 509528313 715748686 286822392 833507166 638908732 725192148 785455257 863810907 17821662 871662149 694229622 835623947 468939089 798289929 832149514 985923624 185676874 578959397 220537621 935875878 67121535 260758930 678885686 697239742 449083383 872610136 566492108 919278983 294748563 502926991 295117334 711770632 567230848 895119657 47975702 397814264 579650002 995689849 37426797 457181153 645029049 891698427 767014520 952428983 580144604 945431280 697595376 754314504 661032812 890437445 14069003 304328382 107508504 409862599 621778049 780851011 878070367 929868908 445523635 674106944 343666313 963372784 672313458 725939250 719571230 901569574 350712782 764426694 913279609 993086125 881790833 940996735 617492289 849588318 76464683 660901415 131933570 769839027 496366151 625762554 180154561 989143299 882507303 983230606 809258010 854197166 210074033 659936007 295122157 623642170 37797455 968975656 678284606 811088284 8409393 208399403 352790769 795259022 922205955 977914515 108563076 262526110 875659272 922084575 133970462 848205190 983184970 984256075 650149677 924692920 832696313 870544283 803387899 969574058 231570616 929219017 136760213 524106608 556951270 730900193 412256992 439646510 644049426 846546292 83549348 718510026 250227477 250933214 521946860 529734030 782126593 922187598 600197686 839641481 837426550 911439511 386741693 995588742 813994132 879909174 426893566 821666229 856511559 974756599 224016251 622695734 655363521 837294685 822381327 833982259 92972808 376945953 605121743 724270593 767718330 829581214 174204681 677868168 602970483 751245909 219435015 391427823 220470102 411896326 701521963 809827632 129701623 570390988 744305810 836403567 768237800 897189406 556079979 889724222 925413927 928408906 335185769 617246295 620520540 958275054 176448830 586736153 962687179 993897157 465236594 661968304 282330881 424603045 416251377 422040060 222619900 652210348 247366604 672915913 172824655 458065950 558883832 807994516 46020527 199554941 565688219 837833469 228402247 801470800 531586002 882808221 527741704 982512509 254116699 548869150 53252924 276129116 324693944 923856947 853835700 858583687 265293747 632299359 827493160 857886962 438137354 451315613 493534148 935629867 472917639 857536829 965335597 971835235 388614616 741891718 222118328 811872434 715365638 765346680 471777669 817687389 153972808 171862150 544345481 920753570 986241240 999137472 347791722 658629791 158723262 992912999 948996606 970174171 63365393 889360209 113669714 916063657 303360058 541247244 918172755 936092493 736244028 900289501 270830382 273682406 270330221 815519306 741310573 853132449 42273176 857217221 743745756 763006332 663810972 970258142 981269759 984804857 131726463 375939801 839635083 983484991 964216466 980583503 61713607 743364295 968604273 982740103 529232052 736565607 490714091 918886664 302379978 757941217 97670311 382808483 734631827 971493431 195604876 786741974 76295843 687015059 896213283 966893505 178771040 703460349 337233438 677722119 583601924 928199492 964346891 993845490 585610862 978192093 465882926 908943324 762876274 884057607 182157956 614531030 218063946 462898262 947371455 963055478 169925234 699966245 261205898 494202799 123578321 766722971 538773101 694971602 62428486 77254246 357805864 746451515 708347396 731091580 157936305 848219669 892339517 923355195 311337786 379121953 990739053 998579070 885820029 890586661 263599208 866327560 421255628 472676664 109700425 774349952 415070155 603852236 594506216 681312577 71683002 502997341 39356065 176208477 515107606 543114121 440025684 500898759 713789658 874090259 423530746 434935338 869041679 869306234 870870422 890454767 355043768 850426362 149958011 723749749 65424297 847018247 456151877 982206361 327101096 585034792 87214476 215179117 922981658 946614210 43285259 755143828 324089151 612761418 104379092 665286609 189530714 618976371 810252292 861434927 958312679 993337328 570895351 873541341 310992603 751331974 458445273 687044854 716737815 763771789 365680205 468119956 46390063 560538935 849530531 987683284 502814158 878541053 535382776 678010336 738313727 971759402 764891095 946843513 753746945 984243410 37139696 856510300 397439641 413505721 10856689 182202510 647878769 871368341 138888991 768491899 776176102 821554009 595642120 596885307 231749252 994681797 662592665 803426441 332730190 628669842 162010248 784409207 822775880 952995215 257551659 511615088 55291597 731670018 189007993 662155185 407224633 626391621 998588573 999322735 32945144 560889727 222653008 882562209 593088312 908832267 82713529 376222290 879633769 942925606 92497892 116132227 477795662 648439648 983991242 997987575 389440069 659810690 145165919 370504549 210629577 248799667 465684759 919813621 57382982 352333483 503987364 559450553 643190077 938119673 663317201 977646439 708631376 868446561 663784223 905960459 144180949 588916750 576193356 954770703 890761952 993776119 822780609 860531407 509458270 848687515 142933690 682371499 137699905 352120073 334556514 523262175 100032116 428626079 91287465 490223974 210687916 361747940 564380747 762741310 997024224 998410350 816025029 941371481 776307171 868460348 142787815 305001542 292332594 945828836 844206357 946760447 452435828 769592481 485722506 580951611 366138659 634409934 425266805 632929809 938123836 993918069 317085779 976016494 641101220 742378835 401430683 437545341 983097577 989338178 732927812 753188007 173479378 882698947 120688371 730389386 388827645 417464334 149113878 350457574 663988234 949198170 552957523 846095391 35356924 268172504 865055179 913134973 729321193 799221368 224251034 396306149 804965440 967988460 847412337 955708228 370139502 565600117 771488517 963698443 701587973 914927369 258466426 305499486 21381188 332581949 524488393 677829280 395440481 876775712 125576093 925327356 464201357 862403720 325891917 991921492 656597764 861158738 371064203 975457434 551946957 624806469 870364833 915820630 635520649 747187039 459816302 832040270 103871964 886868666 158368092 580899368 712260731 994196582 384406766 736366329 250489024 734935525 734174417 971547905 309519797 973713973 372963100 549744402 984016887 999412547 771289425 979283596 617827003 621035266 879015375 935335030 473359416 766984017 87263951 762902263 373402759 490941975 107141293 590123107 749566116 776135111 659192985 965014242 687417393 994186578 290159639 778047804 343270595 816324280 840621468 997655662 288503765 834565534 841460595 920892849 923754391 947595391 309934323 935824906 52024261 764168671 184964441 480584703 684282852 772633454 125919343 659922291 515942114 997313678 525243086 962060718 231328904 916851685 859909735 952552511 627034307 857785783 145762884 872744880 102905204 962984919 434976700 556960912 184444613 768084490 573407664 737865323 743516165 938540492 919220692 980188511 534969586 676043425 211942069 623497894 848593211 938512962 123504290 740463607 201309639 509721101 966730686 984609604 541386618 951855931 696941152 790685460 606160949 862524073 317801142 649185614 598463684 912121023 500121086 759426977 746973441 967015955 884727816 961182725 104127496 208711187 240740528 934457388 668007779 901030122 363500862 835809093 700037347 996569795 602401381 698661186 544714829 855528483 551596323 746602916 294276853 615551030 94023112 611999127 247847012 988893351 611224700 821605482 168716581 317189399 189948788 377289851 472958250 612778025 839312098 886295516 826685280 860583587 482703825 561747637 32732793 818429380 153536133 418909793 942616050 989007840 935407764 966035147 622467658 801178113 695815171 718048990 949237278 990780549 495936866 705201096 336238487 831465198 876829036 934520681 358922339 721172392 641591318 708088583 639334972 860804355 620010507 752448560 409603080 871228555 811572274 929035078 460776568 554124818 280721921 444662831 831090245 864390572 619089905 767817365 92299224 322967543 359736918 646300499 216191874 756794316 711217478 888050702 865629630 871472657 177970145 364421979 591832126 616637598 819234851 964640279 917475643 933691957 991979693 999023217 935987018 946718484 990791925 993851661 751836487 939567767 397172453 534223938 799961883 959465505 448096989 800048672 582447212 999490011 58264172 867057015 77011702 984252654 625643578 821023232 150495771 970981025 812621409 821490323 376872483 637596415 631811147 889098247 605129967 991900839 813660241 948911170 272745367 891305196 811742624 847918611 887758656 991141372 361283062 996110063 443216933 479808599 925223049 977582430 490715809 763811219 956078316 963774917 118231453 910984179 570892564 852343075 258662291 344615941 664546107 670556583 338520913 856445392 602286297 750900937 632058066 870765242 362485645 628085528 367084711 956383785 32762560 677665597 776627669 877619083 65441026 719967835 154562686 269506464 684724718 924375994 695863747 816771658 936890098 958224733 400946620 558697455 187190892 650029830 526618595 947323936 332905711 555362823 635365294 820899461 887679150 956579177 171827073 584270898 444631044 694271642 698269676 986828880 592136037 821261732 181023463 354632813 626004744 770078429 371113678 927057376 457571102 531881915 864276208 929468674 330925587 771005712 760785986 784973503 859747763 953725227 377292062 480299057 807360087 838661680 695417404 821554069 437970074 853192817 62413721 825994669 411383637 855684267 64251825 248937700 109536102 995377911 153317499 233525897 548472977 979154535 947346262 977504246 454045346 713527100 815072505 890475827 908896050 955488577 676788480 979843798 554207511 576062318 836145765 917266363 789335325 915746537 159218741 664485202 773644150 775968999 625516628 882719535 999048156 999463885 472793672 773475436 140275873 733674015 994978383 998573720 813179738 935143372 88168360 610783555 180913169 610179796 432458656 928993824 297363490 717618284 304858406 813208934 668596326 961983333 859169310 923424643 881075274 982865816 13136725 946625676 731033393 837349445 673045503 836278332 244583645 375682480 150875648 825957227 334978037 451267427 553614114 959633874 289423435 636227041 565041231 671038632 279534816 655498663 110798807 373799425 63969394 937951724 848146284 984761341 507138182 523914926 471798351 946409484 793990219 812841016 573588653 683723181 974183754 991082860 350287822 731185580 547201655 679234487 487273685 497772183 682310606 728104388 162533924 175009427 494172471 597903204 354885557 957513635 88283358 425676551 873561338 913223574 401083266 704144889 782364955 850388452 977255835 984234016 510785758 846023523 933107871 970772270 756369157 895359901 871190294 900948620 709345687 970258785 519140085 609586588 544582010 856127883 781083789 857406661 277633181 624441571 869491460 991836477 380639391 419904625 505688006 695849586 8219398 997286672 302402456 646186979 217015978 401231892 323353475 676027660 623329681 933678489 743356137 858056947 516733999 598243187 334281613 582953195 256201785 595264833 634023792 994905736 102302835 469132803 372452333 539294995 434723409 577953555 158888053 734725911 135498588 322299464 182686471 888650367 343306985 979933512 809331787 828426854 553741395 775751982 919922537 981730439 448492655 678862876 913636424 983712060 834914048 952302772 118877786 451998880 669262166 786862806 470218281 737597554 541734871 578130900 87136526 257297253 618518242 680027390 710808386 757056733 418363253 723184504 12094670 514702392 683173370 794755838 966849334 994567504 674549159 950375523 404560975 434697672 597621046 770778685 798711476 813221608 396060469 868195657 561977091 953914942 619921542 873238189 488862101 875673359 807958099 916488051 285876627 583159047 281219768 478295333 848217713 890866209 918684599 974568821 650363537 807537039 875976944 902385776 258858494 669949815 840543689 962865311 496827458 852444694 316235165 397573840 203047307 596866807 161798704 651854319 957159821 978738129 609462073 965907888 460076926 884596378 364489506 503922782 452545779 543466248 554418790 660576651 106347727 939398224 824578061 866741803 116041590 154282960 917201907 987797743 15632391 108366626 148254591 939668905 882392735 953807862 601077800 731671212 309393372 550378868 256684689 501432254 388879455 941152144 840469988 872579135 979243441 999415814 824259476 857520150 898013350 975799127 971036025 989900341 301785832 835661114 144588225 756956249 416289790 735178395 879669227 912126043 29920141 593001420 488647406 991637371 178238195 795749026 334521439 366594674 972292171 994914679 323092879 704112809 900784947 984075563 693284933 806902171 269570243 335179585 119110298 837167193 83291059 686602318 235701123 759907225 1732131 867192172 349459944 747366488 598719133 660218432 404225532 658397782 793439442 854880104 789256094 851895311 505663577 562500089 179745283 434026271 350304699 728738176 466469390 615124069 197491585 846438977 72921247 328226999 925265714 992286650 1881525 567232124 640526094 710625672 265127069 368037032 268275256 672507323 156025747 956579248 333247442 738365570 362211391 582809949 825897864 835497526 73108015 271633748 309013071 683736010 209321745 870607751 561907341 910864705 87564605 313665175 653921419 836255718 550352496 700420476 599396004 608291671 406959506 939280607 515057427 711453617 447360019 709682420 958378153 985346509 110251125 843862188 267377414 777605571 415755082 689469637 526174415 780057868 991816049 992369423 718852119 965479147 633972267 708645459 613626661 942490678 197311577 666848882 551995254 653730386 212540041 819533603 860540646 947403899 361656333 931096002 695154310 813544369 940403938 972639128 744924594 927982735 550570777 724116571 992413736 995236872 805580435 901437957 247920412 967092024 28646576 723734102 898691287 911403294 875317907 878901521 307023058 494995995 690172239 838378003 806757274 917173265 459958977 544877164 968716837 989429398 942800143 995505875 427782256 722293150 37036783 333490104 422355677 764577559 512337813 940657393 642872969 690085323 474243215 749731855 927547715 984636206 421619348 800543809 591670333 815646758 337331052 482819920 62398323 846046795 823430925 947965032 681367006 694672819 841604437 978947375 897492655 929598339 352942455 665571759 690568291 735622607 290022334 899021041 129331834 849428582 352891178 985343696 974685548 986041486 223222524 306099379 912364407 979317273 459578439 671641737 619631563 635390731 776978251 784924876 205583839 713858241 150955904 833163455 311338808 399596046 769655864 774357951 539286264 678370029 46673332 678287795 600748316 610382807 86109256 892108376 230962857 420058410 725836302 776953942 708009931 737160551 614638720 799927929 71338105 148967977 734818744 787961178 764114214 824508231 814333786 979937117 170381500 997668891 654392960 730188673 55505427 381416565 329749420 739089695 812475389 935089227 400585008 806704013 76786053 881585135 558577896 962157489 98356412 499148787 323660095 493338513 614836890 798756720 512716359 746115028 470499669 746402132 979549240 990079828 837252055 977001476 183642594 917082920 743149748 836157570 385696801 689028235 345111502 774373755 817547944 955330186 562715864 994840944 395532529 562215261 372817548 708470658 213676972 627458885 470461977 711359998 565739230 800589583 920294241 921512734 585591539 998881044 54527831 632458637 960795505 972233668 621338660 683910536 861508965 893629471 2467178 299059629 273890686 890138014 136041816 342902870 527736832 987579697 815381913 863090841 157185598 850740580 190841997 251897345 410445543 498769870 281171109 294295666 112718602 181118881 778331253 877117607 849146076 931436108 831265243 998782246 177220532 197459121 840247127 892328817 537673594 795884357 225814623 996565956 638590177 918669330 356647216 505572824 211343741 951962747 272836320 420608495 211032862 979458792 736436907 779168586 878456237 952954534 555413037 579769393 244842694 907538619 11078772 269218873 517556902 772460923 383656943 434031482 912780675 932607450 493046179 493185393 993133701 995405415 241852103 861157811 891939505 937869483 962572246 979877786 591596568 754676229 838145801 963776546 401335893 966537095 995984735 996272937 744276094 968956636 366614316 424466103 963027650 968712936 776853125 794032587 49707647 61279247 21372536 809103023 876302164 931271155 72236710 261221559 602474793 999286016 783521218 937717839 732385124 876023320 802580183 896949161 450676744 480482559 467900759 546423859 686304884 768620605 333462481 873624728 156847681 490353789 727821884 833524361 341122399 953518779 646322866 863163380 879040729 924950543 736385440 799859517 850080648 923485672 839955789 932796895 57996524 375562616 143543047 268548078 305520440 768604329 799737633 928075200 879889645 931502702 192113268 300504536 151292496 817579791 636742290 658747790 392388095 570810683 295969488 370111026 479997999 524838449 309909940 588259379 229483008 971936799 790326468 982328923 3620713 246771082 641096263 778813360 147825911 387348341 853751981 875922148 934060429 954062450 528466742 614059190 971615963 973766645 789140998 950331281 320790789 835184077 675670933 996001049 163420367 344237383 609116640 895165674 646565342 826637012 594932747 865719889 755570253 827748869 747607504 996365983 99515728 178145718 553829590 819344720 986161662 987663782 87006714 637557238 728843104 887204798 46813063 145335159 614148269 993577812 914279113 914446229 132920729 246531893 897402512 898960212 130587962 460110008 481534956 714887280 542328824 820622171 659518690 662225707 482381161 615977876 309610304 919974628 831783009 993550910 813387566 915504881 245967556 359315603 168255495 929628445 74409376 592367769 579576926 626289443 879745886 944364838 701736329 818748677 994064359 994071793 100573040 118399940 413733037 574492964 431340830 787508131 228007544 405420977 484967235 564214492 281772738 797770683 96849454 854704396 915499492 950278802 538410540 928758631 871070905 911202538 661010335 832547014 790701223 830603789 958287301 981086198 86259600 558412083 416238099 710682870 23815764 793556795 151601721 583698675 390472433 611251299 865444063 875140255 78631862 222807685 653313108 900515112 609663581 620998464 512339281 527819476 137195451 297767425 252768022 457692039 411550271 585626370 204875641 540738100 422549714 945875165 775423450 840459853 61610290 970367797 373645518 824832798 180347347 936476338 654973840 735881051 767849704 925106286 515999041 867416891 264642876 843757187 23844466 427148786 342227051 349874767 590538308 707899392 80789296 414823781 980754912 997638629 512494916 779486366 64915608 170294601 610112890 857311740 927327870 997085994 865517018 996722398 805700095 949853130 881322440 895485399 745282698 841081228 110396807 830737972 920979383 928241704 519704827 633686105 672219502 890212146 526640382 635285795 654736413 831983469 654910725 734870610 946480521 967584448 292441708 440325376 438671538 578891226 182283833 910859754 645195153 708399618 935038644 978684154 59265266 964277903 368526958 488464381 240082983 375566884 672284735 877530398 643835036 904981524 16202761 182343613 959020107 978836456 503780747 618498288 126293312 243889940 122543349 126608377 273251060 891996038 448117043 972618304 762339928 818555811 27566730 964765351 787908166 838818054 687297686 973263146 997570591 999997650 810283304 957306584 470063901 861759905 83433706 182627537 730793083 896274413 348455517 432845313 629675036 685595690 160896591 216676265 295451921 358063125 288011735 900452668 319546255 954880329 128153357 396042472 264913490 347257947 787140497 925066836 215344417 305405341 624517328 762947923 757262887 788649725 995246668 999832256 326020806 504490430 203756151 266323102 126306438 655220215 513799650 781002250 176865794 863516553 379096446 786818092 108998120 501373638 892318903 932690091 254306912 801470100 766662243 976452136 243924302 296674987 308286843 592223139 351555419 473828563 940007745 955807435 212823322 540609776 847118769 940699225 723153510 944609388 135880956 444212653 80838817 909961805 680923319 992486539 421831692 608206262 909641465 990570367 873699389 983255779 412780134 514229406 786823527 880415215 565692576 735199226 767653261 818383465 627959211 942586774 284088143 980385302 736954815 903697139 997860096 999817899 626382425 944806800 151999488 754259419 383691215 436952547 340833221 395133141 925828094 970048018 601537586 930114746 168961263 716644396 213609334 580231882 78350835 773596414 714823118 864684201 661578372 938836015 241293437 544726107 677615183 777443689 457791284 962812117 777902620 931795734 518265788 603138634 135066100 541387067 717691686 720532854 320344751 320770608 968880491 997919525 733951436 922512148 354676440 818558553 323351471 585686795 299305996 409021314 176249350 660046772 940894540 983598277 981062362 989387327 557597118 566401605 606363410 904208246 204269678 716553233 112254657 371327811 857852260 871558275 50239618 977419119 936800574 998201500 807112081 815228743 556167766 998412524 298826043 992832646 813635504 939843668 521799199 988826734 829451801 969354342 551959300 872353978 453278489 771596750 425049624 603967424 27016161 924843635 620003744 847770815 771855575 979433507 751790923 927407559 504470531 832868234 420226789 709582547 638419328 645347857 719654012 926855539 997522127 998888326 711727345 900473775 934457735 975551566 633432210 918582728 427122759 441637202 864860919 998980077 771500331 878752917 93321919 873411902 753404521 908525233 510376233 701521157 476928962 822169147 540501523 592846160 4289074 525155647 608235457 869682123 920519034 923317758 693402921 695649667 248626686 440385180 691360588 980974277 399984478 640818623 963334975 966048687 174103087 184995630 922505329 923498826 673893669 979737280 29152410 766091574 382135839 722655117 489537276 694581489 210586477 848179538 482018434 765424791 165514159 920068830 135414881 238562911 583914509 837410602 764596122 934802309 816348209 849330340 987646748 994823987 471539500 914982026 404478349 796744952 157454561 587123402 403518267 475921312 573288516 729110946 360981274 411373707 42570613 645831643 35693558 381262626 360508576 705542379 216280273 765001560 241366549 795184109 469212403 771539604 668851888 980431308 347428903 435330651 427680261 580149128 873193121 904857999 830245550 988730383 3896674 987098989 860280679 946044936 971191128 978922061 900807369 910517385 212058622 887689310 871391619 917950023 467565679 914466446 350179161 710511590 956397129 977654654 143649554 162134631 922364966 947510371 878415142 982099775 921433941 990754829 829572095 949805477 356311471 444458368 762601737 935644505 511665884 934371792 44913774 995292440 142884203 881125694 280257305 435105132 716962519 893197881 962179030 992803825 7960402 853100753 464073177 859723271 798908834 826456017 235649962 390736845 892960476 955279299 468327952 805120159 38832318 667327092 558177409 801953595 676651722 689800222 865901696 969813405 541444095 567753633 562753421 827916210 440433222 521545762 348262939 998334858 293490977 799131665 592979034 976282224 369440105 880492789 81657726 237381461 298393464 878911389 939100889 989826029 672497152 966695409 560545167 999098292 350150640 858410272 181584262 658168407 550433469 909370836 805830330 956324809 92676858 452401169 841761182 857265534 825863713 841127885 695123165 940496633 846541831 998602325 700237179 721555666 130575232 479004988 792942043 876310750 166577847 570776360 524851498 723382567 302057402 818233009 522925368 786980858 389822847 429375525 434571318 870322386 577140993 705006801 146009235 879750186 609530944 614386925 119599333 926262312 893390756 930260281 659577399 910886398 661996939 776950601 83205286 216054730 296138327 644319191 739254812 941733505 785719360 944899718 407177121 767367813 506044862 663042774 660145793 945879246 854934102 870081743 68579619 956962819 310798217 612740009 263407213 283308702 158235948 376681930 581405921 723337934 342972275 740946793 598953880 652013402 739758655 781646423 582298256 678904171 680562587 947981406 327654127 943852050 854941602 918540306 182822892 810589504 831065686 887439029 809648792 876427757 964767961 978453498 391198265 986800684 825728292 941723171 778318401 825188671 262645073 543881568 393281917 817577205 811441312 928771644 70984893 397468152 882549771 926018657 824954551 917726908 4930155 858596331 463584238 630465076 30687604 858558729 301478087 830820847 548426754 923705628 113280839 397219969 772218191 776956541 472905597 830410239 468922578 985742050 24684651 192222839 124580988 408896004 185591548 227044701 800979063 929102546 159052138 622129287 267847696 362217269 869752268 940466978 485680571 792885930 732482068 807667710 117685459 567454524 658085464 792116063 656827781 657672987 781500298 904466551 690169907 972907920 215333808 491005974 524230476 541498274 384850679 834211402 845105513 947226979 591317677 964352581 653762103 874836174 725142307 739094349 949191457 957885364 750601015 803550832 495501201 885455235 783263598 891947434 738848770 902989951 604918560 689742128 378818281 417057983 373091020 387771092 756376858 835880863 604718520 859037824 272811396 920275979 185251125 658614636 430745648 897381884 746115843 983407371 767526961 809197867 430196319 714818915 695885789 827569751 823134814 969133570 822392724 910376187 540272629 700318902 619349262 969263294 258939193 831590556 204397277 895670533 959102869 975780197 467368575 680772450 889159224 916635830 539918596 865705898 817959033 836452649 105009969 193072615 473443026 736835100 865618823 874441862 154495987 539574655 730958889 966476819 895366840 971123955 383072310 483053380 377184855 401345977 488171160 992678028 995311122 998597703 983556755 985701156 808904909 879292460 799918930 905529756 441515719 519746445 123859319 309377421 534700558 559749353 713931484 771303566 200776414 847562367 938361995 990946192 439913487 981556776 488179114 898371578 806928001 820247038 658663884 895228617 254164825 359293910 343693263 507708576 231763184 461615829 954410782 990259370 844310941 903366429 760356280 989679363 970493409 999759616 532529542 749798967 202340896 614285553 116484691 385537977 250407577 649964550 370767317 913712342 178016143 868272513 499898615 594183798 875538381 913061693 149231399 596507817 898087614 945236457 354442847 818474831 22876824 641810196 261645510 929287107 421940575 475067246 176472220 946222498 769726947 800318796 578281079 922974499 739048603 877059023 125693689 326654474 107528838 132890890 437452711 963244645 686402356 972259913 573156006 669774493 353496133 686508786 821771186 847381128 285869701 519841257 867166038 998954813 548470655 615036818 781568557 860418848 495331376 861330433 691970598 924634095 253015035 583917855 344471602 426786940 239338354 956402324 68653805 348831177 621832260 950656974 331063229 409571433 759135048 884702468 143916149 368106064 973247188 977085764 591269487 943107006 289312297 956913999 125714179 790659602 980986147 996937322 997071051 998517914 541186502 774650535 688889490 895855768 321482381 886664849 579239778 912923145 415184727 719751010 993214037 995531892 104563017 144070873 88631501 176678530 76518546 547264685 531049494 785317401 586046828 798994773 350614291 408919577 783543848 856991338 593932526 828314113 558745907 708676048 344654907 773789626 241402012 812644553 17596067 970090557 187895674 722268322 499894993 702516803 634969501 698148111 706086388 902816461 525855514 616826485 760696172 786916498 741821849 753170475 550568356 561617402 576606784 669959637 724127644 937631554 395263868 668338761 960582015 963092475 834304210 999181638 274484870 685321755 237689345 791231550 867307622 922493562 152815442 916650829 470841906 841632120 566811883 981584205 9439740 501085750 998493528 999485251 759035085 973279870 227776550 247086587 212366287 866263256 837454391 972673331 664984417 866616164 632404667 730849879 738169337 826843003 136606198 921680475 15592900 878167537 679611766 715858429 598835045 786140950 966538338 967694926 364467467 698299111 158649562 565553571 248138086 979899438 372325490 742748828 155396328 443421454 730695495 951775180 500317101 803801636 601500800 784375848 926648796 989483086 171565261 769691627 337146882 437893335 784070740 999962269 320114053 451544941 335985914 814305472 330206783 612519222 141064506 299138959 194833822 975422862 700276764 772541386 43479547 107953307 645859940 819998255 528188024 889929914 854844562 927067086 314043203 469096273 495156376 613242891 455946372 605263632 901225023 996283422 601587237 815925790 266514186 770222258 679366304 934514219 809582314 928210076 725754214 912405629 116454591 969304519 459867857 631251388 599840625 635129363 90923096 629969280 478589226 608071119 305676396 569087247 632716609 863143605 923674872 998401447 674053271 864652762 454112059 777651410 384537851 701062607 964393061 988577497 216222803 304444043 7904696 975495341 822419449 944970594 839938361 988177528 344903869 681102832 155130715 660104698 710166559 821307941 523823006 669513272 938275965 969993530 377280525 862265150 957481653 974347258 792355248 899535894 413774994 557831521 586443703 942248939 439639295 497322946 246035978 471487586 807799863 835821301 353021987 870208493 383515710 454048108 454605001 695248014 354954803 580969432 987299244 995444335 801004390 872268188 631558620 849021678 987807612 987809520 485969080 578463736 589785008 742250766 751691759 960995304 886433790 929493470 164148789 639570289 859653555 981243627 19539288 994810960 277574949 449678543 373782263 697364365 196912745 932739134 817481323 939747433 227014610 598902736 859419450 904595680 846013858 890360982 738609245 842422685 797915237 908315833 10089521 824487366 874957727 916897412 476292950 888552960 751109743 994779974 753201863 802873265 266739063 641460070 902034294 934111012 38672564 667545438 984300150 995979689 411053688 819083279 563874921 889872209 883228943 910949358 378360509 908468593 133753148 428476106 169665972 408520236 529350020 622385379 101005445 327463521 368939388 950495201 737484936 812662473 703272869 936508576 21068900 149157442 767802207 852092331 512895003 973568425 180466578 515702055 710587597 969975082 892455635 950984373 658140492 989957022 805524388 925300681 215251662 371298731 293530006 853903166 639687525 648441275 975170941 985174402 580388923 973231389 965539520 991014949 828015817 868949070 274844792 515993806 749314909 922971527 758932071 847359801 777774049 961271328 138797496 658779786 488177194 768583654 983724883 997380794 657097990 965585107 3729766 6267697 8893715 640134702 519253394 766327072 962561424 982655067 809587036 846169161 719194388 772924178 491777390 516996189 358211761 433453931 127518258 687744761 52984404 921512654 757885954 934399821 915440887 942830302 767612258 885887910 878826375 964604198 823940947 851610913 964222942 999743725 992873565 996823643 3409032 614128089 856497074 980688502 405990514 952077584 98391994 381002584 65362629 752721310 970087425 983223536 883554307 893635558 877071275 933019084 937100545 954509777 899725572 993761151 767315079 861068873 261412771 485001850 812256000 868239809 831152287 833544338 751583972 981811464 219514111 355756170 37909349 411140264 998925768 999863410 992764417 993888553 299740734 398512596 70333560 312284797 100827301 108821170 952949753 992431793 308643542 713438420 149620006 541253941 289413807 542479501 12574794 205487612 495654931 607521267 319292767 533791638 499597955 620244496 29893327 462249871 431308837 801052416 899966349 906685237 624086266 864934349 422398009 723168992 87543398 167169685 414282535 585101877 718393348 841631390 994212788 999510509 710438402 778346884 249217040 331684831 390767099 895652628 849214066 914368851 730169036 844564101 550316121 866764016 333442451 570565999 832563419 835095458 270242116 624952249 617477177 776667166 494724406 929839372 550482045 758635941 754132011 779748975 885854537 919326445 234128104 436235131 974143256 995172713 817202790 844358737 670786712 936672467 524517351 981723889 420434605 606784991 962525008 977148513 998118657 999842815 292207182 769450575 684819717 702205865 277430830 720339228 919971518 944712582 153515238 685459255 102710304 685084765 779505452 789191973 78501927 789141325 42367370 743571746 293488531 308933442 499129985 681738129 188837041 244580158 801159356 801866508 892864275 969566917 806965873 838888371 294563672 864499587 89707749 847773694 384037923 415588300 857221132 920556923 919101832 929772575 184871399 661668166 545257365 693389484 465943637 468641611 526431225 985353262 821740025 851587182 27864036 432696088 504365625 818574392 56372465 253465802 107832124 439471879 766060160 930124343 469335001 632916877 585651944 861501302 927262363 942039517 269177144 327344137 258948355 962357382 583229130 856678689 874745145 880428107 446515037 511943999 479771295 713892268 978174393 999558557 911061246 986919666 549313462 584151392 228786327 911197355 182649245 934661135 261807332 561694943 313724626 349467532 684412548 874169399 689662 408639952 9721586 183212669 246042822 326624273 756366191 945104682 4183260 580221629 578976803 776273320 483619461 951136202 259353577 296690342 213017158 927654369 8149851 383407333 36249233 308654813 663673649 677872896 493007595 736495761 320551681 567162435 1871790 55616567 610125003 615682171 310432492 361607214 672333902 926207203 700647083 927287838 23185066 486711758 788990862 930493109 14693116 767122833 702940928 936260426 915588489 968167771 941889783 985091872 258353405 711380213 754862683 755302456 945586011 949761961 316168972 793295071 908199708 993546368 323175130 737920277 532417525 540684794 572647894 740871316 55697948 428404240 586510632 989140399 611018404 711564969 894867063 983282345 43005299 834967695 459319051 902710746 519695886 653112113 320229039 662148961 818880781 903030805 885180887 907368657 393019914 526491286 969107929 978138708 211037369 704257944 951749161 974049317 341673851 951332813 645371476 835525227 510583148 996472277 537167760 763339802 396883780 529787985 218870776 353496708 329557214 744271926 290224388 558741293 504939227 844257526 782748242 860720073 249965686 592565643 308009759 766754545 940986630 956267789 782806923 842267193 99943183 602388318 523738015 833132204 208031094 481647244 478811004 968903186 89876214 441585244 427782375 677171695 11481652 477206636 54309468 587159008 914957528 945853069 199883588 402076301 429958824 735855923 830938033 852801267 745767364 938417992 574765048 601999452 676220866 847412075 301164278 899007362 875716979 964096322 433781733 520561341 267484266 506600681 269389617 483665689 94671 755611671 451612088 515539068 920218402 983743926 369169991 568102398 990068849 991196249 305080009 916160361 376065546 570356139 572313659 653902500 354082574 647930158 926413890 996851537 524615664 780518799 346938905 820804277 445979258 737974816 845085314 931280237 553276127 698444179 795109352 842342745 685393262 753560849 54486701 747596300 360156183 372666702 482710352 980502413 868567914 989764210 119746807 126037517 329979691 993648451 709986782 725412656 380850104 843765781 189467086 300695559 563514885 700077623 158489900 272173823 388256199 693742240 440328865 633597532 87778905 262798713 335287615 991745040 97989075 323865576 652030954 866901456 186964961 715711822 106217088 264998148 219367850 591028183 692254639 914499087 671167156 806149175 753750544 801153168 61333001 77682390 601856326 743693104 255815615 629645135 848481675 997578215 914643153 979636777 483604653 597535110 802999768 914782657 996311129 998436841 655309335 856979967 194273616 945612515 192461317 430887843 578755722 594176502 143219754 973883521 541362972 574160556 348035317 644811544 613802370 962346512 58710056 590412713 742719137 936176784 389925188 554575111 74993268 401714870 108167387 225463483 850761226 860880871 311344586 348356201 149942267 954650150 531699198 840990323 525059351 603934585 64895835 229110995 930097439 986344715 653403065 833238114 652213349 671489756 923857594 997359550 374440986 588821213 725833987 805043762 555605275 967577407 772834107 915409838 912660214 971847362 542118064 772963625 740026307 784963398 447580360 958961763 872641793 890325554 219894982 769338248 871633214 898400382 953564963 980263063 349701827 632224831 379811295 867378214 731321300 760615011 123901384 631053961 142979374 916604057 572003970 729617899 625589914 887037669 163799480 715332255 959235447 968068484 571562296 931444044 383985356 775979532 871083482 893441550 491965967 796074604 184071545 532243355 746591669 980581412 305178042 343435191 491897105 498340802 381984666 442351843 570142307 972494992 821673635 992406536 393605903 939565077 534533632 812460320 767783434 899127665 763596419 996980204 34902300 73961368 519834895 682953269 161794449 692303878 244190505 824681445 533624844 596507116 535224820 676744394 974347394 983139577 874305389 918376011 577633497 721246451 241897394 494498785 786825332 831199122 981059601 998157441 195134870 877888174 667733382 876475898 99521957 102642148 791546093 868170733 404390037 817707475 608856130 805574282 929531319 964387660 581138013 880074336 208720293 327543332 87895133 121311113 506868372 724452027 616663315 880575859 260334556 732242172 489635028 899108673 78163443 387094051 839754169 853245111 947996094 958995821 1381635 661404788 41958143 939485065 319931755 782066509 385396398 724674446 550884300 593213127 866592010 941250486 437420513 851408796 909938619 961951588 34345800 424794797 193102860 820340301 261235853 777173827 494944035 872218442 85921339 536221966 318650893 541613225 71197848 742768328 590553428 664663353 400536302 759229094 269168007 499540819 654528716 697398969 464771996 891384079 629190760 753709940 957025511 959727719 660776870 779999000 599623961 754266982 732838521 901254740 922516324 946241656 801131538 935033012 299633918 804822018 7610841 719359927 64701634 105231371 467401895 808072870 413711016 565741390 707686261 851730754 814005647 827804659 889403415 957192578 601795985 802287124 593437456 910681799 357294881 855625889 741582154 756321500 899559894 937810727 960223882 975594108 930135359 951192701 209327474 254643408 10729755 561772875 12541377 14117938 558404812 900168411 965502419 995278881 60354550 261416915 494139844 683258268 247933736 684514620 392673514 675240258 969559609 998220028 875392116 939845968 516675991 825966526 27787774 377462335 916962167 926457659 738670011 787653014 38561656 251849955 31772948 959525905 823877418 994406856 754153623 909378750 665190966 974696761 281911514 729238876 748431300 904526202 149535077 862655263 498605350 884481996 17311966 218268165 629813685 864556143 917842559 987075412 26041743 879032151 944245768 988099249 56383621 859037477 297333296 579599273 494952628 517164172 635378688 791527150 890487938 910787495 906650508 912364741 812882848 841857266 393087197 655339147 772880027 947444205 446499468 655755147 292288451 661245070 67334333 457527031 544539398 923248428 209697896 625553594 187714834 593855109 558395770 984469961 689857741 697987223 744068483 981274762 693229933 888161375 79486294 896921052 673484719 938892421 735022871 895144753 642661793 972573757 626872779 847072639 29810566 893834002 544035361 576028691 704876673 858871332 858703101 885452927 845294830 869203029 706112023 837324188 484056715 879322096 590299453 859002410 104822506 301751259 371253143 813300670 480976270 711058403 383292345 400151652 692292176 741617964 488412363 716691467 160946335 567760142 104371977 204732598 936352510 977077968 702501283 724144600 765902423 770030419 253157822 588834805 433226009 698772826 559428185 980897912 282666260 923866606 592307772 925367757 974243261 992901190 625749098 683922726 973952471 994128632 413451099 634747856 632697563 990268222 562985247 901831570 763340477 810306295 76690143 955899038 630044645 842652100 13594496 891489124 589384862 636358534 917790422 968637975 214691229 846563428 888492331 990947819 173450856 928101895 139249672 241425600 960511250 967882400 301982776 677954934 795913757 800594656 584491684 851205024 423667922 609032673 343727912 714461959 363975059 383995702 810436624 954720067 668644474 886556017 139118695 622318935 655910307 682353635 391823071 727092009 771125176 959610917 367439243 536878796 451814544 848404075 282236878 798436915 353055708 876154193 969350567 970087347 389431583 919829700 829197893 901589156 28764111 304820287 746195855 817899164 200449752 630603351 511027790 765857096 891961410 964555009 291704299 826532191 683273314 802547909 580894397 808326571 797868591 989890731 245385851 534570362 498553144 864681164 45652339 587463879 394510362 804868687 65132905 125398111 778361262 977028386 365599558 946223528 747518459 998658361 823589849 824912701 258983151 653718082 312947886 782549151 309757411 976782012 391327660 479989283 104109626 294870551 154848547 986564081 570113913 849515593 310385785 963430970 893865894 990212782 132532855 257365814 281946120 535277031 944269541 988516588 876020481 982845211 296918404 534862330 527972363 886399283 673542015 729563320 203812775 900140880 44015318 267027226 640931652 875570435 980815543 994606800 667884913 878170520 326999081 485161573 711772332 802717399 24259165 670519160 898048295 941107285 202980033 500312162 171440486 791039695 343053030 618987875 582341553 815129647 602189028 779584664 16657730 938837885 870308224 894998992 935115947 959921280 484835480 956643960 595621723 891854558 862503092 956224482 844106692 938176704 477748833 721182367 552777756 984667513 950183638 977496413 437115145 438462767 253023947 821461631 266948318 825472770 537231485 716202129 94975664 819744904 954557658 983852835 552551632 721615100 580968368 882093014 655167738 859891308 15964614 436743487 285068040 926183474 369017986 990406356 409661964 718882953 627739172 708153435 36751894 372923351 240627070 306972139 229306568 519285833 170728387 779271824 82258150 181076521 759817186 884248415 144815527 555193603 560889526 812515027 855183775 868500217 245763124 524558502 736318470 919709220 267248626 454122282 521393446 904115236 64190891 430814317 85882753 317533771 240010068 362279288 535526058 832771067 686240863 825444988 367101021 903198082 496358697 926434806 547687703 575274391 220418080 399935468 17609499 250970342 694425429 883424821 960795247 998092719 570844151 741154827 991575070 998227971 9277864 398983803 857087507 886262057 290389629 727285013 736819128 800722031 860963970 865817092 59404840 539800300 307560610 375705018 349793139 473659564 355753358 934418491 131317202 421997517 950636542 999420495 903819229 990433300 604174894 855246739 830880375 997342717 990850295 997920212 124883005 824341252 713695684 943666290 627992738 861357019 86458776 618066492 824778999 963282152 659260435 898336655 315149612 959949916 580260970 621055003 792628231 947983761 586346773 877485353 858320205 920076985 446151470 867555933 286187211 513931445 633925231 709040534 631347646 789716233 587776855 782059874 662619098 857797381 109001975 621212929 136913993 782026779 15524605 397066328 321022922 463910776 569452660 680158194 102840506 229420902 840978979 992506275 323945336 823136772 884995210 899488822 353449546 660202818 595306861 816142434 220959411 785710677 707302404 924845448 273948856 563552659 636078408 828202288 149055469 756909616 556677510 815497258 797507031 877014890 246999532 248929270 767006278 989397546 428992946 980499530 390946797 866901552 669237922 687776636 345866743 819772334 111817630 136420780 20553704 902272820 17671658 549786298 315218724 960223350 851297026 943072366 665237261 815071010 829321293 971134966 834273112 943341002 273722489 906745733 437109101 958994798 600285457 881355297 384690682 528994906 599811837 806387720 234433550 569678779 604600417 669261167 722826330 884854029 588138688 686448035 532881625 790426212 852112663 958887399 341552126 930402250 651215458 851157109 565392866 630787578 667303961 977794030 982457606 985655960 215522155 732057179 459127547 728380180 364957844 704629212 906473059 974723158 619348941 897382333 23586570 957537608 205368625 297873208 798866548 896889570 863348557 984937462 83051120 950022374 367587259 727506409 537537705 920890037 439721092 764883465 408686631 725971887 825862154 883998401 497013364 815248024 841018249 898062973 552710496 957765692 924347759 938608192 922318409 952584594 506651945 824853224 569240383 598929196 469359127 537637942 272420882 734537688 693452269 803069734 523414362 597160338 149934215 282385864 881916415 967831360 32888581 916454461 342378316 818143801 528603228 644751226 528959946 588678886 812523949 939241595 267366378 812542005 267500911 352670617 970312176 980077606 706603679 787549436 483892480 694045435 163310508 718958722 619116506 689977049 873840288 883629346 584040459 821825330 482953597 917959925 651324749 707731985 758849075 873806130 582133266 646206518 388059859 580985742 692665901 962912555 137052187 787296282 592270056 607621280 22948276 292906378 665556367 777564501 633274986 674982188 675517319 969112487 20317356 266029312 30306784 616685809 329059913 657492635 795940137 995711079 326046915 432739024 487313016 610928205 988448153 999524856 623491620 645359528 719475600 757810235 258715881 493269488 638146013 945046374 596634784 866232740 732299384 808996663 280906491 394045581 784007388 814376858 867066523 873040195 936714963 970029862 624242949 755646711 655626811 709969686 899453018 965171345 954273472 956643844 10382284 444213523 248237028 955655155 726299612 883344274 563917800 567526190 884261543 940532385 105594729 675438390 481513073 893358090 855939377 938371614 874290503 967566772 237560726 537883914 949826242 959590367 376138444 887197191 176791910 406126637 990273851 994773038 476021030 536437809 500812174 538393810 202896431 909707242 823054828 842596284 814923688 876264350 281495014 851407312 416808013 589060209 670028376 865207074 745357913 964498143 344730919 355790372 493175635 584134095 962630454 963509665 399002211 767428785 863610524 872430907 973179239 986278311 184112249 431100021 162603128 798222275 626939364 769061594 540332407 552931759 88557933 694927198 214770735 596522214 869859154 968529297 932766969 981442031 277450751 468560084 758758703 988363700 1005623 417993723 340491110 954307984 612056854 642715971 755756019 757267476 540718964 621397968 775222445 988323688 987792024 999303459 315635952 908771318 243568309 453061631 792028458 978059805 995823054 998239654 233215046 647897322 54320052 328604577 336028938 563977070 456049122 813238851 967026301 975997768 466551521 544075050 713370577 935362477 736440243 802733887 28528413 158623713 513945211 770132778 91162898 125401789 195106492 319412056 150285120 305417251 793189775 830390473 717435952 902148110 480952121 825360016 493483552 998205796 969384381 994582779 109518390 913936741 281154881 880609265 721418485 855440632 135001832 401975376 817208092 972365806 544121478 618607247 287778975 841751570 470071447 876434400 779160435 911512581 657156525 751870722 80285883 969935768 377142142 646156599 924344326 954672314 831033033 861204640 506442489 620613637 268125662 386938560 353464788 502313364 412153173 768365445 390622160 444837484 572039164 642260039 345782564 693320075 15378999 617562782 301757880 966761009 507489008 786555016 438398137 918117527 255995392 375956652 452944170 608380223 364817440 624675013 738500100 774134072 216136759 974658442 502247032 973501820 978188489 980013205 753094227 816734609 585287618 975182793 614685617 826287104 156588557 730465894 297914722 536964336 675503635 857880168 163064647 346546399 636123404 955575202 159475321 859005291 380477868 960625228 778832778 880712551 780522680 849493236 982985209 996057958 235774621 655658556 608875848 669748469 101123708 162544286 680463787 714780115 59562653 459003802 957499006 980065537 286061560 639586002 349820033 673471772 501391695 923394225 886222080 993243464 9420353 209729199 271516855 570182683 435337252 981780016 954535272 996733428 900580552 975103594 17110436 164223831 57884846 300135425 902134597 999070310 104016507 673302405 467579286 937526296 450001113 585047148 241979580 958369010 159110519 616807083 603936759 733682459 845903499 958984598 455909986 647242072 850285834 996150839 781762673 789311117 835194479 894059588 854013134 994224897 966234823 982481248 469770719 924217911 802594403 811490002 942573696 960783100 42560215 622737506 822783282 924956139 554410189 982174934 125465719 614129697 766986782 786267212 668397177 891292809 41091419 713421948 803429090 926554963 148678625 400311668 965874639 993748974 938101294 978371136 201191955 251162707 530183175 767164227 282977831 364490264 570830492 889614025 238855618 261879211 12543767 431675985 809618463 907221061 471274008 609033996 219679154 520945041 642048139 878109806 428283123 976149055 531840546 685531737 147256755 935392454 714663832 778727992 648301997 787076007 790018136 868336637 233302956 413660518 68557826 280832745 44687336 743004115 603463709 752726710 856191200 962678926 154800838 453451554 83750827 746140424 543200908 828134421 631661033 672301983 579622869 586740367 551126143 676764991 650845344 758249015 135572002 702406090 558844864 763332069 680334609 767283237 62199073 394188497 337834635 796493213 544514022 584749439 424628184 636804093 303202940 864983438 585016084 724648895 767924018 904486395 924024067 943626770 704005785 821865989 700803984 841344157 130191594 768725089 705472395 924323306 294226612 847255112 748153654 863733935 626187865 775580343 311701066 654664051 822361796 953704296 830974076 975323725 6902882 310433295 35856944 928003025 363964003 599403895 441606861 546157758 422598937 614066352 709719362 989299515 526834063 649182491 403179468 504744571 893863054 896744665 499117117 867556724 473661507 967128241 202269470 747568740 634459781 754139339 858444357 994078876 593565679 749852353 959723716 984528326 542460145 561058504 714769636 719006305 170926033 557265212 249813571 791459588 4404557 272201311 550534638 552843780 347259472 451635685 213515217 456762292 406843063 830599562 630397610 730337231 109358296 620524341 239343142 567110337 697569475 982164038 815374132 877010749 891627698 941636257 250927599 730538760 407015474 850634920 175796838 767596437 400450068 694949344 515095234 705372117 398854077 950081477 411413823 944346113 185821809 339594065 993192123 999457857 122544684 813877014 163869956 167266320 452517868 613197472 868336329 981127430 570671530 983877551 380332908 712192386 254389486 568174348 603519770 695503247 593007811 957239432 706632068 942126527 511016629 804942475 695151394 842940966 396220464 709407336 553265244 867234742 504357689 992997756 208729590 663716993 82612518 194916002 30560993 582702454 281627137 422508288 558723090 785025215 950800436 957680531 148195268 451857501 762258679 818468489 724498888 916183657 182309362 444393570 757941233 983615889 340960796 468663871 598995986 650616588 126997885 785204318 511013306 655556552 160655091 197500904 716856945 750871670 533876998 857302024 436234189 487599536 182273372 822362599 584913160 742153024 79932868 613447288 396502143 412525953 42898601 970821869 469953414 934684038 701287182 935700286 491539520 994641919 938578254 953635267 873908590 896158112 868953236 929250615 866767720 956703422 518554843 842935064 337982405 740419953 6258305 134467071 226111316 480197397 768800212 826301315 850646507 966569353 283118425 483460597 610493413 756389767 949888388 972803716 800798809 891836292 125568417 339305822 12437113 143659540 986389104 996331178 230670836 801098812 997028455 997777346 719535430 829377512 509948993 719862337 480882314 796990316 558153926 998262127 578417525 678442952 324097921 562393116 169193158 499012725 305431133 956363995 334026795 761593050 36262172 804069582 160494893 680398379 559393650 618831617 687932460 973983062 240499566 443185723 499440888 913942249 498433363 854767836 157324460 202593256 111242080 652378090 74848031 989079930 212523172 437553254 538666907 596753781 826959811 966575133 720095652 972100448 608443497 797214885 278173955 879391661 169018944 405990515 340543221 635594911 19780809 277466897 314448522 413158377 668630140 816483197 228142907 369120370 645380583 885335153 352390847 690784972 410778458 735624862 906935841 965148765 166468276 804718076 4771422 139017601 726054308 976316122 863328972 996716898 271099794 719777424 869487605 985058258 71851361 181173863 549229324 842673128 849586704 918058089 465000049 557136203 844644329 889472501 588921912 714589126 393650759 851260444 453771809 579226394 431051194 673584021 858316510 989687805 3610951 749633418 352343176 780783735 740681528 857134818 140263743 763576857 861980599 960665075 422419189 689678058 348196537 648899310 632465840 856295813 79804586 793060234 910453880 951711480 539695652 772691206 158125258 323265006 397560397 516679079 553675819 751243874 570285245 715217948 85379736 97674149 455471937 929424277 704977321 838440999 137092664 140080720 150063172 489881604 126817702 586731786 169526929 603004304 256576987 456028348 92958614 273183411 261403896 563461946 57922027 157013571 571222787 967614736 542228431 881745986 595679851 637851830 474983550 512715973 869171426 943539406 915919556 985554335 270937584 285583918 109785119 807663425 424267885 574784720 461694890 822861790 173274040 807134950 729442726 937495794 273691684 607150625 794788946 977774789 978356524 992180626 842908500 960631762 905956912 985171026 313305251 723452053 959805729 998541768 755590955 891366625 457250536 944571626 847870958 859972347 524123299 563592525 149251188 172634936 331582504 979305356 166301200 289720828 183724693 306810109 517764694 733019107 355738303 449006857 385411275 846551152 359596805 379877629 278294269 833432344 757088920 771899935 90152793 97920614 579557734 909800694 545121882 751086540 107194052 212408131 253686227 823573273 242804923 368790964 457247800 464844713 637768263 749924784 308008368 720690798 52678011 723865134 12820523 151263305 951113292 971102858 603288331 989045041 319319 574681937 847360814 879814499 326070554 501481301 401965810 851938915 608371728 707804422 701944698 979889221 413511812 440949615 380825959 667382149 49121481 282798982 538904616 862996970 831505854 989378097 461665984 809949536 342292787 501760587 353851813 768025464 263821049 767699459 936853840 974600826 157120418 596060875 552874480 974792527 340230775 964122878 384140765 622770562 936938734 990952159 41539758 261965656 801082295 936466169 418900621 563015110 395888034 972460538 64977267 502051627 52584714 215378092 288834874 331209783 458179481 626440957 958782691 965557400 469365032 632145339 648932061 692701209 941834008 957606729 877694109 917249825 925191001 989782546 215035622 860134834 988221720 996313617 83113558 295794600 336288084 896067677 683624457 942604146 568353177 589932351 138680703 443188046 9188432 977988890 249832750 307880197 916950965 920164333 896384047 943750553 8448920 265469944 139261124 810680434 981369492 987775392 935635972 957065614 556310794 975305444 259207676 439780865 412065622 926573181 108740700 178598997 117466689 427516201 501659672 555817506 657394117 999286138 402060704 633615982 771511277 802356714 524980350 990483018 455496171 789284994 565440852 946960398 381233067 693246436 765946837 777474230 163117309 710943949 937878337 994712773 608468055 914872319 169047477 885727906 345311914 958129174 433400395 535866045 676928509 717477491 333994216 584579490 921507091 928451636 74536414 118640113 228769438 566027233 599622607 969336511 960714493 965689643 502041427 797231005 509057735 597154503 129763291 228891100 7591378 361990980 512572352 584652141 994179344 994502614 989261996 992305501 346273384 692447895 564665297 669912903 543775998 575272230 853697353 940495456 452938401 893355983 361975620 791322255 110943591 742579884 193091371 642961895 933279445 940487656 185168983 273514843 105129587 383698923 150885142 796535755 224689340 585201849 860336424 992973418 817978585 931469921 806142852 838855879 944383234 957132615 238888280 893921740 898652495 943081882 13289637 275745122 399262532 506445964 742585817 934056314 622650310 830401936 903215917 985037205 730230473 814483665 779684332 965779411 420243106 691824532 195529820 472763800 681957207 757709836 485311742 666701375 41463293 697108036 471264921 794507741 509018716 781724352 226736999 923148360 249245598 597216103 770614856 985219151 630595650 678782374 161920952 959723015 665011870 873581996 203543575 538802683 840666888 881284687 236897557 946547225 654411920 844183818 657869553 749533542 322074487 965522969 771546422 901269868 392084560 649102483 88263564 773598276 404441486 796330956 2431276 978266057 858568445 969745751 885916601 913684492 601721327 869362910 518818759 772374476 881206654 972122275 818137100 874806888 884763033 963501503 830381247 905454228 560775471 665031100 304379118 766133906 24794708 552385668 415497231 747512752 192384688 957708970 677592962 726952832 652383522 661670252 709044282 714865492 557582985 924033695 347483910 621573064 442270469 528505036 81798814 240086823 528647817 888757649 402267918 479091409 35623550 480107737 282628993 297934885 601456134 798929071 739600558 938484081 514172272 536876259 875307660 976168912 384957353 816884042 390055230 561103942 359002960 420320049 308563667 913282767 208719544 312875778 356303542 675665585 555229474 594960718 58033116 538017631 543349223 566488049 372085152 826149580 714754130 985814311 839275000 897521306 985810900 990406961 940317463 968753831 690151293 831045049 617336879 923997315 855435330 945738697 360087215 811134386 494100601 596789844 199432111 310369236 661372007 889601268 344428916 863488651 667239862 985954898 206852167 921364506 42791208 81963997 469570199 780466325 569931289 603959471 964827279 970270554 140706309 205053971 792678695 953455848 231832734 569173878 205664172 671719138 823058754 857617715 341018614 469878435 387688384 726822128 186510105 247224845 138738311 158410178 928781988 958980856 252597685 925028581 324475149 908273200 118431593 629059175 52816796 340501756 601412562 679668104 251277530 509795868 238011848 400025342 291036377 827881934 619790943 971831946 150020584 252025388 714989565 912449081 829005036 991673107 55105206 68220889 551107633 993803638 44222389 917314576 65719880 776014406 443375436 602464514 562154526 710454806 155945168 714137311 218723556 695395348 958965222 985641054 30094676 43313673 318301442 401307390 676318855 923134778 891797574 965106657 907936891 911346783 787758132 944622329 520989053 589245515 854278790 946688014 619665679 962356046 504036454 573330114 768587169 918782185 119690266 489815069 854749915 991437090 702474803 780184738 593382295 660260436 835113560 937383137 290833807 324153824 951354380 991945528 369718360 966592691 374348304 696153255 526216641 693361706 915085881 998402693 725433238 785459203 126829205 757958503 741497853 900526872 7447180 869796075 639088410 825382176 638277931 650452298 371686822 629321179 754598410 788695875 156892405 852120647 254596913 536714171 735494936 783200416 992197150 997373602 747999077 784677617 547159141 873347514 269636658 968337414 20014587 744909541 213536485 831697883 50803929 889991017 625120298 943107834 435596121 860717557 149896776 434864002 437490313 467444660 649726337 699979078 962381157 998090072 830770809 949491485 389801060 523889225 962035974 977186614 962590847 971030981 189875684 281138245 832565774 989491975 279800356 782416140 13363941 814966248 440461606 943016487 58289898 127487896 318114574 358297989 234272564 717566622 471502902 507626386 344492628 620452218 587945231 901195742 417928755 899923894 843209506 961450047 915689921 979583127 153427849 490194949 434663957 889556580 704077458 739562690 850764977 998994560 70519419 288818906 640927154 756600969 678100918 835909054 476170039 988640991 505815242 781894066 664623116 737448088 405453714 575148759 913394329 985136975 557504333 763656122 341648862 638140032 766250583 904652980 810411592 834977384 115461525 477025186 753734682 890641774 671442382 705857855 218975336 834018931 69947740 100611973 566381302 996399712 451100336 772590728 665036282 903475698 749112600 801139344 71343660 125317017 790139569 878788758 6011269 505475420 32056274 897646810 97111570 159579049 514635795 707499746 57815437 153408830 989686946 992269742 924332930 972717422 510778382 963852729 79878403 982435432 991898373 992716871 832276266 931097360 203397586 751294170 777814203 920284600 16954634 622341320 93850822 811663738 948227594 966962865 702919345 973575943 833061580 898289308 336189971 520254974 107129561 884801555 985277343 999980629 951573982 987917834 599793866 970262815 310272673 705233015 662847111 762411204 879535680 882669999 659296100 687941685 514175877 926935186 502985963 948592153 76692607 999564597 877595445 927405517 186812664 963551261 504032384 807564540 547379981 730269506 671308953 756278531 374228867 643617192 369171369 507078330 570166816 657498884 651092900 800528545 369805681 749722230 459812651 991167692 783019184 815749193 52526959 353956826 851681124 899492990 412936014 891233660 302191688 886648248 20230788 856216352 348269708 401063811 453345992 456575312 328548071 817224688 333875655 924239643 956080677 974133425 298102730 570472950 552840719 724906367 852333945 868894797 930309822 956756655 919484020 966925288 437841454 758302108 340603670 867890723 503017672 581802425 250586272 700095926 192137336 960107883 365938548 697074563 732795686 933581102 774933253 915271067 553762653 919482772 186565752 890623120 886508811 925571594 701280772 883901366 219755035 393887945 484504830 768799049 769757987 999370616 289588213 668085939 222511765 267960843 846654104 941347089 727435032 769290406 509888465 888747192 664108783 761409470 33982590 819644629 452740885 810748997 304389244 780542039 463106194 981098329 280135397 605984341 742059632 947211937 384360899 418280517 919313736 986944045 559711078 872749519 622630133 649068706 611946678 724218096 831057307 968343335 485218182 985699439 806157594 964438164 536431219 985910016 618011033 677065081 525427530 928282720 115965007 761324734 312964542 343379666 4432158 33683660 142154696 696149237 115424169 873116734 542690143 546763918 892266432 981036705 877435580 929116130 872371200 959659972 926165535 944087335 922032814 925924343 760908528 913722917 61326669 283907283 860345842 936137044 688350066 964491579 748105420 911730793 680454141 860887810 796527556 942146242 515308834 584072963 724037729 933202712 805300361 909857103 132767675 775560082 52386768 517416181 466748031 844390234 483620908 799889810 898065177 993575780 707574520 743904491 652731445 671651063 309822771 824379504 411801741 510160364 775849586 784576686 259341191 621474178 209602232 620720667 776790095 897068711 490953715 555151748 829936609 986519740 798664186 804402426 767252757 873147972 882514807 921776292 581438847 833071825 429770323 451327599 182575088 514688838 531257148 860822567 863261682 962264547 462690008 881527653 662665103 916246049 738357076 796614066 919899670 923710865 454649190 963900563 884571 837195291 21678973 66260176 494415189 945057973 925728686 984397073 433655946 571642386 880724353 940492021 201036553 907380067 986078628 999982480 245483511 513936646 673758065 878298731 452044215 967811862 859439991 899170158 461714969 912288627 948904327 976323832 911750 894516467 80454014 481855346 29672681 726631937 14157393 84723026 508594125 837587352 196821085 806660757 624507394 854733085 251199983 869621505 674663846 972983087 184793778 411804192 543744237 915657017 471075698 585177422 206174600 483396245 268153251 969626202 844664299 947310791 645771730 714021142 229465987 743375230 174410456 873670311 849620021 879699576 169665213 678770195 253312116 436709536 340523260 405577840 761546212 950557134 962586653 998130967 186474349 365991029 973876371 997931440 756885735 770082272 246650116 878722700 524021634 811357756 657227123 682321046 335376915 578275338 504084322 651566842 867355116 985844504 386487467 760360612 599029955 719457208 150047391 850941977 349822218 510113272 792383731 847229195 20073495 994528795 502537027 578936446 368487750 421981794 36279062 746453453 422467629 653765877 364160774 573201135 931146818 982741789 947005278 957594596 146903990 591369541 820297376 984673119 360136065 948934483 204211887 698331574 816719457 990892315 865943428 948422875 698213545 939782972 915509400 983684045 137884348 886170104 836575227 849850310 566995830 608335979 308998347 348439660 92064836 260922484 710564165 886662627 446460034 809851366 931572834 960979226 22538328 34142444 675600874 931363095 384001249 510646259 849733662 867505936 528700981 828879236 493182070 994763222 53728888 719153705 82155016 602660586 288837038 439043157 952690732 973024231 297959317 734579488 544619063 906833615 719924609 885553837 689764203 789997721 339576171 560799657 558503294 900486948 623996694 817858233 685848543 896144038 507718324 602457619 657923232 769260969 62118052 334458747 382977696 610371799 699715112 700910983 812198297 934703816 573218548 730850140 781012832 833575884 69852305 222242204 958722926 986697948 660094273 707534886 439781435 965309421 251220625 372190165 217072679 464685851 848913612 927615572 244869246 329930251 250101377 628374055 265055139 577575832 277151691 876229084 940718014 969551104 795954881 863384650 594757291 756141886 941109682 971179879 638746938 939699092 959313504 970613219 587859806 647271273 842744110 974522311 865699014 887331267 421125010 912980025 106522556 821117369 131804083 929659431 786450693 839361095 420819988 477091800 47290148 842586227 113656970 735604494 418108338 777306563 95184765 267934287 134602139 923059437 878161023 920608323 424034771 670508849 843459396 861913486 406766144 466306510 223284636 739131109 661836856 851545722 598654094 850529129 975070088 997409950 569268088 936618608 573434796 930587378 453630743 991644865 420251686 900913805 638973225 977547771 969244531 978054217 989802200 996271645 887941864 902134986 212289350 381444330 507641604 803690547 506349248 869112674 88072166 817178361 788659975 968144762 218108845 749703412 85100891 431995255 389989446 840357739 516298507 893611367 346613560 390989144 28918272 483306574 91666691 757545147 707535783 963049410 62880628 375373541 178222157 617257798 154223537 602660863 495878 485028207 330084664 677710778 336494597 667604677 879638180 971147027 99505405 109786739 35721817 862766809 311791226 469029878 983951478 998158643 983051484 987116884 504270234 925208626 522704517 684368124 828186404 991320228 279482576 358274842 107181010 692024486 686026482 855661940 968153938 993879136 789333930 864475252 102805088 486069263 637438456 939370233 501105284 885132566 204157823 994759379 847818739 986791158 517859569 806992247 893969363 918674230 543610364 689666929 829751354 952422299 114315978 994883167 348654368 606062047 971221467 972710888 551476805 636870762 970592283 994692233 589578755 755680943 63297846 159747937 595775509 778616004 509890747 784343485 395261195 463343958 720682555 979417701 188011710 751098492 610639210 971129249 748634956 901598234 94197061 278297044 424982188 898219940 518461843 548581318 38709827 534610474 818488606 939533464 772476078 801376650 178420651 555942688 728811139 806633204 602982680 897259309 135543413 685998404 871611120 874324566 336872776 341983190 135506678 232068841 61557788 497520818 346213899 817285777 970871236 994641835 559100412 786003353 392673697 587855892 471743148 907401383 139192579 839917135 576173914 652897413 686971561 941659739 576288018 991421505 189964100 325495107 790355623 822850716 880632476 914590169 526471635 814250229 329132068 689201248 731259755 935129122 583949793 757293620 809819156 929865995 609857444 761243940 448524406 683190995 622552654 631406229 860907511 932608865 133926515 891178936 421286295 793151096 919305562 974737959 929355116 975922690 960202023 964399518 929225977 979566884 675827179 938064814 343532573 924688297 835072073 996375576 578710904 746270788 478696570 938691280 281569935 810087022 891171301 955832463 502021205 796564683 190955022 210276847 877126561 987525224 408736717 954969228 376951807 475457812 354350341 790697870 907548477 973864764 364636289 539769634 148619418 420693671 968831508 991203128 12989501 462551625 114208954 924244239 780369936 850735101 498387441 657912712 373669641 445563533 169622500 518641224 7019642 76037982 85257646 286074072 429378673 975135278 971015281 984978232 302758156 615070538 264520454 859862271 505008417 980577607 944812654 960583456 7436656 66595782 677559466 969413540 93788151 580922648 568661434 570045696 62950097 278165044 46816081 210231874 112677817 807697717 227746141 957518032 836845367 918468639 183782787 353157360 783197633 897276781 673641381 871143089 441143198 716129053 611012611 649920464 270007246 964288241 643431562 963793185 966487440 993650206 957600790 994877806 696194371 729719620 886875128 907985171 775411017 962497310 960823295 978475351 430009560 710261578 754607183 837161462 865700123 983874617 197474427 288504680 143356242 709243328 119596277 140068285 597148235 780954129 880240518 998468933 387108672 697973642 689023360 832035771 334912141 881443823 98713877 328800109 183418050 670765629 703845130 766682306 58284094 80267580 695418210 763839273 583028506 784382757 858276467 885221080 819981661 852372360 670698386 981398760 559816633 935572432 26821501 365397099 491052094 557859088 232650224 314992776 152989123 243058466 270265001 597689021 297612105 474397172 802174042 877391701 943445513 947135387 415671310 881028426 664050843 945914253 121118646 912678165 791148955 805295237 523465700 760622414 661791449 799627383 138085883 420760967 425895528 896891136 352325066 940915127 499175912 955720850 215839471 423813694 312954719 911824130 721615397 862794221 848198978 967982908 206150732 626239964 559943959 754621508 594317596 750887266 2481889 587536956 700079792 905172804 872436 710484435 105867417 242834527 820698001 871601096 269156129 949647614 833819774 906091080 622463906 789483763 557361672 661024072 101041451 330777433 498634796 929556346 464993936 806711011 432598377 884334363 663805092 686498570 463136429 815862756 254853927 370129556 204122100 704567352 704343589 808715336 532892787 696918155 812381048 848260900 988078461 991113219 25014570 777211276 903180258 936207636 778740025 813434755 680039032 984503528 405277878 660781587 239033196 779118920 554250561 557750671 573215609 586905179 936328369 939824002 759196989 859462170 872635521 915185588 300564622 909518159 314735742 869321777 526407786 532002846 40635916 662712030 20434758 732491692 359652827 554963146 420472350 613085921 258550420 891055038 121340089 337072858 293493433 806935292 173170401 727129701 110924419 608372183 819286408 839510084 386396432 679511430 350043338 904906892 684293609 695760693 619631552 715583571 168224197 629444818 35036512 75627093 517726832 623275248 962888785 989997796 119551691 665229141 897309033 935899168 303336141 462455378 647334427 798268964 770499502 969454110 809531031 932896155 237124121 358929817 757943622 958513680 473196013 497561156 884186124 893135871 722427725 864572155 933086513 945777162 201070244 584477795 415192341 670289993 462182558 907196029 980286534 992598464 421043549 741060285 766806750 891409068 91959920 479807092 800088897 970131381 593901074 706766897 836449846 918943806 326035264 518659280 629506627 697087233 75967613 307818399 834278610 869483379 353247423 402723245 334263591 607336434 453303792 662213234 34180443 149539296 364589755 403321916 478239298 748806862 37294702 525056587 369893168 494404416 40708052 306307401 561448418 770722224 5958498 713404589 164641362 199243733 851295203 868899313 862320298 946318982 3088483 142161453 664726567 989666453 435962517 962749082 499571827 501904132 803761660 845666462 991644252 995046133 772287957 825763432 651322238 913225676 748296373 878789235 838959182 900691224 722400649 964073855 990498709 994081621 610242013 932105590 694888339 902697250 698053141 879198718 767367598 876535217 185263137 703369297 709789193 716735036 358711795 416547707 628315653 666851771 931204496 955251370 99132708 273491643 72718170 900425444 239804153 824733553 277788090 808696880 831024127 981827456 456597007 638804138 63705890 264739766 868682550 905379733 684832240 802328436 551616932 853891741 804190802 836932320 770328386 816516983 928439559 993405819 737658589 973445977 721852945 951388137 920161859 951968683 578030559 683315540 861329685 964496219 301611660 493152181 991042138 999030151 413075759 881468943 753113882 933288317 317090532 874382567 384004447 459997490 415175940 723661785 36289370 413388696 140120775 599222088 123271052 940159240 224424222 808876173 684512481 920204793 994393264 997063173 655524152 768031319 340098372 749387389 644675415 662978020 94979870 923520190 454942987 951136635 517755228 714362095 811177162 876291118 236882578 642361776 263594322 762409332 810429938 934382088 283608788 528689016 475899808 959288756 828287982 955555644 999672175 999699827 742292429 924238715 54267631 546483382 265159056 694088982 585838628 870930628 508631707 664640502 502099825 736170292 468580679 999621584 824276618 969082634 33706282 647544360 402708795 959641520 280730802 663255371 744473819 749609296 626685668 891832581 154189390 594748328 841416206 917751442 867794576 955177045 40689197 543174989 548827683 647098052 419080789 778334496 943545617 954506166 210830564 436083546 258643933 740807897 833031460 970901726 632924926 988290103 897422852 981487696 934465574 951658176 59746738 456130409 849204991 972329899 245880569 264136727 303745124 788174205 66371255 137391430 12452226 980689052 325768741 973587493 234730711 477117675 404946061 944507669 759369016 851961494 958806416 991212844 167128959 273859496 605282851 618489968 376824251 870248804 672634317 741477854 737189253 996913799 405723118 635446701 737261494 836229223 692156655 919583656 521620963 726581579 633568021 811559425 996189715 997256059 905775292 935884925 245145360 952092730 689134655 823948564 91902928 544138194 153419659 363294857 840424635 947731494 331797881 816464566 69600734 503200752 366384383 734836481 536444242 670194377 574609779 715567863 948096153 988825076 467023498 814546600 991349948 994171320 648351582 815199611 586927333 990195201 694635859 883907413 276452574 714920324 487361896 613841108 958304704 960048021 305657593 793414811 312082423 398079459 651798202 882371069 533038814 598342691 968219620 992888941 937455144 974078192 412881638 511314450 65451781 896023206 293026091 504149362 196105382 739694563 530957834 583790328 463473862 488105324 311734477 722411117 550653394 883628988 146380423 824629066 616416230 757412918 84590237 397771767 814844890 860427416 55945241 92291386 216785892 524230952 398584086 673646582 188045560 219523401 463951230 928636942 240728702 318984048 865856702 948901365 23659695 976687791 136111919 170556670 823801832 923204596 394657375 522802436 47460699 435930208 513213206 568754469 612979068 942628114 166534278 619845039 606105524 977058671 781549563 988795364 170319628 502065356 472894373 514459341 511551517 603300549 867306921 885259328 861341845 974127851 634287353 782858082 189155841 363323870 713073729 773851109 331116721 923590453 668717720 682272898 145610589 239403706 755121884 866927073 942478236 978597249 978011124 998446792 539149591 636514340 914118002 931891622 142861165 656302619 35739823 381066071 387708525 791649248 835643935 938959230 80678219 664897735 963442485 999430358 285894188 780853894 250862222 941511476 310566585 721426674 970410692 995369378 653011748 881117960 920876372 957756288 763684289 812677596 254868312 761937081 928670749 947413915 332407464 606160456 822613394 981589295 581113817 983090325 349760225 938364917 493915788 494266550 886068445 914663132 981388135 999827881 117712969 118786099 174011533 453883781 122443844 713404046 936361178 962642257 217427211 999168224 75363194 973648967 872638378 987195503 974808057 994975008 350654442 872719406 323952065 463093792 127774758 743201619 581423046 920722704 834595373 904170635 2090747 167703195 59096358 876223884 860700425 928248529 67267073 573505994 811808975 977261150 101844529 690031653 185664995 783368291 149791545 538573771 837253449 928785045 561215938 640220688 146910788 361314175 483433408 960574446 978013433 998229454 320002293 700450131 996243171 998054640 657370394 742774164 857215673 934350826 462806767 688784544 336941817 973672994 461478780 649612277 46779887 461757457 317142477 523002407 640671131 807544212 835848897 914304459 979326061 990623059 795028839 864895278 413853168 423509130 806667113 826403563 582368700 808601630 606350190 833252771 634231755 975511741 745162683 993637790 738598475 824217406 945111361 950473456 363000205 524954852 331790145 930587820 138842949 981797254 643565069 926024998 800659330 929949891 898134150 992556737 929987125 996730884 132772517 750769941 64852261 671908765 456173348 714630685 808992394 984548487 531926646 896267208 222454534 353043120 177396397 314134878 427605239 872653605 134973748 719844072 66108745 223569277 473356314 947945075 53812135 325265948 716273574 909522650 233391929 685766899 388213088 728485715 326230029 503899973 360196747 845232718 190554986 412981750 432527526 885441793 380809801 524034431 731667071 885822833 671177237 699487561 978795901 990280897 563467385 590965778 285791823 856184185 625792369 796393063 935131212 944516278 407147070 615599136 163253289 203096647 55823280 590029731 843522121 856781060 441254136 811961346 111714309 298458938 687027782 822193122 621690907 841035080 783328799 864494405 562913376 748856172 731847046 810377045 675673397 848348534 981905737 993780758 983460171 996011083 673152368 823968655 497049028 796009142 282880103 548626956 217775809 474954808 53339749 258098196 939632530 987131174 196823776 826571432 178402622 459868521 359443323 669541741 259521997 658008552 585926414 640693076 80904146 589647493 605139423 969479799 979103772 996137314 798255183 899525326 218370472 478546800 139512117 998194143 428641120 509955706 20920168 943795244 2806905 666171177 50147075 997180005 91040412 846730645 984874262 985322849 421574972 455611796 404475476 656690263 729949894 953712147 239406071 717688820 836561276 936747919 676172938 844081082 967160229 991970762 349528173 677184841 944598931 999673660 149763691 896988560 645419196 727893517 143228425 350750953 926000180 960355374 491149501 761998540 510927322 656441569 213206065 989353585 353051526 803055401 823499584 866712880 150470470 258289669 850440950 957181401 941924075 949683339 733398473 742419773 95291942 703740649 406667654 873846790 262303158 387040434 898944253 998291750 827567324 843307791 576420929 885193530 179756021 851905105 83753002 849348733 441749821 465930395 960171229 979243366 255456744 578149678 282720375 766604125 904267781 918039910 895344080 952164777 255516711 399838309 254335355 493622918 785651984 854255849 741846313 811740140 227879235 384227108 665018288 805994560 686281075 703712124 641916040 758078206 647220083 943885676 748019700 770025712 45243067 778839523 448736140 507265609 709143650 757961152 459218570 579762394 943270765 953546861 823727446 967372928 371419834 447146305 180913994 533410654 57988038 100433419 201380616 283365400 822822990 956342557 835519908 912100315 987617327 999714083 58759795 921610667 641206800 774518826 942807714 950632371 350899750 907471443 624505679 986572822 486034163 790623104 502701391 840894302 363802422 577953928 57668752 634323261 306695080 701787975 667975958 986243730 623911815 680879170 886105069 969676166 896681126 896789417 176334166 678537699 747012706 803277926 589699562 656441430 359315202 404925690 25775374 917721829 279867285 715841503 374439743 660643668 645962540 993072322 798638125 934990456 79858170 220660550 251887473 406625794 404659488 508803514 963152759 967541083 64602191 468439943 853032013 985405710 997052109 998950770 11377375 378113546 561604817 760312251 978473857 995898950 916262865 950183757 144382027 907625962 184089601 541948364 583281064 713201631 26131667 837005517 290586128 725627898 974402071 991551022 726994390 756478826 874484620 942558515 701972680 762764615 506064622 948340117 442596203 665960483 529744045 578322607 660006605 762574066 960932765 982062037 278193699 319497323 124381566 414890777 687127403 816693386 279376264 665677173 822478194 888242166 752693275 919683373 349998974 879437132 974798835 975110847 973425608 996817881 483822793 528108820 691127110 958543206 789006900 792829786 182561744 198800020 655655282 692667530 597379844 954370729 921615184 944169379 955383333 982408036 182609120 785898102 523396650 573335599 904176660 998990088 827772643 850179999 29983274 30988171 872289135 976166757 761521083 841587757 413522113 566097710 627088015 806609975 262144799 522681469 152905967 526366679 300055363 949833606 733860569 973102042 832475795 886935798 371325718 795165276 629796157 772805674 212077869 960735689 537506050 850192693 382942929 658178896 430669664 815994974 539159989 597179248 974717659 976255332 283425548 710497944 189224743 678446335 40237401 662945262 753971219 833021390 491717673 986118499 664471439 789870861 456756811 512282355 863678904 979200424 622136009 687361739 617118344 753048309 224034487 454629190 884243534 985934077 149189676 665255755 282432985 387876592 249897331 300486432 310835847 555425636 589604265 921210198 668346101 978367393 861003137 879958874 699425195 814976655 189270784 529539753 893720963 962034911 429210271 466831104 363361227 793337647 241043403 559276261 100614654 242693677 131718292 645339314 853246877 990572805 848426255 882649012 769346113 803676594 860678059 951236811 614213469 826839554 782780669 847382106 749018019 793785881 362710063 490161515 431789455 748939439 352534360 433590298 292818384 411411956 611199994 812344260 367142674 856853964 655608444 747903227 758498596 907667103 32681814 721315979 62475212 428766653 610733917 821293327 950999183 975014559 215616087 561971126 530808091 792392108 892125679 894666339 141102738 557567086 342251552 469535099 395740808 950199325 312618685 951433300 536276152 803854167 406372738 869995420 616151334 803771426 630304238 650942374 613335400 780865341 626074338 928457872 916832918 927578256 24903294 775693112 373000378 913707285 927826066 995026490 648553066 972093969 287012021 673264068 250465406 431493101 520365980 727608102 237057404 293070707 65385567 80776933 582263040 990721183 696816149 916842298 242962483 270265425 4193321 813780256 652634647 683209022 305828478 994723112 573994099 797146507 204256931 724969008 334385588 337952671 728428335 775380763 679915937 987430938 255691742 485804299 620595005 838178439 635298028 840435779 433742260 461092036 368509245 808593749 259071977 290904728 16156597 109877625 576616051 587642606 608559087 782980550 227123843 360412325 5694700 399724785 126891822 793224108 996915016 998641490 342100004 690815534 723409100 727373711 169754890 641704362 772927346 818896358 927554517 978370012 525378316 647434876 417394822 511783988 728280711 817344324 446623077 865784809 359047695 915875698 543183628 743410041 448979619 947199249 632838016 797559724 630161292 882298088 57297652 782147099 345071536 425210128 514150460 684145824 717647915 766346180 616464396 904217250 778372909 792062447 179315305 320091064 815863290 818070990 778071739 867305758 897823984 946594382 658041298 796720370 564023685 973288884 201497599 270913146 123329614 451052349 915126163 965183901 407936684 777925976 6315454 32461119 33530656 730249557 546386046 639144121 999707739 999840624 314316157 829165393 843019330 854255409 158001251 818126397 456285893 587035002 299345339 870415829 663095691 892799171 301097960 820706113 840512514 893525757 947123615 959644934 832613812 869057713 764791079 890017842 108696523 733449368 53516326 248343630 350087095 599866334 445454817 622610594 255222688 588753540 434115837 851694440 764752660 772797670 292151213 732124510 168171820 423995615 49810987 475247043 581318503 777395033 987550040 997598165 577136077 862602764 61360130 943314791 147410719 810519603 189387869 341098672 553200110 884233225 579899959 780156603 409186015 657803209 840732045 953065824 658838120 974510841 372701867 993130616 656885310 729071357 723149936 791063880 466762000 661722354 496056935 772679942 644026933 742393910 586958094 683492518 479952876 771144419 656713599 916699835 17314773 776989209 171498383 376900469 103318684 229130097 728497623 798674628 741931954 859525504 117484501 329922436 133251777 342583739 610183249 732666805 636613990 977445660 219726990 497934206 944009406 995453197 281701655 287726786 337560044 652410147 282837615 725084924 105574492 453334947 3143579 399592116 496869930 606771581 189681829 641287177 926299628 988143769 626654676 695734141 423124033 666765372 875598254 925336183 994306166 997295800 327811425 440308860 468820851 982587915 516629951 969835363 107792139 484661181 628788400 783874847 570097645 697137088 311556804 550637594 786909787 972833010 428312041 720142216 288366953 979684248 495071813 811340274 576377160 638277677 332762532 920507317 161498105 302488840 869880177 907598189 951397218 996556001 751798107 936482984 763663472 978340678 974410559 975750520 650734274 921855137 764363425 816974246 821979647 898088936 58082556 536685119 974616200 978721074 705868193 739891479 505935345 543170408 35660531 538570110 98944764 590670567 37210715 846804884 614762795 763377811 817061573 927716757 695425860 862713851 173156474 739093253 560398900 564278839 276816419 721913128 139405049 659343926 21590174 439285993 717640460 772296347 410470283 932911121 670929169 719255184 135948596 172854211 634378216 675228269 44345703 936434351 842398806 956949358 858965494 942345460 871124854 920759902 809587459 816395991 722446072 834724590 739271689 978171960 578427428 968721048 718238148 849566837 35386391 327653857 658188602 936948261 660133224 786409794 395006311 441465954 105121116 793878724 529574502 960343832 353991609 997141257 492412078 535825208 624677656 896753510 425966113 795230742 675082210 848677558 470860100 965673526 280335201 395645557 347189866 672302144 260691619 755687853 195247187 924827609 784693323 835900529 372435261 735310158 258649471 809492488 690294812 990228627 520750265 692867100 325834016 559371392 530066370 641065563 511109967 516980960 369810656 935551343 999760998 999825130 148385293 226923299 325712837 475080451 948051034 957115544 985623826 998412756 984409134 989666592 242305985 969150652 697488549 995515646 904534687 927308196 448238006 778043906 451389364 520538785 109393185 366242458 94731437 252188979 105808931 773697198 228678089 770587330 945769738 991280501 651268725 723265583 486619137 667994106 920641775 947712210 381393655 971613832 706627400 749603710 198039575 421800159 555771553 861358220 461893982 562995817 127835223 133238592 762882976 866684373 207349610 954581364 599832375 691463477 72314880 632125560 645181183 824053096 40236514 740860789 893173845 967522934 825954958 964233875 24051218 76362981 699077186 968684174 91575914 825868323 605440187 891195513 529673738 539982232 343680541 456423235 592419355 855575218 872384699 930815243 460397311 544871287 820658402 981390303 281464176 552676922 669368550 902800501 232198163 234543197 13689054 619682820 523949788 724411506 376445190 942339590 781014899 920416569 986434835 990603493 721067897 990584593 763262262 916448182 393054503 610823091 830036397 943836359 428737482 528282410 712322183 980266477 17722457 777984241 615348902 800041563 338830145 912881904 269784296 459704204 769631620 873848763 28291456 40181210 57958656 108151991 479918884 937268636 676080327 847536035 526412968 887496657 498843708 864358792 548127528 882215309 718435131 757885027 240562943 905308141 697400419 821727970 108050543 264175732 995708241 999382864 931375374 992770437 922969256 996410961 922054383 966035066 238760523 414550089 177546536 641196530 89025875 122688221 281091927 876298160 62690353 552138789 4206843 760600032 684239695 903380182 374200736 399955036 784607295 914136647 740374077 852175524 592198353 876169922 390978950 753138074 390614195 444828411 430864288 912249259 318885512 986138072 38685114 348372903 367683668 726889078 38550397 919191344 343327139 795615755 194301833 863263984 664844682 758163073 146650198 344062446 842144081 860053055 767808908 844601659 677174476 943825050 367980317 814157039 746682609 991090834 36449215 102008336 718601580 835859734 825971060 882089226 681689762 749372040 86813888 766166064 767676082 862075791 768461929 851934778 758668708 776570465 212438522 867502917 653182833 653797034 612135809 926426271 763239196 949944952 568386877 834865020 45273083 269551086 649194144 957545924 732813649 881035263 695459885 995774083 693630887 953547113 22651773 729453559 273517323 545547488 179471342 823880779 945400776 989427016 737618267 974792010 291160742 768900732 162559135 673860205 28458071 551949548 532618402 968720216 597812959 693816497 307279361 922022457 930557657 931651402 374735696 515401742 680803473 708039358 265331057 922269078 771672004 890250919 286258961 287461209 470533293 885367557 326679824 522795974 579298638 835897017 596103384 876205421 227406498 588744027 82865340 987191886 967197084 967762311 636954473 681789878 604953139 910213085 380629143 862922686 989238162 995033244 524250959 767254582 742259671 795207529 996340706 998894398 770880754 950532859 354055671 617030808 869344724 930576492 679592939 688043114 546043161 644679859 550484819 958544244 182987031 355854212 255673579 368815299 168944249 172587263 109782316 698308824 533227129 586251769 71256864 573861024 381204547 888169363 610410609 674429278 260833109 835927870 862654516 871553737 351867938 962300954 497285629 822969964 28196254 221540169 60273681 742156628 122605109 242395763 630394404 776365725 554222569 572041726 951834185 975320100 71785740 121685570 867660656 995251421 111137110 228129094 678836689 887291409 190528836 400202324 197472202 681833753 551297109 770158897 585310379 988796882 501027442 844628181 692888450 863311883 45910330 94246746 916898786 965118245 20178349 964980645 453623977 689024245 151019725 598443047 987887842 996959528 382582304 704686812 203120259 679621190 857160444 948044325 579567003 736859109 393009788 924562940 963950716 979033784 21938501 50486648 304485339 537701229 658362023 921255137 194904980 824947841 816396234 970285106 289145580 949333132 772775313 893963209 114792317 481875118 363324014 745604557 852955334 896881084 248310364 368979444 690619910 916695773 675617339 815336212 800886150 835595746 102506910 520595241 323871379 782909414 315018698 990480891 362137692 388737248 907243649 977773370 68081974 593818013 834933328 875663287 867671118 986935166 141703691 668989698 152207669 426086317 920482947 964720843 32276416 51810038 246964361 327733795 47540561 872406903 687605187 721044024 358253928 579446889 312272536 883990334 458552844 544907967 336211804 589205319 185660659 826620480 814128072 898580762 464568610 859396076 925984429 941548586 15021911 632022843 370014265 398684097 820007842 860045364 769333107 898790305 660808490 749114306 386845279 501948788 508106452 878300325 21743275 686447898 656058335 918528466 467968191 907925276 961170959 965615396 132934191 774208941 569125986 937840840 930068296 935822278 250001926 291223363 204333285 306956103 546470775 765488062 498427961 941162451 438227825 591907713 757717417 920450035 687515499 726788730 542290929 961149277 229159788 725459051 741692779 938451962 268957759 883269667 86271633 90087716 501280778 857464557 892854999 950642238 383142315 431017547 745605058 801320836 566008267 698013956 529372401 681270014 357798575 420322014 219966270 376428990 640841446 950851173 91731779 436075193 846001977 909537748 366986654 374407664 681692074 682872759 420137607 723357646 834438741 968481977 42587139 171141069 232737660 906298544 97253040 661701046 271954280 416892841 76821426 736326643 131021130 759416870 779878227 780878073 420126224 596820029 357494397 823656827 325509030 995203683 647280325 893747647 292345235 780836220 542163171 612527127 955493583 996339238 157582103 259892347 984854989 995510704 934946313 942160003 447528878 700500666 864266803 970332371 761913854 767654891 300641680 877146093 580381513 848862353 576167549 896012068 855607423 982925948 222413895 797139231 456554704 591236134 21564472 360229918 674333248 724504270 192021551 305127529 221566 483012642 311601196 583098683 96430641 822823697 572986944 716551930 406328605 668730552 287901813 450106164 906616749 929370910 505960217 857159217 148856105 369213068 784494198 799451595 625158161 999421988 113511323 920108204 759438031 915182041 293723575 779740486 784414520 905448964 797327542 897941512 452680686 546691455 28644287 776837912 749692416 899233151 5699323 379446075 496536397 737044547 515579323 967509693 980442336 980480526 177366834 797477488 595090422 714958208 797693751 922860470 358380149 437426140 299731339 812557096 643698678 727046912 438334394 533193002 280705430 671241410 821686622 898265804 404129943 545858490 475560002 498039554 712356721 879874407 349332737 905172533 673962369 863905365 426155118 595254015 754643103 815363020 31374191 753151522 402183628 631696797 353485213 759217792 80442453 968227845 616301198 953995690 749048899 757159313 838427729 980072872 56878021 424536190 459867376 673959318 238777934 850084577 171053984 613570288 864147958 904847689 395017317 990722205 839278026 852894661 461262985 669400928 767338155 873547239 502013499 759120257 437443804 743528888 546849900 561891026 370550845 738490508 601622173 963618613 753362056 910893304 345347286 568976963 845231835 966475995 197485416 474930482 551818361 633502452 425488683 706074385 817793233 835140144 54758125 68883656 303506929 509246388 80228558 361774900 905677459 989846279 843332643 850390611 696320913 955586798 466530529 694246105 213005135 681111106 692213198 698766596 466012359 903201736 713550506 772929556 902201716 943211694 666204955 876654312 86025150 411534903 812955730 862015833 356298789 842829372 34264391 859640805 202935584 549361143 975958149 991260584 949540912 998328904 901767466 989914222 970523167 980969061 42325182 839928780 334909866 401884179 291240302 494436794 238925041 401516643 917016800 955803921 714174708 997942463 570281039 914337758 969995516 985012215 949935441 990810058 496308156 520703506 476192174 899224969 694029808 806915450 476989098 670112614 568481581 713823521 185937089 198137577 251955490 778451145 333451474 970665520 768366746 772919788 755040709 869310147 469673372 811759037 959417024 981418915 291792955 295094710 938021416 980220675 254863061 467425586 574342302 709159617 67841325 595956181 233922576 286948395 758686802 923823054 418294198 859649918 657427393 971329606 324299321 620478128 477376996 654086069 96365240 961587689 732166495 767206151 86273945 935603197 755243597 786475144 572067777 732371047 128123052 782644162 137054759 321435918 944404196 992701904 801355302 910317564 782552988 972964790 652575286 690714723 127774021 747336936 191554687 826414105 366185429 506442413 657207152 800041857 844609826 899370794 511386248 531478184 572136724 595988407 330486085 362619426 929823501 950072103 590626343 882224249 556704833 559011566 488959303 566531490 520648966 622686005 817625850 965827093 189092935 591385875 158681126 630785738 142251072 261086299 732645721 929143349 944306568 976492384 281094190 673833147 267822207 831798508 44660889 332093646 406120685 667790386 309811777 341704534 116693917 796031078 402205318 938606226 760392888 908896243 629528239 839791284 268181820 969008096 348282796 646463760 786498446 904570892 167289991 803576179 413222138 751594922 801864772 907070803 705380377 994778261 917217398 987832578 935881638 977959949 128926420 495448851 713894652 767186026 221882905 738107030 111000646 183695660 703916957 894416026 501564769 948739936 261327282 449595485 886824177 888134763 371091828 676904816 66134382 152245211 282623349 574050705 253249893 637510269 830843040 973288774 670190943 827359453 224665781 787557359 408262749 853068696 859779867 899596149 830660152 952959520 431102897 765296626 77647364 197438576 181997440 838493966 9744934 716359659 897234234 961736475 140593044 979157140 299808099 976732721 705239052 768776117 279656530 883486816 687420315 691045630 487532921 774243892 877279019 926297921 931774774 999378548 564435844 570231252 47455614 610785146 784801828 948841121 43056271 67204783 685519385 705751834 3676963 746444756 253144842 737621823 239472467 307880225 431131667 893580642 262266977 607469932 895676275 967464343 154415938 816802342 268473581 790468953 40702069 172736175 821209472 867376374 386153451 504030163 776585891 950982604 807725689 951906078 116561448 156124938 687387681 776442096 907244932 969829810 938180898 985293080 275669127 869037856 485669653 611551157 663652795 815348397 996229651 997179516 510577930 764611556 347870084 716401394 239509073 287934937 545523007 924971189 844021270 866490806 768971364 832734151 199295790 240539290 114127308 278767543 793543079 856404112 286018766 608904045 896421790 999339079 686634164 768734111 632363199 953816257 2913890 183363951 720258877 974435291 538126674 712631689 790088720 931031833 256435715 847649940 897239949 940403431 776962754 844537423 174369141 389564479 859660718 876055929 224744250 867287697 607092958 936817150 986961335 989053199 751152 173419617 815473428 947939855 309069532 525403132 173375415 823747203 696516548 708099874 727458040 981129442 284735373 850953431 517960243 766964105 513425308 715717666 169958596 342395416 435763355 926886387 721225935 781371641 815873204 850428510 739458481 751797459 98877752 234043376 977084665 990417271 284730061 530856351 337430703 462647755 287792627 547084819 437947041 551801338 25241080 926311425 895831612 965817561 319879975 940683972 399286870 944655045 802847108 954513394 799763498 946945877 526999444 559750013 106866422 286355270 878579127 936498269 288364919 695568770 578703262 792222173 205474288 412027235 945456777 992908391 587952212 861861557 198474617 707748558 246213447 700536342 191214397 457485600 516205022 772623227 735767660 758101499 690066132 694830605 342033424 750567180 391453147 998851877 651045372 878744234 455308431 474554547 397318349 869277418 865153011 953398531 166681220 214680980 561342982 670698878 650743566 952261918 119482719 382084881 452457678 875238560 528440433 591026060 697538495 839049547 715992206 810155461 242699463 706083729 113882808 437632105 891101086 947840815 807784858 831196485 62733137 818337585 946185928 973085704 421787922 592204091 158091318 461222806 978619056 993073247 177349072 954670104 578250382 904709081 425597510 874091349 949715326 975906519 45358275 980028201 504313944 649675354 872335926 941966763 395224641 934739216 215413936 273450870 466139932 564898862 493750382 815016390 559876791 667229226 695497700 991072461 363511842 408476170 458575699 706481673 609200035 703225943 605421779 685077860 414078728 511653932 624757115 769277891 895683323 937846966 775265242 840622161 612337623 761694081 467986238 831082235 313294024 907669159 546093329 615194684 934288723 935836953 924505945 962917176 236655710 660643140 250802231 852106389 302155922 395347277 579763257 811988179 221897100 470544117 343725593 874739854 729293295 803014402 879136266 887056586 321245 494937075 738025397 825705246 713592613 738863252 746657023 991044279 227320079 523802006 195167488 412068790 846067366 919998451 49017440 442245401 731872660 944389151 538743819 985264888 789207812 969498215 153369433 565348031 807736822 871500956 720877917 828624017 252547377 536499310 845467979 931302401 552057240 677177346 996326068 997269989 710681139 783036661 952209068 977415947 302845863 967037692 497920592 652430834 648185696 890751072 135574172 678256096 489479017 693646991 171373190 350107089 918301521 972297536 661335392 875400635 277703790 281841170 877872657 908447870 758070120 803546637 627376622 639455940 53202124 877114494 636414988 876602448 155013448 599116598 107675636 324947058 858685661 956895394 216773816 379160880 77097959 730479955 140251076 161462156 569426381 914940071 233981315 784160616 96096088 829220533 4894286 258026671 873972977 997167047 416502359 780356566 749580955 871390262 821477911 926452301 751680483 907943635 733912995 866558252 519498105 531265467 3514155 739163849 765203933 886984372 20188398 173851093 754797259 868337267 545869519 906088543 735467367 760655776 734964596 821633755 860809278 981812990 960833195 977294756 389198861 525426239 266965600 925625153 960213071 993889870 498820742 726112571 587204933 591200821 869860095 930385840 402828167 695553812 147968573 963584760 769506220 892503153 765773591 789857572 337334825 800121525 794249292 927494011 126672522 748171707 632410451 767312280 408639410 771026692 440120510 673165690 485968766 564754010 625413590 690869620 146834310 941121086 670642017 775826870 798164570 815426842 524448324 544995414 46209972 390010741 610938644 918989078 989571691 996287532 107118029 116492588 869669302 940731257 248158494 863224162 607993832 962269693 64836511 284148649 981154396 992457181 529267822 690604614 883906314 954950561 708731185 762285241 183819893 978354742 301803576 954139019 622661989 761572479 171708792 236761798 688259263 821339283 614688157 644306195 612958673 893930028 610377038 848384472 876756052 942880506 900958465 952459332 562165438 697770468 379711942 669700785 897694809 907333899 485243825 498778333 480922337 883789279 983487955 996034074 742495059 814211656 459738066 976700176 162753027 982444228 770800111 994578102 189537978 614227833 634618167 665980156 559232963 957408847 903028443 967562561 896754692 897577703 466860993 973298317 502454296 948555850 325298751 688500458 695675495 883051356 127044447 398477646 9396461 145186765 584651221 907551855 564313560 605897620 432595927 918464253 544630713 746471599 138887231 485458904 435805104 775800000 498005008 814307893 925781655 969935624 870689850 954652117 983297047 995003283 349774090 668252472 257729803 859765012 652081291 789027458 19106026 853624451 571634962 613325020 774724621 909337996 938816360 941061951 417364219 660108312 606807913 710539231 293236114 956228607 715196033 982895731 737226592 919409663 800006107 826565927 588103021 967154475 14668596 852401189 76880096 857421623 143612153 183979835 687076399 825417678 277119977 429104848 206519409 959958092 761930174 931387562 845894164 938755894 383865188 934371928 891430660 915085191 249753289 967603231 372004278 940678442 705426290 906457375 907323787 977085355 370565223 658190093 606942399 719065987 174658860 591618521 553890975 700644901 248525006 373205626 256419985 573602421 447151935 948003069 782706875 939438764 224049774 524668205 148499265 738511158 998691272 999471725 873019326 967820845 568634368 629101407 694887669 739044844 483178911 530969315 566842131 982978662 499914005 825139299 130103961 500332734 976163261 977165508 115203066 491145631 845317348 892717843 560197228 661181924 197864741 266117697 464271575 760762589 724933027 797380465 376850752 608724207 425368636 861456921 750877594 833561498 881415301 966879231 541221209 685554037 319160905 516877657 931578647 937239669 629701771 938458804 745449485 814134271 352275836 447282896 338290625 691389674 58083758 951052215 285718719 684916900 890528496 984682210 565637681 994023069 268023433 752728043 972433868 979372998 908313524 947759702 618978003 763624616 909467238 998140614 793061520 958425449 645582076 661794229 298284573 404436465 42363790 163675301 376513331 446457687 994961693 999127427 22319638 845517565 897079313 921968381 870265878 964173492 122436534 398600017 198490098 676194910 446089319 604115542 991779374 994229724 545083841 780074964 681395760 838023412 773381326 843536354 717495549 917658430 271194311 355362224 36746293 932306303 401408395 762110298 575670710 688062230 884897471 925665421 387454548 482573650 572666396 616281746 1615379 130174140 255312449 279115692 168667070 870455586 201859529 677070994 518904550 943048167 599077562 925567584 473689880 840022911 836677215 988869311 24864162 997615949 555017710 885630921 345432187 661454130 729125358 982918070 849709372 971142331 691083512 884996960 142889498 680092314 357611961 437059579 668296104 847879723 930528424 994175686 920168272 953677746 196713217 235084586 663095500 701985969 669303443 775155223 222351237 430888860 467792618 893152363 122575887 592974431 491333718 720207551 611588980 932909609 815270878 894414673 97811289 879347595 98293777 140857060 969388097 995338340 106819358 139406018 17074617 297945569 363820843 915556658 938666756 985206916 602798807 963150968 469813429 788720306 244859208 943211632 675518231 976670461 860316008 992933705 85715047 864604747 581750623 957614481 712510645 972747764 80761246 999330896 638032479 968276568 382289285 715459173 751754465 956820155 175146446 805824887 683263681 731112900 95279470 267434136 250342762 933493515 13657730 602904804 924773452 956245907 82702233 473175371 112478455 903326050 546671443 779461649 389053454 467345341 258664505 656098003 711905726 743496039 113036871 331354929 906735733 970795117 84280233 792005356 878187579 954093560 209730410 508259045 382294618 575935756 930977881 936140211 129053505 763017326 647098587 999291225 665524070 727998359 917795436 995875858 460696164 947958920 997411791 999391180 501793488 741872502 110084436 870227291 967787472 992225441 783333320 839196291 298929354 995911791 730788529 901237819 42346811 381616237 500971483 553856455 154675665 308071255 231682685 950532322 519765465 981700482 771245860 992113507 957453310 974205064 551426252 753846507 94136932 648958610 640726740 701246214 643642290 835442209 767578876 784206856 271136098 289510736 369952641 932146733 642273426 760506136 563666441 680641275 878926032 993556792 536927914 675408138 246648451 295591433 297569659 635993839 787237896 815553156 539581746 597971294 267562913 807188103 26871098 397744510 246413799 536892149 642760641 988728637 521871585 796978483 579081175 921540481 393994784 411164541 352867113 430788532 885060523 983251591 188490743 858182328 775313184 801914565 772354671 957082314 117702524 724652235 39637681 619671098 62128524 408317335 463692844 563255767 872097499 892008100 345577408 969971926 853136763 930882283 481125416 900574569 549469245 569762078 945832355 946812766 933971804 994445507 850659435 975416741 456098128 562414116 940588837 988351921 9753047 724584154 266307267 856951524 19774957 520582538 184233014 379954284 481758990 918473710 948975946 962974667 228329616 829743529 35091846 628488228 189613857 884674859 542844970 605541335 995437914 997252159 125673061 461986525 395428125 858427932 661763681 683107408 897648334 924456082 904586642 934586301 200399916 608670390 736404730 909854963 373921144 688730484 715605050 779710453 822919847 965797028 799520750 971517743 781120287 967309750 593155727 942959871 147839381 444505343 264891948 483160346 324726623 622036041 246554585 405686044 519470661 863423301 405925034 543786703 659336256 789939287 357266836 710757789 693477059 842945283 452705269 613153020 823166530 878046992 245742473 902284517 472771872 580669197 18190494 949947726 401868544 442976872 245113354 952743641 668919223 729287343 32574890 142977588 947495684 972562730 18928685 721321218 347551720 470667666 862296885 918888973 851893768 992318426 703220385 983462386 264029246 881441189 701995398 845166519 736011368 914633307 909327361 956663815 266373015 878732308 365438662 867528692 634803984 688699021 287132100 752071403 367876766 618526331 130849124 380216412 174479243 631139033 533607447 856131855 14661648 580887887 334292471 592093198 90455022 664678029 161302183 797839861 137233097 918038224 386620174 966000326 886465415 941781942 995299343 998547812 890260575 934816194 652803190 700964690 536472954 657420958 387850598 987700407 109047058 509148022 139915120 373192483 788146741 845350830 249077382 931046813 613063490 856581941 337171910 485191012 259879769 832344554 198666144 245761465 80938322 127916814 301649355 874273851 363336250 801647323 524539442 730582978 628852371 639022777 227385263 282476416 996728358 999470850 744105683 973993214 488980406 703906751 186817312 420974071 713727809 758722217 733144808 795649001 124755968 312350570 136372857 272290971 38969416 740321692 165114826 698334271 325429214 782698029 267831425 345386378 585423231 817936899 970049722 989671038 578753957 712233697 281680723 938287498 835739990 894610273 424247099 636683752 123946152 565550544 916411734 967528174 26464745 796784590 280340991 612036579 29035954 346388898 738842004 992776385 993728955 999173478 862997342 965080084 226884966 864117278 791300950 882087201 569297777 627425274 987120239 998342683 646341219 988242175 965483293 992783270 741013398 836289296 779004493 877236265 607694547 971955790 800850752 826258069 918726321 938910369 808546027 895432340 765411376 875699164 247124865 541152499 5119624 217399663 700049512 709140539 218159777 340997619 735100702 825019939 66850701 299099445 785136422 902526748 539816081 804827514 584951406 750969125 584298057 799246639 78051352 952770418 333864335 968154621 623824592 727139022 734518739 850604240 313176169 981308526 399671052 814673970 631509836 886905302 813552973 884316039 285001801 524745076 753275681 939425607 591251950 833786759 253826208 804515884 968820602 979292558 280131417 459170188 717149797 816052618 880648015 885495953 739844124 754691663 448859474 658503065 890055360 897424414 579012500 898265603 410817314 658187281 4188208 306905143 309286470 485299703 421444741 908155785 475616231 955682036 957082831 976476837 69056045 990268689 41385428 493106461 889432479 895979206 903514604 933838859 639086917 654893695 460853810 505831979 846454453 873254755 283139063 639288519 102789994 283328946 840738725 971241813 779851803 806894950 75179652 161785283 467227043 840889243 952587815 996810188 445479435 799987396 343501438 672667741 116995315 157551753 747737272 819280126 770679593 854776664 807603890 948371705 711707308 742585984 288506644 767367858 10923414 933947118 646336504 962322669 235107274 286692896 830792411 906279754 119420204 979170569 266019419 289801771 954272647 966824957 314709150 979825347 341998917 850549079 318949525 519898128 721141785 823300023 810398706 954606509 102216030 385785453 721496656 974162751 151713136 945731303 239576816 486669305 273537702 475225853 104099119 575270240 405342634 879632852 819664228 832135865 468597100 887041669 605948009 931696819 588388830 912684770 848943778 881057205 458822235 978113468 551874228 954853135 882983744 960087139 688435662 696700044 470957616 952224015 116852241 575900943 73969512 369141672 805707428 889480038 581584949 640899308 261123712 943723880 577298666 681555118 159980016 209263240 814678378 983011487 585126980 701018396 430114967 703662209 784654195 846676372 951061099 988197143 957019973 979961704 827868035 985522453 803290144 954895002 610596184 862469247 487961721 672212379 845922554 872202597 699339122 704219131 824455049 982214459 901994863 922602734 93096477 656739137 616548321 829387781 271120320 910389757 538909675 955152200 978684265 990020219 139026920 960868860 521558440 574924967 683986756 953445817 933063951 935397027 756543919 806605175 584687602 919386113 928658593 992051027 283938164 468900261 162218455 926974876 386982014 605181648 82790649 443923851 700212936 957805439 171032807 945660011 224121466 770326770 442250555 781545983 156513848 918819462 248950944 931636315 150052508 806893715 874709943 988749663 906659063 982909656 889668967 916351287 901893065 933930830 341826018 361643347 4492778 487616957 193259969 493264697 139360530 919631527 234893544 689705288 736636037 872211492 593779335 857807234 194228507 654933422 393854638 524318848 565905040 982786148 209217279 964568288 161488738 817939695 123808491 437464333 481941177 839349149 678594279 731141344 136971335 468398886 738252575 954484011 630659970 959243948 595111218 626528512 883159668 909259367 290634367 637449936 664034696 808513101 464404008 697187652 224983045 782771660 810368013 967331231 133104471 575012168 621122263 857677580 454437095 799476357 542434318 886721766 316812565 553593780 963117835 988633101 328563937 696758830 189557868 749742266 873001486 991370613 388311085 877773619 612625514 854487130 560508242 899175077 853862434 989275515 242201745 717132404 133944130 176774756 926294901 996095716 140028982 194745833 276426080 924690680 149059198 470758599 852031594 901792220 586436790 715227666 185391277 620356343 979982614 991527970 725855678 865217223 739345851 816293067 555263742 842432313 952249212 973008097 587960246 989266946 329042559 798020113 677433079 978832775 979027408 983561645 664351431 666942130 382283385 634383102 619841860 772889281 312290955 773520678 174786873 215180275 951544978 963421055 946444061 952085953 35495867 844402834 334118682 697743988 281708084 456108198 942624157 946002635 39667776 683192489 718836869 972186375 634232865 751261198 696891872 838482618 771933729 847654142 16956728 824492536 676629187 737293429 179943965 977666687 774650049 817747653 825445135 830961692 988157051 988927269 323337450 353255522 76951161 531992039 121183897 324788566 141691228 311249579 781206713 860627779 765229654 769934524 925318429 943838242 839873132 946927645 732793455 738589240 773459715 805570889 958931206 966568140 403276470 658243531 370923429 785458284 140572743 501693477 395180601 843566187 495407868 690366640 279113 791705150 644172885 920317336 883152306 894272052 691622729 984190338 545488414 641360645 979205906 997221129 571089040 601010534 97818236 963753921 941116503 967573889 858348389 966503591 280453263 813348047 278578628 444548952 735677471 820160740 979783972 990118837 168111246 450601515 275626528 855590300 665701577 725898604 358745899 541782592 444864075 527606449 490041989 551848068 772614500 934122365 234225630 591138984 142228618 489554280 166768144 772151278 497093208 772694199 507705312 657457835 244519339 992500554 996635592 998439507 315539104 999822741 402027174 402372720 639729597 904258882 667030413 946242990 583273878 707168693 296610915 433816910 829490397 934219109 961061795 967237014 321137127 425072232 203650315 467523004 413565082 690894681 572750711 696811225 210834307 592605065 924527444 958423203 683796775 921220444 861623912 914737408 45314047 469797538 896076550 933861435 447064430 991389028 933180054 998242954 624529733 825153846 631482221 668998168 270565453 454624809 466279829 856880004 891918342 965553506 427429395 514688345 516976173 654257262 962121143 965160644 270309172 800804299 416782636 794399985 362391414 920565810 709073874 714939079 453797266 481415628 258588084 510376944 71697175 107050959 851413209 928886106 212058676 248054284 667485517 820293020 957643795 959039839 651053640 896565890 478850049 719394362 860400001 952539708 253652121 812777372 780787204 808819296 904740206 910458758 858796160 945566711 89596104 454163836 526136525 883826153 233390031 406593774 162412974 369974162 128315205 846292715 450354044 745645767 124834008 377980694 979525946 999354298 11525377 734374055 576702952 814967070 630284437 924936291 838697273 959358527 149580183 167188032 831184710 927721743 533416462 934147563 752320440 954782425 626732812 804411210 351669139 534870275 727144315 740533127 339048572 925754176 331206263 387565332 749386251 947665263 884892061 906358248 369503950 565047574 594481098 846859027 400513234 878687935 185570033 352534741 49834529 321956110 931983138 948951939 151909023 199801028 927017878 955589489 509648613 682550219 340857652 568372941 529230847 554222942 358689662 908885032 923158528 980850690 343622085 478011259 360419422 872327263 983992942 993734821 873376710 949729029 613130298 808537736 214351514 477908756 489352489 976562815 8364056 326488482 376886175 842515985 828523386 996331767 365511882 461653425 484063314 976992452 169269680 941212837 531522911 791798014 38485274 407406227 428785790 532240242 884215640 955841816 612187114 636126758 118444124 481314395 749901034 768822926 487892471 979568821 719952123 802849576 778915879 841045579 585360306 820462011 177122893 515725986 715838481 850909199 803637174 962276620 393984443 945427118 8203649 266995179 129254141 841195577 430622967 455414798 425215992 894000986 544573966 794085682 931629648 960480861 739161025 971672322 855199979 884453871 697371682 853813284 941584281 971890936 442689121 470962244 169463076 843737817 461854348 995812644 823779443 985782203 954847688 976537367 678748214 711983079 61526581 785485219 790819198 904111284 273797165 784037289 924539104 954417534 518475608 803356226 303158620 541108572 580766185 977836788 17468521 531928407 389679302 402901167 377707970 790653790 451836927 536059822 140885150 391923320 768925791 832803158 722425526 846878937 336366822 791009953 990497269 999997604 130057043 169725703 257211696 686995875 954188467 978070632 823318441 883791361 540105800 747420006 811922556 942947519 17795497 904206265 718984197 903978270 216882363 816032161 775799660 823878235 795356272 930694417 158414928 180142431 499210624 759021550 994717192 996340964 792402512 948316114 826455305 918911693 312077992 523441659 299712633 343288512 722654921 881595141 111166737 721000006 603010309 694242630 870511979 902053884 298721446 992901098 239667785 931586313 639135893 994696064 365741197 698590778 167795349 958295290 28549191 933091306 513812932 880749140 405524055 636833473 56363005 566065481 471669884 973981279 491887006 601770339 37622256 421260493 511527684 595315502 462901370 771104554 470338130 703759999 367322654 997921968 676918332 958833392 353423092 604680895 997278884 998087053 300423368 838725150 37916539 971988013 125033136 583211116 369222976 946817627 878193894 946214020 596169489 970421899 960636206 996710418 665962935 792499213 752459243 897734739 185187804 545968026 31165669 912402345 235863401 269122218 563473165 904192407 298236037 930075671 407635725 428634213 733301363 955978160 463469015 491672634 187674749 722834924 390028170 917996734 593690050 823622570 748825828 771837912 49867896 418600647 722834889 802154322 658216343 748531313 38729296 468839192 68527713 725204705 329540442 514817371 551487311 731867889 2791109 50553188 39908241 844074219 475338607 620523763 40407334 933088208 758761969 941659808 266278477 490608385 653153804 680240520 671930523 999656775 400610992 405281689 511893030 892208836 946595893 973566226 976930022 990212837 588904010 834663723 139711705 402133502 195014801 727160606 47957716 440067908 546633277 877544788 473971001 971027444 536479207 866569209 255443670 457790140 752267053 878492564 991903442 994155148 576933887 689754960 452613898 703932703 919069476 947697534 812092898 967566874 529105655 533222119 945646105 982425836 903483554 938031796 584573080 990721941 725143738 999264702 789396023 890141996 988535125 993817713 266987737 388835885 325889187 478386273 131891194 400838211 758526360 862998952 41474927 528939250 722676488 743242815 279150168 835247243 293253624 657061168 202249172 889454409 176183509 642383627 280588608 583716645 92779325 527749447 906401461 928819926 867585807 876747851 398358001 851560060 508032987 924493673 64035987 367126943 749556975 753252743 265747262 708330604 773523478 983940260 284694155 687219059 874683761 991908281 782012776 792918462 250655643 386504490 162496191 807743594 451839725 724810062 157332031 532262250 628639114 776049955 356851399 895574331 568696322 630319024 327221995 901785913 450385697 662999501 332963060 546649786 662083140 979933946 546310545 886564114 871330361 900487744 274631271 291575325 315086983 355029390 79109804 779610181 566071379 680370048 897316528 979358988 952782985 989369347 165833292 578976057 441709581 723194823 800637418 929863407 279120845 987998346 696993009 837542329 997004923 998647925 291638659 719511746 103435310 738062248 626603206 779989057 510596995 688972847 632959234 846853974 863374902 932125087 281395782 309665708 351519195 762405907 420555628 979884183 908482669 935781975 561495933 860496418 800087030 865724628 757535327 819916538 522394393 960203701 394568540 954220790 849135670 972920982 380323602 805424324 67083161 655423256 991471766 996268596 869181488 943503603 315801077 485285326 4468202 711727563 726857356 997449879 803420621 863189870 524840393 857998497 586831140 636654086 533334776 562804487 933368957 971407779 407062135 945383626 700713135 975068293 380401211 829357459 617621151 844138573 229525455 582628774 117119789 862823766 979108603 987500498 630638293 657326854 772753743 830492614 643192973 862426379 726837871 864201819 181344435 697522037 516669511 945631508 907594265 948594273 522810211 525155591 484308928 930532573 263368489 836964859 435736279 572788665 708306898 971286487 19680613 346104466 968340 971350109 520915791 806382660 568455188 610946784 253483241 475944267 55585051 79067976 549782921 742807789 692750208 704954680 991717415 998360102 995655181 995881073 878837631 933546632 293044063 688714271 542779820 572047983 534679217 535024406 975857434 984654169 327686185 560705364 896435157 962225679 84145097 920503679 79273353 964221482 755153613 866507943 830330176 958821120 284216086 819741931 19244667 433528710 387138820 661573483 938920569 974365033 678440110 904280085 670926457 715905649 553380668 699687490 874702126 907761632 827520307 860620064 887070811 921529397 457638509 671077927 647669054 860426517 670848683 913582469 161156588 663307593 781989537 801944310 129552235 511699392 724332210 973511602 821905138 912792206 992907474 997905870 69187508 430670984 449969361 685707094 814998756 945361832 973077582 996544676 722940328 881068614 461891123 826076444 197047600 756049933 148607346 995572455 150531718 602124115 406936737 672125035 289893485 792830255 893805101 941326728 314316528 986733264 788741685 912362553 953241815 968582143 958644315 986904376 490649392 634546346 530176444 931451691 603947389 973932332 471408108 707973321 499964126 786327267 442636963 780753840 734210338 962337464 448119980 511552378 355153776 439980168 641952106 873678581 416351030 603491759 956724965 974414736 177117195 834199659 422728716 480440907 571698574 897397518 661208205 719375471 408162263 754531968 47713296 487161682 610075378 686156483 273047992 365630752 323124109 782895853 308174468 352290806 981726098 985955967 37977113 279657708 462898536 517725474 873051462 952371268 994185162 998831714 110251540 780395511 120426854 417291439 394267046 705022707 959764831 979580628 886640734 985478044 594030561 624442116 767368900 987504936 496190121 691649265 897240352 969277093 906408469 931930533 454445675 990436462 111396419 435023731 102840486 755909250 629571822 795761923 610890152 946646697 707524764 772631103 713450082 939640079 527785653 653938949 630832607 720849222 51268480 368107676 402388068 757559281 433512234 799884904 267739804 498696611 671527415 698548020 340966961 804841954 998533462 998955088 663510065 858689642 107701104 247138013 116937164 525343739 92166440 644410421 95357575 983750811 854722449 874699283 905288658 935451858 861246739 910800662 25630643 725419672 268078275 542140091 324127257 450077204 830714041 914134410 724793320 865291553 181388645 200204484 479892940 816642596 230508947 997492306 847981267 886343798 787580799 839849490 220608249 843472330 38038753 505893774 984013548 985339711 286201286 885031790 427060633 527380998 956570488 980768259 450696924 958932885 973333873 973964223 625656193 991833991 935351513 992610147 622617423 853803557 433780989 640757254 850185420 860010453 942659203 998343727 703193756 990414483 471650036 750319271 256750292 752801804 256231380 932186493 754395832 840548373 905282207 908840499 911005732 956895591 240928525 678965367 800143255 970097667 944481402 978556675 417111665 858933807 804454557 936028682 906604879 974330495 477094998 859164334 615322276 660131242 477608619 560746558 138033347 294950739 419131561 511096206 967589691 993576313 817838985 960373707 76201447 862063697 479322793 920524226 325923257 707705087 261868550 874227910 236331788 572519514 213211245 332010102 119429770 792625060 543783662 708099235 373755202 716274680 414069746 693280691 397069928 701371111 340453842 728913285 717160960 840355407 911442750 994881278 317071386 404788073 460731162 663339311 686956362 752940648 804702241 917579890 134035891 990703859 228589262 329882568 367765316 795796503 109224488 194884332 163368430 850230894 856524124 883688269 609252695 804395224 213769461 853481341 322595624 563537123 408698598 696640776 44534007 438366481 711156154 785138270 561774799 690728636 527677984 999503640 633752281 941813501 950099150 976371292 132202384 369817433 861255451 866517400 56064872 516577119 961543990 983610869 997288975 998205583 670894831 923425600 572050867 588157163 56824886 758852755 679082159 944580212 782455589 901317510 878127205 907017783 832364107 975832403 317971026 464858656 882727059 990616808 998579940 999780842 390907664 962633904 21456784 904473256 677447368 832226054 895969595 989120090 136481763 447910688 75572920 329918263 308434560 582921345 966658787 999850125 692336201 930881559 573389387 875173448 814468282 948956727 865186386 896290206 267707512 275372468 160197396 168075906 756228631 838082957 425410006 807594003 350693755 363180349 441936877 597344262 33158763 909376449 318736349 634551161 171063878 898694632 84350936 897496652 962234731 981272126 241567803 776526430 735031537 876862076 863121938 885393342 182411383 758267205 131807754 473210085 454432013 583368284 668461114 946266156 817205266 903340617 828690313 865262909 829801677 934796299 967523373 986515395 444417379 865866162 834123616 972733914 60357483 694487882 961225780 963801790 414500763 760409443 670780908 901364820 656571549 963388786 74404459 471238372 45636513 82655870 152081674 934810925 574758888 637726962 59849709 366756222 859446352 966466261 574255084 800548658 615297551 663043239 247262090 950906295 495393498 897920666 346002141 947914872 413546294 981438953 177519232 448987546 578813364 597560559 913853945 941593255 623239236 945623709 316232912 663720996 189123711 332822513 325514996 543250838 545569448 703567521 676065702 908094501 859144738 976422601 671546743 980996512 947550516 976304428 890076471 934373605 853670898 866267625 249056264 340175417 237221032 310340417 614580678 646032398 327242278 852509076 512767826 870664847 926380420 975329957 601160691 632968275 655267613 927074486 265486635 844498894 20244114 448405859 446537788 850666313 166655645 825459750 372835362 451047163 166567639 537159132 315159595 455887056 746116006 996905972 701081319 864141523 691352476 939824748 81683490 951417938 197138564 288969228 153553016 668715711 47840599 609078663 629965342 770066063 523955351 581920229 674760782 832027202 308713055 883575600 914471579 973097370 881773755 951151041 196096718 375899860 558998400 764183016 450612143 518948364 800181365 886834344 420815955 919140216 120903223 814312659 237483854 579696429 661543557 876724536 301212820 960016840 589772916 908023599 757283541 777589290 371497856 930524367 749542534 878053678 863924051 895824702 698512814 760831055 975008266 991775066 913395638 961145354 353524055 553936835 391565143 809179320 747980743 985043319 627129560 741517182 546210394 851138672 62816210 100371383 900113582 992608723 839913896 894686273 205707522 331293782 46712347 719760650 408924780 420584447 991490615 998454048 248559420 681487461 291565698 630809245 416327247 464766910 310181383 778695681 702125334 926946920 352753385 652103090 839568341 955595849 904245989 910895804 714804773 980902106 905334311 999832991 578806302 833272139 800120102 842402569 742614733 806236526 770127608 832954462 372813269 907651134 164624806 362491578 411894567 871528829 892156496 989505558 706841560 820377950 164542481 828879477 306890836 507085574 187972734 904647667 512804015 705603120 621199359 993871385 109925117 338433976 968752338 994531013 129675764 908500377 426448817 640677823 26048997 893429969 90898807 868706189 183340669 462942291 697775569 740723487 681795214 731725778 764987193 866494038 923011024 954568307 868493102 951036544 80543487 147651417 355946674 999807255 988770376 992738658 461539730 795607997 310081313 329242713 707394962 717481636 37572038 846219395 349190213 641772468 193016281 254295140 203722556 567088358 340957005 473978718 356229625 386906356 536985539 832741584 490455936 747755906 773689596 974758102 628592976 813776809 375654264 890374859 821423033 980090395 139227949 805307829 23631362 442912047 934306598 962908512 649401371 952485943 455530647 792943857 224915769 677795494 367496805 829647264 269492234 396099110 265822628 962261121 294369160 654917390 343466316 959463732 944156839 984072339 329315723 578385144 315082441 756288431 545609696 613344231 941516218 981874458 290635283 836426195 746064171 944746779 508015543 996789983 674415328 937941587 311929766 653358612 149665289 184941733 975363705 998073417 911207955 988743768 167379810 877793172 646137886 865436094 445180192 650269834 397397405 652025942 559114439 843752152 284103711 736398828 468025311 589478630 692042925 984452099 264782008 759695776 848596743 951337033 430325388 451561890 601687252 923627610 603960031 936386809 135592265 809518336 113753074 754912722 371898684 966389096 373842543 448779640 405742991 735743985 928075265 989439979 172477288 241554195 538829275 976838271 3212 791172663 555859618 586281695 592675466 789691587 866415129 951695101 934938042 953521410 890831956 902291190 506409679 972154196 1790053 708362962 398782004 990538315 935643790 964506432 111224305 593524116 118923152 150159294 504682446 766129363 189600580 318543058 655489132 703595822 120085093 221587927 187203879 645112179 954105284 979188812 946600328 983364188 41756363 624661283 798049223 920860615 879569159 929292292 588858437 897448233 495839334 822023614 462936533 508857184 403946994 558909139 361958562 489546636 583107653 788068093 763899696 953092264 210853321 253434054 260909812 749923662 102394278 463109009 26238948 965952932 480310021 971425708 678356954 859437829 296261124 746937824 259542281 978477823 524424288 555089400 161220541 633368270 865693223 902997758 337387423 888182609 13342315 991448259 80630221 674987210 990291642 991933766 230773353 411012196 43977446 896733620 48479801 421075096 178200501 738963413 54277926 821666280 168586471 316010498 231360871 447305408 284332539 445103645 724115079 900687320 791582816 921047177 986356649 995502092 359348868 905881432 66814410 504581660 265622490 417985115 47126661 174331691 959584770 988448810 120813211 604211399 245353425 949856016 530382501 821301001 184282767 297891233 921196932 939911122 269707965 924469549 627184429 917603834 281913356 448959555 312611512 624896772 161019982 218776417 12211151 208188717 305754274 482468033 90814372 686877943 316304344 987252863 196493907 919647673 16532870 397236042 486273363 726005206 344774906 805103474 253770146 815497914 542740416 797939064 23113900 685224266 550992095 646569882 381112142 941564488 908920536 968015915 965609881 988038537 887031628 995390531 677115930 760754347 671494961 781476390 644288929 873582184 495122391 891480685 687644387 918621799 136439068 674892037 442665665 887129122 102327896 648939750 936730563 999657795 1637468 727275023 671886230 713489633 551912263 675094523 415160701 704414970 662774146 758186301 227201540 309087098 425831410 476110523 951753177 962526653 543998845 788511690 92068524 181251122 407281065 867072217 241948258 965486000 62956070 802198805 263525078 358680795 874964130 999803744 763256755 807848543 642450468 761318192 25106508 318337451 173855882 175110872 703171068 876730123 172608937 966428819 792579215 926263693 544612731 955755330 427038949 495962325 638001366 654989065 766921872 963511336 241092902 562208837 193764832 709215004 446332140 973451463 48699837 613458374 937314692 979220936 695807189 743356239 503433771 583501584 773165217 849516048 229721059 975025046 230947005 246382406 504230102 803192125 501285643 861789782 766964187 937815683 938003239 943939933 748809758 834316155 538421808 692420177 406389933 521477051 465720307 710577548 498987487 607258701 748826266 789751593 766857013 846104158 509204565 727723094 160368958 491052833 208554525 333100356 849294593 948917992 830884232 930345093 230640943 243116062 647632464 879009263 517572610 811328646 860320301 902972856 926167737 978615295 911463565 944946771 633643407 924498102 966771907 985203814 155519787 687455425 336639785 882455312 453383544 683941283 14585373 680429756 616287157 725204549 360954340 951608492 580119886 682179288 943143439 948926450 81752005 314686762 751350163 893736346 350105229 822179474 379795977 445092999 275536405 756277765 690753167 980243137 3704246 835262422 812959542 857011574 285939913 655543459 841732193 879261861 24312225 115383955 591427597 876604670 330022167 516379321 169920320 728315974 582092569 933842830 233223989 498356627 687540880 892654924 180801286 476361445 624062606 643422575 276330584 279889006 108680626 940738950 912889627 965042728 876286250 959849332 360619865 798424982 726493166 829544145 984541244 990835749 813632158 903193732 237218544 665281650 451683822 900544151 815993486 820383359 404639483 524358690 599005843 655688969 542941157 719495715 659217523 939524711 107476065 946034132 89463627 396524343 386484797 673443546 190819862 364960057 544541063 602630618 165418205 664802878 243222890 984845117 604141199 904585893 224247874 312548792 119331369 247931694 274089904 491227055 552759093 823108118 954078570 959389408 703858837 910824758 857249893 887602208 251301509 403207681 24207513 695730220 849344913 988266720 769472805 963487894 465068462 609079652 446617347 527835204 63195238 179652235 266463728 709064219 694641030 879208441 627301825 892727394 956918618 962425847 378458733 666828614 991831679 997436415 734498245 928107909 607469891 746852671 879656006 993015370 435298680 616243698 376089514 475854604 671427106 798432265 579415337 744067884 233220008 643990099 983945983 991976004 460051674 722226283 220629075 708833098 860313085 873749836 964245418 987810141 383581934 716622312 691932413 755398850 17608620 287140945 490368056 870099209 632938468 720391911 275375293 384252504 329067970 611160047 616565955 765264239 643335510 711643770 373610551 654248922 275024844 417585649 892192207 958520737 531994355 860685687 173883766 316592631 632238837 768340151 645629881 747619270 238658432 746607038 862905034 907770161 215565745 408455951 837202379 999522294 394293384 436099886 588979384 826211489 256922772 803636274 435974558 815942654 605597920 821747432 601254999 957065765 161540331 356170738 418598419 711639257 536504213 752699252 900382845 987189618 923387267 962523872 431931578 717610028 561327819 836548393 502983004 891038332 847137395 924059315 10504118 411033098 704657890 892813374 772539624 818318718 659112338 814934900 718070384 778509395 973174473 994554562 494467355 841014471 256051858 948626847 607899509 736172033 356484415 442544617 300578963 681458874 998747642 998788011 842387406 925787876 605146907 683511479 978079204 985313646 567964372 609993870 499593812 782406147 363914556 432799211 984997472 998301256 299563577 657355892 618248733 776048407 516643398 816525582 714851598 808045819 613887545 721861767 834615339 882291097 268642868 526102181 423758230 711732203 654150503 792416018 105317522 972033235 720856516 785102474 765168043 975747727 143858642 373799932 434549061 672900915 185531910 645347463 956661034 989661708 532442251 735739513 774303042 962799933 537315165 966257809 521540242 813638199 839940504 919882121 333908645 928892724 37465585 357208635 557277522 842728038 814228884 921690189 78420738 733127667 584616802 903589112 511401492 609372793 600090931 950705474 980334671 998674770 935131135 956335593 944939704 950497865 715968643 819361200 520092177 556364562 999806294 999875785 175984845 221479702 17720345 833259057 389733299 768572139 569966967 965966886 629951609 733870311 144700544 620534711 371876527 739375427 325983781 926213116 492389357 863270676 874557377 912948870 785724331 926909306 515219190 958400601 311034260 546784726 139250851 965320403 707502419 776759483 317985435 438782354 724486158 919022169 203264976 359938002 940496516 963094544 993120645 998401459 304037426 471604359 509679815 544092745 639390581 804741189 189695975 966618849 126105826 832316463 276833486 298215721 300776693 458229582 572462561 724939113 808229522 843823702 251054685 526049641 768215841 803802805 657934048 909425018 558145177 885973376 632818061 993921178 84432162 424307560 693987646 726785720 562177693 658401041 698926103 768653801 946539925 979011836 546971820 983871182 811077089 845133135 379220344 671922448 439056775 722072209 329659378 692202309 198913476 764970911 13173175 774592201 437428714 820838498 808691271 926796465 747366054 963794237 759876723 919956553 771580249 801131464 515481198 694719561 298766232 437254010 845601941 879028534 759074668 936965444 920496952 988525497 57245809 225088423 786444486 808822602 192593573 333693998 818207856 874518319 497257963 888241058 950139150 975396080 772957123 958283575 583975311 659233743 345786869 856968778 914610725 976081430 821006076 951896886 966546895 993890010 791458680 854770716 959275170 959518905 993813793 999356570 803348160 834095424 870401363 982575784 643270319 856686535 530422579 656416444 303127412 874783975 872581984 988037658 900731592 985898885 203296441 766584401 457624370 523270910 233310918 568412423 914003271 946999412 107165710 992267253 580566629 813919304 805638669 885433986 839242185 876863879 835232408 954643290 620935534 690553048 454618872 788884006 229253178 882587728 457004245 564092253 239243290 249332289 271086409 364724792 326278654 828875991 892156799 976890772 900308939 951827314 697921074 733135815 725554212 883295878 803075427 837291926 566526696 957975442 532541289 873534154 978933653 999069904 260060567 409183970 699496821 887985354 470344036 507057616 543569009 868212042 271032586 499317884 277634088 559142236 702567685 744112703 529769177 953555559 485226734 776062298 980651938 994718227 265277985 633781778 255068208 712443988 163791644 375650249 328017961 840784692 452515954 890980569 755339692 985571281 899588398 989232856 676317922 933562132 397731528 624177527 386168297 796804482 854458849 886764581 482939108 557696256 303275815 610598017 343424662 955039021 941140103 969718013 357495285 911474918 115515502 561762367 599066833 939350723 750366299 763466854 944851208 992584919 306453415 806391986 678237722 933972294 41076959 275935223 592421657 641836800 172093840 766000397 710535105 977179207 896043536 937539832 869018278 930334507 712200166 936556392 295400789 578227933 168745163 828955793 890965685 989166534 336847274 521760919 89187157 789172467 872170870 902745799 19684109 215225126 906604839 972815935 149130997 454345988 126342294 523458799 304973569 662372755 324208147 666109988 185755321 722842767 745419851 849448450 555653976 592304828 297421990 515101493 801623670 930014350 542614521 942993172 25159676 338543120 82945654 683928885 859266864 902744844 67438070 766961877 818609481 872005889 106604836 136121818 490763690 529394077 867713267 945791610 403019145 711835721 462633185 950416535 336116125 391962894 623156108 729706314 518237635 715466217 69668987 521674767 205410421 952241550 206969851 549520216 658437234 917088463 443563451 857436270 51945343 763082369 769416154 782378705 860787178 865761799 656920903 983918087 726868911 885224194 515702637 755480836 982547610 999082639 944888516 978858746 256392284 626916722 661876934 891894115 225550848 864682018 294549116 722396306 71234585 248906728 856525962 863245633 276486295 726979984 66060269 542767829 75327322 368622364 105435906 703625164 932690573 964891717 532186556 943305799 721407665 792390054 676111285 979167878 541505516 560574327 319169144 780923829 264138830 906755454 632314435 918538017 418755529 703507945 224073006 319813049 821188299 888042239 871100056 983949990 655473759 700728913 968682095 988613891 371975425 898963381 797408716 933892000 942501136 972558669 714132182 938338332 659493445 990638369 315911697 935805147 508873203 935519346 999504486 999855115 639549423 855011780 157946102 724330955 747415584 790327872 786551789 920095622 192475438 903653047 644188363 933264542 51773005 478659818 329413148 633385153 704666010 727032828 743935624 905016288 419277765 882351813 682655025 837144681 625249853 929482217 677128151 886159559 670937356 793404840 463930532 798438524 852834853 923245558 301413350 617637133 568054789 719104380 488124509 683592422 188931687 576659192 770405014 778532567 630051531 996600776 735728152 887064116 577855767 661765552 911350250 921756561 373404927 589812168 209148640 227161958 674606305 950882340 749646116 812278562 493141319 792699347 608755587 760837889 171029592 256365966 279500780 593575764 551347056 840507790 738011472 995755566 436124545 904576053 470292217 995211073 512891086 997883066 822069946 981330257 602796154 761419457 173550938 665622877 553251641 840991042 508887738 613142201 239304473 571973363 175785238 777991006 13149569 991364427 523652087 922114090 710840676 878228270 595540772 956926583 900670680 954713314 641200024 650391965 29500937 777662019 242421801 475331547 803998763 882558945 156612660 798255941 303712423 623884760 287505407 858551675 621302408 734728057 595440859 634158750 253219015 698217340 686975458 940706947 817912883 822520934 594023414 811741613 562691761 692448480 678581781 712575002 263089438 926581596 801743624 840929409 21849092 982201236 582920581 866479055 133705268 355656158 181127862 642628044 769557682 798008241 591629927 991943388 411745435 412508196 317912077 564479034 347843116 975538185 654089224 725305979 199273538 206932017 172003915 490653253 698053303 997308838 372595663 732703413 44812089 132757342 262075497 987133407 760699316 944450927 438596290 968969785 680214494 988160523 269593644 838257413 645402133 964563983 882374314 912470930 362071893 621655516 766709389 990417692 273114965 359600250 218257412 969138835 589380877 871692069 770106104 829583229 817128005 817196539 613955012 771094810 868460254 993934213 438551783 553878814 279967561 969479938 296170737 614805727 220762929 459026047 386654497 395083990 706446626 890286523 193619487 551384283 937294387 950998355 42837451 627406695 400351628 463777663 682102284 987370310 253015989 857510897 429183045 765989917 784591713 866462212 541947824 998699340 951930350 986035642 867885955 917820758 403484267 851798224 682072379 971719436 492235046 943093349 832849781 836572901 334005017 925815462 675789438 775712970 22223928 956061000 352150916 944573628 257603623 475715794 412738359 739512669 397605579 822053283 99674586 823536677 103216050 658189200 587416184 639861647 578122775 609012354 544425598 871699985 883011645 929353569 685545483 968342679 19354018 178739507 5570090 504619042 460461856 950451106 809156726 894756562 218622661 564195698 821460613 971632784 688507518 906820394 161379105 329458733 920505888 964550589 712932699 985636228 236850677 449072083 123745853 333935866 871757112 882507554 727926447 884358751 142571456 612852231 902995558 929725233 423489521 446590272 841029150 870622502 109817274 719320791 568589092 670921524 594788351 862115939 219222574 301779636 895866401 906907640 461967530 796463141 574365412 864930985 554591940 935239776 999564089 999789413 944279389 950295847 881067956 929857206 861229568 902449096 830973767 975176669 212314155 555831364 120370563 488697165 996310245 998424855 751045662 854533143 493542549 635381243 262845772 282437644 963688387 980913295 271018960 416707938 908467010 986333015 586830105 968569920 279338895 478458371 414646270 870724256 299891644 434899715 617778355 990694229 726645927 951205803 977854199 994269403 992830158 995938015 764111705 906991338 323047010 398858971 706575981 848488249 901066127 910483109 868433791 888588365 17335532 48742942 847717157 906415325 844568627 896422978 739586773 894117514 745106315 778747129 121094792 903208729 772694162 834329588 199510161 390239033 19746971 585692988 635496067 795574879 241908226 410612859 935994906 989425982 40728705 963333487 494555770 656455563 260626018 643356106 739445579 815831500 780985894 902296028 746181875 803532152 328748708 632471663 140720521 431227032 200584826 965213383 142372868 642554117 116618735 327323078 10524913 653247244 95818424 824537478 463330546 736520116 555896840 698289768 482068336 553450032 977152316 997492772 918376329 957099084 520327114 989563490 102502579 305902858 841154318 882448162 503839178 814749899 257480303 735858754 718999514 735126668 402122481 695526326 687064067 705189624 42740354 618126364 375488113 707332584 611131310 632202328 104599335 627627945 527912381 974241735 361954069 873650418 473704918 559494952 330943460 655887585 328326300 946246144 473127261 785078623 621479023 679923243 919542643 971662589 270560587 574010384 44434605 904183388 16416649 269475552 833574390 984020476 22465102 123892959 483178964 815855632 463398933 811651726 355046466 929648282 649837823 980787285 780963330 893211914 743559210 964260713 633776807 989855666 137309325 979658806 105268349 458619087 376569502 739696722 292579581 420744504 196336290 268192688 396530999 689746962 989798729 992201469 874192682 901374384 253333545 533295755 684585492 794880208 803177124 842014082 798722187 803749574 170988019 462958545 770962931 860288210 882864030 914612209 21625880 505898860 301034090 722080076 874015584 894380542 551859874 972963571 324548630 929220724 13691464 655315548 392351539 959382953 767337809 835678682 650613842 843879861 364803918 570146039 739239883 741863737 422191958 468690245 540948755 722509597 814706250 864156012 770416685 974198547 589329238 642326239 949587850 976602756 447570081 645941587 477247587 482747447 179848685 762112431 821197375 909829651 827404519 999042016 802423974 882735370 993823504 999963931 302813932 681765608 328992843 817159777 873349095 875658707 738217782 840451602 646146365 720185963 70609153 287429101 657007049 753225410 716006376 752936286 455300907 620903403 592568262 660287409 431439886 694431902 887137963 904335286 84221691 906406952 546266553 638890206 665713462 854316658 375022394 713557513 184991608 816295265 45193905 552306996 428194590 719605279 417899089 961864085 296241181 636522509 856686374 907473183 641058750 926021018 844000194 885644535 168029369 311550877 581687213 585552345 201607474 882281211 850659827 944583759 492916583 838106229 414260183 856570629 445678209 463953183 825745425 984068434 191555744 621189849 190842265 901573732 689035072 820015883 394681679 732688118 861555096 940016629 420584485 894876730 105397653 581381105 845467934 959433748 782764985 873523453 408306147 974311026 365229985 846794751 655023662 840188815 54447844 720601351 89631647 651772200 214999962 958299736 546258742 637753170 638744000 964218173 121217874 595382482 501045985 736293527 450333234 773612655 831966463 952872589 445661030 804589739 106968381 916101206 938310166 947794942 478116938 852466409 486435617 835611125 861215313 930483331 13649231 696999277 538471401 906762654 712200699 809351918 48472912 656287598 301430059 424888169 67259356 562629114 440676929 942883420 936563942 945597995 647606908 702524063 421547613 814841969 112119052 655840889 473256292 554461112 588870316 963266849 82616025 848088075 587320659 989542742 634786222 783345752 733628502 926113583 441180316 940458994 23906781 770919432 180303960 735506001 909660735 934957877 512135526 693336095 680193313 775603147 850108586 966653100 926349618 953401828 318617535 827497731 689846605 738523203 496145455 808366733 237802905 291360898 601412263 772829919 272929004 754707742 514438068 546311712 943145674 983407905 582097245 822007875 511322313 744625484 834568308 887208328 34097006 381225235 925801111 961588451 86309698 262433036 247260653 800920651 724355737 860437347 705362721 898670561 516726840 850894711 472488610 970060627 56694946 341681154 680775409 956821538 694411132 799706873 349286977 446261194 85101193 320887636 831756358 936915157 704828129 854057792 199466335 710644592 862084298 938879071 479636927 757993704 4941625 809669348 987400367 991179084 338965053 551301986 746326103 852488171 741508116 910877555 773119356 840669867 390698709 446585305 716958102 893892123 792534171 997924186 559370492 708804217 621302374 801341045 320017168 368648505 397169726 806212519 419830703 938378788 492242953 716187327 197972360 290136791 167937240 587134956 800688008 906392292 977501450 987353209 410749216 901221923 926965546 951353709 711722235 717716724 664255486 717748871 817108344 956150802 853628972 867349493 351661183 899600134 859635091 934273430 533013219 563093877 254963700 277318117 218518069 666055702 278770398 411739916 315014968 747196884 554084718 651008711 126293602 474584694 247747344 669242479 135910453 942916241 998433865 999274428 709823849 909552197 416985275 887725006 625871360 978755753 909513564 974065008 498240817 844095071 42055359 156783097 479821825 818334277 128484115 512778317 180300222 683552404 355397141 586188501 205382781 971439417 362728053 735954521 494043372 635393988 615282916 707319961 917144147 965775596 823803 336446853 909706953 970546095 859042098 977758862 295699126 990723741 79421371 202503171 161141710 747195506 431178539 677340207 255111761 490494490 423839983 869462593 351402354 631204985 36809278 925244295 901678294 950046798 21297634 411145460 458118142 919913081 836337695 901151573 805138770 971687305 868929682 977277465 915288727 937969408 87644630 393349785 816891619 886393185 276748579 489824539 410442570 576072647 224517774 713973467 934221090 993599335 118634318 164487366 542755796 876537854 250617418 560712342 137878380 446334427 693085761 980120353 426356419 434877809 928525109 933560732 199297195 517144479 645044829 887253669 331053703 492552271 185203121 606500300 247753250 328536594 976646550 993225237 17121207 798630067 580152362 943307704 770707513 943307251 67512180 112388011 957245789 973229158 185044148 652668478 133085099 809314848 77169410 264968514 849782973 903695600 139869941 170131947 582751471 956622575 536253902 946074980 137984553 868797833 561062820 581208766 540086288 562246588 637560616 669120744 85811910 745714527 263207191 352985772 48959939 814972081 644700301 915339718 216999117 651116474 685735033 784255406 941296592 944122100 30639905 378806485 283589966 613580927 686091828 898362167 918337243 944223114 847793816 923762094 466456513 947065602 552520951 879431442 874885831 891886679 544341414 966038764 622683387 941708729 879035844 988166748 375018162 728155498 969793497 985787132 56979864 438109477 439325623 878659533 86603511 182210927 122382214 665435726 526084895 822235833 252540397 808764562 108154005 128621518 11863747 961820885 722446794 912945064 866112257 869956476 787170650 920038817 276052812 753108039 964887245 968859721 497456804 795541885 122471700 550078527 187132160 884622750 390165432 627121730 842437613 934609391 999810695 999844659 45525341 506182365 680707849 868623672 241677374 808499304 88561367 588817264 188273446 839171627 282515347 865070684 718964615 937404197 863825792 902109022 259469576 852589815 322539326 963628612 744918699 918529385 230906439 501095161 908560450 953447058 317921961 646327701 774342417 820993736 486746313 872830077 901062693 935836810 152981294 786682898 705790720 785480935 70721410 639058417 287960364 608339653 123809662 151926907 918615796 960667176 123569367 869837510 947626379 978000902 506790672 847003224 293213522 430640399 73633173 222530950 959729590 967026093 383378101 930206734 293782337 379026969 93607707 906356838 125876314 717647355 251242017 280205717 672294072 692117787 438564587 738658040 294407496 648425370 289705226 490970784 312238249 650453728 737094348 963846447 138602830 991374927 836263367 946745022 408420479 598938301 920123350 990376065 441664892 478473923 746445414 893052608 235592291 493959634 852315023 887093248 864141444 916255424 126660671 835678704 803363762 952342841 347371152 442102257 161624101 989614154 950070915 957947553 805216908 985618368 729594416 819427160 109745414 597813189 313734790 345413027 801275660 844807780 796828684 947980093 157345153 252330483 897229200 966497825 21146716 236861656 306373355 870095107 532733766 947176295 345256069 524519788 269443196 994531609 297945422 427821002 149156909 451510041 769584509 935961730 570290814 776363674 13899120 523277410 46560759 987482882 660502097 720321101 383416313 825252469 41477168 966242300 315296663 400879893 809606670 861054903 598763391 764031031 993844956 998256183 390290556 943616957 147039788 325449208 327235261 386953080 911648733 948291107 360840754 654279459 310541454 582323343 29785299 591498923 342611689 880949599 985081525 992385223 103645777 633871234 515103707 955631059 985279443 997781522 350165590 800607307 791331501 968088129 511429733 545240993 851460135 863572447 151017295 526712894 772055865 932641599 229708714 808269793 466044683 904228351 974834097 980377498 544947490 708286648 786345506 860479733 601363453 909264859 888616719 998755045 245559404 626816159 241316986 242354024 258829462 704698090 193493357 641853699 216349171 888989243 449052089 916154733 11464669 600978378 301278835 659546278 38521651 996276770 900731215 969514323 740247207 777134885 722305476 726759132 213139167 446082263 169803143 831122080 721334280 890664106 475811929 532865514 200425076 334737278 815625366 964689329 930834882 966144506 524257023 524577863 591176277 630571154 326089932 985888810 994044276 996472599 96561294 414798811 815883622 850250021 129874381 451297927 428463618 996562086 908167000 981124668 315081262 925422135 289663121 942505296 853050032 938282590 302872568 541527902 357097211 917903029 627176713 976853661 802572112 863813349 625378023 768342553 69267460 881051571 251132206 293368659 576260141 639340516 931049478 972519755 97328188 796580103 868749308 975787781 999686757 999921463 295509746 705064444 214952400 673481298 856233953 986528680 28870082 792253991 125844777 219712052 822917280 997722718 281219098 922380375 421244272 918865151 750370501 854421158 755305097 808526114 954736472 968826657 75756278 166301442 518713911 748849019 856209975 991581506 793449795 954139542 943193946 974389770 793836997 996698266 317038958 428368524 954049491 962433480 404194441 893670804 175390150 351475814 889640649 952592772 61140476 926546138 695494729 875023010 735211728 804793042 545329094 845815176 453707482 886903153 100879018 389165663 738591310 774952366 840736949 970814604 648243306 935972958 867618016 900439372 804585494 815111182 381125867 732220141 721215418 901563386 746885477 776386135 289914768 727458855 183185131 224892485 435904640 714343116 220459341 653774379 770885747 995671074 384662472 906118001 650383811 939666922 647605845 757868086 159242842 386714970 910371728 912245506 951692951 998643619 741157187 748941623 788702670 951503862 19858616 117784107 473591773 946177377 211571961 865948281 577312362 974416584 463883811 821119815 219176074 828879559 106961584 578268403 57915450 432707686 445914604 704728939 225095934 434082724 167632533 450475733 373830674 946840341 824647146 838672557 790653274 799128915 275368997 733594290 6393002 77224595 4114879 778719420 112764098 409897305 759911105 811755199 777702051 832461135 366160762 937127652 553592937 899206298 206432065 221149521 172896614 889968519 862831462 978462072 156933712 590459764 19353656 677603023 376563060 870392479 521889735 742833493 559092799 762122610 441497528 740968312 794419974 926062608 649655706 698375482 501140097 794942169 353712608 919547763 83564546 604391563 309566732 970314093 797631323 882256787 797886718 934897471 344944913 852508772 828661948 970894798 547894727 598968074 45544148 574605311 130141641 991010453 652129818 782590401 734690933 853702284 658741991 704500263 10417900 53748476 538684185 946057854 856030005 953112305 967651777 999820348 579317187 846413738 27446916 960465337 690374542 828811895 799704794 852184169 948560947 998489789 764741680 868501504 637899872 668958877 7804933 624999237 136915727 197565808 382305851 923551608 198316269 877108027 256357433 986831714 376271847 534596887 289952252 996459923 281036761 392643527 803857670 955341814 218641160 460788310 564345236 849327568 504489172 621349699 367790173 543955347 684412777 981678675 126000436 279163305 925478442 926230206 40622274 678456557 875287770 923388553 722792360 870948191 437069812 984557624 302474803 541351989 794066039 843917349 331838910 938237100 870043990 986566200 635567944 935833600 691421851 989427634 956410508 996542900 928658786 978884459 220655937 458518806 863679470 945454261 666317369 921452223 105647545 525188492 818146432 838488064 29268001 269511278 835572781 915084755 576209240 716325211 508268608 642113229 303024938 699253555 550090293 885830693 832053686 942624897 61931333 459092125 527530202 633197117 917997621 922019794 603372637 769727482 897858696 935638421 175004089 747477865 489370876 515963149 466669115 810411585 499161529 866471024 701844460 863701243 744668470 978162072 177315940 550025959 523103674 751363898 279363662 315475537 924959713 966105505 730612426 827026325 703395244 912074674 610957685 894949479 145734570 170033453 634411212 854174650 704440984 760391079 703082760 761050058 761069950 990709657 612782304 746448122 662700735 704444407 25840577 585973220 292132006 543619193 663933471 799494532 549874795 723938574 585989603 710395993 787058706 909777296 140479084 992409202 380999842 668839523 934697472 991940757 149478297 550580465 885832207 969500180 106705028 331124597 744792909 904711021 570446633 652951108 613658912 645788418 322384853 501446965 510152345 959093798 696280049 900008995 54624527 946872582 1471869 446224917 3600598 8591843 832272931 955848287 599736624 767422862 976317508 978920099 672518676 877895493 4624221 607139827 189881497 310272030 573588169 936970887 920968950 998146675 559402675 570655943 99502520 179844774 501904972 893133608 256512278 608106933 747843371 818581152 709618328 984319033 961428403 988246782 674966447 880882168 239442850 402387335 379947622 848358673 721233595 766563729 43972077 375817243 727925147 950757733 201951865 530656518 615345879 965070051 695163332 724138858 1324602 759178972 762300805 847494709 153687701 345362755 857923259 915649050 585895239 693837781 180824242 261467844 432947825 758204541 28524651 61492812 29425495 837262265 759415130 887452162 688386502 808464177 678337305 790980489 749521851 831139713 430120728 464347017 416219337 487597441 572183615 983084767 438508977 593619004 791530348 959245518 678747377 686807540 670798609 740156833 292120355 303706295 274506813 684994315 248950609 815100577 861038443 889356062 422121041 873837419 16725736 108995113 860236284 989450199 478585175 548966084 353562401 923255846 952797919 996192477 182128645 480720826 542842059 790349832 535794841 679588033 398882340 503590908 616722336 785661713 548443751 681760698 153229110 308704464 332721875 938152015 372153210 553766424 377811025 930008194 508749136 699901552 628034602 864297035 77408915 771610998 357048527 814305440 676047389 710727064 470093764 496284517 585119778 972606789 635937358 812143292 256971077 744614589 558155163 722106501 660298872 958181469 717238904 752178616 26878224 464853950 191510540 233305151 127046311 564298416 293134181 969978807 77412451 507050541 638105041 939233864 597102233 759831297 295131808 703602407 308984991 619218173 522108836 862677212 5262338 869800254 315614877 909921761 705152694 841441920 718988155 794156285 683260035 847537915 587717204 606741648 939294604 962977168 257324866 683560848 585941255 710776828 732246853 873468074 487868958 831980674 763961261 767453699 121437285 881432698 914737812 927529317 789156234 851202650 454547124 786668439 763017004 779997025 108985762 608330408 888525080 904410823 893056195 910975177 576203906 636849962 486035154 633030522 217828204 497591494 285196632 721950821 85781281 389047793 422697107 527188658 16325460 564194240 556988973 790646446 528922246 919838885 819038285 851156385 800833696 947787013 726715699 775405144 698326593 713449899 608779147 808360689 894770995 950847422 44798012 198142231 704497974 902831822 818606899 864280259 158987050 800966293 202864160 763807528 273375488 935442323 283566672 980581794 15784095 420994234 394278340 590241644 901277848 982320223 984996602 994372945 904709809 995800103 306363467 530478399 473154077 539621710 301285028 413422376 593017934 835134317 363395901 477235316 611928727 683738133 757161544 968877433 263821899 343347634 475484086 844252552 293960287 695379186 929343219 962412744 695195797 723600045 451096048 555561695 451914335 838468663 869535063 963348850 993255747 998708438 583271049 928948123 904503866 967562464 282552316 999630252 425795380 536202961 178605831 614145945 274240929 758612757 605256748 879014843 356283443 825493689 775557301 915461504 104329906 133818716 460111296 927395241 599587144 652532808 900822829 923182038 53315476 477426209 483107249 588680738 201265029 885667017 886977397 902229201 711049013 888299885 71438250 841440945 520049012 646417420 849059588 994501622 809454140 846278824 498647202 587010751 865514524 955277497 834653042 991317992 228897231 959417553 214705871 801320962 391107620 497144342 110226912 949600055 199965500 972551230 38660516 974991739 849986633 906745666 929415435 994415665 713735579 912846091 888316571 952207734 882541118 987451014 993582949 996396339 501405003 727819878 250542707 939550084 140605656 168676530 192404953 271958003 568078864 829493134 81624662 139321342 710340802 743060956 31591471 141572514 415287134 974863437 634811320 777210052 960473090 973442326 447053437 575316353 881902271 964731244 814042812 910008082 866132100 926860592 502533656 665381608 89225012 960934489 580580552 587018669 134406604 452347353 420506229 494612933 859401850 894231898 162467196 296461118 276570878 897446242 939780091 957651683 911431159 914691844 458364970 901380596 360658712 529467975 796405637 961881983 792197804 996007092 776474159 838212565 416798636 724554061 628284366 803450683 771619448 909724100 239784984 712642781 803934749 947630624 732516788 998228272 148568177 631898871 525177849 941475389 44933405 113900930 238796504 448862943 607146246 629434874 963094383 966176584 690310186 712563899 146424401 744779041 340104941 851138122 366791762 684136545 590044802 834170041 595558081 748397533 244381728 460358531 791474566 849942352 612403713 752291340 343668343 735310179 530331862 734637309 792655821 875261320 811995282 976103915 560881125 710082389 758449774 966597999 797387929 864468475 326227522 848721680 713725335 954521765 118023982 433959159 638042549 926586075 353295602 668048637 213597962 232412065 467759018 981399985 209935331 510389784 648289973 829657974 458516092 884335538 239893611 624039551 443499271 607349107 320218652 636156126 163059454 686614881 684024307 895159174 44906518 375260857 589293399 682153618 925668435 980351885 714528207 886547783 709349884 977469071 947178 572442424 969384485 991870676 453018535 491548129 305977829 494586311 714770796 858302805 478564534 865009889 358347992 591780656 325767181 409372644 772015776 805597471 698772468 886503860 946663058 997308668 646738615 999068402 340311961 672901752 646062796 873749344 78341621 376358780 800132922 923759003 750645960 855782139 23381414 195609352 283190158 851008928 926714158 949777734 407985805 570089852 653613618 910261486 278001189 476626269 583911856 815333854 39140611 275753296 136571577 656854437 607062233 631736270 824085333 867091070 661284470 903160749 476473449 694409040 283085650 433765018 726051098 771248454 985773212 990380164 559690779 630197986 747648039 974695695 928852103 932629590 449929817 499686379 477161728 705405873 888618390 976862645 616053487 704219953 948218170 999286489 835676258 903354134 138842775 350702888 574175269 892461019 8681398 972483673 899082575 925491413 523190532 880287112 947147853 985608873 334080365 455520204 776344388 917100071 302489065 845506047 594621882 729568846 316073568 845917907 866651326 960867731 841112046 925012347 203957087 319307801 628468224 936485348 899175126 955409109 540280083 847455779 408320190 734952736 821033262 891644174 624636688 871404154 704122892 939423531 424580108 545252004 204308972 900916341 35194301 762314643 78883969 430502336 421286536 973689919 356936048 603728270 905384083 960402950 559473378 888013216 23745311 34555650 470739210 633266062 722080090 933239345 935418824 971553544 217430999 407277973 81201788 744794678 575294526 666433742 350129878 762536657 354941555 715823892 219964308 319344753 895158403 900577835 586038860 662633503 470489015 691291244 590913264 931250492 989962320 995137498 624804179 748045955 455135250 824429021 474400313 828672115 896334932 902165941 999907852 999960830 690200248 868611010 594961651 967908233 528175091 709701530 440329941 879416660 936566346 938682329 21411158 718602906 572370766 712264587 772615526 817320743 34011472 816380626 44512575 88500557 192990775 929491016 399878018 613617356 822895331 984393401 114705488 879952719 410777155 910187685 211435259 872644873 616302052 690830303 184572895 285555997 774461317 884432334 677983775 909484031 695096967 913715442 293535884 497450187 838910686 844974004 461320632 633232015 798032065 986879677 690894640 794685055 273163717 420149901 17873405 446616434 922785653 962269412 259974078 388138001 980274462 996453221 183197454 510525893 121807507 524013684 295838206 955269490 359118858 994345139 771049241 803038968 597226287 822569985 319335978 906460337 702751267 765410713 563093039 864534509 424628342 729136703 211888894 654073190 436584251 699344766 691457690 795618162 406386723 446235254 314265798 867632576 344770298 834211165 919889492 993895975 206130354 764970544 982685047 998504380 355436560 444671332 781814368 821926005 330727471 649113128 860028582 906264430 749810717 985944439 537977234 605998112 158500280 559253352 267086433 859468000 545199862 730197746 584332950 745373379 872292183 985451577 178118944 308552089 852992475 911646013 375577340 454498707 586789942 937498412 976114516 979470935 789934252 960554855 816805112 839416630 723952356 790183921 42191855 937807034 263820808 787082615 993858454 995335151 447308481 466618655 473914860 853776170 120581588 671815690 328230618 827115352 688904508 905355210 226300337 323075369 578995369 911460443 605610409 609130601 504123997 660420012 605046252 681594918 672930491 840436048 915623174 948360038 81180687 850330206 94483371 975289794 223219319 300098330 853939651 867671510 426684540 730224666 914667942 930049522 71112609 634609095 426882557 686165338 859969074 870054686 876111589 951295083 8630396 586480042 687297872 711143111 181002607 770225704 92078471 721517529 305655148 877100542 531794152 661705176 25870383 903886357 325284250 930056654 374546960 633726097 464989615 853793989 493063697 886693593 671878882 763783467 338173686 567247606 61323537 687763845 714579683 940238735 480813388 673105782 271928424 406169846 502333367 965095728 62760591 176051505 103082125 212563013 441222879 959334950 562980855 951241109 118769285 132235783 514270700 563641708 466760650 479553278 564652883 900804421 578047920 667937165 419976326 961655249 187379236 553754253 726755256 740640854 428252025 887422518 24406913 413911771 674689156 977696593 62448440 530951007 358289142 924224740 127872250 524866602 634454228 913588508 752040448 830069824 716369082 825006312 992785557 995915597 997175912 998455434 109959967 130585132 74178627 516430347 913601617 967154914 16971321 672648751 99455629 605305755 241445808 542772394 924523771 967209382 357254183 422518410 97009839 408386037 226373304 229520681 211608370 614529014 380505904 771775149 67114716 384779172 322075414 452691459 932294207 957149047 302680780 847400426 218646425 506614002 875677552 978116551 258762200 931471554 56850593 491866140 83100491 348949745 466208632 729596263 974130339 997794901 847012189 973004751 619793843 844181491 387629445 555425850 714726617 751093618 400714920 592129440 248694864 713342201 708827240 831376135 906728985 914988168 486091324 690923617 845883135 981626298 445712007 748090577 445822127 753554404 829627852 926067089 563338105 764836617 888385066 935534587 296916218 733234605 509456693 823124376 116638794 485290754 160693809 974205615 72515242 107362722 719646803 851157501 815922519 875029715 162273314 224868518 444323486 462077454 641287901 954432636 199708475 722480602 38207877 872640913 961935093 993078542 462272628 586589284 531310878 971127640 106417150 828886101 422278999 718946236 585706010 886842906 969016893 990795599 876203576 881455643 374640088 621726737 988848284 995644772 187485185 879918399 592640484 854902755 723581405 998794749 242470065 923408382 215762812 463834888 443145068 598042170 115681079 692963059 942164335 988627473 351860244 559547358 869828713 969182818 568394117 633165464 344793661 428859555 292467923 840797470 393590146 675057573 474748082 772227656 40596251 991454512 967440296 997147448 357521082 548958098 823912152 867441015 940699758 984399971 558922825 719011300 606082450 638041773 591438210 970184438 949803687 990909467 467829174 644415632 87510987 379490468 645316086 971172715 72347704 779617244 322762895 548624970 111876830 224589051 984005884 988202597 617418522 706335238 323732077 499670781 325325284 518243342 240192355 586771254 738633643 995660962 946812903 998065620 6428333 377655822 97330158 200300369 115105698 895100965 212115960 363752120 54952876 959626748 486035017 552444174 354855712 540677149 52071919 845201616 209433665 972423188 817523545 855601469 165047390 686147546 863711861 929300289 433763627 588284853 4942195 855040257 353742473 528766801 917704032 932314090 382277487 460306071 557153743 881016977 200549493 765883961 687168940 781406396 593582261 827084652 744799787 916887388 702834200 939604828 35196095 550807627 358436204 940483567 494352003 916158762 413228431 859283488 77662052 397296406 146616156 953268910 547101963 613744222 892799498 910902160 775653969 799551445 55387250 232833146 822012411 915188476 980866097 981801039 232212944 876948906 106063056 111872442 72546648 980728832 145778383 521307447 939666568 964893686 573528467 815733531 483292155 578701676 874284523 962190928 26212555 769144884 351852042 730306140 130063185 311679868 784844479 827917640 662061333 927665211 97977145 251331779 705920816 793624762 680305046 725175621 429367632 755997532 774169208 794026482 577455977 735148369 839006904 856802969 594359627 907073216 982659240 988950493 247204772 880488174 303490812 873290459 604756072 624872415 421961094 652237641 411541179 970590163 957250741 975971194 195963906 636706091 695249816 835377856 200480578 301487465 765803277 923550964 524035290 722413858 687490066 986454419 614034028 659531104 275783290 963872237 941999280 980745068 460204010 830173329 936032637 963896306 908138332 918179935 910517113 927840679 88617757 936095990 380274325 890016344 589897663 679830985 349736892 936422538 813108876 819723388 702137924 727331142 187143630 828825413 838002456 995333286 867472050 886937481 983140489 988687711 111056992 214661654 385298135 676069574 814617307 975775183 140776413 453590989 126877769 698183433 153992478 926142339 611872746 722190659 515950066 525035293 287639547 292156021 156006326 619299516 870341599 937859386 381650668 482518983 813067838 825729936 475105038 625314318 883605766 974151724 352953306 612858910 276872973 538023991 784535468 986564719 107911733 906115239 954645849 987899943 851194700 916693738 186507459 828542952 94362798 889294084 941856674 973227703 443014877 840118548 624369610 638834344 234252077 521894905 555536672 961756157 204467099 406084963 330393517 477663333 126350869 581405772 403300064 709348621 609960201 679248692 904126988 924273848 81023114 188940535 832532499 948388014 271154494 532117861 161419975 844816998 477047750 930649066 276845532 389320665 287190796 384330052 361201907 903513062 403493950 736138929 41516227 741340786 458794772 750444168 430639717 976356838 471925507 959174042 246704340 455083310 544702769 624835766 521581054 638304934 944729583 955724659 53899314 980889370 833214897 926985566 919359948 970714399 745315408 881197706 479039158 614656354 791337352 874147147 287919951 826692615 704241071 969247327 844526096 856652728 512664494 790133423 764912477 784821467 272377586 638844398 303423094 841825262 71442758 96851936 922560517 981758792 819229546 856343977 936218750 993927842 499425458 513795462 875960328 884996068 551035637 770436382 961740168 993267332 801565591 910024479 334339133 814701280 528780853 539171323 722720359 957492457 632678660 888689506 25731911 768877787 825325613 942650510 751370856 810351867 206280524 290266128 191753276 626003380 704594360 811816906 132396841 354698152 948139303 977334854 896415643 908596603 442197117 999319490 774069718 995826424 501957994 749684406 125422071 457297942 87335043 790480567 762121580 893512422 935990602 961293946 240233145 387046121 714174349 749385808 312496417 715434849 626008154 911074368 256852921 869293626 976287902 984512386 991863211 996839685 28301258 241159540 655443599 822869424 967901613 993846422 380868195 857521377 939495853 946703062 268848305 562406444 491665754 505434116 992089434 995750658 411363985 575669156 430618930 573765256 792809283 902515304 206261894 406815886 922705360 995263335 354263850 396177769 637074569 695184207 966048758 973538557 737464883 817433795 367439088 412112189 62755078 466039155 783234131 884607682 16239796 322225782 669881897 796967673 769179845 915704088 702415908 785105141 704952661 705139500 863724896 898044789 18387551 998651986 845171927 856205666 192177144 625259636 396990698 983234062 95251524 654738586 558766205 633586570 135732224 663420408 83218504 256354286 619488148 853079515 183362583 584199010 975520454 986402713 461581005 782379176 342743894 615803953 405172665 485269477 190101892 272834312 1568253 612548149 698812483 897285895 53635923 147889194 714752653 785982617 309226761 587886118 398673381 445340002 846289720 988899739 282303125 979992656 387556066 627646507 972901098 983427090 265434655 537103306 849036028 899287765 279275439 527028510 847225723 893225138 952273599 952442822 892918815 918768704 479959753 807308336 744703534 864964397 161035684 955397322 241623472 723103631 337576184 741942593 602660190 978388227 346616103 656696079 890474843 916766860 781360835 918436094 994475099 996101236 465946384 990227851 973436508 983466617 586840911 814471510 850818827 852344525 96293625 429055079 193387105 350871663 778139808 900830547 976846269 979217285 851676347 867690295 577346963 923813600 194083097 925952380 679955392 821646103 202701259 221217707 937641740 964622986 283812045 558152075 838991100 976440968 418754716 889617756 961521353 978528277 231333279 597453366 36065623 122133132 250416503 591553363 758532772 813034133 395511023 410604671 646348233 771014338 317809666 688217346 302871611 878568453 634800070 643761705 510514853 926635270 824195798 996569655 703545136 867985618 602922719 732733977 728142731 963083922 431316570 886345823 440237508 454024757 322017369 744381870 891573477 996277141 644441471 850307125 197148706 448065390 817999775 887633420 858035363 920043645 760023862 895006415 712205962 828783967 924665504 954245954 984659896 987551394 555124436 694688816 833315975 918256587 750310805 953116395 361582351 645727553 190377650 304839450 868407530 951683207 839010874 958417537 758514576 989816121 40587010 98531460 187116850 469517925 972131641 984416659 413689234 416528170 825921890 942511062 969954421 988623064 149335921 171136475 199528707 512947394 812454521 981309186 520086115 749899444 253529957 545685611 805419849 814738219 466993 886684881 524168524 855638295 1999948 234041356 99373162 919318145 774143126 852310980 632255355 651162907 594447231 976079527 225778127 929191200 632601062 823752070 281439469 379630626 92249765 939491180 754366467 953559506 269880580 342027395 69075480 642817460 530294881 621964582 594334051 598731907 692853165 969194062 405163913 683155764 706158161 887958521 357769788 745937366 464189561 809794599 64880120 548117864 139710595 526968973 876375071 903150604 774294792 975943393 739646972 843952141 647891632 855422123 999556909 999738210 654006979 720108505 408785888 903850587 298274037 541610422 491141897 740339707 8375109 639411721 584030746 743768361 618426168 939619619 52907395 281848081 469760402 786197501 350573580 951650544 245723713 332913423 344132726 867132610 647692438 890785157 370579833 585099021 997070609 997079559 605578747 720164508 616180122 819186985 888662033 892619671 704720499 860978638 728311170 945003487 518238920 700991833 185405295 333899489 857339219 880552909 755358245 798019011 567680523 931149402 859705022 891955717 203736939 339676493 524753333 698420824 701353522 921049470 68569398 141998283 297305132 895708032 541747431 630642944 453806678 905200446 911821469 962298099 403723793 657282556 747004123 820411110 514964427 560434324 897453783 967177512 835923537 947290064 230176901 981682373 656257163 795695267 994372865 997183159 308352674 844870131 535903299 765660699 363702038 525267929 176729826 565024287 841769293 919776621 795018084 887687377 211437295 252713596 367990881 586815127 656244705 910048507 973559565 992499983 496251255 762795130 829067710 940474746 461692655 710634502 930026590 975193920 593825708 944904020 518132279 722016990 528578958 913783019 919962521 969455747 714609680 780804631 132683602 296479248 470275437 888761101 291564944 892394888 528938314 567038271 358936744 797694001 837972883 965792351 136035425 806071343 532448462 548403157 99323536 681938302 759392271 896194359 863471480 970432944 704708247 936040218 849670394 973905323 634048889 643572359 747947328 857103873 869889524 978697545 528783704 880539253 693416056 801862588 171216645 964749874 680663227 788302636 606378902 660476518 373666391 568106421 850455928 886420531 613565474 826610539 537597291 706405398 758518945 971934906 574269259 893750262 47080953 704583770 355500454 957189876 984124198 996263967 613394758 989774707 432793292 645698994 806288685 843000241 669220907 955354847 92267030 958893158 44973372 612497311 352826027 676312871 994692946 999866640 667562826 827670082 789818366 908695518 460542931 714609694 24890170 118607740 303061833 444216892 972590966 994074353 732405906 810666723 776696493 820266754 24920080 800887915 78322361 546524592 670979425 781677696 977313869 988323865 137956622 682569064 765552848 785578884 61720201 263465365 210914683 974198911 331334871 460966205 452116488 677430031 630575367 697983254 257805923 842110869 958078612 964062741 607703368 766127490 775341272 999091743 229346960 839037246 388018051 820016187 120753760 321798223 495527714 706530014 314938526 758280875 357196392 607281579 241802446 968634054 898727253 972980454 201542336 512092085 399082680 629063071 602830690 820142478 256623685 811796162 963201571 970197879 495345130 572912985 58841702 783278693 365040776 448817091 79056838 365512212 671641252 771877064 43883912 194785945 488684387 945085564 832444308 855819778 653639583 755785970 775982588 785612045 701174929 768516605 193892613 260477870 885444233 902410582 66008309 998527980 337524459 508543849 157296598 302706431 53788813 365991589 648482844 876999441 8015064 977988130 736351438 930014317 844002531 867639140 273635950 987804785 53162287 175043616 653317011 984652155 49492236 236290648 59864964 615116574 286477368 839974084 931860 730414215 652134161 679909491 433934313 616042993 283509210 579547133 841135961 884159345 288409012 306657250 307608943 578612317 676002082 696759104 41808143 500981460 41163642 784789858 643160861 988119353 431021572 564085674 748161523 921769809 434358392 661104358 667958075 922658212 393108138 630856366 338846500 817280786 330452570 683437209 672188272 682731213 745310629 855041693 483332919 919702359 962922544 996623320 761585012 968733526 11844202 215429880 935777012 945409279 657076810 724952759 376310594 635183795 618581511 846563971 367495273 433622253 297404159 635883532 658070735 793953323 278108621 435334382 831936492 956583627 876333200 909961508 172713714 275175783 993723931 998655159 247736585 599177453 872121949 881643452 295387075 775876433 657129419 851423596 20760932 909833013 659319375 868802238 770843332 823122696 390905655 564507028 497333112 571266295 826307506 855472926 731839548 787438211 183081122 830596349 614232064 702290513 516601496 777231654 979625560 985743060 506539596 824169003 562660839 902457955 846455058 972597411 160178955 773160289 798785222 912791534 620722037 918752123 93103289 866751722 964792526 991081210 278832600 501220043 996832680 997086439 401750013 948594224 50335681 668739474 670458442 850933686 629899363 905173862 857522433 971958253 331171999 980835801 725632673 888892387 61784298 221203284 475177886 830009198 549840895 722561959 525124616 527789407 597879488 813277595 202173555 873368125 706145606 753705333 558422145 902935749 734456392 819849339 736781646 790457865 894465908 940741731 33599393 588656686 588762296 911866723 503686466 778822818 981288318 985485353 277179293 967528947 365243638 922406877 217013820 556437418 982053668 997539866 126145670 227048153 97812694 875478985 415175760 437334442 452347256 938406394 149648416 627996486 339898571 429634376 560095207 681070401 28479090 950033484 915218830 989341520 426455034 843393835 179933174 391782067 841430963 977167989 606578388 898157782 975379412 999388689 168620435 973731891 145118432 329608833 934413057 951217327 124140633 189446375 561288942 814501299 712355363 857213945 836542441 857100938 602456354 917789606 586273432 735898773 177676882 998877627 174894185 720696817 950175746 997974385 642381924 992449886 217623198 385102936 2545240 633445451 957178346 999203522 483450417 693382380 4186372 147182095 166480963 738448881 577707380 700332138 557503223 594041880 688097714 835787548 458983960 768084980 157093225 713910117 41620190 175974674 254545164 689458059 369753256 915379204 205666156 243500596 148130345 562444394 693343979 895125042 797516028 894342417 626173090 749706213 132752537 278874993 749357281 995954706 676926867 766557199 16087071 710126871 55289140 345754238 200357042 235253063 26658198 87416918 412388463 669640197 649180658 742864404 370472939 449265410 121992858 914966656 313331193 682999083 209163263 400829866 671482997 985546634 795519909 887611614 451787858 453556191 231247474 863592291 238784916 816174242 323190775 345791127 989615189 995470461 258654482 515737100 994091097 995363064 271696080 701876054 542687564 897785840 25525214 91286983 237393063 249595926 925086076 966591104 434801764 602275056 716928341 725249028 852520504 931609056 722962479 925552123 829989762 887861550 922589710 927115301 178271446 821565223 516194026 960236514 891268337 939474789 195431945 929081649 4036991 563108016 681387537 932359454 543982340 919899378 592551589 698885784 83958150 240502010 702248114 888029400 863551080 889478110 556948971 766986878 904797075 924170000 133417522 625661723 648472198 996756047 121018045 858879055 75282989 100094104 928350280 959481388 401818361 450822293 923734551 961789991 732446932 783125675 653734973 666866576 375653766 832541804 166406070 259853886 965705143 967577309 751675003 939923757 770223571 969142571 403041688 426634929 150643850 711888367 351150441 780431436 280425312 637540586 553764651 944219731 25613973 636488553 31792408 567648001 216577370 975164802 656324382 663210169 121484085 941592830 650010419 914732561 486162910 887620279 686197686 920213413 369174474 792188741 418322275 618116007 343680819 977926223 338941940 780844822 28854314 876628657 105224149 496537072 732875993 743533975 355122601 556828038 255047450 290785601 367928124 684744247 243004009 600447137 362775590 600285345 643214351 674109825 192225054 211633671 931558134 938454759 234435457 378606118 747066836 835805049 480779122 749016582 892057370 955076321 781376220 966197572 862875680 919627798 81946373 142907091 362656220 612297740 959542571 987235751 353613831 627586044 611924467 923255984 129333594 236558050 747664506 857709235 851716881 902380846 980525238 985076017 331048656 965139520 9997756 352670645 805995783 965755145 796794031 799853738 893848654 943431698 975533334 990522458 947494846 968407410 463697241 501371273 585004967 740963947 671251345 877026408 601994161 740179691 445094956 729510592 536820515 822395385 359807432 490126245 337544343 991881845 457918947 671167642 366756189 714447196 866803007 923508218 266667256 469897142 655053223 762887202 828358722 871953569 996334415 999822245 638516505 693325303 930778514 994854412 483204964 979325846 715952416 912483654 322168531 930086108 39069215 665923236 204509302 912277766 397479470 686833642 141304188 215782622 52008250 360740556 708853340 837818952 941907082 996111013 556419436 666844191 983096703 989909655 586983334 630978042 800425115 905074545 920823277 929301702 897656696 975388138 617984689 853074878 681026728 757475837 883152317 915307674 134989525 767197779 213921153 663557653 719820619 995822942 142397054 914602784 217013278 841778653 79197556 616336347 144205292 264476138 970765858 978760938 531488047 896232582 202334370 849112916 902659348 917681209 406028856 806879868 347236584 633931944 93162708 395355449 380416554 385762952 211592479 685624745 180407518 596524322 657007153 726852878 24196207 399514380 385652691 915889325 927367825 966211376 759076557 925023776 523861837 766496521 852495580 964422354 994558020 998588765 632276869 851770946 909515342 980000117 761484301 967587674 884542465 977591769 482746238 876426876 35715137 551735830 940002286 997771747 238252200 821013076 477826924 548468297 851975585 855500509 231579467 627830844 844366633 960879641 322020661 659809943 442813182 672875266 156093310 182765213 625540344 677542946 129347724 251255466 67553266 747660701 321547239 540525688 780438993 976368734 302020820 405896011 776137400 999050145 603444328 922473969 957193829 963560345 180739852 587319279 675763678 903526229 561660833 601391815 739707950 772504650 13360246 868428787 328378120 610852428 320129684 973089364 507818123 961999428 780622884 981888020 440830544 488641656 733265495 807325615 198337973 871836699 849169775 927798718 447268599 904874510 349699052 707491180 625129636 697983412 540788394 671682283 260087639 586072252 376815661 825298970 945940609 958172725 475641170 680324392 267094472 405108650 451467783 881163036 124194235 450631950 582564822 913183179 183590249 433722077 529159629 982525553 36025244 77719084 500604499 864927682 254508891 445769229 862747766 870851188 223845502 937410172 270205408 506527315 423986992 579399136 76674409 649781908 11478636 25825473 81981894 700770518 545823736 620519203 575903071 620681488 89409522 840549645 214494926 975056809 507803154 630211289 523850283 735958243 356506087 567053402 535577427 856869229 474785808 606252777 99454986 615063479 438478800 671017668 31875288 46455071 51850332 249299733 796029266 855986573 322178967 875002761 966829842 969276301 120688480 687316403 145971598 804076740 162338258 387211444 162403622 696636182 619923081 681224942 264603401 695050144 940447438 998878450 579318903 819302279 632049482 743056007 805614644 854966585 143101449 313148196 629586234 699018873 915244493 922848866 354337305 380095600 795470274 999909993 317012803 513818287 554013264 775582512 710607077 908075163 498604405 515959342 999364146 999671272 471980022 821328828 946068628 962421199 719037599 745272432 107090092 472993937 641967736 780750164 601108702 611051373 252463056 902426015 93263549 750372114 403829075 804235689 302633033 915069993 861206139 878460250 158881599 520822356 143915967 692162294 508070965 679280296 140324065 878928787 30371839 259707136 242995532 926316771 966471913 991234437 696887611 713486587 510834166 708288524 2363877 906257786 794767035 899691349 327630398 831231428 958037248 958227911 947755828 981619424 384929410 721054740 841476916 980075664 604403928 719199989 665358297 740244761 237764323 519302237 466414499 787812407 502887335 550321782 732527615 887297687 333134034 708873003 229574488 898853025 995455768 999805519 493482815 866823374 777561809 863503914 694555268 824073960 327791144 408090512 360410246 577649078 169903221 289118531 179534184 325960235 953237644 958039945 295385981 911130450 491279637 702568108 199783274 948294786 817306438 968918045 539210064 966028204 133578308 434844174 234805007 367980919 330064254 828301312 139837119 981541784 411329150 855856365 941360143 978713075 909207130 988075888 681785560 698972741 625208736 835184353 650890103 886850139 419280501 695977617 188595160 862319822 400456594 769588997 758550442 978609621 525784163 759050812 725999964 872832727 44892553 661893439 842607120 943434509 294402181 597995195 223825923 446026307 200479233 992189573 515557268 962899748 882410182 922759444 368185396 586800036 68278126 892567895 310904282 773095411 441007190 454265829 75769901 591014201 915863439 925734836 64019742 650346972 700384581 965517301 244058294 879670387 7343382 293471169 99080046 598143868 812854971 962131427 558147186 725943812 743296516 808466037 428310629 610561672 232891050 288851260 410153243 603835894 909678060 987393910 715753171 891043742 298134305 513038808 139968548 290732085 665631859 814315059 426602159 759204454 805712860 993472213 722567092 864542262 126102369 613881117 471004366 932229666 599461254 663782771 797890568 855580540 784180504 985154429 863762932 875319067 974981624 975395639 972692471 982576906 441215410 790275302 845675503 934787919 986029008 991949746 112150031 583518560 211476920 762667596 462812832 606149208 583863562 874490154 352536598 790392198 166089379 994784036 773392868 874394635 919374876 959375680 710351397 969297712 76114779 890216423 146953190 211951117 582842792 996352693 182687493 411838362 938631219 993209417 693699294 806310030 30062428 875040467 509223273 559492729 653163397 869686901 831468217 899100524 277499756 684094396 948884575 968962030 991188581 998770505 796433313 919400094 725354119 848230809 836440870 932381899 317234022 889042620 921953718 984162729 976417934 976717091 564095558 934319823 580671972 841251284 579999190 638868383 10236233 856888482 843457781 903879729 270846024 918940975 787008953 915804944 334246327 612902605 828433035 901395634 344604071 618503436 38730307 666382695 246024385 959580703 845932520 952346804 178587380 995578625 173339915 337078380 365951474 455448025 440331513 786416582 815956286 970810038 12281883 74478205 788858384 914832854 794057580 839243685 976923474 979982732 955401529 963026434 794681026 874989257 489397086 492633373 676485427 744342455 299473133 923200035 39742449 383630097 113289447 808655706 387489138 524874356 399710244 423899804 753635378 962280113 300491726 350372876 429919433 692199806 991894107 992450760 881101617 936533882 902718939 999601604 80271676 180362851 166806078 542683875 998457333 999921589 137239149 878590242 774944958 922009060 899097491 979416405 514549626 861684096 945268308 947713609 318928568 883192439 313865009 758657545 227679095 756792021 312989617 603962868 254609143 591546347 102990276 618312852 281204014 298484065 31846650 849667681 909609442 957462129 114635528 850619614 825496792 913921334 236710391 954842815 694922943 704007173 298388307 862194825 936803554 965533719 481939318 557442105 398894826 417071707 889400331 899774747 633003923 659805162 750605441 867417451 822689115 862228733 381708312 912738690 322924532 841752364 684175993 747677478 125225340 893573208 933247260 997101552 663070730 674858586 459286744 651846648 217266762 891480310 241752529 480871563 884286567 999688072 553199930 935795819 68445094 104241492 687933729 824165401 983157151 984363076 208540469 745910253 666749938 765105349 913657426 980770335 844803382 914784858 31719861 583705004 867878592 969154396 700412445 840616985 721756866 795061462 126723049 917171792 127304694 607251019 723905996 738687350 108176322 927238086 512017456 580304359 483003969 901938896 336299284 960527055 744215956 810608413 743149062 950714075 955917545 992959546 744381397 888953404 488839060 766283766 554384845 748752087 828062021 918049660 112336656 985538651 281978904 584658658 936864260 970557877 528602882 879456034 479036019 707410501 731675735 869152779 256013433 663913205 86473118 405363980 400290311 525430122 713936922 871333611 42085456 357787927 347244612 913495476 326779829 414953423 695503783 922604372 702095646 782415053 841404718 942276081 397147589 976872045 558700324 915751220 213230783 444524135 371239407 659927871 254630013 701833515 145825839 898005847 143128997 838733301 431508094 688748323 96133446 434378860 163233925 743998385 701237674 831263438 369804671 654970662 544137649 824918312 945740150 959056530 30554328 519490483 609025235 826061656 20153315 803637736 871997974 955264556 912457076 918405277 214028315 720511492 551307368 642419944 905177106 926727090 664826905 723690203 891689249 928369596 849328274 961022336 936782937 970403061 844521935 911080184 149175891 849032299 345007959 445280105 546857595 985309602 821294427 943511448 237510723 477848401 670118049 885763077 305098107 924020588 253436714 514210607 359801141 548577171 290633818 561195941 44565175 802124112 399639725 840916958 636164859 725394766 765852475 815892268 919290560 963052537 888425581 934137041 14118821 596986533 998201385 998300932 129612895 149841608 523596731 668654621 433483062 939518101 586661746 825336757 796865615 846940174 662318369 967245239 148026101 871707935 864651556 939403744 948057416 992017236 293081465 685563932 108974719 110962970 404105602 956596949 313067073 781381194 30808922 358317662 296688845 482060029 950772262 973856706 372437392 868719278 994281439 997123306 979857978 988490050 233521921 895419668 198328196 619333038 334430192 671745249 828152489 952723284 829734019 835666870 330069185 881250638 256750230 951980243 402798923 724691278 976534657 976604341 56176073 614955873 312546276 947315527 521631592 645542117 178118727 388358117 654680564 866476270 496883126 875554390 558197481 975722034 793308464 898547531 902318921 962055916 164266190 374970011 717089038 995465793 294205601 800361170 838313058 870037006 935121722 938815076 321788284 388253701 550281649 622555411 657328726 967791355 963449335 977477839 745451205 863548087 506908188 683582684 320124067 623145444 294683565 520740066 702045638 753360326 506377931 518851077 137213848 203658805 772097562 785135134 556340854 961609292 206897868 809286896 337695878 957741423 512557275 674743739 83616905 171818340 583123999 895958548 449321570 700571682 538452660 922032691 208927798 335705936 927384759 940998032 617895787 755784548 637350260 989571942 783380548 847609938 959425940 961971040 795966229 951176895 475383119 783784585 280465398 913588515 578317070 945121870 922666581 955425359 339750213 667865903 22218281 495747159 390608667 647390755 465594432 466573768 509210865 680386455 255213137 469212100 46885840 592546348 536820767 811352284 1740709 155347150 367427419 656106541 957449678 977698402 269737722 444918415 207644414 888281309 705194978 814448568 923754061 951658914 474495632 844121677 47624274 822280787 418145598 635601715 290775311 397597541 505870772 541856491 859441777 919704920 207667738 861890134 287883565 443660817 101303636 555694138 296611452 529059891 602526513 933427503 54972426 906860992 131273303 588034388 88220397 741651179 432772325 658159721 491361269 910503957 975580052 983716119 7958106 977067403 456412016 628734387 14165755 902371325 600412770 675181336 513093377 761121797 352511710 463585115 84507126 883648991 269499490 516322920 104630213 570613336 747369476 964523499 349166411 557391197 679078579 963561292 204539311 383600755 784651030 985958382 259643524 658642179 658058777 713547036 610707676 777915148 244839230 518707796 623225103 917653721 893214442 967620843 393490238 545463870 239405491 752787445 764924530 879150970 886224222 980609179 900281039 997683552 902057829 947505200 297286030 413619063 617253807 990199353 815578553 845748640 752883471 793344112 793509099 924784033 559173328 821448740 686668551 837588853 184269534 344698800 248692673 629956609 470692167 833519646 257754212 847766487 434984757 539568779 122720727 141801967 957518423 958876468 364409119 660341987 282635394 569777943 651552424 941681962 824767440 954382600 813340620 849088322 883031698 889071254 668523565 917682486 746047190 930652502 983943652 994649940 335159844 966902791 312846788 387189183 704237692 881140445 58310604 919785908 782527022 947703092 114339837 530620297 687294606 969422742 298566155 860040266 277638278 326031173 877627991 937326992 358194643 628164182 638842608 754019336 198461517 617342559 226175912 728757040 278113404 589059448 210390316 413451527 62418363 934280036 948055771 950124554 642329196 745442098 459634279 912284686 17118516 205169155 657995266 782345495 552346826 792734971 354642767 453623425 655057629 661812793 801681448 968780567 280397039 385286277 317341630 392858200 613920532 782518078 826345471 850794522 555126426 810211536 597786309 994326451 262705471 593100740 232840586 319514018 957004150 978040987 964722747 967166177 473944555 690083710 126555290 637052399 231567998 283874369 42056574 676693006 318995558 950409050 547114313 762229950 465612174 821352985 659475127 698381645 849781507 915196641 407976345 451942027 807360134 933743224 198548768 732068842 243471950 791607529 250048525 477506786 995728975 997997531 519014163 542442930 425631131 686421813 647545396 710787086 809131010 834160769 570538999 679507326 821027997 936988111 550531169 586032497 104648710 973950965 224440269 813067090 864322295 923143866 412042207 934085007 620626397 795070022 120754805 646653388 46328085 613276139 306090740 445277758 777385614 906026396 394566494 757418683 561100421 745707057 89976479 198739597 96982793 706955959 734522933 816500142 362178832 665784279 260633531 512919452 81471881 133326082 503568488 803065368 472855395 606923098 212853763 984463461 465628699 893802651 990381652 994359572 644466938 729710167 944404391 983800088 165568223 345211692 257891928 744981971 863351227 925925069 246548095 973632959 940390209 971614291 301404948 794938884 263667017 388749704 813404373 859331663 696647465 909037187 957646801 971317377 841732011 892931146 492136832 548342188 263573571 446501226 559914703 850796628 489286312 596524162 231408344 336504757 718405389 939262202 415134819 717582720 458280580 858585923 470939200 677898452 395262253 999585423 833604750 897533411 853893770 962160129 637653597 785320323 584465859 694258431 642651852 713181747 562085778 742770527 360592632 917892212 840445586 958391539 600293865 839792398 138551703 962607013 188881867 976239025 529665486 819502699 351708771 852795156 728233188 875352613 922687767 926937457 463555068 737417094 345909093 619800739 763250291 872397199 79517372 845752889 63248795 372963157 434241555 457231826 982365595 986422433 431100119 505360127 924269991 992407882 530746872 875727241 927124058 990708112 960880777 980966021 715517392 771921914 547331521 939449236 378562696 741746176 283006224 535478159 27983370 969770214 557639642 781156394 548482815 779575584 746863626 834104961 429127039 529173138 846918063 910224726 634088299 989421627 380708858 819922398 121155497 566907733 148099883 929960203 165248140 202560578 838947842 953466577 288642510 763465744 713376716 776624501 5840246 361522074 794189607 854129004 312103551 544985690 444866038 811927948 869430400 995475829 631015861 848554605 680304556 688343785 130750693 628033410 107223749 929109997 56008273 844540418 333346978 655972424 661049753 708899762 605021498 898372785 576497247 662772866 702616004 783744698 771866884 850523648 447798785 661605967 399025050 454883444 271909736 992065265 373733361 698953878 32369418 48289530 622988046 684294177 162437700 245708286 452517485 792850999 818716352 998288688 365938317 434335606 765364456 806903735 508140648 599280235 616865191 963509387 843435244 906315047 381802855 610438524 290759864 393230992 889814829 936821265 497731020 561072543 216393648 781990404 497945486 502076793 557704386 797996538 40114717 968311468 442064529 792415206 859042830 927638242 24027155 446141054 157691177 645838893 219838848 674409524 986630281 991278378 871685401 929483894 126911492 582536996 128851496 475764220 118487404 580001755 39219116 358498858 233852902 867290282 613174678 900086513 639294265 923424400 968382535 995928397 358569870 410237400 968485171 982918175 514828276 522438073 453390572 677353471 221603228 872668200 417481932 453939483 220284919 921641106 869005103 922629723 65427330 728306672 951456700 980523639 79738212 600152248 818970988 871601049 661700192 816015319 541680506 637497800 242821904 488047411 702810991 971562799 727690391 886671148 231987499 322605292 350155387 471399639 915594346 967331285 442493851 771827541 823464870 967036365 508657204 755587459 899523251 984661321 432806446 805563280 925167925 936916008 464655935 469994466 626700756 938547285 35354251 58226071 630411366 725030762 261189666 987037678 603196582 986536137 780858998 987378358 282162362 798945247 362804491 837665548 825685457 957118760 499855857 539044578 738397304 944013533 822660843 984857906 9098743 476163359 68032162 750371307 776359702 987734778 381523911 422709724 178416277 856328410 610050869 633730486 607242702 692115213 151316715 572500701 146230981 859305693 144243561 158797497 814553026 923228370 225248735 399190216 345171680 821049888 366624331 444283291 905740490 980722418 649922195 912164316 731078969 778289627 444104817 916045331 153440388 548139608 347378361 606679595 264073591 735832466 744218599 828268177 161556532 592035532 609958176 808609121 387981677 706521213 507297392 880138006 444468484 483652523 854671986 917305404 427663891 554184376 582766520 763168983 189564170 790649434 642334532 967029352 584677705 706116239 337978319 714771301 633882828 851063984 105654713 806079940 622837871 893463428 745933840 974198952 92563678 410689969 830440928 839695853 825956704 867970833 856161335 857777365 631849774 966016550 578426278 606634771 696102158 714305552 651438104 916659134 913268613 940329795 896456395 909303228 686660850 852409806 453477585 946384366 630876098 778706882 648277662 769714247 325572890 963739962 562656676 911089852 66479496 155015082 41965530 860186728 888890253 943318018 209099056 568140082 495572471 544291979 387633683 828667908 781956019 806782154 377600375 610521448 534527346 605719371 366880230 461736072 14366833 992622780 473606964 702050399 320238765 796860147 982570071 990651836 240161940 687074186 595225565 835968420 585597361 758756442 846881899 997378636 11902231 170404776 473660604 550248153 891994702 930263098 135560365 799466685 363001363 850148547 958158609 972927996 706619781 925978112 282211931 338992264 701062866 909350269 691786877 897881794 600718542 809530382 1828309 892447844 523106411 655198550 763810222 866797264 189820977 317680525 713869040 860712253 896542081 952263700 80145603 832747941 733054339 803430419 428392705 967574884 639047311 771250245 448158754 505218487 623949132 805140021 470645489 546973286 624877314 808128234 619890097 886994984 494384352 528184076 424754546 928262603 681080740 799651965 349028005 375652647 717343197 732488444 571714444 717306875 965133369 994424371 326079377 973069791 160507379 878916726 42803545 570961096 709639309 782609246 255794218 732417660 966031156 991567929 570989326 682977308 84614780 393775615 235363511 759000652 195307802 341612016 602410173 860529379 282455636 873005947 211046570 272487081 703814415 985793231 741730351 897008247 41365984 439870560 64503266 811040326 969183311 993065581 195538901 402686525 432048756 525497363 754294186 853723037 353813387 727610682 328145458 907071968 775922931 928424202 62006092 210932245 297227383 422232417 460321171 815276463 571569739 846922127 850769863 930448805 307124503 460792760 822294984 980454530 764622311 930721639 29789224 953757158 465161101 502712724 299466004 334349134 825040245 870186200 404486748 750630092 735106278 745362187 748779777 980171944 833891388 880893931 537026709 667554258 611986275 818506996 180435403 435518803 549096592 967336623 300362783 921564143 481628613 980131354 621984032 857204135 87384824 556564610 436000599 704973939 281518445 866377574 4986301 771432598 186610858 450266371 551134466 647954524 278176996 691039692 328354820 985851193 803266438 887915571 652626721 677241775 11855228 632330602 191460592 499327298 756710149 893664355 983753 743507672 248576453 670410753 507908739 778689991 969881850 989271928 691896189 954064528 377297786 797645583 243738751 709036523 355380305 466830001 162207270 340278556 401729997 681088132 448477029 501713823 807140882 970802679 285410792 750992642 848900617 925549538 993801486 998092523 77990875 817911986 34607593 335795572 843511653 917551236 171009708 412203044 240890804 798001514 571345239 763901286 513149353 956299468 362688201 526167152 338186377 735749374 290725589 452074117 528245090 532470774 513817827 541960583 921688928 947494767 888184853 927717465 148076714 869855180 959011755 980534477 73031357 896670127 248815259 512780721 873298973 907655811 114515933 741316762 498212817 967156262 368860549 738953306 339442327 472078736 579938063 874862413 227173515 541864542 714000833 959509434 827833675 854071479 425684803 917318204 69353904 418561773 749241591 857172188 278106961 488905132 972323529 986442421 928814150 932296146 47238301 449736568 49005693 419085044 810681680 970644103 70832937 948461285 242029409 391007796 354134996 415085418 885650128 984497221 206657331 687829572 241487474 411151462 114092228 992164109 770425173 994996358 518288700 595931312 175565546 788476114 914525661 994674790 666732547 841775981 987817971 989487191 167906265 894538617 371044075 686482916 820426138 835448681 421088302 760558224 719006266 926401940 125569721 468911427 102607596 887527183 322446242 597716291 622275300 744568892 265472133 697791739 711973448 995832943 515897824 706895139 136672585 556038304 260286938 736672621 685694256 778468548 303484483 346002100 528968082 925152833 291355834 692838871 422210215 690534044 710984362 881128310 487853520 814005928 137155431 286205082 325972211 643093663 321591221 378733435 681607623 882060161 822122002 958283619 371801247 856569305 240598304 456673521 911438172 927217596 423086491 791312361 219037980 792809079 432256352 572317113 884742215 973469976 109136253 859124654 118120745 334104822 579171172 596193232 631864444 796184643 658955678 939097406 817537805 820583879 690203675 708424999 886376807 964108639 34087576 932344893 227291704 725029430 433068679 593425140 464847302 707689443 568372003 597272081 5425193 345788796 866734527 928120711 97527481 512516373 31168514 869052140 381377144 538449595 158037131 821981143 653662251 803560535 324272950 802236745 860137947 926021113 25211533 535219202 882822065 954691736 114927056 962861972 541708681 683362907 792795414 908145872 21382980 553854670 573984494 992933692 587332813 670741625 267068477 339173808 547532769 811448857 45674167 767985967 948247039 996449247 435338966 995392056 337559456 453650351 437515312 929287357 250007281 340625725 61560160 799130698 511309001 684577622 523313070 979831822 288160678 494643726 161829183 168599317 922944370 932365991 198912424 984660135 414200707 807316935 950024107 958669674 532317478 958803452 65767057 362649605 286994943 464994130 813240189 978767714 567764792 801301131 688848437 856520028 321243882 646154925 881168892 989672020 651905725 797329292 430323816 631490787 590498114 716120959 837283190 955301155 418376730 921548052 258360043 633126947 240267239 873408102 176230030 216560914 62033807 617873182 762735311 979293303 372473416 489631319 930990786 978199315 845703115 981021146 886704682 966235941 178598262 273130256 687590992 874726021 627723848 718192029 752123295 780533451 458295101 750656006 228174466 700733680 101451967 683273078 555978221 940816104 715068527 961552772 183251491 620983247 498615559 902635224 912548468 952073130 146563694 901524377 18696367 303207207 489339167 852230823 545851440 623381220 255531651 921656057 442432502 536416378 627385416 971072511 473885329 769061250 141080931 658120025 200991893 629889219 720242367 733017035 101640952 511830965 466788475 576350266 884290482 989357652 495741070 626130640 347434491 641881227 366063944 383073029 862952095 921893126 514286765 521483017 399604695 400313073 177953442 957687229 810824481 923747634 997090413 997510364 528328754 854350999 673215182 736860964 152204538 399599263 662444733 741483236 647010869 706838945 580687814 932219323 27008343 38289781 282080391 480739341 534084678 845733329 603361286 885859688 874503879 878262383 251742278 942113074 786077143 899113893 432556746 902955383 266058387 790136715 573227667 976803005 933258904 950572991 89312245 420424380 621902758 793896321 564156643 736539451 959994184 981349589 490306031 591754279 567337006 838783357 178924868 858100091 809369650 941791227 682797295 858341008 69740196 717166222 990325465 998787093 102572487 218738248 288944443 894816906 240357841 303753555 343196975 955738648 933057231 939571583 134904362 275081382 871344045 928581251 485603197 820032286 668643064 829934347 343083445 516809864 529758500 658127331 303532407 511041018 664088572 731239353 364742402 677077760 564172767 777320268 687118088 880137165 469303625 995040490 594948283 913480425 23538151 158500763 932252769 976370348 60022337 282712705 473793488 838193994 136369864 441630259 228968448 236043302 143969123 607779912 248289443 438187265 205354320 706648292 873129014 920604946 29463153 884201715 691268427 995716510 964097679 995749762 145796048 250940497 887647201 946995614 949593493 964938497 347129619 913760087 479475946 872053613 833592196 972895365 972526041 989991816 287470003 898189179 562838568 646357667 439062978 764711373 832455108 884672143 660472041 855135810 146969053 621321732 391463019 681509324 62886649 970411382 823368684 910830968 853225972 918035405 263875627 876893495 797225114 828690839 335347965 971509088 620783617 716733611 89842014 493704259 892700041 913496741 669844156 727155652 309825852 948098536 480956153 573770709 245078830 483630987 310451254 328996566 482296756 507871565 159444963 949911929 479530029 628152372 444557150 957282464 963510822 967448015 955197070 992678396 524934356 956494027 711332655 889672822 573640920 949640388 99530894 850536929 971821064 998369060 809994708 881391061 883055635 887229032 700281701 849539364 402701293 864053997 640724019 858510257 763126693 864943368 966065583 988981437 175728347 634535624 556577981 880479661 95917531 223364011 657830290 781625534 804965322 999084026 105943257 149033110 653180243 962678833 426395768 647302907 623338034 704445765 838862802 937766593 683018375 975442996 505968306 649938825 919609451 962558463 188375814 971435443 804682690 887569159 935798728 979686402 794518284 799080203 907648025 949902233 924305372 930451488 926420429 942669021 319347834 319917099 849462266 866424212 492465751 861584675 663471489 933543330 880507914 988042747 150703454 750483800 844491180 921466530 119712315 604448844 943787294 976990694 389608554 789411471 606611524 757643448 144278497 200701522 565247299 925604419 7934746 548214336 38619440 614240307 597306682 966916640 836317714 864214003 279402840 862281466 532392188 993057916 783164952 808277848 599990586 785273033 317803502 862234566 890806140 993528694 355193161 785999522 947512432 993657597 751894504 792000178 329924298 485926658 137134776 314321587 578031839 883005337 553597077 811233143 341782916 683699453 898028059 928580145 721231415 855136011 892500587 945903380 932879947 934365316 669615588 739639006 569354431 960618015 172654940 567655892 31119887 574376444 131085321 499179797 474705431 731980030 103233168 413859258 653846600 936500911 311472528 957027202 21792701 629792398 423127344 728022533 72011044 481616097 60076899 886090652 564263034 992559609 516463417 977196454 903078237 998628305 19655592 889427261 313877663 607198535 803982080 998118508 939127765 980536963 252578727 613159921 960659829 996596776 937227161 994658580 689176507 737987476 492412621 837761876 705167040 924344366 184675237 514767645 256827533 289917533 618684259 850564620 843326067 922217883 465585889 970545861 444287383 538319711 760926521 854024159 636768961 881942657 653595132 719487170 732540349 997749803 236070324 508217286 589469470 761502345 732150814 944431221 369152970 934490041 343701215 390596430 302889994 396285283 362486799 810200373 537677996 672186960 887367100 916735530 870876198 915648262 483803024 631148056 381126525 842861634 346841953 778231348 590333772 627009077 725503073 918992858 157399385 748344991 393957496 782246988 22353229 322703687 786066348 851518524 51897317 857493111 913023248 914291360 223298099 286732435 979653751 999270297 886130940 992107052 452315898 978553108 262231002 925029791 953490541 992037484 923421432 990627990 531627978 767186865 711539067 828362322 830423874 974538619 164200677 403548827 398965562 681952601 489756607 545199464 283291998 960987655 884463924 941705126 660252607 738109361 282349189 587905961 455940572 589119003 844775020 982515028 313094560 595492877 650790566 682218953 138716968 322622367 577643506 953679247 403417085 834618235 970561796 980761657 754429087 911182845 948367348 963427214 944999011 958310299 602551332 658381993 636251748 907930620 517071451 728729570 380156805 777311048 938889799 975254787 906394381 933605406 566549703 853889355 449627249 652520458 802254833 890991762 823320165 872711136 554181953 587943427 667820837 794036480 389485988 852155080 726296714 904434204 64484334 545078577 157912426 539974355 706348619 868019003 304529470 880193851 707862321 744932062 260772025 710100660 363078705 409736297 791518230 844613612 815896619 823964648 807153453 835362201 844657598 963329359 512461595 920633528 220010993 776074971 9872117 233404343 591651411 710314691 581238563 654898282 424907534 578028036 34777986 331705564 393161411 714843899 177253574 770645115 273145248 977510755 826149603 951672249 98502193 544893591 887483455 969412307 934240868 977291619 121756824 382646120 234892143 755575613 953114712 960106831 636819614 669866474 221128983 614777240 719655049 722386574 878092917 892636951 252883071 411628012 302521510 376157882 477815623 665148029 342529105 735275874 318075462 321358198 716696518 956718429 2197255 776228932 205930346 959460558 820413656 923378310 251818950 562622331 674963884 823167510 9956969 451391183 455867471 699687461 665064817 929216256 123338498 935591740 394085438 786883990 618500374 679575527 644312639 938609242 810993780 960063564 263902293 978263538 107205919 274241423 305949250 473656321 752274004 910574515 190222855 472807910 749689063 967491418 354951447 946546806 759955311 846938648 797880824 901747362 920306772 969627954 697310471 966354950 261687672 669741678 433450042 945205657 576705207 863456185 932039177 974667543 12941835 514633294 405005918 719901604 783603669 874702653 187902605 966771470 411530284 712181758 500048631 796678845 689523542 933018975 895457265 976983794 476485399 501993051 543858057 627397155 475577226 800581255 529033048 621602400 403666798 796831293 57477910 581651560 911690958 936717885 634450929 886054923 938956804 960398437 845524845 953422676 602763848 925008822 977402788 996515643 859328389 893682997 282017192 580140785 994849979 995890927 759472628 999337459 23223582 914100606 512969305 515630556 156082278 264189110 53769511 310316424 76367144 455788825 538395730 543004374 143055406 651545994 324584001 558187753 330082673 779781777 911418564 983570722 275567805 421087802 440873138 541137978 848447706 981504305 533212145 738100370 920586846 962802982 213220588 992040025 212161804 917584470 608909023 743495133 330113547 698353210 208921374 889547041 579822770 959464919 755587560 784164197 678225961 843398786 849462163 943529060 320144791 966649469 512607286 593093694 787931243 797442949 245491230 337668829 90125354 730444855 807183423 876622901 346183808 987925997 53957174 780942457 107079414 311931479 808695326 963056256 587491470 756048424 42107715 304241108 670934283 793779019 775066509 879276446 881667016 990717361 680287173 805131912 372044180 621547219 113879622 464643006 364642739 689936005 12477004 228804535 274812687 787246269 705109912 760764245 389923220 998795756 962382936 989127206 977867582 999500682 285381727 962990379 777095478 790634546 974090754 984228992 436538129 847233945 582028801 758784264 773621373 896069065 228962223 782912162 524953836 645340828 982235812 985852988 67802663 889077913 601810429 875543272 698048322 711159036 326606504 578891274 426318243 631949032 535559104 987084694 998373710 999004396 430391707 952384636 202610310 636041133 740092092 925825609 678424448 761579424 711060066 751055111 860213563 892832353 978217827 993801675 639414991 768342521 481196316 695763478 577797230 992096237 468492259 717301066 526866617 575357431 5600299 978999047 690961129 985657050 296304630 612562997 643407610 886145337 742076998 975835965 995818766 996167626 42704698 807526094 559018073 567907483 135989376 556628609 683825893 904353539 177949359 863921087 812419982 829620886 266865510 437212246 856048729 976437120 65073632 921052964 866930654 939582693 679815595 840393599 861145064 986326329 350797485 731652099 81359810 861846824 944251867 989213918 214079930 958922095 761902119 941596236 563130859 767329103 863122285 932446914 582921157 716821596 294116273 579316540 479588128 745119760 83718845 196238745 762391589 866662564 239761460 649216985 43311807 411172828 114688289 144019889 6272029 14654698 363391720 936259821 73839130 873611058 832268629 858690934 382962113 585938582 247523378 725208015 633800715 700693790 433709814 463101903 168937740 585175275 109431652 319791163 88738694 603655953 655277583 904537477 425623029 480093497 883123402 939626533 31621837 497436551 263692488 670611325 549418843 735537473 307580775 381942829 888823466 980445850 681876593 753513417 898825090 965270500 452034532 690473417 981261531 983490123 727074710 888305468 998054725 998606951 800136485 871570750 583167181 728633151 721795418 887328456 425873653 913565197 69633240 943370764 177828458 405159768 909169326 920622309 261165314 961252632 770660973 971184376 804695093 868414099 996274389 996373230 224796419 260844274 504197688 946053721 557671790 574457286 921975987 930448951 482710311 667836734 335463177 815701204 526905567 875723365 992709953 999145995 337278390 681748884 507171192 921616445 552490273 618380571 727779663 922092658 711580470 829932669 46299657 981273387 52291189 57163722 416769996 783866720 731971321 928052846 764637344 887500514 615069685 662341739 648332240 729219288 70280566 601792965 890962780 957763618 583838134 791628665 287543142 496193493 814624570 857188928 147654501 913737463 619067613 647822426 740740475 969669078 793288431 894269864 504411305 615780164 632989758 690000120 526769144 817054810 217103640 219245232 86665022 121744689 804714154 906572740 266660815 826009498 828481255 924224830 390647226 544494057 30884863 876747655 936788831 987481774 403147483 443243025 172879687 975967316 995741322 998935001 316163647 575648226 203220645 515507665 817262211 871317390 836778069 878498891 138719684 849690457 725510291 828400856 892313464 917256968 675949904 681083351 595992371 988844693 940013762 961140503 88144297 744884191 235217641 900774639 365143738 908629389 40909339 602196810 497469565 756598715 589726943 986406902 525043911 676781425 997821657 999116703 283550571 320253998 599887304 828350865 507829598 709279301 523305475 903880227 675166206 911909703 369766287 775838018 553715341 711946128 520986107 905905567 184065450 569200201 8787920 987494108 889964412 891543157 739671600 799557440 198675347 812339911 794410449 849286976 149838690 999587712 770329461 815369251 584489699 773413772 366926019 969415597 791348157 939940882 881334815 893977414 2820186 616680465 894812726 969731570 972046802 991350131 69712398 148520936 115295631 201383333 86410286 189721147 186200553 235049329 426369961 722006993 40887026 657612628 332889723 964743258 332684364 570563951 44328645 665181693 500446858 859871673 15728834 973295511 307012148 942892927 311555988 619675573 862246273 916728830 918797885 998679962 376177596 421528049 277299841 679614489 822099783 863760930 321539874 333684116 200867609 208343496 382764216 663823036 797125780 855428041 367787775 649266848 636681836 838927050 956265249 997852710 551858982 975014472 670655647 742178307 288296397 715369245 946673166 946739484 587422835 952469369 171757209 779552089 658251170 829804627 73624617 239298079 410155096 548479552 197999448 839402542 261962640 411066983 670956433 841821533 867629409 965694526 448714877 907955659 121912275 291972440 427181015 578070883 54151931 693342856 627586580 785493843 905764325 933376287 67672309 855820779 558672828 846058899 219041938 361033827 263479788 735399409 612837890 714851886 710864240 752990323 859913176 908372207 398062981 764488774 603421056 786378735 266841143 917923443 33560822 149975427 423978350 799678286 606213925 889789887 766278571 837129743 813809888 819463406 272333447 632112657 57178697 358699238 48641309 648450992 389648045 655591273 203951246 732507609 794096228 960929011 26598315 128651305 160639219 692556647 237053637 341409368 543640069 895477492 149160816 907686096 907879730 952480049 471219250 696499288 20257300 55953191 418816054 610765438 812235649 863399207 905382804 921643869 776771709 880765277 171256479 486147525 149595292 239202342 95673102 730302809 581680826 705434652 988140229 993672429 117400268 627993714 531042450 807308868 997936475 998309977 973456312 986230126 164556653 404462345 79682983 812727819 546127352 902903264 96923564 630911439 545967993 963448765 53271952 985854026 626942006 853209089 953192377 966905307 94664214 731828131 49915410 258867861 899239065 925295182 814718435 877705968 856456825 938031006 501263092 669325969 39586845 691904241 762394192 853708606 504214622 926099438 642955210 745150048 498812288 639475654 522425201 759758549 74893676 831083452 356921243 908256763 429358784 722378315 152227063 722661722 957033668 962572308 977950366 995723881 931642214 940225572 319431705 697622437 771138747 846539476 209750109 268763345 74383252 665040580 768519510 810263742 466806504 722596707 774545261 959080327 367428135 907660019 325793448 711976844 67612062 999163335 558110661 863503902 175131142 828447165 840815071 855863299 373850683 479523435 283347716 364036453 974460807 999771853 960860143 965911121 984403410 993458039 251053981 511546843 297568890 645042948 950457229 968427264 148590877 311793274 874481972 904979261 657580212 841770398 797412927 900841239 328483759 766914733 427458319 430072640 356377052 379193584 186960784 914108431 878771640 923057886 944573810 965969717 96081119 710092924 283068014 707755069 550570750 959714013 322871359 815536972 963173193 996069788 95887869 153681004 704882219 966505822 151613809 224122200 736088885 737131415 893180851 904853666 598855779 734196445 25640666 710771657 639093303 818204379 44002033 370302198 723010843 867879617 349454108 376134100 439238193 956144894 426432268 616405150 811287064 889848520 725108526 895140439 664460312 977764684 804768350 976080727 993842025 999455719 662206749 897404063 441716840 780788724 444938265 508137729 668674235 808534588 188870172 867895567 755314658 839398401 809719470 930387449 243482193 807015491 966213158 984175852 770620056 892281848 341438139 833690256 736470436 833155088 185184913 971115512 855980891 877942902 936434474 947845036 335609991 516590060 644404909 954740115 542974663 795134051 479590038 796214082 55869799 244575472 514221893 556020059 206368252 291062491 87343169 963009248 737661582 868334100 175332863 951161253 436854389 557396049 433890913 549866224 461449239 889991353 847918862 862300272 805626742 852000887 540931553 868897883 184412552 864848593 15167689 171980552 82002984 829351373 847975132 906899845 524836091 868242130 737016384 830593187 164217881 630816930 426557190 509589882 349232104 678468577 949105629 982494764 80424063 917552831 5990659 239272763 411296727 504548473 554117655 686870023 411098529 546603008 338651804 447180973 539309962 747838237 200860659 407334722 207857670 857545434 126963429 872478198 249254829 966649070 115557961 289315481 875502159 927005194 170579189 791546819 223896012 994703185 61923570 195709848 803415572 855316425 192968334 303011683 989353039 998937504 487066152 536730094 349494147 528645965 262250349 592833433 916836121 972110017 943137715 982190215 620096912 752567797 453076742 481675192 816724043 882856721 141437289 610990253 362441327 418141404 713728734 849997319 857051270 964273465 995021334 997775215 326523330 757837890 238135611 787373174 2695457 291571268 745829939 865959078 865433022 964439641 747289005 828018834 665813423 669556052 60124251 756350863 229025582 825459989 779771289 962427980 861186427 886551971 909834044 959017337 296142405 605230243 335127209 916040970 337523504 916946943 539832121 664539030 470790585 663593656 283667303 507599429 167596836 340881955 632109812 776894160 534736087 699987690 535506258 865329600 526267092 970926052 905303821 918144791 839791786 935121215 60726190 591720975 553881170 742356146 809235828 980604453 247036305 535153368 870781194 992517205 845510274 859081330 377119682 535471737 908596174 913191322 692636707 719900957 166245371 399923823 26952702 174380835 938574447 960746536 239383267 726073035 124547322 291050116 996421665 999667016 353833906 880879106 296428434 655887378 865589547 935489239 664382967 815233255 100675953 882417712 639231923 774464591 970406770 982608496 493135186 685348196 782915038 793023163 937144122 975407243 831688975 935190366 444124621 457510691 978106518 984777949 425921467 551137948 15718423 213766112 151832287 777491324 316826739 474436078 63267699 200419331 287697287 418123742 796802406 886433070 235879208 620145537 801051459 816329095 988498906 995463970 319602280 856353769 855218919 886310334 517525636 636183105 586575420 892785633 467258298 886447672 304969979 779702640 736990213 738633021 453029519 484967324 329750296 872979311 602300135 645256264 142893280 155315503 363101432 952538615 427211948 831844537 222707154 859239890 893968186 999396936 289103761 920661332 76715152 526263436 178691998 206732075 580349006 626180088 897181464 970837544 466716902 585174392 792664317 962201532 86786746 184425436 598394151 816928738 786039227 905020277 162944455 598753965 480391556 686363605 124783485 157666665 10511078 919060886 441905295 663008566 796460204 970081239 961713685 987149927 201444202 909658178 341138389 990786030 85258610 869954885 672196809 958997750 188913347 570676719 607471269 984986870 974539851 983557988 975852686 988634914 132567199 500690528 473316410 485495990 303248894 752329514 433484253 549274607 114584414 435692432 500823636 744497277 908968204 957201464 814112311 843440977 941136820 948003884 299082525 821521992 786530947 901362192 535397060 627477136 988710730 999156866 259523388 711987728 147313490 289515483 452596221 862105778 550121149 886021285 325172824 926160895 872966152 953601821 493999603 962908563 98144588 365811205 654826923 865965766 750351979 874524766 532606534 691435119 785901169 802371895 504361135 794293342 637575594 986667626 664128743 848653022 340936515 523450940 214805241 975956465 764021690 969585838 59549555 654657803 1218463 872561202 92481785 270529051 374807442 555898517 568672680 820114639 281817227 623637669 225887823 768537439 437473875 705277946 28260483 201749197 530995657 729882410 55468010 366769540 385667366 453996129 769534051 968042960 108548490 193310822 380540937 867191239 710666388 717670002 173435765 547482322 129258660 161807270 499570623 911956578 689233448 768179582 285865568 783343197 587423581 639153417 512736309 927047073 133601399 917816730 667188778 748737022 942470562 947159006 670047468 907585664 339581726 894400486 434076002 658759509 63618244 579111229 574494756 784963714 501314854 932490152 594929614 718777996 171814489 780675339 790710296 986117729 767401912 938982490 483535680 737515713 985536615 991770839 496853421 852253925 73146739 761075462 672730399 790175312 107255612 216933068 711249457 769028598 45350390 244434695 551292202 584470906 344483529 558049671 577953047 595981521 745081400 829313084 187694486 900963374 905813268 948718511 659597743 896195247 307983672 948906132 587006039 860714609 452447166 802134194 978847729 995665022 725490088 900371800 8752414 334774711 244461809 942296715 634249543 706980653 483632437 633450588 442152747 568754791 48414339 128271703 944934998 970044899 264499328 777040934 479675957 973799905 876303020 943987682 445497187 646034958 801281499 941551295 930100527 967276936 285206673 935942275 275199250 680157848 445020254 546713805 92518970 511551032 692134143 937056388 362641067 470476823 684054900 944112473 653154725 906232951 336780208 580577569 628513565 991544035 289336604 574445735 274937280 438582763 102225194 690965315 294796367 535276951 665265333 962621737 538524050 666646620 14912944 385114851 315490485 550529356 978421573 993072550 21532332 826620259 461296096 876466687 417279966 923519936 381541190 408287990 601296465 691487354 633720661 947330537 365237458 526424244 629358691 844524217 405533936 573022285 830176114 999258562 962810065 994376167 718052937 883691158 36613040 112000764 688552472 943348449 123589786 882362854 503513840 592059083 546732825 760707736 949220164 999186771 779767722 983244056 232392598 496432605 668395432 731187618 367713382 559508598 730456169 849271860 954956534 997022811 295673673 893519996 354054312 494780245 994405439 998774437 677892489 845718838 549952794 795508871 78717900 407739902 99157108 237565045 321587304 679747944 650188246 673550864 450307709 652269958 899864812 993276743 295546241 681607463 849981263 995304148 896080659 911394484 207108585 783714015 996729037 999309193 285992342 877748259 196312283 374520130 588764166 637599993 895949746 990024180 787898029 796292441 654721392 761226555 405992076 426991549 525663798 707669854 46581680 418445438 939134723 960387365 552231401 851141235 667169724 949313611 714602616 887216234 152484475 420071391 499284069 797615457 863227759 993468037 664689531 681814959 6789035 475150333 880293195 916708904 849246797 863573364 888360040 972672850 451348291 918968804 305143470 846354301 772702700 907131534 25159080 195998291 473390870 698239523 154379402 944118134 897244650 992089283 570887564 587823287 462644142 783330349 476622061 609915456 590309765 619779672 735191263 943609720 623856197 793337853 906229934 952942313 493183290 633308547 790084721 944206014 178732117 198705328 604610695 940129157 206082813 524969599 40130349 924773486 738747140 949194661 93979257 906663123 261039098 812403816 228592079 944198925 138266034 616543047 425946932 549326155 85630221 664084275 759988411 816998745 230353044 611711568 382601750 618501703 868147388 893105659 305318121 603600659 992832054 999047806 774049076 918528799 572489158 807648866 327336698 454127294 783023015 851407566 128954721 701777821 120351691 978535211 646365401 776511077 39601225 169176910 502530022 507078398 788978829 801031187 780868668 988400666 781372645 909694430 825750471 993053057 467642423 490306545 893124301 935437949 762232862 921164350 145924681 856255545 541862758 729365154 186340329 777318329 972395631 990617952 492318495 598701355 167873422 232833627 287313439 370447394 384270217 906178229 739454396 823893482 213005565 425255252 399620813 663575753 420408178 873402316 187928101 500533414 382573454 425056169 560084827 819301254 72313069 264710690 877723910 897592571 355698134 786910082 573993588 952096469 277228914 664020652 254314869 959926331 667148098 884759070 837468846 946511141 465625413 898694506 42912869 495475052 142406395 687813086 675238899 777411729 918823742 980333255 590737136 749506875 209150632 561287388 630564614 962578523 322492590 465043144 423015767 841103014 190882347 745480342 991360892 991899836 862788621 962171460 475169556 704289963 415671891 942036159 435119613 649672168 940384987 978296289 139740385 439195451 12718546 561800163 651023801 689398964 670792643 799683280 814025613 933899642 932144429 944553326 9553997 694250321 668811362 947542327 7572848 346360812 624301873 682171954 648375353 903967975 48326704 966480042 745351465 862197655 117354848 733771683 644976422 935799666 234769999 489194520 314952568 866484887 926718157 932121189 841466358 973125365 509129927 933735222 695754603 980559473 29694096 681059954 198429392 884239387 89663724 990661921 356946553 395323876 59913937 890753404 321404336 589194518 965968040 984367104 713333351 992710612 209090695 874987378 90214124 728165781 708191081 891194042 599924794 798379883 14058412 139156715 737827640 855516423 202162470 453444805 701332194 889916349 459754466 772799390 990986916 994258775 710277187 996025399 141346853 185440835 689380786 906182385 396653114 857664385 715965555 887358675 406886041 808158741 420670044 599493445 1185689 64922188 807866848 974842900 804298658 906084249 186521225 575190742 558627893 573017557 905237344 917448132 326623706 427200287 38420438 324300546 287557439 533092093 738041803 742704781 375777226 412640879 566811334 812439608 752326579 894439047 386028503 782282453 561576293 928957741 82596715 685602090 2904522 209609339 829727773 848807724 878513940 924384048 97817362 461195505 100011385 619232895 991060838 994264326 493049668 747202768 486152441 590921479 475785784 521763750 486591421 799082136 374719181 481640287 841664030 972746616 165840116 594113873 846076733 870414868 24096290 247388474 105125851 914642269 403517783 819689108 424725199 806021842 797402756 892773422 847037110 855233095 171684308 289627923 924978376 960361126 313070906 515393203 506703716 761748403 426839576 458619434 714295663 800344603 92986777 978413129 682691857 945377269 545377988 597555274 491768742 964375144 598837926 949041122 495429660 508053307 76240372 82482110 401440154 616425417 333893297 663589991 887498890 907025233 289674771 534628314 855845254 866185735 906179857 965295006 150596525 197427127 952094762 967948861 105033013 869616360 227309841 388173683 400771693 818121383 734759082 926263336 283186910 441183965 203904591 950414408 412825633 843798224 277068973 483038624 489864234 812989702 222170049 986694891 655324846 688157902 822635408 977977550 832895341 964539099 161341823 917661054 511774200 986353124 387802146 862108418 804657533 885968249 738672814 824678151 507257752 563442055 39971690 853228837 796461831 892920915 678325049 850003773 778567474 957419404 511061724 558820010 941115889 976536669 897926981 945680453 136366178 221285215 325371966 789826679 950844441 998536915 446406630 939259292 239821409 357461767 781784610 931638434 226343096 997534901 658793660 763532434 3106195 975606624 737765761 944636039 671577723 849817262 517916915 831201798 458678632 811618318 135871750 273438503 908150966 930853156 117042149 188589508 391450429 480535443 260746269 437160135 97074823 306702716 57676435 142353216 819971553 969907105 675871128 783782835 434771880 471958998 737164550 831780717 279425471 875945861 818975938 981351442 255708110 412542799 213573483 722296686 833969196 959399474 975493429 986868307 267786593 609201035 952012018 984826568 281587316 626130767 838791083 981851683 697362824 870875489 269464899 922540179 950247548 954389797 380469955 465076637 544767801 816080240 832565532 874669268 271684429 275182631 53720143 365506973 725299100 822126932 185232565 558543182 313544627 363112549 336397977 513672499 300363632 938169672 785364794 965431985 55142324 816089155 169889055 250736849 453048507 694949619 777123442 916467421 175471845 398176432 484246347 725047462 948797143 969173253 508247046 989132547 427432917 691989826 945076078 953241616 284798198 868417618 985718951 990390988 769317318 925291740 116074204 179854427 822582148 963098401 564857209 611103104 800357604 828472506 884400832 960294925 387052181 714815473 875895787 903321806 823778630 948085825 791905789 852241654 731804926 978078820 192696278 441239076 257863655 899934168 376413651 691573170 711165187 949903801 438111103 633582397 924563438 972399072 650742876 705634232 788319943 846005746 783419966 922847972 942152926 995605148 397730926 873978886 256432270 858782915 581529817 719593049 361667436 670638116 638565105 838757075 162550422 749283062 192337811 559936396 883024862 997272997 542204446 916208594 351568223 887218907 8076524 441193856 885432698 912914642 633534286 734224485 432050457 955066802 851095701 981092440 1259505 372184540 988074207 990444646 871256048 968386684 247095261 670318637 739876497 748630626 609345363 848694791 513985624 739607479 694905803 824558028 84180852 863983414 733316860 843868271 378772379 812969052 744355063 957882524 645021707 964268908 49452824 567096252 862934911 932201785 566705843 830383423 492980010 980270089 780682857 780914913 962973906 997849917 35784648 500675738 773523715 877768711 683358042 987707583 482034887 777093227 407527516 704240157 787492301 897970526 831782314 837350224 921904556 985979622 701926543 724421824 703813343 903656699 496118583 961604537 603718495 687445708 288653726 915954649 191541683 739694947 982822648 991600616 850672754 911294721 719298260 923696188 769293490 900824028 360848986 593879906 897143286 935621593 435296245 458586384 946447330 964850539 849131055 921460664 688847778 983828054 616337797 948643444 903741308 989536628 252313074 884419679 375936987 965889252 895039063 926288129 475550211 892337980 866307626 949622916 642942516 675390632 725434385 761255110 245769705 572857950 976118361 981513669 176723412 425868853 423233717 573498754 91896510 592307784 30064926 773782294 993093548 994402249 487100073 813492015 136390931 604799630 452599303 577030495 599085050 723912850 251732045 804752150 618655125 927294475 168133244 672863016 672682387 953164902 118204471 700959206 172146984 336131197 88162613 430793750 905369693 951410615 670541825 682309378 611127638 805595582 171971635 743516969 651316905 770637210 552154029 952435580 707196783 880780935 197609925 201270454 777599706 976353234 454273869 698977189 361121474 530544180 1279698 901239350 675387401 795623492 644534133 947460041 307574261 531168960 405614108 498596278 359416960 812232067 814772940 918644309 745436895 882478432 897868906 943163209 280384379 730138008 679914087 681110135 83094270 713505252 19177077 301002204 501835765 628781107 598305970 677353470 789588131 991321508 296305032 788108370 375405754 481215444 271551372 541533833 128345377 545757024 899231776 996983275 1615506 49851124 8132088 83941692 196211352 323365606 621737640 674526522 433191161 822247922 12619918 190869798 527325847 631012949 176949178 408204852 65243351 245686365 655180391 886379978 348993717 948564658 57624853 444878853 280384371 419268331 800846699 823073560 267485024 554319267 786205151 976539639 502013124 695609575 839929174 850352988 157825244 312389555 659201898 797543318 449377894 724494879 501904496 832805974 207826274 285545711 810860014 827539120 345864511 488134591 527910983 603998806 908541801 941114233 871217163 896849780 278475765 950942976 180057621 282043034 178713705 983471694 176165997 502635601 247518350 869885766 520748031 660800215 170585930 546838155 711909286 787299829 29741645 180720259 789938116 828187205 687523677 689001118 588097687 977739128 148427873 323842099 426441093 651511261 676499665 820470279 463036399 761908393 67013938 887695015 876438033 948862039 526360940 561214327 810399017 996131515 167302358 525879497 850047170 967685181 362902715 742209527 989763500 995778866 410535029 994355324 347792588 467924207 806857128 887675674 110381724 572784418 205335524 811836412 823603039 896880538 159636898 404501060 404830990 751784420 120228808 583396776 41809538 659754652 780605125 907354965 386864436 992840973 523623577 708830956 768926699 774496572 895725941 935096697 258390262 415877525 25603207 850346757 844839663 907625718 968210677 998115179 486330180 623630992 314119273 329687018 813805495 941561712 633324289 808681423 959127123 993604171 847974052 983378526 423357141 795510991 631990424 908582782 540692260 617564378 332998077 378392129 895575476 901257240 845238714 923882785 805813271 983876521 51145149 478135618 401237351 860294427 196987122 706570389 184186411 693199700 766126106 942058089 715124048 717492359 855852368 941674633 484267235 522327511 55226272 522221419 61214876 316414748 952595913 981879571 461106527 856584528 624002267 670686407 934541288 995611607 668126400 979771047 696293408 981467302 936346313 948745212 558509010 638361021 608429649 840433878 858694730 957487461 350375346 817346379 809742372 901719589 472988849 981102725 318899754 387485599 366494029 750752800 987948059 995581408 892387272 993814044 29655348 412658414 775451708 867695520 635046862 863581499 172010158 770091873 930752359 999885989 477947354 691583134 181694148 781931348 761471641 858332717 941202942 942543017 758510106 823742926 971594968 973468031 650674207 660629811 263104156 329684076 837080266 888250001 578904954 607837050 413578198 415881384 885202740 986194294 13435120 113765658 228973913 879421504 635937675 788004277 913457685 966540931 770027196 789937096 403106095 615529339 176438161 181195420 551935011 689716899 191614489 861919311 561860515 651808364 528244896 577966271 19934342 802654265 7243499 964533551 51400343 792580183 708280477 767321373 774653124 823564635 730967693 832492584 71121038 382378939 225073338 690365502 172685010 263271736 325566376 557067299 835257303 850725504 79279111 536201547 716901009 916156878 918585072 940641756 729091341 733766347 727864815 731906136 895752229 904005483 198246473 805836262 744644259 953121002 973530855 977749865 659615933 758779807 821545758 930944482 350804354 468073267 443148503 681678684 995127112 998678951 949554623 978646194 153622332 337788858 513395034 888218777 997686128 998073025 386949479 489090856 134360035 211159565 218140096 694749419 766538107 788937159 96335736 165680327 491258514 560662626 806201334 881862439 887982214 897025417 601845633 819458387 584229073 746791809 865715443 990623457 875385492 961031015 459937116 625174677 174170233 213273302 932837784 950568106 415625365 460126222 17026543 33271877 818733427 936489721 674392658 726788781 226713211 773785075 951094835 986316626 315096873 619679186 926849963 996081100 534840789 695626437 724500131 850922677 763863986 783403787 601727679 910974079 60092362 633458283 168018934 373127928 860029114 923481702 535929552 850725268 333653109 801756326 351231309 663884375 269077908 828520763 318966254 333420258 918947804 992697641 998170224 998689870 474520858 755637037 192496747 736929526 504474595 785393774 160925763 714099956 963403929 997167806 80988252 991268811 320945746 973591283 146489860 149945206 886532343 922131902 348748332 741698507 93065271 718092129 23519430 177667003 47730654 469653697 780160538 932044566 992241817 997063662 891710536 960756393 550593294 786381928 713008855 886379273 740584727 873255609 442402037 489467103 719523201 737428000 468078800 975202039 348758208 793919418 202403207 762074108 569671707 671382427 936445488 947177290 604951804 676473533 47144203 749815548 293949535 419057525 362869060 691070102 832087905 990946805 8987670 819187755 344056891 825430805 945185413 988609356 760729865 897074317 971348542 998595211 352635717 890572180 957775342 997497619 965074435 979426069 510074691 744812241 737515868 866499865 102009186 460006368 9467595 471511201 197522008 628137430 385119174 837763046 670293647 901219327 765002996 826879218 348468804 870490676 10693092 980870963 518122047 558849821 193431815 457112626 737921244 840048237 536333854 634794500 894813583 904545004 654557719 696158093 568167171 587986052 70875318 123352693 136525977 503532147 685882233 945537955 13086806 673179757 667064395 699257150 554911836 629541639 543236099 762304420 320471864 594275783 400969176 882030481 960018415 991777849 657613673 778666901 439458697 798488453 517917924 687590073 63983866 100021038 850863461 902322664 992431916 996821584 720086642 768580720 843591583 963124162 672929617 737745980 16585455 38768900 114169267 420850100 891129368 916115095 865004042 905064773 578896390 630789368 420910329 684431788 225828536 545226098 967160309 978629117 454077940 822185659 46668127 923312683 725301321 906007033 438573893 496690902 992980874 998064875 52276148 580870900 739755821 744355641 167081934 454899086 707160268 937255257 498197976 741341771 262295435 832308121 973823744 993342245 916716882 936583425 918672280 974055672 684041440 903582385 172865660 989406038 525307269 594819410 241508799 687352492 645693828 714665980 185754504 618328324 250336712 622114624 93639711 359563491 70788 752172185 154772154 174103360 93208956 431755112 771837381 867363845 585314899 970997392 207632923 333098837 94516522 917434049 39386982 560393199 354052043 526643872 781821172 821653317 140997218 837372671 405571873 772904419 780849567 822981392 278592126 822425583 608070527 749126155 230382294 454700770 536522589 801482847 15569385 368800209 556515485 780529604 710354167 762435421 185253345 813969567 328988276 643875572 953704279 967783144 255234980 789354817 596351705 691827402 594857000 707311505 317120470 442011835 678491373 905440528 196040128 315957867 53345594 202239588 746895278 773472221 292271349 683827669 145753672 860445619 586641226 674391364 819275680 823598204 805793443 909513112 855987198 970824627 779595259 927904866 396098812 755580640 170967212 454472456 262094406 565106255 813319010 970120918 304936538 420408148 766907224 830644088 771246776 797989023 945441882 996531243 180070229 402174613 616180935 971321607 638776903 906445473 133043261 421818196 3021091 184268242 694665615 859077580 576467024 850315769 915592006 962240780 657283296 682392790 600907677 860616050 67504551 837574056 962978820 970078458 578426375 658116863 397821209 726455382 273366876 766542271 165177802 370179510 25843186 65894441 489628928 565344575 24202861 955386728 983662278 990743210 35663386 854829569 895596461 943513948 691802522 854160923 5611945 220752892 6612460 515065654 793435037 981407211 924203148 981039872 285163875 643049639 549968177 932979714 713701823 757005182 602377371 763750180 710196267 800313245 830927202 969821510 157052975 386541364 158707408 803799975 8889558 13772943 759536113 788957528 559658640 694008295 811070431 820680572 835078576 926254386 944790367 981360494 405767056 752376085 838074956 930737155 338290771 747276434 23972855 833126068 253499950 952826125 449408828 803740930 844717583 970176216 182874650 751227760 596343347 610744834 433754577 461374526 853907491 950596081 138040987 142582797 657195209 805173949 794941432 833525407 700009393 958727303 178567487 200450568 790644746 811438490 477484587 778460571 330465092 988963490 115917300 790181481 539736509 955801957 78044981 614813855 246064049 675821712 834947422 856584744 752843311 814806835 355008553 524670524 853807018 910939755 857418672 939221640 960926524 999070002 121520371 504793726 943467073 985549112 422854063 549335727 376742860 827166595 971262059 977091534 988543344 989125853 76962546 699824987 962003629 962574952 855968545 975615465 676878304 811152424 448346380 765034727 393116075 504651965 81418557 566647318 882228955 988029478 820783225 824964219 942938997 985013906 332968208 999684368 343333236 748475752 496417288 725697114 41581364 248855982 986110159 988489422 145271854 971940533 967067814 980515950 405913332 705176018 466007647 748809082 368481892 919515713 760651227 933826781 790255520 968998674 530920422 863258997 624583381 659361247 270155877 445467473 245972695 600308640 352512982 705416166 74587287 300699782 225635123 560356049 858280116 992081705 380291723 739562943 740025808 742591421 697313539 887703153 564273094 657175702 792492098 948833477 560829995 948229946 79296373 321198589 346869811 777548061 332703003 600625866 770915795 847203165 778719000 882702571 104483466 621447828 367863334 771992885 696777359 902607588 218023025 449196970 976622495 978164246 443071509 503847863 796129437 926794455 296914331 814454222 616782670 687949057 663163751 899179978 116389422 699208040 456163025 931830192 907468599 941999502 28121137 33092047 821068038 951328832 226447844 529127743 493295386 521690504 616347526 836848558 258813791 451387550 996067209 996501072 104092991 264596087 877079863 951531024 313744499 858072129 697733517 699219624 97564401 277921484 651733966 719055658 889984377 906243536 133325984 240680565 339262146 582918664 495152252 957374720 603927945 887355920 584577240 769315788 44245322 320723315 105776250 590974326 361436283 997983999 182871236 565999839 810987130 905000894 468754063 511615173 848010450 975826553 898958268 954992134 401539461 511759579 397224510 753284654 397317988 604309395 597473353 628397005 508024315 999986959 333453043 940593036 777667623 820344329 728691036 970285524 409185730 524060404 992634017 996178017 295821045 610056887 781558223 859668114 570675018 870736489 264635611 406403180 153090551 757508811 919204683 977949986 838069696 972987819 572329275 928896647 150980423 712275020 800989183 864815628 171956185 739564622 304781712 819887426 801885727 871418860 158430762 699328728 710288222 881873768 639902935 753597316 551753100 838834613 545573933 937541606 593990681 673193479 821646774 957429156 599208476 998653055 468871793 480406023 762662599 984674170 288599480 313948630 293324722 391898996 949312873 986060569 456854307 663984855 511769669 722682467 633121709 706595812 731752714 801417523 984415361 989592550 893263365 977430408 160408225 611383272 997984988 998278448 186647219 899270103 362314291 412305266 300011901 398895463 674249111 777759623 161424812 682433078 464116172 587140081 501795856 871424067 290510268 588477885 757136980 856674907 600759263 924626848 235464816 513870661 87791661 407747098 762386411 788476326 191963823 609999726 587893050 930290882 570529666 977729074 518772097 779802583 417745115 570483667 312986102 755077007 252087561 507903960 401823862 714671928 277620142 670756559 650684057 934450379 649638839 679496823 381403070 560266389 717153259 884495021 918377089 950807211 580794913 942937228 393696806 857694825 56839925 309239441 946069953 975441966 92714239 507654387 530989233 887095359 48871481 395067244 557604099 694406100 865447702 969113957 193032154 819731490 815842871 862347892 289315273 670901071 415553822 951784044 813550764 988416127 351397915 557362475 32910251 336720974 555826584 928741823 293460436 335888971 773549925 974659906 350862458 890138140 308779718 591730292 468959744 794930693 564810381 949558420 760640916 859091130 334617986 384688025 13008981 655007238 667461634 856446718 651186865 654905936 453803603 510419600 976863733 992046456 965013026 966495373 557189531 719540036 211003373 397666800 563258963 858054799 732316229 833339478 381895592 551179614 560212184 747828076 333246222 789334056 100140506 907456447 681204006 847372565 772198921 834374891 690421306 786209973 345251377 459204539 735066803 783151760 355933980 744046020 511729661 532691353 208480449 230536387 783621249 853848444 411127906 874298902 99337420 958180419 743091862 905581820 452898171 873667086 769591982 877592741 355152437 961149628 945247340 996336018 18137348 679543955 586895489 753834207 83765146 972091201 803079598 809877888 415959064 607442768 169024750 557141467 992057436 997916827 892758656 982779877 805706190 903858322 564816640 958497056 85496819 405339950 537900545 890750618 915314525 938893995 645184730 705847563 34341922 956995494 59226338 759603948 672760576 906368199 407433914 524025175 779789973 990192685 163622597 952424170 10128570 663739570 499417652 985073305 117622755 208475063 67282210 647428042 503832171 711633676 48073199 402044918 533469950 686661349 887446110 994712478 18536583 256225765 520453822 594195015 999236328 999959130 874298386 955417627 405081162 644344192 477682837 618446386 958530064 963632005 750545036 926528381 242542667 454957601 162441393 516910180 224427666 873208791 540848629 774513642 554640788 657905731 159701150 830874718 449614168 818418474 640234320 871678356 341375429 955889906 608352105 797635713 998936744 999188103 207718267 505681052 609567022 951155174 733672965 760345866 290493829 737965904 583243176 768735092 138396767 735525297 265579965 750754207 817587035 832876101 40144606 917667457 840006574 897237600 305183523 611654472 592049135 821824850 61856922 732486993 37826366 477251936 750904649 971150157 686445561 970187442 839956658 997251023 782438643 795542753 799085643 955661697 862067106 996932115 25688101 294151534 776783738 847797698 228424674 493788526 292884789 452878168 99480336 251142937 890683889 964514867 807599896 918542092 812141526 977078546 922267686 970579204 696854748 952571594 417034014 808675255 29473387 51858613 879180321 908045453 717864583 782743143 913992581 970480068 146735244 427732181 979880027 996534857 14691656 192265602 614212841 955897840 556651972 997254689 241336015 371668245 511426761 989345335 412806651 938115998 180636724 469797522 454192004 864315976 40436845 681610899 481586266 803019307 437794250 517213352 212356911 325330776 55589682 608642234 691677720 931636849 715453941 883982795 911637995 986466645 826980718 938822622 968823552 978951902 16387532 738631989 504957809 768628601 524054246 988362183 795556893 889106074 775415695 792847720 250422030 728168246 949548919 995598274 635739702 659579214 138472621 751292792 713264012 941186910 282201565 297271111 118007528 844737448 790861835 861776902 384520309 539264824 116489704 754662931 235973099 384980076 542583326 987150824 616138303 813585541 63536007 233746728 403575944 801142315 345359650 641936928 676508836 765154484 247245752 494176726 374750615 601663602 46167767 947127984 102976095 737263773 500199904 649807765 156891755 715619750 263779791 628539560 248422335 285289633 968758939 972586085 88709366 411714381 915225588 915637231 387977246 808308264 349274680 802775663 687612879 877037769 180846499 208746950 621056540 805817344 83429204 627667046 928580294 963765179 906954742 946184370 67858138 180329844 493993831 919807958 526751429 576231651 289012685 677789487 235831845 252622423 160333599 665906567 267940805 842326538 161166032 563119563 422334503 869753591 698101991 973596118 55524402 774025199 38458602 849264089 185605127 240236339 777766690 835335528 790618976 806345846 349374532 632960051 560581194 857396922 615194028 912232606 520093741 714065184 431040957 511532045 845687029 911140103 745798881 937078136 309377846 624768388 792775937 932297128 274060485 709545091 411498491 520543462 244117831 453189903 878659720 977106261 925314189 956962392 810203606 938911211 865026988 888567667 335453748 632011726 430195753 578159862 472426275 492718360 518792396 628310338 54789663 61084988 544859223 741637781 412514587 481571549 249782252 497696380 523802461 675288887 855733800 915613383 71261910 822131919 898676933 960690037 727472323 741785558 155368921 400436903 907073511 952294563 660480688 912282502 226159319 877328936 424308175 444752946 68503057 210987484 620495267 690685469 994252597 996375849 857116428 977488986 937094114 991113742 722982012 941634080 179963290 245503404 531447401 756460048 18782301 342856302 798790250 986733915 955214293 964634269 213583951 590163848 680239614 931038150 125487628 145025243 194634956 302629284 794004401 876233637 608338748 809966331 23384912 939502843 688094403 736827990 977122447 977177260 643382397 899036546 176472609 352083539 518089031 556991245 150290171 467753774 914019689 999407728 665438651 962083586 229207651 710548284 732322557 793215395 162039164 361974539 212168395 409553984 458436128 825706103 388010685 531622237 81844633 899609215 103192476 287532755 200247381 317249581 995198118 996080060 638932112 760757656 226990520 462687567 949938131 963201665 571936924 610569090 327752009 375540394 83752084 883887568 49911368 343144807 694253509 731189604 110563433 771154517 504535822 723962891 998430508 999828770 265621795 719566437 691837979 935875037 696251995 871277333 203168159 745917908 491407330 674862372 106121764 273001443 554053437 820633365 172351261 177306977 23624413 744673594 788048637 916492231 333468115 678522431 514102012 794506864 21853795 253188072 845274905 901726172 661694110 830495111 273795703 398368215 311822805 544028878 224996459 666415334 168542225 518122501 640247216 745010580 625884890 936556467 660949691 768499702 9088667 542844151 118059765 985431836 159401130 957609827 672654176 773972669 123017466 495878592 33862367 434034032 603901556 793027308 420052478 611034455 765155527 981742080 943234328 945528220 131809629 827263295 226730759 265272725 367660093 432130410 425969502 510847107 744980418 811979073 872620676 990977249 871490337 878958147 461829408 642754615 946750053 967169218 796733423 803243329 975217432 988902020 218766982 882143017 881642015 952516696 543919770 902104218 677979073 904429212 594363432 827238532 501704327 692377284 16984546 335832462 252226172 332807562 304420824 696575618 647186356 929075600 268238755 411038735 305525183 425052786 559748434 788060285 477386187 710292942 365202367 567778798 89998131 450470715 897699590 968226626 534784184 909044412 66986962 187339768 149340880 218861718 791005971 868649592 973584262 985623906 478785773 840507274 998620419 999297238 38585460 889295355 314680666 653607133 44767810 971609771 262808936 795027723 446375167 892391505 878104495 946373341 560335474 674512757 859729061 886173901 676252866 707315934 636777864 899528916 305562815 963786009 270201598 282980941 60979565 885121278 889195183 926025967 656112426 666335433 979371009 995577944 149482061 895907333 6528963 413712866 59537676 654004742 108764422 755519178 831090370 889191932 865349624 963962448 853926 702101915 868734111 889612507 478849429 928632595 110132236 276686566 339396817 676496307 727616558 848740001 494176568 933352668 714612676 933899698 604198664 697166139 865802778 976331569 808764849 925753435 155553384 955244238 462270684 593771838 606894447 772418842 941717725 999846302 13589655 79945474 217191075 657295213 330745497 736983945 632887946 665279137 181318971 996011469 671254594 797420552 742366935 825797480 765014524 943487060 687419859 968872564 431152814 641279056 566766747 657952455 501190405 881857770 184611182 980859639 621750687 864985374 849642094 900499834 35977947 130531057 313505992 802443509 42513702 490120216 797192979 827001063 339974747 555000565 677934256 877501733 940050059 955978700 845274515 949409633 776621464 963785605 15445609 72396401 111315089 566194827 332653963 719546246 853035325 898438101 798420767 871316635 875252793 926498976 44541481 223557289 716603811 846536037 401307596 467790409 347346962 695540738 918662600 969802197 771974469 927843962 160669024 684665742 858398640 875676018 479666393 664644315 40192244 256616988 419583505 519395555 434168770 872875188 293419322 379776992 297336384 685946781 742970086 829400736 653577876 684368550 223481566 451510181 698700749 704031542 993173258 998753065 342153321 428323325 731152434 799617517 513788837 988697876 862989567 965686253 862465713 972904822 204650966 354583205 626074217 971443149 230539546 709984412 171340556 833790767 5078719 921244732 292602281 972001257 652615727 668375164 857196945 899631995 710759740 893175584 567093902 739759261 128144474 139076468 885268080 991173792 701349602 940905703 309524024 877771120 324869153 806126521 778802970 853052789 833761691 952512264 781974927 961161142 709739033 854928661 129121636 889612668 896576591 959575260 56958334 761925095 552889421 863271834 976781795 978426036 543262900 669909028 291208271 718265724 912415575 972968972 6101394 386775322 172577593 258948650 362324448 398564927 557104928 605095224 948692928 983691726 284497648 780995705 160867333 250308755 616596413 999192245 571960193 621406846 573484221 847519072 557960362 872202463 804049500 980018470 344445750 443267129 957556562 965084550 662135751 981890222 370711150 910202705 169183706 265239764 800814531 940064107 13034249 987956538 717318531 914792633 763525451 879081730 163738956 177959386 247705011 488440225 147851985 971454960 64093364 924303246 889990282 906141837 40207224 546364266 75183612 296517929 247252167 369051465 464415312 657135736 456514367 540373226 503268831 595129574 981223207 985204355 194539022 528945175 652078700 723326003 797007159 856272820 645625073 922459383 914874133 994358297 497915803 645863835 538220583 778356953 236257434 368069465 273469713 353175882 931920916 936404265 258737281 830538357 586652523 664650240 906251278 951739157 854064076 926641691 122679962 169285287 837236753 873601854 904592619 994572450 22057211 314412171 709105646 831298776 642647225 843892622 360411261 515169388 183493259 363383791 410735039 638608343 94585948 628250804 869376638 960930920 606138810 916731386 670515651 949503938 167762507 409271253 640360367 892092204 140716255 337734727 424258694 532899198 245701321 531295327 802637146 975050834 669985004 947256084 266203187 992652787 44134580 928770276 563292499 946705748 617211166 753583328 262531323 465693151 170127885 791978160 188056197 582604270 739075587 988954898 994603332 999010799 882336632 908242964 322145959 975963963 603868196 909663087 863850634 993729146 979723465 984502892 739120526 792809588 611231375 874913300 18659612 700496128 197173661 528780375 596417866 609205407 837330410 935332892 557798689 632463255 375761599 955846965 798561073 812912608 222932534 661927456 843350356 861637805 168508132 268655995 891684780 968427103 837910004 917753747 377096068 477874525 595266858 844646119 820044678 872836934 794084368 971454102 785117077 996400747 624932512 630089493 423102289 860635850 413106877 603762971 58001352 717995734 611712934 919331214 765660586 906064774 831214604 943341905 301615024 618385898 860206420 968657087 192481503 223362973 883480581 932992889 179255766 417509658 691709070 795950913 529673208 775504037 820098739 847209852 92074981 290074381 990730856 993060380 449014161 742827184 376516624 784275397 224963732 820488541 632728018 951653185 49516578 980374491 531448613 557681102 174951722 202705127 50111756 690540833 269143019 902268170 355917951 596938163 577601560 643550211 761385144 819443767 23664340 362224342 556082315 689591834 355486739 857206494 457862571 964061148 930050030 940753501 700569747 870704278 388351754 968549354 819246735 959625849 771146025 970409366 26344255 523595798 106295857 131553457 914030376 961143182 387697463 783607505 738637864 870228512 298141651 941751076 413828621 824142878 237279172 281120309 916609650 966622245 537381883 995273923 328669764 441745374 139812400 344130669 755721589 956647080 291442335 576502414 219906599 952005944 854963342 929272066 687317171 730228153 117796728 455122631 737168097 928657996 337922044 392337175 651303931 729723028 213819344 462473672 412302403 926312226 89089370 904894954 821976303 946372935 680843681 782171967 924156873 984561632 61208936 760222967 265105050 356221596 349553777 984529845 992268264 997500912 761528017 938836153 98450539 747930353 43651483 835385032 915556409 949078597 349065276 739070527 807610707 896148611 66189816 753356903 745382653 912974956 954901444 967396220 558924524 990734763 217889060 540190351 299823717 702266004 88523188 592399126 731049212 731547433 64681949 671388046 62831936 505992971 204651471 972227045 794146176 831421343 23150267 115643631 125557275 750091607 372875607 723163867 350819123 947498538 886607814 945985849 880722567 897714424 268465419 589062734 324313541 612642358 97463259 906782027 52899877 416557843 341426816 856751309 615970653 834264626 591098559 724235280 201669741 248138702 815540740 939515420 293079751 370878566 503815286 707364855 733954164 791839761 150138126 949937170 294785719 432911971 46655315 810856707 102180970 670341610 296751781 931169095 138187249 339121917 539274188 751138050 726731001 794144660 384816419 600823701 365019112 517175253 266137651 339376620 176669579 381906762 702931159 800543411 652383778 741473412 977958480 982362376 834422136 960355394 296180373 932352726 686632059 869262213 709887575 959525601 409538679 692758809 549027545 948572505 226578316 402921198 212604298 438093418 504676495 610042363 815133113 915295590 603830564 770775825 26549816 167868517 697588634 841499933 564596771 571811737 550081185 699166010 355095198 652827068 591131946 984498358 581530009 805291297 336655494 429348309 243228404 620093452 71698821 445956030 551080437 583895871 727398014 798426992 529252268 784690618 541505263 679110807 735813897 824495062 750293129 959173947 12594228 943654295 639227357 905119409 537289945 608587619 928310404 984638126 274815081 572561495 317291264 469142231 387482583 731647009 926954129 940538926 788615961 947228643 905309530 924307704 114368663 463110844 21437961 441563187 304663039 494716287 847028834 961207558 48968721 709724272 884573225 902205865 622337768 995022086 925049951 983310013 498849844 686473993 432288202 538797180 87929712 188691110 985494824 994051728 593438716 997543696 956928504 960426233 6699475 528942986 416562613 722276661 690686626 812717684 757387732 989835203 682063509 831705931 423823558 670945676 179483826 197442112 595818857 946069208 375809976 665546241 828819326 847810551 579369964 930318570 548126549 762678738 281573287 952367369 337162525 888321774 325140973 936525531 240677062 454018749 880046570 974859797 752362675 934785152 685218853 793505211 587648982 813331446 137646724 549975573 4364817 511857850 686441566 874594212 663784383 693993638 673546283 714652931 978760018 989536430 434007573 448730682 128419088 936020047 709948030 804106518 735446373 846322616 558425516 735868452 991957112 993843661 218477334 585610987 234069842 341250084 685027287 819809434 791587440 896344393 535999993 908029347 593581371 794561495 745731420 832677653 711797268 787295894 872250548 973975878 328595989 419163855 976724911 990563361 480776036 845456654 653312893 826074824 597464777 862217982 235831049 651459504 709687697 919124013 294551449 697473672 996114465 999937620 494395495 568199095 825928787 867921567 838905217 872766104 471647477 694738053 988842267 994505219 186945765 888166988 595002496 890197471 32450071 629289811 974721501 989992690 124031806 747643889 791523164 965210047 467408996 825884102 781133560 898422417 681302834 990777117 346945488 761891036 832817872 907316869 384732931 682278781 384708696 794335608 266000024 697624258 888335629 939891180 978409697 999405265 43033184 271615097 751041521 963073087 639159779 877745383 788862318 789492730 251250692 542103615 501591879 576039732 323032191 884647615 576241570 989889078 592838245 708283764 886521780 993238022 595558749 857972687 652565623 923577795 873430019 964092819 935536870 994000760 434360678 660424118 217983026 981742540 534322287 850462570 860538868 870796846 631391688 884960423 719217681 829614151 140811034 787392189 218332823 361493028 785504304 814329130 613410963 766332015 587492309 887664695 979652331 981635905 148861808 917896834 384130464 916017752 726255421 888139986 370018689 386985166 578287652 800624350 491780166 753397075 741905957 996746986 29167771 90535708 129037630 326155955 329959720 746121453 817523401 917734205 972625553 984768339 893853091 942750308 681559976 712119526 719852537 854350799 745029393 903943470 817657677 910181574 777537971 861188560 448758907 740725857 403424091 415724319 865938536 965923732 903319192 995245950 331271745 864037416 82144349 410597670 362321400 738135644 79112557 131096325 913895346 953203933 748325618 947697175 540879450 571891836 434150757 597195689 522798948 733571796 855609960 898250927 989521214 990264906 899676468 906271204 971590693 985197505 931734659 963423881 173625111 793812882 473258341 973211324 705152022 848897704 151708202 592118498 915785080 984190417 427003423 908840508 659239032 726199068 466841092 839687952 202432297 350521331 537315115 611553432 67869575 107742258 582797111 845802109 516005774 591958041 256424815 402680023 713050782 816188518 783027864 940514659 574744759 681431238 799855221 964032998 605187647 885872065 97827575 408125127 797119543 928062870 808808755 848472882 56542369 745509135 838265724 924742876 803792230 891041761 927547160 955948444 973815889 983745501 592732969 881209976 274014094 638575558 442102749 726501307 359389730 433097658 726609060 899346668 708507835 944158380 301898217 572368334 462160299 713468486 285533039 603229797 719964154 725140538 151723361 866888837 437056309 936716156 927565328 948508158 749218022 977719361 832309422 874691456 520120295 930730748 194173911 880569287 472953417 512109481 973334097 978024812 817175278 934397558 316604167 681155799 349980356 684471329 760127411 815649353 954699879 996773816 928492043 994184919 481973319 843649884 265408497 887103849 946193687 964755227 622469740 861829024 582115663 898172158 775973526 816422951 878475633 905078374 3487596 147605048 828981568 932090006 748336033 805757991 928390299 960543766 574250479 774731859 602013247 792954946 231964604 821321311 906696487 911620487 289392833 297511899 266262581 962917548 917285254 971484857 761329551 860361370 947328352 994017115 956340825 963999987 786603706 957938216 517154212 720424010 351140963 584950397 70333600 942451861 505888578 707767158 747942232 787303600 591830597 901672816 434411838 920252058 148901098 799175834 211094945 949093561 803584033 854619417 905112211 921851825 899811889 932390285 189729901 560761505 454713967 539167359 925273013 983175863 351700926 371108957 648918296 883902690 882732603 909730826 319423360 787940160 265782684 922878102 925343600 969079642 642852611 861924942 917825147 963463094 769651269 841392595 701589367 817975429 385201430 963795275 570231270 583796410 757724084 921455303 153132844 527900987 796846967 856147908 818226273 899033542 980024160 981346737 92631899 182180390 676775026 843077582 945252653 984375729 266047144 832743237 418521525 993767110 123144829 372903836 718920378 775795896 843871805 904609067 537856119 547462845 130504514 975039288 136598059 725493343 479956503 491269384 186592413 296625502 728972082 847306433 226497962 454654493 372846230 704025192 4325483 939830640 349673424 895334379 779321887 877163105 671876394 811660215 858770845 896571903 44008702 988026667 796526697 809351764 59983278 489200979 700076695 768243986 729195541 784691347 546010475 755100191 871678098 903879224 894726738 904609888 409589257 556150552 221883344 707868307 331335003 608222299 845397624 894194736 165724981 748368018 146058576 835713609 993170556 998741043 603488501 655041046 859161813 926687219 31888056 854505082 600224575 789587918 829558055 946982312 937229236 981981019 60208126 619333552 733804267 905192210 176023386 959575504 422416572 608333460 351713662 397901726 951423488 963658947 414143555 894081392 846044659 905527385 832447873 986344837 596243008 804100881 411211034 882121033 831605017 935791059 843220617 854725384 585286750 859473605 591765069 926300905 31003079 882586181 617163907 637833225 219365616 774168736 774648467 911888394 117541233 550999640 454765229 913406515 274448265 469767182 580827571 629014042 49427199 905321808 480590092 491765199 788063122 800100518 603308888 911861306 841988474 982927712 119696691 144168980 970070999 971308108 838789366 981281398 39111817 227597682 620066667 790836257 305178453 522842014 872554848 985226039 157428244 851706792 4277875 846205150 368316147 812884484 216222222 662426525 703304737 778744231 118431498 571733934 242472970 887062377 678331448 853191301 518471885 701901978 803978136 910628152 70046935 642758701 242704945 483463025 471365593 765924364 465266382 686770929 155183005 736418261 10474787 93611585 343293139 477104073 716428256 794991315 522178158 955965785 160395629 971386126 893701501 922447361 886631499 909500497 161771492 595571080 277447682 665782828 307827174 851233024 777888849 976196144 858284700 915888139 440407003 892013276 707194057 999722473 321911750 415616550 493950461 803164710 635463990 784640162 8419068 287513040 446486308 549699329 24026508 967856427 752324677 987712600 419705775 616596891 810798222 985528805 677756846 770328378 443659821 497157258 146946921 475095304 240897893 449634030 561691912 740982866 16007900 64923515 372437789 854252262 818717421 975300481 445345991 671992682 581022313 652835389 711438850 753127553 205388861 966618567 216493976 454638202 635454038 909071771 553001691 607366580 375733031 584118256 298396198 811652813 903543661 927156476 427868562 615133315 779660976 922523789 163597231 320756454 83489779 135447251 606374787 934912195 929993842 963859327 700459444 809279876 171973621 807186056 119180631 813247744 484322470 771632849 892978067 942188957 182719478 894880672 108694362 998965884 108574285 700025718 259025723 297274026 748576530 850436874 875847295 960522136 72158019 500190974 865182524 969329563 122769614 993278779 326965092 994857537 114013240 178112500 100856591 458210045 240483749 416813192 439804211 913719395 685808302 778309314 508555320 742021761 764694218 835284825 592220174 692501462 820539870 886420903 985324266 986708679 740088555 968446582 739847040 783281466 309691905 699843701 61860119 625444709 746099376 945318773 779946223 958635751 574484437 881968785 540981890 807847577 474756781 725708723 99049311 518729109 888852452 966793544 861619984 866044905 47536346 835313864 210372662 890408561 650551188 903694801 315344756 524063190 147611851 412842751 792653917 858548778 675050380 858161233 922468442 962998543 306533444 328239856 438446675 705375496 178604559 667819669 76631665 603910226 575932597 815111260 336771170 974364754 355313125 747416267 765160688 951209332 569056959 613117081 378633975 642812761 49007276 660706532 726018056 757031735 357987291 881448533 690359810 783668374 359336490 752552548 514314556 799511947 438147026 472318693 406427385 840236151 680746130 898119763 518027134 704748026 412435547 881450769 126541867 350324790 1661879 658604341 173033184 572625801 393969494 768137305 668245934 994880070 542712044 824882605 690296363 988401277 794067681 841165345 377147770 968862493 503890783 960069259 101016576 711379252 708407253 949461947 813027973 819988197 375588549 575943795 312982512 682987384 807641174 964771510 520417883 631621764 211555435 354407960 400966657 720709898 325934460 910764080 252666697 404232317 362948406 870126876 806653109 918817308 258778488 487792565 44273756 367032628 565672471 667440831 873478212 970241857 363653281 820264255 130581878 637110931 783205988 885841230 956785675 993181907 704398720 864678720 549475823 923140049 189667977 821153923 56680158 748368573 530354425 770088190 405858452 857402873 793903765 830217759 504871758 699600801 533330704 935024114 364921648 692617599 106378364 925271074 425353212 457526248 130918891 705300644 20780233 326823293 782608612 896547037 929301010 967357784 898198747 924592768 946497697 948239771 605782396 698558869 745746626 797336586 500234835 815821275 703678904 804254101 940587647 943499754 574222856 835241467 414575204 524113991 402380823 483656277 258318538 449691719 627492757 702454645 515325845 861230826 569954808 638746368 532251317 952021490 425252041 539015295 140012462 841658923 76375531 315897047 865536733 900111567 919712406 923742363 771136364 968256547 744414171 829627687 858538627 976110466 190690783 445685871 537681774 924616784 907202183 986999298 694280645 912204317 137577813 995159789 103353490 560111249 985778997 999512146 448223647 523941083 461850342 616389812 311343661 984570134 10219567 91197945 214226051 481900445 206552220 278235020 771548473 981647477 834342395 873937952 471899332 954512933 142410910 987655982 388830798 960123033 507114600 633961587 46350845 555416241 838374560 974826393 510267241 760238644 633188300 654420832 645009433 754977463 188820676 243018716 74580581 281664793 264140899 339919938 496700966 803653479 217506132 726493373 547214164 783726363 218328148 664808696 718800807 974643296 410350944 416768589 743966070 922156033 374446096 555941808 234750035 411008901 263135254 864268560 143015664 806685885 569211908 608735664 654922249 676117560 917087804 935415900 6148762 662663198 177183712 878975525 624476817 896435613 732258492 975958402 673172264 989385634 128640989 562346625 586045407 606199319 12247208 557961971 28048592 239855855 847066040 942208396 833521605 903206626 475524106 816800171 864888446 937974021 606189363 701538473 327628597 433712311 915333959 977171624 758183476 790911610 673722462 729724514 317032581 833979327 399890520 779543755 296098267 902439661 484582643 730286258 988734079 996418554 115085376 769417220 471775220 796312199 244985098 752971765 799999535 941756976 984388762 991808982 430353548 639390617 946908046 950664488 229651507 258536644 486049814 709595246 338493231 974473371 795637744 901690013 820065843 844847927 922605325 941113185 698509323 724732768 85303681 446218605 459175912 835660900 911790524 913528853 525986073 647015212 952910808 987132608 142691249 861708990 844564799 905710148 488807832 502718790 667264290 865594738 215681060 487174128 972057497 981291288 452729674 617998945 699711842 839120372 550575380 635491083 304944638 671730776 334429434 783219829 802393050 811556030 6153379 381377186 328408431 763155687 939618297 983075544 31427494 335953499 316483087 688653422 274929395 740891279 404610808 736964572 139163272 172011914 129815493 765030136 700858130 975154635 957998523 966200556 807460777 863395795 204133573 211952970 703002650 737672714 444665230 446025760 207937897 894390886 944844201 994549178 366659914 726688907 36614734 312937488 51925170 107572964 458006362 918871448 772110797 846248876 545764239 680213087 646785141 962096525 708592394 905866021 232498725 777012396 983303738 987602800 702914735 890936411 803112233 989374247 314962455 661684105 684743034 818890507 921828408 922614139 388584032 435617523 642352039 981581158 174729967 645224010 488760299 603481215 319916381 648346374 693758659 788026030 413038254 835989937 801369203 922487692 982367854 999805725 916138204 995460195 109253838 464813689 526713323 528714363 876865003 985506598 118046136 214577778 397463304 864732155 670139123 685508898 877387750 952766046 463024591 746946958 776070369 888161269 554904006 564378263 803783472 888941229 25555236 357481137 661679859 802989165 512831648 788686300 86253087 361180701 320227806 380244535 546778279 595707937 169087251 628181755 643222515 766154287 550385146 653667463 154990905 935635535 826158194 982233759 56508213 728967176 19446158 467219201 6086641 216279994 903442756 935771890 441484176 727834763 924636437 956959111 810026577 853602281 598306485 756509907 873611815 894371150 296046137 912313993 245550240 421767643 534678505 854988272 618873738 889108120 330144146 786607916 381139799 388957221 37494556 873091582 976094286 988801719 428080683 435581001 772656292 790907747 415284560 920800551 622974842 727881730 526145681 613214506 146119901 982695326 803455624 951408082 454312802 783558822 176754990 776891427 474571255 521673813 404141349 619980408 644276674 729318627 927271763 963847383 941088835 951039134 160970856 643252840 110228324 493813223 8926124 713429214 906798083 960077403 14510392 264585659 320394259 771411948 377833697 624727438 667585318 852839599 849816269 950600884 376519013 718462759 391849029 573271660 619450952 872200744 695997543 927111089 654129729 821433378 638952798 878173381 856496358 922645829 422544210 648359355 665856554 971037740 43132182 635820427 919226186 965663433 370908316 930228104 510192881 878280272 552041126 817890876 374794690 398980513 162811381 185977933 617162081 675391171 866508179 915484389 640504672 688247844 35932927 717278657 738304193 918653318 121392879 525189904 557861032 672125552 414492883 685502494 311994036 752961116 433691087 676118296 934143912 938177283 261490222 831888792 811283419 867257649 988899988 997690143 228810394 983448989 75513044 875026353 972230213 974155756 932797297 936776455 342162670 817598845 347238017 468236616 711102676 961920824 300111838 322288217 843979400 867122597 778342968 946047030 360039307 519329077 144852756 979380126 673773992 984003884 192600326 944226000 544305750 650918364 785685489 897976629 88607158 641662741 145363709 357964749 464016443 967795092 251711015 544703879 375105048 645227628 617533608 966727282 129765241 398262737 130136168 306385446 851677418 946157055 350714733 767427716 917908891 997648747 108969122 654722772 298717420 307718015 492206326 964161151 894781913 986836344 155354917 542542557 63044250 224164890 249432503 711377776 658248710 777342059 611890850 798806483 124198137 377954453 53547794 206705180 298299262 893472302 399562463 931889559 676671536 688077015 319342227 904687170 510165546 744663324 35984145 77662659 505621337 928220431 438941970 883512157 603816911 614720217 978726401 981380002 61880015 251556528 830006291 942675936 586255594 949196782 942091699 951604467 71295894 80819798 55142920 802985432 548622857 616731705 44103019 292569450 674542938 728191215 508654868 986731231 720516439 911430779 411313840 813615805 495150141 915134306 70855397 383154808 305447110 948742827 742526511 987430362 30722337 583029319 224102184 855840182 262560781 557453305 943076097 971329736 354788189 477390273 873599484 919622846 754294394 777179822 293610010 896493196 615834167 645293957 798768225 805838797 847573630 902960768 91895002 173352181 56849203 868864762 977978095 995341715 531506461 970978971 871219571 934309406 306193882 703765711 696433351 725771978 67665170 115731939 149324945 616525694 318194803 365448138 793322276 942922033 855356130 896914801 341805234 972114720 533157363 897781213 18672857 956414498 47789406 931498752 474432302 946801092 746782608 853106333 720585798 961071150 280427135 785572581 142535535 157063537 159238022 495744579 689718877 986835726 453538531 624359957 489118048 785836724 241873834 806652282 325315868 708779972 583682590 751824914 522209460 979311150 33421784 549032505 433489816 823204581 379769591 626384510 408643615 888472074 302079115 370072733 532722314 736501400 145714216 555681517 430218801 655920089 689680137 938464368 420983502 499752204 843339116 846091696 886193430 940908140 178905791 837481190 44719428 464604308 800286749 874814143 513895480 941948097 830221030 967825200 427446796 591630463 462951994 775506283 371882677 956099303 652956957 761500798 350428538 470827173 580906011 987710875 340461618 341096463 622190716 738278615 784223640 937139849 233198104 271074961 55734375 823771607 858389304 860249507 994633078 996648114 540729204 838989122 119900124 914576436 652746480 918204183 395781985 543523567 983480554 994567616 958188439 964093022 583941902 605062724 230492852 624115990 584563706 678840492 714618636 771160760 833092057 990893196 138494544 685604193 616572249 678404708 997980239 999030273 860534482 897515799 366190529 583707963 319650974 423656427 134868377 993439810 310993068 671853465 152306934 227704615 64147448 162405799 50112131 371598525 22261293 461071676 794827807 834093071 444133308 999246587 469222919 942164316 408301043 418834424 125109635 824728753 152815591 397151432 664704287 687558106 938019637 957771531 631277964 888553623 925100744 970231646 69151004 952706639 475826244 759662191 412195182 422778395 386917655 395622794 920387914 932575254 56480120 627704144 928760716 965573953 914479323 980925488 70035520 788907767 171294896 329897509 145515204 821867878 598578619 791025110 405896635 705836861 523418620 766638844 895389527 944142685 642110680 967137541 11780362 369340655 171132875 929223149 244812796 727185881 864354157 941769709 177991287 286551362 367096608 667608933 795667311 817481703 138561342 987842632 144392293 242462889 684250016 826004822 278001966 504860122 308634896 326171249 54269884 653837176 871486921 932697763 68097270 254188209 126718314 217687648 279113088 398505003 982090503 995000265 74052482 522802656 237646922 763659733 159586154 505833985 699070100 713451843 520162931 880969513 438724433 703896497 199481190 945543206 954573680 964109353 834964352 854398526 516422319 867122201 481819182 927227518 490322771 962090687 789088209 862505658 755473290 866691121 78329067 764164566 998602828 998695853 290502592 744892790 708947744 924194253 505807452 910316665 824752177 886975887 33451037 801190058 900332489 935043977 853789388 958571076 290449492 430576332 563539436 799001978 514873161 804462912 209819573 727235104 223730332 239222341 347447174 617802444 473263046 566618001 900205060 921702615 63666928 500324258 168704562 783537506 645894463 923015251 524512180 915479723 643904575 971649091 244877996 712033609 806325873 814594649 368161027 963524822 274983040 499666851 968393179 992496853 397603116 796212942 564571131 590372411 393739747 915802766 476208050 626534485 925605601 952169218 793533469 861172148 261817330 445957432 153939650 394733959 533841350 696285029 330165826 943294136 355941944 687850126 366168901 942299937 934568932 983257433 774920981 987401959 844769297 918992210 433350739 916733354 200469963 435927512 875324518 900501521 737125705 992428442 775902687 918508521 89897172 102842220 451237631 570471076 572822354 691173782 110303910 270156733 518106966 573193760 209263682 586076352 197053722 426626340 720722370 974471782 854263750 920514998 670956326 730778059 242807868 949856501 178055401 370147398 386640272 576106821 959834500 975066833 487280694 700339272 5915674 999658459 165820937 780823934 720504702 886533031 419348882 690077432 29339639 337561643 265767038 483625148 98997182 420282901 502541379 906055248 482811614 764515349 482945396 998680577 844559177 907812525 689632402 910592522 240200312 646073834 306921231 618351305 315052461 869786619 958639055 971039557 25417606 142852636 509001093 646404615 915840476 934655214 696347147 868361162 708232991 920007790 968585567 969945039 47329857 70326512 393748944 797749119 943607544 978010108 805682630 971636598 294526578 325645320 250387316 429053886 734456660 899095134 358146509 544019939 585850272 911428947 67949930 815283225 618733865 741833773 225808191 725296883 199670002 768107123 959365 63180544 682430407 811165023 789267276 828801967 645153011 651152624 520001828 526885671 900597886 997410803 730260230 887384784 216863008 671308039 208367315 832419500 16094710 680417799 288710260 990196889 488114764 503290081 259292874 678545620 460338206 935619603 223844792 910440389 234762965 352160542 379858301 974256067 673793202 981057086 115439315 413272667 757730716 968960021 848304412 940130070 703919763 735207133 646087122 773981485 640914729 826629297 346385517 969969822 690372538 807089095 447077942 542553736 185942381 873587074 718515432 942539843 93094186 392094645 229283098 633502441 767008618 786592162 826297184 830181064 114237899 132399447 606822873 895744456 697943906 713071203 541147489 603994837 578637545 713848176 113719230 519687546 297154841 793076436 103633867 618989929 985520437 990847666 293503682 774521378 843359673 938135187 351079410 680952594 661192840 661609117 871238868 927665892 586164644 678356445 329649215 532698354 841166702 919034118 669715669 687961166 398891824 690146168 661162776 854982560 336306136 443938801 549883897 995126828 157107724 920535905 991356685 993642821 897166254 981792072 17700771 939055788 628215667 724273563 687548589 815252611 227888180 876005978 982923847 995906183 381118513 978525418 990842200 998486770 574943587 640005206 128649765 745024395 469902925 803135497 998335003 999103019 726894609 980003043 787727696 987202420 517541351 620233586 284118712 605372963 605077727 865393901 650858905 974191081 603831910 933873005 158659138 892256551 149853525 379526166 472514511 877360375 363569314 915550408 667927665 869214906 872462833 896153632 925686926 983520381 168639974 571238710 740489801 849365990 586325652 755046692 719242510 971079177 58019797 834463073 600972499 786176092 692282811 810368165 80020769 857409714 221938965 285412052 804545990 815081235 606472675 723478076 200060515 254633205 204020093 618645331 318155897 342514867 168149899 875382869 267917583 512159541 837092937 894344883 817377826 962278817 385675017 660419507 7887310 957568946 449225976 837001159 410763578 952461536 947973444 948502428 37019350 633542447 971717518 978060882 483761553 989579337 48104219 930966183 36914740 645339053 539822752 933761569 92758720 162215394 893588738 978434782 782672346 802722506 840514155 885820010 755783580 918663427 634719264 915804288 40001192 926205553 725031627 730437519 537061100 617184241 77642479 846530423 117625245 823417431 383253770 732095845 916211836 936709095 655122632 986896335 686187017 941631747 25990328 508841548 943867370 949034056 204750344 650020787 88428137 140883860 593025043 909720863 908058298 983911818 860030521 896705287 68859401 783095584 502611802 744071666 351041896 443113222 681204755 853174301 282783809 770154860 638413003 651350077 594328654 992902897 274414491 290387700 921696976 936555542 901310936 971904601 481155111 835484476 833126626 898216432 467752833 631347883 355064260 490794613 640408704 683603015 934619162 944120475 789185935 914291741 34991846 348498328 381755653 471817366 672754417 880131006 977249335 990000769 563669745 602417827 596127828 692588970 199324594 474897774 915253740 993488574 151348078 564427589 3720393 807112783 829962586 952417910 724445765 828006922 168262220 306599268 974201947 999077385 126089323 850860867 559054659 787454965 577478157 804808577 923408814 963886526 623223967 726312614 213647871 561147292 745416277 791174709 145771940 419430653 440825173 662037866 781847117 851602221 959136767 959540761 956691126 989108145 284584293 506498011 108260897 974129833 765499633 841738405 301640090 734924939 685801443 752383400 711743563 901220950 851329857 963587000 494494774 665308525 192315345 805038983 944020620 948973760 412462810 792340047 438669213 906285403 918784560 948274265 367983143 648441448 832476016 878996262 11134145 557338148 850636743 994810138 757398020 861848618 615706865 682929726 423258768 454432137 579075635 943466145 494012974 904226796 209018517 711825965 963861239 976411179 296268441 473884690 584443367 997883410 58622245 344773135 76992686 304890126 985125997 992419598 416287737 517985950 40706816 304095017 153713040 839658344 976569678 983875220 172912349 306781646 582940049 748336327 343073570 609982861 430733012 932927312 671121785 706279247 481098727 741018267 711847155 798684116 188493226 609704095 907133292 974643664 200556401 801889476 231651357 708317115 640752325 663607712 333864634 940195343 540577616 689273035 384867448 808434873 154867026 301280829 95622579 330433746 889012868 965986871 761784280 806836209 879163155 981357193 892215244 956224686 507067146 655427437 986198097 999166647 252038330 864326420 14375149 388484701 877727630 937849691 836168865 943603957 96529167 938198694 769751461 776540737 834299457 976068394 755226458 811941647 483042488 898442539 679031661 927425679 823188422 924410253 365323048 996481053 203245589 834273441 875984444 985101101 913696420 983982802 91268286 467077157 486188121 890265572 134077598 682795116 318602973 617410734 662794797 675159911 488363083 707243674 92867858 274299773 400442017 547905950 365273173 461457751 140012686 586135880 686448286 847367852 947838585 977730753 999061818 999306221 961133304 989732643 270219545 621578814 24064698 678281290 479484262 663438778 685241504 817715041 67724216 216267377 893089856 955106724 651393022 773810395 356777979 392882947 642006298 658822174 720008222 808144784 171795321 559446728 299534997 806143319 482366672 724060686 213810872 468592199 779187670 892909638 631444905 932892259 157962742 239739099 746338617 968307956 242207309 851852615 574863662 676485861 256835028 902511493 366438176 901215153 571758781 912166112 352104831 487258275 941154751 968415170 19639050 772215755 810187781 986673654 748017579 785870605 995234547 996296644 386836796 819453046 213420881 998553407 854816620 957527417 622642897 826415682 782517883 926091801 623727339 739884232 900692457 905002866 778199372 792795352 685606609 867473159 111861134 180644965 915925626 946690881 615132084 940891068 165036143 804789117 700892833 900905260 165510027 168855930 573063705 919967942 816854094 912164186 440079189 630619284 414985334 787335826 901964571 914428189 178896985 200630626 299868600 875810095 606343331 794694918 556826412 922174253 658457422 905591175 405622612 783216947 922740550 991212416 120501333 544248968 357819844 985767412 921386550 986526528 197236504 838461327 265223679 371541293 521100097 522780160 710485737 986070728 993797301 997662567 457152647 626252532 186102093 771355485 481863411 847697388 592604422 625764552 135436337 413691133 633351019 875842183 436498852 904022978 255799623 483112707 242667376 384528842 624852453 982041722 900000164 954627935 815694160 868512779 563626364 818014363 591302292 792870232 734117373 877343295 582469007 678790392 149384943 772510400 731146312 767884927 383329442 462719726 682839480 911685132 520221973 679468744 622365471 855317875 279334784 688445185 798627271 883974729 790366266 940821843 399993482 676808747 851164495 932388163 588233063 897613452 257518939 441708908 767701843 829856507 814755168 816397561 185826186 185978949 231233753 244260014 505448228 531750476 718604641 921661005 668225108 674097338 939439351 949575510 545757568 815181670 813794305 902144938 621212630 627648839 882077429 908863290 213130552 234010275 645152305 922409553 675012747 857746536 798754541 990789158 591980126 669325517 355241527 643273190 122181305 139078355 599373141 680315046 556766916 656205577 258383523 270285484 672391220 786645006 412130836 515502121 689423238 926881046 130528516 874369569 770317109 863401435 428558677 568140397 933483650 983048437 121977833 240322836 344906145 557338521 24849472 305287462 765057622 858316465 109339768 872818782 251179693 740470284 356356195 483584951 335702741 960367523 218959137 295427372 877133567 997385343 184832499 801930456 89282757 919314876 974354949 974704372 118245536 487633401 332093014 841554417 947623786 961771470 368749518 938916414 12156972 503561960 54831388 730916549 343965215 358978802 199654766 656067924 925095625 968282125 814565077 936626907 994842914 995924491 124524664 404581585 881854998 964327090 457929361 923164223 167677578 231046879 802273931 978339642 241087803 771663768 580213650 604241060 430040856 815718282 807288542 817000771 552901295 634932157 792927623 978517280 589615687 670120175 219351708 587779169 83001434 963111688 108618342 539432089 186756395 600642406 851511395 955537589 74244475 980698121 85282035 998647241 403382998 596706006 259028804 832180332 936263134 972963020 660657321 962318898 942171371 991208034 87647416 184346537 832968278 906059331 598358247 864335626 212992031 743112117 278135303 725128781 784413317 996414246 93723107 122415472 312039561 604978366 680367764 858414728 51241652 983182761 355574268 636331100 123245618 751270185 626265337 864382813 100979489 164553142 96370924 847647016 764720386 775167645 738409424 743601513 736706713 824514517 251694663 762029168 642795445 854978630 602765434 945840856 818597878 954546331 715538144 796126714 911513944 977957888 246997140 520032353 27552731 180328295 499225413 987800124 71995953 498541520 60428549 673607108 918309287 938992525 267646750 519055218 984301660 985562564 955564783 964924684 880046902 928323444 100606005 672819802 500902970 688433211 196769965 832631480 843164803 996853891 58541544 871378108 676531027 761833839 120634531 189997831 708877334 759688912 190505172 293192307 50777831 760265351 447255580 920241316 993538742 996525519 710074610 835951440 7895475 44321430 465086555 745565931 416689341 658638472 197627918 599793830 511072582 539239925 257893745 835151997 54339063 896179312 814605280 943229172 343430002 659375037 938816550 995607801 834223391 906008916 394991247 737436508 186467904 236839617 181405372 925022769 256480911 513463946 813218550 875521067 877344838 985095386 720301391 901336337 178230186 817393515 926406865 981898210 754458057 846002544 523378143 798136113 266975587 475453421 79252263 218917943 756374846 777355228 299706692 502053382 305966601 653812445 23575090 488600458 880196010 963527576 902373548 981429781 776538159 861945636 588282862 660476869 679569220 701401184 270394227 333709811 635048437 760227276 980149253 993088651 23666711 600894182 698421586 758793926 911432362 921971239 514138910 951903086 340624230 536884950 290923698 664452607 626899932 649920996 766439635 971704863 11246001 167447779 658824407 723528724 912630843 919688672 135093710 726578526 742954949 822816922 258372456 509418766 368756386 673827054 261236983 285959287 923333149 992660018 166321738 222531768 777997101 984895058 298969746 462775454 394766914 677717204 327250415 783549091 275882545 697002550 639860378 670399980 598503930 709831711 546323251 754666116 127997086 939148454 929252995 995034936 705484157 705618265 436136061 582546613 512519924 921462650 431450693 477077210 62295529 909187023 48260668 675949633 699730584 795338440 310048540 750555058 863661584 922216203 849982622 869001568 297923246 990840646 180841383 815638547 80416185 687430903 458079742 728569524 705523443 846097030 247404597 431929065 767701504 899028329 221984255 421225587 227016558 732489361 283676309 990161914 891605046 966238305 371152962 387728842 447232180 722246254 164695004 573759377 434701851 565145154 132066595 841797278 476898116 684248413 901938570 933258586 918618574 951372463 613870736 955667857 608702465 639044276 551818804 574718521 802127922 933726796 358349357 684237357 175779385 611860711 507114976 683497726 578150417 611999271 454144007 673531741 892734276 976382571 322239024 980746286 775012393 944828980 444634721 759338557 178811452 781098796 703902142 862671109 373471656 992724309 404804637 535885764 101553896 968386081 788658535 992329835 841935569 943173138 380696625 869794517 390692095 531799569 534067138 833051074 932454387 982601179 183085641 990754893 123750035 662172764 36399437 568252586 199977826 711422522 63013283 978922354 36094524 797046267 184718370 641069346 636063908 723518778 763937392 843887266 698722305 803059314 340516425 391845231 34381814 493824017 49657062 461017376 860038510 977086513 375638069 651408578 89222124 326674230 741137292 793732963 162648727 678941677 606667052 859744665 96548970 411103983 176979209 798408329 597985618 922137942 216278449 470969947 113974864 254446577 966538549 970848559 930201760 968349464 347088317 573764554 267888515 906759305 119883930 961568863 385876362 500521099 757835785 918263036 908284366 957006058 941595001 982991826 663438019 990469971 220566233 731930772 81785514 684833418 470963143 894510002 586577181 968039177 348098143 911534610 174913278 684440054 923373764 955022050 406626583 731478398 454733394 813023156 800178784 943881737 671030002 816603722 270135774 470341270 735259547 890404798 352670341 969273832 250489760 435984728 446156506 665446709 48645021 185943979 422052085 789907758 336963916 692377338 350411472 659378448 21200180 519732279 422598415 933969063 532124505 682899428 842996872 857493725 780998186 830957472 92901397 879474600 546043396 569509197 42699695 130189683 645746730 809593357 510072566 657594575 978031084 981480101 80361189 932495720 425200234 470016568 337277956 729988100 16748757 651087055 205843967 836874502 339691425 887747400 626247708 893459472 725223075 919295082 506110267 983608931 239932117 694021956 446150773 777834527 986095601 998084124 394238771 823885471 547985397 701084365 994530343 997716270 822370109 851985166 994413258 999734284 356603956 398576683 950799984 991456052 492751514 686943910 567544400 630074087 555410027 733145958 541156971 799594530 897825375 920092660 566023357 831142938 475150198 512305719 362893225 689464916 751569618 860895912 857978602 935796129 306273689 493568075 946354651 990641056 97856056 436495085 596836931 978764680 252792293 513132924 966200274 986976945 504732834 934955829 164744209 404403244 179163136 922278678 13287529 347011809 400625311 631512052 281159049 753695610 734780418 834802472 505385618 660396985 258434648 877751074 368895922 511629838 87715396 943044369 311670092 563254409 453496888 999455826 625713407 862071723 583884643 598432841 404979734 747119912 443072211 496152060 808523985 816592495 895763989 937564640 446054292 816565181 929005218 967722227 912434942 921362444 636083142 918815105 795777008 884465674 457500905 928999612 348005329 498171868 943146523 963289881 862834983 881429545 804007050 970119399 106526509 319544706 985072445 986927079 491683933 645493952 426747925 597331947 102884769 738384384 110975412 356220490 450963960 567229324 339441882 383626890 134277461 921659859 464631787 534037937 525030045 843918826 604600975 840335241 64342484 766314276 594030672 832447320 457822328 760142559 556579092 992836636 957832022 971280594 772866768 922813220 690546760 713263321 82618817 763925640 759269179 866589359 274464566 861816662 283238996 639138014 616493470 937459327 966449823 979357701 246360790 990075636 504912603 922210304 792405363 819573491 292225757 426720970 370966807 942692936 129307885 977706827 486395910 732846573 199787178 309265340 67545706 160855024 240587615 606756889 992314699 999234656 779636967 787636480 224684459 698929131 200882830 929263040 737763330 908745476 136123889 775975617 90769981 165890678 99637832 559657789 815932253 842029978 664839915 835296174 866878876 988074644 719224174 966949404 987725957 991867132 76336657 260395752 942014721 973838916 269874248 302769058 327591635 617221362 534873645 590108231 829655684 935613695 858193309 989327955 41260298 708731472 868562791 923518970 763724068 827634450 867056855 871240759 200042700 477456927 764519946 874563970 391460169 605653042 208475110 606822796 603045425 773709042 401082563 768043648 594535741 681074187 104794712 386545919 60732643 560472903 323884353 566609296 881545428 945236868 436082643 908782229 518479930 901643260 608804605 653691055 87031355 308418597 76678348 336120982 92490188 283397676 71767229 965493560 901499268 972976796 755530641 998069156 270940582 276036069 148938887 189796699 464960425 882240106 906164594 970441111 718704994 875968147 257848663 887146465 102581125 463807982 426734819 771884772 460117820 496957283 780547314 796536360 803519637 836925136 892299843 902992348 832222627 993728926 124081337 140427151 325837039 817475877 980774922 992843072 389766449 788109823 569210412 966279831 103217321 684865745 459782647 616679926 323536879 492437521 223525355 448319077 151197022 832482015 955686637 957772589 362379509 698554255 288483218 780881110 645380958 995899070 471663082 604976893 505903520 869115158 9097321 345302145 622786773 928509036 98013618 457149139 11816895 332735525 461188028 819358158 790392990 999798646 856484113 862969166 298685003 659731257 103330584 188123667 181820492 396958884 953266039 984230290 536275448 894863115 387539475 473435389 276279056 781338224 22900200 661314821 914874425 926686441 166408015 907822549 614528062 954149485 724064587 830120968 194135746 798886941 428847669 452455678 743267716 779824035 210736817 511086273 569400297 762146821 708064176 818406312 608989284 935898783 611109157 757624705 711043601 788878729 124911769 279332461 519363634 597875743 153204073 913531732 729102391 905008823 74007961 719742342 712135843 981020405 258216753 802366594 805347893 974635085 396844861 543351151 19078921 633561664 923307802 947859467 592937505 879096069 738847236 779284648 850128942 888942809 718781717 906341144 478718830 852706996 126585287 498171213 521129503 808424203 63175631 356090523 500789875 560410851 22295596 851270986 650245497 811518205 851064627 933884298 910935315 960746849 536516101 702900038 158308275 778125420 408033979 516415746 561916600 922723884 29040615 777774593 588971821 986727370 770010906 928581339 596762371 649521817 722924498 909554581 729317973 988946028 951356085 965870197 255616857 316532677 861107401 997177862 811311407 863424639 345966466 875697344 988856598 991300481 331262752 423001880 140894302 758776975 820297848 915650582 842970661 847935790 934229043 979668330 130465924 366610302 755755234 853843748 893309662 955927182 379009473 584118897 823223642 986316345 919043323 971641064 724761245 929131266 622859092 702987662 241160839 776980066 497106997 984372168 892444058 941812989 770431166 896670545 637925333 759609507 582275472 859317872 206627402 704591871 691299555 968992265 460955955 667885513 857109058 896360277 331771178 867403560 205667837 674269623 82899929 517381665 710719768 999425260 769112025 784556878 619943427 817403614 602309241 916162034 480149471 509764547 666351487 895185159 967459943 993971676 161988257 719624635 744235928 949499870 864743724 969870209 421403685 638784318 649891760 902379900 389951126 571597079 638580851 920421915 584306212 858580145 375817624 764463800 167632099 676319188 848816016 943533593 441891172 668614743 333202402 697898048 253522318 471199294 256612631 560979925 146683042 518984925 774415483 889852042 795997177 809805589 213739742 782360668 713471799 790820241 702032357 910077158 699682354 865560756 195853086 757704348 415515270 869627263 151175524 676607525 51309874 595435400 966365255 968946487 16527748 302895768 925213522 967272308 172291576 799535587 641464517 820815182 164250647 362951667 283005705 668189121 707303773 855017643 812478654 933707623 811578009 930073616 747354703 900661867 723921678 743381120 960351467 994854827 981379135 993646027 8544873 295176274 17234881 210368514 548630984 615323381 876160675 964096152 758796197 761900407 311401741 470396853 223923998 971237940 474283267 678530458 823496423 982888683 913373215 983351823 249590029 377031857 556794527 795517592 512771276 656757974 181264409 786163202 130833851 217011436 474027506 793031580 985588092 994557355 440388058 594053781 640667126 844045035 321210924 951682405 975211352 993113129 856410624 960047892 708079775 750920961 434268954 673816351 145140081 999508159 944347202 990537683 213366883 423651849 238523409 391411751 336657752 604754819 795198575 849993645 489444169 636429568 274211816 568571739 176797713 542433465 916955144 942770698 206107248 425406982 808441178 991918080 286067542 808942246 972748189 977962698 675857958 849649038 652687650 700788099 535818125 851667539 344081204 916057436 573707752 798664130 561692612 759704503 509009485 541451703 72359523 790398376 558889261 728667642 886896974 985659494 891795389 892246499 996262255 996367478 398149981 448589351 198920082 379038816 645051777 852726352 651343497 987382402 936000304 989366402 300572253 683315194 587287284 881067941 679905269 936506377 322542028 381485519 920900555 984159330 290526687 833499489 913660031 927052314 828572343 888034676 829018295 856801665 426802145 930632077 129909590 674876168 139422813 152267716 473118457 729586101 887391049 941986110 98253754 525365537 76999330 440138598 884867913 945671865 131175232 625220320 360204360 414004923 165226173 750839196 20453919 136387165 411065400 895630143 899689801 957434047 999709274 999900284 820366492 822727583 68631580 758533037 838684987 956237967 301663073 569294722 502925569 880599632 924888304 971531410 541856239 659510777 627422325 753537390 822578209 911577478 852488089 951560046 720275208 939462641 470408493 598032526 367151983 531296922 363783544 918637947 940273881 945159004 635913915 894936042 461763290 621892834 242981176 262356913 366980527 873102104 449289910 486187728 75080254 828315597 622039407 803596328 12854704 475984791 338593704 710291575 540233641 611710394 104030617 782295421 793327406 943523949 872251403 943891070 698784721 710637009 677736782 883644608 795302490 835587079 413681004 472606390 875893673 916919743 730578545 899564180 415248478 867532204 118751755 682224660 294536116 321918393 61172408 867847383 717465769 774019923 752351976 839466487 773962350 941580886 261299063 586597347 513957281 700964939 62313896 496380185 206305533 833686162 528058280 539384886 223693327 597124085 724119662 871537493 273042802 996879036 80923170 647555327 977971169 987123356 43050780 264360163 699529489 781997380 155833387 221915153 276125413 872128619 931198042 997832063 169482475 859511397 753173398 884291318 987903606 999586837 845978764 924572416 926235884 966768400 234877622 700625946 606143752 971892983 730715634 942478192 859707171 916485288 921701048 950771423 777519077 918022851 639008743 918152913 216620977 285924521 932564394 946673822 328895668 916680868 345987187 414485516 296760942 628296625 866638404 924043939 537636106 780778457 71949692 227008104 615746370 700423561 446831254 882411345 825942840 890018886 581877399 685138514 87452291 914965986 728815384 745206391 862732842 904053147 949131903 988912575 879418197 897556819 794531040 980103032 280021587 426465108 318686119 955615025 831228292 936844234 216178454 615317455 712394662 966032214 38572849 642278800 881462499 916219098 573613343 666062901 361445946 607928981 378547553 455006354 239850778 739595714 476061086 840504473 521147688 759092502 939051010 998334779 832404943 849703857 540955693 547216392 810214943 954473467 975459064 993521322 900942372 973534258 28942594 759906248 642580079 977172102 835013540 905435184 873208029 947405109 944727684 970734768 178475894 294965506 182381939 777724667 613230099 847249694 539955841 821129161 88913591 294250427 374070752 386805187 320379660 439904108 237331622 755105104 201934997 234392570 862229248 910879860 399003142 462598073 930135183 988791156 167553027 255479007 859859665 861282929 835241291 957341928 89215486 199894643 790922587 942412110 771882561 788743754 930988684 987308290 809748690 977883350 770274684 916305723 90707304 138816002 630207149 772667593 682113507 724374854 619087562 803004817 345581048 514349880 190383113 214805046 874118977 909279923 688118292 775447279 711657198 876496414 547914868 749663263 456711663 809057539 407086098 787504837 874715715 905324729 944860712 984151487 884783940 927883089 667128209 909149538 380705260 788709623 160468361 226004287 839523172 854715480 854162102 968230905 286807917 821348918 23503017 492793673 878039868 920470742 724152945 928202681 748381860 890654687 804196914 824462702 757513688 910771966 686401705 846843464 35224141 936292872 766728739 783363692 657247742 716284191 386315523 547203351 643435307 655062980 855590347 964373204 852819445 935198106 152107545 742383017 107032278 113480133 976579913 986870947 955983434 967298887 344980789 438521618 93708081 646440030 775359039 795263251 64288807 112960149 494680656 753306363 480439622 664815123 587116518 751594699 478352497 729458285 53233334 605053979 918472735 945970456 647687180 802396365 486812058 860348328 70597412 378752546 147868091 749357506 201375344 947473454 989819365 995757309 642271149 921979353 216108172 702691070 774119365 821579357 492956107 978186853 655412202 885670949 175125752 996261989 439208098 701910124 534031298 947957419 385306710 828137140 661720326 806215690 670677341 678790502 735215898 851536094 366816457 813057716 632264027 698140285 766404788 826038224 726094951 982890820 523752512 842441993 247496390 801266345 487308004 842173710 482863595 514831716 264264009 612496180 982796899 986004821 936162400 970337986 436667918 750382606 277073547 859418074 185757013 830877906 430641606 844455957 871357107 988880521 441168568 950571214 461263540 558407572 20078903 864274599 933977824 990219359 793643973 916410969 406661456 856087453 635221289 860973000 870193158 993253093 48566510 904532299 972880094 990157235 47136429 543938384 827588408 984109809 600816535 828111523 230254386 436453271 100871531 836459538 59154360 659563268 251275566 662117525 736389441 764245896 541978102 978834269 764200843 936577170 791202270 897897225 499924527 723157153 819968220 950181685 197501504 281033817 37462548 356002267 646038990 930544724 962078829 963017714 167453801 403305660 242913782 364146393 998953641 999240905 282972394 483245914 224340370 508864502 310502910 327272771 540811714 705111614 115125617 224769528 682197248 745393809 325461906 399694344 599642121 848111681 645502924 825505246 216502602 358128288 978417306 998563913 882525723 904733389 908126042 942701311 439094084 636494073 797418373 978190257 88228372 294290092 601082182 769792700 321421490 476365349 170156071 848816719 921101944 961642672 892984423 905819032 945612221 995177740 144356261 595794507 968156316 996788903 346746174 908046891 566212880 893844516 964827641 973593373 173904335 956245688 226266462 796544166 359891212 917295084 115683914 952457831 468434665 708105531 162164391 739686430 995534761 998975788 953250695 955245411 392158027 987033553 283148174 973158083 886824319 895568125 242022283 654898326 78051653 182168342 486929183 780646886 195519337 545149381 374644891 991005703 484472664 802428101 181586307 989087467 438732326 626135451 330333573 721891247 271039055 319879633 703929908 758593982 422726501 652975197 70306953 389997770 344771556 934605738 731577485 766260880 438485500 483347679 465737323 925930511 496432723 600149629 896146983 951659112 316949996 882694596 848514584 918465272 67965605 347322688 705462867 863409898 693650932 951645676 272751713 428309237 413004511 958775062 688517978 922611347 481003376 878546267 305321669 619705555 293032114 686529080 471872370 643404024 56676312 381123479 190674461 249094732 15645141 383222526 800906999 929572098 405089338 881781487 985120837 985568172 365774184 926067124 140176487 159027134 95405957 772251456 434885118 767602408 989009060 996537618 267772962 524762221 847877144 888857571 755362001 976014961 980443238 994504624 13891187 695150618 422163698 815121060 485868317 632954181 915964285 916429682 881634605 975570132 654666043 928959064 538718053 587342063 380392360 530221383 364362690 767051044 88125413 814221784 994427469 994761432 389899595 595719817 225838028 538758123 622169136 872241766 764366909 829806180 465824596 518203012 558590410 946316886 712306130 974162391 446520091 793065759 328297637 687651921 891304654 921147227 562748480 871110421 170294718 395172046 10670106 850328630 203095860 906742375 442391787 653738439 508343725 595882827 996035361 999602065 754956743 914678469 667962139 862779279 911703082 995182739 667279825 755444146 408989574 862826315 886861655 925051373 854750535 945285821 396333885 860176469 121000119 593003583 100806725 206113073 424240938 799819267 6171298 789422962 690995020 910760767 922170524 979514104 324180957 874015147 752539551 775118733 379877398 551310029 433770488 899941211 47473648 464617389 336423016 370445969 550357112 776341937 157051719 272274240 250684689 412204273 525499297 906957175 575882655 680517915 672840283 684428712 72121148 433876133 675119261 814021715 202290251 864303886 33825514 638013362 987993108 999977422 559328050 677524736 641101264 656586571 606498301 831578022 281646536 977151799 859975274 927983977 621028482 877292418 457147162 894257454 201907041 675540252 155875436 592195816 745479280 768849086 528087461 757109598 205050850 744705608 688448210 739777060 2057502 497328134 34161722 850788999 698921244 754852179 713017281 818536066 710671218 982405203 465330137 972435734 667134790 871159577 55888714 821723449 898930470 998343316 289226531 979354963 607920293 919646389 254500394 362244016 681918313 888432572 539194383 993648649 72698468 281106351 960232584 976821134 644592490 787312096 357903884 620109333 407258579 667309451 161186711 167966006 622997135 799323239 559799955 834011437 149465115 275838213 39640104 88209793 171090701 444353438 467880962 759170028 280611163 537058409 896723257 939169386 182313826 476033232 475657255 969325750 341655808 618235049 237956740 945159036 72863221 151584230 84901479 887014593 774387250 863594140 607980163 729882803 748468644 869953880 907676218 934411145 336674360 362135579 639427094 799256048 596127266 915816918 766341286 869722585 295592272 953514180 570618821 857817776 216954919 771496294 824333401 915283488 251372115 833995445 515342089 809486878 717140391 733614339 237031829 662651080 909696180 917187904 956185622 997510362 691944820 713479595 935079066 999199558 758569107 807572316 259001613 604628480 424249427 565024750 736770632 967551538 428940816 728333279 466914976 515174154 809937451 897861170 409320983 791193631 902991549 993569491 111335122 886295575 288258246 390945726 424929300 640805184 881562345 895123002 44429864 341038295 80303887 893812648 170086510 523405928 662605532 697391424 1958802 193815062 123039206 132513932 832541184 905164704 314963541 383823153 690793732 711106629 573946119 807293560 333814928 922950972 719682388 926950011 902461981 950773930 950705568 953655273 738823489 915610995 151746954 774034546 455637797 801209002 826579121 827977493 409053567 533169175 808427364 962776684 367227349 596619676 656219743 781251271 7801119 499414069 916940553 972918835 645704667 735246962 109696810 526203567 304316021 791988550 619638304 960499554 537513751 672238990 172990073 511764924 226415724 763556903 220864217 887556876 816715774 948177497 281413893 445655727 28757793 496848070 535235199 572373926 846937841 985045753 326135000 388224609 919002564 942426061 357208179 768646044 364855923 620290033 41109011 729703208 892066686 990974800 202181077 470021912 887124214 996187012 59630233 518387521 95948087 394362944 584843512 598748455 210731564 231501190 543046529 589735765 43641527 318123081 809537757 940404700 603878165 982013185 352463082 827702254 828541539 881149775 30861444 57489328 431531152 873631973 909876551 936436257 11742722 115536167 18832266 429261554 963373388 966835618 239378423 951714381 82215697 245986228 163614005 494512159 267890870 544066141 595194211 680360887 646514570 690300898 759262610 798431093 650824519 750477248 46029492 883323132 464362363 554615953 393837232 540466046 201989613 489272236 95180405 189340537 80584841 342487064 18992369 244014038 43874316 487915494 313252654 678122066 352916337 794214020 663720188 903905089 33276879 284497331 858031225 935273857 847088030 948235542 758825665 793302343 705960780 972476915 635087727 980968502 395147350 522574447 485519248 973864333 547777722 726163355 95150339 508853382 546672129 867086016 549036865 985354458 529917361 837464179 816486422 841040176 952383248 985895923 11532830 56091675 837310397 998201402 424945153 964284862 742117525 924052820 222939114 246496985 741908818 803406324 486781222 771357277 124062015 738989301 982455167 989639561 112336652 524552472 666231022 980308200 312545576 886595627 325055616 958925105 529478225 624739847 711131657 871131280 993208871 996721066 704301880 963756295 162659830 437399516 805531072 815155186 613449160 964177164 138462225 846012331 10251706 845005591 857373114 982953157 589623935 726554030 648986339 729091047 205743458 210094947 29358679 954139723 270043370 454674409 599732313 750314423 528272243 863657616 95109585 810805065 99297693 773227312 325363019 697058330 209254007 706668358 413212458 499842631 731348338 915279285 913639055 967507858 554752680 794307835 482499081 843285274 770105054 996444842 203945697 826649788 324905612 385235291 964596056 974679839 13966887 657494259 477352551 696121555 254494388 809474043 667177206 695442338 106231323 194160248 192190041 327682318 308301618 827162738 204628868 822976111 327629239 640517549 885969146 900257476 157968533 778575468 34651893 981537430 43264995 668773932 304999135 540004332 957732757 964099116 579074903 816042774 356256982 671816316 963754857 976056120 651391157 661793020 560571346 822816068 829075722 984298218 609612812 734543424 955262517 982529867 396931365 710380416 477920404 548412737 593889478 871531916 719975384 905351654 980478453 991740884 623045699 955592171 356694207 787826220 592523543 833182873 313779921 347940933 866082493 895039318 358485685 932684616 201145706 405058617 322395827 588790937 394386936 894635490 675158365 697972623 911583102 954658905 816490112 920916230 177300265 366058359 645899689 685231345 351912893 794812133 700666574 876825248 813648366 892084630 768356586 998413366 941552404 965600587 463803764 575124383 411625609 926418386 574156762 639506731 286391616 820075372 552654237 608933304 37370954 402445927 982519674 996392244 226976279 395551907 281222410 829521195 626032839 826080231 421031212 884891565 252549823 385238892 40295448 650160587 762044506 975223949 64240188 819974210 331027214 978032046 187368825 697429849 758826563 821663394 440929885 474471257 995562992 999011524 663501728 707908827 663075286 961234890 798719650 967065550 681938262 746829888 55029578 798087119 266852687 851500060 124186361 300947883 452948024 813985333 46113110 707525555 703244640 863457927 755417236 788789396 16901019 905091361 44182870 463087055 797904064 901037954 855003696 925914773 145055281 641282280 373987977 404500007 284982860 429316148 709522521 749095986 540847648 760105247 430008726 811725473 981841169 994680408 932510175 945504523 9826555 379165423 611999335 871753458 380299559 595539431 774492645 808528523 662016020 766996774 763974654 871109415 568422104 579824722 257312974 709812742 737791943 774621162 716406657 890689546 840497496 888813702 992752418 994985980 643846178 935743556 218181290 886430014 133589077 702877227 278377441 461480581 909347119 965782958 765007517 988069276 738856471 865586464 612355749 893590843 732745281 741836280 13601170 804945711 803958941 883163136 491910712 717555922 291228555 555659676 210531294 399336990 846894299 856175149 113839776 749361103 802354015 882555400 830731649 863818883 992677473 994480730 974883670 977193276 778821093 814659084 226188633 897764205 556464634 898706761 263207620 368634419 785835313 819559194 845644765 915923604 49529889 459559273 167459092 748896736 800354009 874051677 882096063 889348299 996911207 998212475 368686044 606293172 284750681 715646074 523746462 920661235 369039636 459725641 135169958 737328940 852944481 996067119 220647185 800449543 593976665 870227093 225560956 509530853 820548748 889599002 734048782 910054711 598565262 646484944 162099304 395525294 860759381 924756913 447902231 539773790 943751751 977628475 859589449 876373392 263266797 750037994 182832635 832296243 161269493 639892271 161274175 183764352 26266609 547493666 570925899 893633735 598056202 966474342 652048979 786065191 694772640 990709504 223177458 931284699 995927296 996417726 514552399 538478889 630799971 810279668 109442554 425625661 237630550 966089078 830425777 981845540 937709280 974623840 889659783 940799654 591637110 842327303 41111435 845396184 177765996 575513055 981536678 990650042 436691248 541961690 291333875 885337217 560156678 850927989 817086725 938766178 845956414 972752145 15808180 283225734 633466854 981097778 689310432 696441350 184470389 636734398 686254822 746866053 418374480 744862398 676107753 785895605 743081122 828050412 710714178 773225951 11942489 221401963 859504053 971353976 113253935 250889593 41591786 437764140 131424010 566706695 17544996 561676833 464509503 624961260 858160178 917854041 89669043 724713785 277698248 615862451 680244721 818256098 769023426 847924540 530137375 688082216 395739534 690342707 565155674 972071108 330203061 536105916 727149873 829151770 620851420 784369202 12926317 552386120 321433259 737196259 934028378 997054592 598580364 882327308 904277526 943032830 493680751 845378642 942285225 968011510 403466576 615298556 537010970 969061135 381455374 567587914 787297912 799303283 447506389 538397646 867133394 881315588 682544928 755293906 700624959 766787971 141557548 872864583 951036617 999879420 199887310 919750587 80738247 707158080 485424537 704118072 512124741 968251085 980102723 998497936 603238741 732217145 141681924 940988729 214855883 424498303 288794600 300381383 553529310 728446178 707618772 876521429 788332356 934538565 581099915 613730274 290357928 492319290 236760179 631196406 76661355 344974058 177285815 957625946 20832252 901255516 934973459 983580036 313520239 352620779 430208363 848140913 602063903 689154521 503912160 558905283 861052970 947475507 689845578 931101540 251774600 515632218 865240962 986490476 258557505 887373978 774369823 894709106 352277238 479940393 269162764 526651320 451062844 474137947 115363816 363657967 722342376 734936724 934240898 969955697 252934429 387776077 910885494 984811603 531603997 846428707 184783631 685216682 640784741 908629203 318871251 666273218 367488281 426245119 626021970 754810921 565473823 909917752 827872868 971623474 752519939 906087694 770136447 994091051 918029153 928343315 44227250 105023223 832649102 897076380 1233820 130037462 701812533 772189194 189714681 563982278 533969819 703522304 264672388 409416236 314387434 626376977 39832516 356265111 851999550 871466609 8493352 256557306 68429584 267461258 716643285 838674832 798773978 978397443 133212058 844636064 957735323 973630049 43054177 320188526 297703590 486390696 648892244 670058643 524556948 989204257 252556023 618479377 87875472 603606466 682485297 982434856 918918371 966307035 906474512 953242096 228684918 379702373 217127833 427781084 663160182 919031086 504261055 661207297 345511825 752849606 535590284 672597237 289439203 631038262 883095997 919043991 578794901 693570506 782823825 807646622 250058539 737384066 921323495 973181778 363659653 927316594 984685527 995107584 714637063 838169089 232839611 427465249 99789056 996193085 18852241 983471377 83127233 256456833 1509061 44484652 43613041 447727989 651325282 815774293 747629187 826116301 42601970 194561463 151583649 625143033 864407553 936722718 319524646 736200865 235752913 467992976 445024900 583629123 958828196 968819060 314740332 893729308 529126851 727045355 140932525 749697462 959870515 999595646 948721055 968362403 607427367 683717244 695947620 848019990 602192338 969224334 257095206 432056534 245823521 287770547 660839768 877933495 163881582 389015805 781701985 896445551 306098926 992989660 821846680 989445631 645670543 906445557 707546070 939518907 597560307 895061555 675570049 927132121 767860924 932979755 725183904 868013730 634015583 745781768 194391441 497171997 51127215 760235022 214744414 941614636 958365445 998440091 483198684 861261968 962343855 975463115 445314153 779790666 220117650 383892977 806511906 847024538 918091569 996213949 193163506 291928025 929477950 952332156 602354153 835672940 799698965 934309036 733533823 791820835 404947628 982512146 531855404 689668813 488857911 516399909 611281043 751653414 862595060 881350170 743343915 782701924 957505124 992988678 684614779 845129853 980849172 998103722 110115795 139619464 508300509 691610244 539830359 564227883 998546114 998671478 184052697 626389906 647952938 889650365 268794239 508634362 918161317 950390940 699856081 943566175 657147800 912627194 751805442 908089413 553643868 783559877 102916406 817756345 186367668 872991987 474263482 566336707 843738209 970156819 763264635 940258220 433199911 669917856 477052804 563277239 899716396 933083944 748377642 948558867 385668796 938995934 980614848 994745890 94688368 593415635 283152902 816766442 233201590 456970329 335771709 928095211 291059405 744196623 26125798 195616009 386342549 515852316 637329581 946147945 627549242 995666101 787175262 906981385 768797008 768831883 168523084 593837545 489549491 730762388 975565434 989514611 989517897 993395793 52435747 686157953 406593412 637091023 323825585 424464164 469327186 738087873 40371257 273012607 710389254 863443213 615494366 824128057 903380583 937150965 718413609 926449350 997237322 997565113 565231531 934168244 228426280 508161570 389152142 684796521 834680936 850744801 12700967 871717105 905013742 986567143 796321582 935165639 686591781 859786384 867294676 901319980 206746787 381719189 477859487 802607147 430348639 523014009 616377865 745071804 810496924 979219394 553708372 972294502 239008601 326240582 263648545 416855192 507672233 892362143 482708899 930485651 419914239 452246905 734147711 999074506 928982684 954646468 827097140 938541978 748251583 889572836 28694134 86978688 528224073 917638567 36565956 515693991 438559133 692664786 551206705 594154284 875092094 924851647 552090053 924112428 194628396 432712163 505705001 939656426 537830401 816351244 982484004 985061308 761134015 937872804 353228960 648572262 522403367 750076332 130213741 702966874 222176190 262136334 316556449 994169522 96613639 626924983 633527009 790803793 834702264 933661856 471428649 961812533 552982807 746418673 446063033 790493424 92537280 596324099 386145652 665816438 442283889 721419730 63699452 314955052 625220567 669060718 799887715 823247237 99561608 892574412 201052749 844124118 329363735 680477428 928041150 987914613 634280802 931157142 937264725 964506885 915963866 916288186 198951768 382100869 332112910 772034827 772045161 887362921 904088962 956391142 366429659 635487584 174534392 282542788 560986414 592849305 881450712 947364793 634211551 873397804 83307743 373416401 966702674 989416771 270239352 473947786 701663029 794201682 511378841 896625796 642103972 703040870 362829564 661757231 954179774 996804205 435728670 947246441 107073478 894732498 564883029 929232772 515376491 937177371 846241585 953027730 80226994 562710246 235910025 670302923 103797058 959832754 432998571 636471227 778558042 781430497 359812171 983088675 380852420 631620199 604979569 721074708 533688692 550960043 405131793 670154496 167098188 447315781 463622866 946484979 167629045 533069810 801675437 844417242 344039219 551092112 964179805 972430004 201563114 807561575 269451658 981424563 355378993 839194629 205698143 596517993 390068034 773700848 153246564 995316840 236866901 522113164 634450720 954956543 562099872 968827095 302676017 652306870 16774715 350099857 246817163 950018395 767602379 982977751 163091747 383693651 467623295 496867814 332100536 441389189 38409772 280343361 465780536 617792304 273681358 421584980 130703678 335591023 167740368 823098764 527310678 988878130 680354602 750386087 170795518 884415611 355268329 362187880 883802715 915549568 488049401 783816883 274711222 416052947 314406728 831110603 329410965 720322766 892660964 989634761 197502975 905965487 727673573 946772536 327306646 491417994 593054643 775399226 400953487 800892510 74163445 829813816 759953005 820487993 495316524 865103041 376141758 433709106 355455169 503921078 442774508 951797085 689803480 722502099 510540815 911313908 312926723 733625007 63826325 720895520 550580112 733976683 226447478 463407678 914688973 933074970 450399081 573430367 426063137 718035803 676542355 703904458 278473747 550795258 725250540 937312939 342992812 881067118 282590040 562102861 477094263 671373046 46144522 544540323 706747953 864123246 646925354 777653840 264613666 363251551 902910785 950648448 472294017 705676201 44114056 507725400 927553781 969128697 417939966 837920739 402857579 793247814 399950065 836627173 781009023 927935049 221274062 256971819 275693069 705916020 79050614 996650484 624146262 636165548 46528396 356889242 455799230 659037711 500564986 781193326 431451033 981476009 193340942 659538144 918790991 974449530 951379479 966158605 842681325 985213153 355004836 979601941 577567854 935792086 838983210 927530275 755956924 948328376 293848816 570259132 42450273 528442141 336956222 547371172 220183740 367289997 256196013 773494981 684017890 872228366 480542055 785575473 32207392 443112499 551539805 675410599 240078184 272471310 89125787 643892866 625897040 830630007 209844394 981454753 550548827 616876263 672643589 684670791 835515525 905788609 473882264 567944775 665978186 697132012 304321642 525779933 667720219 864341272 507874689 517111619 156809670 846523166 160217121 834121314 94180267 795104221 386078371 813292454 936038169 985796393 754035322 821196228 637001178 638117875 182209373 561781549 95721330 537691502 23245047 84327884 183718184 788894213 352579464 763736233 796808745 839722667 765964651 883859605 24563806 128884523 643820061 928482024 645449481 906955893 393283557 799120069 888778318 904276986 214681368 978545215 680436827 991541568 697370531 989076494 149213867 646366510 720947373 870537152 162299432 708818810 36946141 157873960 925684258 927152359 551348970 994793839 695610020 991420906 26466263 247387872 796015402 867941519 394913761 959460323 452749861 928575649 106901848 703035712 534776467 733447612 444501062 643807842 308900915 551312744 293118956 603365129 488165129 673841066 94128948 939544781 602271257 911176263 371821230 891947583 149390739 868401489 341447578 729732369 485439871 556687855 908267509 985682595 514581578 774362222 839029256 930508025 10489894 437645761 306785379 475156528 713618516 978415716 569465657 878487558 312512935 995547632 790432157 807166734 870416377 995365283 158646092 170324319 269961695 511981472 740538227 917515132 967397032 994901476 863786219 868323140 428904727 481117944 227759768 463974694 543066308 903896345 513248213 770376446 842659861 863005270 533955993 962586420 762187017 818658553 792967909 803218287 719732018 775869655 588070788 706527402 370824798 498748337 571855846 875591679 723250050 922369873 873919323 935193226 943405266 969423001 164799687 903140963 660468574 782150019 134419570 480557270 350242070 909584775 973537081 985228201 537369200 598889588 133871908 155290526 422729970 490044152 85732535 336967865 705746323 784790326 28016261 697036494 17167412 619462127 688903707 969104745 144765287 768149932 547571876 894061533 421579655 994204796 796394921 945374506 550944095 666265496 568906512 594653056 296359642 470148805 989452579 997807353 933438061 991396674 475552242 506277612 800916051 887215903 155558894 961758671 699818076 757893070 323526025 512125017 62389694 837295417 550505497 555643446 550582464 921255635 784419891 827028323 931656800 953318720 249054218 896213885 202151683 546168891 940196604 985640797 365576528 680638801 99942036 483508557 143784161 952767356 962914757 992366919 231209756 941589633 656969542 661337484 184088821 244355534 25767482 659531186 598063877 727356326 309995583 760046875 45911699 545727911 831590197 965092431 618122154 819325670 859845025 884030993 86868793 815325272 704886261 898821546 384190959 564744570 509236391 716038831 869930115 943414136 353600316 519049453 377281297 681624184 935492296 979460093 495554038 934814551 649255883 724699611 864449821 987228179 691356889 970822320 300595707 703520164 344175834 966246971 543940885 967999307 76687068 873434924 992456329 999786759 536930302 815316502 114618964 549846732 624626002 877464092 488780360 723130441 872391115 983924994 397884838 966992204 932399556 938813038 925597226 998089192 135372782 409405599 760233167 923464217 633303346 901954761 202012902 946566217 190430964 565756922 454389420 642944743 42523869 389500342 273126944 713271599 925373581 932270534 437908998 742315651 965972924 992004205 877886108 904078690 214771977 491468251 324562076 935470175 953688498 973792686 952526163 961273505 433905429 981015323 181812633 870459921 341618123 470275289 383206285 804535336 938788947 954019112 206117514 922740365 924965656 968756880 393029217 988828748 323720437 830520127 858903708 871707656 277509663 487816155 308542915 968091113 609487159 825822722 458113099 594399854 716687295 963274200 391208030 602967059 425773093 576013654 368219216 377397195 705586631 976616323 574374774 877154323 347731815 912695136 299364001 689506360 739565170 980538983 841846799 879943227 306340572 530034029 607626392 694802740 758307345 853528704 497152206 706339520 262247145 332583736 991431361 996805047 923176641 992080417 262884775 910933519 763492519 827195184 69659597 906341612 956252184 986089039 278730515 290665530 552409072 814907261 268430363 318452407 207212720 744386939 503965115 973193967 274655804 869502328 230460215 509390881 324136200 954815855 514259579 791401831 704862588 836954928 92982637 140075785 2808508 894326141 910142478 931044463 522963739 687508262 35171643 995878202 270100341 305187635 211171477 572082702 518841995 880055171 64942788 886699969 53812979 778493264 283852198 789673252 943721635 971845341 220756472 534283532 630959457 960453668 982334215 990235645 242281316 673813991 122744254 843033772 419666387 566565812 807435553 910290286 486457809 632765136 4643110 41018725 654070308 833905541 943206810 985996698 746755237 859244200 655652126 876736272 584738920 808103715 434890231 752670329 534340381 584659180 717028286 983713079 480823425 957108574 277080440 283174353 189001211 794616523 100918446 420546496 53374258 474302606 920780066 941757806 782548511 973814763 665509230 700964934 715446354 779152361 366001552 866331332 787211279 939611354 647060487 679844855 416249486 961315649 340972737 402247376 203386489 535395143 692236820 814499339 53191723 282224680 291686367 510921600 817782655 933730024 181583287 994348735 263231400 818561438 824663654 937992385 100939662 567990122 664830283 997523176 296825916 314960280 727986304 956393867 740039637 881052522 323308600 915618957 340276398 767051378 847685137 945199351 196033450 759429433 176236173 827184888 718808333 917102308 73607556 698201105 197456065 259146836 121621375 332132373 473459500 865908257 429303738 929581589 696819820 700187665 828648684 841092936 994618675 996782430 393185025 405268287 748469824 833266559 135146956 726058464 243883867 322116679 224735737 923956118 267977002 550769427 425012385 990214641 15920703 197030761 750978915 812060758 914218328 936265590 291391993 532321180 891986944 894400850 68159265 535716966 168217658 647361810 498759149 816674795 983860783 996200673 168144483 407202140 904826101 994158390 150536004 231166837 8545744 195951340 348530318 896460071 179544126 863467914 679848463 965020935 236788937 943174511 322927321 464400557 923383948 923613553 468096303 649228400 129052536 720712774 532876127 969796706 841715213 927510556 686407431 826490092 754470137 870688437 595044311 912783126 309371846 551699596 417596456 526992687 700243113 760688666 679499191 833817633 545675794 944507442 351773799 936876472 380573281 554472001 783685895 917031080 422175700 473631595 160556348 630362853 12052720 57852140 589775904 712598917 760706741 982299935 112870956 391625796 570293877 653335306 505557752 534272702 279179295 909486930 727542490 928314748 515446895 544061809 301341225 783472796 390056777 513050284 983191383 986664259 175903791 246801661 546362253 606255981 510374444 975546622 348914725 804664320 382449036 437920895 358109544 912143759 700676888 839903440 962346324 972544645 996026651 997380922 901266980 948383147 444613248 787436479 994635058 995740069 946320419 966207998 722498765 756321763 59218833 259791532 490871298 825391635 939067672 979741107 132062526 181912007 387323003 489779861 429161719 808740311 782018647 796789768 800138311 909091543 684915608 763851743 883105288 906462237 29034606 224245329 884172706 886618996 32967189 349699909 982699083 987105291 960555993 994728980 418674877 521228129 990227891 992996881 892615861 964499926 433779370 493661017 153758876 358000952 397854459 523545486 772026788 838211666 944223931 998004960 82135030 945763145 380246422 834185587 166604891 510128910 704424210 937137954 419490940 878450444 921497383 971814666 104715805 187402456 674305596 907303082 779576640 985059111 998141913 999189481 301829449 941784820 868959280 994721369 32043877 991951572 67490223 891388003 958673038 967483374 761995992 825973777 787454536 854568920 344159411 877634797 586834381 777198356 261307554 634872466 698532257 927113025 395156547 844248390 917978243 999352521 530593944 926167150 604414718 945851373 429554404 661123085 70225854 189901242 795042843 824303035 970167866 982148914 789008506 821014331 764488901 908522330 577176248 951551637 70305514 947415420 890888755 935261595 400449722 984044694 376358582 846462505 650211711 806827819 22225518 591415306 717222460 881954550 510348082 524719390 470680130 719000548 297365977 360289579 701151780 714365071 912847055 928084144 143607216 624850708 218340754 592578515 130775079 615085598 936629974 939691780 798504020 852774978 671304568 809068791 933015684 997369135 65509696 161041363 681902876 896607314 644042529 819900126 292576488 349575945 936523763 966210513 337021184 915611417 244874374 770088663 46053080 173960739 340408647 446340991 237727327 614306145 981376291 994869873 642754335 949249326 466857086 701898043 214225673 785171514 700118213 985313664 833715205 880399214 198611434 602541305 799556810 870125911 354987061 738244400 162785564 402349286 485612294 722490429 146840423 407922907 926523626 940662873 570321750 618054199 825489888 992130595 881962122 921156935 830869836 928075425 9551256 977924916 999823914 999898622 898289639 909102864 274431190 516901921 539642946 771091325 749267491 968768325 852221631 995864010 729393807 886587943 804478114 824357555 397313226 504164413 630617336 990834526 810042159 984752520 67182163 982485790 569251552 735791795 536168035 888671891 226316221 717439020 645180423 743620333 269857763 363801313 628786715 786561453 864106754 919599575 467798779 709641241 433004595 946319156 653922774 920729832 131221611 581117755 370538712 970810440 857096901 933156424 577696661 798691715 196640237 838799365 197989136 304344149 865290152 955303522 507084120 872513173 356657007 466605432 577107470 722174404 134234547 894255195 28553576 202218712 303159132 496471465 854533553 862995044 641133351 977021181 948287708 961942263 16461851 303380724 22595139 806362777 762588840 849333689 950859230 967132164 710916269 974712094 110451483 664912044 871966613 923657483 422495317 853939630 141835139 332435020 344260822 676635372 852708981 908753023 627487139 826196029 802755147 897595271 353104645 921510891 570249541 607302952 194781807 352006192 305516445 728199770 323833658 359370584 40643799 449074183 556491833 983790120 295436921 678813265 656576229 891909139 259813928 517482344 533633346 875237346 34069049 947865943 497724044 976673049 94526551 670976954 676595514 879801892 232464420 696768916 406255598 413015886 825624077 950841135 356596224 704055404 671270804 980783563 969917137 987992844 771059485 782774310 746194689 907663734 898144821 974124516 204841602 838055848 291374998 841781657 634543802 988555212 71251961 323721310 936572876 966352507 788195270 868820728 482561551 702673748 17939991 294593399 223790681 253538792 832414855 896937666 478389438 821440311 258244567 939302180 402568336 767438646 551023416 966528656 234449742 420798497 175886958 599515235 178336735 456712821 92695229 890062734 243084442 403911511 383185810 912197041 686507995 888256023 252922798 642201228 395890582 959998895 566721121 874264547 605607307 780956734 186747014 625401410 417883187 719393855 585810115 924501547 834947316 859249240 145835872 853149123 333556081 530029736 849268779 890366541 59865351 675264911 289819352 955582416 170993344 288687378 258036558 608572325 546883249 558153692 210185690 641915860 776653034 952250728 690879950 757466215 863484212 876236700 3567785 75107097 152054037 249503922 849274865 963384905 399370531 532970087 919981574 993675489 909198217 963284871 592522395 788505735 334665627 984661646 257627066 369732362 238201730 439670834 251881853 730743592 513466480 521839524 39277824 115066284 691946698 796495373 810763643 893062886 908403892 935986779 274810331 553655052 648714768 731078729 320224972 673663262 106076942 689004410 616260895 954707551 287866991 489169146 52204287 403463641 173098631 524899706 317479944 678647375 917450664 925568664 39789872 635353265 394706713 708061924 84656798 512044086 238211563 267459593 327385068 465508955 974179633 995688907 70023953 165885518 595718346 999408145 176370434 611348919 524795936 652062568 474320532 646243716 948221865 984922866 646651104 654015505 775520979 954000567 688143661 748989298 254935937 737892591 41526984 731708740 76208916 130354461 218596369 558365403 810031889 885544231 834822939 947190736 443413403 719668382 655282183 867287184 431236556 693658615 201591117 406325203 481636637 717399897 706569071 792266861 555425184 851199116 451220646 588030651 244779724 882870183 268911890 621835445 958801407 991545059 352081433 973676752 969526298 990520038 295434521 821482589 23572343 811680599 405506091 425178561 973378850 994650053 21935911 130874406 766037429 912539764 315688929 878399742 699688319 915267712 567847358 840335147 786326389 944246744 657956506 953353100 702144225 874114479 503336856 807240926 986168227 995167958 588917743 914332674 794063686 845563996 306299715 718169969 141408297 629392347 373405609 499437816 379402273 947186523 222468446 866755535 131471403 906038353 812012358 865991423 805466860 984110038 236839044 410799643 482433589 932138584 341558569 986436707 430557069 715630466 594417296 874626138 35433647 816451537 809315493 900072205 510556758 957871752 404527907 524920479 519108819 734642644 322607106 699763458 350483218 664428205 781414660 885199097 982643311 998275148 465281444 754687589 885194541 996572497 329770605 402265852 576863414 735321086 511093088 885361174 275932041 560561095 282448433 824079483 433491720 494981696 563960274 933186744 287731769 413577738 750014167 808980328 55223687 400553522 292984568 705004839 348209649 650765711 203928182 297954550 821097638 885783598 73904548 283781085 87950537 93093031 937355197 951144223 463320163 766157547 306921002 976854127 630164729 813845511 656369749 662929758 45262827 414295377 78474930 552079651 328097151 644056420 705643299 947349441 675796793 675981650 239169598 256956804 82781485 679033099 333716302 374376367 784547243 860451636 739499594 960904351 349657538 428435102 528142937 898889821 641632999 770032245 11741336 264293874 183432151 917875970 821039943 940820297 856864594 907000861 471884786 800227973 766492498 771709068 178570529 602759647 207815662 497908351 878389115 991774283 442046009 685576019 44523176 239551074 450353618 531535849 50741350 432796314 766753135 921580928 578804277 601036660 476114391 942874130 823785774 876928349 299141670 352777411 528124051 901365098 376007330 946650125 475717657 965454877 152266187 491888158 933521374 964962313 988202292 988867708 819780650 966573563 225203774 453325592 327215067 966656537 866217103 998916949 762228518 808078833 542777737 953974044 116512146 313916273 619351030 943892692 606737548 690833702 211267187 239926327 633205752 802973787 614029822 638657594 936040303 966821540 215757398 748008258 533209017 934841316 496079193 612773421 896477800 981980687 282620755 904365054 265350926 932611826 622653026 829920337 756278171 964166199 325638170 527438931 574052308 701094353 996297776 997679392 484800548 659693833 815672032 871296472 374697091 939126106 620482723 888156658 354945862 781207371 876712502 896069247 252611152 701630088 889854419 917174481 151845245 460383561 260943288 857395050 551325757 818695678 866796611 884458675 98238737 368447902 480223270 753538750 833427052 877312726 452068664 867726842 445897467 812045537 86887879 522886327 748011760 964006121 585244299 651078333 251533493 849263262 216480995 876686276 855644245 890133235 960040566 973612710 746933419 852685682 399498957 881581090 872493324 964442484 623480489 900447987 280858921 780444994 465298223 481085917 85174557 551070828 365158496 677967842 403848437 592096615 92499959 632426466 870358475 912515971 874785879 925304547 832234978 958746074 668572295 860758095 972487295 976451726 835250967 845478034 513311101 528544148 412031860 658313274 744546626 905109723 436496208 614936323 942112029 956966368 26804026 403217866 292627944 557830625 947609979 966800730 644032084 666197839 123141658 771516025 717107081 756570657 499847068 563251614 483056887 776684885 665498421 676440180 117210794 879442834 344612998 706979164 859468341 994184195 985227927 998465327 856805948 988618119 901699508 996265105 362366808 646663807 430956935 612353991 702056026 760747156 384078936 780682558 93872769 795766492 186538221 805214374 370661347 834803481 481878561 994807271 139513082 746382728 968745645 983121402 508366192 759552737 227141777 436903619 102822288 742800582 749729377 821745427 481900778 583400220 524021477 989162163 182659492 633173186 842720994 965864262 543017106 696419327 458299714 778487152 365679560 479231484 56742596 593777013 482580434 809906217 568741146 584045491 949298061 980888233 191612451 424719614 962200799 998396944 319121115 894216847 184436267 807382060 756825501 956078564 873059300 892203037 65806919 258171261 541459938 885569372 864150667 942184103 46561669 95306586 599493742 726561393 486649201 806290779 622570572 905387566 30660912 171005513 49444228 55962839 614864247 939544468 206545731 829825837 61689647 338359784 34060134 355615506 106373495 498576858 266163042 643066373 39132063 605373964 264923172 682542533 501612746 908532010 38255132 954803525 697303203 712916460 377800662 566146555 475969926 737519772 497426194 510810198 723783299 868109309 870472839 894868044 428312967 853675296 40686745 373258821 144893334 898489572 705677178 806197535 744983360 845869636 279325030 676470146 758151348 987193657 981255835 985184976 277183309 721131709 916077665 980110890 400053158 476015997 945896266 989108821 316287844 653523714 277123077 659297524 624565628 666960410 9707991 880532059 482935759 612690186 386521947 472706353 155830082 456265397 480528647 838031273 854275248 874265460 420879785 528020353 554249948 898966273 749002114 968557896 656607622 949898503 1456940 487937735 756689247 769242520 911030612 974897341 631441760 694243337 476657120 775862872 930646729 963776466 954632348 995547095 101827193 433832284 630371233 698342913 475721492 635892872 238712130 574678236 221772543 800406878 944116675 970797301 358219075 771256270 447444360 480007193 500089132 938083274 642686285 857740140 232201758 380789636 562542212 769509232 958300175 987889426 658512891 881255503 939422622 975194543 255807820 981866284 867797829 895226006 227908792 309230958 849984284 902670175 989075972 999640253 712961866 861419403 680813015 779539103 717837863 953743387 510032084 697620945 775041939 801279610 508916405 583138889 255534524 698572288 508804035 953477970 828273060 989235557 835684531 919084428 728374805 883400553 35279115 921698869 475267861 705913297 490965572 682043148 722142282 956351137 247112465 678987472 373008547 921596771 653355160 765790770 138524856 611549331 142422554 172616778 923395338 929366569 815038757 848571359 337288352 820495866 260344816 728229572 432394433 705923066 593967908 808283354 500831226 977755187 887132245 892739841 308651800 773589629 713201260 915308206 950398507 995779648 902788216 970339274 606583911 730500216 117031124 440155185 836136595 851627250 73541090 910544406 159454032 802933034 277920357 306227349 936638867 969411649 152201291 706592618 207772099 432513594 833936042 834919736 467184211 684307963 908954887 909990616 4158319 481631029 122832346 929050148 770687568 780888720 329133521 633969161 377013589 825581377 131091925 253201188 962324582 980676177 155917248 839807086 169136223 513287583 510142375 606207778 696931439 772186843 132583508 904950707 231863171 494259733 126535337 314435534 256060864 847195981 202457383 675434874 887073344 985865152 988014772 998268153 695969170 986110428 835917369 884489946 183522135 664261737 8045937 875003033 269873386 827157809 112498543 476264782 190317298 717786780 465420981 787875039 455635726 813618320 135862156 178719193 455714118 738610083 84668097 432326426 614243060 651116780 913102730 963102934 849828155 910874432 87706789 419393788 6206596 436462409 7231537 447803299 155745958 479387494 940430600 991075261 469943465 650283955 44474469 388948749 982693602 994263459 903082643 998360259 912580858 987981195 933168233 973895551 402785259 934013920 905379545 959316797 161561221 760982046 194486418 992050401 235560969 262330503 102270615 725473714 91357028 964257254 540793614 717140155 334790566 436574143 364106917 968741717 772697744 785383502 993266541 996413072 400177609 523096702 86084984 727347478 80640448 703760290 549988512 558832823 305258904 551998635 277340689 955510683 83687755 494908524 113867586 335117184 857532138 964729980 520918956 845594062 643187550 846578274 275895645 333803457 856540372 897519514 501638562 944884948 316250123 492542763 689343354 813339112 886087137 916409499 885985397 984602265 597913948 822546390 492226407 879540568 50843586 128517924 989210552 994925995 519656256 618543671 760001832 876954755 463014761 622531216 646064426 728704151 524141778 718218683 582555815 619358174 727854516 910480356 576280179 687437414 550610644 830280111 9265229 787403394 359877627 874749528 543677960 611633515 919257958 938823660 253960915 660522445 948593235 977114032 181386438 262983435 263718954 560418757 417154464 472211237 481739135 816826000 502539988 529182570 834713050 838342961 46096050 169588838 217389151 537170072 312719823 572830926 591299055 892348307 47277780 117217335 296195812 641855218 18164232 151194062 856830694 943824048 229544824 753438399 921322268 935479850 548393945 575810928 638098134 907131922 264395575 554450096 440369411 642614802 11816953 879517428 553471343 675888630 487486569 500747232 250551994 888653387 715054985 741302620 791458117 932440270 878357997 978722314 514270252 915540305 272580478 742591894 615985165 785551621 606263483 764074460 237041103 462627008 357399119 644782447 246189348 871339908 539694131 607803408 960388453 981568044 454908563 785844105 520002200 572696116 775239395 869449859 450376005 650096366 467288857 632602972 673039112 739321998 824693295 997666636 711933489 836888494 313349774 706194791 152574273 405207041 483774511 496148953 82244720 587965318 44689880 613444431 435435066 546712852 470802544 545335114 685130643 809295148 262359490 339402016 417220207 612240471 62156746 554395513 770786720 787198226 55251560 316191972 695448681 994328315 599520895 725045389 430030381 846357079 980157414 991558207 718515792 874931367 538139441 558103464 344905784 399632946 812128409 997839701 142566820 187085526 373623579 527214180 795513731 845638851 469234386 797477414 708340774 718661173 311019952 557119976 89102370 956363245 931650623 980156619 253370309 919910763 514902305 614972683 212172848 226884035 557896669 771215367 756921190 807692056 621344036 857042574 70220799 812550616 886362862 916887434 876485618 894818037 452422472 461181251 562902698 635869271 842546615 935081105 4088344 413301241 59960411 439014864 526352804 702534907 510483820 830093829 434895988 786165599 322244455 489123662 473934327 796615290 408642151 663198835 502086633 639652742 799896528 955702887 160790639 825074688 472149050 733919644 647253061 891107123 287538651 932916232 497138910 537644691 645664675 664809410 623884360 692222184 478111460 976571749 187998095 988141984 938164611 973120964 125227288 583564787 597503765 619911723 560221774 884826851 45603373 101147110 475894272 982907327 114111764 432632972 798354056 882374668 35368390 768308326 677366577 696578267 181654707 403040326 665968080 977258000 531093943 641693410 566628801 715510101 670162240 833904600 294479025 579631599 459369888 665312803 685915819 985351259 689417183 779924240 258342991 922600482 638610515 794531159 336206501 823002416 462067259 994321262 822469707 981111843 300404502 565749217 959636955 980703779 362029844 407081031 506666542 565184238 897990682 997696398 524115585 628402274 957122958 997303129 829682773 895923058 580664128 773098721 100678454 454051743 583653651 975238546 73679291 637182224 166475513 866812920 982140528 998323018 245730107 405575655 914062717 940520285 440534484 829213816 111229018 707260014 441522529 547897370 711560124 731129493 529882043 623067163 654517338 754101139 397382776 568655679 189185511 219401630 82234903 775783410 403512797 997898032 537463110 880614368 384353048 713219963 906098944 996724053 189705525 648074857 756337391 819163988 982511372 985328795 869912929 894756377 425912136 926519987 852320361 904446572 901177682 961306639 252496682 450949882 915809958 967298913 405618523 530651497 300725528 509177282 178857244 510101220 669137246 926539978 192598001 794921626 578781940 810013738 947002241 964441060 708200760 851764068 124260036 457745376 542537832 687004613 900865498 910537384 466230210 882261956 8657378 258018106 594106801 913959314 976308069 984755894 878916976 884795932 382214182 885306649 511824548 601447741 757234403 844660617 738380690 920883052 416459843 746482407 940914262 948753850 402656737 908420857 985087321 987746027 616660011 742520967 431358301 632037590 160602978 900947871 181887805 770228215 949959965 952953890 214029666 585058441 927223375 983898288 914183453 916592946 693549889 742222885 816454393 880154798 681454905 968966231 3003912 763003183 953103550 954082161 269983387 328565089 873637010 972688293 782312369 816459536 597442306 988115359 147753025 738583333 507911887 603503691 265733778 394596704 213814766 855601101 434424449 499405823 564599213 726006887 364953255 403445585 745394082 895369854 901643406 926398006 860555327 946637166 876710718 987805222 818475770 961462482 413034463 741508525 792005150 808321876 542880201 774176845 546395789 965161252 468336057 848345602 627944317 679955503 983241758 987904550 865376708 934732071 812863659 885899939 791243998 949834209 809613078 814823783 819430015 963923568 480450111 766171701 690535659 848781491 543798901 914034977 210753941 847748489 99760315 612132408 298411528 635439072 58528204 973658492 672676753 702749926 39825314 497094632 516623296 566274093 874770966 886563868 322430905 668554775 315389194 519848896 682186029 923877469 647561649 927400591 898737574 932352826 215938266 280896182 891867622 906246817 228522081 528707755 524090777 700518637 663980844 791069488 638567660 673027938 788402796 849779275 194889470 320065731 763097778 936632891 726674504 976618536 651070788 754130964 835734056 925137233 509429213 589860337 879054132 930306649 856825397 925259777 643593163 972696508 47911094 662104158 817761636 819212100 537724827 614510982 392366416 862499907 494125069 562863013 821166886 939641824 873494122 891000330 216548232 616133716 243982638 423230823 660561170 774193480 336603398 600944565 7304586 766072169 197489822 797156457 265564715 290349705 196003715 217988879 109848330 197430282 768324949 942375693 912658383 934076543 669284131 867575714 726581429 879292536 66250701 675938596 6507756 436289114 463321313 938970935 167889471 642524713 761199288 842769669 472695824 673255783 231893774 296744253 949383018 970942603 118613242 904205786 663427667 897159306 664853138 949600275 999176465 999412978 484919556 738655035 977668693 983669822 530924254 599788360 646721176 926488269 693823055 708241737 640879828 737438973 383253618 563520144 265005656 591929978 466606313 828996948 452027025 711763614 369564724 685092154 152430732 995708538 171523367 726140592 22474301 863710655 659596318 827099936 175291794 547566556 299560339 702788608 53667691 817094948 208634919 266942171 559643891 689690341 369921949 911605817 502982431 911133707 235828835 788454219 457429898 838320850 853466469 895505370 667736164 790519929 907735687 982249267 308748914 474320963 304890173 554509216 800798946 890347732 228191757 293726200 368610941 723184302 966519954 967426326 214357700 620915860 66658684 375104478 995904540 997647080 3858493 351210072 10321012 324971685 626909622 826291947 135750289 690645442 501923921 927258806 550013762 697468918 13879724 891806920 964630755 974138648 977787221 994503158 7690084 361952276 139677855 718937039 622229916 646336542 984797204 988242423 728941057 844573947 716274875 834230355 115389509 952539895 565048426 776108972 974936386 975320635 388997466 857638717 869140538 930540411 293180011 385439909 463321883 554646991 652470094 779543574 862261384 887315801 374765356 648887727 181671263 989144160 962842467 971159961 796084251 980317375 793502736 953090922 174329883 253396905 965762902 995224766 23371870 925283620 656731961 735305933 980045391 987493058 301377977 560877352 336043958 511471216 88564471 387696350 198817384 352197857 967848058 997681142 746448141 820546043 283845658 520501310 235300440 690852498 680936686 754114555 493090601 641746072 597671307 719180238 731888989 972516714 848411266 915421710 426592553 734250725 446640283 597104963 623555718 848260927 122261654 164569963 132517238 484938636 67941532 863237951 145903372 550427955 921212401 939194225 812289257 886703716 596348278 656027286 954550757 957527825 306348735 422023782 163796927 175330721 637166538 897982940 698149414 920041065 737918497 978853864 34312628 291910798 327116072 435817763 65332422 402550304 776129089 951337864 5960816 576919896 637869385 676466365 657942252 661938640 236539437 876875962 506878951 744871872 750988164 863954238 161956194 558130116 879859945 905910688 580053866 812566444 761697289 871138504 908192985 912538356 996587244 998337460 247928937 390841405 91738298 678598507 234080970 772069445 234757162 442963424 602986518 756035554 665710322 936990454 288086989 820471115 698844408 957456426 72622840 340051401 759269092 991666215 567939413 849680846 721343891 927961128 151556976 469440529 691158404 746533962 858108892 958811957 178700043 517980925 237067148 296340726 654968512 922597640 978030642 990626755 875989765 936798546 978951625 992455296 892633268 976076868 848530872 979525241 215339845 942561549 139344857 203727702 754448914 969529216 358475704 572164997 567503679 922023494 341165631 527938187 341527590 949001531 519862502 530260223 50855774 827124317 269785720 601089924 618474699 747707221 505376612 662069349 862371482 977388966 583999721 590929459 506716227 952193732 689515091 851300872 259645996 325039159 583895319 874637191 785230631 956823273 793062839 804427129 37071823 220420465 190857294 855203721 550053654 731770844 418005987 740765649 558770599 928998094 678928013 977293230 453854929 835937602 437420801 994041530 730790288 929474492 563993156 644662761 936806687 966314909 913577295 974127126 692660586 969647949 212963000 588146834 452412443 515486920 797441313 882789655 537166006 782570244 45674483 353213693 5089731 9780795 299605357 721519646 93370610 487003496 698347394 782165463 399018204 481839292 502108559 891513803 423687150 840346346 387506241 708204824 598090288 930578818 263117885 385885588 231703815 669402426 888670280 899076037 68572140 273637021 741461838 955608715 572410199 944760319 174899126 712509252 413768403 467334344 953925342 988893091 371446689 887128343 399225926 817255596 460382438 572280017 952498039 993908361 3403648 220048580 983794701 986918143 230154867 322069614 861537539 970982517 734338176 945478938 250334932 763947493 906462728 984017306 605984258 633894658 442097444 856406316 800094461 952240949 164887354 825148342 476793135 621435626 804340922 863755886 605783128 778090216 35732891 780658650 417754337 578301471 487884756 763759288 231347342 803471437 847442735 876075168 698101371 837928377 793585617 915256316 51284009 135791261 107212474 495559737 829083386 891137467 182775693 575714641 270704790 717521316 403906898 611684856 980244528 994188788 660383297 978064641 549239231 648174520 305898253 897963565 461829245 810733027 537253478 976409547 620427415 687750371 603593444 646649019 938671490 961907109 331664777 444020490 167990093 795285614 741330309 931812623 66432268 451057437 106210936 909575556 583106162 930422950 863933551 906444518 898860030 920764342 390527901 493983871 312679963 937213366 65587870 340613551 99758554 682204369 125679034 993601864 9252566 175483659 256788278 789303102 701750937 721100745 957265486 999946547 122130519 812194621 778749698 890722850 708560579 780184584 720747327 890760830 76405461 663908729 602065764 842313544 908293873 930968874 468286451 772065800 285802395 614957252 614931565 749951356 791477770 792930737 991386153 995541771 795326825 821002499 899104186 914060109 14570130 542946455 289140106 719599563 624538695 773945279 559624145 587091998 956642491 979935346 839193702 849257800 869838391 881756730 306418666 561886544 883721702 955352567 170649167 393610712 246637895 516098989 469299486 481939223 298108105 840565359 57452301 545061792 193603640 547033727 76602304 446500774 902994332 981515120 60535590 138390818 547218502 695807752 816344062 876925796 984268730 986146137 673183097 714829068 331074340 522414160 711271432 967379802 613944442 979814579 978946977 980242718 889249189 992085177 821122979 849420761 80930383 389819045 560592586 941859801 881347851 990365776 107961574 305988925 653774766 878386445 23967398 659587955 90547814 640301038 743937451 757859386 155218526 258355398 398041133 905381750 352059981 594472094 933038014 993147883 678025014 757698755 97779607 795116108 943378282 991503614 626234628 721334363 459963012 730616597 302246962 491760740 381607378 592261192 185859646 288775394 229507767 771962280 582580508 892782932 476787822 743677630 9321453 300686191 794899211 983652232 436776126 484522459 916945856 940933508 276241529 955582541 294034734 512143579 903247522 963046173 936044832 959665573 935107535 986405010 725575289 904982633 35363050 330548904 326205734 783435818 915832794 963130953 989450736 994827578 507640674 709517595 414082246 476434241 244732617 758524701 490786803 693346702 397625089 975653823 300991538 515442911 71524683 540972199 841718283 886549907 651297014 695619619 780189552 893044453 780983036 890326875 844283904 932110867 274261992 851978964 457176199 878211271 91740933 652499858 373716243 971236956 767247131 990353366 125640823 297273131 265003572 891731199 837550629 969579227 395176840 424051739 685561395 765095404 633190119 675373268 636663218 775704891 207393363 809058232 363677628 592784729 4232020 572283801 477482974 645190670 572454152 921638461 556822424 737341642 235841896 682291353 882121827 907385626 374780577 843645507 53388229 555142883 517836504 635570005 16242057 972733350 654510272 862893227 638034086 674269492 216828827 676932028 77042433 643461763 765927546 995131651 969470546 973546408 636582522 899141810 398634359 634674473 302040210 959588213 116208384 960550042 327229198 481642618 473085343 571325434 574958448 609372733 269148385 825259688 457730819 530110263 696500808 821768747 822696775 976037247 848204324 859980862 774209758 959198819 448626555 727340340 517920788 548414538 962182439 988090618 438221285 476668504 495869531 521929320 620124904 860116001 248884768 628778317 727387184 929919250 382243190 645410446 217462244 871485055 473126305 473545757 744602214 880952865 253072775 919626358 585666927 834526763 336820388 825804698 269667761 620980213 843799836 978184321 258013562 271481354 475142917 570017204 401915026 711986182 606265103 886983888 445951334 711562014 311778194 992575135 332994671 807009597 996226485 996928631 74458045 615556900 632524725 761954413 896375 155376906 728472637 985424017 451628234 522730973 907044653 971136715 680590127 907162051 780626526 943800311 165223216 906172680 303613420 497868596 725514256 741226415 344174133 785735914 479208458 982010256 35507997 541279498 236795839 395732892 596174904 957405432 194065960 648231333 425758639 732716897 717913667 967231929 75382312 924252670 397023352 729091482 623341271 997865900 70996807 944292207 955998130 990232382 293417350 374667073 789814053 896993270 72096046 192695547 644253044 862297584 55452569 989922202 417669423 444232696 786578892 808289563 517186775 769115614 379745002 477054087 176758729 400946942 525194694 864693650 122561086 267778454 395553862 513864493 412401206 632898015 465384179 684724012 400080403 432679020 441364716 691297036 377659346 486512605 693293860 944928141 72736778 322597128 243813326 972581693 91079871 573803258 952946427 992473590 501469743 895158433 136891256 855416675 991232394 995289394 730131892 985916249 92406513 357208960 848621326 957606607 442637791 515155413 284041372 613582473 660542158 984334089 171341886 718397473 274334756 341677272 785495251 982241126 692403768 960070476 126442831 644204354 923829985 953327548 569889657 911649873 167815011 517113227 388406018 446983647 912913036 985253230 347631203 437887341 892033736 930792472 310959690 925771412 65488487 249114811 957673821 975517369 283511051 953832641 183956434 736139388 829215850 873660774 975066429 982852861 658709656 681739087 491773032 902835000 359263669 905406306 561885286 952002332 878636569 991474114 471962429 626186045 252776000 681401964 213638082 451796652 177038903 318246422 875619715 879914096 72547743 712046190 35675294 451728344 248824211 958560840 61867600 494403731 758339179 969582695 366508770 978086692 536116951 665519505 441700049 688284244 803260986 987344426 912184701 994314533 343777974 824377471 342057398 368425734 949493533 992041482 307819359 993122732 213858895 656345945 688242947 885686001 594913919 811869900 185999445 996456747 423033656 856123749 312969799 395446601 264254588 969213867 470103362 642879960 696165801 927808013 973503177 975462407 971608362 981459556 412057170 678411220 33624787 985771630 712694146 776353184 64666467 423146045 297749141 814206100 573984033 587533379 141070512 679479972 385772838 631643335 776037112 939369833 403468803 878448106 889725694 924823108 914813103 992957955 385490572 948628611 22861142 598423256 691458024 801649341 661951434 703232287 94082657 839408117 911211862 950858954 636735020 900538697 862963701 874174116 680306168 798816704 857802267 917778966 212544273 980878029 142425411 967239264 864013593 953553561 944139825 997606103 651047871 841477256 18786310 513835801 418544414 484276277 148365388 538099083 922409985 997349465 160627389 954384755 253888769 530722013 948791598 984381649 568368055 816471831 823908713 944148812 291598568 577897683 233603082 461763595 868242515 995578563 950882237 999403259 560892506 888383020 934450380 936580654 795841948 804724126 976515183 991196674 190216764 459586617 743343235 753670922 324780150 525831703 357261925 665090833 52879253 580997236 896295366 901822848 36532808 950498547 53430119 615444431 220527404 401773980 54832549 661938419 944640570 958101239 923191626 976333601 21962898 548368502 848776355 907891311 476133731 719503405 831137489 894952576 909477792 984527576 527659867 632856020 811046497 969277978 615745286 774152441 481031189 788909816 881679063 885301914 499518950 871814930 959365598 987741472 621918898 998834643 983184505 993541351 740102436 758807559 484916167 548473485 362076398 780773367 214886793 753490579 402456159 851109341 262045260 834234122 280038353 320531613 543991974 546994025 644185778 904185824 960127124 964045265 646400215 751426406 732319052 779162706 619447258 633837796 423830098 937119743 7873191 877457377 405911423 491462608 407510725 723901752 494947808 995757439 786732918 986639518 681428563 754446438 501673408 959961378 499233909 728440298 484521922 551137908 582179325 645057136 968012638 976147026 893680746 966506223 213191443 309388816 495901017 832456487 486946636 777837141 681069030 685820002 661576259 891063179 463801682 503243041 37667704 358436667 7256009 132050886 221208282 249478432 824244941 839038495 890866376 964192775 651696695 750542457 931132086 932526217 978228360 994405480 497085444 768622020 540141588 594220318 953581482 984774371 48675072 590466729 677752091 681968943 457139839 979049767 759686777 790996599 862907989 971707703 135138184 806783714 746165287 908630201 75432856 345226780 483359168 488820189 741198518 756714452 703352447 847828403 157818175 755647821 732675777 945246232 850234330 850664229 664943397 760223903 441322027 645892907 388869596 416886188 279889233 497862105 861154300 986108396 368995697 640973095 483039227 496927186 767660072 887920745 803880225 851061525 852151785 987587082 277496174 693549721 99293393 147611148 290969127 311547562 691170031 896180474 877217531 880014805 636073800 940606865 351192204 489355517 528990344 753692669 924196558 941842968 431901871 498778990 367390196 511733132 440964282 693693186 427517001 765827300 743327670 791003376 189142957 864470972 632471121 680302695 983562385 999677954 2599985 821848467 765664786 801068551 955044469 991716499 157960532 842291981 971037950 974689533 273725594 589127035 414526328 888380803 681509562 830326800 70172478 259084529 481170668 902493993 806366184 971255826 251250138 643644327 282715747 427774428 860862186 862635966 978086252 993526820 842248497 965745397 998260003 998451214 235385850 871282711 428339821 554933469 494991880 681484898 192310153 213380851 138231031 778386510 434763751 931345630 437617643 811798598 186866930 797608754 726372652 848865616 966074292 999684055 990960251 997816358 725802395 811183216 849523118 871229165 871852771 922363372 757486815 932037423 298568864 527137491 960848308 991646032 913399333 991487742 630443802 702165170 725775222 877575237 493566861 926999145 225395009 874771563 685810592 863840550 520024032 979525547 151918264 528004854 646732208 958725341 203241844 968555315 50659952 706567297 979442816 989957080 793146221 819229760 39716531 961790252 454434359 497691601 159267283 463662191 901380463 918902379 62581990 736759207 355916176 585948502 488889500 570136681 241256626 644897876 819447395 890390705 30548435 669877093 763455317 772196913 374269803 493896497 757524272 983276250 779568263 965474791 706452074 858376356 659070726 728590382 652423186 850556973 477336069 935323413 120551770 344902856 119008603 119746912 647662463 874762424 465968580 932563555 839123692 933597613 956979998 965032428 755723675 879225780 284041150 713626988 72454151 173707865 230753834 748433992 723402351 859979310 64262268 578948868 373666881 988918904 498279676 816625464 81622431 909002536 799532132 813894117 664133531 839984114 658711059 976452598 687201306 889116196 800313435 900081930 738513825 955715707 375966999 478273396 952525990 980464974 297391245 808348996 426200467 743004763 162640790 977972171 869914657 887813114 219431382 807848489 752331177 982301363 381982806 993219044 259340515 876203682 572597320 823496275 801103128 994658066 46548606 684216447 596623052 841809942 720498061 783218742 20766943 221886092 258953502 983303893 860519455 886684015 323469408 843841645 709945789 801637122 435370007 572564423 547717304 811381499 408802199 775490487 173515181 537165946 36936097 911929926 1735542 995516672 344393131 424670586 313806531 792326877 709461784 750301657 142043436 737774293 457648500 719952592 749920263 847438665 945312571 959421223 850221981 910600035 253881514 949004736 298792535 678022221 889026424 911265881 421765240 617676143 153797821 478073178 900419271 923666005 739804586 806296817 730040229 935921167 133229757 781671420 230255347 678439524 943320776 963471070 424180577 588183898 737793252 760649098 163035589 839466984 800456926 959541097 333210644 460535715 370084687 567215414 401340326 401931988 499454700 574238557 124244048 308771978 846468614 925681015 509120261 884266873 245205872 648819853 385356077 881415871 982840657 992675348 691234964 700763231 866387892 992243721 751677783 902027790 603002592 674304205 585654399 864293311 271737718 427142414 724318284 894270482 827297889 864167770 974098839 984904289 809416994 843673803 26152156 750330576 140509196 816585741 531849550 596882692 627402781 820358356 607739956 996680556 565939311 642499050 787607589 846441748 422982789 521363126 939227364 986255722 234182433 369931200 605579336 920603514 323165608 624438572 786608499 941774720 157644120 919512206 134273209 230918170 158006085 373802467 431416391 682105724 68924981 929263070 843221022 927264957 743412210 897327947 195013397 418346027 128381829 989924062 520773566 836475365 347867472 462009095 685944007 749921516 823696015 984376055 947489161 973043335 506366868 527126978 117374635 724422763 377159179 670559489 517617806 584566270 829214046 877417754 434100904 983073947 590896283 745628393 520457439 894327408 329315333 481871676 651594983 836703159 921891858 976699814 305546824 734371436 302708209 529485405 341709013 548950027 803667089 976153943 540635161 853871731 469916215 881013872 950290324 991848032 107184979 994438659 606655199 850940830 505677892 834467096 711720315 940539885 566013622 792311141 276088449 521568115 851922943 924256780 480688756 699492322 359613532 555693193 5196833 869875577 14883574 805502499 447358569 546149472 513758735 820879120 71304532 945381766 66743070 220909059 841650627 873242736 246641061 695106049 417307695 506602584 95842523 111758793 925271064 982978099 659264833 825477332 128423529 442979118 896873571 907043812 933873006 961423777 551862969 795502421 660257844 961971044 409730548 740492173 318977124 409227383 87367067 329246542 284402893 688138103 390401873 647827513 997049647 997740425 910327012 991328274 825217077 910189653 685748705 816495851 361280627 948579559 547933794 761635149 903063697 980314315 251876220 383083535 998313101 999885840 758415608 942521015 952040021 994158217 787657446 912377635 6291358 515723836 864062452 898112856 865933787 866122177 646432495 834383471 598876476 806009431 533980440 552955836 652068593 857205863 527744757 957062292 404286598 439356948 164403172 338161278 278018236 851296279 240096373 958694209 613341372 701844936 970860356 985167031 452984642 482867639 26325287 345109168 122078477 760646576 327846764 883434399 848185844 964008257 19523341 720762595 384675525 435073071 476231212 787628496 787936593 791756304 901968665 955295249 845342472 924149000 158359068 572170979 991243948 996410260 653422992 685429349 44110572 665782531 976087411 999997702 535464635 799975848 49160851 269130158 131659067 927738075 691723731 757825309 122677491 740857421 39286091 784869779 244012954 645916886 636886313 806791937 597418313 597546128 814781909 900802566 230376905 546966979 375848111 784362213 816452566 947279678 624010433 832543931 583206666 932173979 94403971 783177758 821860780 898277705 969595624 971927834 51604186 471901964 378224084 636164926 943049652 966547165 32205775 974544276 655953226 960430764 911486882 931087701 529257960 565973698 250272489 439265038 712769313 781203456 256236587 841123802 181810292 570590657 418006822 734161156 127647913 535218637 34379582 820372622 248154675 490558702 843665895 929542165 892996267 977296603 953530384 986443201 942981762 951308363 477503465 911914286 303437154 447320800 555728451 797387667 999583227 999761285 669674445 850351005 59049957 958971871 258067408 973716908 753626311 809016247 347633681 767684912 360451129 684073556 90822565 404772459 175928663 422759982 797987531 891248663 853531346 924859747 753649803 934220133 82856746 685226675 906456224 907136687 824746751 904791926 291043863 583299471 202036972 211680838 41276329 308083763 583523288 607056167 553229264 664178981 480248385 931952737 258713464 277739147 27787356 354849868 591005286 972285611 345287018 660745317 24497537 223229048 947694965 952601713 727812933 732384428 850022978 874457739 799292011 815150062 277669008 912089437 282742446 512824649 364306876 426694504 587694521 871197881 645481114 878167172 569070966 942820299 866357514 907016038 712058233 844340721 107151624 990492687 677963886 855133846 986185604 990525723 372742749 442851515 752561219 902199968 791981178 841699298 128403201 607039800 196150561 396527507 32910930 132552710 140079428 863381270 288712986 639603076 257615470 420181329 174031810 710607972 529480796 857017920 433183185 989129970 377204288 500108912 74063972 619444426 424486066 516814016 97637831 614714114 591311987 765816700 877768183 938266867 608067755 694367126 348389795 869884212 69838681 673287897 799933440 971864688 933811195 957994452 404859147 733897022 993239699 993806056 333860988 775867903 196879016 701655421 280351794 543834187 333178956 660000317 705362136 999267454 437090243 941486281 347368683 959240328 355526978 819997195 708243262 941014051 642192384 666500261 771880054 961085211 410764169 845235001 501765030 873663207 464476079 752594380 925511274 990983403 17648363 170806457 72566981 493215684 802502942 990235550 353118890 401580057 494714913 627379512 477163040 992057407 388868348 971307329 943292932 977260899 659953410 916653224 967318286 992201792 524794758 765115388 811404609 894058249 28986365 768648695 381414988 657247287 97238425 269921474 519834476 820241718 741905330 853493224 991126434 993744269 994677289 995280692 72374795 801122913 93478700 571474401 153191450 952561527 590680777 605929053 341912564 352499078 469796607 641136071 690063194 930905028 116345855 491314465 83076824 757719921 930582912 972634635 329397383 462113597 728930946 961850147 518369229 559032482 688936993 915635431 656690362 974976391 867407089 933014089 587929283 794846901 972356198 993077169 531252768 736820205 712576639 777265945 750789597 806764879 200400132 818595071 520602142 685645773 50390483 564195640 470540710 876297677 504359179 606605478 136614119 249978288 922267932 971789085 407554410 861006303 808100702 949305643 481306466 924574905 232833067 617715949 234000243 816995524 819795721 902884602 8717617 980554416 236208795 549642649 450531522 734119033 724116967 976073975 496548809 540349266 455928560 933641170 523670704 540884973 729254333 869362440 322097141 668637842 595517013 777232145 498157335 960613674 146259423 301571610 263377669 763211963 356926127 572778497 388914273 414268214 845236166 971957981 895870471 961898929 119068544 547276929 759329675 877213697 767406881 802553236 29137442 845791840 191094232 413408632 434553573 588450192 748607794 946943381 473228841 885979240 749052508 833274569 823583124 832230197 124541895 866782005 611975969 824155929 74528336 134569310 183645981 852833865 945985103 976872017 859075376 956074393 500317469 909249880 551904925 680982874 211888195 873845445 372360019 910138976 59427822 832877997 220732748 632386144 295701077 694545298 484864483 688878097 745288224 945873135 475524907 999806372 957332596 982334209 881526633 961658061 686729636 765017051 737630863 957086442 277347504 757139945 763776145 920827211 796550429 980134574 29276953 839869153 516772927 848742251 741023224 990736456 494315891 756729650 540376305 876477816 241485100 562663240 571661008 688241801 678398635 983473229 439906024 710138452 102626676 606486509 850427740 909634980 369760090 667555992 6169849 195322353 723358912 835320065 152692181 913221078 347756997 558369085 118261273 493518352 73071069 568351555 292574510 679586786 919793072 978624540 212947842 750181276 373218860 800793702 643889309 792387047 791820801 833659560 496600297 708399037 693411285 911916097 913121191 937703231 420895075 823663644 93957073 888162317 918960362 923200404 428083048 879176806 50450367 304267991 213916350 250677841 32488492 181778760 713688313 875910226 238792622 727142014 812326426 893148213 278430407 892967583 605385900 724828516 847174571 972983529 528470791 842727431 290450118 710029443 671732671 677211175 623396041 782182436 945179584 986511528 468864374 492456971 160533057 826203830 199257396 434674413 600990245 990936003 202458056 255528323 326594286 706835220 42283651 87862205 301667003 679784101 204782909 695839498 878149410 950408967 863642142 902586472 330975870 885400126 792692595 796716956 728920881 944050767 922141162 987499375 622919212 760422210 877427493 994246100 995151351 998010045 245299993 527693200 789895323 971854666 938282154 960061429 656333871 853973606 785604200 956996985 656463389 823974441 61006444 688056905 863449442 920560800 398705740 905831218 296899678 553238622 336054735 527687975 872590024 934698422 319672914 604815620 35126324 392112676 7282738 926923321 222231600 950520967 45826241 287054456 426382618 457310756 520529582 985912099 670725569 993680302 793416662 886538116 494573666 788918157 788382842 874761190 888440245 908667988 182473973 433993395 456468440 588500184 90765973 283847914 17306652 53984417 880599895 880978301 214345960 323609383 277985093 436863111 512959557 940270688 919204987 947148874 38914765 329476380 102908801 598658435 867857246 971526216 705495519 922102253 402592283 965172946 276988171 701345964 527734859 557289269 431551336 936002701 530341759 743677861 396615191 892506599 863339050 943343481 35496797 923488316 965218429 975339669 910705162 976312292 198954339 256177155 717822777 751000125 194696275 523870249 830585769 912545973 980749512 993464713 433281783 690266830 919125706 989929736 251266979 418499579 737047606 910970106 80964950 785509049 373874905 581887028 347582566 558229788 127751973 848786397 317105203 772768030 307185958 703242447 538356842 791258962 311030591 937109124 59168213 739257490 279392312 795088479 447881252 581302103 669993776 954669677 917973407 975953283 575022174 781429480 463840803 502469576 616857192 729999632 236057245 476641310 429091560 863823647 530329412 611282074 491822235 723851336 664256529 732035853 464046528 610633607 820355917 849072973 19186198 925949764 479018596 757725441 714708740 751485243 367944923 490567874 356848605 899116603 752847607 832872122 926242959 973030811 156263905 901838409 240690699 308875939 837212769 863214311 274321717 596330741 621043987 923891919 197709172 561410741 761113705 810030390 934109499 980566276 135899877 551252422 243302577 532533852 433325135 629966611 11879221 380861877 223434188 756977023 718252544 737258933 60854078 184664575 49841907 111614512 935617483 957299126 994381441 998055952 792524389 991997556 830687531 919372561 493976585 596342757 183588439 726739275 6740697 411298256 424295740 784257026 427066856 779776749 530097472 949604893 280000141 704669826 150053207 288435405 604506913 767903383 721145898 860225441 245395372 787408630 876766222 964168811 263692437 625538845 682225117 703777865 597525251 786990152 152479051 698043389 794038175 860960722 553622619 700788602 767684762 768116530 131996101 998894978 28167084 915818580 749645916 891537762 248332353 646242861 918647481 990623446 775605840 946885816 283839412 651788373 50252990 862950562 875983262 877473780 637563694 645808429 572842901 992126106 9420835 450152953 801681151 947423318 144675645 668495913 192159048 339268922 549398453 568898662 332702395 709095680 891887436 989879935 106041084 631032338 971620526 989851147 714737127 855848817 609347152 905648011 38221618 826523407 477410782 812540840 279415205 522071938 749205882 757277899 860816154 900109458 530933956 897296035 747219738 753056089 300378926 614152880 659130757 812155938 87538187 960026614 972529026 972941504 723581452 846521495 319249935 815142200 215916075 530171208 630437650 908306774 698455971 861141353 604324494 838835011 184776915 868213615 485274671 915230147 659480038 889262598 605533070 999648022 340743311 921905371 183318409 307054416 640951358 880049060 510914487 876065380 721512681 955820526 34357035 446984494 147962604 384314777 361340826 758215811 367341992 762869928 51719014 209551309 759014208 792063728 827700282 971106886 287521215 469115893 332051750 930399214 30627352 267697195 128047906 581940776 58433212 655398319 772666362 903790557 529836385 761305652 548088224 965031310 369419692 922306432 412710921 701223230 824812533 861145803 875426910 980799306 302019013 320877164 346952716 594016829 263500621 648846983 658559986 846433146 94246899 189670671 22561651 583060839 267424786 461150092 693160865 980257021 710280164 930695087 43989611 903446706 500699262 636437365 275186419 986224297 976423311 983176815 653105124 707956801 137548798 185394778 471413983 930101479 8476919 586236063 572559821 994881641 316009874 645244944 762342588 918126907 640255611 654058735 620167541 915398657 835067079 978216098 823845328 874493372 302389169 870542975 107189641 328227045 129969468 713218128 120664176 387110636 144825328 274539409 668730719 771021964 482834004 653297630 313206644 762144369 78840400 619988406 845975826 984585968 407645924 737175466 278384890 340771517 617124034 649153902 806177632 971705663 337695335 352661483 217691471 305443621 469683226 795952046 9254461 483298137 782634646 840689831 664191716 846726851 661169953 842762122 319685266 831171258 845098278 882490800 425670319 966068978 747328368 761911605 339258841 411420740 449718104 772331070 570415941 874450011 349918421 462593424 305595989 661965786 560945430 903991007 964152532 972746942 826803423 947991107 769141443 905099672 641739997 838298050 133799196 546445934 380663426 703624066 110522860 687413836 741888691 801032733 703415920 938509637 492247999 783465225 167438775 613230688 686740992 855040094 793369473 961218755 401014039 515499778 418082386 456740975 608309426 889161153 76528888 703676362 663223202 765230362 278899292 920373118 312675908 527443325 365202210 476017204 901962932 955622241 16138737 461768857 23485435 401313575 585545221 941492372 320702238 774103626 711347776 775606085 259058418 413395621 82655332 930203496 909865361 986915813 598526825 638946387 141350901 453447046 258016925 581322932 373013835 913519326 761020023 970797259 739572037 974213397 132987777 252319220 950559573 966576929 531169161 763709508 288518558 828770907 256949224 473482697 247002356 809030773 71745299 854083127 891835210 944111775 132721091 639608540 227941850 717170030 763979144 963815883 305652418 439081954 930435266 937799586 490914140 595195142 778928761 971262620 662321843 994072833 858980977 930800475 842243496 912132183 730332458 996238318 945921548 992159747 700673116 831448133 448152674 663338250 496487597 630944684 667752791 786998088 636517675 672000962 281741001 895715274 361408758 764729342 498802364 818578262 818611562 977282221 819791946 957257553 187132550 663502299 976136785 979410345 343352877 508511998 492877358 968139318 235069155 934688275 107625973 147378070 560035800 826888264 738108220 972500793 100830644 487795836 198043531 436051925 67765867 274198334 601830815 763752299 654991396 797942551 81604183 837350717 418535287 991026554 195112590 560792900 998976872 999960077 341165732 756489377 138295828 328653849 255279951 932443409 151712924 384209302 207726836 925287055 111257870 448622869 584615567 668324884 780480547 927908610 217519337 865736262 823154392 902534626 57949814 325899399 439356379 666278149 861944937 969872971 820742160 841170263 280627069 324545060 396190328 415238179 640192608 653509371 964188633 991852665 428479530 509325012 25324379 221888862 242097658 940661340 212891185 631483066 369558544 778197859 921861139 986389858 196130197 538395637 565891757 729690546 230440765 708999693 99492355 616833454 423199956 538549926 391978714 891091098 638350764 652563326 72752598 97081331 295912027 681181875 549212709 746969504 980044380 984719215 347301477 674549105 214067433 709826043 44568961 248988887 681190639 917606518 531193842 572338874 803660749 891822264 954473105 962848157 349883379 574886265 339758444 846277711 404768130 744002199 658022830 766139737 541085981 809792721 187575193 909304414 182096811 439373155 418263217 903545603 777697698 976312596 363881613 436827441 559549290 762863667 724514367 853304762 441221632 764255049 114714454 223528455 78610763 580722363 980318787 989638762 418703498 441288806 803450280 951438453 938022017 973442037 96228517 445362845 906813521 958478544 456704712 773560985 141592047 828587076 142875402 230965183 856203456 912875283 198530075 813033126 915378599 941702350 915783857 925341886 968976538 990533975 11373751 376981482 964036860 993419357 374356531 751612286 964905297 982374109 438967137 992890010 735246874 960914758 109700530 467730312 910895279 979811672 329408956 739146842 47431539 498657865 639318929 939981665 859734921 950230856 384078111 586894550 931790081 960871602 753221779 940414170 545358997 548449886 872320083 905047701 516926075 543844679 607713597 982121582 361342553 752210370 395083263 532713663 955253967 990403778 550284593 723137298 644534897 808494167 749241206 843899157 844181045 989939587 355156557 642261481 449717855 514870377 507259290 670433178 776256701 977712814 403725464 547618924 625782617 676805712 219363308 815358828 192547306 794579681 613650413 809442366 135524679 322417293 557598019 594876235 34653096 999328711 389010190 796815504 288048121 506785685 365278481 886954957 152528602 501093246 400109539 507232361 32971677 337938698 367499180 638982171 525029849 864782803 835172639 871861571 964987010 969862908 556980391 632509590 203056896 659060329 847869021 895738638 792812946 824015112 555392391 789306869 9423734 551155756 629279013 731961121 235619870 345121595 527618258 933640870 886530829 890636176 248524885 262777795 354539698 979304141 969870217 986601547 164055880 413850767 733739633 855273281 477894852 788930468 422055499 469706640 750344170 916614137 175063905 945394173 89649036 847491039 995493227 999746564 687920034 717961614 965504357 995485790 401464751 507087721 421400286 930900197 203755834 495452233 259140617 946081190 146587614 954258449 663537415 728664780 799402716 929739407 121125281 482496277 83825676 269235411 449874694 881321704 484146210 897255383 142007540 776651541 220691046 856778910 732859984 853456896 142599114 460490595 875734858 983594067 58182165 795664394 52902712 265398171 780806606 863598172 827411942 922184441 172849058 919564132 692794615 953370116 820329077 878137571 913582113 984758601 513899997 943536040 852680615 872609440 854333131 882744412 114261707 595975117 421178428 625465532 902190026 914943398 270266790 762668312 337435425 992996326 70189154 531216052 188524967 743131621 262990438 794972016 850719520 917856764 877185127 987402815 404463284 625776742 635003723 888636473 564525414 658879118 150139674 726458338 732602388 975484630 389896337 913281401 592702352 766324173 510030298 709233460 206442668 542740686 437170453 965069381 879111818 914055469 618467974 761168983 816872466 961619722 998804866 998883487 976296380 984427092 341739169 380289041 843859704 898761065 188158794 634302681 445635264 799925997 884900088 932872067 718304402 932908335 728725146 874655114 39445666 419699552 14498734 300420644 477592578 983152340 427215501 578898847 858289692 867841881 539266718 544984833 21654493 317388406 762988885 956156574 380303178 842515662 54628367 572026546 338533806 456798493 722127257 761739424 785799087 929556108 838758641 896348168 358271935 524506613 278477142 560509780 913991064 969971559 60694339 480344716 256189867 967073900 880446406 921015279 669537095 867997526 926854834 991701075 769002659 787097145 197884899 655013450 443440026 935499735 169174770 935518381 108072370 188198584 727947358 821937929 670926806 672725299 265480989 861426696 886908445 946505144 10739533 730673227 136088071 428302195 96540613 219771181 169977222 343997348 68687062 816647929 395334563 516642274 81212267 100078903 296474313 338061163 464210317 808282957 676821898 792156747 493117662 972651771 43077164 446493203 944990150 969393704 201269319 303398023 603058607 920238041 280932442 371191796 12308060 148187032 998758421 998840197 837282402 982647487 729094253 973671387 82173433 819179726 620428410 638075326 373246445 811853889 73663026 950731858 202334692 618085020 844887205 933308979 499580408 973223429 421645480 976093613 706943970 951666274 490243379 612450002 948840019 963281710 412417448 596040283 814501611 870720577 882052030 940460278 785734702 797923200 216466585 594547480 671397060 693291284 91464375 885349510 1729374 155557561 977218309 999318640 76933958 190810567 162640176 641242206 671028815 969436428 923918072 946504161 159698308 469034978 151599355 738887439 324542813 550408006 140964510 500702218 491104292 688263191 367690100 453082786 140669092 761907278 466459753 501328844 861438524 923007078 129952565 442550698 138475768 735950053 229965022 965447987 998397016 999006753 169916061 814311970 224413398 635841238 440935515 873186498 810403246 849619169 900253952 925925270 155653468 827145227 204912921 598209629 468735223 765022353 196658583 477734065 437232998 680871841 422634749 624017938 463565984 823026669 612849428 895297208 952731103 954723966 357799187 383395605 801517155 871151543 307927550 605596870 550945743 914145587 73149536 759586682 310574322 956390759 536903719 981969296 380423917 815165533 513025115 871775887 393641835 724921012 681041038 759018776 877782941 927993986 822537469 942624862 646454919 866194743 432465283 666737744 764423481 787104928 525990077 988522639 947420933 977382290 956348172 985047737 479945512 523545852 256914275 761380572 782244150 860241846 555223238 899389541 232607701 640015459 992397318 995933565 125292981 246063461 391169922 633054235 307924228 540903133 22506122 896999413 83126046 166271713 951226779 974467344 41281455 524149572 243826263 768184490 359032272 641799218 187439302 760818483 660011114 717056278 243299767 559463632 739006213 751718690 298387111 702475841 905127002 918468790 550244666 734470083 754789828 950197621 478029951 724095170 874098055 956503231 613330642 657845920 311337157 732006605 140829687 523085520 682276758 784363811 494027027 860466954 532164982 662482262 380027078 827233854 214827296 780874751 624100992 940327907 753910683 810744143 580060782 695024343 646795976 998561798 173364281 513722505 210889362 808874639 67307466 253232227 988781073 993573697 98593005 796702257 439683942 874958445 748459662 897194701 78524031 988897292 307773717 894378969 779648958 874310817 590807333 988130017 69341363 530016290 858380591 864939320 233429671 900449347 287279699 867416538 891031012 983945729 403190122 698937325 73143837 277748055 892891643 953259830 343881903 358625541 98852254 660298275 203277398 805617120 350453468 836623826 471674825 886139366 825213643 968557478 407975857 660978111 843108752 934490067 480818471 979752783 377240879 395858756 748979117 827639536 990286209 999619768 535854707 779220282 725195813 725251103 819434938 946555203 955123052 966108049 276651718 945548801 598161669 639476851 247866962 859936503 104331810 322727872 554356409 642092417 59080539 66788847 175027238 789216268 842619454 883604107 959822079 963595016 816557045 879590222 559246285 723912433 145696543 382145616 586421253 680063426 44385360 556726003 151650714 219188185 917082233 953834656 246541786 699691919 669000471 935249212 275405792 760571236 674401064 813084347 720580585 994740545 425322910 665330187 7804 237117317 60964438 827287625 734807183 792006668 267656391 661333231 97166020 346620875 328651520 529524190 28428428 523880532 669316483 930744111 268529128 527903102 495021174 741795487 753708571 993377924 884989897 920698073 31733293 571136476 951466176 956502537 280565672 692067608 515922204 839413773 899874264 906646777 373593494 413138458 891142010 924383173 947019371 999155259 450675105 600974527 431181385 816199980 367400063 731903354 649133510 961089311 420470006 619693928 65627734 296915729 301068243 911745221 981031181 982172235 597015250 866986956 675793381 880106910 788486148 936827936 891709240 970687618 103851557 827732206 778624953 897375994 378419030 746078068 608127751 983119707 38494809 59209817 114083966 763758223 930455690 980452042 823120715 996181903 141065787 191711323 16355595 750980118 650819169 773548838 118914261 783747854 904217252 930182791 216904119 781448469 244904901 464327977 90952956 508112036 28143887 837754668 373718588 963318223 635173030 732856247 51160263 568566656 634063951 856134632 257418876 819842034 433784639 556305803 940007822 970742084 932122115 954919724 885199038 969349112 88381744 957687613 96608483 201839416 13312316 527716310 627321776 779267849 922945263 964348033 493461576 733667926 469039136 906783430 75634607 506470817 980735427 983658843 458622237 743309386 434357376 616409030 472191528 510148716 673666586 700892276 80547479 386902107 363549861 821511812 285960713 727499191 536005795 721346744 543294674 745850457 760576859 835340447 47316054 714971002 192039190 525608460 510030445 642126442 568506827 980756214 511353174 793563980 100379375 673036812 457690370 939448469 286079289 990965457 723804067 899995755 156255115 604938745 704582447 829539068 854404065 933008169 454124347 730963797 588701943 645562229 585530143 590011259 945260992 965708199 696418996 973253127 866469979 877648989 657040085 994826268 264739926 425036465 94550785 285454811 311257630 912471762 749216020 757150126 301738901 712020622 671262755 992087371 102856324 319413490 313848946 720087310 944298385 965190824 361004122 478222456 325943527 810828248 387528502 953369903 528384245 756056569 748401178 798813202 477984395 503424498 638425149 876263454 873816430 901692462 699210610 705203778 493051008 810947312 50092007 644520609 469816767 813017609 391690855 628577069 929876766 986088079 929540041 964643594 909034463 924103018 6517545 427326180 65766342 676154257 249922526 735276858 916073314 983526620 493207566 868088696 733585557 743437056 121997464 612380513 227583441 956724027 688538842 795262533 652978345 990496939 546980048 989843883 282062959 443755360 357014295 762617797 533702834 575576585 306901040 957711287 532876345 671862724 589533450 832819449 426088336 462482774 797054766 809137968 220477294 861220786 640995362 917441926 526987104 986629811 941409375 968604681 446530762 675006670 429217086 687427958 560754706 763191112 887564333 894967808 789938047 869552921 767731484 841788765 738623402 752556156 727290028 797407516 880180733 989335828 22628406 271415989 91956298 103087691 635932890 856549159 436541888 949891548 248636927 313227298 770921979 774819904 475137869 591147729 666038359 796958377 958523530 979695694 65074268 808569956 310532327 842813938 433927707 946810988 627586148 768938865 753833354 947024627 417589595 772220543 556897656 770693812 503127816 862558723 974612724 988521123 499074300 748724311 895566825 912128599 673331585 757706007 596957082 665810247 445137245 493185525 315062045 801218147 544994688 933743395 837500505 897185481 732309449 940045044 959131951 994734028 690683901 934655721 550871221 895034416 238123248 964989713 74922220 471349619 244796605 388135073 958492570 983108829 106356775 233114107 408287804 987262663 140953073 725152979 993509232 993774886 83471949 874846108 60546088 186445210 985378811 991903866 406163 771725686 107236535 154467967 316808815 815346885 340725164 578659708 132225759 318611540 1427811 165889340 122792675 678849332 300854482 604551285 522694840 733358264 965885338 993984910 539739727 655364638 948907956 959234907 790966934 881103979 506984075 929675314 184095707 217937784 937950078 949787296 647739164 817234487 179114351 488797103 589770821 746770363 536695863 675119402 549682647 731107184 77265488 862799175 806959104 969127515 291621178 937956554 623653929 806054393 551336675 822716380 468663924 777064985 962076723 967412486 999929153 999935597 438394361 929104880 269236511 811987503 253405807 836010233 739901511 788120864 99687135 573905351 805228381 945785415 672775970 903066206 404684692 496366077 2757301 374672366 457704350 930939271 543485792 642756113 787377477 860246734 239715046 747900780 470852112 906048247 449291310 490831255 36502198 589383033 816152991 974378040 837871381 860395366 340506773 828388998 670074385 847382738 69562378 471426677 258284647 407419910 881107247 917083094 325711671 341796755 402234312 860354637 222087787 428897564 561191012 579177684 57563530 244736677 192532009 964840192 337699386 505240138 165305821 894636274 726480474 908891109 535808386 806832167 994515741 998357448 715410138 982570087 482883255 948101002 845977774 959886950 979832783 989818513 591175499 706350644 306260167 815884017 930635122 960234448 591196975 640965141 450583038 887702673 292157323 880769215 747356935 966408624 392226054 443779767 937639480 958687979 188779235 606374298 543434336 626943955 616357898 919852597 227955861 628795013 956373363 977507538 769619980 995006402 154945007 874091251 570862497 602241577 269767983 712221744 727424724 947229872 279427143 368711398 829627056 946282585 246306226 453784808 372211288 857654520 79346476 358775057 42978303 298952812 673758975 961294276 519059176 707898044 540998637 907156672 123187774 385201599 259267848 783542937 330449316 349625532 202469489 833004421 828204927 911176226 947307364 989712049 42939710 889726464 212826404 590408591 745396606 785706083 78339909 851848814 323587360 783869450 274469442 634371792 929396454 954845059 22415138 414245863 738855253 903030632 96119393 109294935 617266383 811071140 727052900 836001877 64081485 273280869 579359808 897995211 602562534 934653130 249049530 785616222 13592289 979061572 46575247 448306270 142684254 959087520 619241724 991876342 190934319 417548736 312912930 898929245 933773556 990351694 473491962 889629085 639754891 951801252 445668083 642762647 80263182 173160188 821485190 835107129 112178519 645895156 107666141 576222604 479897344 835019897 877211971 974642225 110370165 413292475 991516332 996545504 500146687 944620751 567295422 836973661 855624315 908606443 159150792 462881435 304591855 645096121 417128669 464263698 796566692 908902573 199009821 257005224 241130384 721575531 425985803 439860232 636570790 665467514 393245993 678218884 698610176 775581194 806656428 976303300 584471956 813271568 678936598 724448554 459308640 721356665 922006747 933592946 690796557 918677574 90167301 892790562 284654234 769590995 419155634 665082267 412093206 605219685 725779297 860539495 438584399 693152833 665225463 799070072 837771925 982933501 268741155 607680985 333703505 853484263 3986138 225832168 681642547 774932126 873321347 882177088 199820454 228447018 983479854 992963358 422259640 796197283 925875297 971241077 100005269 924092271 315333865 968472083 865495828 895338323 24784000 874100897 346773894 543494956 248565513 936331476 268201023 736156333 997817621 998568317 548436706 907086377 443604701 785845306 107207935 759043814 347025733 870598122 253820093 891576293 807423416 975330540 37783853 412574847 119070336 516028240 43720424 172912345 330007544 615541508 361895153 388809350 268376632 870932519 937266819 949922569 464558962 859790936 879431157 984676551 643721927 920839192 26712392 874694961 350692125 992117321 785844263 951429019 663573062 780273929 102604494 557950972 173219773 539085020 100767248 699910607 599822057 662346220 782951347 978475172 547906285 781789142 700555250 938829379 835910820 968528357 930488199 934419498 995721935 996654542 447591939 810393945 85177758 842125047 673381831 796887929 206343732 526082990 697147302 850444531 835402270 868603481 674479656 723829358 40535735 92330027 821238676 855652392 458836806 995842716 231471153 245560033 995023224 998312866 482544573 973073300 904816829 976793620 324914412 838543258 288256639 352325455 12530771 14858313 688466269 864027693 431234963 607004928 695976227 841011311 569240870 651545145 223122611 390489140 397792321 767590530 565804613 922263737 947483113 996778273 976368488 996195929 452620452 934849313 478403605 722632169 566029033 879167898 423829631 954586113 271307588 566988034 173644647 470584083 504924395 870668126 200784017 871856114 379848106 958239999 27694491 948661390 880768104 977267194 162963592 844877297 27993093 304425679 752837076 903769801 375229649 418291283 598982354 998850303 216219833 454192840 800457146 982923812 397615048 556169477 721246684 769282495 896479731 903768592 170075721 363355537 699122160 905051660 781662592 844705972 571268942 822294189 778158540 885460358 885095001 999557654 534846084 986303672 567868519 591123437 791361243 938213779 225521179 590635467 549476075 783833989 682419889 968408780 210939232 330245218 30456758 250910294 989735346 999609721 887686670 909611999 498778489 580069074 559552748 969059579 182747214 962228968 395637191 496797097 651216769 830888971 443278210 969155103 695983996 865236916 841546545 969924555 720594348 892455123 821616598 957426784 763095548 955346579 250175122 886844195 826062458 858044927 983538919 984338734 618792703 948674312 173881109 331402418 309446359 621864048 505637546 665157879 639025558 891464902 492621949 918764860 811688076 861683651 61705836 432429611 545615568 845184525 614571061 907087637 191266672 818056256 9098202 912901303 67891655 963079542 852904213 913484319 917173183 931209117 999704963 999825580 530620988 716522031 974108881 975306615 432276378 759979788 93806243 264718384 616766572 703551967 567578388 614460054 514427611 632807591 748631188 946716354 259269177 441931147 456930258 796136675 531211680 573377166 968253134 977869587 338439178 507796269 639675548 647049274 522769284 622726273 203034091 826394395 378341351 804177042 588894960 897007503 797701900 960722737 904529620 975685841 108475529 434580955 562604457 639446210 696179908 732666007 65054281 746393051 911772558 919753886 462883200 577498485 416800262 573403236 881934008 971920232 994306189 998766873 837571944 885817574 329378833 705699037 965225835 972819826 223019289 358806338 337014556 718888832 734056346 994403536 471990214 476572750 358490360 365107914 872813596 976864251 401761774 707198378 882896069 991497221 994619399 994890791 387057177 443078780 642872680 816423308 622673501 856837271 350826256 524081498 153798381 517433553 23752160 774198535 447676027 585275876 366656573 721208426 205396247 739714837 681710088 690651336 765679393 902828894 732338758 754881484 86676989 729083045 12436738 787244055 835495261 858091600 218784928 454886274 38123647 52397967 269846220 335206369 657035500 876927800 436640191 562762794 950698019 970098843 8489711 279974162 332190497 987883473 874646401 996396225 388351645 795355059 683808413 907403887 285165324 374323804 280828141 478080089 101012337 904013810 927055106 997819987 988307756 999140771 665545721 964976077 549758406 645841063 600222274 968867203 1959467 327618154 682090105 947128336 176800744 416020865 92646644 201726779 549539173 940830354 147614909 174023755 651846609 904282899 322957120 344083134 938177513 985533882 247326621 664918597 226930695 873093929 117443444 457944897 294788524 406713486 85375998 119321265 273605492 516785044 481545926 983778133 294124755 635670509 378111080 568995614 365647211 735069625 459532753 552284460 710168800 827099793 160549336 804280899 104367904 710003549 422068479 599623985 90426376 869659859 254965444 727010487 586831913 678474420 13981724 528582469 134897491 580888742 847930490 850294962 258470 232825304 730419343 823539158 824494058 866782048 129251396 630135840 204211574 979156858 415765211 984987980 928390260 993980490 850907839 963934245 733702955 846790889 967151150 972690032 951114533 958245643 89219082 394844478 901016044 965581204 617084595 618393488 81854087 903008653 225471356 805563945 188170869 395045899 173302998 190253698 884495662 935822652 177146363 960532850 931212433 948241735 494466350 545820876 645848853 903622351 258140103 272195172 74763088 268942975 363477720 520075430 625884050 631288718 429583721 843642904 457493639 521231723 274905534 303336485 513908454 806810909 155350073 311692034 117255543 844644243 884928855 986394368 629287681 965937520 359219399 385976070 482971639 795468855 626421182 928323659 880937373 980978366 795610769 815212399 323704008 583267776 407568843 436313091 412745360 747820668 772331286 823383544 334350908 570858095 232262489 592789060 624778363 955543383 295631814 797642483 385408074 868275112 55146854 453109099 871477681 876896246 665869733 804884682 230475017 952596962 156432092 780949843 1650446 371971150 732055467 879474700 560208660 800729656 604420691 818468939 12979747 260795331 260583372 341556692 958324980 995985759 980902103 992163196 648220482 873679519 945239671 952171272 771724666 900296892 761651803 814708336 568735003 696755803 991354229 999000376 808965532 876023734 723034937 921010515 866571717 924317096 853154711 995421423 702739446 833670054 946521968 992452715 429135370 512817040 111505026 433267197 763717870 920768692 653006408 689569019 170651571 245872977 763286346 773696927 797419125 918420206 691808049 947623952 540599254 846044869 854463373 920939667 329483560 453631099 555175986 929907275 468344267 864461507 137936318 225987393 857497270 868006449 969850675 981160896 840249332 959279746 249396557 330081098 796360980 819358984 668326034 691298578 238036568 402343797 475418991 537380565 31130773 419863647 344744032 893479511 572887665 988355888 670829516 721305029 842577782 909247861 370735785 995991114 155680131 824958366 345122188 942618274 65882437 778310003 817103128 982300109 869266247 990740692 540318146 866743610 125438099 342475527 914330359 927466843 99335175 324633892 667189186 693040266 350611241 363412585 746590923 999227440 749414220 993036644 172955238 971208230 826982118 886313641 896500257 921035455 110141455 887284125 566984666 931729229 262182553 620290004 13225383 758697090 578467037 618375016 149303264 918982278 289791543 339999117 706876075 762426192 128561046 808350521 788347461 799606919 455980773 626638213 253527204 695835282 520413779 803812805 109213384 700142840 934504219 979431143 495527947 695055215 85577012 120131390 263582726 293804650 979293946 998039256 15597369 319863806 35992946 45797948 496660092 708317392 14607086 348965554 544995907 879698009 10930587 211089145 120443600 205055940 926899426 949847689 650762856 892415543 793737032 944673925 568593142 798498380 820098905 877984731 278977897 898045206 453808129 932782900 186260820 523358747 15702232 646318719 390034846 749466270 909583098 998032622 84511448 413773478 642430928 651537568 643759948 738966732 651126941 779380434 440481342 657998015 672248140 845721814 4091419 741521755 378758891 992739781 238157326 874073334 525740467 881763224 100038886 972849183 988278768 997533081 518687188 552296912 907941545 979631955 394701663 404447586 19618004 212058152 613025382 624118381 737144958 759431670 519934229 956722244 147393828 628064145 320584933 607374047 976942740 991794827 992269797 995575854 179680373 355478357 243463337 996294198 408752282 707380632 256700888 888371381 821962331 895031175 278613511 808155195 926070584 980659520 858154302 996365618 109807317 221518883 413247924 677087547 525830273 851512660 614516454 767299361 603802216 658235390 80616269 720131185 740829207 793775309 537518968 672109006 100005683 290381611 601095537 789573626 396447050 615777722 508112643 833200275 937341147 981416587 643918694 925996781 716160306 968223042 280854909 736345907 328478626 421395529 722153229 748833638 297633986 548498057 623135338 947678257 270253638 654156273 87238425 556743310 890945673 966031974 824434664 825550296 188157098 963981541 23329361 210970462 680043250 727219717 868830535 889624716 63183221 661273200 755737336 968483726 260929269 265454448 699924356 727085504 80240213 85813842 166914772 336651481 903517413 934763845 894083629 896334557 314108681 601701335 865438111 949692386 694200911 971423063 845787459 882626519 587962739 894272109 965890979 991087845 125607409 847202822 419433844 570990436 777557616 825049882 177456407 490929008 211629631 310594355 604307560 840104441 174090221 874429836 299159610 685110823 476685513 698131669 172116416 780217028 979692019 979902501 811846305 900654622 589891399 987868035 44005388 781360907 873558673 928542199 893942347 967969502 503347728 918960435 857931623 938780692 504889734 585084835 288139863 893757402 656950519 689415202 516910764 826872173 80343624 348843031 315374312 964248612 436286010 616227072 507591232 911966296 320704321 942560425 224177824 683220012 761783191 774136904 651217209 762663571 92078259 805559894 209565910 964337622 626150452 642650167 677739251 911540862 175658581 229170191 526720826 681900359 489517997 733818536 511329752 583396268 751721249 972388990 859777287 996887236 89432276 403927256 123527627 661632487 485179955 554967959 189297464 613040824 177037805 244484780 656429752 719042907 855639676 934751403 210713992 464175477 474733872 976064477 741082161 971267934 132277326 202275310 255552285 637698082 507454740 696036734 941539736 999126353 337627577 416596577 929371587 956546421 900964228 950171048 721184453 829232183 347887112 396527939 719105349 860198973 563686477 815668723 432995631 514011987 962597461 990961237 646833066 977304480 610250699 618449953 848750993 972425026 362474526 842250069 478654275 718711475 898253906 968804808 57471280 854823162 271711913 812371089 899947609 933125393 958197844 983871724 817261395 976319943 525243136 688568563 946393416 960957844 8684947 262064164 851637241 979890667 324761236 983316613 158381433 245644051 173812658 499096489 867377704 973992222 248997484 996991295 878362833 906167693 394965675 773961785 426738590 967910767 215168163 789998880 144840320 915168298 831730899 869821294 915237501 932849142 607070438 664650977 921081749 958533307 515315425 589803628 45426236 265197558 673607277 926480853 47658846 84017431 91275419 485009492 407468243 525356720 997461089 997468784 335400596 785202514 221531898 577513725 579474555 608270296 745016326 852185759 762579758 923271006 986463291 988519711 130754990 278888623 413461642 482882499 577387303 929089722 225564777 952663517 262722736 263467068 323608366 517387631 562548629 671615835 128040718 205144839 228058374 944774824 705596012 737404868 597385895 844225332 149616728 745731640 205735958 899536250 894625901 952967717 694071786 816167815 98675414 599943913 226165987 785752300 43703138 315556899 656956684 687177673 657861437 810408975 563619024 815253560 674811779 768591867 564773033 588633583 817140493 922042354 147229822 615069042 116365484 864890038 152609983 900649689 715699444 750786301 556790908 917283207 976516412 978782597 323995542 457757678 139625105 633433686 303603989 675360156 128946881 736861438 151975203 489957126 32085633 132012399 412269999 564847777 410525549 841848314 946212656 956027398 658516308 897078931 56816867 392958071 771822547 818636211 573250082 770849372 805689174 820906752 559489752 663972967 403129972 949837347 283582933 561711428 763041059 805113099 399258140 574382272 92941796 485580921 473483003 955512424 34317506 481914569 904468390 973618227 582852474 919648357 961029375 981659474 670230451 741464083 465298830 732599429 257910885 975057120 64412868 879175981 813392214 898693911 371079223 429358261 479734871 748530779 136198525 599365923 340192860 425149615 230923244 384448405 64817964 950210952 310537634 975312453 735590091 820527892 303742896 791052797 713254859 821787279 260781308 379607758 378731701 447437776 72926525 380131120 170831453 556003132 12322042 272703118 376586687 835532764 571604032 750213663 410904328 641165573 275461936 820580214 591413654 623643573 78613856 793172029 350549743 465502295 396819672 502786186 783754852 881126818 831706442 955315290 630520421 740028720 757138665 791276594 648662288 809192015 92057608 339616723 353238833 561713797 64205308 71047478 443934229 468449789 468692190 483572556 795476622 926881498 999918485 999931222 420490049 821715428 990547933 991946429 335499809 970765699 816405153 961687792 1710011 39658320 841518487 988256630 317532996 886870687 1579530 4161014 760498649 777761526 452958877 497995815 719570782 926715950 434850266 918043935 641475489 697226163 773959910 826517878 430647618 525091632 812890876 846183059 761016015 896450170 722957596 827636126 137039825 504977616 67771537 579696288 203826447 898929272 512485987 912344594 40843617 315533822 739122036 850881432 312675712 534200730 591994915 660093928 5779471 187389787 726854928 772362444 829692774 975822525 346650122 730373770 548707714 851427792 34197053 671944180 263231952 665760359 19996453 78836507 382730 626348357 338342747 556191021 789211266 833838937 260927982 390694891 19542266 425122386 957773658 997668519 765021209 860395801 630372644 749321655 305633116 731510322 692117391 882639519 429962924 837366463 61682991 872812789 161766422 560213614 619667147 641530882 224295578 470484121 201706138 228785514 375377776 764867620 874445664 874809488 19914602 172306539 268757590 899691447 910683182 989210172 808748664 908600276 185467214 657429376 307203625 324807129 409348762 795582760 158410677 270296888 830583711 856625051 634798230 732175442 404466622 530491861 276646788 950482534 837802881 962485007 987746486 996433223 457386147 794315552 51081751 416532210 952881286 984863526 317036825 679756821 854529471 944499533 163330096 565883392 424851200 651058739 154405429 174091711 661219393 937740049 294246227 782957067 362668408 510713608 710716710 958573766 713651086 893595515 553223437 839110603 473122500 591799630 227900794 563051638 212187958 647515633 423284271 491389665 291730725 761384341 36638886 984465926 257347014 986501057 201363315 292121637 556740940 900715630 136654484 705088655 650836703 941939339 756327469 790715790 400037261 702901094 698980819 808225629 439873252 838602327 199514716 441340705 835517103 945084828 280558598 940000518 710189064 944021012 803843374 825737910 765474081 971388273 732856989 778745882 216336347 577696655 243627207 549506348 247638758 465042064 669622506 684006003 640630968 721291344 259022505 731485658 376758630 649675139 66281645 734474825 420987783 676209583 151691515 216311509 208492328 612048454 770784842 800604368 807110797 926749966 230568461 660924764 178148670 998492826 950899615 987456739 683099727 773699576 417854574 678950247 668150109 675127161 582489321 592481218 72185288 979966206 178416346 193642173 494976382 752823460 349152806 979885668 806200361 902365226 415984058 642349275 12324819 527432966 592214890 776987507 589064691 903283500 502484687 897959053 814125262 870992860 815172571 828227476 597444209 716551773 823229173 968071311 759430139 783505385 940552961 941875947 671323682 737317572 618671745 903968782 660642203 887879147 112723555 908533036 603987141 613123735 693999240 813413103 894617924 935484245 500982323 588262813 925336803 962189883 556650665 731360808 272880076 758924772 548557359 682126831 917315062 976091826 97080235 500821105 496508801 505290255 780642222 871693240 725635807 827968275 124477430 613036831 577270041 984431393 456837529 578238436 528721870 946803548 765937183 878448300 122538902 194583926 956444497 985883482 815567237 896338669 432346555 456008263 65151025 685011386 184526838 494820912 858564758 978632367 638059447 643111564 225234926 496642269 30845872 937867711 417467222 921169678 757763629 834336851 419526846 674737704 152996810 353520622 956994847 996023108 795385185 976821134 579308928 612351786 458268314 923683495 877995570 900021888 907915894 908027724 953785915 962395194 35013281 969785937 751951234 765487450 242699409 464027813 542182345 996156888 118005292 229022136 285661338 438213139 839104054 896382044 456655513 476517840 191942728 788480440 152645093 510203742 227226028 354571359 853472671 861202940 676036213 751103678 111908047 776802747 231640830 773066984 183245520 487672771 561238787 644662382 101692231 862272023 265794120 447483218 512742145 719128333 229486768 302213572 89989979 507664694 204123594 465721859 654096987 947127523 912176994 965238366 877577450 981976461 684139840 850198381 237969971 264361486 508952215 884962287 823094439 963164922 320272654 538895620 885520989 930633757 743313547 894856373 751518886 788351373 312590164 504515424 547942781 605251786 287797980 463782800 431243064 961415354 675678157 934549779 398824720 631778788 227458824 331589048 88365518 188887156 438319078 478842659 895264724 965459270 962667380 964548855 296971679 702927308 693123609 833357634 49897524 848151995 485916343 678704838 91247097 546552501 88612612 277399685 659282697 743986495 136486778 266317849 351341322 688122482 668026563 867052334 741136611 903788153 867331875 898933727 916757129 984966991 619754060 690061916 428454944 625686477 787082865 854537495 288211130 675222141 970572178 981438809 950391128 994237639 774225783 877955737 811825327 870768994 786259580 877110472 252152949 733876472 373525919 728463578 756685313 821999133 958226806 991860001 348394304 731546504 927330041 966865437 952652895 965848955 41634742 860853156 92076823 891760832 237350849 245439323 837597994 905850708 359748938 776175723 814364551 878460823 988816818 994015156 760803519 782608986 415235717 976231487 232129292 620451820 285981001 815766631 29175532 302616291 809437956 877485213 410700800 652318767 441846014 624740026 864531733 910605523 562471297 987722887 892228160 994314882 384313567 535860150 49850952 637602775 192758179 853691747 108532197 390867150 851616334 873963075 578761455 810753239 959471661 985804904 898619324 902602619 638787421 893882243 789867295 828836605 566537138 704081829 405852987 667132916 956482604 994226123 824809322 987560793 482368373 899716005 54928223 329842904 446625567 596219783 152424588 455167815 92070354 857986209 152574029 336233585 362017728 369366357 388583323 398549418 624100060 836542014 708181083 880029819 638683978 679197424 676645052 839497001 236987868 530749155 812565144 917225559 611014522 844009217 318369837 373155211 830899496 960527700 551642190 819000662 262064473 677699367 353947566 485003066 996414413 997763342 347396934 432708657 734270077 991512995 188872539 724424010 658282419 917895980 783661605 880305879 983712044 999535544 404821898 831549579 542663753 939079760 13129197 21080676 774332078 921792801 124319633 770865117 342993984 834610802 169733446 325607057 838045734 905282392 159861231 280162386 178288623 220827863 178926903 350360112 465497983 608182739 917509687 922435234 369001131 957500424 116391945 169058905 519552588 555518175 649965506 993782574 761236713 923765779 366238837 798373855 716422980 828719081 30644496 653704352 772875972 918114718 1277591 796426512 426298000 725229580 832460711 976567424 57953565 796117518 603491624 913876062 771558426 951450886 314858869 453557781 994504479 998566938 333009113 843814019 874691337 976280905 916203809 988003213 970243611 997850006 6580159 7716820 941921054 999297846 703082512 747958307 501895768 858918693 149426017 647926253 296211610 576484137 932144792 975126062 842708431 943184444 123150673 918590026 981936604 993099828 423931219 687284596 371933740 956323733 477903167 840167001 609905007 929155777 604734090 798848865 713813090 825108168 704586382 726740538 286104450 938651822 88748200 740468911 743927 400285468 616036575 961035709 178441962 213682763 133796490 394482845 816754159 966957185 957887815 981620233 782993707 943236956 125128361 504126257 218490866 840718028 869294619 962885661 538538254 888298767 858217170 884784599 895812125 985787062 376313885 946058547 304828318 858151372 491899442 819074972 548133801 836086502 898374305 989080315 224781580 650984706 538722546 868779437 407274121 582399877 677835610 906180445 495549982 728153211 940691310 959813063 572141679 935798473 945460931 990917531 16845450 528529590 548685931 713836259 567981808 900897710 272500846 865259459 452236040 681769560 907696455 985934591 198581408 959866305 706676938 984855972 150277136 365403188 474422744 960924569 209395482 780632586 312092341 823678802 234506884 552732300 830955971 966693248 956875687 971743421 424188033 602369580 366331850 842505751 181836135 483373636 947646130 952537557 660811812 938480150 978063169 978095697 566890056 922052412 952470594 986054781 799379869 822292596 993807236 996814502 333854382 848256780 170041569 257424476 993408079 999849446 369166856 453274639 160076000 452226433 973936140 994594146 48590082 357065120 150281434 424981126 426950416 874003502 478136033 608074751 17751049 505123685 401196897 864828872 385469045 811081172 462494853 641152341 57527796 608856637 816763132 975694884 270002694 685983695 239761428 810274980 60857964 962412198 396801841 665946348 836464720 901338459 493694073 759477408 698216205 873929503 410517221 636784720 216046114 706612480 279441600 623663762 292495417 292847663 233492520 296742127 58413330 459854613 821370318 892097125 697294173 808279264 311544933 611064134 683420818 810003676 385499965 782188904 194367106 868989769 303932582 613128581 91800057 535513158 290382466 448410196 71846184 612417511 420686376 503340500 880957860 966906078 615974976 632427902 876937705 936002851 978836402 981776841 736515836 816036386 562613107 860329714 637626886 926317835 504779395 856018487 111246557 869641042 654892986 842733592 843161918 882918442 350786402 964535957 37270669 984963767 694753338 703965984 769104621 841939390 319130539 942823999 701507401 974141577 941583284 970768645 113392187 804676835 445142723 705272975 143371075 789181667 828980047 938010146 381581111 943201906 824883897 860931295 83142920 382666785 75662644 877454682 347048206 548739788 1770690 628329688 834877815 852803722 351654473 982910559 412647725 425976785 936341401 952342330 715356460 791012230 799798327 825328272 618960379 734621591 456023770 781261779 878409766 993148471 943547967 963441574 221355481 306447783 213971103 265243643 759144707 956878039 495036593 557970276 985674644 987510790 422400787 915436678 230731339 380219120 290449805 860631411 204900776 340331186 787116807 868362715 660587109 949908438 567358957 672505436 328458038 760493980 497733193 613736586 172008417 814223983 874398116 891387980 114634755 375741771 147178488 822657561 996665439 998756346 560082926 580991509 679820327 792476028 407306231 895610341 569775221 723337594 609674053 777541097 625208342 657838962 897092846 922408710 701609587 729090169 100652676 144596699 599595188 622398370 855187977 911084081 649739287 932792838 611842277 940753758 957147891 964474078 163232382 408915441 550487034 827526279 13667893 561038644 589777847 591333000 810821270 942918674 369043764 444439647 598123554 855172468 768381326 881759825 725577731 928054345 646430569 715778401 109488000 935954417 762557903 846380302 744152261 850939898 659915656 692610675 412206450 648938610 475884202 939535382 134986167 626942013 442735753 677630609 259262410 418310900 604299496 698427188 463881035 672120646 267867130 905362581 218897216 709739922 900333152 907374036 809676473 865182362 638166845 984534703 469024985 720629067 263271118 514541414 352690200 756304802 394600102 936216019 877005477 904575114 256924189 377943588 230948863 728734631 337626109 712886912 968644900 996238768 36978673 162613017 859740654 941296827 522890267 642294963 141937036 862249555 168388770 427252989 62111905 805771838 466869989 588386809 884976898 914479901 869689144 889885454 514330406 773376207 101297404 744819864 742522541 865352570 254716228 992065153 630835476 825409373 400474526 512153806 98562197 678684030 686590239 774305527 674056447 768087893 860112648 916204039 841800180 885505234 747483777 940657415 803930635 997734473 471619205 675704731 304685255 796598155 60207914 227221514 434968119 548403183 810983460 985298982 556833142 652310730 471248753 711173976 352288214 445670026 145912965 473702261 658907669 931524568 488378525 642271391 656981693 838927882 420078816 855687803 801216371 815035407 684407199 910135387 90195935 593028479 702770496 902024571 722586849 748930540 823361434 900385097 139081490 511696139 759191306 855426166 286147899 537375574 975243930 983293415 70645881 691369345 62230600 491712316 229640261 451824064 696583074 935728952 371088047 868839601 541187499 865381073 564137726 983437468 846579430 894550998 291121753 573009739 969945540 979316409 420924333 979866213 485548017 955899166 472486091 878537097 725707284 982973407 220238119 702521451 200933323 835989230 704133000 983811010 251744131 971876203 834664737 914412927 628227254 753590783 115084946 496985581 464749566 607303051 56343099 225668245 130495812 606089304 365582041 656773113 936432381 976771111 573101861 860550384 926891320 944343569 262774776 426611692 723228730 890594078 567184968 636599140 460057357 928136384 595569186 703186074 879264292 977902099 691440942 846391579 169648262 381841287 397241396 999340708 354401597 793589786 168709423 540334248 944800244 972718136 719138923 850441433 918013137 994343181 180992401 211688207 546931996 729097454 823609412 936298397 333819851 430330355 416920834 776825948 235989250 945694690 454675272 507503072 680637470 895264254 964976101 984914914 316311482 832448160 825490931 992036901 533944931 614725749 638722107 828878825 5983108 528053759 669879085 692824620 226894522 469002568 853432121 965489754 3471029 768387328 424837135 761865424 743582061 949328251 162050583 476354532 812416640 996094737 361351835 971621917 739677192 900224424 134022482 811451274 136186902 550158974 104011128 124256217 31337694 198756255 512063409 649558488 811218117 852926781 329906206 843180939 913674421 981909389 147510872 734891373 11029727 767385378 521799197 801993627 194883692 506942604 788323872 929980632 994178271 999651032 690991410 857928402 587120473 746273777 746864184 780083356 889902328 977070336 71498243 527448704 129232719 580246942 119430654 886158920 745110621 786252760 439483257 612848928 211254126 689917439 83195781 861319120 316012255 748158489 930558469 967177530 595555699 725118038 582761500 625113149 68868054 171412635 933402307 940432322 502506801 565636776 672721822 947515944 542313546 933789863 450924592 650422735 3079155 277935879 77244715 246961805 954827306 996169808 129534204 294771510 535183274 759307711 646515714 935498640 491790209 737273450 173053949 218831354 42113432 561077328 138795174 279384461 616884438 712445298 435908726 665684805 543943446 704635980 39251268 858350984 144965203 775222104 316132313 704709099 452101520 713938657 132161654 594491838 264265747 901691937 565392966 938601565 11919633 448967984 259360475 576604045 502377775 655358102 501294233 621690883 634986088 938037779 796212522 926142781 29115935 572300118 170033145 728373294 317284690 441626503 643895044 767262264 619675997 653535362 137423773 258082018 288457357 656149218 448936264 735236719 333284877 606927101 275356944 894434533 862978462 969848170 973369889 984111932 828322707 847043510 528624410 850283656 670306677 777038504 872991798 961640509 369723835 942713585 563898215 697012190 776280301 950294314 444858325 661960306 259587422 821677465 973764845 982653777 101607455 198910046 636546052 982395734 91144730 321175753 528796069 681999411 952730129 994062875 480459218 940332409 574809533 660553880 758564214 829811653 535144389 936059187 345147114 513595510 20404267 494508855 766975490 805463840 999246051 999871339 90840277 618707574 77166821 422352223 815491299 959782901 108495413 608012099 319264658 418500297 396555339 422284025 289496412 851312470 488453233 875566840 974651153 979595532 373989394 659914250 520471835 667538032 717455210 723572887 899554596 996726810 124974715 640525711 122968351 443436833 758688558 906238973 432551900 709980759 643975496 892606696 867057379 874963830 671188614 906246524 984049490 998399100 329736781 615626073 278481805 598996986 792695834 953146081 80475531 176569147 892162989 959759687 368864778 589551913 294353009 847431912 133249561 418682937 253204348 609949269 421846932 569162531 995218629 999081024 663538580 988191095 664631566 881562376 265299917 937831047 580960246 698737427 8122503 374483293 179434156 793031525 640675096 714131343 387893262 975962286 593602297 775326601 208614701 404841405 629685930 839550802 853701891 912020679 341272232 829825378 156153060 512194033 580711736 856555243 353846363 687518459 589026437 914833667 974748759 987590472 798512790 983860921 423889406 612536315 743706724 912340172 59885143 730573840 521810149 902497152 776215788 956181154 461181619 705008130 263241133 294735819 201016580 243924061 90685129 91022352 337707489 741319272 723236791 810387205 660225207 801885505 418700317 779630749 930464601 955199618 310873087 694661049 396342711 446760585 24236535 805925971 317166356 699767218 637902838 948200522 783606703 825841057 522751780 530287563 395363983 687695716 73930216 913182677 814850109 853494199 735621176 855370583 110221686 255118610 450058724 678996275 190892275 580986068 108287641 496675682 394017118 735801321 991879440 997338716 291617403 925339638 214893045 424072298 710588995 729723265 996337527 998142127 650815654 775258820 444984161 682751413 835274037 940431642 814612564 902972359 366230148 962522439 655106615 656454998 742576834 854526847 249476684 665797585 817738884 834947637 968342314 991499525 330813853 641279186 401857401 458794890 879848674 904341518 158983280 658909253 497621212 510854515 485852945 731273525 253434352 611146001 590292313 990666608 399392132 762013093 453604905 928709252 701406820 942398737 828735593 888655771 283856220 401006931 602978759 864633397 989493255 990813126 79134011 92759926 47482150 79239233 940839902 971383714 464941273 551423809 438380427 765001625 807412630 863538224 364396134 520147101 108806171 540909159 135374788 504923245 698208056 846259887 237002819 789792996 926205133 931502157 696873715 702400782 992753365 994603035 771496404 929247701 204773235 391686991 768817129 794655990 727889323 815695898 520978444 778393274 115721836 600767228 760719695 979423818 700400442 918135656 953284580 982822727 312053846 659574556 86887964 281160761 453205184 870324242 192981497 489748913 334359710 630717972 552361492 757839168 877750858 970468441 330171380 810282863 177436009 237578888 626262005 997545854 692408912 860034994 36901524 387292823 957424036 967357262 493117069 686058503 65655357 465813180 430821472 917449121 143738785 447826516 88220254 170610933 916347717 940716151 145552964 212142359 805268571 957967042 330752627 865053519 123956779 830739361 541343269 560433399 419749825 937551297 784726754 914035392 536517557 912015267 855657521 932677406 218228933 999926467 119700158 861583129 753444603 939063608 617776641 676093953 938471608 952317271 545874283 679943732 136465284 197418618 11754098 609955148 814793073 906232588 661034034 833805754 546691525 905674645 326481771 351034383 635387133 915206045 364885228 741301633 367496711 496856687 233425603 259362357 286720178 816726709 812053795 820588235 943636077 958280540 619627046 686118181 665380029 749515194 487812072 523687892 308079826 570947189 493520433 901145684 685933599 797810618 365229301 368956665 375443154 936995824 682971079 815864281 143768753 575834482 34179621 115182659 507179372 730992916 500798108 880579681 386066333 861751886 644075903 971459152 902332382 925692604 449436581 798715527 848376100 988962435 684287006 820314721 783864502 987259510 489138631 489573652 521494685 846271318 46465566 905725847 572663172 969624005 97269211 813601822 778795266 990774674 883899494 998605677 360055116 670798069 556924804 727570889 972483600 973648089 900906059 934683824 469514825 882781626 368190474 723774134 832944985 943838618 421864974 763462199 527035747 755149908 725249644 812353387 859691215 988286692 773504777 985726483 53144772 894381278 34457444 535555548 170075965 932496682 858330656 992776255 111684963 783837481 522839430 592528149 288425136 656708401 311141934 763009848 150991853 365803208 329262526 979254328 928805101 993853264 87450916 443811417 644494310 921572248 990620319 990937365 234344647 425827817 108007348 684584133 838253792 887878291 626055669 795622127 309039248 393881248 451599616 623794190 414732482 461316855 202602462 752165261 35419513 416274112 938090436 991662284 903490837 950923414 70497761 965125953 46783917 330221635 835752800 870982025 193447073 662275354 653688174 752357290 641113731 820312967 71377258 255157605 84397528 766883560 763717053 810386891 469845452 688227341 740516260 760242137 671141246 902054422 637457050 816911601 929410445 992027484 299823371 404102955 498967689 594859624 547666802 778529329 316606197 827571726 49089498 748916254 865175176 944743206 547467387 653755123 607855965 621532083 834701510 867959815 980326164 987117335 388693517 910671451 57659212 379374283 259424150 736910098 799096874 919431794 155022520 820805274 247682096 946782623 747662248 805673308 20761172 792142721 542411644 680226761 832565693 942009889 832641723 902050797 892724343 941781568 316627935 642039634 455668724 732815587 363159531 680344349 295761964 990934916 213276928 691477737 659720191 700176454 744551916 966742635 122297758 561271111 374490026 441213197 978572521 996966805 790275809 800297427 790653852 927015910 318458598 735189509 879124962 879569676 491284881 884439551 827246356 940444789 735594931 882922495 165099843 738050201 684732988 808074546 328405418 801183695 19855068 231174718 306682321 660568731 526684425 867195816 121392045 204152662 153574533 979724911 930916384 980165837 674507052 917740945 884707841 982477808 162845487 402047147 12174904 499581971 762291960 937999270 754485687 826485118 1170437 606505697 622150494 804633167 801471834 921493403 418146554 922776483 321561511 929783666 837778311 870036819 844461209 921834805 631496455 967684337 343165615 998979376 689685436 820707119 372331845 546221598 66978414 442921638 364444875 577511621 589620625 738414604 206774748 259103095 202489791 747115692 235090614 776813043 928623344 932531879 712827776 995906200 100970759 656743884 449782498 621514429 177018557 477849368 658791050 979257613 71956544 386519936 152642957 172818525 729791546 992071958 533407170 836926112 738543151 767217531 4717141 811522470 263397218 859944127 680537262 983123149 677416189 822513078 252793223 898781188 595746045 614888976 136424673 254644383 421750704 800719704 960227286 965418538 384317946 592382105 238118065 410853703 897918794 939878699 549411548 815999717 602336495 793614388 368017675 772820169 133490704 582296618 613041618 741982214 858879404 884972988 808489629 958836193 203276530 258159868 41383438 123029568 782604699 847276805 505524931 755299295 942407625 969403033 17311796 821304019 102049319 787196141 9569154 845983125 527199900 785118220 121398316 322716381 45043771 594442744 410495330 719723492 592138844 803624688 497547265 985330922 594408578 869938749 193436817 520639940 610980307 785617245 853459979 998606580 753027908 903039657 975883191 984744744 811132686 900857936 557116763 645394229 666872724 882320523 154370264 574773703 180505774 682005723 810431980 903451522 404717700 973194119 612289746 654993665 238422111 925251935 270069471 936612112 81232416 877958388 70346115 546563573 860939025 865038916 222030071 880395256 142441519 793346876 946579978 977858478 183154869 436139081 840465475 858790858 209853414 657864842 903357365 909264415 699984959 918880650 915711218 922390818 149772214 331891131 679242033 838680184 252671129 391033787 108407654 978549741 414001617 790454206 138730642 559851359 684556793 964843688 9472030 899756456 327745561 534544117 106476707 719542081 231372412 798695678 216693545 329385106 9311753 393404048 661467747 910278278 821456157 943028680 433512012 871932496 906552184 981493914 290932858 753889939 16304761 88587373 752432239 946243370 983615888 996503915 464851412 881227163 723069041 864626474 251790438 361138305 297408703 699493748 315502571 782147790 203848683 880566207 618835105 904210929 244550213 889960685 417192814 429432120 885761858 930150678 163836402 188538282 963405678 967943742 963774263 973938682 664279675 778157947 820830501 946630228 628182402 704747547 717920855 993390119 71186665 926960949 5486554 876690016 4146494 307649493 594489426 973318547 501035007 929641473 517719546 769957300 399794764 452809904 497102674 748748450 517383823 747436810 415941730 492035893 445292633 488842361 240639060 767355773 564999684 785471255 400943021 590089645 551056216 586491458 782796643 927935268 225947600 645871595 99943793 852018306 937557718 991492922 206918523 678048092 229691281 383384542 45306449 370061391 344460952 926731446 163051698 765974772 146764498 176428117 784975980 942473707 704965438 785764471 793575407 919896942 139543013 560050661 183920919 564904955 231527139 534574827 883629845 986017072 510527566 928851589 334888061 794879693 983182024 987433789 283816480 733208296 2505825 656246006 289637604 732967583 121471698 623199756 672947636 948350993 448511522 539582581 189335367 291691233 57630763 857998144 493750309 834979520 943094803 973020920 964839623 996550326 626641100 950099521 946843250 976035679 98822608 868899421 621844426 749258840 777720911 869124676 679568680 690487452 945962167 948658701 903345629 962214553 207389731 287041529 981016991 987975849 824013060 947856385 852010243 959614081 798802607 873765782 159253945 274493914 319229062 432510072 188973911 875583854 15239895 523383649 30459783 32226708 412515594 830667231 839904593 895604943 181910573 773906682 284318925 599744366 419589256 836545585 46413745 298730440 480218521 926345178 351759383 397109901 403131692 817095153 199196133 400259181 651536685 760053585 146238943 523133049 72778445 187979641 754962298 786521918 61422260 796962078 685183891 961149852 90924929 479470558 71158606 164271640 132958505 981054913 340715147 811754677 445105482 836910285 218908070 439684410 821902622 944452711 796680351 962039053 976552311 977296418 74632775 342572670 505736723 585841596 623318960 843664338 294535624 415800994 529810396 627396704 283607890 462121925 720507499 952879168 166264212 726471726 928831181 950954684 415170147 729142535 212897333 215136808 847351225 878615413 156698095 424712532 759710222 918758745 261299621 409608618 222476460 983164599 374754514 383762205 940152627 981837836 907097133 995462719 433392703 576669897 361835330 565396277 568629985 762006524 166277420 261896304 482533455 888791572 907033938 938556816 79200614 953809360 708974137 880675256 144965137 976170937 656388942 731360222 950064311 959062361 674852606 724333397 871925912 971271170 208766768 606482602 221279411 765768704 371055470 895171461 454619743 624500529 416515699 924000565 68834773 83332098 430763273 892024542 970996050 972368338 79381854 546943671 926174269 987556619 71461561 344548313 659311346 727972113 917731153 948974786 701243094 718245716 328847751 796308444 632040182 890319484 643123957 915181299 860444811 879550532 886345816 911970116 220370574 668779963 133307319 578761932 911523204 999896224 578743965 919494186 877658208 886383874 596965606 928328945 333764445 338079528 910585672 967366194 134862327 617185848 812779355 908801553 659506868 883914237 479191168 915265192 41427936 410560022 411230191 662937331 470338609 859014983 183542632 374986040 574811196 582921778 137074820 175745500 851064468 953159496 62541285 222242011 442987654 726382552 138083856 374648641 199201436 344027492 53873018 719062951 483836256 969685925 895718666 927939812 659618117 749104633 838995889 998441068 787985873 994056953 755146524 775319917 671196108 786856805 82501590 224156972 571841224 755755266 699160787 732097776 366366502 838066564 702748377 826100473 882557749 967690524 777016345 907920101 768246645 928166040 122619851 451135758 512711730 772483758 503792073 849200125 816489316 862077556 704929555 987147810 167311305 434840128 180258862 311010374 246881247 248227918 757098282 836488642 851442467 904295501 677766001 829020925 158587643 957784431 678846066 699464806 202883096 610318844 291765932 683289931 120846702 598697187 449499733 887544219 403371006 754067217 100033280 716252647 797854658 991100681 20001006 174296157 800585718 988653888 143090493 789575761 9606990 540517589 251944908 954554485 326847286 730247670 155839348 967113365 303696204 602380943 502051793 920800454 987122886 991610333 953534896 960244956 863568027 953167844 501863492 869959666 146329664 688142883 786599291 961379216 615395545 859678863 219246605 521531633 734256236 891053491 16185006 852202747 982130919 989137782 99883841 844730610 941784961 958919686 597405408 701565892 284994933 815929518 947744280 963917421 391893599 678379073 7001906 605811737 514746434 523856454 792167994 963550210 640980028 756417304 362239972 746179866 853501849 942519404 266211012 841693718 61107235 398371255 876767204 978060903 275035636 832865980 21114698 893045648 419216106 752713869 558232481 762025893 168236218 444637259 862973046 920298284 905447020 923766976 258721864 507230735 574195939 864138401 178973776 800695576 976765943 998296236 3270614 288686447 114545918 560382637 117568270 272784997 76262744 163964944 863256190 985313841 830600489 923197489 102708907 773598103 560287462 605404993 788599642 852871134 469408274 678436446 84654006 432675476 430042151 711773505 717624429 906596543 883932835 937403909 780058170 876260340 491046356 534675852 459741590 965880453 984617574 991661922 439430121 543594360 583021313 892469845 120480643 980591513 998001012 999851734 328616000 869560992 392187150 757706774 196442054 904862154 681039188 749014069 246443445 930860718 716657750 824154617 774587030 991087971 551938692 572033992 66089703 798342699 325659913 714682854 281831294 404951870 534834548 692435324 412913931 524775428 153652667 548531111 47811055 952423560 548136623 943191962 189467579 921807684 953940876 976802007 601487518 968802136 192741653 460833578 375667136 510557587 543985963 595382897 699191724 729219751 31607401 567403915 397546282 519660435 782961540 904760484 684125211 707356380 888436582 976634925 695716490 919880854 982228684 984372612 344529753 620139414 985766355 999707831 993242533 997359426 638610038 663476148 968501764 985546002 408721982 760733540 436224439 962224238 81475566 781598570 264064001 635675264 620856181 832074564 338712031 581668313 268544019 542673989 689269562 734544967 173516831 433918877 115598458 811538799 306884484 813451337 707756832 745576401 822424206 958740373 319654744 756493209 933052623 961633623 351134079 711005211 895077979 984138158 463892425 785912537 35366697 278036266 789830887 978996759 413055175 682803576 679761961 905708478 18947910 599784039 210560779 481040671 563917494 906652860 373883082 377890328 591551080 890985144 227801630 701479846 415216608 627664264 334057866 352898840 845967600 847296502 619770467 991076359 873839881 945481015 666097235 810773490 988706854 993397745 238866033 392807122 155284503 803791249 263109937 407816603 731906133 985080454 786844199 805128865 894374054 951907599 149684852 178559212 554238092 603439463 143080927 285993796 296420349 981615198 520147899 843539314 465270889 868646707 370593932 922683438 79306255 762676677 461898323 773844602 467183444 938849878 604142481 854272640 986309055 996030120 753617057 795805387 122689105 218061734 168060556 571478305 607181067 888110325 539759557 874365057 53770282 507670879 976423291 978194265 904534030 991650914 159394662 245232396 952386649 985574242 128950455 982818072 956523818 967242141 368361558 643079989 115965183 271439562 893060460 946799476 922700669 935368707 495662783 500755736 423505667 664666782 207611868 215425507 984684355 986264074 560437784 807835663 668549787 729200396 770484211 956513969 810053356 956147975 653257568 769299901 991077826 993350550 680689311 738887976 102549218 349346373 854374884 957097402 578741208 975549290 888743991 997556704 677505733 704856022 301085173 715762651 229638456 616699913 124244952 475005496 331082145 383479859 808489765 864408184 119993131 460263875 677364598 724025630 761097254 942109631 379715432 759134472 479981705 550005082 826804504 915351993 786997948 949774681 187442482 326342922 84052175 128857147 272225649 618495427 763771146 832632815 591403571 679313255 127486655 208866012 680405252 788666750 364763706 527164035 907140229 944340476 870303328 896210454 877603817 947135437 527710740 990478347 911259772 973434708 828933302 989356650 593874797 606042370 603563447 885203065 735067175 934198855 366038656 474737261 300806687 734954649 776302863 943578277 600680604 687626702 36749638 88826828 363468266 552571266 789796138 811945705 747688794 901334988 89792401 317914669 4823132 422712512 556011455 736856333 395356715 813408026 837141647 919343458 77129805 644256621 903170400 960532664 875900801 920402766 30521721 652191575 561156963 709864303 715542375 721897595 649582725 762826114 756612476 764801933 517854741 545725656 824874112 931435134 791909310 876291748 897792640 992884479 816603360 908521949 665269718 694364943 991370210 999857869 266785197 343531203 327989183 390923647 322344897 896713205 905675386 943630753 907794656 909652936 504547600 839524043 440803477 901044149 107670387 713647115 592606676 855139932 501037941 609330307 665216612 850535054 133222197 593746770 519780277 968230447 828862540 972425514 410862712 930719162 214742407 218219909 733132794 946399523 498792819 568342523 433422366 524237566 817162341 914480146 490425084 657197548 93864089 853774363 39683307 61552364 658492525 925430278 488702281 708481103 702302138 787702985 950140596 977652000 97789909 442773503 95423870 616582583 315347535 340009863 785117301 799775048 615689153 689475129 960509311 974561339 772394078 992723133 110294961 268027875 567208899 666244965 163378991 922355829 614539387 667826317 614798802 914479511 808984497 922645548 696715985 791733605 229868121 500851287 42215575 495615783 895185733 911347888 851046150 884377711 202239589 854757689 269189221 739473347 830377523 898330071 166684247 625512457 40390534 842591575 728812051 904805752 871867001 874017579 779523002 791722603 516308222 916533285 178561278 863441285 633016089 934413506 268078400 944326409 951465167 958901697 138252054 220353355 303140309 497375784 968271 162189240 566897118 961074666 847530398 947718028 604495506 682191810 266735977 283476362 388885610 868333605 601638758 804740895 912074780 951641489 729544166 987785769 573909506 986856427 804747942 862151093 483917562 491023602 687661147 908743710 466105891 687025195 691734674 819547853 83045413 488160860 303528295 972000561 732341294 819656555 808745942 958549603 940735836 991533238 923105690 957143745 261296060 667788464 456603584 765053653 185356136 202138833 802108059 806410286 82793121 736071931 569953247 807476824 549099065 787028575 335109448 534145851 750829514 927414991 723997986 903936372 972436772 983076819 92072302 388420952 951612059 989723321 231870390 247543665 971104994 992662772 990086942 993182881 834214900 867774306 992408727 995078670 573561611 741586550 794587615 973298293 469036177 662191696 410982863 487161678 419404992 722726867 130406495 779510057 425161158 596883706 703592358 904628372 602547356 956682162 866497610 938628913 433233609 959742853 225334798 403695456 727393157 939299032 189242602 404699356 485452695 655387512 589663077 746382788 181590722 995867463 468031469 610584687 502509189 868688594 975914337 982040484 38823483 359632624 335289794 949733617 593167143 851913475 938013175 960174656 294572972 565468228 709955827 964604424 771653102 849428391 629773701 926527772 285970917 551197990 713928708 946900872 842725637 964514733 906576313 979890502 637509655 761146575 317352982 400275115 708443899 954264142 701801929 785001357 230442297 558178775 238816145 618553938 811140853 814964130 864360826 903154286 101976213 566571891 169332177 277853235 944812486 950327314 85566082 345453870 30565924 82074843 704339813 796086260 762120556 800500532 631486465 987962313 257684081 713567316 664798274 931639433 896801801 943112944 698574266 707932863 858704706 941775522 434874026 921477946 383930514 430427653 33984986 766710267 391375215 981938553 259097276 313777175 105137218 279428619 653437021 800774778 514087349 652609485 913291664 958939888 994219916 994873535 532552392 776369007 207819883 382368350 52410629 633453427 388568974 740383400 96662100 476847165 572100243 781573678 961444826 964026032 563787620 714588162 142901777 187069900 594695393 976212451 146054615 989951798 134248801 426908286 622154501 869985386 655233420 676019588 152722835 705719546 5570734 630142944 529985245 554875963 69581781 892037022 393072455 587638560 688058663 816456301 713085706 714243731 269702883 969171429 198677361 287132174 917550835 963486522 829936551 953450154 855739893 955264776 543735985 571323443 936495956 962229806 443672548 981154074 528100783 895447905 131832783 162205508 651150942 858890160 470813518 690702199 469672679 506414657 835317134 955263971 463518251 745371391 76207226 261318475 86389939 391077874 710442872 715702414 540175207 855787359 328238701 761595669 238267940 777375052 973784456 977217206 451100716 898965601 646426111 833015475 637811398 933310888 463414565 609228291 718793588 789816109 101350939 419459813 340991362 843267775 781318223 945248949 610173730 618402420 494661376 599041547 117246074 498309732 363813418 895611481 42931797 718913979 293554614 434246041 232296794 587646234 448864720 653341519 610826144 883678259 971290810 991545363 659613813 882780703 784298071 821528038 651856409 654803519 194534588 346166586 635348480 893268805 390393253 429022302 733360051 739986091 660514836 946643149 649563795 909972147 258103498 845885110 142780681 193854845 227195554 708921878 641573560 692055904 696958190 733858479 714171744 745399834 627575640 730149997 903625844 949275109 552996536 898741242 723152703 946955429 35748163 391614883 556132830 984593987 575344948 943943617 986920790 997333539 915211491 974293080 838046512 989745951 600675710 895904370 283685520 901831231 328131429 511268652 382205764 663081946 824033661 842316358 102344654 875625379 565063377 734519801 589786071 764664002 391468494 537732921 287399437 291447709 834423362 969094941 663849698 862116395 840158384 932610289 303950838 352006498 54217288 569781672 344745359 420612421 868353648 886496083 281231745 566857316 131499130 690206438 144162012 187779814 62633439 664674349 561568794 772825834 38345035 55576252 786484813 864772542 952776859 976207316 575806557 967446584 757925627 931212253 170327658 838893850 6599237 285083551 612500534 751550811 585906035 639172888 168311452 753918127 571739799 629794228 313197377 667729821 383888957 833225736 986967821 992854154 763486291 792259503 458458150 825146941 501739822 824869718 353013865 695527592 429952051 477578886 227475887 845760793 149936907 859710401 497178427 988055070 650804746 740059046 488799130 709552402 436676106 442358444 403950150 625982587 249040012 843515114 396978066 720739687 444936489 528843976 393780756 628489413 323940738 515074430 318543275 701412526 562263598 921677530 840190902 917869787 389098445 985251294 847704822 992557424 794191498 959041674 728647653 797485149 443536145 477433695 11605683 944441857 705638437 733368230 979221248 984927169 923816580 952805110 675948959 882245011 984631756 993745044 930268431 940156109 347038342 672732785 833605571 967609174 302427487 339820553 571447983 660852517 827805660 991660211 930831879 979067685 829309638 860529008 725616906 819825837 577699799 950647024 765031649 908708842 316097714 583921514 450334656 889353287 343434416 756864569 22449032 351961242 61254669 934073009 981405604 989749090 60779740 416575182 530447626 826247985 701666486 971517669 151925600 484609333 552712490 601347888 924890682 947204236 389674234 793678222 477878787 586550732 473574686 650721642 29452110 565505086 641351859 927186802 245408055 616666427 494356157 884398774 405130263 470018326 560438987 847828225 166642106 431322495 351234060 485170061 458369466 731788018 737452522 860651626 300942730 456064225 872280403 928902977 318660282 654747055 192331619 973887204 259703374 601824589 468146948 739693119 992486064 999197048 562825698 665304974 381630662 872756206 480504221 970839723 183017216 792283832 161636551 441836024 887925180 919545913 557055514 576954798 167737386 257431214 795264972 944652347 256416850 953854601 334084905 344717463 667667638 760654446 948875178 984126529 331954468 939873751 755158953 848736406 183918977 965404801 59014839 304394172 758158107 830579236 106122082 675210789 428862527 835033172 547293737 976476571 750145682 929043460 172893350 663430384 576879790 872412781 693120257 977370232 365351565 893772850 136811588 519123797 947825842 949638717 888594063 958445192 657102908 943298520 75827548 443585781 79815364 665057089 982463853 996039131 991619796 994187176 406522 807966214 179948972 738564666 619012471 626016484 953495974 976978462 727192555 991064957 918395089 989699368 176582239 638179672 121137745 328399067 65766810 194986907 393954203 800653241 142148371 452202117 830610706 914192521 372912753 605548096 658631175 900796811 670543754 790172408 843670657 923186827 427678833 590594240 971485386 990517587 215390406 534913058 686204356 749924997 322473540 778771169 204451861 317399488 184823923 711456968 707372884 743502594 150444723 405044544 749866410 982670842 874522939 895608931 756521410 846292309 68177868 537310490 610055824 694540629 23776790 248445324 339465571 552872216 955750651 996896153 881078223 925750702 425412271 697883095 59147310 690778163 877927583 920570378 207095572 509113936 861634815 882236645 593051486 975041572 940262218 977041714 389832798 865982555 396611652 413452394 454942492 714136043 679524391 755111511 736966717 782565777 922614153 973472319 598052838 805836758 687136968 879632836 774512007 954352484 40504878 409826640 653659253 900580017 998977718 999546628 363668482 694004455 696512230 746669769 423512952 779002591 424872994 656093270 919295802 944395187 415579927 916088613 581553749 774115706 916297808 934870762 75743195 636319360 335515302 995522142 575620576 799567921 440483759 640911147 957648199 988562210 361896958 644412142 19167486 684436066 973514311 985673803 871661560 983383034 884930311 961185402 397268229 788419414 954401868 966329263 361858737 602749596 668833701 740005706 873834366 987338128 449752469 671947616 590701648 952110779 520283920 610318980 911050447 937798920 681513785 861928748 594138955 940672703 972784249 975048376 717906444 769171041 87091416 600630924 509175042 623096558 55629354 374724114 346125342 815827560 241775441 758303718 31904931 32754367 62519396 201749995 958821858 968694795 671360517 923759421 389575798 573873217 594625414 715602853 106110745 427955966 564604565 756315067 670713301 773325858 607951018 748538771 559777314 934321854 330752368 405466044 186343134 943509403 986264164 998061183 406811522 906095224 92150571 481285054 204064618 618716942 834898126 888042402 406683185 769494205 919342589 975266510 974778266 978568161 555886590 788891820 921492686 960976706 366195546 741590878 659215510 850850795 328724990 362697685 606616825 610542243 654694457 904990451 303736780 433935103 486331478 741825360 241232934 464729847 416234482 433270945 691222645 887408170 682196104 778781365 158327733 428986169 259571227 399201591 506233866 798549311 264535497 277117300 564023867 590869666 211796143 742913271 700250074 943870406 955406075 992623006 143901464 607119670 97347021 555261892 111196110 573865103 422126780 431807924 66739934 78900561 240556453 775102693 286394109 613702834 94586442 580207929 898126380 970001547 213182295 508654175 137094608 512018720 651224054 934557730 302127147 337114961 321847175 733644924 40361302 260225468 32342549 503560116 439526482 950242002 776900790 830173783 350643731 739071350 448352404 610772515 768384413 928253391 592648471 770409820 55588437 181927906 462627020 469967767 829798385 867771477 223522534 555144395 970888938 991435748 830633607 850563503 405653335 795967544 739675877 934700032 891440866 909982424 330211570 497665124 530074757 989140420 573193180 992000117 581877530 737674901 479655077 575710526 768226012 879152172 784763570 791130813 677213130 804604891 129586655 833182488 789467080 807755733 572315915 579214689 629380971 629970998 170321367 514160056 257249237 956930783 738645428 944069316 187498317 927443282 512264132 864956149 798346627 937802271 825241341 883865797 425580211 645041730 993437695 998535610 126093905 345521959 956390403 962644966 76002967 267719109 238212891 743654799 888520518 922345876 81527953 787604300 448715959 488964917 305281273 679538422 262791544 564565068 606503414 895814242 908284699 962381099 341797511 838504745 409356049 978653340 218511074 275184488 110039704 346855549 718556218 757853181 760915353 816595149 448334172 764337514 386281579 922844920 764551858 828348249 129928082 520356639 499562156 584034621 872444416 953135532 721764538 880145125 469931991 627341922 987692707 989424348 262696829 834455823 98044829 351160222 992680583 999601320 975624108 983416736 338084333 716682688 636963621 747283257 393933912 440057963 755021556 832920551 428690582 542881823 474870932 650121670 109795554 510841229 436523290 781382740 875213780 910795456 546431714 650014921 427076931 852960553 982284137 991878152 159840486 271070967 286938349 387665424 204137311 564216688 933080751 999059352 694264188 942001049 976360960 976799322 308642314 736031917 993627669 998595247 682029592 957212034 56987019 313291924 940024471 969441326 242232802 787981973 121219469 818707769 683386781 978362927 864150876 917273980 600918536 925796694 856749717 902993097 269191881 772232133 5402805 390876092 813041598 943620273 535250979 574302034 299262260 519798705 564748878 859131567 616149313 807074184 151743534 596398805 179290492 214151653 969300951 979410300 594185954 627055968 363878984 380892060 295526675 444683375 684461113 988891430 208660534 613949141 304553487 425604409 158032807 868150229 876009862 950683418 978496103 987679620 487985444 965513792 6140609 481309722 97121602 509129979 655413730 824382065 997517100 998950277 370211578 430571998 943519819 985494462 757021128 770200512 321369119 858805832 394511338 851397555 778764855 990987145 185871422 371953937 445834680 797207742 155146171 197052995 508288681 915972644 562752779 940682010 684052675 941826370 999627696 999948380 526784905 918294454 708168004 997145523 349277485 507487093 209433403 876826966 281357332 970200860 13228994 680984713 16654054 845017986 460827313 486306088 182458708 728846599 58813299 927229114 711389721 883495392 681156804 983766415 980760930 986634754 572908708 748175546 650162042 928887360 842805302 991486678 246534767 842419741 563547128 744166484 437681275 525573691 458181152 517503274 600092631 825877715 385042224 695199877 631069041 693869846 867409919 995468391 561201770 564809048 864189170 933005806 282966570 779368127 376143997 737580241 588546225 943395745 214262270 783434875 332980150 535429453 921022844 954461521 428236474 685879153 90711895 111881413 136632052 445212733 403175991 742509038 205895179 417841857 329365562 384421844 376541829 853683168 512137718 927421468 557887053 609557172 822025576 868023047 526712153 870268419 462428226 963127624 334495993 840376755 418166837 641976332 330322179 881815069 279910568 845178516 433317637 582789469 548824260 769386957 21847603 326824075 342227 638826315 438426858 491804978 162565667 523692286 330754396 732451774 799928183 958023899 692826618 712820012 53500828 484120734 362632881 720856968 354650695 796803615 471512249 738355238 316111362 625577780 831041058 936233186 552625638 948115852 38969786 802391091 676650066 930966214 330023083 628549339 229820751 943587164 823331510 900220595 55352461 247586430 434401251 945763544 165186976 475008803 17424523 857537026 791204609 830851166 102491902 294089322 242658519 741142465 23455010 463286842 232378472 660856531 34024609 734423818 154276852 244343980 736652577 858413108 235739881 383618906 957376941 998174712 253118652 806062013 849967277 999059375 647292691 684762649 864835676 917698151 411738188 587502786 993606065 997431831 590097821 992718226 647758634 868941453 41281978 206964580 932837643 965045339 645357861 908789381 363825000 992009500 509460187 529450795 128740390 835380094 655630808 849373140 882283804 959414381 46947786 150731090 772560758 856498344 689380790 786805010 634756031 706569003 299755219 726751693 830933891 860779251 47229895 111873631 850084349 865641303 342390571 660069177 804609604 883379131 38686724 171799932 808170623 868854919 192277289 452687282 370536367 752751889 634398986 686819232 108443398 529162722 574193707 729430577 793612170 872678656 989892237 998447938 940087534 940620611 828178426 999057638 512578257 727837823 599339187 883034029 303842634 550459351 617875559 924825133 847287382 855121905 599301834 797378700 463964795 657486486 743558715 906400273 401692522 654241026 307484404 515588247 115677907 788869572 787460367 936685599 859631054 905193191 549788094 669846207 431670818 520971469 584774270 776810342 263869279 762764594 340415391 953404051 435253791 785717033 958561249 968232447 802304203 813486335 417250089 986830010 790706634 806065703 421617862 758458507 242446706 493160420 779458420 944566523 267653982 356980961 484487829 666930430 764327070 791146388 915224654 980305200 556769383 767718283 126617729 871122188 286616491 557442310 961950662 967533399 293639725 723666141 498786730 621335973 364889322 661632830 895450020 979771084 121333226 934790875 725515654 883527823 906986550 927190542 196248639 292367068 454569004 793173017 318151294 478396026 64490430 863955376 184962507 734806124 223669896 588397735 235822785 293059378 756487380 983958175 478909462 791977430 185578160 715074409 692847355 882997860 972833258 999274597 844436391 892396118 704468884 904913709 863840788 958069522 995041214 996232030 238593570 443739811 292586235 634473749 441118668 879099538 806786338 957344504 906868267 983425467 108501851 222948461 814399630 859386351 310209864 623858072 618073203 765915471 61581142 808137248 421137635 567115135 590757570 627990495 870350632 949010126 766057540 775904859 410718189 460256217 613171232 628585534 818956022 895588637 172287634 458969708 988452730 988550969 266283456 997390000 361623140 444812696 466013811 723932028 697624162 796631758 31731867 626013250 175366476 182488031 355558598 639003458 673909076 751551158 730324276 853931047 199236000 291244643 435428543 720147160 171207816 561583908 896918008 947407037 131203508 418790604 491311462 757032854 826951573 953717201 382017271 661020984 444065058 836919338 978569118 987644464 236712504 762788800 259838761 847821691 27537797 55320381 315042356 893791045 454722612 629646893 161947581 262854735 687602830 694784584 630819401 675079516 298934891 814109476 310847273 685926730 852956380 992967743 546120904 791360917 310481403 439894176 556599589 791566826 349165402 468282529 291089802 400051949 451676714 556569734 291943382 779024268 429963381 732635207 284030475 672935218 22802636 608945810 238903803 907522385 939579309 965824734 319334030 365024689 500529874 525177030 422529019 925580089 377518519 999558562 958340277 984546922 343630142 990200481 962813833 985090263 739265234 782120075 996328345 996633094 110035085 557197996 140151519 947903499 846242161 950871775 319460551 367863368 920236228 962221691 13405771 744202644 380066697 824990573 206150263 538463777 931893393 970219244 894541083 928302112 400695692 424211969 318722484 940540881 300106842 584584866 630449600 866798968 42723368 450512354 310325075 813337729 782216917 921411019 197786172 268626477 980188279 993442642 149454340 196577048 820642404 872102414 223660876 933770347 446677867 536280927 678512300 851477247 188512310 371103566 298899754 311569347 67728812 704502498 853933332 942471560 30298966 683631874 666474938 670260581 259670197 415214689 70171579 230650795 556554357 832172247 541756235 839895983 588995783 930154500 949540224 997734189 529431498 765373064 199858056 998243493 976554200 994243984 149520024 509965152 669006914 692239773 797651453 968601570 797129008 909179809 445239229 977979093 407316113 514509846 259098802 638360533 705372489 888368275 883209415 905290520 339686796 400951831 256405888 930268618 916228672 977597606 583322718 896484377 740051962 870901698 79529287 922159406 760585339 786722508 100325170 327397030 66586993 918002635 31650743 885123530 150515916 613550500 120042428 205787471 409963100 620562117 845909205 867365558 325271492 410511715 432475433 878273385 732601602 791125905 1695052 327705222 955736222 997560901 536907079 680677994 113939256 141426456 172074217 761593751 883948473 999859423 75273723 782720353 474139776 848087021 389624590 842062721 569911922 702937977 924525717 964369411 228256574 733292851 122640574 670142208 21578309 674062517 660798051 993786323 505404276 986138504 445713018 510708114 326350282 345790671 590911046 969644087 497742237 540555893 426330117 498191088 916308146 944120989 719800207 723504566 177119264 788695039 336511153 833114247 532065621 979657016 618145450 696817914 519903592 899409768 576365707 974425022 957380965 984380803 16685781 500116983 122381587 537363258 415738550 680806736 929779585 962244998 444412378 630028412 328631818 582778804 431109479 849264079 35976410 523827675 340979297 436826452 481077014 844280531 884641004 920287096 757619275 867353664 729172310 875253327 351087875 453939307 632475825 988578852 978064408 992241534 665042440 767009820 117633893 903306973 583812403 734939235 129564647 451003396 690606995 937819886 540135873 718569179 733344402 847771740 809907070 902278251 882277475 925126585 677979283 730957795 504314228 836525944 620079832 788872246 708327138 774053272 19121767 746780000 885930352 996602317 335202237 374905925 609905511 854979057 880998872 925675773 880537361 940232659 53182362 479362097 713341127 983334231 850041228 974721649 659290714 857634755 168845072 571553602 738160008 958773500 578514257 625005379 562270023 934756883 270094950 871957909 449524523 711954856 453485420 785683465 213928588 261223123 349881991 704136391 459543011 673106463 8335852 16945256 630310915 730522081 885162364 993985632 763311881 919031305 687094975 850428045 112824496 935892553 205045339 221985903 102435309 232919627 615575323 998353914 414039982 835706632 3502377 457761318 522208503 704207622 286053385 814219557 555731505 795651035 851775015 917153132 32125771 335957705 583373159 764866077 581224995 772129277 788016513 869835851 554721930 903005967 658837427 808370958 602570350 718785106 610918799 758331902 518169266 736197124 824355681 877704853 299084274 761413117 5345522 413564316 365560908 890271474 505057700 579490476 310669728 873438321 154920008 544542161 913800010 938230877 558116781 790517623 24710665 98962850 45382994 336815356 987155926 998087170 210901678 969010715 558708764 926025043 124738855 744143525 239800994 478923626 387207968 430079842 279187452 565723303 30833513 862845796 173760856 274807725 661910075 954268721 712145035 740862416 843374276 951631135 490351308 919366403 105955214 634497488 239638775 489334745 533991208 606248924 561460702 689359420 310477605 356028761 599419417 681864736 287175149 622566127 446099760 867707747 223706827 397932658 748996018 912108129 28826596 552152599 380625851 967155843 864357201 984983022 834343050 876148950 43219606 707427065 942530333 997167474 230092656 615023999 700511668 971073360 646043683 991608565 527082475 555579276 941911775 988267962 771906834 816448109 443940201 872128625 733350211 874362202 741492849 831556972 26157204 966774913 337979175 868517223 739485113 858285607 513338914 647985087 460667132 470806376 756732691 909181099 840727222 992286755 682828594 730759349 61397726 608020022 200233220 274400457 333029803 349324221 763492130 798698860 76077068 621077617 306544160 318914495 580892987 617197160 386878249 893618113 809793 729994182 268223997 357100154 110294809 794213915 847314066 882711447 645256605 771103516 235274466 484443849 807812912 912196068 66139400 244422048 759749790 775892233 936845038 979441712 300208218 497879752 414724479 901472524 792047304 861436058 708666418 978869287 676042587 809025899 245280069 652396859 289239370 735535952 730418359 859460436 13533680 131979785 588354806 646606055 481399901 934440089 394928618 898119680 141246762 264187086 79545448 296348179 984229723 987844082 78774992 188520352 556914521 905611230 262326821 673423994 387770029 797556589 384663398 863058495 578535402 980698541 417806743 966892677 598902643 765336509 878397844 892776810 932425861 951500796 32518442 324997175 177525091 997737629 163007841 400126242 531685722 907356448 776723786 923499943 936797647 950622575 925760573 936599000 340802920 843792621 598886436 796304687 170564584 453999681 899013727 906842451 674495165 864359003 460561925 799084680 67871092 473591980 310249631 636524302 895757241 955124959 214681411 454590780 842003095 860688843 43042433 112227246 844196394 896491189 938899827 975639505 954336443 970142512 518487120 921061357 780231860 960160527 425532881 689212664 16899228 788306653 318088799 576222121 181431404 555342368 286828354 513740703 728065219 756814554 815297269 830157446 205512956 221431601 588606823 999992430 78952682 674581165 396449301 770559342 224600466 490890074 74223562 826038854 913173612 916915249 96910874 382463259 153904833 188504587 558878315 587824299 352555199 778317460 170844049 177281460 195015912 944634482 90871196 487433180 730379993 914096542 680502829 685430192 246772228 744031544 51532667 167033418 614487593 663573741 29054746 137684983 913677698 938390814 755768613 845814155 168258425 477212685 629881885 956943987 207044049 833055444 215016981 233233940 749310271 941996149 726091407 772983875 800418340 925296100 344653242 699357358 515501036 737711495 974131990 979395938 731168099 954076672 3088425 885041400 299595921 647773463 652801862 699282904 311411009 355299913 556013045 770609901 924823696 974459829 954548638 979633635 719990255 829822117 651170794 662813953 149949769 737860128 386383961 495832543 162174079 222108102 157529224 175134545 178174260 257623742 782117432 955575519 604635478 717089738 186889932 853282794 55660595 786753910 918558565 977750986 19276780 580076978 430271359 511020310 552869140 676418867 423384328 639696704 248102761 757127505 320293788 531728184 105601132 200712180 265866139 859026244 931583532 934678222 105110962 837716864 366376929 720882869 657280456 812842325 48921867 274457788 568188759 985363168 568080893 819047761 28638543 552457837 276460360 719774744 147068352 892368073 771883346 809348387 871157477 937128883 245723492 454390977 515060553 778557981 379288840 426862959 570605229 995487622 29323311 279210478 391480369 658288687 920365346 973668807 296733590 930667794 589710128 590435509 736223229 874876304 466318267 649521296 934066475 959824027 997143879 999481756 902565949 944405333 278676606 439656252 406960488 514471322 906997094 918988681 149892220 684902499 745546513 928437774 93467355 108167995 647236010 707113336 267666673 830672879 748123522 878668110 134536511 519561851 580931052 890763972 48308938 623571324 777571794 943838459 562128208 686701399 963963545 971620075 697140938 986088077 815461183 975660360 869669747 892747775 735192999 832241298 691268555 715987056 270371021 311602430 414808872 962958037 73309476 506976049 722640566 956400017 105069088 636038075 504607443 818672888 419539883 491437537 819436099 863665944 951321435 989360377 827475122 845874744 712146248 868562142 755562614 995641284 364640980 786378929 825010886 899852877 133664888 776943171 567012065 884812962 514604432 964879288 713070262 899499695 150579850 535146468 773822411 918930930 541714338 731348116 605709185 859452623 93792301 524514793 553238471 706817716 160794418 716109616 754226986 992401073 593637177 993841824 977432083 987455797 878613345 996971601 374838661 462763601 944166897 977548652 213998367 668488969 267801941 454075360 779921687 798928011 605758607 895777253 504714895 661574708 68786487 862529260 301187599 657029488 505203817 543034416 581053567 809775439 721447441 777484956 774017603 876116198 347216342 446318505 708614952 836897087 803941811 968566375 144437870 328383731 147213379 613711676 830175784 890172745 426402449 825982296 443932839 691226295 22592937 582403154 872832753 942159885 100756710 495996929 352351839 842756673 372032034 485134767 849341181 854723951 724190754 934173338 882836698 931419321 104382611 129020092 176773153 927113315 495904533 887739441 913019795 985519742 492504536 999460785 219685950 993030660 360004044 400656091 127449664 879994519 985860853 987900684 121409294 449112097 754298503 798122456 879274446 965485835 575145336 692377467 108900219 643303007 946237837 961628595 57509823 990540879 636681819 705843465 628478175 726869193 442655165 834570364 271024711 321249259 106941129 253312364 281599469 396983005 450417766 508955569 989042921 990590090 422986273 590416201 836155330 866907360 583615172 990698602 853111545 952952601 600537816 638051120 992522345 997188739 67606620 182345219 886086278 935318379 267324242 523366837 277848152 495032917 962578882 993061401 666796429 707293050 469354212 962768205 637924189 940704954 743897965 939370015 129044136 199144152 545468770 718746583 413999371 809423046 84989633 334722408 180351916 885325712 449428218 552513779 835148908 893201674 511196381 942113597 236107227 877545578 824596798 961825433 237717289 961357621 999109638 999270979 834749407 914630635 14857162 117221499 180621897 937525227 664816638 802513844 167175265 408028399 619514826 813676620 779991201 954646490 464949574 884820322 678544648 749151399 664476779 809683150 799024318 941240928 118079754 478171186 21839931 184709272 579013536 814763975 872618618 893836119 539315544 694527759 804175677 877301686 695082407 968201796 987939048 999417324 664814883 957155468 783584432 980713977 63737036 480269373 707568531 973470736 602620915 732216631 654603390 824328086 801031999 871636448 432862735 710999954 192839880 475655105 70498599 979823578 20311136 394280220 906376693 960385489 362576549 493466095 927014928 994145748 491023681 562082643 389092542 841737058 177890192 816802321 423484839 838518037 326850049 456136401 890968120 946645561 922354157 984601658 25336702 712354820 665161877 929064918 62156256 450772759 551124838 779712958 37111096 634869361 174672387 994276431 933956185 998546473 1747047 520657820 8988795 827233038 100123510 131623228 898412828 898538905 130289908 977251928 273466879 407495425 402834715 631028174 448259809 478915468 178535814 677794424 590871616 623757346 296494035 775466102 74340939 869044444 541397661 567773592 242102669 593594434 566720383 793346499 551605856 831733495 5531117 964555051 95191765 440470170 674700679 811363095 843425421 913782754 589531965 881813189 450789190 777538816 648596042 981859443 162043527 420761566 40109951 327692759 408418519 519681851 819674276 888217712 937011356 963678627 441920187 636952102 203759173 826339936 750534370 997562907 536513334 863057526 322055455 900765881 353442638 753746188 727691926 946263248 873815418 886718252 995582764 996833979 146666659 211460999 460237796 962088818 25656782 496340806 664142289 849378149 822997175 844748457 401156313 418792492 510422835 552284271 413017875 801123926 43081009 152315865 978171895 998535448 806117729 956036024 564928857 897650430 973694161 992556507 129568087 579885438 540360155 746902469 462597173 859582775 334635006 634869639 459429287 735986250 745282657 832690017 539270029 703503317 938506437 994073560 536550723 943365424 415882108 770297066 374446508 531374013 944010214 949287983 698314764 865901765 639496771 926972864 271928237 805268608 775929180 937925847 493424585 908658710 237137400 867988453 11470925 959895595 890084508 908557337 208552670 303330971 735222279 967040167 69313798 144643000 420754771 622153480 389186269 994125479 904352482 964672650 927226923 951879314 564900342 609728817 164320837 770694120 973687622 993371566 447912935 631267967 630699122 788400727 709501406 894729522 713730380 796057593 875102490 988779002 855942521 914328380 918474575 947284314 928935294 975163883 612700413 679810923 480463155 909283863 218081554 265763542 551057135 648973558 110966822 516169214 784332960 917535725 60184111 949923655 736336035 879987215 237319663 367483513 295855771 965269614 433094082 517209197 27633917 164194635 297995825 536636545 388286157 647827858 259605388 515805537 836080978 997175358 867623375 931809991 152804344 653189254 264317818 777796401 897369236 985503433 336866630 536657722 122886354 535633527 197253554 559810146 189109807 665695866 340707555 500078874 691676587 988972114 464686820 570759594 782759715 872447459 635225362 735707447 409930715 447602817 786407480 908937092 612473854 801874860 401291377 729958917 468328965 744164496 569769547 602297088 97237690 788297489 564603699 625252389 954932119 964244128 255965971 572671368 333827237 800436701 413782538 422169448 651467909 858894997 971763254 974316496 906940040 994197973 408414624 792259210 361240606 912890261 870246661 920799563 210082277 656693548 569516772 608964503 150568461 272695804 600289072 760695772 63756521 849871684 227669433 696412149 262715063 773531734 994717970 997036498 188058301 217025150 428521114 958721459 169525163 433271514 902274560 928715665 434474786 615618664 683819356 871813185 678705801 823089856 997230261 998607324 535005228 865604483 644274456 662889506 244338331 469027953 549268107 827602953 859827190 955100504 926588371 977350918 870104015 921932769 473447288 796818009 308347148 832499027 172659603 525602165 521765658 676932801 96672411 740470147 424467891 559386914 768719559 768759915 953599977 956308964 586851488 960320813 220433819 297701931 767721259 938177660 862159990 963796619 577226276 982653942 329544243 944628971 32009670 213642397 47434122 963493949 583607970 684029896 723849123 772345816 261499253 566347181 741527249 966808567 768718427 840220507 318379837 750844544 373628180 917771494 992895774 998192471 894447620 961529783 44841239 404651629 559308557 903790471 974796016 987615394 416315125 629211840 522293065 606910691 614164379 766247557 622913708 757296768 652936125 931069147 574626230 594467210 354579900 562618759 295733978 767896330 572719177 908642893 715806228 793547098 976724597 996558014 28054902 69181219 88369328 101366024 636355938 872504631 599600527 672606668 3422255 674561810 723683853 879227863 647640488 757856349 362907556 605781177 245284704 827152309 973558199 985971169 105261493 755630490 696685702 922716094 755662948 843700575 4569097 666486889 759474792 776747611 612489652 999794439 696000215 779445548 817721631 990219863 378571970 877021156 252387210 560796013 108210488 433589560 841662505 901609404 472122707 553878330 769366056 790774024 982152314 991241392 150349253 720137496 600350895 844261267 781493922 982160229 832118733 954498340 119802030 807604601 464774063 549293317 297661032 305260376 79865332 417855425 497793396 785350369 157434088 455688787 523658899 534503660 680051228 880414595 630085148 734169962 952830414 970447192 839736317 953458266 882363967 935207665 347533600 485658344 595059336 870022274 127097771 821928872 574223422 967772108 27328826 715536646 77157018 779265406 854792364 947963404 919976783 948735609 842542894 888206839 689199877 851700598 168805381 389559814 760700136 893038553 941240838 969826062 187559528 263050256 855582173 886033318 886810883 891873121 955128790 958452518 454030244 502680569 839519609 985484758 620511956 894354941 525518621 630558937 268956619 633279341 42318880 629735786 518648595 645414034 268458337 872848149 464805037 558833013 55461778 757936428 65477035 897349305 192380022 989590394 394517913 986607982 341484671 973938638 439201384 668472942 839248526 888578639 964840414 984404401 838949941 859759711 488883414 638364868 398281355 514231963 854242123 999592497 43867242 278880181 111488862 543694784 885716778 894157543 428150993 938011785 707132757 722687858 426198114 917322716 149261378 613834041 239691598 541836575 398095077 435304391 654878220 875316915 520317370 584679389 924216227 977240930 79876740 995243681 729255773 833623217 395788249 404645333 686727309 695072703 368908147 579752798 215995856 781565463 24201511 301204348 895751524 997911179 20861156 456704282 645131564 697209586 975527045 992717845 358690210 828195001 781284868 844209016 587112178 832009120 617516664 625747723 16321014 713977426 261423066 633604465 136405425 462173712 161520227 275292140 611295855 848662232 683884317 797359771 263535683 978638771 171726719 905032027 385283911 878412384 475606197 747427836 858094266 906613535 768060704 867429746 924528449 927939460 691303569 948059412 263801556 418971290 94663777 184193209 649907972 770247712 763969195 828184064 152313548 716573670 384675339 913086240 122903638 400294010 195108767 224620832 457133534 577696077 675220296 989545758 645281702 801265494 33706771 274757192 168400884 991028711 437295227 803563101 839164875 936289626 582572023 790687963 216474872 597122791 431799740 570591010 647073897 742583349 447086514 866528290 944235850 945990897 116160398 854206800 740999193 898382603 443388743 593012030 458198698 673950465 189121706 709203306 953599843 989528968 858297667 882907664 68689507 766287963 991508350 995586683 746223903 789599286 536027795 912793910 468743945 709902222 674648940 882873957 65736219 999430926 990921833 991922753 492021613 551716298 992468975 999653443 990442212 997251074 635403068 701658010 572272744 859483249 8560114 643384689 490697496 578336695 472919489 867875851 768108287 853873956 661543005 808216670 958011727 975887610 16026567 624201343 536388771 637884632 337879616 749529451 128439654 483218186 409962433 456262312 713031801 775272773 401903992 520470188 395531036 787221394 623511377 654429460 78227279 979911997 23180419 767327079 170741312 952461578 19829920 464981879 61894112 803440296 806000294 969933076 209023637 727343808 567700624 717898587 529745656 759742498 883817612 939157800 85368298 133940976 46884849 235756991 36299231 787069819 685863046 849897330 105469474 502585364 776389504 861940241 690101004 751576183 531441059 596172114 649919409 678257453 484199204 707163448 872063024 942134910 688302913 763192088 26997273 963660696 539630878 657978632 552991780 755926498 768982868 794033163 38694133 667918671 437991436 771964675 365279905 413515999 134339498 619976423 266350502 693469290 990393849 995356612 877307185 966298791 21913721 307791836 569348312 982278472 248237538 612234979 282264582 593910118 20978925 831902463 474629876 800113783 562729621 942321853 58925090 974290653 911038862 971478448 609352251 721294553 183827830 493341078 975813168 977610645 276259934 690834432 956989101 972360746 577723962 773130900 634020312 832760711 951163075 954406762 915532234 953337250 526786935 665039466 13985120 49810047 858875932 962993721 120868369 809517341 966939010 991464720 199153322 885129547 781869148 972535415 403133917 603976245 387967992 427284573 951478126 981737436 39057114 995078427 576244511 813832023 773345008 888314521 124280320 923386728 407285207 579584137 380108705 779564087 691962168 972672224 625343062 984107465 742316714 798327621 364251678 648921576 279244508 478881518 715942329 993464695 886600813 932483364 581514691 852580520 179582008 335524478 673730081 908832554 43040406 386994704 153878380 973688423 333717396 973021515 9453525 158593004 144810104 351695724 113950083 298754392 135900910 751674810 342530325 960937862 347240126 806214578 301094671 482467206 680987580 744525491 866317691 947108820 396960131 605473388 362793359 545382381 366962813 443555351 139412934 583791350 824061610 874918595 846116224 898627470 430843818 906522894 30643721 681107537 79901334 971621639 909027878 948729686 378204501 465136321 942620042 972469420 796680842 961883031 297915952 315995051 5241176 502583176 968410143 995317927 365678176 995094011 546530118 983873642 969100638 996226442 74468322 634637610 624051686 748054620 82168087 430266697 262965521 371114955 673041901 804826540 974824750 989463201 699423313 974007497 522133110 632789898 78111114 854571287 769513722 806638050 994151402 997634437 276878357 854551542 466761757 645618087 369094093 894640440 218668413 553576379 341409197 816250782 831278920 842559576 554572729 608051584 197356883 201621574 551436257 694255005 847387139 914127818 456344284 891774347 34649297 937047392 756260456 800114469 314741461 364311953 940179079 962950749 385180129 407106885 383049425 494235735 394521730 585304062 433228311 818399991 282681128 985606105 91680177 275995651 70489688 587053195 143082929 956280363 591415645 592686825 192315264 231947919 203983671 761486258 710712135 950654990 430088937 973452653 867451217 933418064 896764818 994722638 991468242 996212588 40829092 333220509 330556185 382877052 959091963 993139387 161649946 203222537 187318359 884988996 412127077 494689586 29251472 63057303 691768345 804874095 832184575 981410234 375947083 562172445 187810893 371664934 185809458 363236000 81609253 481888593 54970722 947352015 802228187 989123534 446827337 965306041 371080542 550534930 940726012 946693101 400134810 903423278 896522767 974601865 262302695 890593081 316493358 988997554 698804197 753416472 365062083 408881161 423765130 603711321 327224012 343017190 179542002 458447848 562525452 910047125 510610660 652247861 217957633 615292766 262217784 728496944 327811259 610520688 646968898 916121824 665211904 874916529 744574458 787469666 859436736 882678135 44634923 615268967 890022755 909009072 925292243 956865724 320781885 488107247 571009675 842893842 121030383 889446256 82089885 227363007 506202914 799837863 417924547 522888144 331977313 790394321 934213016 945763362 391999882 461528833 617088266 956204697 598955108 774598629 421310536 972959540 558366585 738413944 720861113 907175568 141034373 426756186 331706935 578219403 545870237 623306344 670667108 908417341 651196110 726219054 890342687 995650457 288695837 476294462 475197780 987771567 701930607 861567539 87638490 328201165 549725489 787894684 730319424 734232820 447971062 720663683 664935633 790544340 780836126 904731029 342693174 446287341 932453891 944033222 709167552 956227245 42176153 46340071 224125183 819519827 532055546 977294995 784932452 951943007 545939229 914227840 606906289 759171443 240808817 821472271 983391012 991191354 488391275 961953667 719536398 937558742 319561193 699656408 638805566 892935271 749167399 902714856 692267095 789122900 150420781 860530699 954585848 992995223 841508724 893798424 308572724 803462020 357671285 496869074 825256024 889096264 499991092 663161768 138081836 198599998 320970419 495273960 820916543 928935689 315652305 421624922 548803480 942098904 367186427 719673926 787050577 851915544 911151834 977214676 172584011 463372861 759767466 954403085 135166505 578950015 846979711 930603410 364389087 705464702 475166714 883724886 319226183 326769558 901235649 978434330 575219552 780291029 393547625 465029581 994653009 994927509 740533316 980628345 247156822 923201804 295665008 869661472 619868313 956805752 855593721 866757288 790783371 961665687 449400752 793448118 991382487 993956225 113755275 152458848 560624019 829135055 628482745 747161043 712082960 889531534 970965348 990862818 319578187 578005791 347787282 425772904 624579801 731652664 752099886 826491020 558955526 811555566 335020215 709579718 333705267 739409314 137887603 175617874 79177633 850052315 568242649 971580764 659542916 715951800 829082276 993172536 758859890 921007779 597437107 982858292 218051818 638212703 700233685 726580825 407177576 999168411 833730111 848129474 363053214 591116716 720606565 780871174 559296905 698954827 285297649 371457929 446949625 595396801 342333546 837944182 199536826 361529033 958978225 963011601 334654769 868111572 980470528 998066151 600682003 620636403 985613572 991257778 431017496 467301439 587788357 598168759 177146799 545338536 459303768 972267739 153759192 996925649 346127069 682475141 422264567 620638840 989186127 989813856 208690671 633595987 903189906 949508844 750216219 932666103 521275023 712136368 644532982 764383859 60438070 227421390 640287115 650810708 483755013 826805104 909026937 995737979 925486553 985319788 273382286 479325618 360750572 693437971 275627146 278426193 93620739 606908452 930657095 944370186 716381110 928225490 77546960 801478820 882346302 911895811 866963120 966261412 262091937 757776925 580002630 830711358 542937835 600980799 15574357 284768293 448071772 633454930 567460585 992689138 81868045 765338031 473201812 908286355 191618942 947853615 177624919 193497916 67033342 665599495 801076111 966805655 834421546 873590935 50860665 630370801 363569337 418582828 57372654 982025192 932835899 968495495 420417103 421654911 92582088 928750211 836009099 872088168 110045771 646078525 638867352 703747405 352427267 969035879 916218197 979540415 915296384 931045068 365474461 945754868 491874690 834608860 487370251 907024385 670010169 789732967 368887564 513677183 519262519 797850894 381533736 567413015 728498955 964874448 535125880 973850499 618588738 941981918 277389520 616065152 942161071 946102455 163864165 375269394 417785219 435281898 620592285 923329631 926097034 998292530 396783140 964911765 756444599 833139859 246968764 727973304 154819798 776833454 474925574 508129126 96129439 507122718 683503839 701211668 908708494 935697434 157024083 732663968 508765888 789463187 433484488 699200906 482461294 899732247 269417137 870432856 966166680 976484957 301298411 850730092 754076569 806427009 932390176 999479910 829145852 923982172 829093801 986659249 779373854 899189861 186659895 280115364 87799991 714638140 789853159 893554444 876844185 898549659 911324989 923284125 385084509 650510762 167671733 439836072 334854177 955075354 9115811 143485503 932411177 955539685 949151568 950910618 359558092 704042319 403516704 784225503 580544577 589312241 134200676 723024347 857269917 961482452 919600240 927965512 480633142 807366907 466811656 848487247 909975964 961907846 220421732 580012045 193585861 312548141 742815152 757846658 670091517 904714332 531212665 593591396 487354446 763474060 706591025 950885483 161378873 772287797 958931667 979093326 117478095 885253745 45926250 229112191 267566851 726306045 911284836 961843213 265509522 484195438 920362181 941519965 274313701 684717716 653827019 884138193 828564716 909189574 7267650 659113027 878878859 899433088 429210496 966113314 316116536 433971350 493805507 904230025 651715938 672000828 609656729 753507933 640440620 883380688 749722096 935731320 388906701 715457067 244195271 481572526 75263537 714499068 659000195 772248502 114728079 312434283 579236040 930954735 196780960 644606212 277149975 735881487 467488857 660346181 28664527 721439489 469632204 790960998 349405711 378887506 199769932 205099079 596018959 991169215 528309138 667386724 820170097 983172352 293014463 660098869 869553723 995714219 862103143 902238283 936132315 943260636 172839644 306303255 91682716 605210434 74598320 613146633 85639454 264361640 763760202 839648475 937685497 961120812 769440880 893322067 871958331 996914784 82659906 352511284 692424881 751135648 849044284 978297742 705690361 759442446 488818145 576469063 184747130 559643207 982673484 986804665 333496699 478925732 309371731 344588521 427302893 510369667 132372009 513145295 375117926 845562646 260037567 389088685 900165336 968656760 937707397 952329786 100290513 265359442 765801611 806823475 966974060 980773563 748777711 900880816 793557202 924813069 421841489 849155311 720540851 737584460 550524809 925341678 639138194 838349971 107484171 831412538 617201730 953025694 561801588 957817761 173180552 772025738 134031170 541919602 610142611 858499132 303630521 631025752 267933713 694526003 923324755 957389667 836809227 851071297 223344365 350085949 262516032 995350935 749948636 909222019 756267092 992182467 583346748 839707882 246426212 520501508 596087182 825485059 997829188 998075421 942493443 965381848 938832684 953528951 100920117 634865297 756241131 853726022 8064307 337537101 545829801 704117605 525811461 532535963 958865518 983755153 988470644 991607974 943453917 951096432 969943787 976476109 877009800 902888100 969179857 971785211 4215412 511297721 690761379 763894598 827047958 916645076 85302524 253250753 410686548 583259727 536951577 616305938 450321968 642471978 561832822 797328024 34727640 391253277 782745580 826302601 486256177 887021620 556758919 972460146 903844739 912874335 105722082 486207667 927703748 938638117 133213488 880846240 833499676 994364617 832825179 970020693 570956674 627976731 641359464 816218408 982428151 991254839 460438822 579178613 61920891 304254291 37144282 48967982 270114782 832801956 561116177 561660884 95509103 346197793 593068403 948718890 431899305 438474355 989678447 994232352 593106231 698718513 498394665 946259701 382997008 850293760 50243901 572227454 518901060 942847859 613104577 939650663 956094518 981842976 401656188 801645053 247777730 501854303 752950983 837555905 698813871 837919866 3936468 701730902 97738561 704016430 401388636 725730812 600250977 906790049 492133839 817286260 85676192 272697618 721257586 731146184 555407324 634027793 375135352 434871388 443338691 650716641 746783277 842246228 391209522 695933772 805079137 846731412 846035610 913493463 385231948 913654518 196765695 475654501 332023034 495230854 282413686 535113466 46387825 86027830 823355978 934757156 133881880 388933906 605913461 753684809 63006796 816648228 990162715 993490054 654350665 982137924 720132497 773498511 36288310 603061848 29086756 928965268 138139540 863266857 746781528 925619358 302457638 413649415 330005963 342599348 488612124 825392752 199070044 600428570 439795229 579270858 216915984 668193564 208655553 494476055 729212497 960322674 563204897 597226895 494633343 708942826 622697414 823899874 774762625 951505233 677335668 744064236 849423077 982650898 964592652 999314612 458322750 655966847 809636937 939687651 515350102 604942140 261695121 776096894 759476714 993912756 860603497 951299307 23487666 512467465 842022461 994847886 252991523 701900438 628418062 975865442 769849080 791179917 5996075 577916071 447854494 790946152 931842204 976566008 600186032 639364250 74516669 841169173 377406511 411488128 758431974 960864322 130808596 857658040 463751019 846172477 444048294 935541830 50579722 979171308 968982521 997800977 737701497 910783168 778441839 871795872 186672263 421305328 284141565 558965357 708425096 857719551 254888706 896226205 313532790 509396940 177632384 866525223 871581197 955042635 747021708 801563896 61283760 430013720 789895950 880294630 454494888 710197002 967308242 989947106 257400915 475116393 602303252 647654245 842607322 943440000 34044040 572672947 903259716 967842411 833106250 865827901 875733568 924241375 627182271 827045604 429058813 707699769 464968061 672679233 938863746 972342045 362009537 981964220 169962444 325204074 506929690 691467630 496797463 729849417 767678054 917008026 425077338 956974473 328611715 589508490 477511941 481269806 381029544 497667709 923503639 955158350 342227014 804747910 287447295 459301600 19276087 552449649 947233697 992803602 641769376 712145911 525241908 571916883 586270327 931984801 22568106 167210900 895562237 914510605 721817039 993897170 12218788 358161131 303031465 399748973 140398321 840547669 765080748 988632224 826071474 982872415 486219647 786168947 646980473 713123006 22440929 95318084 448745738 985065772 330077616 444178919 327305668 671430776 8269123 530831354 131097596 611373155 877733295 986316653 770787459 868461524 746111668 777395072 869958665 929040765 136721286 475937735 666975207 904349579 832471033 973768075 147442658 508039018 111271259 772946315 78257335 124057383 176040112 676040002 896056165 911113481 951130837 982708701 961447486 992109950 16042278 846419541 782947794 881876073 248508411 500008834 934397958 982469230 82307442 953603761 788027610 913570592 919966887 994512510 239905766 455228260 174194418 740145553 454705498 899155982 656258387 705811348 56461512 316979256 809102398 815497775 283862474 641299520 127749195 984473253 208144219 407938553 850752735 872760879 689558884 853601375 910387782 916919381 103092356 285513556 894832027 899351889 684860913 792790926 623248106 891901754 349864551 651529776 94640740 160502845 722730607 889644647 199479598 368135195 993203861 996672009 617391478 658289926 987538197 997144395 148149709 181135224 648053734 758157769 289620487 750615540 921552106 973797334 773647779 834158806 47253279 162069809 968841492 978949694 767460743 868977664 396379075 614999895 912112746 983653285 402884651 466788519 233031365 368873750 694137538 868785548 361420075 387664786 223139998 287514003 779880054 863822354 738213504 907705063 725101504 874791832 610407221 715440106 697977579 732978917 450122294 895114782 965884109 985632491 922677297 950380652 905257500 947676350 301263899 898046960 803159636 808954375 712329549 736287339 862732694 882915142 997803554 999469331 878015937 897956511 772093449 885286171 162549423 518163595 478489350 522976364 753520729 770803513 752809656 902634689 4986060 388475779 698801628 865277039 267034107 451532677 636615474 719857126 397029714 538298345 530798969 681216564 371606916 418716418 925925935 949129093 821368232 863919836 50840627 153423286 892086350 991989214 731640477 959032747 862020036 930953724 606348862 628494013 749614380 839930479 986795449 986997341 884756897 948196100 9836399 170955203 446274649 477567838 945165006 998154980 349651349 479160701 121866179 534893388 53412991 275271399 447977129 827646534 36301708 436981147 495188384 949981212 455704385 977844032 648219170 886902303 787317869 890945776 592953467 783495847 106270317 838539390 466997952 605811282 994708919 998963041 566542191 832513391 573230550 790707342 631906400 929916305 855036028 957462697 508994802 636501941 978394877 990580970 724383094 786391691 154546252 504566876 217855087 669612091 304213992 721590178 55724198 768372828 119477751 292877125 701331209 948713928 598396086 855330748 860831133 867262398 422932921 782629787 541776185 935751411 474682910 855167770 384994869 808370370 544738014 857287471 41605931 225319090 299791642 980282294 719724996 817443471 895498001 930386615 111900479 511262728 678786243 681203644 213190253 787117419 225895302 492568491 904904511 950632029 412915944 465671506 546846576 745811911 583890309 969410411 417225 462106564 418110029 464037942 5702826 318841957 317702482 533495919 737449157 754116931 699304145 980008871 87344760 147773860 299710486 621848567 127054715 683790559 121271177 908607480 204061219 781186236 756489686 860126915 948376593 963687531 637782140 688870269 645288 102018927 368178950 435203447 850776613 972796567 592450631 765615358 896670006 907701051 579444854 968655269 527419553 721301515 917624148 967592435 603255145 783451854 350717251 511926798 9482263 400940386 503378583 693927800 740818021 792602111 386582253 910424367 554464041 634176862 853047949 914801590 400536331 977009652 106562717 624614870 34366611 559722311 785574212 936789730 469105089 806287541 656674632 731542095 603473295 944278083 407397394 836616099 971615805 986423205 629206788 936866838 515590673 788840814 611040016 922289512 876868535 929213848 577619987 626122765 304446947 790067045 641192267 664867873 317928415 564280720 468193255 925714926 914835488 973312007 568497180 959572807 980425789 985175923 320912967 607699391 182783368 693396713 434292991 930534049 180538846 976129249 586175892 863508339 13089867 76173998 820079299 843089432 946735823 990712382 77404987 241843540 763485631 862560515 340178341 701935432 613028172 700409886 209561303 504069692 640752962 710913380 261674756 438364950 111410429 678614046 378129919 390708815 684965782 802158449 198025869 341793331 587956298 730261713 866720112 993431251 615775671 677834207 578981190 995005615 756078094 997657392 407597318 895696874 829120337 938821250 543173092 918605734 92083033 900316392 726949835 875028075 637037103 937630893 368833633 945995716 877180579 989401837 26480274 210046237 810157819 940870971 635535308 923300916 526226230 756400751 443468454 863283051 176909589 380178794 960669970 985170925 93696075 205422102 961245909 975864448 561974077 796497907 85868739 995639342 649768375 781213936 340690035 877349130 959810459 962593494 206126687 557441843 248311100 631737341 323881963 552382499 670590686 821795738 413884873 680126285 968987665 990411053 59937689 72570544 967148451 976945239 209003997 665427964 458393122 913050618 728033603 781541109 397410014 681594843 220072941 786159987 924610478 959194318 408009610 889379290 655976367 824841525 301315381 678844944 196006383 565874088 850190147 944875885 485204625 806664750 652355396 974667244 94499951 428121571 235744879 338435267 950776427 999506833 98589761 172998962 869215404 993624755 890527248 939695459 343895193 405235607 107814573 478966685 519498323 916056520 420711348 768519890 529059957 988052290 904500530 981023058 789407837 983398138 340518043 656232227 966466718 981907265 9189648 720637779 228235309 882050195 637168759 801835800 794537478 875076002 74161285 983822122 737759157 935988157 643009928 877640639 674015756 863792375 856711307 863385442 405181154 467099255 821352967 926840783 643200689 999349682 388235954 909906319 727802898 916425323 929063714 969638161 259182296 459156271 551820669 677673547 614261215 626442749 809026323 948756061 59605511 330404919 358226071 921913390 463487955 718942008 209106957 403345038 396134677 416626625 684581487 693314422 199116014 550398152 225630609 398116562 167756253 971017777 647461145 825132773 39636907 591034148 237152053 713495231 254475306 439978226 397061472 548097547 833339191 843934328 955719013 957597642 282016634 441192094 639395699 934947843 36800357 277989842 283835592 881717570 377639857 720186616 616119189 780930242 882585633 884109566 963250760 981959334 708270950 852092191 589858336 807832734 139202522 191230680 852487456 916752601 956994401 966576669 253352797 791347078 867131053 971214162 187462248 870350057 981630691 989233738 660853655 997309368 302099474 761609062 635462139 949331238 593793426 929524095 288662056 558392937 836817277 962137297 11497779 655178490 836320536 887824047 356322171 688316592 399074574 438302510 345056491 384293195 159526186 299454392 465058595 545544425 396108905 733618201 225658300 244251694 525638350 744460232 289139142 297525349 788964704 843950912 548447841 902527811 566917471 978440981 817044936 868840270 194476663 716339682 549456168 769806696 657270876 809798505 942327943 988035972 556588594 584444164 831204807 930194724 698105631 806857372 329828040 366127595 537117174 996940310 328544443 780682807 686674959 793887879 363201117 426468038 892135526 978762038 937764354 960942447 141098729 758952214 714909818 777857855 172483864 522532588 512864002 613611136 504336067 947110679 911698787 987302190 416532731 445706315 515625542 564812017 706761013 992220002 544259255 661740101 121919338 346850921 960429259 964863165 245200955 760724188 494141450 911384216 397155356 698475909 655758453 810743199 552803483 896781203 311810959 428064178 34032176 791111595 572184948 649547341 189959885 795592865 983129852 988511465 187951053 195502323 683202497 997534817 326367857 819960017 250645956 478883941 712387871 793353474 776494250 902110597 246913877 520501732 181451036 896142664 811061854 971702221 985113486 987294542 921542851 951090984 802431026 999707692 382988577 598199267 875524012 951151239 181359976 332974821 389392932 517112710 972105253 999845338 536175621 961566370 755839975 807049740 187058885 869564495 47021268 963750752 494665680 916120661 566868318 838060579 780478112 872190765 643619917 946581058 38890732 314110750 159656341 629013621 305236493 896196103 752065731 870780021 546015174 920209171 606213140 888856812 503610393 904071564 824837100 924016347 94801074 220244389 275963997 727665645 839256835 984027357 672872575 753201896 398878333 621068606 821813056 831598074 787848576 909330978 660565853 701343222 188283638 933690821 670361206 673176149 541423272 693260436 692740010 718897936 277780435 326652363 461414044 957651805 724554565 768625530 893195258 949241518 717757930 849121757 74147334 215272629 209576355 322633162 899928558 946935678 859648494 906049617 16786630 760907483 641602531 754099756 366954425 752998688 317509571 707383227 848136852 947468816 114567728 769181169 92922498 933755782 241202046 883299381 541252729 660750744 142461772 746008629 376393285 888671350 278075963 501794543 814484384 911283403 71671067 825341619 984121895 985706794 294799698 867298524 713732694 993579952 524428523 583282685 815174788 938480898 951469667 981931540 786652799 909484419 844354956 965285490 777983972 980617121 846936083 991036536 546454906 630042798 195251950 399368475 501545031 865380789 615246763 624130783 256117916 880666368 433004370 792714816 814282676 976866770 170736757 981777633 170835089 728490311 210208765 247806522 270580865 745148782 747425951 760535350 11540040 184540165 824359353 952402995 145813154 188502170 454379164 838938201 341383487 756144084 249807306 786552517 938062876 997980977 180006017 923318422 305929848 354889137 84885357 814677511 286828710 657718172 834926296 981218970 219767335 341088587 673246373 840145457 574741784 722203358 246500178 300085098 267823202 981018582 289939432 520041520 173682900 565152522 554873486 614911384 16088589 784704631 393354294 971182832 724884540 904860896 329187269 855590617 475569729 912065916 761642124 955754376 835157513 908577727 260076379 871553336 916205175 920893531 678973317 956926326 202276153 859927438 48330657 760165084 243072434 995221530 759493044 783501349 102738547 958817555 812011002 870654906 480115394 483353626 658914302 773360696 732794337 971174575 520692075 535086483 614171256 957997901 305823246 737868767 289959154 506630928 308766436 980564152 558898091 658997367 890293136 922885450 559768168 975507436 50473693 790646019 377505056 459631113 157843881 821232422 393448187 518416365 229468481 271534353 341741201 864193085 131468251 916676764 233202243 837245278 458374093 842416758 880675855 954196194 626531355 703093575 873138354 886134250 878016895 884074336 803876920 984513877 35389680 384302338 933465895 960148115 629182881 876669623 927056317 969130161 312520759 551080799 398449526 426458338 453736956 802632264 472548549 750023168 818838240 912526008 602665645 822387838 446591354 820431454 787889583 832812112 555546767 776503284 676180539 768072348 232829462 494772746 844908723 942708757 588571978 713619631 943811022 968568697 43213009 398866456 381296695 605144855 370492545 549713286 985978297 986522032 42171542 443054548 836083620 893186483 697791557 880144314 426698546 752059589 266488808 937397829 203077654 798877117 720877599 774335576 169323100 383853710 61680762 587088221 643741987 751502397 834361894 933567386 346419746 698976809 885681787 945105003 598483001 996065655 521215448 999885689 864633696 874863126 407153490 768812873 469506382 776848595 41623802 786827436 345614557 552260048 616762109 809935574 211679859 531127828 290481160 372805785 479308521 647408890 387857542 712945224 310436548 338860732 892190406 943409426 507546926 714116467 437673887 620322839 803415765 950812825 929848301 970797558 431180673 938499004 659543113 682867882 488695600 773377682 930545714 970972275 605737686 986233777 240095616 773863875 664073272 715733969 32485542 81695717 586765993 965185566 19513576 560651235 946969243 970593046 373002881 584318236 174336085 247647125 833529432 969143417 337136496 775529281 764248246 876231441 676955460 716060161 769779056 780599072 592675995 605368281 204376440 546195513 141871491 368779086 221144965 526299246 348534712 625773728 417096963 457415618 539639150 617396788 377403127 411417178 727593591 763186666 894995922 938610551 173431325 927638611 798330010 810225923 516691275 662543290 760684188 869928896 748173266 831685468 576861390 753800946 295612461 729345499 302471171 918519421 61012655 378775758 249375437 384974927 608472199 645153550 571518179 733940341 314079407 616657145 136476092 245465175 763600382 836184417 26029890 29034259 894160148 955805119 128646007 548769835 998213334 998660305 148192570 917989690 470156666 601814978 211786597 857703106 728301640 926603274 912940639 934898962 365906265 908894284 868685033 875222327 210321412 383547132 773324427 980519762 409448502 982416534 447683511 601626649 964687992 985705412 80064353 174210685 829986400 843762334 572262568 731590491 512086270 722529025 706624973 846701919 837539877 957770806 916058332 972120135 150544114 466374529 574817642 789790147 894709006 929667718 39141181 463108149 478381950 532958883 532157230 753542886 342902584 382983204 268685888 635242128 532785263 889712571 813989692 842115550 712271331 903144687 768483493 819825595 296418648 373740153 128605997 569703771 929737043 999889923 907538312 925322693 942552186 965296481 257196338 372150501 318031212 798269189 109270378 698976368 937431700 944486594 629050753 848797278 230057395 816774684 815758533 994462748 17014091 227757197 209682284 611355235 513310615 569926833 635785558 742479414 571777121 989132622 21042661 888996198 149601987 240321017 717320776 868414983 685941699 953664725 400378811 792673387 267513695 579872240 159258998 421764353 660787029 947151716 637646972 745152970 746250228 789136737 935951360 954988835 879869750 924695153 52819180 364727916 929316937 939833763 613958934 822286275 523379275 906469798 423588307 848279442 14859110 833147301 263261868 516440925 229828247 897087715 345212374 736229996 414803122 744167784 488542487 750435458 429639406 627274811 65364856 559718636 417345918 844538744 410508790 911544096 180933318 698230153 114249991 532297887 103753019 694520766 379693668 527389797 219378691 667258281 503715280 522964768 833756472 882066112 775254375 883501055 977559685 999574604 370340330 863349574 499235775 828920112 584956650 854172148 729220072 786245829 19344845 591762629 242165460 587074406 711211465 889946828 551174011 866378289 249563311 368336514 6117961 835420948 77070824 136803300 445052567 460716991 342045292 940782670 249621661 934327718 13343887 739855159 839091246 887194555 825923811 974128612 675209922 995448722 901174859 905623687 931930921 983852024 253274543 519177470 526341794 810016261 470851469 967247633 293206720 560472839 596016653 734316344 209896314 510992722 601263614 990990365 819413263 833259153 38147391 300833985 865599601 934834091 162845706 478473198 557116827 660911391 613264417 623718914 503631301 780255407 629265961 824770743 690491442 996925108 540586487 950559465 788039651 878343236 852142744 857791017 921889364 943167848 459504602 510557898 743880335 910985471 60840538 308604334 698452076 708735002 921651697 924797036 816670616 986219333 804109089 810249292 753310718 988466881 624924809 634394447 748913918 998643974 783334422 991902570 204592316 592256238 36277628 968552869 998113111 999158255 93146246 721956967 691980965 970579579 564921958 855715077 238193025 301653406 695432436 723735395 371248572 541400160 441736989 637081559 409544004 434383621 504648734 724608957 944344989 990379812 722900395 950452928 400287398 477940414 638288675 642184727 26753352 834629251 374998378 742711205 392957757 402213860 297103114 573512463 589689764 798210703 911200016 973166935 921735906 991835429 900505910 991055293 33206587 557204250 889274376 929941480 920973933 979640914 386272608 692987938 750555110 865971715 664655623 813192703 736032573 806679210 386441998 930160937 754545042 989302455 496140337 787142056 189031756 783762565 441865116 724156919 24134105 503372955 534317671 680265092 725444590 810454009 738546641 862090397 477263532 741808969 752573096 954515561 82295223 169175260 76773489 775822221 733498444 864581537 301648660 693005922 131442560 735165670 441768902 488818263 300293068 565409496 224643025 409831931 196995132 534501130 853752528 931618122 352379601 812574120 886821553 942200361 585385286 689850900 704135266 882117377 173319163 401152444 8732401 572618772 303735706 658737181 497769574 628557092 213111392 465370036 627395008 698447342 551179554 689264084 265209249 500889480 954724496 978281088 656483284 930302636 625119152 647824904 226399119 826142384 940825052 982322669 444618070 902311768 464526746 546397966 50494442 494780308 793562521 798230466 594393466 872464929 390394638 627690645 208795854 837816834 864910841 907874625 425069539 607806470 844233737 956384682 250376897 524821288 278821179 327662634 376029733 647280368 44594771 250444304 547678643 745265465 447653991 548212683 443913953 785643312 244046154 330870754 642431859 650126497 604260508 991890685 547530639 604833491 552117570 945040374 432416462 922559898 490906256 548785465 373077056 646690562 679868900 830634617 51509171 873643014 39612019 91464274 741974647 845615819 284699378 648642751 98917517 326172799 925144124 997369050 684684157 730392827 980289386 982834852 341549250 994329071 267802842 451887388 862268124 947577683 695027816 966119141 656514921 759643972 676554872 902465908 699193544 846276312 779686048 846001900 363007969 433418067 796606764 878241843 896556241 904461515 575877794 685108923 711200805 714885418 927171941 972025005 245507745 365629218 436723777 528778440 517553930 548411306 416445250 983903857 67767786 434748856 976356148 996026004 76008672 499710731 557139224 951673270 459881564 901548248 618086838 990482275 569310067 906146506 191860621 396060799 658418843 964005421 837725677 998767696 331711044 630528083 656630845 764592038 575704071 659758712 661946827 843143777 764399908 768001728 632454795 980053113 554849608 707785299 990703503 998025042 622886772 992553334 641920073 717373980 396733144 407994335 596192722 835764685 89926976 694511357 939251077 977897329 905601238 982792860 178320401 987089305 343112368 351506864 722403305 884741678 4931588 967578784 425993516 996715594 673709283 814440459 740193196 750836136 861784969 911776130 502675764 990724307 22461868 553667549 699129006 986683115 699806460 902476041 207297497 997761801 439046269 944960419 713719226 719937442 151057004 902430558 356665591 759903851 467343858 898683548 477532801 856259560 199913450 236165824 668231167 755604064 664567344 763632196 523929088 620345072 159463674 769553170 271021448 804764350 518234976 853621405 140475662 193930908 147621457 919483533 826128730 962534416 977796486 982014147 27298542 386958705 718800448 974914161 845638683 848360964 279847654 427130301 55098861 846331027 983732741 995041955 590572557 889574507 923653832 995234413 285267986 899104816 312946973 408395203 774175955 948117551 886364666 976537305 918468357 950488455 325775270 852015611 739163159 841421394 59626143 114957551 467222622 783222507 160216231 939453032 592469503 741737466 23039812 361411635 93639911 344979748 141419372 510698421 278135288 403813432 706395518 802146539 568003861 756335837 24418973 247970361 446144693 637392557 890398886 901806782 259843520 581457020 213564467 974032095 847438939 911190333 853605476 869889373 774923014 776259511 940170367 982971966 765400584 775615735 365303897 708992403 338350452 559322180 444749281 610334708 676717036 909433769 696040560 899351045 418492611 989429342 200842220 743744422 582143174 944787084 767692578 796305796 660238184 800623876 965014717 986563785 341970453 510622691 821993264 827755257 492921400 598548085 5038408 985267784 969236443 978957914 229185901 632774785 259344640 433943733 268220444 509344025 79613580 617897239 379991694 380046245 482467492 987225525 987180304 988331954 824846978 986589769 830726678 881407984 169707561 290550478 586676952 961710930 597102759 888094950 509847724 763695259 336105205 666166794 377547145 849999306 875993569 969485481 902515514 991979890 319145919 640367787 143819414 627237187 776452134 917125397 408944345 744350086 746203739 821950094 76524960 150083455 837162061 919574379 774009029 937718153 316235645 672526356 116118026 455484152 24653279 374835081 892808411 987975267 879565001 979601242 992313768 997244359 514536628 974615428 613162586 983039183 860549521 992606322 388059670 556687036 281156698 413599078 955953074 963241503 39223442 643760960 273439049 631731407 424272905 705546937 450951520 671819251 697265644 991296293 662697478 940403170 409466743 837235166 505179338 591531839 830188892 903832628 10516861 753794965 765746961 881044806 860525208 985952644 960205700 985674774 138442780 766848885 85070945 779807914 669091145 951193830 875185840 913459610 635419123 703223224 121874393 725915390 759533504 811984876 70980401 714466802 497393600 662132894 892288390 904180933 630936227 907944792 915318134 980451772 119824176 733184431 84223966 497681958 876640140 956728342 84128664 621044248 513216314 670696672 239124535 787150041 289144685 790950505 694305671 986572014 90352223 221201239 757836187 842260641 629329834 966661107 293441912 336491255 859772859 932150855 59700416 67286184 858136304 859686009 891180890 943051075 222229877 726239069 567836173 734427842 772280080 822420009 913378698 959755321 513533289 630736528 776203481 955090655 973310119 997820022 483749226 978914252 846439970 987315288 953896834 959860563 73752140 327570128 339486438 717274682 188608145 618121276 637807262 812314937 861485080 948024000 477336173 625459640 850242416 929110705 613724617 670191959 72008687 394648320 90628279 679306482 762600285 887086297 8292984 593155175 844635797 917947248 172898571 689367596 736546002 788389132 507690061 925619504 73808601 711694689 191370441 268375204 338765673 664043500 351632504 967591555 339906267 738488699 812869958 847874099 297925878 411208910 108988881 615071708 292735050 856647350 646274511 781490860 581629224 831209676 444924436 812597100 676535940 696789585 7070243 936144996 868069583 897648973 533861326 623311691 768264699 839277549 954219495 995985424 579088846 815869384 646481285 683700834 710545148 796203483 158759882 229358172 365226399 506586921 338244438 420834489 917390990 943708819 141155345 778944769 786113052 985203522 450740763 571423042 792157176 887992102 272628563 348310870 643715884 680128222 593377837 951829224 220787477 271990029 502545135 655448358 681370140 904603508 87622336 954694030 460434971 811142087 875425432 942431213 443249927 951810832 900623873 981181329 140087652 473942712 287408711 899164177 453049233 911812840 34256894 180571201 494569563 518013529 896745005 916281348 356818789 897400665 551806628 807608702 296661079 323340164 340192981 565905782 250743739 973089976 556376063 820707641 81191624 910794745 202945328 367135043 191698545 703572533 451150905 903077100 267896278 533293163 105879229 917580331 517176851 865109029 727588270 995587413 90216228 816062035 266609598 910523095 690334796 892859269 59469727 155974237 521771619 774559228 481332579 542590368 99387272 329921274 355160386 766466798 296610322 433679013 735328474 846301770 283516132 919247978 683785910 988796909 111846795 537953380 736467724 913543349 423473435 780495959 331231274 459814796 403763494 611959575 906990236 988118821 862844032 895312141 123844155 488404136 758278468 919929180 4090732 886011118 270534715 812536038 105844423 187060464 771521431 919626058 326934801 900510234 701640131 797427825 789598275 825937728 628456481 749416292 346382258 987896017 754046753 805051504 889572122 949921207 367408924 748217305 599623628 792403374 114765411 306352896 312662746 916342909 358496157 870800924 440462037 446076237 141052398 671242140 432203105 668234676 634521750 994334483 446511693 667385515 218632672 576159071 508919119 980687777 426034304 712602232 202004424 736754697 809207286 971179944 691542170 726728508 973323042 986518076 787537169 843391034 372142774 609153644 932774441 951008495 625616183 629310645 426001967 454143841 678217664 904159589 452125643 587473269 183481513 993118826 876980431 891339164 446369030 604480105 541874094 732736944 886056174 933664542 936950723 945121989 499146201 714726305 125833935 287918003 474903550 604644276 208162318 800314105 771449869 894146441 941009855 949081892 780161676 987433781 44027536 876152645 482057738 917743162 731188983 908085680 92507963 458876224 637699627 845372627 915431918 960798085 405701328 746862280 567153512 811519380 382692771 552660549 825020666 951823910 57407165 559976381 928929169 996759813 827960755 993411440 704422449 737656313 439946530 504261582 518954707 831038475 509122819 746222841 280141343 889221839 8155992 348557922 681862301 785189706 648503726 971927366 372480115 851120253 834423136 939345827 460203016 553184868 410851981 712763921 717988495 999748161 224143376 842028224 409002860 923146813 594168911 758426182 555058911 776858733 797758418 860464310 246943813 930753017 298424045 463436178 275633819 494051575 661143665 698118547 532249096 677204140 506742530 954729921 983521931 988479554 686446775 834063484 531476960 906764539 923076659 965997903 60314076 141421889 112018217 761123527 514950079 655132770 685433702 777656538 765266364 975415809 135415989 204965217 383602473 886477882 88019998 509916751 484013351 814756872 324523201 689285396 755275071 874829100 537014659 564376647 182867065 474275973 282525138 777590479 657473150 861996034 576916571 894748047 901241121 955682776 605375052 847933255 622899218 736967185 136154296 745559737 921934053 949485817 724018073 890787266 84486440 510816040 62651811 254052617 136843244 311985309 644963365 832842613 852246285 990926858 111506090 295487462 447934007 620902962 897722636 938760335 585664804 850540904 28998913 421680996 254769278 618244351 90342332 479416576 71921878 544707293 318230845 988654370 682935452 813335080 8539861 759481209 987348331 988166352 776311242 784662489 313961440 565161265 306841238 815819681 452031356 757037912 217603410 979705786 794667001 973852851 6478622 461585022 890919864 929877311 996161248 999222637 409294118 640474043 109225577 900230262 446664926 952278304 220698275 823467622 819201622 944103251 591935587 642773796 644755587 698754372 696059369 946489636 942067548 963334404 411304541 695750614 508013943 797859075 973178867 992413031 660449279 903902883 578508538 580640882 275901934 649329859 797494903 814738837 255750564 325421736 503332245 874872796 845639983 893824562 921674699 992558815 222454341 469266247 891325721 922924835 13172344 926068585 588882047 861572182 15310407 144598053 463097029 787175869 233033521 883855432 344339418 749829298 983790072 983865448 991743218 995783407 169595094 587728185 253272226 870938143 83404991 453226440 619977180 998114629 221224051 673109734 277036274 832779562 128341845 142692180 169037834 639943318 395039427 553062205 833060187 893877795 86323813 744835717 859758824 898435938 691365370 875840633 218850065 428858142 13365106 89620229 400057099 822675241 698135845 818964094 943306133 990731669 562113670 917813353 495343752 681463275 452855244 923081986 902316412 968434274 355493836 717979490 389645079 808766272 959735880 996411610 742979958 848741549 929764840 961621420 878408363 931186998 935864837 941602809 663126004 851146384 947685472 989423555 813995780 935452091 352510340 363565004 940984081 984324054 874457292 893934428 884233865 908648716 658725493 962444101 226136613 600463930 257148733 415889797 370123370 467342225 764378260 846332145 220336840 494357827 690283881 700991133 192262570 864764666 443801932 528485086 936855607 967414296 975036104 988168825 402232421 565087899 839607624 973909526 86936321 682894080 758465942 876714243 727885979 825237889 127843167 152008168 415885241 886534060 25271220 98519584 655689756 955611989 980121305 989946568 225009247 886817232 552287388 787340084 932498058 995371989 921320077 948202954 477931585 631872305 154605450 208809841 217028455 311723257 338255257 906756433 791773536 917736455 197934049 795722655 275815282 328911375 208351161 723095855 133287381 424010701 847600986 871773788 262854445 419002854 911319118 911727173 659134983 938843201 782297005 944018365 634927841 985148869 57079686 633428272 626093275 907225942 882459971 979249718 95168300 122920363 680484937 847979726 240319745 751394002 128248085 446572904 502780765 663971847 876649487 876769312 371618199 879878495 173142629 573951484 361469639 799184622 562842847 569652525 342695840 985413648 503101944 857767067 818275328 880070879 880646516 909368196 528772929 549804209 466915505 672711712 76805787 807884825 531553638 889982502 422527828 728896735 38513233 875773516 468276357 528908335 216663500 803246379 879775340 893322735 759226736 959450819 977136097 997463489 637120062 694304066 935043034 959081734 54559709 350686440 57196909 974449508 423718650 795822457 69403066 843541860 75252262 287897542 501836682 602482868 612322797 899659946 524403269 826543326 40924508 356604490 628371090 898216115 276848515 598072868 327555024 977699291 648837829 743443023 87471290 609078162 862348097 866295263 453184612 545154619 606240747 792456162 101085195 284797451 177382338 433339487 331654653 920991871 318793260 515261277 117700342 398139284 444293170 954623335 908388770 934080653 650976264 727320120 171032035 562681702 807735324 931215039 576251075 587301568 702410474 904186988 410312740 776535785 14645395 509595191 765346151 830514244 557743923 719724695 460568008 685464389 619330331 830227657 621647597 842881082 23743152 122923805 851163249 948067587 679996089 926462113 923611629 971347988 434601902 703952076 938942221 990437185 359893753 658423324 50126560 713692336 852868525 892902334 506375605 680796602 619640036 849902914 755731364 798183873 662430687 991104885 314285819 914928923 845157882 852901026 276946532 999359918 758151135 821938755 466827415 652049062 585251565 881101910 276784609 474291027 496594370 577015428 587919906 896314512 437292173 942936838 364835795 967125048 758771346 974456648 384356794 707288572 320746470 859931314 273947160 592696721 361596474 424983306 737568122 977608581 678805783 684354843 607994442 942182285 2410018 202678213 949205075 982695692 504886198 812871076 417324849 581403030 564146974 788787921 278998814 988609467 784796761 861932998 72225880 607783861 548463742 913304208 327644372 806534496 89003946 425376294 267356004 792511811 562572355 775732139 574484926 789094864 638761917 662468381 981440049 994763302 340415206 793646104 850806295 997372588 309051876 983658365 11981108 33365112 325510393 866781080 900920980 984841924 564132191 843132883 179900515 512918254 712081897 730042076 887661040 899365358 427958759 630808509 548146347 748064316 445163482 857918491 927973990 942130435 292340917 299320673 467277707 496482355 440254793 923847836 929729584 940827040 806975768 844410768 229179285 908219711 249794331 926104355 477097243 539358670 286838773 485992413 85017630 567244792 30241086 714985462 775086944 787268998 376286766 998455570 334928727 817969471 235661688 544931621 404520741 560654262 321508269 421416860 738396144 980707388 125018006 966638499 881796429 988981559 342255619 784454159 438853069 879133987 323621707 923521561 334196735 690632548 63909691 153779987 971274982 972668787 169885779 792467240 674730439 903827418 236967158 962631291 605090803 737098878 68968314 199112366 194002523 502518534 253191189 498955549 358191209 973071374 368618428 898423106 681852616 758282828 268336578 542500725 731628562 959250592 59354215 383021583 594192814 749707807 959283735 971095131 506647545 889085287 373393448 582957414 756689018 932770415 285802679 393235504 997914817 999306658 438362001 934805548 530230068 564339204 594591849 773988535 89521648 616376886 854639527 933343688 79248063 804336390 195287540 256137727 725854137 873625294 124533858 292949387 553943523 614983249 958940090 983262345 31796607 725395030 534704162 763113409 723828046 914489515 633317843 699067024 354851761 962444037 463187898 653891589 294901931 932014238 583626456 802513131 902788173 929650674 807971848 859491131 51146610 160662980 867996115 974855495 974958360 987822998 527338683 650708128 155012166 273265089 680338642 944453980 744306901 804931788 326779789 674146497 631684689 730913259 473770252 615730288 738507366 771038207 46081928 986130844 195752829 497658130 93415449 273970755 855771058 935478129 76436002 934917660 998197649 999905885 150064336 411223688 154951183 900991465 301190688 809054874 131077660 813049694 111863938 267409651 804503959 890284027 251816361 513609472 624533278 735989790 311755822 498248049 682003667 816785163 216930530 621452420 358277475 379930227 851684461 947243680 668722259 855085245 75338601 592643328 104275109 201101293 679596531 894960235 79356929 661224274 221966767 888149616 264616623 989544738 738892809 740999182 861022278 942110604 977382055 977628205 239929616 374236769 482313267 850352842 212717332 886516311 62612952 887271951 200471656 840277828 876412545 988557015 779839797 978046854 754242897 924834630 96740121 627649313 209603332 663503765 394885064 902618904 364732331 642318831 219263386 460775000 243511674 569765151 37332977 810407308 825791060 860820316 734948816 845099161 6758698 385913514 161980943 247443410 341932655 356284790 774163834 913644329 834420981 849082930 874278615 983809479 519530436 942288207 452547578 901525479 727502470 759896588 496408376 886746123 920745467 976287154 477123991 599267592 41781054 492486704 152451999 994621299 927872348 997411888 75712960 511973746 522370929 894878643 263993620 896188664 728387211 815866116 449040317 705117645 356596166 820904680 332007018 402272328 262173125 314532209 464224118 610064765 994856975 998452087 318245701 825924504 676821503 845749877 508402396 966404708 729340284 783348943 733728327 991573401 29826522 618761910 281158125 868059904 754143601 952776004 973098652 976671705 157532997 575574173 530681334 960600546 141883453 631269752 513476255 599059351 675539890 812587559 385181600 816575757 695713968 844550675 102554159 185258122 474618979 657496633 90458366 929443675 191271577 328497540 773013562 859654554 343938357 436878662 14893041 585697013 782910575 913006990 605381782 847203979 90340285 940069689 659410563 913350795 218734595 223152252 421654190 998540155 910763031 959274376 840997640 887667678 912788722 976389346 421507140 541858523 299444168 484239417 963914078 997276108 206350014 957628892 475813251 494668841 178678055 633878731 94032243 303233647 572992434 809217509 633091555 954200418 75111825 152823474 52122698 77628903 534417111 550688371 923746114 978459594 52687539 347460273 876608619 944143534 786893705 871037114 236974613 302412768 922739021 943390094 155795227 253516556 407561915 855401151 923970660 978452377 340412559 396678300 382856289 773637935 838236553 972861381 996085850 998896518 589441781 811063304 947106821 971803883 857909487 965517125 457822532 731253765 420349696 814684244 95316655 380625061 483820430 736752892 438848537 798869959 50026750 895013804 977209972 978387813 96568922 663696888 161330079 191424102 911057972 992308985 391638161 690579028 331029241 964589753 97520464 614717003 720313004 898242894 927885970 955598856 964242297 974475554 553083286 946005118 630418603 833260168 994884957 999793213 516385326 570379313 604610458 761611398 877057551 919023587 35057625 426153411 103748846 386811521 635689524 697455395 940340019 948945422 585221653 662477139 361860188 488183830 421539131 836532947 928220754 953751284 369788377 468635348 308389737 617853889 495089624 825789021 156418472 295194106 726979388 882876299 504597670 646461447 118172415 297172677 936093642 965904487 291416497 392476245 203144997 279717277 821686845 999843200 830281812 968212553 589789594 910697468 842567033 864972743 342327651 402286840 396093943 787756841 243719374 355425696 230106622 970246748 380234111 615115969 447424280 506239239 839381836 860616568 10460486 677296667 294712778 997125835 363244218 902515799 368382704 667068013 71690334 326916390 882868593 943407492 732783028 807040983 852225364 995691410 993003089 993854942 83300278 958811328 207243035 696379241 806937020 892343180 257211583 634421780 521714570 760707326 206972182 753385117 567631982 588764715 639543415 761843622 26169409 72288586 614761905 799963052 212974491 741369578 262209959 832636042 278087919 821644718 205310298 806485633 780972662 865904033 830744778 868840766 347472098 828756229 619398111 802178196 991215031 993933018 742768560 823725668 125532948 216834738 520226598 989608469 130207461 573263884 120473002 923416478 73676827 310178245 170143768 309507039 10080474 959321993 245686238 913785150 469748630 805958057 32755899 595276810 504871584 698924774 7241971 254820952 148277869 421376383 650119922 675453226 645794738 961066818 264205809 899366025 290331953 415516094 696352705 899645463 813485350 882010515 835334845 951702694 281447097 346692045 501356076 579675176 346908595 608726423 720043326 727824104 367429371 824983213 703433483 993781963 734583004 913969504 846490284 869524897 697215774 721085235 786839842 951329550 368103139 923636094 735879412 772426242 165522495 645765718 528942925 533840542 203720389 725650641 394369826 633670156 836684998 872735450 291116180 926812972 201091439 541881334 307635391 598777169 184987879 244148446 38246183 596702905 706607363 776494058 623062723 920990997 475905121 767587620 615597103 798187573 682984554 722527544 274700365 815565881 862358444 928429454 81210443 204078678 81422278 314958896 59174800 621939330 674037716 848697805 375319007 622177517 242529911 740978758 183026755 763640064 210950946 957525417 753160550 993221156 718583113 853160566 698033776 741757452 904628747 989963332 526640934 690796373 343547999 683139901 230434220 636343227 343538640 951731987 917788242 939936826 201356135 492513215 545795423 881628591 905891808 914088411 340755661 950833272 1609417 117156761 716228656 870223190 317167619 800314786 892618445 955359352 346013207 505523502 389349644 806714738 135316976 405738272 323065651 675496131 976794927 995414903 195081843 799989957 144398095 643445350 352444589 543063880 528629730 808577656 582399077 887999521 352679658 641809903 62935092 537743469 187852289 419934289 788585753 867301693 916981377 946201929 171210338 865945269 887465909 955383898 376523220 464647041 786943871 840014581 83353041 289416433 88233243 597964297 686076493 802459271 82059063 230981527 547501691 798006697 63628738 427396776 854277893 992155937 710426617 929647747 684760523 975543652 504065130 647421503 86537283 330502966 985443677 993255699 653510776 746170671 99960358 586650295 737468897 793615177 772153946 940453301 971949635 993042875 473768430 582630501 27152688 218785728 712737775 780175872 93735810 847390353 686639994 761351673 407668326 906005993 571230837 879165581 84626825 905411210 224125231 780836963 637881623 698180262 652904348 767654170 825041313 908431982 640620350 777229338 692717985 814064777 635927820 803818323 66312468 828350351 786757230 791077464 627412703 785486279 934009600 941694877 334946022 779271948 173199321 439015014 642264991 923807907 417380231 753678236 893291855 974518319 994651392 995129167 930832588 997220819 291992662 988810122 18329591 428725512 203887623 684180577 905171978 943219392 316438597 561294608 419393740 499618960 426689334 579880941 616735080 939698572 679181135 819523957 511303444 808228195 981101047 982821331 286066498 827308986 310885473 474194516 759470826 895582203 73133601 544269682 779961770 969239608 738285023 969408040 898503364 908928361 374689998 642115248 297119132 337615288 253837028 798171443 612049177 992542963 328215871 676145431 803295102 969144192 571842836 632666315 816381856 929709634 371737576 864113058 497664284 518166682 690590894 948641422 893319001 918345582 769055157 789568539 44810176 423980003 911536226 977913870 44899878 708471481 676940101 866322479 960970371 970215909 56424250 76793205 566963593 708573968 857299291 900865012 305550681 973545336 131792153 185653912 949858980 960476756 939975050 965491741 87138604 500268437 264036545 644853247 408333225 938814170 796947301 862581658 860735431 867902593 665082211 749645167 79079756 240389741 51910951 734922936 283461140 990272325 326871329 815826473 566489698 787735166 912877390 931976104 684631471 745699114 978534521 991404760 608883012 742226467 650757273 879967030 55811684 519003796 474151736 742153314 248972101 884594956 681214568 900917943 942634279 980448007 921267950 968545170 609507417 665199992 318052138 663496811 424347780 430527486 649533746 712592309 107387391 247527305 275946211 550491166 342423284 898892842 567373459 739836990 583668753 706310348 501627647 955621175 291634941 821503618 173195264 397044725 571721162 861029393 14782066 658687418 48573325 818628084 67118949 747411493 345499589 365593674 2612495 874180289 235053933 474464216 305658817 982097902 529005391 613389643 235371499 830331100 258324576 951304073 381265805 410984082 700488246 868628224 669585748 890967295 6122860 305442003 307489845 444505245 742047649 885235162 809324173 815399884 236326117 360944445 206793724 506984788 833999311 998695030 537874265 917676351 86052903 870646671 180288160 567599481 505635532 532905072 113654231 846342143 833853896 850501363 312497262 602367491 685281303 766176343 38069885 284092483 29868508 520330298 235280568 458282553 919520305 978733982 571547081 711476899 162609616 972708577 897650513 987506103 787349800 962112546 682532658 682990293 354743737 871973722 591164123 653462014 996127851 996335724 248219968 616623030 998630142 999958322 860977616 922145362 405780671 781700688 38969664 889175617 630261469 987335470 142570058 951360765 6629299 321412753 797457365 943267907 890916389 904653045 529966546 975064887 617040392 984137537 957511013 980461842 949341274 954515895 187218569 583281748 110453096 592154324 618748395 723202606 405840912 802628933 652920165 897039715 117638408 642769364 416890081 623064567 150102266 632229115 344450622 696210390 92978966 204259673 992324206 997908126 604644382 903893832 592596467 612837184 87974948 149604418 242522495 525442142 536539219 861063112 338157744 948298761 800373874 922304361 216226779 715476803 61134336 467492726 530721830 623678262 510748635 867379365 60057590 969056390 233443699 747744401 567185981 796789995 298602300 837992397 766480755 829013399 884290689 920710995 893940731 976391751 759042074 953894386 70749396 732167416 891034350 998853274 133939771 992503234 559156838 616795466 222789568 506507645 715457400 818503714 16918629 119807623 433351371 947912408 670059967 780586292 62437887 80598633 243976297 566125413 363432527 644254888 887146780 890934278 87274894 864254392 905273226 991259401 865475169 910340482 957953547 974669986 265718854 406176202 999956153 999987055 192772055 825961921 437799445 545772541 543697881 673927722 914185464 985921266 383673355 663752512 53868944 249514165 384876238 912098725 641962376 644093605 996729199 997285055 627170745 656194634 754496058 925778220 367657543 619554357 850685821 990868122 237044152 275537873 265562702 288191662 862349046 983288476 705921312 765811733 81445481 729053699 690285712 966457357 301806092 304279831 800651030 990673045 593542754 961600388 668863848 745542353 307056268 671756735 788030664 943322036 360681471 867874700 879704585 939888209 356227042 969789722 114946267 145496001 302308048 734124146 54667692 873623947 642272146 681486008 39058523 172337398 427812257 650828700 892149 269487027 334213192 399944487 205662810 608477179 220917257 522472309 411221012 662098180 560204690 665787945 451220294 586170876 764669692 927169089 991795842 999354731 911178079 915637209 265682587 852261428 335469853 409068849 281777284 448933906 202134987 603446850 393302660 899487326 161327033 471355318 683561698 916286378 854307416 992928992 805402460 809256845 991342465 991834923 323114638 523970136 847438541 956262519 350124374 670762724 760520124 916731942 759910365 803454945 665482969 733535203 936540328 937307204 709504531 898119310 328260439 568329572 622619742 767342469 667989212 855952643 659662264 746189521 921121953 978940376 20936293 802851251 9438036 836885040 873890399 968642556 340290563 483881698 331863475 454776988 328978520 583363258 813492900 826897114 709028651 957666187 790577411 951133340 156253782 391657627 138530625 709290900 510888828 925653496 592691662 800443183 395415577 446334292 431047645 730134318 671473367 689039042 433008459 722216004 225451419 276883690 727029719 773024700 940481003 999217203 569930941 982058567 207960718 691946299 992822541 995419691 974569308 976395606 805881703 999015944 755422011 828537938 659261827 972455901 768248427 776568883 915602713 933643332 228399844 381001705 916928292 937162146 794427599 827703780 675184581 872655091 752260559 851912910 277982178 548171723 188608057 271205393 817488081 866758156 789059806 810000195 557243508 682477330 538247404 664752110 730232780 867053332 158434351 463623541 867240602 996029406 655224369 909117211 152477109 807602274 749506406 842083952 614386887 674278040 762016758 789102893 624868076 942617575 333618617 671956327 424333333 457114732 176978209 401125214 750926052 947595295 59385919 597184386 625064337 733548638 75347588 784786748 438547012 524603638 701013481 860533033 99608250 291963739 79888050 233738195 911461008 937393955 743789762 974898223 390755535 815867949 233232316 938189803 225015124 873229870 675519543 837285371 319335827 691170207 408582695 726238581 410245252 946746862 582158839 770029231 370562359 467982610 792425747 949971710 445955797 842798374 116964509 197279972 753059765 774933107 387356353 926730321 906647944 957176522 648999421 896179703 809911012 832126787 401831845 865166348 505198700 970991729 589788261 869232786 822938060 984874305 878797082 894479759 941897286 981313718 207447269 485119912 153395468 409845986 229221909 956484757 56633693 687337285 292715433 761663597 199554532 329174922 606314426 618501272 63970400 548597711 745683681 948191715 13309547 160210325 230600780 699043807 671492855 923998024 358288294 682381520 900029792 988593931 661319495 900052424 129355746 801043926 139866682 569728624 691003473 978419719 559942555 849304922 156120635 508038320 803390505 887330626 539279555 540387996 131802436 534338725 992848160 999445587 74007623 518380638 599720744 892943643 657431017 762884668 428198106 886554819 345678864 893880051 5740412 487068286 449330686 876696111 89190278 979862066 806021673 972978933 878404556 938051186 424505561 853944527 546195970 811015241 190773632 500278714 30703773 418980828 408887525 560517698 304130405 903267808 910331600 954656379 160376019 574436552 267203675 420350022 495933626 992061124 384263282 633181616 517598384 602847087 743520262 866120460 653380167 733081185 286304093 411950284 395097676 831589452 22008280 42639093 880659594 888007533 360095511 804573066 57027902 307942980 864216177 888235689 494141805 556003137 974307201 988449530 752200809 991155500 566393074 983136055 513165537 590941749 541885851 582224710 54198576 599864439 626532218 991070124 491297621 888884725 294406558 664885827 575651614 782303801 281276386 970794234 182730915 561141726 851065693 869110148 835844426 982335002 680648504 962751829 447697512 978974589 541889142 703665860 155773330 658779365 420558761 958926892 498477855 588265781 54711600 955772253 307915883 562467182 866462742 882144074 476571901 993568627 408630639 568943961 361319790 964516173 838127148 948764990 625635075 719789176 234596086 796874484 838573169 878576549 112080804 744548945 402049275 786930952 2098498 584487836 9777536 899548360 437052398 727831044 213125532 321954732 426073336 921802589 299848392 585958161 385719336 900383184 494697121 775948965 239821002 988774448 647165290 873346818 497563076 661987367 33323012 431609859 712010118 815533679 998201365 999797205 462254392 926989645 36986342 847259090 22309072 639002713 591822934 594082652 718161327 914799463 462747574 867188207 976531719 979415565 479995222 775259071 272692163 961690832 617684910 650175462 890001339 947276424 671739423 716350893 314314393 856082932 941632669 967167967 25929901 101597170 24218814 186222974 618175624 812864894 834277848 839487886 32464727 888345676 383854776 779713913 813211430 815275880 347254538 900046952 585326311 801001586 272140366 409805698 352978657 449790772 343888028 715353853 152112696 663661953 649818740 948791318 206507093 732051271 971089327 988741145 133751861 351180474 450616302 613299233 859181714 931067429 506372926 970813204 454157189 570095582 877607377 920070110 620781906 819242529 316050279 839236233 566901946 575961140 440011381 555648817 913598942 920197999 231433859 456798007 114382287 765028444 439430510 962596224 58273010 106837736 13721288 595010993 309385117 399658090 532163476 993117658 194198874 347988630 914178070 943683209 763348249 829692215 981193548 981981264 715958799 946108107 496167203 986342824 359546244 629536721 310659287 931291051 261901601 544087066 565825605 933623187 63544955 854861118 752829087 855867549 862831328 944943154 765460476 775540241 646433656 849146277 92367626 993036152 100067791 919138915 667687559 823834524 55014215 78623472 307459133 917518147 956458246 972424048 76503463 738263573 956690141 983523869 379052698 856271914 304568712 328788266 40064967 386905366 333526566 561764465 831906853 960759033 515800578 808920808 281890613 295711814 54094249 969594931 748624932 793468778 745639332 966648648 487048773 678053535 987463103 996023681 300054295 831592652 436155014 466944146 30506085 507553433 512893428 848009552 19279400 518779908 710572668 893547734 78696505 426943375 361201318 465451256 926963869 965826966 845153268 943736019 797168120 904786748 55290313 440595129 859673951 938751029 408765949 766778537 601635482 779985140 421027200 817421737 473635568 589453872 199312092 288510210 972302654 996710318 617472413 808794184 826742726 890008732 963162135 975710379 476990770 634790852 258379899 539255651 937910902 968403567 163393390 697367050 99393887 807383649 241251051 907136294 28668182 840983824 752298400 907069764 985277082 986157964 348919730 997027786 824520596 832459226 445021134 560714012 733964158 735055819 381785239 981421139 866810862 882381786 90445637 180651148 373619714 944028771 655877304 990982251 839453468 985889475 645672421 980117940 858360992 974282206 252634687 378094847 697889984 859179187 947620078 983825363 670533433 863335824 456657790 567290190 816814678 836366648 21928694 519687323 966664753 994189249 375537962 481468851 153319243 280535093 883300155 944478081 79744404 910700256 348791943 436030702 370176468 560999055 517612556 647629611 30201015 685057102 869181369 986089937 116922682 830744870 768858652 994868429 511506936 805295636 212799404 254721880 86173903 579697470 286222061 519116850 266016451 363662647 935622493 963084165 186686279 905163284 362801901 573797595 619675329 947209167 135538108 604953429 996467171 998506393 248010978 797191971 963625395 965201811 763658676 775042396 100552383 215636001 900481381 924166140 321872490 881494832 207246335 960467357 263657872 969796949 114357452 415966462 60644551 617368865 447915119 993379701 829035612 961102340 255566714 570480470 332985927 860117741 383695901 667455950 661244021 988352117 479017502 541580155 629194236 656992006 565821839 937262667 944290529 992003127 415468065 705928059 242405793 753317840 808977420 853970090 206886129 757269976 380519787 952248824 749582120 865915154 192454483 458169518 669810280 784570871 675572462 992263101 242721613 969342489 291049247 937059572 124574144 493757994 165690910 816966753 291755179 299243509 783452451 869612718 435435424 817757347 861917206 960976134 931742512 957742754 358717009 838777028 372036576 629246370 947827334 954335137 167401441 647394785 81852408 918559926 362980891 731607077 482410982 884985573 852165077 933986746 337482347 403854882 680604931 773424516 855445398 966540559 854636910 961299472 144245940 657453119 384375483 716523308 427243955 615055714 847771099 965322379 859151460 887789901 342775446 487569561 91849305 449504701 302197717 767816662 99591339 827958670 247860993 567751042 636550212 986551579 462166865 696946856 886525671 887746932 929418205 978820480 551702033 737222748 468865803 988418626 568780240 648383182 585458875 956864884 216795726 996010288 416340926 686220627 303270807 736531171 866222694 961389148 418056212 906635000 291337906 948092545 125310267 470238486 206847046 305430043 985538225 996987244 400657451 751690619 781893777 860745091 693493305 794228440 907506838 959903337 520505505 537236757 618976130 793973190 637956710 916075790 573795071 911431675 636279005 812732361 110311958 792464530 336508370 431071969 890792369 963325280 677357567 889480883 11090292 579039588 131000084 150248446 552514029 574684582 741193007 743130112 571533336 641877457 608051086 683642236 996523856 999006792 636612348 722676056 135109661 805788272 919426876 968101246 865897833 877497585 432860531 930400373 958898868 988891811 828163538 878898983 967504525 995490789 99956074 115372790 696449197 800850848 276314706 941221772 642454961 763383698 317998808 984948370 570992052 908241582 26669139 145725840 103309554 739727231 155648919 467551518 106481438 108175295 591492765 875351202 942103724 946284336 211138261 771688442 578450951 598959631 984425574 998027195 313172693 484292212 139635488 756094914 294800618 690553116 281516661 308289894 108554711 466065930 477390271 662202966 711700366 803843687 467096163 946453461 44293513 446755591 535044348 815718483 884653784 978901675 61525086 711778183 83497526 483924171 93907050 907130167 765305607 809619301 842345274 928786324 755293806 810115661 437955345 855513226 99897060 627897500 190746280 402695807 822349801 940846622 769944062 814857991 864121473 865770275 336198055 752186412 376616724 488397065 334963824 496608948 778916676 886792186 611738024 775655174 100212962 719968351 811670750 845931007 547843589 833783589 184982954 391311666 620613528 812498051 10883617 886523439 211558576 353400250 462992701 778830204 368772437 743661491 619620223 653017965 394686483 757769647 874028117 988078067 651396042 994736622 83728650 324174941 835121898 988717509 975246054 987286561 275285759 549884860 225791684 281354793 677594070 912889815 441469596 463503424 421201094 451632831 90798263 749669909 459498792 741195147 761198242 796979934 610400871 658386115 960989840 963140638 290636898 350777031 674010591 977139977 394073723 602555119 187614571 872173694 897557251 928205119 790976404 848227119 771635215 857709315 778638502 962179105 588521226 767080749 245128570 834923357 964479836 994555522 673715598 795786854 9256168 117787331 126294517 178327276 757215245 993311233 73065717 865278217 396887108 983602756 670973364 912454511 547300432 600993757 488167661 699390163 196375941 430080952 82455481 540874511 51766224 692761887 892604534 977728820 58803144 555932856 724544184 725460805 488373169 669908593 970800712 995394023 53568670 498002908 289252912 684514370 684562691 885359770 513698711 590755320 652565333 944825395 982425593 992403635 189274662 594327395 920127632 976838370 246984591 649431985 398970987 607851533 892210910 993360544 488653472 572446386 834044583 872031682 426936135 563166852 240097443 553842384 131840038 635652177 54191020 103389816 737726676 828982847 500174737 625153580 539864025 545240355 207182140 881460383 139070579 144480599 967166317 993172507 538097249 796302654 988880332 999261297 59902248 505147788 370624082 701234436 721019196 871024797 939670653 972260190 721307080 736091567 836663828 895566423 411012435 526744849 166115373 965591089 186343186 246685176 494788104 711881097 430146699 600634527 200171465 910566814 794130800 954043453 200491767 809746176 694775239 974681318 206928117 375723142 742347303 943887673 955117522 996832938 547376300 892619116 691513811 757042588 64149619 924900686 569594094 982530285 275383195 799428109 895519354 965531029 196723641 968410103 842243050 974241268 704576203 939374031 177239576 856163672 422885111 993191779 952248686 978425241 293015893 700963558 6711336 125404849 526194933 541663040 676446651 727206128 18946764 326886264 906919610 972247800 91427844 629982896 361064686 503995135 15809501 791613165 438945561 603758127 134392126 665799909 356852430 932799950 255663447 716340912 735053300 905912823 260869245 654513386 336512907 687307283 985971171 999222381 122135363 924051351 783013488 953707776 576144181 649235113 869635291 876983163 319760277 966821520 295901263 899565388 539154064 811531545 314068383 352553771 755589669 939465677 375116443 578384153 753150740 908008506 528061566 957616909 199386597 510396048 862709690 903509941 796435022 799504915 450866455 655422348 855730124 986841942 784667750 955621848 726211708 887253883 581758366 670774443 468052041 515263791 95159156 650321066 848668703 891322735 835681758 845853471 114631789 878414776 363745829 635620307 979858468 981223970 740696249 946843818 758429750 968854191 184338737 368494888 577565212 812430113 19889888 857458714 187078695 946605881 624416265 907943244 318867235 526238323 87285578 389944385 944557402 975870798 394247201 910970275 86410015 600356322 586564554 731774337 819063778 958473342 264514424 739926416 65281982 209388621 843903559 852257426 214936119 481839464 679456638 819089376 700941435 916294909 832532499 927364221 706011040 852259790 349218403 969612786 740519715 967678641 775452860 899188072 89461613 188122155 751262598 776516657 891011877 983240195 816763055 943209208 823990821 975227923 878330006 895454513 10002418 580930667 324348519 932022039 783095888 896658586 396320056 720656299 285760862 770325426 224828269 500567753 385588557 622482198 21198416 782774705 625049765 664409200 372536695 696726690 173378619 300100597 523890795 853622098 145402760 195447024 646213080 800177790 272774528 652526474 917145274 957053688 983172180 996461597 36911905 300317785 241167599 433270324 203498089 573922715 705489122 751904511 61724530 620867906 999695219 999778662 263144215 958745594 450562278 905503441 225833025 246177019 727160666 728919277 5856085 266598291 742790514 939963021 43841789 164305314 91527083 398439741 705222948 849934273 42801950 878197982 779559735 898121911 232295345 538985657 268492808 640389271 388458881 593053037 460085815 883916789 317967105 395013769 570805873 735874586 716473055 991809801 486842378 502362805 695874097 957554448 812707390 969076907 419795490 719386590 322908819 791085346 997224903 999940532 291800298 346518618 791259457 901163853 959805865 999387154 10524937 150680384 882103895 914515983 743401642 942005582 598607012 726406912 303824102 812985336 534763532 824753137 809181841 839406726 346537520 386254780 741903308 964428559 674737026 724979920 725858091 887533200 419806047 886079959 505501877 649713086 635234016 743871374 864459172 957082865 598580284 986537643 880106430 954680804 87960875 198339972 332552267 536135556 861177917 942138476 672103063 673239700 513036071 871268520 892687967 904910281 7801593 719856802 844786385 905962047 507357872 612721981 339956053 390547754 833402346 924266299 225711257 420527289 401829261 411853867 92078206 448233392 705974080 987562694 621829530 999329253 225619172 348398964 287514599 456753936 17081798 171449798 494247761 991875708 765642722 849095388 656279523 662083141 233530313 733254753 297894865 750239863 400170589 717199749 98036894 412013647 677300738 975960908 416404198 707482909 292943547 433310499 497064606 627906849 144655976 781513469 107140647 715017112 704108415 999247826 877906725 939229121 437560648 567298633 337716189 627621768 462141177 753006364 164925805 235800832 712551105 977633050 78407343 663597188 391982413 810648048 732514617 795868893 213930642 755856989 538172739 878218486 462145472 507362765 980152906 992915624 747113152 769855717 409646700 945026285 278040180 525414326 984549953 998554107 692853201 768018321 564241409 633360274 213746821 803284078 319396430 558728172 830847441 861043390 520725556 798467235 63684217 392112373 855162763 902128997 529590710 960334641 786341730 839382494 228535883 704265996 269334278 962913262 956598044 977228121 51816230 549166741 871402628 958138139 919406762 940797099 560376846 690868979 390779354 990172059 859204061 947241282 203880980 796387150 159750704 679831092 123088274 867974812 322092217 871501178 57079833 548373278 563334654 925013380 495302553 724819574 215715229 671573599 564447139 768653848 66729196 832686692 316107464 718712720 770327984 993720172 276906205 833890387 366077405 547593127 573190414 806444600 691928695 891876940 171017386 625736198 27331353 780474703 741156265 960225786 153572831 375033242 218854816 473895803 534870467 569474048 256953284 626243999 539103685 728790396 345570188 385932257 166295959 861350131 558323772 766960463 765872505 841772535 275472827 923998964 546760838 942080260 494170434 532283622 628540216 815311749 876852042 904621521 380430407 685129042 660834746 963506832 538178819 783489194 284319386 726404349 846838190 900363540 180168587 507604120 609674416 937366296 135228185 872873146 962425591 990178598 135110116 594567627 241182958 279047726 835641384 938726839 693017657 963727964 421769228 427330125 755473293 837762491 469303892 481252697 703171476 918015158 174413973 561726832 880012709 887550006 472280803 767486317 681845350 938883905 964865695 972190551 637491882 825667151 413937458 450557248 786878908 859451284 191919901 280270312 363700871 556035312 325416427 453791869 8291750 231301458 504592286 754541485 173948747 918438701 498381119 970700195 691403556 705465384 469674544 977956946 886668458 909029680 841171572 843397647 15472941 65951650 284695933 970752275 544551931 605743275 591039616 950380325 557589526 681106119 202931442 396146770 573578488 757902641 35732867 562557416 168881696 273442977 563324378 791148067 413430661 643419575 43487077 97809349 131448250 880077903 911698853 956326819 823494053 971284623 538040506 601133528 602998668 717465235 505654119 775182988 386829246 827081250 803771611 879365617 449158163 609736348 19110136 433701059 456554190 578736237 852504236 931883296 131560087 304938877 489747157 594850530 70370403 972455466 915722476 950097318 209556294 464376002 659323357 898465421 465716886 566976152 349798655 890051271 104693546 601891146 762487867 892698220 420245275 699269137 518412119 520013606 900796681 944074508 580322062 626804241 974627278 978686009 753122061 984154350 697523047 710229326 450489799 496649762 628900290 722467353 95153419 261910423 509225767 751791028 153282497 329504669 326727072 605026100 390040056 967219289 803678133 902797273 122742412 329858865 116310062 833222376 981765217 989200356 574971965 999132465 666414052 966961078 936608188 969548232 165148926 674646078 54021455 894938152 470956062 738083818 243138053 979109293 295019592 738543207 206007483 238180930 646692456 941259502 278819880 737334310 25591938 741174924 902703146 976688713 643504105 999967735 893011400 945809260 730233581 744385681 419114212 943058882 906512737 989281432 840742094 968632878 705422641 954277507 748245453 910729472 764143342 782801390 508249376 713385275 556633719 649731540 463012531 951752603 985478972 991695494 868842183 949034528 986747081 993782068 632492063 953402649 623141060 899982490 866027137 991449409 455747926 977705534 433593921 935002050 543280931 921100710 489046766 605105796 744184171 899049040 793746527 858911217 367163364 640784588 919486097 954851181 57435511 590503901 505552382 897921906 917072240 966320052 210016937 222273433 970910955 989729968 412874315 730936435 980224920 999909898 213526645 797064877 26272429 157845367 718264069 783507144 106723860 893112570 150403325 563382151 39401983 775919114 880444850 989494451 453292668 503595808 978518050 993458762 760414154 984559249 910650634 919546854 774328764 911828963 553547586 672806037 374932273 716001042 72837485 386131094 603863876 807607858 353610015 783949750 862763974 937316291 294394376 535732001 568579162 937625655 163686427 409243317 506398958 552852783 726568187 901130696 834278377 944852728 84747373 257811171 473358912 770948331 988499553 996600685 752630592 992643324 861908148 996368979 548358225 798207451 969812487 985300137 876880966 957081330 338058150 653217573 681514018 796450101 66293680 251016243 434637972 503841758 974644299 996340025 300472015 446902728 704965433 833065093 130289663 574427278 458197555 752997429 967588737 994331547 530692144 737991749 162828144 406959151 595505999 624739899 918548676 971269366 376549246 516965345 387500388 437844556 884506110 960881193 466885163 895086188 23534640 812367594 419339411 522087151 812867941 821392550 550390934 563001618 396388369 618324734 777353459 921977531 638124663 793572999 376758167 427502176 490482379 606591121 776397191 993328680 974988307 986537987 481551733 797740657 925110088 933233745 124927785 417258705 710807623 857414735 861327044 928761575 709786686 760087146 13712963 492837283 220656870 674225663 488851048 886848823 663532919 748023018 188546315 739882353 284435444 891719643 963740761 975747431 105968397 562116394 670699020 888164373 403456411 983669650 235763178 841994044 102904440 769717169 807616523 919364779 645912816 910620585 794378418 960631911 404425611 586574048 265583858 901092662 625368746 708345086 772914143 927631138 516741816 913612995 876056507 968002017 706577659 897607047 23430120 945187555 424640347 792579601 783598449 989641098 308999147 726298270 167458912 429481625 880046733 983663630 433141199 811758902 292283710 712515028 616728105 644935044 490156088 868068940 791973206 946054005 822112099 905515490 571111718 763998591 822073954 980782371 712155251 870945604 592123314 827877049 688962174 764212315 959562583 968386044 581305756 920228579 649706541 714889404 532724243 786338897 164263610 227264564 885479434 933350726 433314560 905511305 723627465 731079428 722704261 930784461 807598056 895686026 615689978 634123523 283110580 621459134 334457492 420962718 734679246 749662237 935883082 997537789 188761592 504455912 354832064 855315841 613394923 835382873 584525585 760836480 814108279 819565733 315040326 497262099 982888274 985785081 628676208 983688492 785815115 892588867 207879551 284318098 913750997 943101135 791543261 865092304 579707194 815257544 446095079 710484680 908896866 977865043 637466433 926612238 982704971 994483187 996288622 999509296 448200759 576078256 20802693 699618026 132969253 480565932 245526491 799272637 662994080 810299013 270120527 344281920 893180487 934945183 315093332 868738245 35961112 710937911 867031483 879045775 968244686 980648801 561031147 832020556 452129547 765454657 729360442 921164967 881695808 905202563 310492329 726871986 530204232 975841394 780383372 878569428 271145600 324522717 745472716 756417214 23358552 953535653 118296077 250437159 345134577 863472745 498058638 941506884 553381201 731745206 212937778 639265419 549774846 903059270 40620118 997631484 720346965 910673091 614099649 927109431 185248357 823516724 6118868 811907435 637843140 845530903 520761033 615245695 459963902 934840863 472727572 910490940 86758727 269258169 453514911 780062904 330726019 724477855 998514251 999379490 793448902 933487647 760766588 849817727 841014070 881995021 591104622 647234318 180195206 608040457 583476860 781055708 656429713 881672476 970975008 983832315 733479556 950379114 604855671 661800442 935845164 960943475 104937319 233497812 376093706 641609458 954466659 956844243 39124502 159609001 748971048 765274310 780952051 850391240 332949634 620732278 443973719 983493915 308792377 770783684 29921800 743050785 966365139 978052841 381967513 897172404 163794358 296194793 395159676 912524198 350718231 941476327 325126567 784002400 97392666 809943739 117094574 788655592 994901457 996034007 656671903 680756149 301215523 314392116 593169525 795634279 142046201 389933159 25851182 986830482 422886756 707855057 549100864 868209609 940255882 966901598 266592695 739813336 395986705 484639505 111163833 529294918 366473322 962011756 976138680 978003024 407959010 446809630 514008907 939415133 348603912 789331988 308200718 455773761 432819247 661780394 668849894 998527718 175210517 828536496 347872226 846613035 207802059 273979971 679431438 799575286 62191904 940684505 914905101 980422537 283301773 800596334 716247086 899211218 510943095 882121751 109034646 316594475 114653545 413611126 372630811 954067579 340366392 659652308 900735524 981184881 169553624 803420541 317605960 713203088 8740217 216098458 941548833 948135547 582093183 655894722 406267110 850439116 687186706 784083832 516361302 833145058 117039635 641648874 377879166 872714965 20369365 528259502 761693094 843362740 985997574 986452189 122348975 348133902 568325227 972181711 378841404 430875223 661952905 930569497 894596465 998314783 223048075 596774563 947788796 956335237 501290874 924052218 891593342 952015355 843248030 851506029 887456844 905397965 108418726 823666197 254484224 497551850 262578455 553824171 557370821 592154870 556304598 586336934 498723347 958044144 729516356 945553432 301186069 571554038 454737751 951082903 309364518 618207715 925775851 946624997 551873090 926258643 961592768 970175775 985389581 994956032 654440714 746639676 549950776 795098892 970285468 994520593 710264168 955943125 439940415 689601126 92366379 333493869 652965537 659306097 484179334 678913524 634876217 834589511 761478279 879823679 419423098 607697348 798714898 832146083 224992368 727967070 259224577 470440558 196238192 563887781 894652598 968464972 751405757 925562230 60518774 490106532 561638069 598618040 974703494 993014571 245783002 716693911 941278135 973451964 731314705 988274161 375545287 547146208 705609649 826266610 793847449 883047162 676882847 822593686 748511609 906101737 359911553 571056927 107335494 349494138 678004442 726921588 885511235 916070328 883412483 902973092 445389258 743612421 727405221 862779307 491951439 917236583 584711883 818288944 666760868 937482520 397468935 585018290 790231778 868412643 810330483 915635354 218305312 747580399 374652595 901684804 855106090 935849995 70765207 802116330 197252492 644907842 902774267 961087612 991418901 997628767 707727631 924181646 139040828 871971676 769797010 915763769 551365140 722473388 940655925 961057770 715693469 802019277 756691375 782225477 430977168 936410040 318919476 419073478 38268218 637390554 678792610 881895330 61355463 506836530 725766039 918297314 118195632 629089663 95458543 114343741 192985391 435287497 340769689 542217635 640772390 767540983 996165963 996892727 274499512 889465241 567893464 698740539 901115031 919503535 176293300 658794028 252413000 549285486 612769843 745754398 371546050 559436289 763438319 837036697 792493073 872948007 574777689 922190536 450749556 958947482 305361780 957142274 896401191 989154184 234537306 345511659 132563803 743107154 314978207 589058332 934255616 996402826 360458659 509039645 93620056 909034198 872419800 890421435 335725262 908553207 104353880 650372700 183813220 990789323 548123382 666846785 241793046 698666780 844838128 861736872 876580934 984326867 60403981 859890630 92784584 265680407 433130369 683690733 374792214 692847806 866987491 948791577 163271384 237502875 156513266 407858260 462795118 652126702 146838227 880495376 447512734 819024323 340912466 734388809 398040851 562781902 930982062 934265519 944163506 968085491 293920624 340996804 737002982 882464692 57074602 489255890 405816017 988897961 42121479 691437474 373287398 604395935 369268678 786585698 50764060 967753912 963654171 972333223 107046529 428573656 2435152 988078869 721062293 919588539 5884443 793969496 385761904 672652124 491395572 749662048 651064893 963514405 240624480 992776283 956580531 990184452 712256657 811517353 634765551 841586617 191206161 922832258 949803810 991632039 592232884 611935875 74438543 895884607 568262037 970565914 684283016 901792461 424685385 432557465 246417238 805082099 144860921 190204412 50826410 284474762 467019320 706939819 387879671 747687160 432913410 778217396 847861990 919583481 275916118 289278640 717870636 720661536 281302786 753667233 166414640 557716781 830575835 957496502 557637151 892187964 728242361 963531348 667244830 730000531 333081493 709830781 583584195 659849820 954308729 983441645 417912991 839383126 897345275 977693973 92860607 185713344 821161406 867712920 283346091 474923926 972750231 985151159 908589922 947430859 6271504 451101011 255672408 898897593 126034736 274868526 74571002 611582115 916033950 942822406 217642971 713948463 412442565 703019157 133585004 499036952 973707477 978126419 830894665 938040511 36244155 624570273 576251622 643528848 224494143 873097813 697111729 793623904 173522301 977129869 172129058 186736742 821451608 931414682 315472203 899973607 726289415 987313562 432311219 595684489 872993427 970460442 208287042 765272406 319451651 350262296 161283190 673078028 889158993 898003777 271025017 592330406 801793135 882837147 67936488 422512629 33834464 123011650 318803463 834514815 153557976 928306653 465367135 607618250 352676528 833923550 323973387 343881066 973488846 989404418 578262938 903169090 181119750 460780569 547797804 632860379 370622285 810651004 310138795 931287162 795631438 949695770 806515906 978137913 167259558 504818537 653141375 812507964 762618465 769229394 857896645 953183768 639121482 994205963 887452801 887707855 726219664 905142795 298756955 498002126 964468799 968249342 211806966 996345182 125381868 200463019 345399006 976744073 270951853 334042654 483942700 691035572 163425029 209233657 453349510 663969506 473982810 825034244 670849945 974119402 808003184 817110937 275823471 999869881 451462275 831939264 351508951 805665678 879437398 969744597 794008731 819078763 558403224 759426902 918148928 942964962 850879948 926484415 818060338 927853968 660994655 721595401 621012234 867414727 983886769 991626122 685328738 975223072 95219636 610791378 187302018 892651386 995812423 996016639 73453544 232884553 492661991 892854994 385504895 684179998 117934911 931960682 157024959 571709749 151267077 969067734 847115440 966854207 300765407 691629076 329489289 479561273 25732162 123700260 320148619 614078706 845337156 859416741 552630128 690102798 686248782 912307944 970967308 995584855 524955141 960881554 196356909 564965881 180081322 795003486 612090599 784537121 608693811 661533798 376737613 753437870 40960286 519123802 490184947 793329411 881090593 969199066 705729469 827216452 140342052 937410899 64342806 528184437 791503582 835949011 749556160 949913923 665767420 894874351 683795741 855938236 44871348 167638466 853854902 970763003 996501219 997768701 538313270 766915067 336079867 734162635 190956460 589739744 848093379 908428687 768035599 814472222 577496436 995726651 120221373 702062640 648278025 962914996 729146482 852203054 269507205 804488554 222576382 350951677 908111807 991821813 621647161 840724159 320092114 511242364 577746780 961238885 54759761 818600341 992938225 996150434 631622927 881572109 526157220 687289149 656748542 795486771 29653552 327690729 260240956 607076525 786194053 860274597 437435427 446095833 62710962 468857546 525151373 890242950 325558994 447317332 130972973 601586524 60133553 471102016 550882097 843134127 532453687 688386845 988211263 997877160 191312152 194292837 670760082 962970877 652040680 804372572 373341287 770704033 468613426 524636093 421832810 646219796 837194436 902858178 552578234 880929149 916894998 929782926 166852789 729769736 319779035 689991049 80090702 330388881 562566805 961507982 780871721 917024302 383285054 531787977 544109014 662672330 873270421 901788063 377060784 873512843 998160938 999809880 644295949 698584133 909359779 938615757 457877443 806207460 661810804 979527468 941871777 943407330 579335822 789708309 703258278 931410091 541469792 723555666 984909852 986449939 934271724 942269950 258738353 797274778 865988175 921887733 646266676 917444257 204993462 877175109 811724216 867250285 100407309 986045055 125779920 126634696 228943230 332019867 715485722 819259728 616512943 680642926 83810212 732860252 285051144 379819833 982459533 990904109 212113153 327719855 141691392 991594763 51880544 506124914 92389884 559809346 69879602 774832371 50811134 764504018 172998306 375906263 30940923 505173252 443863802 893060553 790391498 862680313 823121278 929289811 224022263 996304229 722195438 803658642 807391437 894076699 676512270 695427847 476673550 618120027 91049065 945182277 200247022 203195151 24549294 565453111 314857293 462579902 794990153 910631281 159631326 318180822 385284283 541210256 437500318 619771039 966214147 984638306 268163447 449369338 787136837 974757485 155855899 932035205 774797010 942966634 667355002 866278127 960447454 979371066 705560929 937159866 240221220 710982484 658375203 801008929 524861638 576202069 333560822 900216337 650563835 865550735 882131605 910836165 774070165 918930907 269239787 864942798 74582567 922392675 332815126 761503336 901210113 997157915 153474253 430711215 469363804 751386717 955316626 972890798 706640217 900477500 866515103 896622763 785486666 814858549 674132961 955310784 305736632 861838982 759038010 802720436 411086014 909424390 406726002 514413673 64738074 587945936 963454610 965949111 474005480 536863346 929034757 986358283 368658535 573473716 567867862 585307255 350923941 993831589 273855901 851552941 108530599 437717286 991215761 996495346 147448707 340673069 671104462 943878977 233740058 961163145 578114889 806456689 268721671 361804219 309272020 758750736 919009612 972853379 878037891 927535672 445884572 859187599 752399493 925204072 45763644 175649063 727206141 815001444 178707419 282999241 257824217 718897254 741246118 995335864 52185675 476329256 19542869 200162725 393514406 868380108 839516659 988766920 836153257 943906614 274578217 745020270 251163059 894922581 456172939 656973631 648072829 899334850 20165355 914358251 709299415 929356503 195604153 251140480 195116774 833692920 960788517 968490637 138300233 576973912 753337477 970594776 658806189 661992432 558486971 821100590 931288396 932363481 980260999 994172433 174120595 241812964 174112459 296607163 673502197 979655974 329112640 715634562 466899486 998813934 999913801 999938466 145097842 197102907 236883669 791955539 86778938 617675381 503716826 545897487 440534369 892777014 293083432 478957341 110407051 667466037 649668835 964685715 923692279 987642781 54890067 242305962 652424440 732736663 526220703 643137350 217753226 439776908 941990541 962561321 341772778 527085045 278897839 938467054 172434384 196613058 641323718 784273766 178628844 656288240 80958002 179509124 766878327 812721979 995192520 998618634 214156292 593947628 119618813 642592700 422164050 559142706 343510541 374277843 305918388 656574811 803608643 843192044 993676752 994616718 160843602 843066330 836370331 867518946 201639209 380832796 321720368 905636986 204725440 265883333 104476460 444038682 565387688 736867849 390914183 921841999 229422652 269267638 651297498 724422232 281709220 724960853 66306270 832888091 983761465 988806859 309328971 980689140 125342153 158976524 690998650 908138671 961200865 964898663 875363278 914163370 4086866 276984639 179269367 781136607 451184947 589391890 635365970 897514792 337379830 754863595 153109721 947591757 146958678 935845615 622631214 658646712 589011359 933333852 634656445 953984549 154051250 617813204 412010333 721672670 524631461 761241734 365559966 891622469 225139035 347395177 674502279 710462188 6732708 92302260 941757274 971779825 45067477 329174616 305031098 986933643 992008009 997901374 76932798 192402759 158496945 852349978 656902539 820667629 870209349 924717430 351846594 958083716 159816758 481675973 24738046 616997251 153370370 516179031 944877828 952445777 501410342 741895772 915321424 919333323 568223280 740200263 218293274 629713230 765233268 830387748 225172244 932870485 165023816 704555019 868100173 920519253 468046053 975808343 362411717 393590970 521971197 837684382 520555387 989246686 848059507 855040041 942591321 959522736 242126995 963243298 520711420 621026959 872184795 927961947 756022384 774447896 380990819 872940549 372045038 912289295 201732109 918696026 487935750 942327368 330426229 722654481 609050355 617482358 133808220 777011973 860626898 900497395 352294585 715036356 624353867 901195788 847284130 991772465 161979577 833145811 353404066 368877462 344881152 485683167 621843643 927249800 372418257 566077749 472089334 996455848 575046833 947258133 457315065 495632045 41531414 184606626 189655710 904346062 994402968 994821410 568035597 822326726 123294588 741960671 678096541 765965446 645820940 691053353 645074690 733276692 38433916 849837714 973678066 978619162 469049337 921450865 938591638 975920350 617413690 995455881 543484485 571323934 685399090 812465079 481715761 927211497 713898882 870457496 624015043 843522988 166214704 277449711 77752507 737965945 845037791 860164810 671532787 854852607 192172517 229186783 820655903 882891680 676365031 877138395 950295901 953303780 794932164 953532572 369597537 991210974 282345100 396049904 865054381 994880377 131128183 763964498 220103716 298298434 139144070 929768067 720869674 872450189 501889428 611317764 283494214 558305685 717455140 968339738 671438590 715913459 642683737 708491237 126975151 421957063 338797775 902507503 864356116 890634769 941121450 987584592 859265422 994613894 237353128 887755037 730642263 774959044 127642232 305004323 897156153 969616169 632618361 770259595 607486532 983045418 120973258 392615978 214701667 541851479 230485485 474456927 558296455 995968639 109361669 845705975 715173265 982016439 757934674 910570604 218687278 530002802 123518676 124505362 377577044 823028106 600088901 970357714 401215367 833576686 741660534 877064493 988399474 989437630 498931143 862449193 406927484 448779916 904484142 944884728 237757080 549941855 445815754 468587945 761823252 970806097 131143078 985923867 623878622 710452133 623176080 752765233 283466802 656517313 450555641 837893668 705426503 878817006 385454475 513621431 591750739 950711646 659155553 929113817 183217516 808357724 853602304 953668493 148673578 291457205 479020822 523517636 780018766 919958363 437991649 540404315 834445726 855039442 369963235 586037536 745882357 812781959 193109192 337400009 891738740 976541573 717234127 722089026 868346928 969186273 311082758 643641548 954925849 986123683 766877172 775913941 962934725 993506042 484999491 756362907 422641222 554476559 318145336 751444727 86727675 699220874 163568071 360066466 221140412 368555697 709849463 783166763 388447870 994564371 4817041 503833344 827387963 865075785 569305498 926548663 999689830 999844593 839840992 895217610 422910055 782008646 847981054 899961193 196255290 320877233 190789255 217886963 190988387 238657076 324256910 949318621 973794730 977125711 564250499 671253370 983542742 992978341 962811115 996272872 254429055 273357311 54742149 703841295 742579733 756279061 796286497 930254149 386360089 764586352 497401573 813470587 439575377 777670806 174688051 948187385 236831126 916582242 985949338 994045754 446363169 830375770 900414355 930877073 867576000 937213795 541716433 811908794 415098923 753794227 269843983 350393618 577067758 945429481 220394149 699794381 730454629 912724837 638294556 898452357 345916763 350389239 411716946 782303815 445592886 832324784 464081518 797387978 524383368 600068274 333933077 604908946 208759177 473418596 488544302 541670033 432125420 517220902 56049231 237462679 768972359 928088438 663102743 945927145 910234302 991800820 969964545 989016889 470840556 758646645 856241730 875776165 689371004 755169475 123206322 336352696 868472170 962842024 736252036 871814931 901970531 983262118 834339204 879333199 948336955 964278913 53387731 933773494 590927562 658282742 431938811 450763176 825209727 866325429 159636960 611531438 581963190 587854962 77524010 708126782 371283928 628426168 487469041 832935426 207548063 649643485 997054745 997061506 375996118 893226987 359403075 949226266 844035332 921983501 674424510 985217533 634562817 997103583 79737348 997673673 155516929 615296337 171447087 565001327 615045773 791011196 356461222 657001731 288337716 975607070 428594728 722945810 47958735 376082052 465344036 633965356 723399254 824084249 281136062 488078075 870990077 982548719 62897400 955155345 144215476 675216093 940984240 943249772 165253065 326093370 429250907 812304417 546656929 722261512 181425648 195384845 890562272 966840906 991152655 996685873 439075951 985806322 850217704 982788582 339501809 702414615 966644006 990915445 795259446 865284467 348291049 977862839 937621584 981678505 288603169 469728283 683805739 996202290 469775353 813474156 908013183 969590008 978979313 999095220 778851660 961122801 890334590 944338133 931978443 958750499 124887583 167426131 347435289 448889227 3379784 500048503 701605747 741583221 276536146 724077218 103857596 164424889 44813043 580516002 841956510 963342910 293901052 451572139 698504793 981127184 487328623 501385482 413074777 447343546 287859517 894214003 948765674 974149779 272012782 924868446 442085533 718234441 427202831 431973232 486350211 690629255 269904628 918102145 979433701 982480441 890559117 961069003 658569331 892865390 801873513 959620034 253254379 346736340 281396157 883978390 10181713 40266628 243579709 671467431 867667256 915536015 442223708 824453462 511049316 613967460 134283394 312290077 114868241 930004032 57121321 783056246 433004093 609253998 331472998 603438716 395740895 572272864 107263721 124370065 96389428 787116735 290520125 658540110 765302408 884458843 545666916 723352411 239650068 718508637 800708394 818612989 454419770 719834269 701775814 713530142 265980007 582287513 748260378 789624660 947279200 983190447 728060684 795976087 521026587 756073295 812132970 879141935 807226096 814849315 518902171 993060115 728342484 966105097 647426019 922312824 738368827 824668798 470284922 951828131 884448866 983553795 937898986 983122023 971058771 982622671 578982517 891647191 822823275 852866143 273562955 873077947 736432731 976617932 240125257 976843825 630663648 748489343 396868498 720100238 357587782 446558397 672897687 814475909 885176879 888415516 705972079 857180213 950685598 974140097 639998103 988352808 414353944 565228890 358612778 672673292 966706079 990481994 119267236 267206022 240347485 797875046 718381898 726369070 505426144 761578831 268912774 567608427 136059986 429657046 651461498 700538182 425538119 759150700 389903318 572683898 67709960 482566171 432848183 535874988 22190522 116172355 802248039 970405005 749800575 972805930 595771212 781992800 491948338 825323057 263050098 502179652 560747443 942674937 566898409 849567919 669340822 826720674 334333449 584826523 969620912 998486877 341854774 694172951 739928011 877181352 367094578 912656756 136765714 361105489 266420016 871266491 56667875 996417046 9391586 23386954 939486943 996974256 516714502 763121388 77182264 769358220 884771100 939415158 116823126 167908396 605677301 965119151 938524056 994688328 611113647 908738460 258306463 797451692 892215870 968208634 479277146 907598746 325101795 538852974 69628147 948481308 123111549 869451987 142502975 377050179 25751694 793243144 512576150 729663909 146354474 489425724 388974167 811950234 922799952 939130629 699500307 801708967 741417589 919092244 122242187 842468569 945567601 999880808 824547496 940505497 971685683 981109886 311199223 392622959 463188430 857108808 348587658 779760851 130605075 348514668 649758934 790620040 215875173 774296920 716386452 955189066 973117415 991531258 644288167 906956299 457928745 577657403 558218521 954538266 150065263 733914133 379794 513239158 729451336 949253119 826112208 923511372 98241504 186857501 586586948 651063869 555547470 690056961 327356417 789761378 695229884 923546664 200860931 477091540 791940678 886165924 488742965 686346098 247698466 426509251 429523343 661271582 720058403 926900402 288075755 781451981 667985696 820252824 280766621 972054091 121426573 635104793 320441276 717603476 254924044 571623700 162350513 419553964 121194927 155592471 158591548 924349224 408618846 632111437 380209910 500854689 548665435 954135288 265177782 893211204 535651412 900307133 829458430 892678310 478991364 569193284 416959367 950362817 650982966 976853032 304592391 439472709 566220761 657686565 993557915 996409869 764682386 778755467 83780178 301216966 651471745 886164706 850756137 911153662 336806393 369957253 29789383 872104399 467118730 994134441 767462253 986444309 658059609 999149200 54344029 210876036 538547097 763909772 962575669 990177657 685312845 720667854 38739084 964322227 49753454 847901669 968923576 980392197 146646489 436319693 858917432 861261599 614364855 832679443 61779246 663482048 412060136 509007372 515677519 658049863 755396577 999680305 748894299 785183556 392398150 932702511 434171203 503215342 272894965 329746212 671113562 736214852 39236717 977875428 394630152 531210831 280482276 847017874 461104463 749141536 144829064 825269003 233088136 870093860 578590740 866112368 708030400 829834278 888101026 899758766 841796676 881443162 752648967 767149891 385296276 796240673 415455559 533843074 527997848 974880968 304483949 555661947 313099476 863843569 883168435 970148397 218861980 234651937 517219437 914425634 744582906 793860811 15407580 967319377 246157216 910431193 355245176 605504178 261486231 925088084 426463116 577405984 825229379 874831049 859426508 913980747 469826204 861446715 818323922 852246300 701451635 888526263 463584882 870081004 709862559 755390694 629040779 727689732 762186489 924465014 660517585 701728086 540314270 643982509 512974472 602035050 679233949 915432665 551901493 553083883 13340863 433799193 560076393 964516831 698461818 858935368 769555045 941299894 836725430 895296048 213162842 805788932 319711159 856365619 523835678 983748994 493169839 964640345 229161053 680307424 69906905 244563276 981761579 984458237 383898025 579855851 527775658 718331563 826318723 840158245 440698179 467045540 614548703 891957727 172391394 800139062 624470308 963282571 201933641 840037321 860472642 947603163 402225652 424344195 522974817 864821475 184214366 488828543 763342794 878175032 867859276 906958669 292094518 485374009 235487431 891181901 276159393 953458223 77750383 292474071 896899540 955837838 780603734 781775008 542925312 631166024 849777622 872716278 253625340 633577102 745765228 990566985 491116127 636065839 564643804 587759701 182936327 394829405 953654929 998271452 2547364 995306939 436323686 942564015 565953053 934416399 253401266 919447806 281780047 688282996 328290337 863165357 253211154 841081242 962201698 969287769 688513307 752338168 749444532 852587041 816078441 821606007 901487147 998833782 147403209 939213527 877469252 889517094 572922697 805732752 184932219 670093967 751363246 788112115 311825636 612837310 227300038 737585833 458408229 675528316 100330718 888791557 814538174 867923304 545701977 775819194 855429393 893525569 318894064 596173914 155296174 457805542 194454846 238027793 656535857 932253385 779898130 810263838 923737927 974302824 653085996 715503818 534753151 821732236 716545704 950689573 230852028 305226647 665990253 966749042 119218404 498362510 379581976 920115922 427136278 756279879 146068719 394799246 714742358 805180748 181934980 289501356 295225187 308733633 21124217 378838107 770490108 851345582 143966440 792280480 748602344 778745113 297467522 595632230 744306569 984620594 199978542 467835199 478861973 994042532 333124802 597530060 858349105 879859390 74651541 538958124 337677467 649214463 342160160 516575401 754735736 905858077 65205486 127274313 560531016 561321845 851378994 927154633 84477358 801111340 883966028 976186477 195082039 899035420 981274711 990608163 968013493 969017388 311719672 882514311 422047673 641567943 978523109 997685496 847606660 936128490 397493134 758233971 233582862 349824636 268982908 943111977 673141144 715246294 472455424 488577355 405053086 948604629 877615578 989224248 20659589 715987138 619538279 700502617 879522060 982341530 780000404 967119783 932156960 969258275 114978017 926652415 429762411 760934652 999260184 999729649 377933070 592134305 551560359 573006890 762291718 838340873 647223555 835025404 867889509 904274860 616048067 869923179 706158900 993146906 847869711 990043789 873834000 902470742 629483 874100936 640881396 762839642 420222341 840966417 431651039 898219217 667535575 997719049 649423897 690421642 144233654 544297619 569414488 790425422 711982550 987925451 256677383 762312030 636302396 975676152 749480195 969793916 964473018 972449737 527962632 923019085 385168774 504879325 546125534 858760629 692182979 866885276 617782425 678877783 288911322 954953706 338355712 982738689 658205991 675078244 29688582 425405538 458034548 709833088 417311761 811106380 466659341 842056442 333094176 641885972 609479326 815418821 727876043 770370661 136878021 361331199 285495232 822467855 10904424 146241462 842457760 967163443 373676982 808941765 616308497 886134616 577723892 836546398 365821151 893144951 733322245 786015565 101421702 511515015 950059006 998771842 740793785 833407807 973392691 994885853 374972439 640698360 114274610 776718089 101008267 831455385 379623465 764690917 537600499 972974543 186971777 756475212 176424482 861311359 177350676 843613232 46730613 89151103 4784262 47363119 77294995 599568704 415721218 993102421 168787650 726409465 149442886 581926656 412793989 608666060 490976937 644070266 262455520 438736268 743449965 947236402 453613531 723103521 843033433 861275720 210420964 905463345 483727665 570831568 749218285 830860699 536006746 680297030 288984804 420058864 921313151 984306129 67533220 842494063 649774783 873663937 294022443 539200589 665595335 784693514 827502661 878375895 84769385 574786004 107572010 378257911 655639910 739109615 886467821 887238301 741201550 868775918 895695342 943221678 744337575 792578986 753596968 953712798 834591415 929235851 153550171 733384524 707328605 735385988 907581836 928675326 945001966 954004820 507182882 921006062 69900895 303163609 598525471 802829373 805966363 983782697 668438073 977407164 956231685 986076997 388046918 822084897 847698309 917070921 243548435 597917472 296224521 438855305 591190378 897392560 837550990 970778187 585238021 956882333 253218979 915471945 704766812 736400669 770626201 827635563 531091228 778101701 463460281 816676697 419476864 509683107 567255898 807930567 992160935 999543231 104086549 296698409 604220384 725099789 43327198 343949475 942067761 977541981 539331339 678868045 380370519 789695887 169936765 904620974 229631736 793048236 302203250 721489857 617388842 909677914 1061950 544114621 739604078 830658449 938345260 943533713 811556208 956222738 392639912 531770342 388873125 784589508 599875579 601580085 856170101 937111977 83537308 727857173 819369553 864645940 142556728 791309420 656896007 762750904 586646727 670520723 108963679 363360578 82281645 615063787 724495170 807214437 947535338 968786369 300972667 313594104 351171782 870242750 811592534 845334091 334568972 589036691 776495662 906459787 944263404 954942849 865088730 994980331 883911019 903633701 901026255 977459478 816190478 879222132 350829000 801328374 841188848 953071598 189399868 753345612 196860288 215592292 236714683 746237106 678965277 891927520 443225357 899401713 928427468 995343834 167640249 747057220 289427108 668681238 205564773 867304877 553841027 903553876 17287979 19064322 311077910 317800152 567736961 634045807 931788469 946623463 910668474 958929728 337778798 348339452 911355057 955554136 66366279 767445721 977297519 984196309 144734120 217073227 666931932 722578724 301920908 643577306 541415259 656454307 29689239 445342886 65809994 459074856 302654429 318597195 505996297 606724235 652101978 785307596 457897372 921769605 287893869 439655271 815006067 931759271 403042816 492723587 234125439 552745971 509491666 852794620 944879672 952143289 830363273 853522282 453110935 801661017 769144363 953926734 95547048 410237096 651202964 940033829 13937354 90954920 667860248 973359875 573303651 573601221 253335153 673368023 126840149 341577403 295241829 418633832 147147128 836483335 774989641 905822614 787279013 896774500 122489546 333566936 331690504 734480899 812365497 910912182 671339941 844425462 782277602 893550264 444232521 695050109 270403808 530371933 796101998 893607462 207775228 271746308 109488432 512076632 616158909 689381263 534522290 674257578 728386751 929841568 529491824 814980038 342968278 928924278 734383007 842868728 349560474 803896068 269524924 935953983 770888897 918316102 83030926 259694766 235578983 654853051 831918936 856720530 286398349 663548947 22371519 850860463 257657894 580297241 307796982 963268987 345639611 845746556 290090468 350029575 266935305 282975721 816742956 843993697 160193090 458353766 344508379 899973600 607494312 964254583 405363597 825656218 162976400 424864553 267873015 548222541 960988190 990039189 383878662 680873916 127669480 967920812 820513951 828715005 892426372 919980532 672282171 925017376 870246893 894120476 782745601 805837121 283052857 408587975 768349624 917969988 565736478 581518239 58469561 331016266 522968010 773871153 777705974 790078223 411502517 776873482 286682304 588896864 364418178 413857720 414732520 487567160 533868067 748093976 16361704 78502243 399050346 693757077 211688398 463302524 618495366 639524773 155055079 825714362 43875988 795865221 439760307 745534997 871660332 883583036 955327709 957878018 552610195 604710278 303123804 577008019 241713956 517717360 103092115 785507544 625103306 855239676 147781098 151178940 789439028 975786696 745525280 912007884 513707613 558273465 33907631 895929039 22038292 309795436 297108479 597466944 331287853 527170733 586489391 682845841 686789988 841484503 722042091 750688166 511279659 853179906 826125708 897444128 25296394 994763380 361980902 623369854 865144413 866143963 641773281 816329651 977944013 991888619 364969352 649949854 797597557 963768876 697860267 781990202 258104991 758476293 384005204 745963936 120528134 346102689 811281478 851579585 506253348 681122696 445646891 945527009 335594508 785598949 729278286 818193494 638156925 966496985 68282381 77244628 144410955 682343003 984514875 989183668 401830683 778529406 451981926 726690916 692859592 749671363 548594821 670817760 343329724 691095114 824462189 846809838 401794649 681092321 816217438 818013581 649692621 800577406 768630490 848045672 778850072 997611443 514288161 574896608 923761422 960078832 410476323 583943097 701612492 975927676 516364666 623843746 352018115 605352197 351507445 972807478 460323478 844729054 657378611 675553448 719252708 887077427 110055971 472088485 372333369 917786969 152422775 856215938 799149079 809774437 872260728 949805749 932828340 958083194 687096113 768262831 115034108 410312897 357064265 440406788 764343360 872625450 941660886 999859725 487288813 979557938 692347479 818896373 961155972 999480981 462292921 604727069 535675090 877938511 938309409 970270346 466117843 987403009 735411182 738652832 563134922 988197164 687224853 984425586 652615583 658952556 437044338 781845671 41526069 222574409 459366970 926421632 642060858 969211061 299861884 950393235 115149067 432724325 752107087 871643545 30731102 232912260 608961059 904837258 414993054 750469496 36024894 601087050 324147904 969886808 547089426 639823703 994449085 995397477 159764630 427929009 734822866 818061626 657523401 755382963 454370949 891645519 897099491 988905272 539382062 785403642 693823362 787208626 563558736 937718258 35561958 679358048 743728303 835936309 10930510 842941376 292439231 627696055 746476295 921930488 977799004 983780228 379505012 794020246 998148006 999349049 34664985 600060417 599906539 833936079 329206339 542058975 516842311 865238871 244623848 887167149 398704013 419157864 956265924 968759774 343326346 802444439 123611243 871080619 157036075 973394341 487555965 617019738 932579789 998914648 458725688 774060505 988826494 992341522 886770733 998976148 358269215 855228740 163819470 814523493 844615674 915051175 240787229 652920227 969655860 994012590 354508078 576825630 357576048 725710548 823964973 861201887 847566258 996949030 626434132 654034276 172787766 674534609 492799583 784127845 629539030 633883146 313936917 493006845 796796188 973793240 459480532 811694946 33006543 310952976 999091984 999691390 19974548 47958467 638380967 838228076 309843084 648459281 25144978 849111355 986599234 996224227 541616830 851433257 302825796 413181140 319640313 407237620 453660861 827849639 832636805 936157342 706578263 751028614 468576146 776472365 137231973 404489088 195559637 818579924 726606817 948303842 397033459 852829449 793591658 879023549 864826217 935408961 115111364 490773034 306484277 621996722 506872642 826939469 569694943 707148274 219593025 671384059 616721826 724373416 992991245 995272657 386676569 827411140 277607803 978869771 467571865 969368726 53043277 717950135 903840015 933259651 666677267 755634138 577782498 591212198 290800452 836836836 151142311 922603724 81216383 774160483 949764788 977204600 986484948 990643315 987223104 999282321 446668756 983101693 787602207 855412576 935759895 943921981 260461185 421506816 12227626 443442197 608061811 666773147 512169215 634840047 703106263 784382010 215410139 686856032 809477799 835593002 779129950 797028542 45317548 461122603 904370727 987145463 854885943 994402191 691095361 703498049 814350810 828366151 246397999 323857757 389603872 443128752 256879507 352014325 322253447 706564499 485476688 939813935 835395329 982710812 299281666 357824954 812541392 948136832 745433798 930812177 499485017 696449082 461864788 996621892 927929568 954358230 468540938 594255634 341282250 812224830 431259178 581326154 163135720 307463900 165252063 859320033 656679147 878121068 186587476 825677166 992918062 993491438 67484218 984849314 267752393 299392906 212698666 253061429 516021755 548077269 787787388 791814707 276793244 783797314 532045338 677818480 499876666 950412479 347035515 708767548 864694447 888074887 864910230 957840530 72223053 796731427 269316260 337388216 695590827 973957142 783310184 834712283 719187239 791167936 480730387 715847609 906063497 998585861 860106578 932436729 701375725 943842865 989734532 998945261 667370426 727277329 928210852 998378095 800794805 872790526 994262625 997683168 635397838 898871210 273631628 598226527 14793795 190376907 219352900 707797015 445428671 936407085 281846238 750761299 671315386 850542882 75905203 804115946 307703525 744736889 477157294 492293815 704875484 715427160 990415070 993239642 248803857 809050451 438564 780048267 74103352 625907218 854110634 868954602 233359623 842873287 903108156 926401056 79428833 235852452 806690556 880898134 200767661 427691143 324538859 419388026 222192809 361527796 955454430 993818473 592105679 775231053 536181731 562157585 46029052 782267669 888913129 907199550 799687755 941141475 674245599 679614100 644915022 687661384 895786964 984466507 161610546 451411190 690503276 738237940 712566224 833202454 836092786 970081685 337731044 839003892 203302404 526246426 170483777 653845843 775306233 886915165 861031830 974892611 852397964 859269840 422172567 784545912 786886852 834587820 866971676 890730240 763926908 975090674 406672675 711795187 420954024 849169368 225066044 540623315 312464427 718603360 476333326 732364424 305259539 718971238 376693280 934053578 627760972 705531173 730874299 988395256 883947972 967373614 819620155 895784248 943504449 983896716 816886779 824944554 556443509 669608250 103976046 629225269 363028151 389716433 810080612 964388465 103924330 815731073 526860839 997016488 919075627 980016588 663337563 919882910 203745385 641184289 665320920 993103351 244996653 417487601 573124662 673354634 246400219 399917138 527242465 657501353 960849668 966313284 954019642 999383671 459437047 848182287 480142982 889546260 460971809 574120234 442751468 529055073 559419174 865821066 519228246 708064584 801106307 969961356 939866059 950682560 462122407 944219211 23069483 734271047 301442712 674867841 443035120 854136682 674195174 764025595 457446140 892855334 340828370 893110698 400290358 685232154 387952052 998481807 487473981 794937869 401806965 707019056 702412114 914862054 566260562 904294369 865810 698196749 239187409 796570823 663608531 849176941 189421622 499046860 53771657 240828928 102752838 713910104 820077718 969834958 543421384 938761588 984460869 985641724 331677629 553794311 118581958 422821652 385633323 495878418 878416503 956083737 518944855 590297246 921633020 942994156 607646832 716621569 334909825 525996619 487216801 970711832 597110023 763054956 689831320 892709152 961462958 993331125 426643447 682535546 123838670 650338341 130061607 766392948 946329944 967483486 987515844 990171514 413886937 427351438 104802747 695403272 37721091 120837779 841237611 984085820 450472645 956641758 685824562 976705527 599901841 812531723 7531108 164805812 569317511 853216858 652513478 828298688 996679271 999204342 74914933 854200011 275143743 325126862 407303814 500831580 276792950 772676399 197019556 279432734 309163886 473379329 392936090 632489856 862766615 908432690 426500601 704399772 70969698 263001854 655513451 992283139 892108566 948307175 579317996 776221067 991285458 998004800 677148222 694767115 565564973 792552626 223978870 691737913 541536603 884499796 570693502 650049579 116000543 613302846 540643352 760114833 666541356 973455159 218612839 607151895 370507759 665092134 323367167 497523348 174094673 838621123 479408251 581708491 810218787 812558933 905956480 915005688 261964512 724635292 658516203 702628646 263557049 486699134 300746135 568315651 829204447 880357913 384208328 888152813 917403620 954782783 653273175 929968466 693298365 955699533 487888158 880620690 276628121 491527843 848349882 852030554 650299355 738746960 718899089 786925513 710489294 722229521 47535172 915319729 918566469 979469548 29863768 913986270 268466465 706456490 126624471 797088634 115019605 291930905 661055334 928447790 535317463 759078639 542254236 709168418 990252334 994623419 809575256 904895118 791683749 841621258 944062778 991893437 39592952 289264599 524939846 533047869 716486684 903817289 681164033 823758936 275738390 870897603 799904530 864890533 178655173 581471179 825889600 862950005 714958249 978110598 666724134 882879192 202801797 718986048 512157541 622519785 428035999 962271270 938291117 949786203 944832699 997499349 687698866 894873898 123481181 609564173 271904979 867362419 24960916 503735769 642768456 764499381 609174053 970694160 130361844 181943453 843310692 952816825 697308337 996507570 206474683 817892352 87564796 125460598 710328050 780128531 887346318 961969951 868452574 886910610 256175641 292347464 808171139 962313697 45518832 287921477 812399146 890351645 887300557 900119539 912634932 955651288 623920380 792166895 977762591 987330623 663817819 685290939 457637157 773259678 900568991 931247940 216221841 866222778 166688015 960985098 560574604 861942028 920103469 978706346 293687801 831254068 707093986 996813534 534704040 581679347 914095815 918393879 326149120 823576876 103132846 891644301 302184282 757076789 296954713 742350353 280954497 470629486 363791140 751695879 606061302 710271250 369251836 708524139 978571334 984843631 203263090 738704855 196343611 572180496 253592877 634511580 777156240 849403473 899824861 966423385 318333816 973199199 714069724 785158478 31032895 932684913 86178464 320936005 635448370 990987507 402212905 629541659 108981529 231594153 403984303 450549607 197748760 588680719 351512749 425084863 281750377 999744370 435495737 472013373 368440109 387386192 872579141 914012572 997687949 999204081 270089233 472228219 406362606 910168942 898333758 939421859 644974882 809540829 257243907 958468329 249929139 813282685 239943672 682154577 969278675 980436147 340646059 680423743 100956473 474286950 67955198 335771019 86201742 99209568 90991530 925457352 474120162 709349712 751860929 884199849 643788197 794071373 825428392 985946310 839539756 972971333 545673696 567195784 676461711 984988545 161212822 253186832 281353422 701251296 505625577 915353322 428637900 697906166 621092517 777024071 416557303 742613516 219521017 469204402 105104447 385678859 15540249 840589476 49608002 498547149 926280930 930600454 218725436 428142705 291333270 376250653 842118345 925856983 646146001 775438028 404087589 674299307 677007384 962072892 896573247 973538046 185761932 638836936 468848719 884794576 266309413 622233244 896914290 935223332 44546693 637662585 78328187 334719650 902804883 972270147 369769187 506962720 243389457 524033781 228302055 716094164 776733240 966399519 359775476 610914324 399658294 821924615 379247249 861563022 962930164 967176611 448533477 486720129 685486198 781231380 661760566 820611130 403308604 620969540 874193674 896685638 13506410 517338418 365455899 687326699 442869567 510897939 815067787 828146829 120784544 954381099 706146276 768919336 864216173 941880211 793442272 983848128 594157571 800380260 193835722 426987429 571259879 940155409 114608791 893643094 840908006 866192540 365783359 963401285 292093720 603395405 716811754 735717272 234825069 556642570 770830318 981028931 399117463 933309213 821041945 938799437 946857275 982802322 281194697 892614657 751038856 999594975 557822942 608751572 871751516 914115965 730622966 897442188 356625585 639765378 842926107 845493970 787908988 925561485 296122190 577391609 185971524 372399433 891032064 908205751 890726718 947697226 220042184 347023294 418012488 630739577 415003833 568603626 90871913 611951883 774317422 948739820 505668184 749762196 170709573 459977424 421034025 868934142 809361919 929362910 986813363 996356920 545634734 945579989 98860712 841784402 223917902 363983479 432984515 612094695 897832754 898833828 97539705 120915070 728274544 790329588 715144477 771261249 645256655 680086135 581675322 846980792 922426156 926163267 174544287 641850538 943819860 986547169 345920094 692438714 495963478 578468652 211572246 796649317 781878888 914785965 468984469 630917763 407046329 811908824 935438626 965777588 276953760 923384503 33800022 598261200 264171212 482284053 627831555 659774110 730816818 950270973 83068008 567162801 405360561 982026074 151656255 168928523 153088869 881543764 607085725 838503136 40070876 665384035 683238895 879771776 539187446 999170507 763893287 803617935 325756561 534821873 871018494 887674086 911795132 991012629 243647875 773406090 775479087 986978167 252600483 932556685 609217500 737096721 759933981 835501069 283087048 478799704 338466757 967204743 939691048 992324801 862618155 911779464 454253614 732455046 612487423 929879336 573982222 660786559 429001161 797945353 368767759 849685106 579551424 855774882 931098724 999082899 340269711 587443763 990913295 994768824 954698198 960248887 8097014 152638074 29050724 265475798 198364413 217395987 549297373 870239920 5345307 995580983 161981527 246185270 947866949 954136977 107471886 253307249 390003952 806444657 315176547 384805800 279295760 732596599 447808521 878571211 968796757 983318781 943639575 997569454 660926453 744070065 995434931 997759399 521493647 777125895 495072425 589449573 497415928 592848956 461703387 840628250 712178788 937810162 824986607 869698906 443115 552298788 205338342 537973928 681341061 804967317 740235654 932268475 536168117 875947256 920666664 979662898 920410258 992932353 270701331 501452707 364877250 728687439 506825538 983297787 358938669 972048312 748982567 872975237 506829773 516197499 153844522 780294125 383497318 892179668 346571600 637099828 37427994 629361307 121341305 549375959 885806075 898740351 190360459 910937513 214178036 449793190 446388068 710512782 605971287 819572373 134025810 268085550 117642717 125926908 803267613 975470481 311726160 513102989 560221581 814110777 179207967 532622047 244763472 343866257 295973048 374285320 556922556 790912913 499808286 720940923 600009773 752851240 477784429 968291096 673299887 870593055 428207973 438263821 242939067 526000715 970615118 986245767 698578818 865205471 571390788 728363384 831257290 911772314 35831442 787650277 980863735 999436012 108894937 795854303 49273139 774456353 548881936 935942456 91620701 290743526 236812005 416448860 225929666 528243498 828757533 849195803 27870876 996120912 287230383 940988993 671726611 823560963 340020972 637917200 78320078 269238912 839386180 933638217 518423649 804644346 945641989 976430347 251535137 407087663 895060740 977678212 901668628 959975141 966191564 969849473 207426848 636414563 78055760 433992272 195335178 599009679 972611867 983616242 689720642 848683936 348338159 942470274 333522063 683916248 211181212 750230518 761979023 914646142 999534060 999753877 236966730 562788907 749347829 857167440 680426542 871471987 542042927 987022957 369241886 732162349 65726025 597515722 588004552 887780410 776391278 831932198 898363816 936779556 784739067 789490339 944137192 969098547 883799146 892837897 264393203 340099620 241174443 906553961 368768472 414434171 924391377 987466074 123003740 730507080 209481706 827958312 149338885 564296085 78147080 153145096 815637874 824923745 199603177 444272285 336174983 365472911 775748998 781083316 163077348 375491621 884703048 931807519 627396386 799519263 368186532 842396777 880156057 927234278 108463523 784864719 256874118 579815127 485521996 709500404 736789891 778120554 930778642 957992444 513808497 712057098 463892783 518951353 317871305 662106975 54921871 120835363 307292253 542331763 192609195 688096357 972410800 982120778 208386995 643270196 906680083 959018133 504550415 978247548 562998838 954738342 340718936 948703786 175430556 880700260 377784220 968551884 829201718 935080707 269176759 810552033 56544121 338230055 470369045 891477506 255040155 770014728 219596444 372315834 564258073 747829642 33406302 699377933 188438143 861201118 412986991 561672891 576637493 738837059 207202585 759271323 51863220 999003929 533566533 825501141 668602746 745579242 113488170 674939263 585379675 887064418 272696715 488644590 766222561 936830899 874481659 986083395 578930965 593228400 835746559 921829047 840553139 853361144 371026511 985188135 862110440 967109020 601940614 893638920 231500688 415910000 900228850 962152551 594534288 613244539 738636227 881300223 137071375 423340697 453715213 771231123 153789530 701404925 471333050 996275508 212109258 947621037 185124977 224463599 50244571 849368794 199745696 685609572 47342623 744236812 816335030 865225862 132681021 728533643 342660811 607824286 139888072 937162314 149455424 516557982 333145595 990922933 562250730 930955591 311230495 532133948 569327109 730876958 621775788 626824103 554829248 803925717 627423158 876362683 471088273 927066709 910204899 981924798 414552708 423620658 225064122 543793897 400558043 714295298 220623592 307814666 844914587 858081972 774343287 966542642 178680412 830137102 969644026 986593602 318416132 911863079 297578737 796893091 42260739 873263156 550782218 721994938 541517957 945889739 667112660 883044393 382184002 865520847 854012898 998239657 177162474 494840128 479804174 570365004 266278415 694069396 223166770 419649482 520446959 687967868 618104667 619996140 329990707 701082054 146591238 994079439 252963542 771246398 854398033 922404567 69350484 628946926 806638170 909158218 186079309 849706746 115277598 710355945 544650318 725165880 225780294 471725480 366424639 875626686 278313292 589123184 151126331 802822493 864123188 939014967 648739527 964796581 355624913 776353435 521860907 701105565 42705440 345123234 321102976 737053481 277531833 881122222 371087515 489132405 638182524 675927059 904221568 957351885 85432981 152156819 480277527 679756268 327291279 824828576 759999277 935593213 892923842 977124567 823911545 931020992 843378263 953447662 659803773 664652479 885472986 895088307 856684367 939924453 295663884 296834728 169243421 584164584 187500976 561677224 205343614 437939509 157459853 365185643 753211447 967164301 682801241 933222261 246332545 485394548 921981692 985977337 68033354 599260421 434721548 929164808 869023469 993068230 719575494 823999206 191361412 328885130 574567722 876534911 843917009 959528915 397297869 596427315 637773095 810492833 145986854 376328585 306704227 807633316 557150158 878976403 334465386 689102595 562783231 773078369 650440298 735052872 795258006 946264107 143277680 264417040 178197062 750710779 205929761 967570568 990963171 992884928 844183129 878239346 300299421 751151321 436198616 772552928 755573878 899783671 974909914 996764594 932133132 982285191 127897002 271620635 626238512 973802848 331971799 755298631 716574344 757579188 824033551 880526100 503067476 640634221 197062629 794839889 673713291 721731475 85483049 955041123 362034224 899501469 964028545 988676268 570252286 811834385 665214777 983359635 366167447 859830251 52643375 83304618 71571709 978250481 926558673 953736641 7785272 166670239 555920090 754763512 895672055 997885154 362615549 845677990 77813716 418101329 259935951 923788010 681700365 840563878 998282534 998781211 537299128 684229927 600953213 622936786 318266715 367550857 854708210 980223260 52851487 111345682 897565638 950422646 463692519 930210685 742785066 900138441 135721162 914254967 769220659 837825875 666275552 688159247 627424807 718452880 491694368 687850693 424615362 761872225 973900045 989075158 309905829 775631412 436744187 763996579 556615538 815804460 61794820 935934294 917869070 943316825 506002433 528566370 174844706 800329131 883979994 975809534 323022180 639861708 618473510 653376841 612088769 896549952 554904655 952728540 920476524 944499715 844203590 881953581 798331872 815016253 110636542 387527409 134566392 891381141 556542985 680292331 750002170 817199797 629406362 699379233 731085583 905266544 660683705 796712858 903528107 999320404 92062366 146744728 505146939 987085497 786734521 898339351 696850666 912702726 12927974 995806806 439867026 897078988 83363809 512557284 528816024 675007818 576432279 846916462 609535712 868025031 933164280 951495828 288499687 946917535 415435704 616285361 875518685 901950433 433816298 452115900 500717211 664240360 336664478 613875070 697191202 757186142 930145162 930847014 462442363 682796603 32064758 792370455 930814012 976268007 979315662 984481581 931950585 985381847 575385283 991967037 229243506 689088369 884196708 988495017 240880326 541326852 276569729 624324129 827950823 946407792 162449822 656814633 477431731 504558914 697802704 986710397 278820374 942873165 550253399 556062216 695763474 835151562 672281808 899457373 949137598 951035951 124958319 434235129 744708262 850619780 530021068 551695083 542706383 580024261 289332640 565823563 84435031 750438804 702760068 811115381 911056252 987215127 883164871 990486595 688249445 820046943 878498642 996162482 229237870 332574665 84787098 906589145 858472145 939528523 25796135 511678959 552563677 755651559 81672316 227106543 191891979 980445242 436581381 792666237 409154959 911086970 646206606 705230281 238519887 340300810 499118772 736914637 536899830 669762176 828485782 926701285 927477742 981783384 227676652 526476716 802491720 889055868 46365036 646213608 522200899 909648221 277148753 765777492 903690859 911704817 55681446 770449989 171508210 299320034 221049831 549293209 959562679 963543121 422693753 923594121 995916766 997964732 675806820 820019512 901257368 944278889 682433301 890479968 614585697 659231451 13601190 197733057 505856687 803655780 898077214 942661437 979259635 991733710 719976278 964677517 226828010 885225578 773366945 828340299 563517160 648232001 642392238 643850152 34898077 874146368 193572477 741248130 318556983 423307032 813485505 897278406 613404463 956753615 26662563 757938060 434507492 669140368 600345860 657661989 6642011 878650666 898256847 993041156 512340598 775220395 738676565 806242167 339161197 956713234 812215254 904785643 650515326 864027141 504228429 998012700 769964691 942410145 175742950 316724097 848475016 852198374 894955480 977147839 565673976 818735240 647079257 744349652 290134892 492518733 488031825 657995852 808370614 919621038 622150206 831109482 123524527 398828813 679800043 871031102 286754334 676078550 166755150 203951376 406989927 540328358 457831137 928001488 45394217 539834101 189329878 378718740 768589492 796293611 606938698 943290812 437435040 642252304 724123079 892676163 190942614 244649755 726194311 836194832 827644652 864165206 957844678 966772991 4420820 798085632 543378454 599042985 2884279 353111878 629820364 701481531 60251319 857581622 883524212 885811845 725022585 897241431 923804853 949008612 909902970 911958555 279245464 533879030 812609369 972405953 841007847 877596364 795193945 887487405 679839553 735266278 461296683 760383370 360823475 634919738 657175683 827742826 785500816 806927904 343042531 442647629 13008203 112332491 697428254 804305988 801415131 915019859 149199719 498159379 395857937 738701196 778319589 881782442 690504238 740353722 704410333 940048767 759738340 764380782 215639735 542434269 183700412 916746605 487921520 655664539 918944739 988095370 895644585 993132368 207135665 629534089 303395660 952808797 796004926 838850601 553962500 961698910 895651109 972631743 430810112 572043521 39366755 116298330 721304368 754765027 266852785 725995168 294239641 785738420 734672452 965898894 466628588 753208847 205955852 973315488 856012358 935737503 210454515 247201455 966705367 991558519 133088707 260731515 911155976 962148257 28459942 527902717 687415827 719318009 915260188 922502884 291913436 721528867 822304381 859002270 156324762 867120187 267352551 424661454 839291509 853697474 34723092 363302920 317545858 411452077 202500859 790862221 47788049 895027994 512925304 736045560 390187159 426149393 240791826 778359327 773234802 860752603 226444945 247738557 947835320 955354691 901393171 976741587 529886552 996630022 582144753 622503581 235162816 690619179 711458087 779062079 320042531 731687504 222714546 860236410 51931526 416036245 243684747 841349592 211700194 454035463 870597292 930708456 467776805 859296027 316878359 739909053 441428827 750243922 601283114 782221041 207529927 435030062 186228513 678629612 903801046 926389113 148180830 880637802 17721017 752031634 183548079 889675732 87859775 809924966 668577725 700580317 298297732 459342245 822435678 973611707 81669650 427747851 489851001 920046928 596231921 990678658 443915994 695124128 709493157 803338623 964291239 974642505 920688548 933586584 429591940 441977065 454623219 716647022 457210434 537153206 289426882 976748339 277381418 993022448 305568644 372904258 110146194 488558572 617116795 701509275 416494144 866528156 234354079 873863184 665053926 854075637 234172912 547786887 555572722 775605164 707369216 836792685 798978827 990401384 282620828 759559142 690698283 936316194 444685556 586483332 871529246 921724373 163499961 280096376 206486960 539899974 228582304 745363305 745395085 838334572 837361516 897047569 434582743 689287776 561396176 865353709 975417150 982169885 846064623 962110088 758982964 963475722 943906107 970392734 373376321 698760432 521630078 746589270 66463407 377715215 999885592 999943808 767543706 983129180 622758942 842397677 120273778 433654525 570424593 805102216 282614249 365354464 959505620 983116763 510574911 922007731 256438121 450867565 875252062 985071347 643068712 942644900 923193585 980775567 72684260 822293322 868740957 924239184 830224247 929265039 571537781 745879136 102419850 649265032 253929617 999569679 954898254 996690275 354489419 678478907 42145278 151381773 344214888 643044471 596980214 619210129 498197572 840809102 810932015 839355701 521743894 611681592 513853997 579070835 690329825 830870595 613908721 803576705 391858891 859282023 992793951 995455621 358054348 886331389 215411685 520659801 973556967 993686126 86322572 120054751 893091246 999118442 75067078 529565940 73521772 284944187 675949066 742796404 605695665 941941140 481228873 688301879 82146514 752515974 201741092 700720750 70168192 276815743 296875049 591148842 537741742 843746835 829667726 952703256 845499477 943154604 981573639 989670204 799941750 877420993 921688105 940963175 723993971 846634643 233023512 261225825 532565512 757183000 324131817 992500409 409416440 719411059 565762654 891198914 219980266 503994688 287403113 337026330 527951540 888770098 765828800 833977666 991198853 992572909 438104005 559024112 199712638 863987956 109583227 453861696 878176031 919065861 706704522 912082118 925693073 954922857 987506844 989620507 218838747 642069086 226847741 937784102 449002321 646922525 528036409 978555242 208963004 649259395 916770151 976159213 674184225 695977082 892451922 994914676 390737620 776113345 690257567 901649509 748023418 904450220 662177573 832122118 275969094 325686671 503191575 977702480 717779541 988840067 761860173 803121193 705694918 904980510 794160949 802834994 906522496 994344011 862516406 863651760 568241573 673278120 789101464 937224703 264153277 791907069 962061439 969192311 80348075 636654537 734378155 843970045 982950413 984410466 433960429 960968203 477996210 837039300 397723740 981943031 648649285 738208518 146098973 246050917 565182786 569885623 995338873 998581076 613837659 937279847 506712702 833025495 426325406 508452557 492169648 658134669 63786925 478028950 798128976 990105524 57924234 999353505 241976095 861867927 735464219 778820539 749511349 918748668 568397845 708464572 866041741 903213646 614199068 643800359 356578558 713385869 661049105 727956228 104361419 494815799 168757241 325486135 750883175 908547866 760497061 795438868 36872024 105041722 398413874 925917458 305613419 766398181 400780507 621243956 566414362 669151900 559748485 976277811 353318945 628870090 382257646 631136174 560095948 597005197 73700303 268529020 937109949 967460267 59632607 771434520 427407 117389703 529111909 601967984 683792649 822702661 953330067 982500920 259265526 684180872 739108979 842724007 119068131 610346298 157827683 621166911 456953224 765526255 457055559 960177633 804433747 898328371 533325232 962696743 613239860 812663562 770125978 815670970 950731286 985086716 85226970 683689694 447814222 715917064 708641945 732989614 38676556 135297636 894717202 986112795 365833087 495963593 156453252 820348510 195486669 715126897 324128810 925376153 63328852 406881503 851687470 994270993 92221907 415195256 965114133 995896323 70899387 887677905 664786726 735205547 947277412 993005590 660472316 952636150 693348446 990360898 950269019 964362200 545080590 598509797 720932701 929727453 251384192 903695860 698135765 894605770 900109981 997303686 578160221 869483941 247131870 357016487 878005504 991574830 446191356 775237578 196876629 375439891 677732773 953084019 530011925 666719984 642801106 823058465 721282063 955943261 250828036 728174541 74830457 804867939 589912366 887497944 990238948 998030957 888470213 903585173 811533623 948222322 999179263 999392042 488680736 727442756 827749721 983324747 391681301 549324004 88457156 644049085 525393278 809637639 34333399 878876331 828597196 881339500 710017306 976166299 133370182 278202660 429081272 741647199 883959829 884695311 776481629 935100273 903415389 981482410 6216220 135918138 70135975 329639805 574851396 996348133 796573215 859710660 110065760 426537698 940502024 986017310 555420655 782973570 834165781 881026510 633544886 828290883 680623069 907013766 775721857 929330599 37511368 371155239 421081554 714450130 777787859 793533431 462929175 470474087 7264272 463695236 762235421 851993375 698024604 739205175 101359086 720496768 728707682 851040553 330544075 766887173 529441401 760690094 283237484 635573857 637779872 922766975 955651127 965441933 360277129 379993261 736253547 888756816 895914073 911048165 233092357 245266804 630125237 716259392 7522677 803904458 228651335 354440254 840734695 890466148 133429562 450313730 771560164 924417666 575229117 616393964 132833583 898440850 176093436 967127491 711224512 814369637 669115506 988084494 488496961 873491748 525610058 576058561 919708846 945757835 691742923 871376308 606329419 729208148 851158584 979222015 168602977 282387153 715220581 733781957 611564119 891190201 268016122 906563282 610024440 764195429 632533201 882938362 224924380 656695223 349132282 567379357 217704395 875792227 840384203 984377950 436361285 455265898 441903393 788083264 19635747 941319099 45280467 833482913 524249398 715921973 193382799 586098985 388810128 468843291 885060672 981998636 848444108 947215699 572659754 662225102 988848263 997273122 95561639 337739897 875492308 928628207 41729405 72383641 729471357 804131638 170542086 884085329 570476899 928820375 534257415 683479507 792395353 857275492 784294820 835035077 968603246 987501688 646794885 824326205 460156993 840090979 766632 577769693 118174795 687009149 422701392 981085572 812676100 911626505 976650760 993580601 869206604 886257189 592750212 940077735 402116789 631671218 6008500 251896560 149010236 787249086 647032518 742672269 202099540 596655872 284809289 472432942 662798015 780166396 425213166 532912925 562704843 868151212 29349442 953566844 404393256 780577386 79329338 817226027 789092451 813903655 5752121 118415391 154627028 389652393 919616292 983871287 56937593 265009923 684842643 861811548 142613475 659687876 752056247 920484890 82605793 459462922 716296123 993155608 617981555 695374185 407448882 716821846 256058745 552452740 424890646 902006227 534423459 608356455 573615618 639594570 326500484 440371970 459368110 542974637 236613900 915407254 885027535 995504554 142078187 801130254 867896332 953514732 884037342 884849913 60920860 400966722 400971647 693602591 272081262 342012235 686626801 921976582 925462054 948303504 330857345 354122294 213704861 591182191 273465136 678517969 70861398 449359570 121517749 686255643 630790731 986555447 146235407 690860419 133963006 971306143 122181795 472815152 736625567 921805761 511051986 511189573 154137273 873912305 266809477 865738302 791561168 870484724 138960174 868392442 621333467 797847521 890239526 894034460 840349190 970194828 122813240 498542848 553630274 712434446 966972486 979551477 546292560 749353350 44170999 528078124 412651201 563464373 883649358 947928072 693414489 758759704 631562105 766999645 17463841 243620280 363758553 389867487 540494002 541221401 308815174 553585993 318608779 905047612 167179218 217904013 181510569 616512208 554256070 752774846 95472971 918929745 636912530 735245111 983005496 991021505 576886897 697204071 794808417 907077879 404503682 675243694 816178051 919690951 465775571 644040221 33973988 310183337 437271046 439942330 542370829 808105682 605835788 797650741 28153519 664815555 284041249 380388776 997657172 999151082 298323415 767644481 116609325 555328873 357582145 612540218 316917165 523007120 14129851 393342570 388092393 797166433 805634284 835001127 396489379 704250949 5651236 606572570 453417346 955192573 793874891 877330304 95716079 953767086 810363400 815979135 79285286 431934300 148117697 520100736 460595546 496004060 97787154 314375880 310538101 345090366 31900943 167459141 140364223 678393531 752903595 939140352 897158925 898766267 799716230 875947853 388067857 676316937 260605484 471328877 560025475 910361412 442817605 763381107 260513587 659291632 188361673 997395525 674829265 704207898 576497817 670039598 415625887 565934738 527013380 650591106 995889825 996257910 210449131 976970632 500715173 617146329 98613105 441571822 856738247 955722973 739980649 975471320 312029803 608625849 956895528 980167950 463946815 945537593 581704400 926361370 932039713 999032116 80799685 396086787 636771326 937511400 235151373 283030858 658616614 809117345 196800482 266277318 72261617 538994990 325829240 834039406 8358404 350809302 621833035 864525645 622166282 882575730 657482240 934579972 337902777 578853186 258145638 692166035 152302821 548779900 990319523 998959861 555761144 946749428 657220460 657961981 164092187 402441189 329990311 399488720 998975282 999019329 864720902 866265991 490911289 737818861 804862077 836469397 432488174 837530311 553202563 563968681 690479821 983871412 172253865 528074220 76087220 380714462 505573477 550336017 137505451 976529202 889381445 940887064 776274323 779454434 520135116 607086612 684391569 976651250 855349413 895711413 318195732 487672122 489459426 953623267 453630138 635062123 166621510 722209898 353359464 391207750 63090457 162407756 439465222 443392130 174877568 256157553 978292864 987471367 896330724 962704350 397788199 944044529 100093720 444252979 635071102 901771874 209800387 235611578 487249737 594990978 919663766 952877875 76732710 763017530 512318254 943529120 93223139 923754342 101844989 252089254 277448147 939906582 467798459 806197873 399814777 543139025 900323545 934470422 911023282 944381796 5198955 972036278 237125588 766306035 317815010 731216451 814756540 919331632 693333949 973721337 953251664 981677552 425351737 549229275 489909152 640525423 807523501 942754303 793849174 844654955 85072444 462172669 469141439 490444863 465557947 653666386 180145232 974223381 663251700 744465411 347746952 941500989 168055955 863275433 791757757 857997095 574120826 651089956 967474374 995229146 962542488 962718835 248537159 353645450 975702386 986932537 848087292 975653763 400250519 833298422 294744593 679804531 738776769 916880725 560919823 802736266 904371438 914504621 179328887 870358484 68108846 238564826 536150948 654842680 849384588 929020904 897133005 993794046 898679851 937375115 867274113 883925906 634563995 867845565 799266033 896964934 665439568 867166964 363116208 922548520 588826714 613293237 630523424 782699046 786612471 908694957 844093090 852591295 200679618 931189285 812264648 859801832 579523092 809272480 487075672 646317532 764142917 863173620 332189510 573622639 553912404 852408323 2387032 208808265 913817787 921930016 274911166 323317929 688170344 893089963 280078453 671876490 153928604 554448969 883095503 982844784 914688135 919597117 299234114 846331302 54094809 141338016 448130127 558002614 490952582 627493551 45514469 815721935 19021760 420232531 763435057 955257325 8605209 306601975 724250181 757026588 242366981 320202291 439196618 636326131 422345687 676717406 606781451 929409743 24064631 666128908 22311247 875733165 835142139 838817711 992370327 997719356 955359054 979294722 660946771 952133564 258701002 662474391 214741972 887159620 753273939 991401330 186562806 883608239 165642860 575568451 331399865 818978664 830207500 854675626 78504445 456943813 878670761 905409041 130556296 220641878 882688305 948706316 549347511 703623451 72378169 208016399 650812868 895738271 75988079 299663536 247212186 350404802 703508032 778607255 501303268 803702117 607203497 679783836 406948340 651984760 733637438 830072105 604920740 775649620 343647353 801507324 549765349 743216346 992698417 994472736 217623441 913392703 390161025 732092593 444458148 675494949 482004027 613006780 538051247 573586243 485961840 936910390 743335178 811820915 735297075 981625927 874975571 882987258 911507375 916402568 104446170 408057840 849711193 901839862 506747243 934806576 705007522 971798259 519378946 849388949 801798452 886437228 679378040 681055902 114868709 521696033 106578457 717211001 90791770 702611758 720534645 871524207 838849431 924729367 598512019 913384801 444932381 887648474 646067266 966557117 671874130 745191168 398284055 692991571 15584877 365873129 725736767 867423391 293389239 639055261 280023911 964835999 520657818 791942317 500133409 953424640 193919735 602265926 885586874 973365442 960479628 981490259 107558302 977393821 191537032 479626833 266732047 481265346 500704016 700210900 194654723 864934752 131886444 776603664 532045255 585386957 544480606 658109831 320385927 677244170 947934247 972300762 574559266 931688864 803543385 811110608 660949953 712522260 919755135 996337529 688263657 735090421 14419654 452942870 170205606 843838768 339482873 918648440 851239066 893106417 682595574 730102036 608582807 701717634 795663234 964391009 110897415 902218247 211283612 956811603 724699959 904744470 805309034 968379134 127624346 808716249 952738625 955983406 516805198 821850474 161689777 884558957 283991775 348989755 158807506 329599008 479030497 916842380 681222747 765921460 785357297 805672162 831488577 997243170 412587876 574205433 840514699 884382023 994036890 997333514 88395919 878268651 848025757 855980915 428331764 841789823 419679224 965764290 819751467 914316334 81888392 272400309 315686082 505370581 544043090 549235971 889263255 978778462 449770552 754454621 237047848 625768406 514213223 805300191 797722980 917652155 205446422 782147923 3883833 321956623 156837510 783223031 661690098 924988015 813530789 922747560 467352839 473753948 298191541 834274749 470210690 977878003 545693197 899484251 326321251 327813239 646521926 672108163 113278614 136367332 996390012 996590029 359418479 774796924 563261452 563983325 152104515 569346280 562881179 978059188 391892067 850216583 885874176 900677742 487830874 899110723 795209260 986619487 211949387 248498426 964433013 965403150 591859 561180761 441958870 750958005 495261768 512151940 273469742 811675404 657348307 874563124 138612092 575640934 880100484 983823307 88691790 267580692 943910234 994661351 810536912 823268623 242448367 289699569 236989993 616089382 156386138 205882457 494287397 633299860 483526304 845777896 165609704 945973167 650236119 695069458 572584229 586844069 533138026 750034460 315443568 856630333 119313970 496423488 161307792 822890824 337302699 480998834 820646941 916254511 926760758 956680625 302811869 909233596 73989834 150636056 869063827 899592114 621740854 860361237 187268089 825941367 822459515 973122953 170610203 773912978 111070873 269127480 285307046 947717196 992287479 992919391 397355528 595729208 979287435 983867277 525045430 666474330 578899715 927310598 912895364 945128302 717961501 972376925 442950838 456523864 819583628 877652310 622364186 657885919 805913667 964807344 727300335 901103071 871165034 873538452 631024909 753870811 387957259 840050876 709310184 728756301 166020314 323569804 689974141 693726918 452095324 959974906 349270996 743941547 303164430 569213093 872981442 918181121 485590650 998058506 297041640 609088284 487245450 585246812 75898183 951359824 393771235 542266547 802340928 899037749 604890884 937179625 135396268 312319332 586026012 993504741 785887941 806027361 508070135 831032642 981268137 984975267 860700300 870587421 324179119 892665837 778883230 991496212 660230104 786229454 427696826 807995578 24606952 930188815 63469690 900806887 155816483 309341180 511129439 968032809 948243348 956248657 857880864 876776478 722723527 946070711 125642531 497105324 576918494 886791570 784280561 785357867 772379428 905671043 779804567 880733534 390843141 495916984 651761511 844439126 250552838 744320288 961651808 988360858 310616062 629733579 396854022 501150257 845987951 903499071 617600934 977609056 75842198 103402518 527891028 809746907 510713915 958503465 209192608 530502433 399503630 495345836 820947906 933299984 445981282 460328528 3562440 421317597 975918955 981990884 711074592 972331901 264051092 797945766 534058096 693780580 296296204 491147231 957775777 985735356 706080006 816180177 336638002 973856392 259823197 566284887 295498210 937905886 421526542 901443245 589345258 824877086 469592221 759899538 328127833 835285125 624785450 932108648 767777213 851829258 699248788 827976274 499107282 930992963 99693372 923602135 536086782 672253552 293500030 581593910 111907673 464963216 906888286 984582031 470766903 578997089 439922205 996767847 398771212 661489967 89793925 961903904 480790558 883048143 56256533 941428553 300295033 802092106 391911137 898097119 188839417 881713278 106553681 437623779 7431941 88407212 65424341 158188149 205657257 962582424 461974002 673171192 3825175 174467810 621003546 825431284 582609990 596848059 735460879 865220851 90326684 324768712 794785047 870008521 399255005 469484105 711441924 982950259 267937094 894480775 209069253 224424577 718524512 783476104 255860174 621448969 346911977 914615675 569898022 994180974 679507641 927310961 336276230 594216961 75195442 817326396 826086809 951571331 463554962 579360976 380194440 495383505 744191130 894854730 585346339 948604727 446230742 926573382 57505599 873344399 902062336 907778261 750651693 821807914 258799276 598162407 568139809 800057649 325723840 983840278 477969320 480885655 526241048 685135720 940746070 968582741 33419888 534458607 667016224 694260015 747970646 827164671 399566235 870904808 817310873 843786487 666990361 969876313 926739930 955610756 707346656 785316836 678011001 973013409 332571863 840324550 464295548 802538726 775441908 882628803 535944114 946682931 348019133 683812294 267367357 548893850 666486318 791930918 352389846 716670868 369730478 763792528 627194035 934889293 114579170 155238867 567647523 756832513 600115811 884010383 261056832 372810633 898835962 944544522 825864446 833804606 586943162 917039388 768041506 934040360 380910738 416458953 454932988 954990838 49889707 801679499 930678171 991971643 16515666 141586719 9277664 169437310 528528017 577490111 736043905 784490816 15339488 998177331 851386172 936477931 276532545 799555687 65572911 440095922 724993370 822457620 896769785 956788900 354786770 662175618 876333671 997879347 714999766 859175355 882980086 955236433 519789683 909294128 862679839 868694699 978009817 984293198 381564776 536048402 882458118 968962271 16919707 925521691 894653038 949162824 83868952 576607292 309191458 898276858 361212991 571459104 430779745 504576887 366604098 489011267 452715162 776944435 975497038 977973835 960032412 969280482 351793456 977719621 547862139 791877129 445818155 846792493 814408898 919392016 550411943 670480375 336583084 892303208 924859068 928001574 224000771 763876085 724063066 821473227 183836100 554510758 746985418 914191021 35367064 651908775 282946056 453743499 153666175 429827762 705711164 877865950 856071848 990893287 62972227 563322590 858679861 894087456 521416414 558941200 978374381 989186941 741226134 749790971 641290841 969732907 343595421 484825724 868648085 922291013 716585337 731608767 949180211 974547088 860412208 921774145 241172683 850278972 614747525 738058807 194276555 543462546 945437961 967444128 986705004 989747566 374471180 685419548 622017224 812104559 959823427 967641605 771728811 829255383 944658906 955172885 497833666 771957526 202226073 559823818 597953887 677471938 64961959 733727731 571741870 611968157 899167205 971308679 464735450 568299226 636465882 953520399 649161358 779922686 540191073 749556807 556716851 702374654 428861554 435724074 797173523 854932629 505055226 990260621 814229419 963022527 529945365 988850452 462336882 542841528 291553735 593877213 8836296 209283784 798273850 924133074 781437106 922242833 596678783 755469166 761434191 944864655 421184434 966530533 257645279 897359028 994556171 996031070 956425143 979090915 388773412 610192141 662837772 894519947 694161980 950404625 289109316 846549278 149823032 943961889 8653294 216444352 194889245 410555865 224346599 705415216 229915650 686040424 629216662 976046407 996696746 997729188 855265534 990055045 814379433 890519137 767613473 938228937 578593893 845487516 312166419 811277390 78148729 463083705 91833650 444377220 752241767 898470981 464797188 783394170 596847954 625983451 945942076 975112532 920552670 985480609 262497772 357850322 173115322 971948619 680775726 820153151 895968223 956421004 613756289 734115452 135647979 980726496 89082672 783073022 499511932 591513077 106218128 610005543 850729753 880065615 881432760 915420868 131136896 342889863 252571378 660293930 940410755 963871815 420994542 788899901 760924819 887038666 457587976 940965944 932762627 936442757 875520262 878972536 561595422 709181736 393422968 699048843 692397198 873864626 311798522 406237441 507503303 943129104 847955778 926163872 87113101 444978568 413297761 793530971 33527687 170377994 272622819 720756936 524972967 679234407 277835125 288681379 557601689 581562410 135031760 260980694 5984745 27157099 169713284 739433713 291010326 788146393 47810396 213148478 692359391 712389381 824792066 858059609 479594626 622081607 968155934 969460677 249097684 748428105 253569966 386261994 863968318 875997488 682549307 844418358 274076822 352295653 751791745 928867749 88976338 829064621 155412504 875438422 754298204 775213163 145652788 215448755 852445119 859914912 573094954 598550114 975700970 977605892 660380196 918972799 385501950 582958494 894386622 937845677 279186233 781809467 450340051 494528211 24448488 46251572 371333352 829781458 422520573 800747905 100328648 719799970 338650433 837846753 759830525 948864426 873800619 959333363 512808490 550404676 98295831 539938734 485198011 902231906 941510827 992809154 413520973 463702823 642207596 984801743 174236301 766145085 415263219 563675325 749132733 865091955 521157526 529799755 263931565 755655060 288629632 885915874 403173860 502716992 119431395 466930156 157668447 260495135 198924369 473619186 459937841 533039843 53070501 838053518 883637535 991917333 13233352 569244905 588533720 712346913 356951677 642488024 739307920 777657765 891048287 964584082 35440589 449854270 838237165 986458727 50727618 73074653 39205297 78058718 254298032 564634332 728454343 901148454 278281491 685881612 981816690 994363330 618349934 698213492 951984488 980523910 591094274 766212866 436748118 862619078 604135410 730598719 483671621 988864480 859534573 886886617 865965572 987777668 624328997 914024303 967446705 970808260 870584454 915447253 955997751 962130885 363020814 543040683 306469782 347979182 498710536 703130908 702492480 766339715 228914447 842731639 530345175 959013595 706505243 890261228 642610798 745831838 665723304 891451271 522017665 920218392 756088678 855823421 327005468 466460603 593553266 639225458 511844094 957761271 627116810 994707295 686470051 930215683 665225613 711302842 678148705 921290451 884685307 907642363 998498724 999397146 683908728 971530403 528360253 974733646 541665402 964637656 248971658 913231196 245883038 427244673 690412720 991599903 400878645 441357888 867576283 927519448 301055003 333168741 868703001 967304877 849291273 921165267 88792730 397039831 387858322 413648971 19794228 639992794 635810067 850589445 962951593 986265659 232735045 842454166 229977851 391194989 292620701 807701490 116567227 782250077 425938063 732053277 498739233 955700225 89220148 957080518 413921979 458501515 18421526 314582879 681387709 681650383 664287006 665729818 308075613 387775072 438459003 917815357 805180289 944651816 893610759 980177736 791017351 971253093 460150695 887651589 389724913 396777503 660315551 810404664 888022787 967947292 499125652 609330316 355175783 868526212 937623338 994191036 776111963 933321169 938700346 966747484 96905602 511156889 37521215 791238681 820158299 921722345 474076268 542409090 919076837 959002078 609892136 873613408 777393533 999358318 924019615 991902734 125266791 278941176 232496696 758402416 579910067 634237834 253061760 967097962 174245587 706838262 594104781 995804633 801795385 939169062 276524499 321082623 165595401 428327090 186099992 246507146 492424430 787852247 94926760 811658438 243723011 688842691 506863363 674492905 532307791 740353528 819350227 824338022 367394386 916715732 891429961 956790623 337489281 920263961 309089438 797748758 23652228 815997925 750248382 776221556 886896198 946401075 564336914 664676004 991937294 993750474 748049245 800014442 391565769 695239534 766016403 808530935 994815085 995634761 190929448 659230658 230179418 420942423 154037146 560041398 901084892 924378108 475045223 996256539 159848696 874904914 11629717 525919338 80900382 739679728 166625019 651065720 152453276 634684274 956710421 961011998 610719806 845374431 985021078 996680730 7752271 853310513 506164254 599125037 607249327 796798997 93738729 118819703 573397612 993091848 165562952 966506047 718056700 807713052 105151906 696069277 397966269 669520342 341930477 389263441 100027813 917618285 446832636 684551420 953186672 972144262 916625421 934498343 90594387 831418623 207096182 226302596 976888410 987152283 560242884 961672478 890301647 902573154 443433612 786486606 167206550 622992039 336499359 644066219 932300621 963570870 672200857 784601857 760150917 901658723 821231205 880733575 575771753 668054385 699903912 766432602 6446596 89083194 328924532 630753582 90966828 104605753 729340602 815358033 258241170 834764813 782929379 823398484 485533784 942361464 191504271 798793013 925005937 972896827 651356927 661135543 5133801 6858204 750902659 898941911 353273535 666567872 523376181 948099114 758671499 910209042 735328681 999214136 895171981 948503151 800348046 840539459 260848125 731982814 601712905 835741654 458845132 879206635 715176907 741522312 700920453 749209300 884190629 992804220 914381371 965974364 932416139 989670320 855298761 878573173 656437812 712783839 936967657 996067234 729734591 893847918 951366834 953744297 790428531 798250262 584887249 815748024 813904656 817923100 965862487 980615166 203937479 730594193 149715753 170554913 930322347 989106893 641874950 981952932 908670725 938833822 380290044 764247186 339899403 742118999 526107244 862205053 428030333 723676304 12531475 84610444 375434811 651090145 719300578 949419600 581252482 917247347 829716891 841358265 510591831 731602107 315515702 777468066 594665894 875641292 977921945 995578195 81535317 495378389 553452936 643527893 770516045 799961103 537563919 550088391 951188594 972979635 604187263 896451534 669526832 885993374 275705521 769521076 57238182 962902952 85456134 849525073 972743272 980411890 915944250 965614082 569355277 705782637 264911214 858450752 86550652 855768696 678905763 796351251 271201961 830739820 710707579 721845815 308515000 736026419 183428536 457042341 835934893 918190026 171448396 969136258 4597560 269259364 350783277 572867264 666557704 992272577 805010838 846101778 557171522 990763781 82499954 692933787 925416176 929864372 623671456 902700398 218752273 657564578 152401787 983976997 475932027 580409306 353213246 553605966 283436093 444600565 736295165 876544617 920878802 965721440 535375075 686760044 937537307 965682796 184161022 659680022 765941640 934809565 803224354 852628092 993557433 997170422 464416589 947484749 189865507 511046874 407335813 602578227 920463566 955064377 936534754 980909697 84068848 885589850 611056145 819779892 898036074 906569792 353778610 854444344 800425091 931611798 632452553 917564247 990888939 995315397 919150423 948111144 151834538 289811608 479527324 653466148 816909146 925898517 716429182 933029249 323477683 475370061 345925640 938826822 218808970 963345606 882518908 923691990 155920044 940347880 324997911 407804018 907274774 930569222 876374094 891836951 509554877 909768287 461074597 900436603 963041495 965916573 771818122 876375377 403819517 572111042 428445960 806130571 485823985 544173058 942897995 970792859 466329288 784199706 827025891 956884831 427511324 964164238 157026769 777893211 788168035 876871047 679197408 998870195 882509104 909710924 492039071 614924653 761288103 835961776 67896714 850559742 483889024 596450259 566511047 714735351 799163496 991002895 556539553 610438117 613628252 666983129 332976845 811270875 576736722 966071842 138898067 225320280 549851354 758127444 399466965 554647768 422971557 463539330 346549102 600260048 753193844 802802427 853353420 890080340 176181201 242991065 19248725 231555747 784056414 843231624 929084113 932447852 997117354 998883748 238640185 925995617 508931558 765046835 420361656 910460754 491092622 851616280 414919482 482808470 857219662 913957818 539237956 727881368 789789705 954206926 248583790 550163898 754380122 823215795 761935969 989468319 316341207 321024338 744382504 768911701 730171411 848537230 424254319 461247416 854230928 955228543 360309985 505585712 165261971 452140847 691675211 772959100 62277077 114172510 403191056 972536628 336973273 574405405 766326997 863872033 555561743 804061145 487608835 820807501 158063086 477970810 216132719 463451532 512415906 673601482 33042250 581478872 721431434 817085383 193636900 484893074 54891409 880553660 449311053 923914988 271904057 532637725 783262638 785973067 350426527 842406649 529041082 872306249 792284409 885184532 244580657 476047661 255476033 383435419 486284954 866581855 222746139 743447960 677392902 718629651 640446576 813812895 272145592 683797397 285623702 887439829 632344997 648390166 647480873 812014842 101768123 171222324 615652358 865197577 398073402 757312702 176451046 681495327 224948579 695651075 334609693 689355945 113449865 960498776 307422692 438925026 142884558 172566511 278642770 550519380 270915859 759709143 768494264 865741588 714382878 973378578 849407919 862873076 378550029 805890262 954469497 964805834 979846636 986999008 290639142 849399191 941980953 949878653 956572759 961072330 845745430 886747050 147215982 588343750 888693066 919910026 416665342 472497540 456441197 623777247 332452267 351401993 188072577 815468487 10871931 781341521 147896148 457384402 615137632 836956265 196223640 665699542 926229081 943081810 342597946 715087063 584625060 841151340 737352151 917296927 104061000 166615012 994799999 997876647 757516339 839982169 501940382 970459092 437756598 524045583 371817441 553976025 938805404 959064942 659371800 993853630 724039924 731790118 413565174 445289607 379885021 983771784 514684960 763991168 594543379 711109677 563603718 653164549 497707966 944939313 32439685 877067580 577467716 988425115 814034881 964212127 107044270 862342356 514566768 804659068 120322865 143680257 14636028 424670961 771933935 858800215 498192391 700202806 87300629 711009672 997580948 998455765 907003431 929837690 333068610 658475867 609598729 691177759 405124004 573023206 161025284 836021431 380618585 548157822 996610417 998985226 19023685 809542029 904103819 968074184 921691874 990253349 778017779 875838378 820573897 956245194 634492281 961529493 435736932 573551642 485365133 635615338 36213518 333462095 24414898 585842615 514534800 529277745 948932839 969643886 96940807 336778658 114279099 852292555 226283996 490009727 329039036 540599541 321221071 387621682 941645134 947961936 219573779 778838202 650546799 979238521 300505125 698835669 845693383 984819152 680183213 869742563 158668509 622972261 35471426 900758569 918733237 921395000 78767463 177404560 48702425 534808948 47125593 810087191 135639677 796799282 900700096 978469114 974579883 981364665 95166785 560989969 204153040 239514255 555057067 831584254 143511525 392717054 181771223 459868684 231496522 371270693 849769674 931933611 408246242 848105042 708238902 907376955 889367468 982473297 805822191 898906763 190531989 254556264 581307147 676352142 209250837 523281525 941683019 960056882 892113845 943706378 456549039 495058460 955000078 972002857 296212175 583306037 627671957 764158528 348755449 436465650 686612873 814006768 534149197 657976217 169825820 416980510 29726712 475402823 726110160 757711422 819079889 896579687 406547047 752838047 511600374 906294112 769715742 920418259 671610332 842020922 878709958 991591035 935324790 986307695 90857185 347471103 670034752 712512076 349751243 551625986 350652349 733733552 270024304 750055419 295706841 429546814 719399372 771566793 752775286 861392175 142270072 778526027 693744205 696436398 999515678 999701424 699683929 714742480 620927095 798781971 239915002 296790135 508952079 763002998 205088114 595267893 863295571 884545283 889395690 919259652 896063600 982474621 256645872 400869197 192785108 407881147 235764619 844528746 892468625 937547395 906655642 933575716 805491682 871693142 423281899 557505113 19168941 592479079 393027838 956686448 61407773 521284695 914836280 929227740 520664816 541896960 626887753 775897246 2371799 786252114 349127167 394682860 589285797 745382972 266939642 397533371 669667737 700593073 321881478 737985648 25320262 108674677 694218921 837537833 496298369 795854689 168239510 614915455 633088037 648543338 696474075 909165716 720022742 995996843 425176081 960757686 814937225 848545738 333123988 441854811 70162980 381949981 837329500 869818465 707225225 922756298 213729430 453288420 263809845 640884519 585153680 991044961 307342853 935160164 724518674 918485316 663250215 830463508 872689007 887382226 369630409 415044894 34797887 792107004 608650234 937202742 263895592 844210639 888369729 945766695 175459436 553348592 275824703 312389467 585179949 590401788 856510662 885832436 777707277 908617946 622540329 706180293 37692310 358713405 975996126 979858438 3655457 253528422 982284803 996058665 663940568 998214772 603074944 804051841 826407583 885757425 528368535 784987058 402757868 678759661 61913075 821476070 965874553 997998991 517018972 845157416 587950642 735029804 483735140 773294245 993402476 994176243 180931004 223683181 321217656 623520547 891680046 957479388 222689955 924838719 97651381 978493419 371411847 903076832 799006058 884540774 251243553 735906257 882327230 984293071 274890767 423067433 328119299 753064851 74812762 885396909 100646868 436424740 241351919 636943077 128606685 448434531 731747845 879870256 444131390 734140253 648493328 722465442 230544254 470008464 734701699 854372421 823435875 972469302 814493928 928991102 448497700 927699294 673060802 729169511 960256876 974772196 906538380 998273160 297682298 849052467 615959002 628114065 264166535 676691125 518542720 620626268 844960052 857573172 189873854 273592495 90594136 517121087 813491311 855887009 257087876 446358742 798658345 830004363 487636772 785805699 658567532 681275840 352212015 573502516 285298352 853831180 226365230 450109711 809500619 960596931 213152786 347720714 263313356 935560554 796555230 923444864 773890530 908676702 705120499 717768191 788857257 807698332 334579534 820295637 64712562 702759100 51555428 531936023 606092688 796719278 302579609 785312145 103918274 504195681 519854834 944854584 584202084 804508855 841328592 848407898 956700338 989791642 208489734 813730167 842103731 903591061 269156830 877550985 636586456 967466556 967451412 968311716 844502176 992055784 482767245 889651065 208022361 285251573 704016195 777095686 710453094 716938656 146023752 212073831 713471029 896026400 755787669 837026146 409161211 899803297 758841324 974817218 218820262 361590458 154551969 378034413 286320233 494044573 382423813 583715321 541846072 737481100 805997296 810319080 165935517 377403103 653609457 845386564 547440152 995143714 827439917 859777309 790342341 933503216 479768092 824181052 302196345 837709851 529012261 963478603 207925926 452896173 314825304 885784063 507911101 767133650 833251468 902300009 351095534 553065308 361992444 903602523 111168915 923358886 254217026 862155499 277280663 676232993 869186457 886524026 447721899 736060259 677062691 895988884 138308677 430770126 96886788 506824370 435173191 435355506 387652785 650248373 174701432 979707091 143892465 869164458 539827746 821150827 150805210 426320937 255015701 595739277 824185868 829530917 111450822 687061859 131376195 684767181 938844996 990061433 121849863 998622945 745479871 999938959 455135901 853371060 498345725 674835565 481872233 550503453 432546841 715077211 280932205 437315200 538690343 737105206 405224559 861364833 444755688 722245827 202492537 464525638 962676230 979870141 954414567 974698412 532334628 999941249 891566173 969001067 33901114 331449495 240152256 636094550 44534642 850688460 495559874 805889825 466047004 973075967 40921094 934978608 625655409 974797918 864547908 896882850 930702377 947552979 14295543 444402115 489668557 827240969 411594402 786459988 9660820 725137112 689518886 801715024 983148624 993925896 678464106 984925212 868090963 918512308 202394335 634558616 906349596 942621113 28136616 608491188 339228296 845227943 864630078 920710029 263071762 943915531 671049906 676020134 425278582 530636328 638287209 957328541 99837645 535394976 188555572 927260959 807202413 890269386 32663801 879840988 824826453 933931231 162187634 308156241 51146790 160811029 440910962 917512393 344427204 489629082 935882825 968371538 90433147 675089873 461299128 607979541 160776168 349502869 612063456 982708258 132784829 823715727 777268793 988583665 703580608 866688042 274848679 981133056 63868360 832087384 195870853 264508326 53536168 288516617 908887127 969780114 963224132 969169740 681797840 768425228 349583440 745126064 61791265 660666259 580945450 607047883 507689614 744538909 653635282 943008600 341227932 560658923 773550389 862216151 345382313 640916593 62622809 867081226 919421309 961774527 267452480 421403881 19986661 520675210 613902387 648159011 750877364 931823935 220650290 380712282 757952311 941751223 710682900 758588608 286521471 476576332 12527784 437462945 329808699 458513683 974661751 982535745 598440235 971711333 855825628 924892277 217223324 772835364 50530464 696307970 406340026 497950206 464686060 860311416 416796384 529873521 599599752 693709462 942538082 967355969 881062167 942657958 93951233 386570511 654300832 683786088 378183297 636537910 884384314 942017308 890899460 925717935 196845515 349310625 407536913 425839546 131137975 690546980 54823841 113000994 771965132 790798709 112566930 167626986 120558106 756154947 196374568 566153744 73637349 881054363 469876520 524628218 302244293 587045985 599129558 932578294 324579256 850332095 357627005 984273873 97231666 173734412 81292280 467529049 927842342 928463066 852483804 924031658 713945662 778942664 404492786 989914893 237378346 505858408 159976874 511369509 111000663 502906010 92316897 786266823 592482353 917328711 745233433 874352584 711515654 799639704 221021287 564753335 157110879 706639858 183842072 642236901 846609840 866856976 759478295 841900543 815940048 987862604 556826574 880171275 469694487 760118083 791750243 971341720 762958077 982537879 309091642 898003397 958899966 973033066 821214641 870599983 496898248 560994785 989822060 997592583 561335553 668363983 3348953 589851805 400092720 746752141 974345893 996355455 943492727 992414294 131916002 707162417 550886743 687409407 255372799 259626012 82766749 264424131 584406408 952385529 56253408 366216616 408330615 489662933 916368382 933626373 463808430 521763478 88678765 420262084 516864946 708980684 429848344 744449880 489560502 902473754 137238239 796591644 9233889 533308467 69351229 119682137 318758330 985821855 770468207 974844886 439312839 761860165 94053669 439646254 631978953 942219116 875979263 906943888 643084034 677109740 815331866 950171932 834948069 964814584 733807555 858775750 517484183 826342479 20194788 752009338 728018494 848402509 861038750 980522614 679985713 701890974 131186295 516524071 733121514 954302383 407794339 576797619 359312494 909286587 145853884 290062189 766090282 818027772 916864012 949945562 712835670 941440718 327517097 708677671 819386458 844372441 939834067 945472215 25754528 30488896 657456741 986603141 265678565 873867253 989664501 997725506 219425182 477465551 317510905 652908639 873379427 975100841 261796703 617362909 84339286 860667121 643661716 774802919 262176615 744903849 526551691 626196248 930201196 971832133 794734093 983738113 193748228 547094935 936595322 961432934 413271283 909840812 41862665 394126937 776759273 990521704 864492691 969974377 205180396 741734969 337597922 687897071 79431482 724417204 973760022 976273957 468675416 910205510 811905278 925894637 642099113 855390841 1571440 116351965 350040692 725562077 100054421 846276627 126925349 514014352 423964105 837042011 188846591 254780729 383406604 574990389 939467934 959218979 163932513 858216848 824669003 882293690 14157480 533985581 208585382 471849289 907594263 916549094 64575724 390488513 499318859 657637574 982775421 999273498 450388864 945235310 760970235 924369127 902323823 939021048 785479252 909939017 92406860 440707866 230039422 975785755 91196361 217050955 639531861 641123581 830618203 873117699 392339662 700585303 771992932 777374666 356723721 841991436 506197473 707283350 577591125 854929360 345657756 365774943 698521284 725398420 588280911 978659232 85086520 126541137 295275177 598816572 227524636 998266801 624908526 861681367 673734452 793887530 801152135 902222784 911669426 986880759 968111786 996492007 620212551 843998543 135829809 700776704 502085602 702671198 779665218 872658143 684686086 868201560 597348290 835996853 836473621 966149130 566206661 597880094 62102158 718448707 496010087 632611786 205442970 797948258 334700302 878342519 30777220 250359159 203079663 558352890 784771975 789847852 433315387 810364288 921199936 978370359 259956157 715579367 810833455 900878900 869622063 939012644 864350735 922359779 703391595 755695951 527136142 544620783 643167051 686798881 847282740 958179982 767346354 941384678 683501579 818991090 175896936 189474105 161936687 663466195 231604931 543559423 35289333 713685612 759969244 789283365 763963184 956187311 50908701 62376727 402717997 817648171 243854887 513493808 256277305 675714807 680362239 756295422 989187550 999562822 905774970 910724297 94738367 202176367 987524906 991107383 216050937 783143721 284630015 964947964 304108851 833600026 450150065 810083748 580544079 744042607 150225590 923425651 588143174 960465923 382048795 552585752 937850054 990467882 650815678 732961094 44826870 720529417 414531983 475000039 337004249 359919905 128263875 619202502 475389922 488166914 735179385 746870785 469094789 878289121 22099130 657224466 118914236 371380698 65586708 537062522 463324374 636473778 761272860 838021659 37648903 331892704 869310931 879789970 395932741 743581675 606232256 710247183 388325597 543394706 380787641 813737006 768998192 841351361 763397418 798533919 88059820 197702086 50884860 237131729 814309285 847597690 646827283 806873695 350581247 995915009 262140422 512202873 160997285 694047183 760979493 892942847 703865022 758362136 752575384 978920786 188365870 430766050 709820876 957775699 202524938 328929405 450946624 886564044 818766470 966262372 943855537 963945525 372023276 521759233 170880637 289377885 192762350 878461835 854364174 996483453 20871181 390103116 290886153 900954330 852119999 932070919 59170541 849321150 305878055 359179381 247291650 639202630 123447949 819546889 921340945 921379706 970704925 973225267 197711253 389062259 127404514 177904784 361258029 978251363 809020626 940818694 783319576 845509007 267665949 620882010 659790385 675597409 259171506 390274649 452766607 979431124 782315386 842281009 467788143 948215420 979814958 988368446 209838205 690041595 635946888 982441894 96440989 596553205 904347099 908177105 236178662 507342093 167479802 973219804 413339894 740237673 961768392 997077888 501671718 643729191 164324950 256372118 128105632 781025597 946477173 975206727 714120432 720969968 916875295 994411380 950800550 982784964 886604534 919490123 938429716 968399787 471630474 765718197 608480813 684227347 731252908 830793695 684449092 843237133 795382770 874093586 169202424 449588208 119568140 276420903 430871628 976193294 111206673 952631522 61623189 369487316 228440851 298751902 17299896 233081857 255116896 330460324 217953014 318140500 88843713 231673135 696771279 699770839 119868481 405596359 517947819 607607709 722899262 811726852 256503936 688399874 863689857 927663450 958881130 962931810 948398927 953486340 427574647 433957021 570375528 969270034 939612670 958337235 483569215 708384092 624145331 653488097 467240974 645600018 171325580 871803752 854023515 950522671 184221126 696201676 300222311 673131242 793868045 951431717 978367670 978387001 853309678 904863980 197604075 716211783 282129021 717003172 291162462 692398982 743654504 950361596 454554787 480490604 294648947 541091934 974569776 989363447 767063962 986471213 954539138 989914893 485200470 921559556 944523782 991249724 492097752 940380475 573955236 855953157 688472843 689033488 606975148 788606874 581923419 888125887 473898479 651399369 544452873 723001828 576025699 751907420 681094389 925705312 941315161 961045726 637102444 861707294 291847350 496560052 739086643 887549750 192508304 198330095 350931919 703730234 378777658 463290701 757889082 852625214 62876145 456390382 866706757 977304605 23548483 940545383 373505271 521277577 723173630 921660584 93285055 417664965 936577245 953279601 212067995 493474862 723968702 746476283 414533381 544423993 969904096 979222510 831830975 962257613 197476909 734762542 581954111 930746411 559036707 854446687 573743382 804311795 433614892 473660701 657200734 772806609 995183052 996817253 96703895 401235529 28340112 744453531 64813369 822439635 978505157 980405750 832280571 951815048 492865943 605694942 461316232 713862528 731508452 971233117 937353303 990521100 895216874 976125019 390837027 732560726 862798082 976230191 862271502 908442245 166727357 728727736 577462490 809191757 918223872 988230860 573810947 635472868 376230988 609574245 449293783 734771903 213893990 803646624 805929723 993074873 666232128 924463336 272768033 835490486 517587294 720150114 917529176 969451950 615026314 894745571 193827759 888329446 854107913 936692183 795262042 933807399 660109605 820607022 632394157 741145207 962543311 985695121 418353655 451782660 422369924 544249711 155747391 227192826 432501729 452390590 686086956 764841070 712474473 845110079 275607582 500620650 612551903 655908429 345803162 779510554 485051907 810501204 925488934 981026534 206160980 450446003 788198517 905927561 126701722 211208928 130668974 907532795 345941799 962351024 1542894 378779544 546477542 878398403 563391311 771115248 573162866 988584076 623441039 671681097 996721337 998079736 501127844 839498027 336058280 909327015 37600580 440925255 616249496 961847645 984413488 987787658 217918911 224197266 658370597 661557208 192756814 212728378 641802465 806988770 409698750 503181050 818445319 970430202 547641086 902693559 59934732 844312973 169190610 900700425 104865987 638836472 803848940 907650372 954667650 982117534 400831747 849952710 245968044 970852288 858661475 948759345 863109329 980521689 358359751 392296631 850417786 870782049 562174236 596263744 975293155 991265278 360996403 961375058 976996529 985435884 954247609 976574201 433716368 859749620 256639570 641137933 888993418 906540203 727332184 881302235 449496067 963199333 672471285 867444517 732576169 911430856 478051534 583455082 937644151 991334625 776754480 887324606 734642903 882755436 149988729 710867304 194132976 242304475 446779716 991597611 515045474 831696895 992115187 993842908 954303241 978024271 738437750 772368457 351307861 656717786 974255215 994700324 556395750 962540881 965559243 987505259 730733757 826265028 76935416 232291042 340874526 693075732 285740915 467933041 413879503 666310732 431076304 509405798 283752484 646867131 146171367 336148177 343392555 950204994 92621647 700512827 954811049 982010618 709770048 987653062 291391701 359047098 196787626 265666096 471060048 644197225 883362646 937718425 843132792 869145587 612496774 792631530 707328395 718600368 773931320 780082254 49106566 943670475 650615439 967793187 2637640 476595866 45200949 55961034 205624341 955185020 959188955 965455588 915836107 948673865 482774756 997991019 755030465 802923728 64004678 972952051 927278342 996361801 293812290 478694303 208143192 885645723 983144135 989656229 438245001 491999305 330783323 350482508 466821056 560479354 163320935 548167835 813644457 889573219 735598242 754653582 531164325 814105682 495228688 713043824 219918095 832270615 316467883 664740596 978935888 996478766 353352045 557563762 476089285 939854578 813716142 946354769 782544813 783970566 585679620 651803076 475722412 568373337 13983393 442898644 178332993 605722914 199093032 955364268 412294933 578603556 153245482 340548498 232782011 484066568 289988037 466867303 941101955 960910386 797515387 975614368 767935992 793188503 921042085 941432599 315770562 537800743 919336022 981634029 138971948 167924013 35559573 861105316 189177670 213879078 412002312 672995596 273715445 284059047 588782994 716052225 324026042 361151238 706063582 889658737 332094840 440588595 545063163 748036521 321139529 853073158 646610612 948635410 591001016 814704529 677879947 897770904 925562481 982479469 750799721 782236657 186338736 913995848 717381806 862805437 413835713 500411282 767359661 890868046 291050364 800410399 289061404 754525914 848250917 913856270 962734744 981534571 640019423 815874597 549036031 867005789 897950922 937945254 754814554 977671490 636285860 923034842 681269401 806347322 817019181 995487000 139285065 292699559 887220692 995588009 31087836 196295314 281030089 769728532 149449429 603104826 289303683 453140947 303239175 469780677 918685665 973389896 679765500 803504063 34727404 802639385 877013952 891109555 201866370 293576071 240125968 479420587 326814633 416653326 759880395 866427741 728785468 952982771 122660202 987483705 878293485 980898208 802222313 865256133 439829124 832452861 145365495 275297513 615692315 798051385 326288565 912322900 639320223 823433781 73851544 487952229 939223726 988852229 105414064 866964966 662865273 741896289 325125639 538581068 158167336 902401437 510091583 958943675 312645966 664303892 755988850 936926207 41587555 369719757 487782935 579298912 108533228 330731895 182866593 902319216 722464819 762789920 859509249 979622164 551351363 575516035 797210907 869672571 425610009 614958379 267345796 889009951 656182798 833473945 275369505 726640417 322977152 958024583 547692450 853980019 292541872 888638442 368355464 485620988 867873410 904631333 34922691 272579016 322086347 363595519 285633377 465949859 32438320 741770119 689491860 978903757 709492130 910920815 651729923 726495810 882538121 978931235 171829411 255076288 358260936 467288692 758444173 795430536 252553869 538179464 882602596 887188114 185758403 220312539 248274035 535441574 698879385 708781835 55039525 537062626 607329633 814810422 77607473 413948360 857525137 995524734 973403727 999607287 174170191 660673990 311929123 660685143 226581460 263429244 871449536 939081043 400549977 808043502 223575414 984306534 938376868 976486939 393415730 872452871 523470180 712062256 574583198 631096814 875102887 996089759 415605126 724729493 186098453 305260271 599191270 775568090 925964808 934961041 950043245 951664025 729491720 859126945 738221889 961466288 141010281 582973642 720172570 839193032 700046701 876525772 932795991 962125878 646197622 990045239 168991118 340015800 719842354 870280718 610659802 993541173 173000286 498734367 880296037 965966231 41954344 129376943 918117945 939214104 676927210 934798278 481893672 766129043 769581252 847633529 54631275 92258797 953896125 982223705 776842156 957518523 356270681 849911749 843806506 935556314 847679338 984138413 255797519 956360965 176913116 762312167 65469236 165373075 182670193 312574690 803135963 820341730 739796809 844936407 435679075 778355915 918203689 961637784 370038048 583966916 267730123 523515459 524096056 975851229 42654520 829670689 286932795 555383116 478156012 751155961 458466436 754955314 752652593 870597818 792699609 902722742 68796095 378605232 800890845 919378847 805969332 912636402 16899242 52084618 42635484 473781663 292599760 723731525 885316517 915522871 562945616 615335912 934204924 981782133 851185183 971127419 175645999 971446564 531575569 898786250 36341664 573470880 334149907 541747748 160264406 360216537 970222121 994971472 733553676 774650943 799526720 924569833 353867506 722528049 233944359 583690000 891574846 993443477 830552532 885879191 597246354 720940217 147815839 778641336 799691393 877836515 825638522 881276435 939055622 950177324 652899956 870352622 154181187 605020401 389838120 513632832 764007247 979951585 849629415 984256672 32843294 407639444 989217436 992422907 240581174 822356538 260055736 263266965 128817093 672939042 800776269 936327184 518976097 560681929 773597162 840886684 863831772 969370032 535593916 961818248 72315794 337237828 407162286 994623227 102043393 489390158 366211628 732724352 421150718 816622997 114996841 339069717 747676320 875829943 33235384 445386967 274681024 643655640 830742782 994887836 916939376 972120515 409169506 567274367 637171424 649184121 375083795 702594286 889088488 898460673 808389470 995601462 405289649 849209779 419258775 430791672 146770262 380597404 625882901 788011058 257406313 840979875 549277271 694362143 495534976 574901997 406301539 729308048 915788805 965696374 503190911 532818613 252429127 923644579 94374695 357270466 11954104 268955597 360311861 713665415 691006315 737288515 392549625 542534595 150968331 332324034 328075340 352679664 826191481 870317818 955299688 990507629 738720046 827783645 208891399 849132096 814237951 984167114 562550834 627192043 122873538 853082267 281422114 843416235 115811700 202972923 306847192 481640882 131932082 275492035 870587385 987784083 128157711 853996724 648831050 894434648 222152155 470147835 681355420 868935669 509134448 523177278 813506677 924618117 55601182 801306868 586991056 695832837 500337125 795572795 140530906 221708703 416624598 961904742 738823970 818116305 718986301 871821143 211995810 552140015 896847433 982630317 740384377 821034185 839102079 977910251 978513506 988939829 155678234 229568616 973995053 985344947 650736163 992343007 882708008 924898571 513485296 943163195 744835502 841640759 263635412 668640992 60268239 417546167 720183777 875231183 263867104 830910733 944599045 951777093 843144733 992943767 478114772 736663495 618474310 803202444 293002282 528241255 98715729 859053393 556874865 870254737 36803046 888693238 576689212 947904878 582198804 676386676 615827089 783452335 936285516 958276839 249575561 448444650 696705306 902186901 452530090 552665420 33696879 642394081 920322546 955554246 825869723 857404123 496107478 770576426 693868032 934974357 645063048 926714893 887649373 992069203 784213322 906688155 18590088 268030965 914738842 984689281 880746058 890426735 177638870 292507242 744702562 831449080 298553406 884198960 114512746 838505097 663617299 702686397 750382196 794402369 210206631 646487621 962782960 987737080 784803632 857392781 364963885 958203419 533813097 943309700 878154776 879123341 951840008 986829148 642636764 977380123 866273610 973059131 861316101 966348401 97476738 520009773 463709534 652806340 393150076 535055196 285514704 422260542 768608842 972507586 891053052 960653106 835039822 835493275 39994077 844581221 34679303 43146670 48575238 581317142 327688218 385674556 48196861 221732038 372913789 989253256 426430593 922349431 924213982 925241310 230396811 979049422 157929002 451002332 762892297 890110978 324887262 397448089 111452404 415734364 154271711 836067765 151930510 875014363 480145722 660040692 818677902 894654705 911151479 933857964 3077769 168662712 657010835 689973894 579117968 626831886 105363813 740407403 98556552 667721225 573920226 596076476 495329879 867264968 914311333 961702620 628048407 662312642 925002510 996587637 56235653 236609758 685189346 934627037 110813711 189687709 516005304 738634466 833708697 875593982 166296783 876192036 867106339 876106376 733670573 849333260 554477612 675240725 866819547 942100063 441242627 470249218 427315386 719234910 981039620 990767545 505941949 652700992 893826208 990646584 346062846 973224730 244591365 707519783 604813168 676751622 132978331 185855016 743858788 846715697 776519527 957058640 307728603 589109853 817810926 873130285 239549623 536736192 32586299 443837238 293259448 707283569 277104260 781422947 96505854 560883566 833503425 937198440 514809021 762523005 312886850 529365532 222925063 313289243 302140210 456857425 588684153 826044049 917848341 925539727 206329722 653083568 261997481 880037099 224803179 757180844 281875313 308975382 177023006 180594930 42838421 173894339 715703118 846057608 85593543 880747234 390802338 564668531 516070127 638042856 220641377 274007059 120459193 476546573 709792711 913671915 921558779 953120213 153878339 638582395 495511906 522857390 112482860 757251200 288727314 559304367 252912366 908537203 603087857 627101260 305632719 852602648 260047125 641691315 236278715 750384300 122937146 781055127 518488625 856933629 121266797 753975235 661298460 977827484 333277438 800832011 401204973 709270063 852629407 865374043 981883489 990485438 825768351 986736679 159185972 707368436 31287719 971867970 716762657 931451219 370545124 408766710 220683547 252144284 443815479 766207320 152753706 791154131 12603334 994897648 574907474 660820090 429886378 620311023 999152543 999997286 995821907 998489913 165771158 823863139 783222951 844772544 864357462 904525654 742306495 821015093 359354965 454901738 614803789 732342220 305646670 690763897 110807307 662167461 438110438 826591713 894877056 947681821 430863134 671888738 546026618 833534588 645460975 750192107 188359185 902586601 705431179 757067338 11269786 492275247 973516283 981414710 499954327 696928905 805309122 821260469 622420763 958438921 951955230 958764638 151889011 568967678 344551411 793396955 719181546 863362764 556446736 607907524 729952743 870992325 538335237 617202517 160499667 916280701 759830543 920840210 880061415 992652608 828782947 954463645 12459049 348619451 373159511 507295969 718143715 931194460 820879643 952895101 617638133 940668511 753464521 847833768 32220144 497695867 465335161 650208241 557705075 654326465 929509245 994652125 689154059 954073376 525377331 901101272 802779388 809032281 948915843 965710925 112128441 532528725 934391359 999018674 841276954 945551054 529537773 845545024 176325346 193407108 698787762 730702844 344181805 633145363 9741460 474556565 525700431 642362308 865133225 869143194 854749330 968416723 573039039 884952142 983799944 989534172 96590608 599849302 763572480 843235175 986013922 988835861 263707729 757272169 740908834 984030376 579447532 690712096 293671236 375975482 656912236 806989942 238222429 784639455 416776769 854773520 122476497 739837737 79754971 224422309 355559332 860705532 845957060 988042862 385213197 508636905 988427267 997138778 266827290 975285231 304743609 365719839 781100753 790353770 612894511 933218841 730443745 989298427 206095001 819413656 557438745 571378044 108595705 116362510 999996671 999999516 400516789 666663176 906660510 910386222 115023341 426096439 64562453 732396850 457019189 889903341 306705569 969496447 876914627 915742498 466948999 843085914 482873611 920312269 930020987 992222440 880698517 899907423 984189844 990541787 875695238 876633729 601035642 742910288 781806115 935920154 608047421 723381298 680737153 941822058 67889548 557651424 973261345 979992822 479583709 589344287 287974469 742481482 886187581 940020758 744441641 818688857 833638265 994487286 595664142 930019637 442930457 748895950 689328295 758380157 767850098 924535496 557949270 686494368 206337070 892535519 201494224 810662688 120071492 544490733 111456958 954513083 427038809 972624850 939852906 963394306 443466416 444226582 475711593 740290063 208344919 540937945 171037973 234373213 416377795 418061643 987466551 989494726 609075361 796079536 3079273 718602297 818386857 930555190 428646794 610582650 952122230 957354760 375554049 612803828 277986232 737281713 289415845 393477339 668590550 675750197 702845888 714097258 282824937 290965787 129703925 187576762 569899192 702414629 949177981 981649385 176199910 567174633 792581769 964148076 434701458 464212981 457601834 912766371 330524005 671264698 119698310 526215909 17169160 855546664 217800200 298784479 958532442 961938007 787356418 949205217 143527156 349961654 53386513 185503537 336672931 808009749 482473746 714582678 825404257 847619836 754878005 817695537 875380051 949320076 995663154 997875984 592736829 596649776 415141766 896370449 772893253 966795863 762746834 921633750 911726397 993632921 375788207 941927672 572293283 589879371 646359754 909969043 774999718 892317398 778670982 869583644 895388765 909684466 771767909 794414461 776201395 867008838 391529855 702558935 29494068 914390245 686183589 897314487 839522554 939110710 672463559 861169311 359054781 740621161 136611225 748528517 830304760 852568263 430164908 752073250 766081813 776263883 968716332 979456718 804186143 807576436 608756975 982580080 406246179 442388539 825235653 878269596 500636015 713096270 164482303 272498349 164657958 193434908 70791832 768895342 547664323 847035080 293208386 651210919 723775644 802674980 958675269 974921743 230251065 855640265 326988419 612129007 827752503 999625093 438078889 729958438 371921829 965250325 342820247 554698467 336043501 664812675 22893995 715850418 148058376 233994953 107434402 218698077 422947146 765936154 901096444 904500771 559413792 668615797 971550659 972414222 827510770 929984645 931556837 977724837 968237644 998382953 630010880 871683853 691464008 818294689 794849683 856127686 235896334 886485044 531695345 837008416 10263039 234314715 669462198 743717326 102020422 437401840 144045141 552818390 172801153 492010577 922024566 945799252 443647269 890881900 663933338 762320133 996420154 996915623 384465954 916357081 500658558 525591674 303157033 488014255 52258971 830214309 938758086 967655094 427199316 614562095 191254137 672043331 76582530 158970421 697200011 862104092 377176927 395274708 707253788 983024305 98257763 323675539 684314659 866461706 609288998 810128721 330562733 861392971 980087051 992409570 607773979 787816219 974732829 978895704 41297022 573636656 818068924 948787510 754269259 767382321 485529493 572934558 372313227 618459173 92402727 128906576 2477885 580238456 767629698 982965291 911355082 988582134 106379387 363967692 112427499 180006197 518703336 881468256 884168681 908857086 746364008 887524180 94536189 468887885 791339312 895116259 412590321 977830519 690962400 921590754 618738518 807743333 39377505 284098179 537291977 701908527 56934793 971488816 632847367 684803616 121830997 148702941 769834440 872289312 642499859 878141498 847697719 989288495 685921331 926777593 178877916 599886945 608456965 832098458 749277982 986089841 898622893 957811969 128594049 352249864 24866745 776824256 873857150 928845735 627854958 635368138 502078405 781221523 140429249 781047893 504037667 902300307 741681988 782557435 889643307 962664482 1811852 888093802 843853582 964725437 79680397 906360808 727043457 820707478 773569877 832737561 964981087 991680693 568627696 584921352 227897323 738044882 340710960 727857479 949700239 958214884 529192186 598483658 607294997 738056570 467627456 934947780 61065664 280355088 85989238 343865505 433374672 613961748 898952234 913435209 112626836 828537332 164000314 528008911 61764465 735177977 397949324 773656320 141484210 617859135 813897747 977939181 208279895 259472393 774400155 992776118 3404751 401723750 861551756 933779542 3301977 403743664 443768191 950723913 527340794 527770114 541688265 793632298 304892267 739776829 553960082 671290006 485752816 707506769 251021996 608393028 898422942 961572788 646281115 655662277 576921491 697316444 140969519 625246019 501381975 785086993 34339233 121872275 121924315 510746572 648495743 945065394 367495529 998114065 202307586 623341911 786106290 889161127 508066787 859868836 579152328 614286349 98963481 468790014 342532785 420422572 199377571 399887940 393136552 830053344 388891639 662271304 975655906 989383927 120244457 820564123 691051548 824343927 422705222 604658261 233662009 923195645 587584466 938725311 595823879 747683483 216125860 873376237 846946154 964238783 143464760 361562918 976458416 998267204 162326120 244885353 387700437 923942653 965821951 995340835 647516272 865565846 637055356 909410440 412114818 981097916 891256322 985210043 404498878 405775158 219119294 729671699 195642470 731460085 499841884 870946597 623704964 989912939 157168670 572508943 279993316 812326118 323452506 784134493 335635361 492085712 483028525 648377028 433401282 960379758 550329889 884534180 327914200 637044181 123364735 800173090 743062996 774100224 209638538 632406227 793037815 908433041 75762871 751288804 628182017 770626603 367627823 587296970 767738063 775968103 472360089 542814469 227291716 864380067 334742518 652443132 141304953 342614250 807415986 993177962 704348682 744014402 931445095 938458401 616917575 758713917 890877833 976577602 953045798 965518365 529884648 919301132 301182552 558065421 662410391 721840942 445833069 686223494 307812342 741528295 452878741 611409962 832845166 874815783 845484127 927309855 770008742 798507821 604509985 817990952 508016770 876237742 106486318 128794067 813826591 884272323 369343004 920489211 361493486 740324376 138116986 223375579 437078435 878683825 107124374 145546072 726229857 938982829 513639935 577852552 664236478 865630279 850013740 917308491 396648207 945662669 754221921 954931384 651546159 786509841 223085072 732159692 927254383 992949553 571061674 670563428 1879531 138531236 386520852 831003046 170610865 342184188 623201863 841418292 957649256 997017285 503449579 606770640 975564223 986864522 692094024 981485167 789555467 867122865 173766250 370168912 609189588 986436023 551838237 628614628 20783153 682065072 60246554 587919048 214761409 398019059 700718248 812639085 520577261 820020664 465468127 739513720 837337234 844520481 41767191 433535307 213427739 954967639 968557178 977672418 207201409 943565516 16029330 477312007 508961644 590105193 30090080 593455568 940444511 994031998 529799001 741335301 641366150 748544469 382304123 595842436 175290893 196980950 882534240 985376051 445923590 461301096 930472419 934748913 526700303 645876151 670150537 956844994 253232056 300436420 108497205 943188272 163096929 586128052 646846206 751575746 42051594 879003030 921239590 994805995 672631133 834916160 990483553 991090352 508485561 746114948 956557210 957358091 363761720 799558206 79075109 550939198 797097316 861798000 426301717 512859474 449276851 782680596 797762399 819699599 693734601 828251023 159985813 748074484 988142499 996009615 221487129 392017575 683858193 889203765 838333973 924075869 590104194 670369712 898343081 939201545 531333882 730624536 279360247 898264367 534170981 958617348 81107828 335444761 151714536 798860932 643222658 671619519 198808399 465434981 931204654 980868958 31633343 328446236 610006970 755319052 424301146 433821312 717554150 825069503 147023459 550822714 859924435 877903562 582597698 627927784 810782356 973685305 409917288 411290303 78186095 882079844 946389011 970670844 102136368 244623736 97940987 134165050 268306142 415782715 903916160 952824400 358266905 395355061 11640117 963496956 298786610 381463883 276963130 430098976 716750325 805616888 62068119 495434942 796988130 837568351 873474286 958020028 118844817 896608737 534707112 648866727 133442581 418772568 640594207 827078938 942099720 959602639 31743552 238655455 580891393 943355163 842822551 913136187 406150676 983948467 989037958 991335464 573887663 607341956 713329917 757687207 22734632 616072037 901963415 919981172 740914874 912597065 30742273 51788198 822680265 849821873 970524889 971001628 753196906 969021556 593300997 616598605 131728661 662924818 440675930 494922205 386192932 865653306 743096596 879306729 707549597 733857338 56218234 121484505 229039656 557011393 630906341 787222171 432870349 651494127 87286603 521533771 148547393 878843997 452629340 833795193 544823364 794313741 617845082 831575253 737861134 843955871 666561157 890586679 649216110 920233112 397111625 658229101 513177500 900404453 988854113 989898234 309254651 383405479 579841662 999303451 794805274 933442357 806197830 845516044 883694735 901368212 226228005 673686058 644212503 800689166 192883127 865069392 94246665 400436145 519280404 608217725 525573278 890181130 635136642 646883015 559507165 914040793 548538777 722612912 239733535 933507474 741186409 988824714 101506208 462185698 896409485 932787691 293341575 882996560 231396683 605239136 686931911 969342341 135833937 738007668 4023740 548912541 404309481 809507018 335809612 617000659 402604995 496626407 193116438 274197344 603937261 656682774 508233520 680817018 61954994 72806912 467132703 652119832 837583743 899802072 764025432 765066466 854357538 981012635 761063258 841189376 64957667 364478163 783290543 788149515 202284913 760629457 837713143 954454778 939787330 967468469 88790641 939908473 698076991 786378491 297865171 832168113 285472110 936596187 611886578 810958782 636261458 972532192 469076700 729502479 831707178 917629807 840397527 918212326 594575533 971876799 492804172 788872829 38305584 326630389 464498742 993616773 524860862 668246462 996012695 998771265 830397666 888360394 90071553 646048941 698942249 931420918 142671961 379080811 763086115 884758762 871305952 914228657 97020908 833790157 249517245 931258450 473203794 725435796 775809177 845745153 460934105 587895104 985236125 986413186 887477652 979047617 814316581 910958531 654818456 927547902 554734067 960542766 967286919 979190550 977452235 999456330 58783170 647298216 128044479 892431518 543725430 913251963 614427024 990247547 276883127 805146650 122631439 568116428 66943331 171004826 243109438 495837848 246762488 431276003 464735517 520355089 684565344 822796205 664603768 910986707 541138673 801471299 692693330 777848960 486918743 996869027 971556404 982668630 461212798 998249158 461849073 910130036 747232668 885374287 108519142 239251497 472760449 920899004 137212962 454698985 81502156 237018081 454630266 765486623 861677881 956034376 458274820 814139600 870133522 914990010 701107648 721805619 150203490 184700461 792326787 853604712 63387318 537007019 170492819 368080736 549363808 596159257 567928840 732346726 555174927 957128661 281811102 941645267 36613365 475306917 78977107 355764096 825244574 923566845 437335109 606799570 337679987 589146860 418988003 506196405 818069777 851676079 725415509 926761000 348318163 896497467 811252739 816930480 618178829 779014716 13148509 111242614 173823253 421998400 679140352 682413447 643658132 699950212 430056444 775987824 490374541 825917795 405137872 564706125 699324987 917793844 963989893 982616920 569253541 807072911 570806861 959786662 366284767 946713244 333820354 722128109 697589951 975746531 977192894 992258825 370844966 413096431 404549359 858255278 613309096 665447108 129945909 692776146 851920901 884762334 501839072 520778291 830607266 933708733 675304789 927200615 214167423 445407036 632633427 721928467 782656232 943949476 947738167 954337416 107149934 338544983 755216532 843142485 50669777 141923528 737739946 996127422 192548631 512533055 495746441 837616699 335633857 367698881 916231133 975127021 907717203 981610564 295584792 618661704 780433315 885802317 494747326 828445597 541536217 936963871 460362891 474445337 114547574 803062710 378772337 540252262 271176824 809488607 662751589 860873990 30724303 165941626 638911074 852315033 57389443 963463515 588431068 777089675 782670593 901651899 828380936 833786346 679162623 838836006 331366701 340259767 79918201 683414572 755258688 887900825 289428375 326950907 579664063 612617452 615197878 989572916 913449690 944754476 845346396 885415482 672881184 777059043 604549301 781379914 508745906 809687357 33347895 667970711 847577832 913237074 678177780 734228778 854412284 928346526 163212959 840374247 693572424 874563951 691762009 701857507 654057506 858641199 887924319 991244865 397677131 457500646 944405474 960324349 848921531 988073725 615898464 897819484 155554217 383792418 64783895 132927377 527939074 814301347 720472164 968024235 973160327 983490377 497430724 813139919 333240973 506913396 254583442 267212132 232387014 279733935 459901359 601157440 599425811 723496176 806478527 902842164 577344467 805321613 76738243 437049802 926236293 995312768 514303812 821369927 805157891 894198528 91479570 942455060 16122984 755712414 706912615 915464664 247204310 401038328 60633370 189920799 151490072 635325434 807894481 992331405 366142820 817643686 598937244 718630052 124629053 977678520 192295940 937309299 584597445 709758999 905920422 965769586 978272054 983724842 966758447 975578357 949833894 961427542 912076859 928307650 734576144 991999362 619022411 781452273 791208040 889515196 152878032 746360963 636041109 838537903 579343525 959431831 3518130 765152739 622750743 657373558 776124758 892224377 59981507 384918377 439541484 755726915 722391766 812391780 958656612 969550735 475107558 719549432 201049129 822000639 723142791 834579453 335365831 783528395 813650501 877480043 480732146 916990804 63284811 505143459 358732282 989954292 814175808 819348218 64243372 923756222 58520643 594085438 963053913 981827446 230264427 911224133 926530461 987236131 613162827 846233439 313025189 718428080 602356796 938050017 619066529 817896177 773215282 792863566 454493513 936461886 157939597 798918841 80090512 981311320 878936592 949957144 493912238 750811765 475187580 836022754 395410946 847740411 357506392 688529325 479521157 794981541 681398622 961106243 883280496 888316040 811982984 922603797 389676477 427956873 612811000 807035294 417444299 859133930 847237163 970505588 798358021 931159782 143099923 364360449 127634415 996778093 761815380 891864961 524432320 812176633 700036566 710207068 493898882 809993597 71720801 230557669 584818605 668658947 628609897 736703946 608626314 785331044 180424696 718985917 487279754 812972038 917545080 937955570 609323334 748243242 354859438 758330720 853680199 947279479 885409579 998695708 392587092 815981967 891308143 981084492 657796012 979670670 948701955 978015112 178033027 332814314 134183984 932304490 681205864 770385527 278002431 663092204 958029057 970902035 481452143 593551546 129892224 532880183 519356703 709284089 762375329 965383635 675195436 711771299 30310832 602366293 304666820 904301042 912535028 962416364 989244232 992880085 144835275 705940949 843150842 852799280 16449138 903795285 406380957 527527458 41363854 560096771 4305744 954568889 652064313 659999504 580726689 904250979 24691690 690563553 222072976 860729709 108138282 376349394 670071090 711478394 830439682 982077594 402669880 688910347 449171334 688169928 396849692 774354132 923006962 942432942 178286202 572521969 715726764 816484730 374215425 705047576 117709210 461876902 365385010 700206959 365087935 615287104 255122239 841265877 323008397 997806285 801050236 932610585 753813719 904314546 203582194 831469136 266158863 564072015 200998283 866006660 430796922 954547192 370618278 900739440 838391378 913317089 807642623 815162128 949031565 990836519 19519718 107944903 388801921 763017943 400723478 478396692 876019447 951030606 208040645 665284349 638268879 787353778 837906627 934567704 9421415 93270906 371949862 706228985 736713126 802321325 32266768 619660508 4490741 854405564 883966360 893062406 476189434 755710519 710697478 830444209 203015512 473865189 839185685 885536948 897989392 960052598 613053845 932830209 171859228 219450279 883869662 994574805 880362368 887021165 982219222 997711373 903472303 906606119 20506629 320904443 645656448 938130682 434631813 810380526 790898003 813640108 563746735 772658852 165244385 977054701 98147677 110845348 377780137 555325304 610905467 987117141 538523833 976864782 592342467 761907449 988174329 993456703 993009099 994124677 509250428 622537834 834921899 843558255 420213458 521189898 644931960 835357912 837693149 949358099 645441497 678516483 821242845 867736973 140832007 467923450 601562341 701692992 62189062 424026330 831712547 911402781 91368509 480273823 70141044 910437108 740441659 914669515 531613407 770688967 485876980 897214944 974110484 987201478 726322847 886295426 767420482 869414263 566410884 585516275 341458688 348849626 847307687 981044959 730154298 884340738 639041312 979579653 316876980 449576594 851861202 854361138 274282637 771977314 822540081 870794338 1062276 25070500 128665608 611669943 564214242 667032595 124395322 433185374 703552176 745184114 956368815 965706079 577780149 814461433 146663154 617764587 326300315 495275643 213770987 431359417 350859972 578325109 377737986 999657023 49517170 934740713 364165147 434989296 239424637 351071299 535646241 783665740 381289416 587841529 510563340 702477406 701200995 910986861 17834897 429512207 61155202 450434622 92191535 329239077 555234277 856896001 587533034 779016984 856085412 943010192 301587407 448920292 128444751 498906709 987218124 990614044 367556588 931520412 57052801 627484025 349623995 360453887 588133193 804187749 848595084 974886737 343762839 408495068 774774079 960478680 679388582 835458304 683630791 688591519 562801765 678818399 679166461 950499798 690125982 880236986 562375269 664116013 565330344 967792209 26045342 325621613 420760492 489139335 306107220 599511516 206287176 404757377 896262463 954233990 832787847 998481243 734125302 926345138 214178481 673229815 33344384 429503102 978723097 986409780 67817951 813061772 459912115 662014364 441692109 928727610 450104407 970155551 961690613 991888672 710227778 712195698 143558970 883560564 43203308 719247473 297691751 847112905 424250422 540049751 258183080 572846472 409167873 872661552 335449825 471478235 772602915 914827067 603738256 618003813 810891348 977914828 659689253 853746573 119626090 677398999 81417169 415002704 955256289 999101818 587649727 590785617 592403953 761177771 538484342 923561728 802586885 893159350 160031791 251481451 456067131 954240387 129149382 872990134 273366588 667106919 314661598 395716007 974229303 991009234 135413819 478535128 406184078 985743276 667503966 776454698 197343094 923741076 533991394 630424089 584725937 749721031 609119329 762521119 994480942 995906572 143393005 812550832 151805948 650229500 417141328 446345875 217589154 361641937 609367187 713449665 27803961 397990823 202954233 217318877 86665618 257920468 324230912 452919655 12842095 190873789 106025593 562363551 664744152 697782964 631511123 692203794 270068766 325172332 4972578 710367679 151586195 289405963 403789324 983173879 163341571 814971776 44172288 117467551 857045009 965970073 813346684 876750250 538971760 859772047 217593901 246512129 614384030 902737308 227590136 812719832 324465350 556514171 561721291 652661302 6622284 655005350 306328582 959893662 615263328 863622326 322839453 869136022 858521242 888175780 646637803 904249779 458416573 850021266 570943634 579984687 424717661 822638480 758458904 963669713 52511756 799915468 896233635 906546193 566263234 917454750 881855688 982030579 498149456 923762507 392205748 585519104 393501995 444194304 42487454 267398760 827508364 899859034 379906641 688559702 591495212 777120483 449661253 706750323 782743733 848985551 51761344 278596742 528607988 753669564 980441748 985355566 152470077 778239995 921696101 974912070 910577996 929090014 513438995 913178484 510083291 852054092 221034910 918941143 52945157 307078861 267523213 783904443 857441567 920240145 231243624 845858357 219769646 658276470 101447076 913588273 897678904 996986223 462089485 832968018 455475667 484428911 869743764 883913091 883009401 902484103 258512395 956550094 49549600 776753112 57636905 594724293 722548006 817421279 847304587 965473129 553724861 905217687 528377261 843646375 69926757 385153528 439532973 762026021 470581549 844309484 600852834 959465548 375413435 805081449 869502564 925214608 279561481 332884714 156494473 266219682 284260458 593807034 320144485 465747620 361115473 604240873 993095342 995789165 551257762 985281281 775721323 869699443 410900982 860599363 797889848 859573074 99001714 564406739 558540513 760030898 558478420 573502030 676632081 679431080 242508431 275055730 415069254 674581361 452412055 765543271 652503304 737267382 178536516 352795685 788996809 898696818 152852768 159732489 216253824 320776752 679404875 852245325 57287691 471435900 248536945 981968733 231280869 812196745 323827605 413962775 675731668 748872191 188704858 558765943 38138819 853545411 863565026 950504554 157214984 231137020 309468674 866639883 926352940 933228423 462606833 673294192 509304281 967165934 58393258 304545072 466839831 722849165 337674962 413928551 695159723 807577537 849825890 908254297 490161407 509072828 185736080 721659384 381138727 403991835 471728615 853916985 458215176 694080653 55560092 104174951 999961578 999978176 623585558 795830051 126916100 745017356 627169453 806100334 611337262 991386205 613015366 959294930 517779774 653948639 29987858 881712207 621901171 815575836 680129471 978567258 118774795 953543574 795413557 865426367 121010219 636314804 395548571 964907202 78535159 387914847 280757566 685083958 646482369 732579477 752467001 782072540 702087362 831926774 646637337 869823568 483326189 820398011 875385580 927669422 375799453 995908469 227057152 466050212 511483426 520611025 138906514 832001053 446889920 971157129 328407467 869356138 484203150 730007794 583002801 999084607 456999867 745751895 430281153 746292813 446460595 667513168 316966820 526735999 370624170 529394827 543569193 666061120 98940781 940012934 415625528 587707521 676241775 961380585 655174751 733738193 76134197 330048124 650544917 997058039 372132573 505236666 887824983 942274722 200562457 849944769 995863113 999939974 476666240 932337667 578408350 779827662 305338070 949824828 647082134 982150896 762837436 882036421 848182259 861819518 519956532 854653751 671098558 686855731 608293679 621823845 96504788 717113135 216912322 865892823 48391290 224565937 435964904 593790598 629801893 896232545 832262066 998048255 180544233 550946384 701166482 825138087 928663802 995427499 510124799 521838675 671291071 926306085 631283829 703414773 149439663 433021237 640659767 987467372 619529488 913461514 887675045 898279029 599251302 823688645 185277710 440684752 771722254 786398627 741173093 973910502 666785746 926089159 13472595 811419717 222116854 266294262 727714186 934300980 566921651 748166116 460442598 652632493 821940293 864434922 219884366 872752789 298493947 822796318 277557954 446255196 158260450 694883291 684795263 840763802 924872018 970671358 257258493 284113232 534780885 875568944 856920178 904587340 412835737 950559696 10309062 516901848 400772589 609281961 741387285 920939120 422421453 746704591 206699366 887316817 540098158 615308990 81981997 532647210 47431205 530262463 495294923 511188873 839183540 929043685 680351475 823860468 871338961 945978247 100383399 698341335 739411954 990447741 170842895 989219623 776139661 950750728 672097709 983983389 778034760 971400081 908923417 994393321 309160444 886956355 445780898 668971290 859264629 912625808 959799683 984638590 341848345 919176427 492539267 518144768 949344921 977075266 54005410 217949722 769922000 794226479 31261749 653855399 837709333 953653602 105379874 999714642 399105884 713766289 142006981 299140560 66999660 490153731 488937017 785077053 134167367 493332329 284222085 960415109 998461266 999164246 986530641 992883720 947581113 996863424 919532821 976565732 808250953 877278589 823834609 997433552 940676464 948842024 821660906 860407990 75252935 389655190 735033517 989657207 379366964 744153462 600038251 746921301 607220350 839497326 878320191 927324112 177280899 759103544 170461291 360489041 575480177 800623983 586687766 635067817 635898424 973549087 652191180 720335189 97737649 451841263 195368945 824031194 518460823 789869522 243964422 365754180 820436879 960417121 418102591 878553873 381699226 620799084 291595977 655916415 510701181 860592164 832439770 851547056 365672346 596742105 271104814 383033162 99466356 447877656 871501256 952417865 784946925 993683332 75503969 636988582 616728662 688189562 193598050 374827145 674343521 791767872 484420489 951698910 436404192 994117014 784020850 873666797 545522788 959704044 799883803 820069450 115027208 449206467 608411362 984673650 872545351 944086218 659763010 890401283 769349884 970928410 145713845 329512019 961313068 984913587 100011202 902036111 180871718 624647801 222472838 813211850 535289582 768800095 966999516 990837082 994824584 996566251 783672699 962801023 12116344 737299217 854084662 909214824 998954900 999003718 178749843 884031864 35513313 173489475 519122539 542270667 170540093 620641688 766852441 987605629 231061728 984297104 539777798 784794108 215960312 290088161 203125514 911651582 827630778 828909925 627111397 812424691 522391424 578146371 181836873 668354641 110459485 886399368 972056315 999826934 373277402 498890695 7914504 787856315 496139068 651359227 66158031 263919831 997641973 998338134 111244362 563087651 69470393 994832353 668111974 943615093 296441880 730550397 164709556 632049993 455050840 750367294 559813851 741971677 364335347 807942071 548703185 905040373 450844797 694366795 991361440 993304019 837915462 917070057 523174189 725764790 408056648 754134646 593626314 723325160 601558952 812159357 212140625 575961952 96005189 514274092 424846904 773324097 94515376 485469393 980592192 987412229 628988205 693795450 374866948 386889853 453600718 687646977 134253091 295740889 954277318 988287319 111290904 586396573 486753142 842632727 491330188 833255384 184508535 608297052 604921472 777771858 307337176 991469521 382788678 783886866 335520053 959154357 255633255 338259762 68854114 899661976 66443971 449419483 191133417 864583130 801998766 901265696 743213894 886217361 699033073 777738973 343372633 485713499 246793641 427511095 387414090 575879358 228985052 540849117 425402265 500600267 28868942 30096976 171741967 954359566 607584201 958450568 830336480 950275903 507313339 899704897 839018250 914563868 295455191 948207217 351101603 906118855 947650949 947727016 741710675 853873840 258641393 849405227 349639911 967007391 776356642 787024988 390842166 647331756 896545990 971112846 489403716 815119439 470293537 755589017 89958211 501297519 687946298 701897993 490372854 836185886 6277670 78732734 530765064 618109627 118142574 903728803 253037909 741461172 346458796 929912089 724515176 956833990 442059088 940812126 698299294 873118562 866129360 884511000 141866344 447351788 458122120 880412298 447544889 608826168 790608000 864240626 227518758 527353966 283759145 384700948 608794258 895575314 977461065 983066147 19225489 466446543 776746150 925417975 85281535 606617154 365695589 853729907 702635958 885039357 656588149 884100971 658766363 685474725 286949892 932771391 782789822 859624799 398827759 703747974 276516705 787288906 540335689 582055762 728189922 932206850 836898240 959580911 737046544 904579625 81760984 134390902 230448218 473521646 552822129 748514014 660078181 868020220 846081887 926915107 758154808 991556876 69967528 596159830 173837460 785725422 872434610 985639854 481673623 608765261 414308504 747451872 89123489 826492468 371845365 381655108 455190343 785164445 792030358 846886316 482305343 693258644 757599634 936413008 180348944 326394857 115945598 691997791 672366809 981787432 770009024 916241883 487397706 755523700 631732277 709601005 691027196 772047372 224416350 470457551 860496939 883442084 742354919 747442094 908857712 927698821 98409590 217564459 133502189 152866204 53285671 669267259 576342069 839089063 19371226 746139459 100874525 923787377 374060205 868257611 907280896 976092821 906594404 933475022 653067911 836243174 480135327 756438427 109185240 899765162 631676968 816820422 605823633 801792785 441297521 860659970 977893718 983501843 816766118 972846177 45273320 859262332 716645510 758061296 64094191 773216136 258934752 578190942 681407161 747240874 967330221 985262000 910473570 997095550 254136928 361909761 326993794 603789298 963349536 973527944 87580728 247103928 620711024 921729707 455448465 888221225 662749203 943059546 487352999 659920823 801125584 825998592 669902756 690289555 596395982 833251903 684227238 948693631 173518599 950647714 97096782 684161719 715328169 719793446 751346721 773268199 815913531 955232923 169478810 355414077 818433132 907331717 848989059 950010973 732595217 993605749 27324305 285282397 84128536 171606265 628308228 785805312 825080037 957872094 785747906 995752986 394111551 774897580 657503222 934124528 459718152 559470857 868943959 978090040 990406400 992593748 506005201 658592660 90366725 728744374 556128144 905271526 543083884 766066301 193790809 950331458 167441409 359830966 384069517 961274284 420353470 912255465 736416258 987500818 526560924 929443550 567189980 835906427 988609535 991497894 458483526 758071188 138806238 674089934 687341816 960725973 681192465 822213577 394921606 587779487 935848574 948907221 856388253 992016968 422751336 452575875 747017184 879012710 890655161 947207901 613082609 637984025 384834320 851080646 26663153 877162910 154362978 617162258 53103138 486306939 401121560 624314165 313843848 355698112 482528951 510544401 564080213 627887780 840123734 912051309 584382059 651057359 944991009 953246010 649991118 942603762 479560795 692111615 419906984 902360273 185301183 375777182 51241448 857415236 899022960 930620854 663047129 881060584 363854451 478034447 134403860 594698204 768915976 889925132 932394222 974262387 62070839 166786715 146681965 618204884 940882817 969240337 758414836 950895176 710826939 731751674 685507888 980847556 97571347 296693506 133112873 886578844 49981717 550865142 916757820 978228767 158754884 399011161 780612697 845453472 139077304 241730289 987954508 999658957 409039640 685077576 601826579 722869588 25733621 421189222 627490172 703359536 273818134 660415495 729599799 820205660 854986833 889911044 697375040 955798118 104027739 576008281 309659544 555258102 64978352 347602605 985818162 987316926 181097495 749384584 807094926 914746510 850278212 996520827 364929206 487399139 461894021 710774125 427677752 873665159 886655022 928411894 871198948 997067294 510905487 971998861 164469011 364473163 776525334 793099331 339427935 380927297 453505299 939830655 409854302 598181093 677763656 843218122 561047190 616984005 302189582 772580441 300744948 802944495 830402286 853524492 642365690 946894814 508655513 926085266 749338798 944064438 199551241 297736855 621379242 650690833 10455326 780685376 613173045 738528136 722772563 976974315 877768526 953736817 945793445 961007666 328120815 488150753 985112026 999667645 419312374 921697533 130588254 418615315 391301309 534855341 653101585 678075152 766186601 811966066 962222365 972472488 681090657 761562771 734239355 894741313 37667761 809792190 248068671 330328559 985406578 998900601 774278288 857321647 860089541 919528162 63007646 577537285 144643970 707250570 905705875 949972277 960221311 969479096 263505203 636968420 557874334 749475284 608500774 695146482 177994222 516161932 448053107 604448311 374392004 687681214 116019994 337535656 397216251 887215772 788565040 891716366 443052887 989272914 484196415 488995388 68322379 499068268 473776069 941415750 678182711 847530544 535384357 893248505 35332548 564389913 904393198 916563310 963606829 996374088 214096998 907641598 776767491 989416654 293297498 854182881 534306283 916005004 347365037 706137436 143697007 927492619 37553744 823585995 876408197 998037435 211742402 788817201 919086612 926888789 390310649 529766183 662283379 976213815 596904081 693658527 375914120 934485032 22284376 441724728 584619691 970642258 388165357 766266291 941334635 976461600 616167619 746979646 673091065 839914912 163760594 753142908 930877073 986722247 702816108 745027471 404317650 508842598 292693699 855629428 334823840 673118816 131211607 805167041 253037979 274211697 950749006 966364803 895986639 980203846 254319304 786138006 786853733 919721677 550663674 553585064 61190408 448537430 233656321 869637699 23005218 265303985 799712955 825002932 748601552 987943042 521935376 875927403 293584983 743472255 601877079 933895746 154107142 832354488 702432726 739426042 703576112 908327666 714823894 756124192 551511931 957182186 234588785 409447200 669458274 698489192 273134378 872570201 725480086 735271693 45778532 714947209 191735685 811680061 393661780 653892503 204140878 863950246 323840680 748144640 345103148 594928553 991311621 998106262 899929513 956041814 348998007 758966402 500230555 809071171 113449969 131515339 193573962 246306021 339675545 619272077 916923631 955097614 675775890 952122312 551093234 840099763 753535981 937063800 612296622 652011412 322104128 891062625 483299761 675700909 28967805 782427470 989304644 991628793 592592654 746840438 803688216 841386243 339823069 939670693 176546375 434017984 947864112 963113413 522197873 887326429 341343026 516753903 824387411 872039556 937016288 943953061 915727170 919300477 272593700 438911403 642019067 960177756 70206301 599800289 302482159 727297192 957581576 972036366 568959639 773357632 773095624 903502641 123465944 741695720 338320099 625883155 614276198 619213506 642019877 901962461 952391497 959252888 315369857 850075834 845730265 995138659 46897774 128899927 86761314 113002148 861164408 969882874 446936572 827425549 593565375 598679280 323348865 554447873 834336049 906405044 610780472 652947806 572742797 762986889 808291490 835348262 583007457 857967649 309831221 834386669 767348626 916706152 428510329 976026161 35076186 542033474 559223805 628078621 797257305 816234444 919437047 999216966 990505420 993546295 374543836 642482744 426478909 614131426 523712253 837346230 543329470 634818856 751339250 984499878 193332223 309360165 417247170 985629153 904635294 933352024 379272251 533559438 19139922 401707652 787075774 933754215 270803991 765675508 168768739 627818650 926066881 969875586 641733061 708391806 255485926 766608028 250931024 915379096 957849720 982340547 41768261 912127879 684715714 932551055 100324507 987656070 210256573 952928682 284874662 539045341 346284792 444186063 141840844 285009923 238390440 393367397 4837740 865203727 624124398 750667511 807842415 990644076 428372493 884101508 948601227 952926245 434754459 455202974 444251201 961404349 776055573 985021067 510885275 691999279 377147697 502120954 810488875 952241570 59841704 570010822 117148805 258313407 963575733 986780362 529092911 569408293 350277498 513886372 855362572 972867439 310999603 985873591 276909508 766046699 674959985 833037741 975749344 985736300 400258033 600603609 241594393 581565302 184701651 271612343 519629093 990098318 756866701 881362619 937370822 980368545 779770153 833665981 386080032 538544892 310743970 550463781 990120261 991110191 403682484 565567155 90356884 384341062 678428486 801896855 112086642 338771492 21373879 896383589 561544824 680673138 816433735 938221370 564442746 950143084 64943073 211066975 873435327 999952362 29174861 691569517 533906310 680689108 343377274 499498548 323814003 333544358 141546809 686130563 743313262 765634157 544245874 978868755 366048022 827819156 59860800 802398045 914177225 985574294 271556119 809087322 4445397 648885522 456085248 559706644 454703650 610461409 46174634 719469692 710500217 837865102 202682541 384116074 631362475 989447546 178570836 723243228 277507526 595736392 647858872 809383604 276905376 297818365 187822881 423898316 393490565 409186265 596963105 872871711 231915652 314742673 486481149 507552101 614714649 681013009 106818982 708872552 259000534 493436883 290550363 861279124 160851692 392422041 1656303 843962675 379434411 650129816 979306679 994868076 89475283 959196250 691687253 918330112 851121238 978192691 267999838 901535558 392171205 888558599 512962636 513009898 913186289 973069803 383977769 501330013 618381663 923004764 948079669 994379845 900739381 977540387 514043035 657364147 121368011 981393958 428072229 950785889 92673747 489284454 230742699 790595944 646940283 937627731 336611905 865368228 245206110 356009380 561163160 846909408 771457378 982989055 172211901 236686763 30415041 41224785 640485652 975943705 656076134 833099657 420628094 446538523 476865079 781287262 923932183 962155196 458904064 699011602 456866324 922024292 491660918 630842048 421582925 870948049 118844480 144486421 936564552 974907126 859576981 862067125 169567428 223159322 278769637 434051105 681957401 870223794 944977494 986137601 668499991 683064372 489886946 955389477 78471223 176578513 224065783 783624495 540705850 845563717 110928726 473301038 844340197 863978179 777761439 846340803 854378970 865330530 567148515 962716405 162226353 517872906 397168945 548423490 343220900 977356257 896919969 982830065 993336179 998853079 81658866 441824317 324684834 610507999 554615652 609267642 187380354 357986577 468478064 475488281 369706058 983769780 51834873 133417834 783351736 842889224 699569204 906640428 521256255 803361794 172246392 703378553 270732626 480181469 88306101 131234946 847391232 847603452 123239161 372588562 50676642 948413936 756232874 922659209 123729306 898473475 153255116 782331784 215801743 490501198 992497560 994597904 965777506 987448075 410832590 899935776 287104252 351594890 948322632 965034563 2487192 195060071 393548607 576162271 784847587 842848091 208102636 580903322 902893804 956723952 101690185 776071040 391072844 437537406 99428573 223085070 362368454 811158479 187274832 320421976 978861906 997928970 921635884 944499824 789762453 994825442 990780509 991432379 741693122 837872841 74694094 86043492 511162816 643246266 360650651 507462405 402618990 421812002 914764176 954377726 581760064 905799958 694231502 721165356 837626693 996555149 259609121 437924750 907215014 965952520 645687247 762130222 761026851 924741379 587969984 851193908 279212517 878273823 26671331 509866564 709926796 833227874 160173346 463350824 716619305 980381505 763779122 961073876 342610116 948756325 655077338 911484178 583183598 816053594 604870532 898514096 795564440 953166035 649695587 967289149 449431165 839497736 717055075 997879085 243260127 670572836 7918200 741958728 592565414 650694274 423155121 732862045 20698691 997762363 186536168 826309354 313147872 656564445 344870895 601861609 61629119 158435239 600851948 845625567 621687974 856698474 561023651 877253937 489051304 807889932 177561583 968242324 866424543 921326230 300339104 834257935 793223256 940863993 777956540 811129769 100982214 880946329 323264577 762621107 787191123 995740258 177671034 445880502 824482451 865101990 950978570 996781825 387964037 973598686 667225148 866970959 547290182 647718612 203231115 777314201 56247937 194746586 59515549 975320951 897412188 905669470 541757988 972533554 102796828 288389299 508227291 668179902 926984457 966240186 142347866 966651756 667577022 699895556 528056614 563658572 284854484 313573098 377383400 659586109 171435564 547471838 94062754 436046837 525303022 628613854 690818065 770319018 418847853 625066934 830446112 976915875 682821158 710631408 829300778 847933854 674564730 733337478 596985898 727870164 752324121 896147413 299056587 700084301 851353773 899419351 695280386 770890440 715752456 801636754 69209281 212427897 868766524 929765181 621138887 999022647 773913673 914418014 297783313 598285608 733877037 900139308 440303360 614432151 463277204 595705466 936158878 944490769 692792730 827372541 172062003 936741773 362173182 566002119 259965131 287796246 973402160 994538131 114715389 128365725 275937599 534592538 538687566 616906014 10376647 368726976 202684528 698470259 974688481 984743746 614602173 707913824 217751911 325846893 73354589 656147992 123054639 665945765 377040553 920793848 499507730 899995585 325849820 435646652 579501130 619478820 560792477 711478882 839814531 920056312 499500779 963509354 930806250 937550044 780253639 804042209 641523290 887358432 323037509 326823107 513858077 569189787 852430501 920529824 505618947 942266001 629220454 918615399 259891815 403690914 671738528 820170068 734148852 925344773 199588455 233505088 584648650 845551526 426611180 564975641 941651628 977023208 897618328 985092331 129955413 255410494 781965379 897666766 962448470 971096931 752276896 977851243 230454496 384808006 367483747 592882023 383970562 676111216 316875679 949277524 725511462 875788371 323328440 885305756 994804327 999857945 950410587 956295651 710626784 724654694 205189267 621353190 477853425 889003426 222178863 400900101 213555202 764212430 332499361 379815367 347772461 708487416 846496352 970988207 562263197 825141405 285882469 634236757 699778279 932095964 250826984 868472667 854378302 975562018 535932482 988928147 87713538 405067232 153814279 518368867 617387451 667550261 448789663 810307121 292336128 564131874 145283339 224224150 874899795 922375184 549895631 863936597 853425506 988741976 532657246 590488131 684197814 871886817 508299412 577306288 430947367 809679694 248693343 404384705 554716977 994971639 563903435 628358925 61763671 849666561 10435887 794371749 603050230 836897005 840427468 922978688 918409859 940814751 534758149 784632127 288780907 549847073 354220929 365800794 827222642 888397866 89347527 630641629 735265903 857389807 894219157 940680147 359927816 486640880 400331663 946919544 49555089 235097172 624460379 716731650 752203690 923900485 382326372 972636073 275315244 426953573 405155931 796005247 519530219 924038522 708065117 869094591 63840212 773103625 498445587 906832669 809872215 977957700 897018053 965121793 571008117 752814305 293606490 900351772 799351476 977755635 982779253 990207261 546141403 778432640 870630263 895938965 319768195 801344685 240557595 358464868 113435046 497943124 583906119 953539769 475583990 485985095 896992903 920415543 719136986 891889020 268876580 507685876 804383052 973617826 720922060 940588892 492383431 527178060 315504143 432120982 437838116 978622493 561934936 691723260 151498312 167410986 433717651 709815507 630737440 861137639 454499283 617916772 83287715 381160603 457885145 888913802 50226815 806512671 646161632 861740274 88393556 940651965 650044210 822499171 889343010 910873403 275288683 837295942 331523700 495650393 107285534 703440951 921011802 956570072 982945877 991838492 409594928 792294717 829502885 968254281 219435692 893076238 810959570 872973467 704418351 831919773 303740464 661559623 538310816 968634922 772427780 958731446 798099851 879336387 726619091 899268042 993835228 996884396 986358424 992289380 283917669 299523099 385303415 934379968 265985622 318168094 683882692 722717478 717453704 793960879 881400689 916407744 228391428 982263139 801359089 808167423 423075958 952985727 974236652 977370637 995196700 996443036 487476379 748264051 277581505 885106390 893399238 941979814 169728280 644948244 677439303 762821255 888667565 943470496 447672117 586379934 430041025 621984821 806360942 852018367 224673738 353510328 154868549 727927753 447213447 902170330 627963561 779201621 640992549 902079992 861621160 976425808 835022435 850062148 723827150 894446583 354582079 777481457 220586346 817898624 569359333 851381276 434860000 587117889 300069997 410741703 272023014 376001741 991967321 995129786 655599204 820104433 328153005 610288998 628527795 716879618 248673000 808558162 451670830 821704825 586601473 938333768 60114687 745850805 236109508 271592027 87336712 159408870 780218456 937839147 127840971 288456428 262177421 669692978 2665040 376855561 213885273 341015108 941403710 961060771 343404579 778476741 440910495 643375108 970621323 970837823 624169663 985321403 75676629 790085180 472740489 988176753 736532587 806957547 79150252 865649340 743308051 842390957 318980694 859932863 67360279 652300718 623214809 687998432 723036906 897480083 429786913 500158125 872249147 955973041 304489828 604212246 528854308 901637152 580748560 847599541 204216132 649034941 603944003 937173300 817743018 883781537 66809768 748549737 932602754 982728422 314397906 463426194 170812424 933758843 462243504 952227561 738417397 787532597 923475426 940838511 147284883 185935609 599476276 638644899 604272062 745434733 221596021 472008873 409110950 635898088 294741221 935690071 624703275 794223734 560766166 904240152 778638295 924441239 793791839 855548481 458355084 942434348 801424092 914919949 13633309 427857161 60679368 661739993 35147103 535827907 961448673 977269845 693094976 848801222 888359403 967315559 966391983 981390804 755831959 944335320 92125656 783822151 551221918 902536795 726500754 861518612 383911774 403556345 731196856 870296542 323433620 932067133 227092569 839756034 381048619 589249621 307314682 545875669 93503851 147369676 86834265 487644397 617446485 975154140 977077094 996555386 988792477 992441850 27292504 184908965 436042308 674610198 282973105 539821148 619483230 818266618 560696703 818761108 946934122 990041301 449221182 611613092 589799795 656487161 446212975 618228462 354621370 591133285 944377506 975515994 240785598 590349729 223349917 577262714 802025126 958738962 510051776 959082977 806112449 955846176 622502588 994406313 55190089 776216655 859536070 921374241 162772835 482224195 154210583 561330251 366167184 786642140 435602277 730581344 582649250 900005095 971752158 987652819 160684806 881623195 401766666 727326418 495172957 683421695 62412837 431644781 801105702 918538376 159562703 901265865 803274182 960694003 433828436 557600619 442495753 979097928 363576646 955394618 44210687 893445754 9397024 526627237 885311060 893505609 737592739 858143417 989787120 990471473 899736622 953591739 667373758 796945018 234252777 851463816 238373495 946376765 192473331 998848747 486146692 559546199 16082924 740412944 823453871 994387143 358239311 650331939 522146831 804401011 282303898 602976298 315434323 705404259 533010712 886183042 890064070 915337269 190977482 921708884 72064120 532529074 625221490 822453687 221348805 735143466 30287032 794794545 103238272 665076945 941297973 962692670 473765573 951278236 346662724 747907758 24202375 272053253 927394223 949474006 313137779 503891098 783008034 940845039 526104784 732454060 409538628 952312263 937631643 953280037 802707194 843212258 705670206 788567227 237438720 984321012 159346589 688078217 186990145 583154644 806990905 894661810 459986327 996963809 646379060 736843970 31910074 802599267 263324375 881285614 224287185 859911314 113508867 628534048 132834409 931575902 1196912 902564468 344827142 762915339 732974108 995046181 290776735 963971491 179328690 294399996 597774677 804346632 207149896 365280369 924912172 953199972 632331311 918053823 616805834 948216070 796822604 810407204 943761863 966048892 104090348 179657412 648586233 784125806 807973285 959007981 779668346 955052810 222900459 662056367 789266395 817688636 689086559 839412179 670735713 771341645 57587055 846815224 281305659 351141529 526575298 633762659 329818456 577423036 250435817 375004343 816193522 878852602 187476419 433180210 99198285 792633291 553203018 741894106 865388725 901634161 5727562 192143765 249118935 862161659 307911427 526640640 852117019 891372665 245993436 435446094 453517945 914963011 237431036 970477365 173309537 965092741 615699131 998435351 871515044 896494125 611466358 699830620 56907639 565677940 213206919 560203536 652028337 874305310 373275042 409949459 274677482 487740834 975733277 984648766 614269970 836749445 949662559 986772803 376460085 576941741 916426221 993184636 396282340 870669729 702595638 776028348 798626904 805223183 679797012 927484545 439129677 716269803 993758528 999232793 557924969 885149610 537125599 616436940 423296243 490414225 651317335 861876320 71854365 605819244 387828442 916162280 413174125 820323972 501033496 513360987 559394663 948651782 369246842 612781082 965466376 975416861 344224126 370419078 728602730 861235584 603278523 681404479 65197842 617669366 568706318 649199361 483920987 552305261 450472303 875802964 650188875 812618135 929941268 997672984 673178082 965661618 995205694 999185531 753749218 903515493 600605333 859738690 39293056 549829983 944997924 996735394 844963154 865951196 292799864 325880347 270540079 633729637 65834019 871392180 721165836 782567429 207048956 499264890 38499368 193844880 102323487 457125232 480346211 884646172 837799079 950274058 842799955 850101562 155990279 257963142 531525926 953494697 841551178 892743842 960692014 979707224 415248134 836913292 880197045 940448651 892631313 930271594 692469286 826037478 706547199 736618758 362837725 493841919 82342014 548998693 256370561 421813632 16682767 820777884 996865585 997061785 45074981 817483849 655566445 969130393 564174799 788527712 978398419 997198238 885600233 944526127 896919642 919481496 796442229 961310714 167160119 658274692 498002718 807509666 598534388 956997459 640367139 919068875 918990856 937273014 229308898 946847976 798432468 885574703 847055978 954663315 178464941 881069057 323514619 463840388 660996544 870673818 809104995 950020138 88331341 637267613 439882611 644433393 467953638 520209994 221808569 660716333 243167956 548078792 364555166 551585078 811933239 979266376 785347231 870072325 542296844 824458809 770499834 854580020 595548583 801731090 419263288 799869685 36647762 221660812 551363573 897989652 928875875 933310164 824861732 930842952 966212483 968375485 494374215 858787578 314310060 552830311 915215838 929798852 266439032 647368375 463655787 971594273 649151833 953375991 124897078 898825031 757012808 824994899 875376599 952135713 892720388 893013412 232733390 537118797 976705258 994401845 843138570 907532834 398067691 446822151 632790306 640083742 990683883 992765572 280429823 287728340 122002426 491845707 556620405 810253395 689672283 807930833 277371683 570883754 705953245 746172556 656813590 951703352 675915615 906700137 549878865 574867176 627505392 682355071 453499959 917196389 76411964 912388664 533827713 587606564 671643149 979823685 951639251 983392633 171522097 888050738 504257878 961199624 74629435 521173964 279116906 948195613 626422892 837981385 839478969 845228023 87342504 431513320 630741510 993554240 597662397 971426930 340578553 436060208 508421683 717222112 172994986 958474057 776512036 815166484 566486417 949948653 795580834 827921862 856567240 964747924 999882270 999996947 255842074 987727311 202437674 778807220 413218636 541490199 17652333 327569806 324238816 419507197 528140186 979925406 199596665 410275155 593318382 887645493 511074924 719248035 915725482 974403622 70409945 874746166 432483680 577115320 572049341 862732307 17342228 888408391 561284500 728005274 852364806 957445016 990701050 999128496 438364104 769229173 851744366 864064864 930002888 945895772 596624503 695790651 328018079 487905432 212511527 572752288 62797640 855689264 124146411 921413452 623079088 973896513 463122713 490347777 398610077 962497337 778323014 828791361 386541670 616203132 46761407 781961535 853190524 881535646 575132177 735806558 713222694 824937700 746561668 974032192 938579903 972271097 528154194 780463761 950468028 955825193 146070194 626197365 286061377 994013943 552746389 577538545 739748379 898477239 106430608 726459051 62810407 137766728 935683091 976200104 838625558 949981134 848322303 896242026 465231947 774999077 681681906 855923515 205582576 693182745 138996236 437281953 845602825 975667502 635920506 872540822 265456696 991610358 889626836 996711505 104486835 565887682 511989828 866431022 798350923 868576036 937246088 983922587 511560996 918948126 29689759 953973255 565903987 853797431 309031336 315018076 796298314 805439930 496494257 518108993 806253960 850518053 119881269 314622195 335644501 341950818 465804909 701837194 13256887 642474497 553260561 822658989 347541203 831011401 944115517 976123362 930492519 942448317 925278968 931032088 956491772 999924935 655025411 812405464 402241757 703140481 755208028 903496011 625655612 802746593 784945204 831634439 482349306 594577430 427686281 505074890 196372352 514180817 22914210 320605255 527461188 638342910 533127454 609981440 80052575 416461008 360757729 417098585 716642965 862997439 264817098 314172542 39410999 372819340 317653802 835367764 864947151 958380541 775373819 856379589 71178748 581398478 521504345 662529609 643351254 930086490 943416614 973334259 882461475 890337596 695445417 865823677 457339 268273984 294707894 376054853 381203629 827814947 730250480 923223598 507855365 819886855 310912220 840062823 881821344 904070969 872313622 995102132 403762842 750710708 37810856 831536901 909737008 989414513 858668087 886018506 783479451 802715823 59856613 605637855 834484642 886367554 800377738 993416933 641860328 661621225 636414128 764695502 395483540 918098307 112392019 148922716 139940057 790382810 924519261 941148849 519772596 529282461 196064378 322648782 39850122 877593372 130708480 932625847 406193415 984415674 756195593 973058685 695375913 969907383 96310252 651237599 127411479 656309365 513116484 835423286 925068802 929946459 174118639 389776719 500911848 828356269 323661260 829847726 308361105 775051429 333797796 590804800 810712046 940531670 818033575 834744603 549145091 964502576 65304985 985700076 217277637 640659454 162802545 724625089 189949262 668493565 779896941 842809140 481308835 876457201 688450031 872108359 994981037 998176124 385725796 968935636 324006234 994973420 552045245 778951724 269108747 682256865 956049061 957167953 66622130 584207038 117436269 750704774 570526718 966360682 847911453 999739299 973959057 998529873 64598265 416743881 952104928 968764067 534357920 870431621 656969513 748831127 481226771 944931362 565216317 990618997 109339061 443918322 846075071 881092868 737642581 994463049 238786896 589014867 895699781 928912690 712783614 810771640 476192980 957334243 273272506 383473230 64323335 810154917 359829206 624108201 786319354 806114116 659630420 755463983 258771591 443453081 741526976 937563627 718120485 903321413 29375281 896725480 678821489 718823434 91821458 526021397 424141610 513122757 233516908 528914364 540015745 668541487 153902327 343039558 686895516 840482036 236645164 960279225 541100580 583043809 456077656 923520971 775983503 853897913 50038137 841492832 898985958 993648063 836397792 908373839 521582302 716883780 686852964 962418076 724199193 995806018 455986775 585075190 425719556 692775331 317760621 956232098 383577982 430590193 556409444 867097132 760625302 912770188 718609555 770029392 782398291 865500864 886990448 975091875 478627578 728817859 707204745 710908472 147061759 771804821 257971200 912376104 48549338 970289547 4486398 62576818 98152534 907876897 669031002 676282652 417666115 665672840 668781434 808271616 889252593 910590907 237468337 650539583 89461712 248829306 525165734 591136277 938831560 973242186 138064825 567056081 81624705 225530283 919049646 934536928 801779046 830075569 449154342 477781743 672350343 804093888 684770451 888376758 153440924 443933002 865116492 898444386 239762004 644608470 117540658 317060379 639052085 652592226 239248741 706997925 449100234 816356656 426466142 805567744 947883730 978314419 91477998 280752689 341424561 897964825 321647349 346443659 947084695 992056409 929124997 957156057 398663319 556203262 564488217 627438842 285718748 819398089 65815401 800331508 423516895 778785224 298416937 402216859 918822955 966191104 609681369 743907883 882357943 977871902 14553674 570818023 317193700 448994703 596988588 723597923 544342281 787530877 536661451 753432426 940064996 965545604 455233772 913878399 379980271 651931185 714404414 735751244 864655556 933551899 232339441 527547334 845334213 926433800 264432551 736076690 948300692 952131856 674274010 977884443 266968339 858555469 660093578 787417328 326754427 370219304 127136589 665996989 321127222 665496903 741133486 780016968 407961522 471864128 91486974 336895300 878922103 990481807 316241441 503083508 49994342 550732428 559566409 612207216 817333607 887573517 260771282 621068354 1600274 784927434 123711783 233051896 771005979 897187658 467904255 470643835 922953653 981938491 953628298 962013236 743590588 985165893 628005444 720401290 659013011 833515376 253867213 975789312 959169895 964049384 36492813 812948662 403096366 531566381 800025064 805943494 540982665 694370106 498166048 804458000 666227729 897806370 507002032 677701379 502033069 873034918 347059747 594302420 329990953 665922009 554041281 655340735 43928836 764228277 948650457 979841009 707654402 736722403 806609172 927254091 451623048 574312835 993529591 998603047 873067326 899055697 77359373 292921049 140505042 496524299 477060001 629491863 912080985 998532627 992556869 999902082 184767170 414216412 748120327 886826345 75163599 363800857 992220717 997162674 184692052 202358276 639056336 678871756 263143917 337619410 948393826 998427674 586106432 590670043 336005191 685707778 963475643 970870077 860264281 989234134 546440813 993855084 261635672 513419622 523998548 744003817 720390895 803826319 865261080 923776694 892270519 898923019 398296463 974116029 430369329 636153990 333533624 519058483 314196056 728625143 769583635 908221221 640328632 978019441 843821952 990915857 99736588 242659601 183908799 885771554 578490345 601647339 337245409 792437780 870099871 907967465 966486650 990715331 291267382 428279180 62789459 316415043 219195613 964249222 593378172 991310619 894018521 925858695 823354288 839769588 151032826 836267691 727358925 917535833 708360030 798469249 318681051 413076210 284356086 291383388 506391026 813002309 355356914 697819568 558285823 598512415 298713414 991131410 362907688 874939225 936149604 966224606 422811009 862406521 253286957 698013493 354626504 838162079 73209704 698698386 105964067 932815097 65807492 983301887 623497923 943548953 272905215 782223458 392824277 894028293 724837824 904335743 737364385 959050144 151376108 668492974 491999121 755199586 819267758 924379538 419296367 826155325 403506475 404795415 924887670 999078167 161923720 558957932 982415466 985422363 375198558 933819802 770124406 838313512 842579433 930289160 194785945 724852059 778126861 898279389 658105785 697004272 919409860 990456957 895650637 912033327 826992505 963476276 55028291 182324369 25266857 192933349 973460832 973650466 521680664 912859120 28305470 425502800 249918559 849782352 998548493 999501304 754381625 765587143 333959749 853566011 159486915 989990335 824089426 865879415 781082736 883772563 182728893 574559998 124951106 806463864 823418356 877038165 934744994 954479004 376904719 802219265 756422157 841641858 433046583 798384511 131890895 524889741 731266496 735231744 995922847 997219008 116985056 993626737 431616618 670669628 307749775 898622104 510871249 575473104 572989756 604554644 856464021 969738155 527412725 793925002 592056174 697460178 140139443 642956420 938216975 942836287 946181622 994870059 551146793 966140304 714679024 977533461 690536940 721314891 86603815 725815827 430210154 545752781 668953736 934414308 614263195 871333888 460365445 858472152 100463406 308383307 155070398 744827070 59331172 273064190 591434819 759472671 864419312 898986836 597732761 832791758 322821330 873946657 915833277 978283421 675469817 725650508 267151749 336443746 782782357 885894875 538118352 982362202 365660209 983090689 946735656 986425444 369871527 635423511 123130265 753761821 912382811 953280304 748860516 780980957 691446759 741897660 22324418 891930966 5789725 227848163 635059529 749448660 724491149 817389075 397290759 929033790 272387992 741229178 280943583 828845166 20372460 30219530 981404342 990980961 117242523 798212531 491454836 779890223 878215697 912100117 479619947 838907364 904210360 938132594 159354807 933980252 263141665 330359883 765172479 788455959 41172084 922491943 175750519 535473092 263405229 737526042 17611964 283931304 829633043 989314890 43217878 403412774 212393777 322344955 723707639 960022632 853584120 898523288 175702491 841056543 564414502 906456512 514824623 694824194 501043121 941966707 712690615 731688955 824040777 938521422 19500578 812786949 881661505 916270259 756685959 839958048 432851139 963515110 953299453 988595952 205809341 507686796 618295894 875744026 564558759 751924690 359971044 616386232 39757691 241150578 294512997 812773059 36243221 571191073 492512243 642351894 822951735 978206573 711258623 924914017 127802742 778629125 480197327 823236461 923772340 989124663 97467078 996024012 167848201 718721939 823268829 925222465 250652108 824546560 988901325 990708409 443601381 635549616 855049175 881503964 348228442 612441528 375929580 901974490 612730931 725813485 899482087 913319720 194458886 201546084 911430270 986875153 286082842 992006298 339909222 489171377 688199571 688365100 871984060 894271230 186100290 740007998 688028465 695203128 883229616 986672552 689102709 732477857 600883922 820548748 769505779 998280288 610783886 776392765 183415625 314397832 16806768 434359664 424370389 772365458 566974926 632398928 356497556 478258125 164259624 190321038 253627966 834882243 553338178 874529651 626183051 824691357 107086675 766043798 744129733 849605813 110586843 709404488 407378103 833700230 583370845 872039064 166440517 979803455 851410401 879280385 35229752 209286375 392644133 428369816 416897161 836866767 368683551 666465639 859244493 946159339 591386096 993583268 598838972 796748270 622369410 893062713 870797725 962313736 932738066 949449157 285545199 774606463 454655546 680411427 747290474 977789990 521345256 968608127 442985608 596410142 652521930 907973595 364398894 364882446 345563950 488340912 648917505 963282011 150895011 574301389 695023226 704379628 776101712 883295206 274040267 461453166 570839478 645557037 32579189 413290441 562758599 723338952 23814666 536476622 225122329 768843594 325167990 703842131 279604576 716363982 560185992 666772345 389183831 744211092 623725889 832098244 59412804 198454099 364114162 423132368 412146216 824169917 401708105 560547756 308780577 948107831 662809149 984028322 349514435 597677777 548536590 680742619 385348868 503228684 289547217 787709237 234103806 282368951 118380542 870078654 735419241 843290316 26780573 278488481 230410517 740613298 94144986 248595663 443905385 645730762 830497048 881511222 533353181 634264632 93322779 806763133 146821855 319417969 837549741 907820038 375927048 722642536 280349396 532624799 839308699 845542377 235769161 670178580 78150413 376146255 933396278 960030746 451771135 596991274 689097624 827529435 548443081 685295423 691790722 696318988 123279923 170401160 657212665 724518794 853325428 992983835 685301617 824280921 642305793 941320974 744748822 858199163 905392111 982876688 55738585 387503175 412071807 941505605 838112777 855685218 998589793 998656006 890047930 890738320 230888499 413978982 22428585 226447321 347081351 504348491 438854038 899826496 253364488 405176811 872186532 885864584 559880684 624270757 252355867 886917599 193266667 315069461 448374292 931544882 319961589 725941253 993269091 994190958 321265880 758352510 803257819 891214474 681404446 705262325 600889722 724870085 710236612 756834129 557491902 993538248 909157403 930082527 680158375 978464224 721812490 965124202 843844121 882419649 379112234 451282595 711314910 967752127 867345475 922634162 877972639 987102262 599791390 712565782 291018378 367909926 635940503 833364297 953469420 983021374 831357147 851137451 362314259 376629925 928416224 985867476 555666998 702621519 75454650 329387686 94166570 262768294 276074693 979935086 622455972 831768963 499771097 555614338 909643344 971866009 233937889 696084097 239384343 736239116 772001579 892126480 70844199 624167424 236110706 675081285 128112015 192990979 926403056 940156080 45210027 425128624 246167809 902193002 277343676 380413308 893768871 912428295 652960559 958254374 580632363 853697975 454517026 873190560 515629080 764164463 920463397 928464800 406507078 472892731 682098681 776135555 889028717 901041025 170671986 406310187 236883938 269606096 420438053 425961286 379889199 528109968 557509752 777757223 349291522 932455088 344900382 976391057 429151371 700446930 387984501 922962752 805863566 950439122 558655402 907059810 23400920 82401467 794676140 922119824 113666517 829590065 541720019 804259724 313951699 910341113 504356098 641385619 979121001 983905196 523530814 693126716 794930774 996052621 88663211 708161416 501868553 726312732 556871189 879400439 643560486 953798907 550674231 859897592 809741615 962697558 348630922 513251584 458746421 641985403 475030597 548207631 937585893 940967308 797247459 809814918 912119414 974881023 806192006 905678691 852168813 896486378 764162780 937300489 174927236 521592779 113287958 959175173 346934778 784477287 47144746 753494316 363359485 711361746 663537760 819569943 288178422 597136907 382391641 838482808 964107214 980029742 71937266 540718590 98791197 403054602 909519615 959946524 225685168 233919602 584101423 714033622 17735338 466983598 733222642 951497221 138258044 803598307 948115484 972519679 685527269 852084831 156763937 941900015 938938692 994266045 502777151 642507967 268036813 518514448 796885590 823674976 29286472 494231682 222109086 835722941 136740975 666552760 560601434 699685784 92540294 196564476 134672435 407590212 545743691 683368150 271368748 370022980 841111304 986135475 995285592 998712895 491723137 950499786 269382608 664657368 506798961 626910054 473643353 738392695 381149176 605993262 331809800 415755936 468002132 994440378 17404913 42444921 105959058 406326859 908401407 979072964 22990057 556341894 640409792 961196428 844977452 987785337 86751114 381944584 80780248 88927636 584412051 922017333 600489243 888313158 414647545 629425156 704082240 704538899 930128421 991810341 807265373 828114615 277122547 689803824 562808265 681464220 710288467 991683102 864447617 980639795 837058820 843949009 750836520 839826538 88065638 558613079 936552352 962074540 583043490 905426908 769762154 865135269 182710079 302507071 332754590 767223378 597052960 759540876 718090913 759277571 894724822 906727440 355800424 713204203 781099545 794895293 300394837 312845248 554387533 677688242 961434571 972115688 205709117 244330011 358841493 380351820 119884363 406054814 104585143 692917417 964326046 987036077 134070442 447011288 310050333 480517221 578329326 599306201 539081170 785981096 81010996 866862310 169445461 412503801 511189694 760360684 68606725 83165751 928793514 953743172 416615015 605918398 964122938 967098637 470896040 878010621 307893678 993686527 380140027 803544969 185021216 299382287 981476218 987825273 300859122 707601260 331328478 654161024 656825451 965406184 121068553 718955179 516429522 764802754 412948060 826912913 924847903 926425736 26004587 820408213 530559087 610911174 351387967 883146327 219728227 511530939 17223551 567888716 882705399 885086570 585114925 714631609 745847027 977922750 302249122 351821006 181276492 299255961 814380618 970467872 203720756 285449952 651805540 852174313 664463572 897341901 947621307 982674786 673434437 733861991 197943887 589047680 639874387 794832151 878206702 896010256 831672432 842489831 207740346 965228613 710876794 784971050 519833689 972389341 808965098 969957110 339206507 980091809 794816450 895613300 913605556 976323740 455780436 765394753 740307769 809558180 91550729 332270329 714116889 888216557 545639090 818848707 299326204 741443522 436606586 974298170 63580703 733070555 372844835 820687555 812133850 986323246 547297154 787735261 979702519 983833787 218988563 397121505 719709875 889297498 926567495 929449070 239588910 861855429 963612607 972690740 579931278 625120714 55369307 634267366 228616813 834246325 549207674 594847923 476969788 596901781 685097854 799572576 946787867 965879948 571476307 691184594 134286697 524898833 164165384 871469800 82369082 237368732 913183231 989297999 629824963 775878995 524920188 922930415 449920105 638746493 755906416 933627465 627921349 954214376 254673904 258326708 652217224 727147890 917556235 972697306 351246606 688889443 245214046 917165102 921465502 955719014 985038586 989302490 43163405 395311679 256013635 338302860 630540084 910285771 53878014 779161097 694965864 696689378 749237407 802899561 232510055 688463697 258444608 788685273 398666529 790480846 812345087 881644860 544867734 680505785 889427247 992599799 36161370 665252005 786292209 981126532 122353487 787766613 515228282 811294217 312682023 554347006 255312615 816258071 798317271 939306132 457085789 485839312 219253051 583985896 575266204 914454633 497594245 514161913 103732068 974277597 395295358 795317870 883225712 936455129 885351428 957673055 95536748 374684776 762158482 987511675 5526506 597675926 984093260 994877686 674134420 815055169 756661126 915881372 282006846 492600885 899637910 960946366 930672776 953088599 219186389 409489845 466799239 637322393 624656767 757800171 638409653 646468940 333295108 829236453 67305355 967102516 649815054 816987704 308293572 339937197 168665232 831752257 475234809 614172132 795117664 815162704 478561808 984895959 212415519 266639739 433873660 825552392 381014668 687226819 668466544 753227762 719609533 827493483 810941070 990637164 952780380 971869840 844433760 906583530 454108024 850563892 886569248 905418006 180194620 406392118 217224480 614290285 637898795 971013933 566127871 606775426 951175527 977693922 85192132 131752022 929064405 974781791 558820418 626615191 586197305 952506639 548601747 833452435 228240755 884322516 164889086 230920296 287150903 621203000 282104269 943165179 2861317 117112992 376662941 648721488 667175517 827483702 337877670 592330434 550466279 652389045 615430066 768958814 827843326 972701521 707372500 971227232 616250977 975669039 612047380 794136771 109685329 146936080 597356883 631087198 325668732 743792978 835138604 961078201 129108851 347342349 18403358 544121537 569349118 944244262 565879224 692646261 898108183 914678218 719942386 802366806 450877601 698152791 814975884 892625884 534111210 859392614 676323993 811785859 519704915 874428328 595835042 598480678 21428966 293438031 978236535 980012114 395521884 458262546 953007955 969542120 239310607 953029455 460041873 629200955 452374863 969279209 940771376 944078692 527889399 812017739 770350143 787895499 840100443 967622586 954624701 990917295 262203236 503805929 701338023 931928814 653339979 662836324 385345189 856425482 21665578 784344932 614396235 803412857 616401212 908348045 265983413 267479164 167301737 332633535 502244532 719149367 337783280 418471055 760318849 964202661 624546971 692653497 143706810 983884860 73679580 670327287 748659063 868276903 478910400 654861732 515183629 680245163 271510815 590802364 832626908 940590702 525461114 601683517 40898756 307251148 875164139 893870624 213242337 544805245 248141757 603804553 219412159 659272225 570544537 619046527 789790298 947780576 719684411 834621616 392339538 988243484 692077677 791797245 893903130 989602614 594902363 832462435 52008197 608173829 530190092 809967988 74004645 171869897 650139564 974282453 703635252 992290946 159178168 212100116 744581597 750174257 760113624 889194248 802678062 862716198 836468152 851197647 589187166 922807721 661979336 972695133 619522325 821379241 499676046 501505278 245955883 263708365 203479245 835585377 870456133 907622773 231545604 297597409 124534909 221360057 676127126 831382332 576042821 679620194 201002564 496249028 329874118 743331137 830605367 993700728 812785797 992531555 536052873 986428163 197346845 503438629 736312259 777036337 855278421 920459967 389215162 642820258 519662736 703741265 914733639 975516611 8871153 154805886 183007453 506442065 772784842 809159654 115563373 456082991 658692596 690171807 358255147 465362174 934625366 984466118 452166314 458592773 915115420 941083454 536471885 569294924 407710592 533777803 761365361 965661989 685116688 892105124 20342046 29543708 684511090 813688061 461622064 675950429 424806565 985466086 234454610 722763392 574652661 756698262 566821881 763163799 368080398 781162559 414795115 603737842 144528539 700439923 727207602 981088095 590208687 898300941 854262726 940429630 468842303 530097346 240815715 418276135 444359415 816526938 505425122 836071519 146556546 240349162 149621881 866655729 696938983 811971710 371306632 590645215 406492196 407622172 239593870 354633720 127530951 498383734 656786960 952376242 994752463 996331249 276116678 410352329 548210135 638675789 915337267 998896543 912767657 950941092 830162177 997791549 219312745 556066848 104122985 210598906 609650483 771218435 347347917 674914949 923534813 980334015 31664344 503957914 379857013 957016087 693985615 917561158 916792819 974241670 456477166 785898716 970591262 974700044 337814274 385065032 974419729 995968965 774295279 888029097 970316335 998445561 894200170 926525745 226135868 364283610 835958998 974489737 885118929 913495172 605888204 683377256 260376279 491454583 65587630 690395305 646615096 936738823 482665487 670115742 5529174 162917540 155155887 860833031 654704278 720167740 187777359 482915249 686637002 936795641 368987874 725463887 745552037 766444198 852160313 944366712 19096660 344730857 703628434 751163550 260217695 282531450 565960755 848105582 304232521 794396149 727778499 927591966 946087399 976859248 658432411 910454806 187343791 633704755 28565145 904638589 981082358 982516352 107583598 888322230 128033331 329342572 950905481 983863129 574876001 627761139 162515834 559058328 954655695 981482451 147372699 737750574 552934288 751312780 519073783 851622597 50320504 167903373 688819014 772788682 340064966 565275175 333867655 386729810 306808457 592566181 72384887 75191848 986906143 995727428 823205003 868698878 75035550 155989564 104913725 233409735 815067704 952494387 661502924 763940974 44659711 677979855 185582022 310110235 283208888 613629551 567251790 673924580 216523605 936474845 83561662 204603780 257886110 648308862 472343678 977936457 954768170 995188127 704602367 716274669 233851868 682837260 985661701 986510134 700853383 938834843 573977815 897509643 758683391 794567727 732218260 845498391 930052238 973371732 574673834 629841156 151580110 221451368 445217549 885537138 533443079 717239215 55405413 359874880 104421804 949613188 442845164 507056147 805860052 856755950 232184085 842839035 706170875 848489470 673949515 946485879 725287780 916397280 450987334 671371165 481229823 646234091 692750050 939734606 194901217 794204773 363057700 583793727 42083993 174843145 55379607 968489774 541536956 829757349 569356811 844857918 299626478 845258601 765709076 977244282 384994049 444468078 287518074 395371050 411355862 795429979 659925324 909559431 229961336 666259581 285135796 834196119 655715553 911047819 785340369 922835465 722517026 727452911 684139209 852841178 312300956 551379023 844584929 995625584 473237324 540440398 839770335 875482123 572121398 598546443 990190264 996465551 98845975 431419873 460521980 559619633 194181658 736981789 745961764 892515192 657471639 762298568 171043617 993518768 443772729 611122194 792163837 865553890 941044130 959297589 363193490 537748620 34955838 986031295 446586149 461711816 822462383 903672996 851951658 999117701 666949727 907702205 907335370 960395952 428493738 887108623 870746300 896965656 804868782 904559096 809736040 829149939 969542557 996229008 772246639 781683619 958063128 990928004 791564782 884646783 832181471 866413747 195236263 533308364 738554555 911008839 986626179 999156546 911372558 930777839 791568799 918973759 855315617 957385675 821365525 991902450 395929776 611979099 729310821 913334346 756922756 974590858 305280231 913356944 188680186 532851654 517372414 711161119 328262613 739886404 884269359 958460047 141276363 340493696 295328644 793061671 223151316 410962717 785492302 864458547 332748087 425888570 975923810 980269116 583298095 956650932 629767867 932609156 875492828 971773779 35804443 983385557 511399338 784563052 407612817 755485104 165274031 711951125 967101266 974172288 394243985 866067918 130282109 903960038 703644673 867926703 699473490 744833691 402626850 507464352 83426375 592151105 657423311 729248750 983646600 992197585 624577805 960328992 572600004 785938385 892502426 965117868 10878730 804113331 844499113 976199519 517303285 760030133 356913082 712742383 197868153 832161254 440287125 978932655 237456866 863348760 432816064 787028006 9478529 734127016 225258381 804177635 294888924 643372502 719545097 925727890 911642229 913690841 591307351 597302450 123926455 417221972 797233153 800943338 64595714 263267780 794586684 894195976 661620257 775661869 678149248 876060792 47297617 884814981 998339762 999121175 794153376 975220053 672640894 914661524 724690522 980784410 747227259 776842400 497010549 682137255 650502776 794883652 283495093 306408411 705305769 732629221 371731981 882995454 16485263 842691692 326478850 672520637 975994463 996328605 504461997 896041773 651205169 735861875 738083746 821437892 963387233 993324014 479385153 675151294 711011984 778041539 301030873 554853328 357120942 602382485 14673093 293425712 261505785 364187630 279630209 832210779 346308224 980987982 622741021 688872523 307932166 454502844 685904888 791485128 683938115 799164478 735204144 943266252 296952092 687855536 594996120 998782178 520180574 805878679 393640820 876938085 432595509 503391879 365092903 957703879 190589573 923805461 687956171 767550821 772788681 816949109 222156453 394042210 66550259 855145486 354446863 891103319 899858692 903971772 123074263 602634799 209996184 273705887 935574112 967199930 337901451 556537466 234844895 684542536 179893023 653500144 585269744 624524786 855768628 999349875 937680875 995718848 887255456 936213077 831053457 899791779 966498906 981660487 417134408 624736572 882266408 954293352 987909477 996895140 398269789 869796490 500751511 777179421 14285556 360815771 345420520 540524060 697669759 711595526 646736084 839786351 454634774 521464030 238914163 726182396 168452096 184205770 428842317 943259729 389310421 695572499 730729206 777840312 328367451 360784763 858130547 956213641 715228523 793062985 389611336 475365051 472318328 923272152 913000002 949193743 936204951 970598612 828876803 886558712 559732847 806467450 983285295 998758324 586531799 738000076 206411676 596503540 266842851 339470770 446882564 666520398 676294153 798153370 989917489 998443820 467655667 581308275 500930666 699848485 683199789 984230996 313345707 800498462 874975897 992698672 805133136 858507785 611228111 931228785 738074951 777188900 372851645 574327096 292004988 348187365 208841164 845484266 488688751 649406875 921927808 942068954 212387739 564999121 784022174 801500729 434234090 585587269 544326942 939807506 939083590 981706976 463251696 731203881 15430905 327668383 795405853 982928460 750798207 893973550 970259276 984002147 145952492 573185300 267214818 571236477 655436201 677844192 790382442 892579401 538793763 822349506 130663389 755265959 218818502 306522085 834988615 874953662 821052994 942589337 258250320 759808413 135987710 897678390 745888746 887897343 377107585 572794054 561689949 708785437 591902096 906321092 971938728 975622698 661658440 733218500 168308775 536494924 593713384 956226151 171534946 281219231 62825113 535263907 676626041 902258221 186133719 261505705 231500407 333832169 448681544 894715889 575548372 586792619 808615562 855591608 673338435 869230163 870860929 941384944 773406768 899547739 936394457 999554217 434866263 902356667 902993044 951510498 138671149 253711621 752174407 952623876 911301434 940530972 599160294 869095617 377147950 837971938 951874206 952113968 517155821 520061486 222094172 654458796 935786823 951890655 794649251 947799470 192337840 859607802 954153619 985585298 663956230 810838273 107904377 351099980 225163 16410303 615794930 781276140 642224936 837877847 237810161 861968107 643582563 772637420 786067669 976436388 381671620 840649484 95406874 527086762 512672138 966398849 470502576 490811256 720298265 861715564 418219235 840826144 182697573 393365394 13800205 27374473 380585551 561061323 813912815 882251828 333760931 708945475 866512538 891871974 298806515 510481557 130602748 510704667 982266279 983090449 137781179 608781455 809519696 844344318 664635310 898966628 188993862 696558550 257936698 728076602 640433638 887674202 758002799 780400480 631535152 970341549 165629366 586487152 956483812 966840091 694190835 907060375 573966871 985862516 394048938 794047489 757492594 760550921 309427607 490306225 431823020 628795108 780378280 865613895 373697075 890653067 660157797 799288527 127593504 528908540 263978641 426550546 295161653 372128975 703103957 886669252 840436555 886239963 903778898 929213176 123081086 137539575 612157624 642655549 65176349 918783655 905126220 985441143 764114495 835842537 8922653 131656910 861101299 867209313 618815855 886164410 850447576 887307757 603580483 989452651 413288754 609524119 501864144 570817300 90432557 162757136 245281427 342502817 802047619 967271834 913759570 981834381 747818662 945380325 994729166 999414280 456492276 561308590 184856988 472276106 918088958 948477507 861257146 954717641 190700904 740115744 191960006 321775429 261922492 484050621 741586717 836745191 477469463 577942278 683184806 784543662 334339864 823474868 212209157 703699397 89259205 981299495 145978372 343641086 67341443 120099974 656023912 675727632 335294968 541855906 927145228 954347301 736397846 914202444 402024150 956612921 619238878 870360451 980635822 981940142 286667848 905344607 393960139 837873260 654399638 668870454 888116865 969001329 763986230 792656499 239220969 869218178 236466376 788918847 61476347 548383394 882460994 951851382 526335281 716914274 819482883 871379437 502955271 889102925 69630002 588123587 809655639 929970633 510223277 697357785 14187231 541710142 209266633 927465117 944014566 948166792 294448635 656389605 698789932 927215225 79882370 683623412 207039887 895526281 894946191 958868578 615366464 961222829 217675769 449827788 789117167 797180476 671795214 876984025 323523502 896533230 944206532 988249134 746307642 913296119 578824586 877304160 299204163 988159282 670237805 757680600 871100551 910478359 151178978 514877299 970319994 982377886 437736945 717472235 722963293 851808518 32918398 138870992 63042990 340294989 523402468 566680516 823629164 902612334 87139310 461657303 803752390 821319700 649263303 966509630 109790643 839669798 144701889 414227532 213451928 721541533 897157486 989268958 467851631 470924012 323701665 780223621 858415956 888285578 230611179 722877669 864209234 908068695 979313052 990668731 916059916 957689858 217478752 584244643 655512343 676538825 115044685 977928673 43355496 477626858 655094940 700235288 786119279 977520722 57766425 194489144 270849608 645152341 985204484 995731934 505781101 612618628 958411260 963075656 879296100 939639407 901131975 949142582 170261971 806743053 217723498 713140347 853670151 870475347 859446332 943484220 464668805 844751783 202277330 451136281 642123809 668135650 225042814 433460540 29846191 453469561 276605418 928649575 94407426 544942836 124595518 556635110 562338275 750583810 470310762 608930293 74987180 917659081 233144869 568718630 977817082 999345441 498268456 596762479 855752595 860026695 574022200 815969089 178617768 280840502 550230938 878134299 147348086 732731901 510525733 913437800 457410784 493819454 960133589 988756033 330000541 360258805 478645822 821475125 100808126 887088810 829979534 843906432 831383438 930031107 367352864 740642326 968011935 974177008 247987275 681885201 935895133 957859845 483709304 742663046 102657841 885529539 543780772 961624020 594392824 733069081 313190263 387750957 525471958 563608506 477890022 607185289 847536470 988551361 830285973 940780536 69981177 300165056 539798532 721658771 518792391 959847728 912928863 997426843 669568323 950031234 165408594 645695004 68774177 315675185 667951358 858030869 630928433 701126393 217412082 775736290 724709298 923616386 446969063 496043030 69327990 124899647 169480157 662411753 298356453 617056480 708875776 746561314 923369284 933705987 179947946 659675723 688017893 783007062 80972202 954137850 61297645 716989041 947398086 970925985 109830136 912190891 400702805 959012655 391212293 463338656 992842843 998869726 624638494 951146655 742465031 917085473 874523501 917346690 76449537 348042118 227064029 538618564 94359842 682234849 517953726 923626374 453428205 864054999 26961447 447393835 806421828 972860867 836702787 914639355 442925341 473168893 593792548 866531519 406356488 449353131 426191357 716251426 653565521 919137350 489042961 499584826 310245495 743654214 930155390 944860486 657834129 970804986 269304781 514795060 367027429 740222181 788635057 953418605 141381236 385799896 854644748 908931027 892547220 926460803 675478928 958198464 109928023 844886111 154403336 610348703 148705482 653313453 255800813 918803175 636168429 882650124 737412945 941076740 460495167 605174200 757084778 775423903 580164683 730685054 749712738 914654925 748476122 983532901 983509106 990573636 470164694 484282594 880913522 980960693 703892143 834744345 783927986 793238251 583735510 882003543 800597199 951195204 451777171 796816885 599191917 741878680 127302488 922780968 751200329 992501870 90015335 115027570 993188844 995065840 396120936 454769772 895584682 949254462 216011200 651851996 702516474 819045617 814310421 989011913 960527455 962701275 389056146 689193527 422746715 794682773 649514778 750449396 769587870 857473184 224491848 881480013 30529915 864680864 235742164 313346857 781890981 940280939 263488754 976387400 965826804 994323919 973085568 974281766 752262135 891911939 177760279 475797262 286166757 377426396 616966454 723021435 983263568 989367090 981171157 993946147 343816583 941741671 852465243 950878325 943855824 978524679 29705820 131122651 128963419 316123657 840615370 880982997 882499964 949499056 944028459 993425814 173022548 329662076 98860717 533326994 67401717 956628453 713678290 824302296 224232970 758609809 974134793 995318071 338683880 943219857 351322397 965148705 286101638 690262968 346879848 845083114 561051978 905148884 232673020 382866244 850967910 958085668 119568851 135412811 366090733 909231736 584752001 770816435 689551712 695287197 230050488 836319043 268489010 504257903 548158171 748323352 28197467 386838099 647674284 845068190 966508870 980604181 837637039 932142457 143848443 639216046 633724435 915380644 485692362 696608747 740369090 818900928 910520021 956297530 804660588 961201576 914374446 974170798 363978868 562465204 60461337 553454001 133397319 731136081 159531698 406554601 190273425 653732230 978072004 996296557 965810971 977344462 308916309 465628603 786707288 954368852 275378297 692459202 524920152 624805668 426122632 511698524 147321452 684997448 863700732 976918144 876915452 952536652 697340568 975442725 630430420 860220071 372595529 766202956 158466513 309120792 753924626 789338070 946933720 977026328 800567614 988382145 435405882 753396954 336014502 967424530 707623115 969908700 51858260 541631493 820737584 855364934 406706575 742249768 191022526 563476322 105621801 480985411 80248469 583302962 609941341 922155451 11321474 145526596 601082895 875487281 634935948 720130123 572878937 921209275 200674438 390450863 426288330 896476377 420982455 624326142 65293064 250114689 814229798 853597898 693141982 990307527 764882747 978994179 956893436 970829376 279676690 810756080 149555875 363272904 993559473 997649400 278374528 365256582 773636192 802328057 55236066 640047811 329125383 540402172 8300159 949406334 708239286 982434842 425722809 666425059 970462279 978327438 849798809 971792213 723495568 770539878 554461378 587633088 796316027 999893168 684565582 708658681 462471509 728945449 158323636 985481707 454174695 602552179 532151589 956896853 662931484 961397770 522766793 552456222 944716680 996402447 58823295 784990658 890739816 997815463 278753174 602042388 258435032 277347091 770025072 801215622 809129539 936248320 605600422 761974972 132716871 877370871 21067896 897769359 844930621 910792092 481253580 997111805 590925832 834542220 287676546 360103696 848747643 870750853 418386277 452405883 129406627 152150633 794528349 858225782 9307895 610547638 526331691 862638646 24984138 200206866 990093671 998422185 833875810 985107830 816462979 950727637 956509059 989144194 48067080 465774316 985946869 992558409 45818243 800194824 864064390 882091225 696266875 781077894 45594346 942777906 638938319 892531989 476415754 490136687 625452279 733920863 330586999 679731414 422277432 923150780 19489784 812636179 534142753 819205684 686961051 741465410 765272036 953620743 727906771 831789841 347607163 545072751 279454859 510153487 90007945 609901807 634330814 691244350 802377776 937143221 422033326 559711947 225081436 709020611 35912712 449272719 750891266 768187818 57703736 770890167 177202050 572081131 879693177 956253271 683099285 844623655 336004472 568197171 593912416 801472683 565577473 961162165 951391957 986416736 546004181 898263518 857291248 929358498 266766808 403312060 557923480 782637072 742617369 878696597 432513937 673485692 726351439 760432902 300762787 560806783 960905752 992213368 195418234 870947331 205145636 884603495 529085485 645908057 180397289 662103643 646153872 719982224 430401287 708777492 607486323 851422220 195740540 972508874 921229155 934572645 882023948 892711654 506888500 595684867 708236757 820734060 962578198 984282951 966865282 990446772 818225917 858806264 542190717 546625615 203365607 394984442 469405441 993428460 135742770 814790110 281327798 610795593 376165068 384186156 588046821 884265454 531343865 612910752 617031251 748900718 294538783 791976543 536157924 853498552 615654555 926272821 413709596 970580257 8766670 592700277 339220563 950636719 414250940 959656568 394855064 543512525 503285187 931201267 616800965 806784250 831747834 855484975 852461883 984336886 315300686 831369729 944465067 959358243 762264633 813540928 56446667 663649240 26765830 701144898 79931491 390312808 153033523 377052999 456106945 628919580 887651827 945317587 406862517 923614168 455535565 788982971 855660889 891992007 959420962 984781372 543083036 629635887 826199472 875479689 624898604 727562047 524223231 562816232 308699597 337209354 432391717 880431520 494309758 933868613 772642516 876079060 312551968 831849215 259382110 483254446 259651916 437079207 870035687 896594994 169039410 278273139 723647855 829178238 343483552 401951098 256928784 965426277 652191515 856567662 84384452 820529729 146767949 551244206 185319558 466034515 829828456 929882244 418574721 643109676 863439134 978304502 82104101 150892482 159739145 614467433 406608494 655841407 791670153 945440780 858654605 917875536 16868186 452659828 134099479 275368125 50318252 391442094 534455424 846122046 788957284 799630822 512166150 741857229 337181426 352352557 19501110 561397843 886740790 923989664 198360991 463634790 63366803 968396678 377749664 558549493 358425430 404751003 488314357 912431345 220196243 819399769 694748841 808184387 380796926 923035159 668271299 999063470 337810340 430722159 911484143 958099938 297869005 353798073 135083851 314682808 600441039 681741001 216418082 846179594 617432443 704171232 764608082 914790802 596276888 773644907 943798254 964234379 187182961 948306575 543535623 905071409 186154018 902041888 623575988 785498020 13280807 512133599 224357935 775921274 806088910 944407326 97491117 553936764 220537624 730665326 225910310 873568123 204031856 734121670 329897416 784272713 50855284 56718460 981882712 994537145 961735409 994282893 627597553 838612872 772243697 796830415 645891835 705177734 51507990 794971794 345933530 980755780 409793942 643693471 513016254 634761466 515659596 902661965 660733180 958361353 126249963 765151242 577519947 804881997 699115811 762815109 21110528 98359292 996240265 997960208 671547495 933527785 781549804 816566042 986413473 998651390 538548327 899198900 404903738 459980479 276873042 684662142 730005284 948463038 507953824 721143241 770319379 966678701 273607975 958879146 728789676 964923118 522686485 936379167 611828197 677063606 805501370 919497726 699973092 826502834 173759769 254040431 434191855 906968376 689485047 795831032 259509038 963137802 705261728 994696811 771935221 867275849 624852628 845810257 733105834 794142952 820498856 839865847 441288504 859316395 603247768 621607997 443802514 565572242 18561822 600017845 23723459 921435765 200920478 648828685 383107600 671423329 827389387 988387995 703620068 987443514 315875522 435367383 134177555 348635333 153050761 631857261 842606649 868578753 705888373 878775395 40087879 648200081 632051570 831366610 526312892 836948027 545480325 752917336 554200729 771873156 244671446 933262248 129852579 461948909 525832852 891724918 482128147 968420207 865396321 985073554 297802474 814445199 245219228 739860677 185726270 521232809 604868499 956817337 211344634 238285948 99862661 160881221 388921265 516785643 161194812 359709451 602100243 750855335 602332319 684221472 916205470 974526027 532751080 562954898 325262975 606948168 127350144 980644525 315315045 398118203 823494730 911895086 742942112 825299628 803049539 909808542 217420755 703784420 71225728 677308535 495091703 671220200 968445273 981553799 950219135 976467741 196082856 948242674 890086774 983267642 43913197 496292722 681842047 938396602 145288338 550982886 710932746 793467528 304423780 495915102 26285890 366158989 400323817 452329647 61197458 566512426 724975918 851887269 222200422 406916685 376723249 993460619 76342386 108231967 871931475 996338717 89121545 881502595 593589732 673120532 282681686 882948630 436134711 929612415 34364317 273345438 766973393 995634952 327115141 805842821 916061282 991953164 663348181 849802306 680062603 706348679 966101858 996059950 368665631 644144746 567715702 782301433 68093841 890998003 4580854 169816748 934164749 956209851 101027096 182266938 418584875 650313658 429629792 875907933 447656466 573328364 686047775 776959783 280895601 552384677 636145043 807276687 458491439 884662786 410075753 879069339 872964092 947957279 974506431 984042506 38061183 882462634 595578403 803007717 559620100 592705908 147490396 514379773 415581763 628815327 953108671 977540162 66548894 405821048 787089931 957169029 242132310 906834458 157391767 267218419 617158293 640323514 124751301 353478284 291359692 429001838 238652245 479903454 134424987 375349112 800392904 955621283 129737207 593055315 610940549 824888117 172743835 962752822 862999870 994110241 881393886 907706954 523424452 836868815 360318268 486279722 601648550 606678335 540690676 648104251 837926702 994223780 306092932 668648434 850992620 938006727 738111971 750160245 210293025 237044307 653475806 655719268 891718137 901441837 109432025 479674064 242383779 431022738 786127881 979269020 763293527 926175779 284031117 981940358 528213441 713071865 65905392 663879917 372437726 759160245 898303330 972258862 533886020 836522984 542651411 712594071 833822314 840487981 308494136 792624737 238094052 345624342 568030817 650043546 973976651 986851219 643013610 781642049 733776723 814907401 541112115 794007725 530414982 650641391 751097300 974923384 381756146 671342546 538412955 916561394 113228156 809056429 700773769 900480719 758888145 928166384 160140114 888380147 853888722 999654533 186586538 749752667 329349642 416748247 181761479 395796847 867226078 882658927 904012197 974054950 938964233 984327746 111477383 259159847 142644575 642021229 288244651 839237079 774404102 835327289 244192273 758263361 522505899 633205291 95740433 634320199 152411260 594903491 630893679 961493454 662547987 811769636 436767278 499718721 482743618 846633821 851613230 936828558 509281429 526173158 77043294 852848905 89910074 393469369 962968631 966615406 980527879 981396755 232834372 523286305 630021369 719516183 409358347 723512363 235796460 506803618 566281355 784880836 51146530 874704414 748112149 835559332 35588861 338818278 621795407 831936015 440284491 479935759 636509975 718727217 928124998 980028868 179238433 755231670 508238208 745942582 912589039 964278472 519333597 782434176 17700782 711885288 609769036 861729276 46136157 933989520 198044153 508683067 155244430 353023307 928445981 970418971 608118054 772302831 735556009 936104910 639167036 749870268 840527608 968227623 542977889 703753785 288872576 810574315 990374415 996409128 481718665 637990285 694059380 938069562 102210223 191772999 366229597 405999025 642368806 744966051 309356768 581648151 299878357 955128935 817032832 971351581 842133688 856927076 356299170 970508642 186368703 520926215 948774380 963006848 793543527 989934082 402622996 724221892 715645668 936811360 86094002 408984651 466792576 961360026 364446913 602374062 930867730 943438871 933382473 968133094 277968841 307962980 276519751 385741414 433869563 867785860 709437916 787843497 481012316 815026112 108472851 867452859 705338766 891527194 961733259 981075303 223347050 238677191 331303679 816826315 218782826 358626066 140815227 552679072 550461890 694210575 973729578 993093648 770813112 909068177 938066847 985978211 35711493 441908267 954433888 990825861 501853314 838541788 836345178 916793081 165530670 898390926 586711253 905444771 217953815 652513136 735681194 763638481 357605478 505804847 149455321 365823945 87927336 877382099 284900628 546162789 832108873 963133319 358434207 686187086 528813823 734443233 387067494 853191256 810974272 914430721 839436870 955731136 328369558 997944362 378530241 488880948 73928401 265786718 733379152 916997417 192352612 238459921 475768931 853279580 554806605 960053686 670314483 882561775 760411883 840762011 764097208 836728251 881044516 955520314 759949409 816941680 893626399 964081074 193764064 896026507 799223892 952102693 81479503 132831282 312065401 935308447 139467779 932154406 948236653 974357443 788402301 873310780 143966605 665152422 953212185 971653281 336446882 983483205 663670646 688624737 511422278 790249565 647841684 734150641 133469953 484619069 433703918 948836887 276553125 443683106 763715182 792809442 330103022 688125281 880955332 994131516 941261951 946622839 481673006 776014087 322597503 738493116 401249788 578544855 774462430 954769004 880855321 977138590 585925060 980697969 651576955 666147314 604239913 942830164 908860237 989988909 110680182 162662722 997861309 999547710 827749156 856853153 572957701 989466248 957230373 984582533 780437676 864445094 15673533 89909086 97273852 441889501 193059409 828145535 234284656 844392377 667658043 708616248 329502432 427061811 290364267 374779135 802272446 881334821 733311148 836803846 511283955 539888988 227450023 555786871 493520927 520055437 610153871 893892153 427787599 624635459 776514293 794507839 657538289 779341802 912119256 944516409 593147322 710122886 347823796 773478212 639437429 850547531 414538228 790543119 523520723 641992285 942340004 958106491 491629546 897253144 895390864 935879448 845898105 889947805 151491885 175270296 451747636 588243692 935153164 962968209 152324321 623445274 197077980 680401561 678608429 964149256 854613357 952470532 621563907 946924975 790140145 894546031 770415159 933550875 304751097 561704908 937414588 954661072 678214129 960661039 755179334 761899836 774842793 909048278 567750450 720229008 61133908 150850590 882668537 972800874 796377760 801597796 838286147 887675303 823080486 879286827 653002560 675176425 604982430 672157378 672928308 911872930 593325363 823959087 347028645 986173850 731351316 762289688 285686644 890944554 468195129 765200220 397212214 595794787 974302969 979222670 788994959 934360390 564108452 566769876 460481541 644013897 37179539 896359203 586974735 692056545 245601235 751086970 101058925 446208321 997743567 998917123 372402342 689079026 773824446 994087688 171699976 322394333 299289776 980612060 391926852 495106031 73939408 996837007 731026146 743272447 706537107 960727793 669764918 866048198 65093987 454754587 973154331 990947046 613218142 746285552 638592611 948695935 37841155 151153148 899063809 963249691 153322893 833534027 112177726 864526752 268274771 923259855 394581695 511674563 584052928 595362164 955585762 958431981 184419655 241311670 968817175 995635935 701190103 806015781 569233739 783300226 740118780 763600747 277557039 419769510 66099239 692383621 47799387 704525856 236041542 883009117 187027086 777879154 228117179 936356808 965332509 981250493 81933864 632551074 603935832 892410401 269976492 811437174 222641590 502030009 635756710 676647677 408163871 525051131 48371567 521134372 296213443 659747827 690691922 964190377 258861150 473015153 856166754 959994224 123887766 850760822 871128051 906441501 250944678 312223945 788072417 901866323 67974120 247231011 874159916 980762671 659981316 726743398 733558797 884883419 253355717 282701630 583572659 724037666 145841443 649969661 419449189 858350485 590982938 748203173 546628454 984788757 755188406 760438260 364910586 760419484 768940868 850300830 912218973 997440558 880507609 961280777 253878462 577115402 529297733 608267040 396657460 679285368 909386494 991438085 854613708 967666546 450020839 572332259 454851382 711758109 41411981 753842845 841022278 856613846 157229120 889283280 491656588 551238537 911145992 948016957 496270225 583440424 464988958 613140027 761004442 972423165 1868361 164393888 219039352 784890949 203974470 426851028 960931363 972454553 354113736 777949362 80956379 588143480 154260345 981394213 688319534 909243224 59409843 672037354 570272128 766282638 686752145 696397860 650818273 808961459 681847980 752663517 739755401 862200167 820939610 988596621 188021746 505280254 774764730 928547413 468970246 758734639 441002230 691401720 304041168 828883838 41554824 879112215 764660775 997530482 135802991 534612788 818963030 939921828 565164880 601887905 756329632 823881819 633038803 969347479 996224876 998826993 786430522 834440469 772550897 860206439 677473905 979678189 129512872 569758961 138414433 620275200 14453909 744929107 230206124 604685254 30120891 423893912 717929646 805486752 90942467 331805049 734997985 976420056 856317532 973675569 357129861 417026260 536214820 704872718 813464632 830588392 891674602 908706238 330738318 694526705 615509971 746106379 976871458 977872507 340945191 444228040 134667810 139853947 647483545 702332226 577354135 950128051 369350130 946387747 961291795 971912733 82315017 799181302 177344526 770065782 911308053 973972148 488976168 529643664 624831964 841459840 190454991 916644670 586193124 706482906 11218557 412736641 864188454 912650139 468029418 495147258 283617361 616314235 38101351 416134026 122315483 627095464 392846860 887147330 50627695 136705785 672042313 918742220 941772637 954281947 655589964 883691547 537728044 680669514 880687170 909248902 564108972 695684433 174048385 232190749 860130867 976243232 825557745 981392437 501836956 549369228 318580335 599774068 482611039 919018309 944818117 989899532 724920417 769822168 542381201 936032796 951157129 955882615 558457799 563464122 845102680 978334828 858587625 972853721 136946479 636369361 174101659 565602485 214729710 267223234 655357347 679113346 763348356 866201634 35759733 80256455 722072099 926856708 623897330 918986976 433936191 632642294 88657069 735558355 964216687 992656269 355400821 514856740 136387573 711167815 762622591 782299333 171940352 935286024 532890461 635759517 403519885 542606768 269891391 379849657 616967580 888789168 557902870 568731101 458637758 936462811 128141851 338068555 379884053 437583428 681664631 938214367 163174488 941267374 782173816 872747408 191792774 750318907 127955432 153974313 122324486 611062378 303152385 641597070 790522168 961945485 565973760 909641250 519442125 795054782 598350475 922583322 577252641 624411098 118868012 465914788 836154364 878787655 878395422 975942460 792754734 811699569 377908149 923433090 958802899 987911224 739361336 883026196 169562534 751474815 159714877 743849673 491440052 734012565 150945589 914434351 490480925 711590360 321956866 623205481 266626306 461225291 87364907 187639889 793346039 874451193 679932294 773315983 976004861 987385882 495426949 833957583 721499580 826973051 622515573 652597055 262466066 966281650 139053407 863828180 973139759 990922326 763132819 968760563 854537163 888925264 652183185 790849070 736518393 828549418 610375766 725564966 277686331 792612797 114786712 909471041 302280232 851152176 232010283 260028826 268060643 824810081 754632023 864538075 115086420 921133002 960846959 984986267 996721375 998610457 589965348 628919359 518844611 573307421 147106786 678217121 484315039 501601458 664966357 952488289 197756825 696500825 210802848 389672880 12157108 586775673 588734705 676009109 784386152 972288315 855431327 957506955 357887611 666638277 219125776 613383713 86263964 474667826 736489992 924578192 96979146 122760858 553852295 830503294 668288279 695045198 76342438 99381547 897731331 947072329 593172760 641365051 896852298 999387613 633349872 937591208 783946083 995690589 671860801 718703017 970968374 995016268 284863538 540522213 847661161 948645391 721820593 906658229 496809855 611090338 633752874 672345100 951500660 959219095 267050901 868358872 619512229 748237300 963318246 996723723 492535357 856787058 799334215 922121922 374950297 783805493 781507120 863276331 930955968 939025251 717226990 746658620 337921412 635472717 849715142 956347457 969288792 979102929 345521970 573251250 583701973 859521098 810948422 932016680 318507956 696476125 843519715 943145664 208391229 240294793 614130387 687840221 296231649 815552373 58741292 981977185 287282908 512651436 641836267 840778072 127725527 494662828 16152258 740686824 770363577 982438856 137447763 341002559 547709750 842595810 759130867 961940647 878079197 990841065 484089766 823180590 502512862 842198597 510961112 761409240 855328327 893227140 404820379 520632974 81163358 693849479 743388206 811983067 820787480 900704526 691782378 914572474 701842460 966039943 999671999 999907793 630094856 647979243 426178545 427940540 356538600 802124518 155691967 187248671 803241982 983417751 781821752 785631949 467282404 518607800 884631364 933503742 448723035 893720653 801128450 926188704 258161316 890873231 70096271 467478623 835345521 925473415 859979264 927360273 824433549 963375115 886090932 995208268 686503682 930785842 977874475 980321828 155920135 283357345 489329115 552113542 58668478 332141580 417968956 579665720 199579457 473671111 799869079 967087754 696957717 939808416 299422297 473952989 53974685 702828498 286431925 777352017 828700835 932872909 883938286 943675556 669899953 762989889 437053606 452923962 395995645 448973801 229911617 632856647 888670184 905948096 182565923 691558668 672661298 781213067 366402034 745162888 648043287 976293635 845048937 959452646 292655364 446574160 117264003 788751275 561647945 682430256 462077751 511624034 700367915 945367670 337893161 915292107 202819300 444979572 488986526 927748454 120937156 966720698 272315272 620234448 997875270 998135272 986775107 989150911 801914041 894892772 286680950 863643937 502204762 504016565 115676129 732321177 727756831 733375448 735741243 870053097 200649226 681537222 241949690 640439724 615517536 751788603 878904688 931535242 120407424 646301104 960473972 967325689 953864490 997085811 176559784 704969872 128359390 587607306 61834188 620506578 126871540 598038581 658566307 979617299 485002425 826213711 280614319 832624533 557755470 676144032 162342706 601885393 513981098 699395018 175075503 517205103 898988206 968705660 223133302 516082421 108370788 751086491 615765342 915861517 586427542 861925568 628726492 918294359 523007112 961784108 479645487 762515034 986814984 994267412 414261036 888120932 97253726 173694911 113051493 767202675 354179120 681452229 977328599 987797347 796828125 953250788 658935013 750996486 268161 553553955 8530053 634062673 210124476 418255011 517967334 695107377 431147600 846553147 943303420 992760124 273250495 399751802 751401383 808181543 274007313 726541041 763220100 783189619 910744262 964478553 639881268 945408508 725819798 796245569 178006444 459981027 695141640 717902773 574387635 603194814 385709316 585808698 138957723 256712010 92909818 282680175 24022945 557829970 795282181 879604480 173383066 180188003 711490568 904672595 196622789 802184878 505868003 569682119 649767388 758632440 274640199 646693291 44952709 759647594 238319130 863741529 640600123 928748007 630441243 951575204 796563735 881095775 850288961 881501716 916392724 943178751 607496136 939581414 104192206 479600140 837261836 982542465 630454631 736378709 567534341 758986513 847052502 866658871 836998415 927027677 550125007 775062971 594132460 863378940 690799136 747503963 368332323 932931533 422612466 876726104 423945346 558725318 96330061 936361226 789869175 891001611 671509642 957708913 676979993 793197029 533840579 862993865 963066019 981864577 322945960 459129811 365597801 640738597 47443287 571306468 373563408 744421143 374900636 454139489 395239082 681220822 111292948 199184795 471903088 891372565 981128174 993248320 177522573 476407731 615621983 741112667 351169214 664301247 169379473 563690193 857469546 918191925 277336844 902373253 32305892 161711693 397702195 899400188 612370316 700009882 82102763 714499647 31462265 180018921 240706047 428598343 603761285 656343955 509925787 726314638 16278961 882623306 332921153 948214892 98790431 937850022 741427932 946230413 685726585 958974468 9400555 340532332 108498157 958507470 701189242 784006499 248153640 493957689 528521222 633306957 327884508 642890231 349919522 920676417 174671995 292638918 469443443 479467136 140768660 596962976 747231806 901877635 669674627 676373279 722989020 983355094 948539072 984430809 38160072 659905543 474094862 953858875 76795383 583211514 202838008 259596690 320848842 718366320 436834385 642910290 93300878 866033332 449971900 895083849 379940086 957036233 397016627 608038746 348383712 389791366 891171044 954332953 178709440 924370752 859031503 874923952 995463963 996407396 260447075 967951574 106253693 493710957 658764870 702244171 20113174 937718197 378559256 878752639 579934417 699986849 32595565 943365496 567927662 598856012 424690245 813706016 160561295 720270010 788627888 918807516 224581410 900620828 108942471 234285564 1615391 59472731 932611857 933932718 875370048 881173854 297359801 637686175 111328179 959025980 642880057 952869577 928171210 952939581 591319002 857162099 675023578 891257336 988254386 993623941 520762027 897233853 986195114 994612631 277856316 815093510 827694901 965230146 436182216 822396069 243499129 893416034 424081098 758950295 376124816 588080227 140467052 985333947 289048143 700913228 893034730 998978045 130814717 194435011 683715130 819802388 930142957 982962162 47879779 193760714 802715385 984133253 735662480 840118538 465850864 610229727 213047423 282360369 301736519 486828636 954365592 975101480 564318546 950414890 494764848 994493632 88266905 660905594 426619149 537583880 505549614 785626568 632643081 822217239 819279450 867746219 576678310 931614490 140340847 971162546 875340565 956679063 589906818 863374308 868890326 967341300 172741104 837652537 75996107 773574716 804376019 941229698 407809474 423982467 180327557 777148362 633292290 982864054 504277499 874880547 637825785 743556695 568147964 716546503 958051118 987077207 866335819 871734587 143776009 322912670 49849408 823061827 200553655 714314394 463512821 585741661 87305156 831866181 616026964 673272198 418692430 650451139 702829630 865943683 298015829 825239054 279654793 456316698 996200152 998966203 742692849 815659555 434257148 447421836 512347989 830586123 192259050 855772495 946048859 973910655 279369779 980248525 119971342 503780868 989109534 990626337 335885784 990296335 631564332 927715569 385252848 399660247 472863344 836923822 341956392 551845261 170104929 653223946 514917588 954369260 133197670 790616165 630181199 644735649 851124323 915355698 154226899 597533138 776473637 896299960 676270055 874568692 773169882 915178004 913804439 921251233 304813858 358561796 529050125 598486526 454291609 938861991 908059727 952509258 20538690 547990384 371813170 579497821 120316158 908760215 578546234 623360651 151807664 382483594 25862764 202761190 373616372 953019249 438290709 960681081 437116760 441273458 950143927 963222372 157194738 545878098 108698264 851505999 714901062 848857660 315340123 318772832 5400992 543873886 812010967 815390791 954322404 964118383 224938892 761502671 32831157 213845186 680152895 883901675 350732373 759378769 699841027 940511355 882188801 914384650 37226926 205749405 697519720 946721557 167141178 223140497 914523980 967696980 119715386 862304129 773031212 985944937 717706034 924803861 645810672 712576529 914392056 929056223 202780162 266950758 603676354 681947606 343603141 439687688 832091883 845241422 749532920 768678531 118134664 839716230 275432249 886464021 153742095 911137743 468191164 550114512 376533881 706376518 173966224 671674959 416933664 617040377 509598086 756804012 352378485 812249405 573271841 899476558 503861237 710538105 998557203 999047236 925260895 991934298 950350508 962666386 626579607 946831950 591434666 731902382 238048785 269763604 181584128 570305039 922677693 945570125 747360869 931447182 131991635 941501253 844315293 876913252 11447836 689942107 625459873 746398555 489765590 785608598 173368172 453308883 64940721 985794761 273461193 541871434 588938149 679485424 178398155 666552676 189996367 436620416 523837313 730564196 925171781 955816499 925003687 964196309 752269269 848757812 433346389 482690971 167781473 189931756 656940163 657960561 214068589 588181012 251388480 917734080 294172769 408759863 261311421 294344171 452373004 940188539 712985699 985610292 669472293 951785651 162131620 561371748 487230275 664639018 870108865 993085679 621653435 931728087 580870626 915965555 907486893 984937368 627075474 796513949 220012241 427617000 985276877 986148072 984031179 993929852 512524489 571626658 492411398 516045046 534155048 540816577 360396384 573170997 413379308 693456023 381848414 682690452 520729423 836555433 808011465 855103960 271459098 560980960 738143556 936338119 207532533 806191294 747304265 948621942 343967612 527599501 236416734 558755817 795076022 849091188 95783057 662135237 264688831 647707776 843677992 992148220 384052248 925828884 972918237 983159048 100416104 413825632 636209250 982667392 838386668 987852309 137578231 791007587 15665326 338042272 376034054 573320575 222540663 240132656 403765098 503066287 950947149 956930111 491454643 586806791 86537917 996781312 900500291 935507430 379314278 841863793 110720196 464248150 15547499 255712763 985393444 992737829 717915905 786623537 165649879 456659692 451409848 471843369 8651491 218383361 816475578 820616758 638352718 911702253 64267505 743750619 504881772 776995718 225558749 829621863 75841937 719840072 594897543 918402982 180006588 364596437 244793585 725286127 112918090 593684369 584972937 742723446 145419620 760996504 727956115 907265226 545665975 996611713 806915178 854855322 793238822 877583574 6354635 874297858 631468473 966520585 480916637 923713366 396918642 908791685 945782615 955951302 409100834 630385219 31523057 751687077 221961202 662024429 537795272 631823053 129448964 322618738 91313670 444919866 945733501 997827490 935407254 959504747 884881897 923495529 800799395 804869329 686580903 816935537 129761791 670652066 95756687 837440408 692012305 701966344 430881148 571647577 156112684 884883080 391230105 486163588 128237112 601117916 265738438 735811469 74940093 750605828 438811478 636876577 589942057 937020721 268540015 341668513 699952056 748450309 937872114 990670780 130365084 551243806 299856303 886798504 714384563 952680437 630679668 651536922 836980459 929591779 936563950 983329453 421371344 667973579 134788970 742654417 500081961 562584476 701837989 963711720 201933845 614948939 266345768 476599514 380546012 974963947 424301308 827616596 115745965 123559825 941641984 959950086 395018504 667577388 562022667 630648103 768973602 789281042 964989650 980217258 311542850 899543580 39097112 629865359 644967365 825448851 776819559 786320063 247864033 740972597 271454081 520880549 378903316 910360195 220989551 492963417 959561913 968906020 141475659 833006194 946160192 957568717 251833099 880255112 68397249 145795215 610778693 758727112 766594542 869026516 871903335 873897157 174129967 910457263 532128613 605729821 635376882 898044890 172599807 685065031 879686219 935625305 141824930 965241979 31959681 607081542 296913740 694136015 428671417 658290383 391757907 936717015 805905698 868590979 913071268 949626186 183549284 269903379 707410931 770867222 319344154 882516885 549042644 592675073 522884226 532638996 233224450 849069713 765254875 990259009 932350171 971481897 337705150 551688980 969794204 992772798 505278069 714351148 502316313 952425795 514171165 910250639 95490004 312295683 302264111 914113304 478185614 786575526 209957890 274336381 27494581 624666516 427685865 950277132 976502319 987030021 643414277 910055309 545393289 995276107 376354128 961550264 729964888 801435600 554419831 766869896 996817047 998003099 886158502 893059002 726503981 751880125 715308896 900645686 696590497 940825885 918614609 984742173 214367565 650161873 774615955 911738456 497809927 499912808 755918615 767587971 178930289 798200533 430724219 693060523 502214937 607397083 867724396 983605615 275781994 836288878 704550945 987161168 437480073 935063528 941855633 971588235 74202646 589966019 17138501 411822901 990490097 995120093 338338164 860431610 540547874 885279852 79746864 304688620 462270291 521934516 787437204 807703025 876834589 939212447 210278875 656994652 511825940 689440121 521694156 847208229 220027838 593978502 796472210 930033620 329012338 783195407 606418965 990259424 464646477 966832976 450075912 469591455 898802383 968271117 334372479 364642707 453530144 713325284 233983650 516301960 652039819 767037534 805858155 818554300 851754199 940807870 737263532 960247963 831837058 986176176 633966078 971567879 525959375 775821893 642796508 682352016 74138002 645765738 53705010 648047129 553611929 731429449 743517610 796973091 455488645 628221680 115532700 526713791 216172066 645000108 733267577 843621975 706561318 848400184 78576361 724907850 920766235 974429124 35121486 686855173 748268197 864286187 267997711 468056774 980743865 987550368 404579617 827719368 386990994 567725562 64750729 769502117 767075304 796291166 376767872 750488254 288984264 686229941 776207978 840324406 936434351 946417224 220608977 524859270 502258948 687537437 313277091 716784091 170689134 407347651 914942770 985873179 364749736 635436042 5987086 810057158 73839255 312906598 937920594 964913857 387709165 583178320 719010321 829761230 35545924 204794564 581192342 795736765 568183613 608359647 271344365 759325775 20158535 457649464 834247616 922457843 922228903 976962481 86076026 642968794 717516301 877436929 358132967 979636299 401104999 772186014 683578715 700574044 492218704 770804368 713548874 903368184 278550809 710036789 814973909 974320806 826647937 947696113 387682488 426760558 153954224 541315363 405636394 830049137 293091383 786764655 566460992 961446072 573918147 739470942 235890111 264212373 579291887 876331631 709458426 783416050 51480414 713367069 639557783 761281064 291698423 452235438 700352365 907427795 711895458 741377133 163979890 474278993 230186667 519275261 627425572 736833720 186520176 975816722 922540323 971894228 942393571 950311214 416541953 637874557 913378664 918945206 873081372 961472889 984618100 995207515 918500237 929354871 203887507 341366600 354396001 551408280 883190045 942639129 485396366 741775763 382950899 702016667 737466888 958062286 437186337 465503522 786693950 908700800 792978393 991084592 78952338 957236339 13052569 462771608 234812001 804302521 388240436 865844604 4575170 164704245 133945661 696683686 537228883 795312480 315566802 915312066 960195897 993438368 363819680 696013567 480132198 881338073 111513928 342826440 730947113 911589945 626049741 759137822 157208166 790357395 978667475 988243072 523604418 822137715 715723423 957978579 606545804 659775618 701651351 856247160 40539002 919054557 275628359 411893870 940698661 988481925 625264652 875059872 219889976 961160649 75686375 233823445 803162922 926062711 4910381 466667363 18465362 716477713 231663945 840056746 895035981 986657743 471416542 834945590 522487892 564040866 728425184 802608836 555802240 709037186 304150529 443804774 890597423 922940442 700843522 755531784 702831371 847002045 332996610 337061245 504360058 522897881 838932031 984063978 19797273 891356135 219928641 302529681 496806607 785312380 129176030 833479286 538973614 914439368 530015725 695975667 706127957 995832865 79481595 645549298 999184112 999404886 890613490 962441574 766723975 984957150 898431119 998891613 865943700 944890364 232456309 890468703 121389069 125425348 526246372 609166406 153954848 686387046 501644812 542394968 973268222 994595652 618602462 981433795 386288896 387107784 503226194 664222364 264964249 868018338 746976226 874164872 961954167 970454381 408167506 595933642 938690046 979192208 904555563 980128131 757377704 975690231 194549713 677882399 159802661 902816238 342525683 439094658 510082944 764220628 423302240 555452625 434017810 787544714 992756751 995384278 190344932 792424596 175506660 638005414 356976626 463652259 213414468 667094859 150719567 919942889 497628619 997644096 818060156 820317698 783610946 887256259 8777558 590271655 137750381 927317711 883351867 990753207 640808471 674941305 689566836 754719059 696093793 820451798 118504346 234639407 154310214 305976717 871642344 918442048 9182193 754943789 644085192 724569390 444987721 790823409 912273922 984012616 407883103 463423343 691536745 983287064 441421548 841455842 639817424 960489611 677901436 701677185 761378783 992179624 368299569 750781760 924042008 984854044 58049919 577193931 995069128 996372470 701117837 913993845 977871358 980451719 11224140 379660318 501191055 524666475 386572968 463670961 952122643 978681316 985763878 990124084 567993015 835935283 671097847 982466631 187570284 371087314 101817971 187203427 87453543 184290852 535336354 544640076 738403391 857142760 126119950 678424650 429247612 921349311 562171060 568132198 625691283 906548756 374547343 659250076 709118565 946891165 545122724 595922044 322494334 364767036 206680859 902463017 509210454 784708708 942959013 949428352 350510608 627596396 766561849 965106295 394630349 718004423 883041284 920229541 462493534 958257063 239136580 324517414 513703796 702886163 198892461 408220740 220616712 544323565 692174004 876629253 939599856 979390053 615354481 844930285 937784805 979462037 720047820 964541249 93446718 473833397 399827007 514867872 713997482 915058271 360032071 715924218 66869557 570535389 172856109 462521704 325017397 371297961 804118176 984211462 621643817 828632261 905748034 995231164 260495444 734651644 370841794 798619155 624747507 927490450 670693814 796484737 391392953 990610748 576884898 628644878 226169363 950315601 232150799 450057030 946076909 952112336 145020215 917626338 905653829 949895970 116758741 603562118 120416267 742493163 217864849 596748001 653067030 881857401 453857186 478708010 332888820 704275604 215296680 843973095 231890698 916696204 274317386 433429613 766405076 894828721 557527154 940465806 561497465 654564216 472138587 769780652 499311564 819184330 439426187 502594060 533689507 810771218 434673862 761811330 190335322 353580302 391852209 478560879 469917316 720003311 481318096 861285750 406344410 878807554 761400468 989533408 92683900 689619775 244040986 342436664 694684010 863564420 244545224 345125409 894518059 981176546 761038257 852317671 324797607 662899795 343446878 876728305 111207436 695793052 115707835 224962968 840190938 901874755 128085012 640680335 885944461 996868849 445363436 832424815 894336275 922189898 337270079 583045416 882957812 893494002 580071245 819258486 47153591 786650981 313523034 938186584 550795075 577898052 46351122 709717619 406712357 541934849 374279982 477432176 946917226 955836475 529235125 934151119 771442267 872852402 50296139 258690195 569818825 768450899 241659436 568049886 800981315 926233834 842324914 934211628 814411518 986688546 782590870 815325134 421573178 952449931 271590593 643485554 973578783 987526309 953820818 971044740 441179603 831291359 839997986 980857277 86373339 862607555 976666544 990321062 173502300 554771230 582586667 775811719 654294752 783282263 751526277 858883280 978456786 992590197 762443455 891571151 145670855 162070697 635839791 962011492 822545619 983781687 918186545 939895128 593992069 677270120 868752068 883882598 145132122 375919815 380931713 682047837 361483349 420864249 123793680 414724070 827104481 863899392 655912633 774190771 527958502 648398862 788821832 873613169 836534268 874519395 465068509 976136830 276564808 371093930 899126974 950147188 819932506 860567317 867640332 923108152 903312015 969804415 179991869 649976064 916436342 975906798 363177770 689881402 885609199 976378804 743781998 940371743 226691040 700484310 184121486 499954659 263599656 658437294 358196600 914761515 796828802 981281145 51680760 96045526 12017596 774316627 43747447 46772508 892301450 907853075 927949242 938930846 515579422 561075094 776221003 927727986 647611609 994358614 147813940 691164394 861155017 971225029 307037483 491156247 888739960 980347212 801532483 917533000 795583311 957863286 381408578 624823001 48239237 106059122 449412485 928996349 905243639 953905492 182617332 575176922 660896856 789217403 758247861 793954776 386525824 473395576 345849035 785184468 640430013 735335200 691384855 725512516 998984969 999144175 775925092 953047146 718444182 763273837 728514230 798532761 253685717 915420122 507830929 884713925 722127192 843146653 504104938 784418455 594881283 609970938 103272996 733900144 945512521 955790826 741347386 973328620 973848136 982210918 935798300 956038385 855996819 870474713 239818475 536121180 952415755 987845952 85601561 334498926 839812516 925507313 666375972 883798922 785968263 920530113 127137957 197832515 493609558 679052041 775271974 937186921 754305210 784224267 598485859 969263596 931071368 967167621 229774418 731264250 620394076 826886809 627290950 732553643 212937901 314692598 275263342 978155339 225687295 944088385 615310773 789624820 105248119 968708540 134844973 294123319 409046149 809085268 830402283 964275937 373782795 769152895 261214849 425761475 959179556 968561364 215927670 459563783 594465078 827132869 117026361 710975519 852304884 941573778 464452614 880657138 278307057 461893629 972038031 997045306 950866270 989677432 938513855 996168437 596550912 794741624 318056609 464072065 554921075 698972016 841473386 976672303 466081626 852823017 261972177 462838917 590562060 667535541 957159296 998412641 860341999 963164083 847571893 896042402 432440126 614863105 729980620 756423587 8717760 871317745 537927237 730979516 619868908 899191431 634840646 802923651 733335421 816145817 743875160 958977501 42906433 460442974 907133360 913237379 760529734 952286107 370745284 569928328 611987252 679379913 406831856 886370245 447515348 587084247 568497855 769646279 912558505 935216524 453890458 591402090 273927337 619584928 887177353 898483413 328530315 447193060 420755876 904284546 991466353 999287991 898102025 994781836 500861797 871400372 172880628 405410399 140919283 743684789 705224125 754990424 542586953 604898337 453633911 871880728 89306590 381035696 371246486 968543937 203122520 371164319 917936768 947442190 222672338 525244592 786074388 841403878 813128965 963273332 696200539 972652240 946162053 947440479 616261944 660820766 139778309 192796062 823463130 876412440 761049341 834196879 958340095 963445318 494740228 929223452 578404344 959616983 896020885 977870642 682697473 912819582 912759742 957521211 955192951 979343567 737893650 742049028 658348225 837286084 134103790 994464065 195739078 921494111 436564278 462256495 505999101 796646885 874497230 878260984 815790390 886924474 5842527 526744936 866999570 895541201 950478493 965760634 639266661 920373473 925768798 992208472 887709230 935372554 447570447 453211561 254736818 648621749 272449362 877913904 371023361 942130933 887771418 957602625 739109786 888668933 466682944 721072020 715180750 971999890 266297963 468541728 400897137 896305477 651311619 698597436 286541808 954349242 225625374 900145792 397513057 698817810 116405217 753364912 447852172 784477550 515303314 615498332 201301612 304373896 214528815 473820258 287500543 720224210 621515490 661622240 729506254 773393386 224912033 581065707 882661342 893070916 165938616 337433712 361591626 686458653 116986670 918557651 333575199 835358096 163568576 737809179 250257498 267453872 453310506 798132708 929395809 962832399 346600247 953338236 622881673 863867879 140206773 729514590 60216883 682675715 782253079 814474112 641353531 897576242 71668437 905941116 951509175 974136147 648703545 985626164 28349209 622591922 974825083 987924763 246316206 392364652 488516276 787386544 932689 525313365 746656446 931325118 572851722 888315773 164337610 545520454 417232597 633352710 281986772 745885358 637079310 726948919 374001372 520239746 442978343 618368813 103648217 474475499 912252505 964295570 673724732 912909884 446539598 782733945 12780425 593649576 258043344 542937968 114467830 713733766 830870246 865411942 962926885 964310352 932139613 976870421 527616594 803517186 904284058 929303900 867039389 988347829 610188619 696487407 282375926 926712178 935860409 936340257 787346046 924773554 697792854 978042473 771550157 900171724 106329219 601613573 713092910 940899895 854738881 969585733 142378110 655103583 808935287 849029016 587818029 703561486 493373606 744441619 247307769 611048322 953046462 953924366 631797923 936714792 223322885 993061509 360549753 360916365 536165634 999962597 864066206 935425583 287769955 603667265 673150840 733606379 520591331 720768800 394396436 769744465 342096589 693054435 566624150 813345135 986301523 990286793 237506221 290029356 586881160 928538981 170838099 683269239 799528951 874352200 416018561 500506007 58181621 748609409 524078606 760142001 756626950 900676121 841775077 950136180 35012220 590620711 224345012 707010324 424867088 517900153 991799502 995558144 642901932 933831475 42574306 870063945 88675514 208006415 525875242 663014491 730168615 741535350 343317692 948218306 640893459 827676341 463703056 683665698 870460963 899841522 975463002 991539108 50745039 588997057 760997061 926973825 66250069 767420148 56009266 920866049 204257924 823210246 555764696 622914811 750710944 825522837 357011394 885903987 623203605 838627798 834017266 919751559 562175933 935156777 727271773 928584754 796227384 932940293 784204928 934849581 940586098 975647182 157963318 972265847 732514338 899033032 583075862 692372596 832427046 857029409 850785367 893728369 574055413 578712633 426544794 695253177 980248115 993465042 80214415 742244200 981080950 992669283 491866714 938401629 732877766 782812843 700484758 781032686 264859870 536561675 144556242 162347622 260816212 867688294 782122722 874615724 197414513 825516954 338331426 788072068 481636992 492229813 889295239 897339341 952813397 966786365 942906781 973176229 330345910 633571523 13839273 216959110 510567400 512913293 143143850 787680638 581714819 964846068 530608675 561596156 121020357 195518019 692238914 832781097 848156501 912411848 913471840 971296304 260411848 623958350 213480081 773419846 426365431 978287491 89478241 405066777 679259169 805979282 80234597 573596861 53792853 287988710 122861775 133634119 481938075 816046153 274711042 970460980 583071258 651798861 396807560 997396080 596022487 755664477 536555204 864965228 726160138 841575057 988352396 997460835 49531715 420254999 86498262 123275673 399558411 877942858 494186329 716978920 604705137 889991422 790117606 875059938 223971258 566651880 825862284 996161660 730837910 805793914 765564054 838993958 292203742 829626099 59226401 237969869 334135399 837647574 173654645 468153378 711898922 849199490 669068375 988174461 961059735 997243328 534850854 538653583 99756655 944921937 598615761 865517010 86696282 507548454 495614751 992718499 241119901 785453529 31590629 486788603 974026253 977725039 586096501 586377125 889457763 986941628 754120514 916883979 713127553 790970436 915698198 978411464 521624864 624991641 129024325 566305619 212063140 973986423 656831183 920396595 361594024 833007252 611624743 663047698 293248066 602130077 98818992 474153861 159646342 251300277 883900476 907866097 716570113 758892667 897735024 964402667 345421415 527706133 787045335 970533787 122149590 737874610 141418640 377939497 232388038 580299472 212352122 355435978 363871556 540441594 919215551 999180386 810418178 915831669 874698514 915591458 169209725 764749198 860140532 991697496 29003088 532899038 909840530 917090380 539650781 944167961 729745200 885008910 601938506 842728515 558830646 918753679 431134273 933978548 603004975 633464028 72848834 533226969 911925832 930619549 455113556 912936070 358073326 890649454 305327780 888049471 715015885 904292014 700765586 817990729 342589747 592176199 521876009 735470863 533520096 745153335 580555613 770554689 395968255 501651562 325857461 960912561 154938755 688084949 726818894 827693857 172291770 461081544 414455392 775205030 497475276 983586590 583462712 837749619 599358746 619930310 272590802 953086662 360116560 882707604 588063493 825836546 853680802 910112875 132665652 412311891 25876594 457472056 327272611 661229249 382032525 761712916 14357366 377550762 123885269 645538113 847756799 862262877 214695018 460191797 572583840 876365059 184669449 719847106 376025585 939507666 871533832 883163388 456865509 550265844 700143768 797194355 336431973 765573442 843016556 979185872 647964358 851187286 366481535 721655270 126768414 410230119 931392235 937053418 208465812 645197119 688382410 864104446 804469868 995646243 343321182 403545734 767782377 976259475 836042720 865411409 753755242 971491012 702060663 757143783 826628202 861428019 772231012 842658351 9697388 856932252 385892321 925794474 491325587 517229272 651362758 696619555 46887349 191976156 502393954 526306662 133873421 570041481 54268311 202893120 966862777 971554233 681406361 985102621 355112552 683772958 923936969 961669961 511312041 643707943 851304617 929573648 895521940 947583249 640223269 959876004 277831620 804184132 945743477 990993507 466406404 735549977 339646180 651606524 43322188 845836870 24936520 248115341 686918447 718608855 11214042 284799561 740522708 751607433 595426582 705964539 807962442 908890841 484613950 566216613 942474511 991497005 789860519 906989436 952106469 980359085 373105919 655476588 502678805 668410147 57096294 130110370 622969156 683776877 182644964 387995544 982938655 996768383 106212612 326419790 518893247 645896848 757506454 816233603 231459622 380583482 46091114 801346292 555759150 831848568 72924884 674992064 825234277 891016602 335340660 517095167 778997286 837521743 661650899 896652532 839506207 920347213 930446133 987702153 600743384 871524135 70453272 945926781 899905031 993008475 702447645 910671932 372647308 402001439 410911124 738487312 855061107 906574371 385695490 886134616 679343493 986227595 686635251 818567331 573012692 697145137 320396694 944187412 346924747 915960046 484648286 968038427 739625066 992481435 527179430 545778514 855220629 937351118 438194993 596163186 496322974 989166229 267640218 729575699 178882202 995790902 272119000 947864171 811885664 827736239 609969861 907217563 336458411 858042898 575906549 602423565 556483797 598409436 233920600 817005099 450681544 583934897 425802238 978530861 740238967 741748807 483237114 764196290 755676981 902236475 24120906 363810378 642316647 691342612 520278315 679636612 681408803 957615666 818455356 881697379 687221516 993881642 492701382 715145401 905125148 921014206 32788935 756822702 386807792 594173984 909970142 957130718 916101729 975113412 255279062 339010873 694165225 856881194 219287878 540356551 364540900 697162316 998335491 998519980 531480028 963843593 824340870 889204644 550029457 800175989 29065235 483875823 404699063 821431410 609775253 646476114 752395622 799345224 478275569 543589792 913430678 939772770 673166806 728880730 121418374 394360030 273571639 530251554 117771876 391475933 479750926 601153197 540307028 819006326 151183886 879528094 895345898 936825331 662575918 776254491 435038590 716863875 928045038 943609377 91345129 955566918 913765830 923636000 131530065 538196254 429627465 953537359 83677529 156113164 926407028 933131045 779136293 803137226 456328042 710773653 787253271 999861698 204011816 510907680 591005266 687150343 829512636 937760941 462060518 636069359 445837835 585751249 118218107 459657499 384156133 802441047 1854343 15820711 137031300 140661833 236145136 563061623 354161981 431133618 302039346 399066234 276943200 947641438 363793352 757999726 549635775 627342768 616200541 909127065 409626758 524278015 728253927 919211745 949468965 991323143 877305316 945609626 758116212 976138026 212430325 805499905 409780807 597575153 748496522 776343288 919319034 923535540 94009264 442641253 772784420 872652805 327053041 464297469 151828586 205846715 325442516 452809892 868245741 895952603 341877335 905381987 963179490 963394847 574705989 748389856 758742432 839678029 822409675 913619530 464439438 671395870 667778897 743648553 641268875 692682444 41142546 413978130 534120855 848865376 548722118 636611880 372260543 376057532 406908794 934876637 471387743 668111085 416927934 507927958 649639012 790424490 315842851 452406767 478050377 990607492 417443104 683611332 827346177 845542854 129093818 695235698 587957278 949150597 690163798 980136096 333910339 768574494 415516933 947482629 384234609 407742679 439135817 697237870 821396915 880511925 708972541 715837278 223523771 369086957 542932699 840667909 558452133 945463535 606149141 754525751 984096946 992832256 697714556 892514320 32725398 605090084 603484011 960380714 251718095 263973087 120029595 211647022 931426630 935744356 66340208 923180780 386715758 835499143 636147136 897766242 384257223 798611702 564476485 942403598 632456522 963742107 371598209 999595788 763405883 924864380 470411344 692392397 979230357 983428508 601122381 888495962 667900410 846946914 804221021 815378363 946563229 995805115 168951379 419413002 554128486 853045539 162273148 635877015 25886341 853094915 152435573 655315238 930039905 935217321 647978260 761001800 391562759 754571124 761813238 814312431 840424020 963190224 881852120 944656916 939784337 950634740 571730991 794219354 791711952 927207649 796078531 866293801 758387950 937929409 378731108 556215430 34538350 844242937 883028668 993399211 162432806 720295471 392297685 736737678 293277435 899075513 100943131 967939889 464075788 621562923 796774486 925276206 782010261 939154405 246198597 781195064 357237052 417340689 194307313 424289567 107855705 998140758 458906060 602456556 695331793 940386941 17039336 482399777 42032289 956892049 230757805 265132774 86747676 102881073 487786137 591956415 890529056 929269118 733601445 939800687 83519762 334948107 329981882 415210960 356224127 971074566 970250319 972759341 459317694 816132902 768818095 804977077 413143051 734495736 721594301 742397513 962125570 981483331 546275731 854743303 931529309 965732554 37972452 841339683 849266334 928347128 213473731 438603360 705652894 913009399 451824809 747077278 292449330 913989902 256436130 277811104 363522463 961751325 571107639 850759176 766608521 986342408 277821236 351520372 834856863 962157646 95216199 721484292 436263360 556244579 285269236 949522323 174527405 279849148 789184535 859048105 439538038 442825696 191953321 214699754 950209474 961062358 70531031 655868534 214387125 822257499 367724528 926920134 937676058 955823416 335881460 993949882 882156711 946310399 699721034 963980113 711731948 925766248 707421755 933895251 699692706 992645656 207895520 476066607 911424112 970620235 404766096 537002212 311755222 933610663 617942315 940062938 206388556 511045821 72916480 126793068 257830132 855672032 691748936 968154497 680606284 865940791 889560902 949915252 216997388 637911980 405318519 935553368 762135791 913980860 353227140 725480265 461934958 540676405 438929575 820229366 803408484 906171441 304458435 461658804 549047973 661782025 595819490 605566017 396626780 701767526 404381296 671393330 715160557 936613246 988413497 991837617 664372756 774515571 345208158 819073932 276793987 846225718 98904596 450408669 246578743 486479666 253582314 415093051 279730317 448021803 944717939 987770194 386114556 579218467 410598343 682261477 292557112 475614299 232705114 892456161 667376747 816559195 846379979 911648292 271715236 779423150 898448262 995041522 466115843 916042040 938334231 988273546 147612191 499170656 47941600 975219229 51544208 314581154 115670765 194107072 80989436 299367358 827967472 922186849 708668632 837434160 291067785 792570907 523969888 762537023 601935621 845330209 580977206 863442092 462937019 853405397 340623810 782073921 365397912 623423563 605317897 645608620 506697755 584057756 830839209 866209075 198875674 928582706 978095958 995114526 866617575 922681629 532421513 981340438 928375519 998013590 335018319 451705222 153583921 704321531 195072964 568762598 809311224 811556434 12267217 769993093 733476568 954364651 71727793 613365119 913030789 959029922 252507590 553895223 132583874 475241150 561978735 717722879 576559535 882838916 399942898 883263987 355177518 718991296 572698238 620572017 49110432 356878794 789329170 857392016 713649203 737907869 762487154 864711355 41634940 137069738 507211830 875782508 321308822 888663375 351581087 954625313 190938384 569267785 848566322 867232765 713258842 729330445 448145482 526108339 174000394 531580869 846130844 996950712 726516262 971094507 896645671 957322550 792576218 966821578 170639253 699475247 899154213 999622888 71502268 653924794 856282955 979340078 950794174 999196202 137282988 550167567 409337523 897074239 13605895 30172427 467581127 501738671 682028104 888914744 170225038 760121124 92084577 105606654 548907476 726225913 413751139 450905897 324088923 769188338 687752083 780302053 22253909 84065595 289633690 653601311 119767260 399060169 366283811 441959823 196778009 220278031 206973946 373310295 80623011 992426200 78541237 975137257 529555273 671770106 451612350 566310463 636734734 966111122 304119496 351796793 476465592 524253924 637311552 936496217 390051773 783105762 470587887 999821897 710946625 985335252 544906243 791103219 690022080 695053203 701402729 741959206 630169689 884598371 672039775 906938613 590781585 878324081 839458238 877330633 169965944 725538311 241312739 823711557 376106320 844153899 525540854 531388141 728607805 803394788 782305355 974372599 161462125 563596065 664407839 717754209 693527813 967704030 771158089 828866434 374665549 466904579 523405883 883727899 901792968 998290135 381485371 559591429 81125412 624050503 303647832 515810553 944155731 950463577 435096807 668806839 681133575 837667473 533670088 716190670 782189470 870483174 60711699 515327364 182315325 771328635 677553640 939650831 484954944 694332064 688481779 915475884 473949585 482620209 609896856 990026354 941351055 948303791 163009459 594579915 569898529 820057324 192015272 375006697 202367797 766578683 31119107 900651220 301348918 429952208 816996061 853123963 142656517 400600885 648886454 923645306 897124924 909846545 175430993 731017060 855202551 935585318 153565393 189959304 890021372 920041990 966091216 990774439 573717557 832598123 416517992 823828854 433199370 835574144 794880367 843755614 756979289 792514039 397858537 778847255 80048714 605343856 521619636 851016602 944219944 978821953 396665081 821194369 764118726 971229438 128884170 711631465 160497285 650777744 867390438 903087166 195989704 309502893 551455528 702890501 662917121 939395435 37430519 490572800 39191924 299209536 805578484 973923959 272387242 310278816 499510838 905407902 884291097 978930543 712269624 781712525 594047947 818707564 992610354 997812937 449157870 950717201 946463222 949226595 739307824 809229053 503364415 930561298 431626705 963308406 705304562 725788055 701085306 993545458 236304361 806340622 837339925 985026670 51273940 791534781 252520643 740575599 422191750 717322441 665986855 908836414 521552042 559974856 956649125 974334260 344854627 345628168 979900327 992441806 77437076 103844185 618669459 785421337 449875378 552911811 795361021 811407423 199699047 576525499 563131590 980507071 505850529 723974871 591030356 694676219 516895147 577953659 39937507 802161777 191712122 633846460 352917515 511340415 740978002 783137802 543853199 630500427 552674634 833654058 27787601 385750732 331862016 891216971 965360066 983455774 947632559 947663225 107023265 318567011 480253466 715406579 512663722 840599022 303581185 461643372 924482361 929972026 90523223 606228732 679938587 698416209 500448028 938008720 392786657 625144052 372584465 884671729 779582080 984475360 28882339 651346132 221140352 540388208 130084687 703458387 750510833 767411767 376157870 755881376 847590124 915758502 297711286 858442067 828153902 858226229 945846925 971641951 39847169 793103307 697446855 925677122 987103785 998374518 212996760 939262597 413392936 875558591 654033718 681171639 699490830 882825159 556188518 708169474 240463720 777857773 205573053 958435000 586246649 987833261 835852920 876386195 611074485 730586030 40546440 391608822 301722651 369638734 691455785 986162318 791851648 823652747 909937383 977142322 978198573 994835715 728190614 805025598 113813209 612988779 242185156 467900603 587363385 639565873 427991039 453721477 402584888 974046786 365182883 534092052 547505825 983243256 512714781 700998327 633050929 663250822 326636234 842282076 468736563 715646023 629712172 923017421 17918309 297191681 355755167 740031171 272747718 986730700 501916618 656011614 928846681 963920938 914860141 970072969 660265460 874672981 884676231 920175800 302858886 577112171 477817989 796419835 597357668 802252586 16115717 434684630 451873429 741815534 50808953 553265034 397065126 530764919 89238187 942192373 213876201 670860066 694454481 788231798 442990657 618899868 999057088 999293885 140507922 716077039 495112418 787934573 742180065 776553744 77846964 102329640 462495524 478893082 298375780 472486847 284503725 718734039 547610338 564560877 593937178 686773162 621266936 698451244 988272857 988701208 142565601 577592785 182572943 715622288 837088385 882212461 751208671 826706507 585468875 733704270 918901692 923373720 749380321 863511991 95487764 517304089 419886670 595546481 88403825 862923012 889958548 905891985 462612615 572915195 728986974 781621278 714682434 944696135 234858218 798028791 658927912 957417440 720854317 945489836 753131974 937001160 342062450 425367978 921049534 956756919 595304184 778591292 56119094 608738389 988855794 997065769 885515711 979949075 860645758 966520503 570695244 584426740 480820760 637074627 891032107 927716490 317364436 470467977 517188283 773619894 370309493 764679006 145943814 897955584 40457338 203414750 287179548 726021133 455815424 870959141 498046799 524095626 602643148 617931405 617551425 815313907 721446317 978205403 175728281 870419328 152018500 621637980 577313262 653391932 850134356 986997559 503087231 853940909 386866921 456930455 426201912 772707801 270162777 849403044 413820338 761527540 953572533 964585865 550887679 707001035 765174860 774576941 17211147 505972606 820128411 971039175 78199129 693513280 652648420 799502241 169750848 606033261 199138705 627253622 653925158 937125378 559227963 615242114 301757964 395132229 528388783 992241661 15927947 173040143 370064648 681795135 135293188 292512161 962616546 980960373 514063039 646480045 641652380 896890116 151366976 326236146 238689560 655695405 809351336 855034783 137187951 738749486 487246173 814349542 435790193 713317079 821231645 889297610 141832041 769776240 113939843 341527283 186429993 616923888 714765860 781324153 262035457 943279110 549878063 941142915 910407515 984564714 174232491 862497384 999789482 999896048 514320385 982336456 629143621 715895947 470701821 869293236 315981232 592272430 655300660 775268295 813331421 876794104 95802733 548076733 547904030 891365865 195605184 500995108 995397583 997197229 443394771 726923260 347524993 992147268 916315754 971124405 341607613 966995478 604759557 802032204 433906034 477577750 291228747 899295065 198309526 614770811 253489202 835583780 629541478 900692268 412046550 539778129 628154311 958122681 389965827 634399591 274945222 859014325 655149844 839110911 145294290 887691477 634444597 887690300 517647836 544103302 481363624 838969004 699051463 903761402 233711151 704692555 77595876 579706442 165882045 550401480 969170408 993019482 141997678 411777951 763026433 866427120 53311889 344209391 623251275 783118406 863022385 903965398 442239204 725228342 515107951 719950659 699999435 971784574 549089567 935857519 920749428 932157480 756966444 984402204 130260205 717282802 13559995 454047875 814260136 852096349 302865624 710538900 134695141 442328222 605650533 905264788 451400355 772455448 270629080 438185809 22770545 67850677 435923139 684144854 921945805 928380731 876474325 938485527 997525991 997605905 450705196 495326150 658158864 901487520 217174399 594590210 90653248 108911480 634966211 942176672 950530963 991281785 42358448 158785810 452390480 852098184 197092646 410216676 733534198 754736417 306594584 448651421 59972490 942266347 911979439 943702709 929021712 946094261 204354809 542781448 35206854 639584129 582560496 649022145 622988714 746222424 156590485 276785247 64336608 161584573 32582875 872351101 210599767 625883250 143253211 311121828 678260093 956611377 647606300 739003156 122456253 627801654 404967444 613433257 912166214 941661935 621707504 970172394 849404901 930927596 716212410 782465714 152738184 508670402 545770106 949221596 378297766 791692184 457596787 723504949 379615353 685409013 865124471 927639873 534350775 892253163 534973080 837405558 102284527 119941443 898689097 949699579 472372106 894483203 765325515 982175390 652220978 819644264 53739659 976494350 73522052 772392865 31185977 554365881 793001212 890923883 422971941 679788686 40668274 603733083 932636219 935428341 834909081 873342516 29693825 218089161 99175181 931631970 82914212 149278766 926133559 937872046 255341572 412029223 182691626 988650596 836836618 935503797 107070417 543933761 706149929 879628868 882503978 971693941 338202160 636282535 737703926 779198866 68347528 923635879 790879090 832939885 897561934 975187511 407444613 624212713 186115361 321817323 880050521 937314319 263274388 409841953 85917650 505029561 40361956 718386618 470720581 624749567 825674651 981365705 265284053 528072298 319823904 733764385 856808347 880106811 238447167 527400806 717886506 720011824 465511493 483600747 592274932 889415732 124113727 290059590 144663196 204705087 398923802 680541104 154037651 662459599 714493888 727406778 192375114 244171332 342456206 577449452 133329674 924240725 579185071 680567987 51523760 715449211 610966753 773572933 505416650 849365939 268050309 811631239 471342186 522328712 874484156 963321936 165898530 306292794 549783868 785021986 484838447 675783387 959080239 988359780 590705382 741614079 856338805 893334375 659956032 900324574 102977622 560783018 746702348 808943398 298672536 694859648 581790444 728162631 102638135 275533170 197553715 608780186 553785336 909846409 248687092 631780380 817688469 892725095 639779643 826791964 649962134 818000919 260806111 496805750 657864730 750982313 878240190 955463483 335868673 489460678 143245525 339622071 584823214 975188270 187524804 271758059 884316935 994756918 720938792 938553940 95092283 904521693 807306041 861183474 226356634 645449764 259502542 367689115 19566561 462843851 981551816 999803120 203030972 668357515 941555523 966334985 515684094 764203937 492462888 754416607 271879878 775565835 472848153 703684324 44325825 56939041 345484856 711329223 686209550 901693434 571769701 797046350 511695420 701404387 511032197 947936521 303391449 537161724 895798984 943864243 386829617 614039628 307884118 688593287 722593807 965778054 556116995 792720248 602359170 860101666 768406809 892513981 862713904 930084040 290940093 332698317 676864452 994609618 368589494 456127303 911286013 962487119 843157840 844602196 242486943 845520510 355081477 379381602 833189812 907647617 474727782 734694846 264314130 409978194 565553779 677714741 246422959 297067170 361008625 401056347 196823356 257595839 158485357 761115500 991816632 996874983 148342688 946045843 831304148 998677078 648098998 822646323 903840473 932450961 208373923 394829903 284859034 301857020 223990336 522331641 149285325 605501187 801291041 852595013 883557187 960450977 636338799 837931802 273729982 557532310 579877556 735160797 581533664 689128778 214174119 344507452 166038377 264195691 882044458 955253117 91004028 180515136 962112070 985825464 188565394 885863793 206724218 878593721 68131889 830483593 936734816 942137675 872108953 936338494 186677207 776497769 570275039 993195977 766768835 901583617 906473242 981604463 324303079 501174749 78896858 816043236 445247100 723814653 620436982 888339739 460420240 937706727 334395923 836829470 911393654 985611992 831710532 838166434 294656409 866240997 314291486 801855732 535911294 670027140 65357253 779769646 441830943 806104948 849294904 859090781 953897768 999209126 257935790 322372373 704222589 955424781 132968108 199168271 253442981 721931925 376889560 455777764 492383149 686727351 954306305 998071964 307493986 891810917 676283428 747398668 572171759 657373137 47415780 917051939 326813924 447965405 933450608 934404368 655582588 930763316 653625020 741214077 645707296 890532572 350246973 466458568 71377487 166857749 120611759 908010824 136187053 545187191 840338167 877554058 372068698 969193661 554253856 887292017 708413350 813870123 792850372 833335958 715695887 836224050 343778880 764779172 222099194 819391403 478732449 624941043 373905666 411177449 293802975 343927358 742290556 919307649 82295931 476243430 770673745 953849655 273233251 652159845 666461830 725007839 699324385 947156360 933186217 994095660 197617429 511403190 456770181 470187349 485628819 823514838 436218562 561667075 481414691 608688126 186229126 317861871 855748416 886317709 977101967 983101935 64197047 516033813 985789477 990406342 392169430 593736482 817627213 994809947 633227867 944479859 801817698 901752706 295439986 796164088 555780326 873730326 634563738 713472680 496051378 668600080 293875216 395022988 311037377 782352188 983827988 985409108 179496725 405285699 888975435 967594137 483129435 789676255 136572089 869361763 409070554 869702341 389260346 964382892 126340380 697760335 146472781 789472659 125413778 405315270 853483740 874156690 941987990 952744633 53897415 267203665 856709180 953598049 616701133 725121840 184948458 616916864 500221492 507734124 790361204 819247937 961329825 973774232 93077052 614473020 326139945 789085179 921309565 984715741 640564414 983791469 350153515 594253249 254089619 302965576 781132740 999890065 161884196 563466410 565525196 998351806 614225470 795992223 251276347 943165405 470384555 585402711 531199752 850187821 659468502 838769200 636396470 990847252 964006307 977789065 637662556 955789477 985644369 988536701 745097257 844506897 109978745 862515246 403025250 462019969 48031785 317894791 444510066 522666627 551977303 806921595 843279579 876501233 154402519 581154910 752078200 897042885 703006064 766802054 564217091 815202345 785714108 858023871 597208947 683967979 573571885 775539512 470100640 504684802 811480002 835504073 5125194 384709903 577200459 798144574 746980320 926475489 212824974 718084230 231121258 630442946 4630094 241706161 402902637 883172787 381243411 512746758 935734837 956511937 798389121 963041604 549925008 971103240 485764667 723896946 310545187 930282840 816436178 986096879 315550193 558573986 627971261 730816961 972849714 987526775 186840210 568575668 854274853 978455071 875096750 932775057 818869462 900616196 935120651 943367530 603654662 958426230 247258607 941752478 236633133 919606526 890585228 931331214 654711140 844662030 198204047 347272988 680387137 800434943 840186312 847665801 277270830 546882070 443732480 722360181 541111802 877439630 172821920 357069485 548189167 974966711 98172977 931851488 924807331 964275880 342281793 919953027 157325695 791222647 627845439 796267563 124061897 206743926 662452669 945958490 747757647 877407835 595345719 793482939 243512578 274195912 399799051 818658158 194528189 251225798 134297680 250899627 726347265 904684423 694366778 890234132 305140297 828844250 9932601 956527467 99980343 230875754 453486325 725576431 815336638 980323760 165140768 512572446 41221982 913339089 965048089 966951788 131488435 369082538 308919020 867087505 29551263 502946574 650515854 997257568 703714752 786606536 311873335 569425344 765353074 779464983 41676525 917363684 512448343 539273411 445446019 945149870 73826532 886884595 406533236 544373536 484315926 821730906 973715467 993325702 589134971 745956343 101704079 238214941 273765496 613992756 585593499 851328473 286335325 331202977 164527327 951760074 785843723 884268325 104596084 860293118 110594437 166294439 448233240 646417694 310052329 866423440 333115569 564684789 402884134 685268155 130282963 495072793 138274386 326526191 29601546 354726156 352223113 930798735 418856867 951472269 253793754 398049364 97236968 672248157 557124639 829544641 252903069 911425659 569179972 918186062 489385179 552743158 443349308 791225289 989232843 997624441 313917353 398575056 816399366 960848917 420828293 514839017 157358400 551756486 63550605 910004493 397010950 986971962 652787139 983867713 339157203 849907912 662926602 993691379 391368663 667662997 654973997 709756630 934314001 939059105 621808046 939088517 359749651 977513296 686688416 843285718 502646041 569532378 55305117 590711766 974431070 975139342 932321970 961313766 208007380 675377987 938677755 995529180 53899490 846206880 982977017 986348637 165308475 582595643 435557285 814939988 935057613 949495079 844756671 926839525 357432344 883978778 667254270 834767699 516607509 853287961 832930985 865629796 878614726 973077714 310769768 361157023 502612229 699341016 37214644 72355233 851391399 998955359 163979177 276365237 43409651 472114933 807811253 900431146 259123845 429512044 856461789 862810338 239126176 605728483 969128920 997601499 81480752 584159507 828662569 882331179 675223700 745415981 539330049 612301502 829662010 852265313 325577933 891385784 265373481 571543526 964031327 984126031 248543112 820585236 993102581 997339140 216244434 560552172 279159140 627349003 34744947 615066514 584071246 840243796 106917171 752615792 788380502 873593221 794584597 799702742 308080354 350751684 68641451 834602990 765877954 830705756 825867070 848308600 809594034 982264049 506094275 895309423 947815345 958300136 471411992 738308342 665382185 689636845 999385522 999406195 970751518 991542279 422828488 989890718 248138954 352038660 919960912 986545296 958003598 993622940 969679974 986870954 443783032 540772285 722798129 726506837 177679561 223574278 128921848 777168347 486501868 521896712 101949394 541363038 306726596 443616585 335913904 347008923 376297140 981515633 564500273 749294283 478245396 524812364 698858149 745049270 496775597 527406216 447219604 708938444 496837207 798801056 146150886 591807133 122434782 518632279 916826202 944098188 355863510 670167322 78409793 671295487 119756092 538636625 466679880 652895463 363261330 633779546 487907787 689782534 677982332 706500944 554560734 704540903 404184001 784100719 682737914 908569480 771611450 936680422 718709234 810027706 582517298 771088937 821457809 927899413 853253749 933921277 97511626 430221194 999186655 999456816 576772481 874110348 900972040 939300163 152564744 552014666 266366952 806700314 568865066 721973055 289180669 771088605 466123253 653662079 234152566 418832983 992310791 992469477 41034964 661404423 991630507 993253764 382241882 625504102 907796243 944864053 95394384 754418945 951049614 969172214 665907506 832663838 604244023 605886343 90353530 497123938 102213811 994870429 806691226 841910379 488014794 559899390 495212790 810581422 51627773 64285703 344828720 915267700 388108615 900308080 859524444 964356882 191538332 479856974 778261803 971676230 422618621 483708225 861440201 868953432 481900215 997910197 502460648 711824731 136194652 954295831 817170769 867547950 243069421 287454483 863652677 893665041 944147750 976822836 509085239 605829113 169697696 190277657 635843534 947474529 654070939 818415939 126913296 212959497 348396191 947770463 434040818 624350136 743966987 866266732 132859195 836484984 785741060 967893168 684898962 817704958 793166247 983371340 707327663 719158924 972425035 978921351 382327036 657331900 720854554 744400251 728234476 875034887 677137126 855591956 543319611 730380990 364734825 597958819 520222440 677678766 917568562 994413651 293686883 954455521 145056797 543280345 968325359 979483322 423636716 702864612 411485559 979581297 195226538 357377689 583792748 738910260 146682727 506344825 147890131 614476527 324086696 870063710 877287906 900496340 128427983 674441009 573989382 961859250 258550382 645214108 190913649 849764075 147960111 500679165 315663037 691348094 10146237 639282198 808946912 989350678 107668574 228371448 252444352 261903753 277339493 351053238 824267189 989430345 964941470 989150794 388953836 407948577 447576548 585980083 287462542 589655428 158823570 919495896 913055705 951628519 816573933 893419030 598602161 927245711 455582185 658771067 535626509 902403914 301575017 755847923 52796220 806666823 468014143 689526004 40643528 345643275 598671864 679875090 927039769 944969130 326720466 844240737 929414284 999433341 254169315 480238530 594873084 658263492 622084550 989588730 273911853 836644238 58017208 934696714 56545149 331952890 283013345 522805806 43098881 643965277 547593169 844650767 381204787 727166153 302093589 882902855 222054106 263599448 669483609 912104527 546594739 565057863 48121644 929186140 236970627 617529645 211145864 995705947 938483345 988855901 684517774 749949867 567538225 694501915 994834732 999954206 985255077 989285716 973677898 976174785 198413051 549583607 179887586 926852723 638930618 806996307 288323769 982953735 492638477 558352862 264163728 562321084 724575918 871715601 935570519 968980653 176529583 970924803 631639288 981635771 760740880 934934956 271583774 623753279 59714714 143797705 277724310 690915704 673539884 914948904 917592932 950127451 262810508 867310146 549424030 837548011 74976304 825498737 674361699 980088798 90998860 391695946 115004117 366953998 53143175 943088588 158426781 347672492 371931549 717274208 509970052 697626695 384987449 860222521 291954747 527674586 607267753 958610914 347562954 681409903 865377040 931850014 295177239 798041864 888153993 894796775 681954394 738949860 58477437 286256809 803491335 995600654 47345535 404031681 369645043 872651259 192676499 242963359 308661854 310016648 810494198 875015455 471240097 881466546 698832400 814501293 958473477 970641602 970782717 972633151 110674263 219910310 454517059 662765715 723258283 763036782 68980898 474466229 772917866 900931242 861002235 965737845 694539702 759161131 820618994 942490869 973186775 997021388 737211355 878276228 728501901 846975122 558277959 612477781 634963947 947861803 800756621 901879108 288270009 356468989 79585593 179029248 732261986 765838341 241165629 651708471 271773599 952684105 652361559 952099733 736801789 958638642 291170212 711012925 845628709 993217385 626571741 993171001 174191283 844469820 108671909 903245654 160536293 753891416 95596575 600021914 342446471 379128062 85681482 552033551 79156638 410286036 480549168 759283192 293007720 314340116 143653799 712967375 864086218 890363509 659108256 724223510 551580854 752200908 400344452 904822144 63474371 782224237 933794842 940504501 184069003 843936256 549936009 782793652 956021188 986305996 984428476 991454597 4572503 552534960 276694735 504599769 534269986 575327145 677609253 949443356 229040689 665476240 539411082 759768655 891571343 958603833 853409245 974932801 330079751 340928112 454408967 691414256 196464864 690879218 409310482 852425327 532973929 791118116 202853234 801864829 122323121 482285962 474536892 696403609 224678533 695907454 406570605 803556733 508246633 786220430 630721127 841881915 385167136 619911597 781348988 993699659 296156616 894193618 970940982 986365398 647968078 849255171 813832868 902614982 588179433 680266086 850417827 883163754 445585976 820056520 619213410 664133235 12234356 255464384 376719377 466088933 355825645 921235801 371034345 513419493 690225558 696016979 962026717 986068872 146961866 762554940 769330978 824058274 192239000 300280645 570664910 781451292 237736960 492346325 985816904 994712039 476745495 576088504 911222418 938514325 970788526 999434423 242269010 919878848 766945686 990177003 220153789 393168145 876081993 914452986 449345106 690564517 274277572 311278864 25922282 705678795 704724637 929960690 762300145 968210453 784910598 830249494 662961098 752375743 223337219 841769440 945268550 968523702 205362025 821002825 203740031 339347285 617031362 879685207 738011640 954065762 130247620 783154638 235768701 531873135 528973604 811305123 376649923 574488668 606993063 742997602 138346688 288126528 326218308 394322433 602333680 999191439 484697 860262881 663064433 696052131 28704862 574662491 640502666 962446258 843761856 849393819 530052051 704709729 393607715 968877177 89356394 605028673 298082850 955222417 593833832 620308564 272030309 920504867 392641365 754453567 50088954 447640086 36284522 899094561 321745028 691973243 59375700 417905771 796071845 958736472 753260217 949972997 53013442 843413221 191423999 338599854 343847538 878939770 581536747 800699087 619328590 746244584 185584052 686579458 290482542 644130639 916300380 955629825 483968704 837220320 126455175 164588924 445271431 466434423 142198370 584753160 171777316 339088199 75582672 826602894 707073458 793019459 222194951 869071542 237895905 712734972 798002045 904024715 965676408 967510080 424228075 651049390 19042922 506059708 293224862 299619214 320049311 407292015 444122108 545687918 953311999 981980109 647117356 939511733 888193661 953616357 921585203 944066662 315652573 581685873 602058470 942487177 351503035 363248993 186578832 912069538 421667563 465260932 60407718 493398422 208578600 459834369 702622447 848031610 790209949 984234699 721111690 996967099 395448386 703141093 958213325 970587518 434003141 782430312 789174548 975387245 623943602 936762119 864311656 907548895 418656019 548324167 881783365 998554213 711686354 915708014 159826259 606628618 510649531 733518929 76455768 166994539 682791427 956103932 110661432 926713772 146881296 317184393 629449947 820765634 27903376 59157094 732310515 743263530 800203231 973431886 130096521 133423508 146943736 568091979 451150862 560014616 225715961 928069455 496151012 616561787 246888708 643050258 812608714 923148859 94974089 971862958 158009022 162342428 552419202 655737898 402882960 526931572 371342959 414557794 978900278 997903874 62765848 921224499 860685905 986876264 698706291 959662636 332881245 690259244 685810602 893313325 643637349 651136210 888593201 910076309 94718698 549848345 297345613 329073267 74078378 334637878 920515477 957494564 560030291 606044810 816451408 849137139 207813125 812900567 191123942 386871360 196886664 943242525 348050458 389631061 838499280 903251781 874633036 988926798 696288513 832228131 36045698 37755319 978942897 981427824 63166011 690549308 707754850 752228175 284141304 705122276 101169190 503181793 416813163 707221106 27566281 625943141 52761099 152271640 743405563 799537092 134013762 297834737 261928986 757680040 859650094 864149201 682812383 747679082 397641362 731731446 128845940 808643229 869321417 929424898 549854962 729041807 551213169 921396237 808686656 836800510 99289884 816971038 107364788 642954318 996269707 996371602 153117976 220030473 425654333 882552004 901607564 911832283 440612212 886681247 278227881 670931213 281949813 926478337 539016252 547595042 811739595 964344098 664552452 764721273 477052406 722456377 146062229 333831762 219712151 277756017 25753813 42574617 639893311 772206808 144988166 593059881 432113848 954754575 367405757 997904503 604089752 668014424 867813090 878784349 934690700 939778811 392213663 727726231 631719848 801215707 178370392 193369205 473806381 857533473 934327587 993361939 478325646 910776499 565892454 587775618 33602792 520645688 735677030 896039210 613489972 681618482 150328746 652099221 270631879 943975917 250719946 967030317 719971592 818525128 384250996 962303238 213351764 224464620 365054092 771259863 117071112 872775593 667882336 936564352 531288133 915269895 559573337 948583064 827725224 887676787 919270967 989038603 587694583 816089889 614480618 639149916 424151651 432428721 980368402 980553784 929020296 971137007 122157000 706756578 875205240 947045986 289132732 616976964 542597782 701131694 688416782 843315169 659587060 816171105 812514248 868630069 409901791 477368653 61225232 445729103 932329763 956307058 516068502 746535425 29760223 894948984 861051867 893949071 302148834 428879644 489723200 660892609 26569183 434631226 299414222 723662466 603261421 983253538 345559360 959912884 174801526 821055076 632878733 707856348 256181361 825963705 462517185 986512960 726912251 867954127 873031446 904648410 360790039 811600880 659914082 972220276 122360649 853297374 773772642 969358856 58034211 418209299 266963558 442473031 258043445 498409373 922898993 942662843 465461758 656703208 635307238 642325527 623273083 944848572 663175693 813610029 968546561 993612947 649845409 784539329 633039529 735760892 985575887 996671275 705600069 930618798 206874498 600476114 239197667 974041455 45648596 772522858 826391535 920425246 944063940 980505576 746473667 934716435 686960160 725472852 533779922 691562672 486583020 914704844 176408762 444727940 521869366 671361603 189023503 628806252 836425413 951630520 192535302 389952259 131093263 728327317 521119768 993557688 521975585 629738509 365243703 618190796 825153059 913119223 359343959 679571971 354449444 610140986 520650978 908955912 810258536 881857215 532017568 640168310 547349948 774726576 55074913 431621449 782685772 889822993 618419324 693036662 408116267 609514288 84997719 150663270 135777668 846106432 189309403 950297874 540488571 825472220 29974251 916516499 901524461 964866108 439684750 971716680 625206394 747419891 547730492 607402138 58993269 631619696 833824052 976310944 675226997 953609759 943309562 995860349 766392701 775135468 933882769 957522324 914587711 985467581 984539307 987141223 862224496 951523387 383567803 852290974 937280458 986469372 292755923 456907577 503198740 519254223 327382154 619571827 599942616 973413393 607040376 726076240 307312360 383856643 628894460 640969662 88539886 632950421 168388205 991241781 209626482 722384950 14817926 363583890 902977951 957365143 466195833 629313499 434447031 940823757 8802675 910898523 177555338 960381224 726134076 964076760 889705111 948260470 227747151 819940237 373572867 960520659 77967709 101868040 297469012 548544885 842692151 959074302 528220684 608556424 187929267 484289210 951509798 958622254 225124893 585473276 758044710 940542917 861494589 896113080 11070970 844240011 297062627 856201555 284286557 378910307 874261897 936821786 868516029 993554178 151588466 625030011 294242646 968097950 763397965 768259215 882773480 981066038 204083954 786240636 567155395 826864895 20298967 877869766 420503574 990792167 559445803 868973173 80732165 416208575 194760229 985408603 85901325 271443872 890512985 911226033 597949573 658734388 966506130 982405604 223706152 971412821 481139918 931264786 808894937 975099442 802599288 893324130 380330403 735120302 143858401 576992150 910167648 967024375 734324381 855519604 923346306 949406591 906316601 945581824 952557655 974097693 910717873 983765075 668439350 781417912 546022148 685012906 869080028 924793597 684722673 855426261 932745578 935542080 290370954 506034902 129558124 629521686 960617358 967235133 498516356 807209508 575892980 641319829 751569948 791771712 963281421 989755481 615709343 771298735 999029288 999198913 326410553 550755403 311301037 555899461 279767697 702632430 722500020 942774618 862399827 892747871 551484939 970896228 441647257 753426287 483323190 713066198 583272454 593796379 760038476 769126975 296181745 977716538 578872999 663348393 970820090 975021054 62942387 249650948 567507796 983554284 96593905 124636739 920046459 925044485 375651618 491278386 810259983 863780569 824891684 883392671 662421487 800082036 816264763 883840920 564624779 763378036 605266364 699023147 899888693 907819652 711397789 803282373 71454234 524657204 508774461 511605264 862313701 930917668 684222020 982998330 920174345 987862412 172369642 318959147 812420136 995461943 696351926 888442453 84684093 639336064 908519450 937302209 106779375 423546322 949963050 998361573 200868403 694757158 708065464 853467800 738288684 855165268 6255863 416161010 651298197 813298305 985278511 993893738 528976039 683464047 225718691 740075842 993392061 995273185 189496312 822332035 446827627 479600856 256714607 667100111 261053092 720631927 207151481 954695942 620239578 741612087 101776716 217953916 916228431 988929540 980770522 985818656 462937581 772998704 904892722 968417741 964725735 983881222 211719642 343495800 412668616 698057438 795997483 821840650 411790212 593476351 885279217 917310226 668178357 946287036 457227250 986946346 852646460 860278622 48685533 463686099 766394923 874597534 696935501 850098293 953628965 974992258 714326526 769561666 581876592 716010158 194146416 517464907 979958407 988791264 474407579 504702092 226413675 957118721 949109240 995495823 815162997 841791604 733134056 918903674 681834391 928562290 153857085 870290744 679519810 967180574 106603436 862640087 169720006 553426416 373312975 554667074 951145404 956363837 243056646 731758429 106759524 367070584 850318504 905484598 741902673 780542779 9621901 743940673 6574494 972506315 161064077 562791861 121936342 923162370 196283518 649508565 824561973 842673116 877880779 979667410 479174328 962841773 278170271 398438404 53532704 547082105 656055497 800455821 92295260 859890361 497666399 825943074 265743783 968998065 363679509 701000972 288353252 658995131 975689862 993229539 88666298 605540193 786067807 991149431 684297787 998022846 676407322 851758784 858316351 985441844 748004066 943804670 117682101 314153039 27138543 941621822 27711751 866257477 701007966 782537245 273685769 560448773 213325897 857081349 842326556 918499648 605729391 793103324 63644879 848536359 310703810 630345230 251519776 462744014 847475860 866984023 290196756 426007577 656493074 903281612 393957779 907998949 360215842 719266602 783479190 822963467 428077703 869806299 32209126 858441280 261227604 511897799 645228322 808730105 840364104 924211500 488665216 919981741 481690012 519417047 636504303 980354124 846576056 871306761 805594237 908805800 321854754 891416169 218441522 587460181 397558311 979084749 955343814 955462689 502094077 870625324 484641510 503519185 449519647 881075939 757741835 787730295 12770523 946744279 437117233 476033307 609526366 689744076 826593110 989946632 678847233 846208995 890862762 910332491 476384435 826872279 520935215 554129444 413560757 631206079 945623823 959186852 202178175 984189777 53859606 284999078 441253148 649674489 805382587 883736056 347793341 394550150 540098614 720653314 641957018 841004166 383182335 580445096 956769624 982863447 223318603 263274144 109366384 388328407 379983883 883248903 320311114 478054932 313660001 390153102 976920832 984453268 714422162 740800838 753234182 943294815 9512960 660100808 968042521 969133447 343961625 849495929 610122554 996267668 381502646 480060977 264169485 507530761 769994303 817775778 802245652 889137404 544794162 685839056 235751584 964800891 451172406 866196900 698578323 701797928 189698080 960605971 925377516 960804864 254524095 632231312 795600725 965970716 312982843 356127753 827550348 890551012 487168600 945141204 325170015 865702673 828049009 918346857 126646577 896377964 248683644 707039532 644995292 774994658 466855758 728177406 942997886 944153856 599745233 718124828 403723053 667982858 988035917 991326647 168951950 977355199 842425520 964132612 277012198 346273555 215404101 307993409 878310906 897278762 408416626 734859395 113277643 479340088 892269335 910636618 86113644 411194825 823784869 880970187 862725123 909260743 700637279 994522846 262378919 803185969 49539920 991807862 45601884 916967860 868621347 908293011 86700921 438766151 810455760 913976843 570696256 602988115 323276247 558754721 770975549 897818744 90810584 486210002 539259523 881343846 206876844 898796935 212217140 626703887 1195193 481369958 469088139 696168038 601901180 691206324 377044844 833042644 863647883 885413675 803291081 849750211 848507079 925999971 552242159 635043455 37121785 621882157 96606206 952896781 111926558 865155509 157192632 309078664 930704331 961353418 643575789 672967504 446681517 862880618 791599848 990902393 570273425 797252514 830656893 846396970 742582571 743407884 564837270 878646933 714800132 910306719 803655524 998269513 255954399 766415375 120225152 976944123 238468752 244474471 191423456 383617640 941539574 970753780 611568861 629972431 841214169 903645504 580713646 799848594 837224691 846067896 780279993 948346139 311805311 998744784 285298906 836531768 434060131 708534069 59215633 138949972 462395000 652551380 813704561 940656471 82475431 744673826 363151840 652385568 490927373 761260233 219804162 568564542 760519051 794845504 612632041 974330360 596566633 720795426 138983508 486274379 47111733 900512556 589662790 712289789 230362366 940042209 959590587 981241488 329007457 476171319 502034776 541776995 475456960 940724308 248800038 281368735 734932444 954414376 313933938 436019036 643934710 815802151 200505570 804752132 935126836 965798236 763888966 965172128 182975112 821539979 643928564 855347339 262697833 827734351 552261377 637553857 416483975 997236480 4251595 493050700 286396026 350862609 420416384 506569762 514057230 858046382 216072074 268783776 387945007 551304077 10198950 508862655 8035233 951776949 234068434 396618286 412382769 947596738 52966841 211061284 568972862 913527558 209613882 867642278 822558551 933922929 368495591 942014450 505932666 819984773 953597976 963662137 62795085 667968491 689292124 773346652 150318929 220977102 859021943 866067373 656426513 758425980 458963069 864935819 240756517 734325933 623718277 708027452 66851875 104503197 299384369 772398379 607249102 629372747 621365509 966957595 59684758 62719908 671053212 973459060 48045493 379987673 929241750 947249716 270259035 348265306 791876076 850180356 522512450 715186154 167627151 279971569 187706901 283647372 558151263 763997594 272608856 826458523 312493002 471101350 614776278 756173060 273831380 385546865 857007862 928493878 532201198 925688860 424847014 823060393 189182919 994268755 828757397 865119119 184864188 815243250 202954872 958231482 972214939 989341308 477512868 595949890 767146546 791891127 968101283 978665250 54381325 412646889 160376449 951960576 808701437 924146503 348984941 650191344 696943749 940839960 212910202 783737371 118909673 793107191 873741200 945027211 588693517 950865049 847391453 989428572 172268742 717517290 891082199 952937595 252845851 539863836 424574562 838881822 94911779 165785334 17319769 400272681 592849303 609814397 252514369 283047744 626022995 723329030 485859345 842201251 903499516 996190592 939714177 969322067 619131437 865609813 172998419 438567573 110834474 196854158 939882504 991100206 798549829 868456407 94461189 586020391 543148401 698613701 331877882 799779925 854904253 913596494 717297942 821991102 624707640 861687776 52057479 473815669 628251932 847606315 260890760 416495625 134944882 355384062 757336471 968063067 52672428 256467022 873224773 931764408 984249630 991235231 948600725 999776405 422478020 818434083 245451993 603251093 338250343 748748843 710551302 928842670 767820535 779333583 739757290 748278558 451391005 933649922 616711333 997636185 672429356 707914579 296969282 361250673 325661506 727610959 850723523 943019717 60409385 533176220 458275970 623004347 306282575 391750234 674199699 685665742 38489939 183806298 340189132 710910918 517115120 741923166 282801571 460390623 779560688 941181863 790766246 844600171 800708908 826186545 203942829 421379348 902325995 982463243 528645595 836583918 579544431 856119128 589532312 752006163 255000036 645839662 333663346 535484471 156612309 759441833 126084219 436941767 8004083 291291692 628415272 881227254 267924013 379552323 12458537 975034300 214364339 914874068 480640566 763216908 957697674 962644755 191581296 960314009 283678243 694407309 756848422 791312082 152252365 413016726 778241513 941977975 590499790 904026551 854166844 888408211 341502776 910938881 357318248 534396728 453880881 649458221 213440627 930510826 121558502 772088723 881168785 980574667 490049063 950351253 295026569 471682302 218710645 718893670 2712819 256051492 65334309 403666449 485021714 658869935 708153731 864795979 404254237 844657250 753754249 799637291 116749328 891673043 390577244 910002264 940176748 955030781 597129808 718244594 604273250 621144486 444339077 816441796 783768739 802589565 897186780 975315236 350442848 399130400 318213617 858337329 219702103 643046844 889693433 906012199 307162780 899455565 51773264 494220166 502927383 854465866 633136706 789098112 881438025 994292008 26786654 740474802 697444885 870775829 855257632 876954898 869735854 870635602 890127666 983979832 811441909 871346221 279937354 914964720 68393653 911393791 791957468 817562434 897533079 954018238 664789596 714450957 511308316 997465323 292596223 820779317 166390875 408310527 226080410 666786074 685737998 816338106 204045782 363798989 95508887 952273082 571173208 766742776 490478764 828931046 470268115 926405379 348138928 440076672 507745135 812524382 838707178 891926879 828302043 939161089 156268676 664119441 643760523 797136886 719963717 938110792 248826690 479342454 337970971 875488338 154489694 222634698 473839534 864345901 367935132 516631032 851101679 964039811 478890422 781905433 122508373 920177904 500790224 973614320 735326228 983258658 488688326 781670176 75072093 575889393 445009044 631316065 633213708 764280386 158360114 979004075 82634716 259578410 305935963 953317250 387040439 476886145 143876973 988188784 903424540 981468825 694005077 818167252 100728307 813354663 807488935 900875161 678256877 792113007 580585593 976747986 277114574 573849766 24946147 227957682 919655216 944182435 442335056 629489792 97372051 566044453 323915080 331131562 228243786 676657573 99721800 610148874 725088866 881497718 329230497 766468853 410232338 445681897 34279964 739095712 744155379 771653874 252997168 313227126 725350894 978338738 217933512 310126150 341066211 861573873 221498862 784811938 40298209 936802600 552867677 564102145 12865529 369689465 693592823 803869192 560964229 862849247 897841274 950148425 447277980 671129112 348016334 828672656 376794762 566433230 696415935 990328252 5511013 400027351 518497946 908741399 64731786 205600946 149732590 998462951 715061403 937175437 781523711 906032098 553332935 561456081 706309270 745976827 490955242 996747781 616707551 952060426 562551795 679054509 999048908 999422135 891258886 973457733 396133977 795115801 81710113 391285481 140174827 933889268 553838911 852955427 925863558 986112994 362177804 516568256 678539182 962747778 96563817 717681028 606036045 802006031 396594231 762922929 34684385 528196826 912175423 990294596 140609147 797380723 441765214 864644449 85358987 995986325 95923557 608004900 587592538 827083936 420340216 441463359 178673461 202895650 93519432 249668021 965577240 999042850 897848209 973902182 451672634 956996276 284849828 333764994 458471100 957647907 572511577 949744877 737996581 751839446 271294241 756065994 117983712 961724021 245222874 586547863 433932387 976138443 243756165 716815180 538630365 642538192 651362841 899361563 339355783 903312266 469393681 844291749 58282565 504425364 724507167 778868163 419392058 928288643 516833793 734597435 871506013 947606647 646120452 857562052 573281478 628154616 197593421 527644281 653734691 707383642 579276629 714690580 766535482 848610332 665663826 785127633 585053051 969838902 146759616 427515947 779773992 878437966 404827671 474314960 591443128 882002325 362940062 478106877 118947265 770856067 214282598 909841858 786547301 797582978 171289455 839196018 141754998 397227633 356610472 843807258 491293004 924737593 158017776 173828855 787218226 845878203 667411237 668910279 460314524 991636334 754694343 895901049 102532215 340374673 644008622 962100506 431725197 447575029 991401921 998101448 383918824 600983397 846130857 958450397 800754113 920845783 550689794 685247364 921395307 953358068 974244363 981125590 331558705 636686600 649778326 675452953 41112275 190061417 290685658 482616071 467878273 531509826 1397816 36740607 760796131 858879162 534957390 895295445 658321958 739265593 683713747 711046548 247999838 911949821 401497292 699492253 991366959 993699251 485602067 630365733 508540368 724155696 779256914 896172940 205496218 339185084 200970496 865244490 721171053 927524500 362313757 695523884 518289863 683661926 925168099 986280904 118574603 763499542 662816953 788308602 469593851 770755527 445394105 531271145 660718543 992240514 153034800 215397800 507927550 705556000 969840371 987825337 66937154 928335290 757682905 814767113 261281030 621463676 606984329 823198808 787646167 792867452 748986871 977770420 363798952 608956338 748890383 756843379 840896203 955448942 322961362 660379954 293827523 781323832 841854151 852812227 468713151 996308522 892967024 935188179 251280852 696805773 953333884 958708744 827793547 835912063 459336303 580712000 122216053 206865329 697279749 801930157 854896894 859882918 923615254 972374871 840127320 885272124 976828995 993691931 873402204 980296656 972022818 984695177 722038742 803143431 984851465 988969935 409222158 803661154 852622798 971128429 792927258 876629124 900411325 909513148 54151566 986504773 957953610 999741164 378895783 782268583 949636403 984698004 209236111 764065517 8695185 22457497 639055371 805472770 319219346 330722299 672552379 756802926 954122670 995378724 754649494 833334384 268852364 469134268 977762172 998928090 35647053 121696393 768773688 783805742 871850601 953412109 675682388 789781264 80148196 370206211 770765924 961237117 849844613 936821784 141788129 936377668 788942554 816651803 4160792 663962455 881285215 944695500 802590944 965497868 126291316 539324954 168058547 370931587 419221246 613323946 385239360 639466126 901283064 936028461 116150069 405508486 145990124 823900610 581463128 695503602 654182911 661699746 436203791 794893626 520763196 613313012 311061422 904943622 936219573 953115749 934439406 946090909 48467230 354104011 923018737 997610903 11298630 234215415 300743373 506560567 658143599 899010231 539693962 706653817 933033462 998658646 47490164 314970148 305143668 912469491 260099382 816665469 332857455 935782936 116137121 450506832 688393565 941207698 953518663 991013469 236948448 815150710 303765044 590823159 616323028 726018604 248554094 526080100 961587222 975679678 404327180 575407115 520121847 703675721 529393340 993759710 800282144 873524365 448252321 778284981 1617306 413556643 374766625 797956742 259638341 323821394 393359005 409243414 167722629 643960116 729618437 910136464 944125588 995940097 670242918 957572620 163320506 735920828 856102924 859273624 238184163 798916964 372274266 686494650 436230078 525488593 526667368 883464714 273165847 660417275 279659567 297729640 478953130 838124886 336318709 444683554 30554795 820900918 962330410 966583764 339972099 900794734 436766916 817666024 316742981 742075573 76758297 630848185 550245758 884543325 586280896 873205183 398272483 563585300 44668763 159261701 944871541 988549312 736202308 895418318 198488423 826715556 549785492 938146431 867237022 995060182 50849785 98531684 12663504 786736199 319022882 928929047 599401135 640975504 948682626 963595361 925294229 977515084 519671880 927875928 958340293 983285721 25317500 158373883 49589330 850002388 457128404 705037945 280571561 544422701 2672842 886632973 179469269 615231139 631456293 638815953 194213179 398471370 934254025 937943465 331804962 760244831 799488043 879912273 130770267 392772094 545206759 742356491 715564596 888709508 883285461 980252250 313332196 947883393 406584914 858418750 41272721 182493099 375605398 814052775 64876602 729630795 277287195 463013495 368104795 943392181 259679430 778917779 869185089 895725309 651872721 904107461 846969905 946785413 726314420 912334478 703569971 762991319 709083333 921764929 636493665 740752899 211706330 236174073 458269050 598554145 238367922 676205558 697786541 708159096 867047373 959899762 339667591 886331109 310011258 657803473 933101422 943745522 350751205 986121347 230233241 328105698 271757319 505153004 958128564 995114281 850460036 939115995 493540009 727300428 959330460 973898082 231614581 232917976 602719146 722177744 631452182 699360392 471501548 841791589 772495990 839207099 950529621 994552373 570799260 787538194 392474921 567437227 408310192 710965850 732931494 777971251 419698736 790277000 979860951 999344026 874509798 906501359 444930865 640424903 402455905 760582807 926211824 964861951 513456430 805961438 327654010 598533988 176487046 873361150 237349569 901207598 24915040 497071003 292849337 967461754 493548115 531508068 338822276 624384528 423365195 462322517 21773028 773141212 377643086 497241531 315423332 634334110 268234400 441222950 85274372 391284323 500207151 925329371 728661730 739518170 297077152 948460144 402161266 722729648 471607957 623449785 445726180 714525505 464966353 570854816 986372246 986895106 538972998 891686152 746526149 831279249 208110277 503893714 132481575 567475329 603267137 605283470 832838883 911632548 711353771 907080014 487050453 886325728 757865710 901646553 96406856 317225128 116787244 817772315 374569455 468866660 569300595 996165836 988881368 995049420 939193346 941706062 536017581 652169785 506038266 710707258 962761475 962978079 491432539 682626450 825652602 931810817 165652593 242529880 537555556 982463314 668435736 745141142 698710262 893000049 806008492 980492490 766809395 979613107 224501352 556719436 212455717 922015744 34129022 694157998 87215902 686766306 135633116 854035488 823339577 874584009 263544244 822833267 537861896 559030397 381641927 807158798 181787001 297585245 700652826 800030294 453381956 568407787 475132180 722334983 601604168 927623478 940442677 957186974 75138485 648376936 448246900 679929332 4181311 752723565 902279334 964118893 502331547 793661075 891206672 910118119 6814016 761057357 303525751 376073683 802286912 939829013 841790028 851530221 274066219 944657806 909581746 970892563 661933771 719479010 137408481 609261339 831173743 969684893 414908960 622727004 486124851 611123042 308768971 728156846 249533492 899498456 684295611 827240507 995990925 997373706 697868114 862170082 767357358 866635449 42853234 835231765 842059930 912970541 273656010 333957685 914273376 951390164 743339227 753000398 263145423 803749514 249445103 615617168 616726376 897380163 601656693 819704281 41153080 169165819 238781976 895678383 367452932 368704940 106834155 769530006 857486920 990570998 113423720 980842574 164802366 975402707 702312256 783669680 550305493 783896885 956093724 994993430 637682685 962425614 382742121 980274334 824581587 933565021 727755790 856549768 594032583 698785985 548670587 771343079 272627311 603087641 747409391 947760552 997202412 999571654 475286366 952529762 319740382 789520399 798652766 820361151 385869293 943251081 178364199 403059877 90741959 336870386 84998238 481957836 993495242 999813631 485634724 873534842 907209786 988138183 262652575 708860583 576569286 700199100 847799519 994204091 600342456 749348740 809739530 874585497 605950528 632490628 547517871 805070229 832244309 905582890 671817511 704317959 500734351 673249283 752783871 817406338 175664381 189366659 159329865 344551606 692445297 945145329 641014111 710687655 431539304 609193293 225061098 583167056 342480403 416251621 935416748 986915064 967104533 971407523 571592854 690861974 225060184 512460761 788447610 912203975 886738615 900068211 618858164 881868484 436152879 664455447 484508616 847996356 375153867 457732393 51487635 837666132 397332293 505778419 12595517 818853414 317761905 867954581 273829834 499523121 335429557 581553430 26317692 431700079 541997017 993446822 159607135 939891685 595324078 814965166 107615541 425417826 407980298 487619970 471673561 584702592 948610185 977993422 85903515 706702012 279309892 582499489 496471377 806091775 82480899 362556393 71384255 448472785 370675203 939954027 324499505 508849626 425947626 911248323 64794840 470974028 811548612 951460565 96372130 673225942 799456134 865736871 720317823 798419040 997749744 998250490 356110807 558595556 10004147 42996579 706248809 950491333 390293649 399543312 393044109 836999610 472091636 554210026 372511866 774907129 791532714 842376486 383634440 574690397 388457699 444365463 151669574 275582889 201191481 929368415 907306707 922808705 759071703 892097255 81777791 320559499 482141841 980405672 742034503 888111034 56544453 402217478 764989342 932844835 239293652 419829720 733896760 757788186 667983309 763761024 822121274 969817991 65561989 98650713 128271973 279108003 926858905 983015313 464542925 615340016 978757960 992438457 479818636 873225377 22166301 802366755 681011109 892175260 950917984 998468330 157293181 933178706 140328604 948775345 14054723 564130037 351347605 466560626 660590606 942193973 688876956 802461735 265620455 456077478 39060366 490952997 523598918 832125579 447455861 931948744 418725852 969808138 928669792 987445378 793674893 804644404 613343925 844958593 90335837 912548439 524129418 696140643 401995324 668273442 556724199 587864654 916939613 961829827 626137464 773664799 319427699 848953616 4103314 285547695 888668034 999116256 579592455 954234514 258357947 785096968 65130877 869346467 73538190 678343435 645990066 658267677 82052208 866835076 512014625 786446629 322852000 703914730 360562495 532821040 743861847 880260051 250755562 779604018 846041357 968896290 638203195 762500330 832970951 928803430 444068374 878747969 714983446 841372122 238845094 983523850 469368960 505151746 941624455 994665312 794271586 945188944 122614601 910591114 944980980 947521297 480506446 882060402 638429519 925083176 526334171 631818524 158599489 930589440 663723847 887222408 783782356 999255323 705046713 879100488 281874144 301506741 306547630 669000687 748863340 783660641 900411549 971643148 799567015 925541422 152592445 801851382 814204983 899165007 170962492 401940955 408620652 640587479 48848318 792260143 603538180 630968022 78132425 862723318 582226508 924671559 567146638 988946776 162788988 325529089 21800090 397112102 888382171 969419821 689463553 718661300 703493759 944398372 870191799 879281290 260991563 544529928 347992492 496085668 41523543 864944318 682120573 769712362 200051217 862642974 859030854 992688306 543571897 845933472 995354528 999560799 866786186 953197850 124864301 226667702 320871819 708142931 421253309 578337388 336044307 844961200 752040707 961446227 695706119 707916102 833904803 954195239 84311365 209546601 878490363 942246546 388538428 792956436 901743530 958137062 595008263 997310563 624517718 921027414 123290921 640054517 340311938 413182883 96884028 640478884 782357166 996827071 261548757 445301733 264016653 590040870 192773647 808557468 54576013 939420764 846471855 907640052 633730481 996424148 683126313 694222631 330010962 909779775 151396341 188043238 95398637 880012151 931438661 944103668 567182262 829295644 183384761 403296087 990905450 996604483 97308675 890862673 211561078 849603752 906699710 967560940 797861067 897490317 641759395 717595733 725814253 849347566 457301573 801135389 634145438 958489082 870075131 997218717 921182607 983157468 205817141 295742497 119355070 322609870 637932382 946529402 218133157 462669813 873191183 882193970 466392363 495983447 732778462 898285974 472013169 892013184 68980771 184658979 158978835 899522401 19039586 792761849 125759724 578971298 971171766 991165588 853812892 884437056 567567994 708669110 615413806 855946493 383782650 924552392 730799337 909244987 387165003 534745247 717437730 919693591 854485076 957169918 853780202 888988414 845508098 851137650 677573030 830245626 892515104 981736882 73949240 920029836 92641573 480086941 615039400 758070550 10393458 777209801 515788632 862191827 984920518 998446781 822065101 926945418 226035487 758941960 361375849 714864066 491947268 829442192 625445618 667729029 459389786 688146762 522640965 949991153 410478956 591584460 422775153 903591551 34114062 956240964 689483229 772381451 15056475 859840783 902961599 986632593 991297055 995230424 165209306 461011028 519758306 726068903 522559344 586058169 774705859 944701421 690140225 714708811 864044881 987510008 467253432 623513015 680880918 912228655 867854892 892079807 804452222 902723715 113588232 598365901 328076823 925492143 90550924 145180536 593696150 633074288 228241478 619900614 771790364 924127306 44057577 237747893 361468010 432144866 228177137 520868005 134110660 799802211 940716065 990408936 427239600 941793419 984002988 993271830 124662983 664006974 673085729 967474600 866608959 975526725 888853431 924559666 540018885 891937000 837491048 923810937 484121892 984945922 888114607 993149478 27045564 45353442 309689744 595931755 486515694 996887164 126728278 262808797 716416834 993869147 558346219 684439374 110505209 781220048 931527590 981099153 342028639 414711630 831211651 941250478 439676497 568254919 547466768 573683031 859220742 999227234 874141182 968061043 198971669 653150717 521512509 919980725 776344144 904778543 947740078 966360459 981619265 986017920 906888634 937692447 868125718 896744260 146115936 326679447 65341437 778480181 251786272 659038111 985946436 996986998 357766493 767973236 319498678 445673967 134507952 837275876 102122142 620050143 100435775 844842375 76399973 755784071 746556667 756694767 862595462 871338556 338833072 556075838 542052604 577414427 352310127 671996960 674091183 803770049 654194956 785162933 131481603 736119138 286145351 850348680 115645423 367596630 947954975 985628164 793726546 826154363 155651983 581991421 671114917 809462475 980899071 986987241 474202056 599682536 961311920 985778166 329762608 513013722 853144789 954661087 125887268 771842219 384521059 637623881 685237947 988246616 711568558 796797839 192652648 358845105 877262419 987231669 539478507 776399745 447143716 901078034 213792997 463429366 802702556 892775715 498857405 582971713 218792848 501412946 950468237 990808570 710481304 848548828 51843539 74383309 764518049 904405567 106332183 148738811 787490364 973207000 373328577 813244623 93754714 101155947 582110651 936013103 285208191 350050335 796088140 894050456 72067352 929527677 882891517 899524538 318024750 370131416 542962120 734406991 194633913 676817299 28220453 391843543 539871938 992698064 530710041 703810918 42858769 408180563 438936178 883136623 30397137 621981550 204622655 514907245 901133770 950458632 448811275 985557666 6041429 206747880 972986819 975610395 23033315 556514198 389079529 689348529 27974412 115813988 507049892 621689020 192346635 452029287 45618963 425428891 958877503 977395336 676878926 824218128 551239976 794110829 817022354 871712483 557408457 820817345 752578560 864473836 898606055 913835834 519142947 546784479 783721598 861593174 2850651 79012394 351389991 922205007 629575428 698514910 600608648 814225682 76056351 932869981 778121291 934356445 502781196 664930486 965484217 984169180 795808237 895972636 547611180 708058702 946565164 995110920 548724373 998121713 260286972 849639719 75351145 309451929 280246018 914490505 583064688 935713547 263467858 379228652 337401236 385383004 49954449 228840080 376213938 734384081 131649719 680282584 474734047 475272197 885740988 965621323 195421959 530302495 958942947 970061518 5262065 107578993 304903231 380875847 511950918 689082675 493002388 930350860 710342060 838386884 107441244 153766456 876531685 927213310 544617028 546018472 200484681 692800300 808761891 937666958 303806741 342636423 278053072 763791643 517747359 675590849 779426563 924944831 111717814 257253152 503354927 756665455 727346650 763688006 75074944 832918674 542195145 613198547 286595513 502373002 995713445 998846101 458077096 634500653 230877924 471745246 472257142 843019454 762937953 984911123 9804611 196613928 310072601 437294043 832264760 882653248 757274911 973286617 935286089 954593915 693315544 942765608 878378614 894907804 156368976 625125999 875445193 948809078 281049656 612090635 432615689 923551935 825671581 908564639 708672600 944250019 953423727 965383293 604644880 744145550 676022387 945495979 390877432 588503788 576829807 648981239 951733109 985055379 753977119 767463723 173607437 442323167 858594421 879643128 246727369 340973031 478703573 495307478 324572166 356033372 985530648 986471786 613821453 784446773 780277762 881999296 900596878 980422279 447230377 524819602 241154021 389878253 699545148 737975177 339687118 933088178 984014986 990547141 876131462 907786884 969321624 996631488 913926894 930783128 985842107 986157986 462938963 947469423 205154947 912491419 261922120 875411739 180644907 484163486 617461089 798428541 262192638 778210157 813591554 829450109 683931077 831609471 675811914 831609857 940461601 958100973 351464376 834391086 883137754 952863754 150941868 683055413 628696586 999568374 650709219 869941134 407493894 720091864 328107049 444103573 139071911 775590334 112612533 959303338 78184918 292484415 340031467 581540399 229706007 399249231 439338695 768172481 229609 953664677 353376213 369650829 15155177 438288907 513472641 849243527 528499648 892980400 331324835 846776533 100250935 825390316 264384453 748309826 574195321 814807695 87067492 680458810 288233509 466328319 556232983 839339028 401962199 918252164 298152442 320173403 465728779 963243903 629942604 662533508 641102016 819652696 264205156 304518866 917268887 918236978 749255367 827096247 758435453 817894167 831028504 987616583 284309787 430148987 56445191 958675444 240694099 841963310 885559418 934338978 571642807 658406438 216665478 669408597 388051969 978001891 60183283 674565981 66869865 481417452 333942961 582086336 591407191 967175288 314927212 923492347 626169708 908097120 553259979 590385637 321568950 597599884 787731290 966437754 710706712 722065152 692913459 701341518 461928032 705843227 60890165 512088737 449047323 774865672 675352339 849277778 932395388 934498474 214815275 984480439 201842912 546062132 450465198 660513024 840463594 995607215 875880462 993654414 317790627 500602539 96825665 855384676 595690752 903621554 158002303 206273869 174905464 430527684 111250236 987626539 238700473 749680528 550504243 610046870 776113939 802074779 343884909 714307233 389040429 879866645 27111413 306163681 734334536 980777724 427023067 579391057 573415884 937243433 525121808 903835823 25587572 74077452 139585363 447629042 190640807 441683443 444097567 890752679 266431026 560275117 563051796 747378633 75483538 508908616 426729802 958628938 911542891 993530764 921262866 938701447 80140801 547118385 207716991 217275923 110726605 816080867 135055595 308412019 63460761 473752308 175626600 265796825 463326128 621376007 346817828 490964026 106674597 750482880 622107034 811636952 146982026 770600783 312136543 747417580 284708672 713227637 749226903 833767393 561983347 985322334 57117627 185518386 895855075 906081994 306614711 713036327 361733056 758226349 758856973 796607388 78680557 307580649 732043309 884414250 911600317 953465488 738854984 843831570 978540166 983451701 351935317 799305837 454785859 941685856 212792800 720385888 458376833 891292485 674525497 758461697 674264420 929122099 544183684 804385393 563283714 680030940 109203742 285873537 709405995 842197994 930679032 997206525 410208883 769975190 559993557 918444828 923196707 927613316 722521844 951542025 495540830 791864368 315590534 907274264 283575123 553435522 631005355 680564851 311443260 675498398 309081470 471634460 731072881 760934229 311768745 449625573 684373244 896495012 197970418 845351302 445307187 803472718 3490126 617611031 702149830 939018814 354268401 552859321 607351091 871829043 428536216 923882059 674908232 942249290 958679283 998311427 58012289 415518115 584838519 602732103 889294662 959409707 176699305 207052933 445334281 847487089 430154150 679675861 723042588 864587834 364601488 800538492 906953959 909236080 680817497 767868778 806402274 978748065 675542882 920003667 570174262 998057659 814366066 912778420 91396415 203817527 382829722 611154690 661759724 924515680 718422685 844143691 189524063 634956587 482887993 611859176 322280958 377869652 132892075 714618821 489294094 526798758 25632402 844504045 598433375 697104058 447092387 707447073 377042807 537194803 984257199 994681622 112895226 796010728 303940421 338572286 218981597 881391375 7366034 344686341 110552312 751468328 633117860 793824381 624863974 671536488 88200285 351705803 158306280 319667630 509331260 842899774 149765447 822340914 51356299 664486182 898685647 925181123 746653421 833826925 806842024 823782841 603016360 744419535 726845815 924939865 852193698 923528035 342431156 560154589 980331629 983329546 353506343 697394357 223836412 693994602 372029886 625048317 248396652 290861207 880294964 890741758 332618691 922004714 23977885 76604915 302564192 973443480 249456506 592920753 426019414 834123566 194604459 432669589 85446352 330918744 216276099 342806803 252313389 388694603 607363380 692614653 4143055 752559352 217011088 262483691 393659616 607880692 33572419 903787087 912614056 942361609 310074804 437827473 715831873 818713781 613442731 645650471 855079801 866689354 596697407 688658704 406735150 956243070 365805991 717692726 123376248 833511227 660286824 729096595 858404311 902628667 635140802 807147104 538543203 597503523 841215953 989715562 997806766 999354395 882865068 893076097 461850272 762541848 310724953 604908852 14568953 309718423 809937030 867404447 444440767 662209123 485304165 987887396 644256533 851985690 183015325 464176589 181217402 376181060 40300202 763208112 183377369 257274271 538300387 777897179 957495716 960235129 9236633 478303770 701826741 885121150 954767893 980809862 522296187 668131510 665381776 708408610 841753801 899831129 271675058 803039889 506506177 663392100 986352111 989552269 296692628 588022512 293928593 854223137 48896120 51919042 549809313 962559350 451600336 509175674 245398847 251986840 552282880 807834912 499229031 897216989 469962351 778947135 218439510 340745406 833614814 983562032 128861931 358245909 677444662 876740788 722828074 766277796 313959541 434463329 310484281 391671633 805999819 997220332 476909405 722434598 420110214 930641092 170718895 415367868 637536815 923843862 791555154 922924233 147936821 349509658 344824773 383410776 549366253 756173729 459213386 844699689 212575465 323773111 29979543 42551839 453913070 550133591 278484779 404335082 736087171 822955729 963591673 986423596 265686420 292980075 103056573 306261117 710609898 921879261 324578722 601969537 762245165 942607697 883889449 966088209 182743601 284751154 789903910 831651132 91075494 227629505 806754168 853601678 516442365 915402023 446364133 729960205 126208765 530606249 314215737 911862512 168474151 966140336 877498564 991902502 760513555 863266757 911346994 946632085 38728234 498380575 261937309 309965060 171364515 589805724 142332966 360021691 226660256 891205321 493809936 876323906 371424014 535625658 331104447 448872454 132785309 446294754 674120345 700343673 719644494 744245399 870121983 919919909 129728522 777061493 885443225 907641811 992155139 993855511 974509153 991233871 97624435 506465599 566699263 885275249 979124118 983594804 830087454 985276256 280596974 804691314 827232783 988345984 375304661 973372513 493686820 574602015 479103932 998425187 146528456 480173145 462289386 937295862 481377153 702133628 154361864 274529412 154185239 923037758 834814032 933880367 901617729 956419683 857018964 991647102 909578825 910147466 346813893 828583789 382825187 925365014 393244969 788973747 983772442 994212735 717452277 771790887 41581757 869670086 332466154 388354554 286210545 983203020 469979587 902756753 326805518 373535417 275935602 822930543 667760343 814753931 201809934 212859254 590476401 664965380 197293327 999402030 171173506 348119934 58518602 566177234 822502183 856425994 592048827 949179370 411031827 618812658 217279867 691084700 32760492 505518510 952759536 992225764 153339280 204595763 565529632 865554505 683343923 844899541 122341814 848837500 149812129 973267735 718953610 796262514 430546224 628450872 886520191 894263431 965401629 971267864 622144241 686179489 785812540 976812192 777950441 833457857 596003401 905121785 227115466 783950610 639374839 665645874 869540267 893947037 707077113 811191478 462028652 553332698 336702509 785399286 3459801 806698639 653746110 833502303 18954441 200535343 987407459 996716175 958938572 999302006 689969179 933099036 816189436 894261138 360617727 474397479 693892 475934693 938879113 972610997 156363255 834593098 945593377 987238212 953644114 984479355 9373873 868015646 575352990 687918885 570059327 763290639 569643694 755039921 314963392 450333711 97973853 163721254 669169892 880457741 488727099 709578775 484893834 775118696 635854299 722158105 25029238 615221811 593228495 818031734 736891357 927752662 901959695 949759363 269190773 360577773 138045453 830023449 306682442 379772600 142845273 857256949 360634236 836944778 623005753 872473085 646330967 731240160 453711199 532094603 749251792 881348819 629971513 907304221 52384849 819957856 707596312 966296265 870504270 896339722 755411343 807356799 875998527 910049655 661254541 687334848 84555441 94104413 978831299 981812220 687625395 931884933 902724201 927134368 708333110 738292488 845785335 992822027 561518174 964319017 815722773 943411766 803496343 923205739 792805986 837183447 122436244 995868149 196077439 898450397 187038374 628710422 865258824 976431636 972488345 989666226 329703032 900839630 793907035 933356961 574104000 689109039 517902271 858234316 615400175 892880400 319260908 975928962 994526211 996010502 973950844 987293204 358043504 899677714 738049429 891561771 293532334 640939633 695415335 832343408 998802855 999088864 138334713 351761439 73660058 164789597 514962031 557274312 885376703 984689548 553000525 659761461 792206561 856947629 517618895 519352855 873984942 961790384 755968981 838814241 387820080 516737706 468500294 588068070 309338472 906627329 324386659 916072617 908765177 955474673 375630222 489020918 468096812 619142457 155007318 618436551 815246259 928925098 476216200 839288974 555492025 642616286 879671044 965130273 904664470 911870610 258153187 993942136 597672207 723897246 800228466 906746735 20492786 641519026 275401211 796111121 721708897 744318926 313019329 403062320 601436922 812309490 702002810 739137717 742056441 998220547 400500150 977801606 669757053 696884376 58890453 885408182 184314635 822284400 362932909 535872604 267875545 514282791 749651724 831053761 911032893 925548479 832592400 859368950 31941179 184499619 973793522 987453714 737389676 931020507 44085339 884623170 583661056 621726548 44665196 913918448 47194233 520811991 486521119 596337318 805361164 967395696 919072803 975515692 970448563 995724336 863493641 866220481 409837071 576421929 575878818 671993494 519727741 858071350 93124571 735606543 703882765 976370112 949727573 953472995 652367191 673919412 712239313 986266861 275018836 429791205 233012287 922934987 308669141 739664185 563118387 928585040 442596059 447144493 722513780 825715080 51330223 269311801 379019483 403090744 128538094 283912687 642499223 679013340 149246667 851161864 102068692 821409847 345747248 759985576 675540024 918276911 229229104 370295597 548364122 628298850 303466864 776229419 934942734 973017349 889964896 896898025 792490850 914992670 153361654 542259402 43225342 746205253 396935315 724231148 828373526 941711688 604125320 930150184 235907753 656744680 276455496 352443051 419463074 803050875 518618397 773864190 195496119 516474846 532839573 620166010 778262421 946213303 650627638 903453545 438121690 628070508 751407576 831224854 422364365 723331654 344681135 500688004 488115682 991185158 483439039 860065791 325853450 466483439 521681263 579548809 778196023 893528800 401127011 591416770 289512788 387488677 604537797 641993997 222356378 309514968 736391025 890054872 11239384 784041589 493938909 646029395 101677290 439548004 562167033 571379969 183338001 447590116 846552776 926621199 149759843 520257971 327333468 525533258 794745117 953169183 75683059 653503073 460122528 642977876 663710625 692046492 665182076 697380525 221055660 549774911 160308742 252383431 22245817 995005635 172482202 707410432 212624230 258923855 604423532 690707526 645195925 686815563 855731028 992997613 214975784 281891170 439929502 497638333 748745922 844002279 479331711 805330230 874628318 977477388 374815157 974972332 967584878 982243630 477231346 959205051 297767425 782550073 330407200 691984729 570976621 821092913 659075396 997822165 336654255 706944508 313492345 896962676 747484462 967740726 555425921 933778114 920782433 986263216 996465493 999569677 831011557 831912954 66823052 684827210 458428184 717825245 711747844 734429299 67295308 268308514 206192365 389494950 25945777 581373157 708317498 951745992 513899487 754971145 339217442 635311847 218471983 835659655 407818484 923342639 791470934 797162714 266806567 806733441 793514159 921330441 165842062 430052636 613014673 745062238 363287097 619623782 626486368 918787037 18020074 208276591 489084985 874228401 512839052 904515697 855349703 869446557 995931502 999534575 352212383 991159318 6913450 579727113 392558469 896366540 957184766 961560917 487183858 569316737 930694477 997522291 258530507 870160734 781275134 894424206 830845533 995952456 492188409 547808176 791373830 920747048 744935784 989638664 722026173 819079070 736542435 926049065 309889944 988550868 102049962 837249704 140248053 203173269 978845379 982450419 178823167 741109020 696825888 927671434 695747305 922183013 715471393 925357036 633612637 893991534 34581091 662080781 972418058 981625119 190667616 404164158 656533695 902115130 305333901 434403480 198676534 810369016 37951576 949017918 718555073 930633276 420244186 936546228 967956621 970164306 628692515 739471842 128353769 842856516 265771132 700664796 766709326 818114263 608262757 870415023 279462617 716327801 337367274 356269495 230425349 480028348 289470023 341252927 209159467 982288911 795925441 957953219 630684057 702417022 356071937 641495247 487032435 498673773 995829759 998807384 213776800 385013726 786056801 987936992 757582357 835078386 886200251 907732509 131964821 589710602 174458923 348432998 782775134 833200568 644850919 990347627 267552242 721220082 346328289 949795231 730905542 818675576 491361217 892740292 845709527 898411900 957684040 995379857 214129059 883805892 427402067 995292445 438044945 492676291 94292153 629811754 786489363 873826695 557393214 713091532 325817472 860534130 337628128 835867897 844276910 919823072 347779638 724504814 607917619 954095470 633096320 857172295 145920489 285830540 604432442 981553411 318943853 331479228 204906780 294324365 751508799 921241513 897087613 940207280 474120484 639824372 184232107 877271808 983245576 996598225 17303212 23201680 639432225 824323953 878704460 926708677 899395208 923939920 230278059 304468536 178509147 926683096 898246411 969773116 325596411 658463691 915864934 942439877 606049871 849064145 920341179 944689009 993230252 994318748 204006895 247871216 217926733 563876416 239638512 695785723 381005687 789440753 145351026 513280754 234544923 846240343 440947809 515522560 334572825 759987620 960133386 985558011 968904622 975442996 202782008 905998734 684086887 728177973 357020858 364159516 948464849 990984703 288090206 470128391 225567676 762827836 683935773 956305547 342675342 430305645 600878118 714876998 514476650 796630275 994226473 996773936 653483303 741401293 621826959 966446775 167775951 929901458 149141012 834793749 646951191 889693270 100258889 672151597 873257705 966391650 818229055 860827659 707745553 841537038 540905915 668242369 104469383 325077369 808060766 900653079 574738998 768474965 571226370 719665444 154235546 413663694 215417686 895693906 331214948 595035305 947995680 998987623 915930806 917913971 50716609 488636867 887189070 948428154 363588199 864077169 186246911 304850392 469288735 478637685 355234789 639532271 371910685 542088787 9393151 828181732 262924104 765877713 672607422 833813531 499966428 590620570 852369850 962263001 751584592 953677525 929456465 969255936 214227801 544838459 922265912 926445398 573202235 904471281 110629411 402397211 813368555 917883776 24341463 955012397 261318572 606145205 172587120 675927764 287981304 891973089 469988649 912449636 329307744 531752342 57583163 687122791 148956361 724782232 626287260 927235740 920523586 924689831 522068491 733741414 330894405 357562268 974421286 990587911 237299330 457930463 945006093 970583048 77963475 549097734 734399594 869495290 414136909 534585631 733523773 782063583 817182764 850092860 476951122 962407506 217455015 776643671 283201767 356228287 773199113 874640975 553740230 593058503 187753697 821586278 135910089 292562400 28464530 516018088 357187926 835487351 622589733 864403068 352905488 373247394 745492065 926523710 540416102 610217735 264973078 373326381 515046298 620962164 357931178 951154389 68625144 994017104 773587498 847331787 123718388 208876049 342299380 867822934 727295393 999114260 224494183 288665313 842504207 850625490 796512929 978476462 401063281 498894326 934248876 952063906 804666842 938034569 208983010 375449834 909308225 991390891 913150914 984919302 588271857 676520686 687954603 938965881 552192983 638234867 773172079 775345518 334380316 641658811 133949791 694501758 26608456 647276917 981713865 982120756 18027714 425434964 184474393 812356029 622999352 952093268 201959186 454274677 922726414 950532239 287463288 626588402 238101791 633997135 776408162 959786401 140122568 938796573 793453476 897472002 280084980 894836202 382267170 673827492 74444263 866098207 890239795 979289063 333980426 573824215 877265431 968911522 940742908 981406683 690275805 908660477 788829326 943154781 574079645 707873344 684426627 850462679 700008960 747993882 665214683 778593699 571585357 772240631 405265749 720343939 243839205 803437724 80427022 109473141 20928038 498995031 42929252 295259074 566201532 569269223 687351291 978356182 356182003 700198569 278965564 664234747 649577213 828715348 727995393 950827332 184933947 540390722 687954523 919487748 511579926 830677845 868802944 897024055 699240393 774820492 583603570 687384432 727784684 990455800 376520318 594940920 905233155 919333383 823374980 949227910 240943926 893530058 845207853 903729303 578369279 945984640 467878679 750233161 561682730 735875370 183823918 857069287 435138198 727740000 626810769 704005883 937355434 949157344 571320730 606099984 445602262 470420411 524826617 991899248 881071718 913537943 932326889 949964096 627338781 768257645 860680825 975661813 78234484 565192735 789881502 851303316 831242963 845588468 568921824 810890706 455201675 819286978 570560432 707473751 760864708 909622592 304036159 626936368 499284271 742695291 406938980 741379164 931416365 995259220 340786006 620887288 806186229 841131794 907585671 991502780 626780349 634421714 328282269 849698635 584528249 798974269 705550594 746735241 709155769 889237233 77174604 344189178 378872755 663795397 209528412 761203811 464507313 859517983 406590369 854868474 817774699 830088253 379579700 996981286 623404520 674495204 58313484 994314419 131856649 940618640 775187342 978251144 559947201 958556108 936416303 994707257 768782829 830376697 252127984 412071325 416504084 761324538 518608962 798350332 579055605 782400393 951420408 964193212 252923359 768746528 139895949 764202197 421755149 422956684 774881469 824683180 179252408 875426268 669664989 735012818 181098508 607194452 575144335 684742646 38014109 639433155 252201502 678980444 123197178 503605984 215684069 861297633 462660084 836565876 994944999 995015872 469705166 527388947 434304279 568125685 752935735 966622775 730064745 824582472 760738987 792736406 571550662 587914868 583576667 980580394 51439355 549858108 273462487 386386433 297310629 748221692 336157779 803469089 145611736 550794763 600997862 979965496 49553796 854603053 731564080 776680664 470788887 654607085 256491726 602409855 667901727 900171721 743381366 883701354 104921758 358162153 17641737 842640098 552676161 595852350 836066281 907027664 378398021 810569515 38261760 212470572 698969890 967601164 534758505 602870336 86496453 333901641 885113133 932067262 561729610 944812057 884517698 908265048 807141905 945516485 196666891 899438340 894426151 986418489 365760495 938570020 83576238 715060215 760607328 785334139 133137337 276374994 879736809 888176092 965317781 994675982 906843815 916340643 784159342 815857007 485052012 876079526 531927394 732448566 824195227 992672427 511539191 618253126 902949593 931379804 167447631 264436318 605279453 825184730 480802374 492267226 193285950 447633746 513894574 710920966 295278448 947958385 458219240 502590050 647348495 750632819 733436033 735224180 550375255 860307377 948154977 965326724 294562821 930994846 704085203 902131211 671521298 979692319 954388534 998689133 47666733 905647801 95462837 712975837 277651655 984409722 717897703 825595407 616750332 764861432 778463841 816065954 498238567 784581532 130042437 420475824 929510627 938731890 887542815 905897392 516446849 681571747 793103141 823781238 111845614 666592537 545674463 909802877 797520612 890419767 652100186 758439291 879262717 930343153 117218751 756747367 159301017 482120257 61500945 670841650 830494914 946597676 241027903 464816974 173390120 516370033 764117961 856151733 553745808 920387914 515776131 936364761 714102048 773007956 591977191 941534429 276506464 632723635 630072570 972778966 284623564 541750959 633882259 989902544 419800982 912712156 270609874 574635119 174730234 241783352 833358829 992286504 410228951 905909735 130817340 441749039 319121235 840929813 760494003 907752106 122271319 258428075 720695365 754443477 758616652 982068887 799864541 896436691 512488643 956874457 638140811 853069570 906605023 919244200 262887350 555190405 325872812 340129739 602628415 695004470 487704749 922007003 550479824 848412465 826992848 982517468 60948587 769901954 848421136 989314938 329423414 422533766 119045272 382315544 944077381 949843516 876374450 938328245 601726689 831567009 568714802 790405255 651300432 843834022 272264319 826824859 583068854 991885464 221839220 289070315 221345761 981913705 464262620 799739203 90617571 108285354 198473088 206603646 609091043 637137684 449830599 598148302 650868338 675653754 569859567 919450972 703382062 781370689 999406569 999820558 506432641 615375687 258180975 281275605 899247235 906557123 118991790 192238943 558508413 984318681 998272888 999928899 984644610 996900657 128647401 733610828 140689244 687924582 783477770 984774968 418472767 542627091 21935336 186429768 384385575 577078853 213644383 667902419 404593337 752438509 668551430 856350678 91845385 546102602 143402482 454367511 210459747 542545228 933531751 968888266 282580872 695781542 284294951 730329368 94232304 576026377 374141511 773936641 215659838 727241294 954910679 961273223 18911292 565534881 681281507 959174944 902027828 923699035 54444612 486664795 135261874 235212650 169723359 918763424 541472844 761102449 386395076 388251335 39052038 90806151 19988415 319302538 131689857 228540987 898462892 966602939 864976982 879781588 55542893 407716609 987991478 996818475 183138804 737009637 66913173 938437367 779518002 922162059 918218482 993659968 624969549 959633906 324348783 632695046 854932995 888081430 893425139 918613383 415965867 868221202 216950252 699032837 47321489 741470937 8055297 313105376 58370770 547390838 205795126 668846635 232848417 852744914 531097657 888449412 546275573 618061975 952832974 959171666 412667383 885100207 976084513 981768092 999114144 999898345 303230703 485689705 434822133 539114850 362305193 502308613 221931644 494853281 496581910 739746663 948996973 974982467 851649391 929385538 273818693 386664805 597519609 638226324 78027284 994137522 27331563 141349089 997576670 998340097 248757508 862140762 802859027 928112042 702719350 945305905 80403221 802741916 749670207 757782793 475303805 664141131 989719659 998225325 906320649 959789936 991512789 994412924 938176316 976922877 859498158 977799079 382187435 759006816 674631741 965388793 963735608 996072884 985642970 991942975 460322178 938383788 998851135 999367626 289160244 338353959 719613576 755315842 285525888 567371220 408249701 954250691 52355539 386004722 147417425 153260343 990639493 994514076 751200858 901211567 908794821 954761661 577196824 718664758 248471101 260829871 182729692 890498942 490885723 701591109 924109643 976159657 122653677 229103808 336539169 414619331 408112574 954170715 952330583 977286382 35649233 863478366 538640157 649489712 626852147 779786899 524822996 790389125 376763998 535347940 119600860 250204374 579499353 645713805 408876388 822569346 866339220 942612311 764573538 865145368 680597391 929311008 537247190 994284161 538874660 954244051 806562559 909522903 355505991 407895358 155079844 598367524 326094485 369465042 790470994 896155963 604579602 658652569 384242022 484766508 668112615 863562217 599551170 815302810 954289898 958188927 18343038 483282204 130944142 306540174 741729476 936438383 465337061 743238810 439442130 787937138 358689646 780339245 47709178 792289337 406486357 700080515 905975817 922841224 141630178 800063049 490852627 507847814 137449181 419012689 797133489 847713502 880345228 992210784 535679836 621092210 492074058 872021193 201387250 428506491 168478208 203672504 724758451 785929455 366894360 876056776 273805067 963961320 230365278 550263814 525834370 637525803 683203228 764038234 844468998 892036389 603744902 902295593 968993377 992157683 359142002 363463408 342240952 589041898 880138133 887819436 361868556 684747424 391151834 904532551 894642111 960242905 642834534 646177024 482897170 765681828 81873999 561577048 308251408 825109663 787605045 881128043 519242290 835371633 442048846 475350543 105817871 920101612 618764482 683109751 279813674 925673055 584828965 915139333 476261635 986968763 116254586 173308565 594781696 799788839 156298205 303844923 142375178 275114382 312853481 773437047 316341715 435499875 592167927 736204055 125566167 379771545 861817849 862032846 880794963 944167655 840349316 959251469 264126199 401783038 737263545 845280347 25674837 865276947 425335431 628535074 62315333 813607848 790540313 880986635 24442263 917361870 732398892 787869074 892845096 918266295 900873702 907897385 311449903 648121881 410467161 708437180 410110455 598850425 829762014 882483700 439117936 853494313 997422311 998769430 379369355 927990074 38148920 614456023 29524464 789689158 567515316 641834231 968780394 972346239 91079086 903875942 302752651 832434546 140599412 250368502 946015826 999708587 353881937 391305402 321347415 740757549 712072222 714887119 68429707 102901457 272287043 913846613 901800403 931356340 927055042 973876598 501814126 825990756 459942834 857161972 288294208 912354136 468299380 531571737 657424774 677022671 134472055 481027362 463413633 917406946 72009338 706370311 349169254 558898845 288141063 545404445 520164063 602361842 600488229 662101661 599766817 900247816 893294302 900790155 913734326 926873775 33220965 679695043 311906871 690597918 266961692 594119386 985199941 990571608 457694898 835177267 982829391 987828129 356365290 771932590 879525257 930623419 302407940 745703752 567372057 929351775 865878385 868598016 766544444 804158005 546408523 592165414 152875901 526195767 793099599 998063957 938541533 974599429 927388723 931280062 778329171 934602986 906442676 931825322 203243369 796351513 532777075 578109224 209383254 446732725 971732766 986014376 808742091 935111397 159747919 864129982 327972333 996837223 935107547 937707892 914832427 989181044 275650032 349780175 993177842 999428940 502463822 562076409 349753759 482145594 67542453 660370749 654628070 909926479 765536129 906322109 128047225 685689902 317370087 777231670 148883554 899667716 608707479 994648902 845103096 884540903 408856752 589329708 72250869 832593273 85738048 815969798 424633574 652312224 373198016 947999593 510612825 608970305 195084035 794088980 591498679 731999245 868856527 971667586 488133652 764268875 422972408 632398637 947242930 981183965 925515381 997399499 627832699 674515490 821223435 880898024 934505678 950161061 40964294 663337735 978643073 989602501 324399098 571457206 262912050 930414735 437317752 685245588 890123412 931584728 874095553 991641736 489300610 555882789 765859573 899895180 867561051 890749235 437079401 463756898 118178351 316591960 584153306 743164696 161704513 935473384 705130954 951808805 278937288 302736562 828821838 859169344 984601447 997656702 102577202 828419533 987921547 997093389 481922893 721053530 777270239 934288333 962127080 973732876 626369713 944118775 155856815 532221989 667686011 801008037 45955391 183618917 175875777 362626632 271788261 412855953 938532652 945296307 21745963 636315826 396651157 701862510 288397967 511585381 925522127 959601070 845160413 993857627 818342803 928829636 429235733 477683213 950081459 955332739 796812797 914549649 960866549 997144472 4760060 295293321 844050121 879671325 704502539 839561992 514299216 900130810 271863077 896201454 507005860 636628779 19440813 109839583 114365307 612022515 872192135 884905008 568597431 757763078 661335424 789221774 277827254 778464939 697726421 809942375 133748895 893496019 129878145 990203105 337393569 774491116 253827896 893770471 910094144 911212328 547147641 771718862 685205224 962737324 766386416 953003944 451509212 833851693 301577136 708350547 681152989 977376645 296751450 620335771 80094700 390201837 897189292 923421762 644632144 651782506 776966215 919939395 870233086 957750785 26140373 52943344 968087470 988730372 909513777 940194318 396747933 870304562 673658379 797209310 703321531 832579296 143307067 435360122 36035164 456095063 1944414 104257992 168102004 238483347 257541296 641640605 720148644 820160041 513085193 588431416 577618545 631531669 259447704 788775946 959715188 981720294 736642811 909446472 205899859 829623133 990644229 997790481 374816822 796727860 212035230 774627804 197573160 476956444 389642712 688079504 762300244 785655781 13083835 829750230 61723179 876404603 740261883 806515055 267621094 811338199 759486887 871121789 887601378 964043737 172833201 985847537 345268831 376223609 248101121 524168179 469227050 529199828 516701638 689499445 859049169 979054124 54765024 365034068 50850083 812619885 414367952 518877656 582281100 608795695 167390612 576125956 99247357 687232548 825228312 894706554 791135229 895597245 57783332 604564620 904795535 935652342 680460564 950579094 3918691 363432750 539994167 625186559 902239264 940922063 553097160 786194903 625073123 802466902 924987736 946687334 530547737 884343186 887898754 922888666 90255364 943890248 526781054 713841968 278892184 554221862 24426060 845599964 164199471 644745246 923534798 926878745 170687115 794038313 821030637 840778603 98455131 922762612 276258054 422968325 977270254 977353747 939135499 952762129 779207823 795786838 879065405 947819424 771142 593190929 820831542 886681115 603891114 922188793 811998864 992096806 64187699 146036739 217755904 451717968 591073198 662300355 729705593 825058907 407616337 590680159 518162054 544401529 197297011 622975252 927530474 974302257 59594600 492456985 850272372 963695878 530002417 555677761 256595221 448718289 337544021 603797472 244097310 951512290 270144595 989474933 557171555 776291755 920352510 995617510 490524948 500311295 306274778 866535991 347938052 476989407 113506331 268526130 628127875 658299018 194051890 756974933 262627394 984026638 959593858 982173892 743644676 918839382 380578851 893336780 857576544 874519617 778329367 916083505 918723680 959492573 792534793 940496880 848204242 949198435 815973475 825356660 946830166 986387267 165723265 176000793 564539161 848615056 751438258 882870040 527901827 534522100 774236282 838129516 415914577 578695591 42350982 894364863 864992043 949275186 133882835 393373656 285751099 854906426 751633138 902463735 171730157 979827670 656329934 827475576 538878117 903749889 590093923 842286073 945385443 955139289 251508769 955472269 397506612 835692506 74418800 996403516 642648625 786649973 975210431 975387430 678333275 905621685 466239682 703079652 797538549 813001995 133800947 630844522 733632655 825725517 825891645 836850935 180185873 571729629 265080052 327794601 504252471 591637381 398856654 689236242 613394137 881972359 61527839 473881895 704956464 911305464 781425283 985896123 267783917 938545691 904373571 997646834 572272266 805098139 686120678 980977930 149248639 606327767 994325942 994426824 549434639 782052383 91666746 688405735 176790434 798887496 950015571 983025465 771819322 832828421 351319312 421274477 886074138 893838012 222968806 503936076 312523899 732253626 961709911 992645163 715375641 899240939 477998142 772556436 197877873 803820867 5463393 930866772 618539921 982348665 991193995 996310567 76368089 623549404 334440411 538196328 714383648 874387270 754510686 783039669 457416065 919237225 892682208 956295386 149211831 991993846 775699953 942165759 281921888 672085070 972107881 994916767 173105098 494731008 953154166 963824161 817261450 898009139 98938514 849780663 995434774 999283928 702015180 981669959 846177495 944449832 479883943 629539274 372433345 434954787 71756854 803094729 779375225 935715220 224972165 291647428 359480773 465753893 792590632 842812797 903408937 905999616 565061012 809536904 101469930 842725874 61009984 530517219 18426357 193897820 431556948 914643999 875211110 949172170 374237253 614167334 441554857 739978084 985469212 987220844 436822816 970020712 222738193 396458807 367949873 999918878 570200413 798918535 796575711 980576893 100366217 719490633 454921981 476508598 848960754 966048270 502959623 758756033 650647172 973956676 694011565 868649579 146207376 195380977 991323754 991829140 726654772 861455996 811666454 847824667 510973983 912436616 696377897 796777549 492527354 996313831 584565253 886186449 423867670 567128515 266320321 336428277 370143359 430148622 638950134 877146268 625344796 698723164 647596331 855063884 898235853 972532153 659214276 681527244 257366238 991107255 923387364 993393391 974351177 998416308 941585251 955112230 491148052 800080181 371629875 425921367 818548469 941633957 967226293 982408354 504805640 656528665 733739292 932217042 465631518 566419427 714796519 733114651 658367545 728852409 633001766 695243328 942705627 977914212 471739843 984453261 438982827 594987344 454233001 716229663 561943519 975570408 502523578 967598148 650726124 771949719 410532654 510408375 566040112 579190299 201275211 273753673 579979262 842109166 506047180 867505081 978839739 994608463 365208003 377942115 49687673 827280143 528046355 951051749 465577693 571703693 667515575 935866795 84352028 605283146 705228734 864249745 463337000 942943573 431207955 567580313 891921917 960170237 597660040 853173990 853247997 972514814 223438919 324098070 829245405 905864768 671561110 675636582 290072470 939258421 708653430 956900523 982073001 998628336 411875389 676921913 25729434 808985968 53425714 957487724 855301053 903520517 286316081 456483245 142543478 317532638 851928018 885312618 206366941 963238856 824445027 905284651 63505706 981301366 760295828 987911525 141869405 535303648 745712135 779065608 816242669 966876686 428502645 828651031 621571036 902759117 189040775 813139596 914540898 958138469 841866883 842956766 560666774 702317276 705996208 981549059 742755445 887557906 854298853 857346919 446596276 919479908 487897944 859708097 843505988 927995091 954402331 954543792 937647232 958290785 597808979 793316555 280673334 893066054 705293603 799567066 102741887 212082052 753045291 777650741 921682693 949468463 487717022 688019850 131871871 803654357 337879135 963118758 931903336 967221600 692295877 751416166 897446745 970795140 286651158 459422889 496914311 724910238 197182643 930840587 378599282 545723750 172654138 341390606 17013107 124761005 926789441 984943899 661317604 857787326 676394747 731827208 213925446 437453937 273084666 575112593 579950002 834218483 959846043 962426600 440055027 508244054 964001123 974847038 705878145 857959381 737146413 768758582 480341715 603589144 921069055 936236781 576659972 826034885 689402235 800767430 614983057 939442892 681587035 733094795 617138185 841970619 688392396 784645565 186760956 804713674 612769663 847051209 67130425 718259543 208721007 533929933 977464158 980607144 138165848 801535732 511716006 648671229 96326915 683644713 169252112 490112336 772746315 962746159 929324757 988625359 407852597 557366147 12051722 915435646 893559631 945782376 232549789 693526532 37650720 424147976 651629905 975626868 863418379 883575535 817549354 914236032 61462066 124851199 84426828 981236062 783520385 850929811 465293978 751147847 982596581 992644904 357419257 559498745 530301004 847822934 241486609 742288450 531977872 992791441 444957445 518706464 408591858 987663859 560459333 963225453 3968090 857951316 752270765 921939418 596766245 661908648 704919369 716819299 986868158 995095188 254132032 883697390 308234616 724269351 252004713 371679776 958859230 995386201 817023627 925753024 987045408 994926665 571266502 769554645 587440225 703250550 861830725 971942094 787069828 890857805 14389500 584645144 792881819 967412174 436014948 957856962 465239392 602142985 217928528 353963659 958875629 976671463 527879904 714459345 589599354 755990516 690590309 758206245 121687674 941552542 565897842 796871142 367216850 403918499 976169694 990625916 301566720 812268217 558871300 917996049 871203688 970189942 401428096 655030876 869111303 993631227 489888935 791439779 945910575 956945804 906141971 964852817 668056027 718052139 95979665 626418388 798390653 878700149 857012753 948029793 369309669 435346426 702992953 714951485 649639935 806418611 325175667 524711714 148604939 374883519 890471873 934175785 584815983 951136116 137182142 648375979 736074596 827114305 964835922 997698978 804680567 926372198 750438805 790833292 850951040 937436720 285661248 868089564 840248864 899129382 330724573 746804436 366329377 908430313 972231292 977047346 705869643 986399779 88276110 832426673 395077911 412354618 128770156 373125177 296703740 435830967 164282118 887702037 651459402 929414004 112882232 965560890 943437199 949592757 40749930 417099574 844748855 923917939 980305778 982524750 420264549 681177162 766459160 957544724 847503607 951601776 734879346 919267816 802540926 897476460 656936650 731623104 855984367 973030120 626024088 892212349 979195485 984611490 464562812 866446556 486133008 570696552 411846331 602500227 69089675 796690665 472462565 798802933 421573719 812367425 925110824 970344463 128439195 318587460 40362764 717751568 698054269 990393115 120886142 864238660 33501178 298371239 178518181 759779614 716228926 860080797 62319036 225943068 757319749 964066838 507175599 888157162 258902244 529433899 763624986 767523072 350565542 656111595 358075845 772735532 750715163 922532496 183173030 276012863 87070598 127953899 148592112 763268186 297507578 448270802 17611928 929985532 827116267 925154512 95927231 206276859 860581769 903346422 314469068 685842745 584342219 646612926 406038984 703077420 230428149 332545147 350848243 585241093 570242353 684123389 780239851 995677664 433619898 680183542 355923364 622042502 868226675 891658254 314384601 397948758 209554322 341450958 903487303 975762190 60499250 426574752 688449968 840113231 960428469 982811546 379030759 723167608 37587162 861311316 2332901 345311329 771466365 959096911 294502743 397093161 189626670 576572766 82698032 178964708 52752862 67048607 524358049 761340441 533280123 558745237 887338878 965730639 116567028 434162406 996090790 999604365 421707350 699645572 103981632 467793719 208674713 459331276 171347958 227858433 789740074 992510862 186156819 369492520 775419196 871699256 345198603 423414349 297899946 381787646 503903759 533658377 515158995 694790220 365730512 819802359 790834693 958344790 504836598 980168288 719191106 876618053 597870549 907060492 561152025 736732892 428613872 939746190 133675382 954240451 928026644 950634389 925493484 965002944 447172219 564881749 74773402 253190105 517627314 962494012 890921696 947743975 271121046 544926965 38646033 846419512 4448812 195249716 747246009 926453018 595831018 731676789 383771499 507717325 958775851 994982166 644839862 933552881 583685361 969769443 329686785 671519475 577061962 880924687 853258820 919125266 928105264 987024323 677855608 892690011 403406990 919915688 412253789 936906192 729087655 952177221 269516524 307103251 114898926 984379256 160596092 509835967 780982815 787656982 65740351 838188975 594550109 813395282 667736307 980581326 506101417 941228588 596284178 985464210 963777216 985752198 797374057 899970218 72483582 198925366 304529984 628643102 241500437 516221725 574644571 612450034 690401475 956863368 808131658 908903119 413712043 686190704 32051246 542845428 209193255 341750527 862843724 984948183 104359924 299573822 95270293 171417597 910796566 961530602 641044540 954365536 656411638 922232696 316158970 637691348 792390668 864292044 836306514 969382554 371598984 380501039 88463072 230820903 768245835 852186726 570498269 797534550 773768384 843410247 656181035 988731970 969687763 986580699 775564442 926712212 235285637 859876109 610825019 857325596 906970585 938646563 464769160 927913405 897522566 974177736 970538958 979931227 858881201 902794254 310242035 495159791 359307665 454359294 676305124 991789319 604321666 828275351 911321583 912089697 165780550 360631024 13953147 319524770 86284179 176329609 670680602 864506943 174326475 511668282 489667924 502983226 908834770 909918249 955196429 968458521 384418141 783765456 380230572 787269680 383289852 705063251 448334384 505635321 673080893 816796576 644144966 716319306 813968308 891642682 988955119 992933031 54268792 733953158 820188624 958312975 50929840 539600278 189320260 856601002 191529576 475254583 245723282 854470679 63768313 405843594 564791519 883933721 526035352 641204699 643614064 758600163 73245771 393796271 544698005 624823868 98794224 512659774 172851920 344333580 96902761 493851855 428552213 712155759 7575484 938106534 334636511 844650016 336547194 916369880 791367932 870838286 124117043 602001280 411997902 415383071 144345598 181568697 890372429 978500747 481732957 750445651 108029141 877757642 847100832 995671529 221133041 736707007 697389762 944054604 467901657 677438216 579690477 769272030 474752959 752418820 609548765 756517897 713005473 913108433 624242136 952188803 611997779 780650172 583280069 750180837 97053884 387566971 30310989 293081383 743188492 919081190 97174766 778523688 217380333 373829770 101687365 588248710 17454982 465202713 212352051 341430684 109724618 404461700 398008061 463389512 476130034 604025897 149146322 866291668 865760746 981993262 211922635 632916398 342523654 377121869 524384585 812475977 221215654 468809448 502568332 825164729 978101731 996356188 153535104 917776111 829763535 935617991 910895030 924532170 985281061 991962866 23360022 331225375 356046259 599040855 507368278 930832754 352018729 662340919 563915007 807038818 416770439 445212794 494599978 724703668 153404622 628682938 252139158 864336099 202174842 748237262 404753497 503362406 7126113 715517578 748180265 941408414 950045739 987216166 411230064 963612519 745948901 968768880 687969830 931069182 539834050 765605905 119348945 712882413 331497796 955429858 610909497 691552733 441661072 781435453 927726298 985048428 280040705 773204323 522078273 561204662 181039682 297819854 587638142 751670195 325810787 351780379 592828118 607705809 56150230 330134232 938782077 957204071 41512860 198341029 836442219 908167743 486378538 917166935 555097813 731895696 109164352 748385809 320755884 659799770 850296332 957382931 32186758 586425499 40520673 701592309 512000777 772580792 308571278 827330423 997598537 999190176 918272058 946722915 335458732 630915730 124725695 941541752 482816914 902731333 698166816 997117926 126692897 698906926 400525856 785588378 53681345 657430707 477020101 971111722 744034112 902337742 77641939 354939317 591332102 700074450 237469201 944743741 618822334 994485538 893235332 937269140 594900273 873824882 847887732 876675830 407000136 684139863 326310292 668624766 426266829 460817888 124434358 989340788 909471776 945817700 586680046 891157313 92797468 761626679 201102580 395357751 132114554 416537621 151770283 997735756 263637255 918238951 796770260 944563891 810418373 932491385 224804561 252108185 33415035 361043586 906927827 957852076 196300296 236013448 463088076 464822458 930431608 957412398 355179862 902695840 205620024 437641777 870996167 967206766 201733323 514238152 744320374 963286315 357860749 434205331 760400756 928792616 307026649 327812316 864596785 954255064 374631238 458841524 237114037 912676634 818713776 893217946 799553754 988693052 580622888 764145800 353352173 378166144 610754428 704682916 903043378 905643009 123223343 854926107 888475674 944340642 79328484 359676938 878765596 969518207 273788984 806005426 609491882 627627155 298264714 563650283 296658517 664115969 883530463 923820111 123916093 134772699 889848298 961393137 134209505 406324575 930533111 970558622 117780585 650540879 611601212 634617611 659505621 882567230 834163034 847977123 427059232 831258413 589423294 690315310 922419973 978659006 2928661 838097801 923043354 954933598 814648332 921503899 310697846 469280312 377832289 412791120 2405082 213762586 850844581 886968392 672720074 693755194 672086386 836013676 456120188 749069338 629962587 704212343 479447106 480432047 178013489 717564741 32219303 868338966 996570579 999204223 241207453 509629847 65518976 964528748 475648589 757749519 526586350 600843901 741287396 980555505 595338875 717369947 1787984 712700933 697445841 921233972 567882964 653996373 369351635 429931235 748638063 796391467 330516317 337380740 435939195 843463737 641734719 876940121 603627067 659552896 407531213 621493694 505889718 508871553 825697549 931341000 335255011 915525112 998405605 999490556 527792348 551950818 861567077 993560587 515891876 898995514 316593662 604929373 73536658 909751770 440902762 563620968 945194106 979117966 14221235 774056289 847716330 849290820 747059829 827661128 534165488 844040335 322086623 856649735 240080357 575450023 269250044 668982467 797254748 937201943 540002296 624876606 312505167 392337742 702497774 955859661 51563961 669504251 824495016 940277457 606385540 613002588 374891834 879266243 891236729 939306851 479479221 483391116 642985008 767293046 628359718 862543397 465408913 983506640 105009160 481500903 591041287 874857173 175292858 815767544 240149084 521695085 595630468 648305681 99256754 693482031 149719096 276356455 582201843 962797315 735455210 885245772 49229182 821880155 663622042 864190394 617650568 820262303 726725536 876385263 57843437 712438200 764813584 928688499 886188942 912721496 250351472 794348033 513742070 524392849 914441639 938123235 714202501 984586644 220463578 590676392 68291932 477604869 320604004 714342912 49896358 138829157 480557805 513299981 424184722 712336069 262208013 867312720 201274198 562777123 867260548 896393226 931622067 981821915 206420780 726434457 39785597 255216495 230396564 246344678 53042742 279326068 454075812 526230804 151788378 855221495 526360840 897113442 271644385 542891436 424165906 575827624 843438988 893319463 324964522 919266710 421922640 843083976 837573647 961705186 451071774 523600368 758788988 940939989 176555665 959157758 106405008 920872596 578707039 990846829 853815461 997044394 785566443 837808369 817710938 830999702 497215577 637418648 579791509 998172263 525830483 987551540 412003106 895957909 902706792 921792948 911172982 993505548 469660598 699760630 2279910 706052513 640480360 662888686 399653781 838096416 950367361 958722426 525288992 913583892 919580534 993154054 77445712 903499627 967880026 982871262 983830500 995932009 276899931 384880116 362700968 464669604 729981056 909540291 895208537 936335110 777791699 877468372 425334877 623488312 200756719 514078538 370202649 951624369 606729894 953852923 416300330 511412166 63868339 552518606 775218010 850379865 795345360 867241995 646925778 690978720 338675729 575275618 47227484 377499488 355694462 609030208 198960526 612032314 833187938 939114973 790510989 954662371 908835819 941646293 73514182 108104513 630855976 858792825 843714083 975561690 938044267 967589437 494381983 649752414 201612061 359331685 808762208 937503836 15283243 547464721 465547828 807862899 806154026 990722792 384585849 635237785 581881079 972658254 87208072 618374592 817714411 849945250 359544537 669143083 341844372 952850571 763688202 885540623 92235237 861357137 500431083 982560053 559632454 856096496 233373236 842197709 210263600 460629481 708502272 725907098 795226208 933678749 398373194 455884039 218728494 276199931 393072454 578775939 802503031 969073532 787210851 806315067 957262437 976263695 877204280 978905918 696530513 734318488 684584289 854305923 808982101 840382988 445531259 701967209 178648326 605029892 20004594 199671897 774765450 957202159 671296696 802908338 158669737 949916194 443182587 476511469 213958236 401488139 466908367 815676355 938886126 954303251 956142867 973925397 703761947 972158134 250636154 999661033 77127279 536000742 326673721 397623969 976495187 997635800 771970942 822724201 695074300 803071941 914253899 921916576 721165708 941728341 601502930 914205519 686524278 817591829 862977698 946667623 801370324 825693893 698730236 888146410 601470467 744307543 824365710 903114949 95813869 686559677 377659965 970077135 686290968 978827018 639738405 943735314 845152505 926725201 90166 215215499 261782387 475463586 834926258 973641870 851209102 889760779 185506927 543836468 652288401 676930255 578459673 998697687 523618627 657160337 12218037 138756425 112929050 243319808 667077140 793680053 734911287 899419996 580926974 899570994 834331790 968209045 228553279 496188284 41028426 932262214 448514403 462770149 647324100 969783249 611762587 835522106 795654848 926969117 8607797 796456103 382590147 430885562 245295338 929034519 877990299 918602411 977507851 986209914 861797626 971229775 500510924 624519842 753204119 794369711 960008128 995618458 454704860 725858368 619421108 972892485 525098029 941741547 175462252 677319381 366332869 746457811 467214550 860731438 438650668 834621909 501269496 863591960 605120502 844160400 251545073 403327730 555449188 902132824 221730490 290130034 309848218 685924033 398455216 877427301 809649948 987046964 317991335 605815889 159915588 265923201 419345499 935700967 376503938 788148310 282762568 394042073 259576099 287127810 488652348 928635707 689248085 739205501 788076156 947273867 985219251 992392208 89680271 846368826 707897484 789048877 891076111 913101157 725247859 989022996 564472886 967014748 117234243 887744462 639338413 669469329 46904724 982368787 511880682 530450750 170777611 300587314 474848680 716248886 894607115 994684566 127349587 928198139 763518103 936841291 339909470 651850332 745613570 825091193 399021670 488633922 159009608 194914761 438240380 759113078 323696058 409217025 661194502 899014700 633359021 954195140 811342207 913567346 488511168 822677801 465448079 610032221 241897325 822966519 218467186 560809462 583279546 766534048 727305610 784071565 832929397 909680172 607878929 952831037 61729173 351811280 867680671 962476717 715753292 729321925 607044393 710205819 864091977 960388557 378997317 560538509 19164858 871117245 310721827 318301423 734193292 796957718 734556045 979156086 373098146 586655299 325511906 569799220 916925868 982295456 547470811 871626423 545256628 972363127 225393524 932104061 782378363 931409523 13546616 879571380 583879455 715280671 943280413 957500023 535592315 942035688 534352690 898012847 511410184 965373533 450473134 631294101 480720188 755921506 743274350 744815528 562085942 825671737 349053949 757820255 425793534 927355921 131704279 235269184 757073965 775456024 62994464 699365566 804185874 943380924 665877449 996031871 233705443 751998013 757560034 802619479 512088870 832208023 157494573 251506123 115029273 891030667 22667551 49723355 289857892 327531147 516730516 790454943 415714300 914826485 956047270 958994621 898633498 920709090 433560378 578108626 376736780 606637068 977543775 992322133 821432885 843550353 118048136 199171848 543665922 878410028 402759674 818908306 911330181 957786604 858404175 891246356 754597602 780827488 935809304 981044273 881601173 993118174 344159364 889410969 341622764 877381732 338056980 558698971 308482040 585109414 111663878 440445850 818647813 950592838 273354427 958673320 32645092 971364309 332025299 362660864 394884861 715597382 535803029 884415734 928442188 959669138 846954087 983162456 867335491 997762292 244034022 807636488 339444833 360062463 352954141 406821399 982882645 994663850 799051111 919125581 680507266 849390512 821948547 863258555 302226353 712972944 145409877 918913605 933406032 950404244 212185979 857923111 95712683 986325685 859592984 861296424 92911330 484597589 434149560 454171895 645279906 968496519 584572379 612047716 979503436 996124726 204471798 944038575 317937467 619959437 486773729 716019921 294336591 744638138 339303657 712668842 820406066 882508365 953986585 974217498 331414819 581172818 125411726 582919507 185749559 741448481 910415974 950362077 695436134 723521526 855044565 974038428 534649355 986142273 476808385 949280396 974410836 993688887 305766471 729194113 373846028 511088763 225411355 752223127 79487414 319746541 250642092 285642875 377193967 823636220 585650472 805500491 693635199 889690629 974285475 982066764 318553912 483456249 623736542 749747434 632416982 996863560 504452443 838408375 533349124 593022485 805336368 949035511 30249851 330245595 62965275 175123659 731572357 931188841 131073179 488802067 183887802 919636448 711159308 839276586 195765708 224584597 172619510 446659913 925319358 989009769 883294025 900380090 577544092 591360371 102228722 769874898 621286318 896936363 810355382 927305735 690175179 718178501 576996198 739264490 812026543 874545090 237700341 695845908 492867313 738895312 431790514 453470123 186058310 890801190 758207338 921018795 47061289 64815274 937127999 939616967 862947661 881837257 810848077 949759599 744547712 796054374 43619737 372735976 401820620 744546852 135667088 188277369 160705162 201570901 145675970 162057251 193789552 535207536 825556248 880323789 796458646 927045480 926038573 928978519 64864187 322532571 690363726 690421401 35291760 315956922 773137752 877470090 876572825 926984342 66655018 608310708 20967064 547499869 898233614 966995081 12178086 190905418 190625767 377915779 917730306 925504661 173012154 367914692 557736489 699800946 51080560 788349768 872088062 963810806 698959686 784082912 167448222 329262030 475741080 820532005 160112029 854611791 670715709 916894703 450665694 767628053 53354624 225929898 796607306 945509555 657478514 951375385 375726233 774571946 701204036 912891600 214274081 712794127 861625348 952546103 654027764 807151426 90060604 410865148 64467924 337733370 808740150 953271386 687497260 893018069 442092477 880107700 712103351 830961442 972324980 978572701 556778952 697200313 151413105 749361858 687199821 936859712 119546334 588052145 923164513 971949976 67292783 681418591 360870273 555552784 439488827 767436291 207248343 711175672 217916564 672807135 768954747 903188050 953977055 976165163 868295380 893158862 466656507 753168348 638666455 649296509 834603533 889199262 734564333 875435455 301294596 956238506 38421612 238046395 441508650 697059006 603099120 827102205 832025180 911692446 828944933 894236186 348408062 755567436 815062953 956337959 405856308 572650515 695224948 969412186 83021067 850434303 292633222 943684695 338096549 680842992 388118663 953971718 398313001 699112452 12422867 904424014 128199177 734541078 779300720 876015489 176681580 747108198 626614265 796197304 793979201 942570852 699664814 940226044 14430538 915938410 685391308 790275041 357299101 537442224 9048916 844924556 287983252 348878296 855753647 926779302 934196303 992558849 453545289 768128028 160230055 862314187 227604195 746296042 353913340 391947940 344492971 450962245 634141826 901228468 741751509 949952843 373569015 769701360 988033861 996855952 91397852 648022259 425675383 488796748 514585617 607734838 538165104 763880978 901879503 911580431 536395933 647210202 30368698 341794001 868820590 983423504 836139819 907048127 403699449 699166124 955893516 987650453 830369683 968105479 877052100 896873420 509945737 757933240 635105338 908552944 925246080 951796242 849861502 986849785 706759516 744800689 612575291 687907129 310119649 887276337 393722425 835595110 845780315 927464139 86280667 515861733 204321522 234690208 826860270 888408241 491679804 867613245 305958191 427790747 272628080 577648863 699152245 755801428 387410869 631063832 968718402 987282363 844875726 904400359 892640366 938435026 325014797 395883961 148902822 662053334 974167350 982420343 965828736 967231289 60191328 371446623 525363467 894899305 335258847 955960817 569399209 587728757 901771536 912919456 705158479 916317130 883163510 900038074 29409214 806955876 566279806 957891789 463167381 996871053 348674102 697981269 933395698 975305078 815516463 996371168 301974826 313705521 462057582 748637150 966861097 968384881 410556595 558179886 632576712 989272827 527184243 868856976 712241082 984083645 329619978 923667361 780215284 860021537 434697751 737437730 388309066 461581068 840109357 985064276 846334336 996126787 105413607 869513534 702339368 796340530 670743233 717253856 870417369 976261789 154575077 997747932 655116221 966386495 126421509 567683159 198494959 871015297 455086563 593109883 425534538 875347777 162300245 190993580 398280142 973052908 894333660 935564166 554062880 866557904 664065068 958359632 372802534 939340733 138669594 318027722 116543962 597314390 545075340 698711643 112032207 419897669 227079629 991031837 16432509 451849662 526916462 664753440 866398614 926548774 1793463 302528783 631798044 968948131 512041875 879228743 24367722 150142511 115505102 166445519 747899141 928208658 412142663 895174416 794127169 968937954 125766808 431960816 995033524 998731640 148381861 618540380 976775474 998933901 902277120 990378818 106293140 152639188 895429757 930247955 350548322 833931063 823552397 936884855 431568359 565390882 143945456 369809405 234539792 501421431 640187190 855194024 847876057 886216036 279866455 367333412 923869689 997190689 594835955 742141233 987490824 993876492 829123399 995283430 46172302 860469781 148649923 307308362 345489556 453434371 928973960 939587254 827470347 998781713 418900046 578794672 137108490 799123828 687177680 695408095 147491838 720035377 202498322 226601741 573682069 999799888 863260315 915205883 159028116 768821847 764772507 841727630 583885257 946862195 30227662 181952561 991738652 999085857 661557670 952892548 209540927 302381778 718271552 881941876 24921330 808610331 945124240 979636265 550549451 763532453 565399841 947334228 994701624 997007708 156186330 753490544 548893757 835827204 337724006 722700101 121616274 152848590 830654074 852047479 961894510 971973459 205474180 349227763 845591003 999223769 90355876 201241642 987012547 998239126 858460186 922897289 820572588 847037380 254055106 623618934 924550213 932806042 216665321 917218773 529884741 816588821 308159473 933693621 908525148 994823666 442984555 552088166 865753897 973776411 210684638 458763357 435334703 486114213 298943509 550261761 171305324 632464660 774988907 807537866 426808243 666947829 891844331 994985965 574111009 741181375 459221958 954796047 654319753 673803224 81896453 845437449 562524728 888514162 937519898 974038462 478921543 618550030 499999271 769673594 276144806 962352826 419086638 823309636 528063977 626465484 542577237 656909421 521092472 986984604 102502219 970676460 811124500 958155559 242553164 828138581 223578394 694632025 599839371 888408328 268325156 909625003 786259700 933319895 329062952 390952482 105340168 515145291 326873145 419087371 213812826 866636053 63031237 884048753 463283246 641518574 464597965 831569616 664886188 818065144 177142498 235551390 364220135 716329354 775357309 905572869 792589752 964696403 422705839 647852627 958712736 968782315 423338657 652987188 365156034 496770872 891794130 932182530 129604947 897013269 674770066 891817730 70171806 101672184 436156435 469536246 160794014 569251831 193098482 449007337 478357961 571152131 784950505 868562256 805872117 868349644 572305996 849482457 819152083 946629279 588729978 961347064 44722802 820756673 222479160 450019250 431629240 489801517 984118183 992898251 631163004 755464085 311744152 394982156 565241322 787566826 313484800 930823987 703445304 831047304 448353196 771507631 730216553 753859044 482735465 983642509 472128124 552868458 327540118 532287932 683949523 775545772 839470316 931690388 720524921 834552699 299561236 377456732 472879331 973837738 282823943 606904661 23711521 278484100 498589460 778233768 843642248 932371226 467679307 707845869 518759359 856016347 394607056 669468926 637582109 643661220 603782605 892073878 757409535 995318976 415459274 468570057 570562542 655756931 203844994 726622536 331945361 769117836 178869057 290338894 476426234 669094246 309208350 527066741 880633925 911054756 650468922 888684285 602323016 787606045 466750194 638741852 49087567 585339452 13621926 60577545 656552052 775389208 760120718 937915301 951622624 977315568 69954493 855215537 269958399 806186287 731598653 907634439 185713918 854215321 195806075 494419032 539016520 667715439 927533304 999075372 266885221 910237092 578326981 943801701 732012828 850104341 27925460 132288025 5949096 450059663 679832824 744536223 615771421 662203807 351841470 878410233 950308520 969633156 278255842 740360604 112698839 255962134 700978847 918153934 860621384 992412288 916561490 957853734 322725326 409336925 307302112 868666451 546791254 818023342 848520827 874355414 884674212 928646418 612372567 673382282 210260894 428565874 562318546 948607795 553989571 864729299 470593846 609090675 305557200 616275499 4515135 579782992 198270798 337013565 404561578 879594053 210988179 330365682 47157214 603722706 622712629 918771194 921658561 982779301 153110231 697999284 931851282 944731392 36034181 568872808 618470391 822797202 112275727 132751496 59099910 711181049 646623289 836643368 623711315 905642252 295504488 543805110 285055617 411672140 423830753 464203963 676839304 854766038 27831451 901141143 683263331 762116242 628172885 683904954 564019812 694359306 624011146 949448918 741795481 986511482 626308639 918243106 965899195 988502357 632191800 768302917 89437356 171443462 779245620 790763720 578552798 747754604 811253207 983442537 5297101 254655649 510356210 771525877 630560216 852484480 524908575 801891993 789595819 969329243 291966140 855356681 919668603 973121052 179311331 940749235 222897648 843911595 915858676 924829851 940502339 955403533 611007905 788516792 254219816 606740962 197472497 694140475 678520133 809287487 618823510 990010190 597592112 828172758 858132053 946834849 258149010 298527957 706202970 774862147 893922353 981653485 199203220 508211989 612965225 676482332 355914061 710769023 213507484 396286544 72864930 937485364 107478501 933377559 138771432 456366362 911880300 961061374 865487463 879879838 667493901 991307718 595702859 972494143 726835025 995309393 38006605 310926316 253170041 565335566 117953406 601359201 271868220 296553875 133571214 590923458 537967998 797175084 826589514 973596542 618238547 753179645 755475531 805313983 684021876 827116506 28591010 327156569 339452211 556060241 735292454 986050807 685672238 805027332 852022854 944500625 917112430 929730675 843215773 958456039 653381748 824034368 185200182 509479413 622258412 879322060 929256246 967087819 112326451 932717583 870168183 954396696 777684697 975837892 7283954 281652815 10702437 807766195 820507913 823004918 211851264 427572038 783629514 978432905 786411852 973793743 147113618 327183992 308889452 635008890 847606788 945572295 292425189 896817109 263371611 710394062 822327495 878071091 827598810 968394099 441087554 666261575 196194784 953597892 604201182 779624237 611711952 840172060 124790546 217574290 701948615 953490784 191790717 951516249 47826988 92779444 927810558 959968187 238741625 928521062 216420513 231459445 349775508 518958632 904910898 938090517 591766699 769206008 677648072 946142790 980170901 993274871 360240604 533291386 902206380 919894046 622246028 970342053 310849542 469424373 527550490 617173932 208713682 369051522 678803137 810248123 319447291 545301090 407706008 814981268 406403802 673394258 100599513 657664957 350816353 499745320 274211780 452225863 829277995 839132089 499028325 734030053 197463285 676877082 137332832 495618252 201975567 918350694 286788655 998771428 503032219 541382690 50106232 323516858 149658786 943614384 719516884 976923908 266858578 523913712 6194331 673863627 115585789 797833652 65648025 136439283 133886979 436551473 777305748 889143616 341467074 377825030 644354800 821648269 911757775 993250671 1945215 550188300 81698553 764692012 116711126 472851713 584721607 783792895 602680431 637957484 448279554 866534963 364458523 644703060 541942032 737741834 209167020 464498700 692012914 700985764 854301574 937845133 467507677 613529323 30369231 459419238 412853572 703383344 601202535 959152971 189805855 682915251 160088749 190109529 985255068 988157994 130686690 905180606 887814378 928562114 544281629 829735070 103042287 672641462 771206759 775147623 976885740 999803241 794314970 843458943 629830758 753677695 646261921 978737941 509306457 885382089 795220210 970526940 412326858 914628532 197057755 975635794 39292983 721082272 884332414 919704514 125656630 198902450 829100823 922115002 368713442 579221791 192831596 329125740 847292624 920813687 488023823 648130184 441369577 983727077 395210597 492946331 945495255 974242424 307910746 723877874 941719512 947463365 816515219 879510713 812006627 895147831 126196302 357502545 869903165 915250007 318722521 836197384 570499019 954059431 707849742 875761653 269104188 964938078 766460244 782073574 131571777 445627605 192746190 754955917 771040839 960002174 916616181 987851115 79638054 354590364 838096050 928970069 5347944 212561684 891552233 997920901 371886370 876027359 124568224 628982775 807086745 832163251 233722450 628723546 702422607 797828551 215653651 627747437 82996876 810398544 15899077 342175606 403065645 846327016 719739886 880621582 129085211 728956462 577850094 826786261 660792936 879229570 306393448 636038032 762933116 800436996 395520998 704900653 362996720 642421754 118959460 823446232 237837131 773679281 43504912 341295849 689036106 703761155 388753546 713477308 191871362 307751215 132035803 716474046 988128443 988954127 958422710 985303219 307412204 486796680 717880573 776638262 357361949 697643198 795183139 919607625 560359567 690125640 744269920 805903804 194048673 865361567 964085643 970497536 952935777 989613038 173582240 245244084 507048423 562288510 417913235 730441759 568743254 701105225 780603980 935411669 88914402 435719000 954034728 967555400 41984006 703276345 951554796 975119941 706389442 883125824 407518404 833495459 856724487 973968377 711983390 864557178 526040524 730178369 976218964 999900138 787442653 940484365 137853364 429809743 242110080 995340415 395784828 664511425 391758970 462181676 850900113 908438817 171075040 321837958 681296537 872220990 255931724 736797015 206528732 801842275 810070295 875344142 218776501 598976370 175489044 392820587 69927537 484223803 119768722 336306924 514638480 561680336 239082692 246538948 593722555 738691699 967703502 983287113 24656130 520400819 345420199 717226693 258492910 811733008 50452942 634944898 22222210 988575524 907112211 946176026 210132765 865371875 228665640 637379593 723502743 781708888 763795199 960309412 768422750 877491889 920782053 980192984 866790533 950797019 181460592 519540283 460568860 977998523 540937693 655943572 491394985 779224315 424146179 664111725 330401863 994630150 361989292 837907032 557006103 699168211 482493111 927458414 71909716 461058109 211554256 948859293 654821460 989158701 401129621 557729970 539157762 678773750 248996054 480591863 454348353 472142613 275246510 579916427 332954607 648318977 126029389 181433623 821353270 963087357 586217071 991768355 648541167 772157336 156384303 701995122 5553822 617763370 603091807 859220221 409098005 480341236 826103815 880307527 318438354 789057208 965319342 993083540 815783344 999274978 736368635 888628297 42541253 558544139 875610584 952756656 402479717 569551386 805730250 911090064 917797525 944120099 462563360 465068281 3921191 780864820 402686528 732858393 544485086 725310027 414958638 472323619 841558385 910718139 80112942 143583851 912498333 974656880 782242085 834091064 232310755 966460733 224946891 882778132 486721969 974483313 898354325 954835348 284186541 341714602 402606184 732110401 61197425 608297839 717140120 882209420 171833193 246909374 868350532 879217139 783800255 924668157 382381722 886615777 414432963 987239079 316460645 877929220 656695053 875717539 539440558 625629806 53040744 287711225 109583010 856955642 133838161 179655613 22868082 948541795 215047740 910117406 30410412 610525069 47453367 769397963 309253649 632182535 2254745 185094007 804101152 844481044 913386675 993480981 308282099 925268784 465881551 607390434 205533396 601162738 701100200 742090278 72733470 280424804 226039105 775246864 558852962 829387253 363323294 838906831 780481142 836980665 519348272 746885396 851633630 876910102 916187404 918415162 238665489 876155308 994073698 998934127 298626437 657900881 526662793 807671751 165213545 511322706 359927359 939926004 489589280 766206332 712829400 796320760 396336572 518223938 231690806 242627661 434317643 999770760 526966962 896301628 946043685 968751752 376409025 605094807 925134688 930294807 539195672 858512320 146118849 234833764 723628578 947621316 837893198 997236724 204415074 739374644 952380359 972176267 846656897 908660551 996656323 998016263 446568192 914806891 885701825 950917920 740661065 914353341 934013966 979028224 392989122 580611475 308156334 780407854 230896319 870984434 281366638 658424324 683032737 997068955 937728390 980945198 874149220 877969704 191774525 979437584 50920107 826071459 7258988 733868722 12233328 989840626 597780819 846638505 269375114 729081102 118057230 695080425 987767776 990537606 575442527 977725605 39568693 265961018 911576667 988571373 323824149 378901026 510206037 583577791 556174071 792540298 178762949 916432762 297536688 640570271 438029863 443206092 784839213 920746079 190579904 597455037 907377528 967927708 586199991 672286108 508145128 636187377 106542492 286248034 541485643 687890519 80017599 515860135 117993867 967946466 826812286 978869283 342627848 945708550 639545377 935293679 27935343 658012316 760672330 968661980 21282976 477153467 552209941 887969945 18842484 827424593 825087428 943714692 96687045 587353642 230629983 595759533 557724062 670547572 283193104 903613765 901462211 946907952 215831603 313600098 339673652 760837831 562178523 832464825 876617333 971894231 484687942 790118007 291561707 630133493 328273568 941017094 774005376 958747145 149580916 918079000 103030628 822053633 173433633 237353799 497116666 633018013 150055851 196062552 429736664 830492674 165992289 797534715 237818859 981111466 600094046 713140344 72887521 680047066 507561384 914859157 668979413 698105746 120559331 419783610 783772000 921054552 756593288 846370187 368460108 679514337 604989179 949077169 697423551 775681721 45081648 936710385 871388187 909020625 413420687 483943164 101015469 276330180 271285894 538377903 540540414 829481359 924843883 937689765 29738211 40391780 849451867 949218209 420689581 456298446 665970324 899906010 342707304 825102925 424774130 955134241 540601103 726977718 697945006 722708982 418329655 849595021 6252599 165165870 167552270 871457242 684355407 718756524 188817388 875579966 647313402 973287934 977304797 993234360 588992198 952476229 932193227 934354188 316050853 813130113 120001843 592021681 536520627 833179761 160238451 764568861 910700484 930776532 352479676 570962588 64053198 307236379 825081259 990053106 291935253 995345789 707911191 817821165 944111727 955954427 69736779 699350592 379811192 579625093 512988543 953816327 628602260 647164124 395712823 440957970 6345946 45023381 629422558 772110840 72745940 534935078 729157770 788536078 797120425 923543751 854016420 936876261 189155300 281134141 523319894 714225110 409431062 732357812 719311650 979821145 133364177 738133915 69781351 585635865 156260335 605419695 548909500 954068993 669999866 946240997 708938212 738578020 859221492 908466393 164257213 359036724 185852506 829255938 560730037 805003314 907699692 957652957 961752832 996272351 231607572 395701255 202175726 611303049 180973174 625979199 851161774 970512888 429939894 794839250 143453908 694817443 969197825 976387936 241451618 349534276 599286798 842787176 836001316 963915505 959101645 972304641 747920854 819453130 758138276 843702946 271619377 627047544 605383797 693823640 609661223 921732264 883228346 895800034 931665689 936600949 749686832 769342567 660474186 840520885 708950031 917943566 485918497 833293707 839234021 892796473 621671714 933787335 667916829 853311776 188644515 889887573 721562587 927520230 652345386 679114422 305300005 619893895 772826903 794807361 276096666 624554284 788639113 864296294 887395804 991193986 209565108 612586690 394271269 886842457 276854835 695530094 388834213 461529757 521682274 882461389 699034258 739320861 943914791 958855118 202549342 724491068 325662903 578019405 760836051 881485268 630933322 822411157 513463044 795029428 129867630 874360202 871704472 903579371 686928305 827048839 117188742 352587481 300723426 800945679 79030185 382722632 755320264 899324482 30806316 518947198 968152132 996019166 801351527 921913440 678674291 970604274 421770630 894585611 36301968 465045050 52743795 523794995 557038275 754504618 977269925 999609156 325125151 408856758 881153021 897006636 938320550 972635061 22653071 607348741 551102047 896055662 356836037 899597271 617281146 990365552 837662884 940328412 594409344 958667320 964574299 996182712 624853720 629386167 487757685 812929091 452115504 806429454 835071135 882660361 18856884 913840942 208241669 551996685 666082451 947334219 630766266 692348050 309188593 458065942 338623382 458903548 998468989 999927000 401835527 857309786 270118874 956300112 294489144 709098646 173044882 384389847 95729056 852209766 748438175 845401447 440216217 754986994 14117958 825140949 117685616 342151124 639062511 910675616 146653100 554142309 790642813 903990009 717798770 982083722 992265071 995183547 539442589 776788134 36232472 647619424 95857344 992156797 363515904 688910303 548048196 683011819 527035944 943235934 911754681 971341475 840772001 846333845 18682409 421640941 178293964 420186330 375225746 465272588 893907423 980515952 563615173 903592731 473312800 602781987 184692289 194312301 902856023 981822782 934667442 953412574 170956478 403546413 637469028 776815607 727807198 767856615 457314241 462340754 780384724 934271521 764288137 826181800 693290101 933437180 629344093 896257138 698611623 958719709 186048795 386707834 69398001 612128537 672490646 675355261 17936297 435927780 83145941 376062659 755714933 991970422 862171815 901891492 352884688 373634094 502571458 862906691 1602838 456432489 198145256 915762426 338637385 633363163 308306692 399082446 764274966 820835102 375590434 802314979 976295673 976943808 340923706 358403278 82247943 280192800 962080772 977674879 126882375 826802190 692950014 986161450 930802100 934903152 768588106 994758142 717315254 746773887 164793359 832798917 757848573 829573193 982679643 986255882 136627354 744621925 781285911 897426806 110840 856422982 919624231 936589283 355054594 363148944 904709799 963256725 35577779 439042398 441431535 568188493 485691569 796999015 171364874 594956130 769622282 916304907 973717335 974246881 160936434 165610518 767842215 855532362 932144819 960228839 480031216 814153391 777234121 958667571 300894944 388375044 672597595 794190646 688015118 899178228 399979548 431810292 634265894 744761481 51416524 931729876 883552516 915267030 582053602 918833767 105953236 795419674 603475854 870213381 127679168 471769307 959630101 989899668 103197791 553954696 761177012 888602526 367083871 592887571 31858520 184222345 284700588 977026276 41840507 533920858 446228134 837240064 765050897 970624227 301301094 490842521 319193728 587364473 895836604 995481419 159998446 336332836 377097053 615302065 186087846 690120067 592002905 897823412 500837928 902092050 348218084 521841551 608084312 687231134 973506858 989940287 805103890 968792240 181983975 338051101 990448543 992760897 300549345 867296796 639315856 745123362 308127869 311834134 73241146 898640535 29035275 292615158 115727370 392774784 646071363 898424628 909940042 939432853 880437634 904753577 813995764 836472337 503968173 806274025 175986188 256295662 458851047 946185650 411456447 530136063 448055799 892035989 294780782 719324160 300584728 727528341 603915139 996178108 988128886 995026317 766608488 973515438 732952274 829473937 446303980 681622869 514640805 559885277 80891075 413816563 678646228 697949986 12429488 754364739 299066576 835272385 106936120 559626739 994925319 998847790 406463964 818719040 205925144 301107469 937678676 948800828 991596517 991771819 179208133 968376485 651262439 881667106 969238759 973653406 426111895 451382191 270509032 651583998 779995449 954255778 138244465 837795541 115491217 166690059 734211109 909723622 818247837 847113741 177545237 814745260 616311326 766114966 934040349 939081882 101408412 130888624 133890099 250277115 174036141 509047689 871526280 995570589 496024963 680679875 727210787 896585466 159751379 263347336 125740634 839512867 813129643 936386653 87342793 197627656 548931788 939906819 271366666 584862516 46602571 999049663 88840299 904031584 637572654 677076614 186471480 624995064 993669818 995564476 823582509 939870480 3671138 953992307 157833762 443577240 952595482 992476414 820402220 861341310 926879395 931105344 176171176 366348093 975246256 990952688 229159573 266518910 96169218 218214972 927671485 952936959 640078248 771654426 613041267 961526643 721080748 971413239 66530692 812492649 878699591 923055453 981364431 989217238 976319635 979697479 697067303 717980816 734813435 896646174 516129911 848895432 565491056 958050134 671136996 936830681 511884691 714736726 125990634 262291050 194919944 257891527 226594011 697369176 904976470 937886398 961134500 992697422 570935137 806264505 572973550 688978146 387732486 702086686 873278241 948822798 864757897 905418812 77262478 838548405 918662683 922168448 103164895 316424390 843450416 856024006 191030202 991962094 226309783 594715530 969393368 970252532 403933259 902719465 430963494 661203712 170594336 355910431 196440593 803134803 413520480 682809448 331510053 348134354 847779504 918269306 71738106 692628825 327933699 372040895 175213500 988831079 756441468 995937771 979935174 983868603 516236863 633919477 61896524 315435030 707760220 771513233 169438182 273760592 108268187 969482470 477813189 695293841 38400657 596676863 251465995 264707648 376820275 968147333 732082280 743476209 872418505 989243644 748476757 951183002 660851329 816813720 263775170 406299544 644759762 984468569 606862749 968645948 727989951 819252100 128082846 530861702 181208959 563493490 564522317 644404275 149427442 321164569 117759001 723032281 228092023 345108275 452326124 984944992 719050422 875252521 975252602 982293867 61188320 348416611 693268714 894173938 585368329 905650191 979260235 991997196 155992272 180833864 795375748 972342061 857860066 860933748 165900131 747221701 213966129 502657824 103814131 883093031 15192891 320308026 464995457 612310850 501530098 799956326 141780983 391176010 710353460 988476584 178738867 743364847 46652720 306169294 149764897 195703952 871774196 949482306 709075392 793349405 867119604 885068216 698559670 927659071 672891775 943603388 621427408 750877040 612066619 830548528 739715269 879270364 62935394 104710400 786199334 822518133 534927913 855478129 521297538 631844267 590109118 900776147 346803866 516444545 143760746 954280543 822203810 920175801 474765560 637918847 828782265 923745584 292140378 373474680 842168980 919142091 39840936 434674333 963107734 992919203 803619986 968038451 122453717 558706986 137740898 841474748 324076468 805126852 994873331 997164926 675590410 795531086 293508777 966118198 205303065 733080164 773374369 780977224 259923333 360903355 999818387 999904716 292046646 469298885 466191138 859573101 234907193 620335769 214584770 946144027 564393009 999877403 292829384 327915637 126500716 750074378 189151097 561916275 375623268 571864190 570687378 867201395 536991414 677010652 914536439 949310503 184382447 681202920 379641506 841283993 183155693 194819167 702917532 990777300 895694761 966932776 200147827 602632547 926475297 987834804 962452693 984886594 644643089 722757644 451501079 932127658 899586466 999404990 328844682 605600497 856496678 942793037 171964702 791183913 587421825 670358388 424596747 494699316 953086016 973194681 791791180 824786292 665531271 983143437 480687262 514044998 72058348 163809609 339155460 456486672 438466707 491433570 210069709 268868254 645628351 880283539 621480675 653905499 902071984 989890656 56778686 205373116 690736218 969566835 208888589 327193412 653535842 810667062 677476092 718000111 791838880 811732668 922584475 944000838 711682954 982019406 894364748 988753146 5798135 371731621 819669918 992045227 613680904 631641464 1658297 147687518 570896662 855565160 654321390 725295042 316162171 839770874 949537498 980651782 593607496 783342711 912852968 951501643 17464933 363681752 90188667 256621021 823981426 885247431 345127209 387612398 724464391 980067273 211410372 215611892 948219922 985743644 601938627 951062170 226987639 696371267 77737726 545291501 668223183 781576861 311337174 679371091 232808568 243643649 630003536 911427633 793502928 930318494 21598790 551630055 888432551 919226801 823714935 921076319 318562394 438323229 779639249 995831670 283003991 394390810 760259413 869824229 457978221 487288645 221779308 932708260 696425062 819695305 231423219 559540899 954052862 969660984 983765414 988708720 79898090 303317727 684384196 858078779 916642849 931300333 680683101 955652434 880915317 907239979 325367092 766104817 912033146 935456564 658045636 880902612 941025292 949465086 907868385 910621270 352270038 669351627 950356776 974279355 749570159 991725170 16302051 139219765 954130983 965529694 351342788 799597389 825843564 941623208 260769485 984385116 681796478 686420567 75097217 242595498 896999046 900725212 374843392 681306731 122594367 865986381 859876102 942444566 987148198 992172341 534473912 922702350 421743130 782252289 912523664 972737940 231877638 454680936 673870660 942380139 793124726 832085477 511288094 671153170 320668279 650249131 379197315 532355670 665588620 680465644 223820748 236990697 814036068 945481632 538217241 859333038 33591875 259596674 152429591 498999082 623489543 841760935 329715122 597273843 849494322 937448107 196637759 722193458 3477804 982379551 794839999 876988934 298580142 369159852 620654994 672101015 862175649 906716959 740482287 773067715 906111453 987342404 252758536 270062933 968709922 995368452 655793428 671653962 255360535 272107836 964669783 969221338 999742403 999989980 436193678 716988926 135022920 579517866 502003288 641642399 331689603 543883344 890866735 979607234 800687154 923606239 553966488 973745344 85275592 427819006 316122648 845656254 976209303 983518847 110124415 802403185 472250183 882894855 795040454 837738540 39789793 332234992 849174853 894795010 15554544 937374667 933631552 957401625 269250240 328079386 736056225 763245712 861357244 962571658 808947838 852344037 374920805 643492381 270719633 968490559 414468411 438627847 833346213 935115486 14075578 314057690 77764530 858112728 562212974 906377131 792164179 980156937 437103509 991746096 943593838 962915648 184184821 350518455 931306021 935154095 565915563 680321940 409972524 468893078 460582871 826671515 660632147 925821451 821693226 854881454 373978346 529122203 717236360 800336137 525774437 570550367 858167481 889152334 3698408 663311848 446735489 689984615 974773611 992827593 872260895 891721332 110052583 124153844 534312011 628264420 179494551 995474975 619474328 934021070 755356988 983629605 881786846 935773857 640441741 995258647 467065691 616453682 853126921 995188770 740249966 922321270 570981559 644555061 963903887 973977038 79406387 218452932 377636100 687876984 346759500 420845396 85376134 899319699 381685665 771323491 26437238 148106567 173308886 970931045 177641603 594396587 347425622 594367218 335349945 519089912 633240031 859670354 366701768 696899645 514005465 750829728 58225155 69032319 39922028 283066053 130370062 554328341 653747201 876640901 594430130 634689194 864964907 992459515 503677145 923142603 754635861 859215613 839032522 946496824 448018522 980198096 804431028 985188329 516453933 609126941 629238222 952478755 539125644 848370440 587499666 838517527 213873525 686696176 777116368 783942751 188561446 363115731 645784410 880924190 143679246 677521544 368801345 545214673 409252883 752596980 369487274 681761930 215276239 768232879 810873964 916089629 4107758 370061049 485657348 982306627 793293782 969997323 496769765 587744363 979951848 992231721 410723723 591619230 218540091 973373694 605609946 783959168 640074129 931651733 438095043 922383391 215642698 805503775 377202177 917671080 825239058 831741668 468772074 622797813 697340281 810452087 975256404 987848956 381475311 968912576 677902504 994831774 144744793 792322144 380277301 841370973 429791368 980467061 686192766 718711189 100644384 139801393 283694354 730125407 808753616 934854153 529291175 651115425 353361842 608661266 456755645 704516264 251275046 385371406 315088125 862616890 682753385 991366837 647644938 671518918 535889104 989947918 85879814 599356414 458515488 925678816 887680163 958518288 714024011 799024182 609564579 799362835 309782035 376492952 193984048 623045178 851826706 857794644 472064853 990860156 621724289 764560728 343881744 440971805 696343063 734553745 528391370 754647928 124339276 285222216 321035112 907430480 901708982 909803654 793384404 882060650 787014311 914745179 107852241 579397866 465606580 642495138 431745334 584285399 455500221 630212685 216467371 685453457 493011910 738624024 153971476 763338394 905778769 966052037 514830096 672686432 696270980 986926799 53396630 431573435 988885074 990826833 915946858 995420163 175909754 239312771 396729762 530195707 173600243 943248991 783696815 957937714 755542307 875581480 666883105 884631760 526005946 977336331 676573381 807067856 675063682 833561294 630648381 725043801 385170154 444301906 12757909 908012708 782497042 886500069 721418927 849067461 839802457 967073709 781218651 816366609 157114740 916577873 89880914 721673314 173511592 557879643 293227563 588994845 765432159 805515273 572519257 772218084 552075279 692446155 167467739 192784129 930534895 974894620 285916096 412657977 703666256 900737839 398986549 952614584 348757542 448689449 651994028 783678057 281703527 607502141 627965519 648684009 41364720 258640352 402974505 661125911 124136263 435059606 15349143 671807284 886126114 938150831 429258327 983595146 584928012 861642834 341905817 352297611 141680803 529151536 6300597 319815800 371076862 856477883 258451512 442409097 732174103 940908570 668700399 997808194 321569099 531745995 911433442 994385251 617909935 677070141 711329514 880357427 123851366 482188693 481482932 860007272 454113017 741259836 586210717 772213801 839529407 885216758 482281383 869763589 657295964 934606595 488033436 642711588 523076465 891320035 906950880 962307168 814744451 950105549 237404811 654147912 501392646 521633118 18529598 573648550 613613154 969425412 993334559 998459434 446587698 995156796 248845566 973783306 884333698 894242834 72633860 179235775 220777227 548634706 859264245 982995750 729625469 753593190 772939749 995311856 963832465 984921034 981675996 991350545 35609079 112569609 838091999 909430507 733033214 756225108 882963193 995157482 551314825 802783908 104415100 296366193 343742670 348198569 602906085 856445425 858953828 859212168 679954782 711171689 677810826 850683399 308253564 626316991 316865196 786999960 41873082 127063110 170441756 379433713 444393463 531188490 345874925 470712471 27384919 866632766 157551239 418434428 494514725 584906172 795195646 984958459 624247919 918982822 157418041 401387430 23121098 927496794 305755056 779050458 762797775 829452392 749762580 932460356 710365745 877307529 499459531 557030457 260854087 680044983 731039587 970895756 197751472 373061139 847000120 993313533 834233068 853119090 255745037 349264396 31527703 451821722 426420139 921759176 953113991 984064206 930324430 933232656 859399542 945651172 819619329 922516779 678677376 880576953 443399767 805486310 714310622 785819147 728714413 768321493 786730088 909064713 515549395 948218338 822543259 997672414 434506456 719654718 311429576 446857599 164677050 430119052 455880770 756169427 784134078 851173125 349260884 499625549 494930119 539450897 863119415 911192049 301611466 399402598 302293137 320830018 978406800 979376145 79345608 515199061 972725363 995175301 443197299 577919911 653410257 828485482 125954265 515263188 852039908 896750069 761940140 880353712 987542983 995913474 21430687 169059715 963343091 989183860 699139294 981238146 40830923 719670052 984154873 996129184 731896960 818755721 449684259 765570589 663326221 996024176 862121732 955170381 331621268 769206549 87968445 284540332 158770382 395377191 593601001 612347069 442456912 707427099 66357321 839663714 864193864 940264020 443890829 682244561 172000944 643460055 252121275 794897407 53952612 618377767 917658561 932973702 574809612 727647706 663537851 950798150 230773586 599044186 840566278 915287138 356734266 603469913 629808500 958005416 599604564 653386706 193765746 318705803 934779393 960635138 210249939 245687272 520252904 560788546 147300088 806864142 562099768 937150491 922031105 935253643 292931096 651782679 576616559 950694543 573882203 748726267 134368162 623460313 263963059 359612128 575601039 639790226 395365163 622142656 550783772 617972757 592606626 966330198 680085953 772613789 241156035 809366043 895977183 974751978 245073413 744193173 895409591 909649265 479105133 701705202 114255738 905266929 588508350 596207007 956374139 971683015 432861859 971207194 403266580 787162462 985775671 986031149 553164004 956128419 255576533 608042274 465383584 907349620 900498331 966084391 923437921 969718602 776551014 934215108 344134656 497509388 319081719 511270610 471693088 717282916 848677877 923143818 147240602 233036849 411407857 870910315 28175563 825986081 461795872 722157462 914344510 983798535 280652634 782778897 43875428 841097700 555044767 801876613 747838850 968522304 709857049 724427197 758842526 855719059 709557215 979740564 203408757 838894792 47757448 876190243 152675835 442245082 268446911 626606474 75224189 387322682 176093273 733071138 161195854 295709122 696383845 968886012 180345015 676172838 65138000 889552068 514494817 711096667 720458409 886947989 635545035 950910607 731546089 923448711 93591364 562225854 249040601 972209954 382214885 425513203 846480001 885241918 92373939 749282810 12256240 525680250 743660413 823792856 75696244 913598147 406702541 567359692 789817963 973457475 88586941 186199179 635597710 681130934 812752611 979403887 952165043 992753804 981840440 993366738 676609198 812332357 792691762 811451393 490458751 532211834 940613156 970620417 282859265 546858873 887827908 996792888 481297267 923147809 391449257 767288193 887924222 906998657 541518184 603425003 282914278 751377898 257908350 467592453 824373821 962857557 250617058 543430672 19876960 777517613 617932481 971043446 864482523 921462581 586245265 915399947 480452119 749188827 70884212 920794721 650208923 681668188 312799088 635899431 253061393 381482592 53127546 321848204 534096711 851987051 569605474 640999942 156712987 469400450 368185693 689443244 18467717 772279252 456137213 554621687 199939315 222522478 554045203 589720039 162336560 503032634 517782999 753449844 368071973 725342452 735772335 956304748 307567398 735317505 369636968 930412338 472433903 597383103 913187647 937276806 243109334 827891132 832027224 908064287 200682823 817963662 577422878 610634497 862327427 914741506 611664668 795948551 275640538 547430218 567720693 575664432 176333 942420848 875255054 898800353 404266330 817979740 755014141 945783297 278700834 746114492 613426885 840324092 675284573 833939876 969271504 978917800 346481366 379414554 855704784 902909979 293577580 403529437 674380782 674630847 614670765 859868810 717892371 804843624 525408607 688625244 416391992 976207236 446408356 980782859 130241456 519904444 516974335 812356553 633270574 901371943 828298732 997468130 408025450 491866915 651065023 780633319 787653179 850134153 961884349 986370462 227109082 633000820 74567437 335682954 831920498 923075776 230992141 358417477 532642574 626229412 933685178 973696314 274145986 985796285 93123781 507364701 899207390 921204878 940811135 997232160 310902164 734686435 411454178 431691107 890454993 928016344 797299574 900572068 700242640 879469503 370150317 894924018 393111692 961727467 365995870 490702496 441063069 913713543 968350905 968831557 87301678 546993673 414446751 924354014 485035540 573806545 922520041 983125228 715409423 744847767 994620694 998170922 176933927 391768980 12418110 107886676 519315599 982325049 380009775 491181490 186709242 737357761 179940918 721322104 670516946 785886003 169193812 802542397 368448881 679369803 105114777 849401209 419875604 650182507 933398081 937149370 141093858 779997092 372110407 807135109 476844548 584666132 774405335 808685160 705906465 792066687 87053348 961129735 216711653 527523239 559535677 754880916 987464742 996742822 603539631 717045339 287742081 729346178 450014275 892170429 149238580 290249672 414441978 756572292 837169416 912772384 515446205 912277272 393303310 861273854 261272687 783516463 954699959 968745359 452733786 574484856 7750110 807402276 469630682 632922094 677245963 951694714 264257962 547960674 678023463 978433325 651791987 729138457 7635969 384649671 353118196 817020387 476656883 509271342 697825147 891005242 770863575 941392280 883478231 905233116 351321299 501540031 286242960 958120594 628122576 642311306 170568154 427133364 572488877 674661120 134549189 947831881 826045515 921176338 453844839 717770177 97665734 397939204 348903767 364059023 269746257 782588822 120451125 801053636 789289456 923265592 431648178 805185599 538629323 636543122 799488271 813849292 26508806 895639692 963434355 970797774 358528030 901713343 329610255 859140631 612178208 986158918 40765960 856140198 91777774 634371353 593929487 853715566 631721064 718858559 835669793 982701578 750778643 992254274 610386640 882701002 372962261 595982724 333333069 814845744 694898254 896496722 917939356 919645801 667773985 970145824 371268291 878807152 16331936 284118509 48632815 342487335 796362642 916782119 19728908 409722745 1971297 327720349 627694522 759999564 759623321 922402835 561948540 815644360 990177413 998777604 737445453 996896455 396124377 615302871 610507342 916922265 481400201 653270135 51934182 190954527 100982850 127691517 115608433 296996786 795364542 797063412 40333286 967485480 101046087 229171426 256019523 983775360 462415612 590463511 280644879 491924310 882580416 960120254 788143569 985922548 679824421 713286602 998018309 999035498 483221195 827096481 468746843 597455579 20768761 125190615 58512076 899973758 356801710 759138832 656577201 884921072 724051216 929739468 641578625 695241210 618082476 677990399 52053028 940728201 8375428 563003470 197467146 577996194 828627165 963334837 64517942 898462531 920610319 961148140 339611957 463776158 678635262 887435816 724082219 998037212 75915794 568864427 647791976 721331337 705826006 811103094 609803117 907343549 756967930 908437428 144568263 152404191 216023740 827418070 718959746 977276896 971184731 986506812 225461573 333983738 555504431 630811004 973470365 988196833 828131578 987362663 461900867 536428981 175126615 317426286 323810453 642848583 813878952 822901162 588537847 973423344 170235724 345289919 543224579 694239930 194297149 918114646 237985660 980091386 606795530 703561839 728370834 910692351 428813613 654754045 627050907 885192332 720030771 939242573 565975518 873022570 1360676 39091868 742186314 823419282 883885888 952783861 361609681 768192511 195436430 948575298 544108637 650153302 309250133 339835702 676782314 737293528 597311736 722305955 589887162 779573975 378856199 778988071 795257634 799147253 989975748 994622816 665850291 798858614 681583303 817153394 96183527 620238997 809661048 960285955 532075311 539161536 748976231 980883755 521010194 672494527 130844336 697059825 588938736 985502631 802420897 825058373 345799804 472264646 325522898 528991504 492833127 904097933 306751718 882871570 877311790 961488452 212515786 556456722 22786465 601382301 117279027 270501832 118788591 726044799 644919468 822283464 280098915 867372922 734344695 851267623 343038546 761336562 418590160 467112790 813206074 852699543 750379741 757044602 440502594 653234736 52678540 395742427 874385233 983649742 955190380 990630854 688743791 821224707 571825239 780263885 389102529 587311606 537054064 558547021 453120819 594963736 150952795 712920453 699678622 739190627 170687055 696134641 826544949 951564196 795860727 844730551 175135702 813318163 770728235 876464821 183431255 890175092 382519575 895464030 893079733 966442895 924232593 994801718 213193740 473564141 884694828 888671342 171399437 760936395 684958576 939104785 112738353 906837913 362902374 915268220 672596961 852391613 17257051 831459888 123338910 568826388 672606504 841187861 898254044 986426617 343230591 997601871 265821458 514526516 891645830 919138322 100551980 561486880 971561101 991213066 34396481 441068899 638095690 701951781 784540732 788267551 743875230 793163017 140784491 457810227 821671615 984727113 229476439 559392258 283556893 698411029 856118651 980772604 417440213 804118220 884439891 945022359 584283587 866455676 825998966 838700873 198363469 667413804 24742408 886987464 363106876 562069313 778625623 905666116 782908519 827696789 825454661 899455672 722878402 935410317 585610064 834057009 771312071 871722224 274253715 798041888 863776506 943766259 819921378 837676951 175871221 749932138 978912017 979419289 124820061 362148048 592220932 901896818 822844127 908149125 479379776 838192873 899581898 902866996 504526889 596857299 957456948 998110276 295081195 909467873 692576722 900860281 360914769 929683627 411290655 743554672 291179430 980134011 116632125 828582137 170680196 213089923 578641097 715277726 886745201 961860581 678389951 885202656 649859733 821581164 105192687 785661935 690166652 998331991 407006564 694509504 585277781 808547951 612704101 812100034 962313328 993285077 648962651 701758792 659789728 972871658 612115195 904904640 580209279 701723797 874289310 916047212 32355948 130378076 948725954 987832928 629400254 678101094 741489791 929726128 656796446 673545201 961238574 973776169 704094558 792532160 576876330 930878659 201131476 354850752 871266365 926089405 150121308 816401251 899938163 901594261 938837317 987320765 639531144 792383607 244804245 867491444 25633543 788127342 946366796 998962137 370510360 834357779 332241759 786396022 56606589 536359454 666743095 789433022 532661377 909080520 411755715 478216708 481156411 915670275 533926524 613605304 833181615 862937690 912276687 987664299 677067704 881362858 8439941 27093412 472595071 954711739 442920449 808410937 772966701 848867331 921834242 938360865 300064750 891468044 703745240 846550934 27250445 281268864 704716861 836066164 808431366 829431140 788258713 874008648 717836543 841455563 352767974 415681519 264236919 269659059 600222959 686835644 255372128 326113065 404726629 913991183 60396607 817727112 555223671 782678644 839127129 944837074 207621002 245524985 726582552 859674863 616346752 884852097 964270073 967438372 62384323 159636495 506455277 684659782 520322163 972838824 171304157 467301447 578695626 734359511 907804866 916109184 562194353 807032205 512985131 594553896 187221174 243676507 448541444 558028119 58380760 758613645 392060814 738782703 583794921 748238264 168833019 369117301 297690117 719738114 186587350 383316137 677964965 965663105 391001425 497875083 583931684 796817924 647915115 845518293 652313603 800002182 639266421 803735216 419897416 482021345 373571116 694602624 394157292 441303857 209961020 497885348 469903146 657021045 262113540 750224254 938077686 979101515 66875439 455517051 172204297 897638260 32851597 281718007 50275939 649063694 572336831 896353548 43398672 215575012 340774197 814378085 333142352 734198841 507682448 737033239 873009378 967157134 634265157 818566103 614918212 720895965 167368586 462461054 614625447 890367449 872174478 882605462 448951847 482877834 936218914 981227191 614604975 903929132 905068209 943478344 964142914 998305157 341119089 431246096 1224998 730278480 203969002 555489905 824153536 898713718 339818441 770572282 871006970 913759963 142513326 348528788 857447441 948456650 201307981 206871540 85302064 972825237 831304461 983184883 375187411 877908758 761559913 985509623 486683047 793073100 666987618 886584948 373773234 448791606 221904471 292501295 631318691 669857575 80304824 591869343 246403416 368823500 485886521 567177818 404141995 475587049 705089092 992230653 938065894 994836595 365768762 423523369 168183789 970265440 820319135 857365532 503215998 524333187 346091761 973762701 768035962 905884793 488736489 979409691 186376519 807091257 232259920 369836764 240465827 259498942 690708549 859477456 274049404 626404138 543194059 607298810 359433632 841658828 805246933 936498804 599651356 817016707 602476605 983153345 964242246 971940626 911933627 980593329 808550944 854486673 510561259 934851606 495390592 913040466 957526403 958245776 602830111 828111503 483619670 543373355 982243340 988393156 412988941 589790577 344912500 660022049 888617385 914189969 323953726 793096324 523205156 938415752 701829815 750079307 400336726 514943157 182314626 735793324 971270372 991515738 144450277 238882190 400684993 538929996 673951055 674313219 868521639 902188787 69087573 437733931 189521669 209575253 559935480 751083100 106368620 999630398 462254627 744671991 745449761 778989661 999555776 999836200 159290471 827479908 958903236 998440477 582661309 873847084 135845538 869130757 443018691 955246219 931356241 959855569 247287738 843587194 107681172 907664469 535678795 655464793 985441018 988892266 429227717 852479841 524053691 973439652 631419399 683147372 436622754 484674761 832214422 982811768 267173329 681786184 290259412 296599379 752133345 781925046 361620919 930904460 504464150 705610883 834933752 911591691 122234512 274960085 860020783 860867952 703317782 747881047 86396083 557735380 372977404 991455956 520628081 557134297 388354831 524911254 161348610 208772674 711750240 964596395 480892351 918043083 749640780 990108906 916076343 932196463 264625439 602901883 255061839 447691514 821101039 827022342 202079920 418048065 735423272 929229883 949657269 978152255 825606465 944673373 112531666 885586229 909994344 926987319 456050668 571939921 786919530 839982916 452612744 454969774 886240925 965178258 354442837 676996801 559875363 842479145 814015292 907086809 622099170 760918113 825322983 831567240 534296125 611728416 374182573 431788593 852854241 906727657 176801072 449415959 378342747 977627641 455774043 896049385 593181826 967387637 985392082 994582819 976717268 995032942 321198285 630489074 965164598 979630654 730168453 952922229 530625587 677849571 569656840 961006398 167411870 869364843 672687381 895945299 964011183 967362346 106809631 686321471 442833695 603290534 786586902 990785298 887137957 900207985 765958346 977053054 89452768 140192434 231502415 910363307 461399899 871989297 679860994 680676365 520818724 656855261 774085617 906326367 812549391 895017122 825343717 931770431 524026624 593105814 360913730 612467769 896523047 941463810 339993838 834123280 293710956 666255127 424293748 978573104 383535856 521567947 101970988 455673005 292298062 836803586 768906037 862331683 62830696 420775607 665592300 700020350 398488638 868364805 223668853 805210981 295386275 800582418 485987144 861604885 912518865 937768540 334489686 967498741 988562181 991313708 786263307 894981504 984014115 987521110 836176091 920125667 415203701 418687202 368879087 655335313 313894927 474791173 496245985 998406469 300166866 528708844 515628129 999337307 882814759 970064032 431487843 884543455 498282508 926873614 697192596 982624647 254847794 360185222 466395263 768293954 826430528 842959783 73148114 762128743 522803794 670968534 947958208 997321098 722204132 727503917 894869143 903316447 572591936 908865695 410284858 594787440 133062030 547173185 814699781 933361689 853518474 931694498 928604201 975190839 568071103 751870901 615815337 626730238 552073844 996098978 273603360 500115479 779871328 945286914 192053188 948350754 449977604 587626177 178718685 206385658 967462323 993076061 952998583 997631510 132402215 450746369 34435651 204698816 195822417 870557318 559014839 875031611 429729566 619680605 230974453 963615757 787313385 983773073 399773770 710696604 861588434 865714582 254556560 570523279 889043113 994879810 507909537 972918908 492601654 705250015 774220936 800330976 304796980 858897458 770523560 944661207 570321304 744189920 834450748 869187767 348159658 398692208 784454916 895599780 615522165 782330651 917598831 924455502 59944460 718364112 168468464 375179554 805596898 964841315 164952417 689438188 544311583 627124396 697983786 940086912 688183867 767812866 626024551 672423784 133023449 868254132 552461727 625652003 523556059 802248425 72179313 983023203 734379802 778936301 586671625 734234243 598867790 815231041 39022692 653928328 752241944 792368316 981095775 989759422 60842266 689934475 946508994 975629139 850533664 915107251 808978726 933017563 244032408 439215003 141602834 469352851 819744304 960203282 967283802 981387188 932769578 981244256 720777118 839630807 179379746 627501228 582197892 928177197 307276851 596627547 878332183 966853607 761762593 802387040 133025831 293570791 550392484 835213454 916860567 967527820 911912678 972526235 726442933 973152656 258505384 929586407 892547762 895836588 755844567 845740460 683895176 744931204 906717731 970726855 157297361 397208856 421332020 524204442 595301583 935928175 34085713 544409723 66615622 232489767 150380523 710619861 104738112 937300691 845348146 849525577 948398282 966800755 137397522 194604266 584373602 839225576 443819243 717688201 905379736 972244705 388436341 812712439 807170818 852458350 959159924 988596256 316039414 349095063 567063080 865102279 770296772 971352975 759284319 924835120 67273388 562602746 65037230 679085047 819328206 997625400 993469368 999770418 372615017 878095538 331329095 809550089 535142752 544625108 547182564 829428122 26372766 769487768 457632412 933047256 708065170 731499222 742720686 819109161 318579783 896032154 975149039 997925205 606190289 750832293 93630576 781517924 157511589 233781147 835425322 857732394 454511132 837108995 648667057 783154984 592400404 985075905 908425576 936765774 311964001 858501351 64256631 270863957 592102571 777200446 740031887 815704806 801989638 911181206 451040570 945140485 760894247 930624432 527315296 775327726 374382737 437520475 639868775 678783334 530215757 549347446 926814777 981496141 11567107 165537688 880312734 925432599 795264506 975585366 447281160 557707102 629262384 864807703 604034354 932711957 701562630 901397614 979609006 987172656 953056725 975423785 511563386 571164177 218044663 856909193 499525281 830945191 687446156 690417940 922189806 996721879 300608886 871868920 136834321 467011654 982215938 990104985 354021359 903610256 45534478 574028053 793495434 922214583 138770205 327873915 178527940 348552661 127292303 606406456 405573457 602695264 801371333 864662176 31503000 718063554 326842011 893379633 256373506 478647785 5324857 366850289 129794993 278163857 575832193 799999011 116336712 409438047 253272886 674833279 765843088 817222914 356008442 490587077 283530519 437966388 989760494 996956808 686866823 861247280 382689450 998165423 555310796 676034660 328430732 517841218 124013514 709279213 234695738 687790103 522609832 563433847 330879828 988748450 994104556 999935803 235757 335903572 153788164 431289652 401463185 611599085 646636439 924060488 661227710 862931401 168580758 714345624 537045976 854039935 31217165 310228973 976852997 991796941 88762456 209970134 535010863 972122795 802386919 943202744 548953543 596752527 814118170 816694303 419619239 619332301 899595760 911205633 629433645 936849610 282556446 750295442 701237321 726347181 71195483 522640932 669135625 673674899 739524819 758763565 35068113 525603999 586299610 765375191 329283944 628130228 176318825 680352700 982318538 990065568 906539449 978371153 305670186 969014623 444900233 689202877 593826840 814783213 707536445 872426033 88224755 876569046 419544289 603906546 573760078 907365486 788545794 793980748 52790946 525852350 456728778 983154013 731089877 982803454 563290400 859455112 796570563 813480475 381150638 864318567 951929718 961153515 545718369 731904390 898681327 916234442 55717758 265172399 245116023 481166021 791451068 901459376 671609795 758302880 330513112 433805390 860436418 998469439 291030549 406396656 330574029 946445114 104388219 813772054 705755459 771369681 82014252 582509470 901025809 970099376 311295715 636249482 819914400 931750950 632647326 964538133 402457874 512191754 743616523 926510322 424819046 453070975 56431447 849968219 777756111 850406591 28853470 787561573 283527008 693539949 583151947 679243991 70020298 330456558 842871051 996454386 411558106 655926059 110124861 606179632 783159439 889878391 857678710 939816746 232577897 743725883 609656437 957577876 162503100 813699669 900747146 900871243 750483302 767243417 696350989 962581032 288867975 300816699 848163809 863868547 443584187 700526002 112852902 129919324 143544205 614398680 785339786 931688242 888688827 992398766 85845205 352196884 63236998 510733652 607192255 854546266 544428415 820179381 207514710 899841645 670854118 890684873 980898280 990948527 950875540 968950583 390644063 759722850 233505335 269752049 763911290 919365307 994405667 997916067 920296240 927092279 32705714 961157329 730500692 965417279 339907884 385134221 373074788 432208379 26204251 882187709 720002297 993667240 491159150 816529678 955394990 986207488 521472668 653061186 134084763 376954726 905671531 981985899 463712092 982625765 503339940 684247528 660810003 719823076 250329206 998351103 993344733 996654775 857386502 955944128 226850561 701568738 790108494 976467854 630737863 980931122 15495380 991773457 23175569 184212909 670686813 872988080 168106841 938988754 325402061 998890853 800828470 951299130 585126087 885053700 69878222 996775880 379953803 572636456 555069229 642634803 54015969 853157315 993676061 999853209 781492035 975790863 805917014 936594813 93016846 641270445 18595279 778083947 674475036 907866833 769728144 788020094 715363406 827009132 674763130 915006048 803124045 889216601 957582314 960597436 669309979 838160409 287482346 743754720 766907209 833262681 131412741 341230608 569313142 575705293 664703391 743346734 593339638 850026911 770989671 919226904 508042417 603479404 96547877 463694032 599923881 833617905 359469341 414570160 467078110 619989036 13560384 804814335 541613018 885351273 636723828 936326139 234177922 803913235 210204880 541618518 642599150 707218156 787926110 971226097 920768252 999990915 661294718 695369189 874346909 882803937 45424563 789792430 648910678 926247112 556108633 803672045 827102177 945825072 521677675 777129343 203264352 312160805 502378921 676350867 269392368 613776563 77751144 801504884 322046858 642948540 892687156 962922661 956707846 970675976 534906933 773479979 599512823 682810815 136424076 935336422 397198453 779841124 882162194 972555080 817596234 818005150 178522045 885076764 446574932 997031135 355499529 558605004 327326980 867232503 818699876 928224165 336369789 665279263 488609060 512344598 911751443 961436604 32894188 128541439 870294143 913885819 908456929 933184027 469852465 752901521 287515916 790415627 271599732 409363875 589406617 970043119 97905190 100961206 347060397 730181779 518409598 841049467 157907751 160491122 433571045 470793438 77093792 475087372 669508954 719949462 471605616 717677997 623877674 668770599 803869473 857780536 31995471 784716854 276771140 417815183 35890082 921999438 788601290 789723460 168506520 747361663 693528003 876669917 88437470 667083904 139746852 560149531 620472398 956326733 529459315 887358028 432177644 991405541 949865252 958784535 370983 77265619 398660929 918531416 29083365 286063145 286184966 844853512 31795146 464527693 986556646 996563753 798946036 985250986 257127820 792907958 5059897 807793867 755939494 905836035 956852604 966261561 96404017 622007447 175742509 568825800 788850728 968583893 408248299 959333832 517214023 566455884 438251207 696814236 81289798 103084367 154703211 931787352 712175381 765541321 271171838 877854981 376150642 995348900 365568031 524232759 944315630 953021742 833193489 979358578 433449593 998504378 47339583 269266692 443561593 839097968 240592963 396088542 707910860 979042306 935454891 946558029 621839784 699061994 525655243 954432895 822577263 991565277 79665383 199947104 293973893 448146438 419771876 916007271 457253330 695832420 335477004 397268563 799728082 978515071 513957389 931208701 421681661 476314639 718255856 906481901 6653804 811452307 479995008 867265782 265143788 915059213 403229680 415803588 952239376 979675786 710998022 814601966 478212434 551564486 731139144 780975508 458404484 664401363 246386797 449092130 689806103 978375999 70277951 294696253 434776389 928850203 822302099 880990789 282240235 896986264 794462737 850762874 783144123 980167605 658074399 673994162 680410022 776714328 788068214 850568113 717623075 825856467 105022684 876054489 554312941 717255988 862875959 928257292 720961446 904184348 846664286 935289902 351654156 743729210 609181749 930817678 246328098 421306114 175305476 329010881 301329178 591888059 545232893 579936537 258317368 450863658 327143955 999857099 809296686 904093632 200289479 813749123 204897575 633037978 79473862 939422747 259491926 864340062 563585802 900404763 846358548 960483410 753311480 950078372 845803920 849247907 536351232 627160106 906467005 907324350 663036512 859945942 927860852 946468020 937586955 947450498 553510729 971682034 38004122 695740158 915963272 979719153 141396144 592388461 855414172 971273725 450227740 775088660 668300736 875152017 719544462 877938365 893030314 916404499 370782826 760922056 334766020 953745034 72691302 206742895 137649790 665324895 188841976 434292344 107032056 923897614 107161080 946108005 772812416 810207723 105027086 243609859 279928468 737032956 993995850 996841214 633454964 701860741 853764490 859773290 812230618 988743042 726400671 849120016 232060490 339241540 946583787 962487226 421962385 422852731 816772757 970375745 676318898 808933310 882731947 898671171 350288588 452663299 947532392 951620433 641844568 942507601 150753449 440279697 683743841 790921935 888630477 948685855 323519008 590155181 600217849 643588904 473832631 621544301 95964134 229651534 519391469 623372467 512340895 848702373 901296527 940223457 313130753 571333254 867662454 900644822 711980958 769392616 270390943 674426203 369454410 510581137 261468581 789789322 776961198 804766412 369881672 503551978 691761446 747541081 469038063 855935576 452383133 702257814 125960028 788904352 260614153 568310400 982835578 985914701 752950767 871046175 331760371 462848931 346116220 406594556 17981908 467122324 197772641 431785937 49056027 481567369 606474432 803724108 209809823 258198555 908592991 984211693 483140232 768995133 713601279 951384230 163158473 478120556 565583265 890954989 466207567 534453392 163020386 803774119 617018147 792845006 108202082 718966956 641824584 872844010 631151204 647373896 96390546 218203243 701431710 960708421 716435040 973351364 682505967 977896942 364520844 790744664 554974893 853735068 923926608 983019126 974455420 981843407 978276191 989353093 494642119 819720067 947602670 986476584 1820456 859977079 230196266 524770363 245861695 485313367 990939211 995586780 665879791 947844394 506056830 515276895 123312823 240279438 582683853 928347105 852033610 948640341 457942172 901713691 875501592 975705804 289932096 899976863 126206932 868226134 693250186 811584388 47090637 432176407 383086419 610151342 200415826 603529281 699743949 925697321 509949884 883566139 794752926 854622365 785515739 978015984 497275707 509724789 169449604 431390569 701463266 713299832 467181318 762676521 848427115 859785654 148198927 673016537 462092813 829410747 97941638 804825778 428640743 713694279 139122032 181389073 785644211 975125314 797280033 833775469 677032584 805224274 104170272 750329427 93156733 158711310 875470173 910898912 88346840 515024136 435212449 968875587 873013221 965816688 346331488 689609067 851899382 950721082 516018163 715611481 365329680 831600780 558057639 854492605 80058498 811254256 715643857 943337059 971192167 995551834 572432659 855808859 919794904 968181469 198425031 532776926 709352399 918474190 516073123 714581602 922056599 961565415 989785670 998738104 77274689 96967377 217346913 824584723 601785490 880012813 379254711 450380662 150910979 852428576 650429682 742288070 823882245 954435567 320298893 441206773 702426421 870696166 400877869 545845842 110742635 947116773 817040859 904048806 135980010 468495042 453568629 829145493 204591821 660234992 867847642 904157821 814952268 850695760 184007164 636972721 658653083 770439026 8038395 335027936 70045126 226345673 203666479 825130686 971955331 978150609 263102458 455825460 687312625 853065439 361768921 743924594 531730300 650909287 514427215 861849004 134064899 452729598 798357186 993212059 761708277 775214880 520628033 888976240 56711011 582515343 583756712 669365787 502616088 779331848 986389424 993960444 207363314 954419224 887510030 939680533 474673688 614027430 422011971 678208078 694231920 787654530 670675638 924801481 188969542 700364560 494343125 960891023 578772629 728712367 510221799 691482682 394805523 801447417 879788899 922316966 402807968 906947243 698876459 947034938 515970278 919774619 337831280 905055438 845203446 994788982 678240069 768758167 474819868 859148482 31625343 772027617 947992581 989002637 465316640 584869072 758005970 865815766 553226557 807986642 668367052 902082581 858177064 931967439 549535343 662987904 912585151 984039165 364261326 772997744 602087911 602735626 564048451 817240585 500358610 947074292 71193224 370749763 385520515 679490132 730871696 859471340 871868712 892811686 917857054 940440152 535658378 808000001 71720425 516635670 656767143 966995298 644075347 962676242 933637148 966631942 750084762 974409020 150984753 332838082 228657602 250931280 950838771 966562812 781455107 995287434 877540137 961695496 755531731 765371032 551769986 875812239 151882532 702157184 184535287 607178053 93957198 666523402 930143693 979034634 503908596 683831181 361154885 947446951 798247607 828623476 460983203 889928806 298898130 621051701 832487839 861463049 698720494 937417346 37213988 55325317 547047579 645721760 704807869 814898440 206188970 580518996 614694720 986249023 415154582 805691408 191710320 721681074 533943061 717829841 464415683 695875909 600168385 601670229 43979038 140186380 107660610 810855921 422668458 741189454 447740257 809318323 808078184 846533849 110059671 620470710 257096207 408152034 1264309 119775713 854287217 856864387 794581962 958093241 337650962 642261856 423049094 427822317 875481128 879254830 492375613 789969445 630036800 984533006 281369967 640937959 852494263 910210492 964952322 965877189 716896721 762691329 783566045 986480531 780394737 862500712 789560925 850752763 56523465 807203603 594963114 769674250 735333150 764951552 370688402 551965839 936971152 941292566 700676906 706655152 696670475 778419769 49571184 999035038 667724403 749302482 703330329 912975867 77149288 198316547 260893442 282915016 920881302 959096436 8350616 726826289 203199431 532512620 88623718 332761211 624489075 745570606 603047301 963987848 178186281 305828503 764992339 910051426 804267816 917625775 313575698 993495957 15067730 435757577 927516626 953419475 592512220 825349659 61441243 841015517 796555160 865585846 193067851 757134023 397595541 535609047 849426129 973677198 25617463 380906310 137327783 235783675 526867648 906620359 796782909 898810298 38930864 192616361 103790501 563971957 960046113 986085416 302817280 456984205 417215281 530987487 387225422 466294989 67863618 456713242 835780892 919343158 392197293 481818751 597446270 688830326 143678240 703018761 458282821 786009250 250492616 491755053 324741297 530395829 597550156 922711015 821186481 994790078 441972684 717579285 433059628 986489100 974632238 999551848 14744069 127930483 932984639 938161581 605146489 659297945 791762946 944072892 901927347 959342864 663249095 838464524 206499172 330407968 822933914 903052628 78456699 652044359 850284867 868358361 22635375 942461574 373677146 547720172 512986862 929087339 187315312 671598681 693512665 986828887 325108873 389909608 879766513 983354891 156831396 211016550 683030082 684029860 613323201 617490454 527275214 818024146 506343015 961354091 889379664 960034747 227831545 900138779 8722031 758037221 570524684 633430597 789981564 796986301 285306015 460453139 938281641 950188044 43174153 390736362 209625616 425036722 50749449 457713675 57405146 446925695 58165782 536701157 308644661 950613480 271264381 499351672 325893143 987468888 294076428 302235936 474094253 986590113 343420925 613451408 598003194 625717210 804254964 971123147 992944703 997319256 865406974 888791540 513342600 857080518 404525689 479645312 688595946 825579291 237189641 978360144 499927808 905345671 553711078 969931753 173493577 867826330 208103753 628611817 668032396 692943203 389029511 902178133 569634395 915237440 621072371 868598562 375169361 983789215 754137664 840739066 98066941 153683976 307456497 797478242 96309563 173982055 658969965 822172194 457893397 747033326 901907632 927747018 680176470 876002056 564250927 714969621 991583018 993758250 537624489 700760002 285285177 831414276 420394940 734363175 66219692 742843729 706592815 786970090 493135757 742827157 942328557 981703328 333718420 368648010 892526675 938866128 287869807 468074973 9718582 440674855 545921129 771079713 787171786 848087765 735642135 950971858 603445129 884820923 328762769 815174041 109304416 888579770 50174034 358987385 307796040 684350007 341106512 753778412 746727726 883591057 126821286 399424827 642454470 830275537 123616240 332670544 54311630 108859084 540577587 564001358 430074784 914604532 68169637 414356075 782075292 906055807 455399469 584691513 63869047 134823078 202214400 451863812 260897587 995822538 308878015 418667549 7811233 185834842 457971353 787745464 588779945 645359167 831824534 837703621 612478384 804888629 858745097 927763579 92509171 459031669 481726345 645457907 29072371 205388714 329232387 376844660 398805077 693020976 639429143 911932482 629699992 804369048 64865843 559715280 550183293 656532165 33825122 482008118 123947395 785173158 282439909 353489450 705742042 743778581 800026234 914529585 595555902 880298811 21935610 271526480 463124653 554221192 410704651 898729304 665681638 859939618 547373319 733766446 457126748 465587726 213126604 297915302 651852952 744981376 469129053 565489240 62489450 245282211 160644034 386965424 229950108 644822707 329115676 877901967 944334929 962698664 755448087 797007876 722466561 924655800 808517013 816585114 793078697 852301113 648736020 860225320 567825336 915993073 746966567 941871384 258160932 387759237 528823834 590847445 321651764 691547410 422036894 970430567 774570673 891452450 297315754 467128128 856894138 974987801 96396621 550032344 347445395 407867177 117682536 603341571 699522276 843546266 689353013 998158013 171108825 440609421 144660103 913082084 900723577 912717000 706731689 867296775 143355666 474180815 247876874 393933875 314326027 956287251 111537032 900234732 139837745 433015847 778422421 904394604 622746902 829443403 739066719 985174047 87416688 586297442 710291220 962000413 875910661 907858607 529425687 663266320 677286913 984890166 460795525 745365195 551286720 810724613 302110894 630430769 633679097 878434958 557880904 671675989 807435298 898434434 661234141 661235229 134171477 351042854 939893530 966323862 172467932 868693286 777921737 901288066 991944255 992707495 424680924 637197339 223525847 548518917 776563534 855163859 450709900 730803005 936970969 990173109 307077462 356004709 269905126 683182914 594360889 632936409 144411332 756834324 882405914 963132027 787789451 835512775 844148516 886853215 98873528 416854599 257512619 697910715 61840075 273103523 872804151 955995853 2078163 173368877 419478679 491216968 457217642 973610577 484942590 779046408 752187586 896171250 309949086 779596098 647278489 999869309 243714440 913112643 194546187 778763484 414736999 445085095 474512784 879099671 451036419 985761744 524362492 951021987 564838003 995390109 613431085 837901201 366295129 852036694 286996993 519510209 577719490 603658081 730600392 761460663 991814067 998161951 799490686 823601381 857307222 972936956 838271856 978299619 242911403 328088388 509732120 990567045 817109948 948354407 75356002 830524788 545412640 840020440 560392498 928765017 328639916 508983524 645164434 648714943 335257644 969607488 750270166 868178230 570838368 997433610 83586582 637801413 226424839 898048746 335632877 364171869 666124434 831139044 150466454 615187218 366806707 506999971 150420559 273337007 350093233 912344085 360372753 891497610 312887355 968851755 148182808 284686207 705039656 717575171 604570672 873075355 893445793 947027345 932671522 939409627 535358012 833331508 729513421 872086316 460350020 592566777 432130857 461772481 157529051 973387805 124952141 548771291 280497940 799634865 937494145 990829748 145423971 657460411 147762298 963947897 756220539 967474148 688514746 878022894 638322914 992769870 859939860 966805826 513437178 556481592 783857363 882301172 268643942 522888190 579157998 760699092 41748593 116000120 692047169 850426585 267380887 857834570 304753843 391726540 246315747 582837473 75399406 816541712 131426890 516449129 601842056 666220812 627198129 779908776 996188940 998762841 385709482 510560089 20206514 566114635 704139330 910066853 971591301 988022954 123177946 737338880 153041796 178140330 217338590 861061196 127173141 493550304 284507362 597016101 44618718 219530886 962990974 968897868 532159343 637824081 292533933 526263627 28965916 737596607 87343072 256440815 142569908 252497720 817063267 846498060 567192606 792675110 577308641 930207312 74146022 365063385 966372914 967859570 563757616 580012157 17751629 85795657 949982056 984475630 573219576 622283544 291464512 627508507 444886001 470572071 990711710 996538386 234293435 615265037 116029729 568605735 919603543 966809942 157991465 555904481 202844455 722594051 672175702 777341349 515042122 893411539 447446558 478037874 432149765 527706023 510065777 542018020 23700726 453360139 483124622 848074466 781363646 967893871 470080093 471691386 727364641 814972481 309515969 498204516 857965484 862191985 252776176 539522408 849406756 948805010 205791333 748249985 815846877 942896858 960502938 993165658 406114698 688847069 787001745 933399916 938843366 956479549 753628976 775160777 379072749 424372981 48671507 961972873 55796056 812206533 246214689 777698494 369480017 476180769 662338811 898636428 991865414 997937630 972777573 991222179 954502849 999351085 749125156 872178926 137273190 445510871 147162596 641962065 110101223 369670470 537212109 806372261 960228574 975825015 978373826 998851801 606935919 945468504 189087177 559542776 673055113 772623229 892049870 919908269 196938346 421829477 74939017 947580585 614738343 653320463 905000335 988413610 493257551 516345942 24820582 334929000 823744111 872003336 200807139 559197405 954128430 964723511 250371724 615421533 523062825 978236594 169447782 824558894 77013346 514653955 369790172 491804136 181752403 401066531 15375707 553906586 763266797 835044710 982909972 987705872 278182969 346548877 360678276 682857293 81758136 826385768 314775128 868976235 952847091 970004473 332999815 477774314 418223475 532565600 217740145 816792505 374369518 580548294 743875622 840840057 218508727 704846828 612046838 676888948 714872310 801177444 134509986 418045601 942321839 951757779 240517292 461077020 923925794 986262638 958829476 972209544 954057937 976574702 584158566 957114755 174585877 996635697 424441813 863810784 439025490 509086667 699028893 881196359 841828171 967747854 293793237 483663987 529919808 653298352 4919341 255212658 886303430 933628008 265232378 413206755 307016025 677093790 773870353 829651732 18899654 957684234 814525577 879732858 417617447 427626287 97051827 708110168 642338580 698346434 887059239 929916388 155301500 934552053 836173564 942737249 132809228 362808717 428450127 647794645 161430402 617815581 483024012 536883272 783836497 868703145 862563108 881030197 426794605 636495178 858149089 864895452 25725715 709800534 38678670 585327847 345137713 464379143 54177382 387837412 370283956 648649049 664129037 671069423 734582487 923645842 155248233 993614830 423628449 953250011 628479839 819934017 839992562 864756077 468675485 543397962 279796259 561708787 66277222 695153313 619512036 959232284 115399059 165009046 236628842 966450810 632241543 807291536 718517605 978619122 973479663 975985773 28693425 787136059 520905799 924093571 600906929 603889653 18085044 975539476 657361059 979270995 40815214 593738756 581732921 700302591 892963368 993906844 914046820 952964631 670408469 686922314 22346013 627998164 984621761 998606694 103874508 808463769 363591207 805202004 532336260 856043567 315985621 674098570 661732381 687397841 800547916 815211609 96403071 800766804 179039889 641025309 373829339 595841865 336118820 990860643 355839385 443034135 836106800 995016023 216891001 633333401 582321954 640766182 192719901 810346346 459808192 719188323 583839132 658674097 458360623 532839502 847992702 915051518 143261784 494345145 678192567 967782297 518411350 856949741 571353333 759239062 672028024 796593036 914753402 983842715 802416813 817857032 826981509 935015055 303616058 548726042 571320407 938079200 397471365 855222030 409178854 923837729 292673634 670295066 737448535 947277079 506122705 617899969 927824118 958392408 986792106 995786901 424892765 510295517 999252608 999735031 130200477 356283366 192804673 579163184 898647181 957283941 688996509 763234790 901626977 984652883 518741473 804680695 576227457 826456067 163257732 904684672 876372451 969997952 121314352 380024230 520183623 782560607 442484123 755815695 202851341 756315870 19068540 578399188 585431268 932805996 824954294 909197520 663814891 858101658 679582580 830240311 585006136 669144068 938040389 989901958 490483034 660379713 836884945 971438426 364609589 480695606 917521850 996758095 831051071 840303042 247021875 677112103 207031431 781549129 3015093 106499385 624005411 891970677 649553114 719258046 519510265 927521249 485155331 746632055 793005438 852114415 144372017 812915804 540439902 621755102 242777741 981954540 773197212 937382129 264017028 850562578 225657079 226788593 809830447 880832686 366684341 462538951 633001625 851444415 710612451 945719511 83915226 675164231 842785237 964195205 436974604 904747766 386804103 642668748 239090112 297709982 784156032 790946805 226367061 568843663 345769490 935643053 668005303 902078589 384014721 764366903 201664475 359631854 316932379 359614554 405691055 954730846 947351147 948779537 340513682 468772251 403378262 694792334 948631004 976028461 369445885 910800592 397804222 869579267 461884223 659604502 89738584 508455907 127692081 476019653 935700896 994338085 359815141 596542947 915577297 989840052 164999002 388087194 766538981 993915338 109681574 147280121 862259163 931074493 234401949 948351378 317097020 884452593 256918069 323713021 110896449 416345165 162625607 246025410 526346619 923154508 339101123 884271216 779384030 922425614 425330152 709897061 263793726 374257258 855944142 892483757 480533521 996983996 635125732 811198699 497394476 629775043 625704467 931343882 200359390 966890324 599618209 680095902 483644675 554576589 112917661 178376529 783799935 875089162 337824405 747091593 103827256 364100624 244874324 495731533 686961638 954888178 830971860 930806106 110434393 789528276 622537848 709312626 48207508 827429289 586386786 673107425 651253791 733836382 69737360 838277551 351136673 412300000 663200485 997339938 458436764 752434424 218674119 276978136 761304603 932661325 89204600 127131024 168079412 522632537 564792229 576390342 538201206 665042483 627390366 996212490 803140622 856924705 381836716 859931741 732726808 743098243 651731267 873996211 147566515 947743571 723654751 745397284 477448478 941291887 930772267 976838704 627773649 938121433 287154646 905671110 471344478 775036626 207670501 689930623 662467688 755584258 600330248 731909921 873819477 939863129 433197709 643845551 377516957 854763926 59585306 245752022 548108445 688357098 157851285 965404343 724266926 975709128 18319209 822195137 574656005 713871337 472471704 986565284 732094898 987439383 280881862 350521102 774041198 807330261 16727395 366959169 495963617 801151209 75460491 402132800 859462345 907683964 437612033 951873686 489321599 769587762 264631391 495082042 257492128 614045603 627608206 994655054 599491401 933564613 720482488 981004423 365029834 759289691 521107643 898603847 667270505 903844021 572642713 649973850 689813949 982393382 448528038 854085650 769792556 864065473 38018692 361838607 446642168 576489668 385970019 430004547 12665359 354566933 197639178 646964342 349351680 377896862 450424100 700391378 403933350 647529993 276691194 452533833 776521800 876488695 532725357 940730987 70057487 557696566 704401205 837918410 129574714 293037109 210265332 894863007 336522487 724951136 963517711 969576207 774812229 866699357 487621099 626838236 698489279 722816854 798803339 877481078 996551765 998340672 349398006 969677521 259368399 867892005 485872772 544273213 830350713 890745601 421294821 702042175 955173249 980644818 4204387 242272156 580686171 729868935 752215549 790901399 127842903 888533970 939960319 982797739 256255458 654162617 124583012 372615244 89606409 925160913 935932186 977755458 559222365 826344799 491057767 552091544 600684470 827876256 450591964 450598796 331787616 580397342 730119511 809047404 835158399 855315988 142791018 676140004 199092552 220460796 400805960 620567695 667730295 712283361 500810660 527991381 451426842 958950255 333806683 447950323 280677305 342908810 571597423 958897292 746251471 871604544 47852116 824991680 585722645 734632477 928233415 950535283 294970135 476862020 6188441 351092409 185015468 597048453 878568919 913483866 151953471 823400946 817288665 927830438 654630356 981485332 251763416 689347766 482668884 823692761 573141114 854495943 664021442 864483124 738953399 977366274 182729587 416876586 152170356 797443229 783786750 981217136 362626869 567537730 724721301 931421472 209354646 769828348 262846467 991220597 352440174 435546904 505203125 550190702 235061850 806563798 722585613 851626477 319711299 844382439 420807449 465828805 192905164 661404634 304357789 660576851 341666426 819401224 990889589 997919726 906009048 971603338 881076195 948824901 461177378 857892095 378219887 554834132 516184949 963363581 140542596 409224102 55306870 304818467 36804938 559096198 507523100 825527684 186497878 606761347 545396345 804744164 822657676 954691771 51145269 307526290 576491534 886588647 345964295 731803534 147599178 422215234 680927629 734526403 44927916 680144846 692679136 904635550 40514662 199681309 246956148 498811907 739673002 940747596 923861774 943213753 303501660 924291800 604016450 858765194 207371653 722673466 216560430 871776634 892382220 894619873 121955942 502533499 491908681 586304443 993428294 994045548 210580743 438100491 201626215 966684079 494319992 654974270 249466283 460425329 645550108 702023410 144157866 253515825 662868056 976389027 7370222 478356429 492975257 944249332 631952603 643035525 226493856 716632196 443130408 765562216 708013443 982419682 781245002 961967514 953228225 985310647 18200430 147049298 933081728 991697729 537369801 800233253 526196328 684151688 726541072 739929297 962835518 976704549 127536687 400831049 602851826 627057144 500731019 878858950 158048185 849723862 994998782 999229957 789537222 952320250 673115878 848785697 760995621 920868166 312491723 764415753 503299709 811953066 853949488 926548078 143559254 830956041 274334065 986465610 603949310 707095515 477196876 803856963 47330321 599047533 926138711 938108031 147054450 186801569 463855483 960459343 827184172 874003101 643354741 919509643 92790307 695175389 816397455 966392844 556401424 843481406 652728725 936308050 490302278 500445197 978295765 988563764 966037236 984999464 853413390 904729111 672832956 924934853 846447528 988533785 503416067 896134914 534020706 926665957 66098032 254637791 137454405 551009041 967674172 997199674 260713560 505964057 764635418 961024980 605231812 738783907 258595932 989127900 471265175 590668304 500626076 808881015 48267297 402818095 953237473 972723378 732841267 938543027 661965652 809003219 947253060 978109499 306536960 406320446 606173962 805162481 928060413 949237419 42979783 841873189 479875763 563030778 223209517 812306563 957946864 968989222 978196309 979054918 388874821 403802839 279344754 520322267 481474237 986717587 116927042 873261887 729455470 895700338 154352757 580624035 510708269 631736712 288078264 651094341 727837426 859941882 696203757 745184222 227570413 703683596 402774073 550313952 878971023 907834796 629767583 828327310 952360125 952817241 288625064 402357498 60934377 742261257 856237528 931854878 426351769 575523075 67683521 672024767 977551404 980168146 304227826 442637054 205107143 421338271 134719035 697398989 91365978 341894421 625315979 636800996 723403698 826307585 128498947 914559584 932473303 990851433 788102753 942077714 437722039 550331210 325146769 330880773 432092252 440660264 771076473 911224893 378975251 613622274 361106617 969221331 739870365 935534179 931612389 939695039 561569 74204080 42978795 464783734 564675968 748048357 268532963 507849140 43941538 89129531 600112805 685601624 604092479 825467110 792987743 930300079 126573230 460335240 345608305 876388131 263989327 317084059 681004368 944266025 656721833 999716344 378259102 755631546 809860411 916162162 10483958 971423406 252461272 691802273 442468732 967978342 790263686 992357975 975041710 985526430 844636058 875027681 830367671 913925404 223750630 280934558 252308058 607729102 878033839 981303985 191942404 701425135 421188647 477319000 858167470 899381882 898176767 946419056 900026473 935301342 270192039 884157589 787552828 880003779 40904849 905965895 161244232 623970634 950559835 970843830 589714673 951231523 994202464 996048746 153645196 865528609 815740025 864126517 436158955 788859728 666348529 860114988 539145511 651090884 274829917 943709137 904016830 960348638 857329714 889019184 755253696 998550937 260532477 739841830 407663580 423555403 584312603 924208594 202060429 448380280 338056003 397498495 161550328 322458817 493930402 500631554 185167323 610980932 712999227 726548868 36356200 327307214 467700005 755741730 797064005 916873582 233991008 308898869 884387663 913648148 442933588 476030363 783969616 880157318 172905325 655878398 438261616 510540359 339792621 800307388 566977603 575289623 753618177 764351705 194617984 800440155 121935405 244324809 822606963 939365310 102701327 920603900 367803172 634314169 692573197 740186657 959103180 964662387 499898449 953524474 618439336 969231620 369477110 493854224 724942159 952866542 914073343 948977308 407794987 955937606 986506668 990977373 737103337 925895449 764615890 975814564 781146391 875696365 704494143 955459837 247874765 959877205 138138202 202482325 211020158 495763545 884459895 994897751 439686515 961861393 366200125 409866601 790978850 954376154 305886344 976468643 70505433 110513089 874282026 891927770 526060949 669616705 282822590 717018682 64930040 873239301 685603181 815949801 113914009 117981580 149752960 545418384 219743706 561433282 567674644 882630611 395704734 556167812 11537665 258287395 137452645 355851127 776031258 898488355 552871456 783849300 355583918 712964980 91849469 661444352 598605054 982479139 471893746 966720881 473280066 698692457 321452692 978381798 560781419 759116819 561034927 928572855 613588683 648471939 244052603 894073892 88131701 475684196 423748348 967496950 324083605 957830106 912446590 954853718 920029643 999800957 80481079 310681459 215621018 763895327 341605609 873579740 730776661 971160837 821351524 902704831 991742683 994479444 253885191 257373673 356181121 806045821 99080788 99918961 528106782 639491362 87149171 303911449 159396010 819310297 965927933 979888836 130785597 658531822 810766587 916336763 81910492 450148507 558680345 792285421 184519725 923867692 903564876 920833272 990099222 991912932 872117340 951912190 869633917 899227176 9481214 853050128 520855145 732849289 143594169 692463771 240768097 887365905 835653098 848031111 458925273 769222414 374989392 988921859 401938732 463100935 888030889 939613020 327184670 457753208 263683676 567898823 916809375 953189478 523237742 969742537 238128119 279320999 756474273 957885405 884958396 915066699 301672583 757713678 83404492 595714783 171154870 476674452 881911285 949552913 237883500 868685099 330258808 887209248 565102581 713342212 562780554 778446613 975549350 985848813 333015921 424839271 779864312 809771660 782863731 806257636 177566642 568667144 403146686 521809245 219275436 558824333 691423385 894290971 475356311 865927730 585134705 699008069 789458845 970382586 307490005 818141071 28272510 720612755 388846010 947476390 395384906 491800483 232528606 461223873 319942132 436934970 222279663 341965415 530042131 741430943 595556693 979638377 567997875 681906902 244422365 550470653 196781101 357577632 881587411 925272853 632575386 859034782 975540063 987916383 324319782 640308797 421777905 939616799 636464798 993730318 539671542 646575959 36709620 158432396 599953656 736887479 286061291 940399646 381193442 646587518 879684737 891803616 369656539 418851048 848540764 881678961 493474397 924185692 273863805 472512909 693947568 868280667 775260806 973951018 306570458 307051188 441349024 917654266 3806073 243117770 736860559 985664682 179741455 239894004 757756178 891547111 291023858 815876513 34576471 582323827 997704874 998602636 174919448 973407734 946390993 955595179 171651773 245668393 151533876 286455810 943112056 982083669 777065270 800126681 681110508 827671988 813946075 853812230 289335723 463683871 910581150 969586560 644048389 809156452 645104142 873294092 787283369 826454067 415779638 778849129 698474773 855742783 989252045 997615269 838852989 942515679 600700527 992790959 746837409 769600871 416231198 526638909 725066349 915772571 500423351 519555144 569234432 626366175 208312448 590492277 530475239 558733929 728950096 948602328 19751170 721076962 595403402 637439793 953234399 955634918 16580715 543723569 872288983 951348656 775104466 854006365 507279578 999033919 602362148 768564434 669038850 721973888 995710400 999091517 13344088 327450622 623831046 858291182 595792116 842063817 595111159 601989266 437077177 749244639 163479614 774993279 201967762 288592176 179851841 676654793 339075727 747998567 876740893 967889057 641636729 970985819 348228681 534277202 156964245 649762631 617770029 994183924 778470631 884891359 878997003 895737202 262209447 613758594 485795426 537643445 476802807 961144575 570969490 756341648 643109752 858757043 928214543 952606967 425592198 992691697 526550410 595691032 347202640 822116566 410911727 679185040 478695473 690661777 285178783 872100293 752503954 856188364 100632576 909934992 268230428 335203722 869760093 969807549 415271853 512953109 859633810 939889322 712638538 994078240 571928774 875611670 990850664 999930929 68179837 286581904 469376167 759868776 522771230 578979576 210789089 767347105 227016964 263161910 492842724 917180384 254430663 840516198 768804618 908450695 362752180 642813893 776187701 807330650 90144049 775361253 28812142 863858017 68045058 258438745 383206608 669364675 160002560 934029944 828071299 932700766 9494218 70055348 301947875 339113935 313658274 459812890 593792002 936455717 295706645 965152991 380649169 848289405 363375702 779757207 439127419 612628360 595507114 798175797 779550725 930614798 950159698 986845361 63560793 669352007 455420469 600065505 497793955 608446352 91346173 837336625 958158961 994063015 6269172 678380845 680892239 684210836 165677710 466990112 537632893 619973096 96446370 502147202 713868665 812512340 497388491 991277397 758194091 821083408 361986747 724421457 652014162 927196901 73132813 446217898 836533184 920478132 401468781 955091324 861742568 956134729 768077685 885713164 748509322 791997716 380835205 596768432 950524845 957001804 345661895 734202707 539793227 592759503 780911437 985025221 521565832 939282614 9120713 220388768 499234271 910076228 757603632 844203164 899924969 924304151 485288110 690194720 605266091 784378726 780842109 923642025 58782559 683785941 446108496 678324017 478432063 549623057 747741532 822785992 461645607 615328304 73180279 863984469 145655817 299187726 342944446 647040266 848361118 915156086 29608198 451884572 407643721 582957511 319800526 616494714 267383292 322196204 873978450 875565242 243794253 654070127 354142375 459463586 115992020 725324567 427545287 784783960 443951066 864219671 437269265 776459312 923350507 953881825 38418893 657200615 302142790 553634493 13678306 759704616 168129678 514020008 913161908 971265406 6243021 482860745 422519838 999413807 744907507 812415308 594738421 642394675 452826239 630865979 358802249 638625838 98106714 795748150 630070074 647300478 230980549 690571851 816908164 986598257 5376225 759850740 452056548 657683996 787573785 833626473 499050741 674674174 673425830 964428983 40188095 439367961 223655869 618090533 283694865 874156983 840883718 896452866 120239308 346145936 952663820 965906638 306122327 696708841 508781565 900312216 986964020 997967456 942435565 994230915 984992433 989251332 862392473 897977657 891419409 935182800 145209594 855013249 978952716 997226478 68382130 298587870 772002089 956095310 730267266 948526766 656727223 843050501 971949117 986620645 806858192 811920245 819427537 979174969 927345818 989533024 917456894 974346835 173989510 689338269 376332680 898437033 562970565 728014367 316930019 602096160 787469645 944768484 473754245 724687915 362345659 792643596 150377888 155469998 212744275 419488861 606423530 987451279 405526259 416336742 922600352 966770899 591470789 882506988 316261633 362558765 638544148 997909535 777515034 970696424 227332502 277230387 528936529 658549659 733161383 897370225 725772092 765189133 106781609 700843006 136382627 629556488 287338913 326556827 463087057 726040861 794090203 805122920 63869801 996528075 175060258 643658167 762890042 902717136 528654896 841916499 435885444 851152266 17409662 569290925 20586598 355867666 117989722 757172690 830024554 855537527 597720082 900448006 295714921 349698955 187638198 353671299 816859559 828033461 64575451 933795690 104048065 965500240 894922338 976566166 861834658 998918246 62765313 806024061 174844125 423113705 709659386 822661712 286792313 901282932 809489714 880648306 347067952 441823286 129392032 333793798 922506391 938816999 613851744 894197036 38644448 939987935 969279900 987903692 949590906 973279472 407089567 924353125 215903992 651512996 709883147 939557913 889421183 968743488 39626688 390907101 368226526 430172839 334578875 707652585 885019843 985149201 109180296 782352388 886793536 927775310 862552638 951844362 187861157 896294563 439232242 604529894 147496037 169494771 606687677 633528849 917705252 927678655 187028943 431346243 638920682 705245629 351555601 752216796 142064245 911397925 82763456 932875892 358826238 988323166 992097755 994501991 986044649 992230678 254877857 640152165 567027471 633999770 896342424 954877413 497696762 566884351 245092272 330066205 597588590 842635616 388757132 584022278 670054787 733064230 744259704 974917853 928321766 966205324 423972107 926167069 930207310 942367980 267281579 664346294 34974028 716206100 674552354 847800779 915929390 925334145 498284771 659288300 247856355 296301395 141647267 151297227 897854214 904987039 804632832 932833381 9120903 271929704 497827922 741198083 743041555 970021865 703738206 865478852 772110708 976572602 152778471 483918022 373152604 596683073 905042899 989753844 966662163 981344856 246608787 326557668 521084459 604002654 427047085 940011777 161051551 546154572 291240616 493638174 720201698 811516927 661344041 874845007 573523971 627206564 282651081 372982603 845207490 928376244 160612589 336773619 331116532 642898146 948658681 995435284 173624828 930600580 422915091 887424759 72353128 621078977 649652992 973547762 608176364 930366450 49662966 316976909 974716845 995986916 569163142 589775441 941506982 983557311 515206207 908547669 375009912 466699877 281291596 495509062 796084759 967191543 740866006 917952761 459923010 705164961 46683185 646874820 572076139 931847997 666072029 890053145 847780236 898667258 281413170 991033759 789544993 922466136 554195915 576921016 473848581 806650620 145180349 324642839 391274224 893607181 967711415 993799486 364305286 603726775 761445200 899121906 524403505 867219160 837796526 970809098 432507168 807897661 748932542 955691336 120497978 861237813 159003989 691855905 364192016 590116277 397591348 746859367 269731324 991163235 169942410 456030654 126531404 380738254 159504865 924889949 350635058 790968133 130771342 230725149 937726241 941446713 125373934 810100173 744529725 779942157 395297784 690505323 536472989 726418568 138781564 508114725 533286739 854170791 204935042 487819856 203183182 908078627 110484533 169449541 538630565 712130562 681159219 923748713 792569972 803464198 102912896 334205540 114744072 474664045 310237464 827166506 432656042 947326654 557676306 948371514 148876458 923955511 490742839 829303913 82058799 377434849 141299308 175830933 276221291 477039848 754338711 875533110 670689273 849342657 245716879 661434134 786919870 855814716 547861860 680522064 464184463 815087471 687174637 788621201 681242538 859727086 98183849 245034527 133656829 496753942 998285346 998769558 320222915 360259931 350001978 615720517 482873643 549164597 240597306 373812950 971950646 987690838 708906026 807726462 375679396 445366368 423641731 559404519 228139376 312873683 520172829 605906017 589787191 677573295 972121022 977533189 252978694 826558876 764111536 938246821 178893475 867307898 587446519 674891597 796205610 986029500 775801965 802526318 416633935 515962833 847332592 862118245 56669523 940893967 263512689 356504194 644239572 890602933 893741906 898499613 591401850 892576335 287657928 472317362 185150649 321149059 952085227 954109360 84952995 401509703 262362720 831825514 777496178 986765651 120835415 897721688 949831616 990775241 601583461 890155308 786233258 954693439 268456387 745850009 463426077 607275135 710092233 754610246 524311482 672515606 908097438 944864882 930253559 936615494 820862782 821273938 201422763 997875423 919629569 988462194 502988744 936677310 657733218 773210646 572506450 741245849 99327164 885617598 275247691 379955136 358132782 436495915 743028625 786292628 189930796 433342310 987320770 997307661 485217616 861200374 591557796 639709647 716389844 800499033 454817713 887283103 61041667 94062691 674404066 918496700 266994034 623254480 5958419 785072722 802971136 864024554 679274490 833901858 423031846 455664256 661451257 807844543 425697172 483873280 199690014 969473010 283546645 893504913 629836151 657235672 72748430 112364194 206573401 482319805 930633684 978686696 314316231 918307396 670519540 706744294 766702746 957449812 785454677 991412484 9454416 615211847 682065483 905612631 620167726 921989394 65801516 735853974 556964503 966344167 70986511 775444940 242943733 398431923 566183021 845439205 526999152 607019212 505237115 623037241 167803991 635080915 707580738 895724808 433545363 913462608 813129863 816754750 778503123 963573809 635511818 732026694 800883063 914720843 118175111 548320969 391521047 877578199 594567844 882319381 970650299 999558624 652621419 657036295 940223346 994577944 920121426 943999503 137451942 368352365 936163358 985211300 357386634 379661851 513916084 949498970 154905783 413731869 565966189 754947278 255847721 956520998 957895419 983022320 255507206 813089237 286156668 623502336 60727099 783977376 231851933 725131071 64977393 681961069 434325192 834793329 504890964 692842240 399847518 424417812 464691582 897156662 46907879 186495437 606125196 807327736 884957993 888536832 451098855 927142603 499800564 562342863 461835575 491144446 585990270 969284788 292722129 816804922 898811079 951263120 54955063 357167208 476891178 636543962 77790170 291039091 477461787 983671673 477175430 737379581 671717536 704361514 616906244 695350969 10978544 703554889 456705155 765099679 729242082 856550807 814484567 962730257 810116950 840074415 978261232 987599594 552661874 705141630 914457023 996719762 810973945 836901615 868013152 923880582 502341674 636179125 985744729 989048066 850614669 961424082 905345542 922245314 846060287 987088357 89834071 699518382 468228356 522178535 52634813 271198592 931489109 977997091 152797277 627951901 962990208 972371988 238058888 929140502 28777037 324413237 474263702 521947404 990323272 996911041 463910542 823793963 671784393 970992066 658841115 881068222 599166760 677194555 986943219 990510034 151171488 294652163 314064658 973715799 148761447 707663245 97255715 565574385 968877556 990926532 487093484 809418474 86354881 96297545 727194779 829417742 796593638 931455991 730193584 992793165 783141676 816636726 550053631 662353365 992588939 997315045 481018719 943234780 741662198 848631396 917352662 957094218 681264325 874016574 204526712 904253046 468514326 707500861 877771919 930333880 292594020 745433970 390909905 748425105 954938856 961134564 416810124 947244733 484347565 659554726 300294944 378926493 294432632 437229141 734972415 778088058 378621597 852156474 772181015 842101899 182968557 886181029 105423154 205391237 810370553 969179660 440390587 687842291 790806985 798886010 378866791 732268866 530433368 620887259 60826867 367296991 112339137 302573341 291308841 315272328 272429187 726601324 873829154 962574453 207104902 219766653 255927909 891040607 804665728 936124848 561723935 778230029 292576574 898953902 204718293 243024094 527445602 795324207 9700472 411283275 980721376 990743471 675382076 958046740 324624487 942171165 753516113 835569436 51258724 292618636 220304271 502250560 912242930 921145750 638120811 966493664 443065427 635647671 915436872 956130783 20848959 275744890 33435431 460577190 830882714 926219052 17642164 439147139 850844500 884746172 298988330 646314310 998175503 998514395 557660006 564238867 883596865 931941361 849685800 931046117 308671598 625889446 848503782 892725188 612954679 765087412 841688762 895863120 740483039 956104406 806838929 845811416 385291030 754074056 46712724 49600109 116682096 288404161 18981192 378701780 517111093 656466557 619256043 651119309 516304778 816656372 269152134 662040313 22030315 973838304 236335143 914435333 29869549 925673250 230565565 881014139 61313398 648107192 651512726 705997807 846818872 906565709 357627765 381697265 33603233 833274220 271577738 471267136 397680724 946083386 503412588 850377287 111703396 334059756 577479306 716186117 130060912 138545042 312701368 941465314 438193094 565465238 332258990 622943754 916681253 976473711 213411840 305785907 202769371 474029351 720842992 773151779 364614585 840410478 316067077 557447034 270658798 653027117 587118496 719412480 183805631 714107656 460871297 493205656 104920371 471204580 508578684 956692345 150587286 448567763 99001725 744593663 615799074 950641767 795558978 832876337 821001264 922218899 409663663 823673719 792197292 835452919 684845741 968225692 440057048 697930776 992332767 992973241 640683500 729952443 247032650 916389271 810493616 974434601 181726031 819042497 821992833 933027233 4885254 915769026 516917018 964179044 345981388 998990126 670881559 764983744 696643482 963980087 154754292 387735758 927497241 999255058 743543877 794219373 632707522 816268741 955565744 997484009 232405780 347940558 200466695 205948733 610518529 925090537 228962770 353689897 39257473 457397170 705095251 846950546 145078949 745500905 258457257 739445995 674885264 941620237 305634547 364249750 131257170 646998970 555243982 675294501 305321863 815799094 820955434 961294545 350997760 838869311 443504768 824979175 675350093 739671434 445158642 447520597 741451201 888737885 496462652 907092990 976898479 977753566 76565561 618968599 76574002 577311303 265398725 880570963 910623963 938954959 682194394 786565695 268283942 684347525 234557052 612600923 895912554 899497961 333775438 969950551 974079455 981408324 969981037 994308404 520652825 637497845 742124038 832966103 170481269 386737002 994071620 998056027 775362331 988989666 857871409 949656330 827478204 921101039 642914844 939513835 488979315 796940617 203460646 535907355 992475334 993079254 385576633 599920648 851331619 934107163 435344284 835771586 47434630 752846979 152876813 891827654 961503796 965513945 324118840 773206284 293994139 638295103 346169177 726607600 177038878 956729097 53458754 158707684 866967650 953206350 99047702 517526981 239352387 313737477 844337151 870047292 705254986 771617837 218404972 621530619 424285765 508775349 983523180 984231605 941025262 973738384 236204809 597517115 105935554 289934550 781904920 928156451 398066728 407804025 134860319 591032149 979574296 989022276 577606887 622550870 319310299 514635479 72872548 863084124 301582729 308018470 437554671 953485185 819655828 944411964 603380077 658010289 706351467 851809729 341473531 537558121 716582931 812526819 986395324 995302876 580920140 964998191 541166287 553171170 888641598 912286163 800885272 816414917 135068363 400497458 909841266 924066625 75873250 495150338 299564233 982844760 326516881 508865368 36808180 190179021 898704843 974383680 313384189 871694260 901406381 975577231 747596162 947730655 431322951 529430223 161370023 567731135 610351259 898488438 449096665 459930224 486437902 740613563 478077747 939362939 103986232 859387459 540341988 748975698 709022949 798129695 505892357 777201236 527649267 606010295 698845470 791412284 682151528 715747433 893356592 903453033 131901412 315877750 597993281 712315863 297768755 615502597 126052724 816876220 242418400 985114371 272964365 819533206 806334264 895143677 342273814 668496064 53702048 370466835 270319606 829386626 802275059 925537686 334251061 472215444 494888704 881862769 354990073 382317307 817744870 826747321 782597477 975774987 510182239 866659313 346425830 474845394 261664515 266825204 951718887 997690998 502859803 880895236 538226113 661887541 717308349 930351812 948982149 987205141 258746037 704727275 607156039 798672484 688988193 881444590 894359200 923060971 755867335 918686263 204415500 575555309 241222404 267778028 50791451 549759326 887312391 913974832 560938135 705773883 123124080 235820868 798762297 971223869 517995657 571014479 120482292 605472920 841309362 948402464 129715716 821716103 142352174 263415132 181812273 946551266 890725538 940537086 374275974 722830197 82069048 169851452 757018019 861544265 968582007 985068147 166544966 968695247 89277788 513412927 366428669 922849540 656031574 798193565 879477988 950999572 478865493 507038989 956409571 983320896 227018403 597156828 164151605 341227172 168156217 186900494 257405079 576953450 438677969 898078516 662546711 847911228 453370705 673160467 489772336 990421935 560461090 929899025 887299720 902864940 963154451 983242497 375192622 575117455 826213397 896651178 329931594 781696169 622702282 958771698 643848441 785976003 170304229 366904082 808910475 888025233 567191640 853824183 417713538 423368714 763217732 892343279 282363842 333446084 467463291 652876024 463930234 708239753 424265463 769310141 820224362 874616410 599515017 749119837 658331709 997933331 204149876 396599095 655553433 687020603 337456865 669697739 185042480 282405976 435088998 552609152 294529239 564789261 618001819 905220748 310643934 627590606 487007349 619881752 29730185 604330212 920065375 937916981 741153271 794556111 386929260 568455936 503096458 505266917 574233808 602115297 617623712 890515467 627696396 969939367 919406337 939355383 650944429 737343641 398263460 834857424 432772452 484541869 442440205 670739641 56342832 157139670 433612825 528397168 960115549 993953620 117867897 204642486 33760285 199485731 565193936 702777336 673138602 768640083 527671490 935788180 254294269 640337029 53046105 254001331 475604264 839714658 330572934 683605752 293635257 551220276 776019935 790974128 642805935 698334956 626492346 700083126 770556464 776826653 94907859 643990199 767003678 926267479 221177325 613056165 546039850 563338436 144607863 775373788 248274233 944291856 107723323 732843830 592446745 601783802 131905148 693401939 100893039 722985371 742423112 891313536 916947779 991205673 338586651 761328640 632093061 818911620 97284822 955695429 953672093 980976360 246412195 998750900 394389835 646627132 53017437 128872570 166986585 856872931 384220990 747157766 742885413 928765050 792185451 874276302 864855588 969832086 689274574 831663745 640996995 642505275 457595844 642075753 629323173 773539218 941449704 967279995 193725791 716931569 871275713 951524955 465425849 918709645 589319361 869345326 918110771 988084002 521777921 877666224 204813938 567223329 135025246 606587131 920111902 995410645 802111860 916741456 85680563 503879564 625370128 720025993 183899518 551918860 807494888 912843202 537931218 778931255 380687594 932147202 401970803 974178071 166556816 950005639 584545048 886314214 933761091 976849490 53823424 593454434 521720127 628204867 110753575 701664557 601869293 881508315 391493576 472017900 462928348 679464183 464467322 827384734 181640015 530773419 175475424 296435922 45639676 266606366 867588565 890631001 338699719 841180845 566665746 781713443 654032363 977398021 307865835 465601525 607370003 769587223 876856470 959200213 732377519 758435479 451508396 524892036 693822415 905740951 702017935 777742347 201777218 224255265 368079116 475081915 669983029 970939771 425673728 875815944 634899892 693001156 394175780 945613904 228845587 471668432 430004488 721476558 281019301 585294434 939470504 986541072 781872420 833443705 984006385 990558119 7858647 413413150 259912846 631618638 882936320 993326652 539431382 749803782 43810855 795777097 89110949 93931363 794399027 874488848 405586198 830441600 852277186 951718901 579312434 586185481 622208907 891869094 401263835 974365259 240298687 417967843 197375959 970554395 439114427 598754442 402873308 718667281 415087894 657402755 198711652 927904505 371702517 806941935 341907641 358921531 70083268 209467058 219338462 272193345 465734102 815438387 63359820 348343475 849694787 919667537 787878306 794100410 146653035 324353188 563697171 696822935 405980746 485357316 693025999 723485201 607968663 748746210 544502182 620636663 165622969 648404672 29868177 544476239 332500546 520168678 488956613 831954512 194690852 963265094 775095817 980400213 24193647 747144230 993068492 998834627 917542898 924164806 373128560 384982133 934387459 962418231 27023297 503646745 664166619 755883700 925361572 937939903 702125678 856300140 748945336 820482596 413310906 862937921 206209246 517128432 477598793 594694834 198609656 611546210 569287131 694248631 984742241 994777071 384142890 453546794 401495629 720123719 864529624 868156858 77791976 265902084 155749894 636396112 324260025 740711175 850838114 919767841 962692740 989751943 850263105 986932763 500643380 826907700 348306998 654027184 290487014 579477411 724695918 817699115 879638006 994671401 249077348 308731693 508908384 866604554 623277398 900137164 97778812 582332464 151035622 473563898 669770284 808280564 364698848 895482446 395497723 755580810 612944269 959886431 372219254 419402274 989923515 990881717 23383119 216483709 457072428 591151958 264561934 445547457 469077737 797106133 281170820 289968112 770375381 881924026 19921606 340513018 662370145 942864306 122189902 330313789 545510728 744092045 463114320 936483847 636313854 978319496 236525429 453730242 495546908 533452751 205558376 504147387 742056559 823968973 752122425 780604621 663905660 926497433 169748071 760098341 467081144 634461402 83409492 932580022 651079555 991559311 452077524 508961050 289876792 913152146 455969647 558155819 332425924 935415874 574674058 913461613 54340994 832118035 128549672 895486880 2323697 678321314 43478317 583403152 612686039 732706927 789850323 919088853 22536862 38734799 994681576 999428586 90933992 565505249 292109334 817415123 105008323 446849386 362913539 607671604 9440525 527132871 733285379 893180596 690548092 850446911 317750279 708639238 310128806 765296103 825515583 922335331 820846093 982461153 74758164 823207366 24963269 87191828 766806705 861927086 738881629 866745448 535034506 667365541 265560088 354359511 817459694 846064146 690606145 860610775 289617670 513992650 598617004 979851510 437459403 674930759 779227707 811682534 700129421 712620747 391573972 949346759 882673220 891716779 716904048 730175987 526133806 960961984 149916123 383973181 378080318 620416995 910683196 992457680 575740087 934048562 174010598 544757532 59892645 465696957 798783525 969103329 623998775 695522501 961466447 976263015 613176226 722835624 405356649 726982171 879617678 936894866 281277122 706812787 705396329 972496579 286691530 699308454 778326730 864206325 498709026 710668607 716898862 903878180 191622792 592714158 168118560 752448057 730231849 747778606 246812992 534057107 459277601 682226278 656845151 673517352 326791400 480869571 568105179 793911629 521118848 764358115 993962894 995868701 313616972 522932768 588053581 755922049 435961089 580234851 345454340 856625439 3306652 10285936 555591320 785583890 566145558 603222634 68929599 741737689 107295533 747519861 325448834 922181270 999264944 999945459 527126778 940694003 853320963 948852519 123370895 471671179 809944792 876255002 661073298 993450252 291126243 943191891 389120208 682693719 371202018 826537518 460040023 940550705 237482981 375225634 398454190 622590924 528207685 983111045 966078552 970946751 863121528 899965334 986351308 996542256 716272601 755722338 812790707 859005769 879792284 883877320 886237868 936137267 292034959 653482398 907716184 923214561 147270685 673041463 604464189 660965244 628586067 951625774 397728817 743391583 759422982 896997613 229774975 469359007 612814085 618178631 935818702 978647764 570224555 827549397 168845710 651556050 907793575 946003938 301015185 342436101 213631165 413262725 876771891 935281258 788419143 897248546 257808740 969743875 318053538 583177484 236212119 779691742 711419312 800540296 392108985 979446686 329626414 854772712 508513977 909580966 858410711 906244205 722402812 878697706 944610668 996897585 372482421 664782345 620341233 911694288 849682333 906599407 254863062 463184212 819205749 917777327 964718162 982092572 172234520 758177784 342110533 998981975 110383094 376589401 565576118 898390296 948680605 969696494 74623965 423314039 822793680 862373074 49565452 311613881 543552264 674611000 97610447 245583663 930756905 944700254 271796727 739449448 943179484 946282685 815632952 883639376 417860449 514560854 883738407 917725406 964109387 985649705 595263618 745160174 681173958 907211694 436282099 567992528 55551142 277750171 740617388 846345675 294729542 675977109 124448460 390445901 370175211 947643334 711509874 779399141 802898887 927525921 544598190 880987776 137188397 528776190 503609266 703546962 645888558 818570658 917372842 932912100 369808973 417053439 771106570 865574686 156508925 536070219 716752212 935012721 126146183 363003892 809496176 999102201 297340819 780338323 879364935 991258921 838067468 996531181 539384123 800951058 967500855 973097015 6830485 407016894 800700809 962459183 990672664 998464452 202933578 795150159 324867522 743698182 17044299 489628543 701806063 834535865 960719238 986973310 602290466 673369123 962650667 983403493 734692117 968178495 841678268 918568129 969731510 978697699 409411085 857502913 484763632 791812245 461824712 986241965 703889663 819431473 876384491 975366473 21928041 638395028 121862515 709650684 644934471 923495806 704240886 969149011 928555637 977267044 689176136 802987074 242193047 495935850 492446008 904044185 516940107 804961836 377624 470375351 719941998 768883328 74316064 830223398 470953090 919892250 706839179 965548565 452244810 530529389 627357005 814475887 641668710 923438876 490051509 876656013 704113167 852673455 41730569 334975501 717111334 956579081 547746462 875930985 111225170 637313307 945142753 948688730 397699001 779667081 525478297 808830070 531547648 835965500 562281260 775310019 878673445 990533617 38819047 695127834 540790458 692755175 674484498 996471672 250326569 839032571 460936848 815962119 85555835 359824051 861873795 913775808 501154257 651559459 503505498 711770522 315928144 873703586 573230947 696948872 702728794 867726720 917669349 942538837 403476836 531120232 46409428 406801894 949384935 954133248 104217873 736693734 806966125 840987444 645515982 799099958 314611460 489374308 188018177 488032944 343820212 454615845 535346510 894996960 647715274 833727372 153642913 669840365 907892677 998744559 298427901 741141268 403629879 945384363 255741586 974386261 936067136 941793389 223750236 250928553 988792910 997807558 12331193 168417032 281632983 323568607 908047407 960837269 885298671 933465837 711809264 983344948 845173530 951764970 60472242 296213383 737098472 784769684 160239418 736333958 472142052 920093806 907420937 938831065 980565322 981510956 545341966 647871893 177086532 890354761 308092239 887201165 637461087 773296190 892594455 977715687 718757955 957053831 931404208 943887094 673348474 887178925 199058892 950948410 612233291 812414219 985288133 991039157 587678687 696068128 725284517 959320837 230985330 467915750 904776096 908372938 634713141 839094362 586282062 782073835 945038134 984386590 870466976 940881806 712959930 763743286 309999577 481136336 546325286 917603347 30021344 97352984 372353982 598515093 146525811 735040928 94913254 221184322 619526713 710535989 34231562 481497407 428174467 872488603 630804207 917224942 970798935 985143724 554677985 954263451 958087936 989337002 479997145 509696660 531175390 918186717 55850911 696430613 239134340 436216487 804284493 821013549 165660131 996003866 29355463 650349215 426720737 514788820 659686611 714516562 802417627 908191199 401782753 552942826 922017021 993342090 860762385 962756876 605687072 680933182 972040012 996977108 520482897 732813913 298132054 410157482 563143296 651980476 480214820 938230667 737691933 922486875 93353266 197203494 188213193 622627803 942690316 957947722 523499668 881332691 433104810 537541392 987341251 990650654 270110588 483020109 625976081 868888823 155631943 998277621 223742817 936243292 313090389 649643371 557961177 964716612 361634918 838518095 259430810 930376567 47729384 681536283 776672096 798389701 461958192 751041715 797533610 896860036 220210942 806220238 927014515 955725069 259229513 729414512 85304669 168738556 339071810 485069518 411686488 614062796 819137344 908876136 634329038 965475785 821542597 993394871 139732748 769942230 469000440 476551390 704848066 799536456 2764894 149833900 696142843 999734389 341884450 342094846 34206571 395820795 176605602 429032459 930192246 969856285 941250768 968337663 173928076 409915816 206788248 854679386 950921775 981273284 969766688 989823742 557993255 621793143 123328524 983908778 671320231 970706926 900243959 911581617 823139812 848224255 135065229 528490211 450622016 917518988 50043402 334298004 136282356 823414460 662375220 766308720 629979082 930054058 738179304 845549808 992688548 995202392 970308294 980538172 406734175 824897793 448667330 852293052 965235388 971357142 797751375 935031328 520389380 635757720 743789164 823659249 415256478 837280307 200816285 406340923 594413555 805586288 53497777 300426376 64824517 912640555 702006882 882654257 926968175 965781841 21314610 497929413 306871351 443266650 75860003 260801761 498972566 957798188 687795686 690408579 785767866 976516449 130014620 381702824 463198969 917687985 620655593 913762592 585741974 611393750 908333454 953429325 277167854 897956881 493996841 667579400 288192004 588717896 218700655 256516672 688136999 712869848 850948164 861424737 564929886 795544229 439975903 621255442 863654096 947674346 138150102 773945365 293268698 987896597 796867608 834927623 31330644 933384337 101927968 885568508 868367536 944822325 26609864 320323519 824171061 855146370 12676714 814021177 845504563 949813484 650062129 956745085 321879509 335309284 260278208 273213142 377970099 908861503 53935048 823137709 547631203 753428646 99525785 371193521 577573416 717906456 347727206 588682012 212863312 647964229 358837790 941788906 189883833 483545575 632418027 794903216 561565008 746449393 342506045 491134711 599018050 777535220 10872546 585982808 585142213 645007178 2203484 262517140 427541608 937581240 536317064 844855187 843935268 925984265 553359266 576621006 468213580 716517714 411410300 803059038 325058031 688821833 415654920 537052429 251709929 262437300 141933982 210897174 655448191 995394207 613617844 957964177 599399230 815264328 470501113 903422461 858944613 862430958 105940595 506196829 771960892 995719392 785955748 866254095 424145084 893843079 105865664 531583420 115858861 881066782 660790388 692897093 920824497 942842035 629961640 740141085 910165037 937298331 333548841 492812860 283552917 329668316 379717107 405336699 628237640 794022820 237606400 273712117 351104147 841649404 981525399 984844904 706794182 817699431 307242507 376721041 154635718 723348581 567404707 606288252 7693509 220360241 830753142 871108963 883708131 972192832 927238344 975912031 667842046 852928503 3454058 942212877 947690402 997355415 782914721 940360529 927528608 929636152 242232100 671026262 44806822 525862612 827829736 905081991 956445409 961397960 88462167 857228942 960415592 967598951 159536336 527829069 624618795 902822555 408877759 805611593 826720839 995807737 982647108 990283724 649368297 682249560 283872420 350928712 807310334 874732647 176847714 492993870 954613887 997386627 584853700 597102887 442199047 660391012 278361292 820535179 439818242 986690019 298977382 707780306 775836060 963095272 500088195 721557900 512968870 919078931 235676433 309614253 626575251 859409100 887736718 928511109 554538880 949212280 816544013 961510014 779101754 871639861 571330820 808815500 825115552 947327480 909799613 971092295 148195571 269949414 855087035 945798964 71680246 821302052 177848891 692290140 337765211 485464103 654075736 853769398 840235790 872823867 189256713 437236886 574045410 605534815 162251549 446801988 459468876 516890628 812480982 844114347 465214878 757669614 824038081 894046100 995742190 997754572 642459495 793670313 505270200 708467725 736459747 924676836 407681913 738100221 399780252 878903076 229267672 919663818 104964143 715472901 409574332 934977612 899008325 956203459 929690150 988548143 644762722 865513844 440051084 898415839 229546966 947388807 758875121 775192674 52947816 791151180 821829619 958262257 509391310 969496896 142616116 153308043 461921073 802432263 527872006 980553469 484206895 631372156 697655743 775774260 3552866 547334094 337108720 468707168 876729262 998388167 858802983 868666052 850132746 970715575 414994310 679728016 284400033 527922396 749239526 906761506 978337744 982483284 350557045 868992213 696393702 950462577 816402702 859474094 541228498 638069314 377837912 998003067 482270798 978089136 995881449 997848350 621842299 701305832 635572769 813389635 187503226 683174325 876980934 932045985 733507563 939256627 772186312 923263691 247711838 565583469 792468651 837283014 177513314 278371878 985828877 987754602 84664163 127570918 571451893 724937030 74951155 312489348 989851803 996539906 16026513 993772386 926959319 939808342 254063949 357169555 586305058 971883063 589535037 989015022 812748671 819730193 54554183 679470367 738418192 763603555 273864122 746934808 590359453 956869540 122722604 230740022 812077957 890030383 399203312 849120485 68594530 285119375 517865389 552501113 884998960 969580995 443133867 482420724 812704503 982131875 840143496 916958745 94721484 768601951 132356617 492299914 154794738 845289413 733447400 878097414 834402828 996884887 332507407 810327583 51987617 721990578 360453647 492111405 839283050 851915596 338300803 379926568 214916087 509559999 116557609 642558701 124328924 597380340 612151829 887491793 50137549 189060917 753518670 984043916 825179165 947821891 291441480 519297017 897965307 966099994 26455009 971418069 967647081 998381018 614917697 982668433 461588440 678135641 907584043 915445102 25717372 382600321 672756452 699538150 772583865 889195029 972784988 973911973 570238275 682899286 667570047 725705114 891198183 893977146 189703205 778512722 259896651 760544183 386263668 519847956 734456545 888412564 359084099 446871723 780811331 930931373 406844198 847547972 254009817 998482234 420017561 741151578 812449904 817431321 967971842 984583183 908058377 974512095 904902466 989664989 128581669 385370512 15791584 433038782 880535649 897763923 948924858 955078756 215115914 576950000 798130539 891989392 853045378 964671666 282751803 622676220 192165653 369901512 270815520 719391416 421111396 936018344 117301250 757388233 623394134 718024676 770629133 866102589 469633114 911611360 507117427 644423177 18842436 369029928 207979657 544203883 71440330 481331297 604787593 974261493 138753038 247763976 483831661 939537340 860645177 958197101 599312725 845180131 713205249 838899218 652674355 878166303 56649466 552908634 265996623 509994802 568035063 715907988 960475058 984263274 736981889 757680424 625458932 804544101 608158937 656478933 944411667 964104690 738741115 832037220 197212397 451927441 83477946 992983383 607602051 992541754 204045335 260822330 415336769 886406484 686020748 802026912 858535292 867882167 814414085 975189942 251601714 420674844 110214498 383868298 8387373 956732497 773391800 954922105 798693487 922826102 33677704 584421437 632216668 918259848 128962344 837190439 61693482 604399647 727668018 870198299 474775907 919950040 59931358 773341012 979073539 980278811 88582234 493124153 159267167 182618152 618292085 946438587 624348446 901180044 518186473 808608482 326080053 893889869 227288679 243824962 1910431 396726273 19850606 482147429 739000049 863140064 125104329 894531134 212416734 895168787 355588642 879413318 783448516 812315409 848894968 882776970 496925363 795325287 23800022 611360391 318694160 715588781 638404568 894163841 795633028 832025441 519712853 568785149 519205998 590270977 788642617 878158171 888604492 891371760 400392899 809948734 232653738 803313980 498541590 963564586 317567261 418044007 287687508 491401645 628482722 953708556 654487957 801537165 738728672 778703856 189479928 957638657 219766375 629044932 806868983 912114874 410506822 451628743 949216831 950672561 969114790 995645237 621442443 981367257 820169555 826431746 375757517 529793195 990719320 991298973 508037954 887743742 142603807 674817139 217118454 936360439 95342644 621611785 3861811 714562739 427143483 756899168 253589560 337750194 236984564 322770443 171473927 508987869 36749755 981759653 311791884 943347105 882677055 913865878 455184591 551175295 90475314 996339753 587734848 640125440 689917985 930908078 971218149 974047255 111830284 665936043 84829590 185088398 210619749 899291861 370527765 957526348 729830901 959708809 173697724 793314747 807878712 933100026 734763693 841546298 621273388 852894627 101258319 541986512 466719766 638887874 321011149 939935894 937118826 957919134 517263701 875841636 66336978 352120724 932736759 971475405 783620201 936939174 377321381 703093688 741363571 804451333 127967024 788103019 152088074 950015095 264675148 608753696 574863166 677629546 298362700 357517903 603561818 928010169 703883768 825996708 850391196 965823242 605971431 708737302 590848511 716621702 215541469 339245895 372346210 929938872 396232541 845516372 256037788 577964678 23976896 142748049 943854274 959289205 538575947 633345513 579461452 925764095 637787759 755150537 387599758 994609807 56747166 555897667 444970432 516752120 30807460 780257274 868170192 958624666 739995510 917771639 119535958 127962549 133146292 360959309 171903659 508670000 40652585 471353682 315076002 638387307 29829328 611513720 104989889 327286995 126817375 944079324 427985133 870195338 247267490 976622845 256465011 455503787 807307999 946025561 44711103 707519423 366907762 652396862 430575359 922429303 679938187 897859752 378599538 700089122 832674544 936051097 527194747 577995684 922184991 948064137 495659791 782514057 656926744 802924212 426620195 591985399 391740523 495607030 513259989 726927128 80962171 776266511 267923883 837633841 144676293 635410085 932517304 957308565 931974100 940164420 191972562 964175218 951274098 989818801 709730557 924097732 47805971 575212562 193361708 820061161 812473810 920060624 690338117 849653323 624668571 697113070 636372664 882488494 90084969 536407360 635025588 979339151 749160388 758053543 749787271 915822894 778407070 833683172 688711029 941831696 71718481 268266040 774843651 820144561 872941203 934712555 7138151 412260636 146711297 534816975 200223761 892003498 885720292 906358100 781866206 823496664 206199808 849754664 431791611 656870760 479372803 767590819 603292975 729291186 102224300 594148035 388087654 861571492 9048245 357279714 617892875 975046476 316665239 672833252 599258415 778942311 473876366 550381635 325830317 795252863 886675883 889738517 992302843 993608788 945179858 957771525 698789975 863247161 494769649 662642964 906667016 952164291 502866107 868087824 911523031 954408159 786837126 877251308 24849840 972356888 41231794 125156248 605400283 965089564 114178525 403065612 454695284 976871276 987462696 991723352 56086042 647399672 27256472 653317361 789078122 794253899 820028902 908265923 458606126 864654226 760762505 826405587 252599250 488187568 361396724 953714513 401975038 778156802 870200439 916465542 670613798 679897845 111779604 373963757 869911827 916521426 830654374 839650195 967514219 980135901 51857730 512647646 204014295 772592609 688606020 705256635 2027649 678356814 931986646 978516528 956941288 967732210 203001328 358768967 139769468 410277648 255609315 998375639 281390502 605207859 90915763 369593427 273273476 705605514 977349473 989526480 665330177 692363357 116744876 148948353 955734532 998601828 773499283 893222393 202732124 724627520 95664208 936279851 985277091 987581212 359459486 997066630 922606422 993403379 496643343 646699259 377753847 760980971 740700588 949649504 224286526 637283241 522762927 958095210 283860418 610115002 661737968 929561904 660160392 953776762 871695890 884142739 868508117 991962294 218791462 549770137 365148443 474083322 309821797 743408169 584132147 915311857 504648447 955013376 871129690 871862565 398675414 584094356 672331295 948303916 329626046 648708744 48378290 589277002 107978743 938214286 375867104 712911810 122907156 970388454 107215032 789041467 557466120 886905935 664381484 890063808 290773129 517160752 488938525 717183284 524991666 781838708 656555335 692776231 779331258 795219250 748173568 978041981 395347524 466057651 621706197 785342985 836984478 943362124 379832219 670888565 380451993 844677548 322877073 698114144 868765046 899320959 620944222 934146379 725869235 804927645 266249880 994257096 471074624 898174033 153593212 411538180 429642656 493289183 732556462 908661478 673410244 685979233 942070886 987308076 172810824 616748262 647353261 971683105 126868340 172140918 893143065 902229335 481650629 567539374 645701800 892863140 827809808 912249811 751478205 839779838 307053857 612905314 435882148 450098806 416313939 761494809 285789077 832087506 103347910 664255431 767085802 940277998 344952188 466836675 895488395 934551726 628314562 663500575 266331717 818190586 773002700 874791485 234966177 453386383 363003884 768786817 278167711 814544500 934539925 992406244 978546797 987386665 142486650 177304530 108497905 882181079 451903156 475020704 191096175 613960180 30779101 363498776 797455193 834482785 585577325 817091484 70712874 418520315 540169493 909768579 323709845 756011771 763091280 798988516 810346229 885803731 842931785 880474896 792251854 902028673 978901339 998514312 499439996 549870779 201438717 431183388 198812552 590455695 908349798 924524111 544998035 965451945 420793144 739618927 503037590 993264514 968583609 980282846 505475735 670074456 426776638 677476364 746768724 880211927 586651038 910438438 59006873 583432877 457453375 878372549 523308728 550331433 669772587 890123816 569560652 675236647 316590856 328020012 831170966 983998898 300056381 850067579 237666287 540135338 450822084 834436090 442424386 947812326 158222991 788652913 127727677 328959761 159832783 985687865 528199230 991036350 707638895 792120634 441541632 874570880 199607112 541064241 359393838 772469972 588526025 991904516 307752175 784081666 785850666 929105988 371595863 875793693 750525761 906770364 530950490 758443242 305587890 858385914 226961213 976912063 895030582 928536079 281715096 388947668 636525422 708016484 101672977 455767174 511478306 867044742 996353283 998675331 387201889 850940009 953728077 993749833 566448786 865071769 893540522 972459055 936255200 954715835 501187749 796578392 989588158 994224106 53343035 92745117 687991923 921284671 472554224 652757506 720894778 724527360 23771933 847038455 334807568 966064085 46790339 633875292 181040557 752094691 714275912 863624709 523913886 836374469 869787668 995335256 707352877 763785697 869807610 962496412 549487813 863534915 361765328 733987533 747956555 794744247 152273390 246101076 952570848 998540882 509543252 888258369 444222472 782477706 689480487 800518134 60625692 735810248 554036775 927274085 895045364 989595030 678872464 796373301 99154405 913258181 214580606 229234366 418175977 901189728 763297485 921507735 395599971 618512773 996740887 997361665 193371954 838080763 885854237 965317095 677425255 884582376 921742315 969220911 778013913 780745944 247192406 267233583 704937969 883818380 319363308 590500896 897911220 993257038 478023676 983919240 447901294 482383345 197914277 506427358 320482704 877453538 799165373 801820167 311293069 336725803 323688065 370676701 198365173 339364589 36814461 924831111 285463346 711009925 594619007 639381191 727719158 945832008 783332593 982361605 518703985 904597128 514248209 929300982 457467729 904346090 638668437 982637129 949281243 991369244 779717418 878481212 320746341 934192842 868637375 903696804 214277189 796293290 506141870 550930860 114563127 457994171 382087666 755912717 230858616 867410124 52430769 61163524 153754767 578662126 371375333 430139667 617310994 811873523 349255475 630466830 639312375 896462351 553222876 846515057 576180644 716990752 575732215 761471573 192219943 225383578 700383692 725815459 213602114 370439337 480661764 757232241 911867821 987921884 393522088 684895179 677752399 770035448 604741917 619006143 223689222 328626697 180088266 593499390 935599533 949387319 499091584 809885827 669687958 856422766 693906152 995746433 268922103 941426077 501266373 701918322 255143407 449519317 213383678 861049322 895540978 997968693 71164523 755696893 237252839 686908951 957741964 997672943 507287762 881862196 962002507 969037920 414539188 456681708 551459204 906874212 554843209 661933117 511823807 884781823 499823711 952277082 195707195 501010311 871670734 900232110 848123666 969666675 192327550 667595665 454351536 753560742 516599673 952479925 418004559 903871655 860390816 927427351 832612827 913858726 333894885 647875343 932210226 976256823 247701829 298349881 115490081 725820290 763916258 797543246 352459509 627441197 386092170 565792158 366204506 474661882 531878983 804412766 109597289 500883722 965890242 976364800 199364415 272526251 458910872 840442291 987965040 996945281 201666179 357924411 131263765 819781768 836189340 897996249 231629751 456003053 456816456 886368734 816682276 949911084 852908956 960495041 198948789 397739986 202497621 725167876 617528975 688615552 863090206 957602886 787300891 869789946 906019414 998235292 900963439 984396176 480464441 514330943 109619458 884120675 430630143 689019570 216655169 733367726 514179331 799141353 411156533 767143363 790096390 837208431 962458882 973096767 360393142 632822182 231098988 349973429 54868372 124759206 59484805 462071420 962520829 978246289 70495997 137985616 752298634 877847112 329368759 426362615 486183365 777607753 235204992 796883205 794455039 801738809 356236672 357188886 197357684 503323089 887757821 976266705 46190245 933350465 986655600 994697996 115099681 698777134 190219606 446663906 409521390 599077015 983127849 989827002 163809828 748288268 230024166 531741835 331093854 926246151 495419943 738100443 211941858 292223710 124042859 663053328 690122391 798529226 208384652 345791861 229302785 287033591 734464195 761558893 546891776 914551526 857742801 868450533 102391712 390205919 77860647 305391337 178699721 437461570 343365196 350903346 686671439 841872669 443603712 647517932 416503937 657036140 250769151 318066817 879534566 918230922 29405223 624477273 538722711 690608786 883432973 914168862 580819329 738925757 31461629 210738959 512101804 644657615 625061771 706384538 934648152 981180936 249947291 712062209 497126407 603294408 324554491 476882189 367927974 558039553 762747824 994236480 737976535 884819553 145356932 296360717 501191909 854781020 514428454 519850324 948898962 972643212 891173707 983158727 327004034 827753861 250807376 735978939 166713093 456984376 99744796 860117963 694492867 858477769 460095576 975112155 886452011 914150852 536433376 954327598 327925460 688219217 956081069 969293402 212150397 676085937 605673588 816183582 592467523 653219160 486401763 938521115 826993206 829339643 702114025 740195367 494867977 936244394 176105308 839760305 864807521 989944034 748630160 764368873 84264044 902141923 382207785 712730039 297089291 523427670 700766727 999933438 390445991 808280938 972513365 980386346 702145557 869480027 85856460 87101632 164840113 682413199 619571178 839467507 84495939 626678622 544928838 670859881 662284654 798893240 859506015 973996536 480911548 619879874 6651356 591301931 259680593 302865625 106408839 969452175 901144448 912651045 262263557 331309666 62723065 338597186 253938231 857738408 931219202 968826311 373110724 778640455 237089528 668743998 554880964 771555755 81199647 460081837 437461973 450902766 654328787 849789865 69220247 458633286 834016498 870407088 27881495 371035973 217648431 375902405 882430954 985188176 413545964 726821508 242411245 827470858 968575341 971738965 33277603 846749378 567393276 837580865 599116506 881447004 11390311 931050205 622210388 983333083 729946699 882725960 442960627 961723189 700855180 816057571 527615060 562079317 878969620 936192810 936769477 992666228 399499123 939734023 754810215 915839844 278514209 735286356 792322606 856826729 188499937 234373013 246990984 936313838 734878305 843466419 257062237 830911219 65202174 627650187 819595550 920331929 597289050 771733827 1484619 139058264 874505600 892415397 837885512 946177234 856454776 917892050 131548745 364718923 333161670 933406445 913866659 926102407 926891592 960798868 213939784 502653480 116057318 410699599 803051726 983148731 437507641 551454809 194691790 416519218 473704444 565475209 819179900 949464879 611666995 787547823 777685296 896557256 317948269 987901854 954640196 975680146 320864477 549369969 564142826 916479691 29511004 318832258 349635728 457800864 541072401 865011437 773317279 795661554 668243289 978275634 724202770 986559108 550083260 568765052 185079574 269603766 963414584 983285004 944931028 952834490 539838996 948494121 180664005 207415349 584105872 982089033 134250302 749946303 911951131 970280169 959721184 981521027 541542073 578658749 451843563 600546998 946799895 980372819 821300092 864185118 355260264 985688322 98288418 431468361 491252229 766686955 818337605 921841285 903260234 913586196 436650518 669702255 134414275 317766396 165642607 497402826 558821282 733863987 309051949 572730311 791941136 983319549 237685741 545876288 63615803 948989660 226348328 685214292 124736862 254922056 652243059 727299639 190448843 875267039 541121926 879538251 825750398 981921427 812557477 871823738 363343990 836264773 458024158 553189606 344114545 684619358 94620156 913634070 13450183 829543581 13078054 976374937 432170162 605964724 836345990 883654450 518199577 832682419 626766123 677740252 868392189 900358712 830329788 946478608 40046470 659391669 311181313 724805860 136630390 938589322 944077404 994726533 558293673 688997032 849515907 851841966 816004366 896380777 516531214 636295570 934219362 978380686 487689967 728885985 283227365 570810001 39878899 960819871 546486796 807801942 116511727 444809404 846362772 989505900 149998152 925972834 218099837 874293848 109466436 451660836 414912328 674511304 650019658 713589970 167687944 599154684 671335481 970056660 219667429 412416176 503577991 851852976 375152239 395414150 525434575 756656190 622074516 965858519 346269025 810075933 33364499 738820543 866328832 956276544 871981798 959365165 930109594 972041149 818645174 834121326 387154145 435763110 590016942 995391201 301704940 470244548 82124644 666580264 287684642 680235199 99276557 666544632 179523461 686114380 626547538 860446306 600525935 690846661 957665980 970338551 999441439 999484702 244139152 856858612 420121888 968204091 933830275 967366669 303237448 499231185 900827133 977824796 935899187 941238826 662790645 756074019 729216777 816797981 161256417 737585480 97718884 799129989 186742472 898526473 978066104 986183821 606949333 819166915 367540377 741399299 997874045 999113243 113271091 632965378 26071570 378414070 581558283 972566096 657512929 761503229 388483224 890159288 576446455 842231867 821707302 952692754 519423424 648669734 884804552 927663854 571340489 752323581 608729750 615778625 53278692 551396104 540573452 834632279 369481860 842269473 581013338 963082122 779183114 993081866 310437303 615312035 858651530 934785565 636016559 885176558 364171616 816457783 535546140 567549005 635765159 759982248 935368233 949033149 80129658 274982958 550321792 921457093 49507111 121184174 712761361 865638004 347823643 954654228 462063228 950710700 964236520 983869255 66364267 184024689 686448364 755520201 366896738 405104779 598976118 973331747 516906134 597847779 811947247 841733997 263497295 512868861 351351119 692285393 711820039 881821596 501583138 818757201 33312646 889123846 893847048 939164219 40532296 870291607 344692031 606483455 366907556 424646665 4496681 616770003 98865305 486904933 28977607 128571000 643101604 917026256 356724644 868419337 81614528 858435838 578080222 742384986 334254618 980949022 456723242 517847025 570867275 990619963 221224448 820729749 936963704 950360464 491233780 932382346 131291627 563316079 201810798 683739545 6838724 944432500 241463675 284601371 956283907 967930564 636063371 761486221 445654253 721148406 435377805 464487166 995253292 996106392 546401739 618370357 143008200 347758471 832738434 929330322 56810137 446137727 920224004 946041400 351566056 779065783 478223484 981308453 195239556 542098868 90550127 149970342 13210034 486352238 502729235 658560658 828287792 833095211 746977447 970944722 287113692 453976114 40441203 871586270 476850203 859123966 418875453 807237276 72406971 577624407 266666620 506146706 860716358 943024871 335094801 426563814 391236263 821000290 317324611 886502824 617742435 879721114 771899613 774591098 780609970 872974118 964592865 988916556 154694988 516851828 363396558 826297453 891367502 995717568 55237536 535171032 525650483 945089492 765521620 828169470 533908198 789114336 224385687 718158187 168555645 303611261 169396886 563346446 120793729 754052469 691133898 848664326 796472920 973485243 793396591 831312092 490023254 934873002 523028155 772204335 220732028 607384426 291270617 304666841 27292173 615638221 315872139 656882582 39240404 967372795 710783323 884426982 56221397 325957958 448459589 459659996 744707735 797569901 778770447 904517666 836109342 954967394 584571076 863600535 320267323 748635707 514459325 981183559 895645516 955109676 854788278 861658407 785565764 883819097 216187752 803573440 273374259 795638348 746239346 797451534 893200811 956943455 164372315 614052237 904159184 976379515 566493392 736545383 935747828 993116130 12601091 439075577 43034393 642078584 313870493 620792601 256866641 403272771 610728468 867916863 994300883 997068269 225140828 365835495 326319862 926634340 916728622 989334600 720913687 769703012 452810586 688619304 93462145 939843468 732794555 951206736 760464909 839617651 768159647 898032168 805636411 918683240 675238007 992663057 6265439 972081802 557910493 739207441 537213008 552251615 359661396 646749699 425755410 453015585 570498731 976450494 400638096 508002857 474567059 671776918 14654536 847237766 479347267 828368978 71133649 458456247 766956538 799560346 361342436 491018756 968909317 982965199 579726416 636436522 399259391 536633316 875347948 909143872 634171026 828453024 110457748 124211211 846362360 910792419 847050289 899689555 172449807 972625438 828001210 903980906 752071837 834542138 691550815 704243988 920748128 965883349 332064926 409068633 172408686 798835973 199389735 895738793 315462192 590329157 71100441 569351380 528969739 826290674 369301061 419194332 747248005 946950930 276919382 521044696 468445628 720546939 86384795 950277130 456482580 872738371 324646817 337515656 435883498 919250729 200102415 478425724 165291922 272727992 283823372 333439880 898501770 940494381 4118649 597822543 113727226 933376258 532650708 547349490 304353058 849326347 179113018 612384472 85265884 985631690 903627220 992470697 512287239 864787260 233024842 365736219 297758384 659660807 841345934 978079788 433016820 667152615 476370665 491998731 60436129 985969703 575449003 903915673 480699889 843210051 745931024 960512091 139000825 183777677 611699014 908314593 630641285 978569021 486932883 995004280 419381504 911286599 663371684 952310703 935435405 989663367 496093146 885689447 308625893 876901669 61851349 648220430 940660355 956923295 115316582 125244488 251155222 276844888 808799852 977410147 599698292 927926408 863557603 907993413 451511615 862326489 830355844 885790280 180246693 635036329 180098143 307206024 517165527 871142475 308963381 574723365 751828286 858852401 560635076 610065623 311741755 954704487 96300096 940160529 145041364 720830675 71258310 261728285 174420586 190911880 5070813 846451208 94268728 951171321 904654893 960230342 89564035 531136827 201870055 679329618 283461289 834529750 165806069 945824396 680562518 748640667 658310746 700806999 411239162 806008104 303728102 441814808 855608237 921506282 367150408 588885100 374807264 885979224 237514437 537053375 912740655 998317188 485951981 562485738 289819013 373049506 827629670 964376464 899360723 986419536 202796723 506033926 112400364 795046752 518545532 613494857 3307665 143074570 931072867 954730999 575217568 927657255 951790106 972860681 651754789 855570433 128851520 624848615 949166005 951602924 477819420 657817632 789767822 944469107 515104074 543732739 632363431 811088366 134336863 648481508 963551793 988128306 364604361 777150930 804501218 992986067 491221920 585618034 331502374 422509317 233682652 976477158 713374213 999785634 972025800 978211891 64251608 122233896 438432383 577515149 914234561 988635010 769484387 995571379 118875977 792876874 881929773 981756648 604491605 897718641 977394163 977764325 691855165 936153690 125363286 931047053 784919952 987872227 75666435 915488029 720781038 898221868 859488531 931112736 256862820 620747733 66722020 387720652 458070139 809455854 35714195 614460859 581562996 984893893 35284843 599281458 21685179 90182877 30605536 86303740 907563653 909571051 452292339 535427699 541011945 606925998 851074176 888817285 87357165 415878370 528009128 999425352 957950338 967597739 906705028 936147434 162453131 900725269 218939410 609866835 39883237 304059070 856364954 994333099 52837641 203956634 537063628 798085362 637528753 947215785 588525431 854274609 849330902 976013436 256652966 823981844 861544934 882245432 84685751 601843963 57947356 396503512 660715011 910869862 85540704 828287692 259114920 311339063 104972340 323960499 458690169 884225105 434555647 664903520 283314273 894974786 444857863 521656203 229310151 403155577 887333440 953307653 708475966 716752869 295625469 505125688 176357967 609364586 399212695 882183213 700195479 912980101 38867824 333688618 797379497 838919415 327966059 853576327 643293388 874895187 86399985 187184651 793704294 918671626 430984101 673355080 339275433 950268620 654063473 956573659 664535997 939881647 774777266 980980183 83899555 718386544 479127717 862550009 272636476 727935566 746998749 783174906 882335667 916707126 472194561 882417196 42155079 770398805 64481609 980167183 155071336 357181020 523268802 763757479 540427132 880649885 150350265 201204626 460590909 826334928 379398161 607536658 839266208 844098823 822743690 975698987 568544860 907260569 632039531 892027385 718903012 984065682 721717553 728120409 447817048 920549826 107949349 406830793 764536058 766328764 572818383 830399526 666534364 866114927 820928329 834436058 892468456 977721879 570387705 776132562 713602964 885463413 99929848 814547375 103023626 361031305 324962871 368730768 13568463 265279852 575698199 913429727 236018527 538889431 799577539 874244228 237097376 912087266 353667634 883839803 803695072 851055469 856341471 883109085 98676927 393951974 818552062 910359647 964613014 986499723 975665172 982141856 731512062 810418248 968822990 977207831 606773783 667421063 94211192 569005195 417584274 497390182 294725338 987257991 770107693 973653882 364523188 739066970 525520408 856876082 24233852 885830016 558975906 875214362 50041770 358113708 610493832 999556393 803592835 862188751 299525271 945227345 657160931 785275976 41708485 482777438 292677528 880803674 347481144 469938399 103324315 731038115 285699811 886869591 258713186 590546925 891182209 902185668 299695725 326409034 902625676 935139513 274084718 354809039 473488540 671208572 824076044 998181371 629726370 808198940 16062024 109728906 481762786 819956427 806056706 812084937 954605950 980548600 806914143 888574083 317953197 860520031 940280273 949617912 949422519 983741568 646481244 676510884 773258197 823613038 807056821 851102882 761474049 935301317 343309064 438589066 22055940 674153754 463098619 821982730 235075529 272749595 167678570 664826200 478622803 681620444 436979467 650387588 532800843 669637512 912901668 984664059 274781579 333253787 126966348 986450651 568792311 939063886 391957585 451655593 365170172 418087831 724274428 952261317 866120983 995574844 414531298 483672830 126041276 555666935 14579332 986766649 288326890 528859739 727191037 820334494 720713863 988657039 702740670 708895724 667660772 852489650 44660911 801465543 269235870 703771467 476368503 672917203 721746039 906681044 402486531 984517377 857247846 937059712 894638314 934416628 279706587 691887165 792084967 795876442 602822115 801852762 712027105 749318325 495705834 593284977 326418844 982038663 963692821 991610059 369259585 737344519 764314204 967648442 801544303 944960679 680450360 793881120 525600069 623320704 203622852 943244728 629690337 842854178 444942153 813976933 734650919 796558913 571183578 717016028 783759224 851289474 608635302 725907019 183568947 573436359 59096778 580299347 293573194 687078858 949058572 959990789 496421751 507282740 555585449 990529088 694596331 939324979 344819504 722059954 277402878 474525049 229374816 948717220 333916937 843603081 189929350 560124008 550879129 694848730 442848462 949399258 597295575 860756848 699217607 824973569 382042514 538368221 444376176 928349453 8692324 901910642 678438346 814334628 32718316 787962946 699195366 729927298 499838177 790980193 334453601 656723117 253260467 743879842 287813076 867356833 728651855 990595285 463010748 820061957 217641368 876589294 580584191 764263155 947659491 990745254 3911530 403741830 348561977 825526473 797671107 871847518 581290171 629873829 392845437 750342961 617605612 659606371 211855432 344383087 875104686 950726640 19236875 251589101 982320936 986604438 326482963 367013911 927382155 948134640 653400601 891067031 626329924 853092839 234921057 369313951 117516347 495429074 194720817 834809466 745056933 926885590 339494984 967856800 223836064 547540225 598874480 909247061 407633302 640695074 652001546 937253189 206169967 753318495 139233573 841740751 149841042 708403514 970771852 971913931 552842728 813855294 409025944 416048695 608839350 719780812 407855424 735626889 793209948 959378270 357102927 441173198 193355461 634664619 523139002 776398813 758185448 790368108 627456694 720881172 542623464 721451954 522722878 833091417 777003320 851489689 604386230 722374791 562706873 824922538 556926151 738025877 33511229 610759082 620441481 868969034 564236829 856915497 539881454 914273168 881941362 914478429 903700082 967807649 67570445 128517029 758985605 976610836 739273506 872715148 282564001 890132677 172947709 532691195 847690788 910853562 487693064 786833486 260273949 527931053 594376067 782570619 256226835 723460980 44940069 114493576 648060781 799310380 426361426 444424492 685405695 854993897 746304103 862027454 422965992 454292951 95308086 794677643 636757476 720634882 644880140 701466281 742402381 818313930 444143815 510468765 879687980 984688972 58069050 816822986 30559164 736945612 835194390 858761942 947483708 964888523 820839634 873683174 483097524 880746069 163649293 266778511 606305778 921422409 929400938 979469457 262478458 727349979 782087331 892632829 740297862 944717332 828211109 879891032 316212480 830973937 985973856 998044110 633067017 691464732 454669412 508137583 726754913 827082387 492764342 874381738 836728664 865942310 588520676 673829159 277559684 825962896 547723523 943097564 472354296 541357391 503072754 543759452 205525801 716740904 795235591 802396798 303088985 590476745 651719225 875643203 361703656 406071418 203116722 601275904 802288168 918844512 895457579 914232358 395877290 562020119 343784700 810518595 112550167 428152672 203610799 920173451 171821440 995090549 611421780 761317711 391139530 784532830 154545557 429983036 72409697 803892425 938002656 947307404 565864310 625445179 64963859 964053878 542578852 771666643 797017193 836028626 606287105 993526438 190896774 950466000 234194466 562586127 260804733 672591246 755623629 836935830 863564722 947630867 45053139 124179211 804116946 870251195 80971369 737650849 345166534 957621887 945372275 980141785 952809954 974115408 150426656 545259417 747709026 886193724 198749923 972796042 780037608 881995777 293375760 997628326 375148092 711953689 177016761 604749519 490170096 661882766 299129018 993366963 157487015 433821869 411763207 922221626 393945557 914164986 581010687 766056058 921483509 944232704 398695381 998336511 294389284 387639478 213622169 592398489 886340562 928071288 731220042 916164887 994359201 997807596 655690678 973516587 258815873 393378414 762429649 977051531 223861407 727194108 934393044 967384424 189744955 806921359 744649491 934434067 483536242 957179510 709079391 831393876 182254602 844642162 190647449 378316680 566354012 727290746 687250649 767742029 559563040 745160710 116952340 207160218 285074113 674504062 82230717 526727955 247468067 939700083 381318326 762822986 828847920 956143904 407257533 769277066 959908447 962952797 368623045 513944371 673832764 982198372 424014171 535203975 815971684 870683032 740458641 850862441 260293486 481522136 888043100 985712771 462554951 771133721 138254603 472495598 560254418 569986245 147053889 479492366 588802964 953640013 926455772 936194973 944754134 980025432 519291319 738077697 681057863 708499396 139680711 500127342 666403050 691908411 761482392 816556708 790574619 987390932 30920331 188484399 750869996 998099470 152333191 284003962 634224001 934264894 560126828 640482708 704689226 997106098 392454664 588196575 518581189 831765546 393276478 401007146 616963574 981179950 867768102 948229446 523328901 975801786 390085449 429444453 677283067 682934650 481898167 940994818 117682572 298815229 424104017 691692652 588329354 690087555 44069424 993278386 206597604 271980761 326802318 726311163 154183024 946899048 693309374 906460148 839138108 866705293 219320664 547163929 871692703 953418382 821162122 990308222 144514640 791763337 350009634 907629105 352958770 564478624 884174461 897575732 233321521 530428128 789244672 843899239 333718556 898344062 462345993 993613140 718881632 846820391 792914763 969795326 290919802 507345283 642520077 914432834 312957137 475217827 647843600 948496457 125724767 251228405 379256018 553748917 432682184 765275943 419765175 535943072 81701765 551363783 114989482 234818471 991570783 997497563 192156357 526448702 206799815 875100860 563190636 915886946 1534876 436426935 3224411 406254449 332604846 814678145 408667534 531371074 648962663 745472209 928879783 950784395 709126136 839935562 919584463 995914871 540883429 982080259 985856264 992823877 621754542 877556788 130090971 397736902 472081632 674170861 55501752 55909472 986403473 987249937 103588634 149756603 307015654 872055331 555684605 988043204 615438992 876950693 932566336 939875942 330642538 511642474 962903275 981525322 71688131 878481842 107674849 488646342 266113478 911816722 385587971 495577836 396612203 477956122 718577671 823939391 143460706 193318881 836522188 977704316 848878439 861966496 661612524 680616377 487366680 505173655 391589385 692748929 830685224 895792266 117268178 886566341 728545632 841636975 811880377 854850234 222670372 961941296 411353998 515749067 428333401 473551979 10115877 931428648 221915500 311592857 533877313 898829070 517645457 999108552 723039285 920982570 78806410 935245082 160102393 946011441 231038585 814618879 488728173 747191763 299139603 299620494 766128605 925354270 663038484 953210488 999284719 999692971 863796553 944813604 196137015 351020741 846902811 857649401 197447557 821027885 84976404 890441476 448324623 731408350 93261936 426704632 753900693 965152673 973256446 994011831 236531063 670354280 564037562 962004343 730927668 989694963 854112987 860099496 466637139 847908620 756033984 956244677 615478079 968381739 919483800 965877074 620693805 838607291 251113051 996655666 664039474 896081399 17089484 874817229 261059914 610149386 325963564 442706952 476285579 632092865 808478306 815530595 108118746 326054843 126708206 461846853 228956245 735518452 685387821 991770792 617592039 681856162 512709628 757613508 755808445 807990257 7717944 993907593 594960340 869420405 347181586 365783935 774493477 835963431 487653167 513459197 533590013 963419944 459798664 477337803 532265906 569452927 982377344 997872146 391393935 511445546 457668905 944890262 230732869 319409589 873061190 891713803 601776763 946012086 441787048 826957386 147679081 798839824 586611723 711193854 447619561 572475861 551964832 725613239 944878452 966059862 104375626 755781276 549234639 723441260 58048928 643869190 216101832 720060132 790972669 859387702 594406610 865659882 405918731 863479480 166915581 513339303 102999668 384914421 825974555 987179192 653184448 819368442 246439573 916363165 154231139 856714923 363174422 436418203 47749625 597410302 474249454 876202365 507637665 818908553 502460339 609784947 708368305 800262774 16372349 32147100 922684966 950342633 201585803 590400782 810469819 920168930 455375924 877326385 757146032 920463325 330348571 399965503 31944440 999800955 882717425 983717837 894858482 978659673 861928689 937041217 429696201 566692085 968353086 995535165 61324492 256670751 142471320 905861545 401021236 957298760 646941439 672700009 465750231 489673549 276116272 958533238 463716455 844400348 869223726 943720331 905306428 950677658 473852561 929379163 143602611 518206062 815662521 919816738 913198769 977988441 981228376 996407665 161936730 761583061 601694018 704757077 775521237 814265791 132599974 210668646 952381978 992220746 44871696 674174277 805702526 981507363 200909743 462251774 66877739 74031454 822668140 850381863 597292686 750305189 602907447 918915016 135847727 894610964 629212813 970632180 61846927 835579858 66485123 774084691 355926558 675276018 628860629 746838171 387560196 947530660 471641199 794272685 501663896 874382913 180813775 478714917 927203618 938545669 631990957 977738324 745237056 934421512 602759215 917072495 753372124 779443713 280182277 441711670 210327645 293631089 173562994 629906062 812857096 889325654 630516153 765977991 577375705 828462088 348578373 805960658 128826360 983533016 947522741 977869050 698436359 971508029 894432038 948743826 421225283 819944748 432718658 482299289 493663034 851574676 710572761 729536744 582287340 936713944 793627471 865660584 440739228 609233046 591453088 926337131 509278178 550564111 477721581 847765473 961978602 973386491 883974969 885063378 153526600 366723140 637604580 828579085 193858627 908137455 603763804 933091779 177025756 245987930 154803512 534825065 633124256 673958833 898815774 988932605 859952119 919864917 358234086 461216832 260601671 642070605 416454615 476788054 546050581 852052332 528350714 906135560 429374740 649802572 695109861 704107027 302669551 629644797 504994125 732568791 610220392 796309597 458100953 906490544 663923309 781492900 106229224 353398038 848705501 946983277 355293192 565817558 71063964 780828064 346249041 667426492 206475457 566100570 634994333 988013319 598927603 933773762 32860642 110278791 232210645 969101609 886224009 930279977 876590353 966263249 25510024 84468516 765940522 865811392 745786326 767342661 438833921 575412385 957700670 971681629 373829 726417353 281062572 348325641 409170396 591061260 435806618 711865726 978621195 993521905 570259518 630903668 400922182 737021380 915773673 977225109 865417072 890771449 846328939 948150660 996184584 997358044 383967578 414719759 314240333 469307949 336488739 784569884 999188230 999469805 297942146 940113448 795042335 867084375 710438159 720893202 791612616 895013228 923778664 923887516 128678281 413258875 576741859 712833927 935413960 977695157 178429699 196271919 617921083 668849066 448180500 473345416 495214377 988391146 518030098 708051233 347202109 610858955 374562636 584327178 508288029 918426165 533190962 952301739 209133213 663421696 609492415 625517481 658955836 960778851 513061755 731338827 115622569 538062860 765778198 914207755 706679670 903240072 552062689 914746213 897415298 924832408 952600727 961828825 143228467 902483387 538802057 596892680 670050724 950924804 672322870 980200042 562032713 940526467 671383940 809569314 825341822 931582264 897928432 954594640 630552192 868416002 725936518 910075748 78238457 810609660 524435519 966922533 862185522 978434894 844349156 869974630 82821550 528616488 694649204 723202646 407456769 742235578 967514827 982765369 469157227 988772430 806975254 981256586 430648133 823525777 985809994 994196803 868574672 994640526 566208976 816192783 423959009 648614199 735967868 865156014 292265951 811218837 100196968 140409955 60984062 165986204 327054625 465848839 223387110 550350376 550596646 706905574 712219296 902816202 329705095 343198819 986379465 997811566 333671715 483295635 692942673 951854814 809855230 846134418 429947770 457953944 377347381 773368458 553679201 557512313 745525361 759231208 27991296 136346310 296365325 673482004 533600554 899554421 22474378 735775989 780503284 814105531 653151113 893150982 168121484 495581557 452094717 619969592 796312152 965088505 928804538 993549010 20796485 542440929 822448131 975999669 306885840 560414678 203290983 319379494 747770019 786823939 658193490 930799112 918145469 974634481 607352003 695852620 68378538 170694422 844975057 932679610 568767187 765697141 854804936 959552689 497834871 525284893 344491454 372567815 117237299 258311191 605909161 787209573 301622658 732477194 896308728 970292712 607260578 819303645 585893554 882936338 307731629 923362174 87186413 941476040 151272307 841082122 825965423 940284716 97627690 252006442 953514565 956834285 483855709 823888583 657770091 690744489 857184884 882539820 391014926 848221072 247277568 721484734 81436316 897321939 525506095 695075225 53184441 121556078 757342770 819024253 654569277 818943973 405632269 518219889 877674621 958148873 147863805 300388687 809345308 975031148 582348007 662417446 902334160 968008406 102127503 220782852 6035852 291683278 412061907 766857222 278786671 317038042 783766492 929426174 522964737 867821878 640394240 956167710 84051772 810167676 482921670 993762970 261011255 526871514 582464596 948638281 358277757 403304099 355158331 799564028 7549538 493276629 83570109 433993591 806799390 809173833 255113571 965355146 873692511 946231337 756331843 772108219 445041341 724147188 706227686 847925287 9409908 429794115 908513320 945214740 42585418 351365789 346263045 524463761 186686222 367791331 946647718 991914119 235161427 655314384 504147508 683405740 931048475 978962699 453268362 755650822 50451077 412051732 956248265 987528561 968208418 980603463 72729301 541429419 517709201 851952060 431398536 443730986 741512127 863958644 871128115 945256549 664030959 729547764 317987833 895886012 922146098 936979108 697560378 915058675 740763573 762248060 393186577 502403507 464760220 921249405 370650027 633465852 795492432 846324897 388231045 762700506 158115765 810777405 521246475 750566643 988946636 997739995 551330854 599989465 691518997 756370482 596282690 861635220 595413937 896112410 349107811 767089450 599635685 624895080 972061201 976559962 313678706 509593544 747147453 976349812 356996744 864656670 994918726 998270940 343708707 570943226 705549103 821704094 457684945 834057040 56268275 111226771 543256207 977014299 968392614 990608392 68981477 477944160 209797845 688610290 806339232 962879496 861036975 914896124 863451721 967179358 217663788 791809746 359512306 519170938 61934340 157146438 929298899 942674273 441993930 513368788 699536441 907915787 916998473 925357554 144844927 284408369 648422116 895108128 804929181 997898586 507621316 736896279 317981581 866273502 702612388 904294393 429328785 973639232 943664551 950945340 259022092 784934803 559772523 560914820 409983913 938209766 743147030 844927488 24731153 879460123 151416390 195222877 507154772 831363353 981159468 996680146 360804998 688518768 708804433 853405211 520938460 864470242 668309308 754793787 95835288 264403360 249453507 318878849 700857025 762682464 440075057 506086946 402471765 877235713 889568025 919599626 990967029 991338381 785023169 850372372 992411311 993979364 159075910 937704580 247413553 273483172 668007580 922260378 915475167 946666244 711986965 734846058 430346383 667381706 141073813 331986382 120957553 541329577 524726209 773870628 518875945 674063600 270878056 573529172 285695890 768829416 544235166 836260167 890503308 916969841 647623464 897689077 342325438 935520053 313375219 740805988 779867006 965484354 458046434 611384084 556103775 826683867 6853742 944366994 396298603 478438402 608681634 835330395 72624593 544471662 27565972 421674932 929185332 988980188 125323603 594748817 504761354 962546486 632505997 872130070 874751172 930411167 703728917 934925773 787243466 823630412 297610429 911170683 195310764 387941793 547487346 966131978 334270065 398667374 148276640 401912025 40432809 751333505 279804681 552404669 230091768 696764891 236008683 523268117 487997517 794161931 268537162 772737016 63349739 924341629 976700120 999444716 547666014 767040669 748580501 863095350 250163456 867905163 875688672 979229587 530549645 691108405 354908836 420472706 11095952 948561677 947791316 979963323 350360583 721453425 971214027 981734843 521384637 993473744 605587211 948521250 832393551 940353388 776898197 892621217 648583887 781355330 88604202 248331682 961332801 974483480 484341121 780392093 66522344 826470968 765111198 825165477 530760457 595541060 158158258 974939751 99277223 941604216 42494314 208271883 268688772 333552768 586525582 687918863 612869299 782008823 136421339 922159333 140611548 758125435 300653714 465564853 378202062 723862709 957804154 976558872 848961957 900144844 118677695 345273937 228828243 355515602 164926026 377158386 131565187 897971956 484535404 915350634 156773012 347201409 211635684 395579550 277160662 910263917 664376859 785574148 398656346 877917260 650721233 774950383 598480800 894568027 130000879 572999230 31297564 895473677 825373100 870093300 833046854 879647185 265700907 968570600 648283495 792260164 100159833 699257486 363832767 365094724 24554187 410220718 970352362 972276370 244973654 886106118 867978477 887383263 311818490 874430073 462911761 554802048 490441649 831001144 140634663 929324863 399284405 714051966 393463529 437512423 343891129 498288684 689671314 700086216 598881128 890717113 91652533 332562850 679125669 838619848 818987949 986111145 10978634 909184794 276153681 406676043 909628102 983397333 18283101 291088118 3989509 873521016 288453504 706884262 197278150 803052144 402387840 764548742 317953132 321443346 591701665 744549176 916107580 927587354 59118864 785111877 54048936 720629388 945900041 984172236 322684327 629888261 107706192 796141058 733925645 867099801 111320650 269635901 906151200 914802632 205342584 603873594 252609188 859628363 168436956 970184054 74535 651436234 982293967 993469647 810459019 845491098 190984287 928697634 788911429 894882738 973031054 998384396 260859832 618287904 318574912 836616107 876850304 977090497 398062981 706185984 224247574 294542428 865121517 933980610 311411340 421740459 979529472 979676936 773426466 914133449 621368242 921368307 641738183 670787795 77306427 874604053 362662431 528891412 676880576 976987093 117750951 222249372 476483478 509375079 199525555 578508830 679422214 833066477 722222061 780047985 124812552 708646083 141738538 863766629 360641266 803146385 412882925 538102434 882736580 900680364 843378634 875489644 474796646 831501848 705688405 902617661 476458845 938577977 195287305 808047651 182860832 556105293 488806724 829301084 875888100 907496338 458443997 771241184 228157818 459633605 822666430 867507212 403922856 912182428 431287319 900484426 614326779 725098277 813444584 919287032 427417992 795455567 674455562 989992350 457792242 664832880 958306085 979996630 379663838 847128665 386704899 866260039 173561628 924817643 918981303 927195018 292750573 653574911 569074529 778233379 47923611 941913426 344174176 719742100 403995675 903993050 475510389 993574766 497497970 950448752 912091255 935664490 813941146 992333994 887475514 890141925 207213416 383894511 902001041 945903841 866761354 926772429 433126913 462950689 660841534 989130333 834962835 972922693 435548768 580151224 23147133 352749852 952870024 991741182 647696020 826547122 765747760 778765788 400415475 648272848 532477044 599452811 813473286 978248716 547386362 905879253 964347364 996469358 396889139 649802263 699106027 795195892 311734296 992490237 463060063 854517945 156411058 643240266 456267520 470771244 16616117 73948274 302097774 660396655 818185214 828994149 215860841 858824607 430463575 518628848 704905031 734522036 715143579 981429098 850525960 978196131 251001555 579512227 954782938 987049062 866757005 886472777 995437596 996860600 497888298 540621216 867865196 972003750 454062923 984190232 504685407 930887843 687448130 775751668 950881227 960898761 440657431 864652183 385798673 848606225 895141518 954407438 375866629 732109900 994822057 999654249 911866803 955876867 588057304 838137439 575605188 621606192 335039494 795494260 469399771 825778248 480125092 591681203 239127996 976043884 486187676 639164010 797848320 859109884 400618660 977183671 966475644 985185126 717067827 893161607 179311451 731882269 345988817 647179742 45264764 429311161 691961620 862093124 848194325 942475087 135973967 921370028 123101072 373748622 746967913 887683431 677294543 959603028 216963167 812389187 314169497 517141020 116444445 444848213 659865748 894285607 878257922 996660738 279453422 801757095 179510998 786540715 443972075 667321316 582085054 852768481 936135930 997914527 789369173 902981306 985333713 988448689 4795540 152619843 811401164 974080975 545488320 571778241 392113849 523095403 866583977 872910349 11139871 638341810 178523680 258075608 439481765 526350805 683281108 999120140 88133912 539301196 97717837 895911318 49774020 790581072 317670820 927804578 596950968 607196452 289589199 431831088 222626136 814282058 27241852 315576674 908346996 918492447 739347957 763251106 165175564 478948301 76245991 961037995 406394769 454208509 190141485 204797101 445295179 889605202 563330201 995191337 803591206 954845561 465619044 943921972 730358483 870491654 970424432 984106232 138145322 447220889 60200698 866555584 552378564 826452439 928881026 967182042 512212296 752672668 614809191 883539581 279876873 887296013 925947978 935025927 515230319 708042306 332914196 370472302 132426221 433002200 427455395 550182982 610134437 929215617 771209074 868777815 892413353 897510699 708205365 931382630 169578854 467052821 371436039 861517569 500025143 868139173 956462286 992590919 291958249 959731857 348355406 567076181 418595047 765992165 728157653 873162785 515397225 806292488 803715464 989483284 677555913 703572553 406506711 873876641 362012002 663928633 737913779 862115371 371613356 680069190 97880479 216780290 180932755 929421631 636201525 756897924 802469642 937741159 778203873 935442304 733054856 782874493 839269065 911215820 299933243 502357634 208350760 475489357 525815373 637464108 611175558 743131044 311964306 758854030 321442378 595522299 809022998 930012790 245678239 868112274 128824455 493207833 55389472 842240422 750338719 988006871 301331925 944729297 10469716 633130123 911271820 963123485 739321248 953333990 286876930 609585153 276808210 783959810 241597303 846905957 395699731 501180169 967308436 994293106 661968245 906350156 972384365 984896295 717565024 816858636 143281943 999420787 401585352 782724297 854226401 957236859 107961219 418762366 766324332 799289554 161564453 733413680 469287242 628275546 300507564 740411149 31295757 968496079 559980193 933676998 122672558 923509541 44303787 930272024 293586950 484742286 533732736 858807189 601607578 916412826 285198642 856166721 638220259 741180221 876750074 961280987 633657239 901147331 94297973 534776745 38888725 157037941 142906466 657752190 188712367 303309348 466346069 552149362 581393800 808521928 213266164 805587286 35639997 397643566 811369273 893924007 945484770 956084410 937941570 955089209 854293325 940460778 349642985 751835364 289023966 876499167 251662596 384410864 939883618 963115479 499773890 832554691 515690681 876521523 513193504 806977777 979049070 985386764 700130661 956110756 768950819 804819156 505769749 629481765 783581589 968554339 532908245 614688567 757469309 793653338 147460096 535656594 676496471 836020311 889018433 966868201 734209180 815756417 913000280 967165002 548021448 862628783 290299794 512756102 69677514 326823413 269584141 565592564 459946898 621583128 957999484 984801974 680660737 769077633 975871955 978733102 323987879 340767905 880328307 955234515 483586831 693337843 680491473 693615156 385676002 789015764 598372679 835582966 495025788 695458331 784299129 951687393 52011376 998827779 318756792 436165038 66868869 345922445 733441067 791885530 54390242 363067689 205717521 759101966 603873329 775146824 29956745 314644909 886616206 978465412 695765485 812129723 977365296 984702148 41391145 911654794 344572136 396783017 24684778 578954443 344155075 399783129 790472616 853662786 120330593 401052333 637510214 786508057 933833977 952972703 16333814 139472524 754053762 998049397 962735724 999702843 943766898 947236780 621848444 726302946 46619525 749939009 879451347 900845370 448269845 854945265 829972647 939839396 724734898 780195565 997599834 999405679 52847021 438295264 434353650 829551458 424641299 587244038 333829489 931999333 319213346 786979156 28117790 241228021 251884443 802867608 171269077 330441357 284913612 440791840 896672015 982032278 119238132 494209152 640924368 720380327 179522144 280583919 785149381 922727140 872779054 995603492 634287002 669675976 270128452 672479888 627125118 974825967 57588602 723793757 349630192 507818178 43724341 218594443 819875548 933432479 951682863 960213665 761892134 915032180 875286221 920332321 385556678 936994883 267522322 660672772 147154321 751637597 727257555 824792968 452676166 929286842 710265456 906217051 286316173 686236395 769529767 833423842 594192095 654261499 888927949 995636170 332825039 801537560 418814638 755721992 495671548 768426563 873807908 953085785 574720234 963301082 920245707 984791794 915262946 929684270 850538807 956220939 65168533 790497587 218036507 567377226 310658868 359241270 741136636 956706876 398021114 596905600 605796213 793315213 361574815 461867983 104450070 426118108 181750672 598291923 899664526 904380173 588835169 768232201 778361359 902405607 638472394 759012772 486433447 543076558 341774239 747084539 833200203 870121098 244346357 803395999 937069054 999166641 452191762 590894371 930811242 959691397 737195225 866864426 737309982 863605802 469913866 477658264 164891273 551436455 762663400 808372407 819522404 992879533 523502462 667038821 586022121 651628369 17901477 640872039 140218058 502579223 25332051 995180769 731287384 796588293 130992165 716497698 504304555 537227051 946019653 997540603 692387906 912269336 288331445 316348054 993255997 994242139 293094367 814624386 212213043 716778303 162341754 978706404 59171131 225648456 667816583 943512407 902853020 995137594 418636519 901861931 715460598 948319004 731312128 850514528 868092275 999641205 902832562 914269160 21973646 591666003 310544565 842781764 908155534 995795709 111245338 192039425 147485364 488791219 926676964 948594525 720194857 932185142 541940981 901088642 553389643 594207593 343407249 414658157 814153981 897286916 295229834 955630522 465731036 992526265 751841463 788564258 544634172 999934012 426765990 985756886 253915907 969511478 355704802 495532639 699425973 890275446 350519654 440644507 892563857 903017615 287072885 699752339 458324035 940123188 557958151 641322036 912260180 925810712 522354678 664598592 85562343 88820338 633153051 862127999 483960998 759200006 491927074 864350006 329970484 885662957 251004485 367878651 872431842 914405427 203769736 969912182 289892689 636087465 712297469 838959692 169075956 642883729 905788727 979087691 927039922 973528674 251900572 884659829 748575368 931188532 759745133 904047443 379849359 661432045 440096317 722926199 628805953 699295734 395568604 753538214 852872881 864664546 454020655 719067803 185529674 500466946 293851765 363128146 354604201 999186404 966210066 969190139 19635672 149144818 752777475 808180771 743510240 875322888 320387283 965830225 328129743 653330252 447668145 658083494 655991393 903473348 538472696 855657584 590960499 984012041 720451477 760953119 583429944 736846159 994428960 996826069 2676983 731433405 448206893 510020477 29812129 729969937 301015707 529205951 568557559 999080625 141923333 387005925 82641757 192301584 374630051 930726060 208351686 338653926 794906060 801201715 268446292 764110374 814159507 870462766 229940245 230060712 836386945 866661282 209814502 819138248 506110371 933432673 418602213 426594306 246589299 525361462 422164215 802897379 985765602 999147934 641961393 660863420 419464566 819464895 920381146 954258101 790954684 851016330 764365145 848580069 337474405 676961102 36594203 742354066 658758170 976327602 445846729 747223738 70912068 900411364 485768844 545892852 661876646 910926325 260502873 599175891 526620579 763065359 745370320 887779596 757626101 856318434 827289188 956521801 524999821 613239795 547893326 831443630 27895223 393771234 156652802 390620143 362109769 816596129 882113037 979275074 569354245 906892640 668437991 957883147 486813037 661441221 512820498 959679545 746067109 955652676 904102523 944540477 77515222 462114819 262763401 475160878 585136628 868164722 903285445 973094673 748784142 890039061 507293929 850277853 269642732 826736193 728244304 857069012 538674953 925785292 99441868 406412428 774815037 833144669 398598371 726773878 193449122 209180657 811133486 978092994 28913862 586176927 476351128 740486756 378451592 939354843 619148167 851453655 845531749 894895771 626327863 700254570 640518642 699409040 152516891 711663234 354498023 898331110 927083138 928659232 592930293 616777602 207403832 650453904 932678464 944670707 776552659 866832878 533140196 776867422 913934036 941650983 432262014 514380839 413219758 658357113 735575590 756032619 370734499 643591492 373771548 995687664 780105394 844419323 94032446 476836054 823487121 869391686 496314502 553931040 754323998 895622909 696366975 788091515 642190286 642844148 646330217 798921070 76934009 588331507 328353179 423968985 847875415 931270124 847888960 870892974 138132823 165212389 718784890 759286700 225552404 667739472 20172657 725232715 94067728 879671389 962302200 983781733 322651167 363687573 626089448 931888266 379832664 833955054 238419010 796048707 454426147 942328168 896259227 904309093 493461141 831398421 768807890 807407842 354989865 804649307 693343277 771586845 448208751 531875041 61265307 887761872 866997041 893336039 138955451 457755185 27428984 782975179 918368927 953210535 615124943 903181450 186967715 900841324 304865459 756097919 884949317 914628249 95423853 215111627 156750817 485958288 247805486 358796295 348333606 477090146 241859400 373395963 199002806 467366904 807128344 866600352 169681150 218840339 997640215 999711952 357670218 468844690 516764032 842582581 12557604 324230466 58190548 956136527 394306958 899948854 39968614 691092315 974737605 983733454 541222971 548716231 472179039 626557083 101823569 553931661 471307639 814078024 557346314 709064309 899378698 943054685 263014832 393197460 563909324 851638776 759921040 968858001 186251955 329616504 230554549 692061397 879731324 905624247 596415552 962900536 367875198 913847170 793592781 822189527 449918041 799622061 421038992 965840576 126396133 717749522 219918051 501458490 394580863 609409210 986006287 994751710 7221701 94813239 282693249 834610720 81323271 773466180 354639483 989785811 809605181 855130848 451948549 504929446 979463099 990839100 542009080 693639366 146117778 941588948 89209370 986617400 346272535 947625047 138815489 961185083 351978875 463161257 885623087 907196522 864497632 992097512 989899812 991623032 715006882 867621238 700797334 801098433 477513641 988926707 26117935 256942130 722830691 831794741 839253245 968578030 702061803 996596588 401769061 588392141 118325771 238734346 885438442 954288356 932045871 974628677 939210512 955224185 986645607 989400710 58488648 177712203 362037672 675322718 530903493 730652976 353334200 648322287 798287443 956115412 201607460 393540166 424769201 604428374 988666866 993057621 48212070 177405722 903195030 914497128 748042812 976740749 806582132 834008189 1751277 194524457 805103341 851616989 618484876 694859882 472007593 513851210 929658299 957799424 884135534 969557890 979729207 987424922 273672471 874903037 696984683 792946778 901282351 964719026 382169128 808895517 619652362 856865885 133244781 317418166 47593447 195776395 823408922 878625050 837553830 856801819 238492862 374639568 966466517 969305247 809297228 969056715 978726886 985341763 520239242 716295251 178665589 743909032 792642355 926214551 880692695 982954374 186471409 487300057 345889649 507206534 895743513 921571324 497440694 731438349 37941608 147121372 675861738 696525407 263723681 290041062 595940506 668003731 830031911 893016652 598603408 973549359 629025685 665837716 908421257 974763137 899253429 996644295 946950985 954497108 182379561 472721929 36667510 326105033 59623882 398815749 285545342 910828146 12423701 792704050 202777290 759923476 93471644 368724582 730556518 835528276 11145852 711344620 399926681 727708081 351486153 652596326 645586578 779792857 560938034 915853315 290420715 874834251 714758502 785011798 30254342 248482704 99060648 970061903 253378940 635236578 707146537 788818334 782841382 807425220 42718260 635412859 722989306 920436037 259939977 932190485 917445816 970745844 417551975 442703408 494725900 554551443 523940259 642804096 875109663 915842472 248398202 851846256 435148322 783725884 427257137 720092165 529884308 808748407 870539857 897462279 147608246 256397778 197707584 640706990 936146424 988515153 105345025 727709320 585971912 912148478 41783873 973353684 943582779 978929829 37769618 91100469 619658162 739440745 238842180 239191046 232488772 478885196 916492482 932600134 635191320 795052359 734655850 791663978 404037780 872113771 315260565 494799033 543004613 808121961 422024255 449579104 109134475 900295425 492496653 543601004 739673456 954722732 429112376 432000249 896766009 965346732 839872540 948153144 964223749 965164551 83204814 309703604 715465305 843142016 229484377 860957956 478597151 503747926 22320481 206017232 480515997 784828207 834148912 916475496 764910785 816436512 205496803 432792435 239115398 408506434 522393227 923143395 68366790 984228530 472055333 552232315 99533212 354874945 430543871 758958107 455028893 820558529 375502480 619020675 582233576 693333851 718647599 782105184 80953268 242339415 537454126 995168586 798059817 935740183 58614168 687432897 842113220 937440299 577097040 784836244 256385359 886015245 248055201 334471623 643858413 883963511 957649525 974639184 953050185 955869342 220816211 654371432 835631671 970014282 750416322 864120705 564987957 796988956 375700631 657382484 592623915 882498731 492927911 912895583 982751122 986754118 246646378 678708445 958656549 963993569 864552980 909944649 31626963 421648034 869144642 907960795 865582412 919161927 192657887 472209513 41943711 508774721 10374263 11536524 807193510 975444770 212442421 318362211 680447401 871900694 556261737 647881598 382146979 495916213 629398390 739214469 139342825 734728362 449599832 606147533 305631790 695712059 507158881 665761622 402227206 809105156 31862080 801023366 534210106 634987130 782732898 982021483 167127882 319060570 540926186 611989292 5428914 395851446 657356891 952897552 981821369 995772617 988136055 995886473 283600874 527491024 272307625 410596689 142202993 682984369 225831043 838033334 106573628 243401179 755940285 836499854 591358662 643910455 372498259 914085362 264238364 712623583 295248975 644712325 260496825 504647240 870216818 886630690 532363325 547348577 625115147 853485025 592973603 926080144 915625431 998857468 230674671 831503449 493555487 862766909 991864406 994147000 995194835 999537879 747238626 930893123 893165991 909316919 419157367 465981591 780060998 828174492 640516730 980501820 853356286 943626883 180124580 704425819 353668481 610426890 922514152 992840863 936648159 991621324 654934420 771863036 870190084 954462849 5145525 893767977 772168793 839346587 697797723 763468729 481691999 632410503 183841765 489154781 204820889 718087276 195774120 348782085 394657995 781009899 949239820 990776144 993027443 994646152 575031158 817060639 255872626 563041806 148341783 685065556 613360344 880728226 673283691 798538691 411056249 687444701 369049499 994851236 105318208 316553101 912810678 964895878 305173617 401882872 974487253 984178117 221114108 562895855 926771392 928183531 789681042 914017298 758714405 764790638 750624493 983953799 699811371 716710033 988678289 989930991 479425652 510030545 984966361 988896452 646444254 902581870 372635548 462934889 158468937 409928204 266946002 567881002 933577064 960565038 711334946 861400688 936626754 948621386 413912738 950098223 23614054 377757219 691966201 957853107 453550275 797320245 205924553 530028483 299963062 896681424 291151730 476439514 865859586 893566036 526509116 650064518 722000932 761662534 435149927 827316195 984399622 991015356 824710741 850586024 315040357 878809932 380479689 827615131 577131040 770018371 645234656 801824029 765437639 799917062 892023600 962023442 128912405 528570770 355510363 587884760 6988378 566995733 116790084 609988540 627708992 904991033 863316544 947525807 246036817 771017494 294252111 499167949 350360259 382586485 16609033 817336124 38885215 96971806 696036044 966005738 475021159 982348288 502043627 986928660 970807745 972090077 317133456 455709648 463241967 969229137 433607630 847136615 104011056 682321024 851908605 911759463 586095172 843646519 959903260 978603238 126729573 219784584 426422354 807933909 208207601 994549579 767993200 921860276 500984068 615163298 193750345 546324773 160596230 314822380 135601137 716566131 997842597 999854082 792907481 821122787 703704920 900452971 443479598 756094190 790206160 819931794 450911416 824809562 908137188 933948355 976407797 991358456 425179585 761551197 878798521 971711612 598264050 920997905 360965247 382048187 110292229 312375677 925184927 997666942 763692727 940686131 906077791 988517674 439833165 615476809 80661276 903512508 276188434 822649892 59266670 910446184 439832234 852499441 975044278 998649042 441372293 873945027 137616775 791197974 792091922 846899987 854606652 998124232 579603716 874286347 156514671 914988752 320442345 948728945 687947695 781653564 212757521 652122578 735818903 773255981 344030781 541373692 784662788 806304380 396808992 506451532 186488875 430274623 891139394 970788135 960934575 989131890 773282887 830974064 542202910 564647277 632435935 786735025 306899154 396789668 413730826 918411101 469545744 489761559 925688806 978867660 578742652 921345645 202345049 574344798 84186387 192069796 650335784 699998847 625046091 870548520 688598683 903241963 957355376 988854756 557587055 976399993 350449769 711598179 297270694 356263671 153348588 540454590 524653014 945641361 149715661 463687325 197581723 799889374 714567010 952909766 924162963 970281122 9368707 451235051 183405305 569332645 897535202 973317921 944930379 991623918 248642275 277452584 652048874 814000873 549290523 771994992 96465617 578648909 955116043 975817008 42901716 740520020 549791025 580164056 879555197 934483040 854725591 855319562 912564142 950162829 167109297 739770206 472991203 998252296 784017603 841537623 678069659 920064992 431949617 986500586 42783308 530894158 869470666 986183365 33387305 633493230 856196143 881553272 894107328 950224628 142293333 424272087 606084401 715710879 773976979 784418696 626137611 783140879 858996560 875517023 940193321 948365052 274501826 867600039 776705755 812466175 227871461 841894729 810991158 821542313 272565993 377726392 827768392 908153848 540937595 593263231 763250961 813195533 488489779 723516710 331706261 536302778 625866729 720485882 937726538 984660759 776760090 819433150 991087632 995235112 118237478 157627426 950309457 985892863 333864288 818098512 802086091 804468870 561475444 892213505 31056626 98447811 617345240 665892286 459623108 540784008 81225407 664926186 998229296 998718956 909719511 931005602 260200223 272798535 257821133 468036552 744157828 876291873 580759330 688703169 687617835 911783508 178701354 239348659 664241931 803182834 698166742 998605487 424951956 462450006 268204342 393363789 300316310 698110498 660398851 835145680 63322731 959603846 658000505 995382229 21484637 372995751 109397319 950234217 224487342 508981876 211718055 276482596 929595859 983655619 855652239 929617304 791945422 950650949 724810872 929768191 267552470 826210835 985388863 990078819 315239861 503758293 208588316 257690639 791916914 965551629 150343027 428328695 207241059 649725916 855283728 926188134 646083065 801116507 32105672 836901551 594065092 755282473 224477821 513255171 486477593 684580598 584918770 593853001 847576500 963629350 219407711 554533361 869485884 905185122 267282976 806133950 361858067 994846098 402444512 782903519 836912089 857301626 838076097 989735781 943650858 956622721 28094134 847687338 829405241 860505700 974024194 975772319 109690030 301087204 644506199 731673558 948931971 986794555 655764211 849551741 105780744 789099965 826588184 897521727 521995828 576826987 487961117 520847924 302983680 941892933 594327954 751518678 67830580 602509701 537998415 592319886 447758585 701171988 532443220 635090033 871518120 922583922 220481942 547470851 912102243 921377172 700100584 725108497 332265779 877134067 592728607 785458882 412073174 510694784 957872775 991332369 236069601 679297926 17380715 765559032 459460184 813431292 911899338 938938667 811639003 926728122 252539535 266158728 858649793 937062249 36697839 104388650 751815111 860251256 367093337 946496940 364967541 533678636 333167398 923774694 510425887 934909877 167924531 727516269 294062791 392381276 274756285 429778961 245973198 701665914 553230451 974767053 850054251 904237899 652930989 679544836 610035567 634699632 313726719 651909561 629124976 810994056 689073956 918014374 401616494 568518990 633830939 830687737 668530172 995419748 994822964 998459387 570832015 912904492 360410883 688837874 600210270 721293374 813900983 899702368 925935960 980081378 96838388 833219956 900883977 932144224 268889888 567484863 505520220 721796567 340189716 619422404 890443003 947037615 988043828 989946757 564373287 871253903 483701703 688864241 627631297 995435724 919556132 943785708 253103939 832845632 504009092 602628130 184144298 279283520 812210477 830112897 495458896 708082643 178671014 670891428 158920716 676623968 702938001 745455259 914465045 952445665 448045556 515878189 248613636 742155741 904371639 980112124 642399215 919146805 598072739 906065287 511814258 885379184 273503896 412935267 621932935 789716423 310025443 736305614 457845981 620234426 286492534 656710789 917940996 941947092 791594365 903898739 149274031 357032389 170558049 585495055 171920645 679253271 980398164 987316450 95247128 813667283 169695443 187921145 563572654 982989210 26686893 439163082 734368677 920850632 36533475 990413844 735659407 794529192 709426440 941000911 489490927 542483506 51573760 472972055 984665803 993309750 559871706 736425546 724749192 801928454 646622873 777029152 538436715 893341942 115949534 231927525 557729643 858255988 720681633 941397912 393733911 996101105 504258924 892643040 564985156 660937521 561246299 822243863 862847238 981388010 64441385 833495452 367483071 443327601 778102673 920032177 42336281 402025748 16516431 787995810 309742548 802055811 492559289 587276791 840491122 911575817 164529489 369962986 193031147 857271545 54262243 530757952 48475670 94707666 422441045 476677876 430419454 938690013 975438921 992687695 814050718 986423531 22870484 338680341 225312219 273701717 834402515 929058832 655558719 723900426 815834905 990176232 425064793 839917808 177175907 296979773 84725125 339125844 530840637 834741337 839592431 988575482 192994393 944137790 136194387 498216085 945712247 973206718 684392857 923597809 823788915 847915541 964323522 999177148 849375675 963486609 708296647 936031481 540108267 781310227 921052386 921627304 283681703 371651163 686415448 967507705 178009835 311318095 526209183 706485867 11852949 312549964 719613179 902633688 567382293 980632225 73485826 798458568 570101348 963475180 427315994 519375447 933495633 960056981 798233558 965916712 512542556 515295202 736183779 942019547 760028470 963039594 936547511 972947053 99483293 800254139 463708011 686274155 7535254 127514003 457391244 714308823 866286016 883287191 276303933 802156660 505434007 539217620 2300311 131509434 125410156 247933527 581450797 784408959 261204757 426570053 815762295 823157310 911285617 994808920 353860663 979328890 918383639 952276718 277146553 413681635 605557439 761251384 462383067 800115416 283820538 839018181 196258 970139411 632404465 677771233 806369747 968238250 578868939 853227567 646131957 971430687 852727598 941071723 689667316 994454903 862168798 911957768 14699800 122360336 606195694 722959666 632222976 781150478 357491407 852540279 441339630 831412653 890929284 892398013 354175376 387254183 222061749 607137179 444410705 791766674 501936073 917168676 925410153 997349249 767407703 973564595 833445041 993747422 623159748 705862212 173275817 811448452 687284047 873950160 441451189 713107826 577150693 859481719 352074138 942933794 98901660 653934354 394214926 664201396 783878358 903369791 865004961 965138732 774446982 782443706 809504020 936487739 586818520 956111170 124779609 517915572 768741192 940085612 883839275 978106470 325730719 758820269 194109166 974754578 943376004 944745581 986586212 987591370 417086881 956012521 82432939 206513339 24459884 148717270 518397559 958790877 111257392 439305517 995349767 996012438 39335675 219416915 155356539 184313669 322437990 609358709 390113490 518350487 4142486 510901778 621853442 686731338 811714281 926588772 489153626 912531151 234552548 737714465 344214136 384211236 983949012 999735450 116568265 821519847 251934829 918720237 341346951 851276056 827254266 984106708 511708747 953445696 965482040 982592160 625031051 691440746 404536365 726306627 378622413 530345057 312117819 911441850 408571832 694299573 247186760 718971447 668627059 849890003 184207819 256832321 934727506 956565554 867612980 872307992 967717195 992579207 624700838 878402870 353119617 478536481 430972698 695809221 88642690 340321130 299652045 974462742 569436963 629382179 762919678 802940898 290097317 346678413 537900045 538108215 842838111 912331646 966587203 980333222 702743911 838570675 750982381 905515601 19098106 766771311 723600423 738375463 913828409 925179621 696594245 970949761 301346115 526221569 773524539 803454733 968225794 986009759 545936438 751294907 475451123 478473984 200444902 784485146 343617409 764994869 510304787 832969885 530371474 804548021 863369612 912967176 463837508 991518666 377975550 425723690 295029200 420923484 638198329 884266624 798242133 943214206 61289315 303920726 771596295 867649737 632260375 676692614 279585779 478155704 152841523 192736567 246499856 970585956 936225324 996017949 302017488 427343006 987389019 995801059 988678056 995563141 975894983 986398158 902803541 944018160 553721346 651845609 196817482 475831310 528374932 775116251 669675632 916168119 324756077 722467588 737827267 873612877 515193637 606050022 538156757 934916574 509533189 671211831 325558394 526662497 502826702 923416897 404726899 780722099 827883783 968059306 371148941 420001967 969429433 976102110 695891071 803721543 742490366 743765584 631052135 800165310 347203503 353508160 653044143 967228865 973792229 994546274 840823313 906442573 326384618 657374094 394935922 693745478 399582214 557659177 540798977 773019980 635255868 769433711 590383177 798631794 86937570 292770427 145431798 322848368 690507108 870624060 248793893 976314730 279513630 853741770 405377666 633782079 696056258 856375268 153554975 580974490 509556350 684861724 141582490 609195837 719727791 930870834 151544224 384359579 724923968 751948824 516476737 986701759 893019447 917044040 921359587 972257991 208111827 671567809 541857713 889642290 479810381 664475653 849161763 861685209 492817580 912447023 833721343 934678397 773762621 910760922 572249439 612369578 956861442 963149472 807004579 871105802 329665902 632803715 345673727 454876786 436913917 651608403 722625368 760058678 326998148 669228756 620536781 896836798 518570758 699463886 98059917 252696856 817648522 881098830 723619705 909827840 454766832 819666757 593503842 891767164 322641705 557090216 581710329 931486121 997721133 999842196 265848936 587679819 92466739 939689039 124885125 610601138 864644035 937496067 538660164 618961303 474305154 916180216 112854826 975622250 985692895 995206974 522760844 977680862 298591309 814775833 418014036 602991521 281381028 547513243 663626497 895652486 932428490 991724469 428765843 792485294 731430159 742904067 602232469 964166905 428781337 433410771 428748130 642229865 89481156 317235596 816717949 851356042 293819263 749005470 273531910 794399842 205479405 512019889 109606508 381053865 850369245 984551478 273720720 895434424 342474663 402223342 942611438 970890432 964469649 997500939 965804324 998298723 713554394 779739234 583494931 979155344 54712576 745262532 59277690 354115034 399447731 641095577 206148350 473815378 272735653 957568831 647017411 793212265 35727255 577774578 577545898 935306646 334253282 489512087 859865146 921457344 45726031 814711478 557339243 716632723 627813097 775059016 350674495 385648035 666566567 739119694 678252723 695998389 165266965 502009036 479946281 770165551 244362310 343018575 482274080 753839692 809146102 925395376 542653492 919309332 233023890 248614212 593522333 723765984 15575089 125115007 447042206 679700830 741963036 992225820 18907059 577789490 738435605 863812166 482894175 541728411 396501808 899376829 856844114 947060629 15877470 714142152 517485689 690570502 776238952 969390127 326992377 552553281 701165616 837574482 996551787 999069372 987826747 993255792 337072554 893681703 125093234 853571732 963108125 985940373 898629185 987558985 173073830 859805334 687996195 849928106 155550595 261175292 996104783 997445758 545043957 728982996 372090925 508869196 447565186 618736990 404448757 961092486 378722921 551835584 795767265 923627277 921271568 957711893 125434236 633645684 276209672 501856611 547884996 963485063 181640817 609559659 40101503 965236606 852415648 962675002 675531427 863593295 59335600 873320148 177517060 990328572 266460211 765411081 744556777 986545429 716431626 724154180 37419004 748803718 601289257 700601356 734187872 735957719 59877860 68749971 141775805 561936290 21517673 759670289 978575501 989042639 660514146 724340975 131158462 589560600 267243450 949016995 862485167 942830999 993749902 997789955 784799754 925980425 388477568 717274282 640559772 880137474 922343769 954050639 600836560 935960969 54287709 190884209 764593008 927544394 585457878 634155186 782957638 794220825 243749841 261651481 559934185 608345960 774730171 824777566 948412280 969432467 992709299 994554741 816841060 926024205 497955176 543528900 592753043 761725559 145874951 776105614 869840400 959545427 208799381 494358465 295245216 439629145 4899794 698690745 429008722 987920929 1968433 720359857 744209134 836454225 493023048 689775668 50515741 110531263 305080149 863302430 295253280 309224681 372956114 484082145 14421989 510852335 261556801 991693302 696507601 938450676 866898150 876018189 192681694 570315234 90912885 670074744 823028074 838355051 828688973 853972108 373308033 569822566 980985660 989745978 428888507 780603563 927481384 998442662 121923625 448094783 242151823 991345261 727369489 898617933 180045222 286364419 526597047 673968666 728686734 781479631 621595733 794029888 11627715 309126219 587450424 768207748 315061620 507527127 365094053 401769270 165551740 403685747 352167740 666627722 990900816 995079995 641978042 878603929 512110049 688749990 900497766 993394695 191971522 684805016 132608365 306445346 923913195 985682913 901718788 986553130 475531838 611320736 745835071 895441811 306643622 319783106 119877453 347285965 971000801 986242926 606330305 708509406 758379481 907369154 569097375 822429219 515809583 961168102 938519496 960033217 634747883 776575747 911101955 974655511 80905109 850745910 716916242 718053092 770158607 868647302 615473055 795974679 772958803 986309408 924879497 946626659 685785088 742878263 297313766 401316644 703883384 967894687 477750273 652031232 294947416 765855063 284330720 833721333 526442398 793515430 278451128 506125792 363712290 705297415 748313657 852687889 229353137 623147461 793559188 979111732 132560595 794087785 640136779 691967246 418893517 460907208 434113147 915413560 470488066 666439372 687337575 929121966 680250337 934847468 911489908 920900599 514539772 587354259 356726850 879204716 813304964 819220022 241474422 640167986 577606309 945605587 10021150 711748632 424414679 756591340 327499276 785933807 715701557 745531886 961479659 962730898 119244008 437660166 430625959 498176971 37963580 841850785 382926759 485094904 954614768 995523158 157980184 292917250 739493476 903365030 624586456 651429406 615210823 706067438 944566453 948143909 2709450 52236330 856129158 929602420 768624 384816963 427008544 612419205 487783407 958266279 524225484 710512665 201871232 405862055 526791697 759476291 888913024 977402206 179861136 676592198 580934603 788988961 132758209 874688783 277660648 559488783 517262623 836818704 600372961 669838165 683112958 916306619 165734775 732243367 105946446 481947627 911505662 969343641 936322837 977618628 294452378 695631762 848219016 903088156 5393935 86784711 673644974 831596129 37331031 635489531 397721523 424275480 961016821 962012672 450608721 459188489 402145277 435830241 168316439 763270395 858158998 908245130 985667284 989969031 68602418 475004838 400271960 744525053 456754425 671797155 195712680 366421949 893906256 981388634 219618530 845743298 373564939 519895259 371939798 735059745 648197923 940816001 65606791 540281103 226363591 252558030 940391897 950954558 483550474 788282796 859244951 997450462 284329634 382201642 631051157 977961004 392965273 426679058 738303070 976999224 391917099 501435409 377264290 817393992 702187032 828022516 688405622 731388947 447768693 758773819 287517526 410843922 597317362 942636999 540825586 975687234 527622390 943622693 101949235 757255779 130138867 431436724 827662129 908079070 326854490 715538100 927236524 974006869 270104516 892488340 581961099 622108134 97949400 924852064 234270891 308406135 548192671 793719945 14396575 135045736 834135181 971816121 466512186 854860457 98609573 837053693 141334482 488935719 866837114 980272023 309105940 687014730 490774401 826782342 469561147 805874355 617364267 724687456 788653727 955592394 190420459 841569661 784406941 993544407 442503078 681501100 84292048 682434029 699051581 723733174 325417412 412640947 768995617 816201449 437897971 641178759 201340308 919816423 425037697 624700274 532375660 955363200 757553925 816222817 710430547 980202469 677768860 701416128 443618319 568800828 279418402 497641540 13680595 936057780 7910806 719039744 386408200 535661546 373294694 724175691 994796750 998325493 443699287 743267178 837238628 838173393 707331874 942632353 189213794 317915847 820451277 963057142 911953655 957731270 52991884 687004905 90889331 580621623 597635818 960293614 661635368 959389091 502371600 949510945 533788063 682486512 793111856 990565496 370312924 973403884 965958314 979597582 622114330 921234299 320481987 665994425 411899456 898724486 494966299 909321487 343862044 893216599 964794542 965684861 732375104 815960658 9254035 628076830 605605236 958309703 4668369 19254847 752268157 925914161 981079016 984319797 363064683 439126168 520176987 786542865 677843097 771102470 576831894 580327837 798960258 942907129 528534901 557184947 215973459 295109149 935439872 998362185 837723680 876312802 576146323 983627769 816357545 904002389 414240029 421365877 941970750 989832364 422943331 790073851 7179652 35354385 929135786 982326570 310555202 400143783 794426249 934242849 835134141 926474796 388136107 665820307 688215381 956600565 39596244 615282773 461144772 527444937 900790090 950839301 747323948 974675430 462906563 820037543 118122717 289866214 432761942 473964087 425557634 540737025 97626014 687872074 661764808 741322924 64689475 384044608 842412528 863721743 473556490 755029726 448492787 515096807 806484780 965330579 57877658 268265824 250049 842600055 388625805 834178922 8348780 891075688 738435389 844584517 251804831 836274266 288050096 463351675 395465866 963798551 148112787 858634533 86319288 385604095 666336706 905256273 374491774 425642313 156436697 569212439 35222481 882625516 896402506 982635723 302775817 322247120 389735211 678947877 608817206 872568672 916764018 918770736 662693234 867500205 706841871 923455044 407783368 888926445 301405669 800915166 123909233 749529505 701375040 957033027 491313527 798460493 862882766 901690161 644954461 820649588 306634703 588336540 879414974 924671979 475453611 640873284 948815555 973439781 719809044 964096947 860727814 891918875 22568775 783511946 132059565 399824464 528827197 706475424 294943394 820671774 309758554 479956258 227506238 602925218 589626824 870181959 878832705 934581069 788918640 862116479 869106369 920596828 572968541 982843492 672848246 787300526 541404109 743854102 871144667 949122951 237499678 541214256 902550391 966417587 694301047 959134683 254141758 842036157 21274806 719715144 669581146 766061357 659773176 916047596 613975116 899361919 747050084 810392785 308333012 945124448 935999936 952410158 419185373 462859339 57671214 670868750 818211793 995169391 309322467 819907534 943425240 952200713 335307983 490688017 851655211 898064865 529336833 897743613 256235113 506203090 346879224 842061131 206240652 797754911 413318312 656832108 657144886 678050537 442684576 792101210 157824786 674504842 15391117 839066258 350560261 722011221 72505699 261201630 764641674 780101242 40914639 392813759 743587996 937706520 684188536 786902230 235691397 635095686 157046996 798133509 627349434 708404726 778125251 837804575 638458769 978006926 982850964 998398200 928180233 952842280 365472099 667528268 253235031 928485917 655650183 824870670 216751602 642751886 382475612 508271174 807170811 857702951 193168172 741652963 251594354 588265749 897079744 976549429 657088261 828996653 472221700 600229570 347886899 439140433 496894876 900934185 824508774 871056239 972845661 982923279 738700753 967260509 553383620 582223312 199676459 447740538 515563134 927775086 280969687 933772293 274768540 596258438 632049093 962309264 485090379 496400062 511853702 971664674 139124614 590530867 36028078 291339496 951912664 953987682 706204703 801385982 645222568 790362423 867447548 958502908 384904447 470526718 252269809 677420599 378120502 389147513 520285802 714423201 43878709 937633367 555769523 846648304 864809504 894214926 131757993 491958811 736734293 771999650 837907447 951007532 265307943 501147369 412244221 597458476 470930931 870653168 709087410 898463670 79228302 153711821 830468302 866319362 485245533 617199142 665276687 880513521 558682998 628072113 23836812 524108694 933127908 962583375 205820423 722558281 825796357 927648341 581176976 990646184 354901518 491683660 221694198 709375040 425769450 591798137 44251934 720919991 200494669 546784238 430768882 634098063 479624954 645279482 684186057 848553179 801662532 836508233 178816276 253634832 124291121 300133494 220896956 228139738 206460229 911915057 324835704 607659882 880116273 898470423 666279334 817622774 920283005 963556584 880642499 907746650 258927263 952536197 673376498 947068889 508809486 963008017 639199795 908028570 116278953 434823084 31178144 388374085 847222795 966522418 256144300 263242470 376158600 811475566 124591490 872050835 582161527 646556490 151942949 811537370 244803314 594040060 516766657 966240991 145568541 864026163 880899989 941940617 651832002 851413254 59832133 313070434 980999929 991326126 779768820 921291785 851417830 882294995 767356629 903770416 125331945 679807299 133723255 260863422 672783351 802000033 899062546 987325642 808725728 979576068 185830353 869612551 72940236 814718297 589539638 770178070 746776450 816639930 193765615 759769878 374536322 517455633 157975746 220598672 360701546 959127461 435892513 701100375 190261015 718400061 365789460 611451785 80544119 734658356 425819306 901721131 856315267 961959830 861194965 872538218 826696542 842960928 468478309 763701748 832681022 913331397 801832006 873803286 614766697 862183840 34842817 620053464 225871542 746557521 664900428 937888725 406620995 797879522 326880609 433299345 12676396 625438325 312001787 417696682 346636291 350659523 843086865 968873103 18211700 85458614 671719816 766100470 869241262 872129120 271592501 965856502 89996940 193284705 702247246 772083239 316868976 960143733 612619899 827092353 316939009 923240035 45948469 693600932 240319499 364989636 641174175 988450444 169061484 245809571 302320768 683801105 499911898 601105666 409253944 589286157 957075958 965160317 224871942 656332574 242673104 741926408 736590275 776694189 992895280 999925397 639014658 872064413 949915541 977104702 725975309 742559165 430582284 899473504 579140384 753546109 478999118 833513419 440021748 541289996 957386625 964501703 104507380 538919411 112808065 853311377 807320766 849625969 517084858 950911354 931374849 980091539 382756151 672395788 878563955 984112509 166672125 623638492 954579712 999554889 917499258 923929367 746102362 797109318 160693838 937685033 451522674 881515170 206468178 400025660 853637725 981979495 896676343 897764589 616025081 697611649 325640636 370281690 238014867 519935232 305208323 857093613 850864833 963056913 898679689 925476944 906929164 913060852 829563349 843103590 599594595 857565595 695051346 976643310 724588457 770882229 531452660 763152955 357404784 950310170 207110355 368208945 75884765 504933812 971342620 974286952 946033818 956508627 963808178 999822289 259385142 905966103 506204952 833700547 961844133 993194166 521220081 891905042 792272996 866364840 617193324 921656962 481159819 935556186 623513775 786164459 239831584 949676898 275397244 488906131 138288698 213641761 824525486 904277952 997659263 998869445 126305127 895197031 403348970 431425423 302964987 485762516 587658893 813600063 71713674 722627523 547123857 985630478 696753604 835754339 204994408 416718146 300219573 302259822 621949491 943093533 656113530 974698333 799437744 817358520 669761117 735199311 590160399 809410425 777776588 843606100 179805864 731305114 208013226 967810923 347336072 716339570 898475896 990951300 820915615 920952789 290279172 876152161 439264009 811363556 128255354 632304526 159831138 535803407 81891843 509598120 987188510 999223296 35244143 782167683 623423494 755484208 827834127 999445964 133141374 895712938 586699127 678937176 807982262 821465101 978209357 985784900 928972792 996124936 878877455 973460438 378937277 704228531 816565169 950793519 410701672 787056719 190322482 241459073 742321146 856741142 892320620 956125963 105844330 685435340 907747910 995531336 335276806 577371395 746923266 925670090 499930214 556295002 526915024 962664229 742962900 807572602 240345387 842503078 169224039 221067340 117011299 877073654 701858133 914675870 368437638 870814208 28998327 624358193 443698199 975030398 49912296 371867465 552914666 844515258 273651422 774196928 162034023 791562558 644256126 778902367 258732891 315927097 155753287 519720448 286549979 407985131 813434639 962413351 482447173 611085573 455593096 569934433 15830753 112970030 791422812 962012292 406511145 844427502 272098623 463091886 29537286 153687764 484269170 720005261 246716916 417478731 479509725 720954165 240467803 265374291 251206386 438698307 260814327 796454190 772502072 889889897 372409521 940257693 982338219 991177000 211328914 942822000 785696446 831138606 241298921 503862784 246144595 469940773 895848318 939245949 792581854 944442647 637308480 682795028 466668207 480622918 444128369 486308793 16158276 700745759 766596242 934603075 167170044 343365465 318907521 609617692 394799257 972202512 292542159 801252882 8442456 621796089 414124740 455485844 908987972 918443972 43294745 779588750 998499218 999626476 459758200 888323930 858706752 909568290 563655023 948447168 821027773 837304976 730241522 731364224 598687099 952703739 777186568 975670774 484712001 933754553 394492075 420372102 912178463 940371966 770991832 937315354 161286014 628168222 473410062 759631415 744547615 961612690 25387574 699354966 708080853 971608024 62253096 859094671 885565106 932067577 148098246 621633656 618884634 760671728 213232422 869630249 871237966 952166984 432146097 578376316 674564914 941186442 966979304 977922766 557703450 916686401 745444595 957970650 387396383 515079377 638313312 682353577 282303062 506156506 559160865 622301842 797026832 914378952 839309468 967906514 110000215 208311033 123667904 946142091 209640749 526568399 171038870 539594650 468104671 941746041 197792815 246550558 378767609 877891142 923101117 958803346 416390320 766481114 424606216 513957777 140918761 465719157 257252064 688248119 949539305 991150121 313761657 794308939 355647091 815727105 48692534 561604941 145047953 322304099 523628726 554830171 299130059 614449412 809550425 887408060 507050780 688495640 614217047 746070135 617728610 900768646 769437219 823395970 739349701 930138575 842129222 977626936 501051026 668065328 878447540 963155248 83545322 894586538 373183287 864183686 308511574 755504801 628734137 799007822 326742509 779471493 137829508 585232970 275602499 327153884 198935546 782493048 967952445 974433523 15057176 475569763 52036788 668828276 158895616 218680846 72153080 748435078 792312320 836722346 796522756 991588137 733482489 954374659 129070141 648926601 271308943 731319909 672111114 727032325 541107299 562698475 599213769 944626696 432961974 682851998 428629232 658056039 333460910 942894470 609651875 775850629 125480981 826603550 488294161 895849692 355529977 537349489 407944876 755131731 461466828 895695966 611895966 722492189 670894806 892809821 511272067 723877827 8985568 439273115 962375222 980436817 68741216 280389784 146785327 510555449 104770089 208214355 202591206 507704972 521840635 795880670 462862692 858315523 509449844 886764724 993009028 996417152 621603292 624585196 541806217 713086911 286866844 540881719 622849695 683378725 689104883 891208920 87227750 306437297 833380722 919331553 568951980 693017969 169344798 789341070 227233004 865633538 62866106 726218497 211499483 955580298 607683905 788794251 95324573 893138237 529669645 758794899 821518131 853010828 261894782 397961993 783284983 903890003 18325504 495611463 395204008 635801559 559981928 812583748 894321820 966698490 519395350 647101843 908107981 943840947 443451540 697094534 908851875 917237778 844487496 850851331 310697641 494512250 339865879 779729263 268517467 442319441 451691274 673446650 129587974 793330547 312670969 850579531 950514277 982011627 345130891 602968044 737738309 795271217 177244598 924250662 63858139 512179899 187750192 337271080 46002420 140492434 31610339 421827222 552526959 772165378 89511295 658223634 325335320 630240730 172949936 617921028 921834418 984394627 664762010 946419280 545263685 867457049 661083951 669868348 62140422 928033991 695654684 940580388 806853059 904759668 655318386 718109859 921609489 953041967 46265320 915497360 918701040 944893626 163697213 694326003 997430398 997676751 789796037 846349845 776032878 876844675 668504565 818252481 653064550 789703598 656440827 951435711 569621703 723415654 773707227 809450838 844878213 965989086 517626779 748877600 288249187 440694003 515687209 676498903 282286305 491156345 184052826 924283214 153109956 324154991 755562644 796065960 329439010 358952668 52003402 408946344 181520630 840602702 613729176 830078543 969835594 975795685 707629000 961054388 989462720 991939389 822893010 927797818 642829353 773357035 816653915 938487984 356663179 583106591 321361937 397081815 455434836 458729612 753861115 912221149 128369009 224449011 398532341 695916105 304448951 616726419 725192598 726501378 105922570 913093195 424236997 455325718 382657461 472114476 772498025 955516632 143504102 921628243 955960061 986670127 252663704 538613139 535296156 958702463 103862019 646812943 129532077 621832551 766803136 793221595 970720366 977574941 421308759 731464192 356312370 481686412 478709033 485076421 936986291 974730650 905081112 930161879 531358135 651524540 57006894 568197560 932918674 996726346 876032378 894072999 695962761 792060736 892121694 987546647 32634357 602035977 764429200 840051679 731856483 984291959 875461040 894736334 238956785 895416865 106853469 621149774 107830064 687611049 667555322 910072968 803549478 924638376 462267733 497147017 427757532 993128246 493695287 698256514 942498468 975020819 501645675 926640961 694134944 805754785 120016998 866533699 852321160 891021224 178977598 811502891 760632584 992838991 571724550 684682719 502166285 902682160 752299281 920476652 402470790 443835336 612192846 738859524 485600722 729238319 672167517 993857035 63336933 857664376 182230012 202937641 25301044 984601324 605303112 733480127 811061650 816500104 161883387 638023614 343604353 592582813 633610383 983737640 343388483 587517942 634808930 994968542 875082218 890769067 510693346 616499736 896000812 959921942 133129012 670655626 165399997 784967279 507650053 803675687 501018780 744555120 191137572 234387095 154678305 539302613 253486416 874906997 714303823 760711579 931104696 938410787 22572993 553773670 112726575 669981895 977443014 979857354 129904717 693210013 64641990 263311844 127337038 782059001 339010162 725413769 294090747 454242071 113785872 284241089 106369113 699752849 101599159 566526419 989617074 999306505 103010095 104972245 652821506 916113657 184106756 592287731 599315484 939583546 584765107 845651458 144439637 824443578 134301004 158248250 327878219 822947964 416318081 913631683 861538105 954698514 881369331 955119520 410592211 988229047 689438230 961422593 368402695 601396036 849594179 937960182 836033518 909876458 468974638 574531411 395051316 895033690 752462213 904983110 871163933 929601013 673650266 969575142 423389329 814816122 495936719 619510141 714320787 969647419 907642840 979262946 846129413 932614857 327082886 814745756 115893419 579032613 130676937 701754240 401325716 907522486 132217798 439037360 952295496 962120034 434082941 841581526 693941918 824838137 286206735 810304808 190598840 517541090 8036275 145689543 319721550 635107332 336430191 420784850 641896367 689353207 275543160 364583479 819410156 986513368 958201676 967323518 54310174 333466066 363213763 898280407 567025696 647707743 56172761 826673860 330419563 736578630 326156972 689049384 886733824 962613331 667868294 922523942 484005258 966269303 611263146 708255291 523969458 570454414 772683396 862282113 320098942 966688276 242279724 848133158 308435843 375233904 264269353 947380117 922542730 996105063 687549245 791630647 803688330 901562191 338981868 714089976 946525105 988720188 58963726 384592493 972396955 982357088 316732870 520095240 944490111 944823215 373075078 492034658 802390397 929809708 7139043 574192114 951676207 987551508 821342506 907359738 796947425 884529548 488887085 936549874 55893223 701321619 297798746 739297521 954131806 984043768 293336264 856460246 56289767 442086066 562210092 667691055 66978083 651204113 133909344 446296545 331480282 665063835 176361912 670078230 730847194 735113402 627762599 630333681 879793588 956880645 337713245 736969703 745872159 750132682 371727121 382583933 39970040 711804598 384883092 817062993 88899267 941056740 151605442 589064369 671774918 684414867 955442418 994247633 380991447 834967790 313078149 448414888 21157632 987084759 317358106 710500260 469800771 776325218 807001727 968658826 796433558 814050979 492629328 924920914 235620748 646897171 426594328 626394597 191751465 920133850 711934276 748405244 487683983 804405082 277803960 845187150 272293350 447513309 87736098 215745474 490335347 753114869 157955901 272961939 619252670 978942860 927159059 994777464 331414296 956589358 322553096 329448191 671643150 848746640 65418390 768062279 490891161 971809146 968780692 973550721 217963653 349780244 229416119 922020840 922478859 946787774 147937705 667468214 512581823 806153654 121311687 256876224 233897831 750529065 378793516 904462426 935768059 944768841 996292027 996571655 581627861 594644671 387542849 451241583 663987870 953937322 196787529 813290537 377410105 422299559 858863031 918176496 688815476 948354843 484649179 751203438 145540826 435211220 968332700 986899114 198962781 449580455 441838528 915461436 68979556 422092332 760856201 972168522 802036681 885887327 90084195 672546429 177655618 385111648 177033870 741059558 106959435 578156897 744261777 795502937 979765642 984002273 109707484 169937150 574110332 603543143 192790404 580136444 117122579 691057801 511146302 529282005 585567489 669480526 746321880 803157665 750056938 908666939 577527204 833738860 544609738 729845655 954638250 958860784 142748605 145037872 738044948 915831242 344549227 907455376 149740657 169357067 35144099 823463269 861195074 888765690 815316686 974630361 503989186 709709127 400547223 675027229 322486879 377465403 461144006 935293226 593950248 988922417 986016917 996736688 940858665 961542442 978258240 981628831 219412062 298840923 929510927 931216728 232388865 588783867 770002193 922130932 318234865 728764238 903456878 933063533 668877871 738891320 370681065 427152167 508333799 794079497 619151054 976798795 890955353 905076553 728092937 816588899 761105552 884064267 384908892 989356063 368229660 948981341 940622303 963671382 687151245 852730193 740577356 970614259 143067940 439384063 420612942 994451448 553427452 721064939 720051653 803425939 209389452 915419670 346692390 862576685 742476439 863575739 119292508 564583857 490705892 531215119 46876988 412922952 325299952 566087470 90315667 837394906 448712574 902616320 108190711 795832262 673168421 769366537 257415249 809834967 752957980 948088823 619436906 775567553 92199104 714465852 857221968 943477682 201380159 848775937 212773281 975936287 916400032 930733559 441950939 826207716 260536331 784354492 213569441 375678471 54396166 725538557 236865343 456650515 687296428 793765593 22867012 965040823 93615437 269280998 970108107 984284430 901415768 963801580 376022475 410681454 299333799 533006873 904404623 982743587 985956669 993661446 131372946 652554137 718762273 896619817 726976776 831712851 756223557 913714369 945250187 945954568 210973075 270780984 269214285 352696541 550032473 863423502 836751400 963628449 304317138 952564370 982483453 991385745 96616620 975332019 729944026 976195219 815416304 821737930 554609482 646267800 549554782 701081283 28301024 286344466 732617232 781842277 156439706 872774262 66889121 856209513 28035554 975766460 421897386 495918922 419865317 791842197 315154412 588243123 661349508 716358823 602142710 623913653 755102750 864362408 598425694 867974683 454384649 851991715 502267653 543172544 412905443 769226500 414518195 962357024 208443354 341225971 406871183 575895794 391189379 608483772 262318975 961066298 528489034 567078184 526862449 648484618 435613801 870015450 884032303 922385404 258627126 669526014 112130805 831529155 235387900 500405137 469178505 906218315 857113407 933430107 994705290 998644696 377131596 655048499 355841986 893199234 705800014 779994235 989821305 991339847 202540445 539344545 827491150 979016943 137619395 928970842 458100159 904099453 145764434 892429778 123703293 663835824 916461018 951748519 254975080 875955835 556954121 889954334 207784915 877280020 202493582 427610576 285513584 982484889 246654136 358799091 553071580 805765375 11698248 262669619 105693106 126143949 27264369 627505972 221406576 852469728 696550581 747982287 711251382 843937912 148999316 218368979 319485674 885499219 590744728 860421675 891304573 928867464 668128487 837124027 506442794 806726129 239392115 510056562 453755545 799208244 555912892 583861930 419655381 796288581 591562146 774233021 424558515 898217011 498880980 509122682 271747506 968341643 13480193 713326846 9972000 674079844 8941536 618706340 76343436 162242846 179833396 239398669 802878128 951340067 835250386 857577737 923243095 998443746 785586748 816810870 64992716 878388942 425998950 790598549 136979789 226459273 726091748 760418069 576655534 681632653 663267547 687795886 887611099 963883331 219506353 581511796 247665283 374284910 691207660 924725677 112186198 334013335 310662697 527362971 904546989 937108079 597430013 805982543 30005215 355269098 193942410 845059071 722492960 944469132 236174528 784320673 567944417 789901935 536201587 725921268 213678634 303247608 951702370 995227343 899432386 983311349 892715769 965923906 405345521 758972546 537087872 902542473 938994843 977109537 884194679 966203266 210149789 826377958 938018538 977682112 63485187 435497288 328922382 716736070 689349554 789381171 926339395 929041563 27753895 263074174 417637968 755922353 710919409 871336509 428306586 839362470 950120759 970898343 330042456 661596013 543984668 977166315 88866897 524588647 458058302 690425659 768225764 786380727 978104664 981940953 31901255 770547651 132425399 286403931 726821711 727378159 369615588 589471327 927605286 953079006 7809393 296614360 359519753 695245248 893344436 997485795 312233505 340432721 157178925 437959418 31724571 870320050 142833818 445803980 383896169 758139087 389958700 588328009 166350500 979258152 414136630 543382281 484922322 620426224 257070975 520175519 617974880 970272106 247455630 264306285 704736133 889231285 880252244 930262000 695281626 985000250 752573545 794300475 220978225 408849688 203081181 514806561 316541308 441365655 937579210 961816047 218016946 464615869 843065506 950743253 986000414 986421893 289681266 952673338 366119011 714801779 485443269 502973004 823145054 905512080 242483739 930320235 54728061 163993524 121320661 157113486 190935753 712368380 662442038 966858742 529210661 950026130 652480137 906095413 863209411 895017189 454079425 974575388 342836073 423032711 202496217 733604531 467743671 980196703 859339644 982664667 625167728 923261971 298990281 430751913 590817959 798104594 872660586 959478321 354748483 365031292 936068057 941620079 748898666 764651912 361001721 912082109 631798958 912852718 458767177 646295280 146788442 329945054 968431956 974569253 944854735 994071405 786018491 928750842 14574112 201362152 871094394 981376556 317942595 323145129 138856095 987962112 791472455 861781550 279157710 657737547 16830042 813464783 615872727 994667614 791038156 873384382 39567100 663291835 727517398 782952979 461579890 600962269 808890771 862241876 546930827 612182988 157754041 406245014 394544156 902803079 943844408 963890926 788091240 820969071 319207967 917875389 572151186 887928732 146372810 442888489 774493521 921249738 738399036 748120529 288679101 473150133 391584122 554844342 552870188 711911974 572202976 946204760 606441988 700109515 159857674 520456559 435852614 874961120 961709627 963322850 838171334 881493491 579125765 939812337 391409419 873470581 914749885 987427603 597573084 923553052 475695380 559742723 185438015 343782542 689734320 704882794 903314974 906081483 742247302 858609810 710690905 928814415 784742840 817900509 446064606 935367726 845033157 981403493 72357413 773852456 739763034 913494451 136576002 700181250 592604316 601516556 281478871 312803230 36237382 605381799 345411071 368785933 919357191 945110978 435313293 614462294 691472567 893732030 907733252 967481182 788288012 939546855 528408643 934420682 574606457 796180177 541460531 957231454 6399072 735026008 942036591 980371189 157846577 815256554 610833375 819249298 849711410 893363154 79903857 999390670 301997919 824836867 947974326 970734122 511839810 700397125 401091395 542800479 815901972 880175583 451393775 459256800 18045864 844357205 365596151 498553085 472217392 877251549 988809124 997544668 10275294 807264552 195130722 692921080 658260580 960993923 958946134 996797712 816604010 974623232 243808482 843712657 961233569 983109693 935803992 984594191 845767169 935738592 446135583 450139401 806345131 826027193 568819794 965365990 861779444 994319764 249838926 323530065 70395350 580311867 253015741 770523989 297266694 428433737 758910578 883757418 630842191 778524755 322483278 811590999 852287152 857219830 12836574 946364221 447902219 726450429 908451770 910832028 200720591 498893976 616558336 962692409 75458782 962998157 435300722 862031087 784327469 859171938 824454319 951884016 452848562 945085494 228483927 398694091 630689714 765996858 262455154 775701204 432530184 437603687 855631076 889158881 59075444 668074989 174695288 444252363 147283779 350832613 294964379 710004147 947482603 982830244 311782254 984368155 250039107 920997025 326559632 690152278 889978928 999927641 285999952 626345016 250382467 364870582 252728337 791469253 636342835 977727714 914807285 919480572 926678167 980585838 520415493 859038736 881723854 936134285 30596541 209688353 69763766 345942289 819556963 848614191 296185494 641015631 715541834 764729446 523479333 565390784 253758643 409432876 465555521 754045298 31019895 207633614 876920904 963863917 576739420 781231213 325894276 698234602 963102334 989513182 127218291 137058884 815606699 923680766 48725888 971081033 769520494 861047642 806072849 871100094 652315835 801133828 305013475 347513121 863091767 934638895 779590179 834056428 104495768 910773739 59857402 829579574 585068689 840858640 926432203 974730079 198820435 433551614 552793135 605370649 546920400 689500020 755204353 832881011 103011716 659916910 103628594 114458823 612752305 801053977 609240730 858930984 294977453 892737124 794266334 950830468 542639410 927082964 824585910 877218001 852081501 988421282 28173366 712622621 893716490 952237891 739479233 748456890 486574929 699505353 921739036 961583957 298902337 998121039 910814501 923040818 566865031 942594424 965819467 967599984 288462120 928174108 220106917 946023791 562019673 843989981 908816224 928179087 35140602 293568450 434465832 954482412 323272872 879019121 732893931 880085352 763348120 777935178 494697744 665608347 566617574 697679594 145723718 689973979 782790720 869759898 948369859 993131903 427131546 448135381 495503283 632953124 638064802 956827136 246486378 405699950 117772324 893260679 106879417 152639007 247940305 814816498 129394797 566897015 530297196 821467210 67732922 604678022 590216429 674277861 402604247 723316899 992070827 998480200 832388482 957489164 223989523 236314700 14851505 470517640 959090717 968153431 912947297 918692967 298866805 853494521 546288156 968598751 247069760 928026973 538317992 583054686 107315613 152984914 189212910 521682556 627904490 628318367 879962596 905933578 664671443 755800346 298589296 623159302 693300374 804901687 179680678 599579225 111154803 841930034 790695189 894842656 100387412 343746266 579800469 961040429 72909208 249093328 66539654 877360130 492170443 683789749 347261707 686546693 282672917 505732688 911263135 919289471 975840224 989907779 620692439 730546019 901561235 986715460 281012994 796489737 142948138 981104146 718515953 768920033 792049548 899382532 648322061 766369322 761010556 771928183 103267241 246766130 965680288 983803765 861698254 932647785 517999190 827033177 858285427 947680490 214660589 401084520 544117410 670093588 479314294 617390005 759540214 978793555 493383968 603230973 238300387 249233027 630098585 836772991 377412578 517367594 536925482 969270551 724572816 785236517 76244299 261022121 428144480 578647104 846195475 847576197 410838236 930411622 256114757 776395693 110852871 158895578 261185512 410060390 365756927 797498746 388006796 988607555 581227769 798532051 940098721 984354110 311668477 661729766 565788075 595710355 801544019 876229154 548933235 800552929 384409477 561748986 417744620 695546200 626837276 630257981 839544815 927938382 87466088 368655531 352986583 702005909 868316165 953701232 810835278 872106583 894916478 989327011 724424082 747562752 120252479 457639419 264189641 828334252 536007042 948137549 787464903 956601327 914732569 971732189 394553055 849304757 859738110 893877763 591968905 813583985 455680302 827289075 401004711 822947897 267746288 951983051 451462704 995104741 336176385 570399450 899908422 991950114 427845601 702721587 811589783 929189794 100328651 155268807 730411993 978955933 115707556 340737648 259745123 596199836 720575918 855700724 685362785 751064616 153980385 612348487 552730652 662313634 499974129 554253927 167698221 655367104 830458401 905618596 414137256 940618716 877208652 933820569 356773823 694189854 886009391 915409496 687559958 899759864 438689874 637051273 889786100 993536417 153446985 836051307 506511274 961984565 715932030 830842115 77908308 162696768 589167062 987456912 890074118 973663477 377252279 924796744 205969908 584327481 149762278 431191074 721955723 917696064 736924138 932346547 714229277 866173258 559555498 967384158 400794135 698156769 486364179 868640145 149036442 537563799 561439395 719905401 919837299 955708693 964700839 992928253 780448698 782440891 638317156 944266157 918506308 966221788 437811888 971947347 3752994 439086373 811300351 989027058 104308504 232014098 388613706 949494055 257378631 736999225 475626119 543877033 393115053 798031094 33871313 313985083 593475586 975346371 9098031 674259429 927425238 975273648 707489936 784493040 771309750 781975136 290567908 840556884 126538534 459765550 162253466 632441167 52856019 421583911 188605018 364719988 56656006 800913740 132388917 694800056 946573519 963915742 35912823 368023358 327654840 456216493 765221104 936594376 768950187 793362598 702400255 743588859 736990052 924405832 473208612 834583262 631081568 993597569 738284519 775209577 182365376 617902716 114366095 468749306 640724527 932041895 886061665 974460289 892124751 987934378 817305758 902802866 354568416 852190402 526989353 786437963 328813660 576712320 678150363 773062382 657737909 902289736 844099925 879102527 304726915 740831990 211072501 891294374 902095513 904527022 803532316 903418733 158963089 248552055 623029850 801744320 972592037 995942510 798370466 807715154 870598496 906069729 518216669 986180392 159359932 786720070 15218272 20062068 578242217 660522766 819953819 888958367 993822936 999338114 755522191 810156440 284725402 378612347 406658982 631249897 816790617 841777956 269334626 463280913 988163793 990531897 352527034 571661833 456885785 469615678 809649402 961760547 456432848 798546517 170696002 837335318 284084602 306541894 132412543 486359562 548326937 999905771 632763916 660092517 113927094 979161554 600064204 882325843 166054820 678891914 223126646 255255211 37407771 46130959 615373671 844010713 907134755 917824287 734611134 928241717 913173462 986000149 15070495 807043586 175888670 538276364 508063289 874619241 232126978 377574539 170206575 583442410 397904399 646579613 967147847 974874342 683775396 728351935 514658921 630406983 513187036 535882379 267758802 818504352 816660055 870475255 628642391 862545302 352578410 561680319 684073053 883072703 573058078 695621926 182517283 471225879 165710328 666431035 473179496 537607709 366048666 577801101 25559763 187263766 460360042 819355958 222785874 529235243 706740596 731860517 818620498 942671146 555082592 919344347 931120961 967312297 986533534 986889237 547081392 907769275 938417776 982844539 370094186 949945680 767014926 909390771 321478435 771455846 172574184 792160601 362740550 876322467 593200981 709965188 335366755 887170747 385953033 403991959 945783249 973087618 690593166 990465684 938196346 962852598 363388251 540462124 945925106 988899302 489665057 663632987 716855419 940548872 800334096 867328017 679845749 794076297 494535111 701487678 658051184 979200696 861948755 965894579 417952147 430024989 989820519 990814139 698159701 963038250 38252247 515112144 240055955 466756850 615018857 695563796 211064567 417498972 700247934 937283331 806454958 952002399 653900550 703248876 603514531 705846810 124016687 388689498 876089606 894230531 524416578 869816241 762554362 906914889 911150930 913919871 672387788 687467168 134785433 309565511 236880064 630428884 130694404 671037900 615311873 972401510 166537242 584462688 811775609 907665836 394010930 466076161 356079953 972091125 692493532 870715603 613800852 727320484 711163160 871165684 11785960 207132864 163790583 418916053 128010729 857661082 650563570 841201401 784910953 888988755 918328033 950889641 383238398 832606882 13564598 26120256 222730965 793428324 363128693 515235232 200384859 661153077 114959727 379116243 333015727 598672237 757892313 978915737 472495443 809949061 967994550 982150484 641267389 905751271 652006079 935456570 153230366 686636102 382875993 662229977 14763652 856820817 182335431 314164204 828367406 906082422 321738993 659906010 273188018 427640231 38355809 89915256 79295687 473414285 476891125 910959158 984605884 990224578 927848965 966982948 834759956 843773894 411574224 673221606 123749122 893436785 678485188 900944568 247842910 851984016 365947895 929578806 707094816 724745271 704178395 716693873 836691434 947504314 361023843 495166902 861817810 904119270 956694472 980360935 80066698 967272041 497579914 777557339 361444115 787667711 62403201 437275102 339735959 526110265 308129050 817924804 149629300 937571662 435317720 918859333 659901540 745249968 162232358 913629600 113100579 124435040 516633097 990332603 473462715 921584676 304003334 753175350 209197663 232000718 610949126 626290532 777359995 928334341 192381752 993171416 540474501 969503894 377130214 430688626 593932651 869752142 331879159 862568329 663790963 866996912 934565276 952964088 931077237 992155281 476478846 790754583 346274610 507950915 741405497 743286726 213558324 885612723 112799380 256601915 982162068 989263193 995164962 999097676 46910297 658844326 196110587 600166779 961737982 984885804 730229572 815515021 834034298 869432563 613082605 841989017 906508981 949363584 421147407 836913453 281654829 887218501 498136292 812645954 36970705 136526116 22427240 879180470 797621753 909785480 690813024 777022903 354658389 727142043 683737179 723276211 333860462 445324082 177182625 383624285 668710609 674054374 932063054 989613817 18495184 274250142 672281198 948204428 444527770 969137490 54324402 807483227 341938706 968862880 144992791 235055531 7789144 285299122 252871580 559431330 104776320 876058788 458192153 953495344 579732753 667244473 947019221 951635201 13177235 687250286 831550751 996248251 961096823 976928494 678072601 879048483 472010157 560390542 501749539 658654662 590066310 637673922 242197932 452460960 929620462 972672086 611614206 622123051 740187704 949909145 461735254 604809059 292001772 656886700 679240003 712017687 759213006 822328472 949657651 975891461 617284605 670104616 575007020 718415070 377678167 938352440 109997928 216585629 238024514 917449771 276406522 652275163 23328701 857374204 893525836 978074841 888097543 996190707 586020677 718050845 111458333 622652456 33422981 540021047 398783340 931389924 680932392 860587120 368612053 536409002 995759577 996641220 138649866 956390545 589271423 728953570 77406441 118014286 66883100 68894370 912545923 944120947 300508589 475504545 779304306 839986171 916591896 952338465 626171468 971198328 37058573 380430765 924535785 974558044 98984721 236699647 980691327 986890411 708523409 861922789 247799391 973096664 281566743 751789862 184714602 486612726 935013440 945434293 421180913 839582342 464251525 754473244 319503937 934439494 448928077 702507716 236184444 930301367 57686417 382215426 470237312 653265210 297006237 879067349 772583103 984709624 930352891 998819012 624797345 735328917 494447838 867621177 289694922 364479653 178519359 691313117 524568111 702969593 85719976 564351767 172623211 757608321 297796072 766600309 863503864 883772195 27437701 606096547 889963097 934402381 232422783 616588594 597695667 786906347 380735841 819725676 194866922 709276392 312770455 923656676 233826898 315385646 652357494 690384501 965185310 994087038 839114022 889125893 869422637 938389619 682809437 932966452 759688363 864487636 81964479 743843543 447028516 928480515 795781068 834380911 480294522 661501991 84645734 231809316 818036970 992262734 846856638 930120179 715741226 872863570 270191669 318473855 506504314 715592024 826898461 849504915 802804424 812278961 891324780 988750780 587602974 737715751 77736474 263380430 353261372 566576018 919480546 978834251 394888658 791575402 746581201 881535053 814258426 942802454 668104317 706536812 192705780 375927964 22115512 99296010 696274573 777234592 843199126 938157390 297021319 979728825 281247694 734751179 885173190 935616438 171409388 477928329 60249444 412327220 266530442 423543519 70561054 625608087 508262474 703840862 22827058 598674358 989972086 994745303 307460551 340247397 427732099 525427520 940732081 999969890 801933149 990485156 986407665 998174905 584116070 919176046 257741026 822659282 89625820 825659809 595509211 894291525 398594578 462019462 195023979 655660442 833715475 945679351 629039380 668680894 758175004 820190384 118769097 462627564 999009760 999560310 420583794 564476012 216291836 641559407 158456425 301640104 618290271 904934846 422811735 916308716 427309223 610184593 101932403 248801471 150217906 474366767 727209157 946292590 602415667 724340171 33807617 146812800 371138032 655978687 110577265 905768135 975635262 991325428 412108953 504095872 929638369 941915556 346869192 983807199 567348910 846694336 415449703 622920277 125948840 781311184 359083454 666727123 568418402 937140603 355149152 651820929 666660749 820453221 255391616 934726748 94015586 332786937 476788492 584973009 894847277 953788863 197581795 458596901 129924862 546205931 416226411 440748067 827586885 902845986 511434033 725145903 340683798 476102167 22207189 902208609 442619715 640715187 758379068 870257917 959927454 984753102 249611199 346721601 306553203 548274688 468390790 559286989 566724026 640862845 7665365 896289964 119908668 164549251 650181702 706012339 631436886 891709723 498769051 989680956 676549339 885113942 840955669 871212604 290578750 509012366 301856230 678058146 441681717 738127680 166809178 183008825 893300620 980358054 415783579 994504723 957479108 976595004 150617109 200483665 797001417 966175066 788513761 883392153 502460213 821783874 866810061 979235202 525042188 799209074 771471179 821133209 989132743 994071500 95001526 311158867 230968890 794834647 662861988 984433095 870154348 977646113 123515187 731150577 632734538 683449766 647315458 776937966 254387650 656215161 437777123 713220833 526222453 590013418 971859702 982397205 235621942 803055929 756225417 782784440 494486712 987809499 539633304 758670849 188745367 687670994 389625615 631210827 523179187 868358615 212529181 255771150 266618660 555390048 980411758 989025120 157341400 786865283 30217008 630549997 481670499 586171730 285784599 846086870 30529855 495420316 118286130 924788196 354963276 419912877 584873590 820495439 6154184 67889298 106667669 507632857 951606735 952616112 167967955 868538265 290874446 558074151 529050296 842167044 773525468 945162311 366354059 746160856 259059622 301484612 104181653 945833464 578580904 979430129 413356446 726148852 470220948 593375953 133054097 770264625 672701153 705852406 88754143 121581977 510017312 955016674 418154739 804485856 918339072 978153029 864843784 919790384 912142396 970135816 749149955 763546883 185070028 751386856 269935140 452986096 516733598 945522133 883084402 947810110 674874569 806192389 694002428 929186726 14463743 306138600 608028929 614688614 379702125 424704085 263439143 470538805 655344759 662614292 564451785 757587993 795007785 875721160 291320117 351990730 51543761 986233041 148435290 385417092 312441637 358350308 428985638 584529714 406653665 658509453 152269785 366907981 188289839 950777320 719874232 863170838 481378860 573617629 638023621 927560789 323963422 590807233 12217638 505278841 682451316 945649239 910143556 933809548 401208795 451353281 343169353 600004745 689752321 758206079 349366556 680014719 152423719 936011390 627856909 984404568 931763458 981220739 362271608 793544512 172830550 755143107 168437439 745063364 954162668 997509474 966355962 975788668 44180856 942409520 261891999 846974752 937136882 952543627 570964815 858426131 778777432 988925966 650919081 664939669 59748871 463198810 436484909 604575364 505825589 684694514 564389587 822065883 745460433 945686377 68043755 669531365 861733040 957465222 437852132 602415481 690444879 849769916 121524874 979057120 143720898 540084129 817138079 988356714 249341991 646831631 44516434 933394343 911578291 920975093 891178417 937780548 886002649 944308308 650731799 883773220 591041581 731132933 870333612 968361587 799968404 854700067 55834780 278644506 29258431 924703123 794543987 825004260 811328852 889806252 631569436 829823831 818597843 900185419 711821050 970293142 974623266 985359553 739045264 793283796 516771396 864535569 446360261 929335872 202969369 846619431 998219726 998742482 694365406 780824460 984950790 987399217 83702147 471940798 419513413 736920437 48222309 468683369 63504874 801041931 657972481 681068480 461237452 689165749 39520653 911274699 244255299 568897445 781956603 808223319 190638191 645919502 321933124 611584787 411937835 733729139 514284655 583204482 671861401 950016169 857160118 967623994 187799681 874263882 828579548 891539603 560326087 905262895 169290442 297133292 569719791 864983293 154197112 383265135 485656595 916787397 925815122 952000297 388761311 516021567 115832369 803796578 846717146 981294730 146401080 633629549 733141318 865965042 471391850 585694426 105915199 346395520 445878963 921079426 72144288 548069793 134139430 964595132 744606248 876471159 953261916 987590137 928421644 947786393 20255403 408594775 390651781 911045870 351871545 742895110 334219805 523755713 787766142 964782256 98054548 878437689 241646354 560440222 101783255 526197934 682834812 699861756 985600906 988274197 421678599 784280866 104752840 889442610 669223424 794411141 329551267 441284647 763129500 835512033 143626627 740861858 590522720 684184556 995990612 996351386 324696384 879372811 932257339 940053614 405778733 999716869 461639217 847373036 404703429 411876559 967266964 979624589 479341893 874121762 349927274 535106805 493623264 859346191 418175197 516031825 680969304 696350404 496865163 597654245 32299204 531908947 480796781 536423944 772785482 895513600 416446151 544179579 65297037 957459218 917356701 934166261 189232396 689718660 370341141 548560812 543158156 611620139 294475980 864537263 258679807 421404915 320888687 449131285 591515840 749501001 643726824 944935779 971691691 973517833 112864088 636536663 671814607 705767916 211798621 882453110 146700330 937179236 530623647 839942258 628823669 750692259 137587382 513194847 914055691 993335430 103524593 854488870 15074980 271411418 772277491 872844629 635535815 706724116 617338358 731230182 385142939 934479506 174985886 387352642 678262847 942744305 104711185 306825732 76129896 982898390 204090268 764911883 682762971 727675885 258482419 636617413 630068387 832643682 635733452 833535183 683273199 885137888 857169798 949499728 52492685 868583013 78888552 574965836 886578786 920427033 365498515 399333917 669047234 963024366 813306995 815637850 736012274 989438618 935553693 989512522 785768140 994094445 438700953 819206549 880262003 946387955 347808830 603494801 408894311 446507585 305285347 951964287 221548184 888954722 351937073 469387453 254935681 881659771 381754430 619605812 50216988 451711216 253097969 624063926 181784306 699991742 967466447 969515171 928001724 976347611 211816832 734492059 942597729 985233843 172146239 689177953 596267745 857611844 42139259 370090320 518934846 526250585 348502842 390772639 447452218 795755604 888605529 919460441 713741085 959921866 410384185 736777940 742269096 784718490 683603140 785448589 674988977 835368186 358399510 795983182 911294837 943513112 867996806 913600524 147572767 599845245 416621794 997576003 45235812 467127322 614754726 872778208 26298595 853363557 326690710 781173075 628603642 767972549 377800337 970432751 909941951 979990262 975305280 992236568 498501599 686172603 415190045 431484689 595877034 792995102 300416111 917316302 953274753 997882977 623915450 693439664 746744481 815937661 783690248 831197272 270675439 756937376 478379466 634047290 195678627 562706294 910209734 930983373 201420664 305092468 503965190 688704247 170424293 406005522 893694032 976463377 866146428 913904629 283575955 597921152 373345509 870621420 963475150 997081127 624117956 711853201 577465994 864290734 937045548 970678092 731816723 835511154 749893768 770205275 421513784 858177436 465556261 599889619 541069729 548185721 238245413 421953426 734763384 777680521 962088710 969903425 584643820 806430704 237548025 801214322 890288107 975203579 892259129 967542368 3925822 137165276 879381235 935383652 92633258 439943353 942408688 962668903 891786142 953026112 680864677 762314237 943089473 960597495 663700308 691280504 423785414 536264466 738935722 840678770 736479992 918356088 674902429 954651529 952402100 965172460 4553496 399759012 460876780 967775759 165799343 182059505 91016561 295350543 201432123 239882433 24985427 204761769 636563808 807522774 11534768 226343998 463845834 794372808 412903781 858939955 936960474 944823300 393028595 552882861 51049205 616520183 482620029 842051798 362984731 830739525 858695130 958196641 393002438 555092332 235598501 958942951 996640375 999607926 272461809 373115565 960414671 988171749 101822049 648195444 359381411 902873590 34266342 303114602 778602964 983293016 503740622 695836745 384456500 951996302 525929085 753495618 649668543 880848206 620411480 694145533 997866027 999777712 620058613 744432319 965637398 997876213 914101626 975930229 45280910 562578907 557588754 683704138 474683173 505587368 795899364 917953990 525507086 555683677 671895814 966340371 996499690 997711705 759640185 795269448 864010803 995434973 161060298 221514134 134846170 850520011 580565199 782851908 110456213 429262776 260922768 822767466 202737001 743933411 921822454 957852131 802858899 850293524 483842705 508151361 724228614 905533958 971639050 997260936 962528594 988871986 907691843 977599311 700889671 752791542 787345075 816828647 33145073 609099307 349830335 669895557 349995178 689056686 4542725 146712702 455952367 666953813 821331754 856196666 593384287 831899453 367765499 941720293 129705057 969604197 436737608 980656770 580809211 883149663 260532142 395541942 934871613 962371372 35268674 164316972 309087257 513395736 392326141 636248281 491393954 868764830 852125472 884372954 143095634 409144989 148505251 279088488 729472985 923112304 947809233 953704916 849381226 918435100 612901 740917345 158266061 223793747 11942500 141857883 413973015 914478454 785262438 866353143 458778659 552010694 354507753 526313087 973022963 977978193 734471639 793726752 699672290 977100400 259390937 701306629 997633355 999824800 183206740 658554031 844162461 851787016 582103849 726631153 73766134 926072202 622566808 945311280 926574527 931993113 347096384 741725810 488601208 673679436 157428719 375120609 879431179 990463548 316590603 681217488 483638086 623370573 897504947 910160005 661929881 815236069 214486054 250161988 722937506 794991351 291104488 595257169 418695249 669304481 100592740 433485035 241966542 465803748 777801966 781166638 647282505 833676025 258664199 578922564 664844981 897539214 489076340 983502620 387480980 978527071 637793271 951519008 830200965 850568998 15879889 230175838 124213232 424838884 677295668 864767271 149354434 171792844 462960340 756742306 485578286 962152067 898135439 958937047 44222568 998011409 177044536 573216893 808009020 898040408 562749440 695543935 518482157 961466823 869499783 996219831 320838151 678700197 799066758 948300738 533522040 715469119 880977454 994763105 742865808 779080177 509999086 878427330 34287109 502398174 728505411 878613153 938017221 997047414 32158111 126561012 642970173 822807204 606271669 973522161 813312940 965947676 570295109 603422860 816098128 884174891 107203524 900827545 346020381 540581229 158880566 215386367 318175840 927866521 264253083 526867999 837675799 940015411 403238385 813120464 845432052 949903911 973756611 992417921 568805334 691260061 354192931 557747365 837822061 928528930 985649874 985699587 12700022 204837109 831419871 951281350 399625187 845102019 864730333 939085146 273659607 861191642 268865506 533395095 584542710 591908057 617383325 649121493 979072020 995096386 921154634 963368437 978279538 986681379 841734683 884998499 399390447 967619772 893583684 925271519 578023328 610179597 31736724 592822651 155968873 485922759 542860239 601502647 125842657 394881304 562878873 617368840 65740676 264939115 44137938 329042408 184938035 695167425 985886149 999462340 259004381 507250670 209308477 670333957 202020030 298949214 486813774 928166843 3218474 315597763 432901573 708825679 702934297 774484397 734997807 811164296 756609399 800834121 55947481 860320159 863222063 865968618 221933337 836222855 417556694 982271465 421224034 646907867 804922600 981006240 44151581 436958993 706283899 804890624 728886705 749354600 849176017 918893506 44525232 696725373 538310161 915215255 778743337 932641428 870297042 939371724 517639439 580703526 81940957 952964649 419442219 708126601 181993095 734285070 160015561 487812952 867655236 976031524 445899903 920462290 884966835 959780052 481850791 847311626 610487268 968299791 908916545 986182629 865530184 874747419 11897248 265623828 234461947 536509328 584996575 697083500 64029256 871236466 265034169 927768789 942133398 987836274 58128340 253138577 905618526 949787810 302923370 694905706 672582605 691808449 305877200 656450027 275974761 732401669 972280791 999591731 639461264 726842324 728862397 976059918 879738802 910050847 875858905 954064988 8617460 740150154 794277320 813843516 153443118 703872865 986627775 992230132 304529936 691481043 679252992 968670468 833629685 934197283 311945821 680587878 535467963 976590858 930714622 954925564 925381245 954330653 395684566 977773558 5101477 686478483 581247256 609934653 324279361 650672722 18697613 423504817 612671141 718859685 884149895 937162563 674188407 969759102 853546335 885585898 95082938 476556681 734370634 831622404 712935172 801882261 898493560 985115051 765536382 939555500 76468027 828278621 590753404 620643947 430020209 603098333 9920619 202542017 564925525 862084639 434394724 895611194 307418661 617134797 649517109 747119455 952654514 953817329 372615971 487486669 908186802 938721988 173448250 723976536 510578007 853020463 545034725 704657388 869055642 875149595 164195937 321627705 357058567 858597060 137862426 984861474 381353643 820570831 101515595 317352573 469142395 934047143 228589318 650769961 593553581 703404811 749607944 776990126 674458493 983867042 421912149 922670808 207974889 690854928 881063468 980556757 543947766 976565701 826347191 960192473 248683610 309633451 857885619 935854719 31623096 457406663 343357700 858134569 107083297 841537565 43694654 446678279 415525489 817588109 222044697 829705635 862275570 921514925 997032472 999894431 86120369 992081780 928458992 999710479 792466766 973140685 153160704 519033498 247212144 631823717 772473921 947436330 482303579 680731909 352892234 751621815 246446192 696012773 622580381 922048703 32852062 473545904 944277483 949959168 57974224 443102398 991723956 993842248 937713866 940781574 17933446 264669861 823014537 944856487 108120434 365859764 32063973 750625451 275931106 422839244 332060633 636463478 861544375 979428372 497525547 815414111 325567911 823346209 687900462 977078036 894059786 955282779 423351797 931848850 303206975 587209151 775167739 779203643 700442764 975017039 956889332 997044787 761393040 853820284 665045732 712046441 472450334 550054850 714360453 855273015 192630117 531812627 376612667 829069279 833571094 912126021 262810005 965337107 584593780 590706308 819903541 863438749 346654861 762240170 258463264 540938652 502625045 590239150 100587466 313014824 898757676 994731114 978679140 991262684 337685263 536353721 843232672 923580084 138618332 802251653 703104603 904466368 682635074 937141818 792602552 926859786 644969179 760500535 56204202 277202574 346050310 957474004 426064833 837182737 71251011 643358089 805057717 819304104 55773651 508817175 936237110 975666374 677808027 937101048 610745465 868015646 405496233 488369752 28060894 258322039 855854629 898954682 731950793 922212870 737806586 848176219 327871011 941889592 130125588 752936933 472454917 797133741 527865830 643490484 900814103 953419570 178889938 797841241 264393463 753502770 337890498 459921447 783508782 947630330 602944006 724296009 395335139 686262206 622836768 849644851 904664582 979545788 987077511 999176419 743256277 830048827 752250328 947901417 157688562 678973922 248449415 306030039 692590268 936952790 716441124 800163675 205835121 700123949 860662865 902194499 899738561 934087274 688958065 752251062 386586294 979658298 634201817 968353139 483734184 641665796 527775669 612222466 252921454 831905884 779521379 790902744 940386940 964635601 297219501 702950899 393802918 603817205 891670414 924604820 494934939 673154196 452386155 480357851 185129772 854117528 913495989 970832051 891887096 954830320 570398029 686704638 723301422 932392362 799763770 949459499 564531668 734750366 344177823 662974029 367506610 475478124 922885534 996443445 418767349 699194427 936560354 966318530 186258196 337545104 958009462 983778342 149197361 229295856 726471230 827123398 905662870 906632990 205833399 386567461 560279362 733038396 70192750 376845683 117745603 686622826 363238611 485248939 718453164 994634545 609423016 990337428 337885966 490774293 717515990 945236232 424333868 450803924 688488805 983090534 224159785 694947487 523611129 620534024 269205349 662240683 334756742 958452977 649328574 886637402 503247646 595078967 923503534 979491447 350726303 611733519 206666002 867076471 178669511 619443283 556941863 929021817 557403694 714266112 751441340 931215494 614551919 701712203 764301880 796352122 870942045 919925353 363484936 959494706 854919575 897946810 373599817 760907092 318050163 526102191 148724795 478692077 13909768 359573338 43042177 198815026 544930796 785630167 513689021 694309483 311169793 457486530 48236375 149394903 317388217 352347635 407558335 688712968 809998446 825018860 845614043 900699582 186389436 462753145 473290471 998885868 926184307 996660215 559876131 714659246 897612798 977577020 868106282 868161539 180239729 802150061 998823220 999020555 972999487 979232097 104402982 997799188 487345124 900614478 764481367 922369309 645295649 971297576 32775285 982095571 615074526 944487294 414172381 824647317 546272257 598383657 72729925 597609640 546240319 897495590 688607361 871932301 692868153 898461994 295407733 713463723 919961724 957847242 906169429 922276252 992633530 993755207 264839531 486094315 380527100 661978319 431132019 791307905 677747169 816501599 129430708 453031496 763834430 837287273 172153662 328843934 799952155 890620430 523586221 549346755 183008664 472856637 982260480 994303180 457032875 883988654 484364567 877371259 442427432 623511102 126587954 588351361 935927301 977454947 860579214 944964361 760920002 798947516 108692625 455300015 834010176 895652275 961553774 974052710 341608788 957909098 69932148 149669518 717817999 845384575 495549367 959430553 954073784 971742953 986310940 996654979 122357486 613852078 359094241 835010865 712833005 809355161 152177418 570292857 100340839 623666770 419517525 594413251 717273390 818031993 610964263 996269211 829601865 986295743 212792170 499225350 747949390 998379159 538691524 703613042 807421634 826160649 398939196 864632949 609897484 739433704 279206039 963593951 983678005 988717468 799875575 910423885 898539691 968660172 714841505 898126687 498466934 769351262 316079095 362451056 403179906 527806310 80457048 502083609 955893551 968740096 5318085 948307140 651101495 732406848 712549401 727638734 758314427 772979179 635330683 968866700 93607717 103857336 364501153 610972890 836889664 940436213 122598008 590554785 129061710 222641722 37331247 639661830 787685605 911265908 744309634 871872901 470671012 731557330 829401576 966089461 916974502 957328374 990119216 990188676 922256510 973578136 711695462 929455803 113332555 894319366 9584636 64641371 584984009 797480908 617123146 846223452 863009933 936920120 195350516 641008001 528062156 880287619 20067217 873585673 376003470 733187826 681668224 855596751 326646005 495186908 810617617 932604799 50281069 658179333 314093620 374207913 219512205 460882005 627718120 683597718 279264906 654885914 131844159 324296586 389566921 985009884 789014140 929865731 351144678 864075461 197134365 752148449 203314171 302330389 117827781 207429782 334331099 753511358 325840855 914088365 679671503 935900447 568533939 737156448 188195800 654346668 527117530 579846710 149134640 643813521 910435438 975752382 299937852 826836967 264375625 444877496 998548004 999504791 678092231 903572140 396382764 444309030 228750776 901939553 527647369 943242887 794057384 833021202 305889537 465036475 125123212 284760423 965322915 970598666 775391103 899973699 578290336 886214340 524337390 791236412 787451460 993006409 764062821 768643378 973271884 997629631 360486551 870444957 553767536 934856617 8819253 499713660 91637909 630020486 881108437 887868591 457911498 616176229 382568520 832251304 870103847 893078230 236556438 401078112 953318290 959386629 216905572 954690299 911537771 953375713 699185239 808627210 259755994 291346206 872358665 932442980 590686243 839974656 251384882 567895827 627826389 979879967 172000640 445222610 576657951 600848925 478187666 915975905 416543367 845578300 764596648 800386473 816126851 871840356 306074385 847356975 963401886 977444694 312569472 988660115 907333915 994891718 365765430 953986988 347282692 594935875 724778797 949334333 619384994 939540462 330806399 378902330 834120382 949371848 495263474 515617454 153711408 640648279 198758637 429713584 49038323 377035050 20814443 931302046 842701078 950549410 999802141 999810210 325470655 604961070 142611889 681234985 830542617 981608466 195791274 910672856 707784825 741781768 173418699 619051269 709451396 746654704 578931319 595361925 861851377 918193872 795896582 969426719 251560442 558947884 214800151 356461384 902960147 966521271 702999199 759775555 687353111 825724659 590375294 922299248 996124740 998861735 672457220 682405905 303615262 898481344 191198910 952691754 325151328 334458352 383803637 936131172 526965801 987366874 429251209 539944089 954426945 955422273 291563506 924492432 982739297 991826636 736388672 774272144 966747607 985272129 361185996 726498222 231031317 583019568 651594684 654908643 631771086 849410702 244418735 782188235 38023504 151857170 776716364 850539556 871363485 883104460 979194373 983101415 868332970 991068005 350976108 668083342 150964230 238986313 256760185 690464548 983560618 998377930 560908917 973285069 412176213 868912508 538112387 583256336 295848693 985533658 22691181 415858898 518359148 627465919 682319146 900113983 536154773 677415331 349219578 856600845 436255455 703819434 532178121 988187525 574004482 732611494 11969847 745716437 500848943 787576464 527712384 606785573 615372104 823020411 570604197 908225374 66230253 604853573 118095710 676525760 158986037 465140433 816421330 967290296 122317863 912324609 392696503 545111901 237296333 368549526 148638268 324418515 697801845 923023352 949761607 963694886 841041299 974139419 739932992 859103347 689275700 901908502 311509472 830217760 822407863 846703249 969267559 973820334 650834015 864368519 626273420 943729526 107108187 643518102 245249022 821791340 479491526 785838011 781452058 883540182 680884605 996226255 455542662 957429600 986171433 993568510 427971861 566118248 240062640 342933434 799278396 999703235 821253955 852581301 656456848 932373713 959329950 970874366 517009565 888416356 125529635 966699699 942091654 983876457 677573997 917459900 982248529 985148887 462149488 728707295 949243358 993568424 737220309 911629091 931219081 954817045 200842241 913404330 879050637 899992199 104150112 721177299 907032916 930359062 914268874 998491637 789008717 870157208 301598770 509210855 416557435 922613242 372324665 830711747 758183909 928714098 97748056 117872562 889703652 971259135 330794175 451974006 362424926 603134892 237715842 981901019 751149678 833848770 883235986 970255165 741263209 962436100 296408323 994967103 386925841 694925523 322932332 408467129 948445842 961425581 149181098 876254420 487442744 751699189 170030913 650440228 44166399 601362122 514210227 535299216 186392756 294507342 158627653 512088737 119189152 149575188 234469570 582138727 225491431 673132296 696782034 932535657 853019815 983379445 173732714 345040062 447204907 979898905 883656461 956767174 418531888 772328790 881187826 999524609 850398550 875898028 85495207 497008487 950242988 997554294 467598438 546561227 262665438 736667472 42908457 550617697 46914299 699899576 698932088 841495512 20970901 618153268 983025441 988947483 578477858 805195195 712462057 986636874 941776358 991472560 981503511 996608064 117720688 405858838 935970470 959091028 857373540 858263394 637010148 792618781 777693556 865662712 655838082 919107576 343202198 440386075 834692018 851988896 686182243 754150091 34423522 350456417 908269406 933283237 759578640 843833282 36500753 226116843 200098460 947053590 647580572 716536534 697191349 873749186 224459550 245264338 39732018 512921605 604024300 827293124 303209432 379282679 392212310 407268935 10394791 18230290 369684867 517074304 954373058 999626864 984611340 990066152 588432566 743143056 94256307 800778438 667352267 975986391 796680915 878093749 534165858 782443043 951551818 995255995 514741335 989568780 797598564 964905329 184897768 251250403 401009990 551136930 260143703 726697173 322738125 341081993 554510399 629564750 979980882 986716030 62213862 703584647 325629787 543335192 334372589 550186474 415875074 521386201 14270296 465466643 804889009 839944123 591740633 754033155 867027513 981470741 466336228 993771141 320549862 956700413 224291924 512875863 288155489 643756637 387721500 707386832 703814037 860644544 447833721 626221758 569343527 598888003 179475807 744264525 979820523 985249433 993963748 999458646 110075986 566534395 718208404 799353107 239407867 301585836 112768380 163775586 285810811 791145765 353218421 609942755 611324216 889380243 258280099 536397047 520295235 823724352 345607487 895809234 723796967 987701332 895194861 948802772 730634483 945941675 555903848 619085071 4348163 148553145 372754271 617428849 891843128 990724655 469007483 524170905 787814908 992238310 484822860 632510912 981811801 986227050 530928928 751833180 928464460 963716282 488414050 544616876 207291472 652098160 529594711 552856775 138192658 422819501 536276011 796832185 251385905 516299847 506830366 601319451 450052983 837363210 756172281 868488816 658335220 984826964 40407512 792333771 567153894 916460520 701112039 817569385 737399401 899928612 254633128 997822422 501758939 852666887 369357425 914000535 841360826 898819687 107236897 732348460 28436037 131613328 749013501 941405341 982229571 990957953 804149507 925778965 607259976 979930181 781744632 973143771 239096653 319603978 542018096 816226701 972778295 974646387 306828046 680318559 578838304 693529193 684822562 696433421 440260267 604023849 250062146 787230998 563529150 841545661 47107360 618779859 674447265 909798314 457354522 758931325 857908203 881545013 709277685 890997470 562240042 824388216 156568728 758413644 99379778 265718164 504679907 880517961 510376420 712456815 555935272 784455112 790655104 896721614 397295031 697368262 56871241 421758102 680973064 732373128 208359596 477092035 14628885 96798067 496009191 681723375 159245951 423352694 515729946 878916097 3366094 549574189 743543628 977564003 469004294 837868258 59983914 538277254 743448983 889162491 88981037 877042677 714559921 994542507 68097159 893478477 586736828 680412826 751571469 992576379 986665423 997022609 862242681 977850205 484469267 526037764 427529032 725489438 613928569 758434204 787544785 889075038 328208811 922880387 456890202 593830789 389868810 420573130 125351617 825927284 623848277 715661738 560867087 822066658 678148910 949753832 850501899 935665872 866848009 930241021 303536138 430718652 873330350 991036109 767408412 783845240 203927656 738957176 713325122 968524058 373543521 840506145 469919054 816638797 591725631 910161644 648464199 937047884 56949908 898869095 406074057 993012844 436621210 628700971 482930264 912784962 777819212 983360858 17372876 184619226 657027950 767338080 563870753 842020677 103718002 496020429 574973475 838529472 16247456 428466236 287552830 550950478 245503913 691532431 608546460 769427582 362965403 972290524 979416181 997511401 299077973 663298774 133932108 811674409 903416250 921021295 233913437 852231835 354819910 846279218 829134139 992112087 284097795 802351911 240444049 612062468 751819750 794045150 638648351 743337459 66103402 637899390 269504835 726133409 284348272 832913211 142368342 294377378 650603197 707033028 651536617 881560455 309599723 310759519 419956689 846425997 979301731 983396426 667154014 725257148 896814798 926101913 71107914 539784230 767070307 828830014 270471191 535263929 260276280 345203338 543686146 554505157 649655194 693167819 481239282 826356481 528162342 927417042 61165647 663989357 676883515 862265367 449098022 726830899 324069988 835905756 72146 497946879 938487458 951414601 443853623 600028551 52030246 218814023 222932415 854766883 120564743 470578660 832797906 945245670 343281114 363755491 769071608 924165757 207589765 543569125 133388527 336456242 730161009 925091744 854020752 938966990 165604931 881964382 652477463 873129751 632290642 720869022 417519351 901365935 970568398 980562978 970512423 990359533 835997589 866533205 949307985 969094955 652794023 707984439 15696520 616653777 125932272 663765928 36055609 767879209 680963217 707043207 728199812 837134658 532331514 818376697 809017295 922316179 419501581 559717722 53701487 432934400 775683504 847851200 553063465 702314362 420683492 588421225 346227467 354676559 164395931 634822132 724109610 932150915 822355171 977186812 354859159 436629586 875590992 897047728 662547304 920043502 510381555 976674687 857766329 862418717 305878532 885498043 461121843 569579948 809305430 995779640 358204633 851144110 288672740 747409753 750938405 948248950 716621497 778328995 523247941 855324159 746089434 798721245 479827746 781645896 194809061 824959304 113431425 604659400 946203134 988917412 208677759 480157741 179060352 205332664 57328228 580455795 588217183 634751714 951681067 986237228 87525998 612406516 929177935 944780856 162308115 639898920 699368825 790586466 293325445 555352424 301972869 355004954 927100455 927617248 614030092 669347096 251865563 540194293 552909018 921499426 251360292 988135268 64115033 334726391 808615402 983751794 680953000 814985064 392058836 656313396 891020670 902090249 823177965 980585594 559750232 706234604 256279178 783800627 57203768 274764745 14686418 153783584 723751468 832199951 473032968 995638357 442927016 547748651 711133378 860972557 16375982 258384086 665953736 754947012 313350597 427330077 995889480 999196075 843010754 856337480 684716585 751158587 603497598 775351671 838245685 922346032 975044656 999757387 510951714 788693499 985421861 987367812 159616768 241456188 896314687 972968038 310104267 631175553 772310728 881254083 89442974 728728989 189119443 521102344 110638399 897572140 2351161 518556974 905911778 924939386 623427601 689896200 255484019 793847981 312417114 689888088 952151739 982906458 119443158 335887104 165543184 698942047 471932236 611121595 176613038 386992651 208999336 325791981 589677515 756669961 137429269 165928559 708109061 867791935 704476061 843150780 571405413 698760512 64401616 946090252 481410427 785783593 655278343 909301241 384658184 430231665 354441612 882151521 558244519 950942407 726725498 826609216 249705071 415262864 413915746 857651579 518369327 569275111 334024649 800160040 142036689 418090601 587649212 598838213 582211492 940776291 777164303 954119568 502896544 665278074 323303173 353451630 227817127 524130406 978082940 994747224 173873102 755289576 912844714 991025852 560546007 775348965 286584715 457840472 827770769 964129709 976510024 996125990 51279081 590214391 661551761 968816143 202884936 758129918 886953073 896062871 908663720 931372964 769166785 902485537 69898815 270535691 964025870 997372276 695065278 750517847 279320596 707612854 607542710 624934060 452867184 858164809 272075092 421328116 353399780 871560218 293501796 608909187 610017238 751870646 970555040 978264357 251078807 434900688 628359585 641660129 658950062 733696976 356699554 457593340 759348961 917676904 960281997 962111853 466108890 927003181 775557075 860855382 51949995 449762782 60038977 540101653 777248178 993377940 763176744 821052284 140945916 962974143 616392326 692378259 510436302 634093669 829467824 913103891 80652647 249833513 155285407 985647277 144624013 824677154 352106090 966593877 426023577 731428478 12287912 749241115 851091200 884494887 464287665 964074693 385516664 657950153 642393791 907274839 292594398 627724844 171379543 925392556 28315644 160144496 916743965 923786504 187361286 593470398 852062328 865340266 410626263 413858336 331728234 728411560 539274314 936755755 963557785 978035487 568336467 591497019 346272534 972383441 270242409 847869741 895984831 971315399 286756285 667710089 423729645 752462395 372283415 492732887 448590265 907470710 591729067 794586516 218157448 793039199 221127326 622634858 607351191 807364357 955791374 971207260 294470094 517782130 349373036 806295630 784335375 866875162 196262007 878026883 100477344 582544221 617138909 737607423 613719794 637057828 736180406 978698662 516719452 649207353 52945283 370684762 369782988 891787306 729744160 866691621 445895784 947613364 210428077 432236176 825463964 837106795 371105638 492368361 107693807 843475027 517550728 975154646 133749229 509221605 425288303 709637880 414587559 736610580 204410325 562496736 194097387 747297697 965390446 975937271 519268737 650384516 894424314 940081059 44330080 310625928 130866892 573116384 163575064 594490472 563245457 572033325 953083373 955163531 701038932 809674571 842106669 887095186 907636386 920121828 75631984 674988336 274256833 877256693 304914174 377728599 468850721 972091033 552185314 972019132 540045924 970119568 941699823 942113899 704792210 952963803 613095670 918339918 122094565 794190923 616409804 912952413 74885704 341774429 972325657 987628825 241039184 547929365 544196475 854537719 601536344 967124811 13952943 584023252 492471252 651846743 474810385 609833432 500792812 831082251 46100080 691552830 299408234 763111946 254019397 724488030 720399579 910066593 675881317 923750836 703423664 917408811 502401850 961225283 745611967 965552451 550522970 704824625 476249468 508864249 191012641 774326063 14246273 647652451 291215588 930550522 478525568 662689959 202473895 209314937 382467526 648575136 590729263 768902480 810036372 856396242 633268717 840089149 259250859 457896717 761798188 841546018 354228500 819388611 993932092 998872480 402366526 789725728 523194687 877487471 378757942 399981629 852843588 891862864 645506294 747875969 664236171 841450038 394369664 911840147 878073335 984575299 363533695 874003546 745239378 818580816 67292823 715737413 305542277 524673071 778196629 814100428 51922765 368272865 405222715 439891594 762636158 806706484 889199510 946807825 805831400 930759411 961786000 967023251 547517027 955712387 383336179 572290037 560199964 571863657 45385721 408854041 993477246 997147646 458060584 591330782 438881406 629238198 665584218 887856076 353233129 440860150 216356059 386224560 974791993 988937167 819432510 867874891 725242865 788978232 282027729 554536589 951163037 987727337 329159997 901672085 239516788 604533783 917672862 994448773 330563089 883877726 244147797 613223239 360831161 379410258 126337271 480689029 480615815 498636146 734640689 736987491 197455400 682607491 507662644 630703107 472645360 923406792 800872888 877067028 232072461 841320879 341773018 825037685 790135073 839386943 156504192 750220014 661568851 828265192 986743780 992769409 386052726 528965721 624304521 769144047 900604723 962621424 446135689 841308791 305531094 842013816 625281454 919862319 244573159 362923175 665238308 878808983 83333160 260548238 630464331 941209623 147456623 773003937 100851920 927964687 503530567 822062592 18024791 167541662 760212079 801831870 494530958 662469123 313006620 679397322 349834090 697578513 389831292 562982552 321517980 491647907 863518036 993806925 710301688 894327625 951451357 982467545 535028738 999026146 779656215 780713529 165874629 457671903 755533362 887285393 547414089 798891287 288217090 597759115 34164329 217320112 250408366 553840867 140546172 548176827 5325573 556169190 66476972 277596428 45115342 946429389 268856368 318392422 178219908 402325794 34426083 688367413 468747368 791179276 949523501 993463882 876654214 969385459 476364132 851846518 539250332 777938772 725201389 732944133 541407030 823291981 913970446 933336717 327712440 521160507 236392002 289608964 257286452 762079410 348551402 599532324 199354415 857948965 206660944 972942808 985048634 995386200 456226718 762726053 63262411 885562777 867507255 893527630 674880903 922861873 406156940 682491792 965154982 991272539 546321578 996291416 214318157 758681539 152949582 487712565 839728217 873933354 749994487 971899546 364589923 713792497 401319846 985795427 243465304 470682140 449721261 777795788 545958341 804796505 797399400 842032583 351140221 674506638 242367519 533248461 433964486 823165598 21742611 254797434 259798900 745128870 706063162 749465063 479612859 728267711 520642504 952952082 976287046 980015176 610810587 957791504 223164709 841290246 758887631 779776973 526655734 652712682 413423114 419322780 456264262 930654475 635741001 917143509 585141096 689082049 130121032 640399752 618451850 678601388 25633405 515491343 207830862 595490017 513393496 766878646 981461146 986751646 883130054 998615875 708759940 926606222 363148606 877496593 16779405 224078957 4486025 804882665 415580509 715243052 424442036 502296518 627416783 791473708 384942956 537865574 494249575 839174362 261825762 264549064 27940912 117770269 536436726 938332233 726490497 818221977 376396848 739838369 966354174 999699786 913471047 981721254 408870398 687021818 227414444 909548638 438372228 643460805 207871809 915643819 229993869 921109796 721578861 737039357 221255989 591625998 844093287 870709267 244350524 274028685 148148190 931070191 819621749 962423410 408269857 937332929 908758932 984819916 708780631 813318281 512645274 583615456 238472994 954808697 641878065 824202442 499660539 654564559 787130506 901413238 846223890 956378149 366141361 564353380 696560184 927392122 529932768 581479169 275580043 617532920 145530558 314507837 119098948 780097489 725750235 864478644 13504889 451399614 503867254 523418295 200008491 770436543 870223032 936698843 783643020 958587142 203502549 585127210 889616200 961361662 423035023 717373811 321765783 539610625 563919277 635907840 296505325 716888249 544029163 773156469 893056138 981510096 637474673 703508107 478229697 560069026 287996600 689140953 503020684 900178486 234363744 267573539 959881482 985014302 444736074 541681420 634391019 634643917 501054962 738586619 434106219 727744514 163095693 969592215 360716370 847808658 380590674 869766250 561741719 584927483 737860230 869263408 173252284 881796653 373240573 961316365 793115638 898001330 667770530 759507194 195680032 497464862 939635605 960944142 553670302 687552458 562454853 647267027 150576531 698466947 143631129 497215549 770209839 871568771 419818202 550033419 660536371 673182269 427777077 613654456 182171158 277234030 2537407 208464128 273393290 681395713 695473826 861272208 36120660 231435226 306293095 752994754 306253739 399971359 621323714 643971967 136218741 434333457 460280132 505161537 762977572 830471034 350035933 404243268 57419947 242131210 947094629 960106595 349120751 793999755 469449352 531327937 855215896 944980684 390394432 520136875 197070658 297334836 241082543 734981178 759193429 868766378 58364702 793304307 464958198 840799244 200889594 407927386 897167371 937970666 419829478 630220999 257816067 504694137 6845305 742508233 983004496 983170611 143283527 833709952 284342574 589802747 977285713 978128522 68485285 150289425 361603395 576584288 905479910 933003706 458301739 844039851 941697052 952951255 205008439 789047349 197600490 583590801 172180786 987343760 13308541 724461736 60670189 838823252 510474341 892783223 533262465 589995998 27722817 911871716 118050353 957837508 815589339 878251600 17261828 419444096 598876878 959386877 154636543 854055679 332695003 898475284 869524425 888953250 336956406 640113692 1139018 492965790 635783398 963476635 178076791 716285057 934500171 948497737 412348391 816424242 424356381 934742223 368913412 981352823 654713494 904438775 489294904 996961530 982086686 997186083 834219831 882530311 7531357 238028598 336832862 699838941 354041876 453324992 35922096 572501146 889489742 927407425 151972757 718638088 304765994 370221121 876386855 912584474 372046330 449283779 813332764 816115979 903041344 914013285 614403530 843305404 464235931 471173336 746614699 752282892 80009552 315735132 794386658 854842557 163105423 734171514 177641747 327310236 45459592 503070806 868650729 892221614 956944465 978441998 666615256 852762229 468684905 956546090 825903512 937330754 724648112 907582158 205451078 687533223 559558332 832758168 398772360 945537912 878647308 983049909 320815377 839119470 748967445 816719112 426996277 965849008 172323325 464916486 592279982 827342827 746408815 969405209 468003069 894396168 913074076 950678050 627322966 922045146 222362252 798864796 78224135 569486685 49248265 422317252 197980921 595838305 423518349 565626449 902304965 907384386 238442171 465533253 24527307 260028696 960801874 987147748 360332374 652443892 368388344 937896587 767782553 957391690 802950171 904572482 17698618 592756562 617582341 851454225 193964276 456169424 166403944 539975472 473611950 620979776 315380529 936008571 126038623 335156572 313538831 515635433 99289013 431834606 83120021 529678858 866480346 987016946 655985061 671269392 395237748 609686189 75197385 998540415 452909187 689175580 917526846 987418474 108271380 676751032 443793251 976082943 867236166 898378631 240038694 937877005 607308256 877269135 731134760 790836589 122889147 270683420 51518121 399515856 218767119 260145026 495147742 617473300 510216877 714244795 579227276 718710042 72626689 205288410 141256833 663108528 882991139 952791409 904591616 935770705 244563777 637644562 313376584 443848812 451406895 474292151 579362651 585685116 656559431 776869958 75077223 887448408 584015813 980423205 553823444 844517688 6019080 810861919 234106342 883951177 589106581 755567377 518705047 660603479 661213126 839443059 591890520 670501147 870313990 940557769 397329491 741463231 793958714 817330367 995153040 999037059 80384945 281767892 797823075 966731422 901615906 992708688 81821960 626539026 797439631 886572313 695956583 891038666 134225191 832996956 882193821 996856216 996737636 998436318 281407905 534620100 14468393 690258523 359466698 765961153 169395091 908173821 1266963 347227838 691035521 851970769 267154384 904465350 422147271 845896198 804114410 924830764 370879664 584772383 101168178 501130688 76415951 747033407 592957523 725834347 939495939 958488242 914443822 969138184 930538943 999220328 798102089 900307988 721755887 847907775 592831171 662828406 771379691 809247157 324311692 893211735 474216073 719896164 688763073 855759080 914999556 937135765 928244716 928656145 972645494 990228690 441261299 769927903 504640148 658046311 991570499 999993291 194587114 946960647 727271032 806696699 154568011 780887345 980252900 995649919 631236509 733276638 418427997 711204725 737268715 858323888 979740921 998521936 738478179 869045997 607905123 850463120 194949105 347589187 828625722 903880109 465025884 990051202 118176477 633837833 927227832 996791429 844714122 998210129 212307324 816744472 480156997 989662143 968768074 985024704 167479338 441652627 392745171 947057025 968992741 990567692 179375504 182778273 289945991 416821222 604556903 614506080 659612575 825738870 777870345 960433457 997594742 997983130 435733648 505203456 8209266 80848474 104210216 183021262 831187887 938896121 557748374 724339035 180901637 432697930 669072218 753665594 514384987 925161241 83501758 468757959 500210878 725126642 246586183 653704407 840034465 977585585 771079598 991458602 630248392 635858635 35362374 180800781 321994509 603477574 276993779 939699758 178991124 195474291 613996465 689971792 281167670 936689743 863331705 899359413 660699081 822135781 254405313 958627655 330168857 547486413 773505140 858146200 686702042 719108586 703456201 878659517 88214184 848397645 525358728 903320950 751165204 923360606 789463154 906394989 623127269 880454398 928940393 965277087 694023472 922870802 874545565 965693642 826540664 896423310 690810809 977457990 973782545 981296417 689648790 852975106 640711454 855571463 782529215 870083071 190607497 324643679 478979844 603628552 421694173 740007947 720016287 776398131 609108852 988248917 347348567 482534193 739566856 919138216 103362653 404707822 582711613 898589623 736809363 933635681 479520209 523398192 976682957 982468162 177826019 422731973 149590446 625109599 8367064 30280736 287196000 331859099 87067668 359485876 393651987 949999379 67209635 941434036 55932128 76201045 772998454 779147353 968088669 991625102 204498821 831269603 364598921 717316928 10414670 447285839 300229923 894730951 620668397 651503450 134972520 362272349 773489070 897459163 999989808 999995080 497752996 689615558 890059482 950187004 954318049 976262591 315298939 859684588 684700378 766125908 963322087 974135174 582412550 785078617 19829300 743651350 732653256 763785369 376205791 947299023 187139765 198259325 481357605 874415894 400581868 802540346 560171543 909471531 460760922 549029403 128858377 781421438 313412787 786340690 302182857 754128837 191026640 713060053 774712751 972514817 9236491 748153152 658591693 771502039 118238350 350177175 949688275 973699985 145416662 995377457 752385896 826845352 347707920 484442852 582324172 873842339 188985497 610560676 702334900 802109801 191331940 504796070 594655940 803403502 719512022 986689190 975070670 977494506 328905747 388908851 635463785 862374537 262394734 326239859 242168040 997651637 279419968 488630214 529048675 850006420 607533831 868243048 742645131 936751547 542717579 733832419 621094162 940808138 834195791 865039161 505928382 765433296 657489649 671000420 628659519 955613209 864906942 996662269 650810900 811617604 395676929 512000135 459213496 490196825 80383464 199812999 375276973 686410701 152144298 301380743 635050436 909199525 523511148 776596482 664766503 691047302 337903745 772564104 918651121 964383215 239741837 480955876 228055045 288236397 387907130 827834451 564697906 998534736 196387158 831046375 101138409 384666960 230601754 828723377 494485415 632544973 453120397 772073325 601125391 925582948 774708177 973159785 290882306 849766561 553123358 928232344 11908893 406607844 292789340 541432694 949327096 956372034 172865270 577117696 73210250 595472661 512829645 882291340 70982545 209425492 560272238 616448950 360781853 819462158 626192851 906955654 687681340 730221688 843416591 859076562 786029522 934532953 727167442 801761730 184780364 488227746 911455272 961416707 29436246 597232767 106568748 791524874 125332313 169504269 905164541 993764559 67541896 166896811 708181139 930766426 532862604 891903359 36442133 238285913 904733401 908222335 132976951 646655031 740877814 947502385 451059758 470188117 7231512 358467323 351071636 408404442 960541805 968976922 259491790 629306295 73597417 139113230 213869443 884598167 78604158 786905823 63204065 703706064 986134810 993614240 475961977 925394602 828850397 908781079 825151263 959600584 104212062 348251944 82512466 867436095 142890676 401927666 72165052 264345849 620213622 630631081 636361259 656256196 193974708 498385703 636428506 877833665 608107355 787915451 126877498 439392930 702564330 901299328 480999313 503579918 756478353 856593575 394516009 693145878 329974569 564873010 273353025 386868291 429194349 727220448 567052654 573536673 219824771 965528148 484722634 557933254 407993359 542126573 324138813 554769568 435942900 903239637 17620918 818491275 577842120 803216869 392596022 695538771 594732634 972099672 884668144 981730801 673784840 762707156 966224820 977573975 399987605 761996955 571958421 922426937 579826922 822404936 190823824 923008132 630334435 701888613 849774526 893909022 25089604 548949534 255700513 258863620 509717345 787260880 979394810 998114277 637309359 698089449 664364449 899688238 126907599 499700691 440344154 970602598 190568995 686584329 363865934 903368653 838600902 913361100 863650669 922834215 364975227 373087661 251401645 432607285 844378199 922659842 21970093 474161695 879885022 961042121 468028241 682635521 478227079 665239861 737682408 946371852 108007336 902019185 68213154 941147269 326316816 909458814 396124710 594661708 524402619 564539214 699484368 829863823 745320615 937914732 660773277 773087793 848844951 960828122 566657266 745222038 443907214 664632541 818284728 981592197 2634994 951962205 410439814 882298636 582231230 903868080 109425619 515740252 643351536 909741540 67964425 691049135 396564645 621330789 620292414 662124438 297064974 324704809 330341169 730963831 168529359 352625627 838566818 952804013 54131997 237785906 24275267 788740112 678851511 729283597 543906053 694029278 206292460 294858883 698132900 736029642 129215878 835322409 920104671 958071100 429806228 542880313 458071160 481926278 436200493 864727043 726967529 766957096 88204245 544407204 688718749 692984751 586479694 807353299 123473964 191502374 125574179 869833975 554948326 902103994 314157055 894234598 414175706 418071055 752331533 953605356 898906651 954762794 541231238 865029139 283670098 912305480 275328091 435011089 711175244 718754193 143889613 325950731 584469253 973658184 884463949 916777505 781394561 880881914 265031616 578990347 270059807 839787750 812780907 823725019 470861118 962156491 441594359 910872603 717140034 891471423 668118749 795678660 362938332 674183278 224198880 892206087 678006778 835560901 651176592 999408352 58378045 999616832 202856103 797875181 137967458 262038258 426863745 444973152 917748678 924600065 512223498 556460524 302581793 803446935 992488941 997996533 59376157 536764889 677205463 905450877 487809253 645147080 531588714 826836608 427394332 787534594 677461268 908269479 203499187 479594872 84985943 451634641 641601821 922566982 678018601 962788888 339890448 454655275 286965722 818377995 132019077 504434497 875488055 972731648 644920519 880433321 510346380 748576825 261075574 865475528 564480443 570531701 83746001 540585016 365149857 553763569 390294877 765968889 616880659 664212589 160669375 796379132 212278543 499460328 568025443 651284136 910148053 998100793 649258174 989014943 784083253 975244441 853101268 964046729 659630293 682035039 329706744 338410369 111878971 964156800 332741676 524969329 674844025 762989753 536381528 933087904 503992298 508203663 140414429 597649442 425877557 923451324 264105651 431741240 58576300 278153554 311716612 425577152 725470228 958759220 811424393 864413656 536720567 742209452 665873908 825636428 358732792 378806779 283771716 518136949 103483132 203788739 539241380 876762925 471910636 486249162 12765582 827791664 285612668 934152919 604433785 921494001 178884019 870500998 140830649 594617181 125019890 673120438 501798902 504503037 596898007 888986729 731403217 918020752 479078095 940424727 67811453 225096766 48440161 958354341 452788523 788040801 997840817 999242323 603036110 956662626 98562417 168910926 775594537 863364087 130870630 528172815 115761235 913492670 510012793 755661778 631196128 917212054 245800736 894710146 735391881 782643948 695288982 957820281 341262251 561213697 401351971 490085055 741591310 825659493 905891747 922527949 393455983 766644099 247608876 335636122 317246253 588918953 24421983 75321362 650072137 840285909 511920427 699147171 175389568 587710041 995257298 997915502 336683926 527418551 355529910 679216747 727176231 807685193 697487897 761507617 629864273 698089506 794681604 833629467 322388226 665712127 5100266 396731216 401135187 423910163 55498638 782117586 245796654 529262459 495957286 596751881 292474014 450319464 776177452 822010994 897311155 962718218 495538055 627726211 309387203 699549224 930684993 941542931 658364295 902918473 912005367 923356122 613904656 935008762 567450601 872786162 930505454 931282569 847351079 969710123 865391403 869858219 95406938 979696161 403262138 601781592 918304191 984944804 875782754 987074499 471227553 834391711 820935099 876412641 673092972 933710412 845324663 991424919 537161722 592429880 667359057 669307868 95540747 464001852 172649142 494436830 283998292 855837921 884716012 934287552 826498195 913549943 255020440 913714595 704384696 710302727 430389672 807811108 710995400 814777853 480833073 707574923 276194685 765440335 4686001 971015514 449815073 473016320 751319512 894630069 533118170 914612417 140836551 199503942 444766416 455509386 462100965 581809768 172907389 860044923 886439417 995756429 541378632 776530699 509480524 600364021 123053752 687258464 600504952 838941830 799223292 800667140 956492768 982848622 362280200 735949565 354785247 842376040 942698446 976238887 816384959 918054374 683246692 882948739 208381149 725917338 225774407 419995590 392493392 503879547 935536875 968877178 171406845 365596103 212072001 635246770 896750952 987990226 846525092 866590463 428582565 771729447 457920380 876529186 659263568 971334357 618952475 784592307 955342914 978346288 469707975 535352183 902535199 906344025 79932581 773215514 344465493 393969721 558195334 710459015 58065462 951065660 624124625 864514921 89392558 930012008 650424139 856874458 130879611 840369181 549214236 958243955 961852778 968991977 770438686 987727327 453469840 920771503 96083452 823036751 112602611 732810260 554345641 928406776 972532258 993230106 429695977 698233479 562639046 737282348 14192590 958304346 524534906 672160238 72064478 933868417 396405611 587128530 672925256 880401283 73580198 757903664 11396865 77853090 793938581 891689663 940503545 958722104 802096788 870006912 305542010 392946719 928853534 958595524 530865303 606900176 566947305 773648399 154621763 300472265 964925566 970041887 452842812 607472328 57165214 795318387 523514549 704583137 137195555 866244930 43725705 154474160 724356525 822889819 399384126 563186756 964993099 981881581 201071483 431613791 62957250 138350449 996942600 998915804 27077269 603148663 105826911 118232141 229577778 659714530 239097441 602257578 220842970 392378402 685319339 714800549 588501720 948657533 30083470 155121086 940527123 972852531 693658846 854604698 730116580 998830810 143339771 755094336 556284764 756855387 995844552 996547114 83961851 236345806 107380743 838174881 619671112 738936195 291145942 799898603 221814635 654383343 843740147 933692047 318655745 629146041 359886298 705934242 440967252 638453392 345931418 747681824 687554700 864646548 778938682 818696305 445153055 750281893 98996436 920497822 798935497 870393430 626698295 932319759 367084897 440337760 836455243 993723019 935338146 959216323 747674310 777986859 845254292 902676995 366500797 447343303 515924411 745602414 145246858 793229834 164315130 348344890 189723161 339268523 973665507 991444923 580441188 933796736 758517999 942190234 477167068 564113595 824619532 936839841 272605578 707111614 81160010 199622391 619891824 915393195 839995447 858209332 63051249 204260321 610677127 993303537 311259127 686200856 694736403 970626295 688252414 866852616 704406702 728575498 438560228 759196938 445627588 737779723 972607532 996356950 186481213 663010965 452749897 604040253 362658344 494126574 470833878 564875362 844732485 916693379 622982910 790804018 747414381 984772273 483405961 821810583 640592010 878831838 914665052 945481108 510595571 678662584 601736882 796178744 517935934 652926218 225003212 593516446 288360712 819330723 488813070 882650907 409433716 411919514 413567065 812387047 267103193 812205473 177462840 648534089 113518274 290885028 40699668 89664514 962165716 998961757 294839922 818945945 36160914 73402975 949055529 987217985 724946141 795229582 262186073 278970755 900102384 905825140 768754283 920363126 643610895 707634409 849372247 904642579 956699862 984677063 428882343 694870243 919032597 969124683 830003122 909229066 342195151 653088198 184380913 505861936 849389040 934423964 575164042 635533522 770475330 950603786 819696508 932495022 93627866 133839920 529769490 597683537 886036576 894272988 219229141 893444283 749084316 864064240 172597206 625894519 404424778 429437751 127105577 732904382 374143412 380356293 711201897 936578290 605771824 865250817 188497746 820780122 413493519 890951126 656706786 881482972 935706958 994703216 671641858 994206032 868523873 931821722 437514046 972475470 664179042 903643716 319905006 760530379 43242863 924876687 608561124 882108449 243011704 365061253 621336401 862786679 473130647 783983848 124216762 186362432 428805554 576876721 974694539 989049033 479873825 669173038 502839545 811830125 106818046 465392125 394876146 673133547 693818714 720838982 824140836 874482280 762395190 789445428 585322907 852770231 603265062 699003502 408856287 693498894 663040290 700948031 125577231 949906883 577665723 859762105 417039172 820313464 600886515 934147907 485450130 528053193 347142927 549794552 550297147 628812441 316339298 340531279 696652126 795294414 263968496 747917523 377535295 635551559 635098302 906179599 438924502 936685043 391152481 622141425 230439924 454369469 855047207 936871406 886831646 906113556 779117415 804829845 651481471 876495989 760732544 805514951 203801754 764670048 721246495 940635759 144169009 839595174 543717090 742845260 365680780 558250447 323615810 492456552 159273832 956918027 428514119 606802383 861950589 878952981 327851146 990280031 296807234 951293897 37109919 224449695 928641464 987165217 550554852 603406705 525070779 776679233 109466693 163977592 504543972 695347711 505307440 838846750 281527284 917915888 998537868 998958872 673745734 847015382 928830909 976848793 777784184 848233163 947541948 962927486 753632445 844544525 865667111 895034166 152867530 591431091 347659099 676848465 645389887 704964287 45343580 936262258 305608277 882060944 912216347 947359802 240264547 538447162 339545715 960077047 232205487 256501351 401525958 590829173 167469823 254628247 911629496 989349261 945781029 945842049 888255124 956514340 777744308 909517083 38455892 279834265 817180462 935521855 42450844 253789256 149246572 339412479 560953642 960302915 830559792 872223949 342706571 903663362 783020282 935714091 86094591 585316750 631392522 715032863 716700206 947647140 692343382 785120445 964062500 982312489 943398628 959167436 623727014 967743662 663779582 937878020 989933950 990992315 575172157 798813778 197721247 814172274 293861442 617955947 813799116 938824506 313886522 353671561 362637508 462702450 302432993 587790405 640161650 974126241 868678350 990599642 106110740 175834779 868492838 946518955 117356682 237745291 970669919 982278362 618768681 786254832 749858360 902837491 68994744 550111523 659398251 663463391 87269471 314079085 775308402 970974606 654987736 844401746 799217107 898756053 537819344 943352219 240255132 985063722 835436101 915971375 929962 25876074 925540254 930311044 940759130 990001003 819434114 895147432 466970913 838402016 100773697 625256615 485416712 676832553 904633877 992485700 455102976 817658729 540081240 646406723 496680860 689077923 690287506 793614079 401172602 878081127 461090194 817375238 20241326 361116552 112995460 308392552 684573966 738050788 983763595 996126022 12840261 946004505 651521724 710569234 659998095 984989880 977893440 984712287 30487532 643137794 542441458 610126331 130116653 267021411 736239252 986507176 190062226 607863567 272665746 320504308 492270468 557100662 734381713 996346552 435287484 489503461 749194964 883395692 76838449 134308044 591418740 732994898 198011245 716690970 173116730 940281395 187312205 652992558 398986504 489178777 660525261 674157638 439359081 872027398 682736734 807293643 922262437 956760983 429253348 948441360 46947266 542213058 756063151 771312713 917930593 973615609 773840421 996306682 893615245 909295362 753586364 961746786 610780613 663698084 22947319 958867766 995371355 999956207 309944081 454644977 364823492 592607596 782652215 923760209 589697508 673645412 150724375 374647176 747578584 825825015 969668317 984022275 286476264 651710984 543981821 674871085 239468260 889144409 673814836 933964612 933970273 974758614 466566928 690430374 252805336 868063629 426070967 895354182 377050403 585754376 471507658 976717146 991123396 998909947 274892513 588816361 132016147 251528535 576776860 804138337 311917437 448965073 802322853 906035739 981624694 999493272 387784215 921260262 602642275 682352999 113784389 423739558 637465819 826883239 346140358 395897409 919013814 972295102 77962144 922336895 886365941 966751067 366139685 649151920 970088696 979991323 614823582 833761795 32819871 198515067 907273568 976191585 417895488 822012852 359475136 523300185 950544536 965783263 352479229 902257232 360942634 861862421 598520048 607072204 18568178 489082110 531954911 570823741 224550615 824447468 286093710 466181865 513878436 809016198 122495857 663675558 60411231 526060549 298495556 906225983 12991823 214861012 661570467 994677930 252977888 285628040 432539686 782203742 455085368 680736292 158455507 581298540 884628452 886054380 4862162 113955070 730011564 967489900 513927388 654806996 235244912 801543591 413868414 644619135 636333902 732944173 865658672 886001596 113331984 425621807 486536454 917928769 893108726 939650673 969128729 998963946 283366342 284585262 411858633 863799312 747894087 931283258 916935716 964830231 281489487 475451312 742824894 790820452 443943035 856936278 686649681 989130165 535002134 610754537 78462208 570248744 462093712 491693694 871974757 923488504 338773272 994242997 457653177 899722676 754629629 868809370 150777025 307309288 795689813 820164478 25895335 273520301 656602168 996072260 995588240 996326824 156710031 970141379 94571197 223570814 603838183 940450941 335864035 752614189 120497666 388001727 422298726 982400492 956463005 991540409 86019303 690807723 354569699 631180554 602085528 677710408 786271426 937369800 421721881 447843230 311602023 908591589 191167626 449981976 541532976 677880827 120056079 687733058 415198427 807174370 471504014 877341122 890609544 892035844 213487748 650127170 248635361 937202955 7577566 117774511 272322518 840965774 147043707 770523173 216064453 228533481 769624101 819585999 69226020 766230747 668648901 735464304 998720692 999325914 577171793 757265781 104984657 736005711 4637457 936318378 571701860 904900142 187900748 968405126 704550110 810932265 579733630 724113739 718966487 792311930 453986348 810722418 303300998 612527521 237242650 961338411 161071312 434053214 157504602 224488702 507450916 876353939 12534093 300333834 705349143 901027291 605368617 923238751 28188441 534338490 873305534 997636453 378307347 889506036 710927853 997275874 936239673 976385344 153368310 505558123 502326407 710965609 760897032 938290113 853132684 963973681 268778298 287442945 941234802 967045460 549578795 744822758 935778264 942618995 931200285 936876951 811151611 847697697 298032608 890192373 283454630 744304196 423931266 897247028 484765957 973820367 297660990 859741817 420314832 563524114 995517424 996798691 962338059 984288180 381511184 668887516 109284673 801166879 239988293 577271868 164020578 779715858 188555479 372466488 999449010 999540009 884187810 999169547 1559579 815033870 5936317 595493458 386900454 552757910 207926449 536524850 169559513 220171087 662515345 773995301 639947250 895905526 863208624 881354127 40807120 72686167 491343449 832937017 445142936 979112567 608057864 852709784 80650701 620093349 738238858 958284898 570402114 858872437 93330088 941711916 836037303 885456466 871169294 897076809 521686771 568588655 408901060 595931492 527060161 915774210 498756015 977479971 581340205 659454993 214745099 932468976 459338313 918338586 685799602 848918791 153488436 779876522 207685598 209723112 82468388 839789276 162195352 848449561 167217143 979497706 218733178 466820308 440727383 717313622 346633920 444028558 700208069 926474693 420983036 850423901 727981547 951895336 798561717 904552150 90392903 192677195 975242913 998438307 74040658 338050522 268678717 587398211 686587631 926773234 474283155 631914510 386044374 913639074 892228267 963288956 280340248 418564429 796111307 911815872 220604366 859817276 989732145 994713580 700921665 794648594 579251695 677833242 380209472 869953373 22967368 863599039 104211549 810390766 696323835 765053603 897116306 945514278 988792450 996162724 281068762 312992276 934867806 957344253 919002491 954616608 862037664 980249004 568021834 637583023 587234336 795145672 401393757 979909904 967039966 988790553 92889879 223038525 469634679 579387564 696563542 959497238 782616971 942145131 103838436 952861618 499721601 971469423 766618587 846572552 707967788 876890554 500317630 754867339 519246792 927473050 66476966 920409778 769877828 811161860 458179060 901210536 734327061 748984975 927705174 995010977 96893902 939462633 656422674 829991003 556382891 598182649 545634236 761862222 238478350 552076582 570631920 792090314 53454016 487743713 278666796 569942598 162965796 262574360 346682853 616318153 769196435 874046690 502647383 631068951 43067886 72085153 691083146 896664931 578294620 625065752 335345136 888609701 685594403 725535942 482068805 557079501 420598436 551044092 494141629 540302808 324014423 626569513 321231401 972531333 999200918 999217614 672515980 876192454 287115140 829990895 422688692 953666351 763112417 848875830 900326423 978884173 15123889 207058303 333471823 465494495 283845652 355598461 893019194 941676002 701299667 809689820 456978091 928569969 617751322 881837114 343415743 763279846 309103679 863063553 779091864 896066215 830305485 923649119 175399653 886331908 468198033 513973101 673360861 701113118 840021730 891306420 754944401 940990216 688496920 792351013 317695045 597810209 753561389 817693857 240839282 588262514 307667697 836341512 45753146 608516049 98602875 159462240 848764100 966379096 833115573 997405528 11315100 864900843 249432936 738982838 61326350 292651894 997870805 999368179 413322212 481452039 615632821 637758129 266596589 394594030 520859755 720338715 548869208 701234204 579535835 671686352 286009966 947614562 782193695 873783781 397559411 660637717 594224135 948952188 283642359 453873070 367705291 770825175 174184893 803531574 330657261 370979179 818736760 921960343 618700385 723953483 25978879 707685962 746929678 827621008 13223295 335034465 786507718 887771014 87146482 383018851 559909310 937463701 838554704 957879995 553489053 719835331 894379999 949889165 105018689 447551212 564033856 898839054 330450639 338796996 779942665 964665464 38441470 600204545 102145000 529531287 593411900 838150263 995210376 997779577 630305199 847921062 585370091 641285540 754478380 887100830 752925552 913092310 149156772 167221533 787226356 892199613 932293792 952840064 42325275 419254428 434149101 806859491 88022423 729545819 713368929 781118874 223496773 318698212 777884866 824248251 738303085 776895033 582350685 919438660 256476485 614840159 66990554 852088681 718642985 794538004 942518055 974528269 318893614 612620949 35747529 132669797 524134641 961822104 627168291 705837822 573265442 948358150 800305086 814537022 506443453 684100859 298246217 781717773 795575038 915959773 620354269 665695765 662772611 743329713 261222175 394056105 834944874 937780959 233179059 530666678 151850887 822748323 35560606 296589458 384770853 498267371 593904269 896179925 366248577 527692320 103177662 447397819 568331996 872376208 763595742 944212796 334843054 910508037 956132725 989253427 977767591 990268327 353484599 616316604 442480898 702122544 200039072 822557343 810195392 994034655 643223683 870188078 357534472 449006979 776740952 829107148 913466203 996687324 303735099 585407011 67312350 596019825 63665308 364531165 478945934 839753195 70537317 481725410 46640540 386351174 506667320 979743437 932982744 961460089 703187396 711237147 987974957 998114174 472872219 649163563 424257908 647610042 261857736 921656756 916373346 932463147 429388397 657393861 104307957 158750929 476172369 529397826 78543908 611752157 478834321 823876790 44936909 282807358 523162479 595831063 93530346 121950484 155229109 996005281 177739620 248792072 495928829 905154867 646838 966349484 128143405 591361642 593681391 703398246 373018578 635919975 560002206 924742815 790561596 990319923 602982689 999805400 861088172 987389250 957195705 989934990 852812498 856349654 294527316 952977848 392990738 882453793 950604697 974844485 450901042 509103193 678940146 811280503 409966864 845695086 145005930 684399162 292926724 552302826 467077081 470593775 487118802 884915797 171549744 629440338 772979330 881394945 412086209 522600852 773997768 980790764 656457897 938816930 255875103 708144469 834586294 848027186 164385852 359312623 13106453 496236932 15874258 624842700 535235498 905392039 446983382 487805582 720244806 895399213 415697589 722065749 191307239 754300463 568826536 890023400 361819724 645050832 84741391 622215909 960115635 981663764 663503446 837777861 739874021 960153075 267487236 734649857 136519399 438520261 756707796 923370223 621182585 709570961 964809544 988390191 788418636 861268989 817809105 996643357 458936304 508851236 814706052 830209298 797002293 932966982 880983852 903683576 266993760 939866393 766513320 948237643 649695756 838870734 396933769 990686217 556469430 717777464 844076052 903875036 283422557 583720825 458077996 541465658 474858906 529694030 61109898 308531341 3713866 832026290 74065793 796706428 128109126 310972052 19329831 641711676 428107981 731393954 235790899 801409677 281444370 914252557 953200887 955543950 552475153 583090097 302683878 627128189 903508043 980405321 451400193 742657589 370121946 913462918 209402974 859994523 877932082 956486104 502553234 839749327 895602852 959844102 472237723 793807166 456043994 855553574 38264187 725592979 70340726 381920479 797712044 801378559 734999385 915434642 124505556 941932471 586890558 684265883 145906862 537694638 251120018 983082966 227659622 829363130 229107111 903996616 372623702 917165089 842370376 976288553 84414840 592779857 625413861 812689180 70080835 302846080 958696173 993014922 980280089 993312519 171735911 477845647 336458663 786705569 562240166 746441094 233494337 266938718 366429663 501884328 399611849 727196239 683763255 956414252 675302503 882621516 976351797 995374736 577751092 778866376 629090609 829693421 296320996 467715284 662746805 887795078 289515044 573120652 781884940 958183587 590592441 898301581 510990866 708889064 521268261 815722418 746367990 993033292 220706723 360194032 977958022 990238874 378196517 765479512 142161667 316687565 474299657 479036248 452948023 769399257 19650164 309601390 745542244 987759791 131422833 719260670 756163813 877602509 308226576 896554608 876172251 972158256 951426970 990618242 908419410 921512716 394892632 814044014 575869059 839647082 488972173 511593072 837570576 862504585 531891694 724593382 744878749 951141705 394151756 489618701 812523144 837440614 681899672 939599898 164333996 728278290 395192565 490967109 796066131 923527085 191111102 792384944 692172631 957083868 454145620 857188096 768880638 942850602 240407677 316193149 759588655 808224725 767893470 891603235 223108084 772619878 547494013 750223625 830141042 941516934 833600858 876057471 452802256 902092102 254374459 554856834 816082346 986057099 731745187 813610959 347889712 424878397 364925123 497514194 925241508 962370963 921262935 990165222 312092012 756684384 221905464 894689738 2125631 927814278 295419756 507621941 305236681 574431567 403688746 598918220 301766918 696299833 208807855 552400838 535463273 744396905 769945546 817518012 78823640 146066525 879997355 943827334 457674955 565781229 274389055 397831145 64198383 216715572 663373563 863238681 708162839 873249873 518206560 988778803 615852982 885482827 218774315 783437854 599243709 654440999 689092038 806712662 235525990 528961607 205693922 211574354 491194139 770566496 6549317 571770767 448940737 781489392 297833786 992525313 717745358 995603893 228658091 371164882 923951821 978690680 607269097 651977619 110985345 955795140 144981356 865241393 148594000 603496151 579277236 801947910 271923049 551151577 935544475 961132588 238071453 530942129 595108867 896882909 681724070 823912051 490029198 884817511 53670583 785444686 293110335 376088645 231895111 820380536 369955923 575362201 504737963 942773800 95836056 713018243 894621754 986501855 335305028 923012829 580386861 582503335 140258129 513654030 410295435 476024708 445210618 677841665 773976685 774701655 225957310 461900646 926853502 981327970 569361116 876815805 590110946 998967017 88506251 367775056 651131389 944123777 160224813 734487839 643295906 648782590 987280218 990355789 521734776 565075169 676445361 815842055 360822128 720205643 311905112 625357730 964552530 979850375 647012871 923742810 716613872 820503082 247696591 915424757 867427081 988235234 869623163 937652839 978779449 992816204 139652586 649073027 345316658 710085549 830732432 853878327 998439287 999098107 60466982 297669990 764857523 887516420 710533029 950444509 65528926 527761076 661328189 941813963 933244888 958494109 917859280 973170803 13679021 966161529 792067895 848509974 759948266 904351889 955841898 993397101 164354964 532146584 300227251 465771169 871956077 904248084 461591900 988601238 231499894 707783587 610447190 807613169 956692801 997970357 517340677 896420656 862401235 925189294 252827146 651054222 82597300 674748220 36146225 953682932 996479609 998415563 344323363 846452992 281385213 942178992 99088104 989966560 306304749 848929075 567608327 987024114 149277127 844376814 980366449 989540435 653324357 814197814 115468755 449214482 927293471 999417329 358148440 780110501 914378352 986382156 138397742 503762664 931369896 957353563 386696498 622818142 61335589 285665162 213984634 701916493 246855522 805638245 471467800 512092417 32325443 806463862 633847686 828198011 213299895 874590405 313220813 435070247 504692064 831443047 755098325 850362319 832994408 871021423 788864376 926221176 498522175 743470280 786126598 953551507 166584156 981073338 322550472 725127768 877994294 980887914 176631636 275718297 589784726 760816887 990463619 992153606 271714405 358914923 755761937 811874833 526658157 710632334 928662313 949400809 292698173 384337733 238512020 327069538 676364212 746323929 333923822 911073134 75544949 160439067 859149162 913311080 149815575 444879515 451584311 534789619 848238038 858362549 852155159 921788221 949060323 961894115 438432874 783432817 874383492 902751090 681399844 896623601 300153579 654195903 243790586 761623308 146370475 762204627 566665876 852060115 516248445 621209432 221771481 261724945 589438062 916127124 553130530 792931096 759089729 817089221 459602467 788971945 618832499 813742835 239754340 264104109 544710841 842857546 579086207 582421459 489567304 684078057 920618031 999775099 901066492 910536883 151262929 698046734 587696583 948820996 741394728 880600453 410283184 854690791 115510284 858715422 638703412 854437399 277339706 713429996 356604311 450948244 514916879 941433732 800503415 976046927 235231160 842504294 349357543 638419976 62019937 986267216 797836488 877843436 534557401 590425487 995668809 999668435 521175616 666223967 76361761 981443630 453422124 975507455 541064469 675738545 133605988 173237324 841112754 994672228 719046887 980439904 589573449 867340751 919406995 946308114 63426353 180465365 516732252 993171181 848882585 855038213 73724977 85792266 716814246 747630941 502199383 948451785 858966217 977175426 227174998 333171147 411669865 981759665 62773022 444311593 76423756 116431958 709105240 885489803 736821950 896363273 80704155 189316784 200788008 548385257 877904726 954129930 350251337 649543995 135157112 551262836 249871613 908535479 315403167 747209863 377284588 565345616 603734461 957901164 958862248 999779234 796772553 803043249 51886796 470865584 513685007 596346934 497685380 845879546 704235414 933809789 783827043 784790859 305373563 758973087 574618457 984977023 141691841 417134649 275315967 916805696 712808200 928284805 656553576 790034426 717082544 814411966 174678627 564353526 447486396 507422598 11289640 201530464 407364913 912797589 779669858 813190615 887084791 992687983 860833367 976742807 677217184 814331273 968081729 978647616 549459247 814169196 714660726 849038815 560339757 562019619 270936520 457603009 159059021 589089438 987025653 998352280 225462335 265490105 673664105 682490186 343419126 933116682 717219103 733710849 106782018 919584460 425126089 942176989 231388039 377617784 194434612 536438475 225064274 868975857 598372989 758677530 795908984 938905121 73004173 596371560 192316614 209954152 787686778 873224885 667816033 748225501 211155975 637722269 803344021 855204417 13296997 512313402 494764483 782798003 437198943 763303597 570562547 709188086 45795004 149540847 553527783 733683730 830863069 949599301 12359951 113730740 933726966 967644111 961571191 961603596 687909296 855692276 37463298 215647638 779161534 867396452 727164196 841978613 262889146 633513467 480633393 500998371 270186972 541277172 566375963 899956702 688900046 803492174 912170770 960869815 387104144 529348186 261716738 364277113 486033175 909121951 219505458 449666421 49140496 733343014 74818224 377412905 589480609 953639769 254270009 639052886 204193280 374832082 251411790 840523986 718313877 882684471 267469320 944348652 822441074 996523248 167067672 973380135 125492829 962936039 288048328 587733075 703867249 892213627 70594244 223905683 64072080 614181757 971105196 984133410 43232484 225055247 772255041 920891092 894280577 974811545 747442386 965375236 332679364 904270842 646672963 651754011 966180018 992590792 148829047 329466122 547077689 835542993 754454597 972377950 152011876 185904131 813294941 816578891 198904477 866540927 510185308 750096870 48109121 178937010 743991952 835515611 351229715 654106868 125617112 832310459 669932752 718227265 905809993 923675204 986303926 993965570 79516099 490287285 251408679 866252330 4142732 542803820 324970700 771834815 901654785 967690003 979889978 997827767 917869184 992806969 190823009 682183637 374832533 382495570 35560662 821491239 102390142 309574144 345966920 825792687 804783416 881198214 848287700 931701903 572568126 825465155 595114956 972146625 394293963 829192998 95800144 954149715 490570367 569169607 333247022 800493773 635790366 783981339 416597443 938989441 845391093 906243210 448042071 974645711 34574314 371216808 977882907 985437431 443760170 875156912 946837880 996076368 782460352 905964816 198874863 764327834 142205208 311075235 683024712 716702936 14366837 793341283 468936756 880132903 455210917 776532680 745050669 784955156 519732339 762767727 396825101 442789141 247885249 522227642 968519716 981266401 669996289 952274703 99267333 110996687 608895413 742605373 654670255 979809200 630796373 955781637 100129986 471693597 699217466 713946962 492147130 658170372 947909766 965442845 286800307 619385231 121287503 582480598 136672320 716113094 593696059 884518678 721418092 957594833 856376670 888705673 384875025 931683551 221679944 833917599 397672776 661668635 325022373 756923677 842578184 889899169 306401512 350380330 944383688 999050693 526023886 592891991 288816648 324350183 725232167 987043758 353039596 868220659 480069734 488395514 316026252 918757242 294999686 993415511 465750035 802417748 159332477 611782484 707414183 987397428 486635390 547486010 924863501 932373071 883822485 985272502 934457638 985669423 197094777 841373234 556615451 840845266 682875773 898890945 480356515 752534414 148400614 291053268 948675821 996276680 820771774 926678183 105414443 678609410 679375609 979690502 97811159 376233352 791698963 960094317 716458603 783671887 752915135 988884091 879359016 886399656 814715036 898500615 256264881 459338954 744135751 923517849 842116921 910758371 376869255 414529728 685918586 960052591 562276697 623440180 232767548 835996163 728714345 871161866 776844550 794383335 209398671 828401677 503882199 853725601 282280595 472528478 945030252 969803284 590313658 747412412 594989882 647487085 638023499 853517466 669166342 988184884 75251946 340478849 74374930 362287524 769882937 856025874 938643250 971943886 258134122 660030218 655269948 655873806 941845771 988062768 165211325 604621082 732559389 827423882 557581325 738626495 675547776 693482609 78200288 206514526 338106756 732676284 254465060 453503541 240130061 592140769 840203738 856735913 815296908 903809913 105212744 296020867 232162840 699679353 587633419 687371965 773682433 828160806 894263491 958400130 374544606 538220212 601060028 868807926 437207734 894948806 494084912 909903814 715981124 917068477 600617178 934653934 127632288 962293430 121606221 690175622 577102428 767864279 673428172 867731959 161432473 243593820 761243005 947609508 139376774 284893863 869291665 944029167 14505979 156110225 567366841 748084700 181117574 375532148 923946129 991238023 257328947 471337049 921949657 950005551 787621054 852585715 843267698 851358190 196369803 844643537 851205415 977466162 632146480 816858807 164012478 432352263 426921255 952098254 87519480 429912789 193472249 955914498 775335817 926074230 983997907 984543362 339441903 521130919 346264572 849284699 17710037 310144430 660913934 737806345 549144831 596641820 800932761 843910429 492148025 617738703 931935272 958604179 929367715 988194186 552147843 926209182 285495773 819907774 431919606 649583277 972345635 977159201 52182583 737838266 261286652 765843774 152917077 719286087 563173856 956110097 500386222 967420347 679009491 770576353 717993661 801091315 19933837 744913926 654292040 724363660 84416937 972141370 500436336 968474276 898488430 998969635 297110993 674598561 198189583 440219007 931541663 976981636 448677917 622489123 336555539 884397099 983297548 994242091 361175675 956269890 628659504 939995137 486957444 575116564 629669722 655751997 429462472 543967165 403620751 486469984 3277809 466439875 847877170 936150350 19398131 868251025 830486436 964056262 926365429 967316695 389348541 945373057 356231951 944067756 991503755 998065697 467156292 496218839 682596636 702987546 100444264 361780358 466617491 580572442 572685186 625393962 796341522 819245283 288935575 933951914 182899767 455238435 712074780 907502823 361269432 849778898 346044747 839404880 882196821 939130577 151817954 853578356 239366429 919079180 179996344 658431196 954091780 972616617 598743727 982865494 263665165 290449928 157565115 623138746 274568267 878316990 982285409 986120580 661834866 782259394 533545829 952354109 411461056 464454214 744577956 837112586 196004248 404504371 239414657 638999964 457616230 593612459 811169839 971150849 404114411 897388403 514223962 684899411 731627705 800190719 188774670 468887198 330781053 449919092 694511072 765587603 274697292 349964392 607104105 835586669 224220811 767789596 897034693 949819066 463977561 614929466 832620927 919267167 699767395 821529430 612897505 672457142 699656149 726362335 291946675 393026780 849726611 936318752 954518225 999379158 448251532 690990112 289599843 861720220 672617467 783550461 934094365 936162130 440104218 764077272 325545059 958052203 677448839 748969205 845289693 904832046 280919552 982615684 465620649 512699818 567697289 830707327 81670581 150997075 827517707 997220486 689249916 916662091 30324098 314255926 748056536 984763851 356601295 788705565 691646078 924743121 24647840 107055224 950580621 991696615 435358872 878146951 581036772 979982457 967173485 996241658 399337420 648960983 587903990 719713360 468394323 685543607 809486913 975221895 233467013 314476121 293150191 910912558 586143953 803275785 509568076 947082777 52839116 940580826 391095295 853121753 82818327 807081003 609261207 874671727 512596256 528807154 645067159 705670185 350625878 530553031 530291517 913823840 701464846 968097849 80393327 741659676 305182316 311047264 249453576 367631406 229502868 309564993 240034440 731986546 481154744 839233313 888369181 986500192 747145583 813430149 118840412 517179916 714898554 871386665 585024213 932619379 243155353 807799919 918734758 974483295 654329302 946742655 305610057 959575883 809950380 821637683 855706536 947840953 90929233 755176520 179520895 453464435 688088578 971103004 128371840 689679509 73753414 391353308 926523869 959144321 354550331 903647337 861185560 912924781 610281702 968241270 157456325 749817183 980774246 995709302 519289747 780241675 725265051 979855128 572340461 713442598 992306784 997404023 148452012 456568461 959007895 976580321 830035162 867414156 913632788 915984165 350500093 460000892 142409891 414450184 111863204 836618110 301095015 864935242 791274782 980489496 501955577 852499940 232234053 594320114 363374716 457066869 797144295 908859815 878946240 966066633 41173802 768986087 353342454 991622540 167185575 221843813 501385645 825853795 915560197 972194976 166586385 872637731 112593672 644217850 74228762 94145765 317758150 919003964 466089346 646175036 601624036 999563827 704060228 867600238 808540759 990538235 573914492 793260173 106490460 601685568 304685531 404542773 13651767 93273781 521283185 817701192 846028021 890579521 99771879 812995322 402527653 810360710 823397795 995225916 939215208 955692822 20832076 708807888 724562996 887498731 310893241 930155074 269090900 992637179 5533280 510766049 843221066 901122043 437409006 556145448 105237494 477660799 147531290 757133175 391711510 520420979 476252339 833589452 10784444 185399655 404826079 596625265 901994312 981493268 569729967 973685331 66621157 734539694 330160639 436194363 391965800 754535448 67102807 317019193 327802092 980098768 781995523 795420178 812957397 949916549 395165182 593172474 87215190 313023403 548792000 679197149 352246536 793222547 361638158 400857164 358249513 614618601 47112215 262339316 120991151 451711926 319119802 499544853 89635000 865151765 841050558 968718439 376097089 867055425 962738040 976268042 485275342 570674174 314321121 980205694 643117286 871522504 512192042 725048607 133308325 562114579 311788198 659405453 973923217 986730962 552263359 723060822 930001687 957830290 320178212 850657000 600466522 604848685 654965806 913897357 447218361 926701280 759942363 856533929 383437535 667919855 180404322 663936994 924695826 941438951 137178776 773257532 261968273 332011164 515187490 554821082 577441089 999578084 620962931 809145785 998111592 999234227 653699757 917707398 701506397 812869826 955827554 962703702 362125831 838668234 374659895 449723341 634672021 660561357 422650962 820074614 284818959 357416645 217822376 382272918 840643980 846694978 447712104 861051764 914150353 922618681 256893853 806813635 578664791 771422030 631498601 998956601 72014525 791859666 302865531 644125633 219520912 457694133 708160627 799653085 121749070 453424011 252754329 748562536 799248600 850958806 930652324 945363078 224432373 300988307 90951549 361546307 691618776 896424740 687036816 724609319 553683527 648315365 841017713 963919775 686321441 711858788 972747783 983093309 499735529 937097418 775117019 915419848 727745439 797078598 301617223 793366964 943514539 967472190 960107559 982008030 2393293 488997372 702876737 959046089 130186193 299974222 112768870 854920507 623031442 767127042 163640938 784236588 687828234 818250517 403255556 991065602 560599052 862512225 418988945 441739823 928235366 984611638 618422849 740503649 446880746 992848266 846221619 882839125 634190712 961880087 593922274 616853715 602461833 719496598 983622468 992106951 188786678 656638797 547365453 911459436 437315606 894235320 436278952 477552440 770230749 940538330 387827888 554822619 470353346 540785079 35581038 473059421 38814894 966923438 259235281 351500714 610361577 988286889 54808493 879390553 498458978 674121250 752044385 902704935 620889255 910311305 684182292 836723779 368843757 980839693 29237394 860860425 492004640 618248546 587002894 830650249 643867502 662308609 23306684 54895005 658451065 984825499 847266069 945575173 555870670 669970652 469126265 788021117 770748255 838388571 262851683 604105460 720759522 759536178 112203606 428880763 98736661 229560348 649880851 676106635 457297877 851895132 495952889 901335725 169032831 461468833 511138937 766225627 235697648 702696488 37879426 266973067 297551598 584846595 788691413 865053896 492896199 629081735 294495394 343607189 637136907 801956950 638853523 838367606 755200891 860317789 316436587 720928326 953257303 971268280 731249695 851019918 332478860 504443884 717957920 968753761 330570693 827041257 550223009 846965100 537415605 784809203 895069408 929814067 762129386 840055384 918064059 972853917 111860932 329939114 389720159 419293471 889490268 996109246 111708204 699813155 938364796 942637320 707979325 896150174 871308962 895283825 175369340 570815879 982770327 983680400 812462845 849103069 673289284 719585826 19757811 284094824 902345556 921226259 823650792 987618374 882752306 984955277 666781926 992758954 686471192 740951348 372011195 556571850 967538706 992437439 897315478 923461669 643787497 988904068 89187469 539050249 940761027 994361614 303809344 857123065 391930410 874673804 841011064 976261361 632476443 850921210 291652506 606025982 442284828 698661686 17498792 422338288 585950518 658492530 715462608 872862453 673133126 894930859 731546393 846361619 522657672 864914608 396917239 898582806 311443087 790268246 403255087 889720252 579483711 611075552 182475354 761865713 543841495 644793328 629256061 854261232 729431812 938560711 962771086 983122931 785087443 855634182 457917058 463521690 429134278 716569735 745085969 759047619 551674013 635035205 540910944 675296871 503761769 625859473 229299516 594798821 739763322 755002105 750849204 875004283 806135409 835145600 432976827 952120941 239716185 305597831 908705846 934444110 22395911 785048515 919072904 998210842 218437286 954007802 958305178 968970814 24125287 109361026 403733695 548880360 311235835 926529848 872125552 898185104 169432375 963122317 675443978 839570352 348715615 429084388 480312367 897375626 266562835 550198348 398653795 931014790 493198473 708913247 657905977 943511668 398775112 649891619 714627601 917880426 444606300 994850840 630832745 707900995 712695164 756807209 832811854 866851287 945370346 974220552 37582244 492420207 227006527 882440756 901526852 945519654 23566554 193443354 725382196 872526713 475517858 688380798 44282679 231427350 376546760 877070505 356307183 435290987 984123947 997597582 973209912 994280061 972801670 980211213 539892907 555605371 531909070 615724506 824837084 865526406 266732106 388223961 798915912 936636290 464786868 472040744 774725566 991579682 394821500 593122202 44868539 63119309 978082419 988906263 281529293 632162980 90972691 370436089 693841187 867945201 866488814 884289302 953190709 977788409 955731411 987811126 357892450 634098760 54533339 911357201 701958695 967590647 200460418 243956267 849386775 978603409 292903746 491287146 950430718 961495552 849292855 942427356 716033921 833394818 94162014 546300578 733418179 902929400 544961213 791730633 707575965 995582829 413168087 630922660 70350734 978997467 599081927 767702739 155945506 487031675 513421129 638879062 412015008 622052228 967859819 994990131 72705489 392983525 576057091 713833996 991258258 997823367 5557377 922596502 127134819 135758247 36453816 366002242 311289018 737184004 511872804 524181644 340048442 457545429 681683066 924504809 626827584 926962722 501913500 679642555 488662382 715988198 544503426 596318054 392909778 596842482 993926476 998064290 471279909 640013848 946624280 948301776 336477780 540868074 641892715 944877508 140198286 973852664 353796069 954595741 392223660 607581789 577148348 905767981 677653123 839277984 915489170 991774960 374680948 385283676 709376126 971463114 82674605 716440819 43815609 457906041 623107986 894081384 750830228 783109675 226990309 632786584 219498165 345730750 738675317 903107412 581472453 591733434 818742086 966563564 897600479 953198424 614504262 744694244 722510739 880915104 822401172 937966208 913849986 982528666 630589980 867456738 635277196 910433802 951050656 977092911 776127441 838751895 255054327 652597529 796965686 991587864 308147873 976052996 335688644 758040564 13842416 969555976 698556349 719055610 290006802 377888731 612473593 796660464 178645473 742966767 97777709 667169713 484844720 698444021 161392770 662619887 340897189 651702135 270271411 389202363 765446279 931297960 73039129 671049553 180303848 822490584 411009430 686174319 450408707 912462006 192298507 697962382 3003393 276421219 714425981 802532693 287875966 982124966 820111068 917504870 746492438 890307822 340352058 978098312 279560225 952743015 308813114 907426546 709185979 837108821 716989512 961901621 11392264 261104215 170205850 952413318 618706972 836116530 762540101 900107728 96347106 649807037 867580596 932192833 330345879 684332458 365788109 827623150 276243483 571241972 497784413 817834771 287812953 309309606 679988992 985981229 714449718 955969423 745634238 799374953 333458614 447239259 515225050 984532365 417118182 530764639 69935895 353486063 192904046 782668212 207321276 739411627 231393385 809295388 318020934 414927606 898778636 956276562 902701143 905314317 38650028 133767182 788020767 976877283 393195717 475812730 750637462 963874839 495342921 899884871 683047765 801674956 644079133 997777073 119903757 640710797 897035036 957392878 263442175 814201885 723316771 751891495 354018623 544549008 994470513 994670563 876041612 910528319 611691991 888327850 903663812 925612005 468097545 532788879 131486544 573378803 563346579 931026540 225460288 640069411 37726391 41771613 959569310 963358007 993392574 995079209 76467720 886661973 454832362 533816081 320210717 668709659 707001842 888958848 720157580 977518676 496574716 637292181 189988581 336388703 109013183 367633633 376012422 606736891 4808289 777552042 208852976 717815634 171659979 528488050 303546113 748066618 557108730 622081421 296276069 826067923 774437472 848677291 55079369 913431718 487768764 564388206 549914476 629539951 730670691 970169264 368150529 550395207 132352658 329854925 604104298 650616626 534534759 887839122 777882304 847075842 155932668 228009772 595593382 845473650 632397138 919439092 50665713 791689266 435709135 493831125 825864229 974180950 716067344 767673334 741903470 746214063 782992347 938853715 685915334 780542556 658751735 855572646 496436714 699141557 862397286 965099291 879254405 994782434 496741797 826990406 989450256 992304095 939578672 997319453 190099517 309498832 9357423 718828049 618640747 993484873 904988191 949786794 844854544 941995542 713131389 826052233 430221503 810076461 589490571 818517072 961908863 977121275 359892202 437487008 746318595 916371549 928193038 952640959 410155050 767244340 341330009 637446044 119124606 731661257 429247870 532094195 161215327 225028127 391894378 521375245 32429303 594086532 333340528 987001213 430504851 474944914 867067079 883066829 321691730 393029665 873555902 914169463 124491320 461315285 42433158 202933691 654051753 782661408 623504868 689990016 469887605 471492471 876765136 988820502 390666317 742641126 497479662 731003798 108497078 227861997 310048154 402061484 631095482 767627313 217903858 331590710 373644362 602728368 26113604 710386047 411418170 640237870 384917052 520921224 237696951 285735547 131768149 332266317 110100621 374240013 214801169 301595255 24884722 503761166 824790207 851753923 513868092 567208986 160194611 656168443 779432120 960621061 558314370 977575634 693612650 893076033 800015057 852358028 606171993 914143171 465390334 930190012 42647937 727841231 753623670 967975937 268687401 397744389 318688182 373999138 280349133 912443212 859634422 985175450 478571469 920740445 195406255 356967041 683695768 979959648 525648945 647044169 980353684 983788178 4565921 733032447 12455133 96664545 647529323 858222648 827968345 839442009 218383294 670103038 426992542 944364959 941447868 948073426 84866846 489828510 523671124 603770355 826521527 897421187 644412596 730805642 131862985 419379307 144671372 737281658 446388718 712492405 786259207 844453561 129494327 358369891 394514071 633051370 768224465 807627145 889139612 995825149 33122417 41649654 476350437 584765827 197309660 926038917 168947691 559544249 563870522 575734475 104195340 625034607 874531011 987153403 832210778 944880148 275766668 412573072 455242731 466631397 85265431 692191714 440368209 738952022 158292688 649960829 486184744 967676414 12715886 760497598 332555588 805367344 721901576 887583411 843405496 989335776 666993944 815653052 785873511 788589124 593647093 890008747 483240459 929389065 507677851 635160678 897753305 947412766 929058324 990204152 935416381 994090296 114074480 557438857 245705523 495756187 672755179 781139805 848936520 997295628 319875085 759513008 638594496 961165944 221023067 751096751 187429512 909089925 885161040 961838353 95470888 862717639 303813503 475851081 190738104 449673490 620452029 629446698 427671128 719159990 400567480 797670926 635312499 758954599 230575722 403034280 995175783 996306686 886013493 892973433 949336409 989210939 338398699 625501444 865909299 892024358 853858466 901251835 677799884 793293785 866763131 962429943 295911531 627210443 512655058 794704375 918387565 976843598 469711192 706024920 82788653 614758714 317249378 343813580 544262541 941116513 567493422 630809652 959571490 999034199 588310319 979645968 216708354 349729688 536605344 780370122 468831831 599560844 23564798 529260778 206688096 893179784 518565856 797825300 289080554 654556192 764602633 765360813 234856810 425425970 802796151 822990316 540415140 974105359 896509074 982161990 235612694 522889594 636295034 882610825 719840049 775686529 509576209 655659639 256895412 389618061 977130272 995299176 266121977 583914152 422360343 717647121 277407329 591449673 340339781 818088536 349979216 937472604 29722292 770848637 266441853 586505401 592726249 664504041 450558970 528189136 633380112 886758301 816098805 930051078 274568843 914351987 987121632 990924130 806531599 943012827 334126836 807644784 187236856 373856829 697816316 770757702 613895690 830177641 578248088 726681833 617450228 865460236 177724287 624499407 674507369 954760534 854155700 892691828 714039272 722239304 293664180 623775668 926322109 975439958 827705507 923667943 350904774 900025419 841490798 864450735 477668671 823029300 485353586 686773916 952265835 957060743 800130423 979831688 488653904 811043784 398280911 807680901 91927442 376964620 606673151 990384127 155829899 424367175 741760180 923011013 482420517 752223416 703808647 907273304 829531425 905116505 26505194 335485092 983123579 998525066 383817116 663438541 834531622 899031249 381630905 685412566 202600115 471255065 870122789 935571142 42136325 280783004 902047749 975936597 363779368 526305405 879947976 912851336 580968968 867005347 423112427 565334365 685685557 801424050 864370012 868707393 613543394 689574599 738659374 962415235 186668415 594660071 515749888 855413641 153911927 812156289 274298166 757114438 2331674 799844792 825400508 893741993 251838162 626695274 623738131 762528025 409154050 905594356 910806577 938332632 328042616 877212288 140620345 934238568 798254535 909573207 226561140 427841889 877644910 886885910 98314795 602032941 928161144 986935937 55035743 503959433 732045118 801665195 669128660 922301584 211712625 627287066 812675031 847038735 390209646 603281413 33711796 232849421 188772554 538251791 900669427 925175090 712334084 892993668 808366626 998237202 412684648 419540783 585891228 631244566 257061856 477163045 525228682 597830017 776254558 807108866 48560177 956166449 332761830 456605604 162792650 557800739 966047982 996822817 24389260 436137483 149257900 936568761 365447590 998795129 919956220 938937216 302345007 848028816 954070177 978348434 944732238 993987953 30412209 597315623 737052504 785849705 326579514 462985462 350934313 571123582 655557409 662891085 90808127 363265560 175886782 224786267 399780074 597382992 33218469 907759676 332351056 899574295 940506699 944372721 842604860 886376070 515256898 880471270 82113268 651530242 692428614 764711089 477670098 755019390 346622775 529167916 206777196 643613153 127265891 998718460 190902232 761595163 158661579 991434781 802383023 958502129 765546765 977331349 43021377 390031599 917163438 978398250 585359988 762092705 825796221 892143381 220594747 857173781 996843741 998230468 812617264 910376825 86608289 96493542 555762270 563384496 456926914 790218807 897713419 970635488 926579375 987280635 948360959 951875241 547899787 900483800 820442701 825153204 75089682 779557864 464170321 922781104 53475790 247909690 282809409 651986192 216562624 318926097 59635657 126552904 528098364 937272056 774579194 951387984 178648219 668692795 967244677 993801295 241801438 371356302 179197492 872085330 730374504 933360730 250306617 775435533 438020055 810241120 433415508 778395884 359544618 919984624 498183893 670450205 492658652 928756851 199201108 276780115 671175744 860547419 680452540 777927655 599791123 657962216 782740113 873383539 343145158 630235377 926758671 971216124 403424253 550884924 224572538 987560423 372544612 757961072 773674243 839317334 966348983 987109265 900479566 995392993 809630401 892863904 318356884 510852930 720737805 807810192 573647317 937011354 822483539 959770263 161720990 739272537 289653413 416460500 890420697 955784643 545635959 639954920 73953900 153741008 336091473 539374208 465927708 675298768 980374537 992406582 357471852 602610629 260306342 559269161 152763226 950765468 11743816 715031987 620868748 853058229 302876331 360241928 220501146 850118206 467323087 798182523 643894661 864934931 488447737 956739811 628636033 813605349 39541185 187065859 447316743 810760402 262705362 571763613 968038849 981478255 284836602 462264382 997529801 998475405 715400152 826701996 661287201 940843740 455883414 791073625 133403740 464375840 256609656 886118087 976940906 978350796 973508490 979191555 860169918 896844831 220208861 412649214 636986679 841629927 795636892 817098574 504055681 714658496 663685081 904235736 685217141 913904082 408368659 690879548 222995657 223053534 298227795 945441841 495109353 914890325 369833434 488936257 489471794 695003869 270643661 801578933 647456964 965018471 630288701 983203748 473590202 992474918 17957864 778203850 618585849 716829456 619354671 953163883 336144884 856023896 436997648 832034815 17819788 38818931 177580712 244284692 882120474 938751548 69571300 728875209 165498259 435239394 956962554 971612614 739747159 861876780 16492775 811575210 85794836 266221060 187770738 228626422 875024138 893107563 673050108 813954976 771602504 862163106 458552789 687094125 874566155 885098642 558537778 737611586 452739266 713057733 348011627 607399807 267271445 986396923 671272845 995479056 50540099 579970647 211103417 741189487 690358418 794569963 153826298 711698220 515342837 683888634 539872706 682643215 5220747 408086210 356344454 365293128 579258202 589856003 884750123 977377228 856269668 982263154 873115965 897772142 21757444 937679494 708383097 986738514 766880060 908423709 811460424 868260104 138418187 225953417 245488243 587732839 282738054 531161713 217108951 438008839 511899942 678623651 534426568 593657549 392203820 931743563 348276383 646010718 189316462 669502319 931764729 940961489 381404775 815476281 330233115 668862544 571191341 633053845 748076017 792123876 648210303 736623725 76747156 863336281 294327309 557424838 863366861 983149449 624184261 936518073 436532933 618686700 719251710 761105794 777140440 841900121 26627483 884233784 130752930 843880883 996256927 997017679 998851305 999620904 313323626 667685254 124198144 399047766 567287172 768119741 552582759 929620342 685896772 958553479 221207589 493244630 430548425 798601044 415112721 945559294 961103556 988413083 521197846 966169212 857282849 986660432 96138494 837224842 217640359 346079347 946556134 992390561 327312255 349522598 874859305 924858123 223431822 568955945 82616497 624968676 744608587 926580810 130531872 668115885 545876961 984855201 257831746 536323750 72777838 547077210 631027934 954644998 392395726 401970771 487634011 809836789 468197301 691754860 407792367 713334938 866719972 925558914 282741961 897213432 644318025 952339536 454444091 522729268 477136859 797668599 288347493 625699186 306420712 957026131 763707468 787607430 135766294 436119061 983405528 997324964 39481303 43224913 417782983 615597881 416887403 989769328 604234961 641246157 539039968 990028567 185881805 505061205 348441979 935080835 180059424 457138799 514664351 899886597 773810919 804133019 262389417 998304889 371015321 445918885 349041563 769263087 965254242 966613823 935112026 983916385 254007303 386890247 83365585 554604957 302521260 789639151 372321465 701598545 260780248 879635826 850344058 965269267 893483619 962758968 817174215 830881530 20818701 734686121 523057585 601870579 378776300 868410285 316282809 517213539 895467395 955149586 349273243 449539520 308623207 671885915 919824513 931781443 242316915 322772385 84016637 458303396 268450461 963018958 58338918 976640576 865514361 900151198 747095715 952510133 707053921 990240270 460905563 906477871 227085370 643960038 609286265 895241697 757176540 808970654 874707275 989031757 403932951 901291309 430965640 733650029 121335477 699831282 782250040 885815293 851869581 893530983 448014944 830293087 718034825 865201553 652271998 653685608 862017422 988667364 123416711 856898119 214752458 360926142 111161540 738903638 176106568 256116935 192540145 863626423 587316525 776851824 666326646 837764496 3997772 929988738 935269785 991454297 780025503 785386125 741812551 808221225 657498817 865207605 303222416 701798073 333830692 767702262 206213514 447017299 387635512 696657179 703307746 870334103 756891209 861779707 592125689 701090970 958718227 960253752 617560092 926573659 684878531 751243540 690814692 745259109 914523554 975002442 86665464 524600847 798758982 929419354 732456135 792804516 974269300 993905371 682338954 975270297 326051586 517745913 11006101 793469858 73696082 870411764 958893928 970726238 900157435 977754396 84779025 268961172 870346691 963489303 625694212 921964676 301047418 547798252 97914262 383640097 242257729 415793990 425507393 986494999 505408559 934536821 24886350 228152842 202038912 998166716 501135274 917434301 489763975 694695875 621454122 694528156 304236863 344832390 174365131 755358299 443954847 882126050 726607431 939268306 466604962 936715629 53575995 769276060 302817139 820354098 583109973 650158699 103420752 675269050 926963271 935914837 549248433 571037336 748592901 894008935 708106367 964143653 893922474 981369337 145950300 761462497 260932861 611165577 770365029 821406074 638556267 767859787 532568353 591656237 495840702 872408802 82375222 905047294 749947656 931537816 269334366 462826716 99952451 587513525 175193835 759593991 236672954 422820430 941870522 988057810 930848774 942529181 947032647 954274276 250476444 299378281 366848927 756401404 889874793 903330016 651156895 782880068 455988024 477828943 946360100 980807053 954267908 954502612 947165577 960005159 806567952 818858190 128032854 819876767 890863503 961768637 330951082 833111178 664653463 866944120 35860534 58160748 913831885 984776357 469763323 481421250 930671279 936074204 635732006 702490642 138201696 914227999 510261211 667276994 930747232 998697164 900264998 900315158 530484090 662794355 593289025 654255017 480786501 976741337 271813590 947135998 338833787 383771686 597436221 609647829 885002792 899729099 852072800 918228086 312622835 981971898 229965956 415876849 785370477 804906599 730508246 842318489 669493807 927125086 798437808 851032736 637758992 773266162 13076823 278146141 636252739 715785065 177843262 244520781 866440741 877118434 6299396 221591168 504736261 670574001 131924902 388174589 662708326 864507489 316897956 569796024 11719480 917341204 573321554 890780969 699662918 756502211 856967658 876474544 748072966 814971485 657521524 874494654 393820204 780417564 950731419 951621835 334263741 663985795 192304079 385752715 548389579 862880018 93558964 380994035 580479630 847912379 488800791 590771014 981971774 982428933 467890554 779164299 986235215 995705775 158789476 529208828 329363690 984790246 607313725 651818211 605169713 838807950 285330061 297781085 695759443 827684725 27686843 456805522 867697272 888751498 56246278 443174690 548756894 551614154 550372379 616526172 110443598 732446249 158693742 879407046 373130748 672082714 187245705 842246168 371169573 592542247 513189698 740515606 441169520 743873906 985370121 986025503 876651501 989291179 161634434 161836796 364541771 469086816 357724430 934124154 3905006 874983215 316643168 675622073 43578203 456091403 551910112 554805891 442234842 940792700 632765454 839169422 605558457 735352372 633483638 763973465 771029132 901481401 818638791 869997270 387184636 769382794 425871479 713770668 191288950 772725323 457186724 737355054 557682418 675296879 307974205 882554388 979788137 982581612 36905825 962391495 315505226 609170878 637487490 952566844 221098353 978148216 600113545 762118774 500005304 792401220 579834276 742827229 31589049 815429761 619649431 626552218 153827276 555474039 433304306 961644395 254492290 869964086 937681625 967979227 962334213 987992112 322680873 886464475 243234125 630916641 757409683 874257161 593069739 727252989 451254332 489445052 681656465 777483866 725707427 880507775 74936638 771559829 717325122 785181333 483842760 845457470 492432220 794722244 271210611 438047503 91295501 654341882 342272706 712368760 165974151 928413829 344413211 376081036 347057426 949052988 767716600 940127530 515953570 668009234 47271736 598006811 492926943 744213127 543412269 745752995 717834625 756435450 873189637 953742916 937032649 993736347 450805296 998827187 695155455 958269100 737057475 939928876 82235402 229113347 647483970 664921281 268098354 891060654 679336016 691254523 546207288 888554495 60080556 937030882 16703184 553142732 39731187 422148326 920074373 942830854 138295857 252795101 363043245 796918921 366487598 842544838 719805203 824623984 602101342 634019677 498972147 548015747 692968747 894776142 697746213 723188624 683265762 904373406 440628628 766872086 547228900 605515680 249438246 837938362 817249611 967128843 933878671 979566938 292848535 774163539 523687248 692098076 112152984 753633635 399866810 676488029 18807312 883404199 487524783 630915691 214551578 740099378 610001400 819278045 137378125 403063474 4656852 464675724 770607800 945819700 134401817 708797511 289746522 521915926 404240034 412533294 944718474 957882932 811485189 995012428 990524897 990835179 921533056 995012114 707630207 798387213 901530130 978885411 632809339 862352933 224072189 292876986 708450768 999055656 513065755 633864340 931725352 964631491 387927075 566204441 604328106 970709978 514334010 698786558 938687282 965055673 883613535 918790984 846255965 879121756 553302189 866903167 491444332 998732659 501597505 780314782 564680268 995678316 999103189 999992598 534810394 907667980 357239390 952014559 402649726 815031104 146661812 828554418 872809752 999338714 115165712 809281061 424436736 583594386 848644695 865318603 966555381 995624179 645408210 841670598 462875189 585895589 619600593 834153900 330585496 869872370 244623555 620559747 220174358 892893143 842784805 907958422 414775801 647937275 883719156 929124803 985359048 997671421 99110956 546893475 489221648 583541712 589226664 872579775 396887815 844113077 820790803 852895472 884090099 980868289 209685062 478864156 396016007 847221787 517802409 771575582 332687017 468595799 520371725 826021035 472226441 871446458 433600639 706835740 691744027 879088813 931010272 938065077 398178685 971317057 61662687 661571100 521485771 968629485 309154687 323132960 940100879 972698565 653796941 893921409 835504890 835792870 42827143 857062012 712713535 942614266 926649523 942021023 293255792 524337074 120463006 488752052 720854491 953731416 110293963 292924151 841675299 961541979 920955190 922189245 13333188 960862003 191650265 837521035 682698029 919849502 233011637 263261133 672432978 698366623 456885736 667377436 833998680 979116485 245680172 995261925 549097732 836841033 628046672 681907165 537579090 761755356 740769082 961345852 173406901 796321886 541847806 589916602 254209511 890329628 29201227 554472526 48983020 765622289 705491667 901386776 331433180 644826642 109412369 948789394 609781984 902583364 464775116 496760966 633418392 875201993 979031108 988395496 450210829 862586398 938901163 970615306 347820845 768339561 640698987 710472996 95448608 420952127 476871061 932016159 434840349 530915208 754130464 763238697 631475316 834566479 396320961 471008691 105850948 805366209 401478563 907030112 310965425 505427098 555394556 577575267 403844264 588334088 634313226 722246605 368544550 486575780 121251803 338524445 569796632 930441652 431867313 719067476 697467887 897463857 517478299 683466610 241574787 746681505 376131607 975744645 116229792 773455403 57638265 836248547 125321569 492723343 409040179 409060867 28422257 304213881 88801733 434330641 642170797 814879088 858340711 930807141 593112915 891889987 12386158 491510877 523818917 793022937 605904766 708173326 272231362 936234961 653377132 712128665 513771752 896174179 86823404 91414386 43805135 222873421 801730189 826461066 580774834 833135640 185175615 325646561 425716431 587075863 853344116 966470585 106756355 414705550 905772236 942247122 796363062 799300306 330986038 730433081 394252534 426835461 279674554 845857865 873599375 991367951 658701536 783073569 564775505 606480396 464413980 948273622 192009039 260186998 655256428 685750646 910699920 966592795 289044697 406716367 674092123 709352233 313680084 673109031 841784885 863009854 752369 706328264 566499009 566856729 312343805 917243599 530157851 767203002 31965755 542941774 994084953 994518106 763259702 826024790 248580956 625736403 651123813 805474386 778101929 904358289 18936961 907812776 140193285 482623624 349054710 702632141 267170864 485305663 330485990 899869385 740718704 902484943 690625108 916119733 853105319 965012238 251173384 866873768 270084859 501867047 558805009 882776864 262596209 716750853 252751308 928909316 691422818 819380026 66840925 711798528 378698811 422010026 209640415 611667670 368155316 610701992 744758370 889672066 891900995 986166026 280330872 357144154 512487807 744146915 763398523 960585989 444140045 833930081 990601270 993115091 619408861 793038828 194241551 805891996 631184303 973679085 515261439 926764060 239063605 694122196 249688073 590560320 43371175 366286030 379237069 551929135 57157170 325005412 998447263 999633301 404800732 420239405 73152846 873058227 5905287 825169457 895687637 989509158 90525312 376973532 647672121 740555382 803170831 923216793 644408458 679360619 938348971 998741742 321899897 587910534 939545632 972726705 231134470 434907456 85704579 406029003 631472997 716587509 289925893 563513262 949953349 979887080 715186106 887724902 46289156 875286274 658582576 885848584 160705739 433964940 924069423 961202721 151251311 529015727 983853317 996797729 231503673 358556663 499503214 858475243 643030687 776529201 274301808 641710105 706161293 769699181 329570327 706984818 467219906 908791134 279243395 756716252 974468623 988966507 525487392 994651216 562068482 669722581 766792191 823590492 422724481 781791162 439606104 785748565 922623366 970555457 139733599 223099322 135505178 859083569 829087412 884006665 242220185 620043270 87680413 847824794 665362442 760130168 184810553 411758801 875172866 979223717 785738721 911716508 769929431 949937089 64859792 670952946 757359957 991067020 998304679 998446719 542793760 575067056 458385414 648545660 657190415 855000802 418721430 661219937 468491307 708872337 337564000 426612512 885765031 924894568 814913485 981244622 536242688 586724402 275521293 973078532 847278331 863776875 679203810 841647688 27146258 654217996 489856041 801183746 113376831 607184211 829093397 910124492 574482667 600068243 898499806 898907469 161101700 482692889 958448621 974786384 462114900 991758670 891128241 936056457 521049222 899489939 528290966 745269872 868985917 916634465 293761569 641015710 53105642 890403860 546448159 726953944 714290762 732408374 521969817 922403696 211080024 419367005 971420352 989552361 590144946 929265862 339860931 711890421 655941501 678587220 361715008 870966888 24534508 515039234 926244915 966721562 642038089 887223250 159370995 823466189 413222688 698833308 366617441 463575539 513988135 525344401 699354333 899424971 188791104 496777810 997157429 997308172 186833264 513452244 657159313 914293282 45442632 807040955 623717157 688111805 738482290 820836205 236173958 718205483 564419628 609765367 597586418 717164060 498798340 938477330 789764552 887713092 537501213 702775880 282358716 803677045 516911820 967664085 175236519 539526682 83159740 379805209 97822280 785813687 360979408 745386844 936811585 998017079 83123446 408065998 317968106 876288141 264812798 793816901 588643101 719450267 570892454 573155488 787299120 800140194 874576927 893449944 870802838 926958817 29849667 832458328 993491399 998323070 279528832 956939232 305015832 810123437 546172737 642889539 651655954 693193537 686849880 698177107 950544525 971341462 602886804 991832251 535687252 792507144 665908530 788586588 805283574 928651243 997504083 997539710 375547019 389465322 19370759 344069825 6812630 599850948 351600675 753511689 465070030 668091730 367508509 535416872 163828030 211350481 322044118 434591560 946244901 952614025 371840267 888909030 16438030 927586391 234617031 363352473 480467879 547638694 803516987 894782129 125976991 258420385 554777673 821384031 535241887 876985267 920752182 928573682 695509228 728388269 613376090 800503609 312710561 531715490 312845326 930202111 220096870 888761323 717139135 739527074 403970451 987631129 715823544 777860592 942127205 960724095 215927384 510643722 578369931 836790270 857605073 928539464 96481601 859507471 177380072 477501765 30657115 831359080 88340932 607194991 502358887 808966036 388211078 520180345 903561623 962539212 880283395 963042830 484283259 634434683 749583422 895693831 807611964 826577513 591454919 801462715 205576820 710869816 253003102 852542471 74195603 107739841 516997267 846527938 896181933 969481544 489965581 901617159 86182163 692893893 586200977 648169267 581943819 755500776 568649521 763750808 141973762 549768112 131019475 824265451 18325678 967150863 303266130 324742251 162784498 444851947 891446287 935867619 282841606 658900657 223968860 833396243 124162729 350776077 543158527 674891118 234827537 597937209 728101902 872201831 304249510 601162249 898851480 962933702 581453101 755770754 275729236 910889586 213607450 561809693 691471572 829888830 954204612 961721400 961883025 983094246 887238487 946867051 808182195 841625086 586073322 933467929 367606680 461175086 658767269 856976735 469891012 937252535 179163304 401258139 849771740 860406843 856443276 941212242 830414955 972110398 515027497 625683463 329769309 845880850 968749641 994930026 160854605 413115297 908471962 958853598 907130158 907661779 334896576 792029937 924257751 943860348 156642011 250376356 210411833 363422986 745681321 920159622 443766704 601431696 238692120 619727699 719677874 788186000 449192140 501841485 318815032 922299531 797674603 908242630 836486452 897806940 795013253 994318816 736287868 839532863 603560576 676925968 151375179 832584352 347306561 959355797 916717712 980118129 725430496 866706399 670734449 682080570 496743660 949661914 188045906 592597116 851376120 873205108 773993352 965271597 379351118 880650237 633773093 687429920 596713246 751774192 139130235 786354533 875185908 951397720 618950503 780541636 857561010 913010886 654802016 689493462 388586493 742442534 491670521 940635615 256726461 834831888 837057516 908019015 15933417 618847149 451416398 658197543 64000847 224607417 72912352 498342205 788828269 975052745 531322622 906840269 54728963 219228603 519838032 669047642 179465673 315129738 332491123 744716111 373102767 921138615 13303190 754868545 973599381 975000251 587020238 726655175 934769000 964375509 428160531 969708364 660244072 849445306 298596176 867249540 321907291 940260542 759268058 982155424 113821347 412604937 768926862 830384193 181451005 865798791 232694266 547790265 956227066 959283619 503928651 818553829 285302266 706773005 12461756 44771634 842936194 964354123 106769381 341730845 143727602 199082658 694764593 714540633 619881545 709170761 970926416 978215935 104597527 665433345 756985366 933951262 485075488 506510399 502029479 975721646 913702990 941902722 477056560 720400939 223705609 699293523 11695308 522991340 659953721 995963759 31508416 41113623 203354906 358004020 726323740 835433433 461321123 654382592 160804245 755513572 624286195 903965239 186725115 432489054 736967932 939300942 978920096 996240490 746147643 937349125 382349162 878600385 532776893 536152438 671696949 771823358 641400480 919027261 193039115 576688675 245031485 579087939 260588884 503588415 583172052 605817125 876114127 954327978 349833202 515553757 355075610 831082134 43231477 217065211 846961253 861134748 580504357 956121272 291425171 852878481 790466208 838054100 911558713 959403606 228424235 441494036 749789319 758417012 968409250 975588963 668795853 901690577 484431985 565636411 923295391 927424776 407156234 986859910 903352866 908262752 573793154 789917812 244970958 986580437 669100110 719650463 517784506 553646766 789637524 792558423 891048813 903532264 100938454 998869920 502418668 598439637 777569837 949190818 299530334 813781506 224234792 346103401 280506116 293606375 729650155 770956917 256451632 547550326 613479175 779890803 347308533 697499033 348008655 350926169 216871354 505201631 251502519 276689092 601565911 692516303 164561959 254280037 942006340 984899496 473203978 493055445 888123897 990498994 898300121 935562976 948691883 969685144 241099369 280298392 298037164 537550640 996104345 996220127 968340236 975945110 483467530 972604116 234338947 690486323 969317141 974384364 10012155 529029069 835197219 949700699 916055720 978377045 727812685 986082368 655442238 844543701 45999628 899283290 913499747 923008585 486787335 618899853 652587375 862960361 431181146 665093937 116827723 485750199 508074331 911181743 452144233 681468660 686188201 913615807 338370263 518962126 391087746 853810617 901927129 999148314 324233071 968405480 867022431 993086226 314324410 690705454 24424705 177306953 609414888 700357686 818967849 989080147 960574164 980198084 16897377 530503147 485319085 869849936 85048083 695336014 774269048 796547842 142479852 843060214 791966991 827264056 157068381 944361061 343328090 448908611 634279286 971566905 756763265 894894795 583008231 835467202 854762636 897724218 886693631 928275597 680440057 824492946 102862616 494773378 887265814 947793466 893243004 993991624 360574984 870831097 2535615 246097088 112882979 775276388 56351750 73858795 868774615 873469220 119332029 984794630 479267119 763712543 73961247 289610286 114282371 840019520 308487619 749048002 312178215 930906887 630435929 681250366 911927950 982911928 933282984 946995877 188537201 689289987 247432858 655809273 334820687 649747016 903414085 941505338 263219947 576478206 843295881 912252251 250667373 838943103 725733983 751571513 278910493 378726448 101974047 656892595 753716581 848365154 609428096 871073676 992514331 998285633 734871645 966339876 726821486 989919162 671689519 836884743 688947616 907250797 786376470 798618534 137425216 577743186 163188405 252148147 883041639 884382293 845471249 997746927 438308257 816223076 96909508 419351617 265485020 717034268 96057359 767614162 59532583 66116649 499980631 654678118 930448123 988088848 473614155 704318426 65419116 237506665 968604099 987768451 486394834 546655737 294753475 964622563 138656597 139384934 877709475 933441094 60515571 978000287 709527718 816009979 627641051 910782699 315540208 770083804 254824718 842282015 126081319 687859474 51400132 720417492 137744954 297681388 934372264 954508030 727933082 884183264 29168178 864270421 568714503 792767257 20926882 457228406 731354814 852871710 627782978 661697792 281952568 757812897 725646983 730029052 776254813 826814352 189414471 309374291 775166871 943673081 615134141 713050230 395620301 844382505 577010608 872192756 382811326 731376980 26026641 639991071 807573846 974971851 276681111 527330748 921873666 975920507 191361541 312166718 744541549 956324315 524012392 834386038 922310429 945243927 950762752 952638042 229690804 728928972 986762944 993298279 210225040 907714378 726253366 970176319 238626160 423549234 154082771 530272886 360981479 959596781 22368569 928124621 736637876 980091334 390174440 864739929 475912967 475951147 810772191 868192876 173449746 765017435 888717168 994531361 64066972 366039439 721033358 877966030 170171217 303005542 316889010 644804480 375528589 484052609 168289838 426068237 203508091 816956179 696696817 852041282 817489945 859410132 625594607 941133663 417784871 929996318 727839059 971974671 95060001 649958556 715078431 754246053 248535080 848251578 646946912 830750503 284710116 656422530 404032175 979646902 918002556 970262440 959835614 999909420 745300001 865429113 976796598 995862036 787953635 844182988 101351555 548463356 401297038 795556672 94521556 998546290 563280726 708630320 483455036 752338696 28072294 367030443 490785920 730136284 635098204 876104984 631866651 746559982 997502329 999404719 224130059 509280443 519976877 991399345 667832238 787772134 903305451 909431340 601231345 675353421 460051146 831897000 717958978 726103520 73119583 897887332 268863826 655980651 845053241 911400328 962163209 972493877 227621371 552102360 882513353 979014626 551584753 562338009 558874192 578385686 983814524 991507636 417055300 997161648 571739114 918075180 218383087 511575846 329401878 501681823 116707252 122854040 303568186 660977766 476554629 569178704 361374341 651995995 301094182 961938563 111817356 180005207 260739775 442977525 919535296 969469470 25910151 675331385 280566748 363593655 27531582 444749372 379348893 628620282 432856203 969414056 336595631 430950074 242107527 523579174 111346476 230353501 441438316 671032327 403190788 947111386 829966988 869436031 768251281 897668149 452222576 763776488 820266875 933565816 468768745 707080500 737724246 788598595 969848945 992448593 303428877 831166172 294464006 496516530 703680010 814043040 236967878 532444856 958042498 968559647 542482846 955080839 914433435 993497190 9223096 61478698 85716233 587375435 219628734 589659245 286366243 560240118 4342476 273901854 19263795 247730735 713797826 759852194 500967307 620896766 702317906 902635224 526860190 689759552 16059699 749703464 112607889 422435276 551942942 793732475 966463440 967710661 584856002 651163434 7751689 265361122 171062424 678706000 85513145 925815752 108661077 576571377 957902451 976459113 109873078 811987718 794994312 840460920 195965126 786219097 226930008 530363284 104035957 111305616 342680628 481667149 402112970 510040134 582749361 927060889 377170377 707028503 516437536 608642143 769559577 955600318 215671299 671338357 541291560 558641312 32166533 866839877 6760930 22383516 333610426 740162963 570236126 739439936 477949829 634027748 918218222 923767406 957285413 968346559 32555960 959068909 976339997 979249486 302901334 453346546 189008621 835035900 338350636 783953612 511448238 584428764 540462139 792051392 153492747 261092202 492043733 632592758 697317515 982019426 919413993 991455178 87389069 593508025 428886925 672432937 460012289 994220102 605145278 803487088 676950591 990462337 23285227 25871764 184938304 852092326 513799289 934546603 67546626 184530614 104514347 593477139 271424323 989107589 112726763 332618065 833219623 860500814 324177990 378044580 821712803 903198756 248017089 972634093 353230662 406289169 783825790 890511691 992298877 993681684 891837798 935597478 686769328 965002518 64197249 266326974 496317450 543059888 815766167 888575721 677256891 925687308 367413763 904685621 67053383 434939821 161135978 259233923 783404612 809837059 511358150 727735421 960576828 991269446 244437613 967068090 690470840 834102928 761711618 900193664 917726143 968473665 455518606 714127296 897675994 984434160 66526077 968515850 162814606 731270807 704915958 754522875 850934602 945410051 127673540 581566374 827852115 884906926 449605947 457259795 425761667 918636822 520696298 806628099 586193202 949976335 629183085 715114862 8789881 618179348 25750484 75217870 165843616 909506248 805026163 883853973 656643529 872624271 947374512 990916058 670621420 964899643 126772891 911939539 980007035 999319343 39655169 810341121 913114320 918875319 272113757 680251404 255957062 284214881 814355508 971316472 18829013 637338552 322988377 585205566 700237104 890734221 342317175 548191473 532645886 946926443 382892624 550790552 256603452 444912438 867391377 975092737 643932696 792246066 488074017 705546801 566002715 771714572 919470514 935201085 34682681 975297981 49032654 414246353 42024764 347308311 70199828 693326778 271553677 800715339 592967669 809254249 491696295 780381840 650613311 701619908 787225398 890103382 474945834 607727639 26843807 797514373 152049992 788237483 536532640 718313519 298792580 627631598 177045827 888894438 960216289 988971986 87027613 89028736 427161060 529382410 546997320 853618100 8037142 773337504 603138533 838733879 987246217 990984832 216009082 875369095 360375261 829405717 166046164 764562896 661438285 716901540 544738700 759931060 594192932 723531559 790202864 912707149 410638194 641422163 37040299 319916056 624448705 855645990 559485039 983916282 542478985 709934865 132264484 441211681 231536173 670440190 670138701 676364791 378424151 821317246 71163046 85755537 817348335 922450596 526248187 739399131 740863685 913396118 980254370 981138740 844338682 879619244 59829902 153090305 607846899 838356145 193993020 410963779 975724482 986274465 872574780 985538017 500530010 622136777 439721706 446426658 548741509 711978698 987986454 993296209 633069668 737119720 875648831 990066559 671309561 683783841 803070110 885957713 816936553 936131860 994949745 996401214 426232400 714950820 830923243 972790583 691210716 878288193 513137204 730033055 609461944 802614385 510021175 964204951 463748230 611262293 525880290 966302599 249018236 872507470 485159538 544950083 924439764 970527111 760600847 918385551 44519272 441856904 318071799 905477286 538223694 916937363 696857834 985247745 387892420 436583512 626602810 690050319 637225280 869010686 76536870 677446454 630609790 987355915 800236515 920398597 39294860 178607780 314476129 880995608 30908367 720043950 76829325 152636868 854174082 937553412 882281962 902471195 129906258 788504376 124112263 737583452 93011141 855568616 783140641 966200825 903607645 984033167 979885165 994626225 922371249 928634197 38154999 859364506 136210731 416533358 502529256 687115746 67148472 85785452 742215508 978830255 223739135 803216355 633773647 906847111 23058348 162151336 355863007 954264806 964424910 984540518 306587506 359132992 739648661 797949530 765020896 846535599 617550549 898395351 840920425 990565745 746467382 884968202 295101477 861289608 493893592 964688259 877072547 964579064 314950233 772821552 68243653 530207203 391702236 982086010 291902495 753414123 809475043 828718049 375233249 947009114 286576157 678383563 601519389 686204072 110357443 640876392 511592575 696928365 714266213 827390014 891418289 952852730 183688497 613664472 357219039 589836513 249272553 461086693 221822377 530951916 814712712 855632696 827593267 939455442 582552898 657264603 866836054 901051556 810979984 922534155 474733158 704392754 662128625 688213309 227960024 266601115 270616311 572557997 44172719 918589571 159504160 562347501 999900639 999963032 541934691 711939295 334136583 770767208 282294727 740092322 167483319 636258644 603553313 727057531 304146261 912413875 513105247 819078394 895786520 928248412 149362823 516135708 505943997 920219975 838491425 914138559 393532640 928511698 70806222 389553465 653667126 851057128 943121372 970130143 883041841 928270915 994290037 994956614 573081814 798184270 354531145 632415192 716285979 777218774 16883256 903659356 201442724 600014278 749724137 758586745 578854492 918710652 178360643 772428015 396482005 881086829 741746506 765175587 587892109 794068484 298010856 547857542 355001079 623333087 268504243 897348504 204045135 525587414 981302875 990999730 704306667 807935931 474724815 993979736 436981755 661859575 570122482 718274613 6516386 943734407 797525405 881655771 715395377 966752548 451579614 807044961 283034941 778905410 700248388 950187340 689538279 826561317 254574342 782148778 643667283 763924907 150186232 597253810 777849197 878296620 773937731 852154067 354284876 825667703 191711755 892158992 89175854 777002356 947434183 996862890 610406135 637776789 868384666 903659254 982474437 993336212 591670557 864011864 876597436 893637222 412243414 869105243 631360209 992379070 249359621 632748118 880462258 967121306 920463578 935359174 969727019 998805879 573459859 848385258 269519444 881409595 346409905 923634251 895120352 997146019 354002668 599299123 790907146 959632731 14276501 999493863 699282302 930752216 941726982 967821493 146695768 757156779 216004214 306608194 726613500 888410635 126372928 576571661 198810543 934657067 881339470 897821672 629639385 864630164 973394671 992428670 334208150 818128049 443829128 984020579 217930413 462533583 953477526 956032846 688759968 901904753 702537863 768628350 606487337 703680812 782311685 953808671 699540605 776200479 985131335 993375075 213380486 436823331 208869311 400837895 174815601 279527138 874317543 879473568 524169916 559023602 553658270 794756750 770492882 979714928 294151335 718310718 825658335 952127769 655197640 989138353 779116488 893839247 685287740 839111695 249694347 545487325 459736917 685561692 699347943 808114235 849020229 912587716 177507269 442986888 67556764 886121498 505691414 955340886 776335587 895579756 686611044 984809183 699281144 943532799 570771446 776110018 705876918 988128784 481281121 749842454 22071750 822104823 446507984 511272559 247274740 697478781 638795878 737795378 696074786 989226946 907572476 917247034 931597080 969564410 381614675 927873950 83033819 148231249 808392404 854024375 87636321 221518401 58026769 803041556 250642037 956914752 587943720 701794606 529174598 761733991 191746801 531359541 115421193 115441637 293394516 985815271 896924190 915262915 336621161 982578308 737172565 896119027 979025306 982784563 154420774 468149592 902785322 949174847 378341105 672924650 552309995 594622037 454850666 696950576 739852237 994205295 44340219 479545778 794699994 902420113 824322494 918854328 591951911 911972643 109440894 113097040 741094585 760965977 799730514 843089088 901750965 982535633 640274954 687193225 537398958 650723053 831266720 958373346 160351415 690200244 791523852 896118351 654932813 794714632 370974159 854624349 870909930 978444002 328163671 545942849 992033072 997787867 519793479 640837746 167355463 369390694 850546107 961661183 133798128 523881501 60675808 222218415 693150695 950184637 28916433 101156489 254436136 551180120 609438648 921614776 955808974 960330524 554277776 876938496 94734036 403821194 573436828 612936628 189974310 543190631 459999781 709371904 920057909 947433742 796769511 860994055 888444583 889763229 668583672 989828294 603913422 615470257 944569154 981327115 355111131 679711071 972888854 983263057 326961891 349682336 264828142 283557735 788795607 997456332 577523342 619214041 350136268 611332699 964599438 996615295 518642909 573516141 640273221 729602022 905785605 908073708 655918470 674667908 884396860 998123535 602954919 931653132 225799214 919952636 533053444 973925981 904430798 987369360 302798920 796084171 435569780 944119424 809682994 844842222 600706936 816804795 872231188 943872473 778763007 930222264 856884559 905760155 217406161 799455265 401514371 645107604 748870569 956827693 633220319 729427068 892301757 971799101 371065406 780723746 126002843 568762035 968993821 976942473 448998859 847002073 707592647 814253017 409835046 792044400 401885301 906968128 667882877 708035398 103455871 179606456 651512003 780965291 226329315 263128284 706350917 782245984 345607875 638144455 344576184 528770755 688330685 895869360 318676995 631060683 74866560 616600378 882294274 946894173 851846565 913874156 422888134 592950088 562769730 874952302 938064538 954471618 841536902 875427632 552256176 591811011 215003573 840804698 379948280 811046421 947764285 973414857 484470892 653075383 693656647 834544325 785596806 946560381 194450518 371695193 615101213 996788500 897918102 931427021 67337343 709101502 644223137 859232172 298992505 484702679 155825391 883806711 958775799 965444166 820804998 830575928 322623522 603323801 408160455 797037379 778356231 780237922 515590962 671437130 317284769 318865445 58897155 790304345 6460381 8032755 993028803 998808128 980481550 980935029 290706993 771168656 371355072 747418372 368728238 825898237 923150850 940114374 216828705 705984033 506310939 959079909 281106370 765827916 480929813 629646894 20461180 509191743 343386532 831448042 291044412 610951843 496318369 846003139 369936152 687451285 357744456 418843702 810107487 814627636 698828902 718044490 664586912 776784938 714850429 835145620 214956447 571046961 690188947 946128885 697136071 792296388 848464903 900557398 189696014 763458293 571392037 631245846 308370747 556703511 115616181 879345629 424934444 815170267 655580815 816899509 606451 802330455 118107470 722449520 344172764 756574846 716647926 913764921 998851097 998885953 756358653 941418990 565124493 926492796 461138397 660466101 84290282 994700940 505503559 910874433 474857499 819975777 624942236 940301499 510956750 549027792 485359741 770912238 222638704 606550873 300707912 447894283 359463550 937816931 761929109 838207957 47442706 934897538 880704793 920217888 76510768 450016481 83776250 556748746 613319861 989558176 981930551 994855564 563788112 943008133 814885754 854374231 225218250 440435414 125667135 269254434 606422686 739281817 935150549 983625895 129538522 574555846 899739903 965708302 71817879 753417541 69167402 254235902 975237434 984903217 504366304 693157140 735934430 798947576 6270042 762922706 802931051 914869829 104383834 120803621 273792396 972158657 312905325 502614019 652600470 830776107 135104056 316042503 132097370 880789093 810824659 825712071 751604118 801253513 594147919 979446591 223571526 930802795 810528254 816321543 436159477 965927760 467174508 707453733 585319620 671354006 806484968 944628067 247230939 589290978 675249136 755489281 204156420 534849224 369874238 648067724 169383976 964217470 217846426 423231162 18966473 159871371 303868170 368304599 550480464 568675652 24490837 925307598 407762789 864752381 177329653 313372127 843721516 952632606 839502790 843489544 834314192 855298508 991891959 997956561 690353595 717315371 902937351 916242184 119097044 353846398 250466159 253336318 967912547 977857175 583408899 989240668 931326823 959134488 900813469 986443017 576037378 681214668 634061392 913903710 246176144 409618758 830469364 861551433 803507422 882830156 439647535 909536905 200230312 501520117 744364537 791058076 282543396 527507773 894834346 969241136 326127106 612455870 404348557 755132188 111864651 971144843 411693833 977830621 619757621 969406238 328622488 771599810 883640519 919617756 722998649 898471686 323402721 962186696 325655085 431384209 946371455 999932967 602535939 649373187 861834182 895667096 492687857 871114076 877451542 991677570 72350636 442026620 606428747 877222767 93959585 497087312 927629646 960767349 859968987 913175289 775192042 944902880 586330520 661541797 236061890 552345145 190363567 961580137 488751043 734605524 597115797 683705320 774979937 920724811 869095996 879560798 170308434 492182017 842151374 933113753 150965044 375616618 808428821 932010895 934044474 957665886 578120248 669642078 852866677 917064540 444253322 989232267 649903487 736853813 15358003 908057041 8860022 464184575 675827886 809618480 695717849 952502750 730069587 767402407 322824658 508154068 725938040 840384070 800643652 908965926 689075681 859058608 602534457 800902895 283273694 362443001 69213194 686359963 363589248 669667709 980130581 998111992 125159681 259562021 639800113 773169275 429299156 645004135 755535237 757649819 569618815 665210186 30502689 367638236 523452528 942556391 137224671 992701188 11518741 937668762 663972891 996940704 89234830 563730679 28108412 792493157 474738878 590576311 81902173 605816708 732602638 782086379 559043150 725891567 777765295 905934914 256884888 839221342 881548673 900613725 60723438 228673027 662257165 878163685 715070803 935272780 432230671 865475188 766424726 978856123 163583128 862224733 286251633 468855832 424343124 954694561 993835315 995595837 436689564 924138570 350745627 502847990 846524950 862066529 100582915 971919531 210420495 550125431 747762910 888902078 120129954 413712818 749375863 980742533 275691869 524277822 135675810 302915042 61438862 335727519 716522229 787607776 632738698 980616636 938070684 939537564 564015235 985575137 10823272 221752477 149735713 559261573 187311350 328255312 330256646 476959698 706988590 834823602 309122050 732289204 933813590 995032740 744880944 776091535 147545805 331029697 822166734 838485076 835521063 860063545 827770698 942706251 548581096 678997069 919811816 936196973 129901344 176884555 285082537 385080032 221368354 448632665 656468685 994808307 826010713 843787684 349065412 611364086 722546127 950174049 700502901 805510262 847794276 969840372 875163906 915160229 336439800 697152411 305268747 496537552 126804617 191506991 295678111 405738063 890869708 941531401 795959622 899744647 801575150 978182309 230966831 287648448 445313397 900781037 3143347 508085329 77469644 814331639 530780601 971415562 952158896 968995861 316943640 705769455 329241881 433805232 119028507 373602181 995932216 998184772 551975053 991213944 229927443 443647522 172374257 741260880 470895131 780621545 182980712 189404035 593561061 840713037 548495254 997877478 372959876 666823913 937792172 991526046 981361320 986511627 645023138 824543525 517163564 587610192 912093846 943848022 200052348 938796289 525440622 893575547 357685684 574487695 243436390 825403684 678506610 991378326 230644710 997560855 94022793 762008975 338214751 402854435 753241829 934915728 384635677 440209972 865006958 914382498 42255414 886430803 678037480 880637547 670257267 988928391 926609722 987718015 939400511 958377761 534433007 948084862 451836401 584668665 941498834 960485318 32401932 970477469 492871484 761443549 658145458 951972108 616930058 935437885 1415071 115896023 217597764 426100643 429934227 843184046 911971202 996433145 966372639 992171565 859961480 886613909 28143542 240709123 811929440 971079266 554404632 776457901 676192385 735069806 55053814 849712621 672634456 776661348 784603241 806423900 525559345 885545243 250262772 495165307 241136566 287681573 395522076 638567889 935808335 964911112 128273378 137013035 706319787 853232593 872170627 995434268 858975939 948225700 445872152 993035097 460940924 979022553 894711396 917244720 730744731 892010580 315225928 471503375 364007910 700359129 582086493 697643138 555828207 988357076 157569857 359374606 232364465 822627402 661638815 726306568 848921862 884118479 288446753 913742051 149336691 203028100 941358351 946328085 74065743 269362735 168943360 620106551 948780990 979448235 269906807 645301054 832058 102828997 665299602 697684521 590647878 745791923 943904022 981319334 150644855 834588066 761441749 910256264 61841065 528743550 382569946 425620341 962702339 964883843 191782934 953112274 14213110 519110158 991974248 996862073 167772136 670703265 853903694 895061146 47939488 349982719 597833630 964277367 581706639 774074678 985227313 998352981 956164715 997118974 947314208 981392011 192900239 481849111 82675504 848960690 740900569 997889800 432568007 470061439 706978112 739146655 762816867 764230112 394622778 696501601 760546568 834560271 850950425 943399097 864477832 977329630 398435947 706355631 10982989 412895337 603583950 745898886 760622427 996446551 758038334 858610507 568290227 930022596 107471698 734657315 64240173 970676667 171866970 232876944 454296975 854406006 239518690 276168348 674258892 956961883 462286641 991384777 16379740 829156381 210294717 586113173 187507253 462228436 275233990 550528359 630088984 749941849 675553729 747433114 602290244 618089740 453300478 769212564 788729234 992687843 376630060 670592757 886309238 935309648 321996405 836812454 657319149 849900619 684022972 765947715 617792497 998637384 539003553 570443895 142419058 582906969 998553829 999977873 224236012 627860602 569675321 600133400 485545738 520732841 918336105 990976306 707324441 920047838 499094396 508923554 113440297 134600901 867517297 929744724 922366579 983119906 846927600 907214976 423152183 508999773 355298107 939978988 233163605 331081383 818486809 857181911 496588042 886773617 582386625 962786045 3090323 938260817 141224114 509916393 406341175 627370008 26874506 262969316 829353539 829414920 646941085 656914103 874784378 951432527 154900769 289593568 369053406 590083772 655521082 748547645 305863087 381425684 274341822 578128910 335755632 938955677 411000711 573664844 502918796 550909400 809402595 868701174 126968539 348260323 696291748 952311125 496398753 855716308 683292137 767588025 967639733 993735380 76764687 577109111 562227806 878373613 325036587 535966371 964490137 997665282 808890507 842482924 299439749 712573527 229912609 728944816 125190722 519578035 533002976 601602876 526813119 599199650 888556495 913501114 497570874 505831696 867591387 989270631 885219014 949695491 837185878 869441000 750243384 840287538 868115885 881486317 163044137 488884232 273972222 738367187 70677911 559057832 757469556 871796611 501711744 846653453 79937823 281865339 154476709 209600706 322300613 694572895 481907285 512762107 138167889 324799626 834144903 877724852 724053121 845273751 479271499 904193936 202917857 471751460 170721330 587819721 796064864 852385128 381268015 684951724 456777739 779441531 547155621 637516502 553293577 694907505 416782595 583931222 253597847 972877453 83186532 833079139 850023439 989801666 859516955 937897741 768231773 941417829 372834366 621625187 903136081 909727813 33414633 956046197 159149535 732828974 62380487 644057800 314774902 865813905 413096003 567354153 568897711 790870091 944163238 961228261 75776887 472301638 163922390 800905700 866204483 961877344 710131207 849026487 949691413 952262738 344150387 549889508 238161089 915026264 509193254 617339755 1972154 120737315 16729149 421162356 708064909 927068595 549611625 688742358 728798369 760912064 829041091 984790934 492559492 691983529 292250425 441373201 419671242 667678364 845509856 855667660 673385775 781124602 840139742 979601856 857611199 924535259 570898482 671024496 798253530 937865486 913784324 963446849 983613486 991101727 863822056 942766485 46661821 999442652 38103112 73346982 583662604 759789058 517694766 755207795 941149635 985851022 994451676 999897943 42178312 921379349 933238031 960148658 321071587 835816043 894851191 955953573 997434324 999360259 659921164 834188021 763834479 892553481 553512553 640339476 496332638 614731778 306271865 862959145 434563708 942614368 810418171 928835853 862426842 996893703 139223504 869717965 481028676 917622818 611252626 732866426 60212347 426538688 462114233 474213624 433400740 442309901 15326043 899015635 858460815 921236666 691068520 971958656 830052209 931034890 29782593 913026618 886427961 901173845 458285597 781316778 357882228 540050097 955809346 976821962 955425420 959299034 600149184 876216564 269570860 422537394 535690648 693273335 938242136 998971059 13861753 763300208 44388459 229237098 622094089 842642681 776299530 795779835 387554405 983825123 453175602 949543984 296460787 558745008 356635834 785946935 818137833 899971829 158681964 163145582 369771892 466426000 640465223 999095438 128599225 596635969 95447828 413614213 983279244 988670020 181258457 510111211 217067181 428426091 939920822 952258664 957103441 984631332 355277658 984901594 375850631 598684128 443474710 634867687 846488978 888849181 158147630 810493022 488714444 836149576 866691341 886539667 520275312 953755595 773144524 801152987 795482971 989341173 911772905 999056002 335921832 672149010 944175998 976722936 720666689 791462978 561664410 847598238 964958471 993190063 115385965 321172769 339531910 347935776 650658824 730216712 672424733 824487314 901392846 937030273 644655339 743204997 892601953 951895996 426033459 972274924 422546338 460802264 489829824 974615732 199060018 392951907 10547472 968664029 883579803 916565970 769510149 874751408 258442962 514836318 340019325 356176706 597772477 716762119 75259241 757149654 102554932 575756320 398228961 761079442 521280202 632960667 647046563 713941052 275175468 952281340 208669003 310770806 844883003 949028472 788715353 789328452 505188748 738192050 502809296 825898938 933111784 988490971 203070629 370522149 440925985 479105254 588723084 593634193 132805898 867451175 669440196 933516998 275948062 795193471 287850462 884053760 926512941 971815481 820471052 944053058 851675292 931935039 879328641 967380939 997744889 997874468 186439736 519359187 292969840 983626897 673707296 802762896 821371189 866441544 338458620 571461664 968932008 988165873 137428679 799302166 316774100 911258864 797502773 853623526 994519266 996835858 758867183 841440483 517719606 987753933 418129697 699236942 626994662 936776864 369556274 835196959 500636896 595210687 625706332 957123383 48438863 981491270 299451696 502388368 649748354 847313160 297974027 666070109 973246858 990166724 167447850 827378775 286912111 911005784 922120659 984386588 853244015 965824999 515553751 543645287 786359737 912364844 240690787 329330831 125709528 675135136 474715747 699199814 787831316 945969022 298368741 892046698 756176816 869110724 908134396 982160223 173733182 812884930 103392146 511001345 91404811 915368970 155479843 751029330 679575017 702559470 454320607 949392513 225854885 740654388 843150073 881344227 321621991 966214866 933246313 938025627 889820099 956447210 92746666 627198618 198234772 628302735 419637506 746049737 320539462 800842613 248327328 809323879 968704146 978918589 393616644 811456883 376325748 404001140 846010979 900132384 394675258 672271198 694780313 896613390 760488634 929067627 762951130 987237314 841130048 850389167 699473456 780928681 103613773 338126760 582868158 876525131 306870463 531162335 850160954 989531413 17663032 781245049 952223884 999229827 488488626 986905341 266364601 493778321 286031810 552399337 898774856 993022737 305949405 858588849 147694690 380939496 846541426 847927154 263976786 857510702 307935888 912566002 395430286 663118676 500609184 733077557 773828790 965692136 303342404 611875288 862491840 870862697 70862507 656275352 425563755 863379594 880396266 884730113 36614115 665699294 221277649 235275372 505352008 541788583 594847020 719720874 946047881 948576938 387440116 455564535 939010489 949314418 81022167 359025164 192970801 360862194 965757219 974778158 178527453 268221669 434345650 742581419 354143913 569862489 73646242 77260116 275984156 705992478 613897293 815636940 445038051 465236018 917643657 934870192 568473231 773589211 895776679 923011870 342628336 352811921 465296386 978346162 118126129 499563580 760474118 766030817 793682882 853165337 699361991 845202473 770283093 862506086 196848865 921733473 301392959 317293264 897421649 910798942 848569493 912743970 968698123 994911106 859075808 940285094 578602125 729951734 312839703 638495489 111274365 536103119 141008198 491873530 360321616 564023047 618022858 633743847 548094692 924924301 585043878 662793794 747545087 858236684 637921049 956330498 538523053 900767085 660000184 868218627 181120386 283357095 618614783 877542401 777408257 981421820 692253296 916844894 846330789 960951381 221453385 333896371 301716124 858972576 820482054 890132432 366551389 658297893 910962638 955732141 317983892 741240720 785651141 804101530 197264487 760575982 750432738 938113261 829599280 992935795 375886568 900793232 675236316 906861598 487872302 874969926 330371850 786643970 580432324 606735419 755195469 787259267 279849237 799069357 911605949 925069006 723774109 905537570 545478477 891433145 795543538 860389278 728409094 739199714 189420085 524990860 349646142 959585303 489846202 865060221 891306681 932068612 318149847 980835490 687629487 737811019 772879014 854048263 685254639 927847008 275206963 831882322 894319730 983836848 258271283 286462177 564803042 854493379 732532723 798464516 758421641 989599780 878333131 912711374 204193681 700674342 828023462 953265223 859113880 925360788 967976929 980296126 51137804 158788337 860263544 923496971 657416719 720958163 870171715 887221350 656844144 830534861 951803411 971895601 949109209 966987169 396906100 912466810 642513906 800612021 899670056 952709588 174366064 938121983 154054771 543711840 398948021 540005254 680332347 837207772 761392138 880530486 384302117 749042988 168578590 482503196 753675950 781410857 374072222 986500139 314275140 953393434 247505680 931153724 334868215 754586633 579157964 754118189 433535852 783781849 15326379 740629739 102326517 305587341 411985460 916409172 19454405 467959702 344383107 449299330 549217057 588092259 255809594 894823501 544749692 839692299 521052219 656351017 675578334 817703184 821933376 865828778 460647164 946683394 897506819 985232245 890301904 894715716 790162549 882296291 505736471 566471782 628617259 901957835 81514454 344298826 285268381 594976211 286438155 739357502 636658660 805553860 720365411 877476702 198527476 339804783 849950545 977955436 580796695 981707978 370306333 667588103 743180026 864552200 828044724 976283013 341291809 742909198 619490167 648686678 248846672 714287432 604684596 664043229 451594891 916878692 16595064 647236081 417752929 919062513 130441641 615158830 718324711 911880223 987756174 992510000 892072223 964038375 182065793 908641514 803928034 889984613 443200171 633464568 920363224 966697311 147221434 850713321 393144765 870081733 358995973 802916451 546303073 894727576 242630851 770516407 987460087 990103931 246602216 357096432 635345054 704970409 871726821 894769529 285974726 446461478 345314945 750057095 663253305 918333405 663542392 939864799 817567201 993944041 360521584 715190099 396976850 565228062 359693130 701761847 549577692 553187107 200478904 835646989 528955158 664163946 62553664 731564727 637047400 921438348 518399304 648189955 291196355 310011597 836976203 954218177 146362003 562491059 415242830 854822543 411148476 594568484 917639260 925049800 144267472 783164457 33776839 808424433 319054435 396861002 77052568 411894497 607530911 985076411 881572926 952969898 444803720 594695085 278156185 407459583 441570582 750318132 729269271 730671936 753240124 948121129 365385069 893803032 272520018 698955852 820041570 930699271 624396496 850639947 351339899 630763409 25818400 651679190 222466415 283802309 267294864 564134937 210851085 386314256 541141942 973825128 438818 639208676 527593918 755802262 839574104 891573132 201758088 306384360 100458680 189033353 849262716 934533281 95136497 418932383 833163432 920705281 934089749 937468955 474828954 759598396 220746409 962260488 38227729 757223583 234214809 865899931 283837656 461146708 707693691 924620793 377121468 956269743 96856592 181658310 387117521 486300216 725608385 773308274 882397392 906043061 665675598 687943840 703250397 745578175 213497763 834048540 212905674 588592884 589708393 748777083 944411704 965116852 445167344 696157013 105315119 243034538 165145524 288756448 222398677 595304564 868857354 914102959 122904272 424593616 174389411 490150746 717981901 840521549 827709978 983278926 778642405 860671858 741422295 835121894 471373309 658356940 509024428 982134105 758151127 783436668 777742891 778510784 421051731 473652583 866455507 932629197 654791786 955994042 634679462 929577734 925382617 951529716 31648499 434506959 310307404 866762663 551143609 915316933 384748308 531057428 333341904 445304795 167737384 937382668 320815918 376590123 653796942 702319919 600070723 748999610 88667921 713892728 766812181 809874942 700488054 788028140 374466906 848832768 235054187 331764789 928868600 936859617 600072449 622036787 432624685 976424310 507262021 698901074 322041157 941613398 397545702 539342768 143056291 402041356 832432180 920743515 874553862 998568044 3973087 493262015 677365385 867175756 447988182 464247100 83538126 713749005 372321026 976484200 145124376 462901715 485410425 566767663 281325958 950520947 961197186 981963042 684271484 997353315 828338905 889043740 977555210 979296249 326693887 924743820 177170630 538905386 807241745 836054589 230301135 489837244 210851707 263663150 171310686 802334451 472917339 661547752 897554485 996936828 413727435 743348443 627398423 660099890 224839922 331922361 75776953 378748287 860819068 932185966 640302839 983184283 688581643 986919181 487370140 880281899 508598383 530696675 363017093 955008976 989654304 993162851 278912403 404349399 13209676 733363391 540084213 570974668 683412834 727340720 770956506 900955566 594661124 869399621 19939340 499798197 713757676 965694699 973386379 979934038 458808442 889669787 929484761 958473583 512990277 625940954 361903398 686135551 295361729 417680842 906008293 958720184 763656138 960341133 132238509 327978523 903078414 972306376 9807184 592966308 470055809 966662594 186660847 962605023 579412498 973976490 312202745 846219321 175889721 452958166 785345520 891125206 135816797 810686117 44837682 417598110 735902946 839983998 22353370 301207048 206394176 862005820 163613333 709266564 824993787 964602319 587549954 847672838 511586454 977337648 336349022 673108798 480589941 492466149 265086510 720432950 242506275 979345618 289159311 920683492 961545834 992653625 935557493 939512560 32782527 420231913 933043292 948325356 574759943 792226114 727620907 832399839 661741987 713501608 259964611 545397747 153994953 837940412 462500598 879407703 735108811 754435071 273932320 484828020 116498229 675802405 347822670 564801291 587426280 762370873 919977205 962934409 442493502 813912046 374617952 819240188 433575319 474923855 985739274 993661969 670937021 982253865 203453326 595258918 483396024 708601161 124628256 600335773 313377386 540369281 440286424 672772031 108116634 947685018 974371032 983360675 373401016 729852125 841731684 910608399 746658697 852996859 920239143 921165607 427842800 662934695 403964011 989683475 120109686 710128115 625359488 992508725 895040382 919141524 482782411 987601093 141929249 362927391 147696200 394628891 304694717 672046888 732840079 871135518 18113560 956317748 614670452 960964364 554897654 556134718 786696069 801664328 706788731 817610168 838467944 978403909 865650616 987475044 265068940 856393682 573625075 684363959 662507445 889469265 631507165 771871950 544868522 813322538 87194407 266929569 948025890 990740178 418507679 534328674 539704525 642435927 526984503 886448218 366877074 775978166 170943933 186050380 487192044 679156582 612683039 872305915 927999322 977849999 727286196 756314989 104371978 441074059 764508858 887164994 509250353 921946073 350800714 867121008 288674076 780336161 409696888 934813737 282425230 516361272 475974135 921524815 923531106 995425525 976488688 983772941 725188089 774942327 330746558 599618348 448115860 458908587 531120556 571930469 180622398 218164419 662505713 855886841 368301642 945971939 820572885 830111188 470395662 679685564 458956794 622146065 740000878 948132986 897964616 923719833 154308457 790669655 406626475 439493268 68625441 806006852 920170179 971428387 238430443 954090050 292927541 649345101 117958856 818947460 569477812 618826915 649062944 697916331 204821498 408173857 273664083 910763395 900869461 946304937 777759287 898504362 341301775 372354165 75406868 569449489 232343243 343976559 517241752 606785850 307505730 931030443 800453971 811211224 71140113 635789541 795946159 986997483 697286584 727384256 921858903 947326223 277679067 967531270 360920099 865671860 76992344 968441710 14796380 448662851 436255396 954451352 512113494 608107481 956508738 968636786 69275667 271225146 838681200 885436355 711115091 817224388 131067896 959984248 341091346 904488916 276604222 508042009 963314301 986270641 398859070 607134168 625070033 708941443 98938745 932721584 318935005 489256786 47144676 453144725 67844506 825701096 844410422 872274262 93966961 705844068 159077784 479168444 910099457 987149284 529167681 878092076 22080177 911976072 916578870 940929353 409632821 481234338 885202698 998196802 445744657 846507224 472404157 738213518 419670353 778805862 319440955 636964245 887137370 948592321 211163142 843435996 219640795 690686397 834553716 850935395 512435974 932927753 976900237 987715021 833640905 914287208 772139631 925371719 168208917 434727828 316805179 632186363 824089603 938772831 600080670 642551641 93994151 443103456 385912468 935928505 760019978 793493127 248475651 772582629 829481912 923874464 607047444 635825063 158348817 300297359 334123088 382248385 242174068 335661259 672537651 845301154 188461067 569343541 226144887 993046908 470058385 983973429 908337345 928699879 898583149 953640344 51461861 420246432 547554029 595748762 526311102 542659432 843738270 980600526 601168123 896667084 353821756 846898564 27940304 76263426 953459413 988596469 843123768 972754059 993155758 997673905 355046930 440286006 196207730 347466734 667882750 715947751 45592184 307889464 132832776 321646787 492196495 628109587 979593779 996993318 200164590 554228065 292793372 341633642 226835271 848962581 594597240 810160999 939387304 958903681 955659435 989513995 283502057 808174173 624768684 713696472 535201991 678730101 321234685 836053733 541361497 837155188 675492324 985780188 883096166 921632182 45042279 569271005 916730595 985956478 956920133 960566866 997725163 998232851 765761300 865537565 358790911 551029137 199733646 542044686 775627476 986782683 63682761 76531010 501723646 810015912 520328691 669745887 906578919 959928509 103222027 934373069 379193583 984883406 86250883 896507625 26243091 976715678 110674136 631138605 264595408 879656468 446118824 476055770 984606156 996128148 167593105 541806426 119992427 375524742 575918515 925419404 32759997 370436624 117912815 425361288 7367249 206655829 330606719 687781693 708782963 953243293 407912749 633927273 184173073 919075944 685231687 969604237 894497339 965459553 677716936 764327495 273932474 572554308 494017139 516925544 468469459 470225379 495130857 695427644 870231903 984878797 614163162 670132422 608548431 997288994 670765058 915538042 81208822 263461867 79655324 168031796 525713389 930105259 117942632 516622114 809289047 855327002 851549395 856308453 773160635 841585451 720206209 742658636 28023401 263083248 944678879 997077968 83377938 185305842 237224424 558184822 959330434 975630339 940025917 965723228 543221650 589997505 493219243 561329150 903605815 918070159 930679063 981243126 760807769 915360731 164542516 850469398 26050637 589932492 38431518 674881187 686337639 853585129 728536309 792652014 53338739 843319307 288925527 706214223 308343598 611322766 89320203 105304049 432913343 644913956 2580402 881164572 463758176 828194223 527263274 597197497 628799517 695017822 771732112 780877165 244338941 403965621 941685713 981352048 748400792 980837209 415867858 693487600 456594716 713139201 52321913 317722020 777034578 788085886 449396216 682292166 168207366 208061906 277860364 576803009 606167362 902363621 880885398 998003534 885881002 974321744 821523256 848039894 646015982 880905846 37063566 259946041 168473321 421820459 166180341 586152864 947272806 990612954 922945151 982268544 810341471 852102224 368256167 756927863 654509962 780967979 497283729 948299623 922830144 971549528 529692869 848555395 23368896 974440217 967719801 981737712 19320818 216274909 422431846 869428163 974880567 997591400 355455522 534090139 172376654 787318538 603232022 794764810 546036696 760604272 134530631 785269161 53339511 962488559 17491557 339425007 309023235 334036765 851863905 922578173 447950068 757723256 769894610 775287923 659207140 831242184 133868654 569173783 21651317 851827336 992729733 997742636 932207236 991491640 260268044 756239959 326810866 774428310 626446187 731470286 277150895 645380839 378514285 402559496 188237556 599753820 176724659 696518373 339543009 552820636 102210790 374664062 458193630 664901852 113017595 896757250 585539132 816081029 36316878 504039582 90002940 389925666 827578292 880866236 634368970 779010115 473618266 652575802 684236848 783709876 535431568 881843998 247690018 343454959 729194368 776224364 944058207 981207380 363247953 470562186 175925791 399717111 246440236 874058682 444628953 498131202 17118738 792138911 624770431 715857104 64991346 894251552 496396886 812350839 100001186 921739141 983519203 989113231 745980535 873663290 499524329 866766796 494642165 640625990 489565278 730760849 763165128 780737453 261829197 517307852 287714868 520546884 139023994 581638980 720263852 849669120 984274704 993575831 160120777 826793287 417994498 840970091 961528004 965834626 945659847 953901275 774702661 922377757 272338746 569962883 855512071 904219046 626378495 750436892 162748820 845972407 286255045 798721116 101747393 203689227 342588411 938066315 681224317 910588768 31772663 492549793 345210183 460707711 723114129 977996792 306003476 658943239 989548852 990181084 754186187 914702644 834769535 889591719 966289455 998941625 85682125 718191201 249703913 328184767 654362361 765776596 548840250 742458167 171252520 921471665 375789775 544647800 527621507 703475655 491705341 515243654 795870447 898274931 694520442 747854003 580434559 738900396 965553397 978211692 379344791 837443919 299381988 315900148 173016236 291803124 280830308 977796716 595804600 620641783 214224860 813213469 968938954 984296320 771579706 803514781 553907590 704982194 875683813 996547426 291302566 382330587 143892474 246186674 884293546 990359286 82971634 687892172 613470838 864165528 130546456 531800257 379938478 820213769 15090212 45942851 162941024 774997035 265836758 323844271 666131321 893133042 736897355 753517437 20248890 224393677 96598001 277907781 203939863 397648373 804815377 998935300 197846669 639536224 235603221 659970642 484734363 499665476 800131521 916207720 753114163 973053738 846484265 973852164 606420004 660930722 947326520 948991306 329681343 388075659 543525146 881484026 401822628 982262142 217192685 612502105 926379198 997982898 635172311 867168982 663581648 888875498 70577716 739386984 390351400 611098906 942088046 945610071 319022665 681225685 186591408 480317904 170189498 788890714 732529792 902661389 528840865 723377572 833222427 920197410 4317106 70651606 413053170 574432890 218742548 625698280 680850407 962043883 511141918 892112079 663155516 973944382 2137943 729400079 590586211 944263472 493115175 852865219 800852106 843532466 243705842 338202943 738953706 772286751 952490944 996505889 237913530 956784367 589730613 828957601 126950987 695978414 227008959 810910128 800017391 840080111 176651246 703740576 162610464 694654391 963062342 982706334 257674315 978132602 748112962 991057620 360917377 997660089 368779799 923106365 951671930 953237478 648635266 867301946 520580004 663136637 690987229 952593161 339894835 923279500 891420908 898005137 430863609 546353274 875676743 964099737 964093848 996191398 204337913 765570080 898770437 933572705 915731976 972315986 811707701 963722275 518866799 652193976 616589208 770739044 720455248 876343576 784451151 872069210 524906058 691462283 681632474 991835756 413145222 668412582 291979050 292762433 750437860 998687272 814205730 996557696 614009896 701196111 549478656 653479005 978279204 994729285 530959059 819780689 926112080 982081214 817870349 846341966 708617628 895923665 597587257 936357671 546339045 611530230 234606849 556455371 483086231 594915760 51788929 525312087 554060214 749661913 459156545 648092708 565817043 763133413 700379253 731659630 959091395 977865399 912398273 915452166 181294197 790578528 657628724 720759869 577270263 820875160 110364575 249823890 308162832 912392426 132095196 366716961 622595111 981741908 658806901 988894709 941620717 997030392 776410810 972220861 731455019 827340379 62501103 729679672 743965295 899183311 635895469 815557737 478406590 490893319 900083735 947365429 548210960 566602309 261500199 479385111 186117859 391665115 756013990 995614939 594282159 602277704 589212852 811864721 370520173 629467064 172459852 984971537 338459828 471046598 343814350 532664173 194128842 835217584 872892262 899856297 169485565 850766894 143171258 711507716 161888355 792454502 966374703 985258479 27053428 546171743 933601682 971265767 940326244 962622359 925353046 974489955 749201428 829937286 580930467 714565053 496149038 807125810 502232120 593160794 457096907 733070004 574319243 668035709 911184912 965734944 99111886 826750682 885219790 897840627 494820758 626376678 143196559 387783622 274611131 725766498 973014029 974607363 929810638 942859881 459397940 820988010 460863400 674708761 766310111 845106889 963068246 973824325 589456193 591301508 167733634 825314005 826311592 982478816 633617765 845344305 646815062 770841074 64497966 309166369 510674095 676000746 642159424 797696706 199961586 834941375 950899578 967702312 501186571 785529639 935238633 943971739 954958205 961545508 36583340 714141041 449928364 575796850 283221295 806470930 928511939 944839988 645686196 767115963 180745561 935108831 826899993 923043280 55621186 630184809 119218429 575917925 662164164 956995420 439085199 841013322 654776513 844266000 60491415 856792994 546546616 557338370 464939369 620640906 211751411 295038352 85732217 744633895 710315390 727196456 733215376 789286632 385106130 467487346 199239568 233012495 967818348 991010122 705371283 909869053 945896876 958083768 473084080 518324527 69511173 356494966 250676301 343258106 401260221 428291355 526924289 563631241 426102739 546694143 177249970 643278282 524479281 956573322 173158871 544899497 402069485 708901199 788657015 840370113 973834292 997912594 402508094 888602518 961818144 973045641 145297933 521236600 806963122 932525291 941490585 957929141 641433338 861046805 609017016 948234281 756808149 844560886 727449880 932725828 728209522 809188194 909935415 935989121 822972039 938212564 666366015 719164586 800761884 899140614 855983333 985229862 842670718 884483442 641611725 953343061 348154534 525607304 430110960 934699887 718798671 803940785 55490137 398370853 36289741 574336753 695386265 948576225 764627107 886204910 647097927 852959784 831148352 877636197 752848436 792327950 700110163 868989271 789798247 880802465 350547870 722049461 206247331 942820921 684355478 819792177 45823222 940860456 218581558 323467865 549922341 874879189 571842749 883490243 797268658 798054229 309299820 967161451 431648386 853692810 832387925 951294727 765065859 946137814 238037337 529663797 574470630 731850490 467774458 661577947 16631675 898847278 606220595 877564355 940447856 991158470 32241965 649869767 678030716 880524558 600166778 642215407 190480741 975553118 527058447 664385976 589071433 933377686 421308874 453338177 782981987 962611845 777222771 796530317 71385052 936931624 140159098 624328110 409545364 425855589 278099676 304344356 160860119 662114011 102582303 674247105 137907997 416268035 930046848 930484867 172833288 505214881 478524924 873672648 130610785 514474736 520524670 615964865 297621162 748373148 507121646 987425413 530021536 728224352 752544450 982394165 52810060 542408635 546589676 720137812 467525453 860568454 831983446 843661151 408015964 759398182 163511538 329967049 301200184 926815308 800217515 983863758 299667676 683726326 51622216 541253702 793407651 999981786 556033503 844175534 180362635 363634744 428152067 884564580 155272820 214396044 143497291 148466994 870313712 893525933 586276337 677217453 467148858 969059765 978112512 995396966 867716438 920521778 944446998 953757443 87989480 607530321 648112477 937221864 198711765 435149267 697620996 967743132 709552238 891856239 915364979 949913764 717341179 990757155 787566245 930298893 315591653 942548741 309778882 742215290 209819418 965734502 428403785 704857182 122797190 776633118 466628710 828087553 801169228 993438021 514034450 985502624 323866089 432243844 287252560 406217376 773103198 997768215 488075570 802514947 334068783 594183925 924625949 951610052 253576321 880246735 232916233 341780146 354450553 865262750 81664364 961527692 295054001 802733096 966232818 993378504 488258384 622007084 15890252 687779488 453068556 924063178 582113588 844329262 587228500 944081400 514318065 535080125 920136370 939615992 738897436 945196783 733169793 923916220 982844525 984904859 474180087 729368811 482740806 969986069 861530146 985169067 97091179 829569794 819367563 966752233 995934005 999546640 360139448 383091055 174038773 917768600 521744324 868121041 48569975 827848786 786754431 857651122 387076855 446455627 443598719 655340099 726925395 766554665 965791338 966312395 542738126 752409075 630662221 722380884 305195560 953181773 460006173 527074969 142385622 704514789 870926937 936627335 498315539 699078494 65496068 638211541 889926831 936900811 822916027 970231306 954409101 976935099 505593888 948471118 483631087 624123190 4809700 435026747 358074787 882228620 426848363 802223905 71383875 290670703 813542128 820192289 231081767 263823957 800422540 957663870 642754560 785739902 229824299 339799264 741442702 989934665 511217594 854013810 774860913 970300960 293184617 466439098 244587258 663784263 99100577 426458071 498837912 900228814 856068384 877693580 363153922 756820861 833571977 999669221 85675345 738730089 781707027 985658139 602185172 783700206 360085102 565950845 871082816 906313634 25391678 463005194 944560442 963508971 266611936 307316746 439645378 915697457 800402691 915684954 930637981 974887160 379774896 669748942 519796862 925273944 550449540 697363024 950850843 959565353 936750022 978566945 113109270 559869684 63066524 785665621 165869919 394517351 484498296 486439318 943492554 970753649 261121207 261147265 740518879 891973525 849790783 891209433 865507499 900854514 943623598 947731017 997195743 999622339 476434683 483774648 871331886 929948923 694908984 715016930 644949202 685276060 862721421 979179185 358744964 709099170 155795214 759301590 541966722 586481545 799296694 827530254 759480005 999899409 304531652 506211383 269207267 494440346 672747688 687293141 490105121 593243911 474688451 828245673 648891387 970210701 114643178 770156976 415858323 450390981 842477064 891339102 196388050 314324008 802501481 905184149 28156766 621964023 372211191 545394539 111388789 417420445 788011122 969935811 706172169 817559643 66654115 753873520 906198568 958026077 854802356 863657850 748207172 993866254 262224407 323835969 977615695 996826388 774367727 873486191 434241442 563293966 59816066 147127695 846470954 961268536 443032681 717123552 229178770 699273028 519792832 923858738 578286069 769488904 77991374 92033305 211747037 871198141 768446064 933991972 777058758 957866460 366293008 496730414 784063455 877009357 569859531 873171399 155271369 492511629 755227814 870035757 926008692 962747379 974450103 975281233 594304366 912198935 790007133 969540107 796916982 884482777 103916799 740274570 801168190 983889670 875514205 989099476 681727062 808439823 892288767 973509669 894600673 903586551 505656200 840914436 353803821 951634619 253041272 975916951 996145963 997065732 7633106 451045430 439272648 643263314 436902756 661864837 696826063 997128481 312033624 364376316 216819671 313054734 102884434 943078272 513300068 646691549 676509095 970697145 865505522 894083728 770852749 831319228 810460815 842000971 356703055 603271271 577068100 677923929 688736654 787915890 845395802 946194050 191620268 633987058 8279175 140725603 989476615 994917739 784712269 847808484 769904184 918982107 809002282 889194234 187156472 798988305 969901363 998306719 174037749 938065272 486617066 589126344 307888120 691949728 263728183 706649870 108096131 767521584 335598201 813544491 310923454 844447965 714229123 953871121 563739897 931092432 263903569 378741588 373189587 407565024 77945790 82917336 166203397 550484522 667389763 730283573 221559790 388721549 123228792 140744773 488178784 635704289 970547513 971340697 285714356 517951672 711677658 751163375 608236706 971060241 471794457 759711994 403679345 698817648 66943080 260730070 731131360 992339633 151638567 465234942 957032772 988238676 856417886 956277533 472769786 657217685 289187295 578012598 379577691 571752740 131623365 135092259 286485561 478714728 954544963 978784245 264504128 860819765 590542090 635691109 192201326 562096098 212529654 303144104 239943564 310262844 805435437 972901971 557984826 583170732 254358634 717548875 66354918 419717909 684864525 937736586 404482877 771197959 567473737 841522175 411085656 523076042 604903796 656438081 357730249 460743862 572285233 953221040 316598995 325355032 632643237 674741602 650861247 821823847 507709679 613164983 126476607 425490632 457852952 603686212 349446568 505983968 468127899 621689933 781389166 912246866 547355278 849835507 364294422 783638977 562829892 693805713 978699264 995387801 703651441 711539841 910790486 939756026 754163292 766782851 99357877 541274487 67022174 719793063 818636960 835553321 797110909 954371377 19511649 388833955 417303485 889084451 308323350 984339619 683665496 698105139 232190842 758881951 733882827 979589908 355804156 953875777 397287140 505777447 353047608 632406537 289353367 478245057 138063766 824142535 119855356 756923871 31203352 499126789 645746314 783582178 480742061 714577773 638460278 966766664 15187398 691611970 749834765 897251482 640006419 747244962 595230812 883034481 877890518 879173997 722545445 741545941 18277875 817611879 720253850 912045776 413410224 558018060 885064104 913431508 643280548 992483057 362397840 999575488 66669033 623916935 346623266 805160047 440391289 650689882 566635793 996224980 957602198 990426909 316431633 462731854 531086441 841773900 807481031 899266636 541483619 722742480 49811961 151706706 361626506 723584545 448929428 488659283 995276335 998078543 410561629 463925435 387968289 918031112 273003410 802209213 958868919 997474560 421666526 554677537 110415235 896222962 90008262 483043647 230426328 668078900 455827178 936759203 595631440 699468592 336555703 499859834 530172024 958006771 907915390 967683149 260078883 685118762 226957370 427982734 848843464 916338554 205914325 888092849 121110384 535959156 99008461 224046938 685210348 898119132 727420283 974280459 868010975 913696556 251421561 616012935 354012131 694347628 507670420 709292711 9056953 440463378 82705205 342032230 446948603 611699750 631459801 706050944 42697615 436976833 651387665 921003224 440873508 840982455 200617852 628150999 911053066 994889194 123805933 703608190 797442036 837908380 937234143 978852179 692712022 799063982 717534217 734957475 599615441 846453305 230339891 992087146 4254128 716673608 578257145 920179540 196201273 864503263 221248783 579695050 734957658 954465617 209398315 932439604 285594491 840739688 237549895 278137963 750802413 967637318 367432915 722409512 623328567 869231452 11229832 821794534 741645414 763246151 931910112 998604788 505786219 926739207 719500275 808830669 823798186 855087889 913382436 937186795 778925296 913722764 314625781 642184813 354747541 562843410 131617529 367666790 671793291 686763662 694317726 869771653 942073685 973059542 534259714 547886585 392920182 517540226 484131179 780085535 835668697 923356631 907933713 947905809 359518869 651800017 195800305 385320143 284946451 459522469 704421672 734151002 705094660 958402132 475186043 862073264 248014604 542925217 83089901 492575540 624859394 764926390 362381812 999763909 767106368 777856604 733123763 862399933 849160760 874642049 263063650 658046448 510986148 511654699 107330021 228569723 442504218 732634593 456008321 827659545 968728978 974419671 698829845 823088883 819117026 871198165 248450348 540487358 900454260 937535413 539358689 571533899 119494122 446447625 682310729 735143276 733313568 955275448 198837692 733179023 272860413 661496536 811196097 851366080 623747980 788931711 343921967 950704120 538275389 593384641 331577128 426126222 678417840 728203360 529946443 786930603 297734404 489994443 432953380 780787792 398413655 902590892 727818513 967539304 855638564 952766384 993433083 993512054 236353712 897469891 711107688 721470626 332127943 502506374 314185921 783245258 987262485 991753557 160906576 997417490 226501518 795427286 28835683 794296731 910540626 969583745 477253055 998093972 466400222 812023457 763548177 777254089 123585710 325318451 337654445 399544966 306400009 864488587 213059886 624208428 666223453 798102105 961695888 984693141 705031717 879233177 955677887 986730966 382217018 927745847 984122144 992942977 767878466 949412378 705108551 857770568 961710958 996796113 180505281 331425769 352457349 439593201 605585055 958986773 514827122 529406177 309025270 765762554 261983617 527843677 259884134 649833899 823248893 930724857 994711728 999017557 617291759 990949005 451061028 983384498 733228273 821506840 762211535 834421151 762038872 935613949 899261804 962762657 349657724 692307846 636212183 919171485 336863913 498631665 285592170 956928449 415465947 808052586 4806312 871558503 823203617 906049435 178422446 305482172 922909085 989953261 797816844 928944502 240815207 754081779 518898508 679687952 782379387 902148553 164660587 655959847 870820260 916585137 517303092 755042243 193130721 212418760 906392030 930032060 196220532 199073140 134634950 520450341 371484304 610190634 742367385 961235925 477900655 714787054 729266759 881294986 999382264 999497948 784027926 986624730 116673155 621615155 429141909 659726055 631531290 753173222 782841159 878669385 733003272 904067180 558180282 821007505 416323487 500045291 835624275 979438743 440741987 469379856 968884401 984509936 504733893 557726961 922202279 997355446 462201052 677080588 536680236 717463650 131882878 362237530 52911428 755548818 830088957 888094725 149096485 592366444 54569663 650460116 614936113 634668123 147881517 205541335 448697955 852055081 119477238 781461502 406017627 871170275 970397761 990840838 383828572 476912343 680160972 876200758 497861652 782416493 647571252 852574973 623420313 957664878 91027947 870517555 431501719 703981240 129038620 273945922 332922890 809939608 448692396 615160296 482710188 674928455 497181705 943330643 643902964 922895182 903210515 903924760 532853888 566118564 296403317 435247421 54016027 931219820 953347126 973637082 681717748 792999607 974527568 979223446 607281904 909131860 844531437 895923336 589499468 710174364 593846116 745755400 494076966 653483827 606894535 789941146 368938118 499576658 94531213 144020331 646365439 852354180 415851927 506402782 682189729 703293447 385081357 839112436 410789666 775777689 298420174 336108020 793142842 822638832 443627392 657259357 539043888 821209447 194047160 371999182 956669018 962765910 391584195 823113340 194701790 639171111 143433466 575139291 731188759 812511811 725345960 831648654 763627294 858712723 242501398 498983782 988508533 994130395 299761380 379781836 134177130 944784926 535137772 884820891 626199987 969203049 381456862 986924251 557562872 944697180 431925793 738058581 822127937 920044047 873398292 900607210 952312175 959446096 958256115 974594953 918652689 940482563 531067615 847845052 403025529 994707531 454405113 850447542 416473779 953077255 26546442 454916696 103375029 779338023 147680049 585074207 979110875 993603855 721115234 830539187 654271368 887670703 218150265 839564581 754993801 925927456 882319880 946647280 132924322 324464470 203779765 742747451 211811947 530714805 50426658 773925840 87772266 971198741 126463137 667339593 320957033 466536891 47587786 300314548 265959985 525251116 725562009 987320980 811284187 869520951 457235766 549230877 192426907 403226585 801928274 819954946 971550611 997922120 93103560 758582896 108903543 474562161 836816665 923702993 385262021 755334623 943207681 970543175 927092407 937404172 997661520 997976900 882713355 997608913 451910751 614831510 572854835 623721892 483998914 559741617 359034825 940086590 67563197 187360725 554400017 885669313 260191004 413929901 293908821 786769494 836802445 895130321 222403647 369668158 10445353 851271429 5249198 973031809 956757945 966126792 276379700 582156236 824023465 850688596 38620843 908443545 190157591 949904140 401570916 614599014 70792099 814965584 951306444 958696434 318066794 665711465 158175154 515914829 276080558 541927429 53863639 639027105 549774075 981722859 785977973 837586854 76475292 719766461 500813743 981195181 805327817 933347536 615419058 800989325 65895336 404201591 554850621 601741153 484006660 881748954 491708430 567109766 925786633 957556662 780294446 857117041 64763496 309599822 500328374 642017047 966417439 978216988 638608314 980882421 816363697 938890966 986663315 996996527 380062435 793534693 548475268 908874643 242140562 244207959 9803087 203109083 745461862 755607024 978598851 981165009 294476020 704075958 818163241 830571950 95122631 524897404 211405509 529084637 632058404 919749525 519796773 810977668 645504455 721743430 895180055 951865947 9718136 100002244 725595981 977692991 124449284 331851820 116894556 283880434 245588671 270329950 566702662 807645734 921836205 940384229 300593817 694649469 84260157 122397410 963919628 999164253 861123444 895405892 318819454 816915014 496231055 602641505 583961680 978443312 438282162 610936064 372582357 531115746 163088425 932342431 423303387 966973852 581774436 644501751 658205575 945646736 493521897 607946970 880114755 912666535 134577693 789268187 333417182 865326141 461366004 763349075 471024062 968170405 932659946 987605433 358939118 410907606 54231573 490529645 962573774 973232665 791903075 991210909 946830928 998356645 351968368 521674066 499048883 988926568 408981500 704554269 312229151 725349628 117933779 324226200 313450937 886976918 382077850 671115645 261584890 442349483 12231933 857625233 32317666 752255198 811671733 847498595 751716623 793698005 468258677 618620349 875114751 875330339 800529339 921474060 944965550 979021116 441202208 734941574 913946743 917120886 265930756 590029728 747805983 998337002 297020655 334547904 14080495 479232513 522439750 760140535 98750484 723683858 245383514 324082836 695192224 706770659 473524148 921279055 739806974 900353739 181120707 993004589 309841821 565752230 62087602 73980270 905705445 988023183 914357379 991763186 379436205 868402812 935197324 939359286 47039118 54657866 922885797 995931918 174384757 993605961 316801086 939048655 423590984 590902529 7480067 115156555 538825777 799739377 653579953 796778545 598511983 668388650 51125519 852089975 165825930 669068021 523149979 535781546 242445019 459897746 709698653 858914356 799468714 951580873 709903130 750694209 971311226 976584990 418874637 712730475 327931979 579256094 520828052 987891606 394805326 747142910 81069749 724858802 740427459 955681425 823543466 943331480 9647537 349259623 479927287 779247245 195979892 291323360 639181704 823339633 172322420 539100436 93926012 531346948 281997900 708831809 20454172 908417409 158705666 217055104 843832375 920995298 510918680 899426801 485903763 773554717 527395107 563669991 959344833 990496138 150298382 733713600 185841516 877257603 528585266 647805407 374643889 449585680 520850456 833791762 43328062 979904584 644993003 833658339 873970909 922406748 190469375 690006717 501633492 506198038 555339003 869587564 492475167 644764855 18499399 695187912 184516259 408594540 623174994 744426336 832501148 962685816 471071184 977116000 267470700 704692508 735139454 799255455 315332720 350004614 231660075 375202102 244741531 845745706 160697300 472028021 676408429 864339250 858351351 894979937 900787890 927105069 765332777 924184589 216107580 618283785 67725319 905784444 731900646 753876948 547804756 834454270 67758612 113886018 937058742 965157030 233087018 907797765 127587489 798904316 187564299 378039358 327089506 636397830 492429362 847873146 616972906 952258799 784896789 886261500 331353603 585237542 940584695 952077137 514395267 777936620 221575724 646512525 671967174 783904613 184106912 657876085 404023576 430414067 336415023 982441223 270494856 862121160 496078924 700794113 672692389 823430966 967987945 970461332 981053081 986643187 101720487 519803197 155323371 179983818 42767781 953592366 20982503 658065945 383492500 785196311 828894028 957313530 683586383 705167867 114888164 256747434 795782438 861957109 218107885 600925584 350376103 958497338 145088041 278484579 811787672 845654894 629979746 776117644 506940764 902492212 882887528 989594903 834590370 951402513 726815761 954151819 473951826 791718902 88722199 731889711 574696941 844979532 148509817 905089152 680679679 732714662 633132670 980841689 990230529 993434969 467542951 666645003 205230859 878759584 773127605 820446460 620683976 698352519 785213867 787217530 12081790 908496190 501735856 857077926 277232964 653269678 711144368 923961518 658499114 686320386 581425138 865471674 150471714 908336988 656329522 844672009 832253522 961206215 213680040 812245809 455948388 493548118 544998990 663601446 674645270 962463069 273151568 630738838 956425317 985454614 695920026 858942241 26708802 971328442 193271261 982838234 314961058 611510252 11622662 764720883 671381298 834243446 120711720 264970663 695194358 742925793 132982456 541095091 880631764 899358395 122963279 619163909 121472307 255060985 287004509 303982210 316137267 950185139 837093682 941177705 519390380 670824827 520701698 899001725 170244813 768796579 74205223 625126645 105072482 434535287 657512190 674827129 609479950 692342050 348266085 860548108 718434433 902803029 176845822 639438566 168819810 384795999 266226765 718631786 630047869 915469688 57760136 378069593 626041414 944883989 333726812 464106539 245304471 847742320 31777083 58734056 105443011 959973649 947624016 958730441 87700697 877110057 332976515 688566857 339440947 782199168 522634370 878696392 944857887 987202286 850730934 957897827 677958798 983785055 46013137 814495886 475694211 692570880 70131701 249089443 866273474 917077114 329575176 384065297 538819712 763690057 298104821 644130451 992219263 998919917 338427798 791372955 375440774 403926029 619250117 799400066 606317932 692591631 762679438 978405005 778550584 893362873 605177058 756216636 830543307 979192949 69985169 410770762 369763581 653926911 169423813 277677335 226669990 558767658 578262573 903945911 445871917 573969137 727623373 809410160 450325991 517105767 55147297 290154816 196560699 527186241 763828073 881888976 323535434 370818178 142851222 908610483 258942369 943187634 221590306 865069419 870704022 993852236 56202851 97932698 840932509 856834904 62889688 733723137 817389256 833000166 804289042 914004703 56924733 488454383 250203220 468055187 422278481 669300737 617604953 883456514 172998021 431143681 536364605 752966882 817660835 827719817 636133058 814064028 210760631 820659887 982318378 993735407 832671480 840635451 758781101 996887393 952413379 970708496 603509351 967899366 927064014 987965006 786693705 878236899 353178477 775124748 118304257 828592571 41048742 351356503 533550092 872984401 434856916 449315772 333599876 937473388 420123785 610636524 914647663 978110923 799484180 974732470 148990583 341485792 433375859 832138303 388048482 659186006 533431551 665346865 943625564 999395789 961968659 986497252 772691970 785374862 714935758 837197135 162850978 194414815 189659925 605525763 503198922 868771300 616804509 723164992 321309634 721355253 229897851 809881410 399258077 748916664 981148875 982138691 976584067 988880368 624029396 684847313 583965690 919857685 57001151 622764383 135611004 840166087 107776605 826222775 437908270 785851840 713274471 986732417 501050774 783457757 475078906 898532045 450521760 871959123 916703133 918077890 382074504 712028636 991076660 999158842 567091368 906143151 943040404 945451014 533566932 570146552 80821725 130814921 882954302 954994703 987161347 994957216 70782746 574194140 826293395 831787816 749025704 814629303 376442680 640002491 316788484 321982860 197848246 284579727 301505904 931027622 347303536 497803338 327435892 815512644 995672461 999809789 163183071 593971303 38726948 142021683 768232572 840823827 304384727 620290829 655882565 972338544 210712848 872903456 257697440 495696920 564560613 605684996 606655774 904283032 960681624 971986532 429243877 810816411 700346887 936679438 992529040 998402390 645380539 681189911 5897044 353651739 90260297 339254461 666634734 812328274 693059853 889148519 621583712 875180929 678439282 771799797 146369298 965742613 396674114 410200543 256891620 451021377 916806445 921038879 1612312 458032674 870291231 881874095 423944326 749660655 451184808 728886361 609097679 812344239 612931813 830626544 458716052 756012839 613445249 767125847 995374497 999131835 245694222 589828576 781194920 852893044 86318739 707347525 751788246 769094670 822454644 854313895 296893509 867402778 902142857 930199738 77690446 303625239 339265492 392184532 491155086 978770027 463697436 962641691 487304618 805035402 484899193 807973039 237418540 753859516 372100937 492103355 808715938 980841770 577069396 721441556 96187997 112014604 430983071 874526584 232193403 763899383 831907689 871766465 970351809 997439288 395327766 760856172 992983164 995526221 781258141 997549557 259388734 956377765 909013005 959997738 652830197 902658657 710503097 810940959 305223936 747356553 556494522 838476495 357319170 571016930 779014904 953595202 630516813 850534710 975037075 977710769 179539081 199266020 877025828 949009480 913450370 984216720 631209664 658084801 479322607 738132159 205002133 904496281 866150246 922932667 274278524 647413101 691455036 855154278 566973327 824165415 568543828 720120579 541132240 779008178 104450966 619188080 342481895 764048134 841341234 866653631 790068899 857951977 880916801 908393626 889156566 909615277 405919606 625514127 165271836 845699851 132434205 587639906 901209795 944991620 513994663 687994140 309271788 739119966 657613747 723399974 285969513 908158260 823963443 838052083 487236286 924211689 947313279 988144256 72846572 449607260 769575833 839974141 507659052 701947165 602757317 789415143 807330590 900146145 844733600 919703714 990477044 999967003 359209690 394175207 219148048 523650095 336251561 740712699 585086053 605485153 954138055 981035810 49360442 153859174 841977487 952891484 191595645 702083668 183800806 200986977 319751077 890211255 51779427 535198616 629812358 688096519 879530063 891011938 722101080 783412240 51748082 824153313 258322478 262252876 925589323 966287763 161878231 731012552 426059060 675150645 395866810 666349080 180612238 382623310 517388096 551465104 91522781 966680328 136443960 254240746 957629078 987271175 612790760 656845266 361881935 958268757 909928443 993136663 143528027 516753761 239789470 505153066 61062503 187682832 897602636 960037704 264651730 647380001 642000613 705635428 558521511 796832342 506544278 632521244 876675879 968827977 521335852 931043187 655413027 934328634 188454109 726643967 885203115 999396354 688710777 696394526 516976062 921283331 721630481 977230062 434292440 670016025 249260448 669876190 728898722 758889103 538414516 871459799 683933099 859664637 912703161 971029026 55751378 368119510 887481607 913491818 566229387 944341478 845720667 987247894 662668497 905810840 921079990 976837991 41474493 332779182 844527453 878284823 869056006 902417087 3892513 377355141 252556865 842819128 61546148 478453014 674727298 840150873 599871118 832888301 617352970 877381572 525667395 854355741 523918854 659762868 576500291 730570325 520044207 770924269 575606155 855144860 11095396 356187777 365805173 507626279 710746316 796683477 446197380 568444189 951481105 967904106 222561995 242935702 589579191 707513835 238963251 632974513 421658762 437334927 939933439 970093271 481214374 488498205 910979061 946944199 399672954 826177080 71618354 863367483 228535753 495277970 766196824 866395320 544094141 759322058 536951994 742023891 50215497 773084216 274669666 293369254 433355568 630585585 652175389 786112355 666949087 700241475 795080560 894639411 808285240 994306784 76107693 777121666 889542832 983717174 943321443 992822670 240267029 732590345 283140984 375680256 175507095 261927083 596816176 626866290 634921920 725455561 322256456 876937541 871794970 942725403 676966784 885828407 650874075 719961248 203402665 921714518 636103956 691283623 895353301 927235875 161081732 414670702 447284849 784059723 924512586 984377064 898359073 940216079 726337347 951574235 752688050 981542959 523911395 989102350 806720892 869300383 980844769 995828394 175696269 801243287 675047059 982364265 813322678 936356189 291348925 918168562 640531102 814485295 388092030 493520672 507371952 667040453 49651257 541930103 96279373 384293496 91603021 796603093 875140908 992066472 693465541 868732514 685402243 896703481 675662480 818375723 486482942 794491783 879947202 993439984 936366859 991533612 365966285 649791106 97617455 824600157 709290162 796999108 744332254 939610630 91513731 955833014 970861391 988860904 337543039 513219101 389764598 473874386 299444997 687228971 284040925 568717853 963597119 986208391 776053447 894203468 935057955 997746662 552632037 886571730 784949432 974148800 972570678 974376207 462513096 808347471 104908356 171087235 384327972 637112191 334495484 904902885 368018800 402831324 502120641 574368356 610426367 989920885 342210054 600614010 481371419 881800826 155347597 996859794 956159746 957877998 537424590 575171190 276419655 646917919 93607024 94763143 686250639 756433443 808025965 987339217 654744745 896676832 896907493 999410667 336992409 855251891 651772996 974906615 700710889 704349742 236617935 764332662 344556954 970615064 996185046 997456925 469347461 878986029 269436841 582870705 878109152 997305693 698890799 791744395 303534179 445632665 417868533 521762870 18023516 794811904 449259990 863365790 256583612 521382203 36090520 168486404 202034118 613024903 13664841 306976472 502734204 588858869 203175960 369090728 656959957 842430254 853690060 916790876 520899250 681838958 239242778 338780136 868270162 926021882 938851168 997495055 595900006 852648368 719408166 862385695 887532411 983269902 946148178 979482749 190418257 280741412 217451456 741046823 432249411 549267517 774619842 975791027 279187262 995929209 622522887 774013088 191840511 403801619 48226203 381990472 417587897 481750938 11890055 179627026 89900399 625572854 631331883 942381383 750393974 941484675 80785595 912712339 739618352 892928471 944593384 989881532 346082292 639709522 768536422 923930774 889680638 960511987 727436688 798087798 157042507 439117442 841396513 952657204 609839515 747332971 852380035 863378126 431475347 620904506 65995664 326497588 590061506 704056874 69963078 335023126 267734055 381700533 599951053 725451940 428776198 644833435 188857981 902697241 326830177 392947712 175279049 303134390 167063860 999256926 808932657 875021962 914676411 994644027 101488938 563625343 790587987 949852495 704768777 740157918 431274617 889533729 759306549 919181795 974501056 994721594 667168306 885648286 980340733 994454847 365769948 634210273 884458046 980681104 161547240 846954683 100425374 421499470 70640490 771314905 795933511 838808209 869944057 914175534 354302861 688521923 105722849 129544841 2057285 343629059 230367939 510850894 587670537 965797341 976732584 977536428 371754150 987657763 191743621 503105937 684538932 859688656 486898489 673080588 405504573 997848417 725346464 754217732 156290394 878657672 914216132 936752752 406402761 687697572 967248466 979118624 202425870 338732865 978040135 991624843 30683086 444046679 956726563 993420245 471557808 653585032 116690651 447804021 865682869 893128982 864098075 877126445 183184662 781329291 506417704 859711397 556216173 685074689 263274441 823277122 266496456 543166759 332403804 689921284 872983158 881166148 630109702 860681912 920057561 970995025 577184578 959695788 354643971 831620650 518443310 737908873 774791201 783592114 542552497 836075669 313972030 487377524 665853198 790878836 466340321 534441599 669342790 978379724 391267732 489971313 696294010 993780051 533514179 684572407 906397242 973347935 911512453 994206728 161671875 436758757 438527449 949910660 993697000 997223936 926148720 933125332 2740625 105359745 268558879 558861858 156371348 370980676 662061866 740004652 845168431 951629169 639141987 650235044 246196923 927829396 133679916 485081712 294935160 794875375 628764561 930260980 6277517 854246835 96920034 474639078 25713282 721017253 21602381 129668606 761028934 969887100 132165317 901749311 183022772 761924087 970049897 998643891 263225893 389084399 655871204 658710428 144182225 848695163 697109280 856521387 935974679 976834497 701868510 962821131 424839991 628265233 154906701 600333738 958049753 995475752 621867878 675502115 263932 621677062 951453464 989001309 992962696 996879833 968941225 997401757 13291970 495910293 305246079 428459833 757119505 839466328 450793579 484572631 74848328 629836864 476765461 638447278 565679744 984453961 265848585 499063061 55404368 527852281 962308258 981138388 594361237 763063504 121108213 184924004 382525157 643253180 915852538 942367626 873192945 922962981 494509569 606647962 202910323 379391574 105756705 680502946 322265707 517280591 331819995 378240911 881752779 928088831 137378459 620017853 4741128 731171846 33811918 597209375 177559691 536640368 823899341 961907388 402794231 510964176 872339509 975045822 245880845 513329336 345229008 837698913 320661723 555763311 24582614 540273704 75363115 511653593 949449615 992588926 825143885 870937269 329689617 917081441 705692689 780506494 129438832 270679978 802626006 997725954 425399089 539453388 787537789 800924124 423072308 650876960 816858221 893367468 235982700 272883101 812309858 817220222 310439516 644881691 779913987 838739767 904390466 938231249 222974146 886633104 51642072 468467745 220419325 964080667 708140310 724645304 365495945 683379237 185967510 805545331 590787035 997069336 645238614 760247687 552657655 850457268 976860093 998518244 984829170 993767159 792715360 795168335 957328998 975822022 179030095 914856261 613584292 760982598 473475884 735467784 767781117 995776030 886552229 944652348 22187721 253149021 889570811 964838791 361146537 440304549 854581139 954170506 157647776 550175367 264888923 405228412 845005411 877644761 363508840 398541175 653780735 857197735 668593415 778547111 935876946 972317999 435695238 644364210 375827959 378291555 68826579 633473427 230159740 742850745 476871811 872935764 828425627 857881679 78202249 732164115 771811512 993295793 702027704 862829627 522932146 630698769 156136059 835754593 748764355 989644546 361569152 574671437 907832815 993113788 235384597 831102090 543567682 679983040 419323736 543613674 295854581 598544643 853087085 870178556 799826714 957119378 331007052 676342991 980467969 999446043 249236327 720874337 173969555 613385606 240890750 316220766 400942862 963999099 925924813 977135047 257042094 279301174 63535425 954311986 441249779 646210290 207863730 230742369 304547815 496292649 387675128 699226101 329167003 548709359 212560685 595688317 276483316 989015945 225892315 655115857 826822539 842842566 519009335 942518457 161494212 973291356 168948885 909684135 170320478 360638798 162007801 288643688 187238365 842706393 795073361 986657635 620021417 623421184 197078872 967970610 264295990 413124237 189751722 875047156 46563044 417270742 597872169 849892374 931362781 952665808 907171177 932047693 41745599 415090859 202370392 709338783 877396218 894415667 250949241 636665637 494615975 810431567 401910864 410323385 143021956 477196982 552977301 938854178 833912548 872020504 483487662 864352291 206980708 666591844 330509130 731816452 970684898 993607238 498091165 691457688 156700967 888387505 831375893 916630361 254386677 405091968 675395137 686025871 566820875 698297785 451972170 474649854 667154500 855548518 708999593 759895075 314924546 547406735 976897089 998061214 87823862 182492097 733329766 950808670 833411010 941673648 992835516 999494300 738227607 851962997 410338812 636324998 548648006 820929987 831612141 845739955 934658176 956762500 138046648 824435442 794161934 951049151 981072848 981993454 539067289 657996891 569219064 678439690 826064755 990945639 181803457 868522043 36756605 333918336 911600975 995759479 140218125 154514143 285137454 317472542 596167476 772687467 525880021 838161807 538939093 960018963 925462044 951727664 716641822 954816496 798697260 898521394 406258051 407491887 287787675 870871608 268289046 910001203 87660418 930364944 500388793 976427165 96456559 824876179 301515468 804044409 55463924 597892194 916535792 959726037 283500858 542856257 433941084 972682965 773379924 817668605 657688880 832950059 387417667 714479666 10555654 29560737 755103945 918889562 259163211 418612429 342862237 627484194 388890908 539412439 564623625 951128643 654455630 691324794 529804081 954420297 192639483 583976810 317531259 644099208 943591825 953144865 65061594 279889359 55213779 639669533 26420991 907242044 985132705 990270278 606553471 888851187 869107087 988656976 571240052 905389354 366644679 391920267 565131792 580746861 781203132 861669386 269151098 506959167 677664055 719926572 42221990 927254084 910437539 995784782 235068146 441397735 829819535 951475995 722993451 885910572 127525301 425012676 754589926 843347152 582829671 899120205 65447532 395379968 466021093 861610859 366229018 473430745 681921680 962188951 694520498 700443284 523377754 622263846 731418123 769429913 495720617 852643326 2806199 911613382 685915549 862825231 666926040 887280742 383329710 822162489 341164818 768300515 979826949 990903946 347280666 591952016 238330204 651815196 744265365 897455223 160989901 215661114 567088966 891636932 121122491 580715235 811043318 821309049 83922980 180260706 360537232 985244948 37920924 546706463 190278296 894285790 961439210 965954846 829887016 950075466 854084245 879636149 671849302 974159486 695763458 751737774 628395210 691977977 892585515 924849928 389841384 558456022 726386789 933652868 949944477 973468430 707832141 900374935 73636345 688768592 952174603 964219953 802541560 830884180 960118636 969572398 267699082 460916205 252349489 333637422 172279848 433412779 25555214 353429313 49590863 635314268 678057567 847885742 611332863 820131168 523845974 681901370 716735982 724747476 462563758 629595915 247510248 890604420 674473296 768745041 777675461 968228717 197843204 573106397 439854586 698871111 124103689 579529466 656223406 932778059 850836909 886901817 243007181 661681410 389376600 513302199 693467635 944072316 875757386 933995940 814089996 904180202 818963461 984735442 108053903 813228925 402916133 572039679 525094115 695419747 750080477 980144692 477842645 967042633 228644836 564739859 208278782 687810038 578795877 813818346 887865044 897732599 545869963 754233463 425420829 855056447 396054338 840124520 207689579 254272743 717672243 790499808 95558639 992976998 902413087 932452948 655453475 689142965 294407650 425673796 522465758 922947423 435165234 605000214 638062917 872291918 383331228 938899899 672608185 715928797 346999356 555269134 37630422 173079847 598688615 739320104 614549404 874425644 864141870 937820983 349577523 555119866 49405720 157493964 946426273 997371595 39808255 592641645 713798978 897068192 733488667 888441648 856644358 973375572 439999178 756068905 369999433 514147527 787506387 877671674 54540840 832933569 395602815 978208695 224730393 244347252 78031659 787400379 652103995 940820981 369215385 578568903 502030475 597280676 374951125 593342072 34948394 702423748 966457842 977094581 701966948 792989569 879575689 947716793 57297530 210234414 60444472 665707852 713984289 926889680 769190802 981191467 430401331 624366748 646775490 736138231 280312183 820713555 561976215 788964871 452915561 782220820 857952745 974962606 158119855 403577194 306010272 346332099 578683682 704095278 535767856 942511552 443726608 775964089 444228042 828090657 147934651 735494125 952877877 963421808 782784084 811763960 525016589 981364027 438856117 658783810 532997449 831396280 6256875 823288194 600322632 758113489 110778270 975719425 869721196 905363564 417946712 539407581 128477579 309746195 521629421 761873486 107836539 181570648 542204332 686617399 813089362 924026615 702728963 854623836 65112727 837136323 968110135 979471106 429819351 825555518 293093154 658213608 829051004 996385490 215713155 465578606 187185977 891340919 467899420 475212339 92144982 612991810 923511835 968214228 663530351 755484760 233913274 806400844 645666322 646027833 930753269 940904346 419840345 969505897 159609007 514873586 599244246 660231458 354676315 368446959 603987160 667111626 196168452 532575744 258751341 888396557 501497925 778535492 254913566 827479319 386230889 638121795 386906990 443205432 776027271 889803157 658413960 889826564 531084438 653910935 667659967 695263215 133300574 189263361 901329711 912164396 865225897 892301987 394996283 528872204 169574021 458171922 49518226 818356192 391304465 897780620 947420389 953315703 803993275 935607589 510198732 696425441 859303564 965765266 325053112 502153958 860719502 962696583 772157507 828877557 575178200 786441112 268665382 932866182 484589840 634426968 59477556 394124331 18361041 808242204 134082918 996592412 285003708 820728176 797902430 811402843 165002895 411349012 476369823 892776757 139675670 222614478 568236431 719790095 550969285 936381675 430093236 634712275 187360420 903202572 323432711 880868898 963367753 982629314 789913613 801395686 206497227 802677613 768350638 987076200 441026443 522676646 185514397 968781207 47614100 467436891 192293393 587662179 594292126 697141107 478542574 668301299 766001499 878667569 420064419 726733060 537907496 772500405 238362559 712193190 463904070 872839498 988489137 991428563 108882577 816529568 841794766 951314978 289683840 805937902 981638139 987178879 365349000 939417266 955574782 961560741 524584865 532468834 719632894 804915767 731282484 866307002 1421426 225059135 291263854 845268753 524972827 882520899 54121313 548522595 707084455 774349537 403777561 965946130 465514799 549318282 797969533 942136541 561380396 662279976 141612060 226373920 713534448 754898177 511358472 617086619 586328453 689917670 868752454 913333296 676045579 963758964 345017801 489026505 924492769 969376430 903091542 924265554 178551034 362109427 5397945 622967198 512102388 714905545 590265847 646864815 212012047 702591695 47971915 222038248 568591813 688123906 476416239 828534853 28776012 418660191 441241930 757027422 958673744 975843428 100234983 489803080 632717326 792380737 674679736 704424238 622469889 628258141 420623475 763553525 245687640 788569019 626500903 790532463 839094012 859054540 438344362 791514624 527307638 594751686 824289044 887739242 20362211 790604537 479390798 868351724 739291335 943769291 210122813 549972236 345878805 969239873 434545199 635335744 278120616 382995232 88402373 205331804 646810809 948227848 225833461 472643856 999816037 999874606 333989895 933651929 800593160 865265291 411029655 504751221 76719714 186186914 229748914 683237939 414774653 438659495 391553458 776814608 188637492 315368669 431510596 793159775 256755721 328586422 709702 724947600 487463116 787751302 960787539 977078521 705734839 908388481 708664773 725003795 829132104 951053094 336469379 511152119 120141158 160987696 300133645 770723628 515108560 680726801 716721606 829205071 309660265 934797924 895905696 953414296 293617173 899666669 236951045 610941116 643354669 774230571 670724830 685784351 738841718 974336525 547119100 559310982 607987270 622070917 778403660 851910829 713586078 892436979 650964760 873783695 875780358 982641073 29124254 922499607 980342506 985574205 384522446 656343704 758829000 917463679 562476780 725027453 461181152 902934774 413312453 619674704 803206247 933215709 431126712 983993123 788472208 807489777 402738383 434059541 731995222 936575254 167990485 610940750 447181176 636596571 93791998 695545883 467910017 520353658 610309131 750776158 866221965 911891312 197325351 227669034 989895647 991265574 726816541 951905870 632042223 677510928 217870171 428445865 532972074 621928592 295206630 378784987 657393993 950328103 623044244 931419755 303620422 545000039 478347675 504353532 744690216 819320359 251623007 582387172 579441925 804844510 533545424 571486451 763589629 969434604 345867566 589679630 131885461 650376864 647101210 854559333 555466475 980921881 654442449 750147085 901561132 910862162 843368567 955892914 608808514 734676656 14147927 151941020 565251445 902399222 668567921 933247918 346660825 844666079 656101185 788563527 141327678 994047096 410449942 857791986 349264951 772120288 861502545 915683946 637411978 672120411 656289918 754711546 199471514 623357416 522063422 893257014 686341182 860322511 181739067 544616403 578444462 997787161 792334463 936989335 629980207 685342412 576439598 674427500 297561807 341511998 956447236 961407023 7127200 116968131 877897282 979786364 527100865 938649341 874786539 900040392 491072841 714820375 245856965 314353656 11881478 522117959 178448548 345848445 172334040 800963805 290041682 780768515 451427561 583574305 51718493 892970292 215831125 553683959 892060913 905929030 367721411 675471869 642911977 961825304 513670318 640950734 963333317 995611503 658715482 754612077 903075075 984965449 57998323 989510675 802809468 885245352 78637106 239933375 569592230 832016354 882981428 982107857 32842866 374463917 87097015 98802615 256752138 271227892 479325445 537065413 267458457 890214875 999886457 999888123 123623194 446382806 871258136 986158084 552819542 676192734 448615181 533199753 963515153 969632977 237112834 533747101 733664283 825953646 635622637 921750611 244662616 989167849 944433229 971359236 46375990 187352905 988430199 997227119 396726965 517459807 327171343 664341587 81253423 928051027 390190885 763317508 646950927 894696113 380983739 659316040 351610555 956796172 269499014 582982845 778454990 976642613 166038896 818670143 900522136 902097719 752867354 980043894 38676195 639315208 704740101 816489938 339708721 636976082 325022568 579356484 97901267 936737510 251913834 597191687 825488464 938392950 49139933 747272249 293491069 875733447 796102051 804631181 714754413 818570310 897904153 958626270 267229414 396089076 365179532 778544235 117134861 358293396 10991788 697943628 502384669 770665718 736300651 795064883 681748918 995371528 481767446 691418499 304162062 378827262 560231810 955835443 610403538 619588480 249972211 567834797 543890585 731039822 458450146 477613353 167914754 906249719 557363599 577994658 464852709 777396642 429961837 721796466 946004349 947820170 296190725 441746186 794425017 998623198 585165557 935542905 198557389 416331781 438586705 849778640 298349099 573180945 804845997 905450065 776135727 864876053 774715670 899702199 864744019 908858414 37408135 406894172 586807062 591056961 456675892 973742115 857705364 973674261 336041795 727840320 553129279 877771980 150661192 757565131 912447071 978479015 481176376 958245479 993173249 999212956 370465452 870459494 321701525 762083723 311767067 449568596 335545701 529471441 566246029 876120867 528811890 759079554 541903546 906765630 12090808 818990194 16609917 588128689 272621815 871685031 536229595 782696801 409129576 882964177 352768732 584241387 734291518 809198661 874186950 937739165 630057887 936481474 770776692 786701421 510566768 736598245 938016316 961596764 653021750 858865737 17917020 797747653 666184981 681268721 826449186 972113110 616503872 760128339 851085412 958958918 986106803 989350936 572167302 683769231 338532434 840816564 221106335 500073383 257890116 848643895 987253294 988934305 733549628 761365853 348807438 874638928 815555030 916484927 573922438 775505050 722716503 804414337 821427049 846844357 209603387 349112254 140992884 704304883 535535731 729066224 484745637 857617182 146532031 321108063 808214660 810446495 225592237 525147413 159040191 895178812 185308859 894015979 601619742 763531235 38440026 118648370 402366529 623228240 762414761 784953099 372335460 579266341 822081907 912297805 140934857 776009083 645578831 735992326 541949371 632181730 698722039 755425006 191856017 917771801 544315821 688809284 93891046 242044378 649551064 947657093 764702773 913407651 731249383 814883002 466736993 514917426 871202699 880093043 128133361 592051129 878567393 894420429 4687608 613967182 455567791 779039169 669338506 688292939 713357141 965391838 789502037 914385914 118007011 796872795 411963508 994103035 310374999 610260842 213083752 543666376 898004005 984437494 458433250 857266076 2383716 826432258 306280641 959736380 296706679 789445443 84156029 151262402 190579162 790212104 316392661 966982794 437094678 650592978 993826522 997528362 70237322 752048978 882381499 968475854 652336790 764648839 877088353 913114312 752799273 893018447 748721291 915009597 234784835 429074674 673991641 751811893 860884111 960803352 822352250 885431296 809995750 916447500 497444907 805904565 32479112 430317990 956109613 981086391 814098113 863050712 546610444 976594921 396032791 570771395 105489185 145518009 361380050 636161083 423090905 949279865 467205822 739089805 401248442 919976076 146252904 891704808 223323661 525040153 148070596 582033972 651844111 653727483 698360027 768767671 151894111 406834877 541653054 543757254 228526416 535908001 703240838 830742791 374507641 754385308 418544817 610750471 629263552 775879193 808273067 837762859 49501482 751518253 849401198 864968983 328606837 861230977 494362362 702881782 635981760 729482017 124006570 232079106 420299254 613166079 571902296 834662081 119339821 436922870 315858373 581690851 745708720 904609078 225521890 738305922 542690934 861466920 163070045 171292632 697461113 815206279 662493533 879710206 683800988 955067082 216564172 627721280 52324556 569257180 229876550 519719962 665945260 863007525 178763303 979056999 326717833 576946485 862689339 932387884 848506787 962386071 920904367 990790537 445092517 875215860 659909823 675652777 804128062 856079462 214776945 754621611 238477394 797237256 344787882 380921208 916201134 925220115 631909913 734297968 179544904 482305326 472478199 498919461 636472408 716110967 492547642 854324600 811844320 987396843 586735196 787377245 584778371 886310792 637358129 680387360 741325104 980576279 863195295 870188484 150587349 966095629 717977855 826703679 26646190 297356479 276163435 410028027 558383223 772528340 702946780 824953507 316930549 800014975 154392119 969546254 162144772 309475576 504476530 531144913 703194986 790216774 182447528 335913942 618401534 665190990 485587162 972867862 576502264 737599822 423839501 496100823 848732039 967513873 786794805 854395877 831383217 956690055 827888893 858792321 791192141 962871923 793204409 895478368 241074398 994873646 394753325 804995949 65854937 988291980 143854341 619206887 595983179 812968467 208125398 208563344 132499582 262132951 662870992 691960136 999921093 999947740 59899525 316725912 140936245 738005821 777989962 998403820 557585960 934089804 415597020 937763386 501529566 808435496 255828893 469465407 332755103 753090495 199427704 811030879 490214743 876870890 180601786 710667764 289200924 665320550 204977494 920122261 605598467 804909096 423327985 898930064 506535202 580309362 586606174 843527100 335954555 624920729 53195059 284217458 653020547 802622536 167829517 362991724 79532 486348291 664102171 795549843 766801448 943445170 114692213 751196511 605415380 725200747 880836438 987313475 254235287 828827982 802044769 913449709 984075742 992572899 193165157 549939322 420489940 683660683 300707971 938527862 440299961 717116046 937916336 969454890 68423856 391754343 42686990 846832415 763647269 766950217 434009384 676772696 915971834 922705223 110885000 390598909 625643409 694997813 851339180 961117712 589031531 937968785 653743506 835182680 815021632 910820234 829263834 916304815 882158029 917083342 635124075 761201872 783989370 882470164 648650050 911102749 64985150 483789083 305890872 548573962 141062491 484490355 70537296 782551183 36809071 620505764 238539744 252008507 779019101 827143781 844934203 979421590 744694099 981329883 766283382 976675003 700546740 817021981 102238225 339592739 69201463 238057352 268853057 920111379 239919141 895279863 191434526 953960970 328246357 965516117 370483771 444323000 252576882 452075055 323117020 483134638 187984590 433583668 868256866 930501338 235590616 847193936 794792640 958282123 768317389 937220845 539801798 828174574 168019100 905591188 912725260 959387844 195914825 416400284 661440479 711983483 754017348 996383433 883515497 975356433 786915360 877876189 162981863 387805301 803646042 829916992 280323528 663949779 250911367 875041788 396339935 873981965 286810290 587268841 625280179 935088923 565711425 965724258 534422685 822266733 477841969 513998562 832424443 868327051 820438958 970316917 315197584 953711519 824124849 946257715 173517083 873121716 758261207 817747167 909680819 952913153 514186397 850417868 531078810 756324964 19505068 258616438 863939759 999908657 204872039 828186277 583126870 805933817 434541656 901182518 327439078 589882862 538350080 655342737 505758556 776930543 66905591 648949161 500560327 705089901 316700569 360208746 15229516 900119347 224281781 279846721 218455057 704140914 199483585 518174669 42077975 70094483 752676318 935782269 940712198 969811808 596682548 710289986 160141460 747060486 126439590 711868460 180867028 400910443 456739746 498622906 836268076 859337355 380862016 508585615 982909166 983146499 253052159 613537311 650045683 740647638 513372518 700810267 354507505 529070543 203838433 346238377 508638616 930684884 912529385 989353696 872187608 913593998 745756133 977718341 877937782 926281661 317742577 968791409 771282833 922510138 449577595 806354730 717286751 951833088 664608657 843821003 730717781 894928543 60168747 856318239 8370936 152495058 22899749 887362964 400145609 476143367 665526840 844590117 49028599 171596765 279522964 358651610 590135566 679777397 271470964 577416686 256563447 624749950 933230228 943832937 124521176 689975010 542812069 809449249 259667267 473613959 597569599 647900399 72876495 700179979 231026140 293570948 957665916 974828301 712854549 979083997 412468978 822056402 630599543 835607065 861246938 864346942 502975438 905438982 200685098 638521864 851104837 937638964 607839729 971193846 534950973 538723810 221873373 510158281 763898665 984504843 479805164 811893932 822938850 929660502 437740929 914695939 616917789 927052661 110658256 507516181 132531335 390515017 990786788 993576966 413628756 662845276 496257440 816446760 439616614 897947005 832732003 853925102 178549792 839402086 217427505 789378609 490664117 854376683 165147922 383893914 19582086 745803399 531950835 686224497 233764202 447059395 442917887 847055179 949788113 981077623 163639955 235255914 180441192 616755526 34408107 524458243 912580053 986807537 418972796 914348626 615594395 829764477 361189656 644183468 724064114 883683110 392524010 567913258 295660517 737513569 842496100 969359516 115394320 422711495 1063003 152740355 917993638 969730351 712528838 825979247 286395596 897545029 730213866 862580170 690470605 794009064 794169908 846260077 821149534 933905748 661161044 701854164 630096986 667190643 678104946 830168426 538556406 692819058 258833799 366016499 356025992 623770317 721763720 856772190 9527197 404725062 279283478 702795434 491705931 924038100 203434928 437927027 103802107 635207827 460617662 588645783 231107155 920238448 693673932 718389570 580988827 983596036 43154506 483741749 185539115 204292448 241259179 741576114 553583568 875818640 448780941 895276342 185456007 677827690 841213928 901999751 521896518 559360921 816584426 840084543 785583393 860017087 568624060 975588899 273545014 892769675 245046445 260576310 7531958 497170426 975523543 992668255 93021072 811914813 78194850 505109813 227645351 573293341 238078436 938123918 468361337 939159030 49550270 884583519 20282994 312698043 285286497 805014087 896465643 995830658 382144882 731096416 117041880 391887426 349101413 886651732 927551612 935389501 287970675 323074862 335561046 485142144 442969817 495988422 798203130 966259322 130905758 279542100 724765520 913809083 953767461 969382305 623649370 760958992 925205323 938173289 825273038 828906713 940936439 972574755 808297306 998512782 937177435 943366425 955103748 974300226 638116398 675792827 670399084 787801329 970969680 995014892 141455144 545060137 847925001 993280965 312212434 554329633 179755201 670082012 550689735 885504021 180065632 684659442 365248794 743836655 422419254 601186113 837408948 932139819 949640290 996556435 348172705 902949010 152315873 373312675 264096734 423100694 965951640 976034253 41046511 389083177 488799511 848029427 115327324 849874898 189859754 527506175 740711226 862477770 790207837 861079222 596262908 968911303 426570341 739831503 584144491 933551343 195819161 714769901 840759996 863041082 155694200 313976597 225509283 721174891 210286791 559999047 633780406 729277452 339324650 448090182 752031472 840218729 463187167 881045820 350599098 378527750 215888016 342628005 179652573 411765192 632228706 668711335 72728687 345646728 560160295 666039555 494543654 731309281 787495333 875995211 138673735 372158359 553229453 940928296 847255986 863315839 309350090 451385863 355216003 504090428 22972174 79941181 544333466 683186202 392668023 720333822 408449529 772884077 374698177 547904136 595370880 925467106 497066319 770019574 393087760 649533352 392790209 644198617 940027342 944498201 969988812 979421210 980612294 982641549 422158273 793861234 282610054 312056803 649366506 725722223 435020651 638651765 872867171 887332902 280307663 819766844 378945782 631198381 869796082 884504568 446788156 730277534 526729849 722225216 605603113 783183051 976981741 992673750 90780978 560721935 620617999 979208124 679439097 832075507 244818902 482504688 881172620 949465604 185530544 427676588 226826241 751252698 789675851 954868740 545412350 987217918 691822200 959982851 81642355 985784133 635930641 757746212 533784914 803132216 273298267 408138786 795470235 978328588 548235420 814460057 171514416 527996071 409634195 766776488 580979771 856153145 670135219 947624688 77315909 592124556 330879261 381095479 718880542 808538882 730648141 929613097 919839481 973297311 560553119 761785831 602021536 725171106 984760676 989839726 507770200 946779172 127542931 451708647 801053751 845748937 870797979 911620022 198871454 827099299 550880299 588726677 144023551 486234347 969256030 979301720 382675694 590058724 69937377 813611523 54417914 662658067 710390772 891884818 102024142 232569638 29228407 645451791 46748195 737257957 379319490 955107945 635356208 693046517 930936421 981797825 65744216 398007873 255941422 689602910 311856173 582968936 79716927 320828479 299494660 667197904 175309252 861854664 257522279 481728424 44393726 768680764 379110615 729709244 508122119 812182135 112795613 608892566 930971541 941034782 75044977 662497771 2404281 853378017 545148376 799695012 463175519 556528581 957504314 958104366 260899438 507671016 853101573 939107743 772725324 881247226 826394349 881277795 907860014 922421562 242400239 819477213 304453993 366478701 950298500 986986951 365867969 915467482 526604555 988524752 649658156 985132064 467034230 656010685 567532580 668183819 40172615 605556651 712254342 980456194 899160418 940120897 270382088 790849682 224808872 620928552 842989192 860329053 660821522 953942494 901625095 915968424 859842951 960347889 972190720 989843321 233701175 928875705 432101248 700949995 161622246 406809258 248045806 304992610 16480306 231995827 133360221 794773919 128915487 443879718 950677850 971044331 9479656 587979693 393683746 799184414 162792015 265742738 255067278 509065028 791342673 874355827 186537455 672876906 554576577 930350900 254459612 430084744 86532056 762668202 210028649 773299754 741275381 848979132 217985363 339218396 209242469 744674230 424972498 476932434 664985753 920468583 677746213 978268592 608110230 840397008 515533015 705340081 333623504 605695732 26640654 873391891 497762081 771781018 365582362 517209200 719069541 853017362 132362828 775332491 886368077 899967153 291279357 685703508 916162241 965959681 910371299 980381826 519997989 985761885 90610919 837716775 414108706 538223247 837271338 911607964 639753733 702968973 472249630 837519218 631518615 727318155 26363612 500812744 822673049 850239903 91352816 966778509 936698081 972695398 853096758 947786234 975820602 987662422 344771516 952696581 194984082 899860608 132445438 833597662 488737543 701594203 926803431 949782757 569191280 741186539 406554778 462767485 368516521 442101102 35729532 654591633 209701515 900811415 512625502 774249820 594489524 866662981 193469915 350163219 320972572 499555659 486520446 953860147 269763138 674614757 275186217 554053653 472950622 889873094 119470142 827764625 283995055 354904918 88318033 502237579 733055844 872196874 567398549 908845154 110203499 509001370 289239907 587736074 467389398 739831530 512097859 934346062 77150522 875518120 442106809 464340795 718860676 989385456 368432764 869090356 325264335 700963454 308519028 944631742 325230892 984953143 35207853 705572180 822911574 912324432 184636516 655878222 535623310 898330607 427843103 515057971 150964612 359907267 580760403 873990004 370296787 407236878 689429681 941613584 425326066 900812753 67574027 666465557 493839764 507602747 646030079 852461628 976034073 987726871 481035547 952764083 469674874 703525729 859152831 992751275 597758215 754887125 426970711 643284967 514053637 765875073 402878539 564469834 244527231 632221802 872152835 919235169 285161358 697811686 491536236 996085246 650996541 840427106 640729044 739105066 680740072 806854443 11875533 889096303 116865513 511276278 126169787 676232838 34703580 823499590 215678530 466315809 395537611 547792604 457132343 864880521 113054142 398104417 329279994 547449502 431997070 711256347 864101104 998956900 553566198 589441084 123840632 496087102 142473075 954997686 461970393 490744890 379971844 452959839 100873916 657014401 329726903 822631809 768418181 888955219 495472593 635169698 684448205 777690726 831802306 916099087 627314756 838631534 134155514 482888647 595371163 891595915 216615561 658657387 369345803 373638473 59977286 468812474 175777187 625329952 689023137 899945330 970307717 993078522 300351082 535322507 159603301 412272195 740626431 895932473 96638102 532334637 863693461 934141388 20842898 667183455 386923205 958789856 54848492 883955964 183425703 871612132 675461687 697425327 837721821 961655070 519671352 715629624 168755160 822949921 646218994 890257354 307065615 765743538 750835175 952253260 605308383 615830701 957545252 990009413 52669699 764700401 373813461 906345598 78348804 941364711 670895493 840550745 537759188 992259026 162101887 458845168 294999862 363007562 426932158 682877019 41979839 152145057 676183629 887004413 781446187 872846040 665439522 867849049 756036580 841865612 763112960 800263095 526169274 758476550 710057183 828779599 901661262 995810776 901040669 990698888 359200689 835289142 99228884 635621647 945260735 977277143 657567508 755152209 540073694 762987979 761377010 833069269 929522710 971155684 192813538 206409809 592824961 906167057 624779418 992907237 115603536 665764885 802906717 916657351 679380540 755888224 377614248 802063416 626030833 892977363 488068011 853001345 705064102 978281189 493586786 831460457 876318715 970175786 993117482 993652733 132016207 607655564 60675607 285084336 850135513 850490108 499352356 609704800 694506968 997183559 589884285 627161785 641665704 819434197 393086663 443670854 822202581 922006406 728569192 774259461 264932667 880318632 477211229 478914585 816021648 968755423 524464424 941475708 402839718 955686232 526281945 782979888 136084864 966940943 267352358 381472379 807384470 835991171 821658108 962227963 356537202 960524446 531277100 824780829 801941451 958646610 182708389 356920578 717554272 733868416 435901431 693072019 231716235 461578839 133950181 327141124 77694397 780577329 713220957 934893425 493578014 915793493 752198821 860888964 962552784 970976470 449753447 609170599 840131330 965786737 187506562 855746831 666842745 904019004 96925582 104377284 927127012 975089616 540907761 544984397 959635015 987204846 581715339 649117703 279319078 866145869 437067797 587029244 332171734 438730617 856135375 957329140 709528184 870377201 456045542 698314476 985376551 998894072 82314764 146133993 982111882 983442951 1724681 820072208 440389115 680865985 365253631 884376978 547735143 596184733 778956132 800628602 130069197 883336899 745145751 993916095 191060404 978601338 249483837 577299058 300335976 726324013 565428911 710455768 829608796 880300647 137537516 996368476 981448418 988044864 942840325 974996125 523094566 619636278 783800516 987775613 37055227 273662907 671254826 984897277 158738181 752302175 902923329 933354042 421325585 617681747 384461878 609265265 323542080 533247811 309528570 762335462 24660479 991595066 190586470 895840906 601792255 984307301 146765618 216907969 391755871 654175201 259901258 314271142 996134436 996308875 150956576 868719600 11352309 45306163 852777995 876904805 977243325 993305834 91940033 569064577 337534462 962985161 802564264 835281846 603940638 937842423 688110909 830724569 422599171 446674270 237980072 483919954 462849753 829446609 226583799 414554124 156717716 186249920 110161268 564988963 66326785 698614814 93146624 135871764 202518247 767751059 72776533 241671959 275004292 416157172 2045523 935171028 865258833 945344037 932538525 948640081 279808300 462336554 496334112 773670358 652376167 691655318 194851743 915214290 414287440 747410298 847755924 900938907 76903043 466366272 515627416 710386643 940851106 972637164 959871269 976399470 343687600 635053716 756777684 909652837 132225952 954876570 888819770 990198959 495420520 633908456 488347594 716002646 632162437 816609173 131934641 760525544 828201028 916412965 917235733 995020766 531067792 697409103 873915495 934002253 50787132 161365311 39284597 445774360 169248324 250866090 622141660 940661097 789609326 904202327 144522680 721359292 126814788 401131334 416089924 846062541 895864194 907539215 251393962 296278991 830997061 841936770 889341858 901492912 419702201 491037342 290532663 347395345 629477794 756238635 384443411 880666952 307912663 994873161 380011126 970697416 383405137 430693965 349568927 553141155 623467144 785638519 626956276 673126774 85767302 236480532 335086899 777475756 40843771 994984451 306654087 555238921 226016178 863907032 671331915 901328321 65897653 495319391 62188086 315566241 71525879 936057668 828530206 948665382 817718145 897206110 384564871 635964100 248738019 977810179 316460221 666076386 598367199 651286431 763029615 852357372 90229991 535417264 907725657 937110050 446891949 883866118 517439240 892813860 936608087 997329243 94103315 135360864 532213111 801335039 399082656 548703183 424979908 769134077 878334254 948563774 621500878 649577268 945303328 983040932 754033418 994476138 132961946 397388270 804940618 965204287 846548896 985215872 607596533 987720823 566366824 779772315 473399913 488391632 902546387 988495475 489173223 912313286 489274088 664701382 501749810 749391573 27596050 159774958 202590721 407820539 272206635 326678912 177295975 495693135 920797926 994426137 670745827 821865208 843528958 851041499 731411564 985680960 182372332 525286511 846522677 980865370 118713624 802312836 192126752 613346125 389798099 468701015 685921119 998577644 42769516 453460052 804940212 998754874 209223144 219756406 798076206 871159914 425710677 823147932 462649394 596584234 510297988 592865973 438406145 533529896 858387408 927492134 624880981 762852572 415994979 815688885 381614987 662051783 969914261 978453965 359304814 382733232 744580354 869709223 549774521 986868194 501009703 687783142 392763365 612938841 448187689 845538092 534180497 602942756 867942076 872338928 383930257 457250061 225137510 775907799 568782522 992608228 512186641 641790323 936045511 944026365 635446695 702599122 774318502 968400122 35501890 666284190 735235638 982612073 948868966 965101167 128964143 157487760 717245519 786325079 231048249 890583145 344222863 379874117 651761188 788133651 386207653 447089880 826274680 888709914 651074162 944348539 139834461 914208392 215431539 455090069 650615454 825195400 440511753 639418081 246193625 793662397 278582650 746572363 683561613 747036544 486628954 589841895 711358533 848940536 929795571 978290397 871179237 883274614 831130243 944306903 569406742 747947530 510695822 697953434 290134525 808880351 917524100 972621343 412448598 663502675 853730917 991245273 960683626 971219687 925117391 973333096 835118956 883176248 802263159 985545205 598039102 864898833 20380116 702595851 728546311 808748050 858605665 895643692 31408800 706090360 197036382 421541364 455172437 841245550 833994388 881758856 521749852 800511814 917055771 988342271 685571236 950555565 291838346 844656920 531120791 810589205 659646054 881081891 394905886 494218406 665318429 880062992 755733657 859157453 915541619 954043729 58452137 77729701 72578862 993860358 376400701 722983862 10028418 175033311 478369427 546180714 416983050 620937391 413041040 662442294 43254709 43501454 383214100 737753035 30913990 244942574 826481260 971885772 445281579 998038189 452546081 909092050 580019291 852447409 210377337 358819142 950430347 967351470 206470801 355861998 465460380 655624765 446462058 498594678 463434916 828895314 83499509 752031275 532551886 588666582 73523472 966513917 887918445 972865860 942750295 967148099 890271711 956073209 810124859 905299930 382202259 558949460 191728071 413480213 6072100 121734980 882150063 970465957 182841049 423653900 357782536 511881939 397141386 957401132 287005404 488647316 454938239 865557081 520432121 572564522 905595468 931718942 908834473 940190394 206672305 325703220 606759039 653279283 23777357 45212760 558327164 997018774 611246588 802329598 519096622 660773527 312274996 400414018 273089588 307527241 322670825 523404316 966164948 981117994 850715715 893668292 813553237 860003267 149173588 816980593 669640085 997984526 119863767 716806822 193475690 722232487 863360014 946217187 685055784 955074214 90448731 533719223 140741859 963709934 423213245 783252470 733328473 776000809 858217538 956464037 998012840 999799003 740171305 820291790 343365427 882930630 713876351 803201229 399524853 943868989 644413371 714428454 400851810 543373100 834048089 918056139 85207184 541521757 659208722 701254623 241482033 927783106 236205362 947109033 88901280 930477966 487606384 820634964 852361280 892461948 664633002 892268356 262539681 807173245 547239577 780759954 790914763 841720615 225980324 243597720 94776662 159974083 268463845 488163418 546130497 847448905 203149223 482540202 254614115 686321208 524605174 710146754 914900242 918964851 577459592 686194324 203292562 512580680 155741253 652471237 626826500 921323421 723378527 895629467 795263125 829753681 561182851 779993212 341622750 883852268 913410186 981169742 903657962 990460951 314670898 963876845 844919886 884716897 367089937 399377120 524033254 780200573 697979263 787127558 842262268 997098961 157294562 208585628 351592997 967771765 373152931 866776810 560603520 743416306 401272232 646642615 593540001 833946150 414455992 890485949 311566396 670980192 62657163 218624353 54528714 74265698 4652332 795367037 808961814 891158486 863622244 863697558 765076951 933002005 851548222 857700917 581860697 639846917 315939679 697497661 903261887 925370380 125191416 467319968 944271502 993158968 449074050 780507907 324438935 659984929 756409476 905907763 115905726 902633537 76192772 819724890 146765885 759160396 646242418 888742717 699486645 911334034 104501772 265286370 729761583 956978568 51039893 854698750 305925411 554488921 559996146 860172881 414345264 473502212 191765292 731697942 431080826 864462705 335523520 546433287 248444109 964755191 693295611 710034815 158196247 857790479 794978979 989184283 7811037 261970670 997444464 998020925 470413219 480305318 774668389 804171760 931238689 980973800 337372148 530977389 693764817 704720222 178501718 508466082 991961496 994718990 366744740 399293750 725592080 818562018 836982613 933030439 281726254 934578829 281244502 470781954 42804570 398769630 279642727 308560133 904771629 905352344 622733222 900882143 762479749 907625529 555221059 923340576 136452433 590003242 280051228 974061528 554948266 731698656 155297732 221212887 916211094 930009534 859766854 962257690 266402680 589103393 682015520 875357273 509637008 961870833 165348980 177467377 973908503 999437878 641984074 906950241 14048873 559497402 936345184 961004927 110073689 517506344 146150586 624013657 419756159 989988666 142598203 577980699 764219931 768866691 656124165 742559268 116035980 819782544 166433167 830659438 841983874 973756138 378700541 754583498 193852132 689311559 814994338 902342765 936751009 952763771 536662767 999766178 737849043 944460844 771605757 838048607 620968002 811025760 711713665 961553940 559682158 642179934 223572951 855880202 544132654 765575970 261344904 557470872 466703593 905635515 347498186 354223345 821503053 926419974 655867686 729279274 290627548 317550105 676060638 690749699 888924600 928455387 967042351 990383888 805239967 959259341 17862014 300985864 234027257 979068402 851862487 863126509 6812294 930334269 770562370 972733284 524086392 555013456 91925195 198907153 60289731 247024785 557630042 798057574 699668085 752625227 290346845 631483763 496364960 778882533 814342568 979030370 886939841 974977474 194304022 419003267 710222493 852505882 30439497 275140114 365186292 694026168 207003515 846372729 629589320 909066151 653602363 900649659 204774229 768262441 135260444 201458770 515053034 765562869 470623119 767329285 852973052 955799065 884449074 938071628 75819573 280075423 677539501 831039379 38330168 660454288 671273617 770523683 811389059 815214791 467134891 624008718 863353063 868916368 728938401 920720848 193286194 702215848 733547733 915510352 176248914 887634282 673519519 914559977 561754585 594639314 396629463 837023737 80823132 210038366 635798884 640094435 157451754 317857231 418116764 747499520 186097953 241137334 890083878 922589274 788081620 910505112 852191616 976378825 643033283 868868436 624008850 877069693 516422212 688896532 451792989 935120906 410656893 484992516 393805129 704821514 602472051 681575389 198992853 762658459 198484441 978555345 979257791 991379012 446344880 530788939 666391318 971327100 690107900 748187191 563397052 893547026 601354609 962275227 34754439 187340706 421338372 893183759 531387788 959670964 628689087 820007280 235133296 678106335 348238637 881569516 421680962 936471989 858269960 993292834 660720213 665469653 220249105 504396199 665789947 877081957 918043498 964001899 806832526 838575978 274053271 858689173 583550434 625796573 444392669 763952716 254308314 629747075 928469515 972150935 189733688 678221906 51092180 798726657 374119689 752835839 700712238 762561835 108784452 176246305 802173779 907587105 495112021 903613607 950712414 999217603 878938019 947287382 932778089 975693701 651419526 922249776 626306412 813821756 50803787 316698528 11004830 645727305 38011685 504556110 610474543 904107334 555800687 653454039 583678154 709853140 226754467 930508344 859412804 954197455 815631010 936665727 106612125 529733818 399993543 523945141 473732382 909241126 886250785 926257090 358229271 392991964 444352275 798228907 826263076 952713915 577729562 814600511 659738843 801791663 689461773 727536622 997250285 997540131 316197492 599690326 972146718 989005680 606852431 799229948 543513891 880359372 460047877 961788178 117574538 452599370 789112945 950319252 826630173 827059737 395045967 429968574 96183395 849898026 446368299 565048469 51544306 56281929 421764347 523220183 425032929 743086573 872534349 948645340 727586301 737529598 398200194 575821504 580036621 836600360 946924552 969083077 818168421 900110407 948346107 968146775 809398111 976934814 701703352 969546746 514436532 564572694 486022828 736811444 146468550 769855108 645349811 692034359 661492438 927789761 110116240 250947864 633323958 760838743 482178520 968572511 620561666 847034960 901111795 921365317 632106186 876436098 428734495 623724166 602059058 875639293 475492202 826601973 173180474 786247528 642731414 991311315 639985093 962786172 746621103 861448257 856738201 890574093 36155067 503476885 179824235 919378269 279028330 315026633 61929217 410792663 77423138 974129862 139009684 249263381 640856970 892366897 916603489 934069575 850202213 998302040 861304946 885945997 831622037 893753572 593569307 995261348 407172690 577902952 860757243 890941172 408389459 998446711 167651592 267035477 985942155 991576990 680318997 745709929 424147845 795156106 511697864 864126378 172452433 642563555 651424438 686641308 497454417 858976195 204467412 946767752 280340936 435114412 194599886 495398663 474312735 895214522 514543136 538475692 341032324 519757556 288042650 967518221 34578898 186093506 240394013 587140287 705177747 981777927 589306230 773649143 368337354 593669611 275976713 964978514 368048915 554584476 470113283 937856319 504506466 599413800 95760558 962969804 52938764 256965749 269751141 723566104 607711897 751266573 128678089 147897037 801840211 881175890 609621403 898211822 187927611 745549536 112812341 321461173 679670995 719428004 746817426 914439784 598941566 900047474 445228691 645635189 831984588 945966185 949382099 957782632 134820877 227313263 313109153 773604568 483620347 896468011 314640995 833469947 330029524 409493897 30002374 398032035 662515883 763570012 441577901 551477531 630663309 749775715 935874643 959770376 576873431 628137263 315800483 829327338 63485959 579201125 957500265 979610561 928674037 940705246 690068252 990272787 295187944 302515189 741303119 946092153 124677167 579469952 338493567 684278669 329753565 590325560 119460129 333397494 737592883 997480661 344691090 629411697 444168945 636387297 447464129 782530959 686180714 819352465 316383690 320332023 420048861 478658445 737662562 751087982 775656484 961853005 810102350 878688208 450129936 896143652 493080007 679868205 679417288 906954328 631070538 744558694 264207472 706182343 969347898 978144411 460314674 923149245 894392389 942302545 121358618 256440717 751432876 908568514 427361523 644622640 869862314 984175897 434480538 766182415 334356688 961645322 123901995 157882809 280289635 702031839 921839169 992013949 679228006 758015014 771053763 799561232 966897015 993268575 296051515 647925683 432032313 593263815 390415910 870497948 368416356 840150641 757460985 825407368 24613053 878282467 25163089 995871079 330451675 692678441 859325785 970056215 901711478 927785305 823340059 936952813 321004570 449644038 740996080 765017491 933508575 991648768 853872820 868176571 207553374 844068696 823542498 855732314 230150286 332678125 617404929 756829170 707443775 819334330 633947663 820941472 37303977 897636041 533772186 661849310 452950757 566761917 74364643 915933442 213423388 225858875 556950407 939682287 297580892 803702293 110258486 660028876 322911482 392422139 413696535 581078990 876223219 944435983 448623875 629436961 885893354 967845856 405611718 780319514 994281556 998564527 747759713 913857376 357074147 653393087 42446479 312211680 458584422 753196214 193230339 612710119 249807671 799336018 392407274 732167189 460286212 858988760 686964189 949860519 493455531 672796206 724878611 919394472 989169586 994771085 799212890 867568667 963224756 986786666 877196643 921097534 662989218 664394741 21267299 392404616 938785462 943750235 47516758 555407815 70143298 407419874 637945536 946796197 99101844 430868264 608166145 689034947 666188018 966855779 336089912 929552648 237039518 650080554 90869393 918704934 353582302 752938201 700467237 751101747 252608649 728816280 987908566 996200024 930940431 950253074 857285425 964153854 882124204 988311474 610614714 878529464 750724156 862026476 959155805 965766269 870134116 920057089 463893442 720609112 992412980 998610024 578368355 632549843 391213231 986837763 3569454 324126110 850271780 876810379 753617527 962211054 650174208 917207625 524147783 945441179 544110251 681514443 777873143 898813309 244614585 658415001 928444101 973480791 41800198 963466236 557212998 782907307 477656772 492598829 568491015 813723069 586489988 630954283 580720729 920710313 177970235 625968188 77987661 180748124 139118537 587111994 366669418 432924934 647816142 649591285 465697143 485357948 327286279 676960020 944170936 987237020 45088915 545361714 220211835 844460841 527462415 600874151 614172854 986307710 947574810 979066351 376332526 506486044 54713679 669416202 891711897 941708340 289653447 899571048 605608717 951119869 593924251 847062176 529843841 581412497 497470891 768272998 60455560 467135537 647017662 882860275 591649849 751729978 767482377 845402581 549250815 846870594 690061006 822483875 488250046 649982529 423948012 644164544 968809737 982313165 696376371 761608424 684893469 725899782 556408784 977229445 884431572 961860685 245102066 927573972 769135835 901534169 894649252 976638187 642268552 646707007 193601110 877641242 681692957 945162060 178589552 991229231 534382822 932033259 378777582 411232720 577088522 772359453 694493673 770952585 445878587 554658079 235761405 654061697 869833354 992800021 365136033 573459509 992755105 995624898 611185396 964503810 600149924 961394448 920904978 958219127 401111333 489660908 783953983 817041352 59776861 721706112 424903842 569495265 652010445 838286689 757460761 777377101 433483816 968648718 972634775 974148145 369905848 476809004 876703256 908575884 939880669 952332095 728998211 808198443 354615747 656179975 137406266 310739087 931330993 997260607 946978933 992191722 271930455 770332058 437553268 676150246 667905903 866249557 234761819 739686391 266442882 935109960 131872097 812424056 4933427 733569206 565415226 846589490 380655136 904742209 210541307 538344406 718607376 999881226 301192618 807671254 955863006 991853272 994293543 995015436 1162767 865335765 660085831 850864035 980478302 990181282 887471377 953203574 468747761 570616917 872212263 900096427 550541369 648127517 883822227 895451933 747348306 903167395 536255415 544556540 388130615 583579005 939744952 991394373 262834646 331273640 483424043 938051834 135754487 667897002 49795682 396250194 910255056 932836543 659381867 713786477 434908026 574062852 873966431 877280755 635967909 830527564 586166857 619496427 124524500 731009035 529237256 958208937 781504490 902737775 898946468 973701421 30828582 33377448 324608574 857621551 167498802 847842150 33227438 874922669 497454545 753974557 755301432 990247996 735075345 855590956 128113092 975352267 498697831 932208560 920176675 956786063 548691690 640572499 263680910 444570373 829411427 909125843 454988731 528658113 908152190 997482159 777362367 931794423 118051615 703585086 631381495 775565550 13537918 365000345 872178742 884684239 615245829 650354952 373248725 618162061 74475020 834635584 263641969 511176951 650120034 897392021 552710161 858721852 738634693 941843069 959736540 998079492 148610666 532945029 265090446 491963804 505561399 726736291 224697476 480945711 92269103 701882586 989321591 995766321 363005811 842086314 196443782 718883086 104532440 777909314 720614292 761918775 11542444 546457414 792973203 803590257 224335707 880419062 584085691 882660500 922554592 973866912 20768668 61337172 901785024 997963820 493878133 908845769 886842949 937658262 752900067 769955627 582813651 764281663 34053706 483379707 769745209 832637469 281963861 742928527 324534301 775728046 794602635 867824569 989168001 994150595 564286526 836510749 949955630 962078709 334119729 561143435 805636233 924283234 826902945 934140805 642989765 838742681 293191740 877324381 406196756 838833038 717453172 899212054 24639507 693612118 935583966 996437682 610740927 867292535 664786680 907080843 485868435 964127792 570498253 665959523 840606056 925244722 95744379 921258103 331480115 709652774 843238690 965205858 630240120 796982404 21550317 334377281 133849111 579766880 185086163 943152727 612732341 864534615 165031812 565767017 93479518 280588213 293139280 586447397 12143102 889426759 277425274 996568414 839730916 932071487 214982300 446025278 731883076 826083347 827566634 855284517 59557421 646618498 362347581 972547458 960838260 998851617 221650418 938596166 705387086 928886780 65170749 848241410 551769697 990160781 831389994 937491398 714641058 957854079 519062403 992870683 522212176 640551174 653875110 822307435 222451414 869977566 818327583 932834704 685198855 733518470 854829802 999362425 196838613 373186463 506590404 560510687 25808925 98506510 178181198 953858289 12592165 878312926 79340896 401711398 856683663 917394388 393430925 431654602 995555167 997382655 775248810 965785868 839956571 864622236 108295570 241625703 624933250 649518691 712661349 867654797 688047682 722557646 127737074 878860542 807835085 994341579 913242875 965526764 426892860 559831335 118411600 915986054 663153506 723628149 101974828 943900995 68620217 646381624 95434095 341063260 602312978 988557085 603266992 779784490 5014629 599978141 599883702 686059806 790068074 819562142 791218434 832156130 584319605 807258596 34050567 207534012 781427594 926128499 819193737 994095917 268875709 617194788 858199525 975079362 93031844 876593114 238968508 587533513 442615183 674117758 263389246 969003279 786536979 860859111 927821187 927898717 156414419 387984339 486264139 586410843 269059890 864920564 465025047 680114302 15618909 823866936 311500700 688411115 897528292 924437884 236062138 790636796 275588323 958150866 884593326 910835008 355101654 742849544 219144700 740034591 360752431 573901364 573676001 628768993 961919600 965585674 16416178 752766054 32478144 520097458 703323973 921538176 360793289 651798517 475236245 836415155 55657562 753411402 707418034 951855994 440864880 623516433 381776711 398040002 396662639 770526775 712526171 971704445 870765877 960919172 295764179 495235601 889215272 925243583 570954988 691887503 936405113 956759340 209736471 747704266 606005501 732510589 659901785 800681053 46391710 828589392 18645579 344626677 112716393 339796184 847900392 891449895 588106569 759853084 376179675 408249245 103357309 504864088 507004762 824651173 168384457 291761035 298395393 988390111 965503288 975963836 381451201 866493452 783485890 907903710 110892449 849347736 515671726 618927362 298125884 674636308 959930755 963129883 1190047 193915942 671185720 939124029 626667076 848874651 991407516 992439765 670939590 993847774 74206908 539454528 184550239 618378328 244074833 551475640 644634444 895187864 739463516 834753511 676716435 835881891 695205881 707697898 57495456 464238345 943138053 961265743 92005167 463131543 706734737 885737487 727719009 777440767 97760439 350623240 819250355 986377242 914272077 996682577 74904020 646542305 105328949 950256067 281255649 825993671 912337018 939115676 42408517 948618537 274554586 636427358 887536232 966742166 911128656 997875580 554609510 909960971 956353970 966676002 378322709 539960218 601709694 687783756 472475046 732605599 952020051 991480215 380780763 919149485 107766133 296451498 295705629 473244090 147830844 595959315 115823356 745755856 25979951 363483296 95482016 855914891 921001351 970517554 811036837 925962462 134867055 190122130 62771151 292327933 380593950 772551643 158092376 321407155 531335251 706418510 518506737 545260278 665066071 934823131 717382951 818853750 11731743 825622582 187314242 941211088 849861114 971121630 725327974 960945588 148310589 908749556 291776106 533291186 975228380 975273969 837118774 854759265 520775179 961499297 405855910 758299913 598148290 813630104 594676119 975287875 399377511 448759068 655639803 771763286 66559585 890184566 104283788 697122940 872308042 998452281 432616135 856886221 653646834 872072744 852441891 874648966 25907985 811685799 391952152 435655245 770130354 890427945 286063076 289560428 313985955 924322609 892660748 941992627 640719955 825326339 322709191 378483062 661440159 726136744 248585348 777532645 338704456 797362617 530713372 537301677 482940121 523001480 184610969 778931102 110015009 187038134 897461531 992370710 143165330 484611548 472688911 858060718 723183372 997963786 717279395 992209445 555167374 702996369 546354858 817569627 78223647 814822480 623750464 896957677 156384535 887413800 455463730 810332114 713281408 767529892 35976470 225284684 129559415 725981647 387847557 469659310 579637787 774558892 114664027 778533052 884990125 896380667 380209000 885146982 983917635 988014510 207281112 943641957 825003580 830648299 356146935 784929221 572129681 635012310 613452898 639274203 881106626 931457159 681515895 919740401 190210821 362705520 6389021 391318243 855475005 928557978 486476072 565956453 91275831 487863279 240488856 610497835 297637636 979743906 427375414 699698587 822269667 895536375 449538176 545416160 263473684 958077943 190143174 522688111 364206521 620085753 511636227 606910074 698815675 721426528 622401899 728834296 840512441 873199640 351189478 560145584 68808341 732313330 654940445 917772044 136117805 163287709 478236611 769532317 779753245 959668882 574862691 602094399 198973897 242120034 679133744 773331540 11047765 471549783 172765638 766778774 85579903 450637613 322990400 670802302 368451387 982147467 982052849 996129087 85557390 420409854 311907738 312980734 522856615 831264546 84560849 711463263 271021493 968315853 445874519 964891671 882659426 895066606 475698052 936944601 11451447 993967415 222401819 880393598 659858062 883772074 156796484 313135807 886581804 945659661 907629731 993623223 126366658 892535368 351016751 830753694 848643617 899889410 596686291 914052185 107488837 403507766 195382240 324176243 172151453 309332472 498320842 856478480 530016776 645094588 576087314 859993133 811604634 903293139 98768175 406374368 344191098 475396260 413808705 785617946 910075483 947349628 894849383 902741313 611951854 933174904 430681467 541368633 793829230 900215712 728585317 915104969 924007536 924141663 579780409 669151714 200528087 954295343 577195234 794369151 462700717 501313591 350357104 884162258 80804852 590914752 769548767 974795032 214199870 906793272 141193425 718250573 496987644 780661871 604787331 864533113 14406705 432718036 312646518 675115925 632338233 689656980 282432554 755954800 634251958 887012209 853678129 963010033 434519175 859187435 935849079 941130009 453058509 640506141 885513167 955731533 652597979 860007534 460887498 706169261 842409912 942510133 712876384 752566259 210268036 274114259 530541743 868008213 427695668 616767108 621184498 913050050 268205626 367964325 184864408 352806696 622283723 865906944 108221032 455642983 768577166 810335103 122766796 204958445 940669642 969980616 471797266 925622628 664951469 925935291 447008711 700976085 435779111 707426259 582905935 996057962 419631417 616181928 8912098 205158645 140660592 223357401 160509742 606269343 277629883 465444256 739201996 821675862 457657149 578783913 815489384 971994132 614052616 871901798 13588212 120868740 219734773 856516635 479534320 526402416 359951019 986481844 60904539 850417167 398638254 493950650 882367551 966790868 140398762 553189507 776189251 947154003 766104361 969231905 370694298 829097413 437162680 601100528 670197066 958870054 385818210 876555696 129406466 601827165 888642702 992769732 327981721 612916665 286340416 534182908 983288493 997981352 702732686 727269143 687785604 767240483 575408214 934294462 665941931 934519243 633069238 889543546 340214431 592759460 403247899 982988032 832564667 913094807 101862203 187404454 181412696 787355010 687169108 817514253 639775905 686539993 111358735 551781827 485190186 515750953 487376236 625904392 681041475 976534020 953299885 956529394 146907532 215737239 248088804 337560760 599528850 654853672 875133428 970333387 31288259 766954816 378459993 379724768 415390431 531443015 951003589 984707841 26943646 28843060 832537661 984832331 876421173 945388006 980555045 982560261 644075724 694627822 97520844 475156533 517395499 561121443 569782013 688778192 348187103 853649626 292554528 395465461 875487220 878113425 423358067 781402748 337351920 486095219 163549554 362114589 835565482 870838481 869061358 926044634 330577408 693881179 296148364 469132335 756468706 889219346 829559415 981205810 663301149 693061002 267749544 370473149 638765786 871315495 761770414 972734855 454586218 476619777 272659463 573092633 582220201 779196911 418682832 865618025 352452627 414051914 180923938 920295572 606226923 661884215 381984237 952384832 554113143 805959488 223685590 579988531 652798146 663929039 935341213 976688393 867091713 920901657 968853480 997490697 714239606 718997643 613913311 870787869 412850594 972818809 775689599 841250258 177326048 484513585 993625094 997348162 97443105 199356038 402818066 787886385 399519039 609742824 507461609 771053877 460562507 748654716 426372667 912056469 837437530 855510174 61794061 289301709 70105178 421940802 655474662 787196181 443111938 952124001 551870792 611030860 801778742 853339372 733633018 907626887 286604414 398991603 473683555 812565033 309780171 734286396 373610761 558013226 615336288 721622796 97143975 218724589 79895664 321732978 705435633 736281964 121172190 218265454 697442861 934781974 410292708 837195754 376606819 772620652 158460795 721342791 134187254 205086220 470887101 624734912 452237296 552050802 415530358 653744604 880794315 969215518 586069318 794566286 647218472 918100849 816479487 887739106 539473952 826460239 242187791 309432778 411294915 468530679 595711754 998471418 437405783 724217717 57257433 418321059 489347523 807780289 200181554 626951053 233771216 824764944 399566564 706049050 630741101 856073969 345672274 922130047 72456126 682185413 448418507 817086251 136927657 390425780 157196205 553903272 535316289 855433866 358640444 439169564 498645076 989388284 436872871 642289064 722216197 913150396 355229043 725013099 68381194 364765633 779089776 965662231 645406348 861726142 753307054 758477995 534082023 873105171 522244117 759109717 836440934 963670039 293965162 782511845 134292994 978996005 955576647 978511427 450016318 868538377 134571121 543622707 56335348 961573183 45256359 846264845 785040412 893100722 894889477 939000582 202970314 756505293 328168118 519933512 561825453 589570767 423884331 441273046 584666688 880720500 73838592 991072501 395937046 428233769 129656390 555063556 68939351 467700111 353909691 523445439 604465790 784816173 642772936 858432410 597085485 692287747 619797507 744587845 414748473 907129061 349653855 779222191 439286803 993484031 365181271 667712859 447768533 778728218 81549815 372253152 796614968 866009217 429057089 465917615 319114007 440524409 297301036 450392410 917789213 932730629 66173897 786550110 751435560 983125601 162462338 549075805 639292559 708290029 739861541 786975276 585265828 836856287 764510515 849391536 703920669 935900923 598090467 617866930 736943090 789991291 693654482 703254406 347790780 988684976 116505290 237485399 412773936 620987525 895808527 985728370 661649513 867551896 586435236 953398527 85681727 545233886 523397381 603969772 184900420 874599565 463874154 603060720 769230204 808613774 407753123 811384967 363319102 507501950 331426783 784588428 887538879 955933419 379942838 515922878 476840791 811634757 127669332 670292549 778931983 976755345 42657153 511635941 298849383 403873932 551886667 768339210 882368601 935941640 810714117 909705101 592014285 931396738 716490019 885041731 422521903 994842855 652212694 765331336 193365078 340866760 345472857 637740504 519753219 892445547 714310443 865645839 129604848 959251047 87866807 756278619 684086354 700270978 351376746 961175141 754700774 818708990 208895406 262834438 367697484 504003771 270131795 896130693 682263039 723805474 107862055 473523376 344557318 583436475 629657764 927658693 519779240 841518497 25989482 419307365 580951548 740733601 34355299 473813152 197426387 830629140 879418680 975891305 832950618 865058812 177096295 537062587 664030255 894297041 482204205 803314191 570581761 669777376 99548356 141788654 192575830 671555371 948394894 976678047 747323339 986200642 151436397 661513300 163013685 544148390 946321087 971017727 143019265 353508743 889506200 931145761 505130604 751019608 794357725 854396912 385406263 765661153 42906213 984766780 849424698 874470272 51217815 854411997 764969094 859860110 279971020 577681370 370943420 433960556 647170489 677840696 975409765 996545709 80522592 934811016 519634259 689796205 866312249 918277213 249048366 436265702 735261474 754126143 726593545 958073786 173556120 739324850 969786023 984839791 33910916 371250051 374329836 799856820 768706977 768972585 268882330 782828531 539009020 650217939 932510599 970933262 543569829 735655137 805874944 888210455 878266309 993147463 286881138 925445042 95260757 882572866 943262743 995407287 503851210 809041509 306587751 905276013 496443893 651471066 880872861 904658360 393538325 436548723 597558831 656677166 34012479 577534609 28451901 703891964 930758958 998678626 462523922 493110011 555604364 924432669 205526352 985872419 958329896 968535712 661769076 927987223 89939533 490071426 261591177 987370288 327679992 334260972 969960635 976285270 958745778 971322048 525907909 586022074 519014571 898756216 514879336 947458849 93630346 888650805 957797685 992366151 491234525 527863749 339229496 344743562 31064065 146502604 42814925 68424225 521663421 775160757 996575645 999009335 760907869 900657690 200011542 917530560 372482777 419657035 842813204 956747392 718051950 870108930 980690561 993805016 748218419 944335616 1211784 115919800 612980637 857074474 285185565 365855624 704393763 717993048 746616253 973061807 180536569 755524480 786847262 894484916 391028431 629481108 63663435 899937204 489948922 890188898 927300243 999718032 520087998 526184364 654761780 887496783 38976874 91130049 177504383 274600775 133503091 224608433 914312657 999893647 499742855 525653318 900926374 976291484 534081878 825086334 679254419 843344656 766671787 825391907 347995625 917202518 672919975 761220326 964030104 991360236 708227028 807832767 152316959 477894161 779797177 938204694 422552114 873805277 880108831 951718066 32402361 992661993 862398227 976206644 775720356 979746119 668814862 993962923 942332264 971308057 752211173 922182032 742370360 752153084 984353702 985481069 239209193 337879500 541667006 557357085 935410774 938863529 32106507 476914753 512354255 535214644 799064833 964178985 356243638 767943126 674381719 993961216 762437774 972278163 850563625 955697864 828607633 961581390 160439809 333906521 443798040 833111683 643733105 962814363 417092692 848575711 343760562 757312559 1301343 66680979 629486848 962795764 734340264 747076390 481537381 657665202 314997090 489447129 178866938 322243214 356694348 806930567 757847281 988344217 783765709 989631470 608084349 952306863 37431727 290482480 912523479 955368328 289545368 374015719 58199524 763358045 247256956 490766546 683426301 958619441 406037458 782761120 233616876 283652229 293378379 493548546 274925135 452232791 742927798 859002466 732375453 991900727 326698932 418806869 345436657 850320696 731771556 924007737 500668495 772591206 582502448 626390123 781072730 832527338 979840329 989043725 39232932 74362048 112875357 685928136 406868394 485870647 24652485 917452214 458296574 878321353 278285147 874391714 636664550 976200446 925682071 928144308 272105718 784964766 864685582 881759026 325848751 500625349 424568916 978842498 477561475 931826396 357125682 684514949 363628254 965997759 308984836 387769171 646834806 650817172 478279589 731667667 147845429 980675038 704351168 924199079 221188301 470012763 14324712 487134469 976718311 980298974 652299762 706766533 25463973 727589035 533206279 986318575 239656023 793212800 485984756 853949937 914000751 936122882 441513822 991472739 267911453 761961993 672792505 692175263 420460849 924470107 580673221 759596842 274475017 672682263 384884328 889788677 789217429 810176756 788350646 916159217 370854780 421864956 742339551 997459240 902433583 916938832 970307478 992609043 325880109 780383145 221902566 841439733 593693113 893211107 303546172 766217761 148829461 967159851 503504627 782611394 440822784 647515050 805995589 843919985 787513659 801306424 11344904 509847933 430401148 673594429 596786420 700869205 989681292 990542623 16970581 143782975 672093660 686766586 651218277 822929207 314941833 824546053 323544301 913434512 862430171 934505927 157904503 441967306 733517672 758412063 716505727 894406509 946644628 965241195 720914993 992171107 168016453 474480049 23694873 581660655 221410757 874544175 703433953 862530519 121587106 686016107 818146969 861116030 228816960 891257270 66105008 896526285 877285171 897602644 625464679 864939910 492044552 492555301 734062872 867229050 604593239 908899306 65155311 147967792 285796896 567869630 113879691 980111091 964829390 976048005 576353399 616969829 450127407 948054569 298080984 587213787 601790284 724487153 219683013 521811977 397676736 941349348 553724569 786342776 284712449 503859278 830612898 949459085 38822074 791748739 4902003 354539946 859295782 984892296 448494190 797865792 875506636 931269367 793473420 990296667 69706792 164123564 41539898 707174903 233651113 732454288 279358029 550925514 799855822 836310030 333100423 865028430 25436820 206686075 364537913 581739316 215614070 869920651 624512290 910285730 109538950 845509123 634772892 911923017 100057602 779927845 959756783 995206758 889789423 999941156 542520709 681877095 909249708 978355894 324892571 748866577 378071775 758860649 978828317 997425631 546726070 895390520 882548943 945853555 549055677 989236204 381284192 563549099 786845410 851486560 346662902 381329261 835409044 849356327 946830607 992785049 394260480 857090615 859411074 931379066 30935338 897767490 857038792 968824512 98292341 242234333 432020832 638165645 809409787 845984752 960959416 973883744 704636309 937077186 587836444 708110774 939439048 953152897 548536362 742530458 891770097 974886336 161767317 701748734 60727725 169393917 933204679 967080995 260659053 547046576 187247978 516682015 135439025 906584008 17693969 802248380 722508551 931485541 694469997 744419805 836373970 843500590 433550551 463997859 945309678 993314428 182617964 296733535 75723040 931614003 94033379 235307834 439458076 844715539 659371803 977007532 614403017 988868799 253306035 649299171 53599029 607704023 604119143 966520698 133631355 770068480 967281624 988921405 647848280 822499197 535072927 785742413 709210541 776000257 507034800 714019403 477383204 704979990 270839764 627500021 923860200 929834159 764978326 894692231 977869306 995003872 448886640 773239833 922394025 933589150 665945721 775667331 319919056 964298241 513615338 928931839 642728335 735761692 967956991 992770671 486110510 648267116 115514768 845965172 226831626 816195711 663219619 673020414 363857122 666427969 233817659 493524645 837013973 883379508 539597631 952483255 546419949 619995010 930224715 942337264 381725748 754357025 191292656 751946350 484296365 959470907 963813628 974214383 479735949 951930044 813204644 834675632 90764797 751935728 894189397 905493353 829746844 876608704 291284328 340011240 706702909 820178861 784420012 785426856 169597999 968832033 968966231 998821878 47406941 554109413 162200759 439080535 480046399 632339416 728164801 938205436 793987834 841881155 474981156 598545730 303415966 760174893 759480620 983933746 716048261 924690213 970751434 975522149 605250848 903351128 348214659 697378915 770272334 912581241 493339770 505094046 286267901 874626665 466671855 506974316 573521040 963705992 275524612 708227409 868987066 926963450 529561262 901391540 460920865 977865264 591557109 811909088 257494844 973462351 323802135 927562187 770016604 776194705 674856057 856232817 337719795 715079715 196010009 520419586 910236943 992929024 813601598 996727384 413635253 711598245 958571115 982422231 388131837 716501847 828792793 959231225 48042040 906389454 182899027 494154849 596580565 674094260 59896659 245661439 892607120 937264715 419603450 885374064 964063002 970374989 176155330 892104405 739422301 795688641 727464840 979027774 131884708 984303114 270278131 383032589 170146886 257026790 468019799 899102991 547810952 987596631 806084076 833103770 666374321 942367203 342641012 945670358 90025947 138616399 413356499 511414588 854464351 948880826 892753109 895886760 177874131 503008125 707224528 983328266 896203100 942475645 484636204 501537266 12786901 685548374 565796919 689385159 639357192 986894251 337825529 841389869 72987515 189390663 257449887 320899030 380507527 562118788 972457228 988457268 937120028 961146691 315727718 698271092 179171627 405529379 687036454 848708455 11239582 691536039 327148592 379306393 673621555 980671616 735955914 914516773 849015266 917217589 456106831 674566133 984544501 985185437 929490103 939134972 370476965 449309783 357905 763008249 198486248 499124578 462016034 750086638 382381297 597177108 293469035 970221677 539540644 644030290 224583630 529148992 22714710 306194923 648276383 858002949 81705516 369974647 92497903 864483851 100777278 660294525 46811665 235729277 925883203 997552171 840997825 915847750 546688899 820427793 774648731 888481858 759653780 892790150 191643985 648655036 591715024 605252702 35747086 49966595 516791649 643886552 974700045 996565349 801750324 977691348 214263508 878322465 223128531 491615199 534643805 572030868 57065944 773521170 846872617 905328724 711000674 860139114 890408087 895208289 880776497 902771251 952650634 957302606 377905774 625323963 478179884 799516217 957096306 966793075 12233507 623533905 738016710 828804478 632477082 722686151 951875228 984507579 493197000 830072289 831757550 852269915 482313186 632542088 438579865 791719088 691824386 873763727 216223500 239249453 216406991 632445202 811203565 946763507 426569858 433408609 773337767 927827019 190235878 561095094 48516351 402235409 340373419 680088821 434272101 889505341 189538026 905689918 341360965 817232825 232187373 576256222 33492603 587622611 695919851 876318006 622634770 633756559 951032876 995924063 262159422 631272191 228445698 241995153 596636101 750595864 338031041 591858295 1525248 948754015 310909256 890470045 953808986 984831903 858033068 987175594 851628492 898441014 841724591 932888520 575331195 956405585 643177373 716348344 40573387 794408881 803726200 949947635 832931797 986000170 668316732 833141630 458651171 814151600 363717659 712397731 828510062 986599795 760651764 835259621 941070325 956122461 936042340 943388006 947997323 990221877 293706147 911107731 519296696 706880798 424822407 839890690 2723178 122924605 294971233 390796189 926976351 945763103 892683867 945344497 44334916 425644344 920687387 982611187 616054067 634727179 756271438 876924649 749269953 860424747 121643575 833049348 147655844 878249011 378661579 656923069 717537286 984546513 281662408 479990756 656925003 973779710 571428084 776068452 264287262 557798836 906770932 974093530 439467013 739207243 633752066 792776222 946197062 951052515 663483720 915051118 247460227 779957589 458975577 614176913 627382964 758082804 688792454 834397145 368013076 484555955 82658813 998783806 933435134 956967753 917874701 947393447 718716065 859418107 414691913 817872925 145497344 510920242 692014666 967387497 585362499 725037649 661956880 950281769 906415220 941010940 347766458 693771011 192806618 809244644 155599812 716186893 442700606 809510556 423942604 770702118 88878787 754096585 818246163 879306154 962362745 971178367 488873433 868387611 172346184 300785968 817674772 988084354 689385823 944312957 125507947 820686967 950828021 978905878 176457132 241697694 40542645 797047862 762079346 810568098 157890289 539904663 723647931 844356003 990777533 991654619 676502297 995006494 842702742 970550323 670549260 881633168 362606821 611639061 997181874 998615714 955514326 999728565 585539112 705147965 602206672 735718469 857377533 988751767 626740982 666462862 756866564 842518394 280756401 680439028 267525104 370417171 457628306 611148780 105575398 551528235 276451383 459686362 990257455 990298321 412346157 792998605 2626805 415977456 164356375 492823170 197303819 679225122 980257184 991534036 178337669 974549727 568834216 999985630 265059740 675268868 31738201 643603718 262606639 962798125 163094706 580255079 985452196 998380826 316867760 737152084 945941096 989829032 169735773 272181820 479843143 843855367 712201621 765220505 51047969 802158775 927627296 998343462 587696974 706138737 181645005 198182697 198046808 337148533 523779988 825671868 625404403 901505439 907173326 928794232 387514887 523674995 580040238 866126583 980891500 995990356 377129820 781330370 291346035 597549534 660036548 661114871 652597613 692207639 841563607 901947411 500604982 794309300 604774634 674921746 96109914 191605585 593714900 826830394 89197000 132801330 21380857 858313655 907141888 957093981 517140783 610446736 217083884 300307586 765911843 909739934 546987048 794361278 474159098 801108499 873572188 970293077 613142355 968090799 597551278 788599576 641590896 876392450 357421249 965577377 29463592 153379620 894618528 918896006 343765420 626756499 550015684 735662008 699120088 928125637 750321644 924326183 78388648 328725746 247425140 609958561 666238068 823596271 481767456 815748493 951143474 993896679 302288893 830362260 541609280 991494349 262268831 839230357 239254984 886484492 900033819 965452567 13574566 112489768 501934423 885675334 590242794 732048903 165976399 721961095 427642939 955748627 514951487 741759790 101579891 982381646 426020106 537609364 607151959 766598642 805025670 872905399 51478787 564017599 38872683 552938856 640633689 787783565 747153845 891856087 494576585 846617560 880525146 926121578 304329278 978252240 973908986 991330164 332647743 358152265 32915964 355585231 845778537 891458714 324888650 361813529 897109838 925041405 568011260 896330278 905971240 986136628 964916895 974815461 678993912 732708910 919557915 978851699 443946372 994544679 384622430 717616672 416251475 979300243 153730647 680744829 240058484 588707199 259367113 996522138 849966542 864248735 178285121 513354543 792895685 972611678 958196922 987539105 740486858 958167903 740257129 924431989 927057325 972872805 827637056 829693083 758637117 791332857 185345063 461900320 181604536 424904671 745916192 769156477 689762513 921893737 717468800 797240666 144846944 269856103 170595203 472627754 707691150 936096188 852136015 870483257 423713382 773493429 399046580 963918330 468688302 845553852 56826329 71780351 602215381 905264204 913828108 967923852 370223638 416533533 43720617 76796689 305248147 588915281 687802774 912858472 994403527 994797875 236493542 492636349 982096138 990078689 71392452 804978293 754723180 867352587 603060119 735399260 470947365 955126358 807837943 948839575 250208267 435094006 684829068 951506975 904868169 947962681 678756622 746137959 95409592 128255539 767090603 821539615 51192352 695709130 214096171 980604048 790035269 842997910 703317100 975860324 838968681 924318562 765384606 831333681 76751043 891032365 386756118 801495993 702841846 960747088 758829879 957906520 870562798 958907717 177702821 403801345 811552410 896894913 427157611 456233100 961008434 969812450 478299061 488655325 604752030 778909349 833228366 837299098 831451931 910849708 349633709 741156545 31386760 561089781 736690337 834365814 979213971 995897006 191454738 424400996 830419470 933268653 817530931 859885246 735739260 876028351 282491180 327907130 401601772 606331475 425487467 468497830 484554722 866582292 569251926 891728136 368201445 419457227 146987450 533527520 183594837 538278446 756289640 965812687 868455443 913755643 449349533 590625835 553677540 925065612 534696663 681259065 69507797 382245597 123367862 956792348 20323448 869969141 329746923 361858732 534287955 633470986 869199914 984552743 266298732 768943520 787237767 867915151 167729301 620525530 423219520 784000176 20871124 143753143 66272712 625771126 386633010 914605742 582833574 675943584 767176309 974755751 268578124 764792775 296769702 414347234 782461480 820751673 919934322 980350951 371951574 460892442 985056746 992257669 721482082 828581705 932859406 963203199 474892815 978460956 6403974 657397328 231418085 583953294 643176914 903342659 182636437 831636132 822308498 904982474 167350930 516666489 417522344 824375064 294897267 448499520 109289083 450474017 81827821 607719488 886367019 929955275 70150163 655593532 752317733 918917412 7988608 498716666 185137988 500584795 275723933 868163639 138892728 794670061 936986622 968522833 28711833 474683641 926396690 964326732 714171815 783136090 576669050 642113082 376142403 657911399 221468390 830052040 631983855 675070928 468108 330606796 115879161 558969335 592469100 802239679 426890669 537147677 240272096 404420262 247455224 257554492 577112906 748933717 946608390 977685974 402817475 466619806 597784731 797887693 60069346 878207262 286318740 426626211 400525955 725793033 589308945 982443373 236501146 756955825 235398180 834353719 389321506 738605556 697902918 894055327 517866146 977286306 640434603 659480970 784200734 965195351 606034614 912945218 80212913 773218710 914085046 991318017 150150029 158468400 516963064 886571072 803044871 959178432 483616376 884782533 104568441 810599033 3025451 125817429 173850585 983253919 716310590 885365361 204242365 681470759 972320073 987654744 13612528 591026029 352182175 548759236 796051323 907184698 747761420 798404465 180264576 594891007 588739055 692375953 268465323 738432096 209931209 461292530 661865537 805830828 607998029 899876357 784077839 942946696 257493946 564354503 636310468 856085854 390701362 896358265 308573792 341930731 892490813 909345286 263143482 352673879 973274063 989003711 281956360 673244189 506011017 898422061 686307674 754164768 724085150 967113728 243861026 889065806 24132153 941573763 121251066 737143894 248598177 354169772 615728670 668324853 420756574 542190385 430463905 713376981 763664070 920027155 475472671 575645972 774755456 796266238 522505107 774108186 59896278 121809432 670089028 701076298 875147383 976040501 936049757 960447066 888240634 911322827 615379749 630522335 563947392 668727342 94794222 108106084 167186714 838504669 838092400 931755091 886457796 980310564 251338812 663660332 458848442 735705282 385286393 507195204 279852064 676809054 661580945 789710708 919796087 948943472 290720111 326636445 209552686 379451460 449120393 989075993 487954088 626688203 553195752 889057642 520047903 713208336 171272820 306509825 882407684 904046167 143743669 480109936 565381878 678059139 232596556 473358075 126885756 603884499 780435151 805394990 514170544 888454407 280569936 536837469 383111197 816616466 925565798 959770294 627317337 855581096 662679911 810719239 197060253 778569909 253712026 388333439 358316356 692007457 297703170 719372379 701314854 775891865 167763092 605961284 149746305 769395159 835954401 985360864 94758073 905539410 902637211 920459238 262194472 827830350 247082297 804030972 883375890 935014773 317519445 893700978 144413210 481285210 160057948 670197554 114357667 699975642 621079054 921285702 496613125 830147069 274886446 700132050 970398109 979351668 65879237 409737898 708644224 766174283 476519798 597812469 483688504 749215107 179951321 506347339 90540321 107211295 133022057 755097354 426095462 634302836 717486796 918878759 628095616 760302436 785471106 815667300 134836345 479680441 708111283 893382217 694141045 997953948 11139635 409484969 129328793 719093058 949571573 970959160 683392072 702259603 352299193 519182712 780397930 928814793 693913655 915491178 420273471 533435586 965678163 977793755 575703586 868234111 342680395 978430345 680268129 706172519 357554603 678704652 617209285 829263710 596900394 805720336 226585744 974671103 811938353 844303540 532359148 807128124 47422201 185905994 884169872 983831772 811290397 942367613 301361562 340716257 716097162 766349361 585551235 723726476 988419167 990069062 781979242 901329741 207621353 930984288 656873399 787688463 280360902 411281814 306265869 442235462 638574127 714971362 655663014 883229088 706739811 719212010 693584807 885077116 16498659 413943275 843537457 968326055 167469958 389769520 582391805 782738416 585490453 656241797 912510657 998437150 3361481 997255450 441060778 793122655 103762664 505471962 632608141 909882380 785052993 824185530 133158109 739371544 23475475 529614886 939006585 957313039 119944717 602799625 929015863 935528184 56567426 172744378 999474333 999661659 112744035 581036918 305596264 729823926 685109445 812911239 96424526 593103461 574481525 641922394 139040630 599736206 690653455 693566911 565693022 919264104 269519886 287248921 441563708 534265834 265365139 341185424 746508843 863386596 512931406 768008677 239267154 695413005 714554205 959968274 97931572 203342638 968231400 987242412 163096857 613387882 461665003 592456242 99642824 481110448 339924985 958511412 502728820 736968599 649346174 947710289 339193650 933248725 984048819 986645726 483880679 681592667 309392269 319802404 619499504 935181887 790153783 883436121 395059151 968939207 977950864 990328608 930910039 949778089 729020758 866537973 670337779 751349513 386158197 940115180 646365593 695217816 246026294 583181551 777958949 825641341 829699610 949030423 744808987 790067596 834247051 980061656 537805284 911478893 971816320 989590965 984787399 988153873 336588886 709320592 854070199 984735264 942217147 958986468 273451425 330538705 170034025 426286462 55353278 709192629 266601411 749682446 8642823 998241848 124217851 698776027 121073206 211326144 422951626 622108199 746686565 849241816 381790990 854686486 413167382 714227104 819777595 946408543 866738731 966600288 472701449 913832016 95905626 364283321 91771099 288348489 363790426 449017958 786228350 806113837 772638935 913156569 386690824 816345304 140001642 500375737 76410366 839294361 544852210 692497854 250565272 538698084 973098949 995800905 569497863 733747931 24941721 180611666 940042203 997452677 228790514 992503243 184855692 637140374 759212262 994152078 694058836 704879775 78036744 695389708 755913527 824851508 307631997 433077640 162912865 972924220 55706803 424703559 924969877 955416465 640389184 660694944 704212508 727166548 738534238 892661817 180273251 646464027 567616249 921875787 973108630 980791505 376867667 887001074 920685840 977482243 377796528 797840284 90157251 863045353 219065554 541773105 863785299 892594950 93364431 426763721 99872798 856410235 643813599 828325791 433146780 797781788 185630264 798719747 927437454 969475063 193711379 700139142 703798477 974064258 849135069 861757646 712643067 987315161 333426669 720212091 204513655 421390156 846771443 862341572 455054234 485205237 838658796 904968943 387019704 636727561 1846682 309727258 697996949 782322149 706977743 937393585 332298910 337999348 995685001 998319237 476653567 778597254 429609785 943480876 688671983 958758445 971344176 986332084 598273888 901174612 233802773 965131363 183433246 440104823 260857269 754499192 577674272 923683153 45082208 419521655 526057942 800858394 853451972 949879825 965017311 973032721 208195430 217227698 261487992 358084392 929695424 978516211 631054369 634931170 750308838 816994155 276483383 907185276 614188019 907342908 12823968 242812948 941913955 986449406 712609375 796802816 541231387 740844424 602668750 695078615 855272160 896269865 388679761 924226880 877829014 938621071 695480654 779650903 362389663 831521376 500198939 766589117 199228102 289679375 846574902 951683995 222020459 836173834 520415483 532575907 111905011 194048559 717577683 795462554 907473671 954761804 490035530 752914388 756720031 985910701 565998500 586547483 351851558 702239280 916825535 969992755 73322800 901325671 542728147 768641963 508588155 849564472 731472068 827800531 476537071 652930710 205888689 427546832 160255216 401941369 376375576 694513341 404119696 781410135 635434818 761933089 767814483 851102537 509636330 868814307 369683846 708130559 393641072 686711006 304389911 310079607 290849491 728680796 15831096 519194470 523401077 527291500 257786148 635358319 660052369 668306841 824274367 829968347 485411635 797727526 184075976 656150208 685233551 726659762 56402700 362357433 993892813 996875770 699426069 841122146 409903628 628311252 455258718 912682969 660504353 681379438 285578396 640847118 353157019 834665902 297090413 458356467 812486978 934883851 670660846 870879174 587372317 904011282 705064324 824405249 791204533 983724293 244317497 351107558 941802644 979765284 64705282 834399530 172772309 497692289 797786565 945607253 505002794 940752672 381962023 772735994 335558174 444627228 332027297 895874904 430148807 534779279 432639714 482675592 794054587 813851414 732256373 871944678 566967455 828367349 969822709 983239979 393675708 721426800 37972843 743062031 781846546 901598668 546532593 757815888 267094393 841752986 554179166 959670287 135949396 284215396 231828865 592479621 782950632 838113607 609081799 970668974 804094886 838015068 748216811 865674603 156963603 540216047 193730960 256744881 52035218 925777120 79625473 494551946 851483122 880169218 15105271 469352133 591457660 719223934 421088601 507031626 728102889 804389568 428809198 566144370 619515644 810056438 450879918 700449160 13365904 208611177 299223767 634929825 342099138 709307067 137691242 438609965 589902742 627748969 503585067 943078956 690305770 805762056 617630139 736551321 773109892 951671734 858668160 950433885 651156986 830843690 453421408 771694292 834577314 916354113 157466492 599502305 838589353 963772619 418638393 808629076 428159908 464087264 165104659 662957720 255305223 288552168 150931489 190363374 855375602 938445913 3989501 802729176 272896236 802935487 285112013 655056183 796186545 897874953 542274386 843142139 583036929 780114999 710203592 766293697 25624002 499540083 474405941 956588649 944300491 972943015 389621595 989580567 463454173 512959873 159422067 938178399 97967240 827679513 588177897 589870016 948804354 986292715 727310460 987409769 85798420 786663765 770484858 798835950 947233789 951123496 542192566 896656946 966074947 975124708 672155447 703850556 121037820 857738023 293212850 976593984 324678899 694881237 437389735 919319088 973698329 980712063 591278975 979294418 720352493 980465753 374572379 557048738 693568078 728724572 594303889 842582505 125926336 858785878 351949488 405369479 929614040 997265989 238940112 456248342 141880739 699959956 853699240 875943949 591259261 823172774 573585237 587933487 454461612 603320709 381868077 773038063 219076082 260817265 412214360 532814837 952956193 981372804 306715376 717756684 366162812 442048006 413238493 650500371 715917487 815723234 896053883 950590020 839297668 841946584 911517698 961225416 504526206 703752908 982109953 983417116 429335894 789025566 574746829 618654036 184312109 735073164 250287624 502105402 889324573 956076773 40864047 665879813 175774907 483915559 722965877 988629162 976752912 992550657 180364914 419204136 558447240 969878116 866791308 897966627 409689153 969985359 139521466 697555949 106046552 160465268 533148011 837131568 35074073 478164677 936050670 950314077 127660773 644193455 60856595 302859997 857913356 876842587 964297172 970415416 462051237 588018895 437166368 997231641 278728925 894411239 576239665 588645326 565020111 823551584 226712557 746236184 586371866 609654971 891847893 993106748 311671375 725053910 253442855 374432495 796301688 836311400 231461162 725626677 508219612 583395159 98256429 873556277 149587625 772312172 272276657 617604407 726621690 862594367 442125852 488062990 974764225 995575287 339823358 834952263 711596188 810434011 384251350 728546599 386999713 861659543 636240976 866897546 970223416 973423832 189993145 542475358 347898655 722404209 946003040 998743983 988674408 990997824 154283031 241478090 762656605 946508892 993302038 996822176 364969106 782144235 428719561 571521652 632197862 893307700 592040139 874906516 48729721 409920641 277642674 674760226 695316624 958995949 308537421 878049476 9887972 757602891 781471542 824193706 112828122 707372812 17334115 197412357 270783576 427111875 817078957 912547577 482381741 864907597 209531201 651098750 368737306 739262504 476928590 888211098 188530908 999294318 568982149 817630183 729295641 793364121 4588246 86056654 905715810 931076791 33811707 509526261 164707440 455376968 846610732 965247842 202504288 569870462 133131015 447754293 349032112 762200866 181897939 699462892 896540848 920900594 442334984 996879186 281933287 846502133 646690431 864772538 243037937 937666518 907099131 926712890 527318360 567367542 355273103 888919189 998803646 998994372 744241132 902406696 752636626 838624613 900883904 904628037 832293332 937468154 404816503 802999822 482377330 951156799 640192401 651580972 696219847 993596446 849250627 921803934 32018567 230070413 221527551 241363976 546121782 692890596 589751137 949483654 354613082 480259978 256065117 274282518 594248855 998954249 33304032 410814051 861572335 863167809 628157521 659711748 813420244 864942261 298324754 710770643 216884274 441452628 187701899 646484156 569194478 602696100 495836493 947203850 874161996 893740108 355271624 624881815 785859733 888221747 761945197 783290191 316421899 961706618 780372219 904503537 181373735 804578728 122982565 671314099 473408858 589164235 199625372 385396508 946817200 955905285 774787130 828566010 942165548 944484566 120176893 440609518 278865112 804302754 434140893 831754538 512590030 544967907 203356446 631108411 784163438 991802241 750706708 888623577 809841306 910243466 723146465 771113173 271249480 598052509 617438356 720383848 257667774 602229283 26144851 479285686 885084006 974507065 487280933 973732931 768249684 875450255 250842489 621050609 740292274 810891539 840260165 922083030 670164544 705161318 221681825 456153527 846396178 883157433 812110585 883476887 169548959 916893181 567961443 622869960 8175814 360407915 716359223 923669507 445873544 508880884 208579318 278088990 545050616 969569858 108812183 430221555 908392058 944265890 569550315 797607356 92654486 542375332 901733375 992413853 58862688 654595127 824347629 962964117 145661068 434815075 336390224 535401262 100105812 261808896 953737845 983468239 499829358 782308730 652408588 941246404 253233103 743997197 270373570 385775601 887376743 941524069 336606003 763472332 783296918 834215291 564002694 921883592 954096064 958603347 486628696 963917228 398228213 779729750 428367686 910168488 615380509 737803254 933375676 960087349 678943483 863147584 595293803 645070786 158917071 937393833 120110601 631715791 592796132 622969982 789158140 832267236 145335479 844346015 744837387 931945213 115889252 216874207 694395547 939899985 862446088 936103790 68649911 301323988 515620257 824489808 835651829 844322960 836858356 930257889 158666938 883452843 367074000 486127136 638402372 928084423 38946553 602277702 344014710 388524475 178802167 773523541 130967861 462548570 740473325 821469202 914879803 915305814 885853374 936220629 905845609 966187715 417205663 547429173 767732720 814878979 549954285 696629386 859646525 982516302 732939024 871733160 133103684 983922620 4636140 942152275 57829682 856000739 568360761 761242141 119229235 931640031 68661051 466512433 30244338 277603124 812989772 904471389 12374923 660791871 422720485 787241326 732256572 778943298 61535257 600952144 333787356 860155612 521438028 709653165 700020288 812969105 959970448 981471959 969780000 991548003 647760638 704614703 706992993 973510026 929481729 997876833 981553277 988935197 914632795 943369380 67286500 881258852 398555165 459159387 713319166 867854609 728124921 903753814 964473396 998336535 91327977 175044889 432657963 632033426 475286132 488270773 388749842 548264698 467044252 717317858 721308888 803266754 276112408 635865386 877127490 898054150 550312902 712683023 519768180 895551299 84582838 987535740 129600121 288343790 211460146 421768522 636127679 735419332 116829724 493353353 961256652 994768296 159139733 671275247 793192638 945024340 207908755 319143205 278619961 980301391 605305068 629782675 982391432 990354909 50680785 564685161 840814335 988405605 355364260 782747744 964847469 978562025 374569117 573279415 298911288 475854321 27320226 290179547 287607589 446164167 14180071 846123949 326500963 802315500 13494378 576999792 252567900 637844271 184261918 196184488 519774333 895926230 119370038 675426500 955615093 979883672 463137124 923062472 724988206 793769745 390136558 509801044 352888315 824480561 151306870 679702701 125756165 417501101 362852404 963739251 364932400 682290278 177578273 602056494 297413074 894276088 511087881 847861179 735166474 945813436 8839370 945054145 762877383 774200037 767466678 825238180 607013513 953327618 844906291 934362836 652934287 890479181 930196731 956679925 5932038 993868807 896266125 974228137 810662522 953741514 939544250 983925571 146278301 477842793 716743419 797487083 150348850 473985206 348046805 855657568 914949621 953644314 920266120 960057333 512178993 864396338 212175126 970889653 935222198 991900858 760193738 988626687 827440345 843327488 38551755 766872721 905171731 963197964 786240317 865923270 878421026 950957044 5514420 889622173 581082519 984480678 27173840 745539474 589449035 695941833 229335758 290914792 819235216 936518737 862304722 987623391 52081065 468067376 711770160 968050172 771509257 792784468 8814086 35907322 560001366 930851350 230664393 732168702 796811882 837998872 436580714 720136301 66373516 784569317 620710113 832484693 649100068 981577075 346686631 398093710 393675765 398390520 121597487 753878019 722203517 879493773 6144149 978143693 562380952 702249544 567018089 567466969 461129378 932722253 801055651 979513744 961818853 989337545 171139706 336334041 882944927 907464457 99573410 400215793 883339449 984745865 645864685 839587625 151031353 380901323 622123808 898647981 448712245 643809847 531738882 777230198 513768547 517762675 564418306 865961475 472545533 866216540 713371021 913480875 940397586 985415500 222602960 952631098 895931905 986368366 290043692 540952241 164252639 350573178 21550192 272921520 717202121 984612027 704239729 762111623 44760623 846988502 297079888 815420860 798018878 992834092 491079961 933475281 859772208 882772709 8244487 108010155 351439793 905261710 286561930 657041866 632645906 648624944 91738930 757736820 268948426 310658975 261426079 949643115 687240875 984653354 348029673 356865531 913353921 915474710 578873549 999227231 428912711 635527663 223403909 639381742 256094889 425871213 930444738 982936117 78062165 733975013 290330536 976349335 200684368 237635139 289200583 402491111 735541075 949682371 472864906 981140760 706515609 842400438 565664404 983450370 575747575 699649619 671351736 712477387 598762610 736734248 658386356 785333729 907536962 942165929 603856408 658981625 534532082 680294319 595936147 978536143 77141821 795098289 485186669 592823202 95856410 578992461 332399259 685972308 235835671 698697130 177204238 856634104 937712254 964387145 438336860 468015388 802220705 816964965 943780023 967845355 683450332 854436152 476342111 807455854 799959597 840865815 785206644 830596719 709552880 772974349 205838114 982351630 159444410 542773587 995386094 995949399 365670348 467518081 660499481 940227778 48991551 305626304 539075493 998903488 211915082 703992243 81391218 777249043 526135751 634614167 1270058 49026909 260423630 361285172 848321397 965592197 900086676 937068865 463481363 735553465 464707819 957741690 127059972 503578044 224903559 268230064 284126685 652702926 803486875 817284961 486874992 556774897 609981045 725252411 262006522 478043801 439075057 479949788 563947859 973283073 659084516 698428154 819740412 863814195 779908708 925762187 356697012 451768352 279971108 661529786 264046763 538964690 360707827 847885875 783533007 878197115 381783188 831628504 205421407 537359281 537394915 851965982 942761219 950457623 775363031 857465806 496902695 956660419 500139133 794304896 423705438 974575222 550816830 684088697 310189456 962387631 762127580 873677992 373958313 669263588 110746849 572473993 175826839 279314484 62736315 327269121 410377419 476209578 96131330 649018292 687678261 881844999 967513480 996864158 625369547 913419909 977986799 994526342 217218039 248490562 618141647 744032183 866164885 918246063 343658997 480841537 632674251 681398570 319072663 381792016 392696646 853306194 957666612 992670938 497856862 572986840 519379472 964125035 553846875 690495480 686724391 849443379 415240340 990676659 503943484 975497232 949193957 989108042 97061898 769597239 682292482 745356124 568197710 847548076 181718098 405510428 943676971 962505602 578938918 716523718 376756259 970156156 671071958 962498150 212067736 682295275 844504704 973257044 677206787 813382404 941837052 943020744 785996801 841527946 495660162 591573873 253267011 930696856 133286529 962232961 165688275 921751335 364391508 645967220 665225606 763351120 12995521 854024975 94049108 713883025 927516154 977962670 601813215 804102873 275066601 570348486 663587383 798687675 468307543 893344219 566703724 772776879 617228194 627877655 236999948 424097767 434975325 773917072 439240526 556352876 418485301 724882387 935883707 991536492 219380278 831184096 258840889 522223276 570786968 744954986 879239400 926546362 366958387 686848066 838797915 883066349 853906252 973401916 272546890 684481613 999356110 999418298 29396749 829665110 281975227 628823388 726208222 976883100 475991091 702744312 60680305 628025912 221729658 506896144 178710869 840325936 626802531 881077436 173853916 890304227 173914593 474074539 199963841 354196096 383821394 541323046 593533262 669053846 63125567 604386818 668184909 954345708 539700469 839661263 110111542 863355218 29339012 603552267 961242852 967236407 502411577 879257158 467287156 766513216 197207624 780377359 193853154 558355276 984647217 985337149 462730792 858078880 259447735 752538411 260614407 778999792 593590983 612596593 183814435 709026794 628216468 682572375 1909910 534238692 463920258 730411053 229275837 784756447 905581818 991108307 457439683 987253085 76990499 841685239 725109506 759346543 311693217 988953632 182344251 772111830 438534134 668572784 302570350 649598715 645223458 854968153 697992070 782564584 18757187 754630454 250267710 383919268 79413649 887756970 821284068 888982193 333963983 902718324 660501244 663632462 164155091 965448833 97197308 379129585 204450944 951057803 869597110 980172202 856625101 990181122 512520148 712311352 321475681 645790290 854873712 901698806 128689852 170142759 229529989 259938129 522111671 584682389 833846011 867766823 590207819 736277291 189473881 972792409 507952696 962849085 824952373 870395243 679577213 979021722 807377067 949465238 766083803 906877426 670610897 922128202 416000064 569196677 252153844 639421736 361158713 911350446 674472839 702996922 422744236 730844096 992466417 996464417 283368509 462729367 337062357 757146415 482454701 859344711 206791615 521955998 999568907 999611023 765839000 805184114 868967519 958631614 367838391 702785856 620603551 789859651 668903300 759404372 603825021 771214397 490380287 924450462 449464867 457007405 369718325 379176561 234334494 748512649 276166313 293291529 715348919 982260403 228209390 387282044 321451981 628210563 194191649 843854098 88654044 666527329 996528115 998344940 721672599 753430961 832457345 873059611 14143926 705290707 791370346 840710658 492035895 904237724 739632027 918048999 134140900 343243230 386800018 804077505 245731895 524400837 836609258 877940405 337501484 660960483 549358247 854450218 974819755 998383002 358667877 559866170 260405924 478664715 476528468 592300708 936368771 950473839 875093458 991201901 559089997 966277251 890068673 911427816 73780888 236710334 366115935 904096616 171603728 318071763 943939919 962588963 709476808 824864838 886567957 923717734 654355503 917394136 234471098 263689937 147142619 351288497 379338599 794230118 901501492 956076130 256900550 956037435 818427016 845306046 366426122 528672189 632894424 759856994 75112502 295502076 561779885 973355131 747786800 912493083 135150503 692043693 623041432 798427941 220511230 777345703 224596498 879455605 766430549 927900084 174972162 254052477 31825275 419203825 546722032 680184751 474772031 752400820 844206709 905794870 732662817 877239633 84327598 607472540 145911349 425928650 490793585 779597474 398391335 523543106 177886695 988422981 824269010 942662746 677590971 940723789 590101604 951435084 62542441 840319081 354301060 809132295 491114749 667174126 196573329 732077512 973665145 987049756 774383731 844273205 332003460 338925126 930178281 996801540 173565832 694309651 963820262 975026688 183359194 229254772 194431049 600448893 578455034 956250894 225550670 629848562 957114260 985615786 740595733 938100651 905913253 992085334 878640123 886297472 440781287 879854717 257010276 720905723 796045750 897077238 974847375 978584498 744789358 951087260 85284864 894961783 669816454 994491588 732797886 915770984 494608739 855651517 882336701 936008749 172377044 728970836 413475331 802162328 158175560 414733000 750340819 768831833 876855383 947665705 668845161 937011907 341165344 763409771 114604057 934221793 16214804 226496106 501628972 902506517 484672640 909210678 920282060 947993947 584005677 799573604 795093089 990112462 975612939 976733739 199315133 400522272 168963060 998946497 91722233 758552615 908422155 959117202 96923753 946812080 630720734 644579753 761913824 881880879 937183313 937750829 917479571 930383489 840318244 983653405 422421680 740781021 787406858 872417646 554992656 981476090 500708302 560924093 580467223 693964831 954420198 976420688 416552577 458938479 154382387 467500516 522407220 614009990 557022742 930371295 797349757 812087479 446328732 784132162 399769713 693164356 267227375 802907779 261977815 900692093 16887781 792761608 984085183 989981511 493465736 797529376 600253132 977245587 842983081 951501926 383186462 568112228 486029313 573504216 204905130 351678879 68389063 291370681 810338353 948636742 860008639 896199051 608155130 846082085 840199816 849622238 981569040 982029011 186321633 260437633 369439280 857830182 306110438 383132470 362895348 606989658 956961436 970584354 734415723 820073595 184015214 637532711 885134588 917003393 72269789 891830495 615426281 887543118 15625455 379967685 792453383 993154156 25817918 636206902 547388678 730733229 695207730 860169924 37477299 403961850 902028530 963915619 305708143 815377783 842004346 890625330 4306537 689785132 651687652 894338921 819989822 904315856 872493456 970870141 662428756 943580904 670351406 874603658 351301880 361500298 393525672 725399701 326784140 407834771 198742639 902843307 107392511 488805690 980941691 990354483 220002648 698977392 348833442 710287960 361259545 670602302 805643872 814947382 850698664 885846109 252549145 867198270 826351264 907819012 275996750 696321349 418110959 622418243 613991805 811160027 388775257 970113940 535554670 970665556 606821487 925859976 653845691 963822821 348327757 385381476 399146788 744245272 780300958 923425812 752125162 989218762 876086432 964238404 149949352 955182079 23992702 184540978 916019728 992953599 436379526 804581870 621843161 840554850 721273183 941137136 311392734 967770536 88751918 334580371 112535044 898032010 431913147 704371391 602485539 677474322 666393881 951011249 497269159 892071072 849370299 987865155 305283627 538994173 611555783 918535220 452858499 477609590 439899829 619416628 332046646 574327875 952925259 988329090 635661657 760173858 490666767 867101126 50887007 669929825 266245386 787426471 87996761 422743124 302650428 932552697 516113960 874530008 676010073 813407688 52850104 193865221 843065970 891968636 306599372 815034356 738357272 801634261 300944460 597356768 795788677 994350548 590501781 787309393 528745650 784179215 890118823 920133011 447588336 462710909 840177504 872969924 407606132 466573607 529539140 853248819 833262619 970940977 217189365 837659673 549346826 952982786 283653413 957089787 81062226 855091390 547763852 673954935 225147145 327790363 500877237 803083420 767680103 843415160 831371995 935848965 447551786 660218982 703418767 996820965 271271720 649577834 137959756 589087715 450937361 717835186 374147686 875802423 28376081 205269421 810873904 855859070 199809537 688396839 846894938 974441325 242682842 672563480 169962981 423480596 1178884 489384793 103321206 609126421 689660228 896838721 990955609 995329190 376737949 858623412 872114457 912037550 465336100 606054481 483181816 769273866 440635872 999472619 649112170 694134962 991860648 998006027 83086819 811556362 896101765 981228795 265957722 601356637 468491108 477978521 183539242 195582877 843368287 932843650 24215430 189306020 548549424 652298470 956532644 986284751 352529105 530484859 548586384 659897404 887788521 957430996 1302745 953605290 373927506 697800855 490480689 715398177 722071153 731306361 551748914 929494938 897936824 931978060 150797219 663984333 996737275 997570986 333473090 992306434 59438601 439498023 862016915 996439439 338438621 851817322 468017739 843391129 951877614 976805869 761528663 968644356 336251320 396569596 749619161 921276609 607496134 834149917 190302314 577542772 80373723 379627599 277137132 663740111 642372357 726277780 52776889 360005953 164393128 551153797 74634511 180905037 505163980 548802142 696536316 747595635 31544656 903844051 764808164 862144565 187405897 633908189 25403864 511893393 716069060 719462741 95610625 953699745 296589765 404563230 410424829 630623799 455645568 646454067 969523261 992983071 567460662 759227511 873926200 917136877 507629339 952799424 256620505 492604216 463295622 591645508 624349336 757696989 326088211 612090859 109394142 231209639 47270196 253079723 595463088 872352542 210584296 526866797 877882941 937709457 305060822 919279686 361918851 851395797 450481164 845843560 187896487 747070141 641973962 855865606 440008683 919591133 593062120 690560918 815414118 868313658 515142518 680356907 542843680 999200285 764853407 829369964 675052414 889814999 430616546 947424196 50345557 813776746 873517140 958028533 502629686 764671391 387664434 474554033 786708565 944187177 846612718 871584608 107880951 231629361 75564239 462263708 553757538 652110252 61683837 317879123 96901425 141928223 387073074 449904255 241724889 629422107 893479303 922338943 373113703 536470462 249597410 633081758 3343510 669143771 814305083 904320511 618152364 900306361 861945256 930623016 808941657 841555511 389298804 640056288 313723072 489553259 228233062 699987075 68888436 425246034 39037568 744839259 718976533 913543285 272357100 304900735 308164593 731578002 542259587 737774814 181767366 919413550 270520837 338239600 44112380 622439720 271793292 280032288 574102602 828041254 427391007 907383662 290276960 885510623 39987589 435030482 870250079 994662914 104706325 225538710 881402932 931138940 667957248 815193870 962787283 964433866 707088002 950926904 961371091 986725456 29359844 801698401 361180293 728785356 565627409 880976290 992413372 995480879 93367325 813687899 677689457 928998141 411298217 558138787 186240954 389574725 209900564 423568300 271407713 924874558 884180500 984201303 650178788 923519572 292464179 337915901 662626834 888000131 257738165 778359606 515318149 984599774 123572576 270290058 966505513 984368908 830281275 845846268 359159112 749232723 424691379 849645539 357890165 679717351 830999515 873825930 648143437 962121830 610704628 803158468 57706967 201052251 809361918 905460329 35888601 214311054 678455783 735188534 159612995 572715159 383933316 411669458 239207683 312788439 998066757 998697667 291545224 524061836 330475269 374527447 104080231 597031217 161237030 648323859 277823539 455628428 950365240 988929041 399758188 616865657 833284083 966930467 221412198 372365029 964818564 965217341 242512316 430054932 482863299 511728554 744994395 829494665 173671915 390670419 559793942 855423232 733739876 805126740 192917289 543537200 817836511 825478852 740875426 809215245 858744867 964468968 831738128 998939284 768800457 772616895 8902488 283319300 544399800 639343763 933386309 971096731 639155742 813738095 219637321 955601025 372507268 665938178 175819658 607467913 489326582 732233210 255762639 286449151 59892152 348587184 293081846 599583219 145196418 997421981 305225714 407058699 102336624 942017605 476992499 734094946 496124085 910747723 684567664 950399117 922507684 934404786 201020680 304290154 19628291 242584997 688462803 765746727 9521778 483328396 297082370 732794826 379115202 660807948 365303267 742135102 248316171 687836272 589975873 995709661 682185799 846193535 906320163 937282301 560916566 959343028 262344583 946565799 667328306 747091533 520046709 843584685 812088268 871597484 17434631 753489607 609044789 615724129 56736226 697458862 141840939 982170385 14518769 19583704 664839816 832407947 903430579 958146187 96773885 888714986 162470724 963960677 318138639 357352252 240755700 565129578 317179997 399115125 288084710 990944066 417064865 978666010 560109160 828880154 696443406 852051412 178895478 381882931 739380143 934398991 950185460 991493368 814384893 952681220 114388076 705453021 698438677 922447334 216446382 994061312 833283507 875771910 776636775 989381948 736569427 826458495 141168621 662126050 857536444 882876926 303768210 739999858 371764815 663592117 264664411 561995155 78665496 680866160 856756392 988360033 368989796 422883814 74664484 987335103 195413072 873782514 220389407 728103614 312519468 509940132 819544265 969689042 282869201 369583759 417944925 460167367 324726290 894992299 991427266 993140739 36048905 868727855 212227453 666877303 122820933 536096779 553522829 780938736 279193321 585471132 81929135 837900392 70481664 629179262 770413238 889624525 324016016 607699741 436241545 598102542 935093897 989043001 38258336 612675976 38632256 63766414 350145913 666791629 868142469 882382068 913700451 918545659 186774800 261120359 343170917 679220638 9229721 829544586 37474009 139604099 47948128 373100246 269167145 395478089 919953408 920056797 57742806 606702786 439028084 501215656 350487718 541766878 552878271 987846653 293980930 663991688 176913450 651634747 242895799 828909048 539174443 706410616 613986667 965765450 598448522 735325526 754734679 968625119 555213957 976755047 253764991 628575180 604439348 652648808 224523797 330388125 928904286 938482098 228066773 857424009 948265881 996244675 990771 307978893 156671699 236931736 442478305 799855368 767586445 950215513 74639364 830651833 207303463 654026155 629920926 638404813 898255785 999583599 644082425 851329844 946384826 971494487 225701172 787410313 29380428 632089377 650898743 731951824 428045349 630858070 640739953 704241820 155905336 335960041 927322894 941611668 532743799 812655889 978550075 990932136 445436993 640434866 602971243 637596370 395287799 941955814 614595459 697282327 418004608 863761368 520363643 873952375 944116134 977651271 992696270 994038512 645033392 917807278 649457599 889543615 858407536 861601236 637835085 736848560 218671330 570161269 938944294 955467684 480582020 907021866 983232821 999296465 675809251 920846585 935808863 991040950 249125953 637082948 87603631 647532449 972570328 988923195 2890142 704093927 28697853 691314009 413204745 436968153 177033462 623225599 118975665 520729083 233295433 639405080 478314859 907795813 731499696 861922407 683004524 874519028 95840515 594054573 435665234 580965269 722765612 796540155 807511053 846446343 919525546 925487004 31732523 505990207 731464012 918145835 239106847 396609355 323796641 470212079 157367170 765594255 999502709 999824922 895094622 944837841 781389802 996672024 373433216 823522595 833212302 898053448 569165530 890419375 342482629 364124301 767178640 771662002 110634398 606616796 559874303 732258285 200342617 205577928 785746987 912962638 147633440 483099802 118178649 413010555 667008683 762621106 714332118 912645932 239417323 982276698 254071895 477049306 81567662 820657955 732293686 997996370 155175971 376449258 106529655 958912440 852167612 878326712 643961840 868220701 169022043 503631351 914096355 953618416 941657925 982150068 714826815 963438912 343400095 568379943 254232206 544999608 264941833 485498785 863153919 967362941 159541269 206483690 503299017 949262539 920877581 969970595 231889168 976225130 90459998 579719597 252131258 389156260 792002029 936020812 629290758 692327616 597159814 831873726 658503514 877788816 321633489 530011185 299827636 861133393 110183591 934849657 212657324 608185875 954661496 972082204 167527174 208344325 17743723 660956852 57376472 755070303 558193347 805402851 124944639 235794949 135168730 374277674 926864798 929865046 877486861 968698688 174946712 338070455 562115590 623289763 319362437 788192930 918178679 964588518 953497545 987212934 736106308 950478358 713796248 997784710 431982199 797755265 775124216 845076515 553378293 959809460 817714313 819811454 992445387 997529596 712789529 902316965 877961161 994137942 404066881 665551292 976464632 999288046 838736550 999754569 524738165 722552089 119868292 204213507 372034947 990443420 581306305 734792402 823597285 998760265 749857645 932350013 232617383 342898290 299502654 527899268 57350431 144277099 487492308 612937856 164274133 248435029 413388169 920186411 958117220 984898146 546506567 842487639 189894437 335325957 322628220 355026205 615052039 764847867 51640263 706687811 74212519 819837496 337112900 495254796 62040182 663022000 952817144 998469593 541433475 597712468 587481723 748935313 911255772 986508231 578967537 976784491 565645518 783847993 784319048 946453709 17066830 988290176 742309305 887644502 718824739 758337493 956309734 961442786 291366013 397014923 554866982 611088214 704760180 992386981 133730380 307173988 612568164 945727161 393629635 470488843 709317699 924718037 843552289 867564768 765178055 909749959 996664283 999974120 683739641 881018994 874872945 899955537 75113124 732727007 78570552 731496390 252409932 697800695 384119910 521966483 423515732 794257145 938657802 939140233 523192054 537414063 747162338 821669634 355636937 946818877 933714516 955765131 735836194 990893559 97093556 539215835 292974364 507808381 143767769 422263233 929736959 948169928 912869013 943451298 773901784 789119160 48727624 574021105 710280000 816801009 507008369 912084531 989632175 990201450 561271671 851007312 131824039 730107571 951222475 977160207 285425445 942881668 851202398 910516779 552737358 685527870 139379662 280358452 874200071 946660757 143904217 706983336 839028257 860306817 46823482 737355599 376919046 941347183 902681888 934082400 455419818 619467279 832236305 920552482 311109267 793120550 351336593 776686539 283614978 830352520 924580257 966266778 365885399 368257367 262665428 605440987 540194654 948061339 682891105 685913183 26267760 990951013 303833502 999637083 855241312 984145529 850426665 944037063 687176446 767741299 547973946 777823080 700004803 813941805 467504919 849509558 518952457 784817448 211010531 488014136 946385405 970571295 979017265 998310443 958181430 979566209 389963311 739759032 215139739 505783383 476164803 665605604 374741944 655621254 436419042 873118800 533976327 994185595 415542381 865912643 914002378 992832806 387295313 616641186 485794375 750963753 523019111 688817570 742284094 837837225 847183969 886428184 547950441 583370234 384104238 459705718 358857853 926645115 658089596 671616003 24495867 411708855 640095746 890086831 292438360 323878455 423388424 869382742 560795122 712845814 553166936 731953961 909099633 989994296 741944277 742524680 944307978 958537052 109890394 138604627 927085642 988499108 686880106 938295465 464882162 524617973 744621317 904942087 699386148 987742653 668194990 770047099 659637508 840652598 373278919 758921572 650180482 821351503 933364643 948834257 133465059 553497391 203266962 546265273 476381743 549745411 456756032 772873628 834335226 932294791 541801607 661534528 966906269 992302502 930050704 957363451 274038386 516966420 228779380 876918020 896510822 907074059 416576587 779974691 228857024 232078007 79521053 972816006 616556377 844707568 295929827 689005939 149758522 465626784 513190802 905234740 936286111 975942144 149122278 853161670 904988717 933862681 914956090 921834102 52470412 562135590 189004579 705360740 207372482 325533891 633257718 893630020 989190694 989923708 440906929 529595996 133678201 367692681 747353509 775565031 78240954 376171437 749050836 879078146 143824916 204065844 653623131 808485676 240087053 367145955 522326889 554285381 618081232 844666592 248697265 702816988 725628805 861659128 124461852 469998561 790846787 971687949 189823116 356339420 305420405 686146420 441026341 635918816 997111397 998055976 460088892 683784071 855177106 987088343 497323477 888577122 754495976 791170277 57147942 112420096 150576151 846480595 860819600 887580995 677718388 967646063 812250171 970343462 992389754 994482806 866692349 911102073 172938157 590088572 638037301 849467193 857101993 881731449 456194366 520600437 606817556 882496942 251438991 719024215 717069326 964997271 4678904 821637793 945709419 952435352 973165336 973455771 490919557 827194379 747149915 978844918 577798074 855336320 158757507 579700117 343329463 518863756 490658254 570712627 61657438 736534186 737590767 812528195 993432099 995442276 614280394 908754068 676264970 729607214 444197086 527556939 953979787 974034590 875879063 970664574 41618569 179134645 943576532 970266532 667029805 865480920 234647347 453117041 438245023 873294537 389688003 399167118 671841336 761640775 739006775 859921209 638519982 998543277 866333845 998109032 285094112 734825107 85004016 533954160 136804694 467175672 281976760 383425347 272519241 500794056 885361990 965454574 289165781 740219833 136958815 959321924 430379655 987884270 433243228 853065654 204083296 795448768 577269467 649647986 361437519 690788528 42852103 431299370 312933227 334896643 274763508 963108946 806610808 865689108 821683986 859683585 723386435 791967674 809054901 926693011 949606525 991186392 12913867 781367310 753528949 757205895 849141609 970623167 293146611 744348236 769809675 896565347 964818950 981743701 481848 558337086 921092179 997486688 364809993 585526239 906299209 926139988 194733652 398257753 229836409 483051381 667739608 733994017 146434880 261238876 437115651 921940016 337276535 993143194 110236431 893691609 893562663 941797061 712093409 792472229 544025606 903384379 954080061 981783021 849412287 901611520 936583431 996111308 15296895 545231074 210053074 281200371 211303116 751228387 181242783 350681484 711669738 712802069 447023946 932684610 889612689 998173041 924854904 933928464 448982893 503194471 388712067 397831245 329639913 374470250 71277391 865380662 611750901 909056325 632954835 710070236 275712311 341288608 694929343 733778454 870496080 895247547 240169219 564010287 77826733 168579631 51677343 657945712 282953290 533151399 780541473 906018152 829237270 969329776 60262803 231335942 453491297 970945202 364613520 744360392 648573452 979439608 367721213 643386748 455804107 640564118 172785058 408449827 484655700 754689522 231681257 754459823 560534395 839166592 64397267 583186262 837945077 857852617 478165919 569256832 406637146 987346143 907411806 949463760 792918826 833811122 426961243 461043088 947239737 980094865 911211549 962110964 881230474 927578308 655468645 781889734 602367066 763405027 500257758 652835152 502706243 773648430 569093504 887779237 811596883 812282014 63760095 458547158 683188306 919902448 437150828 778983507 72186427 715752419 900148908 981480557 711455841 743267602 223760171 430427653 83957673 815390266 454204931 458356559 832222665 913302397 953007319 985485809 999232196 999252493 522498438 688016762 674506071 940375425 400099529 757754398 155249333 170534620 454746576 946231055 876147932 990018549 750696281 992099625 507689021 799647435 9693653 75162835 250504150 481015023 869056366 999469596 995107889 997777348 100415523 758549913 991331015 997072807 114375256 745069196 151442271 458507926 182845493 300434639 486366708 831463236 683178580 699429571 148508018 795709816 886499985 978211580 693670238 934683971 692223102 867247205 297734873 677160481 901292990 982230408 442211770 764128568 635810286 658998165 356840278 838040706 650859859 960225993 433379266 918000647 169353037 520711060 699586637 708518224 895294636 901409336 952745047 994251982 184694375 541701559 841575727 895440372 294439023 753693337 94904500 339783531 160589929 466192908 591479252 945729883 234778161 269891604 703792176 989456748 270163743 456298235 525476882 604252721 864402529 881831578 255012146 779409682 77188713 474219354 169405128 521606515 212015518 895525719 412844923 843474458 515326442 738090791 813222349 956502860 414226750 887251327 923234578 978594457 569236279 866197556 980616136 994199873 166395292 395612268 763340765 801508543 424533548 439834162 871339850 963905737 50948394 363222011 838238685 898281363 126136800 243478780 821596088 972982993 487240881 518057863 319657782 970610826 613315538 975329991 141585040 348005386 636057821 891137673 487180356 718645411 863518440 930077360 180033244 465243632 546537803 963712289 39554287 257450958 675066258 952525415 299307094 860285702 162687174 307568967 503091531 806201904 38458894 383453058 155790464 651442003 303729799 568641723 502029923 701549877 703298392 710887706 123662999 594211286 744038884 867346305 581625194 590054251 809718400 984633320 267247328 934314323 500501798 736494397 27611618 226623473 592022121 861147662 255816175 544645871 389927116 670633085 465949946 613982802 221741282 511531678 298959628 948484659 58575841 499888941 89879293 189573894 519829168 759130196 482053817 501115599 362802041 658991164 580734801 980482902 817535007 945721358 47621964 482201641 791565667 802805891 343485296 813720178 808097746 831837460 700194104 850056907 480405086 799921462 728608286 900079151 604754999 662395995 22051702 205254922 740866292 864906230 716828938 912663742 260548366 264172265 531901546 699186666 701068682 896371044 731010007 874270355 753077812 848497127 856860221 913302661 815765856 955623872 54256668 810878198 48307428 165533482 564062729 944132785 305914299 831418604 375759400 388321338 203669037 217315212 897302723 943764222 112229412 866639021 293773117 677848185 475245531 969234914 16899441 28499878 654759050 879642772 734098959 898065117 928173141 988016756 394204788 633523919 37349936 234729212 891875719 975758524 686375450 775579241 169579350 998576490 799598750 801469747 293773842 922535326 943526459 988283937 78292429 986934140 736657298 757132941 226213809 730550514 248835776 376426629 87142382 399178011 348756050 812366973 239945378 960780351 743657075 939158936 322745188 393741847 830411107 995771799 981582957 981830325 69388912 935315692 751295596 854425778 787968611 896857242 932594106 972359513 128423675 772350375 618551248 720323288 747653508 774751182 2779754 473586919 761617512 847080335 394955865 691173817 828536380 981369441 263685800 546325123 275363121 900186866 520382765 625445930 707660818 913793453 463486399 525467092 634017694 888533045 385329433 571368155 537085893 817845203 541902970 892646116 766116350 844124569 374137284 836055721 820335223 855207438 72337083 300836313 325092632 386109544 87032255 759084897 901379117 913275940 865089181 950276628 600183029 649163919 317562323 934994367 336235195 526762663 408236290 573183714 60856593 232677644 150113481 153146557 139247707 572611854 547131226 798966105 98075385 145806350 172862878 369551847 39684834 638438066 55952743 879826084 142062378 994117898 913139683 935725550 709948688 797036006 372728279 897349229 305882710 756780514 957465657 962985680 832644977 864592729 396009780 441656596 550308437 887180530 168614751 539548132 50453822 925771093 472033981 505317277 475576220 971645530 828337555 831217892 390422029 541807839 940303025 976633241 788740666 899777195 565692230 980941117 148070243 242332113 135202076 675376271 838983286 915270996 592291056 637140482 375824332 801553492 670168499 746692641 650569064 837736919 43323218 545281452 786052087 955508302 669116536 797981114 278298631 767401874 735619523 931439411 384793117 616805709 138580470 239774895 955945660 957424694 772961360 774348184 316001720 823469364 19124405 670469789 938718424 958515046 224517648 946457431 815313724 927298781 392857360 742062754 401104661 979553744 351092857 497465679 583203696 698688663 135241373 264280198 13456929 267363367 106437038 980240383 484557228 808151982 359279931 847501277 305795682 805962258 878049410 979770772 912381288 986486065 344665460 863188795 731870590 941507032 659777296 785409139 99644544 962064943 798483865 855149103 643360837 770584803 112941974 208719959 761231324 820030685 285652698 536831319 547124425 895336006 804758804 979046125 264218274 782987366 194223371 892031798 572090211 753285002 673120660 951814255 659624487 931040462 771940422 823774881 324483341 490164895 156630191 844393401 181564869 389291284 300855945 515418650 864013671 910204646 908001951 928172083 560441117 838633242 719064356 739167869 214149942 289741200 462520672 662972743 524764243 803297205 505669199 869169319 580587835 797479745 571977823 614385685 466583999 983945533 961229932 975493798 43486868 610596102 502997787 568410698 154216504 651279059 316795203 360096138 965632949 982689492 282983345 684825200 232042162 302626973 895526709 913911448 60731619 741573119 874889123 933318510 495491445 648958419 972433399 989782920 864011986 876787347 819913282 898478451 176307028 296287463 459299189 618774945 68358306 930256069 407156654 561354492 941380899 976153522 573991025 998663464 240715711 937467773 379997515 499354768 533957300 972037772 726299774 781427199 990304110 991651992 116797975 818364794 776640533 877019530 982194683 987857513 833077877 894133369 487035760 881957155 483235447 847340239 255107658 653430167 64831588 507948320 293625950 626567945 31670243 758571196 852656585 945452951 423542367 668533792 935491434 951183525 567354474 721119471 337461840 823855531 883599787 939455003 752605306 873512855 492368889 783945300 74365617 763482280 159305430 293715869 420191088 536318637 819601953 990152033 28341395 532517962 767860243 773026900 682912090 955718641 772280926 788997747 115971963 455363904 670404849 920761934 184328843 963794427 314859266 971500045 676592840 820314395 237898778 307392719 474088184 688658609 854064318 912887820 668015468 918055503 733520276 769654557 513771021 799336780 828177945 980239788 453804997 517968352 110368284 251581945 30916705 243653747 279422519 930325630 103444889 458833497 956556981 964989704 560916241 932075414 856204122 961408211 320134112 673262368 1687444 422174475 426225660 851518907 816968158 888330547 147143619 367448978 486125316 766500152 612172419 941590342 860592294 985226670 83567826 649658011 457484510 910385527 958374689 983060936 846850165 946548224 840646381 861404640 539807459 877655576 781636611 830431340 385039955 446206847 922122251 948116301 192932069 394792908 529541998 932628750 65724630 793444101 216821230 767102941 465408856 907775551 871869104 959586970 625300773 740040112 263617224 487946580 660071541 789593151 520293135 982546954 338803044 524416070 476434208 798661458 29208214 813823303 875332683 962108518 969906351 995498419 314113733 906704859 107675819 128971087 974506205 979517084 958766232 971434078 155646299 359141369 198769677 413177584 854305672 994834274 735820626 766174229 215491972 882393719 303486982 858059040 191431110 862232478 485033308 869452060 173169272 400176357 32718416 841192739 632588690 786319007 967499864 979075874 919513649 999194295 69735761 313038290 393450409 421377610 643354936 784667447 921155534 981525684 526066871 616340611 746948256 767312780 634922053 977077705 965420462 988664206 779995865 802245385 579531853 728409031 520141309 929028466 712491123 820051410 349873328 768165255 12798784 822280016 584252256 653350265 351865685 822850685 854023654 886526532 258257957 684656609 954488288 981618581 420838730 554450988 61465370 417825387 78850870 321816687 107937364 628373204 299266795 493178775 910072105 916397391 239219374 693160854 574458987 700224341 844800908 877622776 155865163 995861571 226591317 669582909 475117764 504828745 27834100 130355906 892150593 917517204 450719786 882193586 164007934 941057252 972607624 982961430 168514602 443496817 735331657 899461204 110508568 596722873 630412531 871763912 797271741 852044629 649808958 877751105 483811134 816201955 677980206 797106734 552998722 711986791 765932243 928036594 512097637 931176566 193962621 642226278 224238542 344565256 719384967 832104877 159520051 952738295 369115960 728703638 545893275 749296244 610452033 887746314 354409861 580263675 446296174 825388551 643958803 975677241 128249792 993006134 518037187 604597846 527727210 995695573 379940828 727508496 988709159 989964396 573755015 938284031 741727641 985080752 725342917 950354196 883492891 933206706 614764614 828884979 598600708 697934088 970915652 980372741 692729290 729781038 767694235 914460831 930565504 998816340 974008145 990294671 556176697 921660647 551330597 581501483 722719581 964596210 392932719 724530595 455199466 979978348 391437399 685496823 799557268 874291365 413013945 928779987 762385558 876513255 926518205 973712908 570323476 633631165 528956694 941068736 565166379 881126780 274632717 357715459 736207372 981737480 447365043 479687863 657871025 855657628 474362826 967410927 138569321 907297149 849651082 994905514 924225641 983415691 52138180 797253880 192220789 280743373 659250970 771745325 164606687 800784762 49165572 759370878 439080503 812277126 500170650 932777164 627187487 957720407 923865068 944152344 321166227 615715838 634750242 653829225 612006695 968050551 372331581 603915776 458599908 815761442 258268252 742237125 305999698 609311845 360428920 743251571 907660112 936895598 430393455 524658703 821949851 896513189 643980593 668265294 116480444 920611708 694740614 718631374 516876371 914254797 89351755 436831221 785304719 978529089 891749282 916621646 981173911 984967653 771716768 883705280 77138534 646742410 432042210 690475724 350505452 959499179 396457956 614290661 553242344 685379637 139532045 219188522 893015159 997875545 162441783 792911925 67154038 672174993 10176683 400859239 969401696 975227670 819906883 886014389 642154048 973018824 578583909 692565250 186891941 611840413 683776344 922715116 470906081 852298314 229916788 259046052 982768107 995105431 499244781 783327240 443115915 649509928 80099698 863725005 824088031 854402069 790624049 795077606 67691797 182381318 129193127 539198210 879337779 901056171 988339795 997363540 44261122 335566595 249039720 735069456 633320526 752865279 748057411 912805832 770511408 908462546 438027267 484872011 116433959 449781087 52488666 678098461 371104451 990849189 280852851 704070602 474993667 934201587 24945976 431874412 840930301 966054329 845202084 926770435 575895796 767142745 253445545 843640475 330797387 651846707 145340528 739123784 498765742 732436295 103225072 565518735 680171018 945609040 81048137 802833793 820109828 823242435 972442197 975362319 120105877 533444564 330306079 552224485 397362215 995490985 319801667 506088852 895818466 976171674 409954145 661073669 967677634 970820054 539890909 877902521 134361303 284338497 708183085 921753580 140062144 847108925 824365623 862233870 488885935 513084094 791002048 847445062 891100391 917312037 404827235 702516718 48157919 539329523 976240871 999727518 349114113 913219077 664672219 867721786 953857651 981780569 6717287 879670679 683260757 805333394 157500907 862500101 117363286 374647647 80355187 216873606 632841352 649134952 181382594 759337882 114460431 732063683 680093773 875305777 216869691 623655159 28580030 522997132 849402263 956218942 58223738 94391908 79518474 481279280 300736833 561064275 248469222 467067084 430618534 770407641 618343883 918924101 677064709 799562742 687876114 700178841 430023183 468697913 700119318 827281805 139012221 291930927 463799555 923983583 957131057 970394996 178544940 695750214 559451963 592733860 788427144 845898010 80727857 497729881 943974170 945176371 289035727 715563224 796247820 929315490 762787008 793801785 187466296 742668100 33915737 865105826 941482097 970037882 62401330 154164052 411920455 508416889 34135879 95108683 742653142 880067834 134483330 345443089 55583785 581096323 816228699 845564770 979770936 988055064 122176468 943256574 4625136 704653201 732456905 882502518 187500892 250956961 119905200 803614271 868990994 895558522 455003239 658407776 355039083 588470394 869119711 951182711 766187557 853335616 221338476 490209005 146260873 533124596 857405326 961726266 801974028 888606352 140814066 453677710 85809976 863469580 790021256 870331978 982722855 984456900 854539663 857867484 17854364 953252811 954615715 979203469 748044497 762622047 357400106 972758117 430515925 446986797 12867645 690214273 838462137 848024320 593616765 608322731 127563203 725925953 706379906 736826382 483765504 640029838 634441762 768859396 928081166 941102465 239639909 971309003 649951078 973704305 137692097 579232753 347388977 511643696 325651627 643173870 619851301 854109894 725206175 866696096 25074479 169154584 87143330 722523497 641960825 736296795 497015278 719801925 662032469 726045244 406386744 889745869 615939473 776029293 499548504 822490777 633740491 735832478 63513224 678464911 687234859 691605658 19373215 436818222 302059075 719785642 652261843 682303059 545835056 596299656 202910097 380156620 348665286 701992696 621049338 626451380 59057066 584629061 298296888 301856715 825978732 844892361 34381021 639701343 39425706 702314775 756744264 781655688 658287925 743749267 127885387 494155130 389975337 916364828 240259180 838726594 787740918 884017461 597964754 764801676 923996820 997244530 257840832 704426377 34994941 332366008 93336415 973680879 746377302 976213367 698821538 892128049 145529103 624969276 676406648 863021240 605440793 740073600 949722929 973978970 453739183 735067395 523059600 973471091 608271126 641349912 745296399 813667514 567727898 684817901 702200109 732627779 893242768 901571126 604338527 628520748 519184160 936666890 244560879 514179501 90576462 343236759 842612681 983379831 382728989 428853004 309985839 886848716 642482343 794343410 923479847 973600342 539576106 994912925 665506749 697965201 608866234 912274788 106953676 593636373 932372795 942016148 191460475 324492626 994521830 995791521 850625502 852614351 948054408 984496761 417700418 575073916 836771859 961586438 531948442 814331112 714524282 790980518 801493558 978567785 690658200 952533029 359794377 480131104 969806957 983542101 773855207 797949519 277652961 524537912 754328324 961280616 688572410 822782392 407893257 989960353 761626232 987464621 275522438 648852210 739585058 762388124 150958557 403660642 425600341 611731304 635736101 768206024 702843608 974806821 689401699 791299454 561647099 932279520 830986346 950846647 438463217 646581432 205156999 263735971 588562728 743441874 414536989 520264580 218564529 404526490 356936699 982332782 27301740 573918162 363114750 714539688 233334872 573488032 614006285 934082381 273751002 402765566 859081473 938144087 711718157 730386530 725439336 951480951 343606017 935040461 607914399 914322883 897413664 967666592 822630320 888278066 239591678 848169871 242407271 912451599 876985174 896499225 425922873 756982455 881352693 924709496 116067911 575662946 382961661 742219530 437724437 708425435 90260792 888602009 169558196 533748270 261774640 477204070 599075676 732893961 827897014 941535787 262356797 340656581 540113518 706913145 38312564 259728448 708244212 940865363 97537763 681058076 655911945 908980837 808701995 958833404 1048560 43150344 383071391 963029488 474916719 817063800 587658440 679828103 968421467 982456673 537818551 955793540 235265088 491300437 263716733 931355705 970802763 981903143 920615104 948624034 918339199 944619056 190920080 748622066 195548146 965591091 524017333 634049231 951722984 977425221 980041946 986160348 792425411 877090415 198579744 637328800 747585448 897556973 219116221 541441684 69358307 892478734 252196901 437262311 344774493 836738040 449978450 841779347 473758226 648063752 618911161 980481374 831849915 922513120 336165778 929556667 242013922 575433036 442263285 927041508 321280661 972515215 345738344 923282239 285266331 536908130 665755677 787493617 869523366 933863038 239790310 321360407 488317487 880574338 120068921 704965765 268030332 573655691 431848728 735381148 563821160 861901534 549227648 792044958 855806611 943916040 229495511 899639056 826970988 925839204 211782448 458675665 50924716 990695042 40784479 641588316 500115148 655168704 111207790 320355545 714728827 958001486 776631542 877746086 49521547 641899998 933249662 938098473 981639810 982409435 345968761 821696190 678522842 752126982 535775627 598030286 77220529 600147240 492529126 832613575 257506460 949015713 58587633 817862353 598750646 895459060 940232696 970187707 18704719 553907436 270715020 829395646 495795208 664045739 3175485 129842472 726123082 887710206 733001368 800085264 444669125 707305827 1475289 173285034 550809409 717259731 970851977 996298852 720203188 836502460 971317626 995619346 236130322 303572713 881564857 951811987 447953240 477407043 806385961 882791844 121065960 963330626 973641925 979455902 829131626 953547433 451569539 886576159 125455772 171924364 30806050 261680920 823744282 873685622 217597341 228072727 992756171 993695147 69192467 199221147 525558227 752202572 657300717 940659293 331113483 463313536 779405266 891074192 870448260 905414388 370945510 795496611 158585307 559429751 10824965 428388694 643820810 703649700 530194994 828918256 197274269 916096180 389309155 659369975 859090154 889984340 62119186 820121969 710831104 907788217 256631742 713577864 867723231 939071699 38610793 816661797 483723834 977765416 333171079 714204310 302078745 403025004 844349328 886914740 30799609 470329523 753675647 765084231 364860137 610845100 766975461 950223411 933536916 967208005 422507442 853379850 860044736 970683307 327929767 740173659 715058297 875463608 246468799 981785389 251561954 516117272 184475808 872968645 573714837 579080386 539955621 944841188 65910121 161820866 780018864 947465886 89991868 956948796 556747923 607854438 29853290 269109273 719815144 827493209 379035458 868509332 233329860 273325647 631652974 982903996 568768568 718642126 971540743 993402160 424248764 480389808 552029679 966638562 133543438 955668127 82902149 111096527 822941542 912102964 677813283 977704047 708863727 996867000 39064894 492278482 864338564 879196919 313662458 981292801 410380174 671716110 372975596 961336701 955765565 970527050 490843479 543478486 16347711 912880661 416182920 673125313 167858593 325729596 595358669 765861736 25065816 587548542 732464496 830080503 74795580 338220587 822743659 858906582 737095042 862188444 988959373 992350099 678482003 799267286 969061605 999743143 698393 279589936 66863630 197136745 39070383 264685791 510871708 696865443 420140824 442170156 137522965 569469950 884419923 977247869 722805855 930123695 607115461 867668772 991564436 992793129 860233876 934856900 862296929 982121085 784338674 967366716 628765411 945850129 16659279 399073870 912356457 930670983 466443894 762820429 405485358 680653550 412532496 441329692 998877305 999327803 837972408 953261877 584208494 915502254 738492782 864693469 600430735 685848536 195597305 872375383 27663383 801543944 689002339 712851707 601216791 713611243 323932891 544863930 470830947 536400247 227067122 270112647 119006244 267511435 394371986 778664131 636848784 692877766 607580018 804479726 220435082 599094384 503525036 734436134 237556501 749209364 932190604 984666132 527405862 954120865 204170272 991160195 294350102 307334609 305497983 520999785 410063979 498936051 493034441 576579858 507528749 827853010 556343696 839142571 106503603 528215282 627745411 630588089 945629707 953224813 188745769 711314389 500107704 556172420 485718369 746571399 904423516 940605522 561062909 682758128 275484579 842583959 161868738 619070478 968604968 989481563 982831567 986453759 735442137 960386014 331397200 882630368 880634315 942335561 989879337 998089833 845274935 922124321 291015234 639767286 301495497 366375767 954938835 956975031 330417197 764122143 114570522 305751984 824611764 967588029 967490980 991723845 731804080 761607242 563282690 713159471 311909894 751374950 827488222 989614104 140262212 674610937 785445810 941726532 16156202 947628570 273001534 354079987 724914704 927132418 800311242 836335589 25296451 770081579 762588026 845844849 750343892 902784869 13001454 594897396 229720001 469973098 714710090 715801093 818391408 913937252 163355959 807299743 605681982 907322791 357855708 364474673 300411316 538821393 906223040 917442445 904729246 994220461 522566828 843419333 212388038 816053271 875177395 905927227 272469465 463514137 390521613 948102051 658719812 990424110 219329315 277247891 91978522 362591546 310833844 660059818 49184002 881797416 343346568 346523904 704077500 996765428 986240142 991433092 668188260 958295845 366343204 892907550 205063655 749908304 621442069 639570181 217587772 494933330 315293238 643550571 509482044 925822900 525720557 796439725 563001708 875908147 465411063 878563262 443682629 975507399 209622793 992067731 526745008 870342465 498705255 843727103 986981159 993553690 522085159 563971496 815269049 960782093 557817660 593187699 876976175 994886609 657077791 954277653 887831982 964256729 188695866 513662086 603369272 901734952 503564165 754717136 801734029 968543214 949406447 980934483 894233176 931864731 586857699 629400887 334742719 786198063 882653998 894459625 966034589 975133218 501992513 947735187 314304561 906347116 562283457 685191816 833037703 924380259 789553166 791940383 986807939 996300101 441321303 767798044 191635744 489757960 137505465 440149487 55238882 917770272 563571559 615256580 967010013 979170586 987890195 996949366 523600245 772342271 503568944 737219082 571185157 923904858 239832272 357272629 497592404 815122962 842634569 852220383 589832680 893138634 793438190 866825168 942816131 982985335 509440041 617001685 185053444 302234569 699734440 755546771 899669080 958297565 967477896 980246516 902365594 959709990 504506454 809693288 170293498 427062851 210211255 586774436 89992081 127996787 779055157 981033905 81577532 218176075 800070115 867305002 225399497 622150045 554616248 730681208 941469093 950489481 919025950 952741688 217530000 989812665 113905412 670368595 877033218 882742830 438511417 606795827 306445100 683369998 518909168 599342865 775105486 811166443 750277458 945847628 457849583 643879863 862151188 932329821 233264603 415302882 321310358 999645206 635426822 835998258 648961400 834318430 727043696 728773213 433145434 784023366 533584264 797729707 979634294 986131635 151978237 734390817 970747135 984288800 643962931 721177194 94195911 96665400 920983679 974906430 118638572 481579180 734698226 879981597 859710519 907571667 773268862 907650210 504924540 957419683 288269539 771925442 46111954 124731164 251467421 419353422 211595892 425439778 908583064 935401187 174594269 979901236 361692172 520122775 379596523 894305129 976545487 998757843 82481861 354886751 476996265 534442991 593319683 653731000 812707187 930608351 705493583 913461854 203840724 435293326 430359328 686314917 162864172 678346480 444315301 912197207 403239309 509562740 263275199 321755695 101032558 331540027 455016031 680681415 340888245 871612903 273778155 778704167 159571207 611235760 847452829 916678500 450167024 572286301 235139241 539542041 313976836 510119085 545185365 602366445 26079540 62547109 750362944 789842105 720543654 742579989 85724939 338902829 711966102 816457702 45256315 416174971 759407859 897662614 853199741 914057237 715999217 811842678 596721960 923351255 68619598 957094529 487237376 882451563 735876474 948077486 154490787 685446383 700812410 788323392 694187275 845924289 945141533 973125728 931420856 984452804 706802893 994380845 453477152 819924104 110645704 302427453 352349027 842637843 890158445 906849114 633495262 777094233 912522200 988957261 751422200 995876302 240290464 968461637 968246415 971754213 711500047 895602104 171246582 842406791 790113028 899124135 498147464 872008491 327607216 440592859 898602553 988750987 347408277 561985192 881772826 994498467 639613180 793157449 21241599 935103321 414919311 766683870 303623112 657982474 344013082 535004868 489225682 846005666 895909105 947799738 681084737 882777953 153818894 405332455 937793981 943275333 392061916 848175586 17719495 881580789 427566414 539929942 382488188 488972986 122476397 564716265 170336734 830523068 911739022 946666970 371411644 438805795 525255489 607700759 92821529 435078830 593165133 857969123 544135975 794247204 894987252 896295197 225027377 226716924 456226978 729163826 981499448 997244082 157255915 629928910 706910061 886642241 881165703 915112426 145516878 186122846 515804881 639396497 860194457 895565188 955254291 972017002 853917698 977982805 540056899 576180847 655098629 735475912 540115620 964487146 607085664 897343056 408089020 740810290 702094510 928315890 416995105 461834314 853819583 956341281 411836894 412045740 381040485 883773955 994241994 997124520 611610899 663560564 499757563 693123989 841407341 856923350 325950596 376108555 523884734 565634770 577246331 579901471 654538163 809625291 945704875 986850399 787180269 886312373 210995416 244748847 471008706 530973584 487093983 912368746 669068036 802754100 183653490 313688936 698852276 998525783 384333343 461174923 408289037 791454569 907767743 933060702 4341775 762028393 148203354 942517617 57490529 368615512 533332722 715399825 610691237 954361195 277884675 915872973 373005347 543851419 924232034 949891384 626889858 642477572 313986790 711263282 957204842 987920805 615079403 800019854 361954549 989325719 106209462 461253738 348747373 589890881 102171175 710816388 807341781 846710933 768531030 816783093 446948586 951786586 891628220 944266107 23438698 566186490 836663372 967543253 647033579 852381069 932876440 973021926 72158248 821456506 653165047 696098897 163610063 578746833 30286059 948122094 372295016 433643911 852552656 893820366 314379859 894393219 428663016 462903697 565695529 882536050 525633353 585779667 957374808 961045216 438605960 468027787 805346610 934983434 682501636 735986539 940145419 944257313 326889326 882662040 719017740 788243767 870019817 922628120 882542498 956990600 254411854 687550520 731332354 741032820 479175851 638110048 874783533 952868181 707877012 989597954 857060414 964338124 248468859 833460495 261602981 908031373 813187597 907410126 883331773 886801925 944078758 962118241 455413758 498491158 568841691 623486504 553395699 693906961 382212868 723253595 940606578 975190700 912087050 932623684 400644946 843544820 450398687 576130185 849161678 956956350 465724401 891825817 343538936 760013222 120717524 969742533 781709016 982325487 979368605 993962490 175847581 732835919 273252276 589929524 22967906 815023280 178449854 832827297 643380718 905968514 689672384 773027254 924657062 950134793 509671728 843186626 542007405 662545578 64645952 246800809 292592840 971350777 241132686 744848271 891545474 926792775 227560593 419124722 242744203 446275681 981478277 994018056 414127757 427025155 142204820 825609612 115098671 886484277 543692800 889461040 643867010 779173590 190969333 911130336 218706140 637765714 461420817 720913421 358865162 913070592 238617100 556462718 431900431 501946670 877609976 913947059 516171428 691435999 985244793 993653253 853180383 972753905 710379734 842427530 427306221 902337524 897778229 903853013 322421747 865450814 296729457 712071463 425386943 750602760 652093919 684603048 736371209 874194419 138204485 700995573 98338178 379261180 231520014 720555971 641422606 949565003 93668939 682420083 295563436 561348649 695313586 828373441 469996112 516135226 681905301 887825961 26699437 558326399 431558205 737216386 982298484 988355428 498707946 729503464 580622991 950752243 47377624 513326743 272243491 747519549 587623449 924440374 596999355 691746062 736635669 744539196 918298448 940400048 145310172 866994933 828862007 981273416 289788563 342034531 9256792 486868678 653281171 743852774 171586704 711276887 439041156 669295308 158361371 330992886 263911453 924457161 194199307 934173826 964009746 994710330 664519201 708817689 117950855 473802433 619040573 748122880 140425948 519058472 349961298 839108996 794685709 890190001 46757780 163319217 216746454 696990942 414168596 927819037 412115668 816604111 823459018 893451432 821236396 912794363 406835349 574227365 958662750 987966466 2059630 381132624 177328811 328727610 247315455 505857199 950288278 982249792 826403898 989590145 548674157 859618154 257266260 571452809 308947303 681639484 861487601 922575269 285325752 459280840 812350768 905432712 828407122 887786820 401624747 894680990 717480963 921375327 577735085 728203166 9933273 297083675 515206920 668027563 429819764 475142785 59207789 621825674 794526557 884183920 378008074 900943586 392391830 522228033 218197064 625858136 102501635 844230973 941258749 982248355 77175487 234833116 983321337 994355409 848705388 961806142 667343591 816532527 10450200 317962057 47240442 349042292 632872088 763877731 188869255 538430292 106929355 239285826 680745551 731386518 809351815 831856292 123343665 553487470 225501122 642488910 852262961 901339160 387615695 451157588 316511967 937264314 886393659 998538631 493784469 733821971 204489426 320270636 355218214 491884172 537963046 558262883 499651005 550725918 798162919 963886361 505875901 683974737 868426755 872660376 475238881 793002865 438146464 929642604 291289748 441067640 561888955 962237486 658700556 768036814 457436980 668892386 497255428 716341400 670940668 792160882 956894386 973386220 875576111 906312731 180319914 335291419 622932606 786454263 736829734 749805667 333691622 412116667 38188859 184186768 201872904 239866221 96606879 876251277 734633317 994967419 854475574 940929073 871177757 893587607 227923110 417483030 315952734 777360598 680755879 911208405 72034370 381485370 203730201 764148058 880910452 928079595 134096705 781136570 633507350 839437455 159549149 586198551 394105128 760431044 241678349 820927365 471440898 716459320 39125130 638984444 488334672 588026151 248853655 862375332 362190531 986120558 397012683 857111293 649665979 797221321 635790807 827866366 898319897 914754065 488143319 720733678 999831291 999922077 919987098 942615676 838913703 979738154 815907987 861196582 696538561 747910986 556477475 630384541 63305189 230482871 442982260 886552155 194114779 709501219 307781109 761195400 937106648 949926152 896187634 901057687 290149199 868920328 276269836 696408688 292450612 345294654 622794353 770023782 458632348 804384233 454536630 999940868 219793232 337145726 756723604 852303009 955135998 957931090 445947649 523107671 972302837 996155986 902002323 943825709 131041750 528310454 151162177 215017900 646741432 893200008 919339639 998419700 167288566 828279118 136180867 474308885 430783908 787939473 951926892 978126737 836128203 860070033 218952921 234642738 153799349 477453175 151791896 738689492 364490622 959588884 919826119 920654080 224258270 993242996 555013706 773246361 715685789 902361063 18928183 81466803 124579298 791439923 579541365 621693234 50708035 381107385 837374676 908737915 490301766 624357693 240422056 276748361 429218330 514744468 976191810 988646098 228755236 316229987 260238483 802219303 161118984 916814400 950363803 981972461 813570885 942034423 308062279 585576164 47496178 709466087 371837269 876962460 865659270 963475532 487092848 774467234 219967364 840033009 167590708 719760444 545170080 681006139 393887524 575289660 972644210 979598931 420672575 761201056 676507307 839777511 170599411 280006574 235770775 858882455 102946707 676092443 992745192 995185362 697632824 895727172 724554418 869323649 191430017 211963275 137976632 952684662 151487852 540958687 697042617 871528893 937593580 968171368 67232929 993678089 835848244 949848401 361800366 588626295 884194852 912694055 899735576 956013376 389254796 488231884 92784518 250531273 366370552 520149743 316319421 537114517 544280416 891970552 466077835 819774365 289175138 814764071 100029152 973063584 66495261 160533148 783758164 936863065 300385224 874583342 133888323 403674205 325428484 888634606 467973839 509570501 497370633 639544881 266931717 748670890 381793768 629102981 867874177 976325529 864161560 970493785 957846403 976172807 988072815 989374481 436258622 563298309 290314477 493950458 225102000 522920220 765079017 978471511 375906256 799288425 385908778 534367081 509855428 565862160 214252038 443100569 289979611 633202442 20318460 840877082 342554788 670267638 19493030 265054604 363613010 395989443 209428885 448591686 574529994 859291901 882329394 921132203 566374618 757078407 962304353 975778719 381437606 978140848 354266612 444086378 56072822 781431316 419729896 991641368 102947328 366306372 426591242 977767012 334201137 579144499 692758733 902619140 531743042 880199654 920687612 968460611 639635607 908683154 601762132 898142400 643169374 864754584 547348398 684209104 312308830 324694542 296464582 572430789 414685178 939134980 765003077 926703945 890263638 991446068 102639347 736579276 558531515 864012225 986292488 998394503 998960998 999152269 327768614 502805168 460375230 602674485 441788612 975772946 782317081 802739466 103339173 465872237 128608061 547245319 929218920 987312520 648285011 895768798 113757665 690402149 520922152 765671635 9031645 610563394 696443631 792441143 335615200 580336821 914760188 974705107 144128606 288461236 977620877 979812329 714562996 811682487 865794805 941351827 346178060 477692427 190827104 366511435 389330370 954945175 403312555 580309625 442859260 986894978 548524361 619187847 27074960 734922929 453978679 878793968 663781144 907159112 603653448 797741208 956869950 970430228 727953859 923620854 440686222 523826270 317474489 513172079 636309432 708804455 634778792 736066607 163080374 960070572 696182023 988639588 420370393 920219250 38014956 985078545 174892729 707017663 211129717 848073315 913989427 983352773 234919428 905429066 756359024 833223065 602852201 802377059 193268078 936920504 596546425 875192554 52090099 912476312 484699237 726192094 25256172 301177093 131616725 914668009 719935828 846459929 297781312 333886914 303066471 539537426 528122444 860296133 74758360 706006966 722948851 767317059 301906506 568842828 471992541 611188715 341446807 748766710 274592749 484582635 545830705 891849371 75277215 992945224 773830879 782849848 341518487 794185157 674290806 733362809 746287873 767837869 125286010 563566340 872307183 877919558 850121347 961334151 56209381 208665643 266196262 493167961 492168001 846153220 830237852 941992986 158887101 292996514 384391450 947394331 641320527 729412407 992888960 993972936 2913204 96056200 72817301 607311311 751125856 938135232 8409967 203361776 302863405 897619022 838462088 981963234 829582030 961566916 237726338 293986878 769963091 790223913 610700666 945215877 329261759 673775858 515157771 591975291 465364076 486030499 405301798 691759106 629589686 677542527 974858778 985460602 581809379 949964572 762973057 791361366 440536873 764981535 739332320 867491450 1686092 678854896 772441206 973246910 178451874 604613718 518303565 979528993 391518585 922906483 418157625 748325870 302656955 522763810 817328105 980505801 479831228 673052761 395697917 559643548 732087866 968374729 470374567 881144132 282916359 598521861 416073334 710075327 680918477 706951029 494299400 523479317 584535663 849804280 24850446 717989652 770284292 813242571 238047152 947135077 395979887 487360197 532231973 842912172 298489098 473282361 13321282 952092558 776674327 809098591 42363691 909369846 509028558 966490111 630987505 965613190 260057909 879146068 253066015 975266157 771016259 931494787 90715483 469881777 964305115 976487477 530357503 958115351 230108323 778934388 511447861 791842087 213916662 282004607 521592783 603675600 347552392 459075179 349876553 812228042 35562061 169677256 533160842 656713546 164320822 274619843 236342064 245581680 127070615 717283085 310789709 833293913 977142351 977960426 846796058 937706257 341074271 864169697 957548830 985205828 561701555 978160531 668271635 800868411 885825643 932933794 31272417 861602067 340578515 530414629 95547956 779594070 596941298 710063368 638003928 803574026 610007306 819161846 566742019 779471456 626558382 731485353 610785246 688794252 443236993 794857339 880086412 917522210 515967419 618668940 999739283 999811594 304510450 942418643 959643518 996848094 825960903 977380427 540408063 697254428 903379449 938462441 327401257 473212269 302932515 909094993 12536933 933412772 472610401 768406466 451937092 572206746 263826193 743750832 417893448 819063366 499679839 573875344 739038526 871966504 902320803 970144161 419967004 446944671 338749575 540833204 471153149 473317995 612221216 873286187 44257123 684803956 882360737 920465223 970093291 993757885 48077677 722905061 255142413 809344841 824187836 956578044 995956361 995989793 699998011 933285588 617328579 730707457 536385079 916937789 825685269 864631614 782912505 954895284 796944379 968716978 391117849 464415044 389250649 761397976 414307435 607328562 854049347 894098857 707267826 715860806 813604684 951916129 408691646 470732008 218054287 683153749 642336994 817530448 25651822 957902871 489507814 999345345 476342086 977907869 757613283 970797605 332646769 851443715 402891260 858658440 745260536 807126785 875067731 884293012 42415326 712389199 395262823 900985158 959074278 998536821 639186543 944166220 455841229 629668874 56908889 566196893 141051194 733801179 39566067 573081567 396269488 569557475 32900693 879341631 624900732 865128174 366648616 542707352 108984224 600982311 421206239 511577271 645402575 703298220 586857193 836308740 391714386 966767648 987670055 992185399 596054624 911752722 701533455 887055148 10026739 522067691 269535399 568975811 865482591 904732105 221650790 794109306 801052247 909291889 559935184 984884082 57890447 965095448 347997782 593218944 140042162 751372420 821410505 937958805 765138869 980811620 561061368 651414405 790770711 949126618 683641253 741647533 849179169 950631876 521050667 553229084 401317958 678603731 45522210 699660187 413602235 613981046 125150198 268894442 655750706 718989883 899921683 910476625 861166473 983299647 713263526 791224937 47233270 628865009 459180399 712823277 406212708 705715303 140207554 559104029 637675403 770392862 358023690 876551937 729683374 996884552 50141642 856727171 145109835 837656081 461338150 689919671 888176037 909386231 676139109 930490816 640944874 692505066 846838084 985224095 405695090 700590777 329369022 336481885 849254413 992973277 357948791 883733263 209962161 534561318 335991561 413841742 309628617 404693929 874949523 994068402 998321787 999267170 272868290 679505133 718383873 745340633 316443980 924196466 531225900 563720901 558186655 649092049 870663781 968981715 359825969 548062672 844063377 964778425 934680967 999552266 532354940 744200851 440108839 535663862 817890808 940798938 497930869 795477616 11233415 221556070 982375366 990901099 293256234 764223436 378486934 862808499 828705400 997346800 43439834 254978266 759191678 781737727 889322090 900482097 205979153 399115254 553594340 710852261 562114474 736339817 650450575 788867002 287346276 509355335 489111269 868314230 247609454 668029745 623134071 851101284 620065413 682839039 387573256 738736698 583823643 871726698 227965510 955606744 811137479 989816625 358654151 498820486 840775673 841583224 297494103 366897115 486878964 631604772 98736134 924790704 173419678 270703617 165161002 603573559 909458590 949147357 633638801 835988609 780821310 942644996 893263306 913929913 292540282 713962380 268757768 618296122 196818151 411723398 211067965 731895178 896597352 960185449 929138473 999853699 486563389 598245557 531892583 830709549 101759877 506302616 978971019 993125124 711052246 767164797 429979082 821927664 600035580 860436471 556821826 714700722 231392448 682561247 283464975 962895153 864422129 926823209 627506911 750769793 346522034 574059238 770552311 970531323 373485776 385174571 821888737 822049989 607570989 715481801 753488996 810655499 829767324 837499762 817219895 821607130 156445812 933212194 461477899 511578980 536456444 556374608 189828462 290594426 874520742 885585714 479503917 919343536 28648058 474613925 86486857 792643806 407240550 957457372 368114595 826911386 826913592 989983470 936549585 943934305 185782846 569836261 131954821 863436208 513729153 683038185 455112242 609772803 768872606 930944421 249979762 854567804 688782106 826739573 212416536 845005710 885157554 924912416 279426895 497657934 462431752 580492388 696048974 837431514 471353408 696336397 139666579 404403426 984990516 991146355 435690690 773362230 382137574 738129347 204685873 537994623 102194411 433260529 777516320 971599847 109756648 302521940 515888478 954344518 202276885 275693857 859576692 866480904 970023148 997939919 826387557 850673710 281999027 544209950 742521346 969896152 767826764 832725576 22965561 887504193 550531217 858078273 408483033 789517319 11307528 248329606 590269236 895912141 408416178 636479468 25712814 365941210 541497306 831919501 184951831 471623145 819820848 868721162 303707121 889613627 118231016 445173168 743054851 996727659 242027302 312093510 914208456 996592478 797007937 881097966 666247199 959461451 309586490 767876012 167069886 472741177 152835251 573407654 307294799 446890586 589337424 645101037 444349404 556850561 555408483 897016113 847317857 911714765 562040963 820941359 936086447 967196600 29610917 983783776 579992216 687384038 946094491 994107762 65672565 127718294 408950130 979845331 427989842 698077928 706465790 939565899 520904831 631790434 419597587 902848897 741074845 973444047 756013125 961754603 854979441 954092303 922274431 937166030 334769193 757447588 524432611 924690788 682245912 800640843 124517110 476040004 317509864 353405914 942097611 974097956 371854675 759926036 106178944 481469992 554491786 766275465 973411089 992315892 254244041 783556064 453955622 539788846 844485502 954789920 920131567 987940901 165472162 498603341 308547324 358739809 501995377 715094197 112500664 145483237 147375007 875186816 487690394 606139252 758085699 811636858 430676444 629781493 636520559 925468830 948469297 999156537 543708455 807524062 164473424 624510640 555683665 984793032 702491347 949606566 928965180 997051304 661474068 770581124 560156941 804381518 942709564 991718836 628826052 896431513 353640235 356475965 809750659 920896738 200476412 884349364 622834090 993967269 101231881 549112621 994405572 996660211 307954915 816385884 429499543 689976948 430287405 595007311 630945217 659958378 3358021 302538976 253549396 277643479 764888127 928327356 959488728 974672795 237426110 647999979 847072992 999422682 831215328 955712862 42450192 559477933 705313439 715931691 166791885 193859668 86653757 340804712 104736727 280420221 51007506 801870510 829559355 906897971 2649550 159826821 483318812 825961264 577689693 851499885 47654567 166323485 51865820 229368704 91303065 329513126 631176447 807610033 598607748 720341929 420678898 645816666 917510010 998693299 557599277 797472859 869474271 930097648 976856935 987348586 658246220 838512189 2375815 346594871 804635332 903280549 40614234 792757744 526846589 817167547 836067109 971896080 850664694 964002608 314908884 775455053 87468089 281666954 391083953 845422057 728981920 808445537 771941933 926460391 905752752 960690040 938328933 972900192 306956213 405669684 525390163 610262583 986767928 998130737 791698295 982690724 908085969 967710165 762438864 803339057 590347476 834301022 829253796 837517241 10797699 534418866 383141277 458712614 830782910 860979272 562838180 739704977 68049535 282991326 364777670 874185545 956935753 988132648 861919083 955229218 470607968 539915735 764381532 985984009 383126158 679086923 2833053 269056582 880393616 996581105 231169580 553676053 167794834 247211386 380230768 928413285 703668856 850492084 279411565 394116114 71006838 121757022 314949790 825458916 385812419 925630395 944015733 964580913 514389784 685518057 130606404 160248497 257340367 998419203 68549055 213509128 772735259 866577452 450592903 481030161 563052016 711214685 171532545 468150787 122082133 380018887 947183531 961820342 868261902 904558853 91426669 282184360 622757889 893856457 591693121 769041251 516263940 713790555 840687090 990328847 526143513 806355301 507335791 960665512 322927042 764527516 784289848 904539391 682464545 908128314 967708075 983836284 189752581 858886168 434040477 936730568 295696829 447215693 822269198 961015607 297176720 330312029 327900446 503136156 624641660 887650258 219789032 742037472 718547863 754393900 188245046 758195433 275390975 438199665 247423485 838095267 684441494 698785383 402928836 592918685 346110260 506126092 813541306 899304300 67221492 198499685 958254819 981788764 101236610 890348578 115426444 162367662 684878978 831292455 189276843 539680077 27433802 71698457 120038120 614982539 203617737 615341142 692530779 978206455 156112625 844689149 352318139 365029483 17184759 828538751 616612107 736081758 15347477 424836171 169370793 277282118 833796642 967262836 94148497 241248976 221742379 558925674 763761370 946782535 76388015 821142179 473259733 935072902 362656727 884928601 346162466 741773305 832715811 840555698 263864647 744372893 686689346 976884846 598103351 683524339 877632508 968699622 270750432 519113668 447357829 956568614 730380712 887329195 757415120 971912024 473205119 902049621 62918841 165021147 604028568 947479902 663622014 792279930 475009234 762644769 66791156 538313102 37054103 416950205 276192270 632205372 192029671 210391349 29100673 915271702 738178993 831783930 210845347 618154814 121583880 734817878 339975361 558033949 115867114 125174047 112085283 266023212 427782875 780765035 626831136 992588436 505102599 850915594 513917648 628898112 874997154 998723081 600710888 858792498 57025103 817716912 513795878 770494842 811411466 907895341 646847704 999132918 933498311 992485609 2015358 145379707 350968711 798821464 647551725 781874733 299859380 410270550 882755731 888545404 916556390 997868570 808237945 809618850 253520028 635268914 245088146 561515289 582038990 723149050 982858128 994420763 454825948 637638376 451640471 748715102 705360312 978823771 419169612 842046395 460603227 940668503 706382502 738501973 813891320 865518585 687417056 742103284 157748621 933208857 321715081 420483342 137136871 518484033 907287655 928456255 378652923 438964924 546439866 599192608 224330605 805259985 50840256 873667316 591712757 847312460 110445960 808749066 326947644 942474167 393357731 810398003 429603060 430091062 793126209 875031516 744765333 813726697 646719437 963418532 425755226 712529396 698650422 874516267 376565742 709625114 211980271 747316601 412363108 484049604 368001736 561086697 708805163 840513407 380271078 901771797 813137714 966465905 319719519 769146135 191408377 635591492 865169723 995072233 850641318 962552633 380696309 394410888 95796047 200070372 529283153 824191741 671904927 861907819 851153050 976985277 196241877 978487943 317652273 812168802 888461070 961839155 492044707 644218085 286074510 764227561 128239815 212491777 316961469 864996815 159992526 550233817 255107019 531881807 408923103 754642454 864221924 980778343 813235728 899343522 200353487 578121674 961148543 997129228 977476591 993203772 452768422 769430068 63935412 593494762 792848014 982968343 609350525 653461612 161330542 956065135 338109625 702940070 548732587 690345684 158313948 276905094 740071887 938487222 134153975 340370088 727763347 875051715 949531705 970039732 195413691 691541257 494582753 960727126 236411983 708897877 400916141 798901204 23455342 163631746 272196047 527698167 960977060 986282182 465677920 793970790 252657019 982045180 123627466 972405489 403153211 775310338 105913819 382950238 372848542 821170905 279819563 328820755 842655361 963593170 792312484 907598527 479796565 652404313 71844494 798297271 963684449 988095852 125526510 781387690 487545914 783118347 301535184 686390775 715695354 998501221 96154136 657362167 371181616 980309715 938992376 981750238 803044713 896601964 232211367 764938545 743806917 760291464 51493837 623148105 141909884 256353908 46960819 842417656 388012337 734297030 209627458 728971750 304740986 866649445 849451229 945934531 831088098 930279977 624737405 939310385 876256050 898516200 654710168 786418722 952249964 991301759 521412808 982992706 749608667 932585201 596861653 799442506 750602712 924841816 146593075 423335546 887168722 921082060 349867649 676431556 501788836 699106906 461244535 748602220 110636444 249846214 259902971 943228823 900118201 914499274 824118337 974800321 27540042 80669962 680548944 943107309 610433918 674643284 476063689 979815741 190907900 894809408 585640129 595486160 31867267 313647095 745689350 852045920 871881142 992022048 69358897 132109365 558460368 573334248 464289967 471206576 196937170 970966047 548016267 889639348 37700521 474583717 899992188 995807769 1861254 883512745 223944030 562320724 68283136 850111985 530984922 853697809 767569662 876112342 730611894 864519488 347049411 759178248 764398878 852950338 113691548 789889964 802364716 876198599 298678102 880773561 417814417 578474221 11816662 375455779 666046412 707181973 298974052 447177333 194851625 302587141 578164492 657043387 188909075 609659139 879424523 891258362 699735098 766587759 466679940 632189358 554509216 863727073 813915119 930533126 469555407 590526874 262750870 875863047 346242808 533659563 862858664 921089589 243972641 978450262 117102118 153684040 420467555 978449698 73760470 913910462 193170161 496134500 75046218 148845230 536994089 970669777 301648662 577456557 759497200 760224156 443754395 970667415 248292699 479866657 238923444 642792085 845872137 895248304 666114071 675290072 690306568 958542755 299657387 464774046 275527599 679378767 915262691 918290344 205055203 295913219 76922314 392473325 473062766 927709345 100199488 818321631 96021248 874737575 207120591 919927355 370650401 612329524 619724822 888818828 480200480 589344901 816113512 842118878 856896425 917666723 643521376 961611272 222664718 385464371 435127276 712244861 480740567 631864443 208682758 588604585 973998310 980643460 785772869 878910264 641217809 735542142 332991342 448936970 853117193 955623233 648393651 761691240 347298790 507548176 760922184 936177986 651329568 757883776 666628207 747816540 45126531 353521132 371947732 680731598 21620166 615530408 926140872 940776655 441583858 688829085 528971945 944906547 541870818 861368698 886479131 905780333 269086165 938517098 723557282 754276865 225018033 768061367 15220821 284256612 376602708 760151454 722450301 824008379 553781606 758129197 839849072 908575543 623709169 894631787 10133334 267065145 841349747 985858776 401081613 801010491 604729033 805759409 231462617 531708536 195573049 607482130 121020160 222675710 542053172 806220942 416382273 745150437 222483581 369974325 10373564 510007541 312811995 333934302 327938244 461087335 851288360 953473717 87876274 239061955 295630489 672676254 344991515 835382659 109063732 348879875 43165721 638137502 662289605 928120435 259680419 914541811 189243429 744343292 288819306 706380477 568462036 860476956 156537582 360246689 186713529 822967907 270232792 495501616 927563636 985438578 355942992 417137179 817634082 979573526 365877125 494358334 819830179 953730866 61785294 202676228 242507225 747853696 542881447 843207496 321233300 910331242 559143824 986315385 155924467 268643090 420898840 872330807 615352386 867328840 97253100 349071135 211593560 518304773 252192394 985306516 342546583 421315372 578385250 824631331 590327888 950712978 525014976 725113737 866003501 915734565 703369438 735446352 110316794 988704583 379937019 421600769 900631947 932018626 755083805 786546280 584702745 909092750 271628909 937478936 631373699 812655406 691427633 946421790 600379559 618053644 604445485 879851761 213974118 617677070 288254040 828963662 658594409 818581873 505663098 644345278 299054760 961619550 478628950 606380396 116445213 397587708 990453530 996434461 885229450 964877753 746393359 857103046 694590812 991255826 667504648 832233374 352039122 866745413 919437278 920995862 52103303 649723000 634882082 748135844 96268981 121792064 670877940 813069404 973298099 978808177 785847978 905569338 237910300 371552331 282738212 865028742 500616807 867715826 263754471 387942658 977391461 997265150 502031724 971849467 128614063 423472474 940057849 943898663 388483819 474786333 935432854 940271011 337774699 681052595 525587914 921674646 763645189 953867478 878720241 941662301 142189797 903038179 129916842 227929881 252419030 681479870 953615722 981412226 49646801 775735037 843545306 912708652 34841808 915921983 41786473 863602656 96911877 354681473 125539522 540719158 742562146 789759440 222718169 269356126 118381300 320341597 6181673 478532822 28391904 359321932 867899738 880078648 141592118 989708454 305129067 721834609 641707699 656339254 511376488 998993864 782972515 954144203 217141510 357093818 575829073 852939370 358403020 419165800 833582081 946750910 959702845 965334649 220831824 621146270 794461669 857372517 208366463 294445372 847281255 977600375 312329003 381691033 810869935 881441924 46479030 621685346 655161931 938282726 735944613 978024639 260615641 389428098 241415376 726764436 965760128 970446895 236373977 874289922 275975316 733606940 367023012 735283819 363953252 477726722 278628075 397249236 81832006 788022316 204991683 943205506 150241465 777346676 797973448 926387278 497044372 938760929 805598606 815414500 578763511 591814588 455405570 922853356 439420076 440146413 419629573 647293273 260150018 632443770 882197954 930699122 169564234 310934087 485549108 953675896 744964841 756840092 633678817 635138226 70342836 585390342 115271345 485047855 268573294 505900685 865267931 883951251 917620214 959467851 233828298 252996810 411091122 672795250 392685199 956438166 868438247 993976396 134200469 203732193 619200907 726443624 625177816 876990646 603980892 975163048 802640975 847465582 312108553 873144464 792888580 840529226 83598357 622763306 263643975 373636219 578486820 606094125 866900018 912720568 86839375 899327945 501009325 523577515 235790517 813536094 608756699 887572878 686498540 892192021 661806077 984096761 924709131 954829555 543545362 574130359 463323656 926111435 281564206 447878228 359401245 832097705 972205531 974515766 683379888 861142424 78963748 361477154 406491313 818543108 884781068 928971062 725891522 839556526 113161737 363920179 249085448 356526588 279792506 804721090 7002588 419143536 520647300 691742344 706888239 865309426 939185894 953513933 9364659 589344969 638973049 747343583 28601950 174614332 912919680 982771823 249055064 843622725 383895252 813894268 469347820 973064710 280609050 863529747 917296321 968051524 171241450 727230037 660761290 726728128 235737423 889700060 894765193 935946983 198562631 716962504 827907775 848579847 260569613 676234595 227408465 859338070 677290626 811470548 46974048 123193694 258071753 590797282 917802404 919006613 99717912 743678829 939179853 994842151 67630117 78571314 668175135 825465729 344724854 937083145 538083836 757255605 300243202 539311314 824442324 871913470 929374285 943665413 13163092 996984537 150864641 221104526 545716746 912645593 180955571 895689327 602286558 931124703 949775245 997714303 201942494 259766943 20705901 197976643 296588434 341232511 704117444 792730706 49027324 382429120 243017055 357515920 606283934 619157267 470594739 948118236 366273050 511229698 812793842 950623107 761902994 778083988 791654227 940658203 984119392 999902890 354714154 660983761 889097789 892178736 296397042 396954545 312834513 346838343 664995776 880470452 895658271 921596704 929628353 950696796 957210525 972246472 865442723 980771714 448446141 581971843 710790504 951854055 474468597 857927365 213375058 461206834 548810043 693354421 708933856 984066194 493138011 551959053 751324259 932425646 486408555 622176571 851300804 908876168 829256857 948152987 477213205 733963389 807938199 911679142 417180912 783592807 675065595 687207850 773447800 798784520 198019899 781217023 680606372 770083675 415282493 820253617 462160997 619264490 930558754 941239694 289459478 501299284 90973519 421471998 126358825 575677480 347840709 937403735 127237798 707515900 472329487 589184731 366401977 721819838 523964746 905565094 736694717 844260693 789440446 911676425 992306641 994865569 760565654 922301694 96374506 527184519 701522145 849019335 79449012 679632211 570078992 605643830 367294361 392995323 721492493 987985509 128182307 315187260 741626882 803055376 833626344 869370092 878086980 879676556 382765000 460030450 541316629 822908595 760063703 836947202 360246675 677709125 977971368 983759303 552953793 837680650 69553408 463877456 456375793 790454668 892858019 965747098 774232043 871367950 180463065 566252616 576577229 801662744 20009116 872294305 47896416 741711071 207591125 247491250 638808510 867653189 46842746 653398109 741826323 961489909 315613964 479807861 366072339 815261830 127809559 524476007 546671859 973927538 210342052 267113201 596896223 806630315 432617782 483323061 898527317 919793055 974601731 984202437 506993857 514774789 409186712 760028494 717438105 863028181 410575268 884581839 740763937 872593295 92590324 145198327 449530700 487545174 976216894 997669048 752901467 787023404 378941801 398787324 512507303 729455587 510434374 682160040 233147472 753329474 964096552 987285974 17681525 393317649 598544416 875835689 392939401 475405875 437140752 638357117 342426036 402605830 381097569 486066461 422637645 511476861 477531232 727947260 484272299 679388475 665231224 878571000 464142046 535680665 824189454 997298669 101058560 483099313 669045415 971020152 729071973 863021059 387790022 928167070 598263466 657350219 187594909 621207692 886920833 898453191 941652798 942980243 452715464 900208791 430107612 906912210 92869859 814970200 542391142 834046945 953304367 955893923 560604196 561353679 565187686 962713292 407765080 630201143 806001526 987442790 413852618 483334781 145959317 461273564 85834990 229965541 658737556 854020888 487325711 541507111 157765313 174398232 773764788 886541578 792441829 848769311 166848403 641819989 755650055 793807506 289964664 822961534 606485669 737259885 141688097 666907997 31054557 456536725 650105644 650763027 140086693 325076562 708722780 857427012 699644607 710562332 739016353 776605599 345463418 676405459 714661226 724472858 881248240 882442062 445859719 548903446 612379016 973916018 492951254 648081768 378442929 530320367 679118213 919685272 705756638 926658573 661745559 890149900 558506324 932826728 606323781 944161309 337573760 687377523 84593883 107730130 174549936 574787327 822729917 927642724 634817240 801067660 971318473 999591165 519209302 970241823 114606133 478729172 274073772 304006681 163527969 950771695 94281370 151143960 711384380 984493247 804581238 849169980 159644305 170912416 341165858 886275996 677877396 967910147 180424816 326263374 178411628 662704375 725101508 769688807 716619771 769243436 171986642 286506056 336397232 843192334 732958331 998100008 969986095 983531440 328598967 708342511 736024130 860839321 679569485 810619978 167147370 910421950 266025141 895105051 180970771 567198828 599894970 610664803 627320683 741278622 806897318 832317449 497316842 749791039 189140510 259513918 509027972 857600212 878908897 966026255 807614853 929522014 569843467 647207461 142032529 946112541 520078708 764084625 194387375 355884409 228271998 658773802 426735909 602601488 521786987 840071091 232623157 694491904 697046423 817731663 525186012 642688359 414604848 756017894 549175698 585303326 526042471 922062948 585994604 996229650 717182175 839802851 486033578 620090465 917855943 945401918 189622681 198478097 796953930 952937117 756478416 880768548 360257724 521623210 539475882 581023206 86938350 599351832 39774889 350174533 974334625 974918721 176573443 554733978 470917308 961454773 792889910 896718928 720863666 932808714 935775639 985079488 479568877 953364039 665895944 973161209 128927362 318584138 936417690 965010055 780592426 972512302 622855146 822608441 995460672 999960480 241832819 999171708 819630037 986158009 697388612 896594059 696475452 998317357 509499840 538890104 443036138 492786989 943936192 960333562 565909614 750794262 585900310 747751740 347198428 854695562 200107690 602437219 837020846 895820239 644911053 724273103 929709579 969117367 987824302 995899936 184242423 880569873 131247106 781302550 61701 712544429 780997790 985242817 279440177 514046618 581348423 815837577 599777987 657766406 167502285 513107867 128450625 590926222 726340757 814791053 996642680 996700242 973769212 984208902 141564593 206178716 56887035 760788471 58450755 266621406 123264693 242970067 489598772 889430330 932888190 940750879 562173680 667863352 97608395 678315363 765618340 986846948 444832707 946840300 432780654 898989952 143498533 728250931 237026701 881797643 665151486 891888870 919844628 924396080 526753368 637608074 31879881 914645151 322304466 623649572 435261988 683119363 123305075 749797649 128582162 509727407 764309874 888127691 895783431 951104838 43997077 865141987 924975173 930595843 661963522 688309195 844142586 869971840 151094051 201132009 135270022 774413732 409219349 561839377 964176608 964809153 221954450 263088872 233944770 398115541 778231241 897331685 254809190 708397922 617865913 754831294 729372459 929426926 963253658 974787720 197990652 892605670 974429038 997960842 341109366 527219202 694175979 715064154 298807802 413814672 900077046 950032018 313836315 977274443 890212568 943796570 467880182 860165011 349717705 845305407 554597890 602874955 84994953 721072479 43504434 550967772 406625096 793608248 733872068 773487630 422044287 735530975 124111337 646358664 560797782 886941067 439805019 985580199 333427813 956111943 58976734 936717835 331534896 868265499 227376126 997438294 627349706 786394336 116783290 591075729 935283070 940840438 52289548 867635828 527832660 626698373 820187158 924501557 221807623 429799248 523377649 856961424 232350680 356931956 38361163 338044134 735000155 979349766 833779957 984900853 206891199 288792889 272760950 886620270 750652117 823313637 447757933 757478426 689021929 869018046 673040587 906631877 131353386 289422622 106670636 552593249 460364335 803823178 258682562 395887073 413422548 939339445 577023364 634199943 777636423 905568230 863533102 947107390 102418762 187262917 693167449 986923251 204197653 275260040 328029876 529981677 32675737 443021352 516831926 621336680 432204680 524758985 716785826 800526519 726554689 808376827 301520155 816042485 377290691 572203503 41810277 621160346 961288506 997548719 410845361 776214584 621107070 786195551 44340826 580796924 887544986 982843861 674845186 877878638 411119031 662330887 763187968 940607675 949511079 966018275 967288380 968855668 914332668 961504840 630664113 914181948 507767819 769945486 472134401 710559982 154763333 616646309 259052430 390222087 56469109 381828413 546089757 898696044 821243475 917728098 704439831 760885750 741281573 949258923 937713899 996694010 313588731 636251707 477268864 632287909 373386048 479028768 464932012 831779104 634232845 972868545 316438555 630376341 825292501 862346852 955267185 987524628 771696052 948320017 765893637 873957705 911143409 948755484 629197163 911882177 90867103 757227546 614205756 756791524 421462528 678383794 884061261 926844878 976543999 984686487 870922721 933484834 779697733 786148143 209281304 475882324 778436278 846646245 274967426 709942839 897710589 947302278 348141987 955921290 41722549 834423063 743196774 857396202 788960204 991663326 706436299 795115925 788609586 960696531 883978915 926924959 926136727 983463339 488036278 827748755 727661566 907824659 428708031 730401503 412015142 897093548 959036836 965161726 44821113 936353124 655433665 857924120 866693756 961872414 793679163 909058809 316323283 869910861 655905433 665164376 827181191 921976275 134797395 286440506 268293765 569259067 622401783 756305175 853930419 990593667 817429695 953723171 677914901 898082353 622086684 687007638 165470446 806349285 49854473 266094106 530407867 585119516 51884379 309048002 938677381 959204526 141604367 214037637 877689243 979247497 852808641 897390665 218692433 577655658 258903679 787363295 176347754 780493112 352674739 521798256 224080146 853521762 842581466 959458825 32974767 487301222 390496453 861810668 683461039 995604802 165344074 272860150 703173988 971115878 638959316 786643601 608352010 966736039 251606869 708150764 667886383 871819427 44327892 340683766 794027034 943819198 682863801 965502878 989685967 996794697 791373496 873878529 463327082 609323007 234775858 584015237 359934242 559915154 929744377 950562179 802230818 955499918 526001174 681960105 541419700 946794923 181799603 997377670 536749268 718883310 818079701 963805379 542431160 578465503 116487753 251886485 153138357 785219979 23720365 780736138 911153030 915769614 995705681 997650487 67016029 779339399 633539339 738670008 931814985 986336482 577324093 930799887 615745512 728734133 194702225 376059887 567762813 964674035 219283216 432151688 519575862 995102996 607256185 644004369 72823135 699580485 402510719 767820916 698973098 741957399 573749489 799705855 75743608 170194149 63747233 722416171 815971464 850244072 957855153 973275473 491852417 928119216 199038861 516057502 476796263 931853136 986573798 989867376 456649828 982112729 635105774 865372656 368661698 958884878 209254190 740562700 670935497 916703956 100355805 881635181 63254780 114965753 211394754 339767955 652206068 702470417 769572761 974178968 535537100 868918483 900463807 938259749 944476839 971495021 376576196 909877660 430403016 823884167 844911488 902433814 992376423 999125440 798906247 909914978 428123457 584192431 51358282 843986237 50864436 699255470 503042901 698175063 360453230 876347903 971533388 995987604 772164141 902954954 313946004 689114374 336265922 647851258 720938053 758087436 853382053 876981611 531892708 878141946 101879399 695818503 616145012 912933176 864190354 914118652 606090832 874486338 192896122 410369629 305234911 358690853 16374327 345564872 615041499 857242850 520675970 523981696 19759324 113037070 385670218 669309496 980776687 980817715 456424156 839669161 764380089 982820002 236680174 937672695 46090568 895539166 443246910 528743097 632953884 748862574 663011355 814651617 335103662 823915287 422175912 813779021 615956910 672251239 910875273 933645004 871292420 979644151 230147567 748775374 722047141 996726846 478719132 583925206 724171513 844270481 458768853 597694243 789484421 847761487 526833214 770504502 734942583 806808258 653892639 836532281 38460838 648949074 784651454 903270205 244905562 923084845 320749035 455215998 992136883 999726835 528733927 682831373 473352986 575821357 65647032 816355976 547563778 681645475 571335912 968807120 355545338 712489520 645044102 925409237 607505161 889964402 25298385 811457458 349407167 769279988 497778996 857561826 713099965 802110527 684457109 908868315 159733732 959615539 969522898 980404486 636278163 702644899 310785576 962543760 958369818 995408710 772297159 809846409 970687467 977647726 950960966 967840253 196201322 445954634 180168569 929715538 588518252 910561353 16972225 677013578 751562216 991760740 753436069 968017794 102116007 192535479 971101888 971422027 919575411 944773475 334255264 845778645 67278781 235840894 934172929 963916706 508162677 602451829 138031434 549897005 19886306 313669920 256860526 652034745 806044064 958062809 538396868 743606467 519877874 831932965 237879232 861788913 444154658 807007639 220539349 617309717 564318327 735470171 77525319 191908291 303274302 928194747 407475670 779162782 941441050 948077179 733263891 841937463 484936871 729152049 166030030 799776725 632881985 806129130 537652016 909153710 590857218 650069213 976200903 979551952 454586961 955134834 737187721 759653120 371922535 896633367 251894983 914516614 148165809 767930359 778949792 931056958 77576270 417496432 704159024 769682357 145637715 152018622 992363400 994256250 825095776 862568252 665970634 681874914 809467087 931033343 797619919 934073097 287615888 702648728 525918859 719659659 278095799 312871683 304284615 748039078 24736757 162911314 893789304 999662615 411942187 806080748 412424920 824899316 766560146 790610321 111435252 825861115 984328269 986955996 171985051 940751890 210658229 463375326 204904681 378150274 730764117 968752732 872911699 944078643 144012861 315395082 123052031 336646900 379960003 761563602 526690042 549520494 150838095 524670135 11673039 523071259 540287613 650893018 71997104 101202539 236786547 974846561 813795630 924243373 365939964 551292673 226684981 427045448 674381494 805772638 544088481 557014261 883676721 999326845 182527697 794216658 683049332 734243716 75907324 462537069 533052700 615697400 757138137 782206134 828313911 841743541 371417422 425115307 647702971 999773857 6159333 109246817 117495912 732448589 777757504 862742747 898320594 964369791 464537445 745820358 13254508 872567526 254681456 277127791 565863308 779168616 148954652 641623777 48898382 795207896 924654235 985835807 323138087 337614118 594049868 649770058 599696570 841879328 631601782 687723726 929532763 929629451 545909384 608592468 748174852 796225713 622390174 691242679 912535000 974646741 718694821 984267816 759003994 858392658 150851398 615850147 646609870 875575694 42510942 986566041 656229531 920532951 279684379 433304474 860603586 969181164 498196622 925882104 793479722 948856585 75355654 576313655 801225827 861755539 523734434 793087469 880381423 921388831 101159012 532355708 225018313 814614599 61502580 515441944 267025386 541191116 958443962 964465937 236259472 965268342 128217847 819994449 550466876 631301163 981201544 991830886 925816771 927034153 593082126 817140884 517706627 995627318 321446436 682191737 738707038 821654000 815355693 886981432 580935903 751046427 879348295 926961146 524233185 870410614 73645665 174414431 118945508 412638466 498524702 502559549 999300111 999977134 614984149 918830040 510877848 594141567 490584581 672600804 152191188 859865633 180647921 444468593 160364406 181983778 13453836 585305236 198158842 656884308 329337509 692597845 282649368 496379135 190004081 461431382 624506705 721152017 586493790 866892636 648377558 922488671 48955750 156123365 717251150 796893368 429418942 765233012 117887067 767067398 170198104 728528935 31329983 743555212 765429405 782682870 586093294 866816891 987789954 995352468 98426328 580154605 619403044 871383220 481655934 731745920 705492143 947253946 32125847 598659766 660694742 783818520 795470062 993648956 627919796 910068549 810725234 830379965 268089704 475837069 374753273 869208835 53053535 542509385 558421292 966821387 874658080 994104475 461651361 749353184 256652568 311110821 613296021 736589111 64785556 342022270 952659872 991756527 829914541 971486494 602591695 731084049 641778471 768459381 930797942 933661666 531546237 535889398 618630103 662070233 36598111 167088870 83728568 965789862 463552981 871209780 737849515 760765597 53236726 664874980 857100773 974503461 592643279 744943237 605042312 719622264 172200797 225398854 806698255 961373912 471548337 477714986 355375692 392731291 120449155 142900562 357703664 438599745 144080975 355569650 558361576 762831884 146842013 992576990 859581914 866787447 421953479 649849869 735577796 851624712 384983421 908287018 647381295 922045909 78179114 218111473 662956913 962281435 269813898 764615938 167631499 865657439 705537865 843460072 729554902 893781664 232567383 512499271 113438202 816323280 819319617 976656480 205122445 611101750 922403467 931571835 261339983 604882282 397109804 443527458 867022770 935490618 649341842 850939477 845403479 995798282 4301822 544831281 439227255 785494690 121166245 705347683 447878460 896583449 75593848 478907185 610355216 721782481 485463410 602580126 349404543 391046866 478784668 728721345 551049347 764525317 647758427 726014617 162358432 238995819 83670487 695014845 676521572 824122218 481044005 885905548 589093210 834395572 638099599 639928753 583341629 851090130 260809824 293634583 434649972 630051187 514390311 847546356 765713303 795019576 142493357 874495218 317488143 990714729 828268344 838855608 684424855 914077507 516503509 913763595 704004166 775792385 43947410 936702069 959159096 972474358 659181730 832075848 462335362 697689200 733712133 944945928 343100715 366504550 654630754 935261802 229465152 495677862 270330853 291767117 680317905 800792381 652269043 869609105 94707196 873822443 257609268 493834977 835947196 952479801 928282844 960435558 105197257 379743998 499036081 641583124 671752225 767911895 746874185 806537132 63410865 579556311 764063860 792460401 74981281 282392195 53236132 685500549 792975834 795392623 624857441 638713511 692306178 939148290 401095648 472429827 841028255 953108858 355670271 732118030 667329045 751019721 373382439 460094163 489432874 558226445 659046624 927205319 812648444 853690292 970942725 990414787 407635604 915374637 40658411 833686428 603965171 979317788 642770210 775514099 244974609 267954328 617864583 996970661 625198937 626148666 599949866 949949830 70717772 886126885 225062626 530486253 427527806 445070194 542640259 672627330 876340563 959812825 143331860 937562214 505294500 700526036 977144403 985176863 601102612 715908092 722859586 727958731 596595777 877381639 617859768 974535401 53667324 65382484 127531061 968342151 181782383 616112828 819615553 986005804 141466948 162684005 829105080 876244345 971076350 975069574 655186570 814173292 556677129 695081243 626002370 640486705 452957 867877035 60164820 873203232 288677857 502348718 580608925 689578548 745793667 783911137 463035927 825747457 23621813 410180762 542181645 967031924 37300392 347848807 293672062 672413269 877138475 937315922 885995970 896062411 66435945 963686224 957011649 992718413 964513421 990982793 17196542 659664824 65178544 698450797 976643490 977252208 741685472 752737024 494538663 814369166 9414554 727851010 256394666 511065969 529894286 531125422 912577395 977458638 873107167 921806072 477517196 687524009 264384145 598485903 456310930 623660496 595235683 731484241 883693835 908266801 367266296 504778254 68130865 517656928 760631218 989992509 300533918 747340519 488188748 555677066 597572566 748711793 251697391 723264431 588128181 652954090 829967924 995413664 347525105 624609738 107004009 899109991 421117890 810223141 25434131 786574152 84786779 599686372 21620557 683754132 145186196 614818679 16089935 900461592 277907251 765768491 19616809 352218503 573421541 914759140 622878611 688403973 967780482 980382920 370610033 877025873 273466802 725347261 553029481 820604133 284708274 988009449 631771235 838306647 195376664 513291990 7569358 271089047 715016377 995178393 424603492 862105628 781039006 930229247 983527064 984168193 762398577 819862876 921231036 945192044 721794232 906847165 134411233 694842575 638444246 692233171 536931452 878780955 474336268 790124884 791233189 792220888 516774600 682222454 363465286 917268692 10564232 474447939 357697432 505446563 771958067 940792028 753722211 857339647 615475714 811664961 764245499 862160432 866203860 991625482 234578602 965321483 682280756 814799301 19815522 407772681 904566467 928291284 746541943 833517216 887050360 926336030 877907532 956851932 624858840 875801085 220172060 611146666 885956917 972241984 140514983 768477745 227575393 971718462 102500446 497187687 394583322 926862703 739953238 840753931 725319166 867400602 271667385 551863435 294992760 624634149 923184274 996951197 128982333 442122373 870022831 909186376 603620965 895238102 273248123 502108245 244005782 489294327 799130045 848892050 772830433 777147581 680895726 885539984 871109352 958886605 619066510 795160669 182953548 980611111 273701108 689057244 632654241 999743642 492481924 825202505 154218566 406065605 179273908 872492069 571826867 788397332 617653821 679576554 73500120 185553810 754790402 841226965 144115735 970460822 481969486 617613888 662952586 742161097 833957379 915875532 826858498 967349608 692267266 986172744 196522084 671330216 119442671 485413902 936647531 989933497 884421046 954078466 987994712 990153042 657455134 907744369 860986831 983834093 642838460 840339428 284968130 775935241 164288847 883454414 988340657 999224961 820206139 941806022 846921621 947736250 370750876 512016672 309448321 498934533 479520969 896559909 859201045 936944478 782985716 991667741 214056310 839389186 668730090 696037228 542777310 998896848 386137830 945813223 423808183 737070746 392486625 429954712 555024089 987806847 624920418 813010661 640322076 686592043 134718212 667804911 328416536 741117372 736965833 980318616 361641717 604368829 328718782 354460136 941046177 951363740 33917421 775832199 882814837 961026430 5256007 151087860 94554758 612871869 110625528 509874136 954372694 968563541 225048356 647640673 469188185 583952369 726484699 906566616 802364750 858235129 610741055 941013960 36417341 803258997 93726987 171885876 758392811 833489054 464046009 916803098 620508035 841563673 640330433 964136154 431321730 694648132 235376393 984553937 831592207 855324043 879828443 948251722 840507024 891787867 71434845 125614684 558972039 610111671 369183510 459152315 295907033 516598380 996203403 998942714 442818173 629729534 829990133 963067781 774269158 863269648 859967539 995020958 804253043 913740667 225269691 436643608 661695547 979596144 893363890 931146760 836710678 965338883 760432732 919134000 758123427 971952854 875909104 983506592 391447070 779099505 116435279 285573613 572412503 744276619 817935568 929221303 901773665 967282015 219619073 585320544 978398490 998685480 616038285 737802355 14410681 277164019 71016142 421970066 189936938 749081031 112065860 535701384 88988560 558364687 935975652 957455923 128139755 773282701 594649552 720947984 125560718 798197704 667158527 734503369 646955866 697234194 381915616 608660783 400578085 776724577 550195263 664972071 47827068 49463167 8507621 129371992 980070618 996810268 847100119 882901156 178904100 413386093 229895806 258644520 280418546 883195457 411776153 522143453 225794406 658358251 721936354 923726850 614356187 791913494 825930015 910038102 215801321 341602806 862124427 871094254 194963273 419958783 18382778 667821004 694480625 875133734 428858271 465882012 16665024 371496246 200519054 848445795 167651606 743772144 744765692 774066322 400110879 410556434 538355673 597271393 368144079 593758214 924013975 957017822 841369355 915333958 736556894 895730117 461082877 886366952 916967185 928412736 625627974 835165135 647189410 834324717 336901186 817808605 596746719 881771052 410807700 663880159 972929943 985157555 359899500 636246763 144117562 216026370 501452836 763573425 747418901 977455534 318051137 481070613 378948991 716276705 525578578 802751080 622148575 832690218 578641405 593448658 751869102 991359828 963296125 987167896 424061665 583500928 449295911 654653595 713440438 892774096 551955909 997254777 859245170 995718331 431424955 674718868 729379489 839599164 664891526 742313712 241395265 376585900 181541055 587810738 192936606 742656860 233022348 248281982 341815809 795836139 172785160 261388575 643714800 727527128 533881696 803904497 384238403 788929855 309290101 678884193 336173498 564459607 748567622 862218913 950072307 984468569 188169246 777657217 300795199 351609328 255724271 493972904 419089165 812504665 547099827 980595874 696422374 966845773 801997455 927716892 30950223 619777954 780754245 992487329 166064900 753246303 824866467 894402882 113146529 356767819 302671717 461092803 407979289 952686007 569185667 603466419 221043233 559418106 590205217 665184072 671482772 740494329 449888291 512519681 719158939 782594918 147740865 764309346 998884383 999366452 674754965 812167035 494261662 857149049 832529975 870296219 390169146 806447487 548956572 659183678 715242190 959725573 898499744 916986263 276394157 634712139 644924695 784795186 664170082 829515857 324754202 508498243 297372558 876015725 927148205 985765563 176115475 181420636 116016313 788271568 265092600 293531390 491592094 820300433 390578377 672445319 771274502 884793005 924163564 945449986 961029351 970230342 986075935 988568863 366857214 941773470 726230733 975990243 79971495 863091597 951313547 953813561 406137792 409970966 542995226 596149226 564734134 745791057 612341870 992702117 523329686 801071631 977557205 994692168 255751607 275754177 521811526 701694294 530745622 878539689 410984767 573393665 582971837 774552924 430802436 626286844 864381705 872228251 805971923 810271868 862811537 981271452 84511039 765456305 977122378 995221912 125021081 917856697 697498061 738431901 611671037 915968591 979083140 997350826 10778653 669473863 305206247 728600375 350696961 801448757 102903016 883715960 849663762 991885675 815117260 898979959 156726534 890488744 569561335 797231218 855068825 863051522 75321972 576644138 342499094 348734318 360639726 762758871 579785451 812185735 411775981 468988443 419737035 938156990 454311569 868125759 128536713 352295332 592011003 790804997 402927653 783669739 222664502 263829341 556244128 678939162 740421327 843574471 506029988 672315570 535028815 673316671 372453130 954183826 760845190 943541431 42472647 511849382 277915471 644493606 271585983 736345712 497112930 498812884 195416190 717575865 995948313 997805431 753023772 882787811 74736463 402815255 788597768 972891409 566705592 631015096 511610707 967351273 329181212 781554409 218937623 664541281 34915148 179986028 853185871 890063207 199602050 522646146 44569383 751153064 171709887 454248189 20226728 465818045 329245348 584292362 514203427 902509790 996524348 999053952 915447855 994506299 637728268 956279421 500092176 902158676 830476470 962441360 313249992 635383407 29686900 48457256 264214134 963219344 561289194 921166929 885636150 936389057 747872911 797971935 775703747 823981308 277776648 496630076 437683150 887409103 266945103 847219451 888951879 949939566 97395109 590886259 941320730 995505338 210207616 766068341 638592525 984308899 835611686 946445197 777830753 800379512 392922442 448740075 812226202 911884305 372095656 692166428 933967904 985366942 307062305 874302145 84819181 986994303 46505762 814091000 561669781 789295673 83667856 709438601 887105721 977748645 82972253 249583659 947797468 996712714 735291280 953965445 216666345 348146765 201198827 754806864 683080088 717983069 50855182 228257563 990065318 992335681 858449547 995989806 676114373 754642084 33452179 594729754 453992401 848329642 531030577 849469920 654998902 901534081 186662471 470591844 484929921 681672731 739783530 774934070 47635821 337495340 323139251 558314180 380519381 596583886 945379724 992293063 80349083 449658692 763308617 804997037 22350540 295139346 707508188 743452263 224168020 811809453 118744893 465480557 58293996 238281542 790169862 846752229 322818509 680469895 830475337 867583476 233872465 869373713 496189767 800567970 502525647 957694397 497566083 717157892 985372004 988693944 592116812 907077495 835757977 982102912 614989590 767841048 858080677 916995174 760799504 983491052 615230468 630101412 241003933 417711517 805297135 838122156 354011281 361733364 773806551 838228077 800988101 976816920 723166608 739281972 115090439 346458944 625905351 968257073 594934860 833812023 158607491 321074237 303590513 849767318 189769956 552021166 401915227 522211113 695023971 885274747 668090518 936333029 324199192 467623096 734877381 789166277 260730795 627299197 739760158 804612623 641930924 949053291 902346401 949882770 660051358 787840540 317967503 961607511 996812011 999724698 88636422 188751072 222765767 241825866 230310433 715991078 699150508 796797215 205741044 736107878 714123766 890787479 600871233 717883252 686957025 854996068 902773198 991051480 879604311 957704329 680686281 877076769 116207675 685255984 783483019 933589243 44414386 430438813 237590989 894106523 515425584 699334463 962064763 965912048 984334794 991314740 649398334 748305863 46282227 556020816 157169542 180496521 5203502 809183718 677584457 948435959 335856546 715085001 635784038 742649779 910185539 936212633 297761692 940789609 682593910 761663811 722063557 911928742 800473768 820438769 109633110 589872779 816911583 998971856 336203300 434090328 442830877 565377686 237301783 658300973 919179406 931948692 891004582 893656795 138995434 457820659 723417931 798865881 399965625 932052790 771575754 827705494 893624748 948897190 483073610 483446578 535989994 759634270 498230285 936374170 885498855 972609627 433734562 762572546 930065956 951919243 777324692 857959270 84040740 652081141 339740623 361884704 69334915 612383656 916727570 919148009 144473040 483208390 722255359 829185829 236684043 332181954 624502011 994744706 815246008 933060013 46862399 982402649 292287188 583671337 825671125 957369553 463128361 505446105 9266432 431801956 528058546 918501084 970542654 982074792 851207046 902914332 280376904 914651542 768711935 839447907 995652284 997426506 714715316 895022591 407713873 711180934 581710688 874444284 505266495 772912885 963986726 975750434 61690636 907046853 676074741 728193035 263778402 688241519 953541968 988236948 683898618 844625414 896512051 909850941 979925417 994201256 221876594 352081849 547534173 749478955 511396501 932530015 909844719 919464689 880423295 947547919 730823936 875904439 31667598 227119289 844288714 864829519 660309695 800564478 347744004 998785018 957409602 962663431 342215332 890902517 516142116 568725753 518097256 843123130 476945088 848799949 786184805 929569171 825712341 836446916 531393556 721665839 170225164 822088118 870382048 975110554 398158195 693974895 955258569 966116143 899773883 901029704 240794279 830541826 10559716 47204344 571026895 622687437 136160370 882078760 823396531 837119222 968635720 980482528 462986093 547560408 431244375 549369362 243615890 750567072 605674750 823015891 465310022 595532627 262446297 724190112 37065528 991203533 9102569 424806528 494599842 887802482 148790442 172603271 755697980 856353852 676004639 971727047 885640323 897508503 685204508 920448161 411225301 844658707 523981363 633305598 418175179 897386205 327953698 790345398 645626714 815119249 603988107 774998569 767111119 791196007 670211619 683955133 848752565 973810918 125241268 429303276 729162263 921415936 173755389 699313228 491436503 923258025 972454302 989436049 805243896 897824707 103530404 175978051 903359441 943435938 171289235 810496076 891113087 997200186 93853642 514015182 844739491 959347760 98096631 656128672 195623953 716554814 1161494 8404218 327064760 475355816 271895755 317440586 319753063 557808789 271235088 436372253 439753457 598577829 780681471 949811463 233170644 659048962 134816651 530216840 174705694 386657305 509656664 546178334 283411717 559593198 453333691 634510951 150659404 808825903 283916040 862149004 280292585 373856191 136603707 291274219 184648041 692249727 873390795 924729899 452816692 741606656 202659155 678685126 581077368 844778142 576449406 757645475 294300437 639545032 526416920 935611131 770461860 797344828 94165919 212648554 180930877 761826740 397852325 701902853 87765525 297984038 283251276 633443883 420551046 863027467 348506925 425848265 51562054 815833347 174889286 366464580 650940944 980981360 744958816 950197404 968271846 985771184 312859828 659730747 903492455 989354979 63182351 252746012 871422034 883398547 350974760 557263287 436896137 600444637 257564075 408300982 249778780 918648236 841276153 940205606 531548047 992875690 478748045 778841624 671590226 728026942 852259450 875114577 495245307 885647359 21841173 940903787 319124943 667575208 956236163 996153646 579052020 712532005 333821053 828305775 739952151 825189914 559855923 926423840 452790479 674741891 364579626 804919728 608730681 758401448 322409948 866807772 807568723 989354048 790500187 948114576 580346204 932321408 27291649 865083233 417600070 970714342 646748639 998750847 925886767 970832661 66084116 256510086 863318119 947910752 23897993 654319871 832039385 991776361 952370239 960978223 175529482 304716512 707169748 774298647 243545239 446577372 506830924 611516362 703031393 906167341 947056336 971186650 288501399 352683988 256857856 933041034 569161533 846460663 877212589 999119283 356543462 525293612 39244175 723778518 841071674 894091177 146525764 743360907 204006250 494044521 648283058 897653542 547250235 830662856 571334034 699668663 769663074 775315167 10725883 909874853 367112450 957352108 851683247 911542145 62424711 663259905 239929544 447100905 897808558 922221731 246667460 811972429 506329733 554778955 82958706 951194669 326719894 687909276 399214068 761050530 941593935 984075350 365027343 990076911 506791996 633215137 158670423 463744694 233746254 714527204 193238797 935463428 199379846 273146644 907926404 940046085 375845450 817513870 113045112 357277940 383904404 787618015 509141582 982674105 929217512 979311194 952544189 964368824 459256978 738948042 560368054 994142668 83836368 873973468 122365075 810486367 432201403 715074155 75680873 322155614 98252833 683883598 340841861 986568499 521921718 833880895 983509069 990537147 50878039 90976226 477665350 551839665 208408511 426149625 384449115 866211139 241936789 605105958 252441741 480715371 600981548 973758961 463467085 917023963 570084748 592677462 567782137 598555446 482066171 573463737 579782134 692964724 206319968 814300721 520341253 956081141 866556543 891724857 347547841 740503922 608970172 908583480 570498404 913290641 958441773 993100096 962684134 986558600 160077301 821767523 144305438 660850101 919485624 925608529 716715109 949309621 975632658 978348048 424383747 820463624 155794757 498541513 975352918 983557098 825106879 982684513 946777406 964456695 622738475 695331260 891544842 892765922 753194349 968254586 920937896 952498851 780336045 813410097 775737535 890200560 941302547 981279077 688890455 952489185 387152803 786431343 195603773 515395207 517072768 564817176 823039195 831037822 861112471 930190374 690516538 935353510 376558602 754052285 52715676 828966864 557414120 807405733 301042683 766204831 926002329 985213897 530279347 601942418 985132237 993887464 444022366 789537849 764770874 957370820 473763627 625179306 980190752 986282204 3816208 156476004 263321491 680318556 729242867 911080366 796999900 854535837 677873282 930435255 661935720 827435312 976593245 983987731 561496268 795462895 774344114 855016249 305789919 339539981 200521067 491234846 121990373 819317557 407743073 560384000 38809648 323987781 616718755 724850150 925266067 977092461 887642912 962286139 295762149 981078827 502177961 623682605 98035193 857883564 642503749 897447400 216928186 391129309 88072391 235262247 446141550 688482646 801384930 804890666 84544411 374838607 810079850 911064583 442869483 716892457 837300608 974055461 789264446 962697732 344136415 937285240 509616300 713147029 996914159 999369729 178155121 342657212 336889927 590141123 612731831 722314457 623895686 791788722 320564442 391641235 140046629 886228167 594202222 816108084 39377540 447789356 256184971 867011080 303290939 762588703 821795874 901069405 962620088 969241656 69077080 732521222 365738210 740462565 315746970 919094228 534328687 626279934 125656690 348047857 686986390 696361738 134524667 426805509 562009850 817522113 128680183 571875726 661669811 663380156 807990184 905973946 713548346 803463061 943405828 976851193 711841357 854479647 445856944 721375843 903736565 918241148 895620360 919434583 646347260 993390080 798846179 827296353 993373078 997125260 368123137 745997449 785773411 957442961 745185818 862742158 596161965 857880327 810053187 875624457 205949631 358842268 616560891 846167660 821674089 941380968 76358775 850948466 916551718 937761754 475430384 780405236 586697849 979305646 817410210 963917351 553897481 588876319 864713461 874743314 909083870 985867473 123859584 567148930 119451375 876733740 739008567 804834634 513250674 971306901 795844874 899689980 694560315 720006680 850232874 916132149 890264725 931020450 516535242 894814791 213872318 869870252 578214094 811205565 197054502 332612226 683002139 821164966 99266185 188311405 501568448 940339344 721571902 962277795 960415356 962131984 618542417 905733632 485636229 622564046 121454097 182705990 770371467 938312513 389872621 492003586 49409463 694127376 549718668 972050341 884549515 962858617 536721588 832007965 424776478 780248153 57606676 870071864 758357481 797918958 755809513 809765068 746267842 916695252 657044497 960457411 509257268 853959515 199200864 526764955 422114597 623156315 513033801 669030478 599791247 935377524 105999944 478497178 172578350 830348266 952995209 958062540 190960186 209972544 281487676 578391428 324797622 802758634 349936478 990809922 464206002 929120131 432531057 502506624 506827035 934322251 602624627 918153376 744691611 791691527 850705015 885306943 148233447 994967600 324576993 391543814 443635179 657086304 23029501 693350615 587241615 820019092 417800168 858318422 487135403 579608033 167870376 310045144 248727064 613525516 525943488 723066046 698143814 926421726 967337196 979146008 424668866 913180003 171859209 686403637 572622880 984807057 894954757 956661351 78906460 781890340 391620398 748204360 178004651 200011242 281073198 786059630 489640248 777371369 200880009 290701555 618433915 856611077 384954364 825460541 886106082 920275082 691285357 812381006 297177102 845151917 759301867 855077133 194602937 997756419 640787378 839683263 966855125 989107182 194383784 298406803 474358685 995369668 42485552 508030172 611872268 860878467 494913533 792015019 147778338 209541614 844657674 993381117 236224811 590450724 787335867 920378488 521363137 569305515 802968122 811011930 94907438 689640074 439293791 928264042 621040710 675568963 790517368 861259675 191851640 986898316 984378472 987499674 182968199 392677363 409421037 426192891 561097828 766138411 593626152 741638403 510397477 588566432 521240414 860949550 737625418 737702718 453690744 979432443 488180940 832893946 499913225 904088474 977810113 980120542 877032681 890502391 93672212 758476815 863066285 999771834 943267524 982511140 917402780 981207309 761860127 939617177 497367709 778600844 38095633 972133999 790875143 918401026 578832769 698708329 944812993 953478546 263871470 838242570 738943968 788712539 259879155 454652568 75199985 114642459 244778468 622313293 957612389 983890534 608675686 823369744 363455480 927298198 611597187 987427078 760176837 827525923 889383203 950709662 445870634 572686410 985817193 987068957 891666822 985460495 323768506 796914550 204937400 869425166 859621791 876868338 63190072 284221071 668124552 758744653 725806757 811482765 441927724 949356907 456595810 676893984 91947127 137893438 896705838 968550800 160542215 680800308 476746872 937091385 241206380 484724620 116327003 270775410 657988546 920351643 20606148 488165118 321291513 992657749 94672541 930332720 410629361 420531205 627058949 767027549 422812795 558875032 947599385 967966142 784519846 979236908 605736918 612975534 767789705 937501946 841888646 949266688 182414422 424068248 408442915 616817280 916574314 990810984 521208913 762260190 436166792 800453273 420551729 505715589 90631844 968655708 566970631 924709515 984713861 997990048 297737113 362992052 311331544 440323883 928593945 994528722 219792137 229981484 289585198 674093668 566189523 943002772 572054776 608827033 140622772 919658857 657636843 934032338 291955308 876519299 743220122 777349697 347502962 894194927 620879267 673695507 931062993 948890920 748574928 866672250 966768049 979347714 609341896 850671964 318372646 735333832 917291949 919356251 261024957 740334377 548144196 845085789 80759704 341513774 728832730 874722845 777430291 965362519 631222920 748921228 520741230 921590959 198286952 733436079 290101498 912938488 120161263 686804756 396254167 451151842 554662656 665691384 238095717 423972806 392977339 961130557 578142489 596175006 834803957 999958638 256779459 499146868 598750614 834908931 631102763 821419704 127903950 641645494 365720828 385612358 531230739 704939346 491085283 762597385 218466093 417751464 510482040 657321254 996467101 998932662 193841520 269072712 835924340 906758174 756004743 804623613 470053959 665693667 165524181 596790591 167003200 501424662 289866137 929031323 820566815 841811394 228172991 834338452 904026605 959751112 769811445 820805090 660342192 687648057 442553897 504998391 637058218 730292281 278625691 483506156 781544596 852259232 885412828 966325400 104589696 633056633 2487901 480452614 511944109 919305999 529396049 914347242 266231213 683506804 812885248 956036476 231916679 585981544 532510603 943978118 189308990 902541812 216562760 499711728 588481551 830520734 238076523 747814722 75541384 400670610 884605937 959101856 4369295 71110705 460827068 846867078 12395302 983374419 259229822 966887847 157615168 194014356 831039497 892082048 574597254 662093335 765738931 854621737 519961105 715429164 269766897 323492266 754762712 881153277 575906709 881894315 757818546 946241319 702409928 747886272 805305880 937287809 498057437 831118186 292151641 816913113 194235257 899464520 813668410 834317839 891805800 927638992 253546395 398729769 501499341 975812675 424249002 894761969 524719926 974576505 943601362 995756134 862770007 937276227 16009501 472296810 310160557 900868535 810583653 957550633 839835100 993872497 926704974 945293038 631795906 742118069 536352482 971467639 732639342 828496631 497860200 884277985 887070 759184089 774583124 796724699 279883243 412697235 134460330 755558136 287199152 566695254 274786123 602011371 593115034 651036247 957820015 977462252 296952745 741863153 831819086 911135732 617320443 728489512 521723928 931187407 27027511 665311751 548896892 616214290 969068983 982293346 31774065 61426388 363551355 627418735 500811368 722268157 32981294 927125368 235836007 671419862 379160632 934535387 759062838 859043271 105882189 546631585 316432981 963920159 881869280 891498380 288659372 369845663 765013639 913244482 139741986 972141202 966356756 973062627 712686959 928711748 727962540 774416513 222398438 875765583 265541788 334587259 741570479 767864107 24810464 670606303 293110837 525983635 266890740 477221631 500956792 621671781 51203274 135533689 539199212 576344387 493521039 963019549 339721122 364849898 599709125 697982230 172352397 927689965 260221506 402639112 319654735 459638957 669988158 742349733 795587226 815138810 904732434 939811939 408840449 689282122 335005520 627383635 283629909 571634664 481169352 722432476 751355469 943612012 235003219 975765984 849709774 905901046 102805297 143900398 278863508 936034440 605427166 978184971 359338899 684106756 429465465 668007582 172725449 179348418 239903765 945402345 508142377 990061073 74956255 314504372 992800261 997956429 733731004 754991457 608558543 845652976 293315771 610438571 914817992 958882777 512856930 878050516 111781728 741795326 450032209 586380260 587378848 591338967 982611340 996006425 463899779 682735999 147322924 294972492 744845699 896152468 75745113 517391694 804544287 990397426 209069361 247348945 576729659 775992280 726623671 945381542 759728894 944682894 648067141 777203790 189469684 235266507 727885625 864142122 65899601 979093744 500098020 837633614 446303781 504805246 322213289 835975479 597699165 602512481 543042527 988645413 946491446 970422570 764391884 952190723 249241428 606971149 776521630 841155465 730582932 762493176 207912097 825014712 197472507 250282323 371857171 591961149 445543736 739555681 788679036 948553721 581161417 709666777 16288153 260237130 73585851 124737737 202138850 381195692 936419755 970878029 904767297 947846241 515308128 591481540 566449843 719442429 10062413 774774228 991524385 991598367 30352519 121488711 885651734 945892532 923927259 953317456 289548807 994973893 120271901 325227986 725009462 848709663 79969931 85627136 334290515 590962833 123903589 148441885 603095946 952392025 109840055 521676184 316534124 832351442 266131546 674459487 827700096 870098418 934307294 985502248 189157914 530055668 119676381 233892451 615925981 777235813 382245163 405634828 642370139 689249458 849965026 878250438 453315847 910249565 276529999 810259856 793301258 874249251 468055572 503519594 607787978 827849667 709682555 914302218 504693680 591776819 716833757 744062045 287597458 747024946 227270468 504759468 552398266 708523916 368573096 991126752 510211703 695958417 607162652 880920737 61677807 329816391 333534928 447316029 202427932 461057871 947095377 999863112 288911913 467663439 355062983 761943601 513223760 601657881 953550921 958087638 722320957 859951217 286135992 827736927 216242988 914921503 121055686 921061843 378441421 901322797 326419068 677632832 533541645 855184274 948909924 953275719 471467414 927679632 304565371 743665812 358334641 377697161 984557358 985469513 668252155 776340952 988872732 994288626 247849288 719205117 154682842 969576990 563740203 574420991 677025918 891809253 652738624 865728367 448525184 833510376 841725394 927307843 362479874 768651264 469010940 730363709 201399180 414952257 228845031 795284269 773642698 914975937 76157157 82253178 382449007 749368533 570351423 949785398 697491528 972705989 915834165 959014903 619081896 964782899 200489427 613597664 206443140 688121845 759855215 876762733 770702301 964178603 171497123 669016084 460172910 484760080 147125791 215641718 386919242 692992802 778807137 966689919 294315975 590582242 150236480 368742268 208187082 799960143 908431487 927001329 984068260 995664149 368293043 949738078 619558882 648701453 959067005 976142378 431731937 697603911 224455873 523241530 964726449 997466134 471461524 687660736 803533211 847151223 488989869 700484136 997764805 997989672 179110925 418604717 186501674 501911040 264639110 916225426 50967739 877645045 637783959 877591333 922563847 984771897 36771758 733947187 139680939 828129881 729025234 950996045 847755415 987343116 617053245 927074659 105674877 923806662 56222202 261276008 634950183 945709237 397263619 847559555 625018753 778915624 882618745 953116422 65722320 476460298 491215721 688863134 424575171 721873325 299754942 565049550 297742226 673449179 922684010 948944212 806756797 990337452 6904257 105699749 652332371 867620000 284405557 339800195 10811386 83060375 329105860 398553229 403977472 974277139 961322997 969863961 468752817 980151296 665908579 831343874 988027117 996632293 866824041 870304113 34802136 931649445 394529492 915611035 324878467 847915439 801296130 898639708 416722205 642739725 123725784 159147532 944611569 976056791 49784745 922379224 772869555 970233284 136597008 444204589 485086050 544638149 651888839 985204972 924354230 982648140 925829727 931215516 121037796 382977234 752246162 922751757 350668740 700244241 126509848 623129984 867012517 964201704 305488802 583242198 878393858 893514458 635762176 866145940 61273949 247008682 589861444 973049015 839276954 908807837 266344204 949819573 93216382 284288791 236748385 753222451 116835761 793685201 741792843 808614127 227228402 586288436 64259145 840812262 648224673 852957732 124741578 421025758 813415024 977053360 389306944 549671783 161652471 272890803 844536809 874541083 396804661 451316001 638769236 820467704 847029270 936874799 591440058 742565103 200270317 622276902 891050233 919216762 239957540 488644355 169140508 594354385 207113922 802969117 181595400 971198762 704428663 848209506 770600259 885000090 612283270 882041391 569423178 987079620 490805925 774390693 903830236 926612624 367315458 753008571 325242916 340951675 880650881 909818948 398316567 725402343 138760047 951176574 717055443 864311177 165775349 823588934 728954746 965388606 999228064 999569435 316730757 458158682 931760688 965819721 631804285 877908798 573206297 788871728 679291700 799802223 440331296 570275329 72138500 908799282 679419417 787475055 882543098 925526574 174163560 829988742 679814790 866384294 758609728 851037065 727308328 734359954 16892107 853583387 963476596 987467119 764474561 955963819 18504773 550218389 604948879 771801943 560326560 778066087 465064806 534947427 358744552 825580522 442871911 901063579 758990614 841774798 156969043 605565470 937717180 962377923 360387819 470204841 975188771 997009660 288658124 955697777 21329382 52014377 989054512 991238577 682584065 718921908 12631369 173388717 204274393 342117498 715378984 730518591 157816875 910200279 155626731 283940594 607037745 711655430 950497988 985074308 418114027 556120085 544955232 750916589 728623276 897982918 485611232 521509025 256137610 756991294 984638646 993929650 548145956 662777896 910817236 994429834 908347887 993789053 394932193 601558802 696808159 837470879 728417773 872333368 650420703 968028129 488443996 613144034 544862635 782213055 311785299 857862965 635863771 640184827 911893251 932065504 763329432 779146438 571326759 785600894 822816046 909619725 69225105 203249605 569252551 828636771 852651106 874030721 65123011 355401093 283067417 929064663 570492814 573373493 195758457 242410131 802868218 929540595 970688213 982541115 155051939 798314952 572925275 725418993 269943201 371040755 808261255 842941185 795823284 852640399 950694722 985785960 135114150 630062794 579001001 837550228 433017875 528189611 266382112 624312337 795796778 938640478 51716633 818330088 364028924 723997646 547083163 905217372 651603606 663700549 722394301 789196534 479050810 780039697 716268244 766475973 522369908 713293132 291401809 381453040 305071740 877243135 109249292 756591431 751719542 768545751 601376511 852902220 886622073 926369799 937738687 991641285 272628145 474213323 47455115 550099974 600219534 939181877 384801660 731861998 59733188 493366628 819136403 934890540 9703772 123197472 880174963 887196559 424638842 727001970 706914529 860118910 472711773 499692360 668617546 859750639 682500206 870104114 170523596 755321278 48964514 443449424 844409457 980524199 808909151 833181690 95225487 481635090 764060090 799771057 952241646 979037359 488008065 955858137 736101202 750518409 48768346 928114365 851189902 965980631 330606578 882760166 921358236 971891384 38037513 603213655 221268625 974614916 804700850 937639088 471654842 742296559 699055779 972782864 936294140 962926981 226170426 922243033 856498417 967125264 323729287 528518157 428748766 844962994 768416277 774373564 929111449 948449593 532657378 611814839 315057857 975870603 201945665 774724030 760725438 804747424 32591037 801236038 735632577 898959432 502469323 617190686 504714161 893432371 359860663 797691580 156565571 917605803 311149217 639836096 985923554 987325584 254397542 805237551 944479734 973543096 839431371 986981325 927408692 998282402 812153355 949435265 434402638 556242498 89922974 95895839 61030694 125045649 651060950 734525462 184898169 904528012 962964213 983354888 101146769 738723642 567988322 669678739 265051125 817303667 178909728 858303311 257612640 377754042 338790726 964017540 548619643 646953818 608981448 929264583 296161518 421648970 709987787 908709466 923293073 925520304 907445404 960044453 274187873 366491358 62384567 957393660 988930914 999284262 827985477 836694220 724850890 899917348 441503870 491261253 426632670 564937478 788534837 931376757 921731204 998442273 942464129 984581641 232234939 399782774 740260667 904130958 987145471 993856058 313444 834900899 471314050 739609065 234752078 527566096 977912589 981623830 895460474 900383755 193811683 367521185 234147844 403241447 43106834 737729398 558550391 600638566 40881819 327635100 140959813 179328340 335120863 944512295 676480236 773745964 519651241 595800174 212970910 463723597 58851923 395070175 853727663 894067528 777936689 990212491 127191488 386812271 952367703 958203577 707489289 724914705 618389720 787972370 728675202 921986338 847121503 966406721 214211969 787337913 497794543 694294033 897499503 936716834 556188001 812120713 211797220 569098141 581776639 942242371 721921855 892540159 463420691 639976710 165778490 589123365 874337994 898693524 321449804 826244673 207505174 884524462 306080722 694378695 715315335 730441441 84947380 165645293 522663827 948877227 940921304 986511167 596813251 807077579 389714093 891011416 538765227 657896426 872255106 985547480 171776815 438591113 158090875 881656323 410397570 542092545 998334548 999638675 107648565 460399493 861916843 994819489 191919215 606426404 548522562 882140125 98141173 487351475 776373126 841174877 281519844 830051732 285900675 950408407 219374670 564093768 179844479 230684979 665565900 819177129 93389209 790729525 499289733 650185601 405174420 945837607 416390801 713499337 816390231 820164054 410095779 910747598 415758991 561459175 786318182 875400316 181054809 910337710 419688980 462460891 816114045 849472206 44441178 519422420 485157485 889476383 301477771 557970672 894485468 919093563 855834858 975476677 120290333 415180066 542271236 960649087 839056924 961144618 256135577 930939743 299948627 360536831 808815639 893288621 793007014 823132767 511421358 932291287 477743854 505873582 856062695 864647810 519508545 630589728 249130273 821679602 204643013 449857378 746265707 777810226 703444973 882036603 374383389 825253820 321483576 945727659 675116331 689882156 468767560 939910532 614378292 967855434 533628748 975916198 302764232 579514427 47434417 962602700 613788940 951025926 792260780 814361123 472559889 576819362 408851505 659311562 813485513 899058835 822007651 854255290 322759865 610039995 254756666 965151244 490892946 777442685 571553589 983107098 741511067 906687608 805499765 936423182 832444604 992507660 546420444 988717669 126694449 756497272 877090394 980585857 3962405 214900761 223475481 556454036 142266608 835149626 757807770 951496014 790448342 880139743 421992114 504360494 281930717 946169453 191934629 634726050 779027514 832754055 20345182 555063493 147076454 320321858 787044161 817753006 192434079 682713397 497377490 814114336 433317808 544692665 43192294 135698014 512380930 565711259 443040061 915453784 664597040 778502796 22495672 531504890 482214205 676810142 429830554 581316307 635628086 686739426 828850219 845843609 666738425 799003225 372598666 946981461 245089124 961006870 460205230 873605053 250734450 354478055 885793069 921539216 865888381 883024953 265994466 569193443 517157136 722791978 988898331 996161450 36561221 832874199 156817667 596722757 454070526 856089676 364570908 967458211 432808840 499039498 695708047 696030025 538311615 678086783 993252187 998184954 113976271 960670288 627749394 836153859 708283803 917395212 933659092 959482659 282074501 742397565 679792057 835636646 656320408 712817180 674081069 685750447 306148635 508732346 795043802 961953351 404010008 748762372 180383434 894696441 11653791 492467266 560991312 830445310 877791953 912804473 660596234 800184958 252530421 862700896 753387281 900558319 51342663 889046544 169199605 235090754 434713528 937068583 206106106 653248646 717246238 918661901 215027934 792695548 382546640 986142999 235269520 248972299 435806676 755781603 241103354 351543268 764577734 832968451 304442468 976512234 166149284 592672610 237160565 362801786 6696787 588122204 576605958 948463472 739060587 809776076 274421578 334771712 78582781 536279005 593262514 918088362 473410159 943674967 583123734 863828844 897510357 898720067 965198298 998017956 332864815 654250007 852367138 882720016 444996473 750515762 666882175 792722168 764225280 824454162 131200608 445811559 170716120 171958885 76126069 120507356 765201466 888177273 361415412 393568282 44364677 890851359 910168529 944061595 69072225 858958702 251608244 945720829 8007640 842946361 313404620 427127828 361510349 586386600 159832386 815995511 437367324 904976467 908458864 934337720 29179251 600490143 363143767 661935763 572318748 836061470 666124467 936960841 774587517 933945367 715878508 877301838 5836142 232668555 315890817 752347556 997285771 999519948 320855227 800271779 90442016 109034813 956045478 983895612 241209325 559907425 712999816 716931153 192601602 694936604 421791003 663929640 320337577 915302596 920769627 925029684 576966416 888154596 841871338 968432536 724533682 860142911 305221037 658837943 701073326 985555193 616474356 653942049 695725537 963985993 592347698 678111777 406484674 517554989 625197316 920885049 81560824 863336954 101560271 324871412 534791661 894551628 377975757 491776417 107678705 330494165 246278470 268003674 776597470 940832296 980576091 980874110 681819942 730281138 464906605 893115146 893431632 939977917 719994538 762327939 238615167 696318164 497785557 553298337 605957875 914432550 961320712 980227136 60002730 87088628 581280784 768385378 663424245 766611176 252475587 299143326 312143701 896798075 41729348 999241339 961456927 968100944 528325893 555581122 568767897 596245476 547955841 562855744 447979119 887057164 935370496 949679169 448316304 873261838 953809615 960522885 651358167 689652650 401560721 429515493 190397123 557329575 191040299 990234747 979800574 986774251 234807008 691992198 458866465 767286277 113125554 836182031 434742693 455909224 80904037 345124817 478963971 843751358 639117641 949854930 93015419 114547637 814491061 993832825 380958049 466086473 143081315 292727916 699336435 853385378 46612825 659351347 280015413 928650072 175008651 263377277 902257548 962513427 712720040 892118714 311025675 685126797 110291283 436745401 353818236 544666255 569121693 966744913 151498053 834227366 537220027 629538175 32472572 643626826 588090088 790229043 629134286 785181308 217443064 539172782 589813546 961388885 443559694 936455710 980801275 988153642 272043200 447290779 931124324 961939472 932245346 953094253 137336297 541096384 435016413 846244678 383578283 570149492 553447987 634387439 18520839 112568248 408628291 615867784 469015958 583707103 149453569 393252370 815597657 864849040 685079719 839203048 499353485 872685463 7892923 663328281 495169260 924203488 761117536 820331431 718555258 986731965 974973372 975428371 111382011 314632336 211224841 996296538 711134941 998346961 104352693 111025589 483146021 618373725 964372607 978253848 76444369 445195168 812328079 895674480 11923958 488869990 94902879 943859705 117794153 537765933 519208190 783689955 123109823 996485415 595254383 840155236 183357841 514054864 136570644 339422292 431647391 979012557 797884045 937796662 545484760 740983016 980577224 999160257 512063419 779868362 896449146 912220938 592643288 697097228 115084559 154204814 190496490 921692024 15409047 38029996 550010276 577206022 608958394 685221911 140911957 837598833 216547595 707784325 806692652 841309600 614705305 710599836 614506472 820700668 1508071 36444082 864673092 866619606 212813182 502387328 253517072 950652268 937614181 949858881 536737608 559706135 701264973 877903859 332253922 414014617 825663595 955323966 226206191 429226866 244717612 450993472 206651017 270256947 13076960 804154631 866046631 976374936 719514529 732344206 997412729 999298363 805883113 944841436 542828006 756699699 891019569 894700011 404293259 816004187 609331355 721140771 474721146 953305952 826355878 958394023 726171657 930083844 920295918 974144258 542386636 555858925 597151004 834407776 495158281 665112193 437135079 652634781 928555277 953989604 369578163 928144931 111493144 836716981 4344588 592461671 610947462 615807618 436260001 454987674 632937512 636746682 310231787 327283149 272585195 875338670 248587853 709213770 97437948 991188415 423538509 890564214 501180773 560956282 285778993 395068491 322184691 997195915 578721495 717073654 845879151 891040627 419654256 477184455 183519411 845622635 613597594 980420113 238319202 638735320 119372352 546331701 843659046 871691803 798814466 827050608 710239274 711713659 511554161 734574276 941193237 958323486 699501845 781776960 335483884 963491782 809103936 973813284 673006794 996659899 524249219 602064915 306602972 511068876 40849791 609922981 395912362 462714012 458264471 725867767 851552124 868199547 969568671 994560452 957360512 977791766 509581536 960242757 572274285 615695388 590925014 925604594 687835545 821574361 343660393 489488208 452285151 830647097 947535027 984802224 367848557 794122326 920231 199862699 933533514 984416522 442935449 888952647 883071289 888917089 84760939 542704325 714719635 722640287 462675142 813487030 768994688 814103258 995621418 998648307 574978610 575830128 925834264 990058967 57726294 84397796 277393289 928662008 866508890 954189839 770429932 867228722 483950528 513008061 977303773 977490974 822900711 846634277 355793804 881918094 967002665 967590219 689536929 840926257 162466670 770647510 492327392 656992617 607717744 655358305 589569553 916212758 600454208 643468792 927921448 972664677 737156251 754934236 979104277 990637958 593774858 844680226 877256508 966539494 118451632 284585061 248979037 424159828 654693675 885507204 750682267 891906772 77100349 851805467 708734160 732480337 285311978 891602501 967249799 986681089 806843749 954744610 186615834 970901274 704825910 738865280 323672073 511691109 467664746 599069353 607326251 642051638 414534315 467485608 246756072 356554142 716148827 987203635 935853434 982068970 947354801 969666779 397941684 948134318 356527553 510303309 604520185 683707499 481121926 889373231 955703294 976438071 317283942 351108036 543804492 914820125 930216309 990905975 697856243 711743758 81787099 589719635 753123327 869146461 232212539 571898329 148626928 388451628 635902682 671498173 877721639 968785014 304627631 863089809 788623173 834834942 11316359 535895752 680689448 886942609 198890124 705740529 888738620 979165649 118184283 809025509 363327635 586090390 840172375 925114906 255942225 692815643 689729747 812685288 646360107 855837987 418460596 736250481 513748531 577066864 513054312 852020067 168246413 558299648 995672761 999952226 235265312 933038790 224716593 327649668 676466782 816891143 250638190 919583454 786830673 838118666 48406528 208245547 278085248 359989141 876455924 926324033 664890034 792780426 405723043 930031282 736714842 913461624 13250252 125239851 795890995 867352808 420526703 702555498 983392608 996942911 13313846 237698783 355749582 867416057 282550914 708604544 707843470 873905505 358634321 901218590 534097926 751383037 524489664 751540542 94523548 963400337 745919068 823859583 205735044 481528552 797081534 978917715 86418598 677607447 280591170 802615244 745662905 910341904 258715976 598314667 386232797 792687159 711586556 760533369 412625735 473503815 799912258 847516203 388875557 484920441 241221882 396046257 417245384 851255624 15919376 191645636 924637978 929100119 959169047 993305100 957721916 979254424 583573722 703750123 586463095 622651180 605335739 911372978 519378676 757045873 795183384 798032464 336553657 757621568 120290926 854245505 800445684 829140248 626365315 938443161 225137116 233014647 36261179 896440949 85539303 355618834 346397794 402931559 286208349 907032777 328702484 692948611 358895537 467815268 824055879 930414857 2102027 442674736 636351185 646047656 239688856 978142944 637134604 731679270 728325374 824123828 699125619 971023182 662026244 724035486 493128416 633629945 210518684 798975016 569873482 666324098 325046602 628023818 740988558 836737792 319760980 837155985 908829997 918778524 827699686 841098667 926877207 947758002 875701450 908157509 658873170 694898979 485132885 942327100 651612203 937109487 540528446 544434399 992628618 993346835 967393335 990636685 853669674 981896988 892176816 919344822 827686235 881105690 702693141 954421039 561934656 862127288 197106220 751848243 100890545 726819231 679336129 864228834 274487095 473947379 948396337 990048727 532038 568695075 376115911 401250874 208945881 291414354 537265303 708820292 541357058 888430322 285955032 429248738 758876399 817753406 526785614 684388047 482045475 861303634 29970675 415037792 376263927 819952821 734761016 802323803 673140348 761244540 73590247 136907599 247470644 677735276 992818738 994830795 875019841 903814522 769627598 794883007 979113278 993724159 941149475 962160841 6518577 53976540 438250912 653549834 28161665 236731468 47063628 52411388 826275750 918126798 492467065 983213292 706585693 872244888 301803553 611387557 680070784 922115069 476931677 798779975 241702884 334623442 675531805 905693707 188226199 418170391 684299141 953256687 364506883 539232298 49900392 463429642 780008101 905180928 244778969 912937442 636825246 706839851 813090883 845854342 689860992 732874799 575214659 707180789 524538354 677868032 182880473 329867348 737548993 957254631 716533839 795786055 641473702 949350465 100284648 326647295 389765359 975860085 391402509 866577560 330664946 505040819 913981306 934609063 208009299 627899887 656033239 858247929 621667847 843242787 660246724 753078448 333938665 668412232 677131674 999518314 308971660 837566723 353175580 980322203 580481099 900163304 835180209 943304245 450154589 827054397 863490552 889046629 164651216 383252929 554911892 667019599 540803700 885515270 301839607 694542390 214084859 373406403 295303387 451499603 313212073 920132528 216077284 559195369 151805572 448144114 361332129 798732206 431568445 559140195 973840146 986793656 868469211 960858429 812509871 954104287 998778388 999413936 334880477 886943178 598348478 940697668 318458229 621026320 706127452 930371225 655696767 867657130 132886404 950402559 626067479 932772004 461616983 901437516 67199316 388504836 262916788 774040396 405747466 796391912 546765279 708199149 433323421 434448694 788250269 838745010 736933770 812402498 87548468 615454203 521107660 946827091 115746916 892292859 784634813 872518927 864306987 964129163 728569627 922135224 22575916 356039439 173383321 941874479 384766471 785385210 888985870 904784105 245076741 420545352 712775665 895119890 574000388 752543452 615407064 915182935 812729726 972082370 237843679 746750716 291984962 959038547 309569515 733649189 756666968 941219130 162837938 896133143 391239588 993715729 760416385 997900595 300186321 579536025 182722461 457616046 600711143 976469882 776824900 918594583 465717384 789881786 21196961 503740814 132649500 995284973 231452358 386459870 454052258 835725110 295924573 817039489 671307212 750138222 673594805 746434648 384023349 764785108 464315744 989760559 302006020 483151384 291531998 380187698 813344817 968607952 623193043 970525960 520138562 885805252 512302485 880959990 600471939 974462752 330654713 397021805 404827263 583641431 306745950 965358200 492888870 590746691 258694228 441997694 1993055 386341065 194908566 692705288 295743328 803701578 261378000 885208397 611058701 936471269 122095327 583855668 21565773 891412934 51539795 787235885 306990457 967145550 846403083 998962430 92745943 980927186 544271645 779719966 535433402 987956792 144978115 166990848 551593412 590735856 668765295 748994174 753789249 928060173 313051358 656342747 327934406 819988878 599936158 658893633 443663902 720578569 473116122 892244791 109288300 252740401 173993543 601948725 761606673 936767198 471456324 589245206 307942128 387413534 560406243 654860238 9194046 314518548 792607475 965388621 21761371 572030935 470187385 653682554 692713960 803665486 460965934 814914143 554681177 683325527 45526617 299309306 13555615 684764662 490684770 680750806 377326401 619750108 345919082 572263740 688342169 830666035 834872026 919828782 905087763 946546235 802802889 816012403 289026421 637677370 720097317 971900147 397917940 597941914 652518595 746996829 79211932 995456366 829980333 910471791 533993118 727094674 739040444 859153660 264049012 701464533 995029072 996314274 695851821 876972835 290334405 720453858 684733597 880164192 766923094 903104774 244594284 995362999 23744599 496209991 853891329 912070731 939085329 987436616 415746492 912934998 249595590 911849916 406932535 925857612 441951189 565446275 329506140 440263981 483903640 832788253 102358922 556007868 419708607 467307812 165112717 853828909 411154250 947579358 876033732 990973521 551406679 632809075 485737002 631745693 40701517 652895754 267263547 502126497 294871831 631739752 379877231 512896137 326414902 458497092 514497960 842836181 349949544 517744684 478597280 648937943 717435322 788062311 893000108 958793968 879370217 888995945 11624429 316956407 184134770 264491814 965664720 972030228 862764933 971194197 32429152 990681862 656631078 841835801 772541688 806422428 164212411 989460428 703324508 988997755 115228384 522845653 649419915 930446800 326344520 705124680 472011591 939173167 896365838 989832789 75889576 531178699 194765532 618314779 515043721 620070014 295416634 913992876 712875222 817337481 15627424 867075555 833273823 884842043 689588891 849222903 424433149 870258086 765005456 819799866 691008517 904963547 782795907 967484607 365864255 643012742 850810335 891015520 680242936 828512726 842545863 938842208 415754450 820379174 750097460 808820105 542826573 858193894 234290354 867170613 768110356 957720117 233782334 246389636 355393304 471326244 742863294 929938341 828604618 975973247 785076387 965233176 578375175 857046022 15914164 297456547 968597464 973070661 609159042 717448857 233996233 277651489 20809453 283313989 384524154 503185576 577912555 971983195 729988253 873896481 328251633 996729729 888268929 972065480 316193296 844759318 561752351 829030801 723270801 871572417 143541463 801648465 631436243 821676201 36792439 78278471 27601645 730041118 104870154 170650093 27912534 61270783 85288699 654063167 632825337 884026716 723943645 964896897 375550392 490814701 618898676 747977543 671574742 961356938 942765694 957252901 875795568 975286693 643282414 698713657 337369866 996610224 180607595 457942763 924520812 982465649 234085038 900525197 914770296 930178019 322822554 520400074 754832031 834529357 813996165 923382776 224201680 511559346 853306882 903647427 202389760 527083235 962717572 980049820 213939009 474428028 758544970 821658003 250571934 254119012 17614761 489560239 430399548 657750674 415201371 976637020 21198646 685245134 530176346 638829813 946702906 997196725 431558369 979986539 922391528 929066977 277538961 757794981 874729330 961290183 342462367 827233501 588122981 628103269 122800641 507991370 674154576 921850730 697494622 779884446 491383556 606139671 425983244 835183748 682595605 693147914 464054067 645452459 767428085 838819662 583112210 788023381 60689666 361477315 550682963 774784298 786261917 931585540 880740408 975404408 802299026 955759832 762290255 826820761 591968149 632112308 23677973 83980876 506897288 574506482 279578325 465482280 724739385 833905929 221700216 544533758 959592766 998129620 305629440 517493866 903305173 951575842 90065177 787447619 879823757 902629917 854566607 912370329 748775615 988279244 329926901 387949059 534070217 741113329 794797109 993811172 53767422 519108437 935498875 945291096 820276913 976440252 377770147 796534879 12142124 391415754 817975128 994040336 800558201 967044682 194722504 351508920 743420895 793763242 623316029 944107170 704986227 850137159 872637884 910201049 23352682 535692962 300338146 914698717 898861635 931197521 820237272 866615231 335618679 802567724 123793042 551346533 875839311 887443289 296898421 926948814 132324438 388288120 143326753 646043240 19762988 771336858 688013474 726844160 765970368 976138381 47962553 93434788 531715778 677772142 227710034 898810746 605477067 750429376 820702543 851700918 888764851 907465478 725495147 960358544 43495957 971093005 243841037 525631597 42757952 984531660 144111436 737210219 35499308 574922205 95953735 703643832 454779656 843374649 196479835 605203691 416223110 861784166 260466273 285215810 674159064 687978792 332150553 937453823 235986027 863525444 951788306 996403402 956544194 997136144 485527254 913720871 978255256 986538773 237408413 906686562 654062778 844898358 180953879 551184017 526310416 535808799 14775217 429879050 157028863 161341032 632613482 701805350 274298006 846782103 999432422 999486687 866198514 874642130 285280181 897972930 38191260 661090175 568981724 605437953 649572323 989947763 905643967 981143529 467022628 559655674 143462548 984176221 570947483 669483782 390327147 979463862 293661859 642900821 978514125 992990398 908842461 948163077 579392370 583922164 737954683 810959423 969283895 971139697 397888283 825175192 598843610 809281021 873065687 886171872 95323161 411885489 696934569 802643245 69869229 123275020 437975883 833666500 889032867 919095465 516047411 976637460 642387709 922565300 801412582 815571644 321015569 786089146 240239313 645821304 814702053 857697466 287898947 949019333 346791567 393521396 188899531 617409175 227966118 911495681 91477478 332712395 737493955 947054450 321236866 492729607 659948916 899236977 411610992 525956700 297540783 514246817 537968955 657270289 858906053 961523940 904461581 957343681 648982686 940687991 343030142 901008117 412160370 630549636 131723463 546531262 427463939 966560978 919220996 946839074 636228880 926440555 139298049 360354002 184428816 806125434 448162825 666490142 822572224 836615987 619973206 675436645 567774933 876143425 450564547 461495794 180134952 278262704 169239210 202398893 857845795 866173411 710922485 742433551 520162221 728559774 248196321 526234422 438919945 634772706 74943236 834851949 201204961 547442365 214472781 355119450 347653114 777651040 90254028 231171132 263207204 364330909 194416241 281632370 969911822 979580250 241246796 567259448 961838046 984913700 353795527 844945119 44163534 227113645 460457057 586440242 638940281 769685006 495182943 950666132 227679141 972607699 659921416 803281301 265240453 818309723 521218956 824311782 17137771 549878800 362091373 742710519 862511328 886229294 445354827 607412537 465842904 884010744 20418662 211839358 805781259 988081739 133939560 790685428 389648161 472917288 745403086 784201360 705014409 941180562 257054639 615225200 507547355 560110675 830929182 870905710 230851744 899842509 198294242 355028700 127676191 609200384 475740436 794700673 645482972 792938848 374027068 735580095 551075961 571456985 799710484 935912677 655151423 939389222 463802458 910794622 603993592 627731993 879333579 958619287 375752267 780618382 410089436 891735300 5248805 361109478 533880473 735417791 948338309 974178888 757928779 879304008 462361438 671947047 806060609 844192121 930942086 950989074 9035711 84023906 239639685 477055074 530690512 920272004 396865222 656362009 176370830 498031877 800234134 988004902 707275782 908924411 204735948 558375865 933163458 969062262 319915178 677130909 474429557 588243881 108037100 439747328 259700823 464677454 689739732 960859036 810085884 925251016 384339028 892471312 901452675 938254832 559750669 566066097 221563171 485028027 938348678 993867880 66192886 148028530 804624180 830118746 213955503 855036629 673946863 857335086 318065840 354071131 486423058 704428831 608216627 663451673 214286038 638373567 65487223 549141828 382888183 645233573 628545566 697421317 800081994 841474805 731338796 918491245 751699194 778506147 393071125 835682399 890870954 998702734 508724207 516035079 857626026 949743448 156150207 199533794 783577195 977394619 144203948 604746311 326564930 703032303 733773460 918665727 744828914 932391615 209202045 975676013 921522753 976517190 993292566 993516190 980705736 999634402 489957577 566008981 741154977 884776188 376337441 605698236 562258905 983684041 224596499 792090456 79065716 649139771 332293589 374841713 674986578 754905838 634402538 729537292 795293560 927545550 499227191 821406459 74179 602975675 69789510 560286126 656733013 719315670 589873281 780663317 583076102 693504926 904806868 922925663 915343841 960477886 273533382 878033291 254691704 609266316 55000272 714127488 522279502 997480271 271993487 763589964 629918584 644770421 779863307 794775368 778927256 978019056 208944695 397351549 193461127 578841232 8356903 360226486 642492924 766832390 498874452 562554532 669156458 754214659 830569084 994611697 354646845 550636487 166875985 510847408 158556577 756698251 109521722 493937823 36793145 212078567 102879563 154244552 177793440 541696399 778898635 862101123 642034633 930817688 901437153 929047871 770750784 915522879 92019228 399433337 91642136 977655739 51312379 819921456 193307802 483876403 690985039 841435056 118430840 562354720 887093327 906874837 774335791 782709614 439008149 620274528 720797079 748482554 981524211 995025111 810024245 846416160 357557820 827758929 425283671 996904671 531504064 965782808 250097797 713536531 599698859 918172060 54475557 740371084 114717701 208160050 562337150 626916241 390200896 408368862 745832381 787599001 413322972 489754868 179631083 550195426 517043828 987343041 910389095 955650034 805358191 912749807 802803927 900666436 21413516 969866388 398061371 753888837 910641834 981613123 179127973 480937116 230938053 478068901 30769633 170390536 190768237 481951958 427800672 586310606 126266393 131980979 212353694 368202894 85847831 807364146 10018971 388717315 311453338 889725468 658742953 861473476 523220777 882007277 615228904 618562585 209911961 502988870 660412570 883251801 209665054 674498486 220690024 734855902 192110191 953931752 784502482 829716569 864532802 932262805 804398402 995185971 290394092 983625526 165788965 271723509 600987146 784552628 532825378 699537580 759620925 871633336 886198446 911040412 493863664 754111082 645559887 725536501 666434761 669187565 438419518 974849602 423122628 664605140 354993512 978303747 258453217 816559042 842398025 972165774 830499459 935002764 95185642 926242707 583798349 859259589 155637517 284087063 84912484 790825796 579074650 907342656 255025971 714685282 906812436 935430985 60642978 786462212 300909569 890349457 300689054 885233833 362399994 619845676 703371840 888652493 947036630 965579773 325570203 469562890 932891954 979416691 869265587 950207911 147938606 254954756 911324255 912434883 744567520 820371582 192798222 719374408 765831846 939282977 564342373 575796752 738719288 808572469 884589024 887662040 626947754 761249450 563778674 896076071 173482933 887154944 147312778 331396857 372596918 430597519 13443511 953138789 264729602 952904092 907596231 912779914 957330778 977030372 73307799 834837729 755359520 801543985 894204717 914470916 667481725 845097486 299471977 836595144 255540913 969391386 878902630 944481141 719661380 826213448 389048276 947715235 874197074 966303812 64912401 334515991 228805273 955146113 950291181 961477500 471986395 571575873 369328388 373066249 24028837 934887761 870114032 948987139 40864910 381942820 464676502 705613245 465659461 513422469 275225539 703102423 170867042 262540862 323744165 932285892 802713728 808478909 75444042 446439779 682353593 876906780 647062001 734503239 321687482 972468485 850434778 902065793 986814925 993582551 914321732 953486527 737103591 927690051 212171210 348672151 777433368 829657691 398093133 980947605 746705748 951923431 118055974 216659856 709769694 914887415 358165739 692094897 350811428 638083121 217540201 514608958 523871354 754454163 201411918 333581843 589857868 836390065 772510083 972683842 202813155 651960858 728712953 812133974 875896412 991697682 715680155 757736741 667177157 853362900 435355163 751944674 898620261 959332016 46461983 504310431 339515673 814794351 286236461 839267592 946299283 977876852 746059940 766698677 343663084 682597263 154131929 631890701 579341401 759230188 174984411 270449491 384417907 677744454 628489651 731789824 524759310 576799615 542279630 966981900 904119349 988439951 49075445 190221025 797989037 993614321 991025679 997669667 48129234 877398395 480159473 918056903 513436139 596302975 929403230 997525585 149574230 950388217 872253174 907695554 154692724 940547914 183657163 317546647 806147715 987690505 242697400 353027351 636517571 724230723 730414109 845494786 182209033 340704177 87095309 130737949 908835274 977893989 608511474 875914209 193649600 910168521 568382783 578337793 910791030 914675052 232323574 343831247 155005413 494874074 583934092 672013174 688556654 726867054 572913270 852465916 572393149 739864549 6437332 354632984 653949738 673047963 139546992 322723119 648951201 719393484 379683467 401383906 14862631 214421843 393385188 559761714 385431110 698075857 541102944 691506814 994178059 997730440 234231995 418997214 2204496 386391406 737834457 868558486 316806469 495741343 692003792 989849907 484720289 962833834 845657587 858473916 760194296 902501879 255091444 796430791 345262951 823615051 484662765 527004813 969666937 979947054 281709674 759644535 962539668 990963071 67912644 139755314 7166407 169051455 895711619 904347658 319521538 829392363 224755155 416686529 487652109 815266002 999772884 999963864 450931555 535738497 995832080 996187094 309150945 328799198 838742527 877478734 778914802 848090011 946857985 983822709 758844830 873890058 878651074 897616725 272701597 315640056 763105590 960190788 506736880 657878267 633448736 899873022 710301570 895693681 242846250 299115857 690815719 871577469 741289261 861278302 989386905 998558891 789951093 995537226 811929201 833906671 787854233 897926233 170763902 305962630 919640459 927481276 146716797 489340290 666083809 687808417 121443378 223692327 734406530 980249744 436737966 538388938 581065333 623214419 623095723 768569113 59642183 848027378 124065337 570201983 404175253 994720732 472598237 783289420 891900262 944419699 332200497 860596962 187453380 426417246 601921484 695128361 340178724 496034825 603917324 839249082 557361046 980682709 814025438 865102162 638530006 649539447 887302095 985839449 487476797 926986053 343685312 567150799 707949811 904998144 494856255 776944288 71730302 847250075 913944776 961906637 720810071 899868019 135805614 633101905 826142913 872375262 604374011 611040077 182431626 902559096 980840470 984223995 19640403 162949004 471807580 942770351 558014308 917785271 903059880 942403145 873235789 934632121 225821646 493189357 236815911 640648785 271100764 816407244 305215205 806831273 380630015 758513838 633051775 921699321 528256656 597522999 412426481 887527575 368152812 462115448 356579540 386488122 30409482 261050310 351536434 830565766 509571665 809775031 941591929 967133264 788780230 917133725 925053414 928554612 472961674 736064165 389126283 499572495 864171956 897207017 928865635 934317726 483288730 578950580 37649637 699725830 887741923 990868505 417584754 951324112 397093110 592071688 599364688 991775527 524335372 980716205 50290936 974532878 984348028 995628883 221749596 351132632 52478224 604937521 697419302 842034706 944025309 991876783 18270652 499324862 321313547 690480517 458905629 817931125 427738688 545812630 199178897 758688201 527213333 619052663 188006876 731256743 235417885 369410325 336548332 913851813 509619845 586396522 345678388 800054275 274193640 785694450 759003975 936165962 627694542 694222045 416364299 511147549 423019084 439557812 682590530 866038220 461344924 939238393 953661614 971642064 559279152 817848560 198408956 971273482 655393249 914198108 653836166 752319195 201566600 423272838 34950366 841985626 418621205 590213316 573018943 985923684 700879265 908178080 807676812 867023790 595619844 602087859 825205940 865257176 644859584 878569135 613180010 936582922 181109263 466960225 853235804 979530175 332103906 761324880 193689953 520233263 768718405 812403131 101694339 701035907 685853826 708771717 559276448 690142318 279624806 400730955 344679924 493283341 592427084 928814979 964581099 979987574 810273953 903393857 949601786 989957977 444582136 964360355 594286598 794929550 38707702 312570195 222663815 401501091 568132932 785831773 552625633 665492295 764174170 963183697 394552795 799472554 906641880 960218650 52949132 179621779 138705483 837783312 1530540 515552825 894123505 918029324 69743517 83781922 947722701 968381414 589918751 616183944 960232069 974821451 336286324 737014787 382999460 869782543 841652825 944265428 217935774 926986243 546397747 770479627 276632619 822871155 794923454 978678157 701396064 975675723 672784868 782088252 217295342 742081175 128731040 292488252 410204791 496125721 249905314 312943336 139549774 783361167 843489245 882895842 457195999 542423585 628675517 950550364 631501551 631930651 107489077 385510014 443371360 857127242 714095814 838018559 899165829 952142538 911358927 941607770 395215707 470727950 871340123 926538357 467514634 846992420 545099213 955842253 93779936 512954076 788949336 797007936 712767505 872500837 997846102 998461310 711991071 855516178 230024648 930558422 742980894 944831715 257352398 697847973 684881326 921411653 807701084 957211092 900800133 915978028 248287435 705400731 89536462 624157580 415064476 557858449 245736392 774339577 239435719 907567819 475392199 973038383 211625808 620437063 946856250 957668152 320729286 493465851 410888838 664448468 175821554 636582770 580639308 845560167 839730231 923933772 237771767 319804734 37682099 140038703 35301387 968524536 468133761 830427143 33544159 273370273 117027652 457398521 713604143 976430677 785275692 799764976 957793780 971747738 780301360 885876767 604807861 721210497 489119613 996625904 816813290 866687550 252507990 509090247 425260464 529947663 550843712 819410907 807632852 902977259 410267296 615203832 292215187 746079711 203593933 896763286 733948762 890783563 584383811 672626801 22496355 863431065 548932622 839998388 957094315 984696801 471295601 579602802 51926947 858803040 69184349 961307287 550169362 649079279 788374752 899087086 925345421 956178268 886325237 974683304 799211600 987808503 931202356 934210946 214659158 720097102 808194116 864592997 917570452 918090204 109416315 611587470 689762282 775286246 191125388 819684221 256388159 450041122 824845103 826613548 972152727 999478710 911656450 986689332 768013894 924049654 635275734 857199124 390551158 437383269 955467949 981551978 849772741 986899262 709785190 723393329 588461050 943434016 339267256 551006638 44729321 856214062 965612654 987634785 322940586 481723022 71997478 149381103 902865990 926642628 382583782 699153118 354832150 773324998 692271829 876650353 314150274 821617828 262836035 825088988 142962567 476494415 957777904 981238827 674956125 681187258 441224839 479846654 828719497 943247079 426798604 677798714 560291369 856003543 875514463 898343015 498848030 693571389 520769388 736290311 583828839 944635929 368274277 452504774 823326727 993943060 952051813 982329799 921640371 967818291 280090676 974385997 488597853 711168807 900563140 932061829 224775286 873074776 389939957 748019629 889007004 956153682 526757134 558477729 703266193 880501973 969043650 990366890 74548874 271156556 76202912 566771145 922346715 929603505 275766358 455021815 603069475 767028949 774832643 989453889 348077236 869196026 104349239 244723816 634306460 984897493 453515560 525605750 135571720 392992713 953542984 998151473 817713957 995406631 324981833 514668484 108107684 749294011 12550623 113138966 125120909 509399486 383833663 450700711 803683229 952148375 133385901 299048535 207805518 843773108 90521091 349473918 904925961 942488915 786748591 808992085 821474661 886112201 932633058 963759534 726531726 891399677 693614294 853579041 376173653 572369885 206359153 213693688 693956181 788765255 798187191 898879714 29910063 648360428 844901880 908914069 850182745 903247352 708604196 833189690 615015195 616922975 583105626 759894230 754569872 885681064 718444784 957313626 390859760 846382930 223099199 841775417 920968081 997980864 323553113 635761229 92594745 133182970 624712451 997095288 776821182 797446547 919483399 998672126 498016852 839385261 135159981 828097400 475220502 537010138 447089360 544710521 946998561 971614029 454823105 862828304 805462012 861633275 632770548 889961709 952593393 981775248 972125053 978582461 556744775 803211993 437821651 542973492 321821646 423162245 609549133 863538177 73918089 480975676 944571130 972482704 161612395 736259862 623863739 937264629 147854194 374952878 328126086 859883350 258243470 876000450 826841018 947308044 713258251 874648691 53332470 551460602 772227947 900683673 301217231 380788805 553731583 784239391 667675622 835884894 937451171 974014760 181997444 882003443 742167882 770129811 758035692 847801131 256395683 666101002 460667874 568069998 295984130 507303861 819682885 862421509 345163257 632724671 300149709 823952023 173640621 451250225 9951464 454624937 31558463 395271003 86095805 319909390 527563010 825287827 51498390 474838876 861961429 928222184 919895651 927465320 691587433 752506666 452215149 589822405 409386728 727788380 430955594 660832064 655405063 872865694 957293571 991073606 802822446 965273918 231776415 897033314 385241540 496867765 581018223 793456381 635929723 767696904 678960399 966270247 696206400 731373240 818190154 933449114 282130135 809092942 518290490 959388047 946606410 980967501 253618270 705967828 586161329 780776333 79091505 892222865 886225825 962786414 794896569 825366373 319265879 484503672 565647475 636763275 687002865 703787966 742392203 792987067 727359314 805933486 499933343 831321601 387942790 512812417 632382653 841713634 658213170 884848676 424899841 976116073 30464320 270213750 276973377 783175021 56658903 241837013 788718031 975751579 878901890 904341874 616811006 719340530 711280906 810583618 735404228 925763269 898355148 972909674 275369045 548351885 793801985 920375498 945037694 976819265 158035059 717101889 554368010 690872923 206585740 682463284 143520031 820888913 352563516 951556834 348720293 480540212 229722201 644258122 221215407 333262887 524948196 712454613 951223946 987289882 278547176 328278254 125082665 992375007 659708202 975288370 565676465 621932449 599163030 857744795 582774919 726922108 994891044 998112488 19615067 820022455 1414278 767245295 604001274 824560264 714228629 726519694 947595689 993531422 508556085 950250863 356369595 707106818 648014266 751003167 665153206 695555268 333593463 615813322 638166663 818485502 611722408 913420359 233984593 421084196 138571440 488071381 514193032 750534770 333152483 719402858 768447550 929279884 971099677 977782702 483001440 689604924 159814103 270209476 174400067 485629198 619351887 776641100 133929662 462017637 892952592 923813135 342554178 973878942 777962542 815557956 998833480 999105967 821656797 850869926 728539942 955375133 153680654 719327580 798172073 940339326 855739126 941488188 841052885 853206319 990645135 996889450 366145489 626544648 911890308 992468982 591061281 735461596 410821179 586542847 381660997 833937273 233285057 661993221 377305033 731126777 1698157 724117525 993395918 998048163 758441596 933739504 825317310 884962409 130772928 948386993 350543471 976008399 808650948 912173596 679957001 693570294 44582957 819889477 517024267 738874158 3481911 181023565 202565400 738533562 168612773 678246183 531913717 725267127 855041937 919754130 157835293 559102235 924587494 955135558 204847341 543497518 579579183 897382710 336842472 639687481 430512803 740912101 717089284 735079717 381181298 428947587 253496534 422949034 814078401 997409299 125289562 573713451 246860528 303336432 168819677 450153975 579091499 641800560 837202438 940297730 403966322 539562265 140088224 187771906 624400282 814419547 504242212 656941107 62726914 808330755 43071044 204434536 202123442 541422026 606080052 661028452 724209373 766163528 64216083 645047591 567394359 683306781 408918615 442766397 356820282 582498639 433430890 476726982 167692556 289457543 792270935 793197396 959760008 992354829 147679620 195472296 215702212 475377851 376206855 887634135 847835865 898337066 672548799 918930540 658573338 803092733 221332161 533288662 728320313 890678785 289573136 407269424 775435212 960082266 143471461 225423751 550733637 599638520 48458391 49414436 245152752 833540138 231861934 719870200 347030912 912316450 16973367 381375857 279400414 391266823 103041222 281727164 645877997 715740545 555478112 766297219 852680694 917987107 751941993 771258871 773737002 799321694 400514493 607434174 437289564 531895529 167846570 551269566 184172724 680624838 492241323 781807508 546349214 712206018 927944502 956450562 255035598 634732596 513306639 996771686 564065877 998400521 390274108 415480541 933726365 964733555 761625551 872662940 331453124 566642172 984748563 988859575 69987825 888597234 820374072 854108575 891944501 973461890 274913401 678957867 480630838 538996469 593662456 945947875 404145910 405824153 42165517 742052523 971073305 984591072 964674386 986875178 754698142 979290985 224937505 984458956 410013999 469667798 889359240 996374111 88873117 921067920 968697228 994610675 750425351 846415065 691545455 781089474 925025314 952332263 721449793 761899192 289342558 370344167 988587809 995965130 902723279 970652207 871716576 925485194 969170562 994690178 687814363 760857151 871711710 873181172 711389888 907285892 180074383 444378182 949855394 950209544 970946173 989726375 25380877 921641039 815601233 838726577 954793211 988120616 42897273 819377910 860620427 876743065 695803765 721355023 170233130 485282829 318519316 922051593 882177269 891181788 227913259 270082215 514034269 654250701 595343876 668819253 375721981 891952130 576210629 673924142 617500120 709984059 877899862 935345892 126135570 266521197 882975943 895875595 922841878 998806944 145627412 269141032 689352572 885630155 890723876 946523960 995558515 995761680 631651161 982085131 824491996 897854861 148457769 175992546 433432844 502361035 88026280 801998026 844709571 970884185 692227187 732087207 678155399 810525711 874734264 897715583 190357254 402806500 466672755 993782172 673774784 974081045 533183054 931165314 708557924 962248226 293083508 582256471 760759847 977638955 840841051 992228243 691097186 727643745 855523835 935504211 390207672 605217717 279155621 825769513 302831167 529542911 607535819 753961372 434246508 595614451 724004951 773685798 217478609 399874399 653946773 810809717 720509689 982289583 983481380 999926116 20193051 137903519 281215737 719202464 432614307 631639984 101146556 885656732 835221862 853241562 150907403 362520887 917326201 980490286 351967033 844903421 129091230 259231296 582990988 751846120 370810012 445926441 152096778 631360693 499341590 786951231 271049837 637134080 548168979 802571070 662245588 737384262 892648641 957946723 787629989 813143184 582680063 852495695 998506265 999604652 570860265 895730528 477696288 757445056 320487467 626833963 216889060 727835831 724167726 946420170 515720500 571591704 970041254 982763633 309588520 359783363 934763167 990026559 969213883 971899949 839285101 972071779 599312561 720067852 56483431 226686966 179325037 282570228 379022295 449461686 38225353 257287442 801435386 878755904 8968349 38275003 817190358 873914037 854573081 941633051 223528189 266193688 680129768 742613583 942536981 947749427 113390673 850630712 297342109 967087940 826161462 997470303 60018490 323789977 262032919 695941164 51390136 52244052 25948285 322573090 808563365 831173362 523180719 657983603 334850674 766738202 177738411 817348964 895876954 919646870 377023526 910000169 597714493 796747695 467603147 929272008 894680888 983717201 979470191 994971972 359429596 378320488 52417223 197100171 649333494 672607511 406054876 519316838 617981685 959246782 948915731 951347051 799971697 875439192 278298772 827498837 831705668 885938754 690375171 976706048 669771848 937062725 673694046 686986039 322759488 738612142 866105587 897675958 543620247 747760420 42253784 318556728 930707791 951073563 823265457 857861966 998742297 999384916 78311420 428589260 427240276 509815096 455593657 677529598 36243142 868266223 90265571 952604922 994824449 998094451 116613641 430506435 636038355 876412975 932836255 979218799 149305412 835709302 552821104 988131196 617759388 773154440 565863181 888224994 252970013 929712213 163922128 428568065 471789780 499223469 127320254 514785643 655785937 734846383 97745791 416841535 860740928 962727886 497109767 885096883 509370712 946935425 157847805 748918326 554402402 979782497 21930638 876674159 678612385 728447683 55646777 491295993 752785671 785424230 949698849 998477820 485537654 593684004 475756892 857689608 692980990 858449200 517277787 994925996 672425837 960226304 363901061 472917038 701448736 865319056 821093793 863893773 914229255 968377122 848164564 878300434 337034789 797569418 772476789 825217095 196609029 451754669 98724210 312615642 286171571 332373284 852613724 975316588 863214818 963023195 970057349 992972680 323202179 333432419 72577381 666657937 136816376 929679617 176916314 193490278 135545054 821378724 609000901 991763809 951393182 988965329 887829074 990533756 593806341 827788306 101708808 136706382 978211357 991981104 941740169 993029245 661628137 974427003 851878637 918646206 978435661 986260052 462539361 953715778 213080594 381231801 328523761 706188904 627715795 901842008 285402326 569923340 781710476 953996849 13673624 579725937 368386872 791434064 239750396 497904381 777512642 970387840 85516810 869818500 945580887 978266918 485774102 774879813 678492991 808876149 529427540 969098337 115871001 195112867 48257343 70996799 698726270 896586713 411079368 631318663 221327334 460530491 469374700 722265952 137327904 761185400 474773082 618806964 671908934 824583026 855567827 922189942 759794861 927475854 734459224 994295995 857090947 932578100 782518599 864899853 125733012 286793655 240809998 670724111 429721071 455561277 116683756 826181321 255245 793781472 651494561 883251647 847549982 863077731 746927594 879635845 864376551 905464154 408587993 912671688 272456605 552490161 714464054 855679994 79281973 332225637 591961899 983881333 654374432 835975007 972253261 993652140 473914137 982460067 73337746 534026819 599534586 768596508 952464728 953195862 339195203 467576083 60616676 84822162 257150361 957230774 303635017 479121983 412488112 821685832 677301204 897390618 433689906 553757984 347239568 407344850 734385436 793899747 706042005 967743099 518201323 687759072 226964101 900880411 153296830 291346880 381615201 813492886 797116412 883925543 670423195 711778560 490078405 686681473 908261606 911096252 616123590 822547231 285083783 458008633 23713192 396402202 866214063 871021467 673883232 700233480 654376826 719387029 52920465 853746117 310137087 931803982 637548703 904152604 104189641 347699946 869136786 880746333 877994963 889501975 591729014 902980393 267701075 296439588 689661680 832457016 61285355 190820752 747540709 963382365 27789361 64213501 265595361 807518358 487668488 807390855 657095576 801931346 92752339 683608762 591217375 723761711 523440192 540346295 230271683 600300540 653841196 729784937 705039053 746110027 965145021 995481786 200197852 359677586 345480888 931680134 975034033 983056124 283308129 295343402 542849691 816197203 422517146 832168067 30902151 131877936 676696471 982719264 681217280 904880265 604768071 856523131 199741455 855211374 325659822 886343551 591969384 670518040 977962276 999754253 178256338 752721377 45748816 803484332 63282871 410122911 538278959 556225196 152074289 748989545 488848385 719216429 887084430 991509613 831614137 848225285 315696822 510096010 776042979 793939822 215858542 445991667 884399694 915446069 793516657 904880776 551818169 839976543 899543350 922060315 405642811 879555806 66514789 929669572 885592472 960678369 851613328 966244789 395858203 755395541 623255856 954584803 444980583 528560119 346253357 677398483 525524629 643259747 334205446 438232909 725371085 995456242 93410947 839371346 213649973 567198892 140589887 774467321 283357161 880532058 754916750 924230136 750456674 858282543 479794554 639102423 730427515 740251909 5889705 151049482 836763422 974995037 743812378 990535559 149939959 766678719 647049363 968009612 820169722 841315856 446168852 757723499 278537870 547674940 782047108 832398358 530486875 591103416 122293627 526631827 975504898 980932890 759609771 850244461 10194176 841539449 729624422 995481246 499104753 984484441 844782111 866730664 545463279 618571295 270654916 377216257 159825389 235713461 410619397 888674449 417375684 700952291 387580429 492389496 96910407 719713792 342580594 486667610 145147690 750486929 920832761 967665892 414347017 452244989 682483124 726230586 722441416 933574457 451731755 798207495 373348121 915504504 459247258 850247384 131348255 350026187 651127967 777061313 456747782 800734185 512401025 579905920 107677182 632156820 952356923 997738514 182507503 552489029 420279109 948901697 627658917 834464809 205044569 549293558 348910939 978062123 527939691 848063575 865304569 969961375 888082679 909297906 101986637 246340134 676566019 752589050 723533137 894670630 248896084 274271767 159097684 271520777 208614509 580000250 875573679 997629974 201320470 327310072 473617186 871661487 385075896 477573936 74213284 870210815 741425924 963921484 256186703 717702578 666502577 942380201 712109919 794031092 66954928 834548031 582788163 729796676 551987658 885123062 593215857 977376762 363349067 369732006 986028755 987145824 498736527 538342519 210642992 694872329 805018675 942653645 861825145 896065732 474900499 867751736 357202235 820987162 170982006 252563577 784228288 827351166 505211992 804047805 890567721 976287958 313221498 830324942 476522535 829268480 495368075 542149983 347885007 706353096 832107455 946088384 48600201 319780173 769499899 835474513 309058783 414153912 518343724 595557338 82870977 351556335 831304960 975297572 418294156 599469185 864993174 959698217 222305989 560028256 569544748 917941296 742855793 811960570 18355693 305503211 773551488 981848281 109029828 405307087 481077395 506723538 136208328 895208703 328814848 443760495 331687195 499478961 600197682 618452043 41363960 821584160 807792686 902726170 460457103 827107068 460565840 996683353 892316919 979835580 17139921 393168770 478996901 682587940 497996105 604192036 169038634 854289008 960525462 999216689 179694537 987882383 834739010 906577219 784624758 895547549 231706175 642392858 523490468 963802034 993849925 995774686 476656229 484833882 184139936 571517483 880427701 990753895 161414762 540205802 450315115 497951952 720138680 802428145 907731195 978268170 685869398 787442940 790850167 808918664 464092679 566690825 931431230 974643979 912030104 990463784 670746668 989309796 311899096 777573163 7505796 961072410 193456958 701630014 109079599 612542721 212243088 887970665 415264078 543010967 894453551 934466811 532807354 802173583 434961703 680848458 137672784 236743812 559978281 932322926 95208368 648427418 603772077 865601623 820948001 949350605 150765424 996847116 379514453 789538485 190918335 992864280 825697796 956142551 35652535 97507707 608400433 958820036 749237077 946112541 864789564 877068787 767953208 780366205 534817319 551885100 379983723 894816886 13249471 674412454 490082561 556847685 765704572 989302560 42157731 418709835 208340329 639790560 957137857 970819810 349362408 501172009 527648329 722625334 519828782 901922214 522008533 787524175 830469595 877483634 397767690 915714603 191051959 658479837 444519009 488684800 205709049 584853167 273366422 819890621 121208576 711525203 468927676 924263937 878760718 972410679 33993107 927928800 168360930 780040968 187513854 544564829 771388696 780077029 354415893 868387015 927220347 990055108 515465152 890906391 86111248 723982270 286547973 432050719 137654338 197885008 482560848 779045834 739963639 930645033 895201732 923813163 933387967 984930987 525405044 590035494 457110273 628562896 985367776 994642395 168989299 342904688 439341774 748904166 925587892 939123390 260443120 466462562 537065394 689660309 495661302 802299812 618404914 703264340 373206342 571847656 257665246 549559628 284090383 705339207 143754047 964010214 415428704 480556716 280472968 313795334 70235252 733457232 64549652 609172843 160633126 821709248 284630114 528315779 210607346 260482281 610404868 879488523 151402290 813669367 608561577 936621925 427670626 927858018 200629389 649667632 880263623 986684622 108014667 571402744 7147285 827201801 627440745 948945842 537271522 597177420 112376286 682580327 157530352 523970653 461467734 753336352 357056416 787320537 716058918 812343513 607362980 673882977 399449109 601295237 255687836 647553571 253821846 783103492 978142567 991531771 958923901 999048869 358068995 873965690 250951561 315002550 458308110 953866359 208030541 744018255 709197036 762561840 504817760 901601360 699080179 862520288 676169465 996896307 973224840 991352380 17344641 904238281 782087506 884645487 841353520 932583870 101332749 608162016 714459796 988124656 873588219 975040628 756702449 783834681 561227519 694429715 532566626 634591794 529641405 772180555 830426297 873288049 536542846 643737499 520858291 704671504 660004123 731757008 952679780 977650725 463762024 864303378 4572667 122593728 335082466 350926470 571125927 974762869 34813433 432816462 588784226 694957549 990384522 990798318 160685882 885802754 792753695 827025201 93710336 296612297 599343703 898852804 629120103 681296615 389065306 936302136 981062625 987261837 821440313 932471655 124282575 865576336 451104473 763641158 455967558 503251180 708593447 727540923 865843333 964135174 389975943 466208828 476539565 817256830 773727706 895870667 822725804 898022446 486158590 937634663 680212849 935782424 880847584 980348114 31700507 721813532 201731546 514630598 128516320 743488354 807398748 907705010 316025975 816786273 813987447 829670197 694088979 987731817 658853003 860794294 713215600 863768084 313413167 441668228 979332177 991692002 477995723 484682618 58140701 929090273 278909634 860242311 375965426 777746190 524460760 529763469 778583608 927940095 501386531 513684704 178564413 364410513 224708465 244311723 822341320 863730250 755033174 998445781 859305419 872202752 199101007 874055826 341710123 342113535 397323505 457589539 960449391 964227502 136612052 992144939 530200957 710895424 215158756 857584816 928337559 928506506 30900572 926368134 321120442 943189475 568752960 898217514 673431706 879124418 607090269 809737897 834270876 988804270 47989594 898681019 439973239 892284530 984706374 996468298 442600013 585217584 79169767 195655357 328567935 460515158 822664969 988211729 742970864 789791858 874738675 956837895 703429896 928618842 309298512 699682160 203077018 899968372 422807494 532446665 312415936 466671530 474180327 828273388 890994573 938461059 919503543 955029803 685723120 789294481 949919434 991713146 565801468 818399874 680837156 733188886 702413008 791049913 635650994 887506301 681594952 892854005 562723906 703636780 473475248 960549683 164006404 498815764 10587795 853195098 559179830 667528589 84068769 603637729 83534667 315800549 433128802 949130899 900526857 997040782 606305439 700685170 519703653 989751689 268534412 835545681 707404400 951530848 798195861 958045662 573370760 969967241 560259063 603937881 14276104 311881089 213732866 709946850 435149785 960359585 10293857 768353536 239162450 557783851 168038572 955836647 94159189 127618710 771000687 819962139 553071005 940672051 950155813 994255843 484719208 660278780 551074619 757044286 745395823 795249219 29792872 526744120 465132469 743476390 355916383 387807711 140257710 215352035 117406993 801840843 801940387 836085441 794670530 966915368 408008063 628670032 662397294 851883165 136724859 989551287 968405256 986776555 818989624 834016814 117054166 656949983 496087317 546521363 150324258 819407291 814222123 839518707 673716248 785180858 222329914 230799169 160791304 228707707 324605571 694033694 310632713 782066640 869074257 920740794 57608657 193296185 855438952 881004995 229163741 744228015 53263489 597073761 973081158 979691484 865456144 880090612 49478610 808922047 328344652 367376005 680862039 700856605 227336560 373781234 999092480 999313885 628330100 700183301 384505688 901399596 297783090 654262930 153873091 312442142 277617160 866054905 426463619 511848712 972776211 996826877 72609652 869722851 30034030 619860670 147057759 352295553 18406398 325630678 709690359 919323410 776846306 791644099 916550679 986670030 117530864 159750280 293773767 475364403 575752430 835034021 359688326 810981930 138526129 474831637 392963037 934714366 166925551 287455135 49136647 764928155 244612141 316787832 165021492 398556803 171178592 582565156 892297729 960214572 221030205 924885921 699924083 843588024 873247646 985969265 455941659 667341353 655709899 865334085 565041239 913042477 986334478 994395274 648385343 904643097 233411396 305441255 706897785 808554583 906970782 928501799 93678496 741243296 587120634 587397551 173942728 461495619 270960281 303188445 102372449 194022953 105886575 906786272 959274275 989953114 552462835 748564451 177887016 488154181 468068405 971419151 327807781 564129669 575658989 641400023 916018450 997624539 50209763 569472178 152792979 494394921 551417216 669839409 540100951 877694617 215400552 215807205 326126111 471818575 431500133 470805612 806938152 992957045 398307392 978355423 97986811 708642413 654394771 945801726 559209263 736673661 981930992 991719206 849684814 911555651 84365994 590982527 46165187 714432646 207978696 438611350 311033621 530987085 307239931 606270428 494282309 749883150 597267983 637987828 315007029 864958554 641171342 996784113 959110322 996347571 948414559 997905943 402245382 665372803 316302095 382601204 622623290 664811575 672941342 963572348 223941217 476472544 334773426 525063665 867865254 916833707 765501881 956512895 686210 2986665 197554799 221006685 774477314 969824380 170777098 308423337 521548133 675357192 649207410 859742490 396288349 790060509 264959300 656444162 869435344 882316570 671576918 736619751 660107574 663151955 62330771 178651804 74553437 126245253 801578866 997943236 99465288 788554455 367299244 861453866 44461128 267972688 628265999 948506362 806228028 904029899 922026919 935998645 934287245 943517522 10113079 180710585 173843583 904597374 670053009 745532215 599427424 729253808 274986164 614889881 126344519 606207899 889778225 938846517 622518505 908418120 514517243 593604801 434376147 569372333 388879635 750502598 756188182 815167144 449522184 710476464 87021870 708260513 384994785 546221640 845278958 903024291 959617764 998584881 48470142 106996420 242117657 514036724 719046428 990655148 241458795 356277237 441487867 449653082 147082369 295725398 156946003 213251140 662971905 704156188 548757666 867741996 257086316 312420941 540249951 686136771 919786825 994030415 645526930 952761593 19890565 527619209 444111139 953872873 197013640 603479268 331593867 643385969 165090390 883789759 92510935 584095233 62718729 589066346 250597770 694895694 988597134 995020280 998327138 999024721 368040640 998793597 697342458 790553351 493983442 610816131 810804944 866532363 109785445 315899540 740400868 844949947 982187320 998594793 986816930 995075127 440321054 839894568 515937264 757017232 686893011 837949217 39717978 666567244 456645776 884953027 249670820 313853355 60544709 62755341 571429524 812073303 193842335 778058337 852488190 991014171 804147179 905137255 969915349 970798177 244964467 661545983 972094615 978183839 322200089 795014036 158207382 286266630 480899545 901395730 862087167 897566132 531877675 800044356 118928137 647809009 948960539 973634736 861087748 951607345 12450023 580054507 374144999 937762129 625736296 862893591 858727702 965942933 909214696 997465866 795806117 800885974 545233532 596634855 190518745 536376119 447195239 868441507 133935204 356818605 959463620 983926018 861296844 966009136 353734191 949095868 324374774 709757789 416688939 662473608 435728426 836456656 723595917 817417088 103313008 745514774 899124006 933104534 458202629 758886181 203395493 580266356 556928383 635128705 880387539 979421095 996829481 997628804 104780731 157299780 506907613 943349485 747700598 960632030 802907582 834726982 217987360 926703689 929891472 971630513 628167713 716134475 997708604 999786094 963870432 972392459 151391960 286920920 297972180 577204256 26486788 168201856 117148095 722037334 526470241 764338723 788381252 971758586 354123338 606721557 926988363 931751585 812367431 943833986 871619283 911247859 31939393 440005590 963774834 987894593 502197571 522986318 397386458 965200079 274932377 853519481 816501795 994086772 574244446 740066185 455617585 847575070 810524966 962790309 304751900 365431936 156147146 863813772 694967424 719425529 559574012 893842981 19554857 458972924 998691974 999014860 158018017 896068274 650930600 920742532 538304009 928450881 53926214 709024639 659996115 907442534 692599910 953488952 957500613 958479698 88978497 619322717 867099682 901382488 435899008 591939295 47246456 855257091 485956590 555429424 542195306 757451736 325378414 722835348 790317477 924963362 850116058 985521295 842577494 963508987 39907171 677325055 582857454 947159115 20986273 783959650 288728347 735490125 319777786 898581496 764232835 910973296 194761855 294078203 584972624 709391022 131447095 405286452 892918226 952704130 515169307 986637138 483173966 561609885 978063499 980515313 909419924 947173527 102227051 290397116 217403579 503299099 564043721 895616934 398979669 815648989 628026729 771513490 329524441 770008479 518489254 857641692 87108864 132476593 248388620 603034027 704315998 976320209 987164944 994508772 878388371 885800504 491385760 844622264 688063161 716177415 149446390 642899536 278953496 675041587 841427285 959156318 596216305 856803247 871908328 929150220 838744513 861525773 873949098 935482502 236608764 438746239 448416614 594495143 458407605 706191985 315898056 861735016 526266123 932836336 118423697 328440448 460502761 693122988 70177078 356151256 360849868 781674461 522245348 810973970 470182158 526855850 803023789 902913585 339840788 912253980 70422690 102059793 528197007 590362385 337895750 948572615 536381372 839600089 457613249 672639648 346346984 710555945 422044838 533443281 314225122 391038418 695737795 792709184 277370231 578266662 460551006 496416060 867869474 943979400 416405822 535400832 155763271 722238743 16637448 559723828 216472410 792161465 531503730 865638499 779536905 959251031 43356685 83564278 983378066 999696882 658771742 757321568 570314032 845087459 124136746 852412368 246971912 301068853 916407428 997900929 922159112 924847991 574123089 724977563 139976002 692351197 616323551 879538801 373384762 584891402 153553733 804613265 771574135 880690018 64114241 340653601 306111558 657613126 928443205 987025097 250915522 514398585 922679759 931321397 447497511 497137754 792048771 894925069 466417023 753689364 381192519 539219456 686066786 760594838 290410712 752804774 605983941 836090394 663645290 963309117 957595904 997127224 808960442 995412180 286538522 766103354 359969262 597690115 9518776 141610789 699672086 726201301 599893664 725245131 103001786 281487345 63014634 468370429 654763540 704426359 338393625 711751733 274342412 747854674 706233917 751338221 298863387 817848210 387280490 818890044 513727220 686578953 690057651 878970343 724110274 802356173 230465793 720420103 20278031 426678373 922002429 955017212 36855005 971652618 712204905 783918707 701690161 995358071 188631164 477370346 990001459 998376929 192455147 953463615 527610227 805453534 47739420 405293166 374829184 519597405 517763366 625521454 391483672 793424549 505087169 594951540 705998008 802642901 742235153 867673798 229426589 458056142 110669253 578690531 596619723 951835563 588146831 754187742 644669254 838805798 559633620 769324668 164019471 239492690 841201424 949873936 758215030 846434618 998115686 999172554 247805484 385282627 568716313 737518669 894653883 933477698 641880071 664166159 634153396 677872845 384052364 929176041 832366007 839484662 12229621 345567183 927432198 996312775 481248020 559244939 681880585 863005612 345372020 565213572 686983215 939245238 169764143 425390553 744072828 750780610 548299213 722578720 950398486 997020064 744861447 988858517 835478290 910858647 797001450 929601015 957623477 997793964 395013226 836484302 714077401 971554047 557194150 584286886 953335093 979701288 440759345 636389577 806704190 857593443 751152878 933868589 466373717 899390063 133683861 917396040 694381709 843715322 345583050 416127950 55590612 803768544 728152943 919494729 418247574 542415086 157007381 484643039 418930977 590260603 824271748 981220333 614834933 706495980 987698141 999684409 899158917 916757577 710775532 998058147 510038338 806770163 114352858 387418404 809104688 906715481 243448223 296915533 453879392 933936635 334022923 917669683 705373259 754769756 884064765 923187696 503100895 744983147 246053095 795555363 534872816 696412265 338103929 352955706 893829948 938549583 268864003 678144810 371166890 403701213 887756933 938757201 281970303 372575434 989288870 999922740 847475466 896398188 704956504 736060730 377956002 507394853 112554228 607434542 857602578 993243481 231028529 725134478 728815487 993319721 115790571 806292074 153631728 516022809 916386857 932416399 563380622 567238124 224175242 265950792 449778130 528764439 223964612 939128482 721197365 931945833 105822353 648735661 310488191 357187665 724417964 988377675 676836897 770832068 810457332 933914326 101353236 457334404 502625336 919043408 396696501 772978406 467111343 965043148 269705031 456804941 578931508 580073105 549054107 589549738 643533059 870209800 117292605 740222486 441113876 855999836 341273014 722383787 882134824 977193684 665429575 897960132 668344737 971477281 900011010 990424455 120260307 694953846 754564704 763708086 925859511 940466164 547732121 604167823 936589904 960404359 913930079 947921529 195209107 467584479 459213702 673180811 391652831 804512721 509258003 973874347 216925782 516781718 967634198 994684622 647432402 996404947 986504333 992612266 177421743 953541494 358637276 556910784 772870134 795728654 103265936 394909535 946360170 992685749 676196115 906518073 395243510 409336155 847111659 990866694 729864034 927749516 499008316 607852039 541086130 994994956 193003962 546314236 164669765 354994850 75496043 981983882 230704457 903816010 252411259 545647655 122908330 452064059 748622579 780123967 30436181 137358314 455482710 730674307 851408829 860900019 835617373 857263853 738647935 917858242 303591115 578890502 572698052 853367422 467333407 528103336 946326256 969005508 594016215 945657259 928646821 966000583 808521687 948583159 314926925 648291029 287191968 499892851 247397328 458733963 509974712 901759240 299641163 717684159 783419669 844725307 524745955 664796850 707128508 772292519 743710668 959578792 189420162 862148260 805600293 975110619 745600210 934732084 460786619 962946288 268952635 448779526 123639567 875505531 159169092 448305692 507424459 752497227 353417717 732554437 895130978 919082611 622813607 745849222 182485085 560873778 895689447 908506861 634587776 937067710 4661670 640145181 791254500 839963769 100464807 585532087 938551532 980967719 255326259 532502840 927754509 986170784 453894008 528020081 717338308 896613093 512030393 559208252 437428550 808622139 629485827 845185824 691377468 786362933 710009473 898395524 862771571 946652269 745772889 868690120 35833380 718551736 737931742 756241650 506095852 921505280 279728383 287142548 163932349 258132491 983924341 999468352 295800515 659908725 135381328 598677614 86194331 835405607 678370247 929331454 923439406 955892581 346566818 445166090 184846113 490206507 577230959 876220741 444056830 938737182 708799273 887358793 85848922 827972082 426418530 813780354 1566515 549742295 848951080 910155999 186916914 539216442 197765511 504698551 621201464 985334772 930362681 943956025 562168167 654086404 13915143 749812859 712678258 746721685 259819279 933220624 984340049 997283921 525781678 654592197 795338852 890748558 794725785 915837644 853623079 948381777 407233083 983627094 345259345 582896217 60731061 993168397 367508924 647673698 436322180 838528711 964138156 977818656 841846480 920920571 754863142 964563597 581579058 953519091 257093041 427513507 286607481 608992979 292149504 330352189 378686550 745094172 51587885 750793808 732990327 930799052 731147493 938460028 815823638 887747280 801480485 863907645 322105152 916476814 897936408 975310223 275189255 993634499 913617493 934231770 155747824 972225521 500078064 841222848 351124527 501424962 779953785 936946707 589285113 958506819 817516916 883704711 928371689 963591956 981474074 983060734 943583767 949780994 633276875 710336318 901125961 904765427 344556704 364994624 284903736 541200165 325572565 523952477 292175004 626535349 426985463 607982260 29205524 548896233 542134659 652249407 296933486 300015830 215573936 388898999 570210279 747372237 853611997 914307144 129214796 949648549 988448369 990794319 329244580 800320788 63155928 627476873 811220966 838993292 989889476 990950951 790949604 991859852 295153780 617880631 938797911 982924075 932619808 947887914 416305527 713519561 225922267 939426571 88742728 868040263 697909469 881171842 414350293 854942563 922734427 969545931 961081173 995999942 666883845 720832448 482538180 953900863 243746656 470988863 446788571 906683649 897666268 910080031 741236290 993253352 525126498 531001311 945909581 956257966 473958000 634023009 929482261 993789418 284960822 477220015 449754231 699417901 937235153 956601499 562715113 978695416 491671257 765023115 130326846 173667373 118726586 719769753 64225176 410850278 848397515 910215420 674471272 793918808 598824292 859220041 668375012 754301055 744942007 857633319 276447099 346868777 468533840 529632849 490942830 665640304 848741418 862827997 438987414 695641723 451760587 703960302 412849161 821268863 44983083 836589924 106117217 499317293 49309292 428399445 519670544 640769155 184461440 575745473 126177792 748082265 984861462 988906734 144870724 357267002 416212078 539086441 488682540 574669123 391000420 599591801 219935140 530580429 152713584 874384949 813131983 825590545 796811633 816945788 759807848 890260004 510219632 946559907 24239680 662685182 926202790 960017661 176763600 946478409 722530004 861651448 280283659 474081620 401062821 606985252 530955325 883713722 900332879 909376782 173952597 812623386 679631967 931377294 574281533 802348187 36234468 484434657 395519147 577526981 282431829 704260201 245070350 702190988 743187766 908578014 931704843 933128331 333925112 978931037 553161005 920867078 504748112 569062977 244599895 895087428 314058327 581621424 70993971 560884788 972849354 994612375 194104862 423458037 696991848 925418723 166500301 536635836 6702865 589964189 127543524 811404243 884967895 992377446 383125244 956028890 301673369 744755035 132362352 697177420 154703749 301421896 919970975 952370786 644316693 685750003 614320598 700537931 899785789 974950450 203428562 676745967 607381878 608464184 660287072 888429321 130289729 224100444 973439623 985099430 757701896 781942636 566843914 790919181 882161430 889667462 919100190 997324592 713436428 875671341 885568729 907497500 624567117 697510744 272707005 729713328 719447358 863797220 82708932 793011968 99404805 572126084 129148496 193798060 263278946 801467821 946382242 987421053 590794979 602960281 412920288 611893885 966444588 980564556 315036049 506886254 588514307 752052072 308245711 624074966 251413122 407320697 57335837 58167218 352476170 960021889 801133985 984113328 601745754 829230178 437811083 713342480 213139715 317091255 88533213 527525937 994765094 994778429 536005513 852340670 577297933 688607091 222827369 781324849 682512756 795136714 542189843 651867502 97211926 518175584 838334510 916394095 949482499 967206512 349914153 805283388 149224450 797752235 90378257 957786910 482636207 528238835 737302638 996419722 857318478 998658288 161500972 578156123 394874960 889877094 453650057 868472400 414586870 605888066 885010887 938919263 266525508 769074992 880867911 966565877 71304060 785671673 591487368 887162860 982122106 985367534 847645956 861221231 867500493 876906834 499275876 876902643 231123800 526916924 513458874 713646888 712117137 796687984 817906771 844313890 487967400 624870779 706681680 871700663 462412730 636617491 833890942 866671462 535782847 585134740 620551710 656399481 817725235 977344713 352365436 622191702 288746020 674057530 932119312 945012521 513821601 984389382 352767866 766741828 88502689 258841059 234310683 390177070 812493470 999096288 706135642 886949262 692253819 741018637 446375993 534982808 793928179 850559895 734478537 981767245 883186504 971359400 834023854 905766860 40632160 539787903 784416542 929367020 593485122 942047473 864795281 985731478 663850523 878809102 646272929 884218502 313425645 945259939 839732585 984142060 648308307 883170078 438955047 620049296 711244345 861886984 440159116 791620670 84791626 165172078 877608569 970854051 131709621 572050523 634255820 892287218 57658867 471039567 9176304 231942174 688234119 856918925 189173145 777000333 162029303 370567609 182753412 404706043 771858176 781575087 377341578 697980008 688395873 738361921 274049980 662645461 382023364 412215825 293889636 580312042 482593333 648102729 563544116 573582130 395071208 580963747 842498485 949562575 521854229 960829820 803246862 814080421 5012961 196906584 235199094 541973168 582083392 929871052 562229670 792047133 601598368 655476763 673900321 860857541 326253931 896193631 452844735 652101103 195774172 675389859 285805794 547071154 3605936 369736690 554386038 748197705 813426298 982934747 912605341 922515197 662655902 676365884 996914411 997252905 72771273 715598209 724135439 874256061 325921128 880990512 334910705 405407389 341080001 620424430 863007073 956145947 137639513 648199320 33491052 467535982 135828971 844977584 410398661 788186633 641287927 759611460 10386435 681635051 767129078 795957148 580605998 910389651 391432210 857240674 98158904 726133467 934669612 976660389 894582623 972461302 805714248 889715036 49976521 563256860 306561477 666691355 182261678 622110174 662832004 946934043 646065 996483129 615370672 799746631 133259868 668293907 452771228 760006191 780567166 920592529 809631556 907677035 732728894 963267216 836890016 947537734 658254486 756217292 997448917 999174947 947560127 987142487 299734703 901963151 552258834 959970371 511657402 952962401 469900264 803795548 841816862 986713752 330275430 964096156 250194460 998535825 615623545 835764435 428375185 753139314 238813429 936893719 55363168 157111518 869170634 880676304 221644671 450273029 380156081 864423174 718899736 899207987 862079033 890678450 145936818 898975339 663320963 837572479 661389468 722104376 172429021 610724442 567376606 990437165 629849677 725869820 870432218 898572212 960567520 964842677 970488892 976324835 698788616 710648647 784642905 934714277 100412632 630293209 391807092 590988455 676206663 984375497 473297179 477369007 45277524 151131504 50266547 738638964 353419766 839453325 614904982 818060940 535190375 559179287 488496224 893265007 321260503 509520443 919197226 958128702 512391075 642533361 956477950 972658784 366219670 766408239 259982292 579274659 157835472 471361325 11756571 172460367 369922884 827739078 822542430 867070949 434736489 475042907 300347606 635465381 954768534 971851279 706966870 838453411 265803307 347165835 536147683 846940625 833256338 839693871 142421992 668580388 641571931 880509450 236615071 633657361 523671892 926996491 958863397 964065855 681684912 696680266 799952094 805979441 786157530 959571428 425873579 711917448 173268348 175204041 704348227 789408275 957304914 993397220 990349332 998557637 603401204 624172544 183520084 753860330 516201924 756815716 131981806 780745552 181225499 429039835 524053378 685762441 14119184 851633513 409394674 482822018 126608421 408415715 218895669 644120381 529287081 664012805 399164870 671038292 756969823 821080280 781432204 903745445 721349614 870578389 903960457 910735014 528843 109641102 107991088 206076479 281988668 550049760 943559905 944727259 22814253 883857644 903914664 916598851 447234982 641418511 178814452 688610474 625694150 850889106 502621195 997896243 711639772 974465785 789102807 932444580 980303786 990010716 141317423 248923386 406900380 697373258 968937132 975683626 982309764 999911969 895820941 955533140 341446089 826566182 340941047 845397390 649500211 820424248 963337922 978632026 218400090 303229025 541678028 921346389 796057512 882254801 686935731 886202432 383936905 579616519 969481918 994268000 455805794 545089961 205430761 918631922 149534632 861621260 891195876 894221479 705730318 835269364 122699023 639364268 101499475 521833705 763763169 951467047 416922686 736819766 751756538 849998078 834143772 976778553 38059077 596082135 315568690 802541754 469555204 813011953 212076343 415119678 238293155 882818582 981455090 992971233 145547938 749607801 515357187 836392861 615316696 986156928 579089214 871077125 858233807 895044908 789489089 849867513 139314942 678551320 11532061 618514806 600754027 678410180 225508279 477586775 718309431 917953826 122929538 816721842 156246040 952900363 569427152 737759593 753411324 838077949 554714257 853849564 719093614 804887977 126458814 977894856 497719100 748113476 198198402 506823803 465736311 759721144 372220793 875452013 899073738 912855235 446772696 753324686 388441853 524245200 632503368 825009258 104386610 203022062 390867263 923415321 175633997 193771034 466856323 682383681 516668921 975307624 659901661 859085317 413251466 907805028 609790125 946013726 907724673 994578797 54513676 394592801 624917292 733787659 135814142 698756473 249553882 923671233 299773294 480270190 665255063 765274439 213802056 247862289 112865780 550942493 772373859 957087032 509509119 983488232 279773110 989420371 584891396 706735617 448509804 986980423 712879201 865571987 946784704 999953505 184161619 882001954 59229393 306245660 527169450 892906228 323536287 988452383 849251153 859808713 539774617 693570931 502097891 578901919 295843897 393928509 496691731 858459264 182314571 678055424 420272765 456074160 966946539 979199004 339044557 583907445 537327455 632690593 337537833 579382600 916733294 951072748 202916864 510382680 627211313 982122269 52637311 455985928 232860865 725378876 954202344 955477044 519182811 851432860 594178070 878205360 624740542 775761737 951892125 953372761 591117415 808721320 449029339 703898362 981528584 988311288 384441805 800759161 682769216 732334053 996686731 999039160 330623609 854454034 567786568 795889460 100910166 185740817 573126296 585032071 12608693 635036229 754102354 858223839 840577951 909305591 785271056 933204985 383479828 430306995 412780155 731592593 604609934 911067213 437208149 633109371 328976549 930679882 687111621 823611583 319670214 895174639 518201419 920476910 925612326 972697825 809197329 973219698 843788211 902777914 693779742 747055379 446072226 560837957 721952016 750874508 215735949 789791860 610134467 670744260 331352413 339081276 321455142 952854701 559104768 577516784 326465301 654365259 634795579 811298374 585414983 653535699 693417881 850663749 508576362 951737024 102584910 898338859 479733697 759392977 20643588 249431779 613187507 932564279 607893690 975333962 387823515 634786161 777344801 980130688 111083331 837994742 877099049 929256950 374091217 849904858 657024316 729974259 20527469 887666111 670418113 965050261 438596231 645778326 507722050 688914705 959901342 971310196 756915737 917794601 379103874 891557619 767627867 836114231 921848683 949352022 211658263 305722166 146821528 381496815 54665643 480798794 744946354 907083112 528798165 594341319 766647721 982597133 852791976 880773236 772178496 925977215 590583842 789084362 648654987 933557381 808996087 849551164 99330437 548328709 740966602 933051634 512790903 620984588 719806606 772334169 884374967 982480487 319827295 996371024 502862652 861912327 314441017 593062344 230391800 753252353 520336751 838627692 713889406 800289512 191744555 832799195 666826930 765982821 685307451 909860433 822618540 918306407 6587477 134668538 897053431 933936265 470902536 967390250 902154188 902492294 960743927 967993656 564354497 955181036 607195893 760167002 443177882 745701747 447412449 929718982 52474493 558769896 556991297 900893321 577018900 927645922 140932176 404861491 957485318 962040140 230737803 819441800 324841280 404987484 902598485 949940414 613518636 801917337 341875061 653750028 881328874 918511853 244807186 805077840 781298871 796348140 706763493 922855977 58785228 667631987 411940395 728582932 784519939 975230199 378077910 482704836 457914626 953560128 261274422 883820364 594780960 812538208 64782607 821070503 807294885 924919532 167436137 430232873 759118603 899540828 696479161 955037069 576310607 693464657 35152682 361887843 412787631 519032863 137385629 947735322 891296308 920845914 557463526 854277607 506613853 641442322 455667594 484786450 132879078 166042493 210765427 925277356 423691922 590450257 713174308 926760626 401026990 933506548 104057991 898056888 378350929 615699355 184429253 975184935 637672551 807754117 963280600 965958137 126661659 396240694 443881261 792527372 649522995 779517049 861654196 961420380 321370323 798632740 942999936 998461745 720137233 844943991 541420912 620122778 733812943 797834485 95992424 899308090 455331077 833117800 358039604 591715546 70898799 416412538 105147449 545052647 445649052 967670626 913658885 992751082 592477158 690411062 829390463 914769543 200772419 469302988 274765861 604620074 626826211 813281073 804912720 955090787 111048252 137997939 257499114 895513130 149823185 992224711 732076582 952125512 630731667 730144813 85114905 527308972 93665335 314936897 919716166 922075076 115529574 332322626 538093642 635607545 427061308 988749025 215670234 301825265 908517525 921328630 498829752 538723579 250617834 867797988 914396501 932034737 767811324 843382094 176526630 503458235 686454726 995945649 223657407 831914458 764511666 811682851 314474279 542939482 20105447 173245016 601341118 980647767 209002998 835021311 108523118 550090390 891568214 994992998 753582995 951007063 119470129 927577527 876237811 881272467 867846 256056148 329049527 427567990 721371394 958329152 798238403 937900338 167844905 423455586 76126542 894275916 674503449 957569557 621884134 626641595 720380427 764595041 562706317 974184007 619891887 781258870 896143517 926479042 910219671 928071126 268208557 608939297 235317028 352297035 114556488 742073924 102438465 395764891 757000624 820029407 746180634 899474555 91048130 599694298 387706679 454855425 720275241 983615899 623701886 890263499 688400411 847909550 264960428 371215852 251850816 477605097 753210901 793208821 590092918 769336223 771837991 944908778 165371741 836585397 383019675 605989823 896970428 931899607 685839895 979795010 339004686 562008097 572628817 616233606 561493712 962662033 255439778 915399203 42529296 878060612 794214296 875003247 51945809 162722195 213777868 634145948 119950786 613986060 181936168 276673037 106076085 914793783 279330665 945437991 780438250 978540103 814938463 986912893 98095993 125587137 134986063 597110933 976044335 981639915 23531003 989451637 731205174 731362221 609004083 676120217 826459057 871246122 498884115 923712073 190571175 366362670 12921894 439506416 805003285 852648543 677841872 794025437 569745735 709853319 623585477 868226317 643986886 833757577 839369172 963881652 461121248 475479728 512412264 654873548 927596632 938017740 185734663 643139739 852146043 916394149 204736057 508917133 622694976 803184227 824443822 838401465 136605103 691864923 32106183 72491970 97061671 715496608 238588471 670685057 122788619 535409347 314462923 425318846 12975569 709356144 718067942 899756256 590415843 936056810 407307215 672013833 166718919 764637500 463019478 568400533 350117413 722491860 411925099 598404760 117386740 815342452 566514868 634265916 550679360 605167180 976594331 983346187 532163699 537949935 822919452 998015948 707699846 769348128 975459288 976086679 190202614 526229961 684423886 762578917 705698805 899247882 102236489 949632462 836977295 861897647 441134673 686163142 408979121 743242878 610967442 998053972 226718024 789742600 385327921 992856516 593557732 795708068 47087661 484363958 726243540 800352327 119799094 796046748 515985269 851310650 965994763 997167435 363453647 533857510 101477897 508731845 380265853 697175374 323133718 469674286 298881286 757773208 624803503 836291029 423722293 986627030 360939273 764567326 851693959 928023955 190314134 473439101 255068539 302860570 74540686 173000063 325220634 431046304 524513518 655897987 982015000 998095322 739982095 974614724 932862579 940165079 447893785 608569679 711454694 897891530 280799746 898501401 480068628 814685044 2109291 22275240 453040407 609166767 862557283 899618774 803825608 814874648 14746662 317268744 276300022 903423709 406733017 886819543 432428085 825198467 576844650 813617506 874609242 991280908 105655146 949460990 410084915 658525249 162011135 433838410 363403065 701478664 762943729 815915492 718406550 799434251 709116866 925434822 838012384 939727516 178520784 948912492 772341108 920200210 506462959 820743684 75404300 751273929 406518063 769563406 994293810 994516419 452695858 860303711 994432874 999121935 421612677 962644251 952438342 968254834 755839788 874540574 98302757 447497372 237817210 699805436 608011774 612397049 743726433 968567717 682148358 789454267 231691943 636712542 94362223 581346046 811320707 917517579 673470312 771558922 175767800 592212292 730783362 876851373 846567011 948855462 340926521 658522042 185323055 239556140 973503551 974657405 394415874 399726384 775734660 992197405 980316534 996005847 116439969 143368160 919308649 977307467 501018194 981152035 594567278 937577868 388254897 496231806 630181446 655166552 505541135 751713545 87599984 264898179 519022012 753100169 274597733 954100423 488092769 595438421 516615617 635939809 435986579 986595380 364971580 907372578 538842083 767898861 1797695 505338453 303183331 457376840 289866835 328007413 77716419 551873967 629916513 900433182 346827433 488100985 458003990 913497364 222873187 561410080 319696910 677813334 861033065 878659504 992975217 998336018 293817726 410706027 762755534 918942679 974236731 986471940 185799348 994103090 100676287 302900938 225182894 539059014 745951325 970103538 721566632 983295325 894984979 980560360 142206718 615488981 220799199 926645298 69310757 330533583 274115113 995471248 509119119 565131670 225590472 257189657 25276514 530595867 375349570 786256496 672185478 701178715 837069133 861237666 597064866 697945209 347023839 455022136 862111799 917845607 333204126 503284807 173134978 939600958 92112196 681134893 186955334 208211986 652998187 980851450 975280828 988336209 187454032 324495558 3366871 930318839 862428657 907526374 675881998 953744176 200003301 554599784 658579548 816440603 166826313 803174610 173300600 891583310 753458539 851346209 17978059 539393405 98891441 432331258 605327583 825366680 888547916 915749615 133633265 938523564 427038507 428977845 481314424 658187795 566230173 727304121 410153322 698371262 488242914 585721059 452205323 856814249 815341404 913040695 835957729 960842896 906385151 993710678 867628100 905944076 514726252 714286552 634731816 870692751 238079770 741051812 406972239 695903625 49835889 512404893 474291252 940730929 994886060 998052041 481788084 811296891 369458816 469262669 858122611 970589734 307453383 381712741 226262327 564545240 442026908 589677193 374772112 884960458 527810475 873129706 63408708 276997652 967773037 980786657 205609144 433549017 741901255 787897428 458465241 862917405 653492721 760889564 152503635 265596814 530274397 579734031 8119304 219955703 677784078 891962644 233166431 944164205 992785552 994695943 961457144 982970068 354808233 888925274 662043580 716004666 118138333 891517820 498812744 699074358 199250567 717818864 816846124 860272357 941241142 996257069 363425056 619810710 407663748 813762773 873314424 932369302 88982192 691547457 381087014 840694603 696715173 836118254 430594402 895770723 805324160 971981113 16459999 439969923 71552539 437585030 288516487 322030404 607473680 999114840 334055998 744472100 622861588 889854082 690269239 713849318 545689702 586480799 363910517 697750164 380953153 521625169 643816344 800449631 59281895 559764188 56826149 490234451 799604443 886775056 290928077 298349861 509057600 509741304 329727676 461480512 746205030 850019394 22060639 738583995 379287386 541715276 344038681 529380020 543088208 703067053 883980217 979288280 327433679 444103505 662122538 883993742 493191988 968500834 316864662 447566736 41898146 139198663 992678397 995561961 181964766 589161896 146579821 250174408 285214169 610859075 924268381 931018523 573913014 866034032 594937082 689102500 235954644 825798677 937464702 962573707 230221684 413196492 691526954 902190392 339510745 911489901 977282326 990535951 762222714 864050762 258431935 748544917 752849716 909754213 503816015 931826632 738135102 946772290 884293729 900404360 840431878 952764583 804799851 945978417 896307902 974586839 704691946 751358631 412872301 704825549 975556073 989218473 959871118 990280644 599597797 932944485 753940471 860541957 62424717 875173545 890600005 951625992 594185951 612918418 386078655 431948615 19921 279004288 630622513 638471146 311144277 445133574 278938213 974553948 976732495 990888875 931122068 938635636 970558390 980297076 451162880 937757009 478685833 792007301 3375675 908175079 13616602 968321946 319287214 376364478 430384501 770104593 153870131 423147835 926730255 961962847 854939827 960774339 787457823 971348106 159410634 895737465 385864065 635743008 31930549 722488821 732057379 824682749 912822608 927415826 214794297 734631903 502745665 571076961 162329998 510246157 749478445 812463192 301052226 335404855 159340283 660895246 894284899 955919168 612742284 961193681 167306946 769055801 722699666 848520294 74320744 113437172 747565081 781178516 236988496 751939533 658273505 950213005 929246754 969556715 682080912 762280297 557198887 787086787 904107706 950580413 965383629 996231959 551870562 719867974 693160607 784172455 749254930 847135697 187903338 265340715 422807984 980382887 187065361 929440090 684837283 883943676 150263812 632175193 195783807 955810278 44004798 280648565 939655226 947856778 152458118 802678378 774478391 836242810 197156574 944832797 886327131 980278693 945911079 946999099 27074230 336650822 847583041 942063908 627474171 634654471 421885695 665907929 533537566 557907419 619158530 736129545 872977938 900482424 547674045 938053478 203638879 583299521 643273085 751890732 472642400 901826779 803613572 858219199 102234275 974715814 632446294 684003115 261615602 977400747 726403417 782357792 884382716 901964616 308108474 897676938 802461588 881449660 11614200 465849089 267099608 934711796 961717589 969412281 274231240 536620410 185004845 949085010 323627463 350494520 440222272 666000579 751444891 955181110 859258229 902101902 726709867 903167706 979731077 993011398 326113644 622964736 756238014 897534622 372528687 845178688 741738195 777039316 906279073 916075945 738748282 883752858 484514103 827698502 244090178 373084286 251235350 620323721 361333574 526904387 709065836 745179240 605117841 633110599 602683196 858684013 428649891 657176510 373883855 701587867 470591572 746321388 819061067 906949976 937692325 981298645 717796493 811401466 391644713 884737143 792448308 856689921 95573703 831802637 557771343 645374812 661707380 946265892 611300980 875547275 439612566 485880262 887090591 901620267 338511517 419193900 650274538 887250962 404196689 929070925 173736344 830424617 695017000 886481039 794572162 820733753 954562466 995983532 799277503 852344616 679084519 726784277 879000744 903182109 681352997 811578932 114481109 528745158 125312256 797881431 600392729 722838177 37212858 384629541 3164888 719958821 565918517 574136951 133763731 932158493 698766903 826314449 571975235 793038430 555797161 724337811 722975070 765816366 68425233 760577058 530190867 953192587 375949537 833027890 48973543 860655485 602139113 657691696 954171117 977993310 262135290 683552487 62400308 853933508 381529104 489707403 943029246 994571630 603636907 997502438 878234122 963762226 465891309 764927840 533786307 709382562 752413053 906917384 267113375 447297560 498530852 975395849 862923603 916167492 975399421 980598327 80885516 133354872 42213890 386313637 995968731 998420542 794806624 994616354 711685615 906260229 328179480 754724324 919580230 985388098 74205380 200688039 516993050 929154847 732871546 780354605 303517321 388700902 373735318 444021537 997825747 999233813 302058300 721182631 887934850 988547127 718667350 805649065 408638083 681765041 132152263 790881895 591946060 978031052 552767373 835674233 174958591 841334277 351295710 538161361 341154127 796511867 471904886 775907209 688631118 824887995 483404087 962706172 334098840 483288713 181055301 893506247 323298016 336567439 213436582 657154189 917933660 963139291 684886064 873349745 765029104 792929541 119378321 539102825 296157965 597775635 67806485 997901446 880717018 908031659 414997905 545331796 204454906 211295430 236377798 838451410 771467086 964435388 469662940 779072229 651137708 695173895 584595832 871979035 997581411 998162436 329596574 733051266 440837053 872451212 992516261 997326718 74001518 294884528 164446883 566019740 614278716 938986511 497169636 721977612 120860643 459554473 543364287 909829853 987320619 987479501 481907585 562342073 875044056 953668771 103739690 439956779 233952987 360231735 360434052 397869357 548219793 774327027 301415330 902521601 923323709 985688411 86244295 846228021 492302839 840908809 146780028 470181682 811538567 981010795 377034082 874313445 649403771 696142765 258693927 883301174 512409458 944818313 110877315 723443558 287713040 505109853 409113979 909856316 456844774 479675539 345127597 383225157 577316654 773940800 11362864 32680345 251714382 688218263 165280159 750113709 598739206 863000956 487333504 495084438 518152997 738980781 724383332 840393107 140674971 948778254 354764126 978286044 785449242 855170951 201573116 916051402 761819379 888479077 326493661 511725867 651613739 971728815 86064593 523172797 773649743 948583388 974980443 993582917 670927130 979193331 955727949 990242473 841664689 906525307 302410712 653644469 108016221 755741461 348043908 994544382 184537945 244516879 95978542 284855715 464100117 616945347 829420603 966362563 679901751 827323901 92252419 958781738 765725672 970234585 946185702 966901619 886212160 987004308 149203059 874257940 899313667 976012082 67307990 762429609 809166195 821598401 165657229 525407911 813992943 866965346 129181470 226608416 590397000 823153633 537035143 543620195 579235666 885061586 485302940 930085835 469294347 987651299 209069333 222721542 659054216 954391961 726434176 864279727 592180412 925847376 503617736 523389772 38715470 416993632 761412350 933416276 277250447 476694439 331076501 552736517 680370705 709100228 466272929 813349666 691722524 918376496 413128364 773302041 925433087 971885802 837142620 983632196 80744095 298053612 886468498 888541521 832040195 984106146 730988758 861965653 736039742 918473240 665025360 811668361 296893915 842681192 546895797 668132013 563708362 858408437 731230499 738701229 467670470 487317570 955908494 972979309 231190502 642271956 477958401 703013350 563067485 719744704 387684952 911020402 979980439 984264047 688435556 901988258 410795473 526032116 772408601 889784049 436447371 581038822 309298971 866344916 648578252 737377976 429174714 764667168 189773495 321999785 766581941 830019656 664301854 670058549 528755770 683269397 294541441 431447340 118081550 609276581 727831007 988703899 450566111 841355954 787027514 972785669 834200392 870805213 846737361 948837419 28065 147251695 224391435 377860424 462818773 631140178 506946602 839770051 840629468 973908429 526668969 635680802 62277010 596447090 31196515 107682262 16715677 48596099 391296242 773050072 400589990 792014130 256791452 658321815 833086384 856104724 261520117 491505082 464321754 617484501 22958569 161552595 615957389 951711822 794892385 878466023 497463933 904778228 934583896 972884181 879882775 945968755 385487478 849226258 474023404 763886396 454092814 966006297 955698253 969565875 595824158 897033418 595254665 671569067 562741987 585201307 137276821 860699916 219386770 436434740 808649520 914332070 997636913 998161272 423688376 653478103 241333000 661376535 938770679 974687275 858492813 869261583 138272321 151069601 2382107 564010535 462479482 802012868 791595973 916839971 568094133 598868674 266256166 417973680 768794974 901481653 129641674 333420612 493807208 676845738 178076715 733962484 577744668 849369361 747385774 989928150 770469340 781341700 623017629 644461827 649077265 790448228 456809564 937425875 474003842 814297179 223052924 550493364 616073530 696667428 144146715 568607395 674925474 816284564 439549843 764994402 936939197 991339053 688036709 753038126 218511423 913813111 780316394 848405081 447451473 876544594 602834933 834203548 789381209 953624214 407948183 417432981 914562370 917431493 627337220 961483753 87387335 97871250 845069876 874823526 999036916 999163816 45414280 656363703 781685686 844484826 793019143 985991953 346126526 346700477 166929286 900620577 474551798 920139068 224125942 719287033 613401134 709762643 333458628 664657593 634241008 968756012 203351650 589392118 553184530 767398774 668782425 985712293 400177718 566907009 945664984 993025139 905923605 915364381 783431891 817817476 528143536 978205245 256297637 653797550 35051897 804632035 703709271 768879546 539420497 693067717 187888317 279710672 63972349 624856592 539849959 779764022 74810157 259948584 446807184 469642461 657454687 968165161 390941659 630609897 608976981 844412301 778754202 839033152 988235317 996147931 273363517 372526492 413673351 821132390 102894159 765662952 512837154 837734815 578734630 611807822 366781 632656295 841329179 984114288 387939615 427447779 881769623 885479931 741707060 972957525 960560476 992665482 365748192 873710607 329729449 810297752 208696282 901413809 206629315 686079152 813095211 987945657 606564799 722778780 45812777 570424788 754598660 830443577 85284907 494436548 478881477 545745814 764158128 795934859 582433723 633519896 769820402 843408839 33399213 559129178 397131499 532789074 925737785 948058387 224276843 492024043 11836092 424926734 968407708 976162299 297325301 541935275 976652817 986812744 963007087 983287699 29773007 139883705 379394463 572758862 168598829 227885673 424117884 920436529 921368539 930186082 588821570 656608470 211508924 367834281 651210778 908018399 898874909 911146415 457629100 979581965 213300761 642175478 313335044 317857918 329863978 888238061 579061383 925377911 72393779 740910510 746676251 914046399 227026171 876051920 387036125 489675623 306308240 844299544 109355942 788334526 44058567 97857322 117086496 742624498 610431680 647870870 39487233 68039230 348727752 361038694 405656636 627288002 302125738 828876894 92699014 452295781 952487665 978748541 396168501 851247144 941689858 953670043 684496798 981135611 443982311 707061646 907535217 916670016 440739361 923262118 399717849 498170466 846947685 997391462 810249331 996259109 640111419 918963379 50467408 513308333 433875346 613220341 502727380 930541669 35608157 684373983 900960407 906633720 620288821 825172703 760484856 865907703 353300121 826243920 610970390 727137977 192439292 784568630 490405614 898772932 334379243 391609228 95509368 924770788 90995920 975763369 82682092 311635476 419483736 719504139 282128030 821657678 917196278 959577137 546232779 848583595 739712862 763584290 569362309 728748085 755869437 847887121 524765896 533664764 747083106 905823934 658635404 849127570 314727313 489241847 916566709 987734051 844327194 890650578 575173915 673808988 961904906 985895758 753856726 989610143 180380083 946410863 47489484 539073884 314405148 354307112 266967732 748054937 875117762 962205935 733809134 909532191 252922735 757119410 867132406 899068961 188763179 986701760 163725921 269527861 689839224 926078067 604014331 917375748 548320398 978544157 616557006 984365191 679938887 838093431 613441285 716899680 71800120 614392793 544732363 582394007 722162795 754015079 205394745 411561184 181621299 348666942 158148750 660433902 476232870 713492295 805281119 854828954 520861397 815639073 752238941 915037883 184285688 683514268 478082167 631466990 877131092 975918751 161795811 368232001 801683473 887047838 818470868 833590015 306827848 384585011 705726018 954707410 982002816 994848818 354529114 871933527 992069414 992634969 566558686 652681681 657068074 929905438 60528991 252799403 458046042 720041355 725238859 968992632 323865100 874449828 252193995 988478980 413795656 520294424 744059660 859325645 493227340 804616932 911159611 998702733 377272828 912619733 445944666 949739359 811498691 854831218 137587916 641643938 628731864 653732333 326086757 654898889 389514825 958894502 693430760 803654073 501118901 717422172 795661287 921277756 47983815 690462343 821634840 968688905 239676381 555321210 629770475 648944800 938175543 987967029 685294254 794392315 281254074 298414947 894426872 981540841 986552150 993412352 181237669 206950610 468741879 553144137 376197655 734498096 708169597 808538705 865935511 923334722 550785430 664598394 148153740 242790343 993974974 994639533 762841623 843194963 536845512 752471490 813144119 872532043 177035781 263431843 521725512 675341272 851709494 861320352 59413215 260052328 104121764 213953044 302782197 604662473 322719746 535513849 404358662 569595464 712759462 927063451 871601793 943298320 442037162 928591585 973854169 999937996 358911692 612223461 3709562 977682391 877089378 982740721 69841747 614142440 546952091 696766795 425874461 516807885 244368591 537896282 523364079 856456046 181435578 342387437 815053112 983783329 808675858 845277903 343639903 712770088 227793529 320238594 415559098 948789323 515599955 869268571 996950417 997547296 24356519 440073539 27431812 602119948 681129895 924195959 353284853 885608550 78935427 135606722 249220541 522345292 215160843 543457795 123102352 643609199 983443442 989413410 293093957 930307872 643431008 732091952 92425181 431534155 614882650 971149280 157156801 821661313 724167254 869093552 865705019 957491481 836438806 838774290 85095541 506297734 280898295 374998268 140176281 743436374 876923349 990938754 755200785 836155508 955513824 999965061 516567642 853516463 810245147 845927495 48191379 871830431 990461716 994129891 48733787 945892349 200971811 797969391 435878270 438315554 936131476 960731381 258199654 964655740 129188899 787758453 828384052 980577345 809882302 849704686 14329235 547201746 592754043 980474351 43410179 459374393 897473264 958451988 173144607 289595511 452287044 539375950 329686206 496397676 413117631 611136207 346500220 456836272 333772507 466544417 163059984 328896762 411618393 448191398 421190591 490671715 747336698 913649895 656942878 707484659 517438726 886569703 629146110 703023426 796088887 856336306 538796344 566926636 295786554 465991305 803363960 941905672 654114887 681106917 669993785 725456339 766616309 907598930 672541919 672766240 298659709 638962383 984994306 988375757 502746071 835482081 900486826 987686941 111977629 367102813 265417957 975203495 549998405 814077685 786721897 949107106 425509719 979588303 543156520 563376931 739937148 819977090 70419412 956641243 812371855 923537106 858473140 874554014 841940116 905054404 527854417 940894056 988236660 996412192 494699842 731678200 265720909 364840711 76319830 526635587 598436031 751118231 794113433 890209433 593679373 931872784 86591681 464014281 348465978 768470398 55169730 729155829 962221379 998016767 386537193 698650943 723765683 843957926 565458647 753166121 172337919 829610804 294671458 574997300 288180998 704294678 640668019 932097025 522175485 558340156 951182448 987257643 712446345 760354402 766369755 774421037 408652181 715571125 865031777 916172286 809330254 980488637 467516434 769105204 555722725 891116901 471842441 622342395 626694820 851022387 407143649 591872023 762213655 957051261 306408166 829247172 876906919 895933181 822262524 950785260 158576336 533069490 391102929 761877526 495787121 910476391 985904103 986424653 42944457 997668420 385592581 620168268 682127948 786987461 483871063 915125433 527644101 986021683 357108166 459986187 878454460 979310177 916196188 973820650 617318347 898684727 414535547 905770277 55311670 943110811 981391938 995645895 887684839 968844185 334439256 439147005 982875427 992638570 791871712 812797879 49113128 926188592 311729450 645438236 224943601 702179614 511167087 628426801 319947228 473731497 116028746 827164363 385600204 512751373 581819403 622950967 165788271 264894288 282748513 975718987 975219849 984718789 319451806 963854740 505147832 570891903 559120424 592592519 970537742 982344167 227751554 856558370 549675382 623258917 496198424 809504665 313826137 673447134 381639103 598490251 581978931 633057587 581084726 663140265 568755372 923856119 873608605 956659824 363963676 422195272 750209058 865951563 60506610 572179109 509257163 815926789 134294764 644680886 217029241 748262130 859076360 983156305 891778127 987358142 427467501 644787866 252723625 576537526 221295775 983204032 829252171 990848484 889772101 922718016 256986079 662246659 120697104 415109871 292935880 635758888 491746374 825545166 850239504 883416706 34893933 83049050 122612342 592884825 598709835 986562562 137982020 512937339 489935991 692251586 7173603 832159481 314743807 670596216 515298400 876744726 375483385 877950818 691245694 815427373 246039719 869395115 899022305 926204400 599022515 864715316 773254148 810931949 413057858 909480839 807434229 969991143 582856864 942084751 187593955 759690236 455198466 931937692 814326562 939575576 792045980 876070402 820208137 830498007 654236186 985370346 855578585 959750939 114869332 655419044 977249068 977670264 219764856 508021497 657074938 679493454 970974264 975488853 133189398 490135499 702551407 960509408 236429953 382403671 441585470 801995073 65930163 71290886 144245745 675345063 739695106 775188563 433004873 907480606 577267933 843954916 85745264 406522150 681340114 686574565 854657207 960126168 587288376 691262930 984927738 998397786 424455628 438590244 472851792 754150026 208371023 340644139 403133354 441399741 50322154 324197268 126080214 265992312 639187635 911149040 418662701 721707713 497243984 697641573 380547618 741385347 457799601 560613559 400090417 953791532 633843691 819699530 476843420 780609709 151579188 510152727 880673621 987360520 17071621 557910736 232502329 364898563 686778210 703315607 938639024 954878058 66920384 154393421 559655134 715633656 957363469 968536849 994554531 998618768 636702516 642843288 320298313 328057109 596370609 678917552 883118831 901480804 329224570 760373872 912184699 936954238 839537589 938464073 419855247 453634250 941976132 966413525 852468674 866079572 960507036 994833436 909046544 955555489 102769420 291467023 472459869 679008366 356833859 496310858 922642205 994562591 23150522 698822242 36563382 943992123 916511834 972371495 416676603 915239779 511436837 838524524 147979359 257649773 839291148 862502906 428869365 996721287 294811113 959973119 689456831 828264694 870033332 872564305 443553594 716163179 25118228 180019749 706220162 887015999 376744267 428861402 91702231 373583131 608327432 691830867 371745356 690528841 703567442 895617450 116737037 795580885 202658775 893290262 158758130 779664859 78129430 296478131 254095706 921497026 350343008 562055848 588613130 962270323 725102349 822181523 260683800 862366031 252730034 358152417 534299868 831575711 609918301 653960611 351857986 981210964 901158323 998807803 988594070 990552464 323860111 786027381 717332422 842925592 342301433 825388925 474539561 689503233 811347371 891997022 878612108 978246481 152776048 253217229 736588214 810793338 629323035 846830947 6340743 928643070 88774916 742920667 785000342 977846029 279540355 346725375 806274422 808848383 152943318 293801119 248118297 846417352 945385638 968814842 908344074 951968914 543648464 747314839 857973342 915030133 51976617 730667273 997829958 998474868 376955578 796895665 620705586 697042354 528502985 895729961 799009443 828269353 656419472 656907667 550186168 856425541 986318464 988253881 757799490 765974541 525852237 938785743 178727551 754793362 291670806 455617792 136727652 669692918 170280682 698185842 354184336 762607471 94433853 312508530 288423765 914459637 370033154 834679782 851560242 985820580 455190538 928100423 604955589 841040876 110053349 156852198 203071552 513923925 65764442 981075134 960337789 980049255 209082493 819990206 634188213 839107241 695806722 732170501 567215918 668957523 498791930 820444779 613587915 839507839 976026960 990261670 831254503 957482816 293151451 869216882 562069431 696693808 559042039 687040064 830997943 982010884 929226760 991962473 551278738 582240178 67114312 382649378 887702343 941211325 715320219 740424488 641194440 758077908 682830489 892616313 715967483 845687534 195072204 742199299 151321027 337014710 179091605 874402316 497412542 868799486 850457303 916013394 938882395 995147825 664723113 864766247 115276332 542575632 980836452 998176762 833550212 928733239 754945851 767843810 784612947 954984411 852454802 857861700 262479352 314120517 185926049 209105761 948899699 971092476 928308802 975937728 11552415 590066230 42601620 862828842 232011630 806066725 737546990 781066784 786009141 909304366 407127337 869363258 900652147 937179882 441865578 578043551 386220097 670033186 282501463 691720457 435929104 575797095 739166856 993138949 435117380 848083835 359257388 952645098 890013278 965425199 676557938 957344768 758156319 950361146 286360060 448524561 588237136 651258509 688111759 746172866 695569368 941162341 882037516 917502003 488885698 799487222 340427484 446501814 576471744 634862775 962606191 976246007 65379972 873202065 461861987 670009824 459456227 770236879 415694066 983608203 185826409 371589566 583000508 590207085 837097457 967242845 844408462 871161067 691432098 857935646 527796641 846930114 777005408 835462970 43594489 854765307 26780089 262488267 216882021 958303137 541715794 826004060 343115078 690807125 216516635 877010211 581114421 746750549 202655180 783228825 784478096 931538653 930759398 964837981 417147446 485087752 96738590 898777611 862785754 941524584 548661852 570095179 793446361 803040725 417772229 804521790 14571887 827918847 421252850 796644278 649227739 935110944 764650379 909574355 326532238 610929606 753694520 814955834 735171228 868071736 472579966 791765798 337594587 894270740 433668645 470323825 848978924 929399277 672710751 933637888 221729821 350755638 689784448 713979581 585125353 599847688 845474733 984437414 651103698 894559871 970343453 998328837 265754092 337958922 637521219 936231651 578789304 842591210 669878941 933532908 59399407 98414308 617691238 826988887 81228733 331899377 638835240 798124562 56255105 843719326 952513918 967625496 291175921 734111019 328491811 342936828 532297575 832241077 931186875 934024580 692076918 928645550 686581213 962987536 411375563 882014364 515157630 981009052 412015133 814053096 604035295 698711019 83137026 496226352 87986332 582977056 418897530 866416055 56715567 263663245 158424440 477746437 964615873 995486819 817155333 932000431 216864742 938665972 784824159 857355331 757174789 979237072 629983596 650966197 9325487 571825011 604720637 729187649 292688524 607929563 729059872 837800081 227315168 296459818 326070079 726856360 714614803 960110688 3821444 137349717 246665964 785356570 159561845 649314769 578070490 976944119 169319681 951255251 504532406 670848012 480163133 544953334 36766459 222051623 891589729 987668092 425040836 854364537 330622526 539777033 430048717 538916810 287407734 671050307 602388446 722821489 770911177 999213120 178493926 310421055 916690770 940240696 793415196 989217518 591121339 980383351 788211124 915569057 570022529 940571091 339387337 966892089 127620241 834261550 266203694 489285509 164586717 842795470 137769761 433049661 522502199 744938152 529602443 935552490 687465438 859137556 552053176 651356297 167067034 655654119 671677696 751841162 962098482 985025466 36622787 720782442 478758711 685131684 339010650 850465669 390951844 872905977 614637922 835851265 410999968 722505815 731291516 733103363 25332484 85719437 503460043 620385361 811919476 847637803 550373705 580036249 609715592 911868259 713389173 825979555 591758633 788142934 725866941 906341421 352058464 804711648 750644738 971963721 65547789 468033408 458524654 710064548 837251284 851037615 823710523 980495265 268275576 991216923 229879845 321562705 179357156 960261060 492243107 505013218 728436305 789738511 612668107 953115530 300369753 872998774 769937972 831765502 281095737 298543039 555790081 726864719 554554285 764106026 349970329 439037175 190789058 883695563 573170041 668053202 634970790 766169100 540594064 663835002 484363361 822138501 407724259 923680742 430788300 820290370 534048472 719817351 95390496 326065456 42388616 777689892 142940409 284102937 878457673 991359672 484507778 722300267 5658657 168915101 832752786 965894861 915057103 917220790 813165682 841800601 103610915 960459375 518264379 946554414 660284902 719869916 866204851 965265435 98161732 278606719 871810083 967869450 48094682 725104716 932602988 971138257 469321116 748099167 220366749 715860748 229205571 863504559 796953693 994670743 86624321 147130531 595404236 771501766 944962250 986609490 429349906 503762804 819014214 992493153 41882148 205585022 487743457 737954216 679542117 963008283 259182643 655133449 508248969 783085581 142386460 394214812 103370961 950759726 891429082 978535003 936675677 987887650 149210526 286597431 332354470 766920593 866043854 876004190 639671388 685901744 466798118 562107870 38883741 237561786 152850674 456377302 90409319 666897317 465739489 519279223 192771413 294795791 853626487 906692840 518892051 568173462 912870924 978654966 324041238 649034930 208057675 950739506 31589594 666917006 57883255 660338316 809589318 827966759 946982483 981514629 904756217 916958468 477855218 855560811 979619810 993700386 425376815 954020016 465360571 778756038 389764516 758970482 721953980 821254361 531098899 909976735 832811831 932683424 299272296 806488416 957141109 957892729 994350122 996090858 303403411 377644956 77126361 290981131 853736267 936124572 262783144 416329026 362732226 584435529 45150306 842148116 843232635 957339110 38498809 417029934 5206329 500993995 257740784 356378402 756766968 971694706 727607210 776230445 282316971 790543266 965196707 982011012 399456203 565435285 485794955 822918427 941596312 949744567 725400502 950941249 792103935 905323919 389438909 914827852 590944665 685951652 758255805 819070544 512593850 715018427 265838824 441297464 366502443 674937208 119842895 658425383 57653028 630073003 306506190 948798934 110443228 291337032 322818904 983786008 207768356 779839699 108186122 712101028 893527976 975611925 14544869 381807309 458873003 866302758 543473457 789621338 584844888 685545094 91335861 608051335 585145077 862443033 793846288 924460761 955148674 969374913 138474749 919287797 693154617 732955214 325681099 793523141 724536153 891474686 934536327 944870530 196999 297861363 434118011 823664162 903534888 924534997 612351660 683008116 143770197 181342538 943714687 966366333 811431918 906832761 4238109 358710103 614842084 640905509 716486709 793176102 745893107 802780156 607529035 945117746 259454286 456706832 96655520 208269563 658756440 723789028 997918110 998169845 59587367 881041471 942777038 995837302 863909030 921128912 477518085 998457883 3916202 21819217 745853050 907734256 882624170 917744621 770060045 979122879 141903069 470730528 479000491 597266562 297734416 425443406 526155822 839991625 95326565 290627638 831477573 847421613 456176406 799138315 663126847 739075087 195816805 837994630 262578115 658211292 991528968 994609384 770423 539754714 613850833 716257722 541545383 693597492 197926585 253326990 115390748 759895380 390056040 849519842 641399020 987080553 341877979 736520255 144811238 667432244 772651864 823510127 401007751 418567564 447043586 554073884 646907060 783859362 393807877 584411965 945812574 947711855 372167537 419256040 69204250 775737969 925031990 943566970 594151832 942833013 46550772 504227725 777103554 981973750 26043247 154875995 371519125 690089219 913893013 939749872 871487390 978261702 868617043 891439129 578582199 870192520 328136985 374403056 147618552 257264761 899367377 968110228 762959397 920176067 2790513 82909520 89120484 251242904 331230135 984449332 460396789 788159605 918766512 999278330 568867948 985248157 211816541 661984986 873675209 970175927 656945807 764976030 199702506 529889896 795052979 882543038 609217605 850280528 562451734 972354529 862945134 895264961 82240856 403885002 473412795 488929005 194732381 230889133 132514881 827965685 677194797 684976550 948749879 977616334 753659470 984543446 586260231 972522615 834431443 968402140 459838113 754931545 101462806 699412708 200906835 738311714 909261665 984668201 241232242 892400410 979822074 986200226 344122674 658551263 656326374 699385479 620820521 644109095 546418825 662304304 829183496 939406929 900348772 908662142 80313366 451780415 472697417 695705365 40997241 121383889 102204504 610082672 175857180 784908797 943366370 998260609 926289119 936861638 838705768 968815201 806465018 816574652 183306492 232737421 359318586 440427822 430904724 808837081 410702075 838022229 77561489 530873980 550570001 617038144 26110005 853779501 175694767 210674754 325192280 825339185 277316507 424145631 675064592 793554015 678533657 812734133 611212779 894379822 181083237 884514554 879653743 925948350 962108464 987547593 432002941 485795062 418444510 949649236 890543495 987219758 639106938 945504129 692867462 898105837 760654010 888138872 777886884 884480764 532453210 867051402 762658405 806875459 642442487 907102917 298845277 674827379 17266578 98963439 845292568 893132451 120425416 371618292 966947023 989143783 963948059 971303115 112054275 485552458 908582852 951438153 675960011 914558955 855407680 997743138 983713646 988683671 341838300 679947037 430850440 800833750 602778410 693774479 25569901 291961320 314359952 849339080 649964357 731081638 383082499 863516991 954571489 990225902 924544859 929451965 172020498 563431094 31100640 916656409 725468918 881972908 256398829 620839067 254014437 961541324 868819030 992315324 522258424 807968057 763375785 802578993 437782753 629060828 364630792 729292338 63521135 703268006 366057931 775728824 883796758 911798797 227258087 697621881 870671854 946457033 69478290 604629838 934936870 943638337 790716662 823458126 887059783 895436368 878576054 976942860 94547402 409099145 821786554 826046216 253349908 436537834 991897206 992049207 46764059 780268708 433963807 923649525 788509148 823320352 688138347 868570600 876834293 967532917 704410710 984713156 984687430 992400395 762166990 789901791 546991818 892656290 675670425 687954335 84167324 845330780 539673448 768539474 785370799 978306711 149147563 628740204 23575241 147538193 320704597 906416301 988058120 994451414 993633049 997184794 611973501 985374177 538692917 630842708 695511577 900603552 981254437 990211778 196426536 530318244 962098643 990176429 113759786 481594840 394900053 626396830 666373531 824430954 636714416 643344191 233507156 936049614 163724302 961581588 164174706 613597929 964275088 996898590 813491543 863561708 381040116 416089643 710171090 966731268 164762446 485736387 255093368 704213540 908916903 986367726 988444059 998451921 237713872 538728336 370653140 835516455 421291076 651810367 892606285 925683900 730598950 866676295 562527406 726034620 877401457 918524044 243484677 877356115 449874647 507400577 797989052 945393620 358083692 545824434 995769892 997636360 835763332 844329287 561913367 813795405 538895379 945648567 965755744 991944463 253875221 693923120 725462110 762781802 134169124 799587562 893933779 906907956 768613520 938285313 35988438 886788688 606086542 881566951 568489798 927466302 412977084 490864607 423141962 976965739 550996174 551058170 114824321 701436943 530334885 929258677 473291282 734656403 445602899 761110044 12591812 992940715 140309178 176014474 341157085 899196703 417699484 743337337 766415740 935650711 524209125 567648331 737449924 767463184 845976865 907777920 266430446 274350229 643042348 926417685 894631196 939214218 958368390 960855738 934871644 936109662 881674510 935517650 306682529 793765686 722627735 723152393 178971017 961354651 382925050 534780567 92188106 751489825 252493653 264002644 820771129 836752002 533215311 834433787 44401232 994425134 442129888 515386758 763162949 813940250 401246678 990786872 601743262 620628390 566828286 633078656 134444860 600796483 534054356 756776033 920842928 935823468 129371550 822723623 525807765 529745476 865140958 951412316 925174179 968205065 801771655 974441864 905792984 928624316 226041224 334953189 754035781 857967673 214358700 384975497 222700446 624126280 225987856 987568561 363661572 383648034 878964225 967988019 671534225 923807214 711277158 777344534 664237805 888623136 588729443 696172465 710141016 951782325 258574848 721311637 35684888 178010386 1402215 173224646 67228409 210176835 195003784 674074953 181917585 394697379 302623472 816073272 453304549 635795061 184160958 874377536 627761612 646949249 146665307 837617641 57233469 74208945 820265034 884346007 868235458 970173123 618708559 650249059 777460014 996541655 167553777 483528006 821967406 913903090 265111878 651321775 855867571 866876238 916940861 988521271 956984935 980527519 184536467 831559312 164047085 833803181 659741321 662888305 671924282 762795715 502100279 837064987 669172183 770754074 983725540 984762093 712957041 899968701 674925352 925350937 395757064 972329917 302717952 739965007 673502671 860936547 55308752 574800731 168352127 346615324 664966278 681255620 638017400 852913499 637005226 732950688 954992897 985282278 359283599 730374740 543858722 577960867 952140446 982413897 532761073 975010537 4216709 996869415 929592243 954068177 999069809 999422969 745768140 774077094 227206161 616540867 141036273 705831734 785173474 979583908 116357113 591469503 104690482 704790195 162080186 806018870 229122995 380467473 425244829 592204379 914330952 917712193 964103021 994361805 86922758 900012353 208702297 556254723 112233965 829135726 326456510 985311713 796415041 960871005 775938626 838017288 906024165 981451132 839463512 969316398 700630175 733407357 160579513 854897112 925928621 949074219 842802302 967536974 732530649 799507752 579506335 949864735 558312651 737789727 171492722 991467394 3512159 42046163 327108893 441479097 2573854 715817440 598210933 941697779 937399340 956876054 767422424 904786011 983667088 984937663 773648430 973306095 599313888 951192283 154041813 187239853 655415504 967945292 756615844 810990573 841948308 941902437 344556237 924027558 822253450 978241927 608249196 869910789 636993274 955548837 686609723 784659526 111422665 169484346 459846570 962491160 869740239 907442728 14988456 388813351 802091429 982274250 765936415 925854252 841021956 990017806 243668477 752890388 507977500 622914316 144132903 506611540 578016717 809372820 952141774 979499777 27483211 819068520 583030916 707459424 47940815 136075139 662453957 716744171 825232631 947005619 627358818 960748581 922786752 977149512 991573111 997068827 320189995 539999042 77777118 935883705 909882278 990574917 152926679 913554575 939663042 992283154 557513270 893245787 635573576 785419497 860096549 929210790 704426322 819851854 693960511 773911446 502294089 769044374 562040798 577698280 560573545 717826989 323115697 587530031 614449508 657167621 724892994 812982039 396659467 890935130 426672186 662140515 964776677 998964465 792724640 959763363 682888185 733236911 333775932 468148473 313311099 837118674 332222195 623603892 13629144 592384736 746553476 937491430 503279386 597926856 481360069 778186878 105695445 694771315 313015440 850071540 441768575 540399821 247170131 483937491 118846490 657071178 603553117 629513805 127442680 463453071 283746374 821992064 534403467 638965930 515009779 999990830 736574649 806221616 24244679 219256336 630569725 706759543 998784568 999012493 78870175 742033695 519570303 930241188 487918750 849798104 629800535 804000112 926422462 952881798 278212644 701441458 810286620 993231185 243446878 581670945 303004338 749189587 606406741 633494057 234362929 812318197 770951708 858710039 687388823 837677949 497373699 641729001 100706150 696427182 845565072 886056048 265925467 601273941 584978584 736117573 269530577 548448073 26149631 260044396 986095685 988850706 914053589 956553403 572447154 906700304 920724514 955558990 403735403 898039084 52714091 888599537 815739911 864194651 661368584 738283106 976277964 985433525 488755634 785888849 412216979 601141321 847841088 935011280 306261749 846459353 451100275 971461747 942567770 965079876 679585691 895472235 868561167 972753273 4194462 955354019 191282240 915105408 783841950 922696855 68299864 153135832 136173797 427214942 180523714 388216353 495392726 988153240 279151850 449668540 699003350 743341825 280465622 807614155 975997925 984646801 103676229 172796292 648857269 904306921 368909641 752706310 550413195 585738998 645410107 696118760 446994495 529723290 814387183 987298528 4041318 943149824 966945843 968498244 271080950 709298233 649643298 879798444 8677581 753325499 794076835 927922333 810693068 940302424 985503064 990818655 121865968 302114684 554851502 849814963 113423401 885845413 590396084 769567743 439688362 936864382 333254926 375987960 288459146 586571438 132215629 973402313 241437499 802680568 396531737 535710890 633658952 640151972 285455890 990478349 654469573 909258360 452321865 754771052 234382816 539605550 135775412 300913993 518730964 711696847 885329153 942322025 230741747 500028367 995011429 998100766 298335189 449852358 404196233 804728003 1005443 655243575 633422234 764836834 112318381 836307508 791463407 971698053 706293686 837860223 412860201 453627613 148071325 741836322 552327535 718612627 317817216 616831644 913751443 915087134 269665533 759596956 487518350 776246173 437682895 834775281 233093493 954988707 247727423 432001919 26207831 583750403 934784369 937188569 445254453 726648702 802911663 999062638 56276042 302377601 185193312 908942962 981035623 985680003 414451389 798186316 217799112 328731103 684053372 776528215 982475182 990015662 555138628 676252272 736754824 748389652 284219710 583474834 321269570 946794289 331694250 685326562 421636149 674808487 174769405 943128619 245289410 356696993 299907104 596444800 175003796 882125633 891060866 917266021 269164292 929774853 404299890 717974659 596783692 768304301 324981653 557006198 461575507 610036716 912742409 963354608 792777381 870250317 945902992 948083004 687579565 954388941 481438061 792266061 864172197 999970378 562289447 768548253 76506018 107067213 477370232 631642297 312315345 473920629 295785185 945460150 720290290 867829548 627590577 707831494 170131238 226880209 235189800 986483238 411388779 508024333 386753935 824143297 967762177 977343671 188857129 356734370 760167491 895842184 395636553 621949307 460734088 957532984 905338988 925695580 984906870 990210419 677076452 889423302 22757202 47666986 414893375 819606997 338667787 485295494 503389510 658856548 551021404 889900193 491152757 727160603 115224578 843783680 127046374 464701575 57602401 146319381 319586758 751583348 671225936 869221344 74581159 413647061 913052001 932924509 970212274 997024309 213426942 508195451 803435639 852034497 882814921 975034511 715806143 990830321 495196462 784203076 625860950 819193712 932513198 989146709 338094983 400430019 102694370 520637243 432573009 998995985 839699456 903636437 322266396 914004446 112097241 629635346 206133603 647322306 633155552 860081595 38857542 360318356 29081154 938757925 934525285 967800916 373099438 634125995 203243899 452194589 644097674 713617502 282066939 359424039 653047351 888837617 412670945 857568492 287955975 769950539 260277347 618065665 412446058 669105657 948206404 950505486 753876681 921893486 154492425 197527346 160318170 645918144 28155578 278175307 190260092 336323771 677867015 961503169 882098265 917483205 705385420 997391103 171027705 316386395 230490753 967725712 945559733 965560407 567532347 568349436 399399225 494704694 889528137 975150042 347759668 464167634 650361493 755159075 864258657 986942351 439498452 715506132 515245292 796786625 527568633 771116486 277030400 882117409 934347586 992061474 821447442 936789500 144772531 956900464 446489462 581795238 637489634 899842662 899325564 970466699 678412996 752801018 84140440 158217030 7455577 697641904 302887250 576103234 775508828 860773039 212049389 751484277 550335705 845753094 309108857 325708856 346785706 826700509 121124715 530019168 638076054 976669669 321225673 585963779 273679195 567842541 52455379 235870159 94630278 848299858 586159556 914538204 562342688 998220563 6295491 130644652 801357147 802949459 92113250 691267809 496310198 963420240 549385903 952594997 187785693 428562124 432714528 715160208 767611248 982631001 789256108 881655131 271001356 907983684 113081701 815601302 222598831 594084113 390149252 848879037 526083640 679015123 951532663 960547663 944909442 968368513 325767300 930480137 19262719 609653025 200839917 742248458 896953006 946625815 297490410 897381082 666421807 878962203 408821283 532159435 304332643 984354175 399367327 765289223 776161165 852743397 475536449 980594673 843799750 867054419 394562590 800740269 159405995 436218280 238819286 525147700 124455797 658605631 607931215 631435646 577534286 758023113 439044848 906935054 544812554 840336010 974884406 998479334 398997381 817207607 250056777 708954406 932794431 952772245 264074177 286619036 388573118 452815411 299825665 617940526 26756712 703254592 808708259 926159373 532923887 723934416 425625292 480211783 199873859 554401128 754735599 767521814 336567884 357052429 397430969 569501462 792109560 933659146 59727406 837046381 759473300 788363218 562105898 602369067 147771007 976949999 791638007 981424418 280408721 908751031 554308909 732734387 547359729 577677049 263884984 582554251 247209605 744682126 906521264 980696482 981442394 991716883 812455959 869843585 857808790 984354679 56753230 565308429 654125890 894755898 1532897 714402405 897655358 958968437 934495162 968986502 975967902 992547799 142461017 413273001 75690584 313492220 115086188 698038225 647733155 995798276 289547719 371185453 848609978 912520389 37840144 117451888 376007391 969057311 236516584 876437863 862344934 907011722 295090014 502443009 278292546 595643757 683612135 848391838 188071614 441456763 881613191 998193070 442455032 546294611 303114717 956682167 352058450 968483106 60389818 931471956 449595639 510253170 864425415 984920293 483053372 689151908 360953205 769756184 810181756 840027025 736021751 865268874 445932674 977557865 906732128 981353553 744995 588402672 431679028 913371519 508568654 907792010 415724701 843125246 509101979 964130568 947540112 984272760 965064733 974614498 291708441 759255735 988157907 995963083 395327880 908619238 444723675 706125524 459777843 657146673 22340404 784457420 959204577 994621270 884487772 933687801 852584861 994831998 41178870 660451976 30027512 945612525 822154035 932793014 759661024 786753840 228383432 253052506 400111657 755177786 404689344 821950173 226366960 952278658 27625826 538930523 498038076 873405344 647333649 828982210 23476116 579635512 707390652 762244122 564381052 600966541 695495048 867287668 393636960 425065950 394595784 986864318 557273628 763345648 509402530 915590423 76808266 516565257 639843902 903391909 599072949 791188983 956612602 987930026 515521896 574500430 328710349 707322068 3243573 208034461 833578224 984044615 846241605 862645598 549799020 764081287 376803723 787815147 574367688 671523610 248127784 461351640 160662678 889419339 67465099 758523753 100191700 139240139 266351436 714489221 241893560 713443745 921014884 981963258 742276995 924921788 215661858 493536094 194314226 388688474 277697807 817378122 970720367 990032404 218382664 541444768 387814855 403926498 215214125 754528849 951697992 957915748 845392085 858143391 502219644 572123845 755425637 945042388 333891959 339831116 825542695 916055444 279816011 645820781 531465992 869774345 55631761 358768454 784180288 923470755 580838029 762467697 762384242 900949576 602115613 938039940 434549331 738685456 157319208 767940521 542219531 553746716 839092237 980674067 979670997 996812708 724048958 973273955 46042898 162686769 988994356 989368774 645316057 983146103 627957835 898150958 433045752 659402835 890189806 947840005 265916615 448183522 901815242 934201089 969699637 970862475 799912580 934748983 722355073 804755096 717513880 905266412 110833868 192802129 444060247 870721244 613951601 812981238 889182038 952054201 657449498 991989929 588893246 898466221 29498169 822597149 181514563 608537195 309453746 667280166 255033738 301113846 495969628 795838444 297203911 567212177 307111771 777441941 542094463 583930735 813664996 982168282 149734042 472663007 52403570 586294080 348868808 490955449 364234635 954614797 478017078 528930001 395485637 890376595 685309963 695187544 645214208 905283414 543224482 698238109 792724934 946176140 976601704 999064292 896675860 904017241 835564792 877502145 594860106 990152897 818973000 962669324 866356161 981251697 859187983 903373098 929072341 959078393 142957048 355064505 458911100 626633765 137368977 251798391 201411331 962058331 775866518 827812818 324750421 799139146 797091565 924001454 699988368 790622733 896892065 940904571 433036550 941186945 145197628 857226290 939306511 995709353 712047090 883988823 506194768 617256096 722743306 787494282 230079358 504288981 820026398 830990734 350834491 498341353 895209898 901717652 111760104 354312155 413972263 948625694 397901865 690118459 790504732 928719458 469013634 710874042 180409441 455401615 689331301 855415109 70946887 481705039 326705998 370660054 457449549 763803019 595038340 890857980 588731133 908246933 600893906 821288165 916058881 936322241 532325809 746709175 706675707 746219629 513401960 962553507 782943043 929614995 110370105 392845846 225922031 728089269 766580457 888669699 218615 814792587 652357084 653464035 837081484 933164447 827312125 850573584 176537401 779648063 760462441 814704265 48500018 885028389 812968993 834234072 573656424 657532758 478763087 743374921 940914526 943782631 585293783 733434939 597106181 756030577 685860995 833934869 296213032 303775366 853648256 972157660 139924288 609879173 967685522 969531010 275371833 354217978 68608752 115044981 889401763 895390393 163624210 765948477 423863117 966294020 776463758 985615237 821303142 959167814 103233847 925647785 162475602 553868296 589045170 788043200 509623696 832935960 488385759 836429241 697743769 964039443 425058900 995448718 987967959 995129203 133186330 189783372 245047733 783817102 557440053 925372625 716211310 829770344 867209077 924811403 351047289 489524231 883200344 934350632 181845678 338944260 710955724 796371181 351133873 692358788 743394771 941323487 353291788 920936621 554728328 821750634 597902059 668193895 78140585 873295143 202459740 578368084 599339600 653296980 231078779 686979661 717130400 825246010 368127183 748649823 170602018 296019257 637548383 659197708 291667219 809612213 120028816 552393570 664439583 889915546 33868420 799928152 197133893 579032568 849996026 912451763 999187064 999566715 196756625 942066235 261180353 992825525 940896432 954045579 376555861 926465860 66723986 806882878 88857927 372635884 691305261 776676632 925801498 967422108 518982183 801049787 750464651 854538025 890571932 941985654 443526305 815615935 539404872 658532998 521918845 934597726 348026721 434539027 569433464 670907766 998442606 999060902 851680436 940465171 941603583 945937029 780729531 792500418 530218335 959812044 365908038 972828374 901647962 910260828 575562412 879212472 404098322 694146189 489590836 701520144 433899573 620851786 612888008 780870030 802313831 949097555 885906500 899901774 264844395 949876792 11106438 742590802 847938327 992158522 130238305 705082307 526625378 874593566 104422137 304256841 314308781 625829378 857845852 897067513 852234546 883257928 554597196 829073923 462815814 830934819 487481340 571401400 640883590 698047368 4320091 737885453 135620615 217560039 868503050 876621187 758026465 758962334 506384508 666107353 333718511 417777954 429374012 571154963 992833925 998013668 101689669 644069132 21373534 338999522 633115026 938825175 784620833 884763263 733582134 941233474 583707581 880309873 197362382 707168802 42347073 492108351 76364749 612087447 645690284 863951655 341094333 925714963 898497862 968362295 927830866 951404701 617518352 862808808 353302273 511526289 340100555 442254385 504462380 785100848 813104983 815886168 891624828 986035215 356301772 710515783 430549610 800792660 851072014 894436713 734889242 958168331 139703047 816439394 126396684 917134698 388433815 577019591 662451232 825299363 166766140 396647500 736065167 779349386 477588581 804554326 68896112 792573246 676138673 802318805 932948219 980068377 152348130 237286023 372166747 441874161 471151231 577929663 509485278 985721999 355108932 595217079 619266625 856381554 93584091 680592429 734063730 826214162 232452638 442885635 281222109 465616446 854220855 951109430 994121538 997355416 557120038 648432480 54595819 339988849 818935412 820134341 803227667 910822211 292143616 656948655 289244660 857103452 851888620 973825144 931171985 951129000 875686342 956297018 783183669 858124982 949305228 977390888 443471798 826028249 638131750 696121685 336403488 386261645 405178240 709748796 67371935 803359206 151304602 697171392 131933323 351678854 294102541 556874391 102958696 493182162 159251590 355709455 486522659 805673635 373029285 740215143 14683722 69131953 411609588 532823738 736644965 799428711 682687753 817852151 404467313 685434164 350549178 914569677 802126740 888605217 191801225 802472884 219155511 338546338 761659606 791323869 790306992 828637534 320241276 902942677 697954422 994418122 788205245 912586009 399071162 880222384 586262238 603090586 57724318 878001346 82054897 751498419 119878847 183407308 838505892 904902906 472922963 915324823 907094009 946852188 345985885 720200857 525342860 663234836 420710188 456814032 337358687 566702688 928195811 928639020 180818519 587813540 926836012 961367146 207985548 276635090 749289796 869801288 974693487 982275000 884775054 959917712 218153930 253343943 275251192 327588367 850676543 941330916 874294041 934889365 760120186 935388368 607350621 742448466 142956014 634900097 422595903 784045504 759645065 852216467 661660937 697224057 465785132 687927187 391111918 822580333 570345830 589085944 193172743 656088492 133288039 895063109 743395125 938809548 481066946 522948499 424265473 998816608 777717510 996479884 893947197 934183400 977108157 993236161 65901660 149674318 828109602 999540079 144627223 751516743 147078995 306235000 98536093 120210378 236936756 403403499 920509720 978737810 867745182 891680710 841395720 995035380 50502848 517474734 456944148 557594651 469592060 826229461 649382464 945656307 673914651 747124985 754579291 825500451 842221311 978837276 321566637 411071303 799972249 828923778 180420891 302837194 405851631 662503602 342849192 351502216 926381414 990458647 980497672 981421759 162696977 374523911 131403857 748820950 834706314 888513626 781838875 853981439 818234391 906331208 746504473 884246705 377530854 498496072 453049097 594022561 969786633 996108884 228442436 528464226 129726230 477363356 185039268 294736132 319463862 711825600 964275968 997672629 547110352 793996545 776647256 983292782 346664234 680197527 874077605 966634944 943208887 954046955 144769698 421517846 454504682 804456211 917593165 943669111 265400922 679249976 781062211 984495046 741581473 925593002 178475505 820349371 802929436 981586374 502664186 812105415 380891048 640992185 730787748 842571561 442120817 773283298 432409806 758388372 145582808 271437577 965565512 992515707 608010206 622327790 455529556 723827382 703496744 986077986 714880782 851072835 539159725 937530012 592747732 802290486 617273924 766013048 939030025 944994203 833461789 897342462 731816629 740199471 205073161 251285649 652731440 971067579 370072540 557778877 791150276 882534353 430082653 899423027 603005781 858870049 903968209 989678141 963612973 977232933 706943601 733349213 868335684 871536118 266306846 320643879 108208216 381046613 871890177 908907195 291701472 433295132 451387352 927028741 339164772 662766317 265595619 974569483 351660911 758553622 827833456 866553972 662139162 871190755 816903923 987227309 769079235 897038210 204078248 429379796 739006350 788343398 179719995 627984474 447005600 734752641 417366080 713534589 540031238 750858506 332769011 534350728 471094174 504562703 461334342 680376949 136126252 830146008 297806255 586197351 186682153 660247370 694483394 844255477 457895693 481300811 172785454 598425520 191969110 555833572 206203797 303110860 171271807 299971044 580865416 641764715 848462157 860140736 426287011 487366550 226513947 783270564 581017105 815006057 230918462 519047679 639884005 893070204 871949100 920696091 941659483 963982288 654762685 914607287 877760253 956255376 276873443 401635011 876030020 894558983 61759375 644493622 183416399 409777930 159155368 973674608 292405998 716308727 761864834 884243955 918878050 970866361 418212511 646084532 206999722 845810510 619655495 659638882 284593205 415185393 243334646 246988370 926567766 960029988 320490217 778257246 288707756 429823422 339885935 401578966 810222201 980720907 910437819 941357309 813274557 924051415 204894134 922428906 587340711 958566156 760780096 878176355 2401027 713683733 326774726 550185842 219938608 767552155 973948497 998003179 841360649 895865586 574650314 623319599 492497621 535720441 861347750 998875425 520328180 671519170 608873382 986599213 958923516 984452217 346328676 485069559 308908845 947183093 929821926 981964964 202993831 520478310 319396919 591839815 154448319 210657026 188673694 916667250 143365007 990035569 834794537 879067411 50551467 544426138 846671687 848304506 182152858 960046472 7490222 225576239 356006892 602608562 392079040 518996405 997919075 998917695 977715322 995610826 578437777 679481442 994616705 995563197 618829785 999436647 651591456 920727540 682852335 942957884 484260224 597492977 715935920 808443579 240962107 703297854 131995933 659287304 31811667 656662883 753564311 809627866 971316781 972374489 53505435 335646267 181789068 593006866 426731919 606208133 837507410 917023322 339843313 690607553 266682991 937029110 215377802 913424170 696220326 984307725 916674076 951607271 113519726 125494279 668339742 828662321 736083810 878011321 57131251 497506849 467627397 638239139 406774275 574538908 377198202 802317739 661592325 825569351 613546826 735198759 24936894 849588907 916631809 959533306 308195531 965225691 783460996 925966326 613921055 877482544 770452510 808552915 35405885 378806004 551880912 595121150 251586956 983275815 94606301 98867705 915693547 928902668 52519985 122940562 895572072 955120058 440824474 751427004 651619355 720292865 158154329 249821347 345739164 674520182 609665558 952906228 880242642 954702108 996421032 998426987 101889046 118095137 58083471 881055981 322417057 423959771 877874440 930876883 31971207 985599361 721777362 869071240 737579498 952402942 685301940 848356785 117480961 955311807 98032769 769010435 738193215 827488835 424431183 720150907 624612254 761715781 33534590 276570178 213485186 595402474 480647266 662393070 207383937 971336759 385432320 675520135 894312669 924042642 369919524 929672891 852127680 899539500 620153036 788409062 341014554 694274400 456613685 935735327 395551309 907282803 703251151 822770703 882762453 977646354 40416128 82449191 728528715 829337456 496082444 549176214 956810191 999647358 82121602 533013897 881878273 960330771 80876656 799075970 120601541 654317884 134783871 198102281 680117572 732494897 107262774 426880191 682251389 798762140 156631001 351810777 953764562 983621300 516710617 588181399 510379716 632074598 945851417 997403594 760191368 919957415 182235998 332576225 220310015 596801708 115716347 994746037 21010737 754173916 385146396 923256907 972709957 992861868 555618435 633982172 291047410 748598253 807818199 940202653 518334479 882050764 623160486 700516728 614964623 713846348 55035139 226366370 10132137 17271706 385054132 536589756 500704413 938908596 830355384 895730887 454465491 559144022 654761035 846510268 797478730 916623083 212569232 287678090 462317017 787983230 699016966 935587043 644657976 793590585 385576874 439750255 257085469 303816616 814333995 819558951 688172557 811962538 633204518 744129805 122889714 410782658 71203016 263218212 941246605 960176025 543284737 777638303 975367844 984503737 397384161 976247092 724089931 757023505 306555663 627005109 582357350 719619253 10896930 383933742 582372038 785304391 984492135 999065524 565898643 581594901 787808797 969036628 169313906 555741551 854573528 957422941 32376265 71641090 830688240 927749447 263876776 790627620 903845823 908174110 345070263 398466720 583768732 798591250 462896636 757851380 325204109 490816696 184223301 707318468 349013828 932533537 700609383 902624744 154925172 835719334 825700896 923609406 879611795 996081557 195963576 631397690 806755944 931063651 179650471 408580900 52211654 823269341 609015621 730702593 197004951 739098366 477706733 540089717 790667631 811292149 207686914 266956971 597650547 616827222 153955547 455655050 429954144 675482464 517508518 571788676 573972180 986906144 140451407 583683868 370335267 768863479 547756892 623938038 366812070 672205645 33252875 418737112 616713195 920316730 689318473 813042295 746687839 903616225 567054046 694193757 337106190 811725571 738570449 799077422 926376024 958433861 819294312 823776429 846321577 870798528 844790012 873316999 747025901 846060522 466092472 971814639 284365067 533622259 454695451 779378197 966626218 977215336 343280054 474529486 840238816 927528311 351203000 886877292 302133922 568767479 601529535 804596922 271090974 685492418 920061513 992261944 70648126 542563996 338248323 671911957 418892754 593672607 395718105 779450083 601324201 869466652 853634333 920191555 981616107 999627282 661814875 872146114 588217100 952274470 596440655 609249877 640862489 891923138 687234448 969570884 657045635 658029087 349602774 484404640 25694784 331267483 182133417 984865374 659671467 801678088 104565312 582201459 523054727 973012154 93358549 642209773 829181134 969516405 320991123 490122155 53211294 749837513 431797944 634075848 687396993 837247190 399329083 565504900 127398705 178127329 993437729 995314065 743518906 792811495 22276954 894178017 560004064 729454167 483101087 713081430 992917467 994742696 530740833 666470814 792862214 989522023 546353100 726695013 141481895 305575378 139404592 675747658 202382283 749341257 59617890 420049747 948617108 996513706 217336596 993135792 190151425 454485700 434784488 557059648 434801313 457763925 87546511 931594672 892882399 960451800 173680046 536920313 904561995 993156922 502491944 884628404 347257003 741254409 652826609 721138174 436601564 785545307 588000371 949597715 832341079 970446589 914883418 932591586 382551902 461427470 645536331 913159169 58972769 178536222 781389548 843710345 69748167 876307950 899129865 974469084 536470607 701610293 473572607 999648417 251037027 284796537 667989791 768127175 8246630 813678208 719988336 997210247 366645758 870276089 658346826 667386165 268594111 282330707 167924637 716548588 909068039 927254328 969665592 994530649 476309572 918209710 362786709 541340620 657245280 930273421 716751841 751738804 796378040 958235453 199341500 301009076 585747333 968621458 859036913 927272569 247987634 869513785 327069895 363180267 337958720 529580303 999469699 999527781 28395254 186864014 954074934 963260727 681246204 775995274 433592204 435199715 516341158 836254767 627091674 825029980 935218122 997232795 697267959 735884895 813232363 828125764 757027253 922059759 509055685 681313348 886377736 889754224 134628425 608421106 938671116 998316338 364975521 365999411 741983883 809093635 932924571 933646870 715089937 798533259 105152472 261494562 970575399 988988333 409568973 661571957 484260079 570333178 354978070 620077558 530983688 611699702 891299173 953432732 21877060 149786401 11782321 306352015 175669154 623242657 826866840 918369426 948964629 988583068 348530401 834744094 438534162 548203441 886961309 931504932 810628846 921165242 248604852 477647473 768243136 897511884 844685149 950017754 942063979 996305192 241607348 533859078 709537661 756938434 391141458 477183602 583218546 626786007 377106316 724511530 921156486 928675858 481505004 623320551 183248870 877908046 411750350 985720551 869499163 975467700 733967271 758812305 601362150 897961141 966884395 996452561 573134549 855965296 677264562 780914294 488448090 925847422 253237641 580000894 687546336 901893695 341414565 968980634 145222005 452449861 894389343 998852635 957383698 991455229 167252349 828047977 467812777 911740640 757868835 857607998 341032416 665630722 28935127 245019634 59813576 968935394 888654031 960004932 809622204 840395845 3105508 457488053 559567561 858162794 632945651 836492731 288503662 921820220 88674202 837087681 870221041 974301245 594272816 775438198 131044120 602520252 7152823 491135311 952919408 971989455 228798952 579927449 582944912 947532140 384292427 717630837 864939555 875485232 525035618 786381046 308575467 431096631 979687809 985946701 673378745 868706869 849405666 854061452 961522519 974561184 800717222 836328055 676604913 728306057 551154427 743498592 285556206 297819275 189799552 278352649 953333325 992143491 440697418 465615322 616404742 775116720 544588128 587979333 374940262 971046669 103434649 874471397 597500387 770208650 883002225 900984636 695105162 706529763 140186842 208179884 534348314 963742898 33187335 490135944 841444991 887810184 836130523 857199644 518606219 721724831 724214528 732519310 587125488 996300879 395798053 572296884 43750670 923160083 252108433 990382901 864300010 957338992 869142294 901577305 847195983 990723513 346752249 387087681 166317705 699686810 884178236 974251858 92759515 779182918 407524909 566184125 584611135 753568524 763120138 798290842 464116916 682158055 754089801 811751339 36756292 124610239 645719529 728805265 228898506 860339856 947149347 978639791 743971378 787675780 777296222 848946172 433526950 739879169 226055674 240682110 933512860 959342232 547172433 726992512 33242287 358172781 537711740 759332478 649075433 941768695 529793156 664328123 43468371 503867603 564996675 743745192 822660846 824281127 359498627 671415694 432657196 804150171 207084997 620475755 439914641 646775288 2192282 987512426 877570224 946596940 702270841 982581146 349992148 800123303 418484221 828723647 966582004 988817370 791937176 881889446 635472428 889943305 162493351 603369756 571604251 572570975 740744509 965665112 21309954 593458743 891796197 894841794 828975241 909495280 147043099 972858539 698651518 809626303 349167447 522406677 859108904 860549787 200631630 528558822 631659555 873552374 843003874 864085009 738610867 829886077 332467002 690973067 899843360 911074097 360462504 732964248 730625737 747491782 987767573 990961264 774282497 860577577 592653501 685643102 393953866 903684831 499573860 587114170 697546440 999667843 889745101 990358259 273313728 791516604 173038056 656505049 33769544 912671027 780826696 972262820 601130236 729608568 29412872 330087920 577726444 762628950 303399759 543825845 14031427 373720822 276961584 412131282 332386329 887546204 307072257 804406968 382473344 410724574 207076160 699828836 316228344 945267930 829398491 856622531 260807182 464585669 550307330 917094997 99832198 800127529 517817380 628701929 125071791 575990526 402753849 816764572 53164519 417053113 878772888 892170096 263978107 305593979 259089026 289095850 486849630 499899470 496863632 703816573 917316198 973132517 992487831 997293138 84314337 815022093 91564703 112127028 294766270 580916382 352308328 451605582 792961520 958804638 262678958 958725481 869993014 928315586 570212859 967218217 523450793 804503646 201022264 402426510 964359706 982336171 113499675 176252153 770708103 938372248 478187564 972517871 846605058 912534083 801157426 963000424 692339775 959159375 910318202 952038800 464212867 570868870 974600001 986308539 134305091 934838568 572313179 713033611 660645124 917629659 135244870 284007321 497417833 855221397 450336756 988164791 832397961 857619748 60964500 918355797 846548223 879666967 852341882 899381139 989116414 990851167 819769612 905835343 721587453 760547283 254563207 979004328 690059929 947292368 699249213 848822467 11633791 138904675 976661145 991715122 806727845 948614058 890591640 946441454 309079423 662071112 147060434 337573710 615113433 759815605 649239968 783998459 103459934 368712134 370177118 396511053 424720972 971593006 184427548 648069443 349927703 808677016 634893034 788238314 660798191 712999651 736004962 983615372 202943645 869042214 598190596 959303099 554289058 810140939 631295032 932640526 624212432 900855279 106949144 482434300 896727300 992304719 751594560 857982467 434759995 854680315 707355270 880153709 230335036 859089550 19438094 917840991 896512075 978748581 551820695 858143529 662557540 716268504 176939394 788816097 948020267 970473644 149119427 516287019 969981123 995847496 649767838 987017543 630320187 707991406 340251529 347174523 968096352 989321614 432905340 900496233 972079333 997155135 626103976 730903591 496872326 692934138 12499595 680516576 175895591 796064344 630812396 963356725 770608899 856962836 42905617 632377904 913101326 951022761 797340147 877855250 682803668 810089977 38557205 860294751 173143581 180904266 385991288 390920241 752526487 935821284 791925479 964336112 807223256 888155581 131489237 538842792 178067187 399498159 605800390 761786753 873989170 898325991 297511505 690214854 828848667 952580865 706997057 902971187 140478031 621403981 713050760 795394709 249863554 702431451 460281503 595623646 796286090 903172568 787025371 999265109 621344874 827819640 632671733 638297310 429312929 606041424 379103101 823380443 287351922 740854092 887514423 978223020 455365908 973960195 579000680 746230718 803764147 869499397 666087052 839594881 139185723 273423118 899546793 920189805 633191344 729625898 834180670 978151163 189010947 350366474 589899258 613051898 511508401 639489005 196586106 508423910 137760788 334691351 923101139 971821287 52398922 920008374 162293227 422484755 238333204 968148678 213926900 500886393 111510883 367180203 276528007 747894026 525077134 568003094 616793803 770079634 10788040 306377599 14780718 823284814 686792755 911722085 744470435 861194765 868357851 945742651 14591784 750348339 223988498 602716226 584578150 940664770 975032322 985939004 183321450 319903657 351640506 393321484 289366017 332225309 456275030 722939008 487316036 583498388 166110017 776728908 592478251 786477064 379063792 984507430 783419604 822843993 509054649 633188070 362290097 653279720 242370161 642687949 289267271 423467381 241714966 950360748 989460355 996972366 756651055 923940384 734843755 949768411 28561420 780863268 88099121 898449178 742506060 969157938 509254031 744911723 300815434 680174611 862240347 885222404 700355338 919878108 822900215 829772311 593966844 599783867 425904319 564828282 16320500 710154919 221109458 828111712 768628286 929200949 780461946 812315108 476625870 589166599 99106597 940156968 25758490 894700170 872471610 936998817 466170106 486552506 336680418 586587742 154065196 643460709 474365796 548008322 248940552 721139824 479645307 635355251 286091712 295635079 485645663 604138810 173322098 839431011 113339009 955302679 675657590 971992201 815983198 963943023 778169493 881265347 653620917 909144323 921909436 950256741 24961582 868685815 482856470 570996148 685715417 687000876 89871514 603795868 304664716 754055135 720678365 888159142 41969310 813046279 622577144 888113108 858371960 933126940 689994523 839375817 361142820 886701780 156896049 301538887 176386310 834451155 99290440 270601208 416751126 832564644 469910190 708884764 203878695 336000924 359322062 836266554 217918263 975039540 908113399 987146839 825936870 845819754 77953018 271468305 796356376 825371712 786559629 987812503 775423618 943266939 129988377 753103180 99227020 865143668 897355894 917190225 237760330 795941797 36915308 405026992 278461447 522167764 727498794 969933618 870520527 896546749 727079294 790663887 590678494 679516995 249268428 815846389 328924011 832629182 241158637 690002305 20733562 137901846 218351114 370630301 989296110 992483292 730532860 995956643 158100724 388731592 780529261 814128590 653986257 738011800 21961949 229296224 321942874 733115499 607548302 680424970 49204310 388342334 906070822 992182496 681264841 746239475 284341470 985285084 290471563 306899411 491887523 745367751 815488483 955048205 824120112 868404998 899129329 961346260 260957465 948775122 815340368 927699404 671003762 911135451 194804447 511776535 28840073 83316678 46494092 85725355 609580405 738879861 374346425 635655818 281788809 903662675 268404514 845408381 730758526 803849618 629732090 858702380 548037386 721651610 925554839 991557520 237350542 736245136 322160349 459728821 406981825 512739161 256398178 911003741 296434495 888727688 40497593 625760951 997228586 999966038 128331246 858069123 400321316 643623208 930646190 944077640 743899373 872486724 844209704 912416596 433231210 736833381 529551270 608720405 591250727 844015226 943515489 990840309 562224672 815118254 715526159 871348258 80888436 133238692 175641082 890209006 985659907 986178186 924292002 969199664 439394911 854596130 246456869 347460270 651741982 702003485 880683229 959960572 340210957 955904858 866100242 904762518 730931693 921114410 445104687 746841124 677369185 949717914 832673429 850718597 991003872 999195499 545124936 960366134 427045225 700190377 123677103 347909390 363972709 666820420 971588365 980510847 990708539 997786682 477359241 620999471 950222595 995030011 120549093 596470848 664248874 786059095 922767433 960410834 761924723 766776430 368599267 411021742 572328116 820052737 301595236 363882064 53347300 853382604 870791584 907324623 209496408 451727887 431113016 798845774 58915813 231915895 848158593 901637793 419884682 702329672 491023349 801610804 202460843 912100416 704799384 954737726 811032134 884219878 163995761 726542073 605588924 684279884 910636860 943617648 166252009 240491336 271688130 514500648 348401921 444499923 38021157 965851312 413417332 766896090 101108296 218311667 415843292 558000706 716927764 888935745 44391228 264665389 116563468 120409317 197355968 806359439 985489524 993129556 651971078 943062112 624855493 923809424 176136605 372607535 575454923 619909343 731534512 821477035 629326183 851965366 892343963 915107437 319191030 781456662 47626331 103862286 888853344 940924757 620489283 698142292 161236142 689707506 332835871 838797138 392029708 776283399 38233043 688497808 211113867 840291847 911040966 970245727 563006379 781405044 939285912 963404303 744280407 940729397 152024888 919517229 504215801 903690138 279983072 502162408 410033631 664376305 620477277 889802952 332080342 557204986 461888027 597312514 938697557 943635480 854754432 877793177 807104576 975794183 339178747 926268675 5276860 215945792 149102728 984507103 384030902 564360718 833356052 905013880 444025856 511298655 549217134 957985664 382402757 997901530 886634100 947527306 803088664 906480684 402682431 559913521 279322946 837848198 99701285 768358585 319590690 514429287 990749160 995473093 883381393 944580236 99435087 632051692 697915861 818766864 131442096 693970911 419861027 850935231 339102555 342189032 558771080 829524808 729163253 970843901 201724010 458282600 17667638 611953230 323995161 977154434 873798698 936736439 207737887 572777817 535301833 818838621 567805538 610861081 305588700 812073957 65778978 422479828 602725016 718180334 435378519 866902241 520753878 555022442 565224264 772698145 312849785 712267585 24455424 878953255 316726079 949774676 476483375 715351452 605447219 948736885 225039056 547347760 550758113 731551445 295362701 489909538 23639708 422934339 385716125 792487957 175937400 986287505 919447722 949860468 757091461 874839496 700862825 964748187 718744063 834261537 97026257 917652912 841168208 950534703 949031899 961465331 975266205 991454828 350570350 450312163 646558770 648445802 979129754 989379931 446758681 878583997 971992793 995864763 740489920 926483200 322157980 744138590 450065924 534852590 311485953 564319499 631150659 897157659 194075413 454209592 837783439 875575395 425240795 928300132 307213076 874131507 564991165 966695707 233093048 292468599 495028509 792788010 93025116 277279515 98537897 329044346 478805902 914199576 755671865 930218936 611310927 699437846 2430677 25405317 566966838 730889063 522325625 605141881 439417175 545721352 907567431 936486633 520255593 632868193 40088393 60211700 589760084 723176548 598924947 970378936 960018894 985608698 57395818 784375619 982214172 993366849 660186848 880377469 16379842 981485387 684279184 700042545 816895819 895681350 769813967 862182919 299390651 348447680 478650680 610115481 513462658 992292588 420974349 473784905 771457211 931930793 831167213 845891392 753033410 861742938 818939818 879663545 431299628 663230099 210958040 397718423 855130006 889255853 516695111 555638507 888112769 958492823 487110698 643207594 308995305 478677340 690464955 916385492 35210366 41556306 295508928 365094006 355924020 416317888 652476729 690513777 3417753 831260837 835328333 903859836 433111082 450237262 545942864 738796042 140609673 782643818 876002573 967676572 243268720 640647904 171299756 905584731 632950547 800425547 599018520 999708499 88576580 736250338 395985574 424361826 17053810 568630176 629661099 647923858 289805930 807936506 978680705 983157416 487760972 953581724 307403644 435402999 22554252 786163633 949087060 968098701 386251530 973173721 801253576 930648300 508262243 860714505 838213997 859691913 798572881 798644787 898134016 925064900 610383311 785408765 424815550 567855529 491967220 904317200 778932550 972401327 245992964 726708344 413136338 516098209 97257221 144376640 834699221 968444809 678046746 714136483 864374085 959363509 63966193 65463701 961481105 986915839 555395931 749559443 836185839 985143251 93157883 302088359 554497181 739461043 981220350 984763190 716970494 974704523 571216209 990210138 200461241 582961451 282099550 689253741 907491899 967007204 321305411 800772414 352639456 707150406 762074848 808858954 547854232 811792373 531092101 632457955 645553520 652205051 10858942 560422229 540130711 610397558 866194646 887266113 593065343 854992148 424606101 901158258 716093370 960037607 222681778 638783456 212764462 230927306 780565058 989915581 184134718 319271163 627692200 920316599 412415918 499218586 958062843 999989172 96490522 330897377 604337170 856318522 57597731 874845503 920728920 988688658 585771704 698826259 420348836 565192271 397203976 467549616 174653934 462849099 936610311 941634310 361122924 898701161 343648863 512430993 90932155 939994489 186277493 351805045 647250785 977261330 742177417 876055755 512336590 807132141 583822959 704480700 283178667 378773431 79414417 889996693 114225587 504161296 212800284 355320136 321451867 603427437 827485600 917298707 675599646 899270552 777395783 856660945 751393170 850910185 85853222 892959657 15385803 293703839 175880830 898358230 676674289 991669905 345590996 650734875 913989792 973141623 660858025 861364523 865616992 871907337 883794049 939065727 616286173 678465897 968116096 998159428 797257736 882921621 305650814 875440419 389741969 995033303 374529429 537667886 865376167 913582732 254563006 500204720 782270735 858059161 886353654 894941630 254796773 283986006 40217429 691191984 250974561 758621331 161937348 721228356 503441871 679620603 281411681 602055526 836631442 895308283 345613167 782440080 569387367 592868289 570689138 788852283 779977697 781894712 278554233 310158432 689229913 932423432 702987502 931118911 536167107 770208304 961335500 965338528 826212146 979170835 38936355 201567895 902415051 970212886 919992280 958387823 147856829 197479251 898105631 962986276 718272783 760567408 385102655 896648789 537108349 562777411 685758595 710650548 47830109 323835798 543183955 711109917 718677688 783182156 892488917 924382204 515110126 535033804 758435787 842207865 762521685 852906720 967598064 985850363 949725215 950923450 422915663 632014995 139517905 623552935 211289560 320335691 368251408 795020722 269137698 284003119 517164936 854126990 114695113 541368905 680254393 950261878 403045798 438973110 608325186 767301037 16598169 84303467 391184379 835812864 820898790 951122056 301609128 854490105 901106259 941066484 794197283 964999484 917412450 984626139 484613527 557095967 795743806 917726064 221518255 485892149 861974346 866148185 259390280 719253613 136720343 678800377 673916807 721563369 335962434 860144848 11869662 846784969 983942852 998332892 331369323 789902118 308416870 664641528 211335808 752595406 503801108 636018261 941848613 973652392 850158775 898740926 42071204 484394606 383212833 882358542 648871512 772762358 800374347 935277391 881139618 985506612 785252039 943359036 428195067 885665033 343866649 492092231 239688306 873194951 587078263 926231818 456734376 784871988 825530439 864402295 782132638 830270166 583187691 729851435 999813626 999844937 182910466 822664480 97653276 514404471 494296635 583049987 709014254 928513750 660334534 686374463 91378078 367140053 708311717 888245563 876003128 876335555 250017398 674634980 378774885 828240636 350232713 472925498 455008122 730540281 553073663 794231252 86500909 232553304 926662253 955365372 630590776 981839833 338110977 644267080 798579350 965094929 837866787 961573023 862066624 916069966 5057311 831557575 105551509 400452919 343454886 771888699 868239941 883783017 388406674 559781144 284969381 868857388 245765991 306229027 259651579 994583422 223709006 715984277 726076195 864046806 355691220 729760472 674152044 975639721 731819905 814472299 82799783 680175867 264760823 972596179 841388260 867869824 73228380 634642055 624404994 964742569 106183581 942576339 794051864 898969454 731649702 962633650 16297042 500466386 911455160 947435485 539117336 837262504 626229725 841993127 155315112 821962710 616756432 858630687 251954874 663488688 412715140 626179724 502237993 829966873 213512965 427692187 593910159 844425520 236319912 878550774 973801371 995156200 731313724 954942201 751701279 835399000 117710161 559063605 395506740 880376755 438206229 839163402 527143320 740030667 144172827 805616718 211233988 785424406 585269003 966964002 165010909 857435160 459650554 701420909 762700978 940492719 72564683 907398271 53370713 994783825 82734992 207308423 237385485 380908073 428086299 991501208 744553400 791312848 536755854 700333382 28166483 625356208 177477548 988055822 975263279 992169308 452933229 709298224 991286344 995130795 936914204 959771441 466935805 837870152 697874610 814663755 45558009 54627609 43805180 94162162 988251643 999912982 649212531 798952894 29958860 929153145 25660123 307909396 230068578 820649594 649796987 809633094 973036717 985380831 202170031 217930058 432825837 956478801 881931327 890832189 833231432 921138854 309404743 809046910 556728226 779711603 46872945 274060421 758307367 798977594 795873168 871949360 629977268 681973138 33210957 577685755 617051483 674362106 487435838 703755511 555042072 752331294 446414930 519089553 969412161 993606591 616561819 916718695 287607126 877089184 322226047 868776364 777137874 846223148 98481998 102905658 839632024 885356553 833655030 925291906 776021930 780978129 352425976 534678979 604944962 848603093 228947688 768365005 345672110 461931217 783118446 985033812 129270444 881018675 334342601 704181375 556241178 933070228 996945170 999432871 27448599 604949795 267324079 876129862 227181890 349171769 170665239 655946609 38480032 443220784 638158838 884564801 979100739 979764935 980848143 999237172 73904866 572016913 681158401 891641813 206616478 789523159 164550446 319649085 638475867 748114276 290035093 514331720 900171154 966015811 111903825 911960513 651644431 983503116 447928552 964380897 777335638 881930897 19294084 671802691 387272937 429524973 953187805 972764888 473321545 546781684 944163643 947652831 830192516 896110127 230602155 890376736 723381760 997048392 646341993 770686178 334409696 474681784 109677467 137662773 384945240 510819156 264515887 946757482 497754445 575471328 939808620 990210584 714591491 803265903 975049404 979272812 764025041 905680928 224997178 906196410 462534237 950457247 300237597 943187583 16469102 894679094 537977176 994532871 742174322 906232245 237027623 835709218 219554577 353692531 392785582 819048319 471867820 903665925 526263292 904023981 229532286 774499823 293426741 521312446 740807711 793045593 745045351 813366967 631588719 926649130 703656356 902008990 350136369 999482023 847829470 880633435 483776366 633562299 121073493 730383805 505083029 878232365 663653847 976793935 737528201 950654780 224435533 253674057 135883482 596813564 108002265 285909064 318964517 360592156 208852367 270215369 607394296 772507541 562583348 627638252 552993463 698333164 316201666 982577511 764726042 886605605 736155303 829946220 707958817 939433523 304693189 391080385 17258566 928701417 205369128 777238705 293327999 897028700 92368050 805886487 841456324 965010182 550376885 656842568 388873593 903519626 889812730 930835184 581046781 985130812 210452082 400939015 725132645 801465892 703586101 752651200 109373714 483757688 157148329 568646003 4298975 624775520 487237035 613857060 432338021 983532968 198616534 578827845 491217789 563795390 228505621 297758917 601474910 892700525 316859197 958080141 453774143 836769385 956929691 970380055 103027004 268256815 743388272 844232610 534760673 548879643 209544419 796042840 81789937 952621295 504470470 811649917 836217726 983474731 828840877 963767810 876089185 949922909 496114398 998644463 692088457 803783560 557730811 847039136 270166511 638027476 176419230 351719739 533219425 541886930 317676260 573234253 510171612 621890343 658542578 731179165 645797508 916438333 402285108 596921573 640217612 858413370 254777390 939606851 2607579 405837126 645633900 725282837 730185134 734490827 873809178 907341111 940269684 993562806 157649852 597764187 580974691 763055348 634897036 960593045 812478551 864835104 266400013 973951593 115535018 487805497 490831933 792324081 356480352 990294314 52971334 970503818 526853964 913700920 1031070 64516011 206172294 897317847 866501984 875683047 532271998 886499973 836036280 876496744 730576582 877258334 795599568 811214161 606778072 654223119 789522813 892099748 978393955 992645284 964104977 986578985 994747069 999591805 385987948 602930850 619555613 635280379 611969975 894862958 545953322 697988728 971492668 997031245 637523162 940597552 396501873 522806239 321782205 387520561 314614724 543004151 750297136 951306086 593617728 947046850 877970005 928327649 629838969 889767983 95193327 503059026 235241763 792348483 481928669 915957243 588467053 740783287 254577839 729536687 136764521 441500969 911564808 938163715 813792051 989959689 153988058 408061462 654948532 742212402 101442427 344173397 635562978 851351612 24813834 833746121 225756281 577077133 220787680 675776563 582136998 964770604 931895643 991366047 987074278 995426111 205973337 800530340 960565144 986832053 436929654 845895239 615710285 925605757 850521416 851296487 383872552 424831651 899827658 951544503 99641166 876198421 262314395 717210987 583763525 756230930 26553424 201508814 37459710 569874762 827095938 999525811 92050449 592504505 532802236 932830329 74141983 750281678 213803834 216944064 218544769 840907249 839816170 840142949 89529469 726810605 4722040 163637149 665937778 958626200 444390106 755077736 139904837 589788292 65606185 356748681 75860937 112203705 360861921 803739798 515959900 525912976 334626506 362255094 463888384 635959783 421481036 798974917 429046612 779592413 964146104 974167873 134745193 175763161 536300418 628650787 805570182 822372927 588289405 816776786 228171058 611811240 428577573 576187040 923812191 937032130 111568992 898531183 256358192 485288025 603947533 680059639 719486233 796701995 724884185 973115510 475192920 740310446 13748235 899416708 313414985 926908598 129406667 573217751 648590329 880290782 23029239 348048616 536312844 934455511 498185892 513362862 614154720 911005964 117161356 370737287 192648622 637207999 71853486 760190342 471514811 785257304 340367091 838865264 828417622 849235767 549502837 745191911 752415740 935307366 58266918 807427809 407584367 624960594 404198036 830786483 703938447 949331966 147390033 343981446 685004762 949255452 76127801 452362114 913292551 949531206 262982359 814508948 6019422 632036862 467893579 844145143 322609755 977498721 967047960 975862508 54585024 304833548 966087708 970504705 728932047 932674337 426424714 965524409 758828169 991124276 778515251 854414195 872742276 891925264 578862026 791077024 756257389 797961748 701107581 703030034 924006971 958013096 664369950 705976897 564781838 640473078 911867258 934698903 62186691 537056124 755492344 803367947 470072718 624674335 859526357 962112991 463219014 738912794 683763794 902050883 18528224 448693114 388520363 875242350 982970341 984382378 978788858 995781533 526557094 647068620 301040246 674440905 72626276 93926191 485948485 799299219 429847713 903754022 867583385 946884840 346577209 389339060 697318810 938152394 165393354 199616383 136958131 780858966 850721507 877215038 201116976 478088583 720968377 896927732 711768345 988660663 904928941 919012982 102681149 283865296 573090024 720789330 46434341 74919571 227846725 429325135 206993248 425421270 324038178 363545481 430786119 921092474 528583838 680345619 6450387 912611600 341444081 789800368 242699301 654944395 353976788 393607979 579588187 679462071 901009700 996777782 13648126 233324531 870667427 894365015 635752681 815663806 570061929 891968891 54216204 266432191 242513169 593884050 691950680 706661936 836903133 970972307 667786331 728827374 434190024 655546319 180390231 774234497 611337526 661120062 459633602 817874672 425804270 561882220 469386138 668076667 323110500 606379045 858052595 991003360 381367962 425093936 481742056 509786399 23413431 557303144 482950825 893176819 464801504 653342035 9871975 944803379 781326627 917641885 71195401 906687218 773879757 831494966 960884004 992091571 733120035 828545266 837801974 971037261 611029595 977550479 139664008 845912289 927550262 961888156 201460045 614348407 84699656 403317137 794656822 894998549 600689358 967334428 999030792 999781832 990828538 990980847 443674672 449129220 104383481 682533246 283415276 878752307 785690923 873687081 273818659 870688462 200044544 736667412 45989991 887205528 817663185 911698602 466280382 973373048 135092035 425515760 969538072 986950696 772508172 861831807 340600278 573950471 274154645 731359419 365706077 981448659 448176594 702423897 923972458 957838051 986424294 986787675 144715225 991699716 647268630 708949386 665603079 782045879 29028679 304458229 514614463 585696789 543079436 826249246 44274120 328171107 754272813 772348233 668211707 796905028 5707826 460052502 876696813 949385737 585249772 913584558 240740756 571657947 322195531 565633457 106543654 676166924 338929528 910771778 604648460 760939332 496426129 643389060 254228285 684876339 263747265 468051331 290322736 643264047 264435054 944866335 493161725 784779449 349610755 825632696 969492275 981042004 714477340 736099328 738535818 880089975 665416812 999795404 452279749 458741062 735828360 977366057 672565150 930614933 890639878 940119625 941854550 964187061 756831500 796951547 790797736 795550708 13748124 541689493 323020282 595124835 879293059 882760710 235814859 705306065 992469858 999770192 611734163 783393165 700469263 990493610 324108705 869306667 302921099 504732704 99658790 366316727 988058340 993737146 167649628 514012416 489195233 982355670 473590514 859112826 148988751 879161050 775259634 804752510 710619958 724152351 883245123 888991764 587442889 748585227 767567407 816859951 955490535 976970525 467062275 609881614 632145454 873970677 335660135 911445162 714738043 991434402 925816853 979820705 969890092 991153251 438223372 698685631 158828187 178347381 479952560 959109720 300067654 956466603 882766087 941857130 311039742 930353772 394385522 855220929 762528668 959313103 843371225 860713574 894544322 932366384 905878658 980624292 883384020 909032850 695679249 726541868 713404711 726521152 314491011 954386523 310449851 599596601 194212036 332382036 388586813 627256462 517130443 877562236 303606977 447445014 671302510 797858951 682983001 799891080 561139777 899926113 429983103 971749670 291954987 446357292 962511421 996647283 235727921 773043964 141857438 147070373 29043575 636776624 492908742 979202457 607919196 972146550 855352383 941590672 945243829 946969351 693661086 792714600 233338642 428912631 411740919 944860053 537494940 561641802 370550684 937502226 433393165 679166517 544186719 560415052 916625622 928514149 142366218 420926961 259987666 985341113 558217443 981413719 420033303 649089734 895714251 967864542 601732214 695497188 863109374 987329105 72820355 986309460 229134110 241896900 846139690 849185386 887276501 888974195 605758141 752462058 783662682 898863954 318457948 820256389 219425033 502124463 603420004 831780141 58460199 469764406 489588214 689562812 471609988 681881584 451662237 677915510 658573145 773320888 434496115 948966625 220538891 234035716 21410232 618088454 282688040 702616738 731146477 882029890 853242999 901255177 531912822 882419397 215618698 705103315 6746007 93096951 82923857 318048052 139382284 555643684 90670178 273942559 356158096 839265182 299277689 485449482 476498903 681463135 293471004 796588809 866583984 893887981 115416200 943368610 119716214 657856289 452149793 684385424 369534384 763629097 52677177 112661906 343551672 851935599 999587139 999983805 394266169 437649341 232999075 908767284 307043360 420564875 598116424 822304270 874013051 898525294 699299550 741301968 477941058 571250727 509262733 574726324 557398749 722248832 124105312 277512782 347224418 427788779 799536435 888725526 982390054 988285625 843808747 994621627 771605225 807705525 205954888 672582101 985675269 986304214 629432282 688830213 82005729 131110312 213585311 259612686 86048344 619865290 327779608 908879915 319242328 338942958 563957302 942889212 801430739 917682850 897551107 991257309 639318133 890784348 791029343 996349392 441633487 957921705 107252585 897127585 378649866 761872987 65474345 700903940 225903155 949499487 581872312 693688055 162508843 523471904 559788236 984349285 46904508 408504182 14953161 435260341 378976879 530722138 53254108 923032508 967080247 975336062 899008342 982157361 478330569 812343070 455694186 604537634 722534525 994226660 536573380 785357440 637023952 975662964 581601605 670156483 102800128 293386334 463836905 957911752 248002798 356171052 930964386 978034702 245649260 950236155 600241478 757426966 869144641 912509241 136042599 882675884 350933109 685168057 761562615 897980788 389594872 588099817 387829098 485061048 654948448 782068158 544335555 646779361 296205450 365213681 698710672 783033111 257887277 970990765 705589035 842380188 844619410 935031035 495490672 772797396 496550860 916459816 295873925 496198762 118135080 805131312 869026781 915094389 91309482 746574469 217956849 631478829 559121885 924123972 564960453 943629960 931723790 949144892 968426389 972918395 308531447 703968683 20289285 254561506 576208522 583784003 629608861 808436728 731176046 947357394 452904124 745540817 173369529 759962044 461976992 855343322 476078947 589190374 759554195 855920844 762629263 931805969 557260791 921954326 41723982 833406887 694179827 762022428 709666138 878726255 335798724 919984422 602110922 639422274 959542404 985019404 635890191 890559261 86364325 765068025 754590326 928618790 235247309 716651923 153314258 330209994 469551236 516560494 702539418 965934210 788069091 926146549 978898239 980163687 62591275 278975626 739337828 849963094 957546614 989400211 131057199 711156018 125221203 683293946 152924485 486971805 267953817 676978011 315471574 731917523 553086166 939215710 617107578 716156741 554118909 815087337 624011515 869460513 947964407 964812035 630821264 673213471 103262382 852462573 617515963 753489665 490338499 510476990 413901427 681358846 202805452 259946006 388137501 467502937 266343319 352715230 115628873 295747290 659822537 940640671 503473437 986794408 703200402 773728786 570594124 952746320 345771357 826283943 410557203 756026227 647518461 977031773 86650577 352290281 880071639 951663509 671751894 749703234 78299462 622109559 941454369 975845612 503095808 584889044 844223072 972030345 277917393 341167551 881174461 999733061 402612555 585524075 552551822 938796756 851437580 991510269 476072164 745438280 498446517 923100455 247498527 792805509 740019391 741940789 427347417 961181802 302343691 763913030 625071624 697279653 403106524 700695622 238116544 698425295 343092587 942417423 888098383 993123971 652017741 763485765 955751663 999360928 389512573 944552319 183421435 309861544 136026534 154684178 603399934 955005085 448945464 654488642 660804882 667898038 442229238 791023500 310218362 651153722 278012262 363641732 611972498 900621891 622187916 716791402 986962711 996552688 906246296 918610025 104726451 619404826 933572890 956813275 118489269 494219397 173481723 666499907 794497400 984209208 770631747 960856593 964711569 969879424 947459899 950735508 884151425 984841754 173361542 245813175 659680325 805598018 810435879 993197934 892298794 916928373 173666415 673222734 350852322 840783797 320298837 601243419 10060557 423300435 5049587 609722309 263963006 819879681 335075605 578988498 613258197 986057751 735507233 920828833 548962399 990898246 330088785 816863678 82208837 485471965 349202318 497904447 844262238 979784298 328838433 777831551 4811746 257115013 949800700 987984421 968648840 986613421 837225995 875506033 361500220 798384937 856205470 986954621 667015300 809138431 809698425 904280539 24382996 330611143 850560616 871261065 637858806 688700158 764938288 769736003 201359859 572798198 820867936 885033559 399152404 672025646 677937976 844321151 844217373 990969099 997461087 999818256 486835669 944717752 230110982 962484914 993951269 995717635 487732374 550696835 296368409 805033075 735626798 992848562 615944068 812546604 14118961 710724737 393333484 944680209 996874201 998114128 246899456 396793738 750303659 754001860 16553213 265660419 733029022 846642165 5042620 449494936 972905197 994626572 189124355 712090912 889983214 928055863 142463139 554375050 35930650 422380478 511232119 696063852 908074255 958334813 913535820 955940675 435956885 468621460 621203455 753020793 699791839 999169797 789789736 948984082 214612115 920064400 387897363 999137132 178519726 667724553 153846693 668281979 736687628 808107344 214247469 959006129 967722426 993268434 727534935 891013887 400370786 619504376 963861517 993623846 815642265 856780549 271048768 994404877 318194751 709736848 412110944 695487040 126319765 175255366 452864892 850138302 86527917 264573471 978066678 991315509 138512600 653615801 979467327 993063130 467086881 531959203 3433406 335635932 707397334 851018152 215459779 243040196 336436466 841585381 864648309 896018549 835257332 857577545 453374036 599666603 665674461 743124064 438389297 568476861 986915598 996313984 17001019 306120447 458680924 933445745 64727898 246308731 993067337 994251971 410791720 600006144 433534238 479698092 834708954 955090245 8812528 338875663 77857866 590770634 496683190 942993416 404213080 801568203 718884514 932288680 335475901 836490822 832829731 833977843 141806641 491059283 16370625 241443560 595804020 983050206 986066187 999869534 951400782 966615650 513350339 641989670 784852029 827534303 361911777 702061665 813179435 978461512 540801184 562033347 913075917 980660817 890400352 908785792 591033050 869365961 829502395 957189482 980730111 984908905 460018089 722044129 846350129 944296571 13098621 800046005 512171025 596187674 355509421 566726406 805194653 893085876 650151363 763219330 472824322 569851276 517147535 739560409 838871228 974090728 992332637 997156430 596867009 898264250 904614849 971691788 728529393 849779435 729922975 850790793 27495148 242555530 959214950 978443018 791054117 969848719 299877660 808103389 581702190 823269922 751487010 930852201 268189134 618277524 18879554 460353113 823225759 843186496 809461978 989500905 225694997 710962769 433877159 615443782 30797513 400072417 160394691 444556858 41158693 394750989 547459250 870538181 188331105 259103534 541961501 693845691 155625790 616149269 947607906 962929744 81445984 178612607 779881492 873011548 104425525 606043517 713262698 986648012 562435600 650942225 70223224 290601778 470699130 869784051 798686230 930013679 74849190 97009088 136943324 226336293 238175165 731034169 263616783 658703600 738748700 916785722 634418862 976368871 315464324 737708775 191718721 829577824 440388785 701103401 303971543 600893209 655866319 768110198 640292780 683545226 809264111 886729124 10388999 983161629 751581944 774824704 173400595 663518936 149457756 200687339 987486403 989267476 733385709 884603665 107601150 634225592 863436624 961694697 854281415 939322046 551305181 788390693 607799349 716275552 555473729 651277221 321404270 569999289 943028848 962762040 145312190 469491778 951076619 964691014 881576704 916812575 898371150 944896074 947519789 986881109 859471475 870350861 105348149 952053365 741194480 937905385 222174929 361956070 314897756 906902262 895781598 908488353 370300773 526645662 49037834 740720916 923240181 949682936 76913905 666870087 408017853 454564707 139538885 965408274 331830788 897925761 621464458 760474300 426422017 783488795 318338740 996065544 632129207 949246552 389227297 679216553 359782222 778790981 279047059 834032502 284133418 869192095 86774627 257546703 750162246 982100700 471050839 625598974 173394479 440529772 706426337 710466694 905849227 966314271 754818645 857589694 965564744 990236548 796214123 945601176 318547017 881782157 628332773 867825517 545670275 781400002 631427599 832402632 271423218 573264367 865169490 954567291 300154473 329030631 214300853 859376060 909812739 910127249 223564404 832589226 861559760 967220916 781522601 802866964 15369582 573663743 557945338 562276024 228356087 384217022 425747291 796313435 638864422 673862087 635778288 792132594 172963239 700388409 588523191 895628600 145937507 989651619 190001242 933110306 865885902 879686759 628062465 765615074 593806451 863793443 350814314 403225820 585866441 586416330 867721336 931152674 802937990 906237284 482561041 865698913 970938495 983093615 179988260 379519738 695709605 764932667 808937701 930079779 174247627 860929695 5015919 698934714 26972674 973259316 103880621 708338713 380566929 647703205 816759250 976610346 852197975 936910693 934009071 949112622 645283697 746577408 281183902 708316539 999889559 999984552 420087549 559519776 293231498 871374154 736133607 825518920 601772107 991295666 535590152 692434249 143133277 356187579 466942105 540016880 664950509 814305003 406413075 512605670 135486913 302097619 517022215 724574003 577629873 882006032 454440899 853868692 779862923 806657198 11560544 923059825 177154311 710413087 768441861 791243154 317988974 423293518 449076023 877186031 846310641 983217847 44154068 234271390 162806655 707658467 653460583 655353466 693785885 944288784 579693492 974455833 388933215 734979974 544061192 548419886 834047634 881443606 894954032 918793822 436549894 564841522 947829114 968479323 517974104 636074699 791707436 963639625 84620236 945616525 722245659 777232519 31044124 111057451 839101906 931134858 276090712 351825141 453225048 573710269 182271051 834486757 588522349 739473984 585991562 601223837 270008890 584630740 855974888 917822619 174125201 695834348 237708528 970514557 755868416 819726403 21615682 874560514 708095116 837745154 103253011 915729402 858789998 921529865 450517937 664552183 503635635 767176766 834080285 951747664 89587812 223484191 627987400 966840110 864624566 872403125 62304672 76995519 819922130 881895386 115086328 654555956 343482436 378507846 775629335 998389728 137771825 346662754 793005161 795952016 357957948 725405872 714405876 830497775 872132835 970691223 247255660 365406127 190944403 743412051 365028962 971574327 257930375 933674803 771250806 927277162 861873542 927542768 835291876 868342512 591840743 633733807 599099677 910851761 268506333 927175238 801813126 925128208 448019360 797571750 860718923 860868420 770163278 932730920 699800599 820395091 543280002 606302202 969691796 973081326 51563998 381332675 339433682 495361001 821689091 955116523 250871889 872434983 737743986 868490372 587879068 821941059 652235637 976770394 813438851 942401820 243221604 970235705 984484664 992963720 293402536 764794906 357199030 911356235 633459573 776490040 146224643 800443338 689233608 746356938 622340250 682052080 818775004 999524190 693568076 752602543 386358838 815546729 158225797 186723016 179072249 893757603 492098252 550910646 722852765 971759092 524602580 964059143 520735018 809194501 976227563 991528892 679430681 760958216 166435501 483484485 368657541 430647948 534931221 649610371 437821669 971886142 579819320 924695320 150350973 312296081 85556210 781855627 749797732 858480150 135804978 245416562 380312992 720851062 545312890 886752791 840680750 852825234 230872123 295222475 250059505 370589214 161020958 629322068 648852641 739402437 72270041 76374915 850775913 946220354 655942505 935018077 811886143 847927304 684765879 881939297 773918094 909150271 569149072 718541001 606277338 844155778 347349267 546460315 324943698 408620402 798236296 867500768 683933961 835095607 348194995 690755277 724441627 962212472 343620804 642484862 876072570 877946438 111928133 129040726 26125375 117921598 898779648 909752868 62513751 265126834 801498587 900908710 895107543 958836390 264860767 869641401 225698239 745476680 565971345 624478443 146827316 603420354 313515581 927998281 449038133 843183574 624600642 861999420 986389726 990824571 89647135 434253555 850033330 978735603 602645526 713229811 40849553 782062218 910162194 914984513 275472726 545613194 615057895 915509353 2260678 658921417 204801721 556191590 614292496 813561866 294358190 447697762 767819057 977996109 787229536 902519919 235133588 242472622 306022291 455436862 1955541 31282714 31990910 219927800 526686556 571957784 782541160 956551834 880622873 961202544 658810940 987260444 863217853 990713880 898201226 954497526 363819942 741774682 143702103 190428056 845658692 903070076 80677520 163184230 99143764 411570119 181810274 501636692 820241322 991627792 194200074 237307575 935863292 938296396 648255455 893521669 212726806 829249691 120867116 602139234 199472587 534371822 551953989 744834802 497127474 722981607 354844313 490786775 799321587 967809993 114520747 223888571 720243500 722949602 696842421 789784734 494475923 731410461 933537496 978963563 561996721 850891076 863763236 950024883 937745063 969932083 616058789 985082209 561981634 759059756 113374950 218690969 691062158 916141127 36015169 706578742 432035077 717263324 381514421 598759791 771224168 882636683 959193842 963964043 345476188 691764398 913984832 948435302 552044493 597325407 670048460 833297187 193717091 578793495 133584687 762033747 775265644 904778966 910833959 960530386 785838019 858282857 674321894 735003814 851718175 877545427 519530882 995071433 570131035 701768198 775880344 823404567 878217499 903336455 363709131 556498661 15621181 907161192 310297405 554267852 55984561 62629356 750860640 919780642 196929518 765068086 586137260 592805628 392577567 957620443 708939872 733789646 62799766 681402618 171627606 179166100 24416976 101113961 536400992 702037246 668726834 961569152 37791228 484294306 189909277 362413406 214856303 536679741 631712920 983639531 69753259 215239622 268451163 771190244 560282197 888670218 760333206 893383460 792640481 989749637 70550272 741146986 645092832 719785382 94238654 553546239 915748246 989156841 48553506 524146162 250655980 843036747 2323347 625371058 975912693 993165036 481117603 992891014 976123139 985966671 949566142 991830762 861507336 932227833 786848461 853118301 39503692 404105429 174383437 338913847 320679819 471473839 994182143 995336566 912908092 992756040 63650437 818937001 398438376 819472016 802926158 878340453 51754859 270734071 722806829 739435992 302415980 501817077 276599488 350248266 932752864 975773299 129930753 397957356 14259886 983083163 686911209 800903040 285006377 522819906 619123963 769329441 657030886 835430059 24474509 315534100 455424882 698756652 733052009 974115670 781644403 855948413 625721050 735633346 993793975 994654444 496079436 640317115 123915289 843599313 975614362 982649230 248213125 910720251 897383100 957923452 499125727 548776476 595073592 971997600 284675600 928997522 18894579 557089096 506120317 895835524 825758394 956112878 603069307 744359042 826887506 911085634 644736643 659234179 432421304 573717674 464731536 810670930 824959008 883531790 887868426 946130015 135285740 724457855 724423357 782944245 895424267 979366797 685090818 888606415 853901864 939714082 464304938 656204537 144665681 840608026 734051248 977540325 765756301 993865663 528947062 644514771 756358254 933136501 849248860 959696088 747452683 807471677 566287394 718330058 598194872 662704777 403955887 440711655 279253883 497133293 599512816 618130544 375328445 451287954 50077476 351017130 954365927 974334127 491334618 812022502 485544279 946337123 213867028 308502715 207315249 655898458 366477215 538753380 30387061 636434946 64169400 263099376 307727499 785281406 891064431 992302165 766583561 956272030 505093020 680516463 841901144 942683499 269164903 672410016 322757547 833798007 772015794 964082349 371060027 478593079 163371424 577451195 971415383 990767626 609311997 915963430 298571466 331959732 447802920 561677263 993303644 996930888 277977884 551616366 197709792 243774216 294216977 613109696 839021683 934663261 591644145 652300112 136896226 957182290 551565995 777580260 956456906 957382012 2744260 685010853 144908575 554732633 396284140 577760729 155212822 869004052 342776240 800257282 189456273 273794201 184469807 578985314 191169095 653380670 356855282 814734109 286197802 582180728 382639481 806224089 569453296 871180941 531327536 965873052 344315785 613212635 528027119 708028065 235283205 557040135 42861748 584711652 3109410 179987635 936247125 987960283 846682759 906557497 499163994 799281430 593240958 939277585 339251734 463106739 424618577 866756247 977844633 983491736 103137651 124047882 352241831 933783913 921821067 945250015 324152300 707065642 17641825 74980001 611919736 844958419 789334889 964686591 885869303 979692628 663873573 805847722 455038899 660374695 124572042 644987482 259696856 598174254 427718568 648142976 67941443 741113363 993422134 994870809 822738221 854347018 183537792 759344934 374288397 960182928 878885889 988893668 978769893 986504555 310015047 787121307 712629429 782008764 913734832 941771312 51592930 392370025 709388996 735430873 564703742 833260782 386761210 963690324 334096425 793925562 742337113 850705028 116165765 873899263 12238041 452975563 917217280 967045969 853332461 965514871 434354949 666330650 286305505 344206225 452835008 584516771 248898955 522785498 821843298 874851357 667213402 950182369 925471730 987356409 899102117 995052487 297515927 414276857 19011710 544671744 991918209 998974236 189721223 873585992 876047176 997041792 816206183 921647481 932413989 953447335 459249745 894233374 176782832 555876680 206042120 412661882 361950442 874981169 474694092 577012291 605859115 684436180 790870223 968228455 738665552 977654143 239003191 505800450 55776009 117198707 206005114 862982544 773837377 975974498 534237596 973345795 472505511 644325871 795519570 917933813 260953223 418188190 34434557 748926540 877469982 933921055 132300738 203747365 468565224 935943631 14966231 247038097 588926893 730120935 754699313 784174968 976486901 983636685 345496584 612524751 739397709 784599479 296854082 517398107 545796959 991129423 423070982 855280377 582434546 591451012 323564852 938620943 297448635 749124600 437872700 722253403 159815370 840678428 680332488 928109451 197274263 661481751 66244603 490289142 802874258 922541325 988971274 994277155 371606746 392890517 831350292 911039036 785042003 995809542 965204943 980653849 737972616 888011359 696693803 716399362 307482982 421708793 470234521 602972909 47448066 804137448 13545941 976513984 47015876 784315049 65281861 225593088 284575397 779873268 46343639 431929255 135263995 943462676 262629164 569984615 989107788 999127681 164621512 767877340 809884142 994177799 458382097 598477193 411624377 450960057 477004464 694976237 719750281 892183876 901748120 924453342 806795717 943751862 330620998 657741916 305050961 596898771 906184264 918454275 557414091 869400487 641630643 900979031 37486230 186966388 838742957 996631681 940964365 996028943 996050809 998740484 887305439 966380281 703036122 851668865 211873003 398025245 524645677 753924219 946875569 973148835 604337450 910361127 70081809 793884745 405220514 936686609 132131604 650018193 377744531 493322700 206203707 578065085 760029596 895479626 914708460 981114623 794511408 986298719 990835914 999647192 848444963 906568001 768790718 779411183 428294230 936350193 986821012 990134512 609176362 814373909 47441462 487572444 90863013 129964590 345800062 935032383 471866989 978232849 36556106 135297335 69503022 665817405 580340005 964339250 488052721 826605763 100063535 525448514 361982419 886756625 695836343 788418415 493459670 588485957 485556728 998439244 265448752 485129906 469666376 632817698 450498093 596409119 353357347 396739458 311476605 567103459 948605942 994212054 305802734 904165450 343052986 800579785 358237926 785271740 84344691 384393933 558635552 872863015 648765911 795441785 968252337 973415164 945896526 947270953 71450887 289126573 520600764 849099149 724014572 917810952 83829167 101672325 17803859 380691896 940745916 946270434 401474024 405911296 380103182 703802790 162873500 700323102 29807210 108125822 927480712 973942177 807203301 936438970 247011504 518535474 98503050 424855411 894052333 950113239 129423075 409798915 349006577 617719448 303639265 901158458 89547211 822191377 757081250 898099485 143060597 989761231 231891896 678728700 793949837 949040138 205377290 449781278 788648300 996410738 516891478 849502573 554080373 586189467 314190655 784756442 552550715 588600508 173070192 567428233 276324954 660007446 672697938 815808202 486792279 518764915 906727984 947986730 966507295 973650330 71981152 101401263 313860069 816312495 434812449 898166288 58577315 552069519 726515074 759538811 47871916 185376918 425144940 649694201 586236115 758727551 559916154 632270465 913483491 961469645 660937296 726655656 14368351 849096797 9386983 982803508 256368215 818869508 236478791 462731171 797811834 869699651 284540306 765727666 630304697 973491810 272776956 451324818 905751158 964631197 990160404 997960507 556038025 715255805 493727738 950852437 922600034 964454305 855689576 954112600 995023976 997132946 472097650 586004234 469353125 564787692 427503000 732801292 465419676 749124224 976878959 992302681 976916328 988098251 543174501 819259062 780938725 906807280 237904246 299869134 22077383 819156742 328873599 551176046 864505425 901325035 248266054 653155259 120237662 742695930 947283894 990918001 218064984 443514790 607852832 787083174 51499854 693371701 151788239 404118865 858626085 978519591 948066108 994484218 2003553 49880349 851879691 912972997 834406908 977826080 138904311 417857070 846729529 880289218 526697180 954625615 650066307 743114784 587361035 844530726 994749555 997401885 717586 914328005 332325168 833345030 326728987 982833687 903190780 963207956 224074176 745569340 917039219 959245124 774703400 944664317 691366557 794385816 315282689 392392695 880429390 900443569 394233617 420751944 771300230 922931366 844412021 868105640 815166370 858367530 275498789 296858882 29903254 676593396 556756506 826446464 200977783 767108184 946325586 978971794 24495238 524674636 133668802 404703934 264862974 584325743 500986284 845181303 560926374 685345651 849512800 853345783 180957847 937681609 173849877 932380603 634141041 641906473 99594891 736683186 833052863 842689049 675969708 770508854 956396731 966270188 156557309 329822516 668834237 697166215 734127381 979202287 479824311 659431298 942854610 979465790 404370846 754631871 582475936 858603894 92974663 183666735 657676881 925907634 803448465 857386290 238436216 526205566 408671617 708639124 195695887 280599306 693063880 977971476 835823622 889982551 623403856 764674144 64033701 230989366 19861051 233754231 694162505 812226391 714994097 733174322 60600969 407873875 498121309 627600234 620754215 826929402 53445289 307467576 580846048 689045295 739245455 767428208 391259498 778525987 241878038 981643191 494857145 555133983 863450612 945940330 944201798 993261639 177493871 773057584 727275833 809592108 499727604 773153323 931238676 977258895 408568797 572555647 440221641 918109125 188227971 968674640 941511674 947743250 249964248 720633874 609247616 650118277 531056404 861409820 632754806 999423336 692772913 881353831 948098178 998559364 920797944 941713759 966542769 973031645 767990178 815738511 968378016 991791260 156142466 632169088 233247605 945699039 502237950 960479994 153635842 724487052 186080488 460358922 541987702 577807181 38546436 896405104 670227775 873062624 587397853 774269473 825320565 850864695 734677847 842481057 75375890 248929377 775118083 869233990 372298795 844251682 176287107 462107040 202877572 741847724 515507000 958382354 673653230 980442582 562124225 647598035 614052158 902810153 721194583 779592231 445659796 767122780 764273787 962525693 948803908 983177731 221770020 370686239 541909375 578088623 353744325 772396899 488057019 564275754 445807093 719269684 801071581 886823923 190947562 977448290 134142852 570773999 767676769 936428350 136893903 836852894 645306297 937192263 410587014 850730303 450771978 984562568 175150173 440390512 253039983 595428370 423841602 515464132 401849156 947824496 842850816 974879589 409947299 912482625 197148580 914794358 129751870 556272091 340084590 630091435 917703314 942408985 820378052 958073396 337386412 529097213 515420024 999106641 353685789 456381169 130490454 183927300 949027468 993253031 748923431 992980389 644126270 831362115 364373947 539928296 874867408 884180849 446325050 484000054 170954935 337304020 487595656 867042234 233719025 295789908 554472871 956798213 378065407 670148570 473397871 741120644 507316370 615183278 322064214 887943367 117223225 609992042 328839701 584167419 618117249 782472368 683697128 759451740 931620985 999763839 229951588 796217105 41365844 422082454 743947409 914418289 988416783 990913872 619996835 691742938 432333021 853459291 624120699 675843686 724410977 824255756 982030499 987255111 534430028 744578935 537581468 614480184 527572467 639316670 69546929 166604429 402524612 754647300 734886100 750487258 27620114 715373046 638934075 982960245 958397319 978181487 700170200 808689326 912524574 934907502 51689648 490447837 563863643 699430412 598323579 811594813 50732616 92380484 126751587 525329565 786570397 970833884 529032384 662362298 938892055 976036916 24834142 180630188 801924657 806875372 305122239 613987739 210057953 736927654 685762814 880246162 869378607 936188934 849035440 878545943 19641184 626308625 325291547 591621181 625835715 968041337 802093236 841799006 546116118 744161098 778337733 984915362 663496974 940915078 922417087 964815510 363558059 655240852 308946936 616518274 930379331 950558341 238038204 486706756 509575849 952128770 646497084 729029473 759602284 872788966 821815926 967162930 160077261 439581237 712574740 875994425 4793611 735480810 764689934 895424454 636537891 859087937 456496087 598072408 17949788 423283213 861060710 972614986 475432812 788322170 195778097 406504045 837979303 858369384 798107888 824781424 774340313 995754336 33183741 718108448 751651312 894194212 901077418 930087142 943338937 956696208 592195745 603209919 62488721 760993787 527999340 862419794 859384258 880129656 708415688 800119696 26471893 842223596 848454297 936833480 365555704 837947264 113903633 474107085 173109056 761760245 232466652 665379047 95129106 760002752 986002981 998369639 791988608 811959889 853247646 896320752 322422870 627853808 426707759 492063519 679165812 681385777 523699300 569427394 3495945 810558764 692678835 837094190 31441017 527533122 739806294 796780994 843744381 922785957 125419139 584530732 935379755 993772920 599352550 907768342 752719604 844101186 123156567 941894974 416626560 702784836 406632803 892688191 898921277 944029358 267748887 854397857 500838115 772778697 213040313 844357894 866640316 914108156 645751508 737772946 478775344 996023679 905321745 980302738 810545811 923211083 600622992 784377076 728687464 934824283 964577847 979378966 269653464 956226933 844213101 976157476 816536819 939693388 839783870 917962455 87467519 441757924 492103069 739564778 302725163 427278605 296951053 871208072 55413135 969071292 78418022 423283211 594198578 916553388 47980280 299940329 878335421 918186332 46507566 916005757 253706633 954110866 441482402 467238588 855681967 979160061 249540122 553914400 421983485 674585664 51454545 414592456 712537499 947070553 649726111 892311724 647870631 776434787 897898409 947225969 253470664 557624427 992578105 993567945 263210178 728385488 182705455 847329610 415362569 908823757 343908290 897136906 605301518 682637721 531024769 552550525 68442386 200064783 739177438 993983789 667453263 688074244 615683706 999691531 700423714 703989387 228007021 884954239 608057527 952250760 125459787 178391418 777007031 934848984 833544919 842607156 313180420 316896592 74311540 982233524 760827326 825631486 66438702 440223788 978084068 992680699 361578069 652576045 61849057 169553468 652434312 697113913 874354833 959051385 447492537 706397451 96445971 768990731 360420941 698384889 580483647 872324445 13852454 498970920 527524061 816094113 489038734 549636727 397302113 732338671 503242632 637486152 123407377 899451978 747592539 772797175 656278604 962509464 451742629 835761638 449246731 711212963 653311111 931502325 465866886 951420889 41607728 466643432 958144911 999504857 351398305 945997109 346505785 437786741 17348888 987134567 846016160 986302847 636709833 984732084 727943810 887243460 521786601 801295278 682268952 808892511 730587524 802264011 315841708 691289583 23012730 499917473 241950646 563554688 300819379 333738059 164557573 262457335 545632011 596932176 69096421 356896672 31793199 370131311 466755082 827321151 566560104 769370774 486523198 994363870 458776977 948644059 687004850 715713338 639861417 915045827 122537166 905704939 667051164 847351087 350971644 796270720 741447896 810052462 624716527 743342890 104060576 285282890 132331831 499743788 974126316 985595147 772563202 812885571 73438651 187341873 331198626 464692595 688023649 835207054 63624386 786569001 550200426 729762402 114585505 914401852 850378376 931232647 190411388 319500494 701305468 819764329 89051519 715597361 644470516 701819035 929530169 961280947 209334700 291952649 3251297 537471853 541172646 808424239 646183556 705244563 519463453 750891103 12229711 573775786 92872327 238423333 967611252 978232108 899243113 921379351 109271171 588887990 578978085 837543145 676869408 869524294 776326069 924267228 661604042 714926786 753327521 829641914 688971819 845243882 424510805 752800339 707845122 871116677 455433990 716785531 101054683 372551111 375934048 890065141 208142085 459916015 550718553 909104370 38110217 271530345 411089494 739359270 454037063 882665934 267459626 719455809 434829188 702052634 482934854 997968140 880533647 985922424 424864830 483448594 322774635 344976403 83731539 804380663 814425514 839055836 113757010 180052419 29819193 797080089 759900123 782278032 124739076 303715456 590241944 837607766 209609685 401298119 307434031 922662976 572346760 754594471 775360229 780087733 147336331 967937821 970706521 970994748 142512910 632777073 787656886 958008249 723115373 789713300 280717566 567848312 708453829 830274613 747296456 762712122 538946782 573460673 584443999 618364567 593778660 728876723 287725093 467134883 520316763 546603585 772917515 857452504 584633912 948369144 624160743 787332954 880055967 931511642 278721251 934365978 660021622 835711640 202382234 711426905 924005315 996270242 277156706 730742106 357786569 524292450 701609685 787815944 813123624 850086158 284298442 846110150 862455193 960126146 253976132 499592397 811283870 984752465 292753096 715208810 948431708 973676828 980419710 985894186 207418825 997245619 57382419 678492320 142224874 361128810 965707333 986907600 383467920 409042427 351078129 666684627 244764280 835923748 577110913 989652629 827043177 968019248 803969421 929892334 291199509 575538102 876662518 893341521 791831781 892926496 327712173 804888678 996891178 999986854 106795283 692349540 914992118 937713815 454345430 591585971 407278519 784741017 416277011 488519066 6354696 869944243 760145425 967995236 348487743 882900980 489504479 922564126 958260671 958330282 478270202 805810089 252173727 876695281 130096268 556964817 583063098 722851155 355438042 801601304 244467195 434656267 862694094 890356473 382301688 440805728 656921200 931759824 298900547 462268994 966105423 999022921 89021400 641147873 158797556 788173438 673372010 929545860 589477771 745639131 307060236 947389890 959319099 974524383 787587024 803322797 637177264 811874002 755836243 886294232 391315227 634265174 962422378 988817684 179757585 824390991 314456401 757738361 983741940 999313281 390593664 789345163 917364883 979039543 632457662 863666925 531112293 763919299 891796898 998020312 802327691 990431378 752738013 947927072 584558418 857791454 951940617 982924387 601562300 802622707 383743731 901835228 657510151 953712807 347818867 771082751 936399451 948634193 664303510 923802977 122252709 340929785 161045656 819927576 201396293 573946368 729302625 777180714 287266893 350771702 353121186 985873419 879900262 892666038 916622910 972725225 791369110 814386087 481439417 604991449 606318499 792997281 778421623 795419618 966222142 977446779 639734766 648974992 366700628 889623259 647353489 828657583 688062498 762297520 699381730 988987995 106986120 522610143 873483718 915403520 642380635 881678416 108974951 150154421 340694693 510965566 121724853 777792826 936167555 958676324 499323250 728787020 383260928 471923959 774883402 918086976 519158761 972670347 73300201 933049707 207982396 471887449 937047877 987905937 801392754 935659443 390013032 708506664 392808331 545286562 365952745 375651789 900597800 993994852 791149863 930336853 333062643 519202558 249942534 849876053 707141972 776689350 67857300 832744264 597986095 874411906 174710141 694690459 970102083 977899588 996430347 998295397 957612016 991961903 391643233 413824060 281825907 834278408 66908794 485074561 195443598 850960577 224284139 290066009 102241866 461161533 367801669 512137092 700300814 793806929 402999169 593876713 786632720 788915254 731366374 916900481 373770691 735310434 839675860 968405138 652376243 859077254 885682553 969202156 612957061 621724798 369268604 427562929 427642303 848868914 169482742 818926812 924712825 974492231 844808159 919275970 866348350 983501748 984014863 989558210 607709862 864810353 412055632 922098652 852874763 948820943 168942318 365671542 860100239 899953612 202299897 755697496 921034042 958016802 317747608 674535447 407230660 653674104 731564955 859910407 572539845 758441123 945690546 960479166 482838196 626688719 261823744 754378866 265741555 680170364 109180032 769194837 673310259 855359434 22837475 240328811 789179907 921064097 462984953 480821625 558490256 574240236 879520764 922411983 552307101 928116891 776466926 876967784 892488382 907682969 459542536 727860722 483319226 686441877 313530279 778174367 29215225 324647580 345445341 961533131 69976653 142359516 796356842 960310505 637732185 855617678 603555620 768915450 587087913 603613609 925958762 990334324 644473308 969712395 671559910 885598956 214374607 851507331 792871251 832886934 767173975 871907781 622233958 860120657 451866814 699727022 258160871 703615200 311201821 766405239 535683450 711928137 863399732 867499233 172826608 258668737 415846580 831157313 366496781 909060138 541138795 719934446 365232689 750123974 954263790 980967150 275894772 384410832 957165345 970311067 585149341 713206311 239257164 588915463 867747442 938384562 678059543 902821344 540072760 930655403 679242827 779358917 497634171 866790609 492976128 683896371 147636966 800847288 315412598 660400743 227577334 628246163 780221710 806596240 226915658 934278797 523218809 696222986 764685208 989271911 736592574 922601421 543297400 917824101 998344244 999183179 698913653 810465598 403164383 418430970 144328427 210126716 870549210 905081088 431970795 713682525 283656920 640069651 606027911 754723119 785591056 885093707 337099255 443819418 733514881 956322947 314718496 437469452 895669988 969020174 499086906 832734850 669948621 958281679 270818783 944965961 21897681 48269055 663864277 884475046 509582613 584619994 555944674 754483165 553918887 793051211 190984038 291797860 733084848 823612149 526861236 545746296 522918171 689510684 708717922 760828793 664226459 771868619 201704479 470527343 269220372 292554202 820622080 997564578 928191039 932153314 981976636 993445736 732547644 836120169 47018923 102067171 278203893 320749704 801967087 898184567 887979111 932495984 623339246 944086807 710709799 816654378 543568089 906607871 209336794 728914776 659501310 985001634 243311156 904060666 976097764 986874652 405235014 559640903 523192877 930840166 466569639 839647317 82304721 876366223 873795381 918777696 430237993 805440630 260010353 620415807 473543005 724507857 153588360 348848941 453323284 906915516 609971823 796702457 681848623 685970073 970425046 999506030 726602909 877806053 502285994 737478649 200807143 798493209 949191080 960496144 894628311 964430786 483381432 688512655 257950210 951276635 640910693 852616918 622045677 850365639 947076272 969656488 325893288 758765102 821897167 958647802 124111444 691351067 983678647 994919535 293349096 295777493 145245982 663209313 55439756 271944476 281881706 997962693 203116996 570572880 190566044 585441854 255856906 342233834 756331141 879069224 320756758 650952579 458609724 907928772 901746009 933619292 259850739 735399197 161296294 445366495 197134142 475911285 700293269 880534436 979621948 993551240 538915380 797049651 386615060 815355773 701819856 783758167 48731468 858137222 6487197 69843403 670885396 830700135 477402027 664678984 716922801 973571073 679619840 859760068 38480443 433949313 695468553 862197608 854647584 904683502 211144926 265762840 356263233 483496120 466877691 589235865 671717264 913333604 876018815 941178849 863850542 985133743 711486703 867830720 586546958 600578757 244300058 451405858 305517881 330439387 974080416 993051921 120513798 821603069 393311051 731595447 477621527 543856690 427059700 589238354 690183362 999180920 345965786 887180049 910569323 932100527 940082712 984472620 966657821 978221919 949042613 958501137 516782280 603206992 392810218 393603509 849553245 885636042 551627079 913412604 128191342 139583254 300890736 575996953 575973261 914203968 61308176 364538964 541391179 631106917 706731639 734092104 217538047 273713967 99805133 209971297 70997537 283804526 819488895 909660096 669047624 675729491 895884029 973057184 872043676 885430377 826450995 943383169 61211235 871167157 607388631 954964090 124852894 501813605 57918786 976016421 997405659 998849318 552950821 800163372 620475890 634804034 386749030 944710112 901277576 935112640 240283032 926123859 647672170 998970616 33419919 548465074 132100282 908326043 290375611 452165337 467711725 826256105 540089027 571740656 203704490 831475481 561463202 599328073 629100984 711573280 561463444 751101576 23688382 571370513 986171064 989064617 543893073 879422981 417546383 629744151 896103786 946966232 861319239 915272730 821657126 867052414 535943318 931585486 788211694 877023751 700756797 988451299 410660877 881600968 303375071 424973077 202781103 818703762 410894001 590811069 853448227 873368088 152442817 330492789 76716154 565180061 449864818 676653133 559660234 560239507 7000757 654025172 494014625 939328117 19319885 249292287 136803041 585927809 183386386 836184178 616556799 961909975 925083364 985780843 922253915 992194392 108740138 689048748 374465608 954511721 516723968 825058621 367743246 484944981 784314422 890875094 430183240 844685460 930880436 964896067 752880565 972774667 919754373 968736690 846415235 957605383 476178602 937657180 210775201 854788237 93673245 206189001 193809199 888472582 178390245 447553605 293525400 437576570 351529299 556536979 597310382 842100385 796314684 824001012 626581027 988117061 365675970 722248606 760366278 771350296 995240104 995365798 68597924 955800265 246135305 945708188 251829290 642003272 207091955 320556435 616399973 956053058 668927778 759820219 133877507 654749758 550622301 719545672 809958095 813995291 839573771 970548797 472434601 530066099 890773252 933707339 699163744 998366121 588522178 747546302 42643518 547870792 971628882 992972651 220568717 413293282 489999960 687404362 371206707 852082066 980044355 982775870 530316472 982054606 779909 215655820 9086629 264487384 232264438 981814306 529813150 697658834 925934966 958763850 998723800 999789338 430096735 821062087 473626276 798088836 468613791 549581896 429854644 526052006 651407966 802455787 393230748 833793707 314266485 319747949 888175107 930402410 345481466 629767729 665949512 803009816 119945875 186020022 25296429 63349677 518839114 559165763 844398792 896656055 349117308 535015971 313746424 882058516 88603491 245183041 912372563 940624471 555991652 994268402 862166156 905264373 599341425 756547935 729461811 845504821 830099701 993013798 844777460 897224171 717529778 722264437 59614484 475730285 830154823 975952297 416942596 733836903 687821305 727461570 209337300 307327658 562499743 615115644 51930598 53152081 390728911 468702827 184071678 402487442 195585515 276145704 695125411 821453268 367686008 630354636 496053596 899494026 871202725 976724922 112699077 379416090 472460727 982618412 507593982 910438533 4121877 988214360 211478817 765280586 230841657 339147415 392626620 960654533 925871168 938422269 999538682 999814863 663809657 882100194 154143418 393117686 14744300 646064920 820172818 911162566 23715145 65630589 944060169 960482953 976635964 976843029 724312228 811637879 317975491 574394380 544128888 771351750 979345019 989547293 309244444 734269375 137220138 184850474 785092047 837503373 499856006 767175306 655383374 760052221 564610418 733899671 309889431 793917004 370588822 858703970 876990169 890303651 916793173 983644550 384391780 955629248 565041317 867876288 982164617 988151156 881047525 998604949 588871694 703443125 725422629 967667628 402895005 541158525 349659932 739412505 867141471 996867317 616454570 962208762 78409262 817466157 462747752 478066254 667129629 876207865 669088126 798015438 178853820 785577305 752719959 837844409 89858707 507909569 275196131 964361970 897011909 935774213 266865 525423568 240101540 384687537 746280 141309380 35232208 635834010 10117219 940123201 71947908 367957190 42323951 948358548 487296294 921242324 810813983 878825208 80315582 442795057 714928843 981214408 365297239 851540335 510962 274697331 693186991 802229442 881792627 993636286 800520196 815319916 507325830 915323861 201544738 596974555 944120479 991252341 499399955 793094615 34070982 765424950 240828314 882390915 397269440 422432779 425900725 599151355 918854077 992544514 983978421 998563596 773406405 780201533 12329768 904528642 305371499 348230285 675605895 747587260 863990016 938304944 825602855 890569965 209665466 265456442 659258801 759530197 554459441 631892027 337625146 777720439 325171089 637639046 191114184 858460639 545360174 674548399 778480681 899660013 11905725 893219724 587245120 904812854 978762939 996834178 844889609 864299526 382878993 911219593 371245380 866203383 967071770 976742372 876144996 943825072 432648423 825627532 255518984 859718772 773385957 804574693 231127690 580719705 289523935 353295197 936249956 949995847 201910194 513239921 333509848 357015074 858117624 922979593 334699038 799648367 551174593 745149587 633817239 673687940 592344078 734324693 936160099 945198345 483877089 963596872 124556381 132098289 312362852 319190422 22030526 154971827 325880348 510102579 406746346 799206892 65623738 830341272 850052654 875186442 963760998 979776389 569022410 889730844 479696136 687514988 92046976 236149258 338071053 855723532 495044592 623331811 241084154 556199956 374162671 898499789 534921142 838919158 856005129 947882478 385788925 822178772 694687220 723503644 532155217 577209506 352104314 454659431 761063364 917032488 159985558 953663615 297266006 412974077 265172490 846758927 14866643 490460484 228297329 572285581 248814617 344144603 636070978 702990056 840032930 890447991 365188336 739574985 735446443 896798670 198904474 310474421 413469069 627660371 157864310 189684336 516047942 922853820 710084706 945834811 663274393 885749907 47453868 692562130 754771330 847562079 30268258 502252992 282020542 553845466 786462780 918597493 639124602 922901758 403806831 600582530 550249855 995158532 356468790 707467146 862824265 970987914 650052173 956750372 362537065 435438540 61113976 83299430 424343981 959778842 275496618 978966719 274434226 309846732 275283777 812443207 717236957 783818752 700398660 862244796 26206536 682369595 883501269 955279654 785128183 986290737 111057504 705100887 211252763 387036409 154155389 843078389 748788774 753933648 21627982 337419105 824667761 902506234 245382623 273561987 715052985 917018220 286007511 580499089 859658893 906331446 276210712 310936404 224535221 598028377 176154992 824398690 291259365 694818983 855663610 919512385 436917191 559775124 992781352 997962018 410728030 745598919 672046397 713308652 243092416 678017585 477553187 686492978 327584114 740183192 477977208 982560299 697238910 888497252 733439119 834527867 771048215 950906356 571959908 847327953 223364378 229798654 92835663 827087175 872259529 986563610 401279846 923594299 745039485 919148375 658469535 886973377 64827567 867182969 636181061 996729380 461988503 485672393 431939120 584197006 866454641 988187364 112513516 368516269 139907122 240042171 101180395 396919644 140779710 702628760 279110817 730460617 248406353 329298297 366131229 973928161 20275634 473107073 929044015 964613496 451710494 720337123 606998368 886295609 117950925 823782231 835082079 948242975 795754257 840394186 6069886 553653221 146116780 952037564 842170717 894493292 107022726 760628924 92903301 311011766 148844809 817886117 711915538 801112507 241336973 886916968 61123456 156962900 368800951 601771099 805898287 985619397 790205439 828042262 168189376 397009290 883876707 956795530 280250586 505538892 50364019 844521364 139840245 207892470 165627505 456711832 54744679 979649503 286981349 543804498 770695409 794390636 649400694 783307764 869178681 955982364 284174422 689333565 625707507 825152331 133535013 904906366 775353599 855030642 523342233 624523106 855531295 918722327 37773107 167637453 973741671 999973493 827252512 993786770 900440084 970447030 281354982 629503335 597190220 804432872 15924616 95505572 697465278 754054288 990248469 999574103 792169719 948924004 35531835 679339327 591469719 982059629 711931397 795312374 10243121 874770297 758792763 998257586 389667389 818481223 877771957 945802895 360937475 552955270 185305259 335961204 603303649 789717924 395856348 436049008 222383444 520682765 75433968 157676347 823841250 946128066 79813804 243742839 660999228 890741469 451152468 614409416 711468945 861173349 172757048 955303321 854983330 872802178 431367740 818388297 862575152 928898033 736365707 993354450 342267849 461609756 397705756 980117615 637000121 732700285 385349257 554052785 495173879 821139488 579445154 894726220 897065137 957202899 860706683 942377868 896381429 987901418 97516379 112696132 8058905 301261188 646889998 933726448 716011443 868956939 685164636 726930936 421730273 661300887 483702535 857054395 51676414 931189151 753293706 965944085 364944085 583765269 68863767 635972837 9591579 617304958 140475944 993176540 824323001 958303162 189945625 764388690 839541948 979732087 570544700 613304133 805072492 836843688 715288135 875109441 313855264 952196784 409872967 853508755 758029829 771342311 689271733 742484736 895558739 932043896 249933223 897162317 935334482 950553822 105675749 151829345 959772615 981547665 614150517 991588502 841529148 980622303 307771281 562873125 900715871 986932331 925041604 981286806 653520466 809461715 795396841 979781970 642567767 881292753 218972543 788079703 110999972 240020543 111425531 585432089 543730764 911380293 555229791 681205514 750699196 994323779 225444336 577746921 723692277 984715920 399129314 810417268 384749206 855832834 123427480 381854221 130654831 196664457 196563124 373699518 799923419 926429643 32181473 783030083 203436198 632228997 755767587 865861127 624218779 733199658 994425124 998900697 432171805 570152830 460224533 884254206 74612982 331964984 445627761 535818469 849313681 852277248 595807831 983088298 229399784 431648033 843725562 883288177 701179566 982103098 694480747 933977169 292688628 988228076 488412972 563566773 393805426 654770845 929898904 964455164 674276315 766389420 366099666 774666104 989944223 990250423 721206604 967436318 859675570 988438849 41359508 577330232 116021982 848288891 220438283 854380799 733310017 917635441 8723421 133425220 996961071 999589675 339207077 578203676 570505255 784674260 583335521 786805531 289269096 504722741 878161218 881519634 620201912 784369590 966784620 992117939 387131726 829560786 710694670 903659758 462629740 829275051 985146379 993597051 962662450 998845454 324496404 643236276 740795926 821201892 556888590 924466368 943904299 967300993 502363745 927020517 905099284 952729193 403825544 517153384 909212837 918218151 677753888 912301101 895324220 931399104 419708974 467087611 141919769 730877226 482028944 666690871 141341805 967428201 795767137 917073306 76916651 249123106 652436414 697219220 730275798 804431102 135197704 976301488 701527302 974370026 848947323 977149948 176788150 575617967 740552253 944619471 425505130 732093113 166600551 608133996 491893467 757783770 913020542 958840091 344147061 793789079 633470216 816015905 652247577 825227412 931340499 973860008 722570124 988942862 607873470 831285707 607429513 937945358 203919544 493924154 636586478 701099940 30609805 351092889 87887207 920045290 217058861 857897047 317368847 473044644 850041228 966499184 677268277 829935781 234757027 730289260 729036119 852134681 510492153 848970442 461157002 536573558 16303519 469917069 980542093 993111669 508576298 732497249 136651217 653335518 914342616 954410602 533185695 713227331 763124742 798460248 123369966 618810169 67082741 672741701 235562823 777148968 215112601 473517045 678528625 748901285 821897355 836545423 994631183 996212228 13980048 433647651 284842318 321404868 773062434 911653690 866822450 900706650 36723218 802922450 394447595 695557916 866813657 971238511 596941335 639140217 941642582 991431568 508919282 797259950 591866703 619910721 471451649 694732166 872651376 910665323 766655217 912377985 621448500 665163892 202781195 780612710 470662126 863287746 387709052 543183037 219064377 264148185 104486878 995126012 543987259 815385534 426213339 682937878 255775751 602807232 248176857 847641919 119037013 932636944 604182736 658905181 949829810 979599509 557545784 980090924 821903720 995479998 574349197 602676676 475620356 662271740 499804868 548472438 458130392 716302093 990236195 995451220 682746971 809135554 431037233 989744394 951937694 961003491 318085421 591599472 884524754 894779927 315675948 563126843 698881785 896446116 499090135 500848451 959387185 982203030 28467265 690070740 541746404 738856875 804565177 888911230 451095450 466964861 101700718 896233153 442756472 508609608 245583409 503312744 336964484 627814562 427237382 880741435 765507530 895343049 102646749 327238280 492667480 599022993 332236663 950741161 190247449 642309603 359267662 876277474 840807245 997619415 275691759 418674804 650021975 682780079 541218263 904814353 144289790 904313161 67524427 563645781 889517909 994929635 955390661 984729134 877345211 993079929 528317092 809264160 483975106 532198001 577068600 638532921 224928364 430598121 340634115 640741785 287639433 640160665 942654008 991946150 572139401 829650839 246232321 568087237 538144975 603298443 527839771 683640600 905847559 936980140 952095801 997782043 48883850 233313034 71905706 553981373 943205552 988474128 686352099 972753957 914618870 978215389 936652459 950342288 589380080 665860467 241763173 605073771 457084802 590096724 560953748 603433185 800557953 971516067 460158864 915679466 872168326 924625698 108812170 827810784 561055561 751998360 982182193 988472488 225086349 519024968 320332443 550620340 497114620 844257862 626134836 630664082 323550964 947490925 368132522 736976013 193703250 832307828 999786567 999825310 707560054 932314269 848169969 968667871 582666963 724748048 76634903 944910495 85186723 284194396 807757960 835691342 269006536 281381221 271136327 922894331 883173041 888649263 148011262 239371659 901091713 951853168 232416071 680154487 152821160 326404139 188966197 335063223 93057358 786871205 953337609 974717263 216506545 927201276 181806367 188059427 723077641 998226543 757797938 907795167 216104263 381020885 132259294 275561091 923774852 936002428 252558701 795261279 489932133 913132424 86793753 592795828 245329012 431506628 370762252 928996992 749169230 808821322 658992234 952302493 469958162 473923587 882375414 979644000 880367696 882516977 728286576 969743661 602159843 827372657 96723809 822103934 495439250 608886059 177658807 479124754 858324181 895869371 599234205 604965319 261021301 867362006 821301816 854911217 67535250 761424027 270974523 759456720 113153721 408787455 662454071 758567405 16134306 565928997 697172397 984221352 98620286 259588189 247681794 335424873 975590576 988792474 529600297 936005151 278358309 850006218 413594796 633116847 680585706 787972447 870431709 973937975 166029730 572222934 719702388 937319576 706047345 952810358 141924960 994984820 999037012 999867385 763096281 957191692 23025113 841785615 996180066 996822378 951164824 975108438 377296608 909595643 445142098 650078497 900891105 925023110 637292770 950877058 782037165 866840609 816089283 912522395 244292328 628487579 948197885 976823133 72732636 120820376 673863630 836229984 224682529 412819499 99356215 146983320 605512688 636041348 644761960 817824284 739275132 888794190 457809963 487979557 362702796 707839896 363762451 745603151 571987522 717493574 57290317 178710301 484716846 615656761 129917721 191963789 840374127 856549002 428609543 653749491 47156015 537671492 394081875 848912014 304832339 472861122 514068739 965271341 106373954 968828285 402496393 581360331 467132560 795830979 350004284 978841323 956813559 958408647 362949377 404186740 639123656 790406290 589106667 752723633 557043439 806192972 577836160 699786513 349853661 888242543 539954671 922506785 812937583 853461672 510071177 971132826 326968199 361224690 678811033 810069374 131957519 339065807 153199475 274435114 876838327 956442345 665528139 986158191 900346851 931217453 983974750 986270317 504015972 576674214 23275721 177535474 573908838 964681716 374033499 993228351 692629241 751258804 20336930 284619910 1656254 262057372 304974250 477610590 972659353 985255933 288225092 369500456 34924068 259335600 852127533 906781472 786833550 952090407 841025916 998547855 740919675 850342425 659099622 837047083 820220615 903911802 206087646 930518016 625095793 638468690 844364683 983946265 759480062 814972151 272481792 381694757 906528678 969082997 353030269 359049459 915691362 968419128 514926688 520460254 9012263 72394464 740847401 876244436 509518297 738029607 802349262 946103427 359677655 589105133 189686893 292798560 870486684 891056489 844370015 876124508 617503039 860156968 325539529 748446005 94687586 156835673 345075288 789820962 27553179 121391154 61209634 78865386 273175636 789461227 611375232 759353779 523807746 927185874 859977195 861684346 14003197 596673838 11962542 791461329 350308508 684765001 244210677 288114983 851232397 892173517 905096458 955758289 558447774 950048195 826372111 919967273 623504024 683180920 967127606 987605223 813626337 814501588 537174905 544672227 354099690 924974280 258137871 652804980 851012136 896236401 808254786 895886677 840930950 852015619 24760033 358937591 497536248 891391054 492523095 514939083 6769203 193124544 698541773 720691688 140081955 352196489 700318147 876194576 183639406 450350429 767522804 913938556 317217564 710168073 33468505 428659072 975669819 987616021 554508703 828196148 813378000 874534558 133608713 968532305 178998339 478889183 845235147 945969095 810138839 908684700 905692280 937213588 607989428 720817783 886310902 967896839 712479915 947580787 222699766 237777811 261175739 808722483 735108251 880841755 676437149 847174639 627644350 761968802 653789809 682092905 105819694 753554872 274731565 874748228 258140914 496662200 930176496 984294214 268502071 377076747 540451584 814607224 983806035 984691135 952426554 999358984 533887667 941839267 818453147 845061905 262811243 501066031 996450981 997410696 651255515 730745226 788936754 903219141 87380514 374701764 904297222 981880815 764930533 983847757 538883577 651430309 243930725 991719483 400350298 619902790 415923985 572460289 777790269 791943361 360238755 754297766 801460107 835920642 515312432 712488032 937529456 953447295 852689296 926526097 430039924 994994366 153993575 553863169 248734043 515482779 846646189 898918241 343500927 715642635 11423864 769172997 33661457 446887037 598917448 962740425 444892395 536232859 900739937 967224792 293560246 712119720 704841301 852112930 358854463 810589610 539767371 547889567 768010657 775724346 988753756 991120082 729489895 800114259 181674138 448939689 590371042 696294316 339715981 488168745 324811092 352574456 977722943 982796661 569255169 727090804 37199098 948116790 447889890 907567838 867354642 883658300 899844184 973385830 257832641 608807313 207069902 602284869 860071853 970259661 19181210 648170215 903953744 980544563 512175584 563225205 936244769 965619215 141325395 754225107 487737961 975224717 858667250 868856444 74541005 103941289 89416388 986672206 859054977 930034922 150828535 430117341 288955566 777133642 752186235 807933263 394218665 679891969 845938443 925419685 759341668 773950068 628691651 629647833 83179176 222411826 159741303 616496980 79261693 232956924 868626906 946378095 394067752 976520327 838607120 944783101 956127800 963980232 217910263 360883388 684255800 873817095 420226923 844891604 239914715 251592698 55126712 688770640 402484026 821138730 675224236 932219071 676931291 764259696 519945634 903298756 212624897 851006247 268142520 682541163 564974030 622446778 896759307 937760954 230679666 995467123 97401805 197593556 712288228 841733554 710024811 933883780 387916560 591253429 310469813 486743940 596905676 994613164 123297176 126010002 52784242 177575183 286182336 795690179 476750149 697850350 659378586 981071071 492511645 636227153 704487337 744407857 389467035 756715648 56686196 880143912 242523475 788241297 665321202 733929623 481326741 603311769 820594283 989629782 476129382 690649873 857551192 869409472 53776264 586357746 765559923 785974337 280703128 692576301 370420114 990620812 365936722 477854277 661292209 773607270 953831381 955374590 786015566 822046827 581457457 939596199 311314216 732050899 995002305 995854492 15814470 200464425 623462064 928811200 718474901 870654701 634737311 807646772 927248215 976417783 347565803 611287136 489209017 917036143 166694895 666132450 57712227 306123169 379463321 948376829 43236063 313557186 894754304 978410455 695916276 891977565 320317503 837529229 241500855 828329560 353317916 575059273 436244038 480611503 726377466 752165872 120535894 126353154 143215181 821618871 633827962 936917542 268843003 727461174 989706259 991631829 499569022 982869122 76011787 400342847 496736959 878793464 281942326 406234785 701916819 819885688 692674030 835679934 53243762 817097658 587959375 853660857 137512696 860455994 492136737 583913952 379226105 716832383 116728785 149913087 576726250 641307940 300814340 813904204 950856701 993361733 773186621 916069250 118245599 541889585 751155574 990123718 469335508 477802499 944223040 963369870 302005254 828692609 737419627 817223894 306909981 796063759 85797281 100982892 421715311 856992634 226666009 670613739 305637909 462497022 415340217 871953665 89401962 186992309 284254712 794683716 67752235 692333238 664896326 862475733 647334380 921784641 75983577 267290967 545126753 624629433 822925109 937040219 624336025 745930983 91934095 513378534 737539253 964806469 760395684 938782891 329570112 478819651 591182876 755239113 175543246 639138553 867356706 977400423 93003551 717093045 624435539 791401987 450028710 831780021 269778943 605364045 216765096 880506434 56913235 313577205 161554004 613471073 941114232 982363673 935110009 997471992 239970459 754148759 856600539 914112585 813952064 891856462 778905764 921478019 268635291 383586325 105733563 806341384 962431685 997921849 613710945 736965030 226709021 936480140 436227546 839654244 498155538 724054480 805288875 959055713 862505324 885142514 369286411 642211959 675667874 747736102 282607137 494090137 42983204 426920785 673262155 908818991 173197077 845527994 427814751 942862743 831777489 847567417 351901132 678685142 8025342 751508449 146596424 177911372 377887354 452197755 118806890 909917366 253046600 472727669 741088695 814938510 302671432 473098987 491831775 865904984 216928638 839502477 94027861 803327135 459585438 875594140 373458654 769582132 840454217 846023650 830708604 895427591 423632623 505637569 453029096 590213922 621148103 933268357 615743508 820895785 577406862 701432987 164322768 672125342 852906962 885070347 613964338 706867969 714179109 760698785 214187826 285762561 413244089 754962497 17637659 494902610 174975987 876318333 641442784 658000491 323330879 359446030 599661861 741185443 3459683 357745645 102362258 884049220 45355865 118257629 437870426 569809607 683974804 981455555 196196335 340510979 74482217 358742024 687225864 921969670 537848083 984851885 755074611 879572208 958216156 959902536 696104251 837726769 336166688 699766941 647117418 778876215 191051745 482181584 928519529 959637352 82523244 800598704 304240577 432399438 601539894 700112507 346798552 348429264 540754584 668332645 668232240 689533143 680047830 738817518 355007792 903171119 467504190 589417841 827638120 935987109 393011836 887996668 179154019 188713156 178127514 758678629 332461374 800388255 658757297 672304633 562701813 953970870 44457810 110488185 98549815 303271161 176786472 277449602 454521950 833003409 728254342 786104932 268609536 839020735 401587873 416321565 906083199 985505536 479357002 578694113 647748065 737450469 984473531 990299811 268616690 439556914 617576683 911563429 140828061 217555147 97431010 456121207 432033230 636908280 851924717 941378420 676374370 716644233 228713626 767777782 842926157 959020441 982380307 990823424 809998260 919335091 550879260 927164539 849321497 881488422 442969512 534556445 733409013 774566088 418294685 576088267 368373452 878456710 342136949 606898902 81838576 688510503 295377607 534081500 326208657 571348125 803055128 902450677 349000352 730759571 729660544 881410181 984080950 996462700 447384666 923058713 213382117 833614115 280783008 637189930 649895900 769059452 2917008 291503679 663039154 774140110 436234106 713182108 599038448 983045901 677675540 680572818 880922524 967181290 785775893 944851469 467655316 939479936 966683061 969124222 687554169 917188103 39983776 344684955 894396766 979759455 84514425 160871008 792134077 900673892 667342032 842831345 297035705 921374840 840594399 903410358 659202529 664534712 335477757 406980761 471905911 611898858 655990217 978913066 304504565 488619465 914191528 941193767 19008402 131155546 411519280 695335944 599856028 694993665 853120706 949539273 133864770 589089054 724774032 747325419 605113523 723015160 626509117 959264331 814792470 879415559 853378232 884328395 514664824 719709209 633976456 835768576 692677644 929198572 757738316 813758877 520466299 774538018 44751870 874708552 64753918 734726671 916445439 937837527 813162988 832734968 531408907 958137335 36792598 308804335 549867537 744202912 760425193 848302260 59041294 513084110 136757892 884149407 430660560 649119543 871412862 995525955 104303256 211259968 729663204 844181574 640744030 921731282 235599208 673540699 415966846 879609916 875471083 887941683 993994009 995698463 210625653 803956328 861171608 910802793 590021045 719371190 820574329 979215736 469087133 491540845 658033460 988673476 986591771 988071455 791330850 795940760 544397545 585374739 169230583 323680838 748288055 846508346 882127732 948118666 925477489 994022038 226165978 570523082 74803687 715485887 105627157 301166699 171834171 907628951 545303626 748920440 606721922 723032655 282316266 502779091 284120194 881548932 219640539 780644535 822986121 845705317 189348469 866323666 153817656 859046095 238994546 665447976 224871715 899188981 137307563 340120179 161083533 819004381 829876244 910115545 169531000 658411673 398919894 750268403 493602670 683594895 769266351 816172874 354350513 570077634 712816925 994618894 861478866 936064295 919243794 987230259 426566014 953868989 578507327 628234754 857129605 963819282 745704448 795127996 370872642 743412614 69629625 354851435 516565292 810965761 423106883 672548134 473908824 540305459 660155758 848218309 357712091 710945002 700352297 777543384 813817583 869860542 431200137 798197039 191401435 297093736 410338069 473174433 848814668 870391694 158648084 845962392 461431025 711346225 899498894 933017948 103731387 308884508 966463026 971091228 295752124 306276674 727286576 789778083 397890409 514984484 123225290 558997021 472195849 884693477 942405014 963794559 812120781 861835746 511576382 712886219 790059128 877735342 421364717 475197774 758673729 863644054 340826633 647033338 866810899 900475035 285441925 562699510 774617220 870889927 611824376 981845060 861140319 997687362 846479260 861508997 273111167 377854618 558370540 742833973 593863686 849038558 163848121 458398404 642543505 652987084 32359793 411450331 777008750 893847590 345548409 525044865 771904761 797211239 24463958 720178231 570095386 934955484 473095683 783215839 281912151 875415346 851948711 983914219 180576789 252022377 613832727 694397676 756458262 926472621 462121565 634960355 352826616 754177392 692238036 720677499 910757868 954445070 626376016 785380519 187134409 443306550 941895083 947259973 543557166 893053617 308529411 769723139 306314572 714231716 820599683 823438383 602100819 618492198 720944534 888532153 193968753 899751182 740537607 762831703 974309647 993552737 34512 220697974 423198069 972262680 126862604 685591657 215723905 887654912 776401925 958459476 911449350 928571700 604085064 659012408 123659297 955808277 43804419 241289529 199172954 681485695 121529598 514571178 161448962 749527177 968808225 978227804 600792917 877052819 927854176 961447810 548324139 612728815 182651335 372457620 687127418 712534533 240735089 931640259 246491081 421055258 770516944 952886752 868499431 925913342 824076561 868159039 758423004 780167294 828338599 881831396 42727176 492844819 218744953 935727757 221950330 360720188 716145670 817373629 910362680 913292726 16670631 480068731 228801196 404966678 665238794 781894119 529673035 718694132 536323560 681849278 263953728 387047762 500570968 609791456 628948237 647007841 518813007 969094184 35026340 880364127 276889331 680641109 770282682 887969778 374556060 704349675 986996921 995313511 825985944 856561792 27879959 177222254 136483197 569878340 953744863 990249449 775202623 900678506 671173676 781168365 991543513 996855615 645052374 646742024 439084391 925468765 619547043 842207900 113749584 783096073 40514824 106476933 416204981 853009172 593693821 739075577 160803329 632448573 816852507 827250264 280965168 640251508 128422777 455269108 833058683 974372696 826500132 967875372 448761283 672962932 421566517 869031794 129513441 437144241 185300518 358273733 568598978 943463233 688604689 975818659 311391281 999306315 72451757 484345813 724307169 861899934 98444761 103589689 457442262 851631624 716719091 932408245 625856831 732244529 744481967 799093364 986453317 993291979 657575168 677364651 11398429 75404225 450642622 490721756 578930120 583617664 692104323 917139235 871460596 958317121 867729337 875246306 294433864 660038656 765542804 859759610 201389786 553459952 59032605 60922113 435240023 981304419 133488706 548161562 800333150 895333298 906531438 927539288 479162517 821389946 456917782 518823979 225803079 270677360 192976495 614973323 426801320 699688137 770254708 979456404 251192888 695207518 882374234 900871723 407533742 643528384 685082914 751250568 147853681 829174644 592745109 779692391 673899829 942474201 732997923 786172879 219113880 725155260 852396537 917724596 167980567 585593937 400635191 480523162 683491301 759020469 419822069 670178115 708723894 802167729 133745779 856467249 325817997 813382119 682412684 686751071 498578873 649331999 841155418 914650327 401241927 415133176 78462382 769750164 795946994 803557148 876682051 998334918 252835040 294312123 825480653 968754130 661027306 794103829 104469239 955467736 351678955 736557486 341681067 951400378 834216987 981723228 978767355 991655092 534959462 619633676 16153391 217075201 509214198 740159570 3942931 392625919 735794712 803592987 24941951 667069935 675671101 700680876 229925374 479601242 103662808 145224326 570141541 711282632 246372984 347738097 277606970 892942192 822954639 870702721 202419020 272758039 383051083 934032375 600046601 666190491 612025309 855092061 188564841 598651562 898665615 979502064 243171089 294826193 17516801 105683663 256614985 547452727 465348314 793298389 683865117 812306613 883958549 946207075 751128640 772301488 1151613 334137610 365266268 422961725 450662513 859520444 999924769 999947293 528977304 634335442 944616969 949138895 387679218 390804812 693381725 836922201 891610175 957696128 992208486 996488421 511074314 804986214 593918147 717503359 930421557 985565390 946753737 962368026 115468270 961155185 737665401 881075869 144510008 918762881 44203593 494170773 99196726 503454090 162306518 631550133 964721032 993636942 372913629 429965275 242698027 384268872 739303354 750032780 748121411 970039347 640797184 723194711 812865145 976286048 699316227 947337256 551239092 666377259 93404481 395426281 370399998 941576770 429748796 765331702 866222601 957687410 762095055 895895689 623468305 924364688 532642738 671396433 653338309 676375173 130174850 605531106 436084500 632023418 834000548 888578465 330587643 761143861 522811815 635036095 304591684 478515350 502743147 827810954 672532580 952648127 673558945 697448213 641068607 693173493 933546095 960328042 9820225 456683274 827845988 831443848 315383635 363585052 646043082 990042072 961740033 975889418 375739169 751284452 210374436 484200880 690287346 908932499 23610420 869848458 173301395 490175625 964403073 984954389 905006715 922576039 958034054 987972990 164401127 590544193 112901859 754984306 702713680 781370269 364056290 518282722 870120905 910003798 494366280 851023884 140034901 615371166 632487541 829394316 315463297 758467094 982885854 992973342 704405610 960627707 8693598 948082434 353938125 449959726 128253079 384671278 958126049 995635647 648148209 671666594 206956064 620614625 332219647 629790597 336096221 739602963 265981628 320289306 121010399 441591065 772133986 916975696 495749365 742383581 56277875 650563157 660694742 746879127 254343235 860197590 992328455 997172003 449723633 975168487 385975901 608554171 853792730 964403223 863210816 914497836 25850972 803989992 477945489 873622798 524655219 881142343 868688004 934320524 75159659 795613157 937135164 943823499 495700519 934243156 201953069 742503240 618843489 834275699 259466770 370766931 700069121 714285787 868647841 984067319 427563674 468463251 209622948 879263618 564371591 918193672 289130165 971096289 173504820 230916220 711409116 825372635 945717306 952442807 573354225 915487667 213701254 506279088 804968390 959105993 209401501 561279120 412838518 959304018 356990217 485672162 940570665 962577199 118588037 361980537 748062353 951480258 997136054 997657236 260806642 807544205 174919502 866895346 79191222 929738951 629718270 709153564 624977719 663427471 811074194 825937443 696054958 925992958 979801592 984540331 886150781 948276072 76106824 718124451 24654875 299334876 602177658 731555131 708566530 872085483 944036270 999934059 668404325 980676133 738771968 837639588 633316737 914002955 18391595 677331442 926971228 966865421 36047592 274558150 1003165 701394877 806579092 893958734 961793865 982040245 738708560 994236306 361151368 864753134 678526144 815807404 435457345 964168219 179132525 833404327 478469066 482592400 848318720 901579436 152878055 341680124 381238817 875516439 758398626 974695933 184274885 538359299 132256044 836982602 804852479 848975595 387385854 565825246 93255556 181681494 766477327 856657433 134806538 963838610 755211316 821674788 164726727 796702219 703878008 772535670 879393053 886516275 988343602 988559788 917996922 949953645 360958545 684943798 320796047 509912051 620604847 825066193 246651360 716924466 154560609 668803297 379481965 908577092 71991311 425596148 525824562 665320697 131718049 367192401 916184923 978618042 693400027 700406233 344003082 702971051 176092309 612690993 237316747 366576838 73586275 421757684 27646712 495973480 281880611 952790872 772388537 898352633 567884625 932148861 292859235 469782387 595073909 789648697 356565528 635689290 921056404 993666242 245054704 685822213 872837202 964105088 894426571 967027594 745279629 762484519 402772060 883007430 223934240 260349699 663631908 982949101 395181929 662136265 809750089 885414145 215007888 215822264 463736433 628005462 102971281 712418099 147706370 168013926 889834468 922538512 124868384 407778965 219878179 290188547 536907872 837621174 813184281 890923401 154520137 716489469 350344319 820175665 400933767 956287893 209997146 924480663 243798850 846831313 215441696 242921064 222078788 251764781 84631284 253322142 549191904 579346255 40002501 494705946 371124693 437068046 843034875 889393771 240769969 942450943 180471737 936789563 636837373 764113768 590499902 786267407 791908650 867005051 196904964 304904218 922797144 994327459 658044116 937183413 510787386 728546910 582175765 882606372 223770421 808308248 227399848 243462708 204635789 410590629 668049311 911051876 188200563 666630997 19956097 903467630 324736362 602223466 55734848 741086792 978974894 985445249 752268285 792689385 205593157 740677291 620741638 723343499 277846296 758257110 615257228 854186231 570323094 897126426 904094182 966899301 524525217 631661037 163825504 469049966 805099402 979490335 11385632 467023235 934614765 957916154 895155985 939215812 620694183 660630298 660404360 736801987 324420940 411684709 465795549 861405287 32543951 821340847 446974677 491042327 348661707 384315547 882883504 933170661 26457571 387357301 207004160 697317070 954200002 966855889 507212996 938941673 542259440 675752955 299174055 322141246 102170853 554216887 574048747 694351579 552291852 823637185 612281429 895489164 922359364 961289948 497687137 917782559 120087863 775767857 929393129 961184338 278307472 822870490 784688444 893663936 397686675 454611975 533482828 911919832 342310507 728211363 326537255 798928736 260084462 855725927 451718951 574565086 232790526 644462583 64915946 678006971 618564431 959457563 499272907 538795428 443877694 523593039 264704602 967018228 235141624 522428494 451087540 878010242 337020311 515962951 923953742 976952166 839083443 840752186 403373335 619836847 686004158 884499632 431592190 434427477 875735642 984032902 735682185 959978857 646676767 654419916 200884022 468981039 857375830 872566714 70903000 387390494 194285642 762170246 710058979 851737645 153512456 672024690 937043584 941946769 576986853 924734382 501915881 636154972 261082592 926566279 626689416 987704450 484002992 512601641 153549489 263729842 955412741 973217114 748628076 863627081 619537134 700045635 252971382 862676499 756126859 810485924 400645464 909966157 101922934 820060986 665986700 990951266 480842839 840633396 648907756 902462270 721894570 919023722 149370875 960338993 247807508 560675208 6532294 601531536 764551253 777900674 270179708 903384913 244043564 499690131 384266284 431826369 101341497 501581093 647855762 669330368 361889278 981642848 753905034 765263331 771454255 828909680 145351278 799853196 849725484 876270378 143210369 265460783 988530644 992821710 690895577 882805293 401004861 950563768 908370099 927663537 910227583 985344122 182353919 666339412 688914107 699454497 972187340 976399558 675802239 862541717 373101910 382037594 720429767 936085398 887357133 958302550 970451928 987750817 845211891 980015053 741831762 951611593 387389516 956521462 796703803 958004828 588916146 747002819 974344067 988661159 684586876 746936070 879684189 951864135 434055587 529222973 526786506 554605178 194578997 454194271 936824494 938111411 161932060 226053294 766970626 969345375 807479422 853238845 957080707 982946975 391482984 890552715 431455801 850071375 104480881 655642831 820521964 977616703 839058101 944093060 912414693 985910737 600009970 851429370 640339371 759877652 640613573 972583209 154849705 849714248 451710938 963991006 527333199 671810672 293901681 985769945 518840582 638685992 83725054 322188367 2562583 894196739 190407766 577316174 244779681 405708328 821504163 942197172 63482237 402678307 863714120 901305227 389999584 412300656 540293502 747304471 553748225 692283994 776460428 829499443 673191472 763745201 578606392 978244248 110911292 813094667 747521354 964288307 259802347 840101758 363849765 646478509 262203094 982208441 878817636 981095228 580840169 663104577 399455893 433480807 907289951 971889770 314084990 644160162 238076776 654840334 417561904 755090936 839304706 956948596 946857499 958339813 349761050 633225535 404965011 780560368 792253973 934019595 806047369 820818142 689093156 974654199 168209777 321052847 207213019 330230761 293407186 601487122 792851731 869264583 235776748 642704111 39627878 467570800 582037374 708725243 372722710 613772960 565400353 684808292 282959592 845448085 885908719 944685544 275405585 512544968 19362190 304095847 237618982 627521211 810771201 972639718 440641197 544573944 50323142 968490465 672775769 710239852 722010108 850286061 957471631 991565663 258422453 626946810 453726782 541137339 372753244 774450460 764605574 908411716 657581478 968422703 174666428 312290180 59286487 552972624 77390215 320278096 257879716 874415210 984854497 997733117 370671442 692961913 276496925 674998718 170628309 193144778 42755352 810200415 850103920 931234454 609746529 732866612 686048835 736932672 193402040 672405078 716605141 889024901 845229283 869176909 304859438 770281513 953050020 987791093 824134249 883349103 667298829 690243042 479189669 570523472 977435104 986017225 687989457 829838329 905190220 985667750 409222402 869848972 659093307 892040426 584955145 885844337 447913175 769861690 690918466 788891756 496570224 866999836 568326829 735477366 86554257 534265225 557031269 885613041 474872884 818658262 313633307 689244878 990397656 993457886 752177934 892964477 286757878 528615737 944896465 968636396 874174597 912794954 324824052 452881200 258353304 738875947 201848240 581935909 554656456 720794230 148339438 735248999 41444751 490006897 167025099 508665792 840328079 859231015 227111878 593656068 296851227 662602408 696387399 711709384 542141659 830057197 758413212 967972635 727141974 862951717 434268888 677820408 953490445 993291888 540442562 790330871 580195502 679689654 801283410 875901859 232134639 558707203 479227992 580885500 180699169 657994965 603313791 652321275 647340973 742657821 176928350 389876766 739530843 900954200 360599296 927508941 29825528 978951830 966404889 976724056 211257570 995044028 66823263 514082981 968940871 994868318 267243562 274348440 160778717 388686917 863872961 974813007 91097201 789033925 317001724 960299848 267946755 786618821 767835820 857480351 696880805 944724815 530634896 924259539 155237263 729224161 63213199 67020294 151599583 716779733 895369560 932541293 564662147 753543235 473603256 559070742 680461058 932417731 545754511 941830805 926827165 989044579 244977772 888397295 961946870 981489186 66103018 335702015 665109386 859716193 937045958 974147173 362279475 479317818 336761257 758074730 854859752 965628721 879684145 970659067 281621223 945162341 664917136 775769686 652348334 880892333 229900013 913923751 962626159 976150071 968657424 977355299 901779452 931980364 881894204 974341556 511248492 954970418 952380836 965907913 169637646 768714101 872428767 941444982 892786988 952044874 683319603 919092670 979094766 989459541 931418091 946396511 560349440 861559017 147056580 696092246 846455798 933144117 612951642 942898302 911513935 942591815 152380764 895550960 411953070 464181476 195336153 279385292 612190822 997320175 43261430 303816336 358872202 823399458 821394524 977912736 909561928 915822972 733815465 889336062 525574467 595924168 473232510 699914705 441416323 861043465 601399271 707775645 207450439 246287828 466353849 699647638 918353186 926264654 926178186 988265432 536157221 630269259 863658487 914619538 511009600 518946053 322321840 412612304 43081811 395599140 817460698 916997814 770348297 961591205 170681125 469961283 626309821 786737806 668908857 901292182 801459126 853906880 152419581 914045212 418251829 696673269 383293614 872348814 487528196 628895374 53167849 208110863 67952746 134298108 51697601 839598478 402539397 682920377 828794885 915722631 221735103 342258408 511849957 980132593 876804572 996521910 970561155 978939254 251634357 772070187 72420011 135896337 961014499 961849270 310106398 554007691 665041225 849103443 249523575 325397772 136543352 167344955 43110657 875253046 270199115 756236729 175281905 825582464 705656856 890290205 875115629 997076592 234313731 836983968 108377326 550838743 569089852 853379017 697308482 813706376 566384746 749826621 353381628 678968383 383220830 839956353 912190930 970886380 940535758 973607677 139430811 564161848 628661575 659990939 575886342 927624788 50557786 103560925 389860338 595211486 8584481 456836377 408088705 499398293 234350009 241251558 298397650 962486195 571759768 643322496 70849305 515302679 310735932 790850382 958934774 968662257 665357836 719783322 168056402 460579786 494971777 763331405 89578867 150240284 626360404 824259623 853384571 886605907 782803619 958223288 599362233 723181175 317796973 928081085 998309670 998657403 853739516 996776333 464242761 977482215 484261360 551785227 976450646 994424943 368777173 583415502 276992470 545092007 776856515 846222944 606923262 616952621 156178696 757393331 740081997 786905824 359953323 517026258 760414884 820881001 426675426 507880946 458724294 991573435 740862096 882191647 513197634 654895858 444528076 710852818 212944158 216506920 493288526 705556647 2703722 593052555 638945835 658042645 707773355 944471070 709224924 860171787 613592908 843355688 531745760 634377673 28722698 840752645 850594078 886401343 447635917 639079319 341010499 690233131 557511105 894865049 146464836 784563734 438167450 628322549 144722324 235158148 580535660 715736897 100519097 247136851 714701053 877351711 810527675 929335262 666243065 886250610 222428449 532045040 937534750 945614534 6362214 327659157 7600545 743770184 474032662 978846549 15752714 141781115 937935551 941023280 288318825 367893538 614259781 771747464 50900530 193835297 710558444 927580865 624743723 837564362 824387660 986109508 124091041 979032126 921734886 935321280 211919326 793524360 315095293 686188251 314209667 878288789 180342670 814283300 199384319 574489504 531345028 881641112 452571640 821540937 99916062 393862305 156162621 165270067 904490806 953509360 507003580 650642061 407772006 447214176 772479013 873938928 484711287 822705520 586986450 774999197 853883328 935863532 905018466 913556262 746043169 782230287 115515931 380536130 195810031 357897112 959384721 991876884 220419123 497664693 974720009 977876034 938947709 990645915 680389891 751388160 725718757 844763828 719888883 805431560 691058294 733248694 912199346 981398471 766053277 927033103 605782605 823467419 574404301 945545100 589093431 665016293 309415197 372021331 365118985 534554888 886246671 945568243 462658016 991300377 391095952 627571350 858249126 966974396 859961998 913575793 800549683 855839522 705775818 993017306 340043532 624937917 66041603 194907135 870119460 941650488 361032036 788898999 383176478 819936585 938105808 973995879 831002263 908021546 611860689 647681548 724399372 744866354 670233020 963248119 207841943 426518140 989926808 996620568 852932607 866384964 625359463 738194353 57248582 487927763 224305736 343660742 699507457 899187052 618023102 871017698 553172123 919854894 43961516 305733177 401537006 418064472 516199446 648810083 631720419 951099375 912953419 954236901 484324131 530130018 525900816 769659003 702647964 770939257 320359429 505364082 476902575 815099564 177331916 546177225 699507398 872536548 24170927 631633192 394769053 763998862 432238733 789135689 308207196 927365305 825944097 913662178 746286125 972279314 723313474 999210869 792969191 967465895 483630301 905936324 849889205 851530332 478111116 810959344 870966343 991290528 9051242 282040410 488171928 810892022 848374627 965123114 999059235 999206911 702815095 848076007 576650334 678790396 699510760 978636433 506831067 814965793 738502837 940223477 237959719 575424545 483306637 576769277 996413883 999849016 585525161 923264709 7081487 130854466 64663040 955176640 991926054 992637908 736270975 814776793 877907883 905814849 143958851 700545735 832434120 887608448 50313726 296730452 597856747 847894377 313881154 500346289 624468866 664994828 608221802 913990934 86751211 964411988 658971444 835636307 463655819 748827419 25034126 731702185 215284028 790863017 188050182 599070705 68251994 940982384 582474377 715509127 213697399 562252103 604021889 765028819 353994990 519994503 156258813 383498374 774294453 833130376 746723302 750631988 878777722 984067509 198207026 857203901 626265689 892502700 444718945 938411744 197489390 230945043 602850609 888044252 97280141 102619488 92125330 94387349 408603473 789126330 811979692 985606423 234892609 474016842 116277713 351909779 826321389 957522722 906408874 964848763 110449493 708560974 576103029 915377880 712666795 940859517 114791828 629401569 889607904 960656865 350472912 748775257 165481369 535059104 775934751 972002228 198523776 296551293 139277862 889706713 507043795 857958364 971946840 985295229 342230240 514589653 73617925 795059317 882503553 936060982 405150996 473274847 212258326 344774381 993178498 995583247 777783447 963006968 933886922 946930069 756673749 933920730 341407263 637263856 130904678 770553383 668049626 928752340 199342412 285135823 541594446 721631375 570965514 874348298 80392397 649559727 315737978 809261902 625510524 850818397 500130717 616273414 773076423 913922548 666739967 779904880 162597794 922968911 308159860 726706973 785672221 797189535 510129825 928753905 703178147 736724231 289830523 907170254 346592744 413403557 917426413 942380490 712222402 802634936 150880748 684171293 113814990 614826743 541735123 953837483 352103663 587474157 307282613 325895613 292980903 836644568 148623879 909407269 611959948 726400621 519390673 600336351 769331785 946114136 606588591 826474560 731300837 985004648 988970791 989122763 51362824 728575757 570130061 944008807 781940902 911701405 53038565 655610307 225571230 314213322 674580586 888388252 140732933 477354690 806198370 999549110 847000777 974593519 733856191 808493019 323920605 575077252 287946013 619598461 197913988 291322659 498534122 626142042 483974306 964979275 780903505 911801447 973980008 977325493 363359415 858395608 211701671 232605591 526610496 902697866 736432105 823788499 766902711 983770994 874150134 932290552 821729303 938768853 697733404 934567253 389421303 552867047 490677227 734003879 862918031 928939598 186303526 212012284 797950644 850985752 948919020 975414876 258757011 675024735 491483158 946977271 298997659 776401880 333272700 416833835 615593560 932701312 153700554 178029604 162553536 862694411 60207784 323245021 123888567 625811745 924629628 941686679 572844110 576300693 538619944 802076870 743464354 973057348 63827341 788175509 981422724 982534446 772219612 983361736 936761461 994228275 843071779 935307656 320012825 372233133 163854128 166804613 624961880 837262289 294548480 674727163 978955420 987622502 678624622 863858913 366619054 563585075 893233008 897626026 518758775 974945053 139399778 396356381 540374157 728444429 208438894 329404718 975983222 982081113 470377348 962555342 892596316 927373425 153655880 627591917 199445913 764245686 661653974 934311782 925602269 927868636 671377227 753283468 440458320 839149241 778466001 883023624 153231014 739403212 929862185 957302341 671171742 825911651 478657350 566005648 715701787 761495667 120231023 828048047 380698296 609103074 955574590 963816598 747918556 791170244 967940317 968973858 861383280 951044027 676959559 747863051 964071505 967676984 851712118 855964617 98304625 610784619 355480948 661972578 509279331 572372885 930234915 978000715 635251975 760749604 554300728 902908961 161444907 435904168 518568839 780553807 480121615 514014571 201622208 439405008 848169687 855510108 942831337 973795243 125433703 407297913 615012820 856346514 289310228 879179531 919265079 955509042 300922872 704718042 400735237 440982708 508651942 600994301 691600633 994061280 442200855 957293168 302755784 659516418 538996312 979399594 997854327 998219694 283064841 773441824 471124792 487468283 834053719 940878540 985627079 990388743 789204240 941377456 109901171 618800008 909887648 961022032 611813619 864118223 42074088 55922930 863342868 883487057 901563639 982835590 176701250 287555900 393511968 885514434 349822334 843493178 66891005 900597757 557673932 874520261 983069462 992003276 379697247 701857231 779485153 817938132 840257827 938122615 877008753 985344362 946213146 997575422 592357012 625529077 493814134 525498128 33613385 260908466 910441363 938984337 145054043 857996195 74834121 681983727 719208703 790107005 294515817 919945978 237151512 570079461 832136602 879688254 703976344 797847459 651706133 733151303 285917354 940471573 773567882 818004621 133479427 425550985 430274803 988858891 341230595 618032043 502061537 989252590 345763505 937100665 418690989 478847973 824177293 885655705 963115466 976785436 571134766 994786024 141161519 532873572 827955047 946222167 543089134 668908566 908810892 975308549 33481631 222942379 352059376 838768678 903234176 965215452 611737863 757014336 806108457 840008239 959416241 967980509 10053668 436967340 503999936 574339286 656317455 816119755 40079302 738532405 669943053 938584690 685326954 717157068 815114940 994690981 267899176 994566512 532563425 662770420 2443904 191038558 553719982 718042051 585364399 970242980 963840445 972013720 455514344 477783930 861653253 954290710 243975234 714938244 928009385 992512021 796783989 950021506 280853588 596532748 938592446 989354381 478805838 698904981 702640038 997725915 228668034 296436301 419942578 806296788 125869933 225927147 948405152 991931972 364932867 619582403 238400875 503139997 611719820 703870573 645943242 929016150 198108473 734908701 902347321 974014335 996773077 999779611 97069058 864397195 919211936 920868256 783945637 974627431 43266157 515765674 25730215 850488542 505869558 596203718 731743804 752460065 53282825 965702752 552497550 621450016 492863080 505607910 336922943 869583900 272264680 452169522 523979753 550097164 740724163 904969299 918820483 974787886 692536187 748535239 918605295 929729016 968036309 976619481 210443287 567684681 304174818 524738746 623737941 966856765 10850728 842008681 530564495 993898241 722671905 934402320 764608906 982164448 104968437 709792647 392836838 797213186 90264327 150775928 897848505 910933840 174274563 697573444 483702123 740319307 406753247 685438168 852666948 956808970 399098998 537646838 703891105 873223795 806390667 857514820 97187167 448649717 856078575 960664459 416658542 928116350 546081929 921595157 290566960 419351672 29312309 155143782 751022012 999321811 274717589 921832641 308911838 614421032 462041918 908825426 658445790 972419107 419669673 910894647 693872224 743738774 274581237 683177191 948692805 980371247 673887125 715347629 455897579 993182993 68837692 476460597 262778047 400113935 670608765 995127574 961850350 986667995 416112934 605701103 143884015 440846475 409600499 840931982 601496442 923344017 969536058 990485973 570095344 659597888 43158912 83120164 427069092 553935820 945241708 945698850 78303216 997517460 475869578 969562552 44788247 903058833 626927711 956185517 101473113 127843199 706604010 736516918 696759234 784667497 332002745 415227754 40224520 551311993 292716237 974116659 233387118 879649361 839517691 864055620 155846282 326428232 453048366 474292243 284755666 318135991 120122640 497625017 102205000 389720763 147261560 454287164 225764239 264370840 385908896 429472169 431707354 516023193 7317062 500834258 707320603 784697719 634256482 665747578 490846382 532406323 798064700 972944424 214651973 558544377 566016417 583508450 993918891 997608643 506324651 731277316 238093922 839319442 871584819 983236178 767114395 862733349 796226874 903015250 375098072 532437957 583975281 676332918 437599987 776445521 610853889 930298133 786334385 962176253 1075668 389763101 872328117 883623677 480498892 818082606 462736641 573239381 408828793 556493729 296890715 381408541 857381796 971194456 39736211 360757487 846539812 961556791 639528747 851571077 731043319 866088309 507272739 764313669 598552179 890782475 208770402 677394563 188634873 549680656 850522084 936469900 440201523 760470606 609652801 993228207 587104928 754253814 623291535 778413204 61412359 337843149 453268568 853015470 840641205 982159870 168820034 883664711 751015680 933901069 272807012 387612824 260191408 729631545 48162899 460346435 192245985 649038305 823237929 874608953 948964396 950480682 759170713 884998293 579294572 933496335 222211164 642915394 644081533 940245583 621194502 717571082 212247656 257978092 556837708 623239853 301326472 858770900 185101007 329932895 617040930 953253093 380651065 950113602 90853769 673822736 495949592 814557910 570031019 615793294 954334914 966756956 599901901 707614633 360913587 402045759 457989527 588536631 325751586 969308686 36930592 493062221 105765906 349217674 557672864 745347813 543401409 710781828 347055141 442685649 916030724 943739104 639917049 736719498 151319595 276683592 184642899 287617218 163693387 429431246 289813424 816739777 296694739 706183612 933849318 965955696 522716911 584290362 179311269 500141806 129362421 370107268 213044699 404231775 87086561 543480236 280468286 860897311 645905210 880368908 22116021 142449516 773299481 963937134 175358069 645262293 633851447 680503821 128062365 174539400 288171812 787845729 567434322 985866336 897244353 949198567 535545738 967122652 3118596 889143916 556830466 599145304 466770624 709610557 235517937 608073905 862440646 900985609 817877848 987743981 309213432 371093189 404328893 589453660 761207579 945444782 123506430 829782594 407970053 752748242 302583894 664048030 537513860 581822414 592891440 907684472 251488773 658473016 815124911 862834586 625798875 862723224 148082492 241503203 237515911 575322763 477900149 912096578 821605709 898157191 713778614 727949482 205471294 321697949 210960791 347668978 844658322 920216491 711453840 869092928 865958945 867203282 873758226 926934321 294616417 832513755 864641695 994946064 831647647 951048226 856594762 973000142 21396818 486652875 553696765 599570351 106755964 609310313 384209155 569982458 344274047 607572191 262982703 525862590 948641090 949978608 652191576 818442145 426652602 755962292 339519908 400755100 69296855 707784003 680958052 896029570 266427646 853812938 258317013 694152070 884880687 957019340 51854708 873706875 582024500 731535189 342063743 702598213 112326534 194216614 358284766 939733343 665924705 893962090 680385734 866588032 273749883 588859772 978121557 998425944 64292158 748148933 426317354 621269238 382255470 604582236 433630700 787847750 278440897 891843357 424943004 426374394 363386423 765263329 798433867 985075229 567519818 822147921 290964213 728994117 147175921 149683652 349220606 507029122 35694227 544627096 126044190 871903802 207542518 994073291 157143706 644445949 431749489 796333925 607060221 963605009 227929523 579040843 702858880 970216947 748251805 828414682 506381919 892475363 838773560 998500966 224661084 457093539 651172353 905381775 105205511 674171662 726584603 859101115 497075260 533950482 144456254 970953733 681813279 877725050 937719299 969707198 362221176 918372818 717831737 899609365 19790338 870713008 798747494 800670562 714543206 714800053 218424577 642663133 988033828 994724494 83875751 470515326 323383995 827194183 824745449 976394973 758798980 902612313 538284153 630121585 569042415 699027328 35524745 414824246 866480455 969024407 847870418 875428277 228339045 277242188 336240424 806844519 190769932 750487622 745521942 842794371 853583578 994957501 498095728 973765529 373837645 832475250 997499493 999278688 230617443 425674544 885683308 919339896 224760884 507761064 889984104 948371518 61966579 450233463 121741366 180804243 951301295 963633149 628856675 705715728 767431445 897937783 987489436 989303361 382605601 785591191 147856604 328464623 256377653 958696688 300130672 893402955 628396449 974226211 453897719 875965781 641768718 993870755 235060633 500335265 365920519 806396148 679182561 952296930 290608098 866265169 785956918 986419242 495196611 569279496 985075252 989518058 584658969 895514574 381943521 469913640 378354900 609684693 860125499 967624215 785450710 858382399 251496530 541593810 261342599 768996222 572229464 820837618 976687335 990843321 882882625 994086005 213801846 435360184 269816803 664845522 709852928 749014979 392678587 537592713 20277714 358775534 829736442 993738931 832632577 849958055 18666440 315906181 315820056 744384350 817934583 941624893 537178202 858029389 848902252 940681161 376370474 808022465 330898967 335172176 359109455 672369775 163743034 857138406 867600211 978467283 992632439 995520936 54871407 160912661 928622124 959789211 430125562 699413351 836925830 877871059 302438615 395227371 921383207 931683646 480367726 796887145 836577686 855449418 627665761 745831360 611527372 686595314 95956551 329301009 591860024 903717009 935587841 977183902 187547570 729130073 731846290 901114294 740570736 930831920 845837794 955678171 277904291 342446214 704649249 820585018 138222342 821729693 775008962 996138204 829414111 860965524 210272860 247822802 360277238 389745998 382321878 802285840 79244377 735250996 739694684 825816018 244454358 568268429 538244682 873437588 205087534 562737262 30677796 84822002 961652469 984021186 590430658 876996077 648174915 873559934 314586692 782357736 872586908 884452628 751976820 835606839 301322126 760815768 618276731 979795651 957904716 997188543 679484653 928364017 136791251 884136659 231983702 704664743 818854319 851661699 449128445 601714681 114634269 843319761 685087825 779092258 510247529 715920885 935868715 997809529 176799269 959057984 721200939 990691735 967023311 983693150 519244692 562865322 76089607 678248106 993331217 996297934 322939261 608273566 844629791 994544825 606790888 928750232 234704750 400586262 642703827 873092201 136997873 915977611 212307596 935298046 398791199 637184432 143187901 822348166 854065819 974581405 714530134 813569093 847918323 965258987 205964737 883762796 72213943 513279341 509948245 812217062 656917229 733783673 778984917 984729323 558992145 636347609 432487739 643136995 439690530 482675482 933000632 996318354 828224738 879422127 312217272 822863153 944746779 970779807 572303936 694461032 542129712 991536096 413036022 563614840 830848636 858963508 886006019 949045353 90045268 526567260 608745025 966531622 775767049 850020792 128456129 858844372 177286518 772804256 600994273 875240393 40613928 702947245 889853476 919655914 474904748 903806670 676987680 953743041 259829187 576448295 841421586 908163446 918570747 987699586 528790065 894932121 333052806 430447097 467512408 782455511 912820250 978800594 145470913 490684996 502926702 953735157 947450912 962947057 344269137 863881708 783266247 854826682 534286503 810315525 681795081 974165504 435203292 968577121 769507959 983228048 402925326 986450472 510433499 889434879 35335133 952847755 826169467 987771167 517844665 796075896 837676911 905696201 553929190 569965247 902811981 911086972 700948065 723888725 754049091 848402358 730628668 972819229 654129336 928442376 602966967 703801541 506731474 788267590 417515958 492305314 625777055 861110744 777471945 784718006 512623604 865376073 1129676 351878941 72085956 371419987 10276726 34521852 410726506 522144966 475855234 558443138 894494365 913228721 812352853 988139854 216170088 690368721 14075651 346942067 547816357 559678036 291984312 603453745 812111208 928864686 453130156 935980807 633228113 762220815 401044087 438148987 928636454 962107773 79798147 304756686 738165310 840972765 222553641 693938545 783073017 895849725 939012187 983326746 835356431 838540849 30144978 612488593 494274584 837596446 595271518 713675218 895130118 933802754 617884547 628162062 206698770 338133050 545045094 715103306 746473461 959079850 639704480 678213105 350756666 895706461 598067296 621151501 246114654 272500076 715884098 877933702 110817939 671953821 435443302 908563772 592033755 773738051 90601557 565154332 456864262 758289844 666825825 861938182 876267534 977978395 716572513 949298248 48854754 184038850 33157205 75275886 24676294 171157719 215419489 860318254 753014306 805985338 869411039 953075123 579892154 807468534 914757069 967163726 274851385 493770396 967106263 974495465 374715776 521679852 340140129 764394890 234320796 461932592 691043922 974948924 656288680 787988708 414596945 811669896 843815168 997181787 419279105 941985777 134282790 533898530 366725857 691556284 506197575 521173389 840618522 951377228 566742021 818414707 479702365 743613974 218874279 789989532 870555029 897392770 76472731 491452678 745876229 910210900 204411979 420742798 447568318 801277406 52923806 238744240 743564652 791266203 996042314 998055484 41554281 119644410 215219471 355763503 839346367 915785248 307686587 908303780 843161476 880908877 773015023 958795359 996748370 997180672 562623099 744346721 681915693 785794153 253610310 865540430 305305210 433691110 687464863 823667456 506316933 713407261 832953975 856448082 763435215 873525784 556295713 688510342 318212888 908661434 516801809 792917622 830856666 926802569 149375106 784324821 894600984 901719846 914696276 980057151 227950005 748762700 214623664 412823557 21074705 947009071 331827726 782580723 589928112 817573873 305617493 525472319 411102291 757241396 881637468 922046739 15158540 192479517 399470190 479749387 594663724 883912280 479962814 610259916 894531125 972346664 465007826 835166026 428149500 657862544 36967049 792947329 714631386 852906936 118317029 730338471 606838753 633826430 631221477 833197863 373972830 465746828 662745088 893869180 928997173 980549042 530216487 909359269 751179301 769290764 59171253 990577360 234750468 457585474 977954809 989896002 644702464 682525550 329205207 757874463 751412546 898907221 788714979 924597617 814278011 842197515 422860943 706060047 22677148 904527164 228985377 921598030 758429521 825978739 548402464 576356061 561947856 940612582 227361876 970103668 254061763 503340589 602088513 749530951 280601109 919513515 359426058 964677295 515595048 601680547 872257485 955947101 524705897 804590658 282981942 644359313 425235310 606666202 425431081 791777785 676454464 835531961 672793203 971898594 387847867 882323907 83564970 650316531 300346432 506433857 803222518 890627430 137627553 848336013 87959163 150988795 666422410 973588741 895494961 904350473 67084471 880336580 433595241 902456093 640449670 961094491 410425133 792980300 703417667 832576354 345637644 509533074 605072547 738488448 760187923 940181518 36970465 411746335 339726129 745471707 244977618 958097266 77012696 134556152 203622867 878565963 55677517 779130487 515260984 584963496 172680960 581947148 122218464 900826360 206683 729201970 853456168 958049533 58506570 859827779 974822126 998106712 159176651 945733315 660588421 937175232 659020689 748952558 504963908 645827314 720607304 852309499 371426279 466423631 353247449 579433854 481961743 718853430 31973573 984962783 29515772 698464127 338832382 976159009 359347150 843438012 233283216 363819933 577567471 597053197 24374455 366924774 507741288 646958684 829244629 900690326 95467544 258598793 389836634 921615293 164754080 165215405 1080024 678039728 336936554 882047727 901265461 992512004 343399236 773651254 757903067 834013170 283548984 745235275 687547505 977735684 874817930 976338990 595198796 829540864 298503656 310273006 662732346 928551685 121377339 397026342 43506379 635384151 576718008 956172907 844561702 854643944 452095120 788789487 334045433 560900916 470417670 663158381 434359012 680839628 811282995 849850875 76250007 655574208 834102278 998483079 44890437 97589184 977056581 977819760 352280822 422062818 747855333 758833533 665856094 704870637 69469758 626009462 107485619 864971010 534400051 852263674 489604242 709715526 245768113 525843679 500368749 777148824 845118594 854025020 448506222 680836037 458673382 891682030 314935173 668040351 159701788 319264235 931291565 932497689 826173206 929157243 779373460 932146491 975855665 995866105 471115638 788128771 348221090 719701948 716346338 964019707 73061018 196796342 804083531 905710968 720554775 987448770 453617639 836378928 603804835 996017900 119286863 624427282 601406090 715088938 674855136 783735006 678590556 790674665 855109927 859648157 712088866 870266925 291279438 847806359 748245958 839101916 872733581 925701562 911221062 931191020 118530780 354594194 106072082 127087044 957036168 971046064 435166240 929371198 709357074 778168377 151887038 456951315 744739184 930066743 772030993 863109682 633164882 801693158 669482133 928221767 767201125 896567533 428401578 451380510 768644448 868151902 744236855 750247039 235286976 571732685 953019039 984496368 918868437 937887247 77374772 447035539 465787594 617325315 609449774 825673891 802457815 833145360 148325949 575983184 576221865 764901660 155513860 178270563 27667549 744887677 643005730 993086259 599681884 756377361 260812333 404781087 224354403 367882755 980377722 997780463 813663493 814060474 662808944 720831426 249699496 375253127 109315122 442783269 848693432 963662303 112143546 752835097 963072613 988061041 456169423 663711844 459988472 680864812 611106110 948810210 985491334 994272894 120813277 256282738 563249897 581878724 76856419 345313635 437057668 966795045 614288209 910394406 18493636 976429079 434754763 492623383 957417693 989560336 687168332 696254887 980316477 988617847 513117450 882744672 800822725 929692098 117381794 987821587 335695505 667412208 263250257 553359947 482367497 877279478 973751008 996455629 198287760 473372981 821855334 999413429 451666114 963644472 707548444 828551907 932830409 984485762 787576077 820640478 164836023 486242767 183120835 287772345 546586648 714962323 437631385 575992811 493726206 931197320 534387765 606002317 497493379 513807256 612926250 723040193 685791798 738527642 799347721 800301953 489660597 767224769 640419272 649765900 983551035 983920199 207674238 402142321 455138472 664833296 433096967 520395442 312774226 605764798 87476583 772904077 576985807 895682942 960567429 981595651 391795337 708816260 122687248 803824636 415418277 436524814 880223999 949087885 816513147 978977249 972007886 999553044 718955660 760563665 453745483 930902064 823227177 878544446 770110179 928763340 820254123 995706174 977563125 998686305 883432717 955162942 178866022 311249735 788557952 996846364 513099013 692762622 301079901 738949273 596099819 627172265 320915749 585230359 85342462 939920908 517760441 900659043 540779871 623665010 118125669 441006949 603648286 959745763 595599203 746145708 997176588 997596741 948992579 980719935 453242352 861729097 954642407 957144842 702951755 894863791 840441412 987207429 840659788 916654305 480335253 678410212 557392380 754902345 805139887 863383761 969299993 979231145 931761046 971243124 723310752 936715374 317277062 640355600 82521747 248797973 550201788 587972919 636405585 918706384 113519465 839662327 238480931 994607108 134947372 237257156 251974075 773297255 753943631 967511938 335355515 354112664 895577256 896857750 429263430 810113982 372801314 750323670 525151375 752860723 399986418 538333549 265111930 594247945 613119442 715964833 812657107 861828744 128595811 390821416 840029025 931410632 816997829 900615093 172861143 718828476 563468632 984596478 775279569 827903549 909841681 999117412 77543936 565775348 141503949 470252700 768532394 776620694 274950739 923234817 591378874 893764130 521749457 615125941 877931289 998916096 13663828 663274442 300605240 905923230 507300319 683467306 183573628 322476521 534246088 678981012 416079178 572946450 407774704 871418603 570400094 972516081 818800494 969896912 71791041 284200573 777319807 803637464 916065259 993069771 622315649 873838576 677621214 716047810 179029666 576123338 553438076 745272834 900029297 959043916 62293565 694060822 438638396 736557718 296249261 480885253 133889521 295698524 579753097 833550087 727814758 736824528 44541737 845244961 741335669 859448839 820059376 997692937 324771380 484220370 838817309 864930916 7650469 324930920 737998561 775387166 696480271 730463150 164244646 205074996 968671776 970559449 49897490 358101218 759867867 831839138 911381454 926610240 795328093 884611992 419756645 603859695 85163640 918417920 86714161 585652059 215619476 523137488 376118692 513501498 887521385 964837885 732238752 891489323 196293457 519082362 773640525 896183435 310759122 802348111 751693666 922127228 725439272 823018807 185472573 823176474 634739547 944554444 984111002 999103134 88740791 106019596 101266741 822155482 224937652 368172015 649836266 652737926 5057719 816041481 892318387 900354064 827534733 860729768 615554371 879134902 764161157 995544459 128439544 781342816 77434563 584700486 28873039 325481726 100678909 543515677 969886249 977748050 646822042 721046003 884475980 903870242 409967345 555212985 879482512 885837365 599342663 948965590 375397851 930707786 132664778 672380946 525095891 590942282 419470851 730146087 231404192 444177438 698845036 910425154 129298325 559960950 441161795 494955211 892806133 982685433 811452194 872892556 806026666 854131234 47525126 399728289 998623450 999269145 588508222 784310674 722161987 942972575 811037096 856463278 410357763 471529929 965462229 994215257 568359341 731601391 198587474 438163167 984098507 992004249 384729628 524380282 385072411 623236734 209533653 492226852 700570692 980254948 686262081 756020385 556488581 733763880 269288766 753660995 557635738 936803852 966287320 966540874 679105092 836027549 926032282 941003438 298137181 623221634 192939105 447003731 871608124 970106626 836347302 855845771 493352268 954078516 509229708 623675411 436560633 950498936 881845713 938075156 731122216 995820394 960101979 976664226 1696109 290611027 786772095 978876842 435843662 768118736 775131475 933092115 133708560 334902274 820715584 907004294 623769184 682096728 562255670 982366629 117994986 298205646 920828360 951022226 903787855 914243095 207135221 386145600 382317963 999523468 345557024 866055482 151752857 874491669 781188808 877698578 621401644 882239004 139163220 487229946 671400131 776502497 165173899 802711420 358952765 617789457 25913315 617810401 724152684 794464434 158372615 978613745 677132546 729794424 174475696 516031784 230053889 627132984 156794360 625364124 470970655 661404258 745393616 944497450 142373869 346557829 112191974 569501585 131147126 436872385 404696385 900572936 772426691 779449287 464632516 533209684 174113087 941563355 323829582 474409642 103810720 564254621 738843829 749592298 669134194 852473232 190110438 737582291 921275559 985299258 118714159 526599354 809632416 956239799 152272557 590801463 755022499 824220444 35946051 436251319 575415072 614478311 266741529 557182074 6067277 320644737 835982445 902856284 622909811 836962403 445366239 946588020 520973379 908991762 814325157 885893113 46423561 851612485 265252550 837121930 441587695 627838471 508656054 801414941 437246074 583430911 367759017 506992945 191387516 283745881 466209502 939890711 342777326 699298635 336321166 825939941 927497356 931275850 988006578 993470166 25211149 311362790 874463256 880000383 243055987 725744035 557387624 664765918 945101167 963715865 417638069 491683059 453124991 528002902 337650225 938755601 280107097 990076414 440383476 781322771 943014741 992149890 819966920 899013663 48952700 708334218 521260269 965357427 867871174 919754605 703305466 823784966 574842045 990362266 940023689 967963372 228873577 670046115 666941959 896081198 361648093 992775706 372672069 458289930 887022751 964825922 377782360 581276848 398584861 429081414 425643000 862749753 454674225 513525003 429434471 684519304 269047603 628746073 779567665 835472756 484729928 633414529 131518757 227468981 466617102 954121466 744820457 922416734 371269247 988866547 99746165 188313424 418883873 572017600 115795789 530922694 280065932 846296564 436102667 575359666 638497500 651000771 300600248 626344478 935219895 994512063 232956303 828137512 11948117 116009199 773596690 990664448 733316032 957239500 593197381 748998572 473172893 534220555 779571755 784106081 815302334 857873544 524898054 844483726 628465854 802473597 29314642 186532440 689147172 710521077 308846883 451946277 314561146 678099183 602565739 750172749 804816147 916422185 51419276 901161025 140794788 452353659 690795847 919053000 77486513 292365061 380770340 587322675 833641835 887847998 402816605 555415148 552574031 916922562 478912162 953069955 463244017 890341401 527040502 552208058 381429484 765524391 221893421 629618101 195888613 865962131 90723678 279125098 693715008 971391095 154966551 236050230 976458874 996802665 95455726 636817378 26255994 408766943 986233587 988371876 568505428 847672794 248186374 993505243 432441830 854979140 523465852 989019005 814886151 948234159 118160180 816630804 545307359 967535870 571119835 641510571 364931813 551299745 183643389 707027004 989959128 999709824 211942104 800653919 15524759 633559505 846083884 912387954 509341826 776185649 544493298 925037243 914382740 979401398 705910117 828992713 269791414 310713475 473411441 931914918 237034033 533912671 692605467 920379891 469634886 868657020 132138126 447649725 338868218 887095359 573797579 840513526 146474495 666481071 730893637 882401780 538658178 837701635 407499896 684365479 184091195 205195329 887932672 979165338 938407209 943002274 355574515 636818493 413506950 705048950 242017978 292911153 558360064 668688250 328586182 942216124 489762784 573613298 33552605 238567905 743890253 784581892 639856219 902772879 965970087 991989198 135097277 664520561 410246806 697536293 570584468 849917196 128242624 197626908 140134685 252213826 38077419 423490171 58211820 254353210 310492868 637521959 714061110 730230588 809684586 862908272 552689036 670130886 352714412 722733159 103884654 830533574 852976477 985792315 707897657 851608225 861105642 876808088 106812325 683779625 92043385 481162654 293757125 493855973 88264433 987265185 656059240 865135518 946168 832969650 554752339 745475326 141740094 689628444 356232353 385604295 487390755 573966591 569643435 900448744 326770147 365253333 469440376 523763036 673895516 983610237 662434078 663206521 451858634 537329725 485319298 675081299 274649814 538633193 159272673 303064214 179568850 215917104 733736506 858610716 304953580 940432225 108240187 367007373 280041480 943581710 195643718 403920416 521346433 638327809 513174032 894490916 704795497 984438317 829106872 989665886 668288607 817824931 887533641 956784815 695371676 841221252 182682148 372494044 737085018 807916115 807227150 837898342 937858298 986435656 832788597 954861585 401320022 791194389 373997265 640849402 80666933 176898631 684557651 755020915 285438451 581747030 283740948 867136666 828112879 908580382 404073276 406291783 374076730 614862266 63632461 90947275 482867850 940628848 943079696 963123000 680312159 803514660 240173193 860112724 738377920 849997029 423230873 523056409 737979292 942424789 765015804 905514764 441857109 483611973 202717136 826332746 900015925 920322387 393881901 585883784 795137379 896710149 104772888 464183484 916290089 980237444 532602926 704638282 679498251 748588279 676813142 915743926 311274247 654671380 842368027 848872864 208515451 745122671 260221494 726378117 169533751 746930946 884735871 888823017 831932814 910360294 23001694 477531584 712357543 910068344 24803607 988191144 976152318 990461102 7347177 445132785 469056381 888651265 690141171 948948320 598329795 947005251 311069613 733148799 215480026 313005043 526290644 973738613 959845819 974946112 403524295 943327887 775265845 816776357 659070037 996868425 242126088 730419230 664998189 894390018 269059545 420116268 785587199 844000042 43487685 203274986 302967135 923674110 975594689 979702138 845997010 956778718 975420749 999786452 273247024 650276616 484509154 895238706 144717942 280681456 267983459 539850179 267400575 569057321 583943533 945726979 868205076 924905715 809330267 821518014 936167970 973699753 264221871 494909150 105201617 527458290 724665156 960463079 944516355 963467318 217245858 241939262 72229871 934885735 349680362 717060490 7179093 751872906 145652172 468783956 726203115 939119597 304933180 975194258 399432719 601519265 377325090 524750391 801191795 848510424 680300682 763728282 938104949 957903548 955051201 960008304 143499866 382019748 546163425 863969846 855071402 992046734 610466262 790804123 182047269 195947113 568360482 782638548 53741063 173168966 304118171 963672991 939944971 963053733 478901373 667089805 446361850 916947598 230491718 478446877 961502427 975628823 789181274 865651243 853808913 955632349 613766240 891630402 431764762 771073191 3383467 924866250 34156254 774201854 565185933 896609143 694738242 790002928 882880379 892151721 292592151 678706688 774899796 861438349 872385887 946226697 768831411 809765389 860544912 917901840 465628020 616381571 756610629 870641776 547169201 830185573 761174066 969407448 309034981 400334045 998150949 998520914 35781794 111005932 58217418 413597411 497276597 554532836 236030531 851388316 591703457 928266720 537206312 955900604 283403140 346006455 904449353 953683412 856558444 959970637 824468519 915803859 230837226 486451883 623115299 749262066 489861645 601889481 875673939 942439280 935762831 945737673 551797042 826394276 70945443 708021337 714042609 716807409 86561447 577015347 964206838 975565613 26195263 804907271 817198385 823333649 609630334 700580397 220196011 905161454 625529824 647083143 95696317 670786943 475202109 962488629 667845844 804052047 606514374 758068959 261877834 812359550 395195751 914584349 216842185 235894169 896292380 966366669 241402622 531026387 255831498 315114907 491135810 795745723 949090839 959238246 686359260 770506300 732527615 860765545 478611226 761380851 209037989 471923624 360114649 522161573 551301637 659131925 377610284 767099922 978053867 992857392 512199569 946123573 106163714 940274221 887871447 930691433 51535251 259455028 42282233 614784641 308512824 481738293 788883464 805896806 687133411 711140288 160654151 928101663 21253273 883587210 360450749 644099204 268273753 643131337 966295598 993287265 654521093 763954980 763891096 879561211 416047292 852669494 528091206 911531097 618068272 653109277 567464771 662475814 671967846 997386736 419525080 954783125 819729950 909901782 1880332 465216588 343756970 369700283 137027152 651322537 354766631 640615324 890993432 978128849 820706931 974572397 893180777 953663984 582225593 870327971 419445861 593226976 392539314 753966951 811794269 988772745 422706953 883027071 898165184 929487371 565858250 876103402 592023533 946369209 303360997 354586040 736387851 760357145 972125307 994408556 300760380 492129284 658531521 697278549 5984895 579965157 328153881 543056105 167610648 645613740 499480978 962477753 363492930 908717810 638748340 907012396 773027111 999476321 213547892 486881866 45606087 232695041 742350037 999418277 367775 888997940 397901673 416806888 588474786 959193187 698433552 897204718 851853095 947113855 30652403 912457405 856552176 952333922 55589521 252171674 281963801 787206730 820987304 971524343 108707338 427030785 235913746 637530398 797001285 828813274 659812283 857648296 83069771 488336185 483203752 543326540 15604036 841660434 53023011 443670335 704217715 914725478 993334666 998757355 195654702 614020133 219115507 437500637 597295591 970150739 260744283 855717922 394162857 863285761 246742795 784682968 765614784 851044869 360238536 403026036 976155052 999791770 376632696 498779977 441982711 967012761 401071677 819285781 944479578 972333749 471504688 677235844 473202339 788508153 563146093 750814395 818536566 966476415 301272252 321824350 258951686 719572474 538609154 634857168 848630750 867579066 522086218 805843440 253615211 707608455 154298755 621228582 187785045 883435859 397183588 489826374 522757973 902157644 313124810 462500431 262578469 315697020 567706115 812616300 366565777 550623081 216991984 249217998 227490597 600981986 379446739 476757371 941594299 994321978 82504933 192112326 448591211 670030667 98474776 423170701 194823654 322784211 700734018 819436784 839777338 879423278 579677592 771341657 733579246 738972004 172339304 720984035 370352364 506604112 360566992 932337976 32399864 754147146 186398423 647942336 710906915 831760494 455338302 928765632 240522506 359600083 128610681 567135118 881218641 887712215 320723974 959634070 705549363 841611792 981264386 993657848 316233645 482550662 830420220 888505936 727866287 794425319 422490362 663242070 355153196 478506247 190499321 916145392 487726800 777173254 434093650 738680608 410667115 443392396 420109982 972146316 344195257 692374060 860018308 988743984 601738068 766894826 767023020 890360244 422293657 550703807 420478887 784080088 169715197 568764341 519363732 579364034 681414930 885566537 777778202 933037816 823604862 952708231 694700478 893228873 188220214 415616423 10341944 146416730 601857654 992214213 463199351 698492740 156179049 334060410 585712161 814404560 113602599 544604910 491733230 621661617 711331454 759786014 130966228 849075061 964855090 991864685 295214672 961386974 314797617 444135647 920759324 943098209 424510210 821907868 757249923 775291938 872277087 927334069 699764405 750261019 82728344 617562686 530348934 571916211 494342958 526079597 3616007 538489075 590509762 824121579 136953978 846247472 852431687 888628102 193959524 658344972 886484351 968186783 783617326 837540498 28220532 577296329 139188268 263093999 794027734 847576685 43225392 557591864 697313985 801578330 917219701 928447083 525235840 923132962 14589840 396788078 244513955 329893650 470709648 680321152 172136794 809504228 234159768 972297477 141819 320690424 273981607 559968398 36422207 332223373 538479783 705893440 73961386 703142351 961750135 999148006 143776132 544092333 397002595 757661776 617834016 931027138 652728567 732060634 574730634 619168953 521874881 631762823 580819629 936319554 8352868 418271413 138171799 535594199 755358135 778107496 176146190 373762151 102281395 729547859 301836093 464403169 140371332 718645508 463515054 703527238 609652047 915695797 98202032 888398358 212688661 531766930 677113307 865456966 343315282 459321477 86366922 97532619 89873790 556743720 60338780 424393345 873798832 922952456 956284637 960858284 239772755 984908538 448803521 735831786 506972628 797117265 655135662 883085496 403126198 498910009 721975883 903711775 748010890 887989117 505078472 871675375 227317583 924668585 552869096 902017061 525451205 965699808 91871302 97418101 624089138 720804666 634503880 958105949 726850999 895015026 533281605 766805868 20431882 341048034 82515913 302871477 198402979 321807447 270938165 838741397 27303413 524602430 966823987 970551661 283148119 603856130 361972463 579895688 62980866 226573999 36563887 852915023 665089835 828667911 640780496 987722647 951695003 955632408 477169016 780491099 131476920 691926944 146934838 834389215 179763032 589072813 367872806 667139579 517034844 623494317 94476231 311533495 271043155 879394710 317452840 592498997 19056938 685724679 494526829 585375261 944186379 950723310 869376979 961531611 66922762 162715740 508563704 742857508 871112118 970265513 100436400 542061490 131031989 216495950 431127908 503863662 335919466 793256798 948364024 957915720 380781426 585956185 447989366 944925773 700502948 858860989 425392491 902501368 555928549 881671761 558284336 670317525 346772716 659382355 739654388 783545100 434522971 774385722 140471015 246749733 638280664 883064374 13987606 925828359 419935208 973434490 152597330 522945207 117356034 855174253 466104529 551953894 23733188 313729947 569780859 940447565 910397412 966848434 343354163 371378935 546486566 705770186 336323217 534756406 185233596 299937575 929315006 991636489 257293571 682830564 68560678 264840786 562348573 840389991 762074395 799275900 141677872 579120843 795180703 968193399 457041380 554318286 907937625 936234361 887200503 942251648 883615230 965356090 84369201 805330147 152792472 533041356 953812109 968897258 575660811 707173023 188257360 623967966 100827018 677475128 206910407 344861625 411023722 526617556 408262590 580960687 920159921 960554624 775283793 911675339 246530573 795849658 474144856 825249386 44079476 632825831 308858843 634830701 215746494 555185623 773981299 831646951 893605360 985754832 512237803 692902955 575027735 779234234 648912826 709582028 327073537 873598194 357716039 874057318 650209925 746717512 462093965 726286154 535164030 938777645 353876414 601924146 464757530 739384817 492019053 972387090 560299958 560688669 329041751 419432801 664642472 730226496 406127804 651045322 367837798 468720263 83751095 855733338 586011208 678455903 82784145 754379440 800080145 933893828 565326058 999679102 816134603 841484904 650508389 728391466 780013073 785747901 358718242 627797705 172038193 417965017 346417777 361359638 927064854 957839516 615614326 741854121 298682261 529216359 310300237 836726715 716177966 811729383 171824857 220393444 368594211 998345040 644052048 782743781 633796142 897956731 91384540 201567215 393983521 695889812 482185440 613165373 513481330 817630013 752612277 938855890 905128463 957406648 310651751 555839368 479739411 967420836 440338996 713570913 153638261 386611021 68528701 495094800 860509714 895734894 994417309 997428911 619862270 841358488 505334757 537599795 541936115 926198579 578810946 676940273 140491539 583439187 182477033 619795151 620397772 813702649 835029022 947878964 344188012 997463772 701726377 888755803 684130443 700460169 865859747 980138710 711963743 775378635 260799686 906880298 581845144 950633242 420529746 506730759 699421524 896736859 127315676 613372660 917501553 920129448 826383945 872688938 653618954 826694038 189525576 504117225 182274532 278177012 978606092 983606722 723872185 771971628 843609133 891783863 645804261 843999348 959419312 965646089 164826168 915939988 707106054 977049307 170528936 853815253 711247412 917575932 985874420 991511947 470594092 881864890 843166496 955507054 507542463 583589480 549889463 896492448 28341848 678213399 107772681 573861234 711661280 997519575 775749467 776818231 627065642 670575825 161639878 602357406 666182976 905606353 174614732 653711813 268075158 543610988 122950702 652339902 211012170 671462865 957693374 995659013 683215646 809816341 573723670 605139997 739616023 754618537 814538609 974583310 811721671 936992089 960886892 968957283 463662039 800164507 530071160 724107072 334265147 528719126 4867205 172738399 534734212 852091686 266287491 971276798 720140001 798253327 752814537 997222769 407588145 676742136 611341272 922635426 921562977 969805515 852129336 895261361 533607795 858721102 702910997 903663509 797550278 942274930 532755559 870405402 888851154 986158273 670281502 770885064 71852234 505183474 161897287 548298185 730013708 791740079 833844566 896143386 678172313 917121874 496712304 812132462 181759018 825026976 897591462 923093977 378768979 482238788 325091213 930311867 638634806 761616922 838629147 896601342 972733558 982760358 819612604 971304190 40390897 241500994 348533912 932362538 146699885 547227214 612064749 623279697 344673579 791876824 287316219 788290082 677862744 704176653 678511360 985531235 64466756 847102488 302468445 798305657 8529197 348762246 659329213 879206762 197922690 986027748 144053351 830420789 572655526 606631049 155351856 960532510 5721234 510021875 737541248 989613612 902330342 929674644 786757406 787888353 374849204 456243976 326675310 418638051 226065664 546818050 989325505 991626227 180828137 741668260 249519948 772564855 675274208 776197990 407459620 874283826 559158430 626177547 171973804 547064401 629285336 825313981 614974065 628450316 572067708 737350129 940030395 961518345 152712781 423090967 299665909 303590191 901546460 920491684 728282724 978702291 327852375 474074165 476405140 969484083 330155150 694125318 40017817 153987040 333626164 473622851 871990734 961871851 379330837 546443861 358228609 430680992 232876548 546252955 181155291 657304299 950688579 961284158 216412358 220466586 613557922 825160890 679568845 948650938 932474941 999361526 217626464 921428448 161371485 269472943 827602422 868747099 637167363 751009381 299801140 484715115 207202947 442073341 614034394 819974068 964272440 997039473 901594615 933792015 471449500 805188482 551973418 828611032 982278355 994045234 107393370 412666683 390931530 497673048 39865055 615681090 292483245 309524032 11389213 458563492 175361569 622519956 640768327 703004725 605825290 964153329 932092419 962868779 671435469 979892974 777041275 897577544 762177946 895549495 926026276 944257485 999334243 999463403 37610588 387962372 593027197 645654945 850842886 966712251 533305906 759864682 831548243 878182507 94406263 592826722 266350512 345269782 803071906 867203751 865483488 895567617 411724912 778427089 248026077 627034565 105656417 440463112 994084059 997177406 567336595 969274844 7613963 340357887 814062868 956828628 114949712 172217264 135744337 143476143 351671655 572728728 39890046 830109014 701723702 828107992 526647755 747926185 303020585 965392059 133838362 660046572 420096686 452570679 948029720 948601615 150679690 636423001 550638121 878831453 497007904 780093298 515373833 728301631 154245465 866954491 126091452 213873925 70744562 440213230 891625202 988438498 847258871 975353098 698354776 950355335 569905249 986312569 736062588 891036791 383772876 532949678 714181222 939104197 517602700 774111824 63608439 691834391 613538556 626676493 935482803 976411096 740503153 934896025 86131202 889276674 817398507 931671970 42722653 723084473 164939147 258671962 364384126 767189153 546939384 998000193 841198298 905205183 646926946 782996187 354819351 625925089 191053559 615715583 194000833 308671709 90633397 907993880 598003556 613174619 845517154 897840847 236638017 539422585 9344230 391495673 547572860 947974607 998619726 999853782 53231253 632130119 904243319 979200405 745258526 808865674 914100686 994309681 607933486 693209130 48709052 628126022 728000922 812850559 540667609 635573395 296832078 707918167 244385394 745973578 197736094 317100352 837907740 887618282 98113449 536606224 924720804 946582479 424460666 814858916 332239450 912994922 831611270 922971190 686219430 891398149 65364298 894499493 583499032 793859085 954771455 974203131 99005511 183928957 569806710 924084315 309765697 703034178 145670226 166348303 382623609 420349160 980300252 995722260 467474294 911938812 52322906 711396289 948451362 979732695 758535347 999106690 254111245 877001134 278221703 321398713 95493858 451480115 993080617 993319283 301911032 475369654 879600505 936714743 219780924 932393903 536634525 718287026 737258804 935358962 308309722 527663016 692449924 720305315 506785713 867300527 905345782 953126185 597043764 833573457 351901137 912828850 982088184 989918968 25214314 913087191 84586466 338335598 265799839 587008049 277684800 793617614 274732330 735759731 665020544 974495905 182591132 556163359 559236749 831526815 187577718 420614148 864739341 923144637 928750381 987148813 804156565 816246391 183088504 227888341 548604503 630946645 447534554 982216260 232499461 843050713 135815690 257487752 52938226 989443396 873510338 913689930 808563821 923321469 3438288 916057238 911342717 951172503 260595464 906105725 194056831 351054556 39587613 836517313 448913218 899881001 751679110 885043605 677899066 998770195 51482660 119201722 393528060 912848993 821022652 875353372 291879818 790814538 71654358 178457081 269861573 817384745 596863225 864739550 846721769 921721604 422491540 546268371 801951460 952824826 494650813 822891140 351467994 714785454 82442728 199754451 13427304 655549114 371148422 374223790 167230886 461762978 315394367 858986707 776817883 849858131 142947995 209233833 906630657 923683696 834369329 906192790 468932049 704225449 820823255 962302839 535163146 701108700 294785243 654053474 14215580 757628077 107648463 399000578 600900099 620891219 956679365 994957504 419795628 668793527 388129860 548869074 956940287 976715010 133163732 757122444 194873371 296399552 407302885 869259222 673996975 710869766 488623534 570968434 109583601 362228149 440364571 610999953 5844506 557149598 444124124 769807517 107057586 556244773 585957891 822382275 507776362 892125834 681495438 887724144 322500308 673188812 479451898 496050577 788992918 988321976 151938643 321280643 576267610 858154975 601720292 607606130 153167528 474586604 485565743 919556991 437972127 790338481 95418750 394995682 333404761 936671583 986190755 989318283 278476703 400562614 321200941 954714064 7015039 90058573 580262923 764966820 740807721 903016677 839744233 865254970 793043944 935721809 728607193 970325317 18873349 899650861 405462811 506028815 703092927 832939395 610551836 655199883 662840409 973369914 815588121 923349731 944272341 947308616 982710300 993274913 230394561 504469442 296435426 464203026 809901272 849044022 728036888 973347232 46086070 731318358 616532188 968807791 415845864 824551481 109829647 356576571 989925481 996405292 626878130 659176657 652210128 781260361 666910993 739900418 308538139 848868244 17454868 999661877 181450875 726667987 866947742 976825068 985633606 994828673 912927118 963750933 120189319 642219887 119378081 625375497 577632892 835116614 416710676 547017587 65161289 120671404 361911252 372607417 282801000 446378323 320280583 885359442 50161439 810481856 525122934 824903919 710793394 857271371 139099725 560719710 178297944 836939962 931192821 966443894 228801124 627616309 187922363 551164819 210549839 257838626 54178428 702032411 822380038 918934193 331107243 482548482 928845115 993890500 909466360 985392364 190396354 901129236 660452933 941362768 23193616 792486996 939617917 986624018 503311276 647371458 851431268 967899374 430367501 455759338 312202660 909865451 634716837 660754040 351610368 530349217 43402244 153504057 716932508 739088865 546669468 967283953 899592547 946991120 674843467 700913698 412129961 669355815 796124884 833304167 889639621 982723168 581706296 649030493 601339138 826537019 726232734 999608550 578090634 886234339 870766270 942100946 745590607 954467746 18755051 708331189 259260949 776173823 374536697 973253575 634253510 750697202 809696301 942345536 23227366 821431748 276795011 665333489 382799483 489422987 904714514 970435447 24375848 357517559 397553645 685596501 967972345 985540221 109643049 772544483 279572978 744106817 989171459 995567296 66709354 248058996 999757886 999865252 7143736 327625535 76041894 966192361 62480423 671181979 689863243 695369518 296148248 518307279 661858014 819967042 503348269 672071722 638003473 968256750 819631254 874579377 878629757 918502133 80659081 607344313 82144594 767856837 5831819 702572495 528618602 637541893 202605134 715423818 985223604 985972084 215711331 854357908 803787486 960830936 606184115 879792819 967579298 981697552 49676420 112700177 248122111 640730580 916997458 935222939 658774888 927757953 508316631 585018931 353860078 857204065 515028684 627422444 143035670 680307363 25310198 761889906 897598840 967892418 810199501 986987032 152453818 679419353 906846987 982496165 462277078 641629462 782108752 859219536 687604140 831802085 208458406 816503852 407103539 566386311 755815640 807862742 725347528 794592439 938128948 964867843 540174214 718769315 524807369 865976818 369179656 471056143 907991892 959052895 8793270 472407327 308792454 820009860 297738744 745761061 531942319 537294983 13944914 659214860 78169454 898577959 223936264 655855879 678742789 951789983 78414964 259067548 891934271 900634937 55252793 634449637 118011124 259269442 206619048 662263501 641662877 703584659 142569854 903101944 691080765 990981934 587661149 985902297 683769426 921118531 21891230 179000404 61062653 573075590 999251999 999525431 400556763 514167492 944037306 951280969 403379880 549323039 77020522 980481841 276479746 953001667 555322182 966008514 47794520 254195703 661521028 763976994 514284518 742467420 947993870 992443978 804427905 950065743 236272617 711165139 370271768 697790058 402909763 591173219 191244649 553351794 857151138 888116687 22177705 192753899 566654458 887797553 830780790 859793869 550503326 640614076 169536161 328287756 510278397 934331595 611506513 816312497 10507877 318632311 894403133 990383173 383723036 395011613 46014418 397387131 293098183 657218075 721591271 972482332 255659682 690965238 213965565 435712566 360980551 529983266 534527432 744631775 146146130 612081807 75503849 469051412 864063068 866425620 272298438 598167916 898690968 903837590 984712297 994432832 897621543 976015496 127781706 643245979 62621654 639783661 112861429 392706524 993376402 998296034 951773858 994048338 175038134 424447239 351753158 565277099 26908213 530756366 274857158 718488184 101659895 930981336 950002614 972634225 547279218 577926737 313421188 655517017 720617986 746219720 823446812 996063498 166185379 376518936 814723391 904438588 871188389 977939403 732104565 984030237 215992934 747370221 409539383 814124973 97231768 884052177 583341663 625500564 74625566 347137735 345752558 500093934 457859900 485375185 472099425 666403899 209660197 829217704 423526335 932198183 765123772 843614081 376771643 804569986 179876724 228777568 932082112 966712495 470566665 825347066 705056916 792934684 246352918 877105200 584443527 784360526 109883473 878677975 157800410 822621851 166286796 497475058 241605095 261070541 255584458 572716535 38633375 883938615 853567978 916076775 199946603 393395451 391448411 831970736 13353155 893358906 56790035 758990508 477036620 835286503 405572523 574548136 354997982 699808257 27332020 617961552 320402563 416499123 185014839 969506206 398248235 667422533 517553255 653083645 109757959 869148670 328314989 454991161 423205232 890408876 466699314 899567672 52265429 470816103 777689026 867068309 758341115 983024352 824715589 939527451 214070854 403369862 71735234 629795625 697960409 752367010 732739416 796661759 220050101 281999351 348397086 882719885 742282223 836494584 661440555 666552536 801028170 926684271 175348118 613347195 468894169 515282751 499033540 538565040 196754682 593745276 454905923 462171711 231973136 848195311 682619943 817737439 264395768 379557808 651639308 960761438 310462696 982844075 792989745 812263768 749693790 971485830 431298339 993088234 906494292 933319630 990180605 992327378 781637718 833122031 718486234 972088130 639016203 776942136 906382268 947202951 654204418 797058999 739656158 929621198 712857838 757785209 678863877 959813927 818260995 854028948 840114731 859777428 598672857 795266974 990713183 991631071 896043735 926652551 586644746 921666212 382976583 608862748 522944478 958497355 639213211 975872277 958308479 965588104 515360395 840668674 40474875 555588078 914856048 946238174 10140214 346440150 358291582 897163085 356454202 813705043 973818719 990787818 463967191 833162261 526676904 606097728 912874602 955107920 173325413 282312661 808823427 919192089 824768726 997317076 428909605 666487252 567653501 953984346 697250914 700786313 434349841 639299395 417405835 909672272 596047652 949524370 106882536 756508778 763144742 809760981 671307257 725318513 506179408 655841542 730620956 913888100 608139496 907027616 831928864 876609931 304161049 580468004 227457768 717771190 289911982 387750896 558135333 828384966 995300558 998863970 257990339 971101998 694864395 877576669 187651634 947205905 682881548 975145600 376164940 685328655 571291124 910130122 53446995 676374258 394100996 727055366 998508692 998720877 538481413 645161952 777135317 978126800 788071694 880783441 539266097 894656875 729418750 997258319 533783989 543940985 712795993 963044389 681542581 717113539 870216569 921492368 684957980 859918635 465843886 987471607 135935679 351628046 792644930 872479060 969174834 981065086 457610422 937251228 155106063 240845676 441831359 540991247 799749893 844247653 284473938 662210499 905820366 989890987 682558705 874727437 58649828 716386698 968557359 988966204 922136381 957297104 902407977 945014521 516509436 896351993 957815542 968763002 12416671 458059768 337697579 754102225 753590609 754697581 669915033 974491670 233658400 321260368 83513734 234079722 43595922 983651868 434420459 572315738 349120158 474574105 182055619 522991238 262725866 748052530 794511261 838054451 491053901 538778858 196213862 847204587 470074111 997338924 190559124 752176891 631079059 922256039 809895291 986610516 519092070 959747152 603484455 851889735 91748419 225473883 728708245 731321805 176940666 206876845 387207051 914224638 790312544 992006691 925804538 944908296 161986050 311374805 637680781 953224337 141849784 372016442 319083041 738417701 758420851 759000153 638673124 814354882 231734758 767759369 314086954 434543818 785562452 822623527 151719142 525104703 426353566 617341234 800173290 851376017 492677918 522024707 967980971 993113650 372099406 817249985 184699951 234864836 14698910 672262418 130605673 582272273 255625209 811497390 936711163 952250351 149861820 939959423 468019328 970325547 101161332 250312539 177042189 781880310 341831269 429772463 870088531 976659063 793237977 823472805 936850566 958033039 738964592 783644734 336148553 793094667 12179621 545004869 957511097 999792469 176188461 273909607 772840931 801555682 239929859 349176027 306234215 357127061 558438171 890783253 599804865 825503502 538851583 768733553 337622038 957236031 439702633 531919758 636724811 669827870 266144030 294458733 230254044 716858595 485405843 616141452 211288511 770480112 94986461 341129264 367920718 573899367 501069499 942363077 658658288 958201936 327671932 937711846 367498754 836010697 61826011 336390688 747147256 935243053 141600714 514011746 920365784 938403894 777051849 810710765 303106710 953341065 352243319 761745049 107788149 820909731 433390311 434037200 987903084 994250499 582878932 584993856 269501986 355443208 188150171 214585337 161872616 538073826 859470929 996901465 896591667 986801909 73439848 786892478 308792721 452002139 582576539 869468363 339812942 483017115 236719974 772774312 162831485 196418831 116829445 939266372 462296229 568768303 464477805 814831672 719399512 852827144 928573413 938085388 737422796 934841232 437779281 441286488 253333411 489540339 442160982 593802346 742240897 777489529 370546611 682098277 152754490 998842501 656700429 971724679 569741657 936499737 990071683 998311934 194701724 530414926 912202298 949887443 383242609 390650081 557297872 596240516 983556745 991185408 192393407 545178858 292010151 382295322 835137984 937923361 176696956 309262463 530898411 872747250 214210355 645408010 438035526 574681733 444254617 464849907 181610151 596693057 362108257 866605920 720800093 943049391 526813462 771268196 737193340 992922381 363947058 979491718 471484003 732559413 881438899 951774785 160612777 504204265 757631060 766392147 780587372 928152649 746346628 959961448 729526211 890771028 911686785 969468330 54428335 89787587 252088449 921147173 709657678 959747586 61112721 426124406 89677655 801935624 58869788 500703922 40143982 708632050 272030131 555089400 23692762 536128509 830276102 929277997 524928952 866986294 923230814 998295964 101136497 269945511 479879950 711276018 192826344 279394618 172014819 767324041 755241956 874328188 169513429 655499733 787855225 994260434 355561409 859936748 653386912 781864988 480988756 646467057 871955391 908633362 650698904 719078172 633786432 850454135 483530782 781199908 22502060 139917957 816008580 847589349 339805552 543473313 157452809 399962720 999175471 999582636 676997315 875713310 465529540 822242810 693681184 901277024 105547520 218294901 664701721 877200186 700075324 743562985 736119691 874472108 790586376 802816576 204321373 480007643 915094383 932584403 299258955 431131336 993350763 996035850 860112943 983196175 132843165 370952466 2812850 191654210 689606131 820388249 70468818 620433209 370225037 491581757 914689557 994067968 773003361 840207471 935434465 942478225 168706848 933465347 226919163 372122876 681937379 878106001 774858726 867879878 480157146 685329022 515756500 895170935 438392855 563626977 15617779 792493800 466821373 774265445 338646855 968358835 839893411 959897824 90332285 587057763 178739150 581432827 285522532 913652296 466810835 801961752 107940018 713347252 469582774 536579956 673941408 872591098 798054366 818409777 111318787 634947663 304195277 634730998 677888178 962931069 991718341 999029658 558858406 570660952 925476413 934505172 827148192 935031228 568316879 799290207 875114427 900856245 482758359 575734255 71679791 598904639 421467289 636208348 771719436 888365944 850017005 983857768 878546399 969279198 764314067 848822373 654942417 726404333 766065012 794597334 819959548 935197398 662517618 727248770 152590109 343988825 732956955 770643724 649616368 679651036 195625086 217319175 217362228 330571950 511307523 827251187 731796666 775762078 265946355 857177173 936180865 951023774 351252392 411434146 859551925 892398249 670201491 877668680 856795278 932839084 833791906 986203220 482492229 880782718 156796696 785796213 673376462 958900908 183990908 976056852 439925409 620487793 383722415 557706432 187383290 999979662 870018574 987031137 641468996 654953102 617222453 987154918 246669254 915833524 639667381 761845892 19348476 740933500 468315685 541269741 732927120 843630046 631508855 938648488 792460225 904566180 203197973 954976246 304378711 528660378 367719284 738088548 467181915 855820991 220449623 301135423 422443152 727847312 227497072 286168416 80723696 438184655 303691173 803829661 621863810 853030306 826672457 954551435 88759443 124278353 778421248 970448009 435675529 893049526 791987912 835801045 714606146 953958571 153124332 841911673 345890968 418880466 302111434 573330274 141370652 189984216 81701539 994039954 533086262 719233777 375364072 650128815 518402089 759081548 286222525 535987704 146498645 779517422 502727426 667047781 458006819 844214298 54438251 165745847 410585793 429634295 65309551 954250347 54228017 142288349 341099304 826169488 105310584 357627845 499223787 618878981 445547627 511823949 823939568 887826169 456436895 796668898 74120028 348324587 728234334 876296291 571767319 792535435 748400492 765831350 114697663 612924753 508267473 572192466 19656881 909045553 444297134 771853834 262445055 994874174 219131409 448416391 244023434 782683437 337039410 639449310 591886378 620978983 588785773 929114774 606839433 744344195 427290797 572545882 959344151 984788126 315804913 864171332 767402498 947921669 59903542 445341039 895884050 971628063 523684049 735972342 52307602 750632781 707740124 891178732 886249191 945947186 781863333 897564377 699494021 754451497 400603790 872953343 395162806 701533359 974083598 987911923 367247796 953978725 561224788 600160548 673753097 735570879 225069619 711358204 342699617 868292925 265456626 406245183 591438682 825430812 954241460 986842202 494212522 780638680 359103932 708046083 999026799 999945886 696468632 901815313 850125560 950345442 542984225 667891021 788575301 843997165 562087290 814265741 429765772 803230305 532953894 621619974 499996198 924253245 742224613 784983098 379859033 648012428 322523607 500904320 377029 511961490 738630825 829206335 421786906 431575579 200127395 896080025 868898327 990157180 828518213 878301759 517183974 849001253 800668094 872002824 246526702 698165078 906868913 923589870 166504781 975994696 120587609 697190913 790706820 820074634 936980216 987894697 904060959 967190004 705440946 999246865 428629410 585922356 616837967 816482680 271776778 671733057 157173600 205169098 510458072 810330277 958158068 981365707 583293514 696514362 860334350 983761722 800188173 915971966 720804341 865696377 850162240 947765718 784947801 863288838 416396898 871110578 897486431 946031913 823455694 923365349 695071760 939053224 356957178 969203309 902413505 915365196 549800103 667716411 543939321 699832505 724669765 837815527 62560968 235670804 671560763 903936229 519525818 622096851 482095041 717255780 449497219 727396157 759188979 906703634 168500057 474352650 808960630 821880625 630793724 711392548 424398442 476818004 673002907 690694273 186462018 211872742 414545389 825875451 716809771 768350521 78464143 383556297 390881094 602435939 977608518 997351082 661474619 859195818 589093705 902864132 479015312 790946688 735180579 836905932 413641899 632370106 964924095 965609074 787172221 915263386 753962336 800287761 537971651 987752747 279300671 758702000 548424407 945294607 427814637 977337063 859692994 860859002 513517460 887827640 878018738 973822254 31922011 348580832 408688280 837376242 152653405 938800723 140767046 339313571 797038806 959086695 837890178 912691920 264181331 451805774 14189233 720179559 547755293 927501889 683366302 787498385 811593065 921851439 953518253 977982328 406961194 826049307 474614226 657946754 555514340 890983299 227317782 713479496 914130628 957970321 369676705 814927736 475413619 749301053 243852506 663436551 249329834 625929515 642181568 897325324 300890150 799815536 570722973 825248868 992104033 996596180 520428666 838461466 256168014 569290957 59425470 902754499 818245576 910063054 69250 716836528 10116189 524126391 444730387 998398286 188948388 743176858 70919874 999393920 181704057 635157020 17212288 109950516 650009177 872180311 344191914 658648406 284796391 812008169 307574145 439225660 664020701 816265013 52018676 208622372 889950701 956946629 670707278 965731873 265980131 804626678 953831622 955470955 909932202 992776655 197911162 702251943 851026010 952030041 602310486 755475551 449199540 788072772 439812846 477255509 898612189 932644961 233806380 337661707 532408723 761586652 922337585 954854521 486896130 625132578 804903645 937348656 347899350 442456968 410553570 947173733 444841518 587365110 171318423 223152264 836844755 869994154 647352977 805906958 164863892 875212068 801536356 995696597 625453474 868082101 274335800 947217043 171651963 727166058 170947775 468898518 447697887 947962368 348465622 459556346 526873893 970065982 626297369 728932638 801071864 857757073 380837065 473562326 77907644 769575682 589963942 830728159 893303887 909875102 476601767 669101823 50889000 79926743 410637505 857429177 236798506 396724803 449501392 590234383 70090513 200066078 33555153 358410675 864936540 962495342 162839455 824380882 820853252 892576117 846018147 878180202 358996630 496799944 415976971 800253068 447066685 629045361 540185942 568495754 608874069 787317644 973924209 988501742 757636829 934471477 757737076 963821287 785531107 791596946 580894675 758719627 640283202 909295236 843053468 982008449 522593026 576074368 852694781 912023308 452581432 853590621 703152489 827956072 165803317 228040467 203996896 218982541 39933019 795063157 215344633 245122413 157647909 689688565 631018272 823715534 582442348 949602372 589452011 795214160 771365764 954359454 334486407 720255948 265975784 302990967 999208845 999715746 57362736 448112809 76705386 249239555 67221507 537826243 959979452 977195405 23058685 159779355 77974512 802620478 905069936 954456535 421766328 979567395 331135314 440103382 330174328 407391956 87734444 274811392 557244747 732809726 61293569 817091771 819856719 965789722 518663316 717802601 791479444 912703124 70503966 632662914 238317968 488320529 471897392 984074794 954360460 974308862 725462084 845501993 773862026 821545217 262333842 606626213 123773765 638246465 651207020 727046903 674463310 876383422 863450331 927242093 153265690 866060511 147957742 669632197 555486737 858553929 165929781 634370869 158031714 170724534 792905296 962862285 224725896 802534598 366432685 983425516 828569621 989643105 362499005 640270799 178819646 875128020 341508030 514366461 548409109 696436890 651794355 776702620 153463699 406904412 186721966 585417528 540680751 643463124 13392772 28146978 814205586 950901297 128008470 737475246 993724268 998127933 689440211 967654153 236274348 753242443 219704994 913290621 843288009 902095484 890878686 986148651 727730755 747706138 796787270 917864550 325489758 940146304 483165008 490821542 14083483 241347483 925297574 966294216 936766482 986513141 730288653 930678535 167137707 967143117 630502198 773813189 803055042 874215189 780074585 838669289 315668033 673364260 240020200 281991941 897536783 937317594 908697513 969087488 915723267 972857934 489954533 925526648 114257187 428370958 907733371 962602663 574918493 682759436 40273876 363923878 426382627 931687706 865899715 926509906 788273303 910497735 584662581 721643899 558901271 747210312 737988304 941778117 123830341 696948829 810643393 833393163 619218780 963835463 178584742 967907740 242633118 379093554 435827953 514585101 570269520 638682779 856785876 883132508 783215627 818627391 265285790 876229370 607814869 755625133 178319771 816365303 340624197 964421930 694326238 949622693 993668019 998041339 784969879 982768426 32382921 494784791 833233588 950112990 273630806 523093382 240833323 722316557 380392659 465162334 854961017 988896758 19991548 916480502 189610481 916734915 501533101 823705734 782690412 858502431 405984869 929695672 840597103 936328983 850915782 952032843 169606532 230159211 259033991 884750713 597054632 751432441 783152005 918321759 498472949 873650868 741959588 941988336 154987952 899019770 468247433 597722411 412220700 841970332 274702955 908071699 181475329 846820048 613155845 866269908 799382302 826793134 215684151 907178516 400142930 978056242 567610718 640485584 686656714 715757490 962685746 993923637 576789032 707125735 939279705 972814109 533133325 826280956 689539763 779578988 816289838 890292351 452367902 515156398 314231870 873861399 984340976 985818936 208888463 902200986 787711496 992985379 583163532 669271610 554024133 899999488 168841592 614922941 4686097 122650359 618171306 783364753 503228260 890936331 703351195 859017785 232213394 993458296 902458793 927656807 610551328 877931265 611927503 748749948 698036318 960272723 517234671 967239528 475835288 736234357 692833038 771964205 544295127 564354720 567589279 647999943 77296797 827913162 329671091 365273097 848163245 964464083 992592479 993955554 830547405 920332800 463236591 741279826 881694535 884388919 310711349 917213093 220540434 669881385 685031545 775141042 164186711 467326722 260634866 869441909 78590279 978627857 296984492 340034443 71584859 692260174 286913440 783579475 467674429 674579546 309377881 936062297 935782440 938525470 12405930 961796207 747840509 816531813 971830606 994237144 182864181 326864585 98865574 614309272 444201273 775571155 312018713 639421089 997626173 999334680 566306003 662060038 499658724 959811062 778994566 910838912 432989487 589668850 954486235 975906362 52316589 617189245 809022875 845472165 737341989 779029780 326047595 774618854 464728705 935965167 519873977 689310073 793443856 929642158 661846717 696587411 900760793 945575017 300698771 792933022 76559634 777339757 894002826 957192336 189140167 774186478 324805546 443787450 478312864 919271207 408030939 781852336 319931637 534074966 821024816 856431591 396111852 419293340 748148558 920511334 389556417 408755324 422678060 847035383 537688773 689689556 381519048 725161814 965055971 993313584 112611489 879735752 773350374 797146517 880343999 893582049 484212960 932704771 64176650 236823693 677785470 738700971 304296897 855359673 56984371 814119230 761234445 850500804 593277963 971411755 556748765 950664449 941600497 976228212 231761002 803325586 604007037 941913551 105267136 143388944 612875867 687507219 466411378 856332314 846280461 884749233 365987949 570112409 316895387 964686206 316314943 979254807 44025342 198386946 560809591 882435437 478159577 870473424 496349359 928127759 668856283 723480131 329725744 525384643 710911316 780964035 272104433 489918021 292692099 889137341 727382496 990979721 431970460 814401294 139829879 501434883 68917302 958575891 445649918 829341231 821641744 986899978 209679807 317944354 398855278 429806333 383209669 413482222 444588617 949559550 85265925 559393669 58026803 737424373 107263351 791485170 185648936 271481590 439421570 846648366 179271066 973150082 2140553 834415108 919165850 981581782 277992070 885866227 944032726 946667959 741897874 887240778 734268579 793062000 266331802 874100297 588873339 712324696 13827322 178563683 219970523 576346103 712388489 884907274 523241273 627487490 565548556 722662540 738705990 778582765 57592804 688553827 210307079 686571105 385695436 495976022 682922544 695947881 731948723 954736946 559722187 609266810 97245035 477415943 840616730 989239026 496529879 978841736 193455403 729838945 553154116 581988380 328630242 368591189 309483028 993672298 186569196 322544508 470360016 791463975 431072263 731420124 28544986 505394536 579193488 631019683 924868487 987475292 347658177 855207592 671938087 958221878 149669233 243562951 286518139 312281614 532358525 852858835 89829280 691987761 525510320 913805431 741902036 855593867 809260690 941078297 671505891 793150302 232025707 639122947 302923667 639450290 644633497 783179859 26892865 552981372 3997554 387845932 666734676 743263741 227686830 679009865 831067814 875230510 164874617 522411217 473176708 646322326 520264339 817699008 345151138 422953996 668883283 765521021 227923290 971519173 183306582 837701949 354930794 460225792 71621932 721595927 50311621 320206452 542799024 750587811 205961307 874341303 250193635 934933680 9622807 236118799 670043758 984675830 353143385 817786452 996016263 999988814 421568019 680160689 206023272 947703078 166327768 822635778 589122790 952808796 337002803 423255049 206360700 857386937 327625283 557487516 527211557 634560720 959387785 995932891 408677267 576861661 634885497 658627500 168323921 340701216 810660780 921453335 251397636 993014714 930178410 993250204 661099861 902867187 257275719 493791746 876361005 900740362 425631187 741969046 199133966 600599851 859170791 913436528 929117913 952435117 929648200 943846590 844513686 907871045 822889198 940452431 539683746 746318873 166053919 520819445 619311754 880912265 568144407 988340967 160415788 929046768 669549725 852953800 644593423 959372676 630444398 683001237 849505165 887834383 255593797 478856863 607233241 985846885 878362410 992244779 981144467 990260994 28233261 785039209 965129643 980796226 572460236 817622802 696912114 992144504 590981743 836511048 881266678 945713937 795577804 904665026 192853210 225514417 708684129 920892293 451581682 990140264 828948297 945150510 503478992 668989124 409792001 442968019 294215014 332216343 608283200 688059861 736945322 958920895 229217592 415354330 841782577 859395299 946517366 985211776 261021921 981635989 627877470 830296919 151745012 455180327 658340805 968427345 314135004 702605119 817356221 971640735 881299702 953406973 918313799 958866422 906405566 913407424 12986576 194878853 154401706 532232966 998863440 998867916 37237983 363081338 679248542 788648707 945825610 970170328 80367486 223695685 867331317 914450761 609752782 684075191 349902889 513543528 397952741 892336604 930854657 948831388 977110611 992063363 528135600 696674224 683181766 735722236 293844279 349274044 564142427 778099572 74085746 293575025 952374854 969047401 229243479 754867698 161291417 645753102 8039787 395643906 890541229 913871675 882834604 902016897 189183876 602149473 349994748 496278681 122702552 800372196 825127801 842045341 474085655 908242216 881859094 986286034 605894365 984129865 160894147 339102096 588941265 629693528 73908421 566110888 823770692 932543829 353793192 579977577 620877926 995399507 256459387 544790438 868182886 993198426 894275880 998053044 657867961 780751223 62268827 549753931 935425862 956274862 651477113 744716562 780593933 910789069 558703820 915940100 116230627 863732994 978250012 980930285 867223211 985555221 549996099 794709927 825836548 953843416 558031079 767286707 455118943 806090094 201901138 247385533 781752307 935884098 117521120 260330087 795168549 990244951 426744302 742165519 406829347 532473403 234577692 887151108 62731700 276875842 710013073 803845302 970419208 975172384 437889985 821864113 207320215 211426235 7283261 606854958 763802731 997904926 966687292 995533570 3889831 544551338 175536218 618314730 708770960 853641545 818946628 842760393 497798339 526943546 371583523 567404035 751756098 807409903 206850725 265887744 508546656 804338241 199589783 485348608 194005961 385949989 222024558 916996192 601796786 801373150 924809402 954703208 476818889 907664769 348010558 854653086 251545964 338452550 322465713 415438620 990278327 994695417 456632380 946039957 137357465 550216551 638963146 945110106 919304684 984859524 204269756 914240462 741961578 977401773 68191056 591561125 306486192 466800014 457221848 898885468 560612423 743876630 8359444 248659010 83885097 310441944 524952477 820061134 82305685 951811248 832377444 911511847 690468650 766695695 441600323 929226820 839640894 845382722 199875612 578143921 458158064 598693713 359243740 925559515 823184528 863032090 29013815 648675866 500053048 790457625 351208184 464869694 293830763 593636812 78080142 698847211 522596235 750620214 171590573 185026303 438778948 871798656 441605411 850822964 227916117 911985878 486607839 746265044 749555218 833134181 591172016 966854469 436222822 730634486 60010725 177827978 124593137 617774373 88038694 786271125 403829754 837719024 582983719 973816907 964411403 997935412 326126953 990397537 234981871 271319522 471491802 480331294 461859863 821413641 122977002 435873458 431110405 555562882 302267330 578298708 718198118 930371509 578241892 915079917 280333177 649546267 311294328 773586688 445824638 516942876 989917716 998065294 701106041 707285491 110630455 930407538 353143241 472862099 844720379 970610162 718924579 824734340 53295401 975087329 552581069 781332308 666160652 737878558 519389121 557473997 824227410 906209308 767879083 829989563 450690374 547219706 995025123 995207245 759906470 865618541 782737960 954256772 79000942 229474396 955766873 962116683 698362505 815108169 755830977 824167776 507593958 655938360 299838906 408720422 523268362 648400244 643225877 948807209 163575355 757587596 447780456 918538049 798885715 893751679 405418037 654741148 881945021 992774827 802726032 883398337 726436381 904067804 458766886 744144324 468389158 764498036 104747304 137502686 128842172 325885348 387557954 483387114 50231513 817993943 112020126 684878969 657756010 660032349 467239868 950265744 543577985 848297958 215645578 488894986 284282974 658830257 445437787 942311932 405446029 757931294 132389095 534085282 116867763 985850327 422697018 590695683 312873636 535042863 38007776 526530542 996543331 999946465 684798358 713846333 63178204 746878214 425382798 490822898 688793632 832098995 379881116 766134669 524404048 778648453 914753595 934617939 143520906 236309607 88388164 119806589 163848054 821346415 936511646 989829524 3619766 254828440 466954893 859573468 248801092 643260336 109587722 856619010 266134689 547003966 568464177 647795521 725771839 780570033 37069629 611861540 342053053 981121406 391118427 418387924 216647279 222351148 522750057 872488371 720284583 772177293 155696564 678543354 115307163 437308419 783166424 948171837 625515867 639611690 579665968 784058696 959919113 974184426 455845525 599257284 511247709 658250403 474089576 767631579 95625857 331844901 47059252 506098514 259125750 678990873 115087491 482204351 300705444 784615367 755119912 889299890 656439082 738630956 539951649 823725668 447081762 745098419 181508005 842423930 488219440 638964996 446445163 694815590 699560842 706399692 925592901 931645486 627199067 717259563 116252891 955103241 339321198 999096917 35587717 165141407 688618838 868175682 647303349 840764460 342394817 690623808 271948416 290152786 404575270 419376020 667495689 781669910 246398057 570078315 502903200 562810407 829876715 976595425 342012475 471099080 815301354 991717712 680712322 850328495 3285397 400577625 934135022 944802774 240589462 308844998 245744285 828941205 140916709 744350122 617645189 786992895 230080049 959270245 148733074 277319948 389329572 817730966 324083725 389590989 324672050 972150176 415484966 742742687 621688094 652160762 893538272 932705052 358175325 697006816 672161270 879110154 779331058 985955405 786063727 838164874 887350631 891789417 623227926 625148973 523402006 651458601 648208124 819326771 649411916 657189251 136164084 589062807 425043282 795029003 670450733 748409312 380465989 710519698 894170016 980744599 910676349 939333139 880285030 929833550 148757542 884122331 874090303 993799306 902144535 963496219 507875144 644128115 27352609 321924257 182921823 761024707 259336728 417825730 709198344 931512318 912639276 963004318 966171255 972435987 363331029 656489278 320171391 376065863 716837695 876827086 963150905 963218212 557538784 854627508 725974997 802171886 352020738 840205420 678393147 713974273 693562392 800843540 78386783 804316861 194522117 197000974 13001493 643712465 742189764 879530043 791599400 886045078 298171976 890464469 351335496 663077263 424048059 447866254 408955485 432416191 30708400 452013420 470097491 985165909 459898993 728079207 616944127 948242752 565235477 622090143 378129541 520897158 597591254 910192321 170640411 462510236 627096137 993839789 497398749 767699095 141787689 573642646 276509449 713379644 425188641 833547512 245666341 747607215 788775078 911484476 55355588 763091581 773458539 939998277 91363409 480126317 609144267 935374412 50488057 258891105 415285542 644541619 493086235 853603186 345611657 586863719 479892234 576028975 197491426 369051952 270125923 312332531 242664004 776199445 143412084 242820966 181743158 994043054 650840045 975225334 556264127 588248032 423731502 959727538 731195980 898221440 551463774 554748907 577179086 818263505 452840839 837230025 316963873 557862146 756089216 928739492 769281453 991498466 56943051 894483342 851063064 909425021 525618748 871156020 800355316 859255253 676854048 699997237 39435657 637476738 511646100 672133112 828903271 969310948 762167763 921910905 429130870 678837086 127052515 679541266 234991234 807961626 873255526 996078547 598060021 725993726 640420961 839272940 465219962 929233268 942672899 958353656 611334205 672448068 157050779 703364516 961177391 969647931 615083220 720318870 572112218 716941667 550396289 810297991 779767093 874917979 783051870 935939750 92783734 707445455 418859584 686079854 524813362 900661432 600276497 833721120 355382719 663364485 199020923 916388353 107288573 584954596 430271611 519116945 946018100 954296631 527057887 875341340 324970415 923261056 9080391 875909865 401608796 538997423 488902531 768988448 364798641 539013575 151946250 656643889 929944857 966393390 471678370 737581213 37776143 514008412 442169771 625434096 197306640 844596348 707594567 930785106 576452889 598437421 236722147 820724424 746503427 788142516 46863128 47978078 596892197 657957620 971410085 978628440 367814743 779459516 488221004 855487142 235190199 944999576 703818822 888487698 672048511 947155750 349935175 789286856 661607176 948610772 942252703 950737058 4593414 440447952 407023460 801546065 735280307 771090898 189470318 931759742 982921768 988655954 29914175 822256235 171494671 789077044 522286549 922304728 807651291 928833417 90369702 946524188 575120090 707969160 602168947 952920127 379071541 868434823 189962188 739370880 42258976 138356025 318099547 411840314 99717389 627216314 497172101 604364040 669909000 790893142 573531410 757816504 566508676 689774255 239581268 245508219 481406053 616675204 210581929 605682837 532889277 573741925 773663874 854814984 318839355 905683362 634188496 958013494 143586597 392681078 466533913 615626498 843076254 914690418 34257073 656693747 464648425 899556710 226256540 414206579 579282615 750873739 262820027 897895867 788145517 893397751 414317652 480919753 477396028 567505838 944427720 957613881 776129375 783147542 889810012 936038544 416088266 883201922 228772223 907833199 279007965 919223111 337735522 788215965 717711866 962998481 938902543 976427671 496045806 604340902 293356390 652220821 822831703 908472892 398885325 788222603 360176193 674769201 815995771 920075436 325835319 565858411 768225238 880444748 601982538 633149640 93916488 403269618 487395439 523937113 259476159 890603278 579599706 764675173 823406805 873328684 569871972 583230713 783965751 951855596 21498369 660277585 898896519 965623035 832816114 986188045 147639545 842751139 805090064 920938175 639869916 908782955 980961686 997050654 322292135 458550268 484405143 854443592 595192861 870139928 29751939 989604194 657487158 979276505 272859261 474217537 869753233 962387172 643876329 940678913 425173730 775005040 835827126 906187693 323345912 488788895 541552259 590229863 219557015 582828309 544388537 915252007 37278166 778542812 321214017 447140547 429977515 803643931 729601609 878904370 754436399 790037370 611364944 988989792 459629202 530891434 998914812 999607766 596134579 808847434 804026916 945299038 599078779 852977873 959565774 987931432 956846848 997056101 133022380 340554465 888673197 983992054 578976213 768555843 642004851 932931026 14792657 732073179 952474656 974436748 95360025 869517331 143804335 978992903 409115281 559447094 95265494 550241886 243156258 717157517 197159754 823707617 358655561 924053622 129221178 312930382 157270668 751827398 914461513 924930942 237769320 645036494 901097720 925774985 963422639 987366383 488060711 822744806 744897980 806100450 377760778 453045195 866328673 881507484 805031695 880069273 296915846 334677482 870915571 914239378 809170023 870577298 697298559 788933189 580784560 634983212 22014689 474416101 755651782 881453177 174902063 590461503 367097183 824556247 726489394 883637567 865337067 969556840 978221069 991400778 737492788 828402775 877128902 918654526 247470857 981025717 34176361 789923550 470901166 910620235 317616787 984571017 82859494 653944775 119402822 554085001 961276853 985169318 586761768 653955811 637466750 935921853 969410050 996841344 728369499 895556740 681456328 803400942 542894648 927046214 820617209 854649007 179641332 886453537 833498443 853547023 759575769 953126247 196620655 976188849 386425420 892749830 122354831 577477999 860102946 964857576 292504460 739589233 466079102 611712843 21124648 133624052 235434371 472175018 432703761 909514342 236544666 668920473 960352580 964793657 732263741 856588799 599637278 604524274 6249342 421041978 828853784 875159718 164320622 992704064 772810956 988254944 770178004 964829110 491637050 531456423 515889376 844527762 293281000 998847428 195013103 677889392 211884670 997853290 334933886 630983642 447633844 800740411 348219231 852401001 704148137 847156927 292347806 717716774 142595494 944904287 945725571 953946603 668881910 748693958 290985961 388037512 658269281 861039998 316574415 397368023 856820125 952723859 582385705 701471785 862155658 943537117 783437403 953729078 560130401 826933318 743643756 801968378 847856611 859475921 217357973 250865878 776036548 968977949 516473943 836025098 50465123 292091175 3124771 251464441 749840971 942843284 84949722 718733667 209916416 728827423 72943282 462008997 86257329 180611756 100919963 650809007 604669109 975667325 228452887 742936849 739407840 932850361 796389806 997491329 430541083 593629655 770342629 847424047 464276128 469150323 340662659 817315522 656153979 848771101 147908958 831528305 369321364 728757415 337108989 734946724 716307805 994295033 667487659 958919734 223825026 869203071 874059656 929202767 947127342 973221004 311179300 587842746 198149966 783549014 4356891 753580885 441561347 890029286 666210306 939602954 520155780 766471691 168683369 777128121 270878312 415745658 959445979 982177189 214600896 908900800 843775478 888309876 769160400 998444825 260767294 667640670 762075851 932011743 94099065 822351898 793672742 795708046 180146678 970311435 452131686 799375401 970632270 996634993 670613739 906425652 294266979 670350723 226665004 879204623 193616299 767277008 635885326 671214157 773320096 909378059 786029540 988973412 938191656 992406969 645985014 673788877 775384546 851405232 124087762 283078021 378409090 779830086 169788011 727630536 418647999 876521491 447498671 908887502 435020649 694733421 607398233 679314938 707861862 903081586 206501783 330688854 884225419 973726830 442394046 666879202 759711576 814484372 670796638 776390468 37094958 658999125 57865826 994879288 877473560 963903194 479276120 565036857 387002371 677607875 701739615 955345152 139171956 580081021 590140084 792363341 984182573 997887944 455179598 873542541 429137784 853249709 913931541 930538835 717467976 977560286 984877346 995847116 17950157 288622562 678391573 913412186 599171061 923705514 813561214 956585168 370124634 823403390 332048399 664616812 962665428 980787848 628574497 960378200 639749933 729705387 664594947 941132532 151270540 563275831 361891590 537049076 423639096 620242922 858937823 915916510 657523232 855905780 11055204 877533819 232772207 500236227 654395893 684300368 237054247 614715407 384395958 592375000 10652423 940272033 998978689 999584360 610045952 895331127 102505642 859348257 16088521 576683480 249038299 592290864 667549641 879300776 975463689 989908883 145243415 425862192 532407920 583127736 230247810 513392845 331319195 737651099 196801777 636175954 716918287 746102691 534153018 640806739 884434179 988668272 560937157 877191328 454701367 733349358 236832500 912308680 53864405 266897311 599005647 776311046 870031706 944647555 896591173 961621460 756394728 798377696 578630749 911263720 120902794 550891524 416720912 959182842 938346188 941088501 175378516 834773438 601345869 779965531 429938773 830463019 838753345 854114742 501152208 617761992 861986534 933419054 324723024 413842655 225039554 605499874 497220791 521574425 684024116 725927345 326878930 755733029 967379618 974977942 287361146 734038871 404196364 972105889 836831556 920501636 525343068 644442980 622742693 771099146 529943753 640376592 68264036 168803540 516146357 745201684 987161488 989750885 50444432 980503827 495015544 547488693 443280804 587561373 120182292 280605949 154902234 747973481 91093647 723959402 98529559 299038294 2062639 285876662 988354787 991177904 132567961 353468370 762891268 877683300 708249213 829632924 135809936 348140773 759170926 883555422 653090790 892681544 29339492 839008005 248096578 873131785 973381123 979886580 950001241 998544444 804085553 904745155 758592986 796743070 913162040 970662873 310055176 684114749 979622925 993573537 734965636 798503388 158415631 899415562 744053386 769267895 270336973 433861024 245637476 865792070 698414779 987271516 271122509 836882076 692683169 982425739 130598188 800826771 290747980 729423368 539223462 703508592 108007231 994557866 489201993 824872107 890434810 967861124 856398962 957259039 96773261 382666922 195088048 560833266 407358205 783255038 479416237 856388051 98920741 612857214 666368168 748636574 583503276 898905678 261660542 369957779 613006874 960313265 738293097 835686099 735799974 972634564 444532135 880192835 71266599 572336450 694687444 871158672 344610004 475855411 350161112 773288146 332666581 922299948 524842886 793814544 594713371 930009447 565656767 684533359 429734713 499242914 333237955 908875982 282228897 982391427 540503235 835385653 667365708 905023735 901158796 941236333 234171894 529264617 190068422 995281103 399409466 612960490 261375659 551663732 294841680 533212723 911797507 919571116 735893359 853812132 169933705 923074948 244862161 810334782 837026229 948460236 803463921 948298653 432545790 435005590 770786339 811341841 495280741 881281615 670111608 943540888 875321936 910265898 453025379 713203382 748068128 989081803 670562053 948243690 635246934 949407374 961101461 961646874 631974314 854436035 342785027 879181505 714631274 857790774 825787197 830268592 290677407 587027625 710443928 885274919 504822196 992356456 899212756 915361366 112664560 308395226 331341599 910756666 213861913 370336622 214367150 882497780 635940500 797291119 287537369 327162727 780764934 945614636 691444876 827256147 988729008 999903650 797002669 799287264 780701873 948359414 366007314 673743462 338500678 902015233 907272197 937883496 734877199 972988277 71663014 362923291 776521475 876852609 329178021 534115391 224859769 918507709 417459281 595337764 351066526 376844121 965758113 981397969 294347562 661094359 315158841 354586320 964407270 964500849 526413360 909623069 917119678 917254491 780888599 959610370 26650792 370693059 37314019 279108786 473029211 747104413 283395113 662572249 366049638 490215652 787546384 962792925 982408720 997104222 185919700 443317323 333973584 566046514 432404658 783471328 906757763 912224588 422033047 767454187 144798533 532833191 530432739 854983715 924486343 984734661 361681116 620316021 718937169 932211664 348429526 770240477 538482268 821481774 676432346 694594215 966347894 987155008 528124305 597819198 767348032 980699727 831999644 894237460 833764228 970739965 545946650 780341375 873493678 897084144 164372483 491687422 850773137 913356466 712290215 850960469 874458593 951741334 937057122 991751937 636899826 678606029 423028759 887768378 933754072 994540394 689075181 948028265 703598693 983290555 444217741 741002178 563700273 954393323 43570706 359953327 329090767 564126621 942367028 981502806 373286047 772798405 731006600 866510208 411374089 437950961 990885982 997978982 922187756 993123620 34217077 354414767 175312014 857662879 997112377 999520063 925769396 974230458 850626669 853322013 511589921 736102133 563849779 637726445 156905952 801822895 355590827 397471777 355902042 442322545 275015385 499565789 468567022 753986617 391479687 890557552 945140172 965639782 171321154 464645638 705196844 718056374 606593116 728800450 129774133 754999224 143329856 971513372 996676833 999753034 44730922 435054420 190072760 601982964 831227879 998240449 852787582 956427565 904315100 955777211 118058701 125646963 356318411 381060277 452302772 925078257 651604827 887886786 695375805 969938914 832804724 994403412 556697629 848591842 667387618 988686407 807802649 902038063 497306732 693699557 417907732 927039016 626104976 689024553 11681974 470146447 358541227 710561171 605990021 976083578 20280774 53772131 164858967 677417033 433514493 726288201 999425198 999643205 411871812 491452494 785195761 864893073 73314052 442304558 627051885 961416544 376513034 563956239 528979840 765119586 628608867 774957202 711204738 804727087 4306863 893304530 600278591 876703120 94505935 779878741 773651305 977184959 59310573 461774454 371288834 615202651 652152669 687507983 303162287 755808950 933579981 952626892 80130094 500978565 137507400 415599895 61125825 358077857 851635186 988144566 565824977 905620690 108538477 881006263 125070289 986453210 494038987 715392249 357315747 372144090 567127111 602689131 404110562 836634363 109810816 968563792 875239285 922329599 960210063 992011886 398851756 520865096 832643046 907426813 311778265 867796041 667818970 734477116 107668801 967441642 817557561 840466295 378862689 728667461 24289271 618658916 944525096 982583275 65911494 546666932 617804915 769608467 519687771 595754698 787127278 821976937 250883892 290891044 495791611 932270755 363002138 800640106 402870585 755409429 630899351 795074279 35397258 972494386 722394667 780040581 240967300 952229686 877054949 893226442 315716641 671521941 787935134 839411437 312132817 890311331 726763596 984186900 11082520 588537808 30153478 584928500 913585080 971242390 421931995 697797727 201292916 781216854 418357148 771373223 795668265 897715262 973267193 996549454 980319369 996285627 514843248 666461077 976253527 990801598 115965259 304438093 90155796 456769597 691730103 939030880 379994127 535859982 422269269 491811211 391972422 612552199 849853398 950330872 287354910 610079713 639093801 841995416 481709656 749330983 580847132 933618164 477389402 887445922 423488428 587245825 259895109 700079544 800179462 958127937 673197517 813721896 770585199 925923588 759983530 811813121 567413708 646021002 389519019 568863278 651996060 973041781 702889096 709396555 737960551 964622823 887227548 957055948 224495514 469651993 565857134 635481712 520306371 918860758 643726495 905765505 371878877 718874614 622606035 873081514 595943357 679613545 646699956 768488863 519415711 660120900 837811709 878015935 432963693 549765560 987079896 993588738 34170343 155705587 724984128 930286810 280782339 818625729 738380773 884743260 516305252 883221658 375001853 462984525 443089848 566339212 364493932 966682708 929065632 944700604 505446100 818873869 320636743 580762147 433362188 886294867 221071456 857807049 21742879 786794584 815201580 842122513 453148939 617741271 219627616 556712147 805078895 933717099 495156087 804414091 277621673 869248800 224083397 641949104 741065600 750911328 79598545 179998898 661046391 685716976 53310993 753433766 251828477 686791508 307345044 699353609 547613109 666906412 503785156 756001027 912217064 913157805 662630551 833416462 728206057 791434056 363933143 980022757 244259318 881934526 184622009 722225874 55768945 507139742 678643693 924976048 971845930 979738548 233510830 997514432 849505089 893223486 455439084 875269843 483829736 499543459 78206406 146645866 322048883 881867341 58190231 516517266 524019358 820305368 735762825 847800378 689335971 991212515 158842026 460809654 753033869 954817392 931395814 973409493 778351917 959395882 914520634 935617820 828568391 959966157 824618843 974707948 712153150 907282853 296338760 632665733 13292458 488476001 614433571 912839922 470194090 847582396 224936066 825942616 122670870 452728741 404216525 890889441 58294879 891236065 821593873 952770379 746544728 821505199 977207151 977617082 628303289 919582195 35643140 901115217 584907987 841976390 582825441 946358989 690581930 867142968 359806691 749752596 812724255 981298920 636277128 974555229 691077679 880055998 329675815 841978592 764377560 849944410 416242483 455543076 66257484 715488053 698635037 742986600 798984276 849917785 387299631 887046250 76427198 481320704 28380144 152810035 66209291 504035217 659789368 862557778 395412461 817999343 114485659 316440404 117969364 544765627 726324007 912454020 593842734 598728890 152529674 802038781 602604949 647533561 967088477 986066955 931602118 988581328 618662334 745182968 268679571 687826172 168024015 303370354 872807258 947593454 54505865 917661730 97392909 143457576 206077406 241595746 261074044 844253256 906149598 966598411 846844869 888726915 928241954 987198320 356928334 792658564 711128986 813641597 382456109 432923812 938292386 989153428 683045285 859601159 336974370 382443379 29360980 304638820 172774198 402120490 339949693 561350044 321284149 412020915 222076263 904376760 296422795 594654752 672801420 811516748 497681001 967859541 136632693 650417257 29705823 438855382 336209005 945575906 585807562 736824233 487271441 629384479 170771137 673241904 503806016 774547691 529869256 726546759 898457259 992307096 896650239 978493207 67815268 482699527 133224222 250840215 454948951 885749884 945767895 993782002 673347329 892899866 342392498 727760614 672596025 999228914 530596119 681560555 727861167 831338610 998547665 999180514 303630653 364751075 326387056 371804399 982617279 983958934 845694463 910842299 638013668 885426813 346011400 978115065 491494981 901660915 753959369 852486555 694951794 849583235 716183370 910278599 413274315 529116415 773001207 926152766 196289027 608023520 364326177 964911955 753420349 993421277 742932110 855822686 686501894 828435841 331449323 394683290 909965092 970595089 463001072 727418409 679881641 761562980 354925546 530287923 847320406 953501993 44622765 338150966 406174706 893309531 714573613 724189396 190425751 641741044 194046453 459429303 471705225 478109036 623139067 916720961 16276097 147887934 84543485 270544391 204814829 933836421 192133839 970395201 70391729 928578155 600358734 601223962 100666851 717638935 146614967 523433578 512611184 878809026 561856370 673794310 731580274 739881615 156614361 918463655 466117914 910541856 88823837 106875962 627795949 637284693 548802867 989793689 450794116 862946737 977523146 984804223 865765625 948065757 429648330 471300765 967112916 991317962 454880120 469721914 252890892 970562255 266698566 940389546 164924459 598530304 770487384 822665006 285722884 713773626 947254521 993364348 637220818 686375516 422597299 425024565 94414380 720911934 769530161 837035601 468277668 844642575 509759755 905936690 638203474 944271194 903929104 985082688 107112244 760352014 258276268 601277931 801530875 830587338 969797680 979455528 678236130 679873526 676045446 778778646 722008403 972479766 380620948 815480857 292093546 956001579 303722127 926037681 104980409 602972119 270965149 648037458 544669790 715999471 619478818 775675789 917576967 953716944 96684434 410717226 843237567 961478974 185718207 289343295 539783751 964454460 603079897 679835330 820750409 834058263 308759908 897649547 566784324 609213433 773274407 847322678 638580642 662043519 837271855 891009709 986530896 991143000 236128540 477537198 487866524 961372055 524818327 825625961 658819316 963023246 326921006 328024989 983238779 990168240 596896664 828645007 238322953 333879810 476861037 803265593 543029068 941796242 672458396 727863767 364218241 486102148 922796835 970482180 755646557 963394859 282129868 350131017 245688310 928492015 989602553 992992464 937453099 969795351 358503763 809989924 471150145 878702502 796446161 987390704 683383662 980158128 865080718 953775003 216152762 969952941 272084657 444966542 335244589 947588999 895009460 906765642 40723866 728795013 189170315 574776727 963770156 994275605 774458013 884334068 234206495 253642526 670880664 880301536 386750608 525144158 84114821 479820599 22764917 802348436 504430400 661105699 173962231 884250647 840201548 864614464 998998368 999330429 9783045 441274361 55032084 88544162 526121005 538103070 839117011 899556284 39931328 779950884 264033018 990868650 224668468 364556791 828093813 907416471 393292464 985079032 804301317 849053355 26670788 540289153 928190517 940387967 963938534 998193466 213847947 833184943 373114760 581598782 449215493 531030579 121677168 450037855 413215764 500296661 719475201 915603767 663398471 924554037 373467587 796281332 366034718 389721890 285953376 846821917 562221021 835291010 180294349 276166590 695922753 890823434 538480574 850359403 359149339 984462311 704329391 930394141 648982365 969143472 121493622 478557258 588964133 902328654 255809415 688592618 334609727 883121338 218417341 558259060 37490991 50080710 334511940 852169323 895617019 896427094 832354059 912817385 924338423 929927289 655002964 761016335 854929491 895817224 287553544 733799523 332998671 644965422 40823000 807776399 574319342 791927079 854783934 978958221 109057084 145335716 391869423 922081220 501556485 941790440 63277538 273068717 94355943 126331913 311857187 692621439 585786929 743054352 794554644 829844678 382622449 542634320 176199296 408962126 439165603 467114950 417441531 569434998 217189977 744897581 657906458 659293610 810185506 967187484 42934334 522021174 619949931 847316602 176805323 966405914 288492728 973701797 81186236 610734074 510780825 803403232 458006053 679723595 130593997 555396636 468391855 959363041 794658237 805732257 932795852 952372638 279971231 625357518 122879835 665253961 309645670 773434365 592024312 659303688 631258254 650996903 250122446 907053332 921154200 972762873 952878076 969082855 545468163 622993674 27269332 972238921 63654908 525767371 634894247 884935622 190779096 874223084 187978338 958186183 138950486 351018434 968700204 981931321 150482943 299305286 633646181 941604691 655469849 790169762 339477452 496626186 269431501 912196926 68906899 744801877 228161711 612982559 365565805 452284236 254167656 968880315 883904861 956858036 438842810 703194656 246836091 661323204 721928476 910794098 225602743 437146155 719061024 755770493 16326756 168373231 361954649 443454819 384866015 560965788 700590232 798441238 948987922 949532160 674729452 955279412 609998898 886193434 376614035 623792035 354164049 739656364 97234951 674356197 916804536 967814540 326577845 666844072 365105031 574498766 161445927 997178344 534979752 952650724 453351747 836977075 2676677 190876894 7387315 921240822 179353522 855353822 838896737 999418206 822285785 931467610 890567161 919687044 573825473 688224350 449806821 716432546 144330432 543726225 675910446 678007836 637317349 993453550 473905351 860910036 526334888 700112388 608600438 922660245 160940663 205239758 601892066 890131064 307625257 462248176 633207683 744536930 909344808 947569764 456430689 579836504 530033190 637878848 340383772 743891372 819099593 941351566 878632795 882572476 672847335 796014161 467905907 571742028 775236384 994027146 573632621 816342292 403388791 811204673 316704065 589030483 474466214 793260047 617885623 938958519 628390291 806678376 897456249 954059955 315703467 317973007 56699301 291072630 644015436 923562570 209763102 940641261 238193251 575125058 522670713 677170010 326384949 739188056 21516838 558361548 347024624 486289196 283155006 495981438 675734806 976986787 197173829 716297222 856955242 917615647 449676393 975404598 94672505 396068334 20328104 785888418 722405510 951514698 93224869 880897225 531776648 587588388 790764582 792219498 720481638 781059270 373048406 757567048 244830538 486070688 718019548 774465053 552962084 572072554 276165716 668366246 427929930 855400422 272070162 722582579 108580365 708091116 76246049 773249211 239919176 344531124 284936959 523768059 711030841 923636149 363442858 702740077 351893233 858594729 499982754 601376150 76889172 95256105 930995134 964472449 299759597 467309531 264069676 681986636 373594710 504497334 472692453 892218883 374530412 477090927 942518333 984794173 28317316 823361130 398909827 691163505 55146775 333278335 279429341 370966929 510377559 972423938 124105398 942838530 341104195 436647983 296917926 815214094 535962119 615587838 99286113 272955953 536793767 945601317 894133675 904694054 601176139 881724103 350556999 649500841 962466455 968420508 133459788 268248697 542795818 652711418 914300852 953808350 985157870 998336215 418443853 827758320 460405014 842443786 788620305 970284756 395904574 832673673 11383165 635487936 877127118 918785843 933861296 950276505 42122404 42786278 702364653 846554292 40888169 484071920 937594968 942886064 198587053 749109368 187104870 858432856 356800165 894690945 887794223 916304870 789680136 932238594 384514272 519872499 574487668 707661242 625741010 680477530 361218644 544998860 296293535 772369521 2489180 717499648 17712010 809536317 103233063 279008965 610084524 659803956 350440966 733669978 329182443 477471063 80162296 746962026 687733895 944059140 837471292 929338108 513756255 822991637 431821924 494082246 101694651 507052720 54700800 391395462 869885454 942023028 832766525 945819642 481875023 711721734 891718028 965256204 586026484 761084045 541270320 941344462 989641502 998917433 697416872 939874847 635254629 829520517 517792975 864865280 900285004 936477604 336113050 540510667 504743265 581940024 669915905 873520912 553895192 661794226 469477968 686811385 301664364 340613490 142458056 444610575 463300026 591323407 950585963 977178248 60346824 550061573 686232655 729961734 626549463 830774832 818442621 987574447 633466954 759912268 255228571 257084118 171923259 906824544 556338019 736108965 309751824 651407897 638507202 731086551 488510189 545280269 78712996 466504676 276894608 871884275 504186218 838676526 850387337 966063342 376743586 510926565 154621010 764828408 725194193 846024616 697828305 708254488 800423499 884534288 319730923 641017520 240379898 653893435 532289084 885114613 461533080 685090719 158981376 582289654 111386499 326722415 534318602 733262529 841079974 876781463 108045277 651618322 177235722 316657889 331989242 825805516 608979705 924386261 730369194 783469645 416362113 871088244 741718410 950472240 287784723 749052035 500402189 722038766 387086501 713477042 507014188 683900779 269857811 452871849 260778907 748381032 851408612 958565762 563915487 838896946 250362793 584575565 889175972 961490747 736063916 846210276 231303387 667266138 985003854 995953115 117122063 735499811 953038440 953297787 403745543 708091312 942022218 994185170 397627908 470309802 280901226 632473600 165760881 533571505 964201508 996764871 143612197 269803591 183690550 998874408 272748359 345610486 138294893 835799537 869988560 885077021 542451384 909332676 130715133 709578584 955253763 970673296 617519403 744097022 772923061 990204625 880939350 960631510 597971882 713840039 969452255 989878053 330596350 620619523 747888599 914039463 876768333 998970696 657505609 762057357 292687039 560317848 499345585 900889794 716389329 780398196 277166251 537382029 225772045 727583980 783294404 834023436 994702473 998269512 695504849 792344809 628625353 970876890 745986837 892534381 155518027 800512854 591516822 671160907 694322950 986213694 550516263 652470037 476916909 782893340 156869540 345372887 768608759 956504593 933635945 991286069 510325724 597272231 299999231 450535726 669769694 807591673 405960160 800511835 819128381 903876556 745959828 921397587 118422614 299348344 621560981 691786172 376353746 651876578 641832101 973914405 968659474 984416980 314287791 713046373 117273285 677949298 448835351 714870605 151310177 815499145 402094842 712061011 833030614 957548490 859202114 928679643 566114005 779193245 650741410 884544231 9905154 642355471 247860873 250446257 934689533 984601500 873544821 992960334 267518164 983325767 483149097 847612231 982773412 990112522 666611883 821041036 154075802 270861911 900118043 975428013 984397194 993711394 89808635 728949400 80847921 407915656 542700224 976375224 343001457 541526500 707045711 912625133 613976837 762093918 177132619 285997491 373286804 793078584 579429027 828131728 384526226 473938464 224280187 531560861 16191615 842552079 941245917 976163015 435551366 929866023 783426011 842430438 400765607 759730760 2443666 639448432 858786337 989342621 18668294 106165383 694550027 949844021 728908719 880343339 212964967 589088841 512962789 914386505 177953771 663765076 668221735 731962147 518678385 905259238 841372794 879810964 539387956 793219758 776752304 909181932 376888493 522533817 784450813 944244610 353600688 368084183 387099860 579177778 585256088 618926671 641056110 816415655 235334541 551392095 184743538 263505858 857049937 973139844 924657985 981745914 242193357 528584604 921194228 964090900 118725632 880242525 874487725 936318049 508111467 523028157 762989235 772667852 899920680 904171636 493767058 531071417 500717567 595470040 115876514 284973605 932845118 982710203 57745680 540500668 604992327 623084036 921910343 993651555 460772240 593051262 706054847 733680798 70848085 649471742 641757720 903308603 744016494 773048196 547847371 960228165 408610236 923835347 373770705 392340278 527465865 572538679 401880114 943060282 497085082 498033198 668541549 736978090 573090306 649538832 484729321 733669837 989749013 998817752 411784079 753213443 828923620 881154149 903179834 950458073 228393525 969919541 389779293 886778594 769016705 932203758 365451439 886254812 772952008 849506489 331791867 340911659 343877033 434980078 371858846 425532186 318493567 556138515 135833031 171331586 40100205 461694223 632850068 767175441 521427132 698679823 737057835 950255465 669037867 969131405 903557021 983233796 799748307 944641807 71143917 175630967 196076605 785440486 415771349 903584491 853062079 873704356 457181326 894315846 298579493 551443515 603863796 995018852 8840781 759155144 213328286 661549713 373605126 983106428 341436522 862507049 618044276 931156285 99756472 899582610 41627319 313807806 187865580 254759889 485345945 869270539 153121621 675283729 437216070 560808539 387926574 872480060 239821785 896444540 13733122 999060515 809728728 909513699 578404041 975485706 532239556 774838613 869454817 883080236 205083416 510019271 531475874 545474193 851054672 874744605 71546018 978946565 485380104 530968247 653630798 860242343 626067721 739902769 858911957 918053316 388347237 954997105 526581508 578055968 583835734 782729042 793340467 868249686 884012485 905664447 277817048 488650778 670137969 988138398 306037143 462160658 764928307 795272631 514325219 548531554 226213847 511558715 957314585 982169544 137627274 630399763 34713455 803291719 967582293 974046417 588199347 657749603 442774731 625947700 442685851 687340150 69028807 238251693 446106231 870545096 299662025 626855606 755652957 884251705 346352661 757516169 287511126 870592468 354321891 498638015 118752105 898609294 700717283 872267462 243561055 565113689 393283192 919757316 59602360 358424778 275381710 597204574 416669885 461502879 967448981 995688479 386424514 677878209 330313426 893061014 514918051 987945023 368074096 375187542 505052892 779637254 903329723 939528719 470427965 862652666 49820514 847181231 735668291 949051882 330828654 548898846 647494590 701686226 220648137 385663346 504713338 882917931 835992343 903546155 735436311 772268077 904055768 934939332 111601547 227438702 813513978 843693919 353480442 993889943 92267632 225103727 961156981 972765946 938029900 969284432 588313435 754060302 430326816 735185947 443711395 771458364 536951775 919371313 641980814 710210324 147741156 656944776 770390127 875207914 759735259 936655685 467130367 900277791 44235663 166076139 710960676 901683584 803364382 809728968 897924884 927213981 430245376 791686423 313490396 934606595 427024405 900374080 721087809 818283703 4597462 757291542 324934565 482276307 438123349 900191856 542250013 865297360 436015791 916882955 664228825 737971186 598500203 733316015 458652992 761815904 514769250 950230831 859489329 891869763 521685405 983832233 462331643 552219425 476175497 601008938 245511456 786929622 171188957 886414739 782876110 840344146 474698983 536421023 85758037 417101960 215108841 465115634 24052671 344902857 309256258 998423397 749310726 866572803 672485464 927834407 858590773 895906658 609668786 723862351 163546162 385647417 374980150 704228744 207975516 986051493 210511321 484133637 646749949 809528716 743157399 817477200 852600344 892139276 523648337 791080862 878835528 933813970 994959550 998655480 980984958 991434715 166261280 531191191 832745762 903237977 925125297 971575649 739386686 907989663 425664379 488438265 954919781 957511419 306783706 510233532 49777021 68955148 431179651 518858007 945794997 964962223 872610522 909840626 478754178 707183758 146096240 573562389 508976628 615337381 54323132 899663928 119565214 276568837 289685436 520012273 600552965 890673598 809801483 883295799 580469076 680534460 662583823 715669693 225788455 617045113 927200585 975612232 987278812 987692150 236234921 278035359 210259617 959896880 925259214 979982980 14060361 128388900 738582981 792337160 563054885 573687765 374959020 836582736 652733441 689922426 912663701 988556131 106794080 889169739 991352056 998166251 709112075 933695421 937422584 960567051 644930806 969168409 449483670 663047384 587203721 694978705 532381780 873495919 932498800 943919918 161663941 723632770 156613494 894925624 992682557 995510261 732178539 739185145 637088703 914366159 296048862 865933916 295516852 419000205 405365367 620124270 816879613 890633935 217247070 683461574 528480364 582376503 104381354 687725950 417244737 505871325 864700809 998524618 842072460 979761296 84918130 220733355 76362049 939681107 557630003 807923574 206049105 453911841 735641095 825945147 947239633 956084602 879831805 911768821 585106901 621136444 587508212 822601317 967535520 969585496 471257019 667503684 220376763 266206841 998593707 999427824 798379039 891113152 725950597 852730400 779151726 881161496 997624989 998406148 754809952 764609818 287727967 714708507 953352652 965138848 427229920 500298595 934098214 973371461 293072613 305390122 952591222 979447152 837058375 899283503 971369725 983464246 956317858 979173571 254147469 451208124 512601458 990503047 398476446 505112927 369065098 924603637 705635115 927237068 559565729 987736529 857080878 905040719 169384702 845370247 398270227 799219653 395673044 774123140 670564316 840170728 630361289 927265675 404575939 919384077 14250124 616151866 490839221 853080055 759800559 946697839 776478407 933772601 468725048 880155545 15861150 31022861 703221112 756234685 515443392 744919438 121285835 460243472 137897755 364400642 514649549 715745420 705161670 873133237 765256878 876856881 300014323 821485989 706669079 902023368 408023949 500569104 264335182 995555325 202885628 767942279 529890595 534767418 363408948 526439622 782024672 857618448 284078669 638190729 799629668 852803455 148690601 782765432 331408247 658030499 626029977 774752739 690752590 952325152 575664506 811310984 299493407 822467312 921463926 997254111 283831172 817370265 859111125 920080682 105320066 176970882 563508250 662867207 342907509 354112472 467994752 565938448 48049159 450393323 40265144 160848159 432104068 847984859 62059426 954607484 107877824 864011170 465932754 678497033 225766052 659729473 632836432 859896977 883735399 914662475 828776047 992660709 716506860 845189776 8924435 670743954 725597575 816863432 925404632 983865521 361707270 737368175 852639291 913229896 333177721 792682535 560557282 777755271 197202498 516707784 230889960 368185740 884529311 956402676 647998987 722194111 911907605 926299272 553163230 897098439 924863942 953387903 166914889 312679053 392789586 963666091 888426024 932800894 927297752 932305669 660484116 665893006 131467339 205837889 85257525 986789237 535788408 576711051 539888259 618538388 221825878 673475408 848635732 900262271 354835672 723713681 96568001 283667719 318552259 608425819 627648525 800333501 765629440 947345939 20957838 714408640 383390894 737098980 770976015 924000217 202538761 619652266 713882377 777074961 90135625 516314483 741931004 958737094 981215123 982398617 433612993 995704633 247852052 402713023 839049165 924381717 531650712 936864408 137595761 214853642 53010844 543899821 931957013 937205809 893667837 991446173 155066234 381379429 819949497 897502870 707446822 787360507 591845405 892420771 421837807 671948116 174168257 890525843 119576859 876571038 608798951 956454464 267424274 780602631 815556562 878767142 427013497 534613626 374329106 442295831 389590494 822747427 425460099 537247503 644077025 726088522 599012234 854552105 585407112 654847153 532255185 703389865 403184166 883632915 803775812 965673602 697216645 721951162 500254999 993161655 651947358 766176796 453356330 658333356 626038382 894913892 58907173 218286331 313293854 717089849 571666864 807100750 51031235 197734268 865291310 989245364 681745632 855347051 776241442 822758051 173029846 264452516 109881187 363107604 210096349 883192046 543767763 720534937 650944824 971631440 778988856 981140861 519803588 792845427 440880234 825770805 831228470 983021508 59507040 509875865 380574421 761851661 479998123 510349107 672476003 791172506 912620892 930050675 496953895 832405503 290701248 720051486 77919022 151926071 163476587 825288785 659999286 832795968 786722304 907156644 97541380 103459716 82514376 606783662 189028015 624598758 359091671 403167962 57480628 755686189 149526306 733048009 547109138 829853593 876340670 975843909 357292593 403056686 389688170 787412342 106166289 561099594 854276135 989209770 580247027 735739817 154758785 571337261 177685978 458041420 864590954 963038205 964425618 991755416 212555246 394400216 616245030 659162356 930313299 983006945 614798808 813484758 231390075 464972536 993865961 999772299 914334071 945871841 328072738 388573791 782140177 838900771 683474749 770695377 249458440 444090491 669143531 800233060 423663546 989836783 888734941 896259621 939466398 955140010 993924571 994440841 962261186 984985239 549411647 941659182 634080842 729660747 74223969 928146152 876609468 929063799 948474009 964041710 779249816 992359721 983098737 986673388 862493758 947842123 546897069 987847288 752945188 854154542 296101984 639468426 741153583 860021508 37282055 985825979 198965811 215811131 72329667 179128387 312005375 843899143 51615379 986757880 465444686 715023486 899280309 975301844 498928195 551175012 22502059 786786713 861387713 898281290 415977946 504292099 112343139 785658143 982967135 983983494 761276035 900648331 492775514 778761843 737283921 892382008 599671926 808767495 962138746 979416392 890737770 988087123 157316757 933848345 836096243 881786225 128934078 170638308 664565649 774453346 515665809 874830486 799878491 816927776 740147936 816101657 393785419 581286767 308426358 360118472 472786391 474259947 736603913 842821803 524796515 662633484 183400632 929187498 314089977 346773832 40430167 147711846 132939564 630284186 474465146 859427926 690229686 926397977 809262224 952769390 750442644 775046666 625806826 646643558 157607476 833500261 118395930 501751333 168862854 716628442 962921655 982945149 734527549 959941615 717978673 907702801 633066663 648525732 524380172 634034393 116996464 348243010 785679449 998537621 963813907 992529302 482229897 905188172 767514020 972824731 835340203 931925079 254714321 925975849 309348353 485246743 662286419 784811947 912515579 920315367 739407770 807278605 85496315 546079140 964787556 985156040 970456274 984542465 969390738 993539998 437545775 570636353 852913145 985145062 839057002 896045019 939473331 959394503 40355784 97075922 508903706 872028323 780712079 987193391 787491544 942082471 750483339 884905213 265851024 629135698 724836093 788503604 728580156 935747904 59757523 958257073 519080192 595940281 432723244 731267580 407581583 667790058 160890774 305222604 328744381 475002656 566520745 779264986 64954568 84694937 528600186 700877280 52535760 515756775 651577714 895198713 215866769 300014538 72068647 301180957 115750718 591652092 71480768 697191401 649483079 970845716 502965154 859159107 977560280 984704049 389793677 908452961 365261267 972633648 976559523 994885534 999905967 999966438 927904210 936888280 840042692 969168708 596518951 727006320 912069051 948482981 179738768 854349600 663740006 837092160 139736474 886864257 492530745 972677536 229996314 802241472 646782378 986565075 569109588 990991285 777506166 956425213 544269317 695449310 285675911 993897326 264209834 954057703 49390459 589394702 15496637 872104592 263300002 307948150 667447906 926834444 457740921 511507190 737247557 976270728 348470486 450016628 870525144 963413013 926618036 994249615 880089047 990894139 912418869 919994192 225888394 672382309 879440239 968382213 244502460 827073502 437166693 719036904 125341461 873516519 433589702 758271500 167368013 336387293 686586024 799818301 33830611 270100413 200852880 235461409 152988773 597224397 521059480 760547986 161322496 736026598 519087497 622339921 413304215 507027413 649851611 845345962 10445025 312511192 454097714 622994212 768618050 953003910 627156847 782419048 660977074 671431539 394499638 912698211 92972224 951465692 978479476 994169433 230064208 232001873 832012757 848742948 813760732 887603630 48508859 668392572 228621408 860306895 781215107 838273359 827786137 832181306 441589867 934823355 971600324 990065722 212195894 770788604 267185463 847983741 499882575 607368701 50779033 913728409 76400396 354324735 648706250 950463441 539040713 679543625 901724782 974145016 92828569 846112427 404728953 438707188 842442833 847369816 819172009 918628078 450822988 635137130 911300702 927198148 556743791 783913537 272050485 459364154 789014379 883569933 600860409 967036473 83996840 93772600 753079045 866416570 794696137 964802127 251632729 365195349 973847415 989180140 714471798 801310165 791044993 823423880 238173183 534675871 392885600 597846937 315458266 829105395 433298916 761444226 298700688 583231033 487850051 987309626 324515725 574862310 409508972 505733411 474431573 901659420 591725282 866306893 251021131 761288259 186100503 777506041 832229649 872789944 779177735 815548880 207349258 700514119 862040203 867333567 16345915 367053312 338691056 635231955 852180709 973201667 767898181 982425248 617254139 675947038 166557469 821361603 123589859 514189308 801247347 943074232 100587005 731390059 579783429 612282202 10365763 698147023 142084182 378517933 82081722 671361690 855627930 988409296 599157573 933708363 150769137 607522238 454003946 551236899 553856480 877906294 637094230 819688649 449586411 588374448 927121411 966194830 226870403 589879161 474751323 584760434 701471080 792860509 341236931 376353851 395479807 949475007 927613902 947749952 156036025 549317179 722980633 789590726 634325017 662324692 708023815 959990858 940654651 948742899 855744409 887657019 885461958 977290867 400327178 832117747 608650762 867149355 578670031 659525068 377049324 621518241 11839919 415464832 17421252 814804226 304341252 401400852 200843556 470512594 364032107 376672535 780873482 812608355 631079319 844580697 440976866 712897057 931097672 994493712 717243624 885044440 664372266 955901494 978313406 985939079 44275816 920070279 987693101 993891713 312101941 689139117 585569352 965170647 543074755 979881331 630518911 635353994 414748194 939865414 139000493 143105955 446881069 990294833 697461196 895981509 235025445 249342791 762455910 988612348 564280912 683662965 97680679 223178725 869986693 903869871 559547772 649267103 406045611 600749802 797898878 970993714 303475899 546531036 788830931 890677260 374342423 766191361 797198304 999464904 177704999 481199660 600640966 870532624 865090865 958761420 822792894 823435899 415045271 700615266 798270035 977846472 964321114 989321163 242271815 691082568 260236773 967195740 189458391 695072576 269436655 833875331 61911607 244261462 315933677 344460779 702291413 980351389 637855067 840359416 520293061 717318912 228111352 769715070 404177864 690253806 924194403 964168780 422092008 838587949 797558446 928502486 626278457 895042096 563499423 658741413 168964337 688411904 568046698 734720106 591091003 909488946 267403338 275392647 851568074 967750890 412657014 434707382 168899546 359373757 910525266 999614856 29599897 215113025 456610305 898129438 551872226 903163817 288191775 430575881 326688560 376706738 165315397 676103115 428401726 876967940 889290626 943092591 76748656 385772920 861323576 950287960 833696093 870466983 582282484 850913086 866446476 930456678 611540700 998980839 545563518 678865432 801644144 823289899 448482899 453818297 46504364 300880224 555607984 763220989 930262570 989918907 213164063 601305669 582202049 694397155 185803335 695284645 771060970 941860569 123040995 555627396 676688281 767948144 979180641 995003541 266467243 653269104 852843953 952525085 847962246 981798566 875036206 880993860 735204284 906759214 195039489 505315956 185432570 505446946 211511984 686650410 537235003 759358057 909927836 977091100 204693168 388728646 130814483 215315219 582213549 798098873 871376876 934161616 995561154 999760402 930502166 934892536 49972170 304769339 826059385 900068300 839052994 995108875 553365545 577668628 267468346 860340820 538383732 633535146 797333471 899839666 476450606 903816603 935313084 982815886 185010317 948352547 79508867 644881813 724127334 842001599 230169530 804527788 705456833 795778820 39309983 883491665 426731343 609816698 509064448 626197115 906918434 939506514 434625629 723834996 556766469 790023141 638455355 937522784 83970017 731998041 953950946 968793635 894963002 998781028 386274184 960680877 49243414 867018796 613511505 870073033 828892994 914455272 253163170 328177962 182201495 455228519 911623493 967005958 257706823 678877084 881344418 966876588 669317938 675598066 205241741 786243183 787012614 920944348 93998246 919575053 391950750 867534321 219948534 449637667 275971184 969232391 741285314 892587866 106076786 768308842 769766594 865887944 984512788 999247197 283946446 632948422 991713378 993005909 971423348 986948008 797559556 982002411 871015963 950624510 146786905 844573604 152587379 753885723 158230831 646870402 973712129 975951722 963878159 976897873 657551230 832302573 283907989 802179936 353795871 843803264 985230438 995414657 472698594 684757547 780525189 922127964 947723768 950923953 776761551 803292145 918191874 993155060 391406098 958441814 61677458 444344448 179808337 602381610 773251664 965074030 910909807 958096268 221520874 983369028 598711360 604234264 667897717 878170047 145908650 965633360 362847881 462952002 275067444 821415300 443413326 938617415 773819780 833188788 424472260 445969374 104256909 627942958 855771219 883527767 60190088 269718978 774067554 844639660 386273099 717995422 166568885 189960351 845069365 895294153 652991632 782457878 465418759 529982517 40005400 762767478 851958357 996778107 240278769 329903680 606613388 861124927 985974134 988248727 773180619 927418128 742409489 952532118 605170842 931931874 455410954 991719521 694922750 989524969 497104532 799945365 955487488 962306816 838874665 879899108 373202585 585451926 256989209 676748483 317463646 463600164 542747283 951991212 960188911 994003059 502461454 769034028 584333779 585591302 303550356 330890620 521082523 676257713 14560206 954935812 398083502 846373112 779947352 977273951 259857683 785559235 226761735 933175605 544343372 997459068 380762072 672266361 936003809 963001000 965349253 968502744 643174649 863808020 985850089 989379927 849907700 911404972 336743750 496481378 766519464 843666287 225950610 857403733 457211485 724215117 101292656 800481097 375132807 573715864 461061880 972493975 549999015 686344946 468775211 683467004 619627018 713031758 837815353 850989573 272801070 304721697 714749213 779534569 782012820 818407121 478773525 628242494 529853618 959757430 977410915 984960391 409649398 586723038 619894870 903202116 210990161 848639995 138763896 393119655 70754153 673606640 68704223 111780560 587578404 953061440 63112716 937300792 640458052 865650122 571560579 976089710 652397499 830542664 25679550 585616140 52443075 203910491 61089233 555637285 779096711 934960192 797975120 944392699 808181423 955987859 356932391 797844571 664693925 708987751 346995072 414053048 169025183 702719355 742574918 969536068 695338570 770144200 481164455 658587682 162327814 510305578 134887319 856699749 642017372 823422578 661265871 785185225 497490803 521653620 964464110 972501544 823655445 867228894 602238626 977330316 517681694 883511828 462038135 555456030 758312290 892455952 288511288 931379361 434354677 678286191 568512107 680341963 448515058 724853928 810602734 902780847 385897523 628202527 290840273 958779703 218179384 774877936 757875087 993880257 374308637 447783576 298947842 428043228 307995681 608615890 167407960 378735757 941471812 952808790 716844413 951785826 417869250 870000271 601971226 746895184 847571415 979719730 44525142 306902292 577274920 616464135 343211201 357240493 707045137 827115810 258062945 634087126 681027602 866208116 874967424 897641384 490423870 538712690 610977828 866726022 303578098 432882069 505633711 580666655 820637213 888521339 524394518 923047870 610905087 954920085 102462078 338082341 704073715 839011393 697570283 993038994 20623323 671590805 433399807 505829257 427496419 799814945 185782746 765862317 204358746 711883977 322179832 410183429 974523947 979162423 6225525 346554067 846658474 935828433 413817502 649396331 89055043 721251939 35159766 956300932 716289671 947367503 492447941 880449608 703396571 794705702 429708153 474395963 415884989 906893025 240290962 478916912 958847323 999441719 587667645 633074474 153492354 452824070 873022225 882783080 587015969 590702435 529708606 962202267 212020493 563466968 905734127 961831372 467870557 544184540 915410379 966762203 430545212 874064735 597761317 846462717 68175867 809747804 497216536 984087419 368949006 452755914 263571631 689596910 570718974 960421228 446532294 930920286 367599451 521480395 484978448 538603383 102657572 609221321 785881899 914378511 120879695 347926104 904007440 986786928 868325631 979506104 122926172 320016130 141441434 572664724 101424732 704133368 428510902 743773337 472193613 546676678 7642720 159474777 278424819 288740378 931149847 938041119 913162698 948766683 587303303 781443185 111923730 511578239 991815907 998516636 598300418 749194030 775256323 953977371 137260157 310501920 745427343 941824125 334253584 568756772 858791612 863443951 15099159 743414931 53806963 973240484 452997750 898906920 480520428 993356226 255379007 580321480 676782019 988402482 838922736 841359808 917777615 983300535 908220490 978767358 624362985 877183389 937925210 949752970 510748200 844094359 790801189 908048856 232050035 403774791 526286973 549211232 963570743 980175560 315541309 784916723 854769662 861789495 972951138 977822944 906516207 963541383 746653448 881790471 388116838 741658175 389775700 415592500 173899249 478044666 19567264 828744290 515997607 839944798 63475125 860607511 368758407 810716611 212823298 711751972 635065053 674417337 737784011 856014409 697789614 904839737 865630325 882093784 845303141 962330110 556097048 955251166 498650603 611391556 352408396 564005726 512134778 927339204 961954749 965362480 502469266 671082722 31173681 365548711 979792988 999556071 264324680 829571962 740854446 949867261 763295342 902402332 510854149 935089546 20406405 60703105 26028431 836330580 103866783 775081756 862406471 867536770 265293154 490891723 659655969 995525095 142133689 737343454 819639060 885019991 704845840 766401671 169328309 822011594 566589771 735812486 982965016 996607286 879893748 967872259 266738511 603596418 51090673 949152427 835188501 840097913 579053177 910951788 843670423 851021021 323718934 947602568 360771642 848256149 777935151 906759837 891484656 937317417 738941053 985562794 177794222 382869116 286654284 353917532 75126738 823173291 894016078 970498473 987166347 997229669 160302319 652850449 837873833 995199855 566049630 891599350 561633387 741581348 148794283 812851335 367197191 469895757 647332190 892587092 375066303 872950993 242032260 750122159 479247114 530044067 520075025 551074019 458451135 706425809 399440678 880337430 771739917 966887760 766768734 802828457 536081246 724402507 696802885 784954588 26584073 662644544 828788482 947727468 22996014 693676418 212503842 567573480 960460439 996561875 625713493 625930181 420924395 446255827 184248567 264769941 762374293 772396625 688388111 811176447 92230311 176243860 977220648 998891299 630383183 828450999 380038092 757530415 441110457 489350006 553656754 616726034 953184179 998977803 730330297 732578083 124393890 567161167 351083397 406997349 749538268 871270240 316991059 789088939 504307479 720952858 49772718 296919543 663108282 743734034 428119887 972058158 784270707 802519219 31909712 124730313 507289629 755779573 534322475 916198758 274627493 647169479 430674366 874683926 2270102 717555581 752594880 989460404 277873807 979307412 797103578 803241441 840384480 918055049 736822067 903638237 377795289 539007134 291372948 898674950 669897738 975833256 269908567 726358289 607577996 692358724 756848937 893751574 125728084 855827518 745629507 934919552 778279078 993309950 563030039 860166456 599777757 772746562 819613215 941970872 509011424 943260689 532915519 871057719 391804373 413049867 540280862 668857381 722785755 826700657 905999748 918693888 443141092 668473018 204748518 586895628 311348905 423362853 586904450 987965434 395894045 489264595 502217951 796779769 246771429 513451291 408873818 560164226 507209853 934662210 66086183 332974216 531453133 764253882 205325010 309057899 366619524 417867935 436676791 818135377 627407821 688146461 607937909 709259734 893427831 899275258 435560285 488531189 485506147 538719214 400742926 616941268 781391717 797625688 901615852 939666105 426897378 442650922 294305541 986566268 120838602 751925208 937703180 984360397 429115613 844129040 992002271 998697948 506451812 819154646 532010800 709115396 698337816 909129598 343787156 757794162 188995628 917974835 413890119 901427129 137330423 770449411 745059009 790755145 859090332 992601164 566358926 920057712 438846412 920020918 972015664 988631864 66458020 377189039 232257843 974591998 758238364 831401347 752831614 909976870 393148502 917910774 64105237 441774009 218934670 929402748 458337968 517207985 461733499 538630574 455090987 458879210 842762944 981307087 983068626 985276883 877338495 965820136 633007539 641873969 953553364 980915374 280941888 808194536 472666366 826124694 838568566 895480887 793980064 904825615 136424617 717387093 677813330 723842320 114938079 372093606 498017853 847037737 477078226 940036253 491685335 532177127 863761009 869023839 613961386 886518246 339427087 981586039 350570330 874835759 702334780 996560345 35688582 500513210 268880505 510081527 947748622 968801120 260828694 457806141 236070313 427263719 507171033 809000544 677143992 912148111 521338371 649170756 559397196 982598718 742068114 744019901 192400462 435882199 601900743 875904338 147637459 973786052 551078916 700262439 23339035 728354903 650450832 795722195 752532259 936458525 365356621 630852291 34959163 395360100 452469385 531097926 160538588 400413083 934682920 956101393 458795418 584283567 798208969 952309856 118788625 650130401 757170239 798724882 106166049 491524488 774595016 905990143 472435393 714817256 46071022 881252051 416129640 794014544 211877241 746310625 597483887 751917529 697931053 841161412 301189594 428442322 204084090 917500836 495505682 565199130 175217437 344916536 859144044 896894920 630473655 722622344 507773851 878210601 543108512 680780842 94718324 375476336 929028363 950708752 358831609 403835915 893047644 899108675 76786057 122907973 162027177 491956300 961818582 968550174 644815893 933480316 178048337 496259735 237891651 804839279 707990259 930364281 489322593 620954141 437587983 646083000 55138630 968364983 861971009 963145253 703666845 789899678 148826323 856218522 394819160 404252978 351839239 765925089 540378702 542623122 933055382 955455770 227257638 952256462 599369202 771101006 149600491 717546764 561388542 831346400 406753909 727796165 488007862 990713297 940002433 994451437 303840480 384089859 455958386 971708062 909209545 998777432 607884483 749443874 365426104 989784300 458038661 967757471 136420721 449238979 950721651 972237464 598458877 630958029 624648062 937598962 47654212 713192327 683534962 852546444 809513488 967579278 297950779 542089771 66172467 580569635 932126052 962420955 44696557 249003817 651859100 711740748 129812077 470610334 893054273 972169210 88342230 401951577 913363748 989480354 823674150 867949404 411577257 930937497 206387565 651001939 825524354 852031019 808344927 906635402 162290444 318034802 711021873 713592333 673108466 746186881 326985341 339004092 555685522 575164264 143927107 189477190 847085219 954918573 896167477 947446658 453764551 832228450 598629442 749690390 755845159 983454387 169922372 580343812 51118428 932924214 751437993 994055551 691522495 876531114 497770642 874473874 593281321 828465546 304899121 313227189 469760016 501572390 256023446 645124901 930822009 983767843 234710854 765596283 136756260 826717235 232250354 677741644 732862562 998064794 56088190 207417395 787710800 900790949 697918493 865617850 652849104 841716492 327392604 721284702 594084777 677833600 578795914 742168023 578262893 833207845 524777820 812769499 428324367 970749989 545306911 597945030 463925877 795778096 657491856 716361610 443917147 592741345 319355429 618629699 889921650 925037622 900837859 969837534 617334750 736497493 35471537 631648536 153011752 839666421 316261517 715703236 926380280 994397576 217448764 238252581 609515288 690783251 161599885 749914207 850057993 970679583 530506889 864305940 277385007 702281542 258911705 635282799 13443417 447531468 624522412 743119070 294542114 754847841 911736473 964689607 410974761 428608714 895785191 969512740 360507232 844443882 323541135 846677568 641630523 943503018 921851214 996931813 270691967 627384734 170177955 904825671 780049776 872021573 187816292 562147903 225791511 894224898 148560540 422935224 836550353 854632730 753612576 999887006 54638900 821543657 266611269 304967686 326670423 708404935 4124222 570901961 683678052 859263412 608491198 867515012 32078698 232172786 113664924 141000137 999619378 999680123 780370542 930912547 61265080 759552191 7519631 679606349 701803764 743001343 221620017 791765895 874711431 985237108 263134689 772876193 339852678 580948118 712984472 808745331 799551646 900280729 735121503 790554897 683774198 755628309 282255627 738466561 173837661 964764561 988413839 994139074 833268081 996529000 427888754 637557084 103946188 210098113 288579802 882634136 873381983 946912160 634212131 954678255 316168602 470409390 189521931 773425721 568130371 791617211 587491369 614410002 3557408 669078877 439732087 969370315 329157252 796820126 15437022 953800308 990810395 999428980 794417152 812985648 453356020 870825314 232236563 655873298 959754688 976555398 659269067 774194632 496638693 866463013 406758523 675749146 406479826 417533391 448475602 541698395 561757574 686508011 925440569 935003609 936527630 965126253 728341943 914397827 340031901 974657411 702910127 812437872 120972300 846985696 21569890 400558699 617116955 904048208 816327399 867135962 318800460 772111523 503551840 867768532 253316274 572008887 790686060 821724217 805792651 884797430 554097142 868991232 603707999 839284779 834563830 927773662 139933500 291265327 190000535 979297463 675098901 953437525 533168366 713230594 913992588 925132443 306029529 418424738 673161160 737154553 823904614 995709899 178191298 992082164 765055450 974335619 484214569 489505553 790762139 960388214 820729085 995868973 863385618 880432974 995291750 995918575 642421196 656032084 506153472 862612412 952698529 974389476 735271047 800166598 65898611 359991162 349671098 660026161 249415388 716701588 747687895 933509018 184656895 282383487 322908445 343381378 511133583 831387145 178721735 723009243 273224134 908547430 434167512 489782335 272382397 594865689 873360032 984953875 764481771 910416727 693687742 766578028 338738864 631854563 898083674 913887992 228051820 440614053 19732660 207585441 153878387 596729654 284074055 296101722 914253684 951505788 723120539 989538224 992387871 993842986 722384758 971658311 786031435 843111347 302346370 559454560 136107609 486987338 934964739 982747279 321011422 703868244 492591972 697005704 853923435 884299217 344060548 454162613 932851538 936791474 630435425 767999195 411569480 624929242 189661184 539937406 192718847 211581089 188534244 870561154 468395671 915831637 451565809 620823036 400163994 857847874 374341000 763273960 325549322 662474393 614600423 921485442 704627329 838678199 471607517 864483145 626361199 972156182 98889249 403320266 334411427 812292146 337365864 681019251 563949955 621940432 177108166 473464364 178749145 745878722 983764605 989725614 911345962 980556915 15236372 977798991 21907181 575090192 779989440 984481484 73755532 312583773 661643136 909148687 929455693 986728776 831237038 923968167 168070750 763728708 203635531 839881156 642604351 939369647 798499104 948705474 662360511 704775788 506276198 691968836 805130142 911507569 432048718 765876058 838007634 907683216 519528437 723822125 70840431 188003743 143818568 566251826 78003054 893788993 667146392 697125931 25887167 77704189 694713471 792991336 529370314 892412915 547068591 870143183 675394090 917505368 768725665 966329473 346077505 841762885 366942431 513644997 652456165 699537415 964188116 980272126 7955364 761340455 624740272 832672020 836813291 967235005 886125953 996800791 572328641 927731823 930133938 953512115 490365869 859690312 319233943 707656574 891482492 927357902 460799610 551279978 636152712 641240043 545105610 757785011 55438672 937747410 961758893 975735844 373174790 466907584 828734933 835936509 488218832 722742259 491536742 525950811 138392601 771444415 71055384 445158230 293510923 761147652 714625522 751354738 56288156 171791224 572172806 797912192 503732729 971896884 211588750 531612129 529670242 844896841 539019375 885749606 727043160 863687395 363700514 832237296 234362625 969250246 391989242 503934542 328618921 680465665 686696850 690870410 892173620 951493170 766717878 840921686 212223451 529036307 66636212 439856431 632674089 882977584 724189943 885325689 794740407 886112862 53240626 288631651 587374054 666015497 732449358 792967223 315381118 846526943 963730860 994509996 432281403 490130618 400545613 891384091 892328414 973047037 107916425 518789904 892344907 925963545 16409 800507522 583990737 665534317 704166462 745497657 614093739 621481421 246609221 833663157 249619067 524408446 956240543 994899377 394740564 700522627 897374593 959778166 55338903 709686600 519798867 859794458 43594598 599152966 584919007 915795429 893332806 911428117 915413457 978058277 564797698 594611381 983831176 986910055 394427648 756093424 726148895 998999403 790175790 842002089 461492474 562816105 389230954 967562839 962813213 992640015 183545213 760893513 452168459 998543265 884379992 955103349 541650523 868029836 648748707 677869161 889317840 973374508 182637613 828420093 52504928 92794881 418311008 973271408 875925711 967215731 841670382 938403224 487690662 944969329 774050423 790868287 150237111 888516077 45863810 203841168 559127002 736049401 186957050 504276440 700942049 937124972 26035841 681099122 151303461 257528734 386939963 737909405 50413582 188929166 760068144 912672117 283806497 806189923 559688843 566414308 806227987 929464734 311050285 339014211 597100844 776748708 393990159 696367843 977956715 981095002 824461885 833374668 261187337 648471415 894297770 969181362 236014611 830932409 769218794 932093336 58951788 184389323 162545215 807281660 55962572 168874775 263795337 418088625 393039922 754740862 680688238 948984828 631513696 708965239 406040448 524605107 334108134 983068480 817588645 926068887 496826102 587660329 492481749 577118093 15472517 835098804 31974417 138592429 866918617 898667302 499222197 686998463 240123021 641216650 202703393 823238004 449338107 693802124 883841804 988010608 795864017 942346625 342899128 653794761 63941010 191167804 89042691 446389723 521589902 547044744 2497063 608958425 691542889 990731376 275226542 789767440 365958175 532286882 451834636 834639818 677737784 784282799 299330821 463657153 984125769 994352474 391073220 440358019 306499267 460479976 798694155 927519178 939376095 941595639 233467220 756303681 475411319 666871078 901006819 984573509 320846107 705033463 374247819 774770119 483853364 730071489 859575770 953677238 230094861 479239319 206925283 599481900 556859314 678095511 321751625 860290429 928416500 940676334 712010776 741592425 392159560 941858118 101179767 705175901 541296796 954950168 803769357 943263332 438681801 847632530 549248923 619408179 917917706 960290799 957213578 963474121 826165593 971120774 120154459 812745086 423575556 789178234 10696977 820815538 769109 156692778 465561843 466770733 231411208 801691809 575123552 982530711 455304109 643743552 390830919 730618827 166949907 235342385 158020440 249397997 147001177 160011711 871147182 983580305 504597644 698924961 199628715 252508553 303388162 425211224 993430547 994612651 763809861 964236485 271583600 687507409 677464254 679442568 193643909 965689328 961425416 965796620 940828698 987840501 956340112 961586976 107834954 646071851 706320517 733085899 787805254 995064006 565980889 722849011 189508037 293770687 933972337 985090941 894586271 929166516 557606590 758201052 254859219 924317791 533819441 988739437 65691418 965404463 444656097 454605088 548686778 720615409 474446297 499553249 406369192 652795445 916816770 940003449 133089252 666877651 443301234 842153447 57513404 204748682 122655793 803867906 113176253 934826269 161283914 295754976 149986648 293102002 186655893 396648840 631787116 670339849 188389724 261538915 718652457 807275305 28677268 472017348 940560738 993228058 961881202 974202903 594558146 846529193 231304919 419378108 21998960 76101549 557613599 787088089 393069604 928002168 267561680 847815544 954349376 968165537 92994118 783094237 922242320 973039514 745230574 993533806 348662352 590584920 601098098 987447059 644050358 802960165 463451556 723547799 361413078 567809380 903223139 993892540 677231851 960164974 146436332 254550443 838003236 911574388 296436366 865417763 397482566 574538019 942215759 965369233 970999644 994663204 840118945 856202218 869559084 939134103 596449496 905773607 477497213 988473539 100776315 140734405 359946423 875134176 630541973 699185039 17829574 699516794 59770142 527009056 198578108 564388342 554510117 645885812 423207248 493580828 796619735 863535147 170938510 774751663 80852848 674037614 584182770 796202985 655151477 802703830 58112523 299723400 473180008 996396542 118272591 268930907 138871529 218976718 498466452 876643971 494677760 519927106 454017792 525841507 254489669 538043500 781953051 978022215 760012461 994197235 778853628 953450311 430981510 708948723 889827069 925205002 405556247 754246615 724466929 881040993 119935157 712937262 353345466 485958563 152091260 349737313 359845283 617921136 438588657 559249618 927084962 949945835 278242231 383242666 107257839 693475320 779101493 937697023 681818430 728860562 522679575 921366822 716593728 974917415 987082004 993644215 276225718 597292739 930749162 973382385 218619931 555798214 137870542 434001531 778967543 920892579 815532419 936449204 27758553 483916931 941769218 954066935 432205709 453385589 399449668 420624223 396336524 550964947 664450950 725008359 29236110 748429168 746717856 831851818 536522919 614821364 659597153 711152417 755959402 955198631 867740862 943726793 831296805 892130852 147477184 904381653 350606966 370394424 617101242 624221987 284624011 396306758 727636506 826766834 829206758 996068391 438065395 924139237 101481043 636968902 379540991 483893757 496455790 525445109 513056378 890432911 198288639 598883773 104868914 656760411 663332334 985395883 266363116 508478408 433777097 575617030 320300511 758762087 896038197 995108088 486070570 681931215 643893635 914981935 310066520 536540336 590225530 936524745 777200297 865710274 176515019 636527635 485228698 831832774 675775104 938368830 66727896 236552240 851735397 884189057 362430127 957815548 807405240 950289575 749456975 750275836 888280406 980618550 228492123 806539653 849678089 852054595 377273837 502907841 567534620 645450182 553755414 575733882 473333253 873437845 132031562 359547017 496910535 628929586 681718535 829723184 617533122 929464447 764891093 968455239 911816285 950939401 874468643 898962539 973279687 995287034 421613834 620275769 564479976 959069595 555582258 675337983 375536904 935539306 683718125 882378961 284678063 359090117 920713684 992286400 602005849 720222593 719938911 850266983 210508844 302134063 654304374 674854499 833405661 899140006 530722096 777243919 346628694 850012247 898789846 968060121 451480243 949160001 751849562 888717458 160504256 830822903 189928373 634439490 365361720 508102600 753005130 899227214 722274706 887390271 790362345 842672651 356269635 855059464 301448472 731660694 45828748 425161124 453780373 803706921 236283258 237617533 439370086 571708015 498239151 704984720 638161522 878510046 674092233 910780174 435977403 511477459 304736606 463517066 356668167 676405940 183436025 621159898 55816016 824510685 185833236 644887184 809820230 966051902 225495094 769215074 344484033 698225346 780220888 880124981 743335780 951194117 600502122 985322219 628156413 949536919 927370542 927416743 202711430 889040713 672880119 792958588 953082859 987318751 455903121 701578565 932888905 966853176 658595765 764213269 892692044 909032682 485587265 584852606 212666728 552098786 814903649 883369235 251052140 779673312 307933689 785774919 435004558 627602783 512228520 695946664 667698704 722414150 868470735 995954101 108174266 555101647 416770281 726033359 338021495 351487694 106840731 692376829 50643500 461704157 572488203 771124690 776028997 870046052 553461782 560360661 329265573 653259442 344247782 538913918 838385406 978313929 229535389 631626554 718267556 802765105 714242086 925921321 873786487 912761450 955583091 968549035 307625351 354826713 530994854 922393656 451133984 812188585 497767513 987364981 651232031 660232894 559918101 613558619 315408253 632095724 964154612 997445317 148466638 927151156 681574074 910502215 898095229 936527900 458790176 749127753 370576272 750834019 184741610 272541725 257584367 443681925 969024556 997181457 397363097 540908223 882883172 925622863 644137217 751291809 373783342 667821585 19731227 44200613 480069567 608789382 402784368 915314011 768347294 776342371 324778883 411926540 669978749 899947805 598683439 738904298 404398179 737071076 414422310 437679729 372360607 853489939 99227127 216856200 70831960 675973284 781792894 970300637 408783767 664308808 651001004 822154279 614974914 917530072 61580254 207465023 643440488 970984412 983632217 996508085 41889769 55505418 261779283 362498687 544620582 893366915 893997318 993934570 582000852 619026702 647098849 865457803 736690323 813140092 222872224 508119419 757187577 797955138 676738841 830759818 151505702 540041323 668690324 883844025 143545196 335274726 71713186 154712294 599837147 739704028 888100128 919129479 113888290 862380148 786341915 991851572 939069303 985712470 193152771 789935865 838731888 946779565 357053962 522205787 62698214 472685609 178197913 720927254 523356527 766893194 846108060 879340360 907060449 981129786 426368911 855814330 210987593 604399640 610515674 944987306 723882716 759868822 70765191 929955767 791853990 967892864 678837920 744945453 682549720 948954354 372865653 440513023 455201088 663218803 551122226 769415804 353753341 604649218 85524494 722194751 501364509 898753071 242402425 564592753 166346859 448489092 512008127 725974675 330209871 485204912 942644938 998672690 318935954 374686178 297196431 949255707 68819399 748797969 962438141 976699639 223775031 337294969 226766113 257732422 673618394 708627720 991900194 995176329 74096110 777586167 568722021 924246614 489315696 681896716 457772493 501113767 256692281 583562534 227474439 625491361 122713140 834680171 228241566 345228955 200125675 943233122 433827009 492203875 161352838 719979204 886523574 938776434 823952833 911814369 655179764 962761926 119915829 730281184 454386072 778597716 485637606 998436697 51231577 778346286 84741963 632108857 667393000 850020049 52508051 753849510 504532890 814972354 764853417 801112741 167794900 863147582 553698801 752081129 977292231 997965099 870070072 990685956 611044356 641388723 225738245 615985873 310396647 765840808 719882194 735565070 642210102 649114993 66111205 712370472 467748326 957043699 715177118 782518562 470511167 788240376 172519070 808678911 18730679 953704056 560939187 593544536 73448547 613868146 211756713 938303333 920894137 924637678 269537651 709852243 589387163 919308496 883875550 891151877 196047427 509841426 687409921 862191563 145086363 968080756 811047150 893176960 779652432 856979170 960653227 996936326 118359063 776869185 952748356 999247142 202593803 624803917 220570063 705900992 305105709 476042337 427156738 563503171 820199575 880006853 517804593 660104222 525026769 770510761 961392269 978238367 137015823 191887913 600636491 924383656 329442558 813271986 647554680 694102298 335915788 646263028 371541869 395915680 868722714 977650681 978747798 979764251 456227327 874315070 229884502 986945841 17654683 962939531 733558616 809269279 888134521 996867405 911889239 993699352 87455406 970696364 376510662 830440927 777921393 875838990 572341113 888881113 259505034 779047804 821531520 961157117 763736125 868891892 350011252 783925100 416964400 862331643 955714379 979141574 175503552 437489482 873360827 974487704 224373764 851161749 647459914 957870605 47935594 960226184 595856540 702715040 284721951 433802732 41114204 287891960 245567128 784853594 775948540 795047963 368294320 782565404 346341983 385163771 25290357 613771825 367227127 795003886 356351884 549453051 287169323 580507452 6252802 205808282 189787610 649498196 969574989 988279306 79935756 265411843 96586000 737914955 533305081 959485028 367247505 578326684 965514427 966020587 922599874 977043723 980388907 985117521 37608593 294477911 937563231 946146955 615762734 969266344 626237339 765296251 62155196 114483190 657336699 723931291 602000945 767934671 155058895 932833301 270189102 995089899 460146640 686846965 113740095 492377614 871591871 996268411 364562753 449913803 551159155 578316292 920838156 981627267 924296114 945831703 704643839 908970496 549505178 553485769 774324412 804395801 740759569 911928341 661520916 823368083 360335108 914154870 451479815 511818029 335319853 892041230 617839164 669824431 386920633 490568595 740834831 984942642 385590224 806957928 103460553 442658829 558403761 986719214 391423006 555638135 777157448 930394437 735442856 829755068 427798658 945927577 642738955 698511454 884386735 995839915 543813876 560941750 581442209 603501254 425146948 974095407 535501502 681722919 565043755 750890851 299463844 813491866 74483396 940201121 284341001 834217034 446978007 734257586 442880971 753172724 260244655 588823167 674169533 712583584 505854963 625250149 299040935 701652038 83880097 795012056 796067169 952533171 32626907 907811653 540368389 681540442 580965045 821285408 929048497 933594908 21800150 825419030 789276252 835064021 887885663 905503634 246472301 789118945 11254194 410692197 579681794 852446911 983426337 999441527 933920695 979856124 645108576 983044525 211027372 327712023 330634279 501404327 868525390 928084071 57187725 933457324 532164330 759112663 486829138 985142572 533933070 686370733 693868654 859388467 167837066 735195034 264129674 824685235 557671809 736831493 531607153 848219698 944997674 981857351 748569189 902082976 794307645 895426393 613916388 707116106 158417025 233412993 532829842 793695970 179239220 471095623 852889178 990958447 878977568 927248272 358980450 930661621 937011030 950777401 822529222 912865138 99366534 815168603 272963606 411008198 171579500 266191292 742305674 881338676 933872450 979606738 915345091 988913818 869336424 909977176 565363894 732989076 351957026 700191230 610289001 790708717 150688123 294467153 917365944 930388207 885729473 954171483 98107522 146083190 215604176 384733349 414326573 508841272 666831188 836036828 530167375 663754834 979128140 992142319 39894196 212601359 836011784 904368793 611203347 921946411 257294245 757922674 829131786 901580531 625121969 938706036 687177301 706181371 849626073 953122002 351222666 623384492 371794627 575358161 502793377 895648253 15875045 367327300 488490091 988634417 49856814 729858142 264952453 984440529 492794734 502070592 524137166 941899887 226323645 442748589 371136716 762286456 779351709 860072924 785172049 878358432 832296556 899282380 149163734 643761405 475892444 687790259 870274491 893852820 418669430 755538151 650471066 745941075 517615873 795153593 337033450 781604897 261680955 650210558 405819416 900036735 481664760 858986135 635089587 925357437 118774158 412488613 436928085 516865524 558857697 630152287 295714491 952467719 954935854 969605159 510059299 915483284 336633526 563738916 564142362 836943111 201176478 357926369 519332178 597209950 442765236 723377559 652483540 657389847 271209422 834679800 694860846 714392009 585809909 805340192 430769926 687696955 690092862 779285054 691830033 709279177 807241871 827204854 34642671 227337424 692450211 794639720 784861416 867076157 245779275 474643230 91482252 119409813 793283631 999885771 327158254 498466809 235374908 450964951 175301806 748936239 925986020 987772802 596343092 704200817 900459797 935632891 457231374 671358792 186847183 601830304 796476355 997889051 47403432 354905906 711109991 916831466 3578771 661305106 159312697 980812896 504092247 867522261 323866437 708070046 306730033 578701422 32796880 219981238 497962083 657794347 833508635 918736622 885919717 967213431 780404820 892920313 75203562 960408056 789090463 949080507 481252546 931548894 825766374 951956017 602222914 975198689 397314390 600384188 727698021 828269649 968180045 972349787 690750133 842019961 316446195 391124032 515758337 807564649 612666524 762098899 123154072 496934207 670476227 975603945 357348907 980360940 893332892 900289671 567336469 969866892 747856011 963537184 427769999 690949165 32216820 449350699 376559109 574408903 343727814 700046648 922403929 927864437 137359888 531562479 757710830 771070208 666267165 919008878 49451062 537607391 537547087 633175857 928692059 948013079 767617944 950106556 244607027 307281341 823107370 927030446 502554932 545157409 457704817 678272979 554859080 623776046 403601721 802903329 14801851 950886653 270471208 988299786 264331944 483361491 707603437 986512545 169565827 621751831 233486813 798724988 88997857 300262587 368110133 565974247 983086988 990649307 197541939 454641972 1001810 7040302 421820799 740700479 381534924 449511656 700841672 718264190 827406876 930088443 205544680 212283591 859802917 881562743 371699356 842149604 399061238 868714402 137651116 813442641 72997766 526145526 181955426 381374419 56727313 503917443 710712157 720786376 584945195 784672662 534645582 861099443 492143593 546607373 801298910 977950653 64649452 660606762 820613096 998335738 77758703 859322965 890334894 968332766 372873549 945099390 988049940 992312898 296058833 568991941 620795126 995109875 100069193 394994260 833594125 993683331 39613254 116389623 378833415 962701869 55652607 994487173 134211338 956737182 76524942 830558584 49601232 728543367 370265947 685774202 447900714 923047318 153636814 324637422 825499061 829018968 117931158 775053896 148224116 717284392 61263229 837677852 693230848 801802590 892675389 929361163 254807296 743410239 270729150 732801389 336946822 774474561 5674399 798539016 424258114 930927706 856984753 970523328 757831122 971121857 628977734 864995086 634403815 705647608 976192139 983607375 340218367 904579748 248673687 282448296 188693467 356221038 631453019 812634546 974602740 981685017 919673860 962100962 676588240 906755280 334544885 679114734 277957605 639169561 253484235 556500818 862703748 972051143 501292392 532973824 11969469 315275881 843806900 911311765 548322009 552826951 806901996 904815435 228073585 842570760 841305709 842561413 902328372 958744042 583252547 970579701 74213936 470332452 830021152 921497147 509364610 580614529 490766815 664846214 36416928 590636325 167778869 944819936 928875753 943500832 790856834 862533945 150676924 455555136 231067781 629601635 257480980 910908629 970464599 974547578 762695420 879803625 829219130 831621775 486068732 862136607 770040104 978318216 627300397 874071056 533759022 872449206 462902420 584599351 437169008 611820380 971546300 993414505 83746672 330702605 304923753 822719824 553842692 638940458 630325817 947449508 944385559 998130942 582807772 778965040 796679485 928581268 632333129 722422057 420490167 464436436 956611714 997975023 577238782 702085277 975906937 978870027 217286240 548111446 140935152 713058234 64572315 277932492 207946763 308191737 961303253 978848827 536506663 811586904 649102547 802373564 393440174 947634163 791789671 944977586 37322790 813548949 507002588 968102291 269137166 569455883 174019997 322217018 54475052 99079654 536772544 927225356 39409903 657983008 849472706 942657776 220073689 288502114 320862924 655273953 816682362 820002873 501515706 921309346 999558514 999670818 715385176 741575121 333271568 934339896 685793823 825009512 731555375 855006423 377635608 668872675 965611888 999080718 806890213 953141593 456668153 705220373 768051758 840299550 44094130 974061763 54836496 416908604 992460222 993992543 104396140 539926132 925573216 948801726 588041079 910466146 904263365 936355056 870811723 909604464 954156385 975358495 474102338 634605494 306239166 443696728 629408611 830598771 318190679 770302064 300166639 446432050 186396520 754131985 295399063 763174273 190938175 344196518 631698725 959711562 167579140 659433479 431518819 519553862 798278706 889982931 607107155 615076218 750920397 758097602 351213492 916422223 381836824 514097640 463906113 777354614 136984450 434547832 725652141 943761596 945418729 947990487 673407088 756741305 193088075 931543142 46817827 290128333 617417715 837289939 375144624 530352032 216298087 859296418 216553763 677509016 584557180 840846024 271199973 806703357 524674888 701394753 206425541 395670978 407632125 709710036 500521321 761425212 199385319 790331807 629127470 760160620 994808471 995165995 816586894 870501830 696701801 903049061 585059794 901443508 16649946 31712311 639624573 807542676 704009528 830393459 13376619 288229730 493001363 732730501 611484141 695729886 795265204 879681127 925217542 934959121 658135393 987170334 370903558 782216305 296895146 626196451 810918035 938308383 917368784 989326242 302542788 762610881 251691629 485750149 497991319 742052828 649778086 765108333 98052822 657838143 723537602 910589844 124187949 346910850 714757572 751802814 314667237 382743016 147531842 521038368 851304155 857834103 404871429 457652289 628035375 853950185 66654043 427607832 729205820 883444183 60237144 460298686 579559076 658431173 337744748 882724571 589118662 606701105 504443700 651446317 574009125 874113119 25704893 499580460 479536861 951360773 125819747 327732763 987355351 994304696 744228612 903461209 169641971 905547807 377372289 791540796 953065053 997156130 425062636 649124167 392566215 596237235 171689931 946762562 346232517 460287460 320437735 596604643 504099245 758379853 869962091 993162034 89366923 772513630 834340727 899209330 87612209 870928441 52852597 861675528 492969892 694219749 80982405 95549497 541322466 598239107 18352135 464290130 409511929 456056355 345837273 614695376 763724503 861439009 356408103 908436180 473811684 767812168 771094716 911048291 286318179 958948073 764826674 893053170 613532368 924969014 620558358 824139248 783603495 807942384 652688105 756314950 866692966 974192580 157093851 771161169 57652646 676610742 872922639 917688617 289495825 444595427 293247234 374280884 611324245 819836616 706671983 778737407 309981323 783795256 250763151 981924844 983071632 983474066 258410749 714256385 870536430 985526191 162923319 432597148 527285432 598767471 845178116 980045468 527965229 803030253 469587315 787116665 416483991 941058471 336349403 844269564 601635191 635072347 562428525 864946738 537784335 662551090 661150527 887519296 178225152 402773578 575135581 946452832 433112411 868528220 775097871 821371016 163147337 378365643 391787293 840315241 729524474 849882904 197187865 619591578 579481250 808388154 159399599 273402487 546624263 580167679 386227531 815908767 7683958 879889798 197089910 893489618 851354823 933084691 233100534 422891307 85728778 702101984 217169973 225562242 545457477 946281707 338837488 716883676 328281086 776973313 763477482 959490203 883767785 922142745 216588998 969491624 908760849 994281783 936600542 964182964 364398720 665925946 541810093 820083509 330362277 581314952 447662549 778076928 314782913 729955358 146989505 323194274 253699485 660595184 828166924 889112297 765519630 920241060 794636361 952202284 634334251 707381852 495177909 590780089 164188991 746193469 80515995 812212916 162044455 922392894 498030398 604649408 511969273 896000391 61590351 148997155 294661076 853818686 745422388 924657675 815079542 945095687 446737511 610084738 84489752 997375413 107879113 299290695 870457535 909355738 109177567 958987572 928554081 984419014 196220808 270723459 793504007 795747339 797530158 800711078 810664808 940599221 652259402 795210869 844784037 967627322 647312228 819558660 870441348 886563519 202633943 857061743 708167771 985256769 183445713 368822908 221857891 659685099 334760200 847817022 146629375 670166000 906175784 974757635 3524407 355138958 622526664 919945477 372577700 717325516 884244724 999229411 679960806 697902861 154097229 546826860 858363773 918759360 357602869 911220620 527813742 799375733 989752061 990839296 202898432 615321949 84967106 841831261 828892199 962970425 701819572 833603425 657281263 864899417 282653399 521130019 22861345 273207900 575884628 882908360 248896718 981675589 183330037 354626975 701603407 879463003 192669887 460689061 615681554 641668912 734280299 735323468 291531223 647522945 624652958 762836411 897743211 911164104 130048925 460458977 294664031 839313159 306598398 438467734 881310402 933857986 656717889 688900126 765653894 992480177 916932840 954076215 391141892 765900939 61932438 321977906 744488450 860162240 383365119 874746241 496384348 897075312 582283204 898665867 250297720 485714403 436489975 981497988 410330372 829754559 563873604 997724781 777670330 865556305 199225105 675007498 661446324 954867079 36598223 908591130 969114012 975004200 962813459 974708357 277619036 539165864 523712001 917155398 167172160 985386491 698862366 926788885 427245291 971002507 820420949 938574585 65781122 331161224 828938099 895816524 575030607 822475865 401168635 563958980 118840289 260564992 199767535 817190931 139441909 721199358 254268348 283653298 308931563 903681684 834114861 933683137 991383384 998049547 992710667 997381351 26842696 107180441 132231892 340068795 277153201 935717149 491639030 935726845 207232449 343446476 453254867 472082808 623185137 687936231 823749456 832017046 259844238 425925321 185251689 927282235 119850031 961939843 150699334 701388467 600908238 617531181 338120124 950456466 205198886 363441908 951689254 994359794 324254356 711143237 416743174 843931855 114378139 190572679 802235961 863757195 100160875 763490190 176258522 820530642 556935737 613902580 230164769 262810284 592143442 708464177 894024296 902416888 262026041 867881008 953986638 997761135 674877746 794750004 468142128 684035257 239132017 286512229 681145925 731815922 799955060 840489575 460277193 910569616 946011378 965983924 515337387 759932841 396280073 654394945 244356547 742562660 384008010 714193466 894242531 894714992 495262497 760096878 172344826 607305630 129902560 672875700 490308343 763216131 991667248 999461462 204301924 892411231 301804383 419901886 237159000 382444599 155985255 287939826 125363134 252392447 747174521 869621228 521718606 629055814 679789052 708992221 33407458 94964943 118013367 170815954 91536627 700697774 641599214 907153736 339647026 449119516 820042944 966467728 53013566 368619305 431998501 658594574 652587075 770142213 861299409 976632644 710255843 734792774 714422784 861154736 978765071 995657186 169625471 276777537 636053705 895392447 53789632 712795488 500182628 621625157 631771414 719945045 104738130 207329901 156988571 186414656 418754519 653566711 867112848 924774047 917057799 930462455 864079694 879111273 348449021 561145930 399475029 498160008 317233123 561607639 616419106 790692601 475888192 864880228 496882801 676464248 519506478 945856391 724032366 841888229 708063271 838329066 589663003 990119721 831444072 870754494 532560983 764131860 824904713 906596819 771060986 944642615 373563960 976811600 63801853 518275649 541635486 665909048 994484002 995738789 794635357 971145290 239776804 696318965 773901487 794411002 648744862 878068234 604793925 716870475 325452724 703438205 726407734 742721377 99653663 266726988 403757949 892611116 619301475 991031724 869448208 968030299 678958119 817174309 188053121 801278418 213678417 230226457 635486265 930455483 33066708 959448955 622395495 746105813 201069481 665637218 11682012 342911328 149159406 399230422 807083373 897615264 495605281 554014774 852248628 964468689 319280060 582121116 550030516 872262929 895943860 950367045 579109221 796182166 559996099 768935807 414707690 773888922 798677539 932625123 297666947 376845494 330486585 547814766 661321927 682427572 90904187 601395686 302936313 397017450 692986342 762794776 681944121 828683617 649862962 800584379 573815848 813335174 152555279 779236300 438750169 647459623 852909728 958219028 881600611 977638402 992770113 997855311 787780366 946848595 925598296 947973153 819917500 958580988 467470441 526823938 236930667 472434343 788896349 876797278 563030895 935902093 143328705 306895812 578129760 611849377 382431402 694485046 43235001 889418279 856951039 907908981 856792091 921131926 960161676 995979663 747463701 960091435 661148118 690884137 264906024 499578555 142473268 333323828 748452452 990197428 465134490 812795389 155714448 380159583 131880376 309932992 879501512 898491220 158881109 467830880 88110323 94738348 663660599 995478764 923052570 962719470 311581605 383652308 34353977 266571394 64031054 795239698 729314371 997401548 905170077 921602499 168830649 649598674 736157886 901333173 278565364 350610689 481412590 567164136 469809391 737012497 191342939 664986962 352855337 839210671 430663377 881322389 537764118 768215803 56533417 858273789 172937532 582200453 717030992 930327064 422654656 698289744 214634178 392532228 386768516 550554164 438753895 559407095 942759271 966901143 546906108 903524006 530238860 581713688 795269246 918193136 358496231 477796453 746058921 908555018 575667168 773179755 938052295 954566623 388697518 703393546 65294498 326577208 840826365 864005991 700298909 937675614 426010563 713553692 295744702 953449047 813785997 954507851 775419912 927473733 534112072 612697979 895308203 980420631 953691531 999528145 174775254 496321881 514116828 920607573 32151600 81199720 275340604 623492581 314995037 709552587 338590373 885559063 961801904 973495927 443863731 514526430 838759668 994479206 850188321 969570654 538738108 827928618 601532147 882317784 689022799 906726671 307169109 428535080 389553672 497271165 703863031 855126585 975532686 998181906 741472820 922470137 958029199 985351423 365592191 704967776 703029216 785089473 509157455 639733304 166016242 330374455 190371612 447010057 329968347 552254938 865549180 872923191 373218200 835626298 840139672 952512289 671842373 908639154 231318631 515758037 125952289 489018932 434698662 882107089 390204582 674623299 246980094 624627786 905671497 983964465 74435288 539741523 944500615 963930692 869515464 997971578 77198265 96157200 749484700 821924022 742480177 860776984 138985735 650212507 905146196 981438100 112146069 477960765 461546180 723560745 751956180 998480039 465102310 926731834 948493067 960876202 593802273 796714482 629686228 979897053 711918592 785715377 422631859 536933909 984734654 991947253 301155089 939847724 636787474 658592180 493805264 783564129 511459381 758484177 716887554 976196640 153032995 862846531 540642630 580566485 842279691 995023044 512905547 946891354 95878017 315744410 455172215 710506650 300802064 479715083 235108016 838061136 481265629 503830894 354212951 770302761 163522967 386676051 971121089 999345101 754829815 875614586 359552708 465101350 384089876 944606915 689896788 756960144 914509612 998279614 147987108 341044789 784617062 999448028 769432415 770102202 760083871 996883551 590277407 798742113 635273726 902614497 332822098 959901222 90316057 129251789 782517612 887358438 502525025 972346616 973765082 982029498 759446913 789547816 500544924 685685059 982565923 997669634 72168009 273017399 968798827 976463358 893314976 907041157 656198140 745962178 604404739 643793829 218050143 588899342 59641064 975483260 869424276 958659719 615967838 704727387 631427991 722119393 43715902 378665545 623364059 638096183 595537247 888111531 622470912 671370949 38530823 121310771 848914909 980172843 876884033 894502249 120612388 593752348 840698586 969713677 629449376 780679597 638606192 709351602 445619281 724786655 28847465 145901032 461618386 465480806 594014305 872670698 911853947 999464479 621104154 656698744 479884675 961273929 579472844 661943380 784413540 898070986 336791060 857260923 699280879 847628918 563080241 835189308 91043841 740216720 843536083 879096319 577910914 989789587 95717350 417061323 234949795 716245124 674601823 885718621 5089845 559922225 39194802 590155402 283806723 751264304 511218346 915120926 935875595 991042525 687296745 835391051 969004710 978213874 652249772 915422097 272802563 939541982 830711273 851050407 936891684 958800859 913302768 975191334 408344880 529510691 217682878 520499584 578589254 752530464 37962937 174652045 542276715 627785976 991532465 991661113 28572913 275381631 455451223 471104665 768635416 933187402 526805246 728100603 223820106 572452743 367874789 620455352 315475024 793152583 343082003 949978949 304314610 979006636 271984323 375826665 344000980 891896855 506821099 930509871 756997329 837291364 87078837 546876498 943229335 997155464 333224168 546481537 544771937 799545686 626697673 898696889 653496492 860860794 837305893 854371056 922599948 955621490 693359573 983292532 31830151 714808652 18994970 588035119 273436996 561143039 862948620 895335209 788828534 802260764 685190602 986873434 701985255 799773976 713535348 826069233 968572854 989795261 582326638 795636367 686928820 763462684 884989498 942106681 892695876 999138100 374471752 943430183 766097233 886993090 340413270 938074420 138458381 302390974 792187028 907154219 547125351 611482223 684278666 718242705 47996349 320689415 720744909 946257725 740881723 998472342 589280126 625992521 433192884 990183999 473140181 715616365 209746133 374439784 816309790 834993858 714877746 949840360 475828928 873374933 91311229 662725947 162470958 265820610 467413006 634341155 792801902 968229419 274259414 294441377 154692438 361042804 121295594 684787567 875802478 979088023 687119645 833378144 67146856 92229222 448254661 932310732 530629915 632861652 298315476 302255248 330587919 670325736 710547460 950306512 737798500 745220170 421989628 989004614 594463149 845432323 263805630 965837325 374629961 981496596 38345584 924799110 891144428 980271167 266847537 562180836 966515251 999035126 224796419 714610249 799358680 850684034 791148402 802867432 166878119 301566699 782810444 958145280 7307426 122539655 84641841 473163754 626936014 638344901 338430062 812860129 556291472 928039862 599171746 852525010 438941561 454817168 697011866 831578272 478538263 907018157 250483482 561542182 62217225 589139473 825924601 863564734 992457808 994938226 882578127 930020025 149952795 189336404 170579377 438373345 505883474 664516490 38890468 485389012 362311124 924967419 92499274 898407613 863940797 999314207 358145330 853537684 518230893 991563959 516110753 927444608 499115536 979689603 739019024 972831812 102213266 355022709 485847156 953399955 541798475 864873069 373226765 985551145 177757247 809042507 610310442 687672152 415903938 601185495 1956397 920488284 938805299 984578958 375567256 673796343 699839474 761446772 40530466 320649738 165980466 362323789 891234464 937912375 120235238 479800223 113847304 174658065 887496588 908032602 745211120 880001178 301649993 470466616 778339904 918807370 462781173 654304027 970513880 993643107 190672772 668152450 610916051 975512188 568506355 656069959 614606894 776130268 314681295 319463668 787775626 875377490 517560553 987014646 542995052 625295767 741322273 766739484 288416096 569762269 218840246 598645184 840366778 984518810 623462209 943622732 364448850 928572276 73545421 312824068 470946855 656377794 270437491 369620064 989429613 989842082 506082417 533741431 220003664 332682564 171186673 809146615 596396804 832801092 974637551 998484048 5088485 536028910 739949702 812553930 632568308 815574099 588001559 979657282 210684755 372483165 916688035 984505723 693469961 976291706 806888057 815644937 115547626 830867328 720567176 997485212 597292325 967168807 649173158 681725216 269022346 484268742 962470951 981530559 999784550 999876082 716984388 923963466 220987785 597198188 449955367 701373511 785780311 879536578 55068680 699617729 219006742 981317678 662461590 725985463 618597200 965147324 963476300 995250927 578707895 686467178 505578686 513878164 588604331 904557639 253091248 461746149 156450343 188038744 906666083 919126225 321083863 536534397 708511235 994034208 738063285 890327135 219579702 905693406 932280205 946596932 33113375 388136706 262429871 863667789 794201761 846977101 972702771 991247102 17474668 817170541 990848161 996035808 625528714 651990478 208342071 407714264 992356238 994003709 833218677 835648433 330431520 874258048 946331874 987848908 863714757 995255221 625434557 892801342 117334128 648517188 307700768 870908837 226522389 528245996 497701827 601821571 829576766 936838820 799643882 906114037 622016297 887060299 298068461 751294830 853836510 962221253 718614410 903052863 574165323 737770764 610130043 867495516 343126627 754734364 232411801 777128611 549688251 706330188 474528088 661747923 160634931 446053835 220172920 356165797 24055828 189453796 903300404 908339836 432410287 497375932 839867087 997152728 83077911 99977868 39720406 675285727 10369918 487181054 559683128 618215617 698238405 918331120 586770338 725716294 287335163 971984822 263404774 748583449 895354952 995141920 285347801 679131258 943202132 999014079 694880303 983421213 505779943 758530905 736338030 806846600 24769905 717044388 456376908 654232262 44964489 888268190 829377996 990529188 20611249 925197784 598127371 716645310 578259711 781539163 631156187 984906776 332850306 936049942 448158491 887922476 224310873 474185317 632680438 825361762 901092479 952653230 489906124 997460878 374299109 779842378 48639682 474716789 130094427 517168592 668652456 745048895 351331344 532391577 30709685 640240431 777050811 809720402 894405798 905267053 815095048 886602299 304139709 513960627 7966989 894541632 888640888 944707959 70249099 455042180 147249324 496258392 923781031 967812468 796061992 853642246 927711199 949868780 69335206 745140728 669686569 683547461 204754776 264028549 508764767 956711939 93385353 958250684 90111897 422550276 300425373 851442308 446844403 533022221 495428653 742863530 991006670 991967812 105680847 807243896 527568954 543410097 276260380 364357636 735696116 905054085 691300888 927175523 863295351 888273123 851087118 927401715 568030631 965213966 696493872 757632680 251425781 359691645 620053915 874227469 947437403 996187018 4866757 965251732 917431148 922696995 70208624 827151640 538881278 606128645 818928348 872952633 483457829 588804716 879535952 925942511 333248877 562007018 679045994 783268734 624572846 834451173 942215365 950264703 49091182 226040253 76614559 309360852 693329998 801051141 462414967 587407812 988095370 995458263 573359484 704414652 738688715 782428844 250498255 611351657 893976056 909242836 299152845 578237079 271438146 726487315 675168266 903676914 359319672 377239026 963503681 966421706 316812512 989868957 560963215 706886457 363998204 448024259 557908851 615495206 139152647 187757663 656961198 862971486 522080720 644980484 755542349 755863674 695411863 717755107 53138279 948849358 684014148 786667658 404614520 446929629 288171802 561530185 279289342 643756004 897297888 972634720 882411934 941043221 782689639 812151178 576370368 633437351 179060412 627635118 110220105 630753763 832044313 912513467 986916892 991236253 236578872 973391800 603492515 674352920 502968322 777098048 719083662 815108714 662772086 857882412 304270051 441599658 569142425 803321708 877831080 918984417 269988555 625529207 481630889 631603901 789469090 812669247 111897016 740244796 540808925 907156554 463819382 727456386 409785962 979507658 182832064 983956732 591715487 666563361 638506054 689047984 25313378 304201901 17984133 529591769 970718908 979119502 854892559 861102367 288969249 998212989 121549213 646676427 780677391 979298932 9262404 47146331 360874099 537675289 807352358 843387524 145989598 326693314 556722334 874293622 520864275 987046511 894236012 925292834 246538028 726341844 493388959 572544247 236386584 439740476 980720019 997770183 691863445 998109211 97869717 715438141 423135239 794462965 308843642 835027743 481281863 898821182 594098238 862681542 937888433 983704191 647491307 740060380 258109311 730214397 488681002 926678027 842742814 944613979 920543451 970254330 371732640 848807652 137810439 426849867 726231737 773048559 249470711 886643084 652620953 868360296 442732684 936572694 865137281 976855537 592306688 681155229 489200053 625467406 353606427 670110100 970093005 975923339 983483326 994855773 305312806 598675668 763611437 947846837 569438410 648580703 915466902 999519107 707925084 710878832 886116815 970083727 92121370 248926234 842852123 918331398 114853965 852660458 653633898 729271894 849358914 875210161 764097649 810295204 13794765 70984832 760275516 879647233 711892957 916857146 67012072 572897563 248784342 790685902 501372187 877338966 843287092 979817190 313522427 673899687 138724043 304449382 65292009 389981880 979281442 985884530 889685177 948380645 219348573 849835696 559638280 850183631 489812768 710487413 918780187 920506256 498751897 748885660 887928251 900733978 734859265 927991217 118647103 162392569 190471286 857593475 379362262 933868917 119935903 246397528 73948641 630087070 861075283 980145210 929034245 951953839 963446865 977274918 393935799 586636628 977105361 991698349 288173097 941152024 253110779 700781852 746987665 932075349 220723090 275355915 1741294 388161892 292634122 542497165 331295712 887356417 438375494 514643954 993773455 994583909 947407251 964486118 37960904 73804753 974691898 999801898 130060806 896443815 947693042 955974431 789094085 924078238 885408211 917259558 496962513 888922440 811447398 822292996 11741947 671730155 718976235 993170708 602403382 814370081 494820112 499917982 320749365 654809070 387209923 979607256 386660569 566699359 589027768 958946191 348643489 710472653 307510749 750666965 400989363 635076063 113881372 265629311 822005122 993372460 412769205 880307723 784882073 921596941 378267398 385830333 633724930 977438222 106588822 850860608 243355403 642479888 195984987 413557943 345899789 462641282 473032029 797881230 210076448 825779671 786492220 827814443 79226283 732818360 789714062 948096739 746442572 747002307 918342754 997574779 256258132 691170788 120649195 862031860 150998669 215743390 5916282 766871848 55626725 853084265 30470041 614704015 384734167 521242984 181523260 408147500 243404837 482114751 711148129 772794959 230087665 452714780 237696795 558006697 450274961 700483300 28795580 497995896 907866285 928498644 539282800 800048819 463936359 860579842 706805080 871225085 232822880 281307596 903072840 910223645 37548305 441441122 8041806 288986232 941169124 949362109 25461026 462968077 139017805 326632690 638294755 767710700 490528228 835157343 979939849 992156975 593436557 851639323 569191670 833435726 587808611 739043034 437556814 977735710 972778955 988065817 141279456 423288025 532381885 892802925 101868975 535885321 48788469 319929283 530256730 856524988 500893380 758839133 585921677 698456474 48478990 644128256 744600322 976365568 184366265 698367464 394255436 791974327 299954722 597545284 673248760 926714065 957309238 985448711 88851820 167549432 834378376 847829877 305638509 927325952 586911956 681137526 809666346 879023713 716779228 815672084 751141907 887585038 507265675 870541975 34052774 562702177 718846691 968419380 44868961 120244364 624417954 680610054 187776645 330580079 164684950 323071195 241810650 521088902 203186327 430203176 160255758 330742858 104973128 573950914 289622001 876596503 697652537 745665933 583778489 771112297 40643815 516668491 813835891 840017510 934718661 999870918 512067518 533938048 861389143 981801079 632122597 798334542 470063079 632519955 985598937 999521038 56925376 368327714 109346570 817871747 247720250 964243657 960239839 971838541 822961984 902822746 709921069 913418306 103852485 193648559 54788025 560700056 181935139 920147317 977050364 982200106 262992012 273652727 630912843 768905939 218060429 950331313 72747829 118181533 821334191 831457114 731734343 899136015 903988301 955086992 826431834 883510063 431230961 980330351 312191659 646795459 564745367 925112195 562236887 965908709 319579513 418816394 331964280 840479651 616452057 916971544 567167707 859726068 647330381 955784253 232422089 549502029 384272464 844659339 597618166 777896217 44475953 351513560 885961823 968034138 851194135 978337854 507422894 897826252 811043235 924257099 79778318 679039872 987648644 990255037 805141602 933167378 285169144 466452036 950749325 983039495 840683824 922843935 328071585 800400260 626026357 934812885 755644692 863724164 406264928 711712574 669818004 799106099 201971014 728610086 539393677 719102064 401705432 678464297 43030429 965391966 29889119 436252788 34109721 610237663 989687577 999141754 68058369 947748455 602748548 699604768 769305822 884088807 560480595 944504307 241502969 811615093 601238109 775304378 932490319 971673770 436314812 646441538 862344627 907433304 88347942 740673343 262574115 789056222 369448891 458871917 458780769 718327541 962581720 976297593 656083666 886605737 624206477 877565004 508212136 758041230 631816292 634141458 784985705 976061104 308168748 721716652 179435273 750182143 980102374 999557657 837810649 853389857 165828069 210060043 908732645 957398225 293957206 463375413 601559819 779361156 216088099 302897582 800675115 981138727 296789437 456549352 789120088 873955139 126368435 221222832 475615848 736776119 798821052 874541538 377943469 711889413 578972112 759431016 295478316 309498002 847143260 862979701 822096567 934934134 816013781 928957492 352545881 758190388 790389764 864757281 604139527 690973073 186078396 426754068 25593287 511705800 137418047 254807083 13228213 432401979 542151982 676485908 917566698 960875236 654370171 816605049 685601470 902313099 728877590 889738287 776623722 802797750 536351928 567914458 951595809 953126170 4295452 148986412 168772061 896908362 694870533 721549615 747074846 784320723 399246519 743080430 607214760 654482807 195576777 871342558 555129011 929432916 873025622 991565105 139594647 267350098 930286772 972441133 654676869 788382083 632618311 807369853 217296216 904120265 163613666 265187944 8675006 123440034 342530048 854213587 923083856 968479786 666106327 902997108 732994333 774318236 214923504 610803707 661004420 691783904 593662138 726021194 194023517 845808328 563580276 656432806 937612539 960006735 330076526 589086835 82642924 744627907 249960387 932533133 144042709 332104729 563658678 780489082 41911774 168285233 221401572 617257056 426414256 803920109 502407488 515011328 694107620 885222478 303987100 740281500 13753176 886775028 693617692 715913019 209715726 973148482 991828419 992912764 832244728 919092011 163794361 552829417 150091503 550825149 624990801 686387896 644260772 912382394 100050699 993989290 138873671 731860263 744253737 862492505 117955965 943468284 223256496 823050662 935545467 946243272 672362158 782788468 191337501 771944975 410128422 726773421 663081985 755023374 535221370 861846200 679880351 704941794 904141416 994223168 448930669 844709553 107686950 401118110 667089896 726936148 600095956 768774394 384601932 668339222 497846382 780647858 386183658 398435156 612361916 646094326 977695654 985230660 91221432 772177344 145204110 312706684 559721162 661167773 186261009 391812523 825888323 990479228 101178032 298301148 391029817 908295644 284016169 407367672 848040966 899536195 565755771 890044601 674416075 820975149 59141520 130828593 285795871 485535943 24725323 567184083 820331555 922612096 732731450 982324866 669442842 805719298 139845169 468737106 503592803 846315834 61191199 632092587 550208678 589902844 934804380 939282300 537611346 670112867 852144743 867891064 123566895 306950678 791251755 992462266 277050096 996341679 394435562 989805906 604448147 699973469 924916615 955264734 425229239 920849722 292736248 962987934 97126973 157159311 736492691 942118953 579096362 659191516 948443514 961236174 79725504 170596235 399022918 486734703 377653177 688975568 630563736 975209353 206557098 740401877 139255466 900096387 909356510 991753975 328783280 575489681 18095337 461749774 341961304 585852144 641857218 702871308 164673409 566923923 491572335 564744159 564203275 882554439 888955891 912411657 682951031 724467795 308303828 821455981 760849372 964113742 134776210 953544494 410708323 862864821 599604439 708144087 837110007 877951491 718675404 890639381 784333446 874207928 392410212 561786185 258693334 519625165 49484238 330190315 143029855 467377636 971759705 988680011 164995630 315143795 515728618 770702614 668084876 769960195 687340526 820474414 321556822 399247800 717775331 791377973 629926112 693043324 561836207 864126614 297478710 811894938 970831196 995520105 445668667 854305487 967278988 997797103 756850236 873653326 503259780 767695914 872025535 917101525 951563981 975994572 892743647 906736040 89302601 834803118 787185039 942310476 534620190 828180180 620857064 798997584 939097083 970216053 609509295 833832531 266616930 699572511 938777257 998590331 255298443 598198552 49783744 361024141 856088984 981648752 619996304 648252422 238021820 424279954 847195290 891040112 54943986 319897330 528420814 679871299 290800248 976036750 936093620 956038834 293674481 359204121 337750381 996784543 479940876 506039806 597783606 964208653 625968621 824971817 611101199 700707920 795624276 872828705 621219702 925683632 837780369 948410265 342719282 998119694 991056042 997720946 241586521 698875017 942174184 974634202 712189972 987190387 933350385 986040776 245884799 366151414 214619454 347635347 476882639 623145207 692961329 986760794 568141631 782287034 851518233 967665258 115107502 624593160 404996688 878340982 743464070 920692621 506821617 899615000 205718006 520864215 300915404 668501889 453722210 924535867 166228836 785715560 268011807 925481041 471603768 581627623 202175946 882090303 327877407 578085058 248204312 555133424 231321579 532326629 742444115 749858959 870885409 971595773 346693343 974496260 68507447 476973245 790613869 849049897 717978431 791529519 478255311 738000801 498209602 864105714 468423620 547909165 252884001 387258591 499086498 654109490 587393600 941677946 731158220 813578810 965956013 970625469 684109675 888461413 868433004 951738453 231724252 966205950 97956612 285490513 605768625 699027412 758873074 815153726 360683309 698724118 71457421 166448020 181530596 461323628 725617061 794962104 911829185 913169153 805571704 838305176 426529125 474818233 917791079 976941764 541877351 619338911 356040538 899050527 244146541 668442654 634406945 662298593 171240318 226464019 371841834 556527053 924745123 934252275 532845185 863406726 239948319 312814657 287882083 963760762 823733527 857889173 352189715 981225699 512498610 873968385 329819464 408288466 332968508 933804970 654810067 691402610 435854643 479243544 176547573 205414708 756202905 986911061 916154007 961790165 906354096 918004897 40373123 902067320 366097486 732778690 919837436 949253812 999179706 999813032 383600900 877639885 108707965 645265366 920570309 945258732 222159216 355602217 274060771 441665935 7161026 359698862 677050902 911446345 407626899 720130877 200159570 379380908 308670855 802150214 7008924 436499194 413943794 824916796 142664117 218518034 924081436 932125614 707155878 857290695 524428096 993054240 430997414 999968859 285975175 897398799 53234792 239258739 980321481 993431212 44907909 581496536 768820119 974295904 264029279 347671482 754584359 922267776 340871490 469626046 738933237 844693717 66586947 491081667 173967287 804927011 923319488 957157701 134510427 902050334 835046416 852432655 224011092 730123585 863190995 909016198 373353589 706081082 86799305 797059981 549473845 921268782 424234540 688532266 954922896 955094502 785819282 856379519 27418397 629541701 307141207 680823633 848724581 978366716 102139677 764055441 640389527 929016722 480707982 760373711 306618605 920174166 427230595 624625438 282550978 707129591 64381354 65258897 72884486 993522092 673648483 761427420 617505846 986035535 782419809 828654912 150343485 888750035 261909507 463814872 147399987 322892698 377353309 807647143 3086777 595581877 3888255 960797317 639214530 671199378 719288001 749145042 732432371 980346140 45103003 718150354 937748705 952842587 921718753 988626654 509790442 595010336 607118286 610316224 627395161 720308618 956235195 996749838 595398702 785701924 785370343 812920887 758752832 765701308 549310961 957272066 893319669 981160769 453528933 877627361 493125148 917564014 819696736 907208653 512751013 712687794 714808080 947640345 794563893 896536196 57037019 235490904 575707986 621425673 449426588 642488098 691889055 736265682 217523719 340238997 487568586 642352459 852435831 986854411 489459701 738105188 409234117 536921783 489142908 566776483 407571764 908799307 898272131 968623950 404108465 639504483 940467565 981964226 770687552 977999064 25243862 586742625 679197538 814878851 67251215 188502701 457448704 596129818 243955050 313761590 233333947 671786410 743917321 770829670 64209948 596472302 98314527 141343041 687436344 726362517 173913536 789055470 793512197 801493576 329168044 855385512 572038884 969052508 598623735 679925495 931795957 953513758 356240764 468855168 790853798 822976523 47038293 238234340 987347066 994039284 13582576 357125457 31383724 767083474 223727851 866455381 607049759 609865826 765303795 923370418 352725863 525638427 672510983 910931161 265327856 956089575 909259309 995679985 781287692 949519792 929740363 966210867 201691930 540815268 172129593 401035140 991124258 991271834 41813895 429138354 921287943 937141237 863451749 953896770 506425376 589307736 458687736 499259005 707658464 805144414 441214178 546333654 473732649 744388897 766127440 809364348 650255287 722581902 568516389 778832621 435876327 980158636 541385898 680520087 921456962 966573305 866344998 874214250 759528152 901093085 76291611 286274524 150515278 282658173 842650763 963051382 349002470 847146238 521468248 741878865 87842471 788810023 502728185 892772696 946842091 975576644 318348850 540678977 54092519 876979193 520505198 870567472 894033484 894302094 9311729 799334080 186904215 879981801 516767962 645148288 448527303 974068441 740458947 752155439 682964240 976097454 954542586 993342814 475051687 654584378 209710906 302655672 813973166 992300683 491849054 961593195 52545617 902662824 866145493 887910555 122285753 798957314 287299641 403390798 490853689 893895416 126907554 263274833 687077697 863534097 605281455 973073053 305921107 649070245 338250022 425326200 708901605 871787030 153951576 173307915 635722128 874427852 435448540 631767399 574162080 658529676 462860173 876622636 467713793 664864938 130956751 967776990 338317628 655219881 241194621 666249850 47418048 478989872 158342593 242968008 769484075 909425174 343510910 441143129 35804505 843444786 843124954 934269329 140430613 914420008 959944433 996063619 122993639 534179623 515754484 724718976 149682710 910817674 611511772 762846890 60597883 957493882 156260193 781202298 114470831 214803159 624255735 696586672 883194887 913265501 43013828 880651827 848516603 901779426 30588338 115327489 210329496 859604933 178145025 349301417 180993205 564449763 167379691 397556654 968479165 971639181 490283154 770725142 133347002 386116043 166019803 779109768 580309250 953041821 583998286 605549752 990100632 995064847 263235856 454316196 653636194 672470814 865759203 916983265 493817983 669980196 525567406 685283853 964839198 980639602 255130015 358745923 854784575 885163183 468090775 949742656 405042318 773065652 154825552 937045871 456616142 665874248 508973919 952062276 717733517 951681401 183550803 967110038 294764013 512359796 192959652 370241114 293036737 894162337 846972537 926001472 893652330 940015863 244670337 541560545 736773018 931799379 415480620 860278271 822135652 960334903 21963774 991522803 944242057 978763836 662855171 811037157 234101727 272494227 231321387 989739323 334936854 557716832 433352613 782059350 457587686 462219237 731252354 998713696 317264299 720655803 225664701 349005446 987500469 990270227 918261970 934099363 349643376 423686620 777642130 781924664 237942301 356371529 845141251 890381742 494033793 608655485 47298596 974227711 321397889 501381562 689074255 934584302 109850908 832069331 589602452 785435339 19544324 742762691 32079325 742521994 414860506 620788175 504855483 920549917 910464962 973519143 599405430 859886068 997036902 999971800 341942962 384782091 43086213 387523755 16116542 930918299 669301878 817562782 916746158 928170401 851374979 962336901 319223292 680366894 784200976 882176360 884457609 985331412 427852382 664856416 360065421 889124429 634437920 891006784 317623319 511776235 8616896 460873812 937301350 966403298 111006069 390053339 560555948 903916601 974935162 997388085 252617625 912010404 63537933 723805104 383125313 910909112 860922701 975272333 764540737 861124757 471695391 767464489 878671749 972908529 574740272 770826151 842368408 957701426 149685856 442946393 843414559 896122156 108681808 278113935 267249643 704834704 840117906 959302784 482762430 601641664 658323524 752225755 919445008 968358978 683463920 779658155 828730493 883442329 754312394 946213255 197234974 915805409 193047743 499857492 624805725 989219584 167685154 380397396 287288226 750824073 527665499 843115867 753127402 806526663 84208106 654623010 704647104 760782091 546817910 884543869 575784756 707104421 609028600 823604089 998320641 998771054 999304311 999743003 351058131 645777974 212304521 628010601 411010660 652700872 655485831 990150722 531547794 923326627 234467393 300472303 578828033 773903011 870376118 963966959 190586660 539929153 271112872 333853374 422720045 667656185 428251230 929030464 875297613 983283766 260938598 899864675 859959846 875441705 455455225 952837301 754346336 894660108 851156842 908502006 171220841 177996213 48635116 762104103 219479275 566319855 742848194 969959772 884272365 992451239 57332709 947165806 734660678 779625233 639928444 981742375 468648584 956857152 243348743 731673070 644063105 746574430 994974718 997409730 665667804 684409443 653971532 745599279 281392640 878096689 517017343 735389765 274055194 776837084 64212498 977939223 352143046 414025421 834224039 900076610 620048746 963082743 935443878 959696860 70707089 84194474 524245036 629823722 267099882 503414250 984565356 990535666 29887500 871591324 934028621 959017166 407699814 780475649 318058864 663413181 463327583 908797104 279631751 764573641 270718314 664915519 823355961 895407995 462494887 488219721 940180548 941731748 160712029 431202863 233786070 620394090 454577695 629386798 375768199 641387352 887027202 933398848 950182282 983584443 716589357 836990143 578037384 640570013 557507929 690254221 200838099 495547760 908531617 964706636 445512909 897345792 728389234 769606137 292016536 781641503 60360294 490617036 375313735 488114899 503723154 909405971 293670312 880044030 493658431 980324173 455814413 466937120 605256038 704499367 410489725 914090336 503242351 830036648 983514781 997918463 699365729 852151288 335434686 737960135 342388158 832962372 713643565 751568499 38056591 108380301 28535516 578591466 869114548 941052926 334474268 987562741 411754678 937590501 713677363 874757717 130833434 730053216 343630501 944117605 273679088 574023703 394405031 686910956 391625867 684311187 710510811 747590004 849607438 944489088 665416670 991449969 66544968 426324492 528829304 848642275 545721535 911037743 485430462 540638062 782684145 944436341 15246216 855054836 810184187 916168842 457038497 502623248 147782320 697538353 294277920 841384014 748835734 784190531 689195690 820176929 680512791 802473552 210005761 481872282 616852059 906335199 504766326 519818250 491564538 863673640 755717015 791906240 148626472 749434369 535681492 868404594 701641579 971714357 298961817 857385115 492038944 865329610 902536613 930412890 290166570 588670555 52198267 223425274 21352829 757638933 442284825 813173855 930906345 991328978 251833533 953531257 795349091 883332394 654014079 947430840 675745862 846996092 886984673 959992136 87163392 597438768 1280672 711588274 453630900 809396948 522521972 700636361 65705331 171598501 784454332 860041936 459606399 583106090 422454568 451048163 403650691 690059981 242703340 623986140 756741534 873820049 938452714 973500217 803473812 923620845 452499420 654269067 995675372 997362076 862092534 918904024 468853347 822602412 112794804 662595749 470027395 916256647 291199014 371633888 279981455 866657275 634179155 931430419 15012029 505775555 444887872 566302791 166074213 490908536 667013765 803992839 114628716 982488472 560698346 735115940 76329484 948155436 874136617 989928666 205583697 979146964 223371587 226044236 11303679 864846088 719617720 853871112 839605886 881159743 575483775 984632889 612253665 691779760 319697143 359273248 618833985 800599161 80257553 511153816 823027583 956311339 615868865 753305631 24564960 123422255 826939485 911677248 133688744 208278555 61226948 739660163 291206365 644355535 995256517 999875050 223865111 334030238 585927436 972619654 887950436 908874906 304149411 696847638 631761156 697540631 928606319 945533587 989509392 989682281 132421027 516981262 492829763 936760467 766647779 989695444 426480162 459204142 739618910 907895463 317452970 626938569 68974189 739367953 648109218 943912718 369464326 756396139 61285361 418860426 926336143 993025310 361582505 783063568 789157730 929416786 347249810 593945072 648488171 903127284 782675602 827624530 694829722 949912353 530682473 888339226 499864629 633785245 388566413 388834566 527891981 841648373 319656182 627354024 623376636 765733425 684128871 685391725 53411 331727881 117923054 506653930 350378798 859914727 40355753 100020554 16909383 719085199 919939737 928118562 659482780 794072532 937946796 985000707 819645782 959029343 351772536 432605655 536619443 894891201 695566839 781132266 624587432 746343425 895417827 955405906 54790854 488505359 834670876 933603392 471257118 533341308 76493265 165252361 439450775 575425558 435968961 941750258 883023974 952979445 741171453 948957416 597635788 972304874 930027079 968225553 616771058 681426993 416310646 859840424 783718473 967195982 204751348 332846683 81953621 774270821 839559947 966846764 761139324 928072385 707913639 887653478 440430844 662541578 314266468 802848541 846584530 901023902 234671881 467116991 684306723 807886662 863737642 887148659 649674725 906963549 576457021 657158662 923970161 946407521 116089133 850871055 752903905 952767768 126973193 716237944 879117199 900028058 689925829 916652679 902111862 910973674 667871601 860477121 304562625 660537427 376337073 635637583 289488239 751625042 108975814 181357932 220737392 443460155 635233817 866365170 783249171 882839246 289344569 824515075 696815198 935125038 887927963 933923040 212135257 584673434 502128473 898465104 957339326 983870988 649796577 996999023 761044942 764101927 180368971 835106907 369877919 749425766 806543739 854703277 459604524 598868155 412369139 636776435 845926602 984721239 627192600 645460235 60108526 967005193 475901109 504841288 28963967 957972623 875564246 979089004 29064103 929479084 896753828 968011045 691276040 695766494 235580896 711606181 445721642 509189943 901098199 938744738 671550900 830523222 621582208 665791859 130420776 227833337 492273239 877952870 413310329 646449119 906353094 952589430 45360512 142869260 334569350 581468507 600564304 628287410 876623333 930450966 605052982 944028210 417452358 648950194 190882551 237472276 910610780 981458443 858899931 957072559 551626922 765713902 738821069 798140634 327387039 503536778 789351095 978488293 929786483 994111357 660338417 971727276 958869896 970923567 851099357 907020424 541721205 696676683 541069186 675693634 933398475 940594842 617839832 786112292 13974961 385496718 867216484 949778080 886223771 894658248 15847712 738436694 710006907 716273190 188541979 802627955 783615251 811499608 83919358 592674189 688200959 959021408 668608527 852574873 663962958 965516722 690259072 867065808 878592025 968757078 40903419 107252737 28922672 463067894 73193281 851311554 892585140 967725345 243573903 439442204 526726565 837973575 201145632 518590703 312473186 630808358 167995656 253943147 338821607 459548484 581757869 624592971 258639754 298510359 204079673 303758608 343497542 438273058 2823605 44556999 867626850 934569112 760301915 804693721 571986907 748942325 576146125 785525841 42996762 558245040 774360162 939350905 943603735 951108697 889770984 924492667 899844084 967444924 357084836 854766637 386978911 978989624 195553320 782074698 536783025 734531625 373892723 394608433 652929123 822312160 122270057 561682269 632387562 650358675 44220795 707414564 818158936 875241803 774019034 986660657 744767879 935078647 352398190 505452244 126097171 226087583 366819914 804261623 544527011 868928049 158613874 332312469 942864034 988286120 94132557 885002322 396926772 473563025 964552232 997575115 610371722 898008972 997919591 998310631 562412221 593510439 444868280 923506852 909883861 920766275 616421144 766412669 901663574 963212944 778024082 972373553 440925439 445961871 846434523 863696038 475761650 530873501 768816778 911958537 732236332 735951717 862054293 899586627 38869371 284473582 743299835 879331700 689735335 920947694 991033376 992934856 597180789 752645568 552549377 643738562 982806637 987545033 719851884 802768438 613996694 820144320 260759522 620860430 207185140 541533389 577889109 600073220 596195342 874678092 605202012 775190769 868554558 980119770 822861255 964694420 221320188 250373044 654080819 835418718 908390894 988948818 888464275 930470160 901775936 996915096 79930202 431551173 261327427 566249272 263284202 527518187 306323884 659162802 146409724 279841409 680478932 974488019 118103303 824269541 497504289 722894370 252181249 946168213 552645301 659606600 12190544 108084183 282166745 945078220 596920012 890570009 935580207 971498457 158770461 834112355 383402997 419787583 567611794 708658526 773846317 866036313 847444338 974172914 343250562 376829616 97819054 880566702 425676722 543673665 221017863 506391099 633624123 666518032 400915779 669968966 557234725 558991890 799806972 945752446 218814921 796079999 186834312 458912811 797571701 994627705 673753850 810144949 378433627 434869695 87736252 597885615 824905809 826731430 410228654 698733051 661565447 793780455 731477275 772468964 992591592 997252129 211913535 372775104 399782432 768696009 823034590 851223842 189174828 367435969 735623952 995475507 582007326 882194852 39268402 737413070 489158741 645258128 898979139 984178898 703882184 921292336 281547230 297267433 202586143 301679666 474202853 784554505 458201605 528041254 181352859 212754561 655798126 658236050 531791944 606691820 168041550 369725911 76068794 313192636 858596541 900604551 750830009 851702456 315476694 524082825 722704394 971774566 327045714 671199971 638454945 986954623 237188213 670710181 95567757 773068047 290725937 690475908 73576047 195235598 795393536 809567526 164124026 272026438 877161809 965447096 605023112 848886939 612168982 927267276 549760854 781092073 733654926 889626589 159909391 608164051 572004183 580973950 300583883 365343614 741103846 856766818 797232659 988554255 433670206 548705590 45041938 301570477 293059984 856408040 455760766 916439890 739302452 999397593 983419610 992414969 11723674 179647657 192093163 465884702 474413079 776198576 831004939 933621708 549038159 812336916 197346867 907100701 195025667 481024960 60929482 714667882 793637746 834221212 534497444 736819688 80872483 878972356 847550542 959435821 176073025 912798404 243344575 356035845 741709558 860122142 871249871 933132624 29459193 670209240 242966665 621641494 549097769 628893883 402520543 717996051 708308474 820334768 933941770 992210371 681106607 928498889 785706988 908081768 58345302 503649067 378904903 619713809 229977237 328763397 298896934 858071460 707350595 878412056 41272316 265115813 331728001 858383617 547918078 907748948 404984957 427342848 878237765 881455352 227410221 428802260 615117800 692215000 716380808 783147500 620322098 716081393 190817575 720657892 819594781 976609118 287491615 660087619 569729216 796203251 265697683 771201377 276863164 655468207 11235416 631458820 870537620 886642902 935147605 981350803 472992845 590508883 576201739 854077097 150881041 944290582 120518754 126371883 55112098 501241289 898534922 972097213 213370772 549813164 589724664 662923384 806736607 836880984 329512065 349706244 613509943 621748236 641663625 785992905 660789154 828228537 707863253 775463733 941131923 966951598 401267996 579845971 717446119 912791790 491680199 639913753 821309111 898851022 272060353 941308980 723927251 965674751 68235120 885182247 303615089 770529940 515968989 618717593 290173725 863470179 153743278 279953881 439413478 849780624 980445066 991806222 344129011 734431082 646615780 865943325 716334499 994359579 78169912 925320539 691496650 884698523 535973105 795736172 477854768 528367121 955876686 978641224 824564510 894955757 946877682 958096731 299155534 498075133 214440140 306296478 461224125 955317413 777176067 789966673 623537142 902953128 530023882 981318968 400856383 663909313 245345185 426270016 272681222 825582041 982054174 994269539 567372117 839282220 198802549 865268205 898112384 926757805 853480845 985450982 397202508 530204763 296202237 678103708 677987377 721346386 100557690 813342034 836883518 985954963 622678477 702991012 717709418 865071420 981427286 987791883 669018475 834489408 300264923 346405076 4222680 248725793 162823969 284371548 533551726 792547977 354469655 367988170 705040945 815544976 449901735 954579678 152100462 376031414 198337209 522072021 783766174 792929261 591371823 752137718 680575796 920890791 490919536 674220309 78257449 266375880 659420381 879483925 893126158 994798906 216001444 722405819 401684802 446718974 800578783 864869505 839253850 987895551 880893255 977597639 431654745 671553723 434761167 466442394 162793119 832572031 717962948 973715876 946074937 979160150 944944012 968812275 246924776 647620839 319874893 849756746 785995683 977038048 482132023 983451680 694035945 845047995 137446395 157535420 22575436 116162070 232161943 502281169 433994451 792087477 589218494 780166364 787756228 923921945 836321883 856694724 829347517 951831152 9488478 911074432 227218890 353145816 40075602 201449110 892900008 913186605 736008137 866381352 514550518 830787126 261778909 490650107 917811574 976107761 758484867 822809471 261542840 266766399 463837206 774517374 487151865 768259971 680386647 859654048 852220348 911839120 754857104 784810069 896726388 955893480 362291475 890441328 702562616 797042621 11743015 643021587 547429367 886668756 277073000 933965895 109999181 124227571 353437015 496146894 379648986 851921537 978759267 993319711 712495582 923639508 104367078 725375207 532273444 890950327 711680665 963501588 843833464 948746847 242383395 925293874 557610313 631868064 716583539 807219477 168268969 705603800 32206922 398207497 665712507 698525770 493815873 983275565 581649016 691680556 535904528 658594101 809809917 915602570 606072279 912965225 752008362 787458052 498378027 807952293 981622885 997795494 492017138 963060368 270374996 854784968 624986341 943234465 256140442 898127668 133664509 217559604 92536580 362640764 906675149 929681691 997286800 999732878 731526584 745148564 892946726 957286339 182088426 950005536 495796113 512482540 292745173 760227452 144615257 521042894 250802732 277879047 965561839 999605774 179843854 207265264 410430717 782188271 776010439 891498536 593298209 750743288 239787015 242321006 979443199 995949914 258529856 437022094 83745423 748587393 981232525 999296381 249095068 830330284 731233566 958107176 995918667 997353401 217149979 310805649 804948013 834322087 809843158 887290356 693269819 700778957 918509039 942189316 382679190 883320095 782355687 846958091 982801653 999429918 938723223 974306214 245043611 322049107 558155991 626412990 915662376 933074628 937215874 939866562 533226415 926377339 373972348 770043465 474897241 833003002 417696134 829723572 214512162 690043586 771265624 962322140 683474357 807609831 120660272 617526804 449768034 591653949 513465982 774982065 773754514 972082000 26485474 185476449 647907746 700894488 267805725 635051477 264752488 794543211 793205061 947116375 984855741 992488165 860056210 989676361 147863653 286191002 803103040 809662916 767453552 867768361 868227318 889393757 330028887 489353253 285699490 725256707 676294274 826700637 408964138 725495474 268567801 571300668 877736599 993172422 384202287 659365852 568970923 890116407 393734633 702052695 857600424 955180095 734228730 904293447 7494100 111208341 86806057 160500561 596476378 606845376 777408876 840422184 127839149 433512084 520636229 586167013 709301739 745482087 90356431 937881018 539043116 702003906 105006503 266942847 476012459 540701515 35300449 462941549 138425066 208717239 540390726 781069595 10312499 55084239 306200147 405554547 176031944 958418077 793704552 836362620 312668405 704343111 336027750 657823409 987435536 991106544 742699519 943209340 898621873 981177730 738234556 739584343 947070039 991965657 13278610 255691432 100796054 157747613 519659490 729702152 838939342 953034238 520988708 671912974 348615491 990198844 477697019 651221332 839322387 906365468 431214564 579020649 159307215 995267606 29997422 69508594 83057702 915031586 338317419 919736437 183916093 281844819 730455670 736291303 746638167 897190216 544044785 647078034 979263270 979650679 152902002 710034050 112028162 271334347 935623658 981024431 203597384 615928911 671514130 674215474 933482526 990935962 330579907 773886957 801279773 829354271 463785300 551620629 162931434 189638800 927893615 998325643 643298995 690541607 320549689 785092003 660859072 950790865 973546570 987346845 231168153 945512787 170828884 511668387 320531497 997093712 751973503 908615752 815739825 973963839 450259648 652122288 178641725 776983768 255219218 452906024 512348597 936181811 492242898 698230196 233087219 571420328 908133078 943324373 694589766 896534788 339891240 797963646 240189785 305406132 659572076 794734968 310222404 783493127 663384661 972170452 777140569 793471268 980122870 996252869 919247153 982342326 57839502 947440705 491193139 899699620 987959322 989609816 72491774 250460345 970175590 983638078 998784662 998981000 506635652 714586895 202457067 546403191 583625516 785829679 473884053 841786904 20157478 709704024 966471331 987545380 522096190 714728537 758014697 951675433 730964414 750478937 959721260 984764701 654735450 658350880 488099655 800324419 373158771 398022403 184947989 492661944 480909607 824804320 195836653 674353843 183940767 864907644 875682253 905704032 116582512 271511997 493186852 624404713 106487726 110854926 416700619 698465004 782686202 795172751 574738645 744193484 713604678 961810579 597484074 646901570 372699808 661068187 798665624 841133862 790238709 905788110 748234866 819108724 436725024 808034417 955948082 990134198 593859085 608011390 763861887 852010781 175753226 646962602 194832226 866490546 334054754 598297033 585801515 699604827 32724077 553339119 150271958 655576386 687956832 856324014 553947113 624258524 333157806 560208260 653980507 743128553 427434426 983507671 774422275 959851094 908007200 999970470 578315951 943949204 254979717 652751634 105462699 743846805 16067119 969594012 622139601 924749011 106966117 710542104 290843804 741508265 583548194 850071419 930059460 931764702 892753091 916267305 855721193 988125749 606558660 630202377 592149692 952087415 435361262 944154429 494979438 512900071 276830343 342737196 740183180 858615511 734219466 980831386 398753768 846534959 741773264 865875173 23013749 773337626 714590677 939156114 995420693 996915571 716120974 934211188 716898022 904782579 140238249 168771108 442326922 532180264 999503483 999971236 558179313 876242432 441412293 781294202 294183817 861088206 510183601 847720527 546833137 928973991 336200162 988546797 595032321 906619924 316307520 409913293 309179349 429963576 977541210 999751602 785489904 849620082 189333472 892988773 246718711 393586240 895564431 966404189 437622535 981289265 977519311 994958660 343207728 497884739 949650186 986619452 508219185 548730654 506944276 848938608 485336585 578275855 845060988 993700250 138794873 569176317 943156491 948961756 314045820 872509951 981626635 986937068 717107449 842541065 220095291 423086277 467573510 985325748 826778114 840125310 954905928 969383014 339980064 475327680 529577943 589929194 15953861 168932003 375474201 604832311 447100290 489827215 219436349 684323667 925497491 950840018 557654611 795975322 628314742 678083243 598691073 719393767 839834920 945818075 650393929 739568855 400676597 621830229 46257529 257447317 333081652 368475135 589635649 892737860 279408970 501976603 306977489 910148106 502771135 751466280 744449933 866159467 387503069 792664588 29056381 367433925 300350917 672368163 403426294 948535468 707575734 863991313 253290674 624560539 882070387 990588731 966858378 997931587 516229517 981062895 987284059 997145948 21666042 394851223 593111054 903082393 80500385 228973074 227479266 626637229 791134757 942724862 436425191 848971869 188899369 885516981 345436464 936264056 183738183 354656109 423309941 509639798 449520453 586670497 805798362 951858017 651942824 682540126 603866246 988804039 246714657 718424879 380036453 762690448 189513119 393919700 68585598 960605879 772642229 899527998 87655465 274350749 595865869 968152478 506746790 668580885 824647334 924922484 264235539 825659510 630243880 694263332 368603390 926388186 907045248 985800519 982945012 985851865 740909181 916010117 18770254 901197104 707925830 934673738 19288296 561438668 735256564 929533738 956468544 987238761 73936356 964359968 550837766 668322867 676440699 948966166 211488275 687742683 339155034 843272088 174909405 842619835 865152553 957437827 662985650 693906853 240078128 371275703 147785990 698923215 163849187 824313845 841540150 855706059 665999992 824347586 864646022 958853500 302782929 868314791 294087647 992899410 26947039 534526008 511521590 947261634 588319178 743424333 14451329 528768297 110771882 144505994 222384157 761237247 4408602 898388190 357432339 663118398 785725895 901926815 350267756 604181647 746045081 800953493 884976650 895831686 268527065 494068329 822451755 901570493 270627066 516851465 511505292 587228638 907333850 998833191 210116243 987188999 90660156 287301536 623437705 958907528 270674583 759610105 437205048 948374026 546075632 577917244 991155796 992101886 422299484 530382118 403726386 489912564 49479226 138448913 652029941 886214853 551441043 859278276 106656746 837068762 1931291 239025582 670959514 809625275 739105030 789101867 28577078 77395614 302718620 869925709 879025990 996614606 664076746 713320455 851529901 934671318 111924111 175250362 859894661 957787066 172016093 909896879 810229860 992797842 125629602 803328345 276205053 727557004 103293186 772001289 988719596 990008757 804298756 991525742 651705597 977072504 93644677 166254382 802420254 971736395 248837169 622656572 284048989 643855325 780163332 898554605 202214270 262801422 201146442 498991302 965518272 978030310 507081783 545106041 356843963 387414313 242667927 449415337 332199682 476450725 569224018 603768283 386724056 531981652 598824322 929817888 652139039 753598023 468749581 813854050 805999661 937295077 140331715 735831257 358100298 992234965 185518055 708078909 878148031 939671122 559469219 654886456 209831382 996673252 836407448 867836642 85747362 484577720 307169457 926030734 856614995 940477705 9372390 934950270 433853483 886205195 175164837 321276922 941763978 999002723 852013377 944034551 322711663 417180021 102256324 708300470 936725691 945658114 761477935 800952707 159932214 636795035 149492305 247526490 330936364 901474839 426287982 993421492 166883772 812025985 706703674 981012752 465049406 589461186 350486659 724319308 346896775 916295604 839850483 958891931 802190492 965844984 488277386 565208866 709991147 972530370 770364246 938289974 732669728 862888619 643078851 749076108 340935426 968437317 173588315 781884395 512266835 754489189 907528776 978056104 326020353 430611984 810802021 811098005 589384005 695878410 711246807 824439931 784938234 818767036 41865892 558734412 427591516 506288858 965293826 975471867 864696260 963976378 999500986 999598164 16195594 878362603 670490386 675730523 206687666 891161366 776982611 959179006 857214029 870803312 453492292 744818570 860359667 922610413 460869894 923069707 77939323 220211860 899059433 924697758 155703789 287599312 554133752 589805180 391594981 447574236 165609312 704967212 391738608 421483921 460183876 544390693 559445108 952828279 278829351 372867606 844151606 919643242 998170225 999930474 496679240 655697569 368561469 604911841 424246506 829152506 644518370 674216013 783174827 932568738 86648514 698179137 331444214 490871723 929289996 972481228 84561972 146345340 248487466 791327246 320218183 717256556 208094432 594503689 27194230 838068760 556958822 930451111 391334379 569384588 785423589 956447126 747289218 842862343 151165363 838925741 618415401 937661469 35880729 346255052 289606033 671869162 454037452 707223414 190772956 290899413 351749155 389175454 402380650 427796876 725324668 930806564 421816289 893955317 127602636 289306932 871594917 911184336 840409524 996311961 967025494 977727726 472951605 980074609 9347460 58060991 33977464 968989701 723813468 946769218 130754298 400167393 754947005 899459551 36964572 572271631 147284669 867210854 154489828 403416992 929190365 951333314 454649367 634647110 246792555 627718303 50646047 441643205 750875010 800554054 508119214 782453048 125922218 732929854 27213825 949469111 613210827 653242715 892361126 922726416 165007389 299871124 508851598 694225652 244497422 747244038 500259658 624101456 484360237 666146500 874498135 959167316 771536754 817963625 193176031 947330123 62034795 359349953 750548262 969107268 744443207 886507267 605431807 783811308 831909076 971393532 532952091 631416998 850424455 976269289 864294674 938425592 509502162 826947761 170921715 274240205 437281841 724863989 877414878 951141650 293282139 673025524 141065300 616445264 920074802 983747097 82526693 819372380 798417982 903426980 132517063 497861829 513025505 591246186 977268304 993655704 623202127 901676823 95724007 892775999 653874376 842671825 806432117 986959522 61588007 841201155 18941129 634618318 669629349 977821483 714872094 892019774 947059012 994582784 80177674 543830592 379505785 479518559 333740406 687015365 33042491 820714740 751008290 889058343 937344933 978015574 748003342 833230423 948823097 994038675 378671463 457686692 682413717 769511910 826023938 955790574 962403363 991317870 789728169 940949315 373935580 853520829 307348284 359960990 15398138 923890881 183597088 329777727 243810312 918041344 750152673 895675147 579011565 961169377 55899562 780602463 787308505 930837215 555322310 738916169 13282706 776405705 741824147 921309845 145557250 777255256 493728465 893578204 608705464 832799278 307519086 433046956 692255904 950198810 417482468 700634043 288294938 839260627 520643125 946676322 55209943 125991449 407278152 839469530 97472126 909431996 424632977 670700586 918142582 944351526 893983062 906367380 564568702 989872472 465816728 688264886 126893589 978779543 280741329 804795902 91696444 146796291 623436924 717671677 993571519 996695731 695660733 842217963 980005974 994433994 50212909 965906508 424671762 910442770 526460873 660811181 815715251 942609755 104722953 337715813 604026983 618193783 681492301 814061296 730210827 794054009 544138303 814540767 906907245 941805856 762830669 948150794 364499166 722995834 535359336 996836825 595742232 762571144 450607483 802845994 966260275 999986743 891860275 891985153 913373754 990485374 748191370 808505850 550756351 638850851 490828133 571297547 111126787 189633893 769217840 815189249 961897571 980945269 932460709 962624387 610962216 994449552 566904576 993014255 597075958 830662494 845611692 870366062 369930690 399062188 37220548 993199167 994793149 996165353 588565254 665919874 208890463 503188063 417148917 837004162 358634805 855018957 753082025 923970724 790805707 802133011 39213010 579448847 236148025 524167342 365970341 403680757 47230157 659938010 735159377 755029293 763060237 923591848 607420624 709552767 128939567 201337616 810525004 985743555 189367234 351258610 632217591 664128279 803054503 985417502 789255340 976636898 521341028 655545269 498666967 904604918 675475788 719330742 150523986 567189538 687614699 856050812 931460993 961682859 646775535 911815406 846189083 846238499 555172146 812178754 255126590 704202042 988468054 998515717 307634992 560547425 411006265 655589329 684012462 975073298 731883607 865042884 123461421 163980772 110380438 349216011 655956527 705787390 25665763 362087588 554629851 692749544 330212613 924431200 175622424 412087537 241071184 266877986 345712196 716155723 877611743 993106105 837202449 861725727 318089316 614567954 537625287 740605395 222441411 777243366 731991314 930957130 31387067 936158556 106066438 232001706 13842874 329225410 554722083 886445303 244237648 271278709 226167820 321080611 382435368 388975646 897326584 903013206 462488953 708669259 349369980 378324888 296878903 680752593 798732173 885299388 288071543 311711227 217195200 318533730 392445029 442691025 706697023 918637026 478511735 488209910 732250013 847154589 926401708 926471583 911944803 957051936 925165392 999254804 279300593 980520334 599805995 836005073 680595847 861041890 759662187 783967712 742340565 900161771 536877390 869140613 674880187 698782554 182671347 987544547 633865981 965699652 29236938 624397304 511548938 709098153 657481821 660102356 925413202 930635782 821011588 941567932 55884159 486613073 664074754 671221231 364040034 536896077 823887977 944730192 859643565 971038445 356116149 823308516 861969423 923961490 619946307 758484057 549464648 766770219 21806405 450653554 626837342 984765098 834993347 981367120 813880775 831052530 586816794 721726943 812563619 902732754 995913158 998928894 591393681 868765609 59253784 504250844 254546913 835734758 523732082 671368300 979771905 984633396 361039983 635514433 963437052 987010773 425558592 919223543 347327110 595769266 287977419 899918019 473577684 581509046 433925066 533859197 306112873 720017885 406550190 806654162 61623784 120062731 548779757 563687399 7874253 974694213 38513865 576436508 186900778 339146702 319287840 655659359 798548591 927800074 842977322 954330850 406607695 439330111 418296960 448030410 451746599 672027552 986294595 998227957 856347729 978386775 447796140 491382122 19884035 545094353 804357691 897121612 783440686 882912655 39871125 505670838 25295587 80575366 543679616 836212858 396626434 513371472 772037265 802972233 556487674 875922290 892478883 954663959 490575335 687479260 588262993 637373049 618251272 960750274 97415240 279172391 402258291 957024691 917737995 964536148 472526436 638754956 802438576 805127369 964026837 967139414 778955443 953110508 139104912 436602050 432600082 585388512 482157069 826244686 212803842 213868925 119293425 146327703 411442054 439224199 300325238 487019723 297106394 326803266 105505922 348452836 277765789 942021082 952251351 999867891 47660647 634936416 42279601 182978270 858636502 944680090 508618910 549638811 957931635 996520920 181984764 776720412 650765563 914966342 250609441 372217573 678325940 733898213 658928071 877375580 849037729 879135157 213291805 358499255 654224350 946129245 612133508 691996699 436615510 853739941 156121031 628944274 619310067 641988363 337791737 712363445 330483053 603853044 399054323 501430711 592604434 902460972 342178526 789209349 761304288 980722936 22186274 885527055 133900458 872196593 988903176 990361084 226804494 960430462 871077280 945666581 914106468 934071933 727065952 949282878 244781366 464891660 537476264 662997849 333784458 376854004 357180178 653292021 332862441 479569338 425885273 797259552 925384848 941822371 869255868 900047613 410111322 878512323 48724508 621069009 990488335 991513385 78194923 111013498 552921134 622630796 851716292 944991369 421292469 845259317 596469649 686274266 861991714 876899815 189089451 907607802 113083107 387245864 865995064 948603630 446313046 535543461 56263712 602369251 789007085 965719584 655854961 699719243 858043423 864774027 607832443 739724323 288615798 867860415 805612664 992931260 467020453 712193425 265995312 483991934 717580448 799298830 689264208 950399468 595755830 991814448 522759260 578334690 738836469 881266214 855967704 992868176 159448800 405576089 314765342 809280916 376729434 830010084 481562133 569651713 164659044 841314371 227972093 267322116 336916005 476627059 132284840 137177164 419256608 793591949 846122809 849969812 933837631 984539248 129688515 928277361 577944058 757271847 135813099 831297447 491668345 852043742 999644654 999840228 446308221 533969115 405109352 569772259 34267500 861748446 613016305 909017304 697005646 763243574 899095526 996660918 625194879 788868243 294002976 798667827 138671149 634865691 967996882 998931852 788516532 971515941 259805990 673788241 204460183 237536933 849521254 862958196 864256458 952217224 549947074 757907259 185145837 887114455 133970768 464544887 330237837 790916443 997629777 999160781 321276728 660008409 747609675 916234874 847167261 911299059 774566502 966632312 96273478 792460430 874302119 936330259 272721200 585766953 417027692 538170770 347880797 922713782 417486432 745709332 896283021 967262180 896574594 949383690 195615015 658149345 371703830 817192136 133573217 605585269 595468844 668476328 74841176 669726713 441575242 926548006 756435852 934472330 220464160 917051603 887350055 950638621 951881954 959374623 485232221 764288657 70802286 86284247 355628650 811608495 86167998 801631040 814789087 874413191 920776553 926824946 302802957 948928598 712678487 929222483 146622375 691615897 951342779 980822099 404332516 701498173 658281163 719723762 746739684 955584745 11896579 843016635 845386855 871275091 462045189 695786627 604633982 854811744 360395105 570010841 742450481 769991666 520244842 772096675 944374002 965897675 174717963 332180034 1475720 490829505 632657702 893155570 362103429 493337378 323719956 963888046 390410615 742957173 236387135 548524021 745847975 968418470 534486375 609583296 983462482 994661577 544040974 629482015 807636971 832577047 617229676 619907390 753646268 829892633 198283132 863997539 491918332 816442651 595767548 906066851 643553148 684801972 488743720 933993569 477686182 706764072 490738163 588151903 865482971 949060905 932707503 936842676 633462862 876984638 390590514 943823727 446005729 838735809 939258451 948422986 763583020 845867816 790356691 899095173 889161114 901822923 383985690 789408679 843879283 932448063 786937530 915683726 824043164 894004050 795110190 818925689 561293365 965120862 854953158 937598589 596328837 918651165 952413632 990920365 656628013 756665019 650770178 999235390 390405103 964010757 585620991 663304378 149885374 235763943 975113461 984756942 765279501 938686741 244627920 260563676 789907780 953642173 948239621 970120284 669657425 878316648 660493567 964988507 668968047 935577581 256517719 723880304 114135801 795415846 574755490 751190469 289270036 479083713 434181030 545875541 473217712 831827901 544699339 623839236 72529840 384893115 158853637 283845040 56446684 400964784 789987254 941699074 852566138 973924890 92283805 391809850 812043944 915470873 437004388 808918199 680712827 806505380 531817056 783558786 727986658 747840918 171098157 438705065 570862921 870520521 565407796 945025384 301023721 747494913 643416499 876189697 108654062 893328100 724981889 828486165 136228955 722422135 918916286 964905897 960836241 969555707 867148713 992874475 80426833 905810337 168940325 330809195 859517742 892272596 602729836 993477831 563573048 946384744 241034798 292329534 926101146 946077859 927183213 991667583 601008567 617148847 47036730 270430749 106663171 262347660 556569879 599775953 856456347 938969622 968422250 989417219 258545738 669664984 121849551 470936656 836261856 879666468 889568529 929560000 685694640 753344995 850909676 989922210 576229413 848286415 353786948 565109934 379418616 837454213 954339480 990947146 374196897 693709804 768344862 890875124 483756954 532702661 875548918 976446803 8033944 385283283 439720630 495922789 786237097 852441283 924972752 966806891 115783917 407327266 613723291 960530824 424301792 466048983 61479761 293240845 746998529 903057121 329507430 951416050 2616429 981944699 858364330 895393353 67780691 874531067 520709563 522041481 727333585 889438735 677381219 886643363 324289247 664038760 986672942 996620816 227972719 771694123 477940549 925300865 704489256 736447586 931908702 996456765 722409668 769355667 32598258 59233305 565115837 900036495 965166217 967956072 343295713 745960835 306160669 878583177 287624672 746703968 237905248 375090553 419604818 443802135 256924210 723497076 538845909 597375872 318373659 355013031 943196336 947228760 574345340 998311706 54003533 543280071 5942384 315609664 354438220 408750384 386951793 559352251 358931683 413943739 376300742 391610956 864720326 896572128 874995497 997007017 212131383 333139398 759124756 767353579 888679326 978646313 327838355 450340150 119043169 465118185 623276249 646458781 67503778 539039036 64445306 345601996 390931645 814838130 956176437 965504557 215631 604284323 571502139 763505107 586898856 742790917 715934338 936658196 512512237 742990858 63363038 710555847 990784791 993492856 353961391 620205898 142079722 694976496 87284237 858902317 952515085 970400130 759742535 993202253 931465539 979872448 655851958 929640453 279620161 568813746 490937236 907608360 63195126 462704294 787700049 900337372 357257687 735447794 143830177 714665147 551123486 859161158 343881187 684105874 165257061 207083117 927440989 996314929 616326192 902742087 264070462 414264750 930055980 952877206 750528463 765241848 738271341 764101786 472116653 982074231 604410439 958374471 306004668 853842604 806060283 947426874 437787805 697222467 451651318 888759263 754022808 807211447 371479439 909574902 553213643 763111674 318137070 470154360 103748965 806562353 910101953 976531916 661165335 993125848 457208875 487321903 181257883 484345039 248481766 657337507 537614114 763726103 72607677 644840589 788603436 831280814 744544356 910647020 340572800 503065270 243779399 289515540 241147386 749231771 570412201 702232908 976328361 979634296 4229930 179825161 906794095 940826156 401768717 897934607 588992850 663376497 469953204 971090811 142502350 484853308 289511189 653562593 178429375 263148532 581581336 998753384 18725344 771664108 559158484 655258675 316068064 735222278 597477018 749111042 600077902 845768117 549509433 699121730 896972745 898706844 83741069 783960801 2392113 293875153 907185906 997769802 785028233 918033627 39810368 694582223 144045194 288453511 543574824 626643915 279121529 326546798 148546213 204081521 506208665 755150051 312886655 806477655 340918966 792155329 451062825 542722355 166799597 842989680 704166401 807298135 390122245 774860638 297069895 486502936 133156324 684012598 723196578 950155740 249976137 639088207 824486829 984336426 718146232 863985217 684811258 686455723 162127392 602635040 445803816 960631925 316827576 912542474 561314540 794037917 907424815 944213131 788801916 795676843 511412613 949376696 453953584 817611298 717800906 885851780 264673625 411513327 424277703 724250167 773434827 846836360 257438104 704702956 705830734 782612320 642385992 857459418 296533491 994424538 711120513 906344880 653745444 770203620 282089159 433845561 678057755 687638505 262784313 271038057 983079229 992146624 853624793 877184578 914758657 925480537 404167217 928367899 751652411 995690618 952547056 975742293 201131666 992785154 511812062 762392415 341562755 498806409 667455038 854840600 882785194 892264264 557817601 868371068 782017693 964964368 398250901 926948556 872571722 990736037 223633399 426070038 463761791 540952100 660979799 680655265 634109423 934349288 481489827 792373643 800988441 875952701 619048027 643091423 898895730 957281512 441353698 463264202 283643438 726317742 317736105 532951746 702106688 879856935 214387166 815323619 471293185 906562039 860399206 945024651 917125994 957244113 816365764 860816444 249895077 791896494 619605399 647629612 751028211 796929210 493961012 852919102 851812227 897413521 785916939 805948834 7550383 25528609 886246029 962557012 79441105 424083784 951405122 979319093 705615883 738167509 338458903 503394614 822701833 862791006 89673364 623220985 940022698 988928118 657227064 838742684 198525143 628824082 954234701 974141077 268563647 321897861 307567069 395611015 39651315 890535227 701248941 987417446 692386218 925704469 149021773 793381020 81787423 113389155 141023189 316801397 789222379 938615776 730436026 737720869 140875650 196780275 47890811 799821822 477918008 739235118 202222886 893734448 549901066 794444859 627247998 748383126 516003347 745252920 21785094 751692004 879151098 977408909 344547906 362879699 17663723 294374169 275411112 763414077 960185700 991408769 979548317 998134475 499781534 923596657 830053846 960844698 255988629 325043167 278942418 484827644 710911828 891470630 618888294 738131641 705654605 801428222 620627187 912013348 469354928 618773211 838288791 974116667 403571411 587555883 331343121 414058681 498563879 508901212 205948642 250121248 600185649 804514060 693971537 852085539 807709527 913140759 139379314 583334478 132997804 245230860 492808093 677284589 462482068 745321889 864331730 970718360 264643768 329800827 265905824 664453909 156857423 873342406 921828066 976653676 210824818 825196857 211650651 544710133 427630763 658962672 182422516 749143787 385839417 725686315 781472976 945295935 599747594 806804600 632771017 726508818 875673530 959432760 732644957 751161478 37372125 637251234 559998603 990784326 364654834 388398945 299561359 684388908 801430161 907134785 402254579 993308386 288228379 466530043 2869499 322806013 48716571 121775231 788901010 806403351 4316823 161803801 731684352 878352494 396753950 935621079 965388001 976238533 162958732 691240000 622046131 733852102 741156108 950418723 694914359 986609447 689392968 769625077 462940276 685790045 703029663 982697211 822854139 863630489 880782639 961812112 572010343 631345693 602650411 913386405 20856791 856147264 962444353 963941664 445089989 727103305 233949524 798784675 878982973 887270142 849097898 920013856 856145029 902184822 393681734 489676580 154415831 643369388 202799587 293033245 940641858 953466747 194340443 823701494 531952769 710870607 705333584 740697492 809809256 859268186 429660770 910347448 178936686 244307269 813208136 847533819 139568044 575690861 885999791 942126166 756816564 776524256 229547212 662717420 873924430 949109515 994703036 996363882 297876906 793378036 118650453 642878850 785916450 834908080 390223161 900481083 321065234 898311352 179219278 683960487 573561815 956378545 924901281 977702814 619037393 711189532 118303814 221518259 909557820 946573238 34494209 531564554 501935940 739072055 392074330 898286562 226994150 712600062 300455564 927564075 292434869 671176955 65778931 383575191 672908770 744698473 685379524 892119546 155717552 210113777 392960986 555215620 745215491 868946580 395600521 824287986 891063287 973431706 987711379 999648904 308109855 757932891 808770085 948687010 833103967 885938520 385699348 619777652 711212540 756719373 536425611 565785548 315785685 864479001 269247845 421235371 846929522 968677237 149439879 784940683 646627934 937766020 615078677 816658253 882915467 983968951 178227888 941108091 61578855 231510292 730263621 884214228 650663285 771046036 871957840 963692910 59574442 167188491 471282814 912416922 384879786 839293507 398476035 475448177 411323794 949271154 461310885 528462457 995799518 998524867 711482706 789255914 781472686 913089655 25257984 997428697 797308518 885776944 987177353 999794155 402185717 925888172 892073692 933653811 246771054 698053692 537043873 961018938 878882312 927025202 379040064 443074528 484891810 926490145 287974920 797410706 471368514 603140700 663059490 810711687 679915493 996883476 594852742 710968373 754953345 769142920 208792838 999504522 222143144 446458186 289517120 898827775 643844392 687381706 911775538 917663000 154166296 841265115 587979650 937529414 664189752 831209735 888475374 983777883 13310883 807102455 842118519 971219436 209815098 301350589 522795633 898584113 20024930 296176088 718696638 732810529 22424434 913093209 543315447 734076250 622466807 656061626 665643344 815618149 486938590 688113365 558210596 576780419 414618079 865876622 211245817 507273356 743252487 951531550 39748499 679548063 806381923 878835720 201541904 311512411 551294448 581160516 262689594 943638225 219430385 787718073 108142856 165017707 661781041 909381419 872820765 927480209 58655853 201284827 884611671 964775256 144070734 598106428 973006338 980946863 615358704 952567040 215931986 672866456 802173854 878403535 15734358 301303731 207866505 413050576 372236128 549725456 721929344 795639596 155881404 660678170 783971109 958924923 725835213 744114571 831222076 916315217 770734591 817978440 598224817 635320020 912250346 976780307 166195473 626089388 117295510 377370255 913647324 915880286 48873595 279713445 974894520 981541543 368035406 919979008 812169580 932565611 188160200 787376937 287090292 582360496 847440712 961892645 252379255 687437988 524474358 594388592 160442964 466963263 353340176 527687966 639126704 934384429 30560772 868410235 215889047 876775971 427722942 535119838 469672048 509272970 236711052 684471438 607010827 854343113 702309962 756507266 722020430 828361060 437724116 491656471 744995707 997771465 896773240 973349046 27807084 135029269 217644093 292916823 912568037 946770979 861071645 917149431 131255813 237832748 282985070 363915688 947024552 984346387 845081178 897478692 987128570 996944167 823467937 860654759 563976004 652051044 224044166 738685926 577785195 682066421 222021857 624949346 467404759 612978000 59870807 870459101 78823620 111109904 494516954 727678991 904957337 960483200 525895985 548438021 384304413 736645404 619879624 768749963 436737594 571888320 247884731 248838481 71840648 852641281 152602275 767086287 717926044 838962816 57509900 500815035 73787587 299647345 540898023 810698495 196080092 556650756 848002038 860261973 906021334 951649590 828794417 961027219 92297766 333343379 576141960 813923801 443251702 955569126 871801273 953855333 929143758 938181408 378897829 399440484 636148411 673525258 96387276 879434556 383637499 782099024 287501528 327684935 163288826 887693990 654329526 796519598 382313632 769218825 911354297 927070736 726562397 998273042 976500719 987632753 396048017 429771349 625532841 903669412 168166478 297756143 134500420 175083270 548077381 567044437 98736022 448021763 781494469 882807476 654742098 907134151 351711759 362203021 687001933 997883683 829243077 879570342 227602178 697530552 841509405 960434328 491543400 944660941 445670939 607750447 557334842 568487223 491720645 728181411 272256236 960387011 528910994 988303969 532271373 889147770 947273902 996054334 12393902 154183729 371406941 392492927 751255393 893049059 406721275 448444840 498071776 722095077 254691263 906759749 805182002 965548407 424919094 835372609 720845252 779047730 190564649 532802253 629962216 637125330 503803047 862792158 19083429 268919764 939882852 969093333 790373683 949173298 961409565 991095878 222124959 659313066 720216328 733660133 753815526 984448399 764173911 884021637 616837900 885158470 968601637 984825080 132770943 773349954 754742227 883532714 347042289 997415189 321045608 557540693 103634325 153466563 882887827 925418724 752727975 895103489 368418923 592780060 787880368 925369184 683341265 726523743 58603772 165307217 497378036 883377586 594899027 624724064 837088475 946452294 689969647 905938175 904358306 939657923 544744147 546631125 182394266 786769867 221175384 671146249 410610546 844754091 994182958 995529423 95570207 466346914 990940900 992025580 550079138 740701984 682268882 781134152 138530862 418753420 103098710 261885659 549734640 823135849 749562812 772416345 992583582 995459525 401423942 501146401 259518385 323727307 299342925 977919082 849652143 863891229 467159101 622390320 47541877 447453433 694458277 756049296 71237443 402751213 374133552 473050393 997916072 999956301 53820403 124019721 745698167 989868898 431396305 820661959 687689770 890279687 113465682 779619826 731458941 833797755 858294241 886425365 12205709 687192348 620153332 670338462 666848682 869473527 204095658 519272255 261673717 374720240 849988546 960659804 763233737 772092590 828536049 857204027 945555412 953859675 251841549 445163464 490303026 572481534 624727992 804455090 538827576 779889477 28019053 246002846 320104229 946042442 680872097 703562960 289789495 434024833 656341773 881917436 227975100 873216403 296336177 383373504 489428784 672817143 475679063 951462347 842679789 980358929 191631907 364353850 978494559 989524643 248919104 797736099 134321611 393591950 622719477 858423964 151033801 853258117 975561606 978615783 657562039 902997248 624357416 935502932 47779487 578578735 35196443 699890265 549546395 665324017 310004993 560752662 606985157 823806224 657890536 920717706 320080781 510986400 408477708 997025520 876696228 965994187 89743184 185743859 961968961 981007059 928390691 981774890 667338330 974195006 927558248 957100148 372486087 654235819 628379261 817834012 883903088 961682067 218588057 999900231 670222737 964861480 991635058 994793388 614837105 670782933 734255813 855334312 574679916 751667411 422754569 553210608 659861505 687566323 190152204 891898552 807002258 989253582 357509324 981344381 411290774 972114669 62787750 580736341 563704122 959913986 798197947 823437239 820148641 906683052 889737361 935363641 953337622 982004790 671791741 775899945 212448849 976940403 399931937 773996099 775149044 848617548 575558011 986921706 110959929 567523951 551166203 903465260 493740943 548246008 826138003 915544262 231898030 693165953 109442992 522164243 977469488 978712760 645447958 837970605 867993519 885505077 255762027 629180838 66535432 734892288 553315432 849178172 736122568 796010773 151994535 684799704 166973607 563177738 519771677 777515762 33418939 960868272 886821886 992441887 744956687 862348486 693662669 873588390 367324383 398854831 941098325 972076893 601397535 626354206 494575815 668616257 430012710 460761664 396941931 896947574 181154970 343480876 467357053 597174309 171210003 326358355 733886254 761661530 589940722 653188152 498378800 625790541 698193101 987370569 645410297 705889852 486452375 641434747 843857316 932345703 246805301 897672423 515597297 545985701 714012886 735768232 510295342 570749682 651550399 861503782 476490461 945727563 597679658 725080623 615785856 999245275 102952599 645778584 629582805 782701634 106930258 330485509 542876027 915346009 188432574 293434921 102349629 865802626 58361799 458111918 160567435 891145656 580945981 864201420 268520231 507919807 631163233 712616587 376835998 417913055 191766257 711484622 166586398 214401570 879020844 982944496 877292494 991394809 386896213 600182446 157216252 889451318 788124085 881388880 662634591 975701623 809775085 816641688 216056961 826489825 987162925 990654712 412845100 802310790 511921171 943082235 559157388 609670190 717959498 870595439 189579660 291239092 79888144 236154747 251252761 525254757 645929908 872130642 528618322 867857838 109622815 408600431 417175735 806401340 348508788 958297773 798308295 889564252 477035041 596653400 110808769 843932478 109542754 678024701 263130684 617662964 468345039 958786771 870332085 936179250 4835179 7531328 17332579 363043385 904583722 997891012 133554534 937036450 667685248 729341321 887525540 894606807 64110416 224386324 570423967 745231437 942736829 982468907 535163243 623762686 44748764 389593985 319305875 602342030 249171190 613375049 532671644 568886499 118155574 446786735 212052029 562845396 264469867 281576229 380223454 608076669 411123511 520337402 636825432 747364615 729930920 831757097 790173196 868256130 47170974 572610778 646200315 826469867 776450068 819414952 326191164 874456080 690020932 984946923 446031095 598364166 474199181 536409917 125486390 882409296 120203245 864617520 127774094 915465816 963253576 964091989 831030684 984297694 74967357 241123405 387539923 893010523 1434219 730311116 456383419 803680043 805313881 955158485 593215376 938018759 378652326 505441488 144095876 791493645 343332233 820539774 918965580 996365566 907316275 937139172 271161291 961977214 236161239 680700953 778053038 947878405 313222096 338551245 421807565 738553620 105446275 156478252 695879155 749539949 596334006 643985597 584594312 888674537 6345980 227267714 111617164 464167536 123179048 940820348 776629345 866535265 773507944 855717770 575854240 700483288 75095035 246562456 288086660 733614687 428633462 568252871 922395396 923220267 947719318 972545350 19697628 120825900 534571757 676036348 834033119 861735436 179396728 598031087 524165115 812161207 970333799 976718635 883313935 971947584 523766210 846587189 433434768 980369653 377260872 917551690 12660012 17091858 774817106 891008080 469449073 833757045 440726808 470355010 411979130 617652934 154454577 649652536 689200852 933999186 554338126 729041550 266830317 651268582 70218438 400798867 282991351 847801623 588629109 828489512 276453967 826618259 753238857 981981019 74637345 387524941 788117040 869611976 100327429 481805644 774285736 910113039 613496367 808208492 479691460 721979658 319422917 849366812 988912068 993710307 299245730 917221963 268341883 559547772 56556926 791261150 514497242 546130813 490583097 967883136 332185116 925894972 734872446 858268282 493869619 848157013 793641768 950830215 950309000 986400324 903471185 930295330 514310317 593513242 926272132 981280889 997750046 999882574 303320395 586096382 777073316 948495247 507321640 832571345 937041909 959305589 972454513 988211894 343047023 600125003 999475836 999811655 650018635 964993912 676511440 804024334 333752509 674761418 505951386 971025215 556693267 743818153 392320455 931562671 588795245 973656417 198065098 616848426 592306868 954238647 790544523 870177333 966339917 977694783 948251315 951287402 994821460 995492041 401940376 668830572 647215311 705878837 587883204 656513310 455758760 796682566 281895012 955279533 657224449 837610906 519168423 599713529 760874858 796749750 552343680 964088403 141400031 885329264 54453712 552991033 529583432 743137554 487731551 636815886 732812713 989400344 555004655 716407031 15746707 559556935 60603790 654685170 467894248 852249003 985360753 994079883 109194457 547544990 769690471 832869367 68573757 518721437 679192230 790481959 984294567 992058439 216994011 238738508 667581539 715436791 361143110 440054121 432730399 514550341 335705196 848143169 303269788 607262190 580338005 764260264 704434510 769033977 340132040 357904020 364382773 820248706 289587736 591653261 689655187 774997666 248721271 995589980 227085379 567811691 19218865 652729917 869872179 879166995 478086009 954471356 38414308 119600799 659105175 720158176 40330414 394360990 322731812 888157448 282537286 831095729 467073253 740610700 740703747 932750500 51072026 146352299 430602568 451986884 946348546 956207466 10065805 682099235 258162889 476989506 320035229 585377475 916012015 931428246 550869175 837832586 687617242 965719256 464528240 825872896 595516589 599549255 129538541 396310657 301184544 405325155 182324557 324255869 759367919 779046103 132272533 220005088 120689878 358409817 340179102 374018904 211501726 979954687 742058210 742721088 467685401 808122442 71405825 811954880 301006045 943671872 895769131 920390852 620604271 728484019 725994743 885892331 209327903 373621805 307059709 950858196 185970297 994269727 593879581 596866668 251871468 955018705 653640374 683977369 499505619 698817596 337143059 422057345 59201262 269386916 458594725 644948545 114162975 878393593 289150220 626857327 959445299 962591740 993460402 993501669 71939206 875949713 54870343 794202011 762060997 908334716 605899582 756782433 963261852 971850643 93295160 978040992 858506801 992081202 80586972 760777056 993510655 994094706 402807653 911920888 443982477 995433324 377109632 641172059 114443435 601977512 399900174 438940504 289335045 867388161 151260502 999111054 731785640 836794721 589105178 727292824 10535408 718730695 363429368 964740441 732723592 904521987 574963656 662466647 410832321 921858151 164314195 808758345 426749994 585303329 43926314 989756263 590094841 637758752 990666591 991352465 838438192 913024228 711044287 890217043 148864313 591708604 679188650 766061842 636593848 678354640 286300908 454267668 48393614 897113715 577771835 973398090 844484485 892909734 304049577 647940254 238364569 461066013 222337184 654879490 901906368 939678501 493776984 706758251 665229132 840005416 370116860 734421582 558324795 799495091 856534247 935569262 735987349 969880587 603443020 823654437 221688823 477882246 332096124 814000922 800857540 836948020 622906182 724886758 507892803 976831975 192031388 965602003 927657825 927897917 600278931 994621663 838539911 895980248 444505846 829102126 779762100 985482709 407578985 612125732 130507843 964983767 77210179 309809757 121162136 576542922 140976347 743088831 937563216 995325878 519540533 980576862 17265812 458464201 437878664 933105633 686711920 954767922 669524131 940448602 403606362 535034481 563390848 843013077 783500123 829717301 539625372 704702374 561908419 744651742 586306839 719663070 845904901 847024280 973472456 985947451 831505635 863343341 852110000 961409774 368631260 764011974 736219475 886184145 320813832 785711863 143033535 829808541 224388059 458985465 573091368 660618980 243819250 526972699 958375043 968848577 848976428 916589587 530892027 586384687 602679841 631360464 722487694 813827355 869553985 994119866 209651981 564166075 856419036 932287831 864100929 968103498 428059817 779948245 811955520 951336044 129038921 609331889 477489802 594596578 252783674 299344841 470478667 943161198 199380716 914126221 228691682 818757900 805153875 976979192 374213150 378971510 149177717 533641345 945133418 945427655 613172093 615207354 947475195 963409935 900659124 914512026 99851583 115403308 819447569 944639850 645413592 816616140 107026943 141831705 852326439 984784485 835128516 839607485 986134721 992621726 810279507 870197396 104335021 594505077 474739097 635065210 651190043 856063431 251741970 477189867 122624507 951350214 636383764 787804920 119419618 271276165 411795691 727950261 825665876 885696826 242149721 366264417 441816961 815048253 317360189 462537481 730176099 843111678 818036648 867054790 436715308 711591824 252162597 686958476 3366377 763941042 153712793 760771695 143777555 397296565 444440194 721250482 926155450 961576703 640767690 722499313 685749742 888107639 889053196 898982245 999595347 999955298 661801189 962559158 149349678 348035617 58264304 859555536 366374053 870596369 766658444 809147579 528379929 549899649 116999082 572135554 8242699 149758546 233495207 450441125 986064263 993672260 538099099 882090359 578367171 578540146 623558917 675338505 273191098 700819954 165135264 948500748 450534162 925692236 783611926 912493388 332749733 902426336 226063544 946303102 941186361 998181854 594411301 990930042 238979078 351827468 163619453 897955336 367176100 529277286 340257122 790884893 300660224 847933655 214370025 735471732 902338741 953987183 367957347 751723417 122719614 738195831 584700367 984379106 973166174 988150526 279422024 388668180 638797032 979094076 992738192 999332598 839744039 932752910 983509918 989893799 287219669 625210725 663401157 755664880 854128890 958185437 4367745 302724487 721670937 947279226 409332630 955933884 766448395 859899295 888256547 888403674 776562418 855787956 25611702 619618902 462311361 575460473 853581996 908639950 290756081 971033852 73279666 435697907 945860225 983340519 450393136 904159629 225452036 234071319 826912912 883640633 186090735 861594281 92631563 643892144 925771066 957238850 786215911 917250715 341163369 383590047 524970777 836441651 576726997 601514513 851455221 960593517 114788318 956475084 665562070 775307582 99633006 563973976 644054210 714673860 327763050 405614338 325839006 756256781 941463752 997605261 373137495 817580385 791843027 974616368 191153692 366422775 336590789 785677998 520203361 915342040 279135130 764789852 502111877 625471415 500078617 606816857 620032742 731434431 418679546 969628789 773632109 777656630 625317006 703639789 53025095 621493539 610521627 990574438 685365699 698992774 592812393 990236544 583545957 689934439 192666346 759923447 200733931 669406364 181911692 638692062 496889921 646963922 496636009 938698897 98752040 193622264 433934692 620612892 111874360 872067744 882157167 967068093 698263960 761702394 30622706 38895358 219582029 926947852 642639722 903184767 330440509 567646607 980015673 987153557 127311987 423649694 582573354 800772885 995565591 999327018 856896835 921746069 474116580 494755255 811858575 898385932 502043297 806253533 859593528 937660936 466786079 487068155 824220207 835914200 646865333 962683436 176454568 467167289 928137980 960518665 484987325 719395359 467609410 779509313 206779306 743751243 94162970 240669508 71233515 821386970 434113463 979091956 366424834 609632262 625086944 715360107 375810574 756169304 165725896 746606135 874980797 911435645 912725617 991280153 635892762 967278562 213078215 467346310 764626861 805834095 296119596 605432261 339379797 441003824 33362926 490754884 858533681 953592232 616989749 957871186 958998675 999029156 979444227 987711577 691077293 989719709 164295508 462313821 497663349 978692205 448392279 879605808 834000365 835234766 336889019 494750835 906628583 960410185 280688360 656650799 172725187 314585226 582123539 912473480 263450571 680587901 935318112 970639697 596431088 660420196 213577607 829631709 346635883 604237056 545743675 926158387 552650894 566472875 56185707 992866367 370201877 828235062 190312642 835788308 908330692 932023099 676574848 880190272 979813282 992888690 80730568 606818524 735438428 967623691 564945022 572577113 541756041 863947574 856301679 883569177 736576964 927369195 917128721 977528661 567850879 740270451 725836301 793575684 436413585 517642059 10410144 923328237 370136610 433585279 136748156 204536449 361396075 681104068 530892658 634341485 523647700 928235859 790059174 927827730 796304843 998197935 608887519 660529198 813525190 942213032 200072824 239283032 624630842 803209863 849990855 851183595 697660865 772596035 5001814 459096979 777556729 966701199 747985888 829487009 358615074 682604990 787416862 891921997 522256710 722603895 289687719 322231575 867801065 906459918 803362746 891633637 239677609 626094921 856633401 888062670 363884625 821673300 918648936 983233518 417945590 572926767 776805910 878138022 858059116 889189764 543618788 701652821 417448217 977645917 751252045 834067819 748848949 920830290 417648738 550636160 297170392 408778467 657055062 691595319 843176843 961860216 121777246 202731423 218828536 882770596 724478258 928088465 398189458 880202938 844206595 892826230 839195868 991355448 38084484 648598307 858944185 939401140 836242871 992875009 684342710 952007181 770407143 916991230 215729 364110570 417815045 497084445 330600091 794904635 315406071 673215556 350919452 811844110 926974742 995549943 444035323 465991648 788711401 940875611 137132340 881186415 699917296 775138412 903050639 961641702 312532048 759612119 755724377 980294081 685261565 855722425 24356644 670149333 459553884 798391937 433380059 661634203 339710104 408670055 699943401 712473812 484219698 885621925 263763754 907254401 386665193 636244295 49131054 303566303 625744479 944795719 525114439 666995668 718913074 930058602 990446640 990548366 968730285 982187476 435626681 793787865 729346886 915438153 38613966 209079454 782072950 883859212 673273029 743874209 520517126 599426080 286438821 610246318 132464013 564650236 114640083 264960781 419576606 711867945 904465788 931551495 98126788 839981730 485296629 895364146 847062068 917409179 646937864 938482343 209582862 966836285 805953473 988296210 947984393 972561468 745227812 766152377 62038000 182492836 158922864 475937698 853060248 870987986 357548022 702564627 821578846 901134642 32088115 731875598 481668209 952128418 766713620 798050397 456539095 510424269 500589111 955966457 558675046 738587826 589664948 721420738 783400640 926489595 465296355 865121450 33208341 702709459 994787571 995218845 971891009 995640785 67107285 654261637 874321297 979695428 198113413 544278597 724946282 994609978 306187349 971076206 239899189 889763100 956821547 998987345 810594048 898111412 273044542 676767007 439131105 654753572 476963115 809468532 502601384 564251040 134755153 223593818 583678747 756711801 916937414 922562100 628913224 778432061 444068915 727076382 237500088 334311381 880623642 975235093 725259843 900700146 901316639 991643967 830421661 837427164 690006860 952904970 58426897 855967665 23551765 729629955 50959602 683445554 313724195 369245987 837241941 966647478 163128652 436335664 201353832 716549449 68970857 917933900 305777085 977096885 608678312 901559456 426058130 604872450 598099333 899345406 687763610 885470742 406777485 760598310 474972020 475905218 633288957 644545624 328343849 582170962 110538947 649586123 375049563 870368594 797611136 887898674 561411906 791322368 186569863 394655040 656602842 760218247 220886053 403870574 958295643 983724958 353663892 707487240 487729449 522422381 166161263 615193747 823707155 971477041 279421976 752777282 296946008 551941828 866097126 954692711 971268557 976857461 165497511 255292747 422804241 429028067 672488166 864638571 977646557 985638760 115321546 475648785 373921398 521411110 979318887 983535515 264428023 874920023 752439279 900383220 435635936 703513352 897955755 947453472 778564568 934965489 532923627 567633020 622900686 885955614 668670194 849810276 473747998 622125051 598115335 966295537 386358423 885183793 421558246 680624956 47349142 482072301 65265989 259647373 543036231 758686112 739496924 755007227 721467811 841034187 140053830 389424899 437226033 438942577 59731518 319500472 826761445 904319249 989906930 993985088 36049285 871194655 539023205 933862309 953898606 971089274 991390011 994301836 646032000 715819789 702247195 899759368 340955840 742376777 681776987 881567872 565780842 634077264 234988587 575416196 446190094 813781680 539702102 902950137 889655764 923206749 735906266 758710894 19882984 758017516 862200412 994942844 947601216 983804060 402327418 626463877 396510466 695574573 672767280 823078622 499855064 929805805 502305146 660951621 571729942 826190749 837180480 994981757 384162891 464298340 944618006 948664063 79680889 724966552 94997468 645905027 615345033 905547490 366023461 423646100 846226657 999000857 547699726 587970104 614522838 690450960 774119543 853161845 505034061 515755991 784556818 968785252 566791654 952593094 153629329 451031962 409070874 550601711 239835169 462422765 145207150 714423029 703593807 761118895 588751851 622622828 254933747 742262068 599894899 655978170 733038265 944959799 759501741 782594030 761667065 919786940 555160235 617686882 779178302 943575777 418740947 900572403 519315242 865262484 661433168 786038102 637501887 964531478 550732668 711326578 419540632 870313245 725991658 857656405 800953041 880267010 956779271 994159906 9418131 370503568 596886628 662278418 201950091 398195083 508413298 927780154 247060919 907957424 570057294 577759437 332851016 477247828 802335983 843983469 825951537 961736422 745178140 856157159 738933248 743858287 482066251 548581502 255501888 654710346 227463431 988467916 515025778 673954540 692789822 736290504 746657334 928106837 523446917 581002654 761884054 901870603 177578276 919046555 165168805 351387024 298457659 870607440 252797266 923397888 899192261 943496952 24319847 841600123 659896858 976643790 125771594 589469157 578198406 848840584 211643433 847901235 608865948 965205330 346334800 927867592 462068688 957183269 331140477 924293263 989351307 989383577 294257325 682677570 558340986 871396837 470390765 703401075 360550612 540578839 269788875 775492621 619013345 837425849 123783773 700913602 608815335 688159315 977121965 995678974 88168093 986910820 426184063 658334760 927282986 981746137 83789299 665880337 471594958 788480944 945065391 975182215 812145450 866800793 109031971 506098238 405655463 538702204 88555025 940418465 858395828 994353189 718377746 719555580 239513510 620337288 355235634 434603505 966420809 975316040 414936190 495333486 178107449 205833093 74181907 330535194 954322562 996200386 695196593 732029793 837763800 981514782 266183946 755151799 61978504 932467565 520876159 655413127 359693583 592479407 19615982 365881433 732124737 776822976 126319386 976564017 394154065 881737672 445554966 563572111 600523327 706627328 294317091 801549033 193316790 961364698 807973567 848142991 493802532 899640021 242340418 988719610 623505539 912430310 529565045 958036305 807120427 968021938 67616851 574083460 504227576 820072061 650350887 723765343 470815482 975508263 536006139 997772151 857003275 949732464 316689816 916966933 643449388 645652692 135859212 312777724 294132441 918913335 511021268 873976351 145005755 675915034 992255277 995630429 783893826 803196911 814017570 933338486 610646147 623623869 505280394 979928217 80257524 619604877 493524585 626919515 31199177 153428672 421018110 471949465 594787568 944974003 281371565 354843075 768801809 893776271 544532746 767964178 263672981 901528373 422943042 641134213 291395484 295993425 28126987 613158260 238682724 549125459 668627400 875288066 373890691 817372802 52322271 697352427 935086042 938259197 316668251 393585447 743484246 964155089 386582355 982903665 164977063 309313109 877714975 950080081 250014443 865893417 736379153 758441840 227540063 472441268 969000366 978365434 320027770 894229060 620558119 657569886 762195168 766342016 262348227 824311672 231903361 337125580 410731733 587227067 863798870 941359685 545174631 625265448 683891578 736449552 503705278 880077086 216160516 866291040 567880051 940488566 120379008 209078562 112301080 408545370 251396546 880835215 852461730 950007930 634655702 956958575 26277697 386875156 817598812 938306314 277471410 948671059 46919354 951805545 552478174 779648961 744868440 794970086 331714972 519008838 84141598 982345946 626180850 860530994 349562093 421068926 549162500 601780697 752540063 999920090 157148583 695093503 575469483 658945338 884867874 964644450 109901131 784211559 107115560 939233376 972937352 988920531 26716880 631300456 546234862 588405391 628285750 852605924 387103658 865710005 898840564 999777027 739705432 919811921 276447906 610651191 368888370 925144448 835964857 983418811 115948294 665802648 274869103 499990819 281864223 609934305 516897424 945187947 485843687 760969706 48278396 729794462 615877654 987680794 548813396 986254640 749683796 838231441 590498402 845845319 416133542 652138310 350801667 885214388 923316309 932915413 267527486 887381980 864006141 887428501 172982717 563487019 630979704 914504727 744895595 754094014 365026914 774520067 123649144 419624392 714449513 806996841 203162169 600812762 467940994 622100261 476869002 848706916 52641870 581176933 272285149 317422562 937944525 976378288 920820136 954351516 245762860 475214002 208759187 431621013 111306516 846485048 807544663 920581380 402098392 785803903 587002744 981258823 232292652 636180861 56048175 462294713 95663956 532694763 293214068 739780085 215102307 937816353 557862325 577175690 798874891 878367622 65469442 534645791 923343015 927351003 829198119 837943160 188328149 614800186 795961566 996040616 135385133 574236421 634367090 911099865 396581740 868610434 808198596 858966676 222806939 905691630 306412849 834700074 797540162 817127463 265977626 628882253 186935286 459000127 1510055 241472543 535876640 696430699 326893690 501503642 188867676 607673399 452028958 527303670 237137499 835366262 323490700 741319826 54118981 963336067 523380383 539345579 83335177 912512738 637207395 688924916 613988331 790222770 208888369 380171940 228901172 808654311 143565734 375045111 349493475 366971827 222708138 471290940 969940540 973774702 963637463 982634232 251088138 410589007 476826152 947432348 338593029 981048838 950721245 960702013 21227915 403454722 177078352 359787103 475983257 796803252 977233768 983206168 772656372 807460762 93259427 690093161 721987344 774626138 257362058 759119525 650019774 872059250 42351631 284812702 903756332 971203153 234231481 461946100 826868916 924030082 112679183 196683159 880552218 908634496 181003471 461757462 39658432 250532704 120835808 342211316 90558896 475730405 77193982 251065440 270997163 367313747 713802309 726958903 743881828 838995120 29586369 629909945 495052133 915779677 196556322 488207950 760995203 865779425 92902005 505129509 855497264 977866408 677450781 752369927 677727653 693247620 352562298 900472353 170277556 908463843 921960012 940041698 355843391 607169561 429612348 561660306 790568445 855383831 557148946 798267056 250269685 302697810 513980931 524563102 224052009 584956619 722412693 927064030 922690046 978979257 714340878 876789714 815814849 915748591 908228338 935205260 811081576 887391815 640497569 943414438 290261881 909813719 922015015 925506108 934818658 999973532 497137900 904847072 151573232 720437758 659186980 688403436 725864517 759728074 41332592 306677160 52235120 856625824 281458492 790714088 250814066 830764564 640510671 999475439 114870772 941807646 962746969 982555745 146862353 727272659 912471747 975466567 651518094 737844312 464573788 579407077 182766731 944504483 322741463 612913497 854558772 887915432 297308670 540882977 740975298 762810330 719487059 780467051 193370120 961620913 949893159 972099959 540532386 856968030 7898542 239799308 708423821 861115101 238951650 342589468 324662504 638669509 186341091 453849299 815954334 898173322 602601653 972338862 984433119 985052503 851205295 869617113 860671185 921925436 105418555 656505959 26564580 600603289 15064545 424838508 974906782 979962450 704431774 987657495 68650301 209354170 400605362 983598628 947372447 994265534 926722418 966021844 481225453 812947196 675000955 777966944 302963331 522531254 417648577 693434330 653095720 982139965 681698737 890744891 393799026 931158750 680509555 873202760 592200088 780214862 814212303 867109769 643742582 715186739 642978335 958979290 302301304 606466961 935319718 958428861 29636686 708503750 400510817 521265584 79766570 699632182 855989564 997884018 280461475 844063201 520510226 863716463 207645139 420250593 909592633 933580973 380940535 906031049 255282870 892086235 316358889 673378079 161797058 447245822 735735157 951869106 433567192 945690907 505227618 533284347 285079493 636950300 969052936 970909458 298834514 374288018 410677464 834093337 55818446 633672909 242021424 956339668 751121 65351953 489069094 669115313 252593574 788676095 409892047 583019047 310889929 879307859 669269074 975563148 422273273 859672231 512415314 753778617 257708126 318588156 59269443 635033214 108172668 991766044 596840587 980851536 717896748 825958210 226541315 265431855 761543389 910758968 939274890 951205318 684767536 825152586 891028093 976484610 994756607 998703636 891826409 923229575 104532618 327760272 590833268 955574955 607959477 854132676 320540465 515286218 750659564 873776927 237762158 334908348 957203284 988983017 206779136 469414289 822226689 958062267 724184938 979724238 623901940 939265998 639837350 841931437 206563917 821116157 646800161 842671800 631216046 881035580 835431176 855464917 510339635 958292458 333917500 722665482 124949278 618889938 957821033 995441263 989953109 995003064 357875150 697801145 748435974 928509701 430941452 818459975 230033636 953350477 452178286 563334828 77607305 917922011 470375179 852104469 84700342 375032094 744111066 847962797 143071702 492643015 667355004 718262811 5164018 396782062 522050357 807325028 440403174 679509088 391502188 865816161 644626849 681014480 751766647 986384817 958208214 985354678 306486496 891281437 914981846 989855176 712948351 856321839 125007558 708663296 671763683 913417019 508996173 727272123 915837447 959023248 865727942 981029723 974807215 984184056 732010546 884120684 304700273 941967689 122082444 602788558 213251806 366660974 2426466 238549191 321152355 962484473 612862236 993652287 132482773 753933760 513896701 741270888 449506155 733127624 301941552 430407737 981231939 990746551 240586782 628992973 503442221 670514738 779217486 942744578 10686683 274355058 472480468 699830410 855136684 960757676 368348977 688665188 802521386 926794088 278931268 867839413 303580808 901806364 653340861 698194309 652678729 945059630 138691161 459281015 188927238 461005323 57170320 563038004 572300106 905121846 299599661 800442366 598632266 646669340 498958861 605640599 809685382 904485350 784984244 899223270 581127862 588934478 258122515 692765311 896481578 989146932 556508426 907128516 115804569 622941158 935106687 964847590 537089792 737250684 752038773 853217617 55366913 797334405 380940606 584157330 482712782 567994161 796559795 914404298 312155770 596436313 133209852 728560158 615073403 648864812 75316620 895896380 505635682 628828025 469902503 478531822 951773807 972736121 991533810 994692511 672183532 958810851 553874540 824303092 871078970 879732791 411632983 445876039 362051994 422506765 657252461 945714694 372753151 576398892 934447055 946265155 94239954 549676555 975918243 989548039 228451219 802962642 974232169 986905907 592403023 826114060 468887557 957309392 886154831 988674066 120084853 546134453 650769747 983659715 348166686 710653320 344270294 643141699 181270509 930593054 931904671 962955955 988023248 988808896 282236027 948891192 390273035 925924451 303281345 620816234 101299252 757178923 632048915 900800433 781024940 835691998 826708437 854627899 273885696 576405613 117366460 463420206 776340233 985997861 549942179 777811156 430913352 680950038 174457072 805557837 589214364 602242468 6303074 621480095 965402230 978941755 896152987 900772494 745919201 929683769 806260196 922517120 574629713 708973175 52623436 370419893 441353053 676226054 758955357 897071882 789120382 940400631 205808378 478455899 152187637 657885703 279295906 782029913 381914228 437896919 993515246 997677830 902322384 952249054 738363248 941260955 424222526 573313241 296512008 653875796 252933579 767041664 195241600 258027379 532084588 730379665 555751948 877402775 966561675 977536599 926549718 942169039 743884547 914608537 537764892 654105719 447608485 965070662 413282391 486779384 410432243 653662299 975071996 977115812 32931114 856799027 929670719 956665508 391586667 494418818 435282923 635477557 779230949 943049416 93001525 819254593 536698529 879776871 100032092 854073780 397822485 985772232 756417902 854548908 537358072 878494939 512936344 669827417 755014631 944293081 803103118 817234040 886826835 908204468 463676420 930044431 586458419 665407138 859494064 979841937 505504590 950993529 662250931 834982132 386224665 988241928 543024515 715613103 611134284 629044434 202748618 464882989 567781684 747911057 756692750 818248090 791332588 888440336 159287431 450787738 767040882 839661334 924522817 974025095 37845945 363651005 532157322 903218787 916581731 944976892 76393234 869046581 239667821 682002382 194264548 421758145 185275655 204329751 607320975 708555106 999153189 999185441 173180712 982451208 515995662 613325985 667993769 966947924 839714919 846957734 456221823 866069451 529832239 902034833 604075749 981421526 268069676 851226045 935140962 983990635 53232724 844225277 272513975 934208673 184884500 355574397 53707464 626599303 440817856 718431430 317893754 793645061 469326900 651881005 3633046 124750621 969093377 989777035 158852636 594329801 233908727 989819486 897254774 911561383 485215525 765459017 235810543 612534066 11252181 436542649 227208546 727654887 200693708 870917107 82234346 332601796 895647739 940048031 636159042 788976496 669212064 827774026 798055738 942613351 561524213 669117233 925292197 943341125 506530406 839349726 205370777 394043753 951888694 972103799 129203752 951789983 991848652 993935703 299775305 790469223 945948965 987207660 157609298 481671081 241989501 742214873 423662432 959142395 538671336 616472079 477067347 985309702 287158070 647576787 954777395 964146606 605587555 968374026 391031312 516690706 866118981 930540149 36607320 869168895 108488740 754687467 877791793 880340054 601281502 770858860 973173222 995055674 998143310 999352528 786196332 923475707 902141725 927352488 287948116 633959956 359277222 926400085 503045705 741258937 683361444 847228392 900374326 996479486 542758425 874109861 699025793 721023982 501899748 572027920 906418148 940251938 933440120 995867829 54570633 363409281 602105093 983234576 591733536 762953424 373428160 910701929 948086815 987697332 74674627 726803721 438012591 506158230 783316293 980726760 714080731 750900331 226995188 710215708 877101026 878520007 295150272 859470872 249811450 554364843 830414026 899648927 795884016 960210586 86333142 508080029 752044289 867272684 493711306 526404947 844833021 886870828 902079786 948278496 618570082 827989205 57336437 418662117 126253380 961632338 615588717 890410861 620739787 636638137 906975507 979821184 33732455 925675498 544063605 611522801 220520735 271728683 630230864 953283658 287315925 914006282 393470587 483770832 902381828 918995061 122946383 865819222 487465129 576818597 305731721 712856623 89689382 445055146 984202585 988270513 550340129 783368500 188112699 345771771 439969852 838583266 637427507 717399597 543007458 717027689 357402869 379482750 758701871 763829260 371393443 475158497 42878969 522284019 80247725 200592814 177507446 660624045 835422979 983174637 799322192 947005316 153849106 362254321 374643570 620040472 69895445 373077918 137809272 640272783 49296731 817867071 152685137 570688771 926373276 959290495 234454366 441350994 693728729 770388548 574510448 945719652 993393525 995147408 546788679 614792225 440418355 586558618 410476321 977139382 688982437 781353310 177862306 841746376 845198912 920859421 377940311 999915843 100373587 607472255 27349575 42023823 74350418 916092881 757349579 890080054 623465320 719210566 614014208 870845367 767306055 948165429 357424882 997761272 269806810 600834076 282264745 720909265 779860559 988548634 278247251 882985318 278610798 828440844 853010133 983491027 329999624 364771930 235518889 737310419 903028365 976532729 981732108 982681011 130476332 351183008 402302178 493765064 290040493 436828158 103444537 939450752 395607131 420697793 80255278 516646231 334526573 592504026 333359359 514933213 755070399 787985404 317375551 668804702 480921738 933616250 463312680 639938890 146326683 467089951 416706036 926200660 470785112 995027342 860057872 976280059 287095603 532581491 412271011 591062027 387688783 900121097 455070380 675320295 899225279 944626888 650246233 681784257 912813221 976503055 914979208 925583380 939202756 953117194 537142114 768667877 100380845 748861305 672681775 883463631 539798484 935213595 841373730 923041411 55117643 373612029 202855519 644791814 329138216 635868246 669478258 832498030 871068133 991304579 593931021 880194806 764428864 950300530 518526552 588714620 68128986 142832616 544944418 630397197 576295212 581948474 282362571 643825777 531320194 968152834 611318506 942525039 50487768 734320263 611758315 885018096 382596183 845615844 713904659 877439806 318697147 572020456 647328022 737222878 731711566 942361676 562164220 973593345 157767690 271248592 353706239 954805912 84537602 238716927 858487261 927504436 465261631 697870145 6467479 450150097 826611762 979037157 626488289 804277038 56427422 295900874 784625365 863260161 374442060 446804883 173950965 540230869 763790113 825323922 173423675 855304450 920051493 986399532 653412882 909135958 506553911 585105072 447719414 987830353 234639683 550016698 686753130 857122146 597180614 703964805 714269127 746107357 854037964 862821774 44953963 950253049 372615654 615475769 380931367 895922091 405286085 832777865 344011329 813426457 580587037 598159632 943965567 984863521 547028350 896093003 1641671 166145079 514466971 557036319 424544595 924293739 540286417 933224650 443725754 734801308 240405180 493096576 952356872 977951005 414169607 588632942 343931741 451475501 504489692 626314660 914102730 949854509 698648328 865008596 301554842 328690891 359881744 905305592 243034071 928752659 275570218 844252784 534240501 815482908 4247811 35765031 74965622 305340781 714033284 732617558 274647269 320719637 13675968 718821298 856097129 881695209 130480822 797972848 576940006 689110513 442640331 744440881 30493326 946854278 963980139 964665112 357623990 710943534 499408641 935683391 215282950 462020581 444158738 661839070 601403574 814421658 930725413 938356264 238449903 497553127 772256214 935371120 541615356 682236616 602343664 633251100 453856824 549443161 377895087 652071091 280473199 787637362 374515086 511257649 689796208 830033394 779503242 841445768 826264245 955503817 735560975 880944920 89770504 178667291 826898748 940967464 501079820 807980953 400622453 747034027 384236700 762853117 339069337 614390613 518129115 830303958 4967544 356754707 327237445 456681027 133637107 222397907 880441833 945160572 620964239 972153337 754613144 972737264 181594963 515561068 215001315 420445243 530437695 779069458 934932222 956272484 544759037 820327176 307102160 611112207 847616210 887991913 437438942 863302432 392580828 591864790 983135073 990437813 648689416 766801071 924287215 969026185 731504001 819046174 388827596 504022149 609183517 951695964 320403840 919184160 251411590 910860817 373233118 460663106 327790732 418912621 461941155 798272557 298121920 680636618 563238579 767435194 838029973 950871020 427153318 758389455 335170614 354917813 123688663 635134905 996837120 997155576 282806952 479361440 213768259 405813460 61985733 381776673 780308423 838953463 508593544 674459509 987172478 999064783 261720041 750835678 296352790 762963422 931348648 959810415 708246729 762386775 32088892 296958032 593279245 618429129 78713087 619513118 667891186 904628461 232484634 481104586 271698722 348094445 816273239 921432929 20574142 629238734 65176751 673730680 121588985 954487595 518786602 638285993 924348624 944785597 657844778 886282747 777790787 866465633 198359909 929777813 82436338 276849977 160957491 882759024 359886314 367101819 784289619 997710275 939311759 946649007 804350445 876735339 756089506 791922357 421699818 507623314 159465183 866063905 874881449 883380250 291232227 318159679 55834919 298122989 776946278 812593947 626393453 637174936 949230674 983579212 716150158 922171185 262468666 634139957 973155733 996834307 477597902 915888198 16597256 694599783 11312953 749652448 446366786 971571176 576843413 750432599 970462077 983669658 760236253 969839399 598806896 722199080 652637866 657621498 472559814 933243503 238719105 485262708 147312808 320254400 190691932 595609824 324269019 734443227 237047592 819900963 610408710 878955810 523028109 625105471 884115812 918726183 962472567 964351012 504791984 884655764 700065170 947768280 340626208 356736402 780650934 923741055 551111564 727723548 724565141 878235923 922799025 983507032 673260595 954287967 799053219 970199107 759901626 923737558 155685083 292551584 726511464 769953191 617557617 855391381 562287437 962262510 837325710 984940828 612712827 995268798 33997090 166334009 731955579 983646135 141026361 953416138 430014736 724614717 479421578 777823265 518845951 659172319 77607420 263315854 258665574 741169142 709123280 768049912 420550366 872879668 137577391 717440844 906173074 960310578 490954804 804121814 889192340 950715053 707652683 868691549 353554057 534148381 244231272 781028030 59142921 566010019 163798486 731008176 267654295 609186033 353648584 444209774 610801575 888565411 350241601 461200499 531138946 722927610 727629296 836321642 27188003 673097654 868132176 996172817 643311310 954735967 792786152 854285207 865392804 922550269 674718681 793938982 376229715 763246836 494321607 998391040 127042571 927677350 173430021 385917408 776847288 789691281 931536012 952166179 54856827 398191716 481325767 816592050 315705507 376178466 681003389 805649028 717145457 808412744 187340539 580528660 280903590 397957138 497106634 925035604 258473387 678815539 488006397 957136784 146121150 313692469 613494860 853898374 777954346 897078101 856100835 856116514 147408227 414536920 981216442 992659142 698524121 975181826 179524591 248083221 917321604 980701573 508412213 942662759 490814199 953436466 243621129 903174117 255233704 333805552 847576169 912694700 754723722 963564197 768239416 927553438 790013495 939610761 998235891 999376095 518660606 621117907 341397701 658554118 338184858 647801274 169168368 695704430 170083508 393028923 631275349 643176220 116071652 282438229 451257536 935935716 751029122 793019237 414318947 776317302 783640104 804936944 894979892 998196483 304133689 589494199 164787532 203134770 42705662 358185314 772892240 884539784 900792423 988047289 595548955 799043585 920690365 945754843 706933842 841534804 432028124 628157662 314265954 556257520 776571271 885304990 744819279 998622305 589493997 598708111 990060455 994889052 602661281 879653907 301852502 419498998 903703266 976495346 758666614 850725512 473419131 772095767 933316362 986016219 609665321 986861341 418521510 950619436 880681530 919408985 511564139 914278968 806047953 937458523 953094041 992123694 494123578 535789928 532036204 655586905 137284658 769902844 587402723 706814435 619401267 844862679 283173324 409532612 842716873 912105611 249354783 815123244 355829921 779344572 974844894 979843140 348939609 989457974 665706006 666459352 795463618 976795217 37985280 593089059 948378388 976279485 958527447 990965776 810797423 879616428 155700862 618110995 933458642 974067185 528156465 925740342 564456332 920607398 897822420 991404123 782230998 784622624 552345791 708502150 709988207 943955824 617854319 777564029 603534511 657269184 976389772 980511366 904833843 991738034 22944913 224119092 119528170 438676887 105889307 798849772 545014595 589767978 866213992 871378378 505373372 931482106 704164122 730689427 233513535 299943904 645222263 719921326 45637356 609872723 703343044 900468714 451123711 591226139 318984936 934964832 540343788 978120170 148944454 298495540 99762272 389148400 797045697 972134233 69485025 667472283 553429664 684724130 899477061 938763584 57839697 313377468 103859991 520561788 380639100 517462942 461499976 555243865 481871676 669152771 813404804 896859417 588807883 672582080 4433466 745067939 226400572 242084010 87828705 156895407 641052462 827518946 867203070 978598997 409825417 869003430 882325038 956269388 18480651 702456300 279780549 416338238 519667842 899730143 408131219 579170788 757213283 898374180 180460602 872479709 718043617 999452095 241971269 469032421 701359470 795388153 896300882 981719324 55504859 644094915 343134316 590292467 183037286 767772500 114203662 510266878 635608539 841474351 47383462 133992836 539871897 588698332 147876408 725512472 274432657 985171132 102486745 287858316 398520454 463421020 396728524 718309639 71982480 747812304 92054643 988961478 810056532 819344517 812805302 915293623 276150165 917220777 303829429 784804975 347157956 789007656 478805847 679227512 940807323 970410571 559216152 939787821 890549110 992715831 360518740 511010192 15106229 197576714 245260582 536031395 137600134 734952105 350627462 575523713 176295570 210216640 937929276 963244948 339224047 688010728 487907794 499561746 207670569 576733613 830699640 995031569 566469237 980176687 760439356 843116292 128766580 352161943 178818989 557756082 296817709 431321760 516285253 813196660 357587655 808098189 765389561 903169601 53832553 874923861 830952311 905640822 622697240 640607999 708060059 826506516 974066898 982756269 321695211 931769393 419335051 473789369 705120977 993016154 54583588 641271292 494139637 606519236 952979031 997203042 803702454 905491747 656718294 674512055 188720566 403955755 806140429 810435518 230566712 734471374 505462552 684115751 265151401 963817968 36075717 777349890 124658064 331708927 491523470 977498759 63016068 899955692 277818899 960630308 49330337 73599601 556540491 832963309 730786582 884889542 745209604 756595981 175234952 632134480 719827983 913986489 213843512 514371575 161642552 240558283 262709565 839592621 283585621 969088830 28085434 216810229 539679204 905832575 340753754 802276926 6188086 649207373 946740527 950689106 915432633 944033342 119704156 547394324 439535900 456623767 187760993 911195458 887135943 980739260 810998265 966582938 172635030 579614655 70645913 969665215 773348533 826839115 560276283 939619709 698188498 744882023 790056138 827725220 438916315 630157738 569679966 880927572 331122269 710323936 152185951 902784373 305057326 642649506 619448496 946837560 304112463 786976910 260263018 354911161 38149598 437051671 162331309 393827549 290331875 843621520 236665194 844306702 317350803 325358223 855896611 983016655 760107950 972216218 739329380 830518688 529162159 877248206 419043620 959089695 143352516 697778662 933270896 979544531 324280923 888134761 188635939 982459497 536924725 692935002 617329297 876441527 86169913 483000675 534722651 809557022 146815660 655501894 897178476 968151846 183240407 918568900 776042923 970347143 776190256 891471335 969441289 993349321 915504584 979393606 55765174 819332195 961919928 963150956 218773739 721601715 24048089 902759921 245639008 798816002 647972038 857512449 122117709 360548635 222939971 525651579 734790840 836868361 561425159 752031988 394165650 567116613 104429652 616711908 606096904 935018667 818161808 978710415 208430344 581206623 336587106 642504484 689854755 781420261 669835924 834316279 766031561 776170552 834209848 892906501 300697164 699775830 880592059 912755409 813720510 978150418 146017684 388928422 864787244 868564449 179573658 313481986 153641389 790345483 136170887 252984352 361208856 693325030 539700459 871351717 317922205 476676299 168242956 227146854 824310606 837455765 407982744 856191360 257401082 542749042 812786214 948776381 645993718 887023997 685323083 873819529 557333035 587677421 313750100 642520542 457471887 682893964 952540658 998657943 480192615 865027580 774605788 810438035 609428542 993390986 957301883 961263030 261392153 630785262 881598258 991494899 966133690 971657454 259544436 589930138 825014563 907985030 132506799 170572274 904365175 991498239 449564456 710053001 19627163 99638760 843106901 997748273 59310172 321974455 60394966 160504630 355056001 474823811 825706191 960711643 280424113 851699196 834386561 866712433 93842365 875079997 967954710 978699117 136393125 591558654 903139605 960951180 824240651 829421121 779233966 970210098 546147419 956399501 404244157 417314877 491111598 663452926 421374948 962844443 254319964 859249137 14860291 603593863 943448457 978698065 229612451 748301062 49734789 863853888 766696211 954596999 674345169 935326712 783886512 990537481 555339790 608093438 689552540 900560389 755421946 798801125 452090125 512955740 877741017 935571104 594846244 810835405 586879340 713210290 117082242 396868444 293906237 536979691 141688325 818767850 253417173 941639989 473132268 900188531 430616194 791574380 259868989 418906088 730138839 803279060 765884808 881367793 918445720 933237330 18976635 402812461 302724183 833091839 784767183 785548947 293321793 714051236 760087315 923352162 776829680 809241241 134104145 805744652 443944174 523768308 699230263 880190617 600498975 963123390 767435155 859640263 464257583 796712224 656381041 826844551 605342536 836248062 440576683 987982919 365698094 824464142 800397495 889705758 821336241 992940414 825600963 897496919 411513652 972696320 755224104 974671075 561141011 760601344 32946174 859160431 628024522 908305744 156951486 692504889 174201453 202394296 533298527 988461716 871548175 876734458 822373621 943434242 672461970 979483287 836968620 916929851 599818011 745168866 249567259 370042038 988428610 995619889 251079537 856621428 156929094 947032585 656254147 744421590 111069084 839090825 188213578 742184905 861742775 903372994 231396859 664120740 826755189 941833332 344767875 759218974 675820695 831801360 552955330 840823834 766634022 772441815 110454778 750242812 455808133 579842006 306128064 964767340 81663910 700980548 631504094 685988908 175026517 806323973 181847519 828337091 475537122 885985951 557997954 654358567 393310499 744943890 189880781 678172463 255338557 717890214 412042123 427481499 156912972 512059600 930116040 952129712 375049083 900519159 737916369 919391284 65327285 205202840 135321270 707263007 708830108 798469773 861254528 959144612 452126783 751365513 790626043 912634071 257103058 794429513 625778319 677069715 382148011 503380253 263992701 741257219 322263197 438917959 249854958 339184530 658121576 689816705 381252610 692043960 346425246 509818283 255606704 727253718 647529679 690156074 58031779 344310629 591612033 666043715 15502526 490241611 637014449 728922706 526371381 871966059 772679629 972231513 265217745 701363442 732205388 811326507 496037097 509326584 302447964 716225630 642520833 653141710 621720358 749296546 935442541 964906538 950458353 956932554 462110506 600261058 50755497 864351175 342557830 373568718 839183171 984491243 263098877 970808517 690680779 775098075 829156939 879241674 467958830 842546064 921793497 990191467 120717252 422092732 357840052 828651396 548576606 592335817 40288977 595472144 470583464 596562626 358248378 762286848 72651841 871640128 141959015 411684826 752551482 816948632 18539937 917922095 887660360 904072453 707289677 783675555 725624724 967934644 111574525 381813923 714130812 790186118 991655680 998424834 812346582 999170387 956253057 957777042 780608966 891678134 355545802 362992492 101849828 238984379 523156845 856948378 340290702 576927469 176515763 371001940 192577651 854055620 836053200 880321627 446213664 730233711 255935717 766883309 288250728 543839202 623494581 701308107 762130434 824775463 200138042 935174845 668238796 889491430 696079231 729185834 491567007 924188991 338972857 343671774 922563844 971040135 967457073 985285540 21982686 694058040 464745560 949864742 41787575 616301322 196740024 789153575 120869396 176381782 779924488 980437524 943415004 978208723 762246717 872621460 544404388 674360049 735128207 793231002 553969033 766981321 959433219 961295128 940080192 997471944 41063485 822839900 28605285 667480532 679525172 948397620 718598695 909333390 903324431 951251987 260720809 334650157 571079874 662365689 767917705 816235282 946321203 953249452 873353815 942556959 295376234 383229018 700512823 929041115 186065588 557379624 65051903 409282518 40390703 102400344 540812017 901023034 62055661 286934900 277850801 819860555 708909841 965751678 704542047 782177807 302892217 964214085 314285104 747982631 513428073 688182792 545560311 568816692 707839827 771323734 427625571 996508633 823865661 888715954 808530349 947322582 490135695 673070779 840774469 915880220 282049744 470624322 507989353 947672979 87582722 228923841 447195124 711050668 782258664 973930213 620213967 883136117 349331747 693780342 329412368 915763795 944170517 978641098 535197109 750143967 284617282 356396119 289998525 556343986 2184342 783506342 381345193 805407515 588860931 999544403 40450570 473304297 777190234 979133237 938278654 999958899 34928201 722709107 678574079 977981631 262191694 323522614 105121913 495329865 94218676 908808397 42648894 127219672 678216150 986100614 920094566 972188359 148543474 567597208 37577318 930521399 723490376 762275493 83905752 193140732 74735192 118545054 992980724 997550756 12399671 113685056 514774383 836358152 119420134 830074802 572565147 993382898 70878215 374162303 740556432 759556565 801111940 853330931 659161735 908880216 128768135 328472384 616436326 856125063 234889780 363749249 743633246 778270671 445210882 781962341 258898348 461211030 842496325 854773906 758118545 856365199 765132369 927968203 369628259 892606786 817309801 910933580 940415846 972900623 230058069 953025684 679545923 949614242 514745596 877146709 410118868 623476150 4568451 864340865 506205753 554831615 936014716 988148667 272626775 892912436 981383254 991346755 909881359 984706035 880579219 935828562 848158816 913922116 457968145 743285481 18658570 613975809 901965900 916211436 59266309 713687548 786335076 911016649 544072640 607202382 387779112 687979052 361934566 856180711 654897273 981484058 65205885 479656772 878057184 949370251 505522195 970546355 553797849 719104599 492368382 781442623 600210446 999471727 234708769 918051598 391991289 909434306 65331179 378236177 108936123 754906239 283380726 363611513 214360364 484695276 775120806 988491954 864395695 976344273 774422434 881443834 26314415 393909594 685653136 978789268 465446391 494616757 588432414 670684758 810229815 983993510 566255151 642381066 379499068 383673198 782534845 868291954 732606411 762609196 373027843 921141067 777373044 988653385 823746899 830993195 952972741 957958007 162420999 804121708 413633074 501657739 29513835 452908490 12389641 522784184 226992357 755958324 476211258 740401515 287091622 979531611 297870773 702427491 187925422 886934362 63113308 880583668 381966115 851320853 74683082 351539042 594664195 982984547 456033799 568430465 776543878 859460709 399237137 583614860 418528051 467061367 364660612 805288104 856285603 897765850 875862341 975738879 930114976 996215768 267432059 845838183 795175890 804222505 515642049 646323638 345517324 638819826 507326129 907810329 360302622 385635352 883503786 914528369 468564811 890168771 993420274 995247929 674977674 771539715 601281375 699728454 797569367 855363571 693028456 739156063 967922727 999372072 525127404 774523369 494637834 523473506 786379385 951407700 181556285 258870783 866477370 953450760 769971847 915863272 787181184 819943348 693229735 994023322 532237675 540661758 770661676 898436676 586173306 970230488 13286003 435642768 560121394 881174142 365213622 788851972 655002641 725778603 638930836 651364822 445794995 993845589 125666334 408423403 314693787 848802370 995400414 995723849 13522730 822149767 920496357 931405983 950212354 990976847 772365558 785917117 15071067 845030409 319763971 960785713 521784922 663909893 250228373 528945868 301333390 831067941 136863483 234478173 546247466 954326698 779539264 906196479 399587898 495719342 728887548 866019165 522539215 990665132 728731075 875050301 491002789 557259775 721992705 773262969 376901532 725664958 722455972 858074272 768981024 845366362 629743012 782565587 274915139 405391770 901031390 999428323 578897020 986295851 674030606 903731383 122763550 359676094 474296307 712440827 821276892 881638483 464799264 943323507 552578747 683041005 747355837 881492987 417405755 648433950 72503802 479744799 141116044 241330008 750597778 855995397 597241253 639260994 482823008 915811069 225935264 787417322 707661520 722963356 54287626 874289253 283616804 904507718 980197810 996895805 948827433 996052791 88368484 149124510 71078563 178342611 648777339 870041296 284079197 978846345 610554292 905323226 994842476 995728740 666742995 682523953 664862833 815153732 604608817 755475936 587690522 801757428 920979949 977529679 301211952 848765665 371237650 799401148 662886315 665708841 599661942 997407558 109315786 383275690 75323201 924037404 457846651 823760745 78954003 400710932 824335878 908679873 260046888 802877697 99910530 982695505 282053466 698874715 364692178 433874250 722339953 789045768 659124990 940673790 736369097 958354815 264925305 341476395 119776653 202684304 62294677 417008937 225731321 874080985 434636364 792366410 402773199 889157742 200000341 514673347 334909777 504389275 327503331 823972635 22000501 518903467 815752027 915642925 617599383 830634051 206953599 850603875 356150420 947503338 31835966 90505687 173876732 339427535 452849969 956873400 830919422 877400022 17867380 467077352 164095724 808545660 580838436 776757879 401068597 560391637 274738979 297632255 223227609 927423603 874973397 915411663 385046564 796390170 932718153 978175176 425483231 503766868 994399316 997639474 60601294 306345332 106230024 887056997 753171351 916824042 693899513 865819262 661900202 856051624 731341841 864352698 711923445 773674392 830934663 835948650 434056274 553534384 617836398 853920608 593748437 937878462 256117277 287164020 294189769 353354374 108789773 490184799 401861478 442097312 241996010 249733991 827440582 835671330 976055208 994860673 105928875 764490027 79495441 842506576 858713735 964419991 568719892 836649111 621123970 819253856 266172303 475485431 485621909 634471240 891657901 985993457 780347586 998063263 307494458 769985438 250495453 409366182 453504221 766385261 810741017 955150967 548493064 872453517 92969798 860649068 434139500 624000459 236819309 689454393 454088706 549892209 337633481 408089724 478965200 848279784 361860865 722830096 138086069 274610320 769124930 944408632 887586584 921520580 204948964 921454228 933144789 975522889 703353063 812489482 506771560 940444235 676220492 763534070 510464714 587542413 143401928 863572531 111512018 409757172 683853335 890520120 811011167 929673734 358581901 372436741 606294622 611535455 970313274 979636437 897162534 966389261 425942202 827220220 967259890 968221649 70360318 468290607 156231582 648463009 567775651 884215311 911497646 938685652 763052265 879161393 763556370 959581967 725583184 844486907 133033163 394398700 172840186 861961353 56353639 280419203 233424287 310205479 923259495 923420628 19328615 939867899 249994125 335681716 657447245 824287062 310689383 652536303 819268963 966152906 505103110 624119849 569047609 730008340 865346273 955523429 647118275 948521675 7513679 204987813 458984624 700160614 280247672 590983246 632474726 886068496 631626879 739107874 732925003 749166345 893576026 999929411 303518006 945909222 306075416 420163818 601905365 656745364 483222490 889034964 552807874 658473898 379109566 625950519 257041076 936476475 566036082 859492921 667593544 981051055 337141873 791755823 453420146 659660492 13255556 648215312 262765092 278521300 421767410 569313646 591453850 920263610 378422161 931723948 492609541 593872057 364238086 840168368 759603361 764310745 815580983 870971521 39358685 654905337 242243207 644283832 169058454 699741649 164772372 558240935 673778115 745490554 894932791 946657386 456134828 935112376 16133706 431913653 400290517 984037934 154295966 663864136 941514703 988660805 283740008 750723578 121066806 276365009 439140994 837391773 778019784 984639438 314977162 713895764 712525091 892738276 335134539 355583579 387774031 931916829 495459093 498560204 520834468 828007272 280950332 561650837 994123153 995304779 141345012 672878734 920977989 925952192 527048055 607481523 265516471 528444991 697344523 736588856 687850736 721200991 917551185 988843589 206625256 399937877 324991699 563024113 100819426 391573399 96253667 354423951 727984481 841575907 626512245 834977861 299392320 600310715 935316650 946659730 112194190 891456517 81318853 636785670 287505684 375722244 876464118 992332449 750245276 872197666 269347563 863004034 854086183 880122515 562691653 658179820 364336977 496982266 207798668 710673580 265525515 349046782 116584274 472801693 367463952 549866768 869724316 922812442 80147940 509582180 314184572 721935436 189287237 445603618 972773095 985870406 12402449 394714803 349658794 509686443 940292340 966638879 164383140 706183187 527033002 987074152 163016344 678437824 186009474 367052956 47354360 688054899 827940219 842326252 576054936 740209959 617732773 845649133 15083246 57374662 947281734 977651304 97631312 409438044 137944894 327853729 298741409 460611785 158259495 394960994 198573651 555377830 456143696 518806764 671429675 803816293 873688370 998601729 78477175 230754565 979278130 997706518 482515260 806791884 135843136 624493967 633533871 711350215 113825073 862643196 96601958 248978242 564353661 728871676 65095289 906857888 612157447 899690461 782033973 956156560 806728092 971318098 827228133 962454848 881092043 893192378 310466106 779637951 262546101 339444960 514056942 981639004 70511170 219349905 216559918 810683923 7022477 979987914 954518361 985252599 321094493 876082365 333800792 755904857 372003289 635096793 388083307 608762274 866991163 901462081 732724928 848659826 610029366 654468078 101161463 752316438 570542670 688873773 460305082 694384302 390343214 594387300 865093078 886333571 7049870 645393473 806768351 980436288 53544812 633746215 337847743 572304906 741232927 880064134 449365485 613410387 455203562 965149675 447324250 529154436 391980381 752609145 849829673 982087355 818143546 861979327 365311167 759671074 830566596 970848647 557012537 853158963 462669093 868302761 294248859 576469474 452681542 949811658 2717731 386394927 600517306 842261800 131120721 802921094 203209106 439403257 388456390 693710484 71414241 927051460 925311333 990347730 477792212 581266630 336838386 352917476 640076755 832431548 888849952 958042995 49533094 668457638 535218764 587978270 151296064 710243998 725805210 878127038 16607301 634001185 373608889 921284636 93138381 657363141 522060504 822234359 947006735 976209565 551797639 946326669 510647308 789402938 714494119 843692843 868398306 876716203 119874281 214543436 974555011 999130173 354209203 742076275 742342690 807711980 383093919 393084295 723109305 978260200 190004468 628523524 465969378 630644951 808657693 880045886 100048048 256163407 394665264 833183357 505251647 621127747 682131311 838331253 745486881 997878220 488934610 769757794 938816971 978933405 60247566 632312848 159926350 991893566 150016224 846901646 190068015 754237562 542143918 892869905 153329657 558531592 813298560 974708500 291791927 431802497 923961343 969151267 383214433 900093515 59268786 728915236 80085443 123854240 958475866 994313999 260231642 490356507 782425910 914039118 348581624 572948817 702567572 840293005 908151450 946791175 285510840 659289102 772701463 814329053 348698647 883686080 965145799 970283324 42040888 186239707 729210904 820288579 453216742 740317235 978653218 981411672 78000242 157966703 151891191 998298258 333705347 556274341 805524580 968371410 597782686 885003399 81873517 593833528 7330785 991353931 581717860 808694796 26529448 929006993 65334930 104750826 248237411 771219064 426110136 897261945 399336239 918343034 869745359 963656332 956118615 959995207 452766357 785853195 932990462 933055495 576387617 754368180 323801642 547327280 120250366 265602902 98361151 362464744 100785609 590194702 960308697 977493494 203939912 438875389 370873852 378755966 341450257 624903916 468127307 503969338 422676374 424864468 997790190 999091544 892321372 946378013 818936182 841552950 50346603 96457875 484430711 596951806 805441261 806566264 706909828 866622250 469727616 498616370 335504612 352881807 241539251 899076204 512904710 711577059 553862642 810511449 1855406 243232777 189885634 943717750 27895855 266173530 273908368 690287704 714863942 957542079 749096330 789453195 296012527 331838593 636858374 756245859 481316081 744637090 423850677 632905156 953601225 955177770 271094475 479702273 769593335 981764573 806541123 953880854 719337822 909767789 282132638 561249126 339612936 787022129 45044523 793393792 198643825 742430018 950214661 956617190 984876042 985183961 156596140 280905859 960619317 965712628 378080995 391971206 319839748 893783958 401330751 958099478 659603238 680902221 701159544 955720059 26891371 172570274 697333823 971891709 742374011 837501398 598734609 700124577 478489296 830102536 299042532 707379189 140754689 950976525 783826734 939841329 829185330 892924589 688249757 760556077 567212259 814449793 258936025 471054634 741380085 978381607 581189799 818333472 552450374 902103511 553049172 927569428 338434296 647873953 315501358 855768248 36930854 340992864 583337571 674750599 846308384 921550639 103574725 389019733 149435583 610309443 715089559 827243877 937728078 956692630 645805172 822820950 165770168 242368952 18784665 449114742 887458783 936902436 213101345 543256550 737819814 926359393 624273716 915036920 846230514 868343243 601307493 923367550 975925828 993723080 240092772 779551979 858419229 985864233 358551814 895158341 425442029 686254659 39310986 629406477 846726610 852497105 160225399 282996410 679483626 799605798 561031508 788240835 61149979 783194630 399267776 924226213 545346565 634609453 7399698 917977250 59671063 460051872 986647020 993346809 360475075 392527436 563399214 592975828 308600662 965037571 286750622 683120485 143459369 990281391 152194938 791373130 469679192 725294791 649469622 805040504 813670216 919152360 3768519 998567647 382150868 423487480 277852567 867869052 421082440 718717441 979068409 997070712 489056856 620546298 375900646 845653993 26303107 910815673 5705398 774234791 110130656 549527730 472620577 928403299 431550215 738764013 262577447 894748461 429774617 450182135 788184535 987902820 469460869 822795089 314076573 546676563 382433716 545430247 671251072 750068089 712992979 972599376 464055483 478296291 562530896 843061666 446787397 755645562 912845670 961710743 924157124 936521912 625490580 761788214 490239624 995405350 202959686 354014128 738983323 760739488 274112769 756488124 465105350 779340638 861212036 960781406 961488723 986997249 86599758 265517580 817648625 982496943 641074882 750437153 413680120 867914729 57660664 357478067 425830973 771590115 508430199 998682960 398347660 604254984 379315390 905794445 651934877 770326639 727473370 774637130 67581852 626780007 468529106 740626519 2005697 452361966 646057712 802175986 255198785 499458077 726966700 930946635 229266775 353025513 183317738 451904954 676798983 905370968 192607655 432227940 273235719 502572165 512335264 924687970 610281664 674999685 466834880 572857503 77956429 110437082 391671153 590916221 684806448 740984111 504414246 998620781 754901729 792712468 49718140 628929877 242543376 834035637 492004926 998204409 262118850 875700952 503427684 891927869 184394540 809805163 897078576 959977931 800098262 868416256 484865541 863144229 538909562 864173125 509668390 983517886 291630400 467589792 131281438 155510591 815303222 968751166 539014424 994672554 314131019 484710655 780337855 915619459 834690198 880483464 885392628 887815535 316817216 738034043 300837467 680497033 859217850 987410360 846521306 973886079 525824085 697096655 124638541 568008732 261078342 898054778 925232277 966329703 356531964 836133689 905184790 967937260 145851376 420453951 186158304 627989043 138407328 494576020 682341858 700667230 233750214 763953879 143905333 679330254 15936889 781285323 750641423 972699132 524204491 575561516 587432917 993268537 770748838 933718368 154477407 750137305 850180980 907045914 127200664 253967488 337774756 914319227 300746823 539463375 462540555 968871237 488270506 905833781 13827872 605631337 291344781 314878465 674664735 735288635 371403893 566944758 56860749 79130445 297091278 371120709 235945217 727816077 605827190 671862582 351094046 985063128 74676975 275040513 817109174 963315974 92727173 754350568 13708737 201986228 74508298 806181805 970278059 989745891 404786177 792013530 134798989 997580761 685428474 896226886 280359271 596322572 536658519 972982422 889750652 947716287 969702144 979156397 201587032 326632623 860341346 953705215 659108901 867532030 628049614 937339853 601734181 961414832 927498453 988421631 607314860 744421623 760969303 893659562 123330181 427599632 944319555 971123465 750107226 901731500 69565311 723172417 845037242 966980353 851295830 933738007 299636097 436173537 30550734 777610550 94830600 474784339 130340580 987902684 148902789 862160008 995327195 996494779 187281246 436392991 720950691 782372084 483270454 679912753 106746813 730235825 568124191 607359318 552970608 672359295 729384988 980464673 322923655 769809555 183216158 445333967 233847976 355785167 264864333 891136863 436936197 821881367 460198595 879528276 296659095 779600154 971195060 977163696 948876251 966229205 984300742 989804940 526982380 660865130 322149562 494317348 727909234 991139915 408329205 902041521 24414583 677322027 751757964 854326331 235845973 395497784 525552161 683352138 437923017 559477646 307680403 568602311 199344007 232979154 915930325 992920361 263883344 900324673 477090380 814333928 861895208 915823146 575510374 705434428 231791225 865195381 461039815 939856931 75271066 209713874 431246085 828853222 835460157 940653051 265638609 842494986 191482123 431657711 687597132 720216270 295678564 474130747 402028032 595189251 690870622 885227472 345486172 721901456 258964465 519141709 894446344 905412708 33197490 404290593 573426913 729909577 341433134 882493473 687119320 733472941 46525489 653774483 193120765 384646237 136376982 779468807 285166267 855211964 100414171 690034436 428371901 934297835 151134548 732615736 67510705 897824788 911324576 965437322 317552051 483412765 531838700 760381578 964228248 996616671 803707637 810841121 159786113 894171844 985261043 992378484 575615379 809927073 543553712 985241085 939380249 983927166 625193314 737031504 609765314 869840635 574953950 775024834 459012712 846068798 883029020 944658818 914124349 917251889 585234709 860523292 906383304 926872339 21040466 110462278 254416386 419033226 462556500 488819299 718695121 854876674 68142872 212610153 473573409 535148028 326587615 973338612 31062962 259921478 229444489 668978281 265428894 575946287 900613247 925651417 420715798 792211138 40373482 384715151 487464205 559486474 878385168 910702067 266818976 982792807 535704585 920773083 825865944 857304043 617236153 648562630 976990804 998405529 733234843 884714215 629994150 673403479 305762305 626578485 406869074 559227199 12931453 867001110 366171966 759467424 640081244 935367073 746251502 996144152 881785857 900276427 12659683 106660687 599585328 935662740 61945392 775286239 566140689 807934869 70382648 890511359 659119064 786031689 73974911 302201727 813038471 937874259 957898269 969721629 977600775 996759037 115984470 442948054 953943885 958131301 732195360 903945551 757066180 777325447 279645835 291335751 510830342 825690279 269212855 362623352 268272725 296159079 953285274 964180988 144026538 877719004 113295495 184059116 313692742 848181052 244750686 405300129 855843164 960831161 569121147 834887936 452751599 840020016 207101370 629583876 821758596 893236028 137085780 340740771 911327756 959539221 444133381 701185279 108183050 292390745 976326976 986228691 344289424 458625399 639733003 755947709 563020356 818148002 121417531 275303735 448933945 724188116 435740895 605600881 845091993 905580941 893254499 992816534 695172891 765207206 911782867 993539667 318696587 911040950 877730021 909805727 174915532 752765047 90195878 835602032 952900556 982782882 314723786 667551585 286329015 547067779 841670812 967921594 251558460 828153450 687085214 833845630 942144451 958295741 527790659 983840919 917836947 972432684 68223584 522356493 861990669 999112989 277665117 646087225 239866214 610557648 448047557 796238777 28916562 877212353 332779216 467740488 103091338 187730962 298683391 417195295 243992842 478861140 197250057 241411243 960138899 997504001 777718245 826223506 31688528 390308355 175077158 405321223 783622501 869720151 676954291 969984885 572393121 893092409 359371299 589248753 527874290 548840976 52136812 922958464 329216569 380789118 594657551 648698419 925308688 927703067 836375532 862139178 404859335 620879989 698978488 826510907 963262334 970378245 136621471 977127370 572634906 661799470 840628268 874741035 337162399 698142537 211837090 807985616 617112890 709390645 503385841 909347668 683929677 701368140 168410492 244782138 390404581 841252683 833720404 953732462 408980179 686076222 166830606 731419687 693522692 960560947 825060768 878381716 224823634 922231141 176383242 509390469 405674977 644196620 123926979 865163331 336367507 439239898 392024260 436108281 637488012 864058153 352103219 936727345 594259364 944657275 603327838 762878960 848026853 858155697 428296799 527454471 132859438 435104830 703246070 860556417 255709683 534018496 126463039 878890847 377223766 467720970 170027500 262985933 784916175 869153084 659480895 897866058 452294730 905615018 993448806 994069661 163867870 380099157 116174482 469459363 610440605 760514112 431661478 783157845 850451677 931793493 221058526 862493420 638416597 660516849 715537452 744717191 192799208 778509296 656494047 675967464 650136344 813962408 236741512 493753844 962120742 975696624 204766300 323873417 222052903 395462747 402916114 454712364 899137556 930936729 152948991 265741071 441778080 503155491 182623526 698304936 157730212 463569653 378819490 822108225 406373100 410592521 571650686 721978204 302509575 487318828 275095634 953731925 366884632 721467376 989927815 998080359 393607764 935241810 464949207 930871417 310182066 663132226 219627232 838750290 428697936 691508938 432380919 464957647 266772205 785491258 38890717 986258983 644332987 909928217 311993911 313748404 642349449 789179198 784376264 971193163 176983718 887256418 680745110 953007461 501759953 714399908 111864034 461926540 338976857 784909362 464929560 554038819 542555808 648363603 764183729 863213535 549069759 874064756 812296737 956653217 691122144 808137360 623053777 837823937 888493585 935725221 429418040 755287642 484693300 628003949 836325557 944809742 342106241 954550799 47284287 871590807 925928362 960583558 853748498 867062260 62904895 654758861 802244079 855671212 925803885 990795845 275474299 372644457 254009101 528270730 214194045 817889748 693768787 990213716 106115026 928199396 73667866 421134535 288523505 744007324 499644417 703859064 151804392 533738801 256368939 377544160 30185696 405991349 883236151 927937531 798456095 836912235 730271328 991459317 424102473 713221172 483610238 810346200 297436240 486379806 413367620 558585346 506998026 521848968 199187074 300249482 618881006 924282472 149795786 948089085 746206887 991018220 925453729 955183318 320212667 387186830 48038498 853317311 875345113 876990355 344683092 490448853 498073121 710273554 390100828 723760893 267303745 301347221 400261785 607994077 1932161 104832952 275678427 807123141 272055473 649506845 963003950 994434254 410592573 766201030 800241720 966979355 577163806 981519475 701305341 886480684 542457173 798158881 84931119 281237635 737421552 940071424 543960295 888719925 458271685 544169408 363414680 580587502 632416006 779574491 768261143 858225790 670251353 841553076 185306220 743025856 586926399 637551798 81246639 713351695 269190825 274350539 872677948 944635995 344805040 483125517 811525285 866571330 97501558 882840591 289286064 712571216 134955737 995531050 242474810 509166385 275494142 529332634 485735432 858024512 435277568 586447841 2289587 647496340 679688643 975709071 907523651 989217857 921507676 968440438 560696914 923722000 655143372 696560204 381735414 841272822 689465732 919724570 976256453 992563249 965205394 980236584 431294565 591834419 935505154 939091946 240126799 596508071 625123241 909835049 960793886 969588446 679975788 960900487 623333626 807328934 626371887 704530183 801656554 822184774 976221428 993440319 135070132 233940122 382740973 800765358 673375959 716225648 649064051 934505254 347836730 986201514 342007283 920321669 136849839 334669803 86704379 277724962 46677097 598890727 783912576 827068539 13916954 39331882 838424065 928671432 254428581 818692316 398381243 410426462 63728652 454246000 140404959 595163633 701691511 981972497 580015699 822658582 674730473 842213538 732729372 893341621 72842470 90879120 651145212 861201840 272244957 967129460 464610626 775514174 665412369 985946267 801475745 940792322 362401774 454552188 6904259 925333278 516544632 931819032 139944185 960563057 564383015 600643489 193274714 736268115 77643420 704774671 620122371 962305007 454839769 885954369 34476736 85352746 316210926 545787805 29089566 702819721 307186942 590233666 73664441 621348811 63976837 452719351 430718138 789850045 446071799 716513355 567557803 850087544 811726486 818951340 377950856 910797514 417634969 572540865 134204226 217616367 983807030 996399389 988222645 988576240 577130765 906886741 20755419 568712085 25009538 805185846 88776504 518482613 259521349 922983243 781626135 914044387 959485884 963675898 326855205 882955661 65230283 554193156 172542491 494205637 631758344 894721540 12433123 309096790 873574796 965629723 750529414 843103111 863544458 987500473 333200863 674774979 677762675 715343853 438657995 959295916 581959148 656438238 256325123 338136901 860065004 912948131 882519958 887855718 585059289 679693093 497428265 739968069 796354118 924755723 634700797 896389569 251856875 273609561 435636047 766860858 816899025 891945519 792349155 916838739 340750156 664108526 612894949 921252683 464560595 649227847 542089782 676989318 154503076 202790157 643105243 690972049 708726202 768291387 660615792 736780050 271941977 850764607 263523901 807755912 287990675 673012148 655930715 772233888 526072626 973817815 527785500 747546890 360855524 375185168 1298838 905655368 26708966 273495868 920894693 921507972 759337939 817857376 341462953 485419895 128847925 229215864 417351642 553791630 152890876 583354386 561466811 748065706 578219468 851777125 971592660 996206366 542449320 611916336 654107987 670973060 471667801 930275981 868690718 998837792 308386192 771048688 695363456 807084251 234758332 679328538 651309264 906575448 916468227 929718364 551392177 651089510 115794579 580342577 65446285 730392548 355172701 538373331 587807879 738367752 894687554 963211161 211972675 383011752 86571526 786138836 523640302 705943710 476815390 714370770 971703057 996012399 414731942 797367184 279110631 783094139 451118065 886444679 388166489 744116517 824187142 867467717 23514222 497779202 74212395 204490378 973985256 974106710 977407097 977592383 463407896 889255845 627977260 678653856 811164180 885544661 755621605 992144050 767151277 825966622 482699345 940946807 211157445 792398632 475048831 508461688 876091749 930356413 304465058 920279040 40671427 827476599 99610123 666804605 494599742 781635990 857295714 906668769 550563273 822670610 270944392 276134719 845195517 975004428 438469112 777539460 865563336 894660474 834288432 847732567 350852698 710972348 430388224 568910000 874742895 994621055 78123941 783291869 949162747 979060801 579507873 932081311 412005825 566184990 952592883 970350961 958675912 963444130 404683764 837004483 972271158 983540526 202789852 472893069 303540610 357831428 576089041 931790464 979925934 990714654 840771754 892148259 989566018 993747748 120172660 325644391 296383353 562969474 525059550 652971190 588207741 789984603 111466983 971140210 182178818 709822729 507329363 549423028 630179864 740264834 334619642 460793309 393752236 902459919 680605762 992359174 638369888 889651138 750136737 767148644 425377925 640772198 662643248 904934004 938524174 992956787 114905570 976805657 454259555 595847694 310704914 755979909 689255269 783442749 576921576 774207544 712764517 774546883 723271447 835396223 717149156 949856756 369482520 383758985 545121485 987893991 611408240 661590113 582800891 616882420 962532667 982296193 453778268 825430564 828729039 944364782 484600548 811109513 45350112 899023140 966895271 979543102 307522719 387476041 927657623 978111247 719856775 893572332 500054802 546544928 482775593 772476566 689305866 743424400 614958777 640727706 994370863 995202476 729185845 937270657 623188854 988306573 26779767 684481790 606481601 705280004 605869833 903289170 778372529 938009240 664918471 719446753 944685261 975027586 599802595 719303625 25389672 116334370 328755826 767887544 315736573 902931414 828122448 953830959 717248000 982892795 511291666 818450825 540892015 688364810 593090277 647001092 16090616 627751211 887460715 995186171 862832530 972020026 416576874 734600446 240809474 991443038 960248850 978650897 473776724 974007368 161082176 425315876 327023610 802636049 537729426 709866309 754374377 865444308 648810046 695641754 387315565 438252242 29571243 724940690 546375136 912382939 95164162 127941504 883737677 951861434 845011872 949690842 142328927 831307175 973487426 976061532 463833403 664604849 292851468 750276513 242263400 557431063 701829746 723361949 854573774 947237355 389714985 766468209 534231216 691282697 133811618 511689005 763008137 890055053 669957645 775485461 603767869 737397809 226253478 763570266 663783603 829204001 470476525 551335856 959035421 967305096 728394903 772706205 504503687 658788190 778658523 861279764 709083026 721750059 466068988 991381948 426772299 712072311 842354187 881298036 17213999 534154507 390981428 766301343 241768958 552614256 428680901 854206444 929168748 950091341 526893546 599919406 586430456 937986483 187339196 719421276 754047302 985743736 645047953 803847387 964237427 969147754 722222458 838168980 554773309 821548454 491049288 917921181 356939627 597814646 883343735 893351611 495384784 569226693 71045320 813878152 131872077 913943583 892434337 969033558 543729946 595677312 698260596 974081725 485419197 559618730 726497251 976262812 260644955 282454201 624439704 967375048 601394250 999831714 797905945 935723703 98969555 649988050 275140825 802960124 102486906 738059816 884171921 990682346 511785412 964219206 515487748 788906051 96073697 997008259 843672882 917559284 634524713 889833632 394459374 476430168 719021504 905624916 646266674 818401452 550672765 630377145 138606400 626610209 223143098 248439825 32756140 668657664 475383950 743598950 482657271 570863389 402239987 558938053 289072594 859477412 503257148 813379661 653072838 713327224 803670293 887344489 467561950 804922566 424604706 829933057 363824952 680213053 748717964 768771222 351544117 628750834 685152097 922813587 397865055 481483775 573364203 642970705 42507070 743586527 606840988 807900533 308794130 612757504 329491238 890353159 669521210 786857191 278252313 702869942 400168355 938273545 767657927 812645604 916986836 938391014 554383045 871922802 285177922 716211750 575029320 622223332 847977424 977437709 38113810 456985908 624494205 838109572 954347363 981813808 177315737 427610721 603854609 731806479 559215116 970376125 640363980 714388443 690826432 806065392 571457638 634770482 913534044 936543967 885420180 976271079 844962648 931228592 821658543 829448579 637726052 789459061 92760101 699956436 665323221 825470848 575043381 751725211 459967644 642488433 375664982 408833238 160056323 846606177 61970821 700361042 335967021 621483715 122132971 536951308 451425533 749697193 822951631 939396465 539027230 726222655 606372145 791342293 274260268 525465970 585289932 691059691 417112737 768053982 744378050 752563075 497362444 595883714 638095610 926504858 807266315 942929042 457811746 702366585 572908791 977350172 404536451 406719479 393372406 491179472 726686988 821914529 617137402 983330299 167858724 922994151 383537238 952139995 665643120 964166512 721735174 899525673 582335307 687210563 929202463 955477637 656108430 743243220 536652712 771798721 649722682 821073039 278251582 978889062 602100064 879539299 586206936 916638465 440126055 717519019 723667199 822235163 687066551 809749961 288694593 776083277 980187067 990707166 804359304 846125917 72429888 651734356 513046699 692940862 153988052 410241957 786637349 999956214 318400232 974763248 385033911 441342635 613459548 716086051 246365667 335191904 38605093 603137992 613989184 760393048 192817708 753674563 802537844 903117377 770636757 873119159 286816202 604688967 136174857 160989840 34854315 961788477 579417285 583776931 633545020 815660357 350038463 615408172 791499264 889345278 690402427 894083285 317719715 996203709 277627228 904274599 237078485 560671711 276560748 399599081 139918228 523124442 10290546 715781787 152210105 679992922 50775757 539818019 202826505 363479236 231844975 594656933 622335620 721675272 881942810 954036273 270702765 951637115 6123086 419314523 174307629 591482259 418415126 898570606 584643271 808461459 360978199 521815175 398399009 812703768 595354108 951925996 161593550 241389022 266693016 449042122 371001532 497793264 967725451 979390844 764733497 795813669 516122269 873172915 158894849 735289093 701100396 869818835 597445720 972207251 842447444 903765359 437029301 780911201 244869098 943631337 60609465 898644177 406645395 536775638 276274577 410575263 440289028 537635272 766158441 965103923 506521166 508070477 451949657 595577492 702119855 892514255 705901786 970459737 196860785 458533043 607734946 958350843 910035958 958163637 306902367 901374140 999034431 999106189 814358757 993660696 861784141 892344172 727665117 938948514 244052319 362503144 526586301 935756316 618889319 715018545 343738935 374834434 609568126 695093635 419474644 504106381 371477479 498594055 555649259 746935089 753431775 956598790 880951449 909150247 72618141 351563617 211438038 238019074 783875339 902592496 626058371 848379601 324332794 646608540 701126231 910102767 920223930 923403464 404429921 857943739 924461850 937843643 493283034 790732368 279194787 728044840 788578901 940762640 849059262 881824430 804811697 922796188 793841453 869899782 672172446 685395060 506738472 528172915 844062424 847746040 793169707 818449658 692817797 754854334 77764225 101495495 839735289 998339928 553326885 790540551 571238334 858388122 22146483 110382198 663616400 777986661 106497766 587014595 814520168 876652543 678785155 975137206 113493268 425993540 250300856 718991241 999170372 999753339 33798174 957237194 914334019 972560322 860737006 934777084 478245602 487094719 391597491 473524508 165998350 826518995 75718803 309061498 401013250 673511196 605313757 986398154 626224083 662935604 300069371 524736810 303007841 428701127 96133550 175563451 965881052 992643988 596787747 733105593 272930709 559870962 731756339 955330901 694467743 947025354 15937218 152479298 579185597 831744027 817871452 965584999 677882783 989591870 344847761 929620012 190486965 985000368 374760268 454929151 634280611 690931353 331341597 408298876 353231907 607561772 645598188 904916188 405465325 835525188 132698072 573185774 256221957 669013728 247960115 972834385 599919566 733525468 778558006 824375864 99455475 338056354 630457728 823540201 670683356 709431424 336448215 513964971 590881991 786423803 663201831 809516300 840673108 989453445 707062794 928900610 583243687 920719067 812685819 975585947 815579090 847532664 984852419 999402443 53681857 974793753 142239460 173114642 804240478 911408195 862843557 876701612 2317855 628655606 747023038 934659401 918764227 973798120 901907385 989334278 847250013 976218956 615446577 729475022 716732608 807943680 531512346 577578541 922952296 990033965 964361002 967266731 918042921 980281111 427305649 975946517 658525505 857819704 550547371 786455650 407076395 726788909 433929417 687079836 413168998 549441638 327120407 905903535 653387363 994896971 542746226 850166183 867028286 929500426 794307791 928440511 159047678 295387192 406146218 933844688 456595076 634494301 14378476 98213190 357695327 369120640 652948300 737493273 365307183 730855699 980118273 999814844 62353247 643602585 894604491 917784367 454410799 509446259 211666385 502891205 378303578 596806623 957562105 966043177 124469671 506070263 515712690 853523442 952296257 976293270 14177632 346014327 635821487 812058190 991142939 995067461 872192298 892485222 627017278 827441532 554661589 784444644 730571786 731551764 74156299 379864084 444161292 913148226 501655584 882354511 345689711 560745566 26421755 204533799 583103244 787799648 407492914 643069330 481628662 706967096 100584011 747170929 154554916 536686513 442924030 781542441 106344305 302007334 12520772 692846364 884931310 907282386 999778718 999982307 620718078 817293202 237316394 571991463 521231346 786570244 967950605 994545878 168189664 419107776 77292308 409740415 684254052 700372294 685419755 893053262 785792755 968944721 827314831 999915788 12377370 718057347 183451364 199307993 266121101 296080425 673080394 904296882 486058004 522726096 462372439 763389518 628335420 990448800 130482439 355815662 574987474 691448698 338106576 502904236 821835572 909731518 527385210 768183078 440476075 975807119 158734766 664674067 189353917 525757549 972468843 995758034 681424641 847594004 129348040 621372013 382579122 695743208 557861973 702778793 217875533 253984656 586621344 830258360 350412425 860585960 663967834 691400799 865674388 966155030 704207099 749425002 570488726 666935172 76204886 387978810 596342133 953343105 867064151 970225302 746900425 933468059 942998958 958035993 74717070 764990436 63218744 438683985 525382108 651536951 133067358 224111570 446862492 734662080 672920523 903488522 396696546 753918414 987294103 995590665 106494219 880867824 436569308 552774703 823144486 867535884 789020572 974381791 355667655 823096147 631468486 874368474 662879955 731471380 756941546 853747486 575477304 732711450 602562251 970172355 209065910 471828430 864598691 877936188 401585462 852687472 563060799 898831706 49381677 832289189 677165408 860191725 642708865 934927177 537723473 674018812 653522793 790537194 509946810 751485613 771348833 869744810 685697074 753683436 189908426 713212586 744165743 880190780 248400439 518068215 382739280 965937124 970377886 976815339 54241050 999033458 610795387 655345626 513833239 707655362 122773514 387438059 737001145 879097421 102072278 840062232 351849176 529200008 289504750 801910730 604092635 792963417 361573421 622733754 985466432 999758419 560771171 586655485 83719132 995983742 951859543 963333730 790589933 844123588 152134722 513813782 249011086 683780456 440892589 700036407 948832291 974647120 132393722 389504786 211676219 681425710 191654872 220785493 802738774 990828183 261231439 803098848 645078799 850027246 588865996 672417450 144484282 734581402 231820000 513108800 165562773 919489266 305684942 631097714 723660290 771751883 809850176 962846193 835561551 974775375 552953004 686134645 652149941 686768299 355222227 487179255 664174098 848030153 227258699 258365378 832461200 875928509 619251995 770042580 417569138 876038671 789712443 933204096 188940570 595396680 133613520 248987055 528111031 710836376 431208026 819680299 589074999 859820389 54642092 152724537 171001247 339081786 909045709 930121997 693971437 855242419 786614112 916287170 622361068 626131658 326734184 642562072 619240196 671475061 966253109 975974122 110865947 204237938 462622292 861878577 248797107 671083516 725450987 985269317 982377233 989064342 266959143 641675197 363803030 603051541 793750371 985845066 898746195 905888635 353185946 456184062 15537804 154000532 293803971 348975451 968095333 979338357 365294755 868147316 234804438 978289913 979071053 982529313 476497971 602762419 618005799 680184455 106327963 470533740 643002686 795592312 884288845 987255379 471043385 694429184 136407944 188143062 715647677 893442770 978595875 997067051 873618572 886841299 718074658 811480425 556744553 642863320 729224674 838294233 339199069 654876418 633892413 756056534 551826754 855210507 389846654 905529762 71662887 80693866 285684137 769390496 468326289 908446405 998355663 998956390 578989458 887009504 817276633 938167168 416624928 647316964 168202415 464275041 80366436 832871527 430414017 723791322 755221111 778560415 830299018 981434305 206403210 598742650 647439997 915146573 384930502 842392987 896928307 969952732 244984116 720892533 653542404 783797193 616202580 629560382 805217035 830170052 684814331 728102335 114284016 905538513 592962896 673062149 279347331 336844112 102129437 811925097 695196723 879550668 711113777 751748066 909032863 958135819 788146142 891471735 751385730 958737453 461377078 906413386 353581931 978607259 306224161 594202375 559731544 860912154 192829652 921095831 821767237 876701629 424713408 876024975 91114115 809485009 314372058 425493053 774469225 868912407 593958104 807675072 643929031 787119217 235032361 479547214 106064856 895923272 626937469 722888424 563835747 683858356 46464942 449873283 986060042 989684507 991021747 997819542 820828948 921362172 202618089 920469871 848867751 888587653 579761356 936734575 15467177 830711774 806633991 867643231 666200395 837660716 136468153 577748596 887027469 908329300 379307367 766541547 698350829 913808416 412049924 967986694 852628301 873525185 264171506 396660001 743408576 922524286 640461621 700945009 36926625 276393521 167665091 784263093 612783098 991160500 112514412 986909525 98650512 895471203 27423072 570881498 298619680 646350603 43502695 407088110 665163564 815276285 614397288 883193564 189702615 961698906 82770405 344726303 324771805 941467318 662514906 822296454 540402151 547470302 237426114 243187606 505644937 662755195 837637216 909440456 548353055 656019021 274014693 284822102 592642714 679365108 331990752 568859145 987153692 991971195 353888984 716192819 422536157 988534629 183157656 400644543 520679095 635114635 308139950 849018839 181190508 615091646 885219807 976415067 731587655 789114047 911253545 959415737 473077677 938561731 603435543 953426928 662904797 754975081 333798193 637266772 128215615 900325912 586454172 855386756 15692251 750469130 441243867 780653318 149493417 881349388 405801719 872858230 137112828 622855621 432739693 678869832 556144764 658514930 846771463 909947431 754204240 812557633 174310857 660797885 277033327 748520583 858954239 930962229 178317342 598134188 855554384 984374095 423219585 844887630 353677933 850980281 208644787 681603852 739452976 897464468 179218932 418630764 243714329 379345111 37382790 758154589 831376190 938361327 726325601 780199031 54434563 702842770 275598460 951130717 802323233 965417320 446897300 959696597 993938308 997763384 448205757 919014748 858419717 938276293 509137184 720926653 576820053 982381844 71024664 242154775 97758719 786652876 806231851 983583319 627306806 745708633 878777183 998917681 449168112 537240389 103877363 993970248 749789744 781752471 112489155 721864774 767011210 865710518 854720492 894228530 803885352 974794135 556313981 770535580 296327610 305228374 400910343 789089922 18304956 296458708 46236699 703613655 851493002 929393236 116825886 371339325 313848662 970600984 313121394 610088372 312393105 384667124 568309678 838563810 226162948 592214168 103505818 483813996 476454540 929443075 239510020 821895196 524461255 573596055 317224757 729868405 873056169 903034809 662842984 956682396 262389912 972009386 66733238 174952145 996509738 997653609 399969616 626595301 847731870 998051860 777314392 795477910 28616801 172973824 743361094 925190802 347888276 466378624 592176859 874790531 213136791 258686511 505046770 754955674 13255651 179707472 957874324 977725843 89836353 262642201 752477488 983296816 776979236 940504106 312084057 637698924 59273909 724677032 587821972 618514504 439361166 593851545 878531197 949554626 886208246 959655928 436923328 853561487 245212615 876847468 448808087 928740449 66450435 611608929 242457027 317789132 75690992 133193668 297679805 668973627 816921007 822576664 37388740 578415582 883604356 973369027 735414674 890970831 540766874 888762751 180126313 741760130 460799875 526802523 263954197 700230655 476351269 561237488 154638243 739340874 307422388 369234061 326849418 604878016 277487593 668474786 819491446 857076809 71808861 348039035 831376193 977709244 545058680 716252672 532059262 764669864 649634262 859279203 903687634 990981506 564348393 623842080 485121573 829217063 995100845 997570079 618282973 875021212 522149401 928440467 980350220 988207826 984949339 996178496 551608130 779753421 185809881 607433979 968589991 993693424 493916754 738540291 137410510 974974343 827678288 897274117 244321188 938540175 212562616 442394410 198446955 234881188 663648945 942145715 151616184 499634315 12635953 920790829 699370443 709800257 160660063 595962134 764076777 884245056 581878647 613696344 817806559 856754754 553529452 989923785 773527630 979018850 808799720 945887659 385244784 861991622 210978077 235203702 792478750 861791324 466590373 753216930 679245619 691404143 183687191 783473354 51554978 462673001 244839876 382507760 773313161 943914547 904259812 928320755 237936864 464978594 182427151 335161024 95427361 503139071 184878587 457740737 406775485 745048799 473125023 921852012 352717051 893896188 7446252 851786603 446635968 553346820 101553062 382335683 742297028 983528837 230468751 946224081 581684814 760767147 594578437 952057549 180271336 352566697 264185322 923777127 356911411 536739171 162323905 194805415 402619431 979784099 374988457 883847487 593533091 912788475 933066394 998083392 318474656 863842581 923228729 925036717 362197048 365873802 662597781 853358072 154898715 798914056 478877421 741003627 349260893 528816228 339700959 830675159 435384859 652473340 418447312 640878769 17668931 821899760 902919553 983521891 436552742 653607479 752199447 958488569 753771188 759973900 100468131 391509648 219313888 542172194 35185493 320682153 592466332 845747033 480587858 550388972 279506289 892335145 739436013 939646611 466689114 899079652 470458941 570432897 370096093 886034765 899701255 952921130 597401617 821225893 8316759 608607215 492155400 692752759 428657799 903740405 41375433 251886008 477526291 498680722 86399368 412943849 414367477 446000046 62431581 757804778 922936132 985015819 465499161 510488966 107258281 244286221 512141125 529644271 634039715 764274641 708568957 836770432 234238616 872793922 248110752 614291899 111569876 228206876 205626257 551633468 677547616 913842248 208043976 475669247 239675049 376331223 944171026 968361861 791383032 991200016 420193843 824951886 932516819 951818035 393518095 799614090 852786731 965696897 991480658 994823369 612729754 719998963 111855348 898079032 866224331 920320518 544392792 735404837 405761506 696945809 291163084 533558154 499379161 656885270 110530214 820231764 639674103 772584513 955640419 998005631 272169727 617664215 689595529 728459981 697721920 949522922 818241446 906482068 550917231 567575300 531401429 562533927 775336094 807068819 308665891 582658506 329327938 690653416 437742634 581385483 970431683 997982965 229544642 358176778 592240497 947294697 50355000 283381719 421596787 562720958 590306791 649461751 259493766 632101255 538914076 601312902 595174373 731909609 794127082 861008869 371679132 657851288 811273501 928984693 300839320 688407157 68176138 513035545 24179537 980001009 337796584 885481038 553091204 939176458 69290743 322101122 638140688 668051192 354931995 609434700 373948289 617088847 274251293 952407008 653567123 996063982 243975633 711702315 806139969 826244234 21870199 552521920 185996597 502938260 951595354 980288941 52492349 592858382 521191092 614600713 273234861 533856351 529891758 689457942 805297225 881727502 4934375 656328172 79851736 410577403 966416075 970155507 786417649 983633446 134135889 547902700 972475574 985208593 608659407 789705169 70119076 335035415 710659758 821402761 159582694 488674222 308319904 410007345 920053952 983154974 751675441 889012881 915464467 973044480 234363424 544235926 136847161 792569979 321387636 430224589 908267079 923348086 279193872 723472771 809547753 915903035 791234403 897906224 168075612 512082489 422403306 774484178 936475660 985192970 950909663 969366583 468110556 858127495 121929836 373391965 799770424 828008374 980325991 981409979 380083418 927490623 456876676 899003305 76157804 688337289 882206396 991990779 636847810 809294018 996297121 996603418 174995436 312207012 943240989 954687761 689415018 886423326 866192733 966484171 995566705 995982812 876934431 894639096 987228856 998606639 69992217 469197601 990801847 991666906 571793627 965006259 457833888 474257747 893179831 917682212 437602009 567292233 607015526 701900145 947211845 992135575 752146593 929842500 77489498 961022590 820035198 826641838 359006628 779786873 328500856 480235535 65290854 320549761 498848079 781386388 430528915 841622189 468115725 778440825 534411589 874740888 409021919 480104462 118122742 407996757 774031153 828841185 548555471 957834161 788341706 918860673 568282016 852974142 255527481 303659635 177234290 630543430 623630286 687550329 998925705 999420461 188179515 895077174 253920269 367424604 321264615 660386741 149455838 904253521 468281922 777000270 708911626 812620741 110371484 165569142 939168153 965529159 214410440 439944593 23483711 604415801 325717877 532697833 550631102 852635780 437192585 544815451 424049950 504616157 975075669 999894956 722237116 836191994 757578881 853708220 913354301 943003114 693824896 856965798 478694848 536420854 712477707 987935096 123365657 945047413 319258497 816077701 46183842 589487090 874607762 901855128 935718248 954485349 145648240 390929781 463406499 528174572 761028124 902904459 434048024 925003472 49012047 640276477 728492232 940547542 930781094 945345452 84270367 801427005 124524651 612914858 664740203 859524622 173240705 955658130 645187232 903712097 234469783 684100635 752360221 993881724 922796170 963225575 840651133 978989372 315476383 398216923 57940461 562261898 245604784 439521917 765765621 914752664 539949506 592114249 397878808 747626601 663565105 808153785 844796242 905515006 731103454 803750061 638628243 711009594 294747721 660056198 119375498 947303427 453845445 934680739 47358803 498323332 839178075 967308329 875072894 956915251 443443603 995206973 565187788 568462067 219340127 473802142 519500035 657135911 302421796 401482874 531163226 909921674 471756521 695409949 559094199 969412093 90876943 898153660 544357627 997970112 711824619 888940859 456867469 634043583 991970606 998610960 696755150 887988982 399407512 462643878 564594677 948062623 274248995 946432154 135784332 744105426 989801115 999660957 834395925 980412959 771449808 974738451 888170714 953251556 909357659 943595539 781339458 853124999 130579849 974448444 337991975 625082989 754715987 830840193 984952417 988515293 892202222 952816088 645371996 857536341 28644453 302315423 788469521 926178984 884466409 985147577 764281378 993979161 428282924 479923172 29991826 884050116 5621282 71158523 547747325 603371410 415681558 762187110 966952358 993355856 164759678 243724171 48396590 417266321 387599370 756215780 827857261 997063237 952933233 969137014 9327513 190628201 212083961 800429429 904324196 949739424 471789438 802689259 315816511 513302447 566023992 737521307 186328089 883327686 770998636 898479986 534621932 901057978 932943174 943922943 542851210 798665024 973878141 976473039 172022214 387255892 186194005 641684983 381079524 445498070 680535301 956589258 778201648 985371341 857581500 894057506 747405462 828682430 558011053 823625496 418620361 968219466 181939179 820806628 717584207 901230150 568896667 988390223 54769943 60255042 485928306 936314643 645063454 695496445 697522155 968554512 854527302 917153389 949884298 950295532 72205515 510979310 826126827 906813967 220808873 638372474 43732316 490866264 630728106 974717903 538540871 907958784 187366500 196327214 281201939 301939182 896196452 941709026 571264791 897881813 322483551 668104807 557403052 914937355 467446600 477704025 39265589 56915345 95092022 363717838 875131370 967340275 249893894 425465025 407471122 458735600 800686440 820053847 579076541 807730987 859079455 959621436 350812612 918430607 837427144 938912671 242953116 434831165 423958169 810891968 347910766 379319250 994155424 999847032 694305393 939333410 997390841 997677416 543218667 897692901 980150649 994401238 537643733 866236994 193332068 406910491 880609494 961798865 701820848 727516229 176489830 760493821 911733447 973412098 25935354 86728327 743517367 969479165 432756825 660648624 555317103 947378388 354613767 716397281 87769283 125144006 776622587 986106386 393156300 699620446 297015693 879637620 90942745 924546157 652400529 698169743 176096366 919847213 232840098 869160106 580025660 759796079 726797034 827226320 421017189 995216304 132297316 508202776 42457982 659562187 968047528 976251473 204388246 330752273 533347628 916738657 42138092 179911140 267845791 380061705 930883041 951967091 256805076 857942084 693737737 810760466 353542064 408187835 675289734 785148044 302040112 804587188 385759558 760715905 136301486 583899936 390669123 855085389 734532524 868657069 797200728 820707494 594803557 768042019 42625990 228041896 189609735 860367923 435010081 907342889 910332781 991063587 961085500 962618871 682294149 976583501 414926410 843840769 804471513 930311742 895036519 992616705 358627745 839913261 281399622 311324390 428910302 534514068 306883885 574535639 294665679 333489807 212557504 500794903 525005735 595443920 101959178 453247042 59742379 766509356 847019194 874201722 352464238 954302568 517267958 838014803 697737692 840410466 958472462 989611423 685283707 945733824 506574461 700286461 590721668 979761986 401500447 545285557 527195751 907694410 919749419 960586019 124552691 964177884 620097029 864527899 613517575 643973702 587592356 802959472 404310492 665342859 85907521 249572896 510603937 814010615 703350593 967313240 597364794 770095499 992652601 999635817 338404546 922950067 46209688 743249977 528598156 849917454 430462805 693134711 200965944 520084798 93854667 839415886 234575159 257583701 483612343 524716585 962325219 993520735 200195986 549060975 890155928 982816228 263120652 894417650 538852044 701167445 510794546 688988386 529875447 679685194 753974242 953576209 728905777 896486114 746165388 937591694 729166999 860806687 533212332 615696428 390133669 499561376 768238094 921686818 201373760 620384988 772888271 820962410 813962421 858682820 440387805 672568778 967452051 978630247 993354416 998340067 753063497 758883202 119584994 490872735 967018461 971831859 575126506 711751890 765284443 766896162 427513084 864429851 713518583 818919203 493940892 625196745 893963963 979613413 718341438 806748992 589335230 878259820 347211761 703320978 140253580 484841923 931345695 947247073 148416580 278035068 280894226 768485872 500970157 751460297 484644064 887597687 795344550 922846429 667906936 764559145 274157893 596307862 524573418 718547042 7040863 522774463 401539215 935108936 86243038 452431581 200730001 824074834 590779871 965519475 289912208 725499228 688295530 769936871 780462131 918777872 128544557 759628670 94444983 479013366 479645175 479674184 25782242 145926482 38783815 422973981 521261140 770259729 174628003 612327806 218042210 505669949 593108063 960303684 653135969 846459313 892659596 993241369 390629828 463836620 151818792 404405156 701059896 883423674 29832743 149955809 873024437 987158036 843318515 936001075 909444039 985106233 428534805 884998538 244796133 385893479 209637182 481980358 241250613 520195796 48306783 691806714 820220002 852462634 706851247 993192851 610518010 730799824 782432695 930491900 209321457 737039835 895473488 909019571 965136017 973378353 941624054 985990307 155060933 797408531 682209668 945887370 16035074 222280916 571448941 587507333 898502009 981066544 133137117 334918064 405118817 435822484 300671273 849355183 57127208 968058823 256601969 814749752 197854167 306865238 535492787 757713203 854445490 948728087 962920332 969614518 709229220 760512305 722930925 840586351 744340129 860515691 633608396 783758070 578616863 819061842 878746714 934048213 244037108 932488518 59655560 663645587 675855434 975427417 544468306 894641616 845497441 931195963 211136493 340961532 648916512 967583841 107819199 621563020 488184444 905402375 42176609 796371712 651837277 902961568 129319099 343096956 477814573 743814237 631386955 900168673 139489180 255200563 578584291 724934143 99438364 684809667 802700406 895178660 777164471 854363370 472876881 557965436 451433255 460506244 403312077 555587560 17523086 814782002 663511866 707008664 696371726 765313559 645061931 809481463 781150886 802878022 920153197 929112813 786655175 802505139 284643813 521474789 543335855 762363830 151974939 747534006 325166938 938757523 393834664 743107456 398552276 617431715 26722990 739396911 265292933 829804762 893517683 974896359 831215356 918055322 701872362 855579225 492085970 610105811 739811894 956591993 821521158 945099743 868494996 875822913 610916933 778690481 240165652 920860887 509878727 539512444 4112807 69150303 7819604 693775255 566143223 917767122 591963166 824299409 685917368 931279753 380020422 953600457 966757552 976663335 344016059 954881030 471560811 911754292 165311565 411725241 516999819 860841695 282259225 431031469 137484997 202880807 740013641 777325328 547101374 852135664 140558370 765467201 932989322 963579839 646220306 731079627 492161049 978438577 581414098 630619598 761393781 812281913 860506947 968077221 570929239 986823490 89998400 734827846 779677914 829974387 560993660 880488280 799023335 940188134 120169236 497586348 270866721 490295072 651292983 780250785 170746437 399492654 692594525 957436831 533420302 867176384 234479294 299868579 395848413 915695845 874566201 919459754 486755379 652305261 875680087 889380758 654300723 678282791 260411260 865438598 974718487 996170200 791376088 939405562 2796931 220340605 57646747 499637716 658665902 666891313 292000904 682876691 323991109 665306668 980311420 997338227 421877786 509128392 414048038 418353840 64785220 844366093 841848246 981826853 996354688 998304475 651911270 953489658 909967402 995769121 151216265 944576909 698702127 854529665 907110491 940834219 259931853 916383596 255174708 331994015 402570442 923552459 794912673 803772093 624016010 708899182 987992052 995608753 188468219 667561520 692061205 989357406 749357047 901178092 254140834 743967079 919670712 946183866 409910845 879133332 860848684 999815721 673325666 805080597 888801839 992208450 467921543 895921819 975246617 991062863 302248795 603658609 693572434 694774330 548056735 957648561 748959347 849114717 721257146 908657006 648286551 985224693 540693485 678444442 226771076 371400129 535534208 607907929 55283945 814922477 548416153 971251291 930693215 996862802 40641344 897865073 679397697 753490394 206096518 465534635 100418267 687679546 417804704 659173349 483912630 790882010 419477561 694609900 484935198 756361920 202707143 697479632 278885756 898896287 854577195 927638129 239449978 473087107 62756717 362741069 743119287 989359072 722495388 754599665 737945492 993170146 984212858 990650538 864284534 905526192 274123481 929351490 760113813 916719048 843638603 933642961 931195501 956475728 834194676 969435340 301479451 478244044 596867382 941118215 284636337 666101198 822751365 927253544 985331183 987575014 504736460 630119572 996548206 997752936 217390836 533360982 94232958 404932650 807272766 936981238 447723512 752310948 798561709 976805423 610762871 802564694 935076572 978594699 548439881 989740199 627774096 874759200 275539105 568029001 439228672 607651485 980803360 988405088 691948742 872385229 618753610 781313937 799934354 831773446 893469124 930186254 173393560 916512493 507198600 584520144 904349057 912675759 730196580 955827619 382279207 412304759 123020726 613479414 665412077 668886316 417337224 662494344 91282866 856519617 27020716 112690857 661338032 675501293 735212065 875822657 102341165 430420886 682789458 683858378 287602647 995433953 104593992 438499595 246425522 499038737 528598957 637390472 985627746 995923238 527322016 615889821 678874046 882901465 529140239 674487611 669336020 702082969 502373184 551060637 831766689 840570852 734370873 927735247 712598161 785737354 592684077 619099584 453694533 753534365 673098234 739903927 714952767 963035538 493891786 507880464 182269810 470354451 902443248 955134797 472351688 812631681 234583075 641121349 851703678 965909801 555723729 931109826 360773252 476219425 807950487 996199411 228448006 376246945 932430073 937751405 592658670 689474473 859289083 934689502 114187807 554434647 157850166 408560563 39234678 717277371 767192001 952126407 993496981 999919118 172827406 211309869 534564264 981416757 897049471 965029448 387039875 706827054 896582367 969029038 106489156 356258250 736876152 904154148 249772137 737710793 498517552 704897913 724213635 888660361 993226982 993342996 746745343 852538876 239697672 682835247 727729959 918030811 403718153 797526699 364512838 742633157 854338678 885224027 604878396 736782098 942088715 948053152 53901450 664257198 937485831 968743932 190562316 667365889 256028900 373186441 429985663 725741503 481190829 920118403 174425621 836421817 629745830 884542095 45525148 200072119 42220949 731476263 776778590 881216052 995793869 999695591 81626100 207313640 689070946 690695124 446611382 912166808 859276428 885870439 486924317 678804181 78141822 338184872 236630534 921232446 20283442 162006115 548054834 962999758 699032373 826494154 548035241 756292505 633280759 793909291 928651268 934963555 518471220 532575546 41085493 477811200 170645985 308909195 847554210 851502997 46116602 188519070 656184517 675904463 535597168 612463966 511102767 975101075 268565051 998210716 465741802 891944748 679730673 964641549 582740100 998719076 637419847 751123529 302280563 530816405 316253759 842952172 332619723 537266540 149993993 729417890 218650649 442469855 789947468 992760413 807480595 868768084 816229487 935847180 139795055 948468680 611132733 857637484 944804344 999975100 249202698 764140544 561176210 717549242 290573783 322229963 452917133 461151124 577317865 780769370 289999027 798048713 59687453 743503888 52721934 908262536 642862174 896189418 511788325 714086746 476895881 823476117 205799365 568748741 146744451 262843313 790061246 887216135 211533275 646851919 258845762 363942673 108231318 697779236 312350672 986112212 186443332 237091149 930415582 965943559 155283453 172646990 228133607 705454933 101730004 594029272 564140901 730034434 932840579 953392084 383697882 803659194 664993064 846569873 710486852 979516739 764221707 926354762 403398450 406861294 194801070 249612897 863838702 950033417 286857814 393622326 941475040 968394564 951268579 991743348 579832853 877989771 637054610 724458190 839242907 881595296 358678838 949462421 129082239 974336974 103106201 458069459 489706892 918580315 15092278 920430868 308307980 419647403 507571438 737429885 859366025 871449278 338820683 954525763 415217695 757718183 529077543 632602332 780073520 993146997 198738052 376244609 201985082 366121037 490629788 507673999 176986118 547355359 304362330 497887692 639905844 767273112 948703073 990015777 89137642 539298869 248855379 619627040 31698259 125437925 790673750 881926408 220307759 426682187 32470671 70781019 489533380 801990637 853236763 901537934 819495381 873201976 903913606 963753473 239513715 978604186 915487193 998699080 572823881 622282904 869504106 920892964 893722160 966666566 638818297 667558943 364314591 716211549 204386338 889514112 179557927 989617691 327480697 604512726 422965663 466901740 22310926 369971658 193515704 549775632 605238271 784032344 739847937 759186250 718225220 840859610 548005422 604546944 276775187 754271729 748875255 930223428 103438664 836917308 872317677 967314898 753596946 835897146 413618699 886663514 700772978 743731821 360552782 549086067 84462772 195462665 645565363 907573182 139936318 471652679 698972986 905050544 164919811 892973218 730450320 767677650 249303632 927775951 977996475 978265741 601766461 835311151 4994041 408755535 866988809 991038399 31258210 827032211 218736574 855096662 152727138 172609552 78127657 86267963 278592249 357368716 908598182 978583282 744300654 935485587 55553694 925802010 602655980 691331273 524351335 557673482 190208376 375366171 449871146 673645027 875610101 964632330 836572716 837451101 296859210 526306997 162993537 443201051 361801638 430977021 906381082 979349661 393491278 630202444 496258655 701211893 966947097 982879327 367290153 812533115 702485240 858988870 877173677 949448783 900693714 990662362 991042426 994356040 561825109 642600817 327723043 643980746 451563519 828792658 338678260 913848046 618076442 911520053 89658487 367633970 487214133 825428087 920112742 925961258 709455727 995424374 117429297 953808738 778660074 915132743 19316962 211289135 910977267 945330950 953716309 977505029 54960185 729081026 501482934 960791936 97994477 186792738 809303714 902177683 76959698 636848738 970107924 972506809 920226674 986449245 307162414 927356516 667431531 987031741 764582691 982553493 179782351 827600287 981039598 999220779 22981134 398620403 122137871 484781779 894891640 922200554 235951382 280462118 958980696 972683639 132530077 901696715 704919909 872600174 338054404 745442038 697405562 946736707 279165251 750327880 364436962 677241977 254250457 893326660 524979073 552074186 618600715 972355317 677793330 938466503 668908075 994004340 555455162 657236840 731205775 899333901 942544067 951845274 98164410 958731339 275266417 396530495 242034280 839860233 231872806 761330075 589143777 867468874 158208825 600637257 315877417 439736283 379385600 524351053 287268770 745143587 620550002 937882962 180021045 944291157 761623202 770172940 185827083 855172558 126772542 644448471 458444587 910706242 413375472 892840527 17690180 66350866 84030180 563713175 583142877 901445176 713477223 813946471 595871545 652062747 452381717 988421449 352311698 538796563 345363861 960946086 382741125 620901986 223100403 756804515 129405920 365375231 530457709 996946004 279817259 483826741 393013703 960240670 798776116 807490553 236819431 348117762 584936007 804042872 272342080 769651139 7742700 590153974 953719535 993143217 952418336 962307066 119694265 417921833 413201897 955115502 697157705 883638472 768932397 835094210 493616372 894672881 879947168 989032631 500450228 906825942 520702128 560778797 467992579 715321502 909998572 965765969 76032261 516048587 864694811 944619931 619989358 892786913 7145534 979045887 368395486 811328507 99968730 726409592 294282596 885618093 389008149 810288049 596743506 860929306 735363433 912575784 633413394 917738309 12340136 949067598 596510350 929452098 639089442 833305364 697946040 828404665 447816135 559147234 494212739 789027042 63050464 955703084 177099055 656829021 990771004 995325866 329619722 638898160 220301645 897644905 759587154 960009104 305258883 583808373 583219335 811766080 896467681 966474402 549533370 958660858 447711773 549983456 604505589 775056211 938819155 940257849 938601179 976784904 71868665 192900965 200617682 854338975 722858230 884530755 773660813 850207053 109857070 414460433 714995703 816750833 129581811 787815769 258959498 908938969 694898816 778462480 873408185 970967138 179350738 795320082 370761841 456394348 152910875 847683080 652580876 926611551 823329079 896866310 762136127 827255937 343840514 600136553 525217142 536974989 302082485 778672647 508673741 933012963 877061507 937719236 322883286 961927544 410754028 879777391 677054109 786089521 431361055 908954809 579447374 847882957 323119212 452778151 880068944 936823501 244689604 604361985 727489342 958144385 737148303 812764405 129167543 839761947 34455623 709415236 510613513 588096525 89317030 739267894 993162222 994968759 473540230 657543621 358625391 715680236 379942069 413087151 104171097 340419755 530112451 804242930 425442210 921180728 151851547 631548896 274280125 489434406 202007324 720912022 415970587 820877500 64176824 606530296 171951206 436938566 880770484 911516927 183826621 249577050 484909345 517378028 313998684 627837050 756066657 872386274 518635884 834044790 740300284 829762085 500295725 988329988 614948516 663454140 147455206 864528633 706684156 768992184 702839182 765535440 33245575 560491151 717474324 939297140 751656045 841912084 193365086 466726341 730429843 826753592 657510343 966170211 610583222 760974265 790775820 975686705 140112034 791601166 504031132 824501272 168996520 999879003 112482198 290105298 294875074 645096736 632253016 836582372 114320524 632830286 27820052 772522940 270972215 471601893 163400073 383095863 965321310 996393590 925201052 990898177 628533370 712339765 340926187 668078173 355792663 520144447 495473742 747473480 438700196 565304486 576564007 918867793 762874254 899027877 467924752 945126024 267300576 304371156 350030636 961173793 320464340 887306868 125669985 272168905 532616731 932802818 234998882 423571087 289653945 539961095 609266014 885800645 575979449 942431167 994061871 995592975 403631611 561278695 181495891 820141494 316651946 452576031 828539377 869051676 305684791 377167373 196530986 654488270 963055334 993881635 112431991 392085584 865406990 865959125 660536163 831072579 481067681 553949607 996809140 999465626 245464624 781680996 961570281 999587810 937096379 943936647 202192367 798267415 978992325 986675393 144534470 364590286 342032389 743668563 616148255 793607286 202767272 586474945 463784968 535719458 30798664 495928314 183750690 345149111 960884413 989872782 375982167 446521196 962475583 962920302 241972070 259799618 369689323 458542888 320427418 634991101 943721633 990848331 261872271 496106240 388014691 419672997 866337619 922646301 458856260 665882607 869890285 976212042 282642324 752989894 347653512 404175865 552178135 798569713 980014691 987599841 715736776 922527097 838905745 840400538 29710643 454736255 654695019 753310310 174203926 654932548 149053380 532546513 765473834 944429373 735191071 933208298 737095198 854493789 140157547 727588041 459649943 885071595 61247733 76041941 514837322 682498177 493757678 873207217 151293895 923377015 653808350 903139238 954245320 969638597 556968557 924819138 465768484 491094173 585614597 830189561 985957468 993019189 374187598 796073686 219384909 720149896 603164243 756358651 433132621 619390007 805703826 848243565 126073344 487796993 682638022 769998337 968360732 993657329 160133087 299602085 915173803 957340342 908642706 961034133 111824210 707658159 890625061 962104598 62100503 942458110 275071613 906086492 461772506 970662683 253785753 677733364 214335026 642847107 822718589 876572678 133320119 643457576 677581424 931367551 887570302 916760985 928143062 935575369 489294794 548275914 648405784 891784223 852556398 878336891 455186246 663941682 538861360 592443901 49224808 794021520 559291272 606175093 172715727 475864770 467129531 978814866 777900596 923200045 720016329 932689517 909901485 919152565 172961183 483598266 107165306 576745960 183609918 993977042 393865906 691035961 117601045 855571938 554470642 751559103 280929203 327578352 358468093 486461219 732179 370903723 80692094 247354605 13446443 802934389 816365764 965805763 403355949 789365183 433793518 669758644 326256081 471413437 32203671 899972372 934106653 998127828 536601727 723824313 904930399 998923552 725701933 998360011 573227656 720134035 472567091 498807191 138515527 838708691 755738095 950783479 51884198 305707945 268273224 816958296 32516596 795927057 927118402 960483958 974440462 980358484 783481429 935655628 933553980 996342995 839257593 959796285 59055188 487537876 744096756 791229926 436734064 581668776 117483868 259293719 608727093 860271200 620385404 652733231 364640681 529553132 883496976 923371087 690119709 808047081 708934676 997382931 295864692 526275428 366597375 400903624 452829940 724244061 383423739 586835659 44748313 282621400 451515921 964712999 593146218 617724990 103521092 343047231 599429825 893746098 436365924 601331805 929562704 996833434 548201812 910805519 481494016 720881834 61448125 746504842 833416105 917072872 761694885 982714254 906933632 918730046 207636099 606709465 249700551 473167066 289696304 685418533 742295032 969257294 332953760 341039389 636312326 996558925 872901619 949062977 242004113 784804818 919710372 990643845 755031328 923953965 851991558 895320071 628544887 901337112 978064154 990549335 906784318 908026680 378517884 793712899 348732041 388039180 245180002 793548193 429085353 659530713 823538899 917940483 979621202 991614496 288426072 788121841 579793880 886379048 258169581 701081745 793374252 908424836 456348058 943229832 694446286 807900191 580919737 751827996 797101840 798681777 138587056 694165946 748820275 855212659 473928644 833221966 411032233 476116243 122181054 647064665 510590112 669283449 61922612 563284806 459919189 861866695 928430701 966410898 712593386 715433567 923584392 947658326 914926814 949081560 820622242 863412273 451932412 680553350 775892361 928468934 384495129 618506301 198509783 682961795 933270473 980907510 166252824 774086942 597196221 848360203 677449299 949280269 335011795 340897476 195451808 270074065 420392355 599231656 292772990 668544399 330888329 857298902 998111767 998274035 774458531 865255934 706522876 780123149 927370336 963156013 735536937 939306800 728395730 918748921 579043684 893379745 140587318 800687048 301840001 606925494 729710656 893310095 488853171 547849662 508826971 613294814 288491121 640925672 57166992 652135045 874978581 966419275 329733819 357254393 284176572 721395126 653276389 757500438 218608690 283016277 857083953 865001297 11236128 134811328 414826750 510165181 875617740 921303997 592832403 645867438 165295241 742979967 581398278 948007263 304934394 775682285 681453158 880315551 133413320 538168375 566526889 808401813 451211985 840808567 553443350 779681519 196157506 539549509 345216259 359350330 62266944 234200614 765651966 769120093 107952995 573279058 601939418 855865770 73996916 973922288 974553866 978380240 802035171 857861664 16481727 183061052 659573814 761320406 865595811 940582240 122496458 544190728 132229573 552001666 392536332 445119891 92348944 924061626 795970159 912575314 152820043 303535181 320355368 695467390 117293835 862252110 303676340 456825871 997843364 998444138 205708439 442715580 287009058 554728944 330833041 730895309 433005036 778788586 85738738 467917071 201347144 235656025 453984059 528270484 790289104 902321816 85608639 292964848 170984937 520188815 14234034 266643835 627986279 916390741 671245981 957353224 675414437 988416062 586433305 671270891 975791910 984698371 609746276 718863087 341158335 690684495 524012441 819564374 429744302 606024697 500878875 581146146 33258077 180407354 248864690 520480318 217956125 423578762 412042361 481025388 604127500 757546230 838862313 900245166 947748573 996620822 38073965 437370294 559370077 925959920 305839260 935515228 35456428 296176553 122067522 750843964 824377325 939849825 719686859 841505485 225779460 389376349 769260311 850256548 982003647 997586567 893038268 966160466 511652202 740154106 123457634 793778833 42033961 527267870 789161491 981254904 348910291 815443551 635993650 651725177 207113815 448994453 331633459 596007057 154903492 303445297 102140699 697171856 213489287 575822749 963823801 968201431 707381887 763224548 984222877 993458271 49796886 590373216 784800297 867464188 515701052 911524608 784259731 812088116 501771887 893524050 354886570 407839902 410290822 510714759 517650434 677472359 71398911 144633595 893189017 919299407 217412235 249023727 586471804 901779989 663664066 847667894 660388887 828740440 292147335 917058069 619643022 635140878 526597220 649560751 307195029 848885889 829327024 877682089 517273496 928189385 269684138 747406921 345480145 846960319 646222928 771799371 986145155 999754166 924957943 932763722 508084908 564300907 954950268 957834407 388135061 810446761 284882292 671595347 538357805 707446126 141045520 455759980 864078509 962937736 529747373 676268755 860768083 874469222 675345757 836957879 935943264 956041592 49934252 580336956 464994664 978256737 196439185 480046489 688278025 897400538 57038137 691041550 662247869 914864850 47876801 63316942 898078381 898218457 612636544 864823538 720158953 832046202 964250981 999948896 713649793 860835944 332881780 976234782 130384208 701444652 987388678 993925667 762515807 812014725 913151891 998029166 423898994 629135202 640321215 737487291 990690967 995476315 61373894 967053559 70931865 869790217 969036779 978479043 402046595 487344057 259424576 771535481 675178586 725086847 55394097 493257032 412208148 598256664 374681980 553701085 822333887 883846342 668495848 734512185 624593710 638020818 743176783 910082063 715650924 948479072 70955300 405101599 462320041 747956261 758602616 988612654 620096417 956207638 2120081 504176953 284903947 506502868 715953498 778014443 235470740 315463153 840058828 928972818 968267820 975633317 143034397 962105008 129848066 896581622 540319910 722602308 883727211 913689322 24459473 289581421 994491976 995675670 428061895 958806294 150634185 153690138 206776549 646473986 614997463 816318784 287642246 391746857 528961534 577721653 745485868 895150527 363734890 511006569 835111663 921216425 869491901 958502302 807373606 981606882 505965725 846647500 43840658 506739936 369904919 764782977 593482557 652349562 303238744 852927620 604728524 672354122 217786602 976429516 257481027 804864896 403581471 862102865 201242264 946475130 649714339 914864302 717267563 898815084 999329734 999495797 516676836 951943477 781579272 797951811 730006022 761769596 714726184 975866734 44214136 989915420 135251762 988527866 729685276 908193134 358114123 784469076 78026544 785259741 54229662 154600371 78226585 298228971 676100255 798640150 351668918 353646328 946606071 986752097 28127273 967193226 391178019 722447380 713006352 748327469 192897177 234324764 873673457 962776661 869999341 877628425 198845460 473244767 348434489 639688015 209978799 724587417 144142378 183000505 225646086 824377827 395178238 512809061 421925089 520408256 257306265 712554769 562600121 938829253 922600197 954138433 879095686 961034556 240751447 536092235 817121225 982874579 437827868 557994077 755735407 888787183 879443449 955260449 318250538 701114978 942404314 954817852 689457863 780929084 485820113 860604923 296877754 714447417 115781412 340493442 400889810 452524304 412163897 595532025 207569161 793517881 487906744 623849504 379943775 520199355 395491606 775128846 831502570 982912777 758466567 913154802 76097523 312434389 684573089 781888582 368803379 598600108 979963775 980250440 893199829 958625088 426907547 919016695 235815096 649984798 203609875 625044665 207462363 500357859 854944445 951825804 718044606 842165831 218105396 408668187 938833278 966417175 148415970 579798056 769711648 912774609 983225353 996811003 92803338 344513614 728201008 912669072 6124417 397969688 378612442 700045731 570187826 889303298 835138702 900855051 450263772 476997580 628198733 947205588 793218899 999471758 160798919 657149240 641670820 816050381 81225952 592969950 181833556 964953530 562219831 720140540 197899027 685177054 771562331 991119155 513046155 714210948 87915814 919177450 857348958 866020248 194676011 982956801 326134855 727556735 900651595 980706770 773950049 784409700 970057520 985506734 923467844 970286894 593688720 660221051 816543206 938042139 212694862 564611972 659362654 850842501 973869902 998537553 661114318 823204146 45102100 421522425 548987849 741910610 532760488 653452741 716746096 941171241 144045530 696898198 359011401 933941222 508636437 715874370 522429745 582386436 704281903 715521356 245690155 944479843 8735815 47885209 505727271 551424088 810168074 843969581 62269988 100778572 475121413 699328146 701331813 930870936 422710796 995539465 988382682 997064990 546070787 927086441 997062239 999328310 522660136 990310342 411285647 831762451 957423173 965191464 865745674 911554551 445328655 899226227 837222043 875975614 237791398 809846370 959080271 961819859 837645765 917699836 683671042 979026938 703431015 956272713 460312417 733499842 379553701 549124350 351530157 717516772 69190046 532793676 147772656 277735286 330759244 384174359 580712674 595936227 569257608 926806997 361146217 776926525 651833827 803045297 116604202 431833903 479393062 684110464 513037830 571465055 522689095 995920457 707496658 836994286 974935139 989616171 753622401 842636136 886131679 913674181 909766670 991041955 926646039 973121745 157344365 596845932 625516710 979282223 588119580 976612436 431666236 894290541 95028972 878786578 189138526 416391224 605916487 862082893 70984382 238573616 453623375 657637132 783324126 919761875 321001237 479598884 687819768 887106849 326549943 641192322 29504534 958947708 718663450 970443403 296631342 711418905 244080791 282003065 16424338 855629905 70961013 479955833 899642801 973442461 593188088 898931711 391700136 999792719 518996733 938720801 516275340 949643712 788180131 979414435 257987179 535048720 111274888 898954892 87893830 428437445 832810050 908669035 654725314 666764836 915244179 995041842 860179742 983336804 733069842 781085535 500485954 580507685 303448071 477687738 463116826 647164162 19450800 205108298 289743285 763949220 378028134 597587013 13672610 976171869 295088927 845150077 261971512 400862046 39609901 706629603 724383292 997132807 395040251 461522949 147486917 245653055 244692005 489693809 37851663 290191553 24302891 552757101 688995713 794855602 967332637 991451683 547171600 828881645 921599921 993558291 677013353 704696931 752405333 835375233 152256185 893770507 836140105 958534263 159623951 942328160 728089441 946132899 871025182 990140242 166237715 605815573 234027720 847078314 883732544 941178590 647308527 859279381 289254521 974656680 801496084 886096395 164105594 231870264 606858713 721513624 990601600 999776588 63368553 547853038 333181689 567065095 991903636 993796977 901762525 941597124 449985197 836655399 560865989 943160535 765553884 833531624 632042165 903501506 199028832 321421090 27058908 161741309 789716302 867330737 866138845 994224496 798126979 915347527 770958936 926668520 491414939 783981629 77610759 592324489 861040988 883425684 89183744 225123983 482921473 698363793 28945592 153793763 863340573 918091581 660085394 912096789 794651569 987742829 208117806 624505231 845646275 911445363 983615692 996572281 969684462 975046146 591159924 797595345 158565140 567330063 758190043 850315046 873147652 893523248 309974590 711003739 788074474 954861852 208270034 548985673 467489873 722301338 207340631 265675073 80201741 255112446 193776795 557029943 723307364 826766362 98794064 994675334 405123538 623149378 115303582 723996394 346798807 952459849 963351101 998865454 647601997 874981646 288367145 659618457 417297923 950130804 500907287 717717223 831870758 901746627 662694609 976003482 864584054 949304128 838430049 935912793 982702657 994041053 76233501 646021541 977830587 992484299 84895102 370483809 255167846 543606161 766560224 821016856 71777798 729937717 187570866 311644718 246976797 505961535 740582728 919854211 599368365 798820229 593140302 642536233 866214999 973263436 876538499 939530882 308383467 768837107 65106791 823168789 870144668 875764955 750695171 897519824 916201177 984138382 50140724 343005316 992538803 993622411 570787009 762510693 853188292 891014887 696249668 845302803 346194003 640462225 494168318 730109262 705146532 721443472 19802688 773465842 464221 57944973 578790235 969657878 345123359 492204288 159208974 487393039 490507129 912026423 780100034 959067028 608330944 797651094 973885760 978575449 426051201 834628479 601336935 653700043 579686678 773103089 60382851 721310384 401070628 528578327 355462122 825129105 979699392 983588398 2105531 945337857 950568574 976373554 366083562 991365944 574175289 999984053 594229572 836440340 504302554 740510061 733112705 772895090 236688406 306572529 447906393 670249040 933047048 939879354 149256705 160719610 683190469 960490393 886040228 914789957 783935216 793413841 25013458 407249996 321017659 330345903 439108166 802873254 497601307 792531435 288273480 754056372 872698851 995233623 999517758 999818990 202372677 206755914 176215261 262787100 718249525 811568227 608412195 795726661 513448807 688025707 713091628 742648754 489218155 624744204 276327612 714005776 573001655 585127293 921628160 992436141 288556707 786421808 808665677 874132451 181581575 703570489 348639794 576863256 671380006 787023476 537401518 776415952 656236411 916990140 712506400 855604693 198620140 448773198 786648495 887753947 557980230 591978966 285776009 412049163 789927583 854209857 474058484 580766769 595376149 913394185 81438206 177588651 205781349 736833719 364317076 880238133 188004108 686629603 46612714 173227460 790067689 991514812 322478342 740395251 394353352 555358280 843720178 991748357 799816026 839153868 362427781 461185154 642221506 982029362 41475963 911630069 789153617 951328551 783711923 837121782 5158532 273900935 180494174 902614582 267399951 874937731 443354910 970400264 734517454 737957311 701031444 721450270 27503677 408348874 738460898 845062813 585432435 881906402 343080320 743246853 162742256 539045778 141064440 524684912 605755423 802764125 355057752 844221127 513200917 574343206 176828998 250429157 736280898 892586358 82784395 843091648 755639436 939567430 883779144 886731657 814385794 967235482 474930174 706482160 631349417 725618258 792482460 964016284 53477712 250436078 383066096 427146477 402694327 767025737 550804467 973693744 718470755 858931177 169184656 836016234 460561052 860640462 68765729 394059604 468960194 631949872 736946896 942054165 6174977 447382380 460034028 580533805 441951789 686585260 53276759 999948108 367110438 374984880 463836692 984961778 817256199 881926697 827692435 835387371 941567809 965810610 151981617 699140733 677304110 758729860 72905684 457388836 746356285 856291569 396165115 476656238 626881102 882107225 664843263 793828210 677091386 777757028 294599203 638593061 283533962 541716285 51224147 940360117 155972693 158707140 494169733 934371882 589740627 778168115 48594302 728323660 146221576 794704931 440969235 841228356 690469874 754516276 156950859 758446978 880814867 999561359 472031882 826475595 593529677 623138959 144541902 488152239 942705 579400205 236035235 272630897 817138763 995773674 623424210 646311155 383399969 512100295 455358645 573875052 464144494 673495698 429696469 654488785 451054279 728370689 729437831 835366793 754555534 928108813 779092642 933000938 292130376 985257582 203645395 473708444 101319122 902691496 221425500 910663820 478171623 655370592 22618207 700862530 59240207 960897973 418618672 569258954 340922952 861228232 715846237 799922642 456041977 622547318 874230864 971873330 578042466 584264804 766877138 838694905 675305707 910005497 248922960 789688743 519093674 640429919 490184499 818815116 928198954 962327370 179174031 259098562 819438680 915947680 69291475 812591647 610345725 844195761 893332089 941559034 37704465 197302655 425169743 796573650 38595549 664800308 155343543 876076409 440557983 632291716 323332066 674128385 89183195 595567780 933972149 974905631 260783030 719841323 406631506 947549405 897745735 961620529 414557936 826646906 507027154 737600476 979950923 980979685 715067666 916005254 870523877 998131785 62068053 872550238 608475406 811547710 297407755 301241277 639024966 849784219 548842922 817693969 177582956 196168317 549389207 991037442 543580064 564764296 312794225 986786849 630225448 796425028 534213658 944593913 420807108 708467043 495867799 743449000 167201928 642829168 892930351 950957117 756065473 841024415 644727888 772300896 66323924 356941678 552285597 677849366 6297571 316566701 930303258 989249338 68595489 138269167 39904259 646717044 619744834 765355615 543783045 711172166 551182751 871727660 301455343 934942695 709837817 890786226 200235900 725213006 987929686 996414034 41160776 608151895 122758198 726020621 913001599 971295426 844845671 917122095 443223732 760932062 959314379 964871209 919136746 966623295 804194344 971682492 47444228 156316523 948422305 995437274 723485979 811539549 623905638 716161062 26906342 480875738 89384680 236470345 59317207 657276861 884269407 914211878 872652528 880705693 732118504 904836760 645480890 971500363 36616227 495261594 643669452 872948260 293004923 753327801 935643251 966006204 181699318 793077615 477749197 490060802 621568952 678404015 565684092 764843480 428248443 656932730 170093087 479014248 401384019 769593275 289917811 321561271 41411977 832281043 645686384 923000597 466186309 786020129 654947268 779372961 415776823 425606804 666034997 994182708 205188990 927938196 159053874 377434173 596689234 737093228 426210221 804136449 291492295 759342558 669422309 848545777 799337697 815849096 189423794 366156209 644958252 867463491 847619317 940241917 602017028 672309999 76624331 380891040 406618746 922602601 801667109 840646872 774215485 774835815 783214214 935822968 846895574 941052045 373783173 528323739 266161181 483205551 652836291 956760372 641944725 932760583 219177917 739327117 913529984 925676993 638385821 843643522 132810961 793945201 860231074 862616172 173661128 815376143 446052787 797998138 685353900 892276271 591661373 995910125 881510762 975914080 159571589 934323448 798150295 851080838 384032613 905035906 601007951 621345002 541751156 864454184 194359019 585571304 641601320 672879172 19430896 645421477 178047723 381172933 698824403 945389079 523609484 586788074 258910260 278471421 53906108 321435830 119819920 867190636 535251176 888036717 579021421 707387637 520737365 842986620 195904048 867234524 935264267 942898465 103664854 462743395 649679894 944332941 287777709 572823287 929335666 935079767 116018638 655063320 917097440 956666236 502093892 963661737 561162216 976115684 779725134 896666423 857142140 890890690 249023186 552980799 978773289 983032924 482323772 687139278 718190218 720196345 315274586 639178841 811180427 903428054 655330092 893840223 558424772 818749489 286883462 752546233 653768785 662544530 512157343 853633831 227048570 392187322 811842490 881330463 122674534 471672781 570088743 865648401 194673020 617948417 1565921 829654779 425739181 655653308 107046363 261050908 138997360 229988722 675498880 766025167 219236952 255718469 119081716 997816465 295716352 711260606 538925086 829428254 54927296 445728671 655742669 740751620 912224576 933216285 45940084 466697974 596431735 851931292 662010859 963793069 977743067 985024034 584646880 988713584 405122964 810789930 340324626 422651319 913683420 924459302 729595360 959982329 608458121 975111053 407522464 951632608 962058736 965027410 11497553 574827091 434008254 852101599 608931177 919326840 957100048 984529843 487133707 672572763 811801023 980636597 394860719 443364271 288758922 841261270 7376872 940763164 568949542 731075534 333223843 435616749 585757357 975591725 271468245 678879549 105608250 511321371 746810016 803826939 754691531 877399853 259850180 420194479 864170763 919645160 624080477 767987863 554112976 841683668 105319911 411095471 866820814 991315433 562855152 929426601 381985618 435505920 98839024 945382287 870324515 900343087 65588568 598104369 262856527 998523790 417656261 880150526 392581172 658213902 98492639 896232210 328415373 763154239 762772110 969237313 371141407 481107906 134931148 379514079 655437103 772856410 704738247 764158001 757584075 790521746 64910868 382036026 947508951 985306287 211208354 934104015 437608991 821826026 462440601 588472441 171641090 533134468 148783864 164705360 941343783 979940180 703373005 812863665 244010918 937635121 246055916 949897553 14246996 249664807 6433508 167553656 801642802 918006151 51276022 610047356 85006197 897911310 743455198 857013796 990074610 994140750 298825902 567616896 701190209 795039958 717714658 743894909 921927500 953144924 956605767 994806320 905500869 987972713 875743641 969942027 863425392 924805846 703923440 849794585 954052606 954234687 318101843 782753640 234602610 235481798 687209694 738719591 606160006 998497266 661407986 924776072 463358658 688601249 590400532 609195196 639977653 951905702 520279998 810578702 976817638 989303072 256816064 700512754 629980052 869108193 821478985 970493808 485179895 918336852 646244709 700598567 168063227 439133014 653809657 888811017 792785712 877612389 265938685 297304672 177223222 820873630 191099662 828693382 695658593 997152855 936675691 952530551 288929428 990789618 165197347 809923766 225510131 632659028 754175877 986650671 219550691 832910592 708220484 772532946 632668689 650825144 432719943 783046207 930681090 944484878 233537826 688109547 887754372 984683049 890656458 993053063 944961767 975624623 285212090 651216574 191563004 430771630 336656233 551446107 324490501 928265470 642532976 758847630 631001736 659222398 240224414 617693024 908477805 956246590 5269314 539820507 442037906 461386482 802042790 817605048 548782575 638623206 461944087 820665316 40398281 522201856 887861021 950218027 92575850 151260258 389753816 994731493 308854358 977558041 953333559 990470906 470409664 696747859 526574287 689375112 709240693 808827763 620797333 909750381 579662858 805668801 951949350 987180338 89798450 683660612 152993328 816034157 330799852 879785176 715476039 753264546 257325293 994520715 675317541 837924684 118867635 525381359 892785862 917740627 874664866 996264098 794344140 857342251 374426600 898749652 964818496 978690975 292267906 369018154 102535055 247148795 335884813 599564629 490117082 827733056 328313059 479038591 887799261 929201558 85936724 752359468 887881184 934731924 410826460 502259909 688836857 955828214 553625290 971379847 605403299 781445113 706750388 770818631 117526683 792022235 539306984 866843255 757580751 966294222 671172043 771091246 810812388 834555449 273801640 411503533 985495279 993249434 468229843 586861804 627443315 954521097 484298400 610488955 724624235 774726264 894522885 996368163 205483675 307511630 163837504 459527153 191218204 672251466 112243486 232246463 703877908 864271217 558525279 991637042 258915553 739918595 882911059 996236944 724828088 859040434 748468721 906011614 92548112 875095787 829959307 857011058 23465830 905115935 264982639 359359477 815869313 894711575 740681699 919280557 449166342 643879732 712887802 967707338 765492653 798920047 800555017 802927010 678219816 882220200 156987780 806031292 144661003 247960463 241516126 444706367 497910130 934356490 478111022 906222398 363225107 395826411 852088178 984734057 503744193 818813025 555113530 620015508 744525256 879404682 85621096 561802459 274491046 420349121 224611531 893378203 555120451 817400087 906678306 988626922 82652221 422614763 489967591 521163996 565674666 596825429 836225552 956467270 752144157 853061930 305652543 957134248 133698068 229982579 171149929 387692293 83423364 333889154 715436444 903113673 988473627 991018223 821428590 964721431 358598393 770373304 371179839 480393438 733616449 934983709 738269734 874457395 711469130 956411817 613845935 693362597 875891280 961848586 948146273 961519160 193584954 700398312 685291768 772230189 426587065 776758735 171487199 590845550 14433840 156813048 65791387 386971561 470822228 892593318 109101979 247879884 426294436 502638714 128884601 807714515 513340391 817645482 162717039 731868375 209496552 269264736 299481364 824039693 251015516 879040650 280951304 986467103 19001121 452755765 108276961 674956613 420957727 744441670 93257578 741027334 987965090 997946025 743141122 908120722 607728525 872194208 543518350 793132548 474371069 669850755 588336553 927691544 319010073 838057091 206890210 887760922 93902600 494752285 401673045 504957705 279395641 547688555 120258005 786434287 189039655 225106624 981266259 989066672